diff --git a/.changeset/config.json b/.changeset/config.json new file mode 100644 index 0000000..f26daf1 --- /dev/null +++ b/.changeset/config.json @@ -0,0 +1,11 @@ +{ + "$schema": "https://unpkg.com/@changesets/config@2.3.1/schema.json", + "changelog": "@changesets/cli/changelog", + "commit": false, + "fixed": [], + "linked": [], + "access": "public", + "baseBranch": "main", + "updateInternalDependencies": "patch", + "ignore": [] +} diff --git a/.changeset/v3-major.md b/.changeset/v3-major.md new file mode 100644 index 0000000..97f23c5 --- /dev/null +++ b/.changeset/v3-major.md @@ -0,0 +1,25 @@ +--- +"react-code-view": major +"@react-code-view/react": major +"@react-code-view/core": major +"@react-code-view/unplugin": major +--- + +Major refactor for v3.0.0: + +- Hook: stabilize `useCodeExecution` (refs-based options, stable `execute()`, `updateCode` alias) +- Tests: fix TypeScript matcher types and marked renderer signature; remove unused vars +- Docs: update README with requirements, hook example, CI/CD notes +- CI: Node 18 + PNPM, caching; gh-pages publishes `docs/dist` +- Publish: adopt Changesets + npm provenance (OIDC), drop `NODE_AUTH_TOKEN` +- Config: align workspace tsconfig/turbo/vite + +BREAKING CHANGES: + +- `useCodeExecution` effect behavior stabilized; consumers relying on previous implicit re-execution may need to explicitly update `code` or pass `dependencies` +- Package structure reorganized across `packages/*`; import paths may need updates according to exports + +- Imports: `CodeView` is now also a default export in `@react-code-view/react` and re-exported by `react-code-view`; prefer `import CodeView from 'react-code-view'` or adjust named imports accordingly +- Styles: Less entries were removed; switch to `import 'react-code-view/styles'` and optional `import 'react-code-view/styles/highlight'` +- Build integration: Legacy `webpack-md-loader` is removed; migrate to unified `@react-code-view/unplugin` for Vite/Webpack/Rollup/esbuild/Rspack +- Tooling: Minimum requirements updated to Node >=18 and PNPM >=8 for the monorepo/dev workflow diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..bdbbeea --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,37 @@ +{ + "$schema": "https://json.schemastore.org/eslintrc.json", + "root": true, + "env": { + "browser": true, + "es2021": true, + "node": true + }, + "extends": [ + "eslint:recommended", + "plugin:@typescript-eslint/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "prettier" + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "jsx": true + }, + "ecmaVersion": "latest", + "sourceType": "module" + }, + "plugins": ["@typescript-eslint", "react", "react-hooks"], + "settings": { + "react": { + "version": "detect" + } + }, + "rules": { + "react/react-in-jsx-scope": "off", + "react/prop-types": "off", + "@typescript-eslint/no-explicit-any": "warn", + "@typescript-eslint/no-unused-vars": ["error", { "argsIgnorePattern": "^_" }] + }, + "ignorePatterns": ["dist", "node_modules", "*.js", "*.cjs"] +} diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index c297935..12e0d12 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -18,20 +18,25 @@ jobs: steps: - uses: actions/checkout@v4 + - name: Enable Corepack (PNPM from packageManager) + run: | + corepack enable + - name: Setup node uses: actions/setup-node@v4 with: - node-version: 'lts/*' + node-version: '18.x' + cache: 'pnpm' - name: Install - run: npm install + run: pnpm install --frozen-lockfile - name: Build - run: npm run build:docs + run: pnpm docs:build - name: Deploy uses: peaceiris/actions-gh-pages@v3 if: github.ref == 'refs/heads/main' with: github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./docs/assets + publish_dir: ./docs/dist diff --git a/.github/workflows/nodejs-ci.yml b/.github/workflows/nodejs-ci.yml index 8a5f1d4..4ad9637 100644 --- a/.github/workflows/nodejs-ci.yml +++ b/.github/workflows/nodejs-ci.yml @@ -12,13 +12,32 @@ on: - main jobs: test: - name: 'Test' + name: 'Build & Test' runs-on: ubuntu-latest - container: node:16 steps: - - uses: actions/checkout@v2 - - env: + - uses: actions/checkout@v4 + + - name: Enable Corepack (PNPM from packageManager) + run: | + corepack enable + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: '18.x' + cache: 'pnpm' + + - name: Install dependencies + run: pnpm install --frozen-lockfile + env: HUSKY: 0 - run: npm install - - run: npm test + + - name: Typecheck + run: pnpm -w typecheck + + - name: Build + run: pnpm -w build + + - name: Test + run: pnpm -w test --reporter verbose diff --git a/.github/workflows/nodejs-publish.yml b/.github/workflows/nodejs-publish.yml index a75087f..567de64 100644 --- a/.github/workflows/nodejs-publish.yml +++ b/.github/workflows/nodejs-publish.yml @@ -1,30 +1,43 @@ # see https://help.github.com/cn/actions/language-and-framework-guides/publishing-nodejs-packages -name: Node.js Package +name: Release Packages on: + workflow_dispatch: {} push: - tags: ['*'] + tags: + - 'v*' jobs: publish: - name: 'Publish' + name: 'Publish to npm' runs-on: ubuntu-latest + permissions: + contents: read + id-token: write steps: - - uses: actions/checkout@v2 - # Setup .npmrc file to publish to npm - - uses: actions/setup-node@v1 + - uses: actions/checkout@v4 + + - name: Enable Corepack (PNPM from packageManager) + run: | + corepack enable + + - name: Setup Node + uses: actions/setup-node@v4 with: - node-version: '14.x' + node-version: '18.x' registry-url: 'https://registry.npmjs.org' + cache: 'pnpm' - name: Install dependencies - run: npm install + run: pnpm install --frozen-lockfile + env: + HUSKY: 0 - name: Build - run: npm run build + run: pnpm -w build - - name: Npm Publish - run: npm publish dist + - name: Publish with Changesets + run: pnpm release env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + NPM_CONFIG_PROVENANCE: true diff --git a/.gitignore b/.gitignore index 9a7638e..f8fbc3b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,33 +1,36 @@ -# Logs -logs -*.log -npm-debug.log* -karma-* - -# Runtime data -pids -*.pid -*.seed +# Dependencies +node_modules/ +.pnpm-store/ -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov +# Build outputs +dist/ +*.tsbuildinfo -# Coverage directory used by tools like istanbul -coverage +# IDE +.idea/ +.vscode/ +*.swp +*.swo -# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) -.grunt +# OS +.DS_Store +Thumbs.db -# node-waf configuration -.lock-wscript +# Logs +*.log +npm-debug.log* +pnpm-debug.log* -# Compiled binary addons (http://nodejs.org/api/addons.html) -build/Release +# Test coverage +coverage/ -# Dependency directory -node_modules +# Turbo +.turbo/ -# Optional npm cache directory +# Environment +.env +.env.local +.env.*.local .npm # Optional REPL history diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..193bb08 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,8 @@ +{ + "semi": true, + "singleQuote": true, + "tabWidth": 2, + "trailingComma": "none", + "printWidth": 100, + "arrowParens": "avoid" +} diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..e695f33 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,46 @@ +# Contributing to React Code View + +Thanks for helping improve React Code View! This guide keeps contributions consistent and easy to review. + +## Prerequisites +- Node.js 18+ +- PNPM 9 (Corepack enabled: `corepack enable`) +- Git + +## Setup +```bash +corepack enable +pnpm install +``` + +## Common Tasks +- Typecheck: `pnpm -w typecheck` +- Lint: `pnpm -w lint` +- Test: `pnpm -w test` +- Build: `pnpm -w build` +- Docs dev: `pnpm docs` +- Docs build: `pnpm docs:build` + +## Development Notes +- Monorepo is managed with PNPM + Turbo; prefer `pnpm -w + diff --git a/docs/index.tsx b/docs/index.tsx index 6072ef9..be3c962 100644 --- a/docs/index.tsx +++ b/docs/index.tsx @@ -1,44 +1,97 @@ -import React from 'react'; -import ReactDOM from 'react-dom'; -import { Button, Grid } from 'rsuite'; -import CodeView from '../src'; +import React, { useEffect, useState } from 'react'; +import { createRoot } from 'react-dom/client'; +import { BrowserRouter, Routes, Route } from 'react-router-dom'; +import '@react-code-view/react/styles/index.css'; +import './styles/index.css'; +import { initHighlighter } from '@react-code-view/core'; -import './styles/index.less'; +// Components +import { Header } from './components/Header'; +import { Sidebar } from './components/Sidebar'; -// eslint-disable-next-line @typescript-eslint/no-var-requires -const example = require('./example.md'); +// Pages +import { OverviewPage } from './pages/OverviewPage'; +import { InstallationPage } from './pages/InstallationPage'; +import { QuickStartPage } from './pages/QuickStartPage'; +import { ComponentsPage } from './pages/ComponentsPage'; +import { BuildToolsPage } from './pages/BuildToolsPage'; + +// Examples +import { CounterExample } from './pages/examples/CounterExample'; +import { TodoExample } from './pages/examples/TodoExample'; +import { TypeScriptExample } from './pages/examples/TypeScriptExample'; +import { ThemeExample } from './pages/examples/ThemeExample'; +import { ComponentsExample } from './pages/examples/ComponentsExample'; + +// Pre-initialize Shiki for faster first render +initHighlighter(); + +const App: React.FC = () => { + const [theme, setTheme] = useState(() => { + return localStorage.getItem('theme') || 'rcv-theme-default'; + }); + + const isDark = theme === 'rcv-theme-dark'; + + useEffect(() => { + if (isDark) { + document.body.classList.add('dark'); + } else { + document.body.classList.remove('dark'); + } + }, [isDark]); + + const toggleTheme = () => { + const newTheme = isDark ? 'rcv-theme-default' : 'rcv-theme-dark'; + setTheme(newTheme); + localStorage.setItem('theme', newTheme); + }; -const App = () => { return ( - - { - return code.replace(/import\ [\*\w\,\{\}\ ]+\ from\ ?[\."'@/\w-]+;/gi, ''); - }} - onOpenEditor={() => { - console.log('open editor'); - }} - onCloseEditor={() => { - console.log('close editor'); - }} - renderExtraFooter={() => { - return
Footer
; - }} - copyButtonProps={{ - 'data-appearence': 'subtle', - className: 'rs-btn-icon rs-btn-icon-circle rs-btn rs-btn-subtle rs-btn-xs' - }} - > - {example} -
-
+ +
+
+ +
+ + +
+ + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + +
+
+ +
+
+
+

Built with ❤️ using React, CodeMirror 6, and Shiki

+

+ GitHub + · + npm + · + MIT License +

+
+
+
+
+
); }; -ReactDOM.render(, document.getElementById('app')); +const container = document.getElementById('root'); +if (container) { + const root = createRoot(container); + root.render(); +} diff --git a/docs/index.tsx.backup b/docs/index.tsx.backup new file mode 100644 index 0000000..01e040a --- /dev/null +++ b/docs/index.tsx.backup @@ -0,0 +1,484 @@ +import React, { useState, useEffect } from 'react'; +import { createRoot } from 'react-dom/client'; +import { CodeView, MarkdownRenderer, Renderer } from '@react-code-view/react'; +import { initHighlighter } from '@react-code-view/core'; +import '@react-code-view/react/styles/index.css'; + +import './styles/index.css'; + +// Initialize Shiki highlighter +initHighlighter().catch(console.error); + +// Example code snippets +const counterExample = ` +const App = () => { + const [count, setCount] = useState(0); + + return ( +
+

Count: {count}

+
+ + + +
+
+ ); +}; + +const buttonStyle = { + padding: '8px 20px', + fontSize: '16px', + backgroundColor: '#0969da', + color: 'white', + border: 'none', + borderRadius: '6px', + cursor: 'pointer' +}; + +render(); +`.trim(); + +const formExample = ` +const App = () => { + const [form, setForm] = useState({ name: '', email: '' }); + const [submitted, setSubmitted] = useState(false); + + const handleSubmit = (e) => { + e.preventDefault(); + setSubmitted(true); + setTimeout(() => setSubmitted(false), 2000); + }; + + return ( +
+
+ + setForm({...form, name: e.target.value})} + placeholder="Enter your name" + style={inputStyle} + /> +
+
+ + setForm({...form, email: e.target.value})} + placeholder="Enter your email" + style={inputStyle} + /> +
+ +
+ ); +}; + +const formStyle = { display: 'flex', flexDirection: 'column', gap: '16px', maxWidth: '300px' }; +const fieldStyle = { display: 'flex', flexDirection: 'column', gap: '4px' }; +const inputStyle = { padding: '8px 12px', borderRadius: '6px', border: '1px solid #d0d7de', fontSize: '14px' }; +const submitStyle = { padding: '10px', backgroundColor: '#1a7f37', color: 'white', border: 'none', borderRadius: '6px', cursor: 'pointer', fontSize: '14px' }; + +render(); +`.trim(); + +const todoExample = ` +const App = () => { + const [todos, setTodos] = useState([ + { id: 1, text: 'Learn React', done: true }, + { id: 2, text: 'Try react-code-view', done: false } + ]); + const [input, setInput] = useState(''); + + const addTodo = () => { + if (!input.trim()) return; + setTodos([...todos, { id: Date.now(), text: input, done: false }]); + setInput(''); + }; + + const toggleTodo = (id) => { + setTodos(todos.map(t => t.id === id ? {...t, done: !t.done} : t)); + }; + + return ( +
+
+ setInput(e.target.value)} + onKeyPress={e => e.key === 'Enter' && addTodo()} + placeholder="Add a todo..." + style={{ flex: 1, padding: '8px', borderRadius: '6px', border: '1px solid #d0d7de' }} + /> + +
+
    + {todos.map(todo => ( +
  • toggleTodo(todo.id)} + style={{ + padding: '10px', + marginBottom: '8px', + backgroundColor: '#f6f8fa', + borderRadius: '6px', + cursor: 'pointer', + textDecoration: todo.done ? 'line-through' : 'none', + opacity: todo.done ? 0.6 : 1 + }} + > + {todo.done ? '✓' : '○'} {todo.text} +
  • + ))} +
+
+ ); +}; + +const btnStyle = { padding: '8px 16px', backgroundColor: '#0969da', color: 'white', border: 'none', borderRadius: '6px', cursor: 'pointer' }; + +render(); +`.trim(); + +const markdownDoc = ` +# React Code View + +A powerful React component library for rendering code with **live preview** and syntax highlighting. + +## ✨ Features + +- 🎨 **Live Preview** - Execute and preview React code in real-time +- ✏️ **Editable** - Built-in code editor with syntax highlighting +- 📝 **Markdown** - Render markdown content with code blocks +- 🔌 **Universal Plugin** - Vite, Webpack, Rollup, esbuild, Rspack +- 🎯 **TypeScript** - Full TypeScript support +- 📦 **Tree-shakeable** - Import only what you need + +## 📦 Installation + +\`\`\`bash +# Using npm +npm install react-code-view + +# Using pnpm +pnpm add react-code-view + +# Using yarn +yarn add react-code-view +\`\`\` + +## 🚀 Quick Start + +\`\`\`tsx +import CodeView from 'react-code-view'; +import 'react-code-view/styles'; + +function App() { + return ( + + {\`\`} + + ); +} +\`\`\` +`; + +const App: React.FC = () => { + const [theme, setTheme] = useState<'rcv-theme-default' | 'rcv-theme-dark'>('rcv-theme-default'); + const isDark = theme === 'rcv-theme-dark'; + + // Apply dark class to body element + useEffect(() => { + if (isDark) { + document.body.classList.add('dark'); + } else { + document.body.classList.remove('dark'); + } + }, [isDark]); + + return ( +
+
+
+
+ {''} +

React Code View

+
+

Live code preview for React components

+
+ + + ⭐ GitHub + + + npm + +
+
+
+ +
+ {/* Introduction */} +
+ + {markdownDoc} + +
+ + {/* Packages */} +
+

📚 Packages

+
+
+

react-code-view

+

Main package with all features bundled

+ npm install react-code-view +
+
+

@react-code-view/react

+

React components only

+ npm install @react-code-view/react +
+
+

@react-code-view/core

+

Core transformation utilities (framework-agnostic)

+ npm install @react-code-view/core +
+
+

@react-code-view/unplugin

+

Build tool plugins for all major bundlers

+ npm install @react-code-view/unplugin +
+
+
+ + {/* Live Examples */} +
+

🎮 Live Examples

+

Try editing the code below and see the results instantly!

+ +
+

Counter

+ + {counterExample} + +
+ +
+

Form

+ + {formExample} + +
+ +
+

Todo List

+ + {todoExample} + +
+
+ + {/* Build Tool Integration */} +
+

🔧 Build Tool Integration

+

Works with all major build tools via unplugin

+ +
+
+

Vite

+ +
+ +
+

Webpack

+ +
+ +
+

Rollup

+ +
+ +
+

esbuild

+ +
+
+
+ + {/* API Reference */} +
+

📖 API Reference

+ +
+

CodeView Props

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PropTypeDefaultDescription
childrenstring-Source code to display
dependenciesobject{'{}'}Dependencies for code execution
languagestring'jsx'Syntax highlighting language
editablebooleantrueEnable code editing
renderPreviewbooleantrueShow live preview
themestring'rcv-theme-default'Theme class name
onChangefunction-Callback when code changes
onErrorfunction-Callback when error occurs
+
+
+
+ + +
+ ); +}; + +// Mount +const container = document.getElementById('app'); +if (container) { + createRoot(container).render(); +} diff --git a/docs/pages/BuildToolsPage.tsx b/docs/pages/BuildToolsPage.tsx new file mode 100644 index 0000000..f4e0412 --- /dev/null +++ b/docs/pages/BuildToolsPage.tsx @@ -0,0 +1,283 @@ +import React from 'react'; +import { useParams } from 'react-router-dom'; +import { Section } from '../components/Section'; +import { CodeBlock } from '../components/CodeBlock'; + +interface BuildToolsPageProps { + theme: string; +} + +export const BuildToolsPage: React.FC = ({ theme }) => { + const { tool } = useParams<{ tool: string }>(); + const isDark = theme === 'rcv-theme-dark'; + const codeTheme = isDark ? 'github-dark' : 'github-light'; + + if (tool === 'vite') { + return ( +
+
+

+ Configure Vite so CodeView runs live previews (Shiki + CodeMirror) smoothly. +

+ +

Installation

+ + +

Configuration

+ + +

Use CodeView

+ ; +render();` + "`" + `; + +export default () => ( + + {snippet} + +);`} + /> + +

Why Use the Plugin?

+
    +
  • ✅ Optimizes Shiki WASM module loading
  • +
  • ✅ Improves build performance
  • +
  • ✅ Reduces bundle size
  • +
  • ✅ Better tree-shaking
  • +
+
+
+ ); + } + + if (tool === 'webpack') { + return ( +
+
+

+ Configure Webpack so CodeView live previews work out of the box. +

+ +

Installation

+ + +

Configuration

+ + +

Use CodeView

+ ; +render();` + "`" + `; + +export default () => ( + + {snippet} + +);`} + /> + +

Features

+
    +
  • ✅ Automatic WASM handling
  • +
  • ✅ CSS module support
  • +
  • ✅ Tree-shaking optimization
  • +
+
+
+ ); + } + + if (tool === 'rollup') { + return ( +
+
+

+ Configure Rollup for CodeView live previews. +

+ +

Installation

+ + +

Configuration

+ + +

Use CodeView

+ ; +render();` + "`" + `; + +export default () => ( + + {snippet} + +);`} + /> +
+
+ ); + } + + if (tool === 'esbuild') { + return ( +
+
+

+ Configure esbuild so CodeView live previews compile correctly. +

+ +

Installation

+ + +

Configuration

+ process.exit(1));`} + /> + +

Use CodeView

+ ; +render();` + "`" + `; + +export default () => ( + + {snippet} + +);`} + /> + +

Benefits

+
    +
  • ⚡ Lightning fast builds
  • +
  • ✅ Minimal configuration
  • +
  • ✅ Great for development
  • +
+
+
+ ); + } + + return

Build tool not found

; +}; diff --git a/docs/pages/ComponentsPage.tsx b/docs/pages/ComponentsPage.tsx new file mode 100644 index 0000000..9625b34 --- /dev/null +++ b/docs/pages/ComponentsPage.tsx @@ -0,0 +1,433 @@ +import React from 'react'; +import { useParams } from 'react-router-dom'; +import { Section } from '../components/Section'; +import { CodeBlock } from '../components/CodeBlock'; + +interface ComponentsPageProps { + theme: string; +} + +export const ComponentsPage: React.FC = ({ theme }) => { + const { component } = useParams<{ component: string }>(); + const isDark = theme === 'rcv-theme-dark'; + const codeTheme = isDark ? 'github-dark' : 'github-light'; + + if (component === 'code-view') { + return ( +
+
+

+ CodeView is the primary component for delivering live, editable React code examples. It combines an editor, live preview, and syntax highlighting. +

+ +

Minimal Example

+

Hello World

; +render();` + "`" + `; + +export function Demo() { + return ( + + {code} + + ); +}`} + /> + +

With Dependencies (React Hooks)

+ { + const [count, setCount] = React.useState(0); + return ( +
+

Count: {count}

+ +
+ ); +}; +render();` + "`" + `; + +export function Demo() { + return ( + + {code} + + ); +}`} + /> + +

Props

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PropTypeDefaultDescription
childrenstring-Source code to display and execute
languagestring'jsx'Language for syntax highlighting
dependenciesRecord<string, unknown>{'{}'}Injected globals for execution (e.g., useState, fetch)
themestring'rcv-theme-default'Theme name for syntax highlighting
renderPreviewbooleantrueShow live preview panel
editablebooleantrueAllow code editing
showCopyButtonbooleantrueShow copy code button
onError(error: Error) => void-Error callback when code execution fails
+
+ +

Features

+
    +
  • ✅ Live code editing with CodeMirror 6
  • +
  • ✅ Real-time preview rendering
  • +
  • ✅ Syntax highlighting with Shiki
  • +
  • ✅ Error boundary for safe execution
  • +
  • ✅ Copy code button
  • +
  • ✅ Dark mode support
  • +
  • ✅ Supports 100+ languages
  • +
+
+
+ ); + } + + if (component === 'code-editor') { + return ( +
+
+

+ CodeView is the primary way to deliver live, editable React examples. It wraps CodeEditor + Preview + Renderer. +

+ +

Minimal CodeView

+ ; +render();` + "`" + `; + +export function Demo() { + return ( + + {snippet} + + ); +}`} + /> + +

Props (most used)

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PropTypeDefaultDescription
childrenstring-Source to render & highlight
languagestring'jsx'Highlighting language
dependenciesRecord<string, unknown>{'{}'}Injected globals for execution (e.g., useState)
renderPreviewbooleantrueRender the live preview panel
showCopyButtonbooleantrueShow copy-to-clipboard in toolbar
themestring'rcv-theme-default'Applies to toolbar + code highlighting
beforeCompile / afterCompile(code: string) => string-Hooks to mutate code pre/post transform
+
+ +

Patterns

+ + {` + "`" + `const App = () => { + const [open, setOpen] = useState(false); + return ; + }; + render();` + "`" + `} +`} + /> + + + {` + "`" + `const a = 1;` + "`" + `} +`} + /> + + {code}`} + /> +
+
+ ); + } + + if (component === 'renderer') { + return ( +
+
+

+ Renderer is used by CodeView for read-only display; you can also use it standalone for static docs. +

+ +

Standalone

+ ; +}`} + /> + +

Inside CodeView (default)

+ {code} +`} + /> + +

Themes

+

Pass any Shiki theme name (e.g., github-light, github-dark, one-dark-pro).

+
+
+ ); + } + + if (component === 'markdown-renderer') { + return ( +
+
+

+ Renders Markdown content with automatic syntax highlighting for code blocks. +

+ +

Basic Usage

+ {markdown}; +}`} + /> + +

Props

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PropTypeDefaultDescription
childrenstring-Markdown content
themestring'github-light'Theme for code blocks
classNamestring-Custom CSS class
+
+ +

Features

+
    +
  • ✅ Automatic syntax highlighting for code blocks
  • +
  • ✅ Supports all Markdown syntax
  • +
  • ✅ Detects language from code fence
  • +
  • ✅ Theme switching support
  • +
+
+
+ ); + } + if (component === 'markdown-renderer') { + return ( +
+
+

+ Pair MarkdownRenderer with CodeView blocks to document live React snippets and static fences together. +

+ +

Docs page example

+ + {` + "`" + `const App = () => { + const [open, setOpen] = useState(false); + return ; + }; + render();` + "`" + `} + + ` + "`" + `; + + export function Docs() { + return {markdown}; + }`} + /> + +

Notes

+
    +
  • Inline CodeView blocks render live; fenced code uses Shiki themes.
  • +
  • Pass any Shiki theme; match it with your site theme toggle.
  • +
+
+
+ ); + } + + return

Component not found

; +}; diff --git a/docs/pages/InstallationPage.tsx b/docs/pages/InstallationPage.tsx new file mode 100644 index 0000000..aaf055e --- /dev/null +++ b/docs/pages/InstallationPage.tsx @@ -0,0 +1,98 @@ +import React from 'react'; +import { Section } from '../components/Section'; +import { CodeBlock } from '../components/CodeBlock'; + +interface InstallationPageProps { + theme: string; +} + +export const InstallationPage: React.FC = ({ theme }) => { + const isDark = theme === 'rcv-theme-dark'; + const codeTheme = isDark ? 'github-dark' : 'github-light'; + + return ( +
+
+

+ Choose your preferred package manager to install React Code View: +

+ +

npm

+ + +

pnpm

+ + +

yarn

+ + +

Import Styles

+

Import the CSS once to enable CodeView, Editor, and Preview styles:

+ + + +);`} + /> + +

First Live Block with CodeView

+ ( + +); + +render();` + "`" + `; + +export default function Demo() { + return ( +
+

Live preview

+ + {snippet} + +
+ ); +}`} + /> + +

Peer Dependencies

+

React Code View requires the following peer dependencies:

+
    +
  • react >= 18.0.0
  • +
  • react-dom >= 18.0.0
  • +
+
+
+ ); +}; diff --git a/docs/pages/OverviewPage.tsx b/docs/pages/OverviewPage.tsx new file mode 100644 index 0000000..f6a8733 --- /dev/null +++ b/docs/pages/OverviewPage.tsx @@ -0,0 +1,159 @@ +import React from 'react'; +import { FeatureCard } from '../components/FeatureCard'; +import { Section } from '../components/Section'; +import { CodeView } from '@react-code-view/react'; + +interface OverviewPageProps { + theme: string; +} + +export const OverviewPage: React.FC = ({ theme }) => { + const isDark = theme === 'rcv-theme-dark'; + const codeTheme = isDark ? 'github-dark' : 'github-light'; + + return ( +
+ {/* Hero Section */} +
+

React Code View

+

+ A powerful and flexible code editor and syntax highlighter for React applications. + Built with modern tools like CodeMirror 6 and Shiki. +

+
+ npm version + downloads + license +
+
+ + {/* Features */} +
+
+ + + + } + title="Modern Syntax Highlighting" + description="Powered by Shiki, the same engine as VS Code. Supports 100+ languages and themes." + /> + + + + + } + title="Full-Featured Editor" + description="CodeMirror 6 integration with line numbers, syntax highlighting, and autocompletion." + /> + + + + + } + title="Zero Runtime" + description="Syntax highlighting runs at build time. Ship zero JavaScript for static code blocks." + /> + + + + } + title="TypeScript Support" + description="Written in TypeScript with full type definitions for excellent IDE support." + /> + + + + } + title="Markdown Rendering" + description="Render Markdown with automatic code block syntax highlighting." + /> + + + + } + title="Build Tool Integration" + description="Works seamlessly with Vite, Webpack, Rollup, and esbuild via unplugin." + /> +
+
+ + {/* Quick Example */} +
+

+ Try it yourself! Click "Show Code" to view and edit the source code. +

+
+ + {`const App = () => { + const [count, setCount] = React.useState(0); + + return ( +
+

Interactive Counter

+

Count: {count}

+ +
+ ); +}; + +render();`} +
+
+
+ + {/* Key Benefits */} +
+
+
+

Production Ready

+

Battle-tested in production environments. Thoroughly tested with Jest and React Testing Library.

+
+
+

Developer Experience

+

Excellent TypeScript support, comprehensive documentation, and intuitive APIs.

+
+
+

Performance

+

Optimized bundle size with tree-shaking. Lazy loading for heavy dependencies.

+
+
+

Customizable

+

Extensive theming options. Custom language support. Flexible configuration.

+
+
+
+
+ ); +}; diff --git a/docs/pages/QuickStartPage.tsx b/docs/pages/QuickStartPage.tsx new file mode 100644 index 0000000..6e828ff --- /dev/null +++ b/docs/pages/QuickStartPage.tsx @@ -0,0 +1,85 @@ +import React from 'react'; +import { Section } from '../components/Section'; +import { CodeBlock } from '../components/CodeBlock'; +import { Link } from 'react-router-dom'; + +interface QuickStartPageProps { + theme: string; +} + +export const QuickStartPage: React.FC = ({ theme }) => { + const isDark = theme === 'rcv-theme-dark'; + const codeTheme = isDark ? 'github-dark' : 'github-light'; + + const liveExample = `import React from 'react'; +import { CodeView } from '@react-code-view/react'; +import '@react-code-view/react/styles/index.css'; + +const snippet = \`const App = () => { + const [count, setCount] = React.useState(0); + return ( + + ); +}; + +render();\`; + +export default function Demo() { + return ( + + {snippet} + + ); +} +`; + + return ( +
+
+

Get up and running with React Code View in a few steps.

+ +

Step 1: Install

+ + +

Step 2: Import Styles

+ + +

Step 3: Use CodeView (edit + preview)

+

Create an online editable block that renders React components live:

+ + +

Step 4: Toggle code / copy

+

Use the built-in toolbar in CodeView to show/hide source and copy the snippet.

+ +

Step 5: Add more examples

+
+ +

🎮 Live Examples

+

Interactive counter and todo list

+ + +

🔧 Build Tools

+

Wire CodeView into your bundler

+ + +

🧩 Components

+

See props for CodeView & friends

+ +
+
+
+ ); +}; diff --git a/docs/pages/examples/ComponentsExample.tsx b/docs/pages/examples/ComponentsExample.tsx new file mode 100644 index 0000000..1aed18d --- /dev/null +++ b/docs/pages/examples/ComponentsExample.tsx @@ -0,0 +1,91 @@ +import React from 'react'; +import { Section } from '../../components/Section'; +import { CodeView } from '@react-code-view/react'; + +interface ComponentsExampleProps { + theme: string; +} + +export const ComponentsExample: React.FC = ({ theme }) => { + const componentsCode = `const Button = ({ onClick, children }) => ( + +); + +const Card = ({ title, children }) => ( +
+

{title}

+
{children}
+
+); + +const App = () => { + const [count, setCount] = useState(0); + const [name, setName] = useState('React'); + + return ( +
+ +

Live editable preview. Update code and see changes instantly.

+
+ + setName(e.target.value)} + placeholder="Your name" + style={{ padding: '10px 12px', borderRadius: 10, border: '1px solid #d0d7de' }} + /> +
+
+
+ ); +}; + +render();`; + + return ( +
+
+

Build reusable components and compose them together in live examples.

+ +
+ + {componentsCode} + +
+ +
    +
  • Define multiple components (Button, Card)
  • +
  • Compose components together
  • +
  • Edit any part and see instant updates
  • +
  • Perfect for component library documentation
  • +
+
+
+ ); +}; diff --git a/docs/pages/examples/CounterExample.tsx b/docs/pages/examples/CounterExample.tsx new file mode 100644 index 0000000..06671e2 --- /dev/null +++ b/docs/pages/examples/CounterExample.tsx @@ -0,0 +1,46 @@ +import React from 'react'; +import { Section } from '../../components/Section'; +import { CodeView } from '@react-code-view/react'; + +interface CounterExampleProps { + theme: string; +} + +export const CounterExample: React.FC = ({ theme }) => { + const counterCode = `const App = () => { + const [count, setCount] = useState(0); + return ( + + ); +}; + +render();`; + + return ( +
+
+

A simple counter to demonstrate live code editing and preview.

+ +
+ + {counterCode} + +
+ +
    +
  • Click "Show Code" to view and edit the source
  • +
  • Preview updates instantly while you type
  • +
  • Click the copy button to reuse the code
  • +
+
+
+ ); +}; diff --git a/docs/pages/examples/ThemeExample.tsx b/docs/pages/examples/ThemeExample.tsx new file mode 100644 index 0000000..e200c58 --- /dev/null +++ b/docs/pages/examples/ThemeExample.tsx @@ -0,0 +1,95 @@ +import React from 'react'; +import { Section } from '../../components/Section'; +import { CodeView } from '@react-code-view/react'; + +interface ThemeExampleProps { + theme: string; +} + +export const ThemeExample: React.FC = ({ theme }) => { + const themeCode = `const App = () => { + const [isDark, setIsDark] = React.useState(false); + + const themeVars = { + '--bg-primary': isDark ? '#0d1117' : '#ffffff', + '--bg-secondary': isDark ? '#161b22' : '#f6f8fa', + '--text-primary': isDark ? '#e6edf3' : '#24292f', + '--text-secondary': isDark ? '#8b949e' : '#57606a', + '--border-color': isDark ? '#30363d' : '#d0d7de', + '--btn-bg': isDark ? '#238636' : '#2da44e', + }; + + return ( +
+

+ Theme Switcher +

+

+ Click the button to toggle between light and dark themes using CSS variables. +

+ +
+ Current theme: {isDark ? 'Dark' : 'Light'} +
+
+ ); +}; + +render();`; + + return ( +
+
+

Demonstrate dynamic theme switching inside your live examples.

+ +
+ + {themeCode} + +
+ +
    +
  • Use CSS variables for dynamic theming
  • +
  • Toggle between light and dark color schemes
  • +
  • Cleaner and more maintainable code
  • +
  • Perfect for documenting theme-aware components
  • +
+
+
+ ); +}; diff --git a/docs/pages/examples/TodoExample.tsx b/docs/pages/examples/TodoExample.tsx new file mode 100644 index 0000000..4c6e2f7 --- /dev/null +++ b/docs/pages/examples/TodoExample.tsx @@ -0,0 +1,85 @@ +import React from 'react'; +import { Section } from '../../components/Section'; +import { CodeView } from '@react-code-view/react'; + +interface TodoExampleProps { + theme: string; +} + +export const TodoExample: React.FC = ({ theme }) => { + const todoCode = `const App = () => { + const [todos, setTodos] = useState([ + { id: 1, text: 'Learn React', done: true }, + { id: 2, text: 'Ship CodeView docs', done: false } + ]); + const [input, setInput] = useState(''); + + const add = () => { + if (!input.trim()) return; + setTodos([...todos, { id: Date.now(), text: input, done: false }]); + setInput(''); + }; + + return ( +
+
+ setInput(e.target.value)} + onKeyDown={e => e.key === 'Enter' && add()} + style={{ flex: 1, padding: 10, borderRadius: 8, border: '1px solid #d0d7de' }} + placeholder="Add todo" + /> + +
+
    + {todos.map(todo => ( +
  • setTodos(ts => ts.map(t => t.id === todo.id ? { ...t, done: !t.done } : t))} + style={{ + padding: '10px 12px', + borderRadius: 10, + background: '#f6f8fa', + textDecoration: todo.done ? 'line-through' : 'none', + opacity: todo.done ? 0.6 : 1, + cursor: 'pointer' + }} + > + {todo.done ? '\u2713' : '\u25cb'} {todo.text} +
  • + ))} +
+
+ ); +}; + +render();`; + + return ( +
+
+

An interactive todo list demonstrating state management and event handling.

+ +
+ + {todoCode} + +
+ +
    +
  • Real React state with multiple interactions
  • +
  • Add todos by typing and pressing Enter
  • +
  • Click todos to toggle completion status
  • +
  • Edit code to modify behavior instantly
  • +
+
+
+ ); +}; diff --git a/docs/pages/examples/TypeScriptExample.tsx b/docs/pages/examples/TypeScriptExample.tsx new file mode 100644 index 0000000..6749078 --- /dev/null +++ b/docs/pages/examples/TypeScriptExample.tsx @@ -0,0 +1,78 @@ +import React from 'react'; +import { Section } from '../../components/Section'; +import { CodeView } from '@react-code-view/react'; + +interface TypeScriptExampleProps { + theme: string; +} + +export const TypeScriptExample: React.FC = ({ theme }) => { + const typedCode = `interface User { + id: number; + name: string; + email: string; +} + +const App = () => { + const [users, setUsers] = React.useState([ + { id: 1, name: 'Ada', email: 'ada@example.com' }, + { id: 2, name: 'Lin', email: 'lin@example.com' } + ]); + + const add = () => { + const id = users.length + 1; + const newUser: User = { + id, + name: \`User \${id}\`, + email: \`user\${id}@example.com\` + }; + setUsers([...users, newUser]); + }; + + return ( +
+ +
    + {users.map((u: User) => ( +
  • + {u.name} +
    {u.email}
    +
  • + ))} +
+
+ ); +}; + +render();`; + + return ( +
+
+

Full TypeScript support with interfaces, generics, and type annotations. Sucrase automatically strips types at runtime.

+ +
+ + {typedCode} + +
+ +
    +
  • Write real TypeScript code with interfaces and type annotations
  • +
  • Sucrase automatically removes types for execution
  • +
  • Full syntax highlighting for TypeScript/TSX
  • +
  • Perfect for documenting typed APIs and components
  • +
+
+
+ ); +}; diff --git a/docs/styles/index.css b/docs/styles/index.css new file mode 100644 index 0000000..1298c4d --- /dev/null +++ b/docs/styles/index.css @@ -0,0 +1,819 @@ +/* ===================================================== + CSS Variables - Design System + ===================================================== */ + +:root { + /* Colors - Light Theme */ + --color-bg: #ffffff; + --color-bg-secondary: #f6f8fa; + --color-bg-tertiary: #f0f2f5; + --color-border: #d0d7de; + --color-border-light: #e5e7eb; + --color-text: #1f2937; + --color-text-secondary: #6b7280; + --color-text-tertiary: #9ca3af; + --color-link: #0969da; + --color-link-hover: #0550ae; + --color-accent: #0969da; + --color-accent-bg: #ddf4ff; + --color-success: #1a7f37; + --color-code-bg: #f6f8fa; + --color-code-border: #d0d7de; + + /* Header */ + --header-height: 60px; + --header-bg: #ffffff; + --header-border: #e5e7eb; + + /* Sidebar */ + --sidebar-width: 260px; + --sidebar-bg: #f6f8fa; + --sidebar-border: #e5e7eb; + + /* Spacing */ + --spacing-xs: 0.25rem; + --spacing-sm: 0.5rem; + --spacing-md: 1rem; + --spacing-lg: 1.5rem; + --spacing-xl: 2rem; + --spacing-2xl: 3rem; + + /* Typography */ + --font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif; + --font-family-mono: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace; + --font-size-sm: 0.875rem; + --font-size-base: 1rem; + --font-size-lg: 1.125rem; + --font-size-xl: 1.25rem; + --font-size-2xl: 1.5rem; + --font-size-3xl: 1.875rem; + --font-size-4xl: 2.25rem; + --line-height-base: 1.6; + --line-height-heading: 1.25; + + /* Shadows */ + --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05); + --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1); + --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1); + + /* Border Radius */ + --radius-sm: 4px; + --radius-md: 6px; + --radius-lg: 8px; + --radius-xl: 12px; + + /* Transitions */ + --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1); + --transition-base: 200ms cubic-bezier(0.4, 0, 0.2, 1); +} + +/* Dark Theme */ +:root.dark, +.dark { + --color-bg: #0d1117; + --color-bg-secondary: #161b22; + --color-bg-tertiary: #1c2128; + --color-border: #30363d; + --color-border-light: #21262d; + --color-text: #e6edf3; + --color-text-secondary: #8b949e; + --color-text-tertiary: #6e7681; + --color-link: #58a6ff; + --color-link-hover: #79c0ff; + --color-accent: #58a6ff; + --color-accent-bg: #1c2d41; + --color-success: #3fb950; + --color-code-bg: #161b22; + --color-code-border: #30363d; + + --header-bg: #0d1117; + --header-border: #21262d; + --sidebar-bg: #0d1117; + --sidebar-border: #21262d; +} + +/* ===================================================== + Base Styles + ===================================================== */ + +* { + box-sizing: border-box; + margin: 0; + padding: 0; +} + +html { + scroll-behavior: smooth; +} + +body { + font-family: var(--font-family); + font-size: var(--font-size-base); + line-height: var(--line-height-base); + color: var(--color-text); + background-color: var(--color-bg); + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +code { + font-family: var(--font-family-mono); + font-size: 0.9em; +} + +/* ===================================================== + App Layout + ===================================================== */ + +.docs-app { + min-height: 100vh; + display: flex; + flex-direction: column; +} + +/* ===================================================== + Header + ===================================================== */ + +.docs-header { + position: sticky; + top: 0; + z-index: 100; + height: var(--header-height); + background-color: var(--header-bg); + border-bottom: 1px solid var(--header-border); + box-shadow: var(--shadow-sm); +} + +.header-container { + max-width: 1400px; + margin: 0 auto; + height: 100%; + padding: 0 var(--spacing-lg); + display: flex; + align-items: center; + justify-content: space-between; + gap: var(--spacing-lg); +} + +.header-left { + display: flex; + align-items: center; + flex: 1; +} + +.logo { + display: flex; + align-items: center; + gap: var(--spacing-sm); + font-size: var(--font-size-lg); + font-weight: 600; + color: var(--color-text); + text-decoration: none; + transition: opacity var(--transition-fast); +} + +.logo:hover { + opacity: 0.8; +} + +.logo svg { + color: var(--color-accent); +} + +.logo-text { + white-space: nowrap; +} + +.header-right { + display: flex; + align-items: center; + gap: var(--spacing-md); +} + +.github-link { + display: flex; + align-items: center; + justify-content: center; + width: 36px; + height: 36px; + color: var(--color-text-secondary); + transition: all var(--transition-fast); + border-radius: var(--radius-md); +} + +.github-link:hover { + color: var(--color-text); + background-color: var(--color-bg-secondary); +} + +.theme-toggle { + display: flex; + align-items: center; + justify-content: center; + width: 36px; + height: 36px; + padding: 0; + background: transparent; + border: 1px solid var(--color-border); + border-radius: var(--radius-md); + color: var(--color-text-secondary); + cursor: pointer; + transition: all var(--transition-fast); +} + +.theme-toggle:hover { + color: var(--color-text); + background-color: var(--color-bg-secondary); + border-color: var(--color-border); +} + +/* ===================================================== + Layout + ===================================================== */ + +.docs-layout { + flex: 1; + display: flex; + max-width: 1400px; + margin: 0 auto; + width: 100%; +} + +/* ===================================================== + Sidebar + ===================================================== */ + +.docs-sidebar { + width: var(--sidebar-width); + flex-shrink: 0; + background-color: var(--sidebar-bg); + border-right: 1px solid var(--sidebar-border); +} + +.sidebar-content { + padding: var(--spacing-xl) var(--spacing-lg); +} + +.sidebar-section { + margin-bottom: var(--spacing-xl); +} + +.sidebar-section:last-child { + margin-bottom: 0; +} + +.sidebar-title { + font-size: var(--font-size-sm); + font-weight: 600; + color: var(--color-text); + text-transform: uppercase; + letter-spacing: 0.05em; + margin-bottom: var(--spacing-md); +} + +.sidebar-list { + list-style: none; + margin: 0; + padding: 0; +} + +.sidebar-list li { + margin-bottom: var(--spacing-xs); +} + +.sidebar-link { + display: block; + padding: var(--spacing-sm) var(--spacing-md); + color: var(--color-text-secondary); + text-decoration: none; + font-size: var(--font-size-sm); + border-radius: var(--radius-md); + transition: all var(--transition-fast); +} + +.sidebar-link:hover { + color: var(--color-text); + background-color: var(--color-bg-secondary); +} + +.sidebar-link.active { + color: var(--color-accent); + background-color: var(--color-accent-bg); + font-weight: 500; +} + +/* ===================================================== + Main Content + ===================================================== */ + +.docs-main { + flex: 1; + min-width: 0; + padding: var(--spacing-2xl) var(--spacing-xl); +} + +.page-content { + max-width: 900px; + margin: 0 auto; +} + +/* ===================================================== + Hero Section + ===================================================== */ + +.hero-section { + text-align: center; + padding: var(--spacing-2xl) 0; + margin-bottom: var(--spacing-2xl); + border-bottom: 1px solid var(--color-border-light); +} + +.hero-title { + font-size: var(--font-size-4xl); + font-weight: 700; + color: var(--color-text); + margin-bottom: var(--spacing-md); + line-height: var(--line-height-heading); +} + +.hero-description { + font-size: var(--font-size-lg); + color: var(--color-text-secondary); + max-width: 700px; + margin: 0 auto var(--spacing-lg); + line-height: 1.7; +} + +.hero-badges { + display: flex; + gap: var(--spacing-sm); + justify-content: center; + align-items: center; + flex-wrap: wrap; +} + +.hero-badges img { + height: 20px; +} + +/* ===================================================== + Sections + ===================================================== */ + +.docs-section { + margin-bottom: var(--spacing-2xl); + padding-top: var(--spacing-lg); +} + +.section-title { + font-size: var(--font-size-3xl); + font-weight: 700; + color: var(--color-text); + margin-bottom: var(--spacing-lg); + line-height: var(--line-height-heading); +} + +.section-content { + color: var(--color-text-secondary); +} + +.section-content h3 { + font-size: var(--font-size-xl); + font-weight: 600; + color: var(--color-text); + margin-top: var(--spacing-xl); + margin-bottom: var(--spacing-md); + line-height: var(--line-height-heading); +} + +.section-content h4 { + font-size: var(--font-size-lg); + font-weight: 600; + color: var(--color-text); + margin-top: var(--spacing-lg); + margin-bottom: var(--spacing-sm); +} + +.section-content p { + margin-bottom: var(--spacing-md); + line-height: 1.7; +} + +.section-content ul, +.section-content ol { + margin: var(--spacing-md) 0; + padding-left: var(--spacing-xl); +} + +.section-content li { + margin-bottom: var(--spacing-sm); + line-height: 1.7; +} + +.section-content a { + color: var(--color-link); + text-decoration: none; + transition: color var(--transition-fast); +} + +.section-content a:hover { + color: var(--color-link-hover); + text-decoration: underline; +} + +.section-intro { + font-size: var(--font-size-lg); + color: var(--color-text); + margin-bottom: var(--spacing-lg); +} + +/* ===================================================== + Features Grid + ===================================================== */ + +.features-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); + gap: var(--spacing-lg); + margin-top: var(--spacing-lg); +} + +.feature-card { + padding: var(--spacing-lg); + background-color: var(--color-bg-secondary); + border: 1px solid var(--color-border-light); + border-radius: var(--radius-lg); + transition: all var(--transition-base); +} + +.feature-card:hover { + border-color: var(--color-border); + box-shadow: var(--shadow-md); +} + +.feature-icon { + width: 40px; + height: 40px; + display: flex; + align-items: center; + justify-content: center; + background-color: var(--color-accent-bg); + color: var(--color-accent); + border-radius: var(--radius-md); + margin-bottom: var(--spacing-md); +} + +.feature-title { + font-size: var(--font-size-lg); + font-weight: 600; + color: var(--color-text); + margin-bottom: var(--spacing-sm); +} + +.feature-description { + font-size: var(--font-size-sm); + color: var(--color-text-secondary); + line-height: 1.6; +} + +/* ===================================================== + Benefits List + ===================================================== */ + +.benefits-list { + display: grid; + gap: var(--spacing-lg); + margin-top: var(--spacing-lg); +} + +.benefit-item h4 { + font-size: var(--font-size-lg); + font-weight: 600; + color: var(--color-text); + margin-bottom: var(--spacing-sm); +} + +.benefit-item p { + color: var(--color-text-secondary); + line-height: 1.6; +} + +/* ===================================================== + Code Blocks + ===================================================== */ + +.code-block { + margin: var(--spacing-lg) 0; + border: 1px solid var(--color-code-border); + border-radius: var(--radius-lg); + overflow: hidden; + background-color: var(--color-code-bg); +} + +.code-block-header { + display: flex; + align-items: center; + justify-content: space-between; + padding: var(--spacing-sm) var(--spacing-md); + background-color: var(--color-bg-tertiary); + border-bottom: 1px solid var(--color-code-border); +} + +.code-block-title { + font-size: var(--font-size-sm); + font-weight: 500; + color: var(--color-text-secondary); + font-family: var(--font-family-mono); +} + +.copy-button { + display: flex; + align-items: center; + gap: var(--spacing-xs); + padding: 4px 8px; + font-size: var(--font-size-sm); + font-weight: 500; + color: var(--color-text-secondary); + background: transparent; + border: 1px solid var(--color-border); + border-radius: var(--radius-sm); + cursor: pointer; + transition: all var(--transition-fast); +} + +.copy-button:hover { + color: var(--color-text); + background-color: var(--color-bg-secondary); + border-color: var(--color-border); +} + +.copy-button svg { + width: 14px; + height: 14px; +} + +.copy-text { + font-size: 12px; +} + +.code-block-content { + overflow-x: auto; +} + +.code-block-content .rcv-code-block { + margin: 0; + border: none; + border-radius: 0; +} + +.code-block-content pre { + margin: 0; + padding: var(--spacing-md); + overflow-x: auto; +} + +/* ===================================================== + Example Demos + ===================================================== */ + +.example-demo { + margin: var(--spacing-lg) 0; + padding: var(--spacing-lg); + background-color: var(--color-bg-secondary); + border: 1px solid var(--color-border-light); + border-radius: var(--radius-lg); +} + +/* ===================================================== + API Tables + ===================================================== */ + +.api-table-wrapper { + margin: var(--spacing-lg) 0; + overflow-x: auto; + border: 1px solid var(--color-border-light); + border-radius: var(--radius-lg); +} + +.api-table { + width: 100%; + border-collapse: collapse; + font-size: var(--font-size-sm); +} + +.api-table th { + background-color: var(--color-bg-tertiary); + color: var(--color-text); + font-weight: 600; + text-align: left; + padding: var(--spacing-md); + border-bottom: 1px solid var(--color-border); +} + +.api-table td { + padding: var(--spacing-md); + border-bottom: 1px solid var(--color-border-light); + color: var(--color-text-secondary); + line-height: 1.6; +} + +.api-table tr:last-child td { + border-bottom: none; +} + +.api-table tr:hover td { + background-color: var(--color-bg-secondary); +} + +.api-table code { + padding: 2px 6px; + background-color: var(--color-code-bg); + border: 1px solid var(--color-code-border); + border-radius: var(--radius-sm); + font-size: 0.85em; + color: var(--color-accent); +} + +/* Lists */ +.language-list, +.theme-list { + list-style: none; + padding: 0; + display: flex; + flex-wrap: wrap; + gap: var(--spacing-sm); + margin: var(--spacing-md) 0; +} + +.language-list li, +.theme-list li { + margin: 0; +} + +.language-list code, +.theme-list code { + padding: 4px 10px; + background-color: var(--color-code-bg); + border: 1px solid var(--color-code-border); + border-radius: var(--radius-md); + font-size: var(--font-size-sm); + color: var(--color-accent); +} + +/* ===================================================== + Next Steps + ===================================================== */ + +.next-steps-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: var(--spacing-lg); + margin-top: var(--spacing-lg); +} + +.next-step-card { + display: block; + padding: var(--spacing-lg); + background-color: var(--color-bg-secondary); + border: 1px solid var(--color-border-light); + border-radius: var(--radius-lg); + text-decoration: none; + transition: all var(--transition-base); +} + +.next-step-card:hover { + border-color: var(--color-accent); + box-shadow: var(--shadow-md); + transform: translateY(-2px); +} + +.next-step-card h4 { + font-size: var(--font-size-lg); + color: var(--color-text); + margin-bottom: var(--spacing-sm); +} + +.next-step-card p { + font-size: var(--font-size-sm); + color: var(--color-text-secondary); + margin: 0; + line-height: 1.6; +} + +/* ===================================================== + Footer + ===================================================== */ + +.docs-footer { + margin-top: auto; + padding: var(--spacing-xl) var(--spacing-lg); + background-color: var(--color-bg-secondary); + border-top: 1px solid var(--color-border-light); +} + +.footer-container { + max-width: 1400px; + margin: 0 auto; +} + +.footer-content { + text-align: center; + color: var(--color-text-secondary); + font-size: var(--font-size-sm); +} + +.footer-content p { + margin: var(--spacing-sm) 0; +} + +.footer-links { + display: flex; + align-items: center; + justify-content: center; + gap: var(--spacing-md); + flex-wrap: wrap; +} + +.footer-links a { + color: var(--color-text-secondary); + text-decoration: none; + transition: color var(--transition-fast); +} + +.footer-links a:hover { + color: var(--color-link); +} + +.footer-links span { + color: var(--color-border); +} + +/* ===================================================== + Inline Code + ===================================================== */ + +:not(pre) > code { + padding: 2px 6px; + background-color: var(--color-code-bg); + border: 1px solid var(--color-code-border); + border-radius: var(--radius-sm); + font-size: 0.9em; + color: var(--color-accent); +} + +/* ===================================================== + Responsive Design + ===================================================== */ + +@media (max-width: 1024px) { + .docs-sidebar { + display: none; + } + + .docs-main { + padding: var(--spacing-xl) var(--spacing-md); + } +} + +@media (max-width: 768px) { + .hero-title { + font-size: var(--font-size-3xl); + } + + .hero-description { + font-size: var(--font-size-base); + } + + .section-title { + font-size: var(--font-size-2xl); + } + + .features-grid { + grid-template-columns: 1fr; + } + + .next-steps-grid { + grid-template-columns: 1fr; + } + + .logo-text { + display: none; + } + + .header-container { + padding: 0 var(--spacing-md); + } + + .docs-main { + padding: var(--spacing-lg) var(--spacing-md); + } +} + +/* ===================================================== + Scrollbar Styling + ===================================================== */ + +.docs-sidebar::-webkit-scrollbar { + display: none; +} diff --git a/docs/styles/index.css.backup b/docs/styles/index.css.backup new file mode 100644 index 0000000..eb5a973 --- /dev/null +++ b/docs/styles/index.css.backup @@ -0,0 +1,679 @@ +/* Base Reset */ +*, +*::before, +*::after { + box-sizing: border-box; + margin: 0; + padding: 0; +} + +:root { + /* Light Theme Colors */ + --color-bg: #ffffff; + --color-bg-secondary: #f8fafc; + --color-bg-tertiary: #f1f5f9; + --color-text: #0f172a; + --color-text-secondary: #64748b; + --color-text-muted: #94a3b8; + --color-border: #e2e8f0; + --color-border-light: #f1f5f9; + --color-primary: #3b82f6; + --color-primary-hover: #2563eb; + --color-primary-light: #dbeafe; + --color-success: #10b981; + --color-success-light: #d1fae5; + --color-warning: #f59e0b; + --color-accent: #8b5cf6; + --color-accent-light: #ede9fe; + + /* Gradients */ + --gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + --gradient-hero: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%); + --gradient-card: linear-gradient(135deg, rgba(102, 126, 234, 0.05) 0%, rgba(118, 75, 162, 0.05) 100%); + + /* Shadows */ + --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05); + --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); + --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); + --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); + --shadow-glow: 0 0 20px rgba(102, 126, 234, 0.3); + + /* Typography */ + --font-sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; + --font-mono: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace; + + /* Spacing */ + --max-width: 1280px; + --section-gap: 120px; + --card-gap: 24px; + + /* Border Radius */ + --radius-sm: 8px; + --radius-md: 12px; + --radius-lg: 16px; + --radius-xl: 24px; + + /* Transitions */ + --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1); + --transition-base: 200ms cubic-bezier(0.4, 0, 0.2, 1); + --transition-slow: 300ms cubic-bezier(0.4, 0, 0.2, 1); +} + +.dark { + --color-bg: #0f172a; + --color-bg-secondary: #1e293b; + --color-bg-tertiary: #334155; + --color-text: #f1f5f9; + --color-text-secondary: #cbd5e1; + --color-text-muted: #94a3b8; + --color-border: #334155; + --color-border-light: #1e293b; + --color-primary: #60a5fa; + --color-primary-hover: #93c5fd; + --color-primary-light: #1e3a8a; + --color-success: #34d399; + --color-success-light: #064e3b; + --color-accent: #a78bfa; + --color-accent-light: #4c1d95; + + --gradient-hero: linear-gradient(135deg, #4c1d95 0%, #5b21b6 50%, #7c3aed 100%); + --gradient-card: linear-gradient(135deg, rgba(139, 92, 246, 0.1) 0%, rgba(99, 102, 241, 0.1) 100%); + --shadow-glow: 0 0 30px rgba(139, 92, 246, 0.4); +} + +body { + font-family: var(--font-sans); + background-color: var(--color-bg); + color: var(--color-text); + line-height: 1.7; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +/* Smooth scroll */ +html { + scroll-behavior: smooth; +} + +/* Layout */ +.app { + min-height: 100vh; + display: flex; + flex-direction: column; +} + +/* ============================================ + Hero Header + ============================================ */ + +.header { + position: relative; + background: var(--gradient-hero); + color: white; + padding: 80px 24px 100px; + text-align: center; + overflow: hidden; +} + +.header::before { + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: + radial-gradient(circle at 20% 50%, rgba(255, 255, 255, 0.1) 0%, transparent 50%), + radial-gradient(circle at 80% 80%, rgba(255, 255, 255, 0.1) 0%, transparent 50%); + pointer-events: none; +} + +.header-content { + position: relative; + z-index: 1; + max-width: var(--max-width); + margin: 0 auto; +} + +.logo { + display: flex; + align-items: center; + justify-content: center; + gap: 16px; + margin-bottom: 24px; + animation: fadeInUp 0.6s ease-out; +} + +.logo-icon { + font-size: 4rem; + font-family: var(--font-mono); + font-weight: bold; + text-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); + animation: float 3s ease-in-out infinite; +} + +@keyframes float { + 0%, 100% { transform: translateY(0); } + 50% { transform: translateY(-10px); } +} + +@keyframes fadeInUp { + from { + opacity: 0; + transform: translateY(30px); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +.header h1 { + font-size: 3.5rem; + font-weight: 800; + margin: 0 0 16px; + letter-spacing: -0.02em; + text-shadow: 0 2px 20px rgba(0, 0, 0, 0.2); + animation: fadeInUp 0.6s ease-out 0.1s both; +} + +.tagline { + font-size: 1.5rem; + font-weight: 400; + opacity: 0.95; + margin-bottom: 40px; + max-width: 600px; + margin-left: auto; + margin-right: auto; + animation: fadeInUp 0.6s ease-out 0.2s both; +} + +.header-actions { + display: flex; + gap: 16px; + justify-content: center; + flex-wrap: wrap; + animation: fadeInUp 0.6s ease-out 0.3s both; +} + +/* ============================================ + Buttons + ============================================ */ + +.btn { + display: inline-flex; + align-items: center; + gap: 8px; + padding: 14px 28px; + font-size: 15px; + font-weight: 600; + border-radius: var(--radius-lg); + text-decoration: none; + cursor: pointer; + transition: all var(--transition-base); + border: none; + box-shadow: var(--shadow-md); + position: relative; + overflow: hidden; +} + +.btn::before { + content: ''; + position: absolute; + top: 50%; + left: 50%; + width: 0; + height: 0; + border-radius: 50%; + background: rgba(255, 255, 255, 0.3); + transform: translate(-50%, -50%); + transition: width 0.6s, height 0.6s; +} + +.btn:hover::before { + width: 300px; + height: 300px; +} + +.btn-primary { + background-color: white; + color: #667eea; + box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2); +} + +.btn-primary:hover { + transform: translateY(-2px); + box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25); +} + +.btn-outline { + background-color: rgba(255, 255, 255, 0.1); + color: white; + border: 2px solid rgba(255, 255, 255, 0.3); + backdrop-filter: blur(10px); +} + +.btn-outline:hover { + background-color: rgba(255, 255, 255, 0.2); + border-color: rgba(255, 255, 255, 0.6); + transform: translateY(-2px); +} + +/* ============================================ + Main Content + ============================================ */ + +.main { + flex: 1; + max-width: var(--max-width); + margin: -40px auto 0; + padding: 0 24px 80px; + width: 100%; + position: relative; + z-index: 2; +} + +/* ============================================ + Sections + ============================================ */ + +.section { + margin-bottom: var(--section-gap); + animation: fadeIn 0.6s ease-out; +} + +@keyframes fadeIn { + from { opacity: 0; } + to { opacity: 1; } +} + +.section h2 { + font-size: 2.5rem; + font-weight: 700; + margin-bottom: 16px; + padding-bottom: 16px; + border-bottom: 3px solid var(--color-primary); + display: inline-block; + background: linear-gradient(135deg, var(--color-text) 0%, var(--color-primary) 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + background-clip: text; +} + +.section-desc { + color: var(--color-text-secondary); + font-size: 1.125rem; + margin-bottom: 48px; + max-width: 700px; +} + +/* ============================================ + Feature Cards + ============================================ */ + +.packages-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); + gap: var(--card-gap); +} + +.package-card { + background: var(--gradient-card); + border: 1px solid var(--color-border); + border-radius: var(--radius-lg); + padding: 32px; + transition: all var(--transition-base); + position: relative; + overflow: hidden; + backdrop-filter: blur(10px); +} + +.package-card::before { + content: ''; + position: absolute; + top: 0; + left: 0; + right: 0; + height: 4px; + background: var(--gradient-primary); + transform: scaleX(0); + transition: transform var(--transition-base); +} + +.package-card:hover { + transform: translateY(-8px); + box-shadow: var(--shadow-xl); + border-color: var(--color-primary); +} + +.package-card:hover::before { + transform: scaleX(1); +} + +.package-card h3 { + font-size: 1.25rem; + font-weight: 700; + margin-bottom: 12px; + color: var(--color-primary); + display: flex; + align-items: center; + gap: 8px; +} + +.package-card p { + color: var(--color-text-secondary); + font-size: 0.95rem; + margin-bottom: 20px; + line-height: 1.6; +} + +.package-card code { + display: block; + background-color: var(--color-bg-tertiary); + padding: 12px 16px; + border-radius: var(--radius-sm); + font-family: var(--font-mono); + font-size: 0.875rem; + color: var(--color-text); + border: 1px solid var(--color-border); + transition: all var(--transition-fast); +} + +.package-card:hover code { + background-color: var(--color-primary-light); + border-color: var(--color-primary); +} + +/* ============================================ + Examples + ============================================ */ + +.example { + margin-bottom: 56px; +} + +.example h3 { + font-size: 1.5rem; + font-weight: 600; + margin-bottom: 16px; + color: var(--color-text); + display: flex; + align-items: center; + gap: 8px; +} + +.example h3::before { + content: ''; + width: 6px; + height: 24px; + background: var(--gradient-primary); + border-radius: 3px; +} + +/* ============================================ + Integration Grid + ============================================ */ + +.integration-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); + gap: var(--card-gap); +} + +.integration-card { + background-color: var(--color-bg-secondary); + border: 1px solid var(--color-border); + border-radius: var(--radius-lg); + overflow: hidden; + transition: all var(--transition-base); +} + +.integration-card:hover { + transform: translateY(-4px); + box-shadow: var(--shadow-lg); + border-color: var(--color-primary); +} + +.integration-card h4 { + padding: 16px 20px; + background: var(--gradient-card); + font-size: 1rem; + font-weight: 600; + color: var(--color-text); + border-bottom: 2px solid var(--color-border); +} + +.integration-card .rcv-renderer { + border: none; + border-radius: 0; + background: transparent; +} + +/* ============================================ + API Table + ============================================ */ + +.api-section { + margin-top: 48px; + background: var(--color-bg-secondary); + padding: 40px; + border-radius: var(--radius-lg); + border: 1px solid var(--color-border); +} + +.api-section h3 { + font-size: 1.5rem; + font-weight: 600; + margin-bottom: 24px; + color: var(--color-text); +} + +.api-table { + width: 100%; + border-collapse: collapse; + font-size: 0.9rem; + background: var(--color-bg); + border-radius: var(--radius-md); + overflow: hidden; + box-shadow: var(--shadow-sm); +} + +.api-table th, +.api-table td { + padding: 16px 20px; + text-align: left; + border-bottom: 1px solid var(--color-border-light); +} + +.api-table th { + background: var(--gradient-card); + font-weight: 600; + color: var(--color-text); + text-transform: uppercase; + font-size: 0.75rem; + letter-spacing: 0.05em; +} + +.api-table tr:last-child td { + border-bottom: none; +} + +.api-table tr:hover { + background-color: var(--color-bg-secondary); +} + +.api-table code { + background-color: var(--color-accent-light); + color: var(--color-accent); + padding: 4px 8px; + border-radius: 4px; + font-family: var(--font-mono); + font-size: 0.85em; + font-weight: 500; +} + +/* ============================================ + Footer + ============================================ */ + +.footer { + background: var(--gradient-card); + border-top: 1px solid var(--color-border); + padding: 40px 24px; + text-align: center; + color: var(--color-text-secondary); + margin-top: 80px; +} + +.footer a { + color: var(--color-primary); + text-decoration: none; + font-weight: 500; + transition: color var(--transition-fast); +} + +.footer a:hover { + color: var(--color-primary-hover); + text-decoration: underline; +} + +/* ============================================ + Markdown Overrides + ============================================ */ + +.rcv-markdown { + padding: 0; + font-size: 1.0625rem; +} + +.rcv-markdown h1 { + font-size: 2.25rem; + margin-top: 0; + font-weight: 700; +} + +.rcv-markdown h2 { + font-size: 1.875rem; + margin-top: 48px; + font-weight: 700; +} + +.rcv-markdown :not(pre) > code { + background-color: var(--color-accent-light); + color: var(--color-accent); + border: 1px solid var(--color-border); + padding: 3px 6px; + border-radius: 4px; + font-family: var(--font-mono); + font-size: 0.875em; + font-weight: 500; +} + +.rcv-markdown pre { + margin: 24px 0; +} + +.rcv-markdown .rcv-code-block { + margin: 24px 0; + border-radius: var(--radius-md); + overflow: hidden; + border: 1px solid var(--color-border); + box-shadow: var(--shadow-md); + transition: all var(--transition-base); +} + +.rcv-markdown .rcv-code-block:hover { + box-shadow: var(--shadow-lg); + border-color: var(--color-primary); +} + +.rcv-markdown .rcv-code-block pre { + margin: 0; +} + +.dark .rcv-markdown .rcv-code-block { + border-color: var(--color-border); + box-shadow: var(--shadow-lg); +} + +/* ============================================ + Code View Overrides + ============================================ */ + +.rcv-code-view { + border-radius: var(--radius-lg); + overflow: hidden; + box-shadow: var(--shadow-lg); + border: 1px solid var(--color-border); + transition: all var(--transition-base); +} + +.rcv-code-view:hover { + box-shadow: var(--shadow-xl); + border-color: var(--color-primary); +} + +/* ============================================ + Responsive Design + ============================================ */ + +@media (max-width: 768px) { + .header { + padding: 60px 20px 80px; + } + + .header h1 { + font-size: 2.5rem; + } + + .logo-icon { + font-size: 3rem; + } + + .tagline { + font-size: 1.125rem; + } + + .main { + padding: 0 20px 60px; + } + + .section { + margin-bottom: 80px; + } + + .section h2 { + font-size: 2rem; + } + + .api-section { + padding: 24px; + } + + .api-table { + display: block; + overflow-x: auto; + } + + .packages-grid, + .integration-grid { + grid-template-columns: 1fr; + } +} + +/* ============================================ + Utility Classes + ============================================ */ + +.text-gradient { + background: var(--gradient-primary); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + background-clip: text; +} + +.glass { + background: rgba(255, 255, 255, 0.1); + backdrop-filter: blur(10px); + border: 1px solid rgba(255, 255, 255, 0.2); +} diff --git a/docs/styles/index.less b/docs/styles/index.less deleted file mode 100644 index 1d0f237..0000000 --- a/docs/styles/index.less +++ /dev/null @@ -1,18 +0,0 @@ -@import '~rsuite/styles/index.less'; -@import '../../src/less/index.less'; -@import './markdown.less'; - -@enable-css-reset: false; - -:root { - --font-family-mono: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, 'Liberation Mono', - monospace; - --rs-border-primary: #e5e5ea; - --rs-text-primary: #575757; -} - -.rcv-render, -.react-code-view-error { - min-height: 60px; - margin: 0; -} diff --git a/docs/styles/markdown.less b/docs/styles/markdown.less deleted file mode 100755 index cfc6dbb..0000000 --- a/docs/styles/markdown.less +++ /dev/null @@ -1,71 +0,0 @@ -.rcv-markdown { - h1 { - font-size: 28px; - code { - font-size: 14px; - border-radius: 4px; - } - } - - h2 { - font-size: 24px; - padding: 10px 0; - font-weight: bold; - margin-top: 10px; - } - h3 { - font-size: 18px; - margin-top: 10px; - } - h3 code { - font-size: 18px !important; - } - - h4 { - font-size: 16px; - margin-top: 10px; - } - - ol, - ul { - padding: 10px 20px; - list-style-type: circle; - li { - line-height: 26px; - } - } - table { - width: 100%; - margin-top: 10px; - td, - th { - padding: 10px; - border-style: none none dashed none; - border-width: 1px; - border-color: var(--rs-border-primary); - } - } - table th { - text-align: left; - } - blockquote { - padding: 2px 10px; - margin: 2em 0; - font-size: 14px; - border-left: 5px solid #169de0; - opacity: 0.8; - } - kbd { - box-sizing: border-box; - font-family: var(--font-family-mono); - border-radius: 0.25em; - background-color: rgb(235, 235, 235); - padding: 0.2em 0.3em; - border-style: solid; - border-color: rgb(200, 200, 200); - border-image: initial; - border-width: 1px 1px 2px; - font-size: 0.875em; - color: var(--rs-text-primary); - } -} diff --git a/docs/tsconfig.json b/docs/tsconfig.json new file mode 100644 index 0000000..46eb551 --- /dev/null +++ b/docs/tsconfig.json @@ -0,0 +1,24 @@ +{ + "extends": "../tsconfig.base.json", + "compilerOptions": { + "baseUrl": ".", + "paths": { + "@react-code-view/core": ["../packages/core/src"], + "@react-code-view/react": ["../packages/react/src"], + "@react-code-view/unplugin": ["../packages/unplugin/src"], + "@react-code-view/react/styles/index.css": ["../packages/react/styles/index.css"] + }, + "types": ["vite/client"], + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "noEmit": true + }, + "include": [ + "**/*.ts", + "**/*.tsx", + "**/*.d.ts" + ], + "exclude": [ + "node_modules", + "dist" + ] +} diff --git a/docs/webpack.config.js b/docs/webpack.config.js deleted file mode 100644 index 6dae80f..0000000 --- a/docs/webpack.config.js +++ /dev/null @@ -1,73 +0,0 @@ -const path = require('path'); - -const MiniCssExtractPlugin = require('mini-css-extract-plugin'); -const HtmlwebpackPlugin = require('html-webpack-plugin'); - -const { NODE_ENV } = process.env; - -const docsPath = NODE_ENV === 'development' ? './assets' : './'; - -module.exports = { - entry: './docs/index.tsx', - devtool: 'source-map', - resolve: { - // Add '.ts' and '.tsx' as resolvable extensions. - extensions: ['.ts', '.tsx', '.js', '.json'] - }, - devServer: { - hot: true, - contentBase: path.resolve(__dirname, ''), - publicPath: '/' - }, - output: { - path: path.resolve(__dirname, 'assets'), - filename: 'bundle.js', - publicPath: './' - }, - - module: { - rules: [ - { - test: /\.tsx?$/, - use: ['babel-loader'], - exclude: /node_modules/ - }, - { - test: /\.(less|css)$/, - use: [ - MiniCssExtractPlugin.loader, - { - loader: 'css-loader' - }, - { - loader: 'less-loader', - options: { - sourceMap: true, - lessOptions: { - javascriptEnabled: true - } - } - } - ] - }, - { - test: /\.md$/, - loader: path.resolve('./webpack-md-loader') - } - ] - }, - plugins: [ - new HtmlwebpackPlugin({ - title: 'React Code View', - filename: 'index.html', - template: './docs/index.html', - inject: true, - hash: true, - path: docsPath - }), - new MiniCssExtractPlugin({ - filename: '[name].css', - chunkFilename: '[id].css' - }) - ] -}; diff --git a/examples/esbuild/README.md b/examples/esbuild/README.md new file mode 100644 index 0000000..057e10e --- /dev/null +++ b/examples/esbuild/README.md @@ -0,0 +1,75 @@ +# React Code View - esbuild Example + +This example demonstrates how to use React Code View with esbuild. + +## Features + +- ⚡ **Blazing Fast** - esbuild compiles at lightning speed +- 🎨 Theme switching (light/dark) +- 📝 Live code editing +- 🔄 Multiple interactive examples +- 💨 TypeScript support +- 🔥 Live reload in development + +## Getting Started + +### Installation + +```bash +npm install +``` + +### Development + +```bash +npm run dev +``` + +Open [http://localhost:3003](http://localhost:3003) in your browser. + +### Build + +```bash +npm run build +``` + +The production build will be in the `dist` folder. + +### Serve Production Build + +```bash +npm run serve +``` + +## Configuration + +The example uses a custom esbuild configuration in `build.js`: + +- **Development Mode**: Watch mode with live reload +- **Production Mode**: Optimized bundle with minification +- **TypeScript**: Native TSX/TS support +- **CSS**: Built-in CSS bundling + +See [build.js](./build.js) for the full configuration. + +## Why esbuild? + +- 🚀 **10-100x faster** than traditional bundlers +- 📦 **Zero configuration** for most use cases +- 🎯 **Native TypeScript** support +- 💪 **Production ready** with tree shaking and minification + +## Examples Included + +1. **Toast Notifications** - Dynamic toast messages +2. **Progress Bar** - Animated progress indicator +3. **Interactive Sliders** - Range inputs with RGB color mixer + +## Performance + +esbuild builds this example in **~50ms** compared to seconds with traditional bundlers. + +## Learn More + +- [React Code View Documentation](https://github.com/simonguo/react-code-view) +- [esbuild Documentation](https://esbuild.github.io) diff --git a/examples/esbuild/build.js b/examples/esbuild/build.js new file mode 100644 index 0000000..9ff2af1 --- /dev/null +++ b/examples/esbuild/build.js @@ -0,0 +1,73 @@ +import * as esbuild from 'esbuild'; +import { createServer, request as httpRequest } from 'http'; + +const isDev = process.argv.includes('--dev'); + +const ctx = await esbuild.context({ + entryPoints: ['src/index.tsx'], + bundle: true, + outfile: 'public/bundle.js', + loader: { + '.tsx': 'tsx', + '.ts': 'ts', + '.css': 'css', + }, + sourcemap: isDev, + minify: !isDev, + define: { + 'process.env.NODE_ENV': isDev ? '"development"' : '"production"', + }, + logLevel: 'info', +}); + +if (isDev) { + // Watch mode + await ctx.watch(); + + // Serve with live reload + const { host, port } = await ctx.serve({ + servedir: 'public', + port: 3003, + fallback: 'public/index.html', + }); + + // Proxy server to inject live reload script + createServer((req, res) => { + const options = { + hostname: host, + port: port, + path: req.url, + method: req.method, + headers: req.headers, + }; + + const proxyReq = httpRequest(options, (proxyRes) => { + if (req.url === '/') { + // Inject live reload script + const originalHtml = []; + proxyRes.on('data', (chunk) => originalHtml.push(chunk)); + proxyRes.on('end', () => { + let html = Buffer.concat(originalHtml).toString(); + html = html.replace( + '', + '' + ); + res.writeHead(proxyRes.statusCode, proxyRes.headers); + res.end(html); + }); + } else { + res.writeHead(proxyRes.statusCode, proxyRes.headers); + proxyRes.pipe(res, { end: true }); + } + }); + + req.pipe(proxyReq, { end: true }); + }).listen(3003); + + console.log(`esbuild dev server running at http://localhost:3003`); +} else { + // Build once for production + await ctx.rebuild(); + await ctx.dispose(); + console.log('Build complete!'); +} diff --git a/examples/esbuild/package.json b/examples/esbuild/package.json new file mode 100644 index 0000000..023002d --- /dev/null +++ b/examples/esbuild/package.json @@ -0,0 +1,23 @@ +{ + "name": "react-code-view-esbuild-example", + "version": "1.0.0", + "private": true, + "type": "module", + "scripts": { + "dev": "node build.js --dev", + "build": "node build.js", + "serve": "serve dist -l 3003" + }, + "dependencies": { + "react": "^18.2.0", + "react-dom": "^18.2.0", + "@react-code-view/react": "workspace:*" + }, + "devDependencies": { + "@types/react": "^18.2.0", + "@types/react-dom": "^18.2.0", + "esbuild": "^0.19.0", + "serve": "^14.2.0", + "typescript": "^5.3.0" + } +} diff --git a/examples/esbuild/public/bundle.css b/examples/esbuild/public/bundle.css new file mode 100644 index 0000000..aa7303d --- /dev/null +++ b/examples/esbuild/public/bundle.css @@ -0,0 +1 @@ +:root{--rcv-font-family-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--rcv-font-size-code: 14px;--rcv-line-height-code: 1.5;--rcv-color-bg: #ffffff;--rcv-color-bg-code: #f6f8fa;--rcv-color-bg-toolbar: #f1f3f5;--rcv-color-text: #24292f;--rcv-color-text-muted: #57606a;--rcv-color-border: #d0d7de;--rcv-color-border-hover: #8c959f;--rcv-color-primary: #0969da;--rcv-color-primary-hover: #0550ae;--rcv-color-error: #cf222e;--rcv-color-error-bg: #ffebe9;--rcv-color-success: #1a7f37;--rcv-spacing-xs: 4px;--rcv-spacing-sm: 8px;--rcv-spacing-md: 16px;--rcv-spacing-lg: 24px;--rcv-radius-sm: 4px;--rcv-radius-md: 6px;--rcv-radius-lg: 8px;--rcv-transition-fast: .15s ease;--rcv-transition-normal: .2s ease}.rcv-code-editor{width:100%;border:1px solid var(--rcv-color-border);border-radius:var(--rcv-radius-md);overflow:hidden;background:var(--rcv-color-bg-code)}.rcv-code-editor .cm-editor{height:100%;font-family:var(--rcv-font-family-mono);font-size:var(--rcv-font-size-code);line-height:var(--rcv-line-height-code);outline:none}.rcv-code-editor .cm-scroller{overflow:auto;font-family:inherit}.rcv-code-editor .cm-content{padding:var(--rcv-spacing-md);min-height:200px;caret-color:var(--rcv-color-text)}.rcv-code-editor .cm-line{padding:0 2px}.rcv-code-editor .cm-gutters{background-color:var(--rcv-color-bg-toolbar);border-right:1px solid var(--rcv-color-border);color:var(--rcv-color-text-muted);user-select:none}.rcv-code-editor .cm-gutterElement{padding:0 var(--rcv-spacing-sm)}.rcv-code-editor .cm-activeLineGutter{background-color:#0000000d}.rcv-code-editor .cm-activeLine{background-color:#00000008}.rcv-code-editor .cm-selectionBackground{background-color:#0969da2e!important}.rcv-code-editor .cm-focused .cm-selectionBackground{background-color:#0969da40!important}.rcv-code-editor .cm-cursor{border-left-color:var(--rcv-color-text)}.rcv-code-editor .cm-foldPlaceholder{background-color:var(--rcv-color-bg-toolbar);border:1px solid var(--rcv-color-border);color:var(--rcv-color-text-muted);padding:0 var(--rcv-spacing-xs);border-radius:var(--rcv-radius-sm)}.rcv-theme-dark,.rcv-theme-dark .rcv-renderer,.rcv-theme-dark .rcv-markdown{--rcv-color-bg: #0d1117;--rcv-color-bg-code: #161b22;--rcv-color-bg-toolbar: #21262d;--rcv-color-text: #c9d1d9;--rcv-color-text-muted: #8b949e;--rcv-color-border: #30363d;--rcv-color-border-hover: #484f58;--rcv-color-primary: #58a6ff;--rcv-color-primary-hover: #79c0ff;--rcv-color-error: #f85149;--rcv-color-error-bg: #3d1117;--rcv-color-success: #3fb950}.rcv-code-view{display:flex;flex-direction:column;border:1px solid var(--rcv-color-border);border-radius:var(--rcv-radius-lg);background-color:var(--rcv-color-bg);overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.rcv-code-view__preview{padding:var(--rcv-spacing-lg);border-bottom:1px solid var(--rcv-color-border)}.rcv-preview{min-height:40px}.rcv-preview--error{background-color:var(--rcv-color-error-bg);border-radius:var(--rcv-radius-sm);padding:var(--rcv-spacing-sm)}.rcv-preview__error{color:var(--rcv-color-error);font-family:var(--rcv-font-family-mono);font-size:var(--rcv-font-size-code);margin:0;white-space:pre-wrap;word-break:break-word}.rcv-preview--empty{display:flex;align-items:center;justify-content:center;color:var(--rcv-color-text-muted);font-style:italic}.rcv-code-view__toolbar{display:flex;align-items:center;gap:var(--rcv-spacing-sm);padding:var(--rcv-spacing-sm) var(--rcv-spacing-md);background-color:var(--rcv-color-bg-toolbar);border-bottom:1px solid var(--rcv-color-border)}.rcv-code-view__toggle-btn{display:inline-flex;align-items:center;gap:var(--rcv-spacing-xs);padding:var(--rcv-spacing-xs) var(--rcv-spacing-sm);border:1px solid var(--rcv-color-border);border-radius:var(--rcv-radius-sm);background-color:var(--rcv-color-bg);color:var(--rcv-color-text);font-size:13px;cursor:pointer;transition:all var(--rcv-transition-fast)}.rcv-code-view__toggle-btn:hover{border-color:var(--rcv-color-border-hover);background-color:var(--rcv-color-bg-code)}.rcv-code-view__toggle-btn:focus-visible{outline:2px solid var(--rcv-color-primary);outline-offset:2px}.rcv-code-view__toggle-btn svg{width:16px;height:16px}.rcv-copy-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--rcv-color-border);border-radius:var(--rcv-radius-sm);background-color:var(--rcv-color-bg);color:var(--rcv-color-text-muted);cursor:pointer;transition:all var(--rcv-transition-fast);margin-left:auto}.rcv-copy-button:hover{border-color:var(--rcv-color-border-hover);color:var(--rcv-color-text)}.rcv-copy-button:focus-visible{outline:2px solid var(--rcv-color-primary);outline-offset:2px}.rcv-copy-button--copied{color:var(--rcv-color-success);border-color:var(--rcv-color-success)}.rcv-copy-button svg{width:16px;height:16px}.rcv-code-view__code{overflow:auto;background-color:var(--rcv-color-bg-code)}.rcv-code-editor{min-height:100px}.rcv-code-editor__textarea{display:block;width:100%;min-height:100px;padding:var(--rcv-spacing-md);border:none;background-color:transparent;color:var(--rcv-color-text);font-family:var(--rcv-font-family-mono);font-size:var(--rcv-font-size-code);line-height:var(--rcv-line-height-code);resize:vertical}.rcv-code-editor__textarea:focus{outline:none}.rcv-code-editor .CodeMirror{height:auto;min-height:100px;font-family:var(--rcv-font-family-mono);font-size:var(--rcv-font-size-code);line-height:var(--rcv-line-height-code)}.rcv-renderer{overflow:auto;background-color:var(--rcv-color-bg-code);border-radius:var(--rcv-radius-md);border:1px solid var(--rcv-color-border)}.rcv-renderer__pre{display:flex;margin:0;padding:var(--rcv-spacing-md);overflow:auto;background:transparent}.rcv-renderer__line-numbers{display:flex;flex-direction:column;padding-right:var(--rcv-spacing-md);margin-right:var(--rcv-spacing-md);border-right:1px solid var(--rcv-color-border);color:var(--rcv-color-text-muted);font-family:var(--rcv-font-family-mono);font-size:var(--rcv-font-size-code);line-height:var(--rcv-line-height-code);text-align:right;user-select:none}.rcv-renderer__line-number{display:block}.rcv-renderer__code{flex:1;font-family:var(--rcv-font-family-mono);font-size:var(--rcv-font-size-code);line-height:var(--rcv-line-height-code);color:var(--rcv-color-text)}.rcv-markdown{padding:var(--rcv-spacing-md);color:var(--rcv-color-text);line-height:1.6}.rcv-markdown h1,.rcv-markdown h2,.rcv-markdown h3,.rcv-markdown h4,.rcv-markdown h5,.rcv-markdown h6{margin-top:var(--rcv-spacing-lg);margin-bottom:var(--rcv-spacing-sm);font-weight:600}.rcv-markdown h1{font-size:2em}.rcv-markdown h2{font-size:1.5em}.rcv-markdown h3{font-size:1.25em}.rcv-markdown p{margin-top:0;margin-bottom:var(--rcv-spacing-md)}.rcv-markdown :not(pre)>code{padding:.2em .4em;background-color:var(--rcv-color-bg-code);border-radius:var(--rcv-radius-sm);font-family:var(--rcv-font-family-mono);font-size:.9em}.rcv-markdown .rcv-code-block{margin:var(--rcv-spacing-md) 0;border-radius:var(--rcv-radius-md);overflow:hidden}.rcv-markdown .rcv-code-block pre{margin:0;padding:0;background:transparent}.rcv-markdown .rcv-code-block code{background:transparent}.rcv-markdown pre:not(.shiki){padding:var(--rcv-spacing-md);background-color:var(--rcv-color-bg-code);border-radius:var(--rcv-radius-md);overflow:auto;margin:var(--rcv-spacing-md) 0}.rcv-markdown pre:not(.shiki) code{padding:0;background:none}.rcv-markdown blockquote{margin:0 0 var(--rcv-spacing-md);padding-left:var(--rcv-spacing-md);border-left:4px solid var(--rcv-color-border);color:var(--rcv-color-text-muted)}.rcv-markdown ul,.rcv-markdown ol{margin-top:0;margin-bottom:var(--rcv-spacing-md);padding-left:var(--rcv-spacing-lg)}.rcv-markdown li{margin-bottom:var(--rcv-spacing-xs)}.rcv-markdown a{color:var(--rcv-color-primary);text-decoration:none}.rcv-markdown a:hover{text-decoration:underline}.rcv-markdown img{max-width:100%;height:auto}.rcv-markdown table{width:100%;border-collapse:collapse;margin-bottom:var(--rcv-spacing-md)}.rcv-markdown th,.rcv-markdown td{padding:var(--rcv-spacing-sm);border:1px solid var(--rcv-color-border);text-align:left}.rcv-markdown th{background-color:var(--rcv-color-bg-code);font-weight:600}.rcv-error{padding:var(--rcv-spacing-md);background-color:var(--rcv-color-error-bg);border-radius:var(--rcv-radius-md)}.rcv-error__message{color:var(--rcv-color-error);font-family:var(--rcv-font-family-mono);font-size:var(--rcv-font-size-code);margin:0;white-space:pre-wrap;word-break:break-word} diff --git a/examples/esbuild/public/bundle.css.map b/examples/esbuild/public/bundle.css.map new file mode 100644 index 0000000..0c0ffa1 --- /dev/null +++ b/examples/esbuild/public/bundle.css.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../../packages/react/styles/index.css"], + "sourcesContent": ["/* \n * @react-code-view/react\n * Base styles for code view components\n * Shiki handles syntax highlighting styles automatically\n */\n\n/* ============================================\n CSS Custom Properties (Theme Variables)\n ============================================ */\n\n:root {\n --rcv-font-family-mono: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace;\n --rcv-font-size-code: 14px;\n --rcv-line-height-code: 1.5;\n \n /* Colors - Light theme */\n --rcv-color-bg: #ffffff;\n --rcv-color-bg-code: #f6f8fa;\n --rcv-color-bg-toolbar: #f1f3f5;\n --rcv-color-text: #24292f;\n --rcv-color-text-muted: #57606a;\n --rcv-color-border: #d0d7de;\n --rcv-color-border-hover: #8c959f;\n --rcv-color-primary: #0969da;\n --rcv-color-primary-hover: #0550ae;\n --rcv-color-error: #cf222e;\n --rcv-color-error-bg: #ffebe9;\n --rcv-color-success: #1a7f37;\n \n /* Spacing */\n --rcv-spacing-xs: 4px;\n --rcv-spacing-sm: 8px;\n --rcv-spacing-md: 16px;\n --rcv-spacing-lg: 24px;\n \n /* Border radius */\n --rcv-radius-sm: 4px;\n --rcv-radius-md: 6px;\n --rcv-radius-lg: 8px;\n \n /* Transitions */\n --rcv-transition-fast: 150ms ease;\n --rcv-transition-normal: 200ms ease;\n}\n\n/* ============================================\n CodeMirror 6 Editor Styles\n ============================================ */\n\n.rcv-code-editor {\n width: 100%;\n border: 1px solid var(--rcv-color-border);\n border-radius: var(--rcv-radius-md);\n overflow: hidden;\n background: var(--rcv-color-bg-code);\n}\n\n.rcv-code-editor .cm-editor {\n height: 100%;\n font-family: var(--rcv-font-family-mono);\n font-size: var(--rcv-font-size-code);\n line-height: var(--rcv-line-height-code);\n outline: none;\n}\n\n.rcv-code-editor .cm-scroller {\n overflow: auto;\n font-family: inherit;\n}\n\n.rcv-code-editor .cm-content {\n padding: var(--rcv-spacing-md);\n min-height: 200px;\n caret-color: var(--rcv-color-text);\n}\n\n.rcv-code-editor .cm-line {\n padding: 0 2px;\n}\n\n.rcv-code-editor .cm-gutters {\n background-color: var(--rcv-color-bg-toolbar);\n border-right: 1px solid var(--rcv-color-border);\n color: var(--rcv-color-text-muted);\n user-select: none;\n}\n\n.rcv-code-editor .cm-gutterElement {\n padding: 0 var(--rcv-spacing-sm);\n}\n\n.rcv-code-editor .cm-activeLineGutter {\n background-color: rgba(0, 0, 0, 0.05);\n}\n\n.rcv-code-editor .cm-activeLine {\n background-color: rgba(0, 0, 0, 0.03);\n}\n\n.rcv-code-editor .cm-selectionBackground {\n background-color: rgba(9, 105, 218, 0.18) !important;\n}\n\n.rcv-code-editor .cm-focused .cm-selectionBackground {\n background-color: rgba(9, 105, 218, 0.25) !important;\n}\n\n.rcv-code-editor .cm-cursor {\n border-left-color: var(--rcv-color-text);\n}\n\n.rcv-code-editor .cm-foldPlaceholder {\n background-color: var(--rcv-color-bg-toolbar);\n border: 1px solid var(--rcv-color-border);\n color: var(--rcv-color-text-muted);\n padding: 0 var(--rcv-spacing-xs);\n border-radius: var(--rcv-radius-sm);\n}\n\n/* Dark theme */\n.rcv-theme-dark,\n.rcv-theme-dark .rcv-renderer,\n.rcv-theme-dark .rcv-markdown {\n --rcv-color-bg: #0d1117;\n --rcv-color-bg-code: #161b22;\n --rcv-color-bg-toolbar: #21262d;\n --rcv-color-text: #c9d1d9;\n --rcv-color-text-muted: #8b949e;\n --rcv-color-border: #30363d;\n --rcv-color-border-hover: #484f58;\n --rcv-color-primary: #58a6ff;\n --rcv-color-primary-hover: #79c0ff;\n --rcv-color-error: #f85149;\n --rcv-color-error-bg: #3d1117;\n --rcv-color-success: #3fb950;\n}\n\n/* ============================================\n CodeView Container\n ============================================ */\n\n.rcv-code-view {\n display: flex;\n flex-direction: column;\n border: 1px solid var(--rcv-color-border);\n border-radius: var(--rcv-radius-lg);\n background-color: var(--rcv-color-bg);\n overflow: hidden;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;\n}\n\n/* ============================================\n Preview Section\n ============================================ */\n\n.rcv-code-view__preview {\n padding: var(--rcv-spacing-lg);\n border-bottom: 1px solid var(--rcv-color-border);\n}\n\n.rcv-preview {\n min-height: 40px;\n}\n\n.rcv-preview--error {\n background-color: var(--rcv-color-error-bg);\n border-radius: var(--rcv-radius-sm);\n padding: var(--rcv-spacing-sm);\n}\n\n.rcv-preview__error {\n color: var(--rcv-color-error);\n font-family: var(--rcv-font-family-mono);\n font-size: var(--rcv-font-size-code);\n margin: 0;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n.rcv-preview--empty {\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--rcv-color-text-muted);\n font-style: italic;\n}\n\n/* ============================================\n Toolbar\n ============================================ */\n\n.rcv-code-view__toolbar {\n display: flex;\n align-items: center;\n gap: var(--rcv-spacing-sm);\n padding: var(--rcv-spacing-sm) var(--rcv-spacing-md);\n background-color: var(--rcv-color-bg-toolbar);\n border-bottom: 1px solid var(--rcv-color-border);\n}\n\n.rcv-code-view__toggle-btn {\n display: inline-flex;\n align-items: center;\n gap: var(--rcv-spacing-xs);\n padding: var(--rcv-spacing-xs) var(--rcv-spacing-sm);\n border: 1px solid var(--rcv-color-border);\n border-radius: var(--rcv-radius-sm);\n background-color: var(--rcv-color-bg);\n color: var(--rcv-color-text);\n font-size: 13px;\n cursor: pointer;\n transition: all var(--rcv-transition-fast);\n}\n\n.rcv-code-view__toggle-btn:hover {\n border-color: var(--rcv-color-border-hover);\n background-color: var(--rcv-color-bg-code);\n}\n\n.rcv-code-view__toggle-btn:focus-visible {\n outline: 2px solid var(--rcv-color-primary);\n outline-offset: 2px;\n}\n\n.rcv-code-view__toggle-btn svg {\n width: 16px;\n height: 16px;\n}\n\n/* ============================================\n Copy Button\n ============================================ */\n\n.rcv-copy-button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n padding: 0;\n border: 1px solid var(--rcv-color-border);\n border-radius: var(--rcv-radius-sm);\n background-color: var(--rcv-color-bg);\n color: var(--rcv-color-text-muted);\n cursor: pointer;\n transition: all var(--rcv-transition-fast);\n margin-left: auto;\n}\n\n.rcv-copy-button:hover {\n border-color: var(--rcv-color-border-hover);\n color: var(--rcv-color-text);\n}\n\n.rcv-copy-button:focus-visible {\n outline: 2px solid var(--rcv-color-primary);\n outline-offset: 2px;\n}\n\n.rcv-copy-button--copied {\n color: var(--rcv-color-success);\n border-color: var(--rcv-color-success);\n}\n\n.rcv-copy-button svg {\n width: 16px;\n height: 16px;\n}\n\n/* ============================================\n Code Section\n ============================================ */\n\n.rcv-code-view__code {\n overflow: auto;\n background-color: var(--rcv-color-bg-code);\n}\n\n/* ============================================\n Code Editor\n ============================================ */\n\n.rcv-code-editor {\n min-height: 100px;\n}\n\n.rcv-code-editor__textarea {\n display: block;\n width: 100%;\n min-height: 100px;\n padding: var(--rcv-spacing-md);\n border: none;\n background-color: transparent;\n color: var(--rcv-color-text);\n font-family: var(--rcv-font-family-mono);\n font-size: var(--rcv-font-size-code);\n line-height: var(--rcv-line-height-code);\n resize: vertical;\n}\n\n.rcv-code-editor__textarea:focus {\n outline: none;\n}\n\n/* CodeMirror overrides */\n.rcv-code-editor .CodeMirror {\n height: auto;\n min-height: 100px;\n font-family: var(--rcv-font-family-mono);\n font-size: var(--rcv-font-size-code);\n line-height: var(--rcv-line-height-code);\n}\n\n/* ============================================\n Renderer (Syntax Highlighted Code)\n ============================================ */\n\n.rcv-renderer {\n overflow: auto;\n background-color: var(--rcv-color-bg-code);\n border-radius: var(--rcv-radius-md);\n border: 1px solid var(--rcv-color-border);\n}\n\n.rcv-renderer__pre {\n display: flex;\n margin: 0;\n padding: var(--rcv-spacing-md);\n overflow: auto;\n background: transparent;\n}\n\n.rcv-renderer__line-numbers {\n display: flex;\n flex-direction: column;\n padding-right: var(--rcv-spacing-md);\n margin-right: var(--rcv-spacing-md);\n border-right: 1px solid var(--rcv-color-border);\n color: var(--rcv-color-text-muted);\n font-family: var(--rcv-font-family-mono);\n font-size: var(--rcv-font-size-code);\n line-height: var(--rcv-line-height-code);\n text-align: right;\n user-select: none;\n}\n\n.rcv-renderer__line-number {\n display: block;\n}\n\n.rcv-renderer__code {\n flex: 1;\n font-family: var(--rcv-font-family-mono);\n font-size: var(--rcv-font-size-code);\n line-height: var(--rcv-line-height-code);\n color: var(--rcv-color-text);\n}\n\n/* ============================================\n Markdown Renderer\n ============================================ */\n\n.rcv-markdown {\n padding: var(--rcv-spacing-md);\n color: var(--rcv-color-text);\n line-height: 1.6;\n}\n\n.rcv-markdown h1,\n.rcv-markdown h2,\n.rcv-markdown h3,\n.rcv-markdown h4,\n.rcv-markdown h5,\n.rcv-markdown h6 {\n margin-top: var(--rcv-spacing-lg);\n margin-bottom: var(--rcv-spacing-sm);\n font-weight: 600;\n}\n\n.rcv-markdown h1 { font-size: 2em; }\n.rcv-markdown h2 { font-size: 1.5em; }\n.rcv-markdown h3 { font-size: 1.25em; }\n\n.rcv-markdown p {\n margin-top: 0;\n margin-bottom: var(--rcv-spacing-md);\n}\n\n/* Inline code only (not inside pre blocks) */\n.rcv-markdown :not(pre) > code {\n padding: 0.2em 0.4em;\n background-color: var(--rcv-color-bg-code);\n border-radius: var(--rcv-radius-sm);\n font-family: var(--rcv-font-family-mono);\n font-size: 0.9em;\n}\n\n/* Code blocks wrapper from Shiki */\n.rcv-markdown .rcv-code-block {\n margin: var(--rcv-spacing-md) 0;\n border-radius: var(--rcv-radius-md);\n overflow: hidden;\n}\n\n/* Let Shiki's pre handle its own styling */\n.rcv-markdown .rcv-code-block pre {\n margin: 0;\n padding: 0;\n background: transparent;\n}\n\n.rcv-markdown .rcv-code-block code {\n background: transparent;\n}\n\n/* Regular pre blocks (fallback) */\n.rcv-markdown pre:not(.shiki) {\n padding: var(--rcv-spacing-md);\n background-color: var(--rcv-color-bg-code);\n border-radius: var(--rcv-radius-md);\n overflow: auto;\n margin: var(--rcv-spacing-md) 0;\n}\n\n.rcv-markdown pre:not(.shiki) code {\n padding: 0;\n background: none;\n}\n\n.rcv-markdown blockquote {\n margin: 0 0 var(--rcv-spacing-md);\n padding-left: var(--rcv-spacing-md);\n border-left: 4px solid var(--rcv-color-border);\n color: var(--rcv-color-text-muted);\n}\n\n.rcv-markdown ul,\n.rcv-markdown ol {\n margin-top: 0;\n margin-bottom: var(--rcv-spacing-md);\n padding-left: var(--rcv-spacing-lg);\n}\n\n.rcv-markdown li {\n margin-bottom: var(--rcv-spacing-xs);\n}\n\n.rcv-markdown a {\n color: var(--rcv-color-primary);\n text-decoration: none;\n}\n\n.rcv-markdown a:hover {\n text-decoration: underline;\n}\n\n.rcv-markdown img {\n max-width: 100%;\n height: auto;\n}\n\n.rcv-markdown table {\n width: 100%;\n border-collapse: collapse;\n margin-bottom: var(--rcv-spacing-md);\n}\n\n.rcv-markdown th,\n.rcv-markdown td {\n padding: var(--rcv-spacing-sm);\n border: 1px solid var(--rcv-color-border);\n text-align: left;\n}\n\n.rcv-markdown th {\n background-color: var(--rcv-color-bg-code);\n font-weight: 600;\n}\n\n/* ============================================\n Error Boundary\n ============================================ */\n\n.rcv-error {\n padding: var(--rcv-spacing-md);\n background-color: var(--rcv-color-error-bg);\n border-radius: var(--rcv-radius-md);\n}\n\n.rcv-error__message {\n color: var(--rcv-color-error);\n font-family: var(--rcv-font-family-mono);\n font-size: var(--rcv-font-size-code);\n margin: 0;\n white-space: pre-wrap;\n word-break: break-word;\n}\n"], + "mappings": ";AAUA;AACE;AAAA,IAAwB,YAAY;AAAA,IAAE,cAAc;AAAA,IAAE,SAAS;AAAA,IAAE,KAAK;AAAA,IAAE,QAAQ;AAAA,IAAE,iBAAiB;AAAA,IAAE;AACrG,wBAAsB;AACtB,0BAAwB;AAGxB,kBAAgB;AAChB,uBAAqB;AACrB,0BAAwB;AACxB,oBAAkB;AAClB,0BAAwB;AACxB,sBAAoB;AACpB,4BAA0B;AAC1B,uBAAqB;AACrB,6BAA2B;AAC3B,qBAAmB;AACnB,wBAAsB;AACtB,uBAAqB;AAGrB,oBAAkB;AAClB,oBAAkB;AAClB,oBAAkB;AAClB,oBAAkB;AAGlB,mBAAiB;AACjB,mBAAiB;AACjB,mBAAiB;AAGjB,yBAAuB,MAAM;AAC7B,2BAAyB,MAAM;AACjC;AAMA,CAAC;AACC,SAAO;AACP,UAAQ,IAAI,MAAM,IAAI;AACtB,iBAAe,IAAI;AACnB,YAAU;AACV,cAAY,IAAI;AAClB;AAEA,CARC,gBAQgB,CAAC;AAChB,UAAQ;AACR,eAAa,IAAI;AACjB,aAAW,IAAI;AACf,eAAa,IAAI;AACjB,WAAS;AACX;AAEA,CAhBC,gBAgBgB,CAAC;AAChB,YAAU;AACV,eAAa;AACf;AAEA,CArBC,gBAqBgB,CAAC;AAChB,WAAS,IAAI;AACb,cAAY;AACZ,eAAa,IAAI;AACnB;AAEA,CA3BC,gBA2BgB,CAAC;AAChB,WAAS,EAAE;AACb;AAEA,CA/BC,gBA+BgB,CAAC;AAChB,oBAAkB,IAAI;AACtB,gBAAc,IAAI,MAAM,IAAI;AAC5B,SAAO,IAAI;AACX,eAAa;AACf;AAEA,CAtCC,gBAsCgB,CAAC;AAChB,WAAS,EAAE,IAAI;AACjB;AAEA,CA1CC,gBA0CgB,CAAC;AAChB,oBAAkB,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;AAClC;AAEA,CA9CC,gBA8CgB,CAAC;AAChB,oBAAkB,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;AAClC;AAEA,CAlDC,gBAkDgB,CAAC;AAChB,oBAAkB,KAAK,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE;AACtC;AAEA,CAtDC,gBAsDgB,CAAC,WAAW,CAJX;AAKhB,oBAAkB,KAAK,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE;AACtC;AAEA,CA1DC,gBA0DgB,CAAC;AAChB,qBAAmB,IAAI;AACzB;AAEA,CA9DC,gBA8DgB,CAAC;AAChB,oBAAkB,IAAI;AACtB,UAAQ,IAAI,MAAM,IAAI;AACtB,SAAO,IAAI;AACX,WAAS,EAAE,IAAI;AACf,iBAAe,IAAI;AACrB;AAGA,CAAC;AACD,CADC,eACe,CAAC;AACjB,CAFC,eAEe,CAAC;AACf,kBAAgB;AAChB,uBAAqB;AACrB,0BAAwB;AACxB,oBAAkB;AAClB,0BAAwB;AACxB,sBAAoB;AACpB,4BAA0B;AAC1B,uBAAqB;AACrB,6BAA2B;AAC3B,qBAAmB;AACnB,wBAAsB;AACtB,uBAAqB;AACvB;AAMA,CAAC;AACC,WAAS;AACT,kBAAgB;AAChB,UAAQ,IAAI,MAAM,IAAI;AACtB,iBAAe,IAAI;AACnB,oBAAkB,IAAI;AACtB,YAAU;AACV;AAAA,IAAa,aAAa;AAAA,IAAE,kBAAkB;AAAA,IAAE,UAAU;AAAA,IAAE,MAAM;AAAA,IAAE,MAAM;AAAA,IAAE,MAAM;AAAA,IAAE;AACtF;AAMA,CAAC;AACC,WAAS,IAAI;AACb,iBAAe,IAAI,MAAM,IAAI;AAC/B;AAEA,CAAC;AACC,cAAY;AACd;AAEA,CAAC;AACC,oBAAkB,IAAI;AACtB,iBAAe,IAAI;AACnB,WAAS,IAAI;AACf;AAEA,CAAC;AACC,SAAO,IAAI;AACX,eAAa,IAAI;AACjB,aAAW,IAAI;AACf,UAAQ;AACR,eAAa;AACb,cAAY;AACd;AAEA,CAAC;AACC,WAAS;AACT,eAAa;AACb,mBAAiB;AACjB,SAAO,IAAI;AACX,cAAY;AACd;AAMA,CAAC;AACC,WAAS;AACT,eAAa;AACb,OAAK,IAAI;AACT,WAAS,IAAI,kBAAkB,IAAI;AACnC,oBAAkB,IAAI;AACtB,iBAAe,IAAI,MAAM,IAAI;AAC/B;AAEA,CAAC;AACC,WAAS;AACT,eAAa;AACb,OAAK,IAAI;AACT,WAAS,IAAI,kBAAkB,IAAI;AACnC,UAAQ,IAAI,MAAM,IAAI;AACtB,iBAAe,IAAI;AACnB,oBAAkB,IAAI;AACtB,SAAO,IAAI;AACX,aAAW;AACX,UAAQ;AACR,cAAY,IAAI,IAAI;AACtB;AAEA,CAdC,yBAcyB;AACxB,gBAAc,IAAI;AAClB,oBAAkB,IAAI;AACxB;AAEA,CAnBC,yBAmByB;AACxB,WAAS,IAAI,MAAM,IAAI;AACvB,kBAAgB;AAClB;AAEA,CAxBC,0BAwB0B;AACzB,SAAO;AACP,UAAQ;AACV;AAMA,CAAC;AACC,WAAS;AACT,eAAa;AACb,mBAAiB;AACjB,SAAO;AACP,UAAQ;AACR,WAAS;AACT,UAAQ,IAAI,MAAM,IAAI;AACtB,iBAAe,IAAI;AACnB,oBAAkB,IAAI;AACtB,SAAO,IAAI;AACX,UAAQ;AACR,cAAY,IAAI,IAAI;AACpB,eAAa;AACf;AAEA,CAhBC,eAgBe;AACd,gBAAc,IAAI;AAClB,SAAO,IAAI;AACb;AAEA,CArBC,eAqBe;AACd,WAAS,IAAI,MAAM,IAAI;AACvB,kBAAgB;AAClB;AAEA,CAAC;AACC,SAAO,IAAI;AACX,gBAAc,IAAI;AACpB;AAEA,CA/BC,gBA+BgB;AACf,SAAO;AACP,UAAQ;AACV;AAMA,CAAC;AACC,YAAU;AACV,oBAAkB,IAAI;AACxB;AAMA,CAzOC;AA0OC,cAAY;AACd;AAEA,CAAC;AACC,WAAS;AACT,SAAO;AACP,cAAY;AACZ,WAAS,IAAI;AACb,UAAQ;AACR,oBAAkB;AAClB,SAAO,IAAI;AACX,eAAa,IAAI;AACjB,aAAW,IAAI;AACf,eAAa,IAAI;AACjB,UAAQ;AACV;AAEA,CAdC,yBAcyB;AACxB,WAAS;AACX;AAGA,CAhQC,gBAgQgB,CAAC;AAChB,UAAQ;AACR,cAAY;AACZ,eAAa,IAAI;AACjB,aAAW,IAAI;AACf,eAAa,IAAI;AACnB;AAMA,CApMiB;AAqMf,YAAU;AACV,oBAAkB,IAAI;AACtB,iBAAe,IAAI;AACnB,UAAQ,IAAI,MAAM,IAAI;AACxB;AAEA,CAAC;AACC,WAAS;AACT,UAAQ;AACR,WAAS,IAAI;AACb,YAAU;AACV,cAAY;AACd;AAEA,CAAC;AACC,WAAS;AACT,kBAAgB;AAChB,iBAAe,IAAI;AACnB,gBAAc,IAAI;AAClB,gBAAc,IAAI,MAAM,IAAI;AAC5B,SAAO,IAAI;AACX,eAAa,IAAI;AACjB,aAAW,IAAI;AACf,eAAa,IAAI;AACjB,cAAY;AACZ,eAAa;AACf;AAEA,CAAC;AACC,WAAS;AACX;AAEA,CAAC;AACC,QAAM;AACN,eAAa,IAAI;AACjB,aAAW,IAAI;AACf,eAAa,IAAI;AACjB,SAAO,IAAI;AACb;AAMA,CAhPiB;AAiPf,WAAS,IAAI;AACb,SAAO,IAAI;AACX,eAAa;AACf;AAEA,CAtPiB,aAsPH;AACd,CAvPiB,aAuPH;AACd,CAxPiB,aAwPH;AACd,CAzPiB,aAyPH;AACd,CA1PiB,aA0PH;AACd,CA3PiB,aA2PH;AACZ,cAAY,IAAI;AAChB,iBAAe,IAAI;AACnB,eAAa;AACf;AAEA,CAjQiB,aAiQH;AAAK,aAAW;AAAK;AACnC,CAlQiB,aAkQH;AAAK,aAAW;AAAO;AACrC,CAnQiB,aAmQH;AAAK,aAAW;AAAQ;AAEtC,CArQiB,aAqQH;AACZ,cAAY;AACZ,iBAAe,IAAI;AACrB;AAGA,CA3QiB,aA2QH,KAAK,KAAK,EAAE;AACxB,WAAS,MAAM;AACf,oBAAkB,IAAI;AACtB,iBAAe,IAAI;AACnB,eAAa,IAAI;AACjB,aAAW;AACb;AAGA,CApRiB,aAoRH,CAAC;AACb,UAAQ,IAAI,kBAAkB;AAC9B,iBAAe,IAAI;AACnB,YAAU;AACZ;AAGA,CA3RiB,aA2RH,CAPC,eAOe;AAC5B,UAAQ;AACR,WAAS;AACT,cAAY;AACd;AAEA,CAjSiB,aAiSH,CAbC,eAae;AAC5B,cAAY;AACd;AAGA,CAtSiB,aAsSH,GAAG,KAAK,CAAC;AACrB,WAAS,IAAI;AACb,oBAAkB,IAAI;AACtB,iBAAe,IAAI;AACnB,YAAU;AACV,UAAQ,IAAI,kBAAkB;AAChC;AAEA,CA9SiB,aA8SH,GAAG,KAAK,CARC,OAQO;AAC5B,WAAS;AACT,cAAY;AACd;AAEA,CAnTiB,aAmTH;AACZ,UAAQ,EAAE,EAAE,IAAI;AAChB,gBAAc,IAAI;AAClB,eAAa,IAAI,MAAM,IAAI;AAC3B,SAAO,IAAI;AACb;AAEA,CA1TiB,aA0TH;AACd,CA3TiB,aA2TH;AACZ,cAAY;AACZ,iBAAe,IAAI;AACnB,gBAAc,IAAI;AACpB;AAEA,CAjUiB,aAiUH;AACZ,iBAAe,IAAI;AACrB;AAEA,CArUiB,aAqUH;AACZ,SAAO,IAAI;AACX,mBAAiB;AACnB;AAEA,CA1UiB,aA0UH,CAAC;AACb,mBAAiB;AACnB;AAEA,CA9UiB,aA8UH;AACZ,aAAW;AACX,UAAQ;AACV;AAEA,CAnViB,aAmVH;AACZ,SAAO;AACP,mBAAiB;AACjB,iBAAe,IAAI;AACrB;AAEA,CAzViB,aAyVH;AACd,CA1ViB,aA0VH;AACZ,WAAS,IAAI;AACb,UAAQ,IAAI,MAAM,IAAI;AACtB,cAAY;AACd;AAEA,CAhWiB,aAgWH;AACZ,oBAAkB,IAAI;AACtB,eAAa;AACf;AAMA,CAAC;AACC,WAAS,IAAI;AACb,oBAAkB,IAAI;AACtB,iBAAe,IAAI;AACrB;AAEA,CAAC;AACC,SAAO,IAAI;AACX,eAAa,IAAI;AACjB,aAAW,IAAI;AACf,UAAQ;AACR,eAAa;AACb,cAAY;AACd;", + "names": [] +} diff --git a/examples/esbuild/public/bundle.js b/examples/esbuild/public/bundle.js new file mode 100644 index 0000000..1f452bb --- /dev/null +++ b/examples/esbuild/public/bundle.js @@ -0,0 +1,480 @@ +"use strict";(()=>{var fz=Object.create;var Vb=Object.defineProperty;var bz=Object.getOwnPropertyDescriptor;var hz=Object.getOwnPropertyNames;var yz=Object.getPrototypeOf,wz=Object.prototype.hasOwnProperty;var _=(t,e)=>()=>(t&&(e=t(t=0)),e);var Cn=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),x=(t,e)=>{for(var n in e)Vb(t,n,{get:e[n],enumerable:!0})},kz=(t,e,n,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of hz(e))!wz.call(t,r)&&r!==n&&Vb(t,r,{get:()=>e[r],enumerable:!(a=bz(e,r))||a.enumerable});return t};var Pn=(t,e,n)=>(n=t!=null?fz(yz(t)):{},kz(e||!t||!t.__esModule?Vb(n,"default",{value:t,enumerable:!0}):n,t));var _v=Cn(ye=>{"use strict";var Gc=Symbol.for("react.element"),Cz=Symbol.for("react.portal"),_z=Symbol.for("react.fragment"),Bz=Symbol.for("react.strict_mode"),xz=Symbol.for("react.profiler"),vz=Symbol.for("react.provider"),Ez=Symbol.for("react.context"),Qz=Symbol.for("react.forward_ref"),Iz=Symbol.for("react.suspense"),Dz=Symbol.for("react.memo"),Fz=Symbol.for("react.lazy"),uv=Symbol.iterator;function Sz(t){return t===null||typeof t!="object"?null:(t=uv&&t[uv]||t["@@iterator"],typeof t=="function"?t:null)}var gv={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},fv=Object.assign,bv={};function ls(t,e,n){this.props=t,this.context=e,this.refs=bv,this.updater=n||gv}ls.prototype.isReactComponent={};ls.prototype.setState=function(t,e){if(typeof t!="object"&&typeof t!="function"&&t!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,t,e,"setState")};ls.prototype.forceUpdate=function(t){this.updater.enqueueForceUpdate(this,t,"forceUpdate")};function hv(){}hv.prototype=ls.prototype;function eh(t,e,n){this.props=t,this.context=e,this.refs=bv,this.updater=n||gv}var th=eh.prototype=new hv;th.constructor=eh;fv(th,ls.prototype);th.isPureReactComponent=!0;var pv=Array.isArray,yv=Object.prototype.hasOwnProperty,nh={current:null},wv={key:!0,ref:!0,__self:!0,__source:!0};function kv(t,e,n){var a,r={},i=null,o=null;if(e!=null)for(a in e.ref!==void 0&&(o=e.ref),e.key!==void 0&&(i=""+e.key),e)yv.call(e,a)&&!wv.hasOwnProperty(a)&&(r[a]=e[a]);var s=arguments.length-2;if(s===1)r.children=n;else if(1{"use strict";Bv.exports=_v()});var Nv=Cn(Ue=>{"use strict";function sh(t,e){var n=t.length;t.push(e);e:for(;0>>1,r=t[a];if(0>>1;asu(s,n))csu(A,s)?(t[a]=A,t[c]=n,a=c):(t[a]=s,t[o]=n,a=o);else if(csu(A,n))t[a]=A,t[c]=n,a=c;else break e}}return e}function su(t,e){var n=t.sortIndex-e.sortIndex;return n!==0?n:t.id-e.id}typeof performance=="object"&&typeof performance.now=="function"?(xv=performance,Ue.unstable_now=function(){return xv.now()}):(rh=Date,vv=rh.now(),Ue.unstable_now=function(){return rh.now()-vv});var xv,rh,vv,ar=[],ii=[],Rz=1,Aa=null,Wt=3,Au=!1,ro=!1,Uc=!1,Iv=typeof setTimeout=="function"?setTimeout:null,Dv=typeof clearTimeout=="function"?clearTimeout:null,Ev=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function ch(t){for(var e=Oa(ii);e!==null;){if(e.callback===null)lu(ii);else if(e.startTime<=t)lu(ii),e.sortIndex=e.expirationTime,sh(ar,e);else break;e=Oa(ii)}}function lh(t){if(Uc=!1,ch(t),!ro)if(Oa(ar)!==null)ro=!0,dh(Ah);else{var e=Oa(ii);e!==null&&uh(lh,e.startTime-t)}}function Ah(t,e){ro=!1,Uc&&(Uc=!1,Dv(Hc),Hc=-1),Au=!0;var n=Wt;try{for(ch(e),Aa=Oa(ar);Aa!==null&&(!(Aa.expirationTime>e)||t&&!Ov());){var a=Aa.callback;if(typeof a=="function"){Aa.callback=null,Wt=Aa.priorityLevel;var r=a(Aa.expirationTime<=e);e=Ue.unstable_now(),typeof r=="function"?Aa.callback=r:Aa===Oa(ar)&&lu(ar),ch(e)}else lu(ar);Aa=Oa(ar)}if(Aa!==null)var i=!0;else{var o=Oa(ii);o!==null&&uh(lh,o.startTime-e),i=!1}return i}finally{Aa=null,Wt=n,Au=!1}}var du=!1,cu=null,Hc=-1,Fv=5,Sv=-1;function Ov(){return!(Ue.unstable_now()-Svt||125a?(t.sortIndex=n,sh(ii,t),Oa(ar)===null&&t===Oa(ii)&&(Uc?(Dv(Hc),Hc=-1):Uc=!0,uh(lh,n-a))):(t.sortIndex=r,sh(ar,t),ro||Au||(ro=!0,dh(Ah))),t};Ue.unstable_shouldYield=Ov;Ue.unstable_wrapCallback=function(t){var e=Wt;return function(){var n=Wt;Wt=e;try{return t.apply(this,arguments)}finally{Wt=n}}}});var $v=Cn((Lge,Lv)=>{"use strict";Lv.exports=Nv()});var M1=Cn(Un=>{"use strict";var jz=As(),Gn=$v();function P(t){for(var e="https://reactjs.org/docs/error-decoder.html?invariant="+t,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Lh=Object.prototype.hasOwnProperty,Pz=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Rv={},jv={};function Mz(t){return Lh.call(jv,t)?!0:Lh.call(Rv,t)?!1:Pz.test(t)?jv[t]=!0:(Rv[t]=!0,!1)}function Tz(t,e,n,a){if(n!==null&&n.type===0)return!1;switch(typeof e){case"function":case"symbol":return!0;case"boolean":return a?!1:n!==null?!n.acceptsBooleans:(t=t.toLowerCase().slice(0,5),t!=="data-"&&t!=="aria-");default:return!1}}function qz(t,e,n,a){if(e===null||typeof e>"u"||Tz(t,e,n,a))return!0;if(a)return!1;if(n!==null)switch(n.type){case 3:return!e;case 4:return e===!1;case 5:return isNaN(e);case 6:return isNaN(e)||1>e}return!1}function ln(t,e,n,a,r,i,o){this.acceptsBooleans=e===2||e===3||e===4,this.attributeName=a,this.attributeNamespace=r,this.mustUseProperty=n,this.propertyName=t,this.type=e,this.sanitizeURL=i,this.removeEmptyString=o}var qt={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(t){qt[t]=new ln(t,0,!1,t,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(t){var e=t[0];qt[e]=new ln(e,1,!1,t[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(t){qt[t]=new ln(t,2,!1,t.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(t){qt[t]=new ln(t,2,!1,t,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(t){qt[t]=new ln(t,3,!1,t.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(t){qt[t]=new ln(t,3,!0,t,null,!1,!1)});["capture","download"].forEach(function(t){qt[t]=new ln(t,4,!1,t,null,!1,!1)});["cols","rows","size","span"].forEach(function(t){qt[t]=new ln(t,6,!1,t,null,!1,!1)});["rowSpan","start"].forEach(function(t){qt[t]=new ln(t,5,!1,t.toLowerCase(),null,!1,!1)});var Ey=/[\-:]([a-z])/g;function Qy(t){return t[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(t){var e=t.replace(Ey,Qy);qt[e]=new ln(e,1,!1,t,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(t){var e=t.replace(Ey,Qy);qt[e]=new ln(e,1,!1,t,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(t){var e=t.replace(Ey,Qy);qt[e]=new ln(e,1,!1,t,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(t){qt[t]=new ln(t,1,!1,t.toLowerCase(),null,!1,!1)});qt.xlinkHref=new ln("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(t){qt[t]=new ln(t,1,!1,t.toLowerCase(),null,!0,!0)});function Iy(t,e,n,a){var r=qt.hasOwnProperty(e)?qt[e]:null;(r!==null?r.type!==0:a||!(2s||r[o]!==i[s]){var c=` +`+r[o].replace(" at new "," at ");return t.displayName&&c.includes("")&&(c=c.replace("",t.displayName)),c}while(1<=o&&0<=s);break}}}finally{mh=!1,Error.prepareStackTrace=n}return(t=t?t.displayName||t.name:"")?tl(t):""}function Gz(t){switch(t.tag){case 5:return tl(t.type);case 16:return tl("Lazy");case 13:return tl("Suspense");case 19:return tl("SuspenseList");case 0:case 2:case 15:return t=gh(t.type,!1),t;case 11:return t=gh(t.type.render,!1),t;case 1:return t=gh(t.type,!0),t;default:return""}}function Ph(t){if(t==null)return null;if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case ms:return"Fragment";case ps:return"Portal";case $h:return"Profiler";case Dy:return"StrictMode";case Rh:return"Suspense";case jh:return"SuspenseList"}if(typeof t=="object")switch(t.$$typeof){case UE:return(t.displayName||"Context")+".Consumer";case zE:return(t._context.displayName||"Context")+".Provider";case Fy:var e=t.render;return t=t.displayName,t||(t=e.displayName||e.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case Sy:return e=t.displayName||null,e!==null?e:Ph(t.type)||"Memo";case si:e=t._payload,t=t._init;try{return Ph(t(e))}catch{}}return null}function zz(t){var e=t.type;switch(t.tag){case 24:return"Cache";case 9:return(e.displayName||"Context")+".Consumer";case 10:return(e._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return t=e.render,t=t.displayName||t.name||"",e.displayName||(t!==""?"ForwardRef("+t+")":"ForwardRef");case 7:return"Fragment";case 5:return e;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Ph(e);case 8:return e===Dy?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e}return null}function ki(t){switch(typeof t){case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function ZE(t){var e=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(e==="checkbox"||e==="radio")}function Uz(t){var e=ZE(t)?"checked":"value",n=Object.getOwnPropertyDescriptor(t.constructor.prototype,e),a=""+t[e];if(!t.hasOwnProperty(e)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var r=n.get,i=n.set;return Object.defineProperty(t,e,{configurable:!0,get:function(){return r.call(this)},set:function(o){a=""+o,i.call(this,o)}}),Object.defineProperty(t,e,{enumerable:n.enumerable}),{getValue:function(){return a},setValue:function(o){a=""+o},stopTracking:function(){t._valueTracker=null,delete t[e]}}}}function pu(t){t._valueTracker||(t._valueTracker=Uz(t))}function YE(t){if(!t)return!1;var e=t._valueTracker;if(!e)return!0;var n=e.getValue(),a="";return t&&(a=ZE(t)?t.checked?"true":"false":t.value),t=a,t!==n?(e.setValue(t),!0):!1}function Tu(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}function Mh(t,e){var n=e.checked;return ct({},e,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??t._wrapperState.initialChecked})}function Mv(t,e){var n=e.defaultValue==null?"":e.defaultValue,a=e.checked!=null?e.checked:e.defaultChecked;n=ki(e.value!=null?e.value:n),t._wrapperState={initialChecked:a,initialValue:n,controlled:e.type==="checkbox"||e.type==="radio"?e.checked!=null:e.value!=null}}function WE(t,e){e=e.checked,e!=null&&Iy(t,"checked",e,!1)}function Th(t,e){WE(t,e);var n=ki(e.value),a=e.type;if(n!=null)a==="number"?(n===0&&t.value===""||t.value!=n)&&(t.value=""+n):t.value!==""+n&&(t.value=""+n);else if(a==="submit"||a==="reset"){t.removeAttribute("value");return}e.hasOwnProperty("value")?qh(t,e.type,n):e.hasOwnProperty("defaultValue")&&qh(t,e.type,ki(e.defaultValue)),e.checked==null&&e.defaultChecked!=null&&(t.defaultChecked=!!e.defaultChecked)}function Tv(t,e,n){if(e.hasOwnProperty("value")||e.hasOwnProperty("defaultValue")){var a=e.type;if(!(a!=="submit"&&a!=="reset"||e.value!==void 0&&e.value!==null))return;e=""+t._wrapperState.initialValue,n||e===t.value||(t.value=e),t.defaultValue=e}n=t.name,n!==""&&(t.name=""),t.defaultChecked=!!t._wrapperState.initialChecked,n!==""&&(t.name=n)}function qh(t,e,n){(e!=="number"||Tu(t.ownerDocument)!==t)&&(n==null?t.defaultValue=""+t._wrapperState.initialValue:t.defaultValue!==""+n&&(t.defaultValue=""+n))}var nl=Array.isArray;function xs(t,e,n,a){if(t=t.options,e){e={};for(var r=0;r"+e.valueOf().toString()+"",e=mu.firstChild;t.firstChild;)t.removeChild(t.firstChild);for(;e.firstChild;)t.appendChild(e.firstChild)}});function gl(t,e){if(e){var n=t.firstChild;if(n&&n===t.lastChild&&n.nodeType===3){n.nodeValue=e;return}}t.textContent=e}var il={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Hz=["Webkit","ms","Moz","O"];Object.keys(il).forEach(function(t){Hz.forEach(function(e){e=e+t.charAt(0).toUpperCase()+t.substring(1),il[e]=il[t]})});function XE(t,e,n){return e==null||typeof e=="boolean"||e===""?"":n||typeof e!="number"||e===0||il.hasOwnProperty(t)&&il[t]?(""+e).trim():e+"px"}function eQ(t,e){t=t.style;for(var n in e)if(e.hasOwnProperty(n)){var a=n.indexOf("--")===0,r=XE(n,e[n],a);n==="float"&&(n="cssFloat"),a?t.setProperty(n,r):t[n]=r}}var Zz=ct({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Uh(t,e){if(e){if(Zz[t]&&(e.children!=null||e.dangerouslySetInnerHTML!=null))throw Error(P(137,t));if(e.dangerouslySetInnerHTML!=null){if(e.children!=null)throw Error(P(60));if(typeof e.dangerouslySetInnerHTML!="object"||!("__html"in e.dangerouslySetInnerHTML))throw Error(P(61))}if(e.style!=null&&typeof e.style!="object")throw Error(P(62))}}function Hh(t,e){if(t.indexOf("-")===-1)return typeof e.is=="string";switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Zh=null;function Oy(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var Yh=null,vs=null,Es=null;function zv(t){if(t=Ol(t)){if(typeof Yh!="function")throw Error(P(280));var e=t.stateNode;e&&(e=gp(e),Yh(t.stateNode,t.type,e))}}function tQ(t){vs?Es?Es.push(t):Es=[t]:vs=t}function nQ(){if(vs){var t=vs,e=Es;if(Es=vs=null,zv(t),e)for(t=0;t>>=0,t===0?32:31-(r7(t)/i7|0)|0}var gu=64,fu=4194304;function al(t){switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return t&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return t}}function Uu(t,e){var n=t.pendingLanes;if(n===0)return 0;var a=0,r=t.suspendedLanes,i=t.pingedLanes,o=n&268435455;if(o!==0){var s=o&~r;s!==0?a=al(s):(i&=o,i!==0&&(a=al(i)))}else o=n&~r,o!==0?a=al(o):i!==0&&(a=al(i));if(a===0)return 0;if(e!==0&&e!==a&&!(e&r)&&(r=a&-a,i=e&-e,r>=i||r===16&&(i&4194240)!==0))return e;if(a&4&&(a|=n&16),e=t.entangledLanes,e!==0)for(t=t.entanglements,e&=a;0n;n++)e.push(t);return e}function Fl(t,e,n){t.pendingLanes|=e,e!==536870912&&(t.suspendedLanes=0,t.pingedLanes=0),t=t.eventTimes,e=31-ja(e),t[e]=n}function l7(t,e){var n=t.pendingLanes&~e;t.pendingLanes=e,t.suspendedLanes=0,t.pingedLanes=0,t.expiredLanes&=e,t.mutableReadLanes&=e,t.entangledLanes&=e,e=t.entanglements;var a=t.eventTimes;for(t=t.expirationTimes;0=sl),Xv=" ",eE=!1;function CQ(t,e){switch(t){case"keyup":return R7.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _Q(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var gs=!1;function P7(t,e){switch(t){case"compositionend":return _Q(e);case"keypress":return e.which!==32?null:(eE=!0,Xv);case"textInput":return t=e.data,t===Xv&&eE?null:t;default:return null}}function M7(t,e){if(gs)return t==="compositionend"||!Ty&&CQ(t,e)?(t=wQ(),Su=jy=di=null,gs=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:n,offset:e-t};t=a}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=aE(n)}}function EQ(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?EQ(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function QQ(){for(var t=window,e=Tu();e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=Tu(t.document)}return e}function qy(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}function W7(t){var e=QQ(),n=t.focusedElem,a=t.selectionRange;if(e!==n&&n&&n.ownerDocument&&EQ(n.ownerDocument.documentElement,n)){if(a!==null&&qy(n)){if(e=a.start,t=a.end,t===void 0&&(t=e),"selectionStart"in n)n.selectionStart=e,n.selectionEnd=Math.min(t,n.value.length);else if(t=(e=n.ownerDocument||document)&&e.defaultView||window,t.getSelection){t=t.getSelection();var r=n.textContent.length,i=Math.min(a.start,r);a=a.end===void 0?i:Math.min(a.end,r),!t.extend&&i>a&&(r=a,a=i,i=r),r=rE(n,i);var o=rE(n,a);r&&o&&(t.rangeCount!==1||t.anchorNode!==r.node||t.anchorOffset!==r.offset||t.focusNode!==o.node||t.focusOffset!==o.offset)&&(e=e.createRange(),e.setStart(r.node,r.offset),t.removeAllRanges(),i>a?(t.addRange(e),t.extend(o.node,o.offset)):(e.setEnd(o.node,o.offset),t.addRange(e)))}}for(e=[],t=n;t=t.parentNode;)t.nodeType===1&&e.push({element:t,left:t.scrollLeft,top:t.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,fs=null,ey=null,ll=null,ty=!1;function iE(t,e,n){var a=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ty||fs==null||fs!==Tu(a)||(a=fs,"selectionStart"in a&&qy(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),ll&&kl(ll,a)||(ll=a,a=Yu(ey,"onSelect"),0ys||(t.current=sy[ys],sy[ys]=null,ys--)}function He(t,e){ys++,sy[ys]=t.current,t.current=e}var Ci={},Xt=Bi(Ci),xn=Bi(!1),po=Ci;function Ss(t,e){var n=t.type.contextTypes;if(!n)return Ci;var a=t.stateNode;if(a&&a.__reactInternalMemoizedUnmaskedChildContext===e)return a.__reactInternalMemoizedMaskedChildContext;var r={},i;for(i in n)r[i]=e[i];return a&&(t=t.stateNode,t.__reactInternalMemoizedUnmaskedChildContext=e,t.__reactInternalMemoizedMaskedChildContext=r),r}function vn(t){return t=t.childContextTypes,t!=null}function Ku(){Je(xn),Je(Xt)}function mE(t,e,n){if(Xt.current!==Ci)throw Error(P(168));He(Xt,e),He(xn,n)}function RQ(t,e,n){var a=t.stateNode;if(e=e.childContextTypes,typeof a.getChildContext!="function")return n;a=a.getChildContext();for(var r in a)if(!(r in e))throw Error(P(108,zz(t)||"Unknown",r));return ct({},n,a)}function Ju(t){return t=(t=t.stateNode)&&t.__reactInternalMemoizedMergedChildContext||Ci,po=Xt.current,He(Xt,t),He(xn,xn.current),!0}function gE(t,e,n){var a=t.stateNode;if(!a)throw Error(P(169));n?(t=RQ(t,e,po),a.__reactInternalMemoizedMergedChildContext=t,Je(xn),Je(Xt),He(Xt,t)):Je(xn),He(xn,n)}var Br=null,fp=!1,vh=!1;function jQ(t){Br===null?Br=[t]:Br.push(t)}function iU(t){fp=!0,jQ(t)}function xi(){if(!vh&&Br!==null){vh=!0;var t=0,e=Ne;try{var n=Br;for(Ne=1;t>=o,r-=o,xr=1<<32-ja(e)+r|n<$?(z=F,F=null):z=F.sibling;var U=p(b,F,k[$],E);if(U===null){F===null&&(F=z);break}t&&F&&U.alternate===null&&e(b,F),y=i(U,y,$),D===null?Q=U:D.sibling=U,D=U,F=z}if($===k.length)return n(b,F),nt&&io(b,$),Q;if(F===null){for(;$$?(z=F,F=null):z=F.sibling;var te=p(b,F,U.value,E);if(te===null){F===null&&(F=z);break}t&&F&&te.alternate===null&&e(b,F),y=i(te,y,$),D===null?Q=te:D.sibling=te,D=te,F=z}if(U.done)return n(b,F),nt&&io(b,$),Q;if(F===null){for(;!U.done;$++,U=k.next())U=u(b,U.value,E),U!==null&&(y=i(U,y,$),D===null?Q=U:D.sibling=U,D=U);return nt&&io(b,$),Q}for(F=a(b,F);!U.done;$++,U=k.next())U=m(F,b,$,U.value,E),U!==null&&(t&&U.alternate!==null&&F.delete(U.key===null?$:U.key),y=i(U,y,$),D===null?Q=U:D.sibling=U,D=U);return t&&F.forEach(function(V){return e(b,V)}),nt&&io(b,$),Q}function w(b,y,k,E){if(typeof k=="object"&&k!==null&&k.type===ms&&k.key===null&&(k=k.props.children),typeof k=="object"&&k!==null){switch(k.$$typeof){case uu:e:{for(var Q=k.key,D=y;D!==null;){if(D.key===Q){if(Q=k.type,Q===ms){if(D.tag===7){n(b,D.sibling),y=r(D,k.props.children),y.return=b,b=y;break e}}else if(D.elementType===Q||typeof Q=="object"&&Q!==null&&Q.$$typeof===si&&hE(Q)===D.type){n(b,D.sibling),y=r(D,k.props),y.ref=Jc(b,D,k),y.return=b,b=y;break e}n(b,D);break}else e(b,D);D=D.sibling}k.type===ms?(y=uo(k.props.children,b.mode,E,k.key),y.return=b,b=y):(E=Mu(k.type,k.key,k.props,null,b.mode,E),E.ref=Jc(b,y,k),E.return=b,b=E)}return o(b);case ps:e:{for(D=k.key;y!==null;){if(y.key===D)if(y.tag===4&&y.stateNode.containerInfo===k.containerInfo&&y.stateNode.implementation===k.implementation){n(b,y.sibling),y=r(y,k.children||[]),y.return=b,b=y;break e}else{n(b,y);break}else e(b,y);y=y.sibling}y=Nh(k,b.mode,E),y.return=b,b=y}return o(b);case si:return D=k._init,w(b,y,D(k._payload),E)}if(nl(k))return f(b,y,k,E);if(Zc(k))return h(b,y,k,E);Eu(b,k)}return typeof k=="string"&&k!==""||typeof k=="number"?(k=""+k,y!==null&&y.tag===6?(n(b,y.sibling),y=r(y,k),y.return=b,b=y):(n(b,y),y=Oh(k,b.mode,E),y.return=b,b=y),o(b)):n(b,y)}return w}var Ns=qQ(!0),GQ=qQ(!1),ep=Bi(null),tp=null,Cs=null,Hy=null;function Zy(){Hy=Cs=tp=null}function Yy(t){var e=ep.current;Je(ep),t._currentValue=e}function Ay(t,e,n){for(;t!==null;){var a=t.alternate;if((t.childLanes&e)!==e?(t.childLanes|=e,a!==null&&(a.childLanes|=e)):a!==null&&(a.childLanes&e)!==e&&(a.childLanes|=e),t===n)break;t=t.return}}function Is(t,e){tp=t,Hy=Cs=null,t=t.dependencies,t!==null&&t.firstContext!==null&&(t.lanes&e&&(Bn=!0),t.firstContext=null)}function ga(t){var e=t._currentValue;if(Hy!==t)if(t={context:t,memoizedValue:e,next:null},Cs===null){if(tp===null)throw Error(P(308));Cs=t,tp.dependencies={lanes:0,firstContext:t}}else Cs=Cs.next=t;return e}var co=null;function Wy(t){co===null?co=[t]:co.push(t)}function zQ(t,e,n,a){var r=e.interleaved;return r===null?(n.next=n,Wy(e)):(n.next=r.next,r.next=n),e.interleaved=n,Dr(t,a)}function Dr(t,e){t.lanes|=e;var n=t.alternate;for(n!==null&&(n.lanes|=e),n=t,t=t.return;t!==null;)t.childLanes|=e,n=t.alternate,n!==null&&(n.childLanes|=e),n=t,t=t.return;return n.tag===3?n.stateNode:null}var ci=!1;function Ky(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function UQ(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,effects:t.effects})}function Er(t,e){return{eventTime:t,lane:e,tag:0,payload:null,callback:null,next:null}}function bi(t,e,n){var a=t.updateQueue;if(a===null)return null;if(a=a.shared,Be&2){var r=a.pending;return r===null?e.next=e:(e.next=r.next,r.next=e),a.pending=e,Dr(t,n)}return r=a.interleaved,r===null?(e.next=e,Wy(a)):(e.next=r.next,r.next=e),a.interleaved=e,Dr(t,n)}function Nu(t,e,n){if(e=e.updateQueue,e!==null&&(e=e.shared,(n&4194240)!==0)){var a=e.lanes;a&=t.pendingLanes,n|=a,e.lanes=n,Ly(t,n)}}function yE(t,e){var n=t.updateQueue,a=t.alternate;if(a!==null&&(a=a.updateQueue,n===a)){var r=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};i===null?r=i=o:i=i.next=o,n=n.next}while(n!==null);i===null?r=i=e:i=i.next=e}else r=i=e;n={baseState:a.baseState,firstBaseUpdate:r,lastBaseUpdate:i,shared:a.shared,effects:a.effects},t.updateQueue=n;return}t=n.lastBaseUpdate,t===null?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}function np(t,e,n,a){var r=t.updateQueue;ci=!1;var i=r.firstBaseUpdate,o=r.lastBaseUpdate,s=r.shared.pending;if(s!==null){r.shared.pending=null;var c=s,A=c.next;c.next=null,o===null?i=A:o.next=A,o=c;var d=t.alternate;d!==null&&(d=d.updateQueue,s=d.lastBaseUpdate,s!==o&&(s===null?d.firstBaseUpdate=A:s.next=A,d.lastBaseUpdate=c))}if(i!==null){var u=r.baseState;o=0,d=A=c=null,s=i;do{var p=s.lane,m=s.eventTime;if((a&p)===p){d!==null&&(d=d.next={eventTime:m,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var f=t,h=s;switch(p=e,m=n,h.tag){case 1:if(f=h.payload,typeof f=="function"){u=f.call(m,u,p);break e}u=f;break e;case 3:f.flags=f.flags&-65537|128;case 0:if(f=h.payload,p=typeof f=="function"?f.call(m,u,p):f,p==null)break e;u=ct({},u,p);break e;case 2:ci=!0}}s.callback!==null&&s.lane!==0&&(t.flags|=64,p=r.effects,p===null?r.effects=[s]:p.push(s))}else m={eventTime:m,lane:p,tag:s.tag,payload:s.payload,callback:s.callback,next:null},d===null?(A=d=m,c=u):d=d.next=m,o|=p;if(s=s.next,s===null){if(s=r.shared.pending,s===null)break;p=s,s=p.next,p.next=null,r.lastBaseUpdate=p,r.shared.pending=null}}while(!0);if(d===null&&(c=u),r.baseState=c,r.firstBaseUpdate=A,r.lastBaseUpdate=d,e=r.shared.interleaved,e!==null){r=e;do o|=r.lane,r=r.next;while(r!==e)}else i===null&&(r.shared.lanes=0);fo|=o,t.lanes=o,t.memoizedState=u}}function wE(t,e,n){if(t=e.effects,e.effects=null,t!==null)for(e=0;en?n:4,t(!0);var a=Qh.transition;Qh.transition={};try{t(!1),e()}finally{Ne=n,Qh.transition=a}}function c1(){return fa().memoizedState}function lU(t,e,n){var a=yi(t);if(n={lane:a,action:n,hasEagerState:!1,eagerState:null,next:null},l1(t))A1(e,n);else if(n=zQ(t,e,n,a),n!==null){var r=cn();Pa(n,t,a,r),d1(n,e,a)}}function AU(t,e,n){var a=yi(t),r={lane:a,action:n,hasEagerState:!1,eagerState:null,next:null};if(l1(t))A1(e,r);else{var i=t.alternate;if(t.lanes===0&&(i===null||i.lanes===0)&&(i=e.lastRenderedReducer,i!==null))try{var o=e.lastRenderedState,s=i(o,n);if(r.hasEagerState=!0,r.eagerState=s,Ma(s,o)){var c=e.interleaved;c===null?(r.next=r,Wy(e)):(r.next=c.next,c.next=r),e.interleaved=r;return}}catch{}finally{}n=zQ(t,e,r,a),n!==null&&(r=cn(),Pa(n,t,a,r),d1(n,e,a))}}function l1(t){var e=t.alternate;return t===st||e!==null&&e===st}function A1(t,e){Al=rp=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function d1(t,e,n){if(n&4194240){var a=e.lanes;a&=t.pendingLanes,n|=a,e.lanes=n,Ly(t,n)}}var ip={readContext:ga,useCallback:Kt,useContext:Kt,useEffect:Kt,useImperativeHandle:Kt,useInsertionEffect:Kt,useLayoutEffect:Kt,useMemo:Kt,useReducer:Kt,useRef:Kt,useState:Kt,useDebugValue:Kt,useDeferredValue:Kt,useTransition:Kt,useMutableSource:Kt,useSyncExternalStore:Kt,useId:Kt,unstable_isNewReconciler:!1},dU={readContext:ga,useCallback:function(t,e){return ir().memoizedState=[t,e===void 0?null:e],t},useContext:ga,useEffect:CE,useImperativeHandle:function(t,e,n){return n=n!=null?n.concat([t]):null,$u(4194308,4,a1.bind(null,e,t),n)},useLayoutEffect:function(t,e){return $u(4194308,4,t,e)},useInsertionEffect:function(t,e){return $u(4,2,t,e)},useMemo:function(t,e){var n=ir();return e=e===void 0?null:e,t=t(),n.memoizedState=[t,e],t},useReducer:function(t,e,n){var a=ir();return e=n!==void 0?n(e):e,a.memoizedState=a.baseState=e,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:e},a.queue=t,t=t.dispatch=lU.bind(null,st,t),[a.memoizedState,t]},useRef:function(t){var e=ir();return t={current:t},e.memoizedState=t},useState:kE,useDebugValue:rw,useDeferredValue:function(t){return ir().memoizedState=t},useTransition:function(){var t=kE(!1),e=t[0];return t=cU.bind(null,t[1]),ir().memoizedState=t,[e,t]},useMutableSource:function(){},useSyncExternalStore:function(t,e,n){var a=st,r=ir();if(nt){if(n===void 0)throw Error(P(407));n=n()}else{if(n=e(),Ft===null)throw Error(P(349));go&30||WQ(a,e,n)}r.memoizedState=n;var i={value:n,getSnapshot:e};return r.queue=i,CE(JQ.bind(null,a,i,t),[t]),a.flags|=2048,Il(9,KQ.bind(null,a,i,n,e),void 0,null),n},useId:function(){var t=ir(),e=Ft.identifierPrefix;if(nt){var n=vr,a=xr;n=(a&~(1<<32-ja(a)-1)).toString(32)+n,e=":"+e+"R"+n,n=El++,0<\/script>",t=t.removeChild(t.firstChild)):typeof a.is=="string"?t=o.createElement(n,{is:a.is}):(t=o.createElement(n),n==="select"&&(o=t,a.multiple?o.multiple=!0:a.size&&(o.size=a.size))):t=o.createElementNS(t,n),t[or]=e,t[Bl]=a,k1(t,e,!1,!1),e.stateNode=t;e:{switch(o=Hh(n,a),n){case"dialog":Ke("cancel",t),Ke("close",t),r=a;break;case"iframe":case"object":case"embed":Ke("load",t),r=a;break;case"video":case"audio":for(r=0;rRs&&(e.flags|=128,a=!0,Vc(i,!1),e.lanes=4194304)}else{if(!a)if(t=ap(o),t!==null){if(e.flags|=128,a=!0,n=t.updateQueue,n!==null&&(e.updateQueue=n,e.flags|=4),Vc(i,!0),i.tail===null&&i.tailMode==="hidden"&&!o.alternate&&!nt)return Jt(e),null}else 2*bt()-i.renderingStartTime>Rs&&n!==1073741824&&(e.flags|=128,a=!0,Vc(i,!1),e.lanes=4194304);i.isBackwards?(o.sibling=e.child,e.child=o):(n=i.last,n!==null?n.sibling=o:e.child=o,i.last=o)}return i.tail!==null?(e=i.tail,i.rendering=e,i.tail=e.sibling,i.renderingStartTime=bt(),e.sibling=null,n=ot.current,He(ot,a?n&1|2:n&1),e):(Jt(e),null);case 22:case 23:return Aw(),a=e.memoizedState!==null,t!==null&&t.memoizedState!==null!==a&&(e.flags|=8192),a&&e.mode&1?Mn&1073741824&&(Jt(e),e.subtreeFlags&6&&(e.flags|=8192)):Jt(e),null;case 24:return null;case 25:return null}throw Error(P(156,e.tag))}function yU(t,e){switch(zy(e),e.tag){case 1:return vn(e.type)&&Ku(),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ls(),Je(xn),Je(Xt),Xy(),t=e.flags,t&65536&&!(t&128)?(e.flags=t&-65537|128,e):null;case 5:return Vy(e),null;case 13:if(Je(ot),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(P(340));Os()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return Je(ot),null;case 4:return Ls(),null;case 10:return Yy(e.type._context),null;case 22:case 23:return Aw(),null;case 24:return null;default:return null}}var Iu=!1,Vt=!1,wU=typeof WeakSet=="function"?WeakSet:Set,Z=null;function _s(t,e){var n=t.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(a){At(t,e,a)}else n.current=null}function yy(t,e,n){try{n()}catch(a){At(t,e,a)}}var OE=!1;function kU(t,e){if(ny=Hu,t=QQ(),qy(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else e:{n=(n=t.ownerDocument)&&n.defaultView||window;var a=n.getSelection&&n.getSelection();if(a&&a.rangeCount!==0){n=a.anchorNode;var r=a.anchorOffset,i=a.focusNode;a=a.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var o=0,s=-1,c=-1,A=0,d=0,u=t,p=null;t:for(;;){for(var m;u!==n||r!==0&&u.nodeType!==3||(s=o+r),u!==i||a!==0&&u.nodeType!==3||(c=o+a),u.nodeType===3&&(o+=u.nodeValue.length),(m=u.firstChild)!==null;)p=u,u=m;for(;;){if(u===t)break t;if(p===n&&++A===r&&(s=o),p===i&&++d===a&&(c=o),(m=u.nextSibling)!==null)break;u=p,p=u.parentNode}u=m}n=s===-1||c===-1?null:{start:s,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(ay={focusedElem:t,selectionRange:n},Hu=!1,Z=e;Z!==null;)if(e=Z,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Z=t;else for(;Z!==null;){e=Z;try{var f=e.alternate;if(e.flags&1024)switch(e.tag){case 0:case 11:case 15:break;case 1:if(f!==null){var h=f.memoizedProps,w=f.memoizedState,b=e.stateNode,y=b.getSnapshotBeforeUpdate(e.elementType===e.type?h:La(e.type,h),w);b.__reactInternalSnapshotBeforeUpdate=y}break;case 3:var k=e.stateNode.containerInfo;k.nodeType===1?k.textContent="":k.nodeType===9&&k.documentElement&&k.removeChild(k.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(P(163))}}catch(E){At(e,e.return,E)}if(t=e.sibling,t!==null){t.return=e.return,Z=t;break}Z=e.return}return f=OE,OE=!1,f}function dl(t,e,n){var a=e.updateQueue;if(a=a!==null?a.lastEffect:null,a!==null){var r=a=a.next;do{if((r.tag&t)===t){var i=r.destroy;r.destroy=void 0,i!==void 0&&yy(e,n,i)}r=r.next}while(r!==a)}}function yp(t,e){if(e=e.updateQueue,e=e!==null?e.lastEffect:null,e!==null){var n=e=e.next;do{if((n.tag&t)===t){var a=n.create;n.destroy=a()}n=n.next}while(n!==e)}}function wy(t){var e=t.ref;if(e!==null){var n=t.stateNode;switch(t.tag){case 5:t=n;break;default:t=n}typeof e=="function"?e(t):e.current=t}}function B1(t){var e=t.alternate;e!==null&&(t.alternate=null,B1(e)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(e=t.stateNode,e!==null&&(delete e[or],delete e[Bl],delete e[oy],delete e[aU],delete e[rU])),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}function x1(t){return t.tag===5||t.tag===3||t.tag===4}function NE(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||x1(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function ky(t,e,n){var a=t.tag;if(a===5||a===6)t=t.stateNode,e?n.nodeType===8?n.parentNode.insertBefore(t,e):n.insertBefore(t,e):(n.nodeType===8?(e=n.parentNode,e.insertBefore(t,n)):(e=n,e.appendChild(t)),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=Wu));else if(a!==4&&(t=t.child,t!==null))for(ky(t,e,n),t=t.sibling;t!==null;)ky(t,e,n),t=t.sibling}function Cy(t,e,n){var a=t.tag;if(a===5||a===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(a!==4&&(t=t.child,t!==null))for(Cy(t,e,n),t=t.sibling;t!==null;)Cy(t,e,n),t=t.sibling}var Mt=null,$a=!1;function oi(t,e,n){for(n=n.child;n!==null;)v1(t,e,n),n=n.sibling}function v1(t,e,n){if(sr&&typeof sr.onCommitFiberUnmount=="function")try{sr.onCommitFiberUnmount(dp,n)}catch{}switch(n.tag){case 5:Vt||_s(n,e);case 6:var a=Mt,r=$a;Mt=null,oi(t,e,n),Mt=a,$a=r,Mt!==null&&($a?(t=Mt,n=n.stateNode,t.nodeType===8?t.parentNode.removeChild(n):t.removeChild(n)):Mt.removeChild(n.stateNode));break;case 18:Mt!==null&&($a?(t=Mt,n=n.stateNode,t.nodeType===8?xh(t.parentNode,n):t.nodeType===1&&xh(t,n),yl(t)):xh(Mt,n.stateNode));break;case 4:a=Mt,r=$a,Mt=n.stateNode.containerInfo,$a=!0,oi(t,e,n),Mt=a,$a=r;break;case 0:case 11:case 14:case 15:if(!Vt&&(a=n.updateQueue,a!==null&&(a=a.lastEffect,a!==null))){r=a=a.next;do{var i=r,o=i.destroy;i=i.tag,o!==void 0&&(i&2||i&4)&&yy(n,e,o),r=r.next}while(r!==a)}oi(t,e,n);break;case 1:if(!Vt&&(_s(n,e),a=n.stateNode,typeof a.componentWillUnmount=="function"))try{a.props=n.memoizedProps,a.state=n.memoizedState,a.componentWillUnmount()}catch(s){At(n,e,s)}oi(t,e,n);break;case 21:oi(t,e,n);break;case 22:n.mode&1?(Vt=(a=Vt)||n.memoizedState!==null,oi(t,e,n),Vt=a):oi(t,e,n);break;default:oi(t,e,n)}}function LE(t){var e=t.updateQueue;if(e!==null){t.updateQueue=null;var n=t.stateNode;n===null&&(n=t.stateNode=new wU),e.forEach(function(a){var r=DU.bind(null,t,a);n.has(a)||(n.add(a),a.then(r,r))})}}function Na(t,e){var n=e.deletions;if(n!==null)for(var a=0;ar&&(r=o),a&=~i}if(a=r,a=bt()-a,a=(120>a?120:480>a?480:1080>a?1080:1920>a?1920:3e3>a?3e3:4320>a?4320:1960*_U(a/1960))-a,10t?16:t,ui===null)var a=!1;else{if(t=ui,ui=null,cp=0,Be&6)throw Error(P(331));var r=Be;for(Be|=4,Z=t.current;Z!==null;){var i=Z,o=i.child;if(Z.flags&16){var s=i.deletions;if(s!==null){for(var c=0;cbt()-cw?Ao(t,0):sw|=n),En(t,e)}function N1(t,e){e===0&&(t.mode&1?(e=fu,fu<<=1,!(fu&130023424)&&(fu=4194304)):e=1);var n=cn();t=Dr(t,e),t!==null&&(Fl(t,e,n),En(t,n))}function IU(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),N1(t,n)}function DU(t,e){var n=0;switch(t.tag){case 13:var a=t.stateNode,r=t.memoizedState;r!==null&&(n=r.retryLane);break;case 19:a=t.stateNode;break;default:throw Error(P(314))}a!==null&&a.delete(e),N1(t,n)}var L1;L1=function(t,e,n){if(t!==null)if(t.memoizedProps!==e.pendingProps||xn.current)Bn=!0;else{if(!(t.lanes&n)&&!(e.flags&128))return Bn=!1,bU(t,e,n);Bn=!!(t.flags&131072)}else Bn=!1,nt&&e.flags&1048576&&PQ(e,Xu,e.index);switch(e.lanes=0,e.tag){case 2:var a=e.type;Ru(t,e),t=e.pendingProps;var r=Ss(e,Xt.current);Is(e,n),r=tw(null,e,a,t,r,n);var i=nw();return e.flags|=1,typeof r=="object"&&r!==null&&typeof r.render=="function"&&r.$$typeof===void 0?(e.tag=1,e.memoizedState=null,e.updateQueue=null,vn(a)?(i=!0,Ju(e)):i=!1,e.memoizedState=r.state!==null&&r.state!==void 0?r.state:null,Ky(e),r.updater=hp,e.stateNode=r,r._reactInternals=e,uy(e,a,t,n),e=gy(null,e,a,!0,i,n)):(e.tag=0,nt&&i&&Gy(e),sn(null,e,r,n),e=e.child),e;case 16:a=e.elementType;e:{switch(Ru(t,e),t=e.pendingProps,r=a._init,a=r(a._payload),e.type=a,r=e.tag=SU(a),t=La(a,t),r){case 0:e=my(null,e,a,t,n);break e;case 1:e=DE(null,e,a,t,n);break e;case 11:e=QE(null,e,a,t,n);break e;case 14:e=IE(null,e,a,La(a.type,t),n);break e}throw Error(P(306,a,""))}return e;case 0:return a=e.type,r=e.pendingProps,r=e.elementType===a?r:La(a,r),my(t,e,a,r,n);case 1:return a=e.type,r=e.pendingProps,r=e.elementType===a?r:La(a,r),DE(t,e,a,r,n);case 3:e:{if(h1(e),t===null)throw Error(P(387));a=e.pendingProps,i=e.memoizedState,r=i.element,UQ(t,e),np(e,a,null,n);var o=e.memoizedState;if(a=o.element,i.isDehydrated)if(i={element:a,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},e.updateQueue.baseState=i,e.memoizedState=i,e.flags&256){r=$s(Error(P(423)),e),e=FE(t,e,a,n,r);break e}else if(a!==r){r=$s(Error(P(424)),e),e=FE(t,e,a,n,r);break e}else for(Tn=fi(e.stateNode.containerInfo.firstChild),qn=e,nt=!0,Ra=null,n=GQ(e,null,a,n),e.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Os(),a===r){e=Fr(t,e,n);break e}sn(t,e,a,n)}e=e.child}return e;case 5:return HQ(e),t===null&&ly(e),a=e.type,r=e.pendingProps,i=t!==null?t.memoizedProps:null,o=r.children,ry(a,r)?o=null:i!==null&&ry(a,i)&&(e.flags|=32),b1(t,e),sn(t,e,o,n),e.child;case 6:return t===null&&ly(e),null;case 13:return y1(t,e,n);case 4:return Jy(e,e.stateNode.containerInfo),a=e.pendingProps,t===null?e.child=Ns(e,null,a,n):sn(t,e,a,n),e.child;case 11:return a=e.type,r=e.pendingProps,r=e.elementType===a?r:La(a,r),QE(t,e,a,r,n);case 7:return sn(t,e,e.pendingProps,n),e.child;case 8:return sn(t,e,e.pendingProps.children,n),e.child;case 12:return sn(t,e,e.pendingProps.children,n),e.child;case 10:e:{if(a=e.type._context,r=e.pendingProps,i=e.memoizedProps,o=r.value,He(ep,a._currentValue),a._currentValue=o,i!==null)if(Ma(i.value,o)){if(i.children===r.children&&!xn.current){e=Fr(t,e,n);break e}}else for(i=e.child,i!==null&&(i.return=e);i!==null;){var s=i.dependencies;if(s!==null){o=i.child;for(var c=s.firstContext;c!==null;){if(c.context===a){if(i.tag===1){c=Er(-1,n&-n),c.tag=2;var A=i.updateQueue;if(A!==null){A=A.shared;var d=A.pending;d===null?c.next=c:(c.next=d.next,d.next=c),A.pending=c}}i.lanes|=n,c=i.alternate,c!==null&&(c.lanes|=n),Ay(i.return,n,e),s.lanes|=n;break}c=c.next}}else if(i.tag===10)o=i.type===e.type?null:i.child;else if(i.tag===18){if(o=i.return,o===null)throw Error(P(341));o.lanes|=n,s=o.alternate,s!==null&&(s.lanes|=n),Ay(o,n,e),o=i.sibling}else o=i.child;if(o!==null)o.return=i;else for(o=i;o!==null;){if(o===e){o=null;break}if(i=o.sibling,i!==null){i.return=o.return,o=i;break}o=o.return}i=o}sn(t,e,r.children,n),e=e.child}return e;case 9:return r=e.type,a=e.pendingProps.children,Is(e,n),r=ga(r),a=a(r),e.flags|=1,sn(t,e,a,n),e.child;case 14:return a=e.type,r=La(a,e.pendingProps),r=La(a.type,r),IE(t,e,a,r,n);case 15:return g1(t,e,e.type,e.pendingProps,n);case 17:return a=e.type,r=e.pendingProps,r=e.elementType===a?r:La(a,r),Ru(t,e),e.tag=1,vn(a)?(t=!0,Ju(e)):t=!1,Is(e,n),u1(e,a,r),uy(e,a,r,n),gy(null,e,a,!0,t,n);case 19:return w1(t,e,n);case 22:return f1(t,e,n)}throw Error(P(156,e.tag))};function $1(t,e){return lQ(t,e)}function FU(t,e,n,a){this.tag=t,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function pa(t,e,n,a){return new FU(t,e,n,a)}function uw(t){return t=t.prototype,!(!t||!t.isReactComponent)}function SU(t){if(typeof t=="function")return uw(t)?1:0;if(t!=null){if(t=t.$$typeof,t===Fy)return 11;if(t===Sy)return 14}return 2}function wi(t,e){var n=t.alternate;return n===null?(n=pa(t.tag,e,t.key,t.mode),n.elementType=t.elementType,n.type=t.type,n.stateNode=t.stateNode,n.alternate=t,t.alternate=n):(n.pendingProps=e,n.type=t.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=t.flags&14680064,n.childLanes=t.childLanes,n.lanes=t.lanes,n.child=t.child,n.memoizedProps=t.memoizedProps,n.memoizedState=t.memoizedState,n.updateQueue=t.updateQueue,e=t.dependencies,n.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext},n.sibling=t.sibling,n.index=t.index,n.ref=t.ref,n}function Mu(t,e,n,a,r,i){var o=2;if(a=t,typeof t=="function")uw(t)&&(o=1);else if(typeof t=="string")o=5;else e:switch(t){case ms:return uo(n.children,r,i,e);case Dy:o=8,r|=8;break;case $h:return t=pa(12,n,e,r|2),t.elementType=$h,t.lanes=i,t;case Rh:return t=pa(13,n,e,r),t.elementType=Rh,t.lanes=i,t;case jh:return t=pa(19,n,e,r),t.elementType=jh,t.lanes=i,t;case HE:return kp(n,r,i,e);default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case zE:o=10;break e;case UE:o=9;break e;case Fy:o=11;break e;case Sy:o=14;break e;case si:o=16,a=null;break e}throw Error(P(130,t==null?t:typeof t,""))}return e=pa(o,n,e,r),e.elementType=t,e.type=a,e.lanes=i,e}function uo(t,e,n,a){return t=pa(7,t,a,e),t.lanes=n,t}function kp(t,e,n,a){return t=pa(22,t,a,e),t.elementType=HE,t.lanes=n,t.stateNode={isHidden:!1},t}function Oh(t,e,n){return t=pa(6,t,null,e),t.lanes=n,t}function Nh(t,e,n){return e=pa(4,t.children!==null?t.children:[],t.key,e),e.lanes=n,e.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},e}function OU(t,e,n,a,r){this.tag=e,this.containerInfo=t,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=bh(0),this.expirationTimes=bh(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=bh(0),this.identifierPrefix=a,this.onRecoverableError=r,this.mutableSourceEagerHydrationData=null}function pw(t,e,n,a,r,i,o,s,c){return t=new OU(t,e,n,s,c),e===1?(e=1,i===!0&&(e|=8)):e=0,i=pa(3,null,null,e),t.current=i,i.stateNode=t,i.memoizedState={element:a,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ky(i),t}function NU(t,e,n){var a=3{"use strict";function T1(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(T1)}catch(t){console.error(t)}}T1(),q1.exports=M1()});var U1=Cn(bw=>{"use strict";var z1=G1();bw.createRoot=z1.createRoot,bw.hydrateRoot=z1.hydrateRoot;var jge});var Z1=Cn(vp=>{"use strict";var PU=As(),MU=Symbol.for("react.element"),TU=Symbol.for("react.fragment"),qU=Object.prototype.hasOwnProperty,GU=PU.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,zU={key:!0,ref:!0,__self:!0,__source:!0};function H1(t,e,n){var a,r={},i=null,o=null;n!==void 0&&(i=""+n),e.key!==void 0&&(i=""+e.key),e.ref!==void 0&&(o=e.ref);for(a in e)qU.call(e,a)&&!zU.hasOwnProperty(a)&&(r[a]=e[a]);if(t&&t.defaultProps)for(a in e=t.defaultProps,e)r[a]===void 0&&(r[a]=e[a]);return{$$typeof:MU,type:t,key:i,ref:o,props:r,_owner:GU.current}}vp.Fragment=TU;vp.jsx=H1;vp.jsxs=H1});var Ms=Cn((Tge,Y1)=>{"use strict";Y1.exports=Z1()});var V9={};x(V9,{default:()=>Aee});var lee,Aee,X9=_(()=>{lee=Object.freeze(JSON.parse('{"displayName":"ABAP","fileTypes":["abap","ABAP"],"foldingStartMarker":"/\\\\*\\\\*|\\\\{\\\\s*$","foldingStopMarker":"\\\\*\\\\*/|^\\\\s*\\\\}","name":"abap","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.abap"}},"match":"^\\\\*.*\\\\n?","name":"comment.line.full.abap"},{"captures":{"1":{"name":"punctuation.definition.comment.abap"}},"match":"\\".*\\\\n?","name":"comment.line.partial.abap"},{"match":"(?|=>))([a-z_\\\\/][a-z_0-9\\\\/]*)(?=\\\\s+(?:=|\\\\+=|-=|\\\\*=|\\\\/=|&&=|&=)\\\\s+)","name":"variable.other.abap"},{"match":"\\\\b[0-9]+(\\\\b|\\\\.|,)","name":"constant.numeric.abap"},{"match":"(?ix)(^|\\\\s+)((PUBLIC|PRIVATE|PROTECTED)\\\\sSECTION)(?=\\\\s+|:|\\\\.)","name":"storage.modifier.class.abap"},{"begin":"(?]*)+(?=\\\\s+|\\\\.)"},{"begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#generic_names"}]}]},{"begin":"(?ix)^\\\\s*(INTERFACE)\\\\s([a-z_\\\\/][a-z_0-9\\\\/]*)","beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"}},"end":"\\\\s*\\\\.\\\\s*\\\\n?","patterns":[{"match":"(?ix)(?<=^|\\\\s)(DEFERRED|PUBLIC)(?=\\\\s+|\\\\.)","name":"storage.modifier.method.abap"}]},{"begin":"(?ix)^\\\\s*(FORM)\\\\s([a-z_\\\\/][a-z_0-9\\\\/\\\\-\\\\?]*)","beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"}},"end":"\\\\s*\\\\.\\\\s*\\\\n?","patterns":[{"match":"(?ix)(?<=^|\\\\s)(USING|TABLES|CHANGING|RAISING|IMPLEMENTATION|DEFINITION)(?=\\\\s+|\\\\.)","name":"storage.modifier.form.abap"},{"include":"#abaptypes"},{"include":"#keywords_followed_by_braces"}]},{"match":"(?i)(endclass|endmethod|endform|endinterface)","name":"storage.type.block.end.abap"},{"match":"(?i)(<[A-Za-z_][A-Za-z0-9_]*>)","name":"variable.other.field.symbol.abap"},{"include":"#keywords"},{"include":"#abap_constants"},{"include":"#reserved_names"},{"include":"#operators"},{"include":"#builtin_functions"},{"include":"#abaptypes"},{"include":"#system_fields"},{"include":"#sql_functions"},{"include":"#sql_types"}],"repository":{"abap_constants":{"match":"(?ix)(?<=\\\\s)(initial|null|@?space|@?abap_true|@?abap_false|@?abap_undefined|table_line|\\n %_final|%_hints|%_predefined|col_background|col_group|col_heading|col_key|col_negative|col_normal|col_positive|col_total|\\n\\t\\t\\t\\tadabas|as400|db2|db6|hdb|oracle|sybase|mssqlnt|pos_low|pos_high)(?=\\\\s|\\\\.|,)","name":"constant.language.abap"},"abaptypes":{"patterns":[{"match":"(?ix)\\\\s(abap_bool|string|xstring|any|clike|csequence|numeric|xsequence|decfloat|decfloat16|decfloat34|utclong|simple|int8|c|n|i|p|f|d|t|x)(?=\\\\s|\\\\.|,)","name":"support.type.abap"},{"match":"(?ix)\\\\s(TYPE|REF|TO|LIKE|LINE|OF|STRUCTURE|STANDARD|SORTED|HASHED|INDEX|TABLE|WITH|UNIQUE|NON-UNIQUE|SECONDARY|DEFAULT|KEY)(?=\\\\s|\\\\.|,)","name":"keyword.control.simple.abap"}]},"arithmetic_operator":{"match":"(?i)(?<=\\\\s)(\\\\+|\\\\-|\\\\*|\\\\*\\\\*|\\\\/|%|DIV|MOD|BIT-AND|BIT-OR|BIT-XOR|BIT-NOT)(?=\\\\s)","name":"keyword.control.simple.abap"},"builtin_functions":{"match":"(?ix)(?<=\\\\s)(abs|sign|ceil|floor|trunc|frac|acos|asin|atan|cos|sin|tan|cosh|sinh|tanh|exp|log|log10|sqrt|strlen|xstrlen|charlen|lines|numofchar|dbmaxlen|round|rescale|nmax|nmin|cmax|cmin|boolc|boolx|xsdbool|contains|contains_any_of|contains_any_not_of|matches|line_exists|ipow|char_off|count|count_any_of|count_any_not_of|distance|condense|concat_lines_of|escape|find|find_end|find_any_of|find_any_not_of|insert|match|repeat|replace|reverse|segment|shift_left|shift_right|substring|substring_after|substring_from|substring_before|substring_to|to_upper|to_lower|to_mixed|from_mixed|translate|bit-set|line_index)(?=\\\\()","name":"entity.name.function.builtin.abap"},"comparison_operator":{"match":"(?i)(?<=\\\\s)(<|>|<\\\\=|>\\\\=|\\\\=|<>|eq|ne|lt|le|gt|ge|cs|cp|co|cn|ca|na|ns|np|byte-co|byte-cn|byte-ca|byte-na|byte-cs|byte-ns|o|z|m)(?=\\\\s)","name":"keyword.control.simple.abap"},"control_keywords":{"match":"(?ix)(^|\\\\s)(\\n\\t at|case|catch|continue|do|elseif|else|endat|endcase|endcatch|enddo|endif|\\n\\t endloop|endon|endtry|endwhile|if|loop|on|raise|try|while)(?=\\\\s|\\\\.|:)","name":"keyword.control.flow.abap"},"generic_names":{"match":"[A-Za-z_][A-Za-z0-9_]*"},"keywords":{"patterns":[{"include":"#main_keywords"},{"include":"#text_symbols"},{"include":"#control_keywords"},{"include":"#keywords_followed_by_braces"}]},"keywords_followed_by_braces":{"captures":{"1":{"name":"keyword.control.simple.abap"},"2":{"name":"variable.other.abap"}},"match":"(?ix)\\\\b(data|value|field-symbol|final|reference|resumable)\\\\((?)\\\\)"},"logical_operator":{"match":"(?i)(?<=\\\\s)(not|or|and)(?=\\\\s)","name":"keyword.control.simple.abap"},"main_keywords":{"match":"(?ix)(?<=^|\\\\s)(\\nabap-source|\\nabstract|\\naccept|\\naccepting|\\naccess|\\naccording|\\naction|\\nactivation|\\nactual|\\nadd|\\nadd-corresponding|\\nadjacent|\\nafter|\\nalias|\\naliases|\\nall|\\nallocate|\\namdp|\\nanalysis|\\nanalyzer|\\nappend|\\nappending|\\napplication|\\narchive|\\narea|\\narithmetic|\\nas|\\nascending|\\nassert|\\nassign|\\nassigned|\\nassigning|\\nassociation|\\nasynchronous|\\nat|\\nattributes|\\nauthority|\\nauthority-check|\\nauthorization|\\nauto|\\nback|\\nbackground|\\nbackward|\\nbadi|\\nbase|\\nbefore|\\nbegin|\\nbehavior|\\nbetween|\\nbinary|\\nbit|\\nblank|\\nblanks|\\nblock|\\nblocks|\\nbound|\\nboundaries|\\nbounds|\\nboxed|\\nbreak|\\nbreak-point|\\nbuffer|\\nby|\\nbypassing|\\nbyte|\\nbyte-order|\\ncall|\\ncalling|\\ncast|\\ncasting|\\ncds|\\ncentered|\\nchange|\\nchanging|\\nchannels|\\nchar-to-hex|\\ncharacter|\\ncheck|\\ncheckbox|\\ncid|\\ncircular|\\nclass|\\nclass-data|\\nclass-events|\\nclass-method|\\nclass-methods|\\nclass-pool|\\ncleanup|\\nclear|\\nclient|\\nclients|\\nclock|\\nclone|\\nclose|\\ncnt|\\ncode|\\ncollect|\\ncolor|\\ncolumn|\\ncomment|\\ncomments|\\ncommit|\\ncommon|\\ncommunication|\\ncomparing|\\ncomponent|\\ncomponents|\\ncompression|\\ncompute|\\nconcatenate|\\ncond|\\ncondense|\\ncondition|\\nconnection|\\nconstant|\\nconstants|\\ncontext|\\ncontexts|\\ncontrol|\\ncontrols|\\nconv|\\nconversion|\\nconvert|\\ncopy|\\ncorresponding|\\ncount|\\ncountry|\\ncover|\\ncreate|\\ncurrency|\\ncurrent|\\ncursor|\\ncustomer-function|\\ndata|\\ndatabase|\\ndatainfo|\\ndataset|\\ndate|\\ndaylight|\\nddl|\\ndeallocate|\\ndecimals|\\ndeclarations|\\ndeep|\\ndefault|\\ndeferred|\\ndefine|\\ndelete|\\ndeleting|\\ndemand|\\ndescending|\\ndescribe|\\ndestination|\\ndetail|\\ndetermine|\\ndialog|\\ndid|\\ndirectory|\\ndiscarding|\\ndisplay|\\ndisplay-mode|\\ndistance|\\ndistinct|\\ndivide|\\ndivide-corresponding|\\ndummy|\\nduplicate|\\nduplicates|\\nduration|\\nduring|\\ndynpro|\\nedit|\\neditor-call|\\nempty|\\nenabled|\\nenabling|\\nencoding|\\nend|\\nend-enhancement-section|\\nend-of-definition|\\nend-of-page|\\nend-of-selection|\\nend-test-injection|\\nend-test-seam|\\nendenhancement|\\nendexec|\\nendfunction|\\nendian|\\nending|\\nendmodule|\\nendprovide|\\nendselect|\\nendwith|\\nenhancement|\\nenhancement-point|\\nenhancement-section|\\nenhancements|\\nentities|\\nentity|\\nentries|\\nentry|\\nenum|\\nequiv|\\nerrors|\\nescape|\\nescaping|\\nevent|\\nevents|\\nexact|\\nexcept|\\nexception|\\nexception-table|\\nexceptions|\\nexcluding|\\nexec|\\nexecute|\\nexists|\\nexit|\\nexit-command|\\nexpanding|\\nexplicit|\\nexponent|\\nexport|\\nexporting|\\nextended|\\nextension|\\nextract|\\nfail|\\nfailed|\\nfeatures|\\nfetch|\\nfield|\\nfield-groups|\\nfield-symbols|\\nfields|\\nfile|\\nfill|\\nfilter|\\nfilters|\\nfinal|\\nfind|\\nfirst|\\nfirst-line|\\nfixed-point|\\nflush|\\nfollowing|\\nfor|\\nformat|\\nforward|\\nfound|\\nframe|\\nframes|\\nfree|\\nfrom|\\nfull|\\nfunction|\\nfunction-pool|\\ngenerate|\\nget|\\ngiving|\\ngraph|\\ngroup|\\ngroups|\\nhandle|\\nhandler|\\nhashed|\\nhaving|\\nheader|\\nheaders|\\nheading|\\nhelp-id|\\nhelp-request|\\nhide|\\nhint|\\nhold|\\nhotspot|\\nicon|\\nid|\\nidentification|\\nidentifier|\\nignore|\\nignoring|\\nimmediately|\\nimplemented|\\nimplicit|\\nimport|\\nimporting|\\nin|\\ninactive|\\nincl|\\ninclude|\\nincludes|\\nincluding|\\nincrement|\\nindex|\\nindex-line|\\nindicators|\\ninfotypes|\\ninheriting|\\ninit|\\ninitial|\\ninitialization|\\ninner|\\ninput|\\ninsert|\\ninstance|\\ninstances|\\nintensified|\\ninterface|\\ninterface-pool|\\ninterfaces|\\ninternal|\\nintervals|\\ninto|\\ninverse|\\ninverted-date|\\nis|\\njob|\\njoin|\\nkeep|\\nkeeping|\\nkernel|\\nkey|\\nkeys|\\nkeywords|\\nkind|\\nlanguage|\\nlast|\\nlate|\\nlayout|\\nleading|\\nleave|\\nleft|\\nleft-justified|\\nlegacy|\\nlength|\\nlet|\\nlevel|\\nlevels|\\nlike|\\nline|\\nline-count|\\nline-selection|\\nline-size|\\nlinefeed|\\nlines|\\nlink|\\nlist|\\nlist-processing|\\nlistbox|\\nload|\\nload-of-program|\\nlocal|\\nlocale|\\nlock|\\nlocks|\\nlog-point|\\nlogical|\\nlower|\\nmapped|\\nmapping|\\nmargin|\\nmark|\\nmask|\\nmatch|\\nmatchcode|\\nmaximum|\\nmembers|\\nmemory|\\nmesh|\\nmessage|\\nmessage-id|\\nmessages|\\nmessaging|\\nmethod|\\nmethods|\\nmode|\\nmodif|\\nmodifier|\\nmodify|\\nmodule|\\nmove|\\nmove-corresponding|\\nmultiply|\\nmultiply-corresponding|\\nname|\\nnametab|\\nnative|\\nnested|\\nnesting|\\nnew|\\nnew-line|\\nnew-page|\\nnew-section|\\nnext|\\nno-display|\\nno-extension|\\nno-gap|\\nno-gaps|\\nno-grouping|\\nno-heading|\\nno-scrolling|\\nno-sign|\\nno-title|\\nno-zero|\\nnodes|\\nnon-unicode|\\nnon-unique|\\nnumber|\\nobject|\\nobjects|\\nobjmgr|\\nobligatory|\\noccurence|\\noccurences|\\noccurrence|\\noccurrences|\\noccurs|\\nof|\\noffset|\\non|\\nonly|\\nopen|\\noptional|\\noption|\\noptions|\\norder|\\nothers|\\nout|\\nouter|\\noutput|\\noutput-length|\\noverflow|\\noverlay|\\npack|\\npackage|\\npadding|\\npage|\\nparameter|\\nparameter-table|\\nparameters|\\npart|\\npartially|\\npcre|\\nperform|\\nperforming|\\npermissions|\\npf-status|\\nplaces|\\npool|\\nposition|\\npragmas|\\npreceding|\\nprecompiled|\\npreferred|\\npreserving|\\nprimary|\\nprint|\\nprint-control|\\nprivate|\\nprivileged|\\nprocedure|\\nprocess|\\nprogram|\\nproperty|\\nprotected|\\nprovide|\\npush|\\npushbutton|\\nput|\\nquery|\\nqueue-only|\\nqueueonly|\\nquickinfo|\\nradiobutton|\\nraising|\\nrange|\\nranges|\\nread|\\nread-only|\\nreceive|\\nreceived|\\nreceiving|\\nredefinition|\\nreduce|\\nref|\\nreference|\\nrefresh|\\nregex|\\nreject|\\nrenaming|\\nreplace|\\nreplacement|\\nreplacing|\\nreport|\\nreported|\\nrequest|\\nrequested|\\nrequired|\\nreserve|\\nreset|\\nresolution|\\nrespecting|\\nresponse|\\nrestore|\\nresult|\\nresults|\\nresumable|\\nresume|\\nretry|\\nreturn|\\nreturning|\\nright|\\nright-justified|\\nrollback|\\nrows|\\nrp-provide-from-last|\\nrun|\\nsap|\\nsap-spool|\\nsave|\\nsaving|\\nscan|\\nscreen|\\nscroll|\\nscroll-boundary|\\nscrolling|\\nsearch|\\nseconds|\\nsection|\\nselect|\\nselect-options|\\nselection|\\nselection-screen|\\nselection-set|\\nselection-sets|\\nselection-table|\\nselections|\\nsend|\\nseparate|\\nseparated|\\nsession|\\nset|\\nshared|\\nshift|\\nshortdump|\\nshortdump-id|\\nsign|\\nsimple|\\nsimulation|\\nsingle|\\nsize|\\nskip|\\nskipping|\\nsmart|\\nsome|\\nsort|\\nsortable|\\nsorted|\\nsource|\\nspecified|\\nsplit|\\nspool|\\nspots|\\nsql|\\nstable|\\nstamp|\\nstandard|\\nstart-of-selection|\\nstarting|\\nstate|\\nstatement|\\nstatements|\\nstatic|\\nstatics|\\nstatusinfo|\\nstep|\\nstep-loop|\\nstop|\\nstructure|\\nstructures|\\nstyle|\\nsubkey|\\nsubmatches|\\nsubmit|\\nsubroutine|\\nsubscreen|\\nsubstring|\\nsubtract|\\nsubtract-corresponding|\\nsuffix|\\nsum|\\nsummary|\\nsupplied|\\nsupply|\\nsuppress|\\nswitch|\\nsymbol|\\nsyntax-check|\\nsyntax-trace|\\nsystem-call|\\nsystem-exceptions|\\ntab|\\ntabbed|\\ntable|\\ntables|\\ntableview|\\ntabstrip|\\ntarget|\\ntask|\\ntasks|\\ntest|\\ntest-injection|\\ntest-seam|\\ntesting|\\ntext|\\ntextpool|\\nthen|\\nthrow|\\ntime|\\ntimes|\\ntitle|\\ntitlebar|\\nto|\\ntokens|\\ntop-lines|\\ntop-of-page|\\ntrace-file|\\ntrace-table|\\ntrailing|\\ntransaction|\\ntransfer|\\ntransformation|\\ntranslate|\\ntransporting|\\ntrmac|\\ntruncate|\\ntruncation|\\ntype|\\ntype-pool|\\ntype-pools|\\ntypes|\\nuline|\\nunassign|\\nunbounded|\\nunder|\\nunicode|\\nunion|\\nunique|\\nunit|\\nunix|\\nunpack|\\nuntil|\\nunwind|\\nup|\\nupdate|\\nupper|\\nuser|\\nuser-command|\\nusing|\\nutf-8|\\nuuid|\\nvalid|\\nvalidate|\\nvalue|\\nvalue-request|\\nvalues|\\nvary|\\nvarying|\\nversion|\\nvia|\\nvisible|\\nwait|\\nwhen|\\nwhere|\\nwindow|\\nwindows|\\nwith|\\nwith-heading|\\nwith-title|\\nwithout|\\nword|\\nwork|\\nworkspace|\\nwrite|\\nxml|\\nzone\\n\\t\\t \\t)(?=\\\\s|\\\\.|:|,)","name":"keyword.control.simple.abap"},"operators":{"patterns":[{"include":"#other_operator"},{"include":"#arithmetic_operator"},{"include":"#comparison_operator"},{"include":"#logical_operator"}]},"other_operator":{"match":"(?<=\\\\s)(&&|&|\\\\?=|\\\\+=|-=|\\\\/=|\\\\*=|&&=|&=)(?=\\\\s)","name":"keyword.control.simple.abap"},"reserved_names":{"match":"(?ix)(?<=\\\\s)(me|super)(?=\\\\s|\\\\.|,|->)","name":"constant.language.abap"},"sql_functions":{"match":"(?ix)(?<=\\\\s)(\\nabap_system_timezone|\\nabap_user_timezone|\\nabs|\\nadd_days|\\nadd_months|\\nallow_precision_loss|\\nas_geo_json|\\navg|\\nbintohex|\\ncast|\\nceil|\\ncoalesce|\\nconcat_with_space|\\nconcat|\\ncorr_spearman|\\ncorr|\\ncount|\\ncurrency_conversion|\\ndatn_add_days|\\ndatn_add_months|\\ndatn_days_between|\\ndats_add_days|\\ndats_add_months|\\ndats_days_between|\\ndats_from_datn|\\ndats_is_valid|\\ndats_tims_to_tstmp|\\ndats_to_datn|\\ndayname|\\ndays_between|\\ndense_rank|\\ndivision|\\ndiv|\\nextract_day|\\nextract_hour|\\nextract_minute|\\nextract_month|\\nextract_second|\\nextract_year|\\nfirst_value|\\nfloor|\\ngrouping|\\nhextobin|\\ninitcap|\\ninstr|\\nis_valid|\\nlag|\\nlast_value|\\nlead|\\nleft|\\nlength|\\nlike_regexpr|\\nlocate_regexpr_after|\\nlocate_regexpr|\\nlocate|\\nlower|\\nlpad|\\nltrim|\\nmax|\\nmedian|\\nmin|\\nmod|\\nmonthname|\\nntile|\\noccurrences_regexpr|\\nover|\\nproduct|\\nrank|\\nreplace_regexpr|\\nreplace|\\nrigth|\\nround|\\nrow_number|\\nrpad|\\nrtrim|\\nstddev|\\nstring_agg|\\nsubstring_regexpr|\\nsubstring|\\nsum|\\ntims_from_timn|\\ntims_is_valid|\\ntims_to_timn|\\nto_blob|\\nto_clob|\\ntstmp_add_seconds|\\ntstmp_current_utctimestamp|\\ntstmp_is_valid|\\ntstmp_seconds_between|\\ntstmp_to_dats|\\ntstmp_to_dst|\\ntstmp_to_tims|\\ntstmpl_from_utcl|\\ntstmpl_to_utcl|\\nunit_conversion|\\nupper|\\nutcl_add_seconds|\\nutcl_current|\\nutcl_seconds_between|\\nuuid|\\nvar|\\nweekday\\n )(?=\\\\()","name":"entity.name.function.sql.abap"},"sql_types":{"match":"(?ix)(?<=\\\\s)(char|clnt|cuky|curr|datn|dats|dec|decfloat16|decfloat34|fltp|int1|int2|int4|int8|lang|numc|quan|raw|sstring|timn|tims|unit|utclong)(?=\\\\s|\\\\(|\\\\))","name":"entity.name.type.sql.abap"},"system_fields":{"captures":{"1":{"name":"variable.language.abap"},"2":{"name":"variable.language.abap"}},"match":"(?ix)\\\\b(sy)-(abcde|batch|binpt|calld|callr|colno|cpage|cprog|cucol|curow|datar|datlo|datum|dayst|dbcnt|dbnam|dbsysc|dyngr|dynnr|fdayw|fdpos|host|index|langu|ldbpg|lilli|linct|linno|linsz|lisel|listi|loopc|lsind|macol|mandt|marow|modno|msgid|msgli|msgno|msgty|msgv[1-4]|opsysc|pagno|pfkey|repid|saprl|scols|slset|spono|srows|staco|staro|stepl|subrc|sysid|tabix|tcode|tfill|timlo|title|tleng|tvar[0-9]|tzone|ucomm|uline|uname|uzeit|vline|wtitl|zonlo)(?=\\\\.|\\\\s)"},"text_symbols":{"captures":{"1":{"name":"keyword.control.simple.abap"},"2":{"name":"constant.numeric.abap"}},"match":"(?ix)(?<=^|\\\\s)(text)-([A-Z0-9]{1,3})(?=\\\\s|\\\\.|:|,)"}},"scopeName":"source.abap"}')),Aee=[lee]});var e8={};x(e8,{default:()=>uee});var dee,uee,t8=_(()=>{dee=Object.freeze(JSON.parse(`{"displayName":"ActionScript","fileTypes":["as"],"name":"actionscript-3","patterns":[{"include":"#comments"},{"include":"#package"},{"include":"#class"},{"include":"#interface"},{"include":"#namespace_declaration"},{"include":"#import"},{"include":"#mxml"},{"include":"#strings"},{"include":"#regexp"},{"include":"#variable_declaration"},{"include":"#numbers"},{"include":"#primitive_types"},{"include":"#primitive_error_types"},{"include":"#dynamic_type"},{"include":"#primitive_functions"},{"include":"#language_constants"},{"include":"#language_variables"},{"include":"#guess_type"},{"include":"#guess_constant"},{"include":"#other_operators"},{"include":"#arithmetic_operators"},{"include":"#logical_operators"},{"include":"#array_access_operators"},{"include":"#vector_creation_operators"},{"include":"#control_keywords"},{"include":"#other_keywords"},{"include":"#use_namespace"},{"include":"#functions"}],"repository":{"arithmetic_operators":{"match":"(\\\\+|\\\\-|/|%|(?|\\\\^|!|\\\\?)","name":"keyword.operator.actionscript.3"},"metadata":{"begin":"\\\\[\\\\s*\\\\b(\\\\w+)\\\\b","beginCaptures":{"1":{"name":"keyword.other.actionscript.3"}},"end":"\\\\]","name":"meta.metadata_info.actionscript.3","patterns":[{"include":"#metadata_info"}]},"metadata_info":{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#strings"},{"captures":{"1":{"name":"variable.parameter.actionscript.3"},"2":{"name":"keyword.operator.actionscript.3"}},"match":"(\\\\w+)\\\\s*(=)"}]},"method":{"begin":"(^|\\\\s+)((\\\\w+)\\\\s+)?((\\\\w+)\\\\s+)?((\\\\w+)\\\\s+)?((\\\\w+)\\\\s+)?(?=\\\\bfunction\\\\b)","beginCaptures":{"3":{"name":"storage.modifier.actionscript.3"},"5":{"name":"storage.modifier.actionscript.3"},"7":{"name":"storage.modifier.actionscript.3"},"8":{"name":"storage.modifier.actionscript.3"}},"end":"(?<=(;|\\\\}))","name":"meta.method.actionscript.3","patterns":[{"include":"#functions"},{"include":"#code_block"}]},"mxml":{"begin":"","name":"meta.cdata.actionscript.3","patterns":[{"include":"#comments"},{"include":"#import"},{"include":"#metadata"},{"include":"#class"},{"include":"#namespace_declaration"},{"include":"#use_namespace"},{"include":"#class_declaration"},{"include":"#method"},{"include":"#comments"},{"include":"#strings"},{"include":"#regexp"},{"include":"#numbers"},{"include":"#primitive_types"},{"include":"#primitive_error_types"},{"include":"#dynamic_type"},{"include":"#primitive_functions"},{"include":"#language_constants"},{"include":"#language_variables"},{"include":"#other_keywords"},{"include":"#guess_type"},{"include":"#guess_constant"},{"include":"#other_operators"},{"include":"#arithmetic_operators"},{"include":"#array_access_operators"},{"include":"#vector_creation_operators"},{"include":"#variable_declaration"}]},"namespace_declaration":{"captures":{"2":{"name":"storage.modifier.actionscript.3"},"3":{"name":"storage.modifier.actionscript.3"}},"match":"((\\\\w+)\\\\s+)?(namespace)\\\\s+(?:[A-Za-z0-9_\\\\$]+)","name":"meta.namespace_declaration.actionscript.3"},"numbers":{"match":"\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\\\\b","name":"constant.numeric.actionscript.3"},"object_literal":{"begin":"\\\\{","end":"\\\\}","name":"meta.object_literal.actionscript.3","patterns":[{"include":"#object_literal"},{"include":"#comments"},{"include":"#strings"},{"include":"#regexp"},{"include":"#numbers"},{"include":"#primitive_types"},{"include":"#primitive_error_types"},{"include":"#dynamic_type"},{"include":"#primitive_functions"},{"include":"#language_constants"},{"include":"#language_variables"},{"include":"#guess_type"},{"include":"#guess_constant"},{"include":"#array_access_operators"},{"include":"#vector_creation_operators"},{"include":"#functions"}]},"other_keywords":{"match":"\\\\b(as|delete|in|instanceof|is|native|new|to|typeof)\\\\b","name":"keyword.other.actionscript.3"},"other_operators":{"match":"(\\\\.|=)","name":"keyword.operator.actionscript.3"},"package":{"begin":"(^|\\\\s+)(package)\\\\b","beginCaptures":{"2":{"name":"keyword.other.actionscript.3"}},"end":"\\\\}","name":"meta.package.actionscript.3","patterns":[{"include":"#package_name"},{"include":"#variable_declaration"},{"include":"#method"},{"include":"#comments"},{"include":"#return_type"},{"include":"#import"},{"include":"#use_namespace"},{"include":"#strings"},{"include":"#numbers"},{"include":"#language_constants"},{"include":"#metadata"},{"include":"#class"},{"include":"#interface"},{"include":"#namespace_declaration"}]},"package_name":{"begin":"(?<=package)\\\\s+([\\\\w\\\\._]*)\\\\b","end":"\\\\{","name":"meta.package_name.actionscript.3"},"parameters":{"begin":"(\\\\.\\\\.\\\\.)?\\\\s*([A-Za-z\\\\_\\\\$][A-Za-z0-9_\\\\$]*)(?:\\\\s*(\\\\:)\\\\s*(?:(?:([A-Za-z\\\\$][A-Za-z0-9_\\\\$]+(?:\\\\.[A-Za-z\\\\$][A-Za-z0-9_\\\\$]+)*)(?:\\\\.<([A-Za-z\\\\$][A-Za-z0-9_\\\\$]+(?:\\\\.[A-Za-z\\\\$][A-Za-z0-9_\\\\$]+)*)>)?)|(\\\\*)))?(?:\\\\s*(=))?","beginCaptures":{"1":{"name":"keyword.operator.actionscript.3"},"2":{"name":"variable.parameter.actionscript.3"},"3":{"name":"keyword.operator.actionscript.3"},"4":{"name":"support.type.actionscript.3"},"5":{"name":"support.type.actionscript.3"},"6":{"name":"support.type.actionscript.3"},"7":{"name":"keyword.operator.actionscript.3"}},"end":",|(?=\\\\))","patterns":[{"include":"#strings"},{"include":"#numbers"},{"include":"#language_constants"},{"include":"#comments"},{"include":"#primitive_types"},{"include":"#primitive_error_types"},{"include":"#dynamic_type"},{"include":"#guess_type"},{"include":"#guess_constant"}]},"primitive_error_types":{"captures":{"1":{"name":"support.class.error.actionscript.3"}},"match":"\\\\b((Argument|Definition|Eval|Internal|Range|Reference|Security|Syntax|Type|URI|Verify)?Error)\\\\b"},"primitive_functions":{"captures":{"1":{"name":"support.function.actionscript.3"}},"match":"\\\\b(decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|escape|isFinite|isNaN|isXMLName|parseFloat|parseInt|trace|unescape)(?=\\\\s*\\\\()"},"primitive_types":{"captures":{"1":{"name":"support.class.builtin.actionscript.3"}},"match":"\\\\b(Array|Boolean|Class|Date|Function|int|JSON|Math|Namespace|Number|Object|QName|RegExp|String|uint|Vector|XML|XMLList|\\\\*(?<=a))\\\\b"},"regexp":{"begin":"(?<=[=(:,\\\\[]|^|return|&&|\\\\|\\\\||!)\\\\s*(/)(?![/*+{}?])","end":"$|(/)[igm]*","name":"string.regex.actionscript.3","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.actionscript.3"},{"match":"\\\\[(\\\\\\\\\\\\]|[^\\\\]])*\\\\]","name":"constant.character.class.actionscript.3"}]},"return_type":{"captures":{"1":{"name":"keyword.operator.actionscript.3"},"2":{"name":"support.type.actionscript.3"},"3":{"name":"support.type.actionscript.3"},"4":{"name":"support.type.actionscript.3"}},"match":"(\\\\:)\\\\s*(?:([A-Za-z\\\\$][A-Za-z0-9_\\\\$]+(?:\\\\.[A-Za-z\\\\$][A-Za-z0-9_\\\\$]+)*)(?:\\\\.<([A-Za-z\\\\$][A-Za-z0-9_\\\\$]+(?:\\\\.[A-Za-z\\\\$][A-Za-z0-9_\\\\$]+)*)>)?)|(\\\\*)"},"strings":{"patterns":[{"begin":"@\\"","end":"\\"","name":"string.quoted.verbatim.actionscript.3"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.actionscript.3","patterns":[{"include":"#escapes"}]},{"begin":"'","end":"'","name":"string.quoted.single.actionscript.3","patterns":[{"include":"#escapes"}]}]},"use_namespace":{"captures":{"2":{"name":"keyword.other.actionscript.3"},"3":{"name":"keyword.other.actionscript.3"},"4":{"name":"storage.modifier.actionscript.3"}},"match":"(^|\\\\s+|;)(use\\\\s+)?(namespace)\\\\s+(\\\\w+)\\\\s*(;|$)"},"variable_declaration":{"captures":{"2":{"name":"storage.modifier.actionscript.3"},"4":{"name":"storage.modifier.actionscript.3"},"6":{"name":"storage.modifier.actionscript.3"},"7":{"name":"storage.modifier.actionscript.3"},"8":{"name":"keyword.operator.actionscript.3"}},"match":"((static)\\\\s+)?((\\\\w+)\\\\s+)?((static)\\\\s+)?(const|var)\\\\s+(?:[A-Za-z0-9_\\\\$]+)(?:\\\\s*(:))?","name":"meta.variable_declaration.actionscript.3"},"vector_creation_operators":{"match":"(<|>)","name":"keyword.operator.actionscript.3"}},"scopeName":"source.actionscript.3"}`)),uee=[dee]});var n8={};x(n8,{default:()=>mee});var pee,mee,a8=_(()=>{pee=Object.freeze(JSON.parse(`{"displayName":"Ada","name":"ada","patterns":[{"include":"#library_unit"},{"include":"#comment"},{"include":"#use_clause"},{"include":"#with_clause"},{"include":"#pragma"},{"include":"#keyword"}],"repository":{"abort_statement":{"begin":"(?i)\\\\babort\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.statement.abort.ada","patterns":[{"match":",","name":"punctuation.ada"},{"match":"\\\\b(\\\\w|\\\\d|\\\\.|_)+\\\\b","name":"entity.name.task.ada"}]},"accept_statement":{"begin":"(?i)\\\\b(accept)\\\\s+((?:\\\\w|\\\\d|\\\\.|_)+)\\\\b","beginCaptures":{"1":{"name":"keyword.control.ada"},"2":{"name":"entity.name.accept.ada"}},"end":"(?i)(?:\\\\b(end)\\\\s*(\\\\s\\\\2)?\\\\s*)?(;)","endCaptures":{"1":{"name":"keyword.control.ada"},"2":{"name":"entity.name.accept.ada"},"3":{"name":"punctuation.ada"}},"name":"meta.statement.accept.ada","patterns":[{"begin":"(?i)\\\\bdo\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?i)\\\\b(?=end)\\\\b","patterns":[{"include":"#statement"}]},{"include":"#parameter_profile"}]},"access_definition":{"captures":{"1":{"name":"storage.visibility.ada"},"2":{"name":"storage.visibility.ada"},"3":{"name":"storage.modifier.ada"},"4":{"name":"entity.name.type.ada"}},"match":"(?i)(not\\\\s+null\\\\s+)?(access)\\\\s+(constant\\\\s+)?((?:\\\\w|\\\\d|\\\\.|_)+)\\\\b","name":"meta.declaration.access.definition.ada"},"access_type_definition":{"begin":"(?i)\\\\b(not\\\\s+null\\\\s+)?(access)\\\\b","beginCaptures":{"1":{"name":"storage.visibility.ada"},"2":{"name":"storage.visibility.ada"}},"end":"(?i)(?=(with|;))","name":"meta.declaration.type.definition.access.ada","patterns":[{"match":"(?i)\\\\ball\\\\b","name":"storage.visibility.ada"},{"match":"(?i)\\\\bconstant\\\\b","name":"storage.modifier.ada"},{"include":"#subtype_mark"}]},"actual_parameter_part":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.ada"}},"end":"\\\\)","patterns":[{"match":",","name":"punctuation.ada"},{"include":"#parameter_association"}]},"adding_operator":{"match":"(\\\\+|-|\\\\&)","name":"keyword.operator.adding.ada"},"array_aggregate":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.ada"}},"end":"\\\\)","name":"meta.definition.array.aggregate.ada","patterns":[{"match":",","name":"punctuation.ada"},{"include":"#positional_array_aggregate"},{"include":"#array_component_association"}]},"array_component_association":{"captures":{"1":{"name":"variable.name.ada"},"2":{"name":"keyword.other.ada"},"3":{"patterns":[{"match":"<>","name":"keyword.modifier.unknown.ada"},{"include":"#expression"}]}},"match":"(?i)\\\\b([^(=>)]*)\\\\s*(=>)\\\\s*([^,\\\\)]+)","name":"meta.definition.array.aggregate.component.ada"},"array_dimensions":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.ada"}},"end":"\\\\)","name":"meta.declaration.type.definition.array.dimensions.ada","patterns":[{"match":",","name":"punctuation.ada"},{"match":"(?i)\\\\brange\\\\b","name":"storage.modifier.ada"},{"match":"<>","name":"keyword.modifier.unknown.ada"},{"match":"\\\\.\\\\.","name":"keyword.ada"},{"include":"#expression"},{"patterns":[{"include":"#subtype_mark"}]}]},"array_type_definition":{"begin":"(?i)\\\\barray\\\\b","beginCaptures":{"0":{"name":"storage.modifier.ada"}},"end":"(?i)(?=(with|;))","name":"meta.declaration.type.definition.array.ada","patterns":[{"include":"#array_dimensions"},{"match":"(?i)\\\\bof\\\\b","name":"storage.modifier.ada"},{"match":"(?i)\\\\baliased\\\\b","name":"storage.visibility.ada"},{"include":"#access_definition"},{"include":"#subtype_mark"}]},"aspect_clause":{"begin":"(?i)\\\\b(for)\\\\b","beginCaptures":{"1":{"name":"keyword.ada"},"2":{"patterns":[{"include":"#subtype_mark"}]},"3":{"name":"punctuation.ada"},"5":{"name":"keyword.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.aspect.clause.ada","patterns":[{"begin":"(?i)\\\\buse\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?=;)","endCaptures":{"0":{"name":"punctuation.ada"}},"patterns":[{"include":"#record_representation_clause"},{"include":"#array_aggregate"},{"include":"#expression"}]},{"begin":"(?i)(?<=for)","captures":{"0":{"name":"keyword.ada"}},"end":"(?i)(?=use)","patterns":[{"captures":{"1":{"patterns":[{"include":"#subtype_mark"}]},"2":{"patterns":[{"include":"#attribute"}]}},"match":"((?:\\\\w|\\\\d|_)+)('((?:\\\\w|\\\\d|_)+))?"}]}]},"aspect_definition":{"begin":"=>","beginCaptures":{"0":{"name":"keyword.other.ada"}},"end":"(?i)(?=(,|;|\\\\bis\\\\b))","name":"meta.aspect.definition.ada","patterns":[{"include":"#expression"}]},"aspect_mark":{"captures":{"1":{"name":"keyword.control.directive.ada"},"2":{"name":"punctuation.ada"},"3":{"name":"entity.other.attribute-name.ada"}},"match":"(?i)\\\\b((?:\\\\w|\\\\d|\\\\.|_)+)(?:(')(class))?\\\\b","name":"meta.aspect.mark.ada"},"aspect_specification":{"begin":"(?i)\\\\bwith\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)(?=(;|\\\\bis\\\\b))","name":"meta.aspect.specification.ada","patterns":[{"match":",","name":"punctuation.ada"},{"captures":{"1":{"name":"storage.modifier.ada"},"2":{"name":"storage.modifier.ada"}},"match":"(?i)\\\\b(null)\\\\s+(record)\\\\b"},{"begin":"(?i)\\\\brecord\\\\b","beginCaptures":{"0":{"name":"storage.modifier.ada"}},"end":"(?i)\\\\b(end)\\\\s+(record)\\\\b","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"storage.modifier.ada"}},"patterns":[{"include":"#component_item"}]},{"captures":{"0":{"name":"storage.visibility.ada"}},"match":"(?i)\\\\bprivate\\\\b"},{"include":"#aspect_definition"},{"include":"#aspect_mark"},{"include":"#comment"}]},"assignment_statement":{"begin":"\\\\b((?:\\\\w|\\\\d|\\\\.|_|\\\\(|\\\\)|\\"|'|\\\\s)+)\\\\s*(:=)","beginCaptures":{"1":{"patterns":[{"match":"((?:\\\\w|\\\\d|\\\\.|_)+)","name":"variable.name.ada"},{"begin":"\\\\(","captures":{"0":{"name":"punctuation.ada"}},"end":"\\\\)","patterns":[{"include":"#expression"}]}]},"2":{"name":"keyword.operator.new.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.statement.assignment.ada","patterns":[{"include":"#expression"},{"include":"#comment"}]},"attribute":{"captures":{"1":{"name":"punctuation.ada"},"2":{"name":"entity.other.attribute-name.ada"}},"match":"(')((?:\\\\w|\\\\d|_)+)\\\\b","name":"meta.attribute.ada"},"based_literal":{"captures":{"1":{"name":"constant.numeric.base.ada"},"2":{"name":"punctuation.ada"},"3":{"name":"punctuation.ada"},"4":{"name":"punctuation.radix-point.ada"},"5":{"name":"punctuation.ada"},"6":{"name":"constant.numeric.base.ada"},"7":{"patterns":[{"include":"#exponent_part"}]}},"match":"(?i)(\\\\d(?:(_)?\\\\d)*#)[0-9a-f](?:(_)?[0-9a-f])*(?:(\\\\.)[0-9a-f](?:(_)?[0-9a-f])*)?(#)([eE](?:\\\\+|\\\\-)?\\\\d(?:_?\\\\d)*)?","name":"constant.numeric.ada"},"basic_declaration":{"patterns":[{"include":"#type_declaration"},{"include":"#subtype_declaration"},{"include":"#exception_declaration"},{"include":"#object_declaration"},{"include":"#single_protected_declaration"},{"include":"#single_task_declaration"},{"include":"#subprogram_specification"},{"include":"#package_declaration"},{"include":"#pragma"},{"include":"#comment"}]},"basic_declarative_item":{"patterns":[{"include":"#basic_declaration"},{"include":"#aspect_clause"},{"include":"#use_clause"},{"include":"#keyword"}]},"block_statement":{"begin":"(?i)\\\\bdeclare\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\b(end)(\\\\s+(?:\\\\w|\\\\d|_)+)?\\\\s*(;)","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"entity.name.label.ada"},"3":{"name":"punctuation.ada"}},"name":"meta.statement.block.ada","patterns":[{"begin":"(?i)(?<=declare)","end":"(?i)\\\\bbegin\\\\b","endCaptures":{"0":{"name":"keyword.ada"}},"patterns":[{"include":"#body"},{"include":"#basic_declarative_item"}]},{"begin":"(?i)(?<=begin)","end":"(?i)(?=end)","patterns":[{"include":"#statement"}]}]},"body":{"patterns":[{"include":"#subprogram_body"},{"include":"#package_body"},{"include":"#task_body"},{"include":"#protected_body"}]},"case_statement":{"begin":"(?i)\\\\bcase\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?i)\\\\b(end)\\\\s+(case)\\\\s*(;)","endCaptures":{"1":{"name":"keyword.control.ada"},"2":{"name":"keyword.control.ada"},"3":{"name":"punctuation.ada"}},"name":"meta.statement.case.ada","patterns":[{"begin":"(?i)(?<=case)\\\\b","end":"(?i)\\\\bis\\\\b","endCaptures":{"0":{"name":"keyword.control.ada"}},"patterns":[{"include":"#expression"}]},{"begin":"(?i)\\\\bwhen\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"=>","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.statement.case.alternative.ada","patterns":[{"match":"(?i)\\\\bothers\\\\b","name":"keyword.modifier.unknown.ada"},{"match":"\\\\|","name":"punctuation.ada"},{"include":"#expression"}]},{"include":"#statement"}]},"character_literal":{"captures":{"0":{"patterns":[{"match":"'","name":"punctuation.definition.string.ada"}]}},"match":"'.'","name":"string.quoted.single.ada"},"comment":{"patterns":[{"include":"#preprocessor"},{"include":"#comment-section"},{"include":"#comment-doc"},{"include":"#comment-line"}]},"comment-doc":{"captures":{"1":{"name":"comment.line.double-dash.ada"},"2":{"name":"punctuation.definition.tag.ada"},"3":{"name":"entity.name.tag.ada"},"4":{"name":"comment.line.double-dash.ada"}},"match":"(--)\\\\s*(@)(\\\\w+)\\\\s+(.*)$","name":"comment.block.documentation.ada"},"comment-line":{"match":"--.*$","name":"comment.line.double-dash.ada"},"comment-section":{"captures":{"1":{"name":"entity.name.section.ada"}},"match":"--\\\\s*([^-].*?[^-])\\\\s*--\\\\s*$","name":"comment.line.double-dash.ada"},"component_clause":{"begin":"(?i)\\\\b((?:\\\\w|\\\\d|_)+)\\\\b","beginCaptures":{"0":{"name":"variable.name.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.aspect.clause.record.representation.component.ada","patterns":[{"begin":"(?i)\\\\bat\\\\b","beginCaptures":{"0":{"name":"storage.modifier.ada"}},"end":"(?i)\\\\b(?=range)\\\\b","patterns":[{"include":"#expression"}]},{"include":"#range_constraint"}]},"component_declaration":{"begin":"(?i)\\\\b((?:\\\\w|\\\\d|_)+(?:\\\\s*,\\\\s*(?:\\\\w|\\\\d|_)+)?)\\\\s*(:)","beginCaptures":{"1":{"patterns":[{"match":",","name":"punctuation.ada"},{"match":"\\\\b(\\\\w|\\\\d|_)+\\\\b","name":"variable.name.ada"}]},"2":{"name":"punctuation.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.declaration.type.definition.record.component.ada","patterns":[{"patterns":[{"match":":=","name":"keyword.operator.new.ada"},{"include":"#expression"}]},{"include":"#component_definition"}]},"component_definition":{"patterns":[{"match":"(?i)\\\\baliased\\\\b","name":"storage.visibility.ada"},{"match":"(?i)\\\\brange\\\\b","name":"storage.modifier.ada"},{"match":"\\\\.\\\\.","name":"keyword.ada"},{"include":"#access_definition"},{"include":"#subtype_mark"}]},"component_item":{"patterns":[{"include":"#component_declaration"},{"include":"#variant_part"},{"include":"#comment"},{"include":"#aspect_clause"},{"captures":{"1":{"name":"keyword.ada"},"2":{"name":"punctuation.ada"}},"match":"(?i)\\\\b(null)\\\\s*(;)"}]},"composite_constraint":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.ada"}},"end":"\\\\)","name":"meta.declaration.constraint.composite.ada","patterns":[{"match":",","name":"punctuation.ada"},{"match":"\\\\.\\\\.","name":"keyword.ada"},{"captures":{"1":{"name":"variable.name.ada"},"2":{"name":"keyword.other.ada"},"3":{"patterns":[{"include":"#expression"}]}},"match":"(?i)\\\\b((?:\\\\w|\\\\d|_)+)\\\\s*(=>)\\\\s*([^,\\\\)])+\\\\b"},{"include":"#expression"}]},"decimal_literal":{"captures":{"1":{"name":"punctuation.ada"},"2":{"name":"punctuation.radix-point.ada"},"3":{"name":"punctuation.ada"},"4":{"patterns":[{"include":"#exponent_part"}]}},"match":"\\\\d(?:(_)?\\\\d)*(?:(\\\\.)\\\\d(?:(_)?\\\\d)*)?([eE](?:\\\\+|\\\\-)?\\\\d(?:_?\\\\d)*)?","name":"constant.numeric.ada"},"declarative_item":{"patterns":[{"include":"#body"},{"include":"#basic_declarative_item"}]},"delay_relative_statement":{"begin":"(?i)\\\\b(delay)\\\\b","beginCaptures":{"1":{"name":"keyword.control.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"patterns":[{"include":"#expression"}]},"delay_statement":{"patterns":[{"include":"#delay_until_statement"},{"include":"#delay_relative_statement"}]},"delay_until_statement":{"begin":"(?i)\\\\b(delay)\\\\s+(until)\\\\b","beginCaptures":{"1":{"name":"keyword.control.ada"},"2":{"name":"keyword.control.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.statement.delay.until.ada","patterns":[{"include":"#expression"}]},"derived_type_definition":{"name":"meta.declaration.type.definition.derived.ada","patterns":[{"begin":"(?i)\\\\bnew\\\\b","beginCaptures":{"0":{"name":"storage.modifier.ada"}},"end":"(?i)(?=(\\\\bwith\\\\b|;))","patterns":[{"match":"(?i)\\\\band\\\\b","name":"storage.modifier.ada"},{"include":"#subtype_mark"}]},{"match":"(?i)\\\\b(abstract|and|limited|tagged)\\\\b","name":"storage.modifier.ada"},{"match":"(?i)\\\\bprivate\\\\b","name":"storage.visibility.ada"},{"include":"#subtype_mark"}]},"discriminant_specification":{"begin":"(?i)\\\\b((?:\\\\w|\\\\d|_)+(?:\\\\s*,\\\\s*(?:\\\\w|\\\\d|_)+)?)\\\\s*(:)","beginCaptures":{"1":{"patterns":[{"match":",","name":"punctuation.ada"},{"match":"\\\\b(\\\\w|\\\\d|_)+\\\\b","name":"variable.name.ada"}]},"2":{"name":"punctuation.ada"}},"end":"(?=(;|\\\\)))","patterns":[{"begin":":=","beginCaptures":{"0":{"name":"keyword.operator.new.ada"}},"end":"(?=(;|\\\\)))","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"storage.visibility.ada"},"2":{"patterns":[{"include":"#subtype_mark"}]}},"match":"(?i)(not\\\\s+null\\\\s+)?((?:\\\\w|\\\\d|\\\\.|_)+)\\\\b"},{"include":"#access_definition"}]},"entry_body":{"begin":"(?i)\\\\b(entry)\\\\s+((?:\\\\w|\\\\d|_)+)\\\\b","beginCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"entity.name.entry.ada"}},"end":"(?i)\\\\b(end)\\\\s*(\\\\s\\\\2)\\\\s*(;)","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"entity.name.entry.ada"},"3":{"name":"punctuation.ada"}},"patterns":[{"begin":"(?i)\\\\bis\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\b(?=begin)\\\\b","patterns":[{"include":"#declarative_item"}]},{"begin":"(?i)\\\\bbegin\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\b(?=end)\\\\b","patterns":[{"include":"#statement"}]},{"begin":"(?i)\\\\bwhen\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\b(?=is)\\\\b","patterns":[{"include":"#expression"}]},{"include":"#parameter_profile"}]},"entry_declaration":{"begin":"(?i)\\\\b(?:(not)?\\\\s+(overriding)\\\\s+)?(entry)\\\\s+((?:\\\\w|\\\\d|_)+)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.ada"},"2":{"name":"storage.modifier.ada"},"3":{"name":"keyword.ada"},"4":{"name":"entity.name.entry.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"patterns":[{"include":"#parameter_profile"}]},"enumeration_type_definition":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.ada"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.declaration.type.definition.enumeration.ada","patterns":[{"match":",","name":"punctuation.ada"},{"match":"\\\\b(\\\\w|\\\\d|_)+\\\\b","name":"variable.name.ada"},{"include":"#comment"}]},"exception_declaration":{"begin":"(?i)\\\\b((?:\\\\w|\\\\d|_)+(?:\\\\s*,\\\\s*(?:\\\\w|\\\\d|_)+)?)\\\\s*(:)\\\\s*(exception)","beginCaptures":{"1":{"patterns":[{"match":",","name":"punctuation.ada"},{"match":"\\\\b(\\\\w|\\\\d|_)+\\\\b","name":"entity.name.exception.ada"}]},"2":{"name":"punctuation.ada"},"3":{"name":"storage.type.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.declaration.exception.ada","patterns":[{"match":"(?i)\\\\b(renames)\\\\s+((\\\\w|\\\\d|_|\\\\.)+)","name":"entity.name.exception.ada"}]},"exit_statement":{"begin":"(?i)\\\\bexit\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.statement.exit.ada","patterns":[{"begin":"(?i)\\\\bwhen\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?=;)","patterns":[{"include":"#expression"}]},{"match":"(?:\\\\w|\\\\d|_)+","name":"entity.name.label.ada"}]},"exponent_part":{"captures":{"1":{"name":"punctuation.exponent-mark.ada"},"2":{"name":"keyword.operator.unary.ada"},"3":{"name":"punctuation.ada"}},"match":"([eE])(\\\\+|\\\\-)?\\\\d(?:(_)?\\\\d)*"},"expression":{"name":"meta.expression.ada","patterns":[{"match":"(?i)\\\\bnull\\\\b","name":"constant.language.ada"},{"match":"=>(\\\\+)?","name":"keyword.other.ada"},{"begin":"\\\\(","captures":{"0":{"name":"punctuation.ada"}},"end":"\\\\)","patterns":[{"include":"#expression"}]},{"match":",","name":"punctuation.ada"},{"match":"\\\\.\\\\.","name":"keyword.ada"},{"include":"#value"},{"include":"#attribute"},{"include":"#comment"},{"include":"#operator"},{"match":"(?i)\\\\b(and|or|xor)\\\\b","name":"keyword.ada"},{"match":"(?i)\\\\b(if|then|else|elsif|in|for|(?","endCaptures":{"0":{"name":"keyword.other.ada"}},"patterns":[{"include":"#expression"}]},"handled_sequence_of_statements":{"patterns":[{"begin":"(?i)\\\\bexception\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\b(?=end)\\\\b","name":"meta.handler.exception.ada","patterns":[{"begin":"(?i)\\\\bwhen\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"=>","endCaptures":{"0":{"name":"keyword.other.ada"}},"patterns":[{"captures":{"1":{"name":"variable.name.ada"},"2":{"name":"punctuation.ada"}},"match":"\\\\b((?:\\\\w|\\\\d|\\\\.|_)+)\\\\s*(:)"},{"match":"\\\\|","name":"punctuation.ada"},{"match":"(?i)\\\\bothers\\\\b","name":"keyword.ada"},{"match":"(?:\\\\w|\\\\d|\\\\.|_)+","name":"entity.name.exception.ada"}]},{"include":"#statement"}]},{"include":"#statement"}]},"highest_precedence_operator":{"match":"(?i)(\\\\*\\\\*|\\\\babs\\\\b|\\\\bnot\\\\b)","name":"keyword.operator.highest-precedence.ada"},"if_statement":{"begin":"(?i)\\\\bif\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?i)\\\\b(end)\\\\s+(if)\\\\s*(;)","endCaptures":{"1":{"name":"keyword.control.ada"},"2":{"name":"keyword.control.ada"},"3":{"name":"punctuation.ada"}},"name":"meta.statement.if.ada","patterns":[{"begin":"(?i)\\\\belsif\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?i)(?:(?","name":"keyword.modifier.unknown.ada"},{"match":"(\\\\+|-|\\\\*|/)","name":"keyword.operator.arithmetic.ada"},{"match":":=","name":"keyword.operator.assignment.ada"},{"match":"(=|/=|<|>|<=|>=)","name":"keyword.operator.logic.ada"},{"match":"\\\\&","name":"keyword.operator.concatenation.ada"}]},"known_discriminant_part":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.ada"}},"end":"\\\\)","name":"meta.declaration.type.discriminant.ada","patterns":[{"match":";","name":"punctuation.ada"},{"include":"#discriminant_specification"}]},"label":{"captures":{"1":{"name":"punctuation.label.ada"},"2":{"name":"entity.name.label.ada"},"3":{"name":"punctuation.label.ada"}},"match":"(<<)?((?:\\\\w|\\\\d|_)+)\\\\s*(:[^=]|>>)","name":"meta.label.ada"},"library_unit":{"name":"meta.library.unit.ada","patterns":[{"include":"#package_body"},{"include":"#package_specification"},{"include":"#subprogram_body"}]},"loop_statement":{"patterns":[{"include":"#simple_loop_statement"},{"include":"#while_loop_statement"},{"include":"#for_loop_statement"}]},"modular_type_definition":{"begin":"(?i)\\\\b(mod)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.ada"}},"end":"(?i)(?=(with|;))","patterns":[{"match":"<>","name":"keyword.modifier.unknown.ada"},{"include":"#expression"}]},"multiplying_operator":{"match":"(?i)(\\\\*|/|\\\\bmod\\\\b|\\\\brem\\\\b)","name":"keyword.operator.multiplying.ada"},"null_statement":{"captures":{"1":{"name":"keyword.ada"},"2":{"name":"punctuation.ada"}},"match":"(?i)\\\\b(null)\\\\s*(;)","name":"meta.statement.null.ada"},"object_declaration":{"begin":"(?i)\\\\b((?:\\\\w|\\\\d|_)+(?:\\\\s*,\\\\s*(?:\\\\w|\\\\d|_)+)*)\\\\s*(:)","beginCaptures":{"1":{"patterns":[{"match":",","name":"punctuation.ada"},{"match":"\\\\b(\\\\w|\\\\d|_)+\\\\b","name":"variable.name.ada"}]},"2":{"name":"punctuation.ada"}},"end":"(;)","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.declaration.object.ada","patterns":[{"begin":"(?<=:)","end":"(?:(?=;)|(:=)|(\\\\brenames\\\\b))","endCaptures":{"1":{"name":"keyword.operator.new.ada"},"2":{"name":"keyword.ada"}},"patterns":[{"match":"(?i)\\\\bconstant\\\\b","name":"storage.modifier.ada"},{"match":"(?i)\\\\baliased\\\\b","name":"storage.visibility.ada"},{"include":"#aspect_specification"},{"include":"#subtype_mark"}]},{"begin":"(?<=:=)","end":"(?=;)","patterns":[{"include":"#aspect_specification"},{"include":"#expression"}]},{"begin":"(?<=renames)","end":"(?=;)","patterns":[{"include":"#aspect_specification"}]}]},"operator":{"patterns":[{"include":"#highest_precedence_operator"},{"include":"#multiplying_operator"},{"include":"#adding_operator"},{"include":"#relational_operator"},{"include":"#logical_operator"}]},"package_body":{"begin":"(?i)\\\\b(package)\\\\s+(body)\\\\s+((?:\\\\w|\\\\d|\\\\.|_)+)\\\\b","beginCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"keyword.ada"},"3":{"patterns":[{"include":"#package_mark"}]}},"end":"(?i)\\\\b(end)\\\\s+(\\\\3)\\\\s*(;)","endCaptures":{"1":{"name":"keyword.ada"},"2":{"patterns":[{"include":"#package_mark"}]},"3":{"name":"punctuation.ada"}},"name":"meta.declaration.package.body.ada","patterns":[{"begin":"(?i)\\\\bbegin\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\b(?=end)\\\\b","patterns":[{"include":"#handled_sequence_of_statements"}]},{"begin":"(?i)\\\\bis\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)(?=(\\\\bbegin\\\\b|\\\\bend\\\\b))","patterns":[{"match":"(?i)\\\\bprivate\\\\b","name":"keyword.ada"},{"include":"#declarative_item"},{"include":"#comment"}]},{"include":"#aspect_specification"}]},"package_declaration":{"patterns":[{"include":"#package_specification"}]},"package_mark":{"match":"\\\\b(\\\\w|\\\\d|\\\\.|_)+\\\\b","name":"entity.name.package.ada"},"package_specification":{"begin":"(?i)\\\\b(package)\\\\s+((?:\\\\w|\\\\d|\\\\.|_)+)\\\\b","beginCaptures":{"1":{"name":"keyword.ada"},"2":{"patterns":[{"include":"#package_mark"}]}},"end":"(?i)(?:\\\\b(end)\\\\s+(\\\\2)\\\\s*)?(;)","endCaptures":{"1":{"name":"keyword.ada"},"2":{"patterns":[{"include":"#package_mark"}]},"3":{"name":"punctuation.ada"}},"name":"meta.declaration.package.specification.ada","patterns":[{"begin":"(?i)\\\\bis\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?=(end|;))","patterns":[{"begin":"(?i)\\\\bnew\\\\b","beginCaptures":{"0":{"name":"keyword.operator.new.ada"}},"end":"(?=;)","name":"meta.declaration.package.generic.ada","patterns":[{"include":"#package_mark"},{"include":"#actual_parameter_part"}]},{"match":"(?i)\\\\bprivate\\\\b","name":"keyword.ada"},{"include":"#basic_declarative_item"},{"include":"#comment"}]},{"include":"#aspect_specification"}]},"parameter_association":{"patterns":[{"captures":{"1":{"name":"variable.parameter.ada"},"2":{"name":"keyword.other.ada"}},"match":"((?:\\\\w|\\\\d|_)+)\\\\s*(=>)"},{"include":"#expression"}]},"parameter_profile":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.ada"}},"end":"\\\\)","patterns":[{"match":";","name":"punctuation.ada"},{"include":"#parameter_specification"}]},"parameter_specification":{"patterns":[{"begin":":(?!=)","beginCaptures":{"0":{"name":"punctuation.ada"}},"end":"(?=[:;)])","name":"meta.type.annotation.ada","patterns":[{"match":"(?i)\\\\b(in|out)\\\\b","name":"keyword.ada"},{"include":"#subtype_mark"}]},{"begin":":=","beginCaptures":{"0":{"name":"keyword.operator.new.ada"}},"end":"(?=[:;)])","patterns":[{"include":"#expression"}]},{"match":",","name":"punctuation.ada"},{"match":"\\\\b(?:\\\\w|\\\\d|\\\\.|_)+\\\\b","name":"variable.parameter.ada"},{"include":"#comment"}]},"positional_array_aggregate":{"name":"meta.definition.array.aggregate.positional.ada","patterns":[{"captures":{"1":{"name":"keyword.ada"},"2":{"name":"keyword.other.ada"},"3":{"patterns":[{"match":"<>","name":"keyword.modifier.unknown.ada"},{"include":"#expression"}]}},"match":"(?i)\\\\b(others)\\\\s*(=>)\\\\s*([^,\\\\)]+)"},{"include":"#expression"}]},"pragma":{"begin":"(?i)\\\\b(pragma)\\\\s+((?:\\\\w|\\\\d|_)+)\\\\b","beginCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"keyword.control.directive.ada"}},"end":"(;)","endCaptures":{"1":{"name":"punctuation.ada"}},"name":"meta.pragma.ada","patterns":[{"include":"#expression"}]},"preprocessor":{"name":"meta.preprocessor.ada","patterns":[{"captures":{"1":{"name":"punctuation.definition.directive.ada"},"2":{"name":"keyword.control.directive.conditional.ada"},"3":{"patterns":[{"include":"#expression"}]}},"match":"^\\\\s*(#)(if|elsif)\\\\s+(.*)$"},{"captures":{"1":{"name":"punctuation.definition.directive.ada"},"2":{"name":"keyword.control.directive.conditional"},"3":{"name":"punctuation.ada"}},"match":"^\\\\s*(#)(end if)(;)"},{"captures":{"1":{"name":"punctuation.definition.directive.ada"},"2":{"name":"keyword.control.directive.conditional"}},"match":"^\\\\s*(#)(else)"}]},"procedure_body":{"begin":"(?i)\\\\b(overriding\\\\s+)?(procedure)\\\\s+((?:\\\\w|\\\\d|\\\\.|_)+)\\\\b","beginCaptures":{"1":{"name":"storage.visibility.ada"},"2":{"name":"keyword.ada"},"3":{"name":"entity.name.function.ada"}},"end":"(?i)(?:\\\\b(end)\\\\s+(\\\\3)\\\\s*)?(;)","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"entity.name.function.ada"},"3":{"name":"punctuation.ada"}},"name":"meta.declaration.procedure.body.ada","patterns":[{"begin":"(?i)\\\\bis\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)(?=(with|begin|;))","patterns":[{"begin":"(?i)\\\\bnew\\\\b","beginCaptures":{"0":{"name":"keyword.operator.new.ada"}},"end":"(?=;)","name":"meta.declaration.package.generic.ada","patterns":[{"match":"((?:\\\\w|\\\\d|\\\\.|_)+)","name":"entity.name.function.ada"},{"include":"#actual_parameter_part"}]},{"match":"(?i)\\\\b(null|abstract)\\\\b","name":"storage.modifier.ada"},{"include":"#declarative_item"}]},{"begin":"(?i)\\\\bbegin\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)(?=\\\\bend\\\\b)","patterns":[{"include":"#handled_sequence_of_statements"}]},{"include":"#subprogram_renaming_declaration"},{"include":"#aspect_specification"},{"include":"#parameter_profile"},{"include":"#comment"}]},"procedure_call_statement":{"begin":"(?i)\\\\b((?:\\\\w|\\\\d|_|\\\\.)+)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.statement.call.ada","patterns":[{"include":"#attribute"},{"include":"#actual_parameter_part"},{"include":"#comment"}]},"procedure_specification":{"patterns":[{"include":"#procedure_body"}]},"protected_body":{"begin":"(?i)\\\\b(protected)\\\\s+(body)\\\\s+((?:\\\\w|\\\\d|\\\\.|_)+)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.ada"},"2":{"name":"keyword.ada"},"3":{"name":"entity.name.body.ada"}},"end":"(?i)(?:\\\\b(end)\\\\s*(\\\\s\\\\3)\\\\s*)(;)","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"entity.name.body.ada"},"3":{"name":"punctuation.ada"}},"name":"meta.declaration.procedure.body.ada","patterns":[{"begin":"(?i)\\\\bis\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\b(?=end)\\\\b","patterns":[{"include":"#protected_operation_item"}]}]},"protected_element_declaration":{"patterns":[{"include":"#subprogram_specification"},{"include":"#aspect_clause"},{"include":"#entry_declaration"},{"include":"#component_declaration"},{"include":"#pragma"}]},"protected_operation_item":{"patterns":[{"include":"#subprogram_specification"},{"include":"#subprogram_body"},{"include":"#aspect_clause"},{"include":"#entry_body"}]},"raise_expression":{"begin":"(?i)\\\\braise\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?=;)","name":"meta.expression.raise.ada","patterns":[{"begin":"(?i)\\\\bwith\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?=(;|\\\\)))","patterns":[{"include":"#expression"}]},{"match":"\\\\b(\\\\w|\\\\d|_)+\\\\b","name":"entity.name.exception.ada"}]},"raise_statement":{"begin":"(?i)\\\\braise\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.statement.raise.ada","patterns":[{"begin":"(?i)\\\\bwith\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?=;)","patterns":[{"include":"#expression"}]},{"match":"\\\\b(\\\\w|\\\\d|\\\\.|_)+\\\\b","name":"entity.name.exception.ada"}]},"range_constraint":{"begin":"(?i)\\\\brange\\\\b","beginCaptures":{"0":{"name":"storage.modifier.ada"}},"end":"(?=(\\\\bwith\\\\b|;))","patterns":[{"match":"\\\\.\\\\.","name":"keyword.ada"},{"match":"<>","name":"keyword.modifier.unknown.ada"},{"include":"#expression"}]},"real_type_definition":{"name":"meta.declaration.type.definition.real-type.ada","patterns":[{"include":"#scalar_constraint"}]},"record_representation_clause":{"begin":"(?i)\\\\b(record)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.ada"}},"end":"(?i)\\\\b(end)\\\\s+(record)\\\\b","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"storage.modifier.ada"}},"name":"meta.aspect.clause.record.representation.ada","patterns":[{"include":"#component_clause"},{"include":"#comment"}]},"record_type_definition":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ada"},"2":{"name":"storage.modifier.ada"},"3":{"name":"storage.modifier.ada"},"4":{"name":"storage.modifier.ada"},"5":{"name":"storage.modifier.ada"}},"match":"(?i)\\\\b(?:(abstract)\\\\s+)?(?:(tagged)\\\\s+)?(?:(limited)\\\\s+)?(null)\\\\s+(record)\\\\b","name":"meta.declaration.type.definition.record.null.ada","patterns":[{"include":"#component_item"}]},{"begin":"(?i)\\\\b(?:(abstract)\\\\s+)?(?:(tagged)\\\\s+)?(?:(limited)\\\\s+)?(record)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.ada"},"2":{"name":"storage.modifier.ada"},"3":{"name":"storage.modifier.ada"},"4":{"name":"storage.modifier.ada"}},"end":"(?i)\\\\b(end)\\\\s+(record)\\\\b","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"storage.modifier.ada"}},"name":"meta.declaration.type.definition.record.ada","patterns":[{"include":"#component_item"}]}]},"regular_type_declaration":{"begin":"(?i)\\\\b(type)\\\\b","beginCaptures":{"1":{"name":"keyword.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.declaration.type.definition.regular.ada","patterns":[{"begin":"(?i)\\\\bis\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)(?=(with(?!\\\\s+(private))|;))","patterns":[{"include":"#type_definition"}]},{"begin":"(?i)\\\\b(?<=type)\\\\b","end":"(?i)(?=(is|;))","patterns":[{"include":"#known_discriminant_part"},{"include":"#subtype_mark"}]},{"include":"#aspect_specification"}]},"relational_operator":{"match":"(=|/=|<|<=|>|>=)","name":"keyword.operator.relational.ada"},"requeue_statement":{"begin":"(?i)\\\\brequeue\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.statement.requeue.ada","patterns":[{"match":"(?i)\\\\b(with|abort)\\\\b","name":"keyword.control.ada"},{"match":"\\\\b(\\\\w|\\\\d|\\\\.|_)+\\\\b","name":"entity.name.function.ada"}]},"result_profile":{"begin":"(?i)\\\\breturn\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?=(is|with|renames|;))","patterns":[{"include":"#subtype_mark"}]},"return_statement":{"begin":"(?i)\\\\breturn\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.statement.return.ada","patterns":[{"begin":"(?i)\\\\bdo\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?i)\\\\b(end)\\\\s+(return)\\\\s*(?=;)","endCaptures":{"1":{"name":"keyword.control.ada"},"2":{"name":"keyword.control.ada"}},"patterns":[{"include":"#label"},{"include":"#statement"}]},{"captures":{"1":{"name":"variable.name.ada"},"2":{"name":"punctuation.ada"},"3":{"name":"entity.name.type.ada"}},"match":"\\\\b((?:\\\\w|\\\\d|_)+)\\\\s*(:)\\\\s*((?:\\\\w|\\\\d|\\\\.|_)+)\\\\b"},{"match":":=","name":"keyword.operator.new.ada"},{"include":"#expression"}]},"scalar_constraint":{"name":"meta.declaration.constraint.scalar.ada","patterns":[{"begin":"(?i)\\\\b(digits|delta)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.ada"}},"end":"(?i)(?=\\\\brange\\\\b|\\\\bdigits\\\\b|\\\\bwith\\\\b|;)","patterns":[{"include":"#expression"}]},{"include":"#range_constraint"},{"include":"#expression"}]},"select_alternative":{"patterns":[{"begin":"(?i)\\\\bterminate\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}}},{"include":"#statement"}]},"select_statement":{"begin":"(?i)\\\\bselect\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?i)\\\\b(end)\\\\s+(select)\\\\b","endCaptures":{"1":{"name":"keyword.control.ada"},"2":{"name":"keyword.control.ada"}},"name":"meta.statement.select.ada","patterns":[{"begin":"(?i)\\\\b(?:(or)|(?<=select))\\\\b","beginCaptures":{"1":{"name":"keyword.control.ada"}},"end":"(?i)\\\\b(?=(or|else|end))\\\\b","patterns":[{"include":"#guard"},{"include":"#select_alternative"}]},{"begin":"(?i)\\\\belse\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?i)\\\\b(?=end)\\\\b","patterns":[{"include":"#statement"}]}]},"signed_integer_type_definition":{"patterns":[{"include":"#range_constraint"}]},"simple_loop_statement":{"begin":"(?i)\\\\bloop\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?i)\\\\b(end)\\\\s+(loop)(\\\\s+(?:\\\\w|\\\\d|_)+)?\\\\s*(;)","endCaptures":{"1":{"name":"keyword.control.ada"},"2":{"name":"keyword.control.ada"},"3":{"name":"entity.name.label.ada"},"4":{"name":"punctuation.ada"}},"name":"meta.statement.loop.ada","patterns":[{"include":"#statement"}]},"single_protected_declaration":{"begin":"(?i)\\\\b(protected)\\\\s+((?:\\\\w|\\\\d|_)+)\\\\b","beginCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"entity.name.protected.ada"}},"end":"(?i)(?:\\\\b(end)\\\\s*(\\\\s\\\\2)?\\\\s*)?(;)","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"entity.name.protected.ada"},"3":{"name":"punctuation.ada"}},"name":"meta.declaration.protected.ada","patterns":[{"begin":"(?i)\\\\bis\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)(?=(\\\\bend\\\\b|;))","patterns":[{"begin":"(?i)\\\\bnew\\\\b","captures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\bwith\\\\b","patterns":[{"match":"(?i)\\\\band\\\\b","name":"keyword.ada"},{"include":"#subtype_mark"},{"include":"#comment"}]},{"match":"(?i)\\\\bprivate\\\\b","name":"keyword.ada"},{"include":"#protected_element_declaration"},{"include":"#comment"}]},{"include":"#comment"}]},"single_task_declaration":{"begin":"(?i)\\\\b(task)\\\\s+((?:\\\\w|\\\\d|_)+)\\\\b","beginCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"entity.name.task.ada"}},"end":"(?i)(?:\\\\b(end)\\\\s*(\\\\s\\\\2)?\\\\s*)?(;)","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"entity.name.task.ada"},"3":{"name":"punctuation.ada"}},"patterns":[{"begin":"(?i)\\\\bis\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\b(?=end)\\\\b","patterns":[{"begin":"(?i)\\\\bnew\\\\b","captures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\bwith\\\\b","patterns":[{"match":"(?i)\\\\band\\\\b","name":"keyword.ada"},{"include":"#subtype_mark"},{"include":"#comment"}]},{"match":"(?i)\\\\bprivate\\\\b","name":"keyword.ada"},{"include":"#task_item"},{"include":"#comment"}]},{"include":"#comment"}]},"statement":{"patterns":[{"begin":"(?i)\\\\bbegin\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\b(end)\\\\s*(;)","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"punctuation.ada"}},"patterns":[{"include":"#handled_sequence_of_statements"}]},{"include":"#label"},{"include":"#null_statement"},{"include":"#return_statement"},{"include":"#assignment_statement"},{"include":"#exit_statement"},{"include":"#goto_statement"},{"include":"#requeue_statement"},{"include":"#delay_statement"},{"include":"#abort_statement"},{"include":"#raise_statement"},{"include":"#if_statement"},{"include":"#case_statement"},{"include":"#loop_statement"},{"include":"#block_statement"},{"include":"#select_statement"},{"include":"#accept_statement"},{"include":"#pragma"},{"include":"#procedure_call_statement"},{"include":"#comment"}]},"string_literal":{"captures":{"1":{"name":"punctuation.definition.string.ada"},"2":{"name":"punctuation.definition.string.ada"}},"match":"(\\").*?(\\")","name":"string.quoted.double.ada"},"subprogram_body":{"name":"meta.declaration.subprogram.body.ada","patterns":[{"include":"#procedure_body"},{"include":"#function_body"}]},"subprogram_renaming_declaration":{"begin":"(?i)\\\\brenames\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?=(with|;))","patterns":[{"match":"(?:\\\\w|\\\\d|_|\\\\.)+","name":"entity.name.function.ada"}]},"subprogram_specification":{"name":"meta.declaration.subprogram.specification.ada","patterns":[{"include":"#procedure_specification"},{"include":"#function_specification"}]},"subtype_declaration":{"begin":"(?i)\\\\bsubtype\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.declaration.subtype.ada","patterns":[{"begin":"(?i)\\\\bis\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?=;)","patterns":[{"match":"(?i)\\\\b(not\\\\s+null)\\\\b","name":"storage.modifier.ada"},{"include":"#composite_constraint"},{"include":"#aspect_specification"},{"include":"#subtype_indication"}]},{"begin":"(?i)(?<=subtype)","end":"(?i)\\\\b(?=is)\\\\b","patterns":[{"include":"#subtype_mark"}]}]},"subtype_indication":{"name":"meta.declaration.indication.subtype.ada","patterns":[{"include":"#scalar_constraint"},{"include":"#subtype_mark"}]},"subtype_mark":{"patterns":[{"match":"(?i)\\\\b(access|aliased|not\\\\s+null|constant)\\\\b","name":"storage.visibility.ada"},{"include":"#attribute"},{"include":"#actual_parameter_part"},{"begin":"(?i)\\\\b(procedure|function)\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?=(;|\\\\)))","patterns":[{"include":"#parameter_profile"},{"begin":"(?i)\\\\breturn\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?=(;|\\\\)))","patterns":[{"include":"#subtype_mark"}]}]},{"captures":{"0":{"patterns":[{"match":"[_.]","name":"punctuation.ada"}]}},"match":"\\\\b(?:\\\\w|\\\\d|\\\\.|_)+\\\\b","name":"entity.name.type.ada"},{"include":"#comment"}]},"task_body":{"begin":"(?i)\\\\b(task)\\\\s+(body)\\\\s+((\\\\w|\\\\d|\\\\.|_)+)\\\\b","beginCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"keyword.ada"},"3":{"name":"entity.name.task.ada"}},"end":"(?i)(?:\\\\b(end)\\\\s*(?:\\\\s(\\\\3))?\\\\s*)?(;)","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"entity.name.task.ada"},"3":{"name":"punctuation.ada"}},"name":"meta.declaration.task.body.ada","patterns":[{"begin":"(?i)\\\\bbegin\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)(?=end)","patterns":[{"include":"#handled_sequence_of_statements"}]},{"include":"#aspect_specification"},{"begin":"(?i)\\\\bis\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)(?=(with|begin))","patterns":[{"include":"#declarative_item"}]}]},"task_item":{"patterns":[{"include":"#aspect_clause"},{"include":"#entry_declaration"}]},"task_type_declaration":{"begin":"(?i)\\\\b(task)\\\\s+(type)\\\\s+((\\\\w|\\\\d|\\\\.|_)+)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.ada"},"2":{"name":"keyword.ada"},"3":{"name":"entity.name.task.ada"}},"end":"(?i)(?:\\\\b(end)\\\\s*(?:\\\\s(\\\\3))?\\\\s*)?(;)","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"entity.name.task.ada"},"3":{"name":"punctuation.ada"}},"name":"meta.declaration.type.task.ada","patterns":[{"include":"#known_discriminant_part"},{"begin":"(?i)\\\\bis\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\b(?=end)\\\\b","patterns":[{"begin":"(?i)\\\\bnew\\\\b","captures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\bwith\\\\b","patterns":[{"match":"(?i)\\\\band\\\\b","name":"keyword.ada"},{"include":"#subtype_mark"},{"include":"#comment"}]},{"match":"(?i)\\\\bprivate\\\\b","name":"keyword.ada"},{"include":"#task_item"},{"include":"#comment"}]},{"include":"#comment"}]},"type_declaration":{"name":"meta.declaration.type.ada","patterns":[{"include":"#full_type_declaration"}]},"type_definition":{"name":"meta.declaration.type.definition.ada","patterns":[{"include":"#enumeration_type_definition"},{"include":"#integer_type_definition"},{"include":"#real_type_definition"},{"include":"#array_type_definition"},{"include":"#record_type_definition"},{"include":"#access_type_definition"},{"include":"#interface_type_definition"},{"include":"#derived_type_definition"}]},"use_clause":{"name":"meta.context.use.ada","patterns":[{"include":"#use_type_clause"},{"include":"#use_package_clause"}]},"use_package_clause":{"begin":"(?i)\\\\buse\\\\b","beginCaptures":{"0":{"name":"keyword.other.using.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.context.use.package.ada","patterns":[{"match":",","name":"punctuation.ada"},{"include":"#package_mark"}]},"use_type_clause":{"begin":"(?i)\\\\b(use)\\\\s+(?:(all)\\\\s+)?(type)\\\\b","beginCaptures":{"1":{"name":"keyword.other.using.ada"},"2":{"name":"keyword.modifier.ada"},"3":{"name":"keyword.modifier.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.context.use.type.ada","patterns":[{"match":",","name":"punctuation.ada"},{"include":"#subtype_mark"}]},"value":{"patterns":[{"include":"#based_literal"},{"include":"#decimal_literal"},{"include":"#character_literal"},{"include":"#string_literal"}]},"variant_part":{"begin":"(?i)\\\\bcase\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"(?i)\\\\b(end)\\\\s+(case);","endCaptures":{"1":{"name":"keyword.ada"},"2":{"name":"keyword.ada"},"3":{"name":"punctuation.ada"}},"name":"meta.declaration.variant.ada","patterns":[{"begin":"(?i)\\\\b(?<=case)\\\\b","end":"(?i)\\\\bis\\\\b","endCaptures":{"0":{"name":"keyword.ada"}},"patterns":[{"match":"(?:\\\\w|\\\\d|_)+","name":"variable.name.ada"},{"include":"#comment"}]},{"begin":"(?i)\\\\b(?<=is)\\\\b","end":"(?i)\\\\b(?=end)\\\\b","patterns":[{"begin":"(?i)\\\\bwhen\\\\b","beginCaptures":{"0":{"name":"keyword.ada"}},"end":"=>","endCaptures":{"0":{"name":"keyword.other.ada"}},"patterns":[{"match":"\\\\|","name":"punctuation.ada"},{"match":"(?i)\\\\bothers\\\\b","name":"keyword.ada"},{"include":"#expression"}]},{"include":"#component_item"}]}]},"while_loop_statement":{"begin":"(?i)\\\\bwhile\\\\b","beginCaptures":{"0":{"name":"keyword.control.ada"}},"end":"(?i)\\\\b(end)\\\\s+(loop)(\\\\s+(?:\\\\w|\\\\d|_)+)?\\\\s*(;)","endCaptures":{"1":{"name":"keyword.control.ada"},"2":{"name":"keyword.control.ada"},"3":{"name":"entity.name.label.ada"},"4":{"name":"punctuation.ada"}},"name":"meta.statement.loop.while.ada","patterns":[{"begin":"(?i)(?<=while)\\\\b","end":"(?i)\\\\bloop\\\\b","endCaptures":{"0":{"name":"keyword.control.ada"}},"patterns":[{"include":"#expression"}]},{"include":"#statement"}]},"with_clause":{"begin":"(?i)\\\\b(?:(limited)\\\\s+)?(?:(private)\\\\s+)?(with)\\\\b","beginCaptures":{"1":{"name":"keyword.modifier.ada"},"2":{"name":"storage.visibility.ada"},"3":{"name":"keyword.other.using.ada"}},"end":";","endCaptures":{"0":{"name":"punctuation.ada"}},"name":"meta.context.with.ada","patterns":[{"match":",","name":"punctuation.ada"},{"include":"#package_mark"}]}},"scopeName":"source.ada"}`)),mee=[pee]});var r8={};x(r8,{default:()=>J});var gee,J,Qe=_(()=>{gee=Object.freeze(JSON.parse(`{"displayName":"JavaScript","name":"javascript","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?]|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^yield|[^\\\\._$[:alnum:]]yield|^throw|[^\\\\._$[:alnum:]]throw|^in|[^\\\\._$[:alnum:]]in|^of|[^\\\\._$[:alnum:]]of|^typeof|[^\\\\._$[:alnum:]]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.js"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js"}},"name":"meta.objectliteral.js","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js"},"2":{"name":"punctuation.definition.binding-pattern.array.js"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js"},"2":{"name":"punctuation.definition.binding-pattern.array.js"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.js"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.js"}},"name":"meta.array.literal.js","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.js"},"2":{"name":"variable.parameter.js"}},"match":"(?:(?)","name":"meta.arrow.js"},{"begin":"(?:(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.js"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.js","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.js"}},"end":"((?<=\\\\}|\\\\S)(?)|((?!\\\\{)(?=\\\\S)))(?!\\\\/[\\\\/\\\\*])","name":"meta.arrow.js","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.js","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=[:])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.js"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.js","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.js"},"2":{"name":"entity.name.tag.directive.js"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.js"}},"name":"meta.tag.js","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.js"},{"match":"=","name":"keyword.operator.assignment.js"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"()|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.js"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"begin":"((@)template)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.js"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!'))|[^*\\\\\\\\])*?'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([''\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.js"},"2":{"name":"keyword.operator.rest.js"},"3":{"name":"variable.parameter.js variable.language.this.js"},"4":{"name":"variable.parameter.js"},"5":{"name":"keyword.operator.optional.js"}},"match":"(?:(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.js"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.js"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.js"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.js"},{"captures":{"1":{"name":"keyword.operator.logical.js"},"2":{"name":"keyword.operator.assignment.compound.js"},"3":{"name":"keyword.operator.arithmetic.js"}},"match":"(?<=[_$[:alnum:]])(\\\\!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"\\\\!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.js"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.js"},{"match":"\\\\=","name":"keyword.operator.assignment.js"},{"match":"--","name":"keyword.operator.decrement.js"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.js"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.js"},{"begin":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))","end":"(?:(/=)|(?:(/)(?!\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)))","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.js"},"2":{"name":"keyword.operator.arithmetic.js"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.js"},"2":{"name":"keyword.operator.arithmetic.js"}},"match":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?:(/=)|(?:(/)(?![/*])))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#jsx"},{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"match":"\\\\#?[_$[:alpha:]][_$[:alnum:]]*","name":"meta.definition.property.js variable.object.property.js"},{"match":"\\\\?","name":"keyword.operator.optional.js"},{"match":"\\\\!","name":"keyword.operator.definiteassignment.js"}]},"for-loop":{"begin":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","name":"meta.function-call.js","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","end":"(?<=\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","name":"meta.function-call.js","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.js punctuation.accessor.optional.js"},{"match":"\\\\!","name":"meta.function-call.js keyword.operator.definiteassignment.js"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.js"}]},"function-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.js"},"2":{"name":"punctuation.accessor.optional.js"},"3":{"name":"variable.other.constant.property.js"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.js"},"2":{"name":"punctuation.accessor.optional.js"},"3":{"name":"variable.other.property.js"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"},{"match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","name":"variable.other.constant.js"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"variable.other.readwrite.js"}]},"if-statement":{"patterns":[{"begin":"(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|(===|!==|==|!=)|(([\\\\&\\\\~\\\\^\\\\|]\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?))","end":"(/>)|(?:())","endCaptures":{"1":{"name":"punctuation.definition.tag.end.js"},"2":{"name":"punctuation.definition.tag.begin.js"},"3":{"name":"entity.name.tag.namespace.js"},"4":{"name":"punctuation.separator.namespace.js"},"5":{"name":"entity.name.tag.js"},"6":{"name":"support.class.component.js"},"7":{"name":"punctuation.definition.tag.end.js"}},"name":"meta.tag.js","patterns":[{"begin":"(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.js"},"2":{"name":"entity.name.tag.namespace.js"},"3":{"name":"punctuation.separator.namespace.js"},"4":{"name":"entity.name.tag.js"},"5":{"name":"support.class.component.js"}},"end":"(?=[/]?>)","patterns":[{"include":"#comment"},{"include":"#type-arguments"},{"include":"#jsx-tag-attributes"}]},{"begin":"(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.end.js"}},"contentName":"meta.jsx.children.js","end":"(?=|/\\\\*|//)"},"jsx-tag-attributes":{"begin":"\\\\s+","end":"(?=[/]?>)","name":"meta.tag.attributes.js","patterns":[{"include":"#comment"},{"include":"#jsx-tag-attribute-name"},{"include":"#jsx-tag-attribute-assignment"},{"include":"#jsx-string-double-quoted"},{"include":"#jsx-string-single-quoted"},{"include":"#jsx-evaluated-code"},{"include":"#jsx-tag-attributes-illegal"}]},"jsx-tag-attributes-illegal":{"match":"\\\\S+","name":"invalid.illegal.attribute.js"},"jsx-tag-in-expression":{"begin":"(?:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^default|[^\\\\._$[:alnum:]]default|^yield|[^\\\\._$[:alnum:]]yield|^)\\\\s*(?!<\\\\s*[_$[:alpha:]][_$[:alnum:]]*((\\\\s+extends\\\\s+[^=>])|,))(?=(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","end":"(?!(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","patterns":[{"include":"#jsx-tag"}]},"jsx-tag-without-attributes":{"begin":"(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.js"},"2":{"name":"entity.name.tag.namespace.js"},"3":{"name":"punctuation.separator.namespace.js"},"4":{"name":"entity.name.tag.js"},"5":{"name":"support.class.component.js"},"6":{"name":"punctuation.definition.tag.end.js"}},"contentName":"meta.jsx.children.js","end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.js"},"2":{"name":"entity.name.tag.namespace.js"},"3":{"name":"punctuation.separator.namespace.js"},"4":{"name":"entity.name.tag.js"},"5":{"name":"support.class.component.js"},"6":{"name":"punctuation.definition.tag.end.js"}},"name":"meta.tag.without-attributes.js","patterns":[{"include":"#jsx-children"}]},"jsx-tag-without-attributes-in-expression":{"begin":"(?:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^default|[^\\\\._$[:alnum:]]default|^yield|[^\\\\._$[:alnum:]]yield|^)\\\\s*(?=(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","end":"(?!(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","patterns":[{"include":"#jsx-tag-without-attributes"}]},"label":{"patterns":[{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.js"},"2":{"name":"punctuation.separator.label.js"}},"end":"(?<=\\\\})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.js"},"2":{"name":"punctuation.separator.label.js"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.js"},"2":{"name":"storage.modifier.js"},"3":{"name":"storage.modifier.js"},"4":{"name":"storage.modifier.async.js"},"5":{"name":"keyword.operator.new.js"},"6":{"name":"keyword.generator.asterisk.js"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.js","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.js"},"2":{"name":"storage.modifier.js"},"3":{"name":"storage.modifier.js"},"4":{"name":"storage.modifier.async.js"},"5":{"name":"storage.type.property.js"},"6":{"name":"keyword.generator.asterisk.js"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.js","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=((\\\\b(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.js"},"2":{"name":"storage.type.property.js"},"3":{"name":"keyword.generator.asterisk.js"}},"end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.js","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.js"},"2":{"name":"storage.type.property.js"},"3":{"name":"keyword.generator.asterisk.js"}},"end":"(?=\\\\(|\\\\<)","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[\\\\(\\\\<]))","name":"meta.object.member.js meta.object-literal.key.js","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\\\'\\\\\\"\\\\\`])","end":"(?=:)|((?<=[\\\\'\\\\\\"\\\\\`])(?=((\\\\s*[\\\\(\\\\<,}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.js meta.object-literal.key.js","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.js"},{"captures":{"0":{"name":"meta.object-literal.key.js"}},"match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.js"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.js"}},"end":"(?=,|\\\\})","name":"meta.object.member.js","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.js"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.js"},{"captures":{"1":{"name":"keyword.control.as.js"},"2":{"name":"storage.modifier.js"}},"match":"(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|^|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js"},"2":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=\\\\<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.js"}},"end":"(?<=\\\\>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=\\\\>)\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js"},"2":{"name":"punctuation.definition.binding-pattern.array.js"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.js"}},"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.js"},"2":{"name":"keyword.operator.rest.js"},"3":{"name":"variable.parameter.js variable.language.this.js"},"4":{"name":"variable.parameter.js"},"5":{"name":"keyword.operator.optional.js"}},"match":"(?:(?])","name":"meta.type.annotation.js","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(=,])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(=,]|=>|^return|[^\\\\._$[:alnum:]]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.js"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.js meta.return.type.arrow.js keyword.operator.type.annotation.js"}},"contentName":"meta.arrow.js meta.return.type.arrow.js","end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[\\\\()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^\\\\)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([dgimsuvy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.js"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.js"},"2":{"name":"keyword.other.js"}},"name":"string.regexp.js","patterns":[{"include":"#regexp"}]},{"begin":"((?"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))\\\\-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js"}},"end":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$)))"},{"captures":{"1":{"name":"support.type.object.module.js"},"2":{"name":"support.type.object.module.js"},"3":{"name":"punctuation.accessor.js"},"4":{"name":"punctuation.accessor.optional.js"},"5":{"name":"support.type.object.module.js"}},"match":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\`)","end":"(?=\`)","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.tagged-template.js"}]},{"include":"#type-arguments"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.js"}},"end":"(?=\`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.js"}},"contentName":"meta.embedded.line.js","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.js"}},"name":"meta.template.expression.js","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?(\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.js"},"2":{"name":"string.template.js punctuation.definition.string.template.begin.js"}},"contentName":"string.template.js","end":"\`","endCaptures":{"0":{"name":"string.template.js punctuation.definition.string.template.end.js"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.js"}},"contentName":"meta.embedded.line.js","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.js"}},"name":"meta.template.expression.js","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*[^[:digit:]])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.js"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.js"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?])|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.js","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js"}},"end":"(?])|(?=^\\\\s*$)|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.js","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.js"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.js"}},"name":"meta.type.parameters.js","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.js"}},"match":"(?)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?))))))","end":"(?<=\\\\))","name":"meta.type.function.js","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.js"}},"end":"(?)(?:\\\\?]|//|$)","name":"meta.type.function.return.js","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.js"}},"end":"(?)(?]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.js","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.js"},"2":{"name":"entity.name.type.js"},"3":{"name":"keyword.operator.expression.extends.js"}},"match":"(?)","endCaptures":{"1":{"name":"meta.type.parameters.js punctuation.definition.typeparameters.end.js"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.js"},"2":{"name":"meta.type.parameters.js punctuation.definition.typeparameters.begin.js"}},"contentName":"meta.type.parameters.js","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.js punctuation.definition.typeparameters.end.js"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.js"},"2":{"name":"punctuation.accessor.js"},"3":{"name":"punctuation.accessor.optional.js"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"entity.name.type.js"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.js"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js"}},"name":"meta.object.type.js","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.js"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.js"}},"end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"begin":"[&|]","beginCaptures":{"0":{"name":"keyword.operator.type.js"}},"end":"(?=\\\\S)"},{"match":"(?)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.js"}},"name":"meta.type.parameters.js","patterns":[{"include":"#comment"},{"match":"(?)","name":"keyword.operator.assignment.js"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"name":"meta.type.paren.cover.js","patterns":[{"captures":{"1":{"name":"storage.modifier.js"},"2":{"name":"keyword.operator.rest.js"},"3":{"name":"entity.name.function.js variable.language.this.js"},"4":{"name":"entity.name.function.js"},"5":{"name":"keyword.operator.optional.js"}},"match":"(?:(?)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.js"},"2":{"name":"keyword.operator.rest.js"},"3":{"name":"variable.parameter.js variable.language.this.js"},"4":{"name":"variable.parameter.js"},"5":{"name":"keyword.operator.optional.js"}},"match":"(?:(?:&|{\\\\?]|(extends\\\\s+)|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.js variable.other.constant.js entity.name.function.js"}},"end":"(?=$|^|[;,=}]|((?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.js entity.name.function.js"},"2":{"name":"keyword.operator.definiteassignment.js"}},"end":"(?=$|^|[;,=}]|((?\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.js"}},"end":"(?=$|^|[,);}\\\\]]|((?ue});var fee,ue,rt=_(()=>{fee=Object.freeze(JSON.parse(`{"displayName":"CSS","name":"css","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"include":"#combinators"},{"include":"#selector"},{"include":"#at-rules"},{"include":"#rule-list"}],"repository":{"at-rules":{"patterns":[{"begin":"\\\\A(?:\\\\xEF\\\\xBB\\\\xBF)?(?i:(?=\\\\s*@charset\\\\b))","end":";|(?=$)","endCaptures":{"0":{"name":"punctuation.terminator.rule.css"}},"name":"meta.at-rule.charset.css","patterns":[{"captures":{"1":{"name":"invalid.illegal.not-lowercase.charset.css"},"2":{"name":"invalid.illegal.leading-whitespace.charset.css"},"3":{"name":"invalid.illegal.no-whitespace.charset.css"},"4":{"name":"invalid.illegal.whitespace.charset.css"},"5":{"name":"invalid.illegal.not-double-quoted.charset.css"},"6":{"name":"invalid.illegal.unclosed-string.charset.css"},"7":{"name":"invalid.illegal.unexpected-characters.charset.css"}},"match":"\\\\G((?!@charset)@\\\\w+)|\\\\G(\\\\s+)|(@charset\\\\S[^;]*)|(?<=@charset)(\\\\x20{2,}|\\\\t+)|(?<=@charset\\\\x20)([^\\";]+)|(\\"[^\\"]+$)|(?<=\\")([^;]+)"},{"captures":{"1":{"name":"keyword.control.at-rule.charset.css"},"2":{"name":"punctuation.definition.keyword.css"}},"match":"((@)charset)(?=\\\\s)"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.css"}},"end":"\\"|$","endCaptures":{"0":{"name":"punctuation.definition.string.end.css"}},"name":"string.quoted.double.css","patterns":[{"begin":"(?:\\\\G|^)(?=(?:[^\\"])+$)","end":"$","name":"invalid.illegal.unclosed.string.css"}]}]},{"begin":"(?i)((@)import)(?:\\\\s+|$|(?=['\\"]|/\\\\*))","beginCaptures":{"1":{"name":"keyword.control.at-rule.import.css"},"2":{"name":"punctuation.definition.keyword.css"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.rule.css"}},"name":"meta.at-rule.import.css","patterns":[{"begin":"\\\\G\\\\s*(?=/\\\\*)","end":"(?<=\\\\*/)\\\\s*","patterns":[{"include":"#comment-block"}]},{"include":"#string"},{"include":"#url"},{"include":"#media-query-list"}]},{"begin":"(?i)((@)font-face)(?=\\\\s*|{|/\\\\*|$)","beginCaptures":{"1":{"name":"keyword.control.at-rule.font-face.css"},"2":{"name":"punctuation.definition.keyword.css"}},"end":"(?!\\\\G)","name":"meta.at-rule.font-face.css","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"include":"#rule-list"}]},{"begin":"(?i)(@)page(?=[\\\\s:{]|/\\\\*|$)","captures":{"0":{"name":"keyword.control.at-rule.page.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*($|[:{;]))","name":"meta.at-rule.page.css","patterns":[{"include":"#rule-list"}]},{"begin":"(?i)(?=@media(\\\\s|\\\\(|/\\\\*|$))","end":"(?<=})(?!\\\\G)","patterns":[{"begin":"(?i)\\\\G(@)media","beginCaptures":{"0":{"name":"keyword.control.at-rule.media.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*[{;])","name":"meta.at-rule.media.header.css","patterns":[{"include":"#media-query-list"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.media.begin.bracket.curly.css"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.media.end.bracket.curly.css"}},"name":"meta.at-rule.media.body.css","patterns":[{"include":"$self"}]}]},{"begin":"(?i)(?=@counter-style([\\\\s'\\"{;]|/\\\\*|$))","end":"(?<=})(?!\\\\G)","patterns":[{"begin":"(?i)\\\\G(@)counter-style","beginCaptures":{"0":{"name":"keyword.control.at-rule.counter-style.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*{)","name":"meta.at-rule.counter-style.header.css","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"captures":{"0":{"patterns":[{"include":"#escapes"}]}},"match":"(?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*","name":"variable.parameter.style-name.css"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.property-list.begin.bracket.curly.css"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.property-list.end.bracket.curly.css"}},"name":"meta.at-rule.counter-style.body.css","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"include":"#rule-list-innards"}]}]},{"begin":"(?i)(?=@document([\\\\s'\\"{;]|/\\\\*|$))","end":"(?<=})(?!\\\\G)","patterns":[{"begin":"(?i)\\\\G(@)document","beginCaptures":{"0":{"name":"keyword.control.at-rule.document.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*[{;])","name":"meta.at-rule.document.header.css","patterns":[{"begin":"(?i)(?>>","name":"invalid.deprecated.combinator.css"},{"match":">>|>|\\\\+|~","name":"keyword.operator.combinator.css"}]},"commas":{"match":",","name":"punctuation.separator.list.comma.css"},"comment-block":{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.css"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.css"}},"name":"comment.block.css"},"escapes":{"patterns":[{"match":"\\\\\\\\[0-9a-fA-F]{1,6}","name":"constant.character.escape.codepoint.css"},{"begin":"\\\\\\\\$\\\\s*","end":"^(?<:=]|\\\\)|/\\\\*) # Terminates cleanly"},"media-query":{"begin":"\\\\G","end":"(?=\\\\s*[{;])","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"include":"#media-types"},{"match":"(?i)(?<=\\\\s|^|,|\\\\*/)(only|not)(?=\\\\s|{|/\\\\*|$)","name":"keyword.operator.logical.$1.media.css"},{"match":"(?i)(?<=\\\\s|^|\\\\*/|\\\\))and(?=\\\\s|/\\\\*|$)","name":"keyword.operator.logical.and.media.css"},{"match":",(?:(?:\\\\s*,)+|(?=\\\\s*[;){]))","name":"invalid.illegal.comma.css"},{"include":"#commas"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.css"}},"patterns":[{"include":"#media-features"},{"include":"#media-feature-keywords"},{"match":":","name":"punctuation.separator.key-value.css"},{"match":">=|<=|=|<|>","name":"keyword.operator.comparison.css"},{"captures":{"1":{"name":"constant.numeric.css"},"2":{"name":"keyword.operator.arithmetic.css"},"3":{"name":"constant.numeric.css"}},"match":"(\\\\d+)\\\\s*(/)\\\\s*(\\\\d+)","name":"meta.ratio.css"},{"include":"#numeric-values"},{"include":"#comment-block"}]}]},"media-query-list":{"begin":"(?=\\\\s*[^{;])","end":"(?=\\\\s*[{;])","patterns":[{"include":"#media-query"}]},"media-types":{"captures":{"1":{"name":"support.constant.media.css"},"2":{"name":"invalid.deprecated.constant.media.css"}},"match":"(?xi)\\n(?<=^|\\\\s|,|\\\\*/)\\n(?:\\n # Valid media types\\n (all|print|screen|speech)\\n |\\n # Deprecated in Media Queries 4: http://dev.w3.org/csswg/mediaqueries/#media-types\\n (aural|braille|embossed|handheld|projection|tty|tv)\\n)\\n(?=$|[{,\\\\s;]|/\\\\*)"},"numeric-values":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.constant.css"}},"match":"(#)(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})\\\\b","name":"constant.other.color.rgb-value.hex.css"},{"captures":{"1":{"name":"keyword.other.unit.percentage.css"},"2":{"name":"keyword.other.unit.\${2:/downcase}.css"}},"match":"(?xi) (?+~|]|/\\\\*)|(?:[-a-zA-Z_0-9]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*(?:[!\\"'%&(*;+~|]|/\\\\*)","name":"entity.other.attribute-name.class.css"},{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"patterns":[{"include":"#escapes"}]}},"match":"(\\\\#)(-?(?![0-9])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+)(?=$|[\\\\s,.\\\\#)\\\\[:{>+~|]|/\\\\*)","name":"entity.other.attribute-name.id.css"},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.entity.begin.bracket.square.css"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.entity.end.bracket.square.css"}},"name":"meta.attribute-selector.css","patterns":[{"include":"#comment-block"},{"include":"#string"},{"captures":{"1":{"name":"storage.modifier.ignore-case.css"}},"match":"(?<=[\\"'\\\\s]|^|\\\\*/)\\\\s*([iI])\\\\s*(?=[\\\\s\\\\]]|/\\\\*|$)"},{"captures":{"1":{"name":"string.unquoted.attribute-value.css","patterns":[{"include":"#escapes"}]}},"match":"(?<==)\\\\s*((?!/\\\\*)(?:[^\\\\\\\\\\"'\\\\s\\\\]]|\\\\\\\\.)+)"},{"include":"#escapes"},{"match":"[~|^$*]?=","name":"keyword.operator.pattern.css"},{"match":"\\\\|","name":"punctuation.separator.css"},{"captures":{"1":{"name":"entity.other.namespace-prefix.css","patterns":[{"include":"#escapes"}]}},"match":"(-?(?!\\\\d)(?:[\\\\w-]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+|\\\\*)(?=\\\\|(?!\\\\s|=|$|\\\\])(?:-?(?!\\\\d)|[\\\\\\\\\\\\w-]|[^\\\\x00-\\\\x7F]))"},{"captures":{"1":{"name":"entity.other.attribute-name.css","patterns":[{"include":"#escapes"}]}},"match":"(-?(?!\\\\d)(?>[\\\\w-]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+)\\\\s*(?=[~|^\\\\]$*=]|/\\\\*)"}]},{"include":"#pseudo-classes"},{"include":"#pseudo-elements"},{"include":"#functional-pseudo-classes"},{"match":"(?\\\\s,.\\\\#|){:\\\\[]|/\\\\*|$)","name":"entity.name.tag.css"},"unicode-range":{"captures":{"0":{"name":"constant.other.unicode-range.css"},"1":{"name":"punctuation.separator.dash.unicode-range.css"}},"match":"(?ce});var bee,ce,Ye=_(()=>{Qe();rt();bee=Object.freeze(JSON.parse(`{"displayName":"HTML","injections":{"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)":{"comment":"Uses R: to ensure this matches after any other injections.","patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"html","patterns":[{"include":"#xml-processing"},{"include":"#comment"},{"include":"#doctype"},{"include":"#cdata"},{"include":"#tags-valid"},{"include":"#tags-invalid"},{"include":"#entities"}],"repository":{"attribute":{"patterns":[{"begin":"(s(hape|cope|t(ep|art)|ize(s)?|p(ellcheck|an)|elected|lot|andbox|rc(set|doc|lang)?)|h(ttp-equiv|i(dden|gh)|e(ight|aders)|ref(lang)?)|n(o(nce|validate|module)|ame)|c(h(ecked|arset)|ite|o(nt(ent(editable)?|rols)|ords|l(s(pan)?|or))|lass|rossorigin)|t(ype(mustmatch)?|itle|a(rget|bindex)|ranslate)|i(s(map)?|n(tegrity|putmode)|tem(scope|type|id|prop|ref)|d)|op(timum|en)|d(i(sabled|r(name)?)|ownload|e(coding|f(er|ault))|at(etime|a)|raggable)|usemap|p(ing|oster|la(ysinline|ceholder)|attern|reload)|enctype|value|kind|for(m(novalidate|target|enctype|action|method)?)?|w(idth|rap)|l(ist|o(op|w)|a(ng|bel))|a(s(ync)?|c(ce(sskey|pt(-charset)?)|tion)|uto(c(omplete|apitalize)|play|focus)|l(t|low(usermedia|paymentrequest|fullscreen))|bbr)|r(ows(pan)?|e(versed|quired|ferrerpolicy|l|adonly))|m(in(length)?|u(ted|ltiple)|e(thod|dia)|a(nifest|x(length)?)))(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"HTML5 attributes, not event handlers","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.$1.html","patterns":[{"include":"#attribute-interior"}]},{"begin":"style(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"HTML5 style attribute","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.style.html","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.key-value.html"}},"end":"(?<=[^\\\\s=])(?!\\\\s*=)|(?=/?>)","patterns":[{"begin":"(?=[^\\\\s=<>\`/]|/(?!>))","end":"(?!\\\\G)","name":"meta.embedded.line.css","patterns":[{"captures":{"0":{"name":"source.css"}},"match":"([^\\\\s\\"'=<>\`/]|/(?!>))+","name":"string.unquoted.html"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"source.css","end":"(\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"},"1":{"name":"source.css"}},"name":"string.quoted.double.html","patterns":[{"include":"#entities"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"source.css","end":"(')","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"},"1":{"name":"source.css"}},"name":"string.quoted.single.html","patterns":[{"include":"#entities"}]}]},{"match":"=","name":"invalid.illegal.unexpected-equals-sign.html"}]}]},{"begin":"on(s(croll|t(orage|alled)|u(spend|bmit)|e(curitypolicyviolation|ek(ing|ed)|lect))|hashchange|c(hange|o(ntextmenu|py)|u(t|echange)|l(ick|ose)|an(cel|play(through)?))|t(imeupdate|oggle)|in(put|valid)|o(nline|ffline)|d(urationchange|r(op|ag(start|over|e(n(ter|d)|xit)|leave)?)|blclick)|un(handledrejection|load)|p(opstate|lay(ing)?|a(ste|use|ge(show|hide))|rogress)|e(nded|rror|mptied)|volumechange|key(down|up|press)|focus|w(heel|aiting)|l(oad(start|e(nd|d(data|metadata)))?|anguagechange)|a(uxclick|fterprint|bort)|r(e(s(ize|et)|jectionhandled)|atechange)|m(ouse(o(ut|ver)|down|up|enter|leave|move)|essage(error)?)|b(efore(unload|print)|lur))(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"HTML5 attributes, event handlers","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.event-handler.$1.html","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.key-value.html"}},"end":"(?<=[^\\\\s=])(?!\\\\s*=)|(?=/?>)","patterns":[{"begin":"(?=[^\\\\s=<>\`/]|/(?!>))","end":"(?!\\\\G)","name":"meta.embedded.line.js","patterns":[{"captures":{"0":{"name":"source.js"},"1":{"patterns":[{"include":"source.js"}]}},"match":"(([^\\\\s\\"'=<>\`/]|/(?!>))+)","name":"string.unquoted.html"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"source.js","end":"(\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"},"1":{"name":"source.js"}},"name":"string.quoted.double.html","patterns":[{"captures":{"0":{"patterns":[{"include":"source.js"}]}},"match":"([^\\\\n\\"/]|/(?![/*]))+"},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"(?=\\")|\\\\n","name":"comment.line.double-slash.js"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.js"}},"end":"(?=\\")|\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.js"}},"name":"comment.block.js"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"source.js","end":"(')","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"},"1":{"name":"source.js"}},"name":"string.quoted.single.html","patterns":[{"captures":{"0":{"patterns":[{"include":"source.js"}]}},"match":"([^\\\\n'/]|/(?![/*]))+"},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"(?=')|\\\\n","name":"comment.line.double-slash.js"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.js"}},"end":"(?=')|\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.js"}},"name":"comment.block.js"}]}]},{"match":"=","name":"invalid.illegal.unexpected-equals-sign.html"}]}]},{"begin":"(data-[a-z\\\\-]+)(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"HTML5 attributes, data-*","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.data-x.$1.html","patterns":[{"include":"#attribute-interior"}]},{"begin":"(align|bgcolor|border)(?![\\\\w:-])","beginCaptures":{"0":{"name":"invalid.deprecated.entity.other.attribute-name.html"}},"comment":"HTML attributes, deprecated","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.$1.html","patterns":[{"include":"#attribute-interior"}]},{"begin":"([^\\\\x{0020}\\"'<>/=\\\\x{0000}-\\\\x{001F}\\\\x{007F}-\\\\x{009F}\\\\x{FDD0}-\\\\x{FDEF}\\\\x{FFFE}\\\\x{FFFF}\\\\x{1FFFE}\\\\x{1FFFF}\\\\x{2FFFE}\\\\x{2FFFF}\\\\x{3FFFE}\\\\x{3FFFF}\\\\x{4FFFE}\\\\x{4FFFF}\\\\x{5FFFE}\\\\x{5FFFF}\\\\x{6FFFE}\\\\x{6FFFF}\\\\x{7FFFE}\\\\x{7FFFF}\\\\x{8FFFE}\\\\x{8FFFF}\\\\x{9FFFE}\\\\x{9FFFF}\\\\x{AFFFE}\\\\x{AFFFF}\\\\x{BFFFE}\\\\x{BFFFF}\\\\x{CFFFE}\\\\x{CFFFF}\\\\x{DFFFE}\\\\x{DFFFF}\\\\x{EFFFE}\\\\x{EFFFF}\\\\x{FFFFE}\\\\x{FFFFF}\\\\x{10FFFE}\\\\x{10FFFF}]+)","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"Anything else that is valid","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.unrecognized.$1.html","patterns":[{"include":"#attribute-interior"}]},{"match":"[^\\\\s>]+","name":"invalid.illegal.character-not-allowed-here.html"}]},"attribute-interior":{"patterns":[{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.key-value.html"}},"end":"(?<=[^\\\\s=])(?!\\\\s*=)|(?=/?>)","patterns":[{"match":"([^\\\\s\\"'=<>\`/]|/(?!>))+","name":"string.unquoted.html"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.double.html","patterns":[{"include":"#entities"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.single.html","patterns":[{"include":"#entities"}]},{"match":"=","name":"invalid.illegal.unexpected-equals-sign.html"}]}]},"cdata":{"begin":"","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.cdata.html"},"comment":{"begin":"","name":"comment.block.html","patterns":[{"match":"\\\\G-?>","name":"invalid.illegal.characters-not-allowed-here.html"},{"match":")","name":"invalid.illegal.characters-not-allowed-here.html"},{"match":"--!>","name":"invalid.illegal.characters-not-allowed-here.html"}]},"core-minus-invalid":{"comment":"This should be the root pattern array includes minus #tags-invalid","patterns":[{"include":"#xml-processing"},{"include":"#comment"},{"include":"#doctype"},{"include":"#cdata"},{"include":"#tags-valid"},{"include":"#entities"}]},"doctype":{"begin":"","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.doctype.html","patterns":[{"match":"\\\\G(?i:DOCTYPE)","name":"entity.name.tag.html"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.html"},{"match":"[^\\\\s>]+","name":"entity.other.attribute-name.html"}]},"entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.html"},"912":{"name":"punctuation.definition.entity.html"}},"comment":"Yes this is a bit ridiculous, there are quite a lot of these","match":"(&)(?=[a-zA-Z])((a(s(ymp(eq)?|cr|t)|n(d(slope|d|v|and)?|g(s(t|ph)|zarr|e|le|rt(vb(d)?)?|msd(a(h|c|d|e|f|a|g|b))?)?)|c(y|irc|d|ute|E)?|tilde|o(pf|gon)|uml|p(id|os|prox(eq)?|e|E|acir)?|elig|f(r)?|w(conint|int)|l(pha|e(ph|fsym))|acute|ring|grave|m(p|a(cr|lg))|breve)|A(s(sign|cr)|nd|MP|c(y|irc)|tilde|o(pf|gon)|uml|pplyFunction|fr|Elig|lpha|acute|ring|grave|macr|breve))|(B(scr|cy|opf|umpeq|e(cause|ta|rnoullis)|fr|a(ckslash|r(v|wed))|reve)|b(s(cr|im(e)?|ol(hsub|b)?|emi)|n(ot|e(quiv)?)|c(y|ong)|ig(s(tar|qcup)|c(irc|up|ap)|triangle(down|up)|o(times|dot|plus)|uplus|vee|wedge)|o(t(tom)?|pf|wtie|x(h(d|u|D|U)?|times|H(d|u|D|U)?|d(R|l|r|L)|u(R|l|r|L)|plus|D(R|l|r|L)|v(R|h|H|l|r|L)?|U(R|l|r|L)|V(R|h|H|l|r|L)?|minus|box))|Not|dquo|u(ll(et)?|mp(e(q)?|E)?)|prime|e(caus(e)?|t(h|ween|a)|psi|rnou|mptyv)|karow|fr|l(ock|k(1(2|4)|34)|a(nk|ck(square|triangle(down|left|right)?|lozenge)))|a(ck(sim(eq)?|cong|prime|epsilon)|r(vee|wed(ge)?))|r(eve|vbar)|brk(tbrk)?))|(c(s(cr|u(p(e)?|b(e)?))|h(cy|i|eck(mark)?)|ylcty|c(irc|ups(sm)?|edil|a(ps|ron))|tdot|ir(scir|c(eq|le(d(R|circ|S|dash|ast)|arrow(left|right)))?|e|fnint|E|mid)?|o(n(int|g(dot)?)|p(y(sr)?|f|rod)|lon(e(q)?)?|m(p(fn|le(xes|ment))?|ma(t)?))|dot|u(darr(l|r)|p(s|c(up|ap)|or|dot|brcap)?|e(sc|pr)|vee|wed|larr(p)?|r(vearrow(left|right)|ly(eq(succ|prec)|vee|wedge)|arr(m)?|ren))|e(nt(erdot)?|dil|mptyv)|fr|w(conint|int)|lubs(uit)?|a(cute|p(s|c(up|ap)|dot|and|brcup)?|r(on|et))|r(oss|arr))|C(scr|hi|c(irc|onint|edil|aron)|ircle(Minus|Times|Dot|Plus)|Hcy|o(n(tourIntegral|int|gruent)|unterClockwiseContourIntegral|p(f|roduct)|lon(e)?)|dot|up(Cap)?|OPY|e(nterDot|dilla)|fr|lo(seCurly(DoubleQuote|Quote)|ckwiseContourIntegral)|a(yleys|cute|p(italDifferentialD)?)|ross))|(d(s(c(y|r)|trok|ol)|har(l|r)|c(y|aron)|t(dot|ri(f)?)|i(sin|e|v(ide(ontimes)?|onx)?|am(s|ond(suit)?)?|gamma)|Har|z(cy|igrarr)|o(t(square|plus|eq(dot)?|minus)?|ublebarwedge|pf|wn(harpoon(left|right)|downarrows|arrow)|llar)|d(otseq|a(rr|gger))?|u(har|arr)|jcy|e(lta|g|mptyv)|f(isht|r)|wangle|lc(orn|rop)|a(sh(v)?|leth|rr|gger)|r(c(orn|rop)|bkarow)|b(karow|lac)|Arr)|D(s(cr|trok)|c(y|aron)|Scy|i(fferentialD|a(critical(Grave|Tilde|Do(t|ubleAcute)|Acute)|mond))|o(t(Dot|Equal)?|uble(Right(Tee|Arrow)|ContourIntegral|Do(t|wnArrow)|Up(DownArrow|Arrow)|VerticalBar|L(ong(RightArrow|Left(RightArrow|Arrow))|eft(RightArrow|Tee|Arrow)))|pf|wn(Right(TeeVector|Vector(Bar)?)|Breve|Tee(Arrow)?|arrow|Left(RightVector|TeeVector|Vector(Bar)?)|Arrow(Bar|UpArrow)?))|Zcy|el(ta)?|D(otrahd)?|Jcy|fr|a(shv|rr|gger)))|(e(s(cr|im|dot)|n(sp|g)|c(y|ir(c)?|olon|aron)|t(h|a)|o(pf|gon)|dot|u(ro|ml)|p(si(v|lon)?|lus|ar(sl)?)|e|D(ot|Dot)|q(s(im|lant(less|gtr))|c(irc|olon)|u(iv(DD)?|est|als)|vparsl)|f(Dot|r)|l(s(dot)?|inters|l)?|a(ster|cute)|r(Dot|arr)|g(s(dot)?|rave)?|x(cl|ist|p(onentiale|ectation))|m(sp(1(3|4))?|pty(set|v)?|acr))|E(s(cr|im)|c(y|irc|aron)|ta|o(pf|gon)|NG|dot|uml|TH|psilon|qu(ilibrium|al(Tilde)?)|fr|lement|acute|grave|x(ists|ponentialE)|m(pty(SmallSquare|VerySmallSquare)|acr)))|(f(scr|nof|cy|ilig|o(pf|r(k(v)?|all))|jlig|partint|emale|f(ilig|l(ig|lig)|r)|l(tns|lig|at)|allingdotseq|r(own|a(sl|c(1(2|8|3|4|5|6)|78|2(3|5)|3(8|4|5)|45|5(8|6)))))|F(scr|cy|illed(SmallSquare|VerySmallSquare)|o(uriertrf|pf|rAll)|fr))|(G(scr|c(y|irc|edil)|t|opf|dot|T|Jcy|fr|amma(d)?|reater(Greater|SlantEqual|Tilde|Equal(Less)?|FullEqual|Less)|g|breve)|g(s(cr|im(e|l)?)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|irc)|t(c(c|ir)|dot|quest|lPar|r(sim|dot|eq(qless|less)|less|a(pprox|rr)))?|imel|opf|dot|jcy|e(s(cc|dot(o(l)?)?|l(es)?)?|q(slant|q)?|l)?|v(nE|ertneqq)|fr|E(l)?|l(j|E|a)?|a(cute|p|mma(d)?)|rave|g(g)?|breve))|(h(s(cr|trok|lash)|y(phen|bull)|circ|o(ok(leftarrow|rightarrow)|pf|arr|rbar|mtht)|e(llip|arts(uit)?|rcon)|ks(earow|warow)|fr|a(irsp|lf|r(dcy|r(cir|w)?)|milt)|bar|Arr)|H(s(cr|trok)|circ|ilbertSpace|o(pf|rizontalLine)|ump(DownHump|Equal)|fr|a(cek|t)|ARDcy))|(i(s(cr|in(s(v)?|dot|v|E)?)|n(care|t(cal|prod|e(rcal|gers)|larhk)?|odot|fin(tie)?)?|c(y|irc)?|t(ilde)?|i(nfin|i(nt|int)|ota)?|o(cy|ta|pf|gon)|u(kcy|ml)|jlig|prod|e(cy|xcl)|quest|f(f|r)|acute|grave|m(of|ped|a(cr|th|g(part|e|line))))|I(scr|n(t(e(rsection|gral))?|visible(Comma|Times))|c(y|irc)|tilde|o(ta|pf|gon)|dot|u(kcy|ml)|Ocy|Jlig|fr|Ecy|acute|grave|m(plies|a(cr|ginaryI))?))|(j(s(cr|ercy)|c(y|irc)|opf|ukcy|fr|math)|J(s(cr|ercy)|c(y|irc)|opf|ukcy|fr))|(k(scr|hcy|c(y|edil)|opf|jcy|fr|appa(v)?|green)|K(scr|c(y|edil)|Hcy|opf|Jcy|fr|appa))|(l(s(h|cr|trok|im(e|g)?|q(uo(r)?|b)|aquo)|h(ar(d|u(l)?)|blk)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|ub|e(il|dil)|aron)|Barr|t(hree|c(c|ir)|imes|dot|quest|larr|r(i(e|f)?|Par))?|Har|o(ng(left(arrow|rightarrow)|rightarrow|mapsto)|times|z(enge|f)?|oparrow(left|right)|p(f|lus|ar)|w(ast|bar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|r(dhar|ushar))|ur(dshar|uhar)|jcy|par(lt)?|e(s(s(sim|dot|eq(qgtr|gtr)|approx|gtr)|cc|dot(o(r)?)?|g(es)?)?|q(slant|q)?|ft(harpoon(down|up)|threetimes|leftarrows|arrow(tail)?|right(squigarrow|harpoons|arrow(s)?))|g)?|v(nE|ertneqq)|f(isht|loor|r)|E(g)?|l(hard|corner|tri|arr)?|a(ng(d|le)?|cute|t(e(s)?|ail)?|p|emptyv|quo|rr(sim|hk|tl|pl|fs|lp|b(fs)?)?|gran|mbda)|r(har(d)?|corner|tri|arr|m)|g(E)?|m(idot|oust(ache)?)|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr))|L(s(h|cr|trok)|c(y|edil|aron)|t|o(ng(RightArrow|left(arrow|rightarrow)|rightarrow|Left(RightArrow|Arrow))|pf|wer(RightArrow|LeftArrow))|T|e(ss(Greater|SlantEqual|Tilde|EqualGreater|FullEqual|Less)|ft(Right(Vector|Arrow)|Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|rightarrow|Floor|A(ngleBracket|rrow(RightArrow|Bar)?)))|Jcy|fr|l(eftarrow)?|a(ng|cute|placetrf|rr|mbda)|midot))|(M(scr|cy|inusPlus|opf|u|e(diumSpace|llintrf)|fr|ap)|m(s(cr|tpos)|ho|nplus|c(y|omma)|i(nus(d(u)?|b)?|cro|d(cir|dot|ast)?)|o(dels|pf)|dash|u(ltimap|map)?|p|easuredangle|DDot|fr|l(cp|dr)|a(cr|p(sto(down|up|left)?)?|l(t(ese)?|e)|rker)))|(n(s(hort(parallel|mid)|c(cue|e|r)?|im(e(q)?)?|u(cc(eq)?|p(set(eq(q)?)?|e|E)?|b(set(eq(q)?)?|e|E)?)|par|qsu(pe|be)|mid)|Rightarrow|h(par|arr|Arr)|G(t(v)?|g)|c(y|ong(dot)?|up|edil|a(p|ron))|t(ilde|lg|riangle(left(eq)?|right(eq)?)|gl)|i(s(d)?|v)?|o(t(ni(v(c|a|b))?|in(dot|v(c|a|b)|E)?)?|pf)|dash|u(m(sp|ero)?)?|jcy|p(olint|ar(sl|t|allel)?|r(cue|e(c(eq)?)?)?)|e(s(im|ear)|dot|quiv|ar(hk|r(ow)?)|xist(s)?|Arr)?|v(sim|infin|Harr|dash|Dash|l(t(rie)?|e|Arr)|ap|r(trie|Arr)|g(t|e))|fr|w(near|ar(hk|r(ow)?)|Arr)|V(dash|Dash)|l(sim|t(ri(e)?)?|dr|e(s(s)?|q(slant|q)?|ft(arrow|rightarrow))?|E|arr|Arr)|a(ng|cute|tur(al(s)?)?|p(id|os|prox|E)?|bla)|r(tri(e)?|ightarrow|arr(c|w)?|Arr)|g(sim|t(r)?|e(s|q(slant|q)?)?|E)|mid|L(t(v)?|eft(arrow|rightarrow)|l)|b(sp|ump(e)?))|N(scr|c(y|edil|aron)|tilde|o(nBreakingSpace|Break|t(R(ightTriangle(Bar|Equal)?|everseElement)|Greater(Greater|SlantEqual|Tilde|Equal|FullEqual|Less)?|S(u(cceeds(SlantEqual|Tilde|Equal)?|perset(Equal)?|bset(Equal)?)|quareSu(perset(Equal)?|bset(Equal)?))|Hump(DownHump|Equal)|Nested(GreaterGreater|LessLess)|C(ongruent|upCap)|Tilde(Tilde|Equal|FullEqual)?|DoubleVerticalBar|Precedes(SlantEqual|Equal)?|E(qual(Tilde)?|lement|xists)|VerticalBar|Le(ss(Greater|SlantEqual|Tilde|Equal|Less)?|ftTriangle(Bar|Equal)?))?|pf)|u|e(sted(GreaterGreater|LessLess)|wLine|gative(MediumSpace|Thi(nSpace|ckSpace)|VeryThinSpace))|Jcy|fr|acute))|(o(s(cr|ol|lash)|h(m|bar)|c(y|ir(c)?)|ti(lde|mes(as)?)|S|int|opf|d(sold|iv|ot|ash|blac)|uml|p(erp|lus|ar)|elig|vbar|f(cir|r)|l(c(ir|ross)|t|ine|arr)|a(st|cute)|r(slope|igof|or|d(er(of)?|f|m)?|v|arr)?|g(t|on|rave)|m(i(nus|cron|d)|ega|acr))|O(s(cr|lash)|c(y|irc)|ti(lde|mes)|opf|dblac|uml|penCurly(DoubleQuote|Quote)|ver(B(ar|rac(e|ket))|Parenthesis)|fr|Elig|acute|r|grave|m(icron|ega|acr)))|(p(s(cr|i)|h(i(v)?|one|mmat)|cy|i(tchfork|v)?|o(intint|und|pf)|uncsp|er(cnt|tenk|iod|p|mil)|fr|l(us(sim|cir|two|d(o|u)|e|acir|mn|b)?|an(ck(h)?|kv))|ar(s(im|l)|t|a(llel)?)?|r(sim|n(sim|E|ap)|cue|ime(s)?|o(d|p(to)?|f(surf|line|alar))|urel|e(c(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?)?|E|ap)?|m)|P(s(cr|i)|hi|cy|i|o(incareplane|pf)|fr|lusMinus|artialD|r(ime|o(duct|portion(al)?)|ecedes(SlantEqual|Tilde|Equal)?)?))|(q(scr|int|opf|u(ot|est(eq)?|at(int|ernions))|prime|fr)|Q(scr|opf|UOT|fr))|(R(s(h|cr)|ho|c(y|edil|aron)|Barr|ight(Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|Floor|A(ngleBracket|rrow(Bar|LeftArrow)?))|o(undImplies|pf)|uleDelayed|e(verse(UpEquilibrium|E(quilibrium|lement)))?|fr|EG|a(ng|cute|rr(tl)?)|rightarrow)|r(s(h|cr|q(uo(r)?|b)|aquo)|h(o(v)?|ar(d|u(l)?))|nmid|c(y|ub|e(il|dil)|aron)|Barr|t(hree|imes|ri(e|f|ltri)?)|i(singdotseq|ng|ght(squigarrow|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(tail)?|rightarrows))|Har|o(times|p(f|lus|ar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|ldhar)|uluhar|p(polint|ar(gt)?)|e(ct|al(s|ine|part)?|g)|f(isht|loor|r)|l(har|arr|m)|a(ng(d|e|le)?|c(ute|e)|t(io(nals)?|ail)|dic|emptyv|quo|rr(sim|hk|c|tl|pl|fs|w|lp|ap|b(fs)?)?)|rarr|x|moust(ache)?|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr)))|(s(s(cr|tarf|etmn|mile)|h(y|c(hcy|y)|ort(parallel|mid)|arp)|c(sim|y|n(sim|E|ap)|cue|irc|polint|e(dil)?|E|a(p|ron))?|t(ar(f)?|r(ns|aight(phi|epsilon)))|i(gma(v|f)?|m(ne|dot|plus|e(q)?|l(E)?|rarr|g(E)?)?)|zlig|o(pf|ftcy|l(b(ar)?)?)|dot(e|b)?|u(ng|cc(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?|p(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|hs(ol|ub)|1|n(e|E)|2|d(sub|ot)|3|plus|e(dot)?|E|larr|mult)?|m|b(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|n(e|E)|dot|plus|e(dot)?|E|rarr|mult)?)|pa(des(uit)?|r)|e(swar|ct|tm(n|inus)|ar(hk|r(ow)?)|xt|mi|Arr)|q(su(p(set(eq)?|e)?|b(set(eq)?|e)?)|c(up(s)?|ap(s)?)|u(f|ar(e|f))?)|fr(own)?|w(nwar|ar(hk|r(ow)?)|Arr)|larr|acute|rarr|m(t(e(s)?)?|i(d|le)|eparsl|a(shp|llsetminus))|bquo)|S(scr|hort(RightArrow|DownArrow|UpArrow|LeftArrow)|c(y|irc|edil|aron)?|tar|igma|H(cy|CHcy)|opf|u(c(hThat|ceeds(SlantEqual|Tilde|Equal)?)|p(set|erset(Equal)?)?|m|b(set(Equal)?)?)|OFTcy|q(uare(Su(perset(Equal)?|bset(Equal)?)|Intersection|Union)?|rt)|fr|acute|mallCircle))|(t(s(hcy|c(y|r)|trok)|h(i(nsp|ck(sim|approx))|orn|e(ta(sym|v)?|re(4|fore))|k(sim|ap))|c(y|edil|aron)|i(nt|lde|mes(d|b(ar)?)?)|o(sa|p(cir|f(ork)?|bot)?|ea)|dot|prime|elrec|fr|w(ixt|ohead(leftarrow|rightarrow))|a(u|rget)|r(i(sb|time|dot|plus|e|angle(down|q|left(eq)?|right(eq)?)?|minus)|pezium|ade)|brk)|T(s(cr|trok)|RADE|h(i(nSpace|ckSpace)|e(ta|refore))|c(y|edil|aron)|S(cy|Hcy)|ilde(Tilde|Equal|FullEqual)?|HORN|opf|fr|a(u|b)|ripleDot))|(u(scr|h(ar(l|r)|blk)|c(y|irc)|t(ilde|dot|ri(f)?)|Har|o(pf|gon)|d(har|arr|blac)|u(arr|ml)|p(si(h|lon)?|harpoon(left|right)|downarrow|uparrows|lus|arrow)|f(isht|r)|wangle|l(c(orn(er)?|rop)|tri)|a(cute|rr)|r(c(orn(er)?|rop)|tri|ing)|grave|m(l|acr)|br(cy|eve)|Arr)|U(scr|n(ion(Plus)?|der(B(ar|rac(e|ket))|Parenthesis))|c(y|irc)|tilde|o(pf|gon)|dblac|uml|p(si(lon)?|downarrow|Tee(Arrow)?|per(RightArrow|LeftArrow)|DownArrow|Equilibrium|arrow|Arrow(Bar|DownArrow)?)|fr|a(cute|rr(ocir)?)|ring|grave|macr|br(cy|eve)))|(v(s(cr|u(pn(e|E)|bn(e|E)))|nsu(p|b)|cy|Bar(v)?|zigzag|opf|dash|prop|e(e(eq|bar)?|llip|r(t|bar))|Dash|fr|ltri|a(ngrt|r(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|t(heta|riangle(left|right))|p(hi|i|ropto)|epsilon|kappa|r(ho)?))|rtri|Arr)|V(scr|cy|opf|dash(l)?|e(e|r(yThinSpace|t(ical(Bar|Separator|Tilde|Line))?|bar))|Dash|vdash|fr|bar))|(w(scr|circ|opf|p|e(ierp|d(ge(q)?|bar))|fr|r(eath)?)|W(scr|circ|opf|edge|fr))|(X(scr|i|opf|fr)|x(s(cr|qcup)|h(arr|Arr)|nis|c(irc|up|ap)|i|o(time|dot|p(f|lus))|dtri|u(tri|plus)|vee|fr|wedge|l(arr|Arr)|r(arr|Arr)|map))|(y(scr|c(y|irc)|icy|opf|u(cy|ml)|en|fr|ac(y|ute))|Y(scr|c(y|irc)|opf|uml|Icy|Ucy|fr|acute|Acy))|(z(scr|hcy|c(y|aron)|igrarr|opf|dot|e(ta|etrf)|fr|w(nj|j)|acute)|Z(scr|c(y|aron)|Hcy|opf|dot|e(ta|roWidthSpace)|fr|acute)))(;)","name":"constant.character.entity.named.$2.html"},{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)#[0-9]+(;)","name":"constant.character.entity.numeric.decimal.html"},{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)#[xX][0-9a-fA-F]+(;)","name":"constant.character.entity.numeric.hexadecimal.html"},{"match":"&(?=[a-zA-Z0-9]+;)","name":"invalid.illegal.ambiguous-ampersand.html"}]},"math":{"patterns":[{"begin":"(?i)(<)(math)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.structure.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()","endCaptures":{"0":{"name":"meta.tag.structure.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.structure.$2.html","patterns":[{"begin":"(?)\\\\G","end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]}],"repository":{"attribute":{"patterns":[{"begin":"(s(hift|ymmetric|cript(sizemultiplier|level|minsize)|t(ackalign|retchy)|ide|u(pscriptshift|bscriptshift)|e(parator(s)?|lection)|rc)|h(eight|ref)|n(otation|umalign)|c(haralign|olumn(spa(n|cing)|width|lines|align)|lose|rossout)|i(n(dent(shift(first|last)?|target|align(first|last)?)|fixlinebreakstyle)|d)|o(pen|verflow)|d(i(splay(style)?|r)|e(nomalign|cimalpoint|pth))|position|e(dge|qual(columns|rows))|voffset|f(orm|ence|rame(spacing)?)|width|l(space|ine(thickness|leading|break(style|multchar)?)|o(ngdivstyle|cation)|ength|quote|argeop)|a(c(cent(under)?|tiontype)|l(t(text|img(-(height|valign|width))?)|ign(mentscope)?))|r(space|ow(spa(n|cing)|lines|align)|quote)|groupalign|x(link:href|mlns)|m(in(size|labelspacing)|ovablelimits|a(th(size|color|variant|background)|xsize))|bevelled)(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.$1.html","patterns":[{"include":"#attribute-interior"}]},{"begin":"([^\\\\x{0020}\\"'<>/=\\\\x{0000}-\\\\x{001F}\\\\x{007F}-\\\\x{009F}\\\\x{FDD0}-\\\\x{FDEF}\\\\x{FFFE}\\\\x{FFFF}\\\\x{1FFFE}\\\\x{1FFFF}\\\\x{2FFFE}\\\\x{2FFFF}\\\\x{3FFFE}\\\\x{3FFFF}\\\\x{4FFFE}\\\\x{4FFFF}\\\\x{5FFFE}\\\\x{5FFFF}\\\\x{6FFFE}\\\\x{6FFFF}\\\\x{7FFFE}\\\\x{7FFFF}\\\\x{8FFFE}\\\\x{8FFFF}\\\\x{9FFFE}\\\\x{9FFFF}\\\\x{AFFFE}\\\\x{AFFFF}\\\\x{BFFFE}\\\\x{BFFFF}\\\\x{CFFFE}\\\\x{CFFFF}\\\\x{DFFFE}\\\\x{DFFFF}\\\\x{EFFFE}\\\\x{EFFFF}\\\\x{FFFFE}\\\\x{FFFFF}\\\\x{10FFFE}\\\\x{10FFFF}]+)","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"Anything else that is valid","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.unrecognized.$1.html","patterns":[{"include":"#attribute-interior"}]},{"match":"[^\\\\s>]+","name":"invalid.illegal.character-not-allowed-here.html"}]},"tags":{"patterns":[{"include":"#comment"},{"include":"#cdata"},{"captures":{"0":{"name":"meta.tag.structure.math.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(annotation|annotation-xml|semantics|menclose|merror|mfenced|mfrac|mpadded|mphantom|mroot|mrow|msqrt|mstyle|mmultiscripts|mover|mprescripts|msub|msubsup|msup|munder|munderover|none|mlabeledtr|mtable|mtd|mtr|mlongdiv|mscarries|mscarry|msgroup|msline|msrow|mstack|maction)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.structure.math.$2.html"},{"begin":"(?i)(<)(annotation|annotation-xml|semantics|menclose|merror|mfenced|mfrac|mpadded|mphantom|mroot|mrow|msqrt|mstyle|mmultiscripts|mover|mprescripts|msub|msubsup|msup|munder|munderover|none|mlabeledtr|mtable|mtd|mtr|mlongdiv|mscarries|mscarry|msgroup|msline|msrow|mstack|maction)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.structure.math.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()|(/>)|(?=)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.inline.math.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(mi|mn|mo|ms|mspace|mtext|maligngroup|malignmark)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.inline.math.$2.html"},{"begin":"(?i)(<)(mi|mn|mo|ms|mspace|mtext|maligngroup|malignmark)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.inline.math.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()|(/>)|(?=)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.object.math.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(mglyph)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.object.math.$2.html"},{"begin":"(?i)(<)(mglyph)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.object.math.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()|(/>)|(?=)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.other.invalid.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.unrecognized-tag.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(([\\\\w:]+))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.other.invalid.html"},{"begin":"(?i)(<)((\\\\w[^\\\\s>]*))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.other.invalid.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.unrecognized-tag.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()|(/>)|(?=)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.invalid.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"include":"#tags-invalid"}]}}},"svg":{"patterns":[{"begin":"(?i)(<)(svg)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.structure.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()","endCaptures":{"0":{"name":"meta.tag.structure.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.structure.$2.html","patterns":[{"begin":"(?)\\\\G","end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]}],"repository":{"attribute":{"patterns":[{"begin":"(s(hape-rendering|ystemLanguage|cale|t(yle|itchTiles|op-(color|opacity)|dDeviation|em(h|v)|artOffset|r(i(ng|kethrough-(thickness|position))|oke(-(opacity|dash(offset|array)|width|line(cap|join)|miterlimit))?))|urfaceScale|p(e(cular(Constant|Exponent)|ed)|acing|readMethod)|eed|lope)|h(oriz-(origin-x|adv-x)|eight|anging|ref(lang)?)|y(1|2|ChannelSelector)?|n(umOctaves|ame)|c(y|o(ntentS(criptType|tyleType)|lor(-(interpolation(-filters)?|profile|rendering))?)|ursor|l(ip(-(path|rule)|PathUnits)?|ass)|a(p-height|lcMode)|x)|t(ype|o|ext(-(decoration|anchor|rendering)|Length)|a(rget(X|Y)?|b(index|leValues))|ransform)|i(n(tercept|2)?|d(eographic)?|mage-rendering)|z(oomAndPan)?|o(p(erator|acity)|ver(flow|line-(thickness|position))|ffset|r(i(ent(ation)?|gin)|der))|d(y|i(splay|visor|ffuseConstant|rection)|ominant-baseline|ur|e(scent|celerate)|x)?|u(1|n(i(code(-(range|bidi))?|ts-per-em)|derline-(thickness|position))|2)|p(ing|oint(s(At(X|Y|Z))?|er-events)|a(nose-1|t(h(Length)?|tern(ContentUnits|Transform|Units))|int-order)|r(imitiveUnits|eserveA(spectRatio|lpha)))|e(n(d|able-background)|dgeMode|levation|x(ternalResourcesRequired|ponent))|v(i(sibility|ew(Box|Target))|-(hanging|ideographic|alphabetic|mathematical)|e(ctor-effect|r(sion|t-(origin-(y|x)|adv-y)))|alues)|k(1|2|3|e(y(Splines|Times|Points)|rn(ing|el(Matrix|UnitLength)))|4)?|f(y|il(ter(Res|Units)?|l(-(opacity|rule))?)|o(nt-(s(t(yle|retch)|ize(-adjust)?)|variant|family|weight)|rmat)|lood-(color|opacity)|r(om)?|x)|w(idth(s)?|ord-spacing|riting-mode)|l(i(ghting-color|mitingConeAngle)|ocal|e(ngthAdjust|tter-spacing)|ang)|a(scent|cc(umulate|ent-height)|ttribute(Name|Type)|zimuth|dditive|utoReverse|l(ignment-baseline|phabetic|lowReorder)|rabic-form|mplitude)|r(y|otate|e(s(tart|ult)|ndering-intent|peat(Count|Dur)|quired(Extensions|Features)|f(X|Y|errerPolicy)|l)|adius|x)?|g(1|2|lyph(Ref|-(name|orientation-(horizontal|vertical)))|radient(Transform|Units))|x(1|2|ChannelSelector|-height|link:(show|href|t(ype|itle)|a(ctuate|rcrole)|role)|ml:(space|lang|base))?|m(in|ode|e(thod|dia)|a(sk(ContentUnits|Units)?|thematical|rker(Height|-(start|end|mid)|Units|Width)|x))|b(y|ias|egin|ase(Profile|line-shift|Frequency)|box))(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.$1.html","patterns":[{"include":"#attribute-interior"}]},{"begin":"([^\\\\x{0020}\\"'<>/=\\\\x{0000}-\\\\x{001F}\\\\x{007F}-\\\\x{009F}\\\\x{FDD0}-\\\\x{FDEF}\\\\x{FFFE}\\\\x{FFFF}\\\\x{1FFFE}\\\\x{1FFFF}\\\\x{2FFFE}\\\\x{2FFFF}\\\\x{3FFFE}\\\\x{3FFFF}\\\\x{4FFFE}\\\\x{4FFFF}\\\\x{5FFFE}\\\\x{5FFFF}\\\\x{6FFFE}\\\\x{6FFFF}\\\\x{7FFFE}\\\\x{7FFFF}\\\\x{8FFFE}\\\\x{8FFFF}\\\\x{9FFFE}\\\\x{9FFFF}\\\\x{AFFFE}\\\\x{AFFFF}\\\\x{BFFFE}\\\\x{BFFFF}\\\\x{CFFFE}\\\\x{CFFFF}\\\\x{DFFFE}\\\\x{DFFFF}\\\\x{EFFFE}\\\\x{EFFFF}\\\\x{FFFFE}\\\\x{FFFFF}\\\\x{10FFFE}\\\\x{10FFFF}]+)","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"Anything else that is valid","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.unrecognized.$1.html","patterns":[{"include":"#attribute-interior"}]},{"match":"[^\\\\s>]+","name":"invalid.illegal.character-not-allowed-here.html"}]},"tags":{"patterns":[{"include":"#comment"},{"include":"#cdata"},{"captures":{"0":{"name":"meta.tag.metadata.svg.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(color-profile|desc|metadata|script|style|title)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.metadata.svg.$2.html"},{"begin":"(?i)(<)(color-profile|desc|metadata|script|style|title)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.metadata.svg.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()|(/>)|(?=)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.structure.svg.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(animateMotion|clipPath|defs|feComponentTransfer|feDiffuseLighting|feMerge|feSpecularLighting|filter|g|hatch|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|pattern|radialGradient|switch|text|textPath)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.structure.svg.$2.html"},{"begin":"(?i)(<)(animateMotion|clipPath|defs|feComponentTransfer|feDiffuseLighting|feMerge|feSpecularLighting|filter|g|hatch|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|pattern|radialGradient|switch|text|textPath)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.structure.svg.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()|(/>)|(?=)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.inline.svg.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(a|animate|discard|feBlend|feColorMatrix|feComposite|feConvolveMatrix|feDisplacementMap|feDistantLight|feDropShadow|feFlood|feFuncA|feFuncB|feFuncG|feFuncR|feGaussianBlur|feMergeNode|feMorphology|feOffset|fePointLight|feSpotLight|feTile|feTurbulence|hatchPath|mpath|set|solidcolor|stop|tspan)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.inline.svg.$2.html"},{"begin":"(?i)(<)(a|animate|discard|feBlend|feColorMatrix|feComposite|feConvolveMatrix|feDisplacementMap|feDistantLight|feDropShadow|feFlood|feFuncA|feFuncB|feFuncG|feFuncR|feGaussianBlur|feMergeNode|feMorphology|feOffset|fePointLight|feSpotLight|feTile|feTurbulence|hatchPath|mpath|set|solidcolor|stop|tspan)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.inline.svg.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()|(/>)|(?=)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.object.svg.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(circle|ellipse|feImage|foreignObject|image|line|path|polygon|polyline|rect|symbol|use|view)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.object.svg.$2.html"},{"begin":"(?i)(<)(a|circle|ellipse|feImage|foreignObject|image|line|path|polygon|polyline|rect|symbol|use|view)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.object.svg.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()|(/>)|(?=)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.other.svg.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)((altGlyph|altGlyphDef|altGlyphItem|animateColor|animateTransform|cursor|font|font-face|font-face-format|font-face-name|font-face-src|font-face-uri|glyph|glyphRef|hkern|missing-glyph|tref|vkern))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.other.svg.$2.html"},{"begin":"(?i)(<)((altGlyph|altGlyphDef|altGlyphItem|animateColor|animateTransform|cursor|font|font-face|font-face-format|font-face-name|font-face-src|font-face-uri|glyph|glyphRef|hkern|missing-glyph|tref|vkern))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.other.svg.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()|(/>)|(?=)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.other.invalid.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.unrecognized-tag.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(([\\\\w:]+))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.other.invalid.html"},{"begin":"(?i)(<)((\\\\w[^\\\\s>]*))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.other.invalid.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.unrecognized-tag.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)()|(/>)|(?=)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.invalid.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"include":"#tags-invalid"}]}}},"tags-invalid":{"patterns":[{"begin":"(]*))(?)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.$2.html","patterns":[{"include":"#attribute"}]}]},"tags-valid":{"patterns":[{"begin":"(^[ \\\\t]+)?(?=<(?i:style)\\\\b(?!-))","beginCaptures":{"1":{"name":"punctuation.whitespace.embedded.leading.html"}},"end":"(?!\\\\G)([ \\\\t]*$\\\\n?)?","endCaptures":{"1":{"name":"punctuation.whitespace.embedded.trailing.html"}},"patterns":[{"begin":"(?i)(<)(style)(?=\\\\s|/?>)","beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"(?i)((<)/)(style)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.style.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"source.css-ignored-vscode"},"3":{"name":"entity.name.tag.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.embedded.block.html","patterns":[{"begin":"\\\\G","captures":{"1":{"name":"punctuation.definition.tag.end.html"}},"end":"(>)","name":"meta.tag.metadata.style.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?!\\\\G)","end":"(?=)","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.embedded.block.html","patterns":[{"begin":"\\\\G","end":"(?=/)","patterns":[{"begin":"(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.script.start.html"},"1":{"name":"punctuation.definition.tag.end.html"}},"end":"((<))(?=/(?i:script))","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"source.js-ignored-vscode"}},"patterns":[{"begin":"\\\\G","end":"(?=\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# Tag without type attribute\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | type(?=[\\\\s=])\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t \\t(?!\\\\s*=\\\\s*\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t''\\t\\t\\t\\t\\t\\t\\t\\t# Empty\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | \\"\\"\\t\\t\\t\\t\\t\\t\\t\\t\\t# Values\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | ('|\\"|)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\ttext/\\t\\t\\t\\t\\t\\t\\t# Text mime-types\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\tjavascript(1\\\\.[0-5])?\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | x-javascript\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | jscript\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | livescript\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | (x-)?ecmascript\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | babel\\t\\t\\t\\t\\t\\t# Javascript variant currently\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t# recognized as such\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t \\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | application/\\t\\t\\t\\t\\t# Application mime-types\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t \\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(x-)?javascript\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | (x-)?ecmascript\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | module\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t \\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[\\\\s\\"'>]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)","name":"meta.tag.metadata.script.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?ix:\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?=\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\ttype\\\\s*=\\\\s*\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t('|\\"|)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\ttext/\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\tx-handlebars\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | (x-(handlebars-)?|ng-)?template\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | html\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[\\\\s\\"'>]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)","end":"((<))(?=/(?i:script))","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"text.html.basic"}},"patterns":[{"begin":"\\\\G","end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.script.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?!\\\\G)","end":"(?=)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.script.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?!\\\\G)","end":"(?=)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(noscript|title)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)()","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(col|hr|input)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(address|article|aside|blockquote|body|button|caption|colgroup|datalist|dd|details|dialog|div|dl|dt|fieldset|figcaption|figure|footer|form|head|header|hgroup|html|h[1-6]|label|legend|li|main|map|menu|meter|nav|ol|optgroup|option|output|p|pre|progress|section|select|slot|summary|table|tbody|td|template|textarea|tfoot|th|thead|tr|ul)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)()","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(area|br|wbr)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(a|abbr|b|bdi|bdo|cite|code|data|del|dfn|em|i|ins|kbd|mark|q|rp|rt|ruby|s|samp|small|span|strong|sub|sup|time|u|var)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)()","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(embed|img|param|source|track)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(audio|canvas|iframe|object|picture|video)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)()","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((basefont|isindex))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((center|frameset|noembed|noframes))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)()","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((acronym|big|blink|font|strike|tt|xmp))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)()","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((frame))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((applet))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)()","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((dir|keygen|listing|menuitem|plaintext|spacer))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.no-longer-supported.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)()","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.no-longer-supported.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.$2.end.html","patterns":[{"include":"#attribute"}]},{"include":"#math"},{"include":"#svg"},{"begin":"(<)([a-zA-Z][.0-9_a-zA-Z\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}-\\\\x{200D}\\\\x{203F}-\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}]*-[\\\\-.0-9_a-zA-Z\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}-\\\\x{200D}\\\\x{203F}-\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}]*)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.custom.start.html","patterns":[{"include":"#attribute"}]},{"begin":"()","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.custom.end.html","patterns":[{"include":"#attribute"}]}]},"xml-processing":{"begin":"(<\\\\?)(xml)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.html"}},"end":"(\\\\?>)","name":"meta.tag.metadata.processing.xml.html","patterns":[{"include":"#attribute"}]}},"scopeName":"text.html.basic","embeddedLangs":["javascript","css"]}`)),ce=[...J,...ue,bee]});var hee,fr,xc=_(()=>{hee=Object.freeze(JSON.parse(`{"injectionSelector":"L:text.html -comment","name":"angular-expression","patterns":[{"include":"#ngExpression"}],"repository":{"arrayLiteral":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#ngExpression"},{"include":"#punctuationComma"}]},"booleanLiteral":{"patterns":[{"match":"(?>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.ts"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.ts"},{"match":"\\\\!|&&|\\\\?\\\\?|\\\\|\\\\|","name":"keyword.operator.logical.ts"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.ts"},{"match":"\\\\=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"\\\\%|\\\\*|\\\\/|-|\\\\+","name":"keyword.operator.arithmetic.ts"},{"captures":{"1":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$[:alnum:]])\\\\s*(\\\\/)(?![\\\\/*])"},{"include":"#typeofOperator"}]},"functionCall":{"begin":"(?=(\\\\??\\\\.\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(<([^<>]|\\\\<[^<>]+\\\\>)+>\\\\s*)?\\\\()","end":"(?<=\\\\))(?!(\\\\??\\\\.\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(<([^<>]|\\\\<[^<>]+\\\\>)+>\\\\s*)?\\\\()","patterns":[{"match":"\\\\?","name":"punctuation.accessor.ts"},{"match":"\\\\.","name":"punctuation.accessor.ts"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.ts"},{"begin":"\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type"},{"include":"#punctuationComma"}]},{"include":"#parenExpression"}]},"functionParameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ts"}},"name":"meta.parameters.ts","patterns":[{"include":"#decorator"},{"include":"#parameterName"},{"include":"#variableInitializer"},{"match":",","name":"punctuation.separator.parameter.ts"}]},"identifiers":{"patterns":[{"match":"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\s*\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.ts"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"constant.other.object.property.ts"},"3":{"name":"variable.other.object.property.ts"}},"match":"([?!]?\\\\.)\\\\s*(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s*\\\\.\\\\s*[_$[:alpha:]][_$[:alnum:]]*)"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"entity.name.function.ts"}},"match":"(?:([?!]?\\\\.)\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\s*=\\\\s*((async\\\\s+)|(function\\\\s*[(<])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)|((<([^<>]|\\\\<[^<>]+\\\\>)+>\\\\s*)?\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)(\\\\s*:\\\\s*(.)*)?\\\\s*=>)))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"constant.other.property.ts"}},"match":"([?!]?\\\\.)\\\\s*([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"variable.other.property.ts"}},"match":"([?!]?\\\\.)\\\\s*([_$[:alpha:]][_$[:alnum:]]*)"},{"captures":{"1":{"name":"constant.other.object.ts"},"2":{"name":"variable.other.object.ts"}},"match":"(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s*\\\\.\\\\s*[_$[:alpha:]][_$[:alnum:]]*)"},{"match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","name":"constant.character.other"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"literal":{"name":"literal.ts","patterns":[{"include":"#numericLiteral"},{"include":"#booleanLiteral"},{"include":"#nullLiteral"},{"include":"#undefinedLiteral"},{"include":"#numericConstantLiteral"},{"include":"#arrayLiteral"},{"include":"#thisLiteral"}]},"ngExpression":{"name":"meta.expression.ng","patterns":[{"include":"#string"},{"include":"#literal"},{"include":"#ternaryExpression"},{"include":"#expressionOperator"},{"include":"#functionCall"},{"include":"#identifiers"},{"include":"#parenExpression"},{"include":"#punctuationComma"},{"include":"#punctuationAccessor"}]},"nullLiteral":{"match":"(?)|((<([^<>]|\\\\<[^<>]+\\\\>)+>\\\\s*)?\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)(\\\\s*:\\\\s*(.)*)?\\\\s*=>)))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.operator.rest.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:\\\\s*\\\\b(readonly)\\\\s+)?(?:\\\\s*\\\\b(public|private|protected)\\\\s+)?(\\\\.\\\\.\\\\.)?\\\\s*(?])|(?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},"typeBuiltinLiterals":{"match":"(?)\\\\s*(?=\\\\()","end":"(?<=\\\\))","include":"#typeofOperator","name":"meta.type.function.ts","patterns":[{"include":"#functionParameters"}]},{"begin":"((?=[(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#functionParameters"}]}]},"typeName":{"patterns":[{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*([?!]?\\\\.)"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"entity.name.type.ts"}]},"typeObject":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#typeObjectMembers"}]},"typeObjectMembers":{"patterns":[{"include":"#typeAnnotation"},{"include":"#punctuationComma"},{"include":"#punctuationSemicolon"}]},"typeOperators":{"patterns":[{"include":"#typeofOperator"},{"match":"[&|]","name":"keyword.operator.type.ts"},{"match":"(?{xc();yee=Object.freeze(JSON.parse('{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment -expression.ng -meta.tag -source.css -source.js","name":"angular-let-declaration","patterns":[{"include":"#letDeclaration"}],"repository":{"letDeclaration":{"begin":"(@let)\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(=)?","beginCaptures":{"1":{"name":"storage.type.ng"},"2":{"name":"meta.definition.variable.ng"},"3":{"name":"keyword.operator.assignment.ng"}},"contentName":"meta.definition.variable.ng","end":"(?<=;)","patterns":[{"include":"#letInitializer"}]},"letInitializer":{"begin":"\\\\s*","beginCaptures":{"0":{"name":"keyword.operator.assignment.ng"}},"contentName":"meta.definition.variable.initializer.ng","end":";","endCaptures":{"0":{"name":"punctuation.terminator.statement.ng"}},"patterns":[{"include":"expression.ng"}]}},"scopeName":"template.let.ng","embeddedLangs":["angular-expression"]}')),Eg=[...fr,yee]});var wee,Wi,ZA=_(()=>{xc();wee=Object.freeze(JSON.parse('{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment","name":"angular-template","patterns":[{"include":"#interpolation"}],"repository":{"interpolation":{"begin":"{{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"contentName":"expression.ng","end":"}}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"expression.ng"}]}},"scopeName":"template.ng","embeddedLangs":["angular-expression"]}')),Wi=[...fr,wee]});var kee,Qg,CB=_(()=>{xc();ZA();kee=Object.freeze(JSON.parse('{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment -expression.ng -meta.tag -source.css -source.js","name":"angular-template-blocks","patterns":[{"include":"#block"}],"repository":{"block":{"begin":"(@)(if|else if|else|defer|placeholder|loading|error|switch|case|default|for|empty)(?:\\\\s*)","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.block.kind.ng"}},"end":"(?<=\\\\})","name":"control.block.ng","patterns":[{"include":"#blockExpression"},{"include":"#blockBody"}]},"blockBody":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"contentName":"control.block.body.ng","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"text.html.derivative.ng"},{"include":"template.ng"}]},"blockExpression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"contentName":"control.block.expression.ng","end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"expression.ng"}]},"transition":{"match":"@","name":"keyword.control.block.transition.ng"}},"scopeName":"template.blocks.ng","embeddedLangs":["angular-expression","angular-template"]}')),Qg=[...fr,...Wi,kee]});var s8={};x(s8,{default:()=>_B});var Cee,_B,BB=_(()=>{Ye();xc();kB();ZA();CB();Cee=Object.freeze(JSON.parse('{"displayName":"Angular HTML","injections":{"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)":{"comment":"Uses R: to ensure this matches after any other injections.","patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"angular-html","patterns":[{"include":"text.html.basic#core-minus-invalid"},{"begin":"(]*)(?)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.unrecognized.html.derivative","patterns":[{"include":"text.html.basic#attribute"}]}],"scopeName":"text.html.derivative.ng","embeddedLangs":["html","angular-expression","angular-let-declaration","angular-template","angular-template-blocks"]}')),_B=[...ce,...fr,...Eg,...Wi,...Qg,Cee]});var c8={};x(c8,{default:()=>zo});var _ee,zo,YA=_(()=>{rt();_ee=Object.freeze(JSON.parse(`{"displayName":"SCSS","name":"scss","patterns":[{"include":"#variable_setting"},{"include":"#at_rule_forward"},{"include":"#at_rule_use"},{"include":"#at_rule_include"},{"include":"#at_rule_import"},{"include":"#general"},{"include":"#flow_control"},{"include":"#rules"},{"include":"#property_list"},{"include":"#at_rule_mixin"},{"include":"#at_rule_media"},{"include":"#at_rule_function"},{"include":"#at_rule_charset"},{"include":"#at_rule_option"},{"include":"#at_rule_namespace"},{"include":"#at_rule_fontface"},{"include":"#at_rule_page"},{"include":"#at_rule_keyframes"},{"include":"#at_rule_at_root"},{"include":"#at_rule_supports"},{"match":";","name":"punctuation.terminator.rule.css"}],"repository":{"at_rule_at_root":{"begin":"\\\\s*((@)(at-root))(\\\\s+|$)","beginCaptures":{"1":{"name":"keyword.control.at-rule.at-root.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"end":"\\\\s*(?={)","name":"meta.at-rule.at-root.scss","patterns":[{"include":"#function_attributes"},{"include":"#functions"},{"include":"#selectors"}]},"at_rule_charset":{"begin":"\\\\s*((@)charset\\\\b)\\\\s*","captures":{"1":{"name":"keyword.control.at-rule.charset.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"end":"\\\\s*((?=;|$))","name":"meta.at-rule.charset.scss","patterns":[{"include":"#variable"},{"include":"#string_single"},{"include":"#string_double"}]},"at_rule_content":{"begin":"\\\\s*((@)content\\\\b)\\\\s*","captures":{"1":{"name":"keyword.control.content.scss"}},"end":"\\\\s*((?=;))","name":"meta.content.scss","patterns":[{"include":"#variable"},{"include":"#selectors"},{"include":"#property_values"}]},"at_rule_each":{"begin":"\\\\s*((@)each\\\\b)\\\\s*","captures":{"1":{"name":"keyword.control.each.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"end":"\\\\s*((?=}))","name":"meta.at-rule.each.scss","patterns":[{"match":"\\\\b(in|,)\\\\b","name":"keyword.control.operator"},{"include":"#variable"},{"include":"#property_values"},{"include":"$self"}]},"at_rule_else":{"begin":"\\\\s*((@)else(\\\\s*(if)?))\\\\s*","captures":{"1":{"name":"keyword.control.else.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"end":"\\\\s*(?={)","name":"meta.at-rule.else.scss","patterns":[{"include":"#conditional_operators"},{"include":"#variable"},{"include":"#property_values"}]},"at_rule_extend":{"begin":"\\\\s*((@)extend\\\\b)\\\\s*","captures":{"1":{"name":"keyword.control.at-rule.extend.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"end":"\\\\s*(?=;)","name":"meta.at-rule.extend.scss","patterns":[{"include":"#variable"},{"include":"#selectors"},{"include":"#property_values"}]},"at_rule_fontface":{"patterns":[{"begin":"^\\\\s*((@)font-face\\\\b)","beginCaptures":{"1":{"name":"keyword.control.at-rule.fontface.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"end":"\\\\s*(?={)","name":"meta.at-rule.fontface.scss","patterns":[{"include":"#function_attributes"}]}]},"at_rule_for":{"begin":"\\\\s*((@)for\\\\b)\\\\s*","captures":{"1":{"name":"keyword.control.for.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"end":"\\\\s*(?={)","name":"meta.at-rule.for.scss","patterns":[{"match":"(==|!=|<=|>=|<|>|from|to|through)","name":"keyword.control.operator"},{"include":"#variable"},{"include":"#property_values"},{"include":"$self"}]},"at_rule_forward":{"begin":"\\\\s*((@)forward\\\\b)\\\\s*","captures":{"1":{"name":"keyword.control.at-rule.forward.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"end":"\\\\s*(?=;)","name":"meta.at-rule.forward.scss","patterns":[{"match":"\\\\b(as|hide|show)\\\\b","name":"keyword.control.operator"},{"captures":{"1":{"name":"entity.other.attribute-name.module.scss"},"2":{"name":"punctuation.definition.wildcard.scss"}},"match":"\\\\b([\\\\w-]+)(\\\\*)"},{"match":"\\\\b[\\\\w-]+\\\\b","name":"entity.name.function.scss"},{"include":"#variable"},{"include":"#string_single"},{"include":"#string_double"},{"include":"#comment_line"},{"include":"#comment_block"}]},"at_rule_function":{"patterns":[{"begin":"\\\\s*((@)function\\\\b)\\\\s*","captures":{"1":{"name":"keyword.control.at-rule.function.scss"},"2":{"name":"punctuation.definition.keyword.scss"},"3":{"name":"entity.name.function.scss"}},"end":"\\\\s*(?={)","name":"meta.at-rule.function.scss","patterns":[{"include":"#function_attributes"}]},{"captures":{"1":{"name":"keyword.control.at-rule.function.scss"},"2":{"name":"punctuation.definition.keyword.scss"},"3":{"name":"entity.name.function.scss"}},"match":"\\\\s*((@)function\\\\b)\\\\s*","name":"meta.at-rule.function.scss"}]},"at_rule_if":{"begin":"\\\\s*((@)if\\\\b)\\\\s*","captures":{"1":{"name":"keyword.control.if.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"end":"\\\\s*(?={)","name":"meta.at-rule.if.scss","patterns":[{"include":"#conditional_operators"},{"include":"#variable"},{"include":"#property_values"}]},"at_rule_import":{"begin":"\\\\s*((@)import\\\\b)\\\\s*","captures":{"1":{"name":"keyword.control.at-rule.import.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"end":"\\\\s*((?=;)|(?=}))","name":"meta.at-rule.import.scss","patterns":[{"include":"#variable"},{"include":"#string_single"},{"include":"#string_double"},{"include":"#functions"},{"include":"#comment_line"}]},"at_rule_include":{"patterns":[{"begin":"(?<=@include)\\\\s+(?:([\\\\w-]+)\\\\s*(\\\\.))?([\\\\w-]+)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"variable.scss"},"2":{"name":"punctuation.access.module.scss"},"3":{"name":"entity.name.function.scss"},"4":{"name":"punctuation.definition.parameters.begin.bracket.round.scss"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.scss"}},"name":"meta.at-rule.include.scss","patterns":[{"include":"#function_attributes"}]},{"captures":{"0":{"name":"meta.at-rule.include.scss"},"1":{"name":"variable.scss"},"2":{"name":"punctuation.access.module.scss"},"3":{"name":"entity.name.function.scss"}},"match":"(?<=@include)\\\\s+(?:([\\\\w-]+)\\\\s*(\\\\.))?([\\\\w-]+)"},{"captures":{"0":{"name":"meta.at-rule.include.scss"},"1":{"name":"keyword.control.at-rule.include.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"match":"((@)include)\\\\b"}]},"at_rule_keyframes":{"begin":"(?<=^|\\\\s)(@)(?:-(?:webkit|moz)-)?keyframes\\\\b","beginCaptures":{"0":{"name":"keyword.control.at-rule.keyframes.scss"},"1":{"name":"punctuation.definition.keyword.scss"}},"end":"(?<=})","name":"meta.at-rule.keyframes.scss","patterns":[{"captures":{"1":{"name":"entity.name.function.scss"}},"match":"(?<=@keyframes)\\\\s+((?:[_A-Za-z][-\\\\w]|-[_A-Za-z])[-\\\\w]*)"},{"begin":"(?<=@keyframes)\\\\s+(\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.scss"}},"contentName":"entity.name.function.scss","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.scss"}},"name":"string.quoted.double.scss","patterns":[{"match":"\\\\\\\\(\\\\h{1,6}|.)","name":"constant.character.escape.scss"},{"include":"#interpolation"}]},{"begin":"(?<=@keyframes)\\\\s+(')","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.scss"}},"contentName":"entity.name.function.scss","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.scss"}},"name":"string.quoted.single.scss","patterns":[{"match":"\\\\\\\\(\\\\h{1,6}|.)","name":"constant.character.escape.scss"},{"include":"#interpolation"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.keyframes.begin.scss"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.keyframes.end.scss"}},"patterns":[{"match":"\\\\b(?:(?:100|[1-9]\\\\d|\\\\d)%|from|to)(?=\\\\s*{)","name":"entity.other.attribute-name.scss"},{"include":"#flow_control"},{"include":"#interpolation"},{"include":"#property_list"},{"include":"#rules"}]}]},"at_rule_media":{"patterns":[{"begin":"^\\\\s*((@)media)\\\\b","beginCaptures":{"1":{"name":"keyword.control.at-rule.media.scss"},"2":{"name":"punctuation.definition.keyword.scss"}},"end":"\\\\s*(?={)","name":"meta.at-rule.media.scss","patterns":[{"include":"#comment_docblock"},{"include":"#comment_block"},{"include":"#comment_line"},{"match":"\\\\b(only)\\\\b","name":"keyword.control.operator.css.scss"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.media-query.begin.bracket.round.scss"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.media-query.end.bracket.round.scss"}},"name":"meta.property-list.media-query.scss","patterns":[{"begin":"(?=|<|>","name":"keyword.operator.comparison.scss"},"conditional_operators":{"patterns":[{"include":"#comparison_operators"},{"include":"#logical_operators"}]},"constant_default":{"match":"!default","name":"keyword.other.default.scss"},"constant_functions":{"begin":"(?:([\\\\w-]+)(\\\\.))?([\\\\w-]+)(\\\\()","beginCaptures":{"1":{"name":"variable.scss"},"2":{"name":"punctuation.access.module.scss"},"3":{"name":"support.function.misc.scss"},"4":{"name":"punctuation.section.function.scss"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.function.scss"}},"patterns":[{"include":"#parameters"}]},"constant_important":{"match":"!important","name":"keyword.other.important.scss"},"constant_mathematical_symbols":{"match":"\\\\b(\\\\+|-|\\\\*|/)\\\\b","name":"support.constant.mathematical-symbols.scss"},"constant_optional":{"match":"!optional","name":"keyword.other.optional.scss"},"constant_sass_functions":{"begin":"(headings|stylesheet-url|rgba?|hsla?|ie-hex-str|red|green|blue|alpha|opacity|hue|saturation|lightness|prefixed|prefix|-moz|-svg|-css2|-pie|-webkit|-ms|font-(?:files|url)|grid-image|image-(?:width|height|url|color)|sprites?|sprite-(?:map|map-name|file|url|position)|inline-(?:font-files|image)|opposite-position|grad-point|grad-end-position|color-stops|color-stops-in-percentages|grad-color-stops|(?:radial|linear)-(?:gradient|svg-gradient)|opacify|fade-?in|transparentize|fade-?out|lighten|darken|saturate|desaturate|grayscale|adjust-(?:hue|lightness|saturation|color)|scale-(?:lightness|saturation|color)|change-color|spin|complement|invert|mix|-compass-(?:list|space-list|slice|nth|list-size)|blank|compact|nth|first-value-of|join|length|append|nest|append-selector|headers|enumerate|range|percentage|unitless|unit|if|type-of|comparable|elements-of-type|quote|unquote|escape|e|sin|cos|tan|abs|round|ceil|floor|pi|translate(?:X|Y))(\\\\()","beginCaptures":{"1":{"name":"support.function.misc.scss"},"2":{"name":"punctuation.section.function.scss"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.function.scss"}},"patterns":[{"include":"#parameters"}]},"flow_control":{"patterns":[{"include":"#at_rule_if"},{"include":"#at_rule_else"},{"include":"#at_rule_warn"},{"include":"#at_rule_for"},{"include":"#at_rule_while"},{"include":"#at_rule_each"},{"include":"#at_rule_return"}]},"function_attributes":{"patterns":[{"match":":","name":"punctuation.separator.key-value.scss"},{"include":"#general"},{"include":"#property_values"},{"match":"[={}\\\\?;@]","name":"invalid.illegal.scss"}]},"functions":{"patterns":[{"begin":"([\\\\w-]{1,})(\\\\()\\\\s*","beginCaptures":{"1":{"name":"support.function.misc.scss"},"2":{"name":"punctuation.section.function.scss"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.function.scss"}},"patterns":[{"include":"#parameters"}]},{"match":"([\\\\w-]{1,})","name":"support.function.misc.scss"}]},"general":{"patterns":[{"include":"#variable"},{"include":"#comment_docblock"},{"include":"#comment_block"},{"include":"#comment_line"}]},"interpolation":{"begin":"#{","beginCaptures":{"0":{"name":"punctuation.definition.interpolation.begin.bracket.curly.scss"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.interpolation.end.bracket.curly.scss"}},"name":"variable.interpolation.scss","patterns":[{"include":"#variable"},{"include":"#property_values"}]},"logical_operators":{"match":"\\\\b(not|or|and)\\\\b","name":"keyword.operator.logical.scss"},"map":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.map.begin.bracket.round.scss"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.map.end.bracket.round.scss"}},"name":"meta.definition.variable.map.scss","patterns":[{"include":"#comment_docblock"},{"include":"#comment_block"},{"include":"#comment_line"},{"captures":{"1":{"name":"support.type.map.key.scss"},"2":{"name":"punctuation.separator.key-value.scss"}},"match":"\\\\b([\\\\w-]+)\\\\s*(:)"},{"match":",","name":"punctuation.separator.delimiter.scss"},{"include":"#map"},{"include":"#variable"},{"include":"#property_values"}]},"operators":{"match":"[-+*/](?!\\\\s*[-+*/])","name":"keyword.operator.css"},"parameters":{"patterns":[{"include":"#variable"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.scss"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.scss"}},"patterns":[{"include":"#function_attributes"}]},{"include":"#property_values"},{"include":"#comment_block"},{"match":"[^'\\",) \\\\t]+","name":"variable.parameter.url.scss"},{"match":",","name":"punctuation.separator.delimiter.scss"}]},"parent_selector_suffix":{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"patterns":[{"include":"#interpolation"},{"match":"\\\\\\\\([0-9a-fA-F]{1,6}|.)","name":"constant.character.escape.scss"},{"match":"\\\\$|}","name":"invalid.illegal.identifier.scss"}]}},"match":"(?<=&)((?:[-a-zA-Z_0-9]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.)|\\\\#\\\\{|\\\\$|})+)(?=$|[\\\\s,.\\\\#)\\\\[:{>+~|]|/\\\\*)","name":"entity.other.attribute-name.parent-selector-suffix.css"},"properties":{"patterns":[{"begin":"(?+~|]|\\\\.[^$]|/\\\\*|;)","name":"entity.other.attribute-name.class.css"},"selector_custom":{"match":"\\\\b([a-zA-Z0-9]+(-[a-zA-Z0-9]+)+)(?=\\\\.|\\\\s++[^:]|\\\\s*[,\\\\[{]|:(link|visited|hover|active|focus|target|lang|disabled|enabled|checked|indeterminate|root|nth-(child|last-child|of-type|last-of-type)|first-child|last-child|first-of-type|last-of-type|only-child|only-of-type|empty|not|valid|invalid)(\\\\([0-9A-Za-z]*\\\\))?)","name":"entity.name.tag.custom.scss"},"selector_id":{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"patterns":[{"include":"#interpolation"},{"match":"\\\\\\\\([0-9a-fA-F]{1,6}|.)","name":"constant.character.escape.scss"},{"match":"\\\\$|}","name":"invalid.illegal.identifier.scss"}]}},"match":"(\\\\#)((?:[-a-zA-Z_0-9]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.)|\\\\#\\\\{|\\\\.?\\\\$|})+)(?=$|[\\\\s,\\\\#)\\\\[:{>+~|]|\\\\.[^$]|/\\\\*)","name":"entity.other.attribute-name.id.css"},"selector_placeholder":{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"patterns":[{"include":"#interpolation"},{"match":"\\\\\\\\([0-9a-fA-F]{1,6}|.)","name":"constant.character.escape.scss"},{"match":"\\\\$|}","name":"invalid.illegal.identifier.scss"}]}},"match":"(%)((?:[-a-zA-Z_0-9]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.)|\\\\#\\\\{|\\\\.\\\\$|\\\\$|})+)(?=;|$|[\\\\s,\\\\#)\\\\[:{>+~|]|\\\\.[^$]|/\\\\*)","name":"entity.other.attribute-name.placeholder.css"},"selector_pseudo_class":{"patterns":[{"begin":"((:)\\\\bnth-(?:child|last-child|of-type|last-of-type))(\\\\()","beginCaptures":{"1":{"name":"entity.other.attribute-name.pseudo-class.css"},"2":{"name":"punctuation.definition.entity.css"},"3":{"name":"punctuation.definition.pseudo-class.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.pseudo-class.end.bracket.round.css"}},"patterns":[{"include":"#interpolation"},{"match":"\\\\d+","name":"constant.numeric.css"},{"match":"(?<=\\\\d)n\\\\b|\\\\b(n|even|odd)\\\\b","name":"constant.other.scss"},{"match":"\\\\w+","name":"invalid.illegal.scss"}]},{"include":"source.css#pseudo-classes"},{"include":"source.css#pseudo-elements"},{"include":"source.css#functional-pseudo-classes"}]},"selectors":{"patterns":[{"include":"source.css#tag-names"},{"include":"#selector_custom"},{"include":"#selector_class"},{"include":"#selector_id"},{"include":"#selector_pseudo_class"},{"include":"#tag_wildcard"},{"include":"#tag_parent_reference"},{"include":"source.css#pseudo-elements"},{"include":"#selector_attribute"},{"include":"#selector_placeholder"},{"include":"#parent_selector_suffix"}]},"string_double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.scss"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.scss"}},"name":"string.quoted.double.scss","patterns":[{"match":"\\\\\\\\(\\\\h{1,6}|.)","name":"constant.character.escape.scss"},{"include":"#interpolation"}]},"string_single":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.scss"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.scss"}},"name":"string.quoted.single.scss","patterns":[{"match":"\\\\\\\\(\\\\h{1,6}|.)","name":"constant.character.escape.scss"},{"include":"#interpolation"}]},"tag_parent_reference":{"match":"&","name":"entity.name.tag.reference.scss"},"tag_wildcard":{"match":"\\\\*","name":"entity.name.tag.wildcard.scss"},"variable":{"patterns":[{"include":"#variables"},{"include":"#interpolation"}]},"variable_setting":{"begin":"(?=\\\\$[\\\\w-]+\\\\s*:)","contentName":"meta.definition.variable.scss","end":";","endCaptures":{"0":{"name":"punctuation.terminator.rule.scss"}},"patterns":[{"match":"\\\\$[\\\\w-]+(?=\\\\s*:)","name":"variable.scss"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.key-value.scss"}},"end":"(?=;)","patterns":[{"include":"#comment_docblock"},{"include":"#comment_block"},{"include":"#comment_line"},{"include":"#map"},{"include":"#property_values"},{"include":"#variable"},{"match":",","name":"punctuation.separator.delimiter.scss"}]}]},"variables":{"patterns":[{"captures":{"1":{"name":"variable.scss"},"2":{"name":"punctuation.access.module.scss"},"3":{"name":"variable.scss"}},"match":"\\\\b([\\\\w-]+)(\\\\.)(\\\\$[\\\\w-]+)\\\\b"},{"match":"(\\\\$|\\\\-\\\\-)[A-Za-z0-9_-]+\\\\b","name":"variable.scss"}]}},"scopeName":"source.css.scss","embeddedLangs":["css"]}`)),zo=[...ue,_ee]});var Bee,l8,A8=_(()=>{YA();Bee=Object.freeze(JSON.parse('{"injectTo":["source.ts.ng"],"injectionSelector":"L:source.ts#meta.decorator.ts -comment","name":"angular-inline-style","patterns":[{"include":"#inlineStyles"}],"repository":{"inlineStyles":{"begin":"(styles)\\\\s*(:)","beginCaptures":{"1":{"name":"meta.object-literal.key.ts"},"2":{"name":"meta.object-literal.key.ts punctuation.separator.key-value.ts"}},"end":"(?=,|})","patterns":[{"include":"#tsParenExpression"},{"include":"#tsBracketExpression"},{"include":"#style"}]},"style":{"begin":"\\\\s*([`|\'|\\"])","beginCaptures":{"1":{"name":"string"}},"contentName":"source.css.scss","end":"\\\\1","endCaptures":{"0":{"name":"string"}},"patterns":[{"include":"source.css.scss"}]},"tsBracketExpression":{"begin":"\\\\G\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.array.literal.ts meta.brace.square.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.array.literal.ts meta.brace.square.ts"}},"patterns":[{"include":"#style"}]},"tsParenExpression":{"begin":"\\\\G\\\\s*(\\\\()","beginCaptures":{"1":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"$self"},{"include":"#tsBracketExpression"},{"include":"#style"}]}},"scopeName":"inline-styles.ng","embeddedLangs":["scss"]}')),l8=[...zo,Bee]});var xee,d8,u8=_(()=>{BB();ZA();xee=Object.freeze(JSON.parse('{"injectTo":["source.ts.ng"],"injectionSelector":"L:meta.decorator.ts -comment -text.html","name":"angular-inline-template","patterns":[{"include":"#inlineTemplate"}],"repository":{"inlineTemplate":{"begin":"(template)\\\\s*(:)","beginCaptures":{"1":{"name":"meta.object-literal.key.ts"},"2":{"name":"meta.object-literal.key.ts punctuation.separator.key-value.ts"}},"end":"(?=,|})","patterns":[{"include":"#tsParenExpression"},{"include":"#ngTemplate"}]},"ngTemplate":{"begin":"\\\\G\\\\s*([`|\'|\\"])","beginCaptures":{"1":{"name":"string"}},"contentName":"text.html.derivative.ng","end":"\\\\1","endCaptures":{"0":{"name":"string"}},"patterns":[{"include":"text.html.derivative.ng"},{"include":"template.ng"}]},"tsParenExpression":{"begin":"\\\\G\\\\s*(\\\\()","beginCaptures":{"1":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#tsParenExpression"},{"include":"#ngTemplate"}]}},"scopeName":"inline-template.ng","embeddedLangs":["angular-html","angular-template"]}')),d8=[..._B,...Wi,xee]});var p8={};x(p8,{default:()=>Eee});var vee,Eee,m8=_(()=>{xc();A8();u8();kB();ZA();CB();vee=Object.freeze(JSON.parse('{"displayName":"Angular TypeScript","name":"angular-ts","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?]|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^yield|[^\\\\._$[:alnum:]]yield|^throw|[^\\\\._$[:alnum:]]throw|^in|[^\\\\._$[:alnum:]]in|^of|[^\\\\._$[:alnum:]]of|^typeof|[^\\\\._$[:alnum:]]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(?)","name":"meta.arrow.ts"},{"begin":"(?:(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"((?<=\\\\}|\\\\S)(?)|((?!\\\\{)(?=\\\\S)))(?!\\\\/[\\\\/\\\\*])","name":"meta.arrow.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.ts","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=[:])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?)","name":"cast.expr.ts"},{"begin":"(?:(?*?\\\\&\\\\|\\\\^]|[^_$[:alnum:]](?:\\\\+\\\\+|\\\\-\\\\-)|[^\\\\+]\\\\+|[^\\\\-]\\\\-))\\\\s*(<)(?!)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]},{"begin":"(?:(?<=^))\\\\s*(<)(?=[_$[:alpha:]][_$[:alnum:]]*\\\\s*>)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(\\\\>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]}]},"class-declaration":{"begin":"(?\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.ts","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.ts"},"2":{"name":"entity.name.tag.directive.ts"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.ts"}},"name":"meta.tag.ts","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"()|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.ts"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"begin":"((@)template)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.ts"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|\'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\'))|[^*\\\\\\\\])*?\'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([\'\'\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.ts"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.ts"},{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"keyword.operator.assignment.compound.ts"},"3":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$[:alnum:]])(\\\\!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"\\\\!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.ts"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.ts"},{"match":"\\\\=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.ts"},{"begin":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))","end":"(?:(/=)|(?:(/)(?!\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)))","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?:(/=)|(?:(/)(?![/*])))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"match":"\\\\#?[_$[:alpha:]][_$[:alnum:]]*","name":"meta.definition.property.ts variable.object.property.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"},{"match":"\\\\!","name":"keyword.operator.definiteassignment.ts"}]},"for-loop":{"begin":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","end":"(?<=\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.ts punctuation.accessor.optional.ts"},{"match":"\\\\!","name":"meta.function-call.ts keyword.operator.definiteassignment.ts"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.ts"}]},"function-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"},{"match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","name":"variable.other.constant.ts"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"if-statement":{"patterns":[{"begin":"(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|(===|!==|==|!=)|(([\\\\&\\\\~\\\\^\\\\|]\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"keyword.operator.new.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.property.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=((\\\\b(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\(|\\\\<)","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[\\\\(\\\\<]))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\\\\'\\\\\\"\\\\`])","end":"(?=:)|((?<=[\\\\\'\\\\\\"\\\\`])(?=((\\\\s*[\\\\(\\\\<,}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"}},"match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.ts"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=,|\\\\})","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|^|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=\\\\<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=\\\\>)\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?])","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(=,])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(=,]|=>|^return|[^\\\\._$[:alnum:]]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.ts meta.return.type.arrow.ts keyword.operator.type.annotation.ts"}},"contentName":"meta.arrow.ts meta.return.type.arrow.ts","end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[\\\\()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^\\\\)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([dgimsuvy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"begin":"((?"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))\\\\-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$)))"},{"captures":{"1":{"name":"support.type.object.module.ts"},"2":{"name":"support.type.object.module.ts"},"3":{"name":"punctuation.accessor.ts"},"4":{"name":"punctuation.accessor.optional.ts"},"5":{"name":"support.type.object.module.ts"}},"match":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#type-arguments"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*[^[:digit:]])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?])|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?])|(?=^\\\\s*$)|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.ts"}},"end":"(?)(?:\\\\?]|//|$)","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"(?)(?]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.ts"},"2":{"name":"entity.name.type.ts"},"3":{"name":"keyword.operator.expression.extends.ts"}},"match":"(?)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.ts"},"2":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"entity.name.type.ts"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"begin":"[&|]","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?=\\\\S)"},{"match":"(?)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#comment"},{"match":"(?)","name":"keyword.operator.assignment.ts"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?:&|{\\\\?]|(extends\\\\s+)|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts entity.name.function.ts"}},"end":"(?=$|^|[;,=}]|((?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts entity.name.function.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[;,=}]|((?\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|^|[,);}\\\\]]|((?Iee});var Qee,Iee,f8=_(()=>{Qee=Object.freeze(JSON.parse('{"displayName":"Apache Conf","fileTypes":["conf","CONF","envvars","htaccess","HTACCESS","htgroups","HTGROUPS","htpasswd","HTPASSWD",".htaccess",".HTACCESS",".htgroups",".HTGROUPS",".htpasswd",".HTPASSWD"],"name":"apache","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.apacheconf"}},"match":"^(\\\\s)*(#).*$\\\\n?","name":"comment.line.hash.ini"},{"captures":{"1":{"name":"punctuation.definition.tag.apacheconf"},"2":{"name":"entity.tag.apacheconf"},"4":{"name":"string.value.apacheconf"},"5":{"name":"punctuation.definition.tag.apacheconf"}},"match":"(<)(Proxy|ProxyMatch|IfVersion|Directory|DirectoryMatch|Files|FilesMatch|IfDefine|IfModule|Limit|LimitExcept|Location|LocationMatch|VirtualHost|Macro|If|Else|ElseIf)(\\\\s(.+?))?(>)"},{"captures":{"1":{"name":"punctuation.definition.tag.apacheconf"},"2":{"name":"entity.tag.apacheconf"},"3":{"name":"punctuation.definition.tag.apacheconf"}},"match":"()"},{"captures":{"3":{"name":"string.regexp.apacheconf"},"4":{"name":"string.replacement.apacheconf"}},"match":"(?<=(Rewrite(Rule|Cond)))\\\\s+(.+?)\\\\s+(.+?)($|\\\\s)"},{"captures":{"2":{"name":"entity.status.apacheconf"},"3":{"name":"string.regexp.apacheconf"},"5":{"name":"string.path.apacheconf"}},"match":"(?<=RedirectMatch)(\\\\s+(\\\\d\\\\d\\\\d|permanent|temp|seeother|gone))?\\\\s+(.+?)\\\\s+((.+?)($|\\\\s))?"},{"captures":{"2":{"name":"entity.status.apacheconf"},"3":{"name":"string.path.apacheconf"},"5":{"name":"string.path.apacheconf"}},"match":"(?<=Redirect)(\\\\s+(\\\\d\\\\d\\\\d|permanent|temp|seeother|gone))?\\\\s+(.+?)\\\\s+((.+?)($|\\\\s))?"},{"captures":{"1":{"name":"string.regexp.apacheconf"},"3":{"name":"string.path.apacheconf"}},"match":"(?<=ScriptAliasMatch|AliasMatch)\\\\s+(.+?)\\\\s+((.+?)\\\\s)?"},{"captures":{"1":{"name":"string.path.apacheconf"},"3":{"name":"string.path.apacheconf"}},"match":"(?<=RedirectPermanent|RedirectTemp|ScriptAlias|Alias)\\\\s+(.+?)\\\\s+((.+?)($|\\\\s))?"},{"captures":{"1":{"name":"keyword.core.apacheconf"}},"match":"\\\\b(AcceptPathInfo|AccessFileName|AddDefaultCharset|AddOutputFilterByType|AllowEncodedSlashes|AllowOverride|AuthName|AuthType|CGIMapExtension|ContentDigest|DefaultType|Define|DocumentRoot|EnableMMAP|EnableSendfile|ErrorDocument|ErrorLog|FileETag|ForceType|HostnameLookups|IdentityCheck|Include(Optional)?|KeepAlive|KeepAliveTimeout|LimitInternalRecursion|LimitRequestBody|LimitRequestFields|LimitRequestFieldSize|LimitRequestLine|LimitXMLRequestBody|LogLevel|MaxKeepAliveRequests|Mutex|NameVirtualHost|Options|Require|RLimitCPU|RLimitMEM|RLimitNPROC|Satisfy|ScriptInterpreterSource|ServerAdmin|ServerAlias|ServerName|ServerPath|ServerRoot|ServerSignature|ServerTokens|SetHandler|SetInputFilter|SetOutputFilter|Time(O|o)ut|TraceEnable|UseCanonicalName|Use|ErrorLogFormat|GlobalLog|PHPIniDir|SSLHonorCipherOrder|SSLCompression|SSLUseStapling|SSLStapling\\\\w+|SSLCARevocationCheck|SSLSRPVerifierFile|SSLSessionTickets|RequestReadTimeout|ProxyHTML\\\\w+|MaxRanges)\\\\b"},{"captures":{"1":{"name":"keyword.mpm.apacheconf"}},"match":"\\\\b(AcceptMutex|AssignUserID|BS2000Account|ChildPerUserID|CoreDumpDirectory|EnableExceptionHook|Group|Listen|ListenBacklog|LockFile|MaxClients|MaxConnectionsPerChild|MaxMemFree|MaxRequestsPerChild|MaxRequestsPerThread|MaxRequestWorkers|MaxSpareServers|MaxSpareThreads|MaxThreads|MaxThreadsPerChild|MinSpareServers|MinSpareThreads|NumServers|PidFile|ReceiveBufferSize|ScoreBoardFile|SendBufferSize|ServerLimit|StartServers|StartThreads|ThreadLimit|ThreadsPerChild|ThreadStackSize|User|Win32DisableAcceptEx)\\\\b"},{"captures":{"1":{"name":"keyword.access.apacheconf"}},"match":"\\\\b(Allow|Deny|Order)\\\\b"},{"captures":{"1":{"name":"keyword.actions.apacheconf"}},"match":"\\\\b(Action|Script)\\\\b"},{"captures":{"1":{"name":"keyword.alias.apacheconf"}},"match":"\\\\b(Alias|AliasMatch|Redirect|RedirectMatch|RedirectPermanent|RedirectTemp|ScriptAlias|ScriptAliasMatch)\\\\b"},{"captures":{"1":{"name":"keyword.auth.apacheconf"}},"match":"\\\\b(AuthAuthoritative|AuthGroupFile|AuthUserFile|AuthBasicProvider|AuthBasicFake|AuthBasicAuthoritative|AuthBasicUseDigestAlgorithm)\\\\b"},{"captures":{"1":{"name":"keyword.auth_anon.apacheconf"}},"match":"\\\\b(Anonymous|Anonymous_Authoritative|Anonymous_LogEmail|Anonymous_MustGiveEmail|Anonymous_NoUserID|Anonymous_VerifyEmail)\\\\b"},{"captures":{"1":{"name":"keyword.auth_dbm.apacheconf"}},"match":"\\\\b(AuthDBMAuthoritative|AuthDBMGroupFile|AuthDBMType|AuthDBMUserFile)\\\\b"},{"captures":{"1":{"name":"keyword.auth_digest.apacheconf"}},"match":"\\\\b(AuthDigestAlgorithm|AuthDigestDomain|AuthDigestFile|AuthDigestGroupFile|AuthDigestNcCheck|AuthDigestNonceFormat|AuthDigestNonceLifetime|AuthDigestQop|AuthDigestShmemSize|AuthDigestProvider)\\\\b"},{"captures":{"1":{"name":"keyword.auth_ldap.apacheconf"}},"match":"\\\\b(AuthLDAPAuthoritative|AuthLDAPBindDN|AuthLDAPBindPassword|AuthLDAPCharsetConfig|AuthLDAPCompareDNOnServer|AuthLDAPDereferenceAliases|AuthLDAPEnabled|AuthLDAPFrontPageHack|AuthLDAPGroupAttribute|AuthLDAPGroupAttributeIsDN|AuthLDAPRemoteUserIsDN|AuthLDAPUrl)\\\\b"},{"captures":{"1":{"name":"keyword.autoindex.apacheconf"}},"match":"\\\\b(AddAlt|AddAltByEncoding|AddAltByType|AddDescription|AddIcon|AddIconByEncoding|AddIconByType|DefaultIcon|HeaderName|IndexIgnore|IndexOptions|IndexOrderDefault|IndexStyleSheet|IndexHeadInsert|ReadmeName)\\\\b"},{"captures":{"1":{"name":"keyword.filter.apacheconf"}},"match":"\\\\b(BalancerMember|BalancerGrowth|BalancerPersist|BalancerInherit)\\\\b"},{"captures":{"1":{"name":"keyword.cache.apacheconf"}},"match":"\\\\b(CacheDefaultExpire|CacheDisable|CacheEnable|CacheForceCompletion|CacheIgnoreCacheControl|CacheIgnoreHeaders|CacheIgnoreNoLastMod|CacheLastModifiedFactor|CacheMaxExpire)\\\\b"},{"captures":{"1":{"name":"keyword.cern_meta.apacheconf"}},"match":"\\\\b(MetaDir|MetaFiles|MetaSuffix)\\\\b"},{"captures":{"1":{"name":"keyword.cgi.apacheconf"}},"match":"\\\\b(ScriptLog|ScriptLogBuffer|ScriptLogLength)\\\\b"},{"captures":{"1":{"name":"keyword.cgid.apacheconf"}},"match":"\\\\b(ScriptLog|ScriptLogBuffer|ScriptLogLength|ScriptSock)\\\\b"},{"captures":{"1":{"name":"keyword.charset_lite.apacheconf"}},"match":"\\\\b(CharsetDefault|CharsetOptions|CharsetSourceEnc)\\\\b"},{"captures":{"1":{"name":"keyword.dav.apacheconf"}},"match":"\\\\b(Dav|DavDepthInfinity|DavMinTimeout|DavLockDB)\\\\b"},{"captures":{"1":{"name":"keyword.deflate.apacheconf"}},"match":"\\\\b(DeflateBufferSize|DeflateCompressionLevel|DeflateFilterNote|DeflateMemLevel|DeflateWindowSize)\\\\b"},{"captures":{"1":{"name":"keyword.dir.apacheconf"}},"match":"\\\\b(DirectoryIndex|DirectorySlash|FallbackResource)\\\\b"},{"captures":{"1":{"name":"keyword.disk_cache.apacheconf"}},"match":"\\\\b(CacheDirLength|CacheDirLevels|CacheExpiryCheck|CacheGcClean|CacheGcDaily|CacheGcInterval|CacheGcMemUsage|CacheGcUnused|CacheMaxFileSize|CacheMinFileSize|CacheRoot|CacheSize|CacheTimeMargin)\\\\b"},{"captures":{"1":{"name":"keyword.dumpio.apacheconf"}},"match":"\\\\b(DumpIOInput|DumpIOOutput)\\\\b"},{"captures":{"1":{"name":"keyword.env.apacheconf"}},"match":"\\\\b(PassEnv|SetEnv|UnsetEnv)\\\\b"},{"captures":{"1":{"name":"keyword.expires.apacheconf"}},"match":"\\\\b(ExpiresActive|ExpiresByType|ExpiresDefault)\\\\b"},{"captures":{"1":{"name":"keyword.ext_filter.apacheconf"}},"match":"\\\\b(ExtFilterDefine|ExtFilterOptions)\\\\b"},{"captures":{"1":{"name":"keyword.file_cache.apacheconf"}},"match":"\\\\b(CacheFile|MMapFile)\\\\b"},{"captures":{"1":{"name":"keyword.filter.apacheconf"}},"match":"\\\\b(AddOutputFilterByType|FilterChain|FilterDeclare|FilterProtocol|FilterProvider|FilterTrace)\\\\b"},{"captures":{"1":{"name":"keyword.headers.apacheconf"}},"match":"\\\\b(Header|RequestHeader)\\\\b"},{"captures":{"1":{"name":"keyword.imap.apacheconf"}},"match":"\\\\b(ImapBase|ImapDefault|ImapMenu)\\\\b"},{"captures":{"1":{"name":"keyword.include.apacheconf"}},"match":"\\\\b(SSIEndTag|SSIErrorMsg|SSIStartTag|SSITimeFormat|SSIUndefinedEcho|XBitHack)\\\\b"},{"captures":{"1":{"name":"keyword.isapi.apacheconf"}},"match":"\\\\b(ISAPIAppendLogToErrors|ISAPIAppendLogToQuery|ISAPICacheFile|ISAPIFakeAsync|ISAPILogNotSupported|ISAPIReadAheadBuffer)\\\\b"},{"captures":{"1":{"name":"keyword.ldap.apacheconf"}},"match":"\\\\b(LDAPCacheEntries|LDAPCacheTTL|LDAPConnectionTimeout|LDAPOpCacheEntries|LDAPOpCacheTTL|LDAPSharedCacheFile|LDAPSharedCacheSize|LDAPTrustedCA|LDAPTrustedCAType)\\\\b"},{"captures":{"1":{"name":"keyword.log.apacheconf"}},"match":"\\\\b(BufferedLogs|CookieLog|CustomLog|LogFormat|TransferLog|ForensicLog)\\\\b"},{"captures":{"1":{"name":"keyword.mem_cache.apacheconf"}},"match":"\\\\b(MCacheMaxObjectCount|MCacheMaxObjectSize|MCacheMaxStreamingBuffer|MCacheMinObjectSize|MCacheRemovalAlgorithm|MCacheSize)\\\\b"},{"captures":{"1":{"name":"keyword.mime.apacheconf"}},"match":"\\\\b(AddCharset|AddEncoding|AddHandler|AddInputFilter|AddLanguage|AddOutputFilter|AddType|DefaultLanguage|ModMimeUsePathInfo|MultiviewsMatch|RemoveCharset|RemoveEncoding|RemoveHandler|RemoveInputFilter|RemoveLanguage|RemoveOutputFilter|RemoveType|TypesConfig)\\\\b"},{"captures":{"1":{"name":"keyword.misc.apacheconf"}},"match":"\\\\b(ProtocolEcho|Example|AddModuleInfo|MimeMagicFile|CheckSpelling|ExtendedStatus|SuexecUserGroup|UserDir)\\\\b"},{"captures":{"1":{"name":"keyword.negotiation.apacheconf"}},"match":"\\\\b(CacheNegotiatedDocs|ForceLanguagePriority|LanguagePriority)\\\\b"},{"captures":{"1":{"name":"keyword.nw_ssl.apacheconf"}},"match":"\\\\b(NWSSLTrustedCerts|NWSSLUpgradeable|SecureListen)\\\\b"},{"captures":{"1":{"name":"keyword.proxy.apacheconf"}},"match":"\\\\b(AllowCONNECT|NoProxy|ProxyBadHeader|ProxyBlock|ProxyDomain|ProxyErrorOverride|ProxyFtpDirCharset|ProxyIOBufferSize|ProxyMaxForwards|ProxyPass|ProxyPassMatch|ProxyPassReverse|ProxyPreserveHost|ProxyReceiveBufferSize|ProxyRemote|ProxyRemoteMatch|ProxyRequests|ProxyTimeout|ProxyVia)\\\\b"},{"captures":{"1":{"name":"keyword.rewrite.apacheconf"}},"match":"\\\\b(RewriteBase|RewriteCond|RewriteEngine|RewriteLock|RewriteLog|RewriteLogLevel|RewriteMap|RewriteOptions|RewriteRule)\\\\b"},{"captures":{"1":{"name":"keyword.setenvif.apacheconf"}},"match":"\\\\b(BrowserMatch|BrowserMatchNoCase|SetEnvIf|SetEnvIfNoCase)\\\\b"},{"captures":{"1":{"name":"keyword.so.apacheconf"}},"match":"\\\\b(LoadFile|LoadModule)\\\\b"},{"captures":{"1":{"name":"keyword.ssl.apacheconf"}},"match":"\\\\b(SSLCACertificateFile|SSLCACertificatePath|SSLCARevocationFile|SSLCARevocationPath|SSLCertificateChainFile|SSLCertificateFile|SSLCertificateKeyFile|SSLCipherSuite|SSLEngine|SSLMutex|SSLOptions|SSLPassPhraseDialog|SSLProtocol|SSLProxyCACertificateFile|SSLProxyCACertificatePath|SSLProxyCARevocationFile|SSLProxyCARevocationPath|SSLProxyCipherSuite|SSLProxyEngine|SSLProxyMachineCertificateFile|SSLProxyMachineCertificatePath|SSLProxyProtocol|SSLProxyVerify|SSLProxyVerifyDepth|SSLRandomSeed|SSLRequire|SSLRequireSSL|SSLSessionCache|SSLSessionCacheTimeout|SSLUserName|SSLVerifyClient|SSLVerifyDepth|SSLInsecureRenegotiation|SSLOpenSSLConfCmd)\\\\b"},{"captures":{"1":{"name":"keyword.substitute.apacheconf"}},"match":"\\\\b(Substitute|SubstituteInheritBefore|SubstituteMaxLineLength)\\\\b"},{"captures":{"1":{"name":"keyword.usertrack.apacheconf"}},"match":"\\\\b(CookieDomain|CookieExpires|CookieName|CookieStyle|CookieTracking)\\\\b"},{"captures":{"1":{"name":"keyword.vhost_alias.apacheconf"}},"match":"\\\\b(VirtualDocumentRoot|VirtualDocumentRootIP|VirtualScriptAlias|VirtualScriptAliasIP)\\\\b"},{"captures":{"1":{"name":"keyword.php.apacheconf"},"3":{"name":"entity.property.apacheconf"},"5":{"name":"string.value.apacheconf"}},"match":"\\\\b(php_value|php_flag|php_admin_value|php_admin_flag)\\\\b(\\\\s+(.+?)(\\\\s+(\\".+?\\"|.+?))?)?\\\\s"},{"captures":{"1":{"name":"punctuation.variable.apacheconf"},"3":{"name":"variable.env.apacheconf"},"4":{"name":"variable.misc.apacheconf"},"5":{"name":"punctuation.variable.apacheconf"}},"match":"(%\\\\{)((HTTP_USER_AGENT|HTTP_REFERER|HTTP_COOKIE|HTTP_FORWARDED|HTTP_HOST|HTTP_PROXY_CONNECTION|HTTP_ACCEPT|REMOTE_ADDR|REMOTE_HOST|REMOTE_PORT|REMOTE_USER|REMOTE_IDENT|REQUEST_METHOD|SCRIPT_FILENAME|PATH_INFO|QUERY_STRING|AUTH_TYPE|DOCUMENT_ROOT|SERVER_ADMIN|SERVER_NAME|SERVER_ADDR|SERVER_PORT|SERVER_PROTOCOL|SERVER_SOFTWARE|TIME_YEAR|TIME_MON|TIME_DAY|TIME_HOUR|TIME_MIN|TIME_SEC|TIME_WDAY|TIME|API_VERSION|THE_REQUEST|REQUEST_URI|REQUEST_FILENAME|IS_SUBREQ|HTTPS)|(.*?))(\\\\})"},{"captures":{"1":{"name":"entity.mime-type.apacheconf"}},"match":"\\\\b((text|image|application|video|audio)/.+?)\\\\s"},{"captures":{"1":{"name":"entity.helper.apacheconf"}},"match":"\\\\b(?i)(export|from|unset|set|on|off)\\\\b"},{"captures":{"1":{"name":"constant.numeric.integer.decimal.apacheconf"}},"match":"\\\\b(\\\\d+)\\\\b"},{"captures":{"1":{"name":"punctuation.definition.flag.apacheconf"},"2":{"name":"string.flag.apacheconf"},"3":{"name":"punctuation.definition.flag.apacheconf"}},"match":"\\\\s(\\\\[)(.*?)(\\\\])\\\\s"}],"scopeName":"source.apacheconf"}')),Iee=[Qee]});var b8={};x(b8,{default:()=>Fee});var Dee,Fee,h8=_(()=>{Dee=Object.freeze(JSON.parse(`{"displayName":"Apex","fileTypes":["apex","cls","trigger"],"name":"apex","patterns":[{"include":"#javadoc-comment"},{"include":"#comment"},{"include":"#directives"},{"include":"#declarations"},{"include":"#script-top-level"}],"repository":{"annotation-declaration":{"begin":"([@][_[:alpha:]]+)\\\\b","beginCaptures":{"1":{"name":"storage.type.annotation.apex"}},"end":"(?<=\\\\)|$)","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.open.apex"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.apex"}},"patterns":[{"include":"#expression"}]},{"include":"#statement"}]},"argument-list":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.open.apex"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.apex"}},"patterns":[{"include":"#named-argument"},{"include":"#expression"},{"include":"#punctuation-comma"}]},"array-creation-expression":{"begin":"\\\\b(new)\\\\b\\\\s*(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*))?\\\\s*(?=\\\\[)","beginCaptures":{"1":{"name":"keyword.control.new.apex"},"2":{"patterns":[{"include":"#support-type"},{"include":"#type"}]}},"end":"(?<=\\\\])","patterns":[{"include":"#bracketed-argument-list"}]},"block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.apex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.apex"}},"patterns":[{"include":"#statement"}]},"boolean-literal":{"patterns":[{"match":"(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*))\\\\s*(\\\\))(?=\\\\s*@?[_[:alnum:]\\\\(])"},"catch-clause":{"begin":"(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*))\\\\s*(?:(\\\\g)\\\\b)?"}]},{"include":"#comment"},{"include":"#block"}]},"class-declaration":{"begin":"(?=\\\\bclass\\\\b)","end":"(?<=\\\\})","patterns":[{"begin":"\\\\b(class)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*","beginCaptures":{"1":{"name":"keyword.other.class.apex"},"2":{"name":"entity.name.type.class.apex"}},"end":"(?=\\\\{)","patterns":[{"include":"#javadoc-comment"},{"include":"#comment"},{"include":"#type-parameter-list"},{"include":"#extends-class"},{"include":"#implements-class"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.apex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.apex"}},"patterns":[{"include":"#class-or-trigger-members"}]},{"include":"#javadoc-comment"},{"include":"#comment"}]},"class-or-trigger-members":{"patterns":[{"include":"#javadoc-comment"},{"include":"#comment"},{"include":"#storage-modifier"},{"include":"#sharing-modifier"},{"include":"#type-declarations"},{"include":"#field-declaration"},{"include":"#property-declaration"},{"include":"#indexer-declaration"},{"include":"#variable-initializer"},{"include":"#constructor-declaration"},{"include":"#method-declaration"},{"include":"#punctuation-semicolon"}]},"colon-expression":{"match":":","name":"keyword.operator.conditional.colon.apex"},"comment":{"patterns":[{"begin":"/\\\\*(\\\\*)?","beginCaptures":{"0":{"name":"punctuation.definition.comment.apex"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.apex"}},"name":"comment.block.apex"},{"begin":"(^\\\\s+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.apex"}},"end":"(?=$)","patterns":[{"begin":"(?)","patterns":[{"include":"#constructor-initializer"}]},{"include":"#parenthesized-parameter-list"},{"include":"#comment"},{"include":"#expression-body"},{"include":"#block"}]},"constructor-initializer":{"begin":"\\\\b(?:(this))\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.other.this.apex"}},"end":"(?<=\\\\))","patterns":[{"include":"#argument-list"}]},"date-literal-with-params":{"captures":{"1":{"name":"keyword.operator.query.date.apex"}},"match":"\\\\b((LAST_N_DAYS|NEXT_N_DAYS|NEXT_N_WEEKS|LAST_N_WEEKS|NEXT_N_MONTHS|LAST_N_MONTHS|NEXT_N_QUARTERS|LAST_N_QUARTERS|NEXT_N_YEARS|LAST_N_YEARS|NEXT_N_FISCAL_QUARTERS|LAST_N_FISCAL_QUARTERS|NEXT_N_FISCAL_YEARS|LAST_N_FISCAL_YEARS)\\\\s*\\\\:\\\\d+)\\\\b"},"date-literals":{"captures":{"1":{"name":"keyword.operator.query.date.apex"}},"match":"\\\\b(YESTERDAY|TODAY|TOMORROW|LAST_WEEK|THIS_WEEK|NEXT_WEEK|LAST_MONTH|THIS_MONTH|NEXT_MONTH|LAST_90_DAYS|NEXT_90_DAYS|THIS_QUARTER|LAST_QUARTER|NEXT_QUARTER|THIS_YEAR|LAST_YEAR|NEXT_YEAR|THIS_FISCAL_QUARTER|LAST_FISCAL_QUARTER|NEXT_FISCAL_QUARTER|THIS_FISCAL_YEAR|LAST_FISCAL_YEAR|NEXT_FISCAL_YEAR)\\\\b\\\\s*"},"declarations":{"patterns":[{"include":"#type-declarations"},{"include":"#punctuation-semicolon"}]},"directives":{"patterns":[{"include":"#punctuation-semicolon"}]},"do-statement":{"begin":"(?","beginCaptures":{"0":{"name":"keyword.operator.arrow.apex"}},"end":"(?=[,\\\\);}])","patterns":[{"include":"#expression"}]},"expression-operators":{"patterns":[{"match":"\\\\*=|/=|%=|\\\\+=|-=","name":"keyword.operator.assignment.compound.apex"},{"match":"\\\\&=|\\\\^=|<<=|>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.apex"},{"match":"<<|>>","name":"keyword.operator.bitwise.shift.apex"},{"match":"==|!=","name":"keyword.operator.comparison.apex"},{"match":"<=|>=|<|>","name":"keyword.operator.relational.apex"},{"match":"\\\\!|&&|\\\\|\\\\|","name":"keyword.operator.logical.apex"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.apex"},{"match":"\\\\=","name":"keyword.operator.assignment.apex"},{"match":"--","name":"keyword.operator.decrement.apex"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.apex"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.apex"}]},"extends-class":{"begin":"(extends)\\\\b\\\\s+([_[:alpha:]][_[:alnum:]]*)","beginCaptures":{"1":{"name":"keyword.other.extends.apex"},"2":{"name":"entity.name.type.extends.apex"}},"end":"(?={|implements)"},"field-declaration":{"begin":"(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*))\\\\s+(\\\\g)\\\\s*(?!=>|==)(?=,|;|=|$)","beginCaptures":{"1":{"patterns":[{"include":"#support-type"},{"include":"#type"}]},"5":{"name":"entity.name.variable.field.apex"}},"end":"(?=;)","patterns":[{"match":"@?[_[:alpha:]][_[:alnum:]]*","name":"entity.name.variable.field.apex"},{"include":"#punctuation-comma"},{"include":"#comment"},{"include":"#variable-initializer"},{"include":"#class-or-trigger-members"}]},"finally-clause":{"begin":"(?(?(?:(?:ref\\\\s+)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*))\\\\s+)(?\\\\g\\\\s*\\\\.\\\\s*)?(?this)\\\\s*(?=\\\\[)","beginCaptures":{"1":{"patterns":[{"include":"#type"}]},"6":{"patterns":[{"include":"#type"},{"include":"#punctuation-accessor"}]},"7":{"name":"keyword.other.this.apex"}},"end":"(?<=\\\\})|(?=;)","patterns":[{"include":"#comment"},{"include":"#property-accessors"},{"include":"#expression-body"},{"include":"#variable-initializer"}]},"initializer-expression":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.apex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.apex"}},"patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"interface-declaration":{"begin":"(?=\\\\binterface\\\\b)","end":"(?<=\\\\})","patterns":[{"begin":"(interface)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)","beginCaptures":{"1":{"name":"keyword.other.interface.apex"},"2":{"name":"entity.name.type.interface.apex"}},"end":"(?=\\\\{)","patterns":[{"include":"#javadoc-comment"},{"include":"#comment"},{"include":"#type-parameter-list"},{"include":"#extends-class"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.apex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.apex"}},"patterns":[{"include":"#interface-members"}]},{"include":"#javadoc-comment"},{"include":"#comment"}]},"interface-members":{"patterns":[{"include":"#javadoc-comment"},{"include":"#comment"},{"include":"#property-declaration"},{"include":"#indexer-declaration"},{"include":"#method-declaration"},{"include":"#punctuation-semicolon"}]},"invocation-expression":{"begin":"(?:(\\\\??\\\\.)\\\\s*)?(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?\\\\s*<([^<>]|\\\\g)+>\\\\s*)?\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#punctuation-accessor"},{"include":"#operator-safe-navigation"}]},"2":{"name":"entity.name.function.apex"},"3":{"patterns":[{"include":"#type-arguments"}]}},"end":"(?<=\\\\))","patterns":[{"include":"#argument-list"}]},"javadoc-comment":{"patterns":[{"begin":"^\\\\s*(/\\\\*\\\\*)(?!/)","beginCaptures":{"1":{"name":"punctuation.definition.comment.apex"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.apex"}},"name":"comment.block.javadoc.apex","patterns":[{"match":"@(deprecated|author|return|see|serial|since|version|usage|name|link)\\\\b","name":"keyword.other.documentation.javadoc.apex"},{"captures":{"1":{"name":"keyword.other.documentation.javadoc.apex"},"2":{"name":"entity.name.variable.parameter.apex"}},"match":"(@param)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"keyword.other.documentation.javadoc.apex"},"2":{"name":"entity.name.type.class.apex"}},"match":"(@(?:exception|throws))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"string.quoted.single.apex"}},"match":"(\`([^\`]+?)\`)"}]}]},"literal":{"patterns":[{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#numeric-literal"},{"include":"#string-literal"}]},"local-constant-declaration":{"begin":"(?\\\\b(?:const)\\\\b)\\\\s*(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*))\\\\s+(\\\\g)\\\\s*(?=,|;|=)","beginCaptures":{"1":{"name":"storage.modifier.apex"},"2":{"patterns":[{"include":"#type"}]},"6":{"name":"entity.name.variable.local.apex"}},"end":"(?=;)","patterns":[{"match":"@?[_[:alpha:]][_[:alnum:]]*","name":"entity.name.variable.local.apex"},{"include":"#punctuation-comma"},{"include":"#comment"},{"include":"#variable-initializer"}]},"local-declaration":{"patterns":[{"include":"#local-constant-declaration"},{"include":"#local-variable-declaration"}]},"local-variable-declaration":{"begin":"(?:(?:(\\\\bref)\\\\s+)?(\\\\bvar\\\\b)|(?(?:(?:ref\\\\s+)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*)))\\\\s+(\\\\g)\\\\s*(?=,|;|=|\\\\))","beginCaptures":{"1":{"name":"storage.modifier.apex"},"2":{"name":"keyword.other.var.apex"},"3":{"patterns":[{"include":"#support-type"},{"include":"#type"}]},"7":{"name":"entity.name.variable.local.apex"}},"end":"(?=;|\\\\))","patterns":[{"match":"@?[_[:alpha:]][_[:alnum:]]*","name":"entity.name.variable.local.apex"},{"include":"#punctuation-comma"},{"include":"#comment"},{"include":"#variable-initializer"}]},"member-access-expression":{"patterns":[{"captures":{"1":{"patterns":[{"include":"#punctuation-accessor"},{"include":"#operator-safe-navigation"}]},"2":{"name":"variable.other.object.property.apex"}},"match":"(\\\\??\\\\.)\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?![_[:alnum:]]|\\\\(|(\\\\?)?\\\\[|<)"},{"captures":{"1":{"patterns":[{"include":"#punctuation-accessor"},{"include":"#operator-safe-navigation"}]},"2":{"name":"variable.other.object.apex"},"3":{"patterns":[{"include":"#type-arguments"}]}},"match":"(\\\\??\\\\.)?\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)(?\\\\s*<([^<>]|\\\\g)+>\\\\s*)(?=(\\\\s*\\\\?)?\\\\s*\\\\.\\\\s*@?[_[:alpha:]][_[:alnum:]]*)"},{"captures":{"1":{"name":"variable.other.object.apex"}},"match":"(@?[_[:alpha:]][_[:alnum:]]*)(?=(\\\\s*\\\\?)?\\\\s*\\\\.\\\\s*@?[_[:alpha:]][_[:alnum:]]*)"}]},"merge-expression":{"begin":"(merge)\\\\b\\\\s+","beginCaptures":{"1":{"name":"support.function.apex"}},"end":"(?<=\\\\;)","patterns":[{"include":"#object-creation-expression"},{"include":"#merge-type-statement"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]},"merge-type-statement":{"captures":{"1":{"name":"variable.other.readwrite.apex"},"2":{"name":"variable.other.readwrite.apex"},"3":{"name":"punctuation.terminator.statement.apex"}},"match":"([_[:alpha:]]*)\\\\b\\\\s+([_[:alpha:]]*)\\\\b\\\\s*(\\\\;)"},"method-declaration":{"begin":"(?(?(?:(?:ref\\\\s+)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*))\\\\s+)(?\\\\g\\\\s*\\\\.\\\\s*)?(\\\\g)\\\\s*(<([^<>]+)>)?\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#support-type"},{"include":"#type"}]},"6":{"patterns":[{"include":"#type"},{"include":"#punctuation-accessor"}]},"7":{"patterns":[{"include":"#support-type"},{"include":"#method-name-custom"}]},"8":{"patterns":[{"include":"#type-parameter-list"}]}},"end":"(?<=\\\\})|(?=;)","patterns":[{"include":"#comment"},{"include":"#parenthesized-parameter-list"},{"include":"#expression-body"},{"include":"#block"}]},"method-name-custom":{"match":"@?[_[:alpha:]][_[:alnum:]]*","name":"entity.name.function.apex"},"named-argument":{"begin":"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(:)","beginCaptures":{"1":{"name":"entity.name.variable.parameter.apex"},"2":{"name":"punctuation.separator.colon.apex"}},"end":"(?=(,|\\\\)|\\\\]))","patterns":[{"include":"#expression"}]},"null-literal":{"match":"(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*))\\\\s*(?=\\\\{|$)"},"object-creation-expression-with-parameters":{"begin":"(delete|insert|undelete|update|upsert)?\\\\s*(new)\\\\s+(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.apex"},"2":{"name":"keyword.control.new.apex"},"3":{"patterns":[{"include":"#support-type"},{"include":"#type"}]}},"end":"(?<=\\\\))","patterns":[{"include":"#argument-list"}]},"operator-assignment":{"match":"(?(?:(?:ref\\\\s+)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*))\\\\s+(\\\\g)"},"parenthesized-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.open.apex"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.apex"}},"patterns":[{"include":"#expression"}]},"parenthesized-parameter-list":{"begin":"(\\\\()","beginCaptures":{"0":{"name":"punctuation.parenthesis.open.apex"}},"end":"(\\\\))","endCaptures":{"0":{"name":"punctuation.parenthesis.close.apex"}},"patterns":[{"include":"#comment"},{"include":"#parameter"},{"include":"#punctuation-comma"},{"include":"#variable-initializer"}]},"property-accessors":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.apex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.apex"}},"patterns":[{"match":"\\\\b(private|protected)\\\\b","name":"storage.modifier.apex"},{"match":"\\\\b(get)\\\\b","name":"keyword.other.get.apex"},{"match":"\\\\b(set)\\\\b","name":"keyword.other.set.apex"},{"include":"#comment"},{"include":"#expression-body"},{"include":"#block"},{"include":"#punctuation-semicolon"}]},"property-declaration":{"begin":"(?!.*\\\\b(?:class|interface|enum)\\\\b)\\\\s*(?(?(?:(?:ref\\\\s+)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*)(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*)*))\\\\s+)(?\\\\g\\\\s*\\\\.\\\\s*)?(?\\\\g)\\\\s*(?=\\\\{|=>|$)","beginCaptures":{"1":{"patterns":[{"include":"#type"}]},"6":{"patterns":[{"include":"#type"},{"include":"#punctuation-accessor"}]},"7":{"name":"entity.name.variable.property.apex"}},"end":"(?<=\\\\})|(?=;)","patterns":[{"include":"#comment"},{"include":"#property-accessors"},{"include":"#expression-body"},{"include":"#variable-initializer"},{"include":"#class-or-trigger-members"}]},"punctuation-accessor":{"match":"\\\\.","name":"punctuation.accessor.apex"},"punctuation-comma":{"match":",","name":"punctuation.separator.comma.apex"},"punctuation-semicolon":{"match":";","name":"punctuation.terminator.statement.apex"},"query-operators":{"captures":{"1":{"name":"keyword.operator.query.apex"}},"match":"\\\\b(ABOVE|AND|AT|FOR REFERENCE|FOR UPDATE|FOR VIEW|GROUP BY|HAVING|IN|LIKE|LIMIT|NOT IN|NOT|OFFSET|OR|TYPEOF|UPDATE TRACKING|UPDATE VIEWSTAT|WITH DATA CATEGORY|WITH)\\\\b\\\\s*"},"return-statement":{"begin":"(?","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.apex"}},"patterns":[{"include":"#comment"},{"include":"#support-type"},{"include":"#punctuation-comma"}]},"support-class":{"captures":{"1":{"name":"support.class.apex"}},"match":"\\\\b(ApexPages|Database|DMLException|Exception|PageReference|Savepoint|SchedulableContext|Schema|SObject|System|Test)\\\\b"},"support-expression":{"begin":"(ApexPages|Database|DMLException|Exception|PageReference|Savepoint|SchedulableContext|Schema|SObject|System|Test)(?=\\\\.|\\\\s)","beginCaptures":{"1":{"name":"support.class.apex"}},"end":"(?<=\\\\)|$)|(?=\\\\})|(?=;)|(?=\\\\)|(?=\\\\]))|(?=\\\\,)","patterns":[{"include":"#support-type"},{"captures":{"1":{"name":"punctuation.accessor.apex"},"2":{"name":"support.function.apex"}},"match":"(?:(\\\\.))([[:alpha:]]*)(?=\\\\()"},{"captures":{"1":{"name":"punctuation.accessor.apex"},"2":{"name":"support.type.apex"}},"match":"(?:(\\\\.))([[:alpha:]]+)"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.open.apex"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.apex"}},"patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},{"include":"#comment"},{"include":"#statement"}]},"support-functions":{"captures":{"1":{"name":"support.function.apex"}},"match":"\\\\b(delete|execute|finish|insert|start|undelete|update|upsert)\\\\b"},"support-name":{"patterns":[{"captures":{"1":{"name":"punctuation.accessor.apex"},"2":{"name":"support.function.apex"}},"match":"(\\\\.)\\\\s*([[:alpha:]]*)(?=\\\\()"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.open.apex"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.apex"}},"patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},{"captures":{"1":{"name":"punctuation.accessor.apex"},"2":{"name":"support.type.apex"}},"match":"(\\\\.)\\\\s*([_[:alpha:]]*)"}]},"support-type":{"name":"support.apex","patterns":[{"include":"#comment"},{"include":"#support-class"},{"include":"#support-functions"},{"include":"#support-name"}]},"switch-statement":{"begin":"(switch)\\\\b\\\\s+(on)\\\\b\\\\s+(?:([_.?\\\\'\\\\(\\\\)[:alnum:]]+)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.switch.apex"},"2":{"name":"keyword.control.switch.on.apex"},"3":{"patterns":[{"include":"#statement"},{"include":"#parenthesized-expression"}]},"4":{"name":"punctuation.curlybrace.open.apex"}},"end":"(\\\\})","endCaptures":{"0":{"name":"punctuation.curlybrace.close.apex"}},"patterns":[{"include":"#when-string"},{"include":"#when-else-statement"},{"include":"#when-sobject-statement"},{"include":"#when-statement"},{"include":"#when-multiple-statement"},{"include":"#expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"}]},"this-expression":{"captures":{"1":{"name":"keyword.other.this.apex"}},"match":"\\\\b(?:(this))\\\\b"},"throw-expression":{"captures":{"1":{"name":"keyword.control.flow.throw.apex"}},"match":"(?","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.apex"}},"patterns":[{"include":"#comment"},{"include":"#support-type"},{"include":"#type"},{"include":"#punctuation-comma"}]},"type-array-suffix":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.squarebracket.open.apex"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.squarebracket.close.apex"}},"patterns":[{"include":"#punctuation-comma"}]},"type-builtin":{"captures":{"1":{"name":"keyword.type.apex"}},"match":"\\\\b(Blob|Boolean|byte|Date|Datetime|Decimal|Double|ID|Integer|Long|Object|String|Time|void)\\\\b"},"type-declarations":{"patterns":[{"include":"#javadoc-comment"},{"include":"#comment"},{"include":"#annotation-declaration"},{"include":"#storage-modifier"},{"include":"#sharing-modifier"},{"include":"#class-declaration"},{"include":"#enum-declaration"},{"include":"#interface-declaration"},{"include":"#trigger-declaration"},{"include":"#punctuation-semicolon"}]},"type-name":{"patterns":[{"captures":{"1":{"name":"storage.type.apex"},"2":{"name":"punctuation.accessor.apex"}},"match":"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(\\\\.)"},{"captures":{"1":{"name":"punctuation.accessor.apex"},"2":{"name":"storage.type.apex"}},"match":"(\\\\.)\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)"},{"match":"@?[_[:alpha:]][_[:alnum:]]*","name":"storage.type.apex"}]},"type-nullable-suffix":{"captures":{"0":{"name":"punctuation.separator.question-mark.apex"}},"match":"\\\\?"},"type-parameter-list":{"begin":"\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.apex"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.apex"}},"patterns":[{"captures":{"1":{"name":"entity.name.type.type-parameter.apex"}},"match":"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b"},{"include":"#comment"},{"include":"#punctuation-comma"}]},"using-scope":{"captures":{"1":{"name":"keyword.operator.query.using.apex"}},"match":"((USING SCOPE)\\\\b\\\\s*(Delegated|Everything|Mine|My_Territory|My_Team_Territory|Team))\\\\b\\\\s*"},"variable-initializer":{"begin":"(?)","beginCaptures":{"1":{"name":"keyword.operator.assignment.apex"}},"end":"(?=[,\\\\)\\\\];}])","patterns":[{"include":"#expression"}]},"when-else-statement":{"begin":"(when)\\\\b\\\\s+(else)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.switch.when.apex"},"2":{"name":"keyword.control.switch.else.apex"}},"end":"(?<=\\\\})","patterns":[{"include":"#block"},{"include":"#expression"}]},"when-multiple-statement":{"begin":"(when)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.switch.when.apex"}},"end":"(?<=\\\\})","patterns":[{"include":"#block"},{"include":"#expression"}]},"when-sobject-statement":{"begin":"(when)\\\\b\\\\s+([_[:alnum:]]+)\\\\s+([_[:alnum:]]+)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.switch.when.apex"},"2":{"name":"storage.type.apex"},"3":{"name":"entity.name.variable.local.apex"}},"end":"(?<=\\\\})","patterns":[{"include":"#block"},{"include":"#expression"}]},"when-statement":{"begin":"(when)\\\\b\\\\s+([\\\\'_\\\\-[:alnum:]]+)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.switch.when.apex"},"2":{"patterns":[{"include":"#expression"}]}},"end":"(?<=\\\\})","patterns":[{"include":"#block"},{"include":"#expression"}]},"when-string":{"begin":"(when)(\\\\b\\\\s*)((\\\\')[_.\\\\,\\\\'\\\\s*[:alnum:]]+)","beginCaptures":{"1":{"name":"keyword.control.switch.when.apex"},"2":{"name":"punctuation.whitespace.apex"},"3":{"patterns":[{"include":"#when-string-statement"},{"include":"#punctuation-comma"}]}},"end":"(?<=\\\\})","patterns":[{"include":"#block"},{"include":"#expression"}]},"when-string-statement":{"patterns":[{"begin":"\\\\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.apex"}},"end":"\\\\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.apex"}},"name":"string.quoted.single.apex"}]},"where-clause":{"captures":{"1":{"name":"keyword.operator.query.where.apex"}},"match":"\\\\b(WHERE)\\\\b\\\\s*"},"while-statement":{"begin":"(?","endCaptures":{"0":{"name":"punctuation.definition.string.end.apex"}},"name":"string.unquoted.cdata.apex"},"xml-character-entity":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.constant.apex"},"3":{"name":"punctuation.definition.constant.apex"}},"match":"(&)((?:[[:alpha:]:_][[:alnum:]:_.-]*)|(?:\\\\#[[:digit:]]+)|(?:\\\\#x[[:xdigit:]]+))(;)","name":"constant.character.entity.apex"},{"match":"&","name":"invalid.illegal.bad-ampersand.apex"}]},"xml-comment":{"begin":"","endCaptures":{"0":{"name":"punctuation.definition.comment.apex"}},"name":"comment.block.apex"},"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.apex"}},"end":"\\\\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.apex"}},"name":"string.quoted.single.apex","patterns":[{"include":"#xml-character-entity"}]},{"begin":"\\\\\\"","beginCaptures":{"0":{"name":"punctuation.definition.stringdoublequote.begin.apex"}},"end":"\\\\\\"","endCaptures":{"0":{"name":"punctuation.definition.stringdoublequote.end.apex"}},"name":"string.quoted.double.apex","patterns":[{"include":"#xml-character-entity"}]}]},"xml-tag":{"begin":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.apex"}},"name":"meta.tag.apex","patterns":[{"include":"#xml-attribute"}]}},"scopeName":"source.apex"}`)),Fee=[Dee]});var y8={};x(y8,{default:()=>WA});var See,WA,Ig=_(()=>{See=Object.freeze(JSON.parse(`{"displayName":"Java","name":"java","patterns":[{"begin":"\\\\b(package)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.other.package.java"}},"contentName":"storage.modifier.package.java","end":"\\\\s*(;)","endCaptures":{"1":{"name":"punctuation.terminator.java"}},"name":"meta.package.java","patterns":[{"include":"#comments"},{"match":"(?<=\\\\.)\\\\s*\\\\.|\\\\.(?=\\\\s*;)","name":"invalid.illegal.character_not_allowed_here.java"},{"match":"(?","endCaptures":{"0":{"name":"punctuation.bracket.angle.java"}},"patterns":[{"match":"\\\\b(extends|super)\\\\b","name":"storage.modifier.$1.java"},{"captures":{"1":{"name":"storage.type.java"}},"match":"(?>>?|~|\\\\^)","name":"keyword.operator.bitwise.java"},{"match":"((&|\\\\^|\\\\||<<|>>>?)=)","name":"keyword.operator.assignment.bitwise.java"},{"match":"(===?|!=|<=|>=|<>|<|>)","name":"keyword.operator.comparison.java"},{"match":"([+*/%-]=)","name":"keyword.operator.assignment.arithmetic.java"},{"match":"(=)","name":"keyword.operator.assignment.java"},{"match":"(\\\\-\\\\-|\\\\+\\\\+)","name":"keyword.operator.increment-decrement.java"},{"match":"(\\\\-|\\\\+|\\\\*|\\\\/|%)","name":"keyword.operator.arithmetic.java"},{"match":"(!|&&|\\\\|\\\\|)","name":"keyword.operator.logical.java"},{"match":"(\\\\||&)","name":"keyword.operator.bitwise.java"},{"match":"\\\\b(const|goto)\\\\b","name":"keyword.reserved.java"}]},"lambda-expression":{"patterns":[{"match":"->","name":"storage.type.function.arrow.java"}]},"member-variables":{"begin":"(?=private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)","end":"(?=\\\\=|;)","patterns":[{"include":"#storage-modifiers"},{"include":"#variables"},{"include":"#primitive-arrays"},{"include":"#object-types"}]},"method-call":{"begin":"(\\\\.)\\\\s*([A-Za-z_$][\\\\w$]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.separator.period.java"},"2":{"name":"entity.name.function.java"},"3":{"name":"punctuation.definition.parameters.begin.bracket.round.java"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.java"}},"name":"meta.method-call.java","patterns":[{"include":"#code"}]},"methods":{"begin":"(?!new)(?=[\\\\w<].*\\\\s+)(?=([^=/]|/(?!/))+\\\\()","end":"(})|(?=;)","endCaptures":{"1":{"name":"punctuation.section.method.end.bracket.curly.java"}},"name":"meta.method.java","patterns":[{"include":"#storage-modifiers"},{"begin":"(\\\\w+)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.java"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.java"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.java"}},"name":"meta.method.identifier.java","patterns":[{"include":"#parameters"},{"include":"#parens"},{"include":"#comments"}]},{"include":"#generics"},{"begin":"(?=\\\\w.*\\\\s+\\\\w+\\\\s*\\\\()","end":"(?=\\\\s+\\\\w+\\\\s*\\\\()","name":"meta.method.return-type.java","patterns":[{"include":"#all-types"},{"include":"#parens"},{"include":"#comments"}]},{"include":"#throws"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.method.begin.bracket.curly.java"}},"contentName":"meta.method.body.java","end":"(?=})","patterns":[{"include":"#code"}]},{"include":"#comments"}]},"module":{"begin":"((open)\\\\s)?(module)\\\\s+(\\\\w+)","beginCaptures":{"1":{"name":"storage.modifier.java"},"3":{"name":"storage.modifier.java"},"4":{"name":"entity.name.type.module.java"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.module.end.bracket.curly.java"}},"name":"meta.module.java","patterns":[{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.module.begin.bracket.curly.java"}},"contentName":"meta.module.body.java","end":"(?=})","patterns":[{"include":"#comments"},{"include":"#comments-javadoc"},{"match":"\\\\b(requires|transitive|exports|opens|to|uses|provides|with)\\\\b","name":"keyword.module.java"}]}]},"numbers":{"patterns":[{"match":"\\\\b(?)?(\\\\()","beginCaptures":{"1":{"name":"storage.modifier.java"},"2":{"name":"entity.name.type.record.java"},"3":{"patterns":[{"include":"#generics"}]},"4":{"name":"punctuation.definition.parameters.begin.bracket.round.java"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.java"}},"name":"meta.record.identifier.java","patterns":[{"include":"#code"}]},{"begin":"(implements)\\\\s","beginCaptures":{"1":{"name":"storage.modifier.implements.java"}},"end":"(?=\\\\s*\\\\{)","name":"meta.definition.class.implemented.interfaces.java","patterns":[{"include":"#object-types-inherited"},{"include":"#comments"}]},{"include":"#record-body"}]},"record-body":{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.class.begin.bracket.curly.java"}},"end":"(?=})","name":"meta.record.body.java","patterns":[{"include":"#record-constructor"},{"include":"#class-body"}]},"record-constructor":{"begin":"(?!new)(?=[\\\\w<].*\\\\s+)(?=([^\\\\(=/]|/(?!/))+(?={))","end":"(})|(?=;)","endCaptures":{"1":{"name":"punctuation.section.method.end.bracket.curly.java"}},"name":"meta.method.java","patterns":[{"include":"#storage-modifiers"},{"begin":"(\\\\w+)","beginCaptures":{"1":{"name":"entity.name.function.java"}},"end":"(?=\\\\s*{)","name":"meta.method.identifier.java","patterns":[{"include":"#comments"}]},{"include":"#comments"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.method.begin.bracket.curly.java"}},"contentName":"meta.method.body.java","end":"(?=})","patterns":[{"include":"#code"}]}]},"static-initializer":{"patterns":[{"include":"#anonymous-block-and-instance-initializer"},{"match":"static","name":"storage.modifier.java"}]},"storage-modifiers":{"match":"\\\\b(public|private|protected|static|final|native|synchronized|abstract|threadsafe|transient|volatile|default|strictfp|sealed|non-sealed)\\\\b","name":"storage.modifier.java"},"strings":{"patterns":[{"begin":"\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.java"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.java"}},"name":"string.quoted.triple.java","patterns":[{"match":"(\\\\\\\\\\"\\"\\")(?!\\")|(\\\\\\\\.)","name":"constant.character.escape.java"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.java"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.java"}},"name":"string.quoted.double.java","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.java"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.java"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.java"}},"name":"string.quoted.single.java","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.java"}]}]},"throws":{"begin":"throws","beginCaptures":{"0":{"name":"storage.modifier.java"}},"end":"(?={|;)","name":"meta.throwables.java","patterns":[{"match":",","name":"punctuation.separator.delimiter.java"},{"match":"[a-zA-Z$_][\\\\.a-zA-Z0-9$_]*","name":"storage.type.java"},{"include":"#comments"}]},"try-catch-finally":{"patterns":[{"begin":"\\\\btry\\\\b","beginCaptures":{"0":{"name":"keyword.control.try.java"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.try.end.bracket.curly.java"}},"name":"meta.try.java","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.try.resources.begin.bracket.round.java"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.try.resources.end.bracket.round.java"}},"name":"meta.try.resources.java","patterns":[{"include":"#code"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.try.begin.bracket.curly.java"}},"contentName":"meta.try.body.java","end":"(?=})","patterns":[{"include":"#code"}]}]},{"begin":"\\\\b(catch)\\\\b","beginCaptures":{"1":{"name":"keyword.control.catch.java"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.catch.end.bracket.curly.java"}},"name":"meta.catch.java","patterns":[{"include":"#comments"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.bracket.round.java"}},"contentName":"meta.catch.parameters.java","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.java"}},"patterns":[{"include":"#comments"},{"include":"#storage-modifiers"},{"begin":"[a-zA-Z$_][\\\\.a-zA-Z0-9$_]*","beginCaptures":{"0":{"name":"storage.type.java"}},"end":"(\\\\|)|(?=\\\\))","endCaptures":{"1":{"name":"punctuation.catch.separator.java"}},"patterns":[{"include":"#comments"},{"captures":{"0":{"name":"variable.parameter.java"}},"match":"\\\\w+"}]}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.catch.begin.bracket.curly.java"}},"contentName":"meta.catch.body.java","end":"(?=})","patterns":[{"include":"#code"}]}]},{"begin":"\\\\bfinally\\\\b","beginCaptures":{"0":{"name":"keyword.control.finally.java"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.finally.end.bracket.curly.java"}},"name":"meta.finally.java","patterns":[{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.finally.begin.bracket.curly.java"}},"contentName":"meta.finally.body.java","end":"(?=})","patterns":[{"include":"#code"}]}]}]},"variables":{"begin":"(?=\\\\b((void|boolean|byte|char|short|int|float|long|double)|(?>(\\\\w+\\\\.)*[A-Z_]+\\\\w*))\\\\b\\\\s*(<[\\\\w<>,\\\\.?\\\\s\\\\[\\\\]]*>)?\\\\s*((\\\\[\\\\])*)?\\\\s+[A-Za-z_$][\\\\w$]*([\\\\w\\\\[\\\\],$][\\\\w\\\\[\\\\],\\\\s]*)?\\\\s*(=|:|;))","end":"(?=\\\\=|:|;)","name":"meta.definition.variable.java","patterns":[{"captures":{"1":{"name":"variable.other.definition.java"}},"match":"([A-Za-z$_][\\\\w$]*)(?=\\\\s*(\\\\[\\\\])*\\\\s*(;|:|=|,))"},{"include":"#all-types"},{"include":"#code"}]},"variables-local":{"begin":"(?=\\\\b(var)\\\\b\\\\s+[A-Za-z_$][\\\\w$]*\\\\s*(=|:|;))","end":"(?=\\\\=|:|;)","name":"meta.definition.variable.local.java","patterns":[{"match":"\\\\bvar\\\\b","name":"storage.type.local.java"},{"captures":{"1":{"name":"variable.other.definition.java"}},"match":"([A-Za-z$_][\\\\w$]*)(?=\\\\s*(\\\\[\\\\])*\\\\s*(=|:|;))"},{"include":"#code"}]}},"scopeName":"source.java"}`)),WA=[See]});var w8={};x(w8,{default:()=>Qt});var Oee,Qt,Ja=_(()=>{Ig();Oee=Object.freeze(JSON.parse(`{"displayName":"XML","name":"xml","patterns":[{"begin":"(<\\\\?)\\\\s*([-_a-zA-Z0-9]+)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"}},"end":"(\\\\?>)","name":"meta.tag.preprocessor.xml","patterns":[{"match":" ([a-zA-Z-]+)","name":"entity.other.attribute-name.xml"},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},{"begin":"()","name":"meta.tag.sgml.doctype.xml","patterns":[{"include":"#internalSubset"}]},{"include":"#comments"},{"begin":"(<)((?:([-_a-zA-Z0-9]+)(:))?([-_a-zA-Z0-9:]+))(?=(\\\\s[^>]*)?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"},"3":{"name":"entity.name.tag.namespace.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(>)()","endCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"punctuation.definition.tag.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"entity.name.tag.namespace.xml"},"5":{"name":"punctuation.separator.namespace.xml"},"6":{"name":"entity.name.tag.localname.xml"},"7":{"name":"punctuation.definition.tag.xml"}},"name":"meta.tag.no-content.xml","patterns":[{"include":"#tagStuff"}]},{"begin":"()","name":"meta.tag.xml","patterns":[{"include":"#tagStuff"}]},{"include":"#entity"},{"include":"#bare-ampersand"},{"begin":"<%@","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"end":"%>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}},"name":"source.java-props.embedded.xml","patterns":[{"match":"page|include|taglib","name":"keyword.other.page-props.xml"}]},{"begin":"<%[!=]?(?!--)","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"end":"(?!--)%>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}},"name":"source.java.embedded.xml","patterns":[{"include":"source.java"}]},{"begin":"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.unquoted.cdata.xml"}],"repository":{"EntityDecl":{"begin":"()","patterns":[{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},"bare-ampersand":{"match":"&","name":"invalid.illegal.bad-ampersand.xml"},"comments":{"patterns":[{"begin":"<%--","captures":{"0":{"name":"punctuation.definition.comment.xml"},"end":"--%>","name":"comment.block.xml"}},{"begin":"","name":"comment.block.xml","patterns":[{"begin":"--(?!>)","captures":{"0":{"name":"invalid.illegal.bad-comments-or-CDATA.xml"}}}]}]},"doublequotedString":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.double.xml","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}]},"entity":{"captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}},"match":"(&)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#[0-9]+|#x[0-9a-fA-F]+)(;)","name":"constant.character.entity.xml"},"internalSubset":{"begin":"(\\\\[)","captures":{"1":{"name":"punctuation.definition.constant.xml"}},"end":"(\\\\])","name":"meta.internalsubset.xml","patterns":[{"include":"#EntityDecl"},{"include":"#parameterEntity"},{"include":"#comments"}]},"parameterEntity":{"captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}},"match":"(%)([:a-zA-Z_][:a-zA-Z0-9_.-]*)(;)","name":"constant.character.parameter-entity.xml"},"singlequotedString":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.single.xml","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}]},"tagStuff":{"patterns":[{"captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}},"match":"(?:^|\\\\s+)(?:([-\\\\w.]+)((:)))?([-\\\\w.:]+)\\\\s*="},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]}},"scopeName":"text.xml","embeddedLangs":["java"]}`)),Qt=[...WA,Oee]});var k8={};x(k8,{default:()=>bn});var Nee,bn,zr=_(()=>{Nee=Object.freeze(JSON.parse('{"displayName":"JSON","name":"json","patterns":[{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json"}},"name":"meta.structure.array.json","patterns":[{"include":"#value"},{"match":",","name":"punctuation.separator.array.json"},{"match":"[^\\\\s\\\\]]","name":"invalid.illegal.expected-array-separator.json"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.documentation.json"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.json"},{"captures":{"1":{"name":"punctuation.definition.comment.json"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.js"}]},"constant":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.json"},"number":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[eE][+-]?\\\\d+)?)?","name":"constant.numeric.json"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json"}},"name":"meta.structure.dictionary.json","patterns":[{"comment":"the JSON object key","include":"#objectkey"},{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json"}},"end":"(,)|(?=\\\\})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json"}},"name":"meta.structure.dictionary.value.json","patterns":[{"comment":"the JSON object value","include":"#value"},{"match":"[^\\\\s,]","name":"invalid.illegal.expected-dictionary-separator.json"}]},{"match":"[^\\\\s\\\\}]","name":"invalid.illegal.expected-dictionary-separator.json"}]},"objectkey":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.support.type.property-name.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.support.type.property-name.end.json"}},"name":"string.json support.type.property-name.json","patterns":[{"include":"#stringcontent"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.json"}},"name":"string.quoted.double.json","patterns":[{"include":"#stringcontent"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\(?:[\\"\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})","name":"constant.character.escape.json"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json"}]},"value":{"patterns":[{"include":"#constant"},{"include":"#number"},{"include":"#string"},{"include":"#array"},{"include":"#object"},{"include":"#comments"}]}},"scopeName":"source.json"}')),bn=[Nee]});var C8={};x(C8,{default:()=>$ee});var Lee,$ee,_8=_(()=>{Ye();Ja();rt();Qe();zr();Lee=Object.freeze(JSON.parse(`{"displayName":"APL","fileTypes":["apl","apla","aplc","aplf","apli","apln","aplo","dyalog","dyapp","mipage"],"firstLineMatch":"[\u2336-\u237A]|^\\\\#!.*(?:\\\\s|\\\\/|(?<=!)\\\\b)(?:gnu[-._]?apl|aplx?|dyalog)(?:$|\\\\s)|(?i:-\\\\*-(?:\\\\s*(?=[^:;\\\\s]+\\\\s*-\\\\*-)|(?:.*?[;\\\\s]|(?<=-\\\\*-))mode\\\\s*:\\\\s*)apl(?=[\\\\s;]|(?]?\\\\d+|m)?|\\\\sex)(?=:(?=\\\\s*set?\\\\s[^\\\\n:]+:)|:(?!\\\\s*set?\\\\s))(?:(?:\\\\s|\\\\s*:\\\\s*)\\\\w*(?:\\\\s*=(?:[^\\\\n\\\\\\\\\\\\s]|\\\\\\\\.)*)?)*[\\\\s:](?:filetype|ft|syntax)\\\\s*=apl(?=\\\\s|:|$))","foldingStartMarker":"{","foldingStopMarker":"}","name":"apl","patterns":[{"match":"\\\\A#!.*$","name":"comment.line.shebang.apl"},{"include":"#heredocs"},{"include":"#main"},{"begin":"^\\\\s*((\\\\))OFF|(\\\\])NEXTFILE)\\\\b(.*)$","beginCaptures":{"1":{"name":"entity.name.command.eof.apl"},"2":{"name":"punctuation.definition.command.apl"},"3":{"name":"punctuation.definition.command.apl"},"4":{"patterns":[{"include":"#comment"}]}},"contentName":"text.embedded.apl","end":"(?=N)A"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.round.bracket.begin.apl"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.round.bracket.end.apl"}},"name":"meta.round.bracketed.group.apl","patterns":[{"include":"#main"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.square.bracket.begin.apl"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.square.bracket.end.apl"}},"name":"meta.square.bracketed.group.apl","patterns":[{"include":"#main"}]},{"begin":"^\\\\s*((\\\\))\\\\S+)","beginCaptures":{"1":{"name":"entity.name.command.apl"},"2":{"name":"punctuation.definition.command.apl"}},"end":"$","name":"meta.system.command.apl","patterns":[{"include":"#command-arguments"},{"include":"#command-switches"},{"include":"#main"}]},{"begin":"^\\\\s*((\\\\])\\\\S+)","beginCaptures":{"1":{"name":"entity.name.command.apl"},"2":{"name":"punctuation.definition.command.apl"}},"end":"$","name":"meta.user.command.apl","patterns":[{"include":"#command-arguments"},{"include":"#command-switches"},{"include":"#main"}]}],"repository":{"class":{"patterns":[{"begin":"(?<=\\\\s|^)((:)Class)\\\\s+('[^']*'?|[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*)\\\\s*((:)\\\\s*(?:('[^']*'?|[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*)\\\\s*)?)?(.*?)$","beginCaptures":{"0":{"name":"meta.class.apl"},"1":{"name":"keyword.control.class.apl"},"2":{"name":"punctuation.definition.class.apl"},"3":{"name":"entity.name.type.class.apl","patterns":[{"include":"#strings"}]},"4":{"name":"entity.other.inherited-class.apl"},"5":{"name":"punctuation.separator.inheritance.apl"},"6":{"patterns":[{"include":"#strings"}]},"7":{"name":"entity.other.class.interfaces.apl","patterns":[{"include":"#csv"}]}},"end":"(?<=\\\\s|^)((:)EndClass)(?=\\\\b)","endCaptures":{"1":{"name":"keyword.control.class.apl"},"2":{"name":"punctuation.definition.class.apl"}},"patterns":[{"begin":"(?<=\\\\s|^)(:)Field(?=\\\\s)","beginCaptures":{"0":{"name":"keyword.control.field.apl"},"1":{"name":"punctuation.definition.field.apl"}},"end":"\\\\s*(\u2190.*)?(?:$|(?=\u235D))","endCaptures":{"0":{"name":"entity.other.initial-value.apl"},"1":{"patterns":[{"include":"#main"}]}},"name":"meta.field.apl","patterns":[{"match":"(?<=\\\\s|^)Public(?=\\\\s|$)","name":"storage.modifier.access.public.apl"},{"match":"(?<=\\\\s|^)Private(?=\\\\s|$)","name":"storage.modifier.access.private.apl"},{"match":"(?<=\\\\s|^)Shared(?=\\\\s|$)","name":"storage.modifier.shared.apl"},{"match":"(?<=\\\\s|^)Instance(?=\\\\s|$)","name":"storage.modifier.instance.apl"},{"match":"(?<=\\\\s|^)ReadOnly(?=\\\\s|$)","name":"storage.modifier.readonly.apl"},{"captures":{"1":{"patterns":[{"include":"#strings"}]}},"match":"('[^']*'?|[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*)","name":"entity.name.type.apl"}]},{"include":"$self"}]}]},"command-arguments":{"patterns":[{"begin":"\\\\b(?=\\\\S)","end":"\\\\b(?=\\\\s)","name":"variable.parameter.argument.apl","patterns":[{"include":"#main"}]}]},"command-switches":{"patterns":[{"begin":"(?<=\\\\s)(-)([A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*)(=)","beginCaptures":{"1":{"name":"punctuation.delimiter.switch.apl"},"2":{"name":"entity.name.switch.apl"},"3":{"name":"punctuation.assignment.switch.apl"}},"end":"\\\\b(?=\\\\s)","name":"variable.parameter.switch.apl","patterns":[{"include":"#main"}]},{"captures":{"1":{"name":"punctuation.delimiter.switch.apl"},"2":{"name":"entity.name.switch.apl"}},"match":"(?<=\\\\s)(-)([A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*)(?!=)","name":"variable.parameter.switch.apl"}]},"comment":{"patterns":[{"begin":"\u235D","captures":{"0":{"name":"punctuation.definition.comment.apl"}},"end":"$","name":"comment.line.apl"}]},"csv":{"patterns":[{"match":",","name":"punctuation.separator.apl"},{"include":"$self"}]},"definition":{"patterns":[{"begin":"^\\\\s*?(\u2207)(?:\\\\s*(?:([A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*)|\\\\s*((\\\\{)(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)*(\\\\})|(\\\\()(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)*(\\\\))|(\\\\(\\\\s*\\\\{)(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)*(\\\\}\\\\s*\\\\))|(\\\\{\\\\s*\\\\()(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)*(\\\\)\\\\s*\\\\}))\\\\s*)\\\\s*(\u2190))?\\\\s*(?:(?:([A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*)\\\\s*((\\\\[)\\\\s*(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*(.*?)|([^\\\\]]*))\\\\s*(\\\\]))?\\\\s*?((?<=\\\\s|\\\\])[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*|(\\\\()(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)*(\\\\)))\\\\s*(?=;|$))|(?:([A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s+)|((\\\\{)(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)*(\\\\})|(\\\\(\\\\s*\\\\{)(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)*(\\\\}\\\\s*\\\\))|(\\\\{\\\\s*\\\\()(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)*(\\\\)\\\\s*\\\\})))?\\\\s*(?:([A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*)\\\\s*((\\\\[)\\\\s*(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*(.*?)|([^\\\\]]*))\\\\s*(\\\\]))?|((\\\\()(\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*)?\\\\s*([A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*)\\\\s*?((\\\\[)\\\\s*(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*(.*?)|([^\\\\]]*))\\\\s*(\\\\]))?\\\\s*([A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)?(\\\\))))\\\\s*((?<=\\\\s|\\\\])[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*|\\\\s*(\\\\()(?:\\\\s*[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)*(\\\\)))?)\\\\s*([^;]+)?(((?>\\\\s*;(?:\\\\s*[\u2395A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)+)+)|([^\u235D]+))?\\\\s*(\u235D.*)?$","beginCaptures":{"0":{"name":"entity.function.definition.apl"},"1":{"name":"keyword.operator.nabla.apl"},"2":{"name":"entity.function.return-value.apl"},"3":{"name":"entity.function.return-value.shy.apl"},"4":{"name":"punctuation.definition.return-value.begin.apl"},"5":{"name":"punctuation.definition.return-value.end.apl"},"6":{"name":"punctuation.definition.return-value.begin.apl"},"7":{"name":"punctuation.definition.return-value.end.apl"},"8":{"name":"punctuation.definition.return-value.begin.apl"},"9":{"name":"punctuation.definition.return-value.end.apl"},"10":{"name":"punctuation.definition.return-value.begin.apl"},"11":{"name":"punctuation.definition.return-value.end.apl"},"12":{"name":"keyword.operator.assignment.apl"},"13":{"name":"entity.function.name.apl","patterns":[{"include":"#embolden"}]},"14":{"name":"entity.function.axis.apl"},"15":{"name":"punctuation.definition.axis.begin.apl"},"16":{"name":"invalid.illegal.extra-characters.apl"},"17":{"name":"invalid.illegal.apl"},"18":{"name":"punctuation.definition.axis.end.apl"},"19":{"name":"entity.function.arguments.right.apl"},"20":{"name":"punctuation.definition.arguments.begin.apl"},"21":{"name":"punctuation.definition.arguments.end.apl"},"22":{"name":"entity.function.arguments.left.apl"},"23":{"name":"entity.function.arguments.left.optional.apl"},"24":{"name":"punctuation.definition.arguments.begin.apl"},"25":{"name":"punctuation.definition.arguments.end.apl"},"26":{"name":"punctuation.definition.arguments.begin.apl"},"27":{"name":"punctuation.definition.arguments.end.apl"},"28":{"name":"punctuation.definition.arguments.begin.apl"},"29":{"name":"punctuation.definition.arguments.end.apl"},"30":{"name":"entity.function.name.apl","patterns":[{"include":"#embolden"}]},"31":{"name":"entity.function.axis.apl"},"32":{"name":"punctuation.definition.axis.begin.apl"},"33":{"name":"invalid.illegal.extra-characters.apl"},"34":{"name":"invalid.illegal.apl"},"35":{"name":"punctuation.definition.axis.end.apl"},"36":{"name":"entity.function.operands.apl"},"37":{"name":"punctuation.definition.operands.begin.apl"},"38":{"name":"entity.function.operands.left.apl"},"39":{"name":"entity.function.name.apl","patterns":[{"include":"#embolden"}]},"40":{"name":"entity.function.axis.apl"},"41":{"name":"punctuation.definition.axis.begin.apl"},"42":{"name":"invalid.illegal.extra-characters.apl"},"43":{"name":"invalid.illegal.apl"},"44":{"name":"punctuation.definition.axis.end.apl"},"45":{"name":"entity.function.operands.right.apl"},"46":{"name":"punctuation.definition.operands.end.apl"},"47":{"name":"entity.function.arguments.right.apl"},"48":{"name":"punctuation.definition.arguments.begin.apl"},"49":{"name":"punctuation.definition.arguments.end.apl"},"50":{"name":"invalid.illegal.arguments.right.apl"},"51":{"name":"entity.function.local-variables.apl"},"52":{"patterns":[{"match":";","name":"punctuation.separator.apl"}]},"53":{"name":"invalid.illegal.local-variables.apl"},"54":{"name":"comment.line.apl"}},"end":"^\\\\s*?(?:(\u2207)|(\u236B))\\\\s*?(\u235D.*?)?$","endCaptures":{"1":{"name":"keyword.operator.nabla.apl"},"2":{"name":"keyword.operator.lock.apl"},"3":{"name":"comment.line.apl"}},"name":"meta.function.apl","patterns":[{"captures":{"0":{"name":"entity.function.local-variables.apl"},"1":{"patterns":[{"match":";","name":"punctuation.separator.apl"}]}},"match":"^\\\\s*((?>;(?:\\\\s*[\u2395A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*\\\\s*)+)+)","name":"entity.function.definition.apl"},{"include":"$self"}]}]},"embedded-apl":{"patterns":[{"begin":"(?i)(<(\\\\?|%)(?:apl(?=\\\\s+)|=))","beginCaptures":{"1":{"name":"punctuation.section.embedded.begin.apl"}},"end":"(?<=\\\\s)(\\\\2>)","endCaptures":{"1":{"name":"punctuation.section.embedded.end.apl"}},"name":"meta.embedded.block.apl","patterns":[{"include":"#main"}]}]},"embolden":{"patterns":[{"match":".+","name":"markup.bold.identifier.apl"}]},"heredocs":{"patterns":[{"begin":"^.*?\u2395INP\\\\s+('|\\")((?i).*?HTML?.*?|END-OF-\u2395INP)\\\\1.*$","beginCaptures":{"0":{"patterns":[{"include":"#main"}]}},"contentName":"text.embedded.html.basic","end":"^.*?\\\\2.*?$","endCaptures":{"0":{"name":"constant.other.apl"}},"name":"meta.heredoc.apl","patterns":[{"include":"text.html.basic"},{"include":"#embedded-apl"}]},{"begin":"^.*?\u2395INP\\\\s+('|\\")((?i).*?(?:XML|XSLT|SVG|RSS).*?)\\\\1.*$","beginCaptures":{"0":{"patterns":[{"include":"#main"}]}},"contentName":"text.embedded.xml","end":"^.*?\\\\2.*?$","endCaptures":{"0":{"name":"constant.other.apl"}},"name":"meta.heredoc.apl","patterns":[{"include":"text.xml"},{"include":"#embedded-apl"}]},{"begin":"^.*?\u2395INP\\\\s+('|\\")((?i).*?(?:CSS|stylesheet).*?)\\\\1.*$","beginCaptures":{"0":{"patterns":[{"include":"#main"}]}},"contentName":"source.embedded.css","end":"^.*?\\\\2.*?$","endCaptures":{"0":{"name":"constant.other.apl"}},"name":"meta.heredoc.apl","patterns":[{"include":"source.css"},{"include":"#embedded-apl"}]},{"begin":"^.*?\u2395INP\\\\s+('|\\")((?i).*?(?:JS(?!ON)|(?:ECMA|J|Java).?Script).*?)\\\\1.*$","beginCaptures":{"0":{"patterns":[{"include":"#main"}]}},"contentName":"source.embedded.js","end":"^.*?\\\\2.*?$","endCaptures":{"0":{"name":"constant.other.apl"}},"name":"meta.heredoc.apl","patterns":[{"include":"source.js"},{"include":"#embedded-apl"}]},{"begin":"^.*?\u2395INP\\\\s+('|\\")((?i).*?(?:JSON).*?)\\\\1.*$","beginCaptures":{"0":{"patterns":[{"include":"#main"}]}},"contentName":"source.embedded.json","end":"^.*?\\\\2.*?$","endCaptures":{"0":{"name":"constant.other.apl"}},"name":"meta.heredoc.apl","patterns":[{"include":"source.json"},{"include":"#embedded-apl"}]},{"begin":"^.*?\u2395INP\\\\s+('|\\")(?i)((?:Raw|Plain)?\\\\s*Te?xt)\\\\1.*$","beginCaptures":{"0":{"patterns":[{"include":"#main"}]}},"contentName":"text.embedded.plain","end":"^.*?\\\\2.*?$","endCaptures":{"0":{"name":"constant.other.apl"}},"name":"meta.heredoc.apl","patterns":[{"include":"#embedded-apl"}]},{"begin":"^.*?\u2395INP\\\\s+('|\\")(.*?)\\\\1.*$","beginCaptures":{"0":{"patterns":[{"include":"#main"}]}},"end":"^.*?\\\\2.*?$","endCaptures":{"0":{"name":"constant.other.apl"}},"name":"meta.heredoc.apl","patterns":[{"include":"$self"}]}]},"label":{"patterns":[{"captures":{"1":{"name":"entity.label.name.apl"},"2":{"name":"punctuation.definition.label.end.apl"}},"match":"^\\\\s*([A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*)(:)","name":"meta.label.apl"}]},"lambda":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.lambda.begin.apl"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.lambda.end.apl"}},"name":"meta.lambda.function.apl","patterns":[{"include":"#main"},{"include":"#lambda-variables"}]},"lambda-variables":{"patterns":[{"match":"\u237A\u237A","name":"constant.language.lambda.operands.left.apl"},{"match":"\u2375\u2375","name":"constant.language.lambda.operands.right.apl"},{"match":"[\u237A\u2376]","name":"constant.language.lambda.arguments.left.apl"},{"match":"[\u2375\u2379]","name":"constant.language.lambda.arguments.right.apl"},{"match":"\u03C7","name":"constant.language.lambda.arguments.axis.apl"},{"match":"\u2207\u2207","name":"constant.language.lambda.operands.self.operator.apl"},{"match":"\u2207","name":"constant.language.lambda.operands.self.function.apl"},{"match":"\u03BB","name":"constant.language.lambda.symbol.apl"}]},"main":{"patterns":[{"include":"#class"},{"include":"#definition"},{"include":"#comment"},{"include":"#label"},{"include":"#sck"},{"include":"#strings"},{"include":"#number"},{"include":"#lambda"},{"include":"#sysvars"},{"include":"#symbols"},{"include":"#name"}]},"name":{"patterns":[{"match":"[A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\xC0-\xD6\xD8-\xDD\xDF\xE0-\xF6\xF8-\xFC\xFE\u2206\u2359\u24B6-\u24CF\xAF0-9]*","name":"variable.other.readwrite.apl"}]},"number":{"patterns":[{"match":"\xAF?[0-9][\xAF0-9A-Za-z]*(?:\\\\.[\xAF0-9Ee][\xAF0-9A-Za-z]*)*|\xAF?\\\\.[0-9Ee][\xAF0-9A-Za-z]*","name":"constant.numeric.apl"}]},"sck":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.sck.begin.apl"}},"match":"(?<=\\\\s|^)(:)[A-Za-z]+","name":"keyword.control.sck.apl"}]},"strings":{"patterns":[{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.apl"}},"end":"'|$","endCaptures":{"0":{"name":"punctuation.definition.string.end.apl"}},"name":"string.quoted.single.apl","patterns":[{"match":"[^']*[^'\\\\n\\\\r\\\\\\\\]$","name":"invalid.illegal.string.apl"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.apl"}},"end":"\\"|$","endCaptures":{"0":{"name":"punctuation.definition.string.end.apl"}},"name":"string.quoted.double.apl","patterns":[{"match":"[^\\"]*[^\\"\\\\n\\\\r\\\\\\\\]$","name":"invalid.illegal.string.apl"}]}]},"symbols":{"patterns":[{"match":"(?<=\\\\s)\u2190(?=\\\\s|$)","name":"keyword.spaced.operator.assignment.apl"},{"match":"(?<=\\\\s)\u2192(?=\\\\s|$)","name":"keyword.spaced.control.goto.apl"},{"match":"(?<=\\\\s)\u2261(?=\\\\s|$)","name":"keyword.spaced.operator.identical.apl"},{"match":"(?<=\\\\s)\u2262(?=\\\\s|$)","name":"keyword.spaced.operator.not-identical.apl"},{"match":"\\\\+","name":"keyword.operator.plus.apl"},{"match":"[-\u2212]","name":"keyword.operator.minus.apl"},{"match":"\xD7","name":"keyword.operator.times.apl"},{"match":"\xF7","name":"keyword.operator.divide.apl"},{"match":"\u230A","name":"keyword.operator.floor.apl"},{"match":"\u2308","name":"keyword.operator.ceiling.apl"},{"match":"[\u2223|]","name":"keyword.operator.absolute.apl"},{"match":"[\u22C6*]","name":"keyword.operator.exponent.apl"},{"match":"\u235F","name":"keyword.operator.logarithm.apl"},{"match":"\u25CB","name":"keyword.operator.circle.apl"},{"match":"!","name":"keyword.operator.factorial.apl"},{"match":"\u2227","name":"keyword.operator.and.apl"},{"match":"\u2228","name":"keyword.operator.or.apl"},{"match":"\u2372","name":"keyword.operator.nand.apl"},{"match":"\u2371","name":"keyword.operator.nor.apl"},{"match":"<","name":"keyword.operator.less.apl"},{"match":"\u2264","name":"keyword.operator.less-or-equal.apl"},{"match":"=","name":"keyword.operator.equal.apl"},{"match":"\u2265","name":"keyword.operator.greater-or-equal.apl"},{"match":">","name":"keyword.operator.greater.apl"},{"match":"\u2260","name":"keyword.operator.not-equal.apl"},{"match":"[\u223C~]","name":"keyword.operator.tilde.apl"},{"match":"\\\\?","name":"keyword.operator.random.apl"},{"match":"[\u220A\u2208]","name":"keyword.operator.member-of.apl"},{"match":"\u2377","name":"keyword.operator.find.apl"},{"match":",","name":"keyword.operator.comma.apl"},{"match":"\u236A","name":"keyword.operator.comma-bar.apl"},{"match":"\u2337","name":"keyword.operator.squad.apl"},{"match":"\u2373","name":"keyword.operator.iota.apl"},{"match":"\u2374","name":"keyword.operator.rho.apl"},{"match":"\u2191","name":"keyword.operator.take.apl"},{"match":"\u2193","name":"keyword.operator.drop.apl"},{"match":"\u22A3","name":"keyword.operator.left.apl"},{"match":"\u22A2","name":"keyword.operator.right.apl"},{"match":"\u22A4","name":"keyword.operator.encode.apl"},{"match":"\u22A5","name":"keyword.operator.decode.apl"},{"match":"\\\\/","name":"keyword.operator.slash.apl"},{"match":"\u233F","name":"keyword.operator.slash-bar.apl"},{"match":"\\\\x5C","name":"keyword.operator.backslash.apl"},{"match":"\u2340","name":"keyword.operator.backslash-bar.apl"},{"match":"\u233D","name":"keyword.operator.rotate-last.apl"},{"match":"\u2296","name":"keyword.operator.rotate-first.apl"},{"match":"\u2349","name":"keyword.operator.transpose.apl"},{"match":"\u234B","name":"keyword.operator.grade-up.apl"},{"match":"\u2352","name":"keyword.operator.grade-down.apl"},{"match":"\u2339","name":"keyword.operator.quad-divide.apl"},{"match":"\u2261","name":"keyword.operator.identical.apl"},{"match":"\u2262","name":"keyword.operator.not-identical.apl"},{"match":"\u2282","name":"keyword.operator.enclose.apl"},{"match":"\u2283","name":"keyword.operator.pick.apl"},{"match":"\u2229","name":"keyword.operator.intersection.apl"},{"match":"\u222A","name":"keyword.operator.union.apl"},{"match":"\u234E","name":"keyword.operator.hydrant.apl"},{"match":"\u2355","name":"keyword.operator.thorn.apl"},{"match":"\u2286","name":"keyword.operator.underbar-shoe-left.apl"},{"match":"\u2378","name":"keyword.operator.underbar-iota.apl"},{"match":"\xA8","name":"keyword.operator.each.apl"},{"match":"\u2364","name":"keyword.operator.rank.apl"},{"match":"\u2338","name":"keyword.operator.quad-equal.apl"},{"match":"\u2368","name":"keyword.operator.commute.apl"},{"match":"\u2363","name":"keyword.operator.power.apl"},{"match":"\\\\.","name":"keyword.operator.dot.apl"},{"match":"\u2218","name":"keyword.operator.jot.apl"},{"match":"\u2360","name":"keyword.operator.quad-colon.apl"},{"match":"&","name":"keyword.operator.ampersand.apl"},{"match":"\u2336","name":"keyword.operator.i-beam.apl"},{"match":"\u233A","name":"keyword.operator.quad-diamond.apl"},{"match":"@","name":"keyword.operator.at.apl"},{"match":"\u25CA","name":"keyword.operator.lozenge.apl"},{"match":";","name":"keyword.operator.semicolon.apl"},{"match":"\xAF","name":"keyword.operator.high-minus.apl"},{"match":"\u2190","name":"keyword.operator.assignment.apl"},{"match":"\u2192","name":"keyword.control.goto.apl"},{"match":"\u236C","name":"constant.language.zilde.apl"},{"match":"\u22C4","name":"keyword.operator.diamond.apl"},{"match":"\u236B","name":"keyword.operator.lock.apl"},{"match":"\u2395","name":"keyword.operator.quad.apl"},{"match":"##","name":"constant.language.namespace.parent.apl"},{"match":"#","name":"constant.language.namespace.root.apl"},{"match":"\u233B","name":"keyword.operator.quad-jot.apl"},{"match":"\u233C","name":"keyword.operator.quad-circle.apl"},{"match":"\u233E","name":"keyword.operator.circle-jot.apl"},{"match":"\u2341","name":"keyword.operator.quad-slash.apl"},{"match":"\u2342","name":"keyword.operator.quad-backslash.apl"},{"match":"\u2343","name":"keyword.operator.quad-less.apl"},{"match":"\u2344","name":"keyword.operator.greater.apl"},{"match":"\u2345","name":"keyword.operator.vane-left.apl"},{"match":"\u2346","name":"keyword.operator.vane-right.apl"},{"match":"\u2347","name":"keyword.operator.quad-arrow-left.apl"},{"match":"\u2348","name":"keyword.operator.quad-arrow-right.apl"},{"match":"\u234A","name":"keyword.operator.tack-down.apl"},{"match":"\u234C","name":"keyword.operator.quad-caret-down.apl"},{"match":"\u234D","name":"keyword.operator.quad-del-up.apl"},{"match":"\u234F","name":"keyword.operator.vane-up.apl"},{"match":"\u2350","name":"keyword.operator.quad-arrow-up.apl"},{"match":"\u2351","name":"keyword.operator.tack-up.apl"},{"match":"\u2353","name":"keyword.operator.quad-caret-up.apl"},{"match":"\u2354","name":"keyword.operator.quad-del-down.apl"},{"match":"\u2356","name":"keyword.operator.vane-down.apl"},{"match":"\u2357","name":"keyword.operator.quad-arrow-down.apl"},{"match":"\u2358","name":"keyword.operator.underbar-quote.apl"},{"match":"\u235A","name":"keyword.operator.underbar-diamond.apl"},{"match":"\u235B","name":"keyword.operator.underbar-jot.apl"},{"match":"\u235C","name":"keyword.operator.underbar-circle.apl"},{"match":"\u235E","name":"keyword.operator.quad-quote.apl"},{"match":"\u2361","name":"keyword.operator.dotted-tack-up.apl"},{"match":"\u2362","name":"keyword.operator.dotted-del.apl"},{"match":"\u2365","name":"keyword.operator.dotted-circle.apl"},{"match":"\u2366","name":"keyword.operator.stile-shoe-up.apl"},{"match":"\u2367","name":"keyword.operator.stile-shoe-left.apl"},{"match":"\u2369","name":"keyword.operator.dotted-greater.apl"},{"match":"\u236D","name":"keyword.operator.stile-tilde.apl"},{"match":"\u236E","name":"keyword.operator.underbar-semicolon.apl"},{"match":"\u236F","name":"keyword.operator.quad-not-equal.apl"},{"match":"\u2370","name":"keyword.operator.quad-question.apl"}]},"sysvars":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.quad.apl"},"2":{"name":"punctuation.definition.quad-quote.apl"}},"match":"(?:(\u2395)|(\u235E))[A-Za-z]*","name":"support.system.variable.apl"}]}},"scopeName":"source.apl","embeddedLangs":["html","xml","css","javascript","json"]}`)),$ee=[...ce,...Qt,...ue,...J,...bn,Lee]});var B8={};x(B8,{default:()=>jee});var Ree,jee,x8=_(()=>{Ree=Object.freeze(JSON.parse('{"displayName":"AppleScript","fileTypes":["applescript","scpt","script editor"],"firstLineMatch":"^#!.*(osascript)","name":"applescript","patterns":[{"include":"#blocks"},{"include":"#inline"}],"repository":{"attributes.considering-ignoring":{"patterns":[{"match":",","name":"punctuation.separator.array.attributes.applescript"},{"match":"\\\\b(and)\\\\b","name":"keyword.control.attributes.and.applescript"},{"match":"\\\\b(?i:case|diacriticals|hyphens|numeric\\\\s+strings|punctuation|white\\\\s+space)\\\\b","name":"constant.other.attributes.text.applescript"},{"match":"\\\\b(?i:application\\\\s+responses)\\\\b","name":"constant.other.attributes.application.applescript"}]},"blocks":{"patterns":[{"begin":"^\\\\s*(script)\\\\s+(\\\\w+)","beginCaptures":{"1":{"name":"keyword.control.script.applescript"},"2":{"name":"entity.name.type.script-object.applescript"}},"end":"^\\\\s*(end(?:\\\\s+script)?)(?=\\\\s*(--.*?)?$)","endCaptures":{"1":{"name":"keyword.control.script.applescript"}},"name":"meta.block.script.applescript","patterns":[{"include":"$self"}]},{"begin":"^\\\\s*(to|on)\\\\s+(\\\\w+)(\\\\()((?:[\\\\s,:\\\\{\\\\}]*(?:\\\\w+)?)*)(\\\\))","beginCaptures":{"1":{"name":"keyword.control.function.applescript"},"2":{"name":"entity.name.function.handler.applescript"},"3":{"name":"punctuation.definition.parameters.begin.applescript"},"4":{"name":"variable.parameter.handler.applescript"},"5":{"name":"punctuation.definition.parameters.end.applescript"}},"comment":"\\n\\t\\t\\t\\t\\t\\tThis is not a very well-designed rule. For now,\\n\\t\\t\\t\\t\\t\\twe can leave it like this though, as it sorta works.\\n\\t\\t\\t\\t\\t","end":"^\\\\s*(end)(?:\\\\s+(\\\\2))?(?=\\\\s*(--.*?)?$)","endCaptures":{"1":{"name":"keyword.control.function.applescript"}},"name":"meta.function.positional.applescript","patterns":[{"include":"$self"}]},{"begin":"^\\\\s*(to|on)\\\\s+(\\\\w+)(?:\\\\s+(of|in)\\\\s+(\\\\w+))?(?=\\\\s+(above|against|apart\\\\s+from|around|aside\\\\s+from|at|below|beneath|beside|between|by|for|from|instead\\\\s+of|into|on|onto|out\\\\s+of|over|thru|under)\\\\b)","beginCaptures":{"1":{"name":"keyword.control.function.applescript"},"2":{"name":"entity.name.function.handler.applescript"},"3":{"name":"keyword.control.function.applescript"},"4":{"name":"variable.parameter.handler.direct.applescript"}},"comment":"TODO: match `given` parameters","end":"^\\\\s*(end)(?:\\\\s+(\\\\2))?(?=\\\\s*(--.*?)?$)","endCaptures":{"1":{"name":"keyword.control.function.applescript"}},"name":"meta.function.prepositional.applescript","patterns":[{"captures":{"1":{"name":"keyword.control.preposition.applescript"},"2":{"name":"variable.parameter.handler.applescript"}},"match":"\\\\b(?i:above|against|apart\\\\s+from|around|aside\\\\s+from|at|below|beneath|beside|between|by|for|from|instead\\\\s+of|into|on|onto|out\\\\s+of|over|thru|under)\\\\s+(\\\\w+)\\\\b"},{"include":"$self"}]},{"begin":"^\\\\s*(to|on)\\\\s+(\\\\w+)(?=\\\\s*(--.*?)?$)","beginCaptures":{"1":{"name":"keyword.control.function.applescript"},"2":{"name":"entity.name.function.handler.applescript"}},"end":"^\\\\s*(end)(?:\\\\s+(\\\\2))?(?=\\\\s*(--.*?)?$)","endCaptures":{"1":{"name":"keyword.control.function.applescript"}},"name":"meta.function.parameterless.applescript","patterns":[{"include":"$self"}]},{"include":"#blocks.tell"},{"include":"#blocks.repeat"},{"include":"#blocks.statement"},{"include":"#blocks.other"}]},"blocks.other":{"patterns":[{"begin":"^\\\\s*(considering)\\\\b","end":"^\\\\s*(end(?:\\\\s+considering)?)(?=\\\\s*(--.*?)?$)","name":"meta.block.considering.applescript","patterns":[{"begin":"(?<=considering)","end":"(?|<|\u2265|>=|\u2264|<=)","name":"keyword.operator.comparison.applescript"},{"match":"(?ix)\\\\b\\n\\t\\t\\t\\t\\t\\t(and|or|div|mod|as|not\\n\\t\\t\\t\\t\\t\\t|(a\\\\s+)?(ref(\\\\s+to)?|reference\\\\s+to)\\n\\t\\t\\t\\t\\t\\t|equal(s|\\\\s+to)|contains?|comes\\\\s+(after|before)|(start|begin|end)s?\\\\s+with\\n\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\\\b","name":"keyword.operator.word.applescript"},{"comment":"In double quotes so we can use a single quote in the keywords.","match":"(?ix)\\\\b\\n\\t\\t\\t\\t\\t\\t(is(n\'t|\\\\s+not)?(\\\\s+(equal(\\\\s+to)?|(less|greater)\\\\s+than(\\\\s+or\\\\s+equal(\\\\s+to)?)?|in|contained\\\\s+by))?\\n\\t\\t\\t\\t\\t\\t|does(n\'t|\\\\s+not)\\\\s+(equal|come\\\\s+(before|after)|contain)\\n\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\\\b","name":"keyword.operator.word.applescript"},{"match":"\\\\b(?i:some|every|whose|where|that|id|index|\\\\d+(st|nd|rd|th)|first|second|third|fourth|fifth|sixth|seventh|eighth|ninth|tenth|last|front|back|middle|named|beginning|end|from|to|thr(u|ough)|before|(front|back|beginning|end)\\\\s+of|after|behind|in\\\\s+(front|back|beginning|end)\\\\s+of)\\\\b","name":"keyword.operator.reference.applescript"},{"match":"\\\\b(?i:continue|return|exit(\\\\s+repeat)?)\\\\b","name":"keyword.control.loop.applescript"},{"match":"\\\\b(?i:about|above|after|against|and|apart\\\\s+from|around|as|aside\\\\s+from|at|back|before|beginning|behind|below|beneath|beside|between|but|by|considering|contain|contains|contains|copy|div|does|eighth|else|end|equal|equals|error|every|false|fifth|first|for|fourth|from|front|get|given|global|if|ignoring|in|instead\\\\s+of|into|is|it|its|last|local|me|middle|mod|my|ninth|not|of|on|onto|or|out\\\\s+of|over|prop|property|put|ref|reference|repeat|returning|script|second|set|seventh|since|sixth|some|tell|tenth|that|the|then|third|through|thru|timeout|times|to|transaction|true|try|until|where|while|whose|with|without)\\\\b","name":"keyword.other.applescript"}]},"built-in.punctuation":{"patterns":[{"match":"\xAC","name":"punctuation.separator.continuation.line.applescript"},{"comment":"the : in property assignments","match":":","name":"punctuation.separator.key-value.property.applescript"},{"comment":"the parentheses in groups","match":"[()]","name":"punctuation.section.group.applescript"}]},"built-in.support":{"patterns":[{"match":"\\\\b(?i:POSIX\\\\s+path|frontmost|id|name|running|version|days?|weekdays?|months?|years?|time|date\\\\s+string|time\\\\s+string|length|rest|reverse|items?|contents|quoted\\\\s+form|characters?|paragraphs?|words?)\\\\b","name":"support.function.built-in.property.applescript"},{"match":"\\\\b(?i:activate|log|clipboard\\\\s+info|set\\\\s+the\\\\s+clipboard\\\\s+to|the\\\\s+clipboard|info\\\\s+for|list\\\\s+(disks|folder)|mount\\\\s+volume|path\\\\s+to(\\\\s+resource)?|close\\\\s+access|get\\\\s+eof|open\\\\s+for\\\\s+access|read|set\\\\s+eof|write|open\\\\s+location|current\\\\s+date|do\\\\s+shell\\\\s+script|get\\\\s+volume\\\\s+settings|random\\\\s+number|round|set\\\\s+volume|system\\\\s+(attribute|info)|time\\\\s+to\\\\s+GMT|load\\\\s+script|run\\\\s+script|scripting\\\\s+components|store\\\\s+script|copy|count|get|launch|run|set|ASCII\\\\s+(character|number)|localized\\\\s+string|offset|summarize|beep|choose\\\\s+(application|color|file(\\\\s+name)?|folder|from\\\\s+list|remote\\\\s+application|URL)|delay|display\\\\s+(alert|dialog)|say)\\\\b","name":"support.function.built-in.command.applescript"},{"match":"\\\\b(?i:get|run)\\\\b","name":"support.function.built-in.applescript"},{"match":"\\\\b(?i:anything|data|text|upper\\\\s+case|propert(y|ies))\\\\b","name":"support.class.built-in.applescript"},{"match":"\\\\b(?i:alias|class)(es)?\\\\b","name":"support.class.built-in.applescript"},{"match":"\\\\b(?i:app(lication)?|boolean|character|constant|date|event|file(\\\\s+specification)?|handler|integer|item|keystroke|linked\\\\s+list|list|machine|number|picture|preposition|POSIX\\\\s+file|real|record|reference(\\\\s+form)?|RGB\\\\s+color|script|sound|text\\\\s+item|type\\\\s+class|vector|writing\\\\s+code(\\\\s+info)?|zone|((international|styled(\\\\s+(Clipboard|Unicode))?|Unicode)\\\\s+)?text|((C|encoded|Pascal)\\\\s+)?string)s?\\\\b","name":"support.class.built-in.applescript"},{"match":"(?ix)\\\\b\\n\\t\\t\\t\\t\\t\\t(\\t(cubic\\\\s+(centi)?|square\\\\s+(kilo)?|centi|kilo)met(er|re)s\\n\\t\\t\\t\\t\\t\\t|\\tsquare\\\\s+(yards|feet|miles)|cubic\\\\s+(yards|feet|inches)|miles|inches\\n\\t\\t\\t\\t\\t\\t|\\tlit(re|er)s|gallons|quarts\\n\\t\\t\\t\\t\\t\\t|\\t(kilo)?grams|ounces|pounds\\n\\t\\t\\t\\t\\t\\t|\\tdegrees\\\\s+(Celsius|Fahrenheit|Kelvin)\\n\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\\\b","name":"support.class.built-in.unit.applescript"},{"match":"\\\\b(?i:seconds|minutes|hours|days)\\\\b","name":"support.class.built-in.time.applescript"}]},"comments":{"patterns":[{"begin":"^\\\\s*(#!)","captures":{"1":{"name":"punctuation.definition.comment.applescript"}},"end":"\\\\n","name":"comment.line.number-sign.applescript"},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.applescript"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.applescript"}},"end":"\\\\n","name":"comment.line.number-sign.applescript"}]},{"begin":"(^[ \\\\t]+)?(?=--)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.applescript"}},"end":"(?!\\\\G)","patterns":[{"begin":"--","beginCaptures":{"0":{"name":"punctuation.definition.comment.applescript"}},"end":"\\\\n","name":"comment.line.double-dash.applescript"}]},{"begin":"\\\\(\\\\*","captures":{"0":{"name":"punctuation.definition.comment.applescript"}},"end":"\\\\*\\\\)","name":"comment.block.applescript","patterns":[{"include":"#comments.nested"}]}]},"comments.nested":{"patterns":[{"begin":"\\\\(\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.applescript"}},"end":"\\\\*\\\\)","endCaptures":{"0":{"name":"punctuation.definition.comment.end.applescript"}},"name":"comment.block.applescript","patterns":[{"include":"#comments.nested"}]}]},"data-structures":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.applescript"}},"comment":"We cannot necessarily distinguish \\"records\\" from \\"arrays\\", and so this could be either.","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.array.end.applescript"}},"name":"meta.array.applescript","patterns":[{"captures":{"1":{"name":"constant.other.key.applescript"},"2":{"name":"meta.identifier.applescript"},"3":{"name":"punctuation.definition.identifier.applescript"},"4":{"name":"punctuation.definition.identifier.applescript"},"5":{"name":"punctuation.separator.key-value.applescript"}},"match":"(\\\\w+|((\\\\|)[^|\\\\n]*(\\\\|)))\\\\s*(:)"},{"match":":","name":"punctuation.separator.key-value.applescript"},{"match":",","name":"punctuation.separator.array.applescript"},{"include":"#inline"}]},{"begin":"(?:(?<=application )|(?<=app ))(\\")","captures":{"1":{"name":"punctuation.definition.string.applescript"}},"end":"(\\")","name":"string.quoted.double.application-name.applescript","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.applescript"}]},{"begin":"(\\")","captures":{"1":{"name":"punctuation.definition.string.applescript"}},"end":"(\\")","name":"string.quoted.double.applescript","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.applescript"}]},{"captures":{"1":{"name":"punctuation.definition.identifier.applescript"},"2":{"name":"punctuation.definition.identifier.applescript"}},"match":"(\\\\|)[^|\\\\n]*(\\\\|)","name":"meta.identifier.applescript"},{"captures":{"1":{"name":"punctuation.definition.data.applescript"},"2":{"name":"support.class.built-in.applescript"},"3":{"name":"storage.type.utxt.applescript"},"4":{"name":"string.unquoted.data.applescript"},"5":{"name":"punctuation.definition.data.applescript"},"6":{"name":"keyword.operator.applescript"},"7":{"name":"support.class.built-in.applescript"}},"match":"(\xAB)(data) (utxt|utf8)([[:xdigit:]]*)(\xBB)(?:\\\\s+(as)\\\\s+(?i:Unicode\\\\s+text))?","name":"constant.other.data.utxt.applescript"},{"begin":"(\xAB)(\\\\w+)\\\\b(?=\\\\s)","beginCaptures":{"1":{"name":"punctuation.definition.data.applescript"},"2":{"name":"support.class.built-in.applescript"}},"end":"(\xBB)","endCaptures":{"1":{"name":"punctuation.definition.data.applescript"}},"name":"constant.other.data.raw.applescript"},{"captures":{"1":{"name":"punctuation.definition.data.applescript"},"2":{"name":"punctuation.definition.data.applescript"}},"match":"(\xAB)[^\xBB]*(\xBB)","name":"invalid.illegal.data.applescript"}]},"finder":{"patterns":[{"match":"\\\\b(item|container|(computer|disk|trash)-object|disk|folder|((alias|application|document|internet location) )?file|clipping|package)s?\\\\b","name":"support.class.finder.items.applescript"},{"match":"\\\\b((Finder|desktop|information|preferences|clipping) )windows?\\\\b","name":"support.class.finder.window-classes.applescript"},{"match":"\\\\b(preferences|(icon|column|list) view options|(label|column|alias list)s?)\\\\b","name":"support.class.finder.type-definitions.applescript"},{"match":"\\\\b(copy|find|sort|clean up|eject|empty( trash)|erase|reveal|update)\\\\b","name":"support.function.finder.items.applescript"},{"match":"\\\\b(insertion location|product version|startup disk|desktop|trash|home|computer container|finder preferences)\\\\b","name":"support.constant.finder.applescript"},{"match":"\\\\b(visible)\\\\b","name":"support.variable.finder.applescript"}]},"inline":{"patterns":[{"include":"#comments"},{"include":"#data-structures"},{"include":"#built-in"},{"include":"#standardadditions"}]},"itunes":{"patterns":[{"match":"\\\\b(artwork|application|encoder|EQ preset|item|source|visual|(EQ |browser )?window|((audio CD|device|shared|URL|file) )?track|playlist window|((audio CD|device|radio tuner|library|folder|user) )?playlist)s?\\\\b","name":"support.class.itunes.applescript"},{"match":"\\\\b(add|back track|convert|fast forward|(next|previous) track|pause|play(pause)?|refresh|resume|rewind|search|stop|update|eject|subscribe|update(Podcast|AllPodcasts)|download)\\\\b","name":"support.function.itunes.applescript"},{"match":"\\\\b(current (playlist|stream (title|URL)|track)|player state)\\\\b","name":"support.constant.itunes.applescript"},{"match":"\\\\b(current (encoder|EQ preset|visual)|EQ enabled|fixed indexing|full screen|mute|player position|sound volume|visuals enabled|visual size)\\\\b","name":"support.variable.itunes.applescript"}]},"standard-suite":{"patterns":[{"match":"\\\\b(colors?|documents?|items?|windows?)\\\\b","name":"support.class.standard-suite.applescript"},{"match":"\\\\b(close|count|delete|duplicate|exists|make|move|open|print|quit|save|activate|select|data size)\\\\b","name":"support.function.standard-suite.applescript"},{"match":"\\\\b(name|frontmost|version)\\\\b","name":"support.constant.standard-suite.applescript"},{"match":"\\\\b(selection)\\\\b","name":"support.variable.standard-suite.applescript"},{"match":"\\\\b(attachments?|attribute runs?|characters?|paragraphs?|texts?|words?)\\\\b","name":"support.class.text-suite.applescript"}]},"standardadditions":{"patterns":[{"match":"\\\\b((alert|dialog) reply)\\\\b","name":"support.class.standardadditions.user-interaction.applescript"},{"match":"\\\\b(file information)\\\\b","name":"support.class.standardadditions.file.applescript"},{"match":"\\\\b(POSIX files?|system information|volume settings)\\\\b","name":"support.class.standardadditions.miscellaneous.applescript"},{"match":"\\\\b(URLs?|internet address(es)?|web pages?|FTP items?)\\\\b","name":"support.class.standardadditions.internet.applescript"},{"match":"\\\\b(info for|list (disks|folder)|mount volume|path to( resource)?)\\\\b","name":"support.function.standardadditions.file.applescript"},{"match":"\\\\b(beep|choose (application|color|file( name)?|folder|from list|remote application|URL)|delay|display (alert|dialog)|say)\\\\b","name":"support.function.standardadditions.user-interaction.applescript"},{"match":"\\\\b(ASCII (character|number)|localized string|offset|summarize)\\\\b","name":"support.function.standardadditions.string.applescript"},{"match":"\\\\b(set the clipboard to|the clipboard|clipboard info)\\\\b","name":"support.function.standardadditions.clipboard.applescript"},{"match":"\\\\b(open for access|close access|read|write|get eof|set eof)\\\\b","name":"support.function.standardadditions.file-i-o.applescript"},{"match":"\\\\b((load|store|run) script|scripting components)\\\\b","name":"support.function.standardadditions.scripting.applescript"},{"match":"\\\\b(current date|do shell script|get volume settings|random number|round|set volume|system attribute|system info|time to GMT)\\\\b","name":"support.function.standardadditions.miscellaneous.applescript"},{"match":"\\\\b(opening folder|(closing|moving) folder window for|adding folder items to|removing folder items from)\\\\b","name":"support.function.standardadditions.folder-actions.applescript"},{"match":"\\\\b(open location|handle CGI request)\\\\b","name":"support.function.standardadditions.internet.applescript"}]},"system-events":{"patterns":[{"match":"\\\\b(audio (data|file))\\\\b","name":"support.class.system-events.audio-file.applescript"},{"match":"\\\\b(alias(es)?|(Classic|local|network|system|user) domain objects?|disk( item)?s?|domains?|file( package)?s?|folders?|items?)\\\\b","name":"support.class.system-events.disk-folder-file.applescript"},{"match":"\\\\b(delete|open|move)\\\\b","name":"support.function.system-events.disk-folder-file.applescript"},{"match":"\\\\b(folder actions?|scripts?)\\\\b","name":"support.class.system-events.folder-actions.applescript"},{"match":"\\\\b(attach action to|attached scripts|edit action of|remove action from)\\\\b","name":"support.function.system-events.folder-actions.applescript"},{"match":"\\\\b(movie data|movie file)\\\\b","name":"support.class.system-events.movie-file.applescript"},{"match":"\\\\b(log out|restart|shut down|sleep)\\\\b","name":"support.function.system-events.power.applescript"},{"match":"\\\\b(((application |desk accessory )?process|(check|combo )?box)(es)?|(action|attribute|browser|(busy|progress|relevance) indicator|color well|column|drawer|group|grow area|image|incrementor|list|menu( bar)?( item)?|(menu |pop up |radio )?button|outline|(radio|tab|splitter) group|row|scroll (area|bar)|sheet|slider|splitter|static text|table|text (area|field)|tool bar|UI element|window)s?)\\\\b","name":"support.class.system-events.processes.applescript"},{"match":"\\\\b(click|key code|keystroke|perform|select)\\\\b","name":"support.function.system-events.processes.applescript"},{"match":"\\\\b(property list (file|item))\\\\b","name":"support.class.system-events.property-list.applescript"},{"match":"\\\\b(annotation|QuickTime (data|file)|track)s?\\\\b","name":"support.class.system-events.quicktime-file.applescript"},{"match":"\\\\b((abort|begin|end) transaction)\\\\b","name":"support.function.system-events.system-events.applescript"},{"match":"\\\\b(XML (attribute|data|element|file)s?)\\\\b","name":"support.class.system-events.xml.applescript"},{"match":"\\\\b(print settings|users?|login items?)\\\\b","name":"support.class.sytem-events.other.applescript"}]},"textmate":{"patterns":[{"match":"\\\\b(print settings)\\\\b","name":"support.class.textmate.applescript"},{"match":"\\\\b(get url|insert|reload bundles)\\\\b","name":"support.function.textmate.applescript"}]}},"scopeName":"source.applescript"}')),jee=[Ree]});var v8={};x(v8,{default:()=>Mee});var Pee,Mee,E8=_(()=>{Pee=Object.freeze(JSON.parse(`{"displayName":"Ara","fileTypes":["ara"],"name":"ara","patterns":[{"include":"#namespace"},{"include":"#named-arguments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#strings"},{"include":"#numbers"},{"include":"#operators"},{"include":"#type"},{"include":"#function-call"}],"repository":{"class-name":{"patterns":[{"begin":"\\\\b(?i)(?=|&=|\\\\|=|<<=|>>=|\\\\?\\\\?=)","name":"keyword.assignments.ara"},{"comment":"logical operators","match":"(\\\\^|\\\\||\\\\|\\\\||&&|>>|<<|&|~|<<|>>|>|<|<=>|\\\\?\\\\?|\\\\?|:|\\\\?:)(?!=)","name":"keyword.operators.ara"},{"comment":"comparison operators","match":"(==|===|!==|!=|<=|>=|<|>)(?!=)","name":"keyword.operator.comparison.ara"},{"comment":"math operators","match":"(([+%]|(\\\\*(?!\\\\w)))(?!=))|(-(?!>))|(/(?!/))","name":"keyword.operator.math.ara"},{"comment":"single equal assignment operator","match":"(?])=(?!=|>)","name":"keyword.operator.assignment.ara"},{"captures":{"1":{"name":"punctuation.brackets.round.ara"},"2":{"name":"punctuation.brackets.square.ara"},"3":{"name":"punctuation.brackets.curly.ara"},"4":{"name":"keyword.operator.comparison.ara"},"5":{"name":"punctuation.brackets.round.ara"},"6":{"name":"punctuation.brackets.square.ara"},"7":{"name":"punctuation.brackets.curly.ara"}},"comment":"less than, greater than (special case)","match":"(?:\\\\b|(?:(\\\\))|(\\\\])|(\\\\})))[ \\\\t]+([<>])[ \\\\t]+(?:\\\\b|(?:(\\\\()|(\\\\[)|(\\\\{)))"},{"comment":"arrow method call, arrow property access","match":"(?:->|\\\\?->)","name":"keyword.operator.arrow.ara"},{"comment":"double arrow key-value pair","match":"(?:=>)","name":"keyword.operator.double-arrow.ara"},{"comment":"static method call, static property access","match":"(?:::)","name":"keyword.operator.static.ara"},{"comment":"closure creation","match":"(?:\\\\(\\\\.\\\\.\\\\.\\\\))","name":"keyword.operator.closure.ara"},{"comment":"spread operator","match":"(?:\\\\.\\\\.\\\\.)","name":"keyword.operator.spread.ara"},{"comment":"namespace operator","match":"\\\\\\\\","name":"keyword.operator.namespace.ara"}]},"strings":{"patterns":[{"begin":"'","end":"'","name":"string.quoted.single.ara","patterns":[{"match":"\\\\\\\\[\\\\\\\\']","name":"constant.character.escape.ara"}]},{"begin":"\\"","end":"\\"","name":"string.quoted.double.ara","patterns":[{"include":"#interpolation"}]}]},"type":{"name":"support.type.php","patterns":[{"match":"\\\\b(?:void|true|false|null|never|float|bool|int|string|dict|vec|object|mixed|nonnull|resource|self|static|parent|iterable)\\\\b","name":"support.type.php"},{"begin":"([A-Za-z_][A-Za-z0-9_]*)<","beginCaptures":{"1":{"name":"support.class.php"}},"end":">","patterns":[{"include":"#type-annotation"}]},{"begin":"(shape\\\\()","end":"((,|\\\\.\\\\.\\\\.)?\\\\s*\\\\))","endCaptures":{"1":{"name":"keyword.operator.key.php"}},"name":"storage.type.shape.php","patterns":[{"include":"#type-annotation"},{"include":"#strings"},{"include":"#constants"}]},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#type-annotation"}]},{"begin":"\\\\(fn\\\\(","end":"\\\\)","patterns":[{"include":"#type-annotation"}]},{"include":"#class-name"},{"include":"#comments"}]},"user-function-call":{"begin":"(?i)(?=[a-z_0-9\\\\\\\\]*[a-z_][a-z0-9_]*\\\\s*\\\\()","end":"(?i)[a-z_][a-z_0-9]*(?=\\\\s*\\\\()","endCaptures":{"0":{"name":"entity.name.function.php"}},"name":"meta.function-call.php","patterns":[{"include":"#namespace"}]}},"scopeName":"source.ara"}`)),Mee=[Pee]});var Q8={};x(Q8,{default:()=>qee});var Tee,qee,I8=_(()=>{Tee=Object.freeze(JSON.parse('{"displayName":"AsciiDoc","fileTypes":["ad","asc","adoc","asciidoc","adoc.txt"],"name":"asciidoc","patterns":[{"include":"#comment"},{"include":"#callout-list-item"},{"include":"#titles"},{"include":"#attribute-entry"},{"include":"#blocks"},{"include":"#block-title"},{"include":"#tables"},{"include":"#horizontal-rule"},{"include":"#list"},{"include":"#inlines"},{"include":"#block-attribute"},{"include":"#line-break"}],"repository":{"admonition-paragraph":{"patterns":[{"begin":"(?=(?>(?:^\\\\[(NOTE|TIP|IMPORTANT|WARNING|CAUTION)((?:,|#|\\\\.|%)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|====)$|^\\\\p{Blank}*$)","name":"markup.admonition.asciidoc","patterns":[{"captures":{"0":{"patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(NOTE|TIP|IMPORTANT|WARNING|CAUTION)((?:,|#|\\\\.|%)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(={4,})\\\\s*$","comment":"example block","end":"(?<=\\\\1)","patterns":[{"include":"#inlines"},{"include":"#list"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","end":"(?<=\\\\1)","patterns":[{"include":"#inlines"},{"include":"#list"}]}]},{"begin":"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\\\\:\\\\p{Blank}+","captures":{"1":{"name":"entity.name.function.asciidoc"}},"end":"^\\\\p{Blank}*$","name":"markup.admonition.asciidoc","patterns":[{"include":"#inlines"}]}]},"anchor-macro":{"patterns":[{"captures":{"1":{"name":"support.constant.asciidoc"},"2":{"name":"markup.blockid.asciidoc"},"3":{"name":"string.unquoted.asciidoc"},"4":{"name":"support.constant.asciidoc"}},"match":"(?)(?=(?: ?)*$)","name":"callout.source.code.asciidoc"}]},"block-title":{"patterns":[{"begin":"^\\\\.([^\\\\p{Blank}.].*)","captures":{"1":{"name":"markup.heading.blocktitle.asciidoc"}},"end":"$"}]},"blocks":{"patterns":[{"include":"#front-matter-block"},{"include":"#comment-paragraph"},{"include":"#admonition-paragraph"},{"include":"#quote-paragraph"},{"include":"#listing-paragraph"},{"include":"#source-paragraphs"},{"include":"#passthrough-paragraph"},{"include":"#example-paragraph"},{"include":"#sidebar-paragraph"},{"include":"#literal-paragraph"},{"include":"#open-block"}]},"callout-list-item":{"patterns":[{"captures":{"1":{"name":"constant.other.symbol.asciidoc"},"2":{"name":"constant.numeric.asciidoc"},"3":{"name":"constant.other.symbol.asciidoc"},"4":{"patterns":[{"include":"#inlines"}]}},"match":"^(<)(\\\\d+)(>)\\\\p{Blank}+(.*)$","name":"callout.asciidoc"}]},"characters":{"patterns":[{"captures":{"1":{"name":"constant.character.asciidoc"},"3":{"name":"constant.character.asciidoc"}},"match":"(?(?:^\\\\[(comment)((?:,|#|\\\\.|%)[^\\\\]]+)*\\\\]$)))","end":"((?<=--)$|^\\\\p{Blank}*$)","name":"comment.block.asciidoc","patterns":[{"captures":{"0":{"patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(comment)((?:,|#|\\\\.|%)([^,\\\\]]+))*\\\\]$"},{"include":"#block-title"},{"begin":"^(-{2})\\\\s*$","comment":"open block","end":"^(\\\\1)$","patterns":[{"include":"#inlines"},{"include":"#list"}]},{"include":"#inlines"}]}]},"emphasis":{"patterns":[{"captures":{"1":{"name":"markup.meta.attribute-list.asciidoc"},"2":{"name":"markup.italic.asciidoc"},"3":{"name":"punctuation.definition.asciidoc"},"5":{"name":"punctuation.definition.asciidoc"}},"match":"(?(?:^\\\\[(example)((?:,|#|\\\\.|%)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|====)$|^\\\\p{Blank}*$)","name":"markup.block.example.asciidoc","patterns":[{"captures":{"0":{"patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(example)((?:,|#|\\\\.|%)([^,\\\\]]+))*\\\\]$"},{"include":"#block-title"},{"begin":"^(={4,})$","comment":"example block","end":"^(\\\\1)$","patterns":[{"include":"$self"}]},{"begin":"^(-{2})$","comment":"open block","end":"^(\\\\1)$","patterns":[{"include":"$self"}]},{"include":"#inlines"}]},{"begin":"^(={4,})$","end":"^(\\\\1)$","name":"markup.block.example.asciidoc","patterns":[{"include":"$self"}]}]},"footnote-macro":{"patterns":[{"begin":"(?\\\\(\\\\)\\\\[\\\\];])((?\\\\(\\\\)\\\\[\\\\];])((?(?:^\\\\[(listing)((?:,|#|\\\\.|%)[^\\\\]]+)*\\\\]$)))","end":"((?<=--)$|^\\\\p{Blank}*$)","name":"markup.block.listing.asciidoc","patterns":[{"captures":{"0":{"patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(listing)((?:,|#|\\\\.|%)([^,\\\\]]+))*\\\\]$"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","end":"^(\\\\1)$"},{"begin":"^(-{2})\\\\s*$","comment":"open block","end":"^(\\\\1)$"},{"include":"#inlines"}]}]},"literal-paragraph":{"patterns":[{"begin":"(?=(?>(?:^\\\\[(literal)((?:,|#|\\\\.|%)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.block.literal.asciidoc","patterns":[{"captures":{"0":{"patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(literal)((?:,|#|\\\\.|%)([^,\\\\]]+))*\\\\]$"},{"include":"#block-title"},{"begin":"^(\\\\.{4,})$","comment":"literal block","end":"^(\\\\1)$"},{"begin":"^(-{2})\\\\s*$","comment":"open block","end":"^(\\\\1)$"},{"include":"#inlines"}]},{"begin":"^(\\\\.{4,})$","end":"^(\\\\1)$","name":"markup.block.literal.asciidoc"}]},"mark":{"patterns":[{"captures":{"1":{"name":"markup.meta.attribute-list.asciidoc"},"2":{"name":"markup.mark.asciidoc"},"3":{"name":"punctuation.definition.asciidoc"},"5":{"name":"punctuation.definition.asciidoc"}},"match":"(?\\\\+{2,3}|\\\\${2})(.*?)(\\\\k)","name":"markup.macro.inline.passthrough.asciidoc"},{"begin":"(?(?:^\\\\[(pass)((?:,|#|\\\\.|%)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\+\\\\+)$|^\\\\p{Blank}*$)","name":"markup.block.passthrough.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(pass)((?:,|#|\\\\.|%)([^,\\\\]]+))*\\\\]$"},{"include":"#block-title"},{"begin":"^(\\\\+{4,})\\\\s*$","comment":"passthrough block","end":"(?<=\\\\1)","patterns":[{"include":"text.html.basic"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","end":"(?<=\\\\1)","patterns":[{"include":"text.html.basic"}]}]},{"begin":"(^\\\\+{4,}$)","end":"\\\\1","name":"markup.block.passthrough.asciidoc","patterns":[{"include":"text.html.basic"}]}]},"quote-paragraph":{"patterns":[{"begin":"(?=(?>(?:^\\\\[(quote|verse)((?:,|#|\\\\.|%)([^,\\\\]]+))*\\\\]$)))","end":"((?<=____|\\"\\"|--)$|^\\\\p{Blank}*$)","name":"markup.italic.quotes.asciidoc","patterns":[{"captures":{"0":{"patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(quote|verse)((?:,|#|\\\\.|%)([^,\\\\]]+))*\\\\]$"},{"include":"#block-title"},{"include":"#inlines"},{"begin":"^([_]{4,})\\\\s*$","comment":"quotes block","end":"(?<=\\\\1)","patterns":[{"include":"#inlines"},{"include":"#list"}]},{"begin":"^(\\"{2})\\\\s*$","comment":"air quotes","end":"(?<=\\\\1)","patterns":[{"include":"#inlines"},{"include":"#list"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","end":"(?<=\\\\1)$","patterns":[{"include":"#inlines"},{"include":"#list"}]}]},{"begin":"^(\\"\\")$","end":"^\\\\1$","name":"markup.italic.quotes.asciidoc","patterns":[{"include":"#inlines"},{"include":"#list"}]},{"begin":"^\\\\p{Blank}*(>) ","end":"^\\\\p{Blank}*?$","name":"markup.italic.quotes.asciidoc","patterns":[{"include":"#inlines"},{"include":"#list"}]}]},"sidebar-paragraph":{"patterns":[{"begin":"(?=(?>(?:^\\\\[(sidebar)((?:,|#|\\\\.|%)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\*\\\\*\\\\*\\\\*)$|^\\\\p{Blank}*$)","name":"markup.block.sidebar.asciidoc","patterns":[{"captures":{"0":{"patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(sidebar)((?:,|#|\\\\.|%)([^,\\\\]]+))*\\\\]$"},{"include":"#block-title"},{"begin":"^(\\\\*{4,})$","comment":"sidebar block","end":"^(\\\\1)$","patterns":[{"include":"$self"}]},{"begin":"^(-{2})$","comment":"open block","end":"^(\\\\1)$","patterns":[{"include":"$self"}]},{"include":"#inlines"}]},{"begin":"^(\\\\*{4,})$","end":"^(\\\\1)$","name":"markup.block.sidebar.asciidoc","patterns":[{"include":"$self"}]}]},"source-asciidoctor":{"patterns":[{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(c))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.c.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(c))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.c","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.c"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.c","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.c"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.c","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.c"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(clojure))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.clojure.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(clojure))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.clojure","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.clojure"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.clojure","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.clojure"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.clojure","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.clojure"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(coffee-?(script)?))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.coffee.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(coffee-?(script)?))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.coffee","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.coffee"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.coffee","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.coffee"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.coffee","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.coffee"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(c(pp|\\\\+\\\\+)))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.cpp.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(c(pp|\\\\+\\\\+)))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.cpp","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.cpp"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.cpp","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.cpp"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.cpp","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.cpp"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(css))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.css.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(css))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.css","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.css"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.css","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.css"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.css","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.css"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(cs(harp)?))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.cs.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(cs(harp)?))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.cs","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.cs"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.cs","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.cs"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.cs","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.cs"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(diff|patch|rej))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.diff.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(diff|patch|rej))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.diff","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.diff"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.diff","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.diff"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.diff","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.diff"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(docker(file)?))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.dockerfile.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(docker(file)?))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.dockerfile","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.dockerfile"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.dockerfile","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.dockerfile"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.dockerfile","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.dockerfile"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(elixir))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.elixir.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(elixir))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.elixir","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.elixir"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.elixir","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.elixir"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.elixir","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.elixir"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(elm))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.elm.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(elm))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.elm","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.elm"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.elm","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.elm"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.elm","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.elm"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(erlang))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.erlang.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(erlang))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.erlang","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.erlang"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.erlang","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.erlang"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.erlang","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.erlang"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(go(lang)?))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.go.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(go(lang)?))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.go","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.go"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.go","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.go"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.go","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.go"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(groovy))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.groovy.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(groovy))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.groovy","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.groovy"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.groovy","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.groovy"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.groovy","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.groovy"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(haskell))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.haskell.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(haskell))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.haskell","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.haskell"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.haskell","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.haskell"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.haskell","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.haskell"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(html))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.html.basic.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(html))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"text.embedded.html.basic","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.html.basic"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"text.embedded.html.basic","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.html.basic"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"text.embedded.html.basic","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.html.basic"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(java))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.java.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(java))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.java","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.java"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.java","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.java"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.java","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.java"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(javascript|js))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.js.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(javascript|js))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.js","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.js"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.js","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.js"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.js","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.js"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(json))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.json.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(json))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.json","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.json"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.json","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.json"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.json","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.json"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(jsx))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.js.jsx.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(jsx))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.js.jsx","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.js.jsx"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.js.jsx","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.js.jsx"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.js.jsx","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.js.jsx"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(julia))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.julia.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(julia))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.julia","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.julia"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.julia","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.julia"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.julia","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.julia"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(kotlin|kts?))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.kotlin.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(kotlin|kts?))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.kotlin","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.kotlin"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.kotlin","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.kotlin"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.kotlin","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.kotlin"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(less))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.css.less.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(less))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.css.less","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.css.less"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.css.less","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.css.less"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.css.less","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.css.less"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(make(file)?))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.makefile.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(make(file)?))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.makefile","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.makefile"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.makefile","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.makefile"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.makefile","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.makefile"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(markdown|mdown|md))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.gfm.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(markdown|mdown|md))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.gfm","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.gfm"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.gfm","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.gfm"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.gfm","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.gfm"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(mustache))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.html.mustache.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(mustache))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"text.embedded.html.mustache","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.html.mustache"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"text.embedded.html.mustache","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.html.mustache"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"text.embedded.html.mustache","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.html.mustache"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(objc|objective-c))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.objc.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(objc|objective-c))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.objc","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.objc"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.objc","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.objc"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.objc","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.objc"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(ocaml))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.ocaml.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(ocaml))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.ocaml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.ocaml"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.ocaml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.ocaml"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.ocaml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.ocaml"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(perl))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.perl.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(perl))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.perl","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.perl"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.perl","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.perl"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.perl","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.perl"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(perl6))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.perl6.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(perl6))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.perl6","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.perl6"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.perl6","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.perl6"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.perl6","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.perl6"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(php))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.html.php.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(php))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"text.embedded.html.php","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.html.php"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"text.embedded.html.php","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.html.php"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"text.embedded.html.php","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.html.php"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(properties))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.asciidoc.properties.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(properties))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.asciidoc.properties","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.asciidoc.properties"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.asciidoc.properties","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.asciidoc.properties"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.asciidoc.properties","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.asciidoc.properties"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(py(thon)?))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.python.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(py(thon)?))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.python","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.python"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.python","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.python"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.python","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.python"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(r))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.r.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(r))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.r","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.r"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.r","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.r"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.r","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.r"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(ruby|rb))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.ruby.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(ruby|rb))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.ruby","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.ruby"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.ruby","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.ruby"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.ruby","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.ruby"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(rust|rs))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.rust.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(rust|rs))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.rust","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.rust"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.rust","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.rust"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.rust","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.rust"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(sass))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.sass.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(sass))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.sass","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.sass"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.sass","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.sass"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.sass","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.sass"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(scala))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.scala.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(scala))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.scala","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.scala"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.scala","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.scala"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.scala","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.scala"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(scss))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.css.scss.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(scss))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.css.scss","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.css.scss"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.css.scss","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.css.scss"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.css.scss","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.css.scss"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(sh|bash|shell))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.shell.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(sh|bash|shell))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.shell","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.shell"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.shell","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.shell"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.shell","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.shell"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(sql))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.sql.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(sql))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.sql","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.sql"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.sql","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.sql"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.sql","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.sql"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(swift))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.swift.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(swift))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.swift","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.swift"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.swift","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.swift"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.swift","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.swift"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(toml))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.toml.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(toml))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.toml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.toml"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.toml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.toml"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.toml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.toml"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(typescript|ts))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.ts.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(typescript|ts))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.ts","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.ts"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.ts","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.ts"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.ts","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.ts"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(xml))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.xml.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(xml))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"text.embedded.xml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.xml"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"text.embedded.xml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.xml"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"text.embedded.xml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"text.xml"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(ya?ml))((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","name":"markup.code.yaml.asciidoc","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)(?:,|#)\\\\p{Blank}*(?i:(ya?ml))((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","contentName":"source.embedded.yaml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.yaml"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","contentName":"source.embedded.yaml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.yaml"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","contentName":"source.embedded.yaml","end":"^(\\\\1)$","patterns":[{"include":"#block-callout"},{"include":"#include-directive"},{"include":"source.yaml"}]}]},{"begin":"(?=(?>(?:^\\\\[(source)((?:,|#)[^\\\\]]+)*\\\\]$)))","end":"((?<=--|\\\\.\\\\.\\\\.\\\\.)$|^\\\\p{Blank}*$)","patterns":[{"captures":{"0":{"name":"markup.heading.asciidoc","patterns":[{"include":"#block-attribute-inner"}]}},"match":"^\\\\[(source)((?:,|#)([^,\\\\]]+))*\\\\]$"},{"include":"#inlines"},{"include":"#block-title"},{"begin":"^(-{4,})\\\\s*$","comment":"listing block","end":"^(\\\\1)$","name":"markup.raw.asciidoc","patterns":[{"include":"#block-callout"},{"include":"#include-directive"}]},{"begin":"^(-{2})\\\\s*$","comment":"open block","end":"^(\\\\1)$","name":"markup.raw.asciidoc","patterns":[{"include":"#block-callout"},{"include":"#include-directive"}]},{"begin":"^(\\\\.{4})\\\\s*$","comment":"literal block","end":"^(\\\\1)$","name":"markup.raw.asciidoc","patterns":[{"include":"#block-callout"},{"include":"#include-directive"}]}]},{"begin":"^(-{4,})\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"end":"^(\\\\1)$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.raw.asciidoc","patterns":[{"include":"#block-callout"},{"include":"#include-directive"}]}]},"source-markdown":{"patterns":[{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(c))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.c","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.c.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.c"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(clojure))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.clojure","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.clojure.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.clojure"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(coffee-?(script)?))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.coffee","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.coffee.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.coffee"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(c(pp|\\\\+\\\\+)))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.cpp","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.cpp.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.cpp"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(css))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.css","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.css.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.css"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(cs(harp)?))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.cs","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.cs.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.cs"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(diff|patch|rej))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.diff","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.diff.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.diff"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(docker(file)?))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.dockerfile","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.dockerfile.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.dockerfile"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(elixir))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.elixir","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.elixir.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.elixir"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(elm))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.elm","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.elm.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.elm"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(erlang))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.erlang","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.erlang.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.erlang"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(go(lang)?))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.go","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.go.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.go"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(groovy))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.groovy","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.groovy.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.groovy"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(haskell))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.haskell","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.haskell.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.haskell"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(html))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"text.embedded.html.basic","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.html.basic.asciidoc","patterns":[{"include":"#block-callout"},{"include":"text.html.basic"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(java))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.java","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.java.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.java"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(javascript|js))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.js","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.js.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.js"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(json))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.json","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.json.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.json"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(jsx))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.js.jsx","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.js.jsx.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.js.jsx"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(julia))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.julia","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.julia.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.julia"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(kotlin|kts?))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.kotlin","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.kotlin.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.kotlin"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(less))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.css.less","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.css.less.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.css.less"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(make(file)?))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.makefile","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.makefile.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.makefile"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(markdown|mdown|md))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.gfm","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.gfm.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.gfm"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(mustache))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"text.embedded.html.mustache","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.html.mustache.asciidoc","patterns":[{"include":"#block-callout"},{"include":"text.html.mustache"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(objc|objective-c))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.objc","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.objc.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.objc"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(ocaml))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.ocaml","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.ocaml.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.ocaml"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(perl))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.perl","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.perl.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.perl"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(perl6))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.perl6","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.perl6.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.perl6"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(php))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"text.embedded.html.php","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.html.php.asciidoc","patterns":[{"include":"#block-callout"},{"include":"text.html.php"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(properties))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.asciidoc.properties","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.asciidoc.properties.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.asciidoc.properties"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(py(thon)?))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.python","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.python.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.python"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(r))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.r","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.r.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.r"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(ruby|rb))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.ruby","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.ruby.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.ruby"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(rust|rs))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.rust","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.rust.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.rust"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(sass))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.sass","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.sass.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.sass"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(scala))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.scala","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.scala.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.scala"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(scss))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.css.scss","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.css.scss.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.css.scss"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(sh|bash|shell))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.shell","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.shell.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.shell"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(sql))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.sql","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.sql.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.sql"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(swift))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.swift","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.swift.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.swift"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(toml))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.toml","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.toml.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.toml"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(typescript|ts))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.ts","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.ts.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.ts"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(xml))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"text.embedded.xml","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.xml.asciidoc","patterns":[{"include":"#block-callout"},{"include":"text.xml"}]},{"begin":"^\\\\s*(`{3,})\\\\s*(?i:(ya?ml))\\\\s*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"contentName":"source.embedded.yaml","end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.code.yaml.asciidoc","patterns":[{"include":"#block-callout"},{"include":"source.yaml"}]},{"begin":"^\\\\s*(`{3,}).*$","beginCaptures":{"0":{"name":"support.asciidoc"}},"end":"^\\\\s*\\\\1\\\\s*$","endCaptures":{"0":{"name":"support.asciidoc"}},"name":"markup.raw.asciidoc","patterns":[{"include":"#block-callout"}]}]},"source-paragraphs":{"patterns":[{"include":"#source-asciidoctor"},{"include":"#source-markdown"}]},"stem-macro":{"patterns":[{"begin":"(?>))","name":"markup.reference.xref.asciidoc"},{"begin":"(?zee});var Gee,zee,F8=_(()=>{Gee=Object.freeze(JSON.parse('{"displayName":"Assembly","fileTypes":["asm","nasm","yasm","inc","s"],"name":"asm","patterns":[{"include":"#registers"},{"include":"#mnemonics"},{"include":"#constants"},{"include":"#entities"},{"include":"#support"},{"include":"#comments"},{"include":"#preprocessor"},{"include":"#strings"}],"repository":{"comments":{"patterns":[{"match":"(;|(^|\\\\s)#\\\\s).*$","name":"comment.line"},{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block"},{"begin":"^\\\\s*[\\\\#%]\\\\s*if\\\\s+0\\\\b","end":"^\\\\s*[\\\\#%]\\\\s*endif\\\\b","name":"comment.preprocessor"}]},"constants":{"patterns":[{"match":"(?i)\\\\b0[by](?:[01][01_]*)\\\\.(?:(?:[01][01_]*)?(?:p[+-]?(?:[0-9][0-9_]*))?\\\\b)?","name":"constant.numeric.binary.floating-point.asm.x86_64"},{"match":"(?i)\\\\b0[by](?:[01][01_]*)(?:p[+-]?(?:[0-9][0-9_]*))\\\\b","name":"constant.numeric.binary.floating-point.asm.x86_64"},{"match":"(?i)\\\\b0[oq](?:[0-7][0-7_]*)\\\\.(?:(?:[0-7][0-7_]*)?(?:p[+-]?(?:[0-9][0-9_]*))?\\\\b)?","name":"constant.numeric.octal.floating-point.asm.x86_64"},{"match":"(?i)\\\\b0[oq](?:[0-7][0-7_]*)(?:p[+-]?(?:[0-9][0-9_]*))\\\\b","name":"constant.numeric.octal.floating-point.asm.x86_64"},{"match":"(?i)\\\\b(?:0[dt])?(?:[0-9][0-9_]*)\\\\.(?:(?:[0-9][0-9_]*)?(?:e[+-]?(?:[0-9][0-9_]*))?\\\\b)?","name":"constant.numeric.decimal.floating-point.asm.x86_64"},{"match":"(?i)\\\\b(?:[0-9][0-9_]*)(?:e[+-]?(?:[0-9][0-9_]*))\\\\b","name":"constant.numeric.decimal.floating-point.asm.x86_64"},{"match":"(?i)\\\\b(?:[0-9][0-9_]*)p(?:[0-9][0-9_]*)?\\\\b","name":"constant.numeric.decimal.packed-bcd.asm.x86_64"},{"match":"(?i)\\\\b0[xh](?:[[:xdigit:]][[:xdigit:]_]*)\\\\.(?:(?:[[:xdigit:]][[:xdigit:]_]*)?(?:p[+-]?(?:[0-9][0-9_]*))?\\\\b)?","name":"constant.numeric.hex.floating-point.asm.x86_64"},{"match":"(?i)\\\\b0[xh](?:[[:xdigit:]][[:xdigit:]_]*)(?:p[+-]?(?:[0-9][0-9_]*))\\\\b","name":"constant.numeric.hex.floating-point.asm.x86_64"},{"match":"(?i)\\\\$[0-9]\\\\_?(?:[[:xdigit:]][[:xdigit:]_]*)?\\\\.(?:(?:[[:xdigit:]][[:xdigit:]_]*)?(?:p[+-]?(?:[0-9][0-9_]*))?\\\\b)?","name":"constant.numeric.hex.floating-point.asm.x86_64"},{"match":"(?i)\\\\$[0-9]\\\\_?(?:[[:xdigit:]][[:xdigit:]_]*)(?:p[+-]?(?:[0-9][0-9_]*))\\\\b","name":"constant.numeric.hex.floating-point.asm.x86_64"},{"match":"(?i)\\\\b(?:(?:0[by](?:[01][01_]*))|(?:(?:[01][01_]*)[by]))\\\\b","name":"constant.numeric.binary.asm.x86_64"},{"match":"(?i)\\\\b(?:(?:0[oq](?:[0-7][0-7_]*))|(?:(?:[0-7][0-7_]*)[oq]))\\\\b","name":"constant.numeric.octal.asm.x86_64"},{"match":"(?i)\\\\b(?:(?:0[dt](?:[0-9][0-9_]*))|(?:(?:[0-9][0-9_]*)[dt]?))\\\\b","name":"constant.numeric.decimal.asm.x86_64"},{"match":"(?i)(?:\\\\$[0-9]\\\\_?(?:[[:xdigit:]][[:xdigit:]_]*)?)\\\\b","name":"constant.numeric.hex.asm.x86_64"},{"match":"(?i)\\\\b(?:(?:0[xh](?:[[:xdigit:]][[:xdigit:]_]*))|(?:(?:[[:xdigit:]][[:xdigit:]_]*)[hxHX]))\\\\b","name":"constant.numeric.hex.asm.x86_64"}]},"entities":{"patterns":[{"match":"((section|segment)\\\\s+)?\\\\.((ro)?data|bss|text)","name":"entity.name.section"},{"match":"^\\\\.?(globa?l|extern|required)\\\\b","name":"entity.directive"},{"match":"(\\\\$\\\\w+)\\\\b","name":"text.variable"},{"captures":{"1":{"name":"punctuation.separator.asm.x86_64 storage.modifier.asm.x86_64"},"2":{"name":"entity.name.function.special.asm.x86_64"},"3":{"name":"punctuation.separator.asm.x86_64"}},"match":"(\\\\.\\\\.@)((?:[[:alpha:]_?](?:[[:alnum:]_$#@~.?]*)))(?:(\\\\:)?|\\\\b)","name":"entity.name.function.asm.x86_64"},{"captures":{"1":{"name":"punctuation.separator.asm.x86_64 storage.modifier.asm.x86_64"},"2":{"name":"entity.name.function.asm.x86_64"},"3":{"name":"punctuation.separator.asm.x86_64"}},"match":"(?:(\\\\.)?|\\\\b)((?:[[:alpha:]_?](?:[[:alnum:]_$#@~.?]*)))(?:(\\\\:))","name":"entity.name.function.asm.x86_64"},{"captures":{"1":{"name":"punctuation.separator.asm.x86_64 storage.modifier.asm.x86_64"},"2":{"name":"entity.name.function.asm.x86_64"},"3":{"name":"punctuation.separator.asm.x86_64"}},"match":"(\\\\.)([0-9]+(?:[[:alnum:]_$#@~.?]*))(?:(\\\\:)?|\\\\b)","name":"entity.name.function.asm.x86_64"},{"captures":{"1":{"name":"punctuation.separator.asm.x86_64 storage.modifier.asm.x86_64"},"2":{"name":"invalid.illegal.entity.name.function.asm.x86_64"},"3":{"name":"punctuation.separator.asm.x86_64"}},"match":"(?:(\\\\.)?|\\\\b)([0-9$@~](?:[[:alnum:]_$#@~.?]*))(?:(\\\\:))","name":"invalid.illegal.entity.name.function.asm.x86_64"}]},"mnemonics":{"patterns":[{"include":"#mnemonics-general-purpose"},{"include":"#mnemonics-fpu"},{"include":"#mnemonics-mmx"},{"include":"#mnemonics-sse"},{"include":"#mnemonics-sse2"},{"include":"#mnemonics-sse3"},{"include":"#mnemonics-sse4"},{"include":"#mnemonics-aesni"},{"include":"#mnemonics-avx"},{"include":"#mnemonics-avx2"},{"include":"#mnemonics-tsx"},{"include":"#mnemonics-sha"},{"include":"#mnemonics-avx512"},{"include":"#mnemonics-system"},{"include":"#mnemonics-64bit"},{"include":"#mnemonics-vmx"},{"include":"#mnemonics-smx"},{"include":"#mnemonics-mpx"},{"include":"#mnemonics-sgx"},{"include":"#mnemonics-cet"},{"include":"#mnemonics-amx"},{"include":"#mnemonics-uirq"},{"include":"#mnemonics-esi"},{"include":"#mnemonics-intel-manual-listing"},{"include":"#mnemonics-intel-isa-xeon-phi"},{"include":"#mnemonics-intel-isa-keylocker"},{"include":"#mnemonics-supplemental-amd"},{"include":"#mnemonics-supplemental-cyrix"},{"include":"#mnemonics-supplemental-via"},{"include":"#mnemonics-undocumented"},{"include":"#mnemonics-future-intel"},{"include":"#mnemonics-pseudo-ops"}]},"mnemonics-64bit":{"patterns":[{"match":"(?i)\\\\b(cdqe|cqo|(cmp|lod|mov|sto)sq|cmpxchg16b|mov(ntq|sxd)|scasq|swapgs|sys(call|ret))\\\\b","name":"keyword.operator.word.mnemonic.64-bit-mode"}]},"mnemonics-aesni":{"patterns":[{"match":"(?i)\\\\b(aes((dec|enc)(last)?|imc|keygenassist)|pclmulqdq)\\\\b","name":"keyword.operator.word.mnemonic.aesni"}]},"mnemonics-amx":{"patterns":[{"match":"(?i)\\\\b((ld|st)tilecfg|tdpb(f16ps|[su]{2}d)|tile(loadd(t1)?|release|stored|zero))\\\\b","name":"keyword.operator.word.mnemonic.amx"}]},"mnemonics-avx":{"patterns":[{"match":"(?i)\\\\b(v((test|permil|maskmov)p[ds]|zero(all|upper)|(perm2|insert|extract|broadcast)f128|broadcasts[ds]))\\\\b","name":"keyword.operator.word.mnemonic.avx"},{"match":"(?i)\\\\b(vaes((dec|enc)(last)?|imc|keygenassist)|vpclmulqdq)\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.aes"},{"match":"(?i)\\\\b(v((cmp[ps]|u?comis)[ds]|pcmp([ei]str[im]|(eq|gt)[bdqw])))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.comparison"},{"match":"(?i)\\\\b(v(cvt(dq2pd|dq2ps|pd2ps|ps2pd|sd2ss|si2sd|si2ss|ss2sd|t?(pd2dq|ps2dq|sd2si|ss2si))))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.conversion"},{"match":"(?i)\\\\b(vh((add|sub)p[ds])|vph((add|sub)([dw]|sw)|minposuw))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.horizontal-packed-arithmetic"},{"match":"(?i)\\\\b(v((andn?|x?or)p[ds]))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.logical"},{"match":"(?i)\\\\b(v(mov(([ahl]|msk|nt|u)p[ds]|(hl|lh)ps|s([ds]|[hl]dup)|q)))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.mov"},{"match":"(?i)\\\\b(v((add|div|mul|sub|max|min|round|sqrt)[ps][ds]|(addsub|dp)p[ds]|(rcp|rsqrt)[ps]s))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.packed-arithmetic"},{"match":"(?i)\\\\b(v(pack[su]s(dw|wb)|punpck[hl](bw|dq|wd|qdq)|unpck[hl]p[ds]))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.packed-conversion"},{"match":"(?i)\\\\b(vp(shuf([bd]|[hl]w))|vshufp[ds])\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.packed-shuffle"},{"match":"(?i)\\\\b(vp((abs|sign|(max|min)[su])[bdw]|(add|sub)([bdqw]|u?s[bw])|avg[bw]|extr[bdqw]|madd(wd|ubsw)|mul(hu?w|hrsw|l[dw]|u?dq)|sadbw))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.supplemental.arithmetic"},{"match":"(?i)\\\\b(vp(andn?|x?or))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.supplemental.logical"},{"match":"(?i)\\\\b(vpblend(vb|w))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.supplemental.blending"},{"match":"(?i)\\\\b(vpmov(mskb|[sz]x(b[dqw]|w[dq]|dq)))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.supplemental.mov"},{"match":"(?i)\\\\b(vp(insr[bdqw]|sll(dq|[dqw])|srl(dq)))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.simd-integer"},{"match":"(?i)\\\\b(vp(sra[dwq]|srl[dqw]))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.shift-and-rotate"},{"match":"(?i)\\\\b(vblendv?p[ds])\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.packed-blending"},{"match":"(?i)\\\\b(vp(test|alignr))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.packed-other"},{"match":"(?i)\\\\b(vmov(d(dup|qa|qu)?))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.simd-integer.mov"},{"match":"(?i)\\\\b(v((extract|insert)ps|lddqu|(ld|st)mxcsr|mpsadbw))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.other"},{"match":"(?i)\\\\b(v(maskmovdqu|movntdqa?))\\\\b","name":"keyword.operator.word.mnemonic.avx.promoted.cacheability-control"},{"match":"(?i)\\\\b(vcvt(ph2ps|ps2ph))\\\\b","name":"keyword.operator.word.mnemonic.16-bit-floating-point-conversion"},{"match":"(?i)\\\\b(vfn?m((add|sub)(132|213|231)[ps][ds])|vfm((addsub|subadd)(132|213|231)p[ds]))\\\\b","name":"keyword.operator.word.mnemonic.fma"}]},"mnemonics-avx2":{"patterns":[{"match":"(?i)\\\\b(v((broadcast|extract|insert|perm2)i128|pmaskmov[dq]|perm([dsq]|p[sd])))\\\\b","name":"keyword.operator.word.mnemonic.avx2.promoted.simd"},{"match":"(?i)\\\\b(vpbroadcast[bdqw])\\\\b","name":"keyword.operator.word.mnemonic.avx2.promoted.packed"},{"match":"(?i)\\\\b(vp(blendd|s[lr]lv[dq]|sravd))\\\\b","name":"keyword.operator.word.mnemonic.avx2.blend"},{"match":"(?i)\\\\b(vp?gather[dq][dq]|vgather([dq]|dq)p[ds])\\\\b","name":"keyword.operator.word.mnemonic.avx2.gather"}]},"mnemonics-avx512":{"patterns":[{"include":"#mnemonics-avx512f"},{"include":"#mnemonics-avx512dq"},{"include":"#mnemonics-avx512bw"},{"include":"#mnemonics-avx512-opmask"},{"include":"#mnemonics-avx512er"},{"include":"#mnemonics-avx512pf"},{"include":"#mnemonics-avx512fp16"}]},"mnemonics-avx512-opmask":{"patterns":[{"match":"(?i)\\\\bk(add|andn?|mov|not|or(test)?|shift[lr]|test|xn?or)[bdqw]\\\\b","name":"keyword.operator.word.mnemonic.avx512.opmask"},{"match":"(?i)\\\\bkunpck(bw|wd|dq)\\\\b","name":"keyword.operator.word.mnemonic.avx512.opmask.unpack"}]},"mnemonics-avx512bw":{"patterns":[{"match":"(?i)\\\\bv(dbpsadbw|movdqu(8|16))\\\\b","name":"keyword.operator.word.mnemonic.avx512.bw.dbpsad"},{"match":"(?i)\\\\bvp(blendm|cmpu?|movm2)[bw]\\\\b","name":"keyword.operator.word.mnemonic.avx512.bw.pblend"},{"match":"(?i)\\\\bvperm(w|i2[bw])\\\\b","name":"keyword.operator.word.mnemonic.avx512.bw.perpmi2"},{"match":"(?i)\\\\bvp(mov([bw]2m|u?swb))\\\\b","name":"keyword.operator.word.mnemonic.avx512.bw.pmov"},{"match":"(?i)\\\\bvp(s(ll|ra|rl)vw|testn?m[bw])\\\\b","name":"keyword.operator.word.mnemonic.avx512.bw.psll"},{"match":"(?i)\\\\bvp(broadcastm(b2q|w2d)|(conflict|lzcnt)[dq])\\\\b","name":"keyword.operator.word.mnemonic.avx512.bw.broadcast"}]},"mnemonics-avx512dq":{"patterns":[{"match":"(?i)\\\\bvcvt(t?p[ds]2u?qq|uqq2p[ds])\\\\b","name":"keyword.operator.word.mnemonic.avx512.dq.cvt"},{"match":"(?i)\\\\bv((extract|insert)[fi]64x2|(fpclass|range|reduce)[ps][ds])\\\\b","name":"keyword.operator.word.mnemonic.avx512.dq.extract"},{"match":"(?i)\\\\bvp(mov(m2[dq]|b2d|q2m)|mullq)\\\\b","name":"keyword.operator.word.mnemonic.avx512.dq.pmov"}]},"mnemonics-avx512er":{"patterns":[{"match":"(?i)\\\\bv(exp2|rcp28|rsqrt28)[ps][ds]\\\\b","name":"keyword.operator.word.mnemonic.avx512.er"}]},"mnemonics-avx512f":{"patterns":[{"match":"(?i)\\\\bv(align[dq]|(blendm|compress)p[ds])\\\\b","name":"keyword.operator.word.mnemonic.avx512.f.align"},{"match":"(?i)\\\\bv(cvtt?[ps][ds]2u(dq|si))\\\\b","name":"keyword.operator.word.mnemonic.avx512.f.cvtt"},{"match":"(?i)\\\\bv(cvt((q|ud)q2p|usi2s)[ds])\\\\b","name":"keyword.operator.word.mnemonic.avx512.f.cvt"},{"match":"(?i)\\\\bv(expandp[ds]|extract[fi](32|64)x4|fixupimm[ps][ds])\\\\b","name":"keyword.operator.word.mnemonic.avx512.f.expand"},{"match":"(?i)\\\\bv(get(exp|mant)[ps][ds]|insertf(32|64)x4|movdq[au](32|64))\\\\b","name":"keyword.operator.word.mnemonic.avx512.f.getexp"},{"match":"(?i)\\\\bvp(blendm[dq]|cmpu?[dq]|compress[dq])\\\\b","name":"keyword.operator.word.mnemonic.avx512.f.pblend"},{"match":"(?i)\\\\bvp(erm[it]2(d|q|p[ds])|expand[dq]|(max|min)[su]q|movu?s(q[bdw]|d[bw]))\\\\b","name":"keyword.operator.word.mnemonic.avx512.f.permi"},{"match":"(?i)\\\\bvp(rolv?|rorr?|scatter[dq]|testn?m|terlog)[dq]\\\\b","name":"keyword.operator.word.mnemonic.avx512.f.prol"},{"match":"(?i)\\\\bvpsravq\\\\b","name":"keyword.operator.word.mnemonic.avx512.f.sravq"},{"match":"(?i)\\\\bv(rcp14|(rnd)?scale|rsqrt14)[ps][ds]\\\\b","name":"keyword.operator.word.mnemonic.avx512.f.rcp"},{"match":"(?i)\\\\bv(scatter[dq]{2}|shuf[fi](32|64)x[24])\\\\b","name":"keyword.operator.word.mnemonic.avx512.f.scatter"}]},"mnemonics-avx512fp16":{"patterns":[{"match":"(?i)\\\\bv((add|cmp|div|fc?(madd|mul)c|fpclass|get(exp|mant)|mul|rcp|reduce|(rnd)?scale|r?sqrt|sub)[ps]h|u?comish)\\\\b","name":"keyword.operator.word.mnemonic.avx512.fp16.add"},{"match":"(?i)\\\\bvcvt(u?([dq]q|w)|pd)2ph\\\\b","name":"keyword.operator.word.mnemonic.avx512.fp16.cvtx2ph"},{"match":"(?i)\\\\bvcvtph2(u?([dq]q|w)|pd)\\\\b","name":"keyword.operator.word.mnemonic.avx512.fp16.cvtph2x"},{"match":"(?i)\\\\bvcvt(ph2psx|ps2phx)\\\\b","name":"keyword.operator.word.mnemonic.avx512.fp16.cvtx"},{"match":"(?i)\\\\bvcvt(s[dsi]|usi)2sh\\\\b","name":"keyword.operator.word.mnemonic.avx512.fp16.cvtx2sh"},{"match":"(?i)\\\\bvcvtsh2(s[dsi]|usi)\\\\b","name":"keyword.operator.word.mnemonic.avx512.fp16.cvtsh2x"},{"match":"(?i)\\\\bvcvtt(ph2(u?(dq|qq|w))|sh2u?si)\\\\b","name":"keyword.operator.word.mnemonic.avx512.fp16.cvttph2x"},{"match":"(?i)\\\\bvfn?m((add|sub)(132|213|231))[ps]h\\\\b","name":"keyword.operator.word.mnemonic.avx512.fp16.fmadd"},{"match":"(?i)\\\\bvfm(addsub|subadd)(132|213|231)ph\\\\b","name":"keyword.operator.word.mnemonic.avx512.fp16.fmaddsub"},{"match":"(?i)\\\\bv((min|max)ph|mov(sh|w))\\\\b","name":"keyword.operator.word.mnemonic.avx512.fp16.max"}]},"mnemonics-avx512pf":{"patterns":[{"match":"(?i)\\\\bv(gather|scatter)pf[01][dq]p[ds]\\\\b","name":"keyword.operator.word.mnemonic.avx512.pf"}]},"mnemonics-cet":{"patterns":[{"match":"(?i)\\\\b((inc|save(prev)?|rstor|rd)ssp|wru?ss|(set|clr)ssbsy|endbr(32|64))\\\\b","name":"keyword.operator.word.mnemonic.cet"},{"match":"(?i)\\\\bendbranch\\\\b","name":"keyword.operator.word.mnemonic.cet.misc"}]},"mnemonics-esi":{"patterns":[{"match":"(?i)\\\\benqcmds?\\\\b","name":"keyword.operator.word.mnemonic.esi"}]},"mnemonics-fpu":{"patterns":[{"match":"(?i)\\\\b(fcmov(n?([beu]|be)))\\\\b","name":"keyword.operator.word.mnemonic.fpu.data-transfer.mov"},{"match":"(?i)\\\\b(f(i?(ld|stp?)|b(ld|stp)|xch))\\\\b","name":"keyword.operator.word.mnemonic.fpu.data-transfer.other"},{"match":"(?i)\\\\b(f((add|div|mul|sub)p?|i(add|div|mul|sub)|(div|sub)rp?|i(div|sub)r))\\\\b","name":"keyword.operator.word.mnemonic.fpu.basic-arithmetic.basic"},{"match":"(?i)\\\\b(f(prem1?|abs|chs|rndint|scale|sqrt|xtract))\\\\b","name":"keyword.operator.word.mnemonic.fpu.basic-arithmetic.other"},{"match":"(?i)\\\\b(f(u?com[ip]?p?|icomp?|tst|xam))\\\\b","name":"keyword.operator.word.mnemonic.fpu.comparison"},{"match":"(?i)\\\\b(f(sin|cos|sincos|pa?tan|2xm1|yl2x(p1)?))\\\\b","name":"keyword.operator.word.mnemonic.fpu.transcendental"},{"match":"(?i)\\\\b(fld(1|z|pi|l2[et]|l[ng]2))\\\\b","name":"keyword.operator.word.mnemonic.fpu.load-constants"},{"match":"(?i)\\\\b(f((inc|dec)stp|free|n?(init|clex|st[cs]w|stenv|save)|ld(cw|env)|rstor|nop)|f?wait)\\\\b","name":"keyword.operator.word.mnemonic.fpu.control-management"},{"match":"(?i)\\\\b(fx(save|rstor)(64)?)\\\\b","name":"keyword.operator.word.mnemonic.fpu.state-management"}]},"mnemonics-future-intel":{"patterns":[{"include":"#mnemonics-future-intel-apx"}]},"mnemonics-future-intel-apx":{"patterns":[{"match":"(?i)\\\\b(c(cmp|test)(n?[bl]e?|[ft]|n?[osz]))\\\\b","name":"keyword.operator.word.mnemonic.apx.ccmp_test"},{"match":"(?i)\\\\b(cfcmovn?([bl]e?|[opsz]))\\\\b","name":"keyword.operator.word.mnemonic.apx.cfcmov"},{"match":"(?i)\\\\b(cmpn?([bl]e?|[opsz])xadd)\\\\b","name":"keyword.operator.word.mnemonic.apx.cmpxadd"},{"match":"(?i)\\\\b(jmpabs|(push|pop)2p?)\\\\b","name":"keyword.operator.word.mnemonic.apx.other"}]},"mnemonics-general-purpose":{"patterns":[{"match":"(?i)\\\\b(?:mov(?:[sz]x)?|cmov(?:n?[abceglopsz]|n?[abgl]e|p[eo]))\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.data-transfer.mov"},{"match":"(?i)\\\\b(xchg|bswap|xadd|cmpxchg(8b)?)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.data-transfer.xchg"},{"match":"(?i)\\\\b((push|pop)(ad?)?|cwde?|cdq|cbw)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.data-transfer.other"},{"match":"(?i)\\\\b(adcx?|adox|add|sub|sbb|i?mul|i?div|inc|dec|neg|cmp)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.binary-arithmetic"},{"match":"(?i)\\\\b(daa|das|aaa|aas|aam|aad)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.decimal-arithmetic"},{"match":"(?i)\\\\b(and|x?or|not)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.logical"},{"match":"(?i)\\\\b(s[ah][rl]|sh[rl]d|r[co][rl])\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.rotate"},{"match":"(?i)\\\\b(set(n?[abceglopsz]|n?[abgl]e|p[eo]))\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.bit-and-byte.set"},{"match":"(?i)\\\\b(bt[crs]?|bs[fr]|test|crc32|popcnt)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.bit-and-byte.other"},{"match":"(?i)\\\\b(jmp|jn?[abceglopsz]|jn?[abgl]e|jp[eo]|j[er]?cxz)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.control-transfer.jmp"},{"match":"(?i)\\\\b(loop(n?[ez])?|call|ret|iret[dq]?|into?|bound|enter|leave)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.control-transfer.other"},{"match":"(?i)\\\\b((mov|cmp|sca|lod|sto)(s[bdw]?)|rep(n?[ez])?)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.strings"},{"match":"(?i)\\\\b((in|out)(s[bdw]?)?)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.io"},{"match":"(?i)\\\\b((st|cl)[cdi]|cmc|[ls]ahf|(push|pop)f[dq]?)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.flag-control"},{"match":"(?i)\\\\b(l[defgs]s)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.segment-registers"},{"match":"(?i)\\\\b(lea|nop|ud2?|xlatb?|cpuid|movbe)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.misc"},{"match":"(?i)\\\\b(cl(flush(opt)?|demote|wb)|pcommit)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.cache-control"},{"match":"(?i)\\\\b(rdrand|rdseed)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.rng"},{"match":"(?i)\\\\b(andn|bextr|bls(i|r|msk)|bzhi|pdep|pext|[lt]zcnt|(mul|ror|sar|shl|shr)x)\\\\b","name":"keyword.operator.word.mnemonic.general-purpose.bmi"}]},"mnemonics-intel-isa-keylocker":{"patterns":[{"match":"(?i)\\\\b(aes(enc|dec)(wide)?(128|256)kl|encodekey(128|256)|loadiwkey)\\\\b","name":"keyword.operator.word.mnemonic.keylocker"}]},"mnemonics-intel-isa-xeon-phi":{"patterns":[{"match":"(?i)\\\\bv(4fn?(madd)[ps]s|p4dpwssds?)\\\\b","name":"keyword.operator.word.mnemonic.xeon-phi"}]},"mnemonics-intel-manual-listing":{"patterns":[{"match":"(?i)\\\\bcvtt?pd1pi\\\\b","name":"keyword.operator.word.mnemonic.other.c"},{"match":"(?i)\\\\bv?gf2p8(affine(inv)?q|mul)b\\\\b","name":"keyword.operator.word.mnemonic.other.g"},{"match":"(?i)\\\\bhreset\\\\b","name":"keyword.operator.word.mnemonic.other.h"},{"match":"(?i)\\\\bincssp[dq]\\\\b","name":"keyword.operator.word.mnemonic.other.i"},{"match":"(?i)\\\\bmovdir(i|64b)\\\\b","name":"keyword.operator.word.mnemonic.other.m"},{"match":"(?i)\\\\bp((abs|(max|min)[su]?|mull|sra)q|config|twrite)\\\\b","name":"keyword.operator.word.mnemonic.other.p"},{"match":"(?i)\\\\brd(pid|ssp[dq])\\\\b","name":"keyword.operator.word.mnemonic.other.r"},{"match":"(?i)\\\\bserialize\\\\b","name":"keyword.operator.word.mnemonic.other.s"},{"match":"(?i)\\\\btpause\\\\b","name":"keyword.operator.word.mnemonic.other.t"},{"match":"(?i)\\\\bu(monitor|mwait)\\\\b","name":"keyword.operator.word.mnemonic.other.u"},{"match":"(?i)\\\\bvbroadcast[fi](32x[248]|64x[24])\\\\b","name":"keyword.operator.word.mnemonic.other.vb"},{"match":"(?i)\\\\bv(compressw|cvtne2?ps2bf16)\\\\b","name":"keyword.operator.word.mnemonic.other.vc"},{"match":"(?i)\\\\bvdpbf16ps\\\\b","name":"keyword.operator.word.mnemonic.other.vd"},{"match":"(?i)\\\\bvextract[fi]32x8\\\\b","name":"keyword.operator.word.mnemonic.other.ve"},{"match":"(?i)\\\\bv(insert([fi]32x8|i(32|64)x4))\\\\b","name":"keyword.operator.word.mnemonic.other.vi"},{"match":"(?i)\\\\bv(maskmov|(max|min)sh)\\\\b","name":"keyword.operator.word.mnemonic.other.vm"},{"match":"(?i)\\\\bvp((2intersect|andn?)[dq]|absq)\\\\b","name":"keyword.operator.word.mnemonic.other.vpa"},{"match":"(?i)\\\\bvpbroadcasti32x4\\\\b","name":"keyword.operator.word.mnemonic.other.vpb"},{"match":"(?i)\\\\bvpcompress[bw]\\\\b","name":"keyword.operator.word.mnemonic.other.vpc"},{"match":"(?i)\\\\bvp(dp(bu|ws)sds?)\\\\b","name":"keyword.operator.word.mnemonic.other.vpd"},{"match":"(?i)\\\\b(vperm(b|t2[bw])|vp(expand[bw]|extrtd))\\\\b","name":"keyword.operator.word.mnemonic.other.vpe"},{"match":"(?i)\\\\bvp(madd52[hl]uq|mov(d(2m|[bw])|q[bdw]|wb)|mpov[bdqw]2m|multishiftqb)\\\\b","name":"keyword.operator.word.mnemonic.other.vpm"},{"match":"(?i)\\\\b(vpopcnt[bdqw]|vpor[dq])\\\\b","name":"keyword.operator.word.mnemonic.other.vpo"},{"match":"(?i)\\\\bvprorv[dq]\\\\b","name":"keyword.operator.word.mnemonic.other.vpr"},{"match":"(?i)\\\\bvp(sh[lr]dv?[dqw]|shufbitqmb|shufps)\\\\b","name":"keyword.operator.word.mnemonic.other.vps"},{"match":"(?i)\\\\bvpternlog[dq]\\\\b","name":"keyword.operator.word.mnemonic.other.vpt"},{"match":"(?i)\\\\bvpxor[dq]\\\\b","name":"keyword.operator.word.mnemonic.other.vpx"},{"match":"(?i)\\\\bv(scalef[ps][dhs]|scatter[dq]p[ds])\\\\b","name":"keyword.operator.word.mnemonic.other.vs"},{"match":"(?i)\\\\b(wbnoinvd|wru?ss[dq])\\\\b","name":"keyword.operator.word.mnemonic.other.w"}]},"mnemonics-invalid":{"patterns":[{"include":"#mnemonics-invalid-amd-sse5"}]},"mnemonics-invalid-amd-sse5":{"patterns":[{"match":"(?i)\\\\b(com[ps][ds]|pcomu?[bdqw])\\\\b","name":"invalid.keyword.operator.word.mnemonic.sse5.comparison"},{"match":"(?i)\\\\b(cvtp(h2ps|s2ph)|frcz[ps][ds])\\\\b","name":"invalid.keyword.operator.word.mnemonic.sse5.conversion"},{"match":"(?i)\\\\b(fn?m((add|sub)[ps][ds])|ph(addu?(b[dqw]|w[dq]|dq)|sub(bw|dq|wd))|pma(css?(d(d|q[hl])|w[dw])|dcss?wd))\\\\b","name":"invalid.keyword.operator.word.mnemonic.sse5.packed-arithmetic"},{"match":"(?i)\\\\b(pcmov|permp[ds]|pperm|prot[bdqw]|psh[al][bdqw])\\\\b","name":"invalid.keyword.operator.word.mnemonic.sse5.simd-integer"}]},"mnemonics-mmx":{"patterns":[{"match":"(?i)\\\\b(mov[dq])\\\\b","name":"keyword.operator.word.mnemonic.mmx.data-transfer"},{"match":"(?i)\\\\b(pack(ssdw|[su]swb)|punpck[hl](bw|dq|wd))\\\\b","name":"keyword.operator.word.mnemonic.mmx.conversion"},{"match":"(?i)\\\\b(p(((add|sub)(d|(u?s)?[bw]))|maddwd|mul[lh]w))\\\\b","name":"keyword.operator.word.mnemonic.mmx.packed-arithmetic"},{"match":"(?i)\\\\b(pcmp((eq|gt)[bdw]))\\\\b","name":"keyword.operator.word.mnemonic.mmx.comparison"},{"match":"(?i)\\\\b(pandn?|px?or)\\\\b","name":"keyword.operator.word.mnemonic.mmx.logical"},{"match":"(?i)\\\\b(ps([rl]l[dwq]|raw|rad))\\\\b","name":"keyword.operator.word.mnemonic.mmx.shift-and-rotate"},{"match":"(?i)\\\\b(emms)\\\\b","name":"keyword.operator.word.mnemonic.mmx.state-management"}]},"mnemonics-mpx":{"patterns":[{"match":"(?i)\\\\b(bnd(mk|c[lnu]|mov|ldx|stx))\\\\b","name":"keyword.operator.word.mnemonic.mpx"}]},"mnemonics-pseudo-ops":{"patterns":[{"match":"(?i)\\\\b(cmp(n?(eq|lt|le)|(un)?ord)[ps][ds])\\\\b","name":"keyword.operator.word.pseudo-mnemonic.sse2.compare"},{"match":"(?i)\\\\b(v?pclmul([hl]q[hl]q|[hl]qh)dq)\\\\b","name":"keyword.operator.word.pseudo-mnemonic.avx.promoted.aes"},{"match":"(?i)\\\\b(vcmp(eq(_(os|uq|us))?|neq(_(oq|os|us))?|[gl][et](_oq)?|n[gl][et](_uq)?|(un)?ord(_s)?|false(_os)?|true(_us)?)[ps][ds])\\\\b","name":"keyword.operator.word.pseudo-mnemonic.avx.promoted.comparison"},{"match":"(?i)\\\\bvp(cmpn?(eq|le|lt))\\\\b","name":"keyword.operator.word.pseudo-mnemonic.avx512.compare"},{"match":"(?i)\\\\b(vpcom(n?eq|[gl][et]|false|true)(b|uw))\\\\b","name":"keyword.operator.word.pseudo-mnemonic.supplemental.amd.xop.simd"}]},"mnemonics-sgx":{"patterns":[{"match":"(?i)\\\\bencl[su]\\\\b","name":"keyword.operator.word.mnemonic.sgx"},{"match":"(?i)\\\\be(add|block|create|dbg(rd|wr)|extend|init|ld[bu]|pa|remove|track|wb)\\\\b","name":"support.constant.sgx1.supervisor"},{"match":"(?i)\\\\be(add|block|create|dbg(rd|wr)|extend|init|ld[bu]|pa|remove|track|wb)\\\\b","name":"support.constant.sgx1.supervisor"},{"match":"(?i)\\\\be(enter|exit|getkey|report|resume)\\\\b","name":"support.constant.sgx1.user"},{"match":"(?i)\\\\be(aug|mod(pr|t))\\\\b","name":"support.constant.sgx2.supervisor"},{"match":"(?i)\\\\be(accept(copy)?|modpe)\\\\b","name":"support.constant.sgx2.user"}]},"mnemonics-sha":{"patterns":[{"match":"(?i)\\\\b(sha(1rnds4|256rnds2|1nexte|(1|256)msg[12]))\\\\b","name":"keyword.operator.word.mnemonic.sha"}]},"mnemonics-smx":{"patterns":[{"match":"(?i)\\\\b(getsec)\\\\b","name":"keyword.operator.word.mnemonic.smx.getsec"},{"match":"(?i)\\\\b(capabilities|enteraccs|exitac|senter|sexit|parameters|smctrl|wakeup)\\\\b","name":"support.constant.smx"}]},"mnemonics-sse":{"patterns":[{"match":"(?i)\\\\b(mov(([ahlu]|hl|lh|msk)ps|ss))\\\\b","name":"keyword.operator.word.mnemonic.sse.data-transfer"},{"match":"(?i)\\\\b((add|div|max|min|mul|rcp|r?sqrt|sub)[ps]s)\\\\b","name":"keyword.operator.word.mnemonic.sse.packed-arithmetic"},{"match":"(?i)\\\\b(cmp[ps]s|u?comiss)\\\\b","name":"keyword.operator.word.mnemonic.sse.comparison"},{"match":"(?i)\\\\b((andn?|x?or)ps)\\\\b","name":"keyword.operator.word.mnemonic.sse.logical"},{"match":"(?i)\\\\b((shuf|unpck[hl])ps)\\\\b","name":"keyword.operator.word.mnemonic.sse.shuffle-and-unpack"},{"match":"(?i)\\\\b(cvt(pi2ps|si2ss|ps2pi|tps2pi|ss2si|tss2si))\\\\b","name":"keyword.operator.word.mnemonic.sse.conversion"},{"match":"(?i)\\\\b((ld|st)mxcsr)\\\\b","name":"keyword.operator.word.mnemonic.sse.state-management"},{"match":"(?i)\\\\b(p(avg[bw]|extrw|insrw|(max|min)(sw|ub)|sadbw|shufw|mulhuw|movmskb))\\\\b","name":"keyword.operator.word.mnemonic.sse.simd-integer"},{"match":"(?i)\\\\b(maskmovq|movntps|sfence)\\\\b","name":"keyword.operator.word.mnemonic.sse.cacheability-control"},{"match":"(?i)\\\\b(prefetch(nta|t[0-2]|w(t1)?))\\\\b","name":"keyword.operator.word.mnemonic.sse.prefetch"}]},"mnemonics-sse2":{"patterns":[{"match":"(?i)\\\\b(mov([auhl]|msk)pd)\\\\b","name":"keyword.operator.word.mnemonic.sse2.data-transfer"},{"match":"(?i)\\\\b((add|div|max|min|mul|sub|sqrt)[ps]d)\\\\b","name":"keyword.operator.word.mnemonic.sse2.packed-arithmetic"},{"match":"(?i)\\\\b((andn?|x?or)pd)\\\\b","name":"keyword.operator.word.mnemonic.sse2.logical"},{"match":"(?i)\\\\b((cmpp|u?comis)d)\\\\b","name":"keyword.operator.word.mnemonic.sse2.compare"},{"match":"(?i)\\\\b((shuf|unpck[hl])pd)\\\\b","name":"keyword.operator.word.mnemonic.sse2.shuffle-and-unpack"},{"match":"(?i)\\\\b(cvt(dq2pd|pi2pd|ps2pd|pd2ps|si2sd|sd2ss|ss2sd|t?(pd2dq|pd2pi|sd2si)))\\\\b","name":"keyword.operator.word.mnemonic.sse2.conversion"},{"match":"(?i)\\\\b(cvt(dq2ps|ps2dq|tps2dq))\\\\b","name":"keyword.operator.word.mnemonic.sse2.packed-floating-point"},{"match":"(?i)\\\\b(mov(dq[au]|q2dq|dq2q))\\\\b","name":"keyword.operator.word.mnemonic.sse2.simd-integer.mov"},{"match":"(?i)\\\\b(p((add|sub|(s[lr]l|mulu|unpck[hl]q)d)q|shuf(d|[hl]w)))\\\\b","name":"keyword.operator.word.mnemonic.sse2.simd-integer.other"},{"match":"(?i)\\\\b([lm]fence|pause|maskmovdqu|movnt(dq|i|pd))\\\\b","name":"keyword.operator.word.mnemonic.sse2.cacheability-control"}]},"mnemonics-sse3":{"patterns":[{"match":"(?i)\\\\b(fisttp|lddqu|(addsub|h(add|sub))p[sd]|mov(sh|sl|d)dup|monitor|mwait)\\\\b","name":"keyword.operator.word.mnemonic.sse3"},{"match":"(?i)\\\\b(ph(add|sub)(s?w|d))\\\\b","name":"keyword.operator.word.mnemonic.sse3.supplimental.horizontal-packed-arithmetic"},{"match":"(?i)\\\\b(p((abs|sign)[bdw]|maddubsw|mulhrsw|shufb|alignr))\\\\b","name":"keyword.operator.word.mnemonic.sse3.supplimental.other"}]},"mnemonics-sse4":{"patterns":[{"match":"(?i)\\\\b(pmul(ld|dq)|dpp[ds])\\\\b","name":"keyword.operator.word.mnemonic.sse4.1.arithmetic"},{"match":"(?i)\\\\b(movntdqa)\\\\b","name":"keyword.operator.word.mnemonic.sse4.1.load-hint"},{"match":"(?i)\\\\b(blendv?p[ds]|pblend(vb|w))\\\\b","name":"keyword.operator.word.mnemonic.sse4.1.packed-blending"},{"match":"(?i)\\\\b(p(min|max)(u[dw]|s[bd]))\\\\b","name":"keyword.operator.word.mnemonic.sse4.1.packed-integer"},{"match":"(?i)\\\\b(round[ps][sd])\\\\b","name":"keyword.operator.word.mnemonic.sse4.1.packed-floating-point"},{"match":"(?i)\\\\b((extract|insert)ps|p((ins|ext)(r[bdq])))\\\\b","name":"keyword.operator.word.mnemonic.sse4.1.insertion-and-extraction"},{"match":"(?i)\\\\b(pmov([sz]x(b[dqw]|dq|wd|wq)))\\\\b","name":"keyword.operator.word.mnemonic.sse4.1.conversion"},{"match":"(?i)\\\\b(mpsadbw|phminposuw|ptest|pcmpeqq|packusdw)\\\\b","name":"keyword.operator.word.mnemonic.sse4.1.other"},{"match":"(?i)\\\\b(pcmp([ei]str[im]|gtq))\\\\b","name":"keyword.operator.word.mnemonic.sse4.2"}]},"mnemonics-supplemental-amd":{"patterns":[{"match":"(?i)\\\\b(bl([cs](fill|ic?|msk)|cs)|t1mskc|tzmsk)\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.general-purpose"},{"match":"(?i)\\\\b(clgi|int3|invlpga|iretw|skinit|stgi|vm(load|mcall|run|save)|monitorx|mwaitx)\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.system"},{"match":"(?i)\\\\b([ls]lwpcb|lwp(ins|val))\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.profiling"},{"match":"(?i)\\\\b(movnts[ds])\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.memory-management"},{"match":"(?i)\\\\b(prefetch|clzero)\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.cache-management"},{"match":"(?i)\\\\b((extr|insert)q)\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.sse4.a"},{"match":"(?i)\\\\b(vfn?m((add|sub)[ps][ds])|vfm((addsub|subadd)p[ds]))\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.fma4"},{"match":"(?i)\\\\b(vp(cmov|(comu?|rot|sh[al])[bdqw]|mac(s?s(d(d|q[hl])|w[dw]))|madcss?wd|perm))\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.xop.simd"},{"match":"(?i)\\\\b(vph(addu?(b[dqw]|w[dq]|dq)|sub(bw|dq|wd)))\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.xop.simd-horizontal"},{"match":"(?i)\\\\b(vfrcz[ps][ds]|vpermil2p[ds])\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.xop.other"},{"match":"(?i)\\\\b(femms)\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.3dnow"},{"match":"(?i)\\\\b(p(avgusb|(f2i|i2f)[dw]|mulhrw|swapd)|pf((p?n)?acc|add|max|min|mul|rcp(it[12])?|rsqit1|rsqrt|subr?))\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.3dnow.simd"},{"match":"(?i)\\\\b(pfcmp(eq|ge|gt))\\\\b","name":"keyword.operator.word.mnemonic.supplemental.amd.3dnow.comparison"}]},"mnemonics-supplemental-cyrix":{"patterns":[{"match":"(?i)\\\\b((sv|rs)dc|(wr|rd)shr|paddsiw)\\\\b","name":"keyword.operator.word.mnemonic.supplemental.cyrix"}]},"mnemonics-supplemental-via":{"patterns":[{"match":"(?i)\\\\b(montmul)\\\\b","name":"keyword.operator.word.mnemonic.supplemental.via"},{"match":"(?i)\\\\b(x(store(rng)?|crypt(ecb|cbc|ctr|cfb|ofb)|sha(1|256)))\\\\b","name":"keyword.operator.word.mnemonic.supplemental.via.padlock"}]},"mnemonics-system":{"patterns":[{"match":"(?i)\\\\b((cl|st)ac|[ls]([gli]dt|tr|msw)|clts|arpl|lar|lsl|ver[rw]|inv(d|lpg|pcid)|wbinvd)\\\\b","name":"keyword.operator.word.mnemonic.system"},{"match":"(?i)\\\\b(lock|hlt|rsm|(rd|wr)(msr|pkru|[fg]sbase)|rd(pmc|tscp?)|sys(enter|exit))\\\\b","name":"keyword.operator.word.mnemonic.system"},{"match":"(?i)\\\\b(x((save(c|opt|s)?|rstors?)(64)?|[gs]etbv))\\\\b","name":"keyword.operator.word.mnemonic.system"}]},"mnemonics-tsx":{"patterns":[{"match":"(?i)\\\\b(x(abort|begin|end|test|(res|sus)ldtrk))\\\\b","name":"keyword.operator.word.mnemonic.tsx"}]},"mnemonics-uirq":{"patterns":[{"match":"(?i)\\\\b((cl|st|test)ui|senduipi|uiret)\\\\b","name":"keyword.operator.word.mnemonic.uirq"}]},"mnemonics-undocumented":{"patterns":[{"match":"(?i)\\\\b(ret[nf]|icebp|int1|int03|smi|ud1)\\\\b","name":"keyword.operator.word.mnemonic.undocumented"}]},"mnemonics-vmx":{"patterns":[{"match":"(?i)\\\\b(vm(ptr(ld|st)|clear|read|write|launch|resume|xo(ff|n)|call|func)|inv(ept|vpid))\\\\b","name":"keyword.operator.word.mnemonic.vmx"}]},"preprocessor":{"patterns":[{"begin":"^\\\\s*[#%]\\\\s*(error|warning)\\\\b","captures":{"1":{"name":"keyword.control.import.error.c"}},"end":"$","name":"meta.preprocessor.diagnostic.c","patterns":[{"match":"(?>\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.c"}]},{"begin":"^\\\\s*[#%]\\\\s*(include|import)\\\\b\\\\s+","captures":{"1":{"name":"keyword.control.import.include.c"}},"end":"(?=(?://|/\\\\*))|$","name":"meta.preprocessor.c.include","patterns":[{"match":"(?>\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.c"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.c"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.c"}},"name":"string.quoted.double.include.c"},{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.c"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.c"}},"name":"string.quoted.other.lt-gt.include.c"}]},{"begin":"^\\\\s*[%#]\\\\s*(i?x?define|defined|elif(def)?|else|i[fs]n?(?:def|macro|ctx|idni?|id|num|str|token|empty|env)?|line|(i|end|uni?)?macro|pragma|endif)\\\\b","captures":{"1":{"name":"keyword.control.import.c"}},"end":"(?=(?://|/\\\\*))|$","name":"meta.preprocessor.c","patterns":[{"match":"(?>\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.c"},{"include":"#preprocessor-functions"}]},{"begin":"^\\\\s*[#%]\\\\s*(assign|strlen|substr|(end|exit)?rep|push|pop|rotate|use|ifusing|ifusable|def(?:ailas|str|tok)|undef(?:alias)?)\\\\b","captures":{"1":{"name":"keyword.control"}},"end":"$","name":"meta.preprocessor.nasm","patterns":[{"match":"(?>\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.c"},{"include":"#preprocessor-functions"}]}]},"preprocessor-functions":{"patterns":[{"begin":"((%)(?:(abs|cond|count|eval|isn?(?:def|macro|ctx|idni?|id|num|str|token|empty|env)?|num|sel|str(?:cat|len)?|substr|tok)\\\\s*(\\\\()))","captures":{"3":{"name":"support.function.preprocessor.asm.x86_64"}},"end":"(\\\\))|$","name":"meta.preprocessor.function.asm.x86_64","patterns":[{"include":"#preprocessor-functions"}]}]},"registers":{"patterns":[{"match":"(?i)\\\\b(?:[abcd][hl]|[er]?[abcd]x|[er]?(?:di|si|bp|sp)|dil|sil|bpl|spl|r(?:8|9|1[0-5])[bdlw]?)\\\\b","name":"constant.language.register.general-purpose.asm.x86_64"},{"match":"(?i)\\\\b(?:[cdefgs]s)\\\\b","name":"constant.language.register.segment.asm.x86_64"},{"match":"(?i)\\\\b(?:[er]?flags)\\\\b","name":"constant.language.register.flags.asm.x86_64"},{"match":"(?i)\\\\b(?:[er]?ip)\\\\b","name":"constant.language.register.instruction-pointer.asm.x86_64"},{"match":"(?i)\\\\b(?:cr[02-4])\\\\b","name":"constant.language.register.control.asm.x86_64"},{"match":"(?i)\\\\b(?:(?:mm|st|fpr)[0-7])\\\\b","name":"constant.language.register.mmx.asm.x86_64"},{"match":"(?i)\\\\b(?:[xy]mm(?:[0-9]|1[0-5])|mxcsr)\\\\b","name":"constant.language.register.sse_avx.asm.x86_64"},{"match":"(?i)\\\\b(?:zmm(?:[12]?[0-9]|30|31))\\\\b","name":"constant.language.register.avx512.asm.x86_64"},{"match":"(?i)\\\\b(?:bnd(?:[0-3]|cfg[su]|status))\\\\b","name":"constant.language.register.memory-protection.asm.x86_64"},{"match":"(?i)\\\\b(?:(?:[gil]dt)r?|tr)\\\\b","name":"constant.language.register.system-table-pointer.asm.x86_64"},{"match":"(?i)\\\\b(?:dr[0-367])\\\\b","name":"constant.language.register.debug.asm.x86_64"},{"match":"(?i)\\\\b(?:cr8|dr(?:[89]|1[0-5])|efer|tpr|syscfg)\\\\b","name":"constant.language.register.amd.asm.x86_64"},{"match":"(?i)\\\\b(?:db[0-367]|t[67]|tr[3-7]|st)\\\\b","name":"invalid.deprecated.constant.language.register.asm.x86_64"},{"match":"(?i)\\\\b[xy]mm(?:1[6-9]|2[0-9]|3[01])\\\\b","name":"constant.language.register.general-purpose.alias.asm.x86_64"}]},"strings":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.asm"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.asm"}},"name":"string.quoted.double.asm","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"}]},{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.asm"}},"end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.asm"}},"name":"string.quoted.single.asm","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"}]},{"begin":"`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.asm"}},"end":"`","endCaptures":{"0":{"name":"punctuation.definition.string.end.asm"}},"name":"string.quoted.backquote.asm","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"}]}]},"support":{"patterns":[{"match":"(?i)\\\\b(?:s?byte|(?:[doqtyz]|dq|s[dq]?)?word|(?:d|res)[bdoqtwyz]|ddq)\\\\b","name":"storage.type.asm.x86_64"},{"match":"(?i)\\\\b(?:incbin|equ|times|dup)\\\\b","name":"support.function.asm.x86_64"},{"match":"(?i)\\\\b(?:strict|nosplit|near|far|abs|rel)\\\\b","name":"storage.modifier.asm.x86_64"},{"match":"(?i)\\\\b(?:[ao](?:16|32|64))\\\\b","name":"storage.modifier.prefix.asm.x86_64"},{"match":"(?i)\\\\b(?:rep(?:n?[ez])?|lock|xacquire|xrelease|(?:no)?bnd)\\\\b","name":"storage.modifier.prefix.asm.x86_64"},{"captures":{"1":{"name":"storage.modifier.prefix.vex.asm.x86_64"}},"match":"{(vex[23]?|evex|rex)}"},{"captures":{"1":{"name":"storage.modifier.opmask.asm.x86_64"}},"match":"{(k[1-7])}"},{"captures":{"1":{"name":"storage.modifier.precision.asm.x86_64"}},"match":"{(1to(?:8|16))}"},{"captures":{"1":{"name":"storage.modifier.rounding.asm.x86_64"}},"match":"{(z|(?:r[nudz]-)?sae)}"},{"match":"\\\\.\\\\.(?:start|imagebase|tlvp|got(?:pc(?:rel)?|(?:tp)?off)?|plt|sym|tlsie)\\\\b","name":"support.constant.asm.x86_64"},{"match":"\\\\b__\\\\?(?:utf(?:(?:16|32)(?:[lb]e)?)|float(?:8|16|32|64|80[me]|128[lh])|bfloat16|Infinity|[QS]?NaN)\\\\?__\\\\b","name":"support.function.asm.x86_64"},{"match":"\\\\b__(?:utf(?:(?:16|32)(?:[lb]e)?)|float(?:8|16|32|64|80[me]|128[lh])|bfloat16|Infinity|[QS]?NaN)__\\\\b","name":"support.function.legacy.asm.x86_64"},{"match":"\\\\b__\\\\?NASM_(?:MAJOR|(?:SUB)?MINOR|SNAPSHOT|VER(?:SION_ID)?)\\\\?__\\\\b","name":"support.function.asm.x86_64"},{"match":"\\\\b___\\\\?NASM_PATCHLEVEL\\\\?__\\\\b","name":"support.function.asm.x86_64"},{"match":"\\\\b__\\\\?(?:FILE|LINE|BITS|OUTPUT_FORMAT|DEBUG_FORMAT)\\\\?__\\\\b","name":"support.function.asm.x86_64"},{"match":"\\\\b__\\\\?(?:(?:UTC_)?(?:DATE|TIME)(?:_NUM)?|POSIX_TIME)\\\\?__\\\\b","name":"support.function.asm.x86_64"},{"match":"\\\\b__\\\\?USE_(?:\\\\w+)\\\\?__\\\\b","name":"support.function.asm.x86_64"},{"match":"\\\\b__\\\\?PASS\\\\?__\\\\b","name":"invalid.deprecated.support.constant.altreg.asm.x86_64"},{"match":"\\\\b__\\\\?ALIGNMODE\\\\?__\\\\b","name":"support.constant.smartalign.asm.x86_64"},{"match":"\\\\b__\\\\?ALIGN_(\\\\w+)\\\\?__\\\\b","name":"support.function.smartalign.asm.x86_64"},{"match":"\\\\b__NASM_(?:MAJOR|(?:SUB)?MINOR|SNAPSHOT|VER(?:SION_ID)?)__\\\\b","name":"support.function.asm.x86_64"},{"match":"\\\\b___NASM_PATCHLEVEL__\\\\b","name":"support.function.asm.x86_64"},{"match":"\\\\b__(?:FILE|LINE|BITS|OUTPUT_FORMAT|DEBUG_FORMAT)__\\\\b","name":"support.function.asm.x86_64"},{"match":"\\\\b__(?:(?:UTC_)?(?:DATE|TIME)(?:_NUM)?|POSIX_TIME)__\\\\b","name":"support.function.asm.x86_64"},{"match":"\\\\b__USE_(?:\\\\w+)__\\\\b","name":"support.function.asm.x86_64"},{"match":"\\\\b__PASS__\\\\b","name":"invalid.deprecated.support.constant.altreg.asm.x86_64"},{"match":"\\\\b__ALIGNMODE__\\\\b","name":"support.constant.smartalign.asm.x86_64"},{"match":"\\\\b__ALIGN_(\\\\w+)__\\\\b","name":"support.function.smartalign.asm.x86_64"},{"match":"\\\\b(?:Inf|[QS]?NaN)\\\\b","name":"support.constant.fp.asm.x86_64"},{"match":"\\\\b(?:float(?:8|16|32|64|80[me]|128[lh]))\\\\b","name":"support.function.fp.asm.x86_64"},{"match":"(?i)\\\\bilog2(?:[ewfc]|[fc]w)?\\\\b","name":"support.function.ifunc.asm.x86_64"}]}},"scopeName":"source.asm.x86_64"}')),zee=[Gee]});var S8={};x(S8,{default:()=>Ge});var Uee,Ge,hn=_(()=>{Uee=Object.freeze(JSON.parse('{"displayName":"TypeScript","name":"typescript","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?]|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^yield|[^\\\\._$[:alnum:]]yield|^throw|[^\\\\._$[:alnum:]]throw|^in|[^\\\\._$[:alnum:]]in|^of|[^\\\\._$[:alnum:]]of|^typeof|[^\\\\._$[:alnum:]]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(?)","name":"meta.arrow.ts"},{"begin":"(?:(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"((?<=\\\\}|\\\\S)(?)|((?!\\\\{)(?=\\\\S)))(?!\\\\/[\\\\/\\\\*])","name":"meta.arrow.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.ts","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=[:])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?)","name":"cast.expr.ts"},{"begin":"(?:(?*?\\\\&\\\\|\\\\^]|[^_$[:alnum:]](?:\\\\+\\\\+|\\\\-\\\\-)|[^\\\\+]\\\\+|[^\\\\-]\\\\-))\\\\s*(<)(?!)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]},{"begin":"(?:(?<=^))\\\\s*(<)(?=[_$[:alpha:]][_$[:alnum:]]*\\\\s*>)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(\\\\>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]}]},"class-declaration":{"begin":"(?\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.ts","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.ts"},"2":{"name":"entity.name.tag.directive.ts"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.ts"}},"name":"meta.tag.ts","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"()|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.ts"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"begin":"((@)template)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.ts"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|\'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\'))|[^*\\\\\\\\])*?\'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([\'\'\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.ts"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.ts"},{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"keyword.operator.assignment.compound.ts"},"3":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$[:alnum:]])(\\\\!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"\\\\!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.ts"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.ts"},{"match":"\\\\=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.ts"},{"begin":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))","end":"(?:(/=)|(?:(/)(?!\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)))","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?:(/=)|(?:(/)(?![/*])))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"match":"\\\\#?[_$[:alpha:]][_$[:alnum:]]*","name":"meta.definition.property.ts variable.object.property.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"},{"match":"\\\\!","name":"keyword.operator.definiteassignment.ts"}]},"for-loop":{"begin":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","end":"(?<=\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.ts punctuation.accessor.optional.ts"},{"match":"\\\\!","name":"meta.function-call.ts keyword.operator.definiteassignment.ts"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.ts"}]},"function-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"},{"match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","name":"variable.other.constant.ts"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"if-statement":{"patterns":[{"begin":"(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|(===|!==|==|!=)|(([\\\\&\\\\~\\\\^\\\\|]\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"keyword.operator.new.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.property.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=((\\\\b(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\(|\\\\<)","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[\\\\(\\\\<]))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\\\\'\\\\\\"\\\\`])","end":"(?=:)|((?<=[\\\\\'\\\\\\"\\\\`])(?=((\\\\s*[\\\\(\\\\<,}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"}},"match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.ts"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=,|\\\\})","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|^|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=\\\\<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=\\\\>)\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?])","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(=,])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(=,]|=>|^return|[^\\\\._$[:alnum:]]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.ts meta.return.type.arrow.ts keyword.operator.type.annotation.ts"}},"contentName":"meta.arrow.ts meta.return.type.arrow.ts","end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[\\\\()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^\\\\)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([dgimsuvy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"begin":"((?"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))\\\\-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$)))"},{"captures":{"1":{"name":"support.type.object.module.ts"},"2":{"name":"support.type.object.module.ts"},"3":{"name":"punctuation.accessor.ts"},"4":{"name":"punctuation.accessor.optional.ts"},"5":{"name":"support.type.object.module.ts"}},"match":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#type-arguments"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*[^[:digit:]])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?])|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?])|(?=^\\\\s*$)|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.ts"}},"end":"(?)(?:\\\\?]|//|$)","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"(?)(?]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.ts"},"2":{"name":"entity.name.type.ts"},"3":{"name":"keyword.operator.expression.extends.ts"}},"match":"(?)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.ts"},"2":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"entity.name.type.ts"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"begin":"[&|]","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?=\\\\S)"},{"match":"(?)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#comment"},{"match":"(?)","name":"keyword.operator.assignment.ts"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?:&|{\\\\?]|(extends\\\\s+)|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts entity.name.function.ts"}},"end":"(?=$|^|[;,=}]|((?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts entity.name.function.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[;,=}]|((?\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|^|[,);}\\\\]]|((?KA});var Hee,KA,Dg=_(()=>{Hee=Object.freeze(JSON.parse(`{"displayName":"PostCSS","fileTypes":["pcss","postcss"],"foldingStartMarker":"/\\\\*|^#|^\\\\*|^\\\\b|^\\\\.","foldingStopMarker":"\\\\*/|^\\\\s*$","name":"postcss","patterns":[{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.postcss","patterns":[{"include":"#comment-tag"}]},{"include":"#double-slash"},{"include":"#double-quoted"},{"include":"#single-quoted"},{"include":"#interpolation"},{"include":"#placeholder-selector"},{"include":"#variable"},{"include":"#variable-root-css"},{"include":"#numeric"},{"include":"#unit"},{"include":"#flag"},{"include":"#dotdotdot"},{"begin":"@include","captures":{"0":{"name":"keyword.control.at-rule.css.postcss"}},"end":"(?=\\\\n|\\\\(|{|;)","name":"support.function.name.postcss.library"},{"begin":"@mixin|@function","captures":{"0":{"name":"keyword.control.at-rule.css.postcss"}},"end":"$\\\\n?|(?=\\\\(|{)","name":"support.function.name.postcss.no-completions","patterns":[{"match":"[\\\\w-]+","name":"entity.name.function"}]},{"match":"(?<=@import)\\\\s[\\\\w/.*-]+","name":"string.quoted.double.css.postcss"},{"begin":"@","end":"$\\\\n?|\\\\s(?!(all|braille|embossed|handheld|print|projection|screen|speech|tty|tv|if|only|not)(\\\\s|,))|(?=;)","name":"keyword.control.at-rule.css.postcss"},{"begin":"#","end":"$\\\\n?|(?=\\\\s|,|;|\\\\(|\\\\)|\\\\.|\\\\[|{|>)","name":"entity.other.attribute-name.id.css.postcss","patterns":[{"include":"#interpolation"},{"include":"#pseudo-class"}]},{"begin":"\\\\.|(?<=&)(-|_)","end":"$\\\\n?|(?=\\\\s|,|;|\\\\(|\\\\)|\\\\[|{|>)","name":"entity.other.attribute-name.class.css.postcss","patterns":[{"include":"#interpolation"},{"include":"#pseudo-class"}]},{"begin":"\\\\[","end":"\\\\]","name":"entity.other.attribute-selector.postcss","patterns":[{"include":"#double-quoted"},{"include":"#single-quoted"},{"match":"\\\\^|\\\\$|\\\\*|~","name":"keyword.other.regex.postcss"}]},{"match":"(?<=\\\\]|\\\\)|not\\\\(|\\\\*|>|>\\\\s):[a-z:-]+|(::|:-)[a-z:-]+","name":"entity.other.attribute-name.pseudo-class.css.postcss"},{"begin":":","end":"$\\\\n?|(?=;|\\\\s\\\\(|and\\\\(|{|}|\\\\),)","name":"meta.property-list.css.postcss","patterns":[{"include":"#double-slash"},{"include":"#double-quoted"},{"include":"#single-quoted"},{"include":"#interpolation"},{"include":"#variable"},{"include":"#rgb-value"},{"include":"#numeric"},{"include":"#unit"},{"include":"#flag"},{"include":"#function"},{"include":"#function-content"},{"include":"#function-content-var"},{"include":"#operator"},{"include":"#parent-selector"},{"include":"#property-value"}]},{"include":"#rgb-value"},{"include":"#function"},{"include":"#function-content"},{"begin":"(?|-|_)","name":"entity.name.tag.css.postcss.symbol","patterns":[{"include":"#interpolation"},{"include":"#pseudo-class"}]},{"include":"#operator"},{"match":"[a-z-]+((?=:|#{))","name":"support.type.property-name.css.postcss"},{"include":"#reserved-words"},{"include":"#property-value"}],"repository":{"comment-tag":{"begin":"{{","end":"}}","name":"comment.tags.postcss","patterns":[{"match":"[\\\\w-]+","name":"comment.tag.postcss"}]},"dotdotdot":{"match":"\\\\.{3}","name":"variable.other"},"double-quoted":{"begin":"\\"","end":"\\"","name":"string.quoted.double.css.postcss","patterns":[{"include":"#quoted-interpolation"}]},"double-slash":{"begin":"//","end":"$","name":"comment.line.postcss","patterns":[{"include":"#comment-tag"}]},"flag":{"match":"!(important|default|optional|global)","name":"keyword.other.important.css.postcss"},"function":{"match":"(?<=[\\\\s|\\\\(|,|:])(?!url|format|attr)[\\\\w-][\\\\w-]*(?=\\\\()","name":"support.function.name.postcss"},"function-content":{"match":"(?<=url\\\\(|format\\\\(|attr\\\\().+?(?=\\\\))","name":"string.quoted.double.css.postcss"},"function-content-var":{"match":"(?<=var\\\\()[\\\\w-]+(?=\\\\))","name":"variable.parameter.postcss"},"interpolation":{"begin":"#{","end":"}","name":"support.function.interpolation.postcss","patterns":[{"include":"#variable"},{"include":"#numeric"},{"include":"#operator"},{"include":"#unit"},{"include":"#double-quoted"},{"include":"#single-quoted"}]},"numeric":{"match":"(-|\\\\.)?[0-9]+(\\\\.[0-9]+)?","name":"constant.numeric.css.postcss"},"operator":{"match":"\\\\+|\\\\s-\\\\s|\\\\s-(?=\\\\$)|(?<=\\\\()-(?=\\\\$)|\\\\s-(?=\\\\()|\\\\*|/|%|=|!|<|>|~","name":"keyword.operator.postcss"},"parent-selector":{"match":"&","name":"entity.name.tag.css.postcss"},"placeholder-selector":{"begin":"(?Yee});var Zee,Yee,L8=_(()=>{zr();Qe();hn();rt();Dg();Zee=Object.freeze(JSON.parse(`{"displayName":"Astro","fileTypes":["astro"],"injections":{"L:(meta.script.astro) (meta.lang.js | meta.lang.javascript | meta.lang.partytown | meta.lang.node) - (meta source)":{"patterns":[{"begin":"(?<=>)(?!)(?!)(?!)(?!)(?!)(?!)(?!)(?!)(?!)(?!)(?!)","patterns":[{"include":"#interpolation"},{"include":"#attribute-literal"},{"begin":"(?=[^\\\\s=<>\`/]|/(?!>))","end":"(?!\\\\G)","name":"meta.embedded.line.js","patterns":[{"captures":{"0":{"name":"source.js"},"1":{"patterns":[{"include":"source.js"}]}},"match":"(([^\\\\s\\\\\\"'=<>\`/]|/(?!>))+)","name":"string.unquoted.astro"},{"begin":"([\\"])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.astro"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.astro"}},"name":"string.quoted.astro","patterns":[{"captures":{"0":{"patterns":[{"include":"source.js"}]}},"match":"([^\\\\n\\\\\\"/]|/(?![/*]))+"},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"(?=\\\\\\")|\\\\n","name":"comment.line.double-slash.js"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.js"}},"end":"(?=\\\\\\")|\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.js"}},"name":"comment.block.js"}]},{"begin":"(['])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.astro"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.astro"}},"name":"string.quoted.astro","patterns":[{"captures":{"0":{"patterns":[{"include":"source.js"}]}},"match":"([^\\\\n\\\\'/]|/(?![/*]))+"},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"(?=\\\\')|\\\\n","name":"comment.line.double-slash.js"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.js"}},"end":"(?=\\\\')|\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.js"}},"name":"comment.block.js"}]}]}]}]},"attributes-interpolated":{"begin":"(?)","patterns":[{"include":"#attributes-value"}]}]},"attributes-value":{"patterns":[{"include":"#interpolation"},{"match":"([^\\\\s\\"'=<>\`/]|/(?!>))+","name":"string.unquoted.astro"},{"begin":"(['\\"])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.astro"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.astro"}},"name":"string.quoted.astro"},{"include":"#attribute-literal"}]},"comments":{"begin":"","name":"comment.block.astro","patterns":[{"match":"\\\\G-?>|)|--!>","name":"invalid.illegal.characters-not-allowed-here.astro"}]},"entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.astro"},"912":{"name":"punctuation.definition.entity.astro"}},"match":"(&)(?=[a-zA-Z])((a(s(ymp(eq)?|cr|t)|n(d(slope|d|v|and)?|g(s(t|ph)|zarr|e|le|rt(vb(d)?)?|msd(a(h|c|d|e|f|a|g|b))?)?)|c(y|irc|d|ute|E)?|tilde|o(pf|gon)|uml|p(id|os|prox(eq)?|e|E|acir)?|elig|f(r)?|w(conint|int)|l(pha|e(ph|fsym))|acute|ring|grave|m(p|a(cr|lg))|breve)|A(s(sign|cr)|nd|MP|c(y|irc)|tilde|o(pf|gon)|uml|pplyFunction|fr|Elig|lpha|acute|ring|grave|macr|breve))|(B(scr|cy|opf|umpeq|e(cause|ta|rnoullis)|fr|a(ckslash|r(v|wed))|reve)|b(s(cr|im(e)?|ol(hsub|b)?|emi)|n(ot|e(quiv)?)|c(y|ong)|ig(s(tar|qcup)|c(irc|up|ap)|triangle(down|up)|o(times|dot|plus)|uplus|vee|wedge)|o(t(tom)?|pf|wtie|x(h(d|u|D|U)?|times|H(d|u|D|U)?|d(R|l|r|L)|u(R|l|r|L)|plus|D(R|l|r|L)|v(R|h|H|l|r|L)?|U(R|l|r|L)|V(R|h|H|l|r|L)?|minus|box))|Not|dquo|u(ll(et)?|mp(e(q)?|E)?)|prime|e(caus(e)?|t(h|ween|a)|psi|rnou|mptyv)|karow|fr|l(ock|k(1(2|4)|34)|a(nk|ck(square|triangle(down|left|right)?|lozenge)))|a(ck(sim(eq)?|cong|prime|epsilon)|r(vee|wed(ge)?))|r(eve|vbar)|brk(tbrk)?))|(c(s(cr|u(p(e)?|b(e)?))|h(cy|i|eck(mark)?)|ylcty|c(irc|ups(sm)?|edil|a(ps|ron))|tdot|ir(scir|c(eq|le(d(R|circ|S|dash|ast)|arrow(left|right)))?|e|fnint|E|mid)?|o(n(int|g(dot)?)|p(y(sr)?|f|rod)|lon(e(q)?)?|m(p(fn|le(xes|ment))?|ma(t)?))|dot|u(darr(l|r)|p(s|c(up|ap)|or|dot|brcap)?|e(sc|pr)|vee|wed|larr(p)?|r(vearrow(left|right)|ly(eq(succ|prec)|vee|wedge)|arr(m)?|ren))|e(nt(erdot)?|dil|mptyv)|fr|w(conint|int)|lubs(uit)?|a(cute|p(s|c(up|ap)|dot|and|brcup)?|r(on|et))|r(oss|arr))|C(scr|hi|c(irc|onint|edil|aron)|ircle(Minus|Times|Dot|Plus)|Hcy|o(n(tourIntegral|int|gruent)|unterClockwiseContourIntegral|p(f|roduct)|lon(e)?)|dot|up(Cap)?|OPY|e(nterDot|dilla)|fr|lo(seCurly(DoubleQuote|Quote)|ckwiseContourIntegral)|a(yleys|cute|p(italDifferentialD)?)|ross))|(d(s(c(y|r)|trok|ol)|har(l|r)|c(y|aron)|t(dot|ri(f)?)|i(sin|e|v(ide(ontimes)?|onx)?|am(s|ond(suit)?)?|gamma)|Har|z(cy|igrarr)|o(t(square|plus|eq(dot)?|minus)?|ublebarwedge|pf|wn(harpoon(left|right)|downarrows|arrow)|llar)|d(otseq|a(rr|gger))?|u(har|arr)|jcy|e(lta|g|mptyv)|f(isht|r)|wangle|lc(orn|rop)|a(sh(v)?|leth|rr|gger)|r(c(orn|rop)|bkarow)|b(karow|lac)|Arr)|D(s(cr|trok)|c(y|aron)|Scy|i(fferentialD|a(critical(Grave|Tilde|Do(t|ubleAcute)|Acute)|mond))|o(t(Dot|Equal)?|uble(Right(Tee|Arrow)|ContourIntegral|Do(t|wnArrow)|Up(DownArrow|Arrow)|VerticalBar|L(ong(RightArrow|Left(RightArrow|Arrow))|eft(RightArrow|Tee|Arrow)))|pf|wn(Right(TeeVector|Vector(Bar)?)|Breve|Tee(Arrow)?|arrow|Left(RightVector|TeeVector|Vector(Bar)?)|Arrow(Bar|UpArrow)?))|Zcy|el(ta)?|D(otrahd)?|Jcy|fr|a(shv|rr|gger)))|(e(s(cr|im|dot)|n(sp|g)|c(y|ir(c)?|olon|aron)|t(h|a)|o(pf|gon)|dot|u(ro|ml)|p(si(v|lon)?|lus|ar(sl)?)|e|D(ot|Dot)|q(s(im|lant(less|gtr))|c(irc|olon)|u(iv(DD)?|est|als)|vparsl)|f(Dot|r)|l(s(dot)?|inters|l)?|a(ster|cute)|r(Dot|arr)|g(s(dot)?|rave)?|x(cl|ist|p(onentiale|ectation))|m(sp(1(3|4))?|pty(set|v)?|acr))|E(s(cr|im)|c(y|irc|aron)|ta|o(pf|gon)|NG|dot|uml|TH|psilon|qu(ilibrium|al(Tilde)?)|fr|lement|acute|grave|x(ists|ponentialE)|m(pty(SmallSquare|VerySmallSquare)|acr)))|(f(scr|nof|cy|ilig|o(pf|r(k(v)?|all))|jlig|partint|emale|f(ilig|l(ig|lig)|r)|l(tns|lig|at)|allingdotseq|r(own|a(sl|c(1(2|8|3|4|5|6)|78|2(3|5)|3(8|4|5)|45|5(8|6)))))|F(scr|cy|illed(SmallSquare|VerySmallSquare)|o(uriertrf|pf|rAll)|fr))|(G(scr|c(y|irc|edil)|t|opf|dot|T|Jcy|fr|amma(d)?|reater(Greater|SlantEqual|Tilde|Equal(Less)?|FullEqual|Less)|g|breve)|g(s(cr|im(e|l)?)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|irc)|t(c(c|ir)|dot|quest|lPar|r(sim|dot|eq(qless|less)|less|a(pprox|rr)))?|imel|opf|dot|jcy|e(s(cc|dot(o(l)?)?|l(es)?)?|q(slant|q)?|l)?|v(nE|ertneqq)|fr|E(l)?|l(j|E|a)?|a(cute|p|mma(d)?)|rave|g(g)?|breve))|(h(s(cr|trok|lash)|y(phen|bull)|circ|o(ok(leftarrow|rightarrow)|pf|arr|rbar|mtht)|e(llip|arts(uit)?|rcon)|ks(earow|warow)|fr|a(irsp|lf|r(dcy|r(cir|w)?)|milt)|bar|Arr)|H(s(cr|trok)|circ|ilbertSpace|o(pf|rizontalLine)|ump(DownHump|Equal)|fr|a(cek|t)|ARDcy))|(i(s(cr|in(s(v)?|dot|v|E)?)|n(care|t(cal|prod|e(rcal|gers)|larhk)?|odot|fin(tie)?)?|c(y|irc)?|t(ilde)?|i(nfin|i(nt|int)|ota)?|o(cy|ta|pf|gon)|u(kcy|ml)|jlig|prod|e(cy|xcl)|quest|f(f|r)|acute|grave|m(of|ped|a(cr|th|g(part|e|line))))|I(scr|n(t(e(rsection|gral))?|visible(Comma|Times))|c(y|irc)|tilde|o(ta|pf|gon)|dot|u(kcy|ml)|Ocy|Jlig|fr|Ecy|acute|grave|m(plies|a(cr|ginaryI))?))|(j(s(cr|ercy)|c(y|irc)|opf|ukcy|fr|math)|J(s(cr|ercy)|c(y|irc)|opf|ukcy|fr))|(k(scr|hcy|c(y|edil)|opf|jcy|fr|appa(v)?|green)|K(scr|c(y|edil)|Hcy|opf|Jcy|fr|appa))|(l(s(h|cr|trok|im(e|g)?|q(uo(r)?|b)|aquo)|h(ar(d|u(l)?)|blk)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|ub|e(il|dil)|aron)|Barr|t(hree|c(c|ir)|imes|dot|quest|larr|r(i(e|f)?|Par))?|Har|o(ng(left(arrow|rightarrow)|rightarrow|mapsto)|times|z(enge|f)?|oparrow(left|right)|p(f|lus|ar)|w(ast|bar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|r(dhar|ushar))|ur(dshar|uhar)|jcy|par(lt)?|e(s(s(sim|dot|eq(qgtr|gtr)|approx|gtr)|cc|dot(o(r)?)?|g(es)?)?|q(slant|q)?|ft(harpoon(down|up)|threetimes|leftarrows|arrow(tail)?|right(squigarrow|harpoons|arrow(s)?))|g)?|v(nE|ertneqq)|f(isht|loor|r)|E(g)?|l(hard|corner|tri|arr)?|a(ng(d|le)?|cute|t(e(s)?|ail)?|p|emptyv|quo|rr(sim|hk|tl|pl|fs|lp|b(fs)?)?|gran|mbda)|r(har(d)?|corner|tri|arr|m)|g(E)?|m(idot|oust(ache)?)|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr))|L(s(h|cr|trok)|c(y|edil|aron)|t|o(ng(RightArrow|left(arrow|rightarrow)|rightarrow|Left(RightArrow|Arrow))|pf|wer(RightArrow|LeftArrow))|T|e(ss(Greater|SlantEqual|Tilde|EqualGreater|FullEqual|Less)|ft(Right(Vector|Arrow)|Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|rightarrow|Floor|A(ngleBracket|rrow(RightArrow|Bar)?)))|Jcy|fr|l(eftarrow)?|a(ng|cute|placetrf|rr|mbda)|midot))|(M(scr|cy|inusPlus|opf|u|e(diumSpace|llintrf)|fr|ap)|m(s(cr|tpos)|ho|nplus|c(y|omma)|i(nus(d(u)?|b)?|cro|d(cir|dot|ast)?)|o(dels|pf)|dash|u(ltimap|map)?|p|easuredangle|DDot|fr|l(cp|dr)|a(cr|p(sto(down|up|left)?)?|l(t(ese)?|e)|rker)))|(n(s(hort(parallel|mid)|c(cue|e|r)?|im(e(q)?)?|u(cc(eq)?|p(set(eq(q)?)?|e|E)?|b(set(eq(q)?)?|e|E)?)|par|qsu(pe|be)|mid)|Rightarrow|h(par|arr|Arr)|G(t(v)?|g)|c(y|ong(dot)?|up|edil|a(p|ron))|t(ilde|lg|riangle(left(eq)?|right(eq)?)|gl)|i(s(d)?|v)?|o(t(ni(v(c|a|b))?|in(dot|v(c|a|b)|E)?)?|pf)|dash|u(m(sp|ero)?)?|jcy|p(olint|ar(sl|t|allel)?|r(cue|e(c(eq)?)?)?)|e(s(im|ear)|dot|quiv|ar(hk|r(ow)?)|xist(s)?|Arr)?|v(sim|infin|Harr|dash|Dash|l(t(rie)?|e|Arr)|ap|r(trie|Arr)|g(t|e))|fr|w(near|ar(hk|r(ow)?)|Arr)|V(dash|Dash)|l(sim|t(ri(e)?)?|dr|e(s(s)?|q(slant|q)?|ft(arrow|rightarrow))?|E|arr|Arr)|a(ng|cute|tur(al(s)?)?|p(id|os|prox|E)?|bla)|r(tri(e)?|ightarrow|arr(c|w)?|Arr)|g(sim|t(r)?|e(s|q(slant|q)?)?|E)|mid|L(t(v)?|eft(arrow|rightarrow)|l)|b(sp|ump(e)?))|N(scr|c(y|edil|aron)|tilde|o(nBreakingSpace|Break|t(R(ightTriangle(Bar|Equal)?|everseElement)|Greater(Greater|SlantEqual|Tilde|Equal|FullEqual|Less)?|S(u(cceeds(SlantEqual|Tilde|Equal)?|perset(Equal)?|bset(Equal)?)|quareSu(perset(Equal)?|bset(Equal)?))|Hump(DownHump|Equal)|Nested(GreaterGreater|LessLess)|C(ongruent|upCap)|Tilde(Tilde|Equal|FullEqual)?|DoubleVerticalBar|Precedes(SlantEqual|Equal)?|E(qual(Tilde)?|lement|xists)|VerticalBar|Le(ss(Greater|SlantEqual|Tilde|Equal|Less)?|ftTriangle(Bar|Equal)?))?|pf)|u|e(sted(GreaterGreater|LessLess)|wLine|gative(MediumSpace|Thi(nSpace|ckSpace)|VeryThinSpace))|Jcy|fr|acute))|(o(s(cr|ol|lash)|h(m|bar)|c(y|ir(c)?)|ti(lde|mes(as)?)|S|int|opf|d(sold|iv|ot|ash|blac)|uml|p(erp|lus|ar)|elig|vbar|f(cir|r)|l(c(ir|ross)|t|ine|arr)|a(st|cute)|r(slope|igof|or|d(er(of)?|f|m)?|v|arr)?|g(t|on|rave)|m(i(nus|cron|d)|ega|acr))|O(s(cr|lash)|c(y|irc)|ti(lde|mes)|opf|dblac|uml|penCurly(DoubleQuote|Quote)|ver(B(ar|rac(e|ket))|Parenthesis)|fr|Elig|acute|r|grave|m(icron|ega|acr)))|(p(s(cr|i)|h(i(v)?|one|mmat)|cy|i(tchfork|v)?|o(intint|und|pf)|uncsp|er(cnt|tenk|iod|p|mil)|fr|l(us(sim|cir|two|d(o|u)|e|acir|mn|b)?|an(ck(h)?|kv))|ar(s(im|l)|t|a(llel)?)?|r(sim|n(sim|E|ap)|cue|ime(s)?|o(d|p(to)?|f(surf|line|alar))|urel|e(c(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?)?|E|ap)?|m)|P(s(cr|i)|hi|cy|i|o(incareplane|pf)|fr|lusMinus|artialD|r(ime|o(duct|portion(al)?)|ecedes(SlantEqual|Tilde|Equal)?)?))|(q(scr|int|opf|u(ot|est(eq)?|at(int|ernions))|prime|fr)|Q(scr|opf|UOT|fr))|(R(s(h|cr)|ho|c(y|edil|aron)|Barr|ight(Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|Floor|A(ngleBracket|rrow(Bar|LeftArrow)?))|o(undImplies|pf)|uleDelayed|e(verse(UpEquilibrium|E(quilibrium|lement)))?|fr|EG|a(ng|cute|rr(tl)?)|rightarrow)|r(s(h|cr|q(uo(r)?|b)|aquo)|h(o(v)?|ar(d|u(l)?))|nmid|c(y|ub|e(il|dil)|aron)|Barr|t(hree|imes|ri(e|f|ltri)?)|i(singdotseq|ng|ght(squigarrow|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(tail)?|rightarrows))|Har|o(times|p(f|lus|ar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|ldhar)|uluhar|p(polint|ar(gt)?)|e(ct|al(s|ine|part)?|g)|f(isht|loor|r)|l(har|arr|m)|a(ng(d|e|le)?|c(ute|e)|t(io(nals)?|ail)|dic|emptyv|quo|rr(sim|hk|c|tl|pl|fs|w|lp|ap|b(fs)?)?)|rarr|x|moust(ache)?|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr)))|(s(s(cr|tarf|etmn|mile)|h(y|c(hcy|y)|ort(parallel|mid)|arp)|c(sim|y|n(sim|E|ap)|cue|irc|polint|e(dil)?|E|a(p|ron))?|t(ar(f)?|r(ns|aight(phi|epsilon)))|i(gma(v|f)?|m(ne|dot|plus|e(q)?|l(E)?|rarr|g(E)?)?)|zlig|o(pf|ftcy|l(b(ar)?)?)|dot(e|b)?|u(ng|cc(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?|p(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|hs(ol|ub)|1|n(e|E)|2|d(sub|ot)|3|plus|e(dot)?|E|larr|mult)?|m|b(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|n(e|E)|dot|plus|e(dot)?|E|rarr|mult)?)|pa(des(uit)?|r)|e(swar|ct|tm(n|inus)|ar(hk|r(ow)?)|xt|mi|Arr)|q(su(p(set(eq)?|e)?|b(set(eq)?|e)?)|c(up(s)?|ap(s)?)|u(f|ar(e|f))?)|fr(own)?|w(nwar|ar(hk|r(ow)?)|Arr)|larr|acute|rarr|m(t(e(s)?)?|i(d|le)|eparsl|a(shp|llsetminus))|bquo)|S(scr|hort(RightArrow|DownArrow|UpArrow|LeftArrow)|c(y|irc|edil|aron)?|tar|igma|H(cy|CHcy)|opf|u(c(hThat|ceeds(SlantEqual|Tilde|Equal)?)|p(set|erset(Equal)?)?|m|b(set(Equal)?)?)|OFTcy|q(uare(Su(perset(Equal)?|bset(Equal)?)|Intersection|Union)?|rt)|fr|acute|mallCircle))|(t(s(hcy|c(y|r)|trok)|h(i(nsp|ck(sim|approx))|orn|e(ta(sym|v)?|re(4|fore))|k(sim|ap))|c(y|edil|aron)|i(nt|lde|mes(d|b(ar)?)?)|o(sa|p(cir|f(ork)?|bot)?|ea)|dot|prime|elrec|fr|w(ixt|ohead(leftarrow|rightarrow))|a(u|rget)|r(i(sb|time|dot|plus|e|angle(down|q|left(eq)?|right(eq)?)?|minus)|pezium|ade)|brk)|T(s(cr|trok)|RADE|h(i(nSpace|ckSpace)|e(ta|refore))|c(y|edil|aron)|S(cy|Hcy)|ilde(Tilde|Equal|FullEqual)?|HORN|opf|fr|a(u|b)|ripleDot))|(u(scr|h(ar(l|r)|blk)|c(y|irc)|t(ilde|dot|ri(f)?)|Har|o(pf|gon)|d(har|arr|blac)|u(arr|ml)|p(si(h|lon)?|harpoon(left|right)|downarrow|uparrows|lus|arrow)|f(isht|r)|wangle|l(c(orn(er)?|rop)|tri)|a(cute|rr)|r(c(orn(er)?|rop)|tri|ing)|grave|m(l|acr)|br(cy|eve)|Arr)|U(scr|n(ion(Plus)?|der(B(ar|rac(e|ket))|Parenthesis))|c(y|irc)|tilde|o(pf|gon)|dblac|uml|p(si(lon)?|downarrow|Tee(Arrow)?|per(RightArrow|LeftArrow)|DownArrow|Equilibrium|arrow|Arrow(Bar|DownArrow)?)|fr|a(cute|rr(ocir)?)|ring|grave|macr|br(cy|eve)))|(v(s(cr|u(pn(e|E)|bn(e|E)))|nsu(p|b)|cy|Bar(v)?|zigzag|opf|dash|prop|e(e(eq|bar)?|llip|r(t|bar))|Dash|fr|ltri|a(ngrt|r(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|t(heta|riangle(left|right))|p(hi|i|ropto)|epsilon|kappa|r(ho)?))|rtri|Arr)|V(scr|cy|opf|dash(l)?|e(e|r(yThinSpace|t(ical(Bar|Separator|Tilde|Line))?|bar))|Dash|vdash|fr|bar))|(w(scr|circ|opf|p|e(ierp|d(ge(q)?|bar))|fr|r(eath)?)|W(scr|circ|opf|edge|fr))|(X(scr|i|opf|fr)|x(s(cr|qcup)|h(arr|Arr)|nis|c(irc|up|ap)|i|o(time|dot|p(f|lus))|dtri|u(tri|plus)|vee|fr|wedge|l(arr|Arr)|r(arr|Arr)|map))|(y(scr|c(y|irc)|icy|opf|u(cy|ml)|en|fr|ac(y|ute))|Y(scr|c(y|irc)|opf|uml|Icy|Ucy|fr|acute|Acy))|(z(scr|hcy|c(y|aron)|igrarr|opf|dot|e(ta|etrf)|fr|w(nj|j)|acute)|Z(scr|c(y|aron)|Hcy|opf|dot|e(ta|roWidthSpace)|fr|acute)))(;)","name":"constant.character.entity.named.$2.astro"},{"captures":{"1":{"name":"punctuation.definition.entity.astro"},"3":{"name":"punctuation.definition.entity.astro"}},"match":"(&)#[0-9]+(;)","name":"constant.character.entity.numeric.decimal.astro"},{"captures":{"1":{"name":"punctuation.definition.entity.astro"},"3":{"name":"punctuation.definition.entity.astro"}},"match":"(&)#[xX][0-9a-fA-F]+(;)","name":"constant.character.entity.numeric.hexadecimal.astro"},{"match":"&(?=[a-zA-Z0-9]+;)","name":"invalid.illegal.ambiguous-ampersand.astro"}]},"frontmatter":{"begin":"\\\\A(-{3})\\\\s*$","beginCaptures":{"1":{"name":"comment"}},"contentName":"source.ts","end":"(^|\\\\G)(-{3})|\\\\.{3}\\\\s*$","endCaptures":{"2":{"name":"comment"}},"patterns":[{"include":"source.ts"}]},"interpolation":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.astro"}},"contentName":"meta.embedded.expression.astro source.tsx","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.astro"}},"patterns":[{"begin":"\\\\G\\\\s*(?={)","end":"(?<=})","patterns":[{"include":"source.tsx#object-literal"}]},{"include":"source.tsx"}]}]},"scope":{"patterns":[{"include":"#comments"},{"include":"#tags"},{"include":"#interpolation"},{"include":"#entities"}]},"tags":{"patterns":[{"include":"#tags-raw"},{"include":"#tags-lang"},{"include":"#tags-void"},{"include":"#tags-general-end"},{"include":"#tags-general-start"}]},"tags-end-node":{"captures":{"1":{"name":"meta.tag.end.astro punctuation.definition.tag.begin.astro"},"2":{"name":"meta.tag.end.astro","patterns":[{"include":"#tags-name"}]},"3":{"name":"meta.tag.end.astro punctuation.definition.tag.end.astro"},"4":{"name":"meta.tag.start.astro punctuation.definition.tag.end.astro"}},"match":"()|(/>)"},"tags-general-end":{"begin":"(]*)","beginCaptures":{"1":{"name":"meta.tag.end.astro punctuation.definition.tag.begin.astro"},"2":{"name":"meta.tag.end.astro","patterns":[{"include":"#tags-name"}]}},"end":"(>)","endCaptures":{"1":{"name":"meta.tag.end.astro punctuation.definition.tag.end.astro"}},"name":"meta.scope.tag.$2.astro"},"tags-general-start":{"begin":"(<)([^/\\\\s>/]*)","beginCaptures":{"0":{"patterns":[{"include":"#tags-start-node"}]}},"end":"(/?>)","endCaptures":{"1":{"name":"meta.tag.start.astro punctuation.definition.tag.end.astro"}},"name":"meta.scope.tag.$2.astro","patterns":[{"include":"#tags-start-attributes"}]},"tags-lang":{"begin":"<(script|style)","beginCaptures":{"0":{"patterns":[{"include":"#tags-start-node"}]}},"end":"|/>","endCaptures":{"0":{"patterns":[{"include":"#tags-end-node"}]}},"name":"meta.scope.tag.$1.astro meta.$1.astro","patterns":[{"begin":"\\\\G(?=\\\\s*[^>]*?(type|lang)\\\\s*=\\\\s*(['\\"]|)(?:text\\\\/)?(application\\\\/ld\\\\+json)\\\\2)","end":"(?=)","name":"meta.lang.json.astro","patterns":[{"include":"#tags-lang-start-attributes"}]},{"begin":"\\\\G(?=\\\\s*[^>]*?(type|lang)\\\\s*=\\\\s*(['\\"]|)(module)\\\\2)","end":"(?=)","name":"meta.lang.javascript.astro","patterns":[{"include":"#tags-lang-start-attributes"}]},{"begin":"\\\\G(?=\\\\s*[^>]*?(type|lang)\\\\s*=\\\\s*(['\\"]|)(?:text/|application/)?([\\\\w\\\\/+]+)\\\\2)","end":"(?=)","name":"meta.lang.$3.astro","patterns":[{"include":"#tags-lang-start-attributes"}]},{"include":"#tags-lang-start-attributes"}]},"tags-lang-start-attributes":{"begin":"\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.astro"}},"name":"meta.tag.start.astro","patterns":[{"include":"#attributes"}]},"tags-name":{"patterns":[{"match":"[A-Z][a-zA-Z0-9_]*","name":"support.class.component.astro"},{"match":"[a-z][\\\\w0-9:]*-[\\\\w0-9:-]*","name":"meta.tag.custom.astro entity.name.tag.astro"},{"match":"[a-z][\\\\w0-9:-]*","name":"entity.name.tag.astro"}]},"tags-raw":{"begin":"<([^/?!\\\\s<>]+)(?=[^>]+is:raw).*?","beginCaptures":{"0":{"patterns":[{"include":"#tags-start-node"}]}},"contentName":"source.unknown","end":"|/>","endCaptures":{"0":{"patterns":[{"include":"#tags-end-node"}]}},"name":"meta.scope.tag.$1.astro meta.raw.astro","patterns":[{"include":"#tags-lang-start-attributes"}]},"tags-start-attributes":{"begin":"\\\\G","end":"(?=/?>)","name":"meta.tag.start.astro","patterns":[{"include":"#attributes"}]},"tags-start-node":{"captures":{"1":{"name":"punctuation.definition.tag.begin.astro"},"2":{"patterns":[{"include":"#tags-name"}]}},"match":"(<)([^/\\\\s>/]*)","name":"meta.tag.start.astro"},"tags-void":{"begin":"(<)(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.astro"},"2":{"name":"entity.name.tag.astro"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.begin.astro"}},"name":"meta.tag.void.astro","patterns":[{"include":"#attributes"}]},"text":{"patterns":[{"begin":"(?<=^|---|>|})","end":"(?=<|{|$)","name":"text.astro","patterns":[{"include":"#entities"}]}]}},"scopeName":"source.astro","embeddedLangs":["json","javascript","typescript","css","postcss"],"embeddedLangsLazy":["stylus","sass","scss","less","tsx"]}`)),Yee=[...bn,...J,...Ge,...ue,...KA,Zee]});var $8={};x($8,{default:()=>Kee});var Wee,Kee,R8=_(()=>{Wee=Object.freeze(JSON.parse('{"displayName":"AWK","fileTypes":["awk"],"name":"awk","patterns":[{"include":"#comment"},{"include":"#procedure"},{"include":"#pattern"}],"repository":{"builtin-pattern":{"match":"\\\\b(BEGINFILE|BEGIN|ENDFILE|END)\\\\b","name":"constant.language.awk"},"command":{"patterns":[{"match":"\\\\b(?:next|print|printf)\\\\b","name":"keyword.other.command.awk"},{"match":"\\\\b(?:close|getline|delete|system)\\\\b","name":"keyword.other.command.nawk"},{"match":"\\\\b(?:fflush|nextfile)\\\\b","name":"keyword.other.command.bell-awk"}]},"comment":{"match":"#.*","name":"comment.line.number-sign.awk"},"constant":{"patterns":[{"include":"#numeric-constant"},{"include":"#string-constant"}]},"escaped-char":{"match":"\\\\\\\\(?:[\\\\\\\\abfnrtv/\\"]|x[0-9A-Fa-f]{2}|[0-7]{3})","name":"constant.character.escape.awk"},"expression":{"patterns":[{"include":"#command"},{"include":"#function"},{"include":"#constant"},{"include":"#variable"},{"include":"#regexp-in-expression"},{"include":"#operator"},{"include":"#groupings"}]},"function":{"patterns":[{"match":"\\\\b(?:exp|int|log|sqrt|index|length|split|sprintf|substr)\\\\b","name":"support.function.awk"},{"match":"\\\\b(?:atan2|cos|rand|sin|srand|gsub|match|sub|tolower|toupper)\\\\b","name":"support.function.nawk"},{"match":"\\\\b(?:gensub|strftime|systime)\\\\b","name":"support.function.gawk"}]},"function-definition":{"begin":"\\\\b(function)\\\\s+(\\\\w+)(\\\\()","beginCaptures":{"1":{"name":"storage.type.function.awk"},"2":{"name":"entity.name.function.awk"},"3":{"name":"punctuation.definition.parameters.begin.awk"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.awk"}},"patterns":[{"match":"\\\\b(\\\\w+)\\\\b","name":"variable.parameter.function.awk"},{"match":"\\\\b(,)\\\\b","name":"punctuation.separator.parameters.awk"}]},"groupings":{"patterns":[{"match":"\\\\(","name":"meta.brace.round.awk"},{"match":"\\\\)","name":"meta.brace.round.awk"},{"match":"\\\\,","name":"punctuation.separator.parameters.awk"}]},"keyword":{"match":"\\\\b(?:break|continue|do|while|exit|for|if|else|return)\\\\b","name":"keyword.control.awk"},"numeric-constant":{"match":"\\\\b[0-9]+(?:\\\\.[0-9]+)?(?:e[+-][0-9]+)?\\\\b","name":"constant.numeric.awk"},"operator":{"patterns":[{"match":"(!?~|[=<>!]=|[<>])","name":"keyword.operator.comparison.awk"},{"match":"\\\\b(in)\\\\b","name":"keyword.operator.comparison.awk"},{"match":"([+\\\\-*/%^]=|\\\\+\\\\+|--|>>|=)","name":"keyword.operator.assignment.awk"},{"match":"(\\\\|\\\\||&&|!)","name":"keyword.operator.boolean.awk"},{"match":"([+\\\\-*/%^])","name":"keyword.operator.arithmetic.awk"},{"match":"([?:])","name":"keyword.operator.trinary.awk"},{"match":"(\\\\[|\\\\])","name":"keyword.operator.index.awk"}]},"pattern":{"patterns":[{"include":"#regexp-as-pattern"},{"include":"#function-definition"},{"include":"#builtin-pattern"},{"include":"#expression"}]},"procedure":{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#comment"},{"include":"#procedure"},{"include":"#keyword"},{"include":"#expression"}]},"regex-as-assignment":{"begin":"([^=<>!+\\\\-*/%^]=)\\\\s*(/)","beginCaptures":{"1":{"name":"keyword.operator.assignment.awk"},"2":{"name":"punctuation.definition.regex.begin.awk"}},"contentName":"string.regexp","end":"/","endCaptures":{"0":{"name":"punctuation.definition.regex.end.awk"}},"patterns":[{"include":"source.regexp"}]},"regex-as-comparison":{"begin":"(!?~)\\\\s*(/)","beginCaptures":{"1":{"name":"keyword.operator.comparison.awk"},"2":{"name":"punctuation.definition.regex.begin.awk"}},"contentName":"string.regexp","end":"/","endCaptures":{"0":{"name":"punctuation.definition.regex.end.awk"}},"patterns":[{"include":"source.regexp"}]},"regex-as-first-argument":{"begin":"(\\\\()\\\\s*(/)","beginCaptures":{"1":{"name":"meta.brace.round.awk"},"2":{"name":"punctuation.definition.regex.begin.awk"}},"contentName":"string.regexp","end":"/","endCaptures":{"0":{"name":"punctuation.definition.regex.end.awk"}},"patterns":[{"include":"source.regexp"}]},"regex-as-nth-argument":{"begin":"(,)\\\\s*(/)","beginCaptures":{"1":{"name":"punctuation.separator.parameters.awk"},"2":{"name":"punctuation.definition.regex.begin.awk"}},"contentName":"string.regexp","end":"/","endCaptures":{"0":{"name":"punctuation.definition.regex.end.awk"}},"patterns":[{"include":"source.regexp"}]},"regexp-as-pattern":{"begin":"/","beginCaptures":{"0":{"name":"punctuation.definition.regex.begin.awk"}},"contentName":"string.regexp","end":"/","endCaptures":{"0":{"name":"punctuation.definition.regex.end.awk"}},"patterns":[{"include":"source.regexp"}]},"regexp-in-expression":{"patterns":[{"include":"#regex-as-assignment"},{"include":"#regex-as-comparison"},{"include":"#regex-as-first-argument"},{"include":"#regex-as-nth-argument"}]},"string-constant":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.awk"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.awk"}},"name":"string.quoted.double.awk","patterns":[{"include":"#escaped-char"}]},"variable":{"patterns":[{"match":"\\\\$[0-9]+","name":"variable.language.awk"},{"match":"\\\\b(?:FILENAME|FS|NF|NR|OFMT|OFS|ORS|RS)\\\\b","name":"variable.language.awk"},{"match":"\\\\b(?:ARGC|ARGV|CONVFMT|ENVIRON|FNR|RLENGTH|RSTART|SUBSEP)\\\\b","name":"variable.language.nawk"},{"match":"\\\\b(?:ARGIND|ERRNO|FIELDWIDTHS|IGNORECASE|RT)\\\\b","name":"variable.language.gawk"}]}},"scopeName":"source.awk"}')),Kee=[Wee]});var j8={};x(j8,{default:()=>Vee});var Jee,Vee,P8=_(()=>{Jee=Object.freeze(JSON.parse('{"displayName":"Ballerina","fileTypes":["bal"],"name":"ballerina","patterns":[{"include":"#statements"}],"repository":{"access-modifier":{"patterns":[{"match":"(?","beginCaptures":{"0":{"name":"meta.arrow.ballerina storage.type.function.arrow.ballerina"}},"end":",|(?=\\\\})","patterns":[{"include":"#code"}]}]},"butExp":{"patterns":[{"begin":"\\\\bbut\\\\b","beginCaptures":{"0":{"name":"keyword.ballerina"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ballerina.documentation"}},"patterns":[{"include":"#butExpBody"},{"include":"#comment"}]}]},"butExpBody":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ballerina.documentation"}},"end":"(?=\\\\})","endCaptures":{"0":{"name":"punctuation.definition.block.ballerina.documentation"}},"patterns":[{"include":"#parameter"},{"include":"#butClause"},{"include":"#comment"}]}]},"call":{"patterns":[{"match":"(?:\\\\\')?([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=\\\\()","name":"entity.name.function.ballerina"}]},"callableUnitBody":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ballerina"}},"end":"(?=\\\\})","endCaptures":{"0":{"name":"punctuation.definition.block.ballerina"}},"patterns":[{"include":"#workerDef"},{"include":"#service-decl"},{"include":"#objectDec"},{"include":"#function-defn"},{"include":"#forkStatement"},{"include":"#code"}]}]},"class-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ballerina"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ballerina"}},"name":"meta.class.body.ballerina","patterns":[{"include":"#comment"},{"include":"#mdDocumentation"},{"include":"#function-defn"},{"include":"#var-expr"},{"include":"#variable-initializer"},{"include":"#access-modifier"},{"include":"#keywords"},{"begin":"(?<=:)\\\\s*","end":"(?=\\\\s|[;),}\\\\]:\\\\-\\\\+]|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|class|const|declare|enum|export|function|import|interface|let|module|namespace|return|service|type|var)\\\\b))"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"}]},"class-defn":{"begin":"(\\\\s+)(class\\\\b)|^class\\\\b(?=\\\\s+|/[/*])","beginCaptures":{"0":{"name":"storage.type.class.ballerina keyword.other.ballerina"}},"end":"(?<=\\\\})","name":"meta.class.ballerina","patterns":[{"include":"#keywords"},{"captures":{"0":{"name":"entity.name.type.class.ballerina"}},"match":"[_$[:alpha:]][_$[:alnum:]]*"},{"include":"#class-body"}]},"code":{"patterns":[{"include":"#booleans"},{"include":"#matchStatement"},{"include":"#butExp"},{"include":"#xml"},{"include":"#stringTemplate"},{"include":"#keywords"},{"include":"#strings"},{"include":"#comment"},{"include":"#mdDocumentation"},{"include":"#annotationAttachment"},{"include":"#numbers"},{"include":"#maps"},{"include":"#paranthesised"},{"include":"#paranthesisedBracket"},{"include":"#regex"}]},"comment":{"patterns":[{"match":"\\\\/\\\\/.*","name":"comment.ballerina"}]},"constrainType":{"patterns":[{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ballerina"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ballerina"}},"patterns":[{"include":"#comment"},{"include":"#constrainType"},{"match":"\\\\b([_$[:alpha:]][_$[:alnum:]]*)\\\\b","name":"storage.type.ballerina"}]}]},"control-statement":{"patterns":[{"begin":"(?)","patterns":[{"include":"#code"}]}]},"expression":{"patterns":[{"include":"#keywords"},{"include":"#expressionWithoutIdentifiers"},{"include":"#identifiers"},{"include":"#regex"}]},"expression-operators":{"patterns":[{"match":"\\\\*=|(?>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.ballerina"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.ballerina"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.ballerina"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.ballerina"},{"captures":{"1":{"name":"keyword.operator.logical.ballerina"},"2":{"name":"keyword.operator.assignment.compound.ballerina"},"3":{"name":"keyword.operator.arithmetic.ballerina"}},"match":"(?<=[_$[:alnum:]])(\\\\!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"\\\\!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.ballerina"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.ballerina"},{"match":"\\\\=","name":"keyword.operator.assignment.ballerina"},{"match":"--","name":"keyword.operator.decrement.ballerina"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ballerina"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.ballerina"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#xml"},{"include":"#string"},{"include":"#stringTemplate"},{"include":"#comment"},{"include":"#object-literal"},{"include":"#ternary-expression"},{"include":"#expression-operators"},{"include":"#literal"},{"include":"#paranthesised"},{"include":"#regex"}]},"flags-on-off":{"name":"meta.flags.regexp.ballerina","patterns":[{"begin":"(\\\\??)([imsx]*)(-?)([imsx]*)(:)","beginCaptures":{"1":{"name":"punctuation.other.non-capturing-group-begin.regexp.ballerina"},"2":{"name":"keyword.other.non-capturing-group.flags-on.regexp.ballerina"},"3":{"name":"punctuation.other.non-capturing-group.off.regexp.ballerina"},"4":{"name":"keyword.other.non-capturing-group.flags-off.regexp.ballerina"},"5":{"name":"punctuation.other.non-capturing-group-end.regexp.ballerina"}},"end":"()","name":"constant.other.flag.regexp.ballerina","patterns":[{"include":"#regexp"},{"include":"#template-substitution-element"}]}]},"for-loop":{"begin":"(?","beginCaptures":{"0":{"name":"meta.arrow.ballerina storage.type.function.arrow.ballerina"}},"end":"(?=\\\\;)|(?=\\\\,)|(?=)(?=\\\\);)","name":"meta.block.ballerina","patterns":[{"include":"#statements"},{"include":"#punctuation-comma"}]},{"match":"\\\\*","name":"keyword.generator.asterisk.ballerina"}]},"function-defn":{"begin":"(?:(public|private)\\\\s+)?(function\\\\b)","beginCaptures":{"1":{"name":"keyword.other.ballerina"},"2":{"name":"keyword.other.ballerina"}},"end":"(?<=\\\\;)|(?<=\\\\})|(?<=\\\\,)|(?=)(?=\\\\);)","name":"meta.function.ballerina","patterns":[{"match":"\\\\bexternal\\\\b","name":"keyword.ballerina"},{"include":"#stringTemplate"},{"include":"#annotationAttachment"},{"include":"#functionReturns"},{"include":"#functionName"},{"include":"#functionParameters"},{"include":"#punctuation-semicolon"},{"include":"#function-body"},{"include":"#regex"}]},"function-parameters-body":{"patterns":[{"include":"#comment"},{"include":"#numbers"},{"include":"#string"},{"include":"#annotationAttachment"},{"include":"#recordLiteral"},{"include":"#keywords"},{"include":"#parameter-name"},{"include":"#array-literal"},{"include":"#variable-initializer"},{"include":"#identifiers"},{"include":"#regex"},{"match":"\\\\,","name":"punctuation.separator.parameter.ballerina"}]},"functionName":{"patterns":[{"match":"\\\\bfunction\\\\b","name":"keyword.other.ballerina"},{"include":"#type-primitive"},{"include":"#self-literal"},{"include":"#string"},{"captures":{"2":{"name":"variable.language.this.ballerina"},"3":{"name":"keyword.other.ballerina"},"4":{"name":"support.type.primitive.ballerina"},"5":{"name":"storage.type.ballerina"},"6":{"name":"meta.definition.function.ballerina entity.name.function.ballerina"}},"match":"\\\\s+(\\\\b(self)|\\\\b(is|new|isolated|null|function|in)\\\\b|(string|int|boolean|float|byte|decimal|json|xml|anydata)\\\\b|\\\\b(readonly|error|map)\\\\b|([_$[:alpha:]][_$[:alnum:]]*))"}]},"functionParameters":{"begin":"\\\\(|\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ballerina"}},"end":"\\\\)|\\\\]","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ballerina"}},"name":"meta.parameters.ballerina","patterns":[{"include":"#function-parameters-body"}]},"functionReturns":{"begin":"\\\\s*(returns)\\\\s*","beginCaptures":{"1":{"name":"keyword.other.ballerina"}},"end":"(?==>)|(\\\\=)|(?=\\\\{)|(\\\\))|(?=\\\\;)","endCaptures":{"1":{"name":"keyword.operator.ballerina"}},"name":"meta.type.function.return.ballerina","patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numbers"},{"include":"#keywords"},{"include":"#type-primitive"},{"captures":{"1":{"name":"support.type.primitive.ballerina"}},"match":"\\\\s*\\\\b(var)(?=\\\\s+|\\\\[|\\\\?)"},{"match":"\\\\|","name":"keyword.operator.ballerina"},{"match":"\\\\?","name":"keyword.operator.optional.ballerina"},{"include":"#type-annotation"},{"include":"#type-tuple"},{"include":"#keywords"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"variable.other.readwrite.ballerina"}]},"functionType":{"patterns":[{"begin":"\\\\bfunction\\\\b","beginCaptures":{"0":{"name":"keyword.ballerina"}},"end":"(?=\\\\,)|(?=\\\\|)|(?=\\\\:)|(?==>)|(?=\\\\))|(?=\\\\])","patterns":[{"include":"#comment"},{"include":"#functionTypeParamList"},{"include":"#functionTypeReturns"}]}]},"functionTypeParamList":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"delimiter.parenthesis"}},"end":"\\\\)","endCaptures":{"0":{"name":"delimiter.parenthesis"}},"patterns":[{"match":"public","name":"keyword"},{"include":"#annotationAttachment"},{"include":"#recordLiteral"},{"include":"#record"},{"include":"#objectDec"},{"include":"#functionType"},{"include":"#constrainType"},{"include":"#parameterTuple"},{"include":"#functionTypeType"},{"include":"#comment"}]}]},"functionTypeReturns":{"patterns":[{"begin":"\\\\breturns\\\\b","beginCaptures":{"0":{"name":"keyword"}},"end":"(?=\\\\,)|(?:\\\\|)|(?=\\\\])|(?=\\\\))","patterns":[{"include":"#functionTypeReturnsParameter"},{"include":"#comment"}]}]},"functionTypeReturnsParameter":{"patterns":[{"begin":"((?=record|object|function)|(?:[_$[:alpha:]][_$[:alnum:]]*))","beginCaptures":{"0":{"name":"storage.type.ballerina"}},"end":"(?=\\\\,)|(?:\\\\|)|(?:\\\\:)|(?==>)|(?=\\\\))|(?=\\\\])","patterns":[{"include":"#record"},{"include":"#objectDec"},{"include":"#functionType"},{"include":"#constrainType"},{"include":"#defaultValue"},{"include":"#comment"},{"include":"#parameterTuple"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"default.variable.parameter.ballerina"}]}]},"functionTypeType":{"patterns":[{"begin":"[_$[:alpha:]][_$[:alnum:]]*","beginCaptures":{"0":{"name":"storage.type.ballerina"}},"end":"(?=\\\\,)|(?:\\\\|)|(?=\\\\])|(?=\\\\))"}]},"identifiers":{"patterns":[{"captures":{"1":{"name":"punctuation.accessor.ballerina"},"2":{"name":"punctuation.accessor.optional.ballerina"},"3":{"name":"entity.name.function.ballerina"}},"match":"(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\s*=\\\\s*((((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((((<\\\\s*$)|((<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.ballerina"},"2":{"name":"punctuation.accessor.optional.ballerina"},"3":{"name":"entity.name.function.ballerina"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=\\\\()"},{"captures":{"1":{"name":"punctuation.accessor.ballerina"},"2":{"name":"punctuation.accessor.optional.ballerina"},"3":{"name":"variable.other.property.ballerina"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"},{"include":"#type-primitive"},{"include":"#self-literal"},{"match":"\\\\b(check|foreach|if|checkpanic)\\\\b","name":"keyword.control.ballerina"},{"include":"#call"},{"match":"\\\\b(var)\\\\b","name":"support.type.primitive.ballerina"},{"captures":{"1":{"name":"variable.other.readwrite.ballerina"},"3":{"name":"punctuation.accessor.ballerina"},"4":{"name":"entity.name.function.ballerina"},"5":{"name":"punctuation.definition.parameters.begin.ballerina"},"6":{"name":"punctuation.definition.parameters.end.ballerina"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)((\\\\.)([_$[:alpha:]][_$[:alnum:]]*)(\\\\()(\\\\)))?"},{"match":"(\\\\\')([_$[:alpha:]][_$[:alnum:]]*)","name":"variable.other.property.ballerina"},{"include":"#type-annotation"}]},"if-statement":{"patterns":[{"begin":"(?)","name":"meta.arrow.ballerina storage.type.function.arrow.ballerina"},{"match":"(!|%|\\\\+|\\\\-|~=|===|==|=|!=|!==|<|>|&|\\\\||\\\\?:|\\\\.\\\\.\\\\.|<=|>=|&&|\\\\|\\\\||~|>>|>>>)","name":"keyword.operator.ballerina"},{"include":"#types"},{"include":"#self-literal"},{"include":"#type-primitive"}]},"literal":{"patterns":[{"include":"#booleans"},{"include":"#numbers"},{"include":"#strings"},{"include":"#maps"},{"include":"#self-literal"},{"include":"#array-literal"}]},"maps":{"patterns":[{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#code"}]}]},"matchBindingPattern":{"patterns":[{"begin":"var","beginCaptures":{"0":{"name":"storage.type.ballerina"}},"end":"(?==>)|,","patterns":[{"include":"#errorDestructure"},{"include":"#code"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"variable.parameter.ballerina"}]}]},"matchStatement":{"patterns":[{"begin":"\\\\bmatch\\\\b","beginCaptures":{"0":{"name":"keyword.control.ballerina"}},"end":"\\\\}","patterns":[{"include":"#matchStatementBody"},{"include":"#comment"},{"include":"#code"}]}]},"matchStatementBody":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ballerina.documentation"}},"end":"(?=\\\\})","endCaptures":{"0":{"name":"punctuation.definition.block.ballerina.documentation"}},"patterns":[{"include":"#literal"},{"include":"#matchBindingPattern"},{"include":"#matchStatementPatternClause"},{"include":"#comment"},{"include":"#code"}]}]},"matchStatementPatternClause":{"patterns":[{"begin":"=>","beginCaptures":{"0":{"name":"keyword.ballerina"}},"end":"((\\\\})|;|,)","patterns":[{"include":"#callableUnitBody"},{"include":"#code"}]}]},"mdDocumentation":{"begin":"\\\\#","end":"[\\\\r\\\\n]+","name":"comment.mddocs.ballerina","patterns":[{"include":"#mdDocumentationReturnParamDescription"},{"include":"#mdDocumentationParamDescription"}]},"mdDocumentationParamDescription":{"patterns":[{"begin":"(\\\\+\\\\s+)(\\\\\'?[_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\-\\\\s+)","beginCaptures":{"1":{"name":"keyword.operator.ballerina"},"2":{"name":"variable.other.readwrite.ballerina"},"3":{"name":"keyword.operator.ballerina"}},"end":"(?=[^#\\\\r\\\\n]|(?:# *?\\\\+))","patterns":[{"match":"#.*","name":"comment.mddocs.paramdesc.ballerina"}]}]},"mdDocumentationReturnParamDescription":{"patterns":[{"begin":"(#)(?: *?)(\\\\+)(?: *)(return)(?: *)(-)?(.*)","beginCaptures":{"1":{"name":"comment.mddocs.ballerina"},"2":{"name":"keyword.ballerina"},"3":{"name":"keyword.ballerina"},"4":{"name":"keyword.ballerina"},"5":{"name":"comment.mddocs.returnparamdesc.ballerina"}},"end":"(?=[^#\\\\r\\\\n]|(?:# *?\\\\+))","patterns":[{"match":"#.*","name":"comment.mddocs.returnparamdesc.ballerina"}]}]},"multiType":{"patterns":[{"match":"(?<=\\\\|)([_$[:alpha:]][_$[:alnum:]]*)|([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\|)","name":"storage.type.ballerina"},{"match":"\\\\|","name":"keyword.operator.ballerina"}]},"numbers":{"patterns":[{"match":"\\\\b0[xX][\\\\da-fA-F]+\\\\b|\\\\b\\\\d+(?:\\\\.(?:\\\\d+|$))?","name":"constant.numeric.decimal.ballerina"}]},"object-literal":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ballerina"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ballerina"}},"name":"meta.objectliteral.ballerina","patterns":[{"include":"#object-member"},{"include":"#punctuation-comma"}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#function-defn"},{"include":"#literal"},{"include":"#keywords"},{"include":"#expression"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[\\\\(\\\\<]))","name":"meta.object.member.ballerina meta.object-literal.key.ballerina","patterns":[{"include":"#comment"}]},{"begin":"(?=[\\\\\'\\\\\\"\\\\`])","end":"(?=:)|((?<=[\\\\\'\\\\\\"\\\\`])(?=((\\\\s*[\\\\(\\\\<,}])|(\\\\n*})|(\\\\s+(as)\\\\s+))))","name":"meta.object.member.ballerina meta.object-literal.key.ballerina","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?)))|((((<\\\\s*$)|((<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.ballerina"},{"captures":{"0":{"name":"meta.object-literal.key.ballerina"}},"match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.ballerina"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ballerina"}},"end":"(?=,|\\\\})","name":"meta.object.member.ballerina","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.ballerina"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.ballerina"},{"captures":{"1":{"name":"keyword.control.as.ballerina"},"2":{"name":"storage.modifier.ballerina"}},"match":"(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|^|((?)|(?=\\\\))|(?=\\\\])","patterns":[{"include":"#parameterWithDescriptor"},{"include":"#record"},{"include":"#objectDec"},{"include":"#functionType"},{"include":"#constrainType"},{"include":"#defaultValue"},{"include":"#comment"},{"include":"#parameterTuple"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"default.variable.parameter.ballerina"}]}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"support.type.primitive.ballerina"}},"match":"\\\\s*\\\\b(var)\\\\s+"},{"captures":{"2":{"name":"keyword.operator.rest.ballerina"},"3":{"name":"support.type.primitive.ballerina"},"4":{"name":"keyword.other.ballerina"},"5":{"name":"constant.language.boolean.ballerina"},"6":{"name":"keyword.control.flow.ballerina"},"7":{"name":"storage.type.ballerina"},"8":{"name":"variable.parameter.ballerina"},"9":{"name":"variable.parameter.ballerina"},"10":{"name":"keyword.operator.optional.ballerina"}},"match":"(?:(?)|(?=\\\\))","patterns":[{"include":"#record"},{"include":"#objectDec"},{"include":"#parameterTupleType"},{"include":"#parameterTupleEnd"},{"include":"#comment"}]}]},"parameterTupleEnd":{"patterns":[{"begin":"\\\\]","end":"(?=\\\\,)|(?=\\\\|)|(?=\\\\:)|(?==>)|(?=\\\\))","patterns":[{"include":"#defaultWithParentheses"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"default.variable.parameter.ballerina"}]}]},"parameterTupleType":{"patterns":[{"begin":"[_$[:alpha:]][_$[:alnum:]]*","beginCaptures":{"0":{"name":"storage.type.ballerina"}},"end":"(?:\\\\,)|(?:\\\\|)|(?=\\\\])"}]},"parameterWithDescriptor":{"patterns":[{"begin":"\\\\&","beginCaptures":{"0":{"name":"keyword.operator.ballerina"}},"end":"(?=\\\\,)|(?=\\\\|)|(?=\\\\))","patterns":[{"include":"#parameter"}]}]},"parameters":{"patterns":[{"match":"\\\\s*(return|break|continue|check|checkpanic|panic|trap|from|where)\\\\b","name":"keyword.control.flow.ballerina"},{"match":"\\\\s*(let|select)\\\\b","name":"keyword.other.ballerina"},{"match":"\\\\,","name":"punctuation.separator.parameter.ballerina"}]},"paranthesised":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ballerina"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ballerina"}},"name":"meta.brace.round.block.ballerina","patterns":[{"include":"#self-literal"},{"include":"#function-defn"},{"include":"#decl-block"},{"include":"#comment"},{"include":"#string"},{"include":"#parameters"},{"include":"#annotationAttachment"},{"include":"#recordLiteral"},{"include":"#stringTemplate"},{"include":"#parameter-name"},{"include":"#variable-initializer"},{"include":"#expression"},{"include":"#regex"}]},"paranthesisedBracket":{"patterns":[{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#comment"},{"include":"#code"}]}]},"punctuation-accessor":{"patterns":[{"captures":{"1":{"name":"punctuation.accessor.ballerina"},"2":{"name":"punctuation.accessor.optional.ballerina"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"}]},"punctuation-comma":{"patterns":[{"match":",","name":"punctuation.separator.comma.ballerina"}]},"punctuation-semicolon":{"patterns":[{"match":";","name":"punctuation.terminator.statement.ballerina"}]},"record":{"begin":"\\\\brecord\\\\b","beginCaptures":{"0":{"name":"keyword.other.ballerina"}},"end":"(?<=\\\\})","name":"meta.record.ballerina","patterns":[{"include":"#recordBody"}]},"recordBody":{"patterns":[{"include":"#decl-block"}]},"recordLiteral":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ballerina"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ballerina"}},"patterns":[{"include":"#code"}]}]},"regex":{"patterns":[{"begin":"(\\\\bre)(\\\\s*)(`)","beginCaptures":{"1":{"name":"support.type.primitive.ballerina"},"3":{"name":"punctuation.definition.regexp.template.begin.ballerina"}},"end":"`","endCaptures":{"1":{"name":"punctuation.definition.regexp.template.end.ballerina"}},"name":"regexp.template.ballerina","patterns":[{"include":"#template-substitution-element"},{"include":"#regexp"}]}]},"regex-character-class":{"patterns":[{"match":"\\\\\\\\[wWsSdDtrn]|\\\\.","name":"keyword.other.character-class.regexp.ballerina"},{"match":"\\\\\\\\[^pPu]","name":"constant.character.escape.backslash.regexp"}]},"regex-unicode-properties-general-category":{"patterns":[{"match":"(Lu|Ll|Lt|Lm|Lo|L|Mn|Mc|Me|M|Nd|Nl|No|N|Pc|Pd|Ps|Pe|Pi|Pf|Po|P|Sm|Sc|Sk|So|S|Zs|Zl|Zp|Z|Cf|Cc|Cn|Co|C)","name":"constant.other.unicode-property-general-category.regexp.ballerina"}]},"regex-unicode-property-key":{"patterns":[{"begin":"(sc=|gc=)","beginCaptures":{"1":{"name":"keyword.other.unicode-property-key.regexp.ballerina"}},"end":"()","endCaptures":{"1":{"name":"punctuation.other.unicode-property.end.regexp.ballerina"}},"name":"keyword.other.unicode-property-key.regexp.ballerina","patterns":[{"include":"#regex-unicode-properties-general-category"}]}]},"regexp":{"patterns":[{"match":"\\\\^|\\\\$","name":"keyword.control.assertion.regexp.ballerina"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp.ballerina"},{"match":"\\\\|","name":"keyword.operator.or.regexp.ballerina"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp.ballerina"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.regexp.ballerina"}},"name":"meta.group.assertion.regexp.ballerina","patterns":[{"include":"#template-substitution-element"},{"include":"#regexp"},{"include":"#flags-on-off"},{"include":"#unicode-property-escape"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.start.regexp.ballerina"},"2":{"name":"keyword.operator.negation.regexp.ballerina"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.end.regexp.ballerina"}},"name":"constant.other.character-class.set.regexp.ballerina","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.escape.backslash.regexp"},"3":{"name":"constant.character.numeric.regexp"},"4":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\[^pPu]))\\\\-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\[^pPu]))","name":"constant.other.character-class.range.regexp.ballerina"},{"include":"#regex-character-class"},{"include":"#unicode-values"},{"include":"#unicode-property-escape"}]},{"include":"#template-substitution-element"},{"include":"#regex-character-class"},{"include":"#unicode-values"},{"include":"#unicode-property-escape"}]},"self-literal":{"patterns":[{"captures":{"1":{"name":"variable.language.this.ballerina"},"2":{"name":"punctuation.accessor.ballerina"},"3":{"name":"entity.name.function.ballerina"}},"match":"(\\\\bself\\\\b)\\\\s*(.)\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=\\\\()"},{"match":"(?\\\\=>]|//)|(?==[^>])|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))(\\\\?)?","name":"meta.type.annotation.ballerina","patterns":[{"include":"#booleans"},{"include":"#stringTemplate"},{"include":"#regex"},{"include":"#self-literal"},{"include":"#xml"},{"include":"#call"},{"captures":{"1":{"name":"keyword.other.ballerina"},"2":{"name":"constant.language.boolean.ballerina"},"3":{"name":"keyword.control.ballerina"},"4":{"name":"storage.type.ballerina"},"5":{"name":"support.type.primitive.ballerina"},"6":{"name":"variable.other.readwrite.ballerina"},"8":{"name":"punctuation.accessor.ballerina"},"9":{"name":"entity.name.function.ballerina"},"10":{"name":"punctuation.definition.parameters.begin.ballerina"},"11":{"name":"punctuation.definition.parameters.end.ballerina"}},"match":"\\\\b(is|new|isolated|null|function|in)\\\\b|\\\\b(true|false)\\\\b|\\\\b(check|foreach|if|checkpanic)\\\\b|\\\\b(readonly|error|map)\\\\b|\\\\b(var)\\\\b|([_$[:alpha:]][_$[:alnum:]]*)((\\\\.)([_$[:alpha:]][_$[:alnum:]]*)(\\\\()(\\\\)))?"},{"match":"\\\\?","name":"keyword.operator.optional.ballerina"},{"include":"#multiType"},{"include":"#type"},{"include":"#paranthesised"}]}]},"type-primitive":{"patterns":[{"match":"(?|\\\\|)","beginCaptures":{"2":{"name":"support.type.primitive.ballerina"},"3":{"name":"storage.type.ballerina"},"4":{"name":"meta.definition.variable.ballerina variable.other.readwrite.ballerina"}},"end":"(?=$|^|[;,=}])","endCaptures":{"0":{"name":"punctuation.terminator.statement.ballerina"}},"name":"meta.var-single-variable.expr.ballerina","patterns":[{"include":"#call"},{"include":"#self-literal"},{"include":"#if-statement"},{"include":"#string"},{"include":"#numbers"},{"include":"#keywords"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s+(\\\\!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ballerina variable.other.readwrite.ballerina"},"2":{"name":"keyword.operator.definiteassignment.ballerina"}},"end":"(?=$|^|[;,=}]|((?)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ballerina"}},"end":"(?=$|[,);}\\\\]])","patterns":[{"match":"(\\\\\')([_$[:alpha:]][_$[:alnum:]]*)","name":"variable.other.property.ballerina"},{"include":"#xml"},{"include":"#function-defn"},{"include":"#expression"},{"include":"#punctuation-accessor"},{"include":"#regex"}]},{"begin":"(?)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ballerina"}},"end":"(?=[,);}\\\\]]|((?","endCaptures":{"0":{"name":"comment.block.xml.ballerina"}},"name":"comment.block.xml.ballerina"}]},"xmlDoubleQuotedString":{"patterns":[{"begin":"\\\\\\"","beginCaptures":{"0":{"name":"string.begin.ballerina"}},"end":"\\\\\\"","endCaptures":{"0":{"name":"string.end.ballerina"}},"patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.ballerina"},{"match":".","name":"string"}]}]},"xmlSingleQuotedString":{"patterns":[{"begin":"\\\\\'","beginCaptures":{"0":{"name":"string.begin.ballerina"}},"end":"\\\\\'","endCaptures":{"0":{"name":"string.end.ballerina"}},"patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.ballerina"},{"match":".","name":"string"}]}]},"xmlTag":{"patterns":[{"begin":"(<\\\\/?\\\\??)\\\\s*([-_a-zA-Z0-9]+)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.xml.ballerina"},"2":{"name":"entity.name.tag.xml.ballerina"}},"end":"\\\\??\\\\/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.xml.ballerina"}},"patterns":[{"include":"#xmlSingleQuotedString"},{"include":"#xmlDoubleQuotedString"},{"match":"xmlns","name":"keyword.other.ballerina"},{"match":"([a-zA-Z0-9-]+)","name":"entity.other.attribute-name.xml.ballerina"}]}]}},"scopeName":"source.ballerina"}')),Vee=[Jee]});var M8={};x(M8,{default:()=>ete});var Xee,ete,T8=_(()=>{Xee=Object.freeze(JSON.parse('{"displayName":"Batch File","injections":{"L:meta.block.repeat.batchfile":{"patterns":[{"include":"#repeatParameter"}]}},"name":"bat","patterns":[{"include":"#commands"},{"include":"#comments"},{"include":"#constants"},{"include":"#controls"},{"include":"#escaped_characters"},{"include":"#labels"},{"include":"#numbers"},{"include":"#operators"},{"include":"#parens"},{"include":"#strings"},{"include":"#variables"}],"repository":{"command_set":{"patterns":[{"begin":"(?<=^|[\\\\s@])(?i:SET)(?=$|\\\\s)","beginCaptures":{"0":{"name":"keyword.command.batchfile"}},"end":"(?=$\\\\n|[&|><)])","patterns":[{"include":"#command_set_inside"}]}]},"command_set_group":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.group.begin.batchfile"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.group.end.batchfile"}},"patterns":[{"include":"#command_set_inside_arithmetic"}]}]},"command_set_inside":{"patterns":[{"include":"#escaped_characters"},{"include":"#variables"},{"include":"#numbers"},{"include":"#parens"},{"include":"#command_set_strings"},{"include":"#strings"},{"begin":"([^ ][^=]*)(=)","beginCaptures":{"1":{"name":"variable.other.readwrite.batchfile"},"2":{"name":"keyword.operator.assignment.batchfile"}},"end":"(?=$\\\\n|[&|><)])","patterns":[{"include":"#escaped_characters"},{"include":"#variables"},{"include":"#numbers"},{"include":"#parens"},{"include":"#strings"}]},{"begin":"\\\\s+/[aA]\\\\s+","end":"(?=$\\\\n|[&|><)])","name":"meta.expression.set.batchfile","patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.batchfile"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.batchfile"}},"name":"string.quoted.double.batchfile","patterns":[{"include":"#command_set_inside_arithmetic"},{"include":"#command_set_group"},{"include":"#variables"}]},{"include":"#command_set_inside_arithmetic"},{"include":"#command_set_group"}]},{"begin":"\\\\s+/[pP]\\\\s+","end":"(?=$\\\\n|[&|><)])","patterns":[{"include":"#command_set_strings"},{"begin":"([^ ][^=]*)(=)","beginCaptures":{"1":{"name":"variable.other.readwrite.batchfile"},"2":{"name":"keyword.operator.assignment.batchfile"}},"end":"(?=$\\\\n|[&|><)])","name":"meta.prompt.set.batchfile","patterns":[{"include":"#strings"}]}]}]},"command_set_inside_arithmetic":{"patterns":[{"include":"#command_set_operators"},{"include":"#numbers"},{"match":",","name":"punctuation.separator.batchfile"}]},"command_set_operators":{"patterns":[{"captures":{"1":{"name":"variable.other.readwrite.batchfile"},"2":{"name":"keyword.operator.assignment.augmented.batchfile"}},"match":"([^ ]*)(\\\\+\\\\=|\\\\-\\\\=|\\\\*\\\\=|\\\\/\\\\=|%%\\\\=|&\\\\=|\\\\|\\\\=|\\\\^\\\\=|<<\\\\=|>>\\\\=)"},{"match":"\\\\+|\\\\-|/|\\\\*|%%|\\\\||&|\\\\^|<<|>>|~","name":"keyword.operator.arithmetic.batchfile"},{"match":"!","name":"keyword.operator.logical.batchfile"},{"captures":{"1":{"name":"variable.other.readwrite.batchfile"},"2":{"name":"keyword.operator.assignment.batchfile"}},"match":"([^ =]*)(=)"}]},"command_set_strings":{"patterns":[{"begin":"(\\")\\\\s*([^ ][^=]*)(=)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.batchfile"},"2":{"name":"variable.other.readwrite.batchfile"},"3":{"name":"keyword.operator.assignment.batchfile"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.batchfile"}},"name":"string.quoted.double.batchfile","patterns":[{"include":"#variables"},{"include":"#numbers"},{"include":"#escaped_characters"}]}]},"commands":{"patterns":[{"match":"(?<=^|[\\\\s@])(?i:adprep|append|arp|assoc|at|atmadm|attrib|auditpol|autochk|autoconv|autofmt|bcdboot|bcdedit|bdehdcfg|bitsadmin|bootcfg|brea|cacls|cd|certreq|certutil|change|chcp|chdir|chglogon|chgport|chgusr|chkdsk|chkntfs|choice|cipher|clip|cls|clscluadmin|cluster|cmd|cmdkey|cmstp|color|comp|compact|convert|copy|cprofile|cscript|csvde|date|dcdiag|dcgpofix|dcpromo|defra|del|dfscmd|dfsdiag|dfsrmig|diantz|dir|dirquota|diskcomp|diskcopy|diskpart|diskperf|diskraid|diskshadow|dispdiag|doin|dnscmd|doskey|driverquery|dsacls|dsadd|dsamain|dsdbutil|dsget|dsmgmt|dsmod|dsmove|dsquery|dsrm|edit|endlocal|eraseesentutl|eventcreate|eventquery|eventtriggers|evntcmd|expand|extract|fc|filescrn|find|findstr|finger|flattemp|fonde|forfiles|format|freedisk|fsutil|ftp|ftype|fveupdate|getmac|gettype|gpfixup|gpresult|gpupdate|graftabl|hashgen|hep|helpctr|hostname|icacls|iisreset|inuse|ipconfig|ipxroute|irftp|ismserv|jetpack|klist|ksetup|ktmutil|ktpass|label|ldifd|ldp|lodctr|logman|logoff|lpq|lpr|macfile|makecab|manage-bde|mapadmin|md|mkdir|mklink|mmc|mode|more|mount|mountvol|move|mqbup|mqsvc|mqtgsvc|msdt|msg|msiexec|msinfo32|mstsc|nbtstat|net computer|net group|net localgroup|net print|net session|net share|net start|net stop|net use|net user|net view|net|netcfg|netdiag|netdom|netsh|netstat|nfsadmin|nfsshare|nfsstat|nlb|nlbmgr|nltest|nslookup|ntackup|ntcmdprompt|ntdsutil|ntfrsutl|openfiles|pagefileconfig|path|pathping|pause|pbadmin|pentnt|perfmon|ping|pnpunatten|pnputil|popd|powercfg|powershell|powershell_ise|print|prncnfg|prndrvr|prnjobs|prnmngr|prnport|prnqctl|prompt|pubprn|pushd|pushprinterconnections|pwlauncher|qappsrv|qprocess|query|quser|qwinsta|rasdial|rcp|rd|rdpsign|regentc|recover|redircmp|redirusr|reg|regini|regsvr32|relog|ren|rename|rendom|repadmin|repair-bde|replace|reset session|rxec|risetup|rmdir|robocopy|route|rpcinfo|rpcping|rsh|runas|rundll32|rwinsta|sc|schtasks|scp|scwcmd|secedit|serverceipoptin|servrmanagercmd|serverweroptin|setspn|setx|sfc|sftp|shadow|shift|showmount|shutdown|sort|ssh|ssh-add|ssh-agent|ssh-keygen|ssh-keyscan|start|storrept|subst|sxstrace|ysocmgr|systeminfo|takeown|tapicfg|taskkill|tasklist|tcmsetup|telnet|tftp|time|timeout|title|tlntadmn|tpmvscmgr|tpmvscmgr|tacerpt|tracert|tree|tscon|tsdiscon|tsecimp|tskill|tsprof|type|typeperf|tzutil|uddiconfig|umount|unlodctr|ver|verifier|verif|vol|vssadmin|w32tm|waitfor|wbadmin|wdsutil|wecutil|wevtutil|where|whoami|winnt|winnt32|winpop|winrm|winrs|winsat|wlbs|wmic|wscript|wsl|xcopy)(?=$|\\\\s)","name":"keyword.command.batchfile"},{"begin":"(?i)(?<=^|[\\\\s@])(echo)(?:(?=$|\\\\.|:)|\\\\s+(?:(on|off)(?=\\\\s*$))?)","beginCaptures":{"1":{"name":"keyword.command.batchfile"},"2":{"name":"keyword.other.special-method.batchfile"}},"end":"(?=$\\\\n|[&|><)])","patterns":[{"include":"#escaped_characters"},{"include":"#variables"},{"include":"#numbers"},{"include":"#strings"}]},{"captures":{"1":{"name":"keyword.command.batchfile"},"2":{"name":"keyword.other.special-method.batchfile"}},"match":"(?i)(?<=^|[\\\\s@])(setlocal)(?:\\\\s*$|\\\\s+(EnableExtensions|DisableExtensions|EnableDelayedExpansion|DisableDelayedExpansion)(?=\\\\s*$))"},{"include":"#command_set"}]},"comments":{"patterns":[{"begin":"(?:^|(&))\\\\s*(?=((?::[+=,;: ])))","beginCaptures":{"1":{"name":"keyword.operator.conditional.batchfile"}},"end":"\\\\n","patterns":[{"begin":"((?::[+=,;: ]))","beginCaptures":{"1":{"name":"punctuation.definition.comment.batchfile"}},"end":"(?=\\\\n)","name":"comment.line.colon.batchfile"}]},{"begin":"(?<=^|[\\\\s@])(?i)(REM)(\\\\.)","beginCaptures":{"1":{"name":"keyword.command.rem.batchfile"},"2":{"name":"punctuation.separator.batchfile"}},"end":"(?=$\\\\n|[&|><)])","name":"comment.line.rem.batchfile"},{"begin":"(?<=^|[\\\\s@])(?i:rem)\\\\b","beginCaptures":{"0":{"name":"keyword.command.rem.batchfile"}},"end":"\\\\n","name":"comment.line.rem.batchfile","patterns":[{"match":"[><|]","name":"invalid.illegal.unexpected-character.batchfile"}]}]},"constants":{"patterns":[{"match":"\\\\b(?i:NUL)\\\\b","name":"constant.language.batchfile"}]},"controls":{"patterns":[{"match":"(?i)(?<=^|\\\\s)(?:call|exit(?=$|\\\\s)|goto(?=$|\\\\s|:))","name":"keyword.control.statement.batchfile"},{"captures":{"1":{"name":"keyword.control.conditional.batchfile"},"2":{"name":"keyword.operator.logical.batchfile"},"3":{"name":"keyword.other.special-method.batchfile"}},"match":"(?<=^|\\\\s)(?i)(if)\\\\s+(?:(not)\\\\s+)?(exist|defined|errorlevel|cmdextversion)(?=\\\\s)"},{"match":"(?<=^|\\\\s)(?i)(?:if|else)(?=$|\\\\s)","name":"keyword.control.conditional.batchfile"},{"begin":"(?<=^|[\\\\s(&^])(?i)for(?=\\\\s)","beginCaptures":{"0":{"name":"keyword.control.repeat.batchfile"}},"end":"\\\\n","name":"meta.block.repeat.batchfile","patterns":[{"begin":"(?<=[\\\\s^])(?i)in(?=\\\\s)","beginCaptures":{"0":{"name":"keyword.control.repeat.in.batchfile"}},"end":"(?<=[\\\\s)^])(?i)do(?=\\\\s)|\\\\n","endCaptures":{"0":{"name":"keyword.control.repeat.do.batchfile"}},"patterns":[{"include":"$self"}]},{"include":"$self"}]}]},"escaped_characters":{"patterns":[{"match":"%%|\\\\^\\\\^!|\\\\^(?=.)|\\\\^\\\\n","name":"constant.character.escape.batchfile"}]},"labels":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.batchfile"},"2":{"name":"keyword.other.special-method.batchfile"}},"match":"(?i)(?:^\\\\s*|(?<=call|goto)\\\\s*)(:)([^+=,;:\\\\s]\\\\S*)"}]},"numbers":{"patterns":[{"match":"(?<=^|\\\\s|=)(0[xX][0-9A-Fa-f]*|[+-]?\\\\d+)(?=$|\\\\s|<|>)","name":"constant.numeric.batchfile"}]},"operators":{"patterns":[{"match":"@(?=\\\\S)","name":"keyword.operator.at.batchfile"},{"match":"(?<=\\\\s)(?i:EQU|NEQ|LSS|LEQ|GTR|GEQ)(?=\\\\s)|==","name":"keyword.operator.comparison.batchfile"},{"match":"(?<=\\\\s)(?i)(NOT)(?=\\\\s)","name":"keyword.operator.logical.batchfile"},{"match":"(?[&>]?","name":"keyword.operator.redirection.batchfile"}]},"parens":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.group.begin.batchfile"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.group.end.batchfile"}},"name":"meta.group.batchfile","patterns":[{"match":",|;","name":"punctuation.separator.batchfile"},{"include":"$self"}]}]},"repeatParameter":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.batchfile"}},"match":"(%%)(?:(?i:~[fdpnxsatz]*(?:\\\\$PATH:)?)?[a-zA-Z])","name":"variable.parameter.repeat.batchfile"}]},"strings":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.batchfile"}},"end":"(\\")|(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.batchfile"},"2":{"name":"invalid.illegal.newline.batchfile"}},"name":"string.quoted.double.batchfile","patterns":[{"match":"%%","name":"constant.character.escape.batchfile"},{"include":"#variables"}]}]},"variable":{"patterns":[{"begin":"%(?=[^%]+%)","beginCaptures":{"0":{"name":"punctuation.definition.variable.begin.batchfile"}},"end":"(%)|\\\\n","endCaptures":{"1":{"name":"punctuation.definition.variable.end.batchfile"}},"name":"variable.other.readwrite.batchfile","patterns":[{"begin":":~","beginCaptures":{"0":{"name":"punctuation.separator.batchfile"}},"end":"(?=%|\\\\n)","name":"meta.variable.substring.batchfile","patterns":[{"include":"#variable_substring"}]},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.batchfile"}},"end":"(?=%|\\\\n)","name":"meta.variable.substitution.batchfile","patterns":[{"include":"#variable_replace"},{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.batchfile"}},"end":"(?=%|\\\\n)","patterns":[{"include":"#variable_delayed_expansion"},{"match":"[^%]+","name":"string.unquoted.batchfile"}]}]}]}]},"variable_delayed_expansion":{"patterns":[{"begin":"!(?=[^!]+!)","beginCaptures":{"0":{"name":"punctuation.definition.variable.begin.batchfile"}},"end":"(!)|\\\\n","endCaptures":{"1":{"name":"punctuation.definition.variable.end.batchfile"}},"name":"variable.other.readwrite.batchfile","patterns":[{"begin":":~","beginCaptures":{"0":{"name":"punctuation.separator.batchfile"}},"end":"(?=!|\\\\n)","name":"meta.variable.substring.batchfile","patterns":[{"include":"#variable_substring"}]},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.batchfile"}},"end":"(?=!|\\\\n)","name":"meta.variable.substitution.batchfile","patterns":[{"include":"#escaped_characters"},{"include":"#variable_replace"},{"include":"#variable"},{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.batchfile"}},"end":"(?=!|\\\\n)","patterns":[{"include":"#variable"},{"match":"[^!]+","name":"string.unquoted.batchfile"}]}]}]}]},"variable_replace":{"patterns":[{"match":"[^=%!\\\\n]+","name":"string.unquoted.batchfile"}]},"variable_substring":{"patterns":[{"captures":{"1":{"name":"constant.numeric.batchfile"},"2":{"name":"punctuation.separator.batchfile"},"3":{"name":"constant.numeric.batchfile"}},"match":"([+-]?\\\\d+)(?:(,)([+-]?\\\\d+))?"}]},"variables":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.batchfile"}},"match":"(%)(?:(?i:~[fdpnxsatz]*(?:\\\\$PATH:)?)?\\\\d|\\\\*)","name":"variable.parameter.batchfile"},{"include":"#variable"},{"include":"#variable_delayed_expansion"}]}},"scopeName":"source.batchfile","aliases":["batch"]}')),ete=[Xee]});var q8={};x(q8,{default:()=>nte});var tte,nte,G8=_(()=>{tte=Object.freeze(JSON.parse(`{"displayName":"Beancount","fileTypes":["beancount"],"name":"beancount","patterns":[{"comment":"Comments","match":";.*","name":"comment.line.beancount"},{"begin":"^\\\\s*(poptag|pushtag)\\\\s+(#)([A-Za-z0-9\\\\-_/.]+)","beginCaptures":{"1":{"name":"support.function.beancount"},"2":{"name":"keyword.operator.tag.beancount"},"3":{"name":"entity.name.tag.beancount"}},"comment":"Tag directive","end":"(?=(^\\\\s*$|^\\\\S))","name":"meta.directive.tag.beancount","patterns":[{"include":"#comments"},{"include":"#illegal"}]},{"begin":"^\\\\s*(include)\\\\s+(\\\\\\".*\\\\\\")","beginCaptures":{"1":{"name":"support.function.beancount"},"2":{"name":"string.quoted.double.beancount"}},"comment":"Include directive","end":"(?=(^\\\\s*$|^\\\\S))","name":"meta.directive.include.beancount","patterns":[{"include":"#comments"},{"include":"#illegal"}]},{"begin":"^\\\\s*(option)\\\\s+(\\\\\\".*\\\\\\")\\\\s+(\\\\\\".*\\\\\\")","beginCaptures":{"1":{"name":"support.function.beancount"},"2":{"name":"support.variable.beancount"},"3":{"name":"string.quoted.double.beancount"}},"comment":"Option directive","end":"(?=(^\\\\s*$|^\\\\S))","name":"meta.directive.option.beancount","patterns":[{"include":"#comments"},{"include":"#illegal"}]},{"begin":"^\\\\s*(plugin)\\\\s*(\\"(.*?)\\")\\\\s*(\\".*?\\")?","beginCaptures":{"1":{"name":"support.function.beancount"},"2":{"name":"string.quoted.double.beancount"},"3":{"name":"entity.name.function.beancount"},"4":{"name":"string.quoted.double.beancount"}},"comment":"Plugin directive","end":"(?=(^\\\\s*$|^\\\\S))","name":"keyword.operator.directive.beancount","patterns":[{"include":"#comments"},{"include":"#illegal"}]},{"begin":"([0-9]{4})([\\\\-|/])([0-9]{2})([\\\\-|/])([0-9]{2})\\\\s+(open|close|pad)\\\\b","beginCaptures":{"1":{"name":"constant.numeric.date.year.beancount"},"2":{"name":"punctuation.separator.beancount"},"3":{"name":"constant.numeric.date.month.beancount"},"4":{"name":"punctuation.separator.beancount"},"5":{"name":"constant.numeric.date.day.beancount"},"6":{"name":"support.function.beancount"}},"comment":"Open/Close/Pad directive","end":"(?=(^\\\\s*$|^\\\\S))","name":"meta.directive.dated.beancount","patterns":[{"include":"#comments"},{"include":"#meta"},{"include":"#account"},{"include":"#commodity"},{"match":"\\\\,","name":"punctuation.separator.beancount"},{"include":"#illegal"}]},{"begin":"([0-9]{4})([\\\\-|/])([0-9]{2})([\\\\-|/])([0-9]{2})\\\\s+(custom)\\\\b","beginCaptures":{"1":{"name":"constant.numeric.date.year.beancount"},"2":{"name":"punctuation.separator.beancount"},"3":{"name":"constant.numeric.date.month.beancount"},"4":{"name":"punctuation.separator.beancount"},"5":{"name":"constant.numeric.date.day.beancount"},"6":{"name":"support.function.beancount"}},"comment":"Custom directive","end":"(?=(^\\\\s*$|^\\\\S))","name":"meta.directive.dated.beancount","patterns":[{"include":"#comments"},{"include":"#meta"},{"include":"#string"},{"include":"#bool"},{"include":"#amount"},{"include":"#number"},{"include":"#date"},{"include":"#account"},{"include":"#illegal"}]},{"begin":"([0-9]{4})([\\\\-|/])([0-9]{2})([\\\\-|/])([0-9]{2})\\\\s(event)","beginCaptures":{"1":{"name":"constant.numeric.date.year.beancount"},"2":{"name":"punctuation.separator.beancount"},"3":{"name":"constant.numeric.date.month.beancount"},"4":{"name":"punctuation.separator.beancount"},"5":{"name":"constant.numeric.date.day.beancount"},"6":{"name":"support.function.directive.beancount"}},"comment":"Event directive","end":"(?=(^\\\\s*$|^\\\\S))","name":"meta.directive.dated.beancount","patterns":[{"include":"#comments"},{"include":"#meta"},{"include":"#string"},{"include":"#illegal"}]},{"begin":"([0-9]{4})([\\\\-|/])([0-9]{2})([\\\\-|/])([0-9]{2})\\\\s(commodity)","beginCaptures":{"1":{"name":"constant.numeric.date.year.beancount"},"2":{"name":"punctuation.separator.beancount"},"3":{"name":"constant.numeric.date.month.beancount"},"4":{"name":"punctuation.separator.beancount"},"5":{"name":"constant.numeric.date.day.beancount"},"6":{"name":"support.function.directive.beancount"}},"comment":"Commodity directive","end":"(?=(^\\\\s*$|^\\\\S))","name":"meta.directive.dated.beancount","patterns":[{"include":"#comments"},{"include":"#meta"},{"include":"#commodity"},{"include":"#illegal"}]},{"begin":"([0-9]{4})([\\\\-|/])([0-9]{2})([\\\\-|/])([0-9]{2})\\\\s(note|document)","beginCaptures":{"1":{"name":"constant.numeric.date.year.beancount"},"2":{"name":"punctuation.separator.beancount"},"3":{"name":"constant.numeric.date.month.beancount"},"4":{"name":"punctuation.separator.beancount"},"5":{"name":"constant.numeric.date.day.beancount"},"6":{"name":"support.function.directive.beancount"}},"comment":"Note/Document directive","end":"(?=(^\\\\s*$|^\\\\S))","name":"meta.directive.dated.beancount","patterns":[{"include":"#comments"},{"include":"#meta"},{"include":"#account"},{"include":"#string"},{"include":"#illegal"}]},{"begin":"([0-9]{4})([\\\\-|/])([0-9]{2})([\\\\-|/])([0-9]{2})\\\\s(price)","beginCaptures":{"1":{"name":"constant.numeric.date.year.beancount"},"2":{"name":"punctuation.separator.beancount"},"3":{"name":"constant.numeric.date.month.beancount"},"4":{"name":"punctuation.separator.beancount"},"5":{"name":"constant.numeric.date.day.beancount"},"6":{"name":"support.function.directive.beancount"}},"comment":"Price directives","end":"(?=(^\\\\s*$|^\\\\S))","name":"meta.directive.dated.beancount","patterns":[{"include":"#comments"},{"include":"#meta"},{"include":"#commodity"},{"include":"#amount"},{"include":"#illegal"}]},{"begin":"([0-9]{4})([\\\\-|/])([0-9]{2})([\\\\-|/])([0-9]{2})\\\\s(balance)","beginCaptures":{"1":{"name":"constant.numeric.date.year.beancount"},"2":{"name":"punctuation.separator.beancount"},"3":{"name":"constant.numeric.date.month.beancount"},"4":{"name":"punctuation.separator.beancount"},"5":{"name":"constant.numeric.date.day.beancount"},"6":{"name":"support.function.directive.beancount"}},"comment":"Balance directives","end":"(?=(^\\\\s*$|^\\\\S))","name":"meta.directive.dated.beancount","patterns":[{"include":"#comments"},{"include":"#meta"},{"include":"#account"},{"include":"#amount"},{"include":"#illegal"}]},{"begin":"([0-9]{4})([\\\\-|/])([0-9]{2})([\\\\-|/])([0-9]{2})\\\\s*(txn|[*!&#?%PSTCURM])\\\\s*(\\".*?\\")?\\\\s*(\\".*?\\")?","beginCaptures":{"1":{"name":"constant.numeric.date.year.beancount"},"2":{"name":"punctuation.separator.beancount"},"3":{"name":"constant.numeric.date.month.beancount"},"4":{"name":"punctuation.separator.beancount"},"5":{"name":"constant.numeric.date.day.beancount"},"6":{"name":"support.function.directive.beancount"},"7":{"name":"string.quoted.tiers.beancount"},"8":{"name":"string.quoted.narration.beancount"}},"comment":"Transaction directive","end":"(?=(^\\\\s*$|^\\\\S))","name":"meta.directive.transaction.beancount","patterns":[{"include":"#comments"},{"include":"#posting"},{"include":"#meta"},{"include":"#tag"},{"include":"#link"},{"include":"#illegal"}]}],"repository":{"account":{"begin":"([A-Z][a-z]+)(:)","beginCaptures":{"1":{"name":"variable.language.beancount"},"2":{"name":"punctuation.separator.beancount"}},"end":"\\\\s","name":"meta.account.beancount","patterns":[{"begin":"(\\\\S+)([:]?)","beginCaptures":{"1":{"name":"variable.other.account.beancount"},"2":{"name":"punctuation.separator.beancount"}},"comment":"Sub accounts","end":"([:]?)|(\\\\s)","patterns":[{"include":"$self"},{"include":"#illegal"}]}]},"amount":{"captures":{"1":{"name":"keyword.operator.modifier.beancount"},"2":{"name":"constant.numeric.currency.beancount"},"3":{"name":"entity.name.type.commodity.beancount"}},"match":"([\\\\-|\\\\+]?)(\\\\d+(?:,\\\\d{3})*(?:\\\\.\\\\d*)?)\\\\s*([A-Z][A-Z0-9\\\\'\\\\.\\\\_\\\\-]{0,22}[A-Z0-9])","name":"meta.amount.beancount"},"bool":{"captures":{"0":{"name":"constant.language.bool.beancount"},"2":{"name":"constant.numeric.currency.beancount"},"3":{"name":"entity.name.type.commodity.beancount"}},"match":"TRUE|FALSE"},"comments":{"captures":{"1":{"name":"comment.line.beancount"}},"match":"(;.*)$"},"commodity":{"match":"([A-Z][A-Z0-9\\\\'\\\\.\\\\_\\\\-]{0,22}[A-Z0-9])","name":"entity.name.type.commodity.beancount"},"cost":{"begin":"\\\\{\\\\{?","beginCaptures":{"0":{"name":"keyword.operator.assignment.beancount"}},"end":"\\\\}\\\\}?","endCaptures":{"0":{"name":"keyword.operator.assignment.beancount"}},"name":"meta.cost.beancount","patterns":[{"include":"#amount"},{"include":"#date"},{"match":"\\\\,","name":"punctuation.separator.beancount"},{"include":"#illegal"}]},"date":{"captures":{"1":{"name":"constant.numeric.date.year.beancount"},"2":{"name":"punctuation.separator.beancount"},"3":{"name":"constant.numeric.date.month.beancount"},"4":{"name":"punctuation.separator.beancount"},"5":{"name":"constant.numeric.date.day.beancount"}},"match":"([0-9]{4})([\\\\-|/])([0-9]{2})([\\\\-|/])([0-9]{2})","name":"meta.date.beancount"},"flag":{"match":"(?<=\\\\s)([*!&#?%PSTCURM])(?=\\\\s+)","name":"keyword.other.beancount"},"illegal":{"match":"[^\\\\s]","name":"invalid.illegal.unrecognized.beancount"},"link":{"captures":{"1":{"name":"keyword.operator.link.beancount"},"2":{"name":"markup.underline.link.beancount"}},"match":"(\\\\^)([A-Za-z0-9\\\\-_/.]+)"},"meta":{"begin":"^\\\\s*([a-z][A-Za-z0-9\\\\-_]+)([:])","beginCaptures":{"1":{"name":"keyword.operator.directive.beancount"},"2":{"name":"punctuation.separator.beancount"}},"end":"\\\\n","name":"meta.meta.beancount","patterns":[{"include":"#string"},{"include":"#account"},{"include":"#bool"},{"include":"#commodity"},{"include":"#date"},{"include":"#tag"},{"include":"#amount"},{"include":"#number"},{"include":"#comments"},{"include":"#illegal"}]},"number":{"captures":{"1":{"name":"keyword.operator.modifier.beancount"},"2":{"name":"constant.numeric.currency.beancount"}},"match":"([\\\\-|\\\\+]?)(\\\\d+(?:,\\\\d{3})*(?:\\\\.\\\\d*)?)"},"posting":{"begin":"^\\\\s+(?=([A-Z\\\\!]))","end":"(?=(^\\\\s*$|^\\\\S|^\\\\s*[A-Z]))","name":"meta.posting.beancount","patterns":[{"include":"#meta"},{"include":"#comments"},{"include":"#flag"},{"include":"#account"},{"include":"#amount"},{"include":"#cost"},{"include":"#date"},{"include":"#price"},{"include":"#illegal"}]},"price":{"begin":"\\\\@\\\\@?","beginCaptures":{"0":{"name":"keyword.operator.assignment.beancount"}},"end":"(?=(;|\\\\n))","name":"meta.price.beancount","patterns":[{"include":"#amount"},{"include":"#illegal"}]},"string":{"begin":"\\\\\\"","end":"\\\\\\"","name":"string.quoted.double.beancount","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.beancount"}]},"tag":{"captures":{"1":{"name":"keyword.operator.tag.beancount"},"2":{"name":"entity.name.tag.beancount"}},"match":"(#)([A-Za-z0-9\\\\-_/.]+)"}},"scopeName":"text.beancount"}`)),nte=[tte]});var z8={};x(z8,{default:()=>rte});var ate,rte,U8=_(()=>{ate=Object.freeze(JSON.parse(`{"displayName":"Berry","name":"berry","patterns":[{"include":"#controls"},{"include":"#strings"},{"include":"#comment-block"},{"include":"#comments"},{"include":"#keywords"},{"include":"#function"},{"include":"#member"},{"include":"#identifier"},{"include":"#number"},{"include":"#operator"}],"repository":{"comment-block":{"begin":"\\\\#\\\\-","end":"\\\\-#","name":"comment.berry","patterns":[{}]},"comments":{"begin":"\\\\#","end":"\\\\n","name":"comment.line.berry","patterns":[{}]},"controls":{"patterns":[{"match":"\\\\b(if|elif|else|for|while|do|end|break|continue|return|try|except|raise)\\\\b","name":"keyword.control.berry"}]},"function":{"patterns":[{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*(?=\\\\s*\\\\())","name":"entity.name.function.berry"}]},"identifier":{"patterns":[{"match":"\\\\b[_A-Za-z]\\\\w+\\\\b","name":"identifier.berry"}]},"keywords":{"patterns":[{"match":"\\\\b(var|static|def|class|true|false|nil|self|super|import|as|_class)\\\\b","name":"keyword.berry"}]},"member":{"patterns":[{"captures":{"0":{"name":"entity.other.attribute-name.berry"}},"match":"\\\\.([a-zA-Z_][a-zA-Z0-9_]*)"}]},"number":{"patterns":[{"match":"0x[a-fA-F0-9]+|\\\\d+|(\\\\d+\\\\.?|\\\\.\\\\d)\\\\d*([eE][+-]?\\\\d+)?","name":"constant.numeric.berry"}]},"operator":{"patterns":[{"match":"\\\\(|\\\\)|\\\\[|\\\\]|\\\\.|-|\\\\!|~|\\\\*|/|%|\\\\+|&|\\\\^|\\\\||<|>|=|:","name":"keyword.operator.berry"}]},"strings":{"patterns":[{"begin":"(\\"|')","end":"\\\\1","name":"string.quoted.double.berry","patterns":[{"match":"(\\\\\\\\x[\\\\h]{2})|(\\\\\\\\[0-7]{3})|(\\\\\\\\\\\\\\\\)|(\\\\\\\\\\")|(\\\\\\\\')|(\\\\\\\\a)|(\\\\\\\\b)|(\\\\\\\\f)|(\\\\\\\\n)|(\\\\\\\\r)|(\\\\\\\\t)|(\\\\\\\\v)","name":"constant.character.escape.berry"}]},{"begin":"f(\\"|')","end":"\\\\1","name":"string.quoted.other.berry","patterns":[{"match":"(\\\\\\\\x[\\\\h]{2})|(\\\\\\\\[0-7]{3})|(\\\\\\\\\\\\\\\\)|(\\\\\\\\\\")|(\\\\\\\\')|(\\\\\\\\a)|(\\\\\\\\b)|(\\\\\\\\f)|(\\\\\\\\n)|(\\\\\\\\r)|(\\\\\\\\t)|(\\\\\\\\v)","name":"constant.character.escape.berry"},{"match":"\\\\{\\\\{[^\\\\}]*\\\\}\\\\}","name":"string.quoted.other.berry"},{"begin":"\\\\{","end":"\\\\}","name":"keyword.other.unit.berry","patterns":[{"include":"#keywords"},{"include":"#numbers"},{"include":"#identifier"},{"include":"#operator"},{"include":"#member"},{"include":"#function"}]}]}]}},"scopeName":"source.berry","aliases":["be"]}`)),rte=[ate]});var H8={};x(H8,{default:()=>ote});var ite,ote,Z8=_(()=>{ite=Object.freeze(JSON.parse('{"displayName":"BibTeX","name":"bibtex","patterns":[{"captures":{"0":{"name":"punctuation.definition.comment.bibtex"}},"match":"@(?i:comment)(?=[\\\\s{(])","name":"comment.block.at-sign.bibtex"},{"begin":"((@)(?i:preamble))\\\\s*(\\\\{)\\\\s*","beginCaptures":{"1":{"name":"keyword.other.preamble.bibtex"},"2":{"name":"punctuation.definition.keyword.bibtex"},"3":{"name":"punctuation.section.preamble.begin.bibtex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.preamble.end.bibtex"}},"name":"meta.preamble.braces.bibtex","patterns":[{"include":"#field_value"}]},{"begin":"((@)(?i:preamble))\\\\s*(\\\\()\\\\s*","beginCaptures":{"1":{"name":"keyword.other.preamble.bibtex"},"2":{"name":"punctuation.definition.keyword.bibtex"},"3":{"name":"punctuation.section.preamble.begin.bibtex"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.preamble.end.bibtex"}},"name":"meta.preamble.parenthesis.bibtex","patterns":[{"include":"#field_value"}]},{"begin":"((@)(?i:string))\\\\s*(\\\\{)\\\\s*([a-zA-Z!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~]*)","beginCaptures":{"1":{"name":"keyword.other.string-constant.bibtex"},"2":{"name":"punctuation.definition.keyword.bibtex"},"3":{"name":"punctuation.section.string-constant.begin.bibtex"},"4":{"name":"variable.other.bibtex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.string-constant.end.bibtex"}},"name":"meta.string-constant.braces.bibtex","patterns":[{"include":"#field_value"}]},{"begin":"((@)(?i:string))\\\\s*(\\\\()\\\\s*([a-zA-Z!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~]*)","beginCaptures":{"1":{"name":"keyword.other.string-constant.bibtex"},"2":{"name":"punctuation.definition.keyword.bibtex"},"3":{"name":"punctuation.section.string-constant.begin.bibtex"},"4":{"name":"variable.other.bibtex"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.string-constant.end.bibtex"}},"name":"meta.string-constant.parenthesis.bibtex","patterns":[{"include":"#field_value"}]},{"begin":"((@)[a-zA-Z!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~]*)\\\\s*(\\\\{)\\\\s*([^\\\\s,}]*)","beginCaptures":{"1":{"name":"keyword.other.entry-type.bibtex"},"2":{"name":"punctuation.definition.keyword.bibtex"},"3":{"name":"punctuation.section.entry.begin.bibtex"},"4":{"name":"entity.name.type.entry-key.bibtex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.entry.end.bibtex"}},"name":"meta.entry.braces.bibtex","patterns":[{"begin":"([a-zA-Z!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~]*)\\\\s*(\\\\=)","beginCaptures":{"1":{"name":"support.function.key.bibtex"},"2":{"name":"punctuation.separator.key-value.bibtex"}},"end":"(?=[,}])","name":"meta.key-assignment.bibtex","patterns":[{"include":"#field_value"}]}]},{"begin":"((@)[a-zA-Z!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~]*)\\\\s*(\\\\()\\\\s*([^\\\\s,]*)","beginCaptures":{"1":{"name":"keyword.other.entry-type.bibtex"},"2":{"name":"punctuation.definition.keyword.bibtex"},"3":{"name":"punctuation.section.entry.begin.bibtex"},"4":{"name":"entity.name.type.entry-key.bibtex"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.entry.end.bibtex"}},"name":"meta.entry.parenthesis.bibtex","patterns":[{"begin":"([a-zA-Z!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~]*)\\\\s*(\\\\=)","beginCaptures":{"1":{"name":"support.function.key.bibtex"},"2":{"name":"punctuation.separator.key-value.bibtex"}},"end":"(?=[,)])","name":"meta.key-assignment.bibtex","patterns":[{"include":"#field_value"}]}]},{"begin":"[^@\\\\n]","end":"(?=@)","name":"comment.block.bibtex"}],"repository":{"field_value":{"patterns":[{"include":"#string_content"},{"include":"#integer"},{"include":"#string_var"},{"match":"#","name":"keyword.operator.bibtex"}]},"integer":{"captures":{"1":{"name":"constant.numeric.bibtex"}},"match":"\\\\s*(\\\\d+)\\\\s*"},"nested_braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.bibtex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.group.end.bibtex"}},"patterns":[{"include":"#nested_braces"}]},"string_content":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.bibtex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.string.end.bibtex"}},"patterns":[{"include":"#nested_braces"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.bibtex"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.bibtex"}},"patterns":[{"include":"#nested_braces"}]}]},"string_var":{"captures":{"0":{"name":"support.variable.bibtex"}},"match":"[a-zA-Z!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\-./:;<>?@\\\\[\\\\\\\\\\\\]^_`|~]*"}},"scopeName":"text.bibtex"}')),ote=[ite]});var Y8={};x(Y8,{default:()=>cte});var ste,cte,W8=_(()=>{ste=Object.freeze(JSON.parse(`{"displayName":"Bicep","fileTypes":[".bicep"],"name":"bicep","patterns":[{"include":"#expression"},{"include":"#comments"}],"repository":{"array-literal":{"begin":"\\\\[(?!(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*\\\\bfor\\\\b)","end":"]","name":"meta.array-literal.bicep","patterns":[{"include":"#expression"},{"include":"#comments"}]},"block-comment":{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.bicep"},"comments":{"patterns":[{"include":"#line-comment"},{"include":"#block-comment"}]},"decorator":{"begin":"@(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*(?=\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b)","end":"","name":"meta.decorator.bicep","patterns":[{"include":"#expression"},{"include":"#comments"}]},"directive":{"begin":"#\\\\b[_a-zA-Z-0-9]+\\\\b","end":"$","name":"meta.directive.bicep","patterns":[{"include":"#directive-variable"},{"include":"#comments"}]},"directive-variable":{"match":"\\\\b[_a-zA-Z-0-9]+\\\\b","name":"keyword.control.declaration.bicep"},"escape-character":{"match":"\\\\\\\\(u{[0-9A-Fa-f]+}|n|r|t|\\\\\\\\|'|\\\\\${)","name":"constant.character.escape.bicep"},"expression":{"patterns":[{"include":"#string-literal"},{"include":"#string-verbatim"},{"include":"#numeric-literal"},{"include":"#named-literal"},{"include":"#object-literal"},{"include":"#array-literal"},{"include":"#keyword"},{"include":"#identifier"},{"include":"#function-call"},{"include":"#decorator"},{"include":"#lambda-start"},{"include":"#directive"}]},"function-call":{"begin":"(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b)(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.bicep"}},"end":"\\\\)","name":"meta.function-call.bicep","patterns":[{"include":"#expression"},{"include":"#comments"}]},"identifier":{"match":"\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b(?!(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*\\\\()","name":"variable.other.readwrite.bicep"},"keyword":{"match":"\\\\b(metadata|targetScope|resource|module|param|var|output|for|in|if|existing|import|as|type|with|using|extends|func|assert|extension)\\\\b","name":"keyword.control.declaration.bicep"},"lambda-start":{"begin":"(\\\\((?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*(,(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*)*\\\\)|\\\\((?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*\\\\)|(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*)(?=(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*=>)","beginCaptures":{"1":{"name":"meta.undefined.bicep","patterns":[{"include":"#identifier"},{"include":"#comments"}]}},"end":"(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*=>","name":"meta.lambda-start.bicep"},"line-comment":{"match":"//.*(?=$)","name":"comment.line.double-slash.bicep"},"named-literal":{"match":"\\\\b(true|false|null)\\\\b","name":"constant.language.bicep"},"numeric-literal":{"match":"[0-9]+","name":"constant.numeric.bicep"},"object-literal":{"begin":"{","end":"}","name":"meta.object-literal.bicep","patterns":[{"include":"#object-property-key"},{"include":"#expression"},{"include":"#comments"}]},"object-property-key":{"match":"\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b(?=(?:[ \\\\t\\\\r\\\\n]|\\\\/\\\\*(?:\\\\*(?!\\\\/)|[^*])*\\\\*\\\\/)*:)","name":"variable.other.property.bicep"},"string-literal":{"begin":"'(?!'')","end":"'","name":"string.quoted.single.bicep","patterns":[{"include":"#escape-character"},{"include":"#string-literal-subst"}]},"string-literal-subst":{"begin":"(?Ve});var lte,Ve,Nn=_(()=>{lte=Object.freeze(JSON.parse('{"displayName":"SQL","name":"sql","patterns":[{"match":"((?]?=|<>|<|>","name":"keyword.operator.comparison.sql"},{"match":"-|\\\\+|/","name":"keyword.operator.math.sql"},{"match":"\\\\|\\\\|","name":"keyword.operator.concatenator.sql"},{"captures":{"1":{"name":"support.function.aggregate.sql"}},"match":"(?i)\\\\b(approx_count_distinct|approx_percentile_cont|approx_percentile_disc|avg|checksum_agg|count|count_big|group|grouping|grouping_id|max|min|sum|stdev|stdevp|var|varp)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.analytic.sql"}},"match":"(?i)\\\\b(cume_dist|first_value|lag|last_value|lead|percent_rank|percentile_cont|percentile_disc)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.bitmanipulation.sql"}},"match":"(?i)\\\\b(bit_count|get_bit|left_shift|right_shift|set_bit)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.conversion.sql"}},"match":"(?i)\\\\b(cast|convert|parse|try_cast|try_convert|try_parse)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.collation.sql"}},"match":"(?i)\\\\b(collationproperty|tertiary_weights)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.cryptographic.sql"}},"match":"(?i)\\\\b(asymkey_id|asymkeyproperty|certproperty|cert_id|crypt_gen_random|decryptbyasymkey|decryptbycert|decryptbykey|decryptbykeyautoasymkey|decryptbykeyautocert|decryptbypassphrase|encryptbyasymkey|encryptbycert|encryptbykey|encryptbypassphrase|hashbytes|is_objectsigned|key_guid|key_id|key_name|signbyasymkey|signbycert|symkeyproperty|verifysignedbycert|verifysignedbyasymkey)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.cursor.sql"}},"match":"(?i)\\\\b(cursor_status)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.datetime.sql"}},"match":"(?i)\\\\b(sysdatetime|sysdatetimeoffset|sysutcdatetime|current_time(stamp)?|getdate|getutcdate|datename|datepart|day|month|year|datefromparts|datetime2fromparts|datetimefromparts|datetimeoffsetfromparts|smalldatetimefromparts|timefromparts|datediff|dateadd|datetrunc|eomonth|switchoffset|todatetimeoffset|isdate|date_bucket)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.datatype.sql"}},"match":"(?i)\\\\b(datalength|ident_current|ident_incr|ident_seed|identity|sql_variant_property)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.expression.sql"}},"match":"(?i)\\\\b(coalesce|nullif)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.globalvar.sql"}},"match":"(?dte});var Ate,dte,V8=_(()=>{Ye();Ja();Nn();Qe();zr();rt();Ate=Object.freeze(JSON.parse(`{"displayName":"Blade","fileTypes":["blade.php"],"foldingStartMarker":"(/\\\\*|\\\\{\\\\s*$|<<))","beginCaptures":{"0":{"name":"punctuation.whitespace.embedded.leading.php"}},"end":"(?!\\\\G)(\\\\s*$\\\\n)?","endCaptures":{"0":{"name":"punctuation.whitespace.embedded.trailing.php"}},"patterns":[{"begin":"<\\\\?(?i:php|=)?","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"}},"contentName":"source.php","end":"(\\\\?)>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"source.php"}},"name":"meta.embedded.block.php","patterns":[{"include":"#language"}]}]},{"begin":"<\\\\?(?i:php|=)?(?![^?]*\\\\?>)","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"}},"contentName":"source.php","end":"(\\\\?)>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"source.php"}},"name":"meta.embedded.block.php","patterns":[{"include":"#language"}]},{"begin":"<\\\\?(?i:php|=)?","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"}},"name":"meta.embedded.line.php","patterns":[{"captures":{"1":{"name":"source.php"},"2":{"name":"punctuation.section.embedded.end.php"},"3":{"name":"source.php"}},"match":"\\\\G(\\\\s*)((\\\\?))(?=>)","name":"meta.special.empty-tag.php"},{"begin":"\\\\G","contentName":"source.php","end":"(\\\\?)(?=>)","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"source.php"}},"patterns":[{"include":"#language"}]}]}]}},"name":"blade","patterns":[{"include":"text.html.basic"}],"repository":{"balance_brackets":{"patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#balance_brackets"}]},{"match":"[^()]+"}]},"blade":{"patterns":[{"begin":"{{--","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.blade"}},"end":"--}}","endCaptures":{"0":{"name":"punctuation.definition.comment.end.blade"}},"name":"comment.block.blade","patterns":[{"begin":"(^\\\\s*)(?=<\\\\?(?![^?]*\\\\?>))","beginCaptures":{"0":{"name":"punctuation.whitespace.embedded.leading.php"}},"end":"(?!\\\\G)(\\\\s*$\\\\n)?","endCaptures":{"0":{"name":"punctuation.whitespace.embedded.trailing.php"}},"name":"invalid.illegal.php-code-in-comment.blade","patterns":[{"begin":"<\\\\?(?i:php|=)?","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"}},"contentName":"source.php","end":"(\\\\?)>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"source.php"}},"name":"meta.embedded.block.php","patterns":[{"include":"#language"}]}]},{"begin":"<\\\\?(?i:php|=)?(?![^?]*\\\\?>)","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"}},"contentName":"source.php","end":"(\\\\?)>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"source.php"}},"name":"invalid.illegal.php-code-in-comment.blade.meta.embedded.block.php","patterns":[{"include":"#language"}]},{"begin":"<\\\\?(?i:php|=)?","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"}},"name":"invalid.illegal.php-code-in-comment.blade.meta.embedded.line.php","patterns":[{"captures":{"1":{"name":"source.php"},"2":{"name":"punctuation.section.embedded.end.php"},"3":{"name":"source.php"}},"match":"\\\\G(\\\\s*)((\\\\?))(?=>)","name":"meta.special.empty-tag.php"},{"begin":"\\\\G","contentName":"source.php","end":"(\\\\?)(?=>)","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"source.php"}},"patterns":[{"include":"#language"}]}]}]},{"begin":"(?)","name":"comment.line.double-slash.php"}]},{"begin":"(^\\\\s+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.php"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"end":"\\\\n|(?=\\\\?>)","name":"comment.line.number-sign.php"}]}]},"constants":{"patterns":[{"match":"(?i)\\\\b(TRUE|FALSE|NULL|__(FILE|DIR|FUNCTION|CLASS|METHOD|LINE|NAMESPACE)__|ON|OFF|YES|NO|NL|BR|TAB)\\\\b","name":"constant.language.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(DEFAULT_INCLUDE_PATH|EAR_(INSTALL|EXTENSION)_DIR|E_(ALL|COMPILE_(ERROR|WARNING)|CORE_(ERROR|WARNING)|DEPRECATED|ERROR|NOTICE|PARSE|RECOVERABLE_ERROR|STRICT|USER_(DEPRECATED|ERROR|NOTICE|WARNING)|WARNING)|PHP_(ROUND_HALF_(DOWN|EVEN|ODD|UP)|(MAJOR|MINOR|RELEASE)_VERSION|MAXPATHLEN|BINDIR|SHLIB_SUFFIX|SYSCONFDIR|SAPI|CONFIG_FILE_(PATH|SCAN_DIR)|INT_(MAX|SIZE)|ZTS|OS|OUTPUT_HANDLER_(START|CONT|END)|DEBUG|DATADIR|URL_(SCHEME|HOST|USER|PORT|PASS|PATH|QUERY|FRAGMENT)|PREFIX|EXTRA_VERSION|EXTENSION_DIR|EOL|VERSION(_ID)?|WINDOWS_(NT_(SERVER|DOMAIN_CONTROLLER|WORKSTATION)|VERSION_(MAJOR|MINOR)|BUILD|SUITEMASK|SP_(MAJOR|MINOR)|PRODUCTTYPE|PLATFORM)|LIBDIR|LOCALSTATEDIR)|STD(ERR|IN|OUT)|ZEND_(DEBUG_BUILD|THREAD_SAFE))\\\\b","name":"support.constant.core.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(__COMPILER_HALT_OFFSET__|AB(MON_(1|2|3|4|5|6|7|8|9|10|11|12)|DAY[1-7])|AM_STR|ASSERT_(ACTIVE|BAIL|CALLBACK_QUIET_EVAL|WARNING)|ALT_DIGITS|CASE_(UPPER|LOWER)|CHAR_MAX|CONNECTION_(ABORTED|NORMAL|TIMEOUT)|CODESET|COUNT_(NORMAL|RECURSIVE)|CREDITS_(ALL|DOCS|FULLPAGE|GENERAL|GROUP|MODULES|QA|SAPI)|CRYPT_(BLOWFISH|EXT_DES|MD5|SHA(256|512)|SALT_LENGTH|STD_DES)|CURRENCY_SYMBOL|D_(T_)?FMT|DATE_(ATOM|COOKIE|ISO8601|RFC(822|850|1036|1123|2822|3339)|RSS|W3C)|DAY_[1-7]|DECIMAL_POINT|DIRECTORY_SEPARATOR|ENT_(COMPAT|IGNORE|(NO)?QUOTES)|EXTR_(IF_EXISTS|OVERWRITE|PREFIX_(ALL|IF_EXISTS|INVALID|SAME)|REFS|SKIP)|ERA(_(D_(T_)?FMT)|T_FMT|YEAR)?|FRAC_DIGITS|GROUPING|HASH_HMAC|HTML_(ENTITIES|SPECIALCHARS)|INF|INFO_(ALL|CREDITS|CONFIGURATION|ENVIRONMENT|GENERAL|LICENSEMODULES|VARIABLES)|INI_(ALL|CANNER_(NORMAL|RAW)|PERDIR|SYSTEM|USER)|INT_(CURR_SYMBOL|FRAC_DIGITS)|LC_(ALL|COLLATE|CTYPE|MESSAGES|MONETARY|NUMERIC|TIME)|LOCK_(EX|NB|SH|UN)|LOG_(ALERT|AUTH(PRIV)?|CRIT|CRON|CONS|DAEMON|DEBUG|EMERG|ERR|INFO|LOCAL[1-7]|LPR|KERN|MAIL|NEWS|NODELAY|NOTICE|NOWAIT|ODELAY|PID|PERROR|WARNING|SYSLOG|UCP|USER)|M_(1_PI|SQRT(1_2|2|3|PI)|2_(SQRT)?PI|PI(_(2|4))?|E(ULER)?|LN(10|2|PI)|LOG(10|2)E)|MON_(1|2|3|4|5|6|7|8|9|10|11|12|DECIMAL_POINT|GROUPING|THOUSANDS_SEP)|N_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|NAN|NEGATIVE_SIGN|NO(EXPR|STR)|P_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|PM_STR|POSITIVE_SIGN|PATH(_SEPARATOR|INFO_(EXTENSION|(BASE|DIR|FILE)NAME))|RADIXCHAR|SEEK_(CUR|END|SET)|SORT_(ASC|DESC|LOCALE_STRING|REGULAR|STRING)|STR_PAD_(BOTH|LEFT|RIGHT)|T_FMT(_AMPM)?|THOUSEP|THOUSANDS_SEP|UPLOAD_ERR_(CANT_WRITE|EXTENSION|(FORM|INI)_SIZE|NO_(FILE|TMP_DIR)|OK|PARTIAL)|YES(EXPR|STR))\\\\b","name":"support.constant.std.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(GLOB_(MARK|BRACE|NO(SORT|CHECK|ESCAPE)|ONLYDIR|ERR|AVAILABLE_FLAGS)|XML_(SAX_IMPL|(DTD|DOCUMENT(_(FRAG|TYPE))?|HTML_DOCUMENT|NOTATION|NAMESPACE_DECL|PI|COMMENT|DATA_SECTION|TEXT)_NODE|OPTION_(SKIP_(TAGSTART|WHITE)|CASE_FOLDING|TARGET_ENCODING)|ERROR_((BAD_CHAR|(ATTRIBUTE_EXTERNAL|BINARY|PARAM|RECURSIVE)_ENTITY)_REF|MISPLACED_XML_PI|SYNTAX|NONE|NO_(MEMORY|ELEMENTS)|TAG_MISMATCH|INCORRECT_ENCODING|INVALID_TOKEN|DUPLICATE_ATTRIBUTE|UNCLOSED_(CDATA_SECTION|TOKEN)|UNDEFINED_ENTITY|UNKNOWN_ENCODING|JUNK_AFTER_DOC_ELEMENT|PARTIAL_CHAR|EXTERNAL_ENTITY_HANDLING|ASYNC_ENTITY)|ENTITY_(((REF|DECL)_)?NODE)|ELEMENT(_DECL)?_NODE|LOCAL_NAMESPACE|ATTRIBUTE_(NMTOKEN(S)?|NOTATION|NODE)|CDATA|ID(REF(S)?)?|DECL_NODE|ENTITY|ENUMERATION)|MHASH_(RIPEMD(128|160|256|320)|GOST|MD(2|4|5)|SHA(1|224|256|384|512)|SNEFRU256|HAVAL(128|160|192|224|256)|CRC23(B)?|TIGER(128|160)?|WHIRLPOOL|ADLER32)|MYSQL_(BOTH|NUM|CLIENT_(SSL|COMPRESS|IGNORE_SPACE|INTERACTIVE|ASSOC))|MYSQLI_(REPORT_(STRICT|INDEX|OFF|ERROR|ALL)|REFRESH_(GRANT|MASTER|BACKUP_LOG|STATUS|SLAVE|HOSTS|THREADS|TABLES|LOG)|READ_DEFAULT_(FILE|GROUP)|(GROUP|MULTIPLE_KEY|BINARY|BLOB)_FLAG|BOTH|STMT_ATTR_(CURSOR_TYPE|UPDATE_MAX_LENGTH|PREFETCH_ROWS)|STORE_RESULT|SERVER_QUERY_(NO_((GOOD_)?INDEX_USED)|WAS_SLOW)|SET_(CHARSET_NAME|FLAG)|NO_(DEFAULT_VALUE_FLAG|DATA)|NOT_NULL_FLAG|NUM(_FLAG)?|CURSOR_TYPE_(READ_ONLY|SCROLLABLE|NO_CURSOR|FOR_UPDATE)|CLIENT_(SSL|NO_SCHEMA|COMPRESS|IGNORE_SPACE|INTERACTIVE|FOUND_ROWS)|TYPE_(GEOMETRY|((MEDIUM|LONG|TINY)_)?BLOB|BIT|SHORT|STRING|SET|YEAR|NULL|NEWDECIMAL|NEWDATE|CHAR|TIME(STAMP)?|TINY|INT24|INTERVAL|DOUBLE|DECIMAL|DATE(TIME)?|ENUM|VAR_STRING|FLOAT|LONG(LONG)?)|TIME_STAMP_FLAG|INIT_COMMAND|ZEROFILL_FLAG|ON_UPDATE_NOW_FLAG|OPT_(NET_((CMD|READ)_BUFFER_SIZE)|CONNECT_TIMEOUT|INT_AND_FLOAT_NATIVE|LOCAL_INFILE)|DEBUG_TRACE_ENABLED|DATA_TRUNCATED|USE_RESULT|(ENUM|(PART|PRI|UNIQUE)_KEY|UNSIGNED)_FLAG|ASSOC|ASYNC|AUTO_INCREMENT_FLAG)|MCRYPT_(RC(2|6)|RIJNDAEL_(128|192|256)|RAND|GOST|XTEA|MODE_(STREAM|NOFB|CBC|CFB|OFB|ECB)|MARS|BLOWFISH(_COMPAT)?|SERPENT|SKIPJACK|SAFER(64|128|PLUS)|CRYPT|CAST_(128|256)|TRIPLEDES|THREEWAY|TWOFISH|IDEA|(3)?DES|DECRYPT|DEV_(U)?RANDOM|PANAMA|ENCRYPT|ENIGNA|WAKE|LOKI97|ARCFOUR(_IV)?)|STREAM_(REPORT_ERRORS|MUST_SEEK|MKDIR_RECURSIVE|BUFFER_(NONE|FULL|LINE)|SHUT_(RD)?WR|SOCK_(RDM|RAW|STREAM|SEQPACKET|DGRAM)|SERVER_(BIND|LISTEN)|NOTIFY_(REDIRECTED|RESOLVE|MIME_TYPE_IS|SEVERITY_(INFO|ERR|WARN)|COMPLETED|CONNECT|PROGRESS|FILE_SIZE_IS|FAILURE|AUTH_(REQUIRED|RESULT))|CRYPTO_METHOD_((SSLv2(3)?|SSLv3|TLS)_(CLIENT|SERVER))|CLIENT_((ASYNC_)?CONNECT|PERSISTENT)|CAST_(AS_STREAM|FOR_SELECT)|(IGNORE|IS)_URL|IPPROTO_(RAW|TCP|ICMP|IP|UDP)|OOB|OPTION_(READ_(BUFFER|TIMEOUT)|BLOCKING|WRITE_BUFFER)|URL_STAT_(LINK|QUIET)|USE_PATH|PEEK|PF_(INET(6)?|UNIX)|ENFORCE_SAFE_MODE|FILTER_(ALL|READ|WRITE))|SUNFUNCS_RET_(DOUBLE|STRING|TIMESTAMP)|SQLITE_(READONLY|ROW|MISMATCH|MISUSE|BOTH|BUSY|SCHEMA|NOMEM|NOTFOUND|NOTADB|NOLFS|NUM|CORRUPT|CONSTRAINT|CANTOPEN|TOOBIG|INTERRUPT|INTERNAL|IOERR|OK|DONE|PROTOCOL|PERM|ERROR|EMPTY|FORMAT|FULL|LOCKED|ABORT|ASSOC|AUTH)|SQLITE3_(BOTH|BLOB|NUM|NULL|TEXT|INTEGER|OPEN_(READ(ONLY|WRITE)|CREATE)|FLOAT_ASSOC)|CURL(M_(BAD_((EASY)?HANDLE)|CALL_MULTI_PERFORM|INTERNAL_ERROR|OUT_OF_MEMORY|OK)|MSG_DONE|SSH_AUTH_(HOST|NONE|DEFAULT|PUBLICKEY|PASSWORD|KEYBOARD)|CLOSEPOLICY_(SLOWEST|CALLBACK|OLDEST|LEAST_(RECENTLY_USED|TRAFFIC)|INFO_(REDIRECT_(COUNT|TIME)|REQUEST_SIZE|SSL_VERIFYRESULT|STARTTRANSFER_TIME|(SIZE|SPEED)_(DOWNLOAD|UPLOAD)|HTTP_CODE|HEADER_(OUT|SIZE)|NAMELOOKUP_TIME|CONNECT_TIME|CONTENT_(TYPE|LENGTH_(DOWNLOAD|UPLOAD))|CERTINFO|TOTAL_TIME|PRIVATE|PRETRANSFER_TIME|EFFECTIVE_URL|FILETIME)|OPT_(RESUME_FROM|RETURNTRANSFER|REDIR_PROTOCOLS|REFERER|READ(DATA|FUNCTION)|RANGE|RANDOM_FILE|MAX(CONNECTS|REDIRS)|BINARYTRANSFER|BUFFERSIZE|SSH_(HOST_PUBLIC_KEY_MD5|(PRIVATE|PUBLIC)_KEYFILE)|AUTH_TYPES)|SSL(CERT(TYPE|PASSWD)?|ENGINE(_DEFAULT)?|VERSION|KEY(TYPE|PASSWD)?)|SSL_(CIPHER_LIST|VERIFY(HOST|PEER))|STDERR|HTTP(GET|HEADER|200ALIASES|_VERSION|PROXYTUNNEL|AUTH)|HEADER(FUNCTION)?|NO(BODY|SIGNAL|PROGRESS)|NETRC|CRLF|CONNECTTIMEOUT(_MS)?|COOKIE(SESSION|JAR|FILE)?|CUSTOMREQUEST|CERTINFO|CLOSEPOLICY|CA(INFO|PATH)|TRANSFERTEXT|TCP_NODELAY|TIME(CONDITION|OUT(_MS)?|VALUE)|INTERFACE|INFILE(SIZE)?|IPRESOLVE|DNS_(CACHE_TIMEOUT|USE_GLOBAL_CACHE)|URL|USER(AGENT|PWD)|UNRESTRICTED_AUTH|UPLOAD|PRIVATE|PROGRESSFUNCTION|PROXY(TYPE|USERPWD|PORT|AUTH)?|PROTOCOLS|PORT|POST(REDIR|QUOTE|FIELDS)?|PUT|EGDSOCKET|ENCODING|VERBOSE|KRB4LEVEL|KEYPASSWD|QUOTE|FRESH_CONNECT|FTP(APPEND|LISTONLY|PORT|SSLAUTH)|FTP_(SSL|SKIP_PASV_IP|CREATE_MISSING_DIRS|USE_EP(RT|SV)|FILEMETHOD)|FILE(TIME)?|FORBID_REUSE|FOLLOWLOCATION|FAILONERROR|WRITE(FUNCTION|HEADER)|LOW_SPEED_(LIMIT|TIME)|AUTOREFERER)|PROXY_(HTTP|SOCKS(4|5))|PROTO_(SCP|SFTP|HTTP(S)?|TELNET|TFTP|DICT|FTP(S)?|FILE|LDAP(S)?|ALL)|E_((RECV|READ)_ERROR|GOT_NOTHING|MALFORMAT_USER|BAD_(CONTENT_ENCODING|CALLING_ORDER|PASSWORD_ENTERED|FUNCTION_ARGUMENT)|SSH|SSL_(CIPHER|CONNECT_ERROR|CERTPROBLEM|CACERT|PEER_CERTIFICATE|ENGINE_(NOTFOUND|SETFAILED))|SHARE_IN_USE|SEND_ERROR|HTTP_(RANGE_ERROR|NOT_FOUND|PORT_FAILED|POST_ERROR)|COULDNT_(RESOLVE_(HOST|PROXY)|CONNECT)|TOO_MANY_REDIRECTS|TELNET_OPTION_SYNTAX|OBSOLETE|OUT_OF_MEMORY|OPERATION|TIMEOUTED|OK|URL_MALFORMAT(_USER)?|UNSUPPORTED_PROTOCOL|UNKNOWN_TELNET_OPTION|PARTIAL_FILE|FTP_(BAD_DOWNLOAD_RESUME|SSL_FAILED|COULDNT_(RETR_FILE|GET_SIZE|STOR_FILE|SET_(BINARY|ASCII)|USE_REST)|CANT_(GET_HOST|RECONNECT)|USER_PASSWORD_INCORRECT|PORT_FAILED|QUOTE_ERROR|WRITE_ERROR|WEIRD_((PASS|PASV|SERVER|USER)_REPLY|227_FORMAT)|ACCESS_DENIED)|FILESIZE_EXCEEDED|FILE_COULDNT_READ_FILE|FUNCTION_NOT_FOUND|FAILED_INIT|WRITE_ERROR|LIBRARY_NOT_FOUND|LDAP_(SEARCH_FAILED|CANNOT_BIND|INVALID_URL)|ABORTED_BY_CALLBACK)|VERSION_NOW|FTP(METHOD_(MULTI|SINGLE|NO)CWD|SSL_(ALL|NONE|CONTROL|TRY)|AUTH_(DEFAULT|SSL|TLS))|AUTH_(ANY(SAFE)?|BASIC|DIGEST|GSSNEGOTIATE|NTLM))|CURL_(HTTP_VERSION_(1_(0|1)|NONE)|NETRC_(REQUIRED|IGNORED|OPTIONAL)|TIMECOND_(IF(UN)?MODSINCE|LASTMOD)|IPRESOLVE_(V(4|6)|WHATEVER)|VERSION_(SSL|IPV6|KERBEROS4|LIBZ))|IMAGETYPE_(GIF|XBM|BMP|SWF|COUNT|TIFF_(MM|II)|ICO|IFF|UNKNOWN|JB2|JPX|JP2|JPC|JPEG(2000)?|PSD|PNG|WBMP)|INPUT_(REQUEST|GET|SERVER|SESSION|COOKIE|POST|ENV)|ICONV_(MIME_DECODE_(STRICT|CONTINUE_ON_ERROR)|IMPL|VERSION)|DNS_(MX|SRV|SOA|HINFO|NS|NAPTR|CNAME|TXT|PTR|ANY|ALL|AAAA|A(6)?)|DOM(STRING_SIZE_ERR)|DOM_((SYNTAX|HIERARCHY_REQUEST|NO_(MODIFICATION_ALLOWED|DATA_ALLOWED)|NOT_(FOUND|SUPPORTED)|NAMESPACE|INDEX_SIZE|USE_ATTRIBUTE|VALID_(MODIFICATION|STATE|CHARACTER|ACCESS)|PHP|VALIDATION|WRONG_DOCUMENT)_ERR)|JSON_(HEX_(TAG|QUOT|AMP|APOS)|NUMERIC_CHECK|ERROR_(SYNTAX|STATE_MISMATCH|NONE|CTRL_CHAR|DEPTH|UTF8)|FORCE_OBJECT)|PREG_((D_UTF8(_OFFSET)?|NO|INTERNAL|(BACKTRACK|RECURSION)_LIMIT)_ERROR|GREP_INVERT|SPLIT_(NO_EMPTY|(DELIM|OFFSET)_CAPTURE)|SET_ORDER|OFFSET_CAPTURE|PATTERN_ORDER)|PSFS_(PASS_ON|ERR_FATAL|FEED_ME|FLAG_(NORMAL|FLUSH_(CLOSE|INC)))|PCRE_VERSION|POSIX_((F|R|W|X)_OK|S_IF(REG|BLK|SOCK|CHR|IFO))|FNM_(NOESCAPE|CASEFOLD|PERIOD|PATHNAME)|FILTER_(REQUIRE_(SCALAR|ARRAY)|NULL_ON_FAILURE|CALLBACK|DEFAULT|UNSAFE_RAW|SANITIZE_(MAGIC_QUOTES|STRING|STRIPPED|SPECIAL_CHARS|NUMBER_(INT|FLOAT)|URL|EMAIL|ENCODED|FULL_SPCIAL_CHARS)|VALIDATE_(REGEXP|BOOLEAN|INT|IP|URL|EMAIL|FLOAT)|FORCE_ARRAY|FLAG_(SCHEME_REQUIRED|STRIP_(BACKTICK|HIGH|LOW)|HOST_REQUIRED|NONE|NO_(RES|PRIV)_RANGE|ENCODE_QUOTES|IPV(4|6)|PATH_REQUIRED|EMPTY_STRING_NULL|ENCODE_(HIGH|LOW|AMP)|QUERY_REQUIRED|ALLOW_(SCIENTIFIC|HEX|THOUSAND|OCTAL|FRACTION)))|FILE_(BINARY|SKIP_EMPTY_LINES|NO_DEFAULT_CONTEXT|TEXT|IGNORE_NEW_LINES|USE_INCLUDE_PATH|APPEND)|FILEINFO_(RAW|MIME(_(ENCODING|TYPE))?|SYMLINK|NONE|CONTINUE|DEVICES|PRESERVE_ATIME)|FORCE_(DEFLATE|GZIP)|LIBXML_(XINCLUDE|NSCLEAN|NO(XMLDECL|BLANKS|NET|CDATA|ERROR|EMPTYTAG|ENT|WARNING)|COMPACT|DTD(VALID|LOAD|ATTR)|((DOTTED|LOADED)_)?VERSION|PARSEHUGE|ERR_(NONE|ERROR|FATAL|WARNING)))\\\\b","name":"support.constant.ext.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(T_(RETURN|REQUIRE(_ONCE)?|GOTO|GLOBAL|(MINUS|MOD|MUL|XOR)_EQUAL|METHOD_C|ML_COMMENT|BREAK|BOOL_CAST|BOOLEAN_(AND|OR)|BAD_CHARACTER|SR(_EQUAL)?|STRING(_CAST|VARNAME)?|START_HEREDOC|STATIC|SWITCH|SL(_EQUAL)?|HALT_COMPILER|NS_(C|SEPARATOR)|NUM_STRING|NEW|NAMESPACE|CHARACTER|COMMENT|CONSTANT(_ENCAPSED_STRING)?|CONCAT_EQUAL|CONTINUE|CURLY_OPEN|CLOSE_TAG|CLONE|CLASS(_C)?|CASE|CATCH|TRY|THROW|IMPLEMENTS|ISSET|IS_((GREATER|SMALLER)_OR_EQUAL|(NOT_)?(IDENTICAL|EQUAL))|INSTANCEOF|INCLUDE(_ONCE)?|INC|INT_CAST|INTERFACE|INLINE_HTML|IF|OR_EQUAL|OBJECT_(CAST|OPERATOR)|OPEN_TAG(_WITH_ECHO)?|OLD_FUNCTION|DNUMBER|DIR|DIV_EQUAL|DOC_COMMENT|DOUBLE_(ARROW|CAST|COLON)|DOLLAR_OPEN_CURLY_BRACES|DO|DEC|DECLARE|DEFAULT|USE|UNSET(_CAST)?|PRINT|PRIVATE|PROTECTED|PUBLIC|PLUS_EQUAL|PAAMAYIM_NEKUDOTAYIM|EXTENDS|EXIT|EMPTY|ENCAPSED_AND_WHITESPACE|END(SWITCH|IF|DECLARE|FOR(EACH)?|WHILE)|END_HEREDOC|ECHO|EVAL|ELSE(IF)?|VAR(IABLE)?|FINAL|FILE|FOR(EACH)?|FUNC_C|FUNCTION|WHITESPACE|WHILE|LNUMBER|LIST|LINE|LOGICAL_(AND|OR|XOR)|ARRAY_(CAST)?|ABSTRACT|AS|AND_EQUAL))\\\\b","name":"support.constant.parser-token.php"},{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*","name":"constant.other.php"}]},"function-call":{"patterns":[{"begin":"(?xi)\\n(\\n \\\\\\\\?\\\\b # Optional root namespace\\n [a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]* # First namespace\\n (?:\\\\\\\\[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)+ # Additional namespaces\\n)\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#namespace"},{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*","name":"entity.name.function.php"}]},"2":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.function-call.php","patterns":[{"include":"#language"}]},{"begin":"(?i)(\\\\\\\\)?\\\\b([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#namespace"}]},"2":{"patterns":[{"include":"#support"},{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*","name":"entity.name.function.php"}]},"3":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.function-call.php","patterns":[{"include":"#language"}]},{"match":"(?i)\\\\b(print|echo)\\\\b","name":"support.function.construct.output.php"}]},"function-parameters":{"patterns":[{"include":"#comments"},{"match":",","name":"punctuation.separator.delimiter.php"},{"begin":"(?xi)\\n(array) # Typehint\\n\\\\s+((&)?\\\\s*(\\\\$+)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*) # Variable name with possible reference\\n\\\\s*(=)\\\\s*(array)\\\\s*(\\\\() # Default value","beginCaptures":{"1":{"name":"storage.type.php"},"2":{"name":"variable.other.php"},"3":{"name":"storage.modifier.reference.php"},"4":{"name":"punctuation.definition.variable.php"},"5":{"name":"keyword.operator.assignment.php"},"6":{"name":"support.function.construct.php"},"7":{"name":"punctuation.definition.array.begin.bracket.round.php"}},"contentName":"meta.array.php","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.array.end.bracket.round.php"}},"name":"meta.function.parameter.array.php","patterns":[{"include":"#comments"},{"include":"#strings"},{"include":"#numbers"}]},{"captures":{"1":{"name":"storage.type.php"},"2":{"name":"variable.other.php"},"3":{"name":"storage.modifier.reference.php"},"4":{"name":"punctuation.definition.variable.php"},"5":{"name":"keyword.operator.assignment.php"},"6":{"name":"constant.language.php"},"7":{"name":"punctuation.section.array.begin.php"},"8":{"patterns":[{"include":"#parameter-default-types"}]},"9":{"name":"punctuation.section.array.end.php"},"10":{"name":"invalid.illegal.non-null-typehinted.php"}},"match":"(?xi)\\n(array|callable) # Typehint\\n\\\\s+((&)?\\\\s*(\\\\$+)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*) # Variable name with possible reference\\n(?: # Optional default value\\n \\\\s*(=)\\\\s*\\n (?:\\n (null)\\n |\\n (\\\\[)((?>[^\\\\[\\\\]]+|\\\\[\\\\g<8>\\\\])*)(\\\\])\\n |((?:\\\\S*?\\\\(\\\\))|(?:\\\\S*?))\\n )\\n)?\\n\\\\s*(?=,|\\\\)|/[/*]|\\\\#|$) # A closing parentheses (end of argument list) or a comma or a comment","name":"meta.function.parameter.array.php"},{"begin":"(?xi)\\n(\\\\\\\\?(?:[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*\\\\\\\\)*) # Optional namespace\\n([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*) # Typehinted class name\\n\\\\s+((&)?\\\\s*(\\\\.\\\\.\\\\.)?(\\\\$+)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*) # Variable name with possible reference","beginCaptures":{"1":{"name":"support.other.namespace.php","patterns":[{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*","name":"storage.type.php"},{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]},"2":{"name":"storage.type.php"},"3":{"name":"variable.other.php"},"4":{"name":"storage.modifier.reference.php"},"5":{"name":"keyword.operator.variadic.php"},"6":{"name":"punctuation.definition.variable.php"}},"end":"(?=,|\\\\)|/[/*]|\\\\#)","name":"meta.function.parameter.typehinted.php","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.php"}},"end":"(?=,|\\\\)|/[/*]|\\\\#)","patterns":[{"include":"#language"}]}]},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"keyword.operator.variadic.php"},"4":{"name":"punctuation.definition.variable.php"}},"match":"(?xi)\\n((&)?\\\\s*(\\\\.\\\\.\\\\.)?(\\\\$+)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*) # Variable name with possible reference\\n\\\\s*(?=,|\\\\)|/[/*]|\\\\#|$) # A closing parentheses (end of argument list) or a comma or a comment","name":"meta.function.parameter.no-default.php"},{"begin":"(?xi)\\n((&)?\\\\s*(\\\\.\\\\.\\\\.)?(\\\\$+)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*) # Variable name with possible reference\\n\\\\s*(=)\\\\s*\\n(?:(\\\\[)((?>[^\\\\[\\\\]]+|\\\\[\\\\g<6>\\\\])*)(\\\\]))? # Optional default type","beginCaptures":{"1":{"name":"variable.other.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"keyword.operator.variadic.php"},"4":{"name":"punctuation.definition.variable.php"},"5":{"name":"keyword.operator.assignment.php"},"6":{"name":"punctuation.section.array.begin.php"},"7":{"patterns":[{"include":"#parameter-default-types"}]},"8":{"name":"punctuation.section.array.end.php"}},"end":"(?=,|\\\\)|/[/*]|\\\\#)","name":"meta.function.parameter.default.php","patterns":[{"include":"#parameter-default-types"}]}]},"heredoc":{"patterns":[{"begin":"(?i)(?=<<<\\\\s*(\\"?)([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)(\\\\1)\\\\s*$)","end":"(?!\\\\G)","name":"string.unquoted.heredoc.php","patterns":[{"include":"#heredoc_interior"}]},{"begin":"(?=<<<\\\\s*'([a-zA-Z_]+[a-zA-Z0-9_]*)'\\\\s*$)","end":"(?!\\\\G)","name":"string.unquoted.nowdoc.php","patterns":[{"include":"#nowdoc_interior"}]}]},"heredoc_interior":{"patterns":[{"begin":"(<<<)\\\\s*(\\"?)(HTML)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.html","end":"^(\\\\3)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.html","patterns":[{"include":"#interpolation"},{"include":"text.html.basic"}]},{"begin":"(<<<)\\\\s*(\\"?)(XML)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.xml","end":"^(\\\\3)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.xml","patterns":[{"include":"#interpolation"},{"include":"text.xml"}]},{"begin":"(<<<)\\\\s*(\\"?)(SQL)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.sql","end":"^(\\\\3)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.sql","patterns":[{"include":"#interpolation"},{"include":"source.sql"}]},{"begin":"(<<<)\\\\s*(\\"?)(JAVASCRIPT|JS)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.js","end":"^(\\\\3)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.js","patterns":[{"include":"#interpolation"},{"include":"source.js"}]},{"begin":"(<<<)\\\\s*(\\"?)(JSON)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.json","end":"^(\\\\3)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.json","patterns":[{"include":"#interpolation"},{"include":"source.json"}]},{"begin":"(<<<)\\\\s*(\\"?)(CSS)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.css","end":"^(\\\\3)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.css","patterns":[{"include":"#interpolation"},{"include":"source.css"}]},{"begin":"(<<<)\\\\s*(\\"?)(REGEXP?)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"string.regexp.heredoc.php","end":"^(\\\\3)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"patterns":[{"include":"#interpolation"},{"match":"(\\\\\\\\){1,2}[.$^\\\\[\\\\]{}]","name":"constant.character.escape.regex.php"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repitition.php"},"3":{"name":"punctuation.definition.arbitrary-repitition.php"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repitition.php"},{"begin":"\\\\[(?:\\\\^?\\\\])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"\\\\]","name":"string.regexp.character-class.php","patterns":[{"match":"\\\\\\\\[\\\\\\\\'\\\\[\\\\]]","name":"constant.character.escape.php"}]},{"match":"[$^+*]","name":"keyword.operator.regexp.php"},{"begin":"(?i)(?<=^|\\\\s)(#)\\\\s(?=[[a-z0-9_\\\\x{7f}-\\\\x{ff},. \\\\t?!-][^\\\\x{00}-\\\\x{7f}]]*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.php"}},"end":"$","endCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"name":"comment.line.number-sign.php"}]},{"begin":"(?i)(<<<)\\\\s*(\\"?)([a-z_\\\\x{7f}-\\\\x{ff}]+[a-z0-9_\\\\x{7f}-\\\\x{ff}]*)(\\\\2)(\\\\s*)","beginCaptures":{"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"end":"^(\\\\3)\\\\b","endCaptures":{"1":{"name":"keyword.operator.heredoc.php"}},"patterns":[{"include":"#interpolation"}]}]},"instantiation":{"begin":"(?i)(new)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.new.php"}},"end":"(?i)(?=[^a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\])","patterns":[{"match":"(?i)(parent|static|self)(?![a-z0-9_\\\\x{7f}-\\\\x{ff}])","name":"storage.type.php"},{"include":"#class-name"},{"include":"#variable-name"}]},"interpolation":{"patterns":[{"match":"\\\\\\\\[0-7]{1,3}","name":"constant.character.escape.octal.php"},{"match":"\\\\\\\\x[0-9A-Fa-f]{1,2}","name":"constant.character.escape.hex.php"},{"match":"\\\\\\\\u{[0-9A-Fa-f]+}","name":"constant.character.escape.unicode.php"},{"match":"\\\\\\\\[nrtvef$\\"\\\\\\\\]","name":"constant.character.escape.php"},{"begin":"{(?=\\\\$.*?})","beginCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"patterns":[{"include":"#language"}]},{"include":"#variable-name"}]},"invoke-call":{"captures":{"1":{"name":"punctuation.definition.variable.php"},"2":{"name":"variable.other.php"}},"match":"(?i)(\\\\$+)([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)(?=\\\\s*\\\\()","name":"meta.function-call.invoke.php"},"language":{"patterns":[{"include":"#comments"},{"begin":"(?i)^\\\\s*(interface)\\\\s+([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)\\\\s*(extends)?\\\\s*","beginCaptures":{"1":{"name":"storage.type.interface.php"},"2":{"name":"entity.name.type.interface.php"},"3":{"name":"storage.modifier.extends.php"}},"end":"(?i)((?:[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*\\\\s*,\\\\s*)*)([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)?\\\\s*(?:(?={)|$)","endCaptures":{"1":{"patterns":[{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*","name":"entity.other.inherited-class.php"},{"match":",","name":"punctuation.separator.classes.php"}]},"2":{"name":"entity.other.inherited-class.php"}},"name":"meta.interface.php","patterns":[{"include":"#namespace"}]},{"begin":"(?i)^\\\\s*(trait)\\\\s+([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)","beginCaptures":{"1":{"name":"storage.type.trait.php"},"2":{"name":"entity.name.type.trait.php"}},"end":"(?={)","name":"meta.trait.php","patterns":[{"include":"#comments"}]},{"captures":{"1":{"name":"keyword.other.namespace.php"},"2":{"name":"entity.name.type.namespace.php","patterns":[{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]}},"match":"(?i)(?:^|(?<=<\\\\?php))\\\\s*(namespace)\\\\s+([a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\]+)(?=\\\\s*;)","name":"meta.namespace.php"},{"begin":"(?i)(?:^|(?<=<\\\\?php))\\\\s*(namespace)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.namespace.php"}},"end":"(?<=})|(?=\\\\?>)","name":"meta.namespace.php","patterns":[{"include":"#comments"},{"captures":{"0":{"patterns":[{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]}},"match":"(?i)[a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\]+","name":"entity.name.type.namespace.php"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.namespace.begin.bracket.curly.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.namespace.end.bracket.curly.php"}},"patterns":[{"include":"#language"}]},{"match":"[^\\\\s]+","name":"invalid.illegal.identifier.php"}]},{"match":"\\\\s+(?=use\\\\b)"},{"begin":"(?i)\\\\buse\\\\b","beginCaptures":{"0":{"name":"keyword.other.use.php"}},"end":"(?<=})|(?=;)","name":"meta.use.php","patterns":[{"match":"\\\\b(const|function)\\\\b","name":"storage.type.\${1:/downcase}.php"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.use.begin.bracket.curly.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.use.end.bracket.curly.php"}},"patterns":[{"include":"#scope-resolution"},{"captures":{"1":{"name":"keyword.other.use-as.php"},"2":{"name":"storage.modifier.php"},"3":{"name":"entity.other.alias.php"}},"match":"(?xi)\\n\\\\b(as)\\n\\\\s+(final|abstract|public|private|protected|static)\\n\\\\s+([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)\\n\\\\b"},{"captures":{"1":{"name":"keyword.other.use-as.php"},"2":{"patterns":[{"match":"^(?:final|abstract|public|private|protected|static)$","name":"storage.modifier.php"},{"match":".+","name":"entity.other.alias.php"}]}},"match":"(?xi)\\n\\\\b(as)\\n\\\\s+([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)\\n\\\\b"},{"captures":{"1":{"name":"keyword.other.use-insteadof.php"},"2":{"name":"support.class.php"}},"match":"(?i)\\\\b(insteadof)\\\\s+([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)"},{"match":";","name":"punctuation.terminator.expression.php"},{"include":"#use-inner"}]},{"include":"#use-inner"}]},{"begin":"(?i)^\\\\s*(?:(abstract|final)\\\\s+)?(class)\\\\s+([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)","beginCaptures":{"1":{"name":"storage.modifier.\${1:/downcase}.php"},"2":{"name":"storage.type.class.php"},"3":{"name":"entity.name.type.class.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.class.end.bracket.curly.php"}},"name":"meta.class.php","patterns":[{"include":"#comments"},{"begin":"(?i)(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.extends.php"}},"contentName":"meta.other.inherited-class.php","end":"(?i)(?=[^a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\])","patterns":[{"begin":"(?i)(?=\\\\\\\\?[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*\\\\\\\\)","end":"(?i)([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)?(?=[^a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\])","endCaptures":{"1":{"name":"entity.other.inherited-class.php"}},"patterns":[{"include":"#namespace"}]},{"include":"#class-builtin"},{"include":"#namespace"},{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*","name":"entity.other.inherited-class.php"}]},{"begin":"(?i)(implements)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.implements.php"}},"end":"(?i)(?=[;{])","patterns":[{"include":"#comments"},{"begin":"(?i)(?=[a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\]+)","contentName":"meta.other.inherited-class.php","end":"(?i)(?:\\\\s*(?:,|(?=[^a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\\\\\s]))\\\\s*)","patterns":[{"begin":"(?i)(?=\\\\\\\\?[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*\\\\\\\\)","end":"(?i)([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)?(?=[^a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\])","endCaptures":{"1":{"name":"entity.other.inherited-class.php"}},"patterns":[{"include":"#namespace"}]},{"include":"#class-builtin"},{"include":"#namespace"},{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*","name":"entity.other.inherited-class.php"}]}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.class.begin.bracket.curly.php"}},"contentName":"meta.class.body.php","end":"(?=}|\\\\?>)","patterns":[{"include":"#language"}]}]},{"include":"#switch_statement"},{"captures":{"1":{"name":"keyword.control.\${1:/downcase}.php"}},"match":"\\\\s*\\\\b(break|case|continue|declare|default|die|do|else(if)?|end(declare|for(each)?|if|switch|while)|exit|for(each)?|if|return|switch|use|while|yield)\\\\b"},{"begin":"(?i)\\\\b((?:require|include)(?:_once)?)\\\\s+","beginCaptures":{"1":{"name":"keyword.control.import.include.php"}},"end":"(?=\\\\s|;|$|\\\\?>)","name":"meta.include.php","patterns":[{"include":"#language"}]},{"begin":"\\\\b(catch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.exception.catch.php"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"name":"meta.catch.php","patterns":[{"include":"#namespace"},{"captures":{"1":{"name":"support.class.exception.php"},"2":{"patterns":[{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*","name":"support.class.exception.php"},{"match":"\\\\|","name":"punctuation.separator.delimiter.php"}]},"3":{"name":"variable.other.php"},"4":{"name":"punctuation.definition.variable.php"}},"match":"(?xi)\\n([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*) # Exception class\\n((?:\\\\s*\\\\|\\\\s*[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)*) # Optional additional exception classes\\n\\\\s*\\n((\\\\$+)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*) # Variable"}]},{"match":"\\\\b(catch|try|throw|exception|finally)\\\\b","name":"keyword.control.exception.php"},{"begin":"(?i)\\\\b(function)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.type.function.php"}},"end":"(?={)","name":"meta.function.closure.php","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"contentName":"meta.function.parameters.php","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"patterns":[{"include":"#function-parameters"}]},{"begin":"(?i)(use)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.function.use.php"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"patterns":[{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"punctuation.definition.variable.php"}},"match":"(?i)((&)?\\\\s*(\\\\$+)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)\\\\s*(?=,|\\\\))","name":"meta.function.closure.use.php"}]}]},{"begin":"((?:(?:final|abstract|public|private|protected|static)\\\\s+)*)(function)\\\\s+(?i:(__(?:call|construct|debugInfo|destruct|get|set|isset|unset|tostring|clone|set_state|sleep|wakeup|autoload|invoke|callStatic))|([a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*))\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"match":"final|abstract|public|private|protected|static","name":"storage.modifier.php"}]},"2":{"name":"storage.type.function.php"},"3":{"name":"support.function.magic.php"},"4":{"name":"entity.name.function.php"},"5":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"contentName":"meta.function.parameters.php","end":"(\\\\))(?:\\\\s*(:)\\\\s*([a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*))?","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.bracket.round.php"},"2":{"name":"keyword.operator.return-value.php"},"3":{"name":"storage.type.php"}},"name":"meta.function.php","patterns":[{"include":"#function-parameters"}]},{"include":"#invoke-call"},{"include":"#scope-resolution"},{"include":"#variables"},{"include":"#strings"},{"captures":{"1":{"name":"support.function.construct.php"},"2":{"name":"punctuation.definition.array.begin.bracket.round.php"},"3":{"name":"punctuation.definition.array.end.bracket.round.php"}},"match":"(array)(\\\\()(\\\\))","name":"meta.array.empty.php"},{"begin":"(array)(\\\\()","beginCaptures":{"1":{"name":"support.function.construct.php"},"2":{"name":"punctuation.definition.array.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.array.end.bracket.round.php"}},"name":"meta.array.php","patterns":[{"include":"#language"}]},{"captures":{"1":{"name":"punctuation.definition.storage-type.begin.bracket.round.php"},"2":{"name":"storage.type.php"},"3":{"name":"punctuation.definition.storage-type.end.bracket.round.php"}},"match":"(?i)(\\\\()\\\\s*(array|real|double|float|int(?:eger)?|bool(?:ean)?|string|object|binary|unset)\\\\s*(\\\\))"},{"match":"(?i)\\\\b(array|real|double|float|int(eger)?|bool(ean)?|string|class|var|function|interface|trait|parent|self|object)\\\\b","name":"storage.type.php"},{"match":"(?i)\\\\b(global|abstract|const|extends|implements|final|private|protected|public|static)\\\\b","name":"storage.modifier.php"},{"include":"#object"},{"match":";","name":"punctuation.terminator.expression.php"},{"match":":","name":"punctuation.terminator.statement.php"},{"include":"#heredoc"},{"include":"#numbers"},{"match":"(?i)\\\\bclone\\\\b","name":"keyword.other.clone.php"},{"match":"\\\\.=?","name":"keyword.operator.string.php"},{"match":"=>","name":"keyword.operator.key.php"},{"captures":{"1":{"name":"keyword.operator.assignment.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"storage.modifier.reference.php"}},"match":"(?i)(\\\\=)(&)|(&)(?=[$a-z_])"},{"match":"@","name":"keyword.operator.error-control.php"},{"match":"===|==|!==|!=|<>","name":"keyword.operator.comparison.php"},{"match":"=|\\\\+=|\\\\-=|\\\\*=|/=|%=|&=|\\\\|=|\\\\^=|<<=|>>=","name":"keyword.operator.assignment.php"},{"match":"<=>|<=|>=|<|>","name":"keyword.operator.comparison.php"},{"match":"\\\\-\\\\-|\\\\+\\\\+","name":"keyword.operator.increment-decrement.php"},{"match":"\\\\-|\\\\+|\\\\*|/|%","name":"keyword.operator.arithmetic.php"},{"match":"(?i)(!|&&|\\\\|\\\\|)|\\\\b(and|or|xor|as)\\\\b","name":"keyword.operator.logical.php"},{"include":"#function-call"},{"match":"<<|>>|~|\\\\^|&|\\\\|","name":"keyword.operator.bitwise.php"},{"begin":"(?i)\\\\b(instanceof)\\\\s+(?=[\\\\\\\\$a-z_])","beginCaptures":{"1":{"name":"keyword.operator.type.php"}},"end":"(?=[^\\\\\\\\$a-z0-9_\\\\x{7f}-\\\\x{ff}])","patterns":[{"include":"#class-name"},{"include":"#variable-name"}]},{"include":"#instantiation"},{"captures":{"1":{"name":"keyword.control.goto.php"},"2":{"name":"support.other.php"}},"match":"(?i)(goto)\\\\s+([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)"},{"captures":{"1":{"name":"entity.name.goto-label.php"}},"match":"(?i)^\\\\s*([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)\\\\s*:(?!:)"},{"include":"#string-backtick"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.curly.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.php"}},"patterns":[{"include":"#language"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.php"}},"end":"\\\\]|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.section.array.end.php"}},"patterns":[{"include":"#language"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.php"}},"patterns":[{"include":"#language"}]},{"include":"#constants"},{"match":",","name":"punctuation.separator.delimiter.php"}]},"namespace":{"begin":"(?i)(?:(namespace)|[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)?(\\\\\\\\)(?=.*?[^a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\])","beginCaptures":{"1":{"name":"variable.language.namespace.php"},"2":{"name":"punctuation.separator.inheritance.php"}},"end":"(?i)(?=[a-z0-9_\\\\x{7f}-\\\\x{ff}]*[^a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\])","name":"support.other.namespace.php","patterns":[{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]},"nowdoc_interior":{"patterns":[{"begin":"(<<<)\\\\s*'(HTML)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.html","end":"^(\\\\2)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.html","patterns":[{"include":"text.html.basic"}]},{"begin":"(<<<)\\\\s*'(XML)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.xml","end":"^(\\\\2)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.xml","patterns":[{"include":"text.xml"}]},{"begin":"(<<<)\\\\s*'(SQL)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.sql","end":"^(\\\\2)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.sql","patterns":[{"include":"source.sql"}]},{"begin":"(<<<)\\\\s*'(JAVASCRIPT|JS)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.js","end":"^(\\\\2)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.js","patterns":[{"include":"source.js"}]},{"begin":"(<<<)\\\\s*'(JSON)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.json","end":"^(\\\\2)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.json","patterns":[{"include":"source.json"}]},{"begin":"(<<<)\\\\s*'(CSS)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.css","end":"^(\\\\2)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.css","patterns":[{"include":"source.css"}]},{"begin":"(<<<)\\\\s*'(REGEXP?)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"string.regexp.nowdoc.php","end":"^(\\\\2)\\\\b","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"patterns":[{"match":"(\\\\\\\\){1,2}[.$^\\\\[\\\\]{}]","name":"constant.character.escape.regex.php"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repitition.php"},"3":{"name":"punctuation.definition.arbitrary-repitition.php"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repitition.php"},{"begin":"\\\\[(?:\\\\^?\\\\])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"\\\\]","name":"string.regexp.character-class.php","patterns":[{"match":"\\\\\\\\[\\\\\\\\'\\\\[\\\\]]","name":"constant.character.escape.php"}]},{"match":"[$^+*]","name":"keyword.operator.regexp.php"},{"begin":"(?i)(?<=^|\\\\s)(#)\\\\s(?=[[a-z0-9_\\\\x{7f}-\\\\x{ff},. \\\\t?!-][^\\\\x{00}-\\\\x{7f}]]*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.php"}},"end":"$","endCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"name":"comment.line.number-sign.php"}]},{"begin":"(?i)(<<<)\\\\s*'([a-z_\\\\x{7f}-\\\\x{ff}]+[a-z0-9_\\\\x{7f}-\\\\x{ff}]*)'(\\\\s*)","beginCaptures":{"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"end":"^(\\\\2)\\\\b","endCaptures":{"1":{"name":"keyword.operator.nowdoc.php"}}}]},"numbers":{"patterns":[{"match":"0[xX][0-9a-fA-F]+","name":"constant.numeric.hex.php"},{"match":"0[bB][01]+","name":"constant.numeric.binary.php"},{"match":"0[0-7]+","name":"constant.numeric.octal.php"},{"captures":{"1":{"name":"punctuation.separator.decimal.period.php"},"2":{"name":"punctuation.separator.decimal.period.php"}},"match":"(?:[0-9]*(\\\\.)[0-9]+(?:[eE][+-]?[0-9]+)?|[0-9]+(\\\\.)[0-9]*(?:[eE][+-]?[0-9]+)?|[0-9]+[eE][+-]?[0-9]+)","name":"constant.numeric.decimal.php"},{"match":"0|[1-9][0-9]*","name":"constant.numeric.decimal.php"}]},"object":{"patterns":[{"begin":"(->)(\\\\$?{)","beginCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"punctuation.definition.variable.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"patterns":[{"include":"#language"}]},{"begin":"(?i)(->)([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"entity.name.function.php"},"3":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.method-call.php","patterns":[{"include":"#language"}]},{"captures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"variable.other.property.php"},"3":{"name":"punctuation.definition.variable.php"}},"match":"(?i)(->)((\\\\$+)?[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)?"}]},"parameter-default-types":{"patterns":[{"include":"#strings"},{"include":"#numbers"},{"include":"#string-backtick"},{"include":"#variables"},{"match":"=>","name":"keyword.operator.key.php"},{"match":"=","name":"keyword.operator.assignment.php"},{"match":"&(?=\\\\s*\\\\$)","name":"storage.modifier.reference.php"},{"begin":"(array)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"support.function.construct.php"},"2":{"name":"punctuation.definition.array.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.array.end.bracket.round.php"}},"name":"meta.array.php","patterns":[{"include":"#parameter-default-types"}]},{"include":"#instantiation"},{"begin":"(?xi)\\n(?=[a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\]+(::)\\n ([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)?\\n)","end":"(?i)(::)([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)?","endCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"constant.other.class.php"}},"patterns":[{"include":"#class-name"}]},{"include":"#constants"}]},"php_doc":{"patterns":[{"match":"^(?!\\\\s*\\\\*).*?(?:(?=\\\\*\\\\/)|$\\\\n?)","name":"invalid.illegal.missing-asterisk.phpdoc.php"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"},"3":{"name":"storage.modifier.php"},"4":{"name":"invalid.illegal.wrong-access-type.phpdoc.php"}},"match":"^\\\\s*\\\\*\\\\s*(@access)\\\\s+((public|private|protected)|(.+))\\\\s*$"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"},"2":{"name":"markup.underline.link.php"}},"match":"(@xlink)\\\\s+(.+)\\\\s*$"},{"begin":"(@(?:global|param|property(-(read|write))?|return|throws|var))\\\\s+(?=[A-Za-z_\\\\x{7f}-\\\\x{ff}\\\\\\\\]|\\\\()","beginCaptures":{"1":{"name":"keyword.other.phpdoc.php"}},"contentName":"meta.other.type.phpdoc.php","end":"(?=\\\\s|\\\\*/)","patterns":[{"include":"#php_doc_types_array_multiple"},{"include":"#php_doc_types_array_single"},{"include":"#php_doc_types"}]},{"match":"@(api|abstract|author|category|copyright|example|global|inherit[Dd]oc|internal|license|link|method|property(-(read|write))?|package|param|return|see|since|source|static|subpackage|throws|todo|var|version|uses|deprecated|final|ignore)\\\\b","name":"keyword.other.phpdoc.php"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"}},"match":"{(@(link|inherit[Dd]oc)).+?}","name":"meta.tag.inline.phpdoc.php"}]},"php_doc_types":{"captures":{"0":{"patterns":[{"match":"\\\\b(string|integer|int|boolean|bool|float|double|object|mixed|array|resource|void|null|callback|false|true|self)\\\\b","name":"keyword.other.type.php"},{"include":"#class-name"},{"match":"\\\\|","name":"punctuation.separator.delimiter.php"}]}},"match":"(?i)[a-z_\\\\x{7f}-\\\\x{ff}\\\\\\\\][a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\]*(\\\\|[a-z_\\\\x{7f}-\\\\x{ff}\\\\\\\\][a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\]*)*"},"php_doc_types_array_multiple":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.type.begin.bracket.round.phpdoc.php"}},"end":"(\\\\))(\\\\[\\\\])|(?=\\\\*/)","endCaptures":{"1":{"name":"punctuation.definition.type.end.bracket.round.phpdoc.php"},"2":{"name":"keyword.other.array.phpdoc.php"}},"patterns":[{"include":"#php_doc_types_array_multiple"},{"include":"#php_doc_types_array_single"},{"include":"#php_doc_types"},{"match":"\\\\|","name":"punctuation.separator.delimiter.php"}]},"php_doc_types_array_single":{"captures":{"1":{"patterns":[{"include":"#php_doc_types"}]},"2":{"name":"keyword.other.array.phpdoc.php"}},"match":"(?i)([a-z_\\\\x{7f}-\\\\x{ff}\\\\\\\\][a-z0-9_\\\\x{7f}-\\\\x{ff}\\\\\\\\]*)(\\\\[\\\\])"},"regex-double-quoted":{"begin":"\\"/(?=(\\\\\\\\.|[^\\"/])++/[imsxeADSUXu]*\\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"(/)([imsxeADSUXu]*)(\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.regexp.double-quoted.php","patterns":[{"match":"(\\\\\\\\){1,2}[.$^\\\\[\\\\]{}]","name":"constant.character.escape.regex.php"},{"include":"#interpolation"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.php"},"3":{"name":"punctuation.definition.arbitrary-repetition.php"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repetition.php"},{"begin":"\\\\[(?:\\\\^?\\\\])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"\\\\]","name":"string.regexp.character-class.php","patterns":[{"include":"#interpolation"}]},{"match":"[$^+*]","name":"keyword.operator.regexp.php"}]},"regex-single-quoted":{"begin":"'/(?=(\\\\\\\\(?:\\\\\\\\(?:\\\\\\\\[\\\\\\\\']?|[^'])|.)|[^'/])++/[imsxeADSUXu]*')","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"(/)([imsxeADSUXu]*)(')","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.regexp.single-quoted.php","patterns":[{"include":"#single_quote_regex_escape"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.php"},"3":{"name":"punctuation.definition.arbitrary-repetition.php"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repetition.php"},{"begin":"\\\\[(?:\\\\^?\\\\])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"\\\\]","name":"string.regexp.character-class.php"},{"match":"[$^+*]","name":"keyword.operator.regexp.php"}]},"scope-resolution":{"patterns":[{"captures":{"1":{"patterns":[{"match":"\\\\b(self|static|parent)\\\\b","name":"storage.type.php"},{"match":"\\\\w+","name":"entity.name.class.php"},{"include":"#class-name"},{"include":"#variable-name"}]}},"match":"(?i)\\\\b([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)(?=\\\\s*::)"},{"begin":"(?i)(::)\\\\s*([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"entity.name.function.php"},"3":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.method-call.static.php","patterns":[{"include":"#language"}]},{"captures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"keyword.other.class.php"}},"match":"(?i)(::)\\\\s*(class)\\\\b"},{"captures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"variable.other.class.php"},"3":{"name":"punctuation.definition.variable.php"},"4":{"name":"constant.other.class.php"}},"match":"(?xi)\\n(::)\\\\s*\\n(?:\\n ((\\\\$+)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*) # Variable\\n |\\n ([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*) # Constant\\n)?"}]},"single_quote_regex_escape":{"match":"\\\\\\\\(?:\\\\\\\\(?:\\\\\\\\[\\\\\\\\']?|[^'])|.)","name":"constant.character.escape.php"},"sql-string-double-quoted":{"begin":"\\"\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND)\\\\b)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"contentName":"source.sql.embedded.php","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.double.sql.php","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(#)(\\\\\\\\\\"|[^\\"])*(?=\\"|$)","name":"comment.line.number-sign.sql"},{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(--)(\\\\\\\\\\"|[^\\"])*(?=\\"|$)","name":"comment.line.double-dash.sql"},{"match":"\\\\\\\\[\\\\\\\\\\"\`']","name":"constant.character.escape.php"},{"match":"'(?=((\\\\\\\\')|[^'\\"])*(\\"|$))","name":"string.quoted.single.unclosed.sql"},{"match":"\`(?=((\\\\\\\\\`)|[^\`\\"])*(\\"|$))","name":"string.quoted.other.backtick.unclosed.sql"},{"begin":"'","end":"'","name":"string.quoted.single.sql","patterns":[{"include":"#interpolation"}]},{"begin":"\`","end":"\`","name":"string.quoted.other.backtick.sql","patterns":[{"include":"#interpolation"}]},{"include":"#interpolation"},{"include":"source.sql"}]},"sql-string-single-quoted":{"begin":"'\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND)\\\\b)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"contentName":"source.sql.embedded.php","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.single.sql.php","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(#)(\\\\\\\\'|[^'])*(?='|$)","name":"comment.line.number-sign.sql"},{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(--)(\\\\\\\\'|[^'])*(?='|$)","name":"comment.line.double-dash.sql"},{"match":"\\\\\\\\[\\\\\\\\'\`\\"]","name":"constant.character.escape.php"},{"match":"\`(?=((\\\\\\\\\`)|[^\`'])*('|$))","name":"string.quoted.other.backtick.unclosed.sql"},{"match":"\\"(?=((\\\\\\\\\\")|[^\\"'])*('|$))","name":"string.quoted.double.unclosed.sql"},{"include":"source.sql"}]},"string-backtick":{"begin":"\`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"\`","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.interpolated.php","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.php"},{"include":"#interpolation"}]},"string-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.double.php","patterns":[{"include":"#interpolation"}]},"string-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.single.php","patterns":[{"match":"\\\\\\\\[\\\\\\\\']","name":"constant.character.escape.php"}]},"strings":{"patterns":[{"include":"#regex-double-quoted"},{"include":"#sql-string-double-quoted"},{"include":"#string-double-quoted"},{"include":"#regex-single-quoted"},{"include":"#sql-string-single-quoted"},{"include":"#string-single-quoted"}]},"support":{"patterns":[{"match":"(?xi)\\n\\\\b\\napc_(\\n store|sma_info|compile_file|clear_cache|cas|cache_info|inc|dec|define_constants|delete(_file)?|\\n exists|fetch|load_constants|add|bin_(dump|load)(file)?\\n)\\\\b","name":"support.function.apc.php"},{"match":"(?xi)\\\\b\\n(\\n shuffle|sizeof|sort|next|nat(case)?sort|count|compact|current|in_array|usort|uksort|uasort|\\n pos|prev|end|each|extract|ksort|key(_exists)?|krsort|list|asort|arsort|rsort|reset|range|\\n array(_(shift|sum|splice|search|slice|chunk|change_key_case|count_values|column|combine|\\n (diff|intersect)(_(u)?(key|assoc))?|u(diff|intersect)(_(u)?assoc)?|unshift|unique|\\n pop|push|pad|product|values|keys|key_exists|filter|fill(_keys)?|flip|walk(_recursive)?|\\n reduce|replace(_recursive)?|reverse|rand|multisort|merge(_recursive)?|map)?)\\n)\\\\b","name":"support.function.array.php"},{"match":"(?xi)\\\\b\\n(\\n show_source|sys_getloadavg|sleep|highlight_(file|string)|constant|connection_(aborted|status)|\\n time_(nanosleep|sleep_until)|ignore_user_abort|die|define(d)?|usleep|uniqid|unpack|__halt_compiler|\\n php_(check_syntax|strip_whitespace)|pack|eval|exit|get_browser\\n)\\\\b","name":"support.function.basic_functions.php"},{"match":"(?i)\\\\bbc(scale|sub|sqrt|comp|div|pow(mod)?|add|mod|mul)\\\\b","name":"support.function.bcmath.php"},{"match":"(?i)\\\\bblenc_encrypt\\\\b","name":"support.function.blenc.php"},{"match":"(?i)\\\\bbz(compress|close|open|decompress|errstr|errno|error|flush|write|read)\\\\b","name":"support.function.bz2.php"},{"match":"(?xi)\\\\b\\n(\\n (French|Gregorian|Jewish|Julian)ToJD|cal_(to_jd|info|days_in_month|from_jd)|unixtojd|\\n jdto(unix|jewish)|easter_(date|days)|JD(MonthName|To(Gregorian|Julian|French)|DayOfWeek)\\n)\\\\b","name":"support.function.calendar.php"},{"match":"(?xi)\\\\b\\n(\\n class_alias|all_user_method(_array)?|is_(a|subclass_of)|__autoload|(class|interface|method|property|trait)_exists|\\n get_(class(_(vars|methods))?|(called|parent)_class|object_vars|declared_(classes|interfaces|traits))\\n)\\\\b","name":"support.function.classobj.php"},{"match":"(?xi)\\\\b\\n(\\n com_(create_guid|print_typeinfo|event_sink|load_typelib|get_active_object|message_pump)|\\n variant_(sub|set(_type)?|not|neg|cast|cat|cmp|int|idiv|imp|or|div|date_(from|to)_timestamp|\\n pow|eqv|fix|and|add|abs|round|get_type|xor|mod|mul)\\n)\\\\b","name":"support.function.com.php"},{"begin":"(?i)\\\\b(isset|unset|eval|empty|list)\\\\b","name":"support.function.construct.php"},{"match":"(?i)\\\\b(print|echo)\\\\b","name":"support.function.construct.output.php"},{"match":"(?i)\\\\bctype_(space|cntrl|digit|upper|punct|print|lower|alnum|alpha|graph|xdigit)\\\\b","name":"support.function.ctype.php"},{"match":"(?xi)\\\\b\\ncurl_(\\n share_(close|init|setopt)|strerror|setopt(_array)?|copy_handle|close|init|unescape|pause|escape|\\n errno|error|exec|version|file_create|reset|getinfo|\\n multi_(strerror|setopt|select|close|init|info_read|(add|remove)_handle|getcontent|exec)\\n)\\\\b","name":"support.function.curl.php"},{"match":"(?xi)\\\\b\\n(\\n strtotime|str[fp]time|checkdate|time|timezone_name_(from_abbr|get)|idate|\\n timezone_((location|offset|transitions|version)_get|(abbreviations|identifiers)_list|open)|\\n date(_(sun(rise|set)|sun_info|sub|create(_(immutable_)?from_format)?|timestamp_(get|set)|timezone_(get|set)|time_set|\\n isodate_set|interval_(create_from_date_string|format)|offset_get|diff|default_timezone_(get|set)|date_set|\\n parse(_from_format)?|format|add|get_last_errors|modify))?|\\n localtime|get(date|timeofday)|gm(strftime|date|mktime)|microtime|mktime\\n)\\\\b","name":"support.function.datetime.php"},{"match":"(?i)\\\\bdba_(sync|handlers|nextkey|close|insert|optimize|open|delete|popen|exists|key_split|firstkey|fetch|list|replace)\\\\b","name":"support.function.dba.php"},{"match":"(?i)\\\\bdbx_(sort|connect|compare|close|escape_string|error|query|fetch_row)\\\\b","name":"support.function.dbx.php"},{"match":"(?i)\\\\b(scandir|chdir|chroot|closedir|opendir|dir|rewinddir|readdir|getcwd)\\\\b","name":"support.function.dir.php"},{"match":"(?xi)\\\\b\\neio_(\\n sync(fs)?|sync_file_range|symlink|stat(vfs)?|sendfile|set_min_parallel|set_max_(idle|poll_(reqs|time)|parallel)|\\n seek|n(threads|op|pending|reqs|ready)|chown|chmod|custom|close|cancel|truncate|init|open|dup2|unlink|utime|poll|\\n event_loop|f(sync|stat(vfs)?|chown|chmod|truncate|datasync|utime|allocate)|write|lstat|link|rename|realpath|\\n read(ahead|dir|link)?|rmdir|get_(event_stream|last_error)|grp(_(add|cancel|limit))?|mknod|mkdir|busy\\n)\\\\b","name":"support.function.eio.php"},{"match":"(?xi)\\\\b\\nenchant_(\\n dict_(store_replacement|suggest|check|is_in_session|describe|quick_check|add_to_(personal|session)|get_error)|\\n broker_(set_ordering|init|dict_exists|describe|free(_dict)?|list_dicts|request_(pwl_)?dict|get_error)\\n)\\\\b","name":"support.function.enchant.php"},{"match":"(?i)\\\\bsplit(i)?|sql_regcase|ereg(i)?(_replace)?\\\\b","name":"support.function.ereg.php"},{"match":"(?i)\\\\b((restore|set)_(error_handler|exception_handler)|trigger_error|debug_(print_)?backtrace|user_error|error_(log|reporting|get_last))\\\\b","name":"support.function.errorfunc.php"},{"match":"(?i)\\\\bshell_exec|system|passthru|proc_(nice|close|terminate|open|get_status)|escapeshell(arg|cmd)|exec\\\\b","name":"support.function.exec.php"},{"match":"(?i)\\\\b(exif_(thumbnail|tagname|imagetype|read_data)|read_exif_data)\\\\b","name":"support.function.exif.php"},{"match":"(?xi)\\\\b\\nfann_(\\n (duplicate|length|merge|shuffle|subset)_train_data|scale_(train(_data)?|(input|output)(_train_data)?)|\\n set_(scaling_params|sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|\\n cascade_(num_candidate_groups|candidate_(change_fraction|limit|stagnation_epochs)|\\n output_(change_fraction|stagnation_epochs)|weight_multiplier|activation_(functions|steepnesses)|\\n (max|min)_(cand|out)_epochs)|\\n callback|training_algorithm|train_(error|stop)_function|(input|output)_scaling_params|error_log|\\n quickprop_(decay|mu)|weight(_array)?|learning_(momentum|rate)|bit_fail_limit|\\n activation_(function|steepness)(_(hidden|layer|output))?|\\n rprop_((decrease|increase)_factor|delta_(max|min|zero)))|\\n save(_train)?|num_(input|output)_train_data|copy|clear_scaling_params|cascadetrain_on_(file|data)|\\n create_((sparse|shortcut|standard)(_array)?|train(_from_callback)?|from_file)|\\n test(_data)?|train(_(on_(file|data)|epoch))?|init_weights|descale_(input|output|train)|destroy(_train)?|\\n print_error|run|reset_(MSE|err(no|str))|read_train_from_file|randomize_weights|\\n get_(sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|num_(input|output|layers)|\\n network_type|MSE|connection_(array|rate)|bias_array|bit_fail(_limit)?|\\n cascade_(num_(candidates|candidate_groups)|(candidate|output)_(change_fraction|limit|stagnation_epochs)|\\n weight_multiplier|activation_(functions|steepnesses)(_count)?|(max|min)_(cand|out)_epochs)|\\n total_(connections|neurons)|training_algorithm|train_(error|stop)_function|err(no|str)|\\n quickprop_(decay|mu)|learning_(momentum|rate)|layer_array|activation_(function|steepness)|\\n rprop_((decrease|increase)_factor|delta_(max|min|zero)))\\n)\\\\b","name":"support.function.fann.php"},{"match":"(?xi)\\\\b\\n(\\n symlink|stat|set_file_buffer|chown|chgrp|chmod|copy|clearstatcache|touch|tempnam|tmpfile|\\n is_(dir|(uploaded_)?file|executable|link|readable|writ(e)?able)|disk_(free|total)_space|diskfreespace|\\n dirname|delete|unlink|umask|pclose|popen|pathinfo|parse_ini_(file|string)|fscanf|fstat|fseek|fnmatch|\\n fclose|ftell|ftruncate|file(size|[acm]time|type|inode|owner|perms|group)?|file_(exists|(get|put)_contents)|\\n f(open|puts|putcsv|passthru|eof|flush|write|lock|read|gets(s)?|getc(sv)?)|lstat|lchown|lchgrp|link(info)?|\\n rename|rewind|read(file|link)|realpath(_cache_(get|size))?|rmdir|glob|move_uploaded_file|mkdir|basename\\n)\\\\b","name":"support.function.file.php"},{"match":"(?i)\\\\b(finfo_(set_flags|close|open|file|buffer)|mime_content_type)\\\\b","name":"support.function.fileinfo.php"},{"match":"(?i)\\\\bfilter_(has_var|input(_array)?|id|var(_array)?|list)\\\\b","name":"support.function.filter.php"},{"match":"(?i)\\\\bfastcgi_finish_request\\\\b","name":"support.function.fpm.php"},{"match":"(?i)\\\\b(call_user_(func|method)(_array)?|create_function|unregister_tick_function|forward_static_call(_array)?|function_exists|func_(num_args|get_arg(s)?)|register_(shutdown|tick)_function|get_defined_functions)\\\\b","name":"support.function.funchand.php"},{"match":"(?i)\\\\b((n)?gettext|textdomain|d((n)?gettext|c(n)?gettext)|bind(textdomain|_textdomain_codeset))\\\\b","name":"support.function.gettext.php"},{"match":"(?xi)\\\\b\\ngmp_(\\n scan[01]|strval|sign|sub|setbit|sqrt(rem)?|hamdist|neg|nextprime|com|clrbit|cmp|testbit|\\n intval|init|invert|import|or|div(exact)?|div_(q|qr|r)|jacobi|popcount|pow(m)?|perfect_square|\\n prob_prime|export|fact|legendre|and|add|abs|root(rem)?|random(_(bits|range))?|gcd(ext)?|xor|mod|mul\\n)\\\\b","name":"support.function.gmp.php"},{"match":"(?i)\\\\bhash(_(hmac(_file)?|copy|init|update(_(file|stream))?|pbkdf2|equals|file|final|algos))?\\\\b","name":"support.function.hash.php"},{"match":"(?xi)\\\\b\\n(\\n http_(support|send_(status|stream|content_(disposition|type)|data|file|last_modified)|head|\\n negotiate_(charset|content_type|language)|chunked_decode|cache_(etag|last_modified)|throttle|\\n inflate|deflate|date|post_(data|fields)|put_(data|file|stream)|persistent_handles_(count|clean|ident)|\\n parse_(cookie|headers|message|params)|redirect|request(_(method_(exists|name|(un)?register)|body_encode))?|\\n get(_request_(headers|body(_stream)?))?|match_(etag|modified|request_header)|build_(cookie|str|url))|\\n ob_(etag|deflate|inflate)handler\\n)\\\\b","name":"support.function.http.php"},{"match":"(?i)\\\\b(iconv(_(str(pos|len|rpos)|substr|(get|set)_encoding|mime_(decode(_headers)?|encode)))?|ob_iconv_handler)\\\\b","name":"support.function.iconv.php"},{"match":"(?i)\\\\biis_((start|stop)_(service|server)|set_(script_map|server_rights|dir_security|app_settings)|(add|remove)_server|get_(script_map|service_state|server_(rights|by_(comment|path))|dir_security))\\\\b","name":"support.function.iisfunc.php"},{"match":"(?xi)\\\\b\\n(\\n iptc(embed|parse)|(jpeg|png)2wbmp|gd_info|getimagesize(fromstring)?|\\n image(s[xy]|scale|(char|string)(up)?|set(style|thickness|tile|interpolation|pixel|brush)|savealpha|\\n convolution|copy(resampled|resized|merge(gray)?)?|colors(forindex|total)|\\n color(set|closest(alpha|hwb)?|transparent|deallocate|(allocate|exact|resolve)(alpha)?|at|match)|\\n crop(auto)?|create(truecolor|from(string|jpeg|png|wbmp|webp|gif|gd(2(part)?)?|xpm|xbm))?|\\n types|ttf(bbox|text)|truecolortopalette|istruecolor|interlace|2wbmp|destroy|dashedline|jpeg|\\n _type_to_(extension|mime_type)|ps(slantfont|text|(encode|extend|free|load)font|bbox)|png|polygon|\\n palette(copy|totruecolor)|ellipse|ft(text|bbox)|filter|fill|filltoborder|\\n filled(arc|ellipse|polygon|rectangle)|font(height|width)|flip|webp|wbmp|line|loadfont|layereffect|\\n antialias|affine(matrix(concat|get))?|alphablending|arc|rotate|rectangle|gif|gd(2)?|gammacorrect|\\n grab(screen|window)|xbm)\\n)\\\\b","name":"support.function.image.php"},{"match":"(?xi)\\\\b\\n(\\n sys_get_temp_dir|set_(time_limit|include_path|magic_quotes_runtime)|cli_(get|set)_process_title|\\n ini_(alter|get(_all)?|restore|set)|zend_(thread_id|version|logo_guid)|dl|php(credits|info|version)|\\n php_(sapi_name|ini_(scanned_files|loaded_file)|uname|logo_guid)|putenv|extension_loaded|version_compare|\\n assert(_options)?|restore_include_path|gc_(collect_cycles|disable|enable(d)?)|getopt|\\n get_(cfg_var|current_user|defined_constants|extension_funcs|include_path|included_files|loaded_extensions|\\n magic_quotes_(gpc|runtime)|required_files|resources)|\\n get(env|lastmod|rusage|my(inode|[gup]id))|\\n memory_get_(peak_)?usage|main|magic_quotes_runtime\\n)\\\\b","name":"support.function.info.php"},{"match":"(?xi)\\\\b\\nibase_(\\n set_event_handler|service_(attach|detach)|server_info|num_(fields|params)|name_result|connect|\\n commit(_ret)?|close|trans|delete_user|drop_db|db_info|pconnect|param_info|prepare|err(code|msg)|\\n execute|query|field_info|fetch_(assoc|object|row)|free_(event_handler|query|result)|wait_event|\\n add_user|affected_rows|rollback(_ret)?|restore|gen_id|modify_user|maintain_db|backup|\\n blob_(cancel|close|create|import|info|open|echo|add|get)\\n)\\\\b","name":"support.function.interbase.php"},{"match":"(?xi)\\\\b\\n(\\n normalizer_(normalize|is_normalized)|idn_to_(unicode|utf8|ascii)|\\n numfmt_(set_(symbol|(text_)?attribute|pattern)|create|(parse|format)(_currency)?|\\n get_(symbol|(text_)?attribute|pattern|error_(code|message)|locale))|\\n collator_(sort(_with_sort_keys)?|set_(attribute|strength)|compare|create|asort|\\n get_(strength|sort_key|error_(code|message)|locale|attribute))|\\n transliterator_(create(_(inverse|from_rules))?|transliterate|list_ids|get_error_(code|message))|\\n intl(cal|tz)_get_error_(code|message)|intl_(is_failure|error_name|get_error_(code|message))|\\n datefmt_(set_(calendar|lenient|pattern|timezone(_id)?)|create|is_lenient|parse|format(_object)?|localtime|\\n get_(calendar(_object)?|time(type|zone(_id)?)|datetype|pattern|error_(code|message)|locale))|\\n locale_(set_default|compose|canonicalize|parse|filter_matches|lookup|accept_from_http|\\n get_(script|display_(script|name|variant|language|region)|default|primary_language|keywords|all_variants|region))|\\n resourcebundle_(create|count|locales|get(_(error_(code|message)))?)|\\n grapheme_(str(i?str|r?i?pos|len)|substr|extract)|\\n msgfmt_(set_pattern|create|(format|parse)(_message)?|get_(pattern|error_(code|message)|locale))\\n)\\\\b","name":"support.function.intl.php"},{"match":"(?i)\\\\bjson_(decode|encode|last_error(_msg)?)\\\\b","name":"support.function.json.php"},{"match":"(?xi)\\\\b\\nldap_(\\n start|tls|sort|search|sasl_bind|set_(option|rebind_proc)|(first|next)_(attribute|entry|reference)|\\n connect|control_paged_result(_response)?|count_entries|compare|close|t61_to_8859|8859_to_t61|\\n dn2ufn|delete|unbind|parse_(reference|result)|escape|errno|err2str|error|explode_dn|bind|\\n free_result|list|add|rename|read|get_(option|dn|entries|values(_len)?|attributes)|modify(_batch)?|\\n mod_(add|del|replace)\\n)\\\\b","name":"support.function.ldap.php"},{"match":"(?i)\\\\blibxml_(set_(streams_context|external_entity_loader)|clear_errors|disable_entity_loader|use_internal_errors|get_(errors|last_error))\\\\b","name":"support.function.libxml.php"},{"match":"(?i)\\\\b(ezmlm_hash|mail)\\\\b","name":"support.function.mail.php"},{"match":"(?xi)\\\\b\\n(\\n (a)?(cos|sin|tan)(h)?|sqrt|srand|hypot|hexdec|ceil|is_(nan|(in)?finite)|octdec|dec(hex|oct|bin)|deg2rad|\\n pi|pow|exp(m1)?|floor|fmod|lcg_value|log(1(p|0))?|atan2|abs|round|rand|rad2deg|getrandmax|\\n mt_(srand|rand|getrandmax)|max|min|bindec|base_convert\\n)\\\\b","name":"support.function.math.php"},{"match":"(?xi)\\\\b\\nmb_(\\n str(cut|str|to(lower|upper)|istr|ipos|imwidth|pos|width|len|rchr|richr|ripos|rpos)|\\n substitute_character|substr(_count)?|split|send_mail|http_(input|output)|check_encoding|\\n convert_(case|encoding|kana|variables)|internal_encoding|output_handler|decode_(numericentity|mimeheader)|\\n detect_(encoding|order)|parse_str|preferred_mime_name|encoding_aliases|encode_(numericentity|mimeheader)|\\n ereg(i(_replace)?)?|ereg_(search(_(get(pos|regs)|init|regs|(set)?pos))?|replace(_callback)?|match)|\\n list_encodings|language|regex_(set_options|encoding)|get_info\\n)\\\\b","name":"support.function.mbstring.php"},{"match":"(?xi)\\\\b\\n(\\n mcrypt_(\\n cfb|create_iv|cbc|ofb|decrypt|encrypt|ecb|list_(algorithms|modes)|generic(_((de)?init|end))?|\\n enc_(self_test|is_block_(algorithm|algorithm_mode|mode)|\\n get_(supported_key_sizes|(block|iv|key)_size|(algorithms|modes)_name))|\\n get_(cipher_name|(block|iv|key)_size)|\\n module_(close|self_test|is_block_(algorithm|algorithm_mode|mode)|open|\\n get_(supported_key_sizes|algo_(block|key)_size)))|\\n mdecrypt_generic\\n)\\\\b","name":"support.function.mcrypt.php"},{"match":"(?i)\\\\bmemcache_debug\\\\b","name":"support.function.memcache.php"},{"match":"(?i)\\\\bmhash(_(count|keygen_s2k|get_(hash_name|block_size)))?\\\\b","name":"support.function.mhash.php"},{"match":"(?i)\\\\b(log_(cmd_(insert|delete|update)|killcursor|write_batch|reply|getmore)|bson_(decode|encode))\\\\b","name":"support.function.mongo.php"},{"match":"(?xi)\\\\b\\nmysql_(\\n stat|set_charset|select_db|num_(fields|rows)|connect|client_encoding|close|create_db|escape_string|\\n thread_id|tablename|insert_id|info|data_seek|drop_db|db_(name|query)|unbuffered_query|pconnect|ping|\\n errno|error|query|field_(seek|name|type|table|flags|len)|fetch_(object|field|lengths|assoc|array|row)|\\n free_result|list_(tables|dbs|processes|fields)|affected_rows|result|real_escape_string|\\n get_(client|host|proto|server)_info\\n)\\\\b","name":"support.function.mysql.php"},{"match":"(?xi)\\\\b\\nmysqli_(\\n ssl_set|store_result|stat|send_(query|long_data)|set_(charset|opt|local_infile_(default|handler))|\\n stmt_(store_result|send_long_data|next_result|close|init|data_seek|prepare|execute|fetch|free_result|\\n attr_(get|set)|result_metadata|reset|get_(result|warnings)|more_results|bind_(param|result))|\\n select_db|slave_query|savepoint|next_result|change_user|character_set_name|connect|commit|\\n client_encoding|close|thread_safe|init|options|(enable|disable)_(reads_from_master|rpl_parse)|\\n dump_debug_info|debug|data_seek|use_result|ping|poll|param_count|prepare|escape_string|execute|\\n embedded_server_(start|end)|kill|query|field_seek|free_result|autocommit|rollback|report|refresh|\\n fetch(_(object|fields|field(_direct)?|assoc|all|array|row))?|rpl_(parse_enabled|probe|query_type)|\\n release_savepoint|reap_async_query|real_(connect|escape_string|query)|more_results|multi_query|\\n get_(charset|connection_stats|client_(stats|info|version)|cache_stats|warnings|links_stats|metadata)|\\n master_query|bind_(param|result)|begin_transaction\\n)\\\\b","name":"support.function.mysqli.php"},{"match":"(?i)\\\\bmysqlnd_memcache_(set|get_config)\\\\b","name":"support.function.mysqlnd-memcache.php"},{"match":"(?i)\\\\bmysqlnd_ms_(set_(user_pick_server|qos)|dump_servers|query_is_select|fabric_select_(shard|global)|get_(stats|last_(used_connection|gtid))|xa_(commit|rollback|gc|begin)|match_wild)\\\\b","name":"support.function.mysqlnd-ms.php"},{"match":"(?i)\\\\bmysqlnd_qc_(set_(storage_handler|cache_condition|is_select|user_handlers)|clear_cache|get_(normalized_query_trace_log|core_stats|cache_info|query_trace_log|available_handlers))\\\\b","name":"support.function.mysqlnd-qc.php"},{"match":"(?i)\\\\bmysqlnd_uh_(set_(statement|connection)_proxy|convert_to_mysqlnd)\\\\b","name":"support.function.mysqlnd-uh.php"},{"match":"(?xi)\\\\b\\n(\\n syslog|socket_(set_(blocking|timeout)|get_status)|set(raw)?cookie|http_response_code|openlog|\\n headers_(list|sent)|header(_(register_callback|remove))?|checkdnsrr|closelog|inet_(ntop|pton)|ip2long|\\n openlog|dns_(check_record|get_(record|mx))|define_syslog_variables|(p)?fsockopen|long2ip|\\n get(servby(name|port)|host(name|by(name(l)?|addr))|protoby(name|number)|mxrr)\\n)\\\\b","name":"support.function.network.php"},{"match":"(?i)\\\\bnsapi_(virtual|response_headers|request_headers)\\\\b","name":"support.function.nsapi.php"},{"match":"(?xi)\\\\b\\n(\\n oci(statementtype|setprefetch|serverversion|savelob(file)?|numcols|new(collection|cursor|descriptor)|nlogon|\\n column(scale|size|name|type(raw)?|isnull|precision)|coll(size|trim|assign(elem)?|append|getelem|max)|commit|\\n closelob|cancel|internaldebug|definebyname|plogon|parse|error|execute|fetch(statement|into)?|\\n free(statement|collection|cursor|desc)|write(temporarylob|lobtofile)|loadlob|log(on|off)|rowcount|rollback|\\n result|bindbyname)|\\n oci_(statement_type|set_(client_(info|identifier)|prefetch|edition|action|module_name)|server_version|\\n num_(fields|rows)|new_(connect|collection|cursor|descriptor)|connect|commit|client_version|close|cancel|\\n internal_debug|define_by_name|pconnect|password_change|parse|error|execute|bind_(array_)?by_name|\\n field_(scale|size|name|type(_raw)?|is_null|precision)|fetch(_(object|assoc|all|array|row))?|\\n free_(statement|descriptor)|lob_(copy|is_equal)|rollback|result|get_implicit_resultset)\\n)\\\\b","name":"support.function.oci8.php"},{"match":"(?i)\\\\bopcache_(compile_file|invalidate|reset|get_(status|configuration))\\\\b","name":"support.function.opcache.php"},{"match":"(?xi)\\\\b\\nopenssl_(\\n sign|spki_(new|export(_challenge)?|verify)|seal|csr_(sign|new|export(_to_file)?|get_(subject|public_key))|\\n cipher_iv_length|open|dh_compute_key|digest|decrypt|public_(decrypt|encrypt)|encrypt|error_string|\\n pkcs12_(export(_to_file)?|read)|pkcs7_(sign|decrypt|encrypt|verify)|verify|free_key|random_pseudo_bytes|\\n pkey_(new|export(_to_file)?|free|get_(details|public|private))|private_(decrypt|encrypt)|pbkdf2|\\n get_((cipher|md)_methods|cert_locations|(public|private)key)|\\n x509_(check_private_key|checkpurpose|parse|export(_to_file)?|fingerprint|free|read)\\n)\\\\b","name":"support.function.openssl.php"},{"match":"(?xi)\\\\b\\n(\\n output_(add_rewrite_var|reset_rewrite_vars)|flush|\\n ob_(start|clean|implicit_flush|end_(clean|flush)|flush|list_handlers|gzhandler|\\n get_(status|contents|clean|flush|length|level))\\n)\\\\b","name":"support.function.output.php"},{"match":"(?i)\\\\bpassword_(hash|needs_rehash|verify|get_info)\\\\b","name":"support.function.password.php"},{"match":"(?xi)\\\\b\\npcntl_(\\n strerror|signal(_dispatch)?|sig(timedwait|procmask|waitinfo)|setpriority|errno|exec|fork|\\n w(stopsig|termsig|if(stopped|signaled|exited))|wait(pid)?|alarm|getpriority|get_last_error\\n)\\\\b","name":"support.function.pcntl.php"},{"match":"(?xi)\\\\b\\npg_(\\n socket|send_(prepare|execute|query(_params)?)|set_(client_encoding|error_verbosity)|select|host|\\n num_(fields|rows)|consume_input|connection_(status|reset|busy)|connect(_poll)?|convert|copy_(from|to)|\\n client_encoding|close|cancel_query|tty|transaction_status|trace|insert|options|delete|dbname|untrace|\\n unescape_bytea|update|pconnect|ping|port|put_line|parameter_status|prepare|version|query(_params)?|\\n escape_(string|identifier|literal|bytea)|end_copy|execute|flush|free_result|last_(notice|error|oid)|\\n field_(size|num|name|type(_oid)?|table|is_null|prtlen)|affected_rows|result_(status|seek|error(_field)?)|\\n fetch_(object|assoc|all(_columns)?|array|row|result)|get_(notify|pid|result)|meta_data|\\n lo_(seek|close|create|tell|truncate|import|open|unlink|export|write|read(_all)?)|\\n)\\\\b","name":"support.function.pgsql.php"},{"match":"(?i)\\\\b(virtual|getallheaders|apache_((get|set)env|note|child_terminate|lookup_uri|response_headers|reset_timeout|request_headers|get_(version|modules)))\\\\b","name":"support.function.php_apache.php"},{"match":"(?i)\\\\bdom_import_simplexml\\\\b","name":"support.function.php_dom.php"},{"match":"(?xi)\\\\b\\nftp_(\\n ssl_connect|systype|site|size|set_option|nlist|nb_(continue|f?(put|get))|ch(dir|mod)|connect|cdup|close|\\n delete|put|pwd|pasv|exec|quit|f(put|get)|login|alloc|rename|raw(list)?|rmdir|get(_option)?|mdtm|mkdir\\n)\\\\b","name":"support.function.php_ftp.php"},{"match":"(?xi)\\\\b\\nimap_(\\n (create|delete|list|rename|scan)(mailbox)?|status|sort|subscribe|set_quota|set(flag_full|acl)|search|savebody|\\n num_(recent|msg)|check|close|clearflag_full|thread|timeout|open|header(info)?|headers|append|alerts|reopen|\\n 8bit|unsubscribe|undelete|utf7_(decode|encode)|utf8|uid|ping|errors|expunge|qprint|gc|\\n fetch(structure|header|text|mime|body)|fetch_overview|lsub|list(scan|subscribed)|last_error|\\n rfc822_(parse_(headers|adrlist)|write_address)|get(subscribed|acl|mailboxes)|get_quota(root)?|\\n msgno|mime_header_decode|mail_(copy|compose|move)|mail|mailboxmsginfo|binary|body(struct)?|base64\\n)\\\\b","name":"support.function.php_imap.php"},{"match":"(?xi)\\\\b\\nmssql_(\\n select_db|num_(fields|rows)|next_result|connect|close|init|data_seek|pconnect|execute|query|\\n field_(seek|name|type|length)|fetch_(object|field|assoc|array|row|batch)|free_(statement|result)|\\n rows_affected|result|guid_string|get_last_message|min_(error|message)_severity|bind\\n)\\\\b","name":"support.function.php_mssql.php"},{"match":"(?xi)\\\\b\\nodbc_(\\n statistics|specialcolumns|setoption|num_(fields|rows)|next_result|connect|columns|columnprivileges|commit|\\n cursor|close(_all)?|tables|tableprivileges|do|data_source|pconnect|primarykeys|procedures|procedurecolumns|\\n prepare|error(msg)?|exec(ute)?|field_(scale|num|name|type|precision|len)|foreignkeys|free_result|\\n fetch_(into|object|array|row)|longreadlen|autocommit|rollback|result(_all)?|gettypeinfo|binmode\\n)\\\\b","name":"support.function.php_odbc.php"},{"match":"(?i)\\\\bpreg_(split|quote|filter|last_error|replace(_callback)?|grep|match(_all)?)\\\\b","name":"support.function.php_pcre.php"},{"match":"(?i)\\\\b(spl_(classes|object_hash|autoload(_(call|unregister|extensions|functions|register))?)|class_(implements|uses|parents)|iterator_(count|to_array|apply))\\\\b","name":"support.function.php_spl.php"},{"match":"(?i)\\\\bzip_(close|open|entry_(name|compressionmethod|compressedsize|close|open|filesize|read)|read)\\\\b","name":"support.function.php_zip.php"},{"match":"(?xi)\\\\b\\nposix_(\\n strerror|set(s|e?u|[ep]?g)id|ctermid|ttyname|times|isatty|initgroups|uname|errno|kill|access|\\n get(sid|cwd|uid|pid|ppid|pwnam|pwuid|pgid|pgrp|euid|egid|login|rlimit|gid|grnam|groups|grgid)|\\n get_last_error|mknod|mkfifo\\n)\\\\b","name":"support.function.posix.php"},{"match":"(?i)\\\\bset(thread|proc)title\\\\b","name":"support.function.proctitle.php"},{"match":"(?xi)\\\\b\\npspell_(\\n store_replacement|suggest|save_wordlist|new(_(config|personal))?|check|clear_session|\\n config_(save_repl|create|ignore|(data|dict)_dir|personal|runtogether|repl|mode)|add_to_(session|personal)\\n)\\\\b","name":"support.function.pspell.php"},{"match":"(?i)\\\\breadline(_(completion_function|clear_history|callback_(handler_(install|remove)|read_char)|info|on_new_line|write_history|list_history|add_history|redisplay|read_history))?\\\\b","name":"support.function.readline.php"},{"match":"(?i)\\\\brecode(_(string|file))?\\\\b","name":"support.function.recode.php"},{"match":"(?i)\\\\brrd(c_disconnect|_(create|tune|info|update|error|version|first|fetch|last(update)?|restore|graph|xport))\\\\b","name":"support.function.rrd.php"},{"match":"(?xi)\\\\b\\n(\\n shm_((get|has|remove|put)_var|detach|attach|remove)|sem_(acquire|release|remove|get)|ftok|\\n msg_((get|remove|set|stat)_queue|send|queue_exists|receive)\\n)\\\\b","name":"support.function.sem.php"},{"match":"(?xi)\\\\b\\nsession_(\\n status|start|set_(save_handler|cookie_params)|save_path|name|commit|cache_(expire|limiter)|\\n is_registered|id|destroy|decode|unset|unregister|encode|write_close|abort|reset|register(_shutdown)?|\\n regenerate_id|get_cookie_params|module_name\\n)\\\\b","name":"support.function.session.php"},{"match":"(?i)\\\\bshmop_(size|close|open|delete|write|read)\\\\b","name":"support.function.shmop.php"},{"match":"(?i)\\\\bsimplexml_(import_dom|load_(string|file))\\\\b","name":"support.function.simplexml.php"},{"match":"(?xi)\\\\b\\n(\\n snmp(walk(oid)?|realwalk|get(next)?|set)|\\n snmp_(set_(valueretrieval|quick_print|enum_print|oid_(numeric_print|output_format))|read_mib|\\n get_(valueretrieval|quick_print))|\\n snmp[23]_(set|walk|real_walk|get(next)?)\\n)\\\\b","name":"support.function.snmp.php"},{"match":"(?i)\\\\b(is_soap_fault|use_soap_error_handler)\\\\b","name":"support.function.soap.php"},{"match":"(?xi)\\\\b\\nsocket_(\\n shutdown|strerror|send(to|msg)?|set_((non)?block|option)|select|connect|close|clear_error|bind|\\n create(_(pair|listen))?|cmsg_space|import_stream|write|listen|last_error|accept|recv(from|msg)?|\\n read|get(peer|sock)name|get_option\\n)\\\\b","name":"support.function.sockets.php"},{"match":"(?xi)\\\\b\\nsqlite_(\\n single_query|seek|has_(more|prev)|num_(fields|rows)|next|changes|column|current|close|\\n create_(aggregate|function)|open|unbuffered_query|udf_(decode|encode)_binary|popen|prev|\\n escape_string|error_string|exec|valid|key|query|field_name|factory|\\n fetch_(string|single|column_types|object|all|array)|lib(encoding|version)|\\n last_(insert_rowid|error)|array_query|rewind|busy_timeout\\n)\\\\b","name":"support.function.sqlite.php"},{"match":"(?xi)\\\\b\\nsqlsrv_(\\n send_stream_data|server_info|has_rows|num_(fields|rows)|next_result|connect|configure|commit|\\n client_info|close|cancel|prepare|errors|execute|query|field_metadata|fetch(_(array|object))?|\\n free_stmt|rows_affected|rollback|get_(config|field)|begin_transaction\\n)\\\\b","name":"support.function.sqlsrv.php"},{"match":"(?xi)\\\\b\\nstats_(\\n harmonic_mean|covariance|standard_deviation|skew|\\n cdf_(noncentral_(chisquare|f)|negative_binomial|chisquare|cauchy|t|uniform|poisson|exponential|f|weibull|\\n logistic|laplace|gamma|binomial|beta)|\\n stat_(noncentral_t|correlation|innerproduct|independent_t|powersum|percentile|paired_t|gennch|binomial_coef)|\\n dens_(normal|negative_binomial|chisquare|cauchy|t|pmf_(hypergeometric|poisson|binomial)|exponential|f|\\n weibull|logistic|laplace|gamma|beta)|\\n den_uniform|variance|kurtosis|absolute_deviation|\\n rand_(setall|phrase_to_seeds|ranf|get_seeds|\\n gen_(noncentral_[ft]|noncenral_chisquare|normal|chisquare|t|int|\\n i(uniform|poisson|binomial(_negative)?)|exponential|f(uniform)?|gamma|beta))\\n)\\\\b","name":"support.function.stats.php"},{"match":"(?xi)\\\\b\\n(\\n set_socket_blocking|\\n stream_(socket_(shutdown|sendto|server|client|pair|enable_crypto|accept|recvfrom|get_name)|\\n set_(chunk_size|timeout|(read|write)_buffer|blocking)|select|notification_callback|supports_lock|\\n context_(set_(option|default|params)|create|get_(options|default|params))|copy_to_stream|is_local|\\n encoding|filter_(append|prepend|register|remove)|wrapper_((un)?register|restore)|\\n resolve_include_path|register_wrapper|get_(contents|transports|filters|wrappers|line|meta_data)|\\n bucket_(new|prepend|append|make_writeable)\\n )\\n)\\\\b","name":"support.function.streamsfuncs.php"},{"match":"(?xi)\\\\b\\n(\\n money_format|md5(_file)?|metaphone|bin2hex|sscanf|sha1(_file)?|\\n str(str|c?spn|n(at)?(case)?cmp|chr|coll|(case)?cmp|to(upper|lower)|tok|tr|istr|pos|pbrk|len|rchr|ri?pos|rev)|\\n str_(getcsv|ireplace|pad|repeat|replace|rot13|shuffle|split|word_count)|\\n strip(c?slashes|os)|strip_tags|similar_text|soundex|substr(_(count|compare|replace))?|setlocale|\\n html(specialchars(_decode)?|entities)|html_entity_decode|hex2bin|hebrev(c)?|number_format|nl2br|nl_langinfo|\\n chop|chunk_split|chr|convert_(cyr_string|uu(decode|encode))|count_chars|crypt|crc32|trim|implode|ord|\\n uc(first|words)|join|parse_str|print(f)?|echo|explode|v?[fs]?printf|quoted_printable_(decode|encode)|\\n quotemeta|wordwrap|lcfirst|[lr]trim|localeconv|levenshtein|addc?slashes|get_html_translation_table\\n)\\\\b","name":"support.function.string.php"},{"match":"(?xi)\\\\b\\nsybase_(\\n set_message_handler|select_db|num_(fields|rows)|connect|close|deadlock_retry_count|data_seek|\\n unbuffered_query|pconnect|query|field_seek|fetch_(object|field|assoc|array|row)|free_result|\\n affected_rows|result|get_last_message|min_(client|error|message|server)_severity\\n)\\\\b","name":"support.function.sybase.php"},{"match":"(?i)\\\\b(taint|is_tainted|untaint)\\\\b","name":"support.function.taint.php"},{"match":"(?xi)\\\\b\\n(\\n tidy_((get|set)opt|set_encoding|save_config|config_count|clean_repair|is_(xhtml|xml)|diagnose|\\n (access|error|warning)_count|load_config|reset_config|(parse|repair)_(string|file)|\\n get_(status|html(_ver)?|head|config|output|opt_doc|root|release|body))|\\n ob_tidyhandler\\n)\\\\b","name":"support.function.tidy.php"},{"match":"(?i)\\\\btoken_(name|get_all)\\\\b","name":"support.function.tokenizer.php"},{"match":"(?xi)\\\\b\\ntrader_(\\n stoch(f|r|rsi)?|stddev|sin(h)?|sum|sub|set_(compat|unstable_period)|sqrt|sar(ext)?|sma|\\n ht_(sine|trend(line|mode)|dc(period|phase)|phasor)|natr|cci|cos(h)?|correl|\\n cdl(shootingstar|shortline|sticksandwich|stalledpattern|spinningtop|separatinglines|\\n hikkake(mod)?|highwave|homingpigeon|hangingman|harami(cross)?|hammer|concealbabyswall|\\n counterattack|closingmarubozu|thrusting|tasukigap|takuri|tristar|inneck|invertedhammer|\\n identical3crows|2crows|onneck|doji(star)?|darkcloudcover|dragonflydoji|unique3river|\\n upsidegap2crows|3(starsinsouth|inside|outside|whitesoldiers|linestrike|blackcrows)|\\n piercing|engulfing|evening(doji)?star|kicking(bylength)?|longline|longleggeddoji|\\n ladderbottom|advanceblock|abandonedbaby|risefall3methods|rickshawman|gapsidesidewhite|\\n gravestonedoji|xsidegap3methods|morning(doji)?star|mathold|matchinglow|marubozu|\\n belthold|breakaway)|\\n ceil|cmo|tsf|typprice|t3|tema|tan(h)?|trix|trima|trange|obv|div|dema|dx|ultosc|ppo|\\n plus_d[im]|errno|exp|ema|var|kama|floor|wclprice|willr|wma|ln|log10|bop|beta|bbands|\\n linearreg(_(slope|intercept|angle))?|asin|acos|atan|atr|adosc|ad|add|adx(r)?|apo|avgprice|\\n aroon(osc)?|rsi|roc|rocp|rocr(100)?|get_(compat|unstable_period)|min(index)?|minus_d[im]|\\n minmax(index)?|mid(point|price)|mom|mult|medprice|mfi|macd(ext|fix)?|mavp|max(index)?|ma(ma)?\\n)\\\\b","name":"support.function.trader.php"},{"match":"(?i)\\\\buopz_(copy|compose|implement|overload|delete|undefine|extend|function|flags|restore|rename|redefine|backup)\\\\b","name":"support.function.uopz.php"},{"match":"(?i)\\\\b(http_build_query|(raw)?url(decode|encode)|parse_url|get_(headers|meta_tags)|base64_(decode|encode))\\\\b","name":"support.function.url.php"},{"match":"(?xi)\\\\b\\n(\\n strval|settype|serialize|(bool|double|float)val|debug_zval_dump|intval|import_request_variables|isset|\\n is_(scalar|string|null|numeric|callable|int(eger)?|object|double|float|long|array|resource|real|bool)|\\n unset|unserialize|print_r|empty|var_(dump|export)|gettype|get_(defined_vars|resource_type)\\n)\\\\b","name":"support.function.var.php"},{"match":"(?i)\\\\bwddx_(serialize_(value|vars)|deserialize|packet_(start|end)|add_vars)\\\\b","name":"support.function.wddx.php"},{"match":"(?i)\\\\bxhprof_(sample_)?(disable|enable)\\\\b","name":"support.function.xhprof.php"},{"match":"(?xi)\\n\\\\b\\n(\\n utf8_(decode|encode)|\\n xml_(set_((notation|(end|start)_namespace|unparsed_entity)_decl_handler|\\n (character_data|default|element|external_entity_ref|processing_instruction)_handler|object)|\\n parse(_into_struct)?|parser_((get|set)_option|create(_ns)?|free)|error_string|\\n get_(current_((column|line)_number|byte_index)|error_code))\\n)\\\\b","name":"support.function.xml.php"},{"match":"(?xi)\\\\b\\nxmlrpc_(\\n server_(call_method|create|destroy|add_introspection_data|register_(introspection_callback|method))|\\n is_fault|decode(_request)?|parse_method_descriptions|encode(_request)?|(get|set)_type\\n)\\\\b","name":"support.function.xmlrpc.php"},{"match":"(?xi)\\\\b\\nxmlwriter_(\\n (end|start|write)_(comment|cdata|dtd(_(attlist|entity|element))?|document|pi|attribute|element)|\\n (start|write)_(attribute|element)_ns|write_raw|set_indent(_string)?|text|output_memory|open_(memory|uri)|\\n full_end_element|flush|\\n)\\\\b","name":"support.function.xmlwriter.php"},{"match":"(?xi)\\\\b\\n(\\n zlib_(decode|encode|get_coding_type)|readgzfile|\\n gz(seek|compress|close|tell|inflate|open|decode|deflate|uncompress|puts|passthru|encode|eof|file|\\n write|rewind|read|getc|getss?)\\n)\\\\b","name":"support.function.zlib.php"},{"match":"(?i)\\\\bis_int(eger)?\\\\b","name":"support.function.alias.php"}]},"switch_statement":{"patterns":[{"match":"\\\\s+(?=switch\\\\b)"},{"begin":"\\\\bswitch\\\\b(?!\\\\s*\\\\(.*\\\\)\\\\s*:)","beginCaptures":{"0":{"name":"keyword.control.switch.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.section.switch-block.end.bracket.curly.php"}},"name":"meta.switch-statement.php","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.switch-expression.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.switch-expression.end.bracket.round.php"}},"patterns":[{"include":"#language"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.section.switch-block.begin.bracket.curly.php"}},"end":"(?=}|\\\\?>)","patterns":[{"include":"#language"}]}]}]},"use-inner":{"patterns":[{"include":"#comments"},{"begin":"(?i)\\\\b(as)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.use-as.php"}},"end":"(?i)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*","endCaptures":{"0":{"name":"entity.other.alias.php"}}},{"include":"#class-name"},{"match":",","name":"punctuation.separator.delimiter.php"}]},"var_basic":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(?i)(\\\\$+)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*\\\\b","name":"variable.other.php"}]},"var_global":{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$)((_(COOKIE|FILES|GET|POST|REQUEST))|arg(v|c))\\\\b","name":"variable.other.global.php"},"var_global_safer":{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$)((GLOBALS|_(ENV|SERVER|SESSION)))","name":"variable.other.global.safer.php"},"var_language":{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$)this\\\\b","name":"variable.language.this.php"},"variable-name":{"patterns":[{"include":"#var_global"},{"include":"#var_global_safer"},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"punctuation.definition.variable.php"},"4":{"name":"keyword.operator.class.php"},"5":{"name":"variable.other.property.php"},"6":{"name":"punctuation.section.array.begin.php"},"7":{"name":"constant.numeric.index.php"},"8":{"name":"variable.other.index.php"},"9":{"name":"punctuation.definition.variable.php"},"10":{"name":"string.unquoted.index.php"},"11":{"name":"punctuation.section.array.end.php"}},"match":"(?xi)\\n((\\\\$)(?[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*))\\n(?:\\n (->)(\\\\g)\\n |\\n (\\\\[)(?:(\\\\d+)|((\\\\$)\\\\g)|([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*))(\\\\])\\n)?"},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"punctuation.definition.variable.php"},"4":{"name":"punctuation.definition.variable.php"}},"match":"(?i)((\\\\\${)(?[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)(}))"}]},"variables":{"patterns":[{"include":"#var_language"},{"include":"#var_global"},{"include":"#var_global_safer"},{"include":"#var_basic"},{"begin":"\\\\\${(?=.*?})","beginCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"patterns":[{"include":"#language"}]}]}},"scopeName":"text.html.php.blade","embeddedLangs":["html","xml","sql","javascript","json","css"]}`)),dte=[...ce,...Qt,...Ve,...J,...bn,...ue,Ate]});var X8={};x(X8,{default:()=>xB});var ute,xB,vB=_(()=>{ute=Object.freeze(JSON.parse('{"displayName":"1C (Query)","fileTypes":["sdbl","query"],"firstLineMatch":"(?i)\u0412\u044B\u0431\u0440\u0430\u0442\u044C|Select(\\\\s+\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u043D\u044B\u0435|\\\\s+Allowed)?(\\\\s+\u0420\u0430\u0437\u043B\u0438\u0447\u043D\u044B\u0435|\\\\s+Distinct)?(\\\\s+\u041F\u0435\u0440\u0432\u044B\u0435|\\\\s+Top)?.*","name":"sdbl","patterns":[{"match":"(^\\\\s*//.*$)","name":"comment.line.double-slash.sdbl"},{"begin":"//","end":"$","name":"comment.line.double-slash.sdbl"},{"begin":"\\\\\\"","end":"\\\\\\"(?![\\\\\\"])","name":"string.quoted.double.sdbl","patterns":[{"match":"\\\\\\"\\\\\\"","name":"constant.character.escape.sdbl"},{"match":"(^\\\\s*//.*$)","name":"comment.line.double-slash.sdbl"}]},{"match":"(?i)(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041D\u0435\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043E|Undefined|\u0418\u0441\u0442\u0438\u043D\u0430|True|\u041B\u043E\u0436\u044C|False|NULL)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","name":"constant.language.sdbl"},{"match":"(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\\\\d+\\\\.?\\\\d*)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","name":"constant.numeric.sdbl"},{"match":"(?i)(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0412\u044B\u0431\u043E\u0440|Case|\u041A\u043E\u0433\u0434\u0430|When|\u0422\u043E\u0433\u0434\u0430|Then|\u0418\u043D\u0430\u0447\u0435|Else|\u041A\u043E\u043D\u0435\u0446|End)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","name":"keyword.control.conditional.sdbl"},{"match":"(?i)(?=|=|<|>","name":"keyword.operator.comparison.sdbl"},{"match":"(\\\\+|-|\\\\*|/|%)","name":"keyword.operator.arithmetic.sdbl"},{"match":"(,|;)","name":"keyword.operator.sdbl"},{"match":"(?i)(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0412\u044B\u0431\u0440\u0430\u0442\u044C|Select|\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u043D\u044B\u0435|Allowed|\u0420\u0430\u0437\u043B\u0438\u0447\u043D\u044B\u0435|Distinct|\u041F\u0435\u0440\u0432\u044B\u0435|Top|\u041A\u0430\u043A|As|\u041F\u0443\u0441\u0442\u0430\u044F\u0422\u0430\u0431\u043B\u0438\u0446\u0430|EmptyTable|\u041F\u043E\u043C\u0435\u0441\u0442\u0438\u0442\u044C|Into|\u0423\u043D\u0438\u0447\u0442\u043E\u0436\u0438\u0442\u044C|Drop|\u0418\u0437|From|((\u041B\u0435\u0432\u043E\u0435|Left|\u041F\u0440\u0430\u0432\u043E\u0435|Right|\u041F\u043E\u043B\u043D\u043E\u0435|Full)\\\\s+(\u0412\u043D\u0435\u0448\u043D\u0435\u0435\\\\s+|Outer\\\\s+)?\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0435|Join)|((\u0412\u043D\u0443\u0442\u0440\u0435\u043D\u043D\u0435\u0435|Inner)\\\\s+\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0435|Join)|\u0413\u0434\u0435|Where|(\u0421\u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C\\\\s+\u041F\u043E(\\\\s+\u0413\u0440\u0443\u043F\u043F\u0438\u0440\u0443\u044E\u0449\u0438\u043C\\\\s+\u041D\u0430\u0431\u043E\u0440\u0430\u043C)?)|(Group\\\\s+By(\\\\s+Grouping\\\\s+Set)?)|\u0418\u043C\u0435\u044E\u0449\u0438\u0435|Having|\u041E\u0431\u044A\u0435\u0434\u0438\u043D\u0438\u0442\u044C(\\\\s+\u0412\u0441\u0435)?|Union(\\\\s+All)?|(\u0423\u043F\u043E\u0440\u044F\u0434\u043E\u0447\u0438\u0442\u044C\\\\s+\u041F\u043E)|(Order\\\\s+By)|\u0410\u0432\u0442\u043E\u0443\u043F\u043E\u0440\u044F\u0434\u043E\u0447\u0438\u0432\u0430\u043D\u0438\u0435|Autoorder|\u0418\u0442\u043E\u0433\u0438|Totals|\u041F\u043E(\\\\s+\u041E\u0431\u0449\u0438\u0435)?|By(\\\\s+Overall)?|(\u0422\u043E\u043B\u044C\u043A\u043E\\\\s+)?\u0418\u0435\u0440\u0430\u0440\u0445\u0438\u044F|(Only\\\\s+)?Hierarchy|\u041F\u0435\u0440\u0438\u043E\u0434\u0430\u043C\u0438|Periods|\u0418\u043D\u0434\u0435\u043A\u0441\u0438\u0440\u043E\u0432\u0430\u0442\u044C|Index|\u0412\u044B\u0440\u0430\u0437\u0438\u0442\u044C|Cast|\u0412\u043E\u0437\u0440|Asc|\u0423\u0431\u044B\u0432|Desc|\u0414\u043B\u044F\\\\s+\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F|(For\\\\s+Update(\\\\s+Of)?)|\u0421\u043F\u0435\u0446\u0441\u0438\u043C\u0432\u043E\u043B|Escape|\u0421\u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u043E\u041F\u043E|GroupedBy)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","name":"keyword.control.sdbl"},{"comment":"\u0424\u0443\u043D\u043A\u0446\u0438\u0438 \u044F\u0437\u044B\u043A\u0430 \u0437\u0430\u043F\u0440\u043E\u0441\u043E\u0432","match":"(?i)(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|Value|\u0414\u0430\u0442\u0430\u0412\u0440\u0435\u043C\u044F|DateTime|\u0422\u0438\u043F|Type)(?=\\\\()","name":"support.function.sdbl"},{"comment":"\u0424\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0441\u0442\u0440\u043E\u043A\u0430\u043C\u0438","match":"(?i)(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u043E\u0434\u0441\u0442\u0440\u043E\u043A\u0430|Substring|\u041D\u0420\u0435\u0433|Lower|\u0412\u0420\u0435\u0433|Upper|\u041B\u0435\u0432|Left|\u041F\u0440\u0430\u0432|Right|\u0414\u043B\u0438\u043D\u0430\u0421\u0442\u0440\u043E\u043A\u0438|StringLength|\u0421\u0442\u0440\u041D\u0430\u0439\u0442\u0438|StrFind|\u0421\u0442\u0440\u0417\u0430\u043C\u0435\u043D\u0438\u0442\u044C|StrReplace|\u0421\u043E\u043A\u0440\u041B\u041F|TrimAll|\u0421\u043E\u043A\u0440\u041B|TrimL|\u0421\u043E\u043A\u0440\u041F|TrimR)(?=\\\\()","name":"support.function.sdbl"},{"comment":"\u0424\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0434\u0430\u0442\u0430\u043C\u0438","match":"(?i)(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0413\u043E\u0434|Year|\u041A\u0432\u0430\u0440\u0442\u0430\u043B|Quarter|\u041C\u0435\u0441\u044F\u0446|Month|\u0414\u0435\u043D\u044C\u0413\u043E\u0434\u0430|DayOfYear|\u0414\u0435\u043D\u044C|Day|\u041D\u0435\u0434\u0435\u043B\u044F|Week|\u0414\u0435\u043D\u044C\u041D\u0435\u0434\u0435\u043B\u0438|Weekday|\u0427\u0430\u0441|Hour|\u041C\u0438\u043D\u0443\u0442\u0430|Minute|\u0421\u0435\u043A\u0443\u043D\u0434\u0430|Second|\u041D\u0430\u0447\u0430\u043B\u043E\u041F\u0435\u0440\u0438\u043E\u0434\u0430|BeginOfPeriod|\u041A\u043E\u043D\u0435\u0446\u041F\u0435\u0440\u0438\u043E\u0434\u0430|EndOfPeriod|\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C\u041A\u0414\u0430\u0442\u0435|DateAdd|\u0420\u0430\u0437\u043D\u043E\u0441\u0442\u044C\u0414\u0430\u0442|DateDiff|\u041F\u043E\u043B\u0443\u0433\u043E\u0434\u0438\u0435|HalfYear|\u0414\u0435\u043A\u0430\u0434\u0430|TenDays)(?=\\\\()","name":"support.function.sdbl"},{"comment":"\u0424\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0447\u0438\u0441\u043B\u0430\u043C\u0438","match":"(?i)(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(ACOS|COS|ASIN|SIN|ATAN|TAN|EXP|POW|LOG|LOG10|\u0426\u0435\u043B|Int|\u041E\u043A\u0440|Round|SQRT)(?=\\\\()","name":"support.function.sdbl"},{"comment":"\u0410\u0433\u0440\u0435\u0433\u0430\u0442\u043D\u044B\u0435 \u0444\u0443\u043D\u043A\u0446\u0438\u0438","match":"(?i)(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0421\u0443\u043C\u043C\u0430|Sum|\u0421\u0440\u0435\u0434\u043D\u0435\u0435|Avg|\u041C\u0438\u043D\u0438\u043C\u0443\u043C|Min|\u041C\u0430\u043A\u0441\u0438\u043C\u0443\u043C|Max|\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E|Count)(?=\\\\()","name":"support.function.sdbl"},{"comment":"\u041F\u0440\u043E\u0447\u0438\u0435 \u0444\u0443\u043D\u043A\u0446\u0438\u0438","match":"(?i)(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0415\u0441\u0442\u044CNULL|IsNULL|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435|Presentation|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u0421\u0441\u044B\u043B\u043A\u0438|RefPresentation|\u0422\u0438\u043F\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|ValueType|\u0410\u0432\u0442\u043E\u043D\u043E\u043C\u0435\u0440\u0417\u0430\u043F\u0438\u0441\u0438|RecordAutoNumber|\u0420\u0430\u0437\u043C\u0435\u0440\u0425\u0440\u0430\u043D\u0438\u043C\u044B\u0445\u0414\u0430\u043D\u043D\u044B\u0445|StoredDataSize|\u0423\u043D\u0438\u043A\u0430\u043B\u044C\u043D\u044B\u0439\u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440|UUID)(?=\\\\()","name":"support.function.sdbl"},{"match":"(?i)(?<=[^\\\\w\u0430-\u044F\u0451\\\\.])(\u0427\u0438\u0441\u043B\u043E|Number|\u0421\u0442\u0440\u043E\u043A\u0430|String|\u0414\u0430\u0442\u0430|Date|\u0411\u0443\u043B\u0435\u0432\u043E|Boolean)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","name":"support.type.sdbl"},{"match":"(&[\\\\w\u0430-\u044F\u0451]+)","name":"variable.parameter.sdbl"}],"scopeName":"source.sdbl","aliases":["1c-query"]}')),xB=[ute]});var eN={};x(eN,{default:()=>mte});var pte,mte,tN=_(()=>{vB();pte=Object.freeze(JSON.parse(`{"displayName":"1C (Enterprise)","fileTypes":["bsl","os"],"name":"bsl","patterns":[{"include":"#basic"},{"include":"#miscellaneous"},{"begin":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u0430|Procedure|\u0424\u0443\u043D\u043A\u0446\u0438\u044F|Function)\\\\s+([a-z\u0430-\u044F\u04510-9_]+)\\\\s*(\\\\())","beginCaptures":{"1":{"name":"storage.type.bsl"},"2":{"name":"entity.name.function.bsl"},"3":{"name":"punctuation.bracket.begin.bsl"}},"comment":"Proc and function definition","end":"(?i:(\\\\))\\\\s*((\u042D\u043A\u0441\u043F\u043E\u0440\u0442|Export)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$))?)","endCaptures":{"1":{"name":"punctuation.bracket.end.bsl"},"2":{"name":"storage.modifier.bsl"}},"patterns":[{"include":"#annotations"},{"include":"#basic"},{"match":"(=)","name":"keyword.operator.assignment.bsl"},{"match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0417\u043D\u0430\u0447|Val)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$))","name":"storage.modifier.bsl"},{"match":"(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)((?<==)(?i)[a-z\u0430-\u044F\u04510-9_]+)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","name":"invalid.illegal.bsl"},{"match":"(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)((?<==\\\\s)\\\\s*(?i)[a-z\u0430-\u044F\u04510-9_]+)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","name":"invalid.illegal.bsl"},{"match":"(?i:[a-z\u0430-\u044F\u04510-9_]+)","name":"variable.parameter.bsl"}]},{"begin":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u0435\u0440\u0435\u043C|Var)\\\\s+([a-z\u0430-\u044F\u04510-9_]+)\\\\s*)","beginCaptures":{"1":{"name":"storage.type.var.bsl"},"2":{"name":"variable.bsl"}},"comment":"Define of variable","end":"(;)","endCaptures":{"1":{"name":"keyword.operator.bsl"}},"patterns":[{"match":"(,)","name":"keyword.operator.bsl"},{"match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u042D\u043A\u0441\u043F\u043E\u0440\u0442|Export)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$))","name":"storage.modifier.bsl"},{"match":"(?i:[a-z\u0430-\u044F\u04510-9_]+)","name":"variable.bsl"}]},{"begin":"(?i:(?<=;|^)\\\\s*(\u0415\u0441\u043B\u0438|If))","beginCaptures":{"1":{"name":"keyword.control.conditional.bsl"}},"comment":"Conditional","end":"(?i:(\u0422\u043E\u0433\u0434\u0430|Then))","endCaptures":{"1":{"name":"keyword.control.conditional.bsl"}},"name":"meta.conditional.bsl","patterns":[{"include":"#basic"},{"include":"#miscellaneous"}]},{"begin":"(?i:(?<=;|^)\\\\s*([\\\\w\u0430-\u044F\u0451]+))\\\\s*(=)","beginCaptures":{"1":{"name":"variable.assignment.bsl"},"2":{"name":"keyword.operator.assignment.bsl"}},"comment":"Variable assignment","end":"(?i:(?=(;|\u0418\u043D\u0430\u0447\u0435|\u041A\u043E\u043D\u0435\u0446|Els|End)))","name":"meta.var-single-variable.bsl","patterns":[{"include":"#basic"},{"include":"#miscellaneous"}]},{"match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041A\u043E\u043D\u0435\u0446\u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B|EndProcedure|\u041A\u043E\u043D\u0435\u0446\u0424\u0443\u043D\u043A\u0446\u0438\u0438|EndFunction)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$))","name":"storage.type.bsl"},{"match":"(?i)#(\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C|Use)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","name":"keyword.control.import.bsl"},{"match":"(?i)#native","name":"keyword.control.native.bsl"},{"match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u0440\u0435\u0440\u0432\u0430\u0442\u044C|Break|\u041F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C|Continue|\u0412\u043E\u0437\u0432\u0440\u0430\u0442|Return)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$))","name":"keyword.control.bsl"},{"match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0415\u0441\u043B\u0438|If|\u0418\u043D\u0430\u0447\u0435|Else|\u0418\u043D\u0430\u0447\u0435\u0415\u0441\u043B\u0438|ElsIf|\u0422\u043E\u0433\u0434\u0430|Then|\u041A\u043E\u043D\u0435\u0446\u0415\u0441\u043B\u0438|EndIf)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$))","name":"keyword.control.conditional.bsl"},{"match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u043E\u043F\u044B\u0442\u043A\u0430|Try|\u0418\u0441\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435|Except|\u041A\u043E\u043D\u0435\u0446\u041F\u043E\u043F\u044B\u0442\u043A\u0438|EndTry|\u0412\u044B\u0437\u0432\u0430\u0442\u044C\u0418\u0441\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435|Raise)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$))","name":"keyword.control.exception.bsl"},{"match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u043E\u043A\u0430|While|(\u0414\u043B\u044F|For)(\\\\s+(\u041A\u0430\u0436\u0434\u043E\u0433\u043E|Each))?|\u0418\u0437|In|\u041F\u043E|To|\u0426\u0438\u043A\u043B|Do|\u041A\u043E\u043D\u0435\u0446\u0426\u0438\u043A\u043B\u0430|EndDo)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$))","name":"keyword.control.repeat.bsl"},{"match":"(?i:&(\u041D\u0430\u041A\u043B\u0438\u0435\u043D\u0442\u0435((\u041D\u0430\u0421\u0435\u0440\u0432\u0435\u0440\u0435(\u0411\u0435\u0437\u041A\u043E\u043D\u0442\u0435\u043A\u0441\u0442\u0430)?)?)|AtClient((AtServer(NoContext)?)?)|\u041D\u0430\u0421\u0435\u0440\u0432\u0435\u0440\u0435(\u0411\u0435\u0437\u041A\u043E\u043D\u0442\u0435\u043A\u0441\u0442\u0430)?|AtServer(NoContext)?))","name":"storage.modifier.directive.bsl"},{"include":"#annotations"},{"match":"(?i:#(\u0415\u0441\u043B\u0438|If|\u0418\u043D\u0430\u0447\u0435\u0415\u0441\u043B\u0438|ElsIf|\u0418\u043D\u0430\u0447\u0435|Else|\u041A\u043E\u043D\u0435\u0446\u0415\u0441\u043B\u0438|EndIf).*(\u0422\u043E\u0433\u0434\u0430|Then)?)","name":"keyword.other.preprocessor.bsl"},{"begin":"(?i)(#(\u041E\u0431\u043B\u0430\u0441\u0442\u044C|Region))(\\\\s+([\\\\w\u0430-\u044F\u0451]+))?","beginCaptures":{"1":{"name":"keyword.other.section.bsl"},"4":{"name":"entity.name.section.bsl"}},"comment":"Region start","end":"$"},{"comment":"Region end","match":"(?i)#(\u041A\u043E\u043D\u0435\u0446\u041E\u0431\u043B\u0430\u0441\u0442\u0438|EndRegion)","name":"keyword.other.section.bsl"},{"comment":"Delete start","match":"(?i)#(\u0423\u0434\u0430\u043B\u0435\u043D\u0438\u0435|Delete)","name":"keyword.other.section.bsl"},{"comment":"Delete end","match":"(?i)#(\u041A\u043E\u043D\u0435\u0446\u0423\u0434\u0430\u043B\u0435\u043D\u0438\u044F|EndDelete)","name":"keyword.other.section.bsl"},{"comment":"Inster start","match":"(?i)#(\u0412\u0441\u0442\u0430\u0432\u043A\u0430|Insert)","name":"keyword.other.section.bsl"},{"comment":"Insert end","match":"(?i)#(\u041A\u043E\u043D\u0435\u0446\u0412\u0441\u0442\u0430\u0432\u043A\u0438|EndInsert)","name":"keyword.other.section.bsl"}],"repository":{"annotations":{"patterns":[{"begin":"(?i)(&([a-z\u0430-\u044F\u04510-9_]+))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.type.annotation.bsl"},"3":{"name":"punctuation.bracket.begin.bsl"}},"comment":"Annotations with parameters","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.bracket.end.bsl"}},"patterns":[{"include":"#basic"},{"match":"(=)","name":"keyword.operator.assignment.bsl"},{"match":"(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)((?<==)(?i)[a-z\u0430-\u044F\u04510-9_]+)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","name":"invalid.illegal.bsl"},{"match":"(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)((?<==\\\\s)\\\\s*(?i)[a-z\u0430-\u044F\u04510-9_]+)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","name":"invalid.illegal.bsl"},{"match":"(?i)[a-z\u0430-\u044F\u04510-9_]+","name":"variable.annotation.bsl"}]},{"comment":"Annotations without parameters","match":"(?i)(&([a-z\u0430-\u044F\u04510-9_]+))","name":"storage.type.annotation.bsl"}]},"basic":{"patterns":[{"begin":"//","end":"$","name":"comment.line.double-slash.bsl"},{"begin":"\\\\\\"","end":"\\\\\\"(?![\\\\\\"])","name":"string.quoted.double.bsl","patterns":[{"include":"#query"},{"match":"\\\\\\"\\\\\\"","name":"constant.character.escape.bsl"},{"match":"(^\\\\s*//.*$)","name":"comment.line.double-slash.bsl"}]},{"match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041D\u0435\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043E|Undefined|\u0418\u0441\u0442\u0438\u043D\u0430|True|\u041B\u043E\u0436\u044C|False|NULL)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$))","name":"constant.language.bsl"},{"match":"(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\\\\d+\\\\.?\\\\d*)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","name":"constant.numeric.bsl"},{"match":"\\\\'((\\\\d{4}[^\\\\d\\\\']*\\\\d{2}[^\\\\d\\\\']*\\\\d{2})([^\\\\d\\\\']*\\\\d{2}[^\\\\d\\\\']*\\\\d{2}([^\\\\d\\\\']*\\\\d{2})?)?)\\\\'","name":"constant.other.date.bsl"},{"match":"(,)","name":"keyword.operator.bsl"},{"match":"(\\\\()","name":"punctuation.bracket.begin.bsl"},{"match":"(\\\\))","name":"punctuation.bracket.end.bsl"}]},"miscellaneous":{"patterns":[{"match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041D\u0415|NOT|\u0418|AND|\u0418\u041B\u0418|OR)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$))","name":"keyword.operator.logical.bsl"},{"match":"<=|>=|=|<|>","name":"keyword.operator.comparison.bsl"},{"match":"(\\\\+|-|\\\\*|/|%)","name":"keyword.operator.arithmetic.bsl"},{"match":"(;|\\\\?)","name":"keyword.operator.bsl"},{"comment":"Functions w/o brackets","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041D\u043E\u0432\u044B\u0439|New)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$))","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C\u0438 \u0442\u0438\u043F\u0430 \u0421\u0442\u0440\u043E\u043A\u0430","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0421\u0442\u0440\u0414\u043B\u0438\u043D\u0430|StrLen|\u0421\u043E\u043A\u0440\u041B|TrimL|\u0421\u043E\u043A\u0440\u041F|TrimR|\u0421\u043E\u043A\u0440\u041B\u041F|TrimAll|\u041B\u0435\u0432|Left|\u041F\u0440\u0430\u0432|Right|\u0421\u0440\u0435\u0434|Mid|\u0421\u0442\u0440\u041D\u0430\u0439\u0442\u0438|StrFind|\u0412\u0420\u0435\u0433|Upper|\u041D\u0420\u0435\u0433|Lower|\u0422\u0420\u0435\u0433|Title|\u0421\u0438\u043C\u0432\u043E\u043B|Char|\u041A\u043E\u0434\u0421\u0438\u043C\u0432\u043E\u043B\u0430|CharCode|\u041F\u0443\u0441\u0442\u0430\u044F\u0421\u0442\u0440\u043E\u043A\u0430|IsBlankString|\u0421\u0442\u0440\u0417\u0430\u043C\u0435\u043D\u0438\u0442\u044C|StrReplace|\u0421\u0442\u0440\u0427\u0438\u0441\u043B\u043E\u0421\u0442\u0440\u043E\u043A|StrLineCount|\u0421\u0442\u0440\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u0442\u0440\u043E\u043A\u0443|StrGetLine|\u0421\u0442\u0440\u0427\u0438\u0441\u043B\u043E\u0412\u0445\u043E\u0436\u0434\u0435\u043D\u0438\u0439|StrOccurrenceCount|\u0421\u0442\u0440\u0421\u0440\u0430\u0432\u043D\u0438\u0442\u044C|StrCompare|\u0421\u0442\u0440\u041D\u0430\u0447\u0438\u043D\u0430\u0435\u0442\u0441\u044F\u0421|StrStartWith|\u0421\u0442\u0440\u0417\u0430\u043A\u0430\u043D\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044F\u041D\u0430|StrEndsWith|\u0421\u0442\u0440\u0420\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u044C|StrSplit|\u0421\u0442\u0440\u0421\u043E\u0435\u0434\u0438\u043D\u0438\u0442\u044C|StrConcat)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C\u0438 \u0442\u0438\u043F\u0430 \u0427\u0438\u0441\u043B\u043E","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0426\u0435\u043B|Int|\u041E\u043A\u0440|Round|ACos|ASin|ATan|Cos|Exp|Log|Log10|Pow|Sin|Sqrt|Tan)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C\u0438 \u0442\u0438\u043F\u0430 \u0414\u0430\u0442\u0430","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0413\u043E\u0434|Year|\u041C\u0435\u0441\u044F\u0446|Month|\u0414\u0435\u043D\u044C|Day|\u0427\u0430\u0441|Hour|\u041C\u0438\u043D\u0443\u0442\u0430|Minute|\u0421\u0435\u043A\u0443\u043D\u0434\u0430|Second|\u041D\u0430\u0447\u0430\u043B\u043E\u0413\u043E\u0434\u0430|BegOfYear|\u041D\u0430\u0447\u0430\u043B\u043E\u0414\u043D\u044F|BegOfDay|\u041D\u0430\u0447\u0430\u043B\u043E\u041A\u0432\u0430\u0440\u0442\u0430\u043B\u0430|BegOfQuarter|\u041D\u0430\u0447\u0430\u043B\u043E\u041C\u0435\u0441\u044F\u0446\u0430|BegOfMonth|\u041D\u0430\u0447\u0430\u043B\u043E\u041C\u0438\u043D\u0443\u0442\u044B|BegOfMinute|\u041D\u0430\u0447\u0430\u043B\u043E\u041D\u0435\u0434\u0435\u043B\u0438|BegOfWeek|\u041D\u0430\u0447\u0430\u043B\u043E\u0427\u0430\u0441\u0430|BegOfHour|\u041A\u043E\u043D\u0435\u0446\u0413\u043E\u0434\u0430|EndOfYear|\u041A\u043E\u043D\u0435\u0446\u0414\u043D\u044F|EndOfDay|\u041A\u043E\u043D\u0435\u0446\u041A\u0432\u0430\u0440\u0442\u0430\u043B\u0430|EndOfQuarter|\u041A\u043E\u043D\u0435\u0446\u041C\u0435\u0441\u044F\u0446\u0430|EndOfMonth|\u041A\u043E\u043D\u0435\u0446\u041C\u0438\u043D\u0443\u0442\u044B|EndOfMinute|\u041A\u043E\u043D\u0435\u0446\u041D\u0435\u0434\u0435\u043B\u0438|EndOfWeek|\u041A\u043E\u043D\u0435\u0446\u0427\u0430\u0441\u0430|EndOfHour|\u041D\u0435\u0434\u0435\u043B\u044F\u0413\u043E\u0434\u0430|WeekOfYear|\u0414\u0435\u043D\u044C\u0413\u043E\u0434\u0430|DayOfYear|\u0414\u0435\u043D\u044C\u041D\u0435\u0434\u0435\u043B\u0438|WeekDay|\u0422\u0435\u043A\u0443\u0449\u0430\u044F\u0414\u0430\u0442\u0430|CurrentDate|\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C\u041C\u0435\u0441\u044F\u0446|AddMonth)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C\u0438 \u0442\u0438\u043F\u0430 \u0422\u0438\u043F","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0422\u0438\u043F|Type|\u0422\u0438\u043F\u0417\u043D\u0447|TypeOf)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u043F\u0440\u0435\u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u043D\u0438\u044F \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0439","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0411\u0443\u043B\u0435\u0432\u043E|Boolean|\u0427\u0438\u0441\u043B\u043E|Number|\u0421\u0442\u0440\u043E\u043A\u0430|String|\u0414\u0430\u0442\u0430|Date)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u043F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0438\u043D\u0442\u0435\u0440\u0430\u043A\u0442\u0438\u0432\u043D\u043E\u0439 \u0440\u0430\u0431\u043E\u0442\u044B","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0412\u043E\u043F\u0440\u043E\u0441|ShowQueryBox|\u0412\u043E\u043F\u0440\u043E\u0441|DoQueryBox|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435|ShowMessageBox|\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435|DoMessageBox|\u0421\u043E\u043E\u0431\u0449\u0438\u0442\u044C|Message|\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F|ClearMessages|\u041E\u043F\u043E\u0432\u0435\u0441\u0442\u0438\u0442\u044C\u041E\u0431\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u0438|NotifyChanged|\u0421\u043E\u0441\u0442\u043E\u044F\u043D\u0438\u0435|Status|\u0421\u0438\u0433\u043D\u0430\u043B|Beep|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|ShowValue|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|OpenValue|\u041E\u043F\u043E\u0432\u0435\u0441\u0442\u0438\u0442\u044C|Notify|\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0430\u041F\u0440\u0435\u0440\u044B\u0432\u0430\u043D\u0438\u044F\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|UserInterruptProcessing|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0421\u043E\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u0435\u0421\u043F\u0440\u0430\u0432\u043A\u0438|OpenHelpContent|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0418\u043D\u0434\u0435\u043A\u0441\u0421\u043F\u0440\u0430\u0432\u043A\u0438|OpenHelpIndex|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0421\u043F\u0440\u0430\u0432\u043A\u0443|OpenHelp|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E\u041E\u0431\u041E\u0448\u0438\u0431\u043A\u0435|ShowErrorInfo|\u041A\u0440\u0430\u0442\u043A\u043E\u0435\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041E\u0448\u0438\u0431\u043A\u0438|BriefErrorDescription|\u041F\u043E\u0434\u0440\u043E\u0431\u043D\u043E\u0435\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041E\u0448\u0438\u0431\u043A\u0438|DetailErrorDescription|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0424\u043E\u0440\u043C\u0443|GetForm|\u0417\u0430\u043A\u0440\u044B\u0442\u044C\u0421\u043F\u0440\u0430\u0432\u043A\u0443|CloseHelp|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u041E\u043F\u043E\u0432\u0435\u0449\u0435\u043D\u0438\u0435\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|ShowUserNotification|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0424\u043E\u0440\u043C\u0443|OpenForm|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0424\u043E\u0440\u043C\u0443\u041C\u043E\u0434\u0430\u043B\u044C\u043D\u043E|OpenFormModal|\u0410\u043A\u0442\u0438\u0432\u043D\u043E\u0435\u041E\u043A\u043D\u043E|ActiveWindow|\u0412\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0443\u041E\u043F\u043E\u0432\u0435\u0449\u0435\u043D\u0438\u044F|ExecuteNotifyProcessing)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0434\u043B\u044F \u0432\u044B\u0437\u043E\u0432\u0430 \u0434\u0438\u0430\u043B\u043E\u0433\u0430 \u0432\u0432\u043E\u0434\u0430 \u0434\u0430\u043D\u043D\u044B\u0445","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0412\u0432\u043E\u0434\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|ShowInputValue|\u0412\u0432\u0435\u0441\u0442\u0438\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|InputValue|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0412\u0432\u043E\u0434\u0427\u0438\u0441\u043B\u0430|ShowInputNumber|\u0412\u0432\u0435\u0441\u0442\u0438\u0427\u0438\u0441\u043B\u043E|InputNumber|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0412\u0432\u043E\u0434\u0421\u0442\u0440\u043E\u043A\u0438|ShowInputString|\u0412\u0432\u0435\u0441\u0442\u0438\u0421\u0442\u0440\u043E\u043A\u0443|InputString|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0412\u0432\u043E\u0434\u0414\u0430\u0442\u044B|ShowInputDate|\u0412\u0432\u0435\u0441\u0442\u0438\u0414\u0430\u0442\u0443|InputDate)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0444\u043E\u0440\u043C\u0430\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0424\u043E\u0440\u043C\u0430\u0442|Format|\u0427\u0438\u0441\u043B\u043E\u041F\u0440\u043E\u043F\u0438\u0441\u044C\u044E|NumberInWords|\u041D\u0421\u0442\u0440|NStr|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041F\u0435\u0440\u0438\u043E\u0434\u0430|PeriodPresentation|\u0421\u0442\u0440\u0428\u0430\u0431\u043B\u043E\u043D|StrTemplate)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u043E\u0431\u0440\u0430\u0449\u0435\u043D\u0438\u044F \u043A \u043A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u0431\u0449\u0438\u0439\u041C\u0430\u043A\u0435\u0442|GetCommonTemplate|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u0431\u0449\u0443\u044E\u0424\u043E\u0440\u043C\u0443|GetCommonForm|\u041F\u0440\u0435\u0434\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0435\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|PredefinedValue|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041F\u043E\u043B\u043D\u043E\u0435\u0418\u043C\u044F\u041F\u0440\u0435\u0434\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0433\u043E\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|GetPredefinedValueFullName)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u043F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0441\u0435\u0430\u043D\u0441\u0430 \u0440\u0430\u0431\u043E\u0442\u044B","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u0421\u0438\u0441\u0442\u0435\u043C\u044B|GetCaption|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u043A\u043E\u0440\u043E\u0441\u0442\u044C\u041A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0433\u043E\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F|GetClientConnectionSpeed|\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u041E\u0436\u0438\u0434\u0430\u043D\u0438\u044F|AttachIdleHandler|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u0421\u0438\u0441\u0442\u0435\u043C\u044B|SetCaption|\u041E\u0442\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u041E\u0436\u0438\u0434\u0430\u043D\u0438\u044F|DetachIdleHandler|\u0418\u043C\u044F\u041A\u043E\u043C\u043F\u044C\u044E\u0442\u0435\u0440\u0430|ComputerName|\u0417\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044C\u0420\u0430\u0431\u043E\u0442\u0443\u0421\u0438\u0441\u0442\u0435\u043C\u044B|Exit|\u0418\u043C\u044F\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|UserName|\u041F\u0440\u0435\u043A\u0440\u0430\u0442\u0438\u0442\u044C\u0420\u0430\u0431\u043E\u0442\u0443\u0421\u0438\u0441\u0442\u0435\u043C\u044B|Terminate|\u041F\u043E\u043B\u043D\u043E\u0435\u0418\u043C\u044F\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|UserFullName|\u0417\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0420\u0430\u0431\u043E\u0442\u0443\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|LockApplication|\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u041F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u044B|BinDir|\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u044B\u0445\u0424\u0430\u0439\u043B\u043E\u0432|TempFilesDir|\u041F\u0440\u0430\u0432\u043E\u0414\u043E\u0441\u0442\u0443\u043F\u0430|AccessRight|\u0420\u043E\u043B\u044C\u0414\u043E\u0441\u0442\u0443\u043F\u043D\u0430|IsInRole|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u042F\u0437\u044B\u043A|CurrentLanguage|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u041A\u043E\u0434\u041B\u043E\u043A\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438|CurrentLocaleCode|\u0421\u0442\u0440\u043E\u043A\u0430\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|InfoBaseConnectionString|\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u041E\u043F\u043E\u0432\u0435\u0449\u0435\u043D\u0438\u044F|AttachNotificationHandler|\u041E\u0442\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u041E\u043F\u043E\u0432\u0435\u0449\u0435\u043D\u0438\u044F|DetachNotificationHandler|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044E|GetUserMessages|\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B\u0414\u043E\u0441\u0442\u0443\u043F\u0430|AccessParameters|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|ApplicationPresentation|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u042F\u0437\u044B\u043A\u0421\u0438\u0441\u0442\u0435\u043C\u044B|CurrentSystemLanguage|\u0417\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C\u0421\u0438\u0441\u0442\u0435\u043C\u0443|RunSystem|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u0420\u0435\u0436\u0438\u043C\u0417\u0430\u043F\u0443\u0441\u043A\u0430|CurrentRunMode|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0427\u0430\u0441\u043E\u0432\u043E\u0439\u041F\u043E\u044F\u0441\u0421\u0435\u0430\u043D\u0441\u0430|SetSessionTimeZone|\u0427\u0430\u0441\u043E\u0432\u043E\u0439\u041F\u043E\u044F\u0441\u0421\u0435\u0430\u043D\u0441\u0430|SessionTimeZone|\u0422\u0435\u043A\u0443\u0449\u0430\u044F\u0414\u0430\u0442\u0430\u0421\u0435\u0430\u043D\u0441\u0430|CurrentSessionDate|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041A\u0440\u0430\u0442\u043A\u0438\u0439\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|SetShortApplicationCaption|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041A\u0440\u0430\u0442\u043A\u0438\u0439\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|GetShortApplicationCaption|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041F\u0440\u0430\u0432\u0430|RightPresentation|\u0412\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u044C\u041F\u0440\u043E\u0432\u0435\u0440\u043A\u0443\u041F\u0440\u0430\u0432\u0414\u043E\u0441\u0442\u0443\u043F\u0430|VerifyAccessRights|\u0420\u0430\u0431\u043E\u0447\u0438\u0439\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0414\u0430\u043D\u043D\u044B\u0445\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|UserDataWorkDir|\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432|DocumentsDir|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E\u042D\u043A\u0440\u0430\u043D\u043E\u0432\u041A\u043B\u0438\u0435\u043D\u0442\u0430|GetClientDisplaysInformation|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u0412\u0430\u0440\u0438\u0430\u043D\u0442\u041E\u0441\u043D\u043E\u0432\u043D\u043E\u0433\u043E\u0428\u0440\u0438\u0444\u0442\u0430\u041A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0433\u043E\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|ClientApplicationBaseFontCurrentVariant|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u0412\u0430\u0440\u0438\u0430\u043D\u0442\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\u041A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0433\u043E\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|ClientApplicationInterfaceCurrentVariant|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u041A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0433\u043E\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|SetClientApplicationCaption|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u041A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0433\u043E\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|GetClientApplicationCaption|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u0435\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0430\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u044B\u0445\u0424\u0430\u0439\u043B\u043E\u0432|BeginGettingTempFilesDir|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u0435\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0430\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432|BeginGettingDocumentsDir|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0447\u0435\u0433\u043E\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0430\u0414\u0430\u043D\u043D\u044B\u0445\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|BeginGettingUserDataWorkDir|\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u0417\u0430\u043F\u0440\u043E\u0441\u0430\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A\u041A\u043B\u0438\u0435\u043D\u0442\u0430\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|AttachLicensingClientParametersRequestHandler|\u041E\u0442\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u0417\u0430\u043F\u0440\u043E\u0441\u0430\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A\u041A\u043B\u0438\u0435\u043D\u0442\u0430\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|DetachLicensingClientParametersRequestHandler|\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0411\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0438\u041C\u043E\u0431\u0438\u043B\u044C\u043D\u043E\u0433\u043E\u0423\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0430|MobileDeviceLibraryDir)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u043F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0438\u044F \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0439","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0412\u0421\u0442\u0440\u043E\u043A\u0443\u0412\u043D\u0443\u0442\u0440|ValueToStringInternal|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0418\u0437\u0421\u0442\u0440\u043E\u043A\u0438\u0412\u043D\u0443\u0442\u0440|ValueFromStringInternal|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0412\u0424\u0430\u0439\u043B|ValueToFile|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0418\u0437\u0424\u0430\u0439\u043B\u0430|ValueFromFile)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u043E\u0439","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041A\u043E\u043C\u0430\u043D\u0434\u0430\u0421\u0438\u0441\u0442\u0435\u043C\u044B|System|\u0417\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435|RunApp|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044CCOM\u041E\u0431\u044A\u0435\u043A\u0442|GetCOMObject|\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0438\u041E\u0421|OSUsers|\u041D\u0430\u0447\u0430\u0442\u044C\u0417\u0430\u043F\u0443\u0441\u043A\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|BeginRunningApplication)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0432\u043D\u0435\u0448\u043D\u0438\u043C\u0438 \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0430\u043C\u0438","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u0412\u043D\u0435\u0448\u043D\u044E\u044E\u041A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0443|AttachAddIn|\u041D\u0430\u0447\u0430\u0442\u044C\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0443\u0412\u043D\u0435\u0448\u043D\u0435\u0439\u041A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u044B|BeginInstallAddIn|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0412\u043D\u0435\u0448\u043D\u044E\u044E\u041A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0443|InstallAddIn|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u0412\u043D\u0435\u0448\u043D\u0435\u0439\u041A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u044B|BeginAttachingAddIn)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0444\u0430\u0439\u043B\u0430\u043C\u0438","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0424\u0430\u0439\u043B|FileCopy|\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C\u0424\u0430\u0439\u043B|MoveFile|\u0423\u0434\u0430\u043B\u0438\u0442\u044C\u0424\u0430\u0439\u043B\u044B|DeleteFiles|\u041D\u0430\u0439\u0442\u0438\u0424\u0430\u0439\u043B\u044B|FindFiles|\u0421\u043E\u0437\u0434\u0430\u0442\u044C\u041A\u0430\u0442\u0430\u043B\u043E\u0433|CreateDirectory|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u043C\u044F\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0433\u043E\u0424\u0430\u0439\u043B\u0430|GetTempFileName|\u0420\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u044C\u0424\u0430\u0439\u043B|SplitFile|\u041E\u0431\u044A\u0435\u0434\u0438\u043D\u0438\u0442\u044C\u0424\u0430\u0439\u043B\u044B|MergeFiles|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0424\u0430\u0439\u043B|GetFile|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043C\u0435\u0449\u0435\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u0430|BeginPutFile|\u041F\u043E\u043C\u0435\u0441\u0442\u0438\u0442\u044C\u0424\u0430\u0439\u043B|PutFile|\u042D\u0442\u043E\u0410\u0434\u0440\u0435\u0441\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0433\u043E\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0430|IsTempStorageURL|\u0423\u0434\u0430\u043B\u0438\u0442\u044C\u0418\u0437\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0433\u043E\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0430|DeleteFromTempStorage|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u0437\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0433\u043E\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0430|GetFromTempStorage|\u041F\u043E\u043C\u0435\u0441\u0442\u0438\u0442\u044C\u0412\u043E\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0435\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435|PutToTempStorage|\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0424\u0430\u0439\u043B\u0430\u043C\u0438|AttachFileSystemExtension|\u041D\u0430\u0447\u0430\u0442\u044C\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0443\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0424\u0430\u0439\u043B\u0430\u043C\u0438|BeginInstallFileSystemExtension|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0424\u0430\u0439\u043B\u0430\u043C\u0438|InstallFileSystemExtension|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0424\u0430\u0439\u043B\u044B|GetFiles|\u041F\u043E\u043C\u0435\u0441\u0442\u0438\u0442\u044C\u0424\u0430\u0439\u043B\u044B|PutFiles|\u0417\u0430\u043F\u0440\u043E\u0441\u0438\u0442\u044C\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u0438\u0435\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|RequestUserPermission|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041C\u0430\u0441\u043A\u0443\u0412\u0441\u0435\u0424\u0430\u0439\u043B\u044B|GetAllFilesMask|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041C\u0430\u0441\u043A\u0443\u0412\u0441\u0435\u0424\u0430\u0439\u043B\u044B\u041A\u043B\u0438\u0435\u043D\u0442\u0430|GetClientAllFilesMask|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041C\u0430\u0441\u043A\u0443\u0412\u0441\u0435\u0424\u0430\u0439\u043B\u044B\u0421\u0435\u0440\u0432\u0435\u0440\u0430|GetServerAllFilesMask|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0420\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u0435\u043B\u044C\u041F\u0443\u0442\u0438|GetPathSeparator|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0420\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u0435\u043B\u044C\u041F\u0443\u0442\u0438\u041A\u043B\u0438\u0435\u043D\u0442\u0430|GetClientPathSeparator|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0420\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u0435\u043B\u044C\u041F\u0443\u0442\u0438\u0421\u0435\u0440\u0432\u0435\u0440\u0430|GetServerPathSeparator|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0424\u0430\u0439\u043B\u0430\u043C\u0438|BeginAttachingFileSystemExtension|\u041D\u0430\u0447\u0430\u0442\u044C\u0417\u0430\u043F\u0440\u043E\u0441\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u0438\u044F\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|BeginRequestingUserPermission|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u0438\u0441\u043A\u0424\u0430\u0439\u043B\u043E\u0432|BeginFindingFiles|\u041D\u0430\u0447\u0430\u0442\u044C\u0421\u043E\u0437\u0434\u0430\u043D\u0438\u0435\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0430|BeginCreatingDirectory|\u041D\u0430\u0447\u0430\u0442\u044C\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u0430|BeginCopyingFile|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u0430|BeginMovingFile|\u041D\u0430\u0447\u0430\u0442\u044C\u0423\u0434\u0430\u043B\u0435\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u043E\u0432|BeginDeletingFiles|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u043E\u0432|BeginGettingFiles|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043C\u0435\u0449\u0435\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u043E\u0432|BeginPuttingFiles|\u041D\u0430\u0447\u0430\u0442\u044C\u0421\u043E\u0437\u0434\u0430\u043D\u0438\u0435\u0414\u0432\u043E\u0438\u0447\u043D\u044B\u0445\u0414\u0430\u043D\u043D\u044B\u0445\u0418\u0437\u0424\u0430\u0439\u043B\u0430|BeginCreateBinaryDataFromFile)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439 \u0431\u0430\u0437\u043E\u0439","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041D\u0430\u0447\u0430\u0442\u044C\u0422\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u044E|BeginTransaction|\u0417\u0430\u0444\u0438\u043A\u0441\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0422\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u044E|CommitTransaction|\u041E\u0442\u043C\u0435\u043D\u0438\u0442\u044C\u0422\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u044E|RollbackTransaction|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041C\u043E\u043D\u043E\u043F\u043E\u043B\u044C\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|SetExclusiveMode|\u041C\u043E\u043D\u043E\u043F\u043E\u043B\u044C\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|ExclusiveMode|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u043F\u0435\u0440\u0430\u0442\u0438\u0432\u043D\u0443\u044E\u041E\u0442\u043C\u0435\u0442\u043A\u0443\u0412\u0440\u0435\u043C\u0435\u043D\u0438|GetRealTimeTimestamp|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetInfoBaseConnections|\u041D\u043E\u043C\u0435\u0440\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|InfoBaseConnectionNumber|\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0430|ConfigurationChanged|\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F\u0411\u0430\u0437\u044B\u0414\u0430\u043D\u043D\u044B\u0445\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0430\u0414\u0438\u043D\u0430\u043C\u0438\u0447\u0435\u0441\u043A\u0438|DataBaseConfigurationChangedDynamically|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u041E\u0436\u0438\u0434\u0430\u043D\u0438\u044F\u0411\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0438\u0414\u0430\u043D\u043D\u044B\u0445|SetLockWaitTime|\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C\u041D\u0443\u043C\u0435\u0440\u0430\u0446\u0438\u044E\u041E\u0431\u044A\u0435\u043A\u0442\u043E\u0432|RefreshObjectsNumbering|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u041E\u0436\u0438\u0434\u0430\u043D\u0438\u044F\u0411\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0438\u0414\u0430\u043D\u043D\u044B\u0445|GetLockWaitTime|\u041A\u043E\u0434\u041B\u043E\u043A\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|InfoBaseLocaleCode|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u0443\u044E\u0414\u043B\u0438\u043D\u0443\u041F\u0430\u0440\u043E\u043B\u0435\u0439\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439|SetUserPasswordMinLength|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u0443\u044E\u0414\u043B\u0438\u043D\u0443\u041F\u0430\u0440\u043E\u043B\u0435\u0439\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439|GetUserPasswordMinLength|\u0418\u043D\u0438\u0446\u0438\u0430\u043B\u0438\u0437\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u041F\u0440\u0435\u0434\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u044B\u0435\u0414\u0430\u043D\u043D\u044B\u0435|InitializePredefinedData|\u0423\u0434\u0430\u043B\u0438\u0442\u044C\u0414\u0430\u043D\u043D\u044B\u0435\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|EraseInfoBaseData|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041F\u0440\u043E\u0432\u0435\u0440\u043A\u0443\u0421\u043B\u043E\u0436\u043D\u043E\u0441\u0442\u0438\u041F\u0430\u0440\u043E\u043B\u0435\u0439\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439|SetUserPasswordStrengthCheck|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041F\u0440\u043E\u0432\u0435\u0440\u043A\u0443\u0421\u043B\u043E\u0436\u043D\u043E\u0441\u0442\u0438\u041F\u0430\u0440\u043E\u043B\u0435\u0439\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439|GetUserPasswordStrengthCheck|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0443\u0425\u0440\u0430\u043D\u0435\u043D\u0438\u044F\u0411\u0430\u0437\u044B\u0414\u0430\u043D\u043D\u044B\u0445|GetDBStorageStructureInfo|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041F\u0440\u0438\u0432\u0438\u043B\u0435\u0433\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|SetPrivilegedMode|\u041F\u0440\u0438\u0432\u0438\u043B\u0435\u0433\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|PrivilegedMode|\u0422\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u044F\u0410\u043A\u0442\u0438\u0432\u043D\u0430|TransactionActive|\u041D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E\u0441\u0442\u044C\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u044F\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F|ConnectionStopRequest|\u041D\u043E\u043C\u0435\u0440\u0421\u0435\u0430\u043D\u0441\u0430\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|InfoBaseSessionNumber|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u0435\u0430\u043D\u0441\u044B\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetInfoBaseSessions|\u0417\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0414\u0430\u043D\u043D\u044B\u0435\u0414\u043B\u044F\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|LockDataForEdit|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0435\u0421\u0412\u043D\u0435\u0448\u043D\u0438\u043C\u0418\u0441\u0442\u043E\u0447\u043D\u0438\u043A\u043E\u043C\u0414\u0430\u043D\u043D\u044B\u0445|ConnectExternalDataSource|\u0420\u0430\u0437\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0414\u0430\u043D\u043D\u044B\u0435\u0414\u043B\u044F\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|UnlockDataForEdit|\u0420\u0430\u0437\u043E\u0440\u0432\u0430\u0442\u044C\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0435\u0421\u0412\u043D\u0435\u0448\u043D\u0438\u043C\u0418\u0441\u0442\u043E\u0447\u043D\u0438\u043A\u043E\u043C\u0414\u0430\u043D\u043D\u044B\u0445|DisconnectExternalDataSource|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0411\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0443\u0421\u0435\u0430\u043D\u0441\u043E\u0432|GetSessionsLock|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0411\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0443\u0421\u0435\u0430\u043D\u0441\u043E\u0432|SetSessionsLock|\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C\u041F\u043E\u0432\u0442\u043E\u0440\u043D\u043E\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u043C\u044B\u0435\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|RefreshReusableValues|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|SetSafeMode|\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|SafeMode|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0414\u0430\u043D\u043D\u044B\u0435\u0412\u044B\u0431\u043E\u0440\u0430|GetChoiceData|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0427\u0430\u0441\u043E\u0432\u043E\u0439\u041F\u043E\u044F\u0441\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|SetInfoBaseTimeZone|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0427\u0430\u0441\u043E\u0432\u043E\u0439\u041F\u043E\u044F\u0441\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetInfoBaseTimeZone|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0435\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438\u0411\u0430\u0437\u044B\u0414\u0430\u043D\u043D\u044B\u0445|GetDataBaseConfigurationUpdate|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C\u0420\u0430\u0437\u0434\u0435\u043B\u0435\u043D\u0438\u044F\u0414\u0430\u043D\u043D\u044B\u0445|SetDataSeparationSafeMode|\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C\u0420\u0430\u0437\u0434\u0435\u043B\u0435\u043D\u0438\u044F\u0414\u0430\u043D\u043D\u044B\u0445|DataSeparationSafeMode|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u0417\u0430\u0441\u044B\u043F\u0430\u043D\u0438\u044F\u041F\u0430\u0441\u0441\u0438\u0432\u043D\u043E\u0433\u043E\u0421\u0435\u0430\u043D\u0441\u0430|SetPassiveSessionHibernateTime|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u0417\u0430\u0441\u044B\u043F\u0430\u043D\u0438\u044F\u041F\u0430\u0441\u0441\u0438\u0432\u043D\u043E\u0433\u043E\u0421\u0435\u0430\u043D\u0441\u0430|GetPassiveSessionHibernateTime|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u044F\u0421\u043F\u044F\u0449\u0435\u0433\u043E\u0421\u0435\u0430\u043D\u0441\u0430|SetHibernateSessionTerminateTime|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u044F\u0421\u043F\u044F\u0449\u0435\u0433\u043E\u0421\u0435\u0430\u043D\u0441\u0430|GetHibernateSessionTerminateTime|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u0421\u0435\u0430\u043D\u0441\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetCurrentInfoBaseSession|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438|GetConfigurationID|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438\u041A\u043B\u0438\u0435\u043D\u0442\u0430\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|SetLicensingClientParameters|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u043C\u044F\u041A\u043B\u0438\u0435\u043D\u0442\u0430\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|GetLicensingClientName|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u041A\u043B\u0438\u0435\u043D\u0442\u0430\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|GetLicensingClientAdditionalParameter|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u0442\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0433\u043E\u0420\u0435\u0436\u0438\u043C\u0430|GetSafeModeDisabled|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041E\u0442\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0433\u043E\u0420\u0435\u0436\u0438\u043C\u0430|SetSafeModeDisabled)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0434\u0430\u043D\u043D\u044B\u043C\u0438 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439 \u0431\u0430\u0437\u044B","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041D\u0430\u0439\u0442\u0438\u041F\u043E\u043C\u0435\u0447\u0435\u043D\u043D\u044B\u0435\u041D\u0430\u0423\u0434\u0430\u043B\u0435\u043D\u0438\u0435|FindMarkedForDeletion|\u041D\u0430\u0439\u0442\u0438\u041F\u043E\u0421\u0441\u044B\u043B\u043A\u0430\u043C|FindByRef|\u0423\u0434\u0430\u043B\u0438\u0442\u044C\u041E\u0431\u044A\u0435\u043A\u0442\u044B|DeleteObjects|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0435\u041F\u0440\u0435\u0434\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u044B\u0445\u0414\u0430\u043D\u043D\u044B\u0445\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|SetInfoBasePredefinedDataUpdate|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0435\u041F\u0440\u0435\u0434\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u044B\u0445\u0414\u0430\u043D\u043D\u044B\u0445\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetInfoBasePredefinedData)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 XML","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(XML\u0421\u0442\u0440\u043E\u043A\u0430|XMLString|XML\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|XMLValue|XML\u0422\u0438\u043F|XMLType|XML\u0422\u0438\u043F\u0417\u043D\u0447|XMLTypeOf|\u0418\u0437XML\u0422\u0438\u043F\u0430|FromXMLType|\u0412\u043E\u0437\u043C\u043E\u0436\u043D\u043E\u0441\u0442\u044C\u0427\u0442\u0435\u043D\u0438\u044FXML|CanReadXML|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044CXML\u0422\u0438\u043F|GetXMLType|\u041F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044CXML|ReadXML|\u0417\u0430\u043F\u0438\u0441\u0430\u0442\u044CXML|WriteXML|\u041D\u0430\u0439\u0442\u0438\u041D\u0435\u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0435\u0421\u0438\u043C\u0432\u043E\u043B\u044BXML|FindDisallowedXMLCharacters|\u0418\u043C\u043F\u043E\u0440\u0442\u041C\u043E\u0434\u0435\u043B\u0438XDTO|ImportXDTOModel|\u0421\u043E\u0437\u0434\u0430\u0442\u044C\u0424\u0430\u0431\u0440\u0438\u043A\u0443XDTO|CreateXDTOFactory)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 JSON","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0417\u0430\u043F\u0438\u0441\u0430\u0442\u044CJSON|WriteJSON|\u041F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044CJSON|ReadJSON|\u041F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044C\u0414\u0430\u0442\u0443JSON|ReadJSONDate|\u0417\u0430\u043F\u0438\u0441\u0430\u0442\u044C\u0414\u0430\u0442\u0443JSON|WriteJSONDate)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0436\u0443\u0440\u043D\u0430\u043B\u043E\u043C \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0417\u0430\u043F\u0438\u0441\u044C\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|WriteLogEvent|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|GetEventLogUsing|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|SetEventLogUsing|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u0421\u043E\u0431\u044B\u0442\u0438\u044F\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|EventLogEventPresentation|\u0412\u044B\u0433\u0440\u0443\u0437\u0438\u0442\u044C\u0416\u0443\u0440\u043D\u0430\u043B\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|UnloadEventLog|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u041E\u0442\u0431\u043E\u0440\u0430\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|GetEventLogFilterValues|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u0421\u043E\u0431\u044B\u0442\u0438\u044F\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|SetEventLogEventUse|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u0421\u043E\u0431\u044B\u0442\u0438\u044F\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|GetEventLogEventUse|\u0421\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0416\u0443\u0440\u043D\u0430\u043B\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|CopyEventLog|\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C\u0416\u0443\u0440\u043D\u0430\u043B\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|ClearEventLog)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0443\u043D\u0438\u0432\u0435\u0440\u0441\u0430\u043B\u044C\u043D\u044B\u043C\u0438 \u043E\u0431\u044A\u0435\u043A\u0442\u0430\u043C\u0438","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0412\u0414\u0430\u043D\u043D\u044B\u0435\u0424\u043E\u0440\u043C\u044B|ValueToFormData|\u0414\u0430\u043D\u043D\u044B\u0435\u0424\u043E\u0440\u043C\u044B\u0412\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|FormDataToValue|\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0414\u0430\u043D\u043D\u044B\u0435\u0424\u043E\u0440\u043C\u044B|CopyFormData|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0421\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435\u041E\u0431\u044A\u0435\u043A\u0442\u0430\u0418\u0424\u043E\u0440\u043C\u044B|SetObjectAndFormConformity|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435\u041E\u0431\u044A\u0435\u043A\u0442\u0430\u0418\u0424\u043E\u0440\u043C\u044B|GetObjectAndFormConformity)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0444\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u043C\u0438 \u043E\u043F\u0446\u0438\u044F\u043C\u0438","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u0443\u044E\u041E\u043F\u0446\u0438\u044E|GetFunctionalOption|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u0443\u044E\u041E\u043F\u0446\u0438\u044E\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430|GetInterfaceFunctionalOption|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u0445\u041E\u043F\u0446\u0438\u0439\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430|SetInterfaceFunctionalOptionParameters|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u0445\u041E\u043F\u0446\u0438\u0439\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430|GetInterfaceFunctionalOptionParameters|\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441|RefreshInterface)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u043A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0435\u0439","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u041A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0435\u0439|InstallCryptoExtension|\u041D\u0430\u0447\u0430\u0442\u044C\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0443\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u041A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0435\u0439|BeginInstallCryptoExtension|\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u041A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0435\u0439|AttachCryptoExtension|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u041A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0435\u0439|BeginAttachingCryptoExtension)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0441\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u044B\u043C \u0438\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043E\u043C OData","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0421\u043E\u0441\u0442\u0430\u0432\u0421\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u0433\u043E\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430OData|SetStandardODataInterfaceContent|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u043E\u0441\u0442\u0430\u0432\u0421\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u0433\u043E\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430OData|GetStandardODataInterfaceContent)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0434\u0432\u043E\u0438\u0447\u043D\u044B\u043C\u0438 \u0434\u0430\u043D\u043D\u044B\u043C\u0438","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0421\u043E\u0435\u0434\u0438\u043D\u0438\u0442\u044C\u0411\u0443\u0444\u0435\u0440\u044B\u0414\u0432\u043E\u0438\u0447\u043D\u044B\u0445\u0414\u0430\u043D\u043D\u044B\u0445|ConcatBinaryDataBuffers)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0447\u0438\u0435 \u043F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041C\u0438\u043D|Min|\u041C\u0430\u043A\u0441|Max|\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435\u041E\u0448\u0438\u0431\u043A\u0438|ErrorDescription|\u0412\u044B\u0447\u0438\u0441\u043B\u0438\u0442\u044C|Eval|\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F\u041E\u0431\u041E\u0448\u0438\u0431\u043A\u0435|ErrorInfo|Base64\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|Base64Value|Base64\u0421\u0442\u0440\u043E\u043A\u0430|Base64String|\u0417\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u044C\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u0421\u0432\u043E\u0439\u0441\u0442\u0432|FillPropertyValues|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0417\u0430\u043F\u043E\u043B\u043D\u0435\u043D\u043E|ValueIsFilled|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u044F\u041D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0445\u0421\u0441\u044B\u043B\u043E\u043A|GetURLsPresentations|\u041D\u0430\u0439\u0442\u0438\u041E\u043A\u043D\u043E\u041F\u043E\u041D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0421\u0441\u044B\u043B\u043A\u0435|FindWindowByURL|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u043A\u043D\u0430|GetWindows|\u041F\u0435\u0440\u0435\u0439\u0442\u0438\u041F\u043E\u041D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0421\u0441\u044B\u043B\u043A\u0435|GotoURL|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043E\u043D\u043D\u0443\u044E\u0421\u0441\u044B\u043B\u043A\u0443|GetURL|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0414\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0435\u041A\u043E\u0434\u044B\u041B\u043E\u043A\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438|GetAvailableLocaleCodes|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043E\u043D\u043D\u0443\u044E\u0421\u0441\u044B\u043B\u043A\u0443\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetInfoBaseURL|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041A\u043E\u0434\u0430\u041B\u043E\u043A\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438|LocaleCodePresentation|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0414\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0435\u0427\u0430\u0441\u043E\u0432\u044B\u0435\u041F\u043E\u044F\u0441\u0430|GetAvailableTimeZones|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u0427\u0430\u0441\u043E\u0432\u043E\u0433\u043E\u041F\u043E\u044F\u0441\u0430|TimeZonePresentation|\u0422\u0435\u043A\u0443\u0449\u0430\u044F\u0423\u043D\u0438\u0432\u0435\u0440\u0441\u0430\u043B\u044C\u043D\u0430\u044F\u0414\u0430\u0442\u0430|CurrentUniversalDate|\u0422\u0435\u043A\u0443\u0449\u0430\u044F\u0423\u043D\u0438\u0432\u0435\u0440\u0441\u0430\u043B\u044C\u043D\u0430\u044F\u0414\u0430\u0442\u0430\u0412\u041C\u0438\u043B\u043B\u0438\u0441\u0435\u043A\u0443\u043D\u0434\u0430\u0445|CurrentUniversalDateInMilliseconds|\u041C\u0435\u0441\u0442\u043D\u043E\u0435\u0412\u0440\u0435\u043C\u044F|ToLocalTime|\u0423\u043D\u0438\u0432\u0435\u0440\u0441\u0430\u043B\u044C\u043D\u043E\u0435\u0412\u0440\u0435\u043C\u044F|ToUniversalTime|\u0427\u0430\u0441\u043E\u0432\u043E\u0439\u041F\u043E\u044F\u0441|TimeZone|\u0421\u043C\u0435\u0449\u0435\u043D\u0438\u0435\u041B\u0435\u0442\u043D\u0435\u0433\u043E\u0412\u0440\u0435\u043C\u0435\u043D\u0438|DaylightTimeOffset|\u0421\u043C\u0435\u0449\u0435\u043D\u0438\u0435\u0421\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u0433\u043E\u0412\u0440\u0435\u043C\u0435\u043D\u0438|StandardTimeOffset|\u041A\u043E\u0434\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0421\u0442\u0440\u043E\u043A\u0443|EncodeString|\u0420\u0430\u0441\u043A\u043E\u0434\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0421\u0442\u0440\u043E\u043A\u0443|DecodeString|\u041D\u0430\u0439\u0442\u0438|Find|\u041F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C\u0412\u044B\u0437\u043E\u0432|ProceedWithCall)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0421\u043E\u0431\u044B\u0442\u0438\u044F \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F \u0438 \u0441\u0435\u0430\u043D\u0441\u0430","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u041F\u0435\u0440\u0435\u0434\u041D\u0430\u0447\u0430\u043B\u043E\u043C\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0438\u0441\u0442\u0435\u043C\u044B|BeforeStart|\u041F\u0440\u0438\u041D\u0430\u0447\u0430\u043B\u0435\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0438\u0441\u0442\u0435\u043C\u044B|OnStart|\u041F\u0435\u0440\u0435\u0434\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u0435\u043C\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0438\u0441\u0442\u0435\u043C\u044B|BeforeExit|\u041F\u0440\u0438\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u0438\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0438\u0441\u0442\u0435\u043C\u044B|OnExit|\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0430\u0412\u043D\u0435\u0448\u043D\u0435\u0433\u043E\u0421\u043E\u0431\u044B\u0442\u0438\u044F|ExternEventProcessing|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0430\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u0432\u0421\u0435\u0430\u043D\u0441\u0430|SessionParametersSetting|\u041F\u0440\u0438\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u0438\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u0432\u042D\u043A\u0440\u0430\u043D\u0430|OnChangeDisplaySettings)\\\\s*(?=\\\\())","name":"support.function.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0421\u0432\u043E\u0439\u0441\u0442\u0432\u0430 (\u043A\u043B\u0430\u0441\u0441\u044B)","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(WS\u0421\u0441\u044B\u043B\u043A\u0438|WSReferences|\u0411\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0430\u041A\u0430\u0440\u0442\u0438\u043D\u043E\u043A|PictureLib|\u0411\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0430\u041C\u0430\u043A\u0435\u0442\u043E\u0432\u041E\u0444\u043E\u0440\u043C\u043B\u0435\u043D\u0438\u044F\u041A\u043E\u043C\u043F\u043E\u043D\u043E\u0432\u043A\u0438\u0414\u0430\u043D\u043D\u044B\u0445|DataCompositionAppearanceTemplateLib|\u0411\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0430\u0421\u0442\u0438\u043B\u0435\u0439|StyleLib|\u0411\u0438\u0437\u043D\u0435\u0441\u041F\u0440\u043E\u0446\u0435\u0441\u0441\u044B|BusinessProcesses|\u0412\u043D\u0435\u0448\u043D\u0438\u0435\u0418\u0441\u0442\u043E\u0447\u043D\u0438\u043A\u0438\u0414\u0430\u043D\u043D\u044B\u0445|ExternalDataSources|\u0412\u043D\u0435\u0448\u043D\u0438\u0435\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0438|ExternalDataProcessors|\u0412\u043D\u0435\u0448\u043D\u0438\u0435\u041E\u0442\u0447\u0435\u0442\u044B|ExternalReports|\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u044B|Documents|\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0435\u043C\u044B\u0435\u0423\u0432\u0435\u0434\u043E\u043C\u043B\u0435\u043D\u0438\u044F|DeliverableNotifications|\u0416\u0443\u0440\u043D\u0430\u043B\u044B\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432|DocumentJournals|\u0417\u0430\u0434\u0430\u0447\u0438|Tasks|\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F\u041E\u0431\u0418\u043D\u0442\u0435\u0440\u043D\u0435\u0442\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0438|InternetConnectionInformation|\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0447\u0435\u0439\u0414\u0430\u0442\u044B|WorkingDateUse|\u0418\u0441\u0442\u043E\u0440\u0438\u044F\u0420\u0430\u0431\u043E\u0442\u044B\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|UserWorkHistory|\u041A\u043E\u043D\u0441\u0442\u0430\u043D\u0442\u044B|Constants|\u041A\u0440\u0438\u0442\u0435\u0440\u0438\u0438\u041E\u0442\u0431\u043E\u0440\u0430|FilterCriteria|\u041C\u0435\u0442\u0430\u0434\u0430\u043D\u043D\u044B\u0435|Metadata|\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0438|DataProcessors|\u041E\u0442\u043F\u0440\u0430\u0432\u043A\u0430\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0435\u043C\u044B\u0445\u0423\u0432\u0435\u0434\u043E\u043C\u043B\u0435\u043D\u0438\u0439|DeliverableNotificationSend|\u041E\u0442\u0447\u0435\u0442\u044B|Reports|\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B\u0421\u0435\u0430\u043D\u0441\u0430|SessionParameters|\u041F\u0435\u0440\u0435\u0447\u0438\u0441\u043B\u0435\u043D\u0438\u044F|Enums|\u041F\u043B\u0430\u043D\u044B\u0412\u0438\u0434\u043E\u0432\u0420\u0430\u0441\u0447\u0435\u0442\u0430|ChartsOfCalculationTypes|\u041F\u043B\u0430\u043D\u044B\u0412\u0438\u0434\u043E\u0432\u0425\u0430\u0440\u0430\u043A\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043A|ChartsOfCharacteristicTypes|\u041F\u043B\u0430\u043D\u044B\u041E\u0431\u043C\u0435\u043D\u0430|ExchangePlans|\u041F\u043B\u0430\u043D\u044B\u0421\u0447\u0435\u0442\u043E\u0432|ChartsOfAccounts|\u041F\u043E\u043B\u043D\u043E\u0442\u0435\u043A\u0441\u0442\u043E\u0432\u044B\u0439\u041F\u043E\u0438\u0441\u043A|FullTextSearch|\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0438\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|InfoBaseUsers|\u041F\u043E\u0441\u043B\u0435\u0434\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u0438|Sequences|\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438|ConfigurationExtensions|\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u044B\u0411\u0443\u0445\u0433\u0430\u043B\u0442\u0435\u0440\u0438\u0438|AccountingRegisters|\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u044B\u041D\u0430\u043A\u043E\u043F\u043B\u0435\u043D\u0438\u044F|AccumulationRegisters|\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u044B\u0420\u0430\u0441\u0447\u0435\u0442\u0430|CalculationRegisters|\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u044B\u0421\u0432\u0435\u0434\u0435\u043D\u0438\u0439|InformationRegisters|\u0420\u0435\u0433\u043B\u0430\u043C\u0435\u043D\u0442\u043D\u044B\u0435\u0417\u0430\u0434\u0430\u043D\u0438\u044F|ScheduledJobs|\u0421\u0435\u0440\u0438\u0430\u043B\u0438\u0437\u0430\u0442\u043E\u0440XDTO|XDTOSerializer|\u0421\u043F\u0440\u0430\u0432\u043E\u0447\u043D\u0438\u043A\u0438|Catalogs|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u0413\u0435\u043E\u043F\u043E\u0437\u0438\u0446\u0438\u043E\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|LocationTools|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u041A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0438|CryptoToolsManager|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u041C\u0443\u043B\u044C\u0442\u0438\u043C\u0435\u0434\u0438\u0430|MultimediaTools|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u041E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F\u0420\u0435\u043A\u043B\u0430\u043C\u044B|AdvertisingPresentationTools|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u041F\u043E\u0447\u0442\u044B|MailTools|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u0422\u0435\u043B\u0435\u0444\u043E\u043D\u0438\u0438|TelephonyTools|\u0424\u0430\u0431\u0440\u0438\u043A\u0430XDTO|XDTOFactory|\u0424\u0430\u0439\u043B\u043E\u0432\u044B\u0435\u041F\u043E\u0442\u043E\u043A\u0438|FileStreams|\u0424\u043E\u043D\u043E\u0432\u044B\u0435\u0417\u0430\u0434\u0430\u043D\u0438\u044F|BackgroundJobs|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0430\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A|SettingsStorages|\u0412\u0441\u0442\u0440\u043E\u0435\u043D\u043D\u044B\u0435\u041F\u043E\u043A\u0443\u043F\u043A\u0438|InAppPurchases|\u041E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435\u0420\u0435\u043A\u043B\u0430\u043C\u044B|AdRepresentation|\u041F\u0430\u043D\u0435\u043B\u044C\u0417\u0430\u0434\u0430\u0447\u041E\u0421|OSTaskbar|\u041F\u0440\u043E\u0432\u0435\u0440\u043A\u0430\u0412\u0441\u0442\u0440\u043E\u0435\u043D\u043D\u044B\u0445\u041F\u043E\u043A\u0443\u043F\u043E\u043A|InAppPurchasesValidation)(?=[^\\\\w\u0430-\u044F\u0451]|$))","name":"support.class.bsl"},{"comment":"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0421\u0432\u043E\u0439\u0441\u0442\u0432\u0430 (\u043F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u044B\u0435)","match":"(?i:(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0413\u043B\u0430\u0432\u043D\u044B\u0439\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441|MainInterface|\u0413\u043B\u0430\u0432\u043D\u044B\u0439\u0421\u0442\u0438\u043B\u044C|MainStyle|\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u0417\u0430\u043F\u0443\u0441\u043A\u0430|LaunchParameter|\u0420\u0430\u0431\u043E\u0447\u0430\u044F\u0414\u0430\u0442\u0430|WorkingDate|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u0412\u0430\u0440\u0438\u0430\u043D\u0442\u043E\u0432\u041E\u0442\u0447\u0435\u0442\u043E\u0432|ReportsVariantsStorage|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A\u0414\u0430\u043D\u043D\u044B\u0445\u0424\u043E\u0440\u043C|FormDataSettingsStorage|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u041E\u0431\u0449\u0438\u0445\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A|CommonSettingsStorage|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0445\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A\u0414\u0438\u043D\u0430\u043C\u0438\u0447\u0435\u0441\u043A\u0438\u0445\u0421\u043F\u0438\u0441\u043A\u043E\u0432|DynamicListsUserSettingsStorage|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0445\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A\u041E\u0442\u0447\u0435\u0442\u043E\u0432|ReportsUserSettingsStorage|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u0421\u0438\u0441\u0442\u0435\u043C\u043D\u044B\u0445\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A|SystemSettingsStorage)(?=[^\\\\w\u0430-\u044F\u0451]|$))","name":"support.variable.bsl"}]},"query":{"begin":"(?i)(?<=[^\\\\w\u0430-\u044F\u0451\\\\.]|^)(\u0412\u044B\u0431\u0440\u0430\u0442\u044C|Select(\\\\s+\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u043D\u044B\u0435|\\\\s+Allowed)?(\\\\s+\u0420\u0430\u0437\u043B\u0438\u0447\u043D\u044B\u0435|\\\\s+Distinct)?(\\\\s+\u041F\u0435\u0440\u0432\u044B\u0435|\\\\s+Top)?)(?=[^\\\\w\u0430-\u044F\u0451\\\\.]|$)","beginCaptures":{"1":{"name":"keyword.control.sdbl"}},"end":"(?=\\\\\\"[^\\\\\\"])","patterns":[{"begin":"^\\\\s*//","end":"$","name":"comment.line.double-slash.bsl"},{"match":"(//((\\\\\\"\\\\\\")|[^\\\\\\"])*)","name":"comment.line.double-slash.sdbl"},{"match":"\\\\\\"\\\\\\"[^\\"]*\\\\\\"\\\\\\"","name":"string.quoted.double.sdbl"},{"include":"source.sdbl"}]}},"scopeName":"source.bsl","embeddedLangs":["sdbl"],"aliases":["1c"]}`)),mte=[...xB,pte]});var nN={};x(nN,{default:()=>Va});var gte,Va,Uo=_(()=>{gte=Object.freeze(JSON.parse(`{"displayName":"C","name":"c","patterns":[{"include":"#preprocessor-rule-enabled"},{"include":"#preprocessor-rule-disabled"},{"include":"#preprocessor-rule-conditional"},{"include":"#predefined_macros"},{"include":"#comments"},{"include":"#switch_statement"},{"include":"#anon_pattern_1"},{"include":"#storage_types"},{"include":"#anon_pattern_2"},{"include":"#anon_pattern_3"},{"include":"#anon_pattern_4"},{"include":"#anon_pattern_5"},{"include":"#anon_pattern_6"},{"include":"#anon_pattern_7"},{"include":"#operators"},{"include":"#numbers"},{"include":"#strings"},{"include":"#anon_pattern_range_1"},{"include":"#anon_pattern_range_2"},{"include":"#anon_pattern_range_3"},{"include":"#pragma-mark"},{"include":"#anon_pattern_range_4"},{"include":"#anon_pattern_range_5"},{"include":"#anon_pattern_range_6"},{"include":"#anon_pattern_8"},{"include":"#anon_pattern_9"},{"include":"#anon_pattern_10"},{"include":"#anon_pattern_11"},{"include":"#anon_pattern_12"},{"include":"#anon_pattern_13"},{"include":"#block"},{"include":"#parens"},{"include":"#anon_pattern_range_7"},{"include":"#line_continuation_character"},{"include":"#anon_pattern_range_8"},{"include":"#anon_pattern_range_9"},{"include":"#anon_pattern_14"},{"include":"#anon_pattern_15"}],"repository":{"access-method":{"begin":"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\]\\\\)]))\\\\s*(?:(\\\\.)|(->))((?:(?:[a-zA-Z_][a-zA-Z_0-9]*)\\\\s*(?:(?:\\\\.)|(?:->)))*)\\\\s*([a-zA-Z_][a-zA-Z_0-9]*)(\\\\()","beginCaptures":{"1":{"name":"variable.object.c"},"2":{"name":"punctuation.separator.dot-access.c"},"3":{"name":"punctuation.separator.pointer-access.c"},"4":{"patterns":[{"match":"\\\\.","name":"punctuation.separator.dot-access.c"},{"match":"->","name":"punctuation.separator.pointer-access.c"},{"match":"[a-zA-Z_][a-zA-Z_0-9]*","name":"variable.object.c"},{"match":".+","name":"everything.else.c"}]},"5":{"name":"entity.name.function.member.c"},"6":{"name":"punctuation.section.arguments.begin.bracket.round.function.member.c"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.function.member.c"}},"name":"meta.function-call.member.c","patterns":[{"include":"#function-call-innards"}]},"anon_pattern_1":{"match":"\\\\b(break|continue|do|else|for|goto|if|_Pragma|return|while)\\\\b","name":"keyword.control.c"},"anon_pattern_10":{"match":"\\\\b(int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t)\\\\b","name":"support.type.stdint.c"},"anon_pattern_11":{"match":"\\\\b(noErr|kNilOptions|kInvalidID|kVariableLengthArray)\\\\b","name":"support.constant.mac-classic.c"},"anon_pattern_12":{"match":"\\\\b(AbsoluteTime|Boolean|Byte|ByteCount|ByteOffset|BytePtr|CompTimeValue|ConstLogicalAddress|ConstStrFileNameParam|ConstStringPtr|Duration|Fixed|FixedPtr|Float32|Float32Point|Float64|Float80|Float96|FourCharCode|Fract|FractPtr|Handle|ItemCount|LogicalAddress|OptionBits|OSErr|OSStatus|OSType|OSTypePtr|PhysicalAddress|ProcessSerialNumber|ProcessSerialNumberPtr|ProcHandle|Ptr|ResType|ResTypePtr|ShortFixed|ShortFixedPtr|SignedByte|SInt16|SInt32|SInt64|SInt8|Size|StrFileName|StringHandle|StringPtr|TimeBase|TimeRecord|TimeScale|TimeValue|TimeValue64|UInt16|UInt32|UInt64|UInt8|UniChar|UniCharCount|UniCharCountPtr|UniCharPtr|UnicodeScalarValue|UniversalProcHandle|UniversalProcPtr|UnsignedFixed|UnsignedFixedPtr|UnsignedWide|UTF16Char|UTF32Char|UTF8Char)\\\\b","name":"support.type.mac-classic.c"},"anon_pattern_13":{"match":"\\\\b([A-Za-z0-9_]+_t)\\\\b","name":"support.type.posix-reserved.c"},"anon_pattern_14":{"match":";","name":"punctuation.terminator.statement.c"},"anon_pattern_15":{"match":",","name":"punctuation.separator.delimiter.c"},"anon_pattern_2":{"match":"typedef","name":"keyword.other.typedef.c"},"anon_pattern_3":{"match":"\\\\b(const|extern|register|restrict|static|volatile|inline)\\\\b","name":"storage.modifier.c"},"anon_pattern_4":{"match":"\\\\bk[A-Z]\\\\w*\\\\b","name":"constant.other.variable.mac-classic.c"},"anon_pattern_5":{"match":"\\\\bg[A-Z]\\\\w*\\\\b","name":"variable.other.readwrite.global.mac-classic.c"},"anon_pattern_6":{"match":"\\\\bs[A-Z]\\\\w*\\\\b","name":"variable.other.readwrite.static.mac-classic.c"},"anon_pattern_7":{"match":"\\\\b(NULL|true|false|TRUE|FALSE)\\\\b","name":"constant.language.c"},"anon_pattern_8":{"match":"\\\\b(u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t)\\\\b","name":"support.type.sys-types.c"},"anon_pattern_9":{"match":"\\\\b(pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t)\\\\b","name":"support.type.pthread.c"},"anon_pattern_range_1":{"begin":"((?:(?:(?>\\\\s+)|(\\\\/\\\\*)((?>(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/)))+?|(?:(?:(?:(?:\\\\b|(?<=\\\\W))|(?=\\\\W))|\\\\A)|\\\\Z)))((#)\\\\s*define\\\\b)\\\\s+((?","endCaptures":{"0":{"name":"punctuation.definition.string.end.c"}},"name":"string.quoted.other.lt-gt.include.c"}]},"anon_pattern_range_4":{"begin":"^\\\\s*((#)\\\\s*line)\\\\b","beginCaptures":{"1":{"name":"keyword.control.directive.line.c"},"2":{"name":"punctuation.definition.directive.c"}},"end":"(?=(?://|/\\\\*))|(?=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"variable.other.c"},"2":{"name":"punctuation.section.parens.begin.bracket.round.initialization.c"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.initialization.c"}},"name":"meta.initialization.c","patterns":[{"include":"#function-call-innards"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.c"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.c"}},"patterns":[{"include":"#block_innards"}]},{"include":"#parens-block"},{"include":"$self"}]},"c_conditional_context":{"patterns":[{"include":"$self"},{"include":"#block_innards"}]},"c_function_call":{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\s*\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\]))\\\\s*\\\\()","end":"(?<=\\\\))(?!\\\\w)","name":"meta.function-call.c","patterns":[{"include":"#function-call-innards"}]},"case_statement":{"begin":"((?>(?:(?:(?>(?(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/)))+|(?:(?:(?:(?:\\\\b|(?<=\\\\W))|(?=\\\\W))|\\\\A)|\\\\Z))))((?\\\\s*)(\\\\/\\\\/[!\\\\/]+)","beginCaptures":{"1":{"name":"punctuation.definition.comment.documentation.c"}},"end":"(?<=\\\\n)(?|%|\\"|\\\\.|=|::|\\\\||\\\\-\\\\-|\\\\-\\\\-\\\\-)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"name":"markup.italic.doxygen.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|em|e))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"name":"markup.bold.doxygen.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]b)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"name":"markup.inline.raw.string.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:c|p))\\\\s+(\\\\S+)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"patterns":[{"match":"in|out","name":"keyword.other.parameter.direction.$0.c"}]},"3":{"name":"variable.parameter.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]param)(?:\\\\s*\\\\[((?:,?\\\\s*(?:in|out)\\\\s*)+)\\\\])?\\\\s+(\\\\b\\\\w+\\\\b)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"match":"(?:\\\\b[A-Z]+:|@[a-z_]+:)","name":"storage.type.class.gtkdoc"}]},{"captures":{"1":{"name":"punctuation.definition.comment.begin.documentation.c"},"2":{"patterns":[{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:callergraph|callgraph|else|endif|f\\\\$|f\\\\[|f\\\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\\\$|\\\\#|<|>|%|\\"|\\\\.|=|::|\\\\||\\\\-\\\\-|\\\\-\\\\-\\\\-)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"name":"markup.italic.doxygen.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|em|e))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"name":"markup.bold.doxygen.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]b)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"name":"markup.inline.raw.string.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:c|p))\\\\s+(\\\\S+)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"patterns":[{"match":"in|out","name":"keyword.other.parameter.direction.$0.c"}]},"3":{"name":"variable.parameter.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]param)(?:\\\\s*\\\\[((?:,?\\\\s*(?:in|out)\\\\s*)+)\\\\])?\\\\s+(\\\\b\\\\w+\\\\b)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"match":"(?:\\\\b[A-Z]+:|@[a-z_]+:)","name":"storage.type.class.gtkdoc"}]},"3":{"name":"punctuation.definition.comment.end.documentation.c"}},"match":"(\\\\/\\\\*[!*]+(?=\\\\s))(.+)([!*]*\\\\*\\\\/)","name":"comment.block.documentation.c"},{"begin":"((?>\\\\s*)\\\\/\\\\*[!*]+(?:(?:\\\\n|$)|(?=\\\\s)))","beginCaptures":{"1":{"name":"punctuation.definition.comment.begin.documentation.c"}},"end":"([!*]*\\\\*\\\\/)","endCaptures":{"1":{"name":"punctuation.definition.comment.end.documentation.c"}},"name":"comment.block.documentation.c","patterns":[{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:callergraph|callgraph|else|endif|f\\\\$|f\\\\[|f\\\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\\\$|\\\\#|<|>|%|\\"|\\\\.|=|::|\\\\||\\\\-\\\\-|\\\\-\\\\-\\\\-)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"name":"markup.italic.doxygen.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|em|e))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"name":"markup.bold.doxygen.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]b)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"name":"markup.inline.raw.string.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:c|p))\\\\s+(\\\\S+)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"captures":{"1":{"name":"storage.type.class.doxygen.c"},"2":{"patterns":[{"match":"in|out","name":"keyword.other.parameter.direction.$0.c"}]},"3":{"name":"variable.parameter.c"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]param)(?:\\\\s*\\\\[((?:,?\\\\s*(?:in|out)\\\\s*)+)\\\\])?\\\\s+(\\\\b\\\\w+\\\\b)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.c"},{"match":"(?:\\\\b[A-Z]+:|@[a-z_]+:)","name":"storage.type.class.gtkdoc"}]},{"captures":{"1":{"name":"meta.toc-list.banner.block.c"}},"match":"^\\\\/\\\\* =(\\\\s*.*?)\\\\s*= \\\\*\\\\/$\\\\n?","name":"comment.block.banner.c"},{"begin":"(\\\\/\\\\*)","beginCaptures":{"1":{"name":"punctuation.definition.comment.begin.c"}},"end":"(\\\\*\\\\/)","endCaptures":{"1":{"name":"punctuation.definition.comment.end.c"}},"name":"comment.block.c"},{"captures":{"1":{"name":"meta.toc-list.banner.line.c"}},"match":"^\\\\/\\\\/ =(\\\\s*.*?)\\\\s*=$\\\\n?","name":"comment.line.banner.c"},{"begin":"((?:^[ \\\\t]+)?)(?=\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.c"}},"end":"(?!\\\\G)","patterns":[{"begin":"(\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.definition.comment.c"}},"end":"(?=\\\\n)","name":"comment.line.double-slash.c","patterns":[{"include":"#line_continuation_character"}]}]}]},{"include":"#block_comment"},{"include":"#line_comment"}]},{"include":"#block_comment"},{"include":"#line_comment"}]},"default_statement":{"begin":"((?>(?:(?:(?>(?(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/)))+|(?:(?:(?:(?:\\\\b|(?<=\\\\W))|(?=\\\\W))|\\\\A)|\\\\Z))))((?=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.c"},"2":{"name":"punctuation.section.arguments.begin.bracket.round.c"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.c"}},"patterns":[{"include":"#function-call-innards"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.c"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.c"}},"patterns":[{"include":"#function-call-innards"}]},{"include":"#block_innards"}]},"function-innards":{"patterns":[{"include":"#comments"},{"include":"#storage_types"},{"include":"#operators"},{"include":"#vararg_ellipses"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.c"},"2":{"name":"punctuation.section.parameters.begin.bracket.round.c"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parameters.end.bracket.round.c"}},"name":"meta.function.definition.parameters.c","patterns":[{"include":"#probably_a_parameter"},{"include":"#function-innards"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.c"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.c"}},"patterns":[{"include":"#function-innards"}]},{"include":"$self"}]},"inline_comment":{"patterns":[{"patterns":[{"captures":{"1":{"name":"comment.block.c punctuation.definition.comment.begin.c"},"2":{"name":"comment.block.c"},"3":{"patterns":[{"match":"\\\\*\\\\/","name":"comment.block.c punctuation.definition.comment.end.c"},{"match":"\\\\*","name":"comment.block.c"}]}},"match":"(\\\\/\\\\*)((?>(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/))"},{"captures":{"1":{"name":"comment.block.c punctuation.definition.comment.begin.c"},"2":{"name":"comment.block.c"},"3":{"patterns":[{"match":"\\\\*\\\\/","name":"comment.block.c punctuation.definition.comment.end.c"},{"match":"\\\\*","name":"comment.block.c"}]}},"match":"(\\\\/\\\\*)((?:[^\\\\*]|(?:\\\\*)++[^\\\\/])*+((?:\\\\*)++\\\\/))"}]},{"captures":{"1":{"name":"comment.block.c punctuation.definition.comment.begin.c"},"2":{"name":"comment.block.c"},"3":{"patterns":[{"match":"\\\\*\\\\/","name":"comment.block.c punctuation.definition.comment.end.c"},{"match":"\\\\*","name":"comment.block.c"}]}},"match":"(\\\\/\\\\*)((?:[^\\\\*]|(?:\\\\*)++[^\\\\/])*+((?:\\\\*)++\\\\/))"}]},"line_comment":{"patterns":[{"begin":"\\\\s*+(\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.definition.comment.c"}},"end":"(?<=\\\\n)(?\\\\*|->)))"}]},"5":{"name":"variable.other.member.c"}},"match":"((?:[a-zA-Z_]\\\\w*|(?<=\\\\]|\\\\)))\\\\s*)(?:((?:\\\\.\\\\*|\\\\.))|((?:->\\\\*|->)))((?:[a-zA-Z_]\\\\w*\\\\s*(?:(?:(?:\\\\.\\\\*|\\\\.))|(?:(?:->\\\\*|->)))\\\\s*)*)\\\\s*(\\\\b(?!(?:atomic_uint_least64_t|atomic_uint_least16_t|atomic_uint_least32_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_fast64_t|atomic_uint_fast32_t|atomic_int_least64_t|atomic_int_least32_t|pthread_rwlockattr_t|atomic_uint_fast16_t|pthread_mutexattr_t|atomic_int_fast16_t|atomic_uint_fast8_t|atomic_int_fast64_t|atomic_int_least8_t|atomic_int_fast32_t|atomic_int_fast8_t|pthread_condattr_t|atomic_uintptr_t|atomic_ptrdiff_t|pthread_rwlock_t|atomic_uintmax_t|pthread_mutex_t|atomic_intmax_t|atomic_intptr_t|atomic_char32_t|atomic_char16_t|pthread_attr_t|atomic_wchar_t|uint_least64_t|uint_least32_t|uint_least16_t|pthread_cond_t|pthread_once_t|uint_fast64_t|uint_fast16_t|atomic_size_t|uint_least8_t|int_least64_t|int_least32_t|int_least16_t|pthread_key_t|atomic_ullong|atomic_ushort|uint_fast32_t|atomic_schar|atomic_short|uint_fast8_t|int_fast64_t|int_fast32_t|int_fast16_t|atomic_ulong|atomic_llong|int_least8_t|atomic_uchar|memory_order|suseconds_t|int_fast8_t|atomic_bool|atomic_char|atomic_uint|atomic_long|atomic_int|useconds_t|_Imaginary|blksize_t|pthread_t|in_addr_t|uintptr_t|in_port_t|uintmax_t|uintmax_t|blkcnt_t|uint16_t|unsigned|_Complex|uint32_t|intptr_t|intmax_t|intmax_t|uint64_t|u_quad_t|int64_t|int32_t|ssize_t|caddr_t|clock_t|uint8_t|u_short|swblk_t|segsz_t|int16_t|fixpt_t|daddr_t|nlink_t|qaddr_t|size_t|time_t|mode_t|signed|quad_t|ushort|u_long|u_char|double|int8_t|ino_t|uid_t|pid_t|_Bool|float|dev_t|div_t|short|gid_t|off_t|u_int|key_t|id_t|uint|long|void|char|bool|id_t|int)\\\\b)[a-zA-Z_]\\\\w*\\\\b(?!\\\\())"},"method_access":{"begin":"((?:[a-zA-Z_]\\\\w*|(?<=\\\\]|\\\\)))\\\\s*)(?:((?:\\\\.\\\\*|\\\\.))|((?:->\\\\*|->)))((?:[a-zA-Z_]\\\\w*\\\\s*(?:(?:(?:\\\\.\\\\*|\\\\.))|(?:(?:->\\\\*|->)))\\\\s*)*)\\\\s*([a-zA-Z_]\\\\w*)(\\\\()","beginCaptures":{"1":{"name":"variable.other.object.access.c"},"2":{"name":"punctuation.separator.dot-access.c"},"3":{"name":"punctuation.separator.pointer-access.c"},"4":{"patterns":[{"include":"#member_access"},{"include":"#method_access"},{"captures":{"1":{"name":"variable.other.object.access.c"},"2":{"name":"punctuation.separator.dot-access.c"},"3":{"name":"punctuation.separator.pointer-access.c"}},"match":"((?:[a-zA-Z_]\\\\w*|(?<=\\\\]|\\\\)))\\\\s*)(?:((?:\\\\.\\\\*|\\\\.))|((?:->\\\\*|->)))"}]},"5":{"name":"entity.name.function.member.c"},"6":{"name":"punctuation.section.arguments.begin.bracket.round.function.member.c"}},"contentName":"meta.function-call.member.c","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.arguments.end.bracket.round.function.member.c"}},"patterns":[{"include":"#function-call-innards"}]},"numbers":{"captures":{"0":{"patterns":[{"begin":"(?=.)","end":"$","patterns":[{"captures":{"1":{"name":"keyword.other.unit.hexadecimal.c"},"2":{"name":"constant.numeric.hexadecimal.c","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric"}]},"3":{"name":"punctuation.separator.constant.numeric"},"4":{"name":"constant.numeric.hexadecimal.c"},"5":{"name":"constant.numeric.hexadecimal.c","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric"}]},"6":{"name":"punctuation.separator.constant.numeric"},"8":{"name":"keyword.other.unit.exponent.hexadecimal.c"},"9":{"name":"keyword.operator.plus.exponent.hexadecimal.c"},"10":{"name":"keyword.operator.minus.exponent.hexadecimal.c"},"11":{"name":"constant.numeric.exponent.hexadecimal.c","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric"}]},"12":{"name":"keyword.other.unit.suffix.floating-point.c"}},"match":"(\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9a-fA-F])\\\\.|\\\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.c"},{"match":"<<|>>","name":"keyword.operator.bitwise.shift.c"},{"match":"!=|<=|>=|==|<|>","name":"keyword.operator.comparison.c"},{"match":"&&|!|\\\\|\\\\|","name":"keyword.operator.logical.c"},{"match":"&|\\\\||\\\\^|~","name":"keyword.operator.c"},{"match":"=","name":"keyword.operator.assignment.c"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.c"},{"begin":"(\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.c"}},"end":"(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.c"}},"patterns":[{"include":"#function-call-innards"},{"include":"$self"}]}]},"parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.c"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.c"}},"name":"meta.parens.c","patterns":[{"include":"$self"}]},"parens-block":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.c"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.c"}},"name":"meta.parens.block.c","patterns":[{"include":"#block_innards"},{"match":"(?-mix:(?=+!]+|\\\\(\\\\)|\\\\[\\\\]))\\\\s*\\\\()","end":"(?<=\\\\))(?!\\\\w)|(?=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.c"},"2":{"name":"punctuation.section.arguments.begin.bracket.round.c"}},"end":"(\\\\))|(?\\\\]\\\\)]))\\\\s*([a-zA-Z_]\\\\w*)\\\\s*(?=(?:\\\\[\\\\]\\\\s*)?(?:,|\\\\)))"},"static_assert":{"begin":"((?>(?:(?:(?>(?(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/)))+|(?:(?:(?:(?:\\\\b|(?<=\\\\W))|(?=\\\\W))|\\\\A)|\\\\Z))))((?(?:(?:(?>(?(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/)))+|(?:(?:(?:(?:\\\\b|(?<=\\\\W))|(?=\\\\W))|\\\\A)|\\\\Z))))(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.c punctuation.definition.comment.begin.c"},"3":{"name":"comment.block.c"},"4":{"patterns":[{"match":"\\\\*\\\\/","name":"comment.block.c punctuation.definition.comment.end.c"},{"match":"\\\\*","name":"comment.block.c"}]},"5":{"name":"keyword.other.static_assert.c"},"6":{"patterns":[{"include":"#inline_comment"}]},"7":{"name":"comment.block.c punctuation.definition.comment.begin.c"},"8":{"name":"comment.block.c"},"9":{"patterns":[{"match":"\\\\*\\\\/","name":"comment.block.c punctuation.definition.comment.end.c"},{"match":"\\\\*","name":"comment.block.c"}]},"10":{"name":"punctuation.section.arguments.begin.bracket.round.static_assert.c"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.arguments.end.bracket.round.static_assert.c"}},"patterns":[{"begin":"(,)\\\\s*(?=(?:L|u8|u|U\\\\s*\\\\\\")?)","beginCaptures":{"1":{"name":"punctuation.separator.delimiter.comma.c"}},"end":"(?=\\\\))","name":"meta.static_assert.message.c","patterns":[{"include":"#string_context"}]},{"include":"#evaluation_context"}]},"storage_types":{"patterns":[{"match":"(?-mix:(?\\\\s+)|(\\\\/\\\\*)((?>(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/)))+?|(?:(?:(?:(?:\\\\b|(?<=\\\\W))|(?=\\\\W))|\\\\A)|\\\\Z)))(?:\\\\n|$)"},{"include":"#comments"},{"begin":"(((?:(?:(?>\\\\s+)|(\\\\/\\\\*)((?>(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/)))+?|(?:(?:(?:(?:\\\\b|(?<=\\\\W))|(?=\\\\W))|\\\\A)|\\\\Z)))\\\\()","beginCaptures":{"1":{"name":"punctuation.section.parens.begin.bracket.round.assembly.c"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.c punctuation.definition.comment.begin.c"},"4":{"name":"comment.block.c"},"5":{"patterns":[{"match":"\\\\*\\\\/","name":"comment.block.c punctuation.definition.comment.end.c"},{"match":"\\\\*","name":"comment.block.c"}]}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.parens.end.bracket.round.assembly.c"}},"patterns":[{"begin":"(R?)(\\")","beginCaptures":{"1":{"name":"meta.encoding.c"},"2":{"name":"punctuation.definition.string.begin.assembly.c"}},"contentName":"meta.embedded.assembly.c","end":"(\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.assembly.c"}},"name":"string.quoted.double.c","patterns":[{"include":"source.asm"},{"include":"source.x86"},{"include":"source.x86_64"},{"include":"source.arm"},{"include":"#backslash_escapes"},{"include":"#string_escaped_char"}]},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.parens.begin.bracket.round.assembly.inner.c"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.parens.end.bracket.round.assembly.inner.c"}},"patterns":[{"include":"#evaluation_context"}]},{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.c punctuation.definition.comment.begin.c"},"3":{"name":"comment.block.c"},"4":{"patterns":[{"match":"\\\\*\\\\/","name":"comment.block.c punctuation.definition.comment.end.c"},{"match":"\\\\*","name":"comment.block.c"}]},"5":{"name":"variable.other.asm.label.c"},"6":{"patterns":[{"include":"#inline_comment"}]},"7":{"name":"comment.block.c punctuation.definition.comment.begin.c"},"8":{"name":"comment.block.c"},"9":{"patterns":[{"match":"\\\\*\\\\/","name":"comment.block.c punctuation.definition.comment.end.c"},{"match":"\\\\*","name":"comment.block.c"}]}},"match":"\\\\[((?:(?:(?>\\\\s+)|(\\\\/\\\\*)((?>(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/)))+?|(?:(?:(?:(?:\\\\b|(?<=\\\\W))|(?=\\\\W))|\\\\A)|\\\\Z)))([a-zA-Z_]\\\\w*)((?:(?:(?>\\\\s+)|(\\\\/\\\\*)((?>(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/)))+?|(?:(?:(?:(?:\\\\b|(?<=\\\\W))|(?=\\\\W))|\\\\A)|\\\\Z)))\\\\]"},{"match":":","name":"punctuation.separator.delimiter.colon.assembly.c"},{"include":"#comments"}]}]}]},"string_escaped_char":{"patterns":[{"match":"\\\\\\\\(\\\\\\\\|[abefnprtv'\\"?]|[0-3]\\\\d{,2}|[4-7]\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})","name":"constant.character.escape.c"},{"match":"\\\\\\\\.","name":"invalid.illegal.unknown-escape.c"}]},"string_placeholder":{"patterns":[{"match":"%(\\\\d+\\\\$)?[#0\\\\- +']*[,;:_]?((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?(\\\\.((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]","name":"constant.other.placeholder.c"},{"captures":{"1":{"name":"invalid.illegal.placeholder.c"}},"match":"(%)(?!\\"\\\\s*(PRI|SCN))"}]},"strings":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.c"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.c"}},"name":"string.quoted.double.c","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"},{"include":"#line_continuation_character"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.c"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.c"}},"name":"string.quoted.single.c","patterns":[{"include":"#string_escaped_char"},{"include":"#line_continuation_character"}]}]},"switch_conditional_parentheses":{"begin":"((?>(?:(?:(?>(?(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/)))+|(?:(?:(?:(?:\\\\b|(?<=\\\\W))|(?=\\\\W))|\\\\A)|\\\\Z))))(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.c punctuation.definition.comment.begin.c"},"3":{"name":"comment.block.c"},"4":{"patterns":[{"match":"\\\\*\\\\/","name":"comment.block.c punctuation.definition.comment.end.c"},{"match":"\\\\*","name":"comment.block.c"}]},"5":{"name":"punctuation.section.parens.begin.bracket.round.conditional.switch.c"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.parens.end.bracket.round.conditional.switch.c"}},"name":"meta.conditional.switch.c","patterns":[{"include":"#evaluation_context"},{"include":"#c_conditional_context"}]},"switch_statement":{"begin":"(((?>(?:(?:(?>(?(?:[^\\\\*]|(?>\\\\*+)[^\\\\/])*)((?>\\\\*+)\\\\/)))+|(?:(?:(?:(?:\\\\b|(?<=\\\\W))|(?=\\\\W))|\\\\A)|\\\\Z))))((?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))","name":"meta.block.switch.c","patterns":[{"begin":"\\\\G ?","end":"((?:\\\\{|<%|\\\\?\\\\?<|(?=;)))","endCaptures":{"1":{"name":"punctuation.section.block.begin.bracket.curly.switch.c"}},"name":"meta.head.switch.c","patterns":[{"include":"#switch_conditional_parentheses"},{"include":"$self"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","end":"(\\\\}|%>|\\\\?\\\\?>)","endCaptures":{"1":{"name":"punctuation.section.block.end.bracket.curly.switch.c"}},"name":"meta.body.switch.c","patterns":[{"include":"#default_statement"},{"include":"#case_statement"},{"include":"$self"},{"include":"#block_innards"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s\\\\n]*","end":"[\\\\s\\\\n]*(?=;)","name":"meta.tail.switch.c","patterns":[{"include":"$self"}]}]},"vararg_ellipses":{"match":"(?bte});var fte,bte,rN=_(()=>{fte=Object.freeze(JSON.parse(`{"displayName":"Cadence","name":"cadence","patterns":[{"include":"#comments"},{"include":"#expressions"},{"include":"#declarations"},{"include":"#keywords"},{"include":"#code-block"},{"include":"#composite"},{"include":"#event"}],"repository":{"code-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.scope.begin.cadence"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.scope.end.cadence"}},"patterns":[{"include":"$self"}]},"comments":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.cadence"}},"match":"\\\\A^(#!).*$\\\\n?","name":"comment.line.number-sign.cadence"},{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.cadence"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.cadence"}},"name":"comment.block.documentation.cadence","patterns":[{"include":"#nested"}]},{"begin":"/\\\\*:","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.cadence"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.cadence"}},"name":"comment.block.documentation.playground.cadence","patterns":[{"include":"#nested"}]},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.cadence"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.cadence"}},"name":"comment.block.cadence","patterns":[{"include":"#nested"}]},{"match":"\\\\*/","name":"invalid.illegal.unexpected-end-of-block-comment.cadence"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.cadence"}},"end":"(?!\\\\G)","patterns":[{"begin":"///","beginCaptures":{"0":{"name":"punctuation.definition.comment.cadence"}},"end":"^","name":"comment.line.triple-slash.documentation.cadence"},{"begin":"//:","beginCaptures":{"0":{"name":"punctuation.definition.comment.cadence"}},"end":"^","name":"comment.line.double-slash.documentation.cadence"},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.cadence"}},"end":"^","name":"comment.line.double-slash.cadence"}]}],"repository":{"nested":{"begin":"/\\\\*","end":"\\\\*/","patterns":[{"include":"#nested"}]}}},"composite":{"begin":"\\\\b((?:(?:struct|resource|contract)(?:\\\\s+interface)?)|transaction|enum)\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)","beginCaptures":{"1":{"name":"storage.type.$1.cadence"},"2":{"name":"entity.name.type.$1.cadence"}},"end":"(?<=\\\\})","name":"meta.definition.type.composite.cadence","patterns":[{"include":"#comments"},{"include":"#conformance-clause"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.type.begin.cadence"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.type.end.cadence"}},"name":"meta.definition.type.body.cadence","patterns":[{"include":"$self"}]}]},"conformance-clause":{"begin":"(:)(?=\\\\s*\\\\{)|(:)\\\\s*","beginCaptures":{"1":{"name":"invalid.illegal.empty-conformance-clause.cadence"},"2":{"name":"punctuation.separator.conformance-clause.cadence"}},"end":"(?!\\\\G)$|(?=[={}])","name":"meta.conformance-clause.cadence","patterns":[{"begin":"\\\\G","end":"(?!\\\\G)$|(?=[={}])","patterns":[{"include":"#comments"},{"include":"#type"}]}]},"declarations":{"patterns":[{"include":"#var-let-declaration"},{"include":"#function"},{"include":"#initializer"}]},"event":{"begin":"\\\\b(event)\\\\b\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*","beginCaptures":{"1":{"name":"storage.type.event.cadence"},"2":{"name":"entity.name.type.event.cadence"}},"end":"(?<=\\\\))|$","name":"meta.definition.type.event.cadence","patterns":[{"include":"#comments"},{"include":"#parameter-clause"}]},"expression-element-list":{"patterns":[{"include":"#comments"},{"begin":"([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*(:)","beginCaptures":{"1":{"name":"support.function.any-method.cadence"},"2":{"name":"punctuation.separator.argument-label.cadence"}},"comment":"an element with a label","end":"(?=[,)\\\\]])","patterns":[{"include":"#expressions"}]},{"begin":"(?![,)\\\\]])(?=\\\\S)","comment":"an element without a label (i.e. anything else)","end":"(?=[,)\\\\]])","patterns":[{"include":"#expressions"}]}]},"expressions":{"patterns":[{"include":"#comments"},{"include":"#function-call-expression"},{"include":"#literals"},{"include":"#operators"},{"include":"#language-variables"}]},"function":{"begin":"\\\\b(fun)\\\\b\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*","beginCaptures":{"1":{"name":"storage.type.function.cadence"},"2":{"name":"entity.name.function.cadence"}},"end":"(?<=\\\\})|$","name":"meta.definition.function.cadence","patterns":[{"include":"#comments"},{"include":"#parameter-clause"},{"include":"#function-result"},{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.section.function.begin.cadence"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.section.function.end.cadence"}},"name":"meta.definition.function.body.cadence","patterns":[{"include":"$self"}]}]},"function-call-expression":{"patterns":[{"begin":"(?!(?:set|init))([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"support.function.any-method.cadence"},"4":{"name":"punctuation.definition.arguments.begin.cadence"}},"comment":"foo(args) -- a call whose callee is a highlightable name","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.cadence"}},"name":"meta.function-call.cadence","patterns":[{"include":"#expression-element-list"}]}]},"function-result":{"begin":"(?&|\\\\^~.])(:)(?![/=\\\\-+!*%<>&|\\\\^~.])\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.function-result.cadence"}},"end":"(?!\\\\G)(?=\\\\{|;)|$","name":"meta.function-result.cadence","patterns":[{"include":"#type"}]},"initializer":{"begin":"(?|<|>=|<=","name":"keyword.operator.comparison.cadence"},{"match":"\\\\?\\\\?","name":"keyword.operator.coalescing.cadence"},{"match":"&&|\\\\|\\\\|","name":"keyword.operator.logical.cadence"},{"match":"[?!]","name":"keyword.operator.type.optional.cadence"}]},"parameter-clause":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.cadence"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.cadence"}},"name":"meta.parameter-clause.cadence","patterns":[{"include":"#parameter-list"}]},"parameter-list":{"patterns":[{"captures":{"1":{"name":"entity.name.function.cadence"},"2":{"name":"variable.parameter.function.cadence"}},"comment":"External parameter labels are considered part of the function name","match":"([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)(?=\\\\s*:)"},{"captures":{"1":{"name":"variable.parameter.function.cadence"},"2":{"name":"entity.name.function.cadence"}},"comment":"If no external label is given, the name is both the external label and the internal variable name","match":"(([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*))(?=\\\\s*:)"},{"begin":":\\\\s*(?!\\\\s)","end":"(?=[,)])","patterns":[{"include":"#type"},{"match":":","name":"invalid.illegal.extra-colon-in-parameter-list.cadence"}]}]},"type":{"patterns":[{"include":"#comments"},{"match":"([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)","name":"storage.type.cadence"}]},"var-let-declaration":{"begin":"\\\\b(var|let)\\\\b\\\\s+([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)","beginCaptures":{"1":{"name":"storage.type.$1.cadence"},"2":{"name":"entity.name.type.$1.cadence"}},"end":"=|<-|<-!|$","patterns":[{"include":"#type"}]}},"scopeName":"source.cadence","aliases":["cdc"]}`)),bte=[fte]});var iN={};x(iN,{default:()=>Ur});var hte,Ur,vc=_(()=>{hte=Object.freeze(JSON.parse(`{"displayName":"Python","name":"python","patterns":[{"include":"#statement"},{"include":"#expression"}],"repository":{"annotated-parameter":{"begin":"\\\\b([[:alpha:]_]\\\\w*)\\\\s*(:)","beginCaptures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.annotation.python"}},"end":"(,)|(?=\\\\))","endCaptures":{"1":{"name":"punctuation.separator.parameters.python"}},"patterns":[{"include":"#expression"},{"match":"=(?!=)","name":"keyword.operator.assignment.python"}]},"assignment-operator":{"match":"<<=|>>=|//=|\\\\*\\\\*=|\\\\+=|-=|/=|@=|\\\\*=|%=|~=|\\\\^=|&=|\\\\|=|=(?!=)","name":"keyword.operator.assignment.python"},"backticks":{"begin":"\\\\\`","end":"(?:\\\\\`|(?))","name":"comment.typehint.punctuation.notation.python"},{"match":"([[:alpha:]_]\\\\w*)","name":"comment.typehint.variable.notation.python"}]},{"include":"#comments-base"}]},"comments-base":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($)","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"comments-string-double-three":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($|(?=\\"\\"\\"))","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"comments-string-single-three":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($|(?='''))","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"curly-braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dict.begin.python"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dict.end.python"}},"patterns":[{"match":":","name":"punctuation.separator.dict.python"},{"include":"#expression"}]},"decorator":{"begin":"^\\\\s*((@))\\\\s*(?=[[:alpha:]_]\\\\w*)","beginCaptures":{"1":{"name":"entity.name.function.decorator.python"},"2":{"name":"punctuation.definition.decorator.python"}},"end":"(\\\\))(?:(.*?)(?=\\\\s*(?:\\\\#|$)))|(?=\\\\n|\\\\#)","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"},"2":{"name":"invalid.illegal.decorator.python"}},"name":"meta.function.decorator.python","patterns":[{"include":"#decorator-name"},{"include":"#function-arguments"}]},"decorator-name":{"patterns":[{"include":"#builtin-callables"},{"include":"#illegal-object-name"},{"captures":{"2":{"name":"punctuation.separator.period.python"}},"match":"([[:alpha:]_]\\\\w*)|(\\\\.)","name":"entity.name.function.decorator.python"},{"include":"#line-continuation"},{"captures":{"1":{"name":"invalid.illegal.decorator.python"}},"match":"\\\\s*([^([:alpha:]\\\\s_\\\\.#\\\\\\\\].*?)(?=\\\\#|$)","name":"invalid.illegal.decorator.python"}]},"docstring":{"patterns":[{"begin":"(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\1)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"}},"name":"string.quoted.docstring.multi.python","patterns":[{"include":"#docstring-prompt"},{"include":"#codetags"},{"include":"#docstring-guts-unicode"}]},{"begin":"([rR])(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"}},"name":"string.quoted.docstring.raw.multi.python","patterns":[{"include":"#string-consume-escape"},{"include":"#docstring-prompt"},{"include":"#codetags"}]},{"begin":"(\\\\'|\\\\\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\1)|(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.docstring.single.python","patterns":[{"include":"#codetags"},{"include":"#docstring-guts-unicode"}]},{"begin":"([rR])(\\\\'|\\\\\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)|(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.docstring.raw.single.python","patterns":[{"include":"#string-consume-escape"},{"include":"#codetags"}]}]},"docstring-guts-unicode":{"patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"}]},"docstring-prompt":{"captures":{"1":{"name":"keyword.control.flow.python"}},"match":"(?:(?:^|\\\\G)\\\\s*((?:>>>|\\\\.\\\\.\\\\.)\\\\s)(?=\\\\s*\\\\S))"},"docstring-statement":{"begin":"^(?=\\\\s*[rR]?(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\"|\\\\'|\\\\\\"))","comment":"the string either terminates correctly or by the beginning of a new line (this is for single line docstrings that aren't terminated) AND it's not followed by another docstring","end":"((?<=\\\\1)|^)(?!\\\\s*[rR]?(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\"|\\\\'|\\\\\\"))","patterns":[{"include":"#docstring"}]},"double-one-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\"))|((?=(?)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"ellipsis":{"match":"\\\\.\\\\.\\\\.","name":"constant.other.ellipsis.python"},"escape-sequence":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|[0-7]{1,3}|[\\\\\\\\\\"'abfnrtv])","name":"constant.character.escape.python"},"escape-sequence-unicode":{"patterns":[{"match":"\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\\\\{[\\\\w\\\\s]+?\\\\})","name":"constant.character.escape.python"}]},"expression":{"comment":"All valid Python expressions","patterns":[{"include":"#expression-base"},{"include":"#member-access"},{"comment":"Tokenize identifiers to help linters","match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b"}]},"expression-bare":{"comment":"valid Python expressions w/o comments and line continuation","patterns":[{"include":"#backticks"},{"include":"#illegal-anno"},{"include":"#literal"},{"include":"#regexp"},{"include":"#string"},{"include":"#lambda"},{"include":"#generator"},{"include":"#illegal-operator"},{"include":"#operator"},{"include":"#curly-braces"},{"include":"#item-access"},{"include":"#list"},{"include":"#odd-function-call"},{"include":"#round-braces"},{"include":"#function-call"},{"include":"#builtin-functions"},{"include":"#builtin-types"},{"include":"#builtin-exceptions"},{"include":"#magic-names"},{"include":"#special-names"},{"include":"#illegal-names"},{"include":"#special-variables"},{"include":"#ellipsis"},{"include":"#punctuation"},{"include":"#line-continuation"}]},"expression-base":{"comment":"valid Python expressions with comments and line continuation","patterns":[{"include":"#comments"},{"include":"#expression-bare"},{"include":"#line-continuation"}]},"f-expression":{"comment":"All valid Python expressions, except comments and line continuation","patterns":[{"include":"#expression-bare"},{"include":"#member-access"},{"comment":"Tokenize identifiers to help linters","match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b"}]},"fregexp-base-expression":{"patterns":[{"include":"#fregexp-quantifier"},{"include":"#fstring-formatting-braces"},{"match":"\\\\{.*?\\\\}"},{"include":"#regexp-base-common"}]},"fregexp-quantifier":{"match":"\\\\{\\\\{(\\\\d+|\\\\d+,(\\\\d+)?|,\\\\d+)\\\\}\\\\}","name":"keyword.operator.quantifier.regexp"},"fstring-fnorm-quoted-multi-line":{"begin":"(\\\\b[fF])([bBuU])?('''|\\"\\"\\")","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.multi.python storage.type.string.python"},"2":{"name":"invalid.illegal.prefix.python"},"3":{"name":"punctuation.definition.string.begin.python string.interpolated.python string.quoted.multi.python"}},"end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"include":"#fstring-multi-core"}]},"fstring-fnorm-quoted-single-line":{"begin":"(\\\\b[fF])([bBuU])?((['\\"]))","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.single.python storage.type.string.python"},"2":{"name":"invalid.illegal.prefix.python"},"3":{"name":"punctuation.definition.string.begin.python string.interpolated.python string.quoted.single.python"}},"end":"(\\\\3)|((?=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})"},{"include":"#fstring-terminator-multi-tail"}]},"fstring-terminator-multi-tail":{"begin":"((?:=?)(?:![rsa])?)(:)(?=.*?{)","beginCaptures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"end":"(?=})","patterns":[{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"match":"([bcdeEfFgGnosxX%])(?=})","name":"storage.type.format.python"},{"match":"(\\\\.\\\\d+)","name":"storage.type.format.python"},{"match":"(,)","name":"storage.type.format.python"},{"match":"(\\\\d+)","name":"storage.type.format.python"},{"match":"(\\\\#)","name":"storage.type.format.python"},{"match":"([-+ ])","name":"storage.type.format.python"},{"match":"([<>=^])","name":"storage.type.format.python"},{"match":"(\\\\w)","name":"storage.type.format.python"}]},"fstring-terminator-single":{"patterns":[{"match":"(=(![rsa])?)(?=})","name":"storage.type.format.python"},{"match":"(=?![rsa])(?=})","name":"storage.type.format.python"},{"captures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"match":"((?:=?)(?:![rsa])?)(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})"},{"include":"#fstring-terminator-single-tail"}]},"fstring-terminator-single-tail":{"begin":"((?:=?)(?:![rsa])?)(:)(?=.*?{)","beginCaptures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"end":"(?=})|(?=\\\\n)","patterns":[{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"match":"([bcdeEfFgGnosxX%])(?=})","name":"storage.type.format.python"},{"match":"(\\\\.\\\\d+)","name":"storage.type.format.python"},{"match":"(,)","name":"storage.type.format.python"},{"match":"(\\\\d+)","name":"storage.type.format.python"},{"match":"(\\\\#)","name":"storage.type.format.python"},{"match":"([-+ ])","name":"storage.type.format.python"},{"match":"([<>=^])","name":"storage.type.format.python"},{"match":"(\\\\w)","name":"storage.type.format.python"}]},"function-arguments":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python"}},"contentName":"meta.function-call.arguments.python","end":"(?=\\\\))(?!\\\\)\\\\s*\\\\()","patterns":[{"match":"(,)","name":"punctuation.separator.arguments.python"},{"captures":{"1":{"name":"keyword.operator.unpacking.arguments.python"}},"match":"(?:(?<=[,(])|^)\\\\s*(\\\\*{1,2})"},{"include":"#lambda-incomplete"},{"include":"#illegal-names"},{"captures":{"1":{"name":"variable.parameter.function-call.python"},"2":{"name":"keyword.operator.assignment.python"}},"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\s*(=)(?!=)"},{"match":"=(?!=)","name":"keyword.operator.assignment.python"},{"include":"#expression"},{"captures":{"1":{"name":"punctuation.definition.arguments.end.python"},"2":{"name":"punctuation.definition.arguments.begin.python"}},"match":"\\\\s*(\\\\))\\\\s*(\\\\()"}]},"function-call":{"begin":"\\\\b(?=([[:alpha:]_]\\\\w*)\\\\s*(\\\\())","comment":"Regular function call of the type \\"name(args)\\"","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"name":"meta.function-call.python","patterns":[{"include":"#special-variables"},{"include":"#function-name"},{"include":"#function-arguments"}]},"function-declaration":{"begin":"\\\\s*(?:\\\\b(async)\\\\s+)?\\\\b(def)\\\\s+(?=[[:alpha:]_][[:word:]]*\\\\s*\\\\()","beginCaptures":{"1":{"name":"storage.type.function.async.python"},"2":{"name":"storage.type.function.python"}},"end":"(:|(?=[#'\\"\\\\n]))","endCaptures":{"1":{"name":"punctuation.section.function.begin.python"}},"name":"meta.function.python","patterns":[{"include":"#function-def-name"},{"include":"#parameters"},{"include":"#line-continuation"},{"include":"#return-annotation"}]},"function-def-name":{"patterns":[{"include":"#illegal-object-name"},{"include":"#builtin-possible-callables"},{"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"entity.name.function.python"}]},"function-name":{"patterns":[{"include":"#builtin-possible-callables"},{"comment":"Some color schemas support meta.function-call.generic scope","match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"meta.function-call.generic.python"}]},"generator":{"begin":"\\\\bfor\\\\b","beginCaptures":{"0":{"name":"keyword.control.flow.python"}},"comment":"Match \\"for ... in\\" construct used in generators and for loops to\\ncorrectly identify the \\"in\\" as a control flow keyword.\\n","end":"\\\\bin\\\\b","endCaptures":{"0":{"name":"keyword.control.flow.python"}},"patterns":[{"include":"#expression"}]},"illegal-anno":{"match":"->","name":"invalid.illegal.annotation.python"},"illegal-names":{"captures":{"1":{"name":"keyword.control.flow.python"},"2":{"name":"keyword.control.import.python"}},"match":"\\\\b(?:(and|assert|async|await|break|class|continue|def|del|elif|else|except|finally|for|from|global|if|in|is|(?<=\\\\.)lambda|lambda(?=\\\\s*[\\\\.=])|nonlocal|not|or|pass|raise|return|try|while|with|yield)|(as|import))\\\\b"},"illegal-object-name":{"comment":"It's illegal to name class or function \\"True\\"","match":"\\\\b(True|False|None)\\\\b","name":"keyword.illegal.name.python"},"illegal-operator":{"patterns":[{"match":"&&|\\\\|\\\\||--|\\\\+\\\\+","name":"invalid.illegal.operator.python"},{"match":"[?$]","name":"invalid.illegal.operator.python"},{"comment":"We don't want \`!\` to flash when we're typing \`!=\`","match":"!\\\\b","name":"invalid.illegal.operator.python"}]},"import":{"comment":"Import statements used to correctly mark \`from\`, \`import\`, and \`as\`\\n","patterns":[{"begin":"\\\\b(?>|&|\\\\||\\\\^|~)|(\\\\*\\\\*|\\\\*|\\\\+|-|%|//|/|@)|(!=|==|>=|<=|<|>)|(:=)"},"parameter-special":{"captures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"variable.parameter.function.language.special.self.python"},"3":{"name":"variable.parameter.function.language.special.cls.python"},"4":{"name":"punctuation.separator.parameters.python"}},"match":"\\\\b((self)|(cls))\\\\b\\\\s*(?:(,)|(?=\\\\)))"},"parameters":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.python"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.python"}},"name":"meta.function.parameters.python","patterns":[{"match":"/","name":"keyword.operator.positional.parameter.python"},{"match":"(\\\\*\\\\*|\\\\*)","name":"keyword.operator.unpacking.parameter.python"},{"include":"#lambda-incomplete"},{"include":"#illegal-names"},{"include":"#illegal-object-name"},{"include":"#parameter-special"},{"captures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.parameters.python"}},"match":"([[:alpha:]_]\\\\w*)\\\\s*(?:(,)|(?=[)#\\\\n=]))"},{"include":"#comments"},{"include":"#loose-default"},{"include":"#annotated-parameter"}]},"punctuation":{"patterns":[{"match":":","name":"punctuation.separator.colon.python"},{"match":",","name":"punctuation.separator.element.python"}]},"regexp":{"patterns":[{"include":"#regexp-single-three-line"},{"include":"#regexp-double-three-line"},{"include":"#regexp-single-one-line"},{"include":"#regexp-double-one-line"}]},"regexp-backreference":{"captures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.begin.regexp"},"2":{"name":"entity.name.tag.named.backreference.regexp"},"3":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp"}},"match":"(\\\\()(\\\\?P=\\\\w+(?:\\\\s+[[:alnum:]]+)?)(\\\\))","name":"meta.backreference.named.regexp"},"regexp-backreference-number":{"captures":{"1":{"name":"entity.name.tag.backreference.regexp"}},"match":"(\\\\\\\\[1-9]\\\\d?)","name":"meta.backreference.regexp"},"regexp-base-common":{"patterns":[{"match":"\\\\.","name":"support.other.match.any.regexp"},{"match":"\\\\^","name":"support.other.match.begin.regexp"},{"match":"\\\\$","name":"support.other.match.end.regexp"},{"match":"[+*?]\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.disjunction.regexp"},{"include":"#regexp-escape-sequence"}]},"regexp-base-expression":{"patterns":[{"include":"#regexp-quantifier"},{"include":"#regexp-base-common"}]},"regexp-charecter-set-escapes":{"patterns":[{"match":"\\\\\\\\[abfnrtv\\\\\\\\]","name":"constant.character.escape.regexp"},{"include":"#regexp-escape-special"},{"match":"\\\\\\\\([0-7]{1,3})","name":"constant.character.escape.regexp"},{"include":"#regexp-escape-character"},{"include":"#regexp-escape-unicode"},{"include":"#regexp-escape-catchall"}]},"regexp-double-one-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\")","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\")|(?)","beginCaptures":{"1":{"name":"punctuation.separator.annotation.result.python"}},"end":"(?=:)","patterns":[{"include":"#expression"}]},"round-braces":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.begin.python"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.end.python"}},"patterns":[{"include":"#expression"}]},"semicolon":{"patterns":[{"match":"\\\\;$","name":"invalid.deprecated.semicolon.python"}]},"single-one-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\\\'))|((?=(?)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"special-names":{"match":"\\\\b(_*[[:upper:]][_\\\\d]*[[:upper:]])[[:upper:]\\\\d]*(_\\\\w*)?\\\\b","name":"constant.other.caps.python"},"special-variables":{"captures":{"1":{"name":"variable.language.special.self.python"},"2":{"name":"variable.language.special.cls.python"}},"match":"\\\\b(?=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)?}))","name":"meta.format.brace.python"},{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"},"3":{"name":"storage.type.format.python"},"4":{"name":"storage.type.format.python"}},"match":"({\\\\w*(\\\\.[[:alpha:]_]\\\\w*|\\\\[[^\\\\]'\\"]+\\\\])*(![rsa])?(:)[^'\\"{}\\\\n]*(?:\\\\{[^'\\"}\\\\n]*?\\\\}[^'\\"{}\\\\n]*)*})","name":"meta.format.brace.python"}]},"string-consume-escape":{"match":"\\\\\\\\['\\"\\\\n\\\\\\\\]"},"string-entity":{"patterns":[{"include":"#escape-sequence"},{"include":"#string-line-continuation"},{"include":"#string-formatting"}]},"string-formatting":{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"match":"(%(\\\\([\\\\w\\\\s]*\\\\))?[-+#0 ]*(\\\\d+|\\\\*)?(\\\\.(\\\\d+|\\\\*))?([hlL])?[diouxXeEfFgGcrsab%])","name":"meta.format.percent.python"},"string-line-continuation":{"match":"\\\\\\\\$","name":"constant.language.python"},"string-multi-bad-brace1-formatting-raw":{"begin":"(?=\\\\{%(.*?(?!'''|\\"\\"\\"))%\\\\})","comment":"template using {% ... %}","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#string-consume-escape"}]},"string-multi-bad-brace1-formatting-unicode":{"begin":"(?=\\\\{%(.*?(?!'''|\\"\\"\\"))%\\\\})","comment":"template using {% ... %}","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"}]},"string-multi-bad-brace2-formatting-raw":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!'''|\\"\\"\\")[^!:\\\\.\\\\[}\\\\w]).*?(?!'''|\\"\\"\\")\\\\})","comment":"odd format or format-like syntax","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"}]},"string-multi-bad-brace2-formatting-unicode":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!'''|\\"\\"\\")[^!:\\\\.\\\\[}\\\\w]).*?(?!'''|\\"\\"\\")\\\\})","comment":"odd format or format-like syntax","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#string-entity"}]},"string-quoted-multi-line":{"begin":"(?:\\\\b([rR])(?=[uU]))?([uU])?('''|\\"\\"\\")","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.multi.python","patterns":[{"include":"#string-multi-bad-brace1-formatting-unicode"},{"include":"#string-multi-bad-brace2-formatting-unicode"},{"include":"#string-unicode-guts"}]},"string-quoted-single-line":{"begin":"(?:\\\\b([rR])(?=[uU]))?([uU])?((['\\"]))","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\3)|((?wte});var yte,wte,sN=_(()=>{vc();yte=Object.freeze(JSON.parse(`{"displayName":"Cairo","name":"cairo","patterns":[{"begin":"\\\\b(if).*\\\\(","beginCaptures":{"1":{"name":"keyword.control.if"},"2":{"name":"entity.name.condition"}},"contentName":"source.cairo0","end":"\\\\}","endCaptures":{"0":{"name":"keyword.control.end"}},"name":"meta.control.if","patterns":[{"include":"source.cairo0"}]},{"begin":"\\\\b(with)\\\\s+(.+)\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.with"},"2":{"name":"entity.name.identifiers"}},"contentName":"source.cairo0","end":"\\\\}","endCaptures":{"0":{"name":"keyword.control.end"}},"name":"meta.control.with","patterns":[{"include":"source.cairo0"}]},{"begin":"\\\\b(with_attr)\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\s*[({]","beginCaptures":{"1":{"name":"keyword.control.with_attr"},"2":{"name":"entity.name.function"}},"contentName":"source.cairo0","end":"\\\\}","endCaptures":{"0":{"name":"keyword.control.end"}},"name":"meta.control.with_attr","patterns":[{"include":"source.cairo0"}]},{"match":"\\\\belse\\\\b","name":"keyword.control.else"},{"match":"\\\\b(call|jmp|ret|abs|rel|if)\\\\b","name":"keyword.other.opcode"},{"match":"\\\\b(ap|fp)\\\\b","name":"keyword.other.register"},{"match":"\\\\b(const|let|local|tempvar|felt|as|from|import|static_assert|return|assert|cast|alloc_locals|with|with_attr|nondet|dw|codeoffset|new|using|and)\\\\b","name":"keyword.other.meta"},{"match":"\\\\b(SIZEOF_LOCALS|SIZE)\\\\b","name":"markup.italic"},{"match":"//[^\\n]*\\n","name":"comment.line.sharp"},{"match":"\\\\b[a-zA-Z_][a-zA-Z0-9_]*:\\\\s*$","name":"entity.name.function"},{"begin":"\\\\b(func)\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\s*[({]","beginCaptures":{"1":{"name":"storage.type.function.cairo"},"2":{"name":"entity.name.function"}},"contentName":"source.cairo0","end":"\\\\}","endCaptures":{"0":{"name":"storage.type.function.cairo"}},"name":"meta.function.cairo","patterns":[{"include":"source.cairo0"}]},{"begin":"\\\\b(struct|namespace)\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\s*\\\\{","beginCaptures":{"1":{"name":"storage.type.function.cairo"},"2":{"name":"entity.name.function"}},"contentName":"source.cairo0","end":"\\\\}","endCaptures":{"0":{"name":"storage.type.function.cairo"}},"name":"meta.function.cairo","patterns":[{"include":"source.cairo0"}]},{"match":"\\\\b[+-]?[0-9]+\\\\b","name":"constant.numeric.decimal"},{"match":"\\\\b[+-]?0x[0-9a-fA-F]+\\\\b","name":"constant.numeric.hexadecimal"},{"match":"'[^']*'","name":"string.quoted.single"},{"match":"\\"[^\\"]*\\"","name":"string.quoted.double"},{"begin":"%{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.python"}},"contentName":"source.python","end":"%}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.python"},"1":{"name":"source.python"}},"name":"meta.embedded.block.python","patterns":[{"include":"source.python"}]}],"scopeName":"source.cairo0","embeddedLangs":["python"]}`)),wte=[...Ur,yte]});var cN={};x(cN,{default:()=>Cte});var kte,Cte,lN=_(()=>{kte=Object.freeze(JSON.parse(`{"displayName":"Clarity","name":"clarity","patterns":[{"include":"#expression"},{"include":"#define-constant"},{"include":"#define-data-var"},{"include":"#define-map"},{"include":"#define-function"},{"include":"#define-fungible-token"},{"include":"#define-non-fungible-token"},{"include":"#define-trait"},{"include":"#use-trait"}],"repository":{"built-in-func":{"begin":"(\\\\()\\\\s*(\\\\-|\\\\+|<\\\\=|>\\\\=|<|>|\\\\*|/|and|append|as-contract|as-max-len\\\\?|asserts!|at-block|begin|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|buff-to-int-be|buff-to-int-le|buff-to-uint-be|buff-to-uint-le|concat|contract-call\\\\?|contract-of|default-to|element-at|element-at\\\\?|filter|fold|from-consensus-buff\\\\?|ft-burn\\\\?|ft-get-balance|ft-get-supply|ft-mint\\\\?|ft-transfer\\\\?|get-block-info\\\\?|get-burn-block-info\\\\?|get-stacks-block-info\\\\?|get-tenure-info\\\\?|get-burn-block-info\\\\?|hash160|if|impl-trait|index-of|index-of\\\\?|int-to-ascii|int-to-utf8|is-eq|is-err|is-none|is-ok|is-some|is-standard|keccak256|len|log2|map|match|merge|mod|nft-burn\\\\?|nft-get-owner\\\\?|nft-mint\\\\?|nft-transfer\\\\?|not|or|pow|principal-construct\\\\?|principal-destruct\\\\?|principal-of\\\\?|print|replace-at\\\\?|secp256k1-recover\\\\?|secp256k1-verify|sha256|sha512|sha512/256|slice\\\\?|sqrti|string-to-int\\\\?|string-to-uint\\\\?|stx-account|stx-burn\\\\?|stx-get-balance|stx-transfer-memo\\\\?|stx-transfer\\\\?|to-consensus-buff\\\\?|to-int|to-uint|try!|unwrap!|unwrap-err!|unwrap-err-panic|unwrap-panic|xor)\\\\s+","beginCaptures":{"1":{"name":"punctuation.built-in-function.start.clarity"},"2":{"name":"keyword.declaration.built-in-function.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.built-in-function.end.clarity"}},"name":"meta.built-in-function","patterns":[{"include":"#expression"},{"include":"#user-func"}]},"comment":{"match":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])(;).*$","name":"comment.line.semicolon.clarity"},"data-type":{"patterns":[{"include":"#comment"},{"comment":"numerics","match":"\\\\b(uint|int)\\\\b","name":"entity.name.type.numeric.clarity"},{"comment":"principal","match":"\\\\b(principal)\\\\b","name":"entity.name.type.principal.clarity"},{"comment":"bool","match":"\\\\b(bool)\\\\b","name":"entity.name.type.bool.clarity"},{"captures":{"1":{"name":"punctuation.string_type-def.start.clarity"},"2":{"name":"entity.name.type.string_type.clarity"},"3":{"name":"constant.numeric.string_type-len.clarity"},"4":{"name":"punctuation.string_type-def.end.clarity"}},"match":"(\\\\()\\\\s*(?:(string-ascii|string-utf8)\\\\s+(\\\\d+))\\\\s*(\\\\))"},{"captures":{"1":{"name":"punctuation.buff-def.start.clarity"},"2":{"name":"entity.name.type.buff.clarity"},"3":{"name":"constant.numeric.buf-len.clarity"},"4":{"name":"punctuation.buff-def.end.clarity"}},"match":"(\\\\()\\\\s*(buff)\\\\s+(\\\\d+)\\\\s*(\\\\))"},{"begin":"(\\\\()\\\\s*(optional)\\\\s+","beginCaptures":{"1":{"name":"punctuation.optional-def.start.clarity"},"2":{"name":"storage.type.modifier"}},"comment":"optional","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.optional-def.end.clarity"}},"name":"meta.optional-def","patterns":[{"include":"#data-type"}]},{"begin":"(\\\\()\\\\s*(response)\\\\s+","beginCaptures":{"1":{"name":"punctuation.response-def.start.clarity"},"2":{"name":"storage.type.modifier"}},"comment":"response","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.response-def.end.clarity"}},"name":"meta.response-def","patterns":[{"include":"#data-type"}]},{"begin":"(\\\\()\\\\s*(list)\\\\s+(\\\\d+)\\\\s+","beginCaptures":{"1":{"name":"punctuation.list-def.start.clarity"},"2":{"name":"entity.name.type.list.clarity"},"3":{"name":"constant.numeric.list-len.clarity"}},"comment":"list","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.list-def.end.clarity"}},"name":"meta.list-def","patterns":[{"include":"#data-type"}]},{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.tuple-def.start.clarity"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.tuple-def.end.clarity"}},"name":"meta.tuple-def","patterns":[{"match":"([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)(?=:)","name":"entity.name.tag.tuple-data-type-key.clarity"},{"include":"#data-type"}]}]},"define-constant":{"begin":"(\\\\()\\\\s*(define-constant)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+","beginCaptures":{"1":{"name":"punctuation.define-constant.start.clarity"},"2":{"name":"keyword.declaration.define-constant.clarity"},"3":{"name":"entity.name.constant-name.clarity variable.other.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.define-constant.end.clarity"}},"name":"meta.define-constant","patterns":[{"include":"#expression"}]},"define-data-var":{"begin":"(\\\\()\\\\s*(define-data-var)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+","beginCaptures":{"1":{"name":"punctuation.define-data-var.start.clarity"},"2":{"name":"keyword.declaration.define-data-var.clarity"},"3":{"name":"entity.name.data-var-name.clarity variable.other.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.define-data-var.end.clarity"}},"name":"meta.define-data-var","patterns":[{"include":"#data-type"},{"include":"#expression"}]},"define-function":{"begin":"(\\\\()\\\\s*(define-(?:public|private|read-only))\\\\s+","beginCaptures":{"1":{"name":"punctuation.define-function.start.clarity"},"2":{"name":"keyword.declaration.define-function.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.define-function.end.clarity"}},"name":"meta.define-function","patterns":[{"include":"#expression"},{"begin":"(\\\\()\\\\s*([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s*","beginCaptures":{"1":{"name":"punctuation.function-signature.start.clarity"},"2":{"name":"entity.name.function.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.function-signature.end.clarity"}},"name":"meta.define-function-signature","patterns":[{"begin":"(\\\\()\\\\s*([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+","beginCaptures":{"1":{"name":"punctuation.function-argument.start.clarity"},"2":{"name":"variable.parameter.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.function-argument.end.clarity"}},"name":"meta.function-argument","patterns":[{"include":"#data-type"}]}]},{"include":"#user-func"}]},"define-fungible-token":{"captures":{"1":{"name":"punctuation.define-fungible-token.start.clarity"},"2":{"name":"keyword.declaration.define-fungible-token.clarity"},"3":{"name":"entity.name.fungible-token-name.clarity variable.other.clarity"},"4":{"name":"constant.numeric.fungible-token-total-supply.clarity"},"5":{"name":"punctuation.define-fungible-token.end.clarity"}},"match":"(\\\\()\\\\s*(define-fungible-token)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)(?:\\\\s+(u\\\\d+))?"},"define-map":{"begin":"(\\\\()\\\\s*(define-map)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+","beginCaptures":{"1":{"name":"punctuation.define-map.start.clarity"},"2":{"name":"keyword.declaration.define-map.clarity"},"3":{"name":"entity.name.map-name.clarity variable.other.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.define-map.end.clarity"}},"name":"meta.define-map","patterns":[{"include":"#data-type"},{"include":"#expression"}]},"define-non-fungible-token":{"begin":"(\\\\()\\\\s*(define-non-fungible-token)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+","beginCaptures":{"1":{"name":"punctuation.define-non-fungible-token.start.clarity"},"2":{"name":"keyword.declaration.define-non-fungible-token.clarity"},"3":{"name":"entity.name.non-fungible-token-name.clarity variable.other.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.define-non-fungible-token.end.clarity"}},"name":"meta.define-non-fungible-token","patterns":[{"include":"#data-type"}]},"define-trait":{"begin":"(\\\\()\\\\s*(define-trait)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s+","beginCaptures":{"1":{"name":"punctuation.define-trait.start.clarity"},"2":{"name":"keyword.declaration.define-trait.clarity"},"3":{"name":"entity.name.trait-name.clarity variable.other.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.define-trait.end.clarity"}},"name":"meta.define-trait","patterns":[{"begin":"(\\\\()\\\\s*","beginCaptures":{"1":{"name":"punctuation.define-trait-body.start.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.define-trait-body.end.clarity"}},"name":"meta.define-trait-body","patterns":[{"include":"#expression"},{"begin":"(\\\\()\\\\s*([a-zA-Z][\\\\w\\\\!\\\\?\\\\-]*)\\\\s+","beginCaptures":{"1":{"name":"punctuation.trait-function.start.clarity"},"2":{"name":"entity.name.function.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.trait-function.end.clarity"}},"name":"meta.trait-function","patterns":[{"include":"#data-type"},{"begin":"(\\\\()\\\\s*","beginCaptures":{"1":{"name":"punctuation.trait-function-args.start.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.trait-function-args.end.clarity"}},"name":"meta.trait-function-args","patterns":[{"include":"#data-type"}]}]}]}]},"expression":{"patterns":[{"include":"#comment"},{"include":"#keyword"},{"include":"#literal"},{"include":"#let-func"},{"include":"#built-in-func"},{"include":"#get-set-func"}]},"get-set-func":{"begin":"(\\\\()\\\\s*(var-get|var-set|map-get\\\\?|map-set|map-insert|map-delete|get)\\\\s+([a-zA-Z][\\\\w\\\\?\\\\!\\\\-]*)\\\\s*","beginCaptures":{"1":{"name":"punctuation.get-set-func.start.clarity"},"2":{"name":"keyword.control.clarity"},"3":{"name":"variable.other.clarity"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.get-set-func.end.clarity"}},"name":"meta.get-set-func","patterns":[{"include":"#expression"}]},"keyword":{"match":"(?Bte});var _te,Bte,dN=_(()=>{_te=Object.freeze(JSON.parse('{"displayName":"Clojure","name":"clojure","patterns":[{"include":"#comment"},{"include":"#shebang-comment"},{"include":"#quoted-sexp"},{"include":"#sexp"},{"include":"#keyfn"},{"include":"#string"},{"include":"#vector"},{"include":"#set"},{"include":"#map"},{"include":"#regexp"},{"include":"#var"},{"include":"#constants"},{"include":"#dynamic-variables"},{"include":"#metadata"},{"include":"#namespace-symbol"},{"include":"#symbol"}],"repository":{"comment":{"begin":"(?\\\\<\\\\!\\\\?\\\\d]+\\\\*","name":"meta.symbol.dynamic.clojure"},"keyfn":{"patterns":[{"match":"(?<=(\\\\s|\\\\(|\\\\[|\\\\{))(if(-[-\\\\p{Ll}\\\\?]*)?|when(-[-\\\\p{Ll}]*)?|for(-[-\\\\p{Ll}]*)?|cond|do|let(-[-\\\\p{Ll}\\\\?]*)?|binding|loop|recur|fn|throw[\\\\p{Ll}\\\\-]*|try|catch|finally|([\\\\p{Ll}]*case))(?=(\\\\s|\\\\)|\\\\]|\\\\}))","name":"storage.control.clojure"},{"match":"(?<=(\\\\s|\\\\(|\\\\[|\\\\{))(declare-?|(in-)?ns|import|use|require|load|compile|(def[\\\\p{Ll}\\\\-]*))(?=(\\\\s|\\\\)|\\\\]|\\\\}))","name":"keyword.control.clojure"}]},"keyword":{"match":"(?<=(\\\\s|\\\\(|\\\\[|\\\\{)):[\\\\w\\\\#\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\/\\\\!\\\\?\\\\*]+(?=(\\\\s|\\\\)|\\\\]|\\\\}|\\\\,))","name":"constant.keyword.clojure"},"map":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.section.map.begin.clojure"}},"end":"(\\\\}(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\})","endCaptures":{"1":{"name":"punctuation.section.map.end.trailing.clojure"},"2":{"name":"punctuation.section.map.end.clojure"}},"name":"meta.map.clojure","patterns":[{"include":"$self"}]},"metadata":{"patterns":[{"begin":"(\\\\^\\\\{)","beginCaptures":{"1":{"name":"punctuation.section.metadata.map.begin.clojure"}},"end":"(\\\\}(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\})","endCaptures":{"1":{"name":"punctuation.section.metadata.map.end.trailing.clojure"},"2":{"name":"punctuation.section.metadata.map.end.clojure"}},"name":"meta.metadata.map.clojure","patterns":[{"include":"$self"}]},{"begin":"(\\\\^)","end":"(\\\\s)","name":"meta.metadata.simple.clojure","patterns":[{"include":"#keyword"},{"include":"$self"}]}]},"namespace-symbol":{"patterns":[{"captures":{"1":{"name":"meta.symbol.namespace.clojure"}},"match":"([\\\\p{L}\\\\.\\\\-\\\\_\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*][\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*\\\\d]*)/"}]},"quoted-sexp":{"begin":"([\'``]\\\\()","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.clojure"}},"end":"(\\\\))$|(\\\\)(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\))","endCaptures":{"1":{"name":"punctuation.section.expression.end.trailing.clojure"},"2":{"name":"punctuation.section.expression.end.trailing.clojure"},"3":{"name":"punctuation.section.expression.end.clojure"}},"name":"meta.quoted-expression.clojure","patterns":[{"include":"$self"}]},"regexp":{"begin":"#\\"","beginCaptures":{"0":{"name":"punctuation.definition.regexp.begin.clojure"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.regexp.end.clojure"}},"name":"string.regexp.clojure","patterns":[{"include":"#regexp_escaped_char"}]},"regexp_escaped_char":{"match":"\\\\\\\\.","name":"constant.character.escape.clojure"},"set":{"begin":"(\\\\#\\\\{)","beginCaptures":{"1":{"name":"punctuation.section.set.begin.clojure"}},"end":"(\\\\}(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\})","endCaptures":{"1":{"name":"punctuation.section.set.end.trailing.clojure"},"2":{"name":"punctuation.section.set.end.clojure"}},"name":"meta.set.clojure","patterns":[{"include":"$self"}]},"sexp":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.clojure"}},"end":"(\\\\))$|(\\\\)(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\))","endCaptures":{"1":{"name":"punctuation.section.expression.end.trailing.clojure"},"2":{"name":"punctuation.section.expression.end.trailing.clojure"},"3":{"name":"punctuation.section.expression.end.clojure"}},"name":"meta.expression.clojure","patterns":[{"begin":"(?<=\\\\()(ns|declare|def[\\\\w\\\\d._:+=>\\\\<\\\\!\\\\?\\\\*][\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*\\\\d]*)","name":"entity.global.clojure"},{"include":"$self"}]},{"include":"#keyfn"},{"include":"#constants"},{"include":"#vector"},{"include":"#map"},{"include":"#set"},{"include":"#sexp"},{"captures":{"1":{"name":"entity.name.function.clojure"}},"match":"(?<=\\\\()(.+?)(?=\\\\s|\\\\))","patterns":[{"include":"$self"}]},{"include":"$self"}]},"shebang-comment":{"begin":"^(#!)","beginCaptures":{"1":{"name":"punctuation.definition.comment.shebang.clojure"}},"end":"$","name":"comment.line.shebang.clojure"},"string":{"begin":"(?\\\\<\\\\!\\\\?\\\\*][\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*\\\\d]*)","name":"meta.symbol.clojure"}]},"var":{"match":"(?<=(\\\\s|\\\\(|\\\\[|\\\\{)\\\\#)\'[\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\/\\\\!\\\\?\\\\*]+(?=(\\\\s|\\\\)|\\\\]|\\\\}))","name":"meta.var.clojure"},"vector":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.section.vector.begin.clojure"}},"end":"(\\\\](?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\])","endCaptures":{"1":{"name":"punctuation.section.vector.end.trailing.clojure"},"2":{"name":"punctuation.section.vector.end.clojure"}},"name":"meta.vector.clojure","patterns":[{"include":"$self"}]}},"scopeName":"source.clojure","aliases":["clj"]}')),Bte=[_te]});var uN={};x(uN,{default:()=>EB});var xte,EB,QB=_(()=>{xte=Object.freeze(JSON.parse('{"displayName":"CMake","fileTypes":["cmake","CMakeLists.txt"],"name":"cmake","patterns":[{"comment":"Variables That Describe the System","match":"\\\\b(?i:APPLE|BORLAND|(CMAKE_)?(CL_64|COMPILER_2005|HOST_APPLE|HOST_SYSTEM|HOST_SYSTEM_NAME|HOST_SYSTEM_PROCESSOR|HOST_SYSTEM_VERSION|HOST_UNIX|HOST_WIN32|LIBRARY_ARCHITECTURE|LIBRARY_ARCHITECTURE_REGEX|OBJECT_PATH_MAX|SYSTEM|SYSTEM_NAME|SYSTEM_PROCESSOR|SYSTEM_VERSION)|CYGWIN|MSVC|MSVC80|MSVC_IDE|MSVC_VERSION|UNIX|WIN32|XCODE_VERSION|MSVC60|MSVC70|MSVC90|MSVC71)\\\\b","name":"constant.source.cmake"},{"comment":"cmakeOperators","match":"\\\\b(?i:ABSOLUTE|AND|BOOL|CACHE|COMMAND|COMMENT|DEFINED|DOC|EQUAL|EXISTS|EXT|FALSE|GREATER|GREATER_EQUAL|INTERNAL|IN_LIST|IS_ABSOLUTE|IS_DIRECTORY|IS_NEWER_THAN|IS_SYMLINK|LESS|LESS_EQUAL|MATCHES|NAME|NAMES|NAME_WE|NOT|OFF|ON|OR|PATH|PATHS|POLICY|PROGRAM|STREQUAL|STRGREATER|STRGREATER_EQUAL|STRING|STRLESS|STRLESS_EQUAL|TARGET|TEST|TRUE|VERSION_EQUAL|VERSION_GREATER|VERSION_GREATER_EQUAL|VERSION_LESS)\\\\b","name":"keyword.cmake"},{"comment":"Commands","match":"^\\\\s*\\\\b(?i:add_compile_options|add_custom_command|add_custom_target|add_definitions|add_dependencies|add_executable|add_library|add_subdirectory|add_test|aux_source_directory|break|build_command|build_name|cmake_host_system_information|cmake_minimum_required|cmake_policy|configure_file|continue|create_test_sourcelist|ctest_build|ctest_configure|ctest_coverage|ctest_empty_binary_directory|ctest_memcheck|ctest_read_custom_files|ctest_run_script|ctest_sleep|ctest_start|ctest_submit|ctest_test|ctest_update|ctest_upload|define_property|else|elseif|enable_language|enable_testing|endforeach|endfunction|endif|endmacro|endwhile|exec_program|execute_process|export|export_library_dependencies|file|find_file|find_library|find_package|find_path|find_program|fltk_wrap_ui|foreach|function|get_cmake_property|get_directory_property|get_filename_component|get_property|get_source_file_property|get_target_property|get_test_property|if|include|include_directories|include_external_msproject|include_regular_expression|install|install_files|install_programs|install_targets|link_directories|link_libraries|list|load_cache|load_command|macro|make_directory|mark_as_advanced|math|message|option|output_required_files|project|qt_wrap_cpp|qt_wrap_ui|remove|remove_definitions|return|separate_arguments|set|set_directory_properties|set_property|set_source_files_properties|set_target_properties|set_tests_properties|site_name|source_group|string|subdir_depends|subdirs|target_compile_definitions|target_compile_features|target_compile_options|target_include_directories|target_link_libraries|target_sources|try_compile|try_run|unset|use_mangled_mesa|utility_source|variable_requires|variable_watch|while|write_file)\\\\b","name":"keyword.cmake"},{"comment":"Variables That Change Behavior","match":"\\\\b(?i:BUILD_SHARED_LIBS|(CMAKE_)?(ABSOLUTE_DESTINATION_FILES|AUTOMOC_RELAXED_MODE|BACKWARDS_COMPATIBILITY|BUILD_TYPE|COLOR_MAKEFILE|CONFIGURATION_TYPES|DEBUG_TARGET_PROPERTIES|DISABLE_FIND_PACKAGE_\\\\w+|FIND_LIBRARY_PREFIXES|FIND_LIBRARY_SUFFIXES|IGNORE_PATH|INCLUDE_PATH|INSTALL_DEFAULT_COMPONENT_NAME|INSTALL_PREFIX|LIBRARY_PATH|MFC_FLAG|MODULE_PATH|NOT_USING_CONFIG_FLAGS|POLICY_DEFAULT_CMP\\\\w+|PREFIX_PATH|PROGRAM_PATH|SKIP_INSTALL_ALL_DEPENDENCY|SYSTEM_IGNORE_PATH|SYSTEM_INCLUDE_PATH|SYSTEM_LIBRARY_PATH|SYSTEM_PREFIX_PATH|SYSTEM_PROGRAM_PATH|USER_MAKE_RULES_OVERRIDE|WARN_ON_ABSOLUTE_INSTALL_DESTINATION))\\\\b","name":"variable.source.cmake"},{"match":"\\\\$\\\\{\\\\w+\\\\}","name":"storage.source.cmake"},{"match":"\\\\$ENV\\\\{\\\\w+\\\\}","name":"storage.source.cmake"},{"comment":"Variables that Control the Build","match":"\\\\b(?i:(CMAKE_)?(\\\\w+_POSTFIX|ARCHIVE_OUTPUT_DIRECTORY|AUTOMOC|AUTOMOC_MOC_OPTIONS|BUILD_WITH_INSTALL_RPATH|DEBUG_POSTFIX|EXE_LINKER_FLAGS|EXE_LINKER_FLAGS_\\\\w+|Fortran_FORMAT|Fortran_MODULE_DIRECTORY|GNUtoMS|INCLUDE_CURRENT_DIR|INCLUDE_CURRENT_DIR_IN_INTERFACE|INSTALL_NAME_DIR|INSTALL_RPATH|INSTALL_RPATH_USE_LINK_PATH|LIBRARY_OUTPUT_DIRECTORY|LIBRARY_PATH_FLAG|LINK_DEF_FILE_FLAG|LINK_DEPENDS_NO_SHARED|LINK_INTERFACE_LIBRARIES|LINK_LIBRARY_FILE_FLAG|LINK_LIBRARY_FLAG|MACOSX_BUNDLE|NO_BUILTIN_CHRPATH|PDB_OUTPUT_DIRECTORY|POSITION_INDEPENDENT_CODE|RUNTIME_OUTPUT_DIRECTORY|SKIP_BUILD_RPATH|SKIP_INSTALL_RPATH|TRY_COMPILE_CONFIGURATION|USE_RELATIVE_PATHS|WIN32_EXECUTABLE)|EXECUTABLE_OUTPUT_PATH|LIBRARY_OUTPUT_PATH)\\\\b","name":"variable.source.cmake"},{"comment":"Variables that Provide Information","match":"\\\\b(?i:CMAKE_(AR|ARGC|ARGV0|BINARY_DIR|BUILD_TOOL|CACHEFILE_DIR|CACHE_MAJOR_VERSION|CACHE_MINOR_VERSION|CACHE_PATCH_VERSION|CFG_INTDIR|COMMAND|CROSSCOMPILING|CTEST_COMMAND|CURRENT_BINARY_DIR|CURRENT_LIST_DIR|CURRENT_LIST_FILE|CURRENT_LIST_LINE|CURRENT_SOURCE_DIR|DL_LIBS|EDIT_COMMAND|EXECUTABLE_SUFFIX|EXTRA_GENERATOR|EXTRA_SHARED_LIBRARY_SUFFIXES|GENERATOR|HOME_DIRECTORY|IMPORT_LIBRARY_PREFIX|IMPORT_LIBRARY_SUFFIX|LINK_LIBRARY_SUFFIX|MAJOR_VERSION|MAKE_PROGRAM|MINOR_VERSION|PARENT_LIST_FILE|PATCH_VERSION|PROJECT_NAME|RANLIB|ROOT|SCRIPT_MODE_FILE|SHARED_LIBRARY_PREFIX|SHARED_LIBRARY_SUFFIX|SHARED_MODULE_PREFIX|SHARED_MODULE_SUFFIX|SIZEOF_VOID_P|SKIP_RPATH|SOURCE_DIR|STANDARD_LIBRARIES|STATIC_LIBRARY_PREFIX|STATIC_LIBRARY_SUFFIX|TWEAK_VERSION|USING_VC_FREE_TOOLS|VERBOSE_MAKEFILE|VERSION)|PROJECT_BINARY_DIR|PROJECT_NAME|PROJECT_SOURCE_DIR|\\\\w+_BINARY_DIR|\\\\w+__SOURCE_DIR)\\\\b","name":"variable.source.cmake"},{"begin":"#\\\\[(=*)\\\\[","comment":"BracketArgs","end":"\\\\]\\\\1\\\\]","name":"comment.source.cmake","patterns":[{"match":"\\\\\\\\(.|$)","name":"constant.character.escape"}]},{"begin":"\\\\[(=*)\\\\[","comment":"BracketArgs","end":"\\\\]\\\\1\\\\]","name":"argument.source.cmake","patterns":[{"match":"\\\\\\\\(.|$)","name":"constant.character.escape"}]},{"match":"#+.*$","name":"comment.source.cmake"},{"comment":"Properties on Cache Entries","match":"\\\\b(?i:ADVANCED|HELPSTRING|MODIFIED|STRINGS|TYPE|VALUE)\\\\b","name":"entity.source.cmake"},{"comment":"Properties on Source Files","match":"\\\\b(?i:ABSTRACT|COMPILE_DEFINITIONS|COMPILE_DEFINITIONS_|COMPILE_FLAGS|EXTERNAL_OBJECT|Fortran_FORMAT|GENERATED|HEADER_FILE_ONLY|KEEP_EXTENSION|LABELS|LANGUAGE|LOCATION|MACOSX_PACKAGE_LOCATION|OBJECT_DEPENDS|OBJECT_OUTPUTS|SYMBOLIC|WRAP_EXCLUDE)\\\\b","name":"entity.source.cmake"},{"comment":"Properties on Tests","match":"\\\\b(?i:ATTACHED_FILES|ATTACHED_FILES_ON_FAIL|COST|DEPENDS|ENVIRONMENT|FAIL_REGULAR_EXPRESSION|LABELS|MEASUREMENT|PASS_REGULAR_EXPRESSION|PROCESSORS|REQUIRED_FILES|RESOURCE_LOCK|RUN_SERIAL|TIMEOUT|WILL_FAIL|WORKING_DIRECTORY)\\\\b","name":"entity.source.cmake"},{"comment":"Properties on Directories","match":"\\\\b(?i:ADDITIONAL_MAKE_CLEAN_FILES|CACHE_VARIABLES|CLEAN_NO_CUSTOM|COMPILE_DEFINITIONS|COMPILE_DEFINITIONS_\\\\w+|DEFINITIONS|EXCLUDE_FROM_ALL|IMPLICIT_DEPENDS_INCLUDE_TRANSFORM|INCLUDE_DIRECTORIES|INCLUDE_REGULAR_EXPRESSION|INTERPROCEDURAL_OPTIMIZATION|INTERPROCEDURAL_OPTIMIZATION_\\\\w+|LINK_DIRECTORIES|LISTFILE_STACK|MACROS|PARENT_DIRECTORY|RULE_LAUNCH_COMPILE|RULE_LAUNCH_CUSTOM|RULE_LAUNCH_LINK|TEST_INCLUDE_FILE|VARIABLES|VS_GLOBAL_SECTION_POST_\\\\w+|VS_GLOBAL_SECTION_PRE_\\\\w+)\\\\b","name":"entity.source.cmake"},{"comment":"Properties of Global Scope","match":"\\\\b(?i:ALLOW_DUPLICATE_CUSTOM_TARGETS|DEBUG_CONFIGURATIONS|DISABLED_FEATURES|ENABLED_FEATURES|ENABLED_LANGUAGES|FIND_LIBRARY_USE_LIB64_PATHS|FIND_LIBRARY_USE_OPENBSD_VERSIONING|GLOBAL_DEPENDS_DEBUG_MODE|GLOBAL_DEPENDS_NO_CYCLES|IN_TRY_COMPILE|PACKAGES_FOUND|PACKAGES_NOT_FOUND|PREDEFINED_TARGETS_FOLDER|REPORT_UNDEFINED_PROPERTIES|RULE_LAUNCH_COMPILE|RULE_LAUNCH_CUSTOM|RULE_LAUNCH_LINK|RULE_MESSAGES|TARGET_ARCHIVES_MAY_BE_SHARED_LIBS|TARGET_SUPPORTS_SHARED_LIBS|USE_FOLDERS|__CMAKE_DELETE_CACHE_CHANGE_VARS_)\\\\b","name":"entity.source.cmake"},{"comment":"Properties on Targets","match":"\\\\b(?i:\\\\w+_(OUTPUT_NAME|POSTFIX)|ARCHIVE_OUTPUT_(DIRECTORY(_\\\\w+)?|NAME(_\\\\w+)?)|AUTOMOC(_MOC_OPTIONS)?|BUILD_WITH_INSTALL_RPATH|BUNDLE|BUNDLE(_EXTENSION)?|COMPATIBLE_INTERFACE_BOOL|COMPATIBLE_INTERFACE_STRING|COMPILE_(DEFINITIONS(_\\\\w+)?|FLAGS)|DEBUG_POSTFIX|DEFINE_SYMBOL|ENABLE_EXPORTS|EXCLUDE_FROM_ALL|EchoString|FOLDER|FRAMEWORK|Fortran_(FORMAT|MODULE_DIRECTORY)|GENERATOR_FILE_NAME|GNUtoMS|HAS_CXX|IMPLICIT_DEPENDS_INCLUDE_TRANSFORM|IMPORTED|IMPORTED_(CONFIGURATIONS|IMPLIB(_\\\\w+)?|LINK_DEPENDENT_LIBRARIES(_\\\\w+)?|LINK_INTERFACE_LANGUAGES(_\\\\w+)?|LINK_INTERFACE_LIBRARIES(_\\\\w+)?|LINK_INTERFACE_MULTIPLICITY(_\\\\w+)?|LOCATION(_\\\\w+)?|NO_SONAME(_\\\\w+)?|SONAME(_\\\\w+)?)|IMPORT_PREFIX|IMPORT_SUFFIX|INSTALL_NAME_DIR|INSTALL_RPATH|INSTALL_RPATH_USE_LINK_PATH|INTERFACE|INTERFACE_COMPILE_DEFINITIONS|INTERFACE_INCLUDE_DIRECTORIES|INTERPROCEDURAL_OPTIMIZATION|INTERPROCEDURAL_OPTIMIZATION_\\\\w+|LABELS|LIBRARY_OUTPUT_DIRECTORY(_\\\\w+)?|LIBRARY_OUTPUT_NAME(_\\\\w+)?|LINKER_LANGUAGE|LINK_DEPENDS|LINK_FLAGS(_\\\\w+)?|LINK_INTERFACE_LIBRARIES(_\\\\w+)?|LINK_INTERFACE_MULTIPLICITY(_\\\\w+)?|LINK_LIBRARIES|LINK_SEARCH_END_STATIC|LINK_SEARCH_START_STATIC|LOCATION(_\\\\w+)?|MACOSX_BUNDLE|MACOSX_BUNDLE_INFO_PLIST|MACOSX_FRAMEWORK_INFO_PLIST|MAP_IMPORTED_CONFIG_\\\\w+|NO_SONAME|OSX_ARCHITECTURES(_\\\\w+)?|OUTPUT_NAME(_\\\\w+)?|PDB_NAME(_\\\\w+)?|POST_INSTALL_SCRIPT|PREFIX|PRE_INSTALL_SCRIPT|PRIVATE|PRIVATE_HEADER|PROJECT_LABEL|PUBLIC|PUBLIC_HEADER|RESOURCE|RULE_LAUNCH_(COMPILE|CUSTOM|LINK)|RUNTIME_OUTPUT_(DIRECTORY(_\\\\w+)?|NAME(_\\\\w+)?)|SKIP_BUILD_RPATH|SOURCES|SOVERSION|STATIC_LIBRARY_FLAGS(_\\\\w+)?|SUFFIX|TYPE|VERSION|VS_DOTNET_REFERENCES|VS_GLOBAL_(\\\\w+|KEYWORD|PROJECT_TYPES)|VS_KEYWORD|VS_SCC_(AUXPATH|LOCALPATH|PROJECTNAME|PROVIDER)|VS_WINRT_EXTENSIONS|VS_WINRT_REFERENCES|WIN32_EXECUTABLE|XCODE_ATTRIBUTE_\\\\w+)\\\\b","name":"entity.source.cmake"},{"begin":"\\\\\\\\\\"","comment":"Escaped Strings","end":"\\\\\\\\\\"","name":"string.source.cmake","patterns":[{"match":"\\\\\\\\(.|$)","name":"constant.character.escape"}]},{"begin":"\\"","comment":"Normal Strings","end":"\\"","name":"string.source.cmake","patterns":[{"match":"\\\\\\\\(.|$)","name":"constant.character.escape"}]},{"comment":"Derecated keyword","match":"\\\\bBUILD_NAME\\\\b","name":"invalid.deprecated.source.cmake"},{"comment":"Compiler Flags","match":"\\\\b(?i:(CMAKE_)?(CXX_FLAGS|CMAKE_CXX_FLAGS_DEBUG|CMAKE_CXX_FLAGS_MINSIZEREL|CMAKE_CXX_FLAGS_RELEASE|CMAKE_CXX_FLAGS_RELWITHDEBINFO))\\\\b","name":"variable.source.cmake"}],"repository":{},"scopeName":"source.cmake"}')),EB=[xte]});var pN={};x(pN,{default:()=>Ete});var vte,Ete,mN=_(()=>{Ye();Ig();vte=Object.freeze(JSON.parse(`{"displayName":"COBOL","fileTypes":["ccp","scbl","cobol","cbl","cblle","cblsrce","cblcpy","lks","pdv","cpy","copybook","cobcopy","fd","sel","scb","scbl","sqlcblle","cob","dds","def","src","ss","wks","bib","pco"],"name":"cobol","patterns":[{"match":"(^[ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*])([dD]\\\\s.*$)","name":"token.info-token.cobol"},{"captures":{"1":{"name":"constant.numeric.cobol"},"2":{"name":"comment.line.cobol.newpage"}},"match":"(^[ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*])(\\\\/.*$)"},{"captures":{"1":{"name":"constant.numeric.cobol"},"2":{"name":"comment.line.cobol.fixed"}},"match":"(^[ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*][ \\\\*])(\\\\*.*$)"},{"captures":{"1":{"name":"constant.numeric.cobol"},"2":{"name":"comment.line.cobol.newpage"}},"match":"(^[0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s])(\\\\/.*$)"},{"match":"^[0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s]$","name":"constant.numeric.cobol"},{"captures":{"1":{"name":"constant.numeric.cobol"},"2":{"name":"comment.line.cobol.fixed"}},"match":"(^[0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s][0-9\\\\s])(\\\\*.*$)"},{"captures":{"1":{"name":"constant.cobol"},"2":{"name":"comment.line.cobol.fixed"}},"match":"(^[0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ][0-9a-zA-Z\\\\s\\\\$#%\\\\.@\\\\- ])(\\\\*.*$)"},{"captures":{"1":{"name":"constant.numeric.cobol"},"2":{"name":"variable.other.constant"}},"match":"^\\\\s+(78)\\\\s+([0-9a-zA-Z][a-zA-Z\\\\-0-9_]+)"},{"captures":{"1":{"name":"constant.numeric.cobol"},"2":{"name":"variable.other.constant"},"3":{"name":"keyword.identifers.cobol"}},"match":"^\\\\s+([0-9]+)\\\\s+([0-9a-zA-Z][a-zA-Z\\\\-0-9_]+)\\\\s+((?i:constant))"},{"captures":{"1":{"name":"constant.cobol"},"2":{"name":"comment.line.cobol.newpage"}},"match":"(^[0-9a-zA-Z\\\\s\\\\$#%\\\\.@][0-9a-zA-Z\\\\s\\\\$#%\\\\.@][0-9a-zA-Z\\\\s\\\\$#%\\\\.@][0-9a-zA-Z\\\\s\\\\$#%\\\\.@][0-9a-zA-Z\\\\s\\\\$#%\\\\.@][0-9a-zA-Z\\\\s\\\\$#%\\\\.@])(\\\\/.*$)"},{"match":"^\\\\*.*$","name":"comment.line.cobol.fixed"},{"captures":{"1":{"name":"keyword.control.directive.conditional.cobol"},"2":{"name":"entity.name.function.preprocessor.cobol"},"3":{"name":"entity.name.function.cobol"},"4":{"name":"keyword.control.directive.conditional.cobol"}},"match":"((?:^|\\\\s+)(?i:\\\\$set)\\\\s+)((?i:constant)\\\\s+)([0-9a-zA-Z][a-zA-Z\\\\-0-9]+\\\\s*)([a-zA-Z\\\\-0-9]*)"},{"captures":{"1":{"name":"entity.name.function.preprocessor.cobol"},"2":{"name":"storage.modifier.import.cobol"},"3":{"name":"punctuation.begin.bracket.round.cobol"},"4":{"name":"string.quoted.other.cobol"},"5":{"name":"punctuation.end.bracket.round.cobol"}},"match":"((?i:\\\\$\\\\s*set\\\\s+)(ilusing)(\\\\()(.*)(\\\\)))"},{"captures":{"1":{"name":"entity.name.function.preprocessor.cobol"},"2":{"name":"storage.modifier.import.cobol"},"3":{"name":"punctuation.definition.string.begin.cobol"},"4":{"name":"string.quoted.other.cobol"},"5":{"name":"punctuation.definition.string.begin.cobol"}},"match":"((?i:\\\\$\\\\s*set\\\\s+)(ilusing)(\\")(.*)(\\"))"},{"captures":{"1":{"name":"keyword.control.directive.conditional.cobol"},"2":{"name":"entity.name.function.preprocessor.cobol"},"3":{"name":"punctuation.definition.string.begin.cobol"},"4":{"name":"string.quoted.other.cobol"},"5":{"name":"punctuation.definition.string.begin.cobol"}},"match":"((?i:\\\\$set))\\\\s+(\\\\w+)\\\\s*(\\")(\\\\w*)(\\")"},{"captures":{"1":{"name":"keyword.control.directive.conditional.cobol"},"2":{"name":"entity.name.function.preprocessor.cobol"},"3":{"name":"punctuation.begin.bracket.round.cobol"},"4":{"name":"string.quoted.other.cobol"},"5":{"name":"punctuation.end.bracket.round.cobol"}},"match":"((?i:\\\\$set))\\\\s+(\\\\w+)\\\\s*(\\\\()(.*)(\\\\))"},{"captures":{"0":{"name":"keyword.control.directive.conditional.cobol"},"1":{"name":"invalid.illegal.directive"},"2":{"name":"comment.line.set.cobol"}},"match":"(?:^|\\\\s+)(?i:\\\\$\\\\s*set\\\\s)((?i:01SHUFFLE|64KPARA|64KSECT|AUXOPT|CHIP|DATALIT|EANIM|EXPANDDATA|FIXING|FLAG-CHIP|MASM|MODEL|OPTSIZE|OPTSPEED|PARAS|PROTMODE|REGPARM|SEGCROSS|SEGSIZE|SIGNCOMPARE|SMALLDD|TABLESEGCROSS|TRICKLECHECK|\\\\s)+).*$"},{"captures":{"1":{"name":"keyword.control.directive.cobol"},"2":{"name":"entity.other.attribute-name.preprocessor.cobol"}},"match":"(\\\\$region|\\\\$end-region)(.*$)"},{"begin":"\\\\$(?i:doc)(.*$)","end":"\\\\$(?i:end-doc)(.*$)","name":"invalid.illegal.iscobol"},{"match":">>\\\\s*(?i:turn|page|listing|leap-seconds|d)\\\\s+.*$","name":"invalid.illegal.meta.preprocessor.cobolit"},{"match":"(?i:substitute-case|substitute)\\\\s+","name":"invalid.illegal.functions.cobolit"},{"captures":{"1":{"name":"invalid.illegal.keyword.control.directive.conditional.cobol"},"2":{"name":"invalid.illegal.entity.name.function.preprocessor.cobol"},"3":{"name":"invalid.illegal.entity.name.function.preprocessor.cobol"}},"match":"((((>>|\\\\$)[\\\\s]*)(?i:elif))(.*$))"},{"captures":{"1":{"name":"keyword.control.directive.conditional.cobol"},"2":{"name":"entity.name.function.preprocessor.cobol"},"3":{"name":"entity.name.function.preprocessor.cobol"}},"match":"((((>>|\\\\$)[\\\\s]*)(?i:if|else|elif|end-if|end-evaluate|end|define|evaluate|when|display|call-convention|set))(.*$))"},{"captures":{"1":{"name":"comment.line.scantoken.cobol"},"2":{"name":"keyword.cobol"},"3":{"name":"string.cobol"}},"match":"(\\\\*>)\\\\s+(@[0-9a-zA-Z][a-zA-Z\\\\-0-9]+)\\\\s+(.*$)"},{"match":"(\\\\*>.*$)","name":"comment.line.modern"},{"match":"(>>.*)$","name":"strong comment.line.set.acucobol"},{"match":"([nNuU][xX]|[hHxX])'\\\\h*'","name":"constant.numeric.integer.hexadecimal.cobol"},{"match":"([nNuU][xX]|[hHxX])'.*'","name":"invalid.illegal.hexadecimal.cobol"},{"match":"([nNuU][xX]|[hHxX])\\"\\\\h*\\"","name":"constant.numeric.integer.hexadecimal.cobol"},{"match":"([nNuU][xX]|[hHxX])\\".*\\"","name":"invalid.illegal.hexadecimal.cobol"},{"match":"[bB]\\"[0-1]\\"","name":"constant.numeric.integer.boolean.cobol"},{"match":"[bB]'[0-1]'","name":"constant.numeric.integer.boolean.cobol"},{"match":"[oO]\\"[0-7]*\\"","name":"constant.numeric.integer.octal.cobol"},{"match":"[oO]\\".*\\"","name":"invalid.illegal.octal.cobol"},{"match":"(#)([0-9a-zA-Z][a-zA-Z\\\\-0-9]+)","name":"meta.symbol.forced.cobol"},{"begin":"((?.*$)","name":"comment.line.modern"},{"match":"(\\\\:([0-9a-zA-Z\\\\-_])*)","name":"variable.cobol"},{"include":"source.openesql"}]},{"begin":"(?i:exec\\\\s+cics)","contentName":"meta.embedded.block.cics","end":"(?i:end\\\\-exec)","name":"keyword.verb.cobol","patterns":[{"match":"(\\\\()","name":"meta.symbol.cobol"},{"include":"#cics-keywords"},{"include":"#string-double-quoted-constant"},{"include":"#string-quoted-constant"},{"include":"#number-complex-constant"},{"include":"#number-simple-constant"},{"match":"([a-zA-Z-0-9_]*[a-zA-Z0-9]|([#]?[0-9a-zA-Z]+[a-zA-Z-0-9_]*[a-zA-Z0-9]))","name":"variable.cobol"}]},{"begin":"(?i:exec\\\\s+dli)","contentName":"meta.embedded.block.dli","end":"(?i:end\\\\-exec)","name":"keyword.verb.cobol","patterns":[{"match":"(\\\\()","name":"meta.symbol.cobol"},{"include":"#dli-keywords"},{"include":"#dli-options"},{"include":"#string-double-quoted-constant"},{"include":"#string-quoted-constant"},{"include":"#number-complex-constant"},{"include":"#number-simple-constant"},{"match":"([a-zA-Z-0-9_]*[a-zA-Z0-9]|([#]?[0-9a-zA-Z]+[a-zA-Z-0-9_]*[a-zA-Z0-9]))","name":"variable.cobol"}]},{"begin":"(?i:exec\\\\s+sqlims)","contentName":"meta.embedded.block.openesql","end":"(?i:end\\\\-exec)","name":"keyword.verb.cobol","patterns":[{"match":"(\\\\*>.*$)","name":"comment.line.modern"},{"match":"(\\\\:([a-zA-Z\\\\-])*)","name":"variable.cobol"},{"include":"source.openesql"}]},{"begin":"(?i:exec\\\\s+ado)","contentName":"meta.embedded.block.openesql","end":"(?i:end\\\\-exec)","name":"keyword.verb.cobol","patterns":[{"match":"(--.*$)","name":"comment.line.sql"},{"match":"(\\\\*>.*$)","name":"comment.line.modern"},{"match":"(\\\\:([a-zA-Z\\\\-])*)","name":"variable.cobol"},{"include":"source.openesql"}]},{"begin":"(?i:exec\\\\s+html)","contentName":"meta.embedded.block.html","end":"(?i:end\\\\-exec)","name":"keyword.verb.cobol","patterns":[{"include":"text.html.basic"}]},{"begin":"(?i:exec\\\\s+java)","contentName":"meta.embedded.block.java","end":"(?i:end\\\\-exec)","name":"keyword.verb.cobol","patterns":[{"include":"source.java"}]},{"captures":{"1":{"name":"punctuation.definition.string.begin.cobol"},"2":{"name":"support.function.cobol"},"3":{"name":"punctuation.definition.string.end.cobol"}},"match":"(\\")(CBL_.*)(\\")"},{"captures":{"1":{"name":"punctuation.definition.string.begin.cobol"},"2":{"name":"support.function.cobol"},"3":{"name":"punctuation.definition.string.end.cobol"}},"match":"(\\")(PC_.*)(\\")"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.cobol"}},"end":"(\\"|$)","endCaptures":{"0":{"name":"punctuation.definition.string.end.cobol"}},"name":"string.quoted.double.cobol"},{"captures":{"1":{"name":"punctuation.definition.string.begin.cobol"},"2":{"name":"support.function.cobol"},"3":{"name":"punctuation.definition.string.end.cobol"}},"match":"(\\\\')(CBL_.*)(\\\\')"},{"captures":{"1":{"name":"punctuation.definition.string.begin.cobol"},"2":{"name":"support.function.cobol"},"3":{"name":"punctuation.definition.string.end.cobol"}},"match":"(\\\\')(PC_.*)(\\\\')"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.cobol"}},"end":"('|$)","endCaptures":{"0":{"name":"punctuation.definition.string.end.cobol"}},"name":"string.quoted.single.cobol"},{"begin":"(?|<=|>=|<>|\\\\+|\\\\-|\\\\*|\\\\/|(?Ite});var Qte,Ite,fN=_(()=>{Qte=Object.freeze(JSON.parse('{"displayName":"CODEOWNERS","name":"codeowners","patterns":[{"include":"#comment"},{"include":"#pattern"},{"include":"#owner"}],"repository":{"comment":{"patterns":[{"begin":"^\\\\s*#","captures":{"0":{"name":"punctuation.definition.comment.codeowners"}},"end":"$","name":"comment.line.codeowners"}]},"owner":{"match":"\\\\S*@\\\\S+","name":"storage.type.function.codeowners"},"pattern":{"match":"^\\\\s*(\\\\S+)","name":"variable.other.codeowners"}},"scopeName":"text.codeowners"}')),Ite=[Qte]});var bN={};x(bN,{default:()=>Fte});var Dte,Fte,hN=_(()=>{Dte=Object.freeze(JSON.parse('{"displayName":"CodeQL","fileTypes":["ql","qll"],"name":"codeql","patterns":[{"include":"#module-member"}],"repository":{"abstract":{"match":"\\\\b(?:abstract)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.abstract.ql"},"additional":{"match":"\\\\b(?:additional)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.additional.ql"},"and":{"match":"\\\\b(?:and)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.and.ql"},"annotation":{"patterns":[{"include":"#bindingset-annotation"},{"include":"#language-annotation"},{"include":"#pragma-annotation"},{"include":"#annotation-keyword"}]},"annotation-keyword":{"patterns":[{"include":"#abstract"},{"include":"#additional"},{"include":"#bindingset"},{"include":"#cached"},{"include":"#default"},{"include":"#deprecated"},{"include":"#external"},{"include":"#final"},{"include":"#language"},{"include":"#library"},{"include":"#override"},{"include":"#pragma"},{"include":"#private"},{"include":"#query"},{"include":"#signature"},{"include":"#transient"}]},"any":{"match":"\\\\b(?:any)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.quantifier.any.ql"},"arithmetic-operator":{"match":"\\\\+|-|\\\\*|/|%","name":"keyword.operator.arithmetic.ql"},"as":{"match":"\\\\b(?:as)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.as.ql"},"asc":{"match":"\\\\b(?:asc)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.order.asc.ql"},"at-lower-id":{"match":"@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))"},"avg":{"match":"\\\\b(?:avg)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.aggregate.avg.ql"},"bindingset":{"match":"\\\\b(?:bindingset)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.bindingset.ql"},"bindingset-annotation":{"begin":"((?:\\\\b(?:bindingset)(?:(?!(?:[0-9A-Za-z_])))))","beginCaptures":{"1":{"patterns":[{"include":"#bindingset"}]}},"end":"(?!(?:\\\\s|$|(?://|/\\\\*))|\\\\[)|(?<=\\\\])","name":"meta.block.bindingset-annotation.ql","patterns":[{"include":"#bindingset-annotation-body"},{"include":"#non-context-sensitive"}]},"bindingset-annotation-body":{"begin":"((?:\\\\[))","beginCaptures":{"1":{"patterns":[{"include":"#open-bracket"}]}},"end":"((?:\\\\]))","endCaptures":{"1":{"patterns":[{"include":"#close-bracket"}]}},"name":"meta.block.bindingset-annotation-body.ql","patterns":[{"include":"#non-context-sensitive"},{"match":"(?:\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"variable.parameter.ql"}]},"boolean":{"match":"\\\\b(?:boolean)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.type.boolean.ql"},"by":{"match":"\\\\b(?:by)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.order.by.ql"},"cached":{"match":"\\\\b(?:cached)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.cached.ql"},"class":{"match":"\\\\b(?:class)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.class.ql"},"class-body":{"begin":"((?:\\\\{))","beginCaptures":{"1":{"patterns":[{"include":"#open-brace"}]}},"end":"((?:\\\\}))","endCaptures":{"1":{"patterns":[{"include":"#close-brace"}]}},"name":"meta.block.class-body.ql","patterns":[{"include":"#class-member"}]},"class-declaration":{"begin":"((?:\\\\b(?:class)(?:(?!(?:[0-9A-Za-z_])))))","beginCaptures":{"1":{"patterns":[{"include":"#class"}]}},"end":"(?<=\\\\}|;)","name":"meta.block.class-declaration.ql","patterns":[{"include":"#class-body"},{"include":"#extends-clause"},{"include":"#non-context-sensitive"},{"match":"(?:\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"entity.name.type.class.ql"}]},"class-member":{"patterns":[{"include":"#predicate-or-field-declaration"},{"include":"#annotation"},{"include":"#non-context-sensitive"}]},"close-angle":{"match":">","name":"punctuation.anglebracket.close.ql"},"close-brace":{"match":"\\\\}","name":"punctuation.curlybrace.close.ql"},"close-bracket":{"match":"\\\\]","name":"punctuation.squarebracket.close.ql"},"close-paren":{"match":"\\\\)","name":"punctuation.parenthesis.close.ql"},"comma":{"match":",","name":"punctuation.separator.comma.ql"},"comment":{"patterns":[{"begin":"/\\\\*\\\\*","end":"\\\\*/","name":"comment.block.documentation.ql","patterns":[{"begin":"(?<=/\\\\*\\\\*)([^*]|\\\\*(?!/))*$","patterns":[{"match":"\\\\G\\\\s*(@\\\\S+)","name":"keyword.tag.ql"}],"while":"(^|\\\\G)\\\\s*([^*]|\\\\*(?!/))(?=([^*]|[*](?!/))*$)"}]},{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.ql"},{"match":"//.*$","name":"comment.line.double-slash.ql"}]},"comment-start":{"match":"//|/\\\\*"},"comparison-operator":{"match":"=|\\\\!\\\\=","name":"keyword.operator.comparison.ql"},"concat":{"match":"\\\\b(?:concat)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.aggregate.concat.ql"},"count":{"match":"\\\\b(?:count)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.aggregate.count.ql"},"date":{"match":"\\\\b(?:date)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.type.date.ql"},"default":{"match":"\\\\b(?:default)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.default.ql"},"deprecated":{"match":"\\\\b(?:deprecated)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.deprecated.ql"},"desc":{"match":"\\\\b(?:desc)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.order.desc.ql"},"dont-care":{"match":"\\\\b(?:_)(?:(?!(?:[0-9A-Za-z_])))","name":"variable.language.dont-care.ql"},"dot":{"match":"\\\\.","name":"punctuation.accessor.ql"},"dotdot":{"match":"\\\\.\\\\.","name":"punctuation.operator.range.ql"},"else":{"match":"\\\\b(?:else)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.else.ql"},"end-of-as-clause":{"match":"(?:(?<=(?:[0-9A-Za-z_]))(?!(?:[0-9A-Za-z_]))(?)|[A-Za-z0-9_])(?!\\\\s*(\\\\.|\\\\:\\\\:|\\\\,|(?:<)))","name":"meta.block.import-directive.ql","patterns":[{"include":"#instantiation-args"},{"include":"#non-context-sensitive"},{"match":"(?:\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"entity.name.type.namespace.ql"}]},"in":{"match":"\\\\b(?:in)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.in.ql"},"instanceof":{"match":"\\\\b(?:instanceof)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.instanceof.ql"},"instantiation-args":{"begin":"((?:<))","beginCaptures":{"1":{"patterns":[{"include":"#open-angle"}]}},"end":"((?:>))","endCaptures":{"1":{"patterns":[{"include":"#close-angle"}]}},"name":"meta.type.parameters.ql","patterns":[{"include":"#instantiation-args"},{"include":"#non-context-sensitive"},{"match":"(?:\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"entity.name.type.namespace.ql"}]},"int":{"match":"\\\\b(?:int)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.type.int.ql"},"int-literal":{"match":"-?[0-9]+(?![0-9])","name":"constant.numeric.decimal.ql"},"keyword":{"patterns":[{"include":"#dont-care"},{"include":"#and"},{"include":"#any"},{"include":"#as"},{"include":"#asc"},{"include":"#avg"},{"include":"#boolean"},{"include":"#by"},{"include":"#class"},{"include":"#concat"},{"include":"#count"},{"include":"#date"},{"include":"#desc"},{"include":"#else"},{"include":"#exists"},{"include":"#extends"},{"include":"#false"},{"include":"#float"},{"include":"#forall"},{"include":"#forex"},{"include":"#from"},{"include":"#if"},{"include":"#implies"},{"include":"#import"},{"include":"#in"},{"include":"#instanceof"},{"include":"#int"},{"include":"#max"},{"include":"#min"},{"include":"#module"},{"include":"#newtype"},{"include":"#none"},{"include":"#not"},{"include":"#or"},{"include":"#order"},{"include":"#predicate"},{"include":"#rank"},{"include":"#result"},{"include":"#select"},{"include":"#strictconcat"},{"include":"#strictcount"},{"include":"#strictsum"},{"include":"#string"},{"include":"#sum"},{"include":"#super"},{"include":"#then"},{"include":"#this"},{"include":"#true"},{"include":"#unique"},{"include":"#where"}]},"language":{"match":"\\\\b(?:language)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.language.ql"},"language-annotation":{"begin":"((?:\\\\b(?:language)(?:(?!(?:[0-9A-Za-z_])))))","beginCaptures":{"1":{"patterns":[{"include":"#language"}]}},"end":"(?!(?:\\\\s|$|(?://|/\\\\*))|\\\\[)|(?<=\\\\])","name":"meta.block.language-annotation.ql","patterns":[{"include":"#language-annotation-body"},{"include":"#non-context-sensitive"}]},"language-annotation-body":{"begin":"((?:\\\\[))","beginCaptures":{"1":{"patterns":[{"include":"#open-bracket"}]}},"end":"((?:\\\\]))","endCaptures":{"1":{"patterns":[{"include":"#close-bracket"}]}},"name":"meta.block.language-annotation-body.ql","patterns":[{"include":"#non-context-sensitive"},{"match":"\\\\b(?:monotonicAggregates)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.ql"}]},"library":{"match":"\\\\b(?:library)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.library.ql"},"literal":{"patterns":[{"include":"#float-literal"},{"include":"#int-literal"},{"include":"#string-literal"}]},"lower-id":{"match":"\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))"},"max":{"match":"\\\\b(?:max)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.aggregate.max.ql"},"min":{"match":"\\\\b(?:min)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.aggregate.min.ql"},"module":{"match":"\\\\b(?:module)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.module.ql"},"module-body":{"begin":"((?:\\\\{))","beginCaptures":{"1":{"patterns":[{"include":"#open-brace"}]}},"end":"((?:\\\\}))","endCaptures":{"1":{"patterns":[{"include":"#close-brace"}]}},"name":"meta.block.module-body.ql","patterns":[{"include":"#module-member"}]},"module-declaration":{"begin":"((?:\\\\b(?:module)(?:(?!(?:[0-9A-Za-z_])))))","beginCaptures":{"1":{"patterns":[{"include":"#module"}]}},"end":"(?<=\\\\}|;)","name":"meta.block.module-declaration.ql","patterns":[{"include":"#module-body"},{"include":"#implements-clause"},{"include":"#non-context-sensitive"},{"match":"(?:\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"entity.name.type.namespace.ql"}]},"module-member":{"patterns":[{"include":"#import-directive"},{"include":"#import-as-clause"},{"include":"#module-declaration"},{"include":"#newtype-declaration"},{"include":"#newtype-branch-name-with-prefix"},{"include":"#predicate-parameter-list"},{"include":"#predicate-body"},{"include":"#class-declaration"},{"include":"#select-clause"},{"include":"#predicate-or-field-declaration"},{"include":"#non-context-sensitive"},{"include":"#annotation"}]},"module-qualifier":{"match":"(?:\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))(?=\\\\s*\\\\:\\\\:)","name":"entity.name.type.namespace.ql"},"newtype":{"match":"\\\\b(?:newtype)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.newtype.ql"},"newtype-branch-name-with-prefix":{"begin":"\\\\=|(?:\\\\b(?:or)(?:(?!(?:[0-9A-Za-z_]))))","beginCaptures":{"0":{"patterns":[{"include":"#or"},{"include":"#comparison-operator"}]}},"end":"(?:\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","endCaptures":{"0":{"name":"entity.name.type.ql"}},"name":"meta.block.newtype-branch-name-with-prefix.ql","patterns":[{"include":"#non-context-sensitive"}]},"newtype-declaration":{"begin":"((?:\\\\b(?:newtype)(?:(?!(?:[0-9A-Za-z_])))))","beginCaptures":{"1":{"patterns":[{"include":"#newtype"}]}},"end":"(?:\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","endCaptures":{"0":{"name":"entity.name.type.ql"}},"name":"meta.block.newtype-declaration.ql","patterns":[{"include":"#non-context-sensitive"}]},"non-context-sensitive":{"patterns":[{"include":"#comment"},{"include":"#literal"},{"include":"#operator-or-punctuation"},{"include":"#keyword"}]},"none":{"match":"\\\\b(?:none)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.quantifier.none.ql"},"not":{"match":"\\\\b(?:not)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.not.ql"},"open-angle":{"match":"<","name":"punctuation.anglebracket.open.ql"},"open-brace":{"match":"\\\\{","name":"punctuation.curlybrace.open.ql"},"open-bracket":{"match":"\\\\[","name":"punctuation.squarebracket.open.ql"},"open-paren":{"match":"\\\\(","name":"punctuation.parenthesis.open.ql"},"operator-or-punctuation":{"patterns":[{"include":"#relational-operator"},{"include":"#comparison-operator"},{"include":"#arithmetic-operator"},{"include":"#comma"},{"include":"#semicolon"},{"include":"#dot"},{"include":"#dotdot"},{"include":"#pipe"},{"include":"#open-paren"},{"include":"#close-paren"},{"include":"#open-brace"},{"include":"#close-brace"},{"include":"#open-bracket"},{"include":"#close-bracket"},{"include":"#open-angle"},{"include":"#close-angle"}]},"or":{"match":"\\\\b(?:or)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.or.ql"},"order":{"match":"\\\\b(?:order)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.order.order.ql"},"override":{"match":"\\\\b(?:override)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.override.ql"},"pipe":{"match":"\\\\|","name":"punctuation.separator.pipe.ql"},"pragma":{"match":"\\\\b(?:pragma)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.pragma.ql"},"pragma-annotation":{"begin":"((?:\\\\b(?:pragma)(?:(?!(?:[0-9A-Za-z_])))))","beginCaptures":{"1":{"patterns":[{"include":"#pragma"}]}},"end":"(?!(?:\\\\s|$|(?://|/\\\\*))|\\\\[)|(?<=\\\\])","name":"meta.block.pragma-annotation.ql","patterns":[{"include":"#pragma-annotation-body"},{"include":"#non-context-sensitive"}]},"pragma-annotation-body":{"begin":"((?:\\\\[))","beginCaptures":{"1":{"patterns":[{"include":"#open-bracket"}]}},"end":"((?:\\\\]))","endCaptures":{"1":{"patterns":[{"include":"#close-bracket"}]}},"name":"meta.block.pragma-annotation-body.ql","patterns":[{"match":"\\\\b(?:inline|noinline|nomagic|noopt)\\\\b","name":"storage.modifier.ql"}]},"predicate":{"match":"\\\\b(?:predicate)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.predicate.ql"},"predicate-body":{"begin":"((?:\\\\{))","beginCaptures":{"1":{"patterns":[{"include":"#open-brace"}]}},"end":"((?:\\\\}))","endCaptures":{"1":{"patterns":[{"include":"#close-brace"}]}},"name":"meta.block.predicate-body.ql","patterns":[{"include":"#predicate-body-contents"}]},"predicate-body-contents":{"patterns":[{"include":"#expr-as-clause"},{"include":"#non-context-sensitive"},{"include":"#module-qualifier"},{"match":"(?:\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\\s*(?:\\\\*|\\\\+)?\\\\s*(?=\\\\()","name":"entity.name.function.ql"},{"match":"(?:\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"variable.other.ql"},{"match":"(?:\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))|(?:@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"entity.name.type.ql"}]},"predicate-or-field-declaration":{"begin":"(?:(?=(?:\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))))(?!(?:(?:(?:\\\\b(?:_)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:and)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:any)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:as)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:asc)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:avg)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:boolean)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:by)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:class)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:concat)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:count)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:date)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:desc)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:else)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:exists)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:extends)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:false)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:float)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:forall)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:forex)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:from)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:if)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:implies)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:import)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:in)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:instanceof)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:int)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:max)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:min)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:module)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:newtype)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:none)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:not)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:or)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:order)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:predicate)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:rank)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:result)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:strictconcat)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:strictcount)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:strictsum)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:string)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:sum)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:super)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:then)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:this)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:true)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:unique)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_]))))))|(?:(?:(?:\\\\b(?:abstract)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:additional)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:bindingset)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:cached)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:default)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:deprecated)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:external)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:final)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:language)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:library)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:override)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:pragma)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:private)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:query)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:signature)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:transient)(?:(?!(?:[0-9A-Za-z_]))))))))|(?=(?:(?:(?:\\\\b(?:boolean)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:date)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:float)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:int)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:predicate)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:string)(?:(?!(?:[0-9A-Za-z_])))))))|(?=(?:@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))))","end":"(?<=\\\\}|;)","name":"meta.block.predicate-or-field-declaration.ql","patterns":[{"include":"#predicate-parameter-list"},{"include":"#predicate-body"},{"include":"#non-context-sensitive"},{"include":"#module-qualifier"},{"match":"(?:\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))(?=\\\\s*;)","name":"variable.field.ql"},{"match":"(?:\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"entity.name.function.ql"},{"match":"(?:\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))|(?:@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"entity.name.type.ql"}]},"predicate-parameter-list":{"begin":"((?:\\\\())","beginCaptures":{"1":{"patterns":[{"include":"#open-paren"}]}},"end":"((?:\\\\)))","endCaptures":{"1":{"patterns":[{"include":"#close-paren"}]}},"name":"meta.block.predicate-parameter-list.ql","patterns":[{"include":"#non-context-sensitive"},{"match":"(?:\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))(?=\\\\s*(?:,|\\\\)))","name":"variable.parameter.ql"},{"include":"#module-qualifier"},{"match":"(?:\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))|(?:@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"entity.name.type.ql"},{"match":"(?:\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"variable.parameter.ql"}]},"predicate-start-keyword":{"patterns":[{"include":"#boolean"},{"include":"#date"},{"include":"#float"},{"include":"#int"},{"include":"#predicate"},{"include":"#string"}]},"private":{"match":"\\\\b(?:private)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.private.ql"},"query":{"match":"\\\\b(?:query)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.query.ql"},"rank":{"match":"\\\\b(?:rank)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.aggregate.rank.ql"},"relational-operator":{"match":"<=|<|>=|>","name":"keyword.operator.relational.ql"},"result":{"match":"\\\\b(?:result)(?:(?!(?:[0-9A-Za-z_])))","name":"variable.language.result.ql"},"select":{"match":"\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.query.select.ql"},"select-as-clause":{"begin":"((?:\\\\b(?:as)(?:(?!(?:[0-9A-Za-z_])))))","beginCaptures":{"1":{"patterns":[{"include":"#as"}]}},"end":"(?<=(?:[0-9A-Za-z_])(?:(?!(?:[0-9A-Za-z_]))))","match":"meta.block.select-as-clause.ql","patterns":[{"include":"#non-context-sensitive"},{"match":"(?:\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))","name":"variable.other.ql"}]},"select-clause":{"begin":"(?=(?:\\\\b(?:from)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_])))))","end":"(?!(?:\\\\b(?:from)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_])))))","name":"meta.block.select-clause.ql","patterns":[{"include":"#from-section"},{"include":"#where-section"},{"include":"#select-section"}]},"select-section":{"begin":"((?:\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_])))))","beginCaptures":{"1":{"patterns":[{"include":"#select"}]}},"end":"(?=\\\\n)","name":"meta.block.select-section.ql","patterns":[{"include":"#predicate-body-contents"},{"include":"#select-as-clause"}]},"semicolon":{"match":";","name":"punctuation.separator.statement.ql"},"signature":{"match":"\\\\b(?:signature)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.signature.ql"},"simple-id":{"match":"\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))"},"strictconcat":{"match":"\\\\b(?:strictconcat)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.aggregate.strictconcat.ql"},"strictcount":{"match":"\\\\b(?:strictcount)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.aggregate.strictcount.ql"},"strictsum":{"match":"\\\\b(?:strictsum)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.aggregate.strictsum.ql"},"string":{"match":"\\\\b(?:string)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.type.string.ql"},"string-escape":{"match":"\\\\\\\\[\\"\\\\\\\\nrt]","name":"constant.character.escape.ql"},"string-literal":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ql"}},"end":"(\\")|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ql"},"2":{"name":"invalid.illegal.newline.ql"}},"name":"string.quoted.double.ql","patterns":[{"include":"#string-escape"}]},"sum":{"match":"\\\\b(?:sum)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.aggregate.sum.ql"},"super":{"match":"\\\\b(?:super)(?:(?!(?:[0-9A-Za-z_])))","name":"variable.language.super.ql"},"then":{"match":"\\\\b(?:then)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.other.then.ql"},"this":{"match":"\\\\b(?:this)(?:(?!(?:[0-9A-Za-z_])))","name":"variable.language.this.ql"},"transient":{"match":"\\\\b(?:transient)(?:(?!(?:[0-9A-Za-z_])))","name":"storage.modifier.transient.ql"},"true":{"match":"\\\\b(?:true)(?:(?!(?:[0-9A-Za-z_])))","name":"constant.language.boolean.true.ql"},"unique":{"match":"\\\\b(?:unique)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.aggregate.unique.ql"},"upper-id":{"match":"\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))"},"where":{"match":"\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_])))","name":"keyword.query.where.ql"},"where-section":{"begin":"((?:\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_])))))","beginCaptures":{"1":{"patterns":[{"include":"#where"}]}},"end":"(?=(?:\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_])))))","name":"meta.block.where-section.ql","patterns":[{"include":"#predicate-body-contents"}]},"whitespace-or-comment-start":{"match":"\\\\s|$|(?://|/\\\\*)"}},"scopeName":"source.ql","aliases":["ql"]}')),Fte=[Dte]});var yN={};x(yN,{default:()=>Ote});var Ste,Ote,wN=_(()=>{Qe();Ste=Object.freeze(JSON.parse(`{"displayName":"CoffeeScript","name":"coffee","patterns":[{"include":"#jsx"},{"captures":{"1":{"name":"keyword.operator.new.coffee"},"2":{"name":"storage.type.class.coffee"},"3":{"name":"entity.name.type.instance.coffee"},"4":{"name":"entity.name.type.instance.coffee"}},"match":"(new)\\\\s+(?:(?:(class)\\\\s+(\\\\w+(?:\\\\.\\\\w*)*)?)|(\\\\w+(?:\\\\.\\\\w*)*))","name":"meta.class.instance.constructor.coffee"},{"begin":"'''","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.coffee"}},"end":"'''","endCaptures":{"0":{"name":"punctuation.definition.string.end.coffee"}},"name":"string.quoted.single.heredoc.coffee","patterns":[{"captures":{"1":{"name":"punctuation.definition.escape.backslash.coffee"}},"match":"(\\\\\\\\).","name":"constant.character.escape.backslash.coffee"}]},{"begin":"\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.coffee"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.coffee"}},"name":"string.quoted.double.heredoc.coffee","patterns":[{"captures":{"1":{"name":"punctuation.definition.escape.backslash.coffee"}},"match":"(\\\\\\\\).","name":"constant.character.escape.backslash.coffee"},{"include":"#interpolated_coffee"}]},{"captures":{"1":{"name":"punctuation.definition.string.begin.coffee"},"2":{"name":"source.js.embedded.coffee","patterns":[{"include":"source.js"}]},"3":{"name":"punctuation.definition.string.end.coffee"}},"match":"(\`)(.*)(\`)","name":"string.quoted.script.coffee"},{"begin":"(?)","beginCaptures":{"1":{"name":"entity.name.function.coffee"},"2":{"name":"variable.other.readwrite.instance.coffee"},"3":{"name":"keyword.operator.assignment.coffee"}},"end":"[=-]>","endCaptures":{"0":{"name":"storage.type.function.coffee"}},"name":"meta.function.coffee","patterns":[{"include":"#function_params"}]},{"begin":"(?<=\\\\s|^)(?:((')([^']*?)('))|((\\")([^\\"]*?)(\\")))\\\\s*([:=])\\\\s*(?=(\\\\([^\\\\(\\\\)]*\\\\)\\\\s*)?[=-]>)","beginCaptures":{"1":{"name":"string.quoted.single.coffee"},"2":{"name":"punctuation.definition.string.begin.coffee"},"3":{"name":"entity.name.function.coffee"},"4":{"name":"punctuation.definition.string.end.coffee"},"5":{"name":"string.quoted.double.coffee"},"6":{"name":"punctuation.definition.string.begin.coffee"},"7":{"name":"entity.name.function.coffee"},"8":{"name":"punctuation.definition.string.end.coffee"},"9":{"name":"keyword.operator.assignment.coffee"}},"end":"[=-]>","endCaptures":{"0":{"name":"storage.type.function.coffee"}},"name":"meta.function.coffee","patterns":[{"include":"#function_params"}]},{"begin":"(?=(\\\\([^\\\\(\\\\)]*\\\\)\\\\s*)?[=-]>)","end":"[=-]>","endCaptures":{"0":{"name":"storage.type.function.coffee"}},"name":"meta.function.inline.coffee","patterns":[{"include":"#function_params"}]},{"begin":"(?<=\\\\s|^)({)(?=[^'\\"#]+?}[\\\\s\\\\]}]*=)","beginCaptures":{"1":{"name":"punctuation.definition.destructuring.begin.bracket.curly.coffee"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.destructuring.end.bracket.curly.coffee"}},"name":"meta.variable.assignment.destructured.object.coffee","patterns":[{"include":"$self"},{"match":"[a-zA-Z$_]\\\\w*","name":"variable.assignment.coffee"}]},{"begin":"(?<=\\\\s|^)(\\\\[)(?=[^'\\"#]+?\\\\][\\\\s\\\\]}]*=)","beginCaptures":{"1":{"name":"punctuation.definition.destructuring.begin.bracket.square.coffee"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.destructuring.end.bracket.square.coffee"}},"name":"meta.variable.assignment.destructured.array.coffee","patterns":[{"include":"$self"},{"match":"[a-zA-Z$_]\\\\w*","name":"variable.assignment.coffee"}]},{"match":"\\\\b(?|\\\\-\\\\d|\\\\[|{|\\"|'))","end":"(?=\\\\s*(?|\\\\-\\\\d|\\\\[|{|\\"|')))","beginCaptures":{"1":{"name":"variable.other.readwrite.instance.coffee"},"2":{"patterns":[{"include":"#function_names"}]}},"end":"(?=\\\\s*(?)","name":"meta.tag.coffee"}]},"jsx-expression":{"begin":"{","beginCaptures":{"0":{"name":"meta.brace.curly.coffee"}},"end":"}","endCaptures":{"0":{"name":"meta.brace.curly.coffee"}},"patterns":[{"include":"#double_quoted_string"},{"include":"$self"}]},"jsx-tag":{"patterns":[{"begin":"(<)([-\\\\w\\\\.]+)","beginCaptures":{"1":{"name":"punctuation.definition.tag.coffee"},"2":{"name":"entity.name.tag.coffee"}},"end":"(/?>)","name":"meta.tag.coffee","patterns":[{"include":"#jsx-attribute"}]}]},"method_calls":{"patterns":[{"begin":"(?:(\\\\.)|(::))\\\\s*([\\\\w$]+)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"punctuation.separator.method.period.coffee"},"2":{"name":"keyword.operator.prototype.coffee"},"3":{"patterns":[{"include":"#method_names"}]}},"end":"(?<=\\\\))","name":"meta.method-call.coffee","patterns":[{"include":"#arguments"}]},{"begin":"(?:(\\\\.)|(::))\\\\s*([\\\\w$]+)\\\\s*(?=\\\\s+(?!(?|\\\\-\\\\d|\\\\[|{|\\"|')))","beginCaptures":{"1":{"name":"punctuation.separator.method.period.coffee"},"2":{"name":"keyword.operator.prototype.coffee"},"3":{"patterns":[{"include":"#method_names"}]}},"end":"(?=\\\\s*(?>=|>>>=|\\\\|=)"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.coffee"},{"match":"!=|<=|>=|==|<|>","name":"keyword.operator.comparison.coffee"},{"match":"&&|!|\\\\|\\\\|","name":"keyword.operator.logical.coffee"},{"match":"&|\\\\||\\\\^|~","name":"keyword.operator.bitwise.coffee"},{"captures":{"1":{"name":"variable.assignment.coffee"},"2":{"name":"keyword.operator.assignment.coffee"}},"match":"([a-zA-Z$_][\\\\w$]*)?\\\\s*(=|:(?!:))(?![>=])"},{"match":"--","name":"keyword.operator.decrement.coffee"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.coffee"},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.splat.coffee"},{"match":"\\\\?","name":"keyword.operator.existential.coffee"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.coffee"},{"captures":{"1":{"name":"keyword.operator.logical.coffee"},"2":{"name":"keyword.operator.comparison.coffee"}},"match":"\\\\b(?Lte});var Nte,Lte,CN=_(()=>{Nte=Object.freeze(JSON.parse('{"displayName":"Common Lisp","fileTypes":["lisp","lsp","l","cl","asd","asdf"],"foldingStartMarker":"\\\\(","foldingStopMarker":"\\\\)","name":"common-lisp","patterns":[{"include":"#comment"},{"include":"#block-comment"},{"include":"#string"},{"include":"#escape"},{"include":"#constant"},{"include":"#lambda-list"},{"include":"#function"},{"include":"#style-guide"},{"include":"#def-name"},{"include":"#macro"},{"include":"#symbol"},{"include":"#special-operator"},{"include":"#declaration"},{"include":"#type"},{"include":"#class"},{"include":"#condition-type"},{"include":"#package"},{"include":"#variable"},{"include":"#punctuation"}],"repository":{"block-comment":{"begin":"\\\\#\\\\|","contentName":"comment.block.commonlisp","end":"\\\\|\\\\#","name":"comment","patterns":[{"include":"#block-comment","name":"comment"}]},"class":{"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by space or (\\n(?:two-way-stream|synonym-stream|symbol|structure-object|structure-class|string-stream|stream|standard-object|standard-method|\\nstandard-generic-function|standard-class|sequence|restart|real|readtable|ratio|random-state|package|number|method|integer|hash-table|\\ngeneric-function|file-stream|echo-stream|concatenated-stream|class|built-in-class|broadcast-stream|bit-vector|array)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"support.class.commonlisp"},"comment":{"begin":"(^[ \\\\t]+)?(?=;)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.commonlisp"}},"end":"(?!\\\\G)","patterns":[{"begin":";","beginCaptures":{"0":{"name":"punctuation.definition.comment.commonlisp"}},"end":"\\\\n","name":"comment.line.semicolon.commonlisp"}]},"condition-type":{"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by space or (\\n(?:warning|undefined-function|unbound-variable|unbound-slot|type-error|style-warning|stream-error|storage-condition|simple-warning|\\nsimple-type-error|simple-error|simple-condition|serious-condition|reader-error|program-error|print-not-readable|parse-error|package-error|\\nfloating-point-underflow|floating-point-overflow|floating-point-invalid-operation|floating-point-inexact|file-error|error|end-of-file|\\ndivision-by-zero|control-error|condition|cell-error|arithmetic-error)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"support.type.exception.commonlisp"},"constant":{"patterns":[{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(?:t|single-float-negative-epsilon|single-float-epsilon|short-float-negative-epsilon|short-float-epsilon|pi|\\nnil|multiple-values-limit|most-positive-single-float|most-positive-short-float|most-positive-long-float|\\nmost-positive-fixnum|most-positive-double-float|most-negative-single-float|most-negative-short-float|\\nmost-negative-long-float|most-negative-fixnum|most-negative-double-float|long-float-negative-epsilon|\\nlong-float-epsilon|least-positive-single-float|least-positive-short-float|least-positive-normalized-single-float|\\nleast-positive-normalized-short-float|least-positive-normalized-long-float|least-positive-normalized-double-float|\\nleast-positive-long-float|least-positive-double-float|least-negative-single-float|least-negative-short-float|\\nleast-negative-normalized-single-float|least-negative-normalized-short-float|least-negative-normalized-long-float|\\nleast-negative-normalized-double-float|least-negative-long-float|least-negative-double-float|lambda-parameters-limit|\\nlambda-list-keywords|internal-time-units-per-second|double-float-negative-epsilon|double-float-epsilon|char-code-limit|\\ncall-arguments-limit|boole-xor|boole-set|boole-orc2|boole-orc1|boole-nor|boole-nand|boole-ior|boole-eqv|boole-clr|\\nboole-c2|boole-c1|boole-andc2|boole-andc1|boole-and|boole-2|boole-1|array-total-size-limit|array-rank-limit|array-dimension-limit)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"constant.language.commonlisp"},{"match":"(?<=^|\\\\s|\\\\(|,@|,\\\\.|,)([+-]?[0-9]+(?:\\\\/[0-9]+)*|[-+]?[0-9]*\\\\.?[0-9]+([eE][-+]?[0-9]+)?|(\\\\#b|\\\\#B)[01\\\\/+-]+|(\\\\#o|\\\\#O)[0-7\\\\/+-]+|(\\\\#x|\\\\#X)[0-9a-fA-F\\\\/+-]+|(\\\\#[0-9]+[rR]?)[0-9a-zA-Z\\\\/+-]+)(?=(\\\\s|\\\\)))","name":"constant.numeric.commonlisp"},{"match":"(?xi)\\n(?<=\\\\s) # preceded by space\\n(\\\\.)\\n(?=\\\\s)","name":"variable.other.constant.dot.commonlisp"},{"match":"(?<=^|\\\\s|\\\\(|,@|,\\\\.|,)([+-]?[0-9]*\\\\.[0-9]*((e|s|f|d|l|E|S|F|D|L)[+-]?[0-9]+)?|[+-]?[0-9]+(\\\\.[0-9]*)?(e|s|f|d|l|E|S|F|D|L)[+-]?[0-9]+)(?=(\\\\s|\\\\)))","name":"constant.numeric.commonlisp"}]},"declaration":{"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by space or (\\n(?:type|speed|special|space|safety|optimize|notinline|inline|ignore|ignorable|ftype|dynamic-extent|declaration|debug|compilation-speed)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"storage.type.function.declaration.commonlisp"},"def-name":{"patterns":[{"captures":{"1":{"name":"storage.type.function.defname.commonlisp"},"3":{"name":"storage.type.function.defname.commonlisp"},"4":{"name":"variable.other.constant.defname.commonlisp"},"6":{"patterns":[{"include":"#package"},{"match":"\\\\S+?","name":"entity.name.function.commonlisp"}]},"7":{"name":"variable.other.constant.defname.commonlisp"},"9":{"patterns":[{"include":"#package"},{"match":"\\\\S+?","name":"entity.name.function.commonlisp"}]}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by (\\n(defun|defsetf|defmethod|defmacro|define-symbol-macro|define-setf-expander|\\ndefine-modify-macro|define-method-combination|define-compiler-macro|defgeneric) #1 keywords\\n\\\\s+\\n( \\\\(\\\\s*\\n ([#:A-Za-z0-9\\\\+\\\\-\\\\*\\\\/\\\\@\\\\$\\\\%\\\\^\\\\&\\\\_\\\\=\\\\<\\\\>\\\\~\\\\!\\\\?\\\\[\\\\]\\\\{\\\\}\\\\.]+) #3\\n \\\\s*\\n ((,@|,\\\\.|,)?) #4\\n ([#:A-Za-z0-9\\\\+\\\\-\\\\*\\\\/\\\\@\\\\$\\\\%\\\\^\\\\&\\\\_\\\\=\\\\<\\\\>\\\\~\\\\!\\\\?\\\\[\\\\]\\\\{\\\\}\\\\.]+?) #6 (<3>something+ <6>name)\\n |\\n ((,@|,\\\\.|,)?) #7\\n ([#:A-Za-z0-9\\\\+\\\\-\\\\*\\\\/\\\\@\\\\$\\\\%\\\\^\\\\&\\\\_\\\\=\\\\<\\\\>\\\\~\\\\!\\\\?\\\\[\\\\]\\\\{\\\\}\\\\.]+?) #9 name\\n) #2\\n(?=(\\\\s|\\\\(|\\\\)))"},{"captures":{"1":{"name":"storage.type.function.defname.commonlisp"},"2":{"name":"entity.name.type.commonlisp"}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\()\\n(deftype|defpackage|define-condition|defclass) # keywords\\n\\\\s+\\n([#:A-Za-z0-9\\\\+\\\\-\\\\*\\\\/\\\\@\\\\$\\\\%\\\\^\\\\&\\\\_\\\\=\\\\<\\\\>\\\\~\\\\!\\\\?\\\\[\\\\]\\\\{\\\\}\\\\.]+?) # name\\n(?=(\\\\s|\\\\(|\\\\)))"},{"captures":{"1":{"name":"storage.type.function.defname.commonlisp"},"2":{"patterns":[{"include":"#package"},{"match":"\\\\S+?","name":"variable.other.constant.defname.commonlisp"}]}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\()\\n(defconstant) # keywords\\n\\\\s+\\n([#:A-Za-z0-9\\\\+\\\\-\\\\*\\\\/\\\\@\\\\$\\\\%\\\\^\\\\&\\\\_\\\\=\\\\<\\\\>\\\\~\\\\!\\\\?\\\\[\\\\]\\\\{\\\\}\\\\.]+?) # name\\n(?=(\\\\s|\\\\(|\\\\)))"},{"captures":{"1":{"name":"storage.type.function.defname.commonlisp"}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\()\\n(defvar|defparameter) # keywords\\n\\\\s+\\n(?=(\\\\s|\\\\(|\\\\)))"},{"captures":{"1":{"name":"storage.type.function.defname.commonlisp"},"2":{"name":"entity.name.type.commonlisp"}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\()\\n(defstruct) # keywords\\n\\\\s+\\\\(?\\\\s*\\n([#:A-Za-z0-9\\\\+\\\\-\\\\*\\\\/\\\\@\\\\$\\\\%\\\\^\\\\&\\\\_\\\\=\\\\<\\\\>\\\\~\\\\!\\\\?\\\\[\\\\]\\\\{\\\\}\\\\.]+?) # name\\n(?=(\\\\s|\\\\(|\\\\)))"},{"captures":{"1":{"name":"keyword.control.commonlisp"},"2":{"patterns":[{"include":"#package"},{"match":"\\\\S+?","name":"entity.name.function.commonlisp"}]}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\()\\n(macrolet|labels|flet) # keywords\\n\\\\s+\\\\(\\\\s*\\\\(\\\\s*\\n([#:A-Za-z0-9\\\\+\\\\-\\\\*\\\\/\\\\@\\\\$\\\\%\\\\^\\\\&\\\\_\\\\=\\\\<\\\\>\\\\~\\\\!\\\\?\\\\[\\\\]\\\\{\\\\}\\\\.]+?) # name\\n(?=(\\\\s|\\\\(|\\\\)))"}]},"escape":{"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by space or (\\n(?:\\\\#\\\\\\\\\\\\S+?)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"constant.character.escape.commonlisp"},"function":{"patterns":[{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|\\\\#\') # preceded by space or (\\n(?:values|third|tenth|symbol-value|symbol-plist|symbol-function|svref|subseq|sixth|seventh|second|schar|sbit|row-major-aref|\\n rest|readtable-case|nth|ninth|mask-field|macro-function|logical-pathname-translations|ldb|gethash|getf|get|fourth|first|\\n find-class|fill-pointer|fifth|fdefinition|elt|eighth|compiler-macro-function|char|cdr|cddr|cdddr|cddddr|cdddar|cddar|cddadr|\\n cddaar|cdar|cdadr|cdaddr|cdadar|cdaar|cdaadr|cdaaar|car|cadr|caddr|cadddr|caddar|cadar|cadadr|cadaar|caar|caadr|caaddr|caadar|\\n caaar|caaadr|caaaar|bit|aref)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"support.function.accessor.commonlisp"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|\\\\#\') # preceded by space or (\\n(?:yes-or-no-p|y-or-n-p|write-sequence|write-char|write-byte|warn|vector-pop|use-value|use-package|unuse-package|union|unintern|\\nunexport|terpri|tailp|substitute-if-not|substitute-if|substitute|subst-if-not|subst-if|subst|sublis|string-upcase|string-downcase|\\nstring-capitalize|store-value|sleep|signal|shadowing-import|shadow|set-syntax-from-char|set-macro-character|set-exclusive-or|\\nset-dispatch-macro-character|set-difference|set|rplacd|rplaca|room|reverse|revappend|require|replace|remprop|remove-if-not|remove-if|\\nremove-duplicates|remove|remhash|read-sequence|read-byte|random|provide|pprint-tabular|pprint-newline|pprint-linear|pprint-fill|\\nnunion|nsubstitute-if-not|nsubstitute-if|nsubstitute|nsubst-if-not|nsubst-if|nsubst|nsublis|nstring-upcase|nstring-downcase|nstring-capitalize|\\nnset-exclusive-or|nset-difference|nreverse|nreconc|nintersection|nconc|muffle-warning|method-combination-error|maphash|makunbound|ldiff|\\ninvoke-restart-interactively|invoke-restart|invoke-debugger|invalid-method-error|intersection|inspect|import|get-output-stream-string|\\nget-macro-character|get-dispatch-macro-character|gentemp|gensym|fresh-line|fill|file-position|export|describe|delete-if-not|delete-if|\\ndelete-duplicates|delete|continue|clrhash|close|clear-input|break|abort)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"support.function.f.sideeffects.commonlisp"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|\\\\#\') # preceded by space or (\\n(?:zerop|write-to-string|write-string|write-line|write|wild-pathname-p|vectorp|vector-push-extend|vector-push|vector|values-list|\\nuser-homedir-pathname|upper-case-p|upgraded-complex-part-type|upgraded-array-element-type|unread-char|unbound-slot-instance|typep|type-of|\\ntype-error-expected-type|type-error-datum|two-way-stream-output-stream|two-way-stream-input-stream|truncate|truename|tree-equal|translate-pathname|\\ntranslate-logical-pathname|tanh|tan|synonym-stream-symbol|symbolp|symbol-package|symbol-name|sxhash|subtypep|subsetp|stringp|string>=|string>|\\nstring=|string<=|string<|string\\\\/=|string-trim|string-right-trim|string-not-lessp|string-not-greaterp|string-not-equal|string-lessp|\\nstring-left-trim|string-greaterp|string-equal|string|streamp|stream-external-format|stream-error-stream|stream-element-type|standard-char-p|\\nstable-sort|sqrt|special-operator-p|sort|some|software-version|software-type|slot-value|slot-makunbound|slot-exists-p|slot-boundp|sinh|sin|\\nsimple-vector-p|simple-string-p|simple-condition-format-control|simple-condition-format-arguments|simple-bit-vector-p|signum|short-site-name|\\nset-pprint-dispatch|search|scale-float|round|restart-name|rename-package|rename-file|rem|reduce|realpart|realp|readtablep|\\nread-preserving-whitespace|read-line|read-from-string|read-delimited-list|read-char-no-hang|read-char|read|rationalp|rationalize|\\nrational|rassoc-if-not|rassoc-if|rassoc|random-state-p|proclaim|probe-file|print-not-readable-object|print|princ-to-string|princ|\\nprin1-to-string|prin1|pprint-tab|pprint-indent|pprint-dispatch|pprint|position-if-not|position-if|position|plusp|phase|peek-char|pathnamep|\\npathname-version|pathname-type|pathname-name|pathname-match-p|pathname-host|pathname-directory|pathname-device|pathname|parse-namestring|\\nparse-integer|pairlis|packagep|package-used-by-list|package-use-list|package-shadowing-symbols|package-nicknames|package-name|package-error-package|\\noutput-stream-p|open-stream-p|open|oddp|numerator|numberp|null|nthcdr|notevery|notany|not|next-method-p|nbutlast|namestring|name-char|mod|mismatch|\\nminusp|min|merge-pathnames|merge|member-if-not|member-if|member|max|maplist|mapl|mapcon|mapcar|mapcan|mapc|map-into|map|make-two-way-stream|\\nmake-synonym-stream|make-symbol|make-string-output-stream|make-string-input-stream|make-string|make-sequence|make-random-state|make-pathname|\\nmake-package|make-load-form-saving-slots|make-list|make-hash-table|make-echo-stream|make-dispatch-macro-character|make-condition|\\nmake-concatenated-stream|make-broadcast-stream|make-array|macroexpand-1|macroexpand|machine-version|machine-type|machine-instance|lower-case-p|\\nlong-site-name|logxor|logtest|logorc2|logorc1|lognot|lognor|lognand|logior|logical-pathname|logeqv|logcount|logbitp|logandc2|logandc1|logand|\\nlog|load-logical-pathname-translations|load|listp|listen|list-length|list-all-packages|list\\\\*|list|lisp-implementation-version|\\nlisp-implementation-type|length|ldb-test|lcm|last|keywordp|isqrt|intern|interactive-stream-p|integerp|integer-length|integer-decode-float|\\ninput-stream-p|imagpart|identity|host-namestring|hash-table-test|hash-table-size|hash-table-rehash-threshold|hash-table-rehash-size|hash-table-p|\\nhash-table-count|graphic-char-p|get-universal-time|get-setf-expansion|get-properties|get-internal-run-time|get-internal-real-time|\\nget-decoded-time|gcd|functionp|function-lambda-expression|funcall|ftruncate|fround|format|force-output|fmakunbound|floor|floatp|float-sign|\\nfloat-radix|float-precision|float-digits|float|finish-output|find-symbol|find-restart|find-package|find-if-not|find-if|find-all-symbols|find|\\nfile-write-date|file-string-length|file-namestring|file-length|file-error-pathname|file-author|ffloor|fceiling|fboundp|expt|exp|every|evenp|\\neval|equalp|equal|eql|eq|ensure-generic-function|ensure-directories-exist|enough-namestring|endp|encode-universal-time|ed|echo-stream-output-stream|\\necho-stream-input-stream|dribble|dpb|disassemble|directory-namestring|directory|digit-char-p|digit-char|deposit-field|denominator|delete-package|\\ndelete-file|decode-universal-time|decode-float|count-if-not|count-if|count|cosh|cos|copy-tree|copy-symbol|copy-structure|copy-seq|copy-readtable|\\ncopy-pprint-dispatch|copy-list|copy-alist|constantp|constantly|consp|cons|conjugate|concatenated-stream-streams|concatenate|compute-restarts|\\ncomplexp|complex|complement|compiled-function-p|compile-file-pathname|compile-file|compile|coerce|code-char|clear-output|class-of|cis|characterp|\\ncharacter|char>=|char>|char=|char<=|char<|char\\\\/=|char-upcase|char-not-lessp|char-not-greaterp|char-not-equal|char-name|char-lessp|char-int|\\nchar-greaterp|char-equal|char-downcase|char-code|cerror|cell-error-name|ceiling|call-next-method|byte-size|byte-position|byte|butlast|\\nbroadcast-stream-streams|boundp|both-case-p|boole|bit-xor|bit-vector-p|bit-orc2|bit-orc1|bit-not|bit-nor|bit-nand|bit-ior|bit-eqv|bit-andc2|\\nbit-andc1|bit-and|atom|atanh|atan|assoc-if-not|assoc-if|assoc|asinh|asin|ash|arrayp|array-total-size|array-row-major-index|array-rank|\\narray-in-bounds-p|array-has-fill-pointer-p|array-element-type|array-displacement|array-dimensions|array-dimension|arithmetic-error-operation|\\narithmetic-error-operands|apropos-list|apropos|apply|append|alphanumericp|alpha-char-p|adjustable-array-p|adjust-array|adjoin|acosh|acos|acons|\\nabs|>=|>|=|<=|<|1-|1\\\\+|\\\\/=|\\\\/|-|\\\\+|\\\\*)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"support.function.f.sideeffects.commonlisp"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|\\\\#\') # preceded by space or (\\n(?:variable|update-instance-for-redefined-class|update-instance-for-different-class|structure|slot-unbound|slot-missing|shared-initialize|\\nremove-method|print-object|no-next-method|no-applicable-method|method-qualifiers|make-load-form|make-instances-obsolete|make-instance|\\ninitialize-instance|function-keywords|find-method|documentation|describe-object|compute-applicable-methods|compiler-macro|class-name|\\nchange-class|allocate-instance|add-method)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"support.function.sgf.nosideeffects.commonlisp"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|\\\\#\') # preceded by space or (\\n(?:reinitialize-instance)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"support.function.sgf.sideeffects.commonlisp"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|\\\\#\') # preceded by space or (\\n(?:satisfies)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"support.function.typespecifier.commonlisp"}]},"lambda-list":{"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by space or (\\n(?:&[#:A-Za-z0-9\\\\+\\\\-\\\\*\\\\/\\\\@\\\\$\\\\%\\\\^\\\\&\\\\_\\\\=\\\\<\\\\>\\\\~\\\\!\\\\?\\\\[\\\\]\\\\{\\\\}\\\\.]+?|&whole|&rest|&optional|&key|&environment|&body|&aux|&allow-other-keys)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"keyword.other.lambdalist.commonlisp"},"macro":{"patterns":[{"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by space or (\\n(?:with-standard-io-syntax|with-slots|with-simple-restart|with-package-iterator|with-hash-table-iterator|with-condition-restarts|\\nwith-compilation-unit|with-accessors|when|unless|typecase|time|step|shiftf|setf|rotatef|return|restart-case|restart-bind|psetf|prog2|prog1|\\nprog\\\\*|prog|print-unreadable-object|pprint-logical-block|pprint-exit-if-list-exhausted|or|nth-value|multiple-value-setq|multiple-value-list|\\nmultiple-value-bind|make-method|loop|lambda|ignore-errors|handler-case|handler-bind|formatter|etypecase|dotimes|dolist|do-symbols|do-external-symbols|\\ndo-all-symbols|do\\\\*|do|destructuring-bind|defun|deftype|defstruct|defsetf|defpackage|defmethod|defmacro|define-symbol-macro|define-setf-expander|\\ndefine-condition|define-compiler-macro|defgeneric|defconstant|defclass|declaim|ctypecase|cond|call-method|assert|and)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"storage.type.function.m.nosideeffects.commonlisp"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by space or (\\n(?:with-output-to-string|with-open-stream|with-open-file|with-input-from-string|untrace|trace|remf|pushnew|push|psetq|pprint-pop|pop|\\notherwise|loop-finish|incf|in-package|ecase|defvar|defparameter|define-modify-macro|define-method-combination|decf|check-type|ccase|case)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"storage.type.function.m.sideeffects.commonlisp"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by space or (\\n(?:setq)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"storage.type.function.specialform.commonlisp"}]},"package":{"patterns":[{"captures":{"2":{"name":"support.type.package.commonlisp"},"3":{"name":"support.type.package.commonlisp"}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\n ([A-Za-z0-9\\\\+\\\\-\\\\*\\\\/\\\\@\\\\$\\\\%\\\\^\\\\&\\\\_\\\\=\\\\<\\\\>\\\\~\\\\!\\\\?\\\\[\\\\]\\\\{\\\\}\\\\.]+?) #2\\n | \\n (\\\\#) #3\\n)\\n(?=\\\\:\\\\:|\\\\:)"}]},"punctuation":{"patterns":[{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\'|`)\\n(?=\\\\S)","name":"variable.other.constant.singlequote.commonlisp"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(?:\\\\:[#:A-Za-z0-9\\\\+\\\\-\\\\*\\\\/\\\\@\\\\$\\\\%\\\\^\\\\&\\\\_\\\\=\\\\<\\\\>\\\\~\\\\!\\\\?\\\\[\\\\]\\\\{\\\\}\\\\.]+?)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"entity.name.variable.commonlisp"},{"captures":{"1":{"name":"variable.other.constant.sharpsign.commonlisp"},"2":{"name":"constant.numeric.commonlisp"}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\\\#)([0-9]*)\\n(?=\\\\()"},{"captures":{"1":{"name":"variable.other.constant.sharpsign.commonlisp"},"2":{"name":"constant.numeric.commonlisp"},"3":{"name":"variable.other.constant.sharpsign.commonlisp"}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\\\#)\\n([0-9]*)\\n(\\\\*)\\n(?=0|1)"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\\\#\\\\*|\\\\#0\\\\*)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"variable.other.constant.sharpsign.commonlisp"},{"captures":{"1":{"name":"variable.other.constant.sharpsign.commonlisp"},"2":{"name":"constant.numeric.commonlisp"},"3":{"name":"variable.other.constant.sharpsign.commonlisp"}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\\\#)\\n([0-9]+)\\n(a|A)\\n(?=.)"},{"captures":{"1":{"name":"variable.other.constant.sharpsign.commonlisp"},"2":{"name":"constant.numeric.commonlisp"},"3":{"name":"variable.other.constant.sharpsign.commonlisp"}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\\\#)\\n([0-9]+)\\n(=)\\n(?=.)"},{"captures":{"1":{"name":"variable.other.constant.sharpsign.commonlisp"},"2":{"name":"constant.numeric.commonlisp"},"3":{"name":"variable.other.constant.sharpsign.commonlisp"}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\\\#)\\n([0-9]+)\\n(\\\\#)\\n(?=.)"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\\\#(\\\\+|-))\\n(?=\\\\S)","name":"variable.other.constant.sharpsign.commonlisp"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\\\#(\'|,|\\\\.|c|C|s|S|p|P))\\n(?=\\\\S)","name":"variable.other.constant.sharpsign.commonlisp"},{"captures":{"1":{"name":"support.type.package.commonlisp"}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\\\#)\\n(:)\\n(?=\\\\S)"},{"captures":{"2":{"name":"variable.other.constant.backquote.commonlisp"},"3":{"name":"variable.other.constant.backquote.commonlisp"},"4":{"name":"variable.other.constant.backquote.commonlisp"},"5":{"name":"variable.other.constant.backquote.commonlisp"}},"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by space or (\\n(\\n (`\\\\#) #2\\n |\\n (`)(,@|,\\\\.|,)? #3, #4\\n |\\n (,@|,\\\\.|,) #5\\n)\\n(?=\\\\S)"}]},"special-operator":{"captures":{"2":{"name":"keyword.control.commonlisp"}},"match":"(?xi)\\n(\\\\(\\\\s*) # preceded by (\\n(unwind-protect|throw|the|tagbody|symbol-macrolet|return-from|quote|progv|progn|multiple-value-prog1|multiple-value-call|\\nmacrolet|locally|load-time-value|let\\\\*|let|labels|if|go|function|flet|eval-when|catch|block)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )"},"string":{"begin":"(\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.commonlisp"}},"end":"(\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.commonlisp"}},"name":"string.quoted.double.commonlisp","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.commonlisp"},{"captures":{"1":{"name":"storage.type.function.formattedstring.commonlisp"},"2":{"name":"variable.other.constant.formattedstring.commonlisp"},"8":{"name":"storage.type.function.formattedstring.commonlisp"},"10":{"name":"storage.type.function.formattedstring.commonlisp"}},"match":"(?xi)\\n\\n(~) #1 tilde\\n(\\n (\\n (([+-]?[0-9]+)|(\'.)|V|\\\\#)*?\\n (,)?\\n )\\n*?) #2 prefix parameters, signed decimal numbers|single char, separated by commas\\n(\\n (:@|@:|:|@)\\n?) #8 modifiers\\n(\\\\(|\\\\)|\\\\[|\\\\]|;|{|}|<|>|\\\\^) #10 control structures"},{"captures":{"1":{"name":"entity.name.variable.commonlisp"},"2":{"name":"variable.other.constant.formattedstring.commonlisp"},"8":{"name":"entity.name.variable.commonlisp"},"10":{"name":"entity.name.variable.commonlisp"}},"match":"(?xi)\\n\\n(~) #1 tilde\\n(\\n (\\n (([+-]?[0-9]+)|(\'.)|V|\\\\#)*?\\n (,)?\\n )\\n*?) #2 prefix parameters, signed decimal numbers|single char, separated by commas\\n(\\n (:@|@:|:|@)\\n?) #8 modifiers\\n(A|S|D|B|O|X|R|P|C|F|E|G|\\\\$|%|\\\\&|\\\\||~|T|\\\\*|\\\\?|_|W|I) #10 directives"},{"captures":{"1":{"name":"entity.name.variable.commonlisp"},"2":{"name":"variable.other.constant.formattedstring.commonlisp"},"8":{"name":"entity.name.variable.commonlisp"},"10":{"name":"entity.name.variable.commonlisp"},"11":{"name":"entity.name.variable.commonlisp"},"12":{"name":"entity.name.variable.commonlisp"}},"match":"(?xi)\\n\\n(~) #1 tilde\\n(\\n (\\n (([+-]?[0-9]+)|(\'.)|V|\\\\#)*?\\n (,)?\\n )\\n*?) #2 prefix parameters, signed decimal numbers|single char, separated by commas\\n(\\n (:@|@:|:|@)\\n?) #8 modifiers\\n(\\\\/) #10\\n([#:A-Za-z0-9\\\\+\\\\-\\\\*\\\\/\\\\@\\\\$\\\\%\\\\^\\\\&\\\\_\\\\=\\\\<\\\\>\\\\~\\\\!\\\\?\\\\[\\\\]\\\\{\\\\}\\\\.]+?) #11 call function\\n(\\\\/) #12"},{"match":"(~\\\\n)","name":"variable.other.constant.formattedstring.commonlisp"}]},"style-guide":{"patterns":[{"captures":{"3":{"name":"source.commonlisp"}},"match":"(?xi)\\n(?<=^\'|\\\\s\'|\\\\(\'|,@\'|,\\\\.\'|,\')\\n(\\\\S+?)\\n(\\\\:\\\\:|\\\\:)\\n((\\\\+[^\\\\s\\\\+]+\\\\+)|(\\\\*[^\\\\s\\\\*]+\\\\*))\\n(?=(\\\\s|\\\\(|\\\\)))"},{"match":"(?xi)\\n(?<=\\\\S:|^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\\\+[^\\\\s\\\\+]+\\\\+)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"variable.other.constant.earmuffsplus.commonlisp"},{"match":"(?xi)\\n(?<=\\\\S:|^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(\\\\*[^\\\\s\\\\*]+\\\\*)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"string.regexp.earmuffsasterisk.commonlisp"}]},"symbol":{"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by space or (\\n(?:method-combination|declare)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"storage.type.function.symbol.commonlisp"},"type":{"match":"(?xi)\\n(?<=^|\\\\s|\\\\() # preceded by space or (\\n(?:unsigned-byte|standard-char|standard|single-float|simple-vector|simple-string|simple-bit-vector|simple-base-string|simple-array|\\nsigned-byte|short-float|long-float|keyword|fixnum|extended-char|double-float|compiled-function|boolean|bignum|base-string|base-char)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"support.type.t.commonlisp"},"variable":{"patterns":[{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(?:\\\\*trace-output\\\\*|\\\\*terminal-io\\\\*|\\\\*standard-output\\\\*|\\\\*standard-input\\\\*|\\\\*readtable\\\\*|\\\\*read-suppress\\\\*|\\\\*read-eval\\\\*|\\n\\\\*read-default-float-format\\\\*|\\\\*read-base\\\\*|\\\\*random-state\\\\*|\\\\*query-io\\\\*|\\\\*print-right-margin\\\\*|\\\\*print-readably\\\\*|\\\\*print-radix\\\\*|\\\\*print-pretty\\\\*|\\n\\\\*print-pprint-dispatch\\\\*|\\\\*print-miser-width\\\\*|\\\\*print-lines\\\\*|\\\\*print-level\\\\*|\\\\*print-length\\\\*|\\\\*print-gensym\\\\*|\\\\*print-escape\\\\*|\\\\*print-circle\\\\*|\\n\\\\*print-case\\\\*|\\\\*print-base\\\\*|\\\\*print-array\\\\*|\\\\*package\\\\*|\\\\*modules\\\\*|\\\\*macroexpand-hook\\\\*|\\\\*load-verbose\\\\*|\\\\*load-truename\\\\*|\\\\*load-print\\\\*|\\n\\\\*load-pathname\\\\*|\\\\*gensym-counter\\\\*|\\\\*features\\\\*|\\\\*error-output\\\\*|\\\\*default-pathname-defaults\\\\*|\\\\*debugger-hook\\\\*|\\\\*debug-io\\\\*|\\\\*compile-verbose\\\\*|\\n\\\\*compile-print\\\\*|\\\\*compile-file-truename\\\\*|\\\\*compile-file-pathname\\\\*|\\\\*break-on-signals\\\\*)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"string.regexp.earmuffsasterisk.commonlisp"},{"match":"(?xi)\\n(?<=^|\\\\s|\\\\(|,@|,\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\n(?:\\\\*\\\\*\\\\*|\\\\*\\\\*|\\\\+\\\\+\\\\+|\\\\+\\\\+|\\\\/\\\\/\\\\/|\\\\/\\\\/)\\n(?=(\\\\s|\\\\(|\\\\))) # followed by space, ( or )","name":"variable.other.repl.commonlisp"}]}},"scopeName":"source.commonlisp","aliases":["lisp"]}')),Lte=[Nte]});var _N={};x(_N,{default:()=>Rte});var $te,Rte,BN=_(()=>{$te=Object.freeze(JSON.parse(`{"displayName":"Coq","fileTypes":["v"],"name":"coq","patterns":[{"comment":"Vernacular import keywords","match":"\\\\b(From|Require|Import|Export|Local|Global|Include)\\\\b","name":"keyword.control.import.coq"},{"comment":"Vernacular scope keywords","match":"\\\\b((Open|Close|Delimit|Undelimit|Bind)\\\\s+Scope)\\\\b","name":"keyword.control.import.coq"},{"captures":{"1":{"name":"keyword.source.coq"},"2":{"name":"entity.name.function.theorem.coq"}},"comment":"Theorem declarations","match":"\\\\b(Theorem|Lemma|Remark|Fact|Corollary|Property|Proposition)\\\\s+((\\\\p{L}|[_\\\\u00A0])(\\\\p{L}|[0-9_\\\\u00A0'])*)"},{"match":"\\\\bGoal\\\\b","name":"keyword.source.coq"},{"captures":{"1":{"name":"keyword.source.coq"},"2":{"name":"keyword.source.coq"},"3":{"name":"entity.name.assumption.coq"}},"comment":"Assumptions","match":"\\\\b(Parameters?|Axioms?|Conjectures?|Variables?|Hypothesis|Hypotheses)(\\\\s+Inline)?\\\\b\\\\s*\\\\(?\\\\s*((\\\\p{L}|[_\\\\u00A0])(\\\\p{L}|[0-9_\\\\u00A0'])*)"},{"captures":{"1":{"name":"keyword.source.coq"},"3":{"name":"entity.name.assumption.coq"}},"comment":"Context","match":"\\\\b(Context)\\\\b\\\\s*\`?\\\\s*(\\\\(|\\\\{)?\\\\s*((\\\\p{L}|[_\\\\u00A0])(\\\\p{L}|[0-9_\\\\u00A0'])*)"},{"captures":{"1":{"name":"keyword.source.coq"},"2":{"name":"keyword.source.coq"},"3":{"name":"entity.name.function.coq"}},"comment":"Definitions","match":"(\\\\b(?:Program|Local)\\\\s+)?\\\\b(Definition|Fixpoint|CoFixpoint|Function|Example|Let(?:\\\\s+Fixpoint|\\\\s+CoFixpoint)?|Instance|Equations|Equations?)\\\\s+((\\\\p{L}|[_\\\\u00A0])(\\\\p{L}|[0-9_\\\\u00A0'])*)"},{"captures":{"1":{"name":"keyword.source.coq"}},"comment":"Obligations","match":"\\\\b((Show\\\\s+)?Obligation\\\\s+Tactic|Obligations\\\\s+of|Obligation|Next\\\\s+Obligation(\\\\s+of)?|Solve\\\\s+Obligations(\\\\s+of)?|Solve\\\\s+All\\\\s+Obligations|Admit\\\\s+Obligations(\\\\s+of)?|Instance)\\\\b"},{"captures":{"1":{"name":"keyword.source.coq"},"3":{"name":"entity.name.type.coq"}},"comment":"Type declarations","match":"\\\\b(CoInductive|Inductive|Variant|Record|Structure|Class)\\\\s+(>\\\\s*)?((\\\\p{L}|[_\\\\u00A0])(\\\\p{L}|[0-9_\\\\u00A0'])*)"},{"captures":{"1":{"name":"keyword.source.coq"},"2":{"name":"entity.name.function.ltac"}},"comment":"Ltac declarations","match":"\\\\b(Ltac)\\\\s+((\\\\p{L}|[_\\\\u00A0])(\\\\p{L}|[0-9_\\\\u00A0'])*)"},{"comment":"Vernacular keywords","match":"\\\\b(Hint|Constructors|Resolve|Rewrite|Ltac|Implicit(\\\\s+Types)?|Set|Unset|Remove\\\\s+Printing|Arguments|Tactic\\\\s+Notation|Notation|Infix|Reserved\\\\s+Notation|Section|Module\\\\s+Type|Module|End|Check|Print|Eval|Search|Universe|Coercions?|Generalizable\\\\s+All|Generalizable\\\\s+Variable?|Existing\\\\s+Instance|Existing\\\\s+Class|Canonical|About|Locate|Collection|Typeclasses\\\\s+(Opaque|Transparent))\\\\b","name":"keyword.source.coq"},{"comment":"Proof keywords","match":"\\\\b(Proof|Qed|Defined|Save|Abort(\\\\s+All)?|Undo(\\\\s+To)?|Restart|Focus|Unfocus|Unfocused|Show\\\\s+Proof|Show\\\\s+Existentials|Show|Unshelve)\\\\b","name":"keyword.source.coq"},{"comment":"Vernacular Debug keywords","match":"\\\\b(Quit|Drop|Time|Redirect|Timeout|Fail)\\\\b","name":"keyword.debug.coq"},{"comment":"Admits are bad","match":"\\\\b(admit|Admitted)\\\\b","name":"invalid.illegal.admit.coq"},{"comment":"Operators","match":":|\\\\||=|<|>|\\\\*|\\\\+|-|\\\\{|\\\\}|\u2260|\u2228|\u2227|\u2194|\xAC|\u2192|\u2264|\u2265","name":"keyword.operator.coq"},{"comment":"Type keywords","match":"\\\\b(forall|exists|Type|Set|Prop|nat|bool|option|list|unit|sum|prod|comparison|Empty_set)\\\\b|\u2200|\u2203","name":"support.type.coq"},{"comment":"Ltac keywords","match":"\\\\b(try|repeat|rew|progress|fresh|solve|now|first|tryif|at|once|do|only)\\\\b","name":"keyword.control.ltac"},{"comment":"Common Ltac connectors","match":"\\\\b(into|with|eqn|by|move|as|using)\\\\b","name":"keyword.control.ltac"},{"comment":"Gallina keywords","match":"\\\\b(match|lazymatch|multimatch|fun|with|return|end|let|in|if|then|else|fix|for|where|and)\\\\b|\u03BB","name":"keyword.control.gallina"},{"comment":"Ltac builtins","match":"\\\\b(intro|intros|revert|induction|destruct|auto|eauto|tauto|eassumption|apply|eapply|assumption|constructor|econstructor|reflexivity|inversion|injection|assert|split|esplit|omega|fold|unfold|specialize|rewrite|erewrite|change|symmetry|refine|simpl|intuition|firstorder|generalize|idtac|exist|exists|eexists|elim|eelim|rename|subst|congruence|trivial|left|right|set|pose|discriminate|clear|clearbody|contradict|contradiction|exact|dependent|remember|case|easy|unshelve|pattern|transitivity|etransitivity|f_equal|exfalso|replace|abstract|cycle|swap|revgoals|shelve|unshelve)\\\\b","name":"support.function.builtin.ltac"},{"applyEndPatternLast":1,"begin":"\\\\(\\\\*(?!#)","end":"\\\\*\\\\)","name":"comment.block.coq","patterns":[{"include":"#block_comment"},{"include":"#block_double_quoted_string"}]},{"match":"\\\\b((0(x|X)[0-9a-fA-F]+)|([0-9]+(\\\\.[0-9]+)?))\\\\b","name":"constant.numeric.gallina"},{"comment":"Gallina builtin constructors","match":"\\\\b(True|False|tt|false|true|Some|None|nil|cons|pair|inl|inr|O|S|Eq|Lt|Gt|id|ex|all|unique)\\\\b","name":"constant.language.constructor.gallina"},{"match":"\\\\b_\\\\b","name":"constant.language.wildcard.coq"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.coq"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.coq"}},"name":"string.quoted.double.coq"}],"repository":{"block_comment":{"applyEndPatternLast":1,"begin":"\\\\(\\\\*(?!#)","end":"\\\\*\\\\)","name":"comment.block.coq","patterns":[{"include":"#block_comment"},{"include":"#block_double_quoted_string"}]},"block_double_quoted_string":{"applyEndPatternLast":1,"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.coq"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.coq"}},"name":"string.quoted.double.coq"}},"scopeName":"source.coq"}`)),Rte=[$te]});var xN={};x(xN,{default:()=>JA});var jte,JA,Fg=_(()=>{jte=Object.freeze(JSON.parse('{"displayName":"RegExp","fileTypes":["re"],"name":"regexp","patterns":[{"include":"#regexp-expression"}],"repository":{"codetags":{"captures":{"1":{"name":"keyword.codetag.notation.python"}},"match":"(?:\\\\b(NOTE|XXX|HACK|FIXME|BUG|TODO)\\\\b)"},"fregexp-base-expression":{"patterns":[{"include":"#fregexp-quantifier"},{"include":"#fstring-formatting-braces"},{"match":"\\\\{.*?\\\\}"},{"include":"#regexp-base-common"}]},"fregexp-quantifier":{"match":"\\\\{\\\\{(\\\\d+|\\\\d+,(\\\\d+)?|,\\\\d+)\\\\}\\\\}","name":"keyword.operator.quantifier.regexp"},"fstring-formatting-braces":{"patterns":[{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"},"2":{"name":"invalid.illegal.brace.python"},"3":{"name":"constant.character.format.placeholder.other.python"}},"comment":"empty braces are illegal","match":"({)(\\\\s*?)(})"},{"match":"({{|}})","name":"constant.character.escape.python"}]},"regexp-backreference":{"captures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.begin.regexp"},"2":{"name":"entity.name.tag.named.backreference.regexp"},"3":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp"}},"match":"(\\\\()(\\\\?P=\\\\w+(?:\\\\s+[[:alnum:]]+)?)(\\\\))","name":"meta.backreference.named.regexp"},"regexp-backreference-number":{"captures":{"1":{"name":"entity.name.tag.backreference.regexp"}},"match":"(\\\\\\\\[1-9]\\\\d?)","name":"meta.backreference.regexp"},"regexp-base-common":{"patterns":[{"match":"\\\\.","name":"support.other.match.any.regexp"},{"match":"\\\\^","name":"support.other.match.begin.regexp"},{"match":"\\\\$","name":"support.other.match.end.regexp"},{"match":"[+*?]\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.disjunction.regexp"},{"include":"#regexp-escape-sequence"}]},"regexp-base-expression":{"patterns":[{"include":"#regexp-quantifier"},{"include":"#regexp-base-common"}]},"regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"regexp-charecter-set-escapes":{"patterns":[{"match":"\\\\\\\\[abfnrtv\\\\\\\\]","name":"constant.character.escape.regexp"},{"include":"#regexp-escape-special"},{"match":"\\\\\\\\([0-7]{1,3})","name":"constant.character.escape.regexp"},{"include":"#regexp-escape-character"},{"include":"#regexp-escape-unicode"},{"include":"#regexp-escape-catchall"}]},"regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[[:alnum:]]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#regexp-expression"}]},"regexp-escape-catchall":{"match":"\\\\\\\\(.|\\\\n)","name":"constant.character.escape.regexp"},"regexp-escape-character":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|0[0-7]{1,2}|[0-7]{3})","name":"constant.character.escape.regexp"},"regexp-escape-sequence":{"patterns":[{"include":"#regexp-escape-special"},{"include":"#regexp-escape-character"},{"include":"#regexp-escape-unicode"},{"include":"#regexp-backreference-number"},{"include":"#regexp-escape-catchall"}]},"regexp-escape-special":{"match":"\\\\\\\\([AbBdDsSwWZ])","name":"support.other.escape.special.regexp"},"regexp-escape-unicode":{"match":"\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.unicode.regexp"},"regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#regexp-character-set"},{"include":"#regexp-comments"},{"include":"#regexp-flags"},{"include":"#regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#regexp-lookahead"},{"include":"#regexp-lookahead-negative"},{"include":"#regexp-lookbehind"},{"include":"#regexp-lookbehind-negative"},{"include":"#regexp-conditional"},{"include":"#regexp-parentheses-non-capturing"},{"include":"#regexp-parentheses"}]},"regexp-flags":{"match":"\\\\(\\\\?[aiLmsux]+\\\\)","name":"storage.modifier.flag.regexp"},"regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#regexp-expression"}]},"regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#regexp-expression"}]},"regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#regexp-expression"}]},"regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#regexp-expression"}]},"regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#regexp-expression"}]},"regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#regexp-expression"}]},"regexp-quantifier":{"match":"\\\\{(\\\\d+|\\\\d+,(\\\\d+)?|,\\\\d+)\\\\}","name":"keyword.operator.quantifier.regexp"}},"scopeName":"source.regexp.python","aliases":["regex"]}')),JA=[jte]});var vN={};x(vN,{default:()=>Xa});var Pte,Xa,Ho=_(()=>{Uo();Pte=Object.freeze(JSON.parse('{"displayName":"GLSL","fileTypes":["vs","fs","gs","vsh","fsh","gsh","vshader","fshader","gshader","vert","frag","geom","f.glsl","v.glsl","g.glsl"],"foldingStartMarker":"/\\\\*\\\\*|\\\\{\\\\s*$","foldingStopMarker":"\\\\*\\\\*/|^\\\\s*\\\\}","name":"glsl","patterns":[{"match":"\\\\b(break|case|continue|default|discard|do|else|for|if|return|switch|while)\\\\b","name":"keyword.control.glsl"},{"match":"\\\\b(void|bool|int|uint|float|vec2|vec3|vec4|bvec2|bvec3|bvec4|ivec2|ivec2|ivec3|uvec2|uvec2|uvec3|mat2|mat3|mat4|mat2x2|mat2x3|mat2x4|mat3x2|mat3x3|mat3x4|mat4x2|mat4x3|mat4x4|sampler[1|2|3]D|samplerCube|sampler2DRect|sampler[1|2]DShadow|sampler2DRectShadow|sampler[1|2]DArray|sampler[1|2]DArrayShadow|samplerBuffer|sampler2DMS|sampler2DMSArray|struct|isampler[1|2|3]D|isamplerCube|isampler2DRect|isampler[1|2]DArray|isamplerBuffer|isampler2DMS|isampler2DMSArray|usampler[1|2|3]D|usamplerCube|usampler2DRect|usampler[1|2]DArray|usamplerBuffer|usampler2DMS|usampler2DMSArray)\\\\b","name":"storage.type.glsl"},{"match":"\\\\b(attribute|centroid|const|flat|in|inout|invariant|noperspective|out|smooth|uniform|varying)\\\\b","name":"storage.modifier.glsl"},{"match":"\\\\b(gl_BackColor|gl_BackLightModelProduct|gl_BackLightProduct|gl_BackMaterial|gl_BackSecondaryColor|gl_ClipDistance|gl_ClipPlane|gl_ClipVertex|gl_Color|gl_DepthRange|gl_DepthRangeParameters|gl_EyePlaneQ|gl_EyePlaneR|gl_EyePlaneS|gl_EyePlaneT|gl_Fog|gl_FogCoord|gl_FogFragCoord|gl_FogParameters|gl_FragColor|gl_FragCoord|gl_FragDat|gl_FragDept|gl_FrontColor|gl_FrontFacing|gl_FrontLightModelProduct|gl_FrontLightProduct|gl_FrontMaterial|gl_FrontSecondaryColor|gl_InstanceID|gl_Layer|gl_LightModel|gl_LightModelParameters|gl_LightModelProducts|gl_LightProducts|gl_LightSource|gl_LightSourceParameters|gl_MaterialParameters|gl_ModelViewMatrix|gl_ModelViewMatrixInverse|gl_ModelViewMatrixInverseTranspose|gl_ModelViewMatrixTranspose|gl_ModelViewProjectionMatrix|gl_ModelViewProjectionMatrixInverse|gl_ModelViewProjectionMatrixInverseTranspose|gl_ModelViewProjectionMatrixTranspose|gl_MultiTexCoord[0-7]|gl_Normal|gl_NormalMatrix|gl_NormalScale|gl_ObjectPlaneQ|gl_ObjectPlaneR|gl_ObjectPlaneS|gl_ObjectPlaneT|gl_Point|gl_PointCoord|gl_PointParameters|gl_PointSize|gl_Position|gl_PrimitiveIDIn|gl_ProjectionMatrix|gl_ProjectionMatrixInverse|gl_ProjectionMatrixInverseTranspose|gl_ProjectionMatrixTranspose|gl_SecondaryColor|gl_TexCoord|gl_TextureEnvColor|gl_TextureMatrix|gl_TextureMatrixInverse|gl_TextureMatrixInverseTranspose|gl_TextureMatrixTranspose|gl_Vertex|gl_VertexIDh)\\\\b","name":"support.variable.glsl"},{"match":"\\\\b(gl_MaxClipPlanes|gl_MaxCombinedTextureImageUnits|gl_MaxDrawBuffers|gl_MaxFragmentUniformComponents|gl_MaxLights|gl_MaxTextureCoords|gl_MaxTextureImageUnits|gl_MaxTextureUnits|gl_MaxVaryingFloats|gl_MaxVertexAttribs|gl_MaxVertexTextureImageUnits|gl_MaxVertexUniformComponents)\\\\b","name":"support.constant.glsl"},{"match":"\\\\b(abs|acos|all|any|asin|atan|ceil|clamp|cos|cross|degrees|dFdx|dFdy|distance|dot|equal|exp|exp2|faceforward|floor|fract|ftransform|fwidth|greaterThan|greaterThanEqual|inversesqrt|length|lessThan|lessThanEqual|log|log2|matrixCompMult|max|min|mix|mod|noise[1-4]|normalize|not|notEqual|outerProduct|pow|radians|reflect|refract|shadow1D|shadow1DLod|shadow1DProj|shadow1DProjLod|shadow2D|shadow2DLod|shadow2DProj|shadow2DProjLod|sign|sin|smoothstep|sqrt|step|tan|texture1D|texture1DLod|texture1DProj|texture1DProjLod|texture2D|texture2DLod|texture2DProj|texture2DProjLod|texture3D|texture3DLod|texture3DProj|texture3DProjLod|textureCube|textureCubeLod|transpose)\\\\b","name":"support.function.glsl"},{"match":"\\\\b(asm|double|enum|extern|goto|inline|long|short|sizeof|static|typedef|union|unsigned|volatile)\\\\b","name":"invalid.illegal.glsl"},{"include":"source.c"}],"scopeName":"source.glsl","embeddedLangs":["c"]}')),Xa=[...Va,Pte]});var Mte,EN,QN=_(()=>{Fg();Ho();Nn();Mte=Object.freeze(JSON.parse(`{"displayName":"C++","name":"cpp-macro","patterns":[{"include":"#ever_present_context"},{"include":"#constructor_root"},{"include":"#destructor_root"},{"include":"#function_definition"},{"include":"#operator_overload"},{"include":"#using_namespace"},{"include":"source.cpp#type_alias"},{"include":"source.cpp#using_name"},{"include":"source.cpp#namespace_alias"},{"include":"#namespace_block"},{"include":"#extern_block"},{"include":"#typedef_class"},{"include":"#typedef_struct"},{"include":"#typedef_union"},{"include":"source.cpp#misc_keywords"},{"include":"source.cpp#standard_declares"},{"include":"#class_block"},{"include":"#struct_block"},{"include":"#union_block"},{"include":"#enum_block"},{"include":"source.cpp#template_isolated_definition"},{"include":"#template_definition"},{"include":"source.cpp#template_explicit_instantiation"},{"include":"source.cpp#access_control_keywords"},{"include":"#block"},{"include":"#static_assert"},{"include":"#assembly"},{"include":"#function_pointer"},{"include":"#evaluation_context"}],"repository":{"alignas_attribute":{"begin":"alignas\\\\(","beginCaptures":{"0":{"name":"punctuation.section.attribute.begin.cpp"}},"end":"\\\\)|(?=(?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|%|\\"|\\\\.|=|::|\\\\||\\\\-\\\\-|\\\\-\\\\-\\\\-)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.italic.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|em|e))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.bold.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]b)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.inline.raw.string.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:c|p))\\\\s+(\\\\S+)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"patterns":[{"match":"in|out","name":"keyword.other.parameter.direction.$0.cpp"}]},"3":{"patterns":[{"match":"(?|%|\\"|\\\\.|=|::|\\\\||\\\\-\\\\-|\\\\-\\\\-\\\\-)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.italic.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|em|e))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.bold.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]b)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.inline.raw.string.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:c|p))\\\\s+(\\\\S+)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"patterns":[{"match":"in|out","name":"keyword.other.parameter.direction.$0.cpp"}]},"3":{"patterns":[{"match":"(?|%|\\"|\\\\.|=|::|\\\\||\\\\-\\\\-|\\\\-\\\\-\\\\-)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.italic.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|em|e))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.bold.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]b)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.inline.raw.string.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:c|p))\\\\s+(\\\\S+)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"patterns":[{"match":"in|out","name":"keyword.other.parameter.direction.$0.cpp"}]},"3":{"patterns":[{"match":"(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.call.initializer.cpp"},"2":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"3":{},"4":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"5":{"name":"comment.block.cpp"},"6":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"7":{"name":"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"}},"contentName":"meta.parameter.initialization","end":"\\\\)|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)(((?>(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.call.initializer.cpp"},"2":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"3":{},"4":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"5":{"name":"comment.block.cpp"},"6":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"7":{"name":"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"}},"contentName":"meta.parameter.initialization","end":"\\\\)|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(\\\\{)","beginCaptures":{"1":{"name":"meta.qualified_type.cpp","patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"},{"match":"(?|(?=(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)(((?>(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::))?(?:\\\\s+)?((?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)\\\\b(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"source.cpp#scope_resolution_function_call_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.function.call.cpp"},"6":{"patterns":[{"include":"source.cpp#inline_comment"}]},"7":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"8":{"name":"comment.block.cpp"},"9":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"10":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"11":{},"12":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"13":{"name":"comment.block.cpp"},"14":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"15":{"name":"punctuation.section.arguments.begin.bracket.round.function.call.cpp"}},"end":"\\\\)|(?=(?|\\\\*\\\\/))\\\\s*+(?:((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)\\\\b(?|(?=(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))|(?=(?|(?=(?)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(\\\\s*+((?:(?:(?:\\\\[\\\\[.*?\\\\]\\\\]|__attribute(?:__)?\\\\s*\\\\(\\\\s*\\\\(.*?\\\\)\\\\s*\\\\))|__declspec\\\\(.*?\\\\))|alignas\\\\(.*?\\\\))(?!\\\\)))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:((?:::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))"},{"include":"$self"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(\\\\()(\\\\*)(?:\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\s+)?(?:(\\\\[)(\\\\w*)(\\\\])(?:\\\\s+)?)*(\\\\))(?:\\\\s+)?(\\\\()","beginCaptures":{"1":{"name":"meta.qualified_type.cpp","patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"},{"match":"(?|(?=(?]|\\\\n)(?!\\\\()|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(\\\\()(\\\\*)(?:\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\s+)?(?:(\\\\[)(\\\\w*)(\\\\])(?:\\\\s+)?)*(\\\\))(?:\\\\s+)?(\\\\()","beginCaptures":{"1":{"name":"meta.qualified_type.cpp","patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"},{"match":"(?|(?=(?]|\\\\n)(?!\\\\()|(?=(?|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))"}]},"lambdas":{"begin":"(?:(?<=[^\\\\s]|^)(?])|(?<=\\\\Wreturn|^return))(?:\\\\s+)?(\\\\[(?!\\\\[| *+\\"| *+\\\\d))((?:[^\\\\[\\\\]]|((??)++\\\\]))*+)(\\\\](?!((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))[\\\\[\\\\];=]))","beginCaptures":{"1":{"name":"punctuation.definition.capture.begin.lambda.cpp"},"2":{"name":"meta.lambda.capture.cpp","patterns":[{"include":"source.cpp#the_this_keyword"},{"captures":{"1":{"name":"variable.parameter.capture.cpp"},"2":{"patterns":[{"include":"source.cpp#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"name":"punctuation.separator.delimiter.comma.cpp"},"7":{"name":"keyword.operator.assignment.cpp"}},"match":"((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:(?=\\\\]|\\\\z|$)|(,))|(\\\\=))"},{"include":"#evaluation_context"}]},"3":{},"4":{"name":"punctuation.definition.capture.end.lambda.cpp"},"5":{"patterns":[{"include":"source.cpp#inline_comment"}]},"6":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"7":{"name":"comment.block.cpp"},"8":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"end":"(?<=[;}])|(?=(?","beginCaptures":{"0":{"name":"punctuation.definition.lambda.return-type.cpp"}},"end":"(?=\\\\{)|(?=(?\\\\*|->)))((?:(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*(?:\\\\s+)?(?:(?:\\\\.\\\\*|\\\\.)|(?:->\\\\*|->))(?:\\\\s+)?)*)(?:\\\\s+)?(~?(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)(?:\\\\s+)?(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"source.cpp#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"5":{"name":"variable.language.this.cpp"},"6":{"name":"variable.other.object.access.cpp"},"7":{"name":"punctuation.separator.dot-access.cpp"},"8":{"name":"punctuation.separator.pointer-access.cpp"},"9":{"patterns":[{"captures":{"1":{"patterns":[{"include":"source.cpp#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"5":{"name":"variable.language.this.cpp"},"6":{"name":"variable.other.object.property.cpp"},"7":{"name":"punctuation.separator.dot-access.cpp"},"8":{"name":"punctuation.separator.pointer-access.cpp"}},"match":"(?<=(?:\\\\.\\\\*|\\\\.|->|->\\\\*))(?:\\\\s+)?(?:((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?\\\\*|->)))"},{"captures":{"1":{"patterns":[{"include":"source.cpp#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"5":{"name":"variable.language.this.cpp"},"6":{"name":"variable.other.object.access.cpp"},"7":{"name":"punctuation.separator.dot-access.cpp"},"8":{"name":"punctuation.separator.pointer-access.cpp"}},"match":"(?:((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?\\\\*|->)))"},{"include":"source.cpp#member_access"},{"include":"#method_access"}]},"10":{"name":"entity.name.function.member.cpp"},"11":{"name":"punctuation.section.arguments.begin.bracket.round.function.member.cpp"}},"end":"\\\\)|(?=(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)(?:\\\\s+)?((?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)(operator)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)(?:(?:((?:(?:delete\\\\[\\\\])|(?:delete)|(?:new\\\\[\\\\])|(?:<=>)|(?:<<=)|(?:new)|(?:>>=)|(?:\\\\->\\\\*)|(?:\\\\/=)|(?:%=)|(?:&=)|(?:>=)|(?:\\\\|=)|(?:\\\\+\\\\+)|(?:\\\\-\\\\-)|(?:\\\\(\\\\))|(?:\\\\[\\\\])|(?:\\\\->)|(?:\\\\+\\\\+)|(?:<<)|(?:>>)|(?:\\\\-\\\\-)|(?:<=)|(?:\\\\^=)|(?:==)|(?:!=)|(?:&&)|(?:\\\\|\\\\|)|(?:\\\\+=)|(?:\\\\-=)|(?:\\\\*=)|,|\\\\+|\\\\-|!|~|\\\\*|&|\\\\*|\\\\/|%|\\\\+|\\\\-|<|>|&|\\\\^|\\\\||=))|((?|(?=(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.cpp"},{"match":"<<|>>","name":"keyword.operator.bitwise.shift.cpp"},{"match":"!=|<=|>=|==|<|>","name":"keyword.operator.comparison.cpp"},{"match":"&&|!|\\\\|\\\\|","name":"keyword.operator.logical.cpp"},{"match":"&|\\\\||\\\\^|~","name":"keyword.operator.bitwise.cpp"},{"include":"source.cpp#assignment_operator"},{"match":"%|\\\\*|\\\\/|-|\\\\+","name":"keyword.operator.arithmetic.cpp"},{"include":"#ternary_operator"}]},"parameter":{"begin":"((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?=\\\\w)","beginCaptures":{"1":{"patterns":[{"include":"source.cpp#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"end":"(?:(?=\\\\))|(,))|(?=(?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|(?=(?|(?=(?|(?=(?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(\\\\()(\\\\*)(?:\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\s+)?(?:(\\\\[)(\\\\w*)(\\\\])(?:\\\\s+)?)*(\\\\))(?:\\\\s+)?(\\\\()","beginCaptures":{"1":{"name":"meta.qualified_type.cpp","patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"},{"match":"(?|(?=(?]|\\\\n)(?!\\\\()|(?=(?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))|(?=(?|\\\\?\\\\?>|(?=(?|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)|(?=(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)?((?Zo});var Tte,Zo,VA=_(()=>{QN();Fg();Ho();Nn();Tte=Object.freeze(JSON.parse(`{"displayName":"C++","name":"cpp","patterns":[{"include":"#ever_present_context"},{"include":"#constructor_root"},{"include":"#destructor_root"},{"include":"#function_definition"},{"include":"#operator_overload"},{"include":"#using_namespace"},{"include":"#type_alias"},{"include":"#using_name"},{"include":"#namespace_alias"},{"include":"#namespace_block"},{"include":"#extern_block"},{"include":"#typedef_class"},{"include":"#typedef_struct"},{"include":"#typedef_union"},{"include":"#misc_keywords"},{"include":"#standard_declares"},{"include":"#class_block"},{"include":"#struct_block"},{"include":"#union_block"},{"include":"#enum_block"},{"include":"#template_isolated_definition"},{"include":"#template_definition"},{"include":"#template_explicit_instantiation"},{"include":"#access_control_keywords"},{"include":"#block"},{"include":"#static_assert"},{"include":"#assembly"},{"include":"#function_pointer"},{"include":"#evaluation_context"}],"repository":{"access_control_keywords":{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"3":{"name":"storage.type.modifier.access.control.$4.cpp"},"4":{},"5":{"name":"punctuation.separator.colon.access.control.cpp"}},"match":"((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(((?:(?:protected)|(?:private)|(?:public)))(?:\\\\s+)?(:))"},"alignas_attribute":{"begin":"alignas\\\\(","beginCaptures":{"0":{"name":"punctuation.section.attribute.begin.cpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.attribute.end.cpp"}},"name":"support.other.attribute.cpp","patterns":[{"include":"#attributes_context"},{"begin":"\\\\(","beginCaptures":{},"end":"\\\\)","endCaptures":{},"patterns":[{"include":"#attributes_context"},{"include":"#string_context"},{"include":"#ever_present_context"}]},{"captures":{"1":{"name":"keyword.other.using.directive.cpp"},"2":{"name":"entity.name.namespace.cpp"}},"match":"(using)\\\\s+((?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))","endCaptures":{"1":{"name":"punctuation.terminator.statement.cpp"},"2":{"name":"punctuation.terminator.statement.cpp"}},"name":"meta.block.class.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.class.cpp"}},"name":"meta.head.class.cpp","patterns":[{"include":"#ever_present_context"},{"include":"#inheritance_context"},{"include":"#template_call_range"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.class.cpp"}},"name":"meta.body.class.cpp","patterns":[{"include":"#function_pointer"},{"include":"#static_assert"},{"include":"#constructor_inline"},{"include":"#destructor_inline"},{"include":"$self"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.class.cpp","patterns":[{"include":"$self"}]}]},"class_declare":{"captures":{"1":{"name":"storage.type.class.declare.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"4":{"name":"entity.name.type.class.cpp"},"5":{"patterns":[{"match":"\\\\*","name":"storage.modifier.pointer.cpp"},{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"(?:\\\\&((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))){2,}\\\\&","name":"invalid.illegal.reference-type.cpp"},{"match":"\\\\&","name":"storage.modifier.reference.cpp"}]},"6":{"patterns":[{"include":"#inline_comment"}]},"7":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"8":{"patterns":[{"include":"#inline_comment"}]},"9":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"10":{"patterns":[{"include":"#inline_comment"}]},"11":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"12":{"name":"variable.other.object.declare.cpp"},"13":{"patterns":[{"include":"#inline_comment"}]},"14":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]}},"match":"((?|%|\\"|\\\\.|=|::|\\\\||\\\\-\\\\-|\\\\-\\\\-\\\\-)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.italic.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|em|e))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.bold.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]b)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.inline.raw.string.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:c|p))\\\\s+(\\\\S+)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"patterns":[{"match":"in|out","name":"keyword.other.parameter.direction.$0.cpp"}]},"3":{"patterns":[{"match":"(?|%|\\"|\\\\.|=|::|\\\\||\\\\-\\\\-|\\\\-\\\\-\\\\-)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.italic.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|em|e))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.bold.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]b)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.inline.raw.string.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:c|p))\\\\s+(\\\\S+)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"patterns":[{"match":"in|out","name":"keyword.other.parameter.direction.$0.cpp"}]},"3":{"patterns":[{"match":"(?|%|\\"|\\\\.|=|::|\\\\||\\\\-\\\\-|\\\\-\\\\-\\\\-)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.italic.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|em|e))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.bold.doxygen.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]b)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"name":"markup.inline.raw.string.cpp"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:c|p))\\\\s+(\\\\S+)"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"match":"(?<=[\\\\s*!\\\\/])[\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\b(?:\\\\{[^}]*\\\\})?","name":"storage.type.class.doxygen.cpp"},{"captures":{"1":{"name":"storage.type.class.doxygen.cpp"},"2":{"patterns":[{"match":"in|out","name":"keyword.other.parameter.direction.$0.cpp"}]},"3":{"patterns":[{"match":"(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))","endCaptures":{},"name":"meta.function.definition.special.constructor.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.function.definition.special.constructor.cpp"}},"name":"meta.head.function.definition.special.constructor.cpp","patterns":[{"include":"#ever_present_context"},{"captures":{"1":{"name":"keyword.operator.assignment.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"name":"keyword.other.default.function.cpp keyword.other.default.constructor.cpp"},"7":{"name":"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp"}},"match":"(\\\\=)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(default)|(delete))"},{"include":"#functional_specifiers_pre_parameters"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.initializers.cpp"}},"end":"(?=\\\\{)","endCaptures":{},"patterns":[{"begin":"((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.call.initializer.cpp"},"2":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"3":{},"4":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"5":{"name":"comment.block.cpp"},"6":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"7":{"name":"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"}},"contentName":"meta.parameter.initialization","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp"}},"patterns":[{"include":"#evaluation_context"}]},{"begin":"((?|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.function.definition.special.constructor.cpp"}},"name":"meta.body.function.definition.special.constructor.cpp","patterns":[{"include":"#function_body_context"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.function.definition.special.constructor.cpp","patterns":[{"include":"$self"}]}]},"constructor_root":{"begin":"\\\\s*+((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)(((?>(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))","endCaptures":{},"name":"meta.function.definition.special.constructor.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.function.definition.special.constructor.cpp"}},"name":"meta.head.function.definition.special.constructor.cpp","patterns":[{"include":"#ever_present_context"},{"captures":{"1":{"name":"keyword.operator.assignment.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"name":"keyword.other.default.function.cpp keyword.other.default.constructor.cpp"},"7":{"name":"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp"}},"match":"(\\\\=)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(default)|(delete))"},{"include":"#functional_specifiers_pre_parameters"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.initializers.cpp"}},"end":"(?=\\\\{)","endCaptures":{},"patterns":[{"begin":"((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.call.initializer.cpp"},"2":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"3":{},"4":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"5":{"name":"comment.block.cpp"},"6":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"7":{"name":"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp"}},"contentName":"meta.parameter.initialization","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp"}},"patterns":[{"include":"#evaluation_context"}]},{"begin":"((?|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.function.definition.special.constructor.cpp"}},"name":"meta.body.function.definition.special.constructor.cpp","patterns":[{"include":"#function_body_context"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.function.definition.special.constructor.cpp","patterns":[{"include":"$self"}]}]},"control_flow_keywords":{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"3":{"name":"keyword.control.$3.cpp"}},"match":"((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(\\\\{)","beginCaptures":{"1":{"name":"meta.qualified_type.cpp","patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"},{"match":"(?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"2":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"3":{"patterns":[{"include":"#inline_comment"}]},"4":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"5":{"name":"comment.block.cpp"},"6":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"7":{"patterns":[{"include":"#inline_comment"}]},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?]*(>?)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:\\\\n|$)|(?=\\\\/\\\\/)))|((\\\\\\")[^\\\\\\"]*(\\\\\\"?)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:\\\\n|$)|(?=\\\\/\\\\/))))|(((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*(?:\\\\.(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)*((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:\\\\n|$)|(?=(?:\\\\/\\\\/|;)))))|((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:\\\\n|$)|(?=(?:\\\\/\\\\/|;))))(?:\\\\s+)?(;?)","name":"meta.preprocessor.import.cpp"},"d9bc4796b0b_preprocessor_number_literal":{"captures":{"0":{"patterns":[{"begin":"(?=.)","beginCaptures":{},"end":"$","endCaptures":{},"patterns":[{"captures":{"1":{"name":"keyword.other.unit.hexadecimal.cpp"},"2":{"name":"constant.numeric.hexadecimal.cpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.cpp"}]},"3":{"name":"punctuation.separator.constant.numeric.cpp"},"4":{"name":"constant.numeric.hexadecimal.cpp"},"5":{"name":"constant.numeric.hexadecimal.cpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.cpp"}]},"6":{"name":"punctuation.separator.constant.numeric.cpp"},"7":{"name":"keyword.other.unit.exponent.hexadecimal.cpp"},"8":{"name":"keyword.operator.plus.exponent.hexadecimal.cpp"},"9":{"name":"keyword.operator.minus.exponent.hexadecimal.cpp"},"10":{"name":"constant.numeric.exponent.hexadecimal.cpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.cpp"}]},"11":{"name":"keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp"}},"match":"(\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9a-fA-F])\\\\.|\\\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))","endCaptures":{},"name":"meta.function.definition.special.member.destructor.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.function.definition.special.member.destructor.cpp"}},"name":"meta.head.function.definition.special.member.destructor.cpp","patterns":[{"include":"#ever_present_context"},{"captures":{"1":{"name":"keyword.operator.assignment.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"name":"keyword.other.default.function.cpp keyword.other.default.constructor.cpp keyword.other.default.destructor.cpp"},"7":{"name":"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp keyword.other.delete.destructor.cpp"}},"match":"(\\\\=)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(default)|(delete))"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parameters.begin.bracket.round.special.member.destructor.cpp"}},"contentName":"meta.function.definition.parameters.special.member.destructor","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parameters.end.bracket.round.special.member.destructor.cpp"}},"patterns":[]},{"include":"#qualifiers_and_specifiers_post_parameters"},{"include":"$self"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.function.definition.special.member.destructor.cpp"}},"name":"meta.body.function.definition.special.member.destructor.cpp","patterns":[{"include":"#function_body_context"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.function.definition.special.member.destructor.cpp","patterns":[{"include":"$self"}]}]},"destructor_root":{"begin":"((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)(((?>(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))","endCaptures":{},"name":"meta.function.definition.special.member.destructor.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.function.definition.special.member.destructor.cpp"}},"name":"meta.head.function.definition.special.member.destructor.cpp","patterns":[{"include":"#ever_present_context"},{"captures":{"1":{"name":"keyword.operator.assignment.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"name":"keyword.other.default.function.cpp keyword.other.default.constructor.cpp keyword.other.default.destructor.cpp"},"7":{"name":"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp keyword.other.delete.destructor.cpp"}},"match":"(\\\\=)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(default)|(delete))"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parameters.begin.bracket.round.special.member.destructor.cpp"}},"contentName":"meta.function.definition.parameters.special.member.destructor","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parameters.end.bracket.round.special.member.destructor.cpp"}},"patterns":[]},{"include":"#qualifiers_and_specifiers_post_parameters"},{"include":"$self"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.function.definition.special.member.destructor.cpp"}},"name":"meta.body.function.definition.special.member.destructor.cpp","patterns":[{"include":"#function_body_context"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.function.definition.special.member.destructor.cpp","patterns":[{"include":"$self"}]}]},"diagnostic":{"begin":"(^((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(#)(?:\\\\s+)?((?:error|warning)))\\\\b(?:\\\\s+)?","beginCaptures":{"1":{"name":"keyword.control.directive.diagnostic.$7.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"name":"punctuation.definition.directive.cpp"},"7":{}},"end":"(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::))?(?:\\\\s+)?((?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))","endCaptures":{"1":{"name":"punctuation.terminator.statement.cpp"},"2":{"name":"punctuation.terminator.statement.cpp"}},"name":"meta.block.enum.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.enum.cpp"}},"name":"meta.head.enum.cpp","patterns":[{"include":"$self"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.enum.cpp"}},"name":"meta.body.enum.cpp","patterns":[{"include":"#ever_present_context"},{"include":"#enumerator_list"},{"include":"#comments"},{"include":"#comma"},{"include":"#semicolon"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.enum.cpp","patterns":[{"include":"$self"}]}]},"enum_declare":{"captures":{"1":{"name":"storage.type.enum.declare.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"4":{"name":"entity.name.type.enum.cpp"},"5":{"patterns":[{"match":"\\\\*","name":"storage.modifier.pointer.cpp"},{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"(?:\\\\&((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))){2,}\\\\&","name":"invalid.illegal.reference-type.cpp"},{"match":"\\\\&","name":"storage.modifier.reference.cpp"}]},"6":{"patterns":[{"include":"#inline_comment"}]},"7":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"8":{"patterns":[{"include":"#inline_comment"}]},"9":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"10":{"patterns":[{"include":"#inline_comment"}]},"11":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"12":{"name":"variable.other.object.declare.cpp"},"13":{"patterns":[{"include":"#inline_comment"}]},"14":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]}},"match":"((?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))","endCaptures":{"1":{"name":"punctuation.terminator.statement.cpp"},"2":{"name":"punctuation.terminator.statement.cpp"}},"name":"meta.block.extern.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.extern.cpp"}},"name":"meta.head.extern.cpp","patterns":[{"include":"$self"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.extern.cpp"}},"name":"meta.body.extern.cpp","patterns":[{"include":"$self"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.extern.cpp","patterns":[{"include":"$self"}]},{"include":"$self"}]},"function_body_context":{"patterns":[{"include":"#ever_present_context"},{"include":"#using_namespace"},{"include":"#type_alias"},{"include":"#using_name"},{"include":"#namespace_alias"},{"include":"#typedef_class"},{"include":"#typedef_struct"},{"include":"#typedef_union"},{"include":"#misc_keywords"},{"include":"#standard_declares"},{"include":"#class_block"},{"include":"#struct_block"},{"include":"#union_block"},{"include":"#enum_block"},{"include":"#access_control_keywords"},{"include":"#block"},{"include":"#static_assert"},{"include":"#assembly"},{"include":"#function_pointer"},{"include":"#switch_statement"},{"include":"#goto_statement"},{"include":"#evaluation_context"},{"include":"#label"}]},"function_call":{"begin":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)\\\\b(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#scope_resolution_function_call_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.function.call.cpp"},"6":{"patterns":[{"include":"#inline_comment"}]},"7":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"8":{"name":"comment.block.cpp"},"9":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"10":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"11":{},"12":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"13":{"name":"comment.block.cpp"},"14":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"15":{"name":"punctuation.section.arguments.begin.bracket.round.function.call.cpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.function.call.cpp"}},"patterns":[{"include":"#evaluation_context"}]},"function_definition":{"begin":"(?:(?:^|\\\\G|(?<=;|\\\\}))|(?<=>|\\\\*\\\\/))\\\\s*+(?:((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)\\\\b(?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"14":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"15":{"patterns":[{"include":"#inline_comment"}]},"16":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"17":{"name":"comment.block.cpp"},"18":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"19":{"patterns":[{"include":"#inline_comment"}]},"20":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"21":{"name":"comment.block.cpp"},"22":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"23":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))","endCaptures":{},"name":"meta.function.definition.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.function.definition.cpp"}},"name":"meta.head.function.definition.cpp","patterns":[{"include":"#ever_present_context"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parameters.begin.bracket.round.cpp"}},"contentName":"meta.function.definition.parameters","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parameters.end.bracket.round.cpp"}},"patterns":[{"include":"#ever_present_context"},{"include":"#parameter_or_maybe_value"},{"include":"#comma"},{"include":"#evaluation_context"}]},{"captures":{"1":{"name":"punctuation.definition.function.return-type.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"name":"meta.qualified_type.cpp","patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"},{"match":"(?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"7":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"8":{"patterns":[{"include":"#inline_comment"}]},"9":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"10":{"name":"comment.block.cpp"},"11":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"12":{"patterns":[{"include":"#inline_comment"}]},"13":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"14":{"name":"comment.block.cpp"},"15":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"16":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(\\\\s*+((?:(?:(?:\\\\[\\\\[.*?\\\\]\\\\]|__attribute(?:__)?\\\\s*\\\\(\\\\s*\\\\(.*?\\\\)\\\\s*\\\\))|__declspec\\\\(.*?\\\\))|alignas\\\\(.*?\\\\))(?!\\\\)))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:((?:::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))"},{"include":"$self"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.function.definition.cpp"}},"name":"meta.body.function.definition.cpp","patterns":[{"include":"#function_body_context"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.function.definition.cpp","patterns":[{"include":"$self"}]}]},"function_parameter_context":{"patterns":[{"include":"#ever_present_context"},{"include":"#parameter"},{"include":"#comma"}]},"function_pointer":{"begin":"(\\\\s*+((?:(?:(?:\\\\[\\\\[.*?\\\\]\\\\]|__attribute(?:__)?\\\\s*\\\\(\\\\s*\\\\(.*?\\\\)\\\\s*\\\\))|__declspec\\\\(.*?\\\\))|alignas\\\\(.*?\\\\))(?!\\\\)))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:((?:::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(\\\\()(\\\\*)(?:\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\s+)?(?:(\\\\[)(\\\\w*)(\\\\])(?:\\\\s+)?)*(\\\\))(?:\\\\s+)?(\\\\()","beginCaptures":{"1":{"name":"meta.qualified_type.cpp","patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"},{"match":"(?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"2":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"3":{"patterns":[{"include":"#inline_comment"}]},"4":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"5":{"name":"comment.block.cpp"},"6":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"7":{"patterns":[{"include":"#inline_comment"}]},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?]|\\\\n)(?!\\\\()","endCaptures":{"1":{"name":"punctuation.section.parameters.end.bracket.round.function.pointer.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"patterns":[{"include":"#function_parameter_context"}]},"function_pointer_parameter":{"begin":"(\\\\s*+((?:(?:(?:\\\\[\\\\[.*?\\\\]\\\\]|__attribute(?:__)?\\\\s*\\\\(\\\\s*\\\\(.*?\\\\)\\\\s*\\\\))|__declspec\\\\(.*?\\\\))|alignas\\\\(.*?\\\\))(?!\\\\)))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:((?:::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(\\\\()(\\\\*)(?:\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\s+)?(?:(\\\\[)(\\\\w*)(\\\\])(?:\\\\s+)?)*(\\\\))(?:\\\\s+)?(\\\\()","beginCaptures":{"1":{"name":"meta.qualified_type.cpp","patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"},{"match":"(?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"2":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"3":{"patterns":[{"include":"#inline_comment"}]},"4":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"5":{"name":"comment.block.cpp"},"6":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"7":{"patterns":[{"include":"#inline_comment"}]},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?]|\\\\n)(?!\\\\()","endCaptures":{"1":{"name":"punctuation.section.parameters.end.bracket.round.function.pointer.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"patterns":[{"include":"#function_parameter_context"}]},"functional_specifiers_pre_parameters":{"match":"(?]*(>?)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:\\\\n|$)|(?=\\\\/\\\\/)))|((\\\\\\")[^\\\\\\"]*(\\\\\\"?)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:\\\\n|$)|(?=\\\\/\\\\/))))|(((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*(?:\\\\.(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)*((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:\\\\n|$)|(?=(?:\\\\/\\\\/|;)))))|((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:\\\\n|$)|(?=(?:\\\\/\\\\/|;))))","name":"meta.preprocessor.include.cpp"},"inheritance_context":{"patterns":[{"include":"#ever_present_context"},{"match":",","name":"punctuation.separator.delimiter.comma.inheritance.cpp"},{"match":"(?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"2":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"3":{"patterns":[{"include":"#inline_comment"}]},"4":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"5":{"patterns":[{"include":"#inline_comment"}]},"6":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"7":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))"}]},"inline_builtin_storage_type":{"captures":{"1":{"name":"storage.type.primitive.cpp storage.type.built-in.primitive.cpp"},"2":{"name":"storage.type.cpp storage.type.built-in.cpp"},"3":{"name":"support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp"},"4":{"name":"support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp"}},"match":"\\\\s*+(?])|(?<=\\\\Wreturn|^return))(?:\\\\s+)?(\\\\[(?!\\\\[| *+\\"| *+\\\\d))((?:[^\\\\[\\\\]]|((??)++\\\\]))*+)(\\\\](?!((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))[\\\\[\\\\];=]))","beginCaptures":{"1":{"name":"punctuation.definition.capture.begin.lambda.cpp"},"2":{"name":"meta.lambda.capture.cpp","patterns":[{"include":"#the_this_keyword"},{"captures":{"1":{"name":"variable.parameter.capture.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"name":"punctuation.separator.delimiter.comma.cpp"},"7":{"name":"keyword.operator.assignment.cpp"}},"match":"((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:(?=\\\\]|\\\\z|$)|(,))|(\\\\=))"},{"include":"#evaluation_context"}]},"3":{},"4":{"name":"punctuation.definition.capture.end.lambda.cpp"},"5":{"patterns":[{"include":"#inline_comment"}]},"6":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"7":{"name":"comment.block.cpp"},"8":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"end":"(?<=[;}])","endCaptures":{},"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.lambda.cpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.lambda.cpp"}},"name":"meta.function.definition.parameters.lambda.cpp","patterns":[{"include":"#function_parameter_context"}]},{"match":"(?","beginCaptures":{"0":{"name":"punctuation.definition.lambda.return-type.cpp"}},"end":"(?=\\\\{)","endCaptures":{},"patterns":[{"include":"#comments"},{"match":"\\\\S+","name":"storage.type.return-type.lambda.cpp"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.lambda.cpp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.lambda.cpp"}},"name":"meta.function.definition.body.lambda.cpp","patterns":[{"include":"$self"}]}]},"language_constants":{"match":"(?|->\\\\*))(?:\\\\s+)?(?:((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?\\\\*|->)))"},{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"5":{"name":"variable.language.this.cpp"},"6":{"name":"variable.other.object.access.cpp"},"7":{"name":"punctuation.separator.dot-access.cpp"},"8":{"name":"punctuation.separator.pointer-access.cpp"}},"match":"(?:((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?\\\\*|->)))"},{"include":"#member_access"},{"include":"#method_access"}]},"8":{"name":"variable.other.property.cpp"}},"match":"(?:((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?\\\\*|->)))((?:(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*(?:\\\\s+)?(?:(?:\\\\.\\\\*|\\\\.)|(?:->\\\\*|->))(?:\\\\s+)?)*)(?:\\\\s+)?(\\\\b(?!uint_least32_t[^\\\\w]|uint_least16_t[^\\\\w]|uint_least64_t[^\\\\w]|int_least32_t[^\\\\w]|int_least64_t[^\\\\w]|uint_fast32_t[^\\\\w]|uint_fast64_t[^\\\\w]|uint_least8_t[^\\\\w]|uint_fast16_t[^\\\\w]|int_least16_t[^\\\\w]|int_fast16_t[^\\\\w]|int_least8_t[^\\\\w]|uint_fast8_t[^\\\\w]|int_fast64_t[^\\\\w]|int_fast32_t[^\\\\w]|int_fast8_t[^\\\\w]|suseconds_t[^\\\\w]|useconds_t[^\\\\w]|in_addr_t[^\\\\w]|uintmax_t[^\\\\w]|uintmax_t[^\\\\w]|uintmax_t[^\\\\w]|in_port_t[^\\\\w]|uintptr_t[^\\\\w]|blksize_t[^\\\\w]|uint32_t[^\\\\w]|uint64_t[^\\\\w]|u_quad_t[^\\\\w]|intmax_t[^\\\\w]|intmax_t[^\\\\w]|unsigned[^\\\\w]|blkcnt_t[^\\\\w]|uint16_t[^\\\\w]|intptr_t[^\\\\w]|swblk_t[^\\\\w]|wchar_t[^\\\\w]|u_short[^\\\\w]|qaddr_t[^\\\\w]|caddr_t[^\\\\w]|daddr_t[^\\\\w]|fixpt_t[^\\\\w]|nlink_t[^\\\\w]|segsz_t[^\\\\w]|clock_t[^\\\\w]|ssize_t[^\\\\w]|int16_t[^\\\\w]|int32_t[^\\\\w]|int64_t[^\\\\w]|uint8_t[^\\\\w]|int8_t[^\\\\w]|mode_t[^\\\\w]|quad_t[^\\\\w]|ushort[^\\\\w]|u_long[^\\\\w]|u_char[^\\\\w]|double[^\\\\w]|signed[^\\\\w]|time_t[^\\\\w]|size_t[^\\\\w]|key_t[^\\\\w]|div_t[^\\\\w]|ino_t[^\\\\w]|uid_t[^\\\\w]|gid_t[^\\\\w]|off_t[^\\\\w]|pid_t[^\\\\w]|float[^\\\\w]|dev_t[^\\\\w]|u_int[^\\\\w]|short[^\\\\w]|bool[^\\\\w]|id_t[^\\\\w]|uint[^\\\\w]|long[^\\\\w]|char[^\\\\w]|void[^\\\\w]|auto[^\\\\w]|id_t[^\\\\w]|int[^\\\\w])(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b(?!\\\\())"},"memory_operators":{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"3":{"name":"keyword.operator.wordlike.cpp"},"4":{"name":"keyword.operator.delete.array.cpp"},"5":{"name":"keyword.operator.delete.array.bracket.cpp"},"6":{"name":"keyword.operator.delete.cpp"},"7":{"name":"keyword.operator.new.cpp"}},"match":"((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:(?:(delete)(?:\\\\s+)?(\\\\[\\\\])|(delete))|(new))(?!\\\\w))"},"method_access":{"begin":"(?:((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?\\\\*|->)))((?:(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*(?:\\\\s+)?(?:(?:\\\\.\\\\*|\\\\.)|(?:->\\\\*|->))(?:\\\\s+)?)*)(?:\\\\s+)?(~?(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)(?:\\\\s+)?(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"5":{"name":"variable.language.this.cpp"},"6":{"name":"variable.other.object.access.cpp"},"7":{"name":"punctuation.separator.dot-access.cpp"},"8":{"name":"punctuation.separator.pointer-access.cpp"},"9":{"patterns":[{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"5":{"name":"variable.language.this.cpp"},"6":{"name":"variable.other.object.property.cpp"},"7":{"name":"punctuation.separator.dot-access.cpp"},"8":{"name":"punctuation.separator.pointer-access.cpp"}},"match":"(?<=(?:\\\\.\\\\*|\\\\.|->|->\\\\*))(?:\\\\s+)?(?:((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?\\\\*|->)))"},{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"5":{"name":"variable.language.this.cpp"},"6":{"name":"variable.other.object.access.cpp"},"7":{"name":"punctuation.separator.dot-access.cpp"},"8":{"name":"punctuation.separator.pointer-access.cpp"}},"match":"(?:((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?\\\\*|->)))"},{"include":"#member_access"},{"include":"#method_access"}]},"10":{"name":"entity.name.function.member.cpp"},"11":{"name":"punctuation.section.arguments.begin.bracket.round.function.member.cpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.function.member.cpp"}},"patterns":[{"include":"#evaluation_context"}]},"misc_keywords":{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"3":{"name":"keyword.other.$3.cpp"}},"match":"((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)(?:\\\\s+)?((?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))","endCaptures":{},"name":"meta.block.namespace.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.namespace.cpp"}},"name":"meta.head.namespace.cpp","patterns":[{"include":"#ever_present_context"},{"include":"#attributes_context"},{"captures":{"1":{"patterns":[{"include":"#scope_resolution_namespace_block_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.namespace.cpp"},"6":{"name":"punctuation.separator.scope-resolution.namespace.block.cpp"},"7":{"name":"storage.modifier.inline.cpp"}},"match":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)(?:\\\\s+)?((?|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.namespace.cpp"}},"name":"meta.body.namespace.cpp","patterns":[{"include":"$self"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.namespace.cpp","patterns":[{"include":"$self"}]}]},"noexcept_operator":{"begin":"((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)(operator)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?:::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)(?:(?:((?:(?:delete\\\\[\\\\])|(?:delete)|(?:new\\\\[\\\\])|(?:<=>)|(?:<<=)|(?:new)|(?:>>=)|(?:\\\\->\\\\*)|(?:\\\\/=)|(?:%=)|(?:&=)|(?:>=)|(?:\\\\|=)|(?:\\\\+\\\\+)|(?:\\\\-\\\\-)|(?:\\\\(\\\\))|(?:\\\\[\\\\])|(?:\\\\->)|(?:\\\\+\\\\+)|(?:<<)|(?:>>)|(?:\\\\-\\\\-)|(?:<=)|(?:\\\\^=)|(?:==)|(?:!=)|(?:&&)|(?:\\\\|\\\\|)|(?:\\\\+=)|(?:\\\\-=)|(?:\\\\*=)|,|\\\\+|\\\\-|!|~|\\\\*|&|\\\\*|\\\\/|%|\\\\+|\\\\-|<|>|&|\\\\^|\\\\||=))|((?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"6":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"7":{"patterns":[{"include":"#inline_comment"}]},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"patterns":[{"include":"#inline_comment"}]},"12":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"13":{"name":"comment.block.cpp"},"14":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"15":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))","endCaptures":{},"name":"meta.function.definition.special.operator-overload.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.function.definition.special.operator-overload.cpp"}},"name":"meta.head.function.definition.special.operator-overload.cpp","patterns":[{"include":"#ever_present_context"},{"include":"#template_call_range"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parameters.begin.bracket.round.special.operator-overload.cpp"}},"contentName":"meta.function.definition.parameters.special.operator-overload","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parameters.end.bracket.round.special.operator-overload.cpp"}},"patterns":[{"include":"#function_parameter_context"},{"include":"#evaluation_context"}]},{"include":"#qualifiers_and_specifiers_post_parameters"},{"captures":{"1":{"name":"keyword.operator.assignment.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"name":"keyword.other.default.function.cpp"},"7":{"name":"keyword.other.delete.function.cpp"}},"match":"(\\\\=)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(default)|(delete))"},{"include":"$self"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.function.definition.special.operator-overload.cpp"}},"name":"meta.body.function.definition.special.operator-overload.cpp","patterns":[{"include":"#function_body_context"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.function.definition.special.operator-overload.cpp","patterns":[{"include":"$self"}]}]},"operators":{"patterns":[{"begin":"((?>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.cpp"},{"match":"<<|>>","name":"keyword.operator.bitwise.shift.cpp"},{"match":"!=|<=|>=|==|<|>","name":"keyword.operator.comparison.cpp"},{"match":"&&|!|\\\\|\\\\|","name":"keyword.operator.logical.cpp"},{"match":"&|\\\\||\\\\^|~","name":"keyword.operator.bitwise.cpp"},{"include":"#assignment_operator"},{"match":"%|\\\\*|\\\\/|-|\\\\+","name":"keyword.operator.arithmetic.cpp"},{"include":"#ternary_operator"}]},"over_qualified_types":{"patterns":[{"captures":{"1":{"name":"storage.type.struct.parameter.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"4":{"name":"entity.name.type.struct.parameter.cpp"},"5":{"patterns":[{"include":"#inline_comment"}]},"6":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"7":{"patterns":[{"match":"\\\\*","name":"storage.modifier.pointer.cpp"},{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"(?:\\\\&((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))){2,}\\\\&","name":"invalid.illegal.reference-type.cpp"},{"match":"\\\\&","name":"storage.modifier.reference.cpp"}]},"8":{"patterns":[{"include":"#inline_comment"}]},"9":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"10":{"patterns":[{"include":"#inline_comment"}]},"11":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"12":{"patterns":[{"include":"#inline_comment"}]},"13":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"14":{"name":"variable.other.object.declare.cpp"},"15":{"patterns":[{"include":"#inline_comment"}]},"16":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"17":{"patterns":[{"include":"#inline_comment"}]},"18":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"19":{"patterns":[{"include":"#inline_comment"}]},"20":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]}},"match":"(\\\\bstruct)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"1":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"4":{"patterns":[{"include":"#inline_comment"}]},"5":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"6":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.])","name":"meta.qualified_type.cpp"},"qualifiers_and_specifiers_post_parameters":{"captures":{"1":{"patterns":[{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"5":{"name":"storage.modifier.specifier.functional.post-parameters.$5.cpp"}},"match":"((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+"},"scope_resolution_function_call":{"captures":{"0":{"patterns":[{"include":"#scope_resolution_function_call_inner_generated"}]},"1":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"},"2":{"patterns":[{"include":"#template_call_range"}]}},"match":"(::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+"},"scope_resolution_function_call_inner_generated":{"captures":{"1":{"patterns":[{"include":"#scope_resolution_function_call_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.scope-resolution.function.call.cpp"},"6":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"7":{},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp"}},"match":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::)"},"scope_resolution_function_definition":{"captures":{"0":{"patterns":[{"include":"#scope_resolution_function_definition_inner_generated"}]},"1":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp"},"2":{"patterns":[{"include":"#template_call_range"}]}},"match":"(::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+"},"scope_resolution_function_definition_inner_generated":{"captures":{"1":{"patterns":[{"include":"#scope_resolution_function_definition_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.scope-resolution.function.definition.cpp"},"6":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"7":{},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp"}},"match":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::)"},"scope_resolution_function_definition_operator_overload":{"captures":{"0":{"patterns":[{"include":"#scope_resolution_function_definition_operator_overload_inner_generated"}]},"1":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp"},"2":{"patterns":[{"include":"#template_call_range"}]}},"match":"(::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+"},"scope_resolution_function_definition_operator_overload_inner_generated":{"captures":{"1":{"patterns":[{"include":"#scope_resolution_function_definition_operator_overload_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.scope-resolution.function.definition.operator-overload.cpp"},"6":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"7":{},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp"}},"match":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::)"},"scope_resolution_inner_generated":{"captures":{"1":{"patterns":[{"include":"#scope_resolution_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.scope-resolution.cpp"},"6":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"7":{},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"}},"match":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::)"},"scope_resolution_namespace_alias":{"captures":{"0":{"patterns":[{"include":"#scope_resolution_namespace_alias_inner_generated"}]},"1":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp"},"2":{"patterns":[{"include":"#template_call_range"}]}},"match":"(::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+"},"scope_resolution_namespace_alias_inner_generated":{"captures":{"1":{"patterns":[{"include":"#scope_resolution_namespace_alias_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.scope-resolution.namespace.alias.cpp"},"6":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"7":{},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp"}},"match":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::)"},"scope_resolution_namespace_block":{"captures":{"0":{"patterns":[{"include":"#scope_resolution_namespace_block_inner_generated"}]},"1":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"},"2":{"patterns":[{"include":"#template_call_range"}]}},"match":"(::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+"},"scope_resolution_namespace_block_inner_generated":{"captures":{"1":{"patterns":[{"include":"#scope_resolution_namespace_block_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.scope-resolution.namespace.block.cpp"},"6":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"7":{},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp"}},"match":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::)"},"scope_resolution_namespace_using":{"captures":{"0":{"patterns":[{"include":"#scope_resolution_namespace_using_inner_generated"}]},"1":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp"},"2":{"patterns":[{"include":"#template_call_range"}]}},"match":"(::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+"},"scope_resolution_namespace_using_inner_generated":{"captures":{"1":{"patterns":[{"include":"#scope_resolution_namespace_using_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.scope-resolution.namespace.using.cpp"},"6":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"7":{},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp"}},"match":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::)"},"scope_resolution_parameter":{"captures":{"0":{"patterns":[{"include":"#scope_resolution_parameter_inner_generated"}]},"1":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp"},"2":{"patterns":[{"include":"#template_call_range"}]}},"match":"(::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+"},"scope_resolution_parameter_inner_generated":{"captures":{"1":{"patterns":[{"include":"#scope_resolution_parameter_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.scope-resolution.parameter.cpp"},"6":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"7":{},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp"}},"match":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::)"},"scope_resolution_template_call":{"captures":{"0":{"patterns":[{"include":"#scope_resolution_template_call_inner_generated"}]},"1":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp"},"2":{"patterns":[{"include":"#template_call_range"}]}},"match":"(::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+"},"scope_resolution_template_call_inner_generated":{"captures":{"1":{"patterns":[{"include":"#scope_resolution_template_call_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.scope-resolution.template.call.cpp"},"6":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"7":{},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp"}},"match":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::)"},"scope_resolution_template_definition":{"captures":{"0":{"patterns":[{"include":"#scope_resolution_template_definition_inner_generated"}]},"1":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp"},"2":{"patterns":[{"include":"#template_call_range"}]}},"match":"(::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+"},"scope_resolution_template_definition_inner_generated":{"captures":{"1":{"patterns":[{"include":"#scope_resolution_template_definition_inner_generated"}]},"2":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp"},"3":{"patterns":[{"include":"#template_call_range"}]},"4":{},"5":{"name":"entity.name.scope-resolution.template.definition.cpp"},"6":{"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_range"}]},"7":{},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp"}},"match":"((::)?(?:(?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)((?!\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\b)(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?(::)"},"semicolon":{"match":";","name":"punctuation.terminator.statement.cpp"},"simple_type":{"captures":{"1":{"name":"meta.qualified_type.cpp","patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"},{"match":"(?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"2":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"3":{"patterns":[{"include":"#inline_comment"}]},"4":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"5":{"patterns":[{"include":"#inline_comment"}]},"6":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"7":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))(((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?"},"single_line_macro":{"captures":{"0":{"patterns":[{"include":"#macro"},{"include":"#comments"}]},"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]}},"match":"^((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))#define.*(?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))","endCaptures":{"1":{"name":"punctuation.terminator.statement.cpp"},"2":{"name":"punctuation.terminator.statement.cpp"}},"name":"meta.block.struct.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.struct.cpp"}},"name":"meta.head.struct.cpp","patterns":[{"include":"#ever_present_context"},{"include":"#inheritance_context"},{"include":"#template_call_range"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.struct.cpp"}},"name":"meta.body.struct.cpp","patterns":[{"include":"#function_pointer"},{"include":"#static_assert"},{"include":"#constructor_inline"},{"include":"#destructor_inline"},{"include":"$self"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.struct.cpp","patterns":[{"include":"$self"}]}]},"struct_declare":{"captures":{"1":{"name":"storage.type.struct.declare.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"4":{"name":"entity.name.type.struct.cpp"},"5":{"patterns":[{"match":"\\\\*","name":"storage.modifier.pointer.cpp"},{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"(?:\\\\&((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))){2,}\\\\&","name":"invalid.illegal.reference-type.cpp"},{"match":"\\\\&","name":"storage.modifier.reference.cpp"}]},"6":{"patterns":[{"include":"#inline_comment"}]},"7":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"8":{"patterns":[{"include":"#inline_comment"}]},"9":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"10":{"patterns":[{"include":"#inline_comment"}]},"11":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"12":{"name":"variable.other.object.declare.cpp"},"13":{"patterns":[{"include":"#inline_comment"}]},"14":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]}},"match":"((?|\\\\?\\\\?>)|(?=[;>\\\\[\\\\]=]))","endCaptures":{},"name":"meta.block.switch.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.switch.cpp"}},"name":"meta.head.switch.cpp","patterns":[{"include":"#switch_conditional_parentheses"},{"include":"$self"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.switch.cpp"}},"name":"meta.body.switch.cpp","patterns":[{"include":"#default_statement"},{"include":"#case_statement"},{"include":"$self"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.switch.cpp","patterns":[{"include":"$self"}]}]},"template_argument_defaulted":{"captures":{"1":{"name":"storage.type.template.argument.$1.cpp"},"2":{"name":"entity.name.type.template.cpp"},"3":{"name":"keyword.operator.assignment.cpp"}},"match":"(?<=<|,)(?:\\\\s+)?((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)\\\\s+((?:(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\s+)?(\\\\=)"},"template_call_context":{"patterns":[{"include":"#ever_present_context"},{"include":"#template_call_range"},{"include":"#storage_types"},{"include":"#language_constants"},{"include":"#scope_resolution_template_call_inner_generated"},{"include":"#operators"},{"include":"#number_literal"},{"include":"#string_context"},{"include":"#comma_in_template_argument"},{"include":"#qualified_type"}]},"template_call_innards":{"captures":{"0":{"patterns":[{"include":"#template_call_range"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+","name":"meta.template.call.cpp"},"template_call_range":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.section.angle-brackets.begin.template.call.cpp"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},"template_definition":{"begin":"(?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.definition.cpp"}},"name":"meta.template.definition.cpp","patterns":[{"begin":"(?<=\\\\w)(?:\\\\s+)?<","beginCaptures":{"0":{"name":"punctuation.section.angle-brackets.begin.template.call.cpp"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"patterns":[{"include":"#template_call_context"}]},{"include":"#template_definition_context"}]},"template_definition_argument":{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"3":{"name":"storage.type.template.argument.$3.cpp"},"4":{"patterns":[{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"storage.type.template.argument.$0.cpp"}]},"5":{"name":"entity.name.type.template.cpp"},"6":{"name":"storage.type.template.argument.$6.cpp"},"7":{"name":"punctuation.vararg-ellipses.template.definition.cpp"},"8":{"name":"entity.name.type.template.cpp"},"9":{"name":"storage.type.template.cpp"},"10":{"name":"punctuation.section.angle-brackets.begin.template.definition.cpp"},"11":{"name":"storage.type.template.argument.$11.cpp"},"12":{"name":"entity.name.type.template.cpp"},"13":{"name":"punctuation.section.angle-brackets.end.template.definition.cpp"},"14":{"name":"storage.type.template.argument.$14.cpp"},"15":{"name":"entity.name.type.template.cpp"},"16":{"name":"keyword.operator.assignment.cpp"},"17":{"name":"punctuation.separator.delimiter.comma.template.argument.cpp"}},"match":"((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(?:(?:(?:((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)|((?:(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\s+)+)((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*))|((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)(?:\\\\s+)?(\\\\.\\\\.\\\\.)(?:\\\\s+)?((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*))|(?)(?:\\\\s+)?(class|typename)(?:\\\\s+((?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*))?)(?:\\\\s+)?(?:(\\\\=)(?:\\\\s+)?(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)?(?:(,)|(?=>|$))"},"template_definition_context":{"patterns":[{"include":"#scope_resolution_template_definition_inner_generated"},{"include":"#template_definition_argument"},{"include":"#template_argument_defaulted"},{"include":"#template_call_innards"},{"include":"#evaluation_context"}]},"template_explicit_instantiation":{"captures":{"1":{"name":"storage.modifier.specifier.extern.cpp"},"2":{"name":"storage.type.template.cpp"}},"match":"(?)(?:\\\\s+)?$"},"ternary_operator":{"applyEndPatternLast":1,"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.cpp"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.cpp"}},"patterns":[{"include":"#ever_present_context"},{"include":"#string_context"},{"include":"#number_literal"},{"include":"#method_access"},{"include":"#member_access"},{"include":"#predefined_macros"},{"include":"#operators"},{"include":"#memory_operators"},{"include":"#wordlike_operators"},{"include":"#type_casting_operators"},{"include":"#control_flow_keywords"},{"include":"#exception_keywords"},{"include":"#the_this_keyword"},{"include":"#language_constants"},{"include":"#builtin_storage_type_initilizer"},{"include":"#qualifiers_and_specifiers_post_parameters"},{"include":"#functional_specifiers_pre_parameters"},{"include":"#storage_types"},{"include":"#lambdas"},{"include":"#attributes_context"},{"include":"#parentheses"},{"include":"#function_call"},{"include":"#scope_resolution_inner_generated"},{"include":"#square_brackets"},{"include":"#semicolon"},{"include":"#comma"}]},"the_this_keyword":{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"3":{"name":"variable.language.this.cpp"}},"match":"((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"9":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"10":{"patterns":[{"include":"#inline_comment"}]},"11":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"12":{"patterns":[{"include":"#inline_comment"}]},"13":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"14":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))|(.*(?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))","endCaptures":{"1":{"name":"punctuation.terminator.statement.cpp"},"2":{"name":"punctuation.terminator.statement.cpp"}},"name":"meta.block.class.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.class.cpp"}},"name":"meta.head.class.cpp","patterns":[{"include":"#ever_present_context"},{"include":"#inheritance_context"},{"include":"#template_call_range"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.class.cpp"}},"name":"meta.body.class.cpp","patterns":[{"include":"#function_pointer"},{"include":"#static_assert"},{"include":"#constructor_inline"},{"include":"#destructor_inline"},{"include":"$self"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.class.cpp","patterns":[{"captures":{"1":{"patterns":[{"match":"\\\\*","name":"storage.modifier.pointer.cpp"},{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"(?:\\\\&((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))){2,}\\\\&","name":"invalid.illegal.reference-type.cpp"},{"match":"\\\\&","name":"storage.modifier.reference.cpp"}]},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"patterns":[{"include":"#inline_comment"}]},"7":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"8":{"name":"comment.block.cpp"},"9":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"10":{"patterns":[{"include":"#inline_comment"}]},"11":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"12":{"name":"comment.block.cpp"},"13":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"14":{"name":"entity.name.type.alias.cpp"}},"match":"(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(\\\\()(\\\\*)(?:\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\s+)?(?:(\\\\[)(\\\\w*)(\\\\])(?:\\\\s+)?)*(\\\\))(?:\\\\s+)?(\\\\()","beginCaptures":{"1":{"name":"meta.qualified_type.cpp","patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp"},{"match":"(?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"2":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"3":{"patterns":[{"include":"#inline_comment"}]},"4":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"5":{"name":"comment.block.cpp"},"6":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"7":{"patterns":[{"include":"#inline_comment"}]},"8":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"9":{"name":"comment.block.cpp"},"10":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"11":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?]|\\\\n)(?!\\\\()","endCaptures":{"1":{"name":"punctuation.section.parameters.end.bracket.round.function.pointer.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"patterns":[{"include":"#function_parameter_context"}]}]},"typedef_struct":{"begin":"((?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))","endCaptures":{"1":{"name":"punctuation.terminator.statement.cpp"},"2":{"name":"punctuation.terminator.statement.cpp"}},"name":"meta.block.struct.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.struct.cpp"}},"name":"meta.head.struct.cpp","patterns":[{"include":"#ever_present_context"},{"include":"#inheritance_context"},{"include":"#template_call_range"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.struct.cpp"}},"name":"meta.body.struct.cpp","patterns":[{"include":"#function_pointer"},{"include":"#static_assert"},{"include":"#constructor_inline"},{"include":"#destructor_inline"},{"include":"$self"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.struct.cpp","patterns":[{"captures":{"1":{"patterns":[{"match":"\\\\*","name":"storage.modifier.pointer.cpp"},{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"(?:\\\\&((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))){2,}\\\\&","name":"invalid.illegal.reference-type.cpp"},{"match":"\\\\&","name":"storage.modifier.reference.cpp"}]},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"patterns":[{"include":"#inline_comment"}]},"7":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"8":{"name":"comment.block.cpp"},"9":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"10":{"patterns":[{"include":"#inline_comment"}]},"11":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"12":{"name":"comment.block.cpp"},"13":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"14":{"name":"entity.name.type.alias.cpp"}},"match":"(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))","endCaptures":{"1":{"name":"punctuation.terminator.statement.cpp"},"2":{"name":"punctuation.terminator.statement.cpp"}},"name":"meta.block.union.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.union.cpp"}},"name":"meta.head.union.cpp","patterns":[{"include":"#ever_present_context"},{"include":"#inheritance_context"},{"include":"#template_call_range"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.union.cpp"}},"name":"meta.body.union.cpp","patterns":[{"include":"#function_pointer"},{"include":"#static_assert"},{"include":"#constructor_inline"},{"include":"#destructor_inline"},{"include":"$self"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.union.cpp","patterns":[{"captures":{"1":{"patterns":[{"match":"\\\\*","name":"storage.modifier.pointer.cpp"},{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"(?:\\\\&((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))){2,}\\\\&","name":"invalid.illegal.reference-type.cpp"},{"match":"\\\\&","name":"storage.modifier.reference.cpp"}]},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"4":{"name":"comment.block.cpp"},"5":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"6":{"patterns":[{"include":"#inline_comment"}]},"7":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"8":{"name":"comment.block.cpp"},"9":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"10":{"patterns":[{"include":"#inline_comment"}]},"11":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"12":{"name":"comment.block.cpp"},"13":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"},"14":{"name":"entity.name.type.alias.cpp"}},"match":"(((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))?(?:(?:&|\\\\*)((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))*(?:&|\\\\*))?((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?","endCaptures":{"0":{"name":"punctuation.section.angle-brackets.end.template.call.cpp"}},"name":"meta.template.call.cpp","patterns":[{"include":"#template_call_context"}]},{"match":"(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*","name":"entity.name.type.cpp"}]},"7":{"patterns":[{"include":"#attributes_context"},{"include":"#number_literal"}]},"8":{"patterns":[{"include":"#inline_comment"}]},"9":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"10":{"patterns":[{"include":"#inline_comment"}]},"11":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"12":{"patterns":[{"match":"::","name":"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp"},{"match":"(?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*+)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\U[0-9a-fA-F]{8}))*\\\\b((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)?(?![\\\\w<:.]))"},"undef":{"captures":{"1":{"name":"keyword.control.directive.undef.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"4":{"name":"punctuation.definition.directive.cpp"},"5":{"patterns":[{"include":"#inline_comment"}]},"6":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"7":{"name":"entity.name.function.preprocessor.cpp"}},"match":"(^((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))(#)(?:\\\\s+)?undef\\\\b)((?:((?:\\\\s*+\\\\/\\\\*(?:[^\\\\*]++|\\\\*+(?!\\\\/))*+\\\\*\\\\/\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))((?|\\\\?\\\\?>)(?:\\\\s+)?(;)|(;))|(?=[;>\\\\[\\\\]=]))","endCaptures":{"1":{"name":"punctuation.terminator.statement.cpp"},"2":{"name":"punctuation.terminator.statement.cpp"}},"name":"meta.block.union.cpp","patterns":[{"begin":"\\\\G ?","beginCaptures":{},"end":"(?:\\\\{|<%|\\\\?\\\\?<|(?=;))","endCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.union.cpp"}},"name":"meta.head.union.cpp","patterns":[{"include":"#ever_present_context"},{"include":"#inheritance_context"},{"include":"#template_call_range"}]},{"begin":"(?<=\\\\{|<%|\\\\?\\\\?<)","beginCaptures":{},"end":"\\\\}|%>|\\\\?\\\\?>","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.union.cpp"}},"name":"meta.body.union.cpp","patterns":[{"include":"#function_pointer"},{"include":"#static_assert"},{"include":"#constructor_inline"},{"include":"#destructor_inline"},{"include":"$self"}]},{"begin":"(?<=\\\\}|%>|\\\\?\\\\?>)[\\\\s]*","beginCaptures":{},"end":"[\\\\s]*(?=;)","endCaptures":{},"name":"meta.tail.union.cpp","patterns":[{"include":"$self"}]}]},"union_declare":{"captures":{"1":{"name":"storage.type.union.declare.cpp"},"2":{"patterns":[{"include":"#inline_comment"}]},"3":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"4":{"name":"entity.name.type.union.cpp"},"5":{"patterns":[{"match":"\\\\*","name":"storage.modifier.pointer.cpp"},{"captures":{"1":{"patterns":[{"include":"#inline_comment"}]},"2":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"3":{"name":"comment.block.cpp"},"4":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"(?:\\\\&((?:(?:(?:\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+)+)|(?:\\\\s++)|(?<=\\\\W)|(?=\\\\W)|^|(?:\\\\n?$)|\\\\A|\\\\Z))){2,}\\\\&","name":"invalid.illegal.reference-type.cpp"},{"match":"\\\\&","name":"storage.modifier.reference.cpp"}]},"6":{"patterns":[{"include":"#inline_comment"}]},"7":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"8":{"patterns":[{"include":"#inline_comment"}]},"9":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"10":{"patterns":[{"include":"#inline_comment"}]},"11":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]},"12":{"name":"variable.other.object.declare.cpp"},"13":{"patterns":[{"include":"#inline_comment"}]},"14":{"patterns":[{"captures":{"1":{"name":"comment.block.cpp punctuation.definition.comment.begin.cpp"},"2":{"name":"comment.block.cpp"},"3":{"name":"comment.block.cpp punctuation.definition.comment.end.cpp"}},"match":"\\\\s*+(\\\\/\\\\*)((?:[^\\\\*]++|\\\\*+(?!\\\\/))*+(\\\\*\\\\/))\\\\s*+"}]}},"match":"((?|(?:(?:[^'\\"<>\\\\/]|\\\\/[^*])++))*>)\\\\s*+)?::)*\\\\s*+)?((?ia});var qte,ia,Ki=_(()=>{qte=Object.freeze(JSON.parse(`{"displayName":"Shell","name":"shellscript","patterns":[{"include":"#initial_context"}],"repository":{"alias_statement":{"begin":"(?:(?:[ \\\\t]*+)(alias)(?:[ \\\\t]*+)((?:(?:((?&;<>\\\\(\\\\)\\\\$\`\\\\\\\\\\"'<\\\\|]+)(?!>))"},{"include":"#normal_context"}]},"arithmetic_double":{"patterns":[{"begin":"\\\\(\\\\(","beginCaptures":{"0":{"name":"punctuation.section.arithmetic.double.shell"}},"end":"\\\\)(?:\\\\s*)\\\\)","endCaptures":{"0":{"name":"punctuation.section.arithmetic.double.shell"}},"name":"meta.arithmetic.shell","patterns":[{"include":"#math"},{"include":"#string"}]}]},"arithmetic_no_dollar":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.arithmetic.single.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arithmetic.single.shell"}},"name":"meta.arithmetic.shell","patterns":[{"include":"#math"},{"include":"#string"}]}]},"array_access_inline":{"captures":{"1":{"name":"punctuation.section.array.shell"},"2":{"patterns":[{"include":"#special_expansion"},{"include":"#string"},{"include":"#variable"}]},"3":{"name":"punctuation.section.array.shell"}},"match":"(?:(\\\\[)([^\\\\[\\\\]]+)(\\\\]))"},"array_value":{"begin":"(?:[ \\\\t]*+)(?:((?|#|\\\\n|$|;|[ \\\\t]))(?!nocorrect |nocorrect\\t|nocorrect$|readonly |readonly\\t|readonly$|function |function\\t|function$|foreach |foreach\\t|foreach$|coproc |coproc\\t|coproc$|logout |logout\\t|logout$|export |export\\t|export$|select |select\\t|select$|repeat |repeat\\t|repeat$|pushd |pushd\\t|pushd$|until |until\\t|until$|while |while\\t|while$|local |local\\t|local$|case |case\\t|case$|done |done\\t|done$|elif |elif\\t|elif$|else |else\\t|else$|esac |esac\\t|esac$|popd |popd\\t|popd$|then |then\\t|then$|time |time\\t|time$|for |for\\t|for$|end |end\\t|end$|fi |fi\\t|fi$|do |do\\t|do$|in |in\\t|in$|if |if\\t|if$))(?:((?<=^|;|&|[ \\\\t])(?:readonly|declare|typeset|export|local)(?=[ \\\\t]|;|&|$))|((?!\\"|'|\\\\\\\\\\\\n?$)(?:[^!'\\"<> \\\\t\\\\n\\\\r]+?)))(?:(?= |\\\\t)|(?:(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?]+))"},{"begin":"(?:(?:\\\\G|(?|#|\\\\n|$|;|[ \\\\t]))(?!nocorrect |nocorrect\\t|nocorrect$|readonly |readonly\\t|readonly$|function |function\\t|function$|foreach |foreach\\t|foreach$|coproc |coproc\\t|coproc$|logout |logout\\t|logout$|export |export\\t|export$|select |select\\t|select$|repeat |repeat\\t|repeat$|pushd |pushd\\t|pushd$|until |until\\t|until$|while |while\\t|while$|local |local\\t|local$|case |case\\t|case$|done |done\\t|done$|elif |elif\\t|elif$|else |else\\t|else$|esac |esac\\t|esac$|popd |popd\\t|popd$|then |then\\t|then$|time |time\\t|time$|for |for\\t|for$|end |end\\t|end$|fi |fi\\t|fi$|do |do\\t|do$|in |in\\t|in$|if |if\\t|if$)(?!\\\\\\\\\\\\n?$)))","beginCaptures":{},"end":"(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?|&&|\\\\|\\\\|","name":"keyword.operator.logical.shell"},{"match":"(?[>=]?|==|!=|^|\\\\|{1,2}|&{1,2}|\\\\?|\\\\:|,|=|[*/%+\\\\-&^|]=|<<=|>>=","name":"keyword.operator.arithmetic.shell"},{"match":"0[xX][0-9A-Fa-f]+","name":"constant.numeric.hex.shell"},{"match":";","name":"punctuation.separator.semicolon.range"},{"match":"0\\\\d+","name":"constant.numeric.octal.shell"},{"match":"\\\\d{1,2}#[0-9a-zA-Z@_]+","name":"constant.numeric.other.shell"},{"match":"\\\\d+","name":"constant.numeric.integer.shell"},{"match":"(?[>=]?|==|!=|^|\\\\|{1,2}|&{1,2}|\\\\?|\\\\:|,|=|[*/%+\\\\-&^|]=|<<=|>>=","name":"keyword.operator.arithmetic.shell"},{"match":"0[xX][0-9A-Fa-f]+","name":"constant.numeric.hex.shell"},{"match":"0\\\\d+","name":"constant.numeric.octal.shell"},{"match":"\\\\d{1,2}#[0-9a-zA-Z@_]+","name":"constant.numeric.other.shell"},{"match":"\\\\d+","name":"constant.numeric.integer.shell"}]},"misc_ranges":{"patterns":[{"include":"#logical_expression_single"},{"include":"#logical_expression_double"},{"include":"#subshell_dollar"},{"begin":"(?|#|\\\\n|$|;|[ \\\\t]))))","beginCaptures":{"1":{"name":"string.unquoted.argument.shell constant.other.option.dash.shell"},"2":{"name":"string.unquoted.argument.shell constant.other.option.shell"}},"contentName":"string.unquoted.argument constant.other.option","end":"(?:(?=[ \\\\t])|(?:(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?>?)(?:[ \\\\t]*+)([^ \\t\\n>&;<>\\\\(\\\\)\\\\$\`\\\\\\\\\\"'<\\\\|]+))"},"redirect_number":{"captures":{"1":{"name":"keyword.operator.redirect.stdout.shell"},"2":{"name":"keyword.operator.redirect.stderr.shell"},"3":{"name":"keyword.operator.redirect.$3.shell"}},"match":"(?<=[ \\\\t])(?:(?:(1)|(2)|(\\\\d+))(?=>))"},"redirection":{"patterns":[{"begin":"[><]\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.interpolated.process-substitution.shell","patterns":[{"include":"#initial_context"}]},{"match":"(?])(&>|\\\\d*>&\\\\d*|\\\\d*(>>|>|<)|\\\\d*<&|\\\\d*<>)(?![<>])","name":"keyword.operator.redirect.shell"}]},"regex_comparison":{"match":"\\\\=~","name":"keyword.operator.logical.regex.shell"},"regexp":{"patterns":[{"match":"(?:.+)"}]},"simple_options":{"captures":{"0":{"patterns":[{"captures":{"1":{"name":"string.unquoted.argument.shell constant.other.option.dash.shell"},"2":{"name":"string.unquoted.argument.shell constant.other.option.shell"}},"match":"(?:[ \\\\t]++)(\\\\-)(\\\\w+)"}]}},"match":"(?:(?:[ \\\\t]++)\\\\-(?:\\\\w+))*"},"simple_unquoted":{"match":"[^ \\\\t\\\\n>&;<>\\\\(\\\\)\\\\$\`\\\\\\\\\\"'<\\\\|]","name":"string.unquoted.shell"},"special_expansion":{"match":"!|:[-=?]?|\\\\*|@|##|#|%%|%|\\\\/","name":"keyword.operator.expansion.shell"},"start_of_command":{"match":"(?:(?:[ \\\\t]*+)(?:(?!(?:!|&|\\\\||\\\\(|\\\\)|\\\\{|\\\\[|<|>|#|\\\\n|$|;|[ \\\\t]))(?!nocorrect |nocorrect\\t|nocorrect$|readonly |readonly\\t|readonly$|function |function\\t|function$|foreach |foreach\\t|foreach$|coproc |coproc\\t|coproc$|logout |logout\\t|logout$|export |export\\t|export$|select |select\\t|select$|repeat |repeat\\t|repeat$|pushd |pushd\\t|pushd$|until |until\\t|until$|while |while\\t|while$|local |local\\t|local$|case |case\\t|case$|done |done\\t|done$|elif |elif\\t|elif$|else |else\\t|else$|esac |esac\\t|esac$|popd |popd\\t|popd$|then |then\\t|then$|time |time\\t|time$|for |for\\t|for$|end |end\\t|end$|fi |fi\\t|fi$|do |do\\t|do$|in |in\\t|in$|if |if\\t|if$)(?!\\\\\\\\\\\\n?$)))"},"string":{"patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.shell"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.single.shell"},{"begin":"\\\\$?\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.double.shell","patterns":[{"match":"\\\\\\\\[\\\\$\\\\n\`\\"\\\\\\\\]","name":"constant.character.escape.shell"},{"include":"#variable"},{"include":"#interpolation"}]},{"begin":"\\\\$'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.single.dollar.shell","patterns":[{"match":"\\\\\\\\(?:a|b|e|f|n|r|t|v|\\\\\\\\|')","name":"constant.character.escape.ansi-c.shell"},{"match":"\\\\\\\\[0-9]{3}\\"","name":"constant.character.escape.octal.shell"},{"match":"\\\\\\\\x[0-9a-fA-F]{2}\\"","name":"constant.character.escape.hex.shell"},{"match":"\\\\\\\\c.\\"","name":"constant.character.escape.control-char.shell"}]}]},"subshell_dollar":{"patterns":[{"begin":"(?:\\\\$\\\\()","beginCaptures":{"0":{"name":"punctuation.definition.subshell.single.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.subshell.single.shell"}},"name":"meta.scope.subshell","patterns":[{"include":"#parenthese"},{"include":"#initial_context"}]}]},"support":{"patterns":[{"match":"(?<=^|;|&|\\\\s)(?::|\\\\.)(?=\\\\s|;|&|$)","name":"support.function.builtin.shell"}]},"typical_statements":{"patterns":[{"include":"#assignment_statement"},{"include":"#case_statement"},{"include":"#for_statement"},{"include":"#while_statement"},{"include":"#function_definition"},{"include":"#command_statement"},{"include":"#line_continuation"},{"include":"#arithmetic_double"},{"include":"#normal_context"}]},"variable":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.all.shell"},"2":{"name":"variable.parameter.positional.all.shell"}},"match":"(?:(\\\\$)(\\\\@(?!\\\\w)))"},{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.shell"},"2":{"name":"variable.parameter.positional.shell"}},"match":"(?:(\\\\$)([0-9](?!\\\\w)))"},{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.language.special.shell"},"2":{"name":"variable.language.special.shell"}},"match":"(?:(\\\\$)([-*#?$!0_](?!\\\\w)))"},{"begin":"(?:(\\\\$)(\\\\{)(?:[ \\\\t]*+)(?=\\\\d))","beginCaptures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.shell"},"2":{"name":"punctuation.section.bracket.curly.variable.begin.shell punctuation.definition.variable.shell variable.parameter.positional.shell"}},"contentName":"meta.parameter-expansion","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.bracket.curly.variable.end.shell punctuation.definition.variable.shell variable.parameter.positional.shell"}},"patterns":[{"include":"#special_expansion"},{"include":"#array_access_inline"},{"match":"[0-9]+","name":"variable.parameter.positional.shell"},{"match":"(?zte});var Gte,zte,SN=_(()=>{Ye();Nn();rt();Uo();Qe();Ki();Gte=Object.freeze(JSON.parse(`{"displayName":"Crystal","fileTypes":["cr"],"firstLineMatch":"^#!/.*\\\\bcrystal","foldingStartMarker":"^(\\\\s*+(annotation|module|class|struct|union|enum|def(?!.*\\\\bend\\\\s*$)|unless|if|case|begin|for|while|until|^=begin|(\\"(\\\\\\\\.|[^\\"])*+\\"|'(\\\\\\\\.|[^'])*+'|[^#\\"'])*(\\\\s(do|begin|case)|(?~]\\\\s*+(if|unless)))\\\\b(?![^;]*+;.*?\\\\bend\\\\b)|(\\"(\\\\\\\\.|[^\\"])*+\\"|'(\\\\\\\\.|[^'])*+'|[^#\\"'])*(\\\\{(?![^}]*+\\\\})|\\\\[(?![^\\\\]]*+\\\\]))).*$|[#].*?\\\\(fold\\\\)\\\\s*+$","foldingStopMarker":"((^|;)\\\\s*+end\\\\s*+([#].*)?$|(^|;)\\\\s*+end\\\\..*$|^\\\\s*+[}\\\\]],?\\\\s*+([#].*)?$|[#].*?\\\\(end\\\\)\\\\s*+$|^=end)","name":"crystal","patterns":[{"captures":{"1":{"name":"keyword.control.class.crystal"},"2":{"name":"keyword.control.class.crystal"},"3":{"name":"entity.name.type.class.crystal"},"5":{"name":"punctuation.separator.crystal"},"6":{"name":"support.class.other.type-param.crystal"},"7":{"name":"entity.other.inherited-class.crystal"},"8":{"name":"punctuation.separator.crystal"},"9":{"name":"punctuation.separator.crystal"},"10":{"name":"support.class.other.type-param.crystal"},"11":{"name":"punctuation.definition.variable.crystal"}},"match":"^\\\\s*(abstract)?\\\\s*(class|struct|union|annotation|enum)\\\\s+(([.A-Z_:\\\\x{80}-\\\\x{10FFFF}][.\\\\w:\\\\x{80}-\\\\x{10FFFF}]*(\\\\(([,\\\\s.a-zA-Z0-9_:\\\\x{80}-\\\\x{10FFFF}]+)\\\\))?(\\\\s*(<)\\\\s*[.:A-Z\\\\x{80}-\\\\x{10FFFF}][.:\\\\w\\\\x{80}-\\\\x{10FFFF}]*(\\\\(([.a-zA-Z0-9_:]+\\\\s,)\\\\))?)?)|((<<)\\\\s*[.A-Z0-9_:\\\\x{80}-\\\\x{10FFFF}]+))","name":"meta.class.crystal"},{"captures":{"1":{"name":"keyword.control.module.crystal"},"2":{"name":"entity.name.type.module.crystal"},"3":{"name":"entity.other.inherited-class.module.first.crystal"},"4":{"name":"punctuation.separator.inheritance.crystal"},"5":{"name":"entity.other.inherited-class.module.second.crystal"},"6":{"name":"punctuation.separator.inheritance.crystal"},"7":{"name":"entity.other.inherited-class.module.third.crystal"},"8":{"name":"punctuation.separator.inheritance.crystal"}},"match":"^\\\\s*(module)\\\\s+(([A-Z\\\\x{80}-\\\\x{10FFFF}][\\\\w\\\\x{80}-\\\\x{10FFFF}]*(::))?([A-Z\\\\x{80}-\\\\x{10FFFF}][\\\\w\\\\x{80}-\\\\x{10FFFF}]*(::))?([A-Z\\\\x{80}-\\\\x{10FFFF}][\\\\w\\\\x{80}-\\\\x{10FFFF}]*(::))*[A-Z\\\\x{80}-\\\\x{10FFFF}][\\\\w\\\\x{80}-\\\\x{10FFFF}]*)","name":"meta.module.crystal"},{"captures":{"1":{"name":"keyword.control.lib.crystal"},"2":{"name":"entity.name.type.lib.crystal"},"3":{"name":"entity.other.inherited-class.lib.first.crystal"},"4":{"name":"punctuation.separator.inheritance.crystal"},"5":{"name":"entity.other.inherited-class.lib.second.crystal"},"6":{"name":"punctuation.separator.inheritance.crystal"},"7":{"name":"entity.other.inherited-class.lib.third.crystal"},"8":{"name":"punctuation.separator.inheritance.crystal"}},"match":"^\\\\s*(lib)\\\\s+(([A-Z]\\\\w*(::))?([A-Z]\\\\w*(::))?([A-Z]\\\\w*(::))*[A-Z]\\\\w*)","name":"meta.lib.crystal"},{"captures":{"1":{"name":"keyword.control.lib.type.crystal"},"2":{"name":"entity.name.lib.type.crystal"},"3":{"name":"keyword.control.lib.crystal"},"4":{"name":"entity.name.lib.type.value.crystal"}},"comment":"type in lib","match":"(?|_|\\\\*|\\\\$|\\\\?|:|\\"|-[0adFiIlpv])","name":"variable.other.readwrite.global.pre-defined.crystal"},{"begin":"\\\\b(ENV)\\\\[","beginCaptures":{"1":{"name":"variable.other.constant.crystal"}},"end":"\\\\]","name":"meta.environment-variable.crystal","patterns":[{"include":"$self"}]},{"comment":"Literals name of Crystal","match":"\\\\b[A-Z\\\\x{80}-\\\\x{10FFFF}][\\\\w\\\\x{80}-\\\\x{10FFFF}]*","name":"support.class.crystal"},{"comment":"Fetch from https://crystal-lang.org/api/0.36.1/toplevel.html","match":"(?[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|\\\\^|===?|!=|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[][?=]?|\\\\[]=?))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.def.crystal"},"2":{"name":"entity.name.function.crystal"},"3":{"name":"punctuation.definition.parameters.crystal"}},"comment":"The method pattern comes from the symbol pattern. See there for an explanation.","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.crystal"}},"name":"meta.function.method.with-arguments.crystal","patterns":[{"begin":"(?![\\\\s,)])","end":"(?=,|\\\\)\\\\s*)","patterns":[{"captures":{"1":{"name":"storage.type.variable.crystal"},"2":{"name":"constant.other.symbol.hashkey.parameter.function.crystal"},"3":{"name":"punctuation.definition.constant.hashkey.crystal"},"4":{"name":"variable.parameter.function.crystal"}},"match":"\\\\G([&*]?)(?:([_a-zA-Z]\\\\w*(:))|([_a-zA-Z]\\\\w*))"},{"include":"$self"}]}]},{"captures":{"1":{"name":"keyword.control.def.crystal"},"3":{"name":"entity.name.function.crystal"}},"comment":" the optional name is just to catch the def also without a method-name","match":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\b(\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|\\\\^|===?|!=|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[][?=]?|\\\\[]=?)))?","name":"meta.function.method.without-arguments.crystal"},{"comment":"Floating point literal (fraction)","match":"\\\\b[0-9][0-9_]*\\\\.[0-9][0-9_]*([eE][+-]?[0-9_]+)?(f32|f64)?\\\\b","name":"constant.numeric.float.crystal"},{"comment":"Floating point literal (exponent)","match":"\\\\b[0-9][0-9_]*(\\\\.[0-9][0-9_]*)?[eE][+-]?[0-9_]+(f32|f64)?\\\\b","name":"constant.numeric.float.crystal"},{"comment":"Floating point literal (typed)","match":"\\\\b[0-9][0-9_]*(\\\\.[0-9][0-9_]*)?([eE][+-]?[0-9_]+)?(f32|f64)\\\\b","name":"constant.numeric.float.crystal"},{"comment":"Integer literal (decimal)","match":"\\\\b(?!0[0-9])[0-9][0-9_]*([ui](8|16|32|64|128))?\\\\b","name":"constant.numeric.integer.decimal.crystal"},{"comment":"Integer literal (hexadecimal)","match":"\\\\b0x[a-fA-F0-9_]+([ui](8|16|32|64|128))?\\\\b","name":"constant.numeric.integer.hexadecimal.crystal"},{"comment":"Integer literal (octal)","match":"\\\\b0o[0-7_]+([ui](8|16|32|64|128))?\\\\b","name":"constant.numeric.integer.octal.crystal"},{"comment":"Integer literal (binary)","match":"\\\\b0b[01_]+([ui](8|16|32|64|128))?\\\\b","name":"constant.numeric.integer.binary.crystal"},{"begin":":'","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.crystal"}},"comment":"symbol literal with '' delimiter","end":"'","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.crystal"}},"name":"constant.other.symbol.crystal","patterns":[{"match":"\\\\\\\\['\\\\\\\\]","name":"constant.character.escape.crystal"}]},{"begin":":\\"","beginCaptures":{"0":{"name":"punctuation.section.symbol.begin.crystal"}},"comment":"symbol literal with \\"\\" delimiter","end":"\\"","endCaptures":{"0":{"name":"punctuation.section.symbol.end.crystal"}},"name":"constant.other.symbol.interpolated.crystal","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"comment":"Needs higher precedence than regular expressions.","match":"(?","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.interpolated.crystal","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},{"begin":"%x\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"execute string (allow for interpolation)","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.interpolated.crystal","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},{"begin":"%x\\\\|","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"execute string (allow for interpolation)","end":"\\\\|","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.interpolated.crystal","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"(?:^|(?<=[=>~(?:\\\\[,|&;]|[\\\\s;]if\\\\s|[\\\\s;]elsif\\\\s|[\\\\s;]while\\\\s|[\\\\s;]unless\\\\s|[\\\\s;]when\\\\s|[\\\\s;]assert_match\\\\s|[\\\\s;]or\\\\s|[\\\\s;]and\\\\s|[\\\\s;]not\\\\s|[\\\\s.]index\\\\s|[\\\\s.]scan\\\\s|[\\\\s.]sub\\\\s|[\\\\s.]sub!\\\\s|[\\\\s.]gsub\\\\s|[\\\\s.]gsub!\\\\s|[\\\\s.]match\\\\s)|(?<=^when\\\\s|^if\\\\s|^elsif\\\\s|^while\\\\s|^unless\\\\s))\\\\s*((/))(?![*+{}?])","captures":{"1":{"name":"string.regexp.classic.crystal"},"2":{"name":"punctuation.definition.string.crystal"}},"comment":"regular expressions (normal) we only start a regexp if the character before it (excluding whitespace) is what we think is before a regexp","contentName":"string.regexp.classic.crystal","end":"((/[imsx]*))","patterns":[{"include":"#regex_sub"}]},{"begin":"%r\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"regular expressions (literal)","end":"\\\\}[imsx]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.regexp.mod-r.crystal","patterns":[{"include":"#regex_sub"},{"include":"#nest_curly_r"}]},{"begin":"%r\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"regular expressions (literal)","end":"\\\\][imsx]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.regexp.mod-r.crystal","patterns":[{"include":"#regex_sub"},{"include":"#nest_brackets_r"}]},{"begin":"%r\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"regular expressions (literal)","end":"\\\\)[imsx]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.regexp.mod-r.crystal","patterns":[{"include":"#regex_sub"},{"include":"#nest_parens_r"}]},{"begin":"%r\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"regular expressions (literal)","end":"\\\\>[imsx]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.regexp.mod-r.crystal","patterns":[{"include":"#regex_sub"},{"include":"#nest_ltgt_r"}]},{"begin":"%r\\\\|","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"regular expressions (literal)","end":"\\\\|[imsx]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.regexp.mod-r.crystal","patterns":[{"include":"#regex_sub"}]},{"begin":"%Q?\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"literal capable of interpolation ()","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.quoted.other.literal.upper.crystal","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},{"begin":"%Q?\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"literal capable of interpolation []","end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.quoted.other.literal.upper.crystal","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},{"begin":"%Q?\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"literal capable of interpolation <>","end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.quoted.other.literal.upper.crystal","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},{"begin":"%Q?\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"literal capable of interpolation -- {}","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.quoted.double.crystal.mod","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},{"begin":"%Q\\\\|","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"literal capable of interpolation -- ||","end":"\\\\|","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.quoted.other.literal.upper.crystal","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"%[qwi]\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"literal incapable of interpolation -- ()","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.quoted.other.literal.lower.crystal","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.crystal"},{"include":"#nest_parens"}]},{"begin":"%[qwi]\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"literal incapable of interpolation -- <>","end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.quoted.other.literal.lower.crystal","patterns":[{"match":"\\\\\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.crystal"},{"include":"#nest_ltgt"}]},{"begin":"%[qwi]\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"literal incapable of interpolation -- []","end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.quoted.other.literal.lower.crystal","patterns":[{"match":"\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.crystal"},{"include":"#nest_brackets"}]},{"begin":"%[qwi]\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"literal incapable of interpolation -- {}","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.quoted.other.literal.lower.crystal","patterns":[{"match":"\\\\\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.crystal"},{"include":"#nest_curly"}]},{"begin":"%[qwi]\\\\|","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"literal incapable of interpolation -- ||","end":"\\\\|","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.quoted.other.literal.lower.crystal","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"captures":{"1":{"name":"punctuation.definition.constant.crystal"}},"comment":"symbols","match":"(?[a-zA-Z_\\\\x{80}-\\\\x{10FFFF}][\\\\w\\\\x{80}-\\\\x{10FFFF}]*(?>[?!]|=(?![>=]))?|===?|>[>=]?|<[<=]?|<=>|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[\\\\][?=]?|@@?[a-zA-Z_\\\\x{80}-\\\\x{10FFFF}][\\\\w\\\\x{80}-\\\\x{10FFFF}]*)","name":"constant.other.symbol.crystal"},{"captures":{"1":{"name":"punctuation.definition.constant.crystal"}},"comment":"symbols","match":"(?>[a-zA-Z_\\\\x{80}-\\\\x{10FFFF}][\\\\w\\\\x{80}-\\\\x{10FFFF}]*(?>[?!])?)(:)(?!:)","name":"constant.other.symbol.crystal.19syntax"},{"captures":{"1":{"name":"punctuation.definition.comment.crystal"}},"match":"(?:^[ \\\\t]+)?(#).*$\\\\n?","name":"comment.line.number-sign.crystal"},{"match":"(?<<-('?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"heredoc with embedded HTML and indented terminator","contentName":"text.html.embedded.crystal","end":"\\\\s*\\\\2\\\\b","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.unquoted.embedded.html.crystal","patterns":[{"include":"#heredoc"},{"include":"text.html.basic"},{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"(?><<-('?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"heredoc with embedded SQL and indented terminator","contentName":"text.sql.embedded.crystal","end":"\\\\s*\\\\2\\\\b","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.unquoted.embedded.sql.crystal","patterns":[{"include":"#heredoc"},{"include":"source.sql"},{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"(?><<-('?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"heredoc with embedded css and intented terminator","contentName":"text.css.embedded.crystal","end":"\\\\s*\\\\2\\\\b","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.unquoted.embedded.css.crystal","patterns":[{"include":"#heredoc"},{"include":"source.css"},{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"(?><<-('?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"heredoc with embedded c++ and intented terminator","contentName":"text.c++.embedded.crystal","end":"\\\\s*\\\\2\\\\b","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.unquoted.embedded.cplusplus.crystal","patterns":[{"include":"#heredoc"},{"include":"source.c++"},{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"(?><<-('?)((?:[_\\\\w]+_|)C)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"heredoc with embedded c++ and intented terminator","contentName":"text.c.embedded.crystal","end":"\\\\s*\\\\2\\\\b","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.unquoted.embedded.c.crystal","patterns":[{"include":"#heredoc"},{"include":"source.c"},{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"(?><<-('?)((?:[_\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"heredoc with embedded javascript and intented terminator","contentName":"text.js.embedded.crystal","end":"\\\\s*\\\\2\\\\b","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.unquoted.embedded.js.crystal","patterns":[{"include":"#heredoc"},{"include":"source.js"},{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"(?><<-('?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"heredoc with embedded javascript and intented terminator","contentName":"text.js.jquery.embedded.crystal","end":"\\\\s*\\\\2\\\\b","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.unquoted.embedded.js.jquery.crystal","patterns":[{"include":"#heredoc"},{"include":"source.js.jquery"},{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"(?><<-('?)((?:[_\\\\w]+_|)(?:SH|SHELL))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"heredoc with embedded shell and intented terminator","contentName":"text.shell.embedded.crystal","end":"\\\\s*\\\\2\\\\b","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.unquoted.embedded.shell.crystal","patterns":[{"include":"#heredoc"},{"include":"source.shell"},{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"(?><<-('?)((?:[_\\\\w]+_|)CRYSTAL)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"heredoc with embedded crystal and intented terminator","contentName":"text.crystal.embedded.crystal","end":"\\\\s*\\\\2\\\\b","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.unquoted.embedded.crystal.crystal","patterns":[{"include":"#heredoc"},{"include":"source.crystal"},{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"(?><<-'(\\\\w+)')","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"heredoc with indented terminator","end":"\\\\s*\\\\1\\\\b","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.unquoted.heredoc.crystal","patterns":[{"include":"#heredoc"},{"include":"#escaped_char"}]},{"begin":"(?><<-(\\\\w+)\\\\b)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.crystal"}},"comment":"heredoc with indented terminator","end":"\\\\s*\\\\1\\\\b","endCaptures":{"0":{"name":"punctuation.definition.string.end.crystal"}},"name":"string.unquoted.heredoc.crystal","patterns":[{"include":"#heredoc"},{"include":"#interpolated_crystal"},{"include":"#escaped_char"}]},{"begin":"(?<={|{\\\\s|[^A-Za-z0-9_]do|^do|[^A-Za-z0-9_]do\\\\s|^do\\\\s)(\\\\|)","captures":{"1":{"name":"punctuation.separator.variable.crystal"}},"end":"(?","name":"punctuation.separator.key-value"},{"match":"->","name":"support.function.kernel.crystal"},{"match":"<<=|%=|&{1,2}=|\\\\*=|\\\\*\\\\*=|\\\\+=|-=|\\\\^=|\\\\|{1,2}=|<<","name":"keyword.operator.assignment.augmented.crystal"},{"match":"<=>|<(?!<|=)|>(?!<|=|>)|<=|>=|===|==|=~|!=|!~|(?<=[ \\\\t])\\\\?","name":"keyword.operator.comparison.crystal"},{"match":"(?<=^|[ \\\\t])!|&&|\\\\|\\\\||\\\\^","name":"keyword.operator.logical.crystal"},{"match":"(\\\\{\\\\%|\\\\%\\\\}|\\\\{\\\\{|\\\\}\\\\})","name":"keyword.operator.macro.crystal"},{"captures":{"1":{"name":"punctuation.separator.method.crystal"}},"comment":"Safe navigation operator","match":"(&\\\\.)\\\\s*(?![A-Z])"},{"match":"(%|&|\\\\*\\\\*|\\\\*|\\\\+|\\\\-|/)","name":"keyword.operator.arithmetic.crystal"},{"match":"=","name":"keyword.operator.assignment.crystal"},{"match":"\\\\||~|>>","name":"keyword.operator.other.crystal"},{"match":":","name":"punctuation.separator.other.crystal"},{"match":"\\\\;","name":"punctuation.separator.statement.crystal"},{"match":",","name":"punctuation.separator.object.crystal"},{"match":"\\\\.|::","name":"punctuation.separator.method.crystal"},{"match":"\\\\{|\\\\}","name":"punctuation.section.scope.crystal"},{"match":"\\\\[|\\\\]","name":"punctuation.section.array.crystal"},{"match":"\\\\(|\\\\)","name":"punctuation.section.function.crystal"},{"begin":"(?=[a-zA-Z0-9_!?]+\\\\()","end":"(?<=\\\\))","name":"meta.function-call.crystal","patterns":[{"match":"([a-zA-Z0-9_!?]+)(?=\\\\()","name":"entity.name.function.crystal"},{"include":"$self"}]},{"comment":"This is kindof experimental. There really is no way to perfectly match all regular variables, but you can pretty well assume that any normal word in certain curcumstances that havnt already been scoped as something else are probably variables, and the advantages beat the potential errors","match":"((?<=\\\\W)\\\\b|^)\\\\w+\\\\b(?=\\\\s*([\\\\]\\\\)\\\\}\\\\=\\\\+\\\\-\\\\*\\\\/\\\\^\\\\$\\\\,\\\\.]|<\\\\s|<<[\\\\s|\\\\.]))","name":"variable.other.crystal"}],"repository":{"escaped_char":{"comment":"https://crystal-lang.org/reference/syntax_and_semantics/literals/string.html","match":"\\\\\\\\(?:[0-7]{1,3}|x[a-fA-F0-9]{2}|u[a-fA-F0-9]{4}|u\\\\{[a-fA-F0-9 ]+\\\\}|.)","name":"constant.character.escape.crystal"},"heredoc":{"begin":"^<<-?\\\\w+","end":"$","patterns":[{"include":"$self"}]},"interpolated_crystal":{"patterns":[{"begin":"#\\\\{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.crystal"}},"contentName":"source.crystal","end":"(\\\\})","endCaptures":{"0":{"name":"punctuation.section.embedded.end.crystal"},"1":{"name":"source.crystal"}},"name":"meta.embedded.line.crystal","patterns":[{"include":"#nest_curly_and_self"},{"include":"$self"}],"repository":{"nest_curly_and_self":{"patterns":[{"begin":"\\\\{","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\}","patterns":[{"include":"#nest_curly_and_self"}]},{"include":"$self"}]}}},{"captures":{"1":{"name":"punctuation.definition.variable.crystal"}},"match":"(#@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.instance.crystal"},{"captures":{"1":{"name":"punctuation.definition.variable.crystal"}},"match":"(#@@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.class.crystal"},{"captures":{"1":{"name":"punctuation.definition.variable.crystal"}},"match":"(#\\\\$)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.global.crystal"}]},"nest_brackets":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\]","patterns":[{"include":"#nest_brackets"}]},"nest_brackets_i":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\]","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},"nest_brackets_r":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\]","patterns":[{"include":"#regex_sub"},{"include":"#nest_brackets_r"}]},"nest_curly":{"begin":"\\\\{","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\}","patterns":[{"include":"#nest_curly"}]},"nest_curly_and_self":{"patterns":[{"begin":"\\\\{","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\}","patterns":[{"include":"#nest_curly_and_self"}]},{"include":"$self"}]},"nest_curly_i":{"begin":"\\\\{","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\}","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},"nest_curly_r":{"begin":"\\\\{","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\}","patterns":[{"include":"#regex_sub"},{"include":"#nest_curly_r"}]},"nest_ltgt":{"begin":"\\\\<","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\>","patterns":[{"include":"#nest_ltgt"}]},"nest_ltgt_i":{"begin":"\\\\<","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\>","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},"nest_ltgt_r":{"begin":"\\\\<","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\>","patterns":[{"include":"#regex_sub"},{"include":"#nest_ltgt_r"}]},"nest_parens":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\)","patterns":[{"include":"#nest_parens"}]},"nest_parens_i":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\)","patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},"nest_parens_r":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.crystal"}},"end":"\\\\)","patterns":[{"include":"#regex_sub"},{"include":"#nest_parens_r"}]},"regex_sub":{"patterns":[{"include":"#interpolated_crystal"},{"include":"#escaped_char"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.crystal"},"3":{"name":"punctuation.definition.arbitrary-repetition.crystal"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repetition.crystal"},{"begin":"\\\\[(?:\\\\^?])?","captures":{"0":{"name":"punctuation.definition.character-class.crystal"}},"end":"]","name":"string.regexp.character-class.crystal","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\(","captures":{"0":{"name":"punctuation.definition.group.crystal"}},"end":"\\\\)","name":"string.regexp.group.crystal","patterns":[{"include":"#regex_sub"}]},{"captures":{"1":{"name":"punctuation.definition.comment.crystal"}},"comment":"We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.","match":"(?<=^|\\\\s)(#)\\\\s[[a-zA-Z0-9,. \\\\t?!-][^\\\\x{00}-\\\\x{7F}]]*$","name":"comment.line.number-sign.crystal"}]}},"scopeName":"source.crystal","embeddedLangs":["html","sql","css","c","javascript","shellscript"]}`)),zte=[...ce,...Ve,...ue,...Va,...J,...ia,Gte]});var ON={};x(ON,{default:()=>IB});var Ute,IB,DB=_(()=>{Ute=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|(\\\\()(?(?:[^()]|\\\\(\\\\g\\\\))*)(\\\\)))\\\\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*(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\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":"(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\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|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":"(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\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":"(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s*(?:(\\\\g)\\\\b)?"}]},{"include":"#when-clause"},{"include":"#comment"},{"include":"#block"}]},"char-character-escape":{"match":"\\\\\\\\(x[0-9a-fA-F]{1,4}|u[0-9a-fA-F]{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":"#property-declaration"},{"include":"#field-declaration"},{"include":"#event-declaration"},{"include":"#indexer-declaration"},{"include":"#variable-initializer"},{"include":"#constructor-declaration"},{"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*\\\\()","end":"(?<=\\\\})|(?=;)","patterns":[{"captures":{"1":{"name":"entity.name.function.cs"}},"match":"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b"},{"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|implicit)))\\\\s*(?(?:\\\\b(?:operator)))\\\\s*(?(?:(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\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|(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*)))\\\\s+(\\\\g)\\\\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|(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*)))\\\\s+(\\\\g)\\\\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+(?(?:(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s+(\\\\g)\\\\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":"(?)\\\\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":"(?|//|/\\\\*|$)","beginCaptures":{"1":{"name":"storage.type.accessor.$1.cs"}},"end":"(?<=\\\\}|;)|(?=\\\\})","patterns":[{"include":"#accessor-setter"}]}]},"event-declaration":{"begin":"\\\\b(event)\\\\b\\\\s*(?(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s+)(?\\\\g\\\\s*\\\\.\\\\s*)?(\\\\g)\\\\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*)?(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?<(?:[^<>]|\\\\g)*>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^()]|\\\\g)*\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s*\\\\b(\\\\g)\\\\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":"#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":"(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s+(\\\\g)\\\\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":"(?(?:(?:ref\\\\s+)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*)))\\\\s+(\\\\g)\\\\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*)?(?\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\))\\\\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":"(?(?(?:(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s+)(?\\\\g\\\\s*\\\\.\\\\s*)?(?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.interpolation.cs","patterns":[{"include":"#expression"}]},"intrusive":{"patterns":[{"include":"#preprocessor"},{"include":"#comment"}]},"invocation-expression":{"begin":"(?:(?:(\\\\?)\\\\s*)?(\\\\.)\\\\s*|(->)\\\\s*)?(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(<(?[^<>()]++|<\\\\g*+>|\\\\(\\\\g*+\\\\))*+>\\\\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":"(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))?\\\\s+(\\\\g)\\\\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)\\\\b)\\\\s*(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s+(\\\\g)\\\\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"}]},"local-function-declaration":{"begin":"\\\\b((?:(?:async|unsafe|static|extern)\\\\s+)*)(?(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?)?(?:\\\\s*\\\\[\\\\s*(?:,\\\\s*)*\\\\](?:\\\\s*\\\\?)?)*)\\\\s+(\\\\g)\\\\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-var-deconstruction":{"begin":"(?:\\\\b(var)\\\\b\\\\s*)(?\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\))\\\\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":"(?:(?:(\\\\bref)\\\\s+(?:(\\\\breadonly)\\\\s+)?)?(\\\\bvar\\\\b)|(?(?:(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*[?*]\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*)))\\\\s+(\\\\g)\\\\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:]]*)(?\\\\s*<([^<>]|\\\\g)+>\\\\s*)(?=(\\\\s*\\\\?)?\\\\s*\\\\.\\\\s*@?[_[:alpha:]][_[:alnum:]]*)"},{"captures":{"1":{"name":"variable.other.object.cs"}},"match":"(@?[_[:alpha:]][_[:alnum:]]*)(?=\\\\s*(?:(?:\\\\?\\\\s*)?\\\\.|->)\\\\s*@?[_[:alpha:]][_[:alnum:]]*)"}]},"method-declaration":{"begin":"(?(?(?:(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s+)(?\\\\g\\\\s*\\\\.\\\\s*)?(\\\\g)\\\\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":"(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s*(?=\\\\{|//|/\\\\*|$)"},"object-creation-expression-with-parameters":{"begin":"(new)(?:\\\\s+(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\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":"(?(?:(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s*\\\\b(?operator)\\\\b\\\\s*(?[+\\\\-*/%&|\\\\^!=~<>]+|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(ascending|descending)\\\\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+)?(?(?:(?:ref\\\\s+)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^()]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s+(\\\\g)"},"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":"#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"}]},"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":"#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(get)\\\\b\\\\s*(?=\\\\{|;|=>|//|/\\\\*|$)","beginCaptures":{"1":{"name":"storage.type.accessor.$1.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:][:space:]]*\\\\b(?:class|interface|struct|enum|event)\\\\b)(?(?(?:(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))\\\\s+)(?\\\\g\\\\s*\\\\.\\\\s*)?(?\\\\g)\\\\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*(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))?\\\\s+(\\\\g)\\\\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.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":"(?","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":"(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\))\\\\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":"(?(?:(?:(?:(?@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\\\\:\\\\:\\\\s*)?(?\\\\g\\\\s*(?\\\\s*<(?:[^<>]|\\\\g)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g)*|(?\\\\s*\\\\((?:[^\\\\(\\\\)]|\\\\g)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*\\\\]\\\\s*(?:\\\\?)?\\\\s*)*))(?:(?\\\\g)\\\\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":"(?)","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":"(?","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:]:_.-]*)|(?:\\\\#[[:digit:]]+)|(?:\\\\#x[[:xdigit:]]+))(;)","name":"constant.character.entity.cs"},{"match":"&","name":"invalid.illegal.bad-ampersand.cs"}]},"xml-comment":{"begin":"","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":"()","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":"(?Zte});var Hte,Zte,LN=_(()=>{Hte=Object.freeze(JSON.parse('{"displayName":"CSV","fileTypes":["csv"],"name":"csv","patterns":[{"captures":{"1":{"name":"rainbow1"},"2":{"name":"keyword.rainbow2"},"3":{"name":"entity.name.function.rainbow3"},"4":{"name":"comment.rainbow4"},"5":{"name":"string.rainbow5"},"6":{"name":"variable.parameter.rainbow6"},"7":{"name":"constant.numeric.rainbow7"},"8":{"name":"entity.name.type.rainbow8"},"9":{"name":"markup.bold.rainbow9"},"10":{"name":"invalid.rainbow10"}},"match":"((?: *\\"(?:[^\\"]*\\"\\")*[^\\"]*\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\"(?:[^\\"]*\\"\\")*[^\\"]*\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\"(?:[^\\"]*\\"\\")*[^\\"]*\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\"(?:[^\\"]*\\"\\")*[^\\"]*\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\"(?:[^\\"]*\\"\\")*[^\\"]*\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\"(?:[^\\"]*\\"\\")*[^\\"]*\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\"(?:[^\\"]*\\"\\")*[^\\"]*\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\"(?:[^\\"]*\\"\\")*[^\\"]*\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\"(?:[^\\"]*\\"\\")*[^\\"]*\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\"(?:[^\\"]*\\"\\")*[^\\"]*\\" *(?:,|$))|(?:[^,]*(?:,|$)))?","name":"rainbowgroup"}],"scopeName":"text.csv"}')),Zte=[Hte]});var $N={};x($N,{default:()=>Wte});var Yte,Wte,RN=_(()=>{Yte=Object.freeze(JSON.parse(`{"displayName":"CUE","fileTypes":["cue"],"name":"cue","patterns":[{"include":"#whitespace"},{"include":"#comment"},{"captures":{"1":{"name":"keyword.other.package"},"2":{"name":"entity.name.namespace"}},"match":"(?<])=(?![=~])","name":"punctuation.bind"},{"match":"<-","name":"punctuation.arrow"},{"include":"#expression"}]},"expression":{"patterns":[{"patterns":[{"captures":{"1":{"name":"keyword.control.for"},"2":{"name":"variable.other"},"3":{"name":"punctuation.separator"},"4":{"name":"variable.other"},"5":{"name":"keyword.control.in"}},"match":"(?=|[<](?![-=])|[>](?![=])","name":"keyword.operator.comparison"},{"match":"&{2}|\\\\|{2}|!(?![=~])","name":"keyword.operator.logical"},{"match":"&(?!&)|\\\\|(?!\\\\|)","name":"keyword.operator.set"}]},{"captures":{"1":{"name":"punctuation.accessor"},"2":{"name":"variable.other.member"}},"match":"(?Jte});var Kte,Jte,PN=_(()=>{Kte=Object.freeze(JSON.parse('{"displayName":"Cypher","fileTypes":["cql","cyp","cypher"],"name":"cypher","patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#keywords"},{"include":"#functions"},{"include":"#path-patterns"},{"include":"#operators"},{"include":"#identifiers"},{"include":"#properties_literal"},{"include":"#numbers"},{"include":"#strings"}],"repository":{"comments":{"patterns":[{"match":"//.*$\\\\n?","name":"comment.line.double-slash.cypher"}]},"constants":{"patterns":[{"match":"(?i)\\\\bTRUE|FALSE\\\\b","name":"constant.language.bool.cypher"},{"match":"(?i)\\\\bNULL\\\\b","name":"constant.language.missing.cypher"}]},"functions":{"patterns":[{"comment":"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html","match":"(?i)\\\\b((NOT)(?=\\\\s*\\\\()|IS\\\\s+NULL|IS\\\\s+NOT\\\\s+NULL)","name":"keyword.control.function.boolean.cypher"},{"comment":"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html","match":"(?i)\\\\b(ALL|ANY|NONE|SINGLE)(?=\\\\s*\\\\()","name":"support.function.predicate.cypher"},{"comment":"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html","match":"(?i)\\\\b(LENGTH|TYPE|ID|COALESCE|HEAD|LAST|TIMESTAMP|STARTNODE|ENDNODE|TOINT|TOFLOAT)(?=\\\\s*\\\\()","name":"support.function.scalar.cypher"},{"comment":"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html","match":"(?i)\\\\b(NODES|RELATIONSHIPS|LABELS|EXTRACT|FILTER|TAIL|RANGE|REDUCE)(?=\\\\s*\\\\()","name":"support.function.collection.cypher"},{"comment":"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html","match":"(?i)\\\\b(ABS|ACOS|ASIN|ATAN|ATAN2|COS|COT|DEGREES|E|EXP|FLOOR|HAVERSIN|LOG|LOG10|PI|RADIANS|RAND|ROUND|SIGN|SIN|SQRT|TAN)(?=\\\\s*\\\\()","name":"support.function.math.cypher"},{"comment":"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html","match":"(?i)\\\\b(COUNT|sum|avg|max|min|stdev|stdevp|percentileDisc|percentileCont|collect)(?=\\\\s*\\\\()","name":"support.function.aggregation.cypher"},{"comment":"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html","match":"(?i)\\\\b(STR|REPLACE|SUBSTRING|LEFT|RIGHT|LTRIM|RTRIM|TRIM|LOWER|UPPER|SPLIT)(?=\\\\s*\\\\()","name":"support.function.string.cypher"}]},"identifiers":{"patterns":[{"match":"`.+?`","name":"variable.other.quoted-identifier.cypher"},{"match":"[\\\\p{L}_][\\\\p{L}0-9_]*","name":"variable.other.identifier.cypher"}]},"keywords":{"patterns":[{"match":"(?i)\\\\b(START|MATCH|WHERE|RETURN|UNION|FOREACH|WITH|AS|LIMIT|SKIP|UNWIND|HAS|DISTINCT|OPTIONAL\\\\\\\\s+MATCH|ORDER\\\\s+BY|CALL|YIELD)\\\\b","name":"keyword.control.clause.cypher"},{"match":"(?i)\\\\b(ELSE|END|THEN|CASE|WHEN)\\\\b","name":"keyword.control.case.cypher"},{"match":"(?i)\\\\b(FIELDTERMINATOR|USING\\\\s+PERIODIC\\\\s+COMMIT|HEADERS|LOAD\\\\s+CSV|FROM)\\\\b","name":"keyword.data.import.cypher"},{"match":"(?i)\\\\b(USING\\\\s+INDEX|CREATE\\\\s+INDEX\\\\s+ON|DROP\\\\s+INDEX\\\\s+ON|CREATE\\\\s+CONSTRAINT\\\\s+ON|DROP\\\\s+CONSTRAINT\\\\s+ON)\\\\b","name":"keyword.other.indexes.cypher"},{"match":"(?i)\\\\b(MERGE|DELETE|SET|REMOVE|ON\\\\s+CREATE|ON\\\\s+MATCH|CREATE\\\\s+UNIQUE|CREATE)\\\\b","name":"keyword.data.definition.cypher"},{"match":"(?i)\\\\b(DESC|ASC)\\\\b","name":"keyword.other.order.cypher"},{"begin":"(?i)\\\\b(node|relationship|rel)((:)([\\\\p{L}_-][\\\\p{L}0-9_]*))?(?=\\\\s*\\\\()","beginCaptures":{"1":{"name":"support.class.starting-functions-point.cypher"},"2":{"name":"keyword.control.index-seperator.cypher"},"3":{"name":"keyword.control.index-seperator.cypher"},"4":{"name":"support.class.index.cypher"}},"end":"\\\\)","name":"source.starting-functions.cypher","patterns":[{"match":"((?:`.+?`)|(?:[\\\\p{L}_][\\\\p{L}0-9_]*))","name":"variable.parameter.relationship-name.cypher"},{"match":"(\\\\*)","name":"keyword.control.starting-function-params.cypher"},{"include":"#comments"},{"include":"#numbers"},{"include":"#strings"}]}]},"numbers":{"patterns":[{"match":"\\\\b\\\\d+(\\\\.\\\\d+)?\\\\b","name":"constant.numeric.cypher"}]},"operators":{"patterns":[{"match":"(\\\\+|\\\\-|\\\\/|\\\\*|\\\\%|\\\\?|!)","name":"keyword.operator.math.cypher"},{"match":"(<=|=>|<>|<|>|=~|=)","name":"keyword.operator.compare.cypher"},{"match":"(?i)\\\\b(OR|AND|XOR|IS)\\\\b","name":"keyword.operator.logical.cypher"},{"match":"(?i)\\\\b(IN)\\\\b","name":"keyword.operator.in.cypher"}]},"path-patterns":{"patterns":[{"match":"(<--|-->|--)","name":"support.function.relationship-pattern.cypher"},{"begin":"(<-|-)(\\\\[)","beginCaptures":{"1":{"name":"support.function.relationship-pattern-start.cypher"},"2":{"name":"keyword.operator.relationship-pattern-start.cypher"}},"end":"(])(->|-)","endCaptures":{"1":{"name":"keyword.operator.relationship-pattern-end.cypher"},"2":{"name":"support.function.relationship-pattern-end.cypher"}},"name":"path-pattern.cypher","patterns":[{"include":"#identifiers"},{"captures":{"1":{"name":"keyword.operator.relationship-type-start.cypher"},"2":{"name":"entity.name.class.relationship.type.cypher"}},"match":"(:)((?:`.+?`)|(?:[\\\\p{L}_][\\\\p{L}0-9_]*))","name":"entity.name.class.relationship-type.cypher"},{"captures":{"1":{"name":"support.type.operator.relationship-type-or.cypher"},"2":{"name":"entity.name.class.relationship.type-or.cypher"}},"match":"(\\\\|)(\\\\s*)((?:`.+?`)|(?:[\\\\p{L}_][\\\\p{L}0-9_]*))","name":"entity.name.class.relationship-type-ored.cypher"},{"match":"(?:\\\\?\\\\*|\\\\?|\\\\*)\\\\s*(?:\\\\d+\\\\s*(?:\\\\.\\\\.\\\\s*\\\\d+)?)?","name":"support.function.relationship-pattern.quant.cypher"},{"include":"#properties_literal"}]}]},"properties_literal":{"patterns":[{"begin":"{","beginCaptures":{"0":{"name":"keyword.control.properties_literal.cypher"}},"end":"}","endCaptures":{"0":{"name":"keyword.control.properties_literal.cypher"}},"name":"source.cypher","patterns":[{"match":":|,","name":"keyword.control.properties_literal.seperator.cypher"},{"include":"#comments"},{"include":"#constants"},{"include":"#functions"},{"include":"#operators"},{"include":"#identifiers"},{"include":"#numbers"},{"include":"#strings"}]}]},"string_escape":{"captures":{"2":{"name":"string.quoted.double.cypher"}},"match":"(\\\\\\\\\\\\\\\\|\\\\\\\\[tbnrf])|(\\\\\\\\\'|\\\\\\\\\\")","name":"constant.character.escape.cypher"},"strings":{"patterns":[{"begin":"\'","end":"\'","name":"string.quoted.single.cypher","patterns":[{"include":"#string_escape"}]},{"begin":"\\"","end":"\\"","name":"string.quoted.double.cypher","patterns":[{"include":"#string_escape"}]}]}},"scopeName":"source.cypher","aliases":["cql"]}')),Jte=[Kte]});var MN={};x(MN,{default:()=>Xte});var Vte,Xte,TN=_(()=>{Vte=Object.freeze(JSON.parse(`{"displayName":"D","fileTypes":["d","di","dpp"],"name":"d","patterns":[{"include":"#comment"},{"include":"#type"},{"include":"#statement"},{"include":"#expression"}],"repository":{"aggregate-declaration":{"patterns":[{"include":"#class-declaration"},{"include":"#interface-declaration"},{"include":"#struct-declaration"},{"include":"#union-declaration"},{"include":"#mixin-template-declaration"},{"include":"#template-declaration"}]},"alias-declaration":{"patterns":[{"begin":"\\\\b(alias)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.other.alias.d"}},"end":";","endCaptures":{"0":{"name":"meta.alias.end.d"}},"patterns":[{"include":"#type"},{"match":"=(?![=>])","name":"keyword.operator.equal.alias.d"},{"include":"#expression"}]}]},"align-attribute":{"patterns":[{"begin":"\\\\balign\\\\s*\\\\(","end":"\\\\)","name":"storage.modifier.align-attribute.d","patterns":[{"include":"#integer-literal"}]},{"match":"\\\\balign\\\\b\\\\s*(?!\\\\()","name":"storage.modifier.align-attribute.d"}]},"alternate-wysiwyg-string":{"patterns":[{"begin":"\`","end":"\`[cwd]?","name":"string.alternate-wysiwyg-string.d","patterns":[{"include":"#wysiwyg-characters"}]}]},"arbitrary-delimited-string":{"begin":"q\\"(\\\\w+)","end":"\\\\1\\"","name":"string.delimited.d","patterns":[{"match":".","name":"string.delimited.d"}]},"arithmetic-expression":{"patterns":[{"match":"\\\\^\\\\^|\\\\+\\\\+|--|(?>>=|\\\\^\\\\^=|>>=|<<=|~=|\\\\^=|\\\\|=|&=|%=|/=|\\\\*=|-=|\\\\+=|=(?!>)","name":"keyword.operator.assign.d"}]},"attribute":{"patterns":[{"include":"#linkage-attribute"},{"include":"#align-attribute"},{"include":"#deprecated-attribute"},{"include":"#protection-attribute"},{"include":"#pragma"},{"match":"\\\\b(static|extern|abstract|final|override|synchronized|auto|scope|const|immutable|inout|shared|__gshared|nothrow|pure|ref)\\\\b","name":"entity.other.attribute-name.d"},{"include":"#property"}]},"base-type":{"patterns":[{"match":"\\\\b(auto|bool|byte|ubyte|short|ushort|int|uint|long|ulong|char|wchar|dchar|float|double|real|ifloat|idouble|ireal|cfloat|cdouble|creal|void|noreturn)\\\\b","name":"storage.type.basic-type.d"},{"match":"\\\\b(string|wstring|dstring|size_t|ptrdiff_t)\\\\b(?!\\\\s*=)","name":"storage.type.basic-type.d"}]},"binary-integer":{"patterns":[{"match":"\\\\b(0b|0B)[0-1_]+(Lu|LU|uL|UL|L|u|U)?\\\\b","name":"constant.numeric.integer.binary.d"}]},"bitwise-expression":{"patterns":[{"match":"\\\\||\\\\^|&","name":"keyword.operator.bitwise.d"}]},"block-comment":{"patterns":[{"begin":"/((?!\\\\*/)\\\\*)+","beginCaptures":{"0":{"name":"comment.block.begin.d"}},"end":"\\\\*+/","endCaptures":{"0":{"name":"comment.block.end.d"}},"name":"comment.block.content.d"}]},"break-statement":{"patterns":[{"match":"\\\\bbreak\\\\b","name":"keyword.control.break.d"}]},"case-statement":{"patterns":[{"begin":"\\\\b(case)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.case.range.d"}},"end":":","endCaptures":{"0":{"name":"meta.case.end.d"}},"patterns":[{"include":"#comment"},{"include":"#expression"},{"include":"#comma"}]}]},"cast-expression":{"patterns":[{"begin":"\\\\b(cast)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.cast.d"},"2":{"name":"keyword.operator.cast.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.operator.cast.end.d"}},"patterns":[{"include":"#type"},{"include":"#extended-type"}]}]},"catch":{"patterns":[{"begin":"\\\\b(catch)\\\\b\\\\s*(?=\\\\()","captures":{"1":{"name":"keyword.control.catch.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"source.d"}]}]}]},"catches":{"patterns":[{"include":"#catch"}]},"character":{"patterns":[{"match":"[\\\\w\\\\s]+","name":"string.character.d"}]},"character-literal":{"patterns":[{"begin":"'","end":"'","name":"string.character-literal.d","patterns":[{"include":"#character"},{"include":"#escape-sequence"}]}]},"class-declaration":{"patterns":[{"captures":{"1":{"name":"storage.type.class.d"},"2":{"name":"entity.name.class.d"}},"match":"\\\\b(class)(?:\\\\s+([A-Za-z_][\\\\w_\\\\d]*))?\\\\b"},{"include":"#protection-attribute"},{"include":"#class-members"}]},"class-members":{"patterns":[{"include":"#shared-static-constructor"},{"include":"#shared-static-destructor"},{"include":"#constructor"},{"include":"#destructor"},{"include":"#postblit"},{"include":"#invariant"},{"include":"#member-function-attribute"}]},"colon":{"patterns":[{"match":":","name":"support.type.colon.d"}]},"comma":{"patterns":[{"match":",","name":"keyword.operator.comma.d"}]},"comment":{"patterns":[{"include":"#block-comment"},{"include":"#line-comment"},{"include":"#nesting-block-comment"}]},"condition":{"patterns":[{"include":"#version-condition"},{"include":"#debug-condition"},{"include":"#static-if-condition"}]},"conditional-declaration":{"patterns":[{"include":"#condition"},{"match":"\\\\belse\\\\b","name":"keyword.control.else.d"},{"include":"#colon"},{"include":"#decl-defs"}]},"conditional-expression":{"patterns":[{"match":"\\\\s(\\\\?|:)\\\\s","name":"keyword.operator.ternary.d"}]},"conditional-statement":{"patterns":[{"include":"#condition"},{"include":"#no-scope-non-empty-statement"},{"match":"\\\\belse\\\\b","name":"keyword.control.else.d"}]},"constructor":{"patterns":[{"match":"\\\\bthis\\\\b","name":"entity.name.function.constructor.d"}]},"continue-statement":{"patterns":[{"match":"\\\\bcontinue\\\\b","name":"keyword.control.continue.d"}]},"debug-condition":{"patterns":[{"begin":"\\\\bdebug\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.other.debug.identifier.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.other.debug.identifier.end.d"}},"patterns":[{"include":"#integer-literal"},{"include":"#identifier"}]},{"match":"\\\\bdebug\\\\b\\\\s*(?!\\\\()","name":"keyword.other.debug.plain.d"}]},"debug-specification":{"patterns":[{"match":"\\\\bdebug\\\\b\\\\s*(?==)","name":"keyword.other.debug-specification.d"}]},"decimal-float":{"patterns":[{"match":"\\\\b((\\\\.[0-9])|(0\\\\.)|(([1-9]|(0[1-9_]))[0-9_]*\\\\.))[0-9_]*((e-|E-|e\\\\+|E\\\\+|e|E)[0-9][0-9_]*)?[LfF]?i?\\\\b","name":"constant.numeric.float.decimal.d"}]},"decimal-integer":{"patterns":[{"match":"\\\\b(0(?=[^\\\\dxXbB]))|([1-9][0-9_]*)(Lu|LU|uL|UL|L|u|U)?\\\\b","name":"constant.numeric.integer.decimal.d"}]},"declaration":{"patterns":[{"include":"#alias-declaration"},{"include":"#aggregate-declaration"},{"include":"#enum-declaration"},{"include":"#import-declaration"},{"include":"#storage-class"},{"include":"#void-initializer"},{"include":"#mixin-declaration"}]},"declaration-statement":{"patterns":[{"include":"#declaration"}]},"default-statement":{"patterns":[{"captures":{"1":{"name":"keyword.control.case.default.d"},"2":{"name":"meta.default.colon.d"}},"match":"\\\\b(default)\\\\s*(:)"}]},"delete-expression":{"patterns":[{"match":"\\\\bdelete\\\\s+","name":"keyword.other.delete.d"}]},"delimited-string":{"begin":"q\\"","end":"\\"","name":"string.delimited.d","patterns":[{"include":"#delimited-string-bracket"},{"include":"#delimited-string-parens"},{"include":"#delimited-string-angle-brackets"},{"include":"#delimited-string-braces"}]},"delimited-string-angle-brackets":{"patterns":[{"begin":"<","end":">","name":"constant.character.angle-brackets.d","patterns":[{"include":"#wysiwyg-characters"}]}]},"delimited-string-braces":{"patterns":[{"begin":"\\\\{","end":"\\\\}","name":"constant.character.delimited.braces.d","patterns":[{"include":"#wysiwyg-characters"}]}]},"delimited-string-bracket":{"patterns":[{"begin":"\\\\[","end":"\\\\]","name":"constant.characters.delimited.brackets.d","patterns":[{"include":"#wysiwyg-characters"}]}]},"delimited-string-parens":{"patterns":[{"begin":"\\\\(","end":"\\\\)","name":"constant.character.delimited.parens.d","patterns":[{"include":"#wysiwyg-characters"}]}]},"deprecated-statement":{"patterns":[{"begin":"\\\\bdeprecated\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.other.deprecated.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.other.deprecated.end.d"}},"patterns":[{"include":"#comment"},{"include":"#expression"},{"include":"#comma"}]},{"match":"\\\\bdeprecated\\\\b\\\\s*(?!\\\\()","name":"keyword.other.deprecated.plain.d"}]},"destructor":{"patterns":[{"match":"\\\\b~this\\\\s*\\\\(\\\\s*\\\\)","name":"entity.name.class.destructor.d"}]},"do-statement":{"patterns":[{"match":"\\\\bdo\\\\b","name":"keyword.control.do.d"}]},"double-quoted-characters":{"patterns":[{"include":"#character"},{"include":"#end-of-line"},{"include":"#escape-sequence"}]},"double-quoted-string":{"patterns":[{"begin":"\\"","end":"\\"[cwd]?","name":"string.double-quoted-string.d","patterns":[{"include":"#double-quoted-characters"}]}]},"end-of-line":{"patterns":[{"match":"\\\\n+","name":"string.character.end-of-line.d"}]},"enum-declaration":{"patterns":[{"begin":"\\\\b(enum)\\\\b\\\\s+(?=.*[=;])","beginCaptures":{"1":{"name":"storage.type.enum.d"}},"end":"([A-Za-z_][\\\\w_\\\\d]*)\\\\s*(?=;|=|\\\\()(;)?","endCaptures":{"1":{"name":"entity.name.type.enum.d"},"2":{"name":"meta.enum.end.d"}},"patterns":[{"include":"#type"},{"include":"#extended-type"},{"match":"=(?![=>])","name":"keyword.operator.equal.alias.d"}]}]},"eof":{"patterns":[{"begin":"__EOF__","beginCaptures":{"0":{"name":"comment.block.documentation.eof.start.d"}},"end":"(?!__NEVER_MATCH__)__NEVER_MATCH__","name":"text.eof.d"}]},"equal":{"patterns":[{"match":"=(?![=>])","name":"keyword.operator.equal.d"}]},"escape-sequence":{"patterns":[{"match":"(\\\\\\\\(?:quot|amp|lt|gt|OElig|oelig|Scaron|scaron|Yuml|circ|tilde|ensp|emsp|thinsp|zwnj|zwj|lrm|rlm|ndash|mdash|lsquo|rsquo|sbquo|ldquo|rdquo|bdquo|dagger|Dagger|permil|lsaquo|rsaquo|euro|nbsp|iexcl|cent|pound|curren|yen|brvbar|sect|uml|copy|ordf|laquo|not|shy|reg|macr|deg|plusmn|sup2|sup3|acute|micro|para|middot|cedil|sup1|ordm|raquo|frac14|frac12|frac34|iquest|Agrave|Aacute|Acirc|Atilde|Auml|Aring|Aelig|Ccedil|egrave|eacute|ecirc|iuml|eth|ntilde|ograve|oacute|ocirc|otilde|ouml|divide|oslash|ugrave|uacute|ucirc|uuml|yacute|thorn|yuml|fnof|Alpha|Beta|Gamma|Delta|Epsilon|Zeta|Eta|Theta|Iota|Kappa|Lambda|Mu|Nu|Xi|Omicron|Pi|Rho|Sigma|Tau|Upsilon|Phi|Chi|Psi|Omega|alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigmaf|sigma|tau|upsilon|phi|chi|psi|omega|thetasym|upsih|piv|bull|hellip|prime|Prime|oline|frasl|weierp|image|real|trade|alefsym|larr|uarr|rarr|darr|harr|crarr|lArr|uArr|rArr|dArr|hArr|forall|part|exist|empty|nabla|isin|notin|ni|prod|sum|minux|lowast|radic|prop|infin|ang|and|or|cap|cup|int|there4|sim|cong|asymp|ne|equiv|le|ge|sub|sup|nsub|sube|supe|oplus|otimes|perp|sdot|lceil|rceil|lfloor|rfloor|loz|spades|clubs|hearts|diams|lang|rang))","name":"constant.character.escape-sequence.entity.d"},{"match":"(\\\\\\\\x[0-9a-fA-F_]{2}|\\\\\\\\u[0-9a-fA-F_]{4}|\\\\\\\\U[0-9a-fA-F_]{8}|\\\\\\\\[0-7]{1,3})","name":"constant.character.escape-sequence.number.d"},{"match":"(\\\\\\\\t|\\\\\\\\'|\\\\\\\\\\"|\\\\\\\\\\\\?|\\\\\\\\0|\\\\\\\\a|\\\\\\\\b|\\\\\\\\f|\\\\\\\\n|\\\\\\\\r|\\\\\\\\v|\\\\\\\\\\\\\\\\)","name":"constant.character.escape-sequence.d"}]},"expression":{"patterns":[{"include":"#index-expression"},{"include":"#expression-no-index"}]},"expression-no-index":{"patterns":[{"include":"#function-literal"},{"include":"#assert-expression"},{"include":"#assign-expression"},{"include":"#mixin-expression"},{"include":"#import-expression"},{"include":"#traits-expression"},{"include":"#is-expression"},{"include":"#typeid-expression"},{"include":"#shift-expression"},{"include":"#logical-expression"},{"include":"#rel-expression"},{"include":"#bitwise-expression"},{"include":"#identity-expression"},{"include":"#in-expression"},{"include":"#conditional-expression"},{"include":"#arithmetic-expression"},{"include":"#new-expression"},{"include":"#delete-expression"},{"include":"#cast-expression"},{"include":"#type-specialization"},{"include":"#comma"},{"include":"#special-keyword"},{"include":"#functions"},{"include":"#type"},{"include":"#parentheses-expression"},{"include":"#lexical"}]},"extended-type":{"patterns":[{"match":"\\\\b((\\\\.\\\\s*)?[_\\\\w][_\\\\d\\\\w]*)(\\\\s*\\\\.\\\\s*[_\\\\w][_\\\\d\\\\w]*)*\\\\b","name":"entity.name.type.d"},{"begin":"\\\\[","beginCaptures":{"0":{"name":"storage.type.array.expression.begin.d"}},"end":"\\\\]","endCaptures":{"0":{"name":"storage.type.array.expression.end.d"}},"patterns":[{"match":"\\\\.\\\\.|\\\\$","name":"keyword.operator.slice.d"},{"include":"#type"},{"include":"#expression"}]}]},"final-switch-statement":{"patterns":[{"begin":"\\\\b(final\\\\s+switch)\\\\b\\\\s*","captures":{"1":{"name":"keyword.control.final.switch.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"source.d"}]}]}]},"finally-statement":{"patterns":[{"match":"\\\\bfinally\\\\b","name":"keyword.control.throw.d"}]},"float-literal":{"patterns":[{"include":"#decimal-float"},{"include":"#hexadecimal-float"}]},"for-statement":{"patterns":[{"begin":"\\\\b(for)\\\\b\\\\s*","captures":{"1":{"name":"keyword.control.for.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"source.d"}]}]}]},"foreach-reverse-statement":{"patterns":[{"begin":"\\\\b(foreach_reverse)\\\\b\\\\s*","captures":{"1":{"name":"keyword.control.foreach_reverse.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"match":";","name":"keyword.operator.semi-colon.d"},{"include":"source.d"}]}]}]},"foreach-statement":{"patterns":[{"begin":"\\\\b(foreach)\\\\b\\\\s*","captures":{"1":{"name":"keyword.control.foreach.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"match":";","name":"keyword.operator.semi-colon.d"},{"include":"source.d"}]}]}]},"function-attribute":{"patterns":[{"match":"\\\\b(nothrow|pure)\\\\b","name":"storage.type.modifier.function-attribute.d"},{"include":"#property"}]},"function-body":{"patterns":[{"include":"#in-statement"},{"include":"#out-statement"},{"include":"#block-statement"}]},"function-literal":{"patterns":[{"match":"=>","name":"keyword.operator.lambda.d"},{"match":"\\\\b(function|delegate)\\\\b","name":"keyword.other.function-literal.d"},{"begin":"\\\\b([_\\\\w][_\\\\d\\\\w]*)\\\\s*(=>)","beginCaptures":{"1":{"name":"variable.parameter.d"},"2":{"name":"meta.lexical.token.symbolic.d"}},"end":"(?=[\\\\);,\\\\]}])","patterns":[{"include":"source.d"}]},{"begin":"(?<=\\\\)|\\\\()(\\\\s*)({)","beginCaptures":{"1":{"name":"source.d"},"2":{"name":"source.d"}},"end":"}","patterns":[{"include":"source.d"}]}]},"function-prelude":{"patterns":[{"match":"(?!typeof|typeid)((\\\\.\\\\s*)?[_\\\\w][_\\\\d\\\\w]*)(\\\\s*\\\\.\\\\s*[_\\\\w][_\\\\d\\\\w]*)*\\\\s*(?=\\\\()","name":"entity.name.function.d"}]},"functions":{"patterns":[{"include":"#function-attribute"},{"include":"#function-prelude"}]},"goto-statement":{"patterns":[{"match":"\\\\bgoto\\\\s+default\\\\b","name":"keyword.control.goto.d"},{"match":"\\\\bgoto\\\\s+case\\\\b","name":"keyword.control.goto.d"},{"match":"\\\\bgoto\\\\b","name":"keyword.control.goto.d"}]},"hex-string":{"patterns":[{"begin":"x\\"","end":"\\"[cwd]?","name":"string.hex-string.d","patterns":[{"match":"[a-fA-F0-9_s]+","name":"constant.character.hex-string.d"}]}]},"hexadecimal-float":{"patterns":[{"match":"\\\\b0[xX][0-9a-fA-F_]*(\\\\.[0-9a-fA-F_]*)?(p-|P-|p\\\\+|P\\\\+|p|P)[0-9][0-9_]*[LfF]?i?\\\\b","name":"constant.numeric.float.hexadecimal.d"}]},"hexadecimal-integer":{"patterns":[{"match":"\\\\b(0x|0X)([0-9a-fA-F][0-9a-fA-F_]*)(Lu|LU|uL|UL|L|u|U)?\\\\b","name":"constant.numeric.integer.hexadecimal.d"}]},"identifier":{"patterns":[{"match":"\\\\b((\\\\.\\\\s*)?[_\\\\w][_\\\\d\\\\w]*)(\\\\s*\\\\.\\\\s*[_\\\\w][_\\\\d\\\\w]*)*\\\\b","name":"variable.d"}]},"identifier-list":{"patterns":[{"match":",","name":"keyword.other.comma.d"},{"include":"#identifier"}]},"identity-expression":{"patterns":[{"match":"\\\\b(is|!is)\\\\b","name":"keyword.operator.identity.d"}]},"if-statement":{"patterns":[{"begin":"\\\\b(if)\\\\b\\\\s*","captures":{"1":{"name":"keyword.control.if.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"source.d"}]}]},{"match":"\\\\belse\\\\b\\\\s*","name":"keyword.control.else.d"}]},"import-declaration":{"patterns":[{"begin":"\\\\b(static\\\\s+)?(import)\\\\s+(?!\\\\()","beginCaptures":{"1":{"name":"keyword.package.import.d"},"2":{"name":"keyword.package.import.d"}},"end":";","endCaptures":{"0":{"name":"meta.import.end.d"}},"patterns":[{"include":"#import-identifier"},{"include":"#comma"},{"include":"#comment"}]}]},"import-expression":{"patterns":[{"begin":"\\\\b(import)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.import.d"},"2":{"name":"keyword.other.import.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.other.import.end.d"}},"patterns":[{"include":"#comment"},{"include":"#expression"},{"include":"#comma"}]}]},"import-identifier":{"patterns":[{"match":"([_a-zA-Z][_\\\\d\\\\w]*)(\\\\s*\\\\.\\\\s*[_a-zA-Z][_\\\\d\\\\w]*)*","name":"variable.parameter.import.d"}]},"in-expression":{"patterns":[{"match":"\\\\b(in|!in)\\\\b","name":"keyword.operator.in.d"}]},"in-statement":{"patterns":[{"match":"\\\\bin\\\\b","name":"keyword.control.in.d"}]},"index-expression":{"patterns":[{"begin":"\\\\[","end":"\\\\]","patterns":[{"match":"\\\\.\\\\.|\\\\$","name":"keyword.operator.slice.d"},{"include":"#expression-no-index"}]}]},"integer-literal":{"patterns":[{"include":"#decimal-integer"},{"include":"#binary-integer"},{"include":"#hexadecimal-integer"}]},"interface-declaration":{"patterns":[{"captures":{"1":{"name":"storage.type.interface.d"},"2":{"name":"entity.name.type.interface.d"}},"match":"\\\\b(interface)(?:\\\\s+([A-Za-z_][\\\\w_\\\\d]*))?\\\\b"}]},"invariant":{"patterns":[{"match":"\\\\binvariant\\\\s*\\\\(\\\\s*\\\\)","name":"entity.name.class.invariant.d"}]},"is-expression":{"patterns":[{"begin":"\\\\bis\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.token.is.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.token.is.end.d"}},"patterns":[{"include":"#comment"},{"include":"#expression"},{"include":"#comma"}]}]},"keyword":{"patterns":[{"match":"\\\\babstract\\\\b","name":"keyword.token.abstract.d"},{"match":"\\\\balias\\\\b","name":"keyword.token.alias.d"},{"match":"\\\\balign\\\\b","name":"keyword.token.align.d"},{"match":"\\\\basm\\\\b","name":"keyword.token.asm.d"},{"match":"\\\\bassert\\\\b","name":"keyword.token.assert.d"},{"match":"\\\\bauto\\\\b","name":"keyword.token.auto.d"},{"match":"\\\\bbool\\\\b","name":"keyword.token.bool.d"},{"match":"\\\\bbreak\\\\b","name":"keyword.token.break.d"},{"match":"\\\\bbyte\\\\b","name":"keyword.token.byte.d"},{"match":"\\\\bcase\\\\b","name":"keyword.token.case.d"},{"match":"\\\\bcast\\\\b","name":"keyword.token.cast.d"},{"match":"\\\\bcatch\\\\b","name":"keyword.token.catch.d"},{"match":"\\\\bcdouble\\\\b","name":"keyword.token.cdouble.d"},{"match":"\\\\bcent\\\\b","name":"keyword.token.cent.d"},{"match":"\\\\bcfloat\\\\b","name":"keyword.token.cfloat.d"},{"match":"\\\\bchar\\\\b","name":"keyword.token.char.d"},{"match":"\\\\bclass\\\\b","name":"keyword.token.class.d"},{"match":"\\\\bconst\\\\b","name":"keyword.token.const.d"},{"match":"\\\\bcontinue\\\\b","name":"keyword.token.continue.d"},{"match":"\\\\bcreal\\\\b","name":"keyword.token.creal.d"},{"match":"\\\\bdchar\\\\b","name":"keyword.token.dchar.d"},{"match":"\\\\bdebug\\\\b","name":"keyword.token.debug.d"},{"match":"\\\\bdefault\\\\b","name":"keyword.token.default.d"},{"match":"\\\\bdelegate\\\\b","name":"keyword.token.delegate.d"},{"match":"\\\\bdelete\\\\b","name":"keyword.token.delete.d"},{"match":"\\\\bdeprecated\\\\b","name":"keyword.token.deprecated.d"},{"match":"\\\\bdo\\\\b","name":"keyword.token.do.d"},{"match":"\\\\bdouble\\\\b","name":"keyword.token.double.d"},{"match":"\\\\belse\\\\b","name":"keyword.token.else.d"},{"match":"\\\\benum\\\\b","name":"keyword.token.enum.d"},{"match":"\\\\bexport\\\\b","name":"keyword.token.export.d"},{"match":"\\\\bextern\\\\b","name":"keyword.token.extern.d"},{"match":"\\\\bfalse\\\\b","name":"constant.language.boolean.false.d"},{"match":"\\\\bfinal\\\\b","name":"keyword.token.final.d"},{"match":"\\\\bfinally\\\\b","name":"keyword.token.finally.d"},{"match":"\\\\bfloat\\\\b","name":"keyword.token.float.d"},{"match":"\\\\bfor\\\\b","name":"keyword.token.for.d"},{"match":"\\\\bforeach\\\\b","name":"keyword.token.foreach.d"},{"match":"\\\\bforeach_reverse\\\\b","name":"keyword.token.foreach_reverse.d"},{"match":"\\\\bfunction\\\\b","name":"keyword.token.function.d"},{"match":"\\\\bgoto\\\\b","name":"keyword.token.goto.d"},{"match":"\\\\bidouble\\\\b","name":"keyword.token.idouble.d"},{"match":"\\\\bif\\\\b","name":"keyword.token.if.d"},{"match":"\\\\bifloat\\\\b","name":"keyword.token.ifloat.d"},{"match":"\\\\bimmutable\\\\b","name":"keyword.token.immutable.d"},{"match":"\\\\bimport\\\\b","name":"keyword.token.import.d"},{"match":"\\\\bin\\\\b","name":"keyword.token.in.d"},{"match":"\\\\binout\\\\b","name":"keyword.token.inout.d"},{"match":"\\\\bint\\\\b","name":"keyword.token.int.d"},{"match":"\\\\binterface\\\\b","name":"keyword.token.interface.d"},{"match":"\\\\binvariant\\\\b","name":"keyword.token.invariant.d"},{"match":"\\\\bireal\\\\b","name":"keyword.token.ireal.d"},{"match":"\\\\bis\\\\b","name":"keyword.token.is.d"},{"match":"\\\\blazy\\\\b","name":"keyword.token.lazy.d"},{"match":"\\\\blong\\\\b","name":"keyword.token.long.d"},{"match":"\\\\bmacro\\\\b","name":"keyword.token.macro.d"},{"match":"\\\\bmixin\\\\b","name":"keyword.token.mixin.d"},{"match":"\\\\bmodule\\\\b","name":"keyword.token.module.d"},{"match":"\\\\bnew\\\\b","name":"keyword.token.new.d"},{"match":"\\\\bnothrow\\\\b","name":"keyword.token.nothrow.d"},{"match":"\\\\bnull\\\\b","name":"constant.language.null.d"},{"match":"\\\\bout\\\\b","name":"keyword.token.out.d"},{"match":"\\\\boverride\\\\b","name":"keyword.token.override.d"},{"match":"\\\\bpackage\\\\b","name":"keyword.token.package.d"},{"match":"\\\\bpragma\\\\b","name":"keyword.token.pragma.d"},{"match":"\\\\bprivate\\\\b","name":"keyword.token.private.d"},{"match":"\\\\bprotected\\\\b","name":"keyword.token.protected.d"},{"match":"\\\\bpublic\\\\b","name":"keyword.token.public.d"},{"match":"\\\\bpure\\\\b","name":"keyword.token.pure.d"},{"match":"\\\\breal\\\\b","name":"keyword.token.real.d"},{"match":"\\\\bref\\\\b","name":"keyword.token.ref.d"},{"match":"\\\\breturn\\\\b","name":"keyword.token.return.d"},{"match":"\\\\bscope\\\\b","name":"keyword.token.scope.d"},{"match":"\\\\bshared\\\\b","name":"keyword.token.shared.d"},{"match":"\\\\bshort\\\\b","name":"keyword.token.short.d"},{"match":"\\\\bstatic\\\\b","name":"keyword.token.static.d"},{"match":"\\\\bstruct\\\\b","name":"keyword.token.struct.d"},{"match":"\\\\bsuper\\\\b","name":"keyword.token.super.d"},{"match":"\\\\bswitch\\\\b","name":"keyword.token.switch.d"},{"match":"\\\\bsynchronized\\\\b","name":"keyword.token.synchronized.d"},{"match":"\\\\btemplate\\\\b","name":"keyword.token.template.d"},{"match":"\\\\bthis\\\\b","name":"keyword.token.this.d"},{"match":"\\\\bthrow\\\\b","name":"keyword.token.throw.d"},{"match":"\\\\btrue\\\\b","name":"constant.language.boolean.true.d"},{"match":"\\\\btry\\\\b","name":"keyword.token.try.d"},{"match":"\\\\btypedef\\\\b","name":"keyword.token.typedef.d"},{"match":"\\\\btypeid\\\\b","name":"keyword.token.typeid.d"},{"match":"\\\\btypeof\\\\b","name":"keyword.token.typeof.d"},{"match":"\\\\bubyte\\\\b","name":"keyword.token.ubyte.d"},{"match":"\\\\bucent\\\\b","name":"keyword.token.ucent.d"},{"match":"\\\\buint\\\\b","name":"keyword.token.uint.d"},{"match":"\\\\bulong\\\\b","name":"keyword.token.ulong.d"},{"match":"\\\\bunion\\\\b","name":"keyword.token.union.d"},{"match":"\\\\bunittest\\\\b","name":"keyword.token.unittest.d"},{"match":"\\\\bushort\\\\b","name":"keyword.token.ushort.d"},{"match":"\\\\bversion\\\\b","name":"keyword.token.version.d"},{"match":"\\\\bvoid\\\\b","name":"keyword.token.void.d"},{"match":"\\\\bvolatile\\\\b","name":"keyword.token.volatile.d"},{"match":"\\\\bwchar\\\\b","name":"keyword.token.wchar.d"},{"match":"\\\\bwhile\\\\b","name":"keyword.token.while.d"},{"match":"\\\\bwith\\\\b","name":"keyword.token.with.d"},{"match":"\\\\b__FILE__\\\\b","name":"keyword.token.__FILE__.d"},{"match":"\\\\b__MODULE__\\\\b","name":"keyword.token.__MODULE__.d"},{"match":"\\\\b__LINE__\\\\b","name":"keyword.token.__LINE__.d"},{"match":"\\\\b__FUNCTION__\\\\b","name":"keyword.token.__FUNCTION__.d"},{"match":"\\\\b__PRETTY_FUNCTION__\\\\b","name":"keyword.token.__PRETTY_FUNCTION__.d"},{"match":"\\\\b__gshared\\\\b","name":"keyword.token.__gshared.d"},{"match":"\\\\b__traits\\\\b","name":"keyword.token.__traits.d"},{"match":"\\\\b__vector\\\\b","name":"keyword.token.__vector.d"},{"match":"\\\\b__parameters\\\\b","name":"keyword.token.__parameters.d"}]},"labeled-statement":{"patterns":[{"match":"\\\\b(?!abstract|alias|align|asm|assert|auto|bool|break|byte|case|cast|catch|cdouble|cent|cfloat|char|class|const|continue|creal|dchar|debug|default|delegate|delete|deprecated|do|double|else|enum|export|extern|false|final|finally|float|for|foreach|foreach_reverse|function|goto|idouble|if|ifloat|immutable|import|in|inout|int|interface|invariant|ireal|is|lazy|long|macro|mixin|module|new|nothrow|noreturn|null|out|override|package|pragma|private|protected|public|pure|real|ref|return|scope|shared|short|static|struct|super|switch|synchronized|template|this|throw|true|try|typedef|typeid|typeof|ubyte|ucent|uint|ulong|union|unittest|ushort|version|void|volatile|wchar|while|with|__FILE__|__MODULE__|__LINE__|__FUNCTION__|__PRETTY_FUNCTION__|__gshared|__traits|__vector|__parameters)[a-zA-Z_][a-zA-Z_0-9]*\\\\s*:","name":"entity.name.d"}]},"lexical":{"patterns":[{"include":"#comment"},{"include":"#string-literal"},{"include":"#character-literal"},{"include":"#float-literal"},{"include":"#integer-literal"},{"include":"#eof"},{"include":"#special-tokens"},{"include":"#special-token-sequence"},{"include":"#keyword"},{"include":"#identifier"}]},"line-comment":{"patterns":[{"match":"//+.*$","name":"comment.line.d"}]},"linkage-attribute":{"patterns":[{"begin":"\\\\bextern\\\\s*\\\\(\\\\s*C\\\\+\\\\+\\\\s*,","beginCaptures":{"0":{"name":"keyword.other.extern.cplusplus.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.other.extern.cplusplus.end.d"}},"patterns":[{"include":"#identifier"},{"include":"#comma"}]},{"begin":"\\\\bextern\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.other.extern.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.other.extern.end.d"}},"patterns":[{"include":"#linkage-type"}]}]},"linkage-type":{"patterns":[{"match":"C|C\\\\+\\\\+|D|Windows|Pascal|System","name":"storage.modifier.linkage-type.d"}]},"logical-expression":{"patterns":[{"match":"\\\\|\\\\||&&|==|!=|!","name":"keyword.operator.logical.d"}]},"member-function-attribute":{"patterns":[{"match":"\\\\b(const|immutable|inout|shared)\\\\b","name":"storage.type.modifier.member-function-attribute"}]},"mixin-declaration":{"patterns":[{"begin":"\\\\bmixin\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.mixin.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.mixin.end.d"}},"patterns":[{"include":"#comment"},{"include":"#expression"},{"include":"#comma"}]}]},"mixin-expression":{"patterns":[{"begin":"\\\\bmixin\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.other.mixin.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.other.mixin.end.d"}},"patterns":[{"include":"#comment"},{"include":"#expression"},{"include":"#comma"}]}]},"mixin-statement":{"patterns":[{"begin":"\\\\bmixin\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.control.mixin.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.control.mixin.end.d"}},"patterns":[{"include":"#comment"},{"include":"#expression"},{"include":"#comma"}]}]},"mixin-template-declaration":{"patterns":[{"captures":{"1":{"name":"storage.type.mixintemplate.d"},"2":{"name":"entity.name.type.mixintemplate.d"}},"match":"\\\\b(mixin\\\\s*template)(?:\\\\s+([A-Za-z_][\\\\w_\\\\d]*))?\\\\b"}]},"module":{"packages":[{"import":"#module-declaration"}]},"module-declaration":{"patterns":[{"begin":"\\\\b(module)\\\\s+","beginCaptures":{"1":{"name":"keyword.package.module.d"}},"end":";","endCaptures":{"0":{"name":"meta.module.end.d"}},"patterns":[{"include":"#module-identifier"},{"include":"#comment"}]}]},"module-identifier":{"patterns":[{"match":"([_a-zA-Z][_\\\\d\\\\w]*)(\\\\s*\\\\.\\\\s*[_a-zA-Z][_\\\\d\\\\w]*)*","name":"variable.parameter.module.d"}]},"nesting-block-comment":{"patterns":[{"begin":"/((?!\\\\+/)\\\\+)+","beginCaptures":{"0":{"name":"comment.block.documentation.begin.d"}},"end":"\\\\++/","endCaptures":{"0":{"name":"comment.block.documentation.end.d"}},"name":"comment.block.documentation.content.d","patterns":[{"include":"#nesting-block-comment"}]}]},"new-expression":{"patterns":[{"match":"\\\\bnew\\\\s+","name":"keyword.other.new.d"}]},"non-block-statement":{"patterns":[{"include":"#module-declaration"},{"include":"#labeled-statement"},{"include":"#if-statement"},{"include":"#while-statement"},{"include":"#do-statement"},{"include":"#for-statement"},{"include":"#static-foreach"},{"include":"#static-foreach-reverse"},{"include":"#foreach-statement"},{"include":"#foreach-reverse-statement"},{"include":"#switch-statement"},{"include":"#final-switch-statement"},{"include":"#case-statement"},{"include":"#default-statement"},{"include":"#continue-statement"},{"include":"#break-statement"},{"include":"#return-statement"},{"include":"#goto-statement"},{"include":"#with-statement"},{"include":"#synchronized-statement"},{"include":"#try-statement"},{"include":"#catches"},{"include":"#scope-guard-statement"},{"include":"#throw-statement"},{"include":"#finally-statement"},{"include":"#asm-statement"},{"include":"#pragma-statement"},{"include":"#mixin-statement"},{"include":"#conditional-statement"},{"include":"#static-assert"},{"include":"#deprecated-statement"},{"include":"#unit-test"},{"include":"#declaration-statement"}]},"operands":{"patterns":[{"match":"\\\\?|:","name":"keyword.operator.ternary.assembly.d"},{"match":"\\\\]|\\\\[","name":"keyword.operator.bracket.assembly.d"},{"match":">>>|\\\\|\\\\||&&|==|!=|<=|>=|<<|>>|\\\\||\\\\^|&|<|>|\\\\+|-|\\\\*|/|%|~|!","name":"keyword.operator.assembly.d"}]},"out-statement":{"patterns":[{"begin":"\\\\bout\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.control.out.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.control.out.end.d"}},"patterns":[{"include":"#identifier"}]},{"match":"\\\\bout\\\\b","name":"keyword.control.out.d"}]},"parentheses-expression":{"patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#expression"}]}]},"postblit":{"patterns":[{"match":"\\\\bthis\\\\s*\\\\(\\\\s*this\\\\s*\\\\)\\\\s","name":"entity.name.class.postblit.d"}]},"pragma":{"patterns":[{"match":"\\\\bpragma\\\\s*\\\\(\\\\s*[_\\\\w][_\\\\d\\\\w]*\\\\s*\\\\)","name":"keyword.other.pragma.d"},{"begin":"\\\\bpragma\\\\s*\\\\(\\\\s*[_\\\\w][_\\\\d\\\\w]*\\\\s*,","end":"\\\\)","name":"keyword.other.pragma.d","patterns":[{"include":"#expression"}]},{"match":"^#!.+","name":"gfm.markup.header.preprocessor.script-tag.d"}]},"pragma-statement":{"patterns":[{"include":"#pragma"}]},"property":{"patterns":[{"match":"@(property|safe|trusted|system|disable|nogc)\\\\b","name":"entity.name.tag.property.d"},{"include":"#user-defined-attribute"}]},"protection-attribute":{"patterns":[{"match":"\\\\b(private|package|protected|public|export)\\\\b","name":"keyword.other.protections.d"}]},"register":{"patterns":[{"match":"\\\\b(XMM0|XMM1|XMM2|XMM3|XMM4|XMM5|XMM6|XMM7|MM0|MM1|MM2|MM3|MM4|MM5|MM6|MM7|ST\\\\(0\\\\)|ST\\\\(1\\\\)|ST\\\\(2\\\\)|ST\\\\(3\\\\)|ST\\\\(4\\\\)|ST\\\\(5\\\\)|ST\\\\(6\\\\)|ST\\\\(7\\\\)|ST|TR1|TR2|TR3|TR4|TR5|TR6|TR7|DR0|DR1|DR2|DR3|DR4|DR5|DR6|DR7|CR0|CR2|CR3|CR4|EAX|EBX|ECX|EDX|EBP|ESP|EDI|ESI|AL|AH|AX|BL|BH|BX|CL|CH|CX|DL|DH|DX|BP|SP|DI|SI|ES|CS|SS|DS|GS|FS)\\\\b","name":"storage.type.assembly.register.d"}]},"register-64":{"patterns":[{"match":"\\\\b(RAX|RBX|RCX|RDX|BPL|RBP|SPL|RSP|DIL|RDI|SIL|RSI|R8B|R8W|R8D|R8|R9B|R9W|R9D|R9|R10B|R10W|R10D|R10|R11B|R11W|R11D|R11|R12B|R12W|R12D|R12|R13B|R13W|R13D|R13|R14B|R14W|R14D|R14|R15B|R15W|R15D|R15|XMM8|XMM9|XMM10|XMM11|XMM12|XMM13|XMM14|XMM15|YMM0|YMM1|YMM2|YMM3|YMM4|YMM5|YMM6|YMM7|YMM8|YMM9|YMM10|YMM11|YMM12|YMM13|YMM14|YMM15)\\\\b","name":"storage.type.assembly.register-64.d"}]},"rel-expression":{"patterns":[{"match":"!<>=|!<>|<>=|!>=|!<=|<=|>=|<>|!>|!<|<|>","name":"keyword.operator.rel.d"}]},"return-statement":{"patterns":[{"match":"\\\\breturn\\\\b","name":"keyword.control.return.d"}]},"scope-guard-statement":{"patterns":[{"match":"\\\\bscope\\\\s*\\\\((exit|success|failure)\\\\)","name":"keyword.control.scope.d"}]},"semi-colon":{"patterns":[{"match":";","name":"meta.statement.end.d"}]},"shared-static-constructor":{"patterns":[{"match":"\\\\b(shared\\\\s+)?static\\\\s+this\\\\s*\\\\(\\\\s*\\\\)","name":"entity.name.class.constructor.shared-static.d"},{"include":"#function-body"}]},"shared-static-destructor":{"patterns":[{"match":"\\\\b(shared\\\\s+)?static\\\\s+~this\\\\s*\\\\(\\\\s*\\\\)","name":"entity.name.class.destructor.static.d"}]},"shift-expression":{"patterns":[{"match":"<<|>>|>>>","name":"keyword.operator.shift.d"},{"include":"#add-expression"}]},"special-keyword":{"patterns":[{"match":"\\\\b(__FILE__|__FILE_FULL_PATH__|__MODULE__|__LINE__|__FUNCTION__|__PRETTY_FUNCTION__)\\\\b","name":"constant.language.special-keyword.d"}]},"special-token-sequence":{"patterns":[{"match":"#\\\\s*line.*","name":"gfm.markup.italic.special-token-sequence.d"}]},"special-tokens":{"patterns":[{"match":"\\\\b(__DATE__|__TIME__|__TIMESTAMP__|__VENDOR__|__VERSION__)\\\\b","name":"gfm.markup.raw.special-tokens.d"}]},"statement":{"patterns":[{"include":"#non-block-statement"},{"include":"#semi-colon"}]},"static-assert":{"patterns":[{"begin":"\\\\bstatic\\\\s+assert\\\\b\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.other.static-assert.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.other.static-assert.end.d"}},"patterns":[{"include":"#expression"}]}]},"static-foreach":{"patterns":[{"begin":"\\\\b(static\\\\s+foreach)\\\\b\\\\s*","captures":{"1":{"name":"keyword.control.static-foreach.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"match":";","name":"keyword.operator.semi-colon.d"},{"include":"source.d"}]}]}]},"static-foreach-reverse":{"patterns":[{"begin":"\\\\b(static\\\\s+foreach_reverse)\\\\b\\\\s*","captures":{"1":{"name":"keyword.control.static-foreach.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"match":";","name":"keyword.operator.semi-colon.d"},{"include":"source.d"}]}]}]},"static-if-condition":{"patterns":[{"begin":"\\\\bstatic\\\\s+if\\\\b\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.control.static-if.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.control.static-if.end.d"}},"patterns":[{"include":"#comment"},{"include":"#expression"}]}]},"storage-class":{"patterns":[{"match":"\\\\b(deprecated|enum|static|extern|abstract|final|override|synchronized|auto|scope|const|immutable|inout|shared|__gshared|nothrow|pure|ref)\\\\b","name":"storage.class.d"},{"include":"#linkage-attribute"},{"include":"#align-attribute"},{"include":"#property"}]},"string-literal":{"patterns":[{"include":"#wysiwyg-string"},{"include":"#alternate-wysiwyg-string"},{"include":"#hex-string"},{"include":"#arbitrary-delimited-string"},{"include":"#delimited-string"},{"include":"#double-quoted-string"},{"include":"#token-string"}]},"struct-declaration":{"patterns":[{"captures":{"1":{"name":"storage.type.struct.d"},"2":{"name":"entity.name.type.struct.d"}},"match":"\\\\b(struct)(?:\\\\s+([A-Za-z_][\\\\w_\\\\d]*))?\\\\b"}]},"switch-statement":{"patterns":[{"begin":"\\\\b(switch)\\\\b\\\\s*","captures":{"1":{"name":"keyword.control.switch.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"source.d"}]}]}]},"synchronized-statement":{"patterns":[{"begin":"\\\\b(synchronized)\\\\b\\\\s*(?=\\\\()","captures":{"1":{"name":"keyword.control.synchronized.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"source.d"}]}]}]},"template-declaration":{"patterns":[{"captures":{"1":{"name":"storage.type.template.d"},"2":{"name":"entity.name.type.template.d"}},"match":"\\\\b(template)(?:\\\\s+([A-Za-z_][\\\\w_\\\\d]*))?\\\\b"}]},"throw-statement":{"patterns":[{"match":"\\\\bthrow\\\\b","name":"keyword.control.throw.d"}]},"token-string":{"begin":"q\\\\{","beginCaptures":{"0":{"name":"string.quoted.token.d"}},"end":"\\\\}[cdw]?","endCaptures":{"0":{"name":"string.quoted.token.d"}},"patterns":[{"include":"#token-string-content"}]},"token-string-content":{"patterns":[{"begin":"{","end":"}","patterns":[{"include":"#token-string-content"}]},{"include":"#comment"},{"include":"#tokens"}]},"tokens":{"patterns":[{"include":"#string-literal"},{"include":"#character-literal"},{"include":"#integer-literal"},{"include":"#float-literal"},{"include":"#keyword"},{"match":"~=|~|>>>|>>=|>>|>=|>|=>|==|=|<>|<=|<<|<|%=|%|#|&=|&&|&|\\\\$|\\\\|=|\\\\|\\\\||\\\\||\\\\+=|\\\\+\\\\+|\\\\+|\\\\^=|\\\\^\\\\^=|\\\\^\\\\^|\\\\^|\\\\*=|\\\\*|\\\\}|\\\\{|\\\\]|\\\\[|\\\\)|\\\\(|\\\\.\\\\.\\\\.|\\\\.\\\\.|\\\\.|\\\\?|\\\\!>=|\\\\!>|\\\\!=|\\\\!<>=|\\\\!<>|\\\\!<=|\\\\!<|\\\\!|/=|/|@|:|;|,|-=|--|-","name":"meta.lexical.token.symbolic.d"},{"include":"#identifier"}]},"traits-argument":{"patterns":[{"include":"#expression"},{"include":"#type"}]},"traits-arguments":{"patterns":[{"include":"#traits-argument"},{"include":"#comma"}]},"traits-expression":{"patterns":[{"begin":"\\\\b__traits\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.other.traits.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.other.traits.end.d"}},"patterns":[{"include":"#traits-keyword"},{"include":"#comma"},{"include":"#traits-argument"}]}]},"traits-keyword":{"patterns":[{"match":"isAbstractClass|isArithmetic|isAssociativeArray|isFinalClass|isPOD|isNested|isFloating|isIntegral|isScalar|isStaticArray|isUnsigned|isVirtualFunction|isVirtualMethod|isAbstractFunction|isFinalFunction|isStaticFunction|isOverrideFunction|isRef|isOut|isLazy|hasMember|identifier|getAliasThis|getAttributes|getMember|getOverloads|getProtection|getVirtualFunctions|getVirtualMethods|getUnitTests|parent|classInstanceSize|getVirtualIndex|allMembers|derivedMembers|isSame|compiles","name":"support.constant.traits-keyword.d"}]},"try-statement":{"patterns":[{"match":"\\\\btry\\\\b","name":"keyword.control.try.d"}]},"type":{"patterns":[{"include":"#typeof"},{"include":"#base-type"},{"include":"#type-ctor"},{"begin":"!\\\\(","end":"\\\\)","patterns":[{"include":"#type"},{"include":"#expression"}]}]},"type-ctor":{"patterns":[{"match":"(const|immutable|inout|shared)\\\\b","name":"storage.type.modifier.d"}]},"type-specialization":{"patterns":[{"match":"\\\\b(struct|union|class|interface|enum|function|delegate|super|const|immutable|inout|shared|return|__parameters)\\\\b","name":"keyword.other.storage.type-specialization.d"}]},"typeid-expression":{"patterns":[{"match":"\\\\btypeid\\\\s*(?=\\\\()","name":"keyword.other.typeid.d"}]},"typeof":{"begin":"typeof\\\\s*\\\\(","end":"\\\\)","name":"keyword.token.typeof.d","patterns":[{"match":"return","name":"keyword.control.return.d"},{"include":"#expression"}]},"union-declaration":{"patterns":[{"captures":{"1":{"name":"storage.type.union.d"},"2":{"name":"entity.name.type.union.d"}},"match":"\\\\b(union)(?:\\\\s+([A-Za-z_][\\\\w_\\\\d]*))?\\\\b"}]},"user-defined-attribute":{"patterns":[{"match":"@([_\\\\w][_\\\\d\\\\w]*)\\\\b","name":"entity.name.tag.user-defined-property.d"},{"begin":"@([_\\\\w][_\\\\d\\\\w]*)?\\\\(","end":"\\\\)","name":"entity.name.tag.user-defined-property.d","patterns":[{"include":"#expression"}]}]},"version-condition":{"patterns":[{"match":"\\\\bversion\\\\s*\\\\(\\\\s*unittest\\\\s*\\\\)","name":"keyword.other.version.unittest.d"},{"match":"\\\\bversion\\\\s*\\\\(\\\\s*assert\\\\s*\\\\)","name":"keyword.other.version.assert.d"},{"begin":"\\\\bversion\\\\s*\\\\(","beginCaptures":{"0":{"name":"keyword.other.version.identifier.begin.d"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.other.version.identifer.end.d"}},"patterns":[{"include":"#integer-literal"},{"include":"#identifier"}]},{"include":"#version-specification"}]},"version-specification":{"patterns":[{"match":"\\\\bversion\\\\b\\\\s*(?==)","name":"keyword.other.version-specification.d"}]},"void-initializer":{"patterns":[{"match":"\\\\bvoid\\\\b","name":"support.type.void.d"}]},"while-statement":{"patterns":[{"begin":"\\\\b(while)\\\\b\\\\s*","captures":{"1":{"name":"keyword.control.while.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"source.d"}]}]}]},"with-statement":{"patterns":[{"begin":"\\\\b(with)\\\\b\\\\s*(?=\\\\()","captures":{"1":{"name":"keyword.control.with.d"}},"end":"(?<=\\\\))","patterns":[{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"source.d"}]}]}]},"wysiwyg-characters":{"patterns":[{"include":"#character"},{"include":"#end-of-line"}]},"wysiwyg-string":{"patterns":[{"begin":"r\\\\\\"","end":"\\\\\\"[cwd]?","name":"string.wysiwyg-string.d","patterns":[{"include":"#wysiwyg-characters"}]}]}},"scopeName":"source.d"}`)),Xte=[Vte]});var qN={};x(qN,{default:()=>tne});var ene,tne,GN=_(()=>{ene=Object.freeze(JSON.parse('{"displayName":"Dart","name":"dart","patterns":[{"match":"^(#!.*)$","name":"meta.preprocessor.script.dart"},{"begin":"^\\\\w*\\\\b(augment\\\\s+library|library|import\\\\s+augment|import|part\\\\s+of|part|export)\\\\b","beginCaptures":{"0":{"name":"keyword.other.import.dart"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.dart"}},"name":"meta.declaration.dart","patterns":[{"include":"#strings"},{"include":"#comments"},{"match":"\\\\b(as|show|hide)\\\\b","name":"keyword.other.import.dart"},{"match":"\\\\b(if)\\\\b","name":"keyword.control.dart"}]},{"include":"#comments"},{"include":"#punctuation"},{"include":"#annotations"},{"include":"#keywords"},{"include":"#constants-and-special-vars"},{"include":"#operators"},{"include":"#strings"}],"repository":{"annotations":{"patterns":[{"match":"@[a-zA-Z]+","name":"storage.type.annotation.dart"}]},"class-identifier":{"patterns":[{"match":"(??]|,\\\\s*|\\\\s+extends\\\\s+)+>)?[!?]?\\\\("}]},"keywords":{"patterns":[{"match":"(?>>?|~|\\\\^|\\\\||&)","name":"keyword.operator.bitwise.dart"},{"match":"((&|\\\\^|\\\\||<<|>>>?)=)","name":"keyword.operator.assignment.bitwise.dart"},{"match":"(=>)","name":"keyword.operator.closure.dart"},{"match":"(==|!=|<=?|>=?)","name":"keyword.operator.comparison.dart"},{"match":"(([+*/%-]|\\\\~)=)","name":"keyword.operator.assignment.arithmetic.dart"},{"match":"(=)","name":"keyword.operator.assignment.dart"},{"match":"(\\\\-\\\\-|\\\\+\\\\+)","name":"keyword.operator.increment-decrement.dart"},{"match":"(\\\\-|\\\\+|\\\\*|\\\\/|\\\\~\\\\/|%)","name":"keyword.operator.arithmetic.dart"},{"match":"(!|&&|\\\\|\\\\|)","name":"keyword.operator.logical.dart"}]},"punctuation":{"patterns":[{"match":",","name":"punctuation.comma.dart"},{"match":";","name":"punctuation.terminator.dart"},{"match":"\\\\.","name":"punctuation.dot.dart"}]},"string-interp":{"patterns":[{"captures":{"1":{"name":"variable.parameter.dart"}},"match":"\\\\$([a-zA-Z0-9_]+)","name":"meta.embedded.expression.dart"},{"begin":"\\\\$\\\\{","end":"\\\\}","name":"meta.embedded.expression.dart","patterns":[{"include":"#expression"}]},{"match":"\\\\\\\\.","name":"constant.character.escape.dart"}]},"strings":{"patterns":[{"begin":"(?)","endCaptures":{"1":{"name":"other.source.dart"}},"patterns":[{"include":"#class-identifier"},{"match":","},{"match":"extends","name":"keyword.declaration.dart"},{"include":"#comments"}]}},"scopeName":"source.dart"}')),tne=[ene]});var zN={};x(zN,{default:()=>ane});var nne,ane,UN=_(()=>{nne=Object.freeze(JSON.parse(`{"displayName":"DAX","name":"dax","patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#labels"},{"include":"#parameters"},{"include":"#strings"},{"include":"#numbers"}],"repository":{"comments":{"patterns":[{"begin":"//","captures":{"0":{"name":"punctuation.definition.comment.dax"}},"end":"\\n","name":"comment.line.dax"},{"begin":"--","captures":{"0":{"name":"punctuation.definition.comment.dax"}},"end":"\\n","name":"comment.line.dax"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.dax"}},"end":"\\\\*/","name":"comment.block.dax"}]},"keywords":{"patterns":[{"match":"\\\\b(YIELDMAT|YIELDDISC|YIELD|YEARFRAC|YEAR|XNPV|XIRR|WEEKNUM|WEEKDAY|VDB|VARX.S|VARX.P|VAR.S|VAR.P|VALUES|VALUE|UTCTODAY|UTCNOW|USERPRINCIPALNAME|USEROBJECTID|USERNAME|USERELATIONSHIP|USERCULTURE|UPPER|UNION|UNICODE|UNICHAR|TRUNC|TRUE|TRIM|TREATAS|TOTALYTD|TOTALQTD|TOTALMTD|TOPNSKIP|TOPNPERLEVEL|TOPN|TODAY|TIMEVALUE|TIME|TBILLYIELD|TBILLPRICE|TBILLEQ|TANH|TAN|T.INV.2T|T.INV|T.DIST.RT|T.DIST.2T|T.DIST|SYD|SWITCH|SUMX|SUMMARIZECOLUMNS|SUMMARIZE|SUM|SUBSTITUTEWITHINDEX|SUBSTITUTE|STDEVX.S|STDEVX.P|STDEV.S|STDEV.P|STARTOFYEAR|STARTOFQUARTER|STARTOFMONTH|SQRTPI|SQRT|SLN|SINH|SIN|SIGN|SELECTEDVALUE|SELECTEDMEASURENAME|SELECTEDMEASUREFORMATSTRING|SELECTEDMEASURE|SELECTCOLUMNS|SECOND|SEARCH|SAMPLE|SAMEPERIODLASTYEAR|RRI|ROW|ROUNDUP|ROUNDDOWN|ROUND|ROLLUPISSUBTOTAL|ROLLUPGROUP|ROLLUPADDISSUBTOTAL|ROLLUP|RIGHT|REPT|REPLACE|REMOVEFILTERS|RELATEDTABLE|RELATED|RECEIVED|RATE|RANKX|RANK.EQ|RANDBETWEEN|RAND|RADIANS|QUOTIENT|QUARTER|PV|PRODUCTX|PRODUCT|PRICEMAT|PRICEDISC|PRICE|PREVIOUSYEAR|PREVIOUSQUARTER|PREVIOUSMONTH|PREVIOUSDAY|PPMT|POWER|POISSON.DIST|PMT|PI|PERMUT|PERCENTILEX.INC|PERCENTILEX.EXC|PERCENTILE.INC|PERCENTILE.EXC|PDURATION|PATHLENGTH|PATHITEMREVERSE|PATHITEM|PATHCONTAINS|PATH|PARALLELPERIOD|OR|OPENINGBALANCEYEAR|OPENINGBALANCEQUARTER|OPENINGBALANCEMONTH|ODDLYIELD|ODDLPRICE|ODDFYIELD|ODDFPRICE|ODD|NPER|NOW|NOT|NORM.S.INV|NORM.S.DIST|NORM.INV|NORM.DIST|NONVISUAL|NOMINAL|NEXTYEAR|NEXTQUARTER|NEXTMONTH|NEXTDAY|NATURALLEFTOUTERJOIN|NATURALINNERJOIN|MROUND|MONTH|MOD|MINX|MINUTE|MINA|MIN|MID|MEDIANX|MEDIAN|MDURATION|MAXX|MAXA|MAX|LOWER|LOOKUPVALUE|LOG10|LOG|LN|LEN|LEFT|LCM|LASTNONBLANKVALUE|LASTNONBLANK|LASTDATE|KEYWORDMATCH|KEEPFILTERS|ISTEXT|ISSUBTOTAL|ISSELECTEDMEASURE|ISPMT|ISONORAFTER|ISODD|ISO.CEILING|ISNUMBER|ISNONTEXT|ISLOGICAL|ISINSCOPE|ISFILTERED|ISEVEN|ISERROR|ISEMPTY|ISCROSSFILTERED|ISBLANK|ISAFTER|IPMT|INTRATE|INTERSECT|INT|IGNORE|IFERROR|IF.EAGER|IF|HOUR|HASONEVALUE|HASONEFILTER|HASH|GROUPBY|GEOMEANX|GEOMEAN|GENERATESERIES|GENERATEALL|GENERATE|GCD|FV|FORMAT|FLOOR|FIXED|FIRSTNONBLANKVALUE|FIRSTNONBLANK|FIRSTDATE|FIND|FILTERS|FILTER|FALSE|FACT|EXPON.DIST|EXP|EXCEPT|EXACT|EVEN|ERROR|EOMONTH|ENDOFYEAR|ENDOFQUARTER|ENDOFMONTH|EFFECT|EDATE|EARLIEST|EARLIER|DURATION|DOLLARFR|DOLLARDE|DIVIDE|DISTINCTCOUNTNOBLANK|DISTINCTCOUNT|DISTINCT|DISC|DETAILROWS|DEGREES|DDB|DB|DAY|DATEVALUE|DATESYTD|DATESQTD|DATESMTD|DATESINPERIOD|DATESBETWEEN|DATEDIFF|DATEADD|DATE|DATATABLE|CUSTOMDATA|CURRENTGROUP|CURRENCY|CUMPRINC|CUMIPMT|CROSSJOIN|CROSSFILTER|COUPPCD|COUPNUM|COUPNCD|COUPDAYSNC|COUPDAYS|COUPDAYBS|COUNTX|COUNTROWS|COUNTBLANK|COUNTAX|COUNTA|COUNT|COTH|COT|COSH|COS|CONVERT|CONTAINSSTRINGEXACT|CONTAINSSTRING|CONTAINSROW|CONTAINS|CONFIDENCE.T|CONFIDENCE.NORM|CONCATENATEX|CONCATENATE|COMBINEVALUES|COMBINA|COMBIN|COLUMNSTATISTICS|COALESCE|CLOSINGBALANCEYEAR|CLOSINGBALANCEQUARTER|CLOSINGBALANCEMONTH|CHISQ.INV.RT|CHISQ.INV|CHISQ.DIST.RT|CHISQ.DIST|CEILING|CALENDARAUTO|CALENDAR|CALCULATETABLE|CALCULATE|BLANK|BETA.INV|BETA.DIST|AVERAGEX|AVERAGEA|AVERAGE|ATANH|ATAN|ASINH|ASIN|APPROXIMATEDISTINCTCOUNT|AND|AMORLINC|AMORDEGRC|ALLSELECTED|ALLNOBLANKROW|ALLEXCEPT|ALLCROSSFILTERED|ALL|ADDMISSINGITEMS|ADDCOLUMNS|ACOTH|ACOT|ACOSH|ACOS|ACCRINTM|ACCRINT|ABS)\\\\b","name":"variable.language.dax"},{"match":"\\\\b(DEFINE|EVALUATE|ORDER BY|RETURN|VAR)\\\\b","name":"keyword.control.dax"},{"match":"{|}","name":"keyword.array.constructor.dax"},{"match":">|<|>=|<=|=(?!==)","name":"keyword.operator.comparison.dax"},{"match":"&&|IN|NOT|\\\\|\\\\|","name":"keyword.operator.logical.dax"},{"match":"\\\\+|\\\\-|\\\\*|\\\\/","name":"keyword.arithmetic.operator.dax"},{"begin":"\\\\[","end":"\\\\]","name":"support.function.dax"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.dax"},{"begin":"\\\\'","end":"\\\\'","name":"support.class.dax"}]},"labels":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.label.dax"},"2":{"name":"entity.name.label.dax"}},"match":"(^(.*?)\\\\s*(:=|!=))"}]},"metas":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.dax"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.dax"}}}]},"numbers":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[eE][+-]?\\\\d+)?)?","name":"constant.numeric.dax"},"parameters":{"patterns":[{"begin":"\\\\b(?ine});var rne,ine,ZN=_(()=>{rne=Object.freeze(JSON.parse('{"displayName":"Desktop","name":"desktop","patterns":[{"include":"#layout"},{"include":"#keywords"},{"include":"#values"},{"include":"#inCommands"},{"include":"#inCategories"}],"repository":{"inCategories":{"patterns":[{"match":"(?<=^Categories.*)AudioVideo|(?<=^Categories.*)Audio|(?<=^Categories.*)Video|(?<=^Categories.*)Development|(?<=^Categories.*)Education|(?<=^Categories.*)Game|(?<=^Categories.*)Graphics|(?<=^Categories.*)Network|(?<=^Categories.*)Office|(?<=^Categories.*)Science|(?<=^Categories.*)Settings|(?<=^Categories.*)System|(?<=^Categories.*)Utility","name":"markup.bold"}]},"inCommands":{"patterns":[{"match":"(?<=^Exec.*\\\\s)-+\\\\S+","name":"variable.parameter"},{"match":"(?<=^Exec.*)\\\\s\\\\%[fFuUick]\\\\s","name":"variable.language"},{"match":"\\".*\\"","name":"string"}]},"keywords":{"patterns":[{"match":"^Type\\\\b|^Version\\\\b|^Name\\\\b|^GenericName\\\\b|^NoDisplay\\\\b|^Comment\\\\b|^Icon\\\\b|^Hidden\\\\b|^OnlyShowIn\\\\b|^NotShowIn\\\\b|^DBusActivatable\\\\b|^TryExec\\\\b|^Exec\\\\b|^Path\\\\b|^Terminal\\\\b|^Actions\\\\b|^MimeType\\\\b|^Categories\\\\b|^Implements\\\\b|^Keywords\\\\b|^StartupNotify\\\\b|^StartupWMClass\\\\b|^URL\\\\b|^PrefersNonDefaultGPU\\\\b|^Encoding\\\\b","name":"keyword"},{"match":"^X-[A-z 0-9 -]*","name":"keyword.other"},{"match":"(?FB});var one,FB,SB=_(()=>{one=Object.freeze(JSON.parse('{"displayName":"Diff","name":"diff","patterns":[{"captures":{"1":{"name":"punctuation.definition.separator.diff"}},"match":"^((\\\\*{15})|(={67})|(-{3}))$\\\\n?","name":"meta.separator.diff"},{"match":"^\\\\d+(,\\\\d+)*(a|d|c)\\\\d+(,\\\\d+)*$\\\\n?","name":"meta.diff.range.normal"},{"captures":{"1":{"name":"punctuation.definition.range.diff"},"2":{"name":"meta.toc-list.line-number.diff"},"3":{"name":"punctuation.definition.range.diff"}},"match":"^(@@)\\\\s*(.+?)\\\\s*(@@)($\\\\n?)?","name":"meta.diff.range.unified"},{"captures":{"3":{"name":"punctuation.definition.range.diff"},"4":{"name":"punctuation.definition.range.diff"},"6":{"name":"punctuation.definition.range.diff"},"7":{"name":"punctuation.definition.range.diff"}},"match":"^(((\\\\-{3}) .+ (\\\\-{4}))|((\\\\*{3}) .+ (\\\\*{4})))$\\\\n?","name":"meta.diff.range.context"},{"match":"^diff --git a/.*$\\\\n?","name":"meta.diff.header.git"},{"match":"^diff (-|\\\\S+\\\\s+\\\\S+).*$\\\\n?","name":"meta.diff.header.command"},{"captures":{"4":{"name":"punctuation.definition.from-file.diff"},"6":{"name":"punctuation.definition.from-file.diff"},"7":{"name":"punctuation.definition.from-file.diff"}},"match":"(^(((-{3}) .+)|((\\\\*{3}) .+))$\\\\n?|^(={4}) .+(?= - ))","name":"meta.diff.header.from-file"},{"captures":{"2":{"name":"punctuation.definition.to-file.diff"},"3":{"name":"punctuation.definition.to-file.diff"},"4":{"name":"punctuation.definition.to-file.diff"}},"match":"(^(\\\\+{3}) .+$\\\\n?| (-) .* (={4})$\\\\n?)","name":"meta.diff.header.to-file"},{"captures":{"3":{"name":"punctuation.definition.inserted.diff"},"6":{"name":"punctuation.definition.inserted.diff"}},"match":"^(((>)( .*)?)|((\\\\+).*))$\\\\n?","name":"markup.inserted.diff"},{"captures":{"1":{"name":"punctuation.definition.changed.diff"}},"match":"^(!).*$\\\\n?","name":"markup.changed.diff"},{"captures":{"3":{"name":"punctuation.definition.deleted.diff"},"6":{"name":"punctuation.definition.deleted.diff"}},"match":"^(((<)( .*)?)|((-).*))$\\\\n?","name":"markup.deleted.diff"},{"begin":"^(#)","captures":{"1":{"name":"punctuation.definition.comment.diff"}},"comment":"Git produces unified diffs with embedded comments\\"","end":"\\\\n","name":"comment.line.number-sign.diff"},{"match":"^index [0-9a-f]{7,40}\\\\.\\\\.[0-9a-f]{7,40}.*$\\\\n?","name":"meta.diff.index.git"},{"captures":{"1":{"name":"punctuation.separator.key-value.diff"},"2":{"name":"meta.toc-list.file-name.diff"}},"match":"^Index(:) (.+)$\\\\n?","name":"meta.diff.index"},{"match":"^Only in .*: .*$\\\\n?","name":"meta.diff.only-in"}],"scopeName":"source.diff"}')),FB=[one]});var WN={};x(WN,{default:()=>cne});var sne,cne,KN=_(()=>{sne=Object.freeze(JSON.parse(`{"displayName":"Dockerfile","name":"docker","patterns":[{"captures":{"1":{"name":"keyword.other.special-method.dockerfile"},"2":{"name":"keyword.other.special-method.dockerfile"}},"match":"^\\\\s*\\\\b(?i:(FROM))\\\\b.*?\\\\b(?i:(AS))\\\\b"},{"captures":{"1":{"name":"keyword.control.dockerfile"},"2":{"name":"keyword.other.special-method.dockerfile"}},"match":"^\\\\s*(?i:(ONBUILD)\\\\s+)?(?i:(ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR))\\\\s"},{"captures":{"1":{"name":"keyword.operator.dockerfile"},"2":{"name":"keyword.other.special-method.dockerfile"}},"match":"^\\\\s*(?i:(ONBUILD)\\\\s+)?(?i:(CMD|ENTRYPOINT))\\\\s"},{"include":"#string-character-escape"},{"begin":"\\"","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.dockerfile"}},"end":"\\"","endCaptures":{"1":{"name":"punctuation.definition.string.end.dockerfile"}},"name":"string.quoted.double.dockerfile","patterns":[{"include":"#string-character-escape"}]},{"begin":"'","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.dockerfile"}},"end":"'","endCaptures":{"1":{"name":"punctuation.definition.string.end.dockerfile"}},"name":"string.quoted.single.dockerfile","patterns":[{"include":"#string-character-escape"}]},{"captures":{"1":{"name":"punctuation.whitespace.comment.leading.dockerfile"},"2":{"name":"comment.line.number-sign.dockerfile"},"3":{"name":"punctuation.definition.comment.dockerfile"}},"comment":"comment.line","match":"^(\\\\s*)((#).*$\\\\n?)"}],"repository":{"string-character-escape":{"match":"\\\\\\\\.","name":"constant.character.escaped.dockerfile"}},"scopeName":"source.dockerfile","aliases":["dockerfile"]}`)),cne=[sne]});var JN={};x(JN,{default:()=>Ane});var lne,Ane,VN=_(()=>{lne=Object.freeze(JSON.parse(`{"displayName":"dotEnv","name":"dotenv","patterns":[{"captures":{"1":{"patterns":[{"include":"#line-comment"}]}},"comment":"Full Line Comment","match":"^\\\\s?(#.*$)\\\\n"},{"captures":{"1":{"patterns":[{"include":"#key"}]},"2":{"name":"keyword.operator.assignment.dotenv"},"3":{"name":"property.value.dotenv","patterns":[{"include":"#line-comment"},{"include":"#double-quoted-string"},{"include":"#single-quoted-string"},{"include":"#interpolation"}]}},"comment":"ENV entry","match":"^\\\\s?(.*?)\\\\s?(\\\\=)(.*)$"}],"repository":{"double-quoted-string":{"captures":{"1":{"patterns":[{"include":"#interpolation"},{"include":"#escape-characters"}]}},"comment":"Double Quoted String","match":"\\"(.*)\\"","name":"string.quoted.double.dotenv"},"escape-characters":{"comment":"Escape characters","match":"\\\\\\\\[nrtfb\\"'\\\\\\\\]|\\\\\\\\u[0123456789ABCDEF]{4}","name":"constant.character.escape.dotenv"},"interpolation":{"captures":{"1":{"name":"keyword.interpolation.begin.dotenv"},"2":{"name":"variable.interpolation.dotenv"},"3":{"name":"keyword.interpolation.end.dotenv"}},"comment":"Interpolation (variable substitution)","match":"(\\\\$\\\\{)(.*)(\\\\})"},"key":{"captures":{"1":{"name":"keyword.key.export.dotenv"},"2":{"name":"variable.key.dotenv","patterns":[{"include":"#variable"}]}},"comment":"Key","match":"(export\\\\s)?(.*)"},"line-comment":{"comment":"Comment","match":"#.*$","name":"comment.line.dotenv"},"single-quoted-string":{"comment":"Single Quoted String","match":"'(.*)'","name":"string.quoted.single.dotenv"},"variable":{"comment":"env variable","match":"[a-zA-Z_]+[a-zA-Z0-9_]*"}},"scopeName":"source.dotenv"}`)),Ane=[lne]});var XN={};x(XN,{default:()=>une});var dne,une,eL=_(()=>{dne=Object.freeze(JSON.parse(`{"displayName":"Dream Maker","fileTypes":["dm","dme"],"foldingStartMarker":"/\\\\*\\\\*(?!\\\\*)|^(?![^{]*?//|[^{]*?/\\\\*(?!.*?\\\\*/.*?\\\\{)).*?\\\\{\\\\s*($|//|/\\\\*(?!.*?\\\\*/.*\\\\S))","foldingStopMarker":"(?|<)(=)?|\\\\.|:|/(=)?|~|\\\\+(\\\\+|=)?|-(-|=)?|\\\\*(\\\\*|=)?|%|>>|<<|=(=)?|!(=)?|<>|&|&&|\\\\^|\\\\||\\\\|\\\\||\\\\bto\\\\b|\\\\bin\\\\b|\\\\bstep\\\\b)","name":"keyword.operator.dm"},{"match":"\\\\b([A-Z_][A-Z_0-9]*)\\\\b","name":"constant.language.dm"},{"match":"\\\\bnull\\\\b","name":"constant.language.dm"},{"begin":"{\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dm"}},"end":"\\"}","endCaptures":{"0":{"name":"punctuation.definition.string.end.dm"}},"name":"string.quoted.triple.dm","patterns":[{"include":"#string_escaped_char"},{"include":"#string_embedded_expression"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dm"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.dm"}},"name":"string.quoted.double.dm","patterns":[{"include":"#string_escaped_char"},{"include":"#string_embedded_expression"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.dm"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.dm"}},"name":"string.quoted.single.dm","patterns":[{"include":"#string_escaped_char"}]},{"begin":"^\\\\s*((\\\\#)\\\\s*define)\\\\s+((?[a-zA-Z_][a-zA-Z0-9_]*))(?:(\\\\()(\\\\s*\\\\g\\\\s*((,)\\\\s*\\\\g\\\\s*)*(?:\\\\.\\\\.\\\\.)?)(\\\\)))","beginCaptures":{"1":{"name":"keyword.control.directive.define.dm"},"2":{"name":"punctuation.definition.directive.dm"},"3":{"name":"entity.name.function.preprocessor.dm"},"5":{"name":"punctuation.definition.parameters.begin.dm"},"6":{"name":"variable.parameter.preprocessor.dm"},"8":{"name":"punctuation.separator.parameters.dm"},"9":{"name":"punctuation.definition.parameters.end.dm"}},"end":"(?=(?://|/\\\\*))|(?[a-zA-Z_][a-zA-Z0-9_]*))","beginCaptures":{"1":{"name":"keyword.control.directive.define.dm"},"2":{"name":"punctuation.definition.directive.dm"},"3":{"name":"variable.other.preprocessor.dm"}},"end":"(?=(?://|/\\\\*))|(?\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.dm"}]},{"begin":"^\\\\s*(?:((#)\\\\s*(?:elif|else|if|ifdef|ifndef))|((#)\\\\s*(undef|include)))\\\\b","beginCaptures":{"1":{"name":"keyword.control.directive.conditional.dm"},"2":{"name":"punctuation.definition.directive.dm"},"3":{"name":"keyword.control.directive.$5.dm"},"4":{"name":"punctuation.definition.directive.dm"}},"end":"(?=(?://|/\\\\*))|(?\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.dm"}]},{"include":"#block"},{"begin":"(?:^|(?:(?=\\\\s)(?])))(\\\\s*)(?!(while|for|do|if|else|switch|catch|enumerate|return|r?iterate)\\\\s*\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"punctuation.whitespace.function.leading.dm"},"3":{"name":"entity.name.function.dm"},"4":{"name":"punctuation.definition.parameters.dm"}},"end":"(?<=\\\\})|(?=#)|(;)?","name":"meta.function.dm","patterns":[{"include":"#comments"},{"include":"#parens"},{"match":"\\\\bconst\\\\b","name":"storage.modifier.dm"},{"include":"#block"}]}],"repository":{"access":{"match":"\\\\.[a-zA-Z_][a-zA-Z_0-9]*\\\\b(?!\\\\s*\\\\()","name":"variable.other.dot-access.dm"},"block":{"begin":"\\\\{","end":"\\\\}","name":"meta.block.dm","patterns":[{"include":"#block_innards"}]},"block_innards":{"patterns":[{"include":"#preprocessor-rule-enabled-block"},{"include":"#preprocessor-rule-disabled-block"},{"include":"#preprocessor-rule-other-block"},{"include":"#access"},{"captures":{"1":{"name":"punctuation.whitespace.function-call.leading.dm"},"2":{"name":"support.function.any-method.dm"},"3":{"name":"punctuation.definition.parameters.dm"}},"match":"(?:(?=\\\\s)(?:(?<=else|new|return)|(?\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.dm"}]}]},"disabled":{"begin":"^\\\\s*#\\\\s*if(n?def)?\\\\b.*$","comment":"eat nested preprocessor if(def)s","end":"^\\\\s*#\\\\s*endif\\\\b.*$","patterns":[{"include":"#disabled"}]},"parens":{"begin":"\\\\(","end":"\\\\)","name":"meta.parens.dm","patterns":[{"include":"$base"}]},"preprocessor-rule-disabled":{"begin":"^\\\\s*(#(if)\\\\s+(0)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.dm"},"2":{"name":"keyword.control.import.if.dm"},"3":{"name":"constant.numeric.preprocessor.dm"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b)","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b)","captures":{"1":{"name":"meta.preprocessor.dm"},"2":{"name":"keyword.control.import.else.dm"}},"end":"(?=^\\\\s*#\\\\s*endif\\\\b.*$)","patterns":[{"include":"$base"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*$)","name":"comment.block.preprocessor.if-branch","patterns":[{"include":"#disabled"}]}]},"preprocessor-rule-disabled-block":{"begin":"^\\\\s*(#(if)\\\\s+(0)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.dm"},"2":{"name":"keyword.control.import.if.dm"},"3":{"name":"constant.numeric.preprocessor.dm"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b)","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b)","captures":{"1":{"name":"meta.preprocessor.dm"},"2":{"name":"keyword.control.import.else.dm"}},"end":"(?=^\\\\s*#\\\\s*endif\\\\b.*$)","patterns":[{"include":"#block_innards"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*$)","name":"comment.block.preprocessor.if-branch.in-block","patterns":[{"include":"#disabled"}]}]},"preprocessor-rule-enabled":{"begin":"^\\\\s*(#(if)\\\\s+(0*1)\\\\b)","captures":{"1":{"name":"meta.preprocessor.dm"},"2":{"name":"keyword.control.import.if.dm"},"3":{"name":"constant.numeric.preprocessor.dm"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b)","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.dm"},"2":{"name":"keyword.control.import.else.dm"}},"contentName":"comment.block.preprocessor.else-branch","end":"(?=^\\\\s*#\\\\s*endif\\\\b.*$)","patterns":[{"include":"#disabled"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*$)","patterns":[{"include":"$base"}]}]},"preprocessor-rule-enabled-block":{"begin":"^\\\\s*(#(if)\\\\s+(0*1)\\\\b)","captures":{"1":{"name":"meta.preprocessor.dm"},"2":{"name":"keyword.control.import.if.dm"},"3":{"name":"constant.numeric.preprocessor.dm"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b)","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.dm"},"2":{"name":"keyword.control.import.else.dm"}},"contentName":"comment.block.preprocessor.else-branch.in-block","end":"(?=^\\\\s*#\\\\s*endif\\\\b.*$)","patterns":[{"include":"#disabled"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*$)","patterns":[{"include":"#block_innards"}]}]},"preprocessor-rule-other":{"begin":"^\\\\s*((#\\\\s*(if(n?def)?))\\\\b.*?(?:(?=(?://|/\\\\*))|$))","captures":{"1":{"name":"meta.preprocessor.dm"},"2":{"name":"keyword.control.import.dm"}},"end":"^\\\\s*((#\\\\s*(endif))\\\\b).*$","patterns":[{"include":"$base"}]},"preprocessor-rule-other-block":{"begin":"^\\\\s*(#\\\\s*(if(n?def)?)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","captures":{"1":{"name":"meta.preprocessor.dm"},"2":{"name":"keyword.control.import.dm"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b).*$","patterns":[{"include":"#block_innards"}]},"string_embedded_expression":{"patterns":[{"begin":"(?\\"n\\\\n \\\\[])","name":"constant.character.escape.dm"},{"match":"\\\\\\\\.","name":"invalid.illegal.unknown-escape.dm"}]}},"scopeName":"source.dm"}`)),une=[dne]});var tL={};x(tL,{default:()=>Hr});var pne,Hr,Ec=_(()=>{Ye();pne=Object.freeze(JSON.parse('{"displayName":"HTML (Derivative)","injections":{"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)":{"comment":"Uses R: to ensure this matches after any other injections.","patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"html-derivative","patterns":[{"include":"text.html.basic#core-minus-invalid"},{"begin":"(]*)(?)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.unrecognized.html.derivative","patterns":[{"include":"text.html.basic#attribute"}]}],"scopeName":"text.html.derivative","embeddedLangs":["html"]}')),Hr=[...ce,pne]});var nL={};x(nL,{default:()=>gne});var mne,gne,aL=_(()=>{hn();Ye();Ec();mne=Object.freeze(JSON.parse('{"displayName":"Edge","injections":{"text.html.edge - (meta.embedded | meta.tag | comment.block.edge), L:(text.html.edge meta.tag - (comment.block.edge | meta.embedded.block.edge)), L:(source.ts.embedded.html - (comment.block.edge | meta.embedded.block.edge))":{"patterns":[{"include":"#comment"},{"include":"#escapedMustache"},{"include":"#safeMustache"},{"include":"#mustache"},{"include":"#nonSeekableTag"},{"include":"#tag"}]}},"name":"edge","patterns":[{"include":"text.html.basic"},{"include":"text.html.derivative"}],"repository":{"comment":{"begin":"\\\\{{--","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.edge"}},"end":"\\\\--}}","endCaptures":{"0":{"name":"punctuation.definition.comment.end.edge"}},"name":"comment.block"},"escapedMustache":{"begin":"\\\\@{{","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.edge"}},"end":"\\\\}}","endCaptures":{"0":{"name":"punctuation.definition.comment.end.edge"}},"name":"comment.block"},"mustache":{"begin":"\\\\{{","beginCaptures":{"0":{"name":"punctuation.mustache.begin"}},"end":"\\\\}}","endCaptures":{"0":{"name":"punctuation.mustache.end"}},"name":"meta.embedded.block.javascript","patterns":[{"include":"source.ts#expression"}]},"nonSeekableTag":{"captures":{"2":{"name":"support.function.edge"}},"match":"^(\\\\s*)((@{1,2})(!)?([a-zA-Z._]+))(~)?$","name":"meta.embedded.block.javascript","patterns":[{"include":"source.ts#expression"}]},"safeMustache":{"begin":"\\\\{{{","beginCaptures":{"0":{"name":"punctuation.mustache.begin"}},"end":"\\\\}}}","endCaptures":{"0":{"name":"punctuation.mustache.end"}},"name":"meta.embedded.block.javascript","patterns":[{"include":"source.ts#expression"}]},"tag":{"begin":"^(\\\\s*)((@{1,2})(!)?([a-zA-Z._]+)(\\\\s{0,2}))(\\\\()","beginCaptures":{"2":{"name":"support.function.edge"},"7":{"name":"punctuation.paren.open"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.paren.close"}},"name":"meta.embedded.block.javascript","patterns":[{"include":"source.ts#expression"}]}},"scopeName":"text.html.edge","embeddedLangs":["typescript","html","html-derivative"]}')),gne=[...Ge,...ce,...Hr,mne]});var rL={};x(rL,{default:()=>bne});var fne,bne,iL=_(()=>{Ye();fne=Object.freeze(JSON.parse(`{"displayName":"Elixir","fileTypes":["ex","exs"],"firstLineMatch":"^#!/.*\\\\belixir","foldingStartMarker":"(after|else|catch|rescue|\\\\-\\\\>|\\\\{|\\\\[|do)\\\\s*$","foldingStopMarker":"^\\\\s*((\\\\}|\\\\]|after|else|catch|rescue)\\\\s*$|end\\\\b)","name":"elixir","patterns":[{"begin":"\\\\b(fn)\\\\b(?!.*->)","beginCaptures":{"1":{"name":"keyword.control.elixir"}},"end":"$","patterns":[{"include":"#core_syntax"}]},{"captures":{"1":{"name":"entity.name.type.class.elixir"},"2":{"name":"punctuation.separator.method.elixir"},"3":{"name":"entity.name.function.elixir"}},"match":"([A-Z]\\\\w+)\\\\s*(\\\\.)\\\\s*([a-z_]\\\\w*[!?]?)"},{"captures":{"1":{"name":"constant.other.symbol.elixir"},"2":{"name":"punctuation.separator.method.elixir"},"3":{"name":"entity.name.function.elixir"}},"match":"(\\\\:\\\\w+)\\\\s*(\\\\.)\\\\s*([_]?\\\\w*[!?]?)"},{"captures":{"1":{"name":"keyword.operator.other.elixir"},"2":{"name":"entity.name.function.elixir"}},"match":"(\\\\|\\\\>)\\\\s*([a-z_]\\\\w*[!?]?)"},{"match":"\\\\b[a-z_]\\\\w*[!?]?(?=\\\\s*\\\\.?\\\\s*\\\\()","name":"entity.name.function.elixir"},{"begin":"\\\\b(fn)\\\\b(?=.*->)","beginCaptures":{"1":{"name":"keyword.control.elixir"}},"end":"(?>(->)|(when)|(\\\\)))","endCaptures":{"1":{"name":"keyword.operator.other.elixir"},"2":{"name":"keyword.control.elixir"},"3":{"name":"punctuation.section.function.elixir"}},"patterns":[{"include":"#core_syntax"}]},{"include":"#core_syntax"},{"begin":"^(?=.*->)((?![^\\"']*(\\"|')[^\\"']*->)|(?=.*->[^\\"']*(\\"|')[^\\"']*->))((?!.*\\\\([^\\\\)]*->)|(?=[^\\\\(\\\\)]*->)|(?=\\\\s*\\\\(.*\\\\).*->))((?!.*\\\\b(fn)\\\\b)|(?=.*->.*\\\\bfn\\\\b))","beginCaptures":{"1":{"name":"keyword.control.elixir"}},"end":"(?>(->)|(when)|(\\\\)))","endCaptures":{"1":{"name":"keyword.operator.other.elixir"},"2":{"name":"keyword.control.elixir"},"3":{"name":"punctuation.section.function.elixir"}},"patterns":[{"include":"#core_syntax"}]}],"repository":{"core_syntax":{"patterns":[{"begin":"^\\\\s*(defmodule)\\\\b","beginCaptures":{"1":{"name":"keyword.control.module.elixir"}},"end":"\\\\b(do)\\\\b","endCaptures":{"1":{"name":"keyword.control.module.elixir"}},"name":"meta.module.elixir","patterns":[{"match":"\\\\b[A-Z]\\\\w*(?=\\\\.)","name":"entity.other.inherited-class.elixir"},{"match":"\\\\b[A-Z]\\\\w*\\\\b","name":"entity.name.type.class.elixir"}]},{"begin":"^\\\\s*(defprotocol)\\\\b","beginCaptures":{"1":{"name":"keyword.control.protocol.elixir"}},"end":"\\\\b(do)\\\\b","endCaptures":{"1":{"name":"keyword.control.protocol.elixir"}},"name":"meta.protocol_declaration.elixir","patterns":[{"match":"\\\\b[A-Z]\\\\w*\\\\b","name":"entity.name.type.protocol.elixir"}]},{"begin":"^\\\\s*(defimpl)\\\\b","beginCaptures":{"1":{"name":"keyword.control.protocol.elixir"}},"end":"\\\\b(do)\\\\b","endCaptures":{"1":{"name":"keyword.control.protocol.elixir"}},"name":"meta.protocol_implementation.elixir","patterns":[{"match":"\\\\b[A-Z]\\\\w*\\\\b","name":"entity.name.type.protocol.elixir"}]},{"begin":"^\\\\s*(def|defmacro|defdelegate|defguard)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[\\\\]=?))((\\\\()|\\\\s*)","beginCaptures":{"1":{"name":"keyword.control.module.elixir"},"2":{"name":"entity.name.function.public.elixir"},"4":{"name":"punctuation.section.function.elixir"}},"end":"(\\\\bdo:)|(\\\\bdo\\\\b)|(?=\\\\s+(def|defn|defmacro|defdelegate|defguard)\\\\b)","endCaptures":{"1":{"name":"constant.other.keywords.elixir"},"2":{"name":"keyword.control.module.elixir"}},"name":"meta.function.public.elixir","patterns":[{"include":"$self"},{"begin":"\\\\s(\\\\\\\\\\\\\\\\)","beginCaptures":{"1":{"name":"keyword.operator.other.elixir"}},"end":",|\\\\)|$","patterns":[{"include":"$self"}]},{"match":"\\\\b(is_atom|is_binary|is_bitstring|is_boolean|is_float|is_function|is_integer|is_list|is_map|is_nil|is_number|is_pid|is_port|is_record|is_reference|is_tuple|is_exception|abs|bit_size|byte_size|div|elem|hd|length|map_size|node|rem|round|tl|trunc|tuple_size)\\\\b","name":"keyword.control.elixir"}]},{"begin":"^\\\\s*(defp|defnp|defmacrop|defguardp)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[\\\\]=?))((\\\\()|\\\\s*)","beginCaptures":{"1":{"name":"keyword.control.module.elixir"},"2":{"name":"entity.name.function.private.elixir"},"4":{"name":"punctuation.section.function.elixir"}},"end":"(\\\\bdo:)|(\\\\bdo\\\\b)|(?=\\\\s+(defp|defmacrop|defguardp)\\\\b)","endCaptures":{"1":{"name":"constant.other.keywords.elixir"},"2":{"name":"keyword.control.module.elixir"}},"name":"meta.function.private.elixir","patterns":[{"include":"$self"},{"begin":"\\\\s(\\\\\\\\\\\\\\\\)","beginCaptures":{"1":{"name":"keyword.operator.other.elixir"}},"end":",|\\\\)|$","patterns":[{"include":"$self"}]},{"match":"\\\\b(is_atom|is_binary|is_bitstring|is_boolean|is_float|is_function|is_integer|is_list|is_map|is_nil|is_number|is_pid|is_port|is_record|is_reference|is_tuple|is_exception|abs|bit_size|byte_size|div|elem|hd|length|map_size|node|rem|round|tl|trunc|tuple_size)\\\\b","name":"keyword.control.elixir"}]},{"begin":"\\\\s*~L\\"\\"\\"","comment":"Leex Sigil","end":"\\\\s*\\"\\"\\"","name":"sigil.leex","patterns":[{"include":"text.elixir"},{"include":"text.html.basic"}]},{"begin":"\\\\s*~H\\"\\"\\"","comment":"HEEx Sigil","end":"\\\\s*\\"\\"\\"","name":"sigil.heex","patterns":[{"include":"text.elixir"},{"include":"text.html.basic"}]},{"begin":"@(module|type)?doc (~[a-z])?\\"\\"\\"","comment":"@doc with heredocs is treated as documentation","end":"\\\\s*\\"\\"\\"","name":"comment.block.documentation.heredoc","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"@(module|type)?doc ~[A-Z]\\"\\"\\"","comment":"@doc with heredocs is treated as documentation","end":"\\\\s*\\"\\"\\"","name":"comment.block.documentation.heredoc"},{"begin":"@(module|type)?doc (~[a-z])?'''","comment":"@doc with heredocs is treated as documentation","end":"\\\\s*'''","name":"comment.block.documentation.heredoc","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"@(module|type)?doc ~[A-Z]'''","comment":"@doc with heredocs is treated as documentation","end":"\\\\s*'''","name":"comment.block.documentation.heredoc"},{"comment":"@doc false is treated as documentation","match":"@(module|type)?doc false","name":"comment.block.documentation.false"},{"begin":"@(module|type)?doc \\"","comment":"@doc with string is treated as documentation","end":"\\"","name":"comment.block.documentation.string","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"match":"(?_?[0-9A-Fa-f])*\\\\b","name":"constant.numeric.hex.elixir"},{"match":"\\\\b\\\\d(?>_?\\\\d)*(\\\\.(?![^[:space:][:digit:]])(?>_?\\\\d)+)([eE][-+]?\\\\d(?>_?\\\\d)*)?\\\\b","name":"constant.numeric.float.elixir"},{"match":"\\\\b\\\\d(?>_?\\\\d)*\\\\b","name":"constant.numeric.integer.elixir"},{"match":"\\\\b0b[01](?>_?[01])*\\\\b","name":"constant.numeric.binary.elixir"},{"match":"\\\\b0o[0-7](?>_?[0-7])*\\\\b","name":"constant.numeric.octal.elixir"},{"begin":":'","captures":{"0":{"name":"punctuation.definition.constant.elixir"}},"end":"'","name":"constant.other.symbol.single-quoted.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":":\\"","captures":{"0":{"name":"punctuation.definition.constant.elixir"}},"end":"\\"","name":"constant.other.symbol.double-quoted.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"(?>''')","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"Single-quoted heredocs","end":"^\\\\s*'''","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.single.heredoc.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"single quoted string (allows for interpolation)","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.single.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"(?>\\"\\"\\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"Double-quoted heredocs","end":"^\\\\s*\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.double.heredoc.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"double quoted string (allows for interpolation)","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.double.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"~[a-z](?>\\"\\"\\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"Double-quoted heredocs sigils","end":"^\\\\s*\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.heredoc.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"~[a-z]\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"sigil (allow for interpolation)","end":"\\\\}[a-z]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"~[a-z]\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"sigil (allow for interpolation)","end":"\\\\][a-z]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"~[a-z]\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"sigil (allow for interpolation)","end":"\\\\>[a-z]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"~[a-z]\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"sigil (allow for interpolation)","end":"\\\\)[a-z]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"~[a-z]([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"sigil (allow for interpolation)","end":"\\\\1[a-z]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.elixir","patterns":[{"include":"#interpolated_elixir"},{"include":"#escaped_char"}]},{"begin":"~[A-Z](?>\\"\\"\\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"Double-quoted heredocs sigils","end":"^\\\\s*\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.heredoc.literal.elixir"},{"begin":"~[A-Z]\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"sigil (without interpolation)","end":"\\\\}[a-z]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.literal.elixir"},{"begin":"~[A-Z]\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"sigil (without interpolation)","end":"\\\\][a-z]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.literal.elixir"},{"begin":"~[A-Z]\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"sigil (without interpolation)","end":"\\\\>[a-z]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.literal.elixir"},{"begin":"~[A-Z]\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"sigil (without interpolation)","end":"\\\\)[a-z]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.literal.elixir"},{"begin":"~[A-Z]([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elixir"}},"comment":"sigil (without interpolation)","end":"\\\\1[a-z]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.elixir"}},"name":"string.quoted.other.sigil.literal.elixir"},{"captures":{"1":{"name":"punctuation.definition.constant.elixir"}},"comment":"symbols","match":"(?[a-zA-Z_][\\\\w@]*(?>[?!]|=(?![>=]))?|\\\\<\\\\>|===?|!==?|<<>>|<<<|>>>|~~~|::|<\\\\-|\\\\|>|=>|=~|=|/|\\\\\\\\\\\\\\\\|\\\\*\\\\*?|\\\\.\\\\.?\\\\.?|\\\\.\\\\.//|>=?|<=?|&&?&?|\\\\+\\\\+?|\\\\-\\\\-?|\\\\|\\\\|?\\\\|?|\\\\!|@|\\\\%?\\\\{\\\\}|%|\\\\[\\\\]|\\\\^(\\\\^\\\\^)?)","name":"constant.other.symbol.elixir"},{"captures":{"1":{"name":"punctuation.definition.constant.elixir"}},"comment":"symbols","match":"(?>[a-zA-Z_][\\\\w@]*(?>[?!])?)(:)(?!:)","name":"constant.other.keywords.elixir"},{"begin":"(^[ \\\\t]+)?(?=##)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.elixir"}},"end":"(?!#)","patterns":[{"begin":"##","beginCaptures":{"0":{"name":"punctuation.definition.comment.elixir"}},"end":"\\\\n","name":"comment.line.section.elixir"}]},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.elixir"}},"end":"(?!#)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.elixir"}},"end":"\\\\n","name":"comment.line.number-sign.elixir"}]},{"match":"\\\\b_([^_][\\\\w]+[?!]?)","name":"comment.unused.elixir"},{"match":"\\\\b_\\\\b","name":"comment.wildcard.elixir"},{"comment":"\\n\\t\\t\\tmatches questionmark-letters.\\n\\n\\t\\t\\texamples (1st alternation = hex):\\n\\t\\t\\t?\\\\x1 ?\\\\x61\\n\\n\\t\\t\\texamples (2rd alternation = escaped):\\n\\t\\t\\t?\\\\n ?\\\\b\\n\\n\\t\\t\\texamples (3rd alternation = normal):\\n\\t\\t\\t?a ?A ?0\\n\\t\\t\\t?* ?\\" ?(\\n\\t\\t\\t?. ?#\\n\\n\\t\\t\\tthe negative lookbehind prevents against matching\\n\\t\\t\\tp(42.tainted?)\\n\\t\\t\\t","match":"(?","name":"keyword.operator.concatenation.elixir"},{"match":"\\\\|\\\\>|<~>|<>|<<<|>>>|~>>|<<~|~>|<~|<\\\\|>","name":"keyword.operator.sigils_1.elixir"},{"match":"&&&|&&","name":"keyword.operator.sigils_2.elixir"},{"match":"<\\\\-|\\\\\\\\\\\\\\\\","name":"keyword.operator.sigils_3.elixir"},{"match":"===?|!==?|<=?|>=?","name":"keyword.operator.comparison.elixir"},{"match":"(\\\\|\\\\|\\\\||&&&|\\\\^\\\\^\\\\^|<<<|>>>|~~~)","name":"keyword.operator.bitwise.elixir"},{"match":"(?<=[ \\\\t])!+|\\\\bnot\\\\b|&&|\\\\band\\\\b|\\\\|\\\\||\\\\bor\\\\b|\\\\bxor\\\\b","name":"keyword.operator.logical.elixir"},{"match":"(\\\\*|\\\\+|\\\\-|/)","name":"keyword.operator.arithmetic.elixir"},{"match":"\\\\||\\\\+\\\\+|\\\\-\\\\-|\\\\*\\\\*|\\\\\\\\\\\\\\\\|\\\\<\\\\-|\\\\<\\\\>|\\\\<\\\\<|\\\\>\\\\>|\\\\:\\\\:|\\\\.\\\\.|//|\\\\|>|~|=>|&","name":"keyword.operator.other.elixir"},{"match":"=","name":"keyword.operator.assignment.elixir"},{"match":":","name":"punctuation.separator.other.elixir"},{"match":"\\\\;","name":"punctuation.separator.statement.elixir"},{"match":",","name":"punctuation.separator.object.elixir"},{"match":"\\\\.","name":"punctuation.separator.method.elixir"},{"match":"\\\\{|\\\\}","name":"punctuation.section.scope.elixir"},{"match":"\\\\[|\\\\]","name":"punctuation.section.array.elixir"},{"match":"\\\\(|\\\\)","name":"punctuation.section.function.elixir"}]},"escaped_char":{"match":"\\\\\\\\(x[\\\\da-fA-F]{1,2}|.)","name":"constant.character.escaped.elixir"},"interpolated_elixir":{"begin":"#\\\\{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.elixir"}},"contentName":"source.elixir","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.elixir"}},"name":"meta.embedded.line.elixir","patterns":[{"include":"#nest_curly_and_self"},{"include":"$self"}]},"nest_curly_and_self":{"patterns":[{"begin":"\\\\{","captures":{"0":{"name":"punctuation.section.scope.elixir"}},"end":"\\\\}","patterns":[{"include":"#nest_curly_and_self"}]},{"include":"$self"}]}},"scopeName":"source.elixir","embeddedLangs":["html"]}`)),bne=[...ce,fne]});var oL={};x(oL,{default:()=>yne});var hne,yne,sL=_(()=>{Ho();hne=Object.freeze(JSON.parse(`{"displayName":"Elm","fileTypes":["elm"],"name":"elm","patterns":[{"include":"#import"},{"include":"#module"},{"include":"#debug"},{"include":"#comments"},{"match":"\\\\b(_)\\\\b","name":"keyword.unused.elm"},{"include":"#type-signature"},{"include":"#type-declaration"},{"include":"#type-alias-declaration"},{"include":"#string-triple"},{"include":"#string-quote"},{"include":"#char"},{"comment":"Floats are always decimal","match":"\\\\b([0-9]+\\\\.[0-9]+([eE][+-]?[0-9]+)?|[0-9]+[eE][+-]?[0-9]+)\\\\b","name":"constant.numeric.float.elm"},{"match":"\\\\b([0-9]+)\\\\b","name":"constant.numeric.elm"},{"match":"\\\\b(0x[0-9a-fA-F]+)\\\\b","name":"constant.numeric.elm"},{"include":"#glsl"},{"include":"#record-prefix"},{"include":"#module-prefix"},{"include":"#constructor"},{"captures":{"1":{"name":"punctuation.bracket.elm"},"2":{"name":"record.name.elm"},"3":{"name":"keyword.pipe.elm"},"4":{"name":"entity.name.record.field.elm"}},"match":"(\\\\{)\\\\s+([a-z][a-zA-Z0-9_]*)\\\\s+(\\\\|)\\\\s+([a-z][a-zA-Z0-9_]*)","name":"meta.record.field.update.elm"},{"captures":{"1":{"name":"keyword.pipe.elm"},"2":{"name":"entity.name.record.field.elm"},"3":{"name":"keyword.operator.assignment.elm"}},"match":"(\\\\|)\\\\s+([a-z][a-zA-Z0-9_]*)\\\\s+(\\\\=)","name":"meta.record.field.update.elm"},{"captures":{"1":{"name":"punctuation.bracket.elm"},"2":{"name":"record.name.elm"}},"match":"(\\\\{)\\\\s+([a-z][a-zA-Z0-9_]*)\\\\s+$","name":"meta.record.field.update.elm"},{"captures":{"1":{"name":"punctuation.bracket.elm"},"2":{"name":"entity.name.record.field.elm"},"3":{"name":"keyword.operator.assignment.elm"}},"match":"(\\\\{)\\\\s+([a-z][a-zA-Z0-9_]*)\\\\s+(\\\\=)","name":"meta.record.field.elm"},{"captures":{"1":{"name":"punctuation.separator.comma.elm"},"2":{"name":"entity.name.record.field.elm"},"3":{"name":"keyword.operator.assignment.elm"}},"match":"(,)\\\\s+([a-z][a-zA-Z0-9_]*)\\\\s+(\\\\=)","name":"meta.record.field.elm"},{"match":"(\\\\}|\\\\{)","name":"punctuation.bracket.elm"},{"include":"#unit"},{"include":"#comma"},{"include":"#parens"},{"match":"(->)","name":"keyword.operator.arrow.elm"},{"include":"#infix_op"},{"match":"(\\\\=|\\\\:|\\\\||\\\\\\\\)","name":"keyword.other.elm"},{"match":"\\\\b(type|as|port|exposing|alias|infixl|infixr|infix)\\\\s+","name":"keyword.other.elm"},{"match":"\\\\b(if|then|else|case|of|let|in)\\\\s+","name":"keyword.control.elm"},{"include":"#record-accessor"},{"include":"#top_level_value"},{"include":"#value"},{"include":"#period"},{"include":"#square_brackets"}],"repository":{"block_comment":{"applyEndPatternLast":1,"begin":"\\\\{-(?!#)","captures":{"0":{"name":"punctuation.definition.comment.elm"}},"end":"-\\\\}","name":"comment.block.elm","patterns":[{"include":"#block_comment"}]},"char":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.char.begin.elm"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.char.end.elm"}},"name":"string.quoted.single.elm","patterns":[{"match":"\\\\\\\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\"'\\\\&]|x[0-9a-fA-F]{1,5})","name":"constant.character.escape.elm"},{"match":"\\\\^[A-Z@\\\\[\\\\]\\\\\\\\\\\\^_]","name":"constant.character.escape.control.elm"}]},"comma":{"match":"(,)","name":"punctuation.separator.comma.elm"},"comments":{"patterns":[{"begin":"--","captures":{"1":{"name":"punctuation.definition.comment.elm"}},"end":"$","name":"comment.line.double-dash.elm"},{"include":"#block_comment"}]},"constructor":{"match":"\\\\b[A-Z][a-zA-Z0-9_]*\\\\b","name":"constant.type-constructor.elm"},"debug":{"match":"\\\\b(Debug)\\\\b","name":"invalid.illegal.debug.elm"},"glsl":{"begin":"(\\\\[)(glsl)(\\\\|)","beginCaptures":{"1":{"name":"entity.glsl.bracket.elm"},"2":{"name":"entity.glsl.name.elm"},"3":{"name":"entity.glsl.bracket.elm"}},"end":"(\\\\|\\\\])","endCaptures":{"1":{"name":"entity.glsl.bracket.elm"}},"name":"meta.embedded.block.glsl","patterns":[{"include":"source.glsl"}]},"import":{"begin":"^\\\\b(import)\\\\s+","beginCaptures":{"1":{"name":"keyword.control.import.elm"}},"end":"\\\\n(?!\\\\s)","name":"meta.import.elm","patterns":[{"match":"(as|exposing)","name":"keyword.control.elm"},{"include":"#module_chunk"},{"include":"#period"},{"match":"\\\\s+","name":"punctuation.spaces.elm"},{"include":"#module-exports"}]},"infix_op":{"match":"(|<\\\\?>|<\\\\||<=|\\\\|\\\\||&&|>=|\\\\|>|\\\\|=|\\\\|\\\\.|\\\\+\\\\+|::|/=|==|//|>>|<<|<|>|\\\\^|\\\\+|-|/|\\\\*)","name":"keyword.operator.elm"},"module":{"begin":"^\\\\b((port |effect )?module)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.elm"}},"end":"\\\\n(?!\\\\s)","endCaptures":{"1":{"name":"keyword.other.elm"}},"name":"meta.declaration.module.elm","patterns":[{"include":"#module_chunk"},{"include":"#period"},{"match":"(exposing)","name":"keyword.other.elm"},{"match":"\\\\s+","name":"punctuation.spaces.elm"},{"include":"#module-exports"}]},"module-exports":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.parens.module-export.elm"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parens.module-export.elm"}},"name":"meta.declaration.exports.elm","patterns":[{"match":"\\\\b[a-z][a-zA-Z_'0-9]*","name":"entity.name.function.elm"},{"match":"\\\\b[A-Z][A-Za-z_'0-9]*","name":"storage.type.elm"},{"match":",","name":"punctuation.separator.comma.elm"},{"match":"\\\\s+","name":"punctuation.spaces.elm"},{"include":"#comma"},{"match":"\\\\(\\\\.\\\\.\\\\)","name":"punctuation.parens.ellipses.elm"},{"match":"\\\\.\\\\.","name":"punctuation.parens.ellipses.elm"},{"include":"#infix_op"},{"comment":"So named because I don't know what to call this.","match":"\\\\(.*?\\\\)","name":"meta.other.unknown.elm"}]},"module-prefix":{"captures":{"1":{"name":"support.module.elm"},"2":{"name":"keyword.other.period.elm"}},"match":"([A-Z][a-zA-Z0-9_]*)(\\\\.)","name":"meta.module.name.elm"},"module_chunk":{"match":"[A-Z][a-zA-Z0-9_]*","name":"support.module.elm"},"parens":{"match":"(\\\\(|\\\\))","name":"punctuation.parens.elm"},"period":{"match":"[.]","name":"keyword.other.period.elm"},"record-accessor":{"captures":{"1":{"name":"keyword.other.period.elm"},"2":{"name":"entity.name.record.field.accessor.elm"}},"match":"(\\\\.)([a-z][a-zA-Z0-9_]*)","name":"meta.record.accessor"},"record-prefix":{"captures":{"1":{"name":"record.name.elm"},"2":{"name":"keyword.other.period.elm"},"3":{"name":"entity.name.record.field.accessor.elm"}},"match":"([a-z][a-zA-Z0-9_]*)(\\\\.)([a-z][a-zA-Z0-9_]*)","name":"record.accessor.elm"},"square_brackets":{"match":"[\\\\[\\\\]]","name":"punctuation.definition.list.elm"},"string-quote":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elm"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.elm"}},"name":"string.quoted.double.elm","patterns":[{"match":"\\\\\\\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\"'\\\\&]|x[0-9a-fA-F]{1,5})","name":"constant.character.escape.elm"},{"match":"\\\\^[A-Z@\\\\[\\\\]\\\\\\\\\\\\^_]","name":"constant.character.escape.control.elm"}]},"string-triple":{"begin":"\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.elm"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.elm"}},"name":"string.quoted.triple.elm","patterns":[{"match":"\\\\\\\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\"'\\\\&]|x[0-9a-fA-F]{1,5})","name":"constant.character.escape.elm"},{"match":"\\\\^[A-Z@\\\\[\\\\]\\\\\\\\\\\\^_]","name":"constant.character.escape.control.elm"}]},"top_level_value":{"match":"^[a-z][a-zA-Z0-9_]*\\\\b","name":"entity.name.function.top_level.elm"},"type-alias-declaration":{"begin":"^(type\\\\s+)(alias\\\\s+)([A-Z][a-zA-Z0-9_']*)\\\\s+","beginCaptures":{"1":{"name":"keyword.type.elm"},"2":{"name":"keyword.type-alias.elm"},"3":{"name":"storage.type.elm"}},"end":"^(?=\\\\S)","name":"meta.function.type-declaration.elm","patterns":[{"match":"\\\\n\\\\s+","name":"punctuation.spaces.elm"},{"match":"\\\\=","name":"keyword.operator.assignment.elm"},{"include":"#module-prefix"},{"match":"\\\\b[A-Z][a-zA-Z0-9_]*\\\\b","name":"storage.type.elm"},{"match":"\\\\b[a-z][a-zA-Z0-9_]*\\\\b","name":"variable.type.elm"},{"include":"#comments"},{"include":"#type-record"}]},"type-declaration":{"begin":"^(type\\\\s+)([A-Z][a-zA-Z0-9_']*)\\\\s+","beginCaptures":{"1":{"name":"keyword.type.elm"},"2":{"name":"storage.type.elm"}},"end":"^(?=\\\\S)","name":"meta.function.type-declaration.elm","patterns":[{"captures":{"1":{"name":"constant.type-constructor.elm"}},"match":"^\\\\s*([A-Z][a-zA-Z0-9_]*)\\\\b","name":"meta.record.field.elm"},{"match":"\\\\s+","name":"punctuation.spaces.elm"},{"captures":{"1":{"name":"keyword.operator.assignment.elm"},"2":{"name":"constant.type-constructor.elm"}},"match":"(\\\\=|\\\\|)\\\\s+([A-Z][a-zA-Z0-9_]*)\\\\b","name":"meta.record.field.elm"},{"match":"\\\\=","name":"keyword.operator.assignment.elm"},{"match":"\\\\-\\\\>","name":"keyword.operator.arrow.elm"},{"include":"#module-prefix"},{"match":"\\\\b[a-z][a-zA-Z0-9_]*\\\\b","name":"variable.type.elm"},{"match":"\\\\b[A-Z][a-zA-Z0-9_]*\\\\b","name":"storage.type.elm"},{"include":"#comments"},{"include":"#type-record"}]},"type-record":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.section.braces.begin"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.section.braces.end"}},"name":"meta.function.type-record.elm","patterns":[{"match":"\\\\s+","name":"punctuation.spaces.elm"},{"match":"->","name":"keyword.operator.arrow.elm"},{"captures":{"1":{"name":"entity.name.record.field.elm"},"2":{"name":"keyword.other.elm"}},"match":"([a-z][a-zA-Z0-9_]*)\\\\s+(\\\\:)","name":"meta.record.field.elm"},{"match":"\\\\,","name":"punctuation.separator.comma.elm"},{"include":"#module-prefix"},{"match":"\\\\b[a-z][a-zA-Z0-9_]*\\\\b","name":"variable.type.elm"},{"match":"\\\\b[A-Z][a-zA-Z0-9_]*\\\\b","name":"storage.type.elm"},{"include":"#comments"},{"include":"#type-record"}]},"type-signature":{"begin":"^(port\\\\s+)?([a-z_][a-zA-Z0-9_']*)\\\\s+(\\\\:)","beginCaptures":{"1":{"name":"keyword.other.port.elm"},"2":{"name":"entity.name.function.elm"},"3":{"name":"keyword.other.colon.elm"}},"end":"((^(?=[a-z]))|^$)","name":"meta.function.type-declaration.elm","patterns":[{"include":"#type-signature-chunk"}]},"type-signature-chunk":{"patterns":[{"match":"->","name":"keyword.operator.arrow.elm"},{"match":"\\\\s+","name":"punctuation.spaces.elm"},{"include":"#module-prefix"},{"match":"\\\\b[a-z][a-zA-Z0-9_]*\\\\b","name":"variable.type.elm"},{"match":"\\\\b[A-Z][a-zA-Z0-9_]*\\\\b","name":"storage.type.elm"},{"match":"\\\\(\\\\)","name":"constant.unit.elm"},{"include":"#comma"},{"include":"#parens"},{"include":"#comments"},{"include":"#type-record"}]},"unit":{"match":"\\\\(\\\\)","name":"constant.unit.elm"},"value":{"match":"\\\\b[a-z][a-zA-Z0-9_]*\\\\b","name":"meta.value.elm"}},"scopeName":"source.elm","embeddedLangs":["glsl"]}`)),yne=[...Xa,hne]});var cL={};x(cL,{default:()=>kne});var wne,kne,lL=_(()=>{wne=Object.freeze(JSON.parse(`{"displayName":"Emacs Lisp","fileTypes":["el","elc","eld","spacemacs","_emacs","emacs","emacs.desktop","abbrev_defs","Project.ede","Cask","gnus","viper"],"firstLineMatch":"^\\\\#!.*(?:\\\\s|\\\\/|(?<=!)\\\\b)emacs(?:$|\\\\s)|(?:-\\\\*-(?i:[ \\\\t]*(?=[^:;\\\\s]+[ \\\\t]*-\\\\*-)|(?:.*?[ \\\\t;]|(?<=-\\\\*-))[ \\\\t]*mode[ \\\\t]*:[ \\\\t]*)(?i:emacs-lisp)(?=[ \\\\t;]|(?]?[0-9]+|m)?|[ \\\\t]ex)(?=:(?=[ \\\\t]*set?[ \\\\t][^\\\\r\\\\n:]+:)|:(?![ \\\\t]*set?[ \\\\t]))(?:(?:[ \\\\t]*:[ \\\\t]*|[ \\\\t])\\\\w*(?:[ \\\\t]*=(?:[^\\\\\\\\\\\\s]|\\\\\\\\.)*)?)*[ \\\\t:](?:filetype|ft|syntax)[ \\\\t]*=(?i:emacs-lisp|elisp)(?=$|\\\\s|:))","name":"emacs-lisp","patterns":[{"begin":"\\\\A(#!)","beginCaptures":{"1":{"name":"punctuation.definition.comment.hashbang.emacs.lisp"}},"end":"$","name":"comment.line.hashbang.emacs.lisp"},{"include":"#main"}],"repository":{"archive-sources":{"captures":{"1":{"name":"support.language.constant.archive-source.emacs.lisp"}},"match":"\\\\b(?<=[\\\\s()\\\\[]|^)(SC|gnu|marmalade|melpa-stable|melpa|org)(?=[\\\\s()]|$)\\\\b"},"arg-values":{"patterns":[{"match":"&(optional|rest)(?=\\\\s|\\\\))","name":"constant.language.$1.arguments.emacs.lisp"}]},"autoload":{"begin":"^(;;;###)(autoload)","beginCaptures":{"1":{"name":"punctuation.definition.comment.emacs.lisp"},"2":{"name":"storage.modifier.autoload.emacs.lisp"}},"contentName":"string.unquoted.other.emacs.lisp","end":"$","name":"comment.line.semicolon.autoload.emacs.lisp"},"binding":{"match":"\\\\b(?<=[\\\\s()\\\\[]|^)(let\\\\*?|set[fq]?)(?=[\\\\s()]|$)","name":"storage.binding.emacs.lisp"},"boolean":{"patterns":[{"match":"\\\\b(?<=[\\\\s()\\\\[]|^)t(?=[\\\\s()]|$)\\\\b","name":"constant.boolean.true.emacs.lisp"},{"match":"\\\\b(?<=[\\\\s()\\\\[]|^)(nil)(?=[\\\\s()]|$)\\\\b","name":"constant.language.nil.emacs.lisp"}]},"cask":{"match":"\\\\b(?<=[\\\\s()\\\\[]|^)(?:files|source|development|depends-on|package-file|package-descriptor|package)(?=[\\\\s()]|$)\\\\b","name":"support.function.emacs.lisp"},"comment":{"begin":";","beginCaptures":{"0":{"name":"punctuation.definition.comment.emacs.lisp"}},"end":"$","name":"comment.line.semicolon.emacs.lisp","patterns":[{"include":"#modeline"},{"include":"#eldoc"}]},"definition":{"patterns":[{"begin":"(\\\\()(?:(cl-(defun|defmacro|defsubst))|(defun|defmacro|defsubst))(?!-)\\\\b(?:\\\\s*(?![-+\\\\d])([-+=*/\\\\w~!@$%^&:<>{}?]+))?","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.emacs.lisp"},"2":{"name":"storage.type.$3.function.cl-lib.emacs.lisp"},"4":{"name":"storage.type.$4.function.emacs.lisp"},"5":{"name":"entity.function.name.emacs.lisp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.expression.end.emacs.lisp"}},"name":"meta.function.definition.emacs.lisp","patterns":[{"include":"#defun-innards"}]},{"match":"\\\\b(?<=[\\\\s()\\\\[]|^)defun(?=[\\\\s()]|$)","name":"storage.type.function.emacs.lisp"},{"begin":"(?<=\\\\s|^)(\\\\()(def(advice|class|const|custom|face|image|group|package|struct|subst|theme|type|var))(?:\\\\s+([-+=*/\\\\w~!@$%^&:<>{}?]+))?(?=[\\\\s()]|$)","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.emacs.lisp"},"2":{"name":"storage.type.$3.emacs.lisp"},"4":{"name":"entity.name.$3.emacs.lisp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.expression.end.emacs.lisp"}},"name":"meta.$3.definition.emacs.lisp","patterns":[{"include":"$self"}]},{"match":"\\\\b(?<=[\\\\s()\\\\[]|^)(define-(?:condition|widget))(?=[\\\\s()]|$)\\\\b","name":"storage.type.$1.emacs.lisp"}]},"defun-innards":{"patterns":[{"begin":"\\\\G\\\\s*(\\\\()","beginCaptures":{"0":{"name":"punctuation.section.expression.begin.emacs.lisp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.expression.end.emacs.lisp"}},"name":"meta.argument-list.expression.emacs.lisp","patterns":[{"include":"#arg-keywords"},{"match":"(?![-+\\\\d:&'#])([-+=*/\\\\w~!@$%^&:<>{}?]+)","name":"variable.parameter.emacs.lisp"},{"include":"$self"}]},{"include":"$self"}]},"docesc":{"patterns":[{"match":"\\\\x5C{2}=","name":"constant.escape.character.key-sequence.emacs.lisp"},{"match":"\\\\x5C{2}+","name":"constant.escape.character.suppress-link.emacs.lisp"}]},"dockey":{"captures":{"1":{"name":"punctuation.definition.reference.begin.emacs.lisp"},"2":{"name":"constant.other.reference.link.emacs.lisp"},"3":{"name":"punctuation.definition.reference.end.emacs.lisp"}},"match":"(\\\\x5C{2}\\\\[)((?:[^\\\\s\\\\\\\\]|\\\\\\\\.)+)(\\\\])","name":"variable.other.reference.key-sequence.emacs.lisp"},"docmap":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.reference.begin.emacs.lisp"},"2":{"name":"entity.name.tag.keymap.emacs.lisp"},"3":{"name":"punctuation.definition.reference.end.emacs.lisp"}},"match":"(\\\\x5C{2}{)((?:[^\\\\s\\\\\\\\]|\\\\\\\\.)+)(})","name":"meta.keymap.summary.emacs.lisp"},{"captures":{"1":{"name":"punctuation.definition.reference.begin.emacs.lisp"},"2":{"name":"entity.name.tag.keymap.emacs.lisp"},"3":{"name":"punctuation.definition.reference.end.emacs.lisp"}},"match":"(\\\\x5C{2}<)((?:[^\\\\s\\\\\\\\]|\\\\\\\\.)+)(>)","name":"meta.keymap.specifier.emacs.lisp"}]},"docvar":{"captures":{"1":{"name":"punctuation.definition.quote.begin.emacs.lisp"},"2":{"name":"punctuation.definition.quote.end.emacs.lisp"}},"match":"(\`)[^\\\\s()]+(')","name":"variable.other.literal.emacs.lisp"},"eldoc":{"patterns":[{"include":"#docesc"},{"include":"#docvar"},{"include":"#dockey"},{"include":"#docmap"}]},"escapes":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.codepoint.emacs.lisp"},"2":{"name":"punctuation.definition.codepoint.emacs.lisp"}},"match":"(\\\\?)\\\\\\\\u[A-Fa-f0-9]{4}|(\\\\?)\\\\\\\\U00[A-Fa-f0-9]{6}","name":"constant.character.escape.hex.emacs.lisp"},{"captures":{"1":{"name":"punctuation.definition.codepoint.emacs.lisp"}},"match":"(\\\\?)\\\\\\\\x[A-Fa-f0-9]+","name":"constant.character.escape.hex.emacs.lisp"},{"captures":{"1":{"name":"punctuation.definition.codepoint.emacs.lisp"}},"match":"(\\\\?)\\\\\\\\[0-7]{1,3}","name":"constant.character.escape.octal.emacs.lisp"},{"captures":{"1":{"name":"punctuation.definition.codepoint.emacs.lisp"},"2":{"name":"punctuation.definition.backslash.emacs.lisp"}},"match":"(\\\\?)(?:[^\\\\\\\\]|(\\\\\\\\).)","name":"constant.numeric.codepoint.emacs.lisp"},{"captures":{"1":{"name":"punctuation.definition.backslash.emacs.lisp"}},"match":"(\\\\\\\\).","name":"constant.character.escape.emacs.lisp"}]},"expression":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.expression.begin.emacs.lisp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.expression.end.emacs.lisp"}},"name":"meta.expression.emacs.lisp","patterns":[{"include":"$self"}]},{"begin":"(\\\\')(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.symbol.emacs.lisp"},"2":{"name":"punctuation.section.quoted.expression.begin.emacs.lisp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.quoted.expression.end.emacs.lisp"}},"name":"meta.quoted.expression.emacs.lisp","patterns":[{"include":"$self"}]},{"begin":"(\\\\\`)(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.symbol.emacs.lisp"},"2":{"name":"punctuation.section.backquoted.expression.begin.emacs.lisp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.backquoted.expression.end.emacs.lisp"}},"name":"meta.backquoted.expression.emacs.lisp","patterns":[{"include":"$self"}]},{"begin":"(,@)(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.symbol.emacs.lisp"},"2":{"name":"punctuation.section.interpolated.expression.begin.emacs.lisp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.interpolated.expression.end.emacs.lisp"}},"name":"meta.interpolated.expression.emacs.lisp","patterns":[{"include":"$self"}]}]},"face-innards":{"patterns":[{"captures":{"1":{"name":"punctuation.section.expression.begin.emacs.lisp"},"2":{"name":"variable.language.display.type.emacs.lisp"},"3":{"name":"support.constant.display.type.emacs.lisp"},"4":{"name":"punctuation.section.expression.end.emacs.lisp"}},"match":"(\\\\()(type)\\\\s+(graphic|x|pc|w32|tty)(\\\\))","name":"meta.expression.display-type.emacs.lisp"},{"captures":{"1":{"name":"punctuation.section.expression.begin.emacs.lisp"},"2":{"name":"variable.language.display.class.emacs.lisp"},"3":{"name":"support.constant.display.class.emacs.lisp"},"4":{"name":"punctuation.section.expression.end.emacs.lisp"}},"match":"(\\\\()(class)\\\\s+(color|grayscale|mono)(\\\\))","name":"meta.expression.display-class.emacs.lisp"},{"captures":{"1":{"name":"punctuation.section.expression.begin.emacs.lisp"},"2":{"name":"variable.language.background-type.emacs.lisp"},"3":{"name":"support.constant.background-type.emacs.lisp"},"4":{"name":"punctuation.section.expression.end.emacs.lisp"}},"match":"(\\\\()(background)\\\\s+(light|dark)(\\\\))","name":"meta.expression.background-type.emacs.lisp"},{"begin":"(\\\\()(min-colors|supports)(?=[\\\\s()]|$)","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.emacs.lisp"},"2":{"name":"variable.language.display-prerequisite.emacs.lisp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.expression.end.emacs.lisp"}},"name":"meta.expression.display-prerequisite.emacs.lisp","patterns":[{"include":"$self"}]}]},"faces":{"match":"\\\\b(?<=[\\\\s()\\\\[]|^)(?:Buffer-menu-buffer|Info-quoted|Info-title-1-face|Info-title-2-face|Info-title-3-face|Info-title-4-face|Man-overstrike|Man-reverse|Man-underline|antlr-default|antlr-font-lock-default-face|antlr-font-lock-keyword-face|antlr-font-lock-literal-face|antlr-font-lock-ruledef-face|antlr-font-lock-ruleref-face|antlr-font-lock-syntax-face|antlr-font-lock-tokendef-face|antlr-font-lock-tokenref-face|antlr-keyword|antlr-literal|antlr-ruledef|antlr-ruleref|antlr-syntax|antlr-tokendef|antlr-tokenref|apropos-keybinding|apropos-property|apropos-symbol|bat-label-face|bg:erc-color-face0|bg:erc-color-face1|bg:erc-color-face10|bg:erc-color-face11|bg:erc-color-face12|bg:erc-color-face13|bg:erc-color-face14|bg:erc-color-face15|bg:erc-color-face2|bg:erc-color-face3|bg:erc-color-face4|bg:erc-color-face5|bg:erc-color-face6|bg:erc-color-face7|bg:erc-color-face8|bg:erc-color-face9|bold-italic|bold|bookmark-menu-bookmark|bookmark-menu-heading|border|breakpoint-disabled|breakpoint-enabled|buffer-menu-buffer|button|c-annotation-face|calc-nonselected-face|calc-selected-face|calendar-month-header|calendar-today|calendar-weekday-header|calendar-weekend-header|change-log-acknowledgement-face|change-log-acknowledgement|change-log-acknowledgment|change-log-conditionals-face|change-log-conditionals|change-log-date-face|change-log-date|change-log-email-face|change-log-email|change-log-file-face|change-log-file|change-log-function-face|change-log-function|change-log-list-face|change-log-list|change-log-name-face|change-log-name|comint-highlight-input|comint-highlight-prompt|compare-windows|compilation-column-number|compilation-error|compilation-info|compilation-line-number|compilation-mode-line-exit|compilation-mode-line-fail|compilation-mode-line-run|compilation-warning|completions-annotations|completions-common-part|completions-first-difference|cperl-array-face|cperl-hash-face|cperl-nonoverridable-face|css-property|css-selector|cua-global-mark|cua-rectangle-noselect|cua-rectangle|cursor|custom-button-mouse|custom-button-pressed-unraised|custom-button-pressed|custom-button-unraised|custom-button|custom-changed|custom-comment-tag|custom-comment|custom-documentation|custom-face-tag|custom-group-subtitle|custom-group-tag-1|custom-group-tag|custom-invalid|custom-link|custom-modified|custom-rogue|custom-saved|custom-set|custom-state|custom-themed|custom-variable-button|custom-variable-tag|custom-visibility|cvs-filename-face|cvs-filename|cvs-handled-face|cvs-handled|cvs-header-face|cvs-header|cvs-marked-face|cvs-marked|cvs-msg-face|cvs-msg|cvs-need-action-face|cvs-need-action|cvs-unknown-face|cvs-unknown|default|diary-anniversary|diary-button|diary-time|diary|diff-added-face|diff-added|diff-changed-face|diff-changed|diff-context-face|diff-context|diff-file-header-face|diff-file-header|diff-function-face|diff-function|diff-header-face|diff-header|diff-hunk-header-face|diff-hunk-header|diff-index-face|diff-index|diff-indicator-added|diff-indicator-changed|diff-indicator-removed|diff-nonexistent-face|diff-nonexistent|diff-refine-added|diff-refine-change|diff-refine-changed|diff-refine-removed|diff-removed-face|diff-removed|dired-directory|dired-flagged|dired-header|dired-ignored|dired-mark|dired-marked|dired-perm-write|dired-symlink|dired-warning|ebrowse-default|ebrowse-file-name|ebrowse-member-attribute|ebrowse-member-class|ebrowse-progress|ebrowse-root-class|ebrowse-tree-mark|ediff-current-diff-A|ediff-current-diff-Ancestor|ediff-current-diff-B|ediff-current-diff-C|ediff-even-diff-A|ediff-even-diff-Ancestor|ediff-even-diff-B|ediff-even-diff-C|ediff-fine-diff-A|ediff-fine-diff-Ancestor|ediff-fine-diff-B|ediff-fine-diff-C|ediff-odd-diff-A|ediff-odd-diff-Ancestor|ediff-odd-diff-B|ediff-odd-diff-C|eieio-custom-slot-tag-face|eldoc-highlight-function-argument|epa-field-body|epa-field-name|epa-mark|epa-string|epa-validity-disabled|epa-validity-high|epa-validity-low|epa-validity-medium|erc-action-face|erc-bold-face|erc-button|erc-command-indicator-face|erc-current-nick-face|erc-dangerous-host-face|erc-default-face|erc-direct-msg-face|erc-error-face|erc-fool-face|erc-header-line|erc-input-face|erc-inverse-face|erc-keyword-face|erc-my-nick-face|erc-my-nick-prefix-face|erc-nick-default-face|erc-nick-msg-face|erc-nick-prefix-face|erc-notice-face|erc-pal-face|erc-prompt-face|erc-timestamp-face|erc-underline-face|error|ert-test-result-expected|ert-test-result-unexpected|escape-glyph|eww-form-checkbox|eww-form-file|eww-form-select|eww-form-submit|eww-form-text|eww-form-textarea|eww-invalid-certificate|eww-valid-certificate|excerpt|ffap|fg:erc-color-face0|fg:erc-color-face1|fg:erc-color-face10|fg:erc-color-face11|fg:erc-color-face12|fg:erc-color-face13|fg:erc-color-face14|fg:erc-color-face15|fg:erc-color-face2|fg:erc-color-face3|fg:erc-color-face4|fg:erc-color-face5|fg:erc-color-face6|fg:erc-color-face7|fg:erc-color-face8|fg:erc-color-face9|file-name-shadow|fixed-pitch|fixed|flymake-errline|flymake-warnline|flyspell-duplicate|flyspell-incorrect|font-lock-builtin-face|font-lock-comment-delimiter-face|font-lock-comment-face|font-lock-constant-face|font-lock-doc-face|font-lock-function-name-face|font-lock-keyword-face|font-lock-negation-char-face|font-lock-preprocessor-face|font-lock-regexp-grouping-backslash|font-lock-regexp-grouping-construct|font-lock-string-face|font-lock-type-face|font-lock-variable-name-face|font-lock-warning-face|fringe|glyphless-char|gnus-button|gnus-cite-1|gnus-cite-10|gnus-cite-11|gnus-cite-2|gnus-cite-3|gnus-cite-4|gnus-cite-5|gnus-cite-6|gnus-cite-7|gnus-cite-8|gnus-cite-9|gnus-cite-attribution-face|gnus-cite-attribution|gnus-cite-face-1|gnus-cite-face-10|gnus-cite-face-11|gnus-cite-face-2|gnus-cite-face-3|gnus-cite-face-4|gnus-cite-face-5|gnus-cite-face-6|gnus-cite-face-7|gnus-cite-face-8|gnus-cite-face-9|gnus-emphasis-bold-italic|gnus-emphasis-bold|gnus-emphasis-highlight-words|gnus-emphasis-italic|gnus-emphasis-strikethru|gnus-emphasis-underline-bold-italic|gnus-emphasis-underline-bold|gnus-emphasis-underline-italic|gnus-emphasis-underline|gnus-group-mail-1-empty-face|gnus-group-mail-1-empty|gnus-group-mail-1-face|gnus-group-mail-1|gnus-group-mail-2-empty-face|gnus-group-mail-2-empty|gnus-group-mail-2-face|gnus-group-mail-2|gnus-group-mail-3-empty-face|gnus-group-mail-3-empty|gnus-group-mail-3-face|gnus-group-mail-3|gnus-group-mail-low-empty-face|gnus-group-mail-low-empty|gnus-group-mail-low-face|gnus-group-mail-low|gnus-group-news-1-empty-face|gnus-group-news-1-empty|gnus-group-news-1-face|gnus-group-news-1|gnus-group-news-2-empty-face|gnus-group-news-2-empty|gnus-group-news-2-face|gnus-group-news-2|gnus-group-news-3-empty-face|gnus-group-news-3-empty|gnus-group-news-3-face|gnus-group-news-3|gnus-group-news-4-empty-face|gnus-group-news-4-empty|gnus-group-news-4-face|gnus-group-news-4|gnus-group-news-5-empty-face|gnus-group-news-5-empty|gnus-group-news-5-face|gnus-group-news-5|gnus-group-news-6-empty-face|gnus-group-news-6-empty|gnus-group-news-6-face|gnus-group-news-6|gnus-group-news-low-empty-face|gnus-group-news-low-empty|gnus-group-news-low-face|gnus-group-news-low|gnus-header-content-face|gnus-header-content|gnus-header-from-face|gnus-header-from|gnus-header-name-face|gnus-header-name|gnus-header-newsgroups-face|gnus-header-newsgroups|gnus-header-subject-face|gnus-header-subject|gnus-signature-face|gnus-signature|gnus-splash-face|gnus-splash|gnus-summary-cancelled-face|gnus-summary-cancelled|gnus-summary-high-ancient-face|gnus-summary-high-ancient|gnus-summary-high-read-face|gnus-summary-high-read|gnus-summary-high-ticked-face|gnus-summary-high-ticked|gnus-summary-high-undownloaded-face|gnus-summary-high-undownloaded|gnus-summary-high-unread-face|gnus-summary-high-unread|gnus-summary-low-ancient-face|gnus-summary-low-ancient|gnus-summary-low-read-face|gnus-summary-low-read|gnus-summary-low-ticked-face|gnus-summary-low-ticked|gnus-summary-low-undownloaded-face|gnus-summary-low-undownloaded|gnus-summary-low-unread-face|gnus-summary-low-unread|gnus-summary-normal-ancient-face|gnus-summary-normal-ancient|gnus-summary-normal-read-face|gnus-summary-normal-read|gnus-summary-normal-ticked-face|gnus-summary-normal-ticked|gnus-summary-normal-undownloaded-face|gnus-summary-normal-undownloaded|gnus-summary-normal-unread-face|gnus-summary-normal-unread|gnus-summary-selected-face|gnus-summary-selected|gomoku-O|gomoku-X|header-line|help-argument-name|hexl-address-region|hexl-ascii-region|hi-black-b|hi-black-hb|hi-blue-b|hi-blue|hi-green-b|hi-green|hi-pink|hi-red-b|hi-yellow|hide-ifdef-shadow|highlight-changes-delete-face|highlight-changes-delete|highlight-changes-face|highlight-changes|highlight|hl-line|holiday|icomplete-first-match|idlwave-help-link|idlwave-shell-bp|idlwave-shell-disabled-bp|idlwave-shell-electric-stop-line|idlwave-shell-pending-electric-stop|idlwave-shell-pending-stop|ido-first-match|ido-incomplete-regexp|ido-indicator|ido-only-match|ido-subdir|ido-virtual|info-header-node|info-header-xref|info-index-match|info-menu-5|info-menu-header|info-menu-star|info-node|info-title-1|info-title-2|info-title-3|info-title-4|info-xref|isearch-fail|isearch-lazy-highlight-face|isearch|iswitchb-current-match|iswitchb-invalid-regexp|iswitchb-single-match|iswitchb-virtual-matches|italic|landmark-font-lock-face-O|landmark-font-lock-face-X|lazy-highlight|ld-script-location-counter|link-visited|link|log-edit-header|log-edit-summary|log-edit-unknown-header|log-view-file-face|log-view-file|log-view-message-face|log-view-message|makefile-makepp-perl|makefile-shell|makefile-space-face|makefile-space|makefile-targets|match|menu|message-cited-text-face|message-cited-text|message-header-cc-face|message-header-cc|message-header-name-face|message-header-name|message-header-newsgroups-face|message-header-newsgroups|message-header-other-face|message-header-other|message-header-subject-face|message-header-subject|message-header-to-face|message-header-to|message-header-xheader-face|message-header-xheader|message-mml-face|message-mml|message-separator-face|message-separator|mh-folder-address|mh-folder-blacklisted|mh-folder-body|mh-folder-cur-msg-number|mh-folder-date|mh-folder-deleted|mh-folder-followup|mh-folder-msg-number|mh-folder-refiled|mh-folder-sent-to-me-hint|mh-folder-sent-to-me-sender|mh-folder-subject|mh-folder-tick|mh-folder-to|mh-folder-whitelisted|mh-letter-header-field|mh-search-folder|mh-show-cc|mh-show-date|mh-show-from|mh-show-header|mh-show-pgg-bad|mh-show-pgg-good|mh-show-pgg-unknown|mh-show-signature|mh-show-subject|mh-show-to|mh-speedbar-folder-with-unseen-messages|mh-speedbar-folder|mh-speedbar-selected-folder-with-unseen-messages|mh-speedbar-selected-folder|minibuffer-prompt|mm-command-output|mm-uu-extract|mode-line-buffer-id|mode-line-emphasis|mode-line-highlight|mode-line-inactive|mode-line|modeline-buffer-id|modeline-highlight|modeline-inactive|mouse|mpuz-solved|mpuz-text|mpuz-trivial|mpuz-unsolved|newsticker-date-face|newsticker-default-face|newsticker-enclosure-face|newsticker-extra-face|newsticker-feed-face|newsticker-immortal-item-face|newsticker-new-item-face|newsticker-obsolete-item-face|newsticker-old-item-face|newsticker-statistics-face|newsticker-treeview-face|newsticker-treeview-immortal-face|newsticker-treeview-new-face|newsticker-treeview-obsolete-face|newsticker-treeview-old-face|newsticker-treeview-selection-face|next-error|nobreak-space|nxml-attribute-colon|nxml-attribute-local-name|nxml-attribute-prefix|nxml-attribute-value-delimiter|nxml-attribute-value|nxml-cdata-section-CDATA|nxml-cdata-section-content|nxml-cdata-section-delimiter|nxml-char-ref-delimiter|nxml-char-ref-number|nxml-comment-content|nxml-comment-delimiter|nxml-delimited-data|nxml-delimiter|nxml-element-colon|nxml-element-local-name|nxml-element-prefix|nxml-entity-ref-delimiter|nxml-entity-ref-name|nxml-glyph|nxml-hash|nxml-heading|nxml-markup-declaration-delimiter|nxml-name|nxml-namespace-attribute-colon|nxml-namespace-attribute-prefix|nxml-namespace-attribute-value-delimiter|nxml-namespace-attribute-value|nxml-namespace-attribute-xmlns|nxml-outline-active-indicator|nxml-outline-ellipsis|nxml-outline-indicator|nxml-processing-instruction-content|nxml-processing-instruction-delimiter|nxml-processing-instruction-target|nxml-prolog-keyword|nxml-prolog-literal-content|nxml-prolog-literal-delimiter|nxml-ref|nxml-tag-delimiter|nxml-tag-slash|nxml-text|octave-function-comment-block|org-agenda-calendar-event|org-agenda-calendar-sexp|org-agenda-clocking|org-agenda-column-dateline|org-agenda-current-time|org-agenda-date-today|org-agenda-date-weekend|org-agenda-date|org-agenda-diary|org-agenda-dimmed-todo-face|org-agenda-done|org-agenda-filter-category|org-agenda-filter-regexp|org-agenda-filter-tags|org-agenda-restriction-lock|org-agenda-structure|org-archived|org-block-background|org-block-begin-line|org-block-end-line|org-block|org-checkbox-statistics-done|org-checkbox-statistics-todo|org-checkbox|org-clock-overlay|org-code|org-column-title|org-column|org-date-selected|org-date|org-default|org-document-info-keyword|org-document-info|org-document-title|org-done|org-drawer|org-ellipsis|org-footnote|org-formula|org-headline-done|org-hide|org-latex-and-related|org-level-1|org-level-2|org-level-3|org-level-4|org-level-5|org-level-6|org-level-7|org-level-8|org-link|org-list-dt|org-macro|org-meta-line|org-mode-line-clock-overrun|org-mode-line-clock|org-priority|org-property-value|org-quote|org-scheduled-previously|org-scheduled-today|org-scheduled|org-sexp-date|org-special-keyword|org-table|org-tag-group|org-tag|org-target|org-time-grid|org-todo|org-upcoming-deadline|org-verbatim|org-verse|org-warning|outline-1|outline-2|outline-3|outline-4|outline-5|outline-6|outline-7|outline-8|proced-mark|proced-marked|proced-sort-header|pulse-highlight-face|pulse-highlight-start-face|query-replace|rcirc-bright-nick|rcirc-dim-nick|rcirc-keyword|rcirc-my-nick|rcirc-nick-in-message-full-line|rcirc-nick-in-message|rcirc-other-nick|rcirc-prompt|rcirc-server-prefix|rcirc-server|rcirc-timestamp|rcirc-track-keyword|rcirc-track-nick|rcirc-url|reb-match-0|reb-match-1|reb-match-2|reb-match-3|rectangle-preview-face|region|rmail-header-name|rmail-highlight|rng-error|rst-adornment|rst-block|rst-comment|rst-definition|rst-directive|rst-emphasis1|rst-emphasis2|rst-external|rst-level-1|rst-level-2|rst-level-3|rst-level-4|rst-level-5|rst-level-6|rst-literal|rst-reference|rst-transition|ruler-mode-column-number|ruler-mode-comment-column|ruler-mode-current-column|ruler-mode-default|ruler-mode-fill-column|ruler-mode-fringes|ruler-mode-goal-column|ruler-mode-margins|ruler-mode-pad|ruler-mode-tab-stop|scroll-bar|secondary-selection|semantic-highlight-edits-face|semantic-highlight-func-current-tag-face|semantic-unmatched-syntax-face|senator-momentary-highlight-face|sgml-namespace|sh-escaped-newline|sh-heredoc-face|sh-heredoc|sh-quoted-exec|shadow|show-paren-match-face|show-paren-match|show-paren-mismatch-face|show-paren-mismatch|shr-link|shr-strike-through|smerge-base-face|smerge-base|smerge-markers-face|smerge-markers|smerge-mine-face|smerge-mine|smerge-other-face|smerge-other|smerge-refined-added|smerge-refined-change|smerge-refined-changed|smerge-refined-removed|speedbar-button-face|speedbar-directory-face|speedbar-file-face|speedbar-highlight-face|speedbar-selected-face|speedbar-separator-face|speedbar-tag-face|srecode-separator-face|strokes-char|subscript|success|superscript|table-cell|tcl-escaped-newline|term-bold|term-color-black|term-color-blue|term-color-cyan|term-color-green|term-color-magenta|term-color-red|term-color-white|term-color-yellow|term-underline|term|testcover-1value|testcover-nohits|tex-math-face|tex-math|tex-verbatim-face|tex-verbatim|texinfo-heading-face|texinfo-heading|tmm-inactive|todo-archived-only|todo-button|todo-category-string|todo-comment|todo-date|todo-diary-expired|todo-done-sep|todo-done|todo-key-prompt|todo-mark|todo-nondiary|todo-prefix-string|todo-search|todo-sorted-column|todo-time|todo-top-priority|tool-bar|tooltip|trailing-whitespace|tty-menu-disabled-face|tty-menu-enabled-face|tty-menu-selected-face|underline|variable-pitch|vc-conflict-state|vc-edited-state|vc-locally-added-state|vc-locked-state|vc-missing-state|vc-needs-update-state|vc-removed-state|vc-state-base-face|vc-up-to-date-state|vcursor|vera-font-lock-function|vera-font-lock-interface|vera-font-lock-number|verilog-font-lock-ams-face|verilog-font-lock-grouping-keywords-face|verilog-font-lock-p1800-face|verilog-font-lock-translate-off-face|vertical-border|vhdl-font-lock-attribute-face|vhdl-font-lock-directive-face|vhdl-font-lock-enumvalue-face|vhdl-font-lock-function-face|vhdl-font-lock-generic-\\\\/constant-face|vhdl-font-lock-prompt-face|vhdl-font-lock-reserved-words-face|vhdl-font-lock-translate-off-face|vhdl-font-lock-type-face|vhdl-font-lock-variable-face|vhdl-speedbar-architecture-face|vhdl-speedbar-architecture-selected-face|vhdl-speedbar-configuration-face|vhdl-speedbar-configuration-selected-face|vhdl-speedbar-entity-face|vhdl-speedbar-entity-selected-face|vhdl-speedbar-instantiation-face|vhdl-speedbar-instantiation-selected-face|vhdl-speedbar-library-face|vhdl-speedbar-package-face|vhdl-speedbar-package-selected-face|vhdl-speedbar-subprogram-face|viper-minibuffer-emacs|viper-minibuffer-insert|viper-minibuffer-vi|viper-replace-overlay|viper-search|warning|which-func|whitespace-big-indent|whitespace-empty|whitespace-hspace|whitespace-indentation|whitespace-line|whitespace-newline|whitespace-space-after-tab|whitespace-space-before-tab|whitespace-space|whitespace-tab|whitespace-trailing|widget-button-face|widget-button-pressed-face|widget-button-pressed|widget-button|widget-documentation-face|widget-documentation|widget-field-face|widget-field|widget-inactive-face|widget-inactive|widget-single-line-field-face|widget-single-line-field|window-divider-first-pixel|window-divider-last-pixel|window-divider|woman-addition-face|woman-addition|woman-bold-face|woman-bold|woman-italic-face|woman-italic|woman-unknown-face|woman-unknown)(?=[\\\\s()]|$)\\\\b","name":"support.constant.face.emacs.lisp"},"format":{"begin":"\\\\G","contentName":"string.quoted.double.emacs.lisp","end":"(?=\\")","patterns":[{"captures":{"1":{"name":"constant.other.placeholder.emacs.lisp"},"2":{"name":"invalid.illegal.placeholder.emacs.lisp"}},"match":"(%[%cdefgosSxX])|(%.)"},{"include":"#string-innards"}]},"formatting":{"begin":"(\\\\()(format|format-message|message|error)(?=\\\\s|$|\\")","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.emacs.lisp"},"2":{"name":"support.function.$2.emacs.lisp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.expression.end.emacs.lisp"}},"name":"meta.string-formatting.expression.emacs.lisp","patterns":[{"begin":"\\\\G\\\\s*(\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.emacs.lisp"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.emacs.lisp"}},"patterns":[{"include":"#format"}]},{"begin":"\\\\G\\\\s*$\\\\n?","end":"\\"|(?>)","name":"constant.command-name.key.emacs.lisp"},{"captures":{"1":{"name":"constant.numeric.integer.int.decimal.emacs.lisp"},"2":{"name":"keyword.operator.arithmetic.multiply.emacs.lisp"}},"match":"([0-9]+)(\\\\*)(?=[\\\\S])","name":"meta.key-repetition.emacs.lisp"},{"captures":{"1":{"patterns":[{"include":"#key-notation-prefix"}]},"2":{"name":"constant.character.key.emacs.lisp"}},"match":"\\\\b(M-)(-?[0-9]+)\\\\b","name":"meta.key-sequence.emacs.lisp"},{"captures":{"1":{"patterns":[{"include":"#key-notation-prefix"}]},"2":{"name":"punctuation.definition.angle.bracket.begin.emacs.lisp"},"3":{"name":"constant.control-character.key.emacs.lisp"},"4":{"name":"punctuation.definition.angle.bracket.end.emacs.lisp"},"5":{"name":"constant.control-character.key.emacs.lisp"},"6":{"name":"invalid.illegal.bad-prefix.emacs.lisp"},"7":{"name":"constant.character.key.emacs.lisp"}},"match":"\\\\b((?:[MCSAHs]-)+)(?:(<)(DEL|ESC|LFD|NUL|RET|SPC|TAB)(>)|(DEL|ESC|LFD|NUL|RET|SPC|TAB)\\\\b|([!-_a-z]{2,})|([!-_a-z]))?","name":"meta.key-sequence.emacs.lisp"},{"captures":{"1":{"patterns":[{"match":"<","name":"punctuation.definition.angle.bracket.begin.emacs.lisp"},{"include":"#key-notation-prefix"}]},"2":{"name":"constant.function-key.emacs.lisp"},"3":{"name":"punctuation.definition.angle.bracket.end.emacs.lisp"}},"match":"([MCSAHs]-<|<[MCSAHs]-|<)([-A-Za-z0-9]+)(>)","name":"meta.function-key.emacs.lisp"},{"match":"(?<=\\\\s)(?![MCSAHs<>])[!-_a-z](?=\\\\s)","name":"constant.character.key.emacs.lisp"}]},"key-notation-prefix":{"captures":{"1":{"name":"constant.character.key.modifier.emacs.lisp"},"2":{"name":"punctuation.separator.modifier.dash.emacs.lisp"}},"match":"([MCSAHs])(-)"},"keyword":{"captures":{"1":{"name":"punctuation.definition.keyword.emacs.lisp"}},"match":"(?<=[\\\\s()\\\\[]|^)(:)[-+=*/\\\\w~!@$%^&:<>{}?]+","name":"constant.keyword.emacs.lisp"},"lambda":{"begin":"(\\\\()(lambda|function)(?:\\\\s+|(?=[()]))","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.emacs.lisp"},"2":{"name":"storage.type.lambda.function.emacs.lisp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.expression.end.emacs.lisp"}},"name":"meta.lambda.expression.emacs.lisp","patterns":[{"include":"#defun-innards"}]},"loop":{"begin":"(\\\\()(cl-loop)(?=[\\\\s()]|$)","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.emacs.lisp"},"2":{"name":"support.function.cl-lib.emacs.lisp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.expression.end.emacs.lisp"}},"name":"meta.cl-lib.loop.emacs.lisp","patterns":[{"match":"(?<=[\\\\s()\\\\[]|^)(above|across|across-ref|always|and|append|as|below|by|collect|concat|count|do|each|finally|for|from|if|in|in-ref|initially|into|maximize|minimize|named|nconc|never|of|of-ref|on|repeat|return|sum|then|thereis|sum|to|unless|until|using|vconcat|when|while|with|(?:being\\\\s+(?:the)?\\\\s+(?:element|hash-key|hash-value|key-code|key-binding|key-seq|overlay|interval|symbols|frame|window|buffer)s?))(?=[\\\\s()]|$)","name":"keyword.control.emacs.lisp"},{"include":"$self"}]},"main":{"patterns":[{"include":"#autoload"},{"include":"#comment"},{"include":"#lambda"},{"include":"#loop"},{"include":"#escapes"},{"include":"#definition"},{"include":"#formatting"},{"include":"#face-innards"},{"include":"#expression"},{"include":"#operators"},{"include":"#functions"},{"include":"#binding"},{"include":"#keyword"},{"include":"#string"},{"include":"#number"},{"include":"#quote"},{"include":"#symbols"},{"include":"#vectors"},{"include":"#arg-values"},{"include":"#archive-sources"},{"include":"#boolean"},{"include":"#faces"},{"include":"#cask"},{"include":"#stdlib"}]},"modeline":{"captures":{"1":{"name":"punctuation.definition.modeline.begin.emacs.lisp"},"2":{"patterns":[{"include":"#modeline-innards"}]},"3":{"name":"punctuation.definition.modeline.end.emacs.lisp"}},"match":"(-\\\\*-)(.*)(-\\\\*-)","name":"meta.modeline.emacs.lisp"},"modeline-innards":{"patterns":[{"captures":{"1":{"name":"variable.assignment.modeline.emacs.lisp"},"2":{"name":"punctuation.separator.key-value.emacs.lisp"},"3":{"patterns":[{"include":"#modeline-innards"}]}},"match":"([^\\\\s:;]+)\\\\s*(:)\\\\s*([^;]*)","name":"meta.modeline.variable.emacs.lisp"},{"match":";","name":"punctuation.terminator.statement.emacs.lisp"},{"match":":","name":"punctuation.separator.key-value.emacs.lisp"},{"match":"\\\\S+","name":"string.other.modeline.emacs.lisp"}]},"number":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.binary.emacs.lisp"}},"match":"(?<=[\\\\s()\\\\[]|^)(#)[Bb][01]+","name":"constant.numeric.integer.binary.emacs.lisp"},{"captures":{"1":{"name":"punctuation.definition.hex.emacs.lisp"}},"match":"(?<=[\\\\s()\\\\[]|^)(#)[Xx][0-9A-Fa-f]+","name":"constant.numeric.integer.hex.viml"},{"match":"(?<=[\\\\s()\\\\[]|^)[-+]?\\\\d*\\\\.\\\\d+(?:[Ee][-+]?\\\\d+|[Ee]\\\\+(?:INF|NaN))?(?=[\\\\s()]|$)","name":"constant.numeric.float.emacs.lisp"},{"match":"(?<=[\\\\s()\\\\[]|^)[-+]?\\\\d+(?:[Ee][-+]?\\\\d+|[Ee]\\\\+(?:INF|NaN))?(?=[\\\\s()]|$)","name":"constant.numeric.integer.emacs.lisp"}]},"operators":{"patterns":[{"match":"(?<=[()]|^)(and|catch|cond|condition-case(?:-unless-debug)?|dotimes|eql?|equal|if|not|or|pcase|prog[12n]|throw|unless|unwind-protect|when|while)(?=[\\\\s()]|$)","name":"keyword.control.$1.emacs.lisp"},{"match":"(?<=\\\\(|\\\\s|^)(interactive)(?=\\\\s|\\\\(|\\\\))","name":"storage.modifier.interactive.function.emacs.lisp"},{"match":"(?<=\\\\(|\\\\s|^)[-*+/%](?=\\\\s|\\\\)|$)","name":"keyword.operator.numeric.emacs.lisp"},{"match":"(?<=\\\\(|\\\\s|^)[/<>]=|[=<>](?=\\\\s|\\\\)|$)","name":"keyword.operator.comparison.emacs.lisp"},{"match":"(?<=\\\\s)\\\\.(?=\\\\s|$)","name":"keyword.operator.pair-separator.emacs.lisp"}]},"quote":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.quote.emacs.lisp"},"2":{"patterns":[{"include":"$self"}]}},"match":"(')([-+=*/\\\\w~!@$%^&:<>{}?]+)","name":"constant.other.symbol.emacs.lisp"}]},"stdlib":{"patterns":[{"match":"(?<=[()]|^)(\`--pcase-macroexpander|Buffer-menu-unmark-all-buffers|Buffer-menu-unmark-all|Info-node-description|aa2u-mark-as-text|aa2u-mark-rectangle-as-text|aa2u-rectangle|aa2u|ada-find-file|ada-header|ada-mode|add-abbrev|add-change-log-entry-other-window|add-change-log-entry|add-dir-local-variable|add-file-local-variable-prop-line|add-file-local-variable|add-global-abbrev|add-log-current-defun|add-minor-mode|add-mode-abbrev|add-submenu|add-timeout|add-to-coding-system-list|add-to-list--anon-cmacro|add-variable-watcher|adoc-mode|advertised-undo|advice--add-function|advice--buffer-local|advice--called-interactively-skip|advice--car|advice--cd\\\\*r|advice--cdr|advice--defalias-fset|advice--interactive-form|advice--make-1|advice--make-docstring|advice--make-interactive-form|advice--make|advice--member-p|advice--normalize-place|advice--normalize|advice--props|advice--p|advice--remove-function|advice--set-buffer-local|advice--strip-macro|advice--subst-main|advice--symbol-function|advice--tweak|advice--where|after-insert-file-set-coding|aggressive-indent--extend-end-to-whole-sexps|aggressive-indent--indent-current-balanced-line|aggressive-indent--indent-if-changed|aggressive-indent--keep-track-of-changes|aggressive-indent--local-electric|aggressive-indent--proccess-changed-list-and-indent|aggressive-indent--run-user-hooks|aggressive-indent--softly-indent-defun|aggressive-indent--softly-indent-region-and-on|aggressive-indent-bug-report|aggressive-indent-global-mode|aggressive-indent-indent-defun|aggressive-indent-indent-region-and-on|aggressive-indent-mode-set-explicitly|aggressive-indent-mode|align-current|align-entire|align-highlight-rule|align-newline-and-indent|align-regexp|align-unhighlight-rule|align|alist-get|all-threads|allout-auto-activation-helper|allout-mode-p|allout-mode|allout-setup|allout-widgets-mode|allout-widgets-setup|alter-text-property|and-let\\\\*|ange-ftp-completion-hook-function|apache-mode|apropos-local-value|apropos-local-variable|arabic-shape-gstring|assoc-delete-all|auth-source--decode-octal-string|auth-source--symbol-keyword|auth-source-backend--anon-cmacro|auth-source-backend--eieio-childp|auth-source-backends-parser-file|auth-source-backends-parser-macos-keychain|auth-source-backends-parser-secrets|auth-source-json-check|auth-source-json-search|auth-source-pass-enable|auth-source-secrets-saver|auto-save-visited-mode|backtrace-frame--internal|backtrace-frames|backward-to-word|backward-word-strictly|battery-upower-prop|battery-upower|beginning-of-defun--in-emptyish-line-p|beginning-of-defun-comments|bf-help-describe-symbol|bf-help-mode|bf-help-setup|bignump|bison-mode|blink-cursor--rescan-frames|blink-cursor--should-blink|blink-cursor--start-idle-timer|blink-cursor--start-timer|bookmark-set-no-overwrite|brainfuck-mode|browse-url-conkeror|buffer-hash|bufferpos-to-filepos|byte-compile--function-signature|byte-compile--log-warning-for-byte-compile|byte-compile-cond-jump-table-info|byte-compile-cond-jump-table|byte-compile-cond-vars|byte-compile-define-symbol-prop|byte-compile-file-form-defvar-function|byte-compile-file-form-make-obsolete|byte-opt--arith-reduce|byte-opt--portable-numberp|byte-optimize-1-|byte-optimize-1\\\\+|byte-optimize-memq|c-or-c\\\\+\\\\+-mode|call-shell-region|cancel-debug-on-variable-change|cancel-debug-watch|capitalize-dwim|cconv--convert-funcbody|cconv--remap-llv|char-fold-to-regexp|char-from-name|checkdoc-file|checkdoc-package-keywords|cl--assertion-failed|cl--class-docstring--cmacro|cl--class-docstring|cl--class-index-table--cmacro|cl--class-index-table|cl--class-name--cmacro|cl--class-name|cl--class-p--cmacro|cl--class-parents--cmacro|cl--class-parents|cl--class-p|cl--class-slots--cmacro|cl--class-slots|cl--copy-slot-descriptor-1|cl--copy-slot-descriptor|cl--defstruct-predicate|cl--describe-class-slots|cl--describe-class-slot|cl--describe-class|cl--do-&aux|cl--find-class|cl--generic-arg-specializer|cl--generic-build-combined-method|cl--generic-cache-miss|cl--generic-class-parents|cl--generic-derived-specializers|cl--generic-describe|cl--generic-dispatches--cmacro|cl--generic-dispatches|cl--generic-fgrep|cl--generic-generalizer-name--cmacro|cl--generic-generalizer-name|cl--generic-generalizer-p--cmacro|cl--generic-generalizer-priority--cmacro|cl--generic-generalizer-priority|cl--generic-generalizer-p|cl--generic-generalizer-specializers-function--cmacro|cl--generic-generalizer-specializers-function|cl--generic-generalizer-tagcode-function--cmacro|cl--generic-generalizer-tagcode-function|cl--generic-get-dispatcher|cl--generic-isnot-nnm-p|cl--generic-lambda|cl--generic-load-hist-format|cl--generic-make--cmacro|cl--generic-make-defmethod-docstring|cl--generic-make-function|cl--generic-make-method--cmacro|cl--generic-make-method|cl--generic-make-next-function|cl--generic-make|cl--generic-member-method|cl--generic-method-documentation|cl--generic-method-files|cl--generic-method-function--cmacro|cl--generic-method-function|cl--generic-method-info|cl--generic-method-qualifiers--cmacro|cl--generic-method-qualifiers|cl--generic-method-specializers--cmacro|cl--generic-method-specializers|cl--generic-method-table--cmacro|cl--generic-method-table|cl--generic-method-uses-cnm--cmacro|cl--generic-method-uses-cnm|cl--generic-name--cmacro|cl--generic-name)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(cl--generic-no-next-method-function|cl--generic-options--cmacro|cl--generic-options|cl--generic-search-method|cl--generic-specializers-apply-to-type-p|cl--generic-split-args|cl--generic-standard-method-combination|cl--generic-struct-specializers|cl--generic-struct-tag|cl--generic-with-memoization|cl--generic|cl--make-random-state--cmacro|cl--make-random-state|cl--make-slot-descriptor--cmacro|cl--make-slot-descriptor|cl--make-slot-desc|cl--old-struct-type-of|cl--pcase-mutually-exclusive-p|cl--plist-remove|cl--print-table|cl--prog|cl--random-state-i--cmacro|cl--random-state-i|cl--random-state-j--cmacro|cl--random-state-j|cl--random-state-vec--cmacro|cl--random-state-vec|cl--slot-descriptor-initform--cmacro|cl--slot-descriptor-initform|cl--slot-descriptor-name--cmacro|cl--slot-descriptor-name|cl--slot-descriptor-props--cmacro|cl--slot-descriptor-props|cl--slot-descriptor-type--cmacro|cl--slot-descriptor-type|cl--struct-all-parents|cl--struct-cl--generic-method-p--cmacro|cl--struct-cl--generic-method-p|cl--struct-cl--generic-p--cmacro|cl--struct-cl--generic-p|cl--struct-class-children-sym--cmacro|cl--struct-class-children-sym|cl--struct-class-docstring--cmacro|cl--struct-class-docstring|cl--struct-class-index-table--cmacro|cl--struct-class-index-table|cl--struct-class-name--cmacro|cl--struct-class-named--cmacro|cl--struct-class-named|cl--struct-class-name|cl--struct-class-p--cmacro|cl--struct-class-parents--cmacro|cl--struct-class-parents|cl--struct-class-print--cmacro|cl--struct-class-print|cl--struct-class-p|cl--struct-class-slots--cmacro|cl--struct-class-slots|cl--struct-class-tag--cmacro|cl--struct-class-tag|cl--struct-class-type--cmacro|cl--struct-class-type|cl--struct-get-class|cl--struct-name-p|cl--struct-new-class--cmacro|cl--struct-new-class|cl--struct-register-child|cl-call-next-method|cl-defgeneric|cl-defmethod|cl-describe-type|cl-find-class|cl-find-method|cl-generic-all-functions|cl-generic-apply|cl-generic-call-method|cl-generic-combine-methods|cl-generic-current-method-specializers|cl-generic-define-context-rewriter|cl-generic-define-generalizer|cl-generic-define-method|cl-generic-define|cl-generic-ensure-function|cl-generic-function-options|cl-generic-generalizers|cl-generic-make-generalizer--cmacro|cl-generic-make-generalizer|cl-generic-p|cl-iter-defun|cl-method-qualifiers|cl-next-method-p|cl-no-applicable-method|cl-no-next-method|cl-no-primary-method|cl-old-struct-compat-mode|cl-prin1-to-string|cl-prin1|cl-print-expand-ellipsis|cl-print-object|cl-print-to-string-with-limit|cl-prog\\\\*|cl-prog|cl-random-state-p--cmacro|cl-slot-descriptor-p--cmacro|cl-slot-descriptor-p|cl-struct--pcase-macroexpander|cl-struct-define|cl-struct-p--cmacro|cl-struct-p|cl-struct-slot-value--inliner|cl-typep--inliner|clear-composition-cache|cmake-command-run|cmake-help-command|cmake-help-list-commands|cmake-help-module|cmake-help-property|cmake-help-variable|cmake-help|cmake-mode|coffee-mode|combine-change-calls-1|combine-change-calls|comment-line|comment-make-bol-ws|comment-quote-nested-default|comment-region-default-1|completion--category-override|completion-pcm--pattern-point-idx|condition-mutex|condition-name|condition-notify|condition-variable-p|condition-wait|conf-desktop-mode|conf-toml-mode|conf-toml-recognize-section|connection-local-set-profile-variables|connection-local-set-profiles|copy-cl--generic-generalizer|copy-cl--generic-method|copy-cl--generic|copy-from-above-command|copy-lisp-indent-state|copy-xref-elisp-location|copy-yas--exit|copy-yas--field|copy-yas--mirror|copy-yas--snippet|copy-yas--table|copy-yas--template|css-lookup-symbol|csv-mode|cuda-mode|current-thread|cursor-intangible-mode|cursor-sensor-mode|custom--should-apply-setting|debug-on-variable-change|debug-watch|default-font-width|define-symbol-prop|define-thing-chars|defined-colors-with-face-attributes|delete-selection-uses-region-p|describe-char-eldoc|describe-symbol|dir-locals--all-files|dir-locals-read-from-dir|dired--align-all-files|dired--need-align-p|dired-create-empty-file|dired-do-compress-to|dired-do-find-regexp-and-replace|dired-do-find-regexp|dired-mouse-find-file-other-frame|dired-mouse-find-file|dired-omit-mode|display-buffer--maybe-at-bottom|display-buffer--maybe-pop-up-frame|display-buffer--maybe-pop-up-window|display-buffer-in-child-frame|display-buffer-reuse-mode-window|display-buffer-use-some-frame|display-line-numbers-mode|dna-add-hooks|dna-isearch-forward|dna-mode|dna-reverse-complement-region|dockerfile-build-buffer|dockerfile-build-no-cache-buffer|dockerfile-mode|dolist-with-progress-reporter|dotenv-mode|downcase-dwim|dyalog-ediff-forward-word|dyalog-editor-connect|dyalog-fix-altgr-chars|dyalog-mode|dyalog-session-connect|easy-mmode--mode-docstring|eieio--add-new-slot|eieio--c3-candidate|eieio--c3-merge-lists|eieio--class-children--cmacro|eieio--class-class-allocation-values--cmacro|eieio--class-class-slots--cmacro|eieio--class-class-slots|eieio--class-constructor|eieio--class-default-object-cache--cmacro|eieio--class-docstring--cmacro|eieio--class-docstring|eieio--class-index-table--cmacro|eieio--class-index-table|eieio--class-initarg-tuples--cmacro|eieio--class-make--cmacro|eieio--class-make|eieio--class-method-invocation-order|eieio--class-name--cmacro|eieio--class-name|eieio--class-object|eieio--class-option-assoc|eieio--class-options--cmacro|eieio--class-option|eieio--class-p--cmacro)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(eieio--class-parents--cmacro|eieio--class-parents|eieio--class-precedence-bfs|eieio--class-precedence-c3|eieio--class-precedence-dfs|eieio--class-precedence-list|eieio--class-print-name|eieio--class-p|eieio--class-slot-initarg|eieio--class-slot-name-index|eieio--class-slots--cmacro|eieio--class-slots|eieio--class\\\\/struct-parents|eieio--generic-subclass-specializers|eieio--initarg-to-attribute|eieio--object-class-tag|eieio--pcase-macroexpander|eieio--perform-slot-validation-for-default|eieio--perform-slot-validation|eieio--slot-name-index|eieio--slot-override|eieio--validate-class-slot-value|eieio--validate-slot-value|eieio-change-class|eieio-class-slots|eieio-default-superclass--eieio-childp|eieio-defclass-internal|eieio-make-child-predicate|eieio-make-class-predicate|eieio-oref--anon-cmacro|eieio-pcase-slot-index-from-index-table|eieio-pcase-slot-index-table|eieio-slot-descriptor-name|eldoc--supported-p|eldoc-docstring-format-sym-doc|eldoc-mode-set-explicitly|electric-pair--balance-info|electric-pair--insert|electric-pair--inside-string-p|electric-pair--skip-whitespace|electric-pair--syntax-ppss|electric-pair--unbalanced-strings-p|electric-pair--with-uncached-syntax|electric-pair-conservative-inhibit|electric-pair-default-inhibit|electric-pair-default-skip-self|electric-pair-delete-pair|electric-pair-inhibit-if-helps-balance|electric-pair-local-mode|electric-pair-post-self-insert-function|electric-pair-skip-if-helps-balance|electric-pair-syntax-info|electric-pair-will-use-region|electric-quote-local-mode|electric-quote-mode|electric-quote-post-self-insert-function|elisp--font-lock-backslash|elisp--font-lock-flush-elisp-buffers|elisp--xref-backend|elisp--xref-make-xref|elisp-flymake--batch-compile-for-flymake|elisp-flymake--byte-compile-done|elisp-flymake-byte-compile|elisp-flymake-checkdoc|elisp-function-argstring|elisp-get-fnsym-args-string|elisp-get-var-docstring|elisp-load-path-roots|emacs-repository-version-git|enh-ruby-mode|epg-config--make-gpg-configuration|epg-config--make-gpgsm-configuration|epg-context-error-buffer--cmacro|epg-context-error-buffer|epg-find-configuration|erlang-compile|erlang-edoc-mode|erlang-find-tag-other-window|erlang-find-tag|erlang-mode|erlang-shell|erldoc-apropos|erldoc-browse-topic|erldoc-browse|erldoc-eldoc-function|etags--xref-backend|eval-expression-get-print-arguments|event-line-count|face-list-p|facemenu-set-charset|faces--attribute-at-point|faceup-clean-buffer|faceup-defexplainer|faceup-render-view-buffer|faceup-view-buffer|faceup-write-file|fic-mode|file-attribute-access-time|file-attribute-collect|file-attribute-device-number|file-attribute-group-id|file-attribute-inode-number|file-attribute-link-number|file-attribute-modes|file-attribute-modification-time|file-attribute-size|file-attribute-status-change-time|file-attribute-type|file-attribute-user-id|file-local-name|file-name-case-insensitive-p|file-name-quoted-p|file-name-quote|file-name-unquote|file-system-info|filepos-to-bufferpos--dos|filepos-to-bufferpos|files--ask-user-about-large-file|files--ensure-directory|files--force|files--make-magic-temp-file|files--message|files--name-absolute-system-p|files--splice-dirname-file|fill-polish-nobreak-p|find-function-on-key-other-frame|find-function-on-key-other-window|find-library-other-frame|find-library-other-window|fixnump|flymake-cc|flymake-diag-region|flymake-diagnostics|flymake-make-diagnostic|follow-scroll-down-window|follow-scroll-up-window|font-lock--remove-face-from-text-property|form-feed-mode|format-message|forth-block-mode|forth-eval-defun|forth-eval-last-expression-display-output|forth-eval-last-expression|forth-eval-region|forth-eval|forth-interaction-send|forth-kill|forth-load-file|forth-mode|forth-restart|forth-see|forth-switch-to-output-buffer|forth-switch-to-source-buffer|forth-words|fortune-message|forward-to-word|forward-word-strictly|frame--size-history|frame-after-make-frame|frame-ancestor-p|frame-creation-function|frame-edges|frame-focus-state|frame-geometry|frame-inner-height|frame-inner-width|frame-internal-border-width|frame-list-z-order|frame-monitor-attribute|frame-monitor-geometry|frame-monitor-workarea|frame-native-height|frame-native-width|frame-outer-height|frame-outer-width|frame-parent|frame-position|frame-restack|frame-size-changed-p|func-arity|generic--normalize-comments|generic-bracket-support|generic-mode-set-comments|generic-set-comment-syntax|generic-set-comment-vars|get-variable-watchers|gfm-mode|gfm-view-mode|ghc-core-create-core|ghc-core-mode|ghci-script-mode|git-commit--save-and-exit|git-commit-ack|git-commit-cc|git-commit-committer-email|git-commit-committer-name|git-commit-commit|git-commit-find-pseudo-header-position|git-commit-first-env-var|git-commit-font-lock-diff|git-commit-git-config-var|git-commit-insert-header-as-self|git-commit-insert-header|git-commit-mode|git-commit-reported|git-commit-review|git-commit-signoff|git-commit-test|git-define-git-commit-self|git-define-git-commit|gitattributes-mode--highlight-1st-field|gitattributes-mode-backward-field|gitattributes-mode-eldoc|gitattributes-mode-forward-field|gitattributes-mode-help|gitattributes-mode-menu|gitattributes-mode|gitconfig-indent-line|gitconfig-indentation-string|gitconfig-line-indented-p|gitconfig-mode|gitconfig-point-in-indentation-p|gitignore-mode|global-aggressive-indent-mode-check-buffers|global-aggressive-indent-mode-cmhh|global-aggressive-indent-mode-enable-in-buffers|global-aggressive-indent-mode|global-display-line-numbers-mode|global-eldoc-mode-check-buffers|global-eldoc-mode-cmhh|global-eldoc-mode-enable-in-buffers|glsl-mode|gnutls-asynchronous-parameters|gnutls-ciphers|gnutls-digests|gnutls-hash-digest|gnutls-hash-mac|gnutls-macs|gnutls-symmetric-decrypt|gnutls-symmetric-encrypt|go-download-play|go-mode|godoc|gofmt-before-save|gui-backend-get-selection|gui-backend-selection-exists-p|gui-backend-selection-owner-p|gui-backend-set-selection|gv-delay-error|gv-setter|gv-synthetic-place|hack-connection-local-variables-apply|handle-args-function|handle-move-frame|hash-table-empty-p|haskell-align-imports|haskell-c2hs-mode|haskell-cabal-get-dir|haskell-cabal-get-field|haskell-cabal-mode|haskell-cabal-visit-file|haskell-collapse-mode|haskell-compile|haskell-completions-completion-at-point|haskell-decl-scan-mode|haskell-describe|haskell-doc-current-info|haskell-doc-mode|haskell-doc-show-type|haskell-ds-create-imenu-index|haskell-forward-sexp|haskell-hayoo|haskell-hoogle-lookup-from-local|haskell-hoogle|haskell-indent-mode|haskell-indentation-mode|haskell-interactive-bring|haskell-interactive-kill|haskell-interactive-mode-echo|haskell-interactive-mode-reset-error|haskell-interactive-mode-return|haskell-interactive-mode-visit-error|haskell-interactive-switch|haskell-kill-session-process|haskell-menu|haskell-mode-after-save-handler|haskell-mode-find-uses|haskell-mode-generate-tags|haskell-mode-goto-loc|haskell-mode-jump-to-def-or-tag|haskell-mode-jump-to-def|haskell-mode-jump-to-tag|haskell-mode-show-type-at)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(haskell-mode-stylish-buffer|haskell-mode-tag-find|haskell-mode-view-news|haskell-mode|haskell-move-nested-left|haskell-move-nested-right|haskell-move-nested|haskell-navigate-imports-go|haskell-navigate-imports-return|haskell-navigate-imports|haskell-process-cabal-build|haskell-process-cabal-macros|haskell-process-cabal|haskell-process-cd|haskell-process-clear|haskell-process-do-info|haskell-process-do-type|haskell-process-interrupt|haskell-process-load-file|haskell-process-load-or-reload|haskell-process-minimal-imports|haskell-process-reload-devel-main|haskell-process-reload-file|haskell-process-reload|haskell-process-restart|haskell-process-show-repl-response|haskell-process-unignore|haskell-rgrep|haskell-session-all-modules|haskell-session-change-target|haskell-session-change|haskell-session-installed-modules|haskell-session-kill|haskell-session-maybe|haskell-session-process|haskell-session-project-modules|haskell-session|haskell-sort-imports|haskell-tab-indent-mode|haskell-version|hayoo|help--analyze-key|help--binding-undefined-p|help--docstring-quote|help--filter-info-list|help--load-prefixes|help--loaded-p|help--make-usage-docstring|help--make-usage|help--read-key-sequence|help--symbol-completion-table|help-definition-prefixes|help-fns--analyze-function|help-fns-function-description-header|help-fns-short-filename|highlight-uses-mode|hoogle|hyperspec-lookup|ibuffer-jump|ido-dired-other-frame|ido-dired-other-window|ido-display-buffer-other-frame|ido-find-alternate-file-other-window|if-let\\\\*|image-dired-minor-mode|image-mode-to-text|indent--default-inside-comment|indent--funcall-widened|indent-region-line-by-line|indent-relative-first-indent-point|inferior-erlang|inferior-lfe-mode|inferior-lfe|ini-mode|insert-directory-clean|insert-directory-wildcard-in-dir-p|interactive-haskell-mode|internal--compiler-macro-cXXr|internal--syntax-propertize|internal-auto-fill|internal-default-interrupt-process|internal-echo-keystrokes-prefix|internal-handle-focus-in|isearch--describe-regexp-mode|isearch--describe-word-mode|isearch--lax-regexp-function-p|isearch--momentary-message|isearch--yank-char-or-syntax|isearch-define-mode-toggle|isearch-lazy-highlight-start|isearch-string-propertize|isearch-toggle-char-fold|isearch-update-from-string-properties|isearch-xterm-paste|isearch-yank-symbol-or-char|jison-mode|jit-lock--run-functions|js-jsx-mode|js2-highlight-unused-variables-mode|js2-imenu-extras-mode|js2-imenu-extras-setup|js2-jsx-mode|js2-minor-mode|js2-mode|json--check-position|json--decode-utf-16-surrogates|json--plist-reverse|json--plist-to-alist|json--record-path|json-advance--inliner|json-path-to-position|json-peek--inliner|json-pop--inliner|json-pretty-print-buffer-ordered|json-pretty-print-ordered|json-readtable-dispatch|json-skip-whitespace--inliner|kill-current-buffer|kmacro-keyboard-macro-p|kmacro-p|kqueue-add-watch|kqueue-rm-watch|kqueue-valid-p|langdoc-call-fun|langdoc-define-help-mode|langdoc-if-let|langdoc-insert-link|langdoc-matched-strings|langdoc-while-let|lcms-cam02-ucs|lcms-cie-de2000|lcms-jab->jch|lcms-jch->jab|lcms-jch->xyz|lcms-temp->white-point|lcms-xyz->jch|lcms2-available-p|less-css-mode|let-when-compile|lfe-indent-function|lfe-mode|lgstring-remove-glyph|libxml-available-p|line-number-display-width|lisp--el-match-keyword|lisp--el-non-funcall-position-p|lisp-adaptive-fill|lisp-indent-calc-next|lisp-indent-initial-state|lisp-indent-region|lisp-indent-state-p--cmacro|lisp-indent-state-ppss--cmacro|lisp-indent-state-ppss-point--cmacro|lisp-indent-state-ppss-point|lisp-indent-state-ppss|lisp-indent-state-p|lisp-indent-state-stack--cmacro|lisp-indent-state-stack|lisp-ppss|list-timers|literate-haskell-mode|load-user-init-file|loadhist-unload-element|logcount|lread--substitute-object-in-subtree|macroexp-macroexpand|macroexp-parse-body|macrostep-c-mode-hook|macrostep-expand|macrostep-mode|major-mode-restore|major-mode-suspend|make-condition-variable|make-empty-file|make-finalizer|make-mutex|make-nearby-temp-file|make-pipe-process|make-process|make-record|make-temp-file-internal|make-thread|make-xref-elisp-location--cmacro|make-xref-elisp-location|make-yas--exit--cmacro|make-yas--exit|make-yas--field--cmacro|make-yas--field|make-yas--mirror--cmacro|make-yas--mirror|make-yas--snippet--cmacro|make-yas--snippet|make-yas--table--cmacro|make-yas--table|map--apply-alist|map--apply-array|map--apply-hash-table|map--do-alist|map--do-array|map--into-hash-table|map--make-pcase-bindings|map--make-pcase-patterns|map--pcase-macroexpander|map--put|map-apply|map-contains-key|map-copy|map-delete|map-do|map-elt|map-empty-p|map-every-p|map-filter|map-into|map-keys-apply|map-keys|map-length|map-let|map-merge-with|map-merge|map-nested-elt|map-pairs|map-put|map-remove|map-some|map-values-apply|map-values|mapbacktrace|mapp|mark-beginning-of-buffer|mark-end-of-buffer|markdown-live-preview-mode|markdown-mode|markdown-view-mode|mc-hide-unmatched-lines-mode|mc\\\\/add-cursor-on-click|mc\\\\/edit-beginnings-of-lines|mc\\\\/edit-ends-of-lines|mc\\\\/edit-lines|mc\\\\/insert-letters|mc\\\\/insert-numbers|mc\\\\/mark-all-dwim|mc\\\\/mark-all-in-region-regexp|mc\\\\/mark-all-in-region|mc\\\\/mark-all-like-this-dwim|mc\\\\/mark-all-like-this-in-defun|mc\\\\/mark-all-like-this|mc\\\\/mark-all-symbols-like-this-in-defun|mc\\\\/mark-all-symbols-like-this|mc\\\\/mark-all-words-like-this-in-defun|mc\\\\/mark-all-words-like-this|mc\\\\/mark-more-like-this-extended|mc\\\\/mark-next-like-this-word|mc\\\\/mark-next-like-this|mc\\\\/mark-next-lines|mc\\\\/mark-next-symbol-like-this|mc\\\\/mark-next-word-like-this|mc\\\\/mark-pop|mc\\\\/mark-previous-like-this-word|mc\\\\/mark-previous-like-this|mc\\\\/mark-previous-lines|mc\\\\/mark-previous-symbol-like-this|mc\\\\/mark-previous-word-like-this|mc\\\\/mark-sgml-tag-pair|mc\\\\/reverse-regions|mc\\\\/skip-to-next-like-this|mc\\\\/skip-to-previous-like-this|mc\\\\/sort-regions|mc\\\\/toggle-cursor-on-click|mc\\\\/unmark-next-like-this|mc\\\\/unmark-previous-like-this|mc\\\\/vertical-align-with-space|mc\\\\/vertical-align|menu-bar-bottom-and-right-window-divider|menu-bar-bottom-window-divider|menu-bar-display-line-numbers-mode|menu-bar-goto-uses-etags-p|menu-bar-no-window-divider|menu-bar-right-window-divider|menu-bar-window-divider-customize|mhtml-mode|midnight-mode|minibuffer-maybe-quote-filename|minibuffer-prompt-properties--setter|mm-images-in-region-p|mocha--get-callsite-name|mocha-attach-indium|mocha-check-debugger|mocha-compilation-filter|mocha-debug-at-point|mocha-debug-file|mocha-debug-project|mocha-debugger-get|mocha-debugger-name-p|mocha-debug|mocha-find-current-test|mocha-find-project-root|mocha-generate-command|mocha-list-of-strings-p|mocha-make-imenu-alist|mocha-opts-file|mocha-realgud:nodejs-attach|mocha-run|mocha-test-at-point|mocha-test-file|mocha-test-project|mocha-toggle-imenu-function|mocha-walk-up-to-it|mode-line-default-help-echo|module-function-p|module-load|mouse--click-1-maybe-follows-link|mouse-absolute-pixel-position|mouse-drag-and-drop-region|mouse-drag-bottom-edge|mouse-drag-bottom-left-corner|mouse-drag-bottom-right-corner|mouse-drag-frame|mouse-drag-left-edge|mouse-drag-right-edge|mouse-drag-top-edge|mouse-drag-top-left-corner|mouse-drag-top-right-corner|mouse-resize-frame|move-text--at-first-line-p)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(move-text--at-last-line-p|move-text--at-penultimate-line-p|move-text--last-line-is-just-newline|move-text--total-lines|move-text-default-bindings|move-text-down|move-text-line-down|move-text-line-up|move-text-region-down|move-text-region-up|move-text-region|move-text-up|move-to-window-group-line|mule--ucs-names-annotation|multiple-cursors-mode|mutex-lock|mutex-name|mutex-unlock|mutexp|nasm-mode|newlisp-mode|newlisp-show-repl|next-error-buffer-on-selected-frame|next-error-found|next-error-select-buffer|ninja-mode|obarray-get|obarray-make|obarray-map|obarray-put|obarray-remove|obarray-size|obarrayp|occur-regexp-descr|org-columns-insert-dblock|org-duration-from-minutes|org-duration-h:mm-only-p|org-duration-p|org-duration-set-regexps|org-duration-to-minutes|org-lint|package--activate-autoloads-and-load-path|package--add-to-compatibility-table|package--append-to-alist|package--autoloads-file-name|package--build-compatibility-table|package--check-signature-content|package--download-and-read-archives|package--find-non-dependencies|package--get-deps|package--incompatible-p|package--load-files-for-activation|package--newest-p|package--prettify-quick-help-key|package--print-help-section|package--quickstart-maybe-refresh|package--read-pkg-desc|package--removable-packages|package--remove-hidden|package--save-selected-packages|package--sort-by-dependence|package--sort-deps-in-alist|package--update-downloads-in-progress|package--update-selected-packages|package--used-elsewhere-p|package--user-installed-p|package--user-selected-p|package--with-response-buffer|package-activate-all|package-archive-priority|package-autoremove|package-delete-button-action|package-desc-priority-version|package-desc-priority|package-dir-info|package-install-selected-packages|package-menu--find-and-notify-upgrades|package-menu--list-to-prompt|package-menu--mark-or-notify-upgrades|package-menu--mark-upgrades-1|package-menu--partition-transaction|package-menu--perform-transaction|package-menu--populate-new-package-list|package-menu--post-refresh|package-menu--print-info-simple|package-menu--prompt-transaction-p|package-menu-hide-package|package-menu-mode-menu|package-menu-toggle-hiding|package-quickstart-refresh|package-reinstall|pcase--edebug-match-macro|pcase--make-docstring|pcase-lambda|pcomplete\\\\/find|perl-flymake|picolisp-mode|picolisp-repl-mode|picolisp-repl|pixel-scroll-mode|pos-visible-in-window-group-p|pov-mode|powershell-mode|powershell|prefix-command-preserve-state|prefix-command-update|prettify-symbols--post-command-hook|prettify-symbols-default-compose-p|print--preprocess|process-thread|prog-first-column|project-current|project-find-file|project-find-regexp|project-or-external-find-file|project-or-external-find-regexp|proper-list-p|provided-mode-derived-p|pulse-momentary-highlight-one-line|pulse-momentary-highlight-region|quelpa|query-replace--split-string|radix-tree--insert|radix-tree--lookup|radix-tree--prefixes|radix-tree--remove|radix-tree--subtree|radix-tree-count|radix-tree-from-map|radix-tree-insert|radix-tree-iter-mappings|radix-tree-iter-subtrees|radix-tree-leaf--pcase-macroexpander|radix-tree-lookup|radix-tree-prefixes|radix-tree-subtree|read-answer|read-multiple-choice|readable-foreground-color|recenter-window-group|recentf-mode|recode-file-name|recode-region|record-window-buffer|recordp|record|recover-file|recover-session-finish|recover-session|recover-this-file|rectangle-mark-mode|rectangle-number-lines|rectangular-region-mode|redirect-debugging-output|redisplay--pre-redisplay-functions|redisplay--update-region-highlight|redraw-modeline|refill-mode|reftex-all-document-files|reftex-citation|reftex-index-phrases-mode|reftex-isearch-minor-mode|reftex-mode|reftex-reset-scanning-information|regexp-builder|regexp-opt-group|region-active-p|region-bounds|region-modifiable-p|region-noncontiguous-p|register-ccl-program|register-code-conversion-map|register-definition-prefixes|register-describe-oneline|register-input-method|register-preview-default|register-preview|register-swap-out|register-to-point|register-val-describe|register-val-insert|register-val-jump-to|registerv--make--cmacro|registerv--make|registerv-data--cmacro|registerv-data|registerv-insert-func--cmacro|registerv-insert-func|registerv-jump-func--cmacro|registerv-jump-func|registerv-make|registerv-p--cmacro|registerv-print-func--cmacro|registerv-print-func|registerv-p|remember-clipboard|remember-diary-extract-entries|remember-notes|remember-other-frame|remember|remove-variable-watcher|remove-yank-excluded-properties|rename-uniquely|repeat-complex-command|repeat-matching-complex-command|repeat|replace--push-stack|replace-buffer-contents|replace-dehighlight|replace-eval-replacement|replace-highlight|replace-loop-through-replacements|replace-match-data|replace-match-maybe-edit|replace-match-string-symbols|replace-quote|replace-rectangle|replace-regexp|replace-search|replace-string|report-emacs-bug|report-errors|reporter-submit-bug-report|reposition-window|repunctuate-sentences|reset-language-environment|reset-this-command-lengths|resize-mini-window-internal|resize-temp-buffer-window|reveal-mode|reverse-region|revert-buffer--default|revert-buffer-insert-file-contents--default-function|revert-buffer-with-coding-system|rfc2104-hash|rfc822-goto-eoh|rfn-eshadow-setup-minibuffer|rfn-eshadow-sifn-equal|rfn-eshadow-update-overlay|rgrep|right-char|right-word|rlogin|rmail-input|rmail-mode|rmail-movemail-variant-p|rmail-output-as-seen|run-erlang|run-forth|run-haskell|run-lfe|run-newlisp|run-sml|rust-mode|rx--pcase-macroexpander|save-mark-and-excursion--restore|save-mark-and-excursion--save|save-mark-and-excursion|save-place-local-mode|save-place-mode|scad-mode|search-forward-help-for-help|secondary-selection-exist-p|secondary-selection-from-region|secondary-selection-to-region|secure-hash-algorithms|sed-mode|selected-window-group|seq--activate-font-lock-keywords|seq--elt-safe|seq--into-list|seq--into-string|seq--into-vector|seq--make-pcase-bindings|seq--make-pcase-patterns|seq--pcase-macroexpander|seq-contains|seq-difference|seq-do-indexed|seq-find|seq-group-by|seq-intersection|seq-into-sequence|seq-into|seq-let|seq-map-indexed|seq-mapcat|seq-mapn|seq-max|seq-min|seq-partition|seq-position|seq-random-elt|seq-set-equal-p|seq-some|seq-sort-by|seqp|set--this-command-keys|set-binary-mode|set-buffer-redisplay|set-mouse-absolute-pixel-position|set-process-thread|set-rectangular-region-anchor|set-window-group-start|shell-command--save-pos-or-erase|shell-command--set-point-after-cmd|shift-number-down|shift-number-up|slime-connect|slime-lisp-mode-hook|slime-mode|slime-scheme-mode-hook|slime-selector|slime-setup|slime|smerge-refine-regions|sml-cm-mode|sml-lex-mode|sml-mode|sml-run|sml-yacc-mode|snippet-mode|spice-mode|split-window-no-error|sql-mariadb|ssh-authorized-keys-mode|ssh-config-mode|ssh-known-hosts-mode|startup--setup-quote-display|string-distance|string-greaterp|string-version-lessp|string>|subr--with-wrapper-hook-no-warnings|switch-to-haskell|sxhash-eql|sxhash-equal|sxhash-eq|syntax-ppss--data)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(tabulated-list--col-local-max-widths|tabulated-list--get-sorter|tabulated-list-header-overlay-p|tabulated-list-line-number-width|tabulated-list-watch-line-number-width|tabulated-list-window-scroll-function|terminal-init-xterm|thing-at-point--beginning-of-sexp|thing-at-point--end-of-sexp|thing-at-point--read-from-whole-string|thread--blocker|thread-alive-p|thread-handle-event|thread-join|thread-last-error|thread-live-p|thread-name|thread-signal|thread-yield|threadp|tildify-mode|tildify-space|toml-mode|tramp-archive-autoload-file-name-regexp|tramp-register-archive-file-name-handler|tty-color-24bit|turn-on-haskell-decl-scan|turn-on-haskell-doc-mode|turn-on-haskell-doc|turn-on-haskell-indentation|turn-on-haskell-indent|turn-on-haskell-unicode-input-method|typescript-mode|uncomment-region-default-1|undo--wrap-and-run-primitive-undo|undo-amalgamate-change-group|undo-auto--add-boundary|undo-auto--boundaries|undo-auto--boundary-ensure-timer|undo-auto--boundary-timer|undo-auto--ensure-boundary|undo-auto--last-boundary-amalgamating-number|undo-auto--needs-boundary-p|undo-auto--undoable-change|undo-auto-amalgamate|universal-argument--description|universal-argument--preserve|upcase-char|upcase-dwim|url-asynchronous--cmacro|url-asynchronous|url-directory-files|url-domain|url-file-attributes|url-file-directory-p|url-file-executable-p|url-file-exists-p|url-file-handler-identity|url-file-name-all-completions|url-file-name-completion|url-file-symlink-p|url-file-truename|url-file-writable-p|url-handler-directory-file-name|url-handler-expand-file-name|url-handler-file-name-directory|url-handler-file-remote-p|url-handler-unhandled-file-name-directory|url-handlers-create-wrapper|url-handlers-set-buffer-mode|url-insert-buffer-contents|url-insert|url-run-real-handler|user-ptrp|userlock--ask-user-about-supersession-threat|vc-message-unresolved-conflicts|vc-print-branch-log|vc-push|vc-refresh-state|version-control-safe-local-p|vimrc-mode|wavefront-obj-mode|when-let\\\\*|window--adjust-process-windows|window--even-window-sizes|window--make-major-side-window-next-to|window--make-major-side-window|window--process-window-list|window--sides-check-failed|window--sides-check|window--sides-reverse-all|window--sides-reverse-frame|window--sides-reverse-on-frame-p|window--sides-reverse-side|window--sides-reverse|window--sides-verticalize-frame|window--sides-verticalize|window-absolute-body-pixel-edges|window-absolute-pixel-position|window-adjust-process-window-size-largest|window-adjust-process-window-size-smallest|window-adjust-process-window-size|window-body-edges|window-body-pixel-edges|window-divider-mode-apply|window-divider-mode|window-divider-width-valid-p|window-font-height|window-font-width|window-group-end|window-group-start|window-largest-empty-rectangle--disjoint-maximums|window-largest-empty-rectangle--maximums-1|window-largest-empty-rectangle--maximums|window-largest-empty-rectangle|window-lines-pixel-dimensions|window-main-window|window-max-chars-per-line|window-pixel-height-before-size-change|window-pixel-width-before-size-change|window-swap-states|window-system-initialization|window-toggle-side-windows|with-connection-local-profiles|with-mutex|x-load-color-file|xml-remove-comments|xref-backend-apropos|xref-backend-definitions|xref-backend-identifier-completion-table|xref-collect-matches|xref-elisp-location-file--cmacro|xref-elisp-location-file|xref-elisp-location-p--cmacro|xref-elisp-location-symbol--cmacro|xref-elisp-location-symbol|xref-elisp-location-type--cmacro|xref-elisp-location-type|xref-find-backend|xref-find-definitions-at-mouse|xref-make-elisp-location--cmacro|xref-marker-stack-empty-p|xterm--init-activate-get-selection|xterm--init-activate-set-selection|xterm--init-bracketed-paste-mode|xterm--init-focus-tracking|xterm--init-frame-title|xterm--init-modify-other-keys|xterm--pasted-text|xterm--push-map|xterm--query|xterm--read-event-for-query|xterm--report-background-handler|xterm--selection-char|xterm--suspend-tty-function|xterm--version-handler|xterm-maybe-set-dark-background-mode|xterm-paste|xterm-register-default-colors|xterm-rgb-convert-to-16bit|xterm-set-window-title-flag|xterm-set-window-title|xterm-translate-bracketed-paste|xterm-translate-focus-in|xterm-translate-focus-out|xterm-unset-window-title-flag|xwidget-webkit-browse-url|yaml-mode|yas--add-template|yas--advance-end-maybe|yas--advance-end-of-parents-maybe|yas--advance-start-maybe|yas--all-templates|yas--apply-transform|yas--auto-fill-wrapper|yas--auto-fill|yas--auto-next|yas--calculate-adjacencies|yas--calculate-group|yas--calculate-mirror-depth|yas--calculate-simple-fom-parentage|yas--check-commit-snippet|yas--collect-snippet-markers|yas--commit-snippet|yas--compute-major-mode-and-parents|yas--create-snippet-xrefs|yas--define-menu-1|yas--define-parents|yas--define-snippets-1|yas--define-snippets-2|yas--define|yas--delete-from-keymap|yas--delete-regions|yas--describe-pretty-table|yas--escape-string|yas--eval-condition|yas--eval-for-effect|yas--eval-for-string|yas--exit-marker--cmacro|yas--exit-marker|yas--exit-next--cmacro|yas--exit-next|yas--exit-p--cmacro|yas--exit-p|yas--expand-from-keymap-doc|yas--expand-from-trigger-key-doc|yas--expand-or-prompt-for-template|yas--expand-or-visit-from-menu|yas--fallback-translate-input|yas--fallback|yas--fetch|yas--field-contains-point-p|yas--field-end--cmacro|yas--field-end|yas--field-mirrors--cmacro|yas--field-mirrors|yas--field-modified-p--cmacro|yas--field-modified-p|yas--field-next--cmacro|yas--field-next|yas--field-number--cmacro|yas--field-number|yas--field-p--cmacro|yas--field-parent-field--cmacro|yas--field-parent-field|yas--field-parse-create|yas--field-probably-deleted-p|yas--field-p|yas--field-start--cmacro|yas--field-start|yas--field-text-for-display|yas--field-transform--cmacro|yas--field-transform|yas--field-update-display|yas--filter-templates-by-condition|yas--find-next-field|yas--finish-moving-snippets|yas--fom-end|yas--fom-next|yas--fom-parent-field|yas--fom-start|yas--format|yas--get-field-once|yas--get-snippet-tables|yas--get-template-by-uuid|yas--global-mode-reload-with-jit-maybe|yas--goto-saved-location|yas--guess-snippet-directories-1|yas--guess-snippet-directories|yas--indent-parse-create|yas--indent-region|yas--indent|yas--key-from-desc|yas--keybinding-beyond-yasnippet|yas--letenv|yas--load-directory-1|yas--load-directory-2|yas--load-pending-jits|yas--load-snippet-dirs|yas--load-yas-setup-file|yas--lookup-snippet-1|yas--make-control-overlay|yas--make-directory-maybe|yas--make-exit--cmacro|yas--make-exit|yas--make-field--cmacro|yas--make-field|yas--make-marker|yas--make-menu-binding|yas--make-mirror--cmacro|yas--make-mirror|yas--make-move-active-field-overlay|yas--make-move-field-protection-overlays|yas--make-snippet--cmacro|yas--make-snippet-table--cmacro|yas--make-snippet-table|yas--make-snippet|yas--make-template--cmacro|yas--make-template)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(yas--mark-this-and-children-modified|yas--markers-to-points|yas--maybe-clear-field-filter|yas--maybe-expand-from-keymap-filter|yas--maybe-expand-key-filter|yas--maybe-move-to-active-field|yas--menu-keymap-get-create|yas--message|yas--minor-mode-menu|yas--mirror-depth--cmacro|yas--mirror-depth|yas--mirror-end--cmacro|yas--mirror-end|yas--mirror-next--cmacro|yas--mirror-next|yas--mirror-p--cmacro|yas--mirror-parent-field--cmacro|yas--mirror-parent-field|yas--mirror-p|yas--mirror-start--cmacro|yas--mirror-start|yas--mirror-transform--cmacro|yas--mirror-transform|yas--mirror-update-display|yas--modes-to-activate|yas--move-to-field|yas--namehash-templates-alist|yas--on-buffer-kill|yas--on-field-overlay-modification|yas--on-protection-overlay-modification|yas--parse-template|yas--place-overlays|yas--points-to-markers|yas--post-command-handler|yas--prepare-snippets-for-move|yas--prompt-for-keys|yas--prompt-for-table|yas--prompt-for-template|yas--protect-escapes|yas--read-keybinding|yas--read-lisp|yas--read-table|yas--remove-misc-free-from-undo|yas--remove-template-by-uuid|yas--replace-all|yas--require-template-specific-condition-p|yas--restore-backquotes|yas--restore-escapes|yas--restore-marker-location|yas--restore-overlay-line-location|yas--restore-overlay-location|yas--safely-call-fun|yas--safely-run-hook|yas--save-backquotes|yas--save-restriction-and-widen|yas--scan-sexps|yas--schedule-jit|yas--show-menu-p|yas--simple-fom-create|yas--skip-and-clear-field-p|yas--skip-and-clear|yas--snapshot-marker-location|yas--snapshot-overlay-line-location|yas--snapshot-overlay-location|yas--snippet-active-field--cmacro|yas--snippet-active-field|yas--snippet-control-overlay--cmacro|yas--snippet-control-overlay|yas--snippet-create|yas--snippet-description-finish-runonce|yas--snippet-exit--cmacro|yas--snippet-exit|yas--snippet-expand-env--cmacro|yas--snippet-expand-env|yas--snippet-field-compare|yas--snippet-fields--cmacro|yas--snippet-fields|yas--snippet-find-field|yas--snippet-force-exit--cmacro|yas--snippet-force-exit|yas--snippet-id--cmacro|yas--snippet-id|yas--snippet-live-p|yas--snippet-map-markers|yas--snippet-next-id|yas--snippet-p--cmacro|yas--snippet-parse-create|yas--snippet-previous-active-field--cmacro|yas--snippet-previous-active-field|yas--snippet-p|yas--snippet-revive|yas--snippet-sort-fields|yas--snippets-at-point|yas--subdirs|yas--table-all-keys|yas--table-direct-keymap--cmacro|yas--table-direct-keymap|yas--table-get-create|yas--table-hash--cmacro|yas--table-hash|yas--table-mode|yas--table-name--cmacro|yas--table-name|yas--table-p--cmacro|yas--table-parents--cmacro|yas--table-parents|yas--table-p|yas--table-templates|yas--table-uuidhash--cmacro|yas--table-uuidhash|yas--take-care-of-redo|yas--template-can-expand-p|yas--template-condition--cmacro|yas--template-condition|yas--template-content--cmacro|yas--template-content|yas--template-expand-env--cmacro|yas--template-expand-env|yas--template-fine-group|yas--template-get-file|yas--template-group--cmacro|yas--template-group|yas--template-key--cmacro|yas--template-keybinding--cmacro|yas--template-keybinding|yas--template-key|yas--template-load-file--cmacro|yas--template-load-file|yas--template-menu-binding-pair--cmacro|yas--template-menu-binding-pair-get-create|yas--template-menu-binding-pair|yas--template-menu-managed-by-yas-define-menu|yas--template-name--cmacro|yas--template-name|yas--template-p--cmacro|yas--template-perm-group--cmacro|yas--template-perm-group|yas--template-pretty-list|yas--template-p|yas--template-save-file--cmacro|yas--template-save-file|yas--template-table--cmacro|yas--template-table|yas--template-uuid--cmacro|yas--template-uuid|yas--templates-for-key-at-point|yas--transform-mirror-parse-create|yas--undo-in-progress|yas--update-mirrors|yas--update-template-menu|yas--update-template|yas--visit-snippet-file-1|yas--warning|yas--watch-auto-fill|yas-abort-snippet|yas-about|yas-activate-extra-mode|yas-active-keys|yas-active-snippets|yas-auto-next|yas-choose-value|yas-compile-directory|yas-completing-prompt|yas-current-field|yas-deactivate-extra-mode|yas-default-from-field|yas-define-condition-cache|yas-define-menu|yas-define-snippets|yas-describe-table-by-namehash|yas-describe-tables|yas-direct-keymaps-reload|yas-dropdown-prompt|yas-escape-text|yas-exit-all-snippets|yas-exit-snippet|yas-expand-from-keymap|yas-expand-from-trigger-key|yas-expand-snippet|yas-expand|yas-field-value|yas-global-mode-check-buffers|yas-global-mode-cmhh|yas-global-mode-enable-in-buffers|yas-global-mode|yas-hippie-try-expand|yas-ido-prompt|yas-initialize|yas-insert-snippet|yas-inside-string|yas-key-to-value|yas-load-directory|yas-load-snippet-buffer-and-close|yas-load-snippet-buffer|yas-longest-key-from-whitespace|yas-lookup-snippet|yas-maybe-ido-prompt|yas-maybe-load-snippet-buffer|yas-minor-mode-on|yas-minor-mode-set-explicitly|yas-minor-mode|yas-new-snippet|yas-next-field-or-maybe-expand|yas-next-field-will-exit-p|yas-next-field|yas-no-prompt|yas-prev-field|yas-recompile-all|yas-reload-all|yas-selected-text|yas-shortest-key-until-whitespace|yas-skip-and-clear-field|yas-skip-and-clear-or-delete-char|yas-snippet-dirs|yas-snippet-mode-buffer-p|yas-substr|yas-text|yas-throw|yas-try-key-from-whitespace|yas-tryout-snippet|yas-unimplemented|yas-verify-value|yas-visit-snippet-file|yas-x-prompt|yas\\\\/abort-snippet|yas\\\\/about|yas\\\\/choose-value|yas\\\\/compile-directory|yas\\\\/completing-prompt|yas\\\\/default-from-field|yas\\\\/define-condition-cache|yas\\\\/define-menu|yas\\\\/define-snippets|yas\\\\/describe-tables|yas\\\\/direct-keymaps-reload|yas\\\\/dropdown-prompt|yas\\\\/exit-all-snippets|yas\\\\/exit-snippet|yas\\\\/expand-from-keymap|yas\\\\/expand-from-trigger-key|yas\\\\/expand-snippet|yas\\\\/expand|yas\\\\/field-value|yas\\\\/global-mode|yas\\\\/hippie-try-expand|yas\\\\/ido-prompt|yas\\\\/initialize|yas\\\\/insert-snippet|yas\\\\/inside-string|yas\\\\/key-to-value|yas\\\\/load-directory|yas\\\\/load-snippet-buffer|yas\\\\/minor-mode-on|yas\\\\/minor-mode|yas\\\\/new-snippet|yas\\\\/next-field-or-maybe-expand|yas\\\\/next-field|yas\\\\/no-prompt|yas\\\\/prev-field|yas\\\\/recompile-all|yas\\\\/reload-all|yas\\\\/selected-text|yas\\\\/skip-and-clear-or-delete-char|yas\\\\/snippet-dirs|yas\\\\/substr|yas\\\\/text|yas\\\\/throw|yas\\\\/tryout-snippet|yas\\\\/unimplemented|yas\\\\/verify-value|yas\\\\/visit-snippet-file|yas\\\\/x-prompt|yasnippet-unload-function|zap-up-to-char)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(abbrev-all-caps|abbrev-expand-function|abbrev-expansion|abbrev-file-name|abbrev-get|abbrev-insert|abbrev-map|abbrev-minor-mode-table-alist|abbrev-prefix-mark|abbrev-put|abbrev-start-location|abbrev-start-location-buffer|abbrev-symbol|abbrev-table-get|abbrev-table-name-list|abbrev-table-p|abbrev-table-put|abbreviate-file-name|abbrevs-changed|abort-recursive-edit|accept-change-group|accept-process-output|access-file|accessible-keymaps|acos|activate-change-group|activate-mark-hook|active-minibuffer-window|adaptive-fill-first-line-regexp|adaptive-fill-function|adaptive-fill-mode|adaptive-fill-regexp|add-face-text-property|add-function|add-hook|add-name-to-file|add-text-properties|add-to-history|add-to-invisibility-spec|add-to-list|add-to-ordered-list|adjust-window-trailing-edge|advice-add|advice-eval-interactive-spec|advice-function-mapc|advice-function-member-p|advice-mapc|advice-member-p|advice-remove|after-change-functions|after-change-major-mode-hook|after-find-file|after-init-hook|after-init-time|after-insert-file-functions|after-load-functions|after-make-frame-functions|after-revert-hook|after-save-hook|after-setting-font-hook|all-completions|append-to-file|apply-partially|apropos|aref|argv|arrayp|ascii-case-table|aset|ash|asin|ask-user-about-lock|ask-user-about-supersession-threat|assoc-default|assoc-string|assq|assq-delete-all|atan|atom|auto-coding-alist|auto-coding-functions|auto-coding-regexp-alist|auto-fill-chars|auto-fill-function|auto-hscroll-mode|auto-mode-alist|auto-raise-tool-bar-buttons|auto-resize-tool-bars|auto-save-default|auto-save-file-name-p|auto-save-hook|auto-save-interval|auto-save-list-file-name|auto-save-list-file-prefix|auto-save-mode|auto-save-timeout|auto-save-visited-file-name|auto-window-vscroll|autoload|autoload-do-load|autoloadp|back-to-indentation|backtrace|backtrace-debug|backtrace-frame|backup-buffer|backup-by-copying|backup-by-copying-when-linked|backup-by-copying-when-mismatch|backup-by-copying-when-privileged-mismatch|backup-directory-alist|backup-enable-predicate|backup-file-name-p|backup-inhibited|backward-button|backward-char|backward-delete-char-untabify|backward-delete-char-untabify-method|backward-list|backward-prefix-chars|backward-sexp|backward-to-indentation|backward-word|balance-windows|balance-windows-area|barf-if-buffer-read-only|base64-decode-region|base64-decode-string|base64-encode-region|base64-encode-string|batch-byte-compile|baud-rate|beep|before-change-functions|before-hack-local-variables-hook|before-init-hook|before-init-time|before-make-frame-hook|before-revert-hook|before-save-hook|beginning-of-buffer|beginning-of-defun|beginning-of-defun-function|beginning-of-line|bidi-display-reordering|bidi-paragraph-direction|bidi-string-mark-left-to-right|bindat-get-field|bindat-ip-to-string|bindat-length|bindat-pack|bindat-unpack|bitmap-spec-p|blink-cursor-alist|blink-matching-delay|blink-matching-open|blink-matching-paren|blink-matching-paren-distance|blink-paren-function|bobp|bolp|bool-vector-count-consecutive|bool-vector-count-population|bool-vector-exclusive-or|bool-vector-intersection|bool-vector-not|bool-vector-p|bool-vector-set-difference|bool-vector-subsetp|bool-vector-union|booleanp|boundp|buffer-access-fontified-property|buffer-access-fontify-functions|buffer-auto-save-file-format|buffer-auto-save-file-name|buffer-backed-up|buffer-base-buffer|buffer-chars-modified-tick|buffer-disable-undo|buffer-display-count|buffer-display-table|buffer-display-time|buffer-enable-undo|buffer-end|buffer-file-coding-system|buffer-file-format|buffer-file-name|buffer-file-number|buffer-file-truename|buffer-invisibility-spec|buffer-list|buffer-list-update-hook|buffer-live-p|buffer-local-value|buffer-local-variables|buffer-modified-p|buffer-modified-tick|buffer-name|buffer-name-history|buffer-narrowed-p|buffer-offer-save|buffer-quit-function|buffer-read-only|buffer-save-without-query|buffer-saved-size|buffer-size|buffer-stale-function|buffer-string|buffer-substring|buffer-substring-filters|buffer-substring-no-properties|buffer-swap-text|buffer-undo-list|bufferp|bury-buffer|button-activate|button-at|button-end|button-get|button-has-type-p|button-label|button-put|button-start|button-type|button-type-get|button-type-put|button-type-subtype-p|byte-boolean-vars|byte-code-function-p|byte-compile|byte-compile-dynamic|byte-compile-dynamic-docstrings|byte-compile-file|byte-recompile-directory|byte-to-position|byte-to-string|call-interactively|call-process|call-process-region|call-process-shell-command|called-interactively-p|cancel-change-group|cancel-debug-on-entry|cancel-timer|capitalize|capitalize-region|capitalize-word|case-fold-search|case-replace|case-table-p|category-docstring|category-set-mnemonics|category-table|category-table-p|ceiling|change-major-mode-after-body-hook|change-major-mode-hook|char-after|char-before|char-category-set|char-charset|char-code-property-description|char-displayable-p|char-equal|char-or-string-p|char-property-alias-alist|char-script-table|char-syntax|char-table-extra-slot|char-table-p|char-table-parent|char-table-range|char-table-subtype|char-to-string|char-width|char-width-table|characterp|charset-after|charset-list|charset-plist|charset-priority-list|charsetp|check-coding-system|check-coding-systems-region|checkdoc-minor-mode|cl|clear-abbrev-table|clear-image-cache|clear-string|clear-this-command-keys|clear-visited-file-modtime|clone-indirect-buffer|clrhash|coding-system-aliases|coding-system-change-eol-conversion|coding-system-change-text-conversion|coding-system-charset-list|coding-system-eol-type|coding-system-for-read|coding-system-for-write|coding-system-get|coding-system-list|coding-system-p|coding-system-priority-list|collapse-delayed-warnings|color-defined-p|color-gray-p|color-supported-p|color-values|combine-after-change-calls|combine-and-quote-strings|command-debug-status|command-error-function|command-execute|command-history|command-line|command-line-args|command-line-args-left|command-line-functions|command-line-processed|command-remapping|command-switch-alist|commandp|compare-buffer-substrings|compare-strings|compare-window-configurations|compile-defun|completing-read|completing-read-function|completion-at-point|completion-at-point-functions|completion-auto-help|completion-boundaries|completion-category-overrides|completion-extra-properties|completion-ignore-case|completion-ignored-extensions|completion-in-region|completion-regexp-list|completion-styles|completion-styles-alist|completion-table-case-fold|completion-table-dynamic|completion-table-in-turn|completion-table-merge|completion-table-subvert|completion-table-with-cache|completion-table-with-predicate|completion-table-with-quoting|completion-table-with-terminator|compute-motion|concat|cons-cells-consed|constrain-to-field|continue-process|controlling-tty-p|convert-standard-filename|coordinates-in-window-p|copy-abbrev-table|copy-category-table|copy-directory|copy-file|copy-hash-table|copy-keymap|copy-marker|copy-overlay|copy-region-as-kill|copy-sequence|copy-syntax-table|copysign|cos|count-lines|count-loop|count-screen-lines|count-words|create-file-buffer|create-fontset-from-fontset-spec|create-image|create-lockfiles|current-active-maps|current-bidi-paragraph-direction|current-buffer|current-case-table|current-column|current-fill-column|current-frame-configuration|current-global-map|current-idle-time|current-indentation|current-input-method|current-input-mode|current-justification|current-kill|current-left-margin|current-local-map|current-message|current-minor-mode-maps|current-prefix-arg|current-time|current-time-string|current-time-zone|current-window-configuration|current-word|cursor-in-echo-area|cursor-in-non-selected-windows|cursor-type|cust-print|custom-add-frequent-value|custom-initialize-delay|custom-known-themes|custom-reevaluate-setting|custom-set-faces|custom-set-variables|custom-theme-p|custom-theme-set-faces|custom-theme-set-variables|custom-unlispify-remove-prefixes|custom-variable-p|customize-package-emacs-version-alist|cygwin-convert-file-name-from-windows|cygwin-convert-file-name-to-windows|data-directory|date-leap-year-p|date-to-time|deactivate-mark|deactivate-mark-hook|debug|debug-ignored-errors|debug-on-entry|debug-on-error|debug-on-event|debug-on-message|debug-on-next-call|debug-on-quit|debug-on-signal|debugger|debugger-bury-or-kill|declare|declare-function|decode-char|decode-coding-inserted-region|decode-coding-region|decode-coding-string|decode-time|def-edebug-spec|defalias|default-boundp|default-directory|default-file-modes|default-frame-alist|default-input-method|default-justification|default-minibuffer-frame|default-process-coding-system|default-text-properties|default-value|define-abbrev|define-abbrev-table|define-alternatives|define-button-type|define-category|define-derived-mode|define-error|define-fringe-bitmap|define-generic-mode|define-globalized-minor-mode|define-hash-table-test|define-key|define-key-after|define-minor-mode|define-obsolete-face-alias|define-obsolete-function-alias|define-obsolete-variable-alias|define-package|define-prefix-command|defined-colors|defining-kbd-macro|defun-prompt-regexp|defvar-local|defvaralias|delay-mode-hooks|delayed-warnings-hook|delayed-warnings-list|delete|delete-and-extract-region|delete-auto-save-file-if-necessary|delete-auto-save-files|delete-backward-char|delete-blank-lines|delete-by-moving-to-trash|delete-char|delete-directory|delete-dups|delete-exited-processes|delete-field|delete-file|delete-frame|delete-frame-functions|delete-horizontal-space|delete-indentation|delete-minibuffer-contents|delete-old-versions|delete-other-windows|delete-overlay|delete-process|delete-region|delete-terminal|delete-terminal-functions|delete-to-left-margin|delete-trailing-whitespace|delete-window|delete-windows-on|delq|derived-mode-p|describe-bindings|describe-buffer-case-table|describe-categories|describe-current-display-table|describe-display-table|describe-mode|describe-prefix-bindings|describe-syntax|desktop-buffer-mode-handlers|desktop-save-buffer|destroy-fringe-bitmap|detect-coding-region|detect-coding-string|digit-argument|ding|dir-locals-class-alist|dir-locals-directory-cache|dir-locals-file|dir-locals-set-class-variables|dir-locals-set-directory-class|directory-file-name|directory-files|directory-files-and-attributes|dired-kept-versions|disable-command|disable-point-adjustment|disable-theme|disabled|disabled-command-function|disassemble|discard-input|display-backing-store|display-buffer|display-buffer-alist|display-buffer-at-bottom|display-buffer-base-action|display-buffer-below-selected|display-buffer-fallback-action|display-buffer-in-previous-window|display-buffer-no-window|display-buffer-overriding-action|display-buffer-pop-up-frame|display-buffer-pop-up-window|display-buffer-reuse-window|display-buffer-same-window|display-buffer-use-some-window|display-color-cells|display-color-p|display-completion-list|display-delayed-warnings|display-graphic-p|display-grayscale-p|display-images-p|display-message-or-buffer|display-mm-dimensions-alist|display-mm-height|display-mm-width|display-monitor-attributes-list|display-mouse-p|display-pixel-height|display-pixel-width|display-planes|display-popup-menus-p|display-save-under|display-screens|display-selections-p|display-supports-face-attributes-p|display-table-slot|display-visual-class|display-warning|dnd-protocol-alist|do-auto-save|doc-directory|documentation|documentation-property|dotimes-with-progress-reporter|double-click-fuzz|double-click-time|down-list|downcase|downcase-region|downcase-word|dump-emacs|dynamic-library-alist)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(easy-menu-define|easy-mmode-define-minor-mode|echo-area-clear-hook|echo-keystrokes|edebug|edebug-all-defs|edebug-all-forms|edebug-continue-kbd-macro|edebug-defun|edebug-display-freq-count|edebug-eval-macro-args|edebug-eval-top-level-form|edebug-global-break-condition|edebug-initial-mode|edebug-on-error|edebug-on-quit|edebug-print-circle|edebug-print-length|edebug-print-level|edebug-print-trace-after|edebug-print-trace-before|edebug-save-displayed-buffer-points|edebug-save-windows|edebug-set-global-break-condition|edebug-setup-hook|edebug-sit-for-seconds|edebug-temp-display-freq-count|edebug-test-coverage|edebug-trace|edebug-tracing|edebug-unwrap-results|edit-and-eval-command|electric-future-map|elt|emacs-build-time|emacs-init-time|emacs-lisp-docstring-fill-column|emacs-major-version|emacs-minor-version|emacs-pid|emacs-save-session-functions|emacs-session-restore|emacs-startup-hook|emacs-uptime|emacs-version|emulation-mode-map-alists|enable-command|enable-dir-local-variables|enable-local-eval|enable-local-variables|enable-multibyte-characters|enable-recursive-minibuffers|enable-theme|encode-char|encode-coding-region|encode-coding-string|encode-time|end-of-buffer|end-of-defun|end-of-defun-function|end-of-file|end-of-line|eobp|eolp|equal-including-properties|erase-buffer|error|error-conditions|error-message-string|esc-map|ESC-prefix|eval|eval-and-compile|eval-buffer|eval-current-buffer|eval-expression-debug-on-error|eval-expression-print-length|eval-expression-print-level|eval-minibuffer|eval-region|eval-when-compile|event-basic-type|event-click-count|event-convert-list|event-end|event-modifiers|event-start|eventp|ewoc-buffer|ewoc-collect|ewoc-create|ewoc-data|ewoc-delete|ewoc-enter-after|ewoc-enter-before|ewoc-enter-first|ewoc-enter-last|ewoc-filter|ewoc-get-hf|ewoc-goto-next|ewoc-goto-node|ewoc-goto-prev|ewoc-invalidate|ewoc-locate|ewoc-location|ewoc-map|ewoc-next|ewoc-nth|ewoc-prev|ewoc-refresh|ewoc-set-data|ewoc-set-hf|exec-directory|exec-path|exec-suffixes|executable-find|execute-extended-command|execute-kbd-macro|executing-kbd-macro|exit|exit-minibuffer|exit-recursive-edit|exp|expand-abbrev|expand-file-name|expt|extended-command-history|extra-keyboard-modifiers|face-all-attributes|face-attribute|face-attribute-relative-p|face-background|face-bold-p|face-differs-from-default-p|face-documentation|face-equal|face-font|face-font-family-alternatives|face-font-registry-alternatives|face-font-rescale-alist|face-font-selection-order|face-foreground|face-id|face-inverse-video-p|face-italic-p|face-list|face-name-history|face-remap-add-relative|face-remap-remove-relative|face-remap-reset-base|face-remap-set-base|face-remapping-alist|face-spec-set|face-stipple|face-underline-p|facemenu-keymap|facep|fboundp|fceiling|feature-unload-function|featurep|features|fetch-bytecode|ffloor|field-beginning|field-end|field-string|field-string-no-properties|file-accessible-directory-p|file-acl|file-already-exists|file-attributes|file-chase-links|file-coding-system-alist|file-directory-p|file-equal-p|file-error|file-executable-p|file-exists-p|file-expand-wildcards|file-extended-attributes|file-in-directory-p|file-local-copy|file-local-variables-alist|file-locked|file-locked-p|file-modes|file-modes-symbolic-to-number|file-name-absolute-p|file-name-all-completions|file-name-as-directory|file-name-base|file-name-coding-system|file-name-completion|file-name-directory|file-name-extension|file-name-handler-alist|file-name-history|file-name-nondirectory|file-name-sans-extension|file-name-sans-versions|file-newer-than-file-p|file-newest-backup|file-nlinks|file-notify-add-watch|file-notify-rm-watch|file-ownership-preserved-p|file-precious-flag|file-readable-p|file-regular-p|file-relative-name|file-remote-p|file-selinux-context|file-supersession|file-symlink-p|file-truename|file-writable-p|fill-column|fill-context-prefix|fill-forward-paragraph-function|fill-individual-paragraphs|fill-individual-varying-indent|fill-nobreak-predicate|fill-paragraph|fill-paragraph-function|fill-prefix|fill-region|fill-region-as-paragraph|fillarray|filter-buffer-substring|filter-buffer-substring-function|filter-buffer-substring-functions|find-auto-coding|find-backup-file-name|find-buffer-visiting|find-charset-region|find-charset-string|find-coding-systems-for-charsets|find-coding-systems-region|find-coding-systems-string|find-file|find-file-hook|find-file-literally|find-file-name-handler|find-file-noselect|find-file-not-found-functions|find-file-other-window|find-file-read-only|find-file-wildcards|find-font|find-image|find-operation-coding-system|first-change-hook|fit-frame-to-buffer|fit-frame-to-buffer-margins|fit-frame-to-buffer-sizes|fit-window-to-buffer|fit-window-to-buffer-horizontally|fixup-whitespace|float|float-e|float-output-format|float-pi|float-time|floatp|floats-consed|floor|fmakunbound|focus-follows-mouse|focus-in-hook|focus-out-hook|following-char|font-at|font-face-attributes|font-family-list|font-get|font-lock-add-keywords|font-lock-beginning-of-syntax-function|font-lock-builtin-face|font-lock-comment-delimiter-face|font-lock-comment-face|font-lock-constant-face|font-lock-defaults|font-lock-doc-face|font-lock-extend-after-change-region-function|font-lock-extra-managed-props|font-lock-fontify-buffer-function|font-lock-fontify-region-function|font-lock-function-name-face|font-lock-keyword-face|font-lock-keywords|font-lock-keywords-case-fold-search|font-lock-keywords-only|font-lock-mark-block-function|font-lock-multiline|font-lock-negation-char-face|font-lock-preprocessor-face|font-lock-remove-keywords|font-lock-string-face|font-lock-syntactic-face-function|font-lock-syntax-table|font-lock-type-face|font-lock-unfontify-buffer-function|font-lock-unfontify-region-function|font-lock-variable-name-face|font-lock-warning-face|font-put|font-spec|font-xlfd-name|fontification-functions|fontp|for|force-mode-line-update|force-window-update|format|format-alist|format-find-file|format-insert-file|format-mode-line|format-network-address|format-seconds|format-time-string|format-write-file|forward-button|forward-char|forward-comment|forward-line|forward-list|forward-sexp|forward-to-indentation|forward-word|frame-alpha-lower-limit|frame-auto-hide-function|frame-char-height|frame-char-width|frame-current-scroll-bars|frame-first-window|frame-height|frame-inherited-parameters|frame-list|frame-live-p|frame-monitor-attributes|frame-parameter|frame-parameters|frame-pixel-height|frame-pixel-width|frame-pointer-visible-p|frame-resize-pixelwise|frame-root-window|frame-selected-window|frame-terminal|frame-title-format|frame-visible-p|frame-width|framep|frexp|fringe-bitmaps-at-pos|fringe-cursor-alist|fringe-indicator-alist|fringes-outside-margins|fround|fset|ftp-login|ftruncate|function-get|functionp|fundamental-mode|fundamental-mode-abbrev-table|gap-position|gap-size|garbage-collect|garbage-collection-messages|gc-cons-percentage|gc-cons-threshold|gc-elapsed|gcs-done|generate-autoload-cookie|generate-new-buffer|generate-new-buffer-name|generated-autoload-file|get|get-buffer|get-buffer-create|get-buffer-process|get-buffer-window|get-buffer-window-list|get-byte|get-char-code-property|get-char-property|get-char-property-and-overlay|get-charset-property|get-device-terminal|get-file-buffer|get-internal-run-time|get-largest-window|get-load-suffixes|get-lru-window|get-pos-property|get-process|get-register|get-text-property|get-unused-category|get-window-with-predicate|getenv|gethash|global-abbrev-table|global-buffers-menu-map|global-disable-point-adjustment|global-key-binding|global-map|global-mode-string|global-set-key|global-unset-key|glyph-char|glyph-face|glyph-table|glyphless-char-display|glyphless-char-display-control|goto-char|goto-map|group-gid|group-real-gid|gv-define-expander|gv-define-setter|gv-define-simple-setter|gv-letplace|hack-dir-local-variables|hack-dir-local-variables-non-file-buffer|hack-local-variables|hack-local-variables-hook|handle-shift-selection|handle-switch-frame|hash-table-count|hash-table-p|hash-table-rehash-size|hash-table-rehash-threshold|hash-table-size|hash-table-test|hash-table-weakness|header-line-format|help-buffer|help-char|help-command|help-event-list|help-form|help-map|help-setup-xref|help-window-select|Helper-describe-bindings|Helper-help|Helper-help-map|history-add-new-input|history-delete-duplicates|history-length)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(icon-title-format|iconify-frame|identity|ignore|ignore-errors|ignore-window-parameters|ignored-local-variables|image-animate|image-animate-timer|image-cache-eviction-delay|image-current-frame|image-default-frame-delay|image-flush|image-format-suffixes|image-load-path|image-load-path-for-library|image-mask-p|image-minimum-frame-delay|image-multi-frame-p|image-show-frame|image-size|image-type-available-p|image-types|imagemagick-enabled-types|imagemagick-types|imagemagick-types-inhibit|imenu-add-to-menubar|imenu-case-fold-search|imenu-create-index-function|imenu-extract-index-name-function|imenu-generic-expression|imenu-prev-index-position-function|imenu-syntax-alist|inc|indent-according-to-mode|indent-code-rigidly|indent-for-tab-command|indent-line-function|indent-region|indent-region-function|indent-relative|indent-relative-maybe|indent-rigidly|indent-tabs-mode|indent-to|indent-to-left-margin|indicate-buffer-boundaries|indicate-empty-lines|indirect-function|indirect-variable|inhibit-default-init|inhibit-eol-conversion|inhibit-field-text-motion|inhibit-file-name-handlers|inhibit-file-name-operation|inhibit-iso-escape-detection|inhibit-local-variables-regexps|inhibit-modification-hooks|inhibit-null-byte-detection|inhibit-point-motion-hooks|inhibit-quit|inhibit-read-only|inhibit-splash-screen|inhibit-startup-echo-area-message|inhibit-startup-message|inhibit-startup-screen|inhibit-x-resources|init-file-user|initial-buffer-choice|initial-environment|initial-frame-alist|initial-major-mode|initial-scratch-message|initial-window-system|input-decode-map|input-method-alist|input-method-function|input-pending-p|insert|insert-abbrev-table-description|insert-and-inherit|insert-before-markers|insert-before-markers-and-inherit|insert-buffer|insert-buffer-substring|insert-buffer-substring-as-yank|insert-buffer-substring-no-properties|insert-button|insert-char|insert-default-directory|insert-directory|insert-directory-program|insert-file-contents|insert-file-contents-literally|insert-for-yank|insert-image|insert-register|insert-sliced-image|insert-text-button|installation-directory|integer-or-marker-p|integerp|interactive-form|intern|intern-soft|interpreter-mode-alist|interprogram-cut-function|interprogram-paste-function|interrupt-process|intervals-consed|invalid-function|invalid-read-syntax|invalid-regexp|invert-face|invisible-p|invocation-directory|invocation-name|isnan|jit-lock-register|jit-lock-unregister|just-one-space|justify-current-line|kbd|kbd-macro-termination-hook|kept-new-versions|kept-old-versions|key-binding|key-description|key-translation-map|keyboard-coding-system|keyboard-quit|keyboard-translate|keyboard-translate-table|keymap-parent|keymap-prompt|keymapp|keywordp|kill-all-local-variables|kill-append|kill-buffer|kill-buffer-hook|kill-buffer-query-functions|kill-emacs|kill-emacs-hook|kill-emacs-query-functions|kill-local-variable|kill-new|kill-process|kill-read-only-ok|kill-region|kill-ring|kill-ring-max|kill-ring-yank-pointer|kmacro-keymap|last-abbrev|last-abbrev-location|last-abbrev-text|last-buffer|last-coding-system-used|last-command|last-command-event|last-event-frame|last-input-event|last-kbd-macro|last-nonmenu-event|last-prefix-arg|last-repeatable-command|lax-plist-get|lax-plist-put|lazy-completion-table|ldexp|left-fringe-width|left-margin|left-margin-width|lexical-binding|libxml-parse-html-region|libxml-parse-xml-region|line-beginning-position|line-end-position|line-move-ignore-invisible|line-number-at-pos|line-prefix|line-spacing|lisp-mode-abbrev-table|list-buffers-directory|list-charset-chars|list-fonts|list-load-path-shadows|list-processes|list-system-processes|listify-key-sequence|ln|load-average|load-file|load-file-name|load-file-rep-suffixes|load-history|load-in-progress|load-library|load-path|load-prefer-newer|load-read-function|load-suffixes|load-theme|local-abbrev-table|local-function-key-map|local-key-binding|local-set-key|local-unset-key|local-variable-if-set-p|local-variable-p|locale-coding-system|locale-info|locate-file|locate-library|locate-user-emacs-file|lock-buffer|log|logand|logb|logior|lognot|logxor|looking-at|looking-at-p|looking-back|lookup-key|lower-frame|lsh|lwarn|macroexpand|macroexpand-all|macrop|magic-fallback-mode-alist|magic-mode-alist|mail-host-address|major-mode|make-abbrev-table|make-auto-save-file-name|make-backup-file-name|make-backup-file-name-function|make-backup-files|make-bool-vector|make-button|make-byte-code|make-category-set|make-category-table|make-char-table|make-composed-keymap|make-directory|make-display-table|make-frame|make-frame-invisible|make-frame-on-display|make-frame-visible|make-glyph-code|make-hash-table|make-help-screen|make-indirect-buffer|make-keymap|make-local-variable|make-marker|make-network-process|make-obsolete|make-obsolete-variable|make-overlay|make-progress-reporter|make-ring|make-serial-process|make-sparse-keymap|make-string|make-symbol|make-symbolic-link|make-syntax-table|make-temp-file|make-temp-name|make-text-button|make-translation-table|make-translation-table-from-alist|make-translation-table-from-vector|make-variable-buffer-local|make-vector|makehash|makunbound|map-char-table|map-charset-chars|map-keymap|map-y-or-n-p|mapatoms|mapconcat|maphash|mark|mark-active|mark-even-if-inactive|mark-marker|mark-ring|mark-ring-max|marker-buffer|marker-insertion-type|marker-position|markerp|match-beginning|match-data|match-end|match-string|match-string-no-properties|match-substitute-replacement|max-char|max-image-size|max-lisp-eval-depth|max-mini-window-height|max-specpdl-size|maximize-window|md5|member-ignore-case|memory-full|memory-limit|memory-use-counts|memq|memql|menu-bar-file-menu|menu-bar-final-items|menu-bar-help-menu|menu-bar-options-menu|menu-bar-tools-menu|menu-bar-update-hook|menu-item|menu-prompt-more-char|merge-face-attribute|message|message-box|message-log-max|message-or-box|message-truncate-lines|messages-buffer|meta-prefix-char|minibuffer-allow-text-properties|minibuffer-auto-raise|minibuffer-complete|minibuffer-complete-and-exit|minibuffer-complete-word|minibuffer-completion-confirm|minibuffer-completion-help|minibuffer-completion-predicate|minibuffer-completion-table|minibuffer-confirm-exit-commands|minibuffer-contents|minibuffer-contents-no-properties|minibuffer-depth|minibuffer-exit-hook|minibuffer-frame-alist|minibuffer-help-form|minibuffer-history|minibuffer-inactive-mode|minibuffer-local-completion-map|minibuffer-local-filename-completion-map|minibuffer-local-map|minibuffer-local-must-match-map|minibuffer-local-ns-map|minibuffer-local-shell-command-map|minibuffer-message|minibuffer-message-timeout|minibuffer-prompt|minibuffer-prompt-end|minibuffer-prompt-width|minibuffer-scroll-window|minibuffer-selected-window|minibuffer-setup-hook|minibuffer-window|minibuffer-window-active-p|minibufferp|minimize-window|minor-mode-alist|minor-mode-key-binding|minor-mode-list|minor-mode-map-alist|minor-mode-overriding-map-alist|misc-objects-consed|mkdir|mod|mode-line-buffer-identification|mode-line-client|mode-line-coding-system-map|mode-line-column-line-number-mode-map|mode-line-format|mode-line-frame-identification|mode-line-input-method-map|mode-line-modes|mode-line-modified|mode-line-mule-info|mode-line-position|mode-line-process|mode-line-remote|mode-name|mode-specific-map|modify-all-frames-parameters|modify-category-entry|modify-frame-parameters|modify-syntax-entry|momentary-string-display|most-negative-fixnum|most-positive-fixnum|mouse-1-click-follows-link|mouse-appearance-menu-map|mouse-leave-buffer-hook|mouse-movement-p|mouse-on-link-p|mouse-pixel-position|mouse-position|mouse-position-function|mouse-wheel-down-event|mouse-wheel-up-event|move-marker|move-overlay|move-point-visually|move-to-column|move-to-left-margin|move-to-window-line|movemail|mule-keymap|multi-query-replace-map|multibyte-char-to-unibyte|multibyte-string-p|multibyte-syntax-as-symbol|multiple-frames|narrow-map|narrow-to-page|narrow-to-region|natnump|negative-argument|network-coding-system-alist|network-interface-info|network-interface-list|newline|newline-and-indent|next-button|next-char-property-change|next-complete-history-element|next-frame|next-history-element|next-matching-history-element|next-overlay-change|next-property-change|next-screen-context-lines|next-single-char-property-change|next-single-property-change|next-window|nlistp|no-byte-compile|no-catch|no-redraw-on-reenter|noninteractive|noreturn|normal-auto-fill-function|normal-backup-enable-predicate|normal-mode|not-modified|notifications-close-notification|notifications-get-capabilities|notifications-get-server-information|notifications-notify|num-input-keys|num-nonmacro-input-events|number-or-marker-p|number-sequence|number-to-string|numberp|obarray|one-window-p|only-global-abbrevs|open-dribble-file|open-network-stream|open-paren-in-column-0-is-defun-start|open-termscript|other-buffer|other-window|other-window-scroll-buffer|overflow-newline-into-fringe|overlay-arrow-position|overlay-arrow-string|overlay-arrow-variable-list|overlay-buffer|overlay-end|overlay-get|overlay-properties|overlay-put|overlay-recenter|overlay-start|overlayp|overlays-at|overlays-in|overriding-local-map|overriding-local-map-menu-flag|overriding-terminal-local-map|overwrite-mode|package-archive-upload-base|package-archives|package-initialize|package-upload-buffer|package-upload-file|page-delimiter|paragraph-separate|paragraph-start|parse-colon-path|parse-partial-sexp|parse-sexp-ignore-comments|parse-sexp-lookup-properties|path-separator|perform-replace|play-sound|play-sound-file|play-sound-functions|plist-get|plist-member|plist-put|point|point-marker|point-max|point-max-marker|point-min|point-min-marker|pop-mark|pop-to-buffer|pop-up-frame-alist|pop-up-frame-function|pop-up-frames|pop-up-windows|pos-visible-in-window-p|position-bytes|posix-looking-at|posix-search-backward|posix-search-forward|posix-string-match|posn-actual-col-row|posn-area|posn-at-point|posn-at-x-y|posn-col-row|posn-image|posn-object|posn-object-width-height|posn-object-x-y|posn-point|posn-string|posn-timestamp|posn-window|posn-x-y|posnp|post-command-hook|post-gc-hook|post-self-insert-hook|pp|pre-command-hook|pre-redisplay-function|preceding-char|prefix-arg|prefix-help-command|prefix-numeric-value|preloaded-file-list|prepare-change-group|previous-button|previous-char-property-change|previous-complete-history-element|previous-frame|previous-history-element|previous-matching-history-element|previous-overlay-change|previous-property-change|previous-single-char-property-change|previous-single-property-change|previous-window|primitive-undo|prin1-to-string|print-circle|print-continuous-numbering|print-escape-multibyte|print-escape-newlines|print-escape-nonascii|print-gensym|print-length|print-level|print-number-table|print-quoted|printable-chars|process-adaptive-read-buffering|process-attributes|process-buffer|process-coding-system|process-coding-system-alist|process-command|process-connection-type|process-contact|process-datagram-address|process-environment|process-exit-status|process-file|process-file-shell-command|process-file-side-effects|process-filter|process-get|process-id|process-kill-buffer-query-function|process-lines|process-list|process-live-p|process-mark|process-name|process-plist|process-put|process-query-on-exit-flag|process-running-child-p|process-send-eof|process-send-region|process-send-string|process-sentinel|process-status|process-tty-name|process-type|processp|prog-mode|prog-mode-hook|progress-reporter-done|progress-reporter-force-update|progress-reporter-update|propertize|provide|provide-theme|pure-bytes-used|purecopy|purify-flag|push-button|push-mark|put|put-char-code-property|put-charset-property|put-image|put-text-property|puthash|query-replace-history|query-replace-map|quietly-read-abbrev-file|quit-flag|quit-process|quit-restore-window|quit-window|raise-frame|random|rassq|rassq-delete-all|re-builder|re-search-backward|re-search-forward|read|read-buffer|read-buffer-completion-ignore-case|read-buffer-function|read-char|read-char-choice|read-char-exclusive|read-circle|read-coding-system|read-color|read-command|read-directory-name|read-event|read-expression-history|read-file-modes|read-file-name|read-file-name-completion-ignore-case|read-file-name-function|read-from-minibuffer|read-from-string|read-input-method-name|read-kbd-macro|read-key|read-key-sequence|read-key-sequence-vector|read-minibuffer|read-no-blanks-input|read-non-nil-coding-system|read-only-mode|read-passwd|read-quoted-char|read-regexp|read-regexp-defaults-function|read-shell-command|read-string|read-variable|real-last-command|recent-auto-save-p|recent-keys|recenter|recenter-positions|recenter-redisplay|recenter-top-bottom|recursion-depth|recursive-edit|redirect-frame-focus|redisplay|redraw-display|redraw-frame|regexp-history|regexp-opt|regexp-opt-charset|regexp-opt-depth|regexp-quote|region-beginning|region-end|register-alist|register-read-with-preview|reindent-then-newline-and-indent|remhash|remote-file-name-inhibit-cache|remove|remove-from-invisibility-spec|remove-function|remove-hook|remove-images|remove-list-of-text-properties|remove-overlays|remove-text-properties|remq|rename-auto-save-file|rename-buffer|rename-file|replace-buffer-in-windows|replace-match|replace-re-search-function|replace-regexp-in-string|replace-search-function|require|require-final-newline|restore-buffer-modified-p|resume-tty|resume-tty-functions|revert-buffer|revert-buffer-function|revert-buffer-in-progress-p|revert-buffer-insert-file-contents-function|revert-without-query|right-fringe-width|right-margin-width|ring-bell-function|ring-copy|ring-elements|ring-empty-p|ring-insert|ring-insert-at-beginning|ring-length|ring-p|ring-ref|ring-remove|ring-size|risky-local-variable-p|rm|round|run-at-time|run-hook-with-args|run-hook-with-args-until-failure|run-hook-with-args-until-success|run-hooks|run-mode-hooks|run-with-idle-timer)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(safe-local-eval-forms|safe-local-variable-p|safe-local-variable-values|same-window-buffer-names|same-window-p|same-window-regexps|save-abbrevs|save-buffer|save-buffer-coding-system|save-current-buffer|save-excursion|save-match-data|save-restriction|save-selected-window|save-some-buffers|save-window-excursion|scalable-fonts-allowed|scan-lists|scan-sexps|scroll-bar-event-ratio|scroll-bar-mode|scroll-bar-scale|scroll-bar-width|scroll-conservatively|scroll-down|scroll-down-aggressively|scroll-down-command|scroll-error-top-bottom|scroll-left|scroll-margin|scroll-other-window|scroll-preserve-screen-position|scroll-right|scroll-step|scroll-up|scroll-up-aggressively|scroll-up-command|search-backward|search-failed|search-forward|search-map|search-spaces-regexp|seconds-to-time|secure-hash|select-frame|select-frame-set-input-focus|select-safe-coding-system|select-safe-coding-system-accept-default-p|select-window|selected-frame|selected-window|selection-coding-system|selective-display|selective-display-ellipses|self-insert-and-exit|self-insert-command|send-string-to-terminal|sentence-end|sentence-end-double-space|sentence-end-without-period|sentence-end-without-space|sequencep|serial-process-configure|serial-term|set-advertised-calling-convention|set-auto-coding|set-auto-mode|set-buffer|set-buffer-auto-saved|set-buffer-major-mode|set-buffer-modified-p|set-buffer-multibyte|set-case-syntax|set-case-syntax-delims|set-case-syntax-pair|set-case-table|set-category-table|set-char-table-extra-slot|set-char-table-parent|set-char-table-range|set-charset-priority|set-coding-system-priority|set-default|set-default-file-modes|set-display-table-slot|set-face-attribute|set-face-background|set-face-bold|set-face-font|set-face-foreground|set-face-inverse-video|set-face-italic|set-face-stipple|set-face-underline|set-file-acl|set-file-extended-attributes|set-file-modes|set-file-selinux-context|set-file-times|set-fontset-font|set-frame-configuration|set-frame-height|set-frame-parameter|set-frame-position|set-frame-selected-window|set-frame-size|set-frame-width|set-fringe-bitmap-face|set-input-method|set-input-mode|set-keyboard-coding-system|set-keymap-parent|set-left-margin|set-mark|set-marker|set-marker-insertion-type|set-match-data|set-minibuffer-window|set-mouse-pixel-position|set-mouse-position|set-network-process-option|set-process-buffer|set-process-coding-system|set-process-datagram-address|set-process-filter|set-process-plist|set-process-query-on-exit-flag|set-process-sentinel|set-register|set-right-margin|set-standard-case-table|set-syntax-table|set-terminal-coding-system|set-terminal-parameter|set-text-properties|set-transient-map|set-visited-file-modtime|set-visited-file-name|set-window-buffer|set-window-combination-limit|set-window-configuration|set-window-dedicated-p|set-window-display-table|set-window-fringes|set-window-hscroll|set-window-margins|set-window-next-buffers|set-window-parameter|set-window-point|set-window-prev-buffers|set-window-scroll-bars|set-window-start|set-window-vscroll|setenv|setplist|setq-default|setq-local|shell-command-history|shell-command-to-string|shell-quote-argument|show-help-function|shr-insert-document|shrink-window-if-larger-than-buffer|signal|signal-process|sin|single-key-description|sit-for|site-run-file|skip-chars-backward|skip-chars-forward|skip-syntax-backward|skip-syntax-forward|sleep-for|small-temporary-file-directory|smie-bnf->prec2|smie-close-block|smie-config|smie-config-guess|smie-config-local|smie-config-save|smie-config-set-indent|smie-config-show-indent|smie-down-list|smie-merge-prec2s|smie-prec2->grammar|smie-precs->prec2|smie-rule-bolp|smie-rule-hanging-p|smie-rule-next-p|smie-rule-parent|smie-rule-parent-p|smie-rule-prev-p|smie-rule-separator|smie-rule-sibling-p|smie-setup|Snarf-documentation|sort|sort-columns|sort-fields|sort-fold-case|sort-lines|sort-numeric-base|sort-numeric-fields|sort-pages|sort-paragraphs|sort-regexp-fields|sort-subr|special-event-map|special-form-p|special-mode|special-variable-p|split-height-threshold|split-string|split-string-and-unquote|split-string-default-separators|split-width-threshold|split-window|split-window-below|split-window-keep-point|split-window-preferred-function|split-window-right|split-window-sensibly|sqrt|standard-case-table|standard-category-table|standard-display-table|standard-input|standard-output|standard-syntax-table|standard-translation-table-for-decode|standard-translation-table-for-encode|start-file-process|start-file-process-shell-command|start-process|start-process-shell-command|stop-process|store-match-data|store-substring|string|string-as-multibyte|string-as-unibyte|string-bytes|string-chars-consed|string-equal|string-lessp|string-match|string-match-p|string-or-null-p|string-prefix-p|string-suffix-p|string-to-char|string-to-int|string-to-multibyte|string-to-number|string-to-syntax|string-to-unibyte|string-width|string<|string=|stringp|strings-consed|subr-arity|subrp|subst-char-in-region|substitute-command-keys|substitute-in-file-name|substitute-key-definition|substring|substring-no-properties|suppress-keymap|suspend-emacs|suspend-frame|suspend-hook|suspend-resume-hook|suspend-tty|suspend-tty-functions|switch-to-buffer|switch-to-buffer-other-frame|switch-to-buffer-other-window|switch-to-buffer-preserve-window-point|switch-to-next-buffer|switch-to-prev-buffer|switch-to-visible-buffer|sxhash|symbol-file|symbol-function|symbol-name|symbol-plist|symbol-value|symbolp|symbols-consed|syntax-after|syntax-begin-function|syntax-class|syntax-ppss|syntax-ppss-flush-cache|syntax-ppss-toplevel-pos|syntax-propertize-extend-region-functions|syntax-propertize-function|syntax-table|syntax-table-p|system-configuration|system-groups|system-key-alist|system-messages-locale|system-name|system-time-locale|system-type|system-users|tab-always-indent|tab-stop-list|tab-to-tab-stop|tab-width|tabulated-list-entries|tabulated-list-format|tabulated-list-init-header|tabulated-list-mode|tabulated-list-print|tabulated-list-printer|tabulated-list-revert-hook|tabulated-list-sort-key|tan|temacs|temp-buffer-setup-hook|temp-buffer-show-function|temp-buffer-show-hook|temp-buffer-window-setup-hook|temp-buffer-window-show-hook|temporary-file-directory|term-file-prefix|terminal-coding-system|terminal-list|terminal-live-p|terminal-name|terminal-parameter|terminal-parameters|terpri|test-completion|testcover-mark-all|testcover-next-mark|testcover-start|text-char-description|text-mode|text-mode-abbrev-table|text-properties-at|text-property-any|text-property-default-nonsticky|text-property-not-all|thing-at-point|this-command|this-command-keys|this-command-keys-shift-translated|this-command-keys-vector|this-original-command|three-step-help|time-add|time-less-p|time-subtract|time-to-day-in-year|time-to-days|timer-max-repeats|toggle-enable-multibyte-characters|tool-bar-add-item|tool-bar-add-item-from-menu|tool-bar-border|tool-bar-button-margin|tool-bar-button-relief|tool-bar-local-item-from-menu|tool-bar-map|top-level|tq-close|tq-create|tq-enqueue|track-mouse|transient-mark-mode|translate-region|translation-table-for-input|transpose-regions|truncate|truncate-lines|truncate-partial-width-windows|truncate-string-to-width|try-completion|tty-color-alist|tty-color-approximate|tty-color-clear|tty-color-define|tty-color-translate|tty-erase-char|tty-setup-hook|tty-top-frame|type-of|unbury-buffer|undefined|underline-minimum-offset|undo-ask-before-discard|undo-boundary|undo-in-progress|undo-limit|undo-outer-limit|undo-strong-limit|unhandled-file-name-directory|unibyte-char-to-multibyte|unibyte-string|unicode-category-table|unintern|universal-argument|universal-argument-map|unload-feature|unload-feature-special-hooks|unlock-buffer|unread-command-events|unsafep|up-list|upcase|upcase-initials|upcase-region|upcase-word|update-directory-autoloads|update-file-autoloads|use-empty-active-region|use-global-map|use-hard-newlines|use-local-map|use-region-p|user-emacs-directory|user-error|user-full-name|user-init-file|user-login-name|user-mail-address|user-real-login-name|user-real-uid|user-uid|values|vc-mode|vc-prefix-map|vconcat|vector|vector-cells-consed|vectorp|verify-visited-file-modtime|version-control|vertical-motion|vertical-scroll-bar|view-register|visible-bell|visible-frame-list|visited-file-modtime|void-function|void-text-area-pointer|waiting-for-user-input-p|walk-windows|warn|warning-fill-prefix|warning-levels|warning-minimum-level|warning-minimum-log-level|warning-prefix-function|warning-series|warning-suppress-log-types|warning-suppress-types|warning-type-format|where-is-internal|while-no-input|wholenump|widen|window-absolute-pixel-edges|window-at|window-body-height|window-body-size|window-body-width|window-bottom-divider-width|window-buffer|window-child|window-combination-limit|window-combination-resize|window-combined-p|window-configuration-change-hook|window-configuration-frame|window-configuration-p|window-current-scroll-bars|window-dedicated-p|window-display-table|window-edges|window-end|window-frame|window-fringes|window-full-height-p|window-full-width-p|window-header-line-height|window-hscroll|window-in-direction|window-inside-absolute-pixel-edges|window-inside-edges|window-inside-pixel-edges|window-left-child|window-left-column|window-line-height|window-list|window-live-p|window-margins|window-min-height|window-min-size|window-min-width|window-minibuffer-p|window-mode-line-height|window-next-buffers|window-next-sibling|window-parameter|window-parameters|window-parent|window-persistent-parameters|window-pixel-edges|window-pixel-height|window-pixel-left|window-pixel-top|window-pixel-width|window-point|window-point-insertion-type|window-prev-buffers|window-prev-sibling|window-resizable|window-resize|window-resize-pixelwise|window-right-divider-width|window-scroll-bar-width|window-scroll-bars|window-scroll-functions|window-setup-hook|window-size-change-functions|window-size-fixed|window-start|window-state-get|window-state-put|window-system|window-system-initialization-alist|window-text-change-functions|window-text-pixel-size|window-top-child|window-top-line|window-total-height|window-total-size|window-total-width|window-tree|window-valid-p|window-vscroll|windowp|with-case-table|with-coding-priority|with-current-buffer|with-current-buffer-window|with-demoted-errors|with-eval-after-load|with-help-window|with-local-quit|with-no-warnings|with-output-to-string|with-output-to-temp-buffer|with-selected-window|with-syntax-table|with-temp-buffer|with-temp-buffer-window|with-temp-file|with-temp-message|with-timeout|word-search-backward|word-search-backward-lax|word-search-forward|word-search-forward-lax|word-search-regexp|words-include-escapes|wrap-prefix|write-abbrev-file|write-char|write-contents-functions|write-file|write-file-functions|write-region|write-region-annotate-functions|write-region-post-annotation-function|wrong-number-of-arguments|wrong-type-argument|x-alt-keysym|x-alternatives-map|x-bitmap-file-path|x-close-connection|x-color-defined-p|x-color-values|x-defined-colors|x-display-color-p|x-display-list|x-dnd-known-types|x-dnd-test-function|x-dnd-types-alist|x-family-fonts|x-get-resource|x-get-selection|x-hyper-keysym|x-list-fonts|x-meta-keysym|x-open-connection|x-parse-geometry|x-pointer-shape|x-popup-dialog|x-popup-menu|x-resource-class|x-resource-name|x-sensitive-text-pointer-shape|x-server-vendor|x-server-version|x-set-selection|x-setup-function-keys|x-super-keysym|y-or-n-p|y-or-n-p-with-timeout|yank|yank-excluded-properties|yank-handled-properties|yank-pop|yank-undo-function|yes-or-no-p|zerop|zlib-available-p|zlib-decompress-region)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:mocha--other-js2-imenu-function|mocha-command|mocha-debug-port|mocha-debuggers|mocha-debugger|mocha-environment-variables|mocha-imenu-functions|mocha-options|mocha-project-test-directory|mocha-reporter|mocha-test-definition-nodes|mocha-which-node|node-error-regexp-alist|node-error-regexp)(?=[\\\\s()]|$)","name":"support.variable.emacs.lisp"},{"match":"(?<=[()]|^)(?:define-modify-macro|define-setf-method|defsetf|eval-when-compile|flet|labels|lexical-let\\\\*?|cl-(?:acons|adjoin|assert|assoc|assoc-if|assoc-if-not|block|caddr|callf|callf2|case|ceiling|check-type|coerce|compiler-macroexpand|concatenate|copy-list|count|count-if|count-if-not|decf|declaim|declare|define-compiler-macro|defmacro|defstruct|defsubst|deftype|defun|delete|delete-duplicates|delete-if|delete-if-not|destructuring-bind|do\\\\*?|do-all-symbols|do-symbols|dolist|dotimes|ecase|endp|equalp|etypecase|eval-when|evenp|every|fill|find|find-if|find-if-not|first|flet|float-limits|floor|function|gcd|gensym|gentemp|getf?|incf|intersection|isqrt|labels|lcm|ldiff|letf\\\\*?|list\\\\*|list-length|load-time-value|locally|loop|macrolet|make-random-state|map|mapc|mapcan|mapcar|mapcon|mapl|maplist|member|member-if|member-if-not|merge|minusp|mismatch|mod|multiple-value-bind|multiple-value-setq|nintersection|notany|notevery|nset-difference|nset-exclusive-or|nsublis|nsubst|nsubst-if|nsubst-if-not|nsubstitute|nsubstitute-if|nsubstitute-if-not|nunion|oddp|pairlis|plusp|position|position-if|position-if-not|prettyexpand|proclaim|progv|psetf|psetq|pushnew|random|random-state-p|rassoc|rassoc-if|rassoc-if-not|reduce|remf?|remove|remove-duplicates|remove-if|remove-if-not|remprop|replace|rest|return|return-from|rotatef|round|search|set-difference|set-exclusive-or|shiftf|some|sort|stable-sort|sublis|subseq|subsetp|subst|subst-if|subst-if-not|substitute|substitute-if|substitute-if-not|symbol-macrolet|tagbody|tailp|the|tree-equal|truncate|typecase|typep|union))(?=[\\\\s()]|$)","name":"support.function.cl-lib.emacs.lisp"},{"match":"(?<=[()]|^)(?:\\\\*table--cell-backward-kill-paragraph|\\\\*table--cell-backward-kill-sentence|\\\\*table--cell-backward-kill-sexp|\\\\*table--cell-backward-kill-word|\\\\*table--cell-backward-paragraph|\\\\*table--cell-backward-sentence|\\\\*table--cell-backward-word|\\\\*table--cell-beginning-of-buffer|\\\\*table--cell-beginning-of-line|\\\\*table--cell-center-line|\\\\*table--cell-center-paragraph|\\\\*table--cell-center-region|\\\\*table--cell-clipboard-yank|\\\\*table--cell-copy-region-as-kill|\\\\*table--cell-dabbrev-completion|\\\\*table--cell-dabbrev-expand|\\\\*table--cell-delete-backward-char|\\\\*table--cell-delete-char|\\\\*table--cell-delete-region|\\\\*table--cell-describe-bindings|\\\\*table--cell-describe-mode|\\\\*table--cell-end-of-buffer|\\\\*table--cell-end-of-line|\\\\*table--cell-fill-paragraph|\\\\*table--cell-forward-paragraph|\\\\*table--cell-forward-sentence|\\\\*table--cell-forward-word|\\\\*table--cell-insert|\\\\*table--cell-kill-line|\\\\*table--cell-kill-paragraph|\\\\*table--cell-kill-region|\\\\*table--cell-kill-ring-save|\\\\*table--cell-kill-sentence|\\\\*table--cell-kill-sexp|\\\\*table--cell-kill-word|\\\\*table--cell-move-beginning-of-line|\\\\*table--cell-move-end-of-line|\\\\*table--cell-newline-and-indent|\\\\*table--cell-newline|\\\\*table--cell-open-line|\\\\*table--cell-quoted-insert|\\\\*table--cell-self-insert-command|\\\\*table--cell-yank-clipboard-selection|\\\\*table--cell-yank|\\\\*table--present-cell-popup-menu|-cvs-create-fileinfo--cmacro|-cvs-create-fileinfo|-cvs-flags-make--cmacro|-cvs-flags-make|1\\\\+|1-|1value|2C-associate-buffer|2C-associated-buffer|2C-autoscroll|2C-command|2C-dissociate|2C-enlarge-window-horizontally|2C-merge|2C-mode|2C-newline|2C-other|2C-shrink-window-horizontally|2C-split|2C-toggle-autoscroll|2C-two-columns|5x5-bol|5x5-cell|5x5-copy-grid|5x5-crack-mutating-best|5x5-crack-mutating-current|5x5-crack-randomly|5x5-crack-xor-mutate|5x5-crack|5x5-defvar-local|5x5-down|5x5-draw-grid-end|5x5-draw-grid|5x5-eol|5x5-first|5x5-flip-cell|5x5-flip-current|5x5-grid-to-vec|5x5-grid-value|5x5-last|5x5-left|5x5-log-init|5x5-log|5x5-made-move|5x5-make-move|5x5-make-mutate-best|5x5-make-mutate-current|5x5-make-new-grid|5x5-make-random-grid|5x5-make-random-solution|5x5-make-xor-with-mutation|5x5-mode-menu|5x5-mode|5x5-mutate-solution|5x5-new-game|5x5-play-solution|5x5-position-cursor|5x5-quit-game|5x5-randomize|5x5-right|5x5-row-value|5x5-set-cell|5x5-solve-rotate-left|5x5-solve-rotate-right|5x5-solve-suggest|5x5-solver|5x5-up|5x5-vec-to-grid|5x5-xor|5x5-y-or-n-p|5x5|Buffer-menu--pretty-file-name|Buffer-menu--pretty-name|Buffer-menu--unmark|Buffer-menu-1-window|Buffer-menu-2-window|Buffer-menu-backup-unmark|Buffer-menu-beginning|Buffer-menu-buffer|Buffer-menu-bury|Buffer-menu-delete-backwards|Buffer-menu-delete|Buffer-menu-execute|Buffer-menu-info-node-description|Buffer-menu-isearch-buffers-regexp|Buffer-menu-isearch-buffers|Buffer-menu-mark|Buffer-menu-marked-buffers|Buffer-menu-mode|Buffer-menu-mouse-select|Buffer-menu-multi-occur|Buffer-menu-no-header|Buffer-menu-not-modified|Buffer-menu-other-window|Buffer-menu-save|Buffer-menu-select|Buffer-menu-sort|Buffer-menu-switch-other-window|Buffer-menu-this-window|Buffer-menu-toggle-files-only|Buffer-menu-toggle-read-only|Buffer-menu-unmark|Buffer-menu-view-other-window|Buffer-menu-view|Buffer-menu-visit-tags-table|Control-X-prefix|Custom-buffer-done|Custom-goto-parent|Custom-help|Custom-mode-menu|Custom-mode|Custom-newline|Custom-no-edit|Custom-reset-current|Custom-reset-saved|Custom-reset-standard|Custom-save|Custom-set|Electric-buffer-menu-exit|Electric-buffer-menu-mode-view-buffer|Electric-buffer-menu-mode|Electric-buffer-menu-mouse-select|Electric-buffer-menu-quit|Electric-buffer-menu-select|Electric-buffer-menu-undefined|Electric-command-history-redo-expression|Electric-command-loop|Electric-pop-up-window|Footnote-add-footnote|Footnote-assoc-index|Footnote-back-to-message|Footnote-current-regexp|Footnote-cycle-style|Footnote-delete-footnote|Footnote-english-lower|Footnote-english-upper|Footnote-goto-char-point-max|Footnote-goto-footnote|Footnote-index-to-string|Footnote-insert-footnote|Footnote-insert-numbered-footnote|Footnote-insert-pointer-marker|Footnote-insert-text-marker|Footnote-latin|Footnote-make-hole|Footnote-narrow-to-footnotes|Footnote-numeric|Footnote-refresh-footnotes|Footnote-renumber-footnotes|Footnote-renumber|Footnote-roman-common|Footnote-roman-lower|Footnote-roman-upper|Footnote-set-style|Footnote-sort|Footnote-style-p|Footnote-text-under-cursor|Footnote-under-cursor|Footnote-unicode|Info--search-loop|Info-apropos-find-file|Info-apropos-find-node|Info-apropos-matches|Info-apropos-toc-nodes|Info-backward-node|Info-bookmark-jump|Info-bookmark-make-record|Info-breadcrumbs|Info-build-node-completions-1|Info-build-node-completions|Info-cease-edit|Info-check-pointer|Info-clone-buffer|Info-complete-menu-item|Info-copy-current-node-name|Info-default-dirs|Info-desktop-buffer-misc-data|Info-dir-remove-duplicates|Info-directory-find-file|Info-directory-find-node|Info-directory-toc-nodes|Info-directory|Info-display-images-node|Info-edit-mode|Info-edit|Info-exit|Info-extract-menu-counting|Info-extract-menu-item|Info-extract-menu-node-name|Info-extract-pointer|Info-file-supports-index-cookies|Info-final-node|Info-find-emacs-command-nodes|Info-find-file|Info-find-in-tag-table-1|Info-find-in-tag-table|Info-find-index-name|Info-find-node-2|Info-find-node-in-buffer-1|Info-find-node-in-buffer|Info-find-node|Info-finder-find-file|Info-finder-find-node|Info-follow-nearest-node|Info-follow-reference|Info-following-node-name-re|Info-following-node-name|Info-fontify-node|Info-forward-node|Info-get-token|Info-goto-emacs-command-node|Info-goto-emacs-key-command-node|Info-goto-index|Info-goto-node|Info-help|Info-hide-cookies-node|Info-history-back|Info-history-find-file|Info-history-find-node|Info-history-forward|Info-history-toc-nodes|Info-history|Info-index-next|Info-index-node|Info-index-nodes|Info-index|Info-insert-dir|Info-install-speedbar-variables|Info-isearch-end|Info-isearch-filter|Info-isearch-pop-state|Info-isearch-push-state|Info-isearch-search|Info-isearch-start|Info-isearch-wrap|Info-kill-buffer|Info-last-menu-item|Info-last-preorder|Info-last|Info-menu-update|Info-menu|Info-mode-menu|Info-mode|Info-mouse-follow-link|Info-mouse-follow-nearest-node|Info-mouse-scroll-down|Info-mouse-scroll-up|Info-next-menu-item|Info-next-preorder|Info-next-reference-or-link|Info-next-reference|Info-next|Info-no-error|Info-node-at-bob-matching|Info-nth-menu-item|Info-on-current-buffer|Info-prev-reference-or-link|Info-prev-reference|Info-prev|Info-read-node-name-1|Info-read-node-name-2|Info-read-node-name|Info-read-subfile|Info-restore-desktop-buffer|Info-restore-point|Info-revert-buffer-function|Info-revert-find-node|Info-scroll-down|Info-scroll-up|Info-search-backward|Info-search-case-sensitively|Info-search-next|Info-search|Info-select-node|Info-set-mode-line|Info-speedbar-browser|Info-speedbar-buttons|Info-speedbar-expand-node|Info-speedbar-fetch-file-nodes|Info-speedbar-goto-node|Info-speedbar-hierarchy-buttons|Info-split-parameter-string|Info-split|Info-summary|Info-tagify|Info-toc-build|Info-toc-find-node|Info-toc-insert|Info-toc-nodes|Info-toc|Info-top-node|Info-try-follow-nearest-node|Info-undefined|Info-unescape-quotes|Info-up|Info-validate-node-name|Info-validate-tags-table|Info-validate|Info-virtual-call|Info-virtual-file-p|Info-virtual-fun|Info-virtual-index-find-node|Info-virtual-index|LaTeX-mode|Man-bgproc-filter|Man-bgproc-sentinel|Man-bookmark-jump|Man-bookmark-make-record|Man-build-man-command|Man-build-page-list|Man-build-references-alist|Man-build-section-alist|Man-cleanup-manpage|Man-completion-table|Man-default-bookmark-title|Man-default-man-entry|Man-find-section|Man-follow-manual-reference|Man-fontify-manpage|Man-getpage-in-background|Man-goto-page|Man-goto-section|Man-goto-see-also-section|Man-highlight-references|Man-highlight-references0|Man-init-defvars|Man-kill|Man-make-page-mode-string|Man-mode|Man-next-manpage|Man-next-section|Man-notify-when-ready|Man-page-from-arguments|Man-parse-man-k|Man-possibly-hyphenated-word|Man-previous-manpage|Man-previous-section|Man-quit|Man-softhyphen-to-minus|Man-start-calling|Man-strip-page-headers|Man-support-local-filenames|Man-translate-cleanup|Man-translate-references|Man-unindent|Man-update-manpage|Man-view-header-file|Man-xref-button-action|Math-anglep|Math-bignum-test|Math-equal-int|Math-equal|Math-integer-neg|Math-integer-negp|Math-integer-posp|Math-integerp|Math-lessp|Math-looks-negp|Math-messy-integerp|Math-natnum-lessp|Math-natnump|Math-negp|Math-num-integerp|Math-numberp|Math-objectp|Math-objvecp|Math-posp|Math-primp|Math-ratp|Math-realp|Math-scalarp|Math-vectorp|Math-zerop|TeX-mode|View-back-to-mark|View-exit-and-edit|View-exit|View-goto-line|View-goto-percent|View-kill-and-leave|View-leave|View-quit-all|View-quit|View-revert-buffer-scroll-page-forward|View-scroll-half-page-backward|View-scroll-half-page-forward|View-scroll-line-backward|View-scroll-line-forward|View-scroll-page-backward-set-page-size|View-scroll-page-backward|View-scroll-page-forward-set-page-size|View-scroll-page-forward|View-scroll-to-buffer-end|View-search-last-regexp-backward|View-search-last-regexp-forward|View-search-regexp-backward|View-search-regexp-forward|WoMan-find-buffer|WoMan-getpage-in-background|WoMan-log-1|WoMan-log-begin|WoMan-log-end|WoMan-log|WoMan-next-manpage|WoMan-previous-manpage|WoMan-warn-ignored|WoMan-warn|abbrev--active-tables|abbrev--before-point|abbrev--check-chars|abbrev--default-expand|abbrev--describe|abbrev--symbol|abbrev--write|abbrev-edit-save-buffer|abbrev-edit-save-to-file|abbrev-mode|abbrev-table-empty-p|abbrev-table-menu|abbrev-table-name|abort-if-file-too-large|about-emacs|accelerate-menu|accept-completion|acons|activate-input-method|activate-mark|activate-mode-local-bindings|ad--defalias-fset|ad--make-advised-docstring|ad-Advice-c-backward-sws|ad-Advice-c-beginning-of-macro|ad-Advice-c-forward-sws|ad-Advice-save-place-find-file-hook|ad-access-argument|ad-activate-advised-definition|ad-activate-all|ad-activate-internal|ad-activate-on|ad-activate-regexp|ad-activate|ad-add-advice|ad-advice-definition|ad-advice-enabled|ad-advice-name|ad-advice-p|ad-advice-position|ad-advice-protected|ad-advice-set-enabled|ad-advised-arglist|ad-advised-interactive-form|ad-arg-binding-field|ad-arglist|ad-assemble-advised-definition|ad-body-forms|ad-cache-id-verification-code|ad-class-p|ad-clear-advicefunname-definition|ad-clear-cache|ad-compile-function|ad-compiled-code|ad-compiled-p|ad-copy-advice-info|ad-deactivate-all|ad-deactivate-regexp|ad-deactivate|ad-definition-type|ad-disable-advice|ad-disable-regexp|ad-do-advised-functions|ad-docstring|ad-element-access|ad-enable-advice-internal|ad-enable-advice|ad-enable-regexp-internal|ad-enable-regexp|ad-find-advice|ad-find-some-advice|ad-get-advice-info-field|ad-get-advice-info-macro|ad-get-advice-info|ad-get-argument|ad-get-arguments|ad-get-cache-class-id|ad-get-cache-definition|ad-get-cache-id|ad-get-enabled-advices|ad-get-orig-definition|ad-has-any-advice|ad-has-enabled-advice|ad-has-proper-definition|ad-has-redefining-advice|ad-initialize-advice-info|ad-insert-argument-access-forms|ad-interactive-form|ad-is-active|ad-is-advised|ad-is-compilable|ad-lambda-expression|ad-lambda-p|ad-lambdafy|ad-list-access|ad-macrofy|ad-make-advice|ad-make-advicefunname|ad-make-advised-definition|ad-make-cache-id|ad-make-hook-form|ad-make-single-advice-docstring|ad-map-arglists|ad-name-p|ad-parse-arglist|ad-pop-advised-function|ad-position-p|ad-preactivate-advice|ad-pushnew-advised-function|ad-read-advice-class|ad-read-advice-name|ad-read-advice-specification|ad-read-advised-function|ad-read-regexp|ad-real-definition|ad-real-orig-definition|ad-recover-all|ad-recover-normality|ad-recover|ad-remove-advice|ad-retrieve-args-form|ad-set-advice-info-field|ad-set-advice-info|ad-set-argument|ad-set-arguments|ad-set-cache|ad-should-compile|ad-substitute-tree|ad-unadvise-all|ad-unadvise|ad-update-all|ad-update-regexp|ad-update|ad-verify-cache-class-id|ad-verify-cache-id|ad-with-originals|ada-activate-keys-for-case|ada-add-extensions|ada-adjust-case-buffer|ada-adjust-case-identifier|ada-adjust-case-interactive|ada-adjust-case-region|ada-adjust-case-skeleton|ada-adjust-case-substring|ada-adjust-case|ada-after-keyword-p|ada-array|ada-batch-reformat|ada-call-from-contextual-menu|ada-capitalize-word|ada-case-read-exceptions-from-file)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:ada-case-read-exceptions|ada-case|ada-change-prj|ada-check-current|ada-check-defun-name|ada-check-matching-start|ada-compile-application|ada-compile-current|ada-compile-goto-error|ada-compile-mouse-goto-error|ada-complete-identifier|ada-contextual-menu|ada-create-case-exception-substring|ada-create-case-exception|ada-create-keymap|ada-create-menu|ada-customize|ada-declare-block|ada-else|ada-elsif|ada-exception-block|ada-exception|ada-exit|ada-ff-other-window|ada-fill-comment-paragraph-justify|ada-fill-comment-paragraph-postfix|ada-fill-comment-paragraph|ada-find-any-references|ada-find-file|ada-find-local-references|ada-find-references|ada-find-src-file-in-dir|ada-for-loop|ada-format-paramlist|ada-function-spec|ada-gdb-application|ada-gen-treat-proc|ada-get-body-name|ada-get-current-indent|ada-get-indent-block-label|ada-get-indent-block-start|ada-get-indent-case|ada-get-indent-end|ada-get-indent-goto-label|ada-get-indent-if|ada-get-indent-loop|ada-get-indent-nochange|ada-get-indent-noindent|ada-get-indent-open-paren|ada-get-indent-paramlist|ada-get-indent-subprog|ada-get-indent-type|ada-get-indent-when|ada-gnat-style|ada-goto-decl-start|ada-goto-declaration-other-frame|ada-goto-declaration|ada-goto-matching-end|ada-goto-matching-start|ada-goto-next-non-ws|ada-goto-next-word|ada-goto-parent|ada-goto-previous-word|ada-goto-stmt-end|ada-goto-stmt-start|ada-header|ada-if|ada-in-comment-p|ada-in-decl-p|ada-in-numeric-literal-p|ada-in-open-paren-p|ada-in-paramlist-p|ada-in-string-or-comment-p|ada-in-string-p|ada-indent-current-function|ada-indent-current|ada-indent-newline-indent-conditional|ada-indent-newline-indent|ada-indent-on-previous-lines|ada-indent-region|ada-insert-paramlist|ada-justified-indent-current|ada-looking-at-semi-or|ada-looking-at-semi-private|ada-loop|ada-loose-case-word|ada-make-body-gnatstub|ada-make-body|ada-make-filename-from-adaname|ada-make-subprogram-body|ada-mode-menu|ada-mode-version|ada-mode|ada-move-to-end|ada-move-to-start|ada-narrow-to-defun|ada-next-package|ada-next-procedure|ada-no-auto-case|ada-other-file-name|ada-outline-level|ada-package-body|ada-package-spec|ada-point-and-xref|ada-popup-menu|ada-previous-package|ada-previous-procedure|ada-private|ada-prj-edit|ada-prj-new|ada-prj-save|ada-procedure-spec|ada-record|ada-region-selected|ada-remove-trailing-spaces|ada-reread-prj-file|ada-run-application|ada-save-exceptions-to-file|ada-scan-paramlist|ada-search-ignore-complex-boolean|ada-search-ignore-string-comment|ada-search-prev-end-stmt|ada-set-default-project-file|ada-set-main-compile-application|ada-set-point-accordingly|ada-show-current-main|ada-subprogram-body|ada-subtype|ada-tab-hard|ada-tab|ada-tabsize|ada-task-body|ada-task-spec|ada-type|ada-uncomment-region|ada-untab-hard|ada-untab|ada-use|ada-when|ada-which-function-are-we-in|ada-which-function|ada-while-loop|ada-with|ada-xref-goto-previous-reference|add-abbrev|add-change-log-entry-other-window|add-change-log-entry|add-completion-to-head|add-completion-to-tail-if-new|add-completion|add-completions-from-buffer|add-completions-from-c-buffer|add-completions-from-file|add-completions-from-lisp-buffer|add-completions-from-tags-table|add-dir-local-variable|add-file-local-variable-prop-line|add-file-local-variable|add-global-abbrev|add-log-current-defun|add-log-edit-next-comment|add-log-edit-prev-comment|add-log-file-name|add-log-iso8601-time-string|add-log-iso8601-time-zone|add-log-tcl-defun|add-minor-mode|add-mode-abbrev|add-new-page|add-permanent-completion|add-submenu|add-timeout|add-to-coding-system-list|add-to-list--anon-cmacro|addbib|adjoin|advertised-undo|advertised-widget-backward|advertised-xscheme-send-previous-expression|advice--add-function|advice--buffer-local|advice--called-interactively-skip|advice--car|advice--cd\\\\*r|advice--cdr|advice--defalias-fset|advice--interactive-form|advice--make-1|advice--make-docstring|advice--make-interactive-form|advice--make|advice--member-p|advice--normalize-place|advice--normalize|advice--p|advice--props|advice--remove-function|advice--set-buffer-local|advice--strip-macro|advice--subst-main|advice--symbol-function|advice--tweak|after-insert-file-set-coding|align--set-marker|align-adjust-col-for-rule|align-areas|align-column|align-current|align-entire|align-highlight-rule|align-match-tex-pattern|align-new-section-p|align-newline-and-indent|align-regexp|align-region|align-regions|align-set-vhdl-rules|align-unhighlight-rule|align|alist-get|allout-aberrant-container-p|allout-add-resumptions|allout-adjust-file-variable|allout-after-saves-handler|allout-annotate-hidden|allout-ascend-to-depth|allout-ascend|allout-auto-activation-helper|allout-auto-fill|allout-back-to-current-heading|allout-back-to-heading|allout-back-to-visible-text|allout-backward-current-level|allout-before-change-handler|allout-beginning-of-current-entry|allout-beginning-of-current-line|allout-beginning-of-level|allout-beginning-of-line|allout-body-modification-handler|allout-bullet-for-depth|allout-bullet-isearch|allout-called-interactively-p|allout-chart-exposure-contour-by-icon|allout-chart-siblings|allout-chart-subtree|allout-chart-to-reveal|allout-compose-and-institute-keymap|allout-copy-exposed-to-buffer|allout-copy-line-as-kill|allout-copy-topic-as-kill|allout-current-bullet-pos|allout-current-bullet|allout-current-decorated-p|allout-current-depth|allout-current-topic-collapsed-p|allout-deannotate-hidden|allout-decorate-item-and-context|allout-decorate-item-body|allout-decorate-item-cue|allout-decorate-item-guides|allout-decorate-item-icon|allout-decorate-item-span|allout-depth|allout-descend-to-depth|allout-distinctive-bullet|allout-do-doublecheck|allout-do-resumptions|allout-e-o-prefix-p|allout-elapsed-time-seconds|allout-encrypt-decrypted|allout-encrypt-string|allout-encrypted-topic-p|allout-encrypted-type-prefix|allout-end-of-current-heading|allout-end-of-current-line|allout-end-of-current-subtree|allout-end-of-entry|allout-end-of-heading|allout-end-of-level|allout-end-of-line|allout-end-of-prefix|allout-end-of-subtree|allout-expose-topic|allout-fetch-icon-image|allout-file-vars-section-data|allout-find-file-hook|allout-find-image|allout-flag-current-subtree|allout-flag-region|allout-flatten-exposed-to-buffer|allout-flatten|allout-format-quote|allout-forward-current-level|allout-frame-property|allout-get-body-text|allout-get-bullet|allout-get-configvar-values|allout-get-current-prefix|allout-get-invisibility-overlay|allout-get-item-widget|allout-get-or-create-item-widget|allout-get-or-create-parent-widget|allout-get-prefix-bullet|allout-goto-prefix-doublechecked|allout-goto-prefix|allout-graphics-modification-handler|allout-hidden-p|allout-hide-bodies|allout-hide-by-annotation|allout-hide-current-entry|allout-hide-current-leaves|allout-hide-current-subtree|allout-hide-region-body|allout-hotspot-key-handler|allout-indented-exposed-to-buffer|allout-infer-body-reindent|allout-infer-header-lead-and-primary-bullet|allout-infer-header-lead|allout-inhibit-auto-save-info-for-decryption|allout-init|allout-insert-latex-header|allout-insert-latex-trailer|allout-insert-listified|allout-institute-keymap|allout-isearch-end-handler|allout-item-actual-position|allout-item-element-span-is|allout-item-icon-key-handler|allout-item-location|allout-item-span|allout-kill-line|allout-kill-topic|allout-latex-verb-quote|allout-latex-verbatim-quote-curr-line|allout-latexify-exposed|allout-latexify-one-item|allout-lead-with-comment-string|allout-listify-exposed|allout-make-topic-prefix|allout-mark-active-p|allout-mark-marker|allout-mark-topic|allout-maybe-resume-auto-save-info-after-encryption|allout-minor-mode|allout-mode-map|allout-mode-p|allout-mode|allout-new-exposure|allout-new-item-widget|allout-next-heading|allout-next-sibling-leap|allout-next-sibling|allout-next-single-char-property-change|allout-next-topic-pending-encryption|allout-next-visible-heading|allout-number-siblings|allout-numbered-type-prefix|allout-old-expose-topic|allout-on-current-heading-p|allout-on-heading-p|allout-open-sibtopic|allout-open-subtopic|allout-open-supertopic|allout-open-topic|allout-overlay-insert-in-front-handler|allout-overlay-interior-modification-handler|allout-overlay-preparations|allout-parse-item-at-point|allout-post-command-business|allout-pre-command-business|allout-pre-next-prefix|allout-prefix-data|allout-previous-heading|allout-previous-sibling|allout-previous-single-char-property-change|allout-previous-visible-heading|allout-process-exposed|allout-range-overlaps|allout-rebullet-current-heading|allout-rebullet-heading|allout-rebullet-topic-grunt|allout-rebullet-topic|allout-recent-bullet|allout-recent-depth|allout-recent-prefix|allout-redecorate-item|allout-redecorate-visible-subtree|allout-region-active-p|allout-reindent-body|allout-renumber-to-depth|allout-reset-header-lead|allout-resolve-xref|allout-run-unit-tests|allout-select-safe-coding-system|allout-set-boundary-marker|allout-setup-menubar|allout-setup-text-properties|allout-setup|allout-shift-in|allout-shift-out|allout-show-all|allout-show-children|allout-show-current-branches|allout-show-current-entry|allout-show-current-subtree|allout-show-entry|allout-show-to-offshoot|allout-sibling-index|allout-snug-back|allout-solicit-alternate-bullet|allout-stringify-flat-index-indented|allout-stringify-flat-index-plain|allout-stringify-flat-index|allout-substring-no-properties|allout-test-range-overlaps|allout-test-resumptions|allout-tests-obliterate-variable|allout-this-or-next-heading|allout-toggle-current-subtree-encryption|allout-toggle-current-subtree-exposure|allout-toggle-subtree-encryption|allout-topic-flat-index|allout-unload-function|allout-unprotected|allout-up-current-level|allout-version|allout-widgetize-buffer|allout-widgets-additions-processor|allout-widgets-additions-recorder|allout-widgets-adjusting-message|allout-widgets-after-change-handler|allout-widgets-after-copy-or-kill-function|allout-widgets-after-undo-function|allout-widgets-before-change-handler|allout-widgets-changes-dispatcher|allout-widgets-copy-list|allout-widgets-count-buttons-in-region|allout-widgets-deletions-processor|allout-widgets-deletions-recorder|allout-widgets-exposure-change-processor|allout-widgets-exposure-change-recorder|allout-widgets-exposure-undo-processor|allout-widgets-exposure-undo-recorder|allout-widgets-hook-error-handler|allout-widgets-mode-disable|allout-widgets-mode-enable|allout-widgets-mode-off|allout-widgets-mode-on|allout-widgets-mode|allout-widgets-post-command-business|allout-widgets-pre-command-business|allout-widgets-prepopulate-buffer|allout-widgets-run-unit-tests|allout-widgets-setup|allout-widgets-shifts-processor|allout-widgets-shifts-recorder|allout-widgets-tally-string|allout-widgets-undecorate-item|allout-widgets-undecorate-region|allout-widgets-undecorate-text|allout-widgets-version|allout-write-contents-hook-handler|allout-yank-pop|allout-yank-processing|allout-yank|alter-text-property|ange-ftp-abbreviate-filename|ange-ftp-add-bs2000-host|ange-ftp-add-bs2000-posix-host|ange-ftp-add-cms-host|ange-ftp-add-dl-dir|ange-ftp-add-dumb-unix-host|ange-ftp-add-file-entry|ange-ftp-add-mts-host|ange-ftp-add-vms-host|ange-ftp-allow-child-lookup|ange-ftp-barf-if-not-directory|ange-ftp-barf-or-query-if-file-exists|ange-ftp-binary-file|ange-ftp-bs2000-cd-to-posix|ange-ftp-bs2000-host|ange-ftp-bs2000-posix-host|ange-ftp-call-chmod|ange-ftp-call-cont|ange-ftp-canonize-filename|ange-ftp-cd|ange-ftp-cf1|ange-ftp-cf2|ange-ftp-chase-symlinks|ange-ftp-cms-host|ange-ftp-cms-make-compressed-filename|ange-ftp-completion-hook-function|ange-ftp-compress|ange-ftp-copy-file-internal|ange-ftp-copy-file|ange-ftp-copy-files-async|ange-ftp-del-tmp-name|ange-ftp-delete-directory|ange-ftp-delete-file-entry|ange-ftp-delete-file|ange-ftp-directory-file-name|ange-ftp-directory-files-and-attributes|ange-ftp-directory-files|ange-ftp-dired-compress-file|ange-ftp-dired-uncache|ange-ftp-dl-parser|ange-ftp-dumb-unix-host|ange-ftp-error|ange-ftp-expand-dir|ange-ftp-expand-file-name|ange-ftp-expand-symlink|ange-ftp-file-attributes|ange-ftp-file-directory-p|ange-ftp-file-entry-not-ignored-p|ange-ftp-file-entry-p|ange-ftp-file-executable-p|ange-ftp-file-exists-p|ange-ftp-file-local-copy|ange-ftp-file-modtime|ange-ftp-file-name-all-completions|ange-ftp-file-name-as-directory|ange-ftp-file-name-completion-1|ange-ftp-file-name-completion|ange-ftp-file-name-directory|ange-ftp-file-name-nondirectory|ange-ftp-file-name-sans-versions)(?=[\\\\s()]|$)"},{"match":"(?<=[()]|^)(?:ange-ftp-file-newer-than-file-p|ange-ftp-file-readable-p|ange-ftp-file-remote-p|ange-ftp-file-size|ange-ftp-file-symlink-p|ange-ftp-file-writable-p|ange-ftp-find-backup-file-name|ange-ftp-fix-dir-name-for-bs2000|ange-ftp-fix-dir-name-for-cms|ange-ftp-fix-dir-name-for-mts|ange-ftp-fix-dir-name-for-vms|ange-ftp-fix-name-for-bs2000|ange-ftp-fix-name-for-cms|ange-ftp-fix-name-for-mts|ange-ftp-fix-name-for-vms|ange-ftp-ftp-name-component|ange-ftp-ftp-name|ange-ftp-ftp-process-buffer|ange-ftp-generate-passwd-key|ange-ftp-generate-root-prefixes|ange-ftp-get-account|ange-ftp-get-file-entry|ange-ftp-get-file-part|ange-ftp-get-files|ange-ftp-get-host-with-passwd|ange-ftp-get-passwd|ange-ftp-get-process|ange-ftp-get-pwd|ange-ftp-get-user|ange-ftp-guess-hash-mark-size|ange-ftp-guess-host-type|ange-ftp-gwp-filter|ange-ftp-gwp-sentinel|ange-ftp-gwp-start|ange-ftp-hash-entry-exists-p|ange-ftp-hash-table-keys|ange-ftp-hook-function|ange-ftp-host-type|ange-ftp-ignore-errors-if-non-essential|ange-ftp-insert-directory|ange-ftp-insert-file-contents|ange-ftp-internal-add-file-entry|ange-ftp-internal-delete-file-entry|ange-ftp-kill-ftp-process|ange-ftp-load|ange-ftp-lookup-passwd|ange-ftp-ls-parser|ange-ftp-ls|ange-ftp-make-directory|ange-ftp-make-tmp-name|ange-ftp-message|ange-ftp-mts-host|ange-ftp-normal-login|ange-ftp-nslookup-host|ange-ftp-parse-bs2000-filename|ange-ftp-parse-bs2000-listing|ange-ftp-parse-cms-listing|ange-ftp-parse-dired-listing|ange-ftp-parse-filename|ange-ftp-parse-mts-listing|ange-ftp-parse-netrc-group|ange-ftp-parse-netrc-token|ange-ftp-parse-netrc|ange-ftp-parse-vms-filename|ange-ftp-parse-vms-listing|ange-ftp-passive-mode|ange-ftp-process-file|ange-ftp-process-filter|ange-ftp-process-handle-hash|ange-ftp-process-handle-line|ange-ftp-process-sentinel|ange-ftp-quote-string|ange-ftp-raw-send-cmd|ange-ftp-re-read-dir|ange-ftp-real-backup-buffer|ange-ftp-real-copy-file|ange-ftp-real-delete-directory|ange-ftp-real-delete-file|ange-ftp-real-directory-file-name|ange-ftp-real-directory-files-and-attributes|ange-ftp-real-directory-files|ange-ftp-real-expand-file-name|ange-ftp-real-file-attributes|ange-ftp-real-file-directory-p|ange-ftp-real-file-executable-p|ange-ftp-real-file-exists-p|ange-ftp-real-file-name-all-completions|ange-ftp-real-file-name-as-directory|ange-ftp-real-file-name-completion|ange-ftp-real-file-name-directory|ange-ftp-real-file-name-nondirectory|ange-ftp-real-file-name-sans-versions|ange-ftp-real-file-newer-than-file-p|ange-ftp-real-file-readable-p|ange-ftp-real-file-symlink-p|ange-ftp-real-file-writable-p|ange-ftp-real-find-backup-file-name|ange-ftp-real-insert-directory|ange-ftp-real-insert-file-contents|ange-ftp-real-load|ange-ftp-real-make-directory|ange-ftp-real-rename-file|ange-ftp-real-shell-command|ange-ftp-real-verify-visited-file-modtime|ange-ftp-real-write-region|ange-ftp-rename-file|ange-ftp-rename-local-to-remote|ange-ftp-rename-remote-to-local|ange-ftp-rename-remote-to-remote|ange-ftp-repaint-minibuffer|ange-ftp-replace-name-component|ange-ftp-reread-dir|ange-ftp-root-dir-p|ange-ftp-run-real-handler-orig|ange-ftp-run-real-handler|ange-ftp-send-cmd|ange-ftp-set-account|ange-ftp-set-ascii-mode|ange-ftp-set-binary-mode|ange-ftp-set-buffer-mode|ange-ftp-set-file-modes|ange-ftp-set-files|ange-ftp-set-passwd|ange-ftp-set-user|ange-ftp-set-xfer-size|ange-ftp-shell-command|ange-ftp-smart-login|ange-ftp-start-process|ange-ftp-switches-ok|ange-ftp-uncompress|ange-ftp-unhandled-file-name-directory|ange-ftp-use-gateway-p|ange-ftp-use-smart-gateway-p|ange-ftp-verify-visited-file-modtime|ange-ftp-vms-add-file-entry|ange-ftp-vms-delete-file-entry|ange-ftp-vms-file-name-as-directory|ange-ftp-vms-host|ange-ftp-vms-make-compressed-filename|ange-ftp-vms-sans-version|ange-ftp-wait-not-busy|ange-ftp-wipe-file-entries|ange-ftp-write-region|animate-birthday-present|animate-initialize|animate-place-char|animate-sequence|animate-step|animate-string|another-calc|ansi-color--find-face|ansi-color-apply-on-region|ansi-color-apply-overlay-face|ansi-color-apply-sequence|ansi-color-apply|ansi-color-filter-apply|ansi-color-filter-region|ansi-color-for-comint-mode-filter|ansi-color-for-comint-mode-off|ansi-color-for-comint-mode-on|ansi-color-freeze-overlay|ansi-color-get-face-1|ansi-color-make-color-map|ansi-color-make-extent|ansi-color-make-face|ansi-color-map-update|ansi-color-parse-sequence|ansi-color-process-output|ansi-color-set-extent-face|ansi-color-unfontify-region|ansi-term|antlr-beginning-of-body|antlr-beginning-of-rule|antlr-c\\\\+\\\\+-mode-extra|antlr-c-forward-sws|antlr-c-init-language-vars|antlr-default-directory|antlr-directory-dependencies|antlr-downcase-literals|antlr-electric-character|antlr-end-of-body|antlr-end-of-rule|antlr-file-dependencies|antlr-font-lock-keywords|antlr-grammar-tokens|antlr-hide-actions|antlr-imenu-create-index-function|antlr-indent-command|antlr-indent-line|antlr-insert-makefile-rules|antlr-insert-option-area|antlr-insert-option-do|antlr-insert-option-existing|antlr-insert-option-interactive|antlr-insert-option-space|antlr-insert-option|antlr-inside-rule-p|antlr-invalidate-context-cache|antlr-language-option-extra|antlr-language-option|antlr-makefile-insert-variable|antlr-mode-menu|antlr-mode|antlr-next-rule|antlr-option-kind|antlr-option-level|antlr-option-location|antlr-option-spec|antlr-options-menu-filter|antlr-outside-rule-p|antlr-re-search-forward|antlr-read-boolean|antlr-read-shell-command|antlr-read-value|antlr-run-tool-interactive|antlr-run-tool|antlr-search-backward|antlr-search-forward|antlr-set-tabs|antlr-show-makefile-rules|antlr-skip-exception-part|antlr-skip-file-prelude|antlr-skip-sexps|antlr-superclasses-glibs|antlr-syntactic-context|antlr-syntactic-grammar-depth|antlr-upcase-literals|antlr-upcase-p|antlr-version-string|antlr-with-displaying-help-buffer|antlr-with-syntax-table|append-next-kill|append-to-buffer|append-to-register|apply-macro-to-region-lines|apply-on-rectangle|appt-activate|appt-add|apropos-command|apropos-documentation-property|apropos-documentation|apropos-internal|apropos-library|apropos-read-pattern|apropos-user-option|apropos-value|apropos-variable|archive-\\\\*-expunge|archive-\\\\*-extract|archive-\\\\*-write-file-member|archive-7z-extract|archive-7z-summarize|archive-7z-write-file-member|archive-add-new-member|archive-alternate-display|archive-ar-extract|archive-ar-summarize|archive-arc-rename-entry|archive-arc-summarize|archive-calc-mode|archive-chgrp-entry|archive-chmod-entry|archive-chown-entry|archive-delete-local|archive-desummarize|archive-display-other-window|archive-dosdate|archive-dostime|archive-expunge|archive-extract-by-file|archive-extract-by-stdout|archive-extract-other-window|archive-extract|archive-file-name-handler|archive-find-type|archive-flag-deleted|archive-get-descr|archive-get-lineno|archive-get-marked|archive-int-to-mode|archive-l-e|archive-lzh-chgrp-entry|archive-lzh-chmod-entry|archive-lzh-chown-entry|archive-lzh-exe-extract|archive-lzh-exe-summarize|archive-lzh-extract|archive-lzh-ogm|archive-lzh-rename-entry|archive-lzh-resum|archive-lzh-summarize|archive-mark|archive-maybe-copy|archive-maybe-update|archive-mode-revert|archive-mode|archive-mouse-extract|archive-name|archive-next-line|archive-previous-line|archive-rar-exe-extract|archive-rar-exe-summarize|archive-rar-extract|archive-rar-summarize|archive-rename-entry|archive-resummarize|archive-set-buffer-as-visiting-file|archive-summarize-files|archive-summarize|archive-try-jka-compr|archive-undo|archive-unflag-backwards|archive-unflag|archive-unique-fname|archive-unixdate|archive-unixtime|archive-unmark-all-files|archive-view|archive-write-file-member|archive-write-file|archive-zip-chmod-entry|archive-zip-extract|archive-zip-summarize|archive-zip-write-file-member|archive-zoo-extract|archive-zoo-summarize|arp|array-backward-column|array-beginning-of-field|array-copy-backward|array-copy-column-backward|array-copy-column-forward|array-copy-down|array-copy-forward|array-copy-once-horizontally|array-copy-once-vertically|array-copy-row-down|array-copy-row-up|array-copy-to-cell|array-copy-to-column|array-copy-to-row|array-copy-up|array-current-column|array-current-row|array-cursor-in-array-range|array-display-local-variables|array-end-of-field|array-expand-rows|array-field-string|array-fill-rectangle|array-forward-column|array-goto-cell|array-make-template|array-maybe-scroll-horizontally|array-mode|array-move-one-column|array-move-one-row|array-move-to-cell|array-move-to-column|array-move-to-row|array-next-row|array-normalize-cursor|array-previous-row|array-reconfigure-rows|array-update-array-position|array-update-buffer-position|array-what-position|artist-2point-get-endpoint1|artist-2point-get-endpoint2|artist-2point-get-shapeinfo|artist-arrow-point-get-direction|artist-arrow-point-get-marker|artist-arrow-point-get-orig-char|artist-arrow-point-get-state|artist-arrow-point-set-state|artist-arrows|artist-backward-char|artist-calculate-new-char|artist-calculate-new-chars|artist-charlist-to-string|artist-clear-arrow-points|artist-clear-buffer|artist-compute-key-compl-table|artist-compute-line-char|artist-compute-popup-menu-table-sub|artist-compute-popup-menu-table|artist-compute-up-event-key|artist-coord-add-new-char|artist-coord-add-saved-char|artist-coord-get-new-char|artist-coord-get-saved-char|artist-coord-get-x|artist-coord-get-y|artist-coord-set-new-char|artist-coord-set-x|artist-coord-set-y|artist-coord-win-to-buf|artist-copy-generic|artist-copy-rect|artist-copy-square|artist-current-column|artist-current-line|artist-cut-rect|artist-cut-square|artist-direction-char|artist-direction-step-x|artist-direction-step-y|artist-do-nothing|artist-down-mouse-1|artist-down-mouse-3|artist-draw-circle|artist-draw-ellipse-general|artist-draw-ellipse-with-0-height|artist-draw-ellipse|artist-draw-line|artist-draw-rect|artist-draw-region-reset|artist-draw-region-trim-line-endings|artist-draw-sline|artist-draw-square|artist-eight-point|artist-ellipse-compute-fill-info|artist-ellipse-fill-info-add-center|artist-ellipse-generate-quadrant|artist-ellipse-mirror-quadrant|artist-ellipse-point-list-add-center|artist-ellipse-remove-0-fills|artist-endpoint-get-x|artist-endpoint-get-y|artist-erase-char|artist-erase-rect|artist-event-is-shifted|artist-fc-get-fn-from-symbol|artist-fc-get-fn|artist-fc-get-keyword|artist-fc-get-symbol|artist-fc-retrieve-from-symbol-sub|artist-fc-retrieve-from-symbol|artist-ff-get-rightmost-from-xy|artist-ff-is-bottommost-line|artist-ff-is-topmost-line|artist-ff-too-far-right|artist-figlet-choose-font|artist-figlet-get-extra-args|artist-figlet-get-font-list|artist-figlet-run|artist-figlet|artist-file-to-string|artist-fill-circle|artist-fill-ellipse|artist-fill-item-get-width|artist-fill-item-get-x|artist-fill-item-get-y|artist-fill-item-set-width|artist-fill-item-set-x|artist-fill-item-set-y|artist-fill-rect|artist-fill-square|artist-find-direction|artist-find-octant|artist-flood-fill|artist-forward-char|artist-funcall|artist-get-buffer-contents-at-xy|artist-get-char-at-xy-conv|artist-get-char-at-xy|artist-get-dfdx-init-coeff|artist-get-dfdy-init-coeff|artist-get-first-non-nil-op|artist-get-last-non-nil-op|artist-get-replacement-char|artist-get-x-step-q<0|artist-get-x-step-q>=0|artist-get-y-step-q<0|artist-get-y-step-q>=0|artist-go-get-arrow-pred-from-symbol|artist-go-get-arrow-pred|artist-go-get-arrow-set-fn-from-symbol|artist-go-get-arrow-set-fn|artist-go-get-desc|artist-go-get-draw-fn-from-symbol|artist-go-get-draw-fn|artist-go-get-draw-how-from-symbol|artist-go-get-draw-how|artist-go-get-exit-fn-from-symbol|artist-go-get-exit-fn|artist-go-get-fill-fn-from-symbol|artist-go-get-fill-fn|artist-go-get-fill-pred-from-symbol|artist-go-get-fill-pred|artist-go-get-init-fn-from-symbol|artist-go-get-init-fn|artist-go-get-interval-fn-from-symbol|artist-go-get-interval-fn|artist-go-get-keyword-from-symbol|artist-go-get-keyword|artist-go-get-mode-line-from-symbol|artist-go-get-mode-line|artist-go-get-prep-fill-fn-from-symbol|artist-go-get-prep-fill-fn|artist-go-get-shifted|artist-go-get-symbol-shift-sub|artist-go-get-symbol-shift|artist-go-get-symbol|artist-go-get-undraw-fn-from-symbol|artist-go-get-undraw-fn|artist-go-get-unshifted|artist-go-retrieve-from-symbol-sub|artist-go-retrieve-from-symbol|artist-intersection-char|artist-is-in-op-list-p|artist-key-do-continously-1point|artist-key-do-continously-2points|artist-key-do-continously-common)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:artist-key-do-continously-continously|artist-key-do-continously-poly|artist-key-draw-1point|artist-key-draw-2points|artist-key-draw-common|artist-key-draw-continously|artist-key-draw-poly|artist-key-set-point-1point|artist-key-set-point-2points|artist-key-set-point-common|artist-key-set-point-continously|artist-key-set-point-poly|artist-key-set-point|artist-key-undraw-1point|artist-key-undraw-2points|artist-key-undraw-common|artist-key-undraw-continously|artist-key-undraw-poly|artist-make-2point-object|artist-make-arrow-point|artist-make-endpoint|artist-make-prev-next-op-alist|artist-mn-get-items|artist-mn-get-title|artist-mode-exit|artist-mode-init|artist-mode-line-show-curr-operation|artist-mode-off|artist-mode|artist-modify-new-chars|artist-mouse-choose-operation|artist-mouse-draw-1point|artist-mouse-draw-2points|artist-mouse-draw-continously|artist-mouse-draw-poly|artist-move-to-xy|artist-mt-get-info-part|artist-mt-get-symbol-from-keyword-sub|artist-mt-get-symbol-from-keyword|artist-mt-get-tag|artist-new-coord|artist-new-fill-item|artist-next-line|artist-nil|artist-no-arrows|artist-no-rb-set-point1|artist-no-rb-set-point2|artist-no-rb-unset-point1|artist-no-rb-unset-point2|artist-no-rb-unset-points|artist-paste|artist-pen-line|artist-pen-reset-last-xy|artist-pen-set-arrow-points|artist-pen|artist-previous-line|artist-put-pixel|artist-rect-corners-squarify|artist-replace-char|artist-replace-chars|artist-replace-string|artist-save-chars-under-point-list|artist-save-chars-under-sline|artist-select-erase-char|artist-select-fill-char|artist-select-line-char|artist-select-next-op-in-list|artist-select-op-circle|artist-select-op-copy-rectangle|artist-select-op-copy-square|artist-select-op-cut-rectangle|artist-select-op-cut-square|artist-select-op-ellipse|artist-select-op-erase-char|artist-select-op-erase-rectangle|artist-select-op-flood-fill|artist-select-op-line|artist-select-op-paste|artist-select-op-pen-line|artist-select-op-poly-line|artist-select-op-rectangle|artist-select-op-spray-can|artist-select-op-spray-set-size|artist-select-op-square|artist-select-op-straight-line|artist-select-op-straight-poly-line|artist-select-op-text-overwrite|artist-select-op-text-see-thru|artist-select-op-vaporize-line|artist-select-op-vaporize-lines|artist-select-operation|artist-select-prev-op-in-list|artist-select-spray-chars|artist-set-arrow-points-for-2points|artist-set-arrow-points-for-poly|artist-set-pointer-shape|artist-shift-has-changed|artist-sline|artist-spray-clear-circle|artist-spray-get-interval|artist-spray-random-points|artist-spray-set-radius|artist-spray|artist-straight-calculate-length|artist-string-split|artist-string-to-charlist|artist-string-to-file|artist-submit-bug-report|artist-system|artist-t-if-fill-char-set|artist-t|artist-text-insert-common|artist-text-insert-overwrite|artist-text-insert-see-thru|artist-text-overwrite|artist-text-see-thru|artist-toggle-borderless-shapes|artist-toggle-first-arrow|artist-toggle-rubber-banding|artist-toggle-second-arrow|artist-toggle-trim-line-endings|artist-undraw-circle|artist-undraw-ellipse|artist-undraw-line|artist-undraw-rect|artist-undraw-sline|artist-undraw-square|artist-unintersection-char|artist-uniq|artist-update-display|artist-update-pointer-shape|artist-vap-find-endpoint|artist-vap-find-endpoints-horiz|artist-vap-find-endpoints-nwse|artist-vap-find-endpoints-swne|artist-vap-find-endpoints-vert|artist-vap-find-endpoints|artist-vap-group-in-pairs|artist-vaporize-by-endpoints|artist-vaporize-line|artist-vaporize-lines|asm-calculate-indentation|asm-colon|asm-comment|asm-indent-line|asm-mode|asm-newline|assert|assoc\\\\*|assoc-if-not|assoc-if|assoc-ignore-case|assoc-ignore-representation|async-shell-command|atomic-change-group|auth-source--aget|auth-source--aput-1|auth-source--aput|auth-source-backend-child-p|auth-source-backend-list-p|auth-source-backend-p|auth-source-backend-parse-parameters|auth-source-backend-parse|auth-source-backend|auth-source-current-line|auth-source-delete|auth-source-do-debug|auth-source-do-trivia|auth-source-do-warn|auth-source-ensure-strings|auth-source-epa-extract-gpg-token|auth-source-epa-make-gpg-token|auth-source-forget\\\\+|auth-source-forget-all-cached|auth-source-forget|auth-source-format-cache-entry|auth-source-format-prompt|auth-source-macos-keychain-create|auth-source-macos-keychain-result-append|auth-source-macos-keychain-search-items|auth-source-macos-keychain-search|auth-source-netrc-create|auth-source-netrc-element-or-first|auth-source-netrc-normalize|auth-source-netrc-parse-entries|auth-source-netrc-parse-next-interesting|auth-source-netrc-parse-one|auth-source-netrc-parse|auth-source-netrc-saver|auth-source-netrc-search|auth-source-pick-first-password|auth-source-plstore-create|auth-source-plstore-search|auth-source-read-char-choice|auth-source-recall|auth-source-remember|auth-source-remembered-p|auth-source-search-backends|auth-source-search-collection|auth-source-search|auth-source-secrets-create|auth-source-secrets-listify-pattern|auth-source-secrets-search|auth-source-specmatchp|auth-source-token-passphrase-callback-function|auth-source-user-and-password|auth-source-user-or-password|auto-coding-alist-lookup|auto-coding-regexp-alist-lookup|auto-compose-chars|auto-composition-mode|auto-compression-mode|auto-encryption-mode|auto-fill-mode|auto-image-file-mode|auto-insert-mode|auto-insert|auto-lower-mode|auto-raise-mode|auto-revert-active-p|auto-revert-buffers|auto-revert-handler|auto-revert-mode|auto-revert-notify-add-watch|auto-revert-notify-handler|auto-revert-notify-rm-watch|auto-revert-set-timer|auto-revert-tail-handler|auto-revert-tail-mode|autoarg-kp-digit-argument|autoarg-kp-mode|autoarg-mode|autoarg-terminate|autoconf-current-defun-function|autoconf-mode|autodoc-font-lock-keywords|autodoc-font-lock-line-markup|autoload-coding-system|autoload-rubric|avl-tree--check-node|avl-tree--check|avl-tree--cmpfun--cmacro|avl-tree--cmpfun|avl-tree--create--cmacro|avl-tree--create|avl-tree--del-balance|avl-tree--dir-to-sign|avl-tree--do-copy|avl-tree--do-del-internal|avl-tree--do-delete|avl-tree--do-enter|avl-tree--dummyroot--cmacro|avl-tree--dummyroot|avl-tree--enter-balance|avl-tree--mapc|avl-tree--node-balance--cmacro|avl-tree--node-balance|avl-tree--node-branch|avl-tree--node-create--cmacro|avl-tree--node-create|avl-tree--node-data--cmacro|avl-tree--node-data|avl-tree--node-left--cmacro|avl-tree--node-left|avl-tree--node-right--cmacro|avl-tree--node-right|avl-tree--root|avl-tree--sign-to-dir|avl-tree--stack-create|avl-tree--stack-p--cmacro|avl-tree--stack-p|avl-tree--stack-repopulate|avl-tree--stack-reverse--cmacro|avl-tree--stack-reverse|avl-tree--stack-store--cmacro|avl-tree--stack-store|avl-tree--switch-dir|avl-tree-clear|avl-tree-compare-function|avl-tree-copy|avl-tree-create|avl-tree-delete|avl-tree-empty|avl-tree-enter|avl-tree-first|avl-tree-flatten|avl-tree-last|avl-tree-map|avl-tree-mapc|avl-tree-mapcar|avl-tree-mapf|avl-tree-member-p|avl-tree-member|avl-tree-p--cmacro|avl-tree-p|avl-tree-size|avl-tree-stack-empty-p|avl-tree-stack-first|avl-tree-stack-p|avl-tree-stack-pop|avl-tree-stack|awk-mode|babel-as-string|background-color-at-point|backquote-delay-process|backquote-list\\\\*-function|backquote-list\\\\*-macro|backquote-list\\\\*|backquote-listify|backquote-process|backquote|backtrace--locals|backtrace-eval|backup-buffer-copy|backup-extract-version|backward-delete-char|backward-ifdef|backward-kill-paragraph|backward-kill-sentence|backward-kill-sexp|backward-kill-word|backward-page|backward-paragraph|backward-sentence|backward-text-line|backward-up-list|bad-package-check|balance-windows-1|balance-windows-2|balance-windows-area-adjust|basic-save-buffer-1|basic-save-buffer-2|basic-save-buffer|bat-cmd-help|bat-mode|bat-run-args|bat-run|bat-template|batch-byte-compile-file|batch-byte-compile-if-not-done|batch-byte-recompile-directory|batch-info-validate|batch-texinfo-format|batch-titdic-convert|batch-unrmail|batch-update-autoloads|battery-bsd-apm|battery-format|battery-linux-proc-acpi|battery-linux-proc-apm|battery-linux-sysfs|battery-pmset|battery-search-for-one-match-in-files|battery-update-handler|battery-update|battery|bb-bol|bb-done|bb-down|bb-eol|bb-goto|bb-init-board|bb-insert-board|bb-left|bb-outside-box|bb-place-ball|bb-right|bb-romp|bb-show-bogus-balls-2|bb-show-bogus-balls|bb-trace-ray-2|bb-trace-ray|bb-up|bb-update-board|beginning-of-buffer-other-window|beginning-of-defun-raw|beginning-of-icon-defun|beginning-of-line-text|beginning-of-sexp|beginning-of-thing|beginning-of-visual-line|benchmark-elapse|benchmark-run-compiled|benchmark-run|benchmark|bib-capitalize-title-region|bib-capitalize-title|bib-find-key|bib-mode|bibtex-Article|bibtex-Book|bibtex-BookInBook|bibtex-Booklet|bibtex-Collection|bibtex-InBook|bibtex-InCollection|bibtex-InProceedings|bibtex-InReference|bibtex-MVBook|bibtex-MVCollection|bibtex-MVProceedings|bibtex-MVReference|bibtex-Manual|bibtex-MastersThesis|bibtex-Misc|bibtex-Online|bibtex-Patent|bibtex-Periodical|bibtex-PhdThesis|bibtex-Preamble|bibtex-Proceedings|bibtex-Reference|bibtex-Report|bibtex-String|bibtex-SuppBook|bibtex-SuppCollection|bibtex-SuppPeriodical|bibtex-TechReport|bibtex-Thesis|bibtex-Unpublished|bibtex-autofill-entry|bibtex-autokey-abbrev|bibtex-autokey-demangle-name|bibtex-autokey-demangle-title|bibtex-autokey-get-field|bibtex-autokey-get-names|bibtex-autokey-get-title|bibtex-autokey-get-year|bibtex-beginning-first-field|bibtex-beginning-of-entry|bibtex-beginning-of-field|bibtex-beginning-of-first-entry|bibtex-button-action|bibtex-button|bibtex-clean-entry|bibtex-complete-crossref-cleanup|bibtex-complete-string-cleanup|bibtex-complete|bibtex-completion-at-point-function|bibtex-convert-alien|bibtex-copy-entry-as-kill|bibtex-copy-field-as-kill|bibtex-copy-summary-as-kill|bibtex-count-entries|bibtex-current-line|bibtex-delete-whitespace|bibtex-display-entries|bibtex-dist|bibtex-edit-menu|bibtex-empty-field|bibtex-enclosing-field|bibtex-end-of-entry|bibtex-end-of-field|bibtex-end-of-name-in-field|bibtex-end-of-string|bibtex-end-of-text-in-field|bibtex-end-of-text-in-string|bibtex-entry-alist|bibtex-entry-index|bibtex-entry-left-delimiter|bibtex-entry-right-delimiter|bibtex-entry-update|bibtex-entry|bibtex-field-left-delimiter|bibtex-field-list|bibtex-field-re-init|bibtex-field-right-delimiter|bibtex-fill-entry|bibtex-fill-field-bounds|bibtex-fill-field|bibtex-find-crossref|bibtex-find-entry|bibtex-find-text-internal|bibtex-find-text|bibtex-flash-head|bibtex-font-lock-cite|bibtex-font-lock-crossref|bibtex-font-lock-url|bibtex-format-entry|bibtex-generate-autokey|bibtex-global-key-alist|bibtex-goto-line|bibtex-init-sort-entry-class-alist|bibtex-initialize|bibtex-insert-kill|bibtex-ispell-abstract|bibtex-ispell-entry|bibtex-key-in-head|bibtex-kill-entry|bibtex-kill-field|bibtex-lessp|bibtex-make-field|bibtex-make-optional-field|bibtex-map-entries|bibtex-mark-entry|bibtex-mode|bibtex-move-outside-of-entry|bibtex-name-in-field|bibtex-narrow-to-entry|bibtex-next-field|bibtex-parse-association|bibtex-parse-buffers-stealthily|bibtex-parse-entry|bibtex-parse-field-name|bibtex-parse-field-string|bibtex-parse-field-text|bibtex-parse-field|bibtex-parse-keys|bibtex-parse-preamble|bibtex-parse-string-postfix|bibtex-parse-string-prefix|bibtex-parse-string|bibtex-parse-strings|bibtex-pop-next|bibtex-pop-previous|bibtex-pop|bibtex-prepare-new-entry|bibtex-print-help-message|bibtex-progress-message|bibtex-read-key|bibtex-read-string-key|bibtex-realign|bibtex-reference-key-in-string|bibtex-reformat|bibtex-remove-OPT-or-ALT|bibtex-remove-delimiters|bibtex-reposition-window|bibtex-search-backward-field|bibtex-search-crossref|bibtex-search-entries|bibtex-search-entry|bibtex-search-forward-field|bibtex-search-forward-string|bibtex-set-dialect|bibtex-skip-to-valid-entry|bibtex-sort-buffer|bibtex-start-of-field|bibtex-start-of-name-in-field|bibtex-start-of-text-in-field|bibtex-start-of-text-in-string|bibtex-string-files-init|bibtex-string=|bibtex-strings|bibtex-style-calculate-indentation|bibtex-style-indent-line|bibtex-style-mode|bibtex-summary|bibtex-text-in-field-bounds|bibtex-text-in-field|bibtex-text-in-string|bibtex-type-in-head|bibtex-url|bibtex-valid-entry|bibtex-validate-globally|bibtex-validate|bibtex-vec-incr|bibtex-vec-push|bibtex-yank-pop|bibtex-yank|bidi-find-overridden-directionality)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:bidi-resolved-levels|binary-overwrite-mode|bindat--length-group|bindat--pack-group|bindat--pack-item|bindat--pack-u16|bindat--pack-u16r|bindat--pack-u24|bindat--pack-u24r|bindat--pack-u32|bindat--pack-u32r|bindat--pack-u8|bindat--unpack-group|bindat--unpack-item|bindat--unpack-u16|bindat--unpack-u16r|bindat--unpack-u24|bindat--unpack-u24r|bindat--unpack-u32|bindat--unpack-u32r|bindat--unpack-u8|bindat-format-vector|bindat-vector-to-dec|bindat-vector-to-hex|bindings--define-key|binhex-char-int|binhex-char-map|binhex-decode-region-external|binhex-decode-region-internal|binhex-decode-region|binhex-header|binhex-insert-char|binhex-push-char|binhex-string-big-endian|binhex-string-little-endian|binhex-update-crc|binhex-verify-crc|blackbox-mode|blackbox-redefine-key|blackbox|blink-cursor-check|blink-cursor-end|blink-cursor-mode|blink-cursor-start|blink-cursor-suspend|blink-cursor-timer-function|blink-matching-check-mismatch|blink-paren-post-self-insert-function|block|bookmark--jump-via|bookmark-alist-from-buffer|bookmark-all-names|bookmark-bmenu-1-window|bookmark-bmenu-2-window|bookmark-bmenu-any-marks|bookmark-bmenu-backup-unmark|bookmark-bmenu-bookmark|bookmark-bmenu-delete-backwards|bookmark-bmenu-delete|bookmark-bmenu-edit-annotation|bookmark-bmenu-ensure-position|bookmark-bmenu-execute-deletions|bookmark-bmenu-filter-alist-by-regexp|bookmark-bmenu-goto-bookmark|bookmark-bmenu-hide-filenames|bookmark-bmenu-list|bookmark-bmenu-load|bookmark-bmenu-locate|bookmark-bmenu-mark|bookmark-bmenu-mode|bookmark-bmenu-other-window-with-mouse|bookmark-bmenu-other-window|bookmark-bmenu-relocate|bookmark-bmenu-rename|bookmark-bmenu-save|bookmark-bmenu-search|bookmark-bmenu-select|bookmark-bmenu-set-header|bookmark-bmenu-show-all-annotations|bookmark-bmenu-show-annotation|bookmark-bmenu-show-filenames|bookmark-bmenu-surreptitiously-rebuild-list|bookmark-bmenu-switch-other-window|bookmark-bmenu-this-window|bookmark-bmenu-toggle-filenames|bookmark-bmenu-unmark|bookmark-buffer-file-name|bookmark-buffer-name|bookmark-completing-read|bookmark-default-annotation-text|bookmark-default-handler|bookmark-delete|bookmark-edit-annotation-mode|bookmark-edit-annotation|bookmark-exit-hook-internal|bookmark-get-annotation|bookmark-get-bookmark-record|bookmark-get-bookmark|bookmark-get-filename|bookmark-get-front-context-string|bookmark-get-handler|bookmark-get-position|bookmark-get-rear-context-string|bookmark-grok-file-format-version|bookmark-handle-bookmark|bookmark-import-new-list|bookmark-insert-annotation|bookmark-insert-file-format-version-stamp|bookmark-insert-location|bookmark-insert|bookmark-jump-noselect|bookmark-jump-other-window|bookmark-jump|bookmark-kill-line|bookmark-load|bookmark-locate|bookmark-location|bookmark-make-record-default|bookmark-make-record|bookmark-map|bookmark-maybe-historicize-string|bookmark-maybe-load-default-file|bookmark-maybe-message|bookmark-maybe-rename|bookmark-maybe-sort-alist|bookmark-maybe-upgrade-file-format|bookmark-menu-popup-paned-menu|bookmark-name-from-full-record|bookmark-prop-get|bookmark-prop-set|bookmark-relocate|bookmark-rename|bookmark-save|bookmark-send-edited-annotation|bookmark-set-annotation|bookmark-set-filename|bookmark-set-front-context-string|bookmark-set-name|bookmark-set-position|bookmark-set-rear-context-string|bookmark-set|bookmark-show-all-annotations|bookmark-show-annotation|bookmark-store|bookmark-time-to-save-p|bookmark-unload-function|bookmark-upgrade-file-format-from-0|bookmark-upgrade-version-0-alist|bookmark-write-file|bookmark-write|bookmark-yank-word|bool-vector|bound-and-true-p|bounds-of-thing-at-point|bovinate|bovine-grammar-mode|browse-url-at-mouse|browse-url-at-point|browse-url-can-use-xdg-open|browse-url-cci|browse-url-chromium|browse-url-default-browser|browse-url-default-macosx-browser|browse-url-default-windows-browser|browse-url-delete-temp-file|browse-url-elinks-new-window|browse-url-elinks-sentinel|browse-url-elinks|browse-url-emacs-display|browse-url-emacs|browse-url-encode-url|browse-url-epiphany-sentinel|browse-url-epiphany|browse-url-file-url|browse-url-firefox-sentinel|browse-url-firefox|browse-url-galeon-sentinel|browse-url-galeon|browse-url-generic|browse-url-gnome-moz|browse-url-interactive-arg|browse-url-kde|browse-url-mail|browse-url-maybe-new-window|browse-url-mosaic|browse-url-mozilla-sentinel|browse-url-mozilla|browse-url-netscape-reload|browse-url-netscape-send|browse-url-netscape-sentinel|browse-url-netscape|browse-url-of-buffer|browse-url-of-dired-file|browse-url-of-file|browse-url-of-region|browse-url-process-environment|browse-url-text-emacs|browse-url-text-xterm|browse-url-url-at-point|browse-url-url-encode-chars|browse-url-w3-gnudoit|browse-url-w3|browse-url-xdg-open|browse-url|browse-web|bs--configuration-name-for-prefix-arg|bs--create-header-line|bs--current-buffer|bs--current-config-message|bs--down|bs--format-aux|bs--get-file-name|bs--get-marked-string|bs--get-mode-name|bs--get-modified-string|bs--get-name-length|bs--get-name|bs--get-readonly-string|bs--get-size-string|bs--get-value|bs--goto-current-buffer|bs--insert-one-entry|bs--make-header-match-string|bs--mark-unmark|bs--nth-wrapper|bs--redisplay|bs--remove-hooks|bs--restore-window-config|bs--set-toggle-to-show|bs--set-window-height|bs--show-config-message|bs--show-header|bs--show-with-configuration|bs--sort-by-filename|bs--sort-by-mode|bs--sort-by-name|bs--sort-by-size|bs--track-window-changes|bs--up|bs--update-current-line|bs-abort|bs-apply-sort-faces|bs-buffer-list|bs-buffer-sort|bs-bury-buffer|bs-clear-modified|bs-config--all-intern-last|bs-config--all|bs-config--files-and-scratch|bs-config--only-files|bs-config-clear|bs-customize|bs-cycle-next|bs-cycle-previous|bs-define-sort-function|bs-delete-backward|bs-delete|bs-down|bs-help|bs-kill|bs-mark-current|bs-message-without-log|bs-mode|bs-mouse-select-other-frame|bs-mouse-select|bs-next-buffer|bs-next-config-aux|bs-next-config|bs-previous-buffer|bs-refresh|bs-save|bs-select-in-one-window|bs-select-next-configuration|bs-select-other-frame|bs-select-other-window|bs-select|bs-set-configuration-and-refresh|bs-set-configuration|bs-set-current-buffer-to-show-always|bs-set-current-buffer-to-show-never|bs-show-in-buffer|bs-show-sorted|bs-show|bs-sort-buffer-interns-are-last|bs-tmp-select-other-window|bs-toggle-current-to-show|bs-toggle-readonly|bs-toggle-show-all|bs-unload-function|bs-unmark-current|bs-up|bs-view|bs-visit-tags-table|bs-visits-non-file|bubbles--char-at|bubbles--col|bubbles--colors|bubbles--compute-offsets|bubbles--count|bubbles--empty-char|bubbles--game-over|bubbles--goto|bubbles--grid-height|bubbles--grid-width|bubbles--initialize-faces|bubbles--initialize-images|bubbles--initialize|bubbles--mark-direct-neighbors|bubbles--mark-neighborhood|bubbles--neighborhood-available|bubbles--remove-overlays|bubbles--reset-score|bubbles--row|bubbles--set-faces|bubbles--shift-mode|bubbles--shift|bubbles--show-images|bubbles--show-scores|bubbles--update-faces-or-images|bubbles--update-neighborhood-score|bubbles--update-score|bubbles-customize|bubbles-mode|bubbles-plop|bubbles-quit|bubbles-save-settings|bubbles-set-game-difficult|bubbles-set-game-easy|bubbles-set-game-hard|bubbles-set-game-medium|bubbles-set-game-userdefined|bubbles-set-graphics-theme-ascii|bubbles-set-graphics-theme-balls|bubbles-set-graphics-theme-circles|bubbles-set-graphics-theme-diamonds|bubbles-set-graphics-theme-emacs|bubbles-set-graphics-theme-squares|bubbles-undo|bubbles|buffer-face-mode-invoke|buffer-face-mode|buffer-face-set|buffer-face-toggle|buffer-has-markers-at|buffer-menu-open|buffer-menu-other-window|buffer-menu|buffer-stale--default-function|buffer-substring--filter|buffer-substring-with-bidi-context|bug-reference-fontify|bug-reference-mode|bug-reference-prog-mode|bug-reference-push-button|bug-reference-set-overlay-properties|bug-reference-unfontify|build-mail-abbrevs|build-mail-aliases|bury-buffer-internal|butterfly|button--area-button-p|button--area-button-string|button-category-symbol|byte-code|byte-compile--declare-var|byte-compile--reify-function|byte-compile-abbreviate-file|byte-compile-and-folded|byte-compile-and-recursion|byte-compile-and|byte-compile-annotate-call-tree|byte-compile-arglist-signature-string|byte-compile-arglist-signature|byte-compile-arglist-signatures-congruent-p|byte-compile-arglist-vars|byte-compile-arglist-warn|byte-compile-associative|byte-compile-autoload|byte-compile-backward-char|byte-compile-backward-word|byte-compile-bind|byte-compile-body-do-effect|byte-compile-body|byte-compile-butlast|byte-compile-callargs-warn|byte-compile-catch|byte-compile-char-before|byte-compile-check-lambda-list|byte-compile-check-variable|byte-compile-cl-file-p|byte-compile-cl-warn|byte-compile-close-variables|byte-compile-concat|byte-compile-cond|byte-compile-condition-case--new|byte-compile-condition-case--old|byte-compile-condition-case|byte-compile-constant|byte-compile-constants-vector|byte-compile-defvar|byte-compile-delete-first|byte-compile-dest-file|byte-compile-disable-warning|byte-compile-discard|byte-compile-dynamic-variable-bind|byte-compile-dynamic-variable-op|byte-compile-enable-warning|byte-compile-eval-before-compile|byte-compile-eval|byte-compile-fdefinition|byte-compile-file-form-autoload|byte-compile-file-form-custom-declare-variable|byte-compile-file-form-defalias|byte-compile-file-form-define-abbrev-table|byte-compile-file-form-defmumble|byte-compile-file-form-defvar|byte-compile-file-form-eval|byte-compile-file-form-progn|byte-compile-file-form-require|byte-compile-file-form-with-no-warnings|byte-compile-file-form|byte-compile-find-bound-condition|byte-compile-find-cl-functions|byte-compile-fix-header|byte-compile-flush-pending|byte-compile-form-do-effect|byte-compile-form-make-variable-buffer-local|byte-compile-form|byte-compile-format-warn|byte-compile-from-buffer|byte-compile-fset|byte-compile-funcall|byte-compile-function-form|byte-compile-function-warn|byte-compile-get-closed-var|byte-compile-get-constant|byte-compile-goto-if|byte-compile-goto|byte-compile-if|byte-compile-indent-to|byte-compile-inline-expand|byte-compile-inline-lapcode|byte-compile-insert-header|byte-compile-insert|byte-compile-keep-pending|byte-compile-lambda-form|byte-compile-lambda|byte-compile-lapcode|byte-compile-let|byte-compile-list|byte-compile-log-1|byte-compile-log-file|byte-compile-log-lap-1|byte-compile-log-lap|byte-compile-log-warning|byte-compile-log|byte-compile-macroexpand-declare-function|byte-compile-make-args-desc|byte-compile-make-closure|byte-compile-make-lambda-lexenv|byte-compile-make-obsolete-variable|byte-compile-make-tag|byte-compile-make-variable-buffer-local|byte-compile-maybe-guarded|byte-compile-minus|byte-compile-nconc|byte-compile-negated|byte-compile-negation-optimizer|byte-compile-nilconstp|byte-compile-no-args|byte-compile-no-warnings|byte-compile-nogroup-warn|byte-compile-noop|byte-compile-normal-call|byte-compile-not-lexical-var-p|byte-compile-one-arg|byte-compile-one-or-two-args|byte-compile-or-recursion|byte-compile-or|byte-compile-out-tag|byte-compile-out-toplevel|byte-compile-out|byte-compile-output-as-comment|byte-compile-output-docform|byte-compile-output-file-form|byte-compile-preprocess|byte-compile-print-syms|byte-compile-prog1|byte-compile-prog2|byte-compile-progn|byte-compile-push-binding-init|byte-compile-push-bytecode-const2|byte-compile-push-bytecodes|byte-compile-push-constant|byte-compile-quo|byte-compile-quote|byte-compile-recurse-toplevel|byte-compile-refresh-preloaded|byte-compile-report-error|byte-compile-report-ops|byte-compile-save-current-buffer|byte-compile-save-excursion|byte-compile-save-restriction|byte-compile-set-default|byte-compile-set-symbol-position|byte-compile-setq-default|byte-compile-setq|byte-compile-sexp|byte-compile-stack-adjustment|byte-compile-stack-ref|byte-compile-stack-set|byte-compile-subr-wrong-args|byte-compile-three-args|byte-compile-top-level-body|byte-compile-top-level|byte-compile-toplevel-file-form|byte-compile-trueconstp|byte-compile-two-args|byte-compile-two-or-three-args|byte-compile-unbind|byte-compile-unfold-bcf|byte-compile-unfold-lambda|byte-compile-unwind-protect|byte-compile-variable-ref)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:byte-compile-variable-set|byte-compile-warn-about-unresolved-functions|byte-compile-warn-obsolete|byte-compile-warn|byte-compile-warning-enabled-p|byte-compile-warning-prefix|byte-compile-warning-series|byte-compile-while|byte-compile-zero-or-one-arg|byte-compiler-base-file-name|byte-decompile-bytecode-1|byte-decompile-bytecode|byte-defop-compiler-1|byte-defop-compiler|byte-defop|byte-extrude-byte-code-vectors|byte-force-recompile|byte-optimize-all-constp|byte-optimize-and|byte-optimize-apply|byte-optimize-approx-equal|byte-optimize-associative-math|byte-optimize-binary-predicate|byte-optimize-body|byte-optimize-cond|byte-optimize-delay-constants-math|byte-optimize-divide|byte-optimize-form-code-walker|byte-optimize-form|byte-optimize-funcall|byte-optimize-identity|byte-optimize-if|byte-optimize-inline-handler|byte-optimize-lapcode|byte-optimize-letX|byte-optimize-logmumble|byte-optimize-minus|byte-optimize-multiply|byte-optimize-nonassociative-math|byte-optimize-nth|byte-optimize-nthcdr|byte-optimize-or|byte-optimize-plus|byte-optimize-predicate|byte-optimize-quote|byte-optimize-set|byte-optimize-while|byte-recompile-file|byteorder|c\\\\+\\\\+-font-lock-keywords-2|c\\\\+\\\\+-font-lock-keywords-3|c\\\\+\\\\+-font-lock-keywords|c\\\\+\\\\+-mode|c--macroexpand-all|c-add-class-syntax|c-add-language|c-add-stmt-syntax|c-add-style|c-add-syntax|c-add-type|c-advise-fl-for-region|c-after-change-check-<>-operators|c-after-change|c-after-conditional|c-after-font-lock-init|c-after-special-operator-id|c-after-statement-terminator-p|c-append-backslashes-forward|c-append-lower-brace-pair-to-state-cache|c-append-syntax|c-append-to-state-cache|c-ascertain-following-literal|c-ascertain-preceding-literal|c-at-expression-start-p|c-at-macro-vsemi-p|c-at-statement-start-p|c-at-toplevel-p|c-at-vsemi-p|c-awk-menu|c-back-over-illiterals|c-back-over-member-initializer-braces|c-back-over-member-initializers|c-backslash-region|c-backward-<>-arglist|c-backward-colon-prefixed-type|c-backward-comments|c-backward-conditional|c-backward-into-nomenclature|c-backward-over-enum-header|c-backward-sexp|c-backward-single-comment|c-backward-sws|c-backward-syntactic-ws|c-backward-to-block-anchor|c-backward-to-decl-anchor|c-backward-to-nth-BOF-\\\\{|c-backward-token-1|c-backward-token-2|c-basic-common-init|c-before-change-check-<>-operators|c-before-change|c-before-hack-hook|c-beginning-of-current-token|c-beginning-of-decl-1|c-beginning-of-defun-1|c-beginning-of-defun|c-beginning-of-inheritance-list|c-beginning-of-macro|c-beginning-of-sentence-in-comment|c-beginning-of-sentence-in-string|c-beginning-of-statement-1|c-beginning-of-statement|c-beginning-of-syntax|c-benign-error|c-bind-special-erase-keys|c-block-in-arglist-dwim|c-bos-pop-state-and-retry|c-bos-pop-state|c-bos-push-state|c-bos-report-error|c-bos-restore-pos|c-bos-save-error-info|c-bos-save-pos|c-brace-anchor-point|c-brace-newlines|c-c\\\\+\\\\+-menu|c-c-menu|c-calc-comment-indent|c-calc-offset|c-calculate-state|c-change-set-fl-decl-start|c-cheap-inside-bracelist-p|c-check-type|c-clear-<-pair-props-if-match-after|c-clear-<-pair-props|c-clear-<>-pair-props|c-clear->-pair-props-if-match-before|c-clear->-pair-props|c-clear-c-type-property|c-clear-char-properties|c-clear-char-property-with-value-function|c-clear-char-property-with-value|c-clear-char-property|c-clear-cpp-delimiters|c-clear-found-types|c-collect-line-comments|c-comment-indent|c-comment-line-break-function|c-comment-out-cpps|c-common-init|c-compose-keywords-list|c-concat-separated|c-constant-symbol|c-context-line-break|c-context-open-line|c-context-set-fl-decl-start|c-count-cfss|c-cpp-define-name|c-crosses-statement-barrier-p|c-debug-add-face|c-debug-parse-state-double-cons|c-debug-parse-state|c-debug-put-decl-spot-faces|c-debug-remove-decl-spot-faces|c-debug-remove-face|c-debug-sws-msg|c-declaration-limits|c-declare-lang-variables|c-default-value-sentence-end|c-define-abbrev-table|c-define-lang-constant|c-defun-name|c-delete-and-extract-region|c-delete-backslashes-forward|c-delete-overlay|c-determine-\\\\+ve-limit|c-determine-limit-get-base|c-determine-limit|c-do-auto-fill|c-down-conditional-with-else|c-down-conditional|c-down-list-backward|c-down-list-forward|c-echo-parsing-error|c-electric-backspace|c-electric-brace|c-electric-colon|c-electric-continued-statement|c-electric-delete-forward|c-electric-delete|c-electric-indent-local-mode-hook|c-electric-indent-mode-hook|c-electric-lt-gt|c-electric-paren|c-electric-pound|c-electric-semi&comma|c-electric-slash|c-electric-star|c-end-of-current-token|c-end-of-decl-1|c-end-of-defun-1|c-end-of-defun|c-end-of-macro|c-end-of-sentence-in-comment|c-end-of-sentence-in-string|c-end-of-statement|c-evaluate-offset|c-extend-after-change-region|c-extend-font-lock-region-for-macros|c-extend-region-for-CPP|c-face-name-p|c-fdoc-shift-type-backward|c-fill-paragraph|c-find-assignment-for-mode|c-find-decl-prefix-search|c-find-decl-spots|c-find-invalid-doc-markup|c-fn-region-is-active-p|c-font-lock-<>-arglists|c-font-lock-c\\\\+\\\\+-new|c-font-lock-complex-decl-prepare|c-font-lock-declarations|c-font-lock-declarators|c-font-lock-doc-comments|c-font-lock-enclosing-decls|c-font-lock-enum-tail|c-font-lock-fontify-region|c-font-lock-init|c-font-lock-invalid-string|c-font-lock-keywords-2|c-font-lock-keywords-3|c-font-lock-keywords|c-font-lock-labels|c-font-lock-objc-method|c-font-lock-objc-methods|c-fontify-recorded-types-and-refs|c-fontify-types-and-refs|c-forward-<>-arglist-recur|c-forward-<>-arglist|c-forward-annotation|c-forward-comments|c-forward-conditional|c-forward-decl-or-cast-1|c-forward-id-comma-list|c-forward-into-nomenclature|c-forward-keyword-clause|c-forward-keyword-prefixed-id|c-forward-label|c-forward-name|c-forward-objc-directive|c-forward-over-cpp-define-id|c-forward-over-illiterals|c-forward-sexp|c-forward-single-comment|c-forward-sws|c-forward-syntactic-ws|c-forward-to-cpp-define-body|c-forward-to-nth-EOF-\\\\}|c-forward-token-1|c-forward-token-2|c-forward-type|c-get-cache-scan-pos|c-get-char-property|c-get-current-file|c-get-lang-constant|c-get-offset|c-get-style-variables|c-get-syntactic-indentation|c-gnu-impose-minimum|c-go-down-list-backward|c-go-down-list-forward|c-go-list-backward|c-go-list-forward|c-go-up-list-backward|c-go-up-list-forward|c-got-face-at|c-guess-accumulate-offset|c-guess-accumulate|c-guess-basic-syntax|c-guess-buffer-no-install|c-guess-buffer|c-guess-continued-construct|c-guess-current-offset|c-guess-dump-accumulator|c-guess-dump-guessed-style|c-guess-dump-guessed-values|c-guess-empty-line-p|c-guess-examine|c-guess-fill-prefix|c-guess-guess|c-guess-guessed-syntactic-symbols|c-guess-install|c-guess-make-basic-offset|c-guess-make-offsets-alist|c-guess-make-style|c-guess-merge-offsets-alists|c-guess-no-install|c-guess-region-no-install|c-guess-region|c-guess-reset-accumulator|c-guess-sort-accumulator|c-guess-style-name|c-guess-symbolize-integer|c-guess-symbolize-offsets-alist|c-guess-view-mark-guessed-entries|c-guess-view-reorder-offsets-alist-in-style|c-guess-view|c-guess|c-hungry-backspace|c-hungry-delete-backwards|c-hungry-delete-forward|c-hungry-delete|c-idl-menu|c-in-comment-line-prefix-p|c-in-function-trailer-p|c-in-gcc-asm-p|c-in-knr-argdecl|c-in-literal|c-in-method-def-p|c-indent-command|c-indent-defun|c-indent-exp|c-indent-line-or-region|c-indent-line|c-indent-multi-line-block|c-indent-new-comment-line|c-indent-one-line-block|c-indent-region|c-init-language-vars-for|c-initialize-builtin-style|c-initialize-cc-mode|c-inside-bracelist-p|c-int-to-char|c-intersect-lists|c-invalidate-find-decl-cache|c-invalidate-macro-cache|c-invalidate-state-cache-1|c-invalidate-state-cache|c-invalidate-sws-region-after|c-java-menu|c-just-after-func-arglist-p|c-keep-region-active|c-keyword-member|c-keyword-sym|c-lang-const|c-lang-defconst-eval-immediately|c-lang-defconst|c-lang-major-mode-is|c-langelem-2nd-pos|c-langelem-col|c-langelem-pos|c-langelem-sym|c-last-command-char|c-least-enclosing-brace|c-leave-cc-mode-mode|c-lineup-C-comments|c-lineup-ObjC-method-args-2|c-lineup-ObjC-method-args|c-lineup-ObjC-method-call-colons|c-lineup-ObjC-method-call|c-lineup-after-whitesmith-blocks|c-lineup-argcont-scan|c-lineup-argcont|c-lineup-arglist-close-under-paren|c-lineup-arglist-intro-after-paren|c-lineup-arglist-operators|c-lineup-arglist|c-lineup-assignments|c-lineup-cascaded-calls|c-lineup-close-paren|c-lineup-comment|c-lineup-cpp-define|c-lineup-dont-change|c-lineup-gcc-asm-reg|c-lineup-gnu-DEFUN-intro-cont|c-lineup-inexpr-block|c-lineup-java-inher|c-lineup-java-throws|c-lineup-knr-region-comment|c-lineup-math|c-lineup-multi-inher|c-lineup-respect-col-0|c-lineup-runin-statements|c-lineup-streamop|c-lineup-string-cont|c-lineup-template-args|c-lineup-topmost-intro-cont|c-lineup-whitesmith-in-block|c-list-found-types|c-literal-limits-fast|c-literal-limits|c-literal-type|c-looking-at-bos|c-looking-at-decl-block|c-looking-at-inexpr-block-backward|c-looking-at-inexpr-block|c-looking-at-non-alphnumspace|c-looking-at-special-brace-list|c-lookup-lists|c-macro-display-buffer|c-macro-expand|c-macro-expansion|c-macro-is-genuine-p|c-macro-vsemi-status-unknown-p|c-major-mode-is|c-make-bare-char-alt|c-make-font-lock-BO-decl-search-function|c-make-font-lock-context-search-function|c-make-font-lock-extra-types-blurb|c-make-font-lock-search-form|c-make-font-lock-search-function|c-make-inherited-keymap|c-make-inverse-face|c-make-keywords-re|c-make-macro-with-semi-re|c-make-styles-buffer-local|c-make-syntactic-matcher|c-mark-<-as-paren|c-mark->-as-paren|c-mark-function|c-mask-paragraph|c-mode-menu|c-mode-symbol|c-mode-var|c-mode|c-most-enclosing-brace|c-most-enclosing-decl-block|c-narrow-to-comment-innards|c-narrow-to-most-enclosing-decl-block|c-neutralize-CPP-line|c-neutralize-syntax-in-and-mark-CPP|c-newline-and-indent|c-next-single-property-change|c-objc-menu|c-on-identifier|c-one-line-string-p|c-outline-level|c-override-default-keywords|c-parse-state-1|c-parse-state-get-strategy|c-parse-state|c-partial-ws-p|c-pike-menu|c-point-syntax|c-point|c-populate-syntax-table|c-postprocess-file-styles|c-progress-fini|c-progress-init|c-progress-update|c-pull-open-brace|c-punctuation-in|c-put-c-type-property|c-put-char-property-fun|c-put-char-property|c-put-font-lock-face|c-put-font-lock-string-face|c-put-in-sws|c-put-is-sws|c-put-overlay|c-query-and-set-macro-start|c-query-macro-start|c-read-offset|c-real-parse-state|c-record-parse-state-state|c-record-ref-id|c-record-type-id|c-regexp-opt-depth|c-regexp-opt|c-region-is-active-p|c-remove-any-local-eval-or-mode-variables|c-remove-font-lock-face|c-remove-in-sws|c-remove-is-and-in-sws|c-remove-is-sws|c-remove-stale-state-cache-backwards|c-remove-stale-state-cache|c-renarrow-state-cache|c-replay-parse-state-state|c-restore-<->-as-parens|c-run-mode-hooks|c-safe-position|c-safe-scan-lists|c-safe|c-save-buffer-state|c-sc-parse-partial-sexp-no-category|c-sc-parse-partial-sexp|c-sc-scan-lists-no-category\\\\+1\\\\+1|c-sc-scan-lists-no-category\\\\+1-1|c-sc-scan-lists-no-category-1\\\\+1|c-sc-scan-lists-no-category-1-1|c-sc-scan-lists|c-scan-conditionals|c-scope-operator|c-search-backward-char-property|c-search-decl-header-end|c-search-forward-char-property|c-search-uplist-for-classkey|c-semi&comma-inside-parenlist|c-semi&comma-no-newlines-before-nonblanks|c-semi&comma-no-newlines-for-oneline-inliners|c-sentence-end|c-set-cpp-delimiters|c-set-fl-decl-start|c-set-offset|c-set-region-active|c-set-style-1|c-set-style|c-set-stylevar-fallback|c-setup-doc-comment-style|c-setup-filladapt|c-setup-paragraph-variables|c-shift-line-indentation|c-show-syntactic-information|c-simple-skip-symbol-backward|c-skip-comments-and-strings|c-skip-conditional|c-skip-ws-backward|c-skip-ws-forward|c-snug-1line-defun-close|c-snug-do-while|c-ssb-lit-begin|c-state-balance-parens-backwards|c-state-cache-after-top-paren|c-state-cache-init|c-state-cache-non-literal-place|c-state-cache-top-lparen|c-state-cache-top-paren|c-state-get-min-scan-pos|c-state-lit-beg|c-state-literal-at|c-state-mark-point-min-literal|c-state-maybe-marker|c-state-pp-to-literal|c-state-push-any-brace-pair|c-state-safe-place|c-state-semi-safe-place|c-submit-bug-report|c-subword-mode|c-suppress-<->-as-parens|c-syntactic-content|c-syntactic-end-of-macro|c-syntactic-information-on-region|c-syntactic-re-search-forward|c-syntactic-skip-backward|c-tentative-buffer-changes|c-tnt-chng-cleanup)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:c-tnt-chng-record-state|c-toggle-auto-hungry-state|c-toggle-auto-newline|c-toggle-auto-state|c-toggle-electric-state|c-toggle-hungry-state|c-toggle-parse-state-debug|c-toggle-syntactic-indentation|c-trim-found-types|c-try-one-liner|c-uncomment-out-cpps|c-unfind-coalesced-tokens|c-unfind-enclosing-token|c-unfind-type|c-unmark-<->-as-paren|c-up-conditional-with-else|c-up-conditional|c-up-list-backward|c-up-list-forward|c-update-modeline|c-valid-offset|c-version|c-vsemi-status-unknown-p|c-whack-state-after|c-whack-state-before|c-where-wrt-brace-construct|c-while-widening-to-decl-block|c-widen-to-enclosing-decl-scope|c-with-<->-as-parens-suppressed|c-with-all-but-one-cpps-commented-out|c-with-cpps-commented-out|c-with-syntax-table|caaaar|caaadr|caaar|caadar|caaddr|caadr|cadaar|cadadr|cadar|caddar|cadddr|caddr|cal-html-cursor-month|cal-html-cursor-year|cal-menu-context-mouse-menu|cal-menu-global-mouse-menu|cal-menu-holiday-window-suffix|cal-menu-set-date-title|cal-menu-x-popup-menu|cal-tex-cursor-day|cal-tex-cursor-filofax-2week|cal-tex-cursor-filofax-daily|cal-tex-cursor-filofax-week|cal-tex-cursor-filofax-year|cal-tex-cursor-month-landscape|cal-tex-cursor-month|cal-tex-cursor-week-iso|cal-tex-cursor-week-monday|cal-tex-cursor-week|cal-tex-cursor-week2-summary|cal-tex-cursor-week2|cal-tex-cursor-year-landscape|cal-tex-cursor-year|calc-alg-digit-entry|calc-alg-entry|calc-algebraic-entry|calc-align-stack-window|calc-auto-algebraic-entry|calc-big-or-small|calc-binary-op|calc-change-sign|calc-check-defines|calc-check-stack|calc-check-trail-aligned|calc-check-user-syntax|calc-clear-unread-commands|calc-count-lines|calc-create-buffer|calc-cursor-stack-index|calc-dispatch-help|calc-dispatch|calc-divide|calc-do-alg-entry|calc-do-calc-eval|calc-do-dispatch|calc-do-embedded-activate|calc-do-handle-whys|calc-do-quick-calc|calc-do-refresh|calc-do|calc-embedded-activate|calc-embedded|calc-enter-result|calc-enter|calc-eval|calc-get-stack-element|calc-grab-rectangle|calc-grab-region|calc-grab-sum-across|calc-grab-sum-down|calc-handle-whys|calc-help|calc-info-goto-node|calc-info-summary|calc-info|calc-inv|calc-keypad|calc-kill-stack-buffer|calc-last-args-stub|calc-left-divide|calc-match-user-syntax|calc-minibuffer-contains|calc-minibuffer-size|calc-minus|calc-missing-key|calc-mod|calc-mode-var-list-restore-default-values|calc-mode-var-list-restore-saved-values|calc-normalize|calc-num-prefix-name|calc-other-window|calc-over|calc-percent|calc-plus|calc-pop-above|calc-pop-push-list|calc-pop-push-record-list|calc-pop-stack|calc-pop|calc-power|calc-push-list|calc-quit|calc-read-key-sequence|calc-read-key|calc-record-list|calc-record-undo|calc-record-why|calc-record|calc-refresh|calc-renumber-stack|calc-report-bug|calc-roll-down-stack|calc-roll-down|calc-roll-up-stack|calc-roll-up|calc-same-interface|calc-select-buffer|calc-set-command-flag|calc-set-mode-line|calc-shift-Y-prefix-help|calc-slow-wrapper|calc-stack-size|calc-substack-height|calc-temp-minibuffer-message|calc-times|calc-top-list-n|calc-top-list|calc-top-n|calc-top|calc-trail-buffer|calc-trail-display|calc-trail-here|calc-transpose-lines|calc-tutorial|calc-unary-op|calc-undo|calc-unread-command|calc-user-invocation|calc-window-width|calc-with-default-simplification|calc-with-trail-buffer|calc-wrapper|calc-yank|calc|calcDigit-algebraic|calcDigit-backspace|calcDigit-edit|calcDigit-key|calcDigit-letter|calcDigit-nondigit|calcDigit-start|calcFunc-floor|calcFunc-inv|calcFunc-trunc|calculate-icon-indent|calculate-lisp-indent|calculate-tcl-indent|calculator-add-operators|calculator-backspace|calculator-clear-fragile|calculator-clear-saved|calculator-clear|calculator-close-paren|calculator-copy|calculator-dec\\\\/deg-mode|calculator-decimal|calculator-digit|calculator-displayer-next|calculator-displayer-prev|calculator-eng-display|calculator-enter|calculator-exp|calculator-expt|calculator-fact|calculator-funcall|calculator-get-display|calculator-get-register|calculator-groupize-number|calculator-help|calculator-last-input|calculator-menu|calculator-message|calculator-mode|calculator-need-3-lines|calculator-number-to-string|calculator-op-arity|calculator-op-or-exp|calculator-op-prec|calculator-op|calculator-open-paren|calculator-paste|calculator-push-curnum|calculator-put-value|calculator-quit|calculator-radix-input-mode|calculator-radix-mode|calculator-radix-output-mode|calculator-reduce-stack-once|calculator-reduce-stack|calculator-remove-zeros|calculator-repL|calculator-repR|calculator-reset|calculator-rotate-displayer-back|calculator-rotate-displayer|calculator-save-and-quit|calculator-save-on-list|calculator-saved-down|calculator-saved-move|calculator-saved-up|calculator-set-register|calculator-standard-displayer|calculator-string-to-number|calculator-truncate|calculator-update-display|calculator|calendar-abbrev-construct|calendar-absolute-from-gregorian|calendar-astro-date-string|calendar-astro-from-absolute|calendar-astro-goto-day-number|calendar-astro-print-day-number|calendar-astro-to-absolute|calendar-backward-day|calendar-backward-month|calendar-backward-week|calendar-backward-year|calendar-bahai-date-string|calendar-bahai-goto-date|calendar-bahai-mark-date-pattern|calendar-bahai-print-date|calendar-basic-setup|calendar-beginning-of-month|calendar-beginning-of-week|calendar-beginning-of-year|calendar-buffer-list|calendar-check-holidays|calendar-chinese-date-string|calendar-chinese-goto-date|calendar-chinese-print-date|calendar-column-to-segment|calendar-coptic-date-string|calendar-coptic-goto-date|calendar-coptic-print-date|calendar-count-days-region|calendar-current-date|calendar-cursor-holidays|calendar-cursor-to-date|calendar-cursor-to-nearest-date|calendar-cursor-to-visible-date|calendar-customized-p|calendar-date-compare|calendar-date-equal|calendar-date-is-valid-p|calendar-date-is-visible-p|calendar-date-string|calendar-day-header-construct|calendar-day-name|calendar-day-number|calendar-day-of-week|calendar-day-of-year-string|calendar-dayname-on-or-before|calendar-end-of-month|calendar-end-of-week|calendar-end-of-year|calendar-ensure-newline|calendar-ethiopic-date-string|calendar-ethiopic-goto-date|calendar-ethiopic-print-date|calendar-exchange-point-and-mark|calendar-exit|calendar-extract-day|calendar-extract-month|calendar-extract-year|calendar-forward-day|calendar-forward-month|calendar-forward-week|calendar-forward-year|calendar-frame-setup|calendar-french-date-string|calendar-french-goto-date|calendar-french-print-date|calendar-generate-month|calendar-generate-window|calendar-generate|calendar-goto-date|calendar-goto-day-of-year|calendar-goto-info-node|calendar-goto-today|calendar-gregorian-from-absolute|calendar-hebrew-date-string|calendar-hebrew-goto-date|calendar-hebrew-list-yahrzeits|calendar-hebrew-mark-date-pattern|calendar-hebrew-print-date|calendar-holiday-list|calendar-in-read-only-buffer|calendar-increment-month-cons|calendar-increment-month|calendar-insert-at-column|calendar-interval|calendar-islamic-date-string|calendar-islamic-goto-date|calendar-islamic-mark-date-pattern|calendar-islamic-print-date|calendar-iso-date-string|calendar-iso-from-absolute|calendar-iso-goto-date|calendar-iso-goto-week|calendar-iso-print-date|calendar-julian-date-string|calendar-julian-from-absolute|calendar-julian-goto-date|calendar-julian-print-date|calendar-last-day-of-month|calendar-leap-year-p|calendar-list-holidays|calendar-lunar-phases|calendar-make-alist|calendar-make-temp-face|calendar-mark-1|calendar-mark-complex|calendar-mark-date-pattern|calendar-mark-days-named|calendar-mark-holidays|calendar-mark-month|calendar-mark-today|calendar-mark-visible-date|calendar-mayan-date-string|calendar-mayan-goto-long-count-date|calendar-mayan-next-haab-date|calendar-mayan-next-round-date|calendar-mayan-next-tzolkin-date|calendar-mayan-previous-haab-date|calendar-mayan-previous-round-date|calendar-mayan-previous-tzolkin-date|calendar-mayan-print-date|calendar-mode-line-entry|calendar-mode|calendar-month-edges|calendar-month-name|calendar-mouse-view-diary-entries|calendar-mouse-view-other-diary-entries|calendar-move-to-column|calendar-nongregorian-visible-p|calendar-not-implemented|calendar-nth-named-absday|calendar-nth-named-day|calendar-other-dates|calendar-other-month|calendar-persian-date-string|calendar-persian-goto-date|calendar-persian-print-date|calendar-print-day-of-year|calendar-print-other-dates|calendar-read-date|calendar-read|calendar-recompute-layout-variables|calendar-redraw|calendar-scroll-left-three-months|calendar-scroll-left|calendar-scroll-right-three-months|calendar-scroll-right|calendar-scroll-toolkit-scroll|calendar-set-date-style|calendar-set-layout-variable|calendar-set-mark|calendar-set-mode-line|calendar-star-date|calendar-string-spread|calendar-sum|calendar-sunrise-sunset-month|calendar-sunrise-sunset|calendar-unmark|calendar-update-mode-line|calendar-week-end-day|calendar|call-last-kbd-macro|call-next-method|callf|callf2|cancel-edebug-on-entry|cancel-function-timers|cancel-kbd-macro-events|cancel-timer-internal|canlock-insert-header|canlock-verify|canonicalize-coding-system-name|canonically-space-region|capitalized-words-mode|car-less-than-car|case-table-get-table|case|cc-choose-style-for-mode|cc-eval-when-compile|cc-imenu-init|cc-imenu-java-build-type-args-regex|cc-imenu-objc-function|cc-imenu-objc-method-to-selector|cc-imenu-objc-remove-white-space|ccl-compile|ccl-dump|ccl-execute-on-string|ccl-execute-with-args|ccl-execute|ccl-program-p|cconv--analyze-function|cconv--analyze-use|cconv--convert-function|cconv--map-diff-elem|cconv--map-diff-set|cconv--map-diff|cconv--set-diff-map|cconv--set-diff|cconv-analyse-form|cconv-analyze-form|cconv-closure-convert|cconv-convert|cconv-warnings-only|cd-absolute|cd|cdaaar|cdaadr|cdaar|cdadar|cdaddr|cdadr|cddaar|cddadr|cddar|cdddar|cddddr|cdddr|cdl-get-file|cdl-put-region|cedet-version|ceiling\\\\*|center-line|center-paragraph|center-region|cfengine-auto-mode|cfengine-common-settings|cfengine-common-syntax|cfengine-fill-paragraph|cfengine-mode|cfengine2-beginning-of-defun|cfengine2-end-of-defun|cfengine2-indent-line|cfengine2-mode|cfengine2-outline-level|cfengine3--current-function|cfengine3-beginning-of-defun|cfengine3-clear-syntax-cache|cfengine3-completion-function|cfengine3-create-imenu-index|cfengine3-current-defun|cfengine3-documentation-function|cfengine3-end-of-defun|cfengine3-format-function-docstring|cfengine3-indent-line|cfengine3-make-syntax-cache|cfengine3-mode|change-class|change-log-beginning-of-defun|change-log-end-of-defun|change-log-fill-forward-paragraph|change-log-fill-parenthesized-list|change-log-find-file|change-log-get-method-definition-1|change-log-get-method-definition|change-log-goto-source-1|change-log-goto-source|change-log-indent|change-log-merge|change-log-mode|change-log-name|change-log-next-buffer|change-log-next-error|change-log-resolve-conflict|change-log-search-file-name|change-log-search-tag-name-1|change-log-search-tag-name|change-log-sortable-date-at|change-log-version-number-search|char-resolve-modifiers|char-valid-p|charset-bytes|charset-chars|charset-description|charset-dimension|charset-id-internal|charset-id|charset-info|charset-iso-final-char|charset-long-name|charset-short-name|chart-add-sequence|chart-axis-child-p|chart-axis-draw|chart-axis-list-p|chart-axis-names-child-p|chart-axis-names-list-p|chart-axis-names-p|chart-axis-names|chart-axis-p|chart-axis-range-child-p|chart-axis-range-list-p|chart-axis-range-p|chart-axis-range|chart-axis|chart-bar-child-p|chart-bar-list-p|chart-bar-p|chart-bar-quickie|chart-bar|chart-child-p|chart-deface-rectangle|chart-display-label|chart-draw-axis|chart-draw-data|chart-draw-line|chart-draw-title|chart-draw|chart-emacs-lists|chart-emacs-storage|chart-file-count|chart-goto-xy|chart-list-p|chart-mode|chart-new-buffer|chart-p|chart-rmail-from|chart-sequece-child-p|chart-sequece-list-p|chart-sequece-p|chart-sequece|chart-size-in-dir|chart-sort-matchlist|chart-sort|chart-space-usage|chart-test-it-all|chart-translate-namezone|chart-translate-xpos|chart-translate-ypos|chart-trim|chart-zap-chars|chart|check-ccl-program|check-completion-length|check-declare-directory|check-declare-errmsg|check-declare-file|check-declare-files|check-declare-locate|check-declare-scan|check-declare-sort|check-declare-verify|check-declare-warn)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:check-face|check-ispell-version|check-parens|check-type|checkdoc-autofix-ask-replace|checkdoc-buffer-label|checkdoc-char=|checkdoc-comments|checkdoc-continue|checkdoc-create-common-verbs-regexp|checkdoc-create-error|checkdoc-current-buffer|checkdoc-defun-info|checkdoc-defun|checkdoc-delete-overlay|checkdoc-display-status-buffer|checkdoc-error-end|checkdoc-error-start|checkdoc-error-text|checkdoc-error-unfixable|checkdoc-error|checkdoc-eval-current-buffer|checkdoc-eval-defun|checkdoc-file-comments-engine|checkdoc-in-example-string-p|checkdoc-in-sample-code-p|checkdoc-interactive-ispell-loop|checkdoc-interactive-loop|checkdoc-interactive|checkdoc-ispell-comments|checkdoc-ispell-continue|checkdoc-ispell-current-buffer|checkdoc-ispell-defun|checkdoc-ispell-docstring-engine|checkdoc-ispell-init|checkdoc-ispell-interactive|checkdoc-ispell-message-interactive|checkdoc-ispell-message-text|checkdoc-ispell-start|checkdoc-ispell|checkdoc-list-of-strings-p|checkdoc-make-overlay|checkdoc-message-interactive-ispell-loop|checkdoc-message-interactive|checkdoc-message-text-engine|checkdoc-message-text-next-string|checkdoc-message-text-search|checkdoc-message-text|checkdoc-mode-line-update|checkdoc-next-docstring|checkdoc-next-error|checkdoc-next-message-error|checkdoc-output-mode|checkdoc-outside-major-sexp|checkdoc-overlay-end|checkdoc-overlay-put|checkdoc-overlay-start|checkdoc-proper-noun-region-engine|checkdoc-recursive-edit|checkdoc-rogue-space-check-engine|checkdoc-rogue-spaces|checkdoc-run-hooks|checkdoc-sentencespace-region-engine|checkdoc-show-diagnostics|checkdoc-start-section|checkdoc-start|checkdoc-this-string-valid-engine|checkdoc-this-string-valid|checkdoc-y-or-n-p|checkdoc|child-of-class-p|chmod|choose-completion-delete-max-match|choose-completion-guess-base-position|choose-completion-string|choose-completion|cl--adjoin|cl--arglist-args|cl--block-throw--cmacro|cl--block-throw|cl--block-wrapper--cmacro|cl--block-wrapper|cl--check-key|cl--check-match|cl--check-test-nokey|cl--check-test|cl--compile-time-too|cl--compiler-macro-adjoin|cl--compiler-macro-assoc|cl--compiler-macro-cXXr|cl--compiler-macro-get|cl--compiler-macro-list\\\\*|cl--compiler-macro-member|cl--compiler-macro-typep|cl--compiling-file|cl--const-expr-p|cl--const-expr-val|cl--defalias|cl--defsubst-expand|cl--delete-duplicates|cl--do-arglist|cl--do-prettyprint|cl--do-proclaim|cl--do-remf|cl--do-subst|cl--expand-do-loop|cl--expr-contains-any|cl--expr-contains|cl--expr-depends-p|cl--finite-do|cl--function-convert|cl--gv-adapt|cl--labels-convert|cl--letf|cl--loop-build-ands|cl--loop-handle-accum|cl--loop-let|cl--loop-set-iterator-function|cl--macroexp-fboundp|cl--make-type-test|cl--make-usage-args|cl--make-usage-var|cl--map-intervals|cl--map-keymap-recursively|cl--map-overlays|cl--mapcar-many|cl--nsublis-rec|cl--parse-loop-clause|cl--parsing-keywords|cl--pass-args-to-cl-declare|cl--pop2|cl--position|cl--random-time|cl--safe-expr-p|cl--set-buffer-substring|cl--set-frame-visible-p|cl--set-getf|cl--set-substring|cl--simple-expr-p|cl--simple-exprs-p|cl--sm-macroexpand|cl--struct-epg-context-p--cmacro|cl--struct-epg-context-p|cl--struct-epg-data-p--cmacro|cl--struct-epg-data-p|cl--struct-epg-import-result-p--cmacro|cl--struct-epg-import-result-p|cl--struct-epg-import-status-p--cmacro|cl--struct-epg-import-status-p|cl--struct-epg-key-p--cmacro|cl--struct-epg-key-p|cl--struct-epg-key-signature-p--cmacro|cl--struct-epg-key-signature-p|cl--struct-epg-new-signature-p--cmacro|cl--struct-epg-new-signature-p|cl--struct-epg-sig-notation-p--cmacro|cl--struct-epg-sig-notation-p|cl--struct-epg-signature-p--cmacro|cl--struct-epg-signature-p|cl--struct-epg-sub-key-p--cmacro|cl--struct-epg-sub-key-p|cl--struct-epg-user-id-p--cmacro|cl--struct-epg-user-id-p|cl--sublis-rec|cl--sublis|cl--transform-lambda|cl--tree-equal-rec|cl--unused-var-p|cl--wrap-in-nil-block|cl-caaaar|cl-caaadr|cl-caaar|cl-caadar|cl-caaddr|cl-caadr|cl-cadaar|cl-cadadr|cl-cadar|cl-caddar|cl-cadddr|cl-cdaaar|cl-cdaadr|cl-cdaar|cl-cdadar|cl-cdaddr|cl-cdadr|cl-cddaar|cl-cddadr|cl-cddar|cl-cdddar|cl-cddddr|cl-cdddr|cl-clrhash|cl-copy-seq|cl-copy-tree|cl-digit-char-p|cl-eighth|cl-fifth|cl-flet\\\\*|cl-floatp-safe|cl-fourth|cl-fresh-line|cl-gethash|cl-hash-table-count|cl-hash-table-p|cl-maclisp-member|cl-macroexpand-all|cl-macroexpand|cl-make-hash-table|cl-map-extents|cl-map-intervals|cl-map-keymap-recursively|cl-map-keymap|cl-maphash|cl-multiple-value-apply|cl-multiple-value-call|cl-multiple-value-list|cl-ninth|cl-not-hash-table|cl-nreconc|cl-nth-value|cl-parse-integer|cl-prettyprint|cl-puthash|cl-remhash|cl-revappend|cl-second|cl-set-getf|cl-seventh|cl-signum|cl-sixth|cl-struct-sequence-type|cl-struct-setf-expander|cl-struct-slot-info|cl-struct-slot-offset|cl-struct-slot-value--cmacro|cl-struct-slot-value|cl-svref|cl-tenth|cl-third|cl-unload-function|cl-values-list|cl-values|class-abstract-p|class-children|class-constructor|class-direct-subclasses|class-direct-superclasses|class-method-invocation-order|class-name|class-of|class-option-assoc|class-option|class-p|class-parent|class-parents|class-precedence-list|class-slot-initarg|class-v|clean-buffer-list-delay|clean-buffer-list|clear-all-completions|clear-buffer-auto-save-failure|clear-charset-maps|clear-face-cache|clear-font-cache|clear-rectangle-line|clear-rectangle|clipboard-kill-region|clipboard-kill-ring-save|clipboard-yank|clone-buffer|clone-indirect-buffer-other-window|clone-process|clone|close-display-connection|close-font|close-rectangle|cmpl-coerce-string-case|cmpl-hours-since-origin|cmpl-merge-string-cases|cmpl-prefix-entry-head|cmpl-prefix-entry-tail|cmpl-string-case-type|coding-system-base|coding-system-category|coding-system-doc-string|coding-system-eol-type-mnemonic|coding-system-equal|coding-system-from-name|coding-system-lessp|coding-system-mnemonic|coding-system-plist|coding-system-post-read-conversion|coding-system-pre-write-conversion|coding-system-put|coding-system-translation-table-for-decode|coding-system-translation-table-for-encode|coding-system-type|coerce|color-cie-de2000|color-clamp|color-complement-hex|color-complement|color-darken-hsl|color-darken-name|color-desaturate-hsl|color-desaturate-name|color-distance|color-gradient|color-hsl-to-rgb|color-hue-to-rgb|color-lab-to-srgb|color-lab-to-xyz|color-lighten-hsl|color-lighten-name|color-name-to-rgb|color-rgb-to-hex|color-rgb-to-hsl|color-rgb-to-hsv|color-saturate-hsl|color-saturate-name|color-srgb-to-lab|color-srgb-to-xyz|color-xyz-to-lab|color-xyz-to-srgb|column-number-mode|combine-after-change-execute|comint--complete-file-name-data|comint--match-partial-filename|comint--requote-argument|comint--unquote&expand-filename|comint--unquote&requote-argument|comint--unquote-argument|comint-accumulate|comint-add-to-input-history|comint-adjust-point|comint-adjust-window-point|comint-after-pmark-p|comint-append-output-to-file|comint-args|comint-arguments|comint-backward-matching-input|comint-bol-or-process-mark|comint-bol|comint-c-a-p-replace-by-expanded-history|comint-carriage-motion|comint-check-proc|comint-check-source|comint-completion-at-point|comint-completion-file-name-table|comint-continue-subjob|comint-copy-old-input|comint-delchar-or-maybe-eof|comint-delete-input|comint-delete-output|comint-delim-arg|comint-directory|comint-dynamic-complete-as-filename|comint-dynamic-complete-filename|comint-dynamic-complete|comint-dynamic-list-completions|comint-dynamic-list-filename-completions|comint-dynamic-list-input-ring-select|comint-dynamic-list-input-ring|comint-dynamic-simple-complete|comint-exec-1|comint-exec|comint-extract-string|comint-filename-completion|comint-forward-matching-input|comint-get-next-from-history|comint-get-old-input-default|comint-get-source|comint-goto-input|comint-goto-process-mark|comint-history-isearch-backward-regexp|comint-history-isearch-backward|comint-history-isearch-end|comint-history-isearch-message|comint-history-isearch-pop-state|comint-history-isearch-push-state|comint-history-isearch-search|comint-history-isearch-setup|comint-history-isearch-wrap|comint-how-many-region|comint-insert-input|comint-insert-previous-argument|comint-interrupt-subjob|comint-kill-input|comint-kill-region|comint-kill-subjob|comint-kill-whole-line|comint-line-beginning-position|comint-magic-space|comint-match-partial-filename|comint-mode|comint-next-input|comint-next-matching-input-from-input|comint-next-matching-input|comint-next-prompt|comint-output-filter|comint-postoutput-scroll-to-bottom|comint-preinput-scroll-to-bottom|comint-previous-input-string|comint-previous-input|comint-previous-matching-input-from-input|comint-previous-matching-input-string-position|comint-previous-matching-input-string|comint-previous-matching-input|comint-previous-prompt|comint-proc-query|comint-quit-subjob|comint-quote-filename|comint-read-input-ring|comint-read-noecho|comint-redirect-cleanup|comint-redirect-filter|comint-redirect-preoutput-filter|comint-redirect-remove-redirection|comint-redirect-results-list-from-process|comint-redirect-results-list|comint-redirect-send-command-to-process|comint-redirect-send-command|comint-redirect-setup|comint-regexp-arg|comint-replace-by-expanded-filename|comint-replace-by-expanded-history-before-point|comint-replace-by-expanded-history|comint-restore-input|comint-run|comint-search-arg|comint-search-start|comint-send-eof|comint-send-input|comint-send-region|comint-send-string|comint-set-process-mark|comint-show-maximum-output|comint-show-output|comint-simple-send|comint-skip-input|comint-skip-prompt|comint-snapshot-last-prompt|comint-source-default|comint-stop-subjob|comint-strip-ctrl-m|comint-substitute-in-file-name|comint-truncate-buffer|comint-unquote-filename|comint-update-fence|comint-watch-for-password-prompt|comint-within-quotes|comint-word|comint-write-input-ring|comint-write-output|command-apropos|command-error-default-function|command-history-mode|command-history-repeat|command-line-1|command-line-normalize-file-name|comment-add|comment-beginning|comment-box|comment-choose-indent|comment-dwim|comment-enter-backward|comment-forward|comment-indent-default|comment-indent-new-line|comment-indent|comment-kill|comment-make-extra-lines|comment-normalize-vars|comment-only-p|comment-or-uncomment-region|comment-padleft|comment-padright|comment-quote-nested|comment-quote-re|comment-region-default|comment-region-internal|comment-region|comment-search-backward|comment-search-forward|comment-set-column|comment-string-reverse|comment-string-strip|comment-valid-prefix-p|comment-with-narrowing|common-lisp-indent-function|common-lisp-mode|compare-windows-dehighlight|compare-windows-get-next-window|compare-windows-get-recent-window|compare-windows-highlight|compare-windows-skip-whitespace|compare-windows-sync-default-function|compare-windows-sync-regexp|compare-windows|compilation--compat-error-properties|compilation--compat-parse-errors|compilation--ensure-parse|compilation--file-struct->file-spec|compilation--file-struct->formats|compilation--file-struct->loc-tree|compilation--flush-directory-cache|compilation--flush-file-structure|compilation--flush-parse|compilation--loc->col|compilation--loc->file-struct|compilation--loc->line|compilation--loc->marker|compilation--loc->visited|compilation--make-cdrloc|compilation--make-file-struct|compilation--make-message--cmacro|compilation--make-message|compilation--message->end-loc--cmacro|compilation--message->end-loc|compilation--message->loc--cmacro|compilation--message->loc|compilation--message->type--cmacro|compilation--message->type|compilation--message-p--cmacro|compilation--message-p|compilation--parse-region|compilation--previous-directory|compilation--put-prop|compilation--remove-properties|compilation--unsetup|compilation-auto-jump|compilation-buffer-internal-p|compilation-buffer-name|compilation-buffer-p|compilation-button-map|compilation-directory-properties|compilation-display-error|compilation-error-properties|compilation-face|compilation-fake-loc|compilation-filter|compilation-find-buffer|compilation-find-file|compilation-forget-errors|compilation-get-file-structure|compilation-goto-locus-delete-o|compilation-goto-locus|compilation-handle-exit|compilation-internal-error-properties|compilation-loop|compilation-minor-mode|compilation-mode-font-lock-keywords|compilation-mode|compilation-move-to-column|compilation-next-error-function|compilation-next-error|compilation-next-file|compilation-next-single-property-change)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:compilation-parse-errors|compilation-previous-error|compilation-previous-file|compilation-read-command|compilation-revert-buffer|compilation-sentinel|compilation-set-skip-threshold|compilation-set-window-height|compilation-set-window|compilation-setup|compilation-shell-minor-mode|compilation-start|compile-goto-error|compile-mouse-goto-error|compile|compiler-macroexpand|complete-in-turn|complete-symbol|complete-tag|complete-with-action|complete|completing-read-default|completing-read-multiple|completion--cache-all-sorted-completions|completion--capf-wrapper|completion--common-suffix|completion--complete-and-exit|completion--cycle-threshold|completion--do-completion|completion--done|completion--embedded-envvar-table|completion--field-metadata|completion--file-name-table|completion--flush-all-sorted-completions|completion--in-region-1|completion--in-region|completion--insert-strings|completion--make-envvar-table|completion--merge-suffix|completion--message|completion--metadata|completion--nth-completion|completion--post-self-insert|completion--replace|completion--sifn-requote|completion--some|completion--string-equal-p|completion--styles|completion--try-word-completion|completion--twq-all|completion--twq-try|completion-all-completions|completion-all-sorted-completions|completion-backup-filename|completion-basic--pattern|completion-basic-all-completions|completion-basic-try-completion|completion-before-command|completion-c-mode-hook|completion-complete-and-exit|completion-def-wrapper|completion-emacs21-all-completions|completion-emacs21-try-completion|completion-emacs22-all-completions|completion-emacs22-try-completion|completion-file-name-table|completion-find-file-hook|completion-help-at-point|completion-hilit-commonality|completion-in-region--postch|completion-in-region--single-word|completion-in-region-mode|completion-initialize|completion-initials-all-completions|completion-initials-expand|completion-initials-try-completion|completion-kill-region|completion-last-use-time|completion-lisp-mode-hook|completion-list-mode-finish|completion-list-mode|completion-metadata-get|completion-metadata|completion-mode|completion-num-uses|completion-pcm--all-completions|completion-pcm--filename-try-filter|completion-pcm--find-all-completions|completion-pcm--hilit-commonality|completion-pcm--merge-completions|completion-pcm--merge-try|completion-pcm--optimize-pattern|completion-pcm--pattern->regex|completion-pcm--pattern->string|completion-pcm--pattern-trivial-p|completion-pcm--prepare-delim-re|completion-pcm--string->pattern|completion-pcm-all-completions|completion-pcm-try-completion|completion-search-next|completion-search-peek|completion-search-reset-1|completion-search-reset|completion-setup-fortran-mode|completion-setup-function|completion-source|completion-string|completion-substring--all-completions|completion-substring-all-completions|completion-substring-try-completion|completion-table-with-context|completion-try-completion|compose-chars-after|compose-chars|compose-glyph-string-relative|compose-glyph-string|compose-gstring-for-dotted-circle|compose-gstring-for-graphic|compose-gstring-for-terminal|compose-gstring-for-variation-glyph|compose-last-chars|compose-mail-other-frame|compose-mail-other-window|compose-mail|compose-region-internal|compose-region|compose-string-internal|compose-string|composition-get-gstring|concatenate|condition-case-no-debug|conf-align-assignments|conf-colon-mode|conf-javaprop-mode|conf-mode-initialize|conf-mode-maybe|conf-mode|conf-outline-level|conf-ppd-mode|conf-quote-normal|conf-space-keywords|conf-space-mode-internal|conf-space-mode|conf-unix-mode|conf-windows-mode|conf-xdefaults-mode|confirm-nonexistent-file-or-buffer|constructor|convert-define-charset-argument|cookie-apropos|cookie-check-file|cookie-doctor|cookie-insert|cookie-read|cookie-shuffle-vector|cookie-snarf|cookie|cookie1|copy-case-table|copy-cvs-flags|copy-cvs-tag|copy-dir-locals-to-file-locals-prop-line|copy-dir-locals-to-file-locals|copy-ebrowse-bs|copy-ebrowse-cs|copy-ebrowse-hs|copy-ebrowse-ms|copy-ebrowse-position|copy-ebrowse-ts|copy-erc-channel-user|copy-erc-response|copy-erc-server-user|copy-ert--ewoc-entry|copy-ert--stats|copy-ert--test-execution-info|copy-ert-test-aborted-with-non-local-exit|copy-ert-test-failed|copy-ert-test-passed|copy-ert-test-quit|copy-ert-test-result-with-condition|copy-ert-test-result|copy-ert-test-skipped|copy-ert-test|copy-ewoc--node|copy-ewoc|copy-face|copy-file-locals-to-dir-locals|copy-flymake-ler|copy-gdb-handler|copy-gdb-table|copy-htmlize-fstruct|copy-js--js-handle|copy-js--pitem|copy-list|copy-package--bi-desc|copy-package-desc|copy-profiler-calltree|copy-profiler-profile|copy-rectangle-as-kill|copy-rectangle-to-register|copy-seq|copy-ses--locprn|copy-sgml-tag|copy-soap-array-type|copy-soap-basic-type|copy-soap-binding|copy-soap-bound-operation|copy-soap-element|copy-soap-message|copy-soap-namespace-link|copy-soap-namespace|copy-soap-operation|copy-soap-port-type|copy-soap-port|copy-soap-sequence-element|copy-soap-sequence-type|copy-soap-simple-type|copy-soap-wsdl|copy-tar-header|copy-to-buffer|copy-to-register|copy-url-queue|copyright-find-copyright|copyright-find-end|copyright-fix-years|copyright-limit|copyright-offset-too-large-p|copyright-re-search|copyright-start-point|copyright-update-directory|copyright-update-year|copyright-update|copyright|count-if-not|count-if|count-lines-page|count-lines-region|count-matches|count-text-lines|count-trailing-whitespace-region|count-windows|count-words--buffer-message|count-words--message|count-words-region|count|cperl-1\\\\+|cperl-1-|cperl-add-tags-recurse-noxs-fullpath|cperl-add-tags-recurse-noxs|cperl-add-tags-recurse|cperl-after-block-and-statement-beg|cperl-after-block-p|cperl-after-change-function|cperl-after-expr-p|cperl-after-label|cperl-after-sub-regexp|cperl-at-end-of-expr|cperl-backward-to-noncomment|cperl-backward-to-start-of-continued-exp|cperl-backward-to-start-of-expr|cperl-beautify-level|cperl-beautify-regexp-piece|cperl-beautify-regexp|cperl-beginning-of-property|cperl-block-p|cperl-build-manpage|cperl-cached-syntax-table|cperl-calculate-indent-within-comment|cperl-calculate-indent|cperl-check-syntax|cperl-choose-color|cperl-comment-indent|cperl-comment-region|cperl-commentify|cperl-contract-level|cperl-contract-levels|cperl-db|cperl-define-key|cperl-delay-update-hook|cperl-describe-perl-symbol|cperl-do-auto-fill|cperl-electric-backspace|cperl-electric-brace|cperl-electric-else|cperl-electric-keyword|cperl-electric-lbrace|cperl-electric-paren|cperl-electric-pod|cperl-electric-rparen|cperl-electric-semi|cperl-electric-terminator|cperl-emulate-lazy-lock|cperl-enable-font-lock|cperl-ensure-newlines|cperl-etags|cperl-facemenu-add-face-function|cperl-fill-paragraph|cperl-find-bad-style|cperl-find-pods-heres-region|cperl-find-pods-heres|cperl-find-sub-attrs|cperl-find-tags|cperl-fix-line-spacing|cperl-font-lock-fontify-region-function|cperl-font-lock-unfontify-region-function|cperl-fontify-syntaxically|cperl-fontify-update-bad|cperl-fontify-update|cperl-forward-group-in-re|cperl-forward-re|cperl-forward-to-end-of-expr|cperl-get-help-defer|cperl-get-help|cperl-get-here-doc-region|cperl-get-state|cperl-here-doc-spell|cperl-highlight-charclass|cperl-imenu--create-perl-index|cperl-imenu-addback|cperl-imenu-info-imenu-name|cperl-imenu-info-imenu-search|cperl-imenu-name-and-position|cperl-imenu-on-info|cperl-indent-command|cperl-indent-exp|cperl-indent-for-comment|cperl-indent-line|cperl-indent-region|cperl-info-buffer|cperl-info-on-command|cperl-info-on-current-command|cperl-init-faces-weak|cperl-init-faces|cperl-inside-parens-p|cperl-invert-if-unless-modifiers|cperl-invert-if-unless|cperl-lazy-hook|cperl-lazy-install|cperl-lazy-unstall|cperl-linefeed|cperl-lineup|cperl-list-fold|cperl-load-font-lock-keywords-1|cperl-load-font-lock-keywords-2|cperl-load-font-lock-keywords|cperl-look-at-leading-count|cperl-make-indent|cperl-make-regexp-x|cperl-map-pods-heres|cperl-mark-active|cperl-menu-to-keymap|cperl-menu|cperl-mode|cperl-modify-syntax-type|cperl-msb-fix|cperl-narrow-to-here-doc|cperl-next-bad-style|cperl-next-interpolated-REx-0|cperl-next-interpolated-REx-1|cperl-next-interpolated-REx|cperl-outline-level|cperl-perldoc-at-point|cperl-perldoc|cperl-pod-spell|cperl-pod-to-manpage|cperl-pod2man-build-command|cperl-postpone-fontification|cperl-protect-defun-start|cperl-ps-print-init|cperl-ps-print|cperl-put-do-not-fontify|cperl-putback-char|cperl-regext-to-level-start|cperl-select-this-pod-or-here-doc|cperl-set-style-back|cperl-set-style|cperl-setup-tmp-buf|cperl-sniff-for-indent|cperl-switch-to-doc-buffer|cperl-tags-hier-fill|cperl-tags-hier-init|cperl-tags-treeify|cperl-time-fontification|cperl-to-comment-or-eol|cperl-toggle-abbrev|cperl-toggle-auto-newline|cperl-toggle-autohelp|cperl-toggle-construct-fix|cperl-toggle-electric|cperl-toggle-set-debug-unwind|cperl-uncomment-region|cperl-unwind-to-safe|cperl-update-syntaxification|cperl-use-region-p|cperl-val|cperl-windowed-init|cperl-word-at-point-hard|cperl-word-at-point|cperl-write-tags|cperl-xsub-scan|cpp-choose-branch|cpp-choose-default-face|cpp-choose-face|cpp-choose-symbol|cpp-create-bg-face|cpp-edit-apply|cpp-edit-background|cpp-edit-false|cpp-edit-home|cpp-edit-known|cpp-edit-list-entry-get-or-create|cpp-edit-load|cpp-edit-mode|cpp-edit-reset|cpp-edit-save|cpp-edit-toggle-known|cpp-edit-toggle-unknown|cpp-edit-true|cpp-edit-unknown|cpp-edit-write|cpp-face-name|cpp-grow-overlay|cpp-highlight-buffer|cpp-make-button|cpp-make-known-overlay|cpp-make-overlay-hidden|cpp-make-overlay-read-only|cpp-make-overlay-sticky|cpp-make-unknown-overlay|cpp-parse-close|cpp-parse-edit|cpp-parse-error|cpp-parse-open|cpp-parse-reset|cpp-progress-message|cpp-push-button|cpp-signal-read-only|create-default-fontset|create-fontset-from-ascii-font|create-fontset-from-x-resource|create-glyph|crm--choose-completion-string|crm--collection-fn|crm--completion-command|crm--current-element|crm-complete-and-exit|crm-complete-word|crm-complete|crm-completion-help|crm-minibuffer-complete-and-exit|crm-minibuffer-complete|crm-minibuffer-completion-help|css--font-lock-keywords|css-current-defun-name|css-extract-keyword-list|css-extract-parse-val-grammar|css-extract-props-and-vals|css-fill-paragraph|css-mode|css-smie--backward-token|css-smie--forward-token|css-smie-rules|ctext-non-standard-encodings-table|ctext-post-read-conversion|ctext-pre-write-conversion|ctl-x-4-prefix|ctl-x-5-prefix|ctl-x-ctl-p-prefix|cua--M\\\\/H-key|cua--deactivate|cua--fallback|cua--filter-buffer-noprops|cua--init-keymaps|cua--keep-active|cua--post-command-handler-1|cua--post-command-handler|cua--pre-command-handler-1|cua--pre-command-handler|cua--prefix-arg|cua--prefix-copy-handler|cua--prefix-cut-handler|cua--prefix-override-handler|cua--prefix-override-replay|cua--prefix-override-timeout|cua--prefix-repeat-handler|cua--select-keymaps|cua--self-insert-char-p|cua--shift-control-c-prefix|cua--shift-control-prefix|cua--shift-control-x-prefix|cua--update-indications|cua-cancel|cua-copy-region|cua-cut-region|cua-debug|cua-delete-region|cua-exchange-point-and-mark|cua-help-for-region|cua-mode|cua-paste-pop|cua-paste|cua-pop-to-last-change|cua-rectangle-mark-mode|cua-scroll-down|cua-scroll-up|cua-selection-mode|cua-set-mark|cua-set-rectangle-mark|cua-toggle-global-mark|current-line|custom--frame-color-default|custom--initialize-widget-variables|custom--sort-vars-1|custom--sort-vars|custom-add-dependencies|custom-add-link|custom-add-load|custom-add-option|custom-add-package-version|custom-add-parent-links|custom-add-see-also|custom-add-to-group|custom-add-version|custom-autoload|custom-available-themes|custom-browse-face-tag-action|custom-browse-group-tag-action|custom-browse-insert-prefix|custom-browse-variable-tag-action|custom-browse-visibility-action|custom-buffer-create-internal|custom-buffer-create-other-window|custom-buffer-create|custom-check-theme|custom-command-apply|custom-comment-create|custom-comment-hide|custom-comment-invisible-p|custom-comment-show|custom-convert-widget|custom-current-group|custom-declare-face|custom-declare-group|custom-declare-theme|custom-declare-variable|custom-face-action|custom-face-attributes-get|custom-face-edit-activate|custom-face-edit-all|custom-face-edit-attribute-tag|custom-face-edit-convert-widget)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:custom-face-edit-deactivate|custom-face-edit-delete|custom-face-edit-fix-value|custom-face-edit-lisp|custom-face-edit-selected|custom-face-edit-value-create|custom-face-edit-value-visibility-action|custom-face-get-current-spec|custom-face-mark-to-reset-standard|custom-face-mark-to-save|custom-face-menu-create|custom-face-reset-saved|custom-face-reset-standard|custom-face-save-command|custom-face-save|custom-face-set|custom-face-standard-value|custom-face-state-set-and-redraw|custom-face-state-set|custom-face-state|custom-face-value-create|custom-face-widget-to-spec|custom-facep|custom-file|custom-filter-face-spec|custom-fix-face-spec|custom-get-fresh-buffer|custom-group-action|custom-group-link-action|custom-group-mark-to-reset-standard|custom-group-mark-to-save|custom-group-members|custom-group-menu-create|custom-group-of-mode|custom-group-reset-current|custom-group-reset-saved|custom-group-reset-standard|custom-group-sample-face-get|custom-group-save|custom-group-set|custom-group-state-set-and-redraw|custom-group-state-update|custom-group-value-create|custom-group-visibility-create|custom-guess-type|custom-handle-all-keywords|custom-handle-keyword|custom-hook-convert-widget|custom-initialize-changed|custom-initialize-default|custom-initialize-reset|custom-initialize-set|custom-load-symbol|custom-load-widget|custom-magic-reset|custom-magic-value-create|custom-make-theme-feature|custom-menu-create|custom-menu-filter|custom-mode|custom-note-var-changed|custom-notify|custom-post-filter-face-spec|custom-pre-filter-face-spec|custom-prefix-add|custom-prompt-customize-unsaved-options|custom-prompt-variable|custom-push-theme|custom-put-if-not|custom-quote|custom-redraw-magic|custom-redraw|custom-reset-faces|custom-reset-standard-save-and-update|custom-reset-variables|custom-reset|custom-save-all|custom-save-delete|custom-save-faces|custom-save-variables|custom-set-default|custom-set-minor-mode|custom-show|custom-sort-items|custom-split-regexp-maybe|custom-state-buffer-message|custom-tag-action|custom-tag-mouse-down-action|custom-theme--load-path|custom-theme-enabled-p|custom-theme-load-confirm|custom-theme-name-valid-p|custom-theme-recalc-face|custom-theme-recalc-variable|custom-theme-reset-faces|custom-theme-reset-variables|custom-theme-visit-theme|custom-toggle-hide-face|custom-toggle-hide-variable|custom-toggle-hide|custom-toggle-parent|custom-unlispify-menu-entry|custom-unlispify-tag-name|custom-unloaded-symbol-p|custom-unloaded-widget-p|custom-unsaved-options|custom-variable-action|custom-variable-backup-value|custom-variable-documentation|custom-variable-edit-lisp|custom-variable-edit|custom-variable-mark-to-reset-standard|custom-variable-mark-to-save|custom-variable-menu-create|custom-variable-prompt|custom-variable-reset-backup|custom-variable-reset-saved|custom-variable-reset-standard|custom-variable-save|custom-variable-set|custom-variable-standard-value|custom-variable-state-set-and-redraw|custom-variable-state-set|custom-variable-state|custom-variable-theme-value|custom-variable-type|custom-variable-value-create|customize-apropos-faces|customize-apropos-groups|customize-apropos-options|customize-apropos|customize-browse|customize-changed-options|customize-changed|customize-create-theme|customize-customized|customize-face-other-window|customize-face|customize-group-other-window|customize-group|customize-mark-as-set|customize-mark-to-save|customize-menu-create|customize-mode|customize-object|customize-option-other-window|customize-option|customize-package-emacs-version|customize-project|customize-push-and-save|customize-read-group|customize-rogue|customize-save-customized|customize-save-variable|customize-saved|customize-set-value|customize-set-variable|customize-target|customize-themes|customize-unsaved|customize-variable-other-window|customize-variable|customize-version-lessp|customize|cvs-add-branch-prefix|cvs-add-face|cvs-add-secondary-branch-prefix|cvs-addto-collection|cvs-append-to-ignore|cvs-append|cvs-applicable-p|cvs-buffer-check|cvs-buffer-p|cvs-bury-buffer|cvs-car|cvs-cdr|cvs-change-cvsroot|cvs-check-fileinfo|cvs-checkout|cvs-cleanup-collection|cvs-cleanup-removed|cvs-cmd-do|cvs-commit-filelist|cvs-commit-minor-wrap|cvs-create-fileinfo|cvs-defaults|cvs-diff-backup-extractor|cvs-dir-member-p|cvs-dired-noselect|cvs-do-commit|cvs-do-edit-log|cvs-do-match|cvs-do-removal|cvs-ediff-diff|cvs-ediff-exit-hook|cvs-ediff-merge|cvs-ediff-startup-hook|cvs-edit-log-filelist|cvs-edit-log-minor-wrap|cvs-edit-log-text-at-point|cvs-emerge-diff|cvs-emerge-merge|cvs-enabledp|cvs-every|cvs-examine|cvs-execute-single-file-list|cvs-execute-single-file|cvs-expand-dir-name|cvs-file-to-string|cvs-fileinfo->backup-file|cvs-fileinfo->base-rev--cmacro|cvs-fileinfo->base-rev|cvs-fileinfo->dir--cmacro|cvs-fileinfo->dir|cvs-fileinfo->file--cmacro|cvs-fileinfo->file|cvs-fileinfo->full-log--cmacro|cvs-fileinfo->full-log|cvs-fileinfo->full-name|cvs-fileinfo->full-path|cvs-fileinfo->head-rev--cmacro|cvs-fileinfo->head-rev|cvs-fileinfo->marked--cmacro|cvs-fileinfo->marked|cvs-fileinfo->merge--cmacro|cvs-fileinfo->merge|cvs-fileinfo->pp-name|cvs-fileinfo->subtype--cmacro|cvs-fileinfo->subtype|cvs-fileinfo->type--cmacro|cvs-fileinfo->type|cvs-fileinfo-from-entries|cvs-fileinfo-p--cmacro|cvs-fileinfo-p|cvs-fileinfo-pp|cvs-fileinfo-update|cvs-fileinfo<|cvs-find-modif|cvs-first|cvs-flags-defaults--cmacro|cvs-flags-defaults|cvs-flags-define|cvs-flags-desc--cmacro|cvs-flags-desc|cvs-flags-hist-sym--cmacro|cvs-flags-hist-sym|cvs-flags-p--cmacro|cvs-flags-p|cvs-flags-persist--cmacro|cvs-flags-persist|cvs-flags-qtypedesc--cmacro|cvs-flags-qtypedesc|cvs-flags-query|cvs-flags-set|cvs-get-buffer-create|cvs-get-cvsroot|cvs-get-marked|cvs-get-module|cvs-global-menu|cvs-header-msg|cvs-help|cvs-ignore-marks-p|cvs-insert-file|cvs-insert-strings|cvs-insert-visited-file|cvs-is-within-p|cvs-make-cvs-buffer|cvs-map|cvs-mark-buffer-changed|cvs-mark-fis-dead|cvs-match|cvs-menu|cvs-minor-mode|cvs-mode!|cvs-mode-acknowledge|cvs-mode-add-change-log-entry-other-window|cvs-mode-add|cvs-mode-byte-compile-files|cvs-mode-checkout|cvs-mode-commit-setup|cvs-mode-commit|cvs-mode-delete-lock|cvs-mode-diff-1|cvs-mode-diff-backup|cvs-mode-diff-head|cvs-mode-diff-map|cvs-mode-diff-repository|cvs-mode-diff-vendor|cvs-mode-diff-yesterday|cvs-mode-diff|cvs-mode-display-file|cvs-mode-do|cvs-mode-edit-log|cvs-mode-examine|cvs-mode-files|cvs-mode-find-file-other-window|cvs-mode-find-file|cvs-mode-force-command|cvs-mode-idiff-other|cvs-mode-idiff|cvs-mode-ignore|cvs-mode-imerge|cvs-mode-insert|cvs-mode-kill-buffers|cvs-mode-kill-process|cvs-mode-log|cvs-mode-map|cvs-mode-mark-all-files|cvs-mode-mark-get-modif|cvs-mode-mark-matching-files|cvs-mode-mark-on-state|cvs-mode-mark|cvs-mode-marked|cvs-mode-next-line|cvs-mode-previous-line|cvs-mode-quit|cvs-mode-remove-handled|cvs-mode-remove|cvs-mode-revert-buffer|cvs-mode-revert-to-rev|cvs-mode-run|cvs-mode-set-flags|cvs-mode-status|cvs-mode-tag|cvs-mode-toggle-mark|cvs-mode-toggle-marks|cvs-mode-tree|cvs-mode-undo|cvs-mode-unmark-all-files|cvs-mode-unmark-up|cvs-mode-unmark|cvs-mode-untag|cvs-mode-update|cvs-mode-view-file-other-window|cvs-mode-view-file|cvs-mode|cvs-mouse-toggle-mark|cvs-move-to-goal-column|cvs-or|cvs-parse-buffer|cvs-parse-commit|cvs-parse-merge|cvs-parse-msg|cvs-parse-process|cvs-parse-run-table|cvs-parse-status|cvs-parse-table|cvs-parsed-fileinfo|cvs-partition|cvs-pop-to-buffer-same-frame|cvs-prefix-define|cvs-prefix-get|cvs-prefix-make-local|cvs-prefix-set|cvs-prefix-sym|cvs-qtypedesc-complete--cmacro|cvs-qtypedesc-complete|cvs-qtypedesc-create--cmacro|cvs-qtypedesc-create|cvs-qtypedesc-hist-sym--cmacro|cvs-qtypedesc-hist-sym|cvs-qtypedesc-obj2str--cmacro|cvs-qtypedesc-obj2str|cvs-qtypedesc-p--cmacro|cvs-qtypedesc-p|cvs-qtypedesc-require--cmacro|cvs-qtypedesc-require|cvs-qtypedesc-str2obj--cmacro|cvs-qtypedesc-str2obj|cvs-query-directory|cvs-query-read|cvs-quickdir|cvs-reread-cvsrc|cvs-retrieve-revision|cvs-revert-if-needed|cvs-run-process|cvs-sentinel|cvs-set-branch-prefix|cvs-set-secondary-branch-prefix|cvs-status-current-file|cvs-status-current-tag|cvs-status-cvstrees|cvs-status-get-tags|cvs-status-minor-wrap|cvs-status-mode|cvs-status-next|cvs-status-prev|cvs-status-trees|cvs-status-vl-to-str|cvs-status|cvs-string-prefix-p|cvs-tag->name--cmacro|cvs-tag->name|cvs-tag->string|cvs-tag->type--cmacro|cvs-tag->type|cvs-tag->vlist--cmacro|cvs-tag->vlist|cvs-tag-compare-1|cvs-tag-compare|cvs-tag-lessp|cvs-tag-make--cmacro|cvs-tag-make-tag|cvs-tag-make|cvs-tag-merge|cvs-tag-p--cmacro|cvs-tag-p|cvs-tags->tree|cvs-tags-list|cvs-temp-buffer|cvs-tree-merge|cvs-tree-print|cvs-tree-tags-insert|cvs-union|cvs-update-filter|cvs-update-header|cvs-update|cvs-vc-command-advice|cwarn-font-lock-keywords|cwarn-font-lock-match-assignment-in-expression|cwarn-font-lock-match-dangerous-semicolon|cwarn-font-lock-match-reference|cwarn-font-lock-match|cwarn-inside-macro|cwarn-is-enabled|cwarn-mode-set-explicitly|cwarn-mode|cycle-spacing|cyrillic-encode-alternativnyj-char|cyrillic-encode-koi8-r-char|dabbrev--abbrev-at-point|dabbrev--find-all-expansions|dabbrev--find-expansion|dabbrev--goto-start-of-abbrev|dabbrev--ignore-buffer-p|dabbrev--ignore-case-p|dabbrev--make-friend-buffer-list|dabbrev--minibuffer-origin|dabbrev--reset-global-variables|dabbrev--safe-replace-match|dabbrev--same-major-mode-p|dabbrev--search|dabbrev--select-buffers|dabbrev--substitute-expansion|dabbrev--try-find|dabbrev-completion|dabbrev-expand|dabbrev-filter-elements|daemon-initialized|daemonp|data-debug-new-buffer|date-to-day|days-between|days-to-time|dbus--init-bus|dbus-byte-array-to-string|dbus-call-method-handler|dbus-check-event|dbus-escape-as-identifier|dbus-event-bus-name|dbus-event-interface-name|dbus-event-member-name|dbus-event-message-type|dbus-event-path-name|dbus-event-serial-number|dbus-event-service-name|dbus-get-all-managed-objects|dbus-get-all-properties|dbus-get-name-owner|dbus-get-property|dbus-get-unique-name|dbus-handle-bus-disconnect|dbus-handle-event|dbus-ignore-errors|dbus-init-bus|dbus-introspect-get-all-nodes|dbus-introspect-get-annotation-names|dbus-introspect-get-annotation|dbus-introspect-get-argument-names|dbus-introspect-get-argument|dbus-introspect-get-attribute|dbus-introspect-get-interface-names|dbus-introspect-get-interface|dbus-introspect-get-method-names|dbus-introspect-get-method|dbus-introspect-get-node-names|dbus-introspect-get-property-names|dbus-introspect-get-property|dbus-introspect-get-signal-names|dbus-introspect-get-signal|dbus-introspect-get-signature|dbus-introspect-xml|dbus-introspect|dbus-list-activatable-names|dbus-list-hash-table|dbus-list-known-names|dbus-list-names|dbus-list-queued-owners|dbus-managed-objects-handler|dbus-message-internal|dbus-method-error-internal|dbus-method-return-internal|dbus-notice-synchronous-call-errors|dbus-peer-handler|dbus-ping|dbus-property-handler|dbus-register-method|dbus-register-property|dbus-register-service|dbus-register-signal|dbus-set-property|dbus-setenv|dbus-string-to-byte-array|dbus-unescape-from-identifier|dbus-unregister-object|dbus-unregister-service|dbx|dcl-back-to-indentation-1|dcl-back-to-indentation|dcl-backward-command|dcl-beginning-of-command-p|dcl-beginning-of-command|dcl-beginning-of-statement|dcl-calc-command-indent-hang|dcl-calc-command-indent-multiple|dcl-calc-command-indent|dcl-calc-cont-indent-relative|dcl-calc-continuation-indent|dcl-command-p|dcl-delete-chars|dcl-delete-indentation|dcl-electric-character|dcl-end-of-command-p|dcl-end-of-command|dcl-end-of-statement|dcl-forward-command|dcl-get-line-type|dcl-guess-option-value|dcl-guess-option|dcl-imenu-create-index-function|dcl-indent-command-line|dcl-indent-command|dcl-indent-continuation-line|dcl-indent-line|dcl-indent-to|dcl-indentation-point|dcl-mode|dcl-option-value-basic|dcl-option-value-comment-line|dcl-option-value-margin-offset|dcl-option-value-offset|dcl-save-all-options|dcl-save-local-variable|dcl-save-mode|dcl-save-nondefault-options|dcl-save-option|dcl-set-option|dcl-show-line-type|dcl-split-line|dcl-tab|dcl-was-looking-at|deactivate-input-method|deactivate-mode-local-bindings|debug--function-list|debug--implement-debug-on-entry|debug-help-follow|debugger--backtrace-base|debugger--hide-locals|debugger--insert-locals|debugger--locals-visible-p|debugger--show-locals)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:debugger-continue|debugger-env-macro|debugger-eval-expression|debugger-frame-clear|debugger-frame-number|debugger-frame|debugger-jump|debugger-list-functions|debugger-make-xrefs|debugger-mode|debugger-record-expression|debugger-reenable|debugger-return-value|debugger-setup-buffer|debugger-step-through|debugger-toggle-locals|decf|decipher--analyze|decipher--digram-counts|decipher--digram-total|decipher-add-undo|decipher-adjacency-list|decipher-alphabet-keypress|decipher-analyze-buffer|decipher-analyze|decipher-complete-alphabet|decipher-copy-cons|decipher-digram-list|decipher-display-range|decipher-display-regexp|decipher-display-stats-buffer|decipher-frequency-count|decipher-get-undo|decipher-insert-frequency-counts|decipher-insert|decipher-keypress|decipher-last-command-char|decipher-loop-no-breaks|decipher-loop-with-breaks|decipher-make-checkpoint|decipher-mode|decipher-read-alphabet|decipher-restore-checkpoint|decipher-resync|decipher-set-map|decipher-show-alphabet|decipher-stats-buffer|decipher-stats-mode|decipher-undo|decipher|declaim|declare-ccl-program|declare-equiv-charset|decode-big5-char|decode-composition-components|decode-composition-rule|decode-hex-string|decode-hz-buffer|decode-hz-region|decode-sjis-char|decompose-region|decompose-string|decrease-left-margin|decrease-right-margin|def-gdb-auto-update-handler|def-gdb-auto-update-trigger|def-gdb-memory-format|def-gdb-memory-show-page|def-gdb-memory-unit|def-gdb-preempt-display-buffer|def-gdb-set-positive-number|def-gdb-thread-buffer-command|def-gdb-thread-buffer-gud-command|def-gdb-thread-buffer-simple-command|def-gdb-trigger-and-handler|default-command-history-filter|default-font-height|default-indent-new-line|default-line-height|default-toplevel-value|defcalcmodevar|defconst-mode-local|defcustom-c-stylevar|defcustom-mh|defezimage|defface-mh|defgeneric|defgroup-mh|defimage-speedbar|define-abbrevs|define-advice|define-auto-insert|define-ccl-program|define-char-code-property|define-charset-alias|define-charset-internal|define-charset|define-child-mode|define-coding-system-alias|define-coding-system-internal|define-coding-system|define-compilation-mode|define-compiler-macro|define-erc-module|define-erc-response-handler|define-global-abbrev|define-global-minor-mode|define-hmac-function|define-ibuffer-column|define-ibuffer-filter|define-ibuffer-op|define-ibuffer-sorter|define-inline|define-lex-analyzer|define-lex-block-analyzer|define-lex-block-type-analyzer|define-lex-keyword-type-analyzer|define-lex-regex-analyzer|define-lex-regex-type-analyzer|define-lex-sexp-type-analyzer|define-lex-simple-regex-analyzer|define-lex-string-type-analyzer|define-lex|define-mail-abbrev|define-mail-alias|define-mail-user-agent|define-mode-abbrev|define-mode-local-override|define-mode-overload-implementation|define-overload|define-overloadable-function|define-setf-expander|define-skeleton|define-translation-hash-table|define-translation-table|define-widget-keywords|defmacro-mh|defmath|defmethod|defun-cvs-mode|defun-gmm|defun-mh|defun-rcirc-command|defvar-mode-local|degrees-to-radians|dehexlify-buffer|delay-warning|delete\\\\*|delete-active-region|delete-all-overlays|delete-completion-window|delete-completion|delete-consecutive-dups|delete-dir-local-variable|delete-directory-internal|delete-duplicate-lines|delete-duplicates|delete-extract-rectangle-line|delete-extract-rectangle|delete-file-local-variable-prop-line|delete-file-local-variable|delete-forward-char|delete-frame-enabled-p|delete-if-not|delete-if|delete-instance|delete-matching-lines|delete-non-matching-lines|delete-other-frames|delete-other-windows-internal|delete-other-windows-vertically|delete-pair|delete-rectangle-line|delete-rectangle|delete-selection-helper|delete-selection-mode|delete-selection-pre-hook|delete-selection-repeat-replace-region|delete-side-window|delete-whitespace-rectangle-line|delete-whitespace-rectangle|delete-window-internal|delimit-columns-customize|delimit-columns-format|delimit-columns-rectangle-line|delimit-columns-rectangle-max|delimit-columns-rectangle|delimit-columns-region|delimit-columns-str|delphi-mode|delsel-unload-function|denato-region|derived-mode-abbrev-table-name|derived-mode-class|derived-mode-hook-name|derived-mode-init-mode-variables|derived-mode-make-docstring|derived-mode-map-name|derived-mode-merge-abbrev-tables|derived-mode-merge-keymaps|derived-mode-merge-syntax-tables|derived-mode-run-hooks|derived-mode-set-abbrev-table|derived-mode-set-keymap|derived-mode-set-syntax-table|derived-mode-setup-function-name|derived-mode-syntax-table-name|describe-bindings-internal|describe-buffer-bindings|describe-char-after|describe-char-categories|describe-char-display|describe-char-padded-string|describe-char-unicode-data|describe-char|describe-character-set|describe-chinese-environment-map|describe-coding-system|describe-copying|describe-current-coding-system-briefly|describe-current-coding-system|describe-current-input-method|describe-cyrillic-environment-map|describe-distribution|describe-european-environment-map|describe-face|describe-font|describe-fontset|describe-function-1|describe-function|describe-gnu-project|describe-indian-environment-map|describe-input-method|describe-key-briefly|describe-key|describe-language-environment|describe-minor-mode-completion-table-for-indicator|describe-minor-mode-completion-table-for-symbol|describe-minor-mode-from-indicator|describe-minor-mode-from-symbol|describe-minor-mode|describe-mode-local-bindings-in-mode|describe-mode-local-bindings|describe-no-warranty|describe-package-1|describe-package|describe-project|describe-property-list|describe-register-1|describe-specified-language-support|describe-text-category|describe-text-properties-1|describe-text-properties|describe-text-sexp|describe-text-widget|describe-theme|describe-variable-custom-version-info|describe-variable|describe-vector|desktop--check-dont-save|desktop--v2s|desktop-append-buffer-args|desktop-auto-save-cancel-timer|desktop-auto-save-disable|desktop-auto-save-enable|desktop-auto-save-set-timer|desktop-auto-save|desktop-buffer-info|desktop-buffer|desktop-change-dir|desktop-claim-lock|desktop-clear|desktop-create-buffer|desktop-file-name|desktop-full-file-name|desktop-full-lock-name|desktop-idle-create-buffers|desktop-kill|desktop-lazy-abort|desktop-lazy-complete|desktop-lazy-create-buffer|desktop-list\\\\*|desktop-load-default|desktop-load-file|desktop-outvar|desktop-owner|desktop-read|desktop-release-lock|desktop-remove|desktop-restore-file-buffer|desktop-restore-frameset|desktop-restoring-frameset-p|desktop-revert|desktop-save-buffer-p|desktop-save-frameset|desktop-save-in-desktop-dir|desktop-save-mode-off|desktop-save-mode|desktop-save|desktop-truncate|desktop-value-to-string|destructor|destructuring-bind|detect-coding-with-language-environment|detect-coding-with-priority|dframe-attached-frame|dframe-click|dframe-close-frame|dframe-current-frame|dframe-detach|dframe-double-click|dframe-frame-mode|dframe-frame-parameter|dframe-get-focus|dframe-hack-buffer-menu|dframe-handle-delete-frame|dframe-handle-iconify-frame|dframe-handle-make-frame-visible|dframe-help-echo|dframe-live-p|dframe-maybee-jump-to-attached-frame|dframe-message|dframe-mouse-event-p|dframe-mouse-hscroll|dframe-mouse-set-point|dframe-needed-height|dframe-popup-kludge|dframe-power-click|dframe-quick-mouse|dframe-reposition-frame-emacs|dframe-reposition-frame-xemacs|dframe-reposition-frame|dframe-select-attached-frame|dframe-set-timer-internal|dframe-set-timer|dframe-switch-buffer-attached-frame|dframe-temp-buffer-show-function|dframe-timer-fn|dframe-track-mouse-xemacs|dframe-track-mouse|dframe-update-keymap|dframe-with-attached-buffer|dframe-y-or-n-p|diary-add-to-list|diary-anniversary|diary-astro-day-number|diary-attrtype-convert|diary-bahai-date|diary-bahai-insert-entry|diary-bahai-insert-monthly-entry|diary-bahai-insert-yearly-entry|diary-bahai-list-entries|diary-bahai-mark-entries|diary-block|diary-check-diary-file|diary-chinese-anniversary|diary-chinese-date|diary-chinese-insert-anniversary-entry|diary-chinese-insert-entry|diary-chinese-insert-monthly-entry|diary-chinese-insert-yearly-entry|diary-chinese-list-entries|diary-chinese-mark-entries|diary-coptic-date|diary-cyclic|diary-date-display-form|diary-date|diary-day-of-year|diary-display-no-entries|diary-entry-compare|diary-entry-time|diary-ethiopic-date|diary-fancy-date-matcher|diary-fancy-date-pattern|diary-fancy-display-mode|diary-fancy-display|diary-fancy-font-lock-fontify-region-function|diary-float|diary-font-lock-date-forms|diary-font-lock-keywords-1|diary-font-lock-keywords|diary-font-lock-sexps|diary-french-date|diary-from-outlook-gnus|diary-from-outlook-internal|diary-from-outlook-rmail|diary-from-outlook|diary-goto-entry|diary-hebrew-birthday|diary-hebrew-date|diary-hebrew-insert-entry|diary-hebrew-insert-monthly-entry|diary-hebrew-insert-yearly-entry|diary-hebrew-list-entries|diary-hebrew-mark-entries|diary-hebrew-omer|diary-hebrew-parasha|diary-hebrew-rosh-hodesh|diary-hebrew-sabbath-candles|diary-hebrew-yahrzeit|diary-include-files|diary-include-other-diary-files|diary-insert-anniversary-entry|diary-insert-block-entry|diary-insert-cyclic-entry|diary-insert-entry-1|diary-insert-entry|diary-insert-monthly-entry|diary-insert-weekly-entry|diary-insert-yearly-entry|diary-islamic-date|diary-islamic-insert-entry|diary-islamic-insert-monthly-entry|diary-islamic-insert-yearly-entry|diary-islamic-list-entries|diary-islamic-mark-entries|diary-iso-date|diary-julian-date|diary-list-entries-1|diary-list-entries-2|diary-list-entries|diary-list-sexp-entries|diary-live-p|diary-lunar-phases|diary-mail-entries|diary-make-date|diary-make-entry|diary-mark-entries-1|diary-mark-entries|diary-mark-included-diary-files|diary-mark-sexp-entries|diary-mayan-date|diary-mode|diary-name-pattern|diary-ordinal-suffix|diary-outlook-format-1|diary-persian-date|diary-print-entries|diary-pull-attrs|diary-redraw-calendar|diary-remind|diary-set-header|diary-set-maybe-redraw|diary-sexp-entry|diary-show-all-entries|diary-simple-display|diary-sort-entries|diary-sunrise-sunset|diary-unhide-everything|diary-view-entries|diary-view-other-diary-entries|diary|diff-add-change-log-entries-other-window|diff-after-change-function|diff-apply-hunk|diff-auto-refine-mode|diff-backup|diff-beginning-of-file-and-junk|diff-beginning-of-file|diff-beginning-of-hunk|diff-bounds-of-file|diff-bounds-of-hunk|diff-buffer-with-file|diff-context->unified|diff-count-matches|diff-current-defun|diff-delete-empty-files|diff-delete-if-empty|diff-delete-trailing-whitespace|diff-ediff-patch|diff-end-of-file|diff-end-of-hunk|diff-file-kill|diff-file-local-copy|diff-file-next|diff-file-prev|diff-filename-drop-dir|diff-find-approx-text|diff-find-file-name|diff-find-source-location|diff-find-text|diff-fixup-modifs|diff-goto-source|diff-hunk-file-names|diff-hunk-kill|diff-hunk-next|diff-hunk-prev|diff-hunk-status-msg|diff-hunk-style|diff-hunk-text|diff-ignore-whitespace-hunk|diff-kill-applied-hunks|diff-kill-junk|diff-latest-backup-file|diff-make-unified|diff-merge-strings|diff-minor-mode|diff-mode-menu|diff-mode|diff-mouse-goto-source|diff-next-complex-hunk|diff-next-error|diff-no-select|diff-post-command-hook|diff-process-filter|diff-refine-hunk|diff-refine-preproc|diff-restrict-view|diff-reverse-direction|diff-sanity-check-context-hunk-half|diff-sanity-check-hunk|diff-sentinel|diff-setup-whitespace|diff-split-hunk|diff-splittable-p|diff-switches|diff-tell-file-name|diff-test-hunk|diff-undo|diff-unified->context|diff-unified-hunk-p|diff-write-contents-hooks|diff-xor|diff-yank-function|diff|dig-exit|dig-extract-rr|dig-invoke|dig-mode|dig-rr-get-pkix-cert|dig|digest-md5-challenge|digest-md5-digest-response|digest-md5-digest-uri|digest-md5-parse-digest-challenge|dir-locals-collect-mode-variables|dir-locals-collect-variables|dir-locals-find-file|dir-locals-get-class-variables|dir-locals-read-from-file|directory-files-recursively|directory-name-p|dired-add-file|dired-advertise|dired-advertised-find-file|dired-align-file|dired-alist-add-1|dired-at-point-prompter|dired-at-point|dired-backup-diff|dired-between-files|dired-buffer-stale-p|dired-buffers-for-dir|dired-build-subdir-alist|dired-change-marks|dired-check-switches|dired-clean-directory|dired-clean-up-after-deletion|dired-clear-alist|dired-compare-directories|dired-compress-file|dired-copy-file|dired-copy-filename-as-kill|dired-create-directory)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:dired-current-directory|dired-delete-entry|dired-delete-file|dired-desktop-buffer-misc-data|dired-diff|dired-directory-changed-p|dired-display-file|dired-dnd-do-ask-action|dired-dnd-handle-file|dired-dnd-handle-local-file|dired-dnd-popup-notice|dired-do-async-shell-command|dired-do-byte-compile|dired-do-chgrp|dired-do-chmod|dired-do-chown|dired-do-compress|dired-do-copy-regexp|dired-do-copy|dired-do-create-files-regexp|dired-do-delete|dired-do-flagged-delete|dired-do-hardlink-regexp|dired-do-hardlink|dired-do-isearch-regexp|dired-do-isearch|dired-do-kill-lines|dired-do-load|dired-do-print|dired-do-query-replace-regexp|dired-do-redisplay|dired-do-relsymlink|dired-do-rename-regexp|dired-do-rename|dired-do-search|dired-do-shell-command|dired-do-symlink-regexp|dired-do-symlink|dired-do-touch|dired-downcase|dired-file-marker|dired-file-name-at-point|dired-find-alternate-file|dired-find-buffer-nocreate|dired-find-file-other-window|dired-find-file|dired-flag-auto-save-files|dired-flag-backup-files|dired-flag-file-deletion|dired-flag-files-regexp|dired-flag-garbage-files|dired-format-columns-of-files|dired-fun-in-all-buffers|dired-get-file-for-visit|dired-get-filename|dired-get-marked-files|dired-get-subdir-max|dired-get-subdir-min|dired-get-subdir|dired-glob-regexp|dired-goto-file-1|dired-goto-file|dired-goto-next-file|dired-goto-next-nontrivial-file|dired-goto-subdir|dired-hide-all|dired-hide-details-mode|dired-hide-details-update-invisibility-spec|dired-hide-subdir|dired-in-this-tree|dired-initial-position|dired-insert-directory|dired-insert-old-subdirs|dired-insert-set-properties|dired-insert-subdir|dired-internal-do-deletions|dired-internal-noselect|dired-isearch-filenames-regexp|dired-isearch-filenames-setup|dired-isearch-filenames|dired-jump-other-window|dired-jump|dired-kill-subdir|dired-log-summary|dired-log|dired-make-absolute|dired-make-relative|dired-map-over-marks|dired-mark-directories|dired-mark-executables|dired-mark-files-containing-regexp|dired-mark-files-in-region|dired-mark-files-regexp|dired-mark-if|dired-mark-pop-up|dired-mark-prompt|dired-mark-remembered|dired-mark-subdir-files|dired-mark-symlinks|dired-mark|dired-marker-regexp|dired-maybe-insert-subdir|dired-mode|dired-mouse-find-file-other-window|dired-move-to-end-of-filename|dired-move-to-filename|dired-next-dirline|dired-next-line|dired-next-marked-file|dired-next-subdir|dired-normalize-subdir|dired-noselect|dired-other-frame|dired-other-window|dired-plural-s|dired-pop-to-buffer|dired-prev-dirline|dired-prev-marked-file|dired-prev-subdir|dired-previous-line|dired-query|dired-read-dir-and-switches|dired-read-regexp|dired-readin-insert|dired-readin|dired-relist-file|dired-remember-hidden|dired-remember-marks|dired-remove-file|dired-rename-file|dired-repeat-over-lines|dired-replace-in-string|dired-restore-desktop-buffer|dired-restore-positions|dired-revert|dired-run-shell-command|dired-safe-switches-p|dired-save-positions|dired-show-file-type|dired-sort-R-check|dired-sort-other|dired-sort-set-mode-line|dired-sort-set-modeline|dired-sort-toggle-or-edit|dired-sort-toggle|dired-string-replace-match|dired-subdir-index|dired-subdir-max|dired-summary|dired-switches-escape-p|dired-switches-recursive-p|dired-toggle-marks|dired-toggle-read-only|dired-tree-down|dired-tree-up|dired-unadvertise|dired-uncache|dired-undo|dired-unmark-all-files|dired-unmark-all-marks|dired-unmark-backward|dired-unmark|dired-up-directory|dired-upcase|dired-view-file|dired-why|dired|dirs|dirtrack-cygwin-directory-function|dirtrack-debug-message|dirtrack-debug-mode|dirtrack-debug-toggle|dirtrack-mode|dirtrack-toggle|dirtrack-windows-directory-function|dirtrack|disable-timeout|disassemble-1|disassemble-internal|disassemble-offset|display-about-screen|display-battery-mode|display-buffer--maybe-pop-up-frame-or-window|display-buffer--maybe-same-window|display-buffer--special-action|display-buffer-assq-regexp|display-buffer-in-atom-window|display-buffer-in-major-side-window|display-buffer-in-side-window|display-buffer-other-frame|display-buffer-record-window|display-call-tree|display-local-help|display-multi-font-p|display-multi-frame-p|display-splash-screen|display-startup-echo-area-message|display-startup-screen|display-table-print-array|display-time-mode|display-time-world|display-time|displaying-byte-compile-warnings|dissociated-press|dnd-get-local-file-name|dnd-get-local-file-uri|dnd-handle-one-url|dnd-insert-text|dnd-open-file|dnd-open-local-file|dnd-open-remote-url|dnd-unescape-uri|dns-get-txt-answer|dns-get|dns-inverse-get|dns-lookup-host|dns-make-network-process|dns-mode-menu|dns-mode-soa-increment-serial|dns-mode-soa-maybe-increment-serial|dns-mode|dns-query-cached|dns-query|dns-read-bytes|dns-read-int32|dns-read-name|dns-read-string-name|dns-read-txt|dns-read-type|dns-read|dns-servers-up-to-date-p|dns-set-servers|dns-write-bytes|dns-write-name|dns-write|dnsDomainIs|dnsResolve|do\\\\*|do-after-load-evaluation|do-all-symbols|do-auto-fill|do-symbols|do|doc\\\\$|doc\\\\/\\\\/|doc-file-to-info|doc-file-to-man|doc-view--current-cache-dir|doc-view-active-pages|doc-view-already-converted-p|doc-view-bookmark-jump|doc-view-bookmark-make-record|doc-view-buffer-message|doc-view-clear-cache|doc-view-clone-buffer-hook|doc-view-convert-current-doc|doc-view-current-cache-doc-pdf|doc-view-current-image|doc-view-current-info|doc-view-current-overlay|doc-view-current-page|doc-view-current-slice|doc-view-desktop-save-buffer|doc-view-dired-cache|doc-view-display|doc-view-djvu->tiff-converter-ddjvu|doc-view-doc->txt|doc-view-document->bitmap|doc-view-dvi->pdf|doc-view-enlarge|doc-view-fallback-mode|doc-view-first-page|doc-view-fit-height-to-window|doc-view-fit-page-to-window|doc-view-fit-width-to-window|doc-view-get-bounding-box|doc-view-goto-page|doc-view-guess-paper-size|doc-view-initiate-display|doc-view-insert-image|doc-view-intersection|doc-view-kill-proc-and-buffer|doc-view-kill-proc|doc-view-last-page-number|doc-view-last-page|doc-view-make-safe-dir|doc-view-menu|doc-view-minor-mode|doc-view-mode-maybe|doc-view-mode-p|doc-view-mode|doc-view-new-window-function|doc-view-next-line-or-next-page|doc-view-next-page|doc-view-odf->pdf-converter-soffice|doc-view-odf->pdf-converter-unoconv|doc-view-open-text|doc-view-pdf\\\\/ps->png|doc-view-pdf->png-converter-ghostscript|doc-view-pdf->png-converter-mupdf|doc-view-pdf->txt|doc-view-previous-line-or-previous-page|doc-view-previous-page|doc-view-ps->pdf|doc-view-ps->png-converter-ghostscript|doc-view-reconvert-doc|doc-view-reset-slice|doc-view-restore-desktop-buffer|doc-view-revert-buffer|doc-view-scale-adjust|doc-view-scale-bounding-box|doc-view-scale-reset|doc-view-scroll-down-or-previous-page|doc-view-scroll-up-or-next-page|doc-view-search-backward|doc-view-search-internal|doc-view-search-next-match|doc-view-search-no-of-matches|doc-view-search-previous-match|doc-view-search|doc-view-sentinel|doc-view-set-doc-type|doc-view-set-slice-from-bounding-box|doc-view-set-slice-using-mouse|doc-view-set-slice|doc-view-set-up-single-converter|doc-view-show-tooltip|doc-view-shrink|doc-view-sort|doc-view-start-process|doc-view-toggle-display|doctex-font-lock-\\\\^\\\\^A|doctex-font-lock-syntactic-face-function|doctex-mode|doctor-\\\\$|doctor-adjectivep|doctor-adverbp|doctor-alcohol|doctor-articlep|doctor-assm|doctor-build|doctor-chat|doctor-colorp|doctor-concat|doctor-conj|doctor-correct-spelling|doctor-death|doctor-def|doctor-define|doctor-defq|doctor-desire|doctor-desire1|doctor-doc|doctor-drug|doctor-eliza|doctor-family|doctor-fear|doctor-fix-2|doctor-fixup|doctor-forget|doctor-foul|doctor-getnoun|doctor-go|doctor-hate|doctor-hates|doctor-hates1|doctor-howdy|doctor-huh|doctor-love|doctor-loves|doctor-mach|doctor-make-string|doctor-math|doctor-meaning|doctor-mode|doctor-modifierp|doctor-mood|doctor-nmbrp|doctor-nounp|doctor-othermodifierp|doctor-plural|doctor-possess|doctor-possessivepronounp|doctor-prepp|doctor-pronounp|doctor-put-meaning|doctor-qloves|doctor-query|doctor-read-print|doctor-read-token|doctor-readin|doctor-remem|doctor-remember|doctor-replace|doctor-ret-or-read|doctor-rms|doctor-rthing|doctor-school|doctor-setprep|doctor-sexnoun|doctor-sexverb|doctor-short|doctor-shorten|doctor-sizep|doctor-sports|doctor-state|doctor-subjsearch|doctor-svo|doctor-symptoms|doctor-toke|doctor-txtype|doctor-type-symbol|doctor-type|doctor-verbp|doctor-vowelp|doctor-when|doctor-wherego|doctor-zippy|doctor|dom-add-child-before|dom-append-child|dom-attr|dom-attributes|dom-by-class|dom-by-id|dom-by-style|dom-by-tag|dom-child-by-tag|dom-children|dom-elements|dom-ensure-node|dom-node|dom-non-text-children|dom-parent|dom-pp|dom-set-attribute|dom-set-attributes|dom-tag|dom-text|dom-texts|dont-compile|double-column|double-mode|double-read-event|double-translate-key|down-ifdef|dsssl-mode|dunnet|dynamic-completion-mode|dynamic-completion-table|dynamic-setting-handle-config-changed-event|easy-menu-add-item|easy-menu-add|easy-menu-always-true-p|easy-menu-binding|easy-menu-change|easy-menu-convert-item-1|easy-menu-convert-item|easy-menu-create-menu|easy-menu-define-key|easy-menu-do-define|easy-menu-filter-return|easy-menu-get-map|easy-menu-intern|easy-menu-item-present-p|easy-menu-lookup-name|easy-menu-make-symbol|easy-menu-name-match|easy-menu-remove-item|easy-menu-remove|easy-menu-return-item|easy-mmode-define-global-mode|easy-mmode-define-keymap|easy-mmode-define-navigation|easy-mmode-define-syntax|easy-mmode-defmap|easy-mmode-defsyntax|easy-mmode-pretty-mode-name|easy-mmode-set-keymap-parents|ebnf-abn-initialize|ebnf-abn-parser|ebnf-adjust-empty|ebnf-adjust-width|ebnf-alternative-dimension|ebnf-alternative-width|ebnf-apply-style|ebnf-apply-style1|ebnf-begin-file|ebnf-begin-job|ebnf-begin-line|ebnf-bnf-initialize|ebnf-bnf-parser|ebnf-boolean|ebnf-buffer-substring|ebnf-check-style-values|ebnf-customize|ebnf-delete-style|ebnf-despool|ebnf-dimensions|ebnf-directory|ebnf-dtd-initialize|ebnf-dtd-parser|ebnf-dup-list|ebnf-ebx-initialize|ebnf-ebx-parser|ebnf-element-width|ebnf-eliminate-empty-rules|ebnf-empty-alternative|ebnf-end-of-string|ebnf-entry|ebnf-eop-horizontal|ebnf-eop-vertical|ebnf-eps-add-context|ebnf-eps-add-production|ebnf-eps-buffer|ebnf-eps-directory|ebnf-eps-file|ebnf-eps-filename|ebnf-eps-finish-and-write|ebnf-eps-footer-comment|ebnf-eps-footer|ebnf-eps-header-comment|ebnf-eps-header-footer-comment|ebnf-eps-header-footer-file|ebnf-eps-header-footer-p|ebnf-eps-header-footer-set|ebnf-eps-header-footer|ebnf-eps-header|ebnf-eps-output|ebnf-eps-production-list|ebnf-eps-region|ebnf-eps-remove-context|ebnf-eps-string|ebnf-eps-write-kill-temp|ebnf-except-dimension|ebnf-file|ebnf-find-style|ebnf-font-attributes|ebnf-font-background|ebnf-font-foreground|ebnf-font-height|ebnf-font-list|ebnf-font-name-select|ebnf-font-name|ebnf-font-select|ebnf-font-size|ebnf-font-width|ebnf-format-color|ebnf-format-float|ebnf-gen-terminal|ebnf-generate-alternative|ebnf-generate-empty|ebnf-generate-eps|ebnf-generate-except|ebnf-generate-non-terminal|ebnf-generate-one-or-more|ebnf-generate-optional|ebnf-generate-postscript|ebnf-generate-production|ebnf-generate-region|ebnf-generate-repeat|ebnf-generate-sequence|ebnf-generate-special|ebnf-generate-terminal|ebnf-generate-with-max-height|ebnf-generate-without-max-height|ebnf-generate-zero-or-more|ebnf-generate|ebnf-get-string|ebnf-horizontal-movement|ebnf-insert-ebnf-prologue|ebnf-insert-style|ebnf-iso-initialize|ebnf-iso-parser|ebnf-justify-list|ebnf-justify|ebnf-log-header|ebnf-log|ebnf-make-alternative|ebnf-make-dup-sequence|ebnf-make-empty|ebnf-make-except|ebnf-make-non-terminal|ebnf-make-one-or-more|ebnf-make-optional|ebnf-make-or-more1|ebnf-make-production|ebnf-make-repeat|ebnf-make-sequence|ebnf-make-special|ebnf-make-terminal|ebnf-make-terminal1|ebnf-make-zero-or-more|ebnf-max-width|ebnf-merge-style|ebnf-message-float|ebnf-message-info|ebnf-new-page|ebnf-newline|ebnf-node-action|ebnf-node-default|ebnf-node-dimension-func|ebnf-node-entry|ebnf-node-generation|ebnf-node-height|ebnf-node-kind|ebnf-node-list|ebnf-node-name|ebnf-node-production|ebnf-node-separator|ebnf-node-width-func|ebnf-node-width|ebnf-non-terminal-dimension|ebnf-one-or-more-dimension|ebnf-optimize|ebnf-optional-dimension|ebnf-otz-initialize|ebnf-parse-and-sort|ebnf-pop-style|ebnf-print-buffer|ebnf-print-directory|ebnf-print-file|ebnf-print-region|ebnf-production-dimension|ebnf-push-style|ebnf-range-regexp|ebnf-repeat-dimension|ebnf-reset-style|ebnf-sequence-dimension|ebnf-sequence-width)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:ebnf-setup|ebnf-shape-value|ebnf-sorter-ascending|ebnf-sorter-descending|ebnf-special-dimension|ebnf-spool-buffer|ebnf-spool-directory|ebnf-spool-file|ebnf-spool-region|ebnf-string|ebnf-syntax-buffer|ebnf-syntax-directory|ebnf-syntax-file|ebnf-syntax-region|ebnf-terminal-dimension|ebnf-terminal-dimension1|ebnf-token-alternative|ebnf-token-except|ebnf-token-optional|ebnf-token-repeat|ebnf-token-sequence|ebnf-trim-right|ebnf-vertical-movement|ebnf-yac-initialize|ebnf-yac-parser|ebnf-zero-or-more-dimension|ebrowse-back-in-position-stack|ebrowse-base-classes|ebrowse-browser-buffer-list|ebrowse-bs-file--cmacro|ebrowse-bs-file|ebrowse-bs-flags--cmacro|ebrowse-bs-flags|ebrowse-bs-name--cmacro|ebrowse-bs-name|ebrowse-bs-p--cmacro|ebrowse-bs-p|ebrowse-bs-pattern--cmacro|ebrowse-bs-pattern|ebrowse-bs-point--cmacro|ebrowse-bs-point|ebrowse-bs-scope--cmacro|ebrowse-bs-scope|ebrowse-buffer-p|ebrowse-build-tree-obarray|ebrowse-choose-from-browser-buffers|ebrowse-choose-tree|ebrowse-class-alist-for-member|ebrowse-class-declaration-regexp|ebrowse-class-in-tree|ebrowse-class-name-displayed-in-member-buffer|ebrowse-collapse-branch|ebrowse-collapse-fn|ebrowse-completing-read-value|ebrowse-const-p|ebrowse-create-tree-buffer|ebrowse-cs-file--cmacro|ebrowse-cs-file|ebrowse-cs-flags--cmacro|ebrowse-cs-flags|ebrowse-cs-name--cmacro|ebrowse-cs-name|ebrowse-cs-p--cmacro|ebrowse-cs-p|ebrowse-cs-pattern--cmacro|ebrowse-cs-pattern|ebrowse-cs-point--cmacro|ebrowse-cs-point|ebrowse-cs-scope--cmacro|ebrowse-cs-scope|ebrowse-cs-source-file--cmacro|ebrowse-cs-source-file|ebrowse-cyclic-display-next\\\\/previous-member-list|ebrowse-cyclic-successor-in-string-list|ebrowse-define-p|ebrowse-direct-base-classes|ebrowse-display-friends-member-list|ebrowse-display-function-member-list|ebrowse-display-member-buffer|ebrowse-display-member-list-for-accessor|ebrowse-display-next-member-list|ebrowse-display-previous-member-list|ebrowse-display-static-functions-member-list|ebrowse-display-static-variables-member-list|ebrowse-display-types-member-list|ebrowse-display-variables-member-list|ebrowse-displaying-friends|ebrowse-displaying-functions|ebrowse-displaying-static-functions|ebrowse-displaying-static-variables|ebrowse-displaying-types|ebrowse-displaying-variables|ebrowse-draw-file-member-info|ebrowse-draw-marks-fn|ebrowse-draw-member-attributes|ebrowse-draw-member-buffer-class-line|ebrowse-draw-member-long-fn|ebrowse-draw-member-regexp|ebrowse-draw-member-short-fn|ebrowse-draw-position-buffer|ebrowse-draw-tree-fn|ebrowse-electric-buffer-list|ebrowse-electric-choose-tree|ebrowse-electric-find-position|ebrowse-electric-get-buffer|ebrowse-electric-list-looper|ebrowse-electric-list-mode|ebrowse-electric-list-quit|ebrowse-electric-list-select|ebrowse-electric-list-undefined|ebrowse-electric-position-looper|ebrowse-electric-position-menu|ebrowse-electric-position-mode|ebrowse-electric-position-quit|ebrowse-electric-position-undefined|ebrowse-electric-select-position|ebrowse-electric-view-buffer|ebrowse-electric-view-position|ebrowse-every|ebrowse-expand-all|ebrowse-expand-branch|ebrowse-explicit-p|ebrowse-extern-c-p|ebrowse-files-list|ebrowse-files-table|ebrowse-fill-member-table|ebrowse-find-class-declaration|ebrowse-find-member-declaration|ebrowse-find-member-definition|ebrowse-find-pattern|ebrowse-find-source-file|ebrowse-for-all-trees|ebrowse-forward-in-position-stack|ebrowse-freeze-member-buffer|ebrowse-frozen-tree-buffer-name|ebrowse-function-declaration\\\\/definition-regexp|ebrowse-gather-statistics|ebrowse-globals-tree-p|ebrowse-goto-visible-member\\\\/all-member-lists|ebrowse-goto-visible-member|ebrowse-hack-electric-buffer-menu|ebrowse-hide-line|ebrowse-hs-command-line-options--cmacro|ebrowse-hs-command-line-options|ebrowse-hs-member-table--cmacro|ebrowse-hs-member-table|ebrowse-hs-p--cmacro|ebrowse-hs-p|ebrowse-hs-unused--cmacro|ebrowse-hs-unused|ebrowse-hs-version--cmacro|ebrowse-hs-version|ebrowse-ignoring-completion-case|ebrowse-inline-p|ebrowse-insert-supers|ebrowse-install-1-to-9-keys|ebrowse-kill-member-buffers-displaying|ebrowse-known-class-trees-buffer-list|ebrowse-list-of-matching-members|ebrowse-list-tree-buffers|ebrowse-mark-all-classes|ebrowse-marked-classes-p|ebrowse-member-bit-set-p|ebrowse-member-buffer-list|ebrowse-member-buffer-object-menu|ebrowse-member-buffer-p|ebrowse-member-class-name-object-menu|ebrowse-member-display-p|ebrowse-member-info-from-point|ebrowse-member-list-name|ebrowse-member-mode|ebrowse-member-mouse-2|ebrowse-member-mouse-3|ebrowse-member-name-object-menu|ebrowse-member-table|ebrowse-mouse-1-in-tree-buffer|ebrowse-mouse-2-in-tree-buffer|ebrowse-mouse-3-in-tree-buffer|ebrowse-mouse-find-member|ebrowse-move-in-position-stack|ebrowse-move-point-to-member|ebrowse-ms-definition-file--cmacro|ebrowse-ms-definition-file|ebrowse-ms-definition-pattern--cmacro|ebrowse-ms-definition-pattern|ebrowse-ms-definition-point--cmacro|ebrowse-ms-definition-point|ebrowse-ms-file--cmacro|ebrowse-ms-file|ebrowse-ms-flags--cmacro|ebrowse-ms-flags|ebrowse-ms-name--cmacro|ebrowse-ms-name|ebrowse-ms-p--cmacro|ebrowse-ms-p|ebrowse-ms-pattern--cmacro|ebrowse-ms-pattern|ebrowse-ms-point--cmacro|ebrowse-ms-point|ebrowse-ms-scope--cmacro|ebrowse-ms-scope|ebrowse-ms-visibility--cmacro|ebrowse-ms-visibility|ebrowse-mutable-p|ebrowse-name\\\\/accessor-alist-for-class-members|ebrowse-name\\\\/accessor-alist-for-visible-members|ebrowse-name\\\\/accessor-alist|ebrowse-on-class-name|ebrowse-on-member-name|ebrowse-output|ebrowse-pop\\\\/switch-to-member-buffer-for-same-tree|ebrowse-pop-from-member-to-tree-buffer|ebrowse-pop-to-browser-buffer|ebrowse-popup-menu|ebrowse-position-file-name--cmacro|ebrowse-position-file-name|ebrowse-position-info--cmacro|ebrowse-position-info|ebrowse-position-name|ebrowse-position-p--cmacro|ebrowse-position-p|ebrowse-position-point--cmacro|ebrowse-position-point|ebrowse-position-target--cmacro|ebrowse-position-target|ebrowse-position|ebrowse-pp-define-regexp|ebrowse-print-statistics-line|ebrowse-pure-virtual-p|ebrowse-push-position|ebrowse-qualified-class-name|ebrowse-read-class-name-and-go|ebrowse-read|ebrowse-redisplay-member-buffer|ebrowse-redraw-marks|ebrowse-redraw-tree|ebrowse-remove-all-member-filters|ebrowse-remove-class-and-kill-member-buffers|ebrowse-remove-class-at-point|ebrowse-rename-buffer|ebrowse-repeat-member-search|ebrowse-revert-tree-buffer-from-file|ebrowse-same-tree-member-buffer-list|ebrowse-save-class|ebrowse-save-selective|ebrowse-save-tree-as|ebrowse-save-tree|ebrowse-select-1st-to-9nth|ebrowse-set-face|ebrowse-set-mark-props|ebrowse-set-member-access-visibility|ebrowse-set-member-buffer-column-width|ebrowse-set-tree-indentation|ebrowse-show-displayed-class-in-tree|ebrowse-show-file-name-at-point|ebrowse-show-progress|ebrowse-some-member-table|ebrowse-some|ebrowse-sort-tree-list|ebrowse-statistics|ebrowse-switch-member-buffer-to-any-class|ebrowse-switch-member-buffer-to-base-class|ebrowse-switch-member-buffer-to-derived-class|ebrowse-switch-member-buffer-to-next-sibling-class|ebrowse-switch-member-buffer-to-other-class|ebrowse-switch-member-buffer-to-previous-sibling-class|ebrowse-switch-member-buffer-to-sibling-class|ebrowse-switch-to-next-member-buffer|ebrowse-symbol-regexp|ebrowse-tags-apropos|ebrowse-tags-choose-class|ebrowse-tags-complete-symbol|ebrowse-tags-display-member-buffer|ebrowse-tags-find-declaration-other-frame|ebrowse-tags-find-declaration-other-window|ebrowse-tags-find-declaration|ebrowse-tags-find-definition-other-frame|ebrowse-tags-find-definition-other-window|ebrowse-tags-find-definition|ebrowse-tags-list-members-in-file|ebrowse-tags-loop-continue|ebrowse-tags-next-file|ebrowse-tags-query-replace|ebrowse-tags-read-member\\\\+class-name|ebrowse-tags-read-name|ebrowse-tags-search-member-use|ebrowse-tags-search|ebrowse-tags-select\\\\/create-member-buffer|ebrowse-tags-view\\\\/find-member-decl\\\\/defn|ebrowse-tags-view-declaration-other-frame|ebrowse-tags-view-declaration-other-window|ebrowse-tags-view-declaration|ebrowse-tags-view-definition-other-frame|ebrowse-tags-view-definition-other-window|ebrowse-tags-view-definition|ebrowse-template-p|ebrowse-throw-list-p|ebrowse-toggle-base-class-display|ebrowse-toggle-const-member-filter|ebrowse-toggle-file-name-display|ebrowse-toggle-inline-member-filter|ebrowse-toggle-long-short-display|ebrowse-toggle-mark-at-point|ebrowse-toggle-member-attributes-display|ebrowse-toggle-private-member-filter|ebrowse-toggle-protected-member-filter|ebrowse-toggle-public-member-filter|ebrowse-toggle-pure-member-filter|ebrowse-toggle-regexp-display|ebrowse-toggle-virtual-member-filter|ebrowse-tree-at-point|ebrowse-tree-buffer-class-object-menu|ebrowse-tree-buffer-list|ebrowse-tree-buffer-object-menu|ebrowse-tree-buffer-p|ebrowse-tree-command:show-friends|ebrowse-tree-command:show-member-functions|ebrowse-tree-command:show-member-variables|ebrowse-tree-command:show-static-member-functions|ebrowse-tree-command:show-static-member-variables|ebrowse-tree-command:show-types|ebrowse-tree-mode|ebrowse-tree-obarray-as-alist|ebrowse-trim-string|ebrowse-ts-base-classes--cmacro|ebrowse-ts-base-classes|ebrowse-ts-class--cmacro|ebrowse-ts-class|ebrowse-ts-friends--cmacro|ebrowse-ts-friends|ebrowse-ts-mark--cmacro|ebrowse-ts-mark|ebrowse-ts-member-functions--cmacro|ebrowse-ts-member-functions|ebrowse-ts-member-variables--cmacro|ebrowse-ts-member-variables|ebrowse-ts-p--cmacro|ebrowse-ts-p|ebrowse-ts-static-functions--cmacro|ebrowse-ts-static-functions|ebrowse-ts-static-variables--cmacro|ebrowse-ts-static-variables|ebrowse-ts-subclasses--cmacro|ebrowse-ts-subclasses|ebrowse-ts-types--cmacro|ebrowse-ts-types|ebrowse-unhide-base-classes|ebrowse-update-member-buffer-mode-line|ebrowse-update-tree-buffer-mode-line|ebrowse-variable-declaration-regexp|ebrowse-view\\\\/find-class-declaration|ebrowse-view\\\\/find-file-and-search-pattern|ebrowse-view\\\\/find-member-declaration\\\\/definition|ebrowse-view\\\\/find-position|ebrowse-view-class-declaration|ebrowse-view-exit-fn|ebrowse-view-file-other-frame|ebrowse-view-member-declaration|ebrowse-view-member-definition|ebrowse-virtual-p|ebrowse-width-of-drawable-area|ebrowse-write-file-hook-fn|ebuffers|ebuffers3|ecase|ecomplete-display-matches|ecomplete-setup|ede--detect-ldf-predicate|ede--detect-ldf-root-predicate|ede--detect-ldf-rootonly-predicate|ede--detect-scan-directory-for-project-root|ede--detect-scan-directory-for-project|ede--detect-scan-directory-for-rootonly-project|ede--detect-stop-scan-p|ede--directory-project-add-description-to-hash|ede--directory-project-from-hash|ede--get-inode-dir-hash|ede--inode-for-dir|ede--inode-get-toplevel-open-project|ede--project-inode|ede--put-inode-dir-hash|ede-add-file|ede-add-project-autoload|ede-add-project-to-global-list|ede-add-subproject|ede-adebug-project-parent|ede-adebug-project-root|ede-adebug-project|ede-apply-object-keymap|ede-apply-preprocessor-map|ede-apply-project-local-variables|ede-apply-target-options|ede-auto-add-to-target|ede-auto-detect-in-dir|ede-auto-load-project|ede-buffer-belongs-to-project-p|ede-buffer-belongs-to-target-p|ede-buffer-documentation-files|ede-buffer-header-file|ede-buffer-mine|ede-buffer-object|ede-buffers|ede-build-forms-menu|ede-check-project-directory|ede-choose-object|ede-commit-local-variables|ede-compile-project|ede-compile-selected|ede-compile-target|ede-configuration-forms-menu|ede-convert-path|ede-cpp-root-project-child-p|ede-cpp-root-project-list-p|ede-cpp-root-project-p|ede-cpp-root-project|ede-create-tag-buttons|ede-current-project|ede-customize-current-target|ede-customize-forms-menu|ede-customize-project|ede-debug-target|ede-delete-project-from-global-list|ede-delete-target|ede-description|ede-detect-directory-for-project|ede-detect-qtest|ede-directory-get-open-project|ede-directory-get-toplevel-open-project|ede-directory-project-cons|ede-directory-project-p|ede-directory-safe-p|ede-dired-minor-mode|ede-dirmatch-installed|ede-do-dirmatch|ede-documentation-files|ede-documentation|ede-ecb-project-paths|ede-edit-file-target|ede-edit-web-page|ede-enable-generic-projects|ede-enable-locate-on-project|ede-expand-filename-impl-via-subproj|ede-expand-filename-impl|ede-expand-filename-local|ede-expand-filename|ede-file-find|ede-find-file|ede-find-nearest-file-line|ede-find-subproject-for-directory|ede-find-target|ede-flush-deleted-projects|ede-flush-directory-hash|ede-flush-project-hash|ede-get-locator-object|ede-global-list-sanity-check|ede-header-file|ede-html-documentation-files|ede-html-documentation|ede-ignore-file|ede-initialize-state-current-buffer|ede-invoke-method)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:ede-java-classpath|ede-linux-load|ede-load-cache|ede-load-project-file|ede-make-check-version|ede-make-dist|ede-make-project-local-variable|ede-map-all-subprojects|ede-map-any-target-p|ede-map-buffers|ede-map-project-buffers|ede-map-subprojects|ede-map-target-buffers|ede-map-targets|ede-menu-items-build|ede-menu-obj-of-class-p|ede-minor-mode|ede-name|ede-new-target-custom|ede-new-target|ede-new|ede-normalize-file\\\\/directory|ede-object-keybindings|ede-object-menu|ede-object-sourcecode|ede-parent-project|ede-preprocessor-map|ede-project-autoload-child-p|ede-project-autoload-dirmatch-child-p|ede-project-autoload-dirmatch-list-p|ede-project-autoload-dirmatch-p|ede-project-autoload-dirmatch|ede-project-autoload-list-p|ede-project-autoload-p|ede-project-autoload|ede-project-buffers|ede-project-child-p|ede-project-configurations-set|ede-project-directory-remove-hash|ede-project-forms-menu|ede-project-list-p|ede-project-p|ede-project-placeholder-child-p|ede-project-placeholder-list-p|ede-project-placeholder-p|ede-project-placeholder|ede-project-root-directory|ede-project-root|ede-project-sort-targets|ede-project|ede-remove-file|ede-rescan-toplevel|ede-reset-all-buffers|ede-run-target|ede-save-cache|ede-set-project-local-variable|ede-set-project-variables|ede-set|ede-singular-object|ede-source-paths|ede-sourcecode-child-p|ede-sourcecode-list-p|ede-sourcecode-p|ede-sourcecode|ede-speedbar-compile-file-project|ede-speedbar-compile-line|ede-speedbar-compile-project|ede-speedbar-edit-projectfile|ede-speedbar-file-setup|ede-speedbar-get-top-project-for-line|ede-speedbar-make-distribution|ede-speedbar-make-map|ede-speedbar-remove-file-from-target|ede-speedbar-toplevel-buttons|ede-speedbar|ede-subproject-p|ede-subproject-relative-path|ede-system-include-path|ede-tag-expand|ede-tag-find|ede-target-buffer-in-sourcelist|ede-target-buffers|ede-target-child-p|ede-target-forms-menu|ede-target-in-project-p|ede-target-list-p|ede-target-name|ede-target-p|ede-target-parent|ede-target-sourcecode|ede-target|ede-toplevel-project-or-nil|ede-toplevel-project|ede-toplevel|ede-turn-on-hook|ede-up-directory|ede-update-version|ede-upload-distribution|ede-upload-html-documentation|ede-vc-project-directory|ede-version|ede-want-any-auxiliary-files-p|ede-want-any-files-p|ede-want-any-source-files-p|ede-want-file-auxiliary-p|ede-want-file-p|ede-want-file-source-p|ede-web-browse-home|ede-with-projectfile|ede|edebug-&optional-wrapper|edebug-&rest-wrapper|edebug--called-interactively-skip|edebug--display|edebug--enter-trace|edebug--form-data-begin--cmacro|edebug--form-data-begin|edebug--form-data-end--cmacro|edebug--form-data-end|edebug--form-data-name--cmacro|edebug--form-data-name|edebug--make-form-data-entry--cmacro|edebug--make-form-data-entry|edebug--read|edebug--recursive-edit|edebug--require-cl-read|edebug--update-coverage|edebug-Continue-fast-mode|edebug-Go-nonstop-mode|edebug-Trace-fast-mode|edebug-\`|edebug-adjust-window|edebug-after-offset|edebug-after|edebug-all-defuns|edebug-backtrace|edebug-basic-spec|edebug-before-offset|edebug-before|edebug-bounce-point|edebug-changing-windows|edebug-clear-coverage|edebug-clear-form-data-entry|edebug-clear-frequency-count|edebug-compute-previous-result|edebug-continue-mode|edebug-copy-cursor|edebug-create-eval-buffer|edebug-current-windows|edebug-cursor-expressions|edebug-cursor-offsets|edebug-debugger|edebug-defining-form|edebug-delete-eval-item|edebug-empty-cursor|edebug-enter|edebug-eval-defun|edebug-eval-display-list|edebug-eval-display|edebug-eval-expression|edebug-eval-last-sexp|edebug-eval-mode|edebug-eval-print-last-sexp|edebug-eval-redisplay|edebug-eval-result-list|edebug-eval|edebug-fast-after|edebug-fast-before|edebug-find-stop-point|edebug-form-data-symbol|edebug-form|edebug-format|edebug-forms|edebug-forward-sexp|edebug-get-displayed-buffer-points|edebug-get-form-data-entry|edebug-go-mode|edebug-goto-here|edebug-help|edebug-ignore-offset|edebug-inc-offset|edebug-initialize-offsets|edebug-install-read-eval-functions|edebug-instrument-callee|edebug-instrument-function|edebug-interactive-p-name|edebug-kill-buffer|edebug-lambda-list-keywordp|edebug-last-sexp|edebug-list-form-args|edebug-list-form|edebug-make-after-form|edebug-make-before-and-after-form|edebug-make-enter-wrapper|edebug-make-form-wrapper|edebug-make-top-form-data-entry|edebug-mark-marker|edebug-mark|edebug-match-&define|edebug-match-&key|edebug-match-\xAC|edebug-match-&optional|edebug-match-&or|edebug-match-&rest|edebug-match-arg|edebug-match-body|edebug-match-colon-name|edebug-match-def-body|edebug-match-def-form|edebug-match-form|edebug-match-function|edebug-match-gate|edebug-match-lambda-expr|edebug-match-list|edebug-match-name|edebug-match-nil|edebug-match-one-spec|edebug-match-place|edebug-match-sexp|edebug-match-specs|edebug-match-string|edebug-match-sublist|edebug-match-symbol|edebug-match|edebug-menu|edebug-message|edebug-mode|edebug-modify-breakpoint|edebug-move-cursor|edebug-new-cursor|edebug-next-breakpoint|edebug-next-mode|edebug-next-token-class|edebug-no-match|edebug-on-entry|edebug-outside-excursion|edebug-overlay-arrow|edebug-pop-to-buffer|edebug-previous-result|edebug-prin1-to-string|edebug-prin1|edebug-print|edebug-read-and-maybe-wrap-form|edebug-read-and-maybe-wrap-form1|edebug-read-backquote|edebug-read-comma|edebug-read-function|edebug-read-list|edebug-read-quote|edebug-read-sexp|edebug-read-storing-offsets|edebug-read-string|edebug-read-symbol|edebug-read-top-level-form|edebug-read-vector|edebug-report-error|edebug-restore-status|edebug-run-fast|edebug-run-slow|edebug-safe-eval|edebug-safe-prin1-to-string|edebug-set-breakpoint|edebug-set-buffer-points|edebug-set-conditional-breakpoint|edebug-set-cursor|edebug-set-form-data-entry|edebug-set-mode|edebug-set-windows|edebug-sexps|edebug-signal|edebug-skip-whitespace|edebug-slow-after|edebug-slow-before|edebug-sort-alist|edebug-spec-p|edebug-step-in|edebug-step-mode|edebug-step-out|edebug-step-through-mode|edebug-stop|edebug-store-after-offset|edebug-store-before-offset|edebug-storing-offsets|edebug-syntax-error|edebug-toggle-save-all-windows|edebug-toggle-save-selected-window|edebug-toggle-save-windows|edebug-toggle|edebug-top-element-required|edebug-top-element|edebug-top-level-nonstop|edebug-top-offset|edebug-trace-display|edebug-trace-mode|edebug-uninstall-read-eval-functions|edebug-unload-function|edebug-unset-breakpoint|edebug-unwrap\\\\*|edebug-unwrap|edebug-update-eval-list|edebug-var-status|edebug-view-outside|edebug-visit-eval-list|edebug-where|edebug-window-list|edebug-window-live-p|edebug-wrap-def-body|ediff-3way-comparison-job|ediff-3way-job|ediff-abbrev-jobname|ediff-abbreviate-file-name|ediff-activate-mark|ediff-add-slash-if-directory|ediff-add-to-history|ediff-ancestor-metajob|ediff-append-custom-diff|ediff-arrange-autosave-in-merge-jobs|ediff-background-face|ediff-backup|ediff-barf-if-not-control-buffer|ediff-buffer-live-p|ediff-buffer-type|ediff-buffers-internal|ediff-buffers|ediff-buffers3|ediff-bury-dir-diffs-buffer|ediff-calc-command-time|ediff-change-saved-variable|ediff-char-to-buftype|ediff-check-version|ediff-choose-syntax-table|ediff-choose-window-setup-function-automatically|ediff-cleanup-mess|ediff-cleanup-meta-buffer|ediff-clear-diff-vector|ediff-clear-fine-diff-vector|ediff-clear-fine-differences-in-one-buffer|ediff-clear-fine-differences|ediff-clone-buffer-for-current-diff-comparison|ediff-clone-buffer-for-region-comparison|ediff-clone-buffer-for-window-comparison|ediff-collect-custom-diffs|ediff-collect-diffs-metajob|ediff-color-display-p|ediff-combine-diffs|ediff-comparison-metajob3|ediff-compute-custom-diffs-maybe|ediff-compute-toolbar-width|ediff-convert-diffs-to-overlays|ediff-convert-fine-diffs-to-overlays|ediff-convert-standard-filename|ediff-copy-A-to-B|ediff-copy-A-to-C|ediff-copy-B-to-A|ediff-copy-B-to-C|ediff-copy-C-to-A|ediff-copy-C-to-B|ediff-copy-diff|ediff-copy-list|ediff-copy-to-buffer|ediff-current-file|ediff-customize|ediff-deactivate-mark|ediff-debug-info|ediff-default-suspend-function|ediff-defvar-local|ediff-delete-all-matches|ediff-delete-overlay|ediff-delete-temp-files|ediff-destroy-control-frame|ediff-device-type|ediff-diff-at-point|ediff-diff-to-diff|ediff-diff3-job|ediff-dir-diff-copy-file|ediff-directories-command|ediff-directories-internal|ediff-directories|ediff-directories3-command|ediff-directories3|ediff-directory-revisions-internal|ediff-directory-revisions|ediff-display-pixel-height|ediff-display-pixel-width|ediff-dispose-of-meta-buffer|ediff-dispose-of-variant-according-to-user|ediff-do-merge|ediff-documentation|ediff-draw-dir-diffs|ediff-empty-diff-region-p|ediff-empty-overlay-p|ediff-event-buffer|ediff-event-key|ediff-event-point|ediff-exec-process|ediff-extract-diffs|ediff-extract-diffs3|ediff-file-attributes|ediff-file-checked-in-p|ediff-file-checked-out-p|ediff-file-compressed-p|ediff-file-modtime|ediff-file-remote-p|ediff-file-size|ediff-filegroup-action|ediff-filename-magic-p|ediff-files-command|ediff-files-internal|ediff-files|ediff-files3|ediff-fill-leading-zero|ediff-find-file|ediff-focus-on-regexp-matches|ediff-format-bindings-of|ediff-format-date|ediff-forward-word|ediff-frame-char-height|ediff-frame-char-width|ediff-frame-has-dedicated-windows|ediff-frame-iconified-p|ediff-frame-unsplittable-p|ediff-get-buffer|ediff-get-combined-region|ediff-get-default-directory-name|ediff-get-default-file-name|ediff-get-diff-overlay-from-diff-record|ediff-get-diff-overlay|ediff-get-diff-posn|ediff-get-diff3-group|ediff-get-difference|ediff-get-directory-files-under-revision|ediff-get-file-eqstatus|ediff-get-fine-diff-vector-from-diff-record|ediff-get-fine-diff-vector|ediff-get-group-buffer|ediff-get-group-comparison-func|ediff-get-group-merge-autostore-dir|ediff-get-group-objA|ediff-get-group-objB|ediff-get-group-objC|ediff-get-group-regexp|ediff-get-lines-to-region-end|ediff-get-lines-to-region-start|ediff-get-meta-info|ediff-get-meta-overlay-at-pos|ediff-get-next-window|ediff-get-region-contents|ediff-get-region-size-coefficient|ediff-get-selected-buffers|ediff-get-session-activity-marker|ediff-get-session-buffer|ediff-get-session-number-at-pos|ediff-get-session-objA-name|ediff-get-session-objA|ediff-get-session-objB-name|ediff-get-session-objB|ediff-get-session-objC-name|ediff-get-session-objC|ediff-get-session-status|ediff-get-state-of-ancestor|ediff-get-state-of-diff|ediff-get-state-of-merge|ediff-get-symbol-from-alist|ediff-get-value-according-to-buffer-type|ediff-get-visible-buffer-window|ediff-get-window-by-clicking|ediff-good-frame-under-mouse|ediff-goto-word|ediff-has-face-support-p|ediff-has-gutter-support-p|ediff-has-toolbar-support-p|ediff-help-for-quick-help|ediff-help-message-line-length|ediff-hide-face|ediff-hide-marked-sessions|ediff-hide-regexp-matches|ediff-highlight-diff-in-one-buffer|ediff-highlight-diff|ediff-in-control-buffer-p|ediff-indent-help-message|ediff-inferior-compare-regions|ediff-insert-dirs-in-meta-buffer|ediff-insert-session-activity-marker-in-meta-buffer|ediff-insert-session-info-in-meta-buffer|ediff-insert-session-status-in-meta-buffer|ediff-install-fine-diff-if-necessary|ediff-intersect-directories|ediff-intersection|ediff-janitor|ediff-jump-to-difference-at-point|ediff-jump-to-difference|ediff-keep-window-config|ediff-key-press-event-p|ediff-kill-bottom-toolbar|ediff-kill-buffer-carefully|ediff-last-command-char|ediff-listable-file|ediff-load-version-control|ediff-looks-like-combined-merge|ediff-make-base-title|ediff-make-bottom-toolbar|ediff-make-bullet-proof-overlay|ediff-make-cloned-buffer|ediff-make-current-diff-overlay|ediff-make-diff2-buffer|ediff-make-empty-tmp-file|ediff-make-fine-diffs|ediff-make-frame-position|ediff-make-indirect-buffer|ediff-make-narrow-control-buffer-id|ediff-make-new-meta-list-element|ediff-make-new-meta-list-header|ediff-make-or-kill-fine-diffs|ediff-make-overlay|ediff-make-temp-file|ediff-make-wide-control-buffer-id|ediff-make-wide-display|ediff-mark-diff-as-space-only|ediff-mark-for-hiding-at-pos|ediff-mark-for-operation-at-pos|ediff-mark-if-equal|ediff-mark-session-for-hiding|ediff-mark-session-for-operation|ediff-maybe-checkout|ediff-maybe-save-and-delete-merge|ediff-member|ediff-merge-buffers-with-ancestor|ediff-merge-buffers|ediff-merge-changed-from-default-p|ediff-merge-command|ediff-merge-directories-command|ediff-merge-directories-with-ancestor-command)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:ediff-merge-directories-with-ancestor|ediff-merge-directories|ediff-merge-directory-revisions-with-ancestor|ediff-merge-directory-revisions|ediff-merge-files-with-ancestor|ediff-merge-files|ediff-merge-job|ediff-merge-metajob|ediff-merge-on-startup|ediff-merge-region-is-non-clash-to-skip|ediff-merge-region-is-non-clash|ediff-merge-revisions-with-ancestor|ediff-merge-revisions|ediff-merge-with-ancestor-command|ediff-merge-with-ancestor-job|ediff-merge-with-ancestor|ediff-merge|ediff-message-if-verbose|ediff-meta-insert-file-info1|ediff-meta-mark-equal-files|ediff-meta-mode|ediff-meta-session-p|ediff-meta-show-patch|ediff-metajob3|ediff-minibuffer-with-setup-hook|ediff-mode|ediff-mouse-event-p|ediff-move-overlay|ediff-multiframe-setup-p|ediff-narrow-control-frame-p|ediff-narrow-job|ediff-next-difference|ediff-next-meta-item|ediff-next-meta-item1|ediff-next-meta-overlay-start|ediff-no-fine-diffs-p|ediff-nonempty-string-p|ediff-nuke-selective-display|ediff-one-filegroup-metajob|ediff-operate-on-marked-sessions|ediff-operate-on-windows|ediff-other-buffer|ediff-overlay-buffer|ediff-overlay-end|ediff-overlay-get|ediff-overlay-put|ediff-overlay-start|ediff-overlayp|ediff-paint-background-regions-in-one-buffer|ediff-paint-background-regions|ediff-patch-buffer|ediff-patch-file-form-meta|ediff-patch-file-internal|ediff-patch-file|ediff-patch-job|ediff-patch-metajob|ediff-place-flags-in-buffer|ediff-place-flags-in-buffer1|ediff-pop-diff|ediff-position-region|ediff-prepare-error-list|ediff-prepare-meta-buffer|ediff-previous-difference|ediff-previous-meta-item|ediff-previous-meta-item1|ediff-previous-meta-overlay-start|ediff-print-diff-vector|ediff-problematic-session-p|ediff-process-filter|ediff-process-sentinel|ediff-profile|ediff-quit-meta-buffer|ediff-quit|ediff-re-merge|ediff-read-event|ediff-read-file-name|ediff-really-quit|ediff-recenter-ancestor|ediff-recenter-one-window|ediff-recenter|ediff-redraw-directory-group-buffer|ediff-redraw-registry-buffer|ediff-refresh-control-frame|ediff-refresh-mode-lines|ediff-region-help-echo|ediff-regions-internal|ediff-regions-linewise|ediff-regions-wordwise|ediff-registry-action|ediff-reload-keymap|ediff-remove-flags-from-buffer|ediff-replace-session-activity-marker-in-meta-buffer|ediff-replace-session-status-in-meta-buffer|ediff-reset-mouse|ediff-restore-diff-in-merge-buffer|ediff-restore-diff|ediff-restore-highlighting|ediff-restore-protected-variables|ediff-restore-variables|ediff-revert-buffers-then-recompute-diffs|ediff-revision-metajob|ediff-revision|ediff-safe-to-quit|ediff-same-contents|ediff-same-file-contents-lists|ediff-same-file-contents|ediff-save-buffer-in-file|ediff-save-buffer|ediff-save-diff-region|ediff-save-protected-variables|ediff-save-time|ediff-save-variables|ediff-scroll-horizontally|ediff-scroll-vertically|ediff-select-difference|ediff-select-lowest-window|ediff-set-actual-diff-options|ediff-set-diff-options|ediff-set-diff-overlays-in-one-buffer|ediff-set-difference|ediff-set-face-pixmap|ediff-set-file-eqstatus|ediff-set-fine-diff-properties-in-one-buffer|ediff-set-fine-diff-properties|ediff-set-fine-diff-vector|ediff-set-fine-overlays-for-combined-merge|ediff-set-fine-overlays-in-one-buffer|ediff-set-help-message|ediff-set-help-overlays|ediff-set-keys|ediff-set-merge-mode|ediff-set-meta-overlay|ediff-set-overlay-face|ediff-set-read-only-in-buf-A|ediff-set-session-status|ediff-set-state-of-all-diffs-in-all-buffers|ediff-set-state-of-diff-in-all-buffers|ediff-set-state-of-diff|ediff-set-state-of-merge|ediff-setup-control-buffer|ediff-setup-control-frame|ediff-setup-diff-regions|ediff-setup-diff-regions3|ediff-setup-fine-diff-regions|ediff-setup-keymap|ediff-setup-meta-map|ediff-setup-windows-default|ediff-setup-windows-multiframe-compare|ediff-setup-windows-multiframe-merge|ediff-setup-windows-multiframe|ediff-setup-windows-plain-compare|ediff-setup-windows-plain-merge|ediff-setup-windows-plain|ediff-setup-windows|ediff-setup|ediff-show-all-diffs|ediff-show-ancestor|ediff-show-current-session-meta-buffer|ediff-show-diff-output|ediff-show-dir-diffs|ediff-show-meta-buff-from-registry|ediff-show-meta-buffer|ediff-show-registry|ediff-shrink-window-C|ediff-skip-merge-region-if-changed-from-default-p|ediff-skip-unsuitable-frames|ediff-spy-after-mouse|ediff-status-info|ediff-strip-last-dir|ediff-strip-mode-line-format|ediff-submit-report|ediff-suspend|ediff-swap-buffers|ediff-test-save-region|ediff-toggle-autorefine|ediff-toggle-filename-truncation|ediff-toggle-help|ediff-toggle-hilit|ediff-toggle-ignore-case|ediff-toggle-multiframe|ediff-toggle-narrow-region|ediff-toggle-read-only|ediff-toggle-regexp-match|ediff-toggle-show-clashes-only|ediff-toggle-skip-changed-regions|ediff-toggle-skip-similar|ediff-toggle-split|ediff-toggle-use-toolbar|ediff-toggle-verbose-help-meta-buffer|ediff-toggle-wide-display|ediff-truncate-string-left|ediff-unhighlight-diff-in-one-buffer|ediff-unhighlight-diff|ediff-unhighlight-diffs-totally-in-one-buffer|ediff-unhighlight-diffs-totally|ediff-union|ediff-unique-buffer-name|ediff-unmark-all-for-hiding|ediff-unmark-all-for-operation|ediff-unselect-and-select-difference|ediff-unselect-difference|ediff-up-meta-hierarchy|ediff-update-diffs|ediff-update-markers-in-dir-meta-buffer|ediff-update-meta-buffer|ediff-update-registry|ediff-update-session-marker-in-dir-meta-buffer|ediff-use-toolbar-p|ediff-user-grabbed-mouse|ediff-valid-difference-p|ediff-verify-file-buffer|ediff-verify-file-merge-buffer|ediff-version|ediff-visible-region|ediff-whitespace-diff-region-p|ediff-window-display-p|ediff-window-ok-for-display|ediff-window-visible-p|ediff-windows-job|ediff-windows-linewise|ediff-windows-wordwise|ediff-windows|ediff-with-current-buffer|ediff-with-syntax-table|ediff-word-mode-job|ediff-wordify|ediff-write-merge-buffer-and-maybe-kill|ediff-xemacs-select-frame-hook|ediff|ediff3-files-command|ediff3|edir-merge-revisions-with-ancestor|edir-merge-revisions|edir-revisions|edirs-merge-with-ancestor|edirs-merge|edirs|edirs3|edit-abbrevs-mode|edit-abbrevs-redefine|edit-abbrevs|edit-bookmarks|edit-kbd-macro|edit-last-kbd-macro|edit-named-kbd-macro|edit-picture|edit-tab-stops-note-changes|edit-tab-stops|edmacro-finish-edit|edmacro-fix-menu-commands|edmacro-format-keys|edmacro-insert-key|edmacro-mode|edmacro-parse-keys|edmacro-sanitize-for-string|edt-advance|edt-append|edt-backup|edt-beginning-of-line|edt-bind-function-key-default|edt-bind-function-key|edt-bind-gold-key-default|edt-bind-gold-key|edt-bind-key-default|edt-bind-key|edt-bind-standard-key|edt-bottom-check|edt-bottom|edt-change-case|edt-change-direction|edt-character|edt-check-match|edt-check-prefix|edt-check-selection|edt-copy-rectangle|edt-copy|edt-current-line|edt-cut-or-copy|edt-cut-rectangle-insert-mode|edt-cut-rectangle-overstrike-mode|edt-cut-rectangle|edt-cut|edt-default-emulation-setup|edt-default-menu-bar-update-buffers|edt-define-key|edt-delete-character|edt-delete-entire-line|edt-delete-line|edt-delete-previous-character|edt-delete-to-beginning-of-line|edt-delete-to-beginning-of-word|edt-delete-to-end-of-line|edt-delete-word|edt-display-the-time|edt-duplicate-line|edt-duplicate-word|edt-electric-helpify|edt-electric-keypad-help|edt-electric-user-keypad-help|edt-eliminate-all-tabs|edt-emulation-off|edt-emulation-on|edt-end-of-line-backward|edt-end-of-line-forward|edt-end-of-line|edt-exit|edt-fill-region|edt-find-backward|edt-find-forward|edt-find-next-backward|edt-find-next-forward|edt-find-next|edt-find|edt-form-feed-insert|edt-goto-percentage|edt-indent-or-fill-region|edt-key-not-assigned|edt-keypad-help|edt-learn|edt-line-backward|edt-line-forward|edt-line-to-bottom-of-window|edt-line-to-middle-of-window|edt-line-to-top-of-window|edt-line|edt-load-keys|edt-lowercase|edt-mark-section-wisely|edt-match-beginning|edt-match-end|edt-next-line|edt-one-word-backward|edt-one-word-forward|edt-page-backward|edt-page-forward|edt-page|edt-paragraph-backward|edt-paragraph-forward|edt-paragraph|edt-paste-rectangle-insert-mode|edt-paste-rectangle-overstrike-mode|edt-paste-rectangle|edt-previous-line|edt-quit|edt-remember|edt-replace|edt-reset|edt-restore-key|edt-scroll-line|edt-scroll-window-backward-line|edt-scroll-window-backward|edt-scroll-window-forward-line|edt-scroll-window-forward|edt-scroll-window|edt-sect-backward|edt-sect-forward|edt-sect|edt-select-default-global-map|edt-select-mode|edt-select-user-global-map|edt-select|edt-sentence-backward|edt-sentence-forward|edt-sentence|edt-set-match|edt-set-screen-width-132|edt-set-screen-width-80|edt-set-scroll-margins|edt-setup-default-bindings|edt-show-match-markers|edt-split-window|edt-substitute|edt-switch-global-maps|edt-tab-insert|edt-toggle-capitalization-of-word|edt-toggle-select|edt-top-check|edt-top|edt-undelete-character|edt-undelete-line|edt-undelete-word|edt-unset-match|edt-uppercase|edt-user-emulation-setup|edt-user-menu-bar-update-buffers|edt-window-bottom|edt-window-top|edt-with-position|edt-word-backward|edt-word-forward|edt-word|edt-y-or-n-p|ehelp-command|eieio--check-type|eieio--class--unused-0|eieio--class-children|eieio--class-class-allocation-a|eieio--class-class-allocation-custom-group|eieio--class-class-allocation-custom-label|eieio--class-class-allocation-custom|eieio--class-class-allocation-doc|eieio--class-class-allocation-printer|eieio--class-class-allocation-protection|eieio--class-class-allocation-type|eieio--class-class-allocation-values|eieio--class-default-object-cache|eieio--class-initarg-tuples|eieio--class-options|eieio--class-parent|eieio--class-protection|eieio--class-public-a|eieio--class-public-custom-group|eieio--class-public-custom-label|eieio--class-public-custom|eieio--class-public-d|eieio--class-public-doc|eieio--class-public-printer|eieio--class-public-type|eieio--class-symbol-obarray|eieio--class-symbol|eieio--defalias|eieio--defgeneric-init-form|eieio--define-field-accessors|eieio--defmethod|eieio--object--unused-0|eieio--object-class|eieio--object-name|eieio--scoped-class|eieio--with-scoped-class|eieio-add-new-slot|eieio-attribute-to-initarg|eieio-barf-if-slot-unbound|eieio-browse|eieio-c3-candidate|eieio-c3-merge-lists|eieio-class-children-fast|eieio-class-children|eieio-class-name|eieio-class-parent|eieio-class-parents-fast|eieio-class-parents|eieio-class-precedence-bfs|eieio-class-precedence-c3|eieio-class-precedence-dfs|eieio-class-precedence-list|eieio-class-slot-name-index|eieio-class-un-autoload|eieio-copy-parents-into-subclass|eieio-custom-mode|eieio-custom-object-apply-reset|eieio-custom-toggle-hide|eieio-custom-toggle-parent|eieio-custom-widget-insert|eieio-customize-object-group|eieio-customize-object|eieio-default-eval-maybe|eieio-default-superclass-child-p|eieio-default-superclass-list-p|eieio-default-superclass-p|eieio-default-superclass|eieio-defclass-autoload|eieio-defclass|eieio-defgeneric-form-primary-only-one|eieio-defgeneric-form-primary-only|eieio-defgeneric-form|eieio-defgeneric-reset-generic-form-primary-only-one|eieio-defgeneric-reset-generic-form-primary-only|eieio-defgeneric-reset-generic-form|eieio-defgeneric|eieio-defmethod|eieio-done-customizing|eieio-edebug-prin1-to-string|eieio-eval-default-p|eieio-filter-slot-type|eieio-generic-call-primary-only|eieio-generic-call|eieio-generic-form|eieio-help-class|eieio-help-constructor|eieio-help-generic|eieio-initarg-to-attribute|eieio-instance-inheritor-child-p|eieio-instance-inheritor-list-p|eieio-instance-inheritor-p|eieio-instance-inheritor-slot-boundp|eieio-instance-inheritor|eieio-instance-tracker-child-p|eieio-instance-tracker-find|eieio-instance-tracker-list-p|eieio-instance-tracker-p|eieio-instance-tracker|eieio-list-prin1|eieio-named-child-p|eieio-named-list-p|eieio-named-p|eieio-named|eieio-object-abstract-to-value|eieio-object-class-name|eieio-object-class|eieio-object-match|eieio-object-name-string|eieio-object-name|eieio-object-p|eieio-object-set-name-string|eieio-object-value-create|eieio-object-value-get|eieio-object-value-to-abstract|eieio-oref-default|eieio-oref|eieio-oset-default|eieio-oset|eieio-override-prin1|eieio-perform-slot-validation-for-default|eieio-perform-slot-validation|eieio-persistent-child-p|eieio-persistent-convert-list-to-object|eieio-persistent-list-p|eieio-persistent-p|eieio-persistent-path-relative)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:eieio-persistent-read|eieio-persistent-save-interactive|eieio-persistent-save|eieio-persistent-slot-type-is-class-p|eieio-persistent-validate\\\\/fix-slot-value|eieio-persistent|eieio-read-customization-group|eieio-set-defaults|eieio-singleton-child-p|eieio-singleton-list-p|eieio-singleton-p|eieio-singleton|eieio-slot-name-index|eieio-slot-originating-class-p|eieio-slot-value-create|eieio-slot-value-get|eieio-specialized-key-to-generic-key|eieio-speedbar-buttons|eieio-speedbar-child-description|eieio-speedbar-child-make-tag-lines|eieio-speedbar-child-p|eieio-speedbar-create-engine|eieio-speedbar-create|eieio-speedbar-customize-line|eieio-speedbar-derive-line-path|eieio-speedbar-description|eieio-speedbar-directory-button-child-p|eieio-speedbar-directory-button-list-p|eieio-speedbar-directory-button-p|eieio-speedbar-directory-button|eieio-speedbar-expand|eieio-speedbar-file-button-child-p|eieio-speedbar-file-button-list-p|eieio-speedbar-file-button-p|eieio-speedbar-file-button|eieio-speedbar-find-nearest-object|eieio-speedbar-handle-click|eieio-speedbar-item-info|eieio-speedbar-line-path|eieio-speedbar-list-p|eieio-speedbar-make-map|eieio-speedbar-make-tag-line|eieio-speedbar-object-buttonname|eieio-speedbar-object-children|eieio-speedbar-object-click|eieio-speedbar-object-expand|eieio-speedbar-p|eieio-speedbar|eieio-unbind-method-implementations|eieio-validate-class-slot-value|eieio-validate-slot-value|eieio-version|eieio-widget-test-class-child-p|eieio-widget-test-class-list-p|eieio-widget-test-class-p|eieio-widget-test-class|eieiomt-add|eieiomt-install|eieiomt-method-list|eieiomt-next|eieiomt-sym-optimize|eighth|eldoc--message-command-p|eldoc-add-command-completions|eldoc-add-command|eldoc-display-message-no-interference-p|eldoc-display-message-p|eldoc-edit-message-commands|eldoc-message|eldoc-minibuffer-message|eldoc-mode|eldoc-pre-command-refresh-echo-area|eldoc-print-current-symbol-info|eldoc-remove-command-completions|eldoc-remove-command|eldoc-schedule-timer|electric--after-char-pos|electric--sort-post-self-insertion-hook|electric-apropos|electric-buffer-list|electric-buffer-menu-looper|electric-buffer-menu-mode|electric-buffer-update-highlight|electric-command-apropos|electric-describe-bindings|electric-describe-function|electric-describe-key|electric-describe-mode|electric-describe-syntax|electric-describe-variable|electric-help-command-loop|electric-help-ctrl-x-prefix|electric-help-execute-extended|electric-help-exit|electric-help-help|electric-help-mode|electric-help-retain|electric-help-undefined|electric-helpify|electric-icon-brace|electric-indent-just-newline|electric-indent-local-mode|electric-indent-mode|electric-indent-post-self-insert-function|electric-layout-mode|electric-layout-post-self-insert-function|electric-newline-and-maybe-indent|electric-nroff-mode|electric-nroff-newline|electric-pair-mode|electric-pascal-colon|electric-pascal-equal|electric-pascal-hash|electric-pascal-semi-or-dot|electric-pascal-tab|electric-pascal-terminate-line|electric-perl-terminator|electric-verilog-backward-sexp|electric-verilog-colon|electric-verilog-forward-sexp|electric-verilog-semi-with-comment|electric-verilog-semi|electric-verilog-tab|electric-verilog-terminate-and-indent|electric-verilog-terminate-line|electric-verilog-tick|electric-view-lossage|el-get[-\\\\w]*|elide-head-show|elide-head|elint-add-required-env|elint-check-cond-form|elint-check-condition-case-form|elint-check-conditional-form|elint-check-defalias-form|elint-check-defcustom-form|elint-check-defun-form|elint-check-defvar-form|elint-check-function-form|elint-check-let-form|elint-check-macro-form|elint-check-quote-form|elint-check-setq-form|elint-clear-log|elint-current-buffer|elint-defun|elint-directory|elint-display-log|elint-env-add-env|elint-env-add-func|elint-env-add-global-var|elint-env-add-macro|elint-env-add-var|elint-env-find-func|elint-env-find-var|elint-env-macro-env|elint-env-macrop|elint-error|elint-file|elint-find-args-in-code|elint-find-autoloaded-variables|elint-find-builtin-args|elint-find-builtins|elint-find-next-top-form|elint-form|elint-forms|elint-get-args|elint-get-log-buffer|elint-get-top-forms|elint-init-env|elint-init-form|elint-initialize|elint-log-message|elint-log|elint-make-env|elint-make-top-form|elint-match-args|elint-output|elint-put-function-args|elint-scan-doc-file|elint-set-mode-line|elint-top-form-form|elint-top-form-pos|elint-top-form|elint-unbound-variable|elint-update-env|elint-warning|elisp--beginning-of-sexp|elisp--byte-code-comment|elisp--company-doc-buffer|elisp--company-doc-string|elisp--company-location|elisp--current-symbol|elisp--docstring-first-line|elisp--docstring-format-sym-doc|elisp--eval-defun-1|elisp--eval-defun|elisp--eval-last-sexp-print-value|elisp--eval-last-sexp|elisp--expect-function-p|elisp--fnsym-in-current-sexp|elisp--form-quoted-p|elisp--function-argstring|elisp--get-fnsym-args-string|elisp--get-var-docstring|elisp--highlight-function-argument|elisp--last-data-store|elisp--local-variables-1|elisp--local-variables|elisp--preceding-sexp|elisp--xref-find-apropos|elisp--xref-find-definitions|elisp--xref-identifier-completion-table|elisp--xref-identifier-file|elisp-byte-code-mode|elisp-byte-code-syntax-propertize|elisp-completion-at-point|elisp-eldoc-documentation-function|elisp-index-search|elisp-last-sexp-toggle-display|elisp-xref-find|elp--instrumented-p|elp--make-wrapper|elp-elapsed-time|elp-instrument-function|elp-instrument-list|elp-instrument-package|elp-output-insert-symname|elp-output-result|elp-pack-number|elp-profilable-p|elp-reset-all|elp-reset-function|elp-reset-list|elp-restore-all|elp-restore-function|elp-restore-list|elp-results-jump-to-definition|elp-results|elp-set-master|elp-sort-by-average-time|elp-sort-by-call-count|elp-sort-by-total-time|elp-unload-function|elp-unset-master|emacs-bzr-get-version|emacs-bzr-version-bzr|emacs-bzr-version-dirstate|emacs-index-search|emacs-lisp-byte-compile-and-load|emacs-lisp-byte-compile|emacs-lisp-macroexpand|emacs-lisp-mode|emacs-lock--can-auto-unlock|emacs-lock--exit-locked-buffer|emacs-lock--kill-buffer-query-functions|emacs-lock--kill-emacs-hook|emacs-lock--kill-emacs-query-functions|emacs-lock--set-mode|emacs-lock-live-process-p|emacs-lock-mode|emacs-lock-unload-function|emacs-repository-get-version|emacs-session-filename|emacs-session-save|emerge-abort|emerge-auto-advance|emerge-buffers-with-ancestor|emerge-buffers|emerge-combine-versions-edit|emerge-combine-versions-internal|emerge-combine-versions-register|emerge-combine-versions|emerge-command-exit|emerge-compare-buffers|emerge-convert-diffs-to-markers|emerge-copy-as-kill-A|emerge-copy-as-kill-B|emerge-copy-modes|emerge-count-matches-string|emerge-default-A|emerge-default-B|emerge-define-key-if-possible|emerge-defvar-local|emerge-edit-mode|emerge-execute-line|emerge-extract-diffs|emerge-extract-diffs3|emerge-fast-mode|emerge-file-names|emerge-files-command|emerge-files-exit|emerge-files-internal|emerge-files-remote|emerge-files-with-ancestor-command|emerge-files-with-ancestor-internal|emerge-files-with-ancestor-remote|emerge-files-with-ancestor|emerge-files|emerge-find-difference-A|emerge-find-difference-B|emerge-find-difference-merge|emerge-find-difference|emerge-find-difference1|emerge-force-define-key|emerge-get-diff3-group|emerge-goto-line|emerge-handle-local-variables|emerge-hash-string-into-string|emerge-insert-A|emerge-insert-B|emerge-join-differences|emerge-jump-to-difference|emerge-line-number-in-buf|emerge-line-numbers|emerge-make-auto-save-file-name|emerge-make-diff-list|emerge-make-diff3-list|emerge-make-temp-file|emerge-mark-difference|emerge-merge-directories|emerge-mode|emerge-new-flags|emerge-next-difference|emerge-one-line-window|emerge-operate-on-windows|emerge-place-flags-in-buffer|emerge-place-flags-in-buffer1|emerge-position-region|emerge-prepare-error-list|emerge-previous-difference|emerge-protect-metachars|emerge-query-and-call|emerge-query-save-buffer|emerge-query-write-file|emerge-quit|emerge-read-file-name|emerge-really-quit|emerge-recenter|emerge-refresh-mode-line|emerge-remember-buffer-characteristics|emerge-remote-exit|emerge-remove-flags-in-buffer|emerge-restore-buffer-characteristics|emerge-restore-variables|emerge-revision-with-ancestor-internal|emerge-revisions-internal|emerge-revisions-with-ancestor|emerge-revisions|emerge-save-variables|emerge-scroll-down|emerge-scroll-left|emerge-scroll-reset|emerge-scroll-right|emerge-scroll-up|emerge-select-A-edit|emerge-select-A|emerge-select-B-edit|emerge-select-B|emerge-select-difference|emerge-select-prefer-Bs|emerge-select-version|emerge-set-combine-template|emerge-set-combine-versions-template|emerge-set-keys|emerge-set-merge-mode|emerge-setup-fixed-keymaps|emerge-setup-windows|emerge-setup-with-ancestor|emerge-setup|emerge-show-file-name|emerge-skip-prefers|emerge-split-difference|emerge-trim-difference|emerge-unique-buffer-name|emerge-unselect-and-select-difference|emerge-unselect-difference|emerge-unslashify-name|emerge-validate-difference|emerge-verify-file-buffer|emerge-write-and-delete|en\\\\/disable-command|enable-flow-control-on|enable-flow-control|encode-big5-char|encode-coding-char|encode-composition-components|encode-composition-rule|encode-hex-string|encode-hz-buffer|encode-hz-region|encode-sjis-char|encode-time-value|encoded-string-description|end-kbd-macro|end-of-buffer-other-window|end-of-icon-defun|end-of-paragraph-text|end-of-sexp|end-of-thing|end-of-visible-line|end-of-visual-line|endp|enlarge-window-horizontally|enlarge-window|enriched-after-change-major-mode|enriched-before-change-major-mode|enriched-decode-background|enriched-decode-display-prop|enriched-decode-foreground|enriched-decode|enriched-encode-other-face|enriched-encode|enriched-face-ans|enriched-get-file-width|enriched-handle-display-prop|enriched-insert-indentation|enriched-make-annotation|enriched-map-property-regions|enriched-mode-map|enriched-mode|enriched-next-annotation|enriched-remove-header|epa--decode-coding-string|epa--derived-mode-p|epa--encode-coding-string|epa--find-coding-system-for-mime-charset|epa--insert-keys|epa--key-list-revert-buffer|epa--key-widget-action|epa--key-widget-button-face-get|epa--key-widget-help-echo|epa--key-widget-value-create|epa--list-keys|epa--marked-keys|epa--read-signature-type|epa--select-keys|epa--select-safe-coding-system|epa--show-key|epa-decrypt-armor-in-region|epa-decrypt-file|epa-decrypt-region|epa-delete-keys|epa-dired-do-decrypt|epa-dired-do-encrypt|epa-dired-do-sign|epa-dired-do-verify|epa-display-error|epa-display-info|epa-display-verify-result|epa-encrypt-file|epa-encrypt-region|epa-exit-buffer|epa-export-keys|epa-file--file-name-regexp-set|epa-file-disable|epa-file-enable|epa-file-find-file-hook|epa-file-handler|epa-file-name-regexp-update|epa-global-mail-mode|epa-import-armor-in-region|epa-import-keys-region|epa-import-keys|epa-info-mode|epa-insert-keys|epa-key-list-mode|epa-key-mode|epa-list-keys|epa-list-secret-keys|epa-mail-decrypt|epa-mail-encrypt|epa-mail-import-keys|epa-mail-mode|epa-mail-sign|epa-mail-verify|epa-mark-key|epa-passphrase-callback-function|epa-progress-callback-function|epa-read-file-name|epa-select-keys|epa-sign-file|epa-sign-region|epa-unmark-key|epa-verify-cleartext-in-region|epa-verify-file|epa-verify-region|epatch-buffer|epatch|epg--args-from-sig-notations|epg--check-error-for-decrypt|epg--clear-string|epg--decode-coding-string|epg--decode-hexstring|epg--decode-percent-escape|epg--decode-quotedstring|epg--encode-coding-string|epg--gv-nreverse|epg--import-keys-1|epg--list-keys-1|epg--make-sub-key-1|epg--make-temp-file|epg--process-filter|epg--prompt-GET_BOOL-untrusted_key\\\\.override|epg--prompt-GET_BOOL|epg--start|epg--status-\\\\*SIG|epg--status-BADARMOR|epg--status-BADSIG|epg--status-DECRYPTION_FAILED|epg--status-DECRYPTION_OKAY|epg--status-DELETE_PROBLEM|epg--status-ENC_TO|epg--status-ERRSIG|epg--status-EXPKEYSIG|epg--status-EXPSIG|epg--status-GET_BOOL|epg--status-GET_HIDDEN|epg--status-GET_LINE|epg--status-GOODSIG|epg--status-IMPORTED|epg--status-IMPORT_OK|epg--status-IMPORT_PROBLEM|epg--status-IMPORT_RES|epg--status-INV_RECP|epg--status-INV_SGNR|epg--status-KEYEXPIRED|epg--status-KEYREVOKED|epg--status-KEY_CREATED|epg--status-KEY_NOT_CREATED|epg--status-NEED_PASSPHRASE|epg--status-NEED_PASSPHRASE_PIN|epg--status-NEED_PASSPHRASE_SYM|epg--status-NODATA)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:epg--status-NOTATION_DATA|epg--status-NOTATION_NAME|epg--status-NO_PUBKEY|epg--status-NO_RECP|epg--status-NO_SECKEY|epg--status-NO_SGNR|epg--status-POLICY_URL|epg--status-PROGRESS|epg--status-REVKEYSIG|epg--status-SIG_CREATED|epg--status-TRUST_FULLY|epg--status-TRUST_MARGINAL|epg--status-TRUST_NEVER|epg--status-TRUST_ULTIMATE|epg--status-TRUST_UNDEFINED|epg--status-UNEXPECTED|epg--status-USERID_HINT|epg--status-VALIDSIG|epg--time-from-seconds|epg-cancel|epg-check-configuration|epg-config--compare-version|epg-config--parse-version|epg-configuration|epg-context--make|epg-context-armor--cmacro|epg-context-armor|epg-context-cipher-algorithm--cmacro|epg-context-cipher-algorithm|epg-context-compress-algorithm--cmacro|epg-context-compress-algorithm|epg-context-digest-algorithm--cmacro|epg-context-digest-algorithm|epg-context-edit-callback--cmacro|epg-context-edit-callback|epg-context-error-output--cmacro|epg-context-error-output|epg-context-home-directory--cmacro|epg-context-home-directory|epg-context-include-certs--cmacro|epg-context-include-certs|epg-context-operation--cmacro|epg-context-operation|epg-context-output-file--cmacro|epg-context-output-file|epg-context-passphrase-callback--cmacro|epg-context-passphrase-callback|epg-context-pinentry-mode--cmacro|epg-context-pinentry-mode|epg-context-process--cmacro|epg-context-process|epg-context-program--cmacro|epg-context-program|epg-context-progress-callback--cmacro|epg-context-progress-callback|epg-context-protocol--cmacro|epg-context-protocol|epg-context-result--cmacro|epg-context-result-for|epg-context-result|epg-context-set-armor|epg-context-set-passphrase-callback|epg-context-set-progress-callback|epg-context-set-result-for|epg-context-set-signers|epg-context-set-textmode|epg-context-sig-notations--cmacro|epg-context-sig-notations|epg-context-signers--cmacro|epg-context-signers|epg-context-textmode--cmacro|epg-context-textmode|epg-data-file--cmacro|epg-data-file|epg-data-string--cmacro|epg-data-string|epg-decode-dn|epg-decrypt-file|epg-decrypt-string|epg-delete-keys|epg-delete-output-file|epg-dn-from-string|epg-edit-key|epg-encrypt-file|epg-encrypt-string|epg-error-to-string|epg-errors-to-string|epg-expand-group|epg-export-keys-to-file|epg-export-keys-to-string|epg-generate-key-from-file|epg-generate-key-from-string|epg-import-keys-from-file|epg-import-keys-from-server|epg-import-keys-from-string|epg-import-result-considered--cmacro|epg-import-result-considered|epg-import-result-imported--cmacro|epg-import-result-imported-rsa--cmacro|epg-import-result-imported-rsa|epg-import-result-imported|epg-import-result-imports--cmacro|epg-import-result-imports|epg-import-result-new-revocations--cmacro|epg-import-result-new-revocations|epg-import-result-new-signatures--cmacro|epg-import-result-new-signatures|epg-import-result-new-sub-keys--cmacro|epg-import-result-new-sub-keys|epg-import-result-new-user-ids--cmacro|epg-import-result-new-user-ids|epg-import-result-no-user-id--cmacro|epg-import-result-no-user-id|epg-import-result-not-imported--cmacro|epg-import-result-not-imported|epg-import-result-secret-imported--cmacro|epg-import-result-secret-imported|epg-import-result-secret-read--cmacro|epg-import-result-secret-read|epg-import-result-secret-unchanged--cmacro|epg-import-result-secret-unchanged|epg-import-result-to-string|epg-import-result-unchanged--cmacro|epg-import-result-unchanged|epg-import-status-fingerprint--cmacro|epg-import-status-fingerprint|epg-import-status-new--cmacro|epg-import-status-new|epg-import-status-reason--cmacro|epg-import-status-reason|epg-import-status-secret--cmacro|epg-import-status-secret|epg-import-status-signature--cmacro|epg-import-status-signature|epg-import-status-sub-key--cmacro|epg-import-status-sub-key|epg-import-status-user-id--cmacro|epg-import-status-user-id|epg-key-owner-trust--cmacro|epg-key-owner-trust|epg-key-signature-class--cmacro|epg-key-signature-class|epg-key-signature-creation-time--cmacro|epg-key-signature-creation-time|epg-key-signature-expiration-time--cmacro|epg-key-signature-expiration-time|epg-key-signature-exportable-p--cmacro|epg-key-signature-exportable-p|epg-key-signature-key-id--cmacro|epg-key-signature-key-id|epg-key-signature-pubkey-algorithm--cmacro|epg-key-signature-pubkey-algorithm|epg-key-signature-user-id--cmacro|epg-key-signature-user-id|epg-key-signature-validity--cmacro|epg-key-signature-validity|epg-key-sub-key-list--cmacro|epg-key-sub-key-list|epg-key-user-id-list--cmacro|epg-key-user-id-list|epg-list-keys|epg-make-context|epg-make-data-from-file--cmacro|epg-make-data-from-file|epg-make-data-from-string--cmacro|epg-make-data-from-string|epg-make-import-result--cmacro|epg-make-import-result|epg-make-import-status--cmacro|epg-make-import-status|epg-make-key--cmacro|epg-make-key-signature--cmacro|epg-make-key-signature|epg-make-key|epg-make-new-signature--cmacro|epg-make-new-signature|epg-make-sig-notation--cmacro|epg-make-sig-notation|epg-make-signature--cmacro|epg-make-signature|epg-make-sub-key--cmacro|epg-make-sub-key|epg-make-user-id--cmacro|epg-make-user-id|epg-new-signature-class--cmacro|epg-new-signature-class|epg-new-signature-creation-time--cmacro|epg-new-signature-creation-time|epg-new-signature-digest-algorithm--cmacro|epg-new-signature-digest-algorithm|epg-new-signature-fingerprint--cmacro|epg-new-signature-fingerprint|epg-new-signature-pubkey-algorithm--cmacro|epg-new-signature-pubkey-algorithm|epg-new-signature-to-string|epg-new-signature-type--cmacro|epg-new-signature-type|epg-passphrase-callback-function|epg-read-output|epg-receive-keys|epg-reset|epg-sig-notation-critical--cmacro|epg-sig-notation-critical|epg-sig-notation-human-readable--cmacro|epg-sig-notation-human-readable|epg-sig-notation-name--cmacro|epg-sig-notation-name|epg-sig-notation-value--cmacro|epg-sig-notation-value|epg-sign-file|epg-sign-keys|epg-sign-string|epg-signature-class--cmacro|epg-signature-class|epg-signature-creation-time--cmacro|epg-signature-creation-time|epg-signature-digest-algorithm--cmacro|epg-signature-digest-algorithm|epg-signature-expiration-time--cmacro|epg-signature-expiration-time|epg-signature-fingerprint--cmacro|epg-signature-fingerprint|epg-signature-key-id--cmacro|epg-signature-key-id|epg-signature-notations--cmacro|epg-signature-notations|epg-signature-pubkey-algorithm--cmacro|epg-signature-pubkey-algorithm|epg-signature-status--cmacro|epg-signature-status|epg-signature-to-string|epg-signature-validity--cmacro|epg-signature-validity|epg-signature-version--cmacro|epg-signature-version|epg-start-decrypt|epg-start-delete-keys|epg-start-edit-key|epg-start-encrypt|epg-start-export-keys|epg-start-generate-key|epg-start-import-keys|epg-start-receive-keys|epg-start-sign-keys|epg-start-sign|epg-start-verify|epg-sub-key-algorithm--cmacro|epg-sub-key-algorithm|epg-sub-key-capability--cmacro|epg-sub-key-capability|epg-sub-key-creation-time--cmacro|epg-sub-key-creation-time|epg-sub-key-expiration-time--cmacro|epg-sub-key-expiration-time|epg-sub-key-fingerprint--cmacro|epg-sub-key-fingerprint|epg-sub-key-id--cmacro|epg-sub-key-id|epg-sub-key-length--cmacro|epg-sub-key-length|epg-sub-key-secret-p--cmacro|epg-sub-key-secret-p|epg-sub-key-validity--cmacro|epg-sub-key-validity|epg-user-id-signature-list--cmacro|epg-user-id-signature-list|epg-user-id-string--cmacro|epg-user-id-string|epg-user-id-validity--cmacro|epg-user-id-validity|epg-verify-file|epg-verify-result-to-string|epg-verify-string|epg-wait-for-completion|epg-wait-for-status|equalp|erc-active-buffer|erc-add-dangerous-host|erc-add-default-channel|erc-add-entry-to-list|erc-add-fool|erc-add-keyword|erc-add-pal|erc-add-query|erc-add-scroll-to-bottom|erc-add-server-user|erc-add-timestamp|erc-add-to-input-ring|erc-all-buffer-names|erc-already-logged-in|erc-arrange-session-in-multiple-windows|erc-auto-query|erc-autoaway-mode|erc-autojoin-add|erc-autojoin-after-ident|erc-autojoin-channels-delayed|erc-autojoin-channels|erc-autojoin-disable|erc-autojoin-enable|erc-autojoin-mode|erc-autojoin-remove|erc-away-time|erc-banlist-finished|erc-banlist-store|erc-banlist-update|erc-beep-on-match|erc-beg-of-input-line|erc-bol|erc-browse-emacswiki-lisp|erc-browse-emacswiki|erc-buffer-filter|erc-buffer-list-with-nick|erc-buffer-list|erc-buffer-visible|erc-button-add-button|erc-button-add-buttons-1|erc-button-add-buttons|erc-button-add-face|erc-button-add-nickname-buttons|erc-button-beats-to-time|erc-button-click-button|erc-button-describe-symbol|erc-button-disable|erc-button-enable|erc-button-mode|erc-button-next-function|erc-button-next|erc-button-press-button|erc-button-previous|erc-button-remove-old-buttons|erc-button-setup|erc-call-hooks|erc-cancel-timer|erc-canonicalize-server-name|erc-capab-identify-mode|erc-change-user-nickname|erc-channel-begin-receiving-names|erc-channel-end-receiving-names|erc-channel-list|erc-channel-names|erc-channel-p|erc-channel-receive-names|erc-channel-user-admin--cmacro|erc-channel-user-admin-p|erc-channel-user-admin|erc-channel-user-halfop--cmacro|erc-channel-user-halfop-p|erc-channel-user-halfop|erc-channel-user-last-message-time--cmacro|erc-channel-user-last-message-time|erc-channel-user-op--cmacro|erc-channel-user-op-p|erc-channel-user-op|erc-channel-user-owner--cmacro|erc-channel-user-owner-p|erc-channel-user-owner|erc-channel-user-p--cmacro|erc-channel-user-p|erc-channel-user-voice--cmacro|erc-channel-user-voice-p|erc-channel-user-voice|erc-clear-input-ring|erc-client-info|erc-cmd-AMSG|erc-cmd-APPENDTOPIC|erc-cmd-AT|erc-cmd-AWAY|erc-cmd-BANLIST|erc-cmd-BL|erc-cmd-BYE|erc-cmd-CHANNEL|erc-cmd-CLEAR|erc-cmd-CLEARTOPIC|erc-cmd-COUNTRY|erc-cmd-CTCP|erc-cmd-DATE|erc-cmd-DCC|erc-cmd-DEOP|erc-cmd-DESCRIBE|erc-cmd-EXIT|erc-cmd-GAWAY|erc-cmd-GQ|erc-cmd-GQUIT|erc-cmd-H|erc-cmd-HELP|erc-cmd-IDLE|erc-cmd-IGNORE|erc-cmd-J|erc-cmd-JOIN|erc-cmd-KICK|erc-cmd-LASTLOG|erc-cmd-LEAVE|erc-cmd-LIST|erc-cmd-LOAD|erc-cmd-M|erc-cmd-MASSUNBAN|erc-cmd-ME'S|erc-cmd-ME|erc-cmd-MODE|erc-cmd-MSG|erc-cmd-MUB|erc-cmd-N|erc-cmd-NAMES|erc-cmd-NICK|erc-cmd-NOTICE|erc-cmd-NOTIFY|erc-cmd-OP|erc-cmd-OPS|erc-cmd-PART|erc-cmd-PING|erc-cmd-Q|erc-cmd-QUERY|erc-cmd-QUIT|erc-cmd-QUOTE|erc-cmd-RECONNECT|erc-cmd-SAY|erc-cmd-SERVER|erc-cmd-SET|erc-cmd-SIGNOFF|erc-cmd-SM|erc-cmd-SQUERY|erc-cmd-SV|erc-cmd-T|erc-cmd-TIME|erc-cmd-TOPIC|erc-cmd-UNIGNORE|erc-cmd-VAR|erc-cmd-VARIABLE|erc-cmd-WHOAMI|erc-cmd-WHOIS|erc-cmd-WHOLEFT|erc-cmd-WI|erc-cmd-WL|erc-cmd-default|erc-cmd-ezb|erc-coding-system-for-target|erc-command-indicator|erc-command-name|erc-command-no-process-p|erc-command-symbol|erc-complete-word-at-point|erc-complete-word|erc-completion-mode|erc-compute-full-name|erc-compute-nick|erc-compute-port|erc-compute-server|erc-connection-established|erc-controls-highlight|erc-controls-interpret|erc-controls-propertize|erc-controls-strip|erc-create-imenu-index|erc-ctcp-query-ACTION|erc-ctcp-query-CLIENTINFO|erc-ctcp-query-DCC|erc-ctcp-query-ECHO|erc-ctcp-query-FINGER|erc-ctcp-query-PING|erc-ctcp-query-TIME|erc-ctcp-query-USERINFO|erc-ctcp-query-VERSION|erc-ctcp-reply-CLIENTINFO|erc-ctcp-reply-ECHO|erc-ctcp-reply-FINGER|erc-ctcp-reply-PING|erc-ctcp-reply-TIME|erc-ctcp-reply-VERSION|erc-current-network|erc-current-nick-p|erc-current-nick|erc-current-time|erc-dcc-mode|erc-debug-missing-hooks|erc-decode-coding-string|erc-decode-parsed-server-response|erc-decode-string-from-target|erc-default-server-handler|erc-default-target|erc-define-catalog-entry|erc-define-catalog|erc-define-minor-mode|erc-delete-dangerous-host|erc-delete-default-channel|erc-delete-dups|erc-delete-fool|erc-delete-if|erc-delete-keyword|erc-delete-pal|erc-delete-query|erc-determine-network|erc-determine-parameters|erc-directory-writable-p|erc-display-command|erc-display-error-notice|erc-display-line-1|erc-display-line|erc-display-message-highlight|erc-display-message|erc-display-msg|erc-display-prompt|erc-display-server-message|erc-downcase|erc-echo-notice-in-active-buffer|erc-echo-notice-in-active-non-server-buffer|erc-echo-notice-in-default-buffer|erc-echo-notice-in-first-user-buffer|erc-echo-notice-in-minibuffer|erc-echo-notice-in-server-buffer|erc-echo-notice-in-target-buffer|erc-echo-notice-in-user-and-target-buffers|erc-echo-notice-in-user-buffers|erc-echo-timestamp|erc-emacs-time-to-erc-time|erc-encode-coding-string|erc-end-of-input-line|erc-ensure-channel-name|erc-error|erc-extract-command-from-line|erc-extract-nick|erc-ezb-add-session|erc-ezb-end-of-session-list|erc-ezb-get-login|erc-ezb-identify)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:erc-ezb-init-session-list|erc-ezb-initialize|erc-ezb-lookup-action|erc-ezb-notice-autodetect|erc-ezb-select-session|erc-ezb-select|erc-faces-in|erc-fill-disable|erc-fill-enable|erc-fill-mode|erc-fill-regarding-timestamp|erc-fill-static|erc-fill-variable|erc-fill|erc-find-file|erc-find-parsed-property|erc-find-script-file|erc-format-@nick|erc-format-away-status|erc-format-channel-modes|erc-format-lag-time|erc-format-message|erc-format-my-nick|erc-format-network|erc-format-nick|erc-format-privmessage|erc-format-target-and\\\\/or-network|erc-format-target-and\\\\/or-server|erc-format-target|erc-format-timestamp|erc-function-arglist|erc-generate-new-buffer-name|erc-get-arglist|erc-get-bg-color-face|erc-get-buffer-create|erc-get-buffer|erc-get-channel-mode-from-keypress|erc-get-channel-nickname-alist|erc-get-channel-nickname-list|erc-get-channel-user-list|erc-get-channel-user|erc-get-fg-color-face|erc-get-hook|erc-get-parsed-vector-nick|erc-get-parsed-vector-type|erc-get-parsed-vector|erc-get-server-nickname-alist|erc-get-server-nickname-list|erc-get-server-user|erc-get-user-mode-prefix|erc-get|erc-go-to-log-matches-buffer|erc-grab-region|erc-group-list|erc-handle-irc-url|erc-handle-login|erc-handle-parsed-server-response|erc-handle-unknown-server-response|erc-handle-user-status-change|erc-hide-current-message-p|erc-hide-fools|erc-hide-timestamps|erc-highlight-error|erc-highlight-notice|erc-identd-mode|erc-identd-start|erc-identd-stop|erc-ignored-reply-p|erc-ignored-user-p|erc-imenu-setup|erc-initialize-log-marker|erc-input-action|erc-input-message|erc-input-ring-setup|erc-insert-aligned|erc-insert-mode-command|erc-insert-timestamp-left-and-right|erc-insert-timestamp-left|erc-insert-timestamp-right|erc-invite-only-mode|erc-irccontrols-disable|erc-irccontrols-enable|erc-irccontrols-mode|erc-is-message-ctcp-and-not-action-p|erc-is-message-ctcp-p|erc-is-valid-nick-p|erc-ison-p|erc-iswitchb|erc-join-channel|erc-keep-place-disable|erc-keep-place-enable|erc-keep-place-mode|erc-keep-place|erc-kill-buffer-function|erc-kill-channel|erc-kill-input|erc-kill-query-buffers|erc-kill-server|erc-list-button|erc-list-disable|erc-list-enable|erc-list-handle-322|erc-list-insert-item|erc-list-install-322-handler|erc-list-join|erc-list-kill|erc-list-make-string|erc-list-match|erc-list-menu-mode|erc-list-menu-sort-by-column|erc-list-mode|erc-list-revert|erc-list|erc-load-irc-script-lines|erc-load-irc-script|erc-load-script|erc-log-aux|erc-log-irc-protocol|erc-log-matches-come-back|erc-log-matches-make-buffer|erc-log-matches|erc-log-mode|erc-log|erc-logging-enabled|erc-login|erc-lurker-cleanup|erc-lurker-initialize|erc-lurker-maybe-trim|erc-lurker-p|erc-lurker-update-status|erc-make-message-variable-name|erc-make-mode-line-buffer-name|erc-make-notice|erc-make-obsolete-variable|erc-make-obsolete|erc-make-read-only|erc-match-current-nick-p|erc-match-dangerous-host-p|erc-match-directed-at-fool-p|erc-match-disable|erc-match-enable|erc-match-fool-p|erc-match-keyword-p|erc-match-message|erc-match-mode|erc-match-pal-p|erc-member-if|erc-member-ignore-case|erc-menu-add|erc-menu-disable|erc-menu-enable|erc-menu-mode|erc-menu-remove|erc-menu|erc-message-english-PART|erc-message-target|erc-message-type-member|erc-message|erc-migrate-modules|erc-mode|erc-modes|erc-modified-channels-display|erc-modified-channels-object|erc-modified-channels-remove-buffer|erc-modified-channels-update|erc-move-to-prompt-disable|erc-move-to-prompt-enable|erc-move-to-prompt-mode|erc-move-to-prompt-setup|erc-move-to-prompt|erc-munge-invisibility-spec|erc-netsplit-JOIN|erc-netsplit-MODE|erc-netsplit-QUIT|erc-netsplit-disable|erc-netsplit-enable|erc-netsplit-install-message-catalogs|erc-netsplit-mode|erc-netsplit-timer|erc-network-name|erc-network|erc-networks-disable|erc-networks-enable|erc-networks-mode|erc-next-command|erc-nick-at-point|erc-nick-equal-p|erc-nick-popup|erc-nickname-in-use|erc-nickserv-identify-mode|erc-nickserv-identify|erc-noncommands-disable|erc-noncommands-enable|erc-noncommands-mode|erc-normalize-port|erc-notifications-mode|erc-notify-mode|erc-occur|erc-once-with-server-event|erc-open-server-buffer-p|erc-open-tls-stream|erc-open|erc-page-mode|erc-parse-modes|erc-parse-prefix|erc-parse-server-response|erc-parse-user|erc-part-from-channel|erc-part-reason-normal|erc-part-reason-various|erc-part-reason-zippy|erc-pcomplete-disable|erc-pcomplete-enable|erc-pcomplete-mode|erc-pcomplete|erc-pcompletions-at-point|erc-popup-input-buffer|erc-port-equal|erc-port-to-string|erc-ports-list|erc-previous-command|erc-process-away|erc-process-ctcp-query|erc-process-ctcp-reply|erc-process-input-line|erc-process-script-line|erc-process-sentinel-1|erc-process-sentinel-2|erc-process-sentinel|erc-prompt|erc-propertize|erc-put-text-properties|erc-put-text-property|erc-query-buffer-p|erc-query|erc-quit\\\\/part-reason-default|erc-quit-reason-normal|erc-quit-reason-various|erc-quit-reason-zippy|erc-quit-server|erc-readonly-disable|erc-readonly-enable|erc-readonly-mode|erc-remove-channel-member|erc-remove-channel-user|erc-remove-channel-users|erc-remove-current-channel-member|erc-remove-entry-from-list|erc-remove-if-not|erc-remove-server-user|erc-remove-text-properties-region|erc-remove-user|erc-replace-current-command|erc-replace-match-subexpression-in-string|erc-replace-mode|erc-replace-regexp-in-string|erc-response-p--cmacro|erc-response-p|erc-response\\\\.command--cmacro|erc-response\\\\.command-args--cmacro|erc-response\\\\.command-args|erc-response\\\\.command|erc-response\\\\.contents--cmacro|erc-response\\\\.contents|erc-response\\\\.sender--cmacro|erc-response\\\\.sender|erc-response\\\\.unparsed--cmacro|erc-response\\\\.unparsed|erc-restore-text-properties|erc-retrieve-catalog-entry|erc-ring-disable|erc-ring-enable|erc-ring-mode|erc-save-buffer-in-logs|erc-scroll-to-bottom|erc-scrolltobottom-disable|erc-scrolltobottom-enable|erc-scrolltobottom-mode|erc-sec-to-time|erc-seconds-to-string|erc-select-read-args|erc-select-startup-file|erc-select|erc-send-action|erc-send-command|erc-send-ctcp-message|erc-send-ctcp-notice|erc-send-current-line|erc-send-distinguish-noncommands|erc-send-input-line|erc-send-input|erc-send-line|erc-send-message|erc-server-001|erc-server-002|erc-server-003|erc-server-004|erc-server-005|erc-server-221|erc-server-250|erc-server-251|erc-server-252|erc-server-253|erc-server-254|erc-server-255|erc-server-256|erc-server-257|erc-server-258|erc-server-259|erc-server-265|erc-server-266|erc-server-275|erc-server-290|erc-server-301|erc-server-303|erc-server-305|erc-server-306|erc-server-307|erc-server-311|erc-server-312|erc-server-313|erc-server-314|erc-server-315|erc-server-317|erc-server-318|erc-server-319|erc-server-320|erc-server-321-message|erc-server-321|erc-server-322-message|erc-server-322|erc-server-323|erc-server-324|erc-server-328|erc-server-329|erc-server-330|erc-server-331|erc-server-332|erc-server-333|erc-server-341|erc-server-352|erc-server-353|erc-server-366|erc-server-367|erc-server-368|erc-server-369|erc-server-371|erc-server-372|erc-server-374|erc-server-375|erc-server-376|erc-server-377|erc-server-378|erc-server-379|erc-server-391|erc-server-401|erc-server-403|erc-server-404|erc-server-405|erc-server-406|erc-server-412|erc-server-421|erc-server-422|erc-server-431|erc-server-432|erc-server-433|erc-server-437|erc-server-442|erc-server-445|erc-server-446|erc-server-451|erc-server-461|erc-server-462|erc-server-463|erc-server-464|erc-server-465|erc-server-474|erc-server-475|erc-server-477|erc-server-481|erc-server-482|erc-server-483|erc-server-484|erc-server-485|erc-server-491|erc-server-501|erc-server-502|erc-server-671|erc-server-ERROR|erc-server-INVITE|erc-server-JOIN|erc-server-KICK|erc-server-MODE|erc-server-MOTD|erc-server-NICK|erc-server-NOTICE|erc-server-PART|erc-server-PING|erc-server-PONG|erc-server-PRIVMSG|erc-server-QUIT|erc-server-TOPIC|erc-server-WALLOPS|erc-server-buffer-live-p|erc-server-buffer-p|erc-server-buffer|erc-server-connect|erc-server-filter-function|erc-server-join-channel|erc-server-process-alive|erc-server-reconnect-p|erc-server-reconnect|erc-server-select|erc-server-send-ping|erc-server-send-queue|erc-server-send|erc-server-setup-periodical-ping|erc-server-user-buffers--cmacro|erc-server-user-buffers|erc-server-user-full-name--cmacro|erc-server-user-full-name|erc-server-user-host--cmacro|erc-server-user-host|erc-server-user-info--cmacro|erc-server-user-info|erc-server-user-login--cmacro|erc-server-user-login|erc-server-user-nickname--cmacro|erc-server-user-nickname|erc-server-user-p--cmacro|erc-server-user-p|erc-services-mode|erc-set-active-buffer|erc-set-channel-key|erc-set-channel-limit|erc-set-current-nick|erc-set-initial-user-mode|erc-set-modes|erc-set-network-name|erc-set-topic|erc-set-write-file-functions|erc-setup-buffer|erc-shorten-server-name|erc-show-timestamps|erc-smiley-disable|erc-smiley-enable|erc-smiley-mode|erc-smiley|erc-sort-channel-users-alphabetically|erc-sort-channel-users-by-activity|erc-sort-strings|erc-sound-mode|erc-speedbar-browser|erc-spelling-mode|erc-split-line|erc-split-multiline-safe|erc-ssl|erc-stamp-disable|erc-stamp-enable|erc-stamp-mode|erc-string-invisible-p|erc-string-no-properties|erc-string-to-emacs-time|erc-string-to-port|erc-subseq|erc-time-diff|erc-time-gt|erc-timestamp-mode|erc-timestamp-offset|erc-tls|erc-toggle-channel-mode|erc-toggle-ctcp-autoresponse|erc-toggle-debug-irc-protocol|erc-toggle-flood-control|erc-toggle-interpret-controls|erc-toggle-timestamps|erc-track-add-to-mode-line|erc-track-disable|erc-track-enable|erc-track-face-priority|erc-track-find-face|erc-track-get-active-buffer|erc-track-get-buffer-window|erc-track-minor-mode-maybe|erc-track-minor-mode|erc-track-mode|erc-track-modified-channels|erc-track-remove-from-mode-line|erc-track-shorten-names|erc-track-sort-by-activest|erc-track-sort-by-importance|erc-track-switch-buffer|erc-trim-string|erc-truncate-buffer-to-size|erc-truncate-buffer|erc-truncate-mode|erc-unique-channel-names|erc-unique-substring-1|erc-unique-substrings|erc-unmorse-disable|erc-unmorse-enable|erc-unmorse-mode|erc-unmorse|erc-unset-network-name|erc-upcase-first-word|erc-update-channel-key|erc-update-channel-limit|erc-update-channel-member|erc-update-channel-topic|erc-update-current-channel-member|erc-update-mode-line-buffer|erc-update-mode-line|erc-update-modes|erc-update-modules|erc-update-undo-list|erc-update-user-nick|erc-update-user|erc-user-input|erc-user-is-active|erc-user-spec|erc-version|erc-view-mode-enter|erc-wash-quit-reason|erc-window-configuration-change|erc-with-all-buffers-of-server|erc-with-buffer|erc-with-selected-window|erc-with-server-buffer|erc-xdcc-add-file|erc-xdcc-mode|erc|eregistry|erevision|ert--abbreviate-string|ert--activate-font-lock-keywords|ert--button-action-position|ert--ewoc-entry-expanded-p--cmacro|ert--ewoc-entry-expanded-p|ert--ewoc-entry-extended-printer-limits-p--cmacro|ert--ewoc-entry-extended-printer-limits-p|ert--ewoc-entry-hidden-p--cmacro|ert--ewoc-entry-hidden-p|ert--ewoc-entry-p--cmacro|ert--ewoc-entry-p|ert--ewoc-entry-test--cmacro|ert--ewoc-entry-test|ert--ewoc-position|ert--expand-should-1|ert--expand-should|ert--explain-equal-including-properties|ert--explain-equal-rec|ert--explain-equal|ert--explain-format-atom|ert--force-message-log-buffer-truncation|ert--format-time-iso8601|ert--insert-human-readable-selector|ert--insert-infos|ert--make-stats|ert--make-xrefs-region|ert--parse-keys-and-body|ert--plist-difference-explanation|ert--pp-with-indentation-and-newline|ert--print-backtrace|ert--print-test-for-ewoc|ert--proper-list-p|ert--record-backtrace|ert--remove-from-list|ert--results-expand-collapse-button-action|ert--results-font-lock-function|ert--results-format-expected-unexpected|ert--results-move|ert--results-progress-bar-button-action|ert--results-test-at-point-allow-redefinition|ert--results-test-at-point-no-redefinition|ert--results-test-node-at-point|ert--results-test-node-or-null-at-point|ert--results-update-after-test-redefinition|ert--results-update-ewoc-hf|ert--results-update-stats-display-maybe|ert--results-update-stats-display|ert--run-test-debugger|ert--run-test-internal|ert--setup-results-buffer|ert--should-error-handle-error|ert--signal-should-execution|ert--significant-plist-keys|ert--skip-unless|ert--special-operator-p|ert--stats-aborted-p--cmacro|ert--stats-aborted-p|ert--stats-current-test--cmacro|ert--stats-current-test|ert--stats-end-time--cmacro)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:ert--stats-end-time|ert--stats-failed-expected--cmacro|ert--stats-failed-expected|ert--stats-failed-unexpected--cmacro|ert--stats-failed-unexpected|ert--stats-next-redisplay--cmacro|ert--stats-next-redisplay|ert--stats-p--cmacro|ert--stats-p|ert--stats-passed-expected--cmacro|ert--stats-passed-expected|ert--stats-passed-unexpected--cmacro|ert--stats-passed-unexpected|ert--stats-selector--cmacro|ert--stats-selector|ert--stats-set-test-and-result|ert--stats-skipped--cmacro|ert--stats-skipped|ert--stats-start-time--cmacro|ert--stats-start-time|ert--stats-test-end-times--cmacro|ert--stats-test-end-times|ert--stats-test-key|ert--stats-test-map--cmacro|ert--stats-test-map|ert--stats-test-pos|ert--stats-test-results--cmacro|ert--stats-test-results|ert--stats-test-start-times--cmacro|ert--stats-test-start-times|ert--stats-tests--cmacro|ert--stats-tests|ert--string-first-line|ert--test-execution-info-ert-debug-on-error--cmacro|ert--test-execution-info-ert-debug-on-error|ert--test-execution-info-exit-continuation--cmacro|ert--test-execution-info-exit-continuation|ert--test-execution-info-next-debugger--cmacro|ert--test-execution-info-next-debugger|ert--test-execution-info-p--cmacro|ert--test-execution-info-p|ert--test-execution-info-result--cmacro|ert--test-execution-info-result|ert--test-execution-info-test--cmacro|ert--test-execution-info-test|ert--test-name-button-action|ert--tests-running-mode-line-indicator|ert--unload-function|ert-char-for-test-result|ert-deftest|ert-delete-all-tests|ert-delete-test|ert-describe-test|ert-equal-including-properties|ert-face-for-stats|ert-face-for-test-result|ert-fail|ert-find-test-other-window|ert-get-test|ert-info|ert-insert-test-name-button|ert-kill-all-test-buffers|ert-make-test-unbound|ert-pass|ert-read-test-name-at-point|ert-read-test-name|ert-results-describe-test-at-point|ert-results-find-test-at-point-other-window|ert-results-jump-between-summary-and-result|ert-results-mode-menu|ert-results-mode|ert-results-next-test|ert-results-pop-to-backtrace-for-test-at-point|ert-results-pop-to-messages-for-test-at-point|ert-results-pop-to-should-forms-for-test-at-point|ert-results-pop-to-timings|ert-results-previous-test|ert-results-rerun-all-tests|ert-results-rerun-test-at-point-debugging-errors|ert-results-rerun-test-at-point|ert-results-toggle-printer-limits-for-test-at-point|ert-run-or-rerun-test|ert-run-test|ert-run-tests-batch-and-exit|ert-run-tests-batch|ert-run-tests-interactively|ert-run-tests|ert-running-test|ert-select-tests|ert-set-test|ert-simple-view-mode|ert-skip|ert-stats-completed-expected|ert-stats-completed-unexpected|ert-stats-completed|ert-stats-skipped|ert-stats-total|ert-string-for-test-result|ert-summarize-tests-batch-and-exit|ert-test-aborted-with-non-local-exit-messages--cmacro|ert-test-aborted-with-non-local-exit-messages|ert-test-aborted-with-non-local-exit-p--cmacro|ert-test-aborted-with-non-local-exit-p|ert-test-aborted-with-non-local-exit-should-forms--cmacro|ert-test-aborted-with-non-local-exit-should-forms|ert-test-at-point|ert-test-body--cmacro|ert-test-body|ert-test-boundp|ert-test-documentation--cmacro|ert-test-documentation|ert-test-expected-result-type--cmacro|ert-test-expected-result-type|ert-test-failed-backtrace--cmacro|ert-test-failed-backtrace|ert-test-failed-condition--cmacro|ert-test-failed-condition|ert-test-failed-infos--cmacro|ert-test-failed-infos|ert-test-failed-messages--cmacro|ert-test-failed-messages|ert-test-failed-p--cmacro|ert-test-failed-p|ert-test-failed-should-forms--cmacro|ert-test-failed-should-forms|ert-test-most-recent-result--cmacro|ert-test-most-recent-result|ert-test-name--cmacro|ert-test-name|ert-test-p--cmacro|ert-test-p|ert-test-passed-messages--cmacro|ert-test-passed-messages|ert-test-passed-p--cmacro|ert-test-passed-p|ert-test-passed-should-forms--cmacro|ert-test-passed-should-forms|ert-test-quit-backtrace--cmacro|ert-test-quit-backtrace|ert-test-quit-condition--cmacro|ert-test-quit-condition|ert-test-quit-infos--cmacro|ert-test-quit-infos|ert-test-quit-messages--cmacro|ert-test-quit-messages|ert-test-quit-p--cmacro|ert-test-quit-p|ert-test-quit-should-forms--cmacro|ert-test-quit-should-forms|ert-test-result-expected-p|ert-test-result-messages--cmacro|ert-test-result-messages|ert-test-result-p--cmacro|ert-test-result-p|ert-test-result-should-forms--cmacro|ert-test-result-should-forms|ert-test-result-type-p|ert-test-result-with-condition-backtrace--cmacro|ert-test-result-with-condition-backtrace|ert-test-result-with-condition-condition--cmacro|ert-test-result-with-condition-condition|ert-test-result-with-condition-infos--cmacro|ert-test-result-with-condition-infos|ert-test-result-with-condition-messages--cmacro|ert-test-result-with-condition-messages|ert-test-result-with-condition-p--cmacro|ert-test-result-with-condition-p|ert-test-result-with-condition-should-forms--cmacro|ert-test-result-with-condition-should-forms|ert-test-skipped-backtrace--cmacro|ert-test-skipped-backtrace|ert-test-skipped-condition--cmacro|ert-test-skipped-condition|ert-test-skipped-infos--cmacro|ert-test-skipped-infos|ert-test-skipped-messages--cmacro|ert-test-skipped-messages|ert-test-skipped-p--cmacro|ert-test-skipped-p|ert-test-skipped-should-forms--cmacro|ert-test-skipped-should-forms|ert-test-tags--cmacro|ert-test-tags|ert|eshell\\\\/addpath|eshell\\\\/define|eshell\\\\/env|eshell\\\\/eshell-debug|eshell\\\\/exit|eshell\\\\/export|eshell\\\\/jobs|eshell\\\\/kill|eshell\\\\/setq|eshell\\\\/unset|eshell\\\\/wait|eshell\\\\/which|eshell--apply-redirections|eshell--do-opts|eshell--process-args|eshell--process-option|eshell--set-option|eshell-add-to-window-buffer-names|eshell-apply\\\\*|eshell-apply-indices|eshell-apply|eshell-applyn|eshell-arg-delimiter|eshell-arg-initialize|eshell-as-subcommand|eshell-backward-argument|eshell-begin-on-new-line|eshell-beginning-of-input|eshell-beginning-of-output|eshell-bol|eshell-buffered-print|eshell-clipboard-append|eshell-close-handles|eshell-close-target|eshell-cmd-initialize|eshell-command-finished|eshell-command-result|eshell-command-started|eshell-command-to-value|eshell-command|eshell-commands|eshell-complete-lisp-symbols|eshell-complete-variable-assignment|eshell-complete-variable-reference|eshell-condition-case|eshell-convert|eshell-copy-environment|eshell-copy-handles|eshell-copy-old-input|eshell-copy-tree|eshell-create-handles|eshell-current-ange-uids|eshell-debug-command|eshell-debug-show-parsed-args|eshell-directory-files-and-attributes|eshell-directory-files|eshell-do-command-to-value|eshell-do-eval|eshell-do-pipelines-synchronously|eshell-do-pipelines|eshell-do-subjob|eshell-end-of-output|eshell-environment-variables|eshell-envvar-names|eshell-error|eshell-errorn|eshell-escape-arg|eshell-eval\\\\*|eshell-eval-command|eshell-eval-using-options|eshell-eval|eshell-evaln|eshell-exec-lisp|eshell-execute-pipeline|eshell-exit-success-p|eshell-explicit-command|eshell-ext-initialize|eshell-external-command|eshell-file-attributes|eshell-find-alias-function|eshell-find-delimiter|eshell-find-interpreter|eshell-find-tag|eshell-finish-arg|eshell-flatten-and-stringify|eshell-flatten-list|eshell-flush|eshell-for|eshell-forward-argument|eshell-funcall\\\\*|eshell-funcall|eshell-funcalln|eshell-gather-process-output|eshell-get-old-input|eshell-get-target|eshell-get-variable|eshell-goto-input-start|eshell-group-id|eshell-group-name|eshell-handle-ansi-color|eshell-handle-control-codes|eshell-handle-local-variables|eshell-index-value|eshell-init-print-buffer|eshell-insert-buffer-name|eshell-insert-envvar|eshell-insert-process|eshell-insertion-filter|eshell-interactive-output-p|eshell-interactive-print|eshell-interactive-process|eshell-intercept-commands|eshell-interpolate-variable|eshell-interrupt-process|eshell-invoke-batch-file|eshell-invoke-directly|eshell-invokify-arg|eshell-io-initialize|eshell-kill-append|eshell-kill-buffer-function|eshell-kill-input|eshell-kill-new|eshell-kill-output|eshell-kill-process-function|eshell-kill-process|eshell-life-is-too-much|eshell-lisp-command\\\\*|eshell-lisp-command|eshell-looking-at-backslash-return|eshell-make-private-directory|eshell-manipulate|eshell-mark-output|eshell-mode|eshell-move-argument|eshell-named-command\\\\*|eshell-named-command|eshell-needs-pipe-p|eshell-no-command-conversion|eshell-operator|eshell-output-filter|eshell-output-object-to-target|eshell-output-object|eshell-parse-ange-ls|eshell-parse-argument|eshell-parse-arguments|eshell-parse-backslash|eshell-parse-colon-path|eshell-parse-command-input|eshell-parse-command|eshell-parse-delimiter|eshell-parse-double-quote|eshell-parse-indices|eshell-parse-lisp-argument|eshell-parse-literal-quote|eshell-parse-pipeline|eshell-parse-redirection|eshell-parse-special-reference|eshell-parse-subcommand-argument|eshell-parse-variable-ref|eshell-parse-variable|eshell-plain-command|eshell-postoutput-scroll-to-bottom|eshell-preinput-scroll-to-bottom|eshell-print|eshell-printable-size|eshell-printn|eshell-proc-initialize|eshell-process-identity|eshell-process-interact|eshell-processp|eshell-protect-handles|eshell-protect|eshell-push-command-mark|eshell-query-kill-processes|eshell-queue-input|eshell-quit-process|eshell-quote-argument|eshell-quote-backslash|eshell-read-group-names|eshell-read-host-names|eshell-read-hosts-file|eshell-read-hosts|eshell-read-passwd-file|eshell-read-passwd|eshell-read-process-name|eshell-read-user-names|eshell-record-process-object|eshell-redisplay|eshell-regexp-arg|eshell-remote-command|eshell-remove-from-window-buffer-names|eshell-remove-process-entry|eshell-repeat-argument|eshell-report-bug|eshell-reset-after-proc|eshell-reset|eshell-resolve-current-argument|eshell-resume-command|eshell-resume-eval|eshell-return-exits-minibuffer|eshell-rewrite-for-command|eshell-rewrite-if-command|eshell-rewrite-initial-subcommand|eshell-rewrite-named-command|eshell-rewrite-sexp-command|eshell-rewrite-while-command|eshell-round-robin-kill|eshell-run-output-filters|eshell-script-interpreter|eshell-search-path|eshell-self-insert-command|eshell-send-eof-to-process|eshell-send-input|eshell-send-invisible|eshell-sentinel|eshell-separate-commands|eshell-set-output-handle|eshell-show-maximum-output|eshell-show-output|eshell-show-usage|eshell-split-path|eshell-stringify-list|eshell-stringify|eshell-strip-redirections|eshell-structure-basic-command|eshell-subcommand-arg-values|eshell-subgroups|eshell-sublist|eshell-substring|eshell-to-flat-string|eshell-toggle-direct-send|eshell-trap-errors|eshell-truncate-buffer|eshell-under-windows-p|eshell-uniqify-list|eshell-unload-all-modules|eshell-unload-extension-modules|eshell-update-markers|eshell-user-id|eshell-user-name|eshell-using-module|eshell-var-initialize|eshell-variables-list|eshell-wait-for-process|eshell-watch-for-password-prompt|eshell-winnow-list|eshell-with-file-modes|eshell-with-private-file-modes|eshell|etags--xref-find-definitions|etags-file-of-tag|etags-goto-tag-location|etags-list-tags|etags-recognize-tags-table|etags-snarf-tag|etags-tags-apropos-additional|etags-tags-apropos|etags-tags-completion-table|etags-tags-included-tables|etags-tags-table-files|etags-verify-tags-table|etags-xref-find|ethio-composition-function|ethio-fidel-to-java-buffer|ethio-fidel-to-sera-buffer|ethio-fidel-to-sera-marker|ethio-fidel-to-sera-region|ethio-fidel-to-tex-buffer|ethio-find-file|ethio-input-special-character|ethio-insert-ethio-space|ethio-java-to-fidel-buffer|ethio-modify-vowel|ethio-replace-space|ethio-sera-to-fidel-buffer|ethio-sera-to-fidel-marker|ethio-sera-to-fidel-region|ethio-tex-to-fidel-buffer|ethio-write-file|etypecase|eudc-add-field-to-records|eudc-bookmark-current-server|eudc-bookmark-server|eudc-caar|eudc-cadr|eudc-cdaar|eudc-cdar|eudc-customize|eudc-default-set|eudc-display-generic-binary|eudc-display-jpeg-as-button|eudc-display-jpeg-inline|eudc-display-mail|eudc-display-records|eudc-display-sound|eudc-display-url|eudc-distribute-field-on-records|eudc-edit-hotlist|eudc-expand-inline|eudc-extract-n-word-formats|eudc-filter-duplicate-attributes|eudc-filter-partial-records|eudc-format-attribute-name-for-display|eudc-format-query|eudc-get-attribute-list|eudc-get-email|eudc-get-phone|eudc-insert-record-at-point-into-bbdb|eudc-install-menu|eudc-lax-plist-get|eudc-load-eudc|eudc-menu|eudc-mode|eudc-move-to-next-record|eudc-move-to-previous-record|eudc-plist-get|eudc-plist-member)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:eudc-print-attribute-value|eudc-print-record-field|eudc-process-form|eudc-protocol-local-variable-p|eudc-protocol-set|eudc-query-form|eudc-query|eudc-register-protocol|eudc-replace-in-string|eudc-save-options|eudc-select|eudc-server-local-variable-p|eudc-server-set|eudc-set-server|eudc-set|eudc-tools-menu|eudc-translate-attribute-list|eudc-translate-query|eudc-try-bbdb-insert|eudc-update-local-variables|eudc-update-variable|eudc-variable-default-value|eudc-variable-protocol-value|eudc-variable-server-value|eval-after-load--anon-cmacro|eval-after-load|eval-defun|eval-expression-print-format|eval-expression|eval-last-sexp|eval-next-after-load|eval-print-last-sexp|eval-sexp-add-defvars|eval-when|evenp|event-apply-alt-modifier|event-apply-control-modifier|event-apply-hyper-modifier|event-apply-meta-modifier|event-apply-modifier|event-apply-shift-modifier|event-apply-super-modifier|every|ewoc--adjust|ewoc--buffer--cmacro|ewoc--buffer|ewoc--create--cmacro|ewoc--create|ewoc--dll--cmacro|ewoc--dll|ewoc--filter-hf-nodes|ewoc--footer--cmacro|ewoc--footer|ewoc--header--cmacro|ewoc--header|ewoc--hf-pp--cmacro|ewoc--hf-pp|ewoc--insert-new-node|ewoc--last-node--cmacro|ewoc--last-node|ewoc--node-create--cmacro|ewoc--node-create|ewoc--node-data--cmacro|ewoc--node-data|ewoc--node-left--cmacro|ewoc--node-left|ewoc--node-next|ewoc--node-nth|ewoc--node-prev|ewoc--node-right--cmacro|ewoc--node-right|ewoc--node-start-marker--cmacro|ewoc--node-start-marker|ewoc--pretty-printer--cmacro|ewoc--pretty-printer|ewoc--refresh-node|ewoc--set-buffer-bind-dll-let\\\\*|ewoc--set-buffer-bind-dll|ewoc--wrap|ewoc-p--cmacro|ewoc-p|eww-add-bookmark|eww-back-url|eww-beginning-of-field|eww-beginning-of-text|eww-bookmark-browse|eww-bookmark-kill|eww-bookmark-mode|eww-bookmark-prepare|eww-bookmark-yank|eww-browse-url|eww-browse-with-external-browser|eww-buffer-kill|eww-buffer-select|eww-buffer-show-next|eww-buffer-show-previous|eww-buffer-show|eww-buffers-mode|eww-change-select|eww-copy-page-url|eww-current-url|eww-desktop-data-1|eww-desktop-history-duplicate|eww-desktop-misc-data|eww-detect-charset|eww-display-html|eww-display-image|eww-display-pdf|eww-display-raw|eww-download-callback|eww-download|eww-end-of-field|eww-end-of-text|eww-follow-link|eww-form-checkbox|eww-form-file|eww-form-submit|eww-form-text|eww-forward-url|eww-handle-link|eww-highest-readability|eww-history-browse|eww-history-mode|eww-input-value|eww-inputs|eww-links-at-point|eww-list-bookmarks|eww-list-buffers|eww-list-histories|eww-make-unique-file-name|eww-mode|eww-next-bookmark|eww-next-url|eww-open-file|eww-parse-headers|eww-previous-bookmark|eww-previous-url|eww-process-text-input|eww-read-bookmarks|eww-readable|eww-reload|eww-render|eww-restore-desktop|eww-restore-history|eww-same-page-p|eww-save-history|eww-score-readability|eww-search-words|eww-select-display|eww-select-file|eww-set-character-encoding|eww-setup-buffer|eww-size-text-inputs|eww-submit|eww-suggested-uris|eww-tag-a|eww-tag-body|eww-tag-form|eww-tag-input|eww-tag-link|eww-tag-select|eww-tag-textarea|eww-tag-title|eww-toggle-checkbox|eww-top-url|eww-up-url|eww-update-field|eww-update-header-line-format|eww-view-source|eww-write-bookmarks|eww|ex-args|ex-cd|ex-cmd-accepts-multiple-files-p|ex-cmd-assoc|ex-cmd-complete|ex-cmd-execute|ex-cmd-is-mashed-with-args|ex-cmd-is-one-letter|ex-cmd-not-yet|ex-cmd-obsolete|ex-cmd-read-exit|ex-command|ex-compile|ex-copy|ex-delete|ex-edit|ex-expand-filsyms|ex-find-file|ex-fixup-history|ex-get-inline-cmd-args|ex-global|ex-goto|ex-help|ex-line-no|ex-line-subr|ex-line|ex-map-read-args|ex-map|ex-mark|ex-next-related-buffer|ex-next|ex-preserve|ex-print-display-lines|ex-print|ex-put|ex-pwd|ex-quit|ex-read|ex-recover|ex-rewind|ex-search-address|ex-set-read-variable|ex-set-visited-file-name|ex-set|ex-shell|ex-show-vars|ex-source|ex-splice-args-in-1-letr-cmd|ex-substitute|ex-tag|ex-unmap-read-args|ex-unmap|ex-write-info|ex-write|ex-yank|exchange-dot-and-mark|exchange-point-and-mark|executable-chmod|executable-command-find-posix-p|executable-interpret|executable-make-buffer-file-executable-if-script-p|executable-self-display|executable-set-magic|execute-extended-command--shorter-1|execute-extended-command--shorter|exit-scheme-interaction-mode|exit-splash-screen|expand-abbrev-from-expand|expand-abbrev-hook|expand-add-abbrev|expand-add-abbrevs|expand-build-list|expand-build-marks|expand-c-for-skeleton|expand-clear-markers|expand-do-expansion|expand-in-literal|expand-jump-to-next-slot|expand-jump-to-previous-slot|expand-list-to-markers|expand-mail-aliases|expand-previous-word|expand-region-abbrevs|expand-skeleton-end-hook|external-debugging-output|extract-rectangle-line|extract-rectangle|ezimage-all-images|ezimage-image-association-dump|ezimage-image-dump|ezimage-image-over-string|ezimage-insert-image-button-maybe|ezimage-insert-over-text|f90-abbrev-help|f90-abbrev-start|f90-add-imenu-menu|f90-backslash-not-special|f90-beginning-of-block|f90-beginning-of-subprogram|f90-block-match|f90-break-line|f90-calculate-indent|f90-capitalize-keywords|f90-capitalize-region-keywords|f90-change-keywords|f90-comment-indent|f90-comment-region|f90-current-defun|f90-current-indentation|f90-do-auto-fill|f90-downcase-keywords|f90-downcase-region-keywords|f90-electric-insert|f90-end-of-block|f90-end-of-subprogram|f90-equal-symbols|f90-fill-region|f90-find-breakpoint|f90-font-lock-1|f90-font-lock-2|f90-font-lock-3|f90-font-lock-4|f90-font-lock-n|f90-get-correct-indent|f90-get-present-comment-type|f90-imenu-type-matcher|f90-in-comment|f90-in-string|f90-indent-line-no|f90-indent-line|f90-indent-new-line|f90-indent-region|f90-indent-subprogram|f90-indent-to|f90-insert-end|f90-join-lines|f90-line-continued|f90-looking-at-associate|f90-looking-at-critical|f90-looking-at-do|f90-looking-at-end-critical|f90-looking-at-if-then|f90-looking-at-program-block-end|f90-looking-at-program-block-start|f90-looking-at-select-case|f90-looking-at-type-like|f90-looking-at-where-or-forall|f90-mark-subprogram|f90-match-end|f90-menu|f90-mode|f90-next-block|f90-next-statement|f90-no-block-limit|f90-prepare-abbrev-list-buffer|f90-present-statement-cont|f90-previous-block|f90-previous-statement|f90-typedec-matcher|f90-typedef-matcher|f90-upcase-keywords|f90-upcase-region-keywords|f90-update-line|face-at-point|face-attr-construct|face-attr-match-p|face-attribute-merged-with|face-attribute-specified-or|face-attributes-as-vector|face-attrs-more-relative-p|face-background-pixmap|face-default-spec|face-descriptive-attribute-name|face-doc-string|face-name|face-nontrivial-p|face-read-integer|face-read-string|face-remap-order|face-set-after-frame-default|face-spec-choose|face-spec-match-p|face-spec-recalc|face-spec-reset-face|face-spec-set-2|face-spec-set-match-display|face-user-default-spec|face-valid-attribute-values|facemenu-active-faces|facemenu-add-face|facemenu-add-new-color|facemenu-add-new-face|facemenu-background-menu|facemenu-color-equal|facemenu-complete-face-list|facemenu-enable-faces-p|facemenu-face-menu|facemenu-foreground-menu|facemenu-indentation-menu|facemenu-iterate|facemenu-justification-menu|facemenu-menu|facemenu-post-self-insert-function|facemenu-read-color|facemenu-remove-all|facemenu-remove-face-props|facemenu-remove-special|facemenu-set-background|facemenu-set-bold-italic|facemenu-set-bold|facemenu-set-default|facemenu-set-face-from-menu|facemenu-set-face|facemenu-set-foreground|facemenu-set-intangible|facemenu-set-invisible|facemenu-set-italic|facemenu-set-read-only|facemenu-set-self-insert-face|facemenu-set-underline|facemenu-special-menu|facemenu-update|fancy-about-screen|fancy-splash-frame|fancy-splash-head|fancy-splash-image-file|fancy-splash-insert|fancy-startup-screen|fancy-startup-tail|feature-file|feature-symbols|feedmail-accume-n-nuke-header|feedmail-buffer-to-binmail|feedmail-buffer-to-sendmail|feedmail-buffer-to-smtp|feedmail-buffer-to-smtpmail|feedmail-confirm-addresses-hook-example|feedmail-create-queue-filename|feedmail-deduce-address-list|feedmail-default-date-generator|feedmail-default-message-id-generator|feedmail-default-x-mailer-generator|feedmail-dump-message-to-queue|feedmail-envelope-deducer|feedmail-fiddle-date|feedmail-fiddle-from|feedmail-fiddle-header|feedmail-fiddle-list-of-fiddle-plexes|feedmail-fiddle-list-of-spray-fiddle-plexes|feedmail-fiddle-message-id|feedmail-fiddle-sender|feedmail-fiddle-spray-address|feedmail-fiddle-x-mailer|feedmail-fill-this-one|feedmail-fill-to-cc-function|feedmail-find-eoh|feedmail-fqm-p|feedmail-give-it-to-buffer-eater|feedmail-look-at-queue-directory|feedmail-mail-send-hook-splitter|feedmail-message-action-draft-strong|feedmail-message-action-draft|feedmail-message-action-edit|feedmail-message-action-help-blat|feedmail-message-action-help|feedmail-message-action-queue-strong|feedmail-message-action-queue|feedmail-message-action-scroll-down|feedmail-message-action-scroll-up|feedmail-message-action-send-strong|feedmail-message-action-send|feedmail-message-action-toggle-spray|feedmail-one-last-look|feedmail-queue-express-to-draft|feedmail-queue-express-to-queue|feedmail-queue-reminder-brief|feedmail-queue-reminder-medium|feedmail-queue-reminder|feedmail-queue-runner-prompt|feedmail-queue-send-edit-prompt-inner|feedmail-queue-send-edit-prompt|feedmail-queue-subject-slug-maker|feedmail-rfc822-date|feedmail-rfc822-time-zone|feedmail-run-the-queue-global-prompt|feedmail-run-the-queue-no-prompts|feedmail-run-the-queue|feedmail-say-chatter|feedmail-say-debug|feedmail-scroll-buffer|feedmail-send-it-immediately-wrapper|feedmail-send-it-immediately|feedmail-send-it|feedmail-spray-via-bbdb|feedmail-tidy-up-slug|feedmail-vm-mail-mode|fetch-overload|ff-all-dirs-under|ff-basename|ff-cc-hh-converter|ff-find-file|ff-find-other-file|ff-find-related-file|ff-find-the-other-file|ff-get-file-name|ff-get-file|ff-get-other-file|ff-list-replace-env-vars|ff-mouse-find-other-file-other-window|ff-mouse-find-other-file|ff-other-file-name|ff-set-point-accordingly|ff-string-match|ff-switch-file|ff-switch-to-buffer|ff-treat-as-special|ff-upcase-p|ff-which-function-are-we-in|ffap--toggle-read-only|ffap-all-subdirs-loop|ffap-all-subdirs|ffap-alternate-file-other-window|ffap-alternate-file|ffap-at-mouse|ffap-bib|ffap-bindings|ffap-bug|ffap-c\\\\+\\\\+-mode|ffap-c-mode|ffap-completable|ffap-copy-string-as-kill|ffap-dired-other-frame|ffap-dired-other-window|ffap-dired|ffap-el-mode|ffap-el|ffap-event-buffer|ffap-file-at-point|ffap-file-exists-string|ffap-file-remote-p|ffap-file-suffix|ffap-fixup-machine|ffap-fixup-url|ffap-fortran-mode|ffap-gnus-hook|ffap-gnus-menu|ffap-gnus-next|ffap-gnus-wrapper|ffap-gopher-at-point|ffap-guess-file-name-at-point|ffap-guesser|ffap-highlight|ffap-home|ffap-host-to-filename|ffap-info-2|ffap-info-3|ffap-info|ffap-kpathsea-expand-path|ffap-latex-mode|ffap-lcd|ffap-list-directory|ffap-list-env|ffap-literally|ffap-locate-file|ffap-machine-at-point|ffap-machine-p|ffap-menu-ask|ffap-menu-cont|ffap-menu-rescan|ffap-menu|ffap-mouse-event|ffap-newsgroup-p|ffap-next-guess|ffap-next-url|ffap-next|ffap-other-frame|ffap-other-window|ffap-prompter|ffap-read-file-or-url-internal|ffap-read-file-or-url|ffap-read-only-other-frame|ffap-read-only-other-window|ffap-read-only|ffap-read-url-internal|ffap-reduce-path|ffap-replace-file-component|ffap-rfc|ffap-ro-mode-hook|ffap-string-around|ffap-string-at-point|ffap-submit-bug|ffap-symbol-value|ffap-tex-init|ffap-tex-mode|ffap-tex|ffap-url-at-point|ffap-url-p|ffap-url-unwrap-local|ffap-url-unwrap-remote|ffap-what-domain|ffap|field-at-pos|field-complete|fifth|file-attributes-lessp|file-cache--read-list|file-cache-add-directory-list|file-cache-add-directory-recursively|file-cache-add-directory-using-find|file-cache-add-directory-using-locate|file-cache-add-directory|file-cache-add-file-list|file-cache-add-file|file-cache-add-from-file-cache-buffer|file-cache-canonical-directory|file-cache-choose-completion|file-cache-clear-cache|file-cache-complete|file-cache-completion-setup-function|file-cache-debug-read-from-minibuffer|file-cache-delete-directory-list|file-cache-delete-directory|file-cache-delete-file-list|file-cache-delete-file-regexp|file-cache-delete-file|file-cache-directory-name|file-cache-display|file-cache-do-delete-directory)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:file-cache-file-name|file-cache-files-matching-internal|file-cache-files-matching|file-cache-minibuffer-complete|file-cache-mouse-choose-completion|file-dependents|file-loadhist-lookup|file-modes-char-to-right|file-modes-char-to-who|file-modes-rights-to-number|file-name-non-special|file-name-shadow-mode|file-notify--event-cookie|file-notify--event-file-name|file-notify--event-file1-name|file-notify-callback|file-notify-handle-event|file-of-tag|file-provides|file-requires|file-set-intersect|file-size-human-readable|file-tree-walk|filesets-add-buffer|filesets-alist-get|filesets-browse-dir|filesets-browser-name|filesets-build-dir-submenu-now|filesets-build-dir-submenu|filesets-build-ingroup-submenu|filesets-build-menu-maybe|filesets-build-menu-now|filesets-build-menu|filesets-build-submenu|filesets-close|filesets-cmd-get-args|filesets-cmd-get-def|filesets-cmd-get-fn|filesets-cmd-isearch-getargs|filesets-cmd-query-replace-getargs|filesets-cmd-query-replace-regexp-getargs|filesets-cmd-shell-command-getargs|filesets-cmd-shell-command|filesets-cmd-show-result|filesets-conditional-sort|filesets-convert-path-list|filesets-convert-patterns|filesets-customize|filesets-data-get-data|filesets-data-get-name|filesets-data-get|filesets-data-set-default|filesets-data-set|filesets-directory-files|filesets-edit|filesets-entry-get-dormant-flag|filesets-entry-get-file|filesets-entry-get-files|filesets-entry-get-filter-dirs-flag|filesets-entry-get-master|filesets-entry-get-open-fn|filesets-entry-get-pattern--dir|filesets-entry-get-pattern--pattern|filesets-entry-get-pattern|filesets-entry-get-save-fn|filesets-entry-get-tree-max-level|filesets-entry-get-tree|filesets-entry-get-verbosity|filesets-entry-mode|filesets-entry-set-files|filesets-error|filesets-eviewer-constraint-p|filesets-eviewer-get-props|filesets-exit|filesets-file-close|filesets-file-open|filesets-files-equalp|filesets-files-in-same-directory-p|filesets-filetype-get-prop|filesets-filetype-property|filesets-filter-dir-names|filesets-filter-list|filesets-find-file-using|filesets-find-file|filesets-find-or-display-file|filesets-get-cmd-menu|filesets-get-external-viewer-by-name|filesets-get-external-viewer|filesets-get-filelist|filesets-get-fileset-from-name|filesets-get-fileset-name|filesets-get-menu-epilog|filesets-get-quoted-selection|filesets-get-selection|filesets-get-shortcut|filesets-goto-homepage|filesets-info|filesets-ingroup-cache-get|filesets-ingroup-cache-put|filesets-ingroup-collect-build-menu|filesets-ingroup-collect-files|filesets-ingroup-collect-finder|filesets-ingroup-collect|filesets-ingroup-get-data|filesets-ingroup-get-pattern|filesets-ingroup-get-remdupl-p|filesets-init|filesets-member|filesets-menu-cache-file-load|filesets-menu-cache-file-save-maybe|filesets-menu-cache-file-save|filesets-message|filesets-open|filesets-ormap|filesets-quote|filesets-rebuild-this-submenu|filesets-remake-shortcut|filesets-remove-buffer|filesets-remove-from-ubl|filesets-reset-filename-on-change|filesets-reset-fileset|filesets-run-cmd--repl-fn|filesets-run-cmd|filesets-save-config|filesets-select-command|filesets-set-config|filesets-set-default!|filesets-set-default\\\\+|filesets-set-default|filesets-some|filesets-spawn-external-viewer|filesets-sublist|filesets-update-cleanup|filesets-update-pre010505|filesets-update|filesets-which-command-p|filesets-which-command|filesets-which-file|filesets-wrap-submenu|fill-comment-paragraph|fill-common-string-prefix|fill-delete-newlines|fill-delete-prefix|fill-find-break-point|fill-flowed-encode|fill-flowed|fill-forward-paragraph|fill-french-nobreak-p|fill-indent-to-left-margin|fill-individual-paragraphs-citation|fill-individual-paragraphs-prefix|fill-match-adaptive-prefix|fill-minibuffer-function|fill-move-to-break-point|fill-newline|fill-nobreak-p|fill-nonuniform-paragraphs|fill-single-char-nobreak-p|fill-single-word-nobreak-p|fill-text-properties-at|fill|filtered-frame-list|find-alternate-file-other-window|find-alternate-file|find-change-log|find-class|find-cmd|find-cmpl-prefix-entry|find-coding-systems-region-internal|find-composition-internal|find-composition|find-definition-noselect|find-dired-filter|find-dired-sentinel|find-dired|find-emacs-lisp-shadows|find-exact-completion|find-face-definition|find-file--read-only|find-file-at-point|find-file-existing|find-file-literally-at-point|find-file-noselect-1|find-file-other-frame|find-file-read-args|find-file-read-only-other-frame|find-file-read-only-other-window|find-function-C-source|find-function-advised-original|find-function-at-point|find-function-do-it|find-function-library|find-function-noselect|find-function-on-key|find-function-other-frame|find-function-other-window|find-function-read|find-function-search-for-symbol|find-function-setup-keys|find-function|find-grep-dired|find-grep|find-if-not|find-if|find-library--load-name|find-library-name|find-library-suffixes|find-library|find-lisp-debug-message|find-lisp-default-directory-predicate|find-lisp-default-file-predicate|find-lisp-file-predicate-is-directory|find-lisp-find-dired-filter|find-lisp-find-dired-insert-file|find-lisp-find-dired-internal|find-lisp-find-dired-subdirectories|find-lisp-find-dired|find-lisp-find-files-internal|find-lisp-find-files|find-lisp-format-time|find-lisp-format|find-lisp-insert-directory|find-lisp-object-file-name|find-lisp-time-index|find-multibyte-characters|find-name-dired|find-new-buffer-file-coding-system|find-tag-default-as-regexp|find-tag-default-as-symbol-regexp|find-tag-default-bounds|find-tag-default|find-tag-in-order|find-tag-interactive|find-tag-noselect|find-tag-other-frame|find-tag-other-window|find-tag-regexp|find-tag-tag|find-tag|find-variable-at-point|find-variable-noselect|find-variable-other-frame|find-variable-other-window|find-variable|find|finder-by-keyword|finder-commentary|finder-compile-keywords-make-dist|finder-compile-keywords|finder-current-item|finder-exit|finder-goto-xref|finder-insert-at-column|finder-list-keywords|finder-list-matches|finder-mode|finder-mouse-face-on-line|finder-mouse-select|finder-select|finder-summary|finder-unknown-keywords|finder-unload-function|finger|first-error|first|floatp-safe|floor\\\\*|flush-lines|flymake-add-buildfile-to-cache|flymake-add-err-info|flymake-add-line-err-info|flymake-add-project-include-dirs-to-cache|flymake-after-change-function|flymake-after-save-hook|flymake-can-syntax-check-file|flymake-check-include|flymake-check-patch-master-file-buffer|flymake-clear-buildfile-cache|flymake-clear-project-include-dirs-cache|flymake-compilation-is-running|flymake-compile|flymake-copy-buffer-to-temp-buffer|flymake-create-master-file|flymake-create-temp-inplace|flymake-create-temp-with-folder-structure|flymake-delete-own-overlays|flymake-delete-temp-directory|flymake-display-err-menu-for-current-line|flymake-display-warning|flymake-er-get-line-err-info-list|flymake-er-get-line|flymake-er-make-er|flymake-find-buffer-for-file|flymake-find-buildfile|flymake-find-err-info|flymake-find-file-hook|flymake-find-make-buildfile|flymake-find-possible-master-files|flymake-fix-file-name|flymake-fix-line-numbers|flymake-get-ant-cmdline|flymake-get-buildfile-from-cache|flymake-get-cleanup-function|flymake-get-err-count|flymake-get-file-name-mode-and-masks|flymake-get-first-err-line-no|flymake-get-full-nonpatched-file-name|flymake-get-full-patched-file-name|flymake-get-include-dirs-dot|flymake-get-include-dirs|flymake-get-init-function|flymake-get-last-err-line-no|flymake-get-line-err-count|flymake-get-make-cmdline|flymake-get-next-err-line-no|flymake-get-prev-err-line-no|flymake-get-project-include-dirs-from-cache|flymake-get-project-include-dirs-imp|flymake-get-project-include-dirs|flymake-get-real-file-name-function|flymake-get-real-file-name|flymake-get-syntax-check-program-args|flymake-get-system-include-dirs|flymake-get-tex-args|flymake-goto-file-and-line|flymake-goto-line|flymake-goto-next-error|flymake-goto-prev-error|flymake-highlight-err-lines|flymake-highlight-line|flymake-init-create-temp-buffer-copy|flymake-init-create-temp-source-and-master-buffer-copy|flymake-init-find-buildfile-dir|flymake-ins-after|flymake-kill-buffer-hook|flymake-kill-process|flymake-ler-file--cmacro|flymake-ler-file|flymake-ler-full-file--cmacro|flymake-ler-full-file|flymake-ler-line--cmacro|flymake-ler-line|flymake-ler-make-ler--cmacro|flymake-ler-make-ler|flymake-ler-p--cmacro|flymake-ler-p|flymake-ler-set-file|flymake-ler-set-full-file|flymake-ler-set-line|flymake-ler-text--cmacro|flymake-ler-text|flymake-ler-type--cmacro|flymake-ler-type|flymake-line-err-info-is-less-or-equal|flymake-log|flymake-make-overlay|flymake-master-cleanup|flymake-master-file-compare|flymake-master-make-header-init|flymake-master-make-init|flymake-master-tex-init|flymake-mode-off|flymake-mode-on|flymake-mode|flymake-on-timer-event|flymake-overlay-p|flymake-parse-err-lines|flymake-parse-line|flymake-parse-output-and-residual|flymake-parse-residual|flymake-patch-err-text|flymake-perl-init|flymake-php-init|flymake-popup-current-error-menu|flymake-post-syntax-check|flymake-process-filter|flymake-process-sentinel|flymake-read-file-to-temp-buffer|flymake-reformat-err-line-patterns-from-compile-el|flymake-region-has-flymake-overlays|flymake-replace-region|flymake-report-fatal-status|flymake-report-status|flymake-safe-delete-directory|flymake-safe-delete-file|flymake-same-files|flymake-save-buffer-in-file|flymake-set-at|flymake-simple-ant-java-init|flymake-simple-cleanup|flymake-simple-java-cleanup|flymake-simple-make-init-impl|flymake-simple-make-init|flymake-simple-make-java-init|flymake-simple-tex-init|flymake-skip-whitespace|flymake-split-output|flymake-start-syntax-check-process|flymake-start-syntax-check|flymake-stop-all-syntax-checks|flymake-xml-init|flyspell-abbrev-table|flyspell-accept-buffer-local-defs|flyspell-after-change-function|flyspell-ajust-cursor-point|flyspell-already-abbrevp|flyspell-auto-correct-previous-hook|flyspell-auto-correct-previous-word|flyspell-auto-correct-word|flyspell-buffer|flyspell-change-abbrev|flyspell-check-changed-word-p|flyspell-check-pre-word-p|flyspell-check-previous-highlighted-word|flyspell-check-region-doublons|flyspell-check-word-p|flyspell-correct-word-before-point|flyspell-correct-word|flyspell-debug-signal-changed-checked|flyspell-debug-signal-no-check|flyspell-debug-signal-pre-word-checked|flyspell-debug-signal-word-checked|flyspell-define-abbrev|flyspell-delay-command|flyspell-delay-commands|flyspell-delete-all-overlays|flyspell-delete-region-overlays|flyspell-deplacement-command|flyspell-deplacement-commands|flyspell-display-next-corrections|flyspell-do-correct|flyspell-emacs-popup|flyspell-external-point-words|flyspell-generic-progmode-verify|flyspell-get-casechars|flyspell-get-not-casechars|flyspell-get-word|flyspell-goto-next-error|flyspell-hack-local-variables-hook|flyspell-highlight-duplicate-region|flyspell-highlight-incorrect-region|flyspell-kill-ispell-hook|flyspell-large-region|flyspell-math-tex-command-p|flyspell-maybe-correct-doubling|flyspell-maybe-correct-transposition|flyspell-minibuffer-p|flyspell-mode-off|flyspell-mode-on|flyspell-mode|flyspell-notify-misspell|flyspell-overlay-p|flyspell-post-command-hook|flyspell-pre-command-hook|flyspell-process-localwords|flyspell-prog-mode|flyspell-properties-at-p|flyspell-region|flyspell-small-region|flyspell-tex-command-p|flyspell-unhighlight-at|flyspell-word-search-backward|flyspell-word-search-forward|flyspell-word|flyspell-xemacs-popup|focus-frame|foldout-exit-fold|foldout-mouse-goto-heading|foldout-mouse-hide-or-exit|foldout-mouse-show|foldout-mouse-swallow-events|foldout-mouse-zoom|foldout-update-mode-line|foldout-zoom-subtree|follow--window-sorter|follow-adjust-window|follow-align-compilation-windows|follow-all-followers|follow-avoid-tail-recenter|follow-cache-valid-p|follow-calc-win-end|follow-calc-win-start|follow-calculate-first-window-start-from-above|follow-calculate-first-window-start-from-below|follow-comint-scroll-to-bottom|follow-debug-message|follow-delete-other-windows-and-split|follow-end-of-buffer|follow-estimate-first-window-start|follow-find-file-hook|follow-first-window|follow-last-window|follow-maximize-region|follow-menu-filter|follow-mode|follow-mwheel-scroll|follow-next-window|follow-point-visible-all-windows-p|follow-pos-visible|follow-post-command-hook|follow-previous-window|follow-recenter|follow-redisplay|follow-redraw-after-event|follow-redraw|follow-scroll-bar-drag|follow-scroll-bar-scroll-down)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:follow-scroll-bar-scroll-up|follow-scroll-bar-toolkit-scroll|follow-scroll-down|follow-scroll-up|follow-select-if-end-visible|follow-select-if-visible-from-first|follow-select-if-visible|follow-split-followers|follow-switch-to-buffer-all|follow-switch-to-buffer|follow-switch-to-current-buffer-all|follow-update-window-start|follow-window-size-change|follow-windows-aligned-p|follow-windows-start-end|font-get-glyphs|font-get-system-font|font-get-system-normal-font|font-info|font-lock-after-change-function|font-lock-after-fontify-buffer|font-lock-after-unfontify-buffer|font-lock-append-text-property|font-lock-apply-highlight|font-lock-apply-syntactic-highlight|font-lock-change-mode|font-lock-choose-keywords|font-lock-compile-keyword|font-lock-compile-keywords|font-lock-default-fontify-buffer|font-lock-default-fontify-region|font-lock-default-function|font-lock-default-unfontify-buffer|font-lock-default-unfontify-region|font-lock-defontify|font-lock-ensure|font-lock-eval-keywords|font-lock-extend-jit-lock-region-after-change|font-lock-extend-region-multiline|font-lock-extend-region-wholelines|font-lock-fillin-text-property|font-lock-flush|font-lock-fontify-anchored-keywords|font-lock-fontify-block|font-lock-fontify-buffer|font-lock-fontify-keywords-region|font-lock-fontify-region|font-lock-fontify-syntactic-anchored-keywords|font-lock-fontify-syntactic-keywords-region|font-lock-fontify-syntactically-region|font-lock-initial-fontify|font-lock-match-c-style-declaration-item-and-skip-to-next|font-lock-match-meta-declaration-item-and-skip-to-next|font-lock-mode-internal|font-lock-mode-set-explicitly|font-lock-mode|font-lock-prepend-text-property|font-lock-refresh-defaults|font-lock-set-defaults|font-lock-specified-p|font-lock-turn-off-thing-lock|font-lock-turn-on-thing-lock|font-lock-unfontify-buffer|font-lock-unfontify-region|font-lock-update-removed-keyword-alist|font-lock-value-in-major-mode|font-match-p|font-menu-add-default|font-setting-change-default-font|font-shape-gstring|font-show-log|font-variation-glyphs|fontset-font|fontset-info|fontset-list|fontset-name-p|fontset-plain-name|footnote-mode|foreground-color-at-point|form-at-point|format-annotate-atomic-property-change|format-annotate-function|format-annotate-location|format-annotate-region|format-annotate-single-property-change|format-annotate-value|format-deannotate-region|format-decode-buffer|format-decode-region|format-decode-run-method|format-decode|format-delq-cons|format-encode-buffer|format-encode-region|format-encode-run-method|format-insert-annotations|format-kbd-macro|format-make-relatively-unique|format-proper-list-p|format-property-increment-region|format-read|format-reorder|format-replace-strings|format-spec-make|format-spec|format-subtract-regions|forms-find-file-other-window|forms-find-file|forms-mode|fortran-abbrev-help|fortran-abbrev-start|fortran-analyze-file-format|fortran-auto-fill-mode|fortran-auto-fill|fortran-beginning-do|fortran-beginning-if|fortran-beginning-of-block|fortran-beginning-of-subprogram|fortran-blink-match|fortran-blink-matching-do|fortran-blink-matching-if|fortran-break-line|fortran-calculate-indent|fortran-check-end-prog-re|fortran-check-for-matching-do|fortran-column-ruler|fortran-comment-indent|fortran-comment-region|fortran-current-defun|fortran-current-line-indentation|fortran-electric-line-number|fortran-end-do|fortran-end-if|fortran-end-of-block|fortran-end-of-subprogram|fortran-fill-paragraph|fortran-fill-statement|fortran-fill|fortran-find-comment-start-skip|fortran-gud-find-expr|fortran-hack-local-variables|fortran-indent-comment|fortran-indent-line|fortran-indent-new-line|fortran-indent-subprogram|fortran-indent-to-column|fortran-is-in-string-p|fortran-join-line|fortran-line-length|fortran-line-number-indented-correctly-p|fortran-looking-at-if-then|fortran-make-syntax-propertize-function|fortran-mark-do|fortran-mark-if|fortran-match-and-skip-declaration|fortran-menu|fortran-mode|fortran-next-statement|fortran-numerical-continuation-char|fortran-prepare-abbrev-list-buffer|fortran-previous-statement|fortran-remove-continuation|fortran-split-line|fortran-strip-sequence-nos|fortran-uncomment-region|fortran-window-create-momentarily|fortran-window-create|fortune-add-fortune|fortune-append|fortune-ask-file|fortune-compile|fortune-from-region|fortune-in-buffer|fortune-to-signature|fortune|forward-ifdef|forward-page|forward-paragraph|forward-point|forward-same-syntax|forward-sentence|forward-symbol|forward-text-line|forward-thing|forward-visible-line|forward-whitespace|fourth|frame-border-width|frame-bottom-divider-width|frame-can-run-window-configuration-change-hook|frame-char-size|frame-configuration-p|frame-configuration-to-register|frame-face-alist|frame-focus|frame-font-cache|frame-fringe-width|frame-geom-spec-cons|frame-geom-value-cons|frame-initialize|frame-notice-user-settings|frame-or-buffer-changed-p|frame-remove-geometry-params|frame-right-divider-width|frame-root-window-p|frame-scroll-bar-height|frame-scroll-bar-width|frame-set-background-mode|frame-terminal-default-bg-mode|frame-text-cols|frame-text-height|frame-text-lines|frame-text-width|frame-total-cols|frame-total-lines|frame-windows-min-size|framep-on-display|frames-on-display-list|frameset--find-frame-if|frameset--initial-params|frameset--jump-to-register|frameset--make--cmacro|frameset--make|frameset--minibufferless-last-p|frameset--print-register|frameset--prop-setter|frameset--record-minibuffer-relationships|frameset--restore-frame|frameset--reuse-frame|frameset--set-id|frameset-app--cmacro|frameset-app|frameset-cfg-id|frameset-compute-pos|frameset-copy|frameset-description--cmacro|frameset-description|frameset-filter-iconified|frameset-filter-minibuffer|frameset-filter-params|frameset-filter-sanitize-color|frameset-filter-shelve-param|frameset-filter-tty-to-GUI|frameset-filter-unshelve-param|frameset-frame-id-equal-p|frameset-frame-id|frameset-frame-with-id|frameset-keep-original-display-p|frameset-minibufferless-first-p|frameset-move-onscreen|frameset-name--cmacro|frameset-name|frameset-p--cmacro|frameset-p|frameset-prop|frameset-properties--cmacro|frameset-properties|frameset-restore|frameset-save|frameset-states--cmacro|frameset-states|frameset-switch-to-gui-p|frameset-switch-to-tty-p|frameset-timestamp--cmacro|frameset-timestamp|frameset-to-register|frameset-valid-p|frameset-version--cmacro|frameset-version|fringe--check-style|fringe-bitmap-p|fringe-columns|fringe-mode-initialize|fringe-mode|fringe-query-style|ftp-mode|ftp|full-calc-keypad|full-calc|funcall-interactively|function\\\\*|function-called-at-point|function-equal|function-overload-p|function-put|function|gamegrid-add-score-insecure|gamegrid-add-score-with-update-game-score-1|gamegrid-add-score-with-update-game-score|gamegrid-add-score|gamegrid-cell-offset|gamegrid-characterp|gamegrid-color|gamegrid-colorize-glyph|gamegrid-display-type|gamegrid-event-x|gamegrid-event-y|gamegrid-get-cell|gamegrid-init-buffer|gamegrid-init|gamegrid-initialize-display|gamegrid-kill-timer|gamegrid-make-color-tty-face|gamegrid-make-color-x-face|gamegrid-make-face|gamegrid-make-glyph|gamegrid-make-grid-x-face|gamegrid-make-image-from-vector|gamegrid-make-mono-tty-face|gamegrid-make-mono-x-face|gamegrid-match-spec-list|gamegrid-match-spec|gamegrid-set-cell|gamegrid-set-display-table|gamegrid-set-face|gamegrid-set-font|gamegrid-set-timer|gamegrid-setup-default-font|gamegrid-setup-face|gamegrid-start-timer|gametree-apply-layout|gametree-apply-register-layout|gametree-break-line-here|gametree-children-shown-p|gametree-compute-and-insert-score|gametree-compute-reduced-score|gametree-current-branch-depth|gametree-current-branch-ply|gametree-current-branch-score|gametree-current-layout|gametree-entry-shown-p|gametree-forward-line|gametree-hack-file-layout|gametree-insert-new-leaf|gametree-insert-score|gametree-layout-to-register|gametree-looking-at-ply|gametree-merge-line|gametree-mode|gametree-mouse-break-line-here|gametree-mouse-hide-subtree|gametree-mouse-show-children-and-entry|gametree-mouse-show-subtree|gametree-prettify-heading|gametree-restore-layout|gametree-save-and-hack-layout|gametree-save-layout|gametree-show-children-and-entry|gametree-transpose-following-leaves|gcd|gdb--check-interpreter|gdb--if-arrow|gdb-add-handler|gdb-add-subscriber|gdb-append-to-partial-output|gdb-bind-function-to-buffer|gdb-breakpoints-buffer-name|gdb-breakpoints-list-handler-custom|gdb-breakpoints-list-handler|gdb-breakpoints-mode|gdb-buffer-shows-main-thread-p|gdb-buffer-type|gdb-changed-registers-handler|gdb-check-target-async|gdb-clear-inferior-io|gdb-clear-partial-output|gdb-concat-output|gdb-console|gdb-continue-thread|gdb-control-all-threads|gdb-control-current-thread|gdb-create-define-alist|gdb-current-buffer-frame|gdb-current-buffer-rules|gdb-current-buffer-thread|gdb-current-context-buffer-name|gdb-current-context-command|gdb-current-context-mode-name|gdb-delchar-or-quit|gdb-delete-breakpoint|gdb-delete-frame-or-window|gdb-delete-handler|gdb-delete-subscriber|gdb-disassembly-buffer-name|gdb-disassembly-handler-custom|gdb-disassembly-handler|gdb-disassembly-mode|gdb-disassembly-place-breakpoints|gdb-display-breakpoints-buffer|gdb-display-buffer|gdb-display-disassembly-buffer|gdb-display-disassembly-for-thread|gdb-display-gdb-buffer|gdb-display-io-buffer|gdb-display-locals-buffer|gdb-display-locals-for-thread|gdb-display-memory-buffer|gdb-display-registers-buffer|gdb-display-registers-for-thread|gdb-display-source-buffer|gdb-display-stack-buffer|gdb-display-stack-for-thread|gdb-display-threads-buffer|gdb-done-or-error|gdb-done|gdb-edit-locals-value|gdb-edit-register-value|gdb-edit-value-handler|gdb-edit-value|gdb-emit-signal|gdb-enable-debug|gdb-error|gdb-find-file-hook|gdb-find-watch-expression|gdb-force-mode-line-update|gdb-frame-breakpoints-buffer|gdb-frame-disassembly-buffer|gdb-frame-disassembly-for-thread|gdb-frame-gdb-buffer|gdb-frame-handler|gdb-frame-io-buffer|gdb-frame-locals-buffer|gdb-frame-locals-for-thread|gdb-frame-location|gdb-frame-memory-buffer|gdb-frame-registers-buffer|gdb-frame-registers-for-thread|gdb-frame-stack-buffer|gdb-frame-stack-for-thread|gdb-frame-threads-buffer|gdb-frames-mode|gdb-gdb|gdb-get-buffer-create|gdb-get-buffer|gdb-get-changed-registers|gdb-get-handler-function|gdb-get-location|gdb-get-main-selected-frame|gdb-get-many-fields|gdb-get-prompt|gdb-get-source-file-list|gdb-get-source-file|gdb-get-subscribers|gdb-get-target-string|gdb-goto-breakpoint|gdb-gud-context-call|gdb-gud-context-command|gdb-handle-reply|gdb-handler-function--cmacro|gdb-handler-function|gdb-handler-p--cmacro|gdb-handler-p|gdb-handler-pending-trigger--cmacro|gdb-handler-pending-trigger|gdb-handler-token-number--cmacro|gdb-handler-token-number|gdb-ignored-notification|gdb-inferior-filter|gdb-inferior-io--init-proc|gdb-inferior-io-mode|gdb-inferior-io-name|gdb-inferior-io-sentinel|gdb-init-1|gdb-init-buffer|gdb-input|gdb-internals|gdb-interrupt-thread|gdb-invalidate-breakpoints|gdb-invalidate-disassembly|gdb-invalidate-frames|gdb-invalidate-locals|gdb-invalidate-memory|gdb-invalidate-registers|gdb-invalidate-threads|gdb-io-eof|gdb-io-interrupt|gdb-io-quit|gdb-io-stop|gdb-json-partial-output|gdb-json-read-buffer|gdb-json-string|gdb-jsonify-buffer|gdb-line-posns|gdb-locals-buffer-name|gdb-locals-handler-custom|gdb-locals-handler|gdb-locals-mode|gdb-make-header-line-mouse-map|gdb-many-windows|gdb-mark-line|gdb-memory-buffer-name|gdb-memory-column-width|gdb-memory-format-binary|gdb-memory-format-hexadecimal|gdb-memory-format-menu-1|gdb-memory-format-menu|gdb-memory-format-octal|gdb-memory-format-signed|gdb-memory-format-unsigned|gdb-memory-mode|gdb-memory-set-address-event|gdb-memory-set-address|gdb-memory-set-columns|gdb-memory-set-rows|gdb-memory-show-next-page|gdb-memory-show-previous-page|gdb-memory-unit-byte|gdb-memory-unit-giant|gdb-memory-unit-halfword|gdb-memory-unit-menu-1|gdb-memory-unit-menu|gdb-memory-unit-word|gdb-mi-quote|gdb-mouse-jump|gdb-mouse-set-clear-breakpoint|gdb-mouse-toggle-breakpoint-fringe|gdb-mouse-toggle-breakpoint-margin|gdb-mouse-until|gdb-non-stop-handler|gdb-pad-string|gdb-parent-mode|gdb-partial-output-name|gdb-pending-handler-p|gdb-place-breakpoints|gdb-preempt-existing-or-display-buffer|gdb-preemptively-display-disassembly-buffer|gdb-preemptively-display-locals-buffer|gdb-preemptively-display-registers-buffer|gdb-preemptively-display-stack-buffer|gdb-propertize-header)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:gdb-put-breakpoint-icon|gdb-put-string|gdb-read-memory-custom|gdb-read-memory-handler|gdb-register-names-handler|gdb-registers-buffer-name|gdb-registers-handler-custom|gdb-registers-handler|gdb-registers-mode|gdb-remove-all-pending-triggers|gdb-remove-breakpoint-icons|gdb-remove-strings|gdb-reset|gdb-restore-windows|gdb-resync|gdb-rules-buffer-mode|gdb-rules-name-maker|gdb-rules-update-trigger|gdb-running|gdb-script-beginning-of-defun|gdb-script-calculate-indentation|gdb-script-end-of-defun|gdb-script-font-lock-syntactic-face|gdb-script-indent-line|gdb-script-mode|gdb-script-skip-to-head|gdb-select-frame|gdb-select-thread|gdb-send|gdb-set-buffer-rules|gdb-set-window-buffer|gdb-setq-thread-number|gdb-setup-windows|gdb-shell|gdb-show-run-p|gdb-show-stop-p|gdb-speedbar-auto-raise|gdb-speedbar-expand-node|gdb-speedbar-timer-fn|gdb-speedbar-update|gdb-stack-buffer-name|gdb-stack-list-frames-custom|gdb-stack-list-frames-handler|gdb-starting|gdb-step-thread|gdb-stopped|gdb-strip-string-backslash|gdb-table-add-row|gdb-table-column-sizes--cmacro|gdb-table-column-sizes|gdb-table-p--cmacro|gdb-table-p|gdb-table-right-align--cmacro|gdb-table-right-align|gdb-table-row-properties--cmacro|gdb-table-row-properties|gdb-table-rows--cmacro|gdb-table-rows|gdb-table-string|gdb-thread-created|gdb-thread-exited|gdb-thread-list-handler-custom|gdb-thread-list-handler|gdb-thread-selected|gdb-threads-buffer-name|gdb-threads-mode|gdb-toggle-breakpoint|gdb-toggle-switch-when-another-stopped|gdb-tooltip-print-1|gdb-tooltip-print|gdb-update-buffer-name|gdb-update-gud-running|gdb-update|gdb-var-create-handler|gdb-var-delete-1|gdb-var-delete-children|gdb-var-delete|gdb-var-evaluate-expression-handler|gdb-var-list-children-handler|gdb-var-list-children|gdb-var-set-format|gdb-var-update-handler|gdb-var-update|gdb-wait-for-pending|gdb|gdbmi-bnf-async-record|gdbmi-bnf-console-stream-output|gdbmi-bnf-gdb-prompt|gdbmi-bnf-incomplete-record-result|gdbmi-bnf-init|gdbmi-bnf-log-stream-output|gdbmi-bnf-out-of-band-record|gdbmi-bnf-output|gdbmi-bnf-result-and-async-record-impl|gdbmi-bnf-result-record|gdbmi-bnf-skip-unrecognized|gdbmi-bnf-stream-record|gdbmi-bnf-target-stream-output|gdbmi-is-number|gdbmi-same-start|gdbmi-start-with|generate-fontset-menu|generic-char-p|generic-make-keywords-list|generic-mode-internal|generic-mode|generic-p|generic-primary-only-one-p|generic-primary-only-p|gensym|gentemp|get\\\\*|get-edebug-spec|get-file-char|get-free-disk-space|get-language-info|get-mode-local-parent|get-mru-window|get-next-valid-buffer|get-other-frame|get-scroll-bar-mode|get-unicode-property-internal|get-unused-iso-final-char|get-upcase-table|getenv-internal|getf|gfile-add-watch|gfile-rm-watch|glasses-change|glasses-convert-to-unreadable|glasses-custom-set|glasses-make-overlay|glasses-make-readable|glasses-make-unreadable|glasses-mode|glasses-overlay-p|glasses-parenthesis-exception-p|glasses-set-overlay-properties|global-auto-composition-mode|global-auto-revert-mode|global-cwarn-mode-check-buffers|global-cwarn-mode-cmhh|global-cwarn-mode-enable-in-buffers|global-cwarn-mode|global-ede-mode|global-eldoc-mode|global-font-lock-mode-check-buffers|global-font-lock-mode-cmhh|global-font-lock-mode-enable-in-buffers|global-font-lock-mode|global-hi-lock-mode-check-buffers|global-hi-lock-mode-cmhh|global-hi-lock-mode-enable-in-buffers|global-hi-lock-mode|global-highlight-changes-mode-check-buffers|global-highlight-changes-mode-cmhh|global-highlight-changes-mode-enable-in-buffers|global-highlight-changes-mode|global-highlight-changes|global-hl-line-highlight|global-hl-line-mode|global-hl-line-unhighlight-all|global-hl-line-unhighlight|global-linum-mode-check-buffers|global-linum-mode-cmhh|global-linum-mode-enable-in-buffers|global-linum-mode|global-prettify-symbols-mode-check-buffers|global-prettify-symbols-mode-cmhh|global-prettify-symbols-mode-enable-in-buffers|global-prettify-symbols-mode|global-reveal-mode|global-semantic-decoration-mode|global-semantic-highlight-edits-mode|global-semantic-highlight-func-mode|global-semantic-idle-completions-mode|global-semantic-idle-local-symbol-highlight-mode|global-semantic-idle-scheduler-mode|global-semantic-idle-summary-mode|global-semantic-mru-bookmark-mode|global-semantic-show-parser-state-mode|global-semantic-show-unmatched-syntax-mode|global-semantic-stickyfunc-mode|global-semanticdb-minor-mode|global-set-scheme-interaction-buffer|global-srecode-minor-mode|global-subword-mode|global-superword-mode|global-visual-line-mode-check-buffers|global-visual-line-mode-cmhh|global-visual-line-mode-enable-in-buffers|global-visual-line-mode|global-whitespace-mode|global-whitespace-newline-mode|global-whitespace-toggle-options|glyphless-set-char-table-range|gmm-called-interactively-p|gmm-customize-mode|gmm-error|gmm-format-time-string|gmm-image-load-path-for-library|gmm-image-search-load-path|gmm-labels|gmm-message|gmm-regexp-concat|gmm-tool-bar-from-list|gmm-widget-p|gmm-write-region|gnus--random-face-with-type|gnus-1|gnus-Folder-save-name|gnus-active|gnus-add-buffer|gnus-add-configuration|gnus-add-shutdown|gnus-add-text-properties-when|gnus-add-text-properties|gnus-add-to-sorted-list|gnus-agent-batch-fetch|gnus-agent-batch|gnus-agent-delete-group|gnus-agent-fetch-session|gnus-agent-find-parameter|gnus-agent-get-function|gnus-agent-get-undownloaded-list|gnus-agent-group-covered-p|gnus-agent-method-p|gnus-agent-possibly-alter-active|gnus-agent-possibly-save-gcc|gnus-agent-regenerate|gnus-agent-rename-group|gnus-agent-request-article|gnus-agent-retrieve-headers|gnus-agent-save-active|gnus-agent-save-group-info|gnus-agent-store-article|gnus-agentize|gnus-alist-pull|gnus-alive-p|gnus-and|gnus-annotation-in-region-p|gnus-apply-kill-file-internal|gnus-apply-kill-file|gnus-archive-server-wanted-p|gnus-article-date-lapsed|gnus-article-date-local|gnus-article-date-original|gnus-article-de-base64-unreadable|gnus-article-de-quoted-unreadable|gnus-article-decode-HZ|gnus-article-decode-encoded-words|gnus-article-delete-invisible-text|gnus-article-display-x-face|gnus-article-edit-article|gnus-article-edit-done|gnus-article-edit-mode|gnus-article-fill-cited-article|gnus-article-fill-cited-long-lines|gnus-article-hide-boring-headers|gnus-article-hide-citation-in-followups|gnus-article-hide-citation-maybe|gnus-article-hide-citation|gnus-article-hide-headers|gnus-article-hide-pem|gnus-article-hide-signature|gnus-article-highlight-citation|gnus-article-html|gnus-article-mail|gnus-article-mode|gnus-article-next-page|gnus-article-outlook-deuglify-article|gnus-article-outlook-repair-attribution|gnus-article-outlook-unwrap-lines|gnus-article-prepare-display|gnus-article-prepare|gnus-article-prev-page|gnus-article-read-summary-keys|gnus-article-remove-cr|gnus-article-remove-trailing-blank-lines|gnus-article-save|gnus-article-set-window-start|gnus-article-setup-buffer|gnus-article-strip-leading-blank-lines|gnus-article-treat-overstrike|gnus-article-unsplit-urls|gnus-article-wash-html|gnus-assq-delete-all|gnus-async-halt-prefetch|gnus-async-prefetch-article|gnus-async-prefetch-next|gnus-async-prefetch-remove-group|gnus-async-request-fetched-article|gnus-atomic-progn-assign|gnus-atomic-progn|gnus-atomic-setq|gnus-backlog-enter-article|gnus-backlog-remove-article|gnus-backlog-request-article|gnus-batch-kill|gnus-batch-score|gnus-binary-mode|gnus-bind-print-variables|gnus-blocked-images|gnus-bookmark-bmenu-list|gnus-bookmark-jump|gnus-bookmark-set|gnus-bound-and-true-p|gnus-boundp|gnus-browse-foreign-server|gnus-buffer-exists-p|gnus-buffer-live-p|gnus-buffers|gnus-bug|gnus-button-mailto|gnus-button-reply|gnus-byte-compile|gnus-cache-articles-in-group|gnus-cache-close|gnus-cache-delete-group|gnus-cache-enter-article|gnus-cache-enter-remove-article|gnus-cache-file-contents|gnus-cache-generate-active|gnus-cache-generate-nov-databases|gnus-cache-open|gnus-cache-possibly-alter-active|gnus-cache-possibly-enter-article|gnus-cache-possibly-remove-articles|gnus-cache-remove-article|gnus-cache-rename-group|gnus-cache-request-article|gnus-cache-retrieve-headers|gnus-cache-save-buffers|gnus-cache-update-article|gnus-cached-article-p|gnus-character-to-event|gnus-check-backend-function|gnus-check-reasonable-setup|gnus-completing-read|gnus-configure-windows|gnus-continuum-version|gnus-convert-article-to-rmail|gnus-convert-face-to-png|gnus-convert-gray-x-face-to-xpm|gnus-convert-image-to-gray-x-face|gnus-convert-png-to-face|gnus-copy-article-buffer|gnus-copy-file|gnus-copy-overlay|gnus-copy-sequence|gnus-create-hash-size|gnus-create-image|gnus-create-info-command|gnus-current-score-file-nondirectory|gnus-data-find|gnus-data-header|gnus-date-get-time|gnus-date-iso8601|gnus-dd-mmm|gnus-deactivate-mark|gnus-declare-backend|gnus-decode-newsgroups|gnus-define-group-parameter|gnus-define-keymap|gnus-define-keys-1|gnus-define-keys-safe|gnus-define-keys|gnus-delay-article|gnus-delay-initialize|gnus-delay-send-queue|gnus-delete-alist|gnus-delete-directory|gnus-delete-duplicates|gnus-delete-file|gnus-delete-first|gnus-delete-gnus-frame|gnus-delete-line|gnus-delete-overlay|gnus-demon-add-disconnection|gnus-demon-add-handler|gnus-demon-add-rescan|gnus-demon-add-scan-timestamps|gnus-demon-add-scanmail|gnus-demon-cancel|gnus-demon-init|gnus-demon-remove-handler|gnus-display-x-face-in-from|gnus-draft-mode|gnus-draft-reminder|gnus-dribble-enter|gnus-dribble-touch|gnus-dup-enter-articles|gnus-dup-suppress-articles|gnus-dup-unsuppress-article|gnus-edit-form|gnus-emacs-completing-read|gnus-emacs-version|gnus-ems-redefine|gnus-enter-server-buffer|gnus-ephemeral-group-p|gnus-error|gnus-eval-in-buffer-window|gnus-execute|gnus-expand-group-parameter|gnus-expand-group-parameters|gnus-expunge|gnus-extended-version|gnus-extent-detached-p|gnus-extent-start-open|gnus-extract-address-components|gnus-extract-references|gnus-face-from-file|gnus-faces-at|gnus-fetch-field|gnus-fetch-group-other-frame|gnus-fetch-group|gnus-fetch-original-field|gnus-file-newer-than|gnus-final-warning|gnus-find-method-for-group|gnus-find-subscribed-addresses|gnus-find-text-property-region|gnus-float-time|gnus-folder-save-name|gnus-frame-or-window-display-name|gnus-generate-new-group-name|gnus-get-buffer-create|gnus-get-buffer-window|gnus-get-display-table|gnus-get-info|gnus-get-text-property-excluding-characters-with-faces|gnus-getenv-nntpserver|gnus-gethash-safe|gnus-gethash|gnus-globalify-regexp|gnus-goto-char|gnus-goto-colon|gnus-graphic-display-p|gnus-grep-in-list|gnus-group-add-parameter|gnus-group-add-score|gnus-group-auto-expirable-p|gnus-group-customize|gnus-group-decoded-name|gnus-group-entry|gnus-group-fast-parameter|gnus-group-find-parameter|gnus-group-first-unread-group|gnus-group-foreign-p|gnus-group-full-name|gnus-group-get-new-news|gnus-group-get-parameter|gnus-group-group-name|gnus-group-guess-full-name-from-command-method|gnus-group-insert-group-line|gnus-group-iterate|gnus-group-list-groups|gnus-group-mail|gnus-group-make-help-group|gnus-group-method|gnus-group-name-charset|gnus-group-name-decode|gnus-group-name-to-method|gnus-group-native-p|gnus-group-news|gnus-group-parameter-value|gnus-group-position-point|gnus-group-post-news|gnus-group-prefixed-name|gnus-group-prefixed-p|gnus-group-quit-config|gnus-group-quit|gnus-group-read-only-p|gnus-group-real-name|gnus-group-real-prefix|gnus-group-remove-parameter|gnus-group-save-newsrc|gnus-group-secondary-p|gnus-group-send-queue|gnus-group-server|gnus-group-set-info|gnus-group-set-mode-line|gnus-group-set-parameter|gnus-group-setup-buffer|gnus-group-short-name|gnus-group-split-fancy|gnus-group-split-setup|gnus-group-split-update|gnus-group-split|gnus-group-startup-message|gnus-group-total-expirable-p|gnus-group-unread|gnus-group-update-group|gnus-groups-from-server|gnus-header-from|gnus-highlight-selected-tree|gnus-horizontal-recenter|gnus-html-prefetch-images|gnus-ido-completing-read|gnus-image-type-available-p|gnus-indent-rigidly|gnus-info-find-node|gnus-info-group|gnus-info-level|gnus-info-marks|gnus-info-method|gnus-info-params|gnus-info-rank|gnus-info-read|gnus-info-score|gnus-info-set-entry|gnus-info-set-group|gnus-info-set-level|gnus-info-set-marks|gnus-info-set-method|gnus-info-set-params|gnus-info-set-rank|gnus-info-set-read|gnus-info-set-score|gnus-insert-random-face-header|gnus-insert-random-x-face-header|gnus-interactive|gnus-intern-safe|gnus-intersection|gnus-invisible-p|gnus-iswitchb-completing-read|gnus-jog-cache|gnus-key-press-event-p|gnus-kill-all-overlays)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:gnus-kill-buffer|gnus-kill-ephemeral-group|gnus-kill-file-edit-file|gnus-kill-file-raise-followups-to-author|gnus-kill-save-kill-buffer|gnus-kill|gnus-list-debbugs|gnus-list-memq-of-list|gnus-list-of-read-articles|gnus-list-of-unread-articles|gnus-local-set-keys|gnus-mail-strip-quoted-names|gnus-mailing-list-insinuate|gnus-mailing-list-mode|gnus-make-directory|gnus-make-hashtable|gnus-make-local-hook|gnus-make-overlay|gnus-make-predicate-1|gnus-make-predicate|gnus-make-sort-function-1|gnus-make-sort-function|gnus-make-thread-indent-array|gnus-map-function|gnus-mapcar|gnus-mark-active-p|gnus-match-substitute-replacement|gnus-max-width-function|gnus-member-of-valid|gnus-merge|gnus-message-with-timestamp|gnus-message|gnus-method-ephemeral-p|gnus-method-equal|gnus-method-option-p|gnus-method-simplify|gnus-method-to-full-server-name|gnus-method-to-server-name|gnus-method-to-server|gnus-methods-equal-p|gnus-methods-sloppily-equal|gnus-methods-using|gnus-mime-view-all-parts|gnus-mode-line-buffer-identification|gnus-mode-string-quote|gnus-move-overlay|gnus-msg-mail|gnus-mule-max-width-function|gnus-multiple-choice|gnus-narrow-to-body|gnus-narrow-to-page|gnus-native-method-p|gnus-news-group-p|gnus-newsgroup-directory-form|gnus-newsgroup-kill-file|gnus-newsgroup-savable-name|gnus-newsrc-parse-options|gnus-next-char-property-change|gnus-no-server-1|gnus-no-server|gnus-not-ignore|gnus-notifications|gnus-offer-save-summaries|gnus-online|gnus-open-agent|gnus-open-server|gnus-or|gnus-other-frame|gnus-outlook-deuglify-article|gnus-output-to-mail|gnus-output-to-rmail|gnus-overlay-buffer|gnus-overlay-end|gnus-overlay-get|gnus-overlay-put|gnus-overlay-start|gnus-overlays-at|gnus-overlays-in|gnus-parameter-charset|gnus-parameter-ham-marks|gnus-parameter-ham-process-destination|gnus-parameter-ham-resend-to|gnus-parameter-large-newsgroup-initial|gnus-parameter-post-method|gnus-parameter-registry-ignore|gnus-parameter-spam-autodetect-methods|gnus-parameter-spam-autodetect|gnus-parameter-spam-contents|gnus-parameter-spam-marks|gnus-parameter-spam-process-destination|gnus-parameter-spam-process|gnus-parameter-spam-resend-to|gnus-parameter-subscribed|gnus-parameter-to-address|gnus-parameter-to-list|gnus-parameters-get-parameter|gnus-parent-id|gnus-parse-without-error|gnus-pick-mode|gnus-plugged|gnus-possibly-generate-tree|gnus-possibly-score-headers|gnus-post-news|gnus-pp-to-string|gnus-pp|gnus-previous-char-property-change|gnus-prin1-to-string|gnus-prin1|gnus-process-get|gnus-process-plist|gnus-process-put|gnus-put-display-table|gnus-put-image|gnus-put-overlay-excluding-newlines|gnus-put-text-property-excluding-characters-with-faces|gnus-put-text-property-excluding-newlines|gnus-put-text-property|gnus-random-face|gnus-random-x-face|gnus-range-add|gnus-read-event-char|gnus-read-group|gnus-read-init-file|gnus-read-method|gnus-read-shell-command|gnus-recursive-directory-files|gnus-redefine-select-method-widget|gnus-region-active-p|gnus-registry-handle-action|gnus-registry-initialize|gnus-registry-install-hooks|gnus-remassoc|gnus-remove-from-range|gnus-remove-if-not|gnus-remove-if|gnus-remove-image|gnus-remove-text-properties-when|gnus-remove-text-with-property|gnus-rename-file|gnus-replace-in-string|gnus-request-article-this-buffer|gnus-request-post|gnus-request-type|gnus-rescale-image|gnus-run-hook-with-args|gnus-run-hooks|gnus-run-mode-hooks|gnus-same-method-different-name|gnus-score-adaptive|gnus-score-advanced|gnus-score-close|gnus-score-customize|gnus-score-delta-default|gnus-score-file-name|gnus-score-find-trace|gnus-score-flush-cache|gnus-score-followup-article|gnus-score-followup-thread|gnus-score-headers|gnus-score-mode|gnus-score-save|gnus-secondary-method-p|gnus-seconds-month|gnus-seconds-today|gnus-seconds-year|gnus-select-frame-set-input-focus|gnus-select-lowest-window|gnus-server-add-address|gnus-server-equal|gnus-server-extend-method|gnus-server-get-method|gnus-server-server-name|gnus-server-set-info|gnus-server-status|gnus-server-string|gnus-server-to-method|gnus-servers-using-backend|gnus-set-active|gnus-set-file-modes|gnus-set-info|gnus-set-process-plist|gnus-set-process-query-on-exit-flag|gnus-set-sorted-intersection|gnus-set-window-start|gnus-set-work-buffer|gnus-sethash|gnus-short-group-name|gnus-shutdown|gnus-sieve-article-add-rule|gnus-sieve-generate|gnus-sieve-update|gnus-similar-server-opened|gnus-simplify-mode-line|gnus-slave-no-server|gnus-slave-unplugged|gnus-slave|gnus-sloppily-equal-method-parameters|gnus-sorted-complement|gnus-sorted-difference|gnus-sorted-intersection|gnus-sorted-ndifference|gnus-sorted-nintersection|gnus-sorted-nunion|gnus-sorted-range-intersection|gnus-sorted-union|gnus-splash-svg-color-symbols|gnus-splash|gnus-split-references|gnus-start-date-timer|gnus-stop-date-timer|gnus-string-equal|gnus-string-mark-left-to-right|gnus-string-match-p|gnus-string-or-1|gnus-string-or|gnus-string-prefix-p|gnus-string-remove-all-properties|gnus-string<|gnus-string>|gnus-strip-whitespace|gnus-subscribe-topics|gnus-summary-article-number|gnus-summary-bookmark-jump|gnus-summary-buffer-name|gnus-summary-cancel-article|gnus-summary-current-score|gnus-summary-exit|gnus-summary-followup-to-mail-with-original|gnus-summary-followup-to-mail|gnus-summary-followup-with-original|gnus-summary-followup|gnus-summary-increase-score|gnus-summary-insert-cached-articles|gnus-summary-insert-line|gnus-summary-last-subject|gnus-summary-line-format-spec|gnus-summary-lower-same-subject-and-select|gnus-summary-lower-same-subject|gnus-summary-lower-score|gnus-summary-lower-thread|gnus-summary-mail-forward|gnus-summary-mail-other-window|gnus-summary-news-other-window|gnus-summary-position-point|gnus-summary-post-forward|gnus-summary-post-news|gnus-summary-raise-same-subject-and-select|gnus-summary-raise-same-subject|gnus-summary-raise-score|gnus-summary-raise-thread|gnus-summary-read-group|gnus-summary-reply-with-original|gnus-summary-reply|gnus-summary-resend-bounced-mail|gnus-summary-resend-message|gnus-summary-save-article-folder|gnus-summary-save-article-vm|gnus-summary-save-in-folder|gnus-summary-save-in-vm|gnus-summary-score-map|gnus-summary-send-map|gnus-summary-set-agent-mark|gnus-summary-set-score|gnus-summary-skip-intangible|gnus-summary-supersede-article|gnus-summary-wide-reply-with-original|gnus-summary-wide-reply|gnus-suppress-keymap|gnus-symbolic-argument|gnus-sync-initialize|gnus-sync-install-hooks|gnus-time-iso8601|gnus-timer--function|gnus-tool-bar-update|gnus-topic-mode|gnus-topic-remove-group|gnus-topic-set-parameters|gnus-treat-article|gnus-treat-from-gravatar|gnus-treat-from-picon|gnus-treat-mail-gravatar|gnus-treat-mail-picon|gnus-treat-newsgroups-picon|gnus-tree-close|gnus-tree-open|gnus-try-warping-via-registry|gnus-turn-off-edit-menu|gnus-undo-mode|gnus-undo-register|gnus-union|gnus-unplugged|gnus-update-alist-soft|gnus-update-format|gnus-update-read-articles|gnus-url-unhex-string|gnus-url-unhex|gnus-use-long-file-name|gnus-user-format-function-D|gnus-user-format-function-d|gnus-uu-decode-binhex-view|gnus-uu-decode-binhex|gnus-uu-decode-save-view|gnus-uu-decode-save|gnus-uu-decode-unshar-and-save-view|gnus-uu-decode-unshar-and-save|gnus-uu-decode-unshar-view|gnus-uu-decode-unshar|gnus-uu-decode-uu-and-save-view|gnus-uu-decode-uu-and-save|gnus-uu-decode-uu-view|gnus-uu-decode-uu|gnus-uu-delete-work-dir|gnus-uu-digest-mail-forward|gnus-uu-digest-post-forward|gnus-uu-extract-map|gnus-uu-invert-processable|gnus-uu-mark-all|gnus-uu-mark-buffer|gnus-uu-mark-by-regexp|gnus-uu-mark-map|gnus-uu-mark-over|gnus-uu-mark-region|gnus-uu-mark-series|gnus-uu-mark-sparse|gnus-uu-mark-thread|gnus-uu-post-news|gnus-uu-unmark-thread|gnus-version|gnus-virtual-group-p|gnus-visual-p|gnus-window-edges|gnus-window-inside-pixel-edges|gnus-with-output-to-file|gnus-write-active-file|gnus-write-buffer|gnus-x-face-from-file|gnus-xmas-define|gnus-xmas-redefine|gnus-xmas-splash|gnus-y-or-n-p|gnus-yes-or-no-p|gnus|gnutls-available-p|gnutls-boot|gnutls-bye|gnutls-deinit|gnutls-error-fatalp|gnutls-error-string|gnutls-errorp|gnutls-get-initstage|gnutls-message-maybe|gnutls-negotiate|gnutls-peer-status-warning-describe|gnutls-peer-status|gomoku--intangible|gomoku-beginning-of-line|gomoku-check-filled-qtuple|gomoku-click|gomoku-crash-game|gomoku-cross-qtuple|gomoku-display-statistics|gomoku-emacs-plays|gomoku-end-of-line|gomoku-find-filled-qtuple|gomoku-goto-square|gomoku-goto-xy|gomoku-human-plays|gomoku-human-resigns|gomoku-human-takes-back|gomoku-index-to-x|gomoku-index-to-y|gomoku-init-board|gomoku-init-display|gomoku-init-score-table|gomoku-init-square-score|gomoku-max-height|gomoku-max-width|gomoku-mode|gomoku-mouse-play|gomoku-move-down|gomoku-move-ne|gomoku-move-nw|gomoku-move-se|gomoku-move-sw|gomoku-move-up|gomoku-nb-qtuples|gomoku-offer-a-draw|gomoku-play-move|gomoku-plot-square|gomoku-point-square|gomoku-point-y|gomoku-prompt-for-move|gomoku-prompt-for-other-game|gomoku-start-game|gomoku-strongest-square|gomoku-switch-to-window|gomoku-take-back|gomoku-terminate-game|gomoku-update-score-in-direction|gomoku-update-score-table|gomoku-xy-to-index|gomoku|goto-address-at-mouse|goto-address-at-point|goto-address-find-address-at-point|goto-address-fontify-region|goto-address-fontify|goto-address-mode|goto-address-prog-mode|goto-address-unfontify|goto-address|goto-history-element|goto-line|goto-next-locus|gpm-mouse-disable|gpm-mouse-enable|gpm-mouse-mode|gpm-mouse-start|gpm-mouse-stop|gravatar-retrieve-synchronously|gravatar-retrieve|grep-apply-setting|grep-compute-defaults|grep-default-command|grep-expand-template|grep-filter|grep-find|grep-mode|grep-probe|grep-process-setup|grep-read-files|grep-read-regexp|grep-tag-default|grep|gs-height-in-pt|gs-load-image|gs-options|gs-set-ghostview-colors-window-prop|gs-set-ghostview-window-prop|gs-width-in-pt|gud-backward-sexp|gud-basic-call|gud-call|gud-common-init|gud-dbx-marker-filter|gud-dbx-massage-args|gud-def|gud-dguxdbx-marker-filter|gud-display-frame|gud-display-line|gud-expansion-speedbar-buttons|gud-expr-compound-sep|gud-expr-compound|gud-file-name|gud-filter|gud-find-c-expr|gud-find-class|gud-find-expr|gud-find-file|gud-format-command|gud-forward-sexp|gud-gdb-completion-at-point|gud-gdb-completions-1|gud-gdb-completions|gud-gdb-fetch-lines-filter|gud-gdb-get-stackframe|gud-gdb-goto-stackframe|gud-gdb-marker-filter|gud-gdb-run-command-fetch-lines|gud-gdb|gud-gdbmi-completions|gud-gdbmi-fetch-lines-filter|gud-gdbmi-marker-filter|gud-goto-info|gud-guiler-marker-filter|gud-innermost-expr|gud-install-speedbar-variables|gud-irixdbx-marker-filter|gud-jdb-analyze-source|gud-jdb-build-class-source-alist-for-file|gud-jdb-build-class-source-alist|gud-jdb-build-source-files-list|gud-jdb-find-source-file|gud-jdb-find-source-using-classpath|gud-jdb-find-source|gud-jdb-marker-filter|gud-jdb-massage-args|gud-jdb-parse-classpath-string|gud-jdb-skip-block|gud-jdb-skip-character-literal|gud-jdb-skip-id-ish-thing|gud-jdb-skip-single-line-comment|gud-jdb-skip-string-literal|gud-jdb-skip-traditional-or-documentation-comment|gud-jdb-skip-whitespace-and-comments|gud-jdb-skip-whitespace|gud-kill-buffer-hook|gud-marker-filter|gud-mipsdbx-marker-filter|gud-mode|gud-next-expr|gud-pdb-marker-filter|gud-perldb-marker-filter|gud-perldb-massage-args|gud-prev-expr|gud-query-cmdline|gud-read-address|gud-refresh|gud-reset|gud-sdb-find-file|gud-sdb-marker-filter|gud-sentinel|gud-set-buffer|gud-speedbar-buttons|gud-speedbar-item-info|gud-stop-subjob|gud-symbol|gud-tool-bar-item-visible-no-fringe|gud-tooltip-activate-mouse-motions-if-enabled|gud-tooltip-activate-mouse-motions|gud-tooltip-change-major-mode|gud-tooltip-dereference|gud-tooltip-mode|gud-tooltip-mouse-motion|gud-tooltip-print-command|gud-tooltip-process-output|gud-tooltip-tips|gud-val|gud-watch|gud-xdb-marker-filter|gud-xdb-massage-args|gui--selection-value-internal|gui--valid-simple-selection-p|gui-call|gui-get-primary-selection|gui-get-selection|gui-method--name|gui-method-declare|gui-method-define|gui-method|gui-select-text|gui-selection-value|gui-set-selection|guiler|gv--defsetter|gv--defun-declaration|gv-deref|gv-get|gv-ref|hack-local-variables-apply|hack-local-variables-confirm|hack-local-variables-filter|hack-local-variables-prop-line|hack-one-local-variable--obsolete|hack-one-local-variable-constantp|hack-one-local-variable-eval-safep|hack-one-local-variable-quotep|hack-one-local-variable|handle-delete-frame|handle-focus-in|handle-focus-out|handle-save-session|handle-select-window|handwrite-10pt|handwrite-11pt|handwrite-12pt|handwrite-13pt|handwrite-insert-font|handwrite-insert-header|handwrite-insert-info|handwrite-insert-preamble|handwrite-set-pagenumber-off|handwrite-set-pagenumber-on|handwrite-set-pagenumber|handwrite|hangul-input-method-activate|hanoi-0|hanoi-goto-char|hanoi-insert-ring|hanoi-internal|hanoi-move-ring|hanoi-n|hanoi-pos-on-tower-p|hanoi-put-face|hanoi-ring-to-pos|hanoi-sit-for|hanoi-unix-64|hanoi-unix|hanoi|hash-table-keys|hash-table-values|hashcash-already-paid-p|hashcash-cancel-async|hashcash-check-payment|hashcash-generate-payment-async|hashcash-generate-payment|hashcash-insert-payment-async-2|hashcash-insert-payment-async|hashcash-insert-payment|hashcash-payment-required|hashcash-payment-to|hashcash-point-at-bol|hashcash-point-at-eol|hashcash-processes-running-p|hashcash-strip-quoted-names|hashcash-token-substring|hashcash-verify-payment|hashcash-version|hashcash-wait-async|hashcash-wait-or-cancel|he--all-buffers|he-buffer-member|he-capitalize-first|he-concat-directory-file-name|he-dabbrev-beg|he-dabbrev-kill-search|he-dabbrev-search|he-file-name-beg|he-init-string|he-kill-beg|he-line-beg|he-line-search-regexp|he-line-search|he-lisp-symbol-beg)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:he-list-beg|he-list-search|he-ordinary-case-p|he-reset-string|he-string-member|he-substitute-string|he-transfer-case|he-whole-kill-search|hebrew-font-get-precomposed|hebrew-shape-gstring|help--binding-locus|help--key-binding-keymap|help-C-file-name|help-add-fundoc-usage|help-at-pt-cancel-timer|help-at-pt-kbd-string|help-at-pt-maybe-display|help-at-pt-set-timer|help-at-pt-string|help-bookmark-jump|help-bookmark-make-record|help-button-action|help-describe-category-set|help-do-arg-highlight|help-do-xref|help-fns--autoloaded-p|help-fns--compiler-macro|help-fns--interactive-only|help-fns--key-bindings|help-fns--obsolete|help-fns--parent-mode|help-fns--signature|help-follow-mouse|help-follow-symbol|help-follow|help-for-help-internal-doc|help-for-help-internal|help-for-help|help-form-show|help-function-arglist|help-go-back|help-go-forward|help-highlight-arg|help-highlight-arguments|help-insert-string|help-insert-xref-button|help-key-description|help-make-usage|help-make-xrefs|help-mode-finish|help-mode-menu|help-mode-revert-buffer|help-mode-setup|help-mode|help-print-return-message|help-quit|help-split-fundoc|help-window-display-message|help-window-setup|help-with-tutorial-spec-language|help-with-tutorial|help-xref-button|help-xref-go-back|help-xref-go-forward|help-xref-interned|help-xref-on-pp|help|hexl-C-c-prefix|hexl-C-x-prefix|hexl-ESC-prefix|hexl-activate-ruler|hexl-address-to-marker|hexl-ascii-start-column|hexl-backward-char|hexl-backward-short|hexl-backward-word|hexl-beginning-of-1k-page|hexl-beginning-of-512b-page|hexl-beginning-of-buffer|hexl-beginning-of-line|hexl-char-after-point|hexl-current-address|hexl-end-of-1k-page|hexl-end-of-512b-page|hexl-end-of-buffer|hexl-end-of-line|hexl-find-file|hexl-follow-ascii-find|hexl-follow-ascii|hexl-follow-line|hexl-forward-char|hexl-forward-short|hexl-forward-word|hexl-goto-address|hexl-goto-hex-address|hexl-hex-char-to-integer|hexl-hex-string-to-integer|hexl-highlight-line-range|hexl-htoi|hexl-insert-char|hexl-insert-decimal-char|hexl-insert-hex-char|hexl-insert-hex-string|hexl-insert-multibyte-char|hexl-insert-octal-char|hexl-isearch-search-function|hexl-line-displen|hexl-maybe-dehexlify-buffer|hexl-menu|hexl-mode--minor-mode-p|hexl-mode--setq-local|hexl-mode-exit|hexl-mode-ruler|hexl-mode|hexl-next-line|hexl-oct-char-to-integer|hexl-octal-string-to-integer|hexl-options|hexl-previous-line|hexl-print-current-point-info|hexl-printable-character|hexl-quoted-insert|hexl-revert-buffer-function|hexl-rulerize|hexl-save-buffer|hexl-scroll-down|hexl-scroll-up|hexl-self-insert-command|hexlify-buffer|hfy-begin-span|hfy-bgcol|hfy-box-to-border-assoc|hfy-box-to-style|hfy-box|hfy-buffer|hfy-colour-vals|hfy-colour|hfy-combined-face-spec|hfy-compile-face-map|hfy-compile-stylesheet|hfy-copy-and-fontify-file|hfy-css-name|hfy-decor|hfy-default-footer|hfy-default-header|hfy-dirname|hfy-end-span|hfy-face-at|hfy-face-attr-for-class|hfy-face-or-def-to-name|hfy-face-resolve-face|hfy-face-to-css-default|hfy-face-to-style-i|hfy-face-to-style|hfy-fallback-colour-values|hfy-family|hfy-find-invisible-ranges|hfy-flatten-style|hfy-fontified-p|hfy-fontify-buffer|hfy-force-fontification|hfy-href-stub|hfy-href|hfy-html-dekludge-buffer|hfy-html-enkludge-buffer|hfy-html-quote|hfy-init-progn|hfy-initfile|hfy-interq|hfy-invisible-name|hfy-invisible|hfy-kludge-cperl-mode|hfy-link-style-string|hfy-link-style|hfy-list-files|hfy-load-tags-cache|hfy-lookup|hfy-make-directory|hfy-mark-tag-hrefs|hfy-mark-tag-names|hfy-mark-trailing-whitespace|hfy-merge-adjacent-spans|hfy-opt|hfy-overlay-props-at|hfy-parse-tags-buffer|hfy-prepare-index-i|hfy-prepare-index|hfy-prepare-tag-map|hfy-prop-invisible-p|hfy-relstub|hfy-save-buffer-state|hfy-save-initvar|hfy-save-kill-buffers|hfy-shell|hfy-size-to-int|hfy-size|hfy-slant|hfy-sprintf-stylesheet|hfy-subtract-maps|hfy-tags-for-file|hfy-text-p|hfy-triplet|hfy-unmark-trailing-whitespace|hfy-weight|hfy-which-etags|hfy-width|hfy-word-regex|hi-lock--hashcons|hi-lock--regexps-at-point|hi-lock-face-buffer|hi-lock-face-phrase-buffer|hi-lock-face-symbol-at-point|hi-lock-find-patterns|hi-lock-font-lock-hook|hi-lock-keyword->face|hi-lock-line-face-buffer|hi-lock-mode-set-explicitly|hi-lock-mode|hi-lock-process-phrase|hi-lock-read-face-name|hi-lock-regexp-okay|hi-lock-set-file-patterns|hi-lock-set-pattern|hi-lock-unface-buffer|hi-lock-unload-function|hi-lock-write-interactive-patterns|hide-body|hide-entry|hide-ifdef-block|hide-ifdef-define|hide-ifdef-guts|hide-ifdef-mode-menu|hide-ifdef-mode|hide-ifdef-region-internal|hide-ifdef-region|hide-ifdef-set-define-alist|hide-ifdef-toggle-outside-read-only|hide-ifdef-toggle-read-only|hide-ifdef-toggle-shadowing|hide-ifdef-undef|hide-ifdef-use-define-alist|hide-ifdefs|hide-leaves|hide-other|hide-region-body|hide-sublevels|hide-subtree|hif-add-new-defines|hif-after-revert-function|hif-and-expr|hif-and|hif-canonicalize-tokens|hif-canonicalize|hif-clear-all-ifdef-defined|hif-comma|hif-comp-expr|hif-compress-define-list|hif-conditional|hif-define-macro|hif-define-operator|hif-defined|hif-delimit|hif-divide|hif-end-of-line|hif-endif-to-ifdef|hif-eq-expr|hif-equal|hif-evaluate-macro|hif-evaluate-region|hif-expand-token-list|hif-expr|hif-exprlist|hif-factor|hif-find-any-ifX|hif-find-define|hif-find-ifdef-block|hif-find-next-relevant|hif-find-previous-relevant|hif-find-range|hif-flatten|hif-get-argument-list|hif-greater-equal|hif-greater|hif-hide-line|hif-if-valid-identifier-p|hif-ifdef-to-endif|hif-invoke|hif-less-equal|hif-less|hif-logand-expr|hif-logand|hif-logior-expr|hif-logior|hif-lognot|hif-logshift-expr|hif-logxor-expr|hif-logxor|hif-looking-at-elif|hif-looking-at-else|hif-looking-at-endif|hif-looking-at-ifX|hif-lookup|hif-macro-supply-arguments|hif-make-range|hif-math|hif-mathify-binop|hif-mathify|hif-merge-ifdef-region|hif-minus|hif-modulo|hif-muldiv-expr|hif-multiply|hif-nexttoken|hif-not|hif-notequal|hif-or-expr|hif-or|hif-parse-exp|hif-parse-macro-arglist|hif-place-macro-invocation|hif-plus|hif-possibly-hide|hif-range-elif|hif-range-else|hif-range-end|hif-range-start|hif-recurse-on|hif-set-var|hif-shiftleft|hif-shiftright|hif-show-all|hif-show-ifdef-region|hif-string-concatenation|hif-string-to-number|hif-stringify|hif-token-concat|hif-token-concatenation|hif-token-stringification|hif-tokenize|hif-undefine-symbol|highlight-changes-mode-set-explicitly|highlight-changes-mode-turn-on|highlight-changes-mode|highlight-changes-next-change|highlight-changes-previous-change|highlight-changes-remove-highlight|highlight-changes-rotate-faces|highlight-changes-visible-mode|highlight-compare-buffers|highlight-compare-with-file|highlight-lines-matching-regexp|highlight-markup-buffers|highlight-phrase|highlight-regexp|highlight-symbol-at-point|hilit-chg-bump-change|hilit-chg-clear|hilit-chg-cust-fix-changes-face-list|hilit-chg-desktop-restore|hilit-chg-display-changes|hilit-chg-fixup|hilit-chg-get-diff-info|hilit-chg-get-diff-list-hk|hilit-chg-hide-changes|hilit-chg-make-list|hilit-chg-make-ov|hilit-chg-map-changes|hilit-chg-set-face-on-change|hilit-chg-set|hilit-chg-unload-function|hilit-chg-update|hippie-expand|hl-line-highlight|hl-line-make-overlay|hl-line-mode|hl-line-move|hl-line-unhighlight|hl-line-unload-function|hmac-md5-96|hmac-md5|holiday-list|holidays|horizontal-scroll-bar-mode|horizontal-scroll-bars-available-p|how-many|hs-already-hidden-p|hs-c-like-adjust-block-beginning|hs-discard-overlays|hs-find-block-beginning|hs-forward-sexp|hs-grok-mode-type|hs-hide-all|hs-hide-block-at-point|hs-hide-block|hs-hide-comment-region|hs-hide-initial-comment-block|hs-hide-level-recursive|hs-hide-level|hs-inside-comment-p|hs-isearch-show-temporary|hs-isearch-show|hs-life-goes-on|hs-looking-at-block-start-p|hs-make-overlay|hs-minor-mode-menu|hs-minor-mode|hs-mouse-toggle-hiding|hs-overlay-at|hs-show-all|hs-show-block|hs-toggle-hiding|html-autoview-mode|html-checkboxes|html-current-defun-name|html-headline-1|html-headline-2|html-headline-3|html-headline-4|html-headline-5|html-headline-6|html-horizontal-rule|html-href-anchor|html-image|html-imenu-index|html-line|html-list-item|html-mode|html-name-anchor|html-ordered-list|html-paragraph|html-radio-buttons|html-unordered-list|html2text|htmlfontify-buffer|htmlfontify-copy-and-link-dir|htmlfontify-load-initfile|htmlfontify-load-rgb-file|htmlfontify-run-etags|htmlfontify-save-initfile|htmlfontify-string|htmlize-attrlist-to-fstruct|htmlize-buffer-1|htmlize-buffer-substring-no-invisible|htmlize-buffer|htmlize-color-to-rgb|htmlize-copy-attr-if-set|htmlize-css-insert-head|htmlize-css-insert-text|htmlize-css-specs|htmlize-defang-local-variables|htmlize-default-body-tag|htmlize-default-doctype|htmlize-despam-address|htmlize-ensure-fontified|htmlize-face-background|htmlize-face-color-internal|htmlize-face-emacs21-attr|htmlize-face-foreground|htmlize-face-list-p|htmlize-face-size|htmlize-face-specifies-property|htmlize-face-to-fstruct|htmlize-faces-at-point|htmlize-faces-in-buffer|htmlize-file|htmlize-font-body-tag|htmlize-font-insert-text|htmlize-fstruct-background--cmacro|htmlize-fstruct-background|htmlize-fstruct-boldp--cmacro|htmlize-fstruct-boldp|htmlize-fstruct-css-name--cmacro|htmlize-fstruct-css-name|htmlize-fstruct-foreground--cmacro|htmlize-fstruct-foreground|htmlize-fstruct-italicp--cmacro|htmlize-fstruct-italicp|htmlize-fstruct-overlinep--cmacro|htmlize-fstruct-overlinep|htmlize-fstruct-p--cmacro|htmlize-fstruct-p|htmlize-fstruct-size--cmacro|htmlize-fstruct-size|htmlize-fstruct-strikep--cmacro|htmlize-fstruct-strikep|htmlize-fstruct-underlinep--cmacro|htmlize-fstruct-underlinep|htmlize-get-color-rgb-hash|htmlize-inline-css-body-tag|htmlize-inline-css-insert-text|htmlize-locate-file|htmlize-make-face-map|htmlize-make-file-name|htmlize-make-hyperlinks|htmlize-many-files-dired|htmlize-many-files|htmlize-memoize|htmlize-merge-faces|htmlize-merge-size|htmlize-merge-two-faces|htmlize-method-function|htmlize-method|htmlize-next-change|htmlize-protect-string|htmlize-region-for-paste|htmlize-region|htmlize-trim-ellipsis|htmlize-unstringify-face|htmlize-untabify|htmlize-with-fontify-message|ibuffer-active-formats-name|ibuffer-add-saved-filters|ibuffer-add-to-tmp-hide|ibuffer-add-to-tmp-show|ibuffer-assert-ibuffer-mode|ibuffer-auto-mode|ibuffer-backward-filter-group|ibuffer-backward-line|ibuffer-backwards-next-marked|ibuffer-bs-show|ibuffer-buf-matches-predicates|ibuffer-buffer-file-name|ibuffer-buffer-name-face|ibuffer-buffer-names-with-mark|ibuffer-bury-buffer|ibuffer-check-formats|ibuffer-clear-filter-groups|ibuffer-clear-summary-columns|ibuffer-columnize-and-insert-list|ibuffer-compile-format|ibuffer-compile-make-eliding-form|ibuffer-compile-make-format-form|ibuffer-compile-make-substring-form|ibuffer-confirm-operation-on|ibuffer-copy-filename-as-kill|ibuffer-count-deletion-lines|ibuffer-count-marked-lines|ibuffer-current-buffer|ibuffer-current-buffers-with-marks|ibuffer-current-format|ibuffer-current-formats|ibuffer-current-mark|ibuffer-current-state-list|ibuffer-customize|ibuffer-decompose-filter-group|ibuffer-decompose-filter|ibuffer-delete-saved-filter-groups|ibuffer-delete-saved-filters|ibuffer-deletion-marked-buffer-names|ibuffer-diff-with-file|ibuffer-do-delete|ibuffer-do-eval|ibuffer-do-isearch-regexp|ibuffer-do-isearch|ibuffer-do-kill-lines|ibuffer-do-kill-on-deletion-marks|ibuffer-do-occur|ibuffer-do-print|ibuffer-do-query-replace-regexp|ibuffer-do-query-replace|ibuffer-do-rename-uniquely|ibuffer-do-replace-regexp|ibuffer-do-revert|ibuffer-do-save|ibuffer-do-shell-command-file|ibuffer-do-shell-command-pipe-replace|ibuffer-do-shell-command-pipe|ibuffer-do-sort-by-alphabetic|ibuffer-do-sort-by-filename\\\\/process|ibuffer-do-sort-by-major-mode|ibuffer-do-sort-by-mode-name|ibuffer-do-sort-by-recency|ibuffer-do-sort-by-size|ibuffer-do-toggle-modified|ibuffer-do-toggle-read-only|ibuffer-do-view-1|ibuffer-do-view-and-eval|ibuffer-do-view-horizontally|ibuffer-do-view-other-frame|ibuffer-do-view|ibuffer-exchange-filters|ibuffer-expand-format-entry|ibuffer-filter-buffers|ibuffer-filter-by-content|ibuffer-filter-by-derived-mode|ibuffer-filter-by-filename|ibuffer-filter-by-mode|ibuffer-filter-by-name|ibuffer-filter-by-predicate|ibuffer-filter-by-size-gt|ibuffer-filter-by-size-lt|ibuffer-filter-by-used-mode|ibuffer-filter-disable|ibuffer-filters-to-filter-group|ibuffer-find-file)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:ibuffer-format-column|ibuffer-forward-filter-group|ibuffer-forward-line|ibuffer-forward-next-marked|ibuffer-get-marked-buffers|ibuffer-included-in-filters-p|ibuffer-insert-buffer-line|ibuffer-insert-filter-group|ibuffer-interactive-filter-by-mode|ibuffer-invert-sorting|ibuffer-jump-to-buffer|ibuffer-jump-to-filter-group|ibuffer-kill-filter-group|ibuffer-kill-line|ibuffer-list-buffers|ibuffer-make-column-filename-and-process|ibuffer-make-column-filename|ibuffer-make-column-process|ibuffer-map-deletion-lines|ibuffer-map-lines-nomodify|ibuffer-map-lines|ibuffer-map-marked-lines|ibuffer-map-on-mark|ibuffer-mark-by-file-name-regexp|ibuffer-mark-by-mode-regexp|ibuffer-mark-by-mode|ibuffer-mark-by-name-regexp|ibuffer-mark-compressed-file-buffers|ibuffer-mark-dired-buffers|ibuffer-mark-dissociated-buffers|ibuffer-mark-for-delete-backwards|ibuffer-mark-for-delete|ibuffer-mark-forward|ibuffer-mark-help-buffers|ibuffer-mark-interactive|ibuffer-mark-modified-buffers|ibuffer-mark-old-buffers|ibuffer-mark-read-only-buffers|ibuffer-mark-special-buffers|ibuffer-mark-unsaved-buffers|ibuffer-marked-buffer-names|ibuffer-mode|ibuffer-mouse-filter-by-mode|ibuffer-mouse-popup-menu|ibuffer-mouse-toggle-filter-group|ibuffer-mouse-toggle-mark|ibuffer-mouse-visit-buffer|ibuffer-negate-filter|ibuffer-or-filter|ibuffer-other-window|ibuffer-pop-filter-group|ibuffer-pop-filter|ibuffer-recompile-formats|ibuffer-redisplay-current|ibuffer-redisplay-engine|ibuffer-redisplay|ibuffer-save-filter-groups|ibuffer-save-filters|ibuffer-set-filter-groups-by-mode|ibuffer-set-mark-1|ibuffer-set-mark|ibuffer-shrink-to-fit|ibuffer-skip-properties|ibuffer-sort-bufferlist|ibuffer-switch-format|ibuffer-switch-to-saved-filter-groups|ibuffer-switch-to-saved-filters|ibuffer-toggle-filter-group|ibuffer-toggle-marks|ibuffer-toggle-sorting-mode|ibuffer-unmark-all|ibuffer-unmark-backward|ibuffer-unmark-forward|ibuffer-update-format|ibuffer-update-title-and-summary|ibuffer-update|ibuffer-visible-p|ibuffer-visit-buffer-1-window|ibuffer-visit-buffer-other-frame|ibuffer-visit-buffer-other-window-noselect|ibuffer-visit-buffer-other-window|ibuffer-visit-buffer|ibuffer-visit-tags-table|ibuffer-yank-filter-group|ibuffer-yank|ibuffer|icalendar--add-decoded-times|icalendar--add-diary-entry|icalendar--all-events|icalendar--convert-all-timezones|icalendar--convert-anniversary-to-ical|icalendar--convert-block-to-ical|icalendar--convert-cyclic-to-ical|icalendar--convert-date-to-ical|icalendar--convert-float-to-ical|icalendar--convert-ical-to-diary|icalendar--convert-non-recurring-all-day-to-diary|icalendar--convert-non-recurring-not-all-day-to-diary|icalendar--convert-ordinary-to-ical|icalendar--convert-recurring-to-diary|icalendar--convert-sexp-to-ical|icalendar--convert-string-for-export|icalendar--convert-string-for-import|icalendar--convert-to-ical|icalendar--convert-tz-offset|icalendar--convert-weekly-to-ical|icalendar--convert-yearly-to-ical|icalendar--create-ical-alarm|icalendar--create-uid|icalendar--date-to-isodate|icalendar--datestring-to-isodate|icalendar--datetime-to-american-date|icalendar--datetime-to-colontime|icalendar--datetime-to-diary-date|icalendar--datetime-to-european-date|icalendar--datetime-to-iso-date|icalendar--datetime-to-noneuropean-date|icalendar--decode-isodatetime|icalendar--decode-isoduration|icalendar--diarytime-to-isotime|icalendar--dmsg|icalendar--do-create-ical-alarm|icalendar--find-time-zone|icalendar--format-ical-event|icalendar--get-children|icalendar--get-event-properties|icalendar--get-event-property-attributes|icalendar--get-event-property|icalendar--get-month-number|icalendar--get-unfolded-buffer|icalendar--get-weekday-abbrev|icalendar--get-weekday-number|icalendar--get-weekday-numbers|icalendar--parse-summary-and-rest|icalendar--parse-vtimezone|icalendar--read-element|icalendar--rris|icalendar--split-value|icalendar-convert-diary-to-ical|icalendar-export-file|icalendar-export-region|icalendar-extract-ical-from-buffer|icalendar-first-weekday-of-year|icalendar-import-buffer|icalendar-import-file|icalendar-import-format-sample|icomplete--completion-predicate|icomplete--completion-table|icomplete--field-beg|icomplete--field-end|icomplete--field-string|icomplete--in-region-setup|icomplete-backward-completions|icomplete-completions|icomplete-exhibit|icomplete-forward-completions|icomplete-minibuffer-setup|icomplete-mode|icomplete-post-command-hook|icomplete-pre-command-hook|icomplete-simple-completing-p|icomplete-tidy|icon-backward-to-noncomment|icon-backward-to-start-of-continued-exp|icon-backward-to-start-of-if|icon-comment-indent|icon-forward-sexp-function|icon-indent-command|icon-indent-line|icon-is-continuation-line|icon-is-continued-line|icon-mode|iconify-or-deiconify-frame|idl-font-lock-keywords-2|idl-font-lock-keywords-3|idl-font-lock-keywords|idl-mode|idlwave-action-and-binding|idlwave-active-rinfo-space|idlwave-add-file-link-selector|idlwave-after-successful-completion|idlwave-all-assq|idlwave-all-class-inherits|idlwave-all-class-tags|idlwave-all-method-classes|idlwave-all-method-keyword-classes|idlwave-any-syslib|idlwave-attach-class-tag-classes|idlwave-attach-classes|idlwave-attach-keyword-classes|idlwave-attach-method-classes|idlwave-auto-fill-mode|idlwave-auto-fill|idlwave-backward-block|idlwave-backward-up-block|idlwave-beginning-of-block|idlwave-beginning-of-statement|idlwave-beginning-of-subprogram|idlwave-best-rinfo-assoc|idlwave-best-rinfo-assq|idlwave-block-jump-out|idlwave-block-master|idlwave-calc-hanging-indent|idlwave-calculate-cont-indent|idlwave-calculate-indent|idlwave-calculate-paren-indent|idlwave-call-special|idlwave-case|idlwave-check-abbrev|idlwave-choose-completion|idlwave-choose|idlwave-class-alist|idlwave-class-file-or-buffer|idlwave-class-found-in|idlwave-class-info|idlwave-class-inherits|idlwave-class-or-superclass-with-tag|idlwave-class-tag-reset|idlwave-class-tags|idlwave-close-block|idlwave-code-abbrev|idlwave-command-hook|idlwave-comment-hook|idlwave-complete-class-structure-tag-help|idlwave-complete-class-structure-tag|idlwave-complete-class|idlwave-complete-filename|idlwave-complete-in-buffer|idlwave-complete-sysvar-help|idlwave-complete-sysvar-or-tag|idlwave-complete-sysvar-tag-help|idlwave-complete|idlwave-completing-read|idlwave-completion-fontify-classes|idlwave-concatenate-rinfo-lists|idlwave-context-help|idlwave-convert-xml-clean-routine-aliases|idlwave-convert-xml-clean-statement-aliases|idlwave-convert-xml-clean-sysvar-aliases|idlwave-convert-xml-system-routine-info|idlwave-count-eq|idlwave-count-memq|idlwave-count-outlawed-buffers|idlwave-create-customize-menu|idlwave-create-user-catalog-file|idlwave-current-indent|idlwave-current-routine-fullname|idlwave-current-routine|idlwave-current-statement-indent|idlwave-custom-ampersand-surround|idlwave-custom-ltgtr-surround|idlwave-customize|idlwave-debug-map|idlwave-default-choose-completion|idlwave-default-insert-timestamp|idlwave-define-abbrev|idlwave-delete-user-catalog-file|idlwave-determine-class|idlwave-display-calling-sequence|idlwave-display-completion-list-emacs|idlwave-display-completion-list-xemacs|idlwave-display-completion-list|idlwave-display-user-catalog-widget|idlwave-do-action|idlwave-do-context-help|idlwave-do-context-help1|idlwave-do-find-module|idlwave-do-kill-autoloaded-buffers|idlwave-do-mouse-completion-help|idlwave-doc-header|idlwave-doc-modification|idlwave-down-block|idlwave-downcase-safe|idlwave-edit-in-idlde|idlwave-elif|idlwave-end-of-block|idlwave-end-of-statement|idlwave-end-of-statement0|idlwave-end-of-subprogram|idlwave-entry-find-keyword|idlwave-entry-has-help|idlwave-entry-keywords|idlwave-expand-equal|idlwave-expand-keyword|idlwave-expand-lib-file-name|idlwave-expand-path|idlwave-expand-region-abbrevs|idlwave-explicit-class-listed|idlwave-fill-paragraph|idlwave-find-class-definition|idlwave-find-file-noselect|idlwave-find-inherited-class|idlwave-find-key|idlwave-find-module-this-file|idlwave-find-module|idlwave-find-struct-tag|idlwave-find-structure-definition|idlwave-fix-keywords|idlwave-fix-module-if-obj_new|idlwave-font-lock-fontify-region|idlwave-for|idlwave-forward-block|idlwave-function-menu|idlwave-function|idlwave-get-buffer-routine-info|idlwave-get-buffer-visiting|idlwave-get-routine-info-from-buffers|idlwave-goto-comment|idlwave-grep|idlwave-hard-tab|idlwave-has-help|idlwave-help-assistant-available|idlwave-help-assistant-close|idlwave-help-assistant-command|idlwave-help-assistant-help-with-topic|idlwave-help-assistant-open-link|idlwave-help-assistant-raise|idlwave-help-assistant-start|idlwave-help-check-locations|idlwave-help-diagnostics|idlwave-help-display-help-window|idlwave-help-error|idlwave-help-find-first-header|idlwave-help-find-header|idlwave-help-find-in-doc-header|idlwave-help-find-routine-definition|idlwave-help-fontify|idlwave-help-get-help-buffer|idlwave-help-get-special-help|idlwave-help-html-link|idlwave-help-menu|idlwave-help-mode|idlwave-help-quit|idlwave-help-return-to-calling-frame|idlwave-help-select-help-frame|idlwave-help-show-help-frame|idlwave-help-toggle-header-match-and-def|idlwave-help-toggle-header-top-and-def|idlwave-help-with-source|idlwave-highlight-linked-completions|idlwave-html-help-location|idlwave-if|idlwave-in-comment|idlwave-in-quote|idlwave-in-structure|idlwave-indent-and-action|idlwave-indent-left-margin|idlwave-indent-line|idlwave-indent-statement|idlwave-indent-subprogram|idlwave-indent-to|idlwave-info|idlwave-insert-source-location|idlwave-is-comment-line|idlwave-is-comment-or-empty-line|idlwave-is-continuation-line|idlwave-is-pointer-dereference|idlwave-keyboard-quit|idlwave-keyword-abbrev|idlwave-kill-autoloaded-buffers|idlwave-kill-buffer-update|idlwave-last-valid-char|idlwave-launch-idlhelp|idlwave-lib-p|idlwave-list-abbrevs|idlwave-list-all-load-path-shadows|idlwave-list-buffer-load-path-shadows|idlwave-list-load-path-shadows|idlwave-list-shell-load-path-shadows|idlwave-load-all-rinfo|idlwave-load-rinfo-next-step|idlwave-load-system-routine-info|idlwave-local-value|idlwave-locate-lib-file|idlwave-look-at|idlwave-make-force-complete-where-list|idlwave-make-full-name|idlwave-make-modified-completion-map-emacs|idlwave-make-modified-completion-map-xemacs|idlwave-make-one-key-alist|idlwave-make-space|idlwave-make-tags|idlwave-mark-block|idlwave-mark-doclib|idlwave-mark-statement|idlwave-mark-subprogram|idlwave-match-class-arrows|idlwave-members-only|idlwave-min-current-statement-indent|idlwave-mode-debug-menu|idlwave-mode-menu|idlwave-mode|idlwave-mouse-active-rinfo-right|idlwave-mouse-active-rinfo-shift|idlwave-mouse-active-rinfo|idlwave-mouse-choose-completion|idlwave-mouse-completion-help|idlwave-mouse-context-help|idlwave-new-buffer-update|idlwave-new-sintern-type|idlwave-newline|idlwave-next-statement|idlwave-nonmembers-only|idlwave-one-key-select|idlwave-online-help|idlwave-parse-definition|idlwave-path-alist-add-flag|idlwave-path-alist-remove-flag|idlwave-popup-select|idlwave-prepare-class-tag-completion|idlwave-prev-index-position|idlwave-previous-statement|idlwave-print-source|idlwave-procedure|idlwave-process-sysvars|idlwave-quit-help|idlwave-quoted|idlwave-read-paths|idlwave-recursive-directory-list|idlwave-region-active-p|idlwave-repeat|idlwave-replace-buffer-routine-info|idlwave-replace-string|idlwave-rescan-asynchronously|idlwave-rescan-catalog-directories|idlwave-reset-sintern-type|idlwave-reset-sintern|idlwave-resolve|idlwave-restore-wconf-after-completion|idlwave-revoke-license-to-kill|idlwave-rinfo-assoc|idlwave-rinfo-assq-any-class|idlwave-rinfo-assq|idlwave-rinfo-group-keywords|idlwave-rinfo-insert-keyword|idlwave-routine-entry-compare-twins|idlwave-routine-entry-compare|idlwave-routine-info|idlwave-routine-source-file|idlwave-routine-twin-compare|idlwave-routine-twins|idlwave-routines|idlwave-rw-case|idlwave-save-buffer-update|idlwave-save-routine-info|idlwave-scan-class-info|idlwave-scan-library-catalogs|idlwave-scan-user-lib-files|idlwave-scroll-completions|idlwave-selector|idlwave-set-local|idlwave-setup|idlwave-shell-break-here|idlwave-shell-compile-helper-routines|idlwave-shell-filter-sysvars|idlwave-shell-recenter-shell-window|idlwave-shell-run-region|idlwave-shell-save-and-run|idlwave-shell-send-command|idlwave-shell-show-commentary|idlwave-shell-update-routine-info|idlwave-shell|idlwave-shorten-syntax|idlwave-show-begin-check|idlwave-show-begin|idlwave-show-commentary|idlwave-show-matching-quote|idlwave-sintern-class-info|idlwave-sintern-class-tag|idlwave-sintern-class)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:idlwave-sintern-dir|idlwave-sintern-keyword-list|idlwave-sintern-keyword|idlwave-sintern-libname|idlwave-sintern-method|idlwave-sintern-rinfo-list|idlwave-sintern-routine-or-method|idlwave-sintern-routine|idlwave-sintern-set|idlwave-sintern-sysvar-alist|idlwave-sintern-sysvar|idlwave-sintern-sysvartag|idlwave-sintern|idlwave-skip-label-or-case|idlwave-skip-multi-commands|idlwave-skip-object|idlwave-special-lib-test|idlwave-split-line|idlwave-split-link-target|idlwave-split-menu-emacs|idlwave-split-menu-xemacs|idlwave-split-string|idlwave-start-load-rinfo-timer|idlwave-start-of-substatement|idlwave-statement-type|idlwave-struct-borders|idlwave-struct-inherits|idlwave-struct-tags|idlwave-study-twins|idlwave-substitute-link-target|idlwave-surround|idlwave-switch|idlwave-sys-dir|idlwave-syslib-p|idlwave-syslib-scanned-p|idlwave-sysvars-reset|idlwave-template|idlwave-this-word|idlwave-toggle-comment-region|idlwave-true-path-alist|idlwave-uniquify|idlwave-unit-name|idlwave-update-buffer-routine-info|idlwave-update-current-buffer-info|idlwave-update-routine-info|idlwave-user-catalog-command-hook|idlwave-what-function|idlwave-what-module-find-class|idlwave-what-module|idlwave-what-procedure|idlwave-where|idlwave-while|idlwave-widget-scan-user-lib-files|idlwave-with-special-syntax|idlwave-write-paths|idlwave-xml-create-class-method-lists|idlwave-xml-create-rinfo-list|idlwave-xml-create-sysvar-alist|idlwave-xml-system-routine-info-up-to-date|idlwave-xor|idna-to-ascii|ido-active|ido-add-virtual-buffers-to-list|ido-all-completions|ido-buffer-internal|ido-buffer-window-other-frame|ido-bury-buffer-at-head|ido-cache-ftp-valid|ido-cache-unc-valid|ido-choose-completion-string|ido-chop|ido-common-initialization|ido-complete-space|ido-complete|ido-completing-read|ido-completion-help|ido-completions|ido-copy-current-file-name|ido-copy-current-word|ido-delete-backward-updir|ido-delete-backward-word-updir|ido-delete-file-at-head|ido-directory-too-big-p|ido-dired|ido-display-buffer|ido-display-file|ido-edit-input|ido-enter-dired|ido-enter-find-file|ido-enter-insert-buffer|ido-enter-insert-file|ido-enter-switch-buffer|ido-everywhere|ido-exhibit|ido-existing-item-p|ido-exit-minibuffer|ido-expand-directory|ido-fallback-command|ido-file-extension-aux|ido-file-extension-lessp|ido-file-extension-order|ido-file-internal|ido-file-lessp|ido-file-name-all-completions-1|ido-file-name-all-completions|ido-final-slash|ido-find-alternate-file|ido-find-common-substring|ido-find-file-in-dir|ido-find-file-other-frame|ido-find-file-other-window|ido-find-file-read-only-other-frame|ido-find-file-read-only-other-window|ido-find-file-read-only|ido-find-file|ido-flatten-merged-list|ido-forget-work-directory|ido-fractionp|ido-get-buffers-in-frames|ido-get-bufname|ido-get-work-directory|ido-get-work-file|ido-ignore-item-p|ido-init-completion-maps|ido-initiate-auto-merge|ido-insert-buffer|ido-insert-file|ido-is-ftp-directory|ido-is-root-directory|ido-is-slow-ftp-host|ido-is-tramp-root|ido-is-unc-host|ido-is-unc-root|ido-kill-buffer-at-head|ido-kill-buffer|ido-kill-emacs-hook|ido-list-directory|ido-load-history|ido-local-file-exists-p|ido-magic-backward-char|ido-magic-delete-char|ido-magic-forward-char|ido-make-buffer-list-1|ido-make-buffer-list|ido-make-choice-list|ido-make-dir-list-1|ido-make-dir-list|ido-make-directory|ido-make-file-list-1|ido-make-file-list|ido-make-merged-file-list-1|ido-make-merged-file-list|ido-make-prompt|ido-makealist|ido-may-cache-directory|ido-merge-work-directories|ido-minibuffer-setup|ido-mode|ido-name|ido-next-match-dir|ido-next-match|ido-next-work-directory|ido-next-work-file|ido-no-final-slash|ido-nonreadable-directory-p|ido-pop-dir|ido-pp|ido-prev-match-dir|ido-prev-match|ido-prev-work-directory|ido-prev-work-file|ido-push-dir-first|ido-push-dir|ido-read-buffer|ido-read-directory-name|ido-read-file-name|ido-read-internal|ido-record-command|ido-record-work-directory|ido-record-work-file|ido-remove-cached-dir|ido-reread-directory|ido-restrict-to-matches|ido-save-history|ido-select-text|ido-set-common-completion|ido-set-current-directory|ido-set-current-home|ido-set-matches-1|ido-set-matches|ido-setup-completion-map|ido-sort-merged-list|ido-summary-buffers-to-end|ido-switch-buffer-other-frame|ido-switch-buffer-other-window|ido-switch-buffer|ido-take-first-match|ido-tidy|ido-time-stamp|ido-to-end|ido-toggle-case|ido-toggle-ignore|ido-toggle-literal|ido-toggle-prefix|ido-toggle-regexp|ido-toggle-trace|ido-toggle-vc|ido-toggle-virtual-buffers|ido-trace|ido-unc-hosts-net-view|ido-unc-hosts|ido-undo-merge-work-directory|ido-unload-function|ido-up-directory|ido-visit-buffer|ido-wash-history|ido-wide-find-dir-or-delete-dir|ido-wide-find-dir|ido-wide-find-dirs-or-files|ido-wide-find-file-or-pop-dir|ido-wide-find-file|ido-word-matching-substring|ido-write-file|ielm|ietf-drums-get-comment|ietf-drums-init|ietf-drums-make-address|ietf-drums-narrow-to-header|ietf-drums-parse-address|ietf-drums-parse-addresses|ietf-drums-parse-date|ietf-drums-quote-string|ietf-drums-remove-comments|ietf-drums-remove-whitespace|ietf-drums-strip|ietf-drums-token-to-list|ietf-drums-unfold-fws|if-let|ifconfig|iimage-mode-buffer|iimage-mode|iimage-modification-hook|iimage-recenter|image--set-speed|image-after-revert-hook|image-animate-get-speed|image-animate-set-speed|image-animate-timeout|image-animated-p|image-backward-hscroll|image-bob|image-bol|image-bookmark-jump|image-bookmark-make-record|image-decrease-speed|image-dired--with-db-file|image-dired-add-to-file-comment-list|image-dired-add-to-tag-file-list|image-dired-add-to-tag-file-lists|image-dired-associated-dired-buffer-window|image-dired-associated-dired-buffer|image-dired-backward-image|image-dired-comment-thumbnail|image-dired-copy-with-exif-file-name|image-dired-create-display-image-buffer|image-dired-create-gallery-lists|image-dired-create-thumb|image-dired-create-thumbnail-buffer|image-dired-create-thumbs|image-dired-define-display-image-mode-keymap|image-dired-define-thumbnail-mode-keymap|image-dired-delete-char|image-dired-delete-tag|image-dired-dir|image-dired-dired-after-readin-hook|image-dired-dired-comment-files|image-dired-dired-display-external|image-dired-dired-display-image|image-dired-dired-display-properties|image-dired-dired-edit-comment-and-tags|image-dired-dired-file-marked-p|image-dired-dired-next-line|image-dired-dired-previous-line|image-dired-dired-toggle-marked-thumbs|image-dired-dired-with-window-configuration|image-dired-display-current-image-full|image-dired-display-current-image-sized|image-dired-display-image-mode|image-dired-display-image|image-dired-display-next-thumbnail-original|image-dired-display-previous-thumbnail-original|image-dired-display-thumb-properties|image-dired-display-thumb|image-dired-display-thumbnail-original-image|image-dired-display-thumbs-append|image-dired-display-thumbs|image-dired-display-window-height|image-dired-display-window-width|image-dired-display-window|image-dired-flag-thumb-original-file|image-dired-format-properties-string|image-dired-forward-image|image-dired-gallery-generate|image-dired-get-buffer-window|image-dired-get-comment|image-dired-get-exif-data|image-dired-get-exif-file-name|image-dired-get-thumbnail-image|image-dired-hidden-p|image-dired-image-at-point-p|image-dired-insert-image|image-dired-insert-thumbnail|image-dired-jump-original-dired-buffer|image-dired-jump-thumbnail-buffer|image-dired-kill-buffer-and-window|image-dired-line-up-dynamic|image-dired-line-up-interactive|image-dired-line-up|image-dired-list-tags|image-dired-mark-and-display-next|image-dired-mark-tagged-files|image-dired-mark-thumb-original-file|image-dired-modify-mark-on-thumb-original-file|image-dired-mouse-display-image|image-dired-mouse-select-thumbnail|image-dired-mouse-toggle-mark|image-dired-next-line-and-display|image-dired-next-line|image-dired-original-file-name|image-dired-previous-line-and-display|image-dired-previous-line|image-dired-read-comment|image-dired-refresh-thumb|image-dired-remove-tag|image-dired-restore-window-configuration|image-dired-rotate-original-left|image-dired-rotate-original-right|image-dired-rotate-original|image-dired-rotate-thumbnail-left|image-dired-rotate-thumbnail-right|image-dired-rotate-thumbnail|image-dired-sane-db-file|image-dired-save-information-from-widgets|image-dired-set-exif-data|image-dired-setup-dired-keybindings|image-dired-show-all-from-dir|image-dired-slideshow-start|image-dired-slideshow-step|image-dired-slideshow-stop|image-dired-tag-files|image-dired-tag-thumbnail-remove|image-dired-tag-thumbnail|image-dired-thumb-name|image-dired-thumbnail-display-external|image-dired-thumbnail-mode|image-dired-thumbnail-set-image-description|image-dired-thumbnail-window|image-dired-toggle-append-browsing|image-dired-toggle-dired-display-properties|image-dired-toggle-mark-thumb-original-file|image-dired-toggle-movement-tracking|image-dired-track-original-file|image-dired-track-thumbnail|image-dired-unmark-thumb-original-file|image-dired-update-property|image-dired-window-height-pixels|image-dired-window-width-pixels|image-dired-write-comments|image-dired-write-tags|image-dired|image-display-size|image-eob|image-eol|image-extension-data|image-file-call-underlying|image-file-handler|image-file-name-regexp|image-file-yank-handler|image-forward-hscroll|image-get-display-property|image-goto-frame|image-increase-speed|image-jpeg-p|image-metadata|image-minor-mode|image-mode--images-in-directory|image-mode-as-text|image-mode-fit-frame|image-mode-maybe|image-mode-menu|image-mode-reapply-winprops|image-mode-setup-winprops|image-mode-window-get|image-mode-window-put|image-mode-winprops|image-mode|image-next-file|image-next-frame|image-next-line|image-previous-file|image-previous-frame|image-previous-line|image-refresh|image-reset-speed|image-reverse-speed|image-scroll-down|image-scroll-up|image-search-load-path|image-set-window-hscroll|image-set-window-vscroll|image-toggle-animation|image-toggle-display-image|image-toggle-display-text|image-toggle-display|image-transform-check-size|image-transform-fit-to-height|image-transform-fit-to-width|image-transform-fit-width|image-transform-properties|image-transform-reset|image-transform-set-rotation|image-transform-set-scale|image-transform-width|image-type-auto-detected-p|image-type-from-buffer|image-type-from-data|image-type-from-file-header|image-type-from-file-name|image-type|imagemagick-filter-types|imagemagick-register-types|imap-add-callback|imap-anonymous-auth|imap-anonymous-p|imap-arrival-filter|imap-authenticate|imap-body-lines|imap-capability|imap-close|imap-cram-md5-auth|imap-cram-md5-p|imap-current-mailbox-p-1|imap-current-mailbox-p|imap-current-mailbox|imap-current-message|imap-digest-md5-auth|imap-digest-md5-p|imap-disable-multibyte|imap-envelope-from|imap-error-text|imap-fetch-asynch|imap-fetch-safe|imap-fetch|imap-find-next-line|imap-forward|imap-gssapi-auth-p|imap-gssapi-auth|imap-gssapi-open|imap-gssapi-stream-p|imap-id|imap-interactive-login|imap-kerberos4-auth-p|imap-kerberos4-auth|imap-kerberos4-open|imap-kerberos4-stream-p|imap-list-to-message-set|imap-log|imap-login-auth|imap-login-p|imap-logout-wait|imap-logout|imap-mailbox-acl-delete|imap-mailbox-acl-get|imap-mailbox-acl-set|imap-mailbox-close|imap-mailbox-create-1|imap-mailbox-create|imap-mailbox-delete|imap-mailbox-examine-1|imap-mailbox-examine|imap-mailbox-expunge|imap-mailbox-get-1|imap-mailbox-get|imap-mailbox-list|imap-mailbox-lsub|imap-mailbox-map-1|imap-mailbox-map|imap-mailbox-put|imap-mailbox-rename|imap-mailbox-select-1|imap-mailbox-select|imap-mailbox-status-asynch|imap-mailbox-status|imap-mailbox-subscribe|imap-mailbox-unselect|imap-mailbox-unsubscribe|imap-message-append|imap-message-appenduid-1|imap-message-appenduid|imap-message-body|imap-message-copy|imap-message-copyuid-1|imap-message-copyuid|imap-message-envelope-bcc|imap-message-envelope-cc|imap-message-envelope-date|imap-message-envelope-from|imap-message-envelope-in-reply-to|imap-message-envelope-message-id|imap-message-envelope-reply-to|imap-message-envelope-sender|imap-message-envelope-subject|imap-message-envelope-to|imap-message-flag-permanent-p|imap-message-flags-add|imap-message-flags-del|imap-message-flags-set|imap-message-get|imap-message-map|imap-message-put|imap-namespace|imap-network-open|imap-network-p|imap-ok-p|imap-open-1|imap-open|imap-opened|imap-parse-acl|imap-parse-address-list|imap-parse-address|imap-parse-astring|imap-parse-body-ext)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:imap-parse-body-extension|imap-parse-body|imap-parse-data-list|imap-parse-envelope|imap-parse-fetch-body-section|imap-parse-fetch|imap-parse-flag-list|imap-parse-greeting|imap-parse-header-list|imap-parse-literal|imap-parse-mailbox|imap-parse-nil|imap-parse-nstring|imap-parse-number|imap-parse-resp-text-code|imap-parse-resp-text|imap-parse-response|imap-parse-status|imap-parse-string-list|imap-parse-string|imap-ping-server|imap-quote-specials|imap-range-to-message-set|imap-remassoc|imap-sasl-auth-p|imap-sasl-auth|imap-sasl-make-mechanisms|imap-search|imap-send-command-1|imap-send-command-wait|imap-send-command|imap-sentinel|imap-shell-open|imap-shell-p|imap-ssl-open|imap-ssl-p|imap-starttls-open|imap-starttls-p|imap-string-to-integer|imap-tls-open|imap-tls-p|imap-utf7-decode|imap-utf7-encode|imap-wait-for-tag|imenu--cleanup|imenu--completion-buffer|imenu--create-keymap|imenu--generic-function|imenu--in-alist|imenu--make-index-alist|imenu--menubar-select|imenu--mouse-menu|imenu--relative-position|imenu--sort-by-name|imenu--sort-by-position|imenu--split-menu|imenu--split-submenus|imenu--split|imenu--subalist-p|imenu--truncate-items|imenu-add-menubar-index|imenu-choose-buffer-index|imenu-default-create-index-function|imenu-default-goto-function|imenu-example--create-c-index|imenu-example--create-lisp-index|imenu-example--lisp-extract-index-name|imenu-example--name-and-position|imenu-find-default|imenu-progress-message|imenu-update-menubar|imenu|in-is13194-post-read-conversion|in-is13194-pre-write-conversion|in-string-p|inactivate-input-method|incf|increase-left-margin|increase-right-margin|increment-register|indent-accumulate-tab-stops|indent-for-comment|indent-icon-exp|indent-line-to|indent-new-comment-line|indent-next-tab-stop|indent-perl-exp|indent-pp-sexp|indent-rigidly--current-indentation|indent-rigidly--pop-undo|indent-rigidly-left-to-tab-stop|indent-rigidly-left|indent-rigidly-right-to-tab-stop|indent-rigidly-right|indent-sexp|indent-tcl-exp|indent-to-column|indented-text-mode|indian-2-column-to-ucs-region|indian-compose-regexp|indian-compose-region|indian-compose-string|indicate-copied-region|inferior-lisp-install-letter-bindings|inferior-lisp-menu|inferior-lisp-mode|inferior-lisp-proc|inferior-lisp|inferior-octave-check-process|inferior-octave-complete|inferior-octave-completion-at-point|inferior-octave-completion-table|inferior-octave-directory-tracker|inferior-octave-dynamic-list-input-ring|inferior-octave-mode|inferior-octave-output-digest|inferior-octave-process-live-p|inferior-octave-resync-dirs|inferior-octave-send-list-and-digest|inferior-octave-startup|inferior-octave-track-window-width-change|inferior-octave|inferior-python-mode|inferior-scheme-mode|inferior-tcl-mode|inferior-tcl-proc|inferior-tcl|info--manual-names|info--prettify-description|info-apropos|info-complete-file|info-complete-symbol|info-complete|info-display-manual|info-emacs-bug|info-emacs-manual|info-file-exists-p|info-finder|info-initialize|info-insert-file-contents-1|info-insert-file-contents|info-lookup->all-modes|info-lookup->cache|info-lookup->completions|info-lookup->doc-spec|info-lookup->ignore-case|info-lookup->initialized|info-lookup->mode-cache|info-lookup->mode-value|info-lookup->other-modes|info-lookup->parse-rule|info-lookup->refer-modes|info-lookup->regexp|info-lookup->topic-cache|info-lookup->topic-value|info-lookup-add-help\\\\*|info-lookup-add-help|info-lookup-change-mode|info-lookup-completions-at-point|info-lookup-file|info-lookup-guess-c-symbol|info-lookup-guess-custom-symbol|info-lookup-guess-default\\\\*|info-lookup-guess-default|info-lookup-interactive-arguments|info-lookup-make-completions|info-lookup-maybe-add-help|info-lookup-quick-all-modes|info-lookup-reset|info-lookup-select-mode|info-lookup-setup-mode|info-lookup-symbol|info-lookup|info-other-window|info-setup|info-standalone|info-xref-all-info-files|info-xref-check-all-custom|info-xref-check-all|info-xref-check-buffer|info-xref-check-list|info-xref-check-node|info-xref-check|info-xref-docstrings|info-xref-goto-node-p|info-xref-lock-file-p|info-xref-output-error|info-xref-output|info-xref-subfile-p|info-xref-with-file|info-xref-with-output|info|inhibit-local-variables-p|init-image-library|initialize-completions|initialize-instance|initialize-new-tags-table|inline|insert-abbrevs|insert-byte|insert-directory-adj-pos|insert-directory-safely|insert-file-1|insert-file-literally|insert-file|insert-for-yank-1|insert-image-file|insert-kbd-macro|insert-pair|insert-parentheses|insert-rectangle|insert-string|insert-tab|int-to-string|interactive-completion-string-reader|interactive-p|intern-safe|internal--after-save-selected-window|internal--after-with-selected-window|internal--before-save-selected-window|internal--before-with-selected-window|internal--build-binding-value-form|internal--build-binding|internal--build-bindings|internal--check-binding|internal--listify|internal--thread-argument|internal--track-mouse|internal-ange-ftp-mode|internal-char-font|internal-complete-buffer-except|internal-complete-buffer|internal-copy-lisp-face|internal-default-process-filter|internal-default-process-sentinel|internal-describe-syntax-value|internal-event-symbol-parse-modifiers|internal-face-x-get-resource|internal-get-lisp-face-attribute|internal-lisp-face-attribute-values|internal-lisp-face-empty-p|internal-lisp-face-equal-p|internal-lisp-face-p|internal-macroexpand-for-load|internal-make-lisp-face|internal-make-var-non-special|internal-merge-in-global-face|internal-pop-keymap|internal-push-keymap|internal-set-alternative-font-family-alist|internal-set-alternative-font-registry-alist|internal-set-font-selection-order|internal-set-lisp-face-attribute-from-resource|internal-set-lisp-face-attribute|internal-show-cursor-p|internal-show-cursor|internal-temp-output-buffer-show|internal-timer-start-idle|intersection|inverse-add-abbrev|inverse-add-global-abbrev|inverse-add-mode-abbrev|inversion-<|inversion-=|inversion-add-to-load-path|inversion-check-version|inversion-decode-version|inversion-download-package-ask|inversion-find-version|inversion-locate-package-files-and-split|inversion-locate-package-files|inversion-package-incompatibility-version|inversion-package-version|inversion-recode|inversion-release-to-number|inversion-require-emacs|inversion-require|inversion-reverse-test|inversion-test|ipconfig|irc|isInNet|isPlainHostName|isResolvable|isearch--get-state|isearch--set-state|isearch--state-barrier--cmacro|isearch--state-barrier|isearch--state-case-fold-search--cmacro|isearch--state-case-fold-search|isearch--state-error--cmacro|isearch--state-error|isearch--state-forward--cmacro|isearch--state-forward|isearch--state-message--cmacro|isearch--state-message|isearch--state-other-end--cmacro|isearch--state-other-end|isearch--state-p--cmacro|isearch--state-p|isearch--state-point--cmacro|isearch--state-point|isearch--state-pop-fun--cmacro|isearch--state-pop-fun|isearch--state-string--cmacro|isearch--state-string|isearch--state-success--cmacro|isearch--state-success|isearch--state-word--cmacro|isearch--state-word|isearch--state-wrapped--cmacro|isearch--state-wrapped|isearch-abort|isearch-back-into-window|isearch-backslash|isearch-backward-regexp|isearch-backward|isearch-cancel|isearch-char-by-name|isearch-clean-overlays|isearch-close-unnecessary-overlays|isearch-complete-edit|isearch-complete|isearch-complete1|isearch-dehighlight|isearch-del-char|isearch-delete-char|isearch-describe-bindings|isearch-describe-key|isearch-describe-mode|isearch-done|isearch-edit-string|isearch-exit|isearch-fail-pos|isearch-fallback|isearch-filter-visible|isearch-forward-exit-minibuffer|isearch-forward-regexp|isearch-forward-symbol-at-point|isearch-forward-symbol|isearch-forward-word|isearch-forward|isearch-help-for-help-internal-doc|isearch-help-for-help-internal|isearch-help-for-help|isearch-highlight-regexp|isearch-highlight|isearch-intersects-p|isearch-lazy-highlight-cleanup|isearch-lazy-highlight-new-loop|isearch-lazy-highlight-search|isearch-lazy-highlight-update|isearch-message-prefix|isearch-message-suffix|isearch-message|isearch-mode-help|isearch-mode|isearch-mouse-2|isearch-no-upper-case-p|isearch-nonincremental-exit-minibuffer|isearch-occur|isearch-open-necessary-overlays|isearch-open-overlay-temporary|isearch-pop-state|isearch-post-command-hook|isearch-pre-command-hook|isearch-printing-char|isearch-process-search-char|isearch-process-search-multibyte-characters|isearch-process-search-string|isearch-push-state|isearch-query-replace-regexp|isearch-query-replace|isearch-quote-char|isearch-range-invisible|isearch-repeat-backward|isearch-repeat-forward|isearch-repeat|isearch-resume|isearch-reverse-exit-minibuffer|isearch-ring-adjust|isearch-ring-adjust1|isearch-ring-advance|isearch-ring-retreat|isearch-search-and-update|isearch-search-fun-default|isearch-search-fun|isearch-search-string|isearch-search|isearch-string-out-of-window|isearch-symbol-regexp|isearch-text-char-description|isearch-toggle-case-fold|isearch-toggle-input-method|isearch-toggle-invisible|isearch-toggle-lax-whitespace|isearch-toggle-regexp|isearch-toggle-specified-input-method|isearch-toggle-symbol|isearch-toggle-word|isearch-unread|isearch-update-ring|isearch-update|isearch-yank-char-in-minibuffer|isearch-yank-char|isearch-yank-internal|isearch-yank-kill|isearch-yank-line|isearch-yank-pop|isearch-yank-string|isearch-yank-word-or-char|isearch-yank-word|isearch-yank-x-selection|isearchb-activate|isearchb-follow-char|isearchb-iswitchb|isearchb-set-keybindings|isearchb-stop|isearchb|iso-charset|iso-cvt-define-menu|iso-cvt-read-only|iso-cvt-write-only|iso-german|iso-gtex2iso|iso-iso2duden|iso-iso2gtex|iso-iso2sgml|iso-iso2tex|iso-sgml2iso|iso-spanish|iso-tex2iso|iso-transl-ctl-x-8-map|ispell-accept-buffer-local-defs|ispell-accept-output|ispell-add-per-file-word-list|ispell-aspell-add-aliases|ispell-aspell-find-dictionary|ispell-begin-skip-region-regexp|ispell-begin-skip-region|ispell-begin-tex-skip-regexp|ispell-buffer-local-dict|ispell-buffer-local-parsing|ispell-buffer-local-words|ispell-buffer-with-debug|ispell-buffer|ispell-call-process-region|ispell-call-process|ispell-change-dictionary|ispell-check-minver|ispell-check-version|ispell-command-loop|ispell-comments-and-strings|ispell-complete-word-interior-frag|ispell-complete-word|ispell-continue|ispell-create-debug-buffer|ispell-decode-string|ispell-display-buffer|ispell-filter|ispell-find-aspell-dictionaries|ispell-find-hunspell-dictionaries|ispell-get-aspell-config-value|ispell-get-casechars|ispell-get-coding-system|ispell-get-decoded-string|ispell-get-extended-character-mode|ispell-get-ispell-args|ispell-get-line|ispell-get-many-otherchars-p|ispell-get-not-casechars|ispell-get-otherchars|ispell-get-word|ispell-help|ispell-highlight-spelling-error-generic|ispell-highlight-spelling-error-overlay|ispell-highlight-spelling-error-xemacs|ispell-highlight-spelling-error|ispell-horiz-scroll|ispell-hunspell-fill-dictionary-entry|ispell-ignore-fcc|ispell-init-process|ispell-int-char|ispell-internal-change-dictionary|ispell-kill-ispell|ispell-looking-at|ispell-looking-back|ispell-lookup-words|ispell-menu-map|ispell-message|ispell-mime-multipartp|ispell-mime-skip-part|ispell-minor-check|ispell-minor-mode|ispell-non-empty-string|ispell-parse-hunspell-affix-file|ispell-parse-output|ispell-pdict-save|ispell-print-if-debug|ispell-process-line|ispell-process-status|ispell-region|ispell-send-replacement|ispell-send-string|ispell-set-spellchecker-params|ispell-show-choices|ispell-skip-region-list|ispell-skip-region|ispell-start-process|ispell-tex-arg-end|ispell-valid-dictionary-list|ispell-with-no-warnings|ispell-word|ispell|isqrt|iswitchb-buffer-other-frame|iswitchb-buffer-other-window|iswitchb-buffer|iswitchb-case|iswitchb-chop|iswitchb-complete|iswitchb-completion-help|iswitchb-completions|iswitchb-display-buffer|iswitchb-entryfn-p|iswitchb-exhibit|iswitchb-existing-buffer-p|iswitchb-exit-minibuffer|iswitchb-find-common-substring|iswitchb-find-file|iswitchb-get-buffers-in-frames|iswitchb-get-bufname|iswitchb-get-matched-buffers|iswitchb-ignore-buffername-p|iswitchb-init-XEmacs-trick|iswitchb-kill-buffer|iswitchb-make-buflist|iswitchb-makealist|iswitchb-minibuffer-setup|iswitchb-mode|iswitchb-next-match|iswitchb-output-completion|iswitchb-possible-new-buffer)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:iswitchb-post-command|iswitchb-pre-command|iswitchb-prev-match|iswitchb-read-buffer|iswitchb-rotate-list|iswitchb-select-buffer-text|iswitchb-set-common-completion|iswitchb-set-matches|iswitchb-summaries-to-end|iswitchb-tidy|iswitchb-to-end|iswitchb-toggle-case|iswitchb-toggle-ignore|iswitchb-toggle-regexp|iswitchb-visit-buffer|iswitchb-window-buffer-p|iswitchb-word-matching-substring|iswitchb-xemacs-backspacekey|iswitchb|iwconfig|japanese-hankaku-region|japanese-hankaku|japanese-hiragana-region|japanese-hiragana|japanese-katakana-region|japanese-katakana|japanese-zenkaku-region|japanese-zenkaku|java-font-lock-keywords-2|java-font-lock-keywords-3|java-font-lock-keywords|java-mode|javascript-mode|jdb|jit-lock--debug-fontify|jit-lock-after-change|jit-lock-context-fontify|jit-lock-debug-mode|jit-lock-deferred-fontify|jit-lock-fontify-now|jit-lock-force-redisplay|jit-lock-function|jit-lock-mode|jit-lock-refontify|jit-lock-stealth-chunk-start|jit-lock-stealth-fontify|jka-compr-build-file-regexp|jka-compr-byte-compiler-base-file-name|jka-compr-call-process|jka-compr-error|jka-compr-file-local-copy|jka-compr-get-compression-info|jka-compr-handler|jka-compr-info-can-append|jka-compr-info-compress-args|jka-compr-info-compress-message|jka-compr-info-compress-program|jka-compr-info-file-magic-bytes|jka-compr-info-regexp|jka-compr-info-strip-extension|jka-compr-info-uncompress-args|jka-compr-info-uncompress-message|jka-compr-info-uncompress-program|jka-compr-insert-file-contents|jka-compr-install|jka-compr-installed-p|jka-compr-load|jka-compr-make-temp-name|jka-compr-partial-uncompress|jka-compr-run-real-handler|jka-compr-set|jka-compr-uninstall|jka-compr-update|jka-compr-write-region|join-line|js--array-comp-indentation|js--backward-pstate|js--backward-syntactic-ws|js--backward-text-property|js--beginning-of-defun-flat|js--beginning-of-defun-nested|js--beginning-of-defun-raw|js--beginning-of-macro|js--class-decl-matcher|js--clear-stale-cache|js--continued-expression-p|js--ctrl-statement-indentation|js--debug|js--end-of-defun-flat|js--end-of-defun-nested|js--end-of-do-while-loop-p|js--ensure-cache--pop-if-ended|js--ensure-cache--update-parse|js--ensure-cache|js--flatten-list|js--flush-caches|js--forward-destructuring-spec|js--forward-expression|js--forward-function-decl|js--forward-pstate|js--forward-syntactic-ws|js--forward-text-property|js--function-prologue-beginning|js--get-all-known-symbols|js--get-c-offset|js--get-js-context|js--get-tabs|js--guess-eval-defun-info|js--guess-function-name|js--guess-symbol-at-point|js--imenu-create-index|js--imenu-to-flat|js--indent-in-array-comp|js--inside-dojo-class-list-p|js--inside-param-list-p|js--inside-pitem-p|js--js-add-resource-alias|js--js-content-window|js--js-create-instance|js--js-decode-retval|js--js-encode-value|js--js-enter-repl|js--js-eval|js--js-funcall|js--js-get-service|js--js-get|js--js-handle-expired-p|js--js-handle-id--cmacro|js--js-handle-id|js--js-handle-p--cmacro|js--js-handle-p|js--js-handle-process--cmacro|js--js-handle-process|js--js-leave-repl|js--js-list|js--js-new|js--js-not|js--js-put|js--js-qi|js--js-true|js--js-wait-for-eval-prompt|js--looking-at-operator-p|js--make-framework-matcher|js--make-merged-item|js--make-nsilocalfile|js--maybe-join|js--maybe-make-marker|js--multi-line-declaration-indentation|js--optimize-arglist|js--parse-state-at-point|js--pitem-add-child|js--pitem-b-end--cmacro|js--pitem-b-end|js--pitem-children--cmacro|js--pitem-children|js--pitem-format|js--pitem-goto-h-end|js--pitem-h-begin--cmacro|js--pitem-h-begin|js--pitem-name--cmacro|js--pitem-name|js--pitem-paren-depth--cmacro|js--pitem-paren-depth|js--pitem-strname|js--pitem-type--cmacro|js--pitem-type|js--pitems-to-imenu|js--proper-indentation|js--pstate-is-toplevel-defun|js--re-search-backward-inner|js--re-search-backward|js--re-search-forward-inner|js--re-search-forward|js--read-symbol|js--read-tab|js--regexp-opt-symbol|js--same-line|js--show-cache-at-point|js--splice-into-items|js--split-name|js--syntactic-context-from-pstate|js--syntax-begin-function|js--up-nearby-list|js--update-quick-match-re|js--variable-decl-matcher|js--wait-for-matching-output|js--which-func-joiner|js-beginning-of-defun|js-c-fill-paragraph|js-end-of-defun|js-eval-defun|js-eval|js-find-symbol|js-gc|js-indent-line|js-mode|js-set-js-context|js-syntactic-context|js-syntax-propertize-regexp|js-syntax-propertize|json--with-indentation|json-add-to-object|json-advance|json-alist-p|json-decode-char0|json-encode-alist|json-encode-array|json-encode-char|json-encode-char0|json-encode-hash-table|json-encode-key|json-encode-keyword|json-encode-list|json-encode-number|json-encode-plist|json-encode-string|json-encode|json-join|json-new-object|json-peek|json-plist-p|json-pop|json-pretty-print-buffer|json-pretty-print|json-read-array|json-read-escaped-char|json-read-file|json-read-from-string|json-read-keyword|json-read-number|json-read-object|json-read-string|json-read|json-skip-whitespace|jump-to-register|kbd-macro-query|keep-lines-read-args|keep-lines|kermit-clean-filter|kermit-clean-off|kermit-clean-on|kermit-default-cr|kermit-default-nl|kermit-esc|kermit-send-char|kermit-send-input-cr|keyboard-escape-quit|keymap--menu-item-binding|keymap--menu-item-with-binding|keymap--merge-bindings|keymap-canonicalize|keypad-setup|kill-all-abbrevs|kill-backward-chars|kill-backward-up-list|kill-buffer-and-window|kill-buffer-ask|kill-buffer-if-not-modified|kill-comment|kill-compilation|kill-completion|kill-emacs-save-completions|kill-find|kill-forward-chars|kill-grep|kill-line|kill-matching-buffers|kill-paragraph|kill-rectangle|kill-ring-save|kill-sentence|kill-sexp|kill-some-buffers|kill-this-buffer-enabled-p|kill-this-buffer|kill-visual-line|kill-whole-line|kill-word|kinsoku-longer|kinsoku-shorter|kinsoku|kkc-region|kmacro-add-counter|kmacro-bind-to-key|kmacro-call-macro|kmacro-call-ring-2nd-repeat|kmacro-call-ring-2nd|kmacro-cycle-ring-next|kmacro-cycle-ring-previous|kmacro-delete-ring-head|kmacro-display-counter|kmacro-display|kmacro-edit-lossage|kmacro-edit-macro-repeat|kmacro-edit-macro|kmacro-end-and-call-macro|kmacro-end-call-mouse|kmacro-end-macro|kmacro-end-or-call-macro-repeat|kmacro-end-or-call-macro|kmacro-exec-ring-item|kmacro-execute-from-register|kmacro-extract-lambda|kmacro-get-repeat-prefix|kmacro-insert-counter|kmacro-keyboard-quit|kmacro-lambda-form|kmacro-loop-setup-function|kmacro-name-last-macro|kmacro-pop-ring|kmacro-pop-ring1|kmacro-push-ring|kmacro-repeat-on-last-key|kmacro-ring-empty-p|kmacro-ring-head|kmacro-set-counter|kmacro-set-format|kmacro-split-ring-element|kmacro-start-macro-or-insert-counter|kmacro-start-macro|kmacro-step-edit-insert|kmacro-step-edit-macro|kmacro-step-edit-minibuf-setup|kmacro-step-edit-post-command|kmacro-step-edit-pre-command|kmacro-step-edit-prompt|kmacro-step-edit-query|kmacro-swap-ring|kmacro-to-register|kmacro-view-macro-repeat|kmacro-view-macro|kmacro-view-ring-2nd|lambda|landmark--distance|landmark--intangible|landmark-amble-robot|landmark-beginning-of-line|landmark-blackbox|landmark-calc-confidences|landmark-calc-current-smells|landmark-calc-distance-of-robot-from|landmark-calc-payoff|landmark-calc-smell-internal|landmark-check-filled-qtuple|landmark-click|landmark-confidence-for|landmark-crash-game|landmark-cross-qtuple|landmark-display-statistics|landmark-emacs-plays|landmark-end-of-line|landmark-f|landmark-find-filled-qtuple|landmark-fix-weights-for|landmark-flip-a-coin|landmark-goto-square|landmark-goto-xy|landmark-human-plays|landmark-human-resigns|landmark-human-takes-back|landmark-index-to-x|landmark-index-to-y|landmark-init-board|landmark-init-display|landmark-init-score-table|landmark-init-square-score|landmark-init|landmark-max-height|landmark-max-width|landmark-mode|landmark-mouse-play|landmark-move-down|landmark-move-ne|landmark-move-nw|landmark-move-se|landmark-move-sw|landmark-move-up|landmark-move|landmark-nb-qtuples|landmark-noise|landmark-nslify-wts-int|landmark-nslify-wts|landmark-offer-a-draw|landmark-play-move|landmark-plot-internal|landmark-plot-landmarks|landmark-plot-square|landmark-point-square|landmark-point-y|landmark-print-distance-int|landmark-print-distance|landmark-print-moves|landmark-print-smell-int|landmark-print-smell|landmark-print-w0-int|landmark-print-w0|landmark-print-wts-blackbox|landmark-print-wts-int|landmark-print-wts|landmark-print-y-s-noise-int|landmark-print-y-s-noise|landmark-prompt-for-move|landmark-prompt-for-other-game|landmark-random-move|landmark-randomize-weights-for|landmark-repeat|landmark-set-landmark-signal-strengths|landmark-start-game|landmark-start-robot|landmark-store-old-y_t|landmark-strongest-square|landmark-switch-to-window|landmark-take-back|landmark-terminate-game|landmark-test-run|landmark-update-naught-weights|landmark-update-normal-weights|landmark-update-score-in-direction|landmark-update-score-table|landmark-weights-debug|landmark-xy-to-index|landmark-y|landmark|lao-compose-region|lao-compose-string|lao-composition-function|lao-transcribe-roman-to-lao-string|lao-transcribe-single-roman-syllable-to-lao|last-nonminibuffer-frame|last-sexp-setup-props|latex-backward-sexp-1|latex-close-block|latex-complete-bibtex-keys|latex-complete-data|latex-complete-envnames|latex-complete-refkeys|latex-down-list|latex-electric-env-pair-mode|latex-env-before-change|latex-fill-nobreak-predicate|latex-find-indent|latex-forward-sexp-1|latex-forward-sexp|latex-imenu-create-index|latex-indent|latex-insert-block|latex-insert-item|latex-mode|latex-outline-level|latex-skip-close-parens|latex-split-block|latex-string-prefix-p|latex-syntax-after|latexenc-coding-system-to-inputenc|latexenc-find-file-coding-system|latexenc-inputenc-to-coding-system|latin1-display|lazy-highlight-cleanup|lcm|ld-script-mode|ldap-decode-address|ldap-decode-attribute|ldap-decode-boolean|ldap-decode-string|ldap-encode-address|ldap-encode-boolean|ldap-encode-country-string|ldap-encode-string|ldap-get-host-parameter|ldap-search-internal|ldap-search|ldiff|led-flash|led-off|led-on|led-update|left-char|left-word|let-alist--access-sexp|let-alist--deep-dot-search|let-alist--list-to-sexp|let-alist--remove-dot|let-alist|letf\\\\*|letf|letrec|lglyph-adjustment|lglyph-ascent|lglyph-char|lglyph-code|lglyph-copy|lglyph-descent|lglyph-from|lglyph-lbearing|lglyph-rbearing|lglyph-set-adjustment|lglyph-set-char|lglyph-set-code|lglyph-set-from-to|lglyph-set-width|lglyph-to|lglyph-width|lgrep|lgstring-char-len|lgstring-char|lgstring-font|lgstring-glyph-len|lgstring-glyph|lgstring-header|lgstring-insert-glyph|lgstring-set-glyph|lgstring-set-header|lgstring-set-id|lgstring-shaped-p|life-birth-char|life-birth-string|life-compute-neighbor-deltas|life-death-char|life-death-string|life-display-generation|life-expand-plane-if-needed|life-extinct-quit|life-grim-reaper|life-increment-generation|life-increment|life-insert-random-pattern|life-life-char|life-life-string|life-mode|life-not-void-regexp|life-setup|life-void-char|life-void-string|life|limit-index|line-move-1|line-move-finish|line-move-partial|line-move-to-column|line-move-visual|line-move|line-number-mode|line-pixel-height|line-substring-with-bidi-context|linum--face-width|linum-after-change|linum-after-scroll|linum-delete-overlays|linum-mode-set-explicitly|linum-mode|linum-on|linum-schedule|linum-unload-function|linum-update-current|linum-update-window|linum-update|lisp--match-hidden-arg|lisp-comment-indent|lisp-compile-defun-and-go|lisp-compile-defun|lisp-compile-file|lisp-compile-region-and-go|lisp-compile-region|lisp-compile-string|lisp-complete-symbol|lisp-completion-at-point|lisp-current-defun-name|lisp-describe-sym|lisp-do-defun|lisp-eval-defun-and-go|lisp-eval-defun|lisp-eval-form-and-next|lisp-eval-last-sexp|lisp-eval-paragraph|lisp-eval-region-and-go|lisp-eval-region|lisp-eval-string|lisp-fill-paragraph|lisp-find-tag-default|lisp-fn-called-at-pt|lisp-font-lock-syntactic-face-function|lisp-get-old-input|lisp-indent-defform|lisp-indent-function|lisp-indent-line|lisp-indent-specform|lisp-input-filter|lisp-interaction-mode|lisp-load-file|lisp-mode-auto-fill|lisp-mode-variables|lisp-mode|lisp-outline-level|lisp-show-arglist|lisp-show-function-documentation|lisp-show-variable-documentation|lisp-string-after-doc-keyword-p|lisp-string-in-doc-position-p)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:lisp-symprompt|lisp-var-at-pt|list\\\\*|list-abbrevs|list-all-completions-1|list-all-completions-by-hash-bucket-1|list-all-completions-by-hash-bucket|list-all-completions|list-at-point|list-bookmarks|list-buffers--refresh|list-buffers-noselect|list-buffers|list-character-sets|list-coding-categories|list-coding-systems|list-colors-display|list-colors-duplicates|list-colors-print|list-colors-redisplay|list-colors-sort-key|list-command-history|list-directory|list-dynamic-libraries|list-faces-display|list-fontsets|list-holidays|list-input-methods|list-length|list-matching-lines|list-packages|list-processes--refresh|list-registers|list-tags|lm-adapted-by|lm-authors|lm-code-mark|lm-code-start|lm-commentary-end|lm-commentary-mark|lm-commentary-start|lm-commentary|lm-copyright-mark|lm-crack-address|lm-crack-copyright|lm-creation-date|lm-get-header-re|lm-get-package-name|lm-header-multiline|lm-header|lm-history-mark|lm-history-start|lm-homepage|lm-insert-at-column|lm-keywords-finder-p|lm-keywords-list|lm-keywords|lm-last-modified-date|lm-maintainer|lm-report-bug|lm-section-end|lm-section-mark|lm-section-start|lm-summary|lm-synopsis|lm-verify|lm-version|lm-with-file|load-completions-from-file|load-history-filename-element|load-history-regexp|load-path-shadows-find|load-path-shadows-mode|load-path-shadows-same-file-or-nonexistent|load-save-place-alist-from-file|load-time-value|load-with-code-conversion|local-clear-scheme-interaction-buffer|local-set-scheme-interaction-buffer|locale-charset-match-p|locale-charset-to-coding-system|locale-name-match|locale-translate|locally|locate-completion-db-error|locate-completion-entry-retry|locate-completion-entry|locate-current-line-number|locate-default-make-command-line|locate-do-redisplay|locate-do-setup|locate-dominating-file|locate-file-completion-table|locate-file-completion|locate-file-internal|locate-filter-output|locate-find-directory-other-window|locate-find-directory|locate-get-dirname|locate-get-file-positions|locate-get-filename|locate-in-alternate-database|locate-insert-header|locate-main-listing-line-p|locate-mode|locate-mouse-view-file|locate-prompt-for-search-string|locate-set-properties|locate-tags|locate-update|locate-with-filter|locate-word-at-point|locate|log-edit--match-first-line|log-edit-add-field|log-edit-add-to-changelog|log-edit-beginning-of-line|log-edit-changelog-entries|log-edit-changelog-entry|log-edit-changelog-insert-entries|log-edit-changelog-ours-p|log-edit-changelog-paragraph|log-edit-changelog-subparagraph|log-edit-comment-search-backward|log-edit-comment-search-forward|log-edit-comment-to-change-log|log-edit-done|log-edit-empty-buffer-p|log-edit-extract-headers|log-edit-files|log-edit-font-lock-keywords|log-edit-goto-eoh|log-edit-hide-buf|log-edit-insert-changelog-entries|log-edit-insert-changelog|log-edit-insert-cvs-rcstemplate|log-edit-insert-cvs-template|log-edit-insert-filenames-without-changelog|log-edit-insert-filenames|log-edit-insert-message-template|log-edit-kill-buffer|log-edit-match-to-eoh|log-edit-menu|log-edit-mode-help|log-edit-mode|log-edit-narrow-changelog|log-edit-new-comment-index|log-edit-next-comment|log-edit-previous-comment|log-edit-remember-comment|log-edit-set-common-indentation|log-edit-set-header|log-edit-show-diff|log-edit-show-files|log-edit-toggle-header|log-edit|log-view-annotate-version|log-view-beginning-of-defun|log-view-current-entry|log-view-current-file|log-view-current-tag|log-view-diff-changeset|log-view-diff-common|log-view-diff|log-view-end-of-defun-1|log-view-end-of-defun|log-view-extract-comment|log-view-file-next|log-view-file-prev|log-view-find-revision|log-view-get-marked|log-view-goto-rev|log-view-inside-comment-p|log-view-minor-wrap|log-view-mode-menu|log-view-mode|log-view-modify-change-comment|log-view-msg-next|log-view-msg-prev|log-view-toggle-entry-display|log-view-toggle-mark-entry|log10|lookfor-dired|lookup-image-map|lookup-key-ignore-too-long|lookup-minor-mode-from-indicator|lookup-nested-alist|lookup-words|loop|lpr-buffer|lpr-customize|lpr-eval-switch|lpr-flatten-list-1|lpr-flatten-list|lpr-print-region|lpr-region|lpr-setup|lunar-phases|m2-begin-comment|m2-begin|m2-case|m2-compile|m2-definition|m2-else|m2-end-comment|m2-execute-monitor-command|m2-export|m2-for|m2-header|m2-if|m2-import|m2-link|m2-loop|m2-mode|m2-module|m2-or|m2-procedure|m2-record|m2-smie-backward-token|m2-smie-forward-token|m2-smie-refine-colon|m2-smie-refine-of|m2-smie-refine-semi|m2-smie-rules|m2-stdio|m2-toggle|m2-type|m2-until|m2-var|m2-visit|m2-while|m2-with|m4--quoted-p|m4-current-defun-name|m4-m4-buffer|m4-m4-region|m4-mode|macro-declaration-function|macroexp--accumulate|macroexp--all-clauses|macroexp--all-forms|macroexp--backtrace|macroexp--compiler-macro|macroexp--compiling-p|macroexp--cons|macroexp--const-symbol-p|macroexp--expand-all|macroexp--funcall-if-compiled|macroexp--maxsize|macroexp--obsolete-warning|macroexp--trim-backtrace-frame|macroexp--warn-and-return|macroexp-const-p|macroexp-copyable-p|macroexp-if|macroexp-let\\\\*|macroexp-let2\\\\*|macroexp-let2|macroexp-progn|macroexp-quote|macroexp-small-p|macroexp-unprogn|macroexpand-1|macrolet|mail-abbrev-complete-alias|mail-abbrev-end-of-buffer|mail-abbrev-expand-hook|mail-abbrev-expand-wrapper|mail-abbrev-in-expansion-header-p|mail-abbrev-insert-alias|mail-abbrev-make-syntax-table|mail-abbrev-next-line|mail-abbrevs-disable|mail-abbrevs-enable|mail-abbrevs-mode|mail-abbrevs-setup|mail-abbrevs-sync-aliases|mail-add-attachment|mail-add-payment-async|mail-add-payment|mail-attach-file|mail-bcc|mail-bury|mail-cc|mail-check-payment|mail-comma-list-regexp|mail-complete|mail-completion-at-point-function|mail-completion-expand|mail-content-type-get|mail-decode-encoded-address-region|mail-decode-encoded-address-string|mail-decode-encoded-word-region|mail-decode-encoded-word-string|mail-directory-process|mail-directory-stream|mail-directory|mail-do-fcc|mail-dont-reply-to|mail-dont-send|mail-encode-encoded-word-buffer|mail-encode-encoded-word-region|mail-encode-encoded-word-string|mail-encode-header|mail-envelope-from|mail-extract-address-components|mail-fcc|mail-fetch-field|mail-file-babyl-p|mail-fill-yanked-message|mail-get-names|mail-header-chars|mail-header-date|mail-header-encode-parameter|mail-header-end|mail-header-extra|mail-header-extract-no-properties|mail-header-extract|mail-header-field-value|mail-header-fold-field|mail-header-format|mail-header-from|mail-header-get-comment|mail-header-id|mail-header-lines|mail-header-make-address|mail-header-merge|mail-header-message-id|mail-header-narrow-to-field|mail-header-number|mail-header-parse-address|mail-header-parse-addresses|mail-header-parse-content-disposition|mail-header-parse-content-type|mail-header-parse-date|mail-header-parse|mail-header-references|mail-header-remove-comments|mail-header-remove-whitespace|mail-header-set-chars|mail-header-set-date|mail-header-set-extra|mail-header-set-from|mail-header-set-id|mail-header-set-lines|mail-header-set-message-id|mail-header-set-number|mail-header-set-references|mail-header-set-subject|mail-header-set-xref|mail-header-set|mail-header-strip|mail-header-subject|mail-header-unfold-field|mail-header-xref|mail-header|mail-hist-define-keys|mail-hist-enable|mail-hist-put-headers-into-history|mail-indent-citation|mail-insert-file|mail-insert-from-field|mail-mail-followup-to|mail-mail-reply-to|mail-mbox-from|mail-mode-auto-fill|mail-mode-fill-paragraph|mail-mode-flyspell-verify|mail-mode|mail-narrow-to-head|mail-other-frame|mail-other-window|mail-parse-comma-list|mail-position-on-field|mail-quote-printable-region|mail-quote-printable|mail-quote-string|mail-recover-1|mail-recover|mail-reply-to|mail-resolve-all-aliases-1|mail-resolve-all-aliases|mail-rfc822-date|mail-rfc822-time-zone|mail-send-and-exit|mail-send|mail-sendmail-delimit-header|mail-sendmail-undelimit-header|mail-sent-via|mail-sentto-newsgroups|mail-setup|mail-signature|mail-split-line|mail-string-delete|mail-strip-quoted-names|mail-subject|mail-text-start|mail-text|mail-to|mail-unquote-printable-hexdigit|mail-unquote-printable-region|mail-unquote-printable|mail-yank-clear-headers|mail-yank-original|mail-yank-region|mail|mailcap-add-mailcap-entry|mailcap-add|mailcap-command-p|mailcap-delete-duplicates|mailcap-extension-to-mime|mailcap-file-default-commands|mailcap-mailcap-entry-passes-test|mailcap-maybe-eval|mailcap-mime-info|mailcap-mime-types|mailcap-parse-mailcap-extras|mailcap-parse-mailcap|mailcap-parse-mailcaps|mailcap-parse-mimetype-file|mailcap-parse-mimetypes|mailcap-possible-viewers|mailcap-replace-in-string|mailcap-replace-regexp|mailcap-save-binary-file|mailcap-unescape-mime-test|mailcap-view-mime|mailcap-viewer-lessp|mailcap-viewer-passes-test|mailclient-encode-string-as-url|mailclient-gather-addresses|mailclient-send-it|mailclient-url-delim|mairix-build-search-list|mairix-call-mairix|mairix-edit-saved-searches-customize|mairix-edit-saved-searches|mairix-gnus-ephemeral-nndoc|mairix-gnus-fetch-field|mairix-insert-search-line|mairix-next-search|mairix-previous-search|mairix-replace-invalid-chars|mairix-rmail-display|mairix-rmail-fetch-field|mairix-save-search|mairix-search-from-this-article|mairix-search-thread-this-article|mairix-search|mairix-searches-mode|mairix-select-delete|mairix-select-edit|mairix-select-quit|mairix-select-save|mairix-select-search|mairix-sentinel-mairix-update-finished|mairix-show-folder|mairix-update-database|mairix-use-saved-search|mairix-vm-display|mairix-vm-fetch-field|mairix-widget-add|mairix-widget-build-editable-fields|mairix-widget-create-query|mairix-widget-get-values|mairix-widget-make-query-from-widgets|mairix-widget-save-search|mairix-widget-search-based-on-article|mairix-widget-search|mairix-widget-send-query|mairix-widget-toggle-activate|make-backup-file-name--default-function|make-backup-file-name-1|make-char-internal|make-char|make-cmpl-prefix-entry|make-coding-system|make-comint-in-buffer|make-comint|make-command-summary|make-completion|make-directory-internal|make-doctor-variables|make-ebrowse-bs--cmacro|make-ebrowse-bs|make-ebrowse-cs--cmacro|make-ebrowse-cs|make-ebrowse-hs--cmacro|make-ebrowse-hs|make-ebrowse-ms--cmacro|make-ebrowse-ms|make-ebrowse-position--cmacro|make-ebrowse-position|make-ebrowse-ts--cmacro|make-ebrowse-ts|make-empty-face|make-erc-channel-user--cmacro|make-erc-channel-user|make-erc-response--cmacro|make-erc-response|make-erc-server-user--cmacro|make-erc-server-user|make-ert--ewoc-entry--cmacro|make-ert--ewoc-entry|make-ert--stats--cmacro|make-ert--stats|make-ert--test-execution-info--cmacro|make-ert--test-execution-info|make-ert-test--cmacro|make-ert-test-aborted-with-non-local-exit--cmacro|make-ert-test-aborted-with-non-local-exit|make-ert-test-failed--cmacro|make-ert-test-failed|make-ert-test-passed--cmacro|make-ert-test-passed|make-ert-test-quit--cmacro|make-ert-test-quit|make-ert-test-result--cmacro|make-ert-test-result-with-condition--cmacro|make-ert-test-result-with-condition|make-ert-test-result|make-ert-test-skipped--cmacro|make-ert-test-skipped|make-ert-test|make-face-bold-italic|make-face-bold|make-face-italic|make-face-unbold|make-face-unitalic|make-face-x-resource-internal|make-face|make-flyspell-overlay|make-frame-command|make-frame-names-alist|make-full-mail-header|make-gdb-handler--cmacro|make-gdb-handler|make-gdb-table--cmacro|make-gdb-table|make-hippie-expand-function|make-htmlize-fstruct--cmacro|make-htmlize-fstruct|make-initial-minibuffer-frame|make-instance|make-js--js-handle--cmacro|make-js--js-handle|make-js--pitem--cmacro|make-js--pitem|make-mail-header|make-mode-line-mouse-map|make-obsolete-overload|make-package--ac-desc--cmacro|make-package--ac-desc|make-package--bi-desc--cmacro|make-package--bi-desc|make-random-state|make-ses--locprn--cmacro|make-ses--locprn|make-sgml-tag--cmacro|make-sgml-tag|make-soap-array-type--cmacro|make-soap-array-type|make-soap-basic-type--cmacro|make-soap-basic-type|make-soap-binding--cmacro|make-soap-binding|make-soap-bound-operation--cmacro|make-soap-bound-operation|make-soap-element--cmacro|make-soap-element|make-soap-message--cmacro|make-soap-message|make-soap-namespace--cmacro|make-soap-namespace-link--cmacro|make-soap-namespace-link|make-soap-namespace|make-soap-operation--cmacro|make-soap-operation|make-soap-port--cmacro|make-soap-port-type--cmacro|make-soap-port-type)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:make-soap-port|make-soap-sequence-element--cmacro|make-soap-sequence-element|make-soap-sequence-type--cmacro|make-soap-sequence-type|make-soap-simple-type--cmacro|make-soap-simple-type|make-soap-wsdl--cmacro|make-soap-wsdl|make-tar-header--cmacro|make-tar-header|make-term|make-terminal-frame|make-url-queue--cmacro|make-url-queue|make-variable-frame-local|makefile-add-log-defun|makefile-append-backslash|makefile-automake-mode|makefile-backslash-region|makefile-browse|makefile-browser-fill|makefile-browser-format-macro-line|makefile-browser-format-target-line|makefile-browser-get-state-for-line|makefile-browser-insert-continuation|makefile-browser-insert-selection-and-quit|makefile-browser-insert-selection|makefile-browser-next-line|makefile-browser-on-macro-line-p|makefile-browser-previous-line|makefile-browser-quit|makefile-browser-send-this-line-item|makefile-browser-set-state-for-line|makefile-browser-start-interaction|makefile-browser-this-line-macro-name|makefile-browser-this-line-target-name|makefile-browser-toggle-state-for-line|makefile-browser-toggle|makefile-bsdmake-mode|makefile-cleanup-continuations|makefile-complete|makefile-completions-at-point|makefile-create-up-to-date-overview|makefile-delete-backslash|makefile-do-macro-insertion|makefile-electric-colon|makefile-electric-dot|makefile-electric-equal|makefile-fill-paragraph|makefile-first-line-p|makefile-format-macro-ref|makefile-forward-after-target-colon|makefile-generate-temporary-filename|makefile-gmake-mode|makefile-imake-mode|makefile-insert-gmake-function|makefile-insert-macro-ref|makefile-insert-macro|makefile-insert-special-target|makefile-insert-target-ref|makefile-insert-target|makefile-last-line-p|makefile-make-font-lock-keywords|makefile-makepp-mode|makefile-match-action|makefile-match-dependency|makefile-match-function-end|makefile-mode|makefile-next-dependency|makefile-pickup-everything|makefile-pickup-filenames-as-targets|makefile-pickup-macros|makefile-pickup-targets|makefile-previous-dependency|makefile-prompt-for-gmake-funargs|makefile-query-by-make-minus-q|makefile-query-targets|makefile-remember-macro|makefile-remember-target|makefile-save-temporary|makefile-switch-to-browser|makefile-warn-continuations|makefile-warn-suspicious-lines|makeinfo-buffer|makeinfo-compilation-sentinel-buffer|makeinfo-compilation-sentinel-region|makeinfo-compile|makeinfo-current-node|makeinfo-next-error|makeinfo-recenter-compilation-buffer|makeinfo-region|man-follow|man|mantemp-insert-cxx-syntax|mantemp-make-mantemps-buffer|mantemp-make-mantemps-region|mantemp-make-mantemps|mantemp-remove-comments|mantemp-remove-memfuncs|mantemp-sort-and-unique-lines|manual-entry|map-keymap-internal|map-keymap-sorted|map-query-replace-regexp|map|mapcan|mapcar\\\\*|mapcon|mapl|maplist|mark-bib|mark-defun|mark-end-of-sentence|mark-icon-function|mark-page|mark-paragraph|mark-perl-function|mark-sexp|mark-whole-buffer|mark-word|master-mode|master-says-beginning-of-buffer|master-says-end-of-buffer|master-says-recenter|master-says-scroll-down|master-says-scroll-up|master-says|master-set-slave|master-show-slave|matching-paren|math-add-bignum|math-add-float|math-add|math-bignum-big|math-bignum|math-build-parse-table|math-check-complete|math-comp-concat|math-concat|math-constp|math-div-bignum-big|math-div-bignum-digit|math-div-bignum-part|math-div-bignum-try|math-div-bignum|math-div-float|math-div|math-div10-bignum|math-div2-bignum|math-div2|math-do-working|math-evenp|math-expr-ops|math-find-user-tokens|math-fixnatnump|math-fixnump|math-float|math-floatp|math-floor|math-format-bignum-decimal|math-format-bignum|math-format-flat-expr|math-format-number|math-format-stack-value|math-format-value|math-idivmod|math-imod|math-infinitep|math-ipow|math-looks-negp|math-make-float|math-match-substring|math-mod|math-mul-bignum-digit|math-mul-bignum|math-mul|math-neg|math-negp|math-normalize|math-numdigs|math-posp|math-pow|math-quotient|math-read-bignum|math-read-expr-list|math-read-exprs|math-read-if|math-read-number-simple|math-read-number|math-read-preprocess-string|math-read-radix-digit|math-read-token|math-reject-arg|math-remove-dashes|math-scale-int|math-scale-left-bignum|math-scale-left|math-scale-right-bignum|math-scale-right|math-scale-rounding|math-showing-full-precision|math-stack-value-offset|math-standard-ops-p|math-standard-ops|math-sub-bignum|math-sub-float|math-sub|math-trunc|math-with-extra-prec|math-working|math-zerop|md4-64|md4-F|md4-G|md4-H|md4-add|md4-and|md4-copy64|md4-make-step|md4-pack-int16|md4-pack-int32|md4-round1|md4-round2|md4-round3|md4-unpack-int16|md4-unpack-int32|md4|md5-binary|member\\\\*|member-if-not|member-if|memory-info|menu-bar-bookmark-map|menu-bar-buffer-vector|menu-bar-ediff-menu|menu-bar-ediff-merge-menu|menu-bar-ediff-misc-menu|menu-bar-enable-clipboard|menu-bar-epatch-menu|menu-bar-frame-for-menubar|menu-bar-handwrite-map|menu-bar-horizontal-scroll-bar|menu-bar-kill-ring-save|menu-bar-left-scroll-bar|menu-bar-make-mm-toggle|menu-bar-make-toggle|menu-bar-menu-at-x-y|menu-bar-menu-frame-live-and-visible-p|menu-bar-mode|menu-bar-next-tag-other-window|menu-bar-next-tag|menu-bar-no-horizontal-scroll-bar|menu-bar-no-scroll-bar|menu-bar-non-minibuffer-window-p|menu-bar-open|menu-bar-options-save|menu-bar-positive-p|menu-bar-read-lispintro|menu-bar-read-lispref|menu-bar-read-mail|menu-bar-right-scroll-bar|menu-bar-select-buffer|menu-bar-select-frame|menu-bar-select-yank|menu-bar-set-tool-bar-position|menu-bar-showhide-fringe-ind-box|menu-bar-showhide-fringe-ind-customize|menu-bar-showhide-fringe-ind-left|menu-bar-showhide-fringe-ind-mixed|menu-bar-showhide-fringe-ind-none|menu-bar-showhide-fringe-ind-right|menu-bar-showhide-fringe-menu-customize-disable|menu-bar-showhide-fringe-menu-customize-left|menu-bar-showhide-fringe-menu-customize-reset|menu-bar-showhide-fringe-menu-customize-right|menu-bar-showhide-fringe-menu-customize|menu-bar-showhide-tool-bar-menu-customize-disable|menu-bar-showhide-tool-bar-menu-customize-enable-bottom|menu-bar-showhide-tool-bar-menu-customize-enable-left|menu-bar-showhide-tool-bar-menu-customize-enable-right|menu-bar-showhide-tool-bar-menu-customize-enable-top|menu-bar-update-buffers-1|menu-bar-update-buffers|menu-bar-update-yank-menu|menu-find-file-existing|menu-or-popup-active-p|menu-set-font|mercury-mode|merge-coding-systems|merge-mail-abbrevs|merge|message--yank-original-internal|message-add-action|message-add-archive-header|message-add-header|message-alter-recipients-discard-bogus-full-name|message-beginning-of-line|message-bogus-recipient-p|message-bold-region|message-bounce|message-buffer-name|message-buffers|message-bury|message-caesar-buffer-body|message-caesar-region|message-cancel-news|message-canlock-generate|message-canlock-password|message-carefully-insert-headers|message-change-subject|message-check-element|message-check-news-body-syntax|message-check-news-header-syntax|message-check-news-syntax|message-check-recipients|message-check|message-checksum|message-cite-original-1|message-cite-original-without-signature|message-cite-original|message-cleanup-headers|message-clone-locals|message-completion-function|message-completion-in-region|message-cross-post-followup-to-header|message-cross-post-followup-to|message-cross-post-insert-note|message-default-send-mail-function|message-default-send-rename-function|message-delete-action|message-delete-line|message-delete-not-region|message-delete-overlay|message-disassociate-draft|message-display-abbrev|message-do-actions|message-do-auto-fill|message-do-fcc|message-do-send-housekeeping|message-dont-reply-to-names|message-dont-send|message-elide-region|message-encode-message-body|message-exchange-point-and-mark|message-expand-group|message-expand-name|message-fetch-field|message-fetch-reply-field|message-field-name|message-field-value|message-fill-field-address|message-fill-field-general|message-fill-field|message-fill-paragraph|message-fill-yanked-message|message-fix-before-sending|message-flatten-list|message-followup|message-font-lock-make-header-matcher|message-forward-make-body-digest-mime|message-forward-make-body-digest-plain|message-forward-make-body-digest|message-forward-make-body-mime|message-forward-make-body-mml|message-forward-make-body-plain|message-forward-make-body|message-forward-rmail-make-body|message-forward-subject-author-subject|message-forward-subject-fwd|message-forward-subject-name-subject|message-forward|message-generate-headers|message-generate-new-buffer-clone-locals|message-generate-unsubscribed-mail-followup-to|message-get-reply-headers|message-gnksa-enable-p|message-goto-bcc|message-goto-body|message-goto-cc|message-goto-distribution|message-goto-eoh|message-goto-fcc|message-goto-followup-to|message-goto-from|message-goto-keywords|message-goto-mail-followup-to|message-goto-newsgroups|message-goto-reply-to|message-goto-signature|message-goto-subject|message-goto-summary|message-goto-to|message-headers-to-generate|message-hide-header-p|message-hide-headers|message-idna-to-ascii-rhs-1|message-idna-to-ascii-rhs|message-in-body-p|message-indent-citation|message-info|message-insert-canlock|message-insert-citation-line|message-insert-courtesy-copy|message-insert-disposition-notification-to|message-insert-expires|message-insert-formatted-citation-line|message-insert-header|message-insert-headers|message-insert-importance-high|message-insert-importance-low|message-insert-newsgroups|message-insert-or-toggle-importance|message-insert-signature|message-insert-to|message-insert-wide-reply|message-insinuate-rmail|message-is-yours-p|message-kill-address|message-kill-all-overlays|message-kill-buffer|message-kill-to-signature|message-mail-alias-type-p|message-mail-file-mbox-p|message-mail-other-frame|message-mail-other-window|message-mail-p|message-mail-user-agent|message-mail|message-make-address|message-make-caesar-translation-table|message-make-date|message-make-distribution|message-make-domain|message-make-expires-date|message-make-expires|message-make-forward-subject|message-make-fqdn|message-make-from|message-make-html-message-with-image-files|message-make-in-reply-to|message-make-lines|message-make-mail-followup-to|message-make-message-id|message-make-organization|message-make-overlay|message-make-path|message-make-references|message-make-sender|message-make-tool-bar|message-mark-active-p|message-mark-insert-file|message-mark-inserted-region|message-mode-field-menu|message-mode-menu|message-mode|message-multi-smtp-send-mail|message-narrow-to-field|message-narrow-to-head-1|message-narrow-to-head|message-narrow-to-headers-or-head|message-narrow-to-headers|message-newline-and-reformat|message-news-other-frame|message-news-other-window|message-news-p|message-news|message-next-header|message-number-base36|message-options-get|message-options-set-recipient|message-options-set|message-output|message-overlay-put|message-pipe-buffer-body|message-point-in-header-p|message-pop-to-buffer|message-position-on-field|message-position-point|message-posting-charset|message-prune-recipients|message-put-addresses-in-ecomplete|message-read-from-minibuffer|message-recover|message-reduce-to-to-cc|message-remove-blank-cited-lines|message-remove-first-header|message-remove-header|message-remove-ignored-headers|message-rename-buffer|message-replace-header|message-reply|message-resend|message-send-and-exit|message-send-form-letter|message-send-mail-function|message-send-mail-partially|message-send-mail-with-mailclient|message-send-mail-with-mh|message-send-mail-with-qmail|message-send-mail-with-sendmail|message-send-mail|message-send-news|message-send-via-mail|message-send-via-news|message-send|message-sendmail-envelope-from|message-set-auto-save-file-name|message-setup-1|message-setup-fill-variables|message-setup-toolbar|message-setup|message-shorten-1|message-shorten-references|message-signed-or-encrypted-p|message-simplify-recipients|message-simplify-subject|message-skip-to-next-address|message-smtpmail-send-it|message-sort-headers-1|message-sort-headers|message-split-line|message-strip-forbidden-properties|message-strip-list-identifiers|message-strip-subject-encoded-words|message-strip-subject-re|message-strip-subject-trailing-was|message-subscribed-p|message-supersede|message-tab|message-talkative-question|message-tamago-not-in-use-p|message-text-with-property|message-to-list-only|message-tokenize-header|message-tool-bar-update|message-unbold-region|message-unique-id|message-unquote-tokens|message-use-alternative-email-as-from|message-user-mail-address|message-wash-subject|message-wide-reply|message-widen-reply|message-with-reply-buffer|message-y-or-n-p)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:message-yank-buffer|message-yank-original|messages-buffer-mode|meta-add-symbols|meta-beginning-of-defun|meta-car-string-lessp|meta-comment-defun|meta-comment-indent|meta-comment-region|meta-common-mode|meta-complete-symbol|meta-completions-at-point|meta-end-of-defun|meta-indent-buffer|meta-indent-calculate|meta-indent-current-indentation|meta-indent-current-nesting|meta-indent-defun|meta-indent-in-string-p|meta-indent-level-count|meta-indent-line|meta-indent-looking-at-code|meta-indent-previous-line|meta-indent-region|meta-indent-unfinished-line|meta-listify|meta-mark-active|meta-mark-defun|meta-mode-menu|meta-symbol-list|meta-uncomment-defun|meta-uncomment-region|metafont-mode|metamail-buffer|metamail-interpret-body|metamail-interpret-header|metamail-region|metapost-mode|mh-adaptive-cmd-note-flag-check|mh-add-missing-mime-version-header|mh-add-msgs-to-seq|mh-alias-address-to-alias|mh-alias-expand|mh-alias-for-from-p|mh-alias-grab-from-field|mh-alias-letter-expand-alias|mh-alias-minibuffer-confirm-address|mh-alias-reload-maybe|mh-assoc-string|mh-beginning-of-word|mh-bogofilter-blacklist|mh-bogofilter-whitelist|mh-buffer-data|mh-burst-digest|mh-cancel-timer|mh-catchup|mh-cl-flet|mh-clean-msg-header|mh-clear-sub-folders-cache|mh-coalesce-msg-list|mh-colors-available-p|mh-colors-in-use-p|mh-complete-word|mh-compose-forward|mh-compose-insertion|mh-copy-msg|mh-create-sequence-map|mh-customize|mh-decode-message-header|mh-decode-message-subject|mh-define-obsolete-variable-alias|mh-define-sequence|mh-defstruct|mh-delete-a-msg|mh-delete-line|mh-delete-msg-from-seq|mh-delete-msg-no-motion|mh-delete-msg|mh-delete-seq|mh-delete-subject-or-thread|mh-delete-subject|mh-destroy-postponed-handles|mh-display-color-cells|mh-display-completion-list|mh-display-emphasis|mh-display-msg|mh-display-smileys|mh-display-with-external-viewer|mh-do-at-event-location|mh-do-in-gnu-emacs|mh-do-in-xemacs|mh-edit-again|mh-ephem-message|mh-exchange-point-and-mark-preserving-active-mark|mh-exec-cmd-daemon|mh-exec-cmd-env-daemon|mh-exec-cmd-error|mh-exec-cmd-output|mh-exec-cmd-quiet|mh-exec-cmd|mh-exec-lib-cmd-output|mh-execute-commands|mh-expand-file-name|mh-extract-from-header-value|mh-extract-rejected-mail|mh-face-background|mh-face-data|mh-face-foreground|mh-file-command-p|mh-file-mime-type|mh-find-path|mh-find-seq|mh-first-msg|mh-folder-completion-function|mh-folder-from-address|mh-folder-inline-mime-part|mh-folder-list|mh-folder-mode|mh-folder-name-p|mh-folder-save-mime-part|mh-folder-speedbar-buttons|mh-folder-toggle-mime-part|mh-font-lock-add-keywords|mh-forward|mh-fully-kill-draft|mh-funcall-if-exists|mh-get-header-field|mh-get-msg-num|mh-gnus-article-highlight-citation|mh-goto-cur-msg|mh-goto-header-end|mh-goto-header-field|mh-goto-msg|mh-goto-next-button|mh-handle-process-error|mh-have-file-command|mh-header-display|mh-header-field-beginning|mh-header-field-end|mh-help|mh-identity-add-menu|mh-identity-handler-attribution-verb|mh-identity-handler-bottom|mh-identity-handler-gpg-identity|mh-identity-handler-signature|mh-identity-handler-top|mh-identity-insert-attribution-verb|mh-identity-make-menu-no-autoload|mh-identity-make-menu|mh-image-load-path-for-library|mh-image-search-load-path|mh-in-header-p|mh-in-show-buffer|mh-inc-folder|mh-inc-spool-make-no-autoload|mh-inc-spool-make|mh-index-add-to-sequence|mh-index-create-imenu-index|mh-index-create-sequences|mh-index-delete-folder-headers|mh-index-delete-from-sequence|mh-index-execute-commands|mh-index-group-by-folder|mh-index-insert-folder-headers|mh-index-new-messages|mh-index-next-folder|mh-index-previous-folder|mh-index-read-data|mh-index-sequenced-messages|mh-index-ticked-messages|mh-index-update-maps|mh-index-visit-folder|mh-insert-auto-fields|mh-insert-identity|mh-insert-signature|mh-interactive-range|mh-invalidate-show-buffer|mh-invisible-headers|mh-iterate-on-messages-in-region|mh-iterate-on-range|mh-junk-blacklist-disposition|mh-junk-blacklist|mh-junk-choose|mh-junk-process-blacklist|mh-junk-process-whitelist|mh-junk-whitelist|mh-kill-folder|mh-last-msg|mh-lessp|mh-letter-hide-all-skipped-fields|mh-letter-mode|mh-letter-next-header-field|mh-letter-skip-leading-whitespace-in-header-field|mh-letter-skipped-header-field-p|mh-letter-speedbar-buttons|mh-letter-toggle-header-field-display-button|mh-letter-toggle-header-field-display|mh-line-beginning-position|mh-line-end-position|mh-list-folders|mh-list-sequences|mh-list-to-string-1|mh-list-to-string|mh-logo-display|mh-macro-expansion-time-gnus-version|mh-mail-abbrev-make-syntax-table|mh-mail-header-end|mh-make-folder-mode-line|mh-make-local-hook|mh-make-local-vars|mh-make-obsolete-variable|mh-mapc|mh-mark-active-p|mh-match-string-no-properties|mh-maybe-show|mh-mh-compose-anon-ftp|mh-mh-compose-external-compressed-tar|mh-mh-compose-external-type|mh-mh-directive-present-p|mh-mh-to-mime-undo|mh-mh-to-mime|mh-mime-cleanup|mh-mime-display|mh-mime-save-parts|mh-mml-forward-message|mh-mml-secure-message-encrypt|mh-mml-secure-message-sign|mh-mml-secure-message-signencrypt|mh-mml-tag-present-p|mh-mml-to-mime|mh-mml-unsecure-message|mh-modify|mh-msg-filename|mh-msg-is-in-seq|mh-msg-num-width-to-column|mh-msg-num-width|mh-narrow-to-cc|mh-narrow-to-from|mh-narrow-to-range|mh-narrow-to-seq|mh-narrow-to-subject|mh-narrow-to-tick|mh-narrow-to-to|mh-new-draft-name|mh-next-button|mh-next-msg|mh-next-undeleted-msg|mh-next-unread-msg|mh-nmail|mh-notate-cur|mh-notate-deleted-and-refiled|mh-notate-user-sequences|mh-notate|mh-outstanding-commands-p|mh-pack-folder|mh-page-digest-backwards|mh-page-digest|mh-page-msg|mh-parse-flist-output-line|mh-pipe-msg|mh-position-on-field|mh-prefix-help|mh-prev-button|mh-previous-page|mh-previous-undeleted-msg|mh-previous-unread-msg|mh-print-msg|mh-process-daemon|mh-process-or-undo-commands|mh-profile-component-value|mh-profile-component|mh-prompt-for-folder|mh-prompt-for-refile-folder|mh-ps-print-msg-file|mh-ps-print-msg|mh-ps-print-toggle-color|mh-ps-print-toggle-faces|mh-put-msg-in-seq|mh-quit|mh-quote-for-shell|mh-quote-pick-expr|mh-range-to-msg-list|mh-read-address|mh-read-folder-sequences|mh-read-range|mh-read-seq-default|mh-recenter|mh-redistribute|mh-refile-a-msg|mh-refile-msg|mh-refile-or-write-again|mh-regenerate-headers|mh-remove-all-notation|mh-remove-cur-notation|mh-remove-from-sub-folders-cache|mh-replace-regexp-in-string|mh-replace-string|mh-reply|mh-require-cl|mh-require|mh-rescan-folder|mh-reset-threads-and-narrowing|mh-rmail|mh-run-time-gnus-version|mh-scan-folder|mh-scan-format-file-check|mh-scan-format|mh-scan-msg-number-regexp|mh-scan-msg-search-regexp|mh-search-from-end|mh-search-p|mh-search|mh-send-letter|mh-send|mh-seq-msgs|mh-seq-to-msgs|mh-set-cmd-note|mh-set-folder-modified-p|mh-set-help|mh-set-x-image-cache-directory|mh-show-addr|mh-show-buffer-message-number|mh-show-font-lock-keywords-with-cite|mh-show-font-lock-keywords|mh-show-mode|mh-show-preferred-alternative|mh-show-speedbar-buttons|mh-show-xface|mh-show|mh-showing-mode|mh-signature-separator-p|mh-smail-batch|mh-smail-other-window|mh-smail|mh-sort-folder|mh-spamassassin-blacklist|mh-spamassassin-identify-spammers|mh-spamassassin-whitelist|mh-spamprobe-blacklist|mh-spamprobe-whitelist|mh-speed-add-folder|mh-speed-flists-active-p|mh-speed-flists|mh-speed-invalidate-map|mh-start-of-uncleaned-message|mh-store-msg|mh-strip-package-version|mh-sub-folders|mh-test-completion|mh-thread-add-spaces|mh-thread-ancestor|mh-thread-delete|mh-thread-find-msg-subject|mh-thread-forget-message|mh-thread-generate|mh-thread-inc|mh-thread-next-sibling|mh-thread-parse-scan-line|mh-thread-previous-sibling|mh-thread-print-scan-lines|mh-thread-refile|mh-thread-update-scan-line-map|mh-toggle-mh-decode-mime-flag|mh-toggle-mime-buttons|mh-toggle-showing|mh-toggle-threads|mh-toggle-tick|mh-translate-range|mh-truncate-log-buffer|mh-undefine-sequence|mh-undo-folder|mh-undo|mh-update-sequences|mh-url-hexify-string|mh-user-agent-compose|mh-valid-seq-p|mh-valid-view-change-operation-p|mh-variant-gnu-mh-info|mh-variant-info|mh-variant-mh-info|mh-variant-nmh-info|mh-variant-p|mh-variant-set-variant|mh-variant-set|mh-variants|mh-version|mh-view-mode-enter|mh-visit-folder|mh-widen|mh-window-full-height-p|mh-write-file-functions|mh-write-msg-to-file|mh-xargs|mh-yank-cur-msg|midnight-buffer-display-time|midnight-delay-set|midnight-find|midnight-next|mime-to-mml|minibuf-eldef-setup-minibuffer|minibuf-eldef-update-minibuffer|minibuffer--bitset|minibuffer--double-dollars|minibuffer-avoid-prompt|minibuffer-completion-contents|minibuffer-default--in-prompt-regexps|minibuffer-default-add-completions|minibuffer-default-add-shell-commands|minibuffer-depth-indicate-mode|minibuffer-depth-setup|minibuffer-electric-default-mode|minibuffer-force-complete-and-exit|minibuffer-force-complete|minibuffer-frame-list|minibuffer-hide-completions|minibuffer-history-initialize|minibuffer-history-isearch-end|minibuffer-history-isearch-message|minibuffer-history-isearch-pop-state|minibuffer-history-isearch-push-state|minibuffer-history-isearch-search|minibuffer-history-isearch-setup|minibuffer-history-isearch-wrap|minibuffer-insert-file-name-at-point|minibuffer-keyboard-quit|minibuffer-with-setup-hook|minor-mode-menu-from-indicator|minusp|mismatch|mixal-debug|mixal-describe-operation-code|mixal-mode|mixal-run|mm-add-meta-html-tag|mm-alist-to-plist|mm-annotationp|mm-append-to-file|mm-archive-decoders|mm-archive-dissect-and-inline|mm-assoc-string-match|mm-attachment-override-p|mm-auto-mode-alist|mm-automatic-display-p|mm-automatic-external-display-p|mm-body-7-or-8|mm-body-encoding|mm-char-int|mm-char-or-char-int-p|mm-charset-after|mm-charset-to-coding-system|mm-codepage-setup|mm-coding-system-equal|mm-coding-system-list|mm-coding-system-p|mm-coding-system-to-mime-charset|mm-complicated-handles|mm-content-transfer-encoding|mm-convert-shr-links|mm-copy-to-buffer|mm-create-image-xemacs|mm-decode-body|mm-decode-coding-region|mm-decode-coding-string|mm-decode-content-transfer-encoding|mm-decode-string|mm-decompress-buffer|mm-default-file-encoding|mm-default-multibyte-p|mm-delete-duplicates|mm-destroy-part|mm-destroy-parts|mm-destroy-postponed-undisplay-list|mm-detect-coding-region|mm-detect-mime-charset-region|mm-disable-multibyte|mm-display-external|mm-display-inline|mm-display-part|mm-display-parts|mm-dissect-archive|mm-dissect-buffer|mm-dissect-multipart|mm-dissect-singlepart|mm-enable-multibyte|mm-encode-body|mm-encode-buffer|mm-encode-coding-region|mm-encode-coding-string|mm-encode-content-transfer-encoding|mm-enrich-utf-8-by-mule-ucs|mm-extern-cache-contents|mm-file-name-collapse-whitespace|mm-file-name-delete-control|mm-file-name-delete-gotchas|mm-file-name-delete-whitespace|mm-file-name-replace-whitespace|mm-file-name-trim-whitespace|mm-find-buffer-file-coding-system|mm-find-charset-region|mm-find-mime-charset-region|mm-find-part-by-type|mm-find-raw-part-by-type|mm-get-coding-system-list|mm-get-content-id|mm-get-image|mm-get-part|mm-guess-charset|mm-handle-buffer|mm-handle-cache|mm-handle-description|mm-handle-displayed-p|mm-handle-disposition|mm-handle-encoding|mm-handle-filename|mm-handle-id|mm-handle-media-subtype|mm-handle-media-supertype|mm-handle-media-type|mm-handle-multipart-ctl-parameter|mm-handle-multipart-from|mm-handle-multipart-original-buffer|mm-handle-set-cache|mm-handle-set-external-undisplayer|mm-handle-set-undisplayer|mm-handle-type|mm-handle-undisplayer|mm-image-fit-p|mm-image-load-path|mm-image-type-from-buffer|mm-inlinable-p|mm-inline-external-body|mm-inline-override-p|mm-inline-partial|mm-inlined-p|mm-insert-byte|mm-insert-file-contents|mm-insert-headers|mm-insert-inline|mm-insert-multipart-headers|mm-insert-part|mm-insert-rfc822-headers|mm-interactively-view-part|mm-iso-8859-x-to-15-region|mm-keep-viewer-alive-p|mm-line-number-at-pos|mm-long-lines-p|mm-mailcap-command|mm-make-handle|mm-make-temp-file|mm-merge-handles|mm-mime-charset|mm-mule-charset-to-mime-charset|mm-multibyte-char-to-unibyte|mm-multibyte-p|mm-multibyte-string-p|mm-multiple-handles|mm-pipe-part|mm-possibly-verify-or-decrypt|mm-preferred-alternative-precedence|mm-preferred-alternative|mm-preferred-coding-system|mm-qp-or-base64|mm-read-charset|mm-read-coding-system|mm-readable-p|mm-remove-part|mm-remove-parts|mm-replace-in-string|mm-safer-encoding|mm-save-part-to-file|mm-save-part|mm-set-buffer-file-coding-system|mm-set-buffer-multibyte|mm-set-handle-multipart-parameter|mm-setup-codepage-ibm|mm-setup-codepage-iso-8859|mm-shr|mm-sort-coding-systems-predicate)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:mm-special-display-p|mm-string-as-multibyte|mm-string-as-unibyte|mm-string-make-unibyte|mm-string-to-multibyte|mm-subst-char-in-string|mm-substring-no-properties|mm-temp-files-delete|mm-ucs-to-char|mm-url-decode-entities-nbsp|mm-url-decode-entities-string|mm-url-decode-entities|mm-url-encode-multipart-form-data|mm-url-encode-www-form-urlencoded|mm-url-form-encode-xwfu|mm-url-insert-file-contents-external|mm-url-insert-file-contents|mm-url-insert|mm-url-load-url|mm-url-remove-markup|mm-uu-dissect-text-parts|mm-uu-dissect|mm-valid-and-fit-image-p|mm-valid-image-format-p|mm-view-pkcs7|mm-with-multibyte-buffer|mm-with-part|mm-with-unibyte-buffer|mm-with-unibyte-current-buffer|mm-write-region|mm-xemacs-find-mime-charset-1|mm-xemacs-find-mime-charset|mml-attach-buffer|mml-attach-external|mml-attach-file|mml-buffer-substring-no-properties-except-hard-newlines|mml-compute-boundary-1|mml-compute-boundary|mml-content-disposition|mml-destroy-buffers|mml-dnd-attach-file|mml-expand-html-into-multipart-related|mml-generate-mime-1|mml-generate-mime|mml-generate-new-buffer|mml-insert-buffer|mml-insert-empty-tag|mml-insert-mime-headers|mml-insert-mime|mml-insert-mml-markup|mml-insert-multipart|mml-insert-parameter-string|mml-insert-parameter|mml-insert-part|mml-insert-tag|mml-make-boundary|mml-menu|mml-minibuffer-read-description|mml-minibuffer-read-disposition|mml-minibuffer-read-file|mml-minibuffer-read-type|mml-mode|mml-parameter-string|mml-parse-1|mml-parse-file-name|mml-parse-singlepart-with-multiple-charsets|mml-parse|mml-pgp-encrypt-buffer|mml-pgp-sign-buffer|mml-pgpauto-encrypt-buffer|mml-pgpauto-sign-buffer|mml-pgpmime-encrypt-buffer|mml-pgpmime-sign-buffer|mml-preview-insert-mail-followup-to|mml-preview|mml-quote-region|mml-read-part|mml-read-tag|mml-secure-encrypt-pgp|mml-secure-encrypt-pgpmime|mml-secure-encrypt-smime|mml-secure-encrypt|mml-secure-message-encrypt-pgp|mml-secure-message-encrypt-pgpauto|mml-secure-message-encrypt-pgpmime|mml-secure-message-encrypt-smime|mml-secure-message-encrypt|mml-secure-message-sign-encrypt|mml-secure-message-sign-pgp|mml-secure-message-sign-pgpauto|mml-secure-message-sign-pgpmime|mml-secure-message-sign-smime|mml-secure-message-sign|mml-secure-message|mml-secure-part|mml-secure-sign-pgp|mml-secure-sign-pgpauto|mml-secure-sign-pgpmime|mml-secure-sign-smime|mml-secure-sign|mml-signencrypt-style|mml-smime-encrypt-buffer|mml-smime-encrypt-query|mml-smime-encrypt|mml-smime-sign-buffer|mml-smime-sign-query|mml-smime-sign|mml-smime-verify-test|mml-smime-verify|mml-to-mime|mml-tweak-externalize-attachments|mml-tweak-part|mml-unsecure-message|mml-validate|mml1991-encrypt|mml1991-sign|mml2015-decrypt-test|mml2015-decrypt|mml2015-encrypt|mml2015-self-encrypt|mml2015-sign|mml2015-verify-test|mml2015-verify|mod\\\\*|mode-line-bury-buffer|mode-line-change-eol|mode-line-eol-desc|mode-line-frame-control|mode-line-minor-mode-help|mode-line-modified-help-echo|mode-line-mule-info-help-echo|mode-line-next-buffer|mode-line-other-buffer|mode-line-previous-buffer|mode-line-read-only-help-echo|mode-line-toggle-modified|mode-line-toggle-read-only|mode-line-unbury-buffer|mode-line-widen|mode-local--expand-overrides|mode-local--overload-body|mode-local--override|mode-local-augment-function-help|mode-local-bind|mode-local-describe-bindings-1|mode-local-describe-bindings-2|mode-local-equivalent-mode-p|mode-local-initialized-p|mode-local-map-file-buffers|mode-local-map-mode-buffers|mode-local-on-major-mode-change|mode-local-post-major-mode-change|mode-local-print-binding|mode-local-print-bindings|mode-local-read-function|mode-local-setup-edebug-specs|mode-local-symbol-value|mode-local-symbol|mode-local-use-bindings-p|mode-local-value|mode-specific-command-prefix|modify-coding-system-alist|modify-face|modula-2-mode|morse-region|mouse--down-1-maybe-follows-link|mouse--drag-set-mark-and-point|mouse--strip-first-event|mouse-appearance-menu|mouse-autoselect-window-cancel|mouse-autoselect-window-select|mouse-autoselect-window-start|mouse-avoidance-banish-destination|mouse-avoidance-banish-mouse|mouse-avoidance-banish|mouse-avoidance-delta|mouse-avoidance-exile|mouse-avoidance-fancy|mouse-avoidance-ignore-p|mouse-avoidance-mode|mouse-avoidance-nudge-mouse|mouse-avoidance-point-position|mouse-avoidance-random-shape|mouse-avoidance-set-mouse-position|mouse-avoidance-set-pointer-shape|mouse-avoidance-too-close-p|mouse-buffer-menu-alist|mouse-buffer-menu-keymap|mouse-buffer-menu-map|mouse-buffer-menu-split|mouse-buffer-menu|mouse-choose-completion|mouse-copy-work-around-drag-bug|mouse-delete-other-windows|mouse-delete-window|mouse-drag-drag|mouse-drag-events-are-point-events-p|mouse-drag-header-line|mouse-drag-line|mouse-drag-mode-line|mouse-drag-region|mouse-drag-repeatedly-safe-scroll|mouse-drag-safe-scroll|mouse-drag-scroll-delta|mouse-drag-secondary-moving|mouse-drag-secondary-pasting|mouse-drag-secondary|mouse-drag-should-do-col-scrolling|mouse-drag-throw|mouse-drag-track|mouse-drag-vertical-line|mouse-event-p|mouse-fixup-help-message|mouse-kill-preserving-secondary|mouse-kill-ring-save|mouse-kill-secondary|mouse-kill|mouse-major-mode-menu|mouse-menu-bar-map|mouse-menu-major-mode-map|mouse-menu-non-singleton|mouse-minibuffer-check|mouse-minor-mode-menu|mouse-popup-menubar-stuff|mouse-popup-menubar|mouse-posn-property|mouse-region-match|mouse-save-then-kill-delete-region|mouse-save-then-kill|mouse-scroll-subr|mouse-secondary-save-then-kill|mouse-select-buffer|mouse-select-font|mouse-select-window|mouse-set-font|mouse-set-mark-fast|mouse-set-mark|mouse-set-point|mouse-set-region-1|mouse-set-region|mouse-set-secondary|mouse-skip-word|mouse-split-window-horizontally|mouse-split-window-vertically|mouse-start-end|mouse-start-secondary|mouse-tear-off-window|mouse-undouble-last-event|mouse-wheel-change-button|mouse-wheel-mode|mouse-yank-at-click|mouse-yank-primary|mouse-yank-secondary|move-beginning-of-line|move-end-of-line|move-file-to-trash|move-past-close-and-reindent|move-to-column-untabify|move-to-tab-stop|move-to-window-line-top-bottom|mpc--debug|mpc--faster-stop|mpc--faster-toggle-refresh|mpc--faster-toggle|mpc--faster|mpc--proc-alist-to-alists|mpc--proc-connect|mpc--proc-filter|mpc--proc-quote-string|mpc--songduration|mpc--status-callback|mpc--status-idle-timer-run|mpc--status-idle-timer-start|mpc--status-idle-timer-stop|mpc--status-timer-run|mpc--status-timer-start|mpc--status-timer-stop|mpc--status-timers-refresh|mpc-assq-all|mpc-cmd-add|mpc-cmd-clear|mpc-cmd-delete|mpc-cmd-find|mpc-cmd-flush|mpc-cmd-list|mpc-cmd-move|mpc-cmd-pause|mpc-cmd-play|mpc-cmd-special-tag-p|mpc-cmd-status|mpc-cmd-stop|mpc-cmd-tagtypes|mpc-cmd-update|mpc-compare-strings|mpc-constraints-get-current|mpc-constraints-pop|mpc-constraints-push|mpc-constraints-restore|mpc-constraints-tag-lookup|mpc-current-refresh|mpc-data-directory|mpc-drag-n-drop|mpc-event-set-point|mpc-ffwd|mpc-file-local-copy|mpc-format|mpc-intersection|mpc-mode-menu|mpc-mode|mpc-next|mpc-pause|mpc-play-at-point|mpc-play|mpc-playlist-add|mpc-playlist-create|mpc-playlist-delete|mpc-playlist-destroy|mpc-playlist-rename|mpc-playlist|mpc-prev|mpc-proc-buf-to-alist|mpc-proc-buf-to-alists|mpc-proc-buffer|mpc-proc-check|mpc-proc-cmd-list-ok|mpc-proc-cmd-list|mpc-proc-cmd-to-alist|mpc-proc-cmd|mpc-proc-sync|mpc-proc-tag-string-to-sym|mpc-proc|mpc-quit|mpc-reorder|mpc-resume|mpc-rewind|mpc-ring-make|mpc-ring-pop|mpc-ring-push|mpc-secs-to-time|mpc-select-extend|mpc-select-get-selection|mpc-select-make-overlay|mpc-select-restore|mpc-select-save|mpc-select-toggle|mpc-select|mpc-selection-refresh|mpc-separator|mpc-songpointer-context|mpc-songpointer-refresh-hairy|mpc-songpointer-refresh|mpc-songpointer-score|mpc-songpointer-set|mpc-songs-buf|mpc-songs-hashcons|mpc-songs-jump-to|mpc-songs-kill-search|mpc-songs-mode|mpc-songs-refresh|mpc-songs-search|mpc-songs-selection|mpc-sort|mpc-status-buffer-refresh|mpc-status-buffer-show|mpc-status-mode|mpc-status-refresh|mpc-status-stop|mpc-stop|mpc-string-prefix-p|mpc-tagbrowser-all-p|mpc-tagbrowser-all-select|mpc-tagbrowser-buf|mpc-tagbrowser-dir-mode|mpc-tagbrowser-dir-toggle|mpc-tagbrowser-mode|mpc-tagbrowser-refresh|mpc-tagbrowser-tag-name|mpc-tagbrowser|mpc-tempfiles-add|mpc-tempfiles-clean|mpc-union|mpc-update|mpc-updated-db|mpc-volume-mouse-set|mpc-volume-refresh|mpc-volume-widget|mpc|mpuz-ask-for-try|mpuz-build-random-perm|mpuz-check-all-solved|mpuz-close-game|mpuz-create-buffer|mpuz-digit-solved-p|mpuz-ding|mpuz-get-buffer|mpuz-mode|mpuz-offer-abort|mpuz-paint-board|mpuz-paint-digit|mpuz-paint-errors|mpuz-paint-number|mpuz-paint-statistics|mpuz-put-number-on-board|mpuz-random-puzzle|mpuz-show-solution|mpuz-solve|mpuz-start-new-game|mpuz-switch-to-window|mpuz-to-digit|mpuz-to-letter|mpuz-try-letter|mpuz-try-proposal|mpuz|msb--add-separators|msb--add-to-menu|msb--aggregate-alist|msb--choose-file-menu|msb--choose-menu|msb--collect|msb--create-buffer-menu-2|msb--create-buffer-menu|msb--create-function-info|msb--create-sort-item|msb--dired-directory|msb--format-title|msb--init-file-alist|msb--make-keymap-menu|msb--mode-menu-cond|msb--most-recently-used-menu|msb--split-menus-2|msb--split-menus|msb--strip-dir|msb--toggle-menu-type|msb-alon-item-handler|msb-custom-set|msb-dired-item-handler|msb-invisible-buffer-p|msb-item-handler|msb-menu-bar-update-buffers|msb-mode|msb-sort-by-directory|msb-sort-by-name|msb-unload-function|msb|mspools-get-folder-from-spool|mspools-get-spool-files|mspools-get-spool-name|mspools-help|mspools-mode|mspools-quit|mspools-revert-buffer|mspools-set-vm-spool-files|mspools-show-again|mspools-show|mspools-size-folder|mspools-visit-spool|mule-diag|multi-isearch-buffers-regexp|multi-isearch-buffers|multi-isearch-end|multi-isearch-files-regexp|multi-isearch-files|multi-isearch-next-buffer-from-list|multi-isearch-next-file-buffer-from-list|multi-isearch-pop-state|multi-isearch-push-state|multi-isearch-read-buffers|multi-isearch-read-files|multi-isearch-read-matching-buffers|multi-isearch-read-matching-files|multi-isearch-search-fun|multi-isearch-setup|multi-isearch-wrap|multi-occur-in-matching-buffers|multi-occur|multiple-value-apply|multiple-value-bind|multiple-value-call|multiple-value-list|multiple-value-setq|mwheel-event-button|mwheel-event-window|mwheel-filter-click-events|mwheel-inhibit-click-timeout|mwheel-install|mwheel-scroll|name-last-kbd-macro|narrow-to-defun|nato-region|nested-alist-p|net-utils--revert-function|net-utils-machine-at-point|net-utils-mode|net-utils-remove-ctrl-m-filter|net-utils-run-program|net-utils-run-simple|net-utils-url-at-point|netrc-credentials|netrc-find-service-name|netrc-get|netrc-machine-user-or-password|netrc-machine|netrc-parse-services|netrc-parse|netrc-port-equal|netstat|network-connection-mode-setup|network-connection-mode|network-connection-reconnect|network-connection-to-service|network-connection|network-service-connection|network-stream-certificate|network-stream-command|network-stream-get-response|network-stream-open-plain|network-stream-open-shell|network-stream-open-starttls|network-stream-open-tls|new-fontset|new-frame|new-mode-local-bindings|newline-cache-check|newsticker--age|newsticker--buffer-beginning-of-feed|newsticker--buffer-beginning-of-item|newsticker--buffer-do-insert-text|newsticker--buffer-end-of-feed|newsticker--buffer-end-of-item|newsticker--buffer-get-feed-title-at-point|newsticker--buffer-get-item-title-at-point|newsticker--buffer-goto|newsticker--buffer-hideshow|newsticker--buffer-insert-all-items|newsticker--buffer-insert-item|newsticker--buffer-make-item-completely-visible|newsticker--buffer-redraw|newsticker--buffer-set-faces|newsticker--buffer-set-invisibility|newsticker--buffer-set-uptodate|newsticker--buffer-statistics|newsticker--cache-add|newsticker--cache-contains|newsticker--cache-dir|newsticker--cache-get-feed|newsticker--cache-item-compare-by-position|newsticker--cache-item-compare-by-time|newsticker--cache-item-compare-by-title|newsticker--cache-mark-expired|newsticker--cache-read-feed|newsticker--cache-read-version1|newsticker--cache-read|newsticker--cache-remove|newsticker--cache-replace-age|newsticker--cache-save-feed|newsticker--cache-save-version1|newsticker--cache-save|newsticker--cache-set-preformatted-contents|newsticker--cache-set-preformatted-title|newsticker--cache-sort)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:newsticker--cache-update|newsticker--count-grouped-feeds|newsticker--count-groups|newsticker--debug-msg|newsticker--decode-iso8601-date|newsticker--decode-rfc822-date|newsticker--desc|newsticker--display-jump|newsticker--display-scroll|newsticker--display-tick|newsticker--do-forget-preformatted|newsticker--do-mark-item-at-point-as-read|newsticker--do-print-extra-element|newsticker--do-run-auto-mark-filter|newsticker--do-xml-workarounds|newsticker--echo-area-clean-p|newsticker--enclosure|newsticker--extra|newsticker--forget-preformatted|newsticker--get-group-names|newsticker--get-icon-url-atom-1\\\\.0|newsticker--get-logo-url-atom-0\\\\.3|newsticker--get-logo-url-atom-1\\\\.0|newsticker--get-logo-url-rss-0\\\\.91|newsticker--get-logo-url-rss-0\\\\.92|newsticker--get-logo-url-rss-1\\\\.0|newsticker--get-logo-url-rss-2\\\\.0|newsticker--get-news-by-funcall|newsticker--get-news-by-url-callback|newsticker--get-news-by-url|newsticker--get-news-by-wget|newsticker--group-all-groups|newsticker--group-do-find-group|newsticker--group-do-get-group|newsticker--group-do-rename-group|newsticker--group-find-parent-group|newsticker--group-get-feeds|newsticker--group-get-group|newsticker--group-get-subgroups|newsticker--group-manage-orphan-feeds|newsticker--group-names|newsticker--group-remove-obsolete-feeds|newsticker--group-shift|newsticker--guid-to-string|newsticker--guid|newsticker--icon-read|newsticker--icons-dir|newsticker--image-download-by-url-callback|newsticker--image-download-by-url|newsticker--image-download-by-wget|newsticker--image-get|newsticker--image-read|newsticker--image-remove|newsticker--image-save|newsticker--image-sentinel|newsticker--images-dir|newsticker--imenu-create-index|newsticker--imenu-goto|newsticker--insert-enclosure|newsticker--insert-image|newsticker--link|newsticker--lists-intersect-p|newsticker--opml-import-outlines|newsticker--parse-atom-0\\\\.3|newsticker--parse-atom-1\\\\.0|newsticker--parse-generic-feed|newsticker--parse-generic-items|newsticker--parse-rss-0\\\\.91|newsticker--parse-rss-0\\\\.92|newsticker--parse-rss-1\\\\.0|newsticker--parse-rss-2\\\\.0|newsticker--pos|newsticker--preformatted-contents|newsticker--preformatted-title|newsticker--print-extra-elements|newsticker--process-auto-mark-filter-match|newsticker--real-feed-name|newsticker--remove-whitespace|newsticker--run-auto-mark-filter|newsticker--sentinel-work|newsticker--sentinel|newsticker--set-customvar-buffer|newsticker--set-customvar-formatting|newsticker--set-customvar-retrieval|newsticker--set-customvar-sorting|newsticker--set-customvar-ticker|newsticker--set-face-properties|newsticker--splicer|newsticker--start-feed|newsticker--stat-num-items-for-group|newsticker--stat-num-items-total|newsticker--stat-num-items|newsticker--stop-feed|newsticker--ticker-text-remove|newsticker--ticker-text-setup|newsticker--time|newsticker--title|newsticker--tree-widget-icon-create|newsticker--treeview-activate-node|newsticker--treeview-buffer-init|newsticker--treeview-count-node-items|newsticker--treeview-do-get-node-by-id|newsticker--treeview-do-get-node-of-feed|newsticker--treeview-first-feed|newsticker--treeview-frame-init|newsticker--treeview-get-current-node|newsticker--treeview-get-feed-vfeed|newsticker--treeview-get-first-child|newsticker--treeview-get-id|newsticker--treeview-get-last-child|newsticker--treeview-get-next-sibling|newsticker--treeview-get-next-uncle|newsticker--treeview-get-node-by-id|newsticker--treeview-get-node-of-feed|newsticker--treeview-get-other-tree|newsticker--treeview-get-prev-sibling|newsticker--treeview-get-prev-uncle|newsticker--treeview-get-second-child|newsticker--treeview-get-selected-item|newsticker--treeview-ids-eq|newsticker--treeview-item-buffer|newsticker--treeview-item-show-text|newsticker--treeview-item-show|newsticker--treeview-item-update|newsticker--treeview-item-window|newsticker--treeview-list-add-item|newsticker--treeview-list-all-items|newsticker--treeview-list-buffer|newsticker--treeview-list-clear-highlight|newsticker--treeview-list-clear|newsticker--treeview-list-compare-item-by-age-reverse|newsticker--treeview-list-compare-item-by-age|newsticker--treeview-list-compare-item-by-time-reverse|newsticker--treeview-list-compare-item-by-time|newsticker--treeview-list-compare-item-by-title-reverse|newsticker--treeview-list-compare-item-by-title|newsticker--treeview-list-feed-items|newsticker--treeview-list-highlight-start|newsticker--treeview-list-immortal-items|newsticker--treeview-list-items-v|newsticker--treeview-list-items-with-age-callback|newsticker--treeview-list-items-with-age|newsticker--treeview-list-items|newsticker--treeview-list-new-items|newsticker--treeview-list-obsolete-items|newsticker--treeview-list-select|newsticker--treeview-list-sort-by-column|newsticker--treeview-list-sort-items|newsticker--treeview-list-update-faces|newsticker--treeview-list-update-highlight|newsticker--treeview-list-update|newsticker--treeview-list-window|newsticker--treeview-load|newsticker--treeview-mark-item|newsticker--treeview-nodes-eq|newsticker--treeview-propertize-tag|newsticker--treeview-render-text|newsticker--treeview-restore-layout|newsticker--treeview-set-current-node|newsticker--treeview-tree-buffer|newsticker--treeview-tree-do-update-tags|newsticker--treeview-tree-expand-status|newsticker--treeview-tree-expand|newsticker--treeview-tree-get-tag|newsticker--treeview-tree-open-menu|newsticker--treeview-tree-update-highlight|newsticker--treeview-tree-update-tag|newsticker--treeview-tree-update-tags|newsticker--treeview-tree-update|newsticker--treeview-tree-window|newsticker--treeview-unfold-node|newsticker--treeview-virtual-feed-p|newsticker--treeview-window-init|newsticker--unxml-attribute|newsticker--unxml-node|newsticker--unxml|newsticker--update-process-ids|newsticker-add-url|newsticker-browse-url-item|newsticker-browse-url|newsticker-buffer-force-update|newsticker-buffer-update|newsticker-close-buffer|newsticker-customize|newsticker-download-enclosures|newsticker-download-images|newsticker-get-all-news|newsticker-get-news-at-point|newsticker-get-news|newsticker-group-add-group|newsticker-group-delete-group|newsticker-group-move-feed|newsticker-group-rename-group|newsticker-group-shift-feed-down|newsticker-group-shift-feed-up|newsticker-group-shift-group-down|newsticker-group-shift-group-up|newsticker-handle-url|newsticker-hide-all-desc|newsticker-hide-entry|newsticker-hide-extra|newsticker-hide-feed-desc|newsticker-hide-new-item-desc|newsticker-hide-old-item-desc|newsticker-hide-old-items|newsticker-htmlr-render|newsticker-item-not-immortal-p|newsticker-item-not-old-p|newsticker-mark-all-items-as-read|newsticker-mark-all-items-at-point-as-read-and-redraw|newsticker-mark-all-items-at-point-as-read|newsticker-mark-all-items-of-feed-as-read|newsticker-mark-item-at-point-as-immortal|newsticker-mark-item-at-point-as-read|newsticker-mode|newsticker-mouse-browse-url|newsticker-new-item-functions-sample|newsticker-next-feed-available-p|newsticker-next-feed|newsticker-next-item-available-p|newsticker-next-item-same-feed|newsticker-next-item|newsticker-next-new-item|newsticker-opml-export|newsticker-opml-import|newsticker-plainview|newsticker-previous-feed-available-p|newsticker-previous-feed|newsticker-previous-item-available-p|newsticker-previous-item|newsticker-previous-new-item|newsticker-retrieve-random-message|newsticker-running-p|newsticker-save-item|newsticker-set-auto-narrow-to-feed|newsticker-set-auto-narrow-to-item|newsticker-show-all-desc|newsticker-show-entry|newsticker-show-extra|newsticker-show-feed-desc|newsticker-show-new-item-desc|newsticker-show-news|newsticker-show-old-item-desc|newsticker-show-old-items|newsticker-start-ticker|newsticker-start|newsticker-stop-ticker|newsticker-stop|newsticker-ticker-running-p|newsticker-toggle-auto-narrow-to-feed|newsticker-toggle-auto-narrow-to-item|newsticker-treeview-browse-url-item|newsticker-treeview-browse-url|newsticker-treeview-get-news|newsticker-treeview-item-mode|newsticker-treeview-jump|newsticker-treeview-list-make-sort-button|newsticker-treeview-list-mode|newsticker-treeview-mark-item-old|newsticker-treeview-mark-list-items-old|newsticker-treeview-mode|newsticker-treeview-mouse-browse-url|newsticker-treeview-next-feed|newsticker-treeview-next-item|newsticker-treeview-next-new-or-immortal-item|newsticker-treeview-next-page|newsticker-treeview-prev-feed|newsticker-treeview-prev-item|newsticker-treeview-prev-new-or-immortal-item|newsticker-treeview-quit|newsticker-treeview-save-item|newsticker-treeview-save|newsticker-treeview-scroll-item|newsticker-treeview-show-item|newsticker-treeview-toggle-item-immortal|newsticker-treeview-tree-click|newsticker-treeview-tree-do-click|newsticker-treeview-update|newsticker-treeview|newsticker-w3m-show-inline-images|next-buffer|next-cdabbrev|next-completion|next-error-buffer-p|next-error-find-buffer|next-error-follow-minor-mode|next-error-follow-mode-post-command-hook|next-error-internal|next-error-no-select|next-error|next-file|next-ifdef|next-line-or-history-element|next-line|next-logical-line|next-match|next-method-p|next-multiframe-window|next-page|next-read-file-uses-dialog-p|nintersection|ninth|nndiary-generate-nov-databases|nndoc-add-type|nndraft-request-associate-buffer|nndraft-request-expire-articles|nnfolder-generate-active-file|nnheader-accept-process-output|nnheader-article-p|nnheader-article-to-file-alist|nnheader-be-verbose|nnheader-cancel-function-timers|nnheader-cancel-timer|nnheader-concat|nnheader-directory-articles|nnheader-directory-files-safe|nnheader-directory-files|nnheader-directory-regular-files|nnheader-fake-message-id-p|nnheader-file-error|nnheader-file-size|nnheader-file-to-group|nnheader-file-to-number|nnheader-find-etc-directory|nnheader-find-file-noselect|nnheader-find-nov-line|nnheader-fold-continuation-lines|nnheader-generate-fake-message-id|nnheader-get-lines-and-char|nnheader-get-report-string|nnheader-get-report|nnheader-group-pathname|nnheader-header-value|nnheader-init-server-buffer|nnheader-insert-article-line|nnheader-insert-buffer-substring|nnheader-insert-file-contents|nnheader-insert-head|nnheader-insert-header|nnheader-insert-nov-file|nnheader-insert-nov|nnheader-insert-references|nnheader-insert|nnheader-message-maybe|nnheader-message|nnheader-ms-strip-cr|nnheader-narrow-to-headers|nnheader-nov-delete-outside-range|nnheader-nov-field|nnheader-nov-parse-extra|nnheader-nov-read-integer|nnheader-nov-read-message-id|nnheader-nov-skip-field|nnheader-parse-head|nnheader-parse-naked-head|nnheader-parse-nov|nnheader-parse-overview-file|nnheader-re-read-dir|nnheader-remove-body|nnheader-remove-cr-followed-by-lf|nnheader-replace-chars-in-string|nnheader-replace-duplicate-chars-in-string|nnheader-replace-header|nnheader-replace-regexp|nnheader-replace-string|nnheader-report|nnheader-set-temp-buffer|nnheader-skeleton-replace|nnheader-strip-cr|nnheader-translate-file-chars|nnheader-update-marks-actions|nnheader-write-overview-file|nnmail-article-group|nnmail-message-id|nnmail-split-fancy|nnml-generate-nov-databases|nnvirtual-catchup-group|nnvirtual-convert-headers|nnvirtual-find-group-art|no-applicable-method|no-next-method|nonincremental-re-search-backward|nonincremental-re-search-forward|nonincremental-repeat-search-backward|nonincremental-repeat-search-forward|nonincremental-search-backward|nonincremental-search-forward|normal-about-screen|normal-erase-is-backspace-mode|normal-erase-is-backspace-setup-frame|normal-mouse-startup-screen|normal-no-mouse-startup-screen|normal-splash-screen|normal-top-level-add-subdirs-to-load-path|normal-top-level-add-to-load-path|normal-top-level|notany|notevery|notifications-on-action-signal|notifications-on-closed-signal|nreconc|nroff-backward-text-line|nroff-comment-indent|nroff-count-text-lines|nroff-electric-mode|nroff-electric-newline|nroff-forward-text-line|nroff-insert-comment-function|nroff-mode|nroff-outline-level|nroff-view|nset-difference|nset-exclusive-or|nslookup-host|nslookup-mode|nslookup|nsm-certificate-part|nsm-check-certificate|nsm-check-plain-connection|nsm-check-protocol|nsm-check-tls-connection|nsm-fingerprint-ok-p|nsm-fingerprint|nsm-format-certificate|nsm-host-settings|nsm-id|nsm-level|nsm-new-fingerprint-ok-p|nsm-parse-subject|nsm-query-user|nsm-query|nsm-read-settings|nsm-remove-permanent-setting|nsm-remove-temporary-setting|nsm-save-host|nsm-verify-connection|nsm-warnings-ok-p|nsm-write-settings|nsublis|nsubst-if-not|nsubst-if|nsubst|nsubstitute-if-not)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:nsubstitute-if|nsubstitute|nth-value|ntlm-ascii2unicode|ntlm-build-auth-request|ntlm-build-auth-response|ntlm-get-password-hashes|ntlm-md4hash|ntlm-smb-des-e-p16|ntlm-smb-des-e-p24|ntlm-smb-dohash|ntlm-smb-hash|ntlm-smb-owf-encrypt|ntlm-smb-passwd-hash|ntlm-smb-str-to-key|ntlm-string-lshift|ntlm-string-permute|ntlm-string-xor|ntlm-unicode2ascii|nullify-allout-prefix-data|number-at-point|number-to-register|nunion|nxml-enable-unicode-char-name-sets|nxml-glyph-display-string|nxml-mode|obj-of-class-p|objc-font-lock-keywords-2|objc-font-lock-keywords-3|objc-font-lock-keywords|objc-mode|object-add-to-list|object-assoc-list-safe|object-assoc-list|object-assoc|object-class-fast|object-class-name|object-class|object-name-string|object-name|object-of-class-p|object-p|object-print|object-remove-from-list|object-set-name-string|object-slots|object-write|occur-1|occur-accumulate-lines|occur-after-change-function|occur-cease-edit|occur-context-lines|occur-edit-mode|occur-engine-add-prefix|occur-engine-line|occur-engine|occur-find-match|occur-mode-display-occurrence|occur-mode-find-occurrence|occur-mode-goto-occurrence-other-window|occur-mode-goto-occurrence|occur-mode-mouse-goto|occur-mode|occur-next-error|occur-next|occur-prev|occur-read-primary-args|occur-rename-buffer|occur-revert-function|occur|octave--indent-new-comment-line|octave-add-log-current-defun|octave-beginning-of-defun|octave-beginning-of-line|octave-complete-symbol|octave-completing-read|octave-completion-at-point|octave-eldoc-function-signatures|octave-eldoc-function|octave-end-of-line|octave-eval-print-last-sexp|octave-fill-paragraph|octave-find-definition-default-filename|octave-find-definition|octave-font-lock-texinfo-comment|octave-function-file-comment|octave-function-file-p|octave-goto-function-definition|octave-help-mode|octave-help|octave-hide-process-buffer|octave-in-comment-p|octave-in-string-or-comment-p|octave-in-string-p|octave-indent-comment|octave-indent-defun|octave-indent-new-comment-line|octave-insert-defun|octave-kill-process|octave-lookfor|octave-looking-at-kw|octave-mark-block|octave-maybe-insert-continuation-string|octave-mode-menu|octave-mode|octave-next-code-line|octave-previous-code-line|octave-send-block|octave-send-buffer|octave-send-defun|octave-send-line|octave-send-region|octave-show-process-buffer|octave-skip-comment-forward|octave-smie-backward-token|octave-smie-forward-token|octave-smie-rules|octave-source-directories|octave-source-file|octave-submit-bug-report|octave-sync-function-file-names|octave-syntax-propertize-function|octave-syntax-propertize-sqs|octave-update-function-file-comment|oddp|opascal-block-start|opascal-char-token-at|opascal-charset-token-at|opascal-column-of|opascal-comment-block-end|opascal-comment-block-start|opascal-comment-content-start|opascal-comment-indent-of|opascal-composite-type-start|opascal-corrected-indentation|opascal-current-token|opascal-debug-goto-next-token|opascal-debug-goto-point|opascal-debug-goto-previous-token|opascal-debug-log|opascal-debug-show-current-string|opascal-debug-show-current-token|opascal-debug-token-string|opascal-debug-tokenize-buffer|opascal-debug-tokenize-region|opascal-debug-tokenize-window|opascal-else-start|opascal-enclosing-indent-of|opascal-ensure-buffer|opascal-explicit-token-at|opascal-fill-comment|opascal-find-current-body|opascal-find-current-def|opascal-find-current-xdef|opascal-find-unit-file|opascal-find-unit-in-directory|opascal-find-unit|opascal-group-end|opascal-group-start|opascal-in-token|opascal-indent-line|opascal-indent-of|opascal-is-block-after-expr-statement|opascal-is-directory|opascal-is-file|opascal-is-literal-end|opascal-is-simple-class-type|opascal-is-use-clause-end|opascal-is|opascal-line-indent-of|opascal-literal-end-pattern|opascal-literal-kind|opascal-literal-start-pattern|opascal-literal-stop-pattern|opascal-literal-token-at|opascal-log-msg|opascal-looking-at-string|opascal-match-token|opascal-mode|opascal-new-comment-line|opascal-next-line-start|opascal-next-token|opascal-next-visible-token|opascal-on-first-comment-line|opascal-open-group-indent|opascal-point-token-at|opascal-previous-indent-of|opascal-previous-token|opascal-progress-done|opascal-progress-start|opascal-save-excursion|opascal-search-directory|opascal-section-indent-of|opascal-set-token-end|opascal-set-token-kind|opascal-set-token-start|opascal-space-token-at|opascal-step-progress|opascal-stmt-line-indent-of|opascal-string-of|opascal-tab|opascal-token-at|opascal-token-end|opascal-token-kind|opascal-token-of|opascal-token-start|opascal-token-string|opascal-word-token-at|open-font|open-gnutls-stream|open-line|open-protocol-stream|open-rectangle-line|open-rectangle|open-tls-stream|operate-on-rectangle|optimize-char-table|oref-default|oref|org-2ft|org-N-empty-lines-before-current|org-activate-angle-links|org-activate-bracket-links|org-activate-code|org-activate-dates|org-activate-footnote-links|org-activate-mark|org-activate-plain-links|org-activate-tags|org-activate-target-links|org-adaptive-fill-function|org-add-angle-brackets|org-add-archive-files|org-add-hook|org-add-link-props|org-add-link-type|org-add-log-note|org-add-log-setup|org-add-note|org-add-planning-info|org-add-prop-inherited|org-add-props|org-advertized-archive-subtree|org-agenda-check-for-timestamp-as-reason-to-ignore-todo-item|org-agenda-columns|org-agenda-file-p|org-agenda-file-to-front|org-agenda-files|org-agenda-list-stuck-projects|org-agenda-list|org-agenda-prepare-buffers|org-agenda-set-restriction-lock|org-agenda-to-appt|org-agenda|org-align-all-tags|org-align-tags-here|org-all-targets|org-apply-on-list|org-apps-regexp-alist|org-archive-subtree-default-with-confirmation|org-archive-subtree-default|org-archive-subtree|org-archive-to-archive-sibling|org-ascii-export-as-ascii|org-ascii-export-to-ascii|org-ascii-publish-to-ascii|org-ascii-publish-to-latin1|org-ascii-publish-to-utf8|org-assign-fast-keys|org-at-TBLFM-p|org-at-block-p|org-at-clock-log-p|org-at-comment-p|org-at-date-range-p|org-at-drawer-p|org-at-heading-or-item-p|org-at-heading-p|org-at-item-bullet-p|org-at-item-checkbox-p|org-at-item-counter-p|org-at-item-description-p|org-at-item-p|org-at-item-timer-p|org-at-property-p|org-at-regexp-p|org-at-table-hline-p|org-at-table-p|org-at-table\\\\.el-p|org-at-target-p|org-at-timestamp-p|org-attach|org-auto-fill-function|org-auto-repeat-maybe|org-babel--shell-command-on-region|org-babel-active-location-p|org-babel-balanced-split|org-babel-check-confirm-evaluate|org-babel-check-evaluate|org-babel-check-src-block|org-babel-chomp|org-babel-combine-header-arg-lists|org-babel-comint-buffer-livep|org-babel-comint-eval-invisibly-and-wait-for-file|org-babel-comint-in-buffer|org-babel-comint-input-command|org-babel-comint-wait-for-output|org-babel-comint-with-output|org-babel-confirm-evaluate|org-babel-current-result-hash|org-babel-del-hlines|org-babel-demarcate-block|org-babel-describe-bindings|org-babel-detangle|org-babel-disassemble-tables|org-babel-do-in-edit-buffer|org-babel-do-key-sequence-in-edit-buffer|org-babel-do-load-languages|org-babel-edit-distance|org-babel-enter-header-arg-w-completion|org-babel-eval-error-notify|org-babel-eval-read-file|org-babel-eval-wipe-error-buffer|org-babel-eval|org-babel-examplize-region|org-babel-execute-buffer|org-babel-execute-maybe|org-babel-execute-safely-maybe|org-babel-execute-src-block-maybe|org-babel-execute-src-block|org-babel-execute-subtree|org-babel-execute:emacs-lisp|org-babel-exp-code|org-babel-exp-do-export|org-babel-exp-get-export-buffer|org-babel-exp-in-export-file|org-babel-exp-process-buffer|org-babel-exp-results|org-babel-exp-src-block|org-babel-expand-body:emacs-lisp|org-babel-expand-body:generic|org-babel-expand-noweb-references|org-babel-expand-src-block-maybe|org-babel-expand-src-block|org-babel-find-file-noselect-refresh|org-babel-find-named-block|org-babel-find-named-result|org-babel-format-result|org-babel-get-colnames|org-babel-get-header|org-babel-get-inline-src-block-matches|org-babel-get-lob-one-liner-matches|org-babel-get-rownames|org-babel-get-src-block-info|org-babel-goto-named-result|org-babel-goto-named-src-block|org-babel-goto-src-block-head|org-babel-hash-at-point|org-babel-header-arg-expand|org-babel-hide-all-hashes|org-babel-hide-hash|org-babel-hide-result-toggle-maybe|org-babel-hide-result-toggle|org-babel-import-elisp-from-file|org-babel-in-example-or-verbatim|org-babel-initiate-session|org-babel-insert-header-arg|org-babel-insert-result|org-babel-join-splits-near-ch|org-babel-load-file|org-babel-load-in-session-maybe|org-babel-load-in-session|org-babel-lob-execute-maybe|org-babel-lob-execute|org-babel-lob-get-info|org-babel-lob-ingest|org-babel-local-file-name|org-babel-map-call-lines|org-babel-map-executables|org-babel-map-inline-src-blocks|org-babel-map-src-blocks|org-babel-mark-block|org-babel-merge-params|org-babel-named-data-regexp-for-name|org-babel-named-src-block-regexp-for-name|org-babel-next-src-block|org-babel-noweb-p|org-babel-noweb-wrap|org-babel-number-p|org-babel-open-src-block-result|org-babel-params-from-properties|org-babel-parse-header-arguments|org-babel-parse-inline-src-block-match|org-babel-parse-multiple-vars|org-babel-parse-src-block-match|org-babel-pick-name|org-babel-pop-to-session-maybe|org-babel-pop-to-session|org-babel-previous-src-block|org-babel-process-file-name|org-babel-process-params|org-babel-put-colnames|org-babel-put-rownames|org-babel-read-link|org-babel-read-list|org-babel-read-result|org-babel-read-table|org-babel-read|org-babel-reassemble-table|org-babel-ref-at-ref-p|org-babel-ref-goto-headline-id|org-babel-ref-headline-body|org-babel-ref-index-list|org-babel-ref-parse|org-babel-ref-resolve|org-babel-ref-split-args|org-babel-remove-result|org-babel-remove-temporary-directory|org-babel-result-cond|org-babel-result-end|org-babel-result-hide-all|org-babel-result-hide-spec|org-babel-result-names|org-babel-result-to-file|org-babel-script-escape|org-babel-set-current-result-hash|org-babel-sha1-hash|org-babel-show-result-all|org-babel-spec-to-string|org-babel-speed-command-activate|org-babel-speed-command-hook|org-babel-src-block-names|org-babel-string-read|org-babel-switch-to-session-with-code|org-babel-switch-to-session|org-babel-table-truncate-at-newline|org-babel-tangle-clean|org-babel-tangle-collect-blocks|org-babel-tangle-comment-links|org-babel-tangle-file|org-babel-tangle-jump-to-org|org-babel-tangle-publish|org-babel-tangle-single-block|org-babel-tangle|org-babel-temp-file|org-babel-tramp-handle-call-process-region|org-babel-trim|org-babel-update-block-body|org-babel-view-src-block-info|org-babel-when-in-src-block|org-babel-where-is-src-block-head|org-babel-where-is-src-block-result|org-babel-with-temp-filebuffer|org-back-over-empty-lines|org-back-to-heading|org-backward-element|org-backward-heading-same-level|org-backward-paragraph|org-backward-sentence|org-base-buffer|org-batch-agenda-csv|org-batch-agenda|org-batch-store-agenda-views|org-bbdb-anniversaries|org-beamer-export-as-latex|org-beamer-export-to-latex|org-beamer-export-to-pdf|org-beamer-insert-options-template|org-beamer-mode|org-beamer-publish-to-latex|org-beamer-publish-to-pdf|org-beamer-select-environment|org-before-change-function|org-before-first-heading-p|org-beginning-of-dblock|org-beginning-of-item-list|org-beginning-of-item|org-beginning-of-line|org-between-regexps-p|org-block-map|org-block-todo-from-checkboxes|org-block-todo-from-children-or-siblings-or-parent|org-bookmark-jump-unhide|org-bound-and-true-p|org-buffer-list|org-buffer-narrowed-p|org-buffer-property-keys|org-cached-entry-get|org-calendar-goto-agenda|org-calendar-holiday|org-calendar-select-mouse|org-calendar-select|org-call-for-shift-select|org-call-with-arg|org-called-interactively-p|org-capture-import-remember-templates|org-capture-string|org-capture|org-cdlatex-math-modify|org-cdlatex-mode|org-cdlatex-underscore-caret|org-change-tag-in-region|org-char-to-string|org-check-after-date|org-check-agenda-file|org-check-and-save-marker|org-check-before-date|org-check-before-invisible-edit|org-check-dates-range|org-check-deadlines|org-check-external-command|org-check-for-hidden|org-check-running-clock|org-check-version|org-clean-visibility-after-subtree-move|org-clock-cancel|org-clock-display|org-clock-get-clocktable|org-clock-goto|org-clock-in-last|org-clock-in|org-clock-is-active|org-clock-out|org-clock-persistence-insinuate|org-clock-remove-overlays|org-clock-report|org-clock-sum|org-clock-update-time-maybe|org-clocktable-shift|org-clocktable-try-shift|org-clone-local-variables)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:org-clone-subtree-with-time-shift|org-closest-date|org-columns-compute|org-columns-get-format-and-top-level|org-columns-number-to-string|org-columns-remove-overlays|org-columns|org-combine-plists|org-command-at-point|org-comment-line-break-function|org-comment-or-uncomment-region|org-compatible-face|org-complete-expand-structure-template|org-completing-read-no-i|org-completing-read|org-compute-latex-and-related-regexp|org-compute-property-at-point|org-content|org-context-p|org-context|org-contextualize-keys|org-contextualize-validate-key|org-convert-to-odd-levels|org-convert-to-oddeven-levels|org-copy-face|org-copy-special|org-copy-subtree|org-copy-visible|org-copy|org-count-lines|org-count|org-create-customize-menu|org-create-dblock|org-create-formula--latex-header|org-create-formula-image-with-dvipng|org-create-formula-image-with-imagemagick|org-create-formula-image|org-create-math-formula|org-create-multibrace-regexp|org-ctrl-c-ctrl-c|org-ctrl-c-minus|org-ctrl-c-ret|org-ctrl-c-star|org-current-effective-time|org-current-level|org-current-line-string|org-current-line|org-current-time|org-cursor-to-region-beginning|org-customize|org-cut-special|org-cut-subtree|org-cycle-agenda-files|org-cycle-hide-archived-subtrees|org-cycle-hide-drawers|org-cycle-hide-inline-tasks|org-cycle-internal-global|org-cycle-internal-local|org-cycle-item-indentation|org-cycle-level|org-cycle-list-bullet|org-cycle-show-empty-lines|org-cycle|org-date-from-calendar|org-date-to-gregorian|org-datetree-find-date-create|org-days-to-iso-week|org-days-to-time|org-dblock-update|org-dblock-write:clocktable|org-dblock-write:columnview|org-deadline-close|org-deadline|org-decompose-region|org-default-apps|org-defkey|org-defvaralias|org-delete-all|org-delete-backward-char|org-delete-char|org-delete-directory|org-delete-property-globally|org-delete-property|org-demote-subtree|org-demote|org-detach-overlay|org-diary-sexp-entry|org-diary-to-ical-string|org-diary|org-display-custom-time|org-display-inline-images|org-display-inline-modification-hook|org-display-inline-remove-overlay|org-display-outline-path|org-display-warning|org-do-demote|org-do-emphasis-faces|org-do-latex-and-related|org-do-occur|org-do-promote|org-do-remove-indentation|org-do-sort|org-do-wrap|org-down-element|org-drag-element-backward|org-drag-element-forward|org-drag-line-backward|org-drag-line-forward|org-duration-string-to-minutes|org-dvipng-color-format|org-dvipng-color|org-edit-agenda-file-list|org-edit-fixed-width-region|org-edit-special|org-edit-src-abort|org-edit-src-code|org-edit-src-continue|org-edit-src-exit|org-edit-src-find-buffer|org-edit-src-find-region-and-lang|org-edit-src-get-indentation|org-edit-src-get-label-format|org-edit-src-get-lang|org-edit-src-save|org-element-at-point|org-element-context|org-element-interpret-data|org-email-link-description|org-emphasize|org-end-of-item-list|org-end-of-item|org-end-of-line|org-end-of-meta-data-and-drawers|org-end-of-subtree|org-entities-create-table|org-entities-help|org-entity-get-representation|org-entity-get|org-entity-latex-math-p|org-entry-add-to-multivalued-property|org-entry-beginning-position|org-entry-blocked-p|org-entry-delete|org-entry-end-position|org-entry-get-multivalued-property|org-entry-get-with-inheritance|org-entry-get|org-entry-is-done-p|org-entry-is-todo-p|org-entry-member-in-multivalued-property|org-entry-properties|org-entry-protect-space|org-entry-put-multivalued-property|org-entry-put|org-entry-remove-from-multivalued-property|org-entry-restore-space|org-escape-code-in-region|org-escape-code-in-string|org-eval-in-calendar|org-eval-in-environment|org-eval|org-evaluate-time-range|org-every|org-export-as|org-export-dispatch|org-export-insert-default-template|org-export-replace-region-by|org-export-string-as|org-export-to-buffer|org-export-to-file|org-extract-attributes|org-extract-log-state-settings|org-face-from-face-or-color|org-fast-tag-insert|org-fast-tag-selection|org-fast-tag-show-exit|org-fast-todo-selection|org-feed-goto-inbox|org-feed-show-raw-feed|org-feed-update-all|org-feed-update|org-file-apps-entry-match-against-dlink-p|org-file-complete-link|org-file-contents|org-file-equal-p|org-file-image-p|org-file-menu-entry|org-file-remote-p|org-files-list|org-fill-line-break-nobreak-p|org-fill-paragraph-with-timestamp-nobreak-p|org-fill-paragraph|org-fill-template|org-find-base-buffer-visiting|org-find-dblock|org-find-entry-with-id|org-find-exact-heading-in-directory|org-find-exact-headline-in-buffer|org-find-file-at-mouse|org-find-if|org-find-invisible-foreground|org-find-invisible|org-find-library-dir|org-find-olp|org-find-overlays|org-find-text-property-in-string|org-find-visible|org-first-headline-recenter|org-first-sibling-p|org-fit-window-to-buffer|org-fix-decoded-time|org-fix-indentation|org-fix-position-after-promote|org-fix-tags-on-the-fly|org-fixup-indentation|org-fixup-message-id-for-http|org-flag-drawer|org-flag-heading|org-flag-subtree|org-float-time|org-floor\\\\*|org-follow-timestamp-link|org-font-lock-add-priority-faces|org-font-lock-add-tag-faces|org-font-lock-ensure|org-font-lock-hook|org-fontify-entities|org-fontify-like-in-org-mode|org-fontify-meta-lines-and-blocks-1|org-fontify-meta-lines-and-blocks|org-footnote-action|org-footnote-all-labels|org-footnote-at-definition-p|org-footnote-at-reference-p|org-footnote-auto-adjust-maybe|org-footnote-create-definition|org-footnote-delete-definitions|org-footnote-delete-references|org-footnote-delete|org-footnote-get-definition|org-footnote-get-next-reference|org-footnote-goto-definition|org-footnote-goto-local-insertion-point|org-footnote-goto-previous-reference|org-footnote-in-valid-context-p|org-footnote-new|org-footnote-next-reference-or-definition|org-footnote-normalize-label|org-footnote-normalize|org-footnote-renumber-fn:N|org-footnote-unique-label|org-force-cycle-archived|org-force-self-insert|org-format-latex-as-mathml|org-format-latex-mathml-available-p|org-format-latex|org-format-outline-path|org-format-seconds|org-forward-element|org-forward-heading-same-level|org-forward-paragraph|org-forward-sentence|org-get-agenda-file-buffer|org-get-alist-option|org-get-at-bol|org-get-buffer-for-internal-link|org-get-buffer-tags|org-get-category|org-get-checkbox-statistics-face|org-get-compact-tod|org-get-cursor-date|org-get-date-from-calendar|org-get-deadline-time|org-get-entry|org-get-export-keywords|org-get-heading|org-get-indentation|org-get-indirect-buffer|org-get-last-sibling|org-get-level-face|org-get-limited-outline-regexp|org-get-local-tags-at|org-get-local-tags|org-get-local-variables|org-get-location|org-get-next-sibling|org-get-org-file|org-get-outline-path|org-get-packages-alist|org-get-previous-line-level|org-get-priority|org-get-property-block|org-get-repeat|org-get-scheduled-time|org-get-string-indentation|org-get-tag-face|org-get-tags-at|org-get-tags-string|org-get-tags|org-get-todo-face|org-get-todo-sequence-head|org-get-todo-state|org-get-valid-level|org-get-wdays|org-get-x-clipboard-compat|org-get-x-clipboard|org-git-version|org-global-cycle|org-global-tags-completion-table|org-goto-calendar|org-goto-first-child|org-goto-left|org-goto-line|org-goto-local-auto-isearch|org-goto-local-search-headings|org-goto-map|org-goto-marker-or-bmk|org-goto-quit|org-goto-ret|org-goto-right|org-goto-sibling|org-goto|org-heading-components|org-hh:mm-string-to-minutes|org-hidden-tree-error|org-hide-archived-subtrees|org-hide-block-all|org-hide-block-toggle-all|org-hide-block-toggle-maybe|org-hide-block-toggle|org-hide-wide-columns|org-highlight-new-match|org-hours-to-clocksum-string|org-html-convert-region-to-html|org-html-export-as-html|org-html-export-to-html|org-html-htmlize-generate-css|org-html-publish-to-html|org-icalendar-combine-agenda-files|org-icalendar-export-agenda-files|org-icalendar-export-to-ics|org-icompleting-read|org-id-copy|org-id-find-id-file|org-id-find|org-id-get-create|org-id-get-with-outline-drilling|org-id-get-with-outline-path-completion|org-id-get|org-id-goto|org-id-new|org-id-store-link|org-id-update-id-locations|org-ido-switchb|org-image-file-name-regexp|org-imenu-get-tree|org-imenu-new-marker|org-in-block-p|org-in-clocktable-p|org-in-commented-line|org-in-drawer-p|org-in-fixed-width-region-p|org-in-indented-comment-line|org-in-invisibility-spec-p|org-in-item-p|org-in-regexp|org-in-src-block-p|org-in-subtree-not-table-p|org-in-verbatim-emphasis|org-inc-effort|org-indent-block|org-indent-drawer|org-indent-item-tree|org-indent-item|org-indent-line-to|org-indent-line|org-indent-mode|org-indent-region|org-indent-to-column|org-info|org-inhibit-invisibility|org-insert-all-links|org-insert-columns-dblock|org-insert-comment|org-insert-drawer|org-insert-heading-after-current|org-insert-heading-respect-content|org-insert-heading|org-insert-item|org-insert-link-global|org-insert-link|org-insert-property-drawer|org-insert-subheading|org-insert-time-stamp|org-insert-todo-heading-respect-content|org-insert-todo-heading|org-insert-todo-subheading|org-inside-LaTeX-fragment-p|org-inside-latex-macro-p|org-install-agenda-files-menu|org-invisible-p2|org-irc-store-link|org-iread-file-name|org-isearch-end|org-isearch-post-command|org-iswitchb-completing-read|org-iswitchb|org-item-beginning-re|org-item-re|org-key|org-kill-is-subtree-p|org-kill-line|org-kill-new|org-kill-note-or-show-branches|org-last|org-latex-color-format|org-latex-color|org-latex-convert-region-to-latex|org-latex-export-as-latex|org-latex-export-to-latex|org-latex-export-to-pdf|org-latex-packages-to-string|org-latex-publish-to-latex|org-latex-publish-to-pdf|org-let|org-let2|org-level-increment|org-link-display-format|org-link-escape|org-link-expand-abbrev|org-link-fontify-links-to-this-file|org-link-prettify|org-link-search|org-link-try-special-completion|org-link-unescape-compound|org-link-unescape-single-byte-sequence|org-link-unescape|org-list-at-regexp-after-bullet-p|org-list-bullet-string|org-list-context|org-list-delete-item|org-list-get-all-items|org-list-get-bottom-point|org-list-get-bullet|org-list-get-checkbox|org-list-get-children|org-list-get-counter|org-list-get-first-item|org-list-get-ind|org-list-get-item-begin|org-list-get-item-end-before-blank|org-list-get-item-end|org-list-get-item-number|org-list-get-last-item|org-list-get-list-begin|org-list-get-list-end|org-list-get-list-type|org-list-get-next-item|org-list-get-nth|org-list-get-parent|org-list-get-prev-item|org-list-get-subtree|org-list-get-tag|org-list-get-top-point|org-list-has-child-p|org-list-in-valid-context-p|org-list-inc-bullet-maybe|org-list-indent-item-generic|org-list-insert-item|org-list-insert-radio-list|org-list-item-body-column|org-list-item-trim-br|org-list-make-subtree|org-list-parents-alist|org-list-prevs-alist|org-list-repair|org-list-search-backward|org-list-search-forward|org-list-search-generic|org-list-send-item|org-list-send-list|org-list-separating-blank-lines-number|org-list-set-bullet|org-list-set-checkbox|org-list-set-ind|org-list-set-item-visibility|org-list-set-nth|org-list-struct-apply-struct|org-list-struct-assoc-end|org-list-struct-fix-box|org-list-struct-fix-bul|org-list-struct-fix-ind|org-list-struct-fix-item-end|org-list-struct-indent|org-list-struct-outdent|org-list-swap-items|org-list-to-generic|org-list-to-html|org-list-to-latex|org-list-to-subtree|org-list-to-texinfo|org-list-use-alpha-bul-p|org-list-write-struct|org-load-modules-maybe|org-load-noerror-mustsuffix|org-local-logging|org-log-into-drawer|org-looking-at-p|org-looking-back|org-macro--collect-macros|org-macro-expand|org-macro-initialize-templates|org-macro-replace-all|org-make-link-regexps|org-make-link-string|org-make-options-regexp|org-make-org-heading-search-string|org-make-parameter-alist|org-make-tags-matcher|org-make-target-link-regexp|org-make-tdiff-string|org-map-dblocks|org-map-entries|org-map-region|org-map-tree|org-mark-element|org-mark-ring-goto|org-mark-ring-push|org-mark-subtree|org-match-any-p|org-match-line|org-match-sparse-tree|org-match-string-no-properties|org-matcher-time|org-maybe-intangible|org-md-convert-region-to-md|org-md-export-as-markdown|org-md-export-to-markdown|org-meta-return|org-metadown|org-metaleft|org-metaright|org-metaup|org-minutes-to-clocksum-string|org-minutes-to-hh:mm-string|org-mobile-pull|org-mobile-push|org-mode-flyspell-verify|org-mode-restart|org-mode|org-modifier-cursor-error)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:org-modify-ts-extra|org-move-item-down|org-move-item-up|org-move-subtree-down|org-move-subtree-up|org-move-to-column|org-narrow-to-block|org-narrow-to-element|org-narrow-to-subtree|org-next-block|org-next-item|org-next-link|org-no-popups|org-no-properties|org-no-read-only|org-no-warnings|org-normalize-color|org-not-nil|org-notes-order-reversed-p|org-number-sequence|org-occur-in-agenda-files|org-occur-link-in-agenda-files|org-occur-next-match|org-occur|org-odt-convert|org-odt-export-as-odf-and-open|org-odt-export-as-odf|org-odt-export-to-odt|org-offer-links-in-entry|org-olpath-completing-read|org-on-heading-p|org-on-target-p|org-op-to-function|org-open-at-mouse|org-open-at-point-global|org-open-at-point|org-open-file-with-emacs|org-open-file-with-system|org-open-file|org-open-line|org-open-link-from-string|org-optimize-window-after-visibility-change|org-order-calendar-date-args|org-org-export-as-org|org-org-export-to-org|org-org-menu|org-org-publish-to-org|org-outdent-item-tree|org-outdent-item|org-outline-level|org-outline-overlay-data|org-overlay-before-string|org-overlay-display|org-overview|org-parse-arguments|org-parse-time-string|org-paste-special|org-paste-subtree|org-pcomplete-case-double|org-pcomplete-initial|org-plist-delete|org-plot\\\\/gnuplot|org-point-at-end-of-empty-headline|org-point-in-group|org-pop-to-buffer-same-window|org-pos-in-match-range|org-prepare-dblock|org-preserve-lc|org-preview-latex-fragment|org-previous-block|org-previous-item|org-previous-line-empty-p|org-previous-link|org-print-speed-command|org-priority-down|org-priority-up|org-priority|org-promote-subtree|org-promote|org-propertize|org-property-action|org-property-get-allowed-values|org-property-inherit-p|org-property-next-allowed-value|org-property-or-variable-value|org-property-previous-allowed-value|org-property-values|org-protect-slash|org-publish-all|org-publish-current-file|org-publish-current-project|org-publish-project|org-publish|org-quote-csv-field|org-quote-vert|org-raise-scripts|org-re-property|org-re-timestamp|org-re|org-read-agenda-file-list|org-read-date-analyze|org-read-date-display|org-read-date-get-relative|org-read-date|org-read-property-name|org-read-property-value|org-rear-nonsticky-at|org-recenter-calendar|org-redisplay-inline-images|org-reduce|org-reduced-level|org-refile--get-location|org-refile-cache-check-set|org-refile-cache-clear|org-refile-cache-get|org-refile-cache-put|org-refile-check-position|org-refile-get-location|org-refile-get-targets|org-refile-goto-last-stored|org-refile-marker|org-refile-new-child|org-refile|org-refresh-category-properties|org-refresh-properties|org-reftex-citation|org-region-active-p|org-reinstall-markers-in-region|org-release-buffers|org-release|org-reload|org-remap|org-remove-angle-brackets|org-remove-double-quotes|org-remove-empty-drawer-at|org-remove-empty-overlays-at|org-remove-file|org-remove-flyspell-overlays-in|org-remove-font-lock-display-properties|org-remove-from-invisibility-spec|org-remove-if-not|org-remove-if|org-remove-indentation|org-remove-inline-images|org-remove-keyword-keys|org-remove-latex-fragment-image-overlays|org-remove-occur-highlights|org-remove-tabs|org-remove-timestamp-with-keyword|org-remove-uninherited-tags|org-replace-escapes|org-replace-match-keep-properties|org-require-autoloaded-modules|org-reset-checkbox-state-subtree|org-resolve-clocks|org-restart-font-lock|org-return-indent|org-return|org-reveal|org-reverse-string|org-revert-all-org-buffers|org-run-like-in-org-mode|org-save-all-org-buffers|org-save-markers-in-region|org-save-outline-visibility|org-sbe|org-scan-tags|org-schedule|org-search-not-self|org-search-view|org-select-frame-set-input-focus|org-self-insert-command|org-set-current-tags-overlay|org-set-effort|org-set-emph-re|org-set-font-lock-defaults|org-set-frame-title|org-set-local|org-set-modules|org-set-outline-overlay-data|org-set-packages-alist|org-set-property-and-value|org-set-property-function|org-set-property|org-set-regexps-and-options-for-tags|org-set-regexps-and-options|org-set-startup-visibility|org-set-tag-faces|org-set-tags-command|org-set-tags-to|org-set-tags|org-set-transient-map|org-set-visibility-according-to-property|org-setup-comments-handling|org-setup-filling|org-shiftcontroldown|org-shiftcontrolleft|org-shiftcontrolright|org-shiftcontrolup|org-shiftdown|org-shiftleft|org-shiftmetadown|org-shiftmetaleft|org-shiftmetaright|org-shiftmetaup|org-shiftright|org-shiftselect-error|org-shifttab|org-shiftup|org-shorten-string|org-show-block-all|org-show-context|org-show-empty-lines-in-parent|org-show-entry|org-show-hidden-entry|org-show-priority|org-show-siblings|org-show-subtree|org-show-todo-tree|org-skip-over-state-notes|org-skip-whitespace|org-small-year-to-year|org-some|org-sort-entries|org-sort-list|org-sort-remove-invisible|org-sort|org-sparse-tree|org-speed-command-activate|org-speed-command-default-hook|org-speed-command-help|org-speed-move-safe|org-speedbar-set-agenda-restriction|org-splice-latex-header|org-split-string|org-src-associate-babel-session|org-src-babel-configure-edit-buffer|org-src-construct-edit-buffer-name|org-src-do-at-code-block|org-src-do-key-sequence-at-code-block|org-src-edit-buffer-p|org-src-font-lock-fontify-block|org-src-fontify-block|org-src-fontify-buffer|org-src-get-lang-mode|org-src-in-org-buffer|org-src-mode-configure-edit-buffer|org-src-mode|org-src-native-tab-command-maybe|org-src-switch-to-buffer|org-src-tangle|org-store-agenda-views|org-store-link-props|org-store-link|org-store-log-note|org-store-new-agenda-file-list|org-string-match-p|org-string-nw-p|org-string-width|org-string<=|org-string<>|org-string>|org-string>=|org-sublist|org-submit-bug-report|org-substitute-posix-classes|org-subtree-end-visible-p|org-switch-to-buffer-other-window|org-switchb|org-table-align|org-table-begin|org-table-blank-field|org-table-convert-region|org-table-convert|org-table-copy-down|org-table-copy-region|org-table-create-or-convert-from-region|org-table-create-with-table\\\\.el|org-table-create|org-table-current-dline|org-table-cut-region|org-table-delete-column|org-table-edit-field|org-table-edit-formulas|org-table-end|org-table-eval-formula|org-table-export|org-table-field-info|org-table-get-stored-formulas|org-table-goto-column|org-table-hline-and-move|org-table-import|org-table-insert-column|org-table-insert-hline|org-table-insert-row|org-table-iterate-buffer-tables|org-table-iterate|org-table-justify-field-maybe|org-table-kill-row|org-table-map-tables|org-table-maybe-eval-formula|org-table-maybe-recalculate-line|org-table-move-column-left|org-table-move-column-right|org-table-move-column|org-table-move-row-down|org-table-move-row-up|org-table-move-row|org-table-next-field|org-table-next-row|org-table-p|org-table-paste-rectangle|org-table-previous-field|org-table-recalculate-buffer-tables|org-table-recalculate|org-table-recognize-table\\\\.el|org-table-rotate-recalc-marks|org-table-set-constants|org-table-sort-lines|org-table-sum|org-table-to-lisp|org-table-toggle-coordinate-overlays|org-table-toggle-formula-debugger|org-table-wrap-region|org-tag-inherit-p|org-tags-completion-function|org-tags-expand|org-tags-sparse-tree|org-tags-view|org-tbl-menu|org-texinfo-convert-region-to-texinfo|org-texinfo-publish-to-texinfo|org-thing-at-point|org-time-from-absolute|org-time-stamp-format|org-time-stamp-inactive|org-time-stamp-to-now|org-time-stamp|org-time-string-to-absolute|org-time-string-to-seconds|org-time-string-to-time|org-time-today|org-time<|org-time<=|org-time<>|org-time=|org-time>|org-time>=|org-timer-change-times-in-region|org-timer-item|org-timer-set-timer|org-timer-start|org-timer|org-timestamp-change|org-timestamp-down-day|org-timestamp-down|org-timestamp-format|org-timestamp-has-time-p|org-timestamp-split-range|org-timestamp-translate|org-timestamp-up-day|org-timestamp-up|org-today|org-todo-list|org-todo-trigger-tag-changes|org-todo-yesterday|org-todo|org-toggle-archive-tag|org-toggle-checkbox|org-toggle-comment|org-toggle-custom-properties-visibility|org-toggle-fixed-width-section|org-toggle-heading|org-toggle-inline-images|org-toggle-item|org-toggle-link-display|org-toggle-ordered-property|org-toggle-pretty-entities|org-toggle-sticky-agenda|org-toggle-tag|org-toggle-tags-groups|org-toggle-time-stamp-overlays|org-toggle-timestamp-type|org-tr-level|org-translate-link-from-planner|org-translate-link|org-translate-time|org-transpose-element|org-transpose-words|org-tree-to-indirect-buffer|org-trim|org-truely-invisible-p|org-try-cdlatex-tab|org-try-structure-completion|org-unescape-code-in-region|org-unescape-code-in-string|org-unfontify-region|org-unindent-buffer|org-uniquify-alist|org-uniquify|org-unlogged-message|org-unmodified|org-up-element|org-up-heading-all|org-up-heading-safe|org-update-all-dblocks|org-update-checkbox-count-maybe|org-update-checkbox-count|org-update-dblock|org-update-parent-todo-statistics|org-update-property-plist|org-update-radio-target-regexp|org-update-statistics-cookies|org-uuidgen-p|org-version-check|org-version|org-with-gensyms|org-with-limited-levels|org-with-point-at|org-with-remote-undo|org-with-silent-modifications|org-with-wide-buffer|org-without-partial-completion|org-wrap|org-xemacs-without-invisibility|org-xor|org-yank-folding-would-swallow-text|org-yank-generic|org-yank|org<>|orgstruct\\\\+\\\\+-mode|orgstruct-error|orgstruct-make-binding|orgstruct-mode|orgstruct-setup|orgtbl-mode|orgtbl-to-csv|orgtbl-to-generic|orgtbl-to-html|orgtbl-to-latex|orgtbl-to-orgtbl|orgtbl-to-texinfo|orgtbl-to-tsv|oset-default|oset|other-frame|other-window-for-scrolling|outline-back-to-heading|outline-backward-same-level|outline-demote|outline-end-of-heading|outline-end-of-subtree|outline-flag-region|outline-flag-subtree|outline-font-lock-face|outline-forward-same-level|outline-get-last-sibling|outline-get-next-sibling|outline-head-from-level|outline-headers-as-kill|outline-insert-heading|outline-invent-heading|outline-invisible-p|outline-isearch-open-invisible|outline-level|outline-map-region|outline-mark-subtree|outline-minor-mode|outline-mode|outline-move-subtree-down|outline-move-subtree-up|outline-next-heading|outline-next-preface|outline-next-visible-heading|outline-on-heading-p|outline-previous-heading|outline-previous-visible-heading|outline-promote|outline-reveal-toggle-invisible|outline-show-heading|outline-toggle-children|outline-up-heading|outlineify-sticky|outlinify-sticky|overlay-lists|overload-docstring-extension|overload-obsoleted-by|overload-that-obsolete|package--ac-desc-extras--cmacro|package--ac-desc-extras|package--ac-desc-kind--cmacro|package--ac-desc-kind|package--ac-desc-reqs--cmacro|package--ac-desc-reqs|package--ac-desc-summary--cmacro|package--ac-desc-summary|package--ac-desc-version--cmacro|package--ac-desc-version|package--add-to-archive-contents|package--alist-to-plist-args|package--archive-file-exists-p|package--bi-desc-reqs--cmacro|package--bi-desc-reqs|package--bi-desc-summary--cmacro|package--bi-desc-summary|package--bi-desc-version--cmacro|package--bi-desc-version|package--check-signature|package--compile|package--description-file|package--display-verify-error|package--download-one-archive|package--from-builtin|package--has-keyword-p|package--list-loaded-files|package--make-autoloads-and-stuff|package--mapc|package--prepare-dependencies|package--push|package--read-archive-file|package--with-work-buffer|package--write-file-no-coding|package-activate-1|package-activate|package-all-keywords|package-archive-base|package-autoload-ensure-default-file|package-buffer-info|package-built-in-p|package-compute-transaction|package-delete|package-desc--keywords|package-desc-archive--cmacro|package-desc-archive|package-desc-create--cmacro|package-desc-create|package-desc-dir--cmacro|package-desc-dir|package-desc-extras--cmacro|package-desc-extras|package-desc-from-define|package-desc-full-name|package-desc-kind--cmacro|package-desc-kind|package-desc-name--cmacro|package-desc-name|package-desc-p--cmacro|package-desc-p|package-desc-reqs--cmacro|package-desc-reqs|package-desc-signed--cmacro|package-desc-signed|package-desc-status|package-desc-suffix|package-desc-summary--cmacro|package-desc-summary|package-desc-version--cmacro|package-desc-version|package-disabled-p|package-download-transaction|package-generate-autoloads|package-generate-description-file|package-import-keyring|package-install-button-action|package-install-file|package-install-from-archive)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:package-install-from-buffer|package-install|package-installed-p|package-keyword-button-action|package-list-packages-no-fetch|package-list-packages|package-load-all-descriptors|package-load-descriptor|package-make-ac-desc--cmacro|package-make-ac-desc|package-make-builtin--cmacro|package-make-builtin|package-make-button|package-menu--archive-predicate|package-menu--description-predicate|package-menu--find-upgrades|package-menu--generate|package-menu--name-predicate|package-menu--print-info|package-menu--refresh|package-menu--status-predicate|package-menu--version-predicate|package-menu-backup-unmark|package-menu-describe-package|package-menu-execute|package-menu-filter|package-menu-get-status|package-menu-mark-delete|package-menu-mark-install|package-menu-mark-obsolete-for-deletion|package-menu-mark-unmark|package-menu-mark-upgrades|package-menu-mode|package-menu-quick-help|package-menu-refresh|package-menu-view-commentary|package-process-define-package|package-read-all-archive-contents|package-read-archive-contents|package-read-from-string|package-refresh-contents|package-show-package-list|package-strip-rcs-id|package-tar-file-info|package-unpack|package-untar-buffer|package-version-join|pages-copy-header-and-position|pages-directory-address-mode|pages-directory-for-addresses|pages-directory-goto-with-mouse|pages-directory-goto|pages-directory-mode|pages-directory|pairlis|paragraph-indent-minor-mode|paragraph-indent-text-mode|parse-iso8601-time-string|parse-time-string-chars|parse-time-string|parse-time-tokenize|pascal-beg-of-defun|pascal-build-defun-re|pascal-calculate-indent|pascal-capitalize-keywords|pascal-change-keywords|pascal-comment-area|pascal-comp-defun|pascal-complete-word|pascal-completion|pascal-completions-at-point|pascal-declaration-beg|pascal-declaration-end|pascal-downcase-keywords|pascal-end-of-defun|pascal-end-of-statement|pascal-func-completion|pascal-get-completion-decl|pascal-get-default-symbol|pascal-get-lineup-indent|pascal-goto-defun|pascal-hide-other-defuns|pascal-indent-case|pascal-indent-command|pascal-indent-comment|pascal-indent-declaration|pascal-indent-level|pascal-indent-line|pascal-indent-paramlist|pascal-insert-block|pascal-keyword-completion|pascal-mark-defun|pascal-mode|pascal-outline-change|pascal-outline-goto-defun|pascal-outline-mode|pascal-outline-next-defun|pascal-outline-prev-defun|pascal-outline|pascal-set-auto-comments|pascal-show-all|pascal-show-completions|pascal-star-comment|pascal-string-diff|pascal-type-completion|pascal-uncomment-area|pascal-upcase-keywords|pascal-var-completion|pascal-within-string|password-cache-add|password-cache-remove|password-in-cache-p|password-read-and-add|password-read-from-cache|password-read|password-reset|pcase--and|pcase--app-subst-match|pcase--app-subst-rest|pcase--eval|pcase--expand|pcase--fgrep|pcase--flip|pcase--funcall|pcase--if|pcase--let\\\\*|pcase--macroexpand|pcase--mark-used|pcase--match|pcase--mutually-exclusive-p|pcase--self-quoting-p|pcase--small-branch-p|pcase--split-equal|pcase--split-match|pcase--split-member|pcase--split-pred|pcase--split-rest|pcase--trivial-upat-p|pcase--u|pcase--u1|pcase-codegen|pcase-defmacro|pcase-dolist|pcase-exhaustive|pcase-let\\\\*|pcase-let|pcomplete\\\\/ack-grep|pcomplete\\\\/ack|pcomplete\\\\/ag|pcomplete\\\\/bzip2|pcomplete\\\\/cd|pcomplete\\\\/chgrp|pcomplete\\\\/chown|pcomplete\\\\/cvs|pcomplete\\\\/erc-mode\\\\/CLEARTOPIC|pcomplete\\\\/erc-mode\\\\/CTCP|pcomplete\\\\/erc-mode\\\\/DCC|pcomplete\\\\/erc-mode\\\\/DEOP|pcomplete\\\\/erc-mode\\\\/DESCRIBE|pcomplete\\\\/erc-mode\\\\/IDLE|pcomplete\\\\/erc-mode\\\\/KICK|pcomplete\\\\/erc-mode\\\\/LEAVE|pcomplete\\\\/erc-mode\\\\/LOAD|pcomplete\\\\/erc-mode\\\\/ME|pcomplete\\\\/erc-mode\\\\/MODE|pcomplete\\\\/erc-mode\\\\/MSG|pcomplete\\\\/erc-mode\\\\/NAMES|pcomplete\\\\/erc-mode\\\\/NOTICE|pcomplete\\\\/erc-mode\\\\/NOTIFY|pcomplete\\\\/erc-mode\\\\/OP|pcomplete\\\\/erc-mode\\\\/PART|pcomplete\\\\/erc-mode\\\\/QUERY|pcomplete\\\\/erc-mode\\\\/SAY|pcomplete\\\\/erc-mode\\\\/SOUND|pcomplete\\\\/erc-mode\\\\/TOPIC|pcomplete\\\\/erc-mode\\\\/UNIGNORE|pcomplete\\\\/erc-mode\\\\/WHOIS|pcomplete\\\\/erc-mode\\\\/complete-command|pcomplete\\\\/eshell-mode\\\\/eshell-debug|pcomplete\\\\/eshell-mode\\\\/export|pcomplete\\\\/eshell-mode\\\\/setq|pcomplete\\\\/eshell-mode\\\\/unset|pcomplete\\\\/gdb|pcomplete\\\\/gzip|pcomplete\\\\/kill|pcomplete\\\\/make|pcomplete\\\\/mount|pcomplete\\\\/org-mode\\\\/block-option\\\\/clocktable|pcomplete\\\\/org-mode\\\\/block-option\\\\/src|pcomplete\\\\/org-mode\\\\/drawer|pcomplete\\\\/org-mode\\\\/file-option\\\\/author|pcomplete\\\\/org-mode\\\\/file-option\\\\/bind|pcomplete\\\\/org-mode\\\\/file-option\\\\/date|pcomplete\\\\/org-mode\\\\/file-option\\\\/email|pcomplete\\\\/org-mode\\\\/file-option\\\\/exclude_tags|pcomplete\\\\/org-mode\\\\/file-option\\\\/filetags|pcomplete\\\\/org-mode\\\\/file-option\\\\/infojs_opt|pcomplete\\\\/org-mode\\\\/file-option\\\\/language|pcomplete\\\\/org-mode\\\\/file-option\\\\/options|pcomplete\\\\/org-mode\\\\/file-option\\\\/priorities|pcomplete\\\\/org-mode\\\\/file-option\\\\/select_tags|pcomplete\\\\/org-mode\\\\/file-option\\\\/startup|pcomplete\\\\/org-mode\\\\/file-option\\\\/tags|pcomplete\\\\/org-mode\\\\/file-option\\\\/title|pcomplete\\\\/org-mode\\\\/file-option|pcomplete\\\\/org-mode\\\\/link|pcomplete\\\\/org-mode\\\\/prop|pcomplete\\\\/org-mode\\\\/searchhead|pcomplete\\\\/org-mode\\\\/tag|pcomplete\\\\/org-mode\\\\/tex|pcomplete\\\\/org-mode\\\\/todo|pcomplete\\\\/pushd|pcomplete\\\\/rm|pcomplete\\\\/rmdir|pcomplete\\\\/rpm|pcomplete\\\\/scp|pcomplete\\\\/ssh|pcomplete\\\\/tar|pcomplete\\\\/time|pcomplete\\\\/tlmgr|pcomplete\\\\/umount|pcomplete\\\\/which|pcomplete\\\\/xargs|pcomplete--common-suffix|pcomplete--entries|pcomplete--help|pcomplete--here|pcomplete--test|pcomplete-actual-arg|pcomplete-all-entries|pcomplete-arg|pcomplete-begin|pcomplete-comint-setup|pcomplete-command-name|pcomplete-completions-at-point|pcomplete-completions|pcomplete-continue|pcomplete-dirs-or-entries|pcomplete-dirs|pcomplete-do-complete|pcomplete-entries|pcomplete-erc-all-nicks|pcomplete-erc-channels|pcomplete-erc-command-name|pcomplete-erc-commands|pcomplete-erc-nicks|pcomplete-erc-not-ops|pcomplete-erc-ops|pcomplete-erc-parse-arguments|pcomplete-erc-setup|pcomplete-event-matches-key-specifier-p|pcomplete-executables|pcomplete-expand-and-complete|pcomplete-expand|pcomplete-find-completion-function|pcomplete-help|pcomplete-here\\\\*|pcomplete-here|pcomplete-insert-entry|pcomplete-list|pcomplete-match-beginning|pcomplete-match-end|pcomplete-match-string|pcomplete-match|pcomplete-next-arg|pcomplete-opt|pcomplete-parse-arguments|pcomplete-parse-buffer-arguments|pcomplete-parse-comint-arguments|pcomplete-process-result|pcomplete-quote-argument|pcomplete-read-event|pcomplete-restore-windows|pcomplete-reverse|pcomplete-shell-setup|pcomplete-show-completions|pcomplete-std-complete|pcomplete-stub|pcomplete-test|pcomplete-uniqify-list|pcomplete-unquote-argument|pcomplete|pdb|pending-delete-mode|perl-backward-to-noncomment|perl-backward-to-start-of-continued-exp|perl-beginning-of-function|perl-calculate-indent|perl-comment-indent|perl-continuation-line-p|perl-current-defun-name|perl-electric-noindent-p|perl-electric-terminator|perl-end-of-function|perl-font-lock-syntactic-face-function|perl-hanging-paren-p|perl-indent-command|perl-indent-exp|perl-indent-line|perl-indent-new-calculate|perl-mark-function|perl-mode|perl-outline-level|perl-quote-syntax-table|perl-syntax-propertize-function|perl-syntax-propertize-special-constructs|perldb|picture-backward-clear-column|picture-backward-column|picture-beginning-of-line|picture-clear-column|picture-clear-line|picture-clear-rectangle-to-register|picture-clear-rectangle|picture-current-line|picture-delete-char|picture-draw-rectangle|picture-duplicate-line|picture-end-of-line|picture-forward-column|picture-insert-rectangle|picture-insert|picture-mode-exit|picture-mode|picture-motion-reverse|picture-motion|picture-mouse-set-point|picture-move-down|picture-move-up|picture-move|picture-movement-down|picture-movement-left|picture-movement-ne|picture-movement-nw|picture-movement-right|picture-movement-se|picture-movement-sw|picture-movement-up|picture-newline|picture-open-line|picture-replace-match|picture-self-insert|picture-set-motion|picture-set-tab-stops|picture-snarf-rectangle|picture-tab-search|picture-tab|picture-update-desired-column|picture-yank-at-click|picture-yank-rectangle-from-register|picture-yank-rectangle|pike-font-lock-keywords-2|pike-font-lock-keywords-3|pike-font-lock-keywords|pike-mode|ping|plain-TeX-mode|plain-tex-mode|play-sound-internal|plstore-delete|plstore-find|plstore-get-file|plstore-mode|plstore-open|plstore-put|plstore-save|plusp|po-find-charset|po-find-file-coding-system-guts|po-find-file-coding-system|point-at-bol|point-at-eol|point-to-register|pong-display-options|pong-init-buffer|pong-init|pong-move-down|pong-move-left|pong-move-right|pong-move-up|pong-pause|pong-quit|pong-resume|pong-update-bat|pong-update-game|pong-update-score|pong|pop-global-mark|pop-tag-mark|pop-to-buffer-same-window|pop-to-mark-command|pop3-movemail|popup-menu-normalize-position|popup-menu|position-if-not|position-if|position|posn-set-point|post-read-decode-hz|pp-buffer|pp-display-expression|pp-eval-expression|pp-eval-last-sexp|pp-last-sexp|pp-macroexpand-expression|pp-macroexpand-last-sexp|pp-to-string|pr-alist-custom-set|pr-article-date|pr-auto-mode-p|pr-call-process|pr-choice-alist|pr-command|pr-complete-alist|pr-create-interface|pr-customize|pr-delete-file-if-exists|pr-delete-file|pr-despool-preview|pr-despool-print|pr-despool-ps-print|pr-despool-using-ghostscript|pr-do-update-menus|pr-dosify-file-name|pr-eval-alist|pr-eval-local-alist|pr-eval-setting-alist|pr-even-or-odd-pages|pr-expand-file-name|pr-file-list|pr-find-buffer-visiting|pr-find-command|pr-get-symbol|pr-global-menubar|pr-gnus-lpr|pr-gnus-print|pr-help|pr-i-directory|pr-i-ps-send|pr-insert-button|pr-insert-checkbox|pr-insert-italic|pr-insert-menu|pr-insert-radio-button|pr-insert-section-1|pr-insert-section-2|pr-insert-section-3|pr-insert-section-4|pr-insert-section-5|pr-insert-section-6|pr-insert-section-7|pr-insert-toggle|pr-interactive-dir-args|pr-interactive-dir|pr-interactive-n-up-file|pr-interactive-n-up-inout|pr-interactive-n-up|pr-interactive-ps-dir-args|pr-interactive-regexp|pr-interface-directory|pr-interface-help|pr-interface-infile|pr-interface-outfile|pr-interface-preview|pr-interface-printify|pr-interface-ps-print|pr-interface-ps|pr-interface-quit|pr-interface-save|pr-interface-txt-print|pr-interface|pr-keep-region-active|pr-kill-help|pr-kill-local-variable|pr-local-variable|pr-lpr-message-from-summary|pr-menu-alist|pr-menu-bind|pr-menu-char-height|pr-menu-char-width|pr-menu-create|pr-menu-get-item|pr-menu-index|pr-menu-lock|pr-menu-lookup|pr-menu-position|pr-menu-set-item-name|pr-menu-set-ps-title|pr-menu-set-txt-title|pr-menu-set-utility-title|pr-mh-current-message|pr-mh-lpr-1|pr-mh-lpr-2|pr-mh-print-1|pr-mh-print-2|pr-mode-alist-p|pr-mode-lpr|pr-mode-print|pr-path-command|pr-printify-buffer|pr-printify-directory|pr-printify-region|pr-prompt-gs|pr-prompt-region|pr-prompt|pr-ps-buffer-preview|pr-ps-buffer-print|pr-ps-buffer-ps-print|pr-ps-buffer-using-ghostscript|pr-ps-directory-preview|pr-ps-directory-print|pr-ps-directory-ps-print|pr-ps-directory-using-ghostscript|pr-ps-fast-fire|pr-ps-file-list|pr-ps-file-preview|pr-ps-file-print|pr-ps-file-ps-print|pr-ps-file-up-preview|pr-ps-file-up-ps-print|pr-ps-file-using-ghostscript|pr-ps-file|pr-ps-infile-preprint|pr-ps-message-from-summary|pr-ps-mode-preview|pr-ps-mode-print|pr-ps-mode-ps-print|pr-ps-mode-using-ghostscript|pr-ps-mode|pr-ps-name-custom-set|pr-ps-name|pr-ps-outfile-preprint|pr-ps-preview|pr-ps-print|pr-ps-region-preview|pr-ps-region-print|pr-ps-region-ps-print|pr-ps-region-using-ghostscript|pr-ps-set-printer|pr-ps-set-utility|pr-ps-using-ghostscript|pr-ps-utility-args|pr-ps-utility-custom-set|pr-ps-utility-process|pr-ps-utility|pr-read-string|pr-region-active-p|pr-region-active-string|pr-region-active-symbol|pr-remove-nil-from-list|pr-rmail-lpr|pr-rmail-print|pr-save-file-modes|pr-set-dir-args|pr-set-keymap-name|pr-set-keymap-parents|pr-set-n-up-and-filename|pr-set-outfilename|pr-set-ps-dir-args|pr-setup|pr-show-lpr-setup|pr-show-pr-setup|pr-show-ps-setup|pr-show-setup|pr-standard-file-name|pr-switches-string|pr-switches|pr-text2ps|pr-toggle-duplex-menu|pr-toggle-duplex|pr-toggle-faces-menu|pr-toggle-faces|pr-toggle-file-duplex-menu|pr-toggle-file-duplex)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:pr-toggle-file-landscape-menu|pr-toggle-file-landscape|pr-toggle-file-tumble-menu|pr-toggle-file-tumble|pr-toggle-ghostscript-menu|pr-toggle-ghostscript|pr-toggle-header-frame-menu|pr-toggle-header-frame|pr-toggle-header-menu|pr-toggle-header|pr-toggle-landscape-menu|pr-toggle-landscape|pr-toggle-line-menu|pr-toggle-line|pr-toggle-lock-menu|pr-toggle-lock|pr-toggle-mode-menu|pr-toggle-mode|pr-toggle-region-menu|pr-toggle-region|pr-toggle-spool-menu|pr-toggle-spool|pr-toggle-tumble-menu|pr-toggle-tumble|pr-toggle-upside-down-menu|pr-toggle-upside-down|pr-toggle-zebra-menu|pr-toggle-zebra|pr-toggle|pr-txt-buffer|pr-txt-directory|pr-txt-fast-fire|pr-txt-mode|pr-txt-name-custom-set|pr-txt-name|pr-txt-print|pr-txt-region|pr-txt-set-printer|pr-unixify-file-name|pr-update-checkbox|pr-update-menus|pr-update-mode-line|pr-update-radio-button|pr-update-var|pr-using-ghostscript-p|pr-visible-p|pr-vm-lpr|pr-vm-print|pr-widget-field-action|pre-write-encode-hz|preceding-sexp|prefer-coding-system|prepare-abbrev-list-buffer|prepend-to-buffer|prepend-to-register|prettify-symbols--compose-symbol|prettify-symbols--make-keywords|prettify-symbols-mode-set-explicitly|prettify-symbols-mode|previous-buffer|previous-completion|previous-error-no-select|previous-error|previous-ifdef|previous-line-or-history-element|previous-line|previous-logical-line|previous-multiframe-window|previous-page|prin1-char|princ-list|print-buffer|print-help-return-message|print-region-1|print-region-new-buffer|print-region|printify-region|proced-<|proced-auto-update-timer|proced-children-alist|proced-children-pids|proced-do-mark-all|proced-do-mark|proced-filter-children|proced-filter-interactive|proced-filter-parents|proced-filter|proced-format-args|proced-format-interactive|proced-format-start|proced-format-time|proced-format-tree|proced-format-ttname|proced-format|proced-header-line|proced-help|proced-insert-mark|proced-log-summary|proced-log|proced-mark-all|proced-mark-children|proced-mark-parents|proced-mark-process-alist|proced-mark|proced-marked-processes|proced-marker-regexp|proced-menu|proced-mode|proced-move-to-goal-column|proced-omit-process|proced-omit-processes|proced-pid-at-point|proced-process-attributes|proced-process-tree-internal|proced-process-tree|proced-refine|proced-renice|proced-revert|proced-send-signal|proced-sort-header|proced-sort-interactive|proced-sort-p|proced-sort-pcpu|proced-sort-pid|proced-sort-pmem|proced-sort-start|proced-sort-time|proced-sort-user|proced-sort|proced-string-lessp|proced-success-message|proced-time-lessp|proced-toggle-auto-update|proced-toggle-marks|proced-toggle-tree|proced-tree-insert|proced-tree|proced-undo|proced-unmark-all|proced-unmark-backward|proced-unmark|proced-update|proced-why|proced-with-processes-buffer|proced-xor|proced|process-filter-multibyte-p|process-inherit-coding-system-flag|process-kill-without-query|process-menu-delete-process|process-menu-mode|process-menu-visit-buffer|proclaim|produce-allout-mode-menubar-entries|profiler-calltree-build-1|profiler-calltree-build-unified|profiler-calltree-build|profiler-calltree-children--cmacro|profiler-calltree-children|profiler-calltree-compute-percentages|profiler-calltree-count--cmacro|profiler-calltree-count-percent--cmacro|profiler-calltree-count-percent|profiler-calltree-count|profiler-calltree-count<|profiler-calltree-count>|profiler-calltree-depth|profiler-calltree-entry--cmacro|profiler-calltree-entry|profiler-calltree-find|profiler-calltree-leaf-p|profiler-calltree-p--cmacro|profiler-calltree-p|profiler-calltree-parent--cmacro|profiler-calltree-parent|profiler-calltree-sort|profiler-calltree-walk|profiler-compare-logs|profiler-compare-profiles|profiler-cpu-log|profiler-cpu-profile|profiler-cpu-running-p|profiler-cpu-start|profiler-cpu-stop|profiler-ensure-string|profiler-find-profile-other-frame|profiler-find-profile-other-window|profiler-find-profile|profiler-fixup-backtrace|profiler-fixup-entry|profiler-fixup-log|profiler-fixup-profile|profiler-format-entry|profiler-format-number|profiler-format-percent|profiler-format|profiler-make-calltree--cmacro|profiler-make-calltree|profiler-make-profile--cmacro|profiler-make-profile|profiler-memory-log|profiler-memory-profile|profiler-memory-running-p|profiler-memory-start|profiler-memory-stop|profiler-profile-diff-p--cmacro|profiler-profile-diff-p|profiler-profile-log--cmacro|profiler-profile-log|profiler-profile-tag--cmacro|profiler-profile-tag|profiler-profile-timestamp--cmacro|profiler-profile-timestamp|profiler-profile-type--cmacro|profiler-profile-type|profiler-profile-version--cmacro|profiler-profile-version|profiler-read-profile|profiler-report-ascending-sort|profiler-report-calltree-at-point|profiler-report-collapse-entry|profiler-report-compare-profile|profiler-report-cpu|profiler-report-descending-sort|profiler-report-describe-entry|profiler-report-expand-entry|profiler-report-find-entry|profiler-report-header-line-format|profiler-report-insert-calltree-children|profiler-report-insert-calltree|profiler-report-line-format|profiler-report-make-buffer-name|profiler-report-make-entry-part|profiler-report-make-name-part|profiler-report-memory|profiler-report-menu|profiler-report-mode|profiler-report-move-to-entry|profiler-report-next-entry|profiler-report-previous-entry|profiler-report-profile-other-frame|profiler-report-profile-other-window|profiler-report-profile|profiler-report-render-calltree-1|profiler-report-render-calltree|profiler-report-render-reversed-calltree|profiler-report-rerender-calltree|profiler-report-setup-buffer-1|profiler-report-setup-buffer|profiler-report-toggle-entry|profiler-report-write-profile|profiler-report|profiler-reset|profiler-running-p|profiler-start|profiler-stop|profiler-write-profile|prog-indent-sexp|progress-reporter-do-update|progv|project-add-file|project-compile-project|project-compile-target|project-debug-target|project-delete-target|project-dist-files|project-edit-file-target|project-interactive-select-target|project-make-dist|project-new-target-custom|project-new-target|project-remove-file|project-rescan|project-run-target|prolog-Info-follow-nearest-node|prolog-atleast-version|prolog-atom-under-point|prolog-beginning-of-clause|prolog-beginning-of-predicate|prolog-bsts|prolog-buffer-module|prolog-build-info-alist|prolog-build-prolog-command|prolog-clause-end|prolog-clause-info|prolog-clause-start|prolog-comment-limits|prolog-compile-buffer|prolog-compile-file|prolog-compile-predicate|prolog-compile-region|prolog-compile-string|prolog-consult-buffer|prolog-consult-compile-buffer|prolog-consult-compile-file|prolog-consult-compile-filter|prolog-consult-compile-predicate|prolog-consult-compile-region|prolog-consult-compile|prolog-consult-file|prolog-consult-predicate|prolog-consult-region|prolog-consult-string|prolog-debug-off|prolog-debug-on|prolog-disable-sicstus-sd|prolog-do-auto-fill|prolog-edit-menu-insert-move|prolog-edit-menu-runtime|prolog-electric--colon|prolog-electric--dash|prolog-electric--dot|prolog-electric--if-then-else|prolog-electric--underscore|prolog-enable-sicstus-sd|prolog-end-of-clause|prolog-end-of-predicate|prolog-ensure-process|prolog-face-name-p|prolog-fill-paragraph|prolog-find-documentation|prolog-find-term|prolog-find-unmatched-paren|prolog-find-value-by-system|prolog-font-lock-keywords|prolog-font-lock-object-matcher|prolog-get-predspec|prolog-goto-predicate-info|prolog-goto-prolog-process-buffer|prolog-guess-fill-prefix|prolog-help-apropos|prolog-help-info|prolog-help-on-predicate|prolog-help-online|prolog-in-object|prolog-indent-buffer|prolog-indent-predicate|prolog-inferior-buffer|prolog-inferior-guess-flavor|prolog-inferior-menu-all|prolog-inferior-menu|prolog-inferior-mode|prolog-inferior-self-insert-command|prolog-input-filter|prolog-insert-module-modeline|prolog-insert-next-clause|prolog-insert-predicate-template|prolog-insert-predspec|prolog-mark-clause|prolog-mark-predicate|prolog-menu-help|prolog-menu|prolog-mode-keybindings-common|prolog-mode-keybindings-edit|prolog-mode-keybindings-inferior|prolog-mode-variables|prolog-mode-version|prolog-mode|prolog-old-process-buffer|prolog-old-process-file|prolog-old-process-predicate|prolog-old-process-region|prolog-paren-balance|prolog-parse-sicstus-compilation-errors|prolog-post-self-insert|prolog-pred-end|prolog-pred-start|prolog-process-insert-string|prolog-program-name|prolog-program-switches|prolog-prompt-regexp|prolog-read-predicate|prolog-replace-in-string|prolog-smie-backward-token|prolog-smie-forward-token|prolog-smie-rules|prolog-temporary-file|prolog-toggle-sicstus-sd|prolog-trace-off|prolog-trace-on|prolog-uncomment-region|prolog-variables-to-anonymous|prolog-view-predspec|prolog-zip-off|prolog-zip-on|prompt-for-change-log-name|propertized-buffer-identification|prune-directory-list|ps-alist-position|ps-avg-char-width|ps-background-image|ps-background-pages|ps-background-text|ps-background|ps-basic-plot-str|ps-basic-plot-string|ps-basic-plot-whitespace|ps-begin-file|ps-begin-job|ps-begin-page|ps-boolean-capitalized|ps-boolean-constant|ps-build-reference-face-lists|ps-color-device|ps-color-scale|ps-color-values|ps-comment-string|ps-continue-line|ps-control-character|ps-count-lines-preprint|ps-count-lines|ps-del|ps-despool|ps-do-despool|ps-end-job|ps-end-page|ps-end-sheet|ps-extend-face-list|ps-extend-face|ps-extension-bit|ps-face-attribute-list|ps-face-attributes|ps-face-background-color-p|ps-face-background-name|ps-face-background|ps-face-bold-p|ps-face-box-p|ps-face-color-p|ps-face-extract-color|ps-face-foreground-color-p|ps-face-foreground-name|ps-face-italic-p|ps-face-overline-p|ps-face-strikeout-p|ps-face-underlined-p|ps-find-wrappoint|ps-float-format|ps-flush-output|ps-font-alist|ps-font-lock-face-attributes|ps-font-number|ps-font|ps-fonts|ps-format-color|ps-frame-parameter|ps-generate-header-line|ps-generate-header|ps-generate-postscript-with-faces|ps-generate-postscript-with-faces1|ps-generate-postscript|ps-generate|ps-get-boundingbox|ps-get-buffer-name|ps-get-font-size|ps-get-page-dimensions|ps-get-size|ps-get|ps-header-dirpart|ps-header-page|ps-header-sheet|ps-init-output-queue|ps-insert-file|ps-insert-string|ps-kill-emacs-check|ps-line-height|ps-line-lengths-internal|ps-line-lengths|ps-lookup|ps-map-face|ps-mark-active-p|ps-message-log-max|ps-mode--syntax-propertize-special|ps-mode-RE|ps-mode-backward-delete-char|ps-mode-center|ps-mode-comment-out-region|ps-mode-epsf-rich|ps-mode-epsf-sparse|ps-mode-heapsort|ps-mode-latin-extended|ps-mode-main|ps-mode-octal-buffer|ps-mode-octal-region|ps-mode-other-newline|ps-mode-print-buffer|ps-mode-print-region|ps-mode-right|ps-mode-show-version|ps-mode-smie-rules|ps-mode-submit-bug-report|ps-mode-syntax-propertize|ps-mode-target-column|ps-mode-uncomment-region|ps-mode|ps-mule-begin-job|ps-mule-end-job|ps-mule-initialize|ps-n-up-columns|ps-n-up-end|ps-n-up-filling|ps-n-up-landscape|ps-n-up-lines|ps-n-up-missing|ps-n-up-printing|ps-n-up-repeat|ps-n-up-xcolumn|ps-n-up-xline|ps-n-up-xstart|ps-n-up-ycolumn|ps-n-up-yline|ps-n-up-ystart|ps-nb-pages-buffer|ps-nb-pages-region|ps-nb-pages|ps-next-line|ps-next-page|ps-output-boolean|ps-output-frame-properties|ps-output-prologue|ps-output-string-prim|ps-output-string|ps-output|ps-page-dimensions-get-height|ps-page-dimensions-get-media|ps-page-dimensions-get-width|ps-page-number|ps-plot-region|ps-plot-string|ps-plot-with-face|ps-plot|ps-print-buffer-with-faces|ps-print-buffer|ps-print-customize|ps-print-ensure-fontified|ps-print-page-p|ps-print-preprint-region|ps-print-preprint|ps-print-quote|ps-print-region-with-faces|ps-print-region|ps-print-sheet-p|ps-print-with-faces|ps-print-without-faces|ps-printing-region|ps-prologue-file|ps-put|ps-remove-duplicates|ps-restore-selected-pages|ps-rgb-color|ps-run-boundingbox|ps-run-buffer|ps-run-cleanup|ps-run-clear|ps-run-goto-error|ps-run-kill|ps-run-make-tmp-filename|ps-run-mode|ps-run-mouse-goto-error|ps-run-quit|ps-run-region|ps-run-running|ps-run-send-string|ps-run-start|ps-screen-to-bit-face|ps-select-font|ps-selected-pages|ps-set-bg|ps-set-color|ps-set-face-attribute|ps-set-face-bold|ps-set-face-italic|ps-set-face-underline|ps-set-font|ps-setup|ps-size-scale|ps-skip-newline|ps-space-width|ps-spool-buffer-with-faces|ps-spool-buffer|ps-spool-region-with-faces|ps-spool-region|ps-spool-with-faces|ps-spool-without-faces|ps-time-stamp-hh:mm:ss|ps-time-stamp-iso8601)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:ps-time-stamp-locale-default|ps-time-stamp-mon-dd-yyyy|ps-time-stamp-yyyy-mm-dd|ps-title-line-height|ps-value-string|ps-value|psetf|psetq|push-mark-command|pushnew|put-unicode-property-internal|pwd|python-check|python-comint-output-filter-function|python-comint-postoutput-scroll-to-bottom|python-completion-at-point|python-completion-complete-at-point|python-define-auxiliary-skeleton|python-docstring-at-p|python-eldoc--get-doc-at-point|python-eldoc-at-point|python-eldoc-function|python-electric-pair-string-delimiter|python-ffap-module-path|python-fill-comment|python-fill-decorator|python-fill-paragraph|python-fill-paren|python-fill-string|python-font-lock-syntactic-face-function|python-imenu--build-tree|python-imenu--put-parent|python-imenu-create-flat-index|python-imenu-create-index|python-imenu-format-item-label|python-imenu-format-parent-item-jump-label|python-imenu-format-parent-item-label|python-indent-calculate-indentation|python-indent-calculate-levels|python-indent-context|python-indent-dedent-line-backspace|python-indent-dedent-line|python-indent-guess-indent-offset|python-indent-line-function|python-indent-line|python-indent-post-self-insert-function|python-indent-region|python-indent-shift-left|python-indent-shift-right|python-indent-toggle-levels|python-info-assignment-continuation-line-p|python-info-beginning-of-backslash|python-info-beginning-of-block-p|python-info-beginning-of-statement-p|python-info-block-continuation-line-p|python-info-closing-block-message|python-info-closing-block|python-info-continuation-line-p|python-info-current-defun|python-info-current-line-comment-p|python-info-current-line-empty-p|python-info-current-symbol|python-info-dedenter-opening-block-message|python-info-dedenter-opening-block-position|python-info-dedenter-opening-block-positions|python-info-dedenter-statement-p|python-info-encoding-from-cookie|python-info-encoding|python-info-end-of-block-p|python-info-end-of-statement-p|python-info-line-ends-backslash-p|python-info-looking-at-beginning-of-defun|python-info-ppss-comment-or-string-p|python-info-ppss-context-type|python-info-ppss-context|python-info-statement-ends-block-p|python-info-statement-starts-block-p|python-menu|python-mode|python-nav--beginning-of-defun|python-nav--forward-defun|python-nav--forward-sexp|python-nav--lisp-forward-sexp-safe|python-nav--lisp-forward-sexp|python-nav--syntactically|python-nav--up-list|python-nav-backward-block|python-nav-backward-defun|python-nav-backward-sexp-safe|python-nav-backward-sexp|python-nav-backward-statement|python-nav-backward-up-list|python-nav-beginning-of-block|python-nav-beginning-of-defun|python-nav-beginning-of-statement|python-nav-end-of-block|python-nav-end-of-defun|python-nav-end-of-statement|python-nav-forward-block|python-nav-forward-defun|python-nav-forward-sexp-safe|python-nav-forward-sexp|python-nav-forward-statement|python-nav-if-name-main|python-nav-up-list|python-pdbtrack-comint-output-filter-function|python-pdbtrack-set-tracked-buffer|python-proc|python-send-receive|python-send-string|python-shell--save-temp-file|python-shell-accept-process-output|python-shell-buffer-substring|python-shell-calculate-command|python-shell-calculate-exec-path|python-shell-calculate-process-environment|python-shell-calculate-pythonpath|python-shell-comint-end-of-output-p|python-shell-completion-at-point|python-shell-completion-complete-at-point|python-shell-completion-complete-or-indent|python-shell-completion-get-completions|python-shell-font-lock-cleanup-buffer|python-shell-font-lock-comint-output-filter-function|python-shell-font-lock-get-or-create-buffer|python-shell-font-lock-kill-buffer|python-shell-font-lock-post-command-hook|python-shell-font-lock-toggle|python-shell-font-lock-turn-off|python-shell-font-lock-turn-on|python-shell-font-lock-with-font-lock-buffer|python-shell-get-buffer|python-shell-get-or-create-process|python-shell-get-process-name|python-shell-get-process|python-shell-internal-get-or-create-process|python-shell-internal-get-process-name|python-shell-internal-send-string|python-shell-make-comint|python-shell-output-filter|python-shell-package-enable|python-shell-parse-command|python-shell-prompt-detect|python-shell-prompt-set-calculated-regexps|python-shell-prompt-validate-regexps|python-shell-send-buffer|python-shell-send-defun|python-shell-send-file|python-shell-send-region|python-shell-send-setup-code|python-shell-send-string-no-output|python-shell-send-string|python-shell-switch-to-shell|python-shell-with-shell-buffer|python-skeleton--else|python-skeleton--except|python-skeleton--finally|python-skeleton-add-menu-items|python-skeleton-class|python-skeleton-def|python-skeleton-define|python-skeleton-for|python-skeleton-if|python-skeleton-import|python-skeleton-try|python-skeleton-while|python-syntax-comment-or-string-p|python-syntax-context-type|python-syntax-context|python-syntax-count-quotes|python-syntax-stringify|python-util-clone-local-variables|python-util-comint-last-prompt|python-util-forward-comment|python-util-goto-line|python-util-list-directories|python-util-list-files|python-util-list-packages|python-util-popn|python-util-strip-string|python-util-text-properties-replace-name|python-util-valid-regexp-p|quail-define-package|quail-define-rules|quail-defrule-internal|quail-defrule|quail-install-decode-map|quail-install-map|quail-set-keyboard-layout|quail-show-keyboard-layout|quail-title|quail-update-leim-list-file|quail-use-package|query-dig|query-font|query-fontset|query-replace-compile-replacement|query-replace-descr|query-replace-read-args|query-replace-read-from|query-replace-read-to|query-replace-regexp-eval|query-replace-regexp|query-replace|quick-calc|quickurl-add-url|quickurl-ask|quickurl-browse-url-ask|quickurl-browse-url|quickurl-edit-urls|quickurl-find-url|quickurl-grab-url|quickurl-insert|quickurl-list-add-url|quickurl-list-insert-lookup|quickurl-list-insert-naked-url|quickurl-list-insert-url|quickurl-list-insert-with-desc|quickurl-list-insert-with-lookup|quickurl-list-insert|quickurl-list-make-inserter|quickurl-list-mode|quickurl-list-mouse-select|quickurl-list-populate-buffer|quickurl-list-quit|quickurl-list|quickurl-load-urls|quickurl-make-url|quickurl-read|quickurl-save-urls|quickurl-url-comment|quickurl-url-commented-p|quickurl-url-description|quickurl-url-keyword|quickurl-url-url|quickurl|quit-windows-on|quoted-insert|quoted-printable-decode-region|quoted-printable-decode-string|quoted-printable-encode-region|r2b-barf-output|r2b-capitalize-title-region|r2b-capitalize-title|r2b-clear-variables|r2b-convert-buffer|r2b-convert-month|r2b-convert-record|r2b-get-field|r2b-help|r2b-isa-proceedings|r2b-isa-university|r2b-match|r2b-moveq|r2b-put-field|r2b-require|r2b-reset|r2b-set-match|r2b-snarf-input|r2b-trace|r2b-warning|radians-to-degrees|raise-sexp|random\\\\*|random-state-p|rassoc\\\\*|rassoc-if-not|rassoc-if|rcirc--connection-open-p|rcirc-abbreviate|rcirc-activity-string|rcirc-add-face|rcirc-add-or-remove|rcirc-any-buffer|rcirc-authenticate|rcirc-browse-url|rcirc-buffer-nick|rcirc-buffer-process|rcirc-change-major-mode-hook|rcirc-channel-nicks|rcirc-channel-p|rcirc-check-auth-status|rcirc-clean-up-buffer|rcirc-clear-activity|rcirc-clear-unread|rcirc-cmd-bright|rcirc-cmd-ctcp|rcirc-cmd-dim|rcirc-cmd-ignore|rcirc-cmd-invite|rcirc-cmd-join|rcirc-cmd-keyword|rcirc-cmd-kick|rcirc-cmd-list|rcirc-cmd-me|rcirc-cmd-mode|rcirc-cmd-msg|rcirc-cmd-names|rcirc-cmd-nick|rcirc-cmd-oper|rcirc-cmd-part|rcirc-cmd-query|rcirc-cmd-quit|rcirc-cmd-quote|rcirc-cmd-reconnect|rcirc-cmd-topic|rcirc-cmd-whois|rcirc-complete|rcirc-completion-at-point|rcirc-condition-filter|rcirc-connect|rcirc-ctcp-sender-PING|rcirc-debug|rcirc-delete-process|rcirc-disconnect-buffer|rcirc-edit-multiline|rcirc-elapsed-lines|rcirc-facify|rcirc-fill-paragraph|rcirc-filter|rcirc-float-time|rcirc-format-response-string|rcirc-generate-log-filename|rcirc-generate-new-buffer-name|rcirc-get-buffer-create|rcirc-get-buffer|rcirc-get-temp-buffer-create|rcirc-handler-001|rcirc-handler-301|rcirc-handler-317|rcirc-handler-332|rcirc-handler-333|rcirc-handler-353|rcirc-handler-366|rcirc-handler-433|rcirc-handler-477|rcirc-handler-CTCP-response|rcirc-handler-CTCP|rcirc-handler-ERROR|rcirc-handler-INVITE|rcirc-handler-JOIN|rcirc-handler-KICK|rcirc-handler-MODE|rcirc-handler-NICK|rcirc-handler-NOTICE|rcirc-handler-PART-or-KICK|rcirc-handler-PART|rcirc-handler-PING|rcirc-handler-PONG|rcirc-handler-PRIVMSG|rcirc-handler-QUIT|rcirc-handler-TOPIC|rcirc-handler-WALLOPS|rcirc-handler-ctcp-ACTION|rcirc-handler-ctcp-KEEPALIVE|rcirc-handler-ctcp-TIME|rcirc-handler-ctcp-VERSION|rcirc-handler-generic|rcirc-ignore-update-automatic|rcirc-insert-next-input|rcirc-insert-prev-input|rcirc-join-channels-post-auth|rcirc-join-channels|rcirc-jump-to-first-unread-line|rcirc-keepalive|rcirc-kill-buffer-hook|rcirc-last-line|rcirc-last-quit-line|rcirc-log-write|rcirc-log|rcirc-looking-at-input|rcirc-make-trees|rcirc-markup-attributes|rcirc-markup-bright-nicks|rcirc-markup-fill|rcirc-markup-keywords|rcirc-markup-my-nick|rcirc-markup-timestamp|rcirc-markup-urls|rcirc-maybe-remember-nick-quit|rcirc-mode|rcirc-multiline-minor-cancel|rcirc-multiline-minor-mode|rcirc-multiline-minor-submit|rcirc-next-active-buffer|rcirc-nick-channels|rcirc-nick-remove|rcirc-nick|rcirc-nickname<|rcirc-non-irc-buffer|rcirc-omit-mode|rcirc-prev-input-string|rcirc-print|rcirc-process-command|rcirc-process-input-line|rcirc-process-list|rcirc-process-message|rcirc-process-server-response-1|rcirc-process-server-response|rcirc-prompt-for-encryption|rcirc-put-nick-channel|rcirc-rebuild-tree|rcirc-record-activity|rcirc-remove-nick-channel|rcirc-reschedule-timeout|rcirc-send-ctcp|rcirc-send-input|rcirc-send-message|rcirc-send-privmsg|rcirc-send-string|rcirc-sentinel|rcirc-server-name|rcirc-set-changed|rcirc-short-buffer-name|rcirc-sort-nicknames-join|rcirc-split-activity|rcirc-split-message|rcirc-switch-to-server-buffer|rcirc-target-buffer|rcirc-toggle-ignore-buffer-activity|rcirc-toggle-low-priority|rcirc-track-minor-mode|rcirc-update-activity-string|rcirc-update-prompt|rcirc-update-short-buffer-names|rcirc-user-nick|rcirc-view-log-file|rcirc-visible-buffers|rcirc-window-configuration-change-1|rcirc-window-configuration-change|rcirc|re-builder-unload-function|re-search-backward-lax-whitespace|re-search-forward-lax-whitespace|read--expression|read-abbrev-file|read-all-face-attributes|read-buffer-file-coding-system|read-buffer-to-switch|read-char-by-name|read-charset|read-cookie|read-envvar-name|read-extended-command|read-face-and-attribute|read-face-attribute|read-face-font|read-face-name|read-feature|read-file-name--defaults|read-file-name-default|read-file-name-internal|read-from-whole-string|read-hiragana-string|read-input|read-language-name|read-multilingual-string|read-number|read-regexp-suggestions|reb-assert-buffer-in-window|reb-auto-update|reb-change-syntax|reb-change-target-buffer|reb-color-display-p|reb-cook-regexp|reb-copy|reb-count-subexps|reb-delete-overlays|reb-display-subexp|reb-do-update|reb-empty-regexp|reb-enter-subexp-mode|reb-force-update|reb-initialize-buffer|reb-insert-regexp|reb-kill-buffer|reb-lisp-mode|reb-lisp-syntax-p|reb-mode-buffer-p|reb-mode-common|reb-mode|reb-next-match|reb-prev-match|reb-quit-subexp-mode|reb-quit|reb-read-regexp|reb-show-subexp|reb-target-binding|reb-toggle-case|reb-update-modestring|reb-update-overlays|reb-update-regexp|rebuild-mail-abbrevs|recentf-add-file|recentf-apply-filename-handlers|recentf-apply-menu-filter|recentf-arrange-by-dir|recentf-arrange-by-mode|recentf-arrange-by-rule|recentf-auto-cleanup|recentf-build-mode-rules|recentf-cancel-dialog|recentf-cleanup|recentf-dialog-goto-first|recentf-dialog-mode|recentf-dialog|recentf-digit-shortcut-command-name|recentf-dir-rule|recentf-directory-compare|recentf-dump-variable|recentf-edit-list-select|recentf-edit-list-validate|recentf-edit-list|recentf-elements|recentf-enabled-p|recentf-expand-file-name|recentf-file-name-nondir|recentf-filter-changer-select|recentf-filter-changer|recentf-hide-menu|recentf-include-p|recentf-indirect-mode-rule|recentf-keep-default-predicate|recentf-keep-p|recentf-load-list|recentf-make-default-menu-element|recentf-make-menu-element|recentf-make-menu-item|recentf-make-menu-items|recentf-match-rule|recentf-menu-bar|recentf-menu-customization-changed|recentf-menu-element-item|recentf-menu-element-value|recentf-menu-elements)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:rmail-output-body-to-file|rmail-output-to-rmail-buffer|rmail-output|rmail-parse-url|rmail-perm-variables|rmail-pop-to-buffer|rmail-previous-labeled-message|rmail-previous-message|rmail-previous-same-subject|rmail-previous-undeleted-message|rmail-probe|rmail-quit|rmail-read-label|rmail-redecode-body|rmail-reply|rmail-require-mime-maybe|rmail-resend|rmail-restore-desktop-buffer|rmail-retry-failure|rmail-revert|rmail-search-backwards|rmail-search-message|rmail-search|rmail-select-summary|rmail-set-attribute-1|rmail-set-attribute|rmail-set-header-1|rmail-set-header|rmail-set-message-counters-counter|rmail-set-message-counters|rmail-set-message-deleted-p|rmail-set-remote-password|rmail-show-message-1|rmail-show-message|rmail-simplified-subject-regexp|rmail-simplified-subject|rmail-sort-by-author|rmail-sort-by-correspondent|rmail-sort-by-date|rmail-sort-by-labels|rmail-sort-by-lines|rmail-sort-by-recipient|rmail-sort-by-subject|rmail-speedbar-button|rmail-speedbar-buttons|rmail-speedbar-find-file|rmail-speedbar-move-message-to-folder-on-line|rmail-speedbar-move-message|rmail-start-mail|rmail-summary-by-labels|rmail-summary-by-recipients|rmail-summary-by-regexp|rmail-summary-by-senders|rmail-summary-by-topic|rmail-summary-displayed|rmail-summary-exists|rmail-summary|rmail-swap-buffers-maybe|rmail-swap-buffers|rmail-toggle-header|rmail-undelete-previous-message|rmail-unfontify-buffer-function|rmail-unknown-mail-followup-to|rmail-unrmail-new-mail-maybe|rmail-unrmail-new-mail|rmail-update-summary|rmail-variables|rmail-view-buffer-kill-buffer-hook|rmail-what-message|rmail-widen-to-current-msgbeg|rmail-widen|rmail-write-region-annotate|rmail-yank-current-message|rmail|rng-c-load-schema|rng-nxml-mode-init|rng-validate-mode|rng-xsd-compile|robin-define-package|robin-modify-package|robin-use-package|rot13-other-window|rot13-region|rot13-string|rot13|rotate-yank-pointer|rotatef|round\\\\*|route|rsh|rst-minor-mode|rst-mode|ruby--at-indentation-p|ruby--detect-encoding|ruby--electric-indent-p|ruby--encoding-comment-required-p|ruby--insert-coding-comment|ruby--inverse-string-quote|ruby--string-region|ruby-accurate-end-of-block|ruby-add-log-current-method|ruby-backward-sexp|ruby-beginning-of-block|ruby-beginning-of-defun|ruby-beginning-of-indent|ruby-block-contains-point|ruby-brace-to-do-end|ruby-calculate-indent|ruby-current-indentation|ruby-deep-indent-paren-p|ruby-do-end-to-brace|ruby-end-of-block|ruby-end-of-defun|ruby-expr-beg|ruby-forward-sexp|ruby-forward-string|ruby-here-doc-end-match|ruby-imenu-create-index-in-block|ruby-imenu-create-index|ruby-in-ppss-context-p|ruby-indent-exp|ruby-indent-line|ruby-indent-size|ruby-indent-to|ruby-match-expression-expansion|ruby-mode-menu|ruby-mode-set-encoding|ruby-mode-variables|ruby-mode|ruby-move-to-block|ruby-parse-partial|ruby-parse-region|ruby-singleton-class-p|ruby-smie--args-separator-p|ruby-smie--at-dot-call|ruby-smie--backward-token|ruby-smie--bosp|ruby-smie--closing-pipe-p|ruby-smie--forward-token|ruby-smie--implicit-semi-p|ruby-smie--indent-to-stmt-p|ruby-smie--indent-to-stmt|ruby-smie--opening-pipe-p|ruby-smie--redundant-do-p|ruby-smie-rules|ruby-special-char-p|ruby-string-at-point-p|ruby-syntax-enclosing-percent-literal|ruby-syntax-expansion-allowed-p|ruby-syntax-propertize-expansion|ruby-syntax-propertize-expansions|ruby-syntax-propertize-function|ruby-syntax-propertize-heredoc|ruby-syntax-propertize-percent-literal|ruby-toggle-block|ruby-toggle-string-quotes|ruler--save-header-line-format|ruler-mode-character-validate|ruler-mode-full-window-width|ruler-mode-mouse-add-tab-stop|ruler-mode-mouse-del-tab-stop|ruler-mode-mouse-drag-any-column-iteration|ruler-mode-mouse-drag-any-column|ruler-mode-mouse-grab-any-column|ruler-mode-mouse-set-left-margin|ruler-mode-mouse-set-right-margin|ruler-mode-ruler|ruler-mode-space|ruler-mode-toggle-show-tab-stops|ruler-mode-window-col|ruler-mode|run-dig|run-hook-wrapped|run-lisp|run-network-program|run-octave|run-prolog|run-python-internal|run-python|run-scheme|run-tcl|run-window-configuration-change-hook|run-window-scroll-functions|run-with-timer|rx-\\\\*\\\\*|rx-=|rx->=|rx-and|rx-any-condense-range|rx-any-delete-from-range|rx-any|rx-anything|rx-atomic-p|rx-backref|rx-category|rx-check-any-string|rx-check-any|rx-check-backref|rx-check-category|rx-check-not|rx-check|rx-eval|rx-form|rx-greedy|rx-group-if|rx-info|rx-kleene|rx-not-char|rx-not-syntax|rx-not|rx-or|rx-regexp|rx-repeat|rx-submatch-n|rx-submatch|rx-syntax|rx-to-string|rx-trans-forms|rx|rzgrep|safe-date-to-time|same-class-fast-p|same-class-p|sanitize-coding-system-list|sasl-anonymous-response|sasl-client-mechanism|sasl-client-name|sasl-client-properties|sasl-client-property|sasl-client-server|sasl-client-service|sasl-client-set-properties|sasl-client-set-property|sasl-error|sasl-find-mechanism|sasl-login-response-1|sasl-login-response-2|sasl-make-client|sasl-make-mechanism|sasl-mechanism-name|sasl-mechanism-steps|sasl-next-step|sasl-plain-response|sasl-read-passphrase|sasl-step-data|sasl-step-set-data|sasl-unique-id-function|sasl-unique-id-number-base36|sasl-unique-id|save-buffers-kill-emacs|save-buffers-kill-terminal|save-completions-to-file|save-place-alist-to-file|save-place-dired-hook|save-place-find-file-hook|save-place-forget-unreadable-files|save-place-kill-emacs-hook|save-place-to-alist|save-places-to-alist|savehist-autosave|savehist-install|savehist-load|savehist-minibuffer-hook|savehist-mode|savehist-printable|savehist-save|savehist-trim-history|savehist-uninstall|sc-S-cite-region-limit|sc-S-mail-header-nuke-list|sc-S-mail-nuke-mail-headers|sc-S-preferred-attribution-list|sc-S-preferred-header-style|sc-T-auto-fill-region|sc-T-confirm-always|sc-T-describe|sc-T-downcase|sc-T-electric-circular|sc-T-electric-references|sc-T-fixup-whitespace|sc-T-mail-nuke-blank-lines|sc-T-nested-citation|sc-T-use-only-preferences|sc-add-citation-level|sc-ask|sc-attribs-!-addresses|sc-attribs-%@-addresses|sc-attribs-<>-addresses|sc-attribs-chop-address|sc-attribs-chop-namestring|sc-attribs-emailname|sc-attribs-extract-namestring|sc-attribs-filter-namelist|sc-attribs-strip-initials|sc-cite-coerce-cited-line|sc-cite-coerce-dumb-citer|sc-cite-line|sc-cite-original|sc-cite-regexp|sc-cite-region|sc-describe|sc-electric-mode|sc-eref-abort|sc-eref-exit|sc-eref-goto|sc-eref-insert-selected|sc-eref-jump|sc-eref-next|sc-eref-prev|sc-eref-setn|sc-eref-show|sc-fill-if-different|sc-get-address|sc-guess-attribution|sc-guess-nesting|sc-hdr|sc-header-attributed-writes|sc-header-author-writes|sc-header-inarticle-writes|sc-header-on-said|sc-header-regarding-adds|sc-header-verbose|sc-insert-citation|sc-insert-reference|sc-mail-append-field|sc-mail-build-nuke-frame|sc-mail-check-from|sc-mail-cleanup-blank-lines|sc-mail-error-in-mail-field|sc-mail-fetch-field|sc-mail-field-query|sc-mail-field|sc-mail-nuke-continuation-line|sc-mail-nuke-header-line|sc-mail-nuke-line|sc-mail-process-headers|sc-make-citation|sc-minor-mode|sc-name-substring|sc-no-blank-line-or-header|sc-no-header|sc-open-line|sc-raw-mode-toggle|sc-recite-line|sc-recite-region|sc-scan-info-alist|sc-select-attribution|sc-set-variable|sc-setup-filladapt|sc-setvar-symbol|sc-toggle-fn|sc-toggle-symbol|sc-toggle-var|sc-uncite-line|sc-uncite-region|sc-valid-index-p|sc-whofrom|scan-buf-move-to-region|scan-buf-next-region|scan-buf-previous-region|scheme-compile-definition-and-go|scheme-compile-definition|scheme-compile-file|scheme-compile-region-and-go|scheme-compile-region|scheme-debugger-mode-commands|scheme-debugger-mode-initialize|scheme-debugger-mode|scheme-debugger-self-insert|scheme-expand-current-form|scheme-form-at-point|scheme-get-old-input|scheme-get-process|scheme-indent-function|scheme-input-filter|scheme-interaction-mode-commands|scheme-interaction-mode-initialize|scheme-interaction-mode|scheme-interactively-start-process|scheme-let-indent|scheme-load-file|scheme-mode-commands|scheme-mode-variables|scheme-mode|scheme-proc|scheme-send-definition-and-go|scheme-send-definition|scheme-send-last-sexp|scheme-send-region-and-go|scheme-send-region|scheme-start-file|scheme-syntax-propertize-sexp-comment|scheme-syntax-propertize|scheme-trace-procedure|scroll-all-beginning-of-buffer-all|scroll-all-check-to-scroll|scroll-all-end-of-buffer-all|scroll-all-function-all|scroll-all-mode|scroll-all-page-down-all|scroll-all-page-up-all|scroll-all-scroll-down-all|scroll-all-scroll-up-all|scroll-bar-columns|scroll-bar-drag-1|scroll-bar-drag-position|scroll-bar-drag|scroll-bar-horizontal-drag-1|scroll-bar-horizontal-drag|scroll-bar-lines|scroll-bar-maybe-set-window-start|scroll-bar-scroll-down|scroll-bar-scroll-up|scroll-bar-set-window-start|scroll-bar-toolkit-horizontal-scroll|scroll-bar-toolkit-scroll|scroll-down-line|scroll-lock-mode|scroll-other-window-down|scroll-up-line|scss-mode|scss-smie--not-interpolation-p|sdb|search-backward-lax-whitespace|search-backward-regexp|search-emacs-glossary|search-forward-lax-whitespace|search-forward-regexp|search-pages|search-unencodable-char|search|second|seconds-to-string|secrets-close-session|secrets-collection-handler|secrets-collection-path|secrets-create-collection|secrets-create-item|secrets-delete-alias|secrets-delete-collection|secrets-delete-item|secrets-empty-path|secrets-expand-collection|secrets-expand-item|secrets-get-alias|secrets-get-attribute|secrets-get-attributes|secrets-get-collection-properties|secrets-get-collection-property|secrets-get-collections|secrets-get-item-properties|secrets-get-item-property|secrets-get-items|secrets-get-secret|secrets-item-path|secrets-list-collections|secrets-list-items|secrets-mode|secrets-open-session|secrets-prompt-handler|secrets-prompt|secrets-search-items|secrets-set-alias|secrets-show-collections|secrets-show-secrets|secrets-tree-widget-after-toggle-function|secrets-tree-widget-show-password|secrets-unlock-collection|secure-hash|select-frame-by-name|select-frame-set-input-focus|select-frame|select-message-coding-system|select-safe-coding-system-interactively|select-safe-coding-system|select-scheme|select-tags-table-mode|select-tags-table-quit|select-tags-table-select|select-tags-table|select-window|selected-frame|selected-window|self-insert-and-exit|self-insert-command|semantic--set-buffer-cache|semantic--tag-attributes-cdr|semantic--tag-copy-properties|semantic--tag-deep-copy-attributes|semantic--tag-deep-copy-tag-list|semantic--tag-deep-copy-value|semantic--tag-expand|semantic--tag-expanded-p|semantic--tag-find-parent-by-name|semantic--tag-get-property|semantic--tag-link-cache-to-buffer|semantic--tag-link-list-to-buffer|semantic--tag-link-to-buffer|semantic--tag-overlay-cdr|semantic--tag-properties-cdr|semantic--tag-put-property-no-side-effect|semantic--tag-put-property|semantic--tag-run-hooks|semantic--tag-set-overlay|semantic--tag-unlink-cache-from-buffer|semantic--tag-unlink-from-buffer|semantic--tag-unlink-list-from-buffer|semantic--umatched-syntax-needs-refresh-p|semantic-active-p|semantic-add-label|semantic-add-minor-mode|semantic-add-system-include|semantic-alias-obsolete|semantic-analyze-completion-at-point-function|semantic-analyze-current-context|semantic-analyze-current-tag|semantic-analyze-nolongprefix-completion-at-point-function|semantic-analyze-notc-completion-at-point-function|semantic-analyze-possible-completions|semantic-analyze-proto-impl-toggle|semantic-analyze-type-constants|semantic-assert-valid-token|semantic-bovinate-from-nonterminal-full|semantic-bovinate-from-nonterminal|semantic-bovinate-region-until-error|semantic-bovinate-stream|semantic-bovinate-toplevel|semantic-buffer-local-value|semantic-c-add-preprocessor-symbol|semantic-cache-data-post-command-hook|semantic-cache-data-to-buffer|semantic-calculate-scope|semantic-change-function|semantic-clean-token-of-unmatched-syntax|semantic-clean-unmatched-syntax-in-buffer|semantic-clean-unmatched-syntax-in-region|semantic-clear-parser-warnings|semantic-clear-toplevel-cache|semantic-clear-unmatched-syntax-cache|semantic-comment-lexer|semantic-complete-analyze-and-replace|semantic-complete-analyze-inline-idle|semantic-complete-analyze-inline|semantic-complete-inline-project|semantic-complete-jump-local-members|semantic-complete-jump-local|semantic-complete-jump|semantic-complete-self-insert|semantic-complete-symbol|semantic-create-imenu-index|semantic-create-tag-proxy|semantic-ctxt-current-mode|semantic-current-tag-parent|semantic-current-tag|semantic-customize-system-include-path|semantic-debug|semantic-decoration-include-visit|semantic-decoration-unparsed-include-do-reset)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:semantic-default-c-setup|semantic-default-elisp-setup|semantic-default-html-setup|semantic-default-make-setup|semantic-default-scheme-setup|semantic-default-texi-setup|semantic-delete-overlay-maybe|semantic-dependency-tag-file|semantic-describe-buffer-var-helper|semantic-describe-buffer|semantic-describe-tag|semantic-desktop-ignore-this-minor-mode|semantic-documentation-for-tag|semantic-dump-parser-warnings|semantic-edits-incremental-parser|semantic-elapsed-time|semantic-equivalent-tag-p|semantic-error-if-unparsed|semantic-event-window|semantic-exit-on-input|semantic-fetch-available-tags|semantic-fetch-tags-fast|semantic-fetch-tags|semantic-file-tag-table|semantic-file-token-stream|semantic-find-file-noselect|semantic-find-first-tag-by-name|semantic-find-tag-by-overlay-in-region|semantic-find-tag-by-overlay-next|semantic-find-tag-by-overlay-prev|semantic-find-tag-by-overlay|semantic-find-tag-for-completion|semantic-find-tag-parent-by-overlay|semantic-find-tags-by-scope-protection|semantic-find-tags-included|semantic-flatten-tags-table|semantic-flex-buffer|semantic-flex-end|semantic-flex-keyword-get|semantic-flex-keyword-p|semantic-flex-keyword-put|semantic-flex-keywords|semantic-flex-list|semantic-flex-make-keyword-table|semantic-flex-map-keywords|semantic-flex-start|semantic-flex-text|semantic-flex|semantic-force-refresh|semantic-foreign-tag-check|semantic-foreign-tag-invalid|semantic-foreign-tag-p|semantic-foreign-tag|semantic-format-tag-concise-prototype|semantic-format-tag-name|semantic-format-tag-prototype|semantic-format-tag-summarize|semantic-fw-add-edebug-spec|semantic-gcc-setup|semantic-get-cache-data|semantic-go-to-tag|semantic-highlight-edits-mode|semantic-highlight-edits-new-change-hook-fcn|semantic-highlight-func-highlight-current-tag|semantic-highlight-func-menu|semantic-highlight-func-mode|semantic-highlight-func-popup-menu|semantic-ia-complete-symbol-menu|semantic-ia-complete-symbol|semantic-ia-complete-tip|semantic-ia-describe-class|semantic-ia-fast-jump|semantic-ia-fast-mouse-jump|semantic-ia-show-doc|semantic-ia-show-summary|semantic-ia-show-variants|semantic-idle-completions-mode|semantic-idle-scheduler-mode|semantic-idle-summary-mode|semantic-insert-foreign-tag-change-log-mode|semantic-insert-foreign-tag-default|semantic-insert-foreign-tag-log-edit-mode|semantic-insert-foreign-tag|semantic-install-function-overrides|semantic-lex-beginning-of-line|semantic-lex-buffer|semantic-lex-catch-errors|semantic-lex-charquote|semantic-lex-close-paren|semantic-lex-comments-as-whitespace|semantic-lex-comments|semantic-lex-debug-break|semantic-lex-debug|semantic-lex-default-action|semantic-lex-end-block|semantic-lex-expand-block-specs|semantic-lex-highlight-token|semantic-lex-ignore-comments|semantic-lex-ignore-newline|semantic-lex-ignore-whitespace|semantic-lex-init|semantic-lex-keyword-get|semantic-lex-keyword-invalid|semantic-lex-keyword-p|semantic-lex-keyword-put|semantic-lex-keyword-set|semantic-lex-keyword-symbol|semantic-lex-keyword-value|semantic-lex-keywords|semantic-lex-list|semantic-lex-make-keyword-table|semantic-lex-make-type-table|semantic-lex-map-keywords|semantic-lex-map-symbols|semantic-lex-map-types|semantic-lex-newline-as-whitespace|semantic-lex-newline|semantic-lex-number|semantic-lex-one-token|semantic-lex-open-paren|semantic-lex-paren-or-list|semantic-lex-preset-default-types|semantic-lex-punctuation-type|semantic-lex-punctuation|semantic-lex-push-token|semantic-lex-spp-table-write-slot-value|semantic-lex-start-block|semantic-lex-string|semantic-lex-symbol-or-keyword|semantic-lex-test|semantic-lex-token-bounds|semantic-lex-token-class|semantic-lex-token-end|semantic-lex-token-p|semantic-lex-token-start|semantic-lex-token-text|semantic-lex-token-with-text-p|semantic-lex-token-without-text-p|semantic-lex-token|semantic-lex-type-get|semantic-lex-type-invalid|semantic-lex-type-p|semantic-lex-type-put|semantic-lex-type-set|semantic-lex-type-symbol|semantic-lex-type-value|semantic-lex-types|semantic-lex-unterminated-syntax-detected|semantic-lex-unterminated-syntax-protection|semantic-lex-whitespace|semantic-lex|semantic-make-local-hook|semantic-make-overlay|semantic-map-buffers|semantic-map-mode-buffers|semantic-menu-item|semantic-mode-line-update|semantic-mode|semantic-narrow-to-tag|semantic-new-buffer-fcn|semantic-next-unmatched-syntax|semantic-obtain-foreign-tag|semantic-overlay-buffer|semantic-overlay-delete|semantic-overlay-end|semantic-overlay-get|semantic-overlay-lists|semantic-overlay-live-p|semantic-overlay-move|semantic-overlay-next-change|semantic-overlay-p|semantic-overlay-previous-change|semantic-overlay-properties|semantic-overlay-put|semantic-overlay-start|semantic-overlays-at|semantic-overlays-in|semantic-overload-symbol-from-function|semantic-parse-changes-default|semantic-parse-changes|semantic-parse-region-default|semantic-parse-region|semantic-parse-stream-default|semantic-parse-stream|semantic-parse-tree-needs-rebuild-p|semantic-parse-tree-needs-update-p|semantic-parse-tree-set-needs-rebuild|semantic-parse-tree-set-needs-update|semantic-parse-tree-set-up-to-date|semantic-parse-tree-unparseable-p|semantic-parse-tree-unparseable|semantic-parse-tree-up-to-date-p|semantic-parser-working-message|semantic-popup-menu|semantic-push-parser-warning|semantic-read-event|semantic-read-function|semantic-read-symbol|semantic-read-type|semantic-read-variable|semantic-refresh-tags-safe|semantic-remove-system-include|semantic-repeat-parse-whole-stream|semantic-require-version|semantic-reset-system-include|semantic-run-mode-hooks|semantic-safe|semantic-sanity-check|semantic-set-unmatched-syntax-cache|semantic-show-label|semantic-show-parser-state-auto-marker|semantic-show-parser-state-marker|semantic-show-parser-state-mode|semantic-show-unmatched-lex-tokens-fetch|semantic-show-unmatched-syntax-mode|semantic-show-unmatched-syntax-next|semantic-show-unmatched-syntax|semantic-showing-unmatched-syntax-p|semantic-simple-lexer|semantic-something-to-stream|semantic-something-to-tag-table|semantic-speedbar-analysis|semantic-stickyfunc-fetch-stickyline|semantic-stickyfunc-menu|semantic-stickyfunc-mode|semantic-stickyfunc-popup-menu|semantic-stickyfunc-tag-to-stick|semantic-subst-char-in-string|semantic-symref-find-file-references-by-name|semantic-symref-find-references-by-name|semantic-symref-find-tags-by-completion|semantic-symref-find-tags-by-name|semantic-symref-find-tags-by-regexp|semantic-symref-find-text|semantic-symref-regexp|semantic-symref-symbol|semantic-symref-tool-cscope-child-p|semantic-symref-tool-cscope-list-p|semantic-symref-tool-cscope-p|semantic-symref-tool-cscope|semantic-symref-tool-global-child-p|semantic-symref-tool-global-list-p|semantic-symref-tool-global-p|semantic-symref-tool-global|semantic-symref-tool-grep-child-p|semantic-symref-tool-grep-list-p|semantic-symref-tool-grep-p|semantic-symref-tool-grep|semantic-symref-tool-idutils-child-p|semantic-symref-tool-idutils-list-p|semantic-symref-tool-idutils-p|semantic-symref-tool-idutils|semantic-symref|semantic-tag-add-hook|semantic-tag-alias-class|semantic-tag-alias-definition|semantic-tag-attributes|semantic-tag-bounds|semantic-tag-buffer|semantic-tag-children-compatibility|semantic-tag-class|semantic-tag-clone|semantic-tag-code-detail|semantic-tag-components-default|semantic-tag-components-with-overlays-default|semantic-tag-components-with-overlays|semantic-tag-components|semantic-tag-copy|semantic-tag-deep-copy-one-tag|semantic-tag-docstring|semantic-tag-end|semantic-tag-external-member-parent|semantic-tag-faux-p|semantic-tag-file-name|semantic-tag-function-arguments|semantic-tag-function-constructor-p|semantic-tag-function-destructor-p|semantic-tag-function-parent|semantic-tag-function-throws|semantic-tag-get-attribute|semantic-tag-in-buffer-p|semantic-tag-include-filename-default|semantic-tag-include-filename|semantic-tag-include-system-p|semantic-tag-make-assoc-list|semantic-tag-make-plist|semantic-tag-mode|semantic-tag-modifiers|semantic-tag-name|semantic-tag-named-parent|semantic-tag-new-alias|semantic-tag-new-code|semantic-tag-new-function|semantic-tag-new-include|semantic-tag-new-package|semantic-tag-new-type|semantic-tag-new-variable|semantic-tag-of-class-p|semantic-tag-of-type-p|semantic-tag-overlay|semantic-tag-p|semantic-tag-properties|semantic-tag-prototype-p|semantic-tag-put-attribute-no-side-effect|semantic-tag-put-attribute|semantic-tag-remove-hook|semantic-tag-resolve-proxy|semantic-tag-set-bounds|semantic-tag-set-faux|semantic-tag-set-name|semantic-tag-set-proxy|semantic-tag-similar-with-subtags-p|semantic-tag-start|semantic-tag-type-compound-p|semantic-tag-type-interfaces|semantic-tag-type-members|semantic-tag-type-superclass-protection|semantic-tag-type-superclasses|semantic-tag-type|semantic-tag-variable-constant-p|semantic-tag-variable-default|semantic-tag-with-position-p|semantic-tag-write-list-slot-value|semantic-tag|semantic-test-data-cache|semantic-throw-on-input|semantic-toggle-minor-mode-globally|semantic-token-type-parent|semantic-unmatched-syntax-overlay-p|semantic-unmatched-syntax-tokens|semantic-varalias-obsolete|semantic-with-buffer-narrowed-to-current-tag|semantic-with-buffer-narrowed-to-tag|semanticdb-database-typecache-child-p|semanticdb-database-typecache-list-p|semanticdb-database-typecache-p|semanticdb-database-typecache|semanticdb-enable-gnu-global-databases|semanticdb-file-table-object|semanticdb-find-adebug-lost-includes|semanticdb-find-result-length|semanticdb-find-result-nth-in-buffer|semanticdb-find-result-nth|semanticdb-find-table-for-include|semanticdb-find-tags-by-class|semanticdb-find-tags-by-name-regexp|semanticdb-find-tags-by-name|semanticdb-find-tags-for-completion|semanticdb-find-test-translate-path|semanticdb-find-translate-path|semanticdb-minor-mode-p|semanticdb-project-database-file-child-p|semanticdb-project-database-file-list-p|semanticdb-project-database-file-p|semanticdb-project-database-file|semanticdb-strip-find-results|semanticdb-typecache-child-p|semanticdb-typecache-find|semanticdb-typecache-list-p|semanticdb-typecache-p|semanticdb-typecache|semanticdb-without-unloaded-file-searches|senator-copy-tag-to-register|senator-copy-tag|senator-go-to-up-reference|senator-kill-tag|senator-next-tag|senator-previous-tag|senator-transpose-tags-down|senator-transpose-tags-up|senator-yank-tag|send-invisible|send-process-next-char|send-region|send-string|sendmail-query-once|sendmail-query-user-about-smtp|sendmail-send-it|sendmail-sync-aliases|sendmail-user-agent-compose|sentence-at-point|seq--count-successive|seq--drop-list|seq--drop-while-list|seq--take-list|seq--take-while-list|seq-concatenate|seq-contains-p|seq-copy|seq-count|seq-do|seq-doseq|seq-drop-while|seq-drop|seq-each|seq-elt|seq-empty-p|seq-every-p|seq-filter|seq-length|seq-map|seq-reduce|seq-remove|seq-reverse|seq-some-p|seq-sort|seq-subseq|seq-take-while|seq-take|seq-uniq|serial-mode-line-config-menu-1|serial-mode-line-config-menu|serial-mode-line-speed-menu-1|serial-mode-line-speed-menu|serial-nice-speed-history|serial-port-is-file-p|serial-read-name|serial-read-speed|serial-speed|serial-supported-or-barf|serial-update-config-menu|serial-update-speed-menu|server--on-display-p|server-add-client|server-buffer-done|server-clients-with|server-create-tty-frame|server-create-window-system-frame|server-delete-client|server-done|server-edit|server-ensure-safe-dir|server-eval-and-print|server-eval-at|server-execute-continuation|server-execute|server-force-delete|server-force-stop|server-generate-key|server-get-auth-key|server-goto-line-column|server-goto-toplevel|server-handle-delete-frame|server-handle-suspend-tty|server-kill-buffer|server-kill-emacs-query-function|server-log|server-mode|server-process-filter|server-quote-arg|server-reply-print|server-return-error|server-running-p|server-save-buffers-kill-terminal|server-select-display|server-send-string|server-sentinel|server-start|server-switch-buffer|server-temp-file-p|server-unload-function|server-unquote-arg|server-unselect-display|server-visit-files|server-with-environment|ses\\\\+|ses--advice-copy-region-as-kill|ses--advice-yank|ses--cell|ses--clean-!|ses--clean-_|ses--letref|ses--local-printer|ses--locprn-compiled--cmacro|ses--locprn-compiled|ses--locprn-def--cmacro|ses--locprn-def|ses--locprn-local-printer-list--cmacro|ses--locprn-local-printer-list|ses--locprn-number--cmacro|ses--locprn-number|ses--locprn-p--cmacro|ses--locprn-p|ses--metaprogramming)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:ses--time-check|ses-adjust-print-width|ses-append-row-jump-first-column|ses-aset-with-undo|ses-average|ses-begin-change|ses-calculate-cell|ses-call-printer|ses-cell--formula--cmacro|ses-cell--formula|ses-cell--printer--cmacro|ses-cell--printer|ses-cell--properties--cmacro|ses-cell--properties|ses-cell--references--cmacro|ses-cell--references|ses-cell--symbol--cmacro|ses-cell--symbol|ses-cell-formula|ses-cell-p|ses-cell-printer|ses-cell-property-pop|ses-cell-property|ses-cell-references|ses-cell-set-formula|ses-cell-symbol|ses-cell-value|ses-center-span|ses-center|ses-check-curcell|ses-cleanup|ses-clear-cell-backward|ses-clear-cell-forward|ses-clear-cell|ses-col-printer|ses-col-width|ses-column-letter|ses-column-printers|ses-column-widths|ses-command-hook|ses-copy-region-helper|ses-copy-region|ses-create-cell-symbol|ses-create-cell-variable-range|ses-create-cell-variable|ses-create-header-string|ses-dashfill-span|ses-dashfill|ses-decode-cell-symbol|ses-default-printer|ses-define-local-printer|ses-delete-blanks|ses-delete-column|ses-delete-line|ses-delete-row|ses-destroy-cell-variable-range|ses-dorange|ses-edit-cell|ses-end-of-line|ses-export-keymap|ses-export-tab|ses-export-tsf|ses-export-tsv|ses-file-format-extend-parameter-list|ses-formula-record|ses-formula-references|ses-forward-or-insert|ses-get-cell|ses-goto-data|ses-goto-print|ses-header-line-menu|ses-header-row|ses-in-print-area|ses-initialize-Dijkstra-attempt|ses-insert-column|ses-insert-range-click|ses-insert-range|ses-insert-row|ses-insert-ses-range-click|ses-insert-ses-range|ses-is-cell-sym-p|ses-jump-safe|ses-jump|ses-kill-override|ses-load|ses-local-printer-compile|ses-make-cell--cmacro|ses-make-cell|ses-make-local-printer-info|ses-mark-column|ses-mark-row|ses-menu|ses-mode-print-map|ses-mode|ses-print-cell-new-width|ses-print-cell|ses-printer-record|ses-printer-validate|ses-range|ses-read-cell-printer|ses-read-cell|ses-read-column-printer|ses-read-default-printer|ses-read-printer|ses-read-symbol|ses-recalculate-all|ses-recalculate-cell|ses-reconstruct-all|ses-refresh-local-printer|ses-relocate-all|ses-relocate-formula|ses-relocate-range|ses-relocate-symbol|ses-rename-cell|ses-renarrow-buffer|ses-repair-cell-reference-all|ses-replace-name-in-formula|ses-reprint-all|ses-reset-header-string|ses-safe-formula|ses-safe-printer|ses-select|ses-set-cell|ses-set-column-width|ses-set-curcell|ses-set-header-row|ses-set-localvars|ses-set-parameter|ses-set-with-undo|ses-setter-with-undo|ses-setup|ses-sort-column-click|ses-sort-column|ses-sym-rowcol|ses-tildefill-span|ses-truncate-cell|ses-unload-function|ses-unsafe|ses-unset-header-row|ses-update-cells|ses-vector-delete|ses-vector-insert|ses-warn-unsafe|ses-widen|ses-write-cells|ses-yank-cells|ses-yank-one|ses-yank-pop|ses-yank-resize|ses-yank-tsf|set-allout-regexp|set-auto-mode-0|set-auto-mode-1|set-background-color|set-border-color|set-buffer-file-coding-system|set-buffer-process-coding-system|set-cdabbrev-buffer|set-charset-plist|set-clipboard-coding-system|set-cmpl-prefix-entry-head|set-cmpl-prefix-entry-tail|set-coding-priority|set-comment-column|set-completion-last-use-time|set-completion-num-uses|set-completion-string|set-cursor-color|set-default-coding-systems|set-default-font|set-default-toplevel-value|set-difference|set-display-table-and-terminal-coding-system|set-downcase-syntax|set-exclusive-or|set-face-attribute-from-resource|set-face-attributes-from-resources|set-face-background-pixmap|set-face-bold-p|set-face-doc-string|set-face-documentation|set-face-inverse-video-p|set-face-italic-p|set-face-underline-p|set-file-name-coding-system|set-fill-column|set-fill-prefix|set-font-encoding|set-foreground-color|set-frame-font|set-frame-name|set-fringe-mode-1|set-fringe-mode|set-fringe-style|set-goal-column|set-hard-newline-properties|set-input-interrupt-mode|set-input-meta-mode|set-justification-center|set-justification-full|set-justification-left|set-justification-none|set-justification-right|set-justification|set-keyboard-coding-system-internal|set-language-environment-charset|set-language-environment-coding-systems|set-language-environment-input-method|set-language-environment-nonascii-translation|set-language-environment-unibyte|set-language-environment|set-language-info-alist|set-language-info-internal|set-language-info|set-locale-environment|set-mark-command|set-mode-local-parent|set-mouse-color|set-nested-alist|set-next-selection-coding-system|set-output-flow-control|set-page-delimiter|set-process-filter-multibyte|set-process-inherit-coding-system-flag|set-process-window-size|set-quit-char|set-rcirc-decode-coding-system|set-rcirc-encode-coding-system|set-rmail-inbox-list|set-safe-terminal-coding-system-internal|set-scroll-bar-mode|set-selection-coding-system|set-selective-display|set-slot-value|set-temporary-overlay-map|set-terminal-coding-system-internal|set-time-zone-rule|set-upcase-syntax|set-variable|set-viper-state-in-major-mode|set-window-buffer-start-and-point|set-window-dot|set-window-new-normal|set-window-new-pixel|set-window-new-total|set-window-redisplay-end-trigger|set-window-text-height|set-woman-file-regexp|setenv-internal|setq-mode-local|setup-chinese-environment-map|setup-cyrillic-environment-map|setup-default-fontset|setup-ethiopic-environment-internal|setup-european-environment-map|setup-indian-environment-map|setup-japanese-environment-internal|setup-korean-environment-internal|setup-specified-language-environment|seventh|sexp-at-point|sgml-at-indentation-p|sgml-attributes|sgml-auto-attributes|sgml-beginning-of-tag|sgml-calculate-indent|sgml-close-tag|sgml-comment-indent-new-line|sgml-comment-indent|sgml-delete-tag|sgml-electric-tag-pair-before-change-function|sgml-electric-tag-pair-flush-overlays|sgml-electric-tag-pair-mode|sgml-empty-tag-p|sgml-fill-nobreak|sgml-get-context|sgml-guess-indent|sgml-html-meta-auto-coding-function|sgml-indent-line|sgml-lexical-context|sgml-looking-back-at|sgml-make-syntax-table|sgml-make-tag--cmacro|sgml-make-tag|sgml-maybe-end-tag|sgml-maybe-name-self|sgml-mode-facemenu-add-face-function|sgml-mode-flyspell-verify|sgml-mode|sgml-name-8bit-mode|sgml-name-char|sgml-name-self|sgml-namify-char|sgml-parse-dtd|sgml-parse-tag-backward|sgml-parse-tag-name|sgml-point-entered|sgml-pretty-print|sgml-quote|sgml-show-context|sgml-skip-tag-backward|sgml-skip-tag-forward|sgml-slash-matching|sgml-slash|sgml-tag-end--cmacro|sgml-tag-end|sgml-tag-help|sgml-tag-name--cmacro|sgml-tag-name|sgml-tag-p--cmacro|sgml-tag-p|sgml-tag-start--cmacro|sgml-tag-start|sgml-tag-text-p|sgml-tag-type--cmacro|sgml-tag-type|sgml-tag|sgml-tags-invisible|sgml-unclosed-tag-p|sgml-validate|sgml-value|sgml-xml-auto-coding-function|sgml-xml-guess|sh--cmd-completion-table|sh--inside-noncommand-expression|sh--maybe-here-document|sh--vars-before-point|sh-add-completer|sh-add|sh-after-hack-local-variables|sh-append-backslash|sh-append|sh-assignment|sh-backslash-region|sh-basic-indent-line|sh-beginning-of-command|sh-blink|sh-calculate-indent|sh-canonicalize-shell|sh-case|sh-cd-here|sh-check-rule|sh-completion-at-point-function|sh-current-defun-name|sh-debug|sh-delete-backslash|sh-electric-here-document-mode|sh-end-of-command|sh-execute-region|sh-feature|sh-find-prev-matching|sh-find-prev-switch|sh-font-lock-backslash-quote|sh-font-lock-keywords-1|sh-font-lock-keywords-2|sh-font-lock-keywords|sh-font-lock-open-heredoc|sh-font-lock-paren|sh-font-lock-quoted-subshell|sh-font-lock-syntactic-face-function|sh-for|sh-function|sh-get-indent-info|sh-get-indent-var-for-line|sh-get-kw|sh-get-word|sh-goto-match-for-done|sh-goto-matching-case|sh-goto-matching-if|sh-guess-basic-offset|sh-handle-after-case-label|sh-handle-prev-case-alt-end|sh-handle-prev-case|sh-handle-prev-do|sh-handle-prev-done|sh-handle-prev-else|sh-handle-prev-esac|sh-handle-prev-fi|sh-handle-prev-if|sh-handle-prev-open|sh-handle-prev-rc-case|sh-handle-prev-then|sh-handle-this-close|sh-handle-this-do|sh-handle-this-done|sh-handle-this-else|sh-handle-this-esac|sh-handle-this-fi|sh-handle-this-rc-case|sh-handle-this-then|sh-help-string-for-variable|sh-if|sh-in-comment-or-string|sh-indent-line|sh-indexed-loop|sh-is-quoted-p|sh-learn-buffer-indent|sh-learn-line-indent|sh-load-style|sh-make-vars-local|sh-mark-init|sh-mark-line|sh-maybe-here-document|sh-mkword-regexpr|sh-mode-syntax-table|sh-mode|sh-modify|sh-must-support-indent|sh-name-style|sh-prev-line|sh-prev-stmt|sh-prev-thing|sh-quoted-p|sh-read-variable|sh-remember-variable|sh-repeat|sh-reset-indent-vars-to-global-values|sh-safe-forward-sexp|sh-save-styles-to-buffer|sh-select|sh-send-line-or-region-and-step|sh-send-text|sh-set-indent|sh-set-shell|sh-set-var-value|sh-shell-initialize-variables|sh-shell-process|sh-show-indent|sh-show-shell|sh-smie--continuation-start-indent|sh-smie--default-backward-token|sh-smie--default-forward-token|sh-smie--keyword-p|sh-smie--looking-back-at-continuation-p|sh-smie--newline-semi-p|sh-smie--rc-after-special-arg-p|sh-smie--rc-newline-semi-p|sh-smie--sh-keyword-in-p|sh-smie--sh-keyword-p|sh-smie-rc-backward-token|sh-smie-rc-forward-token|sh-smie-rc-rules|sh-smie-sh-backward-token|sh-smie-sh-forward-token|sh-smie-sh-rules|sh-syntax-propertize-function|sh-syntax-propertize-here-doc|sh-this-is-a-continuation|sh-tmp-file|sh-until|sh-var-value|sh-while-getopts|sh-while|sha1|shadow-add-to-todo|shadow-cancel|shadow-cluster-name|shadow-cluster-primary|shadow-cluster-regexp|shadow-contract-file-name|shadow-copy-file|shadow-copy-files|shadow-define-cluster|shadow-define-literal-group|shadow-define-regexp-group|shadow-expand-cluster-in-file-name|shadow-expand-file-name|shadow-file-match|shadow-find|shadow-get-cluster|shadow-get-user|shadow-initialize|shadow-insert-var|shadow-invalidate-hashtable|shadow-local-file|shadow-make-cluster|shadow-make-fullname|shadow-make-group|shadow-parse-fullname|shadow-parse-name|shadow-read-files|shadow-read-site|shadow-regexp-superquote|shadow-remove-from-todo|shadow-replace-name-component|shadow-same-site|shadow-save-buffers-kill-emacs|shadow-save-todo-file|shadow-set-cluster|shadow-shadows-of-1|shadow-shadows-of|shadow-shadows|shadow-site-cluster|shadow-site-match|shadow-site-primary|shadow-suffix|shadow-union|shadow-write-info-file|shadow-write-todo-file|shadowfile-unload-function|shared-initialize|shell--command-completion-data|shell--parse-pcomplete-arguments|shell--requote-argument|shell--unquote&requote-argument|shell--unquote-argument|shell-apply-ansi-color|shell-backward-command|shell-c-a-p-replace-by-expanded-directory|shell-cd|shell-command-completion-function|shell-command-completion|shell-command-on-region|shell-command-sentinel|shell-command|shell-completion-vars|shell-copy-environment-variable|shell-directory-tracker|shell-dirstack-message|shell-dirtrack-mode|shell-dirtrack-toggle|shell-dynamic-complete-command|shell-dynamic-complete-environment-variable|shell-dynamic-complete-filename|shell-environment-variable-completion|shell-extract-num|shell-filename-completion|shell-filter-ctrl-a-ctrl-b|shell-forward-command|shell-match-partial-variable|shell-mode|shell-prefixed-directory-name|shell-process-cd|shell-process-popd|shell-process-pushd|shell-quote-wildcard-pattern|shell-reapply-ansi-color|shell-replace-by-expanded-directory|shell-resync-dirs|shell-script-mode|shell-snarf-envar|shell-strip-ctrl-m|shell-unquote-argument|shell-write-history-on-exit|shell|shiftf|should-error|should-not|should|show-all|show-branches|show-buffer|show-children|show-entry|show-ifdef-block|show-ifdefs|show-paren--categorize-paren|show-paren--default|show-paren--locate-near-paren|show-paren--unescaped-p|show-paren-function|show-paren-mode|show-subtree|shr--extract-best-source|shr--get-media-pref|shr-add-font|shr-browse-image|shr-browse-url|shr-buffer-width|shr-char-breakable-p--inliner|shr-char-breakable-p|shr-char-kinsoku-bol-p--inliner|shr-char-kinsoku-bol-p|shr-char-kinsoku-eol-p--inliner|shr-char-kinsoku-eol-p|shr-char-nospace-p--inliner|shr-char-nospace-p|shr-color->hexadecimal|shr-color-check|shr-color-hsl-to-rgb-fractions|shr-color-hue-to-rgb|shr-color-relative-to-absolute|shr-color-set-minimum-interval|shr-color-visible|shr-colorize-region|shr-column-specs|shr-copy-url|shr-count|shr-descend|shr-dom-print|shr-dom-to-xml|shr-encode-url|shr-ensure-newline|shr-ensure-paragraph|shr-expand-newlines|shr-expand-url|shr-find-fill-point|shr-fold-text|shr-fontize-dom|shr-generic|shr-get-image-data|shr-heading|shr-image-displayer|shr-image-fetched|shr-image-from-data|shr-indent)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:shr-insert-image|shr-insert-table-ruler|shr-insert-table|shr-insert|shr-make-table-1|shr-make-table|shr-max-columns|shr-mouse-browse-url|shr-next-link|shr-parse-base|shr-parse-image-data|shr-parse-style|shr-previous-link|shr-previous-newline-padding-width|shr-pro-rate-columns|shr-put-image|shr-remove-trailing-whitespace|shr-render-buffer|shr-render-region|shr-render-td|shr-rescale-image|shr-save-contents|shr-show-alt-text|shr-store-contents|shr-table-widths|shr-tag-a|shr-tag-audio|shr-tag-b|shr-tag-base|shr-tag-blockquote|shr-tag-body|shr-tag-br|shr-tag-comment|shr-tag-dd|shr-tag-del|shr-tag-div|shr-tag-dl|shr-tag-dt|shr-tag-em|shr-tag-font|shr-tag-h1|shr-tag-h2|shr-tag-h3|shr-tag-h4|shr-tag-h5|shr-tag-h6|shr-tag-hr|shr-tag-i|shr-tag-img|shr-tag-label|shr-tag-li|shr-tag-object|shr-tag-ol|shr-tag-p|shr-tag-pre|shr-tag-s|shr-tag-script|shr-tag-span|shr-tag-strong|shr-tag-style|shr-tag-sub|shr-tag-sup|shr-tag-svg|shr-tag-table-1|shr-tag-table|shr-tag-title|shr-tag-u|shr-tag-ul|shr-tag-video|shr-urlify|shr-zoom-image|shrink-window-horizontally|shrink-window|shuffle-vector|sieve-manage|sieve-mode|sieve-upload-and-bury|sieve-upload-and-kill|sieve-upload|signum|simula-backward-up-level|simula-calculate-indent|simula-context|simula-electric-keyword|simula-electric-label|simula-expand-keyword|simula-expand-stdproc|simula-find-do-match|simula-find-if|simula-find-inspect|simula-forward-down-level|simula-forward-up-level|simula-goto-definition|simula-indent-command|simula-indent-exp|simula-indent-line|simula-inside-parens|simula-install-standard-abbrevs|simula-mode|simula-next-statement|simula-popup-menu|simula-previous-statement|simula-search-backward|simula-search-forward|simula-skip-comment-backward|simula-skip-comment-forward|simula-submit-bug-report|sixth|size-indication-mode|skeleton-insert|skeleton-internal-1|skeleton-internal-list|skeleton-pair-insert-maybe|skeleton-proxy-new|skeleton-read|skip-line-prefix|slitex-mode|slot-boundp|slot-exists-p|slot-makeunbound|slot-missing|slot-unbound|slot-value|smbclient-list-shares|smbclient-mode|smbclient|smerge--get-marker|smerge-apply-resolution-patch|smerge-auto-combine|smerge-auto-leave|smerge-batch-resolve|smerge-check|smerge-combine-with-next|smerge-conflict-overlay|smerge-context-menu|smerge-diff-base-mine|smerge-diff-base-other|smerge-diff-mine-other|smerge-diff|smerge-ediff|smerge-ensure-match|smerge-find-conflict|smerge-get-current|smerge-keep-all|smerge-keep-base|smerge-keep-current|smerge-keep-mine|smerge-keep-n|smerge-keep-other|smerge-kill-current|smerge-makeup-conflict|smerge-match-conflict|smerge-mode-menu|smerge-mode|smerge-next|smerge-popup-context-menu|smerge-prev|smerge-refine-chopup-region|smerge-refine-forward|smerge-refine-highlight-change|smerge-refine-subst|smerge-refine|smerge-remove-props|smerge-resolve--extract-comment|smerge-resolve--normalize|smerge-resolve-all|smerge-resolve|smerge-start-session|smerge-swap|smie--associative-p|smie--matching-block-data|smie--next-indent-change|smie--opener\\\\/closer-at-point|smie-auto-fill|smie-backward-sexp-command|smie-backward-sexp|smie-blink-matching-check|smie-blink-matching-open|smie-bnf--classify|smie-bnf--closer-alist|smie-bnf--set-class|smie-config--advice|smie-config--get-trace|smie-config--guess-1|smie-config--guess-value|smie-config--guess|smie-config--mode-hook|smie-config--setter|smie-debug--describe-cycle|smie-debug--prec2-cycle|smie-default-backward-token|smie-default-forward-token|smie-edebug|smie-forward-sexp-command|smie-forward-sexp|smie-indent--bolp-1|smie-indent--bolp|smie-indent--hanging-p|smie-indent--offset|smie-indent--parent|smie-indent--rule-1|smie-indent--rule|smie-indent--separator-outdent|smie-indent-after-keyword|smie-indent-backward-token|smie-indent-bob|smie-indent-calculate|smie-indent-close|smie-indent-comment-close|smie-indent-comment-continue|smie-indent-comment-inside|smie-indent-comment|smie-indent-exps|smie-indent-fixindent|smie-indent-forward-token|smie-indent-inside-string|smie-indent-keyword|smie-indent-line|smie-indent-virtual|smie-next-sexp|smie-op-left|smie-op-right|smie-set-prec2tab|smiley-buffer|smiley-region|smtpmail-command-or-throw|smtpmail-cred-cert|smtpmail-cred-key|smtpmail-cred-passwd|smtpmail-cred-port|smtpmail-cred-server|smtpmail-cred-user|smtpmail-deduce-address-list|smtpmail-do-bcc|smtpmail-find-credentials|smtpmail-fqdn|smtpmail-intersection|smtpmail-maybe-append-domain|smtpmail-ok-p|smtpmail-process-filter|smtpmail-query-smtp-server|smtpmail-read-response|smtpmail-response-code|smtpmail-response-text|smtpmail-send-command|smtpmail-send-data-1|smtpmail-send-data|smtpmail-send-it|smtpmail-send-queued-mail|smtpmail-try-auth-method|smtpmail-try-auth-methods|smtpmail-user-mail-address|smtpmail-via-smtp|snake-active-p|snake-display-options|snake-end-game|snake-final-x-velocity|snake-final-y-velocity|snake-init-buffer|snake-mode|snake-move-down|snake-move-left|snake-move-right|snake-move-up|snake-pause-game|snake-reset-game|snake-start-game|snake-update-game|snake-update-score|snake-update-velocity|snake|snarf-spooks|snmp-calculate-indent|snmp-common-mode|snmp-completing-read|snmp-indent-line|snmp-mode-imenu-create-index|snmp-mode|snmpv2-mode|soap-array-type-element-type--cmacro|soap-array-type-element-type|soap-array-type-name--cmacro|soap-array-type-name|soap-array-type-namespace-tag--cmacro|soap-array-type-namespace-tag|soap-array-type-p--cmacro|soap-array-type-p|soap-basic-type-kind--cmacro|soap-basic-type-kind|soap-basic-type-name--cmacro|soap-basic-type-name|soap-basic-type-namespace-tag--cmacro|soap-basic-type-namespace-tag|soap-basic-type-p--cmacro|soap-basic-type-p|soap-binding-name--cmacro|soap-binding-name|soap-binding-namespace-tag--cmacro|soap-binding-namespace-tag|soap-binding-operations--cmacro|soap-binding-operations|soap-binding-p--cmacro|soap-binding-p|soap-binding-port-type--cmacro|soap-binding-port-type|soap-bound-operation-operation--cmacro|soap-bound-operation-operation|soap-bound-operation-p--cmacro|soap-bound-operation-p|soap-bound-operation-soap-action--cmacro|soap-bound-operation-soap-action|soap-bound-operation-use--cmacro|soap-bound-operation-use|soap-create-envelope|soap-decode-any-type|soap-decode-array-type|soap-decode-array|soap-decode-basic-type|soap-decode-sequence-type|soap-decode-type|soap-default-soapenc-types|soap-default-xsd-types|soap-element-fq-name|soap-element-name--cmacro|soap-element-name|soap-element-namespace-tag--cmacro|soap-element-namespace-tag|soap-element-p--cmacro|soap-element-p|soap-encode-array-type|soap-encode-basic-type|soap-encode-body|soap-encode-sequence-type|soap-encode-simple-type|soap-encode-value|soap-extract-xmlns|soap-get-target-namespace|soap-invoke|soap-l2fq|soap-l2wk|soap-load-wsdl-from-url|soap-load-wsdl|soap-message-name--cmacro|soap-message-name|soap-message-namespace-tag--cmacro|soap-message-namespace-tag|soap-message-p--cmacro|soap-message-p|soap-message-parts--cmacro|soap-message-parts|soap-namespace-elements--cmacro|soap-namespace-elements|soap-namespace-get|soap-namespace-link-name--cmacro|soap-namespace-link-name|soap-namespace-link-namespace-tag--cmacro|soap-namespace-link-namespace-tag|soap-namespace-link-p--cmacro|soap-namespace-link-p|soap-namespace-link-target--cmacro|soap-namespace-link-target|soap-namespace-name--cmacro|soap-namespace-name|soap-namespace-p--cmacro|soap-namespace-p|soap-namespace-put-link|soap-namespace-put|soap-operation-faults--cmacro|soap-operation-faults|soap-operation-input--cmacro|soap-operation-input|soap-operation-name--cmacro|soap-operation-name|soap-operation-namespace-tag--cmacro|soap-operation-namespace-tag|soap-operation-output--cmacro|soap-operation-output|soap-operation-p--cmacro|soap-operation-p|soap-operation-parameter-order--cmacro|soap-operation-parameter-order|soap-parse-binding|soap-parse-complex-type-complex-content|soap-parse-complex-type-sequence|soap-parse-complex-type|soap-parse-envelope|soap-parse-message|soap-parse-operation|soap-parse-port-type|soap-parse-response|soap-parse-schema-element|soap-parse-schema|soap-parse-sequence|soap-parse-simple-type|soap-parse-wsdl|soap-port-binding--cmacro|soap-port-binding|soap-port-name--cmacro|soap-port-name|soap-port-namespace-tag--cmacro|soap-port-namespace-tag|soap-port-p--cmacro|soap-port-p|soap-port-service-url--cmacro|soap-port-service-url|soap-port-type-name--cmacro|soap-port-type-name|soap-port-type-namespace-tag--cmacro|soap-port-type-namespace-tag|soap-port-type-operations--cmacro|soap-port-type-operations|soap-port-type-p--cmacro|soap-port-type-p|soap-resolve-references-for-array-type|soap-resolve-references-for-binding|soap-resolve-references-for-element|soap-resolve-references-for-message|soap-resolve-references-for-operation|soap-resolve-references-for-port|soap-resolve-references-for-sequence-type|soap-resolve-references-for-simple-type|soap-sequence-element-multiple\\\\?--cmacro|soap-sequence-element-multiple\\\\?|soap-sequence-element-name--cmacro|soap-sequence-element-name|soap-sequence-element-nillable\\\\?--cmacro|soap-sequence-element-nillable\\\\?|soap-sequence-element-p--cmacro|soap-sequence-element-p|soap-sequence-element-type--cmacro|soap-sequence-element-type|soap-sequence-type-elements--cmacro|soap-sequence-type-elements|soap-sequence-type-name--cmacro|soap-sequence-type-name|soap-sequence-type-namespace-tag--cmacro|soap-sequence-type-namespace-tag|soap-sequence-type-p--cmacro|soap-sequence-type-p|soap-sequence-type-parent--cmacro|soap-sequence-type-parent|soap-simple-type-enumeration--cmacro|soap-simple-type-enumeration|soap-simple-type-kind--cmacro|soap-simple-type-kind|soap-simple-type-name--cmacro|soap-simple-type-name|soap-simple-type-namespace-tag--cmacro|soap-simple-type-namespace-tag|soap-simple-type-p--cmacro|soap-simple-type-p|soap-type-p|soap-warning|soap-with-local-xmlns|soap-wk2l|soap-wsdl-add-alias|soap-wsdl-add-namespace|soap-wsdl-alias-table--cmacro|soap-wsdl-alias-table|soap-wsdl-find-namespace|soap-wsdl-get|soap-wsdl-namespaces--cmacro|soap-wsdl-namespaces|soap-wsdl-origin--cmacro|soap-wsdl-origin|soap-wsdl-p--cmacro|soap-wsdl-p|soap-wsdl-ports--cmacro|soap-wsdl-ports|soap-wsdl-resolve-references|soap-xml-get-attribute-or-nil1|soap-xml-get-children1|socks-build-auth-list|socks-chap-auth|socks-cram-auth|socks-filter|socks-find-route|socks-find-services-entry|socks-gssapi-auth|socks-nslookup-host|socks-open-connection|socks-open-network-stream|socks-original-open-network-stream|socks-parse-services|socks-register-authentication-method|socks-send-command|socks-split-string|socks-unregister-authentication-method|socks-username\\\\/password-auth-filter|socks-username\\\\/password-auth|socks-wait-for-state-change|solicit-char-in-string|solitaire-build-mode-line|solitaire-center-point|solitaire-check|solitaire-current-line|solitaire-do-check|solitaire-down|solitaire-insert-board|solitaire-left|solitaire-mode|solitaire-move-down|solitaire-move-left|solitaire-move-right|solitaire-move-up|solitaire-move|solitaire-possible-move|solitaire-right|solitaire-solve|solitaire-undo|solitaire-up|solitaire|some-window|some|sort\\\\*|sort-build-lists|sort-charsets|sort-coding-systems|sort-fields-1|sort-pages-buffer|sort-pages-in-region|sort-regexp-fields-next-record|sort-reorder-buffer|sort-skip-fields|soundex|spaces-string|spam-initialize|spam-report-agentize|spam-report-deagentize|spam-report-process-queue|spam-report-url-ping-mm-url|spam-report-url-to-file|special-display-p|special-display-popup-frame|speedbar-add-expansion-list|speedbar-add-ignored-directory-regexp|speedbar-add-ignored-path-regexp|speedbar-add-indicator|speedbar-add-localized-speedbar-support|speedbar-add-mode-functions-list|speedbar-add-supported-extension|speedbar-backward-list|speedbar-buffer-buttons-engine|speedbar-buffer-buttons-temp|speedbar-buffer-buttons|speedbar-buffer-click|speedbar-buffer-kill-buffer|speedbar-buffer-revert-buffer|speedbar-buffers-item-info|speedbar-buffers-line-directory|speedbar-buffers-line-path|speedbar-buffers-tail-notes|speedbar-center-buffer-smartly|speedbar-change-expand-button-char|speedbar-change-initial-expansion-list|speedbar-check-obj-this-line|speedbar-check-objects|speedbar-check-read-only|speedbar-check-vc-this-line|speedbar-check-vc|speedbar-clear-current-file|speedbar-click|speedbar-contract-line-descendants|speedbar-contract-line|speedbar-create-directory)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:speedbar-create-tag-hierarchy|speedbar-current-frame|speedbar-customize|speedbar-default-directory-list|speedbar-delete-overlay|speedbar-delete-subblock|speedbar-dir-follow|speedbar-directory-buttons-follow|speedbar-directory-buttons|speedbar-directory-line|speedbar-dired|speedbar-disable-update|speedbar-do-function-pointer|speedbar-edit-line|speedbar-enable-update|speedbar-expand-line-descendants|speedbar-expand-line|speedbar-extension-list-to-regex|speedbar-extract-one-symbol|speedbar-fetch-dynamic-etags|speedbar-fetch-dynamic-imenu|speedbar-fetch-dynamic-tags|speedbar-fetch-replacement-function|speedbar-file-lists|speedbar-files-item-info|speedbar-files-line-directory|speedbar-find-file-in-frame|speedbar-find-file|speedbar-find-selected-file|speedbar-flush-expand-line|speedbar-forward-list|speedbar-frame-mode|speedbar-frame-reposition-smartly|speedbar-frame-width|speedbar-generic-item-info|speedbar-generic-list-group-p|speedbar-generic-list-positioned-group-p|speedbar-generic-list-tag-p|speedbar-get-focus|speedbar-goto-this-file|speedbar-handle-delete-frame|speedbar-highlight-one-tag-line|speedbar-image-dump|speedbar-initial-expansion-list|speedbar-initial-keymap|speedbar-initial-menu|speedbar-initial-stealthy-functions|speedbar-insert-button|speedbar-insert-etags-list|speedbar-insert-files-at-point|speedbar-insert-generic-list|speedbar-insert-image-button-maybe|speedbar-insert-imenu-list|speedbar-insert-separator|speedbar-item-byte-compile|speedbar-item-copy|speedbar-item-delete|speedbar-item-info-file-helper|speedbar-item-info-tag-helper|speedbar-item-info|speedbar-item-load|speedbar-item-object-delete|speedbar-item-rename|speedbar-line-directory|speedbar-line-file|speedbar-line-path|speedbar-line-text|speedbar-line-token|speedbar-make-button|speedbar-make-overlay|speedbar-make-specialized-keymap|speedbar-make-tag-line|speedbar-maybe-add-localized-support|speedbar-maybee-jump-to-attached-frame|speedbar-message|speedbar-mode-line-update|speedbar-mode|speedbar-mouse-item-info|speedbar-navigate-list|speedbar-next|speedbar-overlay-put|speedbar-parse-c-or-c\\\\+\\\\+tag|speedbar-parse-tex-string|speedbar-path-line|speedbar-position-cursor-on-line|speedbar-prefix-group-tag-hierarchy|speedbar-prev|speedbar-recenter-to-top|speedbar-recenter|speedbar-reconfigure-keymaps|speedbar-refresh|speedbar-remove-localized-speedbar-support|speedbar-reset-scanners|speedbar-restricted-move|speedbar-restricted-next|speedbar-restricted-prev|speedbar-scroll-down|speedbar-scroll-up|speedbar-select-attached-frame|speedbar-set-mode-line-format|speedbar-set-timer|speedbar-show-info-under-mouse|speedbar-simple-group-tag-hierarchy|speedbar-sort-tag-hierarchy|speedbar-stealthy-updates|speedbar-tag-expand|speedbar-tag-file|speedbar-tag-find|speedbar-this-file-in-vc|speedbar-timer-fn|speedbar-toggle-etags|speedbar-toggle-images|speedbar-toggle-line-expansion|speedbar-toggle-show-all-files|speedbar-toggle-sorting|speedbar-toggle-updates|speedbar-track-mouse|speedbar-trim-words-tag-hierarchy|speedbar-try-completion|speedbar-unhighlight-one-tag-line|speedbar-up-directory|speedbar-update-contents|speedbar-update-current-file|speedbar-update-directory-contents|speedbar-update-localized-contents|speedbar-update-special-contents|speedbar-vc-check-dir-p|speedbar-with-attached-buffer|speedbar-with-writable|speedbar-y-or-n-p|speedbar|split-char|split-line|split-window-horizontally|split-window-internal|split-window-vertically|spook|sql--completion-table|sql--make-help-docstring|sql--oracle-show-reserved-words|sql-accumulate-and-indent|sql-add-product-keywords|sql-add-product|sql-beginning-of-statement|sql-buffer-live-p|sql-build-completions-1|sql-build-completions|sql-comint-db2|sql-comint-informix|sql-comint-ingres|sql-comint-interbase|sql-comint-linter|sql-comint-ms|sql-comint-mysql|sql-comint-oracle|sql-comint-postgres|sql-comint-solid|sql-comint-sqlite|sql-comint-sybase|sql-comint-vertica|sql-comint|sql-connect|sql-connection-menu-filter|sql-copy-column|sql-db2|sql-default-value|sql-del-product|sql-end-of-statement|sql-ends-with-prompt-re|sql-escape-newlines-filter|sql-execute-feature|sql-execute|sql-find-sqli-buffer|sql-font-lock-keywords-builder|sql-for-each-login|sql-get-login-ext|sql-get-login|sql-get-product-feature|sql-help-list-products|sql-help|sql-highlight-ansi-keywords|sql-highlight-db2-keywords|sql-highlight-informix-keywords|sql-highlight-ingres-keywords|sql-highlight-interbase-keywords|sql-highlight-linter-keywords|sql-highlight-ms-keywords|sql-highlight-mysql-keywords|sql-highlight-oracle-keywords|sql-highlight-postgres-keywords|sql-highlight-product|sql-highlight-solid-keywords|sql-highlight-sqlite-keywords|sql-highlight-sybase-keywords|sql-highlight-vertica-keywords|sql-informix|sql-ingres|sql-input-sender|sql-interactive-mode-menu|sql-interactive-mode|sql-interactive-remove-continuation-prompt|sql-interbase|sql-linter|sql-list-all|sql-list-table|sql-magic-go|sql-magic-semicolon|sql-make-alternate-buffer-name|sql-mode-menu|sql-mode|sql-ms|sql-mysql|sql-oracle-completion-object|sql-oracle-list-all|sql-oracle-list-table|sql-oracle-restore-settings|sql-oracle-save-settings|sql-oracle|sql-placeholders-filter|sql-postgres-completion-object|sql-postgres|sql-product-font-lock-syntax-alist|sql-product-font-lock|sql-product-interactive|sql-product-syntax-table|sql-read-connection|sql-read-product|sql-read-table-name|sql-redirect-one|sql-redirect-value|sql-redirect|sql-regexp-abbrev-list|sql-regexp-abbrev|sql-remove-tabs-filter|sql-rename-buffer|sql-save-connection|sql-send-buffer|sql-send-line-and-next|sql-send-magic-terminator|sql-send-paragraph|sql-send-region|sql-send-string|sql-set-product-feature|sql-set-product|sql-set-sqli-buffer-generally|sql-set-sqli-buffer|sql-show-sqli-buffer|sql-solid|sql-sqlite-completion-object|sql-sqlite|sql-starts-with-prompt-re|sql-statement-regexp|sql-stop|sql-str-literal|sql-sybase|sql-toggle-pop-to-buffer-after-send-region|sql-vertica|squeeze-bidi-context-1|squeeze-bidi-context|srecode-compile-templates|srecode-document-insert-comment|srecode-document-insert-function-comment|srecode-document-insert-group-comments|srecode-document-insert-variable-one-line-comment|srecode-get-maps|srecode-insert-getset|srecode-insert-prototype-expansion|srecode-insert|srecode-minor-mode|srecode-semantic-handle-:c|srecode-semantic-handle-:cpp|srecode-semantic-handle-:el-custom|srecode-semantic-handle-:el|srecode-semantic-handle-:java|srecode-semantic-handle-:srt|srecode-semantic-handle-:texi|srecode-semantic-handle-:texitag|srecode-template-mode|srecode-template-setup-parser|srt-mode|stable-sort|standard-class|standard-display-8bit|standard-display-ascii|standard-display-cyrillic-translit|standard-display-default|standard-display-european-internal|standard-display-european|standard-display-g1|standard-display-graphic|standard-display-underline|start-kbd-macro|start-of-paragraph-text|start-scheme|starttls-any-program-available|starttls-available-p|starttls-negotiate-gnutls|starttls-negotiate|starttls-open-stream-gnutls|starttls-open-stream|starttls-set-process-query-on-exit-flag|startup-echo-area-message|straight-use-package|store-kbd-macro-event|string-blank-p|string-collate-equalp|string-collate-lessp|string-empty-p|string-insert-rectangle|string-join|string-make-multibyte|string-make-unibyte|string-rectangle-line|string-rectangle|string-remove-prefix|string-remove-suffix|string-reverse|string-to-list|string-to-vector|string-trim-left|string-trim-right|string-trim|strokes-alphabetic-lessp|strokes-button-press-event-p|strokes-button-release-event-p|strokes-click-p|strokes-compose-complex-stroke|strokes-decode-buffer|strokes-define-stroke|strokes-describe-stroke|strokes-distance-squared|strokes-do-complex-stroke|strokes-do-stroke|strokes-eliminate-consecutive-redundancies|strokes-encode-buffer|strokes-event-closest-point-1|strokes-event-closest-point|strokes-execute-stroke|strokes-fill-current-buffer-with-whitespace|strokes-fill-stroke|strokes-get-grid-position|strokes-get-stroke-extent|strokes-global-set-stroke-string|strokes-global-set-stroke|strokes-help|strokes-lift-p|strokes-list-strokes|strokes-load-user-strokes|strokes-match-stroke|strokes-mode|strokes-mouse-event-p|strokes-prompt-user-save-strokes|strokes-rate-stroke|strokes-read-complex-stroke|strokes-read-stroke|strokes-remassoc|strokes-renormalize-to-grid|strokes-report-bug|strokes-square|strokes-toggle-strokes-buffer|strokes-unload-function|strokes-unset-last-stroke|strokes-update-window-configuration|strokes-window-configuration-changed-p|strokes-xpm-char-bit-p|strokes-xpm-char-on-p|strokes-xpm-decode-char|strokes-xpm-encode-length-as-string|strokes-xpm-for-compressed-string|strokes-xpm-for-stroke|strokes-xpm-to-compressed-string|studlify-buffer|studlify-region|studlify-word|sublis|subr-name|subregexp-context-p|subseq|subsetp|subst-char-in-string|subst-if-not|subst-if|subst|substitute-env-in-file-name|substitute-env-vars|substitute-if-not|substitute-if|substitute-key-definition-key|substitute|subtract-time|subword-mode|sunrise-sunset|superword-mode|suspicious-object|svref|switch-to-completions|switch-to-lisp|switch-to-prolog|switch-to-scheme|switch-to-tcl|symbol-at-point|symbol-before-point-for-complete|symbol-before-point|symbol-macrolet|symbol-under-or-before-point|symbol-under-point|syntax-ppss-after-change-function|syntax-ppss-context|syntax-ppss-debug|syntax-ppss-depth|syntax-ppss-stats|syntax-propertize--shift-groups|syntax-propertize-multiline|syntax-propertize-precompile-rules|syntax-propertize-rules|syntax-propertize-via-font-lock|syntax-propertize-wholelines|syntax-propertize|t-mouse-mode|tabify|table--at-cell-p|table--buffer-substring-and-trim|table--cancel-timer|table--cell-blank-str|table--cell-can-span-p|table--cell-can-split-horizontally-p|table--cell-can-split-vertically-p|table--cell-horizontal-char-p|table--cell-insert-char|table--cell-list-to-coord-list|table--cell-to-coord|table--char-in-str-at-column|table--copy-coordinate|table--create-growing-space-below|table--current-line|table--detect-cell-alignment|table--editable-cell-p|table--fill-region-strictly|table--fill-region|table--find-row-column|table--finish-delayed-tasks|table--generate-source-cell-contents|table--generate-source-cells-in-a-row|table--generate-source-epilogue|table--generate-source-prologue|table--generate-source-scan-lines|table--generate-source-scan-rows|table--get-cell-justify-property|table--get-cell-valign-property|table--get-coordinate|table--get-last-command|table--get-property|table--goto-coordinate|table--horizontal-cell-list|table--horizontally-shift-above-and-below|table--insert-rectangle|table--justify-cell-contents|table--line-column-position|table--log|table--make-cell-map|table--measure-max-width|table--min-coord-list|table--multiply-string|table--offset-coordinate|table--point-entered-cell-function|table--point-in-cell-p|table--point-left-cell-function|table--probe-cell-left-up|table--probe-cell-right-bottom|table--probe-cell|table--put-cell-content-property|table--put-cell-face-property|table--put-cell-indicator-property|table--put-cell-justify-property|table--put-cell-keymap-property|table--put-cell-line-property|table--put-cell-point-entered\\\\/left-property|table--put-cell-property|table--put-cell-rear-nonsticky|table--put-cell-valign-property|table--put-property|table--query-justification|table--read-from-minibuffer|table--region-in-cell-p|table--remove-blank-lines|table--remove-cell-properties|table--remove-eol-spaces|table--row-column-insertion-point-p|table--set-timer|table--spacify-frame|table--str-index-at-column|table--string-to-number-list|table--test-cell-list|table--transcoord-cache-to-table|table--transcoord-table-to-cache|table--uniform-list-p|table--untabify-line|table--untabify|table--update-cell-face|table--update-cell-heightened|table--update-cell-widened|table--update-cell|table--valign|table--vertical-cell-list|table--warn-incompatibility|table-backward-cell|table-capture|table-delete-column|table-delete-row|table-fixed-width-mode|table-forward-cell|table-function|table-generate-source|table-get-source-info|table-global-menu-map|table-goto-bottom-left-corner|table-goto-bottom-right-corner|table-goto-top-left-corner|table-goto-top-right-corner|table-heighten-cell|table-insert-column|table-insert-row-column|table-insert-row|table-insert-sequence|table-insert|table-justify-cell|table-justify-column|table-justify-row|table-justify|table-narrow-cell|table-put-source-info|table-query-dimension|table-recognize-cell|table-recognize-region)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:table-recognize-table|table-recognize|table-release|table-shorten-cell|table-span-cell|table-split-cell-horizontally|table-split-cell-vertically|table-split-cell|table-unrecognize-cell|table-unrecognize-region|table-unrecognize-table|table-unrecognize|table-widen-cell|table-with-cache-buffer|tabulated-list--column-number|tabulated-list--sort-by-column-name|tabulated-list-col-sort|tabulated-list-delete-entry|tabulated-list-entry-size->|tabulated-list-get-entry|tabulated-list-get-id|tabulated-list-print-col|tabulated-list-print-entry|tabulated-list-print-fake-header|tabulated-list-put-tag|tabulated-list-revert|tabulated-list-set-col|tabulated-list-sort|tag-any-match-p|tag-exact-file-name-match-p|tag-exact-match-p|tag-file-name-match-p|tag-find-file-of-tag-noselect|tag-find-file-of-tag|tag-implicit-name-match-p|tag-partial-file-name-match-p|tag-re-match-p|tag-symbol-match-p|tag-word-match-p|tags-apropos|tags-complete-tags-table-file|tags-completion-at-point-function|tags-completion-table|tags-expand-table-name|tags-included-tables|tags-lazy-completion-table|tags-loop-continue|tags-loop-eval|tags-next-table|tags-query-replace|tags-recognize-empty-tags-table|tags-reset-tags-tables|tags-search|tags-table-check-computed-list|tags-table-extend-computed-list|tags-table-files|tags-table-including|tags-table-list-member|tags-table-mode|tags-verify-table|tags-with-face|tai-viet-composition-function|tailp|talk-add-display|talk-connect|talk-disconnect|talk-handle-delete-frame|talk-split-up-frame|talk-update-buffers|talk|tar--check-descriptor|tar--extract|tar-alter-one-field|tar-change-major-mode-hook|tar-chgrp-entry|tar-chmod-entry|tar-chown-entry|tar-clear-modification-flags|tar-clip-time-string|tar-copy|tar-current-descriptor|tar-data-swapped-p|tar-display-other-window|tar-expunge-internal|tar-expunge|tar-extract-other-window|tar-extract|tar-file-name-handler|tar-flag-deleted|tar-get-descriptor|tar-get-file-descriptor|tar-grind-file-mode|tar-header-block-check-checksum|tar-header-block-checksum|tar-header-block-summarize|tar-header-block-tokenize|tar-header-checksum--cmacro|tar-header-checksum|tar-header-data-end|tar-header-data-start--cmacro|tar-header-data-start|tar-header-date--cmacro|tar-header-date|tar-header-dmaj--cmacro|tar-header-dmaj|tar-header-dmin--cmacro|tar-header-dmin|tar-header-gid--cmacro|tar-header-gid|tar-header-gname--cmacro|tar-header-gname|tar-header-header-start--cmacro|tar-header-header-start|tar-header-link-name--cmacro|tar-header-link-name|tar-header-link-type--cmacro|tar-header-link-type|tar-header-magic--cmacro|tar-header-magic|tar-header-mode--cmacro|tar-header-mode|tar-header-name--cmacro|tar-header-name|tar-header-p--cmacro|tar-header-p|tar-header-size--cmacro|tar-header-size|tar-header-uid--cmacro|tar-header-uid|tar-header-uname--cmacro|tar-header-uname|tar-mode-kill-buffer-hook|tar-mode-revert|tar-mode|tar-mouse-extract|tar-next-line|tar-octal-time|tar-pad-to-blocksize|tar-parse-octal-integer-safe|tar-parse-octal-integer|tar-parse-octal-long-integer|tar-previous-line|tar-read-file-name|tar-rename-entry|tar-roundup-512|tar-subfile-mode|tar-subfile-save-buffer|tar-summarize-buffer|tar-swap-data|tar-unflag-backwards|tar-unflag|tar-untar-buffer|tar-view|tar-write-region-annotate|tcl-add-log-defun|tcl-auto-fill-mode|tcl-beginning-of-defun|tcl-calculate-indent|tcl-comment-indent|tcl-current-word|tcl-electric-brace|tcl-electric-char|tcl-electric-hash|tcl-end-of-defun|tcl-eval-defun|tcl-eval-region|tcl-figure-type|tcl-files-alist|tcl-filter|tcl-guess-application|tcl-hairy-scan-for-comment|tcl-hashify-buffer|tcl-help-on-word|tcl-help-snarf-commands|tcl-in-comment|tcl-indent-command|tcl-indent-exp|tcl-indent-for-comment|tcl-indent-line|tcl-load-file|tcl-mark-defun|tcl-mark|tcl-mode-menu|tcl-mode|tcl-outline-level|tcl-popup-menu|tcl-quote|tcl-real-command-p|tcl-real-comment-p|tcl-reread-help-files|tcl-restart-with-file|tcl-send-region|tcl-send-string|tcl-set-font-lock-keywords|tcl-set-proc-regexp|tcl-uncomment-region|tcl-word-no-props|tear-off-window|telnet-c-z|telnet-check-software-type-initialize|telnet-filter|telnet-initial-filter|telnet-interrupt-subjob|telnet-mode|telnet-send-input|telnet-simple-send|telnet|temp-buffer-resize-mode|temp-buffer-window-setup|temp-buffer-window-show|tempo-add-tag|tempo-backward-mark|tempo-build-collection|tempo-complete-tag|tempo-define-template|tempo-display-completions|tempo-expand-if-complete|tempo-find-match-string|tempo-forget-insertions|tempo-forward-mark|tempo-insert-mark|tempo-insert-named|tempo-insert-prompt-compat|tempo-insert-prompt|tempo-insert-template|tempo-insert|tempo-invalidate-collection|tempo-is-user-element|tempo-lookup-named|tempo-process-and-insert-string|tempo-save-named|tempo-template-dcl-f\\\\$context|tempo-template-dcl-f\\\\$csid|tempo-template-dcl-f\\\\$cvsi|tempo-template-dcl-f\\\\$cvtime|tempo-template-dcl-f\\\\$cvui|tempo-template-dcl-f\\\\$device|tempo-template-dcl-f\\\\$directory|tempo-template-dcl-f\\\\$edit|tempo-template-dcl-f\\\\$element|tempo-template-dcl-f\\\\$environment|tempo-template-dcl-f\\\\$extract|tempo-template-dcl-f\\\\$fao|tempo-template-dcl-f\\\\$file_attributes|tempo-template-dcl-f\\\\$getdvi|tempo-template-dcl-f\\\\$getjpi|tempo-template-dcl-f\\\\$getqui|tempo-template-dcl-f\\\\$getsyi|tempo-template-dcl-f\\\\$identifier|tempo-template-dcl-f\\\\$integer|tempo-template-dcl-f\\\\$length|tempo-template-dcl-f\\\\$locate|tempo-template-dcl-f\\\\$message|tempo-template-dcl-f\\\\$mode|tempo-template-dcl-f\\\\$parse|tempo-template-dcl-f\\\\$pid|tempo-template-dcl-f\\\\$privilege|tempo-template-dcl-f\\\\$process|tempo-template-dcl-f\\\\$search|tempo-template-dcl-f\\\\$setprv|tempo-template-dcl-f\\\\$string|tempo-template-dcl-f\\\\$time|tempo-template-dcl-f\\\\$trnlnm|tempo-template-dcl-f\\\\$type|tempo-template-dcl-f\\\\$user|tempo-template-dcl-f\\\\$verify|tempo-template-snmp-object-type|tempo-template-snmp-table-type|tempo-template-snmpv2-object-type|tempo-template-snmpv2-table-type|tempo-template-snmpv2-textual-convention|tempo-use-tag-list|tenth|term-adjust-current-row-cache|term-after-pmark-p|term-ansi-make-term|term-ansi-reset|term-args|term-arguments|term-backward-matching-input|term-bol|term-buffer-vertical-motion|term-char-mode|term-check-kill-echo-list|term-check-proc|term-check-size|term-check-source|term-command-hook|term-continue-subjob|term-copy-old-input|term-current-column|term-current-row|term-delchar-or-maybe-eof|term-delete-chars|term-delete-lines|term-delim-arg|term-directory|term-display-buffer-line|term-display-line|term-down|term-dynamic-complete-as-filename|term-dynamic-complete-filename|term-dynamic-complete|term-dynamic-list-completions|term-dynamic-list-filename-completions|term-dynamic-list-input-ring|term-dynamic-simple-complete|term-emulate-terminal|term-erase-in-display|term-erase-in-line|term-exec-1|term-exec|term-extract-string|term-forward-matching-input|term-get-old-input-default|term-get-source|term-goto-home|term-goto|term-handle-ansi-escape|term-handle-ansi-terminal-messages|term-handle-colors-array|term-handle-deferred-scroll|term-handle-exit|term-handle-scroll|term-handling-pager|term-horizontal-column|term-how-many-region|term-in-char-mode|term-in-line-mode|term-insert-char|term-insert-lines|term-insert-spaces|term-interrupt-subjob|term-kill-input|term-kill-output|term-kill-subjob|term-line-mode|term-magic-space|term-match-partial-filename|term-mode|term-mouse-paste|term-move-columns|term-next-input|term-next-matching-input-from-input|term-next-matching-input|term-next-prompt|term-pager-back-line|term-pager-back-page|term-pager-bob|term-pager-continue|term-pager-disable|term-pager-discard|term-pager-enable|term-pager-enabled|term-pager-eob|term-pager-help|term-pager-line|term-pager-menu|term-pager-page|term-pager-toggle|term-paste|term-previous-input-string|term-previous-input|term-previous-matching-input-from-input|term-previous-matching-input-string-position|term-previous-matching-input-string|term-previous-matching-input|term-previous-prompt|term-proc-query|term-process-pager|term-quit-subjob|term-read-input-ring|term-read-noecho|term-regexp-arg|term-replace-by-expanded-filename|term-replace-by-expanded-history-before-point|term-replace-by-expanded-history|term-reset-size|term-reset-terminal|term-search-arg|term-search-start|term-send-backspace|term-send-del|term-send-down|term-send-end|term-send-eof|term-send-home|term-send-input|term-send-insert|term-send-invisible|term-send-left|term-send-next|term-send-prior|term-send-raw-meta|term-send-raw-string|term-send-raw|term-send-region|term-send-right|term-send-string|term-send-up|term-sentinel|term-set-escape-char|term-set-scroll-region|term-show-maximum-output|term-show-output|term-signals-menu|term-simple-send|term-skip-prompt|term-source-default|term-start-line-column|term-start-output-log|term-stop-output-log|term-stop-subjob|term-terminal-menu|term-terminal-pos|term-unwrap-line|term-update-mode-line|term-using-alternate-sub-buffer|term-vertical-motion|term-window-width|term-within-quotes|term-word|term-write-input-ring|term|testcover-1value|testcover-after|testcover-end|testcover-enter|testcover-mark|testcover-read|testcover-reinstrument-compose|testcover-reinstrument-list|testcover-reinstrument|testcover-this-defun|testcover-unmark-all|tetris-active-p|tetris-default-update-speed-function|tetris-display-options|tetris-draw-border-p|tetris-draw-next-shape|tetris-draw-score|tetris-draw-shape|tetris-end-game|tetris-erase-shape|tetris-full-row|tetris-get-shape-cell|tetris-get-tick-period|tetris-init-buffer|tetris-mode|tetris-move-bottom|tetris-move-left|tetris-move-right|tetris-new-shape|tetris-pause-game|tetris-reset-game|tetris-rotate-next|tetris-rotate-prev|tetris-shape-done|tetris-shape-rotations|tetris-shape-width|tetris-shift-down|tetris-shift-row|tetris-start-game|tetris-test-shape|tetris-update-game|tetris-update-score|tetris|tex-alt-print|tex-append|tex-bibtex-file|tex-buffer|tex-categorize-whitespace|tex-close-latex-block|tex-cmd-doc-view|tex-command-active-p|tex-command-executable|tex-common-initialization|tex-compile-default|tex-compile|tex-count-words|tex-current-defun-name|tex-define-common-keys|tex-delete-last-temp-files|tex-display-shell|tex-env-mark|tex-executable-exists-p|tex-expand-files|tex-facemenu-add-face-function|tex-feed-input|tex-file|tex-font-lock-append-prop|tex-font-lock-match-suscript|tex-font-lock-suscript|tex-font-lock-syntactic-face-function|tex-font-lock-unfontify-region|tex-font-lock-verb|tex-format-cmd|tex-generate-zap-file-name|tex-goto-last-unclosed-latex-block|tex-guess-main-file|tex-guess-mode|tex-insert-braces|tex-insert-quote|tex-kill-job|tex-last-unended-begin|tex-last-unended-eparen|tex-latex-block|tex-main-file|tex-mode-flyspell-verify|tex-mode-internal|tex-mode|tex-next-unmatched-end|tex-next-unmatched-eparen|tex-old-error-file-name|tex-print|tex-recenter-output-buffer|tex-region-header|tex-region|tex-search-noncomment|tex-send-command|tex-send-tex-command|tex-set-buffer-directory|tex-shell-buf-no-error|tex-shell-buf|tex-shell-proc|tex-shell-running|tex-shell-sentinel|tex-shell|tex-show-print-queue|tex-start-shell|tex-start-tex|tex-string-prefix-p|tex-summarize-command|tex-suscript-height|tex-terminate-paragraph|tex-uptodate-p|tex-validate-buffer|tex-validate-region|tex-view|texi2info|texinfmt-version|texinfo-alias|texinfo-all-menus-update|texinfo-alphaenumerate-item|texinfo-alphaenumerate|texinfo-anchor|texinfo-append-refill|texinfo-capsenumerate-item|texinfo-capsenumerate|texinfo-check-for-node-name|texinfo-clean-up-node-line|texinfo-clear|texinfo-clone-environment|texinfo-copy-menu-title|texinfo-copy-menu|texinfo-copy-next-section-title|texinfo-copy-node-name|texinfo-copy-section-title|texinfo-copying|texinfo-current-defun-name|texinfo-define-common-keys|texinfo-define-info-enclosure|texinfo-delete-existing-pointers|texinfo-delete-from-print-queue|texinfo-delete-old-menu|texinfo-description|texinfo-discard-command-and-arg|texinfo-discard-command|texinfo-discard-line-with-args|texinfo-discard-line|texinfo-do-flushright|texinfo-do-itemize|texinfo-end-alphaenumerate|texinfo-end-capsenumerate|texinfo-end-defun|texinfo-end-direntry|texinfo-end-enumerate|texinfo-end-example|texinfo-end-flushleft)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:texinfo-end-flushright|texinfo-end-ftable|texinfo-end-indextable|texinfo-end-itemize|texinfo-end-multitable|texinfo-end-table|texinfo-end-vtable|texinfo-enumerate-item|texinfo-enumerate|texinfo-every-node-update|texinfo-filter|texinfo-find-higher-level-node|texinfo-find-lower-level-node|texinfo-find-pointer|texinfo-footnotestyle|texinfo-format-\\\\.|texinfo-format-:|texinfo-format-French-OE-ligature|texinfo-format-French-oe-ligature|texinfo-format-German-sharp-S|texinfo-format-Latin-Scandinavian-AE|texinfo-format-Latin-Scandinavian-ae|texinfo-format-Polish-suppressed-L|texinfo-format-Polish-suppressed-l-lower-case|texinfo-format-Scandinavian-A-with-circle|texinfo-format-Scandinavian-O-with-slash|texinfo-format-Scandinavian-a-with-circle|texinfo-format-Scandinavian-o-with-slash-lower-case|texinfo-format-TeX|texinfo-format-begin-end|texinfo-format-begin|texinfo-format-breve-accent|texinfo-format-buffer-1|texinfo-format-buffer|texinfo-format-bullet|texinfo-format-cedilla-accent|texinfo-format-center|texinfo-format-chapter-1|texinfo-format-chapter|texinfo-format-cindex|texinfo-format-code|texinfo-format-convert|texinfo-format-copyright|texinfo-format-ctrl|texinfo-format-defcv|texinfo-format-deffn|texinfo-format-defindex|texinfo-format-defivar|texinfo-format-defmethod|texinfo-format-defn|texinfo-format-defop|texinfo-format-deftypefn|texinfo-format-deftypefun|texinfo-format-defun-1|texinfo-format-defun|texinfo-format-defunx|texinfo-format-dircategory|texinfo-format-direntry|texinfo-format-documentdescription|texinfo-format-dotless|texinfo-format-dots|texinfo-format-email|texinfo-format-emph|texinfo-format-end-node|texinfo-format-end|texinfo-format-enddots|texinfo-format-equiv|texinfo-format-error|texinfo-format-example|texinfo-format-exdent|texinfo-format-expand-region|texinfo-format-expansion|texinfo-format-findex|texinfo-format-flushleft|texinfo-format-flushright|texinfo-format-footnote|texinfo-format-hacek-accent|texinfo-format-html|texinfo-format-ifeq|texinfo-format-ifhtml|texinfo-format-ifnotinfo|texinfo-format-ifplaintext|texinfo-format-iftex|texinfo-format-ifxml|texinfo-format-ignore|texinfo-format-image|texinfo-format-inforef|texinfo-format-kbd|texinfo-format-key|texinfo-format-kindex|texinfo-format-long-Hungarian-umlaut|texinfo-format-menu|texinfo-format-minus|texinfo-format-node|texinfo-format-noop|texinfo-format-option|texinfo-format-overdot-accent|texinfo-format-paragraph-break|texinfo-format-parse-args|texinfo-format-parse-defun-args|texinfo-format-parse-line-args|texinfo-format-pindex|texinfo-format-point|texinfo-format-pounds|texinfo-format-print|texinfo-format-printindex|texinfo-format-pxref|texinfo-format-refill|texinfo-format-region|texinfo-format-result|texinfo-format-ring-accent|texinfo-format-scan|texinfo-format-section|texinfo-format-sectionpad|texinfo-format-separate-node|texinfo-format-setfilename|texinfo-format-soft-hyphen|texinfo-format-sp|texinfo-format-specialized-defun|texinfo-format-subsection|texinfo-format-subsubsection|texinfo-format-synindex|texinfo-format-tex|texinfo-format-tie-after-accent|texinfo-format-timestamp|texinfo-format-tindex|texinfo-format-titlepage|texinfo-format-titlespec|texinfo-format-today|texinfo-format-underbar-accent|texinfo-format-underdot-accent|texinfo-format-upside-down-exclamation-mark|texinfo-format-upside-down-question-mark|texinfo-format-uref|texinfo-format-var|texinfo-format-verb|texinfo-format-vindex|texinfo-format-xml|texinfo-format-xref|texinfo-ftable-item|texinfo-ftable|texinfo-hierarchic-level|texinfo-if-clear|texinfo-if-set|texinfo-incorporate-descriptions|texinfo-incorporate-menu-entry-names|texinfo-indent-menu-description|texinfo-index-defcv|texinfo-index-deffn|texinfo-index-defivar|texinfo-index-defmethod|texinfo-index-defop|texinfo-index-deftypefn|texinfo-index-defun|texinfo-index|texinfo-indextable-item|texinfo-indextable|texinfo-insert-@code|texinfo-insert-@dfn|texinfo-insert-@email|texinfo-insert-@emph|texinfo-insert-@end|texinfo-insert-@example|texinfo-insert-@file|texinfo-insert-@item|texinfo-insert-@kbd|texinfo-insert-@node|texinfo-insert-@noindent|texinfo-insert-@quotation|texinfo-insert-@samp|texinfo-insert-@strong|texinfo-insert-@table|texinfo-insert-@uref|texinfo-insert-@url|texinfo-insert-@var|texinfo-insert-block|texinfo-insert-braces|texinfo-insert-master-menu-list|texinfo-insert-menu|texinfo-insert-node-lines|texinfo-insert-pointer|texinfo-insert-quote|texinfo-insertcopying|texinfo-inside-env-p|texinfo-inside-macro-p|texinfo-item|texinfo-itemize-item|texinfo-itemize|texinfo-last-unended-begin|texinfo-locate-menu-p|texinfo-make-menu-list|texinfo-make-menu|texinfo-make-one-menu|texinfo-master-menu-list|texinfo-master-menu|texinfo-menu-copy-old-description|texinfo-menu-end|texinfo-menu-first-node|texinfo-menu-indent-description|texinfo-menu-locate-entry-p|texinfo-mode-flyspell-verify|texinfo-mode-menu|texinfo-mode|texinfo-multi-file-included-list|texinfo-multi-file-master-menu-list|texinfo-multi-file-update|texinfo-multi-files-insert-main-menu|texinfo-multiple-files-update|texinfo-multitable-extract-row|texinfo-multitable-item|texinfo-multitable-widths|texinfo-multitable|texinfo-next-unmatched-end|texinfo-noindent|texinfo-old-menu-p|texinfo-optional-braces-discard|texinfo-paragraphindent|texinfo-parse-arg-discard|texinfo-parse-expanded-arg|texinfo-parse-line-arg|texinfo-pointer-name|texinfo-pop-stack|texinfo-print-index|texinfo-push-stack|texinfo-quit-job|texinfo-raise-lower-sections|texinfo-sequential-node-update|texinfo-sequentially-find-pointer|texinfo-sequentially-insert-pointer|texinfo-sequentially-update-the-node|texinfo-set|texinfo-show-structure|texinfo-sort-region|texinfo-sort-startkeyfun|texinfo-specific-section-type|texinfo-start-menu-description|texinfo-table-item|texinfo-table|texinfo-tex-buffer|texinfo-tex-print|texinfo-tex-region|texinfo-tex-view|texinfo-texindex|texinfo-top-pointer-case|texinfo-unsupported|texinfo-update-menu-region-beginning|texinfo-update-menu-region-end|texinfo-update-node|texinfo-update-the-node|texinfo-value|texinfo-vtable-item|texinfo-vtable|text-clone--maintain|text-clone-create|text-mode-hook-identify|text-scale-adjust|text-scale-decrease|text-scale-increase|text-scale-mode|text-scale-set|thai-compose-buffer|thai-compose-region|thai-compose-string|thai-composition-function|the|thing-at-point--bounds-of-markedup-url|thing-at-point--bounds-of-well-formed-url|thing-at-point-bounds-of-list-at-point|thing-at-point-bounds-of-url-at-point|thing-at-point-looking-at|thing-at-point-newsgroup-p|thing-at-point-url-at-point|third|this-major-mode-requires-vi-state|this-single-command-keys|this-single-command-raw-keys|thread-first|thread-last|thumbs-backward-char|thumbs-backward-line|thumbs-call-convert|thumbs-call-setroot-command|thumbs-cleanup-thumbsdir|thumbs-current-image|thumbs-delete-images|thumbs-dired-setroot|thumbs-dired-show-marked|thumbs-dired-show|thumbs-dired|thumbs-display-thumbs-buffer|thumbs-do-thumbs-insertion|thumbs-emboss-image|thumbs-enlarge-image|thumbs-file-alist|thumbs-file-list|thumbs-file-size|thumbs-find-image-at-point-other-window|thumbs-find-image-at-point|thumbs-find-image|thumbs-find-thumb|thumbs-forward-char|thumbs-forward-line|thumbs-image-type|thumbs-insert-image|thumbs-insert-thumb|thumbs-kill-buffer|thumbs-make-thumb|thumbs-mark|thumbs-mode|thumbs-modify-image|thumbs-monochrome-image|thumbs-mouse-find-image|thumbs-negate-image|thumbs-new-image-size|thumbs-next-image|thumbs-previous-image|thumbs-redraw-buffer|thumbs-rename-images|thumbs-resize-image-1|thumbs-resize-image|thumbs-rotate-left|thumbs-rotate-right|thumbs-save-current-image|thumbs-set-image-at-point-to-root-window|thumbs-set-root|thumbs-show-from-dir|thumbs-show-image-num|thumbs-show-more-images|thumbs-show-name|thumbs-show-thumbs-list|thumbs-shrink-image|thumbs-temp-dir|thumbs-temp-file|thumbs-thumbname|thumbs-thumbsdir|thumbs-unmark|thumbs-view-image-mode|thumbs|tibetan-char-p|tibetan-compose-buffer|tibetan-compose-region|tibetan-compose-string|tibetan-decompose-buffer|tibetan-decompose-region|tibetan-decompose-string|tibetan-post-read-conversion|tibetan-pre-write-canonicalize-for-unicode|tibetan-pre-write-conversion|tibetan-tibetan-to-transcription|tibetan-transcription-to-tibetan|tildify--deprecated-ignore-evironments|tildify--find-env|tildify--foreach-region|tildify--pick-alist-entry|tildify-buffer|tildify-foreach-ignore-environments|tildify-region|tildify-tildify|time-date--day-in-year|time-since|time-stamp-conv-warn|time-stamp-do-number|time-stamp-fconcat|time-stamp-mail-host-name|time-stamp-once|time-stamp-string-preprocess|time-stamp-string|time-stamp-toggle-active|time-stamp|time-to-number-of-days|time-to-seconds|timeclock-ask-for-project|timeclock-ask-for-reason|timeclock-change|timeclock-completing-read|timeclock-current-debt|timeclock-currently-in-p|timeclock-day-alist|timeclock-day-base|timeclock-day-begin|timeclock-day-break|timeclock-day-debt|timeclock-day-end|timeclock-day-length|timeclock-day-list-begin|timeclock-day-list-break|timeclock-day-list-debt|timeclock-day-list-end|timeclock-day-list-length|timeclock-day-list-projects|timeclock-day-list-required|timeclock-day-list-span|timeclock-day-list-template|timeclock-day-list|timeclock-day-projects|timeclock-day-required|timeclock-day-span|timeclock-entry-begin|timeclock-entry-comment|timeclock-entry-end|timeclock-entry-length|timeclock-entry-list-begin|timeclock-entry-list-break|timeclock-entry-list-end|timeclock-entry-list-length|timeclock-entry-list-projects|timeclock-entry-list-span|timeclock-entry-project|timeclock-find-discrep|timeclock-generate-report|timeclock-in|timeclock-last-period|timeclock-log-data|timeclock-log|timeclock-make-hours-explicit|timeclock-mean|timeclock-mode-line-display|timeclock-modeline-display|timeclock-out|timeclock-project-alist|timeclock-query-out|timeclock-read-moment|timeclock-reread-log|timeclock-seconds-to-string|timeclock-seconds-to-time|timeclock-status-string|timeclock-time-to-date|timeclock-time-to-seconds|timeclock-update-mode-line|timeclock-update-modeline|timeclock-visit-timelog|timeclock-when-to-leave-string|timeclock-when-to-leave|timeclock-workday-elapsed-string|timeclock-workday-elapsed|timeclock-workday-remaining-string|timeclock-workday-remaining|timeout-event-p|timep|timer--activate|timer--args--cmacro|timer--args|timer--check|timer--function--cmacro|timer--function|timer--high-seconds--cmacro|timer--high-seconds|timer--idle-delay--cmacro|timer--idle-delay|timer--low-seconds--cmacro|timer--low-seconds|timer--psecs--cmacro|timer--psecs|timer--repeat-delay--cmacro|timer--repeat-delay|timer--time-less-p|timer--time-setter|timer--time|timer--triggered--cmacro|timer--triggered|timer--usecs--cmacro|timer--usecs|timer-activate-when-idle|timer-activate|timer-create--cmacro|timer-create|timer-duration|timer-event-handler|timer-inc-time|timer-next-integral-multiple-of-time|timer-relative-time|timer-set-function|timer-set-idle-time|timer-set-time-with-usecs|timer-set-time|timer-until|timerp|timezone-absolute-from-gregorian|timezone-day-number|timezone-fix-time|timezone-last-day-of-month|timezone-leap-year-p|timezone-make-arpa-date|timezone-make-date-arpa-standard|timezone-make-date-sortable|timezone-make-sortable-date|timezone-make-time-string|timezone-parse-date|timezone-parse-time|timezone-time-from-absolute|timezone-time-zone-from-absolute|timezone-zone-to-minute|titdic-convert|tls-certificate-information|tmm--completion-table|tmm-add-one-shortcut|tmm-add-prompt|tmm-add-shortcuts|tmm-completion-delete-prompt|tmm-define-keys|tmm-get-keybind|tmm-get-keymap|tmm-goto-completions|tmm-menubar-mouse|tmm-menubar|tmm-prompt|tmm-remove-inactive-mouse-face|tmm-shortcut|todo--user-error-if-marked-done-item|todo-absolute-file-name|todo-add-category|todo-add-file|todo-adjusted-category-label-length|todo-archive-done-item|todo-archive-mode|todo-backward-category|todo-backward-item|todo-categories-mode|todo-category-completions|todo-category-number|todo-category-select|todo-category-string-matcher-1|todo-category-string-matcher-2|todo-check-file|todo-check-filtered-items-file|todo-check-format|todo-choose-archive|todo-clear-matches|todo-comment-string-matcher|todo-convert-legacy-date-time|todo-convert-legacy-files|todo-current-category|todo-date-string-matcher|todo-delete-category|todo-delete-file|todo-delete-item|todo-desktop-save-buffer)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:todo-diary-expired-matcher|todo-diary-goto-entry|todo-diary-item-p|todo-diary-nonmarking-matcher|todo-display-categories|todo-display-sorted|todo-done-item-p|todo-done-item-section-p|todo-done-separator|todo-done-string-matcher|todo-edit-category-diary-inclusion|todo-edit-category-diary-nonmarking|todo-edit-file|todo-edit-item--diary-inclusion|todo-edit-item--header|todo-edit-item--next-key|todo-edit-item--text|todo-edit-item|todo-edit-mode|todo-edit-quit|todo-files|todo-filter-diary-items-multifile|todo-filter-diary-items|todo-filter-items-1|todo-filter-items-filename|todo-filter-items|todo-filter-regexp-items-multifile|todo-filter-regexp-items|todo-filter-top-priorities-multifile|todo-filter-top-priorities|todo-filtered-items-mode|todo-find-archive|todo-find-filtered-items-file|todo-find-item|todo-forward-category|todo-forward-item|todo-get-count|todo-get-overlay|todo-go-to-source-item|todo-indent|todo-insert-category-line|todo-insert-item--apply-args|todo-insert-item--argsleft|todo-insert-item--basic|todo-insert-item--keyof|todo-insert-item--next-param|todo-insert-item--this-key|todo-insert-item-from-calendar|todo-insert-item|todo-insert-sort-button|todo-insert-with-overlays|todo-item-done|todo-item-end|todo-item-start|todo-item-string|todo-item-undone|todo-jump-to-archive-category|todo-jump-to-category|todo-label-to-key|todo-longest-category-name-length|todo-lower-category|todo-lower-item-priority|todo-make-categories-list|todo-mark-category|todo-marked-item-p|todo-menu|todo-merge-category|todo-mode-external-set|todo-mode-line-control|todo-mode|todo-modes-set-1|todo-modes-set-2|todo-modes-set-3|todo-move-category|todo-move-item|todo-multiple-filter-files|todo-next-button|todo-next-item|todo-nondiary-marker-matcher|todo-padded-string|todo-prefix-overlays|todo-previous-button|todo-previous-item|todo-print-buffer-to-file|todo-print-buffer|todo-quit|todo-raise-category|todo-raise-item-priority|todo-read-category|todo-read-date|todo-read-dayname|todo-read-file-name|todo-read-time|todo-reevaluate-category-completions-files-defcustom|todo-reevaluate-default-file-defcustom|todo-reevaluate-filelist-defcustoms|todo-reevaluate-filter-files-defcustom|todo-remove-item|todo-rename-category|todo-rename-file|todo-repair-categories-sexp|todo-reset-and-enable-done-separator|todo-reset-comment-string|todo-reset-done-separator-string|todo-reset-done-separator|todo-reset-done-string|todo-reset-global-current-todo-file|todo-reset-highlight-item|todo-reset-nondiary-marker|todo-reset-prefix|todo-restore-desktop-buffer|todo-revert-buffer|todo-save-filtered-items-buffer|todo-save|todo-search|todo-set-categories|todo-set-category-number|todo-set-date-from-calendar|todo-set-item-priority|todo-set-show-current-file|todo-set-top-priorities-in-category|todo-set-top-priorities-in-file|todo-set-top-priorities|todo-short-file-name|todo-show-categories-table|todo-show-current-file|todo-show|todo-sort-categories-alphabetically-or-numerically|todo-sort-categories-by-archived|todo-sort-categories-by-diary|todo-sort-categories-by-done|todo-sort-categories-by-todo|todo-sort|todo-time-string-matcher|todo-toggle-item-header|todo-toggle-item-highlighting|todo-toggle-mark-item|todo-toggle-prefix-numbers|todo-toggle-view-done-items|todo-toggle-view-done-only|todo-total-item-counts|todo-unarchive-items|todo-unmark-category|todo-update-buffer-list|todo-update-categories-display|todo-update-categories-sexp|todo-update-count|todo-validate-name|todo-y-or-n-p|toggle-auto-composition|toggle-case-fold-search|toggle-debug-on-error|toggle-debug-on-quit|toggle-emacs-lock|toggle-frame-fullscreen|toggle-frame-maximized|toggle-horizontal-scroll-bar|toggle-indicate-empty-lines|toggle-input-method|toggle-menu-bar-mode-from-frame|toggle-read-only|toggle-rot13-mode|toggle-save-place-globally|toggle-save-place|toggle-scroll-bar|toggle-text-mode-auto-fill|toggle-tool-bar-mode-from-frame|toggle-truncate-lines|toggle-uniquify-buffer-names|toggle-use-system-font|toggle-viper-mode|toggle-word-wrap|tool-bar--image-expression|tool-bar-get-system-style|tool-bar-height|tool-bar-lines-needed|tool-bar-local-item|tool-bar-make-keymap-1|tool-bar-make-keymap|tool-bar-mode|tool-bar-pixel-width|tool-bar-setup|tooltip-cancel-delayed-tip|tooltip-delay|tooltip-event-buffer|tooltip-expr-to-print|tooltip-gud-toggle-dereference|tooltip-help-tips|tooltip-hide|tooltip-identifier-from-point|tooltip-mode|tooltip-process-prompt-regexp|tooltip-set-param|tooltip-show-help-non-mode|tooltip-show-help|tooltip-show|tooltip-start-delayed-tip|tooltip-strip-prompt|tooltip-timeout|tq-buffer|tq-filter|tq-process-buffer|tq-process|tq-queue-add|tq-queue-empty|tq-queue-head-closure|tq-queue-head-fn|tq-queue-head-question|tq-queue-head-regexp|tq-queue-pop|tq-queue|trace--display-buffer|trace--read-args|trace-entry-message|trace-exit-message|trace-function-background|trace-function-foreground|trace-function-internal|trace-function|trace-is-traced|trace-make-advice|trace-values|traceroute|tramp-accept-process-output|tramp-action-login|tramp-action-out-of-band|tramp-action-password|tramp-action-permission-denied|tramp-action-process-alive|tramp-action-succeed|tramp-action-terminal|tramp-action-yesno|tramp-action-yn|tramp-adb-file-name-handler|tramp-adb-file-name-p|tramp-adb-parse-device-names|tramp-autoload-file-name-handler|tramp-backtrace|tramp-buffer-name|tramp-bug|tramp-cache-print|tramp-call-process|tramp-check-cached-permissions|tramp-check-for-regexp|tramp-check-proper-method-and-host|tramp-cleanup-all-buffers|tramp-cleanup-all-connections|tramp-cleanup-connection|tramp-cleanup-this-connection|tramp-clear-passwd|tramp-compat-coding-system-change-eol-conversion|tramp-compat-condition-case-unless-debug|tramp-compat-copy-directory|tramp-compat-copy-file|tramp-compat-decimal-to-octal|tramp-compat-delete-directory|tramp-compat-delete-file|tramp-compat-file-attributes|tramp-compat-font-lock-add-keywords|tramp-compat-funcall|tramp-compat-load|tramp-compat-make-temp-file|tramp-compat-most-positive-fixnum|tramp-compat-number-sequence|tramp-compat-octal-to-decimal|tramp-compat-process-get|tramp-compat-process-put|tramp-compat-process-running-p|tramp-compat-replace-regexp-in-string|tramp-compat-set-process-query-on-exit-flag|tramp-compat-split-string|tramp-compat-temporary-file-directory|tramp-compat-with-temp-message|tramp-completion-dissect-file-name|tramp-completion-dissect-file-name1|tramp-completion-file-name-handler|tramp-completion-handle-file-name-all-completions|tramp-completion-handle-file-name-completion|tramp-completion-make-tramp-file-name|tramp-completion-mode-p|tramp-completion-run-real-handler|tramp-condition-case-unless-debug|tramp-connectable-p|tramp-connection-property-p|tramp-debug-buffer-name|tramp-debug-message|tramp-debug-outline-level|tramp-default-file-modes|tramp-delete-temp-file-function|tramp-dissect-file-name|tramp-drop-volume-letter|tramp-equal-remote|tramp-error-with-buffer|tramp-error|tramp-eshell-directory-change|tramp-exists-file-name-handler|tramp-file-mode-from-int|tramp-file-mode-permissions|tramp-file-name-domain|tramp-file-name-for-operation|tramp-file-name-handler|tramp-file-name-hop|tramp-file-name-host|tramp-file-name-localname|tramp-file-name-method|tramp-file-name-p|tramp-file-name-port|tramp-file-name-real-host|tramp-file-name-real-user|tramp-file-name-user|tramp-find-file-name-coding-system-alist|tramp-find-foreign-file-name-handler|tramp-find-host|tramp-find-method|tramp-find-user|tramp-flush-connection-property|tramp-flush-directory-property|tramp-flush-file-property|tramp-ftp-enable-ange-ftp|tramp-ftp-file-name-handler|tramp-ftp-file-name-p|tramp-get-buffer|tramp-get-completion-function|tramp-get-completion-methods|tramp-get-completion-user-host|tramp-get-connection-buffer|tramp-get-connection-name|tramp-get-connection-process|tramp-get-connection-property|tramp-get-debug-buffer|tramp-get-device|tramp-get-file-property|tramp-get-inode|tramp-get-local-gid|tramp-get-local-uid|tramp-get-method-parameter|tramp-get-remote-tmpdir|tramp-gvfs-file-name-handler|tramp-gvfs-file-name-p|tramp-gw-open-connection|tramp-handle-directory-file-name|tramp-handle-directory-files-and-attributes|tramp-handle-directory-files|tramp-handle-dired-uncache|tramp-handle-file-accessible-directory-p|tramp-handle-file-exists-p|tramp-handle-file-modes|tramp-handle-file-name-as-directory|tramp-handle-file-name-completion|tramp-handle-file-name-directory|tramp-handle-file-name-nondirectory|tramp-handle-file-newer-than-file-p|tramp-handle-file-notify-add-watch|tramp-handle-file-notify-rm-watch|tramp-handle-file-regular-p|tramp-handle-file-remote-p|tramp-handle-file-symlink-p|tramp-handle-find-backup-file-name|tramp-handle-insert-directory|tramp-handle-insert-file-contents|tramp-handle-load|tramp-handle-make-auto-save-file-name|tramp-handle-make-symbolic-link|tramp-handle-set-visited-file-modtime|tramp-handle-shell-command|tramp-handle-substitute-in-file-name|tramp-handle-unhandled-file-name-directory|tramp-handle-verify-visited-file-modtime|tramp-list-connections|tramp-local-host-p|tramp-make-tramp-file-name|tramp-make-tramp-temp-file|tramp-message|tramp-mode-string-to-int|tramp-parse-connection-properties|tramp-parse-file|tramp-parse-group|tramp-parse-hosts-group|tramp-parse-hosts|tramp-parse-netrc-group|tramp-parse-netrc|tramp-parse-passwd-group|tramp-parse-passwd|tramp-parse-putty-group|tramp-parse-putty|tramp-parse-rhosts-group|tramp-parse-rhosts|tramp-parse-sconfig-group|tramp-parse-sconfig|tramp-parse-shostkeys-sknownhosts|tramp-parse-shostkeys|tramp-parse-shosts-group|tramp-parse-shosts|tramp-parse-sknownhosts|tramp-process-actions|tramp-process-one-action|tramp-progress-reporter-update|tramp-read-passwd|tramp-register-autoload-file-name-handlers|tramp-register-file-name-handlers|tramp-replace-environment-variables|tramp-rfn-eshadow-setup-minibuffer|tramp-rfn-eshadow-update-overlay|tramp-run-real-handler|tramp-send-string|tramp-set-auto-save-file-modes|tramp-set-completion-function|tramp-set-connection-property|tramp-set-file-property|tramp-sh-file-name-handler|tramp-shell-quote-argument|tramp-smb-file-name-handler|tramp-smb-file-name-p|tramp-subst-strs-in-string|tramp-time-diff|tramp-tramp-file-p|tramp-unload-file-name-handlers|tramp-unload-tramp|tramp-user-error|tramp-uuencode-region|tramp-version|tramp-wait-for-regexp|transform-make-coding-system-args|translate-region-internal|transpose-chars|transpose-lines|transpose-paragraphs|transpose-sentences|transpose-sexps|transpose-subr-1|transpose-subr|transpose-words|tree-equal|tree-widget--locate-sub-directory|tree-widget-action|tree-widget-button-click|tree-widget-children-value-save|tree-widget-convert-widget|tree-widget-create-image|tree-widget-expander-p|tree-widget-find-image|tree-widget-help-echo|tree-widget-icon-action|tree-widget-icon-create|tree-widget-icon-help-echo|tree-widget-image-formats|tree-widget-image-properties|tree-widget-keep|tree-widget-leaf-node-icon-p|tree-widget-lookup-image|tree-widget-node|tree-widget-p|tree-widget-set-image-properties|tree-widget-set-parent-theme|tree-widget-set-theme|tree-widget-theme-name|tree-widget-themes-path|tree-widget-use-image-p|tree-widget-value-create|truncate\\\\*|truncated-partial-width-window-p|try-complete-file-name-partially|try-complete-file-name|try-complete-lisp-symbol-partially|try-complete-lisp-symbol|try-expand-all-abbrevs|try-expand-dabbrev-all-buffers|try-expand-dabbrev-from-kill|try-expand-dabbrev-visible|try-expand-dabbrev|try-expand-line-all-buffers|try-expand-line|try-expand-list-all-buffers|try-expand-list|try-expand-whole-kill|tty-color-by-index|tty-color-canonicalize|tty-color-desc|tty-color-gray-shades|tty-color-off-gray-diag|tty-color-standard-values|tty-color-values|tty-create-frame-with-faces|tty-display-color-cells|tty-display-color-p|tty-find-type|tty-handle-args|tty-handle-reverse-video|tty-modify-color-alist|tty-no-underline|tty-register-default-colors|tty-run-terminal-initialization|tty-set-up-initial-frame-faces|tty-suppress-bold-inverse-default-colors|tty-type|tumme|turkish-case-conversion-disable|turkish-case-conversion-enable|turn-off-auto-fill|turn-off-flyspell|turn-off-follow-mode|turn-off-hideshow|turn-off-iimage-mode|turn-off-xterm-mouse-tracking-on-terminal|turn-on-auto-fill|turn-on-auto-revert-mode|turn-on-auto-revert-tail-mode|turn-on-cwarn-mode-if-enabled|turn-on-cwarn-mode|turn-on-eldoc-mode|turn-on-flyspell|turn-on-follow-mode|turn-on-font-lock-if-desired|turn-on-font-lock|turn-on-gnus-dired-mode)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:turn-on-gnus-mailing-list-mode|turn-on-hi-lock-if-enabled|turn-on-iimage-mode|turn-on-org-cdlatex|turn-on-orgstruct\\\\+\\\\+|turn-on-orgstruct|turn-on-orgtbl|turn-on-prettify-symbols-mode|turn-on-reftex|turn-on-visual-line-mode|turn-on-xterm-mouse-tracking-on-terminal|type-break-alarm|type-break-cancel-function-timers|type-break-cancel-schedule|type-break-cancel-time-warning-schedule|type-break-catch-up-event|type-break-check-keystroke-warning|type-break-check-post-command-hook|type-break-check|type-break-choose-file|type-break-demo-boring|type-break-demo-hanoi|type-break-demo-life|type-break-do-query|type-break-file-keystroke-count|type-break-file-time|type-break-force-mode-line-update|type-break-format-time|type-break-get-previous-count|type-break-get-previous-time|type-break-guesstimate-keystroke-threshold|type-break-keystroke-reset|type-break-keystroke-warning|type-break-mode-line-countdown-or-break|type-break-mode-line-message-mode|type-break-mode|type-break-noninteractive-query|type-break-query-mode|type-break-query|type-break-run-at-time|type-break-run-tb-post-command-hook|type-break-schedule|type-break-statistics|type-break-time-difference|type-break-time-stamp|type-break-time-sum|type-break-time-warning-alarm|type-break-time-warning-schedule|type-break-time-warning|type-break|typecase|typep|uce-insert-ranting|uce-reply-to-uce|ucs-input-activate|ucs-insert|ucs-names|ucs-normalize-HFS-NFC-region|ucs-normalize-HFS-NFC-string|ucs-normalize-HFS-NFD-region|ucs-normalize-HFS-NFD-string|ucs-normalize-NFC-region|ucs-normalize-NFC-string|ucs-normalize-NFD-region|ucs-normalize-NFD-string|ucs-normalize-NFKC-region|ucs-normalize-NFKC-string|ucs-normalize-NFKD-region|ucs-normalize-NFKD-string|uncomment-region-default|uncomment-region|uncompface|underline-region|undigestify-rmail-message|undo-adjust-beg-end|undo-adjust-elt|undo-adjust-pos|undo-copy-list-1|undo-copy-list|undo-delta|undo-elt-crosses-region|undo-elt-in-region|undo-make-selective-list|undo-more|undo-only|undo-outer-limit-truncate|undo-start|undo|unencodable-char-position|unexpand-abbrev|unfocus-frame|unforward-rmail-message|unhighlight-regexp|unicode-property-table-internal|unify-8859-on-decoding-mode|unify-8859-on-encoding-mode|unify-charset|union|uniquify--create-file-buffer-advice|uniquify--rename-buffer-advice|uniquify-buffer-base-name|uniquify-buffer-file-name|uniquify-get-proposed-name|uniquify-item-base--cmacro|uniquify-item-base|uniquify-item-buffer--cmacro|uniquify-item-buffer|uniquify-item-dirname--cmacro|uniquify-item-dirname|uniquify-item-greaterp|uniquify-item-p--cmacro|uniquify-item-p|uniquify-item-proposed--cmacro|uniquify-item-proposed|uniquify-kill-buffer-function|uniquify-make-item--cmacro|uniquify-make-item|uniquify-maybe-rerationalize-w\\\\/o-cb|uniquify-rationalize-a-list|uniquify-rationalize-conflicting-sublist|uniquify-rationalize-file-buffer-names|uniquify-rationalize|uniquify-rename-buffer|uniquify-rerationalize-w\\\\/o-cb|uniquify-unload-function|universal-argument--mode|universal-argument-more|universal-coding-system-argument|unix-sync|unjustify-current-line|unjustify-region|unload--set-major-mode|unmorse-region|unmsys--file-name|unread-bib|unrecord-window-buffer|unrmail|unsafep-function|unsafep-let|unsafep-progn|unsafep-variable|untabify-backward|untabify|untrace-all|untrace-function|ununderline-region|up-ifdef|upcase-initials-region|update-glyphless-char-display|update-leim-list-file|url--allowed-chars|url-attributes--cmacro|url-attributes|url-auth-registered|url-auth-user-prompt|url-basepath|url-basic-auth|url-bit-for-url|url-build-query-string|url-cache-create-filename|url-cache-extract|url-cache-prune-cache|url-cid|url-completion-function|url-cookie-clean-up|url-cookie-create--cmacro|url-cookie-create|url-cookie-delete|url-cookie-domain--cmacro|url-cookie-domain|url-cookie-expired-p|url-cookie-expires--cmacro|url-cookie-expires|url-cookie-generate-header-lines|url-cookie-handle-set-cookie|url-cookie-host-can-set-p|url-cookie-list|url-cookie-localpart--cmacro|url-cookie-localpart|url-cookie-mode|url-cookie-name--cmacro|url-cookie-name|url-cookie-p--cmacro|url-cookie-p|url-cookie-parse-file|url-cookie-quit|url-cookie-retrieve|url-cookie-secure--cmacro|url-cookie-secure|url-cookie-setup-save-timer|url-cookie-store|url-cookie-value--cmacro|url-cookie-value|url-cookie-write-file|url-copy-file|url-data|url-dav-request|url-dav-supported-p|url-dav-vc-registered|url-debug|url-default-expander|url-default-find-proxy-for-url|url-device-type|url-digest-auth-create-key|url-digest-auth|url-display-percentage|url-do-auth-source-search|url-do-setup|url-domsuf-cookie-allowed-p|url-domsuf-parse-file|url-eat-trailing-space|url-encode-url|url-expand-file-name|url-expander-remove-relative-links|url-extract-mime-headers|url-file-directory|url-file-extension|url-file-handler|url-file-local-copy|url-file-nondirectory|url-file|url-filename--cmacro|url-filename|url-find-proxy-for-url|url-fullness--cmacro|url-fullness|url-gateway-nslookup-host|url-gc-dead-buffers|url-generate-unique-filename|url-generic-emulator-loader|url-generic-parse-url|url-get-authentication|url-get-normalized-date|url-get-url-at-point|url-handle-content-transfer-encoding|url-handler-mode|url-have-visited-url|url-hexify-string|url-history-parse-history|url-history-save-history|url-history-setup-save-timer|url-history-update-url|url-host--cmacro|url-host|url-http-activate-callback|url-http-async-sentinel|url-http-chunked-encoding-after-change-function|url-http-clean-headers|url-http-content-length-after-change-function|url-http-create-request|url-http-debug|url-http-end-of-document-sentinel|url-http-expand-file-name|url-http-file-attributes|url-http-file-exists-p|url-http-file-readable-p|url-http-find-free-connection|url-http-generic-filter|url-http-handle-authentication|url-http-handle-cookies|url-http-head-file-attributes|url-http-head|url-http-idle-sentinel|url-http-mark-connection-as-busy|url-http-mark-connection-as-free|url-http-options|url-http-parse-headers|url-http-parse-response|url-http-simple-after-change-function|url-http-symbol-value-in-buffer|url-http-user-agent-string|url-http-wait-for-headers-change-function|url-http|url-https-create-secure-wrapper|url-https-expand-file-name|url-https-file-attributes|url-https-file-exists-p|url-https-file-readable-p|url-https|url-identity-expander|url-info|url-insert-entities-in-string|url-insert-file-contents|url-irc|url-is-cached|url-lazy-message|url-ldap|url-mail|url-mailto|url-make-private-file|url-man|url-mark-buffer-as-dead|url-mime-charset-string|url-mm-callback|url-mm-url|url-news|url-normalize-url|url-ns-prefs|url-ns-user-pref|url-open-rlogin|url-open-stream|url-open-telnet|url-p--cmacro|url-p|url-parse-args|url-parse-make-urlobj--cmacro|url-parse-make-urlobj|url-parse-query-string|url-password--cmacro|url-password-for-url|url-password|url-path-and-query|url-percentage|url-port-if-non-default|url-port|url-portspec--cmacro|url-portspec|url-pretty-length|url-proxy|url-queue-buffer--cmacro|url-queue-buffer|url-queue-callback--cmacro|url-queue-callback-function|url-queue-callback|url-queue-cbargs--cmacro|url-queue-cbargs|url-queue-inhibit-cookiesp--cmacro|url-queue-inhibit-cookiesp|url-queue-kill-job|url-queue-p--cmacro|url-queue-p|url-queue-pre-triggered--cmacro|url-queue-pre-triggered|url-queue-prune-old-entries|url-queue-remove-jobs-from-host|url-queue-retrieve|url-queue-run-queue|url-queue-setup-runners|url-queue-silentp--cmacro|url-queue-silentp|url-queue-start-retrieve|url-queue-start-time--cmacro|url-queue-start-time|url-queue-url--cmacro|url-queue-url|url-recreate-url-attributes|url-recreate-url|url-register-auth-scheme|url-retrieve-internal|url-retrieve-synchronously|url-retrieve|url-rlogin|url-scheme-default-loader|url-scheme-get-property|url-scheme-register-proxy|url-set-mime-charset-string|url-setup-privacy-info|url-silent--cmacro|url-silent|url-snews|url-store-in-cache|url-strip-leading-spaces|url-target--cmacro|url-target|url-telnet|url-tn3270|url-tramp-file-handler|url-truncate-url-for-viewing|url-type--cmacro|url-type|url-unhex-string|url-unhex|url-use-cookies--cmacro|url-use-cookies|url-user--cmacro|url-user-for-url|url-user|url-view-url|url-wait-for-string|url-warn|use-cjk-char-width-table|use-completion-backward-under|use-completion-backward|use-completion-before-point|use-completion-before-separator|use-completion-minibuffer-separator|use-completion-under-or-before-point|use-completion-under-point|use-default-char-width-table|use-fancy-splash-screens-p|use-package|user-original-login-name|user-variable-p|utf-7-imap-post-read-conversion|utf-7-imap-pre-write-conversion|utf-7-post-read-conversion|utf-7-pre-write-conversion|utf7-decode|utf7-encode|uudecode-char-int|uudecode-decode-region-external|uudecode-decode-region-internal|uudecode-decode-region|uudecode-string-to-multibyte|values-list|variable-at-point|variable-binding-locus|variable-pitch-mode|vc--add-line|vc--process-sentinel|vc--read-lines|vc--remove-regexp|vc-after-save|vc-annotate|vc-backend-for-registration|vc-backend-subdirectory-name|vc-backend|vc-before-save|vc-branch-p|vc-branch-part|vc-buffer-context|vc-buffer-sync|vc-bzr-registered|vc-call-backend|vc-call|vc-check-headers|vc-check-master-templates|vc-checkin|vc-checkout-model|vc-checkout|vc-clear-context|vc-coding-system-for-diff|vc-comment-search-forward|vc-comment-search-reverse|vc-comment-to-change-log|vc-compatible-state|vc-compilation-mode|vc-context-matches-p|vc-create-repo|vc-create-tag|vc-cvs-after-dir-status|vc-cvs-annotate-command|vc-cvs-annotate-current-time|vc-cvs-annotate-extract-revision-at-line|vc-cvs-annotate-process-filter|vc-cvs-annotate-time|vc-cvs-append-to-ignore|vc-cvs-check-headers|vc-cvs-checkin|vc-cvs-checkout-model|vc-cvs-checkout|vc-cvs-command|vc-cvs-comment-history|vc-cvs-could-register|vc-cvs-create-tag|vc-cvs-delete-file|vc-cvs-diff|vc-cvs-dir-extra-headers|vc-cvs-dir-status-files|vc-cvs-dir-status-heuristic|vc-cvs-file-to-string|vc-cvs-find-admin-dir|vc-cvs-find-revision|vc-cvs-get-entries|vc-cvs-ignore|vc-cvs-make-version-backups-p|vc-cvs-merge-file|vc-cvs-merge-news|vc-cvs-merge|vc-cvs-mode-line-string|vc-cvs-modify-change-comment|vc-cvs-next-revision|vc-cvs-parse-entry|vc-cvs-parse-root|vc-cvs-parse-status|vc-cvs-parse-sticky-tag|vc-cvs-parse-uhp|vc-cvs-previous-revision|vc-cvs-print-log|vc-cvs-register|vc-cvs-registered|vc-cvs-repository-hostname|vc-cvs-responsible-p|vc-cvs-retrieve-tag|vc-cvs-revert|vc-cvs-revision-completion-table|vc-cvs-revision-granularity|vc-cvs-revision-table|vc-cvs-state-heuristic|vc-cvs-state|vc-cvs-stay-local-p|vc-cvs-update-changelog|vc-cvs-valid-revision-number-p|vc-cvs-valid-symbolic-tag-name-p|vc-cvs-working-revision|vc-deduce-backend|vc-deduce-fileset|vc-default-check-headers|vc-default-comment-history|vc-default-dir-status-files|vc-default-extra-menu|vc-default-find-file-hook|vc-default-find-revision|vc-default-ignore-completion-table|vc-default-ignore|vc-default-log-edit-mode|vc-default-log-view-mode|vc-default-make-version-backups-p|vc-default-mark-resolved|vc-default-mode-line-string|vc-default-receive-file|vc-default-registered|vc-default-rename-file|vc-default-responsible-p|vc-default-retrieve-tag|vc-default-revert|vc-default-revision-completion-table|vc-default-show-log-entry|vc-default-working-revision|vc-delete-automatic-version-backups|vc-delete-file|vc-delistify|vc-diff-build-argument-list-internal|vc-diff-finish|vc-diff-internal|vc-diff-switches-list|vc-diff|vc-dir-mode|vc-dir|vc-dired-deduce-fileset|vc-dispatcher-browsing|vc-do-async-command|vc-do-command|vc-ediff|vc-editable-p|vc-ensure-vc-buffer|vc-error-occurred|vc-exec-after|vc-expand-dirs|vc-file-clearprops|vc-file-getprop|vc-file-setprop|vc-file-tree-walk-internal|vc-file-tree-walk|vc-find-backend-function|vc-find-conflicted-file|vc-find-file-hook|vc-find-position-by-context|vc-find-revision|vc-find-root|vc-finish-logentry|vc-follow-link|vc-git-registered|vc-hg-registered|vc-ignore|vc-incoming-outgoing-internal|vc-insert-file|vc-insert-headers|vc-kill-buffer-hook|vc-log-edit|vc-log-incoming|vc-log-internal-common|vc-log-outgoing|vc-make-backend-sym|vc-make-version-backup|vc-mark-resolved|vc-maybe-resolve-conflicts|vc-menu-map-filter|vc-menu-map|vc-merge|vc-mode-line|vc-modify-change-comment|vc-mtn-registered|vc-next-action|vc-next-comment|vc-parse-buffer)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:vc-position-context|vc-possible-master|vc-previous-comment|vc-print-log-internal|vc-print-log-setup-buttons|vc-print-log|vc-print-root-log|vc-process-filter|vc-pull|vc-rcs-registered|vc-read-backend|vc-read-revision|vc-region-history|vc-register-with|vc-register|vc-registered|vc-rename-file|vc-resolve-conflicts|vc-responsible-backend|vc-restore-buffer-context|vc-resynch-buffer|vc-resynch-buffers-in-directory|vc-resynch-window|vc-retrieve-tag|vc-revert-buffer-internal|vc-revert-buffer|vc-revert-file|vc-revert|vc-revision-other-window|vc-rollback|vc-root-diff|vc-root-dir|vc-run-delayed|vc-sccs-registered|vc-sccs-search-project-dir|vc-set-async-update|vc-set-mode-line-busy-indicator|vc-setup-buffer|vc-src-registered|vc-start-logentry|vc-state-refresh|vc-state|vc-steal-lock|vc-string-prefix-p|vc-svn-registered|vc-switch-backend|vc-switches|vc-tag-precondition|vc-toggle-read-only|vc-transfer-file|vc-up-to-date-p|vc-update-change-log|vc-update|vc-user-login-name|vc-version-backup-file-name|vc-version-backup-file|vc-version-diff|vc-version-ediff|vc-workfile-version|vc-working-revision|vcursor-backward-char|vcursor-backward-word|vcursor-beginning-of-buffer|vcursor-beginning-of-line|vcursor-bind-keys|vcursor-check|vcursor-compare-windows|vcursor-copy-line|vcursor-copy-word|vcursor-copy|vcursor-cs-binding|vcursor-disable|vcursor-end-of-buffer|vcursor-end-of-line|vcursor-execute-command|vcursor-execute-key|vcursor-find-window|vcursor-forward-char|vcursor-forward-word|vcursor-get-char-count|vcursor-goto|vcursor-insert|vcursor-isearch-backward|vcursor-isearch-forward|vcursor-locate|vcursor-map|vcursor-move|vcursor-next-line|vcursor-other-window|vcursor-post-command|vcursor-previous-line|vcursor-relative-move|vcursor-scroll-down|vcursor-scroll-up|vcursor-swap-point|vcursor-toggle-copy|vcursor-toggle-vcursor-map|vcursor-use-vcursor-map|vcursor-window-funcall|vector-or-char-table-p|vendor-specific-keysyms|vera-add-syntax|vera-backward-same-indent|vera-backward-statement|vera-backward-syntactic-ws|vera-beginning-of-statement|vera-beginning-of-substatement|vera-comment-uncomment-region|vera-corresponding-begin|vera-corresponding-if|vera-customize|vera-electric-closing-brace|vera-electric-opening-brace|vera-electric-pound|vera-electric-return|vera-electric-slash|vera-electric-space|vera-electric-star|vera-electric-tab|vera-evaluate-offset|vera-expand-abbrev|vera-font-lock-match-item|vera-fontify-buffer|vera-forward-same-indent|vera-forward-statement|vera-forward-syntactic-ws|vera-get-offset|vera-guess-basic-syntax|vera-in-literal|vera-indent-block-closing|vera-indent-buffer|vera-indent-line|vera-indent-region|vera-langelem-col|vera-lineup-C-comments|vera-lineup-comment|vera-mode-menu|vera-mode|vera-point|vera-prepare-search|vera-re-search-backward|vera-re-search-forward|vera-skip-backward-literal|vera-skip-forward-literal|vera-submit-bug-report|vera-try-expand-abbrev|vera-version|verify-xscheme-buffer|verilog-add-list-unique|verilog-alw-get-inputs|verilog-alw-get-outputs-delayed|verilog-alw-get-outputs-immediate|verilog-alw-get-temps|verilog-alw-get-uses-delayed|verilog-alw-new|verilog-at-close-constraint-p|verilog-at-close-struct-p|verilog-at-constraint-p|verilog-at-struct-mv-p|verilog-at-struct-p|verilog-auto-arg-ports|verilog-auto-arg|verilog-auto-ascii-enum|verilog-auto-assign-modport|verilog-auto-inout-comp|verilog-auto-inout-in|verilog-auto-inout-modport|verilog-auto-inout-module|verilog-auto-inout-param|verilog-auto-inout|verilog-auto-input|verilog-auto-insert-last|verilog-auto-insert-lisp|verilog-auto-inst-first|verilog-auto-inst-param|verilog-auto-inst-port-list|verilog-auto-inst-port-map|verilog-auto-inst-port|verilog-auto-inst|verilog-auto-logic-setup|verilog-auto-logic|verilog-auto-output-every|verilog-auto-output|verilog-auto-re-search-do|verilog-auto-read-locals|verilog-auto-reeval-locals|verilog-auto-reg-input|verilog-auto-reg|verilog-auto-reset|verilog-auto-save-check|verilog-auto-save-compile|verilog-auto-sense-sigs|verilog-auto-sense|verilog-auto-star-safe|verilog-auto-star|verilog-auto-template-lint|verilog-auto-templated-rel|verilog-auto-tieoff|verilog-auto-undef|verilog-auto-unused|verilog-auto-wire|verilog-auto|verilog-back-to-start-translate-off|verilog-backward-case-item|verilog-backward-open-bracket|verilog-backward-open-paren|verilog-backward-sexp|verilog-backward-syntactic-ws-quick|verilog-backward-syntactic-ws|verilog-backward-token|verilog-backward-up-list|verilog-backward-ws&directives|verilog-batch-auto|verilog-batch-delete-auto|verilog-batch-delete-trailing-whitespace|verilog-batch-diff-auto|verilog-batch-error-wrapper|verilog-batch-execute-func|verilog-batch-indent|verilog-batch-inject-auto|verilog-beg-of-defun-quick|verilog-beg-of-defun|verilog-beg-of-statement-1|verilog-beg-of-statement|verilog-booleanp|verilog-build-defun-re|verilog-calc-1|verilog-calculate-indent-directive|verilog-calculate-indent|verilog-case-indent-level|verilog-clog2|verilog-colorize-include-files-buffer|verilog-comment-depth|verilog-comment-indent|verilog-comment-region|verilog-comp-defun|verilog-complete-word|verilog-completion-response|verilog-completion|verilog-continued-line-1|verilog-continued-line|verilog-current-flags|verilog-current-indent-level|verilog-customize|verilog-declaration-beg|verilog-declaration-end|verilog-decls-append|verilog-decls-get-assigns|verilog-decls-get-consts|verilog-decls-get-gparams|verilog-decls-get-inouts|verilog-decls-get-inputs|verilog-decls-get-interfaces|verilog-decls-get-iovars|verilog-decls-get-modports|verilog-decls-get-outputs|verilog-decls-get-ports|verilog-decls-get-signals|verilog-decls-get-vars|verilog-decls-new|verilog-decls-princ|verilog-define-abbrev|verilog-delete-auto-star-all|verilog-delete-auto-star-implicit|verilog-delete-auto|verilog-delete-autos-lined|verilog-delete-empty-auto-pair|verilog-delete-to-paren|verilog-delete-trailing-whitespace|verilog-diff-auto|verilog-diff-buffers-p|verilog-diff-file-with-buffer|verilog-diff-report|verilog-dir-file-exists-p|verilog-dir-files|verilog-do-indent|verilog-easy-menu-filter|verilog-end-of-defun|verilog-end-of-statement|verilog-end-translate-off|verilog-enum-ascii|verilog-error-regexp-add-emacs|verilog-expand-command|verilog-expand-dirnames|verilog-expand-vector-internal|verilog-expand-vector|verilog-faq|verilog-font-customize|verilog-font-lock-match-item|verilog-forward-close-paren|verilog-forward-or-insert-line|verilog-forward-sexp-cmt|verilog-forward-sexp-function|verilog-forward-sexp-ign-cmt|verilog-forward-sexp|verilog-forward-syntactic-ws|verilog-forward-ws&directives|verilog-func-completion|verilog-generate-numbers|verilog-get-completion-decl|verilog-get-default-symbol|verilog-get-end-of-defun|verilog-get-expr|verilog-get-lineup-indent-2|verilog-get-lineup-indent|verilog-getopt-file|verilog-getopt-flags|verilog-getopt|verilog-goto-defun-file|verilog-goto-defun|verilog-header|verilog-highlight-buffer|verilog-highlight-region|verilog-in-attribute-p|verilog-in-case-region-p|verilog-in-comment-or-string-p|verilog-in-comment-p|verilog-in-coverage-p|verilog-in-directive-p|verilog-in-escaped-name-p|verilog-in-fork-region-p|verilog-in-generate-region-p|verilog-in-parameter-p|verilog-in-paren-count|verilog-in-paren-quick|verilog-in-paren|verilog-in-parenthesis-p|verilog-in-slash-comment-p|verilog-in-star-comment-p|verilog-in-struct-nested-p|verilog-in-struct-p|verilog-indent-buffer|verilog-indent-comment|verilog-indent-declaration|verilog-indent-line-relative|verilog-indent-line|verilog-inject-arg|verilog-inject-auto|verilog-inject-inst|verilog-inject-sense|verilog-insert-1|verilog-insert-block|verilog-insert-date|verilog-insert-definition|verilog-insert-indent|verilog-insert-indices|verilog-insert-last-command-event|verilog-insert-one-definition|verilog-insert-year|verilog-insert|verilog-inside-comment-or-string-p|verilog-is-number|verilog-just-one-space|verilog-keyword-completion|verilog-kill-existing-comment|verilog-label-be|verilog-leap-to-case-head|verilog-leap-to-head|verilog-library-filenames|verilog-lint-off|verilog-linter-name|verilog-load-file-at-mouse|verilog-load-file-at-point|verilog-make-width-expression|verilog-mark-defun|verilog-match-translate-off|verilog-menu|verilog-mode|verilog-modi-cache-add-gparams|verilog-modi-cache-add-inouts|verilog-modi-cache-add-inputs|verilog-modi-cache-add-outputs|verilog-modi-cache-add-vars|verilog-modi-cache-add|verilog-modi-cache-results|verilog-modi-current-get|verilog-modi-current|verilog-modi-file-or-buffer|verilog-modi-filename|verilog-modi-get-decls|verilog-modi-get-point|verilog-modi-get-sub-decls|verilog-modi-get-type|verilog-modi-goto|verilog-modi-lookup|verilog-modi-modport-lookup-one|verilog-modi-modport-lookup|verilog-modi-name|verilog-modi-new|verilog-modify-compile-command|verilog-modport-clockings-add|verilog-modport-clockings|verilog-modport-decls-set|verilog-modport-decls|verilog-modport-name|verilog-modport-new|verilog-modport-princ|verilog-module-filenames|verilog-module-inside-filename-p|verilog-more-comment|verilog-one-line|verilog-parenthesis-depth|verilog-point-text|verilog-preprocess|verilog-preserve-dir-cache|verilog-preserve-modi-cache|verilog-pretty-declarations-auto|verilog-pretty-declarations|verilog-pretty-expr|verilog-re-search-backward-quick|verilog-re-search-backward-substr|verilog-re-search-backward|verilog-re-search-forward-quick|verilog-re-search-forward-substr|verilog-re-search-forward|verilog-read-always-signals-recurse|verilog-read-always-signals|verilog-read-arg-pins|verilog-read-auto-constants|verilog-read-auto-lisp-present|verilog-read-auto-lisp|verilog-read-auto-params|verilog-read-auto-template-hit|verilog-read-auto-template-middle|verilog-read-auto-template|verilog-read-decls|verilog-read-defines|verilog-read-includes|verilog-read-inst-backward-name|verilog-read-inst-module-matcher|verilog-read-inst-module|verilog-read-inst-name|verilog-read-inst-param-value|verilog-read-inst-pins|verilog-read-instants|verilog-read-module-name|verilog-read-signals|verilog-read-sub-decls-expr|verilog-read-sub-decls-gate|verilog-read-sub-decls-line|verilog-read-sub-decls-sig|verilog-read-sub-decls|verilog-regexp-opt|verilog-regexp-words|verilog-repair-close-comma|verilog-repair-open-comma|verilog-run-hooks|verilog-save-buffer-state|verilog-save-font-mods|verilog-save-no-change-functions|verilog-save-scan-cache|verilog-scan-and-debug|verilog-scan-cache-flush|verilog-scan-cache-ok-p|verilog-scan-debug|verilog-scan-region|verilog-scan|verilog-set-auto-endcomments|verilog-set-compile-command|verilog-set-define|verilog-show-completions|verilog-showscopes|verilog-sig-bits|verilog-sig-comment|verilog-sig-enum|verilog-sig-memory|verilog-sig-modport|verilog-sig-multidim-string|verilog-sig-multidim|verilog-sig-name|verilog-sig-new|verilog-sig-signed|verilog-sig-tieoff|verilog-sig-type-set|verilog-sig-type|verilog-sig-width|verilog-signals-combine-bus|verilog-signals-edit-wire-reg|verilog-signals-from-signame|verilog-signals-in|verilog-signals-matching-dir-re|verilog-signals-matching-enum|verilog-signals-matching-regexp|verilog-signals-memory|verilog-signals-not-in|verilog-signals-not-matching-regexp|verilog-signals-not-params|verilog-signals-princ|verilog-signals-sort-compare|verilog-signals-with|verilog-simplify-range-expression|verilog-sk-always|verilog-sk-assign|verilog-sk-begin|verilog-sk-case|verilog-sk-casex|verilog-sk-casez|verilog-sk-comment|verilog-sk-datadef|verilog-sk-def-reg|verilog-sk-define-signal|verilog-sk-else-if|verilog-sk-for|verilog-sk-fork|verilog-sk-function|verilog-sk-generate|verilog-sk-header-tmpl|verilog-sk-header|verilog-sk-if|verilog-sk-initial|verilog-sk-inout|verilog-sk-input|verilog-sk-module|verilog-sk-output|verilog-sk-ovm-class|verilog-sk-primitive|verilog-sk-prompt-clock|verilog-sk-prompt-condition|verilog-sk-prompt-inc|verilog-sk-prompt-init|verilog-sk-prompt-lsb|verilog-sk-prompt-msb|verilog-sk-prompt-name|verilog-sk-prompt-output|verilog-sk-prompt-reset|verilog-sk-prompt-state-selector|verilog-sk-prompt-width|verilog-sk-reg|verilog-sk-repeat|verilog-sk-specify|verilog-sk-state-machine|verilog-sk-task|verilog-sk-uvm-component|verilog-sk-uvm-object|verilog-sk-while|verilog-sk-wire|verilog-skip-backward-comment-or-string|verilog-skip-backward-comments|verilog-skip-forward-comment-or-string)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:verilog-skip-forward-comment-p|verilog-star-comment|verilog-start-translate-off|verilog-stmt-menu|verilog-string-diff|verilog-string-match-fold|verilog-string-remove-spaces|verilog-string-replace-matches|verilog-strip-comments|verilog-subdecls-get-inouts|verilog-subdecls-get-inputs|verilog-subdecls-get-interfaced|verilog-subdecls-get-interfaces|verilog-subdecls-get-outputs|verilog-subdecls-new|verilog-submit-bug-report|verilog-surelint-off|verilog-symbol-detick-denumber|verilog-symbol-detick-text|verilog-symbol-detick|verilog-syntax-ppss|verilog-typedef-name-p|verilog-uncomment-region|verilog-var-completion|verilog-verilint-off|verilog-version|verilog-wai|verilog-warn-error|verilog-warn|verilog-within-string|verilog-within-translate-off|version-list-<|version-list-<=|version-list-=|version-list-not-zero|version-to-list|version|version<|version<=|version=|vhdl-abbrev-list-init|vhdl-activate-customizations|vhdl-add-modified-file|vhdl-add-source-files-menu|vhdl-add-syntax|vhdl-adelete|vhdl-aget|vhdl-align-buffer|vhdl-align-declarations|vhdl-align-group|vhdl-align-inline-comment-buffer|vhdl-align-inline-comment-group|vhdl-align-inline-comment-region-1|vhdl-align-inline-comment-region|vhdl-align-list|vhdl-align-region-1|vhdl-align-region-2|vhdl-align-region-groups|vhdl-align-region|vhdl-align-same-indent|vhdl-aput-delete-if-nil|vhdl-aput|vhdl-auto-load-project|vhdl-back-to-indentation|vhdl-backward-same-indent|vhdl-backward-sexp|vhdl-backward-skip-label|vhdl-backward-syntactic-ws|vhdl-backward-to-block|vhdl-backward-up-list|vhdl-beautify-buffer|vhdl-beautify-region|vhdl-begin-p|vhdl-beginning-of-block|vhdl-beginning-of-defun|vhdl-beginning-of-libunit|vhdl-beginning-of-macro|vhdl-beginning-of-statement-1|vhdl-beginning-of-statement|vhdl-case-alternative-p|vhdl-case-keyword|vhdl-case-word|vhdl-character-to-event|vhdl-comment-append-inline|vhdl-comment-block|vhdl-comment-display-line|vhdl-comment-display|vhdl-comment-indent|vhdl-comment-insert-inline|vhdl-comment-insert|vhdl-comment-kill-inline-region|vhdl-comment-kill-region|vhdl-comment-uncomment-line|vhdl-comment-uncomment-region|vhdl-compile-directory|vhdl-compile-init|vhdl-compile-print-file-name|vhdl-compile|vhdl-compose-components-package|vhdl-compose-configuration-architecture|vhdl-compose-configuration|vhdl-compose-insert-generic|vhdl-compose-insert-port|vhdl-compose-insert-signal|vhdl-compose-new-component|vhdl-compose-place-component|vhdl-compose-wire-components|vhdl-corresponding-begin|vhdl-corresponding-defun|vhdl-corresponding-end|vhdl-corresponding-mid|vhdl-create-mode-menu|vhdl-current-line|vhdl-custom-set|vhdl-customize|vhdl-decision-query|vhdl-default-directory|vhdl-defun-p|vhdl-delete-indentation|vhdl-delete|vhdl-directory-files|vhdl-do-group|vhdl-do-list|vhdl-do-same-indent|vhdl-doc-mode|vhdl-doc-variable|vhdl-duplicate-project|vhdl-electric-close-bracket|vhdl-electric-comma|vhdl-electric-dash|vhdl-electric-equal|vhdl-electric-mode|vhdl-electric-open-bracket|vhdl-electric-period|vhdl-electric-quote|vhdl-electric-return|vhdl-electric-semicolon|vhdl-electric-space|vhdl-electric-tab|vhdl-end-of-block|vhdl-end-of-defun|vhdl-end-of-leader|vhdl-end-of-statement|vhdl-end-p|vhdl-end-translate-off|vhdl-error-regexp-add-emacs|vhdl-expand-abbrev|vhdl-expand-paren|vhdl-export-project|vhdl-fill-group|vhdl-fill-list|vhdl-fill-region|vhdl-fill-same-indent|vhdl-first-word|vhdl-fix-case-buffer|vhdl-fix-case-region-1|vhdl-fix-case-region|vhdl-fix-case-word|vhdl-fix-clause-buffer|vhdl-fix-clause|vhdl-fix-statement-buffer|vhdl-fix-statement-region|vhdl-fixup-whitespace-buffer|vhdl-fixup-whitespace-region|vhdl-font-lock-init|vhdl-font-lock-match-item|vhdl-fontify-buffer|vhdl-forward-comment|vhdl-forward-same-indent|vhdl-forward-sexp|vhdl-forward-skip-label|vhdl-forward-syntactic-ws|vhdl-function-name|vhdl-generate-makefile-1|vhdl-generate-makefile|vhdl-get-block-state|vhdl-get-compile-options|vhdl-get-components-package-name|vhdl-get-end-of-unit|vhdl-get-hierarchy|vhdl-get-instantiations|vhdl-get-library-unit|vhdl-get-make-options|vhdl-get-offset|vhdl-get-packages|vhdl-get-source-files|vhdl-get-subdirs|vhdl-get-syntactic-context|vhdl-get-visible-signals|vhdl-goto-marker|vhdl-has-syntax|vhdl-he-list-beg|vhdl-hideshow-init|vhdl-hooked-abbrev|vhdl-hs-forward-sexp-func|vhdl-hs-minor-mode|vhdl-import-project|vhdl-in-argument-list-p|vhdl-in-comment-p|vhdl-in-extended-identifier-p|vhdl-in-literal|vhdl-in-quote-p|vhdl-in-string-p|vhdl-indent-buffer|vhdl-indent-group|vhdl-indent-line|vhdl-indent-region|vhdl-indent-sexp|vhdl-index-menu-init|vhdl-insert-file-contents|vhdl-insert-keyword|vhdl-insert-string-or-file|vhdl-keep-region-active|vhdl-last-word|vhdl-libunit-p|vhdl-line-copy|vhdl-line-expand|vhdl-line-kill-entire|vhdl-line-kill|vhdl-line-open|vhdl-line-transpose-next|vhdl-line-transpose-previous|vhdl-line-yank|vhdl-lineup-arglist-intro|vhdl-lineup-arglist|vhdl-lineup-comment|vhdl-lineup-statement-cont|vhdl-load-cache|vhdl-make|vhdl-makefile-name|vhdl-mark-defun|vhdl-match-string-downcase|vhdl-match-translate-off|vhdl-max-marker|vhdl-menu-split|vhdl-minibuffer-tab|vhdl-mode-abbrev-table-init|vhdl-mode-map-init|vhdl-mode|vhdl-model-defun|vhdl-model-example-model|vhdl-model-insert|vhdl-model-map-init|vhdl-parse-group-comment|vhdl-parse-string|vhdl-paste-group-comment|vhdl-point|vhdl-port-copy|vhdl-port-flatten|vhdl-port-paste-component|vhdl-port-paste-constants|vhdl-port-paste-context-clause|vhdl-port-paste-declaration|vhdl-port-paste-entity|vhdl-port-paste-generic-map|vhdl-port-paste-generic|vhdl-port-paste-initializations|vhdl-port-paste-instance|vhdl-port-paste-port-map|vhdl-port-paste-port|vhdl-port-paste-signals|vhdl-port-paste-testbench|vhdl-port-reverse-direction|vhdl-prepare-search-1|vhdl-prepare-search-2|vhdl-print-warnings|vhdl-process-command-line-option|vhdl-project-p|vhdl-ps-print-init|vhdl-ps-print-settings|vhdl-re-search-backward|vhdl-re-search-forward|vhdl-read-offset|vhdl-regress-line|vhdl-remove-trailing-spaces-region|vhdl-remove-trailing-spaces|vhdl-replace-string|vhdl-require-hierarchy-info|vhdl-resolve-env-variable|vhdl-resolve-paths|vhdl-run-when-idle|vhdl-safe|vhdl-save-cache|vhdl-save-caches|vhdl-scan-context-clause|vhdl-scan-directory-contents|vhdl-scan-project-contents|vhdl-sequential-statement-p|vhdl-set-compiler|vhdl-set-default-project|vhdl-set-offset|vhdl-set-project|vhdl-set-style|vhdl-show-messages|vhdl-show-syntactic-information|vhdl-skip-case-alternative|vhdl-sort-alist|vhdl-speedbar-check-unit|vhdl-speedbar-configuration|vhdl-speedbar-contract-all|vhdl-speedbar-contract-level|vhdl-speedbar-dired|vhdl-speedbar-display-directory|vhdl-speedbar-display-projects|vhdl-speedbar-expand-all|vhdl-speedbar-expand-architecture|vhdl-speedbar-expand-config|vhdl-speedbar-expand-dirs|vhdl-speedbar-expand-entity|vhdl-speedbar-expand-package|vhdl-speedbar-expand-project|vhdl-speedbar-expand-units|vhdl-speedbar-find-file|vhdl-speedbar-generate-makefile|vhdl-speedbar-goto-this-unit|vhdl-speedbar-higher-text|vhdl-speedbar-initialize|vhdl-speedbar-insert-dir-hierarchy|vhdl-speedbar-insert-dirs|vhdl-speedbar-insert-hierarchy|vhdl-speedbar-insert-project-hierarchy|vhdl-speedbar-insert-projects|vhdl-speedbar-insert-subpackages|vhdl-speedbar-item-info|vhdl-speedbar-line-key|vhdl-speedbar-line-project|vhdl-speedbar-line-text|vhdl-speedbar-make-design|vhdl-speedbar-make-inst-line|vhdl-speedbar-make-pack-line|vhdl-speedbar-make-subpack-line|vhdl-speedbar-make-subprogram-line|vhdl-speedbar-make-title-line|vhdl-speedbar-place-component|vhdl-speedbar-port-copy|vhdl-speedbar-refresh|vhdl-speedbar-rescan-hierarchy|vhdl-speedbar-select-mra|vhdl-speedbar-set-depth|vhdl-speedbar-update-current-project|vhdl-speedbar-update-current-unit|vhdl-speedbar-update-units|vhdl-speedbar|vhdl-standard-p|vhdl-start-translate-off|vhdl-statement-p|vhdl-statistics-buffer|vhdl-stutter-mode|vhdl-submit-bug-report|vhdl-subprog-copy|vhdl-subprog-flatten|vhdl-subprog-paste-body|vhdl-subprog-paste-call|vhdl-subprog-paste-declaration|vhdl-subprog-paste-specification|vhdl-template-alias-hook|vhdl-template-alias|vhdl-template-and-hook|vhdl-template-architecture-hook|vhdl-template-architecture|vhdl-template-argument-list|vhdl-template-array|vhdl-template-assert-hook|vhdl-template-assert|vhdl-template-attribute-decl|vhdl-template-attribute-hook|vhdl-template-attribute-spec|vhdl-template-attribute|vhdl-template-bare-loop-hook|vhdl-template-bare-loop|vhdl-template-begin-end|vhdl-template-block-configuration|vhdl-template-block-hook|vhdl-template-block|vhdl-template-break-hook|vhdl-template-break|vhdl-template-case-hook|vhdl-template-case-is|vhdl-template-case-use|vhdl-template-case|vhdl-template-clocked-wait|vhdl-template-component-conf|vhdl-template-component-decl|vhdl-template-component-hook|vhdl-template-component-inst|vhdl-template-component|vhdl-template-conditional-signal-asst-hook|vhdl-template-conditional-signal-asst|vhdl-template-configuration-decl|vhdl-template-configuration-hook|vhdl-template-configuration-spec|vhdl-template-configuration|vhdl-template-constant-hook|vhdl-template-constant|vhdl-template-construct-alist-init|vhdl-template-default-hook|vhdl-template-default-indent-hook|vhdl-template-default-indent|vhdl-template-default|vhdl-template-directive-synthesis-off|vhdl-template-directive-synthesis-on|vhdl-template-directive-translate-off|vhdl-template-directive-translate-on|vhdl-template-directive|vhdl-template-disconnect-hook|vhdl-template-disconnect|vhdl-template-display-comment-hook|vhdl-template-else-hook|vhdl-template-else|vhdl-template-elsif-hook|vhdl-template-elsif|vhdl-template-entity-hook|vhdl-template-entity|vhdl-template-exit-hook|vhdl-template-exit|vhdl-template-field|vhdl-template-file-hook|vhdl-template-file|vhdl-template-footer|vhdl-template-for-generate|vhdl-template-for-hook|vhdl-template-for-loop|vhdl-template-for|vhdl-template-function-body|vhdl-template-function-decl|vhdl-template-function-hook|vhdl-template-function|vhdl-template-generate-body|vhdl-template-generate|vhdl-template-generic-hook|vhdl-template-generic-list|vhdl-template-generic|vhdl-template-group-decl|vhdl-template-group-hook|vhdl-template-group-template|vhdl-template-group|vhdl-template-header|vhdl-template-if-generate|vhdl-template-if-hook|vhdl-template-if-then-use|vhdl-template-if-then|vhdl-template-if-use|vhdl-template-if|vhdl-template-insert-construct|vhdl-template-insert-date|vhdl-template-insert-directive|vhdl-template-insert-fun|vhdl-template-insert-package|vhdl-template-instance-hook|vhdl-template-instance|vhdl-template-library-hook|vhdl-template-library|vhdl-template-limit-hook|vhdl-template-limit|vhdl-template-loop|vhdl-template-map-hook|vhdl-template-map-init|vhdl-template-map|vhdl-template-modify-noerror|vhdl-template-modify|vhdl-template-nand-hook|vhdl-template-nature-hook|vhdl-template-nature|vhdl-template-next-hook|vhdl-template-next|vhdl-template-nor-hook|vhdl-template-not-hook|vhdl-template-or-hook|vhdl-template-others-hook|vhdl-template-others|vhdl-template-package-alist-init|vhdl-template-package-body|vhdl-template-package-decl|vhdl-template-package-electrical-systems|vhdl-template-package-energy-systems|vhdl-template-package-fluidic-systems|vhdl-template-package-fundamental-constants|vhdl-template-package-hook|vhdl-template-package-material-constants|vhdl-template-package-math-complex|vhdl-template-package-math-real|vhdl-template-package-mechanical-systems|vhdl-template-package-numeric-bit|vhdl-template-package-numeric-std|vhdl-template-package-radiant-systems|vhdl-template-package-std-logic-1164|vhdl-template-package-std-logic-arith|vhdl-template-package-std-logic-misc|vhdl-template-package-std-logic-signed|vhdl-template-package-std-logic-textio|vhdl-template-package-std-logic-unsigned|vhdl-template-package-textio|vhdl-template-package-thermal-systems|vhdl-template-package|vhdl-template-paired-parens|vhdl-template-port-hook|vhdl-template-port-list|vhdl-template-port|vhdl-template-procedural-hook|vhdl-template-procedural|vhdl-template-procedure-body|vhdl-template-procedure-decl|vhdl-template-procedure-hook|vhdl-template-procedure|vhdl-template-process-comb|vhdl-template-process-hook|vhdl-template-process-seq|vhdl-template-process|vhdl-template-quantity-branch|vhdl-template-quantity-free|vhdl-template-quantity-hook|vhdl-template-quantity-source|vhdl-template-quantity|vhdl-template-record|vhdl-template-replace-header-keywords|vhdl-template-report-hook|vhdl-template-report)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:vhdl-template-return-hook|vhdl-template-return|vhdl-template-search-prompt|vhdl-template-selected-signal-asst-hook|vhdl-template-selected-signal-asst|vhdl-template-seq-process|vhdl-template-signal-hook|vhdl-template-signal|vhdl-template-standard-package|vhdl-template-subnature-hook|vhdl-template-subnature|vhdl-template-subprogram-body|vhdl-template-subprogram-decl|vhdl-template-subtype-hook|vhdl-template-subtype|vhdl-template-terminal-hook|vhdl-template-terminal|vhdl-template-type-hook|vhdl-template-type|vhdl-template-undo|vhdl-template-use-hook|vhdl-template-use|vhdl-template-variable-hook|vhdl-template-variable|vhdl-template-wait-hook|vhdl-template-wait|vhdl-template-when-hook|vhdl-template-when|vhdl-template-while-loop-hook|vhdl-template-while-loop|vhdl-template-with-hook|vhdl-template-with|vhdl-template-xnor-hook|vhdl-template-xor-hook|vhdl-toggle-project|vhdl-try-expand-abbrev|vhdl-uniquify|vhdl-upcase-list|vhdl-update-file-contents|vhdl-update-hierarchy|vhdl-update-mode-menu|vhdl-update-progress-info|vhdl-update-sensitivity-list-buffer|vhdl-update-sensitivity-list-process|vhdl-update-sensitivity-list|vhdl-use-direct-instantiation|vhdl-version|vhdl-visit-file|vhdl-warning-when-idle|vhdl-warning|vhdl-widget-directory-validate|vhdl-win-bsws|vhdl-win-fsws|vhdl-win-il|vhdl-within-translate-off|vhdl-words-init|vhdl-work-library|vhdl-write-file-hooks-init|viet-decode-viqr-buffer|viet-decode-viqr-region|viet-encode-viqr-buffer|viet-encode-viqr-region|viet-encode-viscii-char|view--disable|view--enable|view-buffer-other-frame|view-buffer-other-window|view-buffer|view-echo-area-messages|view-emacs-FAQ|view-emacs-debugging|view-emacs-news|view-emacs-problems|view-emacs-todo|view-end-message|view-external-packages|view-file-other-frame|view-file-other-window|view-file|view-hello-file|view-help-file|view-lossage|view-mode-disable|view-mode-enable|view-mode-enter|view-mode-exit|view-mode|view-order-manuals|view-page-size-default|view-really-at-end|view-recenter|view-return-to-alist-update|view-scroll-lines|view-search-no-match-lines|view-search|view-set-half-page-size-default|view-todo|view-window-size|viper--lookup-key|viper--tty-ESC-filter|viper-Append|viper-ESC-event-p|viper-ESC-keyseq-timeout|viper-ESC|viper-Insert|viper-Open-line|viper-P-val|viper-Put-back|viper-R-state-post-command-sentinel|viper-Region|viper-abbreviate-file-name|viper-abbreviate-string|viper-activate-input-method-action|viper-activate-input-method|viper-add-keymap|viper-add-local-keys|viper-add-newline-at-eob-if-necessary|viper-adjust-keys-for|viper-adjust-undo|viper-adjust-window|viper-after-change-sentinel|viper-after-change-undo-hook|viper-alist-to-list|viper-alternate-Meta-key|viper-append-filter-alist|viper-append-to-register|viper-append|viper-apply-major-mode-modifiers|viper-array-to-string|viper-ask-level|viper-autoindent|viper-backward-Word|viper-backward-char-carefully|viper-backward-char|viper-backward-indent|viper-backward-paragraph|viper-backward-sentence|viper-backward-word-kernel|viper-backward-word|viper-before-change-sentinel|viper-beginning-of-field|viper-beginning-of-line|viper-bind-mouse-insert-key|viper-bind-mouse-search-key|viper-bol-and-skip-white|viper-brac-function|viper-buffer-live-p|viper-buffer-search-enable|viper-can-release-key|viper-catch-tty-ESC|viper-change-cursor-color|viper-change-state-to-emacs|viper-change-state-to-insert|viper-change-state-to-replace|viper-change-state-to-vi|viper-change-state|viper-change-subr|viper-change-to-eol|viper-change|viper-char-array-p|viper-char-array-to-macro|viper-char-at-pos|viper-char-equal|viper-char-symbol-sequence-p|viper-characterp|viper-charlist-to-string|viper-charpair-command-p|viper-chars-in-region|viper-check-minibuffer-overlay|viper-check-version|viper-cleanup-ring|viper-color-defined-p|viper-color-display-p|viper-comint-mode-hook|viper-command-argument|viper-common-seq-prefix|viper-complete-filename-or-exit|viper-copy-event|viper-copy-region-as-kill|viper-current-ring-item|viper-cycle-through-mark-ring|viper-deactivate-input-method-action|viper-deactivate-input-method|viper-deactivate-mark|viper-debug-keymaps|viper-default-ex-addresses|viper-deflocalvar|viper-del-backward-char-in-insert|viper-del-backward-char-in-replace|viper-del-forward-char-in-insert|viper-delete-backward-char|viper-delete-backward-word|viper-delete-char|viper-delocalize-var|viper-describe-arg|viper-describe-kbd-macros|viper-describe-one-macro-elt|viper-describe-one-macro|viper-device-type|viper-digit-argument|viper-digit-command-p|viper-display-current-destructive-command|viper-display-macro|viper-display-vector-completions|viper-do-sequence-completion|viper-dotable-command-p|viper-downgrade-to-insert|viper-end-mapping-kbd-macro|viper-end-of-Word|viper-end-of-word-kernel|viper-end-of-word-p|viper-end-of-word|viper-end-with-a-newline-p|viper-enlarge-region|viper-erase-line|viper-escape-to-emacs|viper-escape-to-state|viper-escape-to-vi|viper-event-click-count|viper-event-key|viper-event-vector-p|viper-eventify-list-xemacs|viper-events-to-macro|viper-ex-read-file-name|viper-ex|viper-exchange-point-and-mark|viper-exec-Change|viper-exec-Delete|viper-exec-Yank|viper-exec-bang|viper-exec-buffer-search|viper-exec-change|viper-exec-delete|viper-exec-dummy|viper-exec-equals|viper-exec-form-in-emacs|viper-exec-form-in-vi|viper-exec-key-in-emacs|viper-exec-mapped-kbd-macro|viper-exec-shift|viper-exec-yank|viper-execute-com|viper-exit-insert-state|viper-exit-minibuffer|viper-extract-matching-alist-members|viper-fast-keysequence-p|viper-file-add-suffix|viper-file-checked-in-p|viper-filter-alist|viper-filter-list|viper-find-best-matching-macro|viper-find-char-backward|viper-find-char-forward|viper-find-char|viper-finish-R-mode|viper-finish-change|viper-fixup-macro|viper-flash-search-pattern|viper-forward-Word|viper-forward-char-carefully|viper-forward-char|viper-forward-indent|viper-forward-paragraph|viper-forward-sentence|viper-forward-word-kernel|viper-forward-word|viper-frame-value|viper-get-cursor-color|viper-get-ex-address-subr|viper-get-ex-address|viper-get-ex-buffer|viper-get-ex-com-subr|viper-get-ex-count|viper-get-ex-file|viper-get-ex-opt-gc|viper-get-ex-pat|viper-get-ex-token|viper-get-face|viper-get-filenames-from-buffer|viper-get-saved-cursor-color-in-emacs-mode|viper-get-saved-cursor-color-in-insert-mode|viper-get-saved-cursor-color-in-replace-mode|viper-get-visible-buffer-window|viper-getCom|viper-getcom|viper-glob-mswindows-files|viper-glob-unix-files|viper-global-execute|viper-go-away|viper-goto-char-backward|viper-goto-char-forward|viper-goto-col|viper-goto-eol|viper-goto-line|viper-goto-mark-and-skip-white|viper-goto-mark-subr|viper-goto-mark|viper-handle-!|viper-harness-minor-mode|viper-has-face-support-p|viper-hash-command-p|viper-heading-end|viper-hide-replace-overlay|viper-hide-search-overlay|viper-iconify|viper-if-string|viper-indent-line|viper-info-on-file|viper-insert-isearch-string|viper-insert-next-from-insertion-ring|viper-insert-prev-from-insertion-ring|viper-insert-state-post-command-sentinel|viper-insert-state-pre-command-sentinel|viper-insert-tab|viper-insert|viper-int-to-char|viper-intercept-ESC-key|viper-is-in-minibuffer|viper-isearch-backward|viper-isearch-forward|viper-join-lines|viper-kbd-buf-alist|viper-kbd-buf-definition|viper-kbd-buf-pair|viper-kbd-global-definition|viper-kbd-global-pair|viper-kbd-mode-alist|viper-kbd-mode-definition|viper-kbd-mode-pair|viper-ket-function|viper-key-press-events-to-chars|viper-key-to-character|viper-key-to-emacs-key|viper-keyseq-is-a-possible-macro|viper-kill-buffer|viper-kill-line|viper-last-command-char|viper-leave-region-active|viper-line-pos|viper-line-to-bottom|viper-line-to-middle|viper-line-to-top|viper-line|viper-list-to-alist|viper-load-custom-file|viper-looking-at-alpha|viper-looking-at-alphasep|viper-looking-at-separator|viper-looking-back|viper-loop|viper-macro-to-events|viper-major-mode-change-sentinel|viper-make-overlay|viper-mark-beginning-of-buffer|viper-mark-end-of-buffer|viper-mark-marker|viper-mark-point|viper-maybe-checkout|viper-memq-char|viper-message-conditions|viper-minibuffer-post-command-hook|viper-minibuffer-real-start|viper-minibuffer-setup-sentinel|viper-minibuffer-standard-hook|viper-minibuffer-trim-tail|viper-mode|viper-modify-keymap|viper-modify-major-mode|viper-mouse-catch-frame-switch|viper-mouse-click-frame|viper-mouse-click-get-word|viper-mouse-click-insert-word|viper-mouse-click-posn|viper-mouse-click-search-word|viper-mouse-click-window-buffer-name|viper-mouse-click-window-buffer|viper-mouse-click-window|viper-mouse-event-p|viper-move-marker-locally|viper-move-overlay|viper-move-replace-overlay|viper-movement-command-p|viper-multiclick-p|viper-next-destructive-command|viper-next-heading|viper-next-line-at-bol|viper-next-line-carefully|viper-next-line|viper-nil|viper-non-hook-settings|viper-normalize-minor-mode-map-alist|viper-open-line-at-point|viper-open-line|viper-over-whitespace-line|viper-overlay-end|viper-overlay-get|viper-overlay-live-p|viper-overlay-p|viper-overlay-put|viper-overlay-start|viper-overwrite|viper-p-val|viper-paren-match|viper-parse-mouse-key|viper-pos-within-region|viper-post-command-sentinel|viper-pre-command-sentinel|viper-prefix-arg-com|viper-prefix-arg-value|viper-prefix-command-p|viper-prefix-subseq-p|viper-preserve-cursor-color|viper-prev-destructive-command|viper-prev-heading|viper-previous-line-at-bol|viper-previous-line|viper-push-onto-ring|viper-put-back|viper-put-on-search-overlay|viper-put-string-on-kill-ring|viper-query-replace|viper-quote-region|viper-read-char-exclusive|viper-read-event-convert-to-char|viper-read-event|viper-read-fast-keysequence|viper-read-key-sequence|viper-read-key|viper-read-string-with-history|viper-record-kbd-macro|viper-refresh-mode-line|viper-region|viper-register-macro|viper-register-to-point|viper-regsuffix-command-p|viper-remember-current-frame|viper-remove-hooks|viper-repeat-find-opposite|viper-repeat-find|viper-repeat-from-history|viper-repeat-insert-command|viper-repeat|viper-replace-char-subr|viper-replace-char|viper-replace-end|viper-replace-mode-spy-after|viper-replace-mode-spy-before|viper-replace-start|viper-replace-state-carriage-return|viper-replace-state-exit-cmd|viper-replace-state-post-command-sentinel|viper-replace-state-pre-command-sentinel|viper-reset-mouse-insert-key|viper-reset-mouse-search-key|viper-restore-cursor-color|viper-restore-cursor-type|viper-ring-insert|viper-ring-pop|viper-ring-rotate1|viper-same-line|viper-save-cursor-color|viper-save-kill-buffer|viper-save-last-insertion|viper-save-setting|viper-save-string-in-file|viper-scroll-down-one|viper-scroll-down|viper-scroll-screen-back|viper-scroll-screen|viper-scroll-up-one|viper-scroll-up|viper-search-Next|viper-search-backward|viper-search-forward|viper-search-next|viper-search|viper-separator-skipback-special|viper-seq-last-elt|viper-set-complex-command-for-undo|viper-set-cursor-color-according-to-state|viper-set-destructive-command|viper-set-emacs-state-searchstyle-macros|viper-set-expert-level|viper-set-hooks|viper-set-input-method|viper-set-insert-cursor-type|viper-set-iso-accents-mode|viper-set-mark-if-necessary|viper-set-minibuffer-overlay|viper-set-minibuffer-style|viper-set-mode-vars-for|viper-set-parsing-style-toggling-macro|viper-set-register-macro|viper-set-replace-overlay-glyphs|viper-set-replace-overlay|viper-set-searchstyle-toggling-macros|viper-set-syntax-preference|viper-set-unread-command-events|viper-setup-ESC-to-escape|viper-setup-master-buffer|viper-sit-for-short|viper-skip-all-separators-backward|viper-skip-all-separators-forward|viper-skip-alpha-backward|viper-skip-alpha-forward|viper-skip-nonalphasep-backward|viper-skip-nonalphasep-forward|viper-skip-nonseparators|viper-skip-separators|viper-skip-syntax|viper-special-prefix-com|viper-special-read-and-insert-char|viper-special-ring-rotate1|viper-standard-value|viper-start-R-mode|viper-start-replace|viper-string-to-list|viper-submit-report|viper-subseq|viper-substitute-line|viper-substitute|viper-surrounding-word|viper-switch-to-buffer-other-window|viper-switch-to-buffer|viper-test-com-defun|viper-this-buffer-macros|viper-tmp-insert-at-eob|viper-toggle-case|viper-toggle-key-action|viper-toggle-parse-sexp-ignore-comments)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:viper-toggle-search-style|viper-translate-all-ESC-keysequences|viper-trim-replace-chars-to-delete-if-necessary|viper-unbind-mouse-insert-key|viper-unbind-mouse-search-key|viper-uncatch-tty-ESC|viper-undisplayed-files|viper-undo-more|viper-undo-sentinel|viper-undo|viper-unrecord-kbd-macro|viper-update-syntax-classes|viper-valid-marker|viper-valid-register|viper-version|viper-vi-command-p|viper-wildcard-to-regexp|viper-window-bottom|viper-window-display-p|viper-window-middle|viper-window-top|viper-yank-defun|viper-yank-last-insertion|viper-yank-line|viper-yank|viper-zap-local-keys|viper=|viqr-post-read-conversion|viqr-pre-write-conversion|visible-mode|visit-tags-table-buffer|visit-tags-table|visual-line-mode-set-explicitly|visual-line-mode|vt-keypad-off|vt-keypad-on|vt-narrow|vt-numlock|vt-toggle-screen|vt-wide|walk-window-subtree|walk-window-tree-1|walk-window-tree|warn-maybe-out-of-memory|warning-numeric-level|warning-suppress-p|wdired-abort-changes|wdired-capitalize-word|wdired-change-to-dired-mode|wdired-change-to-wdired-mode|wdired-check-kill-buffer|wdired-customize|wdired-do-perm-changes|wdired-do-renames|wdired-do-symlink-changes|wdired-downcase-word|wdired-exit|wdired-finish-edit|wdired-flag-for-deletion|wdired-get-filename|wdired-get-previous-link|wdired-isearch-filter-read-only|wdired-mode|wdired-mouse-toggle-bit|wdired-next-line|wdired-normalize-filename|wdired-perm-allowed-in-pos|wdired-perms-to-number|wdired-preprocess-files|wdired-preprocess-perms|wdired-preprocess-symlinks|wdired-previous-line|wdired-revert|wdired-search-and-rename|wdired-set-bit|wdired-toggle-bit|wdired-upcase-word|wdired-xcase-word|webjump-builtin-check-args|webjump-builtin|webjump-choose-mirror|webjump-do-simple-query|webjump-mirror-default|webjump-null-or-blank-string-p|webjump-read-choice|webjump-read-number|webjump-read-string|webjump-read-url-choice|webjump-to-iwin|webjump-to-risks|webjump-url-encode|webjump-url-fix-trailing-slash|webjump-url-fix|webjump|what-cursor-position|what-domain|what-line|what-page|when-let|where-is|which-func-ff-hook|which-func-mode|which-func-update-1|which-func-update-ediff-windows|which-func-update|which-function-mode|which-function|whitespace-action-when-on|whitespace-buffer-changed|whitespace-char-valid-p|whitespace-cleanup-region|whitespace-cleanup|whitespace-color-off|whitespace-color-on|whitespace-display-char-off|whitespace-display-char-on|whitespace-display-vector-p|whitespace-display-window|whitespace-empty-at-bob-regexp|whitespace-empty-at-eob-regexp|whitespace-ensure-local-variables|whitespace-help-off|whitespace-help-on|whitespace-help-scroll|whitespace-indentation-regexp|whitespace-insert-option-mark|whitespace-insert-value|whitespace-interactive-char|whitespace-kill-buffer|whitespace-looking-back|whitespace-mark-x|whitespace-mode|whitespace-newline-mode|whitespace-point--flush-used|whitespace-point--used|whitespace-post-command-hook|whitespace-regexp|whitespace-replace-action|whitespace-report-region|whitespace-report|whitespace-space-after-tab-regexp|whitespace-style-face-p|whitespace-style-mark-p|whitespace-toggle-list|whitespace-toggle-options|whitespace-trailing-regexp|whitespace-turn-off|whitespace-turn-on-if-enabled|whitespace-turn-on|whitespace-unload-function|whitespace-warn-read-only|whitespace-write-file-hook|whois-get-tld|whois-reverse-lookup|whois|widget-add-change|widget-add-documentation-string-button|widget-after-change|widget-alist-convert-option|widget-alist-convert-widget|widget-apply-action|widget-apply|widget-at|widget-backward|widget-before-change|widget-beginning-of-line|widget-boolean-prompt-value|widget-browse-at|widget-browse-other-window|widget-browse|widget-button-click|widget-button-press|widget-button-release-event-p|widget-checkbox-action|widget-checklist-add-item|widget-checklist-match-find|widget-checklist-match-inline|widget-checklist-match-up|widget-checklist-match|widget-checklist-validate|widget-checklist-value-create|widget-checklist-value-get|widget-child-validate|widget-child-value-get|widget-child-value-inline|widget-children-validate|widget-children-value-delete|widget-choice-action|widget-choice-default-get|widget-choice-match-inline|widget-choice-match|widget-choice-mouse-down-action|widget-choice-prompt-value|widget-choice-validate|widget-choice-value-create|widget-choose|widget-clear-undo|widget-coding-system-action|widget-coding-system-prompt-value|widget-color--choose-action|widget-color-action|widget-color-notify|widget-color-sample-face-get|widget-color-value-create|widget-complete|widget-completions-at-point|widget-cons-match|widget-const-prompt-value|widget-convert-button|widget-convert-text|widget-convert|widget-copy|widget-create-child-and-convert|widget-create-child-value|widget-create-child|widget-create|widget-default-action|widget-default-active|widget-default-button-face-get|widget-default-completions|widget-default-create|widget-default-deactivate|widget-default-default-get|widget-default-delete|widget-default-format-handler|widget-default-get|widget-default-menu-tag-get|widget-default-mouse-face-get|widget-default-notify|widget-default-prompt-value|widget-default-sample-face-get|widget-default-value-inline|widget-default-value-set|widget-delete-button-action|widget-delete|widget-docstring|widget-documentation-link-action|widget-documentation-link-add|widget-documentation-string-action|widget-documentation-string-indent-to|widget-documentation-string-value-create|widget-echo-help|widget-editable-list-delete-at|widget-editable-list-entry-create|widget-editable-list-format-handler|widget-editable-list-insert-before|widget-editable-list-match-inline|widget-editable-list-match|widget-editable-list-value-create|widget-editable-list-value-get|widget-emacs-commentary-link-action|widget-emacs-library-link-action|widget-end-of-line|widget-event-point|widget-face-notify|widget-face-sample-face-get|widget-field-action|widget-field-activate|widget-field-at|widget-field-buffer|widget-field-end|widget-field-find|widget-field-match|widget-field-prompt-internal|widget-field-prompt-value|widget-field-start|widget-field-text-end|widget-field-validate|widget-field-value-create|widget-field-value-delete|widget-field-value-get|widget-field-value-set|widget-file-link-action|widget-file-prompt-value|widget-forward|widget-function-link-action|widget-get-indirect|widget-get-sibling|widget-get|widget-group-default-get|widget-group-match-inline|widget-group-match|widget-group-value-create|widget-image-find|widget-image-insert|widget-info-link-action|widget-insert-button-action|widget-insert|widget-item-action|widget-item-match-inline|widget-item-match|widget-item-value-create|widget-key-sequence-read-event|widget-key-sequence-validate|widget-key-sequence-value-to-external|widget-key-sequence-value-to-internal|widget-kill-line|widget-leave-text|widget-magic-mouse-down-action|widget-map-buttons|widget-match-inline|widget-member|widget-minor-mode|widget-mouse-help|widget-move-and-invoke|widget-move|widget-narrow-to-field|widget-overlay-inactive|widget-parent-action|widget-plist-convert-option|widget-plist-convert-widget|widget-plist-member|widget-princ-to-string|widget-prompt-value|widget-push-button-value-create|widget-put|widget-radio-action|widget-radio-add-item|widget-radio-button-notify|widget-radio-chosen|widget-radio-validate|widget-radio-value-create|widget-radio-value-get|widget-radio-value-inline|widget-radio-value-set|widget-regexp-match|widget-regexp-validate|widget-restricted-sexp-match|widget-setup|widget-sexp-prompt-value|widget-sexp-validate|widget-sexp-value-to-internal|widget-specify-active|widget-specify-button|widget-specify-doc|widget-specify-field|widget-specify-inactive|widget-specify-insert|widget-specify-sample|widget-specify-secret|widget-sublist|widget-symbol-prompt-internal|widget-tabable-at|widget-toggle-action|widget-toggle-value-create|widget-type-default-get|widget-type-match|widget-type-value-create|widget-type|widget-types-convert-widget|widget-types-copy|widget-url-link-action|widget-value-convert-widget|widget-value-set|widget-value-value-get|widget-value|widget-variable-link-action|widget-vector-match|widget-visibility-value-create|widgetp|wildcard-to-regexp|windmove-constrain-around-range|windmove-constrain-loc-for-movement|windmove-constrain-to-range|windmove-coord-add|windmove-default-keybindings|windmove-do-window-select|windmove-down|windmove-find-other-window|windmove-frame-edges|windmove-left|windmove-other-window-loc|windmove-reference-loc|windmove-right|windmove-up|windmove-wrap-loc-for-movement|window--atom-check-1|window--atom-check|window--check|window--delete|window--display-buffer|window--dump-frame|window--dump-window|window--even-window-heights|window--frame-usable-p|window--in-direction-2|window--in-subtree-p|window--major-non-side-window|window--major-side-window|window--max-delta-1|window--maybe-raise-frame|window--min-delta-1|window--min-size-1|window--min-size-ignore-p|window--pixel-to-total-1|window--pixel-to-total|window--preservable-size|window--preserve-size|window--resizable-p|window--resizable|window--resize-apply-p|window--resize-child-windows-normal|window--resize-child-windows-skip-p|window--resize-child-windows|window--resize-mini-window|window--resize-reset-1|window--resize-reset|window--resize-root-window-vertically|window--resize-root-window|window--resize-siblings|window--resize-this-window|window--sanitize-margin|window--sanitize-window-sizes|window--side-check|window--side-window-p|window--size-fixed-1|window--size-ignore-p|window--size-to-pixel|window--state-get-1|window--state-put-1|window--state-put-2|window--subtree|window--try-to-split-window|window-at-side-list|window-at-side-p|window-atom-root|window-buffer-height|window-child-count|window-combination-p|window-combinations|window-configuration-to-register|window-deletable-p|window-dot|window-fixed-size-p|window-height|window-last-child|window-left|window-list-1|window-make-atom|window-max-delta|window-min-delta|window-min-pixel-height|window-min-pixel-size|window-min-pixel-width|window-new-normal|window-new-pixel|window-new-total|window-normal-size|window-normalize-buffer-to-switch-to|window-normalize-buffer|window-normalize-frame|window-normalize-window|window-old-point|window-preserve-size|window-preserved-size|window-redisplay-end-trigger|window-resizable-p|window-resize-apply-total|window-resize-apply|window-resize-no-error|window-right|window-safe-min-pixel-height|window-safe-min-pixel-size|window-safe-min-pixel-width|window-safe-min-size|window-safely-shrinkable-p|window-screen-lines|window-scroll-bar-height|window-sizable-p|window-sizable|window-size-fixed-p|window-size|window-splittable-p|window-system-for-display|window-text-height|window-text-width|window-use-time|window-width|window-with-parameter|winner-active-region|winner-change-fun|winner-conf|winner-configuration|winner-edges|winner-equal|winner-get-point|winner-insert-if-new|winner-make-point-alist|winner-mode|winner-redo|winner-remember|winner-ring|winner-save-conditionally|winner-save-old-configurations|winner-save-unconditionally|winner-set-conf|winner-set|winner-sorted-window-list|winner-undo-this|winner-undo|winner-win-data|winner-window-list|wisent-grammar-mode|wisent-java-default-setup|wisent-javascript-setup-parser|wisent-python-default-setup|with-auto-compression-mode|with-buffer-modified-unmodified|with-category-table|with-decoded-time-value|with-displayed-buffer-window|with-electric-help|with-file-modes|with-isearch-suspended|with-js|with-mh-folder-updating|with-mode-local-symbol|with-mode-local|with-parsed-tramp-file-name|with-rcirc-process-buffer|with-rcirc-server-buffer|with-selected-frame|with-silent-modifications|with-slots|with-timeout-suspend|with-timeout-unsuspend|with-tramp-connection-property|with-tramp-file-property|with-tramp-progress-reporter|with-vc-properties|with-wrapper-hook|woman-Cyg-to-Win|woman-bookmark-jump|woman-bookmark-make-record|woman-break-table|woman-cached-data|woman-canonicalize-dir|woman-change-fonts|woman-decode-buffer|woman-decode-region|woman-default-faces|woman-delete-following-space|woman-delete-line|woman-delete-match|woman-delete-whole-line|woman-directory-files|woman-dired-define-key-maybe|woman-dired-define-key|woman-dired-define-keys|woman-dired-find-file|woman-display-extended-fonts)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"},{"match":"(?<=[()]|^)(?:woman-expand-directory-path|woman-expand-locale|woman-file-accessible-directory-p|woman-file-name-all-completions|woman-file-name|woman-file-readable-p|woman-find-file|woman-find-next-control-line-carefully|woman-find-next-control-line|woman-follow-word|woman-follow|woman-forward-arg|woman-get-next-char|woman-get-numeric-arg|woman-get-tab-stop|woman-horizontal-escapes|woman-horizontal-line|woman-if-body|woman-if-ignore|woman-imenu|woman-insert-file-contents|woman-interparagraph-space|woman-interpolate-macro|woman-leave-blank-lines|woman-make-bufname|woman-man-buffer|woman-manpath-add-locales|woman-mark-horizontal-position|woman-match-name|woman-menu|woman-mini-help|woman-mode|woman-monochrome-faces|woman-negative-vertical-space|woman-non-underline-faces|woman-not-member|woman-parse-colon-path|woman-parse-man\\\\.conf|woman-parse-numeric-arg|woman-parse-numeric-value|woman-pop|woman-pre-process-region|woman-process-buffer|woman-push|woman-read-directory-cache|woman-really-find-file|woman-reformat-last-file|woman-replace-match|woman-reset-emulation|woman-reset-nospace|woman-select-symbol-fonts|woman-select|woman-set-arg|woman-set-buffer-display-table|woman-set-face|woman-set-interparagraph-distance|woman-special-characters|woman-strings|woman-tab-to-tab-stop|woman-tar-extract-file|woman-toggle-fill-frame|woman-toggle-use-extended-font|woman-toggle-use-symbol-font|woman-topic-all-completions-1|woman-topic-all-completions-merge|woman-topic-all-completions|woman-translate|woman-unescape|woman-unquote-args|woman-unquote|woman-write-directory-cache|woman|woman0-de|woman0-el|woman0-if|woman0-ig|woman0-macro|woman0-process-escapes|woman0-rename|woman0-rn|woman0-roff-buffer|woman0-so|woman1-B-or-I|woman1-B|woman1-BI|woman1-BR|woman1-I|woman1-IB|woman1-IR|woman1-IX|woman1-RB|woman1-RI|woman1-SB|woman1-SM|woman1-TP|woman1-TX|woman1-alt-fonts|woman1-bd|woman1-cs|woman1-hc|woman1-hw|woman1-hy|woman1-ne|woman1-nh|woman1-ps|woman1-roff-buffer|woman1-ss|woman1-ul|woman1-vs|woman2-DT|woman2-HP|woman2-IP|woman2-LP|woman2-P|woman2-PD|woman2-PP|woman2-RE|woman2-RS|woman2-SH|woman2-SS|woman2-TE|woman2-TH|woman2-TP|woman2-TS|woman2-ad|woman2-br|woman2-fc|woman2-fi|woman2-format-paragraphs|woman2-get-prevailing-indent|woman2-in|woman2-ll|woman2-na|woman2-nf|woman2-nr|woman2-ns|woman2-process-escapes-to-eol|woman2-process-escapes|woman2-roff-buffer|woman2-rs|woman2-sp|woman2-ta|woman2-tagged-paragraph|woman2-ti|woman2-tr|word-at-point|x-apply-session-resources|x-backspace-delete-keys-p|x-change-window-property|x-clipboard-yank|x-complement-fontset-spec|x-compose-font-name|x-create-frame-with-faces|x-create-frame|x-cut-buffer-or-selection-value|x-decompose-font-name|x-delete-window-property|x-disown-selection-internal|x-display-backing-store|x-display-color-cells|x-display-grayscale-p|x-display-mm-height|x-display-mm-width|x-display-monitor-attributes-list|x-display-pixel-height|x-display-pixel-width|x-display-planes|x-display-save-under|x-display-screens|x-display-visual-class|x-dnd-choose-type|x-dnd-current-type|x-dnd-default-test-function|x-dnd-drop-data|x-dnd-forget-drop|x-dnd-get-drop-width-height|x-dnd-get-drop-x-y|x-dnd-get-motif-value|x-dnd-get-state-cons-for-frame|x-dnd-get-state-for-frame|x-dnd-handle-drag-n-drop-event|x-dnd-handle-file-name|x-dnd-handle-motif|x-dnd-handle-moz-url|x-dnd-handle-old-kde|x-dnd-handle-uri-list|x-dnd-handle-xdnd|x-dnd-init-frame|x-dnd-init-motif-for-frame|x-dnd-init-xdnd-for-frame|x-dnd-insert-ctext|x-dnd-insert-utf16-text|x-dnd-insert-utf8-text|x-dnd-maybe-call-test-function|x-dnd-more-than-3-from-flags|x-dnd-motif-value-to-list|x-dnd-save-state|x-dnd-version-from-flags|x-file-dialog|x-focus-frame|x-frame-geometry|x-get-atom-name|x-get-clipboard|x-get-selection-internal|x-get-selection-value|x-gtk-map-stock|x-handle-args|x-handle-display|x-handle-geometry|x-handle-iconic|x-handle-initial-switch|x-handle-name-switch|x-handle-named-frame-geometry|x-handle-no-bitmap-icon|x-handle-numeric-switch|x-handle-parent-id|x-handle-reverse-video|x-handle-smid|x-handle-switch|x-handle-xrm-switch|x-hide-tip|x-initialize-window-system|x-menu-bar-open-internal|x-menu-bar-open|x-must-resolve-font-name|x-own-selection-internal|x-register-dnd-atom|x-resolve-font-name|x-select-font|x-select-text|x-selection-exists-p|x-selection-owner-p|x-selection-value|x-selection|x-send-client-message|x-server-max-request-size|x-show-tip|x-synchronize|x-uses-old-gtk-dialog|x-win-suspend-error|x-window-property|x-wm-set-size-hint|xdb|xml--entity-replacement-text|xml--parse-buffer|xml-debug-print-internal|xml-debug-print|xml-escape-string|xml-find-file-coding-system|xml-get-attribute-or-nil|xml-get-attribute|xml-get-children|xml-maybe-do-ns|xml-mode|xml-node-attributes|xml-node-children|xml-node-name|xml-parse-attlist|xml-parse-dtd|xml-parse-elem-type|xml-parse-file|xml-parse-region|xml-parse-string|xml-parse-tag-1|xml-parse-tag|xml-print|xml-skip-dtd|xml-substitute-numeric-entities|xml-substitute-special|xmltok-get-declared-encoding-position|xor|xref--alistify|xref--analyze|xref--display-position|xref--find-definitions|xref--goto-location|xref--insert-propertized|xref--insert-xrefs|xref--location-at-point|xref--next-line|xref--pop-to-location|xref--read-identifier|xref--search-property|xref--show-location|xref--show-xref-buffer|xref--show-xrefs|xref--xref-buffer-mode|xref--xref-child-p|xref--xref-description|xref--xref-list-p|xref--xref-location|xref--xref-p|xref--xref|xref-bogus-location-child-p|xref-bogus-location-list-p|xref-bogus-location-message|xref-bogus-location-p|xref-bogus-location|xref-buffer-location-child-p|xref-buffer-location-list-p|xref-buffer-location-p|xref-buffer-location|xref-clear-marker-stack|xref-default-identifier-at-point|xref-elisp-location-child-p|xref-elisp-location-list-p|xref-elisp-location-p|xref-elisp-location|xref-file-location-child-p|xref-file-location-list-p|xref-file-location-p|xref-file-location|xref-find-apropos|xref-find-definitions-other-frame|xref-find-definitions-other-window|xref-find-definitions|xref-find-references|xref-goto-xref|xref-location-child-p|xref-location-group|xref-location-list-p|xref-location-marker|xref-location-p|xref-location|xref-make-bogus-location|xref-make-buffer-location|xref-make-elisp-location|xref-make-file-location|xref-make|xref-next-line|xref-pop-marker-stack|xref-prev-line|xref-push-marker-stack|xscheme-cd|xscheme-coerce-prompt|xscheme-debugger-mode-p|xscheme-default-command-line|xscheme-delete-output|xscheme-display-process-buffer|xscheme-enable-control-g|xscheme-enter-debugger-mode|xscheme-enter-input-wait|xscheme-enter-interaction-mode|xscheme-eval|xscheme-evaluation-commands|xscheme-exit-input-wait|xscheme-finish-gc|xscheme-goto-output-point|xscheme-guarantee-newlines|xscheme-insert-expression|xscheme-interrupt-commands|xscheme-message|xscheme-mode-line-initialize|xscheme-output-goto|xscheme-parse-command-line|xscheme-process-buffer-current-p|xscheme-process-buffer-window|xscheme-process-buffer|xscheme-process-filter-initialize|xscheme-process-filter-output|xscheme-process-filter|xscheme-process-filter:simple-action|xscheme-process-filter:string-action-noexcursion|xscheme-process-filter:string-action|xscheme-process-running-p|xscheme-process-sentinel|xscheme-prompt-for-confirmation|xscheme-prompt-for-expression-exit|xscheme-prompt-for-expression|xscheme-read-command-line|xscheme-region-expression-p|xscheme-rotate-yank-pointer|xscheme-select-process-buffer|xscheme-send-breakpoint-interrupt|xscheme-send-buffer|xscheme-send-char|xscheme-send-control-g-interrupt|xscheme-send-control-u-interrupt|xscheme-send-control-x-interrupt|xscheme-send-current-line|xscheme-send-definition|xscheme-send-interrupt|xscheme-send-next-expression|xscheme-send-previous-expression|xscheme-send-proceed|xscheme-send-region|xscheme-send-string-1|xscheme-send-string-2|xscheme-send-string|xscheme-set-prompt-variable|xscheme-set-prompt|xscheme-set-runlight|xscheme-start-gc|xscheme-start-process|xscheme-start|xscheme-unsolicited-read-char|xscheme-wait-for-process|xscheme-write-message-1|xscheme-write-value|xscheme-yank-pop|xscheme-yank-previous-send|xscheme-yank-push|xscheme-yank|xselect--encode-string|xselect--int-to-cons|xselect--selection-bounds|xselect-convert-to-atom|xselect-convert-to-charpos|xselect-convert-to-class|xselect-convert-to-colno|xselect-convert-to-delete|xselect-convert-to-filename|xselect-convert-to-host|xselect-convert-to-identity|xselect-convert-to-integer|xselect-convert-to-length|xselect-convert-to-lineno|xselect-convert-to-name|xselect-convert-to-os|xselect-convert-to-save-targets|xselect-convert-to-string|xselect-convert-to-targets|xselect-convert-to-user|xterm-mouse--read-event-sequence-1000|xterm-mouse--read-event-sequence-1006|xterm-mouse--set-click-count|xterm-mouse-event|xterm-mouse-mode|xterm-mouse-position-function|xterm-mouse-translate-1|xterm-mouse-translate-extended|xterm-mouse-translate|xterm-mouse-truncate-wrap|xw-color-defined-p|xw-color-values|xw-defined-colors|xw-display-color-p|yank-handle-category-property|yank-handle-font-lock-face-property|yank-menu|yank-rectangle|yenc-decode-region|yenc-extract-filename|zap-to-char|zeroconf-get-domain|zeroconf-get-host-domain|zeroconf-get-host|zeroconf-get-interface-name|zeroconf-get-interface-number|zeroconf-get-service|zeroconf-init|zeroconf-list-service-names|zeroconf-list-service-types|zeroconf-list-services|zeroconf-publish-service|zeroconf-register-service-browser|zeroconf-register-service-resolver|zeroconf-register-service-type-browser|zeroconf-resolve-service|zeroconf-service-add-hook|zeroconf-service-address|zeroconf-service-aprotocol|zeroconf-service-browser-handler|zeroconf-service-domain|zeroconf-service-flags|zeroconf-service-host|zeroconf-service-interface|zeroconf-service-name|zeroconf-service-port|zeroconf-service-protocol|zeroconf-service-remove-hook|zeroconf-service-resolver-handler|zeroconf-service-txt|zeroconf-service-type-browser-handler|zeroconf-service-type|zerop--anon-cmacro|zone-call|zone-cpos|zone-exploding-remove|zone-fall-through-ws|zone-fill-out-screen|zone-fret|zone-hiding-mode-line|zone-leave-me-alone|zone-line-specs|zone-mode|zone-orig|zone-park\\\\/sit-for|zone-pgm-2nd-putz-with-case|zone-pgm-dissolve|zone-pgm-drip-fretfully|zone-pgm-drip|zone-pgm-explode|zone-pgm-five-oclock-swan-dive|zone-pgm-jitter|zone-pgm-martini-swan-dive|zone-pgm-paragraph-spaz|zone-pgm-putz-with-case|zone-pgm-random-life|zone-pgm-rat-race|zone-pgm-rotate-LR-lockstep|zone-pgm-rotate-LR-variable|zone-pgm-rotate-RL-lockstep|zone-pgm-rotate-RL-variable|zone-pgm-rotate|zone-pgm-stress-destress|zone-pgm-stress|zone-pgm-whack-chars|zone-remove-text|zone-replace-char|zone-shift-down|zone-shift-left|zone-shift-right|zone-shift-up|zone-when-idle|zone|zrgrep)(?=[\\\\s()]|$)","name":"support.function.emacs.lisp"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.emacs.lisp"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.emacs.lisp"}},"name":"string.quoted.double.emacs.lisp","patterns":[{"include":"#string-innards"}]},"string-innards":{"patterns":[{"include":"#eldoc"},{"match":"(\\\\\\\\)$\\\\n?","name":"constant.escape.character.newline.emacs.lisp"},{"captures":{"1":{"name":"punctuation.escape.backslash.emacs.lisp"}},"match":"(\\\\\\\\).","name":"constant.escape.character.emacs.lisp"}]},"symbols":{"patterns":[{"captures":{"0":{"name":"punctuation.definition.symbol.emacs.lisp"}},"match":"(?<=[\\\\s()\\\\[]|^)##","name":"constant.other.interned.blank.symbol.emacs.lisp"},{"captures":{"1":{"name":"punctuation.definition.symbol.emacs.lisp"},"2":{"patterns":[{"include":"$self"}]}},"match":"(?<=[\\\\s()\\\\[]|^)(#)((?:[-'+=*/\\\\w~!@$%^&:<>{}?]|\\\\\\\\.)+)","name":"constant.other.symbol.emacs.lisp"},{"captures":{"1":{"name":"punctuation.definition.spliced.symbol.emacs.lisp"}},"match":"(,@)([-+=*/\\\\w~!@$%^&:<>{}?]+)","name":"constant.other.spliced.symbol.emacs.lisp"},{"captures":{"1":{"name":"punctuation.definition.inserted.symbol.emacs.lisp"}},"match":"(,)([-+=*/\\\\w~!@$%^&:<>{}?]+)","name":"constant.other.inserted.symbol.emacs.lisp"}]},"vectors":{"patterns":[{"match":"\\\\[","name":"punctuation.section.vector.begin.emacs.lisp"},{"match":"\\\\]","name":"punctuation.section.vector.end.emacs.lisp"}]}},"scopeName":"source.emacs.lisp","aliases":["elisp"]}`)),kne=[wne]});var AL={};x(AL,{default:()=>OB});var Cne,OB,NB=_(()=>{Qe();rt();Cne=Object.freeze(JSON.parse('{"displayName":"Ruby Haml","fileTypes":["haml","html.haml"],"foldingStartMarker":"^\\\\s*([-%#\\\\:\\\\.\\\\w\\\\=].*)\\\\s$","foldingStopMarker":"^\\\\s*$","name":"haml","patterns":[{"begin":"^(\\\\s*)==","contentName":"string.quoted.double.ruby","end":"$\\\\n*","patterns":[{"include":"#interpolated_ruby"}]},{"begin":"^(\\\\s*):ruby","end":"^(?!\\\\1\\\\s+|$\\\\n*)","name":"source.ruby.embedded.filter.haml","patterns":[{"include":"source.ruby"}]},{"captures":{"1":{"name":"punctuation.definition.prolog.haml"}},"match":"^(!!!)($|\\\\s.*)","name":"meta.prolog.haml"},{"begin":"^(\\\\s*):javascript","end":"^(?!\\\\1\\\\s+|$\\\\n*)","name":"js.haml","patterns":[{"include":"source.js"}]},{"begin":"^(\\\\s*)%script","end":"^(?!\\\\1\\\\s+|$\\\\n*)","name":"js.inline.haml","patterns":[{"include":"source.js"}]},{"begin":"^(\\\\s*):ruby$","end":"^(?!\\\\1\\\\s+|$\\\\n*)","name":"source.ruby.embedded.filter.haml","patterns":[{"include":"source.ruby"}]},{"captures":{"1":{"name":"punctuation.section.comment.haml"}},"match":"^(\\\\s*)(\\\\/\\\\[[^\\\\]].*?$\\\\n?)","name":"comment.line.slash.haml"},{"begin":"^(\\\\s*)(\\\\-\\\\#|\\\\/|\\\\-\\\\s*\\\\/\\\\*+)","beginCaptures":{"2":{"name":"punctuation.section.comment.haml"}},"end":"^(?!\\\\1\\\\s+|\\\\n)","name":"comment.block.haml","patterns":[{"include":"text.haml"}]},{"begin":"^\\\\s*(?:((%)([-\\\\w:]+))|(?=\\\\.|#))","captures":{"1":{"name":"meta.tag.haml"},"2":{"name":"punctuation.definition.tag.haml"},"3":{"name":"entity.name.tag.haml"}},"end":"$|(?!\\\\.|#|\\\\{|\\\\(|\\\\[|&|=|-|~|!=|&=|/)","patterns":[{"begin":"==","contentName":"string.quoted.double.ruby","end":"$\\\\n?","patterns":[{"include":"#interpolated_ruby"}]},{"captures":{"1":{"name":"entity.other.attribute-name.class"}},"match":"(\\\\.[\\\\w\\\\-\\\\:]+)","name":"meta.selector.css"},{"captures":{"1":{"name":"entity.other.attribute-name.id"}},"match":"(#[\\\\w-]+)","name":"meta.selector.css"},{"begin":"(?LB});var _ne,LB,$B=_(()=>{_ne=Object.freeze(JSON.parse(`{"displayName":"JSX","name":"jsx","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?]|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^yield|[^\\\\._$[:alnum:]]yield|^throw|[^\\\\._$[:alnum:]]throw|^in|[^\\\\._$[:alnum:]]in|^of|[^\\\\._$[:alnum:]]of|^typeof|[^\\\\._$[:alnum:]]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"name":"meta.objectliteral.js.jsx","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.js.jsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.js.jsx"}},"name":"meta.array.literal.js.jsx","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.js.jsx"},"2":{"name":"variable.parameter.js.jsx"}},"match":"(?:(?)","name":"meta.arrow.js.jsx"},{"begin":"(?:(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.js.jsx","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.js.jsx"}},"end":"((?<=\\\\}|\\\\S)(?)|((?!\\\\{)(?=\\\\S)))(?!\\\\/[\\\\/\\\\*])","name":"meta.arrow.js.jsx","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js.jsx"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.js.jsx","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=[:])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.js.jsx"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.js.jsx","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.js.jsx"},"2":{"name":"entity.name.tag.directive.js.jsx"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.js.jsx"}},"name":"meta.tag.js.jsx","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.js.jsx"},{"match":"=","name":"keyword.operator.assignment.js.jsx"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"()|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.js.jsx"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"begin":"((@)template)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.js.jsx"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!'))|[^*\\\\\\\\])*?'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([''\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"keyword.operator.rest.js.jsx"},"3":{"name":"variable.parameter.js.jsx variable.language.this.js.jsx"},"4":{"name":"variable.parameter.js.jsx"},"5":{"name":"keyword.operator.optional.js.jsx"}},"match":"(?:(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.js.jsx"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.js.jsx"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.js.jsx"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.js.jsx"},{"captures":{"1":{"name":"keyword.operator.logical.js.jsx"},"2":{"name":"keyword.operator.assignment.compound.js.jsx"},"3":{"name":"keyword.operator.arithmetic.js.jsx"}},"match":"(?<=[_$[:alnum:]])(\\\\!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"\\\\!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.js.jsx"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.js.jsx"},{"match":"\\\\=","name":"keyword.operator.assignment.js.jsx"},{"match":"--","name":"keyword.operator.decrement.js.jsx"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.js.jsx"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.js.jsx"},{"begin":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))","end":"(?:(/=)|(?:(/)(?!\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)))","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.js.jsx"},"2":{"name":"keyword.operator.arithmetic.js.jsx"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.js.jsx"},"2":{"name":"keyword.operator.arithmetic.js.jsx"}},"match":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?:(/=)|(?:(/)(?![/*])))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#jsx"},{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"match":"\\\\#?[_$[:alpha:]][_$[:alnum:]]*","name":"meta.definition.property.js.jsx variable.object.property.js.jsx"},{"match":"\\\\?","name":"keyword.operator.optional.js.jsx"},{"match":"\\\\!","name":"keyword.operator.definiteassignment.js.jsx"}]},"for-loop":{"begin":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","name":"meta.function-call.js.jsx","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","end":"(?<=\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","name":"meta.function-call.js.jsx","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.js.jsx punctuation.accessor.optional.js.jsx"},{"match":"\\\\!","name":"meta.function-call.js.jsx keyword.operator.definiteassignment.js.jsx"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.js.jsx"}]},"function-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.js.jsx"},"2":{"name":"punctuation.accessor.optional.js.jsx"},"3":{"name":"variable.other.constant.property.js.jsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.js.jsx"},"2":{"name":"punctuation.accessor.optional.js.jsx"},"3":{"name":"variable.other.property.js.jsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"},{"match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","name":"variable.other.constant.js.jsx"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"variable.other.readwrite.js.jsx"}]},"if-statement":{"patterns":[{"begin":"(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|(===|!==|==|!=)|(([\\\\&\\\\~\\\\^\\\\|]\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?))","end":"(/>)|(?:())","endCaptures":{"1":{"name":"punctuation.definition.tag.end.js.jsx"},"2":{"name":"punctuation.definition.tag.begin.js.jsx"},"3":{"name":"entity.name.tag.namespace.js.jsx"},"4":{"name":"punctuation.separator.namespace.js.jsx"},"5":{"name":"entity.name.tag.js.jsx"},"6":{"name":"support.class.component.js.jsx"},"7":{"name":"punctuation.definition.tag.end.js.jsx"}},"name":"meta.tag.js.jsx","patterns":[{"begin":"(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.js.jsx"},"2":{"name":"entity.name.tag.namespace.js.jsx"},"3":{"name":"punctuation.separator.namespace.js.jsx"},"4":{"name":"entity.name.tag.js.jsx"},"5":{"name":"support.class.component.js.jsx"}},"end":"(?=[/]?>)","patterns":[{"include":"#comment"},{"include":"#type-arguments"},{"include":"#jsx-tag-attributes"}]},{"begin":"(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.end.js.jsx"}},"contentName":"meta.jsx.children.js.jsx","end":"(?=|/\\\\*|//)"},"jsx-tag-attributes":{"begin":"\\\\s+","end":"(?=[/]?>)","name":"meta.tag.attributes.js.jsx","patterns":[{"include":"#comment"},{"include":"#jsx-tag-attribute-name"},{"include":"#jsx-tag-attribute-assignment"},{"include":"#jsx-string-double-quoted"},{"include":"#jsx-string-single-quoted"},{"include":"#jsx-evaluated-code"},{"include":"#jsx-tag-attributes-illegal"}]},"jsx-tag-attributes-illegal":{"match":"\\\\S+","name":"invalid.illegal.attribute.js.jsx"},"jsx-tag-in-expression":{"begin":"(?:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^default|[^\\\\._$[:alnum:]]default|^yield|[^\\\\._$[:alnum:]]yield|^)\\\\s*(?!<\\\\s*[_$[:alpha:]][_$[:alnum:]]*((\\\\s+extends\\\\s+[^=>])|,))(?=(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","end":"(?!(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","patterns":[{"include":"#jsx-tag"}]},"jsx-tag-without-attributes":{"begin":"(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.js.jsx"},"2":{"name":"entity.name.tag.namespace.js.jsx"},"3":{"name":"punctuation.separator.namespace.js.jsx"},"4":{"name":"entity.name.tag.js.jsx"},"5":{"name":"support.class.component.js.jsx"},"6":{"name":"punctuation.definition.tag.end.js.jsx"}},"contentName":"meta.jsx.children.js.jsx","end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.js.jsx"},"2":{"name":"entity.name.tag.namespace.js.jsx"},"3":{"name":"punctuation.separator.namespace.js.jsx"},"4":{"name":"entity.name.tag.js.jsx"},"5":{"name":"support.class.component.js.jsx"},"6":{"name":"punctuation.definition.tag.end.js.jsx"}},"name":"meta.tag.without-attributes.js.jsx","patterns":[{"include":"#jsx-children"}]},"jsx-tag-without-attributes-in-expression":{"begin":"(?:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^default|[^\\\\._$[:alnum:]]default|^yield|[^\\\\._$[:alnum:]]yield|^)\\\\s*(?=(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","end":"(?!(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","patterns":[{"include":"#jsx-tag-without-attributes"}]},"label":{"patterns":[{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.js.jsx"},"2":{"name":"punctuation.separator.label.js.jsx"}},"end":"(?<=\\\\})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.js.jsx"},"2":{"name":"punctuation.separator.label.js.jsx"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.modifier.js.jsx"},"4":{"name":"storage.modifier.async.js.jsx"},"5":{"name":"keyword.operator.new.js.jsx"},"6":{"name":"keyword.generator.asterisk.js.jsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.js.jsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.modifier.js.jsx"},"4":{"name":"storage.modifier.async.js.jsx"},"5":{"name":"storage.type.property.js.jsx"},"6":{"name":"keyword.generator.asterisk.js.jsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.js.jsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=((\\\\b(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"},"2":{"name":"storage.type.property.js.jsx"},"3":{"name":"keyword.generator.asterisk.js.jsx"}},"end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.js.jsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"},"2":{"name":"storage.type.property.js.jsx"},"3":{"name":"keyword.generator.asterisk.js.jsx"}},"end":"(?=\\\\(|\\\\<)","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[\\\\(\\\\<]))","name":"meta.object.member.js.jsx meta.object-literal.key.js.jsx","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\\\'\\\\\\"\\\\\`])","end":"(?=:)|((?<=[\\\\'\\\\\\"\\\\\`])(?=((\\\\s*[\\\\(\\\\<,}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.js.jsx meta.object-literal.key.js.jsx","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.js.jsx"},{"captures":{"0":{"name":"meta.object-literal.key.js.jsx"}},"match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.js.jsx"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.js.jsx"}},"end":"(?=,|\\\\})","name":"meta.object.member.js.jsx","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.js.jsx"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.js.jsx"},{"captures":{"1":{"name":"keyword.control.as.js.jsx"},"2":{"name":"storage.modifier.js.jsx"}},"match":"(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|^|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"},"2":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=\\\\<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"}},"end":"(?<=\\\\>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=\\\\>)\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.js.jsx"}},"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"keyword.operator.rest.js.jsx"},"3":{"name":"variable.parameter.js.jsx variable.language.this.js.jsx"},"4":{"name":"variable.parameter.js.jsx"},"5":{"name":"keyword.operator.optional.js.jsx"}},"match":"(?:(?])","name":"meta.type.annotation.js.jsx","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(=,])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(=,]|=>|^return|[^\\\\._$[:alnum:]]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.js.jsx meta.return.type.arrow.js.jsx keyword.operator.type.annotation.js.jsx"}},"contentName":"meta.arrow.js.jsx meta.return.type.arrow.js.jsx","end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[\\\\()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^\\\\)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([dgimsuvy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.js.jsx"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.js.jsx"},"2":{"name":"keyword.other.js.jsx"}},"name":"string.regexp.js.jsx","patterns":[{"include":"#regexp"}]},{"begin":"((?"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))\\\\-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js.jsx"}},"end":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$)))"},{"captures":{"1":{"name":"support.type.object.module.js.jsx"},"2":{"name":"support.type.object.module.js.jsx"},"3":{"name":"punctuation.accessor.js.jsx"},"4":{"name":"punctuation.accessor.optional.js.jsx"},"5":{"name":"support.type.object.module.js.jsx"}},"match":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\`)","end":"(?=\`)","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.tagged-template.js.jsx"}]},{"include":"#type-arguments"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.js.jsx"}},"end":"(?=\`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.js.jsx"}},"contentName":"meta.embedded.line.js.jsx","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.js.jsx"}},"name":"meta.template.expression.js.jsx","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?(\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.js.jsx"},"2":{"name":"string.template.js.jsx punctuation.definition.string.template.begin.js.jsx"}},"contentName":"string.template.js.jsx","end":"\`","endCaptures":{"0":{"name":"string.template.js.jsx punctuation.definition.string.template.end.js.jsx"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.js.jsx"}},"contentName":"meta.embedded.line.js.jsx","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.js.jsx"}},"name":"meta.template.expression.js.jsx","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*[^[:digit:]])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.js.jsx"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.js.jsx"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?])|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.js.jsx","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js.jsx"}},"end":"(?])|(?=^\\\\s*$)|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.js.jsx","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.js.jsx"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.js.jsx"}},"name":"meta.type.parameters.js.jsx","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.js.jsx"}},"match":"(?)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?))))))","end":"(?<=\\\\))","name":"meta.type.function.js.jsx","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.js.jsx"}},"end":"(?)(?:\\\\?]|//|$)","name":"meta.type.function.return.js.jsx","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.js.jsx"}},"end":"(?)(?]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.js.jsx","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.js.jsx"},"2":{"name":"entity.name.type.js.jsx"},"3":{"name":"keyword.operator.expression.extends.js.jsx"}},"match":"(?)","endCaptures":{"1":{"name":"meta.type.parameters.js.jsx punctuation.definition.typeparameters.end.js.jsx"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.js.jsx"},"2":{"name":"meta.type.parameters.js.jsx punctuation.definition.typeparameters.begin.js.jsx"}},"contentName":"meta.type.parameters.js.jsx","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.js.jsx punctuation.definition.typeparameters.end.js.jsx"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.js.jsx"},"2":{"name":"punctuation.accessor.js.jsx"},"3":{"name":"punctuation.accessor.optional.js.jsx"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"entity.name.type.js.jsx"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"name":"meta.object.type.js.jsx","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.js.jsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.js.jsx"}},"end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"begin":"[&|]","beginCaptures":{"0":{"name":"keyword.operator.type.js.jsx"}},"end":"(?=\\\\S)"},{"match":"(?)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.js.jsx"}},"name":"meta.type.parameters.js.jsx","patterns":[{"include":"#comment"},{"match":"(?)","name":"keyword.operator.assignment.js.jsx"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"name":"meta.type.paren.cover.js.jsx","patterns":[{"captures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"keyword.operator.rest.js.jsx"},"3":{"name":"entity.name.function.js.jsx variable.language.this.js.jsx"},"4":{"name":"entity.name.function.js.jsx"},"5":{"name":"keyword.operator.optional.js.jsx"}},"match":"(?:(?)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"keyword.operator.rest.js.jsx"},"3":{"name":"variable.parameter.js.jsx variable.language.this.js.jsx"},"4":{"name":"variable.parameter.js.jsx"},"5":{"name":"keyword.operator.optional.js.jsx"}},"match":"(?:(?:&|{\\\\?]|(extends\\\\s+)|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.js.jsx variable.other.constant.js.jsx entity.name.function.js.jsx"}},"end":"(?=$|^|[;,=}]|((?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.js.jsx entity.name.function.js.jsx"},"2":{"name":"keyword.operator.definiteassignment.js.jsx"}},"end":"(?=$|^|[;,=}]|((?\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.js.jsx"}},"end":"(?=$|^|[,);}\\\\]]|((?RB});var Bne,RB,jB=_(()=>{Bne=Object.freeze(JSON.parse(`{"displayName":"TSX","name":"tsx","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?]|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^yield|[^\\\\._$[:alnum:]]yield|^throw|[^\\\\._$[:alnum:]]throw|^in|[^\\\\._$[:alnum:]]in|^of|[^\\\\._$[:alnum:]]of|^typeof|[^\\\\._$[:alnum:]]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"name":"meta.objectliteral.tsx","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.tsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.tsx"}},"name":"meta.array.literal.tsx","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.tsx"},"2":{"name":"variable.parameter.tsx"}},"match":"(?:(?)","name":"meta.arrow.tsx"},{"begin":"(?:(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.tsx","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.tsx"}},"end":"((?<=\\\\}|\\\\S)(?)|((?!\\\\{)(?=\\\\S)))(?!\\\\/[\\\\/\\\\*])","name":"meta.arrow.tsx","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.tsx"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.tsx","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=[:])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.tsx"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.tsx","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.tsx"},"2":{"name":"entity.name.tag.directive.tsx"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.tsx"}},"name":"meta.tag.tsx","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.tsx"},{"match":"=","name":"keyword.operator.assignment.tsx"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"()|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.tsx"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"begin":"((@)template)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.tsx"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!'))|[^*\\\\\\\\])*?'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([''\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"keyword.operator.rest.tsx"},"3":{"name":"variable.parameter.tsx variable.language.this.tsx"},"4":{"name":"variable.parameter.tsx"},"5":{"name":"keyword.operator.optional.tsx"}},"match":"(?:(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.tsx"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.tsx"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.tsx"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.tsx"},{"captures":{"1":{"name":"keyword.operator.logical.tsx"},"2":{"name":"keyword.operator.assignment.compound.tsx"},"3":{"name":"keyword.operator.arithmetic.tsx"}},"match":"(?<=[_$[:alnum:]])(\\\\!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"\\\\!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.tsx"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.tsx"},{"match":"\\\\=","name":"keyword.operator.assignment.tsx"},{"match":"--","name":"keyword.operator.decrement.tsx"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.tsx"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.tsx"},{"begin":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))","end":"(?:(/=)|(?:(/)(?!\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)))","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.tsx"},"2":{"name":"keyword.operator.arithmetic.tsx"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.tsx"},"2":{"name":"keyword.operator.arithmetic.tsx"}},"match":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?:(/=)|(?:(/)(?![/*])))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#jsx"},{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"match":"\\\\#?[_$[:alpha:]][_$[:alnum:]]*","name":"meta.definition.property.tsx variable.object.property.tsx"},{"match":"\\\\?","name":"keyword.operator.optional.tsx"},{"match":"\\\\!","name":"keyword.operator.definiteassignment.tsx"}]},"for-loop":{"begin":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\\\\())","name":"meta.function-call.tsx","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","end":"(?<=\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","name":"meta.function-call.tsx","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.tsx punctuation.accessor.optional.tsx"},{"match":"\\\\!","name":"meta.function-call.tsx keyword.operator.definiteassignment.tsx"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.tsx"}]},"function-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.tsx"},"2":{"name":"punctuation.accessor.optional.tsx"},"3":{"name":"variable.other.constant.property.tsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.tsx"},"2":{"name":"punctuation.accessor.optional.tsx"},"3":{"name":"variable.other.property.tsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"},{"match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","name":"variable.other.constant.tsx"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"variable.other.readwrite.tsx"}]},"if-statement":{"patterns":[{"begin":"(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|(===|!==|==|!=)|(([\\\\&\\\\~\\\\^\\\\|]\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?))","end":"(/>)|(?:())","endCaptures":{"1":{"name":"punctuation.definition.tag.end.tsx"},"2":{"name":"punctuation.definition.tag.begin.tsx"},"3":{"name":"entity.name.tag.namespace.tsx"},"4":{"name":"punctuation.separator.namespace.tsx"},"5":{"name":"entity.name.tag.tsx"},"6":{"name":"support.class.component.tsx"},"7":{"name":"punctuation.definition.tag.end.tsx"}},"name":"meta.tag.tsx","patterns":[{"begin":"(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.tsx"},"2":{"name":"entity.name.tag.namespace.tsx"},"3":{"name":"punctuation.separator.namespace.tsx"},"4":{"name":"entity.name.tag.tsx"},"5":{"name":"support.class.component.tsx"}},"end":"(?=[/]?>)","patterns":[{"include":"#comment"},{"include":"#type-arguments"},{"include":"#jsx-tag-attributes"}]},{"begin":"(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.end.tsx"}},"contentName":"meta.jsx.children.tsx","end":"(?=|/\\\\*|//)"},"jsx-tag-attributes":{"begin":"\\\\s+","end":"(?=[/]?>)","name":"meta.tag.attributes.tsx","patterns":[{"include":"#comment"},{"include":"#jsx-tag-attribute-name"},{"include":"#jsx-tag-attribute-assignment"},{"include":"#jsx-string-double-quoted"},{"include":"#jsx-string-single-quoted"},{"include":"#jsx-evaluated-code"},{"include":"#jsx-tag-attributes-illegal"}]},"jsx-tag-attributes-illegal":{"match":"\\\\S+","name":"invalid.illegal.attribute.tsx"},"jsx-tag-in-expression":{"begin":"(?:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^default|[^\\\\._$[:alnum:]]default|^yield|[^\\\\._$[:alnum:]]yield|^)\\\\s*(?!<\\\\s*[_$[:alpha:]][_$[:alnum:]]*((\\\\s+extends\\\\s+[^=>])|,))(?=(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","end":"(?!(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","patterns":[{"include":"#jsx-tag"}]},"jsx-tag-without-attributes":{"begin":"(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.tsx"},"2":{"name":"entity.name.tag.namespace.tsx"},"3":{"name":"punctuation.separator.namespace.tsx"},"4":{"name":"entity.name.tag.tsx"},"5":{"name":"support.class.component.tsx"},"6":{"name":"punctuation.definition.tag.end.tsx"}},"contentName":"meta.jsx.children.tsx","end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.tsx"},"2":{"name":"entity.name.tag.namespace.tsx"},"3":{"name":"punctuation.separator.namespace.tsx"},"4":{"name":"entity.name.tag.tsx"},"5":{"name":"support.class.component.tsx"},"6":{"name":"punctuation.definition.tag.end.tsx"}},"name":"meta.tag.without-attributes.tsx","patterns":[{"include":"#jsx-children"}]},"jsx-tag-without-attributes-in-expression":{"begin":"(?:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^default|[^\\\\._$[:alnum:]]default|^yield|[^\\\\._$[:alnum:]]yield|^)\\\\s*(?=(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","end":"(?!(<)\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?))","patterns":[{"include":"#jsx-tag-without-attributes"}]},"label":{"patterns":[{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.tsx"},"2":{"name":"punctuation.separator.label.tsx"}},"end":"(?<=\\\\})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.tsx"},"2":{"name":"punctuation.separator.label.tsx"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.modifier.tsx"},"4":{"name":"storage.modifier.async.tsx"},"5":{"name":"keyword.operator.new.tsx"},"6":{"name":"keyword.generator.asterisk.tsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.tsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.modifier.tsx"},"4":{"name":"storage.modifier.async.tsx"},"5":{"name":"storage.type.property.tsx"},"6":{"name":"keyword.generator.asterisk.tsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.tsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=((\\\\b(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"},"2":{"name":"storage.type.property.tsx"},"3":{"name":"keyword.generator.asterisk.tsx"}},"end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.tsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"},"2":{"name":"storage.type.property.tsx"},"3":{"name":"keyword.generator.asterisk.tsx"}},"end":"(?=\\\\(|\\\\<)","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[\\\\(\\\\<]))","name":"meta.object.member.tsx meta.object-literal.key.tsx","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\\\'\\\\\\"\\\\\`])","end":"(?=:)|((?<=[\\\\'\\\\\\"\\\\\`])(?=((\\\\s*[\\\\(\\\\<,}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.tsx meta.object-literal.key.tsx","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.tsx"},{"captures":{"0":{"name":"meta.object-literal.key.tsx"}},"match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.tsx"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.tsx"}},"end":"(?=,|\\\\})","name":"meta.object.member.tsx","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.tsx"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.tsx"},{"captures":{"1":{"name":"keyword.control.as.tsx"},"2":{"name":"storage.modifier.tsx"}},"match":"(?]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|^|((?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"},"2":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=\\\\<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"}},"end":"(?<=\\\\>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=\\\\>)\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.tsx"}},"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"keyword.operator.rest.tsx"},"3":{"name":"variable.parameter.tsx variable.language.this.tsx"},"4":{"name":"variable.parameter.tsx"},"5":{"name":"keyword.operator.optional.tsx"}},"match":"(?:(?])","name":"meta.type.annotation.tsx","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(=,])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(=,]|=>|^return|[^\\\\._$[:alnum:]]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.tsx meta.return.type.arrow.tsx keyword.operator.type.annotation.tsx"}},"contentName":"meta.arrow.tsx meta.return.type.arrow.tsx","end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[\\\\()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^\\\\)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([dgimsuvy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.tsx"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.tsx"},"2":{"name":"keyword.other.tsx"}},"name":"string.regexp.tsx","patterns":[{"include":"#regexp"}]},{"begin":"((?"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))\\\\-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.tsx"}},"end":"(?]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$)))"},{"captures":{"1":{"name":"support.type.object.module.tsx"},"2":{"name":"support.type.object.module.tsx"},"3":{"name":"punctuation.accessor.tsx"},"4":{"name":"punctuation.accessor.optional.tsx"},"5":{"name":"support.type.object.module.tsx"}},"match":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\`)","end":"(?=\`)","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)?\`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.tagged-template.tsx"}]},{"include":"#type-arguments"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?))*(?)*(?\\\\s*)\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.tsx"}},"end":"(?=\`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.tsx"}},"contentName":"meta.embedded.line.tsx","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.tsx"}},"name":"meta.template.expression.tsx","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?(\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.tsx"},"2":{"name":"string.template.tsx punctuation.definition.string.template.begin.tsx"}},"contentName":"string.template.tsx","end":"\`","endCaptures":{"0":{"name":"string.template.tsx punctuation.definition.string.template.end.tsx"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.tsx"}},"contentName":"meta.embedded.line.tsx","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.tsx"}},"name":"meta.template.expression.tsx","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*[^[:digit:]])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.tsx"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.tsx"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?])|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.tsx","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.tsx"}},"end":"(?])|(?=^\\\\s*$)|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.tsx","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.tsx"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.tsx"}},"name":"meta.type.parameters.tsx","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.tsx"}},"match":"(?)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?))))))","end":"(?<=\\\\))","name":"meta.type.function.tsx","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.tsx"}},"end":"(?)(?:\\\\?]|//|$)","name":"meta.type.function.return.tsx","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.tsx"}},"end":"(?)(?]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.tsx","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.tsx"},"2":{"name":"entity.name.type.tsx"},"3":{"name":"keyword.operator.expression.extends.tsx"}},"match":"(?)","endCaptures":{"1":{"name":"meta.type.parameters.tsx punctuation.definition.typeparameters.end.tsx"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.tsx"},"2":{"name":"meta.type.parameters.tsx punctuation.definition.typeparameters.begin.tsx"}},"contentName":"meta.type.parameters.tsx","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.tsx punctuation.definition.typeparameters.end.tsx"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.tsx"},"2":{"name":"punctuation.accessor.tsx"},"3":{"name":"punctuation.accessor.optional.tsx"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"entity.name.type.tsx"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"name":"meta.object.type.tsx","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.tsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.tsx"}},"end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"begin":"[&|]","beginCaptures":{"0":{"name":"keyword.operator.type.tsx"}},"end":"(?=\\\\S)"},{"match":"(?)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.tsx"}},"name":"meta.type.parameters.tsx","patterns":[{"include":"#comment"},{"match":"(?)","name":"keyword.operator.assignment.tsx"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"name":"meta.type.paren.cover.tsx","patterns":[{"captures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"keyword.operator.rest.tsx"},"3":{"name":"entity.name.function.tsx variable.language.this.tsx"},"4":{"name":"entity.name.function.tsx"},"5":{"name":"keyword.operator.optional.tsx"}},"match":"(?:(?)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"keyword.operator.rest.tsx"},"3":{"name":"variable.parameter.tsx variable.language.this.tsx"},"4":{"name":"variable.parameter.tsx"},"5":{"name":"keyword.operator.optional.tsx"}},"match":"(?:(?:&|{\\\\?]|(extends\\\\s+)|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.tsx variable.other.constant.tsx entity.name.function.tsx"}},"end":"(?=$|^|[;,=}]|((?)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|([<]\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.tsx entity.name.function.tsx"},"2":{"name":"keyword.operator.definiteassignment.tsx"}},"end":"(?=$|^|[;,=}]|((?\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.tsx"}},"end":"(?=$|^|[,);}\\\\]]|((?XA});var xne,XA,Sg=_(()=>{Qe();hn();$B();jB();xne=Object.freeze(JSON.parse(`{"displayName":"GraphQL","fileTypes":["graphql","graphqls","gql","graphcool"],"name":"graphql","patterns":[{"include":"#graphql"}],"repository":{"graphql":{"patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-fragment-definition"},{"include":"#graphql-directive-definition"},{"include":"#graphql-type-interface"},{"include":"#graphql-enum"},{"include":"#graphql-scalar"},{"include":"#graphql-union"},{"include":"#graphql-schema"},{"include":"#graphql-operation-def"},{"include":"#literal-quasi-embedded"}]},"graphql-ampersand":{"captures":{"1":{"name":"keyword.operator.logical.graphql"}},"match":"\\\\s*(&)"},"graphql-arguments":{"begin":"\\\\s*(\\\\()","beginCaptures":{"1":{"name":"meta.brace.round.directive.graphql"}},"end":"\\\\s*(\\\\))","endCaptures":{"1":{"name":"meta.brace.round.directive.graphql"}},"name":"meta.arguments.graphql","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"begin":"\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?:\\\\s*(:))","beginCaptures":{"1":{"name":"variable.parameter.graphql"},"2":{"name":"punctuation.colon.graphql"}},"end":"(?=\\\\s*(?:(?:([_A-Za-z][_0-9A-Za-z]*)\\\\s*(:))|\\\\)))|\\\\s*(,)","endCaptures":{"3":{"name":"punctuation.comma.graphql"}},"patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-value"},{"include":"#graphql-skip-newlines"}]},{"include":"#literal-quasi-embedded"}]},"graphql-boolean-value":{"captures":{"1":{"name":"constant.language.boolean.graphql"}},"match":"\\\\s*\\\\b(true|false)\\\\b"},"graphql-colon":{"captures":{"1":{"name":"punctuation.colon.graphql"}},"match":"\\\\s*(:)"},"graphql-comma":{"captures":{"1":{"name":"punctuation.comma.graphql"}},"match":"\\\\s*(,)"},"graphql-comment":{"patterns":[{"captures":{"1":{"name":"punctuation.whitespace.comment.leading.graphql"}},"comment":"need to prefix comment space with a scope else Atom's reflow cmd doesn't work","match":"(\\\\s*)(#).*","name":"comment.line.graphql.js"},{"begin":"(\\"\\"\\")","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.graphql"}},"end":"(\\"\\"\\")","name":"comment.line.graphql.js"},{"begin":"(\\")","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.graphql"}},"end":"(\\")","name":"comment.line.graphql.js"}]},"graphql-description-docstring":{"begin":"\\"\\"\\"","end":"\\"\\"\\"","name":"comment.block.graphql"},"graphql-description-singleline":{"match":"#(?=([^\\"]*\\"[^\\"]*\\")*[^\\"]*$).*$","name":"comment.line.number-sign.graphql"},"graphql-directive":{"applyEndPatternLast":1,"begin":"\\\\s*((@)\\\\s*([_A-Za-z][_0-9A-Za-z]*))","beginCaptures":{"1":{"name":"entity.name.function.directive.graphql"}},"end":"(?=.)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-arguments"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}]},"graphql-directive-definition":{"applyEndPatternLast":1,"begin":"\\\\s*(\\\\bdirective\\\\b)\\\\s*(@[_A-Za-z][_0-9A-Za-z]*)","beginCaptures":{"1":{"name":"keyword.directive.graphql"},"2":{"name":"entity.name.function.directive.graphql"},"3":{"name":"keyword.on.graphql"},"4":{"name":"support.type.graphql"}},"end":"(?=.)","patterns":[{"include":"#graphql-variable-definitions"},{"applyEndPatternLast":1,"begin":"\\\\s*(\\\\bon\\\\b)\\\\s*([_A-Za-z]*)","beginCaptures":{"1":{"name":"keyword.on.graphql"},"2":{"name":"support.type.location.graphql"}},"end":"(?=.)","patterns":[{"include":"#graphql-skip-newlines"},{"include":"#graphql-comment"},{"include":"#literal-quasi-embedded"},{"captures":{"2":{"name":"support.type.location.graphql"}},"match":"\\\\s*(\\\\|)\\\\s*([_A-Za-z]*)"}]},{"include":"#graphql-skip-newlines"},{"include":"#graphql-comment"},{"include":"#literal-quasi-embedded"}]},"graphql-enum":{"begin":"\\\\s*+\\\\b(enum)\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)","beginCaptures":{"1":{"name":"keyword.enum.graphql"},"2":{"name":"support.type.enum.graphql"}},"end":"(?<=})","name":"meta.enum.graphql","patterns":[{"begin":"\\\\s*({)","beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"end":"\\\\s*(})","endCaptures":{"1":{"name":"punctuation.operation.graphql"}},"name":"meta.type.object.graphql","patterns":[{"include":"#graphql-object-type"},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-enum-value"},{"include":"#literal-quasi-embedded"}]},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"}]},"graphql-enum-value":{"match":"\\\\s*(?!=\\\\b(true|false|null)\\\\b)([_A-Za-z][_0-9A-Za-z]*)","name":"constant.character.enum.graphql"},"graphql-field":{"patterns":[{"captures":{"1":{"name":"string.unquoted.alias.graphql"},"2":{"name":"punctuation.colon.graphql"}},"match":"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\\s*(:)"},{"captures":{"1":{"name":"variable.graphql"}},"match":"\\\\s*([_A-Za-z][_0-9A-Za-z]*)"},{"include":"#graphql-arguments"},{"include":"#graphql-directive"},{"include":"#graphql-selection-set"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}]},"graphql-float-value":{"captures":{"1":{"name":"constant.numeric.float.graphql"}},"match":"\\\\s*(-?(0|[1-9][0-9]*)(\\\\.[0-9]+)?((e|E)(\\\\+|-)?[0-9]+)?)"},"graphql-fragment-definition":{"begin":"\\\\s*(?:(\\\\bfragment\\\\b)\\\\s*([_A-Za-z][_0-9A-Za-z]*)?\\\\s*(?:(\\\\bon\\\\b)\\\\s*([_A-Za-z][_0-9A-Za-z]*)))","captures":{"1":{"name":"keyword.fragment.graphql"},"2":{"name":"entity.name.fragment.graphql"},"3":{"name":"keyword.on.graphql"},"4":{"name":"support.type.graphql"}},"end":"(?<=})","name":"meta.fragment.graphql","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-selection-set"},{"include":"#graphql-directive"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"}]},"graphql-fragment-spread":{"applyEndPatternLast":1,"begin":"\\\\s*(\\\\.\\\\.\\\\.)\\\\s*(?!\\\\bon\\\\b)([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"keyword.operator.spread.graphql"},"2":{"name":"variable.fragment.graphql"}},"end":"(?=.)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-selection-set"},{"include":"#graphql-directive"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}]},"graphql-ignore-spaces":{"match":"\\\\s*"},"graphql-inline-fragment":{"applyEndPatternLast":1,"begin":"\\\\s*(\\\\.\\\\.\\\\.)\\\\s*(?:(\\\\bon\\\\b)\\\\s*([_A-Za-z][_0-9A-Za-z]*))?","captures":{"1":{"name":"keyword.operator.spread.graphql"},"2":{"name":"keyword.on.graphql"},"3":{"name":"support.type.graphql"}},"end":"(?=.)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-selection-set"},{"include":"#graphql-directive"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"}]},"graphql-input-types":{"patterns":[{"include":"#graphql-scalar-type"},{"captures":{"1":{"name":"support.type.graphql"},"2":{"name":"keyword.operator.nulltype.graphql"}},"match":"\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?:\\\\s*(!))?"},{"begin":"\\\\s*(\\\\[)","captures":{"1":{"name":"meta.brace.square.graphql"},"2":{"name":"keyword.operator.nulltype.graphql"}},"end":"\\\\s*(\\\\])(?:\\\\s*(!))?","name":"meta.type.list.graphql","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-input-types"},{"include":"#graphql-comma"},{"include":"#literal-quasi-embedded"}]}]},"graphql-list-value":{"patterns":[{"begin":"\\\\s*+(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.graphql"}},"end":"\\\\s*(\\\\])","endCaptures":{"1":{"name":"meta.brace.square.graphql"}},"name":"meta.listvalues.graphql","patterns":[{"include":"#graphql-value"}]}]},"graphql-name":{"captures":{"1":{"name":"entity.name.function.graphql"}},"match":"\\\\s*([_A-Za-z][_0-9A-Za-z]*)"},"graphql-null-value":{"captures":{"1":{"name":"constant.language.null.graphql"}},"match":"\\\\s*\\\\b(null)\\\\b"},"graphql-object-field":{"captures":{"1":{"name":"constant.object.key.graphql"},"2":{"name":"string.unquoted.graphql"},"3":{"name":"punctuation.graphql"}},"match":"\\\\s*(([_A-Za-z][_0-9A-Za-z]*))\\\\s*(:)"},"graphql-object-value":{"patterns":[{"begin":"\\\\s*+({)","beginCaptures":{"1":{"name":"meta.brace.curly.graphql"}},"end":"\\\\s*(})","endCaptures":{"1":{"name":"meta.brace.curly.graphql"}},"name":"meta.objectvalues.graphql","patterns":[{"include":"#graphql-object-field"},{"include":"#graphql-value"}]}]},"graphql-operation-def":{"patterns":[{"include":"#graphql-query-mutation"},{"include":"#graphql-name"},{"include":"#graphql-variable-definitions"},{"include":"#graphql-directive"},{"include":"#graphql-selection-set"}]},"graphql-query-mutation":{"captures":{"1":{"name":"keyword.operation.graphql"}},"match":"\\\\s*\\\\b(query|mutation)\\\\b"},"graphql-scalar":{"captures":{"1":{"name":"keyword.scalar.graphql"},"2":{"name":"entity.scalar.graphql"}},"match":"\\\\s*\\\\b(scalar)\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)"},"graphql-scalar-type":{"captures":{"1":{"name":"support.type.builtin.graphql"},"2":{"name":"keyword.operator.nulltype.graphql"}},"match":"\\\\s*\\\\b(Int|Float|String|Boolean|ID)\\\\b(?:\\\\s*(!))?"},"graphql-schema":{"begin":"\\\\s*\\\\b(schema)\\\\b","beginCaptures":{"1":{"name":"keyword.schema.graphql"}},"end":"(?<=})","patterns":[{"begin":"\\\\s*({)","beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"end":"\\\\s*(})","endCaptures":{"1":{"name":"punctuation.operation.graphql"}},"patterns":[{"begin":"\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\\\s*\\\\(|:)","beginCaptures":{"1":{"name":"variable.arguments.graphql"}},"end":"(?=\\\\s*(([_A-Za-z][_0-9A-Za-z]*)\\\\s*(\\\\(|:)|(})))|\\\\s*(,)","endCaptures":{"5":{"name":"punctuation.comma.graphql"}},"patterns":[{"captures":{"1":{"name":"support.type.graphql"}},"match":"\\\\s*([_A-Za-z][_0-9A-Za-z]*)"},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-colon"},{"include":"#graphql-skip-newlines"}]},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-skip-newlines"}]},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-skip-newlines"}]},"graphql-selection-set":{"begin":"\\\\s*({)","beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"end":"\\\\s*(})","endCaptures":{"1":{"name":"punctuation.operation.graphql"}},"name":"meta.selectionset.graphql","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-field"},{"include":"#graphql-fragment-spread"},{"include":"#graphql-inline-fragment"},{"include":"#graphql-comma"},{"include":"#native-interpolation"},{"include":"#literal-quasi-embedded"}]},"graphql-skip-newlines":{"match":"\\\\s*\\n"},"graphql-string-content":{"patterns":[{"match":"\\\\\\\\[/'\\"\\\\\\\\nrtbf]","name":"constant.character.escape.graphql"},{"match":"\\\\\\\\u([0-9a-fA-F]{4})","name":"constant.character.escape.graphql"}]},"graphql-string-value":{"begin":"\\\\s*+((\\"))","beginCaptures":{"1":{"name":"string.quoted.double.graphql"},"2":{"name":"punctuation.definition.string.begin.graphql"}},"contentName":"string.quoted.double.graphql","end":"\\\\s*+(?:((\\"))|(\\n))","endCaptures":{"1":{"name":"string.quoted.double.graphql"},"2":{"name":"punctuation.definition.string.end.graphql"},"3":{"name":"invalid.illegal.newline.graphql"}},"patterns":[{"include":"#graphql-string-content"},{"include":"#literal-quasi-embedded"}]},"graphql-type-definition":{"begin":"\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\\\s*\\\\(|:)","beginCaptures":{"1":{"name":"variable.graphql"}},"comment":"key (optionalArgs): Type","end":"(?=\\\\s*(([_A-Za-z][_0-9A-Za-z]*)\\\\s*(\\\\(|:)|(})))|\\\\s*(,)","endCaptures":{"5":{"name":"punctuation.comma.graphql"}},"patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-variable-definitions"},{"include":"#graphql-type-object"},{"include":"#graphql-colon"},{"include":"#graphql-input-types"},{"include":"#literal-quasi-embedded"}]},"graphql-type-interface":{"applyEndPatternLast":1,"begin":"\\\\s*\\\\b(?:(extends?)?\\\\b\\\\s*\\\\b(type)|(interface)|(input))\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)?","captures":{"1":{"name":"keyword.type.graphql"},"2":{"name":"keyword.type.graphql"},"3":{"name":"keyword.interface.graphql"},"4":{"name":"keyword.input.graphql"},"5":{"name":"support.type.graphql"}},"end":"(?=.)","name":"meta.type.interface.graphql","patterns":[{"begin":"\\\\s*\\\\b(implements)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.implements.graphql"}},"end":"\\\\s*(?={)","patterns":[{"captures":{"1":{"name":"support.type.graphql"}},"match":"\\\\s*([_A-Za-z][_0-9A-Za-z]*)"},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-ampersand"},{"include":"#graphql-comma"}]},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-type-object"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-ignore-spaces"}]},"graphql-type-object":{"begin":"\\\\s*({)","beginCaptures":{"1":{"name":"punctuation.operation.graphql"}},"end":"\\\\s*(})","endCaptures":{"1":{"name":"punctuation.operation.graphql"}},"name":"meta.type.object.graphql","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-object-type"},{"include":"#graphql-type-definition"},{"include":"#literal-quasi-embedded"}]},"graphql-union":{"applyEndPatternLast":1,"begin":"\\\\s*\\\\b(union)\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"keyword.union.graphql"},"2":{"name":"support.type.graphql"}},"end":"(?=.)","patterns":[{"applyEndPatternLast":1,"begin":"\\\\s*(=)\\\\s*([_A-Za-z][_0-9A-Za-z]*)","captures":{"1":{"name":"punctuation.assignment.graphql"},"2":{"name":"support.type.graphql"}},"end":"(?=.)","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"},{"captures":{"1":{"name":"punctuation.or.graphql"},"2":{"name":"support.type.graphql"}},"match":"\\\\s*(\\\\|)\\\\s*([_A-Za-z][_0-9A-Za-z]*)"}]},{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-skip-newlines"},{"include":"#literal-quasi-embedded"}]},"graphql-union-mark":{"captures":{"1":{"name":"punctuation.union.graphql"}},"match":"\\\\s*(\\\\|)"},"graphql-value":{"patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-variable-name"},{"include":"#graphql-float-value"},{"include":"#graphql-string-value"},{"include":"#graphql-boolean-value"},{"include":"#graphql-null-value"},{"include":"#graphql-enum-value"},{"include":"#graphql-list-value"},{"include":"#graphql-object-value"},{"include":"#literal-quasi-embedded"}]},"graphql-variable-assignment":{"applyEndPatternLast":1,"begin":"\\\\s(=)","beginCaptures":{"1":{"name":"punctuation.assignment.graphql"}},"end":"(?=[\\n,)])","patterns":[{"include":"#graphql-value"}]},"graphql-variable-definition":{"begin":"\\\\s*(\\\\$?[_A-Za-z][_0-9A-Za-z]*)(?=\\\\s*\\\\(|:)","beginCaptures":{"1":{"name":"variable.parameter.graphql"}},"comment":"variable: type = value,.... which may be a list","end":"(?=\\\\s*((\\\\$?[_A-Za-z][_0-9A-Za-z]*)\\\\s*(\\\\(|:)|(}|\\\\))))|\\\\s*(,)","endCaptures":{"5":{"name":"punctuation.comma.graphql"}},"name":"meta.variables.graphql","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-directive"},{"include":"#graphql-colon"},{"include":"#graphql-input-types"},{"include":"#graphql-variable-assignment"},{"include":"#literal-quasi-embedded"},{"include":"#graphql-skip-newlines"}]},"graphql-variable-definitions":{"begin":"\\\\s*(\\\\()","captures":{"1":{"name":"meta.brace.round.graphql"}},"end":"\\\\s*(\\\\))","patterns":[{"include":"#graphql-comment"},{"include":"#graphql-description-docstring"},{"include":"#graphql-description-singleline"},{"include":"#graphql-variable-definition"},{"include":"#literal-quasi-embedded"}]},"graphql-variable-name":{"captures":{"1":{"name":"variable.graphql"}},"match":"\\\\s*(\\\\$[_A-Za-z][_0-9A-Za-z]*)"},"native-interpolation":{"begin":"\\\\s*(\\\\\${)","beginCaptures":{"1":{"name":"keyword.other.substitution.begin"}},"end":"(})","endCaptures":{"1":{"name":"keyword.other.substitution.end"}},"name":"native.interpolation","patterns":[{"include":"source.js"},{"include":"source.ts"},{"include":"source.js.jsx"},{"include":"source.tsx"}]}},"scopeName":"source.graphql","embeddedLangs":["javascript","typescript","jsx","tsx"],"aliases":["gql"]}`)),XA=[...J,...Ge,...LB,...RB,xne]});var mL={};x(mL,{default:()=>ed});var vne,ed,Og=_(()=>{Uo();vne=Object.freeze(JSON.parse(`{"displayName":"Lua","name":"lua","patterns":[{"begin":"\\\\b(?:(local)\\\\s+)?(function)\\\\b(?![,:])","beginCaptures":{"1":{"name":"keyword.local.lua"},"2":{"name":"keyword.control.lua"}},"end":"(?<=[\\\\)\\\\-{}\\\\[\\\\]\\"'])","name":"meta.function.lua","patterns":[{"include":"#comment"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.lua"}},"end":"(\\\\))|(?=[\\\\-\\\\.{}\\\\[\\\\]\\"'])","endCaptures":{"1":{"name":"punctuation.definition.parameters.finish.lua"}},"name":"meta.parameter.lua","patterns":[{"include":"#comment"},{"match":"[a-zA-Z_][a-zA-Z0-9_]*","name":"variable.parameter.function.lua"},{"match":",","name":"punctuation.separator.arguments.lua"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.arguments.lua"}},"end":"(?=[\\\\),])","patterns":[{"include":"#emmydoc.type"}]}]},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b\\\\s*(?=:)","name":"entity.name.class.lua"},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b","name":"entity.name.function.lua"}]},{"match":"(?"},{"match":"\\\\<[a-zA-Z_\\\\*][a-zA-Z0-9_\\\\.\\\\*\\\\-]*\\\\>","name":"storage.type.generic.lua"},{"match":"\\\\b(break|do|else|for|if|elseif|goto|return|then|repeat|while|until|end|in)\\\\b","name":"keyword.control.lua"},{"match":"\\\\b(local)\\\\b","name":"keyword.local.lua"},{"match":"\\\\b(function)\\\\b(?![,:])","name":"keyword.control.lua"},{"match":"(?=?|(?|\\\\<","name":"keyword.operator.lua"}]},{"begin":"(?<=---)[ \\\\t]*@see","beginCaptures":{"0":{"name":"storage.type.annotation.lua"}},"end":"(?=[\\\\n@#])","patterns":[{"match":"\\\\b([a-zA-Z_\\\\*][a-zA-Z0-9_\\\\.\\\\*\\\\-]*)","name":"support.class.lua"},{"match":"#","name":"keyword.operator.lua"}]},{"begin":"(?<=---)[ \\\\t]*@diagnostic","beginCaptures":{"0":{"name":"storage.type.annotation.lua"}},"end":"(?=[\\\\n@#])","patterns":[{"begin":"([a-zA-Z_\\\\-0-9]+)[ \\\\t]*(:)?","beginCaptures":{"1":{"name":"keyword.other.unit"},"2":{"name":"keyword.operator.unit"}},"end":"(?=\\\\n)","patterns":[{"match":"\\\\b([a-zA-Z_\\\\*][a-zA-Z0-9_\\\\-]*)","name":"support.class.lua"},{"match":",","name":"keyword.operator.lua"}]}]},{"begin":"(?<=---)[ \\\\t]*@module","beginCaptures":{"0":{"name":"storage.type.annotation.lua"}},"end":"(?=[\\\\n@#])","patterns":[{"include":"#string"}]},{"match":"(?<=---)[ \\\\t]*@(async|nodiscard)","name":"storage.type.annotation.lua"},{"begin":"(?<=---)\\\\|\\\\s*[\\\\>\\\\+]?","beginCaptures":{"0":{"name":"storage.type.annotation.lua"}},"end":"(?=[\\\\n@#])","patterns":[{"include":"#string"}]}]},"emmydoc.type":{"patterns":[{"begin":"\\\\bfun\\\\b","beginCaptures":{"0":{"name":"keyword.control.lua"}},"end":"(?=[\\\\s#])","patterns":[{"match":"[\\\\(\\\\),:\\\\?][ \\\\t]*","name":"keyword.operator.lua"},{"match":"([a-zA-Z_][a-zA-Z0-9_\\\\.\\\\*\\\\[\\\\]\\\\<\\\\>\\\\,\\\\-]*)(?","name":"storage.type.generic.lua"},{"match":"\\\\basync\\\\b","name":"entity.name.tag.lua"},{"match":"[\\\\{\\\\}\\\\:\\\\,\\\\?\\\\|\\\\\`][ \\\\t]*","name":"keyword.operator.lua"},{"begin":"(?=[a-zA-Z_\\\\.\\\\*\\"'\\\\[])","end":"(?=[\\\\s\\\\)\\\\,\\\\?\\\\:\\\\}\\\\|#])","patterns":[{"match":"([a-zA-Z0-9_\\\\.\\\\*\\\\[\\\\]\\\\<\\\\>\\\\,\\\\-]+)(?Zr});var Ene,Zr,Qc=_(()=>{Ene=Object.freeze(JSON.parse(`{"displayName":"YAML","fileTypes":["yaml","yml","rviz","reek","clang-format","yaml-tmlanguage","syntax","sublime-syntax"],"firstLineMatch":"^%YAML( ?1.\\\\d+)?","name":"yaml","patterns":[{"include":"#comment"},{"include":"#property"},{"include":"#directive"},{"match":"^---","name":"entity.other.document.begin.yaml"},{"match":"^\\\\.{3}","name":"entity.other.document.end.yaml"},{"include":"#node"}],"repository":{"block-collection":{"patterns":[{"include":"#block-sequence"},{"include":"#block-mapping"}]},"block-mapping":{"patterns":[{"include":"#block-pair"}]},"block-node":{"patterns":[{"include":"#prototype"},{"include":"#block-scalar"},{"include":"#block-collection"},{"include":"#flow-scalar-plain-out"},{"include":"#flow-node"}]},"block-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"1":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=\\\\?)|^ *(:)|(:)","endCaptures":{"1":{"name":"punctuation.separator.key-value.mapping.yaml"},"2":{"name":"invalid.illegal.expected-newline.yaml"}},"name":"meta.block-mapping.yaml","patterns":[{"include":"#block-node"}]},{"begin":"(?=(?:[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-]\\\\S)([^\\\\s:]|:\\\\S|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$))","patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-]\\\\S","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},{"match":":(?=\\\\s|$)","name":"punctuation.separator.key-value.mapping.yaml"}]},"block-scalar":{"begin":"(?:(\\\\|)|(>))([1-9])?([-+])?(.*\\\\n?)","beginCaptures":{"1":{"name":"keyword.control.flow.block-scalar.literal.yaml"},"2":{"name":"keyword.control.flow.block-scalar.folded.yaml"},"3":{"name":"constant.numeric.indentation-indicator.yaml"},"4":{"name":"storage.modifier.chomping-indicator.yaml"},"5":{"patterns":[{"include":"#comment"},{"match":".+","name":"invalid.illegal.expected-comment-or-newline.yaml"}]}},"end":"^(?=\\\\S)|(?!\\\\G)","patterns":[{"begin":"^([ ]+)(?! )","end":"^(?!\\\\1|\\\\s*$)","name":"string.unquoted.block.yaml"}]},"block-sequence":{"match":"(-)(?!\\\\S)","name":"punctuation.definition.block.sequence.item.yaml"},"comment":{"begin":"(?:(^[ \\\\t]*)|[ \\\\t]+)(?=#\\\\p{Print}*$)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.yaml"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.yaml"}},"end":"\\\\n","name":"comment.line.number-sign.yaml"}]},"directive":{"begin":"^%","beginCaptures":{"0":{"name":"punctuation.definition.directive.begin.yaml"}},"end":"(?=$|[ \\\\t]+($|#))","name":"meta.directive.yaml","patterns":[{"captures":{"1":{"name":"keyword.other.directive.yaml.yaml"},"2":{"name":"constant.numeric.yaml-version.yaml"}},"match":"\\\\G(YAML)[ \\\\t]+(\\\\d+\\\\.\\\\d+)"},{"captures":{"1":{"name":"keyword.other.directive.tag.yaml"},"2":{"name":"storage.type.tag-handle.yaml"},"3":{"name":"support.type.tag-prefix.yaml"}},"match":"\\\\G(TAG)(?:[ \\\\t]+((?:!(?:[0-9A-Za-z\\\\-]*!)?))(?:[ \\\\t]+(!(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\-#;/?:@&=+$,_.!~*'()\\\\[\\\\]])*|(?![,!\\\\[\\\\]{}])(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\-#;/?:@&=+$,_.!~*'()\\\\[\\\\]])+))?)?"},{"captures":{"1":{"name":"support.other.directive.reserved.yaml"},"2":{"name":"string.unquoted.directive-name.yaml"},"3":{"name":"string.unquoted.directive-parameter.yaml"}},"match":"\\\\G(\\\\w+)(?:[ \\\\t]+(\\\\w+)(?:[ \\\\t]+(\\\\w+))?)?"},{"match":"\\\\S+","name":"invalid.illegal.unrecognized.yaml"}]},"flow-alias":{"captures":{"1":{"name":"keyword.control.flow.alias.yaml"},"2":{"name":"punctuation.definition.alias.yaml"},"3":{"name":"variable.other.alias.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"((\\\\*))([^\\\\s\\\\[\\\\]/{/},]+)([^\\\\s\\\\]},]\\\\S*)?"},"flow-collection":{"patterns":[{"include":"#flow-sequence"},{"include":"#flow-mapping"}]},"flow-mapping":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.mapping.begin.yaml"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.mapping.end.yaml"}},"name":"meta.flow-mapping.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.mapping.yaml"},{"include":"#flow-pair"}]},"flow-node":{"patterns":[{"include":"#prototype"},{"include":"#flow-alias"},{"include":"#flow-collection"},{"include":"#flow-scalar"}]},"flow-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=[},\\\\]])","name":"meta.flow-pair.explicit.yaml","patterns":[{"include":"#prototype"},{"include":"#flow-pair"},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[\\\\[\\\\]{},])","beginCaptures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[},\\\\]])","patterns":[{"include":"#flow-value"}]}]},{"begin":"(?=(?:[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-][^\\\\s[\\\\[\\\\]{},]])([^\\\\s:[\\\\[\\\\]{},]]|:[^\\\\s[\\\\[\\\\]{},]]|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$)|\\\\s*:[\\\\[\\\\]{},]|\\\\s*[\\\\[\\\\]{},])","name":"meta.flow-pair.key.yaml","patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-][^\\\\s[\\\\[\\\\]{},]]","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$)|\\\\s*:[\\\\[\\\\]{},]|\\\\s*[\\\\[\\\\]{},])","name":"string.unquoted.plain.in.yaml"}]},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[\\\\[\\\\]{},])","captures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[},\\\\]])","name":"meta.flow-pair.yaml","patterns":[{"include":"#flow-value"}]}]},"flow-scalar":{"patterns":[{"include":"#flow-scalar-double-quoted"},{"include":"#flow-scalar-single-quoted"},{"include":"#flow-scalar-plain-in"}]},"flow-scalar-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.double.yaml","patterns":[{"match":"\\\\\\\\([0abtnvfre \\"/\\\\\\\\N_Lp]|x\\\\d\\\\d|u\\\\d{4}|U\\\\d{8})","name":"constant.character.escape.yaml"},{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.double-quoted.newline.yaml"}]},"flow-scalar-plain-in":{"patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-][^\\\\s[\\\\[\\\\]{},]]","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$)|\\\\s*:[\\\\[\\\\]{},]|\\\\s*[\\\\[\\\\]{},])","name":"string.unquoted.plain.in.yaml"}]},"flow-scalar-plain-in-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|(y|Y|yes|Yes|YES|n|N|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|((?:[-+]?0b[0-1_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[0-9a-fA-F_]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+))|((?:[-+]?(?:[0-9][0-9_]*)?\\\\.[0-9.]*(?:[eE][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN)))|((?:\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[ \\\\t]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:(?:[ \\\\t]*)Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?))|(=)|(<<))(?:(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$)|\\\\s*:[\\\\[\\\\]{},]|\\\\s*[\\\\[\\\\]{},]))"}]},"flow-scalar-plain-out":{"patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-]\\\\S","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},"flow-scalar-plain-out-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|(y|Y|yes|Yes|YES|n|N|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|((?:[-+]?0b[0-1_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[0-9a-fA-F_]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+))|((?:[-+]?(?:[0-9][0-9_]*)?\\\\.[0-9.]*(?:[eE][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN)))|((?:\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[ \\\\t]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:(?:[ \\\\t]*)Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?))|(=)|(<<))(?:(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$)))"}]},"flow-scalar-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"'(?!')","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.single.yaml","patterns":[{"match":"''","name":"constant.character.escape.single-quoted.yaml"}]},"flow-sequence":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.sequence.begin.yaml"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.sequence.end.yaml"}},"name":"meta.flow-sequence.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.sequence.yaml"},{"include":"#flow-pair"},{"include":"#flow-node"}]},"flow-value":{"patterns":[{"begin":"\\\\G(?![},\\\\]])","end":"(?=[},\\\\]])","name":"meta.flow-pair.value.yaml","patterns":[{"include":"#flow-node"}]}]},"node":{"patterns":[{"include":"#block-node"}]},"property":{"begin":"(?=!|&)","end":"(?!\\\\G)","name":"meta.property.yaml","patterns":[{"captures":{"1":{"name":"keyword.control.property.anchor.yaml"},"2":{"name":"punctuation.definition.anchor.yaml"},"3":{"name":"entity.name.type.anchor.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"\\\\G((&))([^\\\\s\\\\[\\\\]/{/},]+)(\\\\S+)?"},{"match":"\\\\G(?:!<(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\-#;/?:@&=+$,_.!~*'()\\\\[\\\\]])+>|(?:!(?:[0-9A-Za-z\\\\-]*!)?)(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\-#;/?:@&=+$_.~*'()])+|!)(?=\\\\ |\\\\t|$)","name":"storage.type.tag-handle.yaml"},{"match":"\\\\S+","name":"invalid.illegal.tag-handle.yaml"}]},"prototype":{"patterns":[{"include":"#comment"},{"include":"#property"}]}},"scopeName":"source.yaml","aliases":["yml"]}`)),Zr=[Ene]});var fL={};x(fL,{default:()=>Yo});var Qne,Yo,td=_(()=>{Ye();NB();Ja();Nn();Sg();rt();VA();Uo();Qe();Ki();Og();Qc();Qne=Object.freeze(JSON.parse(`{"displayName":"Ruby","name":"ruby","patterns":[{"captures":{"1":{"name":"keyword.control.class.ruby"},"2":{"name":"entity.name.type.class.ruby"},"5":{"name":"punctuation.separator.namespace.ruby"},"7":{"name":"punctuation.separator.inheritance.ruby"},"8":{"name":"entity.other.inherited-class.ruby"},"11":{"name":"punctuation.separator.namespace.ruby"}},"comment":"class Namespace::ClassName < OtherNamespace::OtherClassName","match":"\\b(class)\\\\s+(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*)\\\\s*((<)\\\\s*(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*))?","name":"meta.class.ruby"},{"captures":{"1":{"name":"keyword.control.module.ruby"},"2":{"name":"entity.name.type.module.ruby"},"5":{"name":"punctuation.separator.namespace.ruby"}},"match":"\\b(module)\\\\s+(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*)","name":"meta.module.ruby"},{"captures":{"1":{"name":"keyword.control.class.ruby"},"2":{"name":"punctuation.separator.inheritance.ruby"}},"match":"\\b(class)\\\\s*(<<)\\\\s*","name":"meta.class.ruby"},{"comment":"else if is a common mistake carried over from other languages. it works if you put in a second end, but it\u2019s never what you want.","match":"(?>)=)"},{"captures":{"1":{"name":"keyword.control.ruby"},"3":{"name":"variable.ruby"},"5":{"name":"keyword.operator.assignment.augmented.ruby"}},"comment":"A local variable operation assignment in a condition","match":"(?>)=)"},{"captures":{"1":{"name":"variable.ruby"}},"comment":"A local variable assignment","match":"^\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*=[^=>]"},{"captures":{"1":{"name":"keyword.control.ruby"},"3":{"name":"variable.ruby"}},"comment":"A local variable assignment in a condition","match":"(?]"},{"captures":{"1":{"name":"punctuation.definition.constant.hashkey.ruby"}},"comment":"symbols as hash key (1.9 syntax)","match":"(?>[a-zA-Z_]\\\\w*(?>[?!])?)(:)(?!:)","name":"constant.language.symbol.hashkey.ruby"},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols as hash key (1.8 syntax)","match":"(?[a-zA-Z_]\\\\w*(?>[?!])?)(?=\\\\s*=>)","name":"constant.language.symbol.hashkey.ruby"},{"comment":"everything being a reserved word, not a value and needing a 'end' is a..","match":"(?|_|\\\\*|\\\\$|\\\\?|:|\\"|-[0adFiIlpv])","name":"variable.other.readwrite.global.pre-defined.ruby"},{"begin":"\\\\b(ENV)\\\\[","beginCaptures":{"1":{"name":"variable.other.constant.ruby"}},"end":"]","name":"meta.environment-variable.ruby","patterns":[{"include":"$self"}]},{"match":"\\\\b[A-Z]\\\\w*(?=((\\\\.|::)[A-Za-z]|\\\\[))","name":"support.class.ruby"},{"match":"\\\\b((abort|at_exit|autoload|binding|callcc|caller|caller_locations|chomp|chop|eval|exec|exit|fork|format|gets|global_variables|gsub|lambda|load|local_variables|open|p|print|printf|proc|putc|puts|rand|readline|readlines|select|set_trace_func|sleep|spawn|sprintf|srand|sub|syscall|system|test|trace_var|trap|untrace_var|warn)\\\\b(?![?!])|autoload\\\\?|exit!)","name":"support.function.kernel.ruby"},{"match":"\\\\b[_A-Z]\\\\w*\\\\b","name":"variable.other.constant.ruby"},{"begin":"(->)\\\\(","beginCaptures":{"1":{"name":"support.function.kernel.ruby"}},"comment":"Lambda parameters.","end":"\\\\)","patterns":[{"begin":"(?=[&*_a-zA-Z])","end":"(?=[,)])","patterns":[{"include":"#method_parameters"}]},{"include":"#method_parameters"}]},{"begin":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.def.ruby"},"2":{"name":"entity.name.function.ruby"},"3":{"name":"punctuation.definition.parameters.ruby"}},"comment":"The method pattern comes from the symbol pattern. See there for an explanation.","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.ruby"}},"name":"meta.function.method.with-arguments.ruby","patterns":[{"begin":"(?=[&*_a-zA-Z])","end":"(?=[,)])","patterns":[{"include":"#method_parameters"}]},{"include":"#method_parameters"}]},{"begin":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))[ \\\\t](?=[ \\\\t]*[^\\\\s#;])","beginCaptures":{"1":{"name":"keyword.control.def.ruby"},"2":{"name":"entity.name.function.ruby"}},"comment":"same as the previous rule, but without parentheses around the arguments","end":"(?=;)|(?<=[\\\\w\\\\])}\`'\\"!?])(?=\\\\s*#|\\\\s*$)","name":"meta.function.method.with-arguments.ruby","patterns":[{"begin":"(?=[&*_a-zA-Z])","end":"(?=,|;|\\\\s*#|\\\\s*$)","patterns":[{"include":"#method_parameters"}]},{"include":"#method_parameters"}]},{"captures":{"1":{"name":"keyword.control.def.ruby"},"3":{"name":"entity.name.function.ruby"}},"comment":" the optional name is just to catch the def also without a method-name","match":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\b(\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?)))?","name":"meta.function.method.without-arguments.ruby"},{"match":"\\\\b([\\\\d](?>_?\\\\d)*(\\\\.(?![^[:space:][:digit:]])(?>_?\\\\d)*)?([eE][-+]?\\\\d(?>_?\\\\d)*)?|0(?:[xX]\\\\h(?>_?\\\\h)*|[oO]?[0-7](?>_?[0-7])*|[bB][01](?>_?[01])*|[dD]\\\\d(?>_?\\\\d)*))\\\\b","name":"constant.numeric.ruby"},{"begin":":'","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"comment":"symbol literal with '' delimiter","end":"'","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\['\\\\\\\\]","name":"constant.character.escape.ruby"}]},{"begin":":\\"","beginCaptures":{"0":{"name":"punctuation.section.symbol.begin.ruby"}},"comment":"symbol literal with \\"\\" delimiter","end":"\\"","endCaptures":{"0":{"name":"punctuation.section.symbol.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"comment":"Needs higher precedence than regular expressions.","match":"(?|=>|==|=~|!~|!=|;|$|if|else|elsif|then|do|end|unless|while|until|or|and)|$)","captures":{"1":{"name":"string.regexp.interpolated.ruby"},"2":{"name":"punctuation.section.regexp.ruby"}},"comment":"regular expression literal with interpolation","contentName":"string.regexp.interpolated.ruby","end":"((/[eimnosux]*))","patterns":[{"include":"#regex_sub"}]},{"begin":"%r{","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"}[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_curly_r"}]},{"begin":"%r\\\\[","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"][eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_brackets_r"}]},{"begin":"%r\\\\(","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"\\\\)[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_parens_r"}]},{"begin":"%r<","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":">[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_ltgt_r"}]},{"begin":"%r([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"\\\\1[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"}]},{"begin":"%I\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},{"begin":"%I\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},{"begin":"%I<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},{"begin":"%I{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},{"begin":"%I([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%i\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%i\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%i<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%i{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%i([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"begin":"%W\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},{"begin":"%W\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},{"begin":"%W<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},{"begin":"%W{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},{"begin":"%W([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%w\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%w\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%w<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%w{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%w([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"begin":"%[Qx]?\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},{"begin":"%[Qx]?\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},{"begin":"%[Qx]?{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},{"begin":"%[Qx]?<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},{"begin":"%[Qx]([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%([^\\\\w\\\\s=])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%q\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%q<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%q\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%q{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%q([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"begin":"%s\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%s<","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%s\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%s{","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%s([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols","match":"(?[$a-zA-Z_]\\\\w*(?>[?!]|=(?![>=]))?|===?|<=>|>[>=]?|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?|@@?[a-zA-Z_]\\\\w*)","name":"constant.language.symbol.ruby"},{"begin":"^=begin","captures":{"0":{"name":"punctuation.definition.comment.ruby"}},"comment":"multiline comments","end":"^=end","name":"comment.block.documentation.ruby"},{"include":"#yard"},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ruby"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.ruby"}},"end":"\\\\n","name":"comment.line.number-sign.ruby"}]},{"comment":"\\n\\t\\t\\tmatches questionmark-letters.\\n\\n\\t\\t\\texamples (1st alternation = hex):\\n\\t\\t\\t?\\\\x1 ?\\\\x61\\n\\n\\t\\t\\texamples (2nd alternation = octal):\\n\\t\\t\\t?\\\\0 ?\\\\07 ?\\\\017\\n\\n\\t\\t\\texamples (3rd alternation = escaped):\\n\\t\\t\\t?\\\\n ?\\\\b\\n\\n\\t\\t\\texamples (4th alternation = meta-ctrl):\\n\\t\\t\\t?\\\\C-a ?\\\\M-a ?\\\\C-\\\\M-\\\\C-\\\\M-a\\n\\n\\t\\t\\texamples (4th alternation = normal):\\n\\t\\t\\t?a ?A ?0 \\n\\t\\t\\t?* ?\\" ?( \\n\\t\\t\\t?. ?#\\n\\t\\t\\t\\n\\t\\t\\t\\n\\t\\t\\tthe negative lookbehind prevents against matching\\n\\t\\t\\tp(42.tainted?)\\n\\t\\t\\t","match":"(?<<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1))","comment":"Heredoc with embedded HTML","end":"(?!\\\\G)","name":"meta.embedded.block.html","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.html","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.html.basic"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HAML)\\\\b\\\\1))","comment":"Heredoc with embedded HAML","end":"(?!\\\\G)","name":"meta.embedded.block.haml","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HAML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.haml","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.haml"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1))","comment":"Heredoc with embedded XML","end":"(?!\\\\G)","name":"meta.embedded.block.xml","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.xml","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.xml"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1))","comment":"Heredoc with embedded SQL","end":"(?!\\\\G)","name":"meta.embedded.block.sql","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.sql","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.sql"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:GRAPHQL|GQL))\\\\b\\\\1))","comment":"Heredoc with embedded GraphQL","end":"(?!\\\\G)","name":"meta.embedded.block.graphql","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:GRAPHQL|GQL))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.graphql","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.graphql"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1))","comment":"Heredoc with embedded CSS","end":"(?!\\\\G)","name":"meta.embedded.block.css","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.css","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.css"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1))","comment":"Heredoc with embedded C++","end":"(?!\\\\G)","name":"meta.embedded.block.cpp","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.cpp","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.cpp"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)C)\\\\b\\\\1))","comment":"Heredoc with embedded C","end":"(?!\\\\G)","name":"meta.embedded.block.c","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)C)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.c","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.c"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\b\\\\1))","comment":"Heredoc with embedded Javascript","end":"(?!\\\\G)","name":"meta.embedded.block.js","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.js","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.js"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1))","comment":"Heredoc with embedded jQuery Javascript","end":"(?!\\\\G)","name":"meta.embedded.block.js.jquery","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.js.jquery","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.js.jquery"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:SH|SHELL))\\\\b\\\\1))","comment":"Heredoc with embedded Shell","end":"(?!\\\\G)","name":"meta.embedded.block.shell","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:SH|SHELL))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.shell","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.shell"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1))","comment":"Heredoc with embedded Lua","end":"(?!\\\\G)","name":"meta.embedded.block.lua","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.lua","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.lua"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1))","comment":"Heredoc with embedded Ruby","end":"(?!\\\\G)","name":"meta.embedded.block.ruby","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.ruby","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.ruby"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:YAML|YML))\\\\b\\\\1))","comment":"Heredoc with embedded YAML","end":"(?!\\\\G)","name":"meta.embedded.block.yaml","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:YAML|YML))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.yaml","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.yaml"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SLIM)\\\\b\\\\1))","comment":"Heredoc with embedded Slim","end":"(?!\\\\G)","name":"meta.embedded.block.slim","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SLIM)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.slim","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.slim"},{"include":"#escaped_char"}]}]},{"begin":"(?>=\\\\s*<<([\\"'\`]?)(\\\\w+)\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"^\\\\2$","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?>((<<[-~]([\\"'\`]?)(\\\\w+)\\\\3,\\\\s?)*<<[-~]([\\"'\`]?)(\\\\w+)\\\\5))(.*)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ruby"},"7":{"patterns":[{"include":"source.ruby"}]}},"comment":"heredoc with multiple inputs and indented terminator","end":"^\\\\s*\\\\6$","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?<={|{\\\\s|[^A-Za-z0-9_:@$]do|^do|[^A-Za-z0-9_:@$]do\\\\s|^do\\\\s)(\\\\|)","captures":{"1":{"name":"punctuation.separator.variable.ruby"}},"end":"(?","name":"punctuation.separator.key-value"},{"match":"->","name":"support.function.kernel.ruby"},{"match":"<<=|%=|&{1,2}=|\\\\*=|\\\\*\\\\*=|\\\\+=|-=|\\\\^=|\\\\|{1,2}=|<<","name":"keyword.operator.assignment.augmented.ruby"},{"match":"<=>|<(?!<|=)|>(?!<|=|>)|<=|>=|===|==|=~|!=|!~|(?<=[ \\\\t])\\\\?","name":"keyword.operator.comparison.ruby"},{"match":"(?>","name":"keyword.operator.other.ruby"},{"match":";","name":"punctuation.separator.statement.ruby"},{"match":",","name":"punctuation.separator.object.ruby"},{"captures":{"1":{"name":"punctuation.separator.namespace.ruby"}},"comment":"Mark as namespace separator if double colons followed by capital letter","match":"(::)\\\\s*(?=[A-Z])"},{"captures":{"1":{"name":"punctuation.separator.method.ruby"}},"comment":"Mark as method separator if double colons not followed by capital letter","match":"(\\\\.|::)\\\\s*(?![A-Z])"},{"comment":"Must come after method and constant separators to prefer double colons","match":":","name":"punctuation.separator.other.ruby"},{"match":"{","name":"punctuation.section.scope.begin.ruby"},{"match":"}","name":"punctuation.section.scope.end.ruby"},{"match":"\\\\[","name":"punctuation.section.array.begin.ruby"},{"match":"]","name":"punctuation.section.array.end.ruby"},{"match":"\\\\(|\\\\)","name":"punctuation.section.function.ruby"},{"begin":"(?<=[^\\\\.]\\\\.|::)(?=[a-zA-Z][a-zA-Z0-9_!?]*[^a-zA-Z0-9_!?])","end":"(?<=[a-zA-Z0-9_!?])(?=[^a-zA-Z0-9_!?])","name":"meta.function-call.ruby","patterns":[{"match":"([a-zA-Z][a-zA-Z0-9_!?]*)(?=[^a-zA-Z0-9_!?])","name":"entity.name.function.ruby"}]},{"begin":"([a-zA-Z]\\\\w*[!?]?)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.ruby"},"2":{"name":"punctuation.section.function.ruby"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.function.ruby"}},"name":"meta.function-call.ruby","patterns":[{"include":"$self"}]}],"repository":{"escaped_char":{"match":"\\\\\\\\(?:[0-7]{1,3}|x[\\\\da-fA-F]{1,2}|.)","name":"constant.character.escape.ruby"},"heredoc":{"begin":"^<<[-~]?\\\\w+","end":"$","patterns":[{"include":"$self"}]},"interpolated_ruby":{"patterns":[{"begin":"#{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.ruby"}},"contentName":"source.ruby","end":"}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.ruby"}},"name":"meta.embedded.line.ruby","patterns":[{"include":"#nest_curly_and_self"},{"include":"$self"}]},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.instance.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#@@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.class.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#\\\\$)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.global.ruby"}]},"method_parameters":{"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"#params"},{"include":"$self"}],"repository":{"braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.scope.begin.ruby"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.scope.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"$self"}]},"brackets":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"$self"}]},"params":{"captures":{"1":{"name":"storage.type.variable.ruby"},"2":{"name":"constant.other.symbol.hashkey.parameter.function.ruby"},"3":{"name":"punctuation.definition.constant.ruby"},"4":{"name":"variable.parameter.function.ruby"}},"match":"\\\\G(&|\\\\*\\\\*?)?(?:([_a-zA-Z]\\\\w*[?!]?(:))|([_a-zA-Z]\\\\w*))"},"parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.function.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"$self"}]}}},"nest_brackets":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"]","patterns":[{"include":"#nest_brackets"}]},"nest_brackets_i":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"]","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},"nest_brackets_r":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"]","patterns":[{"include":"#regex_sub"},{"include":"#nest_brackets_r"}]},"nest_curly":{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#nest_curly"}]},"nest_curly_and_self":{"patterns":[{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#nest_curly_and_self"}]},{"include":"$self"}]},"nest_curly_i":{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},"nest_curly_r":{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#regex_sub"},{"include":"#nest_curly_r"}]},"nest_ltgt":{"begin":"<","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":">","patterns":[{"include":"#nest_ltgt"}]},"nest_ltgt_i":{"begin":"<","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":">","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},"nest_ltgt_r":{"begin":"<","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":">","patterns":[{"include":"#regex_sub"},{"include":"#nest_ltgt_r"}]},"nest_parens":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"\\\\)","patterns":[{"include":"#nest_parens"}]},"nest_parens_i":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"\\\\)","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},"nest_parens_r":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"\\\\)","patterns":[{"include":"#regex_sub"},{"include":"#nest_parens_r"}]},"regex_sub":{"patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.ruby"},"3":{"name":"punctuation.definition.arbitrary-repetition.ruby"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repetition.ruby"},{"begin":"\\\\[(?:\\\\^?])?","captures":{"0":{"name":"punctuation.definition.character-class.ruby"}},"end":"]","name":"string.regexp.character-class.ruby","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.comment.end.ruby"}},"name":"comment.line.number-sign.ruby","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\(","captures":{"0":{"name":"punctuation.definition.group.ruby"}},"end":"\\\\)","name":"string.regexp.group.ruby","patterns":[{"include":"#regex_sub"}]},{"begin":"(?<=^|\\\\s)(#)\\\\s(?=[[a-zA-Z0-9,. \\\\t?!-][^\\\\x{00}-\\\\x{7F}]]*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ruby"}},"comment":"We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.","end":"$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.comment.ruby"}},"name":"comment.line.number-sign.ruby"}]},"yard":{"patterns":[{"include":"#yard_comment"},{"include":"#yard_param_types"},{"include":"#yard_option"},{"include":"#yard_tag"},{"include":"#yard_types"},{"include":"#yard_directive"},{"include":"#yard_see"},{"include":"#yard_macro_attribute"}]},"yard_comment":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(abstract|api|author|deprecated|example|macro|note|overload|since|todo|version)(?=\\\\s|$)","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"}},"comment":"For YARD tags that follow the tag-comment pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_continuation":{"match":"^\\\\s*#","name":"punctuation.definition.comment.ruby"},"yard_directive":{"begin":"^(\\\\s*)(#)(\\\\s*)(@!)(endgroup|group|method|parse|scope|visibility)(\\\\s+((\\\\[).+(])))?(?=\\\\s)","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"}},"comment":"For YARD directives","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_macro_attribute":{"begin":"^(\\\\s*)(#)(\\\\s*)(@!)(attribute|macro)(\\\\s+((\\\\[).+(])))?(?=\\\\s)(\\\\s+([a-z_]\\\\w*:?))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"},"11":{"name":"comment.line.parameter.yard.ruby"}},"comment":"separate rule for attribute and macro tags because name goes after []","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_option":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(option)(?=\\\\s)(?>\\\\s+([a-z_]\\\\w*:?))?(?>\\\\s+((\\\\[).+(])))?(?>\\\\s+((\\\\S*)))?(?>\\\\s+((\\\\().+(\\\\))))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"6":{"name":"comment.line.parameter.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"},"10":{"name":"comment.line.keyword.yard.ruby"},"11":{"name":"comment.line.hashkey.yard.ruby"},"12":{"name":"comment.line.defaultvalue.yard.ruby"},"13":{"name":"comment.line.punctuation.yard.ruby"},"14":{"name":"comment.line.punctuation.yard.ruby"}},"comment":"For YARD option tag that follow the tag-name-types-key-(value)-description pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_param_types":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(attr|attr_reader|attr_writer|yieldparam|param)(?=\\\\s)(?>\\\\s+(?>([a-z_]\\\\w*:?)|((\\\\[).+(]))))?(?>\\\\s+(?>((\\\\[).+(]))|([a-z_]\\\\w*:?)))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"6":{"name":"comment.line.parameter.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"},"10":{"name":"comment.line.type.yard.ruby"},"11":{"name":"comment.line.punctuation.yard.ruby"},"12":{"name":"comment.line.punctuation.yard.ruby"},"13":{"name":"comment.line.parameter.yard.ruby"}},"comment":"For YARD tags that follow the tag-name-types-description or tag-types-name-description pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_see":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(see)(?=\\\\s)(\\\\s+(.+?))?(?=\\\\s|$)","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.parameter.yard.ruby"}},"comment":"separate rule for @see because name could contain url","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_tag":{"captures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"}},"comment":"For YARD tags that are just the tag","match":"^(\\\\s*)(#)(\\\\s*)(@)(private)$","name":"comment.line.number-sign.ruby"},"yard_types":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(raise|return|yield(?:return)?)(?=\\\\s)(\\\\s+((\\\\[).+(])))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"}},"comment":"For YARD tags that follow the tag-types-comment pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]}},"scopeName":"source.ruby","embeddedLangs":["html","haml","xml","sql","graphql","css","cpp","c","javascript","shellscript","lua","yaml"],"aliases":["rb"]}`)),Yo=[...ce,...OB,...Qt,...Ve,...XA,...ue,...Zo,...Va,...J,...ia,...ed,...Zr,Qne]});var bL={};x(bL,{default:()=>Dne});var Ine,Dne,hL=_(()=>{Ye();td();Ine=Object.freeze(JSON.parse('{"displayName":"ERB","fileTypes":["erb","rhtml","html.erb"],"injections":{"text.html.erb - (meta.embedded.block.erb | meta.embedded.line.erb | comment)":{"patterns":[{"begin":"(^\\\\s*)(?=<%+#(?![^%]*%>))","beginCaptures":{"0":{"name":"punctuation.whitespace.comment.leading.erb"}},"end":"(?!\\\\G)(\\\\s*$\\\\n)?","endCaptures":{"0":{"name":"punctuation.whitespace.comment.trailing.erb"}},"patterns":[{"include":"#comment"}]},{"begin":"(^\\\\s*)(?=<%(?![^%]*%>))","beginCaptures":{"0":{"name":"punctuation.whitespace.embedded.leading.erb"}},"end":"(?!\\\\G)(\\\\s*$\\\\n)?","endCaptures":{"0":{"name":"punctuation.whitespace.embedded.trailing.erb"}},"patterns":[{"include":"#tags"}]},{"include":"#comment"},{"include":"#tags"}]}},"name":"erb","patterns":[{"include":"text.html.basic"}],"repository":{"comment":{"patterns":[{"begin":"<%+#","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.erb"}},"end":"%>","endCaptures":{"0":{"name":"punctuation.definition.comment.end.erb"}},"name":"comment.block.erb"}]},"tags":{"patterns":[{"begin":"<%+(?!>)[-=]?(?![^%]*%>)","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.erb"}},"contentName":"source.ruby","end":"(-?%)>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.erb"},"1":{"name":"source.ruby"}},"name":"meta.embedded.block.erb","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.erb"}},"match":"(#).*?(?=-?%>)","name":"comment.line.number-sign.erb"},{"include":"source.ruby"}]},{"begin":"<%+(?!>)[-=]?","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.erb"}},"contentName":"source.ruby","end":"(-?%)>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.erb"},"1":{"name":"source.ruby"}},"name":"meta.embedded.line.erb","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.erb"}},"match":"(#).*?(?=-?%>)","name":"comment.line.number-sign.erb"},{"include":"source.ruby"}]}]}},"scopeName":"text.html.erb","embeddedLangs":["html","ruby"]}')),Dne=[...ce,...Yo,Ine]});var yL={};x(yL,{default:()=>Sne});var Fne,Sne,wL=_(()=>{Fne=Object.freeze(JSON.parse(`{"displayName":"Erlang","fileTypes":["erl","escript","hrl","xrl","yrl"],"name":"erlang","patterns":[{"include":"#module-directive"},{"include":"#import-export-directive"},{"include":"#behaviour-directive"},{"include":"#record-directive"},{"include":"#define-directive"},{"include":"#macro-directive"},{"include":"#directive"},{"include":"#function"},{"include":"#everything-else"}],"repository":{"atom":{"patterns":[{"begin":"(')","beginCaptures":{"1":{"name":"punctuation.definition.symbol.begin.erlang"}},"end":"(')","endCaptures":{"1":{"name":"punctuation.definition.symbol.end.erlang"}},"name":"constant.other.symbol.quoted.single.erlang","patterns":[{"captures":{"1":{"name":"punctuation.definition.escape.erlang"},"3":{"name":"punctuation.definition.escape.erlang"}},"match":"(\\\\\\\\)([bdefnrstv\\\\\\\\'\\"]|(\\\\^)[@-_a-z]|[0-7]{1,3}|x[\\\\da-fA-F]{2})","name":"constant.other.symbol.escape.erlang"},{"match":"\\\\\\\\\\\\^?.?","name":"invalid.illegal.atom.erlang"}]},{"match":"[a-z][a-zA-Z\\\\d@_]*+","name":"constant.other.symbol.unquoted.erlang"}]},"behaviour-directive":{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.behaviour.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.type.class.behaviour.definition.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(behaviour)\\\\s*+(\\\\()\\\\s*+([a-z][a-zA-Z\\\\d@_]*+)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.behaviour.erlang"},"binary":{"begin":"(<<)","beginCaptures":{"1":{"name":"punctuation.definition.binary.begin.erlang"}},"end":"(>>)","endCaptures":{"1":{"name":"punctuation.definition.binary.end.erlang"}},"name":"meta.structure.binary.erlang","patterns":[{"captures":{"1":{"name":"punctuation.separator.binary.erlang"},"2":{"name":"punctuation.separator.value-size.erlang"}},"match":"(,)|(:)"},{"include":"#internal-type-specifiers"},{"include":"#everything-else"}]},"character":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.character.erlang"},"2":{"name":"constant.character.escape.erlang"},"3":{"name":"punctuation.definition.escape.erlang"},"5":{"name":"punctuation.definition.escape.erlang"}},"match":"(\\\\$)((\\\\\\\\)([bdefnrstv\\\\\\\\'\\"]|(\\\\^)[@-_a-z]|[0-7]{1,3}|x[\\\\da-fA-F]{2}))","name":"constant.character.erlang"},{"match":"\\\\$\\\\\\\\\\\\^?.?","name":"invalid.illegal.character.erlang"},{"captures":{"1":{"name":"punctuation.definition.character.erlang"}},"match":"(\\\\$)[ \\\\S]","name":"constant.character.erlang"},{"match":"\\\\$.?","name":"invalid.illegal.character.erlang"}]},"comment":{"begin":"(^[ \\\\t]+)?(?=%)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.erlang"}},"end":"(?!\\\\G)","patterns":[{"begin":"%","beginCaptures":{"0":{"name":"punctuation.definition.comment.erlang"}},"end":"\\\\n","name":"comment.line.percentage.erlang"}]},"define-directive":{"patterns":[{"begin":"^\\\\s*+(-)\\\\s*+(define)\\\\s*+(\\\\()\\\\s*+([a-zA-Z\\\\d@_]++)\\\\s*+","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.define.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.definition.erlang"}},"end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.define.erlang","patterns":[{"include":"#everything-else"}]},{"begin":"(?=^\\\\s*+-\\\\s*+define\\\\s*+\\\\(\\\\s*+[a-zA-Z\\\\d@_]++\\\\s*+\\\\()","end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.define.erlang","patterns":[{"begin":"^\\\\s*+(-)\\\\s*+(define)\\\\s*+(\\\\()\\\\s*+([a-zA-Z\\\\d@_]++)\\\\s*+(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.define.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.definition.erlang"},"5":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\))\\\\s*(,)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.separator.parameters.erlang"}},"patterns":[{"match":",","name":"punctuation.separator.parameters.erlang"},{"include":"#everything-else"}]},{"match":"\\\\|\\\\||\\\\||:|;|,|\\\\.|->","name":"punctuation.separator.define.erlang"},{"include":"#everything-else"}]}]},"directive":{"patterns":[{"begin":"^\\\\s*+(-)\\\\s*+([a-z][a-zA-Z\\\\d@_]*+)\\\\s*+(\\\\(?)","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\)?)\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.erlang","patterns":[{"include":"#everything-else"}]},{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.erlang"},"3":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+([a-z][a-zA-Z\\\\d@_]*+)\\\\s*+(\\\\.)","name":"meta.directive.erlang"}]},"docstring":{"begin":"(?)|(;)|(,)"},"internal-function-list":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.list.begin.erlang"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.list.end.erlang"}},"name":"meta.structure.list.function.erlang","patterns":[{"begin":"([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')\\\\s*+(/)","beginCaptures":{"1":{"name":"entity.name.function.erlang"},"2":{"name":"punctuation.separator.function-arity.erlang"}},"end":"(,)|(?=\\\\])","endCaptures":{"1":{"name":"punctuation.separator.list.erlang"}},"patterns":[{"include":"#everything-else"}]},{"include":"#everything-else"}]},"internal-function-parts":{"patterns":[{"begin":"(?=\\\\()","end":"(->)","endCaptures":{"1":{"name":"punctuation.separator.clause-head-body.erlang"}},"patterns":[{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"}},"patterns":[{"match":",","name":"punctuation.separator.parameters.erlang"},{"include":"#everything-else"}]},{"match":",|;","name":"punctuation.separator.guards.erlang"},{"include":"#everything-else"}]},{"match":",","name":"punctuation.separator.expressions.erlang"},{"include":"#everything-else"}]},"internal-record-body":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.class.record.begin.erlang"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.class.record.end.erlang"}},"name":"meta.structure.record.erlang","patterns":[{"begin":"(([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')|(_))","beginCaptures":{"2":{"name":"variable.other.field.erlang"},"3":{"name":"variable.language.omitted.field.erlang"}},"end":"(,)|(?=\\\\})","endCaptures":{"1":{"name":"punctuation.separator.class.record.erlang"}},"patterns":[{"include":"#everything-else"}]},{"include":"#everything-else"}]},"internal-string-body":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.escape.erlang"},"3":{"name":"punctuation.definition.escape.erlang"}},"comment":"escape sequence","match":"(\\\\\\\\)([bdefnrstv\\\\\\\\'\\"]|(\\\\^)[@-_a-z]|[0-7]{1,3}|x[\\\\da-fA-F]{2})","name":"constant.character.escape.erlang"},{"match":"\\\\\\\\\\\\^?.?","name":"invalid.illegal.string.erlang"},{"captures":{"1":{"name":"punctuation.definition.placeholder.erlang"},"6":{"name":"punctuation.separator.placeholder-parts.erlang"},"10":{"name":"punctuation.separator.placeholder-parts.erlang"}},"comment":"io:fwrite format control sequence","match":"(~)((\\\\-)?\\\\d++|(\\\\*))?((\\\\.)(\\\\d++|(\\\\*))?((\\\\.)((\\\\*)|.))?)?[tlkK]*[~cfegswpWPBX#bx\\\\+ni]","name":"constant.character.format.placeholder.other.erlang"},{"captures":{"1":{"name":"punctuation.definition.placeholder.erlang"}},"comment":"io:fread format control sequence","match":"(~)(\\\\*)?(\\\\d++)?(t)?[~du\\\\-#fsacl]","name":"constant.character.format.placeholder.other.erlang"},{"match":"~[^\\"]?","name":"invalid.illegal.string.erlang"}]},"internal-type-specifiers":{"begin":"(/)","beginCaptures":{"1":{"name":"punctuation.separator.value-type.erlang"}},"end":"(?=,|:|>>)","patterns":[{"captures":{"1":{"name":"storage.type.erlang"},"2":{"name":"storage.modifier.signedness.erlang"},"3":{"name":"storage.modifier.endianness.erlang"},"4":{"name":"storage.modifier.unit.erlang"},"5":{"name":"punctuation.separator.unit-specifiers.erlang"},"6":{"name":"constant.numeric.integer.decimal.erlang"},"7":{"name":"punctuation.separator.type-specifiers.erlang"}},"match":"(integer|float|binary|bytes|bitstring|bits|utf8|utf16|utf32)|(signed|unsigned)|(big|little|native)|(unit)(:)(\\\\d++)|(-)"}]},"keyword":{"match":"\\\\b(after|begin|case|catch|cond|end|fun|if|let|of|try|receive|when|maybe|else)\\\\b","name":"keyword.control.erlang"},"language-constant":{"match":"\\\\b(false|true|undefined)\\\\b","name":"constant.language"},"list":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.list.begin.erlang"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.list.end.erlang"}},"name":"meta.structure.list.erlang","patterns":[{"match":"\\\\||\\\\|\\\\||,","name":"punctuation.separator.list.erlang"},{"include":"#everything-else"}]},"macro-directive":{"patterns":[{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.ifdef.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(ifdef)\\\\s*+(\\\\()\\\\s*+([a-zA-z\\\\d@_]++)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.ifdef.erlang"},{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.ifndef.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(ifndef)\\\\s*+(\\\\()\\\\s*+([a-zA-z\\\\d@_]++)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.ifndef.erlang"},{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.undef.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(undef)\\\\s*+(\\\\()\\\\s*+([a-zA-z\\\\d@_]++)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.undef.erlang"}]},"macro-usage":{"captures":{"1":{"name":"keyword.operator.macro.erlang"},"2":{"name":"entity.name.function.macro.erlang"}},"match":"(\\\\?\\\\??)\\\\s*+([a-zA-Z\\\\d@_]++)","name":"meta.macro-usage.erlang"},"module-directive":{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.module.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.type.class.module.definition.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(module)\\\\s*+(\\\\()\\\\s*+([a-z][a-zA-Z\\\\d@_]*+)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.module.erlang"},"number":{"begin":"(?=\\\\d)","end":"(?!\\\\d)","patterns":[{"captures":{"1":{"name":"punctuation.separator.integer-float.erlang"},"2":{"name":"punctuation.separator.float-exponent.erlang"}},"match":"\\\\d++(\\\\.)\\\\d++([eE][\\\\+\\\\-]?\\\\d++)?","name":"constant.numeric.float.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"2(#)([0-1]++_)*[0-1]++","name":"constant.numeric.integer.binary.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"3(#)([0-2]++_)*[0-2]++","name":"constant.numeric.integer.base-3.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"4(#)([0-3]++_)*[0-3]++","name":"constant.numeric.integer.base-4.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"5(#)([0-4]++_)*[0-4]++","name":"constant.numeric.integer.base-5.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"6(#)([0-5]++_)*[0-5]++","name":"constant.numeric.integer.base-6.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"7(#)([0-6]++_)*[0-6]++","name":"constant.numeric.integer.base-7.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"8(#)([0-7]++_)*[0-7]++","name":"constant.numeric.integer.octal.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"9(#)([0-8]++_)*[0-8]++","name":"constant.numeric.integer.base-9.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"10(#)(\\\\d++_)*\\\\d++","name":"constant.numeric.integer.decimal.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"11(#)([\\\\daA]++_)*[\\\\daA]++","name":"constant.numeric.integer.base-11.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"12(#)([\\\\da-bA-B]++_)*[\\\\da-bA-B]++","name":"constant.numeric.integer.base-12.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"13(#)([\\\\da-cA-C]++_)*[\\\\da-cA-C]++","name":"constant.numeric.integer.base-13.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"14(#)([\\\\da-dA-D]++_)*[\\\\da-dA-D]++","name":"constant.numeric.integer.base-14.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"15(#)([\\\\da-eA-E]++_)*[\\\\da-eA-E]++","name":"constant.numeric.integer.base-15.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"16(#)([\\\\da-fA-F]++_)*[\\\\da-fA-F]++","name":"constant.numeric.integer.hexadecimal.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"17(#)([\\\\da-gA-G]++_)*[\\\\da-gA-G]++","name":"constant.numeric.integer.base-17.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"18(#)([\\\\da-hA-H]++_)*[\\\\da-hA-H]++","name":"constant.numeric.integer.base-18.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"19(#)([\\\\da-iA-I]++_)*[\\\\da-iA-I]++","name":"constant.numeric.integer.base-19.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"20(#)([\\\\da-jA-J]++_)*[\\\\da-jA-J]++","name":"constant.numeric.integer.base-20.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"21(#)([\\\\da-kA-K]++_)*[\\\\da-kA-K]++","name":"constant.numeric.integer.base-21.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"22(#)([\\\\da-lA-L]++_)*[\\\\da-lA-L]++","name":"constant.numeric.integer.base-22.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"23(#)([\\\\da-mA-M]++_)*[\\\\da-mA-M]++","name":"constant.numeric.integer.base-23.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"24(#)([\\\\da-nA-N]++_)*[\\\\da-nA-N]++","name":"constant.numeric.integer.base-24.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"25(#)([\\\\da-oA-O]++_)*[\\\\da-oA-O]++","name":"constant.numeric.integer.base-25.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"26(#)([\\\\da-pA-P]++_)*[\\\\da-pA-P]++","name":"constant.numeric.integer.base-26.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"27(#)([\\\\da-qA-Q]++_)*[\\\\da-qA-Q]++","name":"constant.numeric.integer.base-27.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"28(#)([\\\\da-rA-R]++_)*[\\\\da-rA-R]++","name":"constant.numeric.integer.base-28.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"29(#)([\\\\da-sA-S]++_)*[\\\\da-sA-S]++","name":"constant.numeric.integer.base-29.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"30(#)([\\\\da-tA-T]++_)*[\\\\da-tA-T]++","name":"constant.numeric.integer.base-30.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"31(#)([\\\\da-uA-U]++_)*[\\\\da-uA-U]++","name":"constant.numeric.integer.base-31.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"32(#)([\\\\da-vA-V]++_)*[\\\\da-vA-V]++","name":"constant.numeric.integer.base-32.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"33(#)([\\\\da-wA-W]++_)*[\\\\da-wA-W]++","name":"constant.numeric.integer.base-33.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"34(#)([\\\\da-xA-X]++_)*[\\\\da-xA-X]++","name":"constant.numeric.integer.base-34.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"35(#)([\\\\da-yA-Y]++_)*[\\\\da-yA-Y]++","name":"constant.numeric.integer.base-35.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"36(#)([\\\\da-zA-Z]++_)*[\\\\da-zA-Z]++","name":"constant.numeric.integer.base-36.erlang"},{"match":"\\\\d++#([\\\\da-zA-Z]++_)*[\\\\da-zA-Z]++","name":"invalid.illegal.integer.erlang"},{"match":"(\\\\d++_)*\\\\d++","name":"constant.numeric.integer.decimal.erlang"}]},"parenthesized-expression":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.erlang"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.expression.end.erlang"}},"name":"meta.expression.parenthesized","patterns":[{"include":"#everything-else"}]},"record-directive":{"begin":"^\\\\s*+(-)\\\\s*+(record)\\\\s*+(\\\\()\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')\\\\s*+(,)","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.import.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.type.class.record.definition.erlang"},"5":{"name":"punctuation.separator.parameters.erlang"}},"end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.record.erlang","patterns":[{"include":"#internal-record-body"},{"include":"#comment"}]},"record-usage":{"patterns":[{"captures":{"1":{"name":"keyword.operator.record.erlang"},"2":{"name":"entity.name.type.class.record.erlang"},"3":{"name":"punctuation.separator.record-field.erlang"},"4":{"name":"variable.other.field.erlang"}},"match":"(#)\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')\\\\s*+(\\\\.)\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')","name":"meta.record-usage.erlang"},{"begin":"(#)\\\\s*+([a-z][a-zA-Z\\\\d@_]*+|'[^']*+')","beginCaptures":{"1":{"name":"keyword.operator.record.erlang"},"2":{"name":"entity.name.type.class.record.erlang"}},"end":"(?<=\\\\})","name":"meta.record-usage.erlang","patterns":[{"include":"#internal-record-body"}]}]},"sigil-docstring":{"begin":"(~[bBsS]?)(([\\"]{3,})\\\\s*)(\\\\S.*)?$","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"meta.string.quoted.triple.begin.erlang"},"3":{"name":"punctuation.definition.string.begin.erlang"},"4":{"name":"invalid.illegal.string.erlang"}},"comment":"Only whitespace characters are allowed after the beggining and before the closing sequences and those cannot be in the same line","end":"^(\\\\s*(\\\\3))(?!\\")","endCaptures":{"1":{"name":"meta.string.quoted.triple.end.erlang"},"2":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.tripple.sigil.erlang"},"sigil-string":{"patterns":[{"include":"#sigil-string-parenthesis"},{"include":"#sigil-string-parenthesis-verbatim"},{"include":"#sigil-string-curly-brackets"},{"include":"#sigil-string-curly-brackets-verbatim"},{"include":"#sigil-string-square-brackets"},{"include":"#sigil-string-square-brackets-verbatim"},{"include":"#sigil-string-less-greater"},{"include":"#sigil-string-less-greater-verbatim"},{"include":"#sigil-string-single-character"},{"include":"#sigil-string-single-character-verbatim"},{"include":"#sigil-string-single-quote"},{"include":"#sigil-string-single-quote-verbatim"},{"include":"#sigil-string-double-quote"},{"include":"#sigil-string-double-quote-verbatim"}]},"sigil-string-curly-brackets":{"begin":"(~[bs]?)([{])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([}])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.curly-brackets.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-curly-brackets-verbatim":{"begin":"(~[BS])([{])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([}])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.curly-brackets.sigil.erlang"},"sigil-string-double-quote":{"begin":"(~[bs]?)(\\")","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.double.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-double-quote-verbatim":{"begin":"(~[BS])(\\")","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.double.sigil.erlang"},"sigil-string-less-greater":{"begin":"(~[bs]?)(<)","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.less-greater.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-less-greater-verbatim":{"begin":"(~[BS])(<)","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.less-greater.sigil.erlang"},"sigil-string-parenthesis":{"begin":"(~[bs]?)([(])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([)])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.parenthesis.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-parenthesis-verbatim":{"begin":"(~[BS])([(])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([)])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.parenthesis.sigil.erlang"},"sigil-string-single-character":{"begin":"(~[bs]?)([/\\\\|\`#])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.other.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-single-character-verbatim":{"begin":"(~[BS])([/\\\\|\`#])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.other.sigil.erlang"},"sigil-string-single-quote":{"begin":"(~[bs]?)(')","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.single.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-single-quote-verbatim":{"begin":"(~[BS])(')","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.single.sigil.erlang"},"sigil-string-square-brackets":{"begin":"(~[bs]?)([\\\\[])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([\\\\]])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.square-brackets.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-square-brackets-verbatim":{"begin":"(~[BS])([\\\\[])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"([\\\\]])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.square-brackets.sigil.erlang"},"string":{"begin":"(\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.double.erlang","patterns":[{"include":"#internal-string-body"}]},"symbolic-operator":{"match":"\\\\+\\\\+|\\\\+|--|-|\\\\*|/=|/|=/=|=:=|==|=<|=|<-|<|>=|>|!|::|\\\\?=","name":"keyword.operator.symbolic.erlang"},"textual-operator":{"match":"\\\\b(andalso|band|and|bxor|xor|bor|orelse|or|bnot|not|bsl|bsr|div|rem)\\\\b","name":"keyword.operator.textual.erlang"},"tuple":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.tuple.begin.erlang"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.tuple.end.erlang"}},"name":"meta.structure.tuple.erlang","patterns":[{"match":",","name":"punctuation.separator.tuple.erlang"},{"include":"#everything-else"}]},"variable":{"captures":{"1":{"name":"variable.other.erlang"},"2":{"name":"variable.language.omitted.erlang"}},"match":"(_[a-zA-Z\\\\d@_]++|[A-Z][a-zA-Z\\\\d@_]*+)|(_)"}},"scopeName":"source.erlang","aliases":["erl"]}`)),Sne=[Fne]});var kL={};x(kL,{default:()=>Nne});var One,Nne,CL=_(()=>{One=Object.freeze(JSON.parse('{"displayName":"Fennel","name":"fennel","patterns":[{"include":"#expression"}],"repository":{"comment":{"patterns":[{"begin":";","end":"$","name":"comment.line.semicolon.fennel"}]},"constants":{"patterns":[{"match":"nil","name":"constant.language.nil.fennel"},{"match":"false|true","name":"constant.language.boolean.fennel"},{"match":"(-?\\\\d+\\\\.\\\\d+([eE][+-]?\\\\d+)?)","name":"constant.numeric.double.fennel"},{"match":"(-?\\\\d+)","name":"constant.numeric.integer.fennel"}]},"expression":{"patterns":[{"include":"#comment"},{"include":"#constants"},{"include":"#sexp"},{"include":"#table"},{"include":"#vector"},{"include":"#keywords"},{"include":"#special"},{"include":"#lua"},{"include":"#strings"},{"include":"#methods"},{"include":"#symbols"}]},"keywords":{"match":":[^ ]+","name":"constant.keyword.fennel"},"lua":{"patterns":[{"match":"\\\\b(assert|collectgarbage|dofile|error|getmetatable|ipairs|load|loadfile|next|pairs|pcall|print|rawequal|rawget|rawlen|rawset|require|select|setmetatable|tonumber|tostring|type|xpcall)\\\\b","name":"support.function.fennel"},{"match":"\\\\b(coroutine|coroutine.create|coroutine.isyieldable|coroutine.resume|coroutine.running|coroutine.status|coroutine.wrap|coroutine.yield|debug|debug.debug|debug.gethook|debug.getinfo|debug.getlocal|debug.getmetatable|debug.getregistry|debug.getupvalue|debug.getuservalue|debug.sethook|debug.setlocal|debug.setmetatable|debug.setupvalue|debug.setuservalue|debug.traceback|debug.upvalueid|debug.upvaluejoin|io|io.close|io.flush|io.input|io.lines|io.open|io.output|io.popen|io.read|io.stderr|io.stdin|io.stdout|io.tmpfile|io.type|io.write|math|math.abs|math.acos|math.asin|math.atan|math.ceil|math.cos|math.deg|math.exp|math.floor|math.fmod|math.huge|math.log|math.max|math.maxinteger|math.min|math.mininteger|math.modf|math.pi|math.rad|math.random|math.randomseed|math.sin|math.sqrt|math.tan|math.tointeger|math.type|math.ult|os|os.clock|os.date|os.difftime|os.execute|os.exit|os.getenv|os.remove|os.rename|os.setlocale|os.time|os.tmpname|package|package.config|package.cpath|package.loaded|package.loadlib|package.path|package.preload|package.searchers|package.searchpath|string|string.byte|string.char|string.dump|string.find|string.format|string.gmatch|string.gsub|string.len|string.lower|string.match|string.pack|string.packsize|string.rep|string.reverse|string.sub|string.unpack|string.upper|table|table.concat|table.insert|table.move|table.pack|table.remove|table.sort|table.unpack|utf8|utf8.char|utf8.charpattern|utf8.codepoint|utf8.codes|utf8.len|utf8.offset)\\\\b","name":"support.function.library.fennel"},{"match":"\\\\b(_G|_VERSION)\\\\b","name":"constant.language.fennel"}]},"methods":{"patterns":[{"match":"\\\\w+\\\\:\\\\w+","name":"entity.name.function.method.fennel"}]},"sexp":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.paren.open.fennel"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.paren.close.fennel"}},"name":"sexp.fennel","patterns":[{"include":"#expression"}]},"special":{"patterns":[{"match":"\\\\#|\\\\%|\\\\+|\\\\*|[?][.]|(\\\\.)?\\\\.|(\\\\/)?\\\\/|:|<=?|=|>=?|\\\\^","name":"keyword.special.fennel"},{"match":"(\\\\-\\\\>(\\\\>)?)","name":"keyword.special.fennel"},{"match":"\\\\-\\\\?\\\\>(\\\\>)?","name":"keyword.special.fennel"},{"match":"-","name":"keyword.special.fennel"},{"match":"not=","name":"keyword.special.fennel"},{"match":"set-forcibly!","name":"keyword.special.fennel"},{"match":"\\\\b(and|band|bnot|bor|bxor|collect|comment|do|doc|doto|each|eval-compiler|for|global|hashfn|icollect|if|import-macros|include|lambda|length|let|local|lshift|lua|macro|macrodebug|macros|match|not=?|or|partial|pick-args|pick-values|quote|require-macros|rshift|set|tset|values|var|when|while|with-open)\\\\b","name":"keyword.special.fennel"},{"match":"\\\\b(fn)\\\\b","name":"keyword.control.fennel"},{"match":"~=","name":"keyword.special.fennel"},{"match":"\u03BB","name":"keyword.special.fennel"}]},"strings":{"begin":"\\"","end":"\\"","name":"string.quoted.double.fennel","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.fennel"}]},"symbols":{"patterns":[{"match":"\\\\w+(?:\\\\.\\\\w+)+","name":"entity.name.function.symbol.fennel"},{"match":"\\\\w+","name":"variable.other.fennel"}]},"table":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.table.bracket.open.fennel"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.table.bracket.close.fennel"}},"name":"table.fennel","patterns":[{"include":"#expression"}]},"vector":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.vector.bracket.open.fennel"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.vector.bracket.close.fennel"}},"name":"meta.vector.fennel","patterns":[{"include":"#expression"}]}},"scopeName":"source.fnl"}')),Nne=[One]});var _L={};x(_L,{default:()=>$ne});var Lne,$ne,BL=_(()=>{Lne=Object.freeze(JSON.parse(`{"displayName":"Fish","fileTypes":["fish"],"firstLineMatch":"^#!.*\\\\bfish\\\\b","foldingStartMarker":"^\\\\s*(function|while|if|switch|for|begin)\\\\s.*$","foldingStopMarker":"^\\\\s*end\\\\s*$","name":"fish","patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.fish"}},"comment":"Double quoted string","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.fish"}},"name":"string.quoted.double.fish","patterns":[{"include":"#variable"},{"comment":"https://fishshell.com/docs/current/#quotes","match":"\\\\\\\\(\\\\\\"|\\\\$|$|\\\\\\\\)","name":"constant.character.escape.fish"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.fish"}},"comment":"Single quoted string","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.fish"}},"name":"string.quoted.single.fish","patterns":[{"comment":"https://fishshell.com/docs/current/#quotes","match":"\\\\\\\\('|\`|\\\\\\\\)","name":"constant.character.escape.fish"}]},{"captures":{"1":{"name":"punctuation.definition.comment.fish"}},"comment":"line comment","match":"(?|\\\\^|>>|\\\\^\\\\^)(&[012\\\\-])?|[012](<|>|>>)(&[012\\\\-])?)","name":"keyword.operator.redirect.fish"},{"match":"&","name":"keyword.operator.background.fish"},{"match":"\\\\*\\\\*|\\\\*|\\\\?","name":"keyword.operator.glob.fish"},{"captures":{"1":{"name":"source.option.fish"}},"comment":"command short/long options","match":"\\\\s(-{1,2}[a-zA-Z_\\\\-0-9]+|-\\\\w)\\\\b"},{"include":"#variable"},{"include":"#escape"}],"repository":{"escape":{"patterns":[{"comment":"single character character escape sequences","match":"\\\\\\\\[abefnrtv $*?~#(){}\\\\[\\\\]<>^&|;\\"']","name":"constant.character.escape.single.fish"},{"comment":"escapes the ascii character with the specified value (hexadecimal)","match":"\\\\\\\\x[0-9a-fA-F]{1,2}","name":"constant.character.escape.hex-ascii.fish"},{"comment":"escapes a byte of data with the specified value (hexadecimal). If you are using mutibyte encoding, this can be used to enter invalid strings. Only use this if you know what are doing.","match":"\\\\\\\\X[0-9a-fA-F]{1,2}","name":"constant.character.escape.hex-byte.fish"},{"comment":"escapes the ascii character with the specified value (octal)","match":"\\\\\\\\[0-7]{1,3}","name":"constant.character.escape.octal.fish"},{"comment":"escapes the 16-bit unicode character with the specified value (hexadecimal)","match":"\\\\\\\\u[0-9a-fA-F]{1,4}","name":"constant.character.escape.unicode-16-bit.fish"},{"comment":"escapes the 32-bit unicode character with the specified value (hexadecimal)","match":"\\\\\\\\U[0-9a-fA-F]{1,8}","name":"constant.character.escape.unicode-32-bit.fish"},{"comment":"escapes the control sequence generated by pressing the control key and the specified letter","match":"\\\\\\\\c[a-zA-Z]","name":"constant.character.escape.control.fish"}]},"variable":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.fish"}},"comment":"Built-in variables visible by pressing $ TAB TAB in a new shell","match":"(\\\\$)(argv|CMD_DURATION|COLUMNS|fish_bind_mode|fish_color_autosuggestion|fish_color_cancel|fish_color_command|fish_color_comment|fish_color_cwd|fish_color_cwd_root|fish_color_end|fish_color_error|fish_color_escape|fish_color_hg_added|fish_color_hg_clean|fish_color_hg_copied|fish_color_hg_deleted|fish_color_hg_dirty|fish_color_hg_modified|fish_color_hg_renamed|fish_color_hg_unmerged|fish_color_hg_untracked|fish_color_history_current|fish_color_host|fish_color_host_remote|fish_color_match|fish_color_normal|fish_color_operator|fish_color_param|fish_color_quote|fish_color_redirection|fish_color_search_match|fish_color_selection|fish_color_status|fish_color_user|fish_color_valid_path|fish_complete_path|fish_function_path|fish_greeting|fish_key_bindings|fish_pager_color_completion|fish_pager_color_description|fish_pager_color_prefix|fish_pager_color_progress|fish_pid|fish_prompt_hg_status_added|fish_prompt_hg_status_copied|fish_prompt_hg_status_deleted|fish_prompt_hg_status_modified|fish_prompt_hg_status_order|fish_prompt_hg_status_unmerged|fish_prompt_hg_status_untracked|FISH_VERSION|history|hostname|IFS|LINES|pipestatus|status|umask|version)\\\\b","name":"variable.language.fish"},{"captures":{"1":{"name":"punctuation.definition.variable.fish"}},"match":"(\\\\$)[a-zA-Z_][a-zA-Z0-9_]*","name":"variable.other.normal.fish"}]}},"scopeName":"source.fish"}`)),$ne=[Lne]});var xL={};x(xL,{default:()=>jne});var Rne,jne,vL=_(()=>{Rne=Object.freeze(JSON.parse('{"displayName":"Fluent","name":"fluent","patterns":[{"include":"#comment"},{"include":"#message"},{"include":"#wrong-line"}],"repository":{"attributes":{"begin":"\\\\s*(\\\\.[a-zA-Z][a-zA-Z0-9_-]*\\\\s*=\\\\s*)","beginCaptures":{"1":{"name":"support.class.attribute-begin.fluent"}},"end":"^(?=\\\\s*[^\\\\.])","patterns":[{"include":"#placeable"}]},"comment":{"match":"^##?#?\\\\s.*$","name":"comment.fluent"},"function-comma":{"match":",","name":"support.function.function-comma.fluent"},"function-named-argument":{"begin":"([a-zA-Z0-9]+:)\\\\s*([\\"a-zA-Z0-9]+)","beginCaptures":{"1":{"name":"support.function.named-argument.name.fluent"},"2":{"name":"variable.other.named-argument.value.fluent"}},"end":"(?=\\\\)|,|\\\\s)","name":"variable.other.named-argument.fluent"},"function-positional-argument":{"match":"\\\\$[a-zA-Z0-9_-]+","name":"variable.other.function.positional-argument.fluent"},"invalid-placeable-string-missing-end-quote":{"match":"\\"[^\\"]+$","name":"invalid.illegal.wrong-placeable-missing-end-quote.fluent"},"invalid-placeable-wrong-placeable-missing-end":{"match":"([^}A-Z]*$|[^-][^>]$)\\\\b","name":"invalid.illegal.wrong-placeable-missing-end.fluent"},"message":{"begin":"^(-?[a-zA-Z][a-zA-Z0-9_-]*\\\\s*=\\\\s*)","beginCaptures":{"1":{"name":"support.class.message-identifier.fluent"}},"contentName":"string.fluent","end":"^(?=\\\\S)","patterns":[{"include":"#attributes"},{"include":"#placeable"}]},"placeable":{"begin":"({)","beginCaptures":{"1":{"name":"keyword.placeable.begin.fluent"}},"contentName":"variable.other.placeable.content.fluent","end":"(})","endCaptures":{"1":{"name":"keyword.placeable.end.fluent"}},"patterns":[{"include":"#placeable-string"},{"include":"#placeable-function"},{"include":"#placeable-reference-or-number"},{"include":"#selector"},{"include":"#invalid-placeable-wrong-placeable-missing-end"},{"include":"#invalid-placeable-string-missing-end-quote"},{"include":"#invalid-placeable-wrong-function-name"}]},"placeable-function":{"begin":"([A-Z][A-Z0-9_-]*\\\\()","beginCaptures":{"1":{"name":"support.function.placeable-function.call.begin.fluent"}},"contentName":"string.placeable-function.fluent","end":"(\\\\))","endCaptures":{"1":{"name":"support.function.placeable-function.call.end.fluent"}},"patterns":[{"include":"#function-comma"},{"include":"#function-positional-argument"},{"include":"#function-named-argument"}]},"placeable-reference-or-number":{"match":"((-|\\\\$)[a-zA-Z0-9_-]+|[a-zA-Z][a-zA-Z0-9_-]*|[0-9]+)","name":"variable.other.placeable.reference-or-number.fluent"},"placeable-string":{"begin":"(\\")(?=[^\\\\n]*\\")","beginCaptures":{"1":{"name":"variable.other.placeable-string-begin.fluent"}},"contentName":"string.placeable-string-content.fluent","end":"(\\")","endCaptures":{"1":{"name":"variable.other.placeable-string-end.fluent"}}},"selector":{"begin":"(->)","beginCaptures":{"1":{"name":"support.function.selector.begin.fluent"}},"contentName":"string.selector.content.fluent","end":"^(?=\\\\s*})","patterns":[{"include":"#selector-item"}]},"selector-item":{"begin":"(\\\\s*\\\\*?\\\\[)([a-zA-Z0-9_-]+)(\\\\]\\\\s*)","beginCaptures":{"1":{"name":"support.function.selector-item.begin.fluent"},"2":{"name":"variable.other.selector-item.begin.fluent"},"3":{"name":"support.function.selector-item.begin.fluent"}},"contentName":"string.selector-item.content.fluent","end":"^(?=(\\\\s*})|(\\\\s*\\\\[)|(\\\\s*\\\\*))","patterns":[{"include":"#placeable"}]},"wrong-line":{"match":".*","name":"invalid.illegal.wrong-line.fluent"}},"scopeName":"source.ftl","aliases":["ftl"]}')),jne=[Rne]});var EL={};x(EL,{default:()=>PB});var Pne,PB,MB=_(()=>{Pne=Object.freeze(JSON.parse(`{"displayName":"Fortran (Free Form)","fileTypes":["f90","F90","f95","F95","f03","F03","f08","F08","f18","F18","fpp","FPP",".pf",".PF"],"firstLineMatch":"(?i)-[*]- mode: fortran free -[*]-","injections":{"source.fortran.free - ( string | comment | meta.preprocessor )":{"patterns":[{"include":"#line-continuation-operator"},{"include":"#preprocessor"}]},"string.quoted.double.fortran":{"patterns":[{"include":"#string-line-continuation-operator"}]},"string.quoted.single.fortran":{"patterns":[{"include":"#string-line-continuation-operator"}]}},"name":"fortran-free-form","patterns":[{"include":"#preprocessor"},{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#include-statement"},{"include":"#import-statement"},{"include":"#block-data-definition"},{"include":"#function-definition"},{"include":"#module-definition"},{"include":"#program-definition"},{"include":"#submodule-definition"},{"include":"#subroutine-definition"},{"include":"#procedure-definition"},{"include":"#derived-type-definition"},{"include":"#enum-block-construct"},{"include":"#interface-block-constructs"},{"include":"#procedure-specification-statement"},{"include":"#type-specification-statements"},{"include":"#specification-statements"},{"include":"#control-constructs"},{"include":"#control-statements"},{"include":"#execution-statements"},{"include":"#intrinsic-functions"},{"include":"#variable"}],"repository":{"IO-item-list":{"begin":"(?i)(?=\\\\s*[a-z0-9\\"'])","comment":"Name list.","contentName":"meta.name-list.fortran","end":"(?=[\\\\);!\\\\n])","patterns":[{"include":"#constants"},{"include":"#operators"},{"include":"#intrinsic-functions"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#brackets"},{"include":"#assignment-keyword"},{"include":"#operator-keyword"},{"include":"#variable"}]},"IO-keywords":{"begin":"(?i)\\\\G\\\\s*\\\\b(?:(read)|(write))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.generic-spec.read.fortran"},"2":{"name":"keyword.control.generic-spec.write.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"}},"comment":"IO generic specification.","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"captures":{"1":{"name":"keyword.control.generic-spec.formatted.fortran"},"2":{"name":"keyword.control.generic-spec.unformatted.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(?:(formatted)|(unformatted))\\\\b"},{"include":"#invalid-word"}]},"IO-statements":{"patterns":[{"begin":"(?ix)\\\\b(?:(backspace)|(close)|(endfile)|(format)|(inquire)|(open)|(read)|(rewind)|(write))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.backspace.fortran"},"2":{"name":"keyword.control.close.fortran"},"3":{"name":"keyword.control.endfile.fortran"},"4":{"name":"keyword.control.format.fortran"},"5":{"name":"keyword.control.inquire.fortran"},"6":{"name":"keyword.control.open.fortran"},"7":{"name":"keyword.control.read.fortran"},"8":{"name":"keyword.control.rewind.fortran"},"9":{"name":"keyword.control.write.fortran"},"10":{"name":"punctuation.parentheses.left.fortran"}},"comment":"Introduced in the Fortran 1977 standard.","end":"(?=[;!\\\\n])","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.IO.fortran","patterns":[{"include":"#parentheses-dummy-variables"},{"include":"#IO-item-list"}]},{"captures":{"1":{"name":"keyword.control.backspace.fortran"},"2":{"name":"keyword.control.endfile.fortran"},"3":{"name":"keyword.control.format.fortran"},"4":{"name":"keyword.control.print.fortran"},"5":{"name":"keyword.control.read.fortran"},"6":{"name":"keyword.control.rewind.fortran"}},"comment":"Introduced in the Fortran 1977 standard.","match":"(?i)\\\\b(?:(backspace)|(endfile)|(format)|(print)|(read)|(rewind))\\\\b"},{"begin":"(?i)\\\\b(?:(flush)|(wait))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.flush.fortran"},"2":{"name":"keyword.control.wait.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"}},"comment":"Introduced in the Fortran 2003 standard.","end":"(?)(\\\\=)(?!\\\\=|\\\\>)","name":"keyword.operator.assignment.fortran"},"associate-construct":{"begin":"(?i)\\\\b(associate)\\\\b(?=\\\\s*\\\\()","beginCaptures":{"1":{"name":"keyword.control.associate.fortran"}},"comment":"Introduced in the Fortran 2003 standard.","contentName":"meta.block.associate.fortran","end":"(?i)\\\\b(end\\\\s*associate)\\\\b","endCaptures":{"1":{"name":"keyword.control.endassociate.fortran"}},"patterns":[{"include":"$base"}]},"asynchronous-attribute":{"captures":{"1":{"name":"storage.modifier.asynchronous.fortran"}},"comment":"Introduced in the Fortran 2003 standard.","match":"(?i)\\\\G\\\\s*\\\\b(asynchronous)\\\\b"},"attribute-specification-statement":{"begin":"(?ix)(?=\\\\b(?:allocatable|asynchronous|contiguous |external|intrinsic|optional|parameter|pointer|private|protected|public|save|target|value|volatile)\\\\b |(bind|dimension|intent)\\\\s*\\\\( |(codimension)\\\\s*\\\\[)","end":"(?=[;!\\\\n])","name":"meta.statement.attribute-specification.fortran","patterns":[{"include":"#access-attribute"},{"include":"#allocatable-attribute"},{"include":"#asynchronous-attribute"},{"include":"#codimension-attribute"},{"include":"#contiguous-attribute"},{"include":"#dimension-attribute"},{"include":"#external-attribute"},{"include":"#intent-attribute"},{"include":"#intrinsic-attribute"},{"include":"#language-binding-attribute"},{"include":"#optional-attribute"},{"include":"#parameter-attribute"},{"include":"#pointer-attribute"},{"include":"#protected-attribute"},{"include":"#save-attribute"},{"include":"#target-attribute"},{"include":"#value-attribute"},{"include":"#volatile-attribute"},{"begin":"(?=\\\\s*::)","comment":"Attribute list.","contentName":"meta.attribute-list.normal.fortran","end":"(::)|(?=[;!\\\\n])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"include":"#invalid-word"}]},{"include":"#name-list"}]},"block-construct":{"begin":"(?i)\\\\b(block)\\\\b(?!\\\\s*\\\\bdata\\\\b)","beginCaptures":{"1":{"name":"keyword.control.associate.fortran"}},"comment":"Introduced in the Fortran 2008 standard.","contentName":"meta.block.block.fortran","end":"(?i)\\\\b(end\\\\s*block)\\\\b","endCaptures":{"1":{"name":"keyword.control.endassociate.fortran"}},"patterns":[{"include":"$base"}]},"block-data-definition":{"begin":"(?i)\\\\b(block\\\\s*data)\\\\b(?:\\\\s+([a-z]\\\\w*)\\\\b)?","beginCaptures":{"1":{"name":"keyword.control.block-data.fortran"},"2":{"name":"entity.name.block-data.fortran"}},"end":"(?ix)\\\\b(?:(end\\\\s*block\\\\s*data)(?:\\\\s+(\\\\2))?|(end))\\\\b (?:\\\\s*(\\\\S((?!\\\\n).)*))?","endCaptures":{"1":{"name":"keyword.control.end-block-data.fortran"},"2":{"name":"entity.name.block-data.fortran"},"3":{"name":"keyword.control.end-block-data.fortran"},"4":{"name":"invalid.error.block-data-definition.fortran"}},"name":"meta.block-data.fortran","patterns":[{"include":"$base"}]},"brackets":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"punctuation.bracket.left.fortran"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.bracket.left.fortran"}},"patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#intrinsic-functions"},{"include":"#variable"}]},"call-statement":{"patterns":[{"begin":"(?i)\\\\s*\\\\b(call)\\\\b","beginCaptures":{"1":{"name":"keyword.control.call.fortran"}},"comment":"Introduced in the Fortran 1977 standard.","end":"(?=[;!\\\\n])","name":"meta.statement.control.call.fortran","patterns":[{"begin":"(?ix)\\\\G\\\\s*([a-z]\\\\w*)(%)([a-z]\\\\w*)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"variable.other.fortran"},"2":{"name":"keyword.accessor.fortran"},"3":{"name":"entity.name.function.subroutine.fortran"}},"comment":"type-bound subroutines","end":"(?\\\\=|\\\\>|\\\\<|\\\\<\\\\=|\\\\-|\\\\+|\\\\/|\\\\/\\\\/|\\\\*\\\\*|\\\\*) |(\\\\S.*) )\\\\s*(\\\\))","beginCaptures":{"1":{"name":"keyword.other.operator.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"},"3":{"name":"keyword.operator.fortran"},"4":{"name":"invalid.error.generic-interface-block-op.fortran"},"5":{"name":"punctuation.parentheses.right.fortran"}},"comment":"Operator generic interface.","end":"(?ix)\\\\b(end\\\\s*interface)\\\\b (?:\\\\s*\\\\b(\\\\1)\\\\b\\\\s*(\\\\()\\\\s*(?:(\\\\3)|(\\\\S.*))\\\\s*(\\\\)))?","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran"},"2":{"name":"keyword.other.operator.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"},"4":{"name":"keyword.operator.fortran"},"5":{"name":"invalid.error.generic-interface-block-op-end.fortran"},"6":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#interface-procedure-statement"},{"include":"$base"}]},{"begin":"(?ix)\\\\G\\\\s*\\\\b(?:(read)|(write))\\\\s* (\\\\()\\\\s*(?:(formatted)|(unformatted)|(\\\\S.*))\\\\s*(\\\\))","beginCaptures":{"1":{"name":"keyword.other.read.fortran"},"2":{"name":"keyword.other.write.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"},"4":{"name":"keyword.other.formatted.fortran"},"5":{"name":"keyword.other.unformatted.fortran"},"6":{"name":"invalid.error.generic-interface-block.fortran"},"7":{"name":"punctuation.parentheses.right.fortran"}},"comment":"Read/Write generic interface.","end":"(?ix)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(?:(\\\\2)|(\\\\3))\\\\b\\\\s* (\\\\()\\\\s*(?:(\\\\4)|(\\\\5)|(\\\\S.*))\\\\s*(\\\\)))?","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran"},"2":{"name":"keyword.other.read.fortran"},"3":{"name":"keyword.other.write.fortran"},"4":{"name":"punctuation.parentheses.left.fortran"},"5":{"name":"keyword.other.formatted.fortran"},"6":{"name":"keyword.other.unformatted.fortran"},"7":{"name":"invalid.error.generic-interface-block-end.fortran"},"8":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#interface-procedure-statement"},{"include":"$base"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.fortran"}},"comment":"Generic interface.","end":"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(\\\\1)\\\\b)?","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran"},"2":{"name":"entity.name.function.fortran"}},"patterns":[{"include":"#interface-procedure-statement"},{"include":"$base"}]}]},"goto-statement":{"begin":"(?i)\\\\s*\\\\b(go\\\\s*to)\\\\b","beginCaptures":{"1":{"name":"keyword.control.goto.fortran"}},"comment":"Introduced in the Fortran 1977 standard.","end":"(?=[;!\\\\n])","name":"meta.statement.control.goto.fortran","patterns":[{"include":"$base"}]},"if-construct":{"patterns":[{"begin":"(?i)\\\\b(if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.if.fortran"}},"end":"(?=[;!\\\\n])","patterns":[{"include":"#logical-control-expression"},{"begin":"(?i)\\\\s*\\\\b(then)\\\\b","beginCaptures":{"1":{"name":"keyword.control.then.fortran"}},"contentName":"meta.block.if.fortran","end":"(?i)\\\\b(end\\\\s*if)\\\\b","endCaptures":{"1":{"name":"keyword.control.endif.fortran"}},"patterns":[{"begin":"(?i)\\\\b(else\\\\s*if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.elseif.fortran"}},"comment":"else if statement","end":"(?=[;!\\\\n])","patterns":[{"include":"#parentheses"},{"captures":{"1":{"name":"keyword.control.then.fortran"},"2":{"name":"meta.label.elseif.fortran"}},"comment":"capture the label if present","match":"(?i)\\\\b(then)\\\\b(\\\\s*[a-z]\\\\w*)?"},{"include":"#invalid-word"}]},{"begin":"(?i)\\\\b(else)\\\\b","beginCaptures":{"1":{"name":"keyword.control.else.fortran"}},"comment":"else block","end":"(?i)(?=\\\\b(end\\\\s*if)\\\\b)","patterns":[{"begin":"(?!(\\\\s*(;|!|\\\\n)))","comment":"rest of else line","end":"(?=[;!\\\\n])","patterns":[{"captures":{"1":{"name":"meta.label.else.fortran"},"2":{"name":"invalid.error.label.else.fortran"}},"comment":"capture the label if present","match":"\\\\s*([a-z]\\\\w*)?\\\\s*\\\\b(\\\\w*)\\\\b"},{"include":"#invalid-word"}]},{"begin":"(?i)(?!\\\\b(end\\\\s*if)\\\\b)","end":"(?i)(?=\\\\b(end\\\\s*if)\\\\b)","patterns":[{"include":"$base"}]}]},{"include":"$base"}]},{"begin":"(?i)(?=\\\\s*[a-z])","end":"(?=[;!\\\\n])","name":"meta.statement.control.if.fortran","patterns":[{"include":"$base"}]}]}]},"image-control-statement":{"patterns":[{"include":"#sync-all-statement"},{"include":"#sync-statement"},{"include":"#event-statement"},{"include":"#form-team-statement"},{"include":"#fail-image-statement"}]},"implicit-statement":{"begin":"(?i)\\\\b(implicit)\\\\b","beginCaptures":{"1":{"name":"keyword.other.implicit.fortran"}},"end":"(?=[;!\\\\n])","name":"meta.statement.implicit.fortran","patterns":[{"captures":{"1":{"name":"keyword.other.none.fortran"}},"match":"(?i)\\\\s*\\\\b(none)\\\\b"},{"include":"$base"}]},"import-statement":{"begin":"(?i)\\\\b(import)\\\\b","beginCaptures":{"1":{"name":"keyword.control.include.fortran"}},"comment":"Introduced in the Fortran 1990 standard.","end":"(?=[;!\\\\n])","name":"meta.statement.include.fortran","patterns":[{"begin":"(?i)\\\\G\\\\s*(?:(::)|(?=[a-z]))","beginCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"end":"(?=[;!\\\\n])","patterns":[{"include":"#name-list"}]},{"begin":"\\\\G\\\\s*(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=[;!\\\\n])","patterns":[{"captures":{"1":{"name":"keyword.other.all.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(all)\\\\b"},{"captures":{"1":{"name":"keyword.other.none.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(none)\\\\b"},{"begin":"(?i)\\\\G\\\\s*\\\\b(only)\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.other.only.fortran"},"2":{"name":"keyword.other.colon.fortran"}},"end":"(?=[;!\\\\n])","patterns":[{"include":"#name-list"}]},{"include":"#invalid-word"}]}]},"include-statement":{"begin":"(?i)\\\\b(include)\\\\b","beginCaptures":{"1":{"name":"keyword.control.include.fortran"}},"comment":"Introduced in the Fortran 1990 standard.","end":"(?=[;!\\\\n])","name":"meta.statement.include.fortran","patterns":[{"include":"#string-constant"},{"include":"#invalid-character"}]},"intent-attribute":{"begin":"(?i)\\\\s*\\\\b(intent)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.modifier.intent.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"comment":"Introduced in the Fortran 1990 standard.","end":"(\\\\))|(?=[;!\\\\n])","endCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"patterns":[{"captures":{"1":{"name":"storage.modifier.intent.in-out.fortran"},"2":{"name":"storage.modifier.intent.in.fortran"},"3":{"name":"storage.modifier.intent.out.fortran"}},"match":"(?i)\\\\b(?:(in\\\\s*out)|(in)|(out))\\\\b"},{"include":"#invalid-word"}]},"interface-block-constructs":{"patterns":[{"include":"#abstract-interface-block-construct"},{"include":"#explicit-interface-block-construct"},{"include":"#generic-interface-block-construct"}]},"interface-procedure-statement":{"begin":"(?i)(?=[^'\\";!\\\\n]*\\\\bprocedure\\\\b)","comment":"Introduced in the Fortran 1990 standard.","end":"(?=[;!\\\\n])","name":"meta.statement.procedure.fortran","patterns":[{"begin":"(?i)(?=\\\\G\\\\s*(?!\\\\bprocedure\\\\b))","comment":"Attribute list.","end":"(?i)(?=\\\\bprocedure\\\\b)","name":"meta.attribute-list.interface.fortran","patterns":[{"include":"#module-attribute"},{"include":"#invalid-word"}]},{"begin":"(?i)\\\\s*\\\\b(procedure)\\\\b","beginCaptures":{"1":{"name":"keyword.other.procedure.fortran"}},"comment":"Procedure statement.","end":"(?=[;!\\\\n])","patterns":[{"captures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"match":"\\\\G\\\\s*(::)"},{"include":"#procedure-name-list"}]}]},"intrinsic-attribute":{"captures":{"1":{"name":"storage.modifier.intrinsic.fortran"}},"comment":"Introduced in the Fortran 1977 standard.","match":"(?i)\\\\s*\\\\b(intrinsic)\\\\b"},"intrinsic-functions":{"patterns":[{"begin":"(?ix)\\\\b(acosh|asinh|atanh|bge|bgt|ble|blt|dshiftl|dshiftr| findloc|hypot|iall|iany|image_index|iparity|is_contiguous|lcobound| leadz|mask[lr]|merge_bits|norm2|num_images|parity|popcnt|poppar| shift[alr]|storage_size|this_image|trailz|ucobound)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"comment":"Intrinsic functions introduced in the Fortran 2008 standard.","end":"(?\\\\=|(?|\\\\<\\\\=|\\\\<)","name":"keyword.logical.fortran.modern"}]},"logical-type":{"comment":"Introduced in the Fortran 1977 standard.","patterns":[{"begin":"(?i)\\\\b(logical)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.type.logical.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"contentName":"meta.type-spec.fortran","end":"(?)","name":"keyword.other.point.fortran"},"preprocessor":{"begin":"^\\\\s*(#:?)","beginCaptures":{"1":{"name":"keyword.control.preprocessor.indicator.fortran"}},"end":"\\\\n","name":"meta.preprocessor","patterns":[{"include":"#preprocessor-if-construct"},{"include":"#preprocessor-statements"}]},"preprocessor-arithmetic-operators":{"captures":{"1":{"name":"keyword.operator.subtraction.fortran"},"2":{"name":"keyword.operator.addition.fortran"},"3":{"name":"keyword.operator.division.fortran"},"4":{"name":"keyword.operator.multiplication.fortran"}},"comment":"division regex is different than in main fortran","match":"(\\\\-)|(\\\\+)|(\\\\/)|(\\\\*)"},"preprocessor-assignment-operator":{"comment":"assignments with = are not allowed","match":"(?","endCaptures":{"0":{"name":"punctuation.definition.string.end.preprocessor.fortran"}},"name":"string.quoted.other.lt-gt.include.preprocessor.fortran"},{"include":"#line-continuation-operator"}]},"preprocessor-line-continuation-operator":{"begin":"\\\\s*(\\\\\\\\)","beginCaptures":{"1":{"name":"constant.character.escape.line-continuation.preprocessor.fortran"}},"end":"(?i)^"},"preprocessor-logical-operators":{"captures":{"1":{"name":"keyword.operator.logical.preprocessor.and.fortran"},"2":{"name":"keyword.operator.logical.preprocessor.equals.fortran"},"3":{"name":"keyword.operator.logical.preprocessor.not_equals.fortran"},"4":{"name":"keyword.operator.logical.preprocessor.or.fortran"},"5":{"name":"keyword.operator.logical.preprocessor.less_eq.fortran"},"6":{"name":"keyword.operator.logical.preprocessor.more_eq.fortran"},"7":{"name":"keyword.operator.logical.preprocessor.less.fortran"},"8":{"name":"keyword.operator.logical.preprocessor.more.fortran"},"9":{"name":"keyword.operator.logical.preprocessor.complementary.fortran"},"10":{"name":"keyword.operator.logical.preprocessor.xor.fortran"},"11":{"name":"keyword.operator.logical.preprocessor.bitand.fortran"},"12":{"name":"keyword.operator.logical.preprocessor.not.fortran"},"13":{"name":"keyword.operator.logical.preprocessor.bitor.fortran"}},"comment":"and:&&, bitand:&, or:||, bitor:|, not eq:!=, not:!, xor:^, compl:~","match":"(&&)|(==)|(\\\\!=)|(\\\\|\\\\|)|(\\\\<\\\\=)|(\\\\>=)|(\\\\<)|(\\\\>)|(~)|(\\\\^)|(&)|(\\\\!)|(\\\\|)","name":"keyword.operator.logical.preprocessor.fortran"},"preprocessor-operators":{"patterns":[{"include":"#preprocessor-line-continuation-operator"},{"include":"#preprocessor-logical-operators"},{"include":"#preprocessor-arithmetic-operators"}]},"preprocessor-pragma-statement":{"begin":"(?i)\\\\G\\\\s*\\\\b(pragma)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.pragma.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.pragma.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-string-constant"}]},"preprocessor-statements":{"patterns":[{"include":"#preprocessor-define-statement"},{"include":"#preprocessor-error-statement"},{"include":"#preprocessor-include-statement"},{"include":"#preprocessor-preprocessor-pragma-statement"},{"include":"#preprocessor-undefine-statement"}]},"preprocessor-string-constant":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.preprocessor.fortran"}},"comment":"Double quote string","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.preprocessor.fortran"}},"name":"string.quoted.double.include.preprocessor.fortran"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.preprocessor.fortran"}},"comment":"Single quote string","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.preprocessor.fortran"}},"name":"string.quoted.single.include.preprocessor.fortran"}]},"preprocessor-undefine-statement":{"begin":"(?i)\\\\G\\\\s*\\\\b(undef)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.undef.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.undef.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-line-continuation-operator"}]},"private-attribute":{"captures":{"1":{"name":"storage.modifier.private.fortran"}},"comment":"Introduced in the Fortran 1990 standard.","match":"(?i)\\\\s*\\\\b(private)\\\\b"},"procedure-call-dummy-variable":{"match":"(?i)\\\\s*([a-z]\\\\w*)(?=\\\\s*\\\\=)(?!\\\\s*\\\\=\\\\=)","name":"variable.parameter.dummy-variable.fortran.modern"},"procedure-definition":{"begin":"(?i)(?=[^'\\";!\\\\n]*\\\\bmodule\\\\s+procedure\\\\b)","comment":"Procedure program unit. Introduced in the Fortran 2008 standard.","end":"(?=[;!\\\\n])","name":"meta.procedure.fortran","patterns":[{"begin":"(?i)\\\\s*\\\\b(module\\\\s+procedure)\\\\b","beginCaptures":{"1":{"name":"keyword.other.procedure.fortran"}},"end":"(?=[;!\\\\n])","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.procedure.fortran"}},"comment":"Procedure body.","end":"(?ix)\\\\s*\\\\b(?:(end\\\\s*procedure)(?:\\\\s+([a-z_]\\\\w*))?|(end))\\\\b \\\\s*([^;!\\\\n]+)?(?=[;!\\\\n])","endCaptures":{"1":{"name":"keyword.other.endprocedure.fortran"},"2":{"name":"entity.name.function.procedure.fortran"},"3":{"name":"keyword.other.endprocedure.fortran"},"4":{"name":"invalid.error.procedure-definition.fortran"}},"patterns":[{"begin":"\\\\G(?!\\\\s*[;!\\\\n])","comment":"Rest of the first line in procedure construct - should be empty.","end":"(?=[;!\\\\n])","name":"meta.first-line.fortran","patterns":[{"include":"#invalid-character"}]},{"begin":"(?i)(?!\\\\s*(?:contains\\\\b|end\\\\s*[;!\\\\n]|end\\\\s*procedure\\\\b))","comment":"Specification and execution block.","end":"(?i)(?=\\\\s*(?:contains\\\\b|end\\\\s*[;!\\\\n]|end\\\\s*procedure\\\\b))","name":"meta.block.specification.procedure.fortran","patterns":[{"include":"$self"}]},{"begin":"(?i)\\\\s*(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"comment":"Contains block.","end":"(?i)(?=\\\\s*(?:end\\\\s*[;!\\\\n]|end\\\\s*procedure\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$self"}]}]}]}]},"procedure-name":{"captures":{"1":{"name":"entity.name.function.procedure.fortran"}},"comment":"Procedure name.","match":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b"},"procedure-name-list":{"begin":"(?i)(?=\\\\s*[a-z])","comment":"Name list.","contentName":"meta.name-list.fortran","end":"(?=[;!\\\\n])","patterns":[{"begin":"(?!\\\\s*\\\\n)","end":"(,)|(?=[!;\\\\n])","endCaptures":{"1":{"name":"punctuation.comma.fortran"}},"patterns":[{"include":"#procedure-name"},{"include":"#pointer-operators"}]}]},"procedure-specification-statement":{"begin":"(?i)(?=\\\\b(?:procedure)\\\\b)","comment":"Introduced in the Fortran 2003 standard.","end":"(?=[;!\\\\n])","name":"meta.specification.procedure.fortran","patterns":[{"include":"#procedure-type"},{"begin":"(?=\\\\s*(,|::|\\\\())","comment":"Attribute list.","contentName":"meta.attribute-list.procedure.fortran","end":"(::)|(?=[;!\\\\n])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)|^|(?<=&)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[,&;!\\\\n])","patterns":[{"include":"#access-attribute"},{"include":"#intent-attribute"},{"include":"#optional-attribute"},{"include":"#pointer-attribute"},{"include":"#protected-attribute"},{"include":"#save-attribute"},{"include":"#invalid-word"}]}]},{"include":"#procedure-name-list"}]},"procedure-type":{"comment":"Introduced in the Fortran ???? standard.","patterns":[{"begin":"(?i)\\\\b(procedure)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.type.procedure.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"contentName":"meta.type-spec.fortran","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#types"},{"include":"#procedure-name"}]},{"captures":{"1":{"name":"storage.type.procedure.fortran"}},"match":"(?i)\\\\b(procedure)\\\\b"}]},"program-definition":{"begin":"(?i)(?=\\\\b(program)\\\\b)","comment":"Introduced in the Fortran 1977 standard.","end":"(?=[;!\\\\n])","name":"meta.program.fortran","patterns":[{"captures":{"1":{"name":"keyword.control.program.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(program)\\\\b"},{"applyEndPatternLast":1,"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.program.fortran"}},"comment":"Program body.","end":"(?ix)\\\\b(?:(end\\\\s*program)(?:\\\\s+([a-z_]\\\\w*))?|(end))\\\\b\\\\s*([^;!\\\\n]+)?(?=[;!\\\\n])","endCaptures":{"1":{"name":"keyword.control.endprogram.fortran"},"2":{"name":"entity.name.program.fortran"},"3":{"name":"keyword.control.endprogram.fortran"},"4":{"name":"invalid.error.program-definition.fortran"}},"patterns":[{"begin":"\\\\G","comment":"Program specification block.","end":"(?i)(?=\\\\b(?:end\\\\s*[;!\\\\n]|end\\\\s*program\\\\b))","name":"meta.block.specification.program.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"comment":"Program contains block.","end":"(?i)(?=(?:end\\\\s*[;!\\\\n]|end\\\\s*program\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]},"protected-attribute":{"captures":{"1":{"name":"storage.modifier.protected.fortran"}},"comment":"Introduced in the Fortran 2003 standard.","match":"(?i)\\\\s*\\\\b(protected)\\\\b"},"public-attribute":{"captures":{"1":{"name":"storage.modifier.public.fortran"}},"comment":"Introduced in the Fortran 1990 standard.","match":"(?i)\\\\s*\\\\b(public)\\\\b"},"pure-attribute":{"captures":{"1":{"name":"storage.modifier.impure.fortran"},"2":{"name":"storage.modifier.pure.fortran"}},"comment":"Introduced in the Fortran 1995 standard.","match":"(?i)\\\\s*\\\\b(?:(impure)|(pure))\\\\b"},"recursive-attribute":{"captures":{"1":{"name":"storage.modifier.non_recursive.fortran"},"2":{"name":"storage.modifier.recursive.fortran"}},"comment":"Introduced in the Fortran 1977 standard.","match":"(?i)\\\\s*\\\\b(?:(non_recursive)|(recursive))\\\\b"},"result-statement":{"begin":"(?i)\\\\s*\\\\b(result)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.result.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"comment":"Introduced in the Fortran 1990 standard.","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#dummy-variable"}]},"return-statement":{"begin":"(?i)\\\\s*\\\\b(return)\\\\b","beginCaptures":{"1":{"name":"keyword.control.return.fortran"}},"comment":"Introduced in the Fortran 1977 standard.","end":"(?=[;!\\\\n])","name":"meta.statement.control.return.fortran","patterns":[{"include":"#invalid-character"}]},"save-attribute":{"captures":{"1":{"name":"storage.modifier.save.fortran"}},"comment":"Introduced in the Fortran 1977 standard.","match":"(?i)\\\\s*\\\\b(save)\\\\b"},"select-case-construct":{"begin":"(?i)\\\\b(select\\\\s*case)\\\\b","beginCaptures":{"1":{"name":"keyword.control.selectcase.fortran"}},"comment":"Select case construct. Introduced in the Fortran 1990 standard.","end":"(?i)\\\\b(end\\\\s*select)\\\\b","endCaptures":{"1":{"name":"keyword.control.endselect.fortran"}},"name":"meta.block.select.case.fortran","patterns":[{"include":"#parentheses"},{"begin":"(?i)\\\\b(case)\\\\b","beginCaptures":{"1":{"name":"keyword.control.case.fortran"}},"end":"(?i)(?=[;!\\\\n])","patterns":[{"captures":{"1":{"name":"keyword.control.default.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(default)\\\\b"},{"include":"#parentheses"},{"include":"#invalid-word"}]},{"include":"$base"}]},"select-rank-construct":{"begin":"(?i)\\\\b(select\\\\s*rank)\\\\b","beginCaptures":{"1":{"name":"keyword.control.selectrank.fortran"}},"comment":"Select rank construct. Introduced in the Fortran 2008 standard.","end":"(?i)\\\\b(end\\\\s*select)\\\\b","endCaptures":{"1":{"name":"keyword.control.endselect.fortran"}},"name":"meta.block.select.rank.fortran","patterns":[{"include":"#parentheses"},{"begin":"(?i)\\\\b(rank)\\\\b","beginCaptures":{"1":{"name":"keyword.control.rank.fortran"}},"end":"(?i)(?=[;!\\\\n])","patterns":[{"captures":{"1":{"name":"keyword.control.default.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(default)\\\\b"},{"include":"#parentheses"},{"include":"#invalid-word"}]},{"include":"$base"}]},"select-type-construct":{"begin":"(?i)\\\\b(select\\\\s*type)\\\\b","beginCaptures":{"1":{"name":"keyword.control.selecttype.fortran"}},"comment":"Select type construct. Introduced in the Fortran 2003 standard.","end":"(?i)\\\\b(end\\\\s*select)\\\\b","endCaptures":{"1":{"name":"keyword.control.endselect.fortran"}},"name":"meta.block.select.type.fortran","patterns":[{"include":"#parentheses"},{"begin":"(?i)\\\\b(?:(class)|(type))\\\\b","beginCaptures":{"1":{"name":"keyword.control.class.fortran"},"2":{"name":"keyword.control.type.fortran"}},"end":"(?i)(?=[;!\\\\n])","patterns":[{"captures":{"1":{"name":"keyword.control.default.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(default)\\\\b"},{"captures":{"1":{"name":"keyword.control.is.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(is)\\\\b"},{"include":"#parentheses"},{"include":"#invalid-word"}]},{"include":"$base"}]},"sequence-attribute":{"captures":{"1":{"name":"storage.modifier.sequence.fortran"}},"comment":"Introduced in the Fortran 20?? standard.","match":"(?i)\\\\s*\\\\b(sequence)\\\\b"},"specification-statements":{"patterns":[{"include":"#attribute-specification-statement"},{"include":"#common-statement"},{"include":"#data-statement"},{"include":"#equivalence-statement"},{"include":"#implicit-statement"},{"include":"#namelist-statement"},{"include":"#use-statement"}]},"stop-statement":{"begin":"(?i)\\\\s*\\\\b(stop)\\\\b(?:\\\\s*\\\\b([a-z]\\\\w*)\\\\b)?","beginCaptures":{"1":{"name":"keyword.control.stop.fortran"},"2":{"name":"meta.label.stop.stop"}},"comment":"Introduced in the Fortran 1977 standard.","end":"(?=[;!\\\\n])","name":"meta.statement.control.stop.fortran","patterns":[{"include":"#constants"},{"include":"#string-operators"},{"include":"#invalid-character"}]},"string-constant":{"comment":"Introduced in the Fortran 1977 standard.","patterns":[{"applyEndPatternLast":1,"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.fortran"}},"comment":"String","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.fortran"}},"name":"string.quoted.single.fortran","patterns":[{"match":"''","name":"constant.character.escape.apostrophe.fortran"}]},{"applyEndPatternLast":1,"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.fortran"}},"comment":"String","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.fortran"}},"name":"string.quoted.double.fortran","patterns":[{"match":"\\"\\"","name":"constant.character.escape.quote.fortran"}]}]},"string-line-continuation-operator":{"begin":"(&)(?=\\\\s*\\\\n)","beginCaptures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"comment":"Operator that allows a line to be continued on the next line.","end":"(?i)^(?:(?=\\\\s*[^\\\\s!&])|\\\\s*(&))","endCaptures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"patterns":[{"include":"#comments"},{"match":"\\\\S.*","name":"invalid.error.string-line-cont.fortran"}]},"string-operators":{"comment":"Introduced in the Fortran 19?? standard.","match":"(\\\\/\\\\/)","name":"keyword.other.concatination.fortran"},"submodule-definition":{"begin":"(?i)(?=\\\\b(submodule)\\\\s*\\\\()","comment":"Introduced in the Fortran 2008 standard.","end":"(?=[;!\\\\n])","name":"meta.submodule.fortran","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b(submodule)\\\\s*(\\\\()\\\\s*(\\\\w+)","beginCaptures":{"1":{"name":"keyword.other.submodule.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"},"3":{"name":"entity.name.class.submodule.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"patterns":[]},{"applyEndPatternLast":1,"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.module.submodule.fortran"}},"comment":"Submodule body.","end":"(?ix)\\\\s*\\\\b(?:(end\\\\s*submodule)(?:\\\\s+([a-z_]\\\\w*))?|(end))\\\\b \\\\s*([^;!\\\\n]+)?(?=[;!\\\\n])","endCaptures":{"1":{"name":"keyword.other.endsubmodule.fortran"},"2":{"name":"entity.name.module.submodule.fortran"},"3":{"name":"keyword.other.endsubmodule.fortran"},"4":{"name":"invalid.error.submodule.fortran"}},"patterns":[{"begin":"\\\\G","comment":"Submodule specification block.","end":"(?i)(?=\\\\b(?:end\\\\s*[;!\\\\n]|end\\\\s*submodule\\\\b))","name":"meta.block.specification.submodule.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"comment":"Submodule contains block.","end":"(?i)(?=\\\\s*(?:end\\\\s*[;!\\\\n]|end\\\\s*submodule\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]},"subroutine-definition":{"begin":"(?i)(?=([^:'\\";!\\\\n](?!\\\\bend))*\\\\bsubroutine\\\\b)","comment":"Subroutine program unit. Introduced in the Fortran 1977 standard.","end":"(?=[;!\\\\n])","name":"meta.subroutine.fortran","patterns":[{"begin":"(?i)(?=\\\\G\\\\s*(?!\\\\bsubroutine\\\\b))","comment":"Attribute list.","end":"(?i)(?=\\\\bsubroutine\\\\b)","name":"meta.attribute-list.subroutine.fortran","patterns":[{"include":"#elemental-attribute"},{"include":"#module-attribute"},{"include":"#pure-attribute"},{"include":"#recursive-attribute"},{"include":"#invalid-word"}]},{"begin":"(?i)\\\\s*\\\\b(subroutine)\\\\b","beginCaptures":{"1":{"name":"keyword.other.subroutine.fortran"}},"end":"(?=[;!\\\\n])","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"}},"comment":"Subroutine body.","end":"(?ix)\\\\b(?:(end\\\\s*subroutine)(?:\\\\s+([a-z_]\\\\w*))?|(end))\\\\b \\\\s*([^;!\\\\n]+)?(?=[;!\\\\n])","endCaptures":{"1":{"name":"keyword.other.endsubroutine.fortran"},"2":{"name":"entity.name.function.subroutine.fortran"},"3":{"name":"keyword.other.endsubroutine.fortran"},"4":{"name":"invalid.error.subroutine.fortran"}},"patterns":[{"begin":"\\\\G(?!\\\\s*[;!\\\\n])","comment":"Rest of the first line in subroutine construct.","end":"(?=[;!\\\\n])","name":"meta.first-line.fortran","patterns":[{"include":"#dummy-variable-list"},{"include":"#language-binding-attribute"}]},{"begin":"(?i)(?!\\\\b(?:end\\\\s*[;!\\\\n]|end\\\\s*subroutine\\\\b))","comment":"Specification and execution block.","end":"(?i)(?=\\\\b(?:end\\\\s*[;!\\\\n]|end\\\\s*subroutine\\\\b))","name":"meta.block.specification.subroutine.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"comment":"Contains block.","end":"(?i)(?=(?:end\\\\s*[;!\\\\n]|end\\\\s*subroutine\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]}]},"sync-all-statement":{"begin":"(?i)\\\\b(sync all|sync memory)(\\\\s*(?=\\\\())?","beginCaptures":{"1":{"name":"keyword.control.sync-all-memory.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"comment":"Introduced in the Fortran 2018 standard.","end":"(?Tne});var Mne,Tne,IL=_(()=>{MB();Mne=Object.freeze(JSON.parse('{"displayName":"Fortran (Fixed Form)","fileTypes":["f","F","f77","F77","for","FOR"],"injections":{"source.fortran.fixed - ( string | comment )":{"patterns":[{"include":"#line-header"},{"include":"#line-end-comment"}]}},"name":"fortran-fixed-form","patterns":[{"include":"#comments"},{"include":"#line-header"},{"include":"source.fortran.free"}],"repository":{"comments":{"patterns":[{"begin":"^[cC\\\\*]","end":"\\\\n","name":"comment.line.fortran"},{"begin":"^ *!","end":"\\\\n","name":"comment.line.fortran"}]},"line-end-comment":{"begin":"(?<=^.{72})(?!\\\\n)","end":"(?=\\\\n)","name":"comment.line-end.fortran"},"line-header":{"captures":{"1":{"name":"constant.numeric.fortran"},"2":{"name":"keyword.line-continuation-operator.fortran"},"3":{"name":"source.fortran.free"},"4":{"name":"invalid.error.fortran"}},"match":"^(?!\\\\s*[!#])(?:([ \\\\d]{5} )|( {5}.)|(\\\\t)|(.{1,5}))"}},"scopeName":"source.fortran.fixed","embeddedLangs":["fortran-free-form"],"aliases":["f","for","f77"]}')),Tne=[...PB,Mne]});var DL={};x(DL,{default:()=>Wo});var qne,Wo,nd=_(()=>{qne=Object.freeze(JSON.parse('{"displayName":"Markdown","name":"markdown","patterns":[{"include":"#frontMatter"},{"include":"#block"}],"repository":{"ampersand":{"comment":"Markdown will convert this for us. We match it so that the HTML grammar will not mark it up as invalid.","match":"&(?!([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+);)","name":"meta.other.valid-ampersand.markdown"},"block":{"patterns":[{"include":"#separator"},{"include":"#heading"},{"include":"#blockquote"},{"include":"#lists"},{"include":"#fenced_code_block"},{"include":"#raw_block"},{"include":"#link-def"},{"include":"#html"},{"include":"#table"},{"include":"#paragraph"}]},"blockquote":{"begin":"(^|\\\\G)[ ]{0,3}(>) ?","captures":{"2":{"name":"punctuation.definition.quote.begin.markdown"}},"name":"markup.quote.markdown","patterns":[{"include":"#block"}],"while":"(^|\\\\G)\\\\s*(>) ?"},"bold":{"begin":"(?(\\\\*\\\\*(?=\\\\w)|(?]*+>|(?`+)([^`]|(?!(?(?!`))`)*+\\\\k|\\\\\\\\[\\\\\\\\`*_{}\\\\[\\\\]()#.!+\\\\->]?+|\\\\[((?[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g*+\\\\])*+\\\\](([ ]?\\\\[[^\\\\]]*+\\\\])|(\\\\([ \\\\t]*+?[ \\\\t]*+((?[\'\\"])(.*?)\\\\k<title>)?\\\\))))|(?!(?<=\\\\S)\\\\k<open>).)++(?<=\\\\S)(?=__\\\\b|\\\\*\\\\*)\\\\k<open>)","captures":{"1":{"name":"punctuation.definition.bold.markdown"}},"end":"(?<=\\\\S)(\\\\1)","name":"markup.bold.markdown","patterns":[{"applyEndPatternLast":1,"begin":"(?=<[^>]*?>)","end":"(?<=>)","patterns":[{"include":"text.html.derivative"}]},{"include":"#escape"},{"include":"#ampersand"},{"include":"#bracket"},{"include":"#raw"},{"include":"#bold"},{"include":"#italic"},{"include":"#image-inline"},{"include":"#link-inline"},{"include":"#link-inet"},{"include":"#link-email"},{"include":"#image-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref"},{"include":"#link-ref-shortcut"},{"include":"#strikethrough"}]},"bracket":{"comment":"Markdown will convert this for us. We match it so that the HTML grammar will not mark it up as invalid.","match":"<(?![a-zA-Z/?\\\\$!])","name":"meta.other.valid-bracket.markdown"},"escape":{"match":"\\\\\\\\[-`*_#+.!(){}\\\\[\\\\]\\\\\\\\>]","name":"constant.character.escape.markdown"},"fenced_code_block":{"patterns":[{"include":"#fenced_code_block_css"},{"include":"#fenced_code_block_basic"},{"include":"#fenced_code_block_ini"},{"include":"#fenced_code_block_java"},{"include":"#fenced_code_block_lua"},{"include":"#fenced_code_block_makefile"},{"include":"#fenced_code_block_perl"},{"include":"#fenced_code_block_r"},{"include":"#fenced_code_block_ruby"},{"include":"#fenced_code_block_php"},{"include":"#fenced_code_block_sql"},{"include":"#fenced_code_block_vs_net"},{"include":"#fenced_code_block_xml"},{"include":"#fenced_code_block_xsl"},{"include":"#fenced_code_block_yaml"},{"include":"#fenced_code_block_dosbatch"},{"include":"#fenced_code_block_clojure"},{"include":"#fenced_code_block_coffee"},{"include":"#fenced_code_block_c"},{"include":"#fenced_code_block_cpp"},{"include":"#fenced_code_block_diff"},{"include":"#fenced_code_block_dockerfile"},{"include":"#fenced_code_block_git_commit"},{"include":"#fenced_code_block_git_rebase"},{"include":"#fenced_code_block_go"},{"include":"#fenced_code_block_groovy"},{"include":"#fenced_code_block_pug"},{"include":"#fenced_code_block_js"},{"include":"#fenced_code_block_js_regexp"},{"include":"#fenced_code_block_json"},{"include":"#fenced_code_block_jsonc"},{"include":"#fenced_code_block_less"},{"include":"#fenced_code_block_objc"},{"include":"#fenced_code_block_swift"},{"include":"#fenced_code_block_scss"},{"include":"#fenced_code_block_perl6"},{"include":"#fenced_code_block_powershell"},{"include":"#fenced_code_block_python"},{"include":"#fenced_code_block_julia"},{"include":"#fenced_code_block_regexp_python"},{"include":"#fenced_code_block_rust"},{"include":"#fenced_code_block_scala"},{"include":"#fenced_code_block_shell"},{"include":"#fenced_code_block_ts"},{"include":"#fenced_code_block_tsx"},{"include":"#fenced_code_block_csharp"},{"include":"#fenced_code_block_fsharp"},{"include":"#fenced_code_block_dart"},{"include":"#fenced_code_block_handlebars"},{"include":"#fenced_code_block_markdown"},{"include":"#fenced_code_block_log"},{"include":"#fenced_code_block_erlang"},{"include":"#fenced_code_block_elixir"},{"include":"#fenced_code_block_latex"},{"include":"#fenced_code_block_bibtex"},{"include":"#fenced_code_block_twig"},{"include":"#fenced_code_block_unknown"}]},"fenced_code_block_basic":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(html|htm|shtml|xhtml|inc|tmpl|tpl)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.html","patterns":[{"include":"text.html.basic"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_bibtex":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(bibtex)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.bibtex","patterns":[{"include":"text.bibtex"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_c":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(c|h)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.c","patterns":[{"include":"source.c"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_clojure":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(clj|cljs|clojure)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.clojure","patterns":[{"include":"source.clojure"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_coffee":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(coffee|Cakefile|coffee.erb)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.coffee","patterns":[{"include":"source.coffee"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_cpp":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(cpp|c\\\\+\\\\+|cxx)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.cpp source.cpp","patterns":[{"include":"source.cpp"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_csharp":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(cs|csharp|c#)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.csharp","patterns":[{"include":"source.cs"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_css":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(css|css.erb)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.css","patterns":[{"include":"source.css"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_dart":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(dart)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.dart","patterns":[{"include":"source.dart"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_diff":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(patch|diff|rej)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.diff","patterns":[{"include":"source.diff"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_dockerfile":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(dockerfile|Dockerfile)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.dockerfile","patterns":[{"include":"source.dockerfile"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_dosbatch":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(bat|batch)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.dosbatch","patterns":[{"include":"source.batchfile"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_elixir":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(elixir)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.elixir","patterns":[{"include":"source.elixir"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_erlang":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(erlang)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.erlang","patterns":[{"include":"source.erlang"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_fsharp":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(fs|fsharp|f#)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.fsharp","patterns":[{"include":"source.fsharp"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_git_commit":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(COMMIT_EDITMSG|MERGE_MSG)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.git_commit","patterns":[{"include":"text.git-commit"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_git_rebase":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(git-rebase-todo)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.git_rebase","patterns":[{"include":"text.git-rebase"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_go":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(go|golang)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.go","patterns":[{"include":"source.go"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_groovy":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(groovy|gvy)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.groovy","patterns":[{"include":"source.groovy"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_handlebars":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(handlebars|hbs)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.handlebars","patterns":[{"include":"text.html.handlebars"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_ini":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(ini|conf)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.ini","patterns":[{"include":"source.ini"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_java":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(java|bsh)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.java","patterns":[{"include":"source.java"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_js":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(js|jsx|javascript|es6|mjs|cjs|dataviewjs|\\\\{\\\\.js.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.javascript","patterns":[{"include":"source.js"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_js_regexp":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(regexp)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.js_regexp","patterns":[{"include":"source.js.regexp"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_json":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(json|json5|sublime-settings|sublime-menu|sublime-keymap|sublime-mousemap|sublime-theme|sublime-build|sublime-project|sublime-completions)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.json","patterns":[{"include":"source.json"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_jsonc":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(jsonc)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.jsonc","patterns":[{"include":"source.json.comments"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_julia":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(julia|\\\\{\\\\.julia.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.julia","patterns":[{"include":"source.julia"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_latex":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(latex|tex)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.latex","patterns":[{"include":"text.tex.latex"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_less":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(less)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.less","patterns":[{"include":"source.css.less"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_log":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(log)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.log","patterns":[{"include":"text.log"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_lua":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(lua)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.lua","patterns":[{"include":"source.lua"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_makefile":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(Makefile|makefile|GNUmakefile|OCamlMakefile)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.makefile","patterns":[{"include":"source.makefile"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_markdown":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(markdown|md)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.markdown","patterns":[{"include":"text.html.markdown"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_objc":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(objectivec|objective-c|mm|objc|obj-c|m|h)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.objc","patterns":[{"include":"source.objc"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_perl":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(perl|pl|pm|pod|t|PL|psgi|vcl)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.perl","patterns":[{"include":"source.perl"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_perl6":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(perl6|p6|pl6|pm6|nqp)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.perl6","patterns":[{"include":"source.perl.6"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_php":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(php|php3|php4|php5|phpt|phtml|aw|ctp)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.php","patterns":[{"include":"text.html.basic"},{"include":"source.php"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_powershell":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(powershell|ps1|psm1|psd1|pwsh)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.powershell","patterns":[{"include":"source.powershell"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_pug":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(jade|pug)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.pug","patterns":[{"include":"text.pug"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_python":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(python|py|py3|rpy|pyw|cpy|SConstruct|Sconstruct|sconstruct|SConscript|gyp|gypi|\\\\{\\\\.python.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.python","patterns":[{"include":"source.python"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_r":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(R|r|s|S|Rprofile|\\\\{\\\\.r.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.r","patterns":[{"include":"source.r"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_regexp_python":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(re)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.regexp_python","patterns":[{"include":"source.regexp.python"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_ruby":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(ruby|rb|rbx|rjs|Rakefile|rake|cgi|fcgi|gemspec|irbrc|Capfile|ru|prawn|Cheffile|Gemfile|Guardfile|Hobofile|Vagrantfile|Appraisals|Rantfile|Berksfile|Berksfile.lock|Thorfile|Puppetfile)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.ruby","patterns":[{"include":"source.ruby"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_rust":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(rust|rs|\\\\{\\\\.rust.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.rust","patterns":[{"include":"source.rust"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_scala":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(scala|sbt)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.scala","patterns":[{"include":"source.scala"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_scss":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(scss)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.scss","patterns":[{"include":"source.css.scss"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_shell":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(shell|sh|bash|zsh|bashrc|bash_profile|bash_login|profile|bash_logout|.textmate_init|\\\\{\\\\.bash.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.shellscript","patterns":[{"include":"source.shell"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_sql":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(sql|ddl|dml)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.sql","patterns":[{"include":"source.sql"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_swift":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(swift)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.swift","patterns":[{"include":"source.swift"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_ts":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(typescript|ts)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.typescript","patterns":[{"include":"source.ts"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_tsx":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(tsx)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.typescriptreact","patterns":[{"include":"source.tsx"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_twig":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(twig)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.twig","patterns":[{"include":"source.twig"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_unknown":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?=([^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown"},"fenced_code_block_vs_net":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(vb)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.vs_net","patterns":[{"include":"source.asp.vb.net"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_xml":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(xml|xsd|tld|jsp|pt|cpt|dtml|rss|opml)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.xml","patterns":[{"include":"text.xml"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_xsl":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(xsl|xslt)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.xsl","patterns":[{"include":"text.xml.xsl"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_yaml":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(yaml|yml)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.yaml","patterns":[{"include":"source.yaml"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"frontMatter":{"applyEndPatternLast":1,"begin":"\\\\A(?=(-{3,}))","end":"^ {,3}\\\\1-*[ \\\\t]*$|^[ \\\\t]*\\\\.{3}$","endCaptures":{"0":{"name":"punctuation.definition.end.frontmatter"}},"patterns":[{"begin":"\\\\A(-{3,})(.*)$","beginCaptures":{"1":{"name":"punctuation.definition.begin.frontmatter"},"2":{"name":"comment.frontmatter"}},"contentName":"meta.embedded.block.frontmatter","patterns":[{"include":"source.yaml"}],"while":"^(?! {,3}\\\\1-*[ \\\\t]*$|[ \\\\t]*\\\\.{3}$)"}]},"heading":{"captures":{"1":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{6})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.6.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{5})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.5.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{4})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.4.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{3})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.3.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{2})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.2.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{1})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.1.markdown"}]}},"match":"(?:^|\\\\G)[ ]{0,3}(#{1,6}\\\\s+(.*?)(\\\\s+#{1,6})?\\\\s*)$","name":"markup.heading.markdown"},"heading-setext":{"patterns":[{"match":"^(={3,})(?=[ \\\\t]*$\\\\n?)","name":"markup.heading.setext.1.markdown"},{"match":"^(-{3,})(?=[ \\\\t]*$\\\\n?)","name":"markup.heading.setext.2.markdown"}]},"html":{"patterns":[{"begin":"(^|\\\\G)\\\\s*(<!--)","captures":{"1":{"name":"punctuation.definition.comment.html"},"2":{"name":"punctuation.definition.comment.html"}},"end":"(-->)","name":"comment.block.html"},{"begin":"(?i)(^|\\\\G)\\\\s*(?=<(script|style|pre)(\\\\s|$|>)(?!.*?</(script|style|pre)>))","end":"(?i)(.*)((</)(script|style|pre)(>))","endCaptures":{"1":{"patterns":[{"include":"text.html.derivative"}]},"2":{"name":"meta.tag.structure.$4.end.html"},"3":{"name":"punctuation.definition.tag.begin.html"},"4":{"name":"entity.name.tag.html"},"5":{"name":"punctuation.definition.tag.end.html"}},"patterns":[{"begin":"(\\\\s*|$)","patterns":[{"include":"text.html.derivative"}],"while":"(?i)^(?!.*</(script|style|pre)>)"}]},{"begin":"(?i)(^|\\\\G)\\\\s*(?=</?[a-zA-Z]+[^\\\\s/>]*(\\\\s|$|/?>))","patterns":[{"include":"text.html.derivative"}],"while":"^(?!\\\\s*$)"},{"begin":"(^|\\\\G)\\\\s*(?=(<[a-zA-Z0-9\\\\-](/?>|\\\\s.*?>)|</[a-zA-Z0-9\\\\-]>)\\\\s*$)","patterns":[{"include":"text.html.derivative"}],"while":"^(?!\\\\s*$)"}]},"image-inline":{"captures":{"1":{"name":"punctuation.definition.link.description.begin.markdown"},"2":{"name":"string.other.link.description.markdown"},"4":{"name":"punctuation.definition.link.description.end.markdown"},"5":{"name":"punctuation.definition.metadata.markdown"},"7":{"name":"punctuation.definition.link.markdown"},"8":{"name":"markup.underline.link.image.markdown"},"9":{"name":"punctuation.definition.link.markdown"},"10":{"name":"markup.underline.link.image.markdown"},"12":{"name":"string.other.link.description.title.markdown"},"13":{"name":"punctuation.definition.string.begin.markdown"},"14":{"name":"punctuation.definition.string.end.markdown"},"15":{"name":"string.other.link.description.title.markdown"},"16":{"name":"punctuation.definition.string.begin.markdown"},"17":{"name":"punctuation.definition.string.end.markdown"},"18":{"name":"string.other.link.description.title.markdown"},"19":{"name":"punctuation.definition.string.begin.markdown"},"20":{"name":"punctuation.definition.string.end.markdown"},"21":{"name":"punctuation.definition.metadata.markdown"}},"match":"(\\\\!\\\\[)((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+)(\\\\])(\\\\()[ \\\\t]*((<)((?:\\\\\\\\[<>]|[^<>\\\\n])*)(>)|((?<url>(?>[^\\\\s()]+)|\\\\(\\\\g<url>*\\\\))*))[ \\\\t]*(?:((\\\\().+?(\\\\)))|((\\").+?(\\"))|((\').+?(\')))?\\\\s*(\\\\))","name":"meta.image.inline.markdown"},"image-ref":{"captures":{"1":{"name":"punctuation.definition.link.description.begin.markdown"},"2":{"name":"string.other.link.description.markdown"},"4":{"name":"punctuation.definition.link.description.end.markdown"},"5":{"name":"punctuation.definition.constant.markdown"},"6":{"name":"constant.other.reference.link.markdown"},"7":{"name":"punctuation.definition.constant.markdown"}},"match":"(\\\\!\\\\[)((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+)(\\\\])[ ]?(\\\\[)(.*?)(\\\\])","name":"meta.image.reference.markdown"},"inline":{"patterns":[{"include":"#ampersand"},{"include":"#bracket"},{"include":"#bold"},{"include":"#italic"},{"include":"#raw"},{"include":"#strikethrough"},{"include":"#escape"},{"include":"#image-inline"},{"include":"#image-ref"},{"include":"#link-email"},{"include":"#link-inet"},{"include":"#link-inline"},{"include":"#link-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref-shortcut"}]},"italic":{"begin":"(?<open>(\\\\*(?=\\\\w)|(?<!\\\\w)\\\\*|(?<!\\\\w)\\\\b_))(?=\\\\S)(?=(<[^>]*+>|(?<raw>`+)([^`]|(?!(?<!`)\\\\k<raw>(?!`))`)*+\\\\k<raw>|\\\\\\\\[\\\\\\\\`*_{}\\\\[\\\\]()#.!+\\\\->]?+|\\\\[((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+\\\\](([ ]?\\\\[[^\\\\]]*+\\\\])|(\\\\([ \\\\t]*+<?(.*?)>?[ \\\\t]*+((?<title>[\'\\"])(.*?)\\\\k<title>)?\\\\))))|\\\\k<open>\\\\k<open>|(?!(?<=\\\\S)\\\\k<open>).)++(?<=\\\\S)(?=_\\\\b|\\\\*)\\\\k<open>)","captures":{"1":{"name":"punctuation.definition.italic.markdown"}},"end":"(?<=\\\\S)(\\\\1)((?!\\\\1)|(?=\\\\1\\\\1))","name":"markup.italic.markdown","patterns":[{"applyEndPatternLast":1,"begin":"(?=<[^>]*?>)","end":"(?<=>)","patterns":[{"include":"text.html.derivative"}]},{"include":"#escape"},{"include":"#ampersand"},{"include":"#bracket"},{"include":"#raw"},{"include":"#bold"},{"include":"#image-inline"},{"include":"#link-inline"},{"include":"#link-inet"},{"include":"#link-email"},{"include":"#image-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref"},{"include":"#link-ref-shortcut"},{"include":"#strikethrough"}]},"link-def":{"captures":{"1":{"name":"punctuation.definition.constant.markdown"},"2":{"name":"constant.other.reference.link.markdown"},"3":{"name":"punctuation.definition.constant.markdown"},"4":{"name":"punctuation.separator.key-value.markdown"},"5":{"name":"punctuation.definition.link.markdown"},"6":{"name":"markup.underline.link.markdown"},"7":{"name":"punctuation.definition.link.markdown"},"8":{"name":"markup.underline.link.markdown"},"9":{"name":"string.other.link.description.title.markdown"},"10":{"name":"punctuation.definition.string.begin.markdown"},"11":{"name":"punctuation.definition.string.end.markdown"},"12":{"name":"string.other.link.description.title.markdown"},"13":{"name":"punctuation.definition.string.begin.markdown"},"14":{"name":"punctuation.definition.string.end.markdown"},"15":{"name":"string.other.link.description.title.markdown"},"16":{"name":"punctuation.definition.string.begin.markdown"},"17":{"name":"punctuation.definition.string.end.markdown"}},"match":"\\\\s*(\\\\[)([^]]+?)(\\\\])(:)[ \\\\t]*(?:(<)((?:\\\\\\\\[<>]|[^<>\\\\n])*)(>)|(\\\\S+?))[ \\\\t]*(?:((\\\\().+?(\\\\)))|((\\").+?(\\"))|((\').+?(\')))?\\\\s*$","name":"meta.link.reference.def.markdown"},"link-email":{"captures":{"1":{"name":"punctuation.definition.link.markdown"},"2":{"name":"markup.underline.link.markdown"},"4":{"name":"punctuation.definition.link.markdown"}},"match":"(<)((?:mailto:)?[a-zA-Z0-9.!#$%&\'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\\\.[a-zA-Z0-9-]+)*)(>)","name":"meta.link.email.lt-gt.markdown"},"link-inet":{"captures":{"1":{"name":"punctuation.definition.link.markdown"},"2":{"name":"markup.underline.link.markdown"},"3":{"name":"punctuation.definition.link.markdown"}},"match":"(<)((?:https?|ftp)://.*?)(>)","name":"meta.link.inet.markdown"},"link-inline":{"captures":{"1":{"name":"punctuation.definition.link.title.begin.markdown"},"2":{"name":"string.other.link.title.markdown","patterns":[{"include":"#raw"},{"include":"#bold"},{"include":"#italic"},{"include":"#strikethrough"},{"include":"#image-inline"}]},"4":{"name":"punctuation.definition.link.title.end.markdown"},"5":{"name":"punctuation.definition.metadata.markdown"},"7":{"name":"punctuation.definition.link.markdown"},"8":{"name":"markup.underline.link.markdown"},"9":{"name":"punctuation.definition.link.markdown"},"10":{"name":"markup.underline.link.markdown"},"12":{"name":"string.other.link.description.title.markdown"},"13":{"name":"punctuation.definition.string.begin.markdown"},"14":{"name":"punctuation.definition.string.end.markdown"},"15":{"name":"string.other.link.description.title.markdown"},"16":{"name":"punctuation.definition.string.begin.markdown"},"17":{"name":"punctuation.definition.string.end.markdown"},"18":{"name":"string.other.link.description.title.markdown"},"19":{"name":"punctuation.definition.string.begin.markdown"},"20":{"name":"punctuation.definition.string.end.markdown"},"21":{"name":"punctuation.definition.metadata.markdown"}},"match":"(\\\\[)((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+)(\\\\])(\\\\()[ \\\\t]*((<)((?:\\\\\\\\[<>]|[^<>\\\\n])*)(>)|((?<url>(?>[^\\\\s()]+)|\\\\(\\\\g<url>*\\\\))*))[ \\\\t]*(?:((\\\\()[^()]*(\\\\)))|((\\")[^\\"]*(\\"))|((\')[^\']*(\')))?\\\\s*(\\\\))","name":"meta.link.inline.markdown"},"link-ref":{"captures":{"1":{"name":"punctuation.definition.link.title.begin.markdown"},"2":{"name":"string.other.link.title.markdown","patterns":[{"include":"#raw"},{"include":"#bold"},{"include":"#italic"},{"include":"#strikethrough"},{"include":"#image-inline"}]},"4":{"name":"punctuation.definition.link.title.end.markdown"},"5":{"name":"punctuation.definition.constant.begin.markdown"},"6":{"name":"constant.other.reference.link.markdown"},"7":{"name":"punctuation.definition.constant.end.markdown"}},"match":"(?<![\\\\]\\\\\\\\])(\\\\[)((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+)(\\\\])(\\\\[)([^\\\\]]*+)(\\\\])","name":"meta.link.reference.markdown"},"link-ref-literal":{"captures":{"1":{"name":"punctuation.definition.link.title.begin.markdown"},"2":{"name":"string.other.link.title.markdown"},"4":{"name":"punctuation.definition.link.title.end.markdown"},"5":{"name":"punctuation.definition.constant.begin.markdown"},"6":{"name":"punctuation.definition.constant.end.markdown"}},"match":"(?<![\\\\]\\\\\\\\])(\\\\[)((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+)(\\\\])[ ]?(\\\\[)(\\\\])","name":"meta.link.reference.literal.markdown"},"link-ref-shortcut":{"captures":{"1":{"name":"punctuation.definition.link.title.begin.markdown"},"2":{"name":"string.other.link.title.markdown"},"3":{"name":"punctuation.definition.link.title.end.markdown"}},"match":"(?<![\\\\]\\\\\\\\])(\\\\[)((?:[^\\\\s\\\\[\\\\]\\\\\\\\]|\\\\\\\\[\\\\[\\\\]])+?)((?<!\\\\\\\\)\\\\])","name":"meta.link.reference.markdown"},"list_paragraph":{"begin":"(^|\\\\G)(?=\\\\S)(?![*+->]\\\\s|[0-9]+\\\\.\\\\s)","name":"meta.paragraph.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"},{"include":"#heading-setext"}],"while":"(^|\\\\G)(?!\\\\s*$|#|[ ]{0,3}([-*_>][ ]{2,}){3,}[ \\\\t]*$\\\\n?|[ ]{0,3}[*+->]|[ ]{0,3}[0-9]+\\\\.)"},"lists":{"patterns":[{"begin":"(^|\\\\G)([ ]{0,3})([*+-])([ \\\\t])","beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}},"comment":"Currently does not support un-indented second lines.","name":"markup.list.unnumbered.markdown","patterns":[{"include":"#block"},{"include":"#list_paragraph"}],"while":"((^|\\\\G)([ ]{2,4}|\\\\t))|(^[ \\\\t]*$)"},{"begin":"(^|\\\\G)([ ]{0,3})([0-9]+[\\\\.\\\\)])([ \\\\t])","beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}},"name":"markup.list.numbered.markdown","patterns":[{"include":"#block"},{"include":"#list_paragraph"}],"while":"((^|\\\\G)([ ]{2,4}|\\\\t))|(^[ \\\\t]*$)"}]},"paragraph":{"begin":"(^|\\\\G)[ ]{0,3}(?=[^ \\\\t\\\\n])","name":"meta.paragraph.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"},{"include":"#heading-setext"}],"while":"(^|\\\\G)((?=\\\\s*[-=]{3,}\\\\s*$)|[ ]{4,}(?=[^ \\\\t\\\\n]))"},"raw":{"captures":{"1":{"name":"punctuation.definition.raw.markdown"},"3":{"name":"punctuation.definition.raw.markdown"}},"match":"(`+)((?:[^`]|(?!(?<!`)\\\\1(?!`))`)*+)(\\\\1)","name":"markup.inline.raw.string.markdown"},"raw_block":{"begin":"(^|\\\\G)([ ]{4}|\\\\t)","name":"markup.raw.block.markdown","while":"(^|\\\\G)([ ]{4}|\\\\t)"},"separator":{"match":"(^|\\\\G)[ ]{0,3}([\\\\*\\\\-\\\\_])([ ]{0,2}\\\\2){2,}[ \\\\t]*$\\\\n?","name":"meta.separator.markdown"},"strikethrough":{"captures":{"1":{"name":"punctuation.definition.strikethrough.markdown"},"2":{"patterns":[{"applyEndPatternLast":1,"begin":"(?=<[^>]*?>)","end":"(?<=>)","patterns":[{"include":"text.html.derivative"}]},{"include":"#escape"},{"include":"#ampersand"},{"include":"#bracket"},{"include":"#raw"},{"include":"#bold"},{"include":"#italic"},{"include":"#image-inline"},{"include":"#link-inline"},{"include":"#link-inet"},{"include":"#link-email"},{"include":"#image-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref"},{"include":"#link-ref-shortcut"}]},"3":{"name":"punctuation.definition.strikethrough.markdown"}},"match":"(?<!\\\\\\\\)(~{2,})((?:[^~]|(?!(?<![~\\\\\\\\])\\\\1(?!~))~)*+)(\\\\1)","name":"markup.strikethrough.markdown"},"table":{"begin":"(^|\\\\G)(\\\\|)(?=[^|].+\\\\|\\\\s*$)","beginCaptures":{"2":{"name":"punctuation.definition.table.markdown"}},"name":"markup.table.markdown","patterns":[{"match":"\\\\|","name":"punctuation.definition.table.markdown"},{"captures":{"1":{"name":"punctuation.separator.table.markdown"}},"match":"(?<=\\\\|)\\\\s*(:?-+:?)\\\\s*(?=\\\\|)"},{"captures":{"1":{"patterns":[{"include":"#inline"}]}},"match":"(?<=\\\\|)\\\\s*(?=\\\\S)((\\\\\\\\\\\\||[^|])+)(?<=\\\\S)\\\\s*(?=\\\\|)"}],"while":"(^|\\\\G)(?=\\\\|)"}},"scopeName":"text.html.markdown","embeddedLangs":[],"aliases":["md"],"embeddedLangsLazy":["css","html","ini","java","lua","make","perl","r","ruby","php","sql","vb","xml","xsl","yaml","bat","clojure","coffee","c","cpp","diff","docker","git-commit","git-rebase","go","groovy","pug","javascript","json","jsonc","less","objective-c","swift","scss","raku","powershell","python","julia","regexp","rust","scala","shellscript","typescript","tsx","csharp","fsharp","dart","handlebars","log","erlang","elixir","latex","bibtex","html-derivative"]}')),Wo=[qne]});var FL={};x(FL,{default:()=>zne});var Gne,zne,SL=_(()=>{nd();Gne=Object.freeze(JSON.parse('{"displayName":"F#","name":"fsharp","patterns":[{"include":"#compiler_directives"},{"include":"#comments"},{"include":"#constants"},{"include":"#strings"},{"include":"#chars"},{"include":"#double_tick"},{"include":"#definition"},{"include":"#abstract_definition"},{"include":"#attributes"},{"include":"#modules"},{"include":"#anonymous_functions"},{"include":"#du_declaration"},{"include":"#record_declaration"},{"include":"#records"},{"include":"#strp_inlined"},{"include":"#keywords"},{"include":"#cexprs"},{"include":"#text"}],"repository":{"abstract_definition":{"begin":"\\\\b(static\\\\s+)?(abstract)\\\\s+(member)?(\\\\s+\\\\[\\\\<.*\\\\>\\\\])?\\\\s*([_[:alpha:]0-9,\\\\._`\\\\s]+)(<)?","beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"keyword.fsharp"},"4":{"name":"support.function.attribute.fsharp"},"5":{"name":"keyword.symbol.fsharp"}},"end":"\\\\s*(with)\\\\b|=|$","endCaptures":{"1":{"name":"keyword.fsharp"}},"name":"abstract.definition.fsharp","patterns":[{"include":"#comments"},{"include":"#common_declaration"},{"captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"entity.name.type.fsharp"}},"match":"(\\\\?{0,1})([[:alpha:]0-9\'`^._ ]+)\\\\s*(:)((?!with\\\\b)\\\\b([\\\\w0-9\'`^._ ]+)){0,1}"},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"comments":"Here we need the \\\\w modifier in order to check that the words isn\'t blacklisted","match":"(?!with|get|set\\\\b)\\\\s*([\\\\w0-9\'`^._]+)"},{"include":"#keywords"}]},"anonymous_functions":{"patterns":[{"begin":"\\\\b(fun)\\\\b","beginCaptures":{"1":{"name":"keyword.fsharp"}},"end":"(->)","endCaptures":{"1":{"name":"keyword.symbol.arrow.fsharp"}},"name":"function.anonymous","patterns":[{"include":"#comments"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"\\\\s*(?=(->))","endCaptures":{"1":{"name":"keyword.symbol.arrow.fsharp"}},"patterns":[{"include":"#member_declaration"}]},{"include":"#variables"}]}]},"anonymous_record_declaration":{"begin":"(\\\\{\\\\|)","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(\\\\|\\\\})","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"captures":{"1":{"name":"keyword.symbol.fsharp"}},"match":"[[:alpha:]0-9\'`^_ ]+(:)"},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"([[:alpha:]0-9\'`^_ ]+)"},{"include":"#anonymous_record_declaration"},{"include":"#keywords"}]},"attributes":{"patterns":[{"begin":"\\\\[\\\\<","end":"\\\\>\\\\]|\\\\]","name":"support.function.attribute.fsharp","patterns":[{"include":"$self"}]}]},"cexprs":{"patterns":[{"captures":{"0":{"name":"keyword.fsharp"}},"match":"\\\\b(async|seq|promise|task|maybe|asyncMaybe|controller|scope|application|pipeline)(?=\\\\s*\\\\{)","name":"cexpr.fsharp"}]},"chars":{"patterns":[{"captures":{"1":{"name":"string.quoted.single.fsharp"}},"match":"(\'\\\\\\\\?.\')","name":"char.fsharp"}]},"comments":{"patterns":[{"beginCaptures":{"1":{"name":"comment.block.fsharp"}},"match":"(\\\\(\\\\*{3}.*\\\\*{3}\\\\))","name":"comment.literate.command.fsharp"},{"begin":"^\\\\s*(\\\\(\\\\*\\\\*(?!\\\\)))((?!\\\\*\\\\)).)*$","beginCaptures":{"1":{"name":"comment.block.fsharp"}},"endCaptures":{"1":{"name":"comment.block.fsharp"}},"name":"comment.block.markdown.fsharp","patterns":[{"include":"text.html.markdown"}],"while":"^(?!\\\\s*(\\\\*)+\\\\)\\\\s*$)"},{"begin":"(\\\\(\\\\*(?!\\\\)))","beginCaptures":{"1":{"name":"comment.block.fsharp"}},"end":"(\\\\*+\\\\))","endCaptures":{"1":{"name":"comment.block.fsharp"}},"name":"comment.block.fsharp","patterns":[{"comments":"Capture // when inside of (* *) like that the rule which capture comments starting by // is not trigger. See https://github.com/ionide/ionide-fsgrammar/issues/155","match":"//","name":"fast-capture.comment.line.double-slash.fsharp"},{"comments":"Capture (*) when inside of (* *) so that it doesn\'t prematurely end the comment block.","match":"\\\\(\\\\*\\\\)","name":"fast-capture.comment.line.mul-operator.fsharp"},{"include":"#comments"}]},{"captures":{"1":{"name":"comment.block.fsharp"}},"match":"((?<!\\\\()(\\\\*)+\\\\))","name":"comment.block.markdown.fsharp.end"},{"begin":"(?<![!%&+-.<=>?@^|/])///(?!/)","name":"comment.line.markdown.fsharp","patterns":[{"include":"text.html.markdown"}],"while":"(?<![!%&+-.<=>?@^|/])///(?!/)"},{"match":"(?<![!%&+-.<=>?@^|/])//(.*$)","name":"comment.line.double-slash.fsharp"}]},"common_binding_definition":{"patterns":[{"include":"#comments"},{"include":"#attributes"},{"begin":"(:)\\\\s*(\\\\()\\\\s*(static member|member)","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"keyword.fsharp"}},"comments":"SRTP syntax support","end":"(\\\\))\\\\s*((?=,)|(?=\\\\=))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"(\\\\^[[:alpha:]0-9\'._]+)"},{"include":"#variables"},{"include":"#keywords"}]},{"begin":"(:)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"}},"end":"(\\\\)\\\\s*(([?[:alpha:]0-9\'`^._ ]*)))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}},"patterns":[{"include":"#tuple_signature"}]},{"begin":"(:)\\\\s*(\\\\^[[:alpha:]0-9\'._]+)\\\\s*(when)","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"},"3":{"name":"keyword.fsharp"}},"end":"(?=:)","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"match":"\\\\b(and|when|or)\\\\b","name":"keyword.fsharp"},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"comment":"Because we first capture the keywords, we can capture what looks like a word and assume it\'s an entity definition","match":"([[:alpha:]0-9\'^._]+)"},{"match":"(\\\\(|\\\\))","name":"keyword.symbol.fsharp"}]},{"captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}},"match":"(:)\\\\s*([?[:alpha:]0-9\'`^._ ]+)"},{"captures":{"1":{"name":"keyword.symbol.arrow.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"entity.name.type.fsharp"}},"match":"(->)\\\\s*(\\\\()?\\\\s*([?[:alpha:]0-9\'`^._ ]+)*"},{"begin":"(\\\\*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"}},"end":"(\\\\)\\\\s*(([?[:alpha:]0-9\'`^._ ]+))*)","endCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}},"patterns":[{"include":"#tuple_signature"}]},{"begin":"(\\\\*)(\\\\s*([?[:alpha:]0-9\'`^._ ]+))*","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"entity.name.type.fsharp"}},"end":"(?==)|(?=\\\\))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"include":"#tuple_signature"}]},{"begin":"(<+(?![[:space:]]*\\\\)))","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"beginComment":"The group (?![[:space:]]*\\\\) is for protection against overload operator. static member (<)","end":"((?<!:)>|\\\\))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"endComment":"The group (?<!:) prevent us from stopping on :> when using SRTP synthax","patterns":[{"include":"#generic_declaration"}]},{"include":"#anonymous_record_declaration"},{"begin":"({)","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(})","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"include":"#record_signature"}]},{"include":"#definition"},{"include":"#variables"},{"include":"#keywords"}]},"common_declaration":{"patterns":[{"begin":"\\\\s*(->)\\\\s*([[:alpha:]0-9\'`^._ ]+)(<)","beginCaptures":{"1":{"name":"keyword.symbol.arrow.fsharp"},"2":{"name":"entity.name.type.fsharp"},"3":{"name":"keyword.symbol.fsharp"}},"end":"(>)","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"([[:alpha:]0-9\'`^._ ]+)"},{"include":"#keywords"}]},{"captures":{"1":{"name":"keyword.symbol.arrow.fsharp"},"2":{"name":"entity.name.type.fsharp"}},"match":"\\\\s*(->)\\\\s*(?!with|get|set\\\\b)\\\\b([\\\\w0-9\'`^._]+)"},{"include":"#anonymous_record_declaration"},{"begin":"(\\\\?{0,1})([[:alpha:]0-9\'`^._ ]+)\\\\s*(:)(\\\\s*([?[:alpha:]0-9\'`^._ ]+)(<))","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"keyword.symbol.fsharp"},"5":{"name":"entity.name.type.fsharp"}},"end":"(>)","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"([[:alpha:]0-9\'`^._ ]+)"},{"include":"#keywords"}]}]},"compiler_directives":{"patterns":[{"captures":{},"match":"\\\\s?(#if|#elif|#elseif|#else|#endif|#light|#nowarn)","name":"keyword.control.directive.fsharp"}]},"constants":{"patterns":[{"match":"\\\\(\\\\)","name":"keyword.symbol.fsharp"},{"match":"\\\\b-?[0-9][0-9_]*((\\\\.(?!\\\\.)([0-9][0-9_]*([eE][+-]??[0-9][0-9_]*)?)?)|([eE][+-]??[0-9][0-9_]*))","name":"constant.numeric.float.fsharp"},{"match":"\\\\b(-?((0(x|X)[0-9a-fA-F][0-9a-fA-F_]*)|(0(o|O)[0-7][0-7_]*)|(0(b|B)[01][01_]*)|([0-9][0-9_]*)))","name":"constant.numeric.integer.nativeint.fsharp"},{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.fsharp"},{"match":"\\\\b(null|void)\\\\b","name":"constant.other.fsharp"}]},"definition":{"patterns":[{"begin":"\\\\b(let mutable|static let mutable|static let|let inline|let|and|member val|member inline|static member inline|static member val|static member|default|member|override|let!)(\\\\s+rec|mutable)?(\\\\s+\\\\[\\\\<.*\\\\>\\\\])?\\\\s*(private|internal|public)?\\\\s+(\\\\[[^-=]*\\\\]|[_[:alpha:]]([_[:alpha:]0-9\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\\\._`\\\\s]+|(?<=,)\\\\s)*)?","beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"support.function.attribute.fsharp"},"4":{"name":"storage.modifier.fsharp"},"5":{"name":"variable.fsharp"}},"end":"\\\\s*((with\\\\b)|(=|\\\\n+=|(?<=\\\\=)))","endCaptures":{"2":{"name":"keyword.fsharp"},"3":{"name":"keyword.symbol.fsharp"}},"name":"binding.fsharp","patterns":[{"include":"#common_binding_definition"}]},{"begin":"\\\\b(use|use!|and|and!)\\\\s+(\\\\[[^-=]*\\\\]|[_[:alpha:]]([_[:alpha:]0-9\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\\\._`\\\\s]+|(?<=,)\\\\s)*)?","beginCaptures":{"1":{"name":"keyword.fsharp"}},"end":"\\\\s*(=)","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"name":"binding.fsharp","patterns":[{"include":"#common_binding_definition"}]},{"begin":"(?<=with|and)\\\\s*\\\\b((get|set)\\\\s*(?=\\\\())(\\\\[[^-=]*\\\\]|[_[:alpha:]]([_[:alpha:]0-9\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\\\._`\\\\s]+|(?<=,)\\\\s)*)?","beginCaptures":{"4":{"name":"variable.fsharp"}},"end":"\\\\s*(=|\\\\n+=|(?<=\\\\=))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"name":"binding.fsharp","patterns":[{"include":"#common_binding_definition"}]},{"begin":"\\\\b(static val mutable|val mutable|val inline|val)(\\\\s+rec|mutable)?(\\\\s+\\\\[\\\\<.*\\\\>\\\\])?\\\\s*(private|internal|public)?\\\\s+(\\\\[[^-=]*\\\\]|[_[:alpha:]]([_[:alpha:]0-9,\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9,\\\\._`\\\\s]+|(?<=,)\\\\s)*)?","beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"support.function.attribute.fsharp"},"4":{"name":"storage.modifier.fsharp"},"5":{"name":"variable.fsharp"}},"end":"\\\\n$","name":"binding.fsharp","patterns":[{"include":"#common_binding_definition"}]},{"begin":"\\\\b(new)\\\\b\\\\s+(\\\\()","beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.symbol.fsharp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"name":"binding.fsharp","patterns":[{"include":"#common_binding_definition"}]}]},"double_tick":{"patterns":[{"captures":{"1":{"name":"string.quoted.single.fsharp"},"2":{"name":"variable.other.binding.fsharp"},"3":{"name":"string.quoted.single.fsharp"}},"match":"(``)([^`]*)(``)","name":"variable.other.binding.fsharp"}]},"du_declaration":{"patterns":[{"begin":"\\\\b(of)\\\\b","beginCaptures":{"1":{"name":"keyword.fsharp"}},"end":"$|(\\\\|)","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"name":"du_declaration.fsharp","patterns":[{"include":"#comments"},{"captures":{"1":{"name":"variable.parameter.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"entity.name.type.fsharp"}},"match":"([[:alpha:]0-9\'`<>^._]+|``[[:alpha:]0-9\' <>^._]+``)\\\\s*(:)\\\\s*([[:alpha:]0-9\'`<>^._]+|``[[:alpha:]0-9\' <>^._]+``)"},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"(``([[:alpha:]0-9\'^._ ]+)``|[[:alpha:]0-9\'`^._]+)"},{"include":"#anonymous_record_declaration"},{"include":"#keywords"}]}]},"generic_declaration":{"patterns":[{"begin":"(:)\\\\s*(\\\\()\\\\s*(static member|member)","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"keyword.fsharp"}},"comments":"SRTP syntax support","end":"(\\\\))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"begin":"(\\\\()","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"include":"#member_declaration"}]},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"((\'|\\\\^)[[:alpha:]0-9\'._]+)"},{"include":"#variables"},{"include":"#keywords"}]},{"match":"\\\\b(private|to|public|internal|function|yield!|yield|class|exception|match|delegate|of|new|in|as|if|then|else|elif|for|begin|end|inherit|do|let\\\\!|return\\\\!|return|interface|with|abstract|enum|member|try|finally|and|when|or|use|use\\\\!|struct|while|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!\')\\\\b","name":"keyword.fsharp"},{"match":":","name":"keyword.symbol.fsharp"},{"include":"#constants"},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"((\'|\\\\^)[[:alpha:]0-9\'._]+)"},{"begin":"(<)","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(>)","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"((\'|\\\\^)[[:alpha:]0-9\'._]+)"},{"include":"#tuple_signature"},{"include":"#generic_declaration"}]},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"(([?[:alpha:]0-9\'`^._ ]+))+"},{"include":"#tuple_signature"}]},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"comments":"Here we need the \\\\w modifier in order to check that the words are allowed","match":"(?!when|and|or\\\\b)\\\\b([\\\\w0-9\'`^._]+)"},{"captures":{"1":{"name":"keyword.symbol.fsharp"}},"comments":"Prevent captures of `|>` as a keyword when defining custom operator like `<|>`","match":"(\\\\|)"},{"include":"#keywords"}]},"keywords":{"patterns":[{"match":"\\\\b(private|public|internal)\\\\b","name":"storage.modifier"},{"match":"\\\\b(private|to|public|internal|function|class|exception|delegate|of|new|as|begin|end|inherit|let!|interface|abstract|enum|member|and|when|or|use|use\\\\!|struct|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!\')\\\\b","name":"keyword.fsharp"},{"match":"\\\\b(match|yield|yield!|with|if|then|else|elif|for|in|return!|return|try|finally|while|do)(?!\')\\\\b","name":"keyword.control"},{"match":"(\\\\->|\\\\<\\\\-)","name":"keyword.symbol.arrow.fsharp"},{"match":"[.?]*(&&&|\\\\|\\\\|\\\\||\\\\^\\\\^\\\\^|~~~|~\\\\+|~\\\\-|<<<|>>>|\\\\|>|:>|:\\\\?>|:|\\\\[|\\\\]|\\\\;|<>|=|@|\\\\|\\\\||&&|&|%|{|}|\\\\||_|\\\\.\\\\.|\\\\,|\\\\+|\\\\-|\\\\*|\\\\/|\\\\^|\\\\!|\\\\>|\\\\>\\\\=|\\\\>\\\\>|\\\\<|\\\\<\\\\=|\\\\(|\\\\)|\\\\<\\\\<)[.?]*","name":"keyword.symbol.fsharp"}]},"member_declaration":{"patterns":[{"include":"#comments"},{"include":"#common_declaration"},{"begin":"(:)\\\\s*(\\\\()\\\\s*(static member|member)","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"keyword.symbol.fsharp"},"3":{"name":"keyword.fsharp"}},"comments":"SRTP syntax support","end":"(\\\\))\\\\s*((?=,)|(?=\\\\=))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"begin":"(\\\\()","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"include":"#member_declaration"}]},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"(\\\\^[[:alpha:]0-9\'._]+)"},{"include":"#variables"},{"include":"#keywords"}]},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"(\\\\^[[:alpha:]0-9\'._]+)"},{"match":"\\\\b(and|when|or)\\\\b","name":"keyword.fsharp"},{"match":"(\\\\(|\\\\))","name":"keyword.symbol.fsharp"},{"captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"entity.name.type.fsharp"}},"match":"(\\\\?{0,1})([[:alpha:]0-9\'`^._]+|``[[:alpha:]0-9\'`^:,._ ]+``)\\\\s*(:{0,1})(\\\\s*([?[:alpha:]0-9\'`<>._ ]+)){0,1}"},{"include":"#keywords"}]},"modules":{"patterns":[{"begin":"\\\\b(namespace global)|\\\\b(namespace|module)\\\\s*(public|internal|private|rec)?\\\\s+([[:alpha:]|``][[:alpha:]0-9\'_. ]*)","beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"keyword.fsharp"},"3":{"name":"storage.modifier.fsharp"},"4":{"name":"entity.name.section.fsharp"}},"end":"(\\\\s?=|\\\\s|$)","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"name":"entity.name.section.fsharp","patterns":[{"captures":{"1":{"name":"punctuation.separator.namespace-reference.fsharp"},"2":{"name":"entity.name.section.fsharp"}},"match":"(\\\\.)([A-Z][[:alpha:]0-9\'_]*)","name":"entity.name.section.fsharp"}]},{"begin":"\\\\b(open type|open)\\\\s+([[:alpha:]|``][[:alpha:]0-9\'_]*)(?=(\\\\.[A-Z][[:alpha:]0-9_]*)*)","beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"entity.name.section.fsharp"}},"end":"(\\\\s|$)","name":"namespace.open.fsharp","patterns":[{"captures":{"1":{"name":"punctuation.separator.namespace-reference.fsharp"},"2":{"name":"entity.name.section.fsharp"}},"match":"(\\\\.)([[:alpha:]][[:alpha:]0-9\'_]*)","name":"entity.name.section.fsharp"},{"include":"#comments"}]},{"begin":"^\\\\s*(module)\\\\s+([A-Z][[:alpha:]0-9\'_]*)\\\\s*(=)\\\\s*([A-Z][[:alpha:]0-9\'_]*)","beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"entity.name.type.namespace.fsharp"},"3":{"name":"keyword.symbol.fsharp"},"4":{"name":"entity.name.section.fsharp"}},"end":"(\\\\s|$)","name":"namespace.alias.fsharp","patterns":[{"captures":{"1":{"name":"punctuation.separator.namespace-reference.fsharp"},"2":{"name":"entity.name.section.fsharp"}},"match":"(\\\\.)([A-Z][[:alpha:]0-9\'_]*)","name":"entity.name.section.fsharp"}]}]},"record_declaration":{"patterns":[{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(?<=\\\\})","patterns":[{"include":"#comments"},{"begin":"(((mutable)\\\\s[[:alpha:]]+)|[[:alpha:]0-9\'`<>^._]*)\\\\s*((?<!:):(?!:))\\\\s*","beginCaptures":{"3":{"name":"keyword.fsharp"},"4":{"name":"keyword.symbol.fsharp"}},"end":"$|(;|\\\\})","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"include":"#comments"},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"([[:alpha:]0-9\'`^_ ]+)"},{"include":"#keywords"}]},{"include":"#compiler_directives"},{"include":"#constants"},{"include":"#strings"},{"include":"#chars"},{"include":"#double_tick"},{"include":"#definition"},{"include":"#attributes"},{"include":"#anonymous_functions"},{"include":"#keywords"},{"include":"#cexprs"},{"include":"#text"}]}]},"record_signature":{"patterns":[{"captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"}},"match":"[[:alpha:]0-9\'`^_ ]+(=)([[:alpha:]0-9\'`^_ ]+)"},{"begin":"({)","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(})","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"}},"match":"[[:alpha:]0-9\'`^_ ]+(=)([[:alpha:]0-9\'`^_ ]+)"},{"include":"#record_signature"}]},{"include":"#keywords"}]},"records":{"patterns":[{"begin":"\\\\b(type)[\\\\s]+(private|internal|public)?\\\\s*","beginCaptures":{"1":{"name":"keyword.fsharp"},"2":{"name":"storage.modifier.fsharp"}},"end":"\\\\s*((with)|((as)\\\\s+([[:alpha:]0-9\']+))|(=)|[\\\\n=]|(\\\\(\\\\)))","endCaptures":{"2":{"name":"keyword.fsharp"},"3":{"name":"keyword.fsharp"},"4":{"name":"keyword.fsharp"},"5":{"name":"variable.parameter.fsharp"},"6":{"name":"keyword.symbol.fsharp"},"7":{"name":"keyword.symbol.fsharp"}},"name":"record.fsharp","patterns":[{"include":"#comments"},{"include":"#attributes"},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"([[:alpha:]0-9\'^._]+|``[[:alpha:]0-9\'`^:,._ ]+``)"},{"begin":"(<)","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"((?<!:)>)","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"((\'|\\\\^)``[[:alpha:]0-9`^:,._ ]+``|(\'|\\\\^)[[:alpha:]0-9`^:._]+)"},{"match":"\\\\b(interface|with|abstract|and|when|or|not|struct|equality|comparison|unmanaged|delegate|enum)\\\\b","name":"keyword.fsharp"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"captures":{"1":{"name":"keyword.fsharp"}},"match":"(static member|member|new)"},{"include":"#common_binding_definition"}]},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"comments":"Here we need the \\\\w modifier in order to check that the words isn\'t blacklisted","match":"([\\\\w0-9\'`^._]+)"},{"include":"#keywords"}]},{"captures":{"1":{"name":"storage.modifier.fsharp"}},"match":"\\\\s*(private|internal|public)"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"\\\\s*(?=(=)|[\\\\n=]|(\\\\(\\\\))|(as))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"include":"#member_declaration"}]},{"include":"#keywords"}]}]},"string_formatter":{"patterns":[{"captures":{"1":{"name":"keyword.format.specifier.fsharp"}},"match":"(%0?-?(\\\\d+)?((a|t)|(\\\\.\\\\d+)?(f|F|e|E|g|G|M)|(b|c|s|d|i|x|X|o|u)|(s|b|O)|(\\\\+?A)))","name":"entity.name.type.format.specifier.fsharp"}]},"strings":{"patterns":[{"begin":"(?=[^\\\\\\\\])(@\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.fsharp"}},"end":"(\\")(?!\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.fsharp"}},"name":"string.quoted.literal.fsharp","patterns":[{"match":"\\"(\\")","name":"constant.character.string.escape.fsharp"}]},{"begin":"(?=[^\\\\\\\\])(\\"\\"\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.fsharp"}},"end":"(\\"\\"\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.fsharp"}},"name":"string.quoted.triple.fsharp","patterns":[{"include":"#string_formatter"}]},{"begin":"(?=[^\\\\\\\\])(\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.fsharp"}},"end":"(\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.fsharp"}},"name":"string.quoted.double.fsharp","patterns":[{"match":"\\\\\\\\$[ \\\\t]*","name":"punctuation.separator.string.ignore-eol.fsharp"},{"match":"\\\\\\\\([\'\\"\\\\\\\\abfnrtv]|([01][0-9][0-9]|2[0-4][0-9]|25[0-5])|(x[0-9a-fA-F]{2})|(u[0-9a-fA-F]{4})|(U00(0[0-9a-fA-F]|10)[0-9a-fA-F]{4}))","name":"constant.character.string.escape.fsharp"},{"match":"\\\\\\\\(([0-9]{1,3})|(x[^\\\\s]{0,2})|(u[^\\\\s]{0,4})|(U[^\\\\s]{0,8})|[^\\\\s])","name":"invalid.illegal.character.string.fsharp"},{"include":"#string_formatter"}]}]},"strp_inlined":{"patterns":[{"begin":"(\\\\()","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"include":"#strp_inlined_body"}]}]},"strp_inlined_body":{"patterns":[{"include":"#comments"},{"include":"#anonymous_functions"},{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"(\\\\^[[:alpha:]0-9\'._]+)"},{"match":"\\\\b(and|when|or)\\\\b","name":"keyword.fsharp"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"include":"#strp_inlined_body"}]},{"captures":{"1":{"name":"keyword.fsharp"},"2":{"name":"variable.fsharp"},"3":{"name":"keyword.symbol.fsharp"}},"match":"(static member|member)\\\\s*([[:alpha:]0-9\'`<>^._]+|``[[:alpha:]0-9\' <>^._]+``)\\\\s*(:)"},{"include":"#compiler_directives"},{"include":"#constants"},{"include":"#strings"},{"include":"#chars"},{"include":"#double_tick"},{"include":"#keywords"},{"include":"#text"},{"include":"#definition"},{"include":"#attributes"},{"include":"#keywords"},{"include":"#cexprs"},{"include":"#text"}]},"text":{"patterns":[{"match":"\\\\\\\\","name":"text.fsharp"}]},"tuple_signature":{"patterns":[{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"(([?[:alpha:]0-9\'`^._ ]+))+"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.symbol.fsharp"}},"patterns":[{"captures":{"1":{"name":"entity.name.type.fsharp"}},"match":"(([?[:alpha:]0-9\'`^._ ]+))+"},{"include":"#tuple_signature"}]},{"include":"#keywords"}]},"variables":{"patterns":[{"match":"\\\\(\\\\)","name":"keyword.symbol.fsharp"},{"captures":{"1":{"name":"keyword.symbol.fsharp"},"2":{"name":"variable.parameter.fsharp"}},"match":"(\\\\?{0,1})(``[[:alpha:]0-9\'`^:,._ ]+``|(?!private|struct\\\\b)\\\\b[\\\\w[:alpha:]0-9\'`<>^._ ]+)"}]}},"scopeName":"source.fsharp","embeddedLangs":["markdown"],"aliases":["f#","fs"]}')),zne=[...Wo,Gne]});var OL={};x(OL,{default:()=>TB});var Une,TB,qB=_(()=>{Une=Object.freeze(JSON.parse('{"displayName":"GDShader","fileTypes":["gdshader"],"name":"gdshader","patterns":[{"include":"#any"}],"repository":{"any":{"patterns":[{"include":"#comment"},{"include":"#enclosed"},{"include":"#classifier"},{"include":"#definition"},{"include":"#keyword"},{"include":"#element"},{"include":"#separator"},{"include":"#operator"}]},"arraySize":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.bracket.gdshader"}},"end":"\\\\]","name":"meta.array-size.gdshader","patterns":[{"include":"#comment"},{"include":"#keyword"},{"include":"#element"},{"include":"#separator"}]},"classifier":{"begin":"(?=\\\\b(?:shader_type|render_mode)\\\\b)","end":"(?<=;)","name":"meta.classifier.gdshader","patterns":[{"include":"#comment"},{"include":"#keyword"},{"include":"#identifierClassification"},{"include":"#separator"}]},"classifierKeyword":{"match":"\\\\b(?:shader_type|render_mode)\\\\b","name":"keyword.language.classifier.gdshader"},"comment":{"patterns":[{"include":"#commentLine"},{"include":"#commentBlock"}]},"commentBlock":{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.gdshader"},"commentLine":{"begin":"//","end":"$","name":"comment.line.double-slash.gdshader"},"constantFloat":{"match":"\\\\b(?:E|PI|TAU)\\\\b","name":"constant.language.float.gdshader"},"constructor":{"match":"\\\\b[a-zA-Z_]\\\\w*(?=\\\\s*\\\\[\\\\s*\\\\w*\\\\s*\\\\]\\\\s*[(])|\\\\b[A-Z]\\\\w*(?=\\\\s*[(])","name":"entity.name.type.constructor.gdshader"},"controlKeyword":{"match":"\\\\b(?:if|else|do|while|for|continue|break|switch|case|default|return|discard)\\\\b","name":"keyword.control.gdshader"},"definition":{"patterns":[{"include":"#structDefinition"}]},"element":{"patterns":[{"include":"#literalFloat"},{"include":"#literalInt"},{"include":"#literalBool"},{"include":"#identifierType"},{"include":"#constructor"},{"include":"#processorFunction"},{"include":"#identifierFunction"},{"include":"#swizzling"},{"include":"#identifierField"},{"include":"#constantFloat"},{"include":"#languageVariable"},{"include":"#identifierVariable"}]},"enclosed":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.parenthesis.gdshader"}},"end":"\\\\)","name":"meta.parenthesis.gdshader","patterns":[{"include":"#any"}]},"fieldDefinition":{"begin":"\\\\b[a-zA-Z_]\\\\w*\\\\b","beginCaptures":{"0":{"patterns":[{"include":"#typeKeyword"},{"match":".+","name":"entity.name.type.gdshader"}]}},"end":"(?<=;)","name":"meta.definition.field.gdshader","patterns":[{"include":"#comment"},{"include":"#keyword"},{"include":"#arraySize"},{"include":"#fieldName"},{"include":"#any"}]},"fieldName":{"match":"\\\\b[a-zA-Z_]\\\\w*\\\\b","name":"entity.name.variable.field.gdshader"},"hintKeyword":{"match":"\\\\b(?:source_color|hint_(?:color|range|(?:black_)?albedo|normal|(?:default_)?(?:white|black)|aniso|anisotropy|roughness_(?:[rgba]|normal|gray))|filter_(?:nearest|linear)(?:_mipmap(?:_anisotropic)?)?|repeat_(?:en|dis)able)\\\\b","name":"support.type.annotation.gdshader"},"identifierClassification":{"match":"\\\\b[a-z_]+\\\\b","name":"entity.other.inherited-class.gdshader"},"identifierField":{"captures":{"1":{"name":"punctuation.accessor.gdshader"},"2":{"name":"entity.name.variable.field.gdshader"}},"match":"([.])\\\\s*([a-zA-Z_]\\\\w*)\\\\b(?!\\\\s*\\\\()"},"identifierFunction":{"match":"\\\\b[a-zA-Z_]\\\\w*(?=(?:\\\\s|/\\\\*(?:\\\\*(?!/)|[^*])*\\\\*/)*[(])","name":"entity.name.function.gdshader"},"identifierType":{"match":"\\\\b[a-zA-Z_]\\\\w*(?=(?:\\\\s*\\\\[\\\\s*\\\\w*\\\\s*\\\\])?\\\\s+[a-zA-Z_]\\\\w*\\\\b)","name":"entity.name.type.gdshader"},"identifierVariable":{"match":"\\\\b[a-zA-Z_]\\\\w*\\\\b","name":"variable.name.gdshader"},"keyword":{"patterns":[{"include":"#classifierKeyword"},{"include":"#structKeyword"},{"include":"#controlKeyword"},{"include":"#modifierKeyword"},{"include":"#precisionKeyword"},{"include":"#typeKeyword"},{"include":"#hintKeyword"}]},"languageVariable":{"match":"\\\\b(?:[A-Z][A-Z_0-9]*)\\\\b","name":"variable.language.gdshader"},"literalBool":{"match":"\\\\b(?:false|true)\\\\b","name":"constant.language.boolean.gdshader"},"literalFloat":{"match":"\\\\b(?:\\\\d+[eE][-+]?\\\\d+|(?:\\\\d*[.]\\\\d+|\\\\d+[.])(?:[eE][-+]?\\\\d+)?)[fF]?","name":"constant.numeric.float.gdshader"},"literalInt":{"match":"\\\\b(?:0[xX][0-9A-Fa-f]+|\\\\d+[uU]?)\\\\b","name":"constant.numeric.integer.gdshader"},"modifierKeyword":{"match":"\\\\b(?:const|global|instance|uniform|varying|in|out|inout|flat|smooth)\\\\b","name":"storage.modifier.gdshader"},"operator":{"match":"\\\\<\\\\<\\\\=?|\\\\>\\\\>\\\\=?|[-+*/&|<>=!]\\\\=|\\\\&\\\\&|[|][|]|[-+~!*/%<>&^|=]","name":"keyword.operator.gdshader"},"precisionKeyword":{"match":"\\\\b(?:low|medium|high)p\\\\b","name":"storage.type.built-in.primitive.precision.gdshader"},"processorFunction":{"match":"\\\\b(?:vertex|fragment|light|start|process|sky|fog)(?=(?:\\\\s|/\\\\*(?:\\\\*(?!/)|[^*])*\\\\*/)*[(])","name":"support.function.gdshader"},"separator":{"patterns":[{"match":"[.]","name":"punctuation.accessor.gdshader"},{"include":"#separatorComma"},{"match":"[;]","name":"punctuation.terminator.statement.gdshader"},{"match":"[:]","name":"keyword.operator.type.annotation.gdshader"}]},"separatorComma":{"match":"[,]","name":"punctuation.separator.comma.gdshader"},"structDefinition":{"begin":"(?=\\\\b(?:struct)\\\\b)","end":"(?<=;)","patterns":[{"include":"#comment"},{"include":"#keyword"},{"include":"#structName"},{"include":"#structDefinitionBlock"},{"include":"#separator"}]},"structDefinitionBlock":{"begin":"\\\\{","captures":{"0":{"name":"punctuation.definition.block.struct.gdshader"}},"end":"\\\\}","name":"meta.definition.block.struct.gdshader","patterns":[{"include":"#comment"},{"include":"#precisionKeyword"},{"include":"#fieldDefinition"},{"include":"#keyword"},{"include":"#any"}]},"structKeyword":{"match":"\\\\b(?:struct)\\\\b","name":"keyword.other.struct.gdshader"},"structName":{"match":"\\\\b[a-zA-Z_]\\\\w*\\\\b","name":"entity.name.type.struct.gdshader"},"swizzling":{"captures":{"1":{"name":"punctuation.accessor.gdshader"},"2":{"name":"variable.other.property.gdshader"}},"match":"([.])\\\\s*([xyzw]{2,4}|[rgba]{2,4}|[stpq]{2,4})\\\\b"},"typeKeyword":{"match":"\\\\b(?:void|bool|[biu]?vec[234]|u?int|float|mat[234]|[iu]?sampler(?:3D|2D(?:Array)?)|samplerCube)\\\\b","name":"support.type.gdshader"}},"scopeName":"source.gdshader"}')),TB=[Une]});var NL={};x(NL,{default:()=>GB});var Hne,GB,zB=_(()=>{Hne=Object.freeze(JSON.parse(`{"displayName":"GDScript","fileTypes":["gd"],"name":"gdscript","patterns":[{"include":"#statement"},{"include":"#expression"}],"repository":{"annotated_parameter":{"begin":"\\\\s*([a-zA-Z_]\\\\w*)\\\\s*(:)\\\\s*([a-zA-Z_]\\\\w*)?","beginCaptures":{"1":{"name":"variable.parameter.function.language.gdscript"},"2":{"name":"punctuation.separator.annotation.gdscript"},"3":{"name":"entity.name.type.class.gdscript"}},"end":"(,)|(?=\\\\))","endCaptures":{"1":{"name":"punctuation.separator.parameters.gdscript"}},"patterns":[{"include":"#base_expression"},{"match":"=(?!=)","name":"keyword.operator.assignment.gdscript"}]},"annotations":{"captures":{"1":{"name":"entity.name.function.decorator.gdscript"},"2":{"name":"entity.name.function.decorator.gdscript"}},"match":"(@)(export|export_group|export_color_no_alpha|export_custom|export_dir|export_enum|export_exp_easing|export_file|export_flags|export_flags_2d_navigation|export_flags_2d_physics|export_flags_2d_render|export_flags_3d_navigation|export_flags_3d_physics|export_flags_3d_render|export_global_dir|export_global_file|export_multiline|export_node_path|export_placeholder|export_range|export_storage|icon|onready|rpc|tool|warning_ignore|static_unload)\\\\b"},"any_method":{"match":"\\\\b([A-Za-z_]\\\\w*)\\\\b(?=\\\\s*(?:[(]))","name":"entity.name.function.other.gdscript"},"any_property":{"captures":{"1":{"name":"punctuation.accessor.gdscript"},"2":{"name":"constant.language.gdscript"},"3":{"name":"variable.other.property.gdscript"}},"match":"\\\\b(\\\\.)\\\\s*(?<![@\\\\$#%])(?:([A-Z_][A-Z_0-9]*)|([A-Za-z_]\\\\w*))\\\\b(?![(])"},"any_variable":{"match":"\\\\b(?<![@\\\\$#%])([A-Za-z_]\\\\w*)\\\\b(?![(])","name":"variable.other.gdscript"},"arithmetic_operator":{"match":"->|\\\\+=|-=|\\\\*=|\\\\^=|/=|%=|&=|~=|\\\\|=|\\\\*\\\\*|\\\\*|/|%|\\\\+|-","name":"keyword.operator.arithmetic.gdscript"},"assignment_operator":{"match":"=","name":"keyword.operator.assignment.gdscript"},"base_expression":{"patterns":[{"include":"#builtin_get_node_shorthand"},{"include":"#nodepath_object"},{"include":"#nodepath_function"},{"include":"#strings"},{"include":"#builtin_classes"},{"include":"#const_vars"},{"include":"#keywords"},{"include":"#operators"},{"include":"#lambda_declaration"},{"include":"#class_declaration"},{"include":"#variable_declaration"},{"include":"#signal_declaration_bare"},{"include":"#signal_declaration"},{"include":"#function_declaration"},{"include":"#statement_keyword"},{"include":"#assignment_operator"},{"include":"#in_keyword"},{"include":"#control_flow"},{"include":"#match_keyword"},{"include":"#curly_braces"},{"include":"#square_braces"},{"include":"#round_braces"},{"include":"#function_call"},{"include":"#comment"},{"include":"#self"},{"include":"#func"},{"include":"#letter"},{"include":"#numbers"},{"include":"#pascal_case_class"},{"include":"#line_continuation"}]},"bitwise_operator":{"match":"&|\\\\||<<=|>>=|<<|>>|\\\\^|~","name":"keyword.operator.bitwise.gdscript"},"boolean_operator":{"match":"(&&|\\\\|\\\\|)","name":"keyword.operator.boolean.gdscript"},"builtin_classes":{"match":"(?<![^.]\\\\.|:)\\\\b(Vector2|Vector2i|Vector3|Vector3i|Vector4|Vector4i|Color|Rect2|Rect2i|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|Signal|Callable|StringName|Quaternion|Projection|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedVector4Array|PackedColorArray|super)\\\\b","name":"entity.name.type.class.builtin.gdscript"},"builtin_get_node_shorthand":{"patterns":[{"include":"#builtin_get_node_shorthand_quoted"},{"include":"#builtin_get_node_shorthand_bare"},{"include":"#builtin_get_node_shorthand_bare_multi"}]},"builtin_get_node_shorthand_bare":{"captures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"constant.character.escape.gdscript"},"3":{"name":"constant.character.escape.gdscript"},"4":{"name":"constant.character.escape.gdscript"}},"match":"(?<!/\\\\s*)(\\\\$\\\\s*|%|\\\\$%\\\\s*)(/\\\\s*)?([a-zA-Z_]\\\\w*)\\\\b(?!\\\\s*/)","name":"meta.literal.nodepath.bare.gdscript"},"builtin_get_node_shorthand_bare_multi":{"begin":"(\\\\$\\\\s*|%|\\\\$%\\\\s*)(/\\\\s*)?([a-zA-Z_]\\\\w*)","beginCaptures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"constant.character.escape.gdscript"},"3":{"name":"constant.character.escape.gdscript"}},"end":"(?!\\\\s*/\\\\s*%?\\\\s*[a-zA-Z_]\\\\w*)","name":"meta.literal.nodepath.bare.gdscript","patterns":[{"captures":{"1":{"name":"constant.character.escape.gdscript"},"2":{"name":"keyword.control.flow.gdscript"},"3":{"name":"constant.character.escape.gdscript"}},"match":"(/)\\\\s*(%)?\\\\s*([a-zA-Z_]\\\\w*)\\\\s*"}]},"builtin_get_node_shorthand_quoted":{"begin":"(?:(\\\\$|%)|(&|\\\\^|@))(\\"|')","beginCaptures":{"1":{"name":"keyword.control.flow.gdscript"},"2":{"name":"variable.other.enummember.gdscript"}},"end":"(\\\\3)","name":"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape.gdscript","patterns":[{"match":"%","name":"keyword.control.flow"}]},"class_declaration":{"captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"class.other.gdscript"}},"match":"(?<=^class)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*(?=:)"},"class_enum":{"captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"variable.other.enummember.gdscript"}},"match":"\\\\b([A-Z][a-zA-Z_0-9]*)\\\\.([A-Z_0-9]+)"},"class_is":{"captures":{"1":{"name":"storage.type.is.gdscript"},"2":{"name":"entity.name.type.class.gdscript"}},"match":"\\\\s+(is)\\\\s+([a-zA-Z_]\\\\w*)"},"class_name":{"captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"class.other.gdscript"}},"match":"(?<=class_name)\\\\s+([a-zA-Z_]\\\\w*(\\\\.([a-zA-Z_]\\\\w*))?)"},"class_new":{"captures":{"1":{"name":"entity.name.type.class.gdscript"},"2":{"name":"storage.type.new.gdscript"},"3":{"name":"punctuation.parenthesis.begin.gdscript"}},"match":"\\\\b([a-zA-Z_]\\\\w*).(new)\\\\("},"comment":{"captures":{"1":{"name":"punctuation.definition.comment.number-sign.gdscript"}},"match":"(##|#).*$\\\\n?","name":"comment.line.number-sign.gdscript"},"compare_operator":{"match":"<=|>=|==|<|>|!=|!","name":"keyword.operator.comparison.gdscript"},"const_vars":{"match":"\\\\b([A-Z_][A-Z_0-9]*)\\\\b","name":"variable.other.constant.gdscript"},"control_flow":{"match":"\\\\b(?:if|elif|else|while|break|continue|pass|return|when|yield|await)\\\\b","name":"keyword.control.gdscript"},"curly_braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dict.begin.gdscript"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dict.end.gdscript"}},"patterns":[{"include":"#base_expression"},{"include":"#any_variable"}]},"expression":{"patterns":[{"include":"#base_expression"},{"include":"#getter_setter_godot4"},{"include":"#assignment_operator"},{"include":"#annotations"},{"include":"#class_name"},{"include":"#builtin_classes"},{"include":"#class_new"},{"include":"#class_is"},{"include":"#class_enum"},{"include":"#any_method"},{"include":"#any_variable"},{"include":"#any_property"}]},"extends_statement":{"captures":{"1":{"name":"keyword.language.gdscript"},"2":{"name":"entity.other.inherited-class.gdscript"}},"match":"(extends)\\\\s+([a-zA-Z_]\\\\w*\\\\.[a-zA-Z_]\\\\w*)?"},"func":{"match":"\\\\bfunc\\\\b","name":"keyword.language.gdscript"},"function_arguments":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.gdscript"}},"contentName":"meta.function.parameters.gdscript","end":"(?=\\\\))(?!\\\\)\\\\s*\\\\()","patterns":[{"match":"(,)","name":"punctuation.separator.arguments.gdscript"},{"captures":{"1":{"name":"variable.parameter.function-call.gdscript"},"2":{"name":"keyword.operator.assignment.gdscript"}},"match":"\\\\b([a-zA-Z_]\\\\w*)\\\\s*(=)(?!=)"},{"match":"=(?!=)","name":"keyword.operator.assignment.gdscript"},{"include":"#base_expression"},{"captures":{"1":{"name":"punctuation.definition.arguments.end.gdscript"},"2":{"name":"punctuation.definition.arguments.begin.gdscript"}},"match":"\\\\s*(\\\\))\\\\s*(\\\\()"},{"include":"#letter"},{"include":"#any_variable"},{"include":"#any_property"},{"include":"#keywords"}]},"function_call":{"begin":"(?=\\\\b[a-zA-Z_]\\\\w*\\\\b\\\\()","comment":"Regular function call of the type \\"name(args)\\"","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.gdscript"}},"name":"meta.function-call.gdscript","patterns":[{"include":"#function_name"},{"include":"#function_arguments"}]},"function_declaration":{"begin":"\\\\s*(func)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}},"end":"(:)","endCaptures":{"1":{"name":"punctuation.section.function.begin.gdscript"}},"name":"meta.function.gdscript","patterns":[{"include":"#parameters"},{"include":"#line_continuation"},{"include":"#base_expression"}]},"function_name":{"patterns":[{"include":"#builtin_classes"},{"match":"\\\\b(preload)\\\\b","name":"keyword.language.gdscript"},{"comment":"Some color schemas support meta.function-call.generic scope","match":"\\\\b([a-zA-Z_]\\\\w*)\\\\b","name":"entity.name.function.gdscript"}]},"getter_setter_godot4":{"patterns":[{"captures":{"1":{"name":"entity.name.function.gdscript"}},"match":"\\\\b(get):"},{"begin":"\\\\s+(set)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.gdscript"}},"end":"(:|(?=[#'\\"\\\\n]))","name":"meta.function.gdscript","patterns":[{"include":"#parameters"},{"include":"#line_continuation"}]}]},"in_keyword":{"patterns":[{"begin":"\\\\b(for)\\\\b","captures":{"1":{"name":"keyword.control.gdscript"}},"end":":","patterns":[{"match":"\\\\bin\\\\b","name":"keyword.control.gdscript"},{"include":"#base_expression"},{"include":"#any_variable"},{"include":"#any_property"}]},{"match":"\\\\bin\\\\b","name":"keyword.operator.wordlike.gdscript"}]},"keywords":{"match":"\\\\b(?:class|class_name|abstract|is|onready|tool|static|export|as|void|enum|assert|breakpoint|sync|remote|master|puppet|slave|remotesync|mastersync|puppetsync|trait|namespace)\\\\b","name":"keyword.language.gdscript"},"lambda_declaration":{"begin":"(func)\\\\s?(?=\\\\()","beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}},"end":"(:|(?=[#'\\"\\\\n]))","end2":"(\\\\s*(\\\\-\\\\>)\\\\s*(void\\\\w*)|([a-zA-Z_]\\\\w*)\\\\s*\\\\:)","endCaptures2":{"1":{"name":"punctuation.separator.annotation.result.gdscript"},"2":{"name":"keyword.language.void.gdscript"},"3":{"name":"entity.name.type.class.gdscript markup.italic"}},"name":"meta.function.gdscript","patterns":[{"include":"#parameters"},{"include":"#line_continuation"},{"include":"#base_expression"},{"include":"#any_variable"},{"include":"#any_property"}]},"letter":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.gdscript"},"line_continuation":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.continuation.line.gdscript"},"2":{"name":"invalid.illegal.line.continuation.gdscript"}},"match":"(\\\\\\\\)\\\\s*(\\\\S.*$\\\\n?)"},{"begin":"(\\\\\\\\)\\\\s*$\\\\n?","beginCaptures":{"1":{"name":"punctuation.separator.continuation.line.gdscript"}},"end":"(?=^\\\\s*$)|(?!(\\\\s*[rR]?(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\"|\\\\'|\\\\\\"))|(\\\\G$))","patterns":[{"include":"#base_expression"}]}]},"loose_default":{"begin":"(=)","beginCaptures":{"1":{"name":"keyword.operator.gdscript"}},"end":"(,)|(?=\\\\))","endCaptures":{"1":{"name":"punctuation.separator.parameters.gdscript"}},"patterns":[{"include":"#base_expression"}]},"match_keyword":{"captures":{"1":{"name":"keyword.control.gdscript"}},"match":"^\\n\\\\s*(match)"},"nodepath_function":{"begin":"(get_node_or_null|has_node|has_node_and_resource|find_node|get_node)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.gdscript"},"2":{"name":"punctuation.definition.parameters.begin.gdscript"}},"contentName":"meta.function.parameters.gdscript","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.gdscript"}},"name":"meta.function.gdscript","patterns":[{"begin":"(\\"|')","end":"\\\\1","name":"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape","patterns":[{"match":"%","name":"keyword.control.flow"}]},{"include":"#base_expression"}]},"nodepath_object":{"begin":"(NodePath)\\\\s*(?:\\\\()","beginCaptures":{"1":{"name":"support.class.library.gdscript"}},"end":"(?:\\\\))","name":"meta.literal.nodepath.gdscript","patterns":[{"begin":"(\\"|')","end":"\\\\1","name":"string.quoted.gdscript constant.character.escape.gdscript","patterns":[{"match":"%","name":"keyword.control.flow.gdscript"}]}]},"numbers":{"patterns":[{"match":"0b[01_]+","name":"constant.numeric.integer.binary.gdscript"},{"match":"0x[0-9A-Fa-f_]+","name":"constant.numeric.integer.hexadecimal.gdscript"},{"match":"\\\\.[0-9][0-9_]*([eE][+-]?[0-9_]+)?","name":"constant.numeric.float.gdscript"},{"match":"([0-9][0-9_]*)?\\\\.[0-9_]*([eE][+-]?[0-9_]+)?","name":"constant.numeric.float.gdscript"},{"match":"[0-9][0-9_]*[eE][+-]?[0-9_]+","name":"constant.numeric.float.gdscript"},{"match":"[-]?[0-9][0-9_]*","name":"constant.numeric.integer.gdscript"}]},"operators":{"patterns":[{"include":"#wordlike_operator"},{"include":"#boolean_operator"},{"include":"#arithmetic_operator"},{"include":"#bitwise_operator"},{"include":"#compare_operator"}]},"parameters":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.gdscript"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.gdscript"}},"name":"meta.function.parameters.gdscript","patterns":[{"include":"#annotated_parameter"},{"captures":{"1":{"name":"variable.parameter.function.language.gdscript"},"2":{"name":"punctuation.separator.parameters.gdscript"}},"match":"([a-zA-Z_]\\\\w*)\\\\s*(?:(,)|(?=[)#\\\\n=]))"},{"include":"#comment"},{"include":"#loose_default"}]},"pascal_case_class":{"match":"\\\\b([A-Z]+[a-z_0-9]*([A-Z]?[a-z_0-9]+)*[A-Z]?)\\\\b","name":"entity.name.type.class.gdscript"},"round_braces":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.begin.gdscript"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.end.gdscript"}},"patterns":[{"include":"#base_expression"},{"include":"#any_variable"}]},"self":{"match":"\\\\bself\\\\b","name":"variable.language.gdscript"},"signal_declaration":{"begin":"\\\\s*(signal)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}},"end":"((?=[#'\\"\\\\n]))","name":"meta.signal.gdscript","patterns":[{"include":"#parameters"},{"include":"#line_continuation"}]},"signal_declaration_bare":{"captures":{"1":{"name":"keyword.language.gdscript storage.type.function.gdscript"},"2":{"name":"entity.name.function.gdscript"}},"match":"\\\\s*(signal)\\\\s+([a-zA-Z_]\\\\w*)(?=[\\\\n\\\\s])","name":"meta.signal.gdscript"},"square_braces":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.list.begin.gdscript"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.list.end.gdscript"}},"patterns":[{"include":"#base_expression"},{"include":"#any_variable"}]},"statement":{"patterns":[{"include":"#extends_statement"}]},"statement_keyword":{"patterns":[{"match":"\\\\b(?<!\\\\.)(continue|assert|break|elif|else|if|pass|return|while)\\\\b","name":"keyword.control.flow.gdscript"},{"match":"\\\\b(?<!\\\\.)(class)\\\\b","name":"storage.type.class.gdscript"},{"captures":{"1":{"name":"keyword.control.flow.gdscript"}},"match":"^\\\\s*(case|match)(?=\\\\s*([-+\\\\w\\\\d(\\\\[{'\\":#]|$))\\\\b"}]},"string_bracket_placeholders":{"patterns":[{"captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"},"3":{"name":"storage.type.format.gdscript"},"4":{"name":"storage.type.format.gdscript"}},"match":"({{|}}|(?:{\\\\w*(\\\\.[[:alpha:]_]\\\\w*|\\\\[[^\\\\]'\\"]+\\\\])*(![rsa])?(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)?}))","name":"meta.format.brace.gdscript"},{"captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"},"3":{"name":"storage.type.format.gdscript"},"4":{"name":"storage.type.format.gdscript"}},"match":"({\\\\w*(\\\\.[[:alpha:]_]\\\\w*|\\\\[[^\\\\]'\\"]+\\\\])*(![rsa])?(:)[^'\\"{}\\\\n]*(?:\\\\{[^'\\"}\\\\n]*?\\\\}[^'\\"{}\\\\n]*)*})","name":"meta.format.brace.gdscript"}]},"string_percent_placeholders":{"captures":{"1":{"name":"constant.character.format.placeholder.other.gdscript"}},"match":"(%(\\\\([\\\\w\\\\s]*\\\\))?[-+#0 ]*(\\\\d+|\\\\*)?(\\\\.(\\\\d+|\\\\*))?([hlL])?[diouxXeEfFgGcrsab%])","name":"meta.format.percent.gdscript"},"strings":{"begin":"(r)?(\\"\\"\\"|'''|\\"|')","beginCaptures":{"1":{"name":"constant.character.escape.gdscript"}},"end":"\\\\2","name":"string.quoted.gdscript","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.gdscript"},{"include":"#string_percent_placeholders"},{"include":"#string_bracket_placeholders"}]},"variable_declaration":{"begin":"\\\\b(?:(var)|(const))\\\\b","beginCaptures":{"1":{"name":"keyword.language.gdscript storage.type.var.gdscript"},"2":{"name":"keyword.language.gdscript storage.type.const.gdscript"}},"end":"$|;","name":"meta.variable.declaration.gdscript","patterns":[{"captures":{"1":{"name":"punctuation.separator.annotation.gdscript"},"2":{"name":"keyword.language.gdscript storage.type.const.gdscript"},"3":{"name":"entity.name.function.gdscript"}},"match":"(:)?\\\\s*(set|get)\\\\s+=\\\\s+([a-zA-Z_]\\\\w*)"},{"match":":=|=(?!=)","name":"keyword.operator.assignment.gdscript"},{"captures":{"1":{"name":"punctuation.separator.annotation.gdscript"},"2":{"name":"entity.name.type.class.gdscript"}},"match":"(:)\\\\s*([a-zA-Z_]\\\\w*)?"},{"captures":{"1":{"name":"keyword.language.gdscript storage.type.const.gdscript"},"2":{"name":"entity.name.function.gdscript"},"3":{"name":"entity.name.function.gdscript"}},"match":"(setget)\\\\s+([a-zA-Z_]\\\\w*)(?:[,]\\\\s*([a-zA-Z_]\\\\w*))?"},{"include":"#expression"},{"include":"#letter"},{"include":"#any_variable"},{"include":"#any_property"},{"include":"#keywords"}]},"wordlike_operator":{"match":"\\\\b(and|or|not)\\\\b","name":"keyword.operator.wordlike.gdscript"}},"scopeName":"source.gdscript"}`)),GB=[Hne]});var LL={};x(LL,{default:()=>Yne});var Zne,Yne,$L=_(()=>{qB();zB();Zne=Object.freeze(JSON.parse(`{"displayName":"GDResource","name":"gdresource","patterns":[{"include":"#embedded_shader"},{"include":"#embedded_gdscript"},{"include":"#comment"},{"include":"#heading"},{"include":"#key_value"}],"repository":{"comment":{"captures":{"1":{"name":"punctuation.definition.comment.gdresource"}},"match":"(;).*$\\\\n?","name":"comment.line.gdresource"},"data":{"patterns":[{"include":"#comment"},{"begin":"(?<!\\\\w)(\\\\{)\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.table.inline.gdresource"}},"end":"\\\\s*(\\\\})(?!\\\\w)","endCaptures":{"1":{"name":"punctuation.definition.table.inline.gdresource"}},"patterns":[{"include":"#key_value"},{"include":"#data"}]},{"begin":"(?<!\\\\w)(\\\\[)\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.array.gdresource"}},"end":"\\\\s*(\\\\])(?!\\\\w)","endCaptures":{"1":{"name":"punctuation.definition.array.gdresource"}},"patterns":[{"include":"#data"}]},{"begin":"\\"\\"\\"","end":"\\"\\"\\"","name":"string.quoted.triple.basic.block.gdresource","patterns":[{"match":"\\\\\\\\([btnfr\\"\\\\\\\\\\\\n/ ]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.escape.gdresource"},{"match":"\\\\\\\\[^btnfr/\\"\\\\\\\\\\\\n]","name":"invalid.illegal.escape.gdresource"}]},{"match":"\\"res:\\\\/\\\\/[^\\"\\\\\\\\]*(?:\\\\\\\\.[^\\"\\\\\\\\]*)*\\"","name":"support.function.any-method.gdresource"},{"match":"(?<=type=)\\"[^\\"\\\\\\\\]*(?:\\\\\\\\.[^\\"\\\\\\\\]*)*\\"","name":"support.class.library.gdresource"},{"match":"(?<=NodePath\\\\(|parent=|name=)\\"[^\\"\\\\\\\\]*(?:\\\\\\\\.[^\\"\\\\\\\\]*)*\\"","name":"constant.character.escape.gdresource"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.basic.line.gdresource","patterns":[{"match":"\\\\\\\\([btnfr\\"\\\\\\\\\\\\n/ ]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.escape.gdresource"},{"match":"\\\\\\\\[^btnfr/\\"\\\\\\\\\\\\n]","name":"invalid.illegal.escape.gdresource"}]},{"match":"'.*?'","name":"string.quoted.single.literal.line.gdresource"},{"match":"(?<!\\\\w)(true|false)(?!\\\\w)","name":"constant.language.gdresource"},{"match":"(?<!\\\\w)([\\\\+\\\\-]?(0|([1-9](([0-9]|_[0-9])+)?))(?:(?:\\\\.(0|([1-9](([0-9]|_[0-9])+)?)))?[eE][\\\\+\\\\-]?[1-9]_?[0-9]*|(?:\\\\.[0-9_]*)))(?!\\\\w)","name":"constant.numeric.float.gdresource"},{"match":"(?<!\\\\w)((?:[\\\\+\\\\-]?(0|([1-9](([0-9]|_[0-9])+)?))))(?!\\\\w)","name":"constant.numeric.integer.gdresource"},{"match":"(?<!\\\\w)([\\\\+\\\\-]?inf)(?!\\\\w)","name":"constant.numeric.inf.gdresource"},{"match":"(?<!\\\\w)([\\\\+\\\\-]?nan)(?!\\\\w)","name":"constant.numeric.nan.gdresource"},{"match":"(?<!\\\\w)((?:0x(([0-9a-fA-F](([0-9a-fA-F]|_[0-9a-fA-F])+)?))))(?!\\\\w)","name":"constant.numeric.hex.gdresource"},{"match":"(?<!\\\\w)(0o[0-7](_?[0-7])*)(?!\\\\w)","name":"constant.numeric.oct.gdresource"},{"match":"(?<!\\\\w)(0b[01](_?[01])*)(?!\\\\w)","name":"constant.numeric.bin.gdresource"},{"begin":"(?<!\\\\w)(Vector2|Vector2i|Vector3|Vector3i|Color|Rect2|Rect2i|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|Object|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|StringName|Quaternion|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedColorArray)(\\\\()\\\\s?","beginCaptures":{"1":{"name":"support.class.library.gdresource"}},"end":"\\\\s?(\\\\))","patterns":[{"include":"#key_value"},{"include":"#data"}]},{"begin":"(?<!\\\\w)(ExtResource|SubResource)(\\\\()\\\\s?","beginCaptures":{"1":{"name":"keyword.control.gdresource"}},"end":"\\\\s?(\\\\))","patterns":[{"include":"#key_value"},{"include":"#data"}]}]},"embedded_gdscript":{"begin":"(script/source) = \\"","beginCaptures":{"1":{"name":"variable.other.property.gdresource"}},"comment":"meta.embedded.block.gdscript","end":"\\"","patterns":[{"include":"source.gdscript"}]},"embedded_shader":{"begin":"(code) = \\"","beginCaptures":{"1":{"name":"variable.other.property.gdresource"}},"end":"\\"","name":"meta.embedded.block.gdshader","patterns":[{"include":"source.gdshader"}]},"heading":{"begin":"\\\\[([a-z_]*)\\\\s?","beginCaptures":{"1":{"name":"keyword.control.gdresource"}},"end":"\\\\]","patterns":[{"include":"#heading_properties"},{"include":"#data"}]},"heading_properties":{"patterns":[{"match":"(\\\\s*[A-Za-z_\\\\-][A-Za-z0-9_\\\\-]*\\\\s*=)(?=\\\\s*$)","name":"invalid.illegal.noValue.gdresource"},{"begin":"\\\\s*([A-Za-z_-][^\\\\s]*|\\".+\\"|'.+'|[0-9]+)\\\\s*(=)\\\\s*","beginCaptures":{"1":{"name":"variable.other.property.gdresource"},"2":{"name":"punctuation.definition.keyValue.gdresource"}},"end":"($|(?==)|\\\\,?|\\\\s*(?=\\\\}))","patterns":[{"include":"#data"}]}]},"key_value":{"patterns":[{"match":"(\\\\s*[A-Za-z_\\\\-][A-Za-z0-9_\\\\-]*\\\\s*=)(?=\\\\s*$)","name":"invalid.illegal.noValue.gdresource"},{"begin":"\\\\s*([A-Za-z_-][^\\\\s]*|\\".+\\"|'.+'|[0-9]+)\\\\s*(=)\\\\s*","beginCaptures":{"1":{"name":"variable.other.property.gdresource"},"2":{"name":"punctuation.definition.keyValue.gdresource"}},"end":"($|(?==)|\\\\,|\\\\s*(?=\\\\}))","patterns":[{"include":"#data"}]}]}},"scopeName":"source.gdresource","embeddedLangs":["gdshader","gdscript"]}`)),Yne=[...TB,...GB,Zne]});var RL={};x(RL,{default:()=>Kne});var Wne,Kne,jL=_(()=>{Wne=Object.freeze(JSON.parse(`{"displayName":"Genie","fileTypes":["gs"],"name":"genie","patterns":[{"include":"#code"}],"repository":{"code":{"patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#strings"},{"include":"#keywords"},{"include":"#types"},{"include":"#functions"},{"include":"#variables"}]},"comments":{"patterns":[{"captures":{"0":{"name":"punctuation.definition.comment.vala"}},"match":"/\\\\*\\\\*/","name":"comment.block.empty.vala"},{"include":"text.html.javadoc"},{"include":"#comments-inline"}]},"comments-inline":{"patterns":[{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.vala"}},"end":"\\\\*/","name":"comment.block.vala"},{"captures":{"1":{"name":"comment.line.double-slash.vala"},"2":{"name":"punctuation.definition.comment.vala"}},"match":"\\\\s*((//).*$\\\\n?)"}]},"constants":{"patterns":[{"match":"\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\\\b","name":"constant.numeric.vala"},{"match":"\\\\b([A-Z][A-Z0-9_]+)\\\\b","name":"variable.other.constant.vala"}]},"functions":{"patterns":[{"match":"(\\\\w+)(?=\\\\s*(<[\\\\s\\\\w.]+>\\\\s*)?\\\\()","name":"entity.name.function.vala"}]},"keywords":{"patterns":[{"match":"(?<=^|[^@\\\\w\\\\.])(as|do|if|in|is|of|or|to|and|def|for|get|isa|new|not|out|ref|set|try|var|case|dict|else|enum|init|list|lock|null|pass|prop|self|true|uses|void|weak|when|array|async|break|class|const|event|false|final|owned|print|super|raise|while|yield|assert|delete|downto|except|extern|inline|params|public|raises|return|sealed|sizeof|static|struct|typeof|default|dynamic|ensures|finally|private|unowned|virtual|abstract|continue|delegate|internal|override|readonly|requires|volatile|construct|errordomain|interface|namespace|protected|implements)\\\\b","name":"keyword.vala"},{"match":"(?<=^|[^@\\\\w\\\\.])(bool|double|float|unichar|char|uchar|int|uint|long|ulong|short|ushort|size_t|ssize_t|string|void|signal|int8|int16|int32|int64|uint8|uint16|uint32|uint64)\\\\b","name":"keyword.vala"},{"match":"(#if|#elif|#else|#endif)","name":"keyword.vala"}]},"strings":{"patterns":[{"begin":"\\"\\"\\"","end":"\\"\\"\\"","name":"string.quoted.triple.vala"},{"begin":"@\\"","end":"\\"","name":"string.quoted.interpolated.vala","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.vala"},{"match":"\\\\$\\\\w+","name":"constant.character.escape.vala"},{"match":"\\\\$\\\\(([^)(]|\\\\(([^)(]|\\\\([^)]*\\\\))*\\\\))*\\\\)","name":"constant.character.escape.vala"}]},{"begin":"\\"","end":"\\"","name":"string.quoted.double.vala","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.vala"}]},{"begin":"'","end":"'","name":"string.quoted.single.vala","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.vala"}]},{"match":"/((\\\\\\\\/)|([^/]))*/(?=\\\\s*[,;)\\\\.\\\\n])","name":"string.regexp.vala"}]},"types":{"patterns":[{"match":"(?<=^|[^@\\\\w\\\\.])(bool|double|float|unichar|char|uchar|int|uint|long|ulong|short|ushort|size_t|ssize_t|string|void|signal|int8|int16|int32|int64|uint8|uint16|uint32|uint64)\\\\b","name":"storage.type.primitive.vala"},{"match":"\\\\b([A-Z]+\\\\w*)\\\\b","name":"entity.name.type.vala"}]},"variables":{"patterns":[{"match":"\\\\b([_a-z]+\\\\w*)\\\\b","name":"variable.other.vala"}]}},"scopeName":"source.genie"}`)),Kne=[Wne]});var PL={};x(PL,{default:()=>Vne});var Jne,Vne,ML=_(()=>{Jne=Object.freeze(JSON.parse(`{"displayName":"Gherkin","fileTypes":["feature"],"firstLineMatch":"\uAE30\uB2A5|\u6A5F\u80FD|\u529F\u80FD|\u30D5\u30A3\u30FC\u30C1\u30E3|\u062E\u0627\u0635\u064A\u0629|\u05EA\u05DB\u05D5\u05E0\u05D4|\u0424\u0443\u043D\u043A\u0446\u0456\u043E\u043D\u0430\u043B|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u043D\u043E\u0441\u0442|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B|\u041E\u0441\u043E\u0431\u0438\u043D\u0430|\u0424\u0443\u043D\u043A\u0446\u0438\u044F|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u044C|\u0421\u0432\u043E\u0439\u0441\u0442\u0432\u043E|\u041C\u043E\u0433\u0443\u045B\u043D\u043E\u0441\u0442|\xD6zellik|W\u0142a\u015Bciwo\u015B\u0107|T\xEDnh n\u0103ng|Savyb\u0117|Po\u017Eiadavka|Po\u017Eadavek|Osobina|Ominaisuus|Omadus|OH HAI|Mogu\u0107nost|Mogucnost|Jellemz\u0151|F\u012B\u010Da|Funzionalit\xE0|Funktionalit\xE4t|Funkcionalnost|Funkcionalit\u0101te|Func\u021Bionalitate|Functionaliteit|Functionalitate|Funcionalitat|Funcionalidade|Fonctionnalit\xE9|Fitur|Ability|Business Need|Feature|Egenskap|Egenskab|Crikey|Caracter\xEDstica|Arwedd(.*)","foldingStartMarker":"^\\\\s*\\\\b(\uC608|\uC2DC\uB098\uB9AC\uC624 \uAC1C\uC694|\uC2DC\uB098\uB9AC\uC624|\uBC30\uACBD|\u80CC\u666F|\u5834\u666F\u5927\u7DB1|\u5834\u666F|\u573A\u666F\u5927\u7EB2|\u573A\u666F|\u5287\u672C\u5927\u7DB1|\u5287\u672C|\u4F8B\u5B50|\u4F8B|\u30C6\u30F3\u30D7\u30EC|\u30B7\u30CA\u30EA\u30AA\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8|\u30B7\u30CA\u30EA\u30AA\u30C6\u30F3\u30D7\u30EC|\u30B7\u30CA\u30EA\u30AA\u30A2\u30A6\u30C8\u30E9\u30A4\u30F3|\u30B7\u30CA\u30EA\u30AA|\u30B5\u30F3\u30D7\u30EB|\u0633\u064A\u0646\u0627\u0631\u064A\u0648 \u0645\u062E\u0637\u0637|\u0633\u064A\u0646\u0627\u0631\u064A\u0648|\u0627\u0645\u062B\u0644\u0629|\u0627\u0644\u062E\u0644\u0641\u064A\u0629|\u05EA\u05E8\u05D7\u05D9\u05E9|\u05EA\u05D1\u05E0\u05D9\u05EA \u05EA\u05E8\u05D7\u05D9\u05E9|\u05E8\u05E7\u05E2|\u05D3\u05D5\u05D2\u05DE\u05D0\u05D5\u05EA|\u0422\u0430\u0440\u0438\u0445|\u0421\u0446\u0435\u043D\u0430\u0440\u0456\u0439|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0458\u0438|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u043E|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0439 \u0441\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430\u0441\u0438|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0439|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0456\u044E|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u0458\u0430|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u044F|\u0421\u043A\u0438\u0446\u0430|\u0420\u0430\u043C\u043A\u0430 \u043D\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u0439|\u041F\u0440\u0438\u043C\u0435\u0440\u0438|\u041F\u0440\u0438\u043C\u0435\u0440|\u041F\u0440\u0438\u043A\u043B\u0430\u0434\u0438|\u041F\u0440\u0435\u0434\u044B\u0441\u0442\u043E\u0440\u0438\u044F|\u041F\u0440\u0435\u0434\u0438\u0441\u0442\u043E\u0440\u0438\u044F|\u041F\u043E\u0437\u0430\u0434\u0438\u043D\u0430|\u041F\u0435\u0440\u0435\u0434\u0443\u043C\u043E\u0432\u0430|\u041E\u0441\u043D\u043E\u0432\u0430|\u041C\u0438\u0441\u043E\u043B\u043B\u0430\u0440|\u041A\u043E\u043D\u0446\u0435\u043F\u0442|\u041A\u043E\u043D\u0442\u0435\u043A\u0441\u0442|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|\xD6rnekler|Za\u0142o\u017Cenia|Wharrimean is|Voorbeelden|Variantai|T\xECnh hu\u1ED1ng|The thing of it is|Tausta|Taust|Tapausaihio|Tapaus|Tapaukset|Szenariogrundriss|Szenario|Szablon scenariusza|Stsenaarium|Struktura scenarija|Skica|Skenario konsep|Skenario|Situ\u0101cija|Senaryo tasla\u011F\u0131|Senaryo|Sc\xE9n\xE1\u0159|Sc\xE9nario|Schema dello scenario|Scen\u0101rijs p\u0113c parauga|Scen\u0101rijs|Scen\xE1r|Scenariusz|Scenariul de \u015Fablon|Scenariul de sablon|Scenariu|Scenarios|Scenario Outline|Scenario Amlinellol|Scenario|Example|Scenarijus|Scenariji|Scenarijaus \u0161ablonas|Scenarijai|Scenarij|Scenarie|Rerefons|Raamstsenaarium|P\u0159\xEDklady|P\xE9ld\xE1k|Pr\xEDklady|Przyk\u0142ady|Primjeri|Primeri|Primer|Pozad\xED|Pozadina|Pozadie|Plan du sc\xE9nario|Plan du Sc\xE9nario|Piem\u0113ri|Pavyzd\u017Eiai|Paraugs|Osnova sc\xE9n\xE1\u0159e|Osnova|N\xE1\u010Drt Sc\xE9n\xE1\u0159e|N\xE1\u010Drt Scen\xE1ru|Mate|MISHUN SRSLY|MISHUN|K\u1ECBch b\u1EA3n|Kontext|Konteksts|Kontekstas|Kontekst|Koncept|Khung t\xECnh hu\u1ED1ng|Khung k\u1ECBch b\u1EA3n|Juhtumid|H\xE1tt\xE9r|Grundlage|Ge\xE7mi\u015F|Forgat\xF3k\xF6nyv v\xE1zlat|Forgat\xF3k\xF6nyv|Exemplos|Exemples|Exemplele|Exempel|Examples|Esquema do Cen\xE1rio|Esquema do Cenario|Esquema del escenario|Esquema de l'escenari|Esempi|Escenario|Escenari|Enghreifftiau|Eksempler|Ejemplos|EXAMPLZ|D\u1EEF li\u1EC7u|Dis is what went down|Dasar|Contoh|Contexto|Contexte|Contesto|Condi\u0163ii|Conditii|Cobber|Cen\xE1rio|Cenario|Cefndir|B\u1ED1i c\u1EA3nh|Blokes|Beispiele|Bakgrunn|Bakgrund|Baggrund|Background|B4|Antecedents|Antecedentes|All y'all|Achtergrond|Abstrakt Scenario|Abstract Scenario|Rule|Regla|R\xE8gle|Regel|Regra)","foldingStopMarker":"^\\\\s*$","name":"gherkin","patterns":[{"include":"#feature_element_keyword"},{"include":"#feature_keyword"},{"include":"#step_keyword"},{"include":"#strings_triple_quote"},{"include":"#strings_single_quote"},{"include":"#strings_double_quote"},{"include":"#comments"},{"include":"#tags"},{"include":"#scenario_outline_variable"},{"include":"#table"}],"repository":{"comments":{"captures":{"0":{"name":"comment.line.number-sign"}},"match":"^\\\\s*(#.*)"},"feature_element_keyword":{"captures":{"1":{"name":"keyword.language.gherkin.feature.scenario"},"2":{"name":"string.language.gherkin.scenario.title.title"}},"match":"^\\\\s*(\uC608|\uC2DC\uB098\uB9AC\uC624 \uAC1C\uC694|\uC2DC\uB098\uB9AC\uC624|\uBC30\uACBD|\u80CC\u666F|\u5834\u666F\u5927\u7DB1|\u5834\u666F|\u573A\u666F\u5927\u7EB2|\u573A\u666F|\u5287\u672C\u5927\u7DB1|\u5287\u672C|\u4F8B\u5B50|\u4F8B|\u30C6\u30F3\u30D7\u30EC|\u30B7\u30CA\u30EA\u30AA\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8|\u30B7\u30CA\u30EA\u30AA\u30C6\u30F3\u30D7\u30EC|\u30B7\u30CA\u30EA\u30AA\u30A2\u30A6\u30C8\u30E9\u30A4\u30F3|\u30B7\u30CA\u30EA\u30AA|\u30B5\u30F3\u30D7\u30EB|\u0633\u064A\u0646\u0627\u0631\u064A\u0648 \u0645\u062E\u0637\u0637|\u0633\u064A\u0646\u0627\u0631\u064A\u0648|\u0627\u0645\u062B\u0644\u0629|\u0627\u0644\u062E\u0644\u0641\u064A\u0629|\u05EA\u05E8\u05D7\u05D9\u05E9|\u05EA\u05D1\u05E0\u05D9\u05EA \u05EA\u05E8\u05D7\u05D9\u05E9|\u05E8\u05E7\u05E2|\u05D3\u05D5\u05D2\u05DE\u05D0\u05D5\u05EA|\u0422\u0430\u0440\u0438\u0445|\u0421\u0446\u0435\u043D\u0430\u0440\u0456\u0439|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0458\u0438|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u043E|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0439 \u0441\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430\u0441\u0438|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0439|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0456\u044E|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u0458\u0430|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u044F|\u0421\u043A\u0438\u0446\u0430|\u0420\u0430\u043C\u043A\u0430 \u043D\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u0439|\u041F\u0440\u0438\u043C\u0435\u0440\u0438|\u041F\u0440\u0438\u043C\u0435\u0440|\u041F\u0440\u0438\u043A\u043B\u0430\u0434\u0438|\u041F\u0440\u0435\u0434\u044B\u0441\u0442\u043E\u0440\u0438\u044F|\u041F\u0440\u0435\u0434\u0438\u0441\u0442\u043E\u0440\u0438\u044F|\u041F\u043E\u0437\u0430\u0434\u0438\u043D\u0430|\u041F\u0435\u0440\u0435\u0434\u0443\u043C\u043E\u0432\u0430|\u041E\u0441\u043D\u043E\u0432\u0430|\u041C\u0438\u0441\u043E\u043B\u043B\u0430\u0440|\u041A\u043E\u043D\u0446\u0435\u043F\u0442|\u041A\u043E\u043D\u0442\u0435\u043A\u0441\u0442|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|\xD6rnekler|Za\u0142o\u017Cenia|Wharrimean is|Voorbeelden|Variantai|T\xECnh hu\u1ED1ng|The thing of it is|Tausta|Taust|Tapausaihio|Tapaus|Tapaukset|Szenariogrundriss|Szenario|Szablon scenariusza|Stsenaarium|Struktura scenarija|Skica|Skenario konsep|Skenario|Situ\u0101cija|Senaryo tasla\u011F\u0131|Senaryo|Sc\xE9n\xE1\u0159|Sc\xE9nario|Schema dello scenario|Scen\u0101rijs p\u0113c parauga|Scen\u0101rijs|Scen\xE1r|Scenariusz|Scenariul de \u015Fablon|Scenariul de sablon|Scenariu|Scenarios|Scenario Outline|Scenario Amlinellol|Scenario|Example|Scenarijus|Scenariji|Scenarijaus \u0161ablonas|Scenarijai|Scenarij|Scenarie|Rerefons|Raamstsenaarium|P\u0159\xEDklady|P\xE9ld\xE1k|Pr\xEDklady|Przyk\u0142ady|Primjeri|Primeri|Primer|Pozad\xED|Pozadina|Pozadie|Plan du sc\xE9nario|Plan du Sc\xE9nario|Piem\u0113ri|Pavyzd\u017Eiai|Paraugs|Osnova sc\xE9n\xE1\u0159e|Osnova|N\xE1\u010Drt Sc\xE9n\xE1\u0159e|N\xE1\u010Drt Scen\xE1ru|Mate|MISHUN SRSLY|MISHUN|K\u1ECBch b\u1EA3n|Kontext|Konteksts|Kontekstas|Kontekst|Koncept|Khung t\xECnh hu\u1ED1ng|Khung k\u1ECBch b\u1EA3n|Juhtumid|H\xE1tt\xE9r|Grundlage|Ge\xE7mi\u015F|Forgat\xF3k\xF6nyv v\xE1zlat|Forgat\xF3k\xF6nyv|Exemplos|Exemples|Exemplele|Exempel|Examples|Esquema do Cen\xE1rio|Esquema do Cenario|Esquema del escenario|Esquema de l'escenari|Esempi|Escenario|Escenari|Enghreifftiau|Eksempler|Ejemplos|EXAMPLZ|D\u1EEF li\u1EC7u|Dis is what went down|Dasar|Contoh|Contexto|Contexte|Contesto|Condi\u0163ii|Conditii|Cobber|Cen\xE1rio|Cenario|Cefndir|B\u1ED1i c\u1EA3nh|Blokes|Beispiele|Bakgrunn|Bakgrund|Baggrund|Background|B4|Antecedents|Antecedentes|All y'all|Achtergrond|Abstrakt Scenario|Abstract Scenario|Rule|Regla|R\xE8gle|Regel|Regra):(.*)"},"feature_keyword":{"captures":{"1":{"name":"keyword.language.gherkin.feature"},"2":{"name":"string.language.gherkin.feature.title"}},"match":"^\\\\s*(\uAE30\uB2A5|\u6A5F\u80FD|\u529F\u80FD|\u30D5\u30A3\u30FC\u30C1\u30E3|\u062E\u0627\u0635\u064A\u0629|\u05EA\u05DB\u05D5\u05E0\u05D4|\u0424\u0443\u043D\u043A\u0446\u0456\u043E\u043D\u0430\u043B|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u043D\u043E\u0441\u0442|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B|\u041E\u0441\u043E\u0431\u0438\u043D\u0430|\u0424\u0443\u043D\u043A\u0446\u0438\u044F|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u044C|\u0421\u0432\u043E\u0439\u0441\u0442\u0432\u043E|\u041C\u043E\u0433\u0443\u045B\u043D\u043E\u0441\u0442|\xD6zellik|W\u0142a\u015Bciwo\u015B\u0107|T\xEDnh n\u0103ng|Savyb\u0117|Po\u017Eiadavka|Po\u017Eadavek|Osobina|Ominaisuus|Omadus|OH HAI|Mogu\u0107nost|Mogucnost|Jellemz\u0151|F\u012B\u010Da|Funzionalit\xE0|Funktionalit\xE4t|Funkcionalnost|Funkcionalit\u0101te|Func\u021Bionalitate|Functionaliteit|Functionalitate|Funcionalitat|Funcionalidade|Fonctionnalit\xE9|Fitur|Ability|Business Need|Feature|Ability|Egenskap|Egenskab|Crikey|Caracter\xEDstica|Arwedd):(.*)\\\\b"},"scenario_outline_variable":{"match":"<[a-zA-Z0-9 _-]*>","name":"variable.other"},"step_keyword":{"captures":{"1":{"name":"keyword.language.gherkin.feature.step"}},"match":"^\\\\s*(En |\u0648 |Y |E |\u0535\u057E |Ya |Too right |V\u0259 |H\u0259m |A |\u0418 |\u800C\u4E14 |\u5E76\u4E14 |\u540C\u65F6 |\u4E26\u4E14 |\u540C\u6642 |Ak |Epi |A tak\xE9 |Og |\u{1F602} |And |Kaj |Ja |Et que |Et qu' |Et |\u10D3\u10D0 |Und |\u039A\u03B1\u03B9 |\u0A85\u0AA8\u0AC7 |\u05D5\u05D2\u05DD |\u0914\u0930 |\u0924\u0925\u093E |\xC9s |Dan |Agus |\u304B\u3064 |Lan |\u0CAE\u0CA4\u0CCD\u0CA4\u0CC1 |'ej |latlh |\uADF8\uB9AC\uACE0 |AN |Un |Ir |an |a |\u041C\u04E9\u043D |\u0422\u044D\u0433\u044D\u044D\u0434 |Ond |7 |\u0A05\u0A24\u0A47 |Aye |Oraz |Si |\u0218i |\u015Ei |\u041A \u0442\u043E\u043C\u0443 \u0436\u0435 |\u0422\u0430\u043A\u0436\u0435 |An |A tie\u017E |A taktie\u017E |A z\xE1rove\u0148 |In |Ter |Och |\u0BAE\u0BC7\u0BB2\u0BC1\u0BAE\u0BCD |\u0BAE\u0BB1\u0BCD\u0BB1\u0BC1\u0BAE\u0BCD |\u04BA\u04D9\u043C |\u0412\u04D9 |\u0C2E\u0C30\u0C3F\u0C2F\u0C41 |\u0E41\u0E25\u0E30 |Ve |\u0406 |\u0410 \u0442\u0430\u043A\u043E\u0436 |\u0422\u0430 |\u0627\u0648\u0631 |\u0412\u0430 |V\xE0 |Maar |\u0644\u0643\u0646 |Pero |\u0532\u0561\u0575\u0581 |Peru |Yeah nah |Amma |Ancaq |Ali |\u041D\u043E |Per\xF2 |\u4F46\u662F |Men |Ale |\u{1F614} |But |Sed |Kuid |Mutta |Mais que |Mais qu' |Mais |\u10DB\u10D0\u10D2\xAD\u10E0\u10D0\u10DB |Aber |\u0391\u03BB\u03BB\u03AC |\u0AAA\u0AA3 |\u05D0\u05D1\u05DC |\u092A\u0930 |\u092A\u0930\u0928\u094D\u0924\u0941 |\u0915\u093F\u0928\u094D\u0924\u0941 |De |En |Tapi |Ach |Ma |\u3057\u304B\u3057 |\u4F46\u3057 |\u305F\u3060\u3057 |Nanging |Ananging |\u0C86\u0CA6\u0CB0\u0CC6 |'ach |'a |\uD558\uC9C0\uB9CC |\uB2E8 |BUT |Bet |awer |m\xE4 |No |Tetapi |\u0413\u044D\u0445\u0434\u044D\u044D |\u0425\u0430\u0440\u0438\u043D |Ac |\u0A2A\u0A30 |\u0627\u0645\u0627 |Avast! |Mas |Dar |\u0410 |\u0418\u043D\u0430\u0447\u0435 |Buh |\u0410\u043B\u0438 |Toda |Ampak |Vendar |\u0B86\u0BA9\u0BBE\u0BB2\u0BCD |\u041B\u04D9\u043A\u0438\u043D |\u04D8\u043C\u043C\u0430 |\u0C15\u0C3E\u0C28\u0C3F |\u0E41\u0E15\u0E48 |Fakat |Ama |\u0410\u043B\u0435 |\u0644\u06CC\u06A9\u0646 |\u041B\u0435\u043A\u0438\u043D |\u0411\u0438\u0440\u043E\u043A |\u0410\u043C\u043C\u043E |Nh\u01B0ng |Ond |Dan |\u0627\u0630\u0627\u064B |\u062B\u0645 |Alavez |Allora |Antonces |\u0531\u057A\u0561 |Ent\xF3s |But at the end of the day I reckon |O halda |Zatim |\u0422\u043E |Aleshores |Cal |\u90A3\u4E48 |\u90A3\u9EBC |L\xE8 sa a |Le sa a |Onda |Pak |S\xE5 |\u{1F64F} |Then |Do |Siis |Niin |Alors |Ent\xF3n |Logo |\u10DB\u10D0\u10E8\u10D8\u10DC |Dann |\u03A4\u03CC\u03C4\u03B5 |\u0AAA\u0A9B\u0AC0 |\u05D0\u05D6 |\u05D0\u05D6\u05D9 |\u0924\u092C |\u0924\u0926\u093E |Akkor |\xDE\xE1 |Maka |Ansin |\u306A\u3089\u3070 |Njuk |Banjur |\u0CA8\u0C82\u0CA4\u0CB0 |vaj |\uADF8\uB7EC\uBA74 |DEN |Tad |Tada |dann |\u0422\u043E\u0433\u0430\u0448 |Togash |Kemudian |\u0422\u044D\u0433\u044D\u0445\u044D\u0434 |\u04AE\u04AF\u043D\u0438\u0439 \u0434\u0430\u0440\u0430\u0430 |Tha |\xDEa |\xD0a |Tha the |\xDEa \xFEe |\xD0a \xF0e |\u0A24\u0A26 |\u0622\u0646\u06AF\u0627\u0647 |Let go and haul |Wtedy |Ent\xE3o |Entao |Atunci |\u0417\u0430\u0442\u0435\u043C |\u0422\u043E\u0433\u0434\u0430 |Dun |Den youse gotta |\u041E\u043D\u0434\u0430 |Tak |Potom |Nato |Potem |Takrat |Entonces |\u0B85\u0BAA\u0BCD\u0BAA\u0BC6\u0BBE\u0BB4\u0BC1\u0BA4\u0BC1 |\u041D\u04D9\u0442\u0438\u0497\u04D9\u0434\u04D9 |\u0C05\u0C2A\u0C4D\u0C2A\u0C41\u0C21\u0C41 |\u0E14\u0E31\u0E07\u0E19\u0E31\u0E49\u0E19 |O zaman |\u0422\u043E\u0434\u0456 |\u067E\u06BE\u0631 |\u062A\u0628 |\u0423\u043D\u0434\u0430 |Th\xEC |Yna |Wanneer |\u0645\u062A\u0649 |\u0639\u0646\u062F\u0645\u0627 |Cuan |\u0535\u0569\u0565 |\u0535\u0580\u0562 |Cuando |It's just unbelievable |\u018Fg\u0259r |N\u0259 vaxt ki |Kada |\u041A\u043E\u0433\u0430\u0442\u043E |Quan |\u5F53 |\u7576 |L\xE8 |Le |Kad |Kdy\u017E |N\xE5r |Als |\u{1F3AC} |When |Se |Kui |Kun |Quand |Lorsque |Lorsqu' |Cando |\u10E0\u10DD\u10D3\u10D4\u10E1\u10D0\u10EA |Wenn |\u038C\u03C4\u03B1\u03BD |\u0A95\u0ACD\u0AAF\u0ABE\u0AB0\u0AC7 |\u05DB\u05D0\u05E9\u05E8 |\u091C\u092C |\u0915\u0926\u093E |Majd |Ha |Amikor |\xDEegar |Ketika |Nuair a |Nuair nach |Nuair ba |Nuair n\xE1r |Quando |\u3082\u3057 |Manawa |Menawa |\u0CB8\u0CCD\u0CA5\u0CBF\u0CA4\u0CBF\u0CAF\u0CA8\u0CCD\u0CA8\u0CC1 |qaSDI' |\uB9CC\uC77C |\uB9CC\uC57D |WEN |Ja |Kai |wann |\u041A\u043E\u0433\u0430 |Koga |Apabila |\u0425\u044D\u0440\u044D\u0432 |Tha |\xDEa |\xD0a |\u0A1C\u0A26\u0A4B\u0A02 |\u0647\u0646\u06AF\u0627\u0645\u06CC |Blimey! |Je\u017Celi |Je\u015Bli |Gdy |Kiedy |Cand |C\xE2nd |\u041A\u043E\u0433\u0434\u0430 |\u0415\u0441\u043B\u0438 |Wun |Youse know like when |\u041A\u0430\u0434\u0430 |\u041A\u0430\u0434 |Ke\u010F |Ak |Ko |Ce |\u010Ce |Kadar |N\xE4r |\u0B8E\u0BAA\u0BCD\u0BAA\u0BC7\u0BBE\u0BA4\u0BC1 |\u04D8\u0433\u04D9\u0440 |\u0C08 \u0C2A\u0C30\u0C3F\u0C38\u0C4D\u0C25\u0C3F\u0C24\u0C3F\u0C32\u0C4B |\u0E40\u0E21\u0E37\u0E48\u0E2D |E\u011Fer ki |\u042F\u043A\u0449\u043E |\u041A\u043E\u043B\u0438 |\u062C\u0628 |\u0410\u0433\u0430\u0440 |Khi |Pryd |Gegewe |\u0628\u0641\u0631\u0636 |Dau |Dada |Daus |Dadas |\u0534\u056B\u0581\u0578\u0582\u0584 |D\xE1u |Daos |Daes |Y'know |Tutaq ki |Verilir |Dato |\u0414\u0430\u0434\u0435\u043D\u043E |Donat |Donada |At\xE8s |Atesa |\u5047\u5982 |\u5047\u8BBE |\u5047\u5B9A |\u5047\u8A2D |Sipoze |Sipoze ke |Sipoze Ke |Zadan |Zadani |Zadano |Pokud |Za p\u0159edpokladu |Givet |Gegeven |Stel |\u{1F610} |Given |Donita\u0135o |Komence |Eeldades |Oletetaan |Soit |Etant donn\xE9 que |Etant donn\xE9 qu' |Etant donn\xE9 |Etant donn\xE9e |Etant donn\xE9s |Etant donn\xE9es |\xC9tant donn\xE9 que |\xC9tant donn\xE9 qu' |\xC9tant donn\xE9 |\xC9tant donn\xE9e |\xC9tant donn\xE9s |\xC9tant donn\xE9es |Dado |Dados |\u10DB\u10DD\u10EA\u10D4\u10DB\u10E3\u10DA\u10D8 |Angenommen |Gegeben sei |Gegeben seien |\u0394\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03BF\u03C5 |\u0A86\u0AAA\u0AC7\u0AB2 \u0A9B\u0AC7 |\u05D1\u05D4\u05D9\u05E0\u05EA\u05DF |\u0905\u0917\u0930 |\u092F\u0926\u093F |\u091A\u0942\u0902\u0915\u093F |Amennyiben |Adott |Ef |Dengan |Cuir i gc\xE1s go |Cuir i gc\xE1s nach |Cuir i gc\xE1s gur |Cuir i gc\xE1s n\xE1r |Data |Dati |Date |\u524D\u63D0 |Nalika |Nalikaning |\u0CA8\u0CBF\u0CD5\u0CA1\u0CBF\u0CA6 |ghu' noblu' |DaH ghu' bejlu' |\uC870\uAC74 |\uBA3C\uC800 |I CAN HAZ |Kad |Duota |ugeholl |\u0414\u0430\u0434\u0435\u043D\u0430 |Dadeno |Dadena |Diberi |Bagi |\u04E8\u0433\u04E9\u0433\u0434\u0441\u04E9\u043D \u043D\u044C |\u0410\u043D\u0445 |Gitt |Thurh |\xDEurh |\xD0urh |\u0A1C\u0A47\u0A15\u0A30 |\u0A1C\u0A3F\u0A35\u0A47\u0A02 \u0A15\u0A3F |\u0628\u0627 \u0641\u0631\u0636 |Gangway! |Zak\u0142adaj\u0105c |Maj\u0105c |Zak\u0142adaj\u0105c, \u017Ce |Date fiind |Dat fiind |Dat\u0103 fiind |Dati fiind |Da\u021Bi fiind |Da\u0163i fiind |\u0414\u043E\u043F\u0443\u0441\u0442\u0438\u043C |\u0414\u0430\u043D\u043E |\u041F\u0443\u0441\u0442\u044C |Givun |Youse know when youse got |\u0417\u0430 \u0434\u0430\u0442\u043E |\u0417\u0430 \u0434\u0430\u0442\u0435 |\u0417\u0430 \u0434\u0430\u0442\u0438 |Za dato |Za date |Za dati |Pokia\u013E |Za predpokladu |Dano |Podano |Zaradi |Privzeto |\u0B95\u0BC6\u0BBE\u0B9F\u0BC1\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F |\u04D8\u0439\u0442\u0438\u043A |\u0C1A\u0C46\u0C2A\u0C4D\u0C2A\u0C2C\u0C21\u0C3F\u0C28\u0C26\u0C3F |\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E43\u0E2B\u0E49 |Diyelim ki |\u041F\u0440\u0438\u043F\u0443\u0441\u0442\u0438\u043C\u043E |\u041F\u0440\u0438\u043F\u0443\u0441\u0442\u0438\u043C\u043E, \u0449\u043E |\u041D\u0435\u0445\u0430\u0439 |\u0627\u06AF\u0631 |\u0628\u0627\u0644\u0641\u0631\u0636 |\u0641\u0631\u0636 \u06A9\u06CC\u0627 |\u0410\u0433\u0430\u0440 |Bi\u1EBFt |Cho |Anrhegedig a |\\\\* )"},"strings_double_quote":{"begin":"(?<![a-zA-Z0-9'])\\"","end":"\\"(?![a-zA-Z0-9'])","name":"string.quoted.double","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.untitled"}]},"strings_single_quote":{"begin":"(?<![a-zA-Z0-9\\"])'","end":"'(?![a-zA-Z0-9\\"])","name":"string.quoted.single","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape"}]},"strings_triple_quote":{"begin":"\\"\\"\\".*","end":"\\"\\"\\"","name":"string.quoted.single"},"table":{"begin":"^\\\\s*\\\\|","end":"\\\\|\\\\s*$","name":"keyword.control.cucumber.table","patterns":[{"match":"\\\\w","name":"source"}]},"tags":{"captures":{"0":{"name":"entity.name.type.class.tsx"}},"match":"(@[^@\\\\r\\\\n\\\\t ]+)"}},"scopeName":"text.gherkin.feature"}`)),Vne=[Jne]});var TL={};x(TL,{default:()=>eae});var Xne,eae,qL=_(()=>{SB();Xne=Object.freeze(JSON.parse('{"displayName":"Git Commit Message","name":"git-commit","patterns":[{"begin":"(?=^diff\\\\ \\\\-\\\\-git)","comment":"diff presented at the end of the commit message when using commit -v.","contentName":"source.diff","end":"\\\\z","name":"meta.embedded.diff.git-commit","patterns":[{"include":"source.diff"}]},{"begin":"^(?!#)","comment":"User supplied message","end":"^(?=#)","name":"meta.scope.message.git-commit","patterns":[{"captures":{"1":{"name":"invalid.deprecated.line-too-long.git-commit"},"2":{"name":"invalid.illegal.line-too-long.git-commit"}},"comment":"Mark > 50 lines as deprecated, > 72 as illegal","match":"\\\\G.{0,50}(.{0,22}(.*))$","name":"meta.scope.subject.git-commit"}]},{"begin":"^(?=#)","comment":"Git supplied metadata in a number of lines starting with #","contentName":"comment.line.number-sign.git-commit","end":"^(?!#)","name":"meta.scope.metadata.git-commit","patterns":[{"captures":{"1":{"name":"markup.changed.git-commit"}},"match":"^#\\\\t((modified|renamed):.*)$"},{"captures":{"1":{"name":"markup.inserted.git-commit"}},"match":"^#\\\\t(new file:.*)$"},{"captures":{"1":{"name":"markup.deleted.git-commit"}},"match":"^#\\\\t(deleted.*)$"},{"captures":{"1":{"name":"keyword.other.file-type.git-commit"},"2":{"name":"string.unquoted.filename.git-commit"}},"comment":"Fallback for non-English git commit template","match":"^#\\\\t([^:]+): *(.*)$"}]}],"scopeName":"text.git-commit","embeddedLangs":["diff"]}')),eae=[...FB,Xne]});var GL={};x(GL,{default:()=>nae});var tae,nae,zL=_(()=>{Ki();tae=Object.freeze(JSON.parse('{"displayName":"Git Rebase Message","name":"git-rebase","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.git-rebase"}},"match":"^\\\\s*(#).*$\\\\n?","name":"comment.line.number-sign.git-rebase"},{"captures":{"1":{"name":"support.function.git-rebase"},"2":{"name":"constant.sha.git-rebase"},"3":{"name":"meta.commit-message.git-rebase"}},"match":"^\\\\s*(pick|p|reword|r|edit|e|squash|s|fixup|f|drop|d)\\\\s+([0-9a-f]+)\\\\s+(.*)$","name":"meta.commit-command.git-rebase"},{"captures":{"1":{"name":"support.function.git-rebase"},"2":{"patterns":[{"include":"source.shell"}]}},"match":"^\\\\s*(exec|x)\\\\s+(.*)$","name":"meta.commit-command.git-rebase"},{"captures":{"1":{"name":"support.function.git-rebase"}},"match":"^\\\\s*(break|b)\\\\s*$","name":"meta.commit-command.git-rebase"}],"scopeName":"text.git-rebase","embeddedLangs":["shellscript"]}')),nae=[...ia,tae]});var UL={};x(UL,{default:()=>rae});var aae,rae,HL=_(()=>{aae=Object.freeze(JSON.parse('{"displayName":"Gleam","name":"gleam","patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#strings"},{"include":"#constant"},{"include":"#entity"},{"include":"#discards"}],"repository":{"binary_number":{"match":"\\\\b0[bB]0*1[01_]*\\\\b","name":"constant.numeric.binary.gleam","patterns":[]},"comments":{"patterns":[{"match":"//.*","name":"comment.line.gleam"}]},"constant":{"patterns":[{"include":"#binary_number"},{"include":"#octal_number"},{"include":"#hexadecimal_number"},{"include":"#decimal_number"},{"include":"#boolean"},{"match":"[[:upper:]][[:alnum:]]*","name":"entity.name.type.gleam"}]},"decimal_number":{"match":"\\\\b(0*[1-9][0-9_]*|0)(\\\\.(0*[1-9][0-9_]*|0)?(e-?0*[1-9][0-9]*)?)?\\\\b","name":"constant.numeric.decimal.gleam","patterns":[]},"discards":{"match":"\\\\b_(?:[[:word:]]+)?\\\\b","name":"comment.unused.gleam"},"entity":{"patterns":[{"begin":"\\\\b([[:lower:]][[:word:]]*)\\\\b[[:space:]]*\\\\(","captures":{"1":{"name":"entity.name.function.gleam"}},"end":"\\\\)","patterns":[{"include":"$self"}]},{"match":"\\\\b([[:lower:]][[:word:]]*):\\\\s","name":"variable.parameter.gleam"},{"match":"\\\\b([[:lower:]][[:word:]]*):","name":"entity.name.namespace.gleam"}]},"hexadecimal_number":{"match":"\\\\b0[xX]0*[1-9a-zA-Z][0-9a-zA-Z]*\\\\b","name":"constant.numeric.hexadecimal.gleam","patterns":[]},"keywords":{"patterns":[{"match":"\\\\b(as|use|case|if|fn|import|let|assert|pub|type|opaque|const|todo|panic|else|try)\\\\b","name":"keyword.control.gleam"},{"match":"(<\\\\-|\\\\->)","name":"keyword.operator.arrow.gleam"},{"match":"\\\\|>","name":"keyword.operator.pipe.gleam"},{"match":"\\\\.\\\\.","name":"keyword.operator.splat.gleam"},{"match":"(==|!=)","name":"keyword.operator.comparison.gleam"},{"match":"(<=\\\\.|>=\\\\.|<\\\\.|>\\\\.)","name":"keyword.operator.comparison.float.gleam"},{"match":"(<=|>=|<|>)","name":"keyword.operator.comparison.int.gleam"},{"match":"(&&|\\\\|\\\\|)","name":"keyword.operator.logical.gleam"},{"match":"<>","name":"keyword.operator.string.gleam"},{"match":"\\\\|","name":"keyword.operator.other.gleam"},{"match":"(\\\\+\\\\.|\\\\-\\\\.|/\\\\.|\\\\*\\\\.)","name":"keyword.operator.arithmetic.float.gleam"},{"match":"(\\\\+|\\\\-|/|\\\\*|%)","name":"keyword.operator.arithmetic.int.gleam"},{"match":"=","name":"keyword.operator.assignment.gleam"}]},"octal_number":{"match":"\\\\b0[oO]0*[1-7][0-7]*\\\\b","name":"constant.numeric.octal.gleam","patterns":[]},"strings":{"begin":"\\"","end":"\\"","name":"string.quoted.double.gleam","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.gleam"}]}},"scopeName":"source.gleam"}')),rae=[aae]});var ZL={};x(ZL,{default:()=>oae});var iae,oae,YL=_(()=>{Qe();hn();rt();Ye();iae=Object.freeze(JSON.parse(`{"displayName":"Glimmer JS","injections":{"L:source.gjs -comment -(string -meta.embedded)":{"patterns":[{"include":"#main"}]}},"name":"glimmer-js","patterns":[{"include":"#main"},{"include":"source.js"}],"repository":{"as-keyword":{"match":"\\\\s\\\\b(as)\\\\b(?=\\\\s\\\\|)","name":"keyword.control","patterns":[]},"as-params":{"begin":"(?<!\\\\|)(\\\\|)","beginCaptures":{"1":{"name":"constant.other.symbol.begin.ember-handlebars"}},"end":"(\\\\|)(?!\\\\|)","endCaptures":{"1":{"name":"constant.other.symbol.end.ember-handlebars"}},"name":"keyword.block-params.ember-handlebars","patterns":[{"include":"#variable"}]},"attention":{"match":"@?(TODO|FIXME|CHANGED|XXX|IDEA|HACK|NOTE|REVIEW|NB|BUG|QUESTION|TEMP)\\\\b","name":"storage.type.class.\${1:/downcase}","patterns":[]},"boolean":{"captures":{"0":{"name":"string.regexp"},"1":{"name":"string.regexp"},"2":{"name":"string.regexp"}},"match":"true|false|undefined|null","patterns":[]},"component-tag":{"begin":"(<\\\\/?)(@|this.)?([a-zA-Z0-9-_\\\\$:\\\\.]+)\\\\b","beginCaptures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"support.function","patterns":[{"match":"(@|this)","name":"variable.language"},{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]},"3":{"name":"entity.name.type","patterns":[{"include":"#glimmer-component-path"},{"match":"(@|:|\\\\$)","name":"markup.bold"}]}},"end":"(\\\\/?)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"punctuation.definition.tag"}},"name":"meta.tag.any.ember-handlebars","patterns":[{"include":"#tag-like-content"}]},"digit":{"captures":{"0":{"name":"constant.numeric"},"1":{"name":"constant.numeric"},"2":{"name":"constant.numeric"}},"match":"\\\\d*(\\\\.)?\\\\d+","patterns":[]},"entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.html.ember-handlebars"},"3":{"name":"punctuation.definition.entity.html.ember-handlebars"}},"match":"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)","name":"constant.character.entity.html.ember-handlebars"},{"match":"&","name":"invalid.illegal.bad-ampersand.html.ember-handlebars"}]},"glimmer-argument":{"captures":{"1":{"name":"entity.other.attribute-name.ember-handlebars.argument","patterns":[{"match":"(@)","name":"markup.italic"}]},"2":{"name":"punctuation.separator.key-value.html.ember-handlebars"}},"match":"\\\\s(@[a-zA-Z0-9:_.-]+)(=)?"},"glimmer-as-stuff":{"patterns":[{"include":"#as-keyword"},{"include":"#as-params"}]},"glimmer-block":{"begin":"({{~?)(#|/)(([@\\\\$a-zA-Z0-9_/.-]+))","captures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"punctuation.definition.tag"},"3":{"name":"keyword.control","patterns":[{"include":"#glimmer-component-path"},{"match":"(\\\\/)+","name":"punctuation.definition.tag"},{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]}},"end":"(~?}})","name":"entity.expression.ember-handlebars","patterns":[{"include":"#glimmer-as-stuff"},{"include":"#glimmer-supexp-content"}]},"glimmer-bools":{"captures":{"0":{"name":"keyword.operator"},"1":{"name":"keyword.operator"},"2":{"name":"string.regexp"},"3":{"name":"string.regexp"},"4":{"name":"keyword.operator"}},"match":"({{~?)(true|false|null|undefined|\\\\d*(\\\\.)?\\\\d+)(~?}})","name":"entity.expression.ember-handlebars"},"glimmer-comment-block":{"begin":"{{!--","captures":{"0":{"name":"punctuation.definition.block.comment.glimmer"}},"end":"--}}","name":"comment.block.glimmer","patterns":[{"include":"#script"},{"include":"#attention"}]},"glimmer-comment-inline":{"begin":"{{!","captures":{"0":{"name":"punctuation.definition.block.comment.glimmer"}},"end":"}}","name":"comment.inline.glimmer","patterns":[{"include":"#script"},{"include":"#attention"}]},"glimmer-component-path":{"captures":{"1":{"name":"punctuation.definition.tag"}},"match":"(::|_|\\\\$|\\\\.)"},"glimmer-control-expression":{"begin":"({{~?)(([-a-zA-Z_0-9/]+)\\\\s)","captures":{"1":{"name":"keyword.operator"},"2":{"name":"keyword.operator"},"3":{"name":"keyword.control"}},"end":"(~?}})","name":"entity.expression.ember-handlebars","patterns":[{"include":"#glimmer-supexp-content"}]},"glimmer-else-block":{"captures":{"0":{"name":"punctuation.definition.tag"},"1":{"name":"punctuation.definition.tag"},"2":{"name":"keyword.control"},"3":{"name":"keyword.control","patterns":[{"include":"#glimmer-subexp"},{"include":"#string-single-quoted-handlebars"},{"include":"#string-double-quoted-handlebars"},{"include":"#boolean"},{"include":"#digit"},{"include":"#param"},{"include":"#glimmer-parameter-name"},{"include":"#glimmer-parameter-value"}]},"4":{"name":"punctuation.definition.tag"}},"match":"({{~?)(else\\\\s[a-z]+\\\\s|else)([()@a-zA-Z0-9\\\\.\\\\s\\\\b]+)?(~?}})","name":"entity.expression.ember-handlebars"},"glimmer-expression":{"begin":"({{~?)(([()\\\\s@a-zA-Z0-9_.-]+))","captures":{"1":{"name":"keyword.operator"},"2":{"name":"keyword.operator"},"3":{"name":"support.function","patterns":[{"match":"[(]+","name":"string.regexp"},{"match":"[)]+","name":"string.regexp"},{"match":"(\\\\.)+","name":"punctuation.definition.tag"},{"include":"#glimmer-supexp-content"}]}},"end":"(~?}})","name":"entity.expression.ember-handlebars","patterns":[{"include":"#glimmer-supexp-content"}]},"glimmer-expression-property":{"begin":"({{~?)((@|this.)([a-zA-Z0-9_.-]+))","captures":{"1":{"name":"keyword.operator"},"2":{"name":"keyword.operator"},"3":{"name":"support.function","patterns":[{"match":"(@|this)","name":"variable.language"},{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]},"4":{"name":"support.function","patterns":[{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]}},"end":"(~?}})","name":"entity.expression.ember-handlebars","patterns":[{"include":"#glimmer-supexp-content"}]},"glimmer-parameter-name":{"captures":{"1":{"name":"variable.parameter.name.ember-handlebars"},"2":{"name":"punctuation.definition.expression.ember-handlebars"}},"match":"\\\\b([a-zA-Z0-9_-]+)(\\\\s?=)","patterns":[]},"glimmer-parameter-value":{"captures":{"1":{"name":"support.function","patterns":[{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]}},"match":"\\\\b([a-zA-Z0-9:_.-]+)\\\\b(?!=)","patterns":[]},"glimmer-special-block":{"captures":{"0":{"name":"keyword.operator"},"1":{"name":"keyword.operator"},"2":{"name":"keyword.control"},"3":{"name":"keyword.operator"}},"match":"({{~?)(yield|outlet)(~?}})","name":"entity.expression.ember-handlebars"},"glimmer-subexp":{"begin":"(\\\\()([@a-zA-Z0-9.-]+)","captures":{"1":{"name":"keyword.other"},"2":{"name":"keyword.control"}},"end":"(\\\\))","name":"entity.subexpression.ember-handlebars","patterns":[{"include":"#glimmer-supexp-content"}]},"glimmer-supexp-content":{"patterns":[{"include":"#glimmer-subexp"},{"include":"#string-single-quoted-handlebars"},{"include":"#string-double-quoted-handlebars"},{"include":"#boolean"},{"include":"#digit"},{"include":"#param"},{"include":"#glimmer-parameter-name"},{"include":"#glimmer-parameter-value"}]},"glimmer-unescaped-expression":{"begin":"{{{","captures":{"0":{"name":"keyword.operator"}},"end":"}}}","name":"entity.unescaped.expression.ember-handlebars","patterns":[{"include":"#string-single-quoted-handlebars"},{"include":"#string-double-quoted-handlebars"},{"include":"#glimmer-subexp"},{"include":"#param"}]},"html-attribute":{"captures":{"1":{"name":"entity.other.attribute-name.ember-handlebars","patterns":[{"match":"(\\\\.\\\\.\\\\.attributes)","name":"markup.bold"}]},"2":{"name":"punctuation.separator.key-value.html.ember-handlebars"}},"match":"\\\\s([a-zA-Z0-9:_.-]+)(=)?"},"html-comment":{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.html.ember-handlebars"}},"end":"--\\\\s*>","name":"comment.block.html.ember-handlebars","patterns":[{"include":"#attention"},{"match":"--","name":"invalid.illegal.bad-comments-or-CDATA.html.ember-handlebars"}]},"html-tag":{"begin":"(<\\\\/?)([a-z0-9-]+)(?!\\\\.|:)\\\\b","beginCaptures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"entity.name.tag.html.ember-handlebars"}},"end":"(\\\\/?)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"punctuation.definition.tag"}},"name":"meta.tag.any.ember-handlebars","patterns":[{"include":"#tag-like-content"}]},"main":{"patterns":[{"begin":"\\\\s*(<)(template)\\\\s*(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.other.html"},"3":{"name":"punctuation.definition.tag.html"}},"end":"(</)(template)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.other.html"},"3":{"name":"punctuation.definition.tag.html"}},"name":"meta.js.embeddedTemplateWithoutArgs","patterns":[{"include":"#style"},{"include":"#script"},{"include":"#glimmer-else-block"},{"include":"#glimmer-bools"},{"include":"#glimmer-special-block"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#html-tag"},{"include":"#component-tag"},{"include":"#html-comment"},{"include":"#entities"}]},{"begin":"(<)(template)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.other.html"}},"end":"(</)(template)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.other.html"},"3":{"name":"punctuation.definition.tag.html"}},"name":"meta.js.embeddedTemplateWithArgs","patterns":[{"begin":"(?<=\\\\<template)","end":"(?=\\\\>)","patterns":[{"include":"#tag-like-content"}]},{"begin":"(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.end.js"}},"contentName":"meta.html.embedded.block","end":"(?=</template>)","patterns":[{"include":"#style"},{"include":"#script"},{"include":"#glimmer-else-block"},{"include":"#glimmer-bools"},{"include":"#glimmer-special-block"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#html-tag"},{"include":"#component-tag"},{"include":"#html-comment"},{"include":"#entities"}]}]},{"begin":"(\\\\b(?:\\\\w+\\\\.)*(?:hbs|html)\\\\s*)(\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.js"},"2":{"name":"punctuation.definition.string.template.begin.js"}},"contentName":"meta.embedded.block.html","end":"(\`)","endCaptures":{"0":{"name":"string.js"},"1":{"name":"punctuation.definition.string.template.end.js"}},"patterns":[{"include":"source.ts#template-substitution-element"},{"include":"#style"},{"include":"#script"},{"include":"#glimmer-else-block"},{"include":"#glimmer-bools"},{"include":"#glimmer-special-block"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#html-tag"},{"include":"#component-tag"},{"include":"#html-comment"},{"include":"#entities"}]},{"begin":"((createTemplate|hbs|html))(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.ts"},"2":{"name":"meta.function-call.ts"},"3":{"name":"meta.brace.round.ts"}},"contentName":"meta.embedded.block.html","end":"(\\\\))","endCaptures":{"1":{"name":"meta.brace.round.ts"}},"patterns":[{"begin":"((\`|'|\\"))","beginCaptures":{"1":{"name":"string.template.ts"},"2":{"name":"punctuation.definition.string.template.begin.ts"}},"end":"((\`|'|\\"))","endCaptures":{"1":{"name":"string.template.ts"},"2":{"name":"punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#style"},{"include":"#script"},{"include":"#glimmer-else-block"},{"include":"#glimmer-bools"},{"include":"#glimmer-special-block"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#html-tag"},{"include":"#component-tag"},{"include":"#html-comment"},{"include":"#entities"}]}]},{"begin":"((precompileTemplate)\\\\s*)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.ts"},"2":{"name":"meta.function-call.ts"},"3":{"name":"meta.brace.round.ts"}},"end":"(\\\\))","endCaptures":{"1":{"name":"meta.brace.round.ts"}},"patterns":[{"begin":"((\`|'|\\"))","beginCaptures":{"1":{"name":"string.template.ts"},"2":{"name":"punctuation.definition.string.template.begin.ts"}},"contentName":"meta.embedded.block.html","end":"((\`|'|\\"))","endCaptures":{"1":{"name":"string.template.ts"},"2":{"name":"punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#style"},{"include":"#script"},{"include":"#glimmer-else-block"},{"include":"#glimmer-bools"},{"include":"#glimmer-special-block"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#html-tag"},{"include":"#component-tag"},{"include":"#html-comment"},{"include":"#entities"}]},{"include":"source.ts#object-literal"},{"include":"source.ts"}]}]},"param":{"captures":{"0":{"name":"support.function","patterns":[{"match":"(@|this)","name":"variable.language"},{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]},"1":{"name":"support.function","patterns":[{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]}},"match":"(@|this.)([a-zA-Z0-9_.-]+)","patterns":[]},"script":{"begin":"(^[ \\\\t]+)?(?=<(?i:script)\\\\b(?!-))","beginCaptures":{"1":{"name":"punctuation.whitespace.embedded.leading.html"}},"end":"(?!\\\\G)([ \\\\t]*$\\\\n?)?","endCaptures":{"1":{"name":"punctuation.whitespace.embedded.trailing.html"}},"patterns":[{"begin":"(<)((?i:script))\\\\b","beginCaptures":{"0":{"name":"meta.tag.metadata.script.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"(/)((?i:script))(>)","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.embedded.block.html","patterns":[{"begin":"\\\\G","end":"(?=/)","patterns":[{"begin":"(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.script.start.html"},"1":{"name":"punctuation.definition.tag.end.html"}},"end":"((<))(?=/(?i:script))","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"source.js-ignored-vscode"}},"patterns":[{"begin":"\\\\G","end":"(?=</(?i:script))","name":"source.js","patterns":[{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.js"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"(?=<\/script)|\\\\n","name":"comment.line.double-slash.js"}]},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"\\\\*/|(?=<\/script)","name":"comment.block.js"},{"include":"source.js"}]}]},{"begin":"(?ix:\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?=\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\ttype\\\\s*=\\\\s*\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t('|\\"|)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\ttext/\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\tx-handlebars\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | (x-(handlebars-)?|ng-)?template\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | html\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[\\\\s\\"'>]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)","end":"((<))(?=/(?i:script))","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"text.html.basic"}},"patterns":[{"begin":"(?!\\\\G)","end":"(?=</(?i:script))","name":"text.html.basic","patterns":[{"include":"text.html.basic"}]}]},{"begin":"(?=(?i:type))","end":"(<)(?=/(?i:script))","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"}}},{"include":"#string-double-quoted-html"},{"include":"#string-single-quoted-html"},{"include":"#glimmer-argument"},{"include":"#html-attribute"}]}]}]},"string-double-quoted-handlebars":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ember-handlebars"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ember-handlebars"}},"name":"string.quoted.double.ember-handlebars","patterns":[{"match":"\\\\\\\\\\"","name":"constant.character.escape.ember-handlebars"}]},"string-double-quoted-html":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ember-handlebars"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ember-handlebars"}},"name":"string.quoted.double.html.ember-handlebars","patterns":[{"match":"\\\\\\\\\\"","name":"constant.character.escape.ember-handlebars"},{"include":"#glimmer-bools"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"}]},"string-single-quoted-handlebars":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ember-handlebars"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ember-handlebars"}},"name":"string.quoted.single.ember-handlebars","patterns":[{"match":"\\\\\\\\'","name":"constant.character.escape.ember-handlebars"}]},"string-single-quoted-html":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ember-handlebars"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ember-handlebars"}},"name":"string.quoted.single.html.ember-handlebars","patterns":[{"match":"\\\\\\\\'","name":"constant.character.escape.ember-handlebars"},{"include":"#glimmer-bools"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"}]},"style":{"begin":"(^[ \\\\t]+)?(?=<(?i:style)\\\\b(?!-))","beginCaptures":{"1":{"name":"punctuation.whitespace.embedded.leading.html"}},"end":"(?!\\\\G)([ \\\\t]*$\\\\n?)?","endCaptures":{"1":{"name":"punctuation.whitespace.embedded.trailing.html"}},"patterns":[{"begin":"(?i)(<)(style)(?=\\\\s|/?>)","beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"(?i)((<)/)(style)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.style.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"source.css-ignored-vscode"},"3":{"name":"entity.name.tag.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.embedded.block.html","patterns":[{"begin":"\\\\G","captures":{"1":{"name":"punctuation.definition.tag.end.html"}},"end":"(>)","name":"meta.tag.metadata.style.start.html","patterns":[{"include":"#glimmer-argument"},{"include":"#html-attribute"}]},{"begin":"(?!\\\\G)","end":"(?=</(?i:style))","name":"source.css","patterns":[{"include":"source.css"}]}]}]},"tag-like-content":{"patterns":[{"include":"#glimmer-bools"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#boolean"},{"include":"#digit"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#string-double-quoted-html"},{"include":"#string-single-quoted-html"},{"include":"#glimmer-as-stuff"},{"include":"#glimmer-argument"},{"include":"#html-attribute"}]},"variable":{"match":"\\\\b([a-zA-Z0-9-_]+)\\\\b","name":"support.function","patterns":[]}},"scopeName":"source.gjs","embeddedLangs":["javascript","typescript","css","html"],"aliases":["gjs"]}`)),oae=[...J,...Ge,...ue,...ce,iae]});var WL={};x(WL,{default:()=>cae});var sae,cae,KL=_(()=>{hn();rt();Qe();Ye();sae=Object.freeze(JSON.parse(`{"displayName":"Glimmer TS","injections":{"L:source.gts -comment -(string -meta.embedded)":{"patterns":[{"include":"#main"}]}},"name":"glimmer-ts","patterns":[{"include":"#main"},{"include":"source.ts"}],"repository":{"as-keyword":{"match":"\\\\s\\\\b(as)\\\\b(?=\\\\s\\\\|)","name":"keyword.control","patterns":[]},"as-params":{"begin":"(?<!\\\\|)(\\\\|)","beginCaptures":{"1":{"name":"constant.other.symbol.begin.ember-handlebars"}},"end":"(\\\\|)(?!\\\\|)","endCaptures":{"1":{"name":"constant.other.symbol.end.ember-handlebars"}},"name":"keyword.block-params.ember-handlebars","patterns":[{"include":"#variable"}]},"attention":{"match":"@?(TODO|FIXME|CHANGED|XXX|IDEA|HACK|NOTE|REVIEW|NB|BUG|QUESTION|TEMP)\\\\b","name":"storage.type.class.\${1:/downcase}","patterns":[]},"boolean":{"captures":{"0":{"name":"string.regexp"},"1":{"name":"string.regexp"},"2":{"name":"string.regexp"}},"match":"true|false|undefined|null","patterns":[]},"component-tag":{"begin":"(<\\\\/?)(@|this.)?([a-zA-Z0-9-_\\\\$:\\\\.]+)\\\\b","beginCaptures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"support.function","patterns":[{"match":"(@|this)","name":"variable.language"},{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]},"3":{"name":"entity.name.type","patterns":[{"include":"#glimmer-component-path"},{"match":"(@|:|\\\\$)","name":"markup.bold"}]}},"end":"(\\\\/?)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"punctuation.definition.tag"}},"name":"meta.tag.any.ember-handlebars","patterns":[{"include":"#tag-like-content"}]},"digit":{"captures":{"0":{"name":"constant.numeric"},"1":{"name":"constant.numeric"},"2":{"name":"constant.numeric"}},"match":"\\\\d*(\\\\.)?\\\\d+","patterns":[]},"entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.html.ember-handlebars"},"3":{"name":"punctuation.definition.entity.html.ember-handlebars"}},"match":"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)","name":"constant.character.entity.html.ember-handlebars"},{"match":"&","name":"invalid.illegal.bad-ampersand.html.ember-handlebars"}]},"glimmer-argument":{"captures":{"1":{"name":"entity.other.attribute-name.ember-handlebars.argument","patterns":[{"match":"(@)","name":"markup.italic"}]},"2":{"name":"punctuation.separator.key-value.html.ember-handlebars"}},"match":"\\\\s(@[a-zA-Z0-9:_.-]+)(=)?"},"glimmer-as-stuff":{"patterns":[{"include":"#as-keyword"},{"include":"#as-params"}]},"glimmer-block":{"begin":"({{~?)(#|/)(([@\\\\$a-zA-Z0-9_/.-]+))","captures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"punctuation.definition.tag"},"3":{"name":"keyword.control","patterns":[{"include":"#glimmer-component-path"},{"match":"(\\\\/)+","name":"punctuation.definition.tag"},{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]}},"end":"(~?}})","name":"entity.expression.ember-handlebars","patterns":[{"include":"#glimmer-as-stuff"},{"include":"#glimmer-supexp-content"}]},"glimmer-bools":{"captures":{"0":{"name":"keyword.operator"},"1":{"name":"keyword.operator"},"2":{"name":"string.regexp"},"3":{"name":"string.regexp"},"4":{"name":"keyword.operator"}},"match":"({{~?)(true|false|null|undefined|\\\\d*(\\\\.)?\\\\d+)(~?}})","name":"entity.expression.ember-handlebars"},"glimmer-comment-block":{"begin":"{{!--","captures":{"0":{"name":"punctuation.definition.block.comment.glimmer"}},"end":"--}}","name":"comment.block.glimmer","patterns":[{"include":"#script"},{"include":"#attention"}]},"glimmer-comment-inline":{"begin":"{{!","captures":{"0":{"name":"punctuation.definition.block.comment.glimmer"}},"end":"}}","name":"comment.inline.glimmer","patterns":[{"include":"#script"},{"include":"#attention"}]},"glimmer-component-path":{"captures":{"1":{"name":"punctuation.definition.tag"}},"match":"(::|_|\\\\$|\\\\.)"},"glimmer-control-expression":{"begin":"({{~?)(([-a-zA-Z_0-9/]+)\\\\s)","captures":{"1":{"name":"keyword.operator"},"2":{"name":"keyword.operator"},"3":{"name":"keyword.control"}},"end":"(~?}})","name":"entity.expression.ember-handlebars","patterns":[{"include":"#glimmer-supexp-content"}]},"glimmer-else-block":{"captures":{"0":{"name":"punctuation.definition.tag"},"1":{"name":"punctuation.definition.tag"},"2":{"name":"keyword.control"},"3":{"name":"keyword.control","patterns":[{"include":"#glimmer-subexp"},{"include":"#string-single-quoted-handlebars"},{"include":"#string-double-quoted-handlebars"},{"include":"#boolean"},{"include":"#digit"},{"include":"#param"},{"include":"#glimmer-parameter-name"},{"include":"#glimmer-parameter-value"}]},"4":{"name":"punctuation.definition.tag"}},"match":"({{~?)(else\\\\s[a-z]+\\\\s|else)([()@a-zA-Z0-9\\\\.\\\\s\\\\b]+)?(~?}})","name":"entity.expression.ember-handlebars"},"glimmer-expression":{"begin":"({{~?)(([()\\\\s@a-zA-Z0-9_.-]+))","captures":{"1":{"name":"keyword.operator"},"2":{"name":"keyword.operator"},"3":{"name":"support.function","patterns":[{"match":"[(]+","name":"string.regexp"},{"match":"[)]+","name":"string.regexp"},{"match":"(\\\\.)+","name":"punctuation.definition.tag"},{"include":"#glimmer-supexp-content"}]}},"end":"(~?}})","name":"entity.expression.ember-handlebars","patterns":[{"include":"#glimmer-supexp-content"}]},"glimmer-expression-property":{"begin":"({{~?)((@|this.)([a-zA-Z0-9_.-]+))","captures":{"1":{"name":"keyword.operator"},"2":{"name":"keyword.operator"},"3":{"name":"support.function","patterns":[{"match":"(@|this)","name":"variable.language"},{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]},"4":{"name":"support.function","patterns":[{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]}},"end":"(~?}})","name":"entity.expression.ember-handlebars","patterns":[{"include":"#glimmer-supexp-content"}]},"glimmer-parameter-name":{"captures":{"1":{"name":"variable.parameter.name.ember-handlebars"},"2":{"name":"punctuation.definition.expression.ember-handlebars"}},"match":"\\\\b([a-zA-Z0-9_-]+)(\\\\s?=)","patterns":[]},"glimmer-parameter-value":{"captures":{"1":{"name":"support.function","patterns":[{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]}},"match":"\\\\b([a-zA-Z0-9:_.-]+)\\\\b(?!=)","patterns":[]},"glimmer-special-block":{"captures":{"0":{"name":"keyword.operator"},"1":{"name":"keyword.operator"},"2":{"name":"keyword.control"},"3":{"name":"keyword.operator"}},"match":"({{~?)(yield|outlet)(~?}})","name":"entity.expression.ember-handlebars"},"glimmer-subexp":{"begin":"(\\\\()([@a-zA-Z0-9.-]+)","captures":{"1":{"name":"keyword.other"},"2":{"name":"keyword.control"}},"end":"(\\\\))","name":"entity.subexpression.ember-handlebars","patterns":[{"include":"#glimmer-supexp-content"}]},"glimmer-supexp-content":{"patterns":[{"include":"#glimmer-subexp"},{"include":"#string-single-quoted-handlebars"},{"include":"#string-double-quoted-handlebars"},{"include":"#boolean"},{"include":"#digit"},{"include":"#param"},{"include":"#glimmer-parameter-name"},{"include":"#glimmer-parameter-value"}]},"glimmer-unescaped-expression":{"begin":"{{{","captures":{"0":{"name":"keyword.operator"}},"end":"}}}","name":"entity.unescaped.expression.ember-handlebars","patterns":[{"include":"#string-single-quoted-handlebars"},{"include":"#string-double-quoted-handlebars"},{"include":"#glimmer-subexp"},{"include":"#param"}]},"html-attribute":{"captures":{"1":{"name":"entity.other.attribute-name.ember-handlebars","patterns":[{"match":"(\\\\.\\\\.\\\\.attributes)","name":"markup.bold"}]},"2":{"name":"punctuation.separator.key-value.html.ember-handlebars"}},"match":"\\\\s([a-zA-Z0-9:_.-]+)(=)?"},"html-comment":{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.html.ember-handlebars"}},"end":"--\\\\s*>","name":"comment.block.html.ember-handlebars","patterns":[{"include":"#attention"},{"match":"--","name":"invalid.illegal.bad-comments-or-CDATA.html.ember-handlebars"}]},"html-tag":{"begin":"(<\\\\/?)([a-z0-9-]+)(?!\\\\.|:)\\\\b","beginCaptures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"entity.name.tag.html.ember-handlebars"}},"end":"(\\\\/?)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"punctuation.definition.tag"}},"name":"meta.tag.any.ember-handlebars","patterns":[{"include":"#tag-like-content"}]},"main":{"patterns":[{"begin":"\\\\s*(<)(template)\\\\s*(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.other.html"},"3":{"name":"punctuation.definition.tag.html"}},"end":"(</)(template)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.other.html"},"3":{"name":"punctuation.definition.tag.html"}},"name":"meta.js.embeddedTemplateWithoutArgs","patterns":[{"include":"#style"},{"include":"#script"},{"include":"#glimmer-else-block"},{"include":"#glimmer-bools"},{"include":"#glimmer-special-block"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#html-tag"},{"include":"#component-tag"},{"include":"#html-comment"},{"include":"#entities"}]},{"begin":"(<)(template)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.other.html"}},"end":"(</)(template)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.other.html"},"3":{"name":"punctuation.definition.tag.html"}},"name":"meta.js.embeddedTemplateWithArgs","patterns":[{"begin":"(?<=\\\\<template)","end":"(?=\\\\>)","patterns":[{"include":"#tag-like-content"}]},{"begin":"(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.end.js"}},"contentName":"meta.html.embedded.block","end":"(?=</template>)","patterns":[{"include":"#style"},{"include":"#script"},{"include":"#glimmer-else-block"},{"include":"#glimmer-bools"},{"include":"#glimmer-special-block"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#html-tag"},{"include":"#component-tag"},{"include":"#html-comment"},{"include":"#entities"}]}]},{"begin":"(\\\\b(?:\\\\w+\\\\.)*(?:hbs|html)\\\\s*)(\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.js"},"2":{"name":"punctuation.definition.string.template.begin.js"}},"contentName":"meta.embedded.block.html","end":"(\`)","endCaptures":{"0":{"name":"string.js"},"1":{"name":"punctuation.definition.string.template.end.js"}},"patterns":[{"include":"source.ts#template-substitution-element"},{"include":"#style"},{"include":"#script"},{"include":"#glimmer-else-block"},{"include":"#glimmer-bools"},{"include":"#glimmer-special-block"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#html-tag"},{"include":"#component-tag"},{"include":"#html-comment"},{"include":"#entities"}]},{"begin":"((createTemplate|hbs|html))(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.ts"},"2":{"name":"meta.function-call.ts"},"3":{"name":"meta.brace.round.ts"}},"contentName":"meta.embedded.block.html","end":"(\\\\))","endCaptures":{"1":{"name":"meta.brace.round.ts"}},"patterns":[{"begin":"((\`|'|\\"))","beginCaptures":{"1":{"name":"string.template.ts"},"2":{"name":"punctuation.definition.string.template.begin.ts"}},"end":"((\`|'|\\"))","endCaptures":{"1":{"name":"string.template.ts"},"2":{"name":"punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#style"},{"include":"#script"},{"include":"#glimmer-else-block"},{"include":"#glimmer-bools"},{"include":"#glimmer-special-block"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#html-tag"},{"include":"#component-tag"},{"include":"#html-comment"},{"include":"#entities"}]}]},{"begin":"((precompileTemplate)\\\\s*)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.ts"},"2":{"name":"meta.function-call.ts"},"3":{"name":"meta.brace.round.ts"}},"end":"(\\\\))","endCaptures":{"1":{"name":"meta.brace.round.ts"}},"patterns":[{"begin":"((\`|'|\\"))","beginCaptures":{"1":{"name":"string.template.ts"},"2":{"name":"punctuation.definition.string.template.begin.ts"}},"contentName":"meta.embedded.block.html","end":"((\`|'|\\"))","endCaptures":{"1":{"name":"string.template.ts"},"2":{"name":"punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#style"},{"include":"#script"},{"include":"#glimmer-else-block"},{"include":"#glimmer-bools"},{"include":"#glimmer-special-block"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#html-tag"},{"include":"#component-tag"},{"include":"#html-comment"},{"include":"#entities"}]},{"include":"source.ts#object-literal"},{"include":"source.ts"}]}]},"param":{"captures":{"0":{"name":"support.function","patterns":[{"match":"(@|this)","name":"variable.language"},{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]},"1":{"name":"support.function","patterns":[{"match":"(\\\\.)+","name":"punctuation.definition.tag"}]}},"match":"(@|this.)([a-zA-Z0-9_.-]+)","patterns":[]},"script":{"begin":"(^[ \\\\t]+)?(?=<(?i:script)\\\\b(?!-))","beginCaptures":{"1":{"name":"punctuation.whitespace.embedded.leading.html"}},"end":"(?!\\\\G)([ \\\\t]*$\\\\n?)?","endCaptures":{"1":{"name":"punctuation.whitespace.embedded.trailing.html"}},"patterns":[{"begin":"(<)((?i:script))\\\\b","beginCaptures":{"0":{"name":"meta.tag.metadata.script.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"(/)((?i:script))(>)","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.embedded.block.html","patterns":[{"begin":"\\\\G","end":"(?=/)","patterns":[{"begin":"(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.script.start.html"},"1":{"name":"punctuation.definition.tag.end.html"}},"end":"((<))(?=/(?i:script))","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"source.js-ignored-vscode"}},"patterns":[{"begin":"\\\\G","end":"(?=</(?i:script))","name":"source.js","patterns":[{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.js"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"(?=<\/script)|\\\\n","name":"comment.line.double-slash.js"}]},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"\\\\*/|(?=<\/script)","name":"comment.block.js"},{"include":"source.js"}]}]},{"begin":"(?ix:\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?=\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\ttype\\\\s*=\\\\s*\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t('|\\"|)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\ttext/\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\tx-handlebars\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | (x-(handlebars-)?|ng-)?template\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | html\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[\\\\s\\"'>]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)","end":"((<))(?=/(?i:script))","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"text.html.basic"}},"patterns":[{"begin":"(?!\\\\G)","end":"(?=</(?i:script))","name":"text.html.basic","patterns":[{"include":"text.html.basic"}]}]},{"begin":"(?=(?i:type))","end":"(<)(?=/(?i:script))","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"}}},{"include":"#string-double-quoted-html"},{"include":"#string-single-quoted-html"},{"include":"#glimmer-argument"},{"include":"#html-attribute"}]}]}]},"string-double-quoted-handlebars":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ember-handlebars"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ember-handlebars"}},"name":"string.quoted.double.ember-handlebars","patterns":[{"match":"\\\\\\\\\\"","name":"constant.character.escape.ember-handlebars"}]},"string-double-quoted-html":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ember-handlebars"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ember-handlebars"}},"name":"string.quoted.double.html.ember-handlebars","patterns":[{"match":"\\\\\\\\\\"","name":"constant.character.escape.ember-handlebars"},{"include":"#glimmer-bools"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"}]},"string-single-quoted-handlebars":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ember-handlebars"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ember-handlebars"}},"name":"string.quoted.single.ember-handlebars","patterns":[{"match":"\\\\\\\\'","name":"constant.character.escape.ember-handlebars"}]},"string-single-quoted-html":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ember-handlebars"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ember-handlebars"}},"name":"string.quoted.single.html.ember-handlebars","patterns":[{"match":"\\\\\\\\'","name":"constant.character.escape.ember-handlebars"},{"include":"#glimmer-bools"},{"include":"#glimmer-expression-property"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"}]},"style":{"begin":"(^[ \\\\t]+)?(?=<(?i:style)\\\\b(?!-))","beginCaptures":{"1":{"name":"punctuation.whitespace.embedded.leading.html"}},"end":"(?!\\\\G)([ \\\\t]*$\\\\n?)?","endCaptures":{"1":{"name":"punctuation.whitespace.embedded.trailing.html"}},"patterns":[{"begin":"(?i)(<)(style)(?=\\\\s|/?>)","beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"(?i)((<)/)(style)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.style.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"source.css-ignored-vscode"},"3":{"name":"entity.name.tag.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.embedded.block.html","patterns":[{"begin":"\\\\G","captures":{"1":{"name":"punctuation.definition.tag.end.html"}},"end":"(>)","name":"meta.tag.metadata.style.start.html","patterns":[{"include":"#glimmer-argument"},{"include":"#html-attribute"}]},{"begin":"(?!\\\\G)","end":"(?=</(?i:style))","name":"source.css","patterns":[{"include":"source.css"}]}]}]},"tag-like-content":{"patterns":[{"include":"#glimmer-bools"},{"include":"#glimmer-unescaped-expression"},{"include":"#glimmer-comment-block"},{"include":"#glimmer-comment-inline"},{"include":"#glimmer-expression-property"},{"include":"#boolean"},{"include":"#digit"},{"include":"#glimmer-control-expression"},{"include":"#glimmer-expression"},{"include":"#glimmer-block"},{"include":"#string-double-quoted-html"},{"include":"#string-single-quoted-html"},{"include":"#glimmer-as-stuff"},{"include":"#glimmer-argument"},{"include":"#html-attribute"}]},"variable":{"match":"\\\\b([a-zA-Z0-9-_]+)\\\\b","name":"support.function","patterns":[]}},"scopeName":"source.gts","embeddedLangs":["typescript","css","javascript","html"],"aliases":["gts"]}`)),cae=[...Ge,...ue,...J,...ce,sae]});var JL={};x(JL,{default:()=>Aae});var lae,Aae,VL=_(()=>{lae=Object.freeze(JSON.parse(`{"displayName":"Gnuplot","fileTypes":["gp","plt","plot","gnuplot"],"name":"gnuplot","patterns":[{"match":"(\\\\\\\\(?!\\\\n).*)","name":"invalid.illegal.backslash.gnuplot"},{"match":"(;)","name":"punctuation.separator.statement.gnuplot"},{"include":"#LineComment"},{"include":"#DataBlock"},{"include":"#MacroExpansion"},{"include":"#VariableDecl"},{"include":"#ArrayDecl"},{"include":"#FunctionDecl"},{"include":"#ShellCommand"},{"include":"#Command"}],"repository":{"ArrayDecl":{"begin":"\\\\b(?:(array)\\\\s+([A-Za-z_]\\\\w*)?)","beginCaptures":{"1":{"name":"support.type.array.gnuplot"},"2":{"name":"entity.name.variable.gnuplot","patterns":[{"include":"#InvalidVariableDecl"},{"include":"#BuiltinVariable"}]}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","name":"meta.variable.gnuplot","patterns":[{"include":"#Expression"}]},"BuiltinFunction":{"patterns":[{"match":"\\\\b(?:defined)\\\\b","name":"invalid.deprecated.function.gnuplot"},{"match":"\\\\b(?:abs|acos|acosh|airy|arg|asin|asinh|atan|atan2|atanh|EllipticK|EllipticE|EllipticPi|besj0|besj1|besy0|besy1|ceil|cos|cosh|erf|erfc|exp|expint|floor|gamma|ibeta|inverf|igamma|imag|invnorm|int|lambertw|lgamma|log|log10|norm|rand|real|sgn|sin|sinh|sqrt|tan|tanh|voigt|cerf|cdawson|faddeeva|erfi|VP)\\\\b","name":"support.function.math.gnuplot"},{"match":"\\\\b(?:gprintf|sprintf|strlen|strstrt|substr|strftime|strptime|system|word|words)\\\\b","name":"support.function.string.gnuplot"},{"match":"\\\\b(?:column|columnhead|exists|hsv2rgb|stringcolumn|timecolumn|tm_hour|tm_mday|tm_min|tm_mon|tm_sec|tm_wday|tm_yday|tm_year|time|valid|value)\\\\b","name":"support.function.other.gnuplot"}]},"BuiltinOperator":{"patterns":[{"match":"(&&|\\\\|\\\\|)","name":"keyword.operator.logical.gnuplot"},{"match":"(<<|>>|&|\\\\||\\\\^)","name":"keyword.operator.bitwise.gnuplot"},{"match":"(==|!=|<=|<|>=|>)","name":"keyword.operator.comparison.gnuplot"},{"match":"(=)","name":"keyword.operator.assignment.gnuplot"},{"match":"(\\\\+|-|~|!)","name":"keyword.operator.arithmetic.gnuplot"},{"match":"(\\\\*\\\\*|\\\\+|-|\\\\*|/|%)","name":"keyword.operator.arithmetic.gnuplot"},{"captures":{"2":{"name":"keyword.operator.word.gnuplot"}},"match":"(\\\\.|\\\\b(eq|ne)\\\\b)","name":"keyword.operator.strings.gnuplot"}]},"BuiltinVariable":{"patterns":[{"match":"\\\\b(?:FIT_LIMIT|FIT_MAXITER|FIT_START_LAMBDA|FIT_LAMBDA_FACTOR|FIT_SKIP|FIT_INDEX)\\\\b","name":"invalid.deprecated.variable.gnuplot"},{"match":"\\\\b(GPVAL_\\\\w*|MOUSE_\\\\w*)\\\\b","name":"support.constant.gnuplot"},{"match":"\\\\b(ARG[0-9C]|GPFUN_\\\\w*|FIT_\\\\w*|STATS_\\\\w*|pi|NaN)\\\\b","name":"support.variable.gnuplot"}]},"ColumnIndexLiteral":{"match":"([$][0-9]+)\\\\b","name":"support.constant.columnindex.gnuplot"},"Command":{"patterns":[{"begin":"\\\\b(?:update)\\\\b","end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","name":"invalid.deprecated.command.gnuplot"},{"begin":"\\\\b(?:break|clear|continue|pwd|refresh|replot|reread|shell)\\\\b","beginCaptures":{"0":{"name":"keyword.other.command.gnuplot"}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"include":"#InvalidWord"}]},{"begin":"\\\\b(?:cd|call|eval|exit|help|history|load|lower|pause|print|printerr|quit|raise|save|stats|system|test|toggle)\\\\b","beginCaptures":{"0":{"name":"keyword.other.command.gnuplot"}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"include":"#Expression"}]},{"begin":"\\\\b(import)\\\\s(.+)\\\\s(from)","beginCaptures":{"1":{"name":"keyword.control.import.gnuplot"},"2":{"patterns":[{"include":"#FunctionDecl"}]},"3":{"name":"keyword.control.import.gnuplot"}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"include":"#SingleQuotedStringLiteral"},{"include":"#DoubleQuotedStringLiteral"},{"include":"#InvalidWord"}]},{"begin":"\\\\b(reset)\\\\b","beginCaptures":{"1":{"name":"keyword.other.command.gnuplot"}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"match":"\\\\b(bind|error(state)?|session)\\\\b","name":"support.class.reset.gnuplot"},{"include":"#InvalidWord"}]},{"begin":"\\\\b(undefine)\\\\b","beginCaptures":{"1":{"name":"keyword.other.command.gnuplot"}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"include":"#BuiltinVariable"},{"include":"#BuiltinFunction"},{"match":"(?<=\\\\s)([$]?[A-Za-z_]\\\\w*\\\\*?)(?=\\\\s)","name":"source.gnuplot"},{"include":"#InvalidWord"}]},{"begin":"\\\\b(if|while)\\\\b","beginCaptures":{"1":{"name":"keyword.control.conditional.gnuplot"}},"end":"(?=(\\\\{|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"include":"#Expression"}]},{"begin":"\\\\b(else)\\\\b","beginCaptures":{"1":{"name":"keyword.control.conditional.gnuplot"}},"end":"(?=(\\\\{|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))"},{"begin":"\\\\b(do)\\\\b","beginCaptures":{"1":{"name":"keyword.control.flow.gnuplot"}},"end":"(?=(\\\\{|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"include":"#ForIterationExpr"}]},{"begin":"\\\\b(set)(?=\\\\s+pm3d)\\\\b","beginCaptures":{"1":{"name":"keyword.other.command.gnuplot"}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"match":"\\\\b(hidden3d|map|transparent|solid)\\\\b","name":"invalid.deprecated.options.gnuplot"},{"include":"#SetUnsetOptions"},{"include":"#ForIterationExpr"},{"include":"#Expression"}]},{"begin":"\\\\b((un)?set)\\\\b","beginCaptures":{"1":{"name":"keyword.other.command.gnuplot"}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"include":"#SetUnsetOptions"},{"include":"#ForIterationExpr"},{"include":"#Expression"}]},{"begin":"\\\\b(show)\\\\b","beginCaptures":{"1":{"name":"keyword.other.command.gnuplot"}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"include":"#ExtraShowOptions"},{"include":"#SetUnsetOptions"},{"include":"#Expression"}]},{"begin":"\\\\b(fit|(s)?plot)\\\\b","beginCaptures":{"1":{"name":"keyword.other.command.gnuplot"}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"include":"#ColumnIndexLiteral"},{"include":"#PlotModifiers"},{"include":"#ForIterationExpr"},{"include":"#Expression"}]}]},"DataBlock":{"begin":"(?:([$][A-Za-z_]\\\\w*)\\\\s*(<<)\\\\s*([A-Za-z_]\\\\w*)\\\\s*(?=(\\\\#|$)))","beginCaptures":{"1":{"patterns":[{"include":"#SpecialVariable"}]},"3":{"name":"constant.language.datablock.gnuplot"}},"end":"^(\\\\3)\\\\b(.*)","endCaptures":{"1":{"name":"constant.language.datablock.gnuplot"},"2":{"name":"invalid.illegal.datablock.gnuplot"}},"name":"meta.datablock.gnuplot","patterns":[{"include":"#LineComment"},{"include":"#NumberLiteral"},{"include":"#DoubleQuotedStringLiteral"}]},"DeprecatedScriptArgsLiteral":{"match":"([$][0-9#])","name":"invalid.illegal.scriptargs.gnuplot"},"DoubleQuotedStringLiteral":{"begin":"(\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.gnuplot"}},"end":"((\\")|(?=(?<!\\\\\\\\)\\\\n$))","endCaptures":{"0":{"name":"punctuation.definition.string.end.gnuplot"}},"name":"string.quoted.double.gnuplot","patterns":[{"include":"#EscapedChar"},{"include":"#RGBColorSpec"},{"include":"#DeprecatedScriptArgsLiteral"},{"include":"#InterpolatedStringLiteral"}]},"EscapedChar":{"match":"(\\\\\\\\.)","name":"constant.character.escape.gnuplot"},"Expression":{"patterns":[{"include":"#Literal"},{"include":"#SpecialVariable"},{"include":"#BuiltinVariable"},{"include":"#BuiltinOperator"},{"include":"#TernaryExpr"},{"include":"#FunctionCallExpr"},{"include":"#SummationExpr"}]},"ExtraShowOptions":{"match":"\\\\b(?:all|bind|colornames|functions|plot|variables|version)\\\\b","name":"support.class.options.gnuplot"},"ForIterationExpr":{"begin":"\\\\b(?:(for)\\\\s*(\\\\[)\\\\s*(?:([A-Za-z_]\\\\w*)\\\\s+(in)\\\\b)?)","beginCaptures":{"1":{"name":"keyword.control.flow.gnuplot"},"2":{"patterns":[{"include":"#RangeSeparators"}]},"3":{"name":"variable.other.iterator.gnuplot"},"4":{"name":"keyword.control.flow.gnuplot"}},"end":"((\\\\])|(?=(#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$)))","endCaptures":{"2":{"patterns":[{"include":"#RangeSeparators"}]}},"patterns":[{"include":"#Expression"},{"include":"#RangeSeparators"}]},"FunctionCallExpr":{"begin":"\\\\b([A-Za-z_]\\\\w*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"variable.function.gnuplot","patterns":[{"include":"#BuiltinFunction"}]},"2":{"name":"punctuation.definition.arguments.begin.gnuplot"}},"end":"((\\\\))|(?=(#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$)))","endCaptures":{"2":{"name":"punctuation.definition.arguments.end.gnuplot"}},"name":"meta.function-call.gnuplot","patterns":[{"include":"#Expression"}]},"FunctionDecl":{"begin":"\\\\b(?:([A-Za-z_]\\\\w*)\\\\s*((\\\\()\\\\s*([A-Za-z_]\\\\w*)\\\\s*(?:(,)\\\\s*([A-Za-z_]\\\\w*)\\\\s*)*(\\\\))))","beginCaptures":{"1":{"name":"entity.name.function.gnuplot","patterns":[{"include":"#BuiltinFunction"}]},"2":{"name":"meta.function.parameters.gnuplot"},"3":{"name":"punctuation.definition.parameters.begin.gnuplot"},"4":{"name":"variable.parameter.function.language.gnuplot"},"5":{"name":"punctuation.separator.parameters.gnuplot"},"6":{"name":"variable.parameter.function.language.gnuplot"},"7":{"name":"punctuation.definition.parameters.end.gnuplot"}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","name":"meta.function.gnuplot","patterns":[{"include":"#Expression"}]},"InterpolatedStringLiteral":{"begin":"(\`)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.gnuplot"}},"end":"((\`)|(?=(?<!\\\\\\\\)\\\\n$))","endCaptures":{"0":{"name":"punctuation.definition.string.end.gnuplot"}},"name":"string.interpolated.gnuplot","patterns":[{"include":"#EscapedChar"}]},"InvalidVariableDecl":{"match":"\\\\b(GPVAL_\\\\w*|MOUSE_\\\\w*)\\\\b","name":"invalid.illegal.variable.gnuplot"},"InvalidWord":{"match":"([^;#\\\\\\\\[:space:]]+)","name":"invalid.illegal.gnuplot"},"LineComment":{"begin":"(#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.begin.gnuplot"}},"end":"(?=(?<!\\\\\\\\)\\\\n$)","endCaptures":{"0":{"name":"punctuation.definition.comment.end.gnuplot"}},"name":"comment.line.number-sign.gnuplot"},"Literal":{"patterns":[{"include":"#NumberLiteral"},{"include":"#DeprecatedScriptArgsLiteral"},{"include":"#SingleQuotedStringLiteral"},{"include":"#DoubleQuotedStringLiteral"},{"include":"#InterpolatedStringLiteral"}]},"MacroExpansion":{"begin":"([@][A-Za-z_]\\\\w*)","beginCaptures":{"1":{"patterns":[{"include":"#SpecialVariable"}]}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"include":"#Expression"}]},"NumberLiteral":{"patterns":[{"match":"(?:(((\\\\b[0-9]+)|(?<!\\\\d)))([.][0-9]+)([Ee][+-]?[0-9]+)?)(cm|in)?\\\\b","name":"constant.numeric.float.gnuplot"},{"match":"(?:(\\\\b[0-9]+)((([Ee][+-]?[0-9]+\\\\b))|([.]([Ee][+-]?[0-9]+\\\\b)?)))(cm\\\\b|in\\\\b)?","name":"constant.numeric.float.gnuplot"},{"match":"\\\\b(0[Xx][0-9a-fA-F]+)(cm|in)?\\\\b","name":"constant.numeric.hex.gnuplot"},{"match":"\\\\b(0+)(cm|in)?\\\\b","name":"constant.numeric.dec.gnuplot"},{"match":"\\\\b(0[0-7]+)(cm|in)?\\\\b","name":"constant.numeric.oct.gnuplot"},{"match":"\\\\b(0[0-9]+)(cm|in)?\\\\b","name":"invalid.illegal.oct.gnuplot"},{"match":"\\\\b([0-9]+)(cm|in)?\\\\b","name":"constant.numeric.dec.gnuplot"}]},"PlotModifiers":{"patterns":[{"match":"\\\\b(thru)\\\\b","name":"invalid.deprecated.plot.gnuplot"},{"match":"\\\\b(?:in(dex)?|every|us(ing)?|wi(th)?|via)\\\\b","name":"storage.type.plot.gnuplot"},{"match":"\\\\b(newhist(ogram)?)\\\\b","name":"storage.type.plot.gnuplot"}]},"RGBColorSpec":{"match":"\\\\G(0x|#)(([0-9a-fA-F]{6})|([0-9a-fA-F]{8}))\\\\b","name":"constant.other.placeholder.gnuplot"},"RangeSeparators":{"patterns":[{"match":"(\\\\[)","name":"punctuation.section.brackets.begin.gnuplot"},{"match":"(:)","name":"punctuation.separator.range.gnuplot"},{"match":"(\\\\])","name":"punctuation.section.brackets.end.gnuplot"}]},"SetUnsetOptions":{"patterns":[{"match":"\\\\G\\\\s*\\\\b(?:clabel|data|function|historysize|macros|ticslevel|ticscale|(style\\\\s+increment\\\\s+\\\\w+))\\\\b","name":"invalid.deprecated.options.gnuplot"},{"match":"\\\\G\\\\s*\\\\b(?:angles|arrow|autoscale|border|boxwidth|clip|cntr(label|param)|color(box|sequence)?|contour|(dash|line)type|datafile|decimal(sign)?|dgrid3d|dummy|encoding|(error)?bars|fit|fontpath|format|grid|hidden3d|history|(iso)?samples|jitter|key|label|link|loadpath|locale|logscale|mapping|[lrtb]margin|margins|micro|minus(sign)?|mono(chrome)?|mouse|multiplot|nonlinear|object|offsets|origin|output|parametric|(p|r)axis|pm3d|palette|pointintervalbox|pointsize|polar|print|psdir|size|style|surface|table|terminal|termoption|theta|tics|timestamp|timefmt|title|view|xyplane|zero|(no)?(m)?(x|x2|y|y2|z|cb|r|t)tics|(x|x2|y|y2|z|cb)data|(x|x2|y|y2|z|cb|r)label|(x|x2|y|y2|z|cb)dtics|(x|x2|y|y2|z|cb)mtics|(x|x2|y|y2|z|cb|[rtuv])range|(x|x2|y|y2|z)?zeroaxis)\\\\b","name":"support.class.options.gnuplot"}]},"ShellCommand":{"begin":"(!)","beginCaptures":{"1":{"name":"keyword.other.shell.gnuplot"}},"end":"(?=(#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","patterns":[{"match":"([^#]|\\\\\\\\(?=\\\\n))","name":"string.unquoted"}]},"SingleQuotedStringLiteral":{"begin":"(')","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.gnuplot"}},"end":"((')(?!')|(?=(?<!\\\\\\\\)\\\\n$))","endCaptures":{"0":{"name":"punctuation.definition.string.end.gnuplot"}},"name":"string.quoted.single.gnuplot","patterns":[{"include":"#RGBColorSpec"},{"match":"('')","name":"constant.character.escape.gnuplot"}]},"SpecialVariable":{"patterns":[{"captures":{"1":{"name":"constant.language.wildcard.gnuplot"}},"match":"(?<=[\\\\[:=])\\\\s*(\\\\*)\\\\s*(?=[:\\\\]])"},{"captures":{"2":{"name":"punctuation.definition.variable.gnuplot"}},"match":"(([@$])[A-Za-z_]\\\\w*)\\\\b","name":"constant.language.special.gnuplot"}]},"SummationExpr":{"begin":"\\\\b(sum)\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"keyword.other.sum.gnuplot"},"2":{"patterns":[{"include":"#RangeSeparators"}]}},"end":"((\\\\])|(?=(#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$)))","endCaptures":{"2":{"patterns":[{"include":"#RangeSeparators"}]}},"patterns":[{"include":"#Expression"},{"include":"#RangeSeparators"}]},"TernaryExpr":{"begin":"(?<!\\\\?)(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.gnuplot"}},"end":"((?<!:)(:)(?!:)|(?=(#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$)))","endCaptures":{"2":{"name":"keyword.operator.ternary.gnuplot"}},"patterns":[{"include":"#Expression"}]},"VariableDecl":{"begin":"\\\\b(?:([A-Za-z_]\\\\w*)\\\\s*(?:(\\\\[)\\\\s*(.*)\\\\s*(\\\\])\\\\s*)?(?=(=)(?!\\\\s*=)))","beginCaptures":{"1":{"name":"entity.name.variable.gnuplot","patterns":[{"include":"#InvalidVariableDecl"},{"include":"#BuiltinVariable"}]},"3":{"patterns":[{"include":"#Expression"}]}},"end":"(?=(;|#|\\\\\\\\(?!\\\\n)|(?<!\\\\\\\\)\\\\n$))","name":"meta.variable.gnuplot","patterns":[{"include":"#Expression"}]}},"scopeName":"source.gnuplot"}`)),Aae=[lae]});var XL={};x(XL,{default:()=>UB});var dae,UB,HB=_(()=>{dae=Object.freeze(JSON.parse(`{"displayName":"Go","name":"go","patterns":[{"include":"#statements"}],"repository":{"after_control_variables":{"captures":{"1":{"patterns":[{"include":"#type-declarations-without-brackets"},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"(?:\\\\w+)","name":"variable.other.go"}]}},"comment":"After control variables, to not highlight as a struct/interface (before formatting with gofmt)","match":"(?:(?<=\\\\brange\\\\b|\\\\bswitch\\\\b|\\\\;|\\\\bif\\\\b|\\\\bfor\\\\b|\\\\<|\\\\>|\\\\<\\\\=|\\\\>\\\\=|\\\\=\\\\=|\\\\!\\\\=|\\\\w(?:\\\\+|/|\\\\-|\\\\*|\\\\%)|\\\\w(?:\\\\+|/|\\\\-|\\\\*|\\\\%)\\\\=|\\\\|\\\\||\\\\&\\\\&)(?:\\\\s*)((?![\\\\[\\\\]]+)[[:alnum:]\\\\-\\\\_\\\\!\\\\.\\\\[\\\\]\\\\<\\\\>\\\\=\\\\*/\\\\+\\\\%\\\\:]+)(?:\\\\s*)(?=\\\\{))"},"brackets":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.curly.go"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}},"patterns":[{"include":"$self"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"$self"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.square.go"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}},"patterns":[{"include":"$self"}]}]},"built_in_functions":{"comment":"Built-in functions","patterns":[{"match":"\\\\b(append|cap|close|complex|copy|delete|imag|len|panic|print|println|real|recover|min|max|clear)\\\\b(?=\\\\()","name":"entity.name.function.support.builtin.go"},{"begin":"(?:(\\\\bnew\\\\b)(\\\\())","beginCaptures":{"1":{"name":"entity.name.function.support.builtin.go"},"2":{"name":"punctuation.definition.begin.bracket.round.go"}},"comment":"new keyword","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"#functions"},{"include":"#struct_variables_types"},{"include":"#type-declarations"},{"include":"#generic_types"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"},{"include":"$self"}]},{"begin":"(?:(\\\\bmake\\\\b)(?:(\\\\()((?:(?:(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+(?:\\\\([^\\\\)]+\\\\))?)?(?:[\\\\[\\\\]\\\\*]+)?(?:(?!\\\\bmap\\\\b)(?:[\\\\w\\\\.]+))?(\\\\[(?:(?:[\\\\S]+)(?:(?:\\\\,\\\\s*(?:[\\\\S]+))*))?\\\\])?(?:\\\\,)?)?))","beginCaptures":{"1":{"name":"entity.name.function.support.builtin.go"},"2":{"name":"punctuation.definition.begin.bracket.round.go"},"3":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"comment":"make keyword","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"$self"}]}]},"comments":{"patterns":[{"begin":"(\\\\/\\\\*)","beginCaptures":{"1":{"name":"punctuation.definition.comment.go"}},"end":"(\\\\*\\\\/)","endCaptures":{"1":{"name":"punctuation.definition.comment.go"}},"name":"comment.block.go"},{"begin":"(\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.definition.comment.go"}},"end":"(?:\\\\n|$)","name":"comment.line.double-slash.go"}]},"const_assignment":{"comment":"constant assignment with const keyword","patterns":[{"captures":{"1":{"patterns":[{"include":"#delimiters"},{"match":"\\\\w+","name":"variable.other.constant.go"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#generic_types"},{"match":"\\\\(","name":"punctuation.definition.begin.bracket.round.go"},{"match":"\\\\)","name":"punctuation.definition.end.bracket.round.go"},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"comment":"single assignment","match":"(?:(?<=\\\\bconst\\\\b)(?:\\\\s*)(\\\\b[\\\\w\\\\.]+(?:\\\\,\\\\s*[\\\\w\\\\.]+)*)(?:\\\\s*)((?:(?:(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+(?:\\\\([^\\\\)]+\\\\))?)?(?!(?:[\\\\[\\\\]\\\\*]+)?\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w\\\\.\\\\[\\\\]\\\\*]+(?:\\\\,\\\\s*[\\\\w\\\\.\\\\[\\\\]\\\\*]+)*)?(?:\\\\s*)(?:\\\\=)?)?)"},{"begin":"(?:(?<=\\\\bconst\\\\b)(?:\\\\s*)(\\\\())","beginCaptures":{"1":{"name":"punctuation.definition.begin.bracket.round.go"}},"comment":"multi assignment","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"captures":{"1":{"patterns":[{"include":"#delimiters"},{"match":"\\\\w+","name":"variable.other.constant.go"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#generic_types"},{"match":"\\\\(","name":"punctuation.definition.begin.bracket.round.go"},{"match":"\\\\)","name":"punctuation.definition.end.bracket.round.go"},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"match":"(?:(?:^\\\\s*)(\\\\b[\\\\w\\\\.]+(?:\\\\,\\\\s*[\\\\w\\\\.]+)*)(?:\\\\s*)((?:(?:(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+(?:\\\\([^\\\\)]+\\\\))?)?(?!(?:[\\\\[\\\\]\\\\*]+)?\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w\\\\.\\\\[\\\\]\\\\*]+(?:\\\\,\\\\s*[\\\\w\\\\.\\\\[\\\\]\\\\*]+)*)?(?:\\\\s*)(?:\\\\=)?)?)"},{"include":"$self"}]}]},"delimiters":{"patterns":[{"match":"\\\\,","name":"punctuation.other.comma.go"},{"match":"\\\\.(?!\\\\.\\\\.)","name":"punctuation.other.period.go"},{"match":":(?!=)","name":"punctuation.other.colon.go"}]},"double_parentheses_types":{"captures":{"1":{"patterns":[{"include":"#type-declarations-without-brackets"},{"match":"\\\\(","name":"punctuation.definition.begin.bracket.round.go"},{"match":"\\\\)","name":"punctuation.definition.end.bracket.round.go"},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"comment":"double parentheses types","match":"(?:(?<!\\\\w)(\\\\((?:[\\\\w\\\\.\\\\[\\\\]\\\\*\\\\&]+)\\\\))(?=\\\\())"},"field_hover":{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.other.property.go"}]},"2":{"patterns":[{"match":"\\\\binvalid\\\\b\\\\s+\\\\btype\\\\b","name":"invalid.field.go"},{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"comment":"struct field property and types when hovering with the mouse","match":"(?:(?<=^\\\\bfield\\\\b)\\\\s+([\\\\w\\\\*\\\\.]+)\\\\s+([\\\\s\\\\S]+))"},"function_declaration":{"begin":"(?:^(\\\\bfunc\\\\b)(?:\\\\s*(\\\\([^\\\\)]+\\\\)\\\\s*)?(?:(\\\\w+)(?=\\\\(|\\\\[))?))","beginCaptures":{"1":{"name":"keyword.function.go"},"2":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"captures":{"1":{"name":"variable.parameter.go"},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"match":"(?:(\\\\w+(?:\\\\s+))?((?:[\\\\w\\\\.\\\\*]+)(?:\\\\[(?:(?:(?:[\\\\w\\\\.\\\\*]+)(?:\\\\,\\\\s+)?)+)?\\\\])?))"},{"include":"$self"}]}]},"3":{"patterns":[{"match":"\\\\d\\\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\\\w+","name":"entity.name.function.go"}]}},"comment":"Function declarations","end":"(?:(?<=\\\\))\\\\s*((?:(?:(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?!(?:[\\\\[\\\\]\\\\*]+)?(?:\\\\bstruct\\\\b|\\\\binterface\\\\b))[\\\\w\\\\.\\\\-\\\\*\\\\[\\\\]]+)?\\\\s*(?=\\\\{))","endCaptures":{"1":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"#function_param_types"}]},{"begin":"(?:([\\\\w\\\\.\\\\*]+)?(\\\\[))","beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}},"patterns":[{"include":"#generic_param_types"}]},{"captures":{"1":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"comment":"single function as a type returned type(s) declaration","match":"(?:(?<=\\\\))(?:\\\\s*)((?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?[\\\\w\\\\*\\\\.\\\\[\\\\]\\\\<\\\\>\\\\-]+(?:\\\\s*)(?:\\\\/(?:\\\\/|\\\\*).*)?)$)"},{"include":"$self"}]},"function_param_types":{"comment":"function parameter variables and types","patterns":[{"include":"#struct_variables_types"},{"include":"#interface_variables_types"},{"include":"#type-declarations-without-brackets"},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.parameter.go"}]}},"comment":"struct/interface type declaration","match":"((?:(?:\\\\b\\\\w+\\\\,\\\\s*)+)?\\\\b\\\\w+)\\\\s+(?=(?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:[\\\\[\\\\]\\\\*]+)?\\\\b(?:struct|interface)\\\\b\\\\s*\\\\{)"},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.parameter.go"}]}},"comment":"multiple parameters one type -with multilines","match":"(?:(?:(?<=\\\\()|^\\\\s*)((?:(?:\\\\b\\\\w+\\\\,\\\\s*)+)(?:/(?:/|\\\\*).*)?)$)"},{"captures":{"1":{"patterns":[{"include":"#delimiters"},{"match":"\\\\w+","name":"variable.parameter.go"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"comment":"multiple params and types | multiple params one type | one param one type","match":"(?:((?:(?:\\\\b\\\\w+\\\\,\\\\s*)+)?\\\\b\\\\w+)(?:\\\\s+)((?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:(?:(?:[\\\\w\\\\[\\\\]\\\\.\\\\*]+)?(?:(?:\\\\bfunc\\\\b\\\\((?:[^\\\\)]+)?\\\\))(?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:\\\\s*))+(?:(?:(?:[\\\\w\\\\*\\\\.\\\\[\\\\]]+)|(?:\\\\((?:[^\\\\)]+)?\\\\))))?)|(?:(?:[\\\\[\\\\]\\\\*]+)?[\\\\w\\\\*\\\\.]+(?:\\\\[(?:[^\\\\]]+)\\\\])?(?:[\\\\w\\\\.\\\\*]+)?)+)))"},{"begin":"(?:([\\\\w\\\\.\\\\*]+)?(\\\\[))","beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}},"patterns":[{"include":"#generic_param_types"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"#function_param_types"}]},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"comment":"other types","match":"([\\\\w\\\\.]+)"},{"include":"$self"}]},"functions":{"begin":"(?:(\\\\bfunc\\\\b)(?=\\\\())","beginCaptures":{"1":{"name":"keyword.function.go"}},"comment":"Functions","end":"(?:(?<=\\\\))(\\\\s*(?:(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?((?:(?:\\\\s*(?:(?:[\\\\[\\\\]\\\\*]+)?[\\\\w\\\\.\\\\*]+)?(?:(?:\\\\[(?:(?:[\\\\w\\\\.\\\\*]+)?(?:\\\\[(?:[^\\\\]]+)?\\\\])?(?:\\\\,\\\\s+)?)+\\\\])|(?:\\\\((?:[^\\\\)]+)?\\\\)))?(?:[\\\\w\\\\.\\\\*]+)?)(?:\\\\s*)(?=\\\\{))|(?:\\\\s*(?:(?:(?:[\\\\[\\\\]\\\\*]+)?(?!\\\\bfunc\\\\b)(?:[\\\\w\\\\.\\\\*]+)(?:\\\\[(?:(?:[\\\\w\\\\.\\\\*]+)?(?:\\\\[(?:[^\\\\]]+)?\\\\])?(?:\\\\,\\\\s+)?)+\\\\])?(?:[\\\\w\\\\.\\\\*]+)?)|(?:\\\\((?:[^\\\\)]+)?\\\\)))))?)","endCaptures":{"1":{"patterns":[{"include":"#type-declarations"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"patterns":[{"include":"#parameter-variable-types"}]},"functions_inline":{"captures":{"1":{"name":"keyword.function.go"},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"#function_param_types"},{"include":"$self"}]},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"\\\\{","name":"punctuation.definition.begin.bracket.curly.go"},{"match":"\\\\}","name":"punctuation.definition.end.bracket.curly.go"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"comment":"functions in-line with multi return types","match":"(?:(\\\\bfunc\\\\b)((?:\\\\((?:[^/]*?)\\\\))(?:\\\\s+)(?:\\\\((?:[^/]*?)\\\\)))(?:\\\\s+)(?=\\\\{))"},"generic_param_types":{"comment":"generic parameter variables and types","patterns":[{"include":"#struct_variables_types"},{"include":"#interface_variables_types"},{"include":"#type-declarations-without-brackets"},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.parameter.go"}]}},"comment":"struct/interface type declaration","match":"((?:(?:\\\\b\\\\w+\\\\,\\\\s*)+)?\\\\b\\\\w+)\\\\s+(?=(?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:[\\\\[\\\\]\\\\*]+)?\\\\b(?:struct|interface)\\\\b\\\\s*\\\\{)"},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.parameter.go"}]}},"comment":"multiple parameters one type -with multilines","match":"(?:(?:(?<=\\\\()|^\\\\s*)((?:(?:\\\\b\\\\w+\\\\,\\\\s*)+)(?:/(?:/|\\\\*).*)?)$)"},{"captures":{"1":{"patterns":[{"include":"#delimiters"},{"match":"\\\\w+","name":"variable.parameter.go"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]},"3":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"comment":"multiple params and types | multiple types one param","match":"(?:((?:(?:\\\\b\\\\w+\\\\,\\\\s*)+)?\\\\b\\\\w+)(?:\\\\s+)((?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:(?:(?:[\\\\w\\\\[\\\\]\\\\.\\\\*]+)?(?:(?:\\\\bfunc\\\\b\\\\((?:[^\\\\)]+)?\\\\))(?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:\\\\s*))+(?:(?:(?:[\\\\w\\\\*\\\\.]+)|(?:\\\\((?:[^\\\\)]+)?\\\\))))?)|(?:(?:(?:[\\\\w\\\\*\\\\.\\\\~]+)|(?:\\\\[(?:(?:[\\\\w\\\\.\\\\*]+)?(?:\\\\[(?:[^\\\\]]+)?\\\\])?(?:\\\\,\\\\s+)?)+\\\\]))(?:[\\\\w\\\\.\\\\*]+)?)+)))"},{"begin":"(?:([\\\\w\\\\.\\\\*]+)?(\\\\[))","beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}},"patterns":[{"include":"#generic_param_types"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"#function_param_types"}]},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"comment":"other types","match":"(?:\\\\b([\\\\w\\\\.]+))"},{"include":"$self"}]},"generic_types":{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"entity.name.type.go"}]},"2":{"patterns":[{"include":"#parameter-variable-types"}]}},"comment":"Generic support for all types","match":"(?:([\\\\w\\\\.\\\\*]+)(\\\\[(?:[^\\\\]]+)?\\\\]))"},"group-functions":{"comment":"all statements related to functions","patterns":[{"include":"#function_declaration"},{"include":"#functions_inline"},{"include":"#functions"},{"include":"#built_in_functions"},{"include":"#support_functions"}]},"group-types":{"comment":"all statements related to types","patterns":[{"include":"#other_struct_interface_expressions"},{"include":"#type_assertion_inline"},{"include":"#struct_variables_types"},{"include":"#interface_variables_types"},{"include":"#single_type"},{"include":"#multi_types"},{"include":"#struct_interface_declaration"},{"include":"#double_parentheses_types"},{"include":"#switch_types"},{"include":"#type-declarations"}]},"group-variables":{"comment":"all statements related to variables","patterns":[{"include":"#const_assignment"},{"include":"#var_assignment"},{"include":"#variable_assignment"},{"include":"#label_loop_variables"},{"include":"#slice_index_variables"},{"include":"#property_variables"},{"include":"#switch_select_case_variables"},{"include":"#other_variables"}]},"import":{"comment":"import","patterns":[{"begin":"\\\\b(import)\\\\s+","beginCaptures":{"1":{"name":"keyword.control.import.go"}},"comment":"import","end":"(?!\\\\G)","patterns":[{"include":"#imports"}]}]},"imports":{"comment":"import package(s)","patterns":[{"captures":{"1":{"patterns":[{"include":"#delimiters"},{"match":"(?:\\\\w+)","name":"variable.other.import.go"}]},"2":{"name":"string.quoted.double.go"},"3":{"name":"punctuation.definition.string.begin.go"},"4":{"name":"entity.name.import.go"},"5":{"name":"punctuation.definition.string.end.go"}},"match":"(\\\\s*[\\\\w\\\\.]+)?\\\\s*((\\")([^\\"]*)(\\"))"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.imports.begin.bracket.round.go"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.imports.end.bracket.round.go"}},"patterns":[{"include":"#comments"},{"include":"#imports"}]},{"include":"$self"}]},"interface_variables_types":{"begin":"(\\\\binterface\\\\b)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"keyword.interface.go"},"2":{"name":"punctuation.definition.begin.bracket.curly.go"}},"comment":"interface variable types","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}},"patterns":[{"include":"#interface_variables_types_field"},{"include":"$self"}]},"interface_variables_types_field":{"comment":"interface variable type fields","patterns":[{"include":"#support_functions"},{"include":"#type-declarations-without-brackets"},{"begin":"(?:([\\\\w\\\\.\\\\*]+)?(\\\\[))","beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}},"patterns":[{"include":"#generic_param_types"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"#function_param_types"}]},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"comment":"other types","match":"([\\\\w\\\\.]+)"}]},"keywords":{"patterns":[{"comment":"Flow control keywords","match":"\\\\b(break|case|continue|default|defer|else|fallthrough|for|go|goto|if|range|return|select|switch)\\\\b","name":"keyword.control.go"},{"match":"\\\\bchan\\\\b","name":"keyword.channel.go"},{"match":"\\\\bconst\\\\b","name":"keyword.const.go"},{"match":"\\\\bvar\\\\b","name":"keyword.var.go"},{"match":"\\\\bfunc\\\\b","name":"keyword.function.go"},{"match":"\\\\binterface\\\\b","name":"keyword.interface.go"},{"match":"\\\\bmap\\\\b","name":"keyword.map.go"},{"match":"\\\\bstruct\\\\b","name":"keyword.struct.go"},{"match":"\\\\bimport\\\\b","name":"keyword.control.import.go"},{"match":"\\\\btype\\\\b","name":"keyword.type.go"}]},"label_loop_variables":{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.other.label.go"}]}},"comment":"labeled loop variable name","match":"((?:^\\\\s*\\\\w+:\\\\s*$)|(?:^\\\\s*(?:\\\\bbreak\\\\b|\\\\bgoto\\\\b|\\\\bcontinue\\\\b)\\\\s+\\\\w+(?:\\\\s*/(?:/|\\\\*)\\\\s*.*)?$))"},"language_constants":{"captures":{"1":{"name":"constant.language.boolean.go"},"2":{"name":"constant.language.null.go"},"3":{"name":"constant.language.iota.go"}},"comment":"Language constants","match":"\\\\b(?:(true|false)|(nil)|(iota))\\\\b"},"map_types":{"begin":"(?:(\\\\bmap\\\\b)(\\\\[))","beginCaptures":{"1":{"name":"keyword.map.go"},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"comment":"map types","end":"(?:(\\\\])((?:(?:(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?!(?:[\\\\[\\\\]\\\\*]+)?\\\\b(?:func|struct|map)\\\\b)(?:[\\\\*\\\\[\\\\]]+)?(?:[\\\\w\\\\.]+)(?:\\\\[(?:(?:[\\\\w\\\\.\\\\*\\\\[\\\\]\\\\{\\\\}]+)(?:(?:\\\\,\\\\s*(?:[\\\\w\\\\.\\\\*\\\\[\\\\]\\\\{\\\\}]+))*))?\\\\])?)?)","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.square.go"},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"include":"#functions"},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"\\\\{","name":"punctuation.definition.begin.bracket.curly.go"},{"match":"\\\\}","name":"punctuation.definition.end.bracket.curly.go"},{"match":"\\\\(","name":"punctuation.definition.begin.bracket.round.go"},{"match":"\\\\)","name":"punctuation.definition.end.bracket.round.go"},{"match":"\\\\w+","name":"entity.name.type.go"}]},"multi_types":{"begin":"(\\\\btype\\\\b)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.type.go"},"2":{"name":"punctuation.definition.begin.bracket.round.go"}},"comment":"multi type declaration","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"#struct_variables_types"},{"include":"#interface_variables_types"},{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]},"numeric_literals":{"captures":{"0":{"patterns":[{"begin":"(?=.)","end":"(?:\\\\n|$)","patterns":[{"captures":{"1":{"name":"constant.numeric.decimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"2":{"name":"punctuation.separator.constant.numeric.go"},"3":{"name":"constant.numeric.decimal.point.go"},"4":{"name":"constant.numeric.decimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"5":{"name":"punctuation.separator.constant.numeric.go"},"6":{"name":"keyword.other.unit.exponent.decimal.go"},"7":{"name":"keyword.operator.plus.exponent.decimal.go"},"8":{"name":"keyword.operator.minus.exponent.decimal.go"},"9":{"name":"constant.numeric.exponent.decimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"10":{"name":"keyword.other.unit.imaginary.go"},"11":{"name":"constant.numeric.decimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"12":{"name":"punctuation.separator.constant.numeric.go"},"13":{"name":"keyword.other.unit.exponent.decimal.go"},"14":{"name":"keyword.operator.plus.exponent.decimal.go"},"15":{"name":"keyword.operator.minus.exponent.decimal.go"},"16":{"name":"constant.numeric.exponent.decimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"17":{"name":"keyword.other.unit.imaginary.go"},"18":{"name":"constant.numeric.decimal.point.go"},"19":{"name":"constant.numeric.decimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"20":{"name":"punctuation.separator.constant.numeric.go"},"21":{"name":"keyword.other.unit.exponent.decimal.go"},"22":{"name":"keyword.operator.plus.exponent.decimal.go"},"23":{"name":"keyword.operator.minus.exponent.decimal.go"},"24":{"name":"constant.numeric.exponent.decimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"25":{"name":"keyword.other.unit.imaginary.go"},"26":{"name":"keyword.other.unit.hexadecimal.go"},"27":{"name":"constant.numeric.hexadecimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"28":{"name":"punctuation.separator.constant.numeric.go"},"29":{"name":"constant.numeric.hexadecimal.go"},"30":{"name":"constant.numeric.hexadecimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"31":{"name":"punctuation.separator.constant.numeric.go"},"32":{"name":"keyword.other.unit.exponent.hexadecimal.go"},"33":{"name":"keyword.operator.plus.exponent.hexadecimal.go"},"34":{"name":"keyword.operator.minus.exponent.hexadecimal.go"},"35":{"name":"constant.numeric.exponent.hexadecimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"36":{"name":"keyword.other.unit.imaginary.go"},"37":{"name":"keyword.other.unit.hexadecimal.go"},"38":{"name":"constant.numeric.hexadecimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"39":{"name":"punctuation.separator.constant.numeric.go"},"40":{"name":"keyword.other.unit.exponent.hexadecimal.go"},"41":{"name":"keyword.operator.plus.exponent.hexadecimal.go"},"42":{"name":"keyword.operator.minus.exponent.hexadecimal.go"},"43":{"name":"constant.numeric.exponent.hexadecimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"44":{"name":"keyword.other.unit.imaginary.go"},"45":{"name":"keyword.other.unit.hexadecimal.go"},"46":{"name":"constant.numeric.hexadecimal.go"},"47":{"name":"constant.numeric.hexadecimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"48":{"name":"punctuation.separator.constant.numeric.go"},"49":{"name":"keyword.other.unit.exponent.hexadecimal.go"},"50":{"name":"keyword.operator.plus.exponent.hexadecimal.go"},"51":{"name":"keyword.operator.minus.exponent.hexadecimal.go"},"52":{"name":"constant.numeric.exponent.hexadecimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"53":{"name":"keyword.other.unit.imaginary.go"}},"match":"(?:(?:(?:(?:(?:\\\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)((?:(?<=[0-9])\\\\.|\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)?(?:(?<!_)([eE])(\\\\+?)(\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)))?(i(?!\\\\w))?(?:\\\\n|$)|\\\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?<!_)([eE])(\\\\+?)(\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\\\w))?(?:\\\\n|$))|\\\\G((?:(?<=[0-9])\\\\.|\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?:(?<!_)([eE])(\\\\+?)(\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)))?(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)((?:(?<=[0-9a-fA-F])\\\\.|\\\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)?(?<!_)([pP])(\\\\+?)(\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?<!_)([pP])(\\\\+?)(\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])((?:(?<=[0-9a-fA-F])\\\\.|\\\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?<!_)([pP])(\\\\+?)(\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\\\w))?(?:\\\\n|$))"},{"captures":{"1":{"name":"constant.numeric.decimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"2":{"name":"punctuation.separator.constant.numeric.go"},"3":{"name":"keyword.other.unit.imaginary.go"},"4":{"name":"keyword.other.unit.binary.go"},"5":{"name":"constant.numeric.binary.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"6":{"name":"punctuation.separator.constant.numeric.go"},"7":{"name":"keyword.other.unit.imaginary.go"},"8":{"name":"keyword.other.unit.octal.go"},"9":{"name":"constant.numeric.octal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"10":{"name":"punctuation.separator.constant.numeric.go"},"11":{"name":"keyword.other.unit.imaginary.go"},"12":{"name":"keyword.other.unit.hexadecimal.go"},"13":{"name":"constant.numeric.hexadecimal.go","patterns":[{"match":"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.go"}]},"14":{"name":"punctuation.separator.constant.numeric.go"},"15":{"name":"keyword.other.unit.imaginary.go"}},"match":"(?:(?:(?:\\\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\\\w))?(?:\\\\n|$)|(\\\\G0[bB])_?([01](?:[01]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[oO]?)_?((?:[0-7]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))+)(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\\\w))?(?:\\\\n|$))"},{"match":"(?:(?:[0-9a-zA-Z_\\\\.])|(?<=[eEpP])[+-])+","name":"invalid.illegal.constant.numeric.go"}]}]}},"match":"(?<!\\\\w)\\\\.?\\\\d(?:(?:[0-9a-zA-Z_\\\\.])|(?<=[eEpP])[+-])*"},"operators":{"comment":"Note that the order here is very important!","patterns":[{"match":"((?:\\\\*|\\\\&)+)(?:(?!\\\\d)(?=(?:[\\\\w\\\\[\\\\]])|(?:\\\\<\\\\-)))","name":"keyword.operator.address.go"},{"match":"<\\\\-","name":"keyword.operator.channel.go"},{"match":"\\\\-\\\\-","name":"keyword.operator.decrement.go"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.go"},{"match":"(==|!=|<=|>=|<(?!<)|>(?!>))","name":"keyword.operator.comparison.go"},{"match":"(&&|\\\\|\\\\||!)","name":"keyword.operator.logical.go"},{"match":"(=|\\\\+=|\\\\-=|\\\\|=|\\\\^=|\\\\*=|/=|:=|%=|<<=|>>=|&\\\\^=|&=)","name":"keyword.operator.assignment.go"},{"match":"(\\\\+|\\\\-|\\\\*|/|%)","name":"keyword.operator.arithmetic.go"},{"match":"(&(?!\\\\^)|\\\\||\\\\^|&\\\\^|<<|>>|\\\\~)","name":"keyword.operator.arithmetic.bitwise.go"},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.ellipsis.go"}]},"other_struct_interface_expressions":{"comment":"struct and interface expression in-line (before curly bracket)","patterns":[{"comment":"after control variables must be added exactly here, do not move it! (changing may not affect tests, so be careful!)","include":"#after_control_variables"},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"entity.name.type.go"}]},"2":{"patterns":[{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.square.go"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}},"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"entity.name.type.go"},{"include":"$self"}]}]}},"match":"(\\\\b[\\\\w\\\\.]+)(\\\\[(?:[^\\\\]]+)?\\\\])?(?=\\\\{)(?<!\\\\bstruct\\\\b|\\\\binterface\\\\b)"}]},"other_variables":{"comment":"all other variables","match":"\\\\w+","name":"variable.other.go"},"package_name":{"patterns":[{"begin":"\\\\b(package)\\\\s+","beginCaptures":{"1":{"name":"keyword.package.go"}},"comment":"package name","end":"(?!\\\\G)","patterns":[{"match":"\\\\d\\\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\\\w+","name":"entity.name.type.package.go"}]}]},"parameter-variable-types":{"comment":"function and generic parameter types","patterns":[{"match":"\\\\{","name":"punctuation.definition.begin.bracket.curly.go"},{"match":"\\\\}","name":"punctuation.definition.end.bracket.curly.go"},{"begin":"(?:([\\\\w\\\\.\\\\*]+)?(\\\\[))","beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]},"2":{"name":"punctuation.definition.begin.bracket.square.go"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.go"}},"patterns":[{"include":"#generic_param_types"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"#function_param_types"}]}]},"property_variables":{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.other.property.go"}]}},"comment":"Property variables in struct","match":"((?:\\\\b[\\\\w\\\\.]+)(?:\\\\:(?!\\\\=)))"},"raw_string_literals":{"begin":"\`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.go"}},"comment":"Raw string literals","end":"\`","endCaptures":{"0":{"name":"punctuation.definition.string.end.go"}},"name":"string.quoted.raw.go","patterns":[{"include":"#string_placeholder"}]},"runes":{"patterns":[{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.go"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.go"}},"name":"string.quoted.rune.go","patterns":[{"match":"\\\\G(\\\\\\\\([0-7]{3}|[abfnrtv\\\\\\\\'\\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})|.)(?=')","name":"constant.other.rune.go"},{"match":"[^']+","name":"invalid.illegal.unknown-rune.go"}]}]},"single_type":{"patterns":[{"captures":{"1":{"name":"keyword.type.go"},"2":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"entity.name.type.go"}]},"3":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"#function_param_types"},{"include":"$self"}]},{"include":"#type-declarations"},{"include":"#generic_types"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"comment":"single type declaration","match":"(?:(?:^\\\\s*)(\\\\btype\\\\b)(?:\\\\s*)([\\\\w\\\\.\\\\*]+)(?:\\\\s+)(?!(?:\\\\=\\\\s*)?(?:[\\\\[\\\\]\\\\*]+)?\\\\b(?:struct|interface)\\\\b)([\\\\s\\\\S]+))"},{"begin":"(?:(?:^|\\\\s+)(\\\\btype\\\\b)(?:\\\\s*)([\\\\w\\\\.\\\\*]+)(?=\\\\[))","beginCaptures":{"1":{"name":"keyword.type.go"},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"comment":"single type declaration with generics","end":"(?:(?<=\\\\])((?:\\\\s+)(?:\\\\=\\\\s*)?(?:(?:(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:(?!(?:[\\\\[\\\\]\\\\*]+)?(?:\\\\bstruct\\\\b|\\\\binterface\\\\b|\\\\bfunc\\\\b))[\\\\w\\\\.\\\\-\\\\*\\\\[\\\\]]+(?:\\\\,\\\\s*[\\\\w\\\\.\\\\[\\\\]\\\\*]+)*))?)","endCaptures":{"1":{"patterns":[{"include":"#type-declarations-without-brackets"},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"patterns":[{"include":"#struct_variables_types"},{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"\\\\{","name":"punctuation.definition.begin.bracket.curly.go"},{"match":"\\\\}","name":"punctuation.definition.end.bracket.curly.go"},{"match":"\\\\(","name":"punctuation.definition.begin.bracket.round.go"},{"match":"\\\\)","name":"punctuation.definition.end.bracket.round.go"},{"match":"\\\\w+","name":"entity.name.type.go"}]}]},"slice_index_variables":{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.other.go"}]}},"comment":"slice index and capacity variables, to not scope them as property variables","match":"(?<=\\\\w\\\\[)((?:(?:\\\\b[\\\\w\\\\.\\\\*\\\\+/\\\\-\\\\%\\\\<\\\\>\\\\|\\\\&]+\\\\:)|(?:\\\\:\\\\b[\\\\w\\\\.\\\\*\\\\+/\\\\-\\\\%\\\\<\\\\>\\\\|\\\\&]+))(?:\\\\b[\\\\w\\\\.\\\\*\\\\+/\\\\-\\\\%\\\\<\\\\>\\\\|\\\\&]+)?(?:\\\\:\\\\b[\\\\w\\\\.\\\\*\\\\+/\\\\-\\\\%\\\\<\\\\>\\\\|\\\\&]+)?)(?=\\\\])"},"statements":{"patterns":[{"include":"#package_name"},{"include":"#import"},{"include":"#syntax_errors"},{"include":"#group-functions"},{"include":"#group-types"},{"include":"#group-variables"},{"include":"#field_hover"}]},"storage_types":{"patterns":[{"match":"\\\\bbool\\\\b","name":"storage.type.boolean.go"},{"match":"\\\\bbyte\\\\b","name":"storage.type.byte.go"},{"match":"\\\\berror\\\\b","name":"storage.type.error.go"},{"match":"\\\\b(complex(64|128)|float(32|64)|u?int(8|16|32|64)?)\\\\b","name":"storage.type.numeric.go"},{"match":"\\\\brune\\\\b","name":"storage.type.rune.go"},{"match":"\\\\bstring\\\\b","name":"storage.type.string.go"},{"match":"\\\\buintptr\\\\b","name":"storage.type.uintptr.go"},{"match":"\\\\bany\\\\b","name":"entity.name.type.any.go"}]},"string_escaped_char":{"patterns":[{"match":"\\\\\\\\([0-7]{3}|[abfnrtv\\\\\\\\'\\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})","name":"constant.character.escape.go"},{"match":"\\\\\\\\[^0-7xuUabfnrtv\\\\'\\"]","name":"invalid.illegal.unknown-escape.go"}]},"string_literals":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.go"}},"comment":"Interpreted string literals","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.go"}},"name":"string.quoted.double.go","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"}]}]},"string_placeholder":{"patterns":[{"match":"%(\\\\[\\\\d+\\\\])?([\\\\+#\\\\-0\\\\x20]{,2}((\\\\d+|\\\\*)?(\\\\.?(\\\\d+|\\\\*|(\\\\[\\\\d+\\\\])\\\\*?)?(\\\\[\\\\d+\\\\])?)?))?[vT%tbcdoqxXUbeEfFgGspw]","name":"constant.other.placeholder.go"}]},"struct_interface_declaration":{"captures":{"1":{"name":"keyword.type.go"},"2":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"comment":"struct, interface type declarations (related to: struct_variables_types, interface_variables_types)","match":"(?:(?:^\\\\s*)(\\\\btype\\\\b)(?:\\\\s*)([\\\\w\\\\.]+))"},"struct_variable_types_fields_multi":{"comment":"struct variable and type fields with multi lines","patterns":[{"begin":"(?:((?:\\\\w+(?:\\\\,\\\\s*\\\\w+)*)(?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:\\\\s+)(?:[\\\\[\\\\]\\\\*]+)?)(\\\\bstruct\\\\b)(?:\\\\s*)(\\\\{))","beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.other.property.go"}]},"2":{"name":"keyword.struct.go"},"3":{"name":"punctuation.definition.begin.bracket.curly.go"}},"comment":"struct in struct types","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}},"patterns":[{"include":"#struct_variables_types_fields"},{"include":"$self"}]},{"begin":"(?:((?:\\\\w+(?:\\\\,\\\\s*\\\\w+)*)(?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:\\\\s+)(?:[\\\\[\\\\]\\\\*]+)?)(\\\\binterface\\\\b)(?:\\\\s*)(\\\\{))","beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.other.property.go"}]},"2":{"name":"keyword.interface.go"},"3":{"name":"punctuation.definition.begin.bracket.curly.go"}},"comment":"interface in struct types","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}},"patterns":[{"include":"#interface_variables_types_field"},{"include":"$self"}]},{"begin":"(?:((?:\\\\w+(?:\\\\,\\\\s*\\\\w+)*)(?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:\\\\s+)(?:[\\\\[\\\\]\\\\*]+)?)(\\\\bfunc\\\\b)(?:\\\\s*)(\\\\())","beginCaptures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.other.property.go"}]},"2":{"name":"keyword.function.go"},"3":{"name":"punctuation.definition.begin.bracket.round.go"}},"comment":"function in struct types","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"#function_param_types"},{"include":"$self"}]},{"include":"#parameter-variable-types"}]},"struct_variables_types":{"begin":"(\\\\bstruct\\\\b)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"keyword.struct.go"},"2":{"name":"punctuation.definition.begin.bracket.curly.go"}},"comment":"Struct variable type","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}},"patterns":[{"include":"#struct_variables_types_fields"},{"include":"$self"}]},"struct_variables_types_fields":{"comment":"Struct variable type fields","patterns":[{"include":"#struct_variable_types_fields_multi"},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"comment":"one line - single type","match":"(?:(?<=\\\\{)\\\\s*((?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:[\\\\w\\\\.\\\\*\\\\[\\\\]]+))\\\\s*(?=\\\\}))"},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"variable.other.property.go"}]},"2":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"comment":"one line - property variables and types","match":"(?:(?<=\\\\{)\\\\s*((?:(?:\\\\w+\\\\,\\\\s*)+)?(?:\\\\w+\\\\s+))((?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:[\\\\w\\\\.\\\\*\\\\[\\\\]]+))\\\\s*(?=\\\\}))"},{"captures":{"1":{"patterns":[{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"variable.other.property.go"}]},"2":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"match":"(?:((?:(?:\\\\w+\\\\,\\\\s*)+)?(?:\\\\w+\\\\s+))?((?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:[\\\\S]+)(?:\\\\;)?))"}]}},"comment":"one line with semicolon(;) without formatting gofmt - single type | property variables and types","match":"(?:(?<=\\\\{)((?:\\\\s*(?:(?:(?:\\\\w+\\\\,\\\\s*)+)?(?:\\\\w+\\\\s+))?(?:(?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:[\\\\S]+)(?:\\\\;)?))+)\\\\s*(?=\\\\}))"},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"comment":"one type only","match":"(?:((?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?(?:[\\\\w\\\\.\\\\*]+)\\\\s*)(?:(?=\\\\\`|\\\\/|\\")|$))"},{"captures":{"1":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"variable.other.property.go"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#parameter-variable-types"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"comment":"property variables and types","match":"(?:((?:(?:\\\\w+\\\\,\\\\s*)+)?(?:\\\\w+\\\\s+))([^\\\\\`\\"\\\\/]+))"}]},"support_functions":{"captures":{"1":{"name":"entity.name.function.support.go"},"2":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\d\\\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\\\w+","name":"entity.name.function.support.go"}]},"3":{"patterns":[{"include":"#type-declarations-without-brackets"},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"\\\\{","name":"punctuation.definition.begin.bracket.curly.go"},{"match":"\\\\}","name":"punctuation.definition.end.bracket.curly.go"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"comment":"Support Functions","match":"(?:(?:((?<=\\\\.)\\\\b\\\\w+)|(\\\\b\\\\w+))(\\\\[(?:(?:[\\\\w\\\\.\\\\*\\\\[\\\\]\\\\{\\\\}\\"\\\\']+)(?:(?:\\\\,\\\\s*(?:[\\\\w\\\\.\\\\*\\\\[\\\\]\\\\{\\\\}]+))*))?\\\\])?(?=\\\\())"},"switch_select_case_variables":{"captures":{"1":{"name":"keyword.control.go"},"2":{"patterns":[{"include":"#type-declarations"},{"include":"#support_functions"},{"include":"#variable_assignment"},{"match":"\\\\w+","name":"variable.other.go"}]}},"comment":"variables after case control keyword in switch/select expression, to not scope them as property variables","match":"(?:(?:^\\\\s*(\\\\bcase\\\\b))(?:\\\\s+)([\\\\s\\\\S]+(?:\\\\:)\\\\s*(?:/(?:/|\\\\*).*)?)$)"},"switch_types":{"begin":"(?<=\\\\bswitch\\\\b)(?:\\\\s*)(?:(\\\\w+\\\\s*\\\\:\\\\=)?\\\\s*([\\\\w\\\\.\\\\*\\\\(\\\\)\\\\[\\\\]\\\\+/\\\\-\\\\%\\\\<\\\\>\\\\|\\\\&]+))(\\\\.\\\\(\\\\btype\\\\b\\\\)\\\\s*)(\\\\{)","beginCaptures":{"1":{"patterns":[{"include":"#operators"},{"match":"\\\\w+","name":"variable.other.assignment.go"}]},"2":{"patterns":[{"include":"#support_functions"},{"include":"#type-declarations"},{"match":"\\\\w+","name":"variable.other.go"}]},"3":{"patterns":[{"include":"#delimiters"},{"include":"#brackets"},{"match":"\\\\btype\\\\b","name":"keyword.type.go"}]},"4":{"name":"punctuation.definition.begin.bracket.curly.go"}},"comment":"switch type assertions, only highlights types after case keyword","end":"(?:\\\\})","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}},"patterns":[{"captures":{"1":{"name":"keyword.control.go"},"2":{"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"entity.name.type.go"}]},"3":{"name":"punctuation.other.colon.go"},"4":{"patterns":[{"include":"#comments"}]}},"comment":"types after case keyword with single line","match":"(?:^\\\\s*(\\\\bcase\\\\b))(?:\\\\s+)([\\\\w\\\\.\\\\,\\\\*\\\\=\\\\<\\\\>\\\\!\\\\s]+)(:)(\\\\s*/(?:/|\\\\*)\\\\s*.*)?$"},{"begin":"\\\\bcase\\\\b","beginCaptures":{"0":{"name":"keyword.control.go"}},"comment":"types after case keyword with multi lines","end":"\\\\:","endCaptures":{"0":{"name":"punctuation.other.colon.go"}},"patterns":[{"include":"#type-declarations"},{"match":"\\\\w+","name":"entity.name.type.go"}]},{"include":"$self"}]},"syntax_errors":{"patterns":[{"captures":{"1":{"name":"invalid.illegal.slice.go"}},"comment":"Syntax error using slices","match":"\\\\[\\\\](\\\\s+)"},{"comment":"Syntax error numeric literals","match":"\\\\b0[0-7]*[89]\\\\d*\\\\b","name":"invalid.illegal.numeric.go"}]},"terminators":{"comment":"Terminators","match":";","name":"punctuation.terminator.go"},"type-declarations":{"comment":"includes all type declarations","patterns":[{"include":"#language_constants"},{"include":"#comments"},{"include":"#map_types"},{"include":"#brackets"},{"include":"#delimiters"},{"include":"#keywords"},{"include":"#operators"},{"include":"#runes"},{"include":"#storage_types"},{"include":"#raw_string_literals"},{"include":"#string_literals"},{"include":"#numeric_literals"},{"include":"#terminators"}]},"type-declarations-without-brackets":{"comment":"includes all type declarations without brackets (in some cases, brackets need to be captured manually)","patterns":[{"include":"#language_constants"},{"include":"#comments"},{"include":"#map_types"},{"include":"#delimiters"},{"include":"#keywords"},{"include":"#operators"},{"include":"#runes"},{"include":"#storage_types"},{"include":"#raw_string_literals"},{"include":"#string_literals"},{"include":"#numeric_literals"},{"include":"#terminators"}]},"type_assertion_inline":{"captures":{"1":{"name":"keyword.type.go"},"2":{"patterns":[{"include":"#type-declarations"},{"match":"(?:\\\\w+)","name":"entity.name.type.go"}]}},"comment":"struct/interface types in-line (type assertion) | switch type keyword","match":"(?:(?<=\\\\.\\\\()(?:(\\\\btype\\\\b)|((?:(?:\\\\s*(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+)?[\\\\w\\\\.\\\\[\\\\]\\\\*]+))(?=\\\\)))"},"var_assignment":{"comment":"variable assignment with var keyword","patterns":[{"captures":{"1":{"patterns":[{"include":"#delimiters"},{"match":"\\\\w+","name":"variable.other.assignment.go"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#generic_types"},{"match":"\\\\(","name":"punctuation.definition.begin.bracket.round.go"},{"match":"\\\\)","name":"punctuation.definition.end.bracket.round.go"},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"comment":"single assignment","match":"(?:(?<=\\\\bvar\\\\b)(?:\\\\s*)(\\\\b[\\\\w\\\\.]+(?:\\\\,\\\\s*[\\\\w\\\\.]+)*)(?:\\\\s*)((?:(?:(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+(?:\\\\([^\\\\)]+\\\\))?)?(?!(?:[\\\\[\\\\]\\\\*]+)?\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w\\\\.\\\\[\\\\]\\\\*]+(?:\\\\,\\\\s*[\\\\w\\\\.\\\\[\\\\]\\\\*]+)*)?(?:\\\\s*)(?:\\\\=)?)?)"},{"begin":"(?:(?<=\\\\bvar\\\\b)(?:\\\\s*)(\\\\())","beginCaptures":{"1":{"name":"punctuation.definition.begin.bracket.round.go"}},"comment":"multi assignment","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"captures":{"1":{"patterns":[{"include":"#delimiters"},{"match":"\\\\w+","name":"variable.other.assignment.go"}]},"2":{"patterns":[{"include":"#type-declarations-without-brackets"},{"include":"#generic_types"},{"match":"\\\\(","name":"punctuation.definition.begin.bracket.round.go"},{"match":"\\\\)","name":"punctuation.definition.end.bracket.round.go"},{"match":"\\\\[","name":"punctuation.definition.begin.bracket.square.go"},{"match":"\\\\]","name":"punctuation.definition.end.bracket.square.go"},{"match":"\\\\w+","name":"entity.name.type.go"}]}},"match":"(?:(?:^\\\\s*)(\\\\b[\\\\w\\\\.]+(?:\\\\,\\\\s*[\\\\w\\\\.]+)*)(?:\\\\s*)((?:(?:(?:[\\\\*\\\\[\\\\]]+)?(?:\\\\<\\\\-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*\\\\<\\\\-)?\\\\s*)+(?:\\\\([^\\\\)]+\\\\))?)?(?!(?:[\\\\[\\\\]\\\\*]+)?\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w\\\\.\\\\[\\\\]\\\\*]+(?:\\\\,\\\\s*[\\\\w\\\\.\\\\[\\\\]\\\\*]+)*)?(?:\\\\s*)(?:\\\\=)?)?)"},{"include":"$self"}]}]},"variable_assignment":{"comment":"variable assignment","patterns":[{"captures":{"0":{"patterns":[{"include":"#delimiters"},{"match":"\\\\d\\\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\\\w+","name":"variable.other.assignment.go"}]}},"comment":"variable assignment with :=","match":"\\\\b\\\\w+(?:\\\\,\\\\s*\\\\w+)*(?=\\\\s*:=)"},{"captures":{"0":{"patterns":[{"include":"#delimiters"},{"include":"#operators"},{"match":"\\\\d\\\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\\\w+","name":"variable.other.assignment.go"}]}},"comment":"variable assignment with =","match":"\\\\b[\\\\w\\\\.\\\\*]+(?:\\\\,\\\\s*[\\\\w\\\\.\\\\*]+)*(?=\\\\s*=(?!=))"}]}},"scopeName":"source.go"}`)),UB=[dae]});var e$={};x(e$,{default:()=>pae});var uae,pae,t$=_(()=>{uae=Object.freeze(JSON.parse(`{"displayName":"Groovy","name":"groovy","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.groovy"}},"match":"^(#!).+$\\\\n","name":"comment.line.hashbang.groovy"},{"captures":{"1":{"name":"keyword.other.package.groovy"},"2":{"name":"storage.modifier.package.groovy"},"3":{"name":"punctuation.terminator.groovy"}},"match":"^\\\\s*(package)\\\\b(?:\\\\s*([^ ;$]+)\\\\s*(;)?)?","name":"meta.package.groovy"},{"begin":"(import static)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.other.import.static.groovy"}},"captures":{"1":{"name":"keyword.other.import.groovy"},"2":{"name":"storage.modifier.import.groovy"},"3":{"name":"punctuation.terminator.groovy"}},"contentName":"storage.modifier.import.groovy","end":"\\\\s*(?:$|(?=%>)(;))","endCaptures":{"1":{"name":"punctuation.terminator.groovy"}},"name":"meta.import.groovy","patterns":[{"match":"\\\\.","name":"punctuation.separator.groovy"},{"match":"\\\\s","name":"invalid.illegal.character_not_allowed_here.groovy"}]},{"begin":"(import)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.other.import.groovy"}},"captures":{"1":{"name":"keyword.other.import.groovy"},"2":{"name":"storage.modifier.import.groovy"},"3":{"name":"punctuation.terminator.groovy"}},"contentName":"storage.modifier.import.groovy","end":"\\\\s*(?:$|(?=%>)|(;))","endCaptures":{"1":{"name":"punctuation.terminator.groovy"}},"name":"meta.import.groovy","patterns":[{"match":"\\\\.","name":"punctuation.separator.groovy"},{"match":"\\\\s","name":"invalid.illegal.character_not_allowed_here.groovy"}]},{"captures":{"1":{"name":"keyword.other.import.groovy"},"2":{"name":"keyword.other.import.static.groovy"},"3":{"name":"storage.modifier.import.groovy"},"4":{"name":"punctuation.terminator.groovy"}},"match":"^\\\\s*(import)(?:\\\\s+(static)\\\\s+)\\\\b(?:\\\\s*([^ ;$]+)\\\\s*(;)?)?","name":"meta.import.groovy"},{"include":"#groovy"}],"repository":{"annotations":{"patterns":[{"begin":"(?<!\\\\.)(@[^ (]+)(\\\\()","beginCaptures":{"1":{"name":"storage.type.annotation.groovy"},"2":{"name":"punctuation.definition.annotation-arguments.begin.groovy"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.annotation-arguments.end.groovy"}},"name":"meta.declaration.annotation.groovy","patterns":[{"captures":{"1":{"name":"constant.other.key.groovy"},"2":{"name":"keyword.operator.assignment.groovy"}},"match":"(\\\\w*)\\\\s*(=)"},{"include":"#values"},{"match":",","name":"punctuation.definition.seperator.groovy"}]},{"match":"(?<!\\\\.)@\\\\S+","name":"storage.type.annotation.groovy"}]},"anonymous-classes-and-new":{"begin":"\\\\bnew\\\\b","beginCaptures":{"0":{"name":"keyword.control.new.groovy"}},"end":"(?<=\\\\)|\\\\])(?!\\\\s*{)|(?<=})|(?=[;])|$","patterns":[{"begin":"(\\\\w+)\\\\s*(?=\\\\[)","beginCaptures":{"1":{"name":"storage.type.groovy"}},"end":"}|(?=\\\\s*(?:,|;|\\\\)))|$","patterns":[{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#groovy"}]},{"begin":"{","end":"(?=})","patterns":[{"include":"#groovy"}]}]},{"begin":"(?=\\\\w.*\\\\(?)","end":"(?<=\\\\))|$","patterns":[{"include":"#object-types"},{"begin":"\\\\(","beginCaptures":{"1":{"name":"storage.type.groovy"}},"end":"\\\\)","patterns":[{"include":"#groovy"}]}]},{"begin":"{","end":"}","name":"meta.inner-class.groovy","patterns":[{"include":"#class-body"}]}]},"braces":{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#groovy-code"}]},"class":{"begin":"(?=\\\\w?[\\\\w\\\\s]*(?:class|(?:@)?interface|enum)\\\\s+\\\\w+)","end":"}","endCaptures":{"0":{"name":"punctuation.section.class.end.groovy"}},"name":"meta.definition.class.groovy","patterns":[{"include":"#storage-modifiers"},{"include":"#comments"},{"captures":{"1":{"name":"storage.modifier.groovy"},"2":{"name":"entity.name.type.class.groovy"}},"match":"(class|(?:@)?interface|enum)\\\\s+(\\\\w+)","name":"meta.class.identifier.groovy"},{"begin":"extends","beginCaptures":{"0":{"name":"storage.modifier.extends.groovy"}},"end":"(?={|implements)","name":"meta.definition.class.inherited.classes.groovy","patterns":[{"include":"#object-types-inherited"},{"include":"#comments"}]},{"begin":"(implements)\\\\s","beginCaptures":{"1":{"name":"storage.modifier.implements.groovy"}},"end":"(?=\\\\s*extends|\\\\{)","name":"meta.definition.class.implemented.interfaces.groovy","patterns":[{"include":"#object-types-inherited"},{"include":"#comments"}]},{"begin":"{","end":"(?=})","name":"meta.class.body.groovy","patterns":[{"include":"#class-body"}]}]},"class-body":{"patterns":[{"include":"#enum-values"},{"include":"#constructors"},{"include":"#groovy"}]},"closures":{"begin":"\\\\{(?=.*?->)","end":"\\\\}","patterns":[{"begin":"(?<=\\\\{)(?=[^\\\\}]*?->)","end":"->","endCaptures":{"0":{"name":"keyword.operator.groovy"}},"patterns":[{"begin":"(?!->)","end":"(?=->)","name":"meta.closure.parameters.groovy","patterns":[{"begin":"(?!,|->)","end":"(?=,|->)","name":"meta.closure.parameter.groovy","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.groovy"}},"end":"(?=,|->)","name":"meta.parameter.default.groovy","patterns":[{"include":"#groovy-code"}]},{"include":"#parameters"}]}]}]},{"begin":"(?=[^}])","end":"(?=\\\\})","patterns":[{"include":"#groovy-code"}]}]},"comment-block":{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.groovy"}},"end":"\\\\*/","name":"comment.block.groovy"},"comments":{"patterns":[{"captures":{"0":{"name":"punctuation.definition.comment.groovy"}},"match":"/\\\\*\\\\*/","name":"comment.block.empty.groovy"},{"include":"text.html.javadoc"},{"include":"#comment-block"},{"captures":{"1":{"name":"punctuation.definition.comment.groovy"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.groovy"}]},"constants":{"patterns":[{"match":"\\\\b([A-Z][A-Z0-9_]+)\\\\b","name":"constant.other.groovy"},{"match":"\\\\b(true|false|null)\\\\b","name":"constant.language.groovy"}]},"constructors":{"applyEndPatternLast":1,"begin":"(?<=;|^)(?=\\\\s*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)\\\\s+)*[A-Z]\\\\w*\\\\()","end":"}","patterns":[{"include":"#method-content"}]},"enum-values":{"patterns":[{"begin":"(?<=;|^)\\\\s*\\\\b([A-Z0-9_]+)(?=\\\\s*(?:,|;|}|\\\\(|$))","beginCaptures":{"1":{"name":"constant.enum.name.groovy"}},"end":",|;|(?=})|^(?!\\\\s*\\\\w+\\\\s*(?:,|$))","patterns":[{"begin":"\\\\(","end":"\\\\)","name":"meta.enum.value.groovy","patterns":[{"match":",","name":"punctuation.definition.seperator.parameter.groovy"},{"include":"#groovy-code"}]}]}]},"groovy":{"patterns":[{"include":"#comments"},{"include":"#class"},{"include":"#variables"},{"include":"#methods"},{"include":"#annotations"},{"include":"#groovy-code"}]},"groovy-code":{"patterns":[{"include":"#groovy-code-minus-map-keys"},{"include":"#map-keys"}]},"groovy-code-minus-map-keys":{"comment":"In some situations, maps can't be declared without enclosing []'s, \\n\\t\\t\\t\\ttherefore we create a collection of everything but that","patterns":[{"include":"#comments"},{"include":"#annotations"},{"include":"#support-functions"},{"include":"#keyword-language"},{"include":"#values"},{"include":"#anonymous-classes-and-new"},{"include":"#keyword-operator"},{"include":"#types"},{"include":"#storage-modifiers"},{"include":"#parens"},{"include":"#closures"},{"include":"#braces"}]},"keyword":{"patterns":[{"include":"#keyword-operator"},{"include":"#keyword-language"}]},"keyword-language":{"patterns":[{"match":"\\\\b(try|catch|finally|throw)\\\\b","name":"keyword.control.exception.groovy"},{"match":"\\\\b((?<!\\\\.)(?:return|break|continue|default|do|while|for|switch|if|else))\\\\b","name":"keyword.control.groovy"},{"begin":"\\\\bcase\\\\b","beginCaptures":{"0":{"name":"keyword.control.groovy"}},"end":":","endCaptures":{"0":{"name":"punctuation.definition.case-terminator.groovy"}},"name":"meta.case.groovy","patterns":[{"include":"#groovy-code-minus-map-keys"}]},{"begin":"\\\\b(assert)\\\\s","beginCaptures":{"1":{"name":"keyword.control.assert.groovy"}},"end":"$|;|}","name":"meta.declaration.assertion.groovy","patterns":[{"match":":","name":"keyword.operator.assert.expression-seperator.groovy"},{"include":"#groovy-code-minus-map-keys"}]},{"match":"\\\\b(throws)\\\\b","name":"keyword.other.throws.groovy"}]},"keyword-operator":{"patterns":[{"match":"\\\\b(as)\\\\b","name":"keyword.operator.as.groovy"},{"match":"\\\\b(in)\\\\b","name":"keyword.operator.in.groovy"},{"match":"\\\\?\\\\:","name":"keyword.operator.elvis.groovy"},{"match":"\\\\*\\\\:","name":"keyword.operator.spreadmap.groovy"},{"match":"\\\\.\\\\.","name":"keyword.operator.range.groovy"},{"match":"\\\\->","name":"keyword.operator.arrow.groovy"},{"match":"<<","name":"keyword.operator.leftshift.groovy"},{"match":"(?<=\\\\S)\\\\.(?=\\\\S)","name":"keyword.operator.navigation.groovy"},{"match":"(?<=\\\\S)\\\\?\\\\.(?=\\\\S)","name":"keyword.operator.safe-navigation.groovy"},{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.groovy"}},"end":"(?=$|\\\\)|}|])","name":"meta.evaluation.ternary.groovy","patterns":[{"match":":","name":"keyword.operator.ternary.expression-seperator.groovy"},{"include":"#groovy-code-minus-map-keys"}]},{"match":"==~","name":"keyword.operator.match.groovy"},{"match":"=~","name":"keyword.operator.find.groovy"},{"match":"\\\\b(instanceof)\\\\b","name":"keyword.operator.instanceof.groovy"},{"match":"(===|==|!=|<=|>=|<=>|<>|<|>|<<)","name":"keyword.operator.comparison.groovy"},{"match":"=","name":"keyword.operator.assignment.groovy"},{"match":"(\\\\-\\\\-|\\\\+\\\\+)","name":"keyword.operator.increment-decrement.groovy"},{"match":"(\\\\-|\\\\+|\\\\*|\\\\/|%)","name":"keyword.operator.arithmetic.groovy"},{"match":"(!|&&|\\\\|\\\\|)","name":"keyword.operator.logical.groovy"}]},"language-variables":{"patterns":[{"match":"\\\\b(this|super)\\\\b","name":"variable.language.groovy"}]},"map-keys":{"patterns":[{"captures":{"1":{"name":"constant.other.key.groovy"},"2":{"name":"punctuation.definition.seperator.key-value.groovy"}},"match":"(\\\\w+)\\\\s*(:)"}]},"method-call":{"begin":"([\\\\w$]+)(\\\\()","beginCaptures":{"1":{"name":"meta.method.groovy"},"2":{"name":"punctuation.definition.method-parameters.begin.groovy"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.method-parameters.end.groovy"}},"name":"meta.method-call.groovy","patterns":[{"match":",","name":"punctuation.definition.seperator.parameter.groovy"},{"include":"#groovy-code"}]},"method-content":{"patterns":[{"match":"\\\\s"},{"include":"#annotations"},{"begin":"(?=(?:\\\\w|<)[^\\\\(]*\\\\s+(?:[\\\\w$]|<)+\\\\s*\\\\()","end":"(?=[\\\\w$]+\\\\s*\\\\()","name":"meta.method.return-type.java","patterns":[{"include":"#storage-modifiers"},{"include":"#types"}]},{"begin":"([\\\\w$]+)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.java"}},"end":"\\\\)","name":"meta.definition.method.signature.java","patterns":[{"begin":"(?=[^)])","end":"(?=\\\\))","name":"meta.method.parameters.groovy","patterns":[{"begin":"(?=[^,)])","end":"(?=,|\\\\))","name":"meta.method.parameter.groovy","patterns":[{"match":",","name":"punctuation.definition.separator.groovy"},{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.groovy"}},"end":"(?=,|\\\\))","name":"meta.parameter.default.groovy","patterns":[{"include":"#groovy-code"}]},{"include":"#parameters"}]}]}]},{"begin":"(?=<)","end":"(?=\\\\s)","name":"meta.method.paramerised-type.groovy","patterns":[{"begin":"<","end":">","name":"storage.type.parameters.groovy","patterns":[{"include":"#types"},{"match":",","name":"punctuation.definition.seperator.groovy"}]}]},{"begin":"throws","beginCaptures":{"0":{"name":"storage.modifier.groovy"}},"end":"(?={|;)|^(?=\\\\s*(?:[^{\\\\s]|$))","name":"meta.throwables.groovy","patterns":[{"include":"#object-types"}]},{"begin":"{","end":"(?=})","name":"meta.method.body.java","patterns":[{"include":"#groovy-code"}]}]},"methods":{"applyEndPatternLast":1,"begin":"(?:(?<=;|^|{)(?=\\\\s*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|(?:def)|(?:(?:(?:void|boolean|byte|char|short|int|float|long|double)|(?:@?(?:[a-zA-Z]\\\\w*\\\\.)*[A-Z]+\\\\w*))[\\\\[\\\\]]*(?:<.*>)?))\\\\s+([^=]+\\\\s+)?\\\\w+\\\\s*\\\\())","end":"}|(?=[^{])","name":"meta.definition.method.groovy","patterns":[{"include":"#method-content"}]},"nest_curly":{"begin":"\\\\{","captures":{"0":{"name":"punctuation.section.scope.groovy"}},"end":"\\\\}","patterns":[{"include":"#nest_curly"}]},"numbers":{"patterns":[{"match":"((0(x|X)[0-9a-fA-F]*)|(\\\\+|-)?\\\\b(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)([LlFfUuDdg]|UL|ul)?\\\\b","name":"constant.numeric.groovy"}]},"object-types":{"patterns":[{"begin":"\\\\b((?:[a-z]\\\\w*\\\\.)*(?:[A-Z]+\\\\w*[a-z]+\\\\w*|UR[LI]))<","end":">|[^\\\\w\\\\s,\\\\?<\\\\[\\\\]]","name":"storage.type.generic.groovy","patterns":[{"include":"#object-types"},{"begin":"<","comment":"This is just to support <>'s with no actual type prefix","end":">|[^\\\\w\\\\s,\\\\[\\\\]<]","name":"storage.type.generic.groovy"}]},{"begin":"\\\\b((?:[a-z]\\\\w*\\\\.)*[A-Z]+\\\\w*[a-z]+\\\\w*)(?=\\\\[)","end":"(?=[^\\\\]\\\\s])","name":"storage.type.object.array.groovy","patterns":[{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#groovy"}]}]},{"match":"\\\\b(?:[a-zA-Z]\\\\w*\\\\.)*(?:[A-Z]+\\\\w*[a-z]+\\\\w*|UR[LI])\\\\b","name":"storage.type.groovy"}]},"object-types-inherited":{"patterns":[{"begin":"\\\\b((?:[a-zA-Z]\\\\w*\\\\.)*[A-Z]+\\\\w*[a-z]+\\\\w*)<","end":">|[^\\\\w\\\\s,\\\\?<\\\\[\\\\]]","name":"entity.other.inherited-class.groovy","patterns":[{"include":"#object-types-inherited"},{"begin":"<","comment":"This is just to support <>'s with no actual type prefix","end":">|[^\\\\w\\\\s,\\\\[\\\\]<]","name":"storage.type.generic.groovy"}]},{"captures":{"1":{"name":"keyword.operator.dereference.groovy"}},"match":"\\\\b(?:[a-zA-Z]\\\\w*(\\\\.))*[A-Z]+\\\\w*[a-z]+\\\\w*\\\\b","name":"entity.other.inherited-class.groovy"}]},"parameters":{"patterns":[{"include":"#annotations"},{"include":"#storage-modifiers"},{"include":"#types"},{"match":"\\\\w+","name":"variable.parameter.method.groovy"}]},"parens":{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#groovy-code"}]},"primitive-arrays":{"patterns":[{"match":"\\\\b(?:void|boolean|byte|char|short|int|float|long|double)(\\\\[\\\\])*\\\\b","name":"storage.type.primitive.array.groovy"}]},"primitive-types":{"patterns":[{"match":"\\\\b(?:void|boolean|byte|char|short|int|float|long|double)\\\\b","name":"storage.type.primitive.groovy"}]},"regexp":{"patterns":[{"begin":"/(?=[^/]+/([^>]|$))","beginCaptures":{"0":{"name":"punctuation.definition.string.regexp.begin.groovy"}},"end":"/","endCaptures":{"0":{"name":"punctuation.definition.string.regexp.end.groovy"}},"name":"string.regexp.groovy","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.groovy"}]},{"begin":"~\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.regexp.begin.groovy"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.regexp.end.groovy"}},"name":"string.regexp.compiled.groovy","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.groovy"}]}]},"storage-modifiers":{"patterns":[{"match":"\\\\b(private|protected|public)\\\\b","name":"storage.modifier.access-control.groovy"},{"match":"\\\\b(static)\\\\b","name":"storage.modifier.static.groovy"},{"match":"\\\\b(final)\\\\b","name":"storage.modifier.final.groovy"},{"match":"\\\\b(native|synchronized|abstract|threadsafe|transient)\\\\b","name":"storage.modifier.other.groovy"}]},"string-quoted-double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.groovy"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.groovy"}},"name":"string.quoted.double.groovy","patterns":[{"include":"#string-quoted-double-contents"}]},"string-quoted-double-contents":{"patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.groovy"},{"applyEndPatternLast":1,"begin":"\\\\$\\\\w","end":"(?=\\\\W)","name":"variable.other.interpolated.groovy","patterns":[{"match":"\\\\w","name":"variable.other.interpolated.groovy"},{"match":"\\\\.","name":"keyword.other.dereference.groovy"}]},{"begin":"\\\\$\\\\{","captures":{"0":{"name":"punctuation.section.embedded.groovy"}},"end":"\\\\}","name":"source.groovy.embedded.source","patterns":[{"include":"#nest_curly"}]}]},"string-quoted-double-multiline":{"begin":"\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.groovy"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.groovy"}},"name":"string.quoted.double.multiline.groovy","patterns":[{"include":"#string-quoted-double-contents"}]},"string-quoted-single":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.groovy"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.groovy"}},"name":"string.quoted.single.groovy","patterns":[{"include":"#string-quoted-single-contents"}]},"string-quoted-single-contents":{"patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.groovy"}]},"string-quoted-single-multiline":{"begin":"'''","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.groovy"}},"end":"'''","endCaptures":{"0":{"name":"punctuation.definition.string.end.groovy"}},"name":"string.quoted.single.multiline.groovy","patterns":[{"include":"#string-quoted-single-contents"}]},"strings":{"patterns":[{"include":"#string-quoted-double-multiline"},{"include":"#string-quoted-single-multiline"},{"include":"#string-quoted-double"},{"include":"#string-quoted-single"},{"include":"#regexp"}]},"structures":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.structure.begin.groovy"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.structure.end.groovy"}},"name":"meta.structure.groovy","patterns":[{"include":"#groovy-code"},{"match":",","name":"punctuation.definition.separator.groovy"}]},"support-functions":{"patterns":[{"match":"\\\\b(?:sprintf|print(?:f|ln)?)\\\\b","name":"support.function.print.groovy"},{"match":"\\\\b(?:shouldFail|fail(?:NotEquals)?|ass(?:ume|ert(?:S(?:cript|ame)|N(?:ot(?:Same|Null)|ull)|Contains|T(?:hat|oString|rue)|Inspect|Equals|False|Length|ArrayEquals)))\\\\b","name":"support.function.testing.groovy"}]},"types":{"patterns":[{"match":"\\\\b(def)\\\\b","name":"storage.type.def.groovy"},{"include":"#primitive-types"},{"include":"#primitive-arrays"},{"include":"#object-types"}]},"values":{"patterns":[{"include":"#language-variables"},{"include":"#strings"},{"include":"#numbers"},{"include":"#constants"},{"include":"#types"},{"include":"#structures"},{"include":"#method-call"}]},"variables":{"applyEndPatternLast":1,"patterns":[{"begin":"(?:(?=(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|(?:def)|(?:void|boolean|byte|char|short|int|float|long|double)|(?:(?:[a-z]\\\\w*\\\\.)*[A-Z]+\\\\w*))\\\\s+[\\\\w\\\\d_<>\\\\[\\\\],\\\\s]+(?:=|$)))","end":";|$","name":"meta.definition.variable.groovy","patterns":[{"match":"\\\\s"},{"captures":{"1":{"name":"constant.variable.groovy"}},"match":"([A-Z_0-9]+)\\\\s+(?=\\\\=)"},{"captures":{"1":{"name":"meta.definition.variable.name.groovy"}},"match":"(\\\\w[^\\\\s,]*)\\\\s+(?=\\\\=)"},{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.groovy"}},"end":"$","patterns":[{"include":"#groovy-code"}]},{"captures":{"1":{"name":"meta.definition.variable.name.groovy"}},"match":"(\\\\w[^\\\\s=]*)(?=\\\\s*($|;))"},{"include":"#groovy-code"}]}]}},"scopeName":"source.groovy"}`)),pae=[uae]});var n$={};x(n$,{default:()=>gae});var mae,gae,a$=_(()=>{Ye();Nn();mae=Object.freeze(JSON.parse(`{"displayName":"Hack","fileTypes":["hh","php","hack"],"foldingStartMarker":"(/\\\\*|\\\\{\\\\s*$|<<<HTML)","foldingStopMarker":"(\\\\*/|^\\\\s*\\\\}|^HTML;)","name":"hack","patterns":[{"include":"text.html.basic"},{"include":"#language"}],"repository":{"attributes":{"patterns":[{"begin":"(<<)(?!<)","beginCaptures":{"1":{"name":"punctuation.definition.attributes.php"}},"end":"(>>)","endCaptures":{"1":{"name":"punctuation.definition.attributes.php"}},"name":"meta.attributes.php","patterns":[{"include":"#comments"},{"match":"([A-Za-z_][A-Za-z0-9_]*)","name":"entity.other.attribute-name.php"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.php"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.php"}},"patterns":[{"include":"#language"}]}]}]},"class-builtin":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(?i)(\\\\\\\\)?\\\\b(st(dClass|reamWrapper)|R(RD(Graph|Creator|Updater)|untimeException|e(sourceBundle|cursive(RegexIterator|Ca(chingIterator|llbackFilterIterator)|TreeIterator|Iterator(Iterator)?|DirectoryIterator|FilterIterator|ArrayIterator)|flect(ion(Method|Class|ZendExtension|Object|P(arameter|roperty)|Extension|Function(Abstract)?)?|or)|gexIterator)|angeException)|G(ender\\\\Gender|lobIterator|magick(Draw|Pixel)?)|X(sltProcessor|ML(Reader|Writer)|SLTProcessor)|M(ysqlndUh(Connection|PreparedStatement)|ongo(Re(sultException|gex)|Grid(fsFile|FS(Cursor|File)?)|BinData|C(o(de|llection)|ursor(Exception)?|lient)|Timestamp|I(nt(32|64)|d)|D(B(Ref)?|ate)|Pool|Log)?|u(tex|ltipleIterator)|e(ssageFormatter|mcache(d)?))|Bad(MethodCallException|FunctionCallException)|tidy(Node)?|S(tackable|impleXML(Iterator|Element)|oap(Server|Header|Client|Param|Var|Fault)|NMP|CA(_(SoapProxy|LocalProxy))?|p(hinxClient|oofchecker|l(M(inHeap|axHeap)|S(tack|ubject)|Heap|T(ype|empFileObject)|Ob(server|jectStorage)|DoublyLinkedList|PriorityQueue|Enum|Queue|Fi(le(Info|Object)|xedArray)))|e(ssionHandler(Interface)?|ekableIterator|rializable)|DO_(Model_(ReflectionDataObject|Type|Property)|Sequence|D(ata(Object|Factory)|AS_(Relational|XML(_Document)?|Setting|ChangeSummary|Data(Object|Factory)))|Exception|List)|wish(Result(s)?|Search)?|VM(Model)?|QLite(Result|3(Result|Stmt)?|Database|Unbuffered)|AM(Message|Connection))|H(ttp(Re(sponse|quest(Pool)?)|Message|InflateStream|DeflateStream|QueryString)|aru(Image|Outline|D(oc|estination)|Page|Encoder|Font|Annotation))|Yaf_(R(oute(_(Re(write|gex)|Map|S(tatic|imple|upervar)|Interface)|r)|e(sponse_Abstract|quest_(Simple|Http|Abstract)|gistry))|Session|Con(troller_Abstract|fig_(Simple|Ini|Abstract))|Dispatcher|Plugin_Abstract|Exception|View_(Simple|Interface)|Loader|A(ction_Abstract|pplication))|N(o(RewindIterator|rmalizer)|umberFormatter)|C(o(nd|untable|llator)|a(chingIterator|llbackFilterIterator))|T(hread|okyoTyrant(Table|Iterator|Query)?|ra(nsliterator|versable))|I(n(tlDateFormatter|validArgumentException|finiteIterator)|terator(Iterator|Aggregate)?|magick(Draw|Pixel(Iterator)?)?)|php_user_filter|ZipArchive|O(CI-(Collection|Lob)|ut(erIterator|Of(RangeException|BoundsException))|verflowException)|D(irectory(Iterator)?|omainException|OM(XPath|N(ode(list)?|amedNodeMap)|C(haracterData|omment|dataSection)|Text|Implementation|Document(Fragment)?|ProcessingInstruction|E(ntityReference|lement)|Attr)|ate(Time(Zone)?|Interval|Period))|Un(derflowException|expectedValueException)|JsonSerializable|finfo|P(har(Data|FileInfo)?|DO(Statement)?|arentIterator)|E(v(S(tat|ignal)|Ch(ild|eck)|Timer|I(o|dle)|P(eriodic|repare)|Embed|Fork|Watcher|Loop)?|rrorException|xception|mptyIterator)|V(8Js(Exception)?|arnish(Stat|Log|Admin))|KTaglib_(MPEG_(File|AudioProperties)|Tag|ID3v2_(Tag|Frame|AttachedPictureFrame))|QuickHash(StringIntHash|Int(S(tringHash|et)|Hash))|Fil(terIterator|esystemIterator)|mysqli(_(stmt|driver|warning|result))?|W(orker|eak(Map|ref))|L(imitIterator|o(cale|gicException)|ua(Closure)?|engthException|apack)|A(MQP(C(hannel|onnection)|E(nvelope|xchange)|Queue)|ppendIterator|PCIterator|rray(Iterator|Object|Access)))\\\\b","name":"support.class.builtin.php"}]},"class-name":{"patterns":[{"begin":"(?i)(?=\\\\\\\\?[a-z_0-9]+\\\\\\\\)","end":"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\])","endCaptures":{"1":{"name":"support.class.php"}},"patterns":[{"include":"#namespace"}]},{"include":"#class-builtin"},{"begin":"(?=[\\\\\\\\a-zA-Z_])","end":"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\])","endCaptures":{"1":{"name":"support.class.php"}},"patterns":[{"include":"#namespace"}]}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?:#@\\\\+)?\\\\s*$","captures":{"0":{"name":"punctuation.definition.comment.php"}},"comment":"This now only highlights a docblock if the first line contains only /**\\n- this is to stop highlighting everything as invalid when people do comment banners with /******** ...\\n- Now matches /**#@+ too - used for docblock templates:\\n http://manual.phpdoc.org/HTMLframesConverter/default/phpDocumentor/tutorial_phpDocumentor.howto.pkg.html#basics.docblocktemplate","end":"\\\\*/","name":"comment.block.documentation.phpdoc.php","patterns":[{"include":"#php_doc"}]},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.php"}},"end":"\\\\*/","name":"comment.block.php"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.php"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"end":"\\\\n|(?=\\\\?>)","name":"comment.line.double-slash.php"}]}]},"constants":{"patterns":[{"begin":"(?xi)\\n(?=\\n (\\n (\\\\\\\\[a-z_][a-z_0-9]*\\\\\\\\[a-z_][a-z_0-9\\\\\\\\]*)\\n |\\n ([a-z_][a-z_0-9]*\\\\\\\\[a-z_][a-z_0-9\\\\\\\\]*)\\n )\\n [^a-z_0-9\\\\\\\\]\\n)","end":"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\])","endCaptures":{"1":{"name":"constant.other.php"}},"patterns":[{"include":"#namespace"}]},{"begin":"(?=\\\\\\\\?[a-zA-Z_\\\\x{7f}-\\\\x{ff}])","end":"(?=[^\\\\\\\\a-zA-Z_\\\\x{7f}-\\\\x{ff}])","patterns":[{"match":"(?i)\\\\b(TRUE|FALSE|NULL|__(FILE|DIR|FUNCTION|CLASS|METHOD|LINE|NAMESPACE)__)\\\\b","name":"constant.language.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(STD(IN|OUT|ERR)|ZEND_(THREAD_SAFE|DEBUG_BUILD)|DEFAULT_INCLUDE_PATH|P(HP_(R(OUND_HALF_(ODD|DOWN|UP|EVEN)|ELEASE_VERSION)|M(INOR_VERSION|A(XPATHLEN|JOR_VERSION))|BINDIR|S(HLIB_SUFFIX|YSCONFDIR|API)|CONFIG_FILE_(SCAN_DIR|PATH)|INT_(MAX|SIZE)|ZTS|O(S|UTPUT_HANDLER_(START|CONT|END))|D(EBUG|ATADIR)|URL_(SCHEME|HOST|USER|P(ORT|A(SS|TH))|QUERY|FRAGMENT)|PREFIX|E(XT(RA_VERSION|ENSION_DIR)|OL)|VERSION(_ID)?|WINDOWS_(NT_(SERVER|DOMAIN_CONTROLLER|WORKSTATION)|VERSION_(M(INOR|AJOR)|BUILD|S(UITEMASK|P_M(INOR|AJOR))|P(RODUCTTYPE|LATFORM)))|L(IBDIR|OCALSTATEDIR))|EAR_(INSTALL_DIR|EXTENSION_DIR))|E_(RECOVERABLE_ERROR|STRICT|NOTICE|CO(RE_(ERROR|WARNING)|MPILE_(ERROR|WARNING))|DEPRECATED|USER_(NOTICE|DEPRECATED|ERROR|WARNING)|PARSE|ERROR|WARNING|ALL))\\\\b","name":"support.constant.core.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(RADIXCHAR|GROUPING|M(_(1_PI|SQRT(1_2|2|3|PI)|2_(SQRTPI|PI)|PI(_(2|4))?|E(ULER)?|L(N(10|2|PI)|OG(10E|2E)))|ON_(GROUPING|1(1|2|0)?|7|2|8|THOUSANDS_SEP|3|DECIMAL_POINT|9|4|5|6))|S(TR_PAD_(RIGHT|BOTH|LEFT)|ORT_(REGULAR|STRING|NUMERIC|DESC|LOCALE_STRING|ASC)|EEK_(SET|CUR|END))|H(TML_(SPECIALCHARS|ENTITIES)|ASH_HMAC)|YES(STR|EXPR)|N(_(S(IGN_POSN|EP_BY_SPACE)|CS_PRECEDES)|O(STR|EXPR)|EGATIVE_SIGN|AN)|C(R(YPT_(MD5|BLOWFISH|S(HA(256|512)|TD_DES|ALT_LENGTH)|EXT_DES)|NCYSTR|EDITS_(G(ROUP|ENERAL)|MODULES|SAPI|DOCS|QA|FULLPAGE|ALL))|HAR_MAX|O(NNECTION_(NORMAL|TIMEOUT|ABORTED)|DESET|UNT_(RECURSIVE|NORMAL))|URRENCY_SYMBOL|ASE_(UPPER|LOWER))|__COMPILER_HALT_OFFSET__|T(HOUS(EP|ANDS_SEP)|_FMT(_AMPM)?)|IN(T_(CURR_SYMBOL|FRAC_DIGITS)|I_(S(YSTEM|CANNER_(RAW|NORMAL))|USER|PERDIR|ALL)|F(O_(GENERAL|MODULES|C(REDITS|ONFIGURATION)|ENVIRONMENT|VARIABLES|LICENSE|ALL))?)|D(_(T_FMT|FMT)|IRECTORY_SEPARATOR|ECIMAL_POINT|A(Y_(1|7|2|3|4|5|6)|TE_(R(SS|FC(1(123|036)|2822|8(22|50)|3339))|COOKIE|ISO8601|W3C|ATOM)))|UPLOAD_ERR_(NO_(TMP_DIR|FILE)|CANT_WRITE|INI_SIZE|OK|PARTIAL|EXTENSION|FORM_SIZE)|P(M_STR|_(S(IGN_POSN|EP_BY_SPACE)|CS_PRECEDES)|OSITIVE_SIGN|ATH(_SEPARATOR|INFO_(BASENAME|DIRNAME|EXTENSION|FILENAME)))|E(RA(_(YEAR|T_FMT|D_(T_FMT|FMT)))?|XTR_(REFS|SKIP|IF_EXISTS|OVERWRITE|PREFIX_(SAME|I(NVALID|F_EXISTS)|ALL))|NT_(NOQUOTES|COMPAT|IGNORE|QUOTES))|FRAC_DIGITS|L(C_(M(ONETARY|ESSAGES)|NUMERIC|C(TYPE|OLLATE)|TIME|ALL)|O(G_(MAIL|SYSLOG|N(O(TICE|WAIT)|DELAY|EWS)|C(R(IT|ON)|ONS)|INFO|ODELAY|D(EBUG|AEMON)|U(SER|UCP)|P(ID|ERROR)|E(RR|MERG)|KERN|WARNING|L(OCAL(1|7|2|3|4|5|0|6)|PR)|A(UTH(PRIV)?|LERT))|CK_(SH|NB|UN|EX)))|A(M_STR|B(MON_(1(1|2|0)?|7|2|8|3|9|4|5|6)|DAY_(1|7|2|3|4|5|6))|SSERT_(BAIL|CALLBACK|QUIET_EVAL|WARNING|ACTIVE)|LT_DIGITS))\\\\b","name":"support.constant.std.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(GLOB_(MARK|BRACE|NO(SORT|CHECK|ESCAPE)|ONLYDIR|ERR|AVAILABLE_FLAGS)|XML_(SAX_IMPL|HTML_DOCUMENT_NODE|N(OTATION_NODE|AMESPACE_DECL_NODE)|C(OMMENT_NODE|DATA_SECTION_NODE)|TEXT_NODE|OPTION_(SKIP_(TAGSTART|WHITE)|CASE_FOLDING|TARGET_ENCODING)|D(TD_NODE|OCUMENT_(NODE|TYPE_NODE|FRAG_NODE))|PI_NODE|E(RROR_(RECURSIVE_ENTITY_REF|MISPLACED_XML_PI|B(INARY_ENTITY_REF|AD_CHAR_REF)|SYNTAX|NO(NE|_(MEMORY|ELEMENTS))|TAG_MISMATCH|IN(CORRECT_ENCODING|VALID_TOKEN)|DUPLICATE_ATTRIBUTE|UN(CLOSED_(CDATA_SECTION|TOKEN)|DEFINED_ENTITY|KNOWN_ENCODING)|JUNK_AFTER_DOC_ELEMENT|PAR(TIAL_CHAR|AM_ENTITY_REF)|EXTERNAL_ENTITY_HANDLING|A(SYNC_ENTITY|TTRIBUTE_EXTERNAL_ENTITY_REF))|NTITY_(REF_NODE|NODE|DECL_NODE)|LEMENT_(NODE|DECL_NODE))|LOCAL_NAMESPACE|ATTRIBUTE_(N(MTOKEN(S)?|O(TATION|DE))|CDATA|ID(REF(S)?)?|DECL_NODE|EN(TITY|UMERATION)))|M(HASH_(RIPEMD(1(28|60)|256|320)|GOST|MD(2|4|5)|S(HA(1|2(24|56)|384|512)|NEFRU256)|HAVAL(1(28|92|60)|2(24|56))|CRC32(B)?|TIGER(1(28|60))?|WHIRLPOOL|ADLER32)|YSQL(_(BOTH|NUM|CLIENT_(SSL|COMPRESS|I(GNORE_SPACE|NTERACTIVE))|ASSOC)|I_(RE(PORT_(STRICT|INDEX|OFF|ERROR|ALL)|FRESH_(GRANT|MASTER|BACKUP_LOG|S(TATUS|LAVE)|HOSTS|T(HREADS|ABLES)|LOG)|AD_DEFAULT_(GROUP|FILE))|GROUP_FLAG|MULTIPLE_KEY_FLAG|B(INARY_FLAG|OTH|LOB_FLAG)|S(T(MT_ATTR_(CURSOR_TYPE|UPDATE_MAX_LENGTH|PREFETCH_ROWS)|ORE_RESULT)|E(RVER_QUERY_(NO_(GOOD_INDEX_USED|INDEX_USED)|WAS_SLOW)|T_(CHARSET_NAME|FLAG)))|N(O(_D(EFAULT_VALUE_FLAG|ATA)|T_NULL_FLAG)|UM(_FLAG)?)|C(URSOR_TYPE_(READ_ONLY|SCROLLABLE|NO_CURSOR|FOR_UPDATE)|LIENT_(SSL|NO_SCHEMA|COMPRESS|I(GNORE_SPACE|NTERACTIVE)|FOUND_ROWS))|T(YPE_(GEOMETRY|MEDIUM_BLOB|B(IT|LOB)|S(HORT|TRING|ET)|YEAR|N(ULL|EWD(ECIMAL|ATE))|CHAR|TI(ME(STAMP)?|NY(_BLOB)?)|INT(24|ERVAL)|D(OUBLE|ECIMAL|ATE(TIME)?)|ENUM|VAR_STRING|FLOAT|LONG(_BLOB|LONG)?)|IMESTAMP_FLAG)|INIT_COMMAND|ZEROFILL_FLAG|O(N_UPDATE_NOW_FLAG|PT_(NET_(READ_BUFFER_SIZE|CMD_BUFFER_SIZE)|CONNECT_TIMEOUT|INT_AND_FLOAT_NATIVE|LOCAL_INFILE))|D(EBUG_TRACE_ENABLED|ATA_TRUNCATED)|U(SE_RESULT|N(SIGNED_FLAG|IQUE_KEY_FLAG))|P(RI_KEY_FLAG|ART_KEY_FLAG)|ENUM_FLAG|A(S(SOC|YNC)|UTO_INCREMENT_FLAG)))|CRYPT_(R(C(2|6)|IJNDAEL_(1(28|92)|256)|AND)|GOST|XTEA|M(ODE_(STREAM|NOFB|C(BC|FB)|OFB|ECB)|ARS)|BLOWFISH(_COMPAT)?|S(ERPENT|KIPJACK|AFER(128|PLUS|64))|C(RYPT|AST_(128|256))|T(RIPLEDES|HREEWAY|WOFISH)|IDEA|3DES|DE(S|CRYPT|V_(RANDOM|URANDOM))|PANAMA|EN(CRYPT|IGNA)|WAKE|LOKI97|ARCFOUR(_IV)?))|S(TREAM_(REPORT_ERRORS|M(UST_SEEK|KDIR_RECURSIVE)|BUFFER_(NONE|FULL|LINE)|S(HUT_(RD(WR)?|WR)|OCK_(R(DM|AW)|S(TREAM|EQPACKET)|DGRAM)|ERVER_(BIND|LISTEN))|NOTIFY_(RE(SOLVE|DIRECTED)|MIME_TYPE_IS|SEVERITY_(INFO|ERR|WARN)|CO(MPLETED|NNECT)|PROGRESS|F(ILE_SIZE_IS|AILURE)|AUTH_RE(SULT|QUIRED))|C(RYPTO_METHOD_(SSLv(2(_(SERVER|CLIENT)|3_(SERVER|CLIENT))|3_(SERVER|CLIENT))|TLS_(SERVER|CLIENT))|LIENT_(CONNECT|PERSISTENT|ASYNC_CONNECT)|AST_(FOR_SELECT|AS_STREAM))|I(GNORE_URL|S_URL|PPROTO_(RAW|TCP|I(CMP|P)|UDP))|O(OB|PTION_(READ_(BUFFER|TIMEOUT)|BLOCKING|WRITE_BUFFER))|U(RL_STAT_(QUIET|LINK)|SE_PATH)|P(EEK|F_(INET(6)?|UNIX))|ENFORCE_SAFE_MODE|FILTER_(READ|WRITE|ALL))|UNFUNCS_RET_(STRING|TIMESTAMP|DOUBLE)|QLITE(_(R(OW|EADONLY)|MIS(MATCH|USE)|B(OTH|USY)|SCHEMA|N(O(MEM|T(FOUND|ADB)|LFS)|UM)|C(O(RRUPT|NSTRAINT)|ANTOPEN)|TOOBIG|I(NTER(RUPT|NAL)|OERR)|OK|DONE|P(ROTOCOL|ERM)|E(RROR|MPTY)|F(ORMAT|ULL)|LOCKED|A(BORT|SSOC|UTH))|3_(B(OTH|LOB)|NU(M|LL)|TEXT|INTEGER|OPEN_(READ(ONLY|WRITE)|CREATE)|FLOAT|ASSOC)))|CURL(M(SG_DONE|_(BAD_(HANDLE|EASY_HANDLE)|CALL_MULTI_PERFORM|INTERNAL_ERROR|O(UT_OF_MEMORY|K)))|SSH_AUTH_(HOST|NONE|DEFAULT|P(UBLICKEY|ASSWORD)|KEYBOARD)|CLOSEPOLICY_(SLOWEST|CALLBACK|OLDEST|LEAST_(RECENTLY_USED|TRAFFIC))|_(HTTP_VERSION_(1_(1|0)|NONE)|NETRC_(REQUIRED|IGNORED|OPTIONAL)|TIMECOND_(IF(MODSINCE|UNMODSINCE)|LASTMOD)|IPRESOLVE_(V(4|6)|WHATEVER)|VERSION_(SSL|IPV6|KERBEROS4|LIBZ))|INFO_(RE(DIRECT_(COUNT|TIME)|QUEST_SIZE)|S(SL_VERIFYRESULT|TARTTRANSFER_TIME|IZE_(DOWNLOAD|UPLOAD)|PEED_(DOWNLOAD|UPLOAD))|H(TTP_CODE|EADER_(SIZE|OUT))|NAMELOOKUP_TIME|C(ON(NECT_TIME|TENT_(TYPE|LENGTH_(DOWNLOAD|UPLOAD)))|ERTINFO)|TOTAL_TIME|PR(IVATE|ETRANSFER_TIME)|EFFECTIVE_URL|FILETIME)|OPT_(R(E(SUME_FROM|TURNTRANSFER|DIR_PROTOCOLS|FERER|AD(DATA|FUNCTION))|AN(GE|DOM_FILE))|MAX(REDIRS|CONNECTS)|B(INARYTRANSFER|UFFERSIZE)|S(S(H_(HOST_PUBLIC_KEY_MD5|P(RIVATE_KEYFILE|UBLIC_KEYFILE)|AUTH_TYPES)|L(CERT(TYPE|PASSWD)?|_(CIPHER_LIST|VERIFY(HOST|PEER))|ENGINE(_DEFAULT)?|VERSION|KEY(TYPE|PASSWD)?))|TDERR)|H(TTP(GET|HEADER|200ALIASES|_VERSION|PROXYTUNNEL|AUTH)|EADER(FUNCTION)?)|N(O(BODY|SIGNAL|PROGRESS)|ETRC)|C(RLF|O(NNECTTIMEOUT(_MS)?|OKIE(SESSION|JAR|FILE)?)|USTOMREQUEST|ERTINFO|LOSEPOLICY|A(INFO|PATH))|T(RANSFERTEXT|CP_NODELAY|IME(CONDITION|OUT(_MS)?|VALUE))|I(N(TERFACE|FILE(SIZE)?)|PRESOLVE)|DNS_(CACHE_TIMEOUT|USE_GLOBAL_CACHE)|U(RL|SER(PWD|AGENT)|NRESTRICTED_AUTH|PLOAD)|P(R(IVATE|O(GRESSFUNCTION|XY(TYPE|USERPWD|PORT|AUTH)?|TOCOLS))|O(RT|ST(REDIR|QUOTE|FIELDS)?)|UT)|E(GDSOCKET|NCODING)|VERBOSE|K(RB4LEVEL|EYPASSWD)|QUOTE|F(RESH_CONNECT|TP(SSLAUTH|_(S(SL|KIP_PASV_IP)|CREATE_MISSING_DIRS|USE_EP(RT|SV)|FILEMETHOD)|PORT|LISTONLY|APPEND)|ILE(TIME)?|O(RBID_REUSE|LLOWLOCATION)|AILONERROR)|WRITE(HEADER|FUNCTION)|LOW_SPEED_(TIME|LIMIT)|AUTOREFERER)|PRO(XY_(SOCKS(4|5)|HTTP)|TO_(S(CP|FTP)|HTTP(S)?|T(ELNET|FTP)|DICT|F(TP(S)?|ILE)|LDAP(S)?|ALL))|E_(RE(CV_ERROR|AD_ERROR)|GOT_NOTHING|MALFORMAT_USER|BAD_(C(ONTENT_ENCODING|ALLING_ORDER)|PASSWORD_ENTERED|FUNCTION_ARGUMENT)|S(S(H|L_(C(IPHER|ONNECT_ERROR|ERTPROBLEM|ACERT)|PEER_CERTIFICATE|ENGINE_(SETFAILED|NOTFOUND)))|HARE_IN_USE|END_ERROR)|HTTP_(RANGE_ERROR|NOT_FOUND|PO(RT_FAILED|ST_ERROR))|COULDNT_(RESOLVE_(HOST|PROXY)|CONNECT)|T(OO_MANY_REDIRECTS|ELNET_OPTION_SYNTAX)|O(BSOLETE|UT_OF_MEMORY|PERATION_TIMEOUTED|K)|U(RL_MALFORMAT(_USER)?|N(SUPPORTED_PROTOCOL|KNOWN_TELNET_OPTION))|PARTIAL_FILE|F(TP_(BAD_DOWNLOAD_RESUME|SSL_FAILED|C(OULDNT_(RETR_FILE|GET_SIZE|S(TOR_FILE|ET_(BINARY|ASCII))|USE_REST)|ANT_(RECONNECT|GET_HOST))|USER_PASSWORD_INCORRECT|PORT_FAILED|QUOTE_ERROR|W(RITE_ERROR|EIRD_(SERVER_REPLY|227_FORMAT|USER_REPLY|PAS(S_REPLY|V_REPLY)))|ACCESS_DENIED)|ILE(SIZE_EXCEEDED|_COULDNT_READ_FILE)|UNCTION_NOT_FOUND|AILED_INIT)|WRITE_ERROR|L(IBRARY_NOT_FOUND|DAP_(SEARCH_FAILED|CANNOT_BIND|INVALID_URL))|ABORTED_BY_CALLBACK)|VERSION_NOW|FTP(METHOD_(MULTICWD|SINGLECWD|NOCWD)|SSL_(NONE|CONTROL|TRY|ALL)|AUTH_(SSL|TLS|DEFAULT))|AUTH_(GSSNEGOTIATE|BASIC|NTLM|DIGEST|ANY(SAFE)?))|I(MAGETYPE_(GIF|XBM|BMP|SWF|COUNT|TIFF_(MM|II)|I(CO|FF)|UNKNOWN|J(B2|P(X|2|C|EG(2000)?))|P(SD|NG)|WBMP)|NPUT_(REQUEST|GET|SE(RVER|SSION)|COOKIE|POST|ENV)|CONV_(MIME_DECODE_(STRICT|CONTINUE_ON_ERROR)|IMPL|VERSION))|D(NS_(MX|S(RV|OA)|HINFO|N(S|APTR)|CNAME|TXT|PTR|A(NY|LL|AAA|6)?)|OM(STRING_SIZE_ERR|_(SYNTAX_ERR|HIERARCHY_REQUEST_ERR|N(O(_(MODIFICATION_ALLOWED_ERR|DATA_ALLOWED_ERR)|T_(SUPPORTED_ERR|FOUND_ERR))|AMESPACE_ERR)|IN(DEX_SIZE_ERR|USE_ATTRIBUTE_ERR|VALID_(MODIFICATION_ERR|STATE_ERR|CHARACTER_ERR|ACCESS_ERR))|PHP_ERR|VALIDATION_ERR|WRONG_DOCUMENT_ERR)))|JSON_(HEX_(TAG|QUOT|A(MP|POS))|NUMERIC_CHECK|ERROR_(S(YNTAX|TATE_MISMATCH)|NONE|CTRL_CHAR|DEPTH|UTF8)|FORCE_OBJECT)|P(REG_(RECURSION_LIMIT_ERROR|GREP_INVERT|BA(CKTRACK_LIMIT_ERROR|D_UTF8_(OFFSET_ERROR|ERROR))|S(PLIT_(NO_EMPTY|OFFSET_CAPTURE|DELIM_CAPTURE)|ET_ORDER)|NO_ERROR|INTERNAL_ERROR|OFFSET_CAPTURE|PATTERN_ORDER)|SFS_(PASS_ON|ERR_FATAL|F(EED_ME|LAG_(NORMAL|FLUSH_(CLOSE|INC))))|CRE_VERSION|OSIX_(R_OK|X_OK|S_IF(REG|BLK|SOCK|CHR|IFO)|F_OK|W_OK))|F(NM_(NOESCAPE|CASEFOLD|P(ERIOD|ATHNAME))|IL(TER_(REQUIRE_(SCALAR|ARRAY)|SANITIZE_(MAGIC_QUOTES|S(TRI(NG|PPED)|PECIAL_CHARS)|NUMBER_(INT|FLOAT)|URL|E(MAIL|NCODED)|FULL_SPECIAL_CHARS)|NULL_ON_FAILURE|CALLBACK|DEFAULT|UNSAFE_RAW|VALIDATE_(REGEXP|BOOLEAN|I(NT|P)|URL|EMAIL|FLOAT)|F(ORCE_ARRAY|LAG_(S(CHEME_REQUIRED|TRIP_(BACKTICK|HIGH|LOW))|HOST_REQUIRED|NO(NE|_(RES_RANGE|PRIV_RANGE|ENCODE_QUOTES))|IPV(4|6)|PATH_REQUIRED|E(MPTY_STRING_NULL|NCODE_(HIGH|LOW|AMP))|QUERY_REQUIRED|ALLOW_(SCIENTIFIC|HEX|THOUSAND|OCTAL|FRACTION))))|E(_(BINARY|SKIP_EMPTY_LINES|NO_DEFAULT_CONTEXT|TEXT|IGNORE_NEW_LINES|USE_INCLUDE_PATH|APPEND)|INFO_(RAW|MIME(_(TYPE|ENCODING))?|SYMLINK|NONE|CONTINUE|DEVICES|PRESERVE_ATIME)))|ORCE_(GZIP|DEFLATE))|LIBXML_(XINCLUDE|N(SCLEAN|O(XMLDECL|BLANKS|NET|CDATA|E(RROR|MPTYTAG|NT)|WARNING))|COMPACT|D(TD(VALID|LOAD|ATTR)|OTTED_VERSION)|PARSEHUGE|ERR_(NONE|ERROR|FATAL|WARNING)|VERSION|LOADED_VERSION))\\\\b","name":"support.constant.ext.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\bT_(RE(TURN|QUIRE(_ONCE)?)|G(OTO|LOBAL)|XOR_EQUAL|M(INUS_EQUAL|OD_EQUAL|UL_EQUAL|ETHOD_C|L_COMMENT)|B(REAK|OOL(_CAST|EAN_(OR|AND))|AD_CHARACTER)|S(R(_EQUAL)?|T(RING(_(CAST|VARNAME))?|A(RT_HEREDOC|TIC))|WITCH|L(_EQUAL)?)|HALT_COMPILER|N(S_(SEPARATOR|C)|UM_STRING|EW|AMESPACE)|C(HARACTER|O(MMENT|N(ST(ANT_ENCAPSED_STRING)?|CAT_EQUAL|TINUE))|URLY_OPEN|L(O(SE_TAG|NE)|ASS(_C)?)|A(SE|TCH))|T(RY|HROW)|I(MPLEMENTS|S(SET|_(GREATER_OR_EQUAL|SMALLER_OR_EQUAL|NOT_(IDENTICAL|EQUAL)|IDENTICAL|EQUAL))|N(STANCEOF|C(LUDE(_ONCE)?)?|T(_CAST|ERFACE)|LINE_HTML)|F)|O(R_EQUAL|BJECT_(CAST|OPERATOR)|PEN_TAG(_WITH_ECHO)?|LD_FUNCTION)|D(NUMBER|I(R|V_EQUAL)|O(C_COMMENT|UBLE_(C(OLON|AST)|ARROW)|LLAR_OPEN_CURLY_BRACES)?|E(C(LARE)?|FAULT))|U(SE|NSET(_CAST)?)|P(R(I(NT|VATE)|OTECTED)|UBLIC|LUS_EQUAL|AAMAYIM_NEKUDOTAYIM)|E(X(TENDS|IT)|MPTY|N(CAPSED_AND_WHITESPACE|D(SWITCH|_HEREDOC|IF|DECLARE|FOR(EACH)?|WHILE))|CHO|VAL|LSE(IF)?)|VAR(IABLE)?|F(I(NAL|LE)|OR(EACH)?|UNC(_C|TION))|WHI(TESPACE|LE)|L(NUMBER|I(ST|NE)|OGICAL_(XOR|OR|AND))|A(RRAY(_CAST)?|BSTRACT|S|ND_EQUAL))\\\\b","name":"support.constant.parser-token.php"},{"comment":"In PHP, any identifier which is not a variable is taken to be a constant.\\nHowever, if there is no constant defined with the given name then a notice\\nis generated and the constant is assumed to have the value of its name.","match":"[a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*","name":"constant.other.php"}]}]},"function-arguments":{"patterns":[{"include":"#comments"},{"include":"#attributes"},{"include":"#type-annotation"},{"begin":"(?xi)((\\\\$+)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*) # The variable name","beginCaptures":{"1":{"name":"variable.other.php"},"2":{"name":"punctuation.definition.variable.php"}},"end":"(?xi)\\n\\\\s*(?=,|\\\\)|$) # A closing parentheses (end of argument list) or a comma","patterns":[{"begin":"(=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.php"}},"end":"(?=,|\\\\))","patterns":[{"include":"#language"}]}]}]},"function-call":{"patterns":[{"begin":"(?i)(?=\\\\\\\\?[a-z_0-9\\\\\\\\]+\\\\\\\\[a-z_][a-z0-9_]*\\\\s*\\\\()","comment":"Functions in a user-defined namespace (overrides any built-ins)","end":"(?=\\\\s*\\\\()","patterns":[{"include":"#user-function-call"}]},{"match":"(?i)\\\\b(print|echo)\\\\b","name":"support.function.construct.php"},{"begin":"(?i)(\\\\\\\\)?(?=\\\\b[a-z_][a-z_0-9]*\\\\s*\\\\()","beginCaptures":{"1":{"name":"punctuation.separator.inheritance.php"}},"comment":"Root namespace function calls (built-in or user)","end":"(?=\\\\s*\\\\()","patterns":[{"match":"(?i)\\\\b(isset|unset|e(val|mpty)|list)(?=\\\\s*\\\\()","name":"support.function.construct.php"},{"include":"#support"},{"include":"#user-function-call"}]}]},"function-return-type":{"patterns":[{"begin":"(:)","beginCaptures":{"1":{"name":"punctuation.definition.type.php"}},"end":"(?=[{;])","patterns":[{"include":"#comments"},{"include":"#type-annotation"},{"include":"#class-name"}]}]},"generics":{"patterns":[{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.generics.php"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.generics.php"}},"name":"meta.generics.php","patterns":[{"include":"#comments"},{"include":"#generics"},{"match":"([-+])?([A-Za-z_][A-Za-z0-9_]*)(?:\\\\s+(as|super)\\\\s+([A-Za-z_][A-Za-z0-9_]*))?","name":"support.type.php"},{"include":"#type-annotation"}]}]},"heredoc":{"patterns":[{"begin":"<<<\\\\s*(\\"?)([a-zA-Z_]+[a-zA-Z0-9_]*)(\\\\1)\\\\s*$","beginCaptures":{"2":{"name":"keyword.operator.heredoc.php"}},"end":"^(\\\\2)(?=;?$)","endCaptures":{"1":{"name":"keyword.operator.heredoc.php"}},"name":"string.unquoted.heredoc.php","patterns":[{"include":"#interpolation"}]},{"begin":"<<<\\\\s*('?)([a-zA-Z_]+[a-zA-Z0-9_]*)(\\\\1)\\\\s*$","beginCaptures":{"2":{"name":"keyword.operator.heredoc.php"}},"end":"^(\\\\2)(?=;?$)","endCaptures":{"1":{"name":"keyword.operator.heredoc.php"}},"name":"string.unquoted.heredoc.nowdoc.php"}]},"implements":{"patterns":[{"begin":"(?i)(implements)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.implements.php"}},"end":"(?i)(?=[;{])","patterns":[{"include":"#comments"},{"begin":"(?i)(?=[a-z0-9_\\\\\\\\]+)","contentName":"meta.other.inherited-class.php","end":"(?i)(?:\\\\s*(?:,|(?=[^a-z0-9_\\\\\\\\\\\\s]))\\\\s*)","patterns":[{"begin":"(?i)(?=\\\\\\\\?[a-z_0-9]+\\\\\\\\)","end":"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\])","endCaptures":{"1":{"name":"entity.other.inherited-class.php"}},"patterns":[{"include":"#namespace"}]},{"include":"#class-builtin"},{"include":"#namespace"},{"match":"(?i)[a-z_][a-z_0-9]*","name":"entity.other.inherited-class.php"}]}]}]},"instantiation":{"begin":"(?i)(new)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.new.php"}},"end":"(?i)(?=[^$a-z0-9_\\\\\\\\])","patterns":[{"match":"(parent|static|self)(?=[^a-z0-9_])","name":"support.type.php"},{"include":"#class-name"},{"include":"#variable-name"}]},"interface":{"begin":"^(?i)\\\\s*(?:(public|internal)\\\\s+)?(interface)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.php"},"2":{"name":"storage.type.interface.php"}},"end":"(?=[;{])","name":"meta.interface.php","patterns":[{"include":"#comments"},{"captures":{"1":{"name":"storage.modifier.extends.php"}},"match":"\\\\b(extends)\\\\b"},{"include":"#generics"},{"include":"#namespace"},{"match":"(?i)[a-z0-9_]+","name":"entity.name.type.class.php"}]},"interpolation":{"comment":"http://www.php.net/manual/en/language.types.string.php#language.types.string.parsing","patterns":[{"comment":"Interpolating octal values e.g. \\\\01 or \\\\07.","match":"\\\\\\\\[0-7]{1,3}","name":"constant.numeric.octal.php"},{"comment":"Interpolating hex values e.g. \\\\x1 or \\\\xFF.","match":"\\\\\\\\x[0-9A-Fa-f]{1,2}","name":"constant.numeric.hex.php"},{"comment":"Escaped characters in double-quoted strings e.g. \\\\n or \\\\t.","match":"\\\\\\\\[nrt\\\\\\\\\\\\$\\\\\\"]","name":"constant.character.escape.php"},{"comment":"Interpolating expressions in double-quoted strings with {} e.g. {$x->y->z[0][1]}.","match":"(\\\\{\\\\$.*?\\\\})","name":"variable.other.php"},{"comment":"Interpolating simple variables, e.g. $x, $x->y, $x[z] but not $x->y->z.","match":"(\\\\$[a-zA-Z_][a-zA-Z0-9_]*((->[a-zA-Z_][a-zA-Z0-9_]*)|(\\\\[[a-zA-Z0-9_]+\\\\]))?)","name":"variable.other.php"}]},"invoke-call":{"captures":{"1":{"name":"punctuation.definition.variable.php"},"2":{"name":"variable.other.php"}},"match":"(?i)(\\\\$+)([a-z_][a-z_0-9]*)(?=\\\\s*\\\\()","name":"meta.function-call.invoke.php"},"language":{"patterns":[{"include":"#comments"},{"begin":"(?=^\\\\s*<<)","end":"(?<=>>)","patterns":[{"include":"#attributes"}]},{"include":"#xhp"},{"include":"#interface"},{"begin":"(?xi)\\n^\\\\s*\\n(?:(module)\\\\s*)?(type|newtype)\\n\\\\s+\\n([a-z0-9_]+)","beginCaptures":{"1":{"name":"storage.modifier.php"},"2":{"name":"storage.type.typedecl.php"},"3":{"name":"entity.name.type.typedecl.php"}},"end":"(;)","endCaptures":{"1":{"name":"punctuation.termination.expression.php"}},"name":"meta.typedecl.php","patterns":[{"include":"#comments"},{"include":"#generics"},{"match":"(=)","name":"keyword.operator.assignment.php"},{"include":"#type-annotation"}]},{"begin":"(?i)^\\\\s*(?:(public|internal)\\\\s+)?(enum)\\\\s+(class)\\\\s+([a-z0-9_]+)\\\\s*:?","beginCaptures":{"1":{"name":"storage.modifier.php"},"2":{"name":"storage.modifier.php"},"3":{"name":"storage.type.class.enum.php"},"4":{"name":"entity.name.type.class.enum.php"}},"end":"(?=[{])","name":"meta.class.enum.php","patterns":[{"match":"\\\\b(extends)\\\\b","name":"storage.modifier.extends.php"},{"include":"#type-annotation"}]},{"begin":"(?i)^\\\\s*(?:(public|internal)\\\\s+)?(enum)\\\\s+([a-z0-9_]+)\\\\s*:?","beginCaptures":{"1":{"name":"storage.modifier.php"},"2":{"name":"storage.type.enum.php"},"3":{"name":"entity.name.type.enum.php"}},"end":"\\\\{","name":"meta.enum.php","patterns":[{"include":"#comments"},{"include":"#type-annotation"}]},{"begin":"(?i)^\\\\s*(?:(public|internal)\\\\s+)?(trait)\\\\s+([a-z0-9_]+)\\\\s*","beginCaptures":{"1":{"name":"storage.modifier.php"},"2":{"name":"storage.type.trait.php"},"3":{"name":"entity.name.type.class.php"}},"end":"(?=[{])","name":"meta.trait.php","patterns":[{"include":"#comments"},{"include":"#generics"},{"include":"#implements"}]},{"begin":"^\\\\s*(new)\\\\s+(module)\\\\s+([A-Za-z0-9_\\\\.]+)\\\\b","beginCaptures":{"1":{"name":"storage.type.module.php"},"2":{"name":"storage.type.module.php"},"3":{"name":"entity.name.type.module.php"}},"end":"(?=[{])","name":"meta.module.php","patterns":[{"include":"#comments"}]},{"begin":"^\\\\s*(module)\\\\s+([A-Za-z0-9_\\\\.]+)\\\\b","beginCaptures":{"1":{"name":"keyword.other.module.php"},"2":{"name":"entity.name.type.module.php"}},"end":"$|(?=[\\\\s;])","name":"meta.use.module.php","patterns":[{"include":"#comments"}]},{"begin":"(?i)(?:^\\\\s*|\\\\s*)(namespace)\\\\b\\\\s+(?=([a-z0-9_\\\\\\\\]*\\\\s*($|[;{]|(\\\\/[\\\\/*])))|$)","beginCaptures":{"1":{"name":"keyword.other.namespace.php"}},"contentName":"entity.name.type.namespace.php","end":"(?i)(?=\\\\s*$|[^a-z0-9_\\\\\\\\])","name":"meta.namespace.php","patterns":[{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]},{"begin":"(?i)\\\\s*\\\\b(use)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.use.php"}},"end":"(?=;|(?:^\\\\s*$))","name":"meta.use.php","patterns":[{"include":"#comments"},{"begin":"(?i)\\\\s*(?=[a-z_0-9\\\\\\\\])","end":"(?xi)\\n(?:\\n (?:\\\\s*(as)\\\\b\\\\s*([a-z_0-9]*)\\\\s*(?=,|;|$))|\\n (?=,|;|$)\\n)","endCaptures":{"1":{"name":"keyword.other.use-as.php"},"2":{"name":"support.other.namespace.use-as.php"}},"patterns":[{"include":"#class-builtin"},{"begin":"(?i)\\\\s*(?=[\\\\\\\\a-z_0-9])","end":"$|(?=[\\\\s,;])","name":"support.other.namespace.use.php","patterns":[{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]}]},{"match":"\\\\s*,\\\\s*"}]},{"begin":"(?i)^\\\\s*((?:(?:final|abstract|public|internal)\\\\s+)*)(class)\\\\s+([a-z0-9_]+)\\\\s*","beginCaptures":{"1":{"patterns":[{"match":"final|abstract|public|internal","name":"storage.modifier.php"}]},"2":{"name":"storage.type.class.php"},"3":{"name":"entity.name.type.class.php"}},"end":"(?=[;{])","name":"meta.class.php","patterns":[{"include":"#comments"},{"include":"#generics"},{"include":"#implements"},{"begin":"(?i)(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.extends.php"}},"contentName":"meta.other.inherited-class.php","end":"(?i)(?=[^a-z_0-9\\\\\\\\])","patterns":[{"begin":"(?i)(?=\\\\\\\\?[a-z_0-9]+\\\\\\\\)","end":"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\])","endCaptures":{"1":{"name":"entity.other.inherited-class.php"}},"patterns":[{"include":"#namespace"}]},{"include":"#class-builtin"},{"include":"#namespace"},{"match":"(?i)[a-z_][a-z_0-9]*","name":"entity.other.inherited-class.php"}]}]},{"captures":{"1":{"name":"keyword.control.php"}},"match":"\\\\s*\\\\b(await|break|c(ase|ontinue)|concurrent|default|do|else|for(each)?|if|return|switch|use|while)\\\\b"},{"begin":"(?i)\\\\b((?:require|include)(?:_once)?)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.import.include.php"}},"end":"(?=\\\\s|;|$)","name":"meta.include.php","patterns":[{"include":"#language"}]},{"begin":"\\\\b(catch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.exception.catch.php"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"name":"meta.catch.php","patterns":[{"include":"#namespace"},{"captures":{"1":{"name":"support.class.exception.php"},"2":{"patterns":[{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*","name":"support.class.exception.php"},{"match":"\\\\|","name":"punctuation.separator.delimiter.php"}]},"3":{"name":"variable.other.php"},"4":{"name":"punctuation.definition.variable.php"}},"match":"(?xi)\\n([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Exception class\\n((?:\\\\s*\\\\|\\\\s*[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)*) # Optional additional exception classes\\n\\\\s*\\n((\\\\$+)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Variable"}]},{"match":"\\\\b(catch|try|throw|exception|finally)\\\\b","name":"keyword.control.exception.php"},{"begin":"(?i)\\\\s*(?:(public|internal)\\\\s+)?(function)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.modifier.php"},"2":{"name":"storage.type.function.php"}},"end":"\\\\{|\\\\)","name":"meta.function.closure.php","patterns":[{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.php"}},"contentName":"meta.function.arguments.php","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.php"}},"patterns":[{"include":"#function-arguments"}]},{"begin":"(?i)(use)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.function.use.php"},"2":{"name":"punctuation.definition.parameters.begin.php"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.php"}},"patterns":[{"captures":{"1":{"name":"storage.modifier.reference.php"},"2":{"name":"variable.other.php"},"3":{"name":"punctuation.definition.variable.php"}},"match":"(?:\\\\s*(&))?\\\\s*((\\\\$+)[a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*)\\\\s*(?=,|\\\\))","name":"meta.function.closure.use.php"}]}]},{"begin":"\\\\s*((?:(?:final|abstract|public|private|protected|internal|static|async)\\\\s+)*)(function)(?:\\\\s+)(?:(__(?:call|construct|destruct|get|set|isset|unset|tostring|clone|set_state|sleep|wakeup|autoload|invoke|callStatic|dispose|disposeAsync)(?=[^a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]))|([a-zA-Z0-9_]+))","beginCaptures":{"1":{"patterns":[{"match":"final|abstract|public|private|protected|internal|static|async","name":"storage.modifier.php"}]},"2":{"name":"storage.type.function.php"},"3":{"name":"support.function.magic.php"},"4":{"name":"entity.name.function.php"},"5":{"name":"meta.function.generics.php"}},"end":"(?=[{;])","name":"meta.function.php","patterns":[{"include":"#generics"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.php"}},"contentName":"meta.function.arguments.php","end":"(?=\\\\))","patterns":[{"include":"#function-arguments"}]},{"begin":"(\\\\))","beginCaptures":{"1":{"name":"punctuation.definition.parameters.end.php"}},"end":"(?=[{;])","patterns":[{"include":"#function-return-type"}]}]},{"include":"#invoke-call"},{"begin":"(?xi)\\n\\\\s*\\n (?=\\n [a-z_0-9$\\\\\\\\]+(::)\\n (?:\\n ([a-z_][a-z_0-9]*)\\\\s*\\\\(\\n |\\n ((\\\\$+)[a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)\\n |\\n ([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)\\n )?\\n )","end":"(::)(?:([A-Za-z_][A-Za-z_0-9]*)\\\\s*\\\\(|((\\\\$+)[a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*)|([a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*))?","endCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"meta.function-call.static.php"},"3":{"name":"variable.other.class.php"},"4":{"name":"punctuation.definition.variable.php"},"5":{"name":"constant.other.class.php"}},"patterns":[{"match":"(self|static|parent)\\\\b","name":"support.type.php"},{"include":"#class-name"},{"include":"#variable-name"}]},{"include":"#variables"},{"include":"#strings"},{"captures":{"1":{"name":"support.function.construct.php"},"2":{"name":"punctuation.definition.array.begin.php"},"3":{"name":"punctuation.definition.array.end.php"}},"match":"(array)(\\\\()(\\\\))","name":"meta.array.empty.php"},{"begin":"(array)(\\\\()","beginCaptures":{"1":{"name":"support.function.construct.php"},"2":{"name":"punctuation.definition.array.begin.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.array.end.php"}},"name":"meta.array.php","patterns":[{"include":"#language"}]},{"captures":{"1":{"name":"support.type.php"}},"match":"(?i)\\\\s*\\\\(\\\\s*(array|real|double|float|int(eger)?|bool(ean)?|string|object|binary|unset|arraykey|nonnull|dict|vec|keyset)\\\\s*\\\\)"},{"match":"(?i)\\\\b(array|real|double|float|int(eger)?|bool(ean)?|string|class|clone|var|function|interface|trait|parent|self|object|arraykey|nonnull|dict|vec|keyset)\\\\b","name":"support.type.php"},{"match":"(?i)\\\\b(global|abstract|const|extends|implements|final|p(r(ivate|otected)|ublic)|internal|static)\\\\b","name":"storage.modifier.php"},{"include":"#object"},{"match":";","name":"punctuation.terminator.expression.php"},{"include":"#heredoc"},{"match":"\\\\.=?","name":"keyword.operator.string.php"},{"match":"=>","name":"keyword.operator.key.php"},{"match":"==>","name":"keyword.operator.lambda.php"},{"match":"\\\\|>","name":"keyword.operator.pipe.php"},{"match":"(!==|!=|===|==)","name":"keyword.operator.comparison.php"},{"match":"=|\\\\+=|\\\\-=|\\\\*=|/=|%=|&=|\\\\|=|\\\\^=|<<=|>>=","name":"keyword.operator.assignment.php"},{"match":"(<=|>=|<|>)","name":"keyword.operator.comparison.php"},{"match":"(\\\\-\\\\-|\\\\+\\\\+)","name":"keyword.operator.increment-decrement.php"},{"match":"(\\\\-|\\\\+|\\\\*|/|%)","name":"keyword.operator.arithmetic.php"},{"match":"(!|&&|\\\\|\\\\|)","name":"keyword.operator.logical.php"},{"begin":"(?i)\\\\b(as|is)\\\\b\\\\s+(?=[\\\\\\\\$a-z_])","beginCaptures":{"1":{"name":"keyword.operator.type.php"}},"end":"(?=[^\\\\\\\\$A-Za-z_0-9])","patterns":[{"include":"#class-name"},{"include":"#variable-name"}]},{"match":"(?i)\\\\b(is|as)\\\\b","name":"keyword.operator.type.php"},{"include":"#function-call"},{"match":"<<|>>|~|\\\\^|&|\\\\|","name":"keyword.operator.bitwise.php"},{"include":"#numbers"},{"include":"#instantiation"},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.php"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.array.end.php"}},"patterns":[{"include":"#language"}]},{"include":"#literal-collections"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.scope.begin.php"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.scope.end.php"}},"patterns":[{"include":"#language"}]},{"include":"#constants"}]},"literal-collections":{"patterns":[{"begin":"(Vector|ImmVector|Set|ImmSet|Map|ImmMap|Pair)\\\\s*({)","beginCaptures":{"1":{"name":"support.class.php"},"2":{"name":"punctuation.section.array.begin.php"}},"end":"(})","endCaptures":{"1":{"name":"punctuation.section.array.end.php"}},"name":"meta.collection.literal.php","patterns":[{"include":"#language"}]}]},"namespace":{"begin":"(?i)((namespace)|[a-z0-9_]+)?(\\\\\\\\)(?=.*?[^a-z_0-9\\\\\\\\])","beginCaptures":{"1":{"name":"entity.name.type.namespace.php"},"3":{"name":"punctuation.separator.inheritance.php"}},"end":"(?i)(?=[a-z0-9_]*[^a-z0-9_\\\\\\\\])","name":"support.other.namespace.php","patterns":[{"match":"(?i)[a-z0-9_]+(?=\\\\\\\\)","name":"entity.name.type.namespace.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(?i)(\\\\\\\\)"}]},"numbers":{"match":"\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)\\\\b","name":"constant.numeric.php"},"object":{"patterns":[{"begin":"(->)(\\\\$?\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"punctuation.definition.variable.php"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.variable.php"}},"patterns":[{"include":"#language"}]},{"captures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"meta.function-call.object.php"},"3":{"name":"variable.other.property.php"},"4":{"name":"punctuation.definition.variable.php"}},"match":"(->)(?:([A-Za-z_][A-Za-z_0-9]*)\\\\s*\\\\(|((\\\\$+)?[a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*))?"}]},"parameter-default-types":{"patterns":[{"include":"#strings"},{"include":"#numbers"},{"include":"#variables"},{"match":"=>","name":"keyword.operator.key.php"},{"match":"=","name":"keyword.operator.assignment.php"},{"include":"#instantiation"},{"begin":"(?xi)\\n\\\\s*\\n(?=\\n [a-z_0-9\\\\\\\\]+(::)\\n ([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)?\\n)","end":"(?i)(::)([a-z_\\\\x{7f}-\\\\x{ff}][a-z0-9_\\\\x{7f}-\\\\x{ff}]*)?","endCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"constant.other.class.php"}},"patterns":[{"include":"#class-name"}]},{"include":"#constants"}]},"php_doc":{"patterns":[{"comment":"PHPDocumentor only recognises lines with an asterisk as the first non-whitespaces character","match":"^(?!\\\\s*\\\\*).*$\\\\n?","name":"invalid.illegal.missing-asterisk.phpdoc.php"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"},"3":{"name":"storage.modifier.php"},"4":{"name":"invalid.illegal.wrong-access-type.phpdoc.php"}},"match":"^\\\\s*\\\\*\\\\s*(@access)\\\\s+((public|private|protected|internal)|(.+))\\\\s*$"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"},"2":{"name":"markup.underline.link.php"}},"match":"(@xlink)\\\\s+(.+)\\\\s*$"},{"match":"\\\\@(a(bstract|uthor)|c(ategory|opyright)|example|global|internal|li(cense|nk)|pa(ckage|ram)|return|s(ee|ince|tatic|ubpackage)|t(hrows|odo)|v(ar|ersion)|uses|deprecated|final|ignore)\\\\b","name":"keyword.other.phpdoc.php"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"}},"match":"\\\\{(@(link)).+?\\\\}","name":"meta.tag.inline.phpdoc.php"}]},"regex-double-quoted":{"begin":"(?<=re)\\"/(?=(\\\\\\\\.|[^\\"/])++/[imsxeADSUXu]*\\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"(/)([imsxeADSUXu]*)(\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.regexp.double-quoted.php","patterns":[{"comment":"Escaped from the regexp \u2013 there can also be 2 backslashes (since 1 will escape the first)","match":"(\\\\\\\\){1,2}[.$^\\\\[\\\\]{}]","name":"constant.character.escape.regex.php"},{"include":"#interpolation"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.php"},"3":{"name":"punctuation.definition.arbitrary-repetition.php"}},"match":"(\\\\{)\\\\d+(,\\\\d+)?(\\\\})","name":"string.regexp.arbitrary-repetition.php"},{"begin":"\\\\[(?:\\\\^?\\\\])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"\\\\]","name":"string.regexp.character-class.php","patterns":[{"include":"#interpolation"}]},{"match":"[$^+*]","name":"keyword.operator.regexp.php"}]},"regex-single-quoted":{"begin":"(?<=re)'/(?=(\\\\\\\\.|[^'/])++/[imsxeADSUXu]*')","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"(/)([imsxeADSUXu]*)(')","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.regexp.single-quoted.php","patterns":[{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.php"},"3":{"name":"punctuation.definition.arbitrary-repetition.php"}},"match":"(\\\\{)\\\\d+(,\\\\d+)?(\\\\})","name":"string.regexp.arbitrary-repetition.php"},{"comment":"Escaped from the regexp \u2013 there can also be 2 backslashes (since 1 will escape the first)","match":"(\\\\\\\\){1,2}[.$^\\\\[\\\\]{}]","name":"constant.character.escape.regex.php"},{"comment":"Escaped from the PHP string \u2013 there can also be 2 backslashes (since 1 will escape the first)","match":"\\\\\\\\{1,2}[\\\\\\\\']","name":"constant.character.escape.php"},{"begin":"\\\\[(?:\\\\^?\\\\])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"\\\\]","name":"string.regexp.character-class.php","patterns":[{"match":"\\\\\\\\[\\\\\\\\'\\\\[\\\\]]","name":"constant.character.escape.php"}]},{"match":"[$^+*]","name":"keyword.operator.regexp.php"}]},"sql-string-double-quoted":{"begin":"\\"\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER)\\\\b)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"contentName":"source.sql.embedded.php","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.double.sql.php","patterns":[{"comment":"Open parens cause the next escaped character to not be captured as an\\nescape character. Example: $x = \\"SELECT (\\")\\";","match":"\\\\(","name":"punctuation.definition.parameters.begin.bracket.round.php"},{"match":"#(\\\\\\\\\\"|[^\\"])*(?=\\"|$\\\\n?)","name":"comment.line.number-sign.sql"},{"match":"--(\\\\\\\\\\"|[^\\"])*(?=\\"|$\\\\n?)","name":"comment.line.double-dash.sql"},{"match":"\\\\\\\\[\\\\\\\\\\"\`']","name":"constant.character.escape.php"},{"comment":"Unclosed strings must be captured to avoid them eating the remainder of the PHP script\\nSample case: $sql = \\"SELECT * FROM bar WHERE foo = '\\" . $variable . \\"'\\"","match":"'(?=((\\\\\\\\')|[^'\\"])*(\\"|$))","name":"string.quoted.single.unclosed.sql"},{"comment":"Unclosed strings must be captured to avoid them eating the remainder of the PHP script\\nSample case: $sql = \\"SELECT * FROM bar WHERE foo = '\\" . $variable . \\"'\\"","match":"\`(?=((\\\\\\\\\`)|[^\`\\"])*(\\"|$))","name":"string.quoted.other.backtick.unclosed.sql"},{"begin":"'","end":"'","name":"string.quoted.single.sql","patterns":[{"include":"#interpolation"}]},{"begin":"\`","end":"\`","name":"string.quoted.other.backtick.sql","patterns":[{"include":"#interpolation"}]},{"include":"#interpolation"},{"include":"source.sql"}]},"sql-string-single-quoted":{"begin":"'\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER)\\\\b)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"contentName":"source.sql.embedded.php","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.single.sql.php","patterns":[{"comment":"Open parens cause the next escaped character to not be captured as an\\nescape character. Example: $x = 'SELECT (')';","match":"\\\\(","name":"punctuation.definition.parameters.begin.bracket.round.php"},{"match":"#(\\\\\\\\'|[^'])*(?='|$\\\\n?)","name":"comment.line.number-sign.sql"},{"match":"--(\\\\\\\\'|[^'])*(?='|$\\\\n?)","name":"comment.line.double-dash.sql"},{"match":"\\\\\\\\[\\\\\\\\'\`\\"]","name":"constant.character.escape.php"},{"comment":"Unclosed strings must be captured to avoid them eating the remainder of the PHP script\\nSample case: $sql = \\"SELECT * FROM bar WHERE foo = '\\" . $variable . \\"'\\"","match":"\`(?=((\\\\\\\\\`)|[^\`'])*('|$))","name":"string.quoted.other.backtick.unclosed.sql"},{"comment":"Unclosed strings must be captured to avoid them eating the remainder of the PHP script\\nSample case: $sql = \\"SELECT * FROM bar WHERE foo = '\\" . $variable . \\"'\\"","match":"\\"(?=((\\\\\\\\\\")|[^\\"'])*('|$))","name":"string.quoted.double.unclosed.sql"},{"include":"source.sql"}]},"string-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"comment":"This contentName is just to allow the usage of \u201Cselect scope\u201D to select the string contents first, then the string with quotes","contentName":"meta.string-contents.quoted.double.php","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.double.php","patterns":[{"include":"#interpolation"}]},"string-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"contentName":"meta.string-contents.quoted.single.php","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.single.php","patterns":[{"match":"\\\\\\\\[\\\\\\\\']","name":"constant.character.escape.php"}]},"strings":{"patterns":[{"include":"#regex-double-quoted"},{"include":"#sql-string-double-quoted"},{"include":"#string-double-quoted"},{"include":"#regex-single-quoted"},{"include":"#sql-string-single-quoted"},{"include":"#string-single-quoted"}]},"support":{"patterns":[{"match":"(?i)\\\\bapc_(s(tore|ma_info)|c(ompile_file|lear_cache|a(s|che_info))|inc|de(c|fine_constants|lete(_file)?)|exists|fetch|load_constants|add|bin_(dump(file)?|load(file)?))\\\\b","name":"support.function.apc.php"},{"match":"(?i)\\\\b(s(huffle|izeof|ort)|n(ext|at(sort|casesort))|c(o(unt|mpact)|urrent)|in_array|u(sort|ksort|asort)|p(os|rev)|e(nd|ach|xtract)|k(sort|ey|rsort)|list|a(sort|r(sort|ray(_(s(hift|um|plice|earch|lice)|c(h(unk|ange_key_case)|o(unt_values|mbine))|intersect(_(u(key|assoc)|key|assoc))?|diff(_(u(key|assoc)|key|assoc))?|u(n(shift|ique)|intersect(_(uassoc|assoc))?|diff(_(uassoc|assoc))?)|p(op|ush|ad|roduct)|values|key(s|_exists)|f(il(ter|l(_keys)?)|lip)|walk(_recursive)?|r(e(duce|place(_recursive)?|verse)|and)|m(ultisort|erge(_recursive)?|ap)))?))|r(sort|eset|ange))\\\\b","name":"support.function.array.php"},{"match":"(?i)\\\\b(s(how_source|ys_getloadavg|leep)|highlight_(string|file)|con(stant|nection_(status|timeout|aborted))|time_(sleep_until|nanosleep)|ignore_user_abort|d(ie|efine(d)?)|u(sleep|n(iqid|pack))|__halt_compiler|p(hp_(strip_whitespace|check_syntax)|ack)|e(val|xit)|get_browser)\\\\b","name":"support.function.basic_functions.php"},{"match":"(?i)\\\\bbc(s(cale|ub|qrt)|comp|div|pow(mod)?|add|m(od|ul))\\\\b","name":"support.function.bcmath.php"},{"match":"(?i)\\\\bbz(c(ompress|lose)|open|decompress|err(str|no|or)|flush|write|read)\\\\b","name":"support.function.bz2.php"},{"match":"(?i)\\\\b(GregorianToJD|cal_(to_jd|info|days_in_month|from_jd)|unixtojd|jdto(unix|jewish)|easter_da(ys|te)|J(ulianToJD|ewishToJD|D(MonthName|To(Gregorian|Julian|French)|DayOfWeek))|FrenchToJD)\\\\b","name":"support.function.calendar.php"},{"match":"(?i)\\\\b(c(lass_(exists|alias)|all_user_method(_array)?)|trait_exists|i(s_(subclass_of|a)|nterface_exists)|__autoload|property_exists|get_(c(lass(_(vars|methods))?|alled_class)|object_vars|declared_(classes|traits|interfaces)|parent_class)|method_exists)\\\\b","name":"support.function.classobj.php"},{"match":"(?i)\\\\b(com_(set|create_guid|i(senum|nvoke)|pr(int_typeinfo|op(set|put|get))|event_sink|load(_typelib)?|addref|release|get(_active_object)?|message_pump)|variant_(s(ub|et(_type)?)|n(ot|eg)|c(a(st|t)|mp)|i(nt|div|mp)|or|d(iv|ate_(to_timestamp|from_timestamp))|pow|eqv|fix|a(nd|dd|bs)|round|get_type|xor|m(od|ul)))\\\\b","name":"support.function.com.php"},{"match":"(?i)\\\\bctype_(space|cntrl|digit|upper|p(unct|rint)|lower|al(num|pha)|graph|xdigit)\\\\b","name":"support.function.ctype.php"},{"match":"(?i)\\\\bcurl_(setopt(_array)?|c(opy_handle|lose)|init|e(rr(no|or)|xec)|version|getinfo|multi_(select|close|in(it|fo_read)|exec|add_handle|remove_handle|getcontent))\\\\b","name":"support.function.curl.php"},{"match":"(?i)\\\\b(str(totime|ptime|ftime)|checkdate|time(zone_(name_(from_abbr|get)|transitions_get|identifiers_list|o(pen|ffset_get)|version_get|location_get|abbreviations_list))?|idate|date(_(su(n(set|_info|rise)|b)|create(_from_format)?|time(stamp_(set|get)|zone_(set|get)|_set)|i(sodate_set|nterval_(create_from_date_string|format))|offset_get|d(iff|efault_timezone_(set|get)|ate_set)|parse(_from_format)?|format|add|get_last_errors|modify))?|localtime|g(et(timeofday|date)|m(strftime|date|mktime))|m(icrotime|ktime))\\\\b","name":"support.function.datetime.php"},{"match":"(?i)\\\\bdba_(sync|handlers|nextkey|close|insert|op(timize|en)|delete|popen|exists|key_split|f(irstkey|etch)|list|replace)\\\\b","name":"support.function.dba.php"},{"match":"(?i)\\\\bdbx_(sort|c(o(nnect|mpare)|lose)|e(scape_string|rror)|query|fetch_row)\\\\b","name":"support.function.dbx.php"},{"match":"(?i)\\\\b(scandir|c(h(dir|root)|losedir)|opendir|dir|re(winddir|addir)|getcwd)\\\\b","name":"support.function.dir.php"},{"match":"(?i)\\\\bdotnet_load\\\\b","name":"support.function.dotnet.php"},{"match":"(?i)\\\\beio_(s(y(nc(_file_range|fs)?|mlink)|tat(vfs)?|e(ndfile|t_m(in_parallel|ax_(idle|p(oll_(time|reqs)|arallel)))|ek))|n(threads|op|pending|re(qs|ady))|c(h(own|mod)|ustom|lose|ancel)|truncate|init|open|dup2|u(nlink|time)|poll|event_loop|f(s(ync|tat(vfs)?)|ch(own|mod)|truncate|datasync|utime|allocate)|write|l(stat|ink)|r(e(name|a(d(dir|link|ahead)?|lpath))|mdir)|g(et_(event_stream|last_error)|rp(_(cancel|limit|add))?)|mk(nod|dir)|busy)\\\\b","name":"support.function.eio.php"},{"match":"(?i)\\\\benchant_(dict_(s(tore_replacement|uggest)|check|is_in_session|describe|quick_check|add_to_(session|personal)|get_error)|broker_(set_ordering|init|d(ict_exists|escribe)|free(_dict)?|list_dicts|request_(dict|pwl_dict)|get_error))\\\\b","name":"support.function.enchant.php"},{"match":"(?i)\\\\b(s(plit(i)?|ql_regcase)|ereg(i(_replace)?|_replace)?)\\\\b","name":"support.function.ereg.php"},{"match":"(?i)\\\\b(set_e(rror_handler|xception_handler)|trigger_error|debug_(print_backtrace|backtrace)|user_error|error_(log|reporting|get_last)|restore_e(rror_handler|xception_handler))\\\\b","name":"support.function.errorfunc.php"},{"match":"(?i)\\\\b(s(hell_exec|ystem)|p(assthru|roc_(nice|close|terminate|open|get_status))|e(scapeshell(cmd|arg)|xec))\\\\b","name":"support.function.exec.php"},{"match":"(?i)\\\\b(exif_(t(humbnail|agname)|imagetype|read_data)|read_exif_data)\\\\b","name":"support.function.exif.php"},{"match":"(?i)\\\\b(s(ymlink|tat|et_file_buffer)|c(h(own|grp|mod)|opy|learstatcache)|t(ouch|empnam|mpfile)|is_(dir|uploaded_file|executable|file|writ(eable|able)|link|readable)|d(i(sk(_(total_space|free_space)|freespace)|rname)|elete)|u(nlink|mask)|p(close|open|a(thinfo|rse_ini_(string|file)))|f(s(canf|tat|eek)|nmatch|close|t(ell|runcate)|ile(size|ctime|type|inode|owner|_(put_contents|exists|get_contents)|perms|atime|group|mtime)?|open|p(ut(s|csv)|assthru)|eof|flush|write|lock|read|get(s(s)?|c(sv)?))|l(stat|ch(own|grp)|ink(info)?)|r(e(name|wind|a(d(file|link)|lpath(_cache_(size|get))?))|mdir)|glob|m(ove_uploaded_file|kdir)|basename)\\\\b","name":"support.function.file.php"},{"match":"(?i)\\\\b(finfo_(set_flags|close|open|file|buffer)|mime_content_type)\\\\b","name":"support.function.fileinfo.php"},{"match":"(?i)\\\\bfilter_(has_var|i(nput(_array)?|d)|var(_array)?|list)\\\\b","name":"support.function.filter.php"},{"match":"(?i)\\\\b(c(all_user_func(_array)?|reate_function)|unregister_tick_function|f(orward_static_call(_array)?|unc(tion_exists|_(num_args|get_arg(s)?)))|register_(shutdown_function|tick_function)|get_defined_functions)\\\\b","name":"support.function.funchand.php"},{"match":"(?i)\\\\b(ngettext|textdomain|d(ngettext|c(ngettext|gettext)|gettext)|gettext|bind(textdomain|_textdomain_codeset))\\\\b","name":"support.function.gettext.php"},{"match":"(?i)\\\\bgmp_(s(can(1|0)|trval|ign|ub|etbit|qrt(rem)?)|hamdist|ne(g|xtprime)|c(om|lrbit|mp)|testbit|in(tval|it|vert)|or|div(_(q(r)?|r)|exact)?|jacobi|p(o(pcount|w(m)?)|erfect_square|rob_prime)|fact|legendre|a(nd|dd|bs)|random|gcd(ext)?|xor|m(od|ul))\\\\b","name":"support.function.gmp.php"},{"match":"(?i)\\\\bhash(_(hmac(_file)?|copy|init|update(_(stream|file))?|pbkdf2|fi(nal|le)|algos))?\\\\b","name":"support.function.hash.php"},{"match":"(?i)\\\\b(http_(s(upport|end_(st(atus|ream)|content_(type|disposition)|data|file|last_modified))|head|negotiate_(c(harset|ontent_type)|language)|c(hunked_decode|ache_(etag|last_modified))|throttle|inflate|d(eflate|ate)|p(ost_(data|fields)|ut_(stream|data|file)|ersistent_handles_(c(ount|lean)|ident)|arse_(headers|cookie|params|message))|re(direct|quest(_(method_(name|unregister|exists|register)|body_encode))?)|get(_request_(headers|body(_stream)?))?|match_(etag|request_header|modified)|build_(str|cookie|url))|ob_(inflatehandler|deflatehandler|etaghandler))\\\\b","name":"support.function.http.php"},{"match":"(?i)\\\\b(iconv(_(s(tr(pos|len|rpos)|ubstr|et_encoding)|get_encoding|mime_(decode(_headers)?|encode)))?|ob_iconv_handler)\\\\b","name":"support.function.iconv.php"},{"match":"(?i)\\\\biis_(s(t(op_serv(ice|er)|art_serv(ice|er))|et_(s(cript_map|erver_rights)|dir_security|app_settings))|add_server|remove_server|get_(s(cript_map|erv(ice_state|er_(rights|by_(comment|path))))|dir_security))\\\\b","name":"support.function.iisfunc.php"},{"match":"(?i)\\\\b(i(ptc(parse|embed)|mage(s(y|tring(up)?|et(style|t(hickness|ile)|pixel|brush)|avealpha|x)|c(har(up)?|o(nvolution|py(res(ized|ampled)|merge(gray)?)?|lor(s(total|et|forindex)|closest(hwb|alpha)?|transparent|deallocate|exact(alpha)?|a(t|llocate(alpha)?)|resolve(alpha)?|match))|reate(truecolor|from(string|jpeg|png|wbmp|g(if|d(2(part)?)?)|x(pm|bm)))?)|t(ypes|tf(text|bbox)|ruecolortopalette)|i(struecolor|nterlace)|2wbmp|d(estroy|ashedline)|jpeg|_type_to_(extension|mime_type)|p(s(slantfont|text|e(ncodefont|xtendfont)|freefont|loadfont|bbox)|ng|olygon|alettecopy)|ellipse|f(t(text|bbox)|il(ter|l(toborder|ed(polygon|ellipse|arc|rectangle))?)|ont(height|width))|wbmp|l(ine|oadfont|ayereffect)|a(ntialias|lphablending|rc)|r(otate|ectangle)|g(if|d(2)?|ammacorrect|rab(screen|window))|xbm))|jpeg2wbmp|png2wbmp|g(d_info|etimagesize(fromstring)?))\\\\b","name":"support.function.image.php"},{"match":"(?i)\\\\b(s(ys_get_temp_dir|et_(time_limit|include_path|magic_quotes_runtime))|ini_(set|alter|restore|get(_all)?)|zend_(thread_id|version|logo_guid)|dl|p(hp(credits|info|_(sapi_name|ini_(scanned_files|loaded_file)|uname|logo_guid)|version)|utenv)|extension_loaded|version_compare|assert(_options)?|restore_include_path|g(c_(collect_cycles|disable|enable(d)?)|et(opt|_(c(urrent_user|fg_var)|include(d_files|_path)|defined_constants|extension_funcs|loaded_extensions|required_files|magic_quotes_(runtime|gpc))|env|lastmod|rusage|my(inode|uid|pid|gid)))|m(emory_get_(usage|peak_usage)|a(in|gic_quotes_runtime)))\\\\b","name":"support.function.info.php"},{"match":"(?i)\\\\bibase_(se(t_event_handler|rv(ice_(detach|attach)|er_info))|n(um_(params|fields)|ame_result)|c(o(nnect|mmit(_ret)?)|lose)|trans|d(elete_user|rop_db|b_info)|p(connect|aram_info|repare)|e(rr(code|msg)|xecute)|query|f(ield_info|etch_(object|assoc|row)|ree_(event_handler|query|result))|wait_event|a(dd_user|ffected_rows)|r(ollback(_ret)?|estore)|gen_id|m(odify_user|aintain_db)|b(lob_(c(lose|ancel|reate)|i(nfo|mport)|open|echo|add|get)|ackup))\\\\b","name":"support.function.interbase.php"},{"match":"(?i)\\\\b(n(ormalizer_(normalize|is_normalized)|umfmt_(set_(symbol|text_attribute|pattern|attribute)|create|parse(_currency)?|format(_currency)?|get_(symbol|text_attribute|pattern|error_(code|message)|locale|attribute)))|collator_(s(ort(_with_sort_keys)?|et_(strength|attribute))|c(ompare|reate)|asort|get_(s(trength|ort_key)|error_(code|message)|locale|attribute))|transliterator_(create(_(inverse|from_rules))?|transliterate|list_ids|get_error_(code|message))|i(ntl_(is_failure|error_name|get_error_(code|message))|dn_to_(u(nicode|tf8)|ascii))|datefmt_(set_(calendar|timezone(_id)?|pattern|lenient)|create|is_lenient|parse|format(_object)?|localtime|get_(calendar(_object)?|time(type|zone(_id)?)|datetype|pattern|error_(code|message)|locale))|locale_(set_default|compose|parse|filter_matches|lookup|accept_from_http|get_(script|d(isplay_(script|name|variant|language|region)|efault)|primary_language|keywords|all_variants|region))|resourcebundle_(c(ount|reate)|locales|get(_error_(code|message))?)|grapheme_(s(tr(str|i(str|pos)|pos|len|r(ipos|pos))|ubstr)|extract)|msgfmt_(set_pattern|create|parse(_message)?|format(_message)?|get_(pattern|error_(code|message)|locale)))\\\\b","name":"support.function.intl.php"},{"match":"(?i)\\\\bjson_(decode|encode|last_error)\\\\b","name":"support.function.json.php"},{"match":"(?i)\\\\bldap_(s(tart_tls|ort|e(t_(option|rebind_proc)|arch)|asl_bind)|next_(entry|attribute|reference)|c(o(n(nect|trol_paged_result(_response)?)|unt_entries|mpare)|lose)|t61_to_8859|d(n2ufn|elete)|8859_to_t61|unbind|parse_re(sult|ference)|e(rr(no|2str|or)|xplode_dn)|f(irst_(entry|attribute|reference)|ree_result)|list|add|re(name|ad)|get_(option|dn|entries|values(_len)?|attributes)|mod(ify|_(del|add|replace))|bind)\\\\b","name":"support.function.ldap.php"},{"match":"(?i)\\\\blibxml_(set_(streams_context|external_entity_loader)|clear_errors|disable_entity_loader|use_internal_errors|get_(errors|last_error))\\\\b","name":"support.function.libxml.php"},{"match":"(?i)\\\\b(ezmlm_hash|mail)\\\\b","name":"support.function.mail.php"},{"match":"(?i)\\\\b(s(in(h)?|qrt|rand)|h(ypot|exdec)|c(os(h)?|eil)|tan(h)?|is_(nan|infinite|finite)|octdec|de(c(hex|oct|bin)|g2rad)|p(i|ow)|exp(m1)?|f(loor|mod)|l(cg_value|og(1(p|0))?)|a(sin(h)?|cos(h)?|tan(h|2)?|bs)|r(ound|a(nd|d2deg))|getrandmax|m(t_(srand|rand|getrandmax)|in|ax)|b(indec|ase_convert))\\\\b","name":"support.function.math.php"},{"match":"(?i)\\\\bmb_(s(tr(str|cut|to(upper|lower)|i(str|pos|mwidth)|pos|width|len|r(chr|i(chr|pos)|pos))|ubst(itute_character|r(_count)?)|plit|end_mail)|http_(input|output)|c(heck_encoding|onvert_(case|encoding|variables|kana))|internal_encoding|output_handler|de(code_(numericentity|mimeheader)|tect_(order|encoding))|p(arse_str|referred_mime_name)|e(ncod(ing_aliases|e_(numericentity|mimeheader))|reg(i(_replace)?|_(search(_(setpos|init|pos|regs|get(pos|regs)))?|replace(_callback)?|match))?)|l(ist_encodings|anguage)|regex_(set_options|encoding)|get_info)\\\\b","name":"support.function.mbstring.php"},{"match":"(?i)\\\\bm(crypt_(c(fb|reate_iv|bc)|ofb|decrypt|e(nc(_(self_test|is_block_(algorithm(_mode)?|mode)|get_(supported_key_sizes|iv_size|key_size|algorithms_name|modes_name|block_size))|rypt)|cb)|list_(algorithms|modes)|ge(neric(_(init|deinit|end))?|t_(cipher_name|iv_size|key_size|block_size))|module_(self_test|close|is_block_(algorithm(_mode)?|mode)|open|get_(supported_key_sizes|algo_(key_size|block_size))))|decrypt_generic)\\\\b","name":"support.function.mcrypt.php"},{"match":"(?i)\\\\bmemcache_debug\\\\b","name":"support.function.memcache.php"},{"match":"(?i)\\\\bmhash(_(count|keygen_s2k|get_(hash_name|block_size)))?\\\\b","name":"support.function.mhash.php"},{"match":"(?i)\\\\bbson_(decode|encode)\\\\b","name":"support.function.mongo.php"},{"match":"(?i)\\\\bmysql_(s(tat|e(t_charset|lect_db))|num_(fields|rows)|c(onnect|l(ient_encoding|ose)|reate_db)|t(hread_id|ablename)|in(sert_id|fo)|d(ata_seek|rop_db|b_(name|query))|unbuffered_query|p(connect|ing)|e(scape_string|rr(no|or))|query|f(ield_(seek|name|t(ype|able)|flags|len)|etch_(object|field|lengths|a(ssoc|rray)|row)|ree_result)|list_(tables|dbs|processes|fields)|affected_rows|re(sult|al_escape_string)|get_(server_info|host_info|client_info|proto_info))\\\\b","name":"support.function.mysql.php"},{"match":"(?i)\\\\bmysqli_(s(sl_set|t(ore_result|at|mt_(s(tore_result|end_long_data)|next_result|close|init|data_seek|prepare|execute|f(etch|ree_result)|attr_(set|get)|res(ult_metadata|et)|get_(warnings|result)|more_results|bind_(param|result)))|e(nd_(query|long_data)|t_(charset|opt|local_infile_(handler|default))|lect_db)|lave_query)|next_result|c(ha(nge_user|racter_set_name)|o(nnect|mmit)|l(ient_encoding|ose))|thread_safe|init|options|d(isable_r(pl_parse|eads_from_master)|ump_debug_info|ebug|ata_seek)|use_result|p(ing|oll|aram_count|repare)|e(scape_string|nable_r(pl_parse|eads_from_master)|xecute|mbedded_server_(start|end))|kill|query|f(ield_seek|etch(_(object|field(s|_direct)?|a(ssoc|ll|rray)|row))?|ree_result)|autocommit|r(ollback|pl_(p(arse_enabled|robe)|query_type)|e(port|fresh|a(p_async_query|l_(connect|escape_string|query))))|get_(c(harset|onnection_stats|lient_(stats|info|version)|ache_stats)|warnings|metadata)|m(ore_results|ulti_query|aster_query)|bind_(param|result))\\\\b","name":"support.function.mysqli.php"},{"match":"(?i)\\\\bmysqlnd_memcache_(set|get_config)\\\\b","name":"support.function.mysqlnd-memcache.php"},{"match":"(?i)\\\\bmysqlnd_ms_(set_(user_pick_server|qos)|query_is_select|get_(stats|last_(used_connection|gtid))|match_wild)\\\\b","name":"support.function.mysqlnd-ms.php"},{"match":"(?i)\\\\bmysqlnd_qc_(set_(storage_handler|cache_condition|is_select|user_handlers)|clear_cache|get_(normalized_query_trace_log|c(ore_stats|ache_info)|query_trace_log|available_handlers))\\\\b","name":"support.function.mysqlnd-qc.php"},{"match":"(?i)\\\\bmysqlnd_uh_(set_(statement_proxy|connection_proxy)|convert_to_mysqlnd)\\\\b","name":"support.function.mysqlnd-uh.php"},{"match":"(?i)\\\\b(s(yslog|ocket_(set_(timeout|blocking)|get_status)|et(cookie|rawcookie))|h(ttp_response_code|eader(s_(sent|list)|_re(gister_callback|move))?)|c(heckdnsrr|loselog)|i(net_(ntop|pton)|p2long)|openlog|d(ns_(check_record|get_(record|mx))|efine_syslog_variables)|pfsockopen|fsockopen|long2ip|get(servby(name|port)|host(name|by(name(l)?|addr))|protobyn(umber|ame)|mxrr))\\\\b","name":"support.function.network.php"},{"match":"(?i)\\\\bnsapi_(virtual|re(sponse_headers|quest_headers))\\\\b","name":"support.function.nsapi.php"},{"match":"(?i)\\\\b(deaggregate|aggregat(ion_info|e(_(info|properties(_by_(list|regexp))?|methods(_by_(list|regexp))?))?))\\\\b","name":"support.function.objaggregation.php"},{"match":"(?i)\\\\boci(s(tatementtype|e(tprefetch|rverversion)|avelob(file)?)|n(umcols|ew(c(ollection|ursor)|descriptor)|logon)|c(o(l(umn(s(cale|ize)|name|type(raw)?|isnull|precision)|l(size|trim|a(ssign(elem)?|ppend)|getelem|max))|mmit)|loselob|ancel)|internaldebug|definebyname|_(s(tatement_type|e(t_(client_i(nfo|dentifier)|prefetch|edition|action|module_name)|rver_version))|n(um_(fields|rows)|ew_(c(o(nnect|llection)|ursor)|descriptor))|c(o(nnect|mmit)|l(ient_version|ose)|ancel)|internal_debug|define_by_name|p(connect|a(ssword_change|rse))|e(rror|xecute)|f(ield_(s(cale|ize)|name|type(_raw)?|is_null|precision)|etch(_(object|a(ssoc|ll|rray)|row))?|ree_(statement|descriptor))|lob_(copy|is_equal)|r(ollback|esult)|bind_(array_by_name|by_name))|p(logon|arse)|e(rror|xecute)|f(etch(statement|into)?|ree(statement|c(ollection|ursor)|desc))|write(temporarylob|lobtofile)|lo(adlob|go(n|ff))|r(o(wcount|llback)|esult)|bindbyname)\\\\b","name":"support.function.oci8.php"},{"match":"(?i)\\\\bopenssl_(s(ign|eal)|c(sr_(sign|new|export(_to_file)?|get_(subject|public_key))|ipher_iv_length)|open|d(h_compute_key|igest|ecrypt)|p(ublic_(decrypt|encrypt)|k(cs(12_(export(_to_file)?|read)|7_(sign|decrypt|encrypt|verify))|ey_(new|export(_to_file)?|free|get_(details|p(ublic|rivate))))|rivate_(decrypt|encrypt))|e(ncrypt|rror_string)|verify|free_key|random_pseudo_bytes|get_(cipher_methods|p(ublickey|rivatekey)|md_methods)|x509_(check(_private_key|purpose)|parse|export(_to_file)?|free|read))\\\\b","name":"support.function.openssl.php"},{"match":"(?i)\\\\b(o(utput_(add_rewrite_var|reset_rewrite_vars)|b_(start|clean|implicit_flush|end_(clean|flush)|flush|list_handlers|g(zhandler|et_(status|c(ontents|lean)|flush|le(ngth|vel)))))|flush)\\\\b","name":"support.function.output.php"},{"match":"(?i)\\\\bpassword_(hash|needs_rehash|verify|get_info)\\\\b","name":"support.function.password.php"},{"match":"(?i)\\\\bpcntl_(s(ig(nal(_dispatch)?|timedwait|procmask|waitinfo)|etpriority)|exec|fork|w(stopsig|termsig|if(s(topped|ignaled)|exited)|exitstatus|ait(pid)?)|alarm|getpriority)\\\\b","name":"support.function.pcntl.php"},{"match":"(?i)\\\\bpg_(se(nd_(prepare|execute|query(_params)?)|t_(client_encoding|error_verbosity)|lect)|host|num_(fields|rows)|c(o(n(nect(ion_(status|reset|busy))?|vert)|py_(to|from))|l(ient_encoding|ose)|ancel_query)|t(ty|ra(nsaction_status|ce))|insert|options|d(elete|bname)|u(n(trace|escape_bytea)|pdate)|p(connect|ing|ort|ut_line|arameter_status|repare)|e(scape_(string|identifier|literal|bytea)|nd_copy|xecute)|version|query(_params)?|f(ield_(size|n(um|ame)|t(ype(_oid)?|able)|is_null|prtlen)|etch_(object|a(ssoc|ll(_columns)?|rray)|r(ow|esult))|ree_result)|l(o_(seek|c(lose|reate)|tell|import|open|unlink|export|write|read(_all)?)|ast_(notice|oid|error))|affected_rows|result_(s(tatus|eek)|error(_field)?)|get_(notify|pid|result)|meta_data)\\\\b","name":"support.function.pgsql.php"},{"match":"(?i)\\\\b(virtual|apache_(setenv|note|child_terminate|lookup_uri|re(s(ponse_headers|et_timeout)|quest_headers)|get(_(version|modules)|env))|getallheaders)\\\\b","name":"support.function.php_apache.php"},{"match":"(?i)\\\\bdom_import_simplexml\\\\b","name":"support.function.php_dom.php"},{"match":"(?i)\\\\bftp_(s(sl_connect|ystype|i(te|ze)|et_option)|n(list|b_(continue|put|f(put|get)|get))|c(h(dir|mod)|onnect|dup|lose)|delete|p(ut|wd|asv)|exec|quit|f(put|get)|login|alloc|r(ename|aw(list)?|mdir)|get(_option)?|m(dtm|kdir))\\\\b","name":"support.function.php_ftp.php"},{"match":"(?i)\\\\bimap_(s(can(mailbox)?|tatus|ort|ubscribe|e(t(_quota|flag_full|acl)|arch)|avebody)|header(s|info)?|num_(recent|msg)|c(heck|l(ose|earflag_full)|reate(mailbox)?)|t(hread|imeout)|open|delete(mailbox)?|8bit|u(n(subscribe|delete)|tf(7_(decode|encode)|8)|id)|ping|e(rrors|xpunge)|qprint|fetch(structure|header|text|_overview|mime|body)|l(sub|ist(s(can|ubscribed)|mailbox)?|ast_error)|a(ppend|lerts)|r(e(name(mailbox)?|open)|fc822_(parse_(headers|adrlist)|write_address))|g(c|et(subscribed|_quota(root)?|acl|mailboxes))|m(sgno|ime_header_decode|ail(_(co(py|mpose)|move)|boxmsginfo)?)|b(inary|ody(struct)?|ase64))\\\\b","name":"support.function.php_imap.php"},{"match":"(?i)\\\\bmssql_(select_db|n(um_(fields|rows)|ext_result)|c(onnect|lose)|init|data_seek|pconnect|execute|query|f(ield_(seek|name|type|length)|etch_(object|field|a(ssoc|rray)|row|batch)|ree_(statement|result))|r(ows_affected|esult)|g(uid_string|et_last_message)|min_(error_severity|message_severity)|bind)\\\\b","name":"support.function.php_mssql.php"},{"match":"(?i)\\\\bodbc_(s(tatistics|pecialcolumns|etoption)|n(um_(fields|rows)|ext_result)|c(o(nnect|lumn(s|privileges)|mmit)|ursor|lose(_all)?)|table(s|privileges)|d(o|ata_source)|p(connect|r(imarykeys|ocedure(s|columns)|epare))|e(rror(msg)?|xec(ute)?)|f(ield_(scale|n(um|ame)|type|precision|len)|oreignkeys|etch_(into|object|array|row)|ree_result)|longreadlen|autocommit|r(ollback|esult(_all)?)|gettypeinfo|binmode)\\\\b","name":"support.function.php_odbc.php"},{"match":"(?i)\\\\bpreg_(split|quote|filter|last_error|replace(_callback)?|grep|match(_all)?)\\\\b","name":"support.function.php_pcre.php"},{"match":"(?i)\\\\b(spl_(classes|object_hash|autoload(_(call|unregister|extensions|functions|register))?)|class_(implements|uses|parents)|iterator_(count|to_array|apply))\\\\b","name":"support.function.php_spl.php"},{"match":"(?i)\\\\bzip_(close|open|entry_(name|c(ompress(ionmethod|edsize)|lose)|open|filesize|read)|read)\\\\b","name":"support.function.php_zip.php"},{"match":"(?i)\\\\bposix_(s(trerror|et(sid|uid|pgid|e(uid|gid)|gid))|ctermid|t(tyname|imes)|i(satty|nitgroups)|uname|errno|kill|access|get(sid|cwd|uid|_last_error|p(id|pid|w(nam|uid)|g(id|rp))|e(uid|gid)|login|rlimit|g(id|r(nam|oups|gid)))|mk(nod|fifo))\\\\b","name":"support.function.posix.php"},{"match":"(?i)\\\\bset(threadtitle|proctitle)\\\\b","name":"support.function.proctitle.php"},{"match":"(?i)\\\\bpspell_(s(tore_replacement|uggest|ave_wordlist)|new(_(config|personal))?|c(heck|onfig_(save_repl|create|ignore|d(ict_dir|ata_dir)|personal|r(untogether|epl)|mode)|lear_session)|add_to_(session|personal))\\\\b","name":"support.function.pspell.php"},{"match":"(?i)\\\\breadline(_(c(ompletion_function|lear_history|allback_(handler_(install|remove)|read_char))|info|on_new_line|write_history|list_history|add_history|re(display|ad_history)))?\\\\b","name":"support.function.readline.php"},{"match":"(?i)\\\\brecode(_(string|file))?\\\\b","name":"support.function.recode.php"},{"match":"(?i)\\\\brrd_(create|tune|info|update|error|version|f(irst|etch)|last(update)?|restore|graph|xport)\\\\b","name":"support.function.rrd.php"},{"match":"(?i)\\\\b(s(hm_(has_var|detach|put_var|attach|remove(_var)?|get_var)|em_(acquire|re(lease|move)|get))|ftok|msg_(s(tat_queue|e(nd|t_queue))|queue_exists|re(ceive|move_queue)|get_queue))\\\\b","name":"support.function.sem.php"},{"match":"(?i)\\\\bsession_(s(ta(tus|rt)|et_(save_handler|cookie_params)|ave_path)|name|c(ommit|ache_(expire|limiter))|i(s_registered|d)|de(stroy|code)|un(set|register)|encode|write_close|reg(ister(_shutdown)?|enerate_id)|get_cookie_params|module_name)\\\\b","name":"support.function.session.php"},{"match":"(?i)\\\\bshmop_(size|close|open|delete|write|read)\\\\b","name":"support.function.shmop.php"},{"match":"(?i)\\\\bsimplexml_(import_dom|load_(string|file))\\\\b","name":"support.function.simplexml.php"},{"match":"(?i)\\\\bsnmp(set|2_(set|walk|real_walk|get(next)?)|_(set_(oid_(numeric_print|output_format)|enum_print|valueretrieval|quick_print)|read_mib|get_(valueretrieval|quick_print))|3_(set|walk|real_walk|get(next)?)|walk(oid)?|realwalk|get(next)?)\\\\b","name":"support.function.snmp.php"},{"match":"(?i)\\\\b(is_soap_fault|use_soap_error_handler)\\\\b","name":"support.function.soap.php"},{"match":"(?i)\\\\bsocket_(s(hutdown|trerror|e(nd(to)?|t_(nonblock|option|block)|lect))|c(onnect|l(ose|ear_error)|reate(_(pair|listen))?)|import_stream|write|l(isten|ast_error)|accept|re(cv(from)?|ad)|get(sockname|_option|peername)|bind)\\\\b","name":"support.function.sockets.php"},{"match":"(?i)\\\\bsqlite_(s(ingle_query|eek)|has_(prev|more)|n(um_(fields|rows)|ext)|c(hanges|olumn|urrent|lose|reate_(function|aggregate))|open|u(nbuffered_query|df_(decode_binary|encode_binary))|p(open|rev)|e(scape_string|rror_string|xec)|valid|key|query|f(ield_name|etch_(s(tring|ingle)|column_types|object|a(ll|rray))|actory)|l(ib(encoding|version)|ast_(insert_rowid|error))|array_query|rewind|busy_timeout)\\\\b","name":"support.function.sqlite.php"},{"match":"(?i)\\\\bsqlsrv_(se(nd_stream_data|rver_info)|has_rows|n(um_(fields|rows)|ext_result)|c(o(n(nect|figure)|mmit)|l(ient_info|ose)|ancel)|prepare|e(rrors|xecute)|query|f(ield_metadata|etch(_(object|array))?|ree_stmt)|ro(ws_affected|llback)|get_(config|field)|begin_transaction)\\\\b","name":"support.function.sqlsrv.php"},{"match":"(?i)\\\\bstats_(s(ta(ndard_deviation|t_(noncentral_t|correlation|in(nerproduct|dependent_t)|p(owersum|ercentile|aired_t)|gennch|binomial_coef))|kew)|harmonic_mean|c(ovariance|df_(n(oncentral_(chisquare|f)|egative_binomial)|c(hisquare|auchy)|t|uniform|poisson|exponential|f|weibull|l(ogistic|aplace)|gamma|b(inomial|eta)))|den(s_(n(ormal|egative_binomial)|c(hisquare|auchy)|t|pmf_(hypergeometric|poisson|binomial)|exponential|f|weibull|l(ogistic|aplace)|gamma|beta)|_uniform)|variance|kurtosis|absolute_deviation|rand_(setall|phrase_to_seeds|ranf|ge(n_(no(ncen(tral_(t|f)|ral_chisquare)|rmal)|chisquare|t|i(nt|uniform|poisson|binomial(_negative)?)|exponential|f(uniform)?|gamma|beta)|t_seeds)))\\\\b","name":"support.function.stats.php"},{"match":"(?i)\\\\bs(tream_(s(ocket_(s(hutdown|e(ndto|rver))|client|pair|enable_crypto|accept|recvfrom|get_name)|upports_lock|e(t_(chunk_size|timeout|write_buffer|read_buffer|blocking)|lect))|notification_callback|co(ntext_(set_(option|default|params)|create|get_(options|default|params))|py_to_stream)|is_local|encoding|filter_(prepend|append|re(gister|move))|wrapper_(unregister|re(store|gister))|re(solve_include_path|gister_wrapper)|get_(contents|transports|filters|wrappers|line|meta_data)|bucket_(new|prepend|append|make_writeable))|et_socket_blocking)\\\\b","name":"support.function.streamsfuncs.php"},{"match":"(?i)\\\\b(s(scanf|ha1(_file)?|tr(s(tr|pn)|n(c(asecmp|mp)|atc(asecmp|mp))|c(spn|hr|oll|asecmp|mp)|t(o(upper|k|lower)|r)|i(str|p(slashes|cslashes|os|_tags))|_(s(huffle|plit)|ireplace|pad|word_count|r(ot13|ep(eat|lace))|getcsv)|p(os|brk)|len|r(chr|ipos|pos|ev))|imilar_text|oundex|ubstr(_(co(unt|mpare)|replace))?|printf|etlocale)|h(tml(specialchars(_decode)?|_entity_decode|entities)|e(x2bin|brev(c)?))|n(umber_format|l(2br|_langinfo))|c(h(op|unk_split|r)|o(nvert_(cyr_string|uu(decode|encode))|unt_chars)|r(ypt|c32))|trim|implode|ord|uc(first|words)|join|p(arse_str|rint(f)?)|e(cho|xplode)|v(sprintf|printf|fprintf)|quote(d_printable_(decode|encode)|meta)|fprintf|wordwrap|l(cfirst|trim|ocaleconv|evenshtein)|add(slashes|cslashes)|rtrim|get_html_translation_table|m(oney_format|d5(_file)?|etaphone)|bin2hex)\\\\b","name":"support.function.string.php"},{"match":"(?i)\\\\bsybase_(se(t_message_handler|lect_db)|num_(fields|rows)|c(onnect|lose)|d(eadlock_retry_count|ata_seek)|unbuffered_query|pconnect|query|f(ield_seek|etch_(object|field|a(ssoc|rray)|row)|ree_result)|affected_rows|result|get_last_message|min_(server_severity|client_severity|error_severity|message_severity))\\\\b","name":"support.function.sybase.php"},{"match":"(?i)\\\\b(taint|is_tainted|untaint)\\\\b","name":"support.function.taint.php"},{"match":"(?i)\\\\b(tidy_(s(et(opt|_encoding)|ave_config)|c(onfig_count|lean_repair)|is_x(html|ml)|diagnose|parse_(string|file)|error_count|warning_count|load_config|access_count|re(set_config|pair_(string|file))|get(opt|_(status|h(tml(_ver)?|ead)|config|o(utput|pt_doc)|r(oot|elease)|body)))|ob_tidyhandler)\\\\b","name":"support.function.tidy.php"},{"match":"(?i)\\\\btoken_(name|get_all)\\\\b","name":"support.function.tokenizer.php"},{"match":"(?i)\\\\btrader_(s(t(och(f|rsi)?|ddev)|in(h)?|u(m|b)|et_(compat|unstable_period)|qrt|ar(ext)?|ma)|ht_(sine|trend(line|mode)|dcp(hase|eriod)|phasor)|natr|c(ci|o(s(h)?|rrel)|dl(s(ho(otingstar|rtline)|t(icksandwich|alledpattern)|pinningtop|eparatinglines)|h(i(kkake(mod)?|ghwave)|omingpigeon|a(ngingman|rami(cross)?|mmer))|c(o(ncealbabyswall|unterattack)|losingmarubozu)|t(hrusting|a(sukigap|kuri)|ristar)|i(n(neck|vertedhammer)|dentical3crows)|2crows|onneck|d(oji(star)?|arkcloudcover|ragonflydoji)|u(nique3river|psidegap2crows)|3(starsinsouth|inside|outside|whitesoldiers|linestrike|blackcrows)|piercing|e(ngulfing|vening(star|dojistar))|kicking(bylength)?|l(ongl(ine|eggeddoji)|adderbottom)|a(dvanceblock|bandonedbaby)|ri(sefall3methods|ckshawman)|g(apsidesidewhite|ravestonedoji)|xsidegap3methods|m(orning(star|dojistar)|a(t(hold|chinglow)|rubozu))|b(elthold|reakaway))|eil|mo)|t(sf|ypprice|3|ema|an(h)?|r(i(x|ma)|ange))|obv|d(iv|ema|x)|ultosc|p(po|lus_d(i|m))|e(rrno|xp|ma)|var|kama|floor|w(clprice|illr|ma)|l(n|inearreg(_(slope|intercept|angle))?|og10)|a(sin|cos|t(an|r)|d(osc|d|x(r)?)?|po|vgprice|roon(osc)?)|r(si|oc(p|r(100)?)?)|get_(compat|unstable_period)|m(i(n(index|us_d(i|m)|max(index)?)?|dp(oint|rice))|om|ult|edprice|fi|a(cd(ext|fix)?|vp|x(index)?|ma)?)|b(op|eta|bands))\\\\b","name":"support.function.trader.php"},{"match":"(?i)\\\\b(http_build_query|url(decode|encode)|parse_url|rawurl(decode|encode)|get_(headers|meta_tags)|base64_(decode|encode))\\\\b","name":"support.function.url.php"},{"match":"(?i)\\\\b(s(trval|e(ttype|rialize))|i(s(set|_(s(calar|tring)|nu(ll|meric)|callable|int(eger)?|object|double|float|long|array|re(source|al)|bool|arraykey|nonnull|dict|vec|keyset))|ntval|mport_request_variables)|d(oubleval|ebug_zval_dump)|unse(t|rialize)|print_r|empty|var_(dump|export)|floatval|get(type|_(defined_vars|resource_type))|boolval)\\\\b","name":"support.function.var.php"},{"match":"(?i)\\\\bwddx_(serialize_va(lue|rs)|deserialize|packet_(start|end)|add_vars)\\\\b","name":"support.function.wddx.php"},{"match":"(?i)\\\\bxhprof_(sample_(disable|enable)|disable|enable)\\\\b","name":"support.function.xhprof.php"},{"match":"(?i)\\\\b(utf8_(decode|encode)|xml_(set_(start_namespace_decl_handler|notation_decl_handler|character_data_handler|object|default_handler|unparsed_entity_decl_handler|processing_instruction_handler|e(nd_namespace_decl_handler|lement_handler|xternal_entity_ref_handler))|parse(_into_struct|r_(set_option|create(_ns)?|free|get_option))?|error_string|get_(current_(column_number|line_number|byte_index)|error_code)))\\\\b","name":"support.function.xml.php"},{"match":"(?i)\\\\bxmlrpc_(se(t_type|rver_(c(all_method|reate)|destroy|add_introspection_data|register_(introspection_callback|method)))|is_fault|decode(_request)?|parse_method_descriptions|encode(_request)?|get_type)\\\\b","name":"support.function.xmlrpc.php"},{"match":"(?i)\\\\bxmlwriter_(s(tart_(c(omment|data)|d(td(_(e(ntity|lement)|attlist))?|ocument)|pi|element(_ns)?|attribute(_ns)?)|et_indent(_string)?)|text|o(utput_memory|pen_(uri|memory))|end_(c(omment|data)|d(td(_(e(ntity|lement)|attlist))?|ocument)|pi|element|attribute)|f(ull_end_element|lush)|write_(c(omment|data)|dtd(_(e(ntity|lement)|attlist))?|pi|element(_ns)?|attribute(_ns)?|raw))\\\\b","name":"support.function.xmlwriter.php"},{"match":"(?i)\\\\bxslt_(set(opt|_(s(cheme_handler(s)?|ax_handler(s)?)|object|e(ncoding|rror_handler)|log|base))|create|process|err(no|or)|free|getopt|backend_(name|info|version))\\\\b","name":"support.function.xslt.php"},{"match":"(?i)\\\\b(zlib_(decode|encode|get_coding_type)|readgzfile|gz(seek|c(ompress|lose)|tell|inflate|open|de(code|flate)|uncompress|p(uts|assthru)|e(ncode|of)|file|write|re(wind|ad)|get(s(s)?|c)))\\\\b","name":"support.function.zlib.php"},{"match":"(?i)\\\\bis_int(eger)?\\\\b","name":"support.function.alias.php"}]},"type-annotation":{"name":"support.type.php","patterns":[{"match":"\\\\b(?:bool|int|float|string|resource|mixed|arraykey|nonnull|dict|vec|keyset)\\\\b","name":"support.type.php"},{"begin":"([A-Za-z_][A-Za-z0-9_]*)<","beginCaptures":{"1":{"name":"support.class.php"}},"end":">","patterns":[{"include":"#type-annotation"}]},{"begin":"(shape\\\\()","end":"((,|\\\\.\\\\.\\\\.)?\\\\s*\\\\))","endCaptures":{"1":{"name":"keyword.operator.key.php"}},"name":"storage.type.shape.php","patterns":[{"include":"#type-annotation"},{"include":"#strings"},{"include":"#constants"}]},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#type-annotation"}]},{"include":"#class-name"},{"include":"#comments"}]},"user-function-call":{"begin":"(?i)(?=[a-z_0-9\\\\\\\\]*[a-z_][a-z0-9_]*\\\\s*\\\\()","end":"(?i)[a-z_][a-z_0-9]*(?=\\\\s*\\\\()","endCaptures":{"0":{"name":"entity.name.function.php"}},"name":"meta.function-call.php","patterns":[{"include":"#namespace"}]},"var_basic":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$+)[a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*?\\\\b","name":"variable.other.php"}]},"var_global":{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$)((_(COOKIE|FILES|GET|POST|REQUEST))|arg(v|c))\\\\b","name":"variable.other.global.php"},"var_global_safer":{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$)((GLOBALS|_(ENV|SERVER|SESSION)))","name":"variable.other.global.safer.php"},"variable-name":{"patterns":[{"include":"#var_global"},{"include":"#var_global_safer"},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"punctuation.definition.variable.php"},"4":{"name":"keyword.operator.class.php"},"5":{"name":"variable.other.property.php"},"6":{"name":"punctuation.section.array.begin.php"},"7":{"name":"constant.numeric.index.php"},"8":{"name":"variable.other.index.php"},"9":{"name":"punctuation.definition.variable.php"},"10":{"name":"string.unquoted.index.php"},"11":{"name":"punctuation.section.array.end.php"}},"comment":"Simple syntax: $foo, $foo[0], $foo[$bar], $foo->bar","match":"((\\\\$)(?<name>[a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*))(?:(->)(\\\\g<name>)|(\\\\[)(?:(\\\\d+)|((\\\\$)\\\\g<name>)|(\\\\w+))(\\\\]))?"},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"punctuation.definition.variable.php"},"4":{"name":"punctuation.definition.variable.php"}},"comment":"Simple syntax with braces: \\"foo\${bar}baz\\"","match":"((\\\\$\\\\{)(?<name>[a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*)(\\\\}))"}]},"variables":{"patterns":[{"include":"#var_global"},{"include":"#var_global_safer"},{"include":"#var_basic"},{"begin":"(\\\\$\\\\{)(?=.*?\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.variable.php"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.variable.php"}},"patterns":[{"include":"#language"}]}]},"xhp":{"comment":"Avoid < operator expressions as best we can using Zertosh's regex","patterns":[{"applyEndPatternLast":1,"begin":"(?<=\\\\(|\\\\{|\\\\[|,|&&|\\\\|\\\\||\\\\?|:|=|=>|\\\\Wreturn|^return|^)\\\\s*(?=<[_\\\\p{L}])","contentName":"source.xhp","end":"(?=.)","patterns":[{"include":"#xhp-tag-element-name"}]}]},"xhp-assignment":{"patterns":[{"comment":"look for attribute assignment","match":"=(?=\\\\s*(?:'|\\"|{|/\\\\*|<|//|\\\\n))","name":"keyword.operator.assignment.xhp"}]},"xhp-attribute-name":{"patterns":[{"captures":{"0":{"name":"entity.other.attribute-name.xhp"}},"comment":"look for attribute name","match":"(?<!\\\\S)([_\\\\p{L}](?:[\\\\p{L}\\\\p{Mn}\\\\p{Mc}\\\\p{Nd}\\\\p{Nl}\\\\p{Pc}-](?<!\\\\.\\\\.))*+)(?<!\\\\.)(?=//|/\\\\*|=|\\\\s|>|/>)"}]},"xhp-entities":{"patterns":[{"captures":{"0":{"name":"constant.character.entity.xhp"},"1":{"name":"punctuation.definition.entity.xhp"},"2":{"name":"entity.name.tag.html.xhp"},"3":{"name":"punctuation.definition.entity.xhp"}},"comment":"Embeded HTML entities &blah","match":"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)"},{"comment":"Entity with & and invalid name","match":"&\\\\S*;","name":"invalid.illegal.bad-ampersand.xhp"}]},"xhp-evaluated-code":{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xhp"}},"contentName":"source.php.xhp","end":"}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.xhp"}},"name":"meta.embedded.expression.php","patterns":[{"include":"#language"}]},"xhp-html-comments":{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.html"}},"end":"--\\\\s*>","name":"comment.block.html","patterns":[{"match":"--(?!-*\\\\s*>)","name":"invalid.illegal.bad-comments-or-CDATA.html"}]},"xhp-string-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xhp"}},"end":"\\"(?<!\\\\\\\\\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.xhp"}},"name":"string.quoted.double.php","patterns":[{"include":"#xhp-entities"}]},"xhp-string-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xhp"}},"end":"'(?<!\\\\\\\\')","endCaptures":{"0":{"name":"punctuation.definition.string.end.xhp"}},"name":"string.quoted.single.php","patterns":[{"include":"#xhp-entities"}]},"xhp-tag-attributes":{"patterns":[{"include":"#xhp-attribute-name"},{"include":"#xhp-assignment"},{"include":"#xhp-string-double-quoted"},{"include":"#xhp-string-single-quoted"},{"include":"#xhp-evaluated-code"},{"include":"#xhp-tag-element-name"},{"include":"#comments"}]},"xhp-tag-element-name":{"patterns":[{"begin":"\\\\s*(<)([_\\\\p{L}](?:[:\\\\p{L}\\\\p{Mn}\\\\p{Mc}\\\\p{Nd}\\\\p{Nl}\\\\p{Pc}-])*+)(?=[/>\\\\s])(?<![\\\\:])","beginCaptures":{"1":{"name":"punctuation.definition.tag.xhp"},"2":{"name":"entity.name.tag.open.xhp"}},"comment":"Tags that end > are trapped in #xhp-tag-termination","end":"\\\\s*(?<=</)(\\\\2)(>)|(/>)|((?<=</)[\\\\S ]*?)>","endCaptures":{"1":{"name":"entity.name.tag.close.xhp"},"2":{"name":"punctuation.definition.tag.xhp"},"3":{"name":"punctuation.definition.tag.xhp"},"4":{"name":"invalid.illegal.termination.xhp"}},"patterns":[{"include":"#xhp-tag-termination"},{"include":"#xhp-html-comments"},{"include":"#xhp-tag-attributes"}]}]},"xhp-tag-termination":{"patterns":[{"begin":"(?<!--)(>)","beginCaptures":{"0":{"name":"punctuation.definition.tag.xhp"},"1":{"name":"XHPStartTagEnd"}},"comment":"uses non consuming search for </ in </tag>","end":"(</)","endCaptures":{"0":{"name":"punctuation.definition.tag.xhp"},"1":{"name":"XHPEndTagStart"}},"patterns":[{"include":"#xhp-evaluated-code"},{"include":"#xhp-entities"},{"include":"#xhp-html-comments"},{"include":"#xhp-tag-element-name"}]}]}},"scopeName":"source.hack","embeddedLangs":["html","sql"]}`)),gae=[...ce,...Ve,mae]});var r$={};x(r$,{default:()=>bae});var fae,bae,i$=_(()=>{Ye();rt();Qe();Qc();fae=Object.freeze(JSON.parse(`{"displayName":"Handlebars","name":"handlebars","patterns":[{"include":"#yfm"},{"include":"#extends"},{"include":"#block_comments"},{"include":"#comments"},{"include":"#block_helper"},{"include":"#end_block"},{"include":"#else_token"},{"include":"#partial_and_var"},{"include":"#inline_script"},{"include":"#html_tags"},{"include":"text.html.basic"}],"repository":{"block_comments":{"patterns":[{"begin":"\\\\{\\\\{!--","end":"--\\\\}\\\\}","name":"comment.block.handlebars","patterns":[{"match":"@\\\\w*","name":"keyword.annotation.handlebars"},{"include":"#comments"}]},{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.html"}},"end":"-{2,3}\\\\s*>","name":"comment.block.html","patterns":[{"match":"--","name":"invalid.illegal.bad-comments-or-CDATA.html"}]}]},"block_helper":{"begin":"(\\\\{\\\\{)(~?\\\\#)([-a-zA-Z0-9_\\\\./>]+)\\\\s?(@?[-a-zA-Z0-9_\\\\./]+)*\\\\s?(@?[-a-zA-Z0-9_\\\\./]+)*\\\\s?(@?[-a-zA-Z0-9_\\\\./]+)*","beginCaptures":{"1":{"name":"support.constant.handlebars"},"2":{"name":"support.constant.handlebars keyword.control"},"3":{"name":"support.constant.handlebars keyword.control"},"4":{"name":"variable.parameter.handlebars"},"5":{"name":"support.constant.handlebars"},"6":{"name":"variable.parameter.handlebars"},"7":{"name":"support.constant.handlebars"}},"end":"(~?\\\\}\\\\})","endCaptures":{"1":{"name":"support.constant.handlebars"}},"name":"meta.function.block.start.handlebars","patterns":[{"include":"#string"},{"include":"#handlebars_attribute"}]},"comments":{"patterns":[{"begin":"\\\\{\\\\{!","end":"\\\\}\\\\}","name":"comment.block.handlebars","patterns":[{"match":"@\\\\w*","name":"keyword.annotation.handlebars"},{"include":"#comments"}]},{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.html"}},"end":"-{2,3}\\\\s*>","name":"comment.block.html","patterns":[{"match":"--","name":"invalid.illegal.bad-comments-or-CDATA.html"}]}]},"else_token":{"begin":"(\\\\{\\\\{)(~?else)(@?\\\\s(if)\\\\s([-a-zA-Z0-9_\\\\.\\\\(\\\\s\\\\)/]+))?","beginCaptures":{"1":{"name":"support.constant.handlebars"},"2":{"name":"support.constant.handlebars keyword.control"},"3":{"name":"support.constant.handlebars"},"4":{"name":"variable.parameter.handlebars"}},"end":"(~?\\\\}\\\\}\\\\}*)","endCaptures":{"1":{"name":"support.constant.handlebars"}},"name":"meta.function.inline.else.handlebars"},"end_block":{"begin":"(\\\\{\\\\{)(~?/)([a-zA-Z0-9/_\\\\.-]+)\\\\s*","beginCaptures":{"1":{"name":"support.constant.handlebars"},"2":{"name":"support.constant.handlebars keyword.control"},"3":{"name":"support.constant.handlebars keyword.control"}},"end":"(~?\\\\}\\\\})","endCaptures":{"1":{"name":"support.constant.handlebars"}},"name":"meta.function.block.end.handlebars","patterns":[]},"entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)","name":"constant.character.entity.html"},{"match":"&","name":"invalid.illegal.bad-ampersand.html"}]},"escaped-double-quote":{"match":"\\\\\\\\\\"","name":"constant.character.escape.js"},"escaped-single-quote":{"match":"\\\\\\\\'","name":"constant.character.escape.js"},"extends":{"patterns":[{"begin":"(\\\\{\\\\{!<)\\\\s([-a-zA-Z0-9_\\\\./]+)","beginCaptures":{"1":{"name":"support.function.handlebars"},"2":{"name":"support.class.handlebars"}},"end":"(\\\\}\\\\})","endCaptures":{"1":{"name":"support.function.handlebars"}},"name":"meta.preprocessor.handlebars"}]},"handlebars_attribute":{"patterns":[{"include":"#handlebars_attribute_name"},{"include":"#handlebars_attribute_value"}]},"handlebars_attribute_name":{"begin":"\\\\b([-a-zA-Z0-9_\\\\.]+)\\\\b=","captures":{"1":{"name":"variable.parameter.handlebars"}},"end":"(?='|\\"|)","name":"entity.other.attribute-name.handlebars"},"handlebars_attribute_value":{"begin":"([-a-zA-Z0-9_\\\\./]+)\\\\b","captures":{"1":{"name":"variable.parameter.handlebars"}},"end":"('|\\"|)","name":"entity.other.attribute-value.handlebars","patterns":[{"include":"#string"}]},"html_tags":{"patterns":[{"begin":"(<)([a-zA-Z0-9:-]+)(?=[^>]*></\\\\2>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.html"}},"end":"(>(<)/)(\\\\2)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"meta.scope.between-tag-pair.html"},"3":{"name":"entity.name.tag.html"},"4":{"name":"punctuation.definition.tag.html"}},"name":"meta.tag.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(<\\\\?)(xml)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.xml.html"}},"end":"(\\\\?>)","name":"meta.tag.preprocessor.xml.html","patterns":[{"include":"#tag_generic_attribute"},{"include":"#string"}]},{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.html"}},"end":"--\\\\s*>","name":"comment.block.html","patterns":[{"match":"--","name":"invalid.illegal.bad-comments-or-CDATA.html"}]},{"begin":"<!","captures":{"0":{"name":"punctuation.definition.tag.html"}},"end":">","name":"meta.tag.sgml.html","patterns":[{"begin":"(DOCTYPE|doctype)","captures":{"1":{"name":"entity.name.tag.doctype.html"}},"end":"(?=>)","name":"meta.tag.sgml.doctype.html","patterns":[{"match":"\\"[^\\">]*\\"","name":"string.quoted.double.doctype.identifiers-and-DTDs.html"}]},{"begin":"\\\\[CDATA\\\\[","end":"]](?=>)","name":"constant.other.inline-data.html"},{"match":"(\\\\s*)(?!--|>)\\\\S(\\\\s*)","name":"invalid.illegal.bad-comments-or-CDATA.html"}]},{"begin":"(?:^\\\\s+)?(<)((?i:style))\\\\b(?![^>]*/>)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.style.html"},"3":{"name":"punctuation.definition.tag.html"}},"end":"(</)((?i:style))(>)(?:\\\\s*\\\\n)?","name":"source.css.embedded.html","patterns":[{"include":"#tag-stuff"},{"begin":"(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"}},"end":"(?=</(?i:style))","patterns":[{"include":"source.css"}]}]},{"begin":"(?:^\\\\s+)?(<)((?i:script))\\\\b(?![^>]*/>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.script.html"}},"end":"(?<=</(script|SCRIPT))(>)(?:\\\\s*\\\\n)?","endCaptures":{"2":{"name":"punctuation.definition.tag.html"}},"name":"source.js.embedded.html","patterns":[{"include":"#tag-stuff"},{"begin":"(?<!</(?:script|SCRIPT))(>)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.script.html"}},"end":"(</)((?i:script))","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.js"}},"match":"(//).*?((?=<\/script)|$\\\\n?)","name":"comment.line.double-slash.js"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"\\\\*/|(?=<\/script)","name":"comment.block.js"},{"include":"source.js"}]}]},{"begin":"(</?)((?i:body|head|html)\\\\b)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.structure.any.html"}},"end":"(>)","name":"meta.tag.structure.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)((?i:address|blockquote|dd|div|header|section|footer|aside|nav|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre)\\\\b)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.block.any.html"}},"end":"(>)","name":"meta.tag.block.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)\\\\b)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.inline.any.html"}},"end":"((?: ?/)?>)","name":"meta.tag.inline.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)([a-zA-Z0-9:-]+)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.other.html"}},"end":"(>)","name":"meta.tag.other.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)([a-zA-Z0-9{}:-]+)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.tokenised.html"}},"end":"(>)","name":"meta.tag.tokenised.html","patterns":[{"include":"#tag-stuff"}]},{"include":"#entities"},{"match":"<>","name":"invalid.illegal.incomplete.html"},{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]},"inline_script":{"begin":"(?:^\\\\s+)?(<)((?i:script))\\\\b(?:.*(type)=([\\"'](?:text/x-handlebars-template|text/x-handlebars|text/template|x-tmpl-handlebars)[\\"']))(?![^>]*/>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.script.html"},"3":{"name":"entity.other.attribute-name.html"},"4":{"name":"string.quoted.double.html"}},"end":"(?<=</(script|SCRIPT))(>)(?:\\\\s*\\\\n)?","endCaptures":{"2":{"name":"punctuation.definition.tag.html"}},"name":"source.handlebars.embedded.html","patterns":[{"include":"#tag-stuff"},{"begin":"(?<!</(?:script|SCRIPT))(>)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.script.html"}},"end":"(</)((?i:script))","patterns":[{"include":"#block_comments"},{"include":"#comments"},{"include":"#block_helper"},{"include":"#end_block"},{"include":"#else_token"},{"include":"#partial_and_var"},{"include":"#html_tags"},{"include":"text.html.basic"}]}]},"partial_and_var":{"begin":"(\\\\{\\\\{~?\\\\{*(>|!<)*)\\\\s*(@?[-a-zA-Z0-9$_\\\\./]+)*","beginCaptures":{"1":{"name":"support.constant.handlebars"},"3":{"name":"variable.parameter.handlebars"}},"end":"(~?\\\\}\\\\}\\\\}*)","endCaptures":{"1":{"name":"support.constant.handlebars"}},"name":"meta.function.inline.other.handlebars","patterns":[{"include":"#string"},{"include":"#handlebars_attribute"}]},"string":{"patterns":[{"include":"#string-single-quoted"},{"include":"#string-double-quoted"}]},"string-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.double.handlebars","patterns":[{"include":"#escaped-double-quote"},{"include":"#block_comments"},{"include":"#comments"},{"include":"#block_helper"},{"include":"#else_token"},{"include":"#end_block"},{"include":"#partial_and_var"}]},"string-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.single.handlebars","patterns":[{"include":"#escaped-single-quote"},{"include":"#block_comments"},{"include":"#comments"},{"include":"#block_helper"},{"include":"#else_token"},{"include":"#end_block"},{"include":"#partial_and_var"}]},"tag-stuff":{"patterns":[{"include":"#tag_id_attribute"},{"include":"#tag_generic_attribute"},{"include":"#string"},{"include":"#block_comments"},{"include":"#comments"},{"include":"#block_helper"},{"include":"#end_block"},{"include":"#else_token"},{"include":"#partial_and_var"}]},"tag_generic_attribute":{"begin":"\\\\b([a-zA-Z0-9_-]+)\\\\b\\\\s*(=)","captures":{"1":{"name":"entity.other.attribute-name.generic.html"},"2":{"name":"punctuation.separator.key-value.html"}},"end":"(?<='|\\"|)","name":"entity.other.attribute-name.html","patterns":[{"include":"#string"}]},"tag_id_attribute":{"begin":"\\\\b(id)\\\\b\\\\s*(=)","captures":{"1":{"name":"entity.other.attribute-name.id.html"},"2":{"name":"punctuation.separator.key-value.html"}},"end":"(?<='|\\"|)","name":"meta.attribute-with-value.id.html","patterns":[{"include":"#string"}]},"yfm":{"patterns":[{"begin":"(?<!\\\\s)---\\\\n$","end":"^---\\\\s","name":"markup.raw.yaml.front-matter","patterns":[{"include":"source.yaml"}]}]}},"scopeName":"text.html.handlebars","embeddedLangs":["html","css","javascript","yaml"],"aliases":["hbs"]}`)),bae=[...ce,...ue,...J,...Zr,fae]});var o$={};x(o$,{default:()=>yae});var hae,yae,s$=_(()=>{hae=Object.freeze(JSON.parse(`{"displayName":"Haskell","fileTypes":["hs","hs-boot","hsig"],"name":"haskell","patterns":[{"include":"#liquid_haskell"},{"include":"#comment_like"},{"include":"#numeric_literals"},{"include":"#string_literal"},{"include":"#char_literal"},{"match":"(?<!@|#)-\\\\}","name":"invalid"},{"captures":{"1":{"name":"punctuation.paren.haskell"},"2":{"name":"punctuation.paren.haskell"}},"match":"(\\\\()\\\\s*(\\\\))","name":"constant.language.unit.haskell"},{"captures":{"1":{"name":"punctuation.paren.haskell"},"2":{"name":"keyword.operator.hash.haskell"},"3":{"name":"keyword.operator.hash.haskell"},"4":{"name":"punctuation.paren.haskell"}},"match":"(\\\\()(#)\\\\s*(#)(\\\\))","name":"constant.language.unit.unboxed.haskell"},{"captures":{"1":{"name":"punctuation.paren.haskell"},"2":{"name":"punctuation.paren.haskell"}},"match":"(\\\\()\\\\s*,[\\\\s,]*(\\\\))","name":"support.constant.tuple.haskell"},{"captures":{"1":{"name":"punctuation.paren.haskell"},"2":{"name":"keyword.operator.hash.haskell"},"3":{"name":"keyword.operator.hash.haskell"},"4":{"name":"punctuation.paren.haskell"}},"match":"(\\\\()(#)\\\\s*,[\\\\s,]*(#)(\\\\))","name":"support.constant.tuple.unboxed.haskell"},{"captures":{"1":{"name":"punctuation.bracket.haskell"},"2":{"name":"punctuation.bracket.haskell"}},"match":"(\\\\[)\\\\s*(\\\\])","name":"constant.language.empty-list.haskell"},{"begin":"(\\\\b(?<!')(module)|^(signature))(\\\\b(?!'))","beginCaptures":{"2":{"name":"keyword.other.module.haskell"},"3":{"name":"keyword.other.signature.haskell"}},"end":"(?=\\\\b(?<!')where\\\\b(?!'))","name":"meta.declaration.module.haskell","patterns":[{"include":"#comment_like"},{"include":"#module_name"},{"include":"#module_exports"},{"match":"[a-z]+","name":"invalid"}]},{"include":"#ffi"},{"begin":"^(\\\\s*)(class)(\\\\b(?!'))","beginCaptures":{"2":{"name":"keyword.other.class.haskell"}},"end":"(?=(?<!')\\\\bwhere\\\\b(?!'))|(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.declaration.class.haskell","patterns":[{"include":"#comment_like"},{"include":"#where"},{"include":"#type_signature"}]},{"begin":"^(\\\\s*)(data|newtype)(?:\\\\s+(instance))?\\\\s+((?:(?!(?:(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])(?:=|--+)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]))|(?:\\\\b(?<!')(?:where|deriving)\\\\b(?!'))|{-).)*)(?=\\\\b(?<!'')where\\\\b(?!''))","beginCaptures":{"2":{"name":"keyword.other.$2.haskell"},"3":{"name":"keyword.other.instance.haskell"},"4":{"patterns":[{"include":"#type_signature"}]}},"end":"(?=(?<!')\\\\bderiving\\\\b(?!'))|(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.declaration.$2.generalized.haskell","patterns":[{"include":"#comment_like"},{"begin":"(?<!')\\\\b(where)\\\\s*(\\\\{)(?!-)","beginCaptures":{"1":{"name":"keyword.other.where.haskell"},"2":{"name":"punctuation.brace.haskell"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.brace.haskell"}},"patterns":[{"include":"#comment_like"},{"include":"#gadt_constructor"},{"match":";","name":"punctuation.semicolon.haskell"}]},{"match":"\\\\b(?<!')(where)\\\\b(?!')","name":"keyword.other.where.haskell"},{"include":"#deriving"},{"include":"#gadt_constructor"}]},{"include":"#role_annotation"},{"begin":"^(\\\\s*)(pattern)\\\\s+(.*?)\\\\s+(::|\u2237)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])","beginCaptures":{"2":{"name":"keyword.other.pattern.haskell"},"3":{"patterns":[{"include":"#comma"},{"include":"#data_constructor"}]},"4":{"name":"keyword.operator.double-colon.haskell"}},"end":"(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.declaration.pattern.type.haskell","patterns":[{"include":"#type_signature"}]},{"begin":"^\\\\s*(pattern)\\\\b(?!')","captures":{"1":{"name":"keyword.other.pattern.haskell"}},"end":"(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.declaration.pattern.haskell","patterns":[{"include":"$self"}]},{"begin":"^(\\\\s*)(data|newtype)(?:\\\\s+(family|instance))?\\\\s+(((?!(?:(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])(?:=|--+)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]))|(?:\\\\b(?<!')(?:where|deriving)\\\\b(?!'))|{-).)*)","beginCaptures":{"2":{"name":"keyword.other.$2.haskell"},"3":{"name":"keyword.other.$3.haskell"},"4":{"patterns":[{"include":"#type_signature"}]}},"end":"(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.declaration.$2.algebraic.haskell","patterns":[{"include":"#comment_like"},{"include":"#deriving"},{"include":"#forall"},{"include":"#adt_constructor"},{"include":"#context"},{"include":"#record_decl"},{"include":"#type_signature"}]},{"begin":"^(\\\\s*)(type)\\\\s+(family)\\\\b(?!')(((?!(?:(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])(?:=|--+)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]))|\\\\b(?<!')where\\\\b(?!')|{-).)*)","beginCaptures":{"2":{"name":"keyword.other.type.haskell"},"3":{"name":"keyword.other.family.haskell"},"4":{"patterns":[{"include":"#comment_like"},{"include":"#where"},{"include":"#type_signature"}]}},"end":"(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.declaration.type.family.haskell","patterns":[{"include":"#comment_like"},{"include":"#where"},{"include":"#type_signature"}]},{"begin":"^(\\\\s*)(type)(?:\\\\s+(instance))?\\\\s+(((?!(?:(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])(?:=|--+|::|\u2237)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]))|{-).)*)","beginCaptures":{"2":{"name":"keyword.other.type.haskell"},"3":{"name":"keyword.other.instance.haskell"},"4":{"patterns":[{"include":"#type_signature"}]}},"end":"(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.declaration.type.haskell","patterns":[{"include":"#type_signature"}]},{"begin":"^(\\\\s*)(instance)(\\\\b(?!'))","beginCaptures":{"2":{"name":"keyword.other.instance.haskell"}},"end":"(?=\\\\b(?<!')(where)\\\\b(?!'))|(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.declaration.instance.haskell","patterns":[{"include":"#comment_like"},{"include":"#where"},{"include":"#type_signature"}]},{"begin":"^(\\\\s*)(import)(\\\\b(?!'))","beginCaptures":{"2":{"name":"keyword.other.import.haskell"}},"end":"(?=\\\\b(?<!')(where)\\\\b(?!'))|(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.import.haskell","patterns":[{"include":"#comment_like"},{"include":"#where"},{"captures":{"1":{"name":"keyword.other.$1.haskell"}},"match":"(qualified|as|hiding)"},{"include":"#module_name"},{"include":"#module_exports"}]},{"include":"#deriving"},{"include":"#layout_herald"},{"include":"#keyword"},{"captures":{"1":{"name":"keyword.other.$1.haskell"},"2":{"patterns":[{"include":"#comment_like"},{"include":"#integer_literals"},{"include":"#infix_op"}]}},"match":"^\\\\s*(infix[lr]?)\\\\s+(.*)","name":"meta.fixity-declaration.haskell"},{"include":"#overloaded_label"},{"include":"#type_application"},{"include":"#reserved_symbol"},{"include":"#fun_decl"},{"include":"#qualifier"},{"include":"#data_constructor"},{"include":"#start_type_signature"},{"include":"#prefix_op"},{"include":"#infix_op"},{"begin":"(\\\\()(#)\\\\s","beginCaptures":{"1":{"name":"punctuation.paren.haskell"},"2":{"name":"keyword.operator.hash.haskell"}},"end":"(#)(\\\\))","endCaptures":{"1":{"name":"keyword.operator.hash.haskell"},"2":{"name":"punctuation.paren.haskell"}},"patterns":[{"include":"#comma"},{"include":"$self"}]},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.paren.haskell"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.paren.haskell"}},"patterns":[{"include":"#comma"},{"include":"$self"}]},{"include":"#quasi_quote"},{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.bracket.haskell"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.bracket.haskell"}},"patterns":[{"include":"#comma"},{"include":"$self"}]},{"include":"#record"}],"repository":{"adt_constructor":{"patterns":[{"include":"#comment_like"},{"begin":"(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])(?:(=)|(\\\\|))(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])","beginCaptures":{"1":{"name":"keyword.operator.eq.haskell"},"2":{"name":"keyword.operator.pipe.haskell"}},"end":"(?:\\\\G|^)\\\\s*(?:(?:(?<!')\\\\b((?:[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'\\\\.])+)|('?(?<paren>\\\\((?:[^\\\\(\\\\)]*|\\\\g<paren>)*\\\\)))|('?(?<brac>\\\\((?:[^\\\\[\\\\]]*|\\\\g<brac>)*\\\\])))\\\\s*(?:(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]*)|(\`)([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)(\`)))|(?:(?<!')\\\\b([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*))|(\\\\()\\\\s*(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]*)\\\\s*(\\\\))","endCaptures":{"1":{"patterns":[{"include":"#type_signature"}]},"2":{"patterns":[{"include":"#type_signature"}]},"4":{"patterns":[{"include":"#type_signature"}]},"6":{"name":"constant.other.operator.haskell"},"7":{"name":"punctuation.backtick.haskell"},"8":{"name":"constant.other.haskell"},"9":{"name":"punctuation.backtick.haskell"},"10":{"name":"constant.other.haskell"},"11":{"name":"punctuation.paren.haskell"},"12":{"name":"constant.other.operator.haskell"},"13":{"name":"punctuation.paren.haskell"}},"patterns":[{"include":"#comment_like"},{"include":"#deriving"},{"include":"#record_decl"},{"include":"#forall"},{"include":"#context"}]}]},"block_comment":{"applyEndPatternLast":1,"begin":"\\\\{-","captures":{"0":{"name":"punctuation.definition.comment.haskell"}},"end":"-\\\\}","name":"comment.block.haskell","patterns":[{"include":"#block_comment"}]},"char_literal":{"captures":{"1":{"name":"punctuation.definition.string.begin.haskell"},"2":{"name":"constant.character.escape.haskell"},"3":{"name":"constant.character.escape.octal.haskell"},"4":{"name":"constant.character.escape.hexadecimal.haskell"},"5":{"name":"constant.character.escape.control.haskell"},"6":{"name":"punctuation.definition.string.end.haskell"}},"match":"(?<![\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'])(')(?:[\\\\ -\\\\[\\\\]-~]|(\\\\\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\"'\\\\\\\\&]))|(\\\\\\\\o[0-7]+)|(\\\\\\\\x[0-9A-Fa-f]+)|(\\\\\\\\\\\\^[A-Z@\\\\[\\\\]\\\\\\\\\\\\^_]))(')","name":"string.quoted.single.haskell"},"comma":{"match":",","name":"punctuation.separator.comma.haskell"},"comment_like":{"patterns":[{"include":"#cpp"},{"include":"#pragma"},{"include":"#comments"}]},"comments":{"patterns":[{"begin":"^(\\\\s*)(--\\\\s[\\\\|\\\\$])","beginCaptures":{"2":{"name":"punctuation.whitespace.comment.leading.haskell"}},"end":"(?=^(?!\\\\1--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])))","name":"comment.block.documentation.haskell"},{"begin":"(^[ \\\\t]+)?(--\\\\s[\\\\^\\\\*])","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.haskell"}},"end":"\\\\n","name":"comment.line.documentation.haskell"},{"applyEndPatternLast":1,"begin":"\\\\{-\\\\s?[\\\\|\\\\$\\\\*\\\\^]","captures":{"0":{"name":"punctuation.definition.comment.haskell"}},"end":"-\\\\}","name":"comment.block.documentation.haskell","patterns":[{"include":"#block_comment"}]},{"begin":"(^[ \\\\t]+)?(?=--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]))","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.haskell"}},"comment":"Operators may begin with '--' as long as they are not entirely composed of '-' characters. This means comments can't be immediately followed by an allowable operator character.","end":"(?!\\\\G)","patterns":[{"begin":"--","beginCaptures":{"0":{"name":"punctuation.definition.comment.haskell"}},"end":"\\\\n","name":"comment.line.double-dash.haskell"}]},{"include":"#block_comment"}]},"context":{"captures":{"1":{"patterns":[{"include":"#comment_like"},{"include":"#type_signature"}]},"2":{"name":"keyword.operator.big-arrow.haskell"}},"match":"(.*)(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])(=>|\u21D2)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])"},"cpp":{"captures":{"1":{"name":"punctuation.definition.preprocessor.c"}},"comment":"In addition to Haskell's \\"native\\" syntax, GHC permits the C preprocessor to be run on a source file.","match":"^(#).*$","name":"meta.preprocessor.c"},"data_constructor":{"match":"\\\\b(?<!')[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?![\\\\.'\\\\w])","name":"constant.other.haskell"},"deriving":{"patterns":[{"begin":"^(\\\\s*)(deriving)\\\\s+(?:(via|stock|newtype|anyclass)\\\\s+)?","beginCaptures":{"2":{"name":"keyword.other.deriving.haskell"},"3":{"name":"keyword.other.deriving.strategy.$3.haskell"}},"end":"(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.deriving.haskell","patterns":[{"include":"#comment_like"},{"match":"(?<!')\\\\b(instance)\\\\b(?!')","name":"keyword.other.instance.haskell"},{"captures":{"1":{"name":"keyword.other.deriving.strategy.$1.haskell"}},"match":"(?<!')\\\\b(via|stock|newtype|anyclass)\\\\b(?!')"},{"include":"#type_signature"}]},{"begin":"(deriving)(?:\\\\s+(stock|newtype|anyclass))?\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.deriving.haskell"},"2":{"name":"keyword.other.deriving.strategy.$2.haskell"},"3":{"name":"punctuation.paren.haskell"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.paren.haskell"}},"name":"meta.deriving.haskell","patterns":[{"include":"#type_signature"}]},{"captures":{"1":{"name":"keyword.other.deriving.haskell"},"2":{"name":"keyword.other.deriving.strategy.$2.haskell"},"3":{"patterns":[{"include":"#type_signature"}]},"5":{"name":"keyword.other.deriving.strategy.via.haskell"},"6":{"patterns":[{"include":"#type_signature"}]}},"match":"(deriving)(?:\\\\s+(stock|newtype|anyclass))?\\\\s+([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)(\\\\s+(via)\\\\s+(.*)$)?","name":"meta.deriving.haskell"},{"match":"(?<!')\\\\b(via)\\\\b(?!')","name":"keyword.other.deriving.strategy.via.haskell"}]},"double_colon":{"captures":{"1":{"name":"keyword.operator.double-colon.haskell"}},"match":"\\\\s*(::|\u2237)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])\\\\s*"},"export_constructs":{"patterns":[{"include":"#comment_like"},{"begin":"\\\\b(?<!')(pattern)\\\\b(?!')","beginCaptures":{"1":{"name":"keyword.other.pattern.haskell"}},"end":"([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)|(\\\\()\\\\s*(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+)\\\\s*(\\\\))","endCaptures":{"1":{"name":"constant.other.haskell"},"2":{"name":"punctuation.paren.haskell"},"3":{"name":"constant.other.operator.haskell"},"4":{"name":"punctuation.paren.haskell"}},"patterns":[{"include":"#comment_like"}]},{"begin":"\\\\b(?<!')(type)\\\\b(?!')","beginCaptures":{"1":{"name":"keyword.other.type.haskell"}},"end":"([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)|(\\\\()\\\\s*([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+)\\\\s*(\\\\))","endCaptures":{"1":{"name":"storage.type.haskell"},"2":{"name":"punctuation.paren.haskell"},"3":{"name":"storage.type.operator.haskell"},"4":{"name":"punctuation.paren.haskell"}},"patterns":[{"include":"#comment_like"}]},{"match":"(?<!')\\\\b[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*","name":"entity.name.function.haskell"},{"match":"(?<!')\\\\b[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*","name":"storage.type.haskell"},{"include":"#record_wildcard"},{"include":"#reserved_symbol"},{"include":"#prefix_op"}]},"ffi":{"begin":"^(\\\\s*)(foreign)\\\\s+(import|export)\\\\s+","beginCaptures":{"2":{"name":"keyword.other.foreign.haskell"},"3":{"name":"keyword.other.$3.haskell"}},"end":"(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.$3.foreign.haskell","patterns":[{"include":"#comment_like"},{"captures":{"1":{"name":"keyword.other.calling-convention.$1.haskell"}},"match":"\\\\b(?<!')(ccall|cplusplus|dotnet|jvm|stdcall|prim|capi)\\\\s+"},{"begin":"(?=\\")|(?=\\\\b(?<!')([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\\\b(?!'))","end":"(?=(::|\u2237)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]))","patterns":[{"include":"#comment_like"},{"captures":{"1":{"name":"keyword.other.safety.$1.haskell"},"2":{"name":"entity.name.foreign.haskell","patterns":[{"include":"#string_literal"}]},"3":{"name":"entity.name.function.haskell"},"4":{"name":"entity.name.function.infix.haskell"}},"match":"\\\\b(?<!')(safe|unsafe|interruptible)\\\\b(?!')\\\\s*(\\"(?:\\\\\\\\\\"|[^\\"])*\\")?\\\\s*(?:(?:\\\\b(?<!'')([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\\\b(?!'))|(?:\\\\(\\\\s*(?!--+\\\\))([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+)\\\\s*\\\\)))"},{"captures":{"1":{"name":"keyword.other.safety.$1.haskell"},"2":{"name":"entity.name.foreign.haskell","patterns":[{"include":"#string_literal"}]}},"match":"\\\\b(?<!')(safe|unsafe|interruptible)\\\\b(?!')\\\\s*(\\"(?:\\\\\\\\\\"|[^\\"])*\\")?\\\\s*$"},{"captures":{"0":{"name":"entity.name.foreign.haskell","patterns":[{"include":"#string_literal"}]}},"match":"\\"(?:\\\\\\\\\\"|[^\\"])*\\""},{"captures":{"1":{"name":"entity.name.function.haskell"},"2":{"name":"punctuation.paren.haskell"},"3":{"name":"entity.name.function.infix.haskell"},"4":{"name":"punctuation.paren.haskell"}},"match":"(?:\\\\b(?<!'')([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\\\b(?!'))|(?:(\\\\()\\\\s*(?!--+\\\\))([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+)\\\\s*(\\\\)))"}]},{"include":"#double_colon"},{"include":"#type_signature"}]},"float_literals":{"captures":{"1":{"name":"constant.numeric.floating.decimal.haskell"},"2":{"name":"constant.numeric.floating.hexadecimal.haskell"}},"comment":"Floats are decimal or hexadecimal","match":"\\\\b(?<!')(?:([0-9][_0-9]*\\\\.[0-9][_0-9]*(?:[eE][-+]?[0-9][_0-9]*)?|[0-9][_0-9]*[eE][-+]?[0-9][_0-9]*)|(0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*\\\\.[0-9a-fA-F][_0-9a-fA-F]*(?:[pP][-+]?[0-9][_0-9]*)?|0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*[pP][-+]?[0-9][_0-9]*))\\\\b(?!')"},"forall":{"begin":"\\\\b(?<!')(forall|\u2200)\\\\b(?!')","beginCaptures":{"1":{"name":"keyword.other.forall.haskell"}},"end":"(\\\\.)|(->|\u2192)","endCaptures":{"1":{"name":"keyword.operator.period.haskell"},"2":{"name":"keyword.operator.arrow.haskell"}},"patterns":[{"include":"#comment_like"},{"include":"#type_variable"},{"include":"#type_signature"}]},"fun_decl":{"begin":"^(\\\\s*)(?<fn>(?:[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\#*|\\\\(\\\\s*(?!--+\\\\))[\\\\p{S}\\\\p{P}&&[^(),:;\\\\[\\\\]\`{}_\\"']][\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]*\\\\s*\\\\))(?:\\\\s*,\\\\s*\\\\g<fn>)?)\\\\s*(?<![\\\\p{S}\\\\p{P}&&[^\\\\),;\\\\]\`}_\\"']])(::|\u2237)(?![\\\\p{S}\\\\p{P}&&[^\\\\(,;\\\\[\`{_\\"']])","beginCaptures":{"2":{"name":"entity.name.function.haskell","patterns":[{"include":"#reserved_symbol"},{"include":"#prefix_op"}]},"3":{"name":"keyword.operator.double-colon.haskell"}},"end":"(?=(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])((<-|\u2190)|(=)|(-<|\u21A2)|(-<<|\u291B))([(),;\\\\[\\\\]\`{}_\\"']|[^\\\\p{S}\\\\p{P}]))|(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.function.type-declaration.haskell","patterns":[{"include":"#type_signature"}]},"gadt_constructor":{"patterns":[{"begin":"^(\\\\s*)(?:(\\\\b(?<!')[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)|(\\\\()\\\\s*(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]*)\\\\s*(\\\\)))","beginCaptures":{"2":{"name":"constant.other.haskell"},"3":{"name":"punctuation.paren.haskell"},"4":{"name":"constant.other.operator.haskell"},"5":{"name":"punctuation.paren.haskell"}},"end":"(?=\\\\b(?<!'')deriving\\\\b(?!'))|(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","patterns":[{"include":"#comment_like"},{"include":"#deriving"},{"include":"#double_colon"},{"include":"#record_decl"},{"include":"#type_signature"}]},{"begin":"(\\\\b(?<!')[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}]*)|(\\\\()\\\\s*(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]*)\\\\s*(\\\\))","beginCaptures":{"1":{"name":"constant.other.haskell"},"2":{"name":"punctuation.paren.haskell"},"3":{"name":"constant.other.operator.haskell"},"4":{"name":"punctuation.paren.haskell"}},"end":"$","patterns":[{"include":"#comment_like"},{"include":"#deriving"},{"include":"#double_colon"},{"include":"#record_decl"},{"include":"#type_signature"}]}]},"infix_op":{"patterns":[{"captures":{"1":{"name":"keyword.operator.promotion.haskell"},"2":{"name":"entity.name.namespace.haskell"},"3":{"name":"keyword.operator.infix.haskell"}},"comment":"In case this regex seems overly general, note that Haskell permits the definition of new operators which can be nearly any string of punctuation characters, such as $%^&*.\\n","match":"((?:(?<!'')('')?[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'']*\\\\.)*)(\\\\#+|[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+(?<!\\\\#))"},{"captures":{"1":{"name":"punctuation.backtick.haskell"},"2":{"name":"entity.name.namespace.haskell"},"3":{"patterns":[{"include":"#data_constructor"}]},"4":{"name":"punctuation.backtick.haskell"}},"comment":"In case this regex seems unusual for an infix operator, note that Haskell\\nallows any ordinary function application (elem 4 [1..10]) to be rewritten\\nas an infix expression (4 \`elem\` [1..10]).\\n","match":"(\`)((?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'']*\\\\.)*)([\\\\p{Ll}\\\\p{Lu}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'']*)(\`)","name":"keyword.operator.function.infix.haskell"}]},"inline_phase":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.bracket.haskell"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.bracket.haskell"}},"name":"meta.inlining-phase.haskell","patterns":[{"match":"~","name":"punctuation.tilde.haskell"},{"include":"#integer_literals"},{"match":"\\\\w*","name":"invalid"}]},"integer_literals":{"captures":{"1":{"name":"constant.numeric.integral.decimal.haskell"},"2":{"name":"constant.numeric.integral.hexadecimal.haskell"},"3":{"name":"constant.numeric.integral.octal.haskell"},"4":{"name":"constant.numeric.integral.binary.haskell"}},"match":"\\\\b(?<!')(?:([0-9][_0-9]*)|(0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*)|(0[oO]_*[0-7][_0-7]*)|(0[bB]_*[01][_01]*))\\\\b(?!')"},"keyword":{"captures":{"1":{"name":"keyword.other.$1.haskell"},"2":{"name":"keyword.control.$2.haskell"}},"match":"\\\\b(?<!')(?:(where|let|in|default)|(m?do|if|then|else|case|of|proc|rec))\\\\b(?!')"},"layout_herald":{"begin":"(?<!')\\\\b(?:(where|let|m?do)|(of))\\\\s*(\\\\{)(?!-)","beginCaptures":{"1":{"name":"keyword.other.$1.haskell"},"2":{"name":"keyword.control.of.haskell"},"3":{"name":"punctuation.brace.haskell"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.brace.haskell"}},"patterns":[{"include":"$self"},{"match":";","name":"punctuation.semicolon.haskell"}]},"liquid_haskell":{"begin":"\\\\{-@","end":"@-\\\\}","name":"block.liquidhaskell.haskell","patterns":[{"include":"$self"}]},"module_exports":{"applyEndPatternLast":1,"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.paren.haskell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.paren.haskell"}},"name":"meta.declaration.exports.haskell","patterns":[{"include":"#comment_like"},{"captures":{"1":{"name":"keyword.other.module.haskell"}},"match":"\\\\b(?<!')(module)\\\\b(?!')"},{"include":"#comma"},{"include":"#export_constructs"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.paren.haskell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.paren.haskell"}},"patterns":[{"include":"#comment_like"},{"include":"#record_wildcard"},{"include":"#export_constructs"},{"include":"#comma"}]}]},"module_name":{"match":"(?<conid>[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(\\\\.\\\\g<conid>)?)","name":"entity.name.namespace.haskell"},"numeric_literals":{"patterns":[{"include":"#float_literals"},{"include":"#integer_literals"}]},"overloaded_label":{"patterns":[{"captures":{"1":{"name":"keyword.operator.prefix.hash.haskell"},"2":{"patterns":[{"include":"#string_literal"}]}},"match":"(?<![\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\p{S}\\\\p{P}&&[^(,;\\\\[\`{]])(\\\\#)(?:(\\"(?:\\\\\\\\\\"|[^\\"])*\\")|[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'\\\\.]+)","name":"entity.name.label.haskell"}]},"pragma":{"begin":"\\\\{-#","end":"#-\\\\}","name":"meta.preprocessor.haskell","patterns":[{"begin":"(?xi) \\\\b(?<!')(LANGUAGE)\\\\b(?!')","beginCaptures":{"1":{"name":"keyword.other.preprocessor.pragma.haskell"}},"end":"(?=#-\\\\})","patterns":[{"match":"(?:No)?(?:AutoDeriveTypeable|DatatypeContexts|DoRec|IncoherentInstances|MonadFailDesugaring|MonoPatBinds|NullaryTypeClasses|OverlappingInstances|PatternSignatures|RecordPuns|RelaxedPolyRec)","name":"invalid.deprecated"},{"captures":{"1":{"name":"keyword.other.preprocessor.extension.haskell"}},"match":"((?:No)?(?:AllowAmbiguousTypes|AlternativeLayoutRule|AlternativeLayoutRuleTransitional|Arrows|BangPatterns|BinaryLiterals|CApiFFI|CPP|CUSKs|ConstrainedClassMethods|ConstraintKinds|DataKinds|DefaultSignatures|DeriveAnyClass|DeriveDataTypeable|DeriveFoldable|DeriveFunctor|DeriveGeneric|DeriveLift|DeriveTraversable|DerivingStrategies|DerivingVia|DisambiguateRecordFields|DoAndIfThenElse|BlockArguments|DuplicateRecordFields|EmptyCase|EmptyDataDecls|EmptyDataDeriving|ExistentialQuantification|ExplicitForAll|ExplicitNamespaces|ExtendedDefaultRules|FlexibleContexts|FlexibleInstances|ForeignFunctionInterface|FunctionalDependencies|GADTSyntax|GADTs|GHCForeignImportPrim|Generali(?:s|z)edNewtypeDeriving|ImplicitParams|ImplicitPrelude|ImportQualifiedPost|ImpredicativeTypes|TypeFamilyDependencies|InstanceSigs|ApplicativeDo|InterruptibleFFI|JavaScriptFFI|KindSignatures|LambdaCase|LiberalTypeSynonyms|MagicHash|MonadComprehensions|MonoLocalBinds|MonomorphismRestriction|MultiParamTypeClasses|MultiWayIf|NumericUnderscores|NPlusKPatterns|NamedFieldPuns|NamedWildCards|NegativeLiterals|HexFloatLiterals|NondecreasingIndentation|NumDecimals|OverloadedLabels|OverloadedLists|OverloadedStrings|PackageImports|ParallelArrays|ParallelListComp|PartialTypeSignatures|PatternGuards|PatternSynonyms|PolyKinds|PolymorphicComponents|QuantifiedConstraints|PostfixOperators|QuasiQuotes|Rank2Types|RankNTypes|RebindableSyntax|RecordWildCards|RecursiveDo|RelaxedLayout|RoleAnnotations|ScopedTypeVariables|StandaloneDeriving|StarIsType|StaticPointers|Strict|StrictData|TemplateHaskell|TemplateHaskellQuotes|StandaloneKindSignatures|TraditionalRecordSyntax|TransformListComp|TupleSections|TypeApplications|TypeInType|TypeFamilies|TypeOperators|TypeSynonymInstances|UnboxedTuples|UnboxedSums|UndecidableInstances|UndecidableSuperClasses|UnicodeSyntax|UnliftedFFITypes|UnliftedNewtypes|ViewPatterns))"},{"include":"#comma"}]},{"begin":"(?xi)\\n \\\\b(?<!')(SPECIALI(?:S|Z)E)\\n (?:\\n \\\\s*( \\\\[ [^\\\\[\\\\]]* \\\\])?\\\\s*\\n |\\\\s+\\n )\\n (instance)\\\\b(?!')","beginCaptures":{"1":{"name":"keyword.other.preprocessor.pragma.haskell"},"2":{"patterns":[{"include":"#inline_phase"}]},"3":{"name":"keyword.other.instance.haskell"}},"end":"(?=#-\\\\})","patterns":[{"include":"#type_signature"}]},{"begin":"(?xi)\\n \\\\b(?<!')(SPECIALI(?:S|Z)E)\\\\b(?!')\\n (?:\\\\s+(INLINE)\\\\b(?!'))?\\n (?:\\\\s*(\\\\[ [^\\\\[\\\\]]* \\\\])?)\\n \\\\s*","beginCaptures":{"1":{"name":"keyword.other.preprocessor.pragma.haskell"},"2":{"name":"keyword.other.preprocessor.pragma.haskell"},"3":{"patterns":[{"include":"#inline_phase"}]}},"end":"(?=#-\\\\})","patterns":[{"include":"$self"}]},{"match":"(?xi) \\\\b(?<!')\\n (LANGUAGE|OPTIONS_GHC|INCLUDE\\n |MINIMAL|UNPACK|OVERLAPS|INCOHERENT\\n |NOUNPACK|SOURCE|OVERLAPPING|OVERLAPPABLE|INLINE\\n |NOINLINE|INLINE?ABLE|CONLIKE|LINE|COLUMN|RULES\\n |COMPLETE)\\\\b(?!')","name":"keyword.other.preprocessor.haskell"},{"begin":"(?i)\\\\b(DEPRECATED|WARNING)\\\\b","beginCaptures":{"1":{"name":"keyword.other.preprocessor.pragma.haskell"}},"end":"(?=#-\\\\})","patterns":[{"include":"#string_literal"}]}]},"prefix_op":{"patterns":[{"captures":{"1":{"name":"punctuation.paren.haskell"},"2":{"name":"entity.name.function.infix.haskell"},"3":{"name":"punctuation.paren.haskell"}},"comment":"An operator cannot be composed entirely of '-' characters; instead, it should be matched as a comment.\\n","match":"(\\\\()\\\\s*(?!(?:--+|\\\\.\\\\.)\\\\))(\\\\#+|[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+(?<!\\\\#))\\\\s*(\\\\))"}]},"qualifier":{"match":"\\\\b(?<!')[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\.","name":"entity.name.namespace.haskell"},"quasi_quote":{"patterns":[{"begin":"(\\\\[)(e|d|p)?(\\\\|\\\\|?)","beginCaptures":{"1":{"name":"keyword.operator.quasi-quotation.begin.haskell"},"2":{"name":"entity.name.quasi-quoter.haskell"},"3":{"name":"keyword.operator.quasi-quotation.begin.haskell"}},"end":"\\\\3\\\\]","endCaptures":{"0":{"name":"keyword.operator.quasi-quotation.end.haskell"}},"name":"meta.quasi-quotation.haskell","patterns":[{"include":"$self"}]},{"begin":"(\\\\[)(t)(\\\\|\\\\|?)","beginCaptures":{"1":{"name":"keyword.operator.quasi-quotation.begin.haskell"},"2":{"name":"entity.name.quasi-quoter.haskell"},"3":{"name":"keyword.operator.quasi-quotation.begin.haskell"}},"end":"\\\\3\\\\]","endCaptures":{"0":{"name":"keyword.operator.quasi-quotation.end.haskell"}},"name":"meta.quasi-quotation.haskell","patterns":[{"include":"#type_signature"}]},{"begin":"(\\\\[)(?:(\\\\$\\\\$)|(\\\\$))?((?:[^\\\\s\\\\p{S}\\\\p{P}]|[\\\\.'_])*)(\\\\|\\\\|?)","beginCaptures":{"1":{"name":"keyword.operator.quasi-quotation.begin.haskell"},"2":{"name":"keyword.operator.prefix.double-dollar.haskell"},"3":{"name":"keyword.operator.prefix.dollar.haskell"},"4":{"name":"entity.name.quasi-quoter.haskell","patterns":[{"include":"#qualifier"}]},"5":{"name":"keyword.operator.quasi-quotation.begin.haskell"}},"end":"\\\\5\\\\]","endCaptures":{"0":{"name":"keyword.operator.quasi-quotation.end.haskell"}},"name":"meta.quasi-quotation.haskell"}]},"record":{"begin":"({)(?!-)","beginCaptures":{"1":{"name":"punctuation.brace.haskell"}},"end":"(?<!-)(})","endCaptures":{"1":{"name":"punctuation.brace.haskell"}},"name":"meta.record.haskell","patterns":[{"include":"#comment_like"},{"include":"#record_field"}]},"record_decl":{"begin":"({)(?!-)","beginCaptures":{"1":{"name":"punctuation.brace.haskell"}},"end":"(?<!-)(})","endCaptures":{"1":{"name":"punctuation.brace.haskell"}},"name":"meta.record.definition.haskell","patterns":[{"include":"#comment_like"},{"include":"#record_decl_field"}]},"record_decl_field":{"begin":"(?:([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)|(\\\\()\\\\s*([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+)\\\\s*(\\\\)))","beginCaptures":{"1":{"name":"variable.other.member.definition.haskell"},"2":{"name":"punctuation.paren.haskell"},"3":{"name":"variable.other.member.definition.haskell"},"4":{"name":"punctuation.paren.haskell"}},"end":"(,)|(?=})","endCaptures":{"1":{"name":"punctuation.comma.haskell"}},"patterns":[{"include":"#comment_like"},{"include":"#comma"},{"include":"#double_colon"},{"include":"#type_signature"},{"include":"#record_decl_field"}]},"record_field":{"patterns":[{"begin":"(?:([\\\\p{Ll}\\\\p{Lu}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\.']*)|(\\\\()\\\\s*([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+)\\\\s*(\\\\)))","beginCaptures":{"1":{"name":"variable.other.member.haskell","patterns":[{"include":"#qualifier"}]},"2":{"name":"punctuation.paren.haskell"},"3":{"name":"variable.other.member.haskell"},"4":{"name":"punctuation.paren.haskell"}},"end":"(,)|(?=})","endCaptures":{"1":{"name":"punctuation.comma.haskell"}},"patterns":[{"include":"#comment_like"},{"include":"#comma"},{"include":"$self"}]},{"include":"#record_wildcard"}]},"record_wildcard":{"captures":{"1":{"name":"variable.other.member.wildcard.haskell"}},"match":"(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])(\\\\.\\\\.)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])"},"reserved_symbol":{"patterns":[{"captures":{"1":{"name":"keyword.operator.double-dot.haskell"},"2":{"name":"keyword.operator.colon.haskell"},"3":{"name":"keyword.operator.eq.haskell"},"4":{"name":"keyword.operator.lambda.haskell"},"5":{"name":"keyword.operator.pipe.haskell"},"6":{"name":"keyword.operator.arrow.left.haskell"},"7":{"name":"keyword.operator.arrow.haskell"},"8":{"name":"keyword.operator.arrow.left.tail.haskell"},"9":{"name":"keyword.operator.arrow.left.tail.double.haskell"},"10":{"name":"keyword.operator.arrow.tail.haskell"},"11":{"name":"keyword.operator.arrow.tail.double.haskell"},"12":{"name":"keyword.other.forall.haskell"}},"match":"(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"'']])(?:(\\\\.\\\\.)|(:)|(=)|(\\\\\\\\)|(\\\\|)|(<-|\u2190)|(->|\u2192)|(-<|\u21A2)|(-<<|\u291B)|(>-|\u291A)|(>>-|\u291C)|(\u2200))(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"'']])"},{"captures":{"1":{"name":"keyword.operator.postfix.hash.haskell"}},"match":"(?<=[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\p{S}\\\\p{P}&&[^\\\\#,;\\\\[\`{]])(\\\\#+)(?![\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\p{S}\\\\p{P}&&[^),;\\\\]\`}]])"},{"captures":{"1":{"name":"keyword.operator.infix.tight.at.haskell"}},"match":"(?<=[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\)\\\\}\\\\]])(@)(?=[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\(\\\\[\\\\{])"},{"captures":{"1":{"name":"keyword.operator.prefix.tilde.haskell"},"2":{"name":"keyword.operator.prefix.bang.haskell"},"3":{"name":"keyword.operator.prefix.minus.haskell"},"4":{"name":"keyword.operator.prefix.dollar.haskell"},"5":{"name":"keyword.operator.prefix.double-dollar.haskell"}},"match":"(?<![\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\p{S}\\\\p{P}&&[^(,;\\\\[\`{]])(?:(~)|(!)|(-)|(\\\\$)|(\\\\$\\\\$))(?=[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\(\\\\{\\\\[])"}]},"role_annotation":{"patterns":[{"begin":"^(\\\\s*)(type)\\\\s+(role)\\\\b(?!')","beginCaptures":{"2":{"name":"keyword.other.type.haskell"},"3":{"name":"keyword.other.role.haskell"}},"end":"(?=\\\\}|;)|^(?!\\\\1\\\\s+\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$))","name":"meta.role-annotation.haskell","patterns":[{"include":"#comment_like"},{"include":"#type_constructor"},{"captures":{"1":{"name":"keyword.other.role.$1.haskell"}},"match":"\\\\b(?<!')(nominal|representational|phantom)\\\\b(?!')"}]}]},"start_type_signature":{"patterns":[{"begin":"^(\\\\s*)(::|\u2237)(?![\\\\p{S}\\\\p{P}&&[^\\\\(,;\\\\[\`{_\\"']])\\\\s*","beginCaptures":{"2":{"name":"keyword.operator.double-colon.haskell"}},"end":"(?=\\\\#?\\\\)|\\\\]|,|(?<!')\\\\b(in|then|else|of)\\\\b(?!')|(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])(?:(\\\\\\\\|\u03BB)|(<-|\u2190)|(=)|(-<|\u21A2)|(-<<|\u291B))([(),;\\\\[\\\\]\`{}_\\"']|[^\\\\p{S}\\\\p{P}])|(\\\\#|@)-\\\\}|(?=\\\\}|;)|^(?!\\\\1\\\\s*\\\\S|\\\\s*(?:$|\\\\{-[^@]|--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}\`_\\"']]).*$)))","name":"meta.type-declaration.haskell","patterns":[{"include":"#type_signature"}]},{"begin":"(?<![\\\\p{S}\\\\p{P}&&[^\\\\(,;\\\\[\`{_\\"']])(::|\u2237)(?![\\\\p{S}\\\\p{P}&&[^\\\\(,;\\\\[\`{_\\"']])","beginCaptures":{"1":{"name":"keyword.operator.double-colon.haskell"}},"end":"(?=\\\\#?\\\\)|\\\\]|,|\\\\b(?<!')(in|then|else|of)\\\\b(?!')|(\\\\#|@)-\\\\}|(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])(?:(\\\\\\\\|\u03BB)|(<-|\u2190)|(=)|(-<|\u21A2)|(-<<|\u291B))([(),;\\\\[\\\\]\`{}_\\"']|[^\\\\p{S}\\\\p{P}])|(?=\\\\}|;)|$)","patterns":[{"include":"#type_signature"}]}]},"string_literal":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.haskell"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.haskell"}},"name":"string.quoted.double.haskell","patterns":[{"match":"\\\\\\\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\"'\\\\&])","name":"constant.character.escape.haskell"},{"match":"\\\\\\\\o[0-7]+|\\\\\\\\x[0-9A-Fa-f]+|\\\\\\\\[0-9]+","name":"constant.character.escape.octal.haskell"},{"match":"\\\\\\\\\\\\^[A-Z@\\\\[\\\\]\\\\\\\\\\\\^_]","name":"constant.character.escape.control.haskell"},{"begin":"\\\\\\\\\\\\s","beginCaptures":{"0":{"name":"constant.character.escape.begin.haskell"}},"end":"\\\\\\\\","endCaptures":{"0":{"name":"constant.character.escape.end.haskell"}},"patterns":[{"match":"\\\\S+","name":"invalid.illegal.character-not-allowed-here.haskell"}]}]},"type_application":{"patterns":[{"begin":"(?<=[\\\\s,;\\\\[\\\\]{}\\"])(@)(')?(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.prefix.at.haskell"},"2":{"name":"keyword.operator.promotion.haskell"},"3":{"name":"punctuation.paren.haskell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.paren.haskell"}},"name":"meta.type-application.haskell","patterns":[{"include":"#type_signature"}]},{"begin":"(?<=[\\\\s,;\\\\[\\\\]{}\\"])(@)(')?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.prefix.at.haskell"},"2":{"name":"keyword.operator.promotion.haskell"},"3":{"name":"punctuation.bracket.haskell"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.bracket.haskell"}},"name":"meta.type-application.haskell","patterns":[{"include":"#type_signature"}]},{"begin":"(?<=[\\\\s,;\\\\[\\\\]{}\\"])(@)(?=\\\\\\")","beginCaptures":{"1":{"name":"keyword.operator.prefix.at.haskell"}},"end":"(?<=\\\\\\")","name":"meta.type-application.haskell","patterns":[{"include":"#string_literal"}]},{"begin":"(?<=[\\\\s,;\\\\[\\\\]{}\\"])(@)(?=[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'])","beginCaptures":{"1":{"name":"keyword.operator.prefix.at.haskell"}},"end":"(?![\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'])","name":"meta.type-application.haskell","patterns":[{"include":"#type_signature"}]}]},"type_constructor":{"patterns":[{"captures":{"1":{"name":"keyword.operator.promotion.haskell"},"2":{"name":"entity.name.namespace.haskell"},"3":{"name":"storage.type.haskell"}},"match":"(')?((?:\\\\b[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\.)*)(\\\\b[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)"},{"captures":{"1":{"name":"keyword.operator.promotion.haskell"},"2":{"name":"punctuation.paren.haskell"},"3":{"name":"entity.name.namespace.haskell"},"4":{"name":"storage.type.operator.haskell"},"5":{"name":"punctuation.paren.haskell"}},"match":"(')?(\\\\()\\\\s*((?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\.)*)([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+)\\\\s*(\\\\))"}]},"type_operator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.promotion.haskell"},"2":{"name":"entity.name.namespace.haskell"},"3":{"name":"storage.type.operator.infix.haskell"}},"match":"(?:(?<!')('))?((?:\\\\b[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\.)*)(?![#@]?-})(\\\\#+|[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+(?<!\\\\#))"},{"captures":{"1":{"name":"keyword.operator.promotion.haskell"},"2":{"name":"punctuation.backtick.haskell"},"3":{"name":"entity.name.namespace.haskell"},"4":{"name":"storage.type.infix.haskell"},"5":{"name":"punctuation.backtick.haskell"}},"match":"(')?(\\\\\`)((?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\.)*)([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)(\`)"}]},"type_signature":{"patterns":[{"include":"#comment_like"},{"captures":{"1":{"name":"keyword.operator.promotion.haskell"},"2":{"name":"punctuation.paren.haskell"},"3":{"name":"punctuation.paren.haskell"}},"match":"(')?(\\\\()\\\\s*(\\\\))","name":"support.constant.unit.haskell"},{"captures":{"1":{"name":"punctuation.paren.haskell"},"2":{"name":"keyword.operator.hash.haskell"},"3":{"name":"keyword.operator.hash.haskell"},"4":{"name":"punctuation.paren.haskell"}},"match":"(\\\\()(#)\\\\s*(#)(\\\\))","name":"support.constant.unit.unboxed.haskell"},{"captures":{"1":{"name":"keyword.operator.promotion.haskell"},"2":{"name":"punctuation.paren.haskell"},"3":{"name":"punctuation.paren.haskell"}},"match":"(')?(\\\\()\\\\s*,[\\\\s,]*(\\\\))","name":"support.constant.tuple.haskell"},{"captures":{"1":{"name":"punctuation.paren.haskell"},"2":{"name":"keyword.operator.hash.haskell"},"3":{"name":"keyword.operator.hash.haskell"},"4":{"name":"punctuation.paren.haskell"}},"match":"(\\\\()(#)\\\\s*(#)(\\\\))","name":"support.constant.unit.unboxed.haskell"},{"captures":{"1":{"name":"punctuation.paren.haskell"},"2":{"name":"keyword.operator.hash.haskell"},"3":{"name":"keyword.operator.hash.haskell"},"4":{"name":"punctuation.paren.haskell"}},"match":"(\\\\()(#)\\\\s*,[\\\\s,]*(#)(\\\\))","name":"support.constant.tuple.unboxed.haskell"},{"captures":{"1":{"name":"keyword.operator.promotion.haskell"},"2":{"name":"punctuation.bracket.haskell"},"3":{"name":"punctuation.bracket.haskell"}},"match":"(')?(\\\\[)\\\\s*(\\\\])","name":"support.constant.empty-list.haskell"},{"include":"#integer_literals"},{"match":"(::|\u2237)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']])","name":"keyword.operator.double-colon.haskell"},{"include":"#forall"},{"match":"=>|\u21D2","name":"keyword.operator.big-arrow.haskell"},{"include":"#string_literal"},{"match":"'[^']'","name":"invalid"},{"include":"#type_application"},{"include":"#reserved_symbol"},{"include":"#type_operator"},{"include":"#type_constructor"},{"begin":"(\\\\()(#)","beginCaptures":{"1":{"name":"punctuation.paren.haskell"},"2":{"name":"keyword.operator.hash.haskell"}},"end":"(#)(\\\\))","endCaptures":{"1":{"name":"keyword.operator.hash.haskell"},"2":{"name":"punctuation.paren.haskell"}},"patterns":[{"include":"#comma"},{"include":"#type_signature"}]},{"begin":"(')?(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.promotion.haskell"},"2":{"name":"punctuation.paren.haskell"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.paren.haskell"}},"patterns":[{"include":"#comma"},{"include":"#type_signature"}]},{"begin":"(')?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.promotion.haskell"},"2":{"name":"punctuation.bracket.haskell"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.bracket.haskell"}},"patterns":[{"include":"#comma"},{"include":"#type_signature"}]},{"include":"#type_variable"}]},"type_variable":{"match":"\\\\b(?<!')(?!(?:forall|deriving)\\\\b(?!'))[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*","name":"variable.other.generic-type.haskell"},"where":{"patterns":[{"begin":"(?<!')\\\\b(where)\\\\s*(\\\\{)(?!-)","beginCaptures":{"1":{"name":"keyword.other.where.haskell"},"2":{"name":"punctuation.brace.haskell"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.brace.haskell"}},"patterns":[{"include":"$self"},{"match":";","name":"punctuation.semicolon.haskell"}]},{"match":"\\\\b(?<!')(where)\\\\b(?!')","name":"keyword.other.where.haskell"}]}},"scopeName":"source.haskell","aliases":["hs"]}`)),yae=[hae]});var c$={};x(c$,{default:()=>ZB});var wae,ZB,YB=_(()=>{wae=Object.freeze(JSON.parse(`{"displayName":"Haxe","fileTypes":["hx","dump"],"name":"haxe","patterns":[{"include":"#all"}],"repository":{"abstract":{"begin":"(?=abstract\\\\s+[A-Z])","end":"(?<=\\\\})|(;)","endCaptures":{"1":{"name":"punctuation.terminator.hx"}},"name":"meta.abstract.hx","patterns":[{"include":"#abstract-name"},{"include":"#abstract-name-post"},{"include":"#abstract-block"}]},"abstract-block":{"begin":"(?<=\\\\{)","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}},"name":"meta.block.hx","patterns":[{"include":"#method"},{"include":"#modifiers"},{"include":"#variable"},{"include":"#block"},{"include":"#block-contents"}]},"abstract-name":{"begin":"\\\\b(abstract)\\\\b","beginCaptures":{"1":{"name":"storage.type.class.hx"}},"end":"([_A-Za-z]\\\\w*)","endCaptures":{"1":{"name":"entity.name.type.class.hx"}},"patterns":[{"include":"#global"}]},"abstract-name-post":{"begin":"(?<=\\\\w)","end":"([\\\\{;])","endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}},"patterns":[{"include":"#global"},{"match":"\\\\b(from|to)\\\\b","name":"keyword.other.hx"},{"include":"#type"},{"match":"[\\\\(\\\\)]","name":"punctuation.definition.other.hx"}]},"accessor-method":{"patterns":[{"match":"\\\\b(get|set)_[_A-Za-z]\\\\w*\\\\b","name":"entity.name.function.hx"}]},"all":{"patterns":[{"include":"#global"},{"include":"#package"},{"include":"#import"},{"include":"#using"},{"match":"\\\\b(final)\\\\b(?=\\\\s+(class|interface|extern|private)\\\\b)","name":"storage.modifier.hx"},{"include":"#abstract"},{"include":"#class"},{"include":"#enum"},{"include":"#interface"},{"include":"#typedef"},{"include":"#block"},{"include":"#block-contents"}]},"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.hx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.array.end.hx"}},"name":"meta.array.literal.hx","patterns":[{"include":"#block"},{"include":"#block-contents"}]},"arrow-function":{"begin":"(\\\\()(?=[^(]*?\\\\)\\\\s*->)","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.hx"}},"end":"(\\\\))\\\\s*(->)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.hx"},"2":{"name":"storage.type.function.arrow.hx"}},"name":"meta.method.arrow.hx","patterns":[{"include":"#arrow-function-parameter"}]},"arrow-function-parameter":{"begin":"(?<=\\\\(|,)","end":"(?=\\\\)|,)","patterns":[{"include":"#parameter-name"},{"include":"#arrow-function-parameter-type-hint"},{"include":"#parameter-assign"},{"include":"#punctuation-comma"},{"include":"#global"}]},"arrow-function-parameter-type-hint":{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}},"end":"(?=\\\\)|,|=)","patterns":[{"include":"#type"}]},"block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.begin.hx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.end.hx"}},"patterns":[{"include":"#block"},{"include":"#block-contents"}]},"block-contents":{"patterns":[{"include":"#global"},{"include":"#regex"},{"include":"#array"},{"include":"#constants"},{"include":"#strings"},{"include":"#metadata"},{"include":"#method"},{"include":"#variable"},{"include":"#modifiers"},{"include":"#new-expr"},{"include":"#for-loop"},{"include":"#keywords"},{"include":"#arrow-function"},{"include":"#method-call"},{"include":"#enum-constructor-call"},{"include":"#punctuation-braces"},{"include":"#macro-reification"},{"include":"#operators"},{"include":"#operator-assignment"},{"include":"#punctuation-terminator"},{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"},{"include":"#identifiers"}]},"class":{"begin":"(?=class)","end":"(?<=\\\\})|(;)","endCaptures":{"1":{"name":"punctuation.terminator.hx"}},"name":"meta.class.hx","patterns":[{"include":"#class-name"},{"include":"#class-name-post"},{"include":"#class-block"}]},"class-block":{"begin":"(?<=\\\\{)","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}},"name":"meta.block.hx","patterns":[{"include":"#method"},{"include":"#modifiers"},{"include":"#variable"},{"include":"#block"},{"include":"#block-contents"}]},"class-name":{"begin":"\\\\b(class)\\\\b","beginCaptures":{"1":{"name":"storage.type.class.hx"}},"end":"([_A-Za-z]\\\\w*)","endCaptures":{"1":{"name":"entity.name.type.class.hx"}},"name":"meta.class.identifier.hx","patterns":[{"include":"#global"}]},"class-name-post":{"begin":"(?<=\\\\w)","end":"([\\\\{;])","endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}},"patterns":[{"include":"#modifiers-inheritance"},{"include":"#type"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.hx"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.hx"}},"name":"comment.block.documentation.hx","patterns":[{"include":"#javadoc-tags"}]},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.hx"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.hx"}},"name":"comment.block.hx","patterns":[{"include":"#javadoc-tags"}]},{"captures":{"1":{"name":"punctuation.definition.comment.hx"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.hx"}]},"conditional-compilation":{"patterns":[{"captures":{"0":{"name":"punctuation.definition.tag"}},"match":"((#(if|elseif))[\\\\s!]+([a-zA-Z_][a-zA-Z0-9_]*(\\\\.[a-zA-Z_][a-zA-Z0-9_]*)*)(?=\\\\s|/\\\\*|//))"},{"begin":"((#(if|elseif))[\\\\s!]*)(?=\\\\()","beginCaptures":{"0":{"name":"punctuation.definition.tag"}},"end":"(?<=\\\\)|\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"name":"punctuation.definition.tag","patterns":[{"include":"#conditional-compilation-parens"}]},{"match":"(#(end|else|error|line))","name":"punctuation.definition.tag"},{"match":"(#([a-zA-Z0-9_]*))\\\\s","name":"punctuation.definition.tag"}]},"conditional-compilation-parens":{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#conditional-compilation-parens"}]},"constant-name":{"match":"\\\\b([_A-Z][_A-Z0-9]*)\\\\b","name":"variable.other.hx"},"constants":{"patterns":[{"match":"\\\\b(true|false|null)\\\\b","name":"constant.language.hx"},{"captures":{"0":{"name":"constant.numeric.hex.hx"},"1":{"name":"constant.numeric.suffix.hx"}},"match":"\\\\b(?:0[xX][0-9a-fA-F][_0-9a-fA-F]*([iu][0-9][0-9_]*)?)\\\\b"},{"captures":{"0":{"name":"constant.numeric.bin.hx"},"1":{"name":"constant.numeric.suffix.hx"}},"match":"\\\\b(?:0[bB][01][_01]*([iu][0-9][0-9_]*)?)\\\\b"},{"captures":{"0":{"name":"constant.numeric.decimal.hx"},"1":{"name":"meta.delimiter.decimal.period.hx"},"2":{"name":"constant.numeric.suffix.hx"},"3":{"name":"meta.delimiter.decimal.period.hx"},"4":{"name":"constant.numeric.suffix.hx"},"5":{"name":"meta.delimiter.decimal.period.hx"},"6":{"name":"constant.numeric.suffix.hx"},"7":{"name":"constant.numeric.suffix.hx"},"8":{"name":"meta.delimiter.decimal.period.hx"},"9":{"name":"constant.numeric.suffix.hx"},"10":{"name":"meta.delimiter.decimal.period.hx"},"11":{"name":"constant.numeric.suffix.hx"},"12":{"name":"meta.delimiter.decimal.period.hx"},"13":{"name":"constant.numeric.suffix.hx"},"14":{"name":"constant.numeric.suffix.hx"}},"match":"(?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9_]+[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9_]+([fiu][0-9][0-9_]*)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(?!\\\\.)(?:\\\\B|([fiu][0-9][0-9_]*)\\\\b))|(?:\\\\B(\\\\.)[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\\\b)|(?:\\\\b[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\\\b))(?!\\\\$)"}]},"enum":{"begin":"(?=enum\\\\s+[A-Z])","end":"(?<=\\\\})|(;)","endCaptures":{"1":{"name":"punctuation.terminator.hx"}},"name":"meta.enum.hx","patterns":[{"include":"#enum-name"},{"include":"#enum-name-post"},{"include":"#enum-block"}]},"enum-block":{"begin":"(?<=\\\\{)","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}},"name":"meta.block.hx","patterns":[{"include":"#global"},{"include":"#metadata"},{"include":"#parameters"},{"include":"#identifiers"}]},"enum-constructor-call":{"begin":"\\\\b(?<!\\\\.)((_*[a-z]\\\\w*\\\\.)*)(_*[A-Z]\\\\w*)(?:(\\\\.)(_*[A-Z]\\\\w*[a-z]\\\\w*))*\\\\s*(\\\\()","beginCaptures":{"1":{"name":"support.package.hx"},"3":{"name":"entity.name.type.hx"},"4":{"name":"support.package.hx"},"5":{"name":"entity.name.type.hx"},"6":{"name":"meta.brace.round.hx"}},"end":"(\\\\))","endCaptures":{"1":{"name":"meta.brace.round.hx"}},"patterns":[{"include":"#block"},{"include":"#block-contents"}]},"enum-name":{"begin":"\\\\b(enum)\\\\b","beginCaptures":{"1":{"name":"storage.type.class.hx"}},"end":"([_A-Za-z]\\\\w*)","endCaptures":{"1":{"name":"entity.name.type.class.hx"}},"patterns":[{"include":"#global"}]},"enum-name-post":{"begin":"(?<=\\\\w)","end":"([\\\\{;])","endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}},"patterns":[{"include":"#type"}]},"for-loop":{"begin":"\\\\b(for)\\\\b\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.flow-control.hx"},"2":{"name":"meta.brace.round.hx"}},"end":"(\\\\))","endCaptures":{"1":{"name":"meta.brace.round.hx"}},"patterns":[{"match":"\\\\b(in)\\\\b","name":"keyword.other.in.hx"},{"include":"#block"},{"include":"#block-contents"}]},"function-type":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.hx"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.hx"}},"patterns":[{"include":"#function-type-parameter"}]},"function-type-parameter":{"begin":"(?<=\\\\(|,)","end":"(?=\\\\)|,)","patterns":[{"include":"#global"},{"include":"#metadata"},{"include":"#operator-optional"},{"include":"#punctuation-comma"},{"include":"#function-type-parameter-name"},{"include":"#function-type-parameter-type-hint"},{"include":"#parameter-assign"},{"include":"#type"},{"include":"#global"}]},"function-type-parameter-name":{"captures":{"1":{"name":"variable.parameter.hx"}},"match":"([_a-zA-Z]\\\\w*)(?=\\\\s*:)"},"function-type-parameter-type-hint":{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}},"end":"(?=\\\\)|,|=)","patterns":[{"include":"#type"}]},"global":{"patterns":[{"include":"#comments"},{"include":"#conditional-compilation"}]},"identifier-name":{"match":"\\\\b([_A-Za-z]\\\\w*)\\\\b","name":"variable.other.hx"},"identifiers":{"patterns":[{"include":"#constant-name"},{"include":"#type-name"},{"include":"#identifier-name"}]},"import":{"begin":"import\\\\b","beginCaptures":{"0":{"name":"keyword.control.import.hx"}},"end":"$|(;)","endCaptures":{"1":{"name":"punctuation.terminator.hx"}},"patterns":[{"include":"#type-path"},{"match":"\\\\b(as)\\\\b","name":"keyword.control.as.hx"},{"match":"\\\\b(in)\\\\b","name":"keyword.control.in.hx"},{"match":"\\\\*","name":"constant.language.import-all.hx"},{"match":"\\\\b([_A-Za-z]\\\\w*)\\\\b(?=\\\\s*(as|in|$|(;)))","name":"variable.other.hxt"},{"include":"#type-path-package-name"}]},"interface":{"begin":"(?=interface)","end":"(?<=\\\\})|(;)","endCaptures":{"1":{"name":"punctuation.terminator.hx"}},"name":"meta.interface.hx","patterns":[{"include":"#interface-name"},{"include":"#interface-name-post"},{"include":"#interface-block"}]},"interface-block":{"begin":"(?<=\\\\{)","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}},"name":"meta.block.hx","patterns":[{"include":"#method"},{"include":"#variable"},{"include":"#block"},{"include":"#block-contents"}]},"interface-name":{"begin":"\\\\b(interface)\\\\b","beginCaptures":{"1":{"name":"storage.type.class.hx"}},"end":"([_A-Za-z]\\\\w*)","endCaptures":{"1":{"name":"entity.name.type.class.hx"}},"patterns":[{"include":"#global"}]},"interface-name-post":{"begin":"(?<=\\\\w)","end":"([\\\\{;])","endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}},"patterns":[{"include":"#global"},{"include":"#modifiers-inheritance"},{"include":"#type"}]},"javadoc-tags":{"patterns":[{"captures":{"1":{"name":"storage.type.class.javadoc"},"2":{"name":"variable.other.javadoc"}},"match":"(@(?:param|exception|throws|event))\\\\s+([_A-Za-z]\\\\w*)\\\\s+"},{"captures":{"1":{"name":"storage.type.class.javadoc"},"2":{"name":"constant.numeric.javadoc"}},"match":"(@since)\\\\s+([\\\\w\\\\.-]+)\\\\s+"},{"captures":{"0":{"name":"storage.type.class.javadoc"}},"match":"@(param|exception|throws|deprecated|returns?|since|default|see|event)"}]},"keywords":{"patterns":[{"begin":"(?<=trace|$type|if|while|for|super)\\\\s*(\\\\()","beginCaptures":{"2":{"name":"meta.brace.round.hx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.hx"}},"patterns":[{"include":"#block-contents"}]},{"begin":"(?<=catch)\\\\s*(\\\\()","beginCaptures":{"2":{"name":"meta.brace.round.hx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.hx"}},"patterns":[{"include":"#block-contents"},{"include":"#type-check"}]},{"begin":"(?<=cast)\\\\s*(\\\\()","beginCaptures":{"2":{"name":"meta.brace.round.hx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.hx"}},"patterns":[{"begin":"(?=,)","end":"(?=\\\\))","patterns":[{"include":"#type"}]},{"include":"#block-contents"}]},{"match":"\\\\b(try|catch|throw)\\\\b","name":"keyword.control.catch-exception.hx"},{"begin":"\\\\b(case|default)\\\\b","beginCaptures":{"1":{"name":"keyword.control.flow-control.hx"}},"end":":|(?=if)|$","patterns":[{"include":"#global"},{"include":"#metadata"},{"captures":{"1":{"name":"storage.type.variable.hx"},"2":{"name":"variable.other.hx"}},"match":"\\\\b(var|final)\\\\b\\\\s*([_a-zA-Z]\\\\w*)\\\\b"},{"include":"#array"},{"include":"#constants"},{"include":"#strings"},{"match":"\\\\(","name":"meta.brace.round.hx"},{"match":"\\\\)","name":"meta.brace.round.hx"},{"include":"#macro-reification"},{"match":"=>","name":"keyword.operator.extractor.hx"},{"include":"#operator-assignment"},{"include":"#punctuation-comma"},{"include":"#keywords"},{"include":"#method-call"},{"include":"#identifiers"}]},{"match":"\\\\b(if|else|return|do|while|for|break|continue|switch|case|default)\\\\b","name":"keyword.control.flow-control.hx"},{"match":"\\\\b(cast|untyped)\\\\b","name":"keyword.other.untyped.hx"},{"match":"\\\\btrace\\\\b","name":"keyword.other.trace.hx"},{"match":"\\\\$type\\\\b","name":"keyword.other.type.hx"},{"match":"\\\\__(global|this)__\\\\b","name":"keyword.other.untyped-property.hx"},{"match":"\\\\b(this|super)\\\\b","name":"variable.language.hx"},{"match":"\\\\bnew\\\\b","name":"keyword.operator.new.hx"},{"match":"\\\\b(abstract|class|enum|interface|typedef)\\\\b","name":"storage.type.hx"},{"match":"->","name":"storage.type.function.arrow.hx"},{"include":"#modifiers"},{"include":"#modifiers-inheritance"}]},"keywords-accessor":{"match":"\\\\b(default|get|set|dynamic|never|null)\\\\b","name":"storage.type.property.hx"},"macro-reification":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.reification.hx"},"2":{"name":"keyword.reification.hx"}},"match":"(\\\\$)([eabipv])\\\\{"},{"captures":{"2":{"name":"punctuation.definition.reification.hx"},"3":{"name":"variable.reification.hx"}},"match":"((\\\\$)([a-zA-Z]*))"}]},"metadata":{"patterns":[{"begin":"(@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|cs.assemblyMeta|cs.assemblyStrict|cs.using|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|file|fileXml|final|fixed|flash.property|font|forward.new|forward.variance|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|genericClassPerMethod|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inheritDoc|inline|internal|isVar|java.native|javaCanonical|jsRequire|jvm.synthetic|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noClosure|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|nullSafety|objc|objcProtocol|op|optional|overload|persistent|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|transitive|unifyMinDynamic|unreflective|unsafe|using|void|volatile)\\\\b)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.metadata.hx"},"2":{"name":"storage.modifier.metadata.hx"},"3":{"name":"meta.brace.round.hx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.hx"}},"patterns":[{"include":"#block-contents"}]},{"captures":{"2":{"name":"punctuation.metadata.hx"},"3":{"name":"storage.modifier.metadata.hx"}},"match":"((@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|cs.assemblyMeta|cs.assemblyStrict|cs.using|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|file|fileXml|final|fixed|flash.property|font|forward.new|forward.variance|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|genericClassPerMethod|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inheritDoc|inline|internal|isVar|java.native|javaCanonical|jsRequire|jvm.synthetic|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noClosure|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|nullSafety|objc|objcProtocol|op|optional|overload|persistent|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|transitive|unifyMinDynamic|unreflective|unsafe|using|void|volatile)\\\\b))"},{"begin":"(@)(:?[a-zA-Z_]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.metadata.hx"},"2":{"name":"variable.metadata.hx"},"3":{"name":"meta.brace.round.hx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.hx"}},"patterns":[{"include":"#block-contents"}]},{"captures":{"1":{"name":"punctuation.metadata.hx"},"2":{"name":"variable.metadata.hx"},"3":{"name":"variable.metadata.hx"},"4":{"name":"punctuation.accessor.hx"},"5":{"name":"variable.metadata.hx"}},"match":"(@)(:?)([a-zA-Z_]*(\\\\.))*([a-zA-Z_]*)?"}]},"method":{"begin":"(?=\\\\bfunction\\\\b)","end":"(?<=[\\\\};])","name":"meta.method.hx","patterns":[{"include":"#macro-reification"},{"include":"#method-name"},{"include":"#method-name-post"},{"include":"#method-block"}]},"method-block":{"begin":"(?<=\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}},"name":"meta.method.block.hx","patterns":[{"include":"#block"},{"include":"#block-contents"}]},"method-call":{"begin":"\\\\b(?:(__(?:addressOf|as|call|checked|cpp|cs|define_feature|delete|feature|field|fixed|foreach|forin|has_next|hkeys|in|int|is|java|js|keys|lock|lua|lua_table|new|php|physeq|prefix|ptr|resources|rethrow|set|setfield|sizeof|type|typeof|unprotect|unsafe|valueOf|var|vector|vmem_get|vmem_set|vmem_sign|instanceof|strict_eq|strict_neq)__)|([_a-z]\\\\w*))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.untyped-function.hx"},"2":{"name":"entity.name.function.hx"},"3":{"name":"meta.brace.round.hx"}},"end":"(\\\\))","endCaptures":{"1":{"name":"meta.brace.round.hx"}},"patterns":[{"include":"#block"},{"include":"#block-contents"}]},"method-name":{"begin":"\\\\b(function)\\\\b\\\\s*\\\\b(?:(new)|([_A-Za-z]\\\\w*))?\\\\b","beginCaptures":{"1":{"name":"storage.type.function.hx"},"2":{"name":"storage.type.hx"},"3":{"name":"entity.name.function.hx"}},"end":"(?=$|\\\\()","patterns":[{"include":"#macro-reification"},{"include":"#type-parameters"}]},"method-name-post":{"begin":"(?<=[\\\\w\\\\s>])","end":"(\\\\{)|(;)","endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"},"2":{"name":"punctuation.terminator.hx"}},"patterns":[{"include":"#parameters"},{"include":"#method-return-type-hint"},{"include":"#block"},{"include":"#block-contents"}]},"method-return-type-hint":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.hx"}},"end":"(?=\\\\{|;|[a-z0-9])","patterns":[{"include":"#type"}]},"modifiers":{"patterns":[{"match":"\\\\b(enum)\\\\b","name":"storage.type.class"},{"match":"\\\\b(public|private|static|dynamic|inline|macro|extern|override|overload|abstract)\\\\b","name":"storage.modifier.hx"},{"match":"\\\\b(final)\\\\b(?=\\\\s+(public|private|static|dynamic|inline|macro|extern|override|overload|abstract|function))","name":"storage.modifier.hx"}]},"modifiers-inheritance":{"match":"\\\\b(implements|extends)\\\\b","name":"storage.modifier.hx"},"new-expr":{"begin":"(?<!\\\\.)\\\\b(new)\\\\b","beginCaptures":{"1":{"name":"keyword.operator.new.hx"}},"end":"(?=$|\\\\()","name":"new.expr.hx","patterns":[{"include":"#type"}]},"operator-assignment":{"match":"(=)","name":"keyword.operator.assignment.hx"},"operator-optional":{"match":"(\\\\?)(?!\\\\s)","name":"keyword.operator.optional.hx"},"operator-type-hint":{"match":"(:)","name":"keyword.operator.type.annotation.hx"},"operators":{"patterns":[{"match":"(&&|\\\\|\\\\|)","name":"keyword.operator.logical.hx"},{"match":"(~|&|\\\\||\\\\^|>>>|<<|>>)","name":"keyword.operator.bitwise.hx"},{"match":"(==|!=|<=|>=|<|>)","name":"keyword.operator.comparison.hx"},{"match":"(!)","name":"keyword.operator.logical.hx"},{"match":"(\\\\-\\\\-|\\\\+\\\\+)","name":"keyword.operator.increment-decrement.hx"},{"match":"(\\\\-|\\\\+|\\\\*|\\\\/|%)","name":"keyword.operator.arithmetic.hx"},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.intiterator.hx"},{"match":"=>","name":"keyword.operator.arrow.hx"},{"match":"\\\\?\\\\?","name":"keyword.operator.nullcoalescing.hx"},{"match":"\\\\?\\\\.","name":"keyword.operator.safenavigation.hx"},{"match":"\\\\bis\\\\b(?!\\\\()","name":"keyword.other.hx"},{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.hx"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.hx"}},"patterns":[{"include":"#block-contents"}]}]},"package":{"begin":"package\\\\b","beginCaptures":{"0":{"name":"keyword.other.package.hx"}},"end":"$|(;)","endCaptures":{"1":{"name":"punctuation.terminator.hx"}},"patterns":[{"include":"#type-path"},{"include":"#type-path-package-name"}]},"parameter":{"begin":"(?<=\\\\(|,)","end":"(?=\\\\)(?!\\\\s*->)|,)","patterns":[{"include":"#parameter-name"},{"include":"#parameter-type-hint"},{"include":"#parameter-assign"},{"include":"#punctuation-comma"},{"include":"#global"}]},"parameter-assign":{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.hx"}},"end":"(?=\\\\)|,)","patterns":[{"include":"#block"},{"include":"#block-contents"}]},"parameter-name":{"begin":"(?<=\\\\(|,)","end":"([_a-zA-Z]\\\\w*)","endCaptures":{"1":{"name":"variable.parameter.hx"}},"patterns":[{"include":"#global"},{"include":"#metadata"},{"include":"#operator-optional"}]},"parameter-type-hint":{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}},"end":"(?=\\\\)(?!\\\\s*->)|,|=)","patterns":[{"include":"#type"}]},"parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.hx"}},"end":"\\\\s*(\\\\)(?!\\\\s*->))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.hx"}},"name":"meta.parameters.hx","patterns":[{"include":"#parameter"}]},"punctuation-accessor":{"match":"\\\\.","name":"punctuation.accessor.hx"},"punctuation-braces":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.hx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.hx"}},"patterns":[{"include":"#keywords"},{"include":"#block"},{"include":"#block-contents"},{"include":"#type-check"}]},"punctuation-comma":{"match":",","name":"punctuation.separator.comma.hx"},"punctuation-terminator":{"match":";","name":"punctuation.terminator.hx"},"regex":{"begin":"(~/)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.hx"}},"end":"(/)([gimsu]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.hx"},"2":{"name":"keyword.other.hx"}},"name":"string.regexp.hx","patterns":[{"include":"#regexp"}]},"regex-character-class":{"patterns":[{"match":"\\\\\\\\[wWsSdDtrnvf]|\\\\.","name":"constant.other.character-class.regexp"},{"match":"\\\\\\\\([0-7]{3}|x\\\\h\\\\h|u\\\\h\\\\h\\\\h\\\\h)","name":"constant.character.numeric.regexp"},{"match":"\\\\\\\\c[A-Z]","name":"constant.character.control.regexp"},{"match":"\\\\\\\\.","name":"constant.character.escape.backslash.regexp"}]},"regexp":{"patterns":[{"match":"\\\\\\\\[bB]|\\\\^|\\\\$","name":"keyword.control.anchor.regexp"},{"match":"\\\\\\\\[1-9]\\\\d*","name":"keyword.other.back-reference.regexp"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!))","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.assertion.regexp","patterns":[{"include":"#regexp"}]},{"begin":"\\\\((\\\\?:)?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.capture.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x\\\\h\\\\h|u\\\\h\\\\h\\\\h\\\\h))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))\\\\-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x\\\\h\\\\h|u\\\\h\\\\h\\\\h\\\\h))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"string-escape-sequences":{"patterns":[{"match":"\\\\\\\\[0-3][0-9]{2}","name":"constant.character.escape.hx"},{"match":"\\\\\\\\x[0-9A-Fa-f]{2}","name":"constant.character.escape.hx"},{"match":"\\\\\\\\u[0-9]{4}","name":"constant.character.escape.hx"},{"match":"\\\\\\\\u\\\\{[0-9A-Fa-f]{1,}\\\\}","name":"constant.character.escape.hx"},{"match":"\\\\\\\\[nrt\\"'\\\\\\\\]","name":"constant.character.escape.hx"},{"match":"\\\\\\\\.","name":"invalid.escape.sequence.hx"}]},"strings":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hx"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.hx"}},"name":"string.quoted.double.hx","patterns":[{"include":"#string-escape-sequences"}]},{"begin":"(')","beginCaptures":{"0":{"name":"string.quoted.single.hx"},"1":{"name":"punctuation.definition.string.begin.hx"}},"end":"(')","endCaptures":{"0":{"name":"string.quoted.single.hx"},"1":{"name":"punctuation.definition.string.end.hx"}},"patterns":[{"begin":"\\\\$(?=\\\\$)","beginCaptures":{"0":{"name":"constant.character.escape.hx"}},"end":"\\\\$","endCaptures":{"0":{"name":"constant.character.escape.hx"}},"name":"string.quoted.single.hx"},{"include":"#string-escape-sequences"},{"begin":"(\\\\\${)","beginCaptures":{"0":{"name":"punctuation.definition.block.begin.hx"}},"end":"(})","endCaptures":{"0":{"name":"punctuation.definition.block.end.hx"}},"patterns":[{"include":"#block-contents"}]},{"captures":{"1":{"name":"punctuation.definition.block.begin.hx"},"2":{"name":"variable.other.hx"}},"match":"(\\\\$)([_a-zA-Z]\\\\w*)"},{"match":"","name":"constant.character.escape.hx"},{"match":".","name":"string.quoted.single.hx"}]}]},"type":{"patterns":[{"include":"#global"},{"include":"#macro-reification"},{"include":"#type-name"},{"include":"#type-parameters"},{"match":"->","name":"keyword.operator.type.function.hx"},{"match":"&","name":"keyword.operator.type.intersection.hx"},{"match":"\\\\?(?=\\\\s*[_A-Z])","name":"keyword.operator.optional"},{"match":"\\\\?(?!\\\\s*[_A-Z])","name":"punctuation.definition.tag"},{"begin":"(\\\\{)","beginCaptures":{"0":{"name":"punctuation.definition.block.begin.hx"}},"end":"(?<=\\\\})","patterns":[{"include":"#typedef-block"}]},{"include":"#function-type"}]},"type-check":{"begin":"(?<!macro)(?=:)","end":"(?=\\\\))","patterns":[{"include":"#operator-type-hint"},{"include":"#type"}]},"type-name":{"patterns":[{"captures":{"1":{"name":"support.class.builtin.hx"},"2":{"name":"support.package.hx"},"3":{"name":"entity.name.type.hx"}},"match":"\\\\b(Any|Array|ArrayAccess|Bool|Class|Date|DateTools|Dynamic|Enum|EnumValue|EReg|Float|IMap|Int|IntIterator|Iterable|Iterator|KeyValueIterator|KeyValueIterable|Lambda|List|ListIterator|ListNode|Map|Math|Null|Reflect|Single|Std|String|StringBuf|StringTools|Sys|Type|UInt|UnicodeString|ValueType|Void|Xml|XmlType)(?:(\\\\.)(_*[A-Z]\\\\w*[a-z]\\\\w*))*\\\\b"},{"captures":{"1":{"name":"support.package.hx"},"3":{"name":"entity.name.type.hx"},"4":{"name":"support.package.hx"},"5":{"name":"entity.name.type.hx"}},"match":"\\\\b(?<![^.]\\\\.)((_*[a-z]\\\\w*\\\\.)*)(_*[A-Z]\\\\w*)(?:(\\\\.)(_*[A-Z]\\\\w*[a-z]\\\\w*))*\\\\b"}]},"type-parameter-constraint-new":{"match":":","name":"keyword.operator.type.annotation.hxt"},"type-parameter-constraint-old":{"begin":"(:)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.hx"},"2":{"name":"punctuation.definition.constraint.begin.hx"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.constraint.end.hx"}},"patterns":[{"include":"#type"},{"include":"#punctuation-comma"}]},"type-parameters":{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.hx"}},"end":"(?=$)|(>)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.hx"}},"name":"meta.type-parameters.hx","patterns":[{"include":"#type"},{"include":"#type-parameter-constraint-old"},{"include":"#type-parameter-constraint-new"},{"include":"#global"},{"include":"#regex"},{"include":"#array"},{"include":"#constants"},{"include":"#strings"},{"include":"#metadata"},{"include":"#punctuation-comma"}]},"type-path":{"patterns":[{"include":"#global"},{"include":"#punctuation-accessor"},{"include":"#type-path-type-name"}]},"type-path-package-name":{"match":"\\\\b([_A-Za-z]\\\\w*)\\\\b","name":"support.package.hx"},"type-path-type-name":{"match":"\\\\b(_*[A-Z]\\\\w*)\\\\b","name":"entity.name.type.hx"},"typedef":{"begin":"(?=typedef)","end":"(?<=\\\\})|(;)","endCaptures":{"1":{"name":"punctuation.terminator.hx"}},"name":"meta.typedef.hx","patterns":[{"include":"#typedef-name"},{"include":"#typedef-name-post"},{"include":"#typedef-block"}]},"typedef-block":{"begin":"(?<=\\\\{)","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.end.hx"}},"name":"meta.block.hx","patterns":[{"include":"#global"},{"include":"#metadata"},{"include":"#method"},{"include":"#variable"},{"include":"#modifiers"},{"include":"#punctuation-comma"},{"include":"#operator-optional"},{"include":"#typedef-extension"},{"include":"#typedef-simple-field-type-hint"},{"include":"#identifier-name"},{"include":"#strings"}]},"typedef-extension":{"begin":">","end":",|$","patterns":[{"include":"#type"}]},"typedef-name":{"begin":"\\\\b(typedef)\\\\b","beginCaptures":{"1":{"name":"storage.type.class.hx"}},"end":"([_A-Za-z]\\\\w*)","endCaptures":{"1":{"name":"entity.name.type.class.hx"}},"patterns":[{"include":"#global"}]},"typedef-name-post":{"begin":"(?<=\\\\w)","end":"(\\\\{)|(?=;)","endCaptures":{"1":{"name":"punctuation.definition.block.begin.hx"}},"patterns":[{"include":"#global"},{"include":"#punctuation-brackets"},{"include":"#punctuation-separator"},{"include":"#operator-assignment"},{"include":"#type"}]},"typedef-simple-field-type-hint":{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}},"end":"(?=\\\\}|,|;)","patterns":[{"include":"#type"}]},"using":{"begin":"using\\\\b","beginCaptures":{"0":{"name":"keyword.other.using.hx"}},"end":"$|(;)","endCaptures":{"1":{"name":"punctuation.terminator.hx"}},"patterns":[{"include":"#type-path"},{"include":"#type-path-package-name"}]},"variable":{"begin":"(?=\\\\b(var|final)\\\\b)","end":"(?=$)|(;)","endCaptures":{"1":{"name":"punctuation.terminator.hx"}},"patterns":[{"include":"#variable-name"},{"include":"#variable-name-next"},{"include":"#variable-assign"},{"include":"#variable-name-post"}]},"variable-accessors":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.hx"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.hx"}},"name":"meta.parameters.hx","patterns":[{"include":"#global"},{"include":"#keywords-accessor"},{"include":"#accessor-method"},{"include":"#punctuation-comma"}]},"variable-assign":{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.hx"}},"end":"(?=;|,)","patterns":[{"include":"#block"},{"include":"#block-contents"}]},"variable-name":{"begin":"\\\\b(var|final)\\\\b","beginCaptures":{"1":{"name":"storage.type.variable.hx"}},"end":"(?=$)|([_a-zA-Z]\\\\w*)","endCaptures":{"1":{"name":"variable.other.hx"}},"patterns":[{"include":"#operator-optional"}]},"variable-name-next":{"begin":",","beginCaptures":{"0":{"name":"punctuation.separator.comma.hx"}},"end":"([_a-zA-Z]\\\\w*)","endCaptures":{"1":{"name":"variable.other.hx"}},"patterns":[{"include":"#global"}]},"variable-name-post":{"begin":"(?<=\\\\w)","end":"(?=;)|(?==)","patterns":[{"include":"#variable-accessors"},{"include":"#variable-type-hint"},{"include":"#block-contents"}]},"variable-type-hint":{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.type.annotation.hx"}},"end":"(?=$|;|,|=)","patterns":[{"include":"#type"}]}},"scopeName":"source.hx"}`)),ZB=[wae]});var l$={};x(l$,{default:()=>Cae});var kae,Cae,A$=_(()=>{kae=Object.freeze(JSON.parse('{"displayName":"HashiCorp HCL","fileTypes":["hcl"],"name":"hcl","patterns":[{"include":"#comments"},{"include":"#attribute_definition"},{"include":"#block"},{"include":"#expressions"}],"repository":{"attribute_access":{"begin":"\\\\.(?!\\\\*)","beginCaptures":{"0":{"name":"keyword.operator.accessor.hcl"}},"comment":"Matches traversal attribute access such as .attr","end":"[[:alpha:]][\\\\w-]*|\\\\d*","endCaptures":{"0":{"patterns":[{"comment":"Attribute name","match":"(?!null|false|true)[[:alpha:]][\\\\w-]*","name":"variable.other.member.hcl"},{"comment":"Optional attribute index","match":"\\\\d+","name":"constant.numeric.integer.hcl"}]}}},"attribute_definition":{"captures":{"1":{"name":"punctuation.section.parens.begin.hcl"},"2":{"name":"variable.other.readwrite.hcl"},"3":{"name":"punctuation.section.parens.end.hcl"},"4":{"name":"keyword.operator.assignment.hcl"}},"comment":"Identifier \\"=\\" with optional parens","match":"(\\\\()?(\\\\b(?!null\\\\b|false\\\\b|true\\\\b)[[:alpha:]][[:alnum:]_-]*)(\\\\))?\\\\s*(\\\\=(?!\\\\=|\\\\>))\\\\s*","name":"variable.declaration.hcl"},"attribute_splat":{"begin":"\\\\.","beginCaptures":{"0":{"name":"keyword.operator.accessor.hcl"}},"comment":"Legacy attribute-only splat","end":"\\\\*","endCaptures":{"0":{"name":"keyword.operator.splat.hcl"}}},"block":{"begin":"([\\\\w][\\\\-\\\\w]*)(([^\\\\S\\\\r\\\\n]+([\\\\w][\\\\-_\\\\w]*|\\\\\\"[^\\\\\\"\\\\r\\\\n]*\\\\\\"))*)[^\\\\S\\\\r\\\\n]*(\\\\{)","beginCaptures":{"1":{"patterns":[{"comment":"Block type","match":"\\\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\\\b","name":"entity.name.type.hcl"}]},"2":{"patterns":[{"comment":"Block label (String Literal)","match":"\\\\\\"[^\\\\\\"\\\\r\\\\n]*\\\\\\"","name":"variable.other.enummember.hcl"},{"comment":"Block label (Identifier)","match":"[[:alpha:]][[:alnum:]_-]*","name":"variable.other.enummember.hcl"}]},"5":{"name":"punctuation.section.block.begin.hcl"}},"comment":"This will match HCL blocks like `thing1 \\"one\\" \\"two\\" {` or `thing2 {`","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.block.end.hcl"}},"name":"meta.block.hcl","patterns":[{"include":"#comments"},{"include":"#attribute_definition"},{"include":"#expressions"},{"include":"#block"}]},"block_inline_comments":{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.hcl"}},"comment":"Inline comments start with the /* sequence and end with the */ sequence, and may have any characters within except the ending sequence. An inline comment is considered equivalent to a whitespace sequence","end":"\\\\*/","name":"comment.block.hcl"},"brackets":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.hcl"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.brackets.end.hcl"}},"patterns":[{"comment":"Splat operator","match":"\\\\*","name":"keyword.operator.splat.hcl"},{"include":"#comma"},{"include":"#comments"},{"include":"#inline_for_expression"},{"include":"#inline_if_expression"},{"include":"#expressions"},{"include":"#local_identifiers"}]},"char_escapes":{"comment":"Character Escapes","match":"\\\\\\\\[nrt\\"\\\\\\\\]|\\\\\\\\u(\\\\h{8}|\\\\h{4})","name":"constant.character.escape.hcl"},"comma":{"comment":"Commas - used in certain expressions","match":"\\\\,","name":"punctuation.separator.hcl"},"comments":{"patterns":[{"include":"#hash_line_comments"},{"include":"#double_slash_line_comments"},{"include":"#block_inline_comments"}]},"double_slash_line_comments":{"begin":"//","captures":{"0":{"name":"punctuation.definition.comment.hcl"}},"comment":"Line comments start with // sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence","end":"$\\\\n?","name":"comment.line.double-slash.hcl"},"expressions":{"patterns":[{"include":"#literal_values"},{"include":"#operators"},{"include":"#tuple_for_expression"},{"include":"#object_for_expression"},{"include":"#brackets"},{"include":"#objects"},{"include":"#attribute_access"},{"include":"#attribute_splat"},{"include":"#functions"},{"include":"#parens"}]},"for_expression_body":{"patterns":[{"comment":"in keyword","match":"\\\\bin\\\\b","name":"keyword.operator.word.hcl"},{"comment":"if keyword","match":"\\\\bif\\\\b","name":"keyword.control.conditional.hcl"},{"match":"\\\\:","name":"keyword.operator.hcl"},{"include":"#expressions"},{"include":"#comments"},{"include":"#comma"},{"include":"#local_identifiers"}]},"functions":{"begin":"([:\\\\-\\\\w]+)(\\\\()","beginCaptures":{"1":{"patterns":[{"match":"\\\\b[[:alpha:]][\\\\w_-]*::([[:alpha:]][\\\\w_-]*::)?[[:alpha:]][\\\\w_-]*\\\\b","name":"support.function.namespaced.hcl"},{"match":"\\\\b[[:alpha:]][\\\\w_-]*\\\\b","name":"support.function.builtin.hcl"}]},"2":{"name":"punctuation.section.parens.begin.hcl"}},"comment":"Built-in function calls","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.hcl"}},"name":"meta.function-call.hcl","patterns":[{"include":"#comments"},{"include":"#expressions"},{"include":"#comma"}]},"hash_line_comments":{"begin":"#","captures":{"0":{"name":"punctuation.definition.comment.hcl"}},"comment":"Line comments start with # sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence","end":"$\\\\n?","name":"comment.line.number-sign.hcl"},"hcl_type_keywords":{"comment":"Type keywords known to HCL.","match":"\\\\b(any|string|number|bool|list|set|map|tuple|object)\\\\b","name":"storage.type.hcl"},"heredoc":{"begin":"(\\\\<\\\\<\\\\-?)\\\\s*(\\\\w+)\\\\s*$","beginCaptures":{"1":{"name":"keyword.operator.heredoc.hcl"},"2":{"name":"keyword.control.heredoc.hcl"}},"comment":"String Heredoc","end":"^\\\\s*\\\\2\\\\s*$","endCaptures":{"0":{"name":"keyword.control.heredoc.hcl"}},"name":"string.unquoted.heredoc.hcl","patterns":[{"include":"#string_interpolation"}]},"inline_for_expression":{"captures":{"1":{"name":"keyword.control.hcl"},"2":{"patterns":[{"match":"\\\\=\\\\>","name":"storage.type.function.hcl"},{"include":"#for_expression_body"}]}},"match":"(for)\\\\b(.*)\\\\n"},"inline_if_expression":{"begin":"(if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.conditional.hcl"}},"end":"\\\\n","patterns":[{"include":"#expressions"},{"include":"#comments"},{"include":"#comma"},{"include":"#local_identifiers"}]},"language_constants":{"comment":"Language Constants","match":"\\\\b(true|false|null)\\\\b","name":"constant.language.hcl"},"literal_values":{"patterns":[{"include":"#numeric_literals"},{"include":"#language_constants"},{"include":"#string_literals"},{"include":"#heredoc"},{"include":"#hcl_type_keywords"}]},"local_identifiers":{"comment":"Local Identifiers","match":"\\\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\\\b","name":"variable.other.readwrite.hcl"},"numeric_literals":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.exponent.hcl"}},"comment":"Integer, no fraction, optional exponent","match":"\\\\b\\\\d+([Ee][+-]?)\\\\d+\\\\b","name":"constant.numeric.float.hcl"},{"captures":{"1":{"name":"punctuation.separator.decimal.hcl"},"2":{"name":"punctuation.separator.exponent.hcl"}},"comment":"Integer, fraction, optional exponent","match":"\\\\b\\\\d+(\\\\.)\\\\d+(?:([Ee][+-]?)\\\\d+)?\\\\b","name":"constant.numeric.float.hcl"},{"comment":"Integers","match":"\\\\b\\\\d+\\\\b","name":"constant.numeric.integer.hcl"}]},"object_for_expression":{"begin":"(\\\\{)\\\\s?(for)\\\\b","beginCaptures":{"1":{"name":"punctuation.section.braces.begin.hcl"},"2":{"name":"keyword.control.hcl"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.braces.end.hcl"}},"patterns":[{"match":"\\\\=\\\\>","name":"storage.type.function.hcl"},{"include":"#for_expression_body"}]},"object_key_values":{"patterns":[{"include":"#comments"},{"include":"#literal_values"},{"include":"#operators"},{"include":"#tuple_for_expression"},{"include":"#object_for_expression"},{"include":"#heredoc"},{"include":"#functions"}]},"objects":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.braces.begin.hcl"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.braces.end.hcl"}},"name":"meta.braces.hcl","patterns":[{"include":"#comments"},{"include":"#objects"},{"include":"#inline_for_expression"},{"include":"#inline_if_expression"},{"captures":{"1":{"name":"meta.mapping.key.hcl variable.other.readwrite.hcl"},"2":{"name":"keyword.operator.assignment.hcl"}},"comment":"Literal, named object key","match":"\\\\b((?!null|false|true)[[:alpha:]][[:alnum:]_-]*)\\\\s*(\\\\=(?!=))\\\\s*"},{"captures":{"1":{"name":"meta.mapping.key.hcl string.quoted.double.hcl"},"2":{"name":"punctuation.definition.string.begin.hcl"},"3":{"name":"punctuation.definition.string.end.hcl"},"4":{"name":"keyword.operator.hcl"}},"comment":"String object key","match":"^\\\\s*((\\").*(\\"))\\\\s*(\\\\=)\\\\s*"},{"begin":"^\\\\s*\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.hcl"}},"comment":"Computed object key (any expression between parens)","end":"(\\\\))\\\\s*(=|:)\\\\s*","endCaptures":{"1":{"name":"punctuation.section.parens.end.hcl"},"2":{"name":"keyword.operator.hcl"}},"name":"meta.mapping.key.hcl","patterns":[{"include":"#attribute_access"},{"include":"#attribute_splat"}]},{"include":"#object_key_values"}]},"operators":{"patterns":[{"match":"\\\\>\\\\=","name":"keyword.operator.hcl"},{"match":"\\\\<\\\\=","name":"keyword.operator.hcl"},{"match":"\\\\=\\\\=","name":"keyword.operator.hcl"},{"match":"\\\\!\\\\=","name":"keyword.operator.hcl"},{"match":"\\\\+","name":"keyword.operator.arithmetic.hcl"},{"match":"\\\\-","name":"keyword.operator.arithmetic.hcl"},{"match":"\\\\*","name":"keyword.operator.arithmetic.hcl"},{"match":"\\\\/","name":"keyword.operator.arithmetic.hcl"},{"match":"\\\\%","name":"keyword.operator.arithmetic.hcl"},{"match":"\\\\&\\\\&","name":"keyword.operator.logical.hcl"},{"match":"\\\\|\\\\|","name":"keyword.operator.logical.hcl"},{"match":"\\\\!","name":"keyword.operator.logical.hcl"},{"match":"\\\\>","name":"keyword.operator.hcl"},{"match":"\\\\<","name":"keyword.operator.hcl"},{"match":"\\\\?","name":"keyword.operator.hcl"},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.hcl"},{"match":"\\\\:","name":"keyword.operator.hcl"},{"match":"\\\\=\\\\>","name":"keyword.operator.hcl"}]},"parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.hcl"}},"comment":"Parens - matched *after* function syntax","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.hcl"}},"patterns":[{"include":"#comments"},{"include":"#expressions"}]},"string_interpolation":{"begin":"(?<![%$])([%$]{)","beginCaptures":{"1":{"name":"keyword.other.interpolation.begin.hcl"}},"comment":"String interpolation","end":"\\\\}","endCaptures":{"0":{"name":"keyword.other.interpolation.end.hcl"}},"name":"meta.interpolation.hcl","patterns":[{"comment":"Trim left whitespace","match":"\\\\~\\\\s","name":"keyword.operator.template.left.trim.hcl"},{"comment":"Trim right whitespace","match":"\\\\s\\\\~","name":"keyword.operator.template.right.trim.hcl"},{"comment":"if/else/endif and for/in/endfor directives","match":"\\\\b(if|else|endif|for|in|endfor)\\\\b","name":"keyword.control.hcl"},{"include":"#expressions"},{"include":"#local_identifiers"}]},"string_literals":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hcl"}},"comment":"Strings","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.hcl"}},"name":"string.quoted.double.hcl","patterns":[{"include":"#string_interpolation"},{"include":"#char_escapes"}]},"tuple_for_expression":{"begin":"(\\\\[)\\\\s?(for)\\\\b","beginCaptures":{"1":{"name":"punctuation.section.brackets.begin.hcl"},"2":{"name":"keyword.control.hcl"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.brackets.end.hcl"}},"patterns":[{"include":"#for_expression_body"}]}},"scopeName":"source.hcl"}')),Cae=[kae]});var d$={};x(d$,{default:()=>Bae});var _ae,Bae,u$=_(()=>{_ae=Object.freeze(JSON.parse(`{"displayName":"Hjson","fileTypes":["hjson"],"foldingStartMarker":"(?:^\\\\s*[{\\\\[](?!.*[}\\\\]],?\\\\s*$)|[{\\\\[]\\\\s*$)","foldingStopMarker":"(?:^\\\\s*[}\\\\]])","name":"hjson","patterns":[{"include":"#comments"},{"include":"#value"},{"match":"[^\\\\s]","name":"invalid.illegal.excess-characters.hjson"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.hjson"}},"end":"(\\\\])(?:\\\\s*([^,\\\\s]+))?","endCaptures":{"1":{"name":"punctuation.definition.array.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"meta.structure.array.hjson","patterns":[{"include":"#arrayContent"}]},"arrayArray":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.hjson"}},"end":"(\\\\])(?:\\\\s*([^,\\\\s\\\\]]+))?","endCaptures":{"1":{"name":"punctuation.definition.array.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"meta.structure.array.hjson","patterns":[{"include":"#arrayContent"}]},"arrayConstant":{"captures":{"1":{"name":"constant.language.hjson"},"2":{"name":"punctuation.separator.array.after-const.hjson"}},"match":"\\\\b(true|false|null)(?:[\\\\t ]*(?=,)|[\\\\t ]*(?:(,)[\\\\t ]*)?(?=$|#|/\\\\*|//|\\\\]))"},"arrayContent":{"name":"meta.structure.array.hjson","patterns":[{"include":"#comments"},{"include":"#arrayValue"},{"begin":"(?<=\\\\[)|,","beginCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.hjson"}},"end":"(?=[^\\\\s,/#])|(?=/[^/*])","patterns":[{"include":"#comments"},{"match":",","name":"invalid.illegal.extra-comma.hjson"}]},{"match":",","name":"punctuation.separator.array.hjson"},{"match":"[^\\\\s\\\\]]","name":"invalid.illegal.expected-array-separator.hjson"}]},"arrayJstring":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hjson"}},"end":"(\\")(?:\\\\s*((?:[^,\\\\s\\\\]#/]|/[^/*])+))?","endCaptures":{"1":{"name":"punctuation.definition.string.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"string.quoted.double.hjson","patterns":[{"include":"#jstringDoubleContent"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hjson"}},"end":"(')(?:\\\\s*((?:[^,\\\\s\\\\]#/]|/[^/*])+))?","endCaptures":{"1":{"name":"punctuation.definition.string.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"string.quoted.single.hjson","patterns":[{"include":"#jstringSingleContent"}]}]},"arrayMstring":{"begin":"'''","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hjson"}},"end":"(''')(?:\\\\s*((?:[^,\\\\s\\\\]#/]|/[^/*])+))?","endCaptures":{"1":{"name":"punctuation.definition.string.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"string.quoted.multiline.hjson"},"arrayNumber":{"captures":{"1":{"name":"constant.numeric.hjson"},"2":{"name":"punctuation.separator.array.after-num.hjson"}},"match":"(-?(?:0|(?:[1-9]\\\\d*))(?:\\\\.\\\\d+)?(?:[eE][+-]?\\\\d+)?)(?:[\\\\t ]*(?=,)|[\\\\t ]*(?:(,)[\\\\t ]*)?(?=$|#|/\\\\*|//|\\\\]))"},"arrayObject":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.hjson"}},"end":"(\\\\}|(?<=\\\\}))(?:\\\\s*([^,\\\\s\\\\]]+))?","endCaptures":{"1":{"name":"punctuation.definition.dictionary.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"meta.structure.dictionary.hjson","patterns":[{"include":"#objectContent"}]},"arrayString":{"patterns":[{"include":"#arrayMstring"},{"include":"#arrayJstring"},{"include":"#ustring"}]},"arrayValue":{"patterns":[{"include":"#arrayNumber"},{"include":"#arrayConstant"},{"include":"#arrayString"},{"include":"#arrayObject"},{"include":"#arrayArray"}]},"comments":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.hjson"}},"match":"^\\\\s*(#).*(?:\\\\n)?","name":"comment.line.hash"},{"captures":{"1":{"name":"punctuation.definition.comment.hjson"}},"match":"^\\\\s*(//).*(?:\\\\n)?","name":"comment.line.double-slash"},{"begin":"^\\\\s*/\\\\*","beginCaptures":{"1":{"name":"punctuation.definition.comment.hjson"}},"end":"\\\\*/(?:\\\\s*\\\\n)?","endCaptures":{"1":{"name":"punctuation.definition.comment.hjson"}},"name":"comment.block.double-slash"},{"captures":{"1":{"name":"punctuation.definition.comment.hjson"}},"match":"(#)[^\\\\n]*","name":"comment.line.hash"},{"captures":{"1":{"name":"punctuation.definition.comment.hjson"}},"match":"(//)[^\\\\n]*","name":"comment.line.double-slash"},{"begin":"/\\\\*","beginCaptures":{"1":{"name":"punctuation.definition.comment.hjson"}},"end":"\\\\*/","endCaptures":{"1":{"name":"punctuation.definition.comment.hjson"}},"name":"comment.block.double-slash"}]},"commentsNewline":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.hjson"}},"match":"(#).*\\\\n","name":"comment.line.hash"},{"captures":{"1":{"name":"punctuation.definition.comment.hjson"}},"match":"(//).*\\\\n","name":"comment.line.double-slash"},{"begin":"/\\\\*","beginCaptures":{"1":{"name":"punctuation.definition.comment.hjson"}},"end":"\\\\*/(\\\\s*\\\\n)?","endCaptures":{"1":{"name":"punctuation.definition.comment.hjson"}},"name":"comment.block.double-slash"}]},"constant":{"captures":{"1":{"name":"constant.language.hjson"}},"match":"\\\\b(true|false|null)[\\\\t ]*(?=$|#|/\\\\*|//|\\\\])"},"jstring":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hjson"}},"end":"(\\")(?:\\\\s*((?:[^\\\\s#/]|/[^/*]).*)$)?","endCaptures":{"1":{"name":"punctuation.definition.string.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"string.quoted.double.hjson","patterns":[{"include":"#jstringDoubleContent"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hjson"}},"end":"(')(?:\\\\s*((?:[^\\\\s#/]|/[^/*]).*)$)?","endCaptures":{"1":{"name":"punctuation.definition.string.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"string.quoted.single.hjson","patterns":[{"include":"#jstringSingleContent"}]}]},"jstringDoubleContent":{"patterns":[{"match":"\\\\\\\\(?:[\\"'\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})","name":"constant.character.escape.hjson"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.hjson"},{"match":"[^\\"]*[^\\\\n\\\\r\\"\\\\\\\\]$","name":"invalid.illegal.string.hjson"}]},"jstringSingleContent":{"patterns":[{"match":"\\\\\\\\(?:[\\"'\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})","name":"constant.character.escape.hjson"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.hjson"},{"match":"[^']*[^\\\\n\\\\r'\\\\\\\\]$","name":"invalid.illegal.string.hjson"}]},"key":{"begin":"(?:((?:[^:,\\\\{\\\\}\\\\[\\\\]\\\\s\\"'][^:,\\\\{\\\\}\\\\[\\\\]\\\\s]*)|(?:'(?:[^\\\\\\\\']|(\\\\\\\\(?:[\\"'\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4}))|(\\\\\\\\.))*')|(?:\\"(?:[^\\\\\\\\\\"]|(\\\\\\\\(?:[\\"'\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4}))|(\\\\\\\\.))*\\"))\\\\s*(?!\\\\n)([,\\\\{\\\\}\\\\[\\\\]]*))","beginCaptures":{"0":{"name":"meta.structure.key-value.begin.hjson"},"1":{"name":"support.type.property-name.hjson"},"2":{"name":"constant.character.escape.hjson"},"3":{"name":"invalid.illegal.unrecognized-string-escape.hjson"},"4":{"name":"constant.character.escape.hjson"},"5":{"name":"invalid.illegal.unrecognized-string-escape.hjson"},"6":{"name":"invalid.illegal.separator.hjson"},"7":{"name":"invalid.illegal.property-name.hjson"}},"end":"(?<!^|:)\\\\s*\\\\n|(?=})|(,)","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.hjson"}},"patterns":[{"include":"#commentsNewline"},{"include":"#keyValue"},{"match":"[^\\\\s]","name":"invalid.illegal.object-property.hjson"}]},"keyValue":{"begin":"(?:\\\\s*(:)\\\\s*([,\\\\}\\\\]]*))","beginCaptures":{"1":{"name":"punctuation.separator.dictionary.key-value.hjson"},"2":{"name":"invalid.illegal.object-property.hjson"}},"end":"(?<!^)\\\\s*(?=\\\\n)|(?=[},])","name":"meta.structure.key-value.hjson","patterns":[{"include":"#comments"},{"match":"^\\\\s+"},{"include":"#objectValue"},{"captures":{"1":{"name":"invalid.illegal.object-property.closing-bracket.hjson"}},"match":"^\\\\s*(\\\\})"},{"match":"[^\\\\s]","name":"invalid.illegal.object-property.hjson"}]},"mstring":{"begin":"'''","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hjson"}},"end":"(''')(?:\\\\s*((?:[^\\\\s#/]|/[^/*]).*)$)?","endCaptures":{"1":{"name":"punctuation.definition.string.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"string.quoted.multiline.hjson"},"number":{"captures":{"1":{"name":"constant.numeric.hjson"}},"match":"(-?(?:0|(?:[1-9]\\\\d*))(?:\\\\.\\\\d+)?(?:[eE][+-]?\\\\d+)?)[\\\\t ]*(?=$|#|/\\\\*|//|\\\\])"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.hjson"}},"end":"(\\\\}|(?<=\\\\}))(?:\\\\s*([^,\\\\s]+))?","endCaptures":{"1":{"name":"punctuation.definition.dictionary.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"meta.structure.dictionary.hjson","patterns":[{"include":"#objectContent"}]},"objectArray":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.hjson"}},"end":"(\\\\])(?:\\\\s*([^,\\\\s\\\\}]+))?","endCaptures":{"1":{"name":"punctuation.definition.array.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"meta.structure.array.hjson","patterns":[{"include":"#arrayContent"}]},"objectConstant":{"captures":{"1":{"name":"constant.language.hjson"},"2":{"name":"punctuation.separator.dictionary.pair.after-const.hjson"}},"match":"\\\\b(true|false|null)(?:[\\\\t ]*(?=,)|[\\\\t ]*(?:(,)[\\\\t ]*)?(?=$|#|/\\\\*|//|\\\\}))"},"objectContent":{"patterns":[{"include":"#comments"},{"include":"#key"},{"match":":[.|\\\\s]","name":"invalid.illegal.object-property.hjson"},{"begin":"(?<=\\\\{|,)|,","beginCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.hjson"}},"end":"(?=[^\\\\s,/#])|(?=/[^/*])","patterns":[{"include":"#comments"},{"match":",","name":"invalid.illegal.extra-comma.hjson"}]},{"match":"[^\\\\s]","name":"invalid.illegal.object-property.hjson"}]},"objectJstring":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hjson"}},"end":"(\\")(?:\\\\s*((?:[^,\\\\s\\\\}#/]|/[^/*])+))?","endCaptures":{"1":{"name":"punctuation.definition.string.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"string.quoted.double.hjson","patterns":[{"include":"#jstringDoubleContent"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hjson"}},"end":"(')(?:\\\\s*((?:[^,\\\\s\\\\}#/]|/[^/*])+))?","endCaptures":{"1":{"name":"punctuation.definition.string.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"string.quoted.single.hjson","patterns":[{"include":"#jstringSingleContent"}]}]},"objectMstring":{"begin":"'''","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hjson"}},"end":"(''')(?:\\\\s*((?:[^,\\\\s\\\\}#/]|/[^/*])+))?","endCaptures":{"1":{"name":"punctuation.definition.string.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"string.quoted.multiline.hjson"},"objectNumber":{"captures":{"1":{"name":"constant.numeric.hjson"},"2":{"name":"punctuation.separator.dictionary.pair.after-num.hjson"}},"match":"(-?(?:0|(?:[1-9]\\\\d*))(?:\\\\.\\\\d+)?(?:[eE][+-]?\\\\d+)?)(?:[\\\\t ]*(?=,)|[\\\\t ]*(?:(,)[\\\\t ]*)?(?=$|#|/\\\\*|//|\\\\}))"},"objectObject":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.hjson"}},"end":"(\\\\}|(?<=\\\\})\\\\}?)(?:\\\\s*([^,\\\\s}]+))?","endCaptures":{"1":{"name":"punctuation.definition.dictionary.end.hjson"},"2":{"name":"invalid.illegal.value.hjson"}},"name":"meta.structure.dictionary.hjson","patterns":[{"include":"#objectContent"}]},"objectString":{"patterns":[{"include":"#objectMstring"},{"include":"#objectJstring"},{"include":"#ustring"}]},"objectValue":{"patterns":[{"include":"#objectNumber"},{"include":"#objectConstant"},{"include":"#objectString"},{"include":"#objectObject"},{"include":"#objectArray"}]},"string":{"patterns":[{"include":"#mstring"},{"include":"#jstring"},{"include":"#ustring"}]},"ustring":{"match":"([^:,\\\\{\\\\[\\\\}\\\\]\\\\s].*)$","name":"string.quoted.none.hjson"},"value":{"patterns":[{"include":"#number"},{"include":"#constant"},{"include":"#string"},{"include":"#object"},{"include":"#array"}]}},"scopeName":"source.hjson"}`)),Bae=[_ae]});var p$={};x(p$,{default:()=>WB});var xae,WB,KB=_(()=>{xae=Object.freeze(JSON.parse('{"displayName":"HLSL","name":"hlsl","patterns":[{"begin":"/\\\\*","end":"\\\\*/","name":"comment.line.block.hlsl"},{"begin":"//","end":"$","name":"comment.line.double-slash.hlsl"},{"match":"\\\\b[0-9]+\\\\.[0-9]*(F|f)?\\\\b","name":"constant.numeric.decimal.hlsl"},{"match":"(\\\\.([0-9]+)(F|f)?)\\\\b","name":"constant.numeric.decimal.hlsl"},{"match":"\\\\b([0-9]+(F|f)?)\\\\b","name":"constant.numeric.decimal.hlsl"},{"match":"\\\\b(0(x|X)[0-9a-fA-F]+)\\\\b","name":"constant.numeric.hex.hlsl"},{"match":"\\\\b(false|true)\\\\b","name":"constant.language.hlsl"},{"match":"^\\\\s*#\\\\s*(define|elif|else|endif|ifdef|ifndef|if|undef|include|line|error|pragma)","name":"keyword.preprocessor.hlsl"},{"match":"\\\\b(break|case|continue|default|discard|do|else|for|if|return|switch|while)\\\\b","name":"keyword.control.hlsl"},{"match":"\\\\b(compile)\\\\b","name":"keyword.control.fx.hlsl"},{"match":"\\\\b(typedef)\\\\b","name":"keyword.typealias.hlsl"},{"match":"\\\\b(bool([1-4](x[1-4])?)?|double([1-4](x[1-4])?)?|dword|float([1-4](x[1-4])?)?|half([1-4](x[1-4])?)?|int([1-4](x[1-4])?)?|matrix|min10float([1-4](x[1-4])?)?|min12int([1-4](x[1-4])?)?|min16float([1-4](x[1-4])?)?|min16int([1-4](x[1-4])?)?|min16uint([1-4](x[1-4])?)?|unsigned|uint([1-4](x[1-4])?)?|vector|void)\\\\b","name":"storage.type.basic.hlsl"},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)(?=[\\\\s]*\\\\()","name":"support.function.hlsl"},{"match":"(?<=\\\\:\\\\s|\\\\:)(?i:BINORMAL[0-9]*|BLENDINDICES[0-9]*|BLENDWEIGHT[0-9]*|COLOR[0-9]*|NORMAL[0-9]*|POSITIONT|POSITION|PSIZE[0-9]*|TANGENT[0-9]*|TEXCOORD[0-9]*|FOG|TESSFACTOR[0-9]*|VFACE|VPOS|DEPTH[0-9]*)\\\\b","name":"support.variable.semantic.hlsl"},{"match":"(?<=\\\\:\\\\s|\\\\:)(?i:SV_ClipDistance[0-9]*|SV_CullDistance[0-9]*|SV_Coverage|SV_Depth|SV_DepthGreaterEqual[0-9]*|SV_DepthLessEqual[0-9]*|SV_InstanceID|SV_IsFrontFace|SV_Position|SV_RenderTargetArrayIndex|SV_SampleIndex|SV_StencilRef|SV_Target[0-7]?|SV_VertexID|SV_ViewportArrayIndex)\\\\b","name":"support.variable.semantic.sm4.hlsl"},{"match":"(?<=\\\\:\\\\s|\\\\:)(?i:SV_DispatchThreadID|SV_DomainLocation|SV_GroupID|SV_GroupIndex|SV_GroupThreadID|SV_GSInstanceID|SV_InsideTessFactor|SV_OutputControlPointID|SV_TessFactor)\\\\b","name":"support.variable.semantic.sm5.hlsl"},{"match":"(?<=\\\\:\\\\s|\\\\:)(?i:SV_InnerCoverage|SV_StencilRef)\\\\b","name":"support.variable.semantic.sm5_1.hlsl"},{"match":"\\\\b(column_major|const|export|extern|globallycoherent|groupshared|inline|inout|in|out|precise|row_major|shared|static|uniform|volatile)\\\\b","name":"storage.modifier.hlsl"},{"match":"\\\\b(snorm|unorm)\\\\b","name":"storage.modifier.float.hlsl"},{"match":"\\\\b(packoffset|register)\\\\b","name":"storage.modifier.postfix.hlsl"},{"match":"\\\\b(centroid|linear|nointerpolation|noperspective|sample)\\\\b","name":"storage.modifier.interpolation.hlsl"},{"match":"\\\\b(lineadj|line|point|triangle|triangleadj)\\\\b","name":"storage.modifier.geometryshader.hlsl"},{"match":"\\\\b(string)\\\\b","name":"support.type.other.hlsl"},{"match":"\\\\b(AppendStructuredBuffer|Buffer|ByteAddressBuffer|ConstantBuffer|ConsumeStructuredBuffer|InputPatch|OutputPatch)\\\\b","name":"support.type.object.hlsl"},{"match":"\\\\b(RasterizerOrderedBuffer|RasterizerOrderedByteAddressBuffer|RasterizerOrderedStructuredBuffer|RasterizerOrderedTexture1D|RasterizerOrderedTexture1DArray|RasterizerOrderedTexture2D|RasterizerOrderedTexture2DArray|RasterizerOrderedTexture3D)\\\\b","name":"support.type.object.rasterizerordered.hlsl"},{"match":"\\\\b(RWBuffer|RWByteAddressBuffer|RWStructuredBuffer|RWTexture1D|RWTexture1DArray|RWTexture2D|RWTexture2DArray|RWTexture3D)\\\\b","name":"support.type.object.rw.hlsl"},{"match":"\\\\b(LineStream|PointStream|TriangleStream)\\\\b","name":"support.type.object.geometryshader.hlsl"},{"match":"\\\\b(sampler|sampler1D|sampler2D|sampler3D|samplerCUBE|sampler_state)\\\\b","name":"support.type.sampler.legacy.hlsl"},{"match":"\\\\b(SamplerState|SamplerComparisonState)\\\\b","name":"support.type.sampler.hlsl"},{"match":"\\\\b(texture2D|textureCUBE)\\\\b","name":"support.type.texture.legacy.hlsl"},{"match":"\\\\b(Texture1D|Texture1DArray|Texture2D|Texture2DArray|Texture2DMS|Texture2DMSArray|Texture3D|TextureCube|TextureCubeArray)\\\\b","name":"support.type.texture.hlsl"},{"match":"\\\\b(cbuffer|class|interface|namespace|struct|tbuffer)\\\\b","name":"storage.type.structured.hlsl"},{"match":"\\\\b(FALSE|TRUE|NULL)\\\\b","name":"support.constant.property-value.fx.hlsl"},{"match":"\\\\b(BlendState|DepthStencilState|RasterizerState)\\\\b","name":"support.type.fx.hlsl"},{"match":"\\\\b(technique|Technique|technique10|technique11|pass)\\\\b","name":"storage.type.fx.technique.hlsl"},{"match":"\\\\b(AlphaToCoverageEnable|BlendEnable|SrcBlend|DestBlend|BlendOp|SrcBlendAlpha|DestBlendAlpha|BlendOpAlpha|RenderTargetWriteMask)\\\\b","name":"meta.object-literal.key.fx.blendstate.hlsl"},{"match":"\\\\b(DepthEnable|DepthWriteMask|DepthFunc|StencilEnable|StencilReadMask|StencilWriteMask|FrontFaceStencilFail|FrontFaceStencilZFail|FrontFaceStencilPass|FrontFaceStencilFunc|BackFaceStencilFail|BackFaceStencilZFail|BackFaceStencilPass|BackFaceStencilFunc)\\\\b","name":"meta.object-literal.key.fx.depthstencilstate.hlsl"},{"match":"\\\\b(FillMode|CullMode|FrontCounterClockwise|DepthBias|DepthBiasClamp|SlopeScaleDepthBias|ZClipEnable|ScissorEnable|MultiSampleEnable|AntiAliasedLineEnable)\\\\b","name":"meta.object-literal.key.fx.rasterizerstate.hlsl"},{"match":"\\\\b(Filter|AddressU|AddressV|AddressW|MipLODBias|MaxAnisotropy|ComparisonFunc|BorderColor|MinLOD|MaxLOD)\\\\b","name":"meta.object-literal.key.fx.samplerstate.hlsl"},{"match":"\\\\b(?i:ZERO|ONE|SRC_COLOR|INV_SRC_COLOR|SRC_ALPHA|INV_SRC_ALPHA|DEST_ALPHA|INV_DEST_ALPHA|DEST_COLOR|INV_DEST_COLOR|SRC_ALPHA_SAT|BLEND_FACTOR|INV_BLEND_FACTOR|SRC1_COLOR|INV_SRC1_COLOR|SRC1_ALPHA|INV_SRC1_ALPHA)\\\\b","name":"support.constant.property-value.fx.blend.hlsl"},{"match":"\\\\b(?i:ADD|SUBTRACT|REV_SUBTRACT|MIN|MAX)\\\\b","name":"support.constant.property-value.fx.blendop.hlsl"},{"match":"\\\\b(?i:ALL)\\\\b","name":"support.constant.property-value.fx.depthwritemask.hlsl"},{"match":"\\\\b(?i:NEVER|LESS|EQUAL|LESS_EQUAL|GREATER|NOT_EQUAL|GREATER_EQUAL|ALWAYS)\\\\b","name":"support.constant.property-value.fx.comparisonfunc.hlsl"},{"match":"\\\\b(?i:KEEP|REPLACE|INCR_SAT|DECR_SAT|INVERT|INCR|DECR)\\\\b","name":"support.constant.property-value.fx.stencilop.hlsl"},{"match":"\\\\b(?i:WIREFRAME|SOLID)\\\\b","name":"support.constant.property-value.fx.fillmode.hlsl"},{"match":"\\\\b(?i:NONE|FRONT|BACK)\\\\b","name":"support.constant.property-value.fx.cullmode.hlsl"},{"match":"\\\\b(?i:MIN_MAG_MIP_POINT|MIN_MAG_POINT_MIP_LINEAR|MIN_POINT_MAG_LINEAR_MIP_POINT|MIN_POINT_MAG_MIP_LINEAR|MIN_LINEAR_MAG_MIP_POINT|MIN_LINEAR_MAG_POINT_MIP_LINEAR|MIN_MAG_LINEAR_MIP_POINT|MIN_MAG_MIP_LINEAR|ANISOTROPIC|COMPARISON_MIN_MAG_MIP_POINT|COMPARISON_MIN_MAG_POINT_MIP_LINEAR|COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT|COMPARISON_MIN_POINT_MAG_MIP_LINEAR|COMPARISON_MIN_LINEAR_MAG_MIP_POINT|COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR|COMPARISON_MIN_MAG_LINEAR_MIP_POINT|COMPARISON_MIN_MAG_MIP_LINEAR|COMPARISON_ANISOTROPIC|TEXT_1BIT)\\\\b","name":"support.constant.property-value.fx.filter.hlsl"},{"match":"\\\\b(?i:WRAP|MIRROR|CLAMP|BORDER|MIRROR_ONCE)\\\\b","name":"support.constant.property-value.fx.textureaddressmode.hlsl"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.hlsl","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.hlsl"}]}],"scopeName":"source.hlsl"}')),WB=[xae]});var m$={};x(m$,{default:()=>Eae});var vae,Eae,g$=_(()=>{Ki();zr();Ja();Sg();vae=Object.freeze(JSON.parse('{"displayName":"HTTP","fileTypes":["http","rest"],"name":"http","patterns":[{"begin":"^\\\\s*(?=curl)","end":"^\\\\s*(\\\\#{3,}.*?)?\\\\s*$","endCaptures":{"0":{"name":"comment.line.sharp.http"}},"name":"http.request.curl","patterns":[{"include":"source.shell"}]},{"begin":"\\\\s*(?=(\\\\[|{[^{]))","end":"^\\\\s*(\\\\#{3,}.*?)?\\\\s*$","endCaptures":{"0":{"name":"comment.line.sharp.http"}},"name":"http.request.body.json","patterns":[{"include":"source.json"}]},{"begin":"^\\\\s*(?=<\\\\S)","end":"^\\\\s*(\\\\#{3,}.*?)?\\\\s*$","endCaptures":{"0":{"name":"comment.line.sharp.http"}},"name":"http.request.body.xml","patterns":[{"include":"text.xml"}]},{"begin":"\\\\s*(?=(query|mutation))","end":"^\\\\s*(\\\\#{3,}.*?)?\\\\s*$","endCaptures":{"0":{"name":"comment.line.sharp.http"}},"name":"http.request.body.graphql","patterns":[{"include":"source.graphql"}]},{"begin":"\\\\s*(?=(query|mutation))","end":"^\\\\{\\\\s*$","name":"http.request.body.graphql","patterns":[{"include":"source.graphql"}]},{"include":"#metadata"},{"include":"#comments"},{"captures":{"1":{"name":"keyword.other.http"},"2":{"name":"variable.other.http"},"3":{"name":"string.other.http"}},"match":"^\\\\s*(@)([^\\\\s=]+)\\\\s*=\\\\s*(.*?)\\\\s*$","name":"http.filevariable"},{"captures":{"1":{"name":"keyword.operator.http"},"2":{"name":"variable.other.http"},"3":{"name":"string.other.http"}},"match":"^\\\\s*(\\\\?|&)([^=\\\\s]+)=(.*)$","name":"http.query"},{"captures":{"1":{"name":"entity.name.tag.http"},"2":{"name":"keyword.other.http"},"3":{"name":"string.other.http"}},"match":"^([\\\\w\\\\-]+)\\\\s*(\\\\:)\\\\s*([^/].*?)\\\\s*$","name":"http.headers"},{"include":"#request-line"},{"include":"#response-line"}],"repository":{"comments":{"patterns":[{"match":"^\\\\s*\\\\#{1,}.*$","name":"comment.line.sharp.http"},{"match":"^\\\\s*\\\\/{2,}.*$","name":"comment.line.double-slash.http"}]},"metadata":{"patterns":[{"captures":{"1":{"name":"entity.other.attribute-name"},"2":{"name":"punctuation.definition.block.tag.metadata"},"3":{"name":"entity.name.type.http"}},"match":"^\\\\s*\\\\#{1,}\\\\s+(?:((@)name)\\\\s+([^\\\\s\\\\.]+))$","name":"comment.line.sharp.http"},{"captures":{"1":{"name":"entity.other.attribute-name"},"2":{"name":"punctuation.definition.block.tag.metadata"},"3":{"name":"entity.name.type.http"}},"match":"^\\\\s*\\\\/{2,}\\\\s+(?:((@)name)\\\\s+([^\\\\s\\\\.]+))$","name":"comment.line.double-slash.http"},{"captures":{"1":{"name":"entity.other.attribute-name"},"2":{"name":"punctuation.definition.block.tag.metadata"}},"match":"^\\\\s*\\\\#{1,}\\\\s+((@)note)\\\\s*$","name":"comment.line.sharp.http"},{"captures":{"1":{"name":"entity.other.attribute-name"},"2":{"name":"punctuation.definition.block.tag.metadata"}},"match":"^\\\\s*\\\\/{2,}\\\\s+((@)note)\\\\s*$","name":"comment.line.double-slash.http"},{"captures":{"1":{"name":"entity.other.attribute-name"},"2":{"name":"punctuation.definition.block.tag.metadata"},"3":{"name":"variable.other.http"},"4":{"name":"string.other.http"}},"match":"^\\\\s*\\\\#{1,}\\\\s+(?:((@)prompt)\\\\s+([^\\\\s]+)(?:\\\\s+(.*))?\\\\s*)$","name":"comment.line.sharp.http"},{"captures":{"1":{"name":"entity.other.attribute-name"},"2":{"name":"punctuation.definition.block.tag.metadata"},"3":{"name":"variable.other.http"},"4":{"name":"string.other.http"}},"match":"^\\\\s*\\\\/{2,}\\\\s+(?:((@)prompt)\\\\s+([^\\\\s]+)(?:\\\\s+(.*))?\\\\s*)$","name":"comment.line.double-slash.http"}]},"protocol":{"patterns":[{"captures":{"1":{"name":"keyword.other.http"},"2":{"name":"constant.numeric.http"}},"match":"(HTTP)/(\\\\d+.\\\\d+)","name":"http.version"}]},"request-line":{"captures":{"1":{"name":"keyword.control.http"},"2":{"name":"const.language.http"},"3":{"patterns":[{"include":"#protocol"}]}},"match":"(?i)^(?:(get|post|put|delete|patch|head|options|connect|trace|lock|unlock|propfind|proppatch|copy|move|mkcol|mkcalendar|acl|search)\\\\s+)\\\\s*(.+?)(?:\\\\s+(HTTP\\\\/\\\\S+))?$","name":"http.requestline"},"response-line":{"captures":{"1":{"patterns":[{"include":"#protocol"}]},"2":{"name":"constant.numeric.http"},"3":{"name":"string.other.http"}},"match":"(?i)^\\\\s*(HTTP\\\\/\\\\S+)\\\\s([1-5][0-9][0-9])\\\\s(.*)$","name":"http.responseLine"}},"scopeName":"source.http","embeddedLangs":["shellscript","json","xml","graphql"]}')),Eae=[...ia,...bn,...Qt,...XA,vae]});var f$={};x(f$,{default:()=>Iae});var Qae,Iae,b$=_(()=>{YB();Qae=Object.freeze(JSON.parse('{"displayName":"HXML","fileTypes":["hxml"],"foldingStartMarker":"--next","foldingStopMarker":"\\\\n\\\\n","name":"hxml","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.hxml"}},"match":"(#).*$\\\\n?","name":"comment.line.number-sign.hxml"},{"begin":"(?<!\\\\w)(--macro)\\\\b","beginCaptures":{"1":{"name":"keyword.other.hxml"}},"end":"\\\\n","patterns":[{"include":"source.hx#block-contents"}]},{"captures":{"1":{"name":"keyword.other.hxml"},"2":{"name":"support.package.hx"},"4":{"name":"entity.name.type.hx"}},"match":"(?<!\\\\w)(-m|-main|--main|--run)\\\\b\\\\s*\\\\b(?:(([a-z][a-zA-Z0-9]*\\\\.)*)(_*[A-Z]\\\\w*))?\\\\b"},{"captures":{"1":{"name":"keyword.other.hxml"}},"match":"(?<!\\\\w)(-cppia|-cpp?|-js|-as3|-swf-(header|version|lib(-extern)?)|-swf9?|-neko|-python|-php|-cs|-java-lib|-java|-xml|-lua|-hl|-x|-lib|-D|-resource|-exclude|-version|-v|-debug|-prompt|-cmd|-dce\\\\s+(std|full|no)?|--flash-strict|--no-traces|--flash-use-stage|--neko-source|--gen-hx-classes|-net-lib|-net-std|-c-arg|--each|--next|--display|--no-output|--times|--no-inline|--no-opt|--php-front|--php-lib|--php-prefix|--remap|--help-defines|--help-metas|-help|--help|-java|-cs|--js-modern|--interp|--eval|--dce|--wait|--connect|--cwd|--run).*$"},{"captures":{"1":{"name":"keyword.other.hxml"}},"match":"(?<!\\\\w)(--js(on)?|--lua|--swf-(header|version|lib(-extern)?)|--swf|--as3|--neko|--php|--cppia|--cpp|--cppia|--cs|--java-lib(-extern)?|--java|--jvm|--python|--hl|-p|--class-path|-L|--library|--define|-r|--resource|--cmd|-C|--verbose|--debug|--prompt|--xml|--json|--net-lib|--net-std|--c-arg|--version|--haxelib-global|-h|--main|--server-connect|--server-listen).*$"}],"scopeName":"source.hxml","embeddedLangs":["haxe"]}')),Iae=[...ZB,Qae]});var h$={};x(h$,{default:()=>Fae});var Dae,Fae,y$=_(()=>{Dae=Object.freeze(JSON.parse(`{"displayName":"Hy","name":"hy","patterns":[{"include":"#all"}],"repository":{"all":{"patterns":[{"include":"#comment"},{"include":"#constants"},{"include":"#keywords"},{"include":"#strings"},{"include":"#operators"},{"include":"#keysym"},{"include":"#builtin"},{"include":"#symbol"}]},"builtin":{"patterns":[{"match":"(?<![\\\\.:\\\\w_\\\\-=!@\\\\$%^&?/<>*])(abs|all|any|ascii|bin|breakpoint|callable|chr|compile|delattr|dir|divmod|eval|exec|format|getattr|globals|hasattr|hash|hex|id|input|isinstance|issubclass|iter|aiter|len|locals|max|min|next|anext|oct|ord|pow|print|repr|round|setattr|sorted|sum|vars|False|None|True|NotImplemented|bool|memoryview|bytearray|bytes|classmethod|complex|dict|enumerate|filter|float|frozenset|property|int|list|map|object|range|reversed|set|slice|staticmethod|str|super|tuple|type|zip|open|quit|exit|copyright|credits|help)(?![\\\\.:\\\\w_\\\\-=!@\\\\$%^&?/<>*])","name":"storage.builtin.hy"},{"match":"(?<=\\\\(\\\\s*)\\\\.\\\\.\\\\.(?![\\\\.:\\\\w_\\\\-=!@\\\\$%^&?/<>*])","name":"storage.builtin.dots.hy"}]},"comment":{"patterns":[{"match":"(;).*$","name":"comment.line.hy"}]},"constants":{"patterns":[{"match":"(?<=[\\\\{\\\\[\\\\(\\\\s])([0-9]+(\\\\.[0-9]+)?|(#x)[0-9a-fA-F]+|(#o)[0-7]+|(#b)[01]+)(?=[\\\\s;()'\\",\\\\[\\\\]\\\\{\\\\}])","name":"constant.numeric.hy"}]},"keysym":{"match":"(?<![\\\\.:\\\\w_\\\\-=!@\\\\$%^&?\\\\/<>*]):[\\\\.:\\\\w_\\\\-=!@\\\\$%^&?\\\\/<>*]*","name":"variable.other.constant"},"keywords":{"patterns":[{"match":"(?<![\\\\.:\\\\w_\\\\-=!@\\\\$%^&?/<>*])(and|await|match|let|annotate|assert|break|chainc|cond|continue|deftype|do|except\\\\*?|finally|else|defreader|([dgls])?for|set[vx]|defclass|defmacro|del|export|eval-and-compile|eval-when-compile|get|global|if|import|(de)?fn|nonlocal|not-in|or|(quasi)?quote|require|return|cut|raise|try|unpack-iterable|unpack-mapping|unquote|unquote-splice|when|while|with|yield|local-macros|in|is|py(s)?|pragma|nonlocal|(is-)?not)(?![\\\\.:\\\\w_\\\\-=!@\\\\$%^&?/<>*])","name":"keyword.control.hy"},{"match":"(?<=\\\\(\\\\s*)\\\\.(?![\\\\.:\\\\w_\\\\-=!@\\\\$%^&?/<>*])","name":"keyword.control.dot.hy"}]},"operators":{"patterns":[{"match":"(?<![\\\\.:\\\\w_\\\\-=!@\\\\$%^&?/<>*])(\\\\+=?|\\\\/\\\\/?=?|\\\\*\\\\*?=?|--?=?|[!<>]?=|@=?|%=?|<<?=?|>>?=?|&=?|\\\\|=?|\\\\^|~@|~=?|#\\\\*\\\\*?)(?![\\\\.:\\\\w_\\\\-=!@\\\\$%^&?/<>*])","name":"keyword.control.hy"}]},"strings":{"begin":"(f?\\"|}(?=[^\\n]*?[{\\"]))","end":"(\\"|(?<=[\\"}][^\\n]*?){)","name":"string.quoted.double.hy","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.hy"}]},"symbol":{"match":"(?<![\\\\.:\\\\w_\\\\-=!@\\\\$%^&?/<>*#])[\\\\.a-zA-Z\u0391-\u03A9\u03B1-\u03C9_\\\\-=!@\\\\$%^<?/<>*#][\\\\.:\\\\w_\\\\-=!@\\\\$%^&?/<>*#]*","name":"variable.other.hy"}},"scopeName":"source.hy"}`)),Fae=[Dae]});var w$={};x(w$,{default:()=>Oae});var Sae,Oae,k$=_(()=>{hn();Sae=Object.freeze(JSON.parse(`{"displayName":"Imba","fileTypes":["imba","imba2"],"name":"imba","patterns":[{"include":"#root"},{"captures":{"1":{"name":"punctuation.definition.comment.imba"}},"match":"\\\\A(#!).*(?=$)","name":"comment.line.shebang.imba"}],"repository":{"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.imba"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.imba"}},"name":"meta.array.literal.imba","patterns":[{"include":"#expr"},{"include":"#punctuation-comma"}]},"block":{"patterns":[{"include":"#style-declaration"},{"include":"#mixin-declaration"},{"include":"#object-keys"},{"include":"#generics-literal"},{"include":"#tag-literal"},{"include":"#regex"},{"include":"#keywords"},{"include":"#comment"},{"include":"#literal"},{"include":"#plain-identifiers"},{"include":"#plain-accessors"},{"include":"#pairs"},{"include":"#invalid-indentation"}]},"boolean-literal":{"patterns":[{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(true|yes)(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.true.imba"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(false|no)(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.false.imba"}]},"brackets":{"patterns":[{"begin":"{","end":"}|(?=\\\\*/)","patterns":[{"include":"#brackets"}]},{"begin":"\\\\[","end":"\\\\]|(?=\\\\*/)","patterns":[{"include":"#brackets"}]}]},"comment":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.imba"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.imba"}},"name":"comment.block.documentation.imba","patterns":[{"include":"#docblock"}]},{"begin":"(/\\\\*)(?:\\\\s*((@)internal)(?=\\\\s|(\\\\*/)))?","beginCaptures":{"1":{"name":"punctuation.definition.comment.imba"},"2":{"name":"storage.type.internaldeclaration.imba"},"3":{"name":"punctuation.decorator.internaldeclaration.imba"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.imba"}},"name":"comment.block.imba"},{"begin":"(### \\\\@ts(?=\\\\s|$))","beginCaptures":{"1":{"name":"punctuation.definition.comment.imba"}},"contentName":"source.ts.embedded.imba","end":"###","endCaptures":{"0":{"name":"punctuation.definition.comment.imba"}},"name":"ts.block.imba","patterns":[{"include":"source.ts"}]},{"begin":"(###)","beginCaptures":{"1":{"name":"punctuation.definition.comment.imba"}},"end":"###(?:[ \\\\t]*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.comment.imba"}},"name":"comment.block.imba"},{"begin":"(^[ \\\\t]+)?((//|\\\\#\\\\s)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.imba"},"2":{"name":"comment.line.double-slash.imba"},"3":{"name":"punctuation.definition.comment.imba"},"4":{"name":"storage.type.internaldeclaration.imba"},"5":{"name":"punctuation.decorator.internaldeclaration.imba"}},"contentName":"comment.line.double-slash.imba","end":"(?=$)"}]},"css-color-keywords":{"patterns":[{"match":"(?i)(?<![\\\\w-])(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)(?![\\\\w-])","name":"support.constant.color.w3c-standard-color-name.css"},{"match":"(?xi) (?<![\\\\w-])\\n(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood\\n|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan\\n|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange\\n|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise\\n|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen\\n|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki\\n|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow\\n|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray\\n|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue\\n|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise\\n|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered\\n|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum\\n|powderblue|rebeccapurple|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell\\n|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato\\n|transparent|turquoise|violet|wheat|whitesmoke|yellowgreen)\\n(?![\\\\w-])","name":"support.constant.color.w3c-extended-color-name.css"},{"match":"(?i)(?<![\\\\w-])currentColor(?![\\\\w-])","name":"support.constant.color.current.css"}]},"css-combinators":{"patterns":[{"match":">>>|>>|>|\\\\+|~","name":"punctuation.separator.combinator.css"},{"match":"&","name":"keyword.other.parent-selector.css"}]},"css-commas":{"match":",","name":"punctuation.separator.list.comma.css"},"css-comment":{"patterns":[{"match":"\\\\#(\\\\s.+)?(\\\\n|$)","name":"comment.line.imba"},{"match":"(^\\\\t+)(\\\\#(\\\\s.+)?(\\\\n|$))","name":"comment.line.imba"}]},"css-escapes":{"patterns":[{"match":"\\\\\\\\[0-9a-fA-F]{1,6}","name":"constant.character.escape.codepoint.css"},{"begin":"\\\\\\\\$\\\\s*","end":"^(?<!\\\\G)","name":"constant.character.escape.newline.css"},{"match":"\\\\\\\\.","name":"constant.character.escape.css"}]},"css-functions":{"patterns":[{"begin":"(?i)(?<![\\\\w-])(calc)(\\\\()","beginCaptures":{"1":{"name":"support.function.calc.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.calc.css","patterns":[{"match":"[*/]|(?<=\\\\s|^)[-+](?=\\\\s|$)","name":"keyword.operator.arithmetic.css"},{"include":"#css-property-values"}]},{"begin":"(?i)(?<![\\\\w-])(rgba?|hsla?)(\\\\()","beginCaptures":{"1":{"name":"support.function.misc.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.color.css","patterns":[{"include":"#css-property-values"}]},{"begin":"(?xi) (?<![\\\\w-])\\n(\\n (?:-webkit-|-moz-|-o-)? # Accept prefixed/historical variants\\n (?:repeating-)? # \\"Repeating\\"-type gradient\\n (?:linear|radial|conic) # Shape\\n -gradient\\n)\\n(\\\\()","beginCaptures":{"1":{"name":"support.function.gradient.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.gradient.css","patterns":[{"match":"(?i)(?<![\\\\w-])(from|to|at)(?![\\\\w-])","name":"keyword.operator.gradient.css"},{"include":"#css-property-values"}]},{"begin":"(?i)(?<![\\\\w-])(-webkit-gradient)(\\\\()","beginCaptures":{"1":{"name":"invalid.deprecated.gradient.function.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.gradient.invalid.deprecated.gradient.css","patterns":[{"begin":"(?i)(?<![\\\\w-])(from|to|color-stop)(\\\\()","beginCaptures":{"1":{"name":"invalid.deprecated.function.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"patterns":[{"include":"#css-property-values"}]},{"include":"#css-property-values"}]},{"begin":"(?xi) (?<![\\\\w-])\\n(annotation|attr|blur|brightness|character-variant|contrast|counters?\\n|cross-fade|drop-shadow|element|fit-content|format|grayscale|hue-rotate\\n|image-set|invert|local|minmax|opacity|ornaments|repeat|saturate|sepia\\n|styleset|stylistic|swash|symbols)\\n(\\\\()","beginCaptures":{"1":{"name":"support.function.misc.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.misc.css","patterns":[{"match":"(?i)(?<=[,\\\\s\\"]|\\\\*/|^)\\\\d+x(?=[\\\\s,\\"')]|/\\\\*|$)","name":"constant.numeric.other.density.css"},{"include":"#css-property-values"},{"match":"[^'\\"),\\\\s]+","name":"variable.parameter.misc.css"}]},{"begin":"(?i)(?<![\\\\w-])(circle|ellipse|inset|polygon|rect)(\\\\()","beginCaptures":{"1":{"name":"support.function.shape.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.shape.css","patterns":[{"match":"(?i)(?<=\\\\s|^|\\\\*/)(at|round)(?=\\\\s|/\\\\*|$)","name":"keyword.operator.shape.css"},{"include":"#css-property-values"}]},{"begin":"(?i)(?<![\\\\w-])(cubic-bezier|steps)(\\\\()","beginCaptures":{"1":{"name":"support.function.timing-function.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.timing-function.css","patterns":[{"match":"(?i)(?<![\\\\w-])(start|end)(?=\\\\s*\\\\)|$)","name":"support.constant.step-direction.css"},{"include":"#css-property-values"}]},{"begin":"(?xi) (?<![\\\\w-])\\n( (?:translate|scale|rotate)(?:[XYZ]|3D)?\\n| matrix(?:3D)?\\n| skew[XY]?\\n| perspective\\n)\\n(\\\\()","beginCaptures":{"1":{"name":"support.function.transform.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"patterns":[{"include":"#css-property-values"}]}]},"css-numeric-values":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.constant.css"}},"match":"(#)(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})\\\\b","name":"constant.other.color.rgb-value.hex.css"},{"captures":{"1":{"name":"keyword.other.unit.percentage.css"},"2":{"name":"keyword.other.unit.\${2:/downcase}.css"}},"match":"(?xi) (?<![\\\\w-])\\n[-+]? # Sign indicator\\n\\n(?: # Numerals\\n [0-9]+ (?:\\\\.[0-9]+)? # Integer/float with leading digits\\n | \\\\.[0-9]+ # Float without leading digits\\n)\\n\\n(?: # Scientific notation\\n (?<=[0-9]) # Exponent must follow a digit\\n E # Exponent indicator\\n [-+]? # Possible sign indicator\\n [0-9]+ # Exponent value\\n)?\\n\\n(?: # Possible unit for data-type:\\n (%) # - Percentage\\n | ( deg|grad|rad|turn # - Angle\\n | Hz|kHz # - Frequency\\n | ch|cm|em|ex|fr|in|mm|mozmm| # - Length\\n pc|pt|px|q|rem|vh|vmax|vmin|\\n vw\\n | dpi|dpcm|dppx # - Resolution\\n | s|ms # - Time\\n )\\n \\\\b # Boundary checking intentionally lax to\\n)? # facilitate embedding in CSS-like grammars","name":"constant.numeric.css"}]},"css-property-values":{"patterns":[{"include":"#css-commas"},{"include":"#css-escapes"},{"include":"#css-functions"},{"include":"#css-numeric-values"},{"include":"#css-size-keywords"},{"include":"#css-color-keywords"},{"include":"#string"},{"match":"!\\\\s*important(?![\\\\w-])","name":"keyword.other.important.css"}]},"css-pseudo-classes":{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"name":"invalid.illegal.colon.css"}},"match":"(?xi)\\n(:)(:*)\\n(?: active|any-link|checked|default|defined|disabled|empty|enabled|first\\n | (?:first|last|only)-(?:child|of-type)|focus|focus-visible|focus-within\\n | fullscreen|host|hover|in-range|indeterminate|invalid|left|link\\n | optional|out-of-range|placeholder-shown|read-only|read-write\\n | required|right|root|scope|target|unresolved\\n | valid|visited\\n)(?![\\\\w-]|\\\\s*[;}])","name":"entity.other.attribute-name.pseudo-class.css"},"css-pseudo-elements":{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"name":"punctuation.definition.entity.css"}},"match":"(?xi)\\n(?:\\n (::?) # Elements using both : and :: notation\\n (?: after\\n | before\\n | first-letter\\n | first-line\\n | (?:-(?:ah|apple|atsc|epub|hp|khtml|moz\\n |ms|o|rim|ro|tc|wap|webkit|xv)\\n | (?:mso|prince))\\n -[a-z-]+\\n )\\n |\\n (::) # Double-colon only\\n (?: backdrop\\n | content\\n | grammar-error\\n | marker\\n | placeholder\\n | selection\\n | shadow\\n | spelling-error\\n )\\n)\\n(?![\\\\w-]|\\\\s*[;}])","name":"entity.other.attribute-name.pseudo-element.css"},"css-selector":{"begin":"(?<=css\\\\s)(?!(?:[\\\\^\\\\@\\\\.\\\\%\\\\w\\\\$\\\\!\\\\-]+)(?:\\\\s*[\\\\:\\\\=])[^\\\\:])","end":"(\\\\s*(?=(?:[\\\\^\\\\@\\\\.\\\\%\\\\w\\\\$\\\\!\\\\-]+)(?:\\\\s*[\\\\:\\\\=])[^\\\\:])|\\\\s*$|(?=\\\\s+\\\\#\\\\s))","endCaptures":{"0":{"name":"punctuation.separator.sel-properties.css"}},"name":"meta.selector.css","patterns":[{"include":"#css-selector-innards"}]},"css-selector-innards":{"patterns":[{"include":"#css-commas"},{"include":"#css-escapes"},{"include":"#css-combinators"},{"match":"(\\\\%[\\\\w\\\\-]+)","name":"entity.other.attribute-name.mixin.css"},{"match":"\\\\*","name":"entity.name.tag.wildcard.css"},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.entity.begin.bracket.square.css"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.entity.end.bracket.square.css"}},"name":"meta.attribute-selector.css","patterns":[{"include":"#string"},{"captures":{"1":{"name":"storage.modifier.ignore-case.css"}},"match":"(?<=[\\"'\\\\s]|^|\\\\*/)\\\\s*([iI])\\\\s*(?=[\\\\s\\\\]]|/\\\\*|$)"},{"captures":{"1":{"name":"string.unquoted.attribute-value.css"}},"match":"(?<==)\\\\s*((?!/\\\\*)(?:[^\\\\\\\\\\"'\\\\s\\\\]]|\\\\\\\\.)+)"},{"include":"#css-escapes"},{"match":"[~|^$*]?=","name":"keyword.operator.pattern.css"},{"match":"\\\\|","name":"punctuation.separator.css"},{"captures":{"1":{"name":"entity.other.namespace-prefix.css"}},"match":"(-?(?!\\\\d)(?:[\\\\w-]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+|\\\\*)(?=\\\\|(?!\\\\s|=|$|\\\\])(?:-?(?!\\\\d)|[\\\\\\\\\\\\w-]|[^\\\\\\\\x00-\\\\\\\\x7F]))"},{"captures":{"1":{"name":"entity.other.attribute-name.css"}},"match":"(-?(?!\\\\d)(?>[\\\\w-]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+)\\\\s*(?=[~|^\\\\]$*=]|/\\\\*)"}]},{"include":"#css-pseudo-classes"},{"include":"#css-pseudo-elements"},{"include":"#css-mixin"}]},"css-size-keywords":{"patterns":[{"match":"(x+s|sm-|md-|lg-|sm|md|lg|x+l|hg|x+h)(?![\\\\w-])","name":"support.constant.size.property-value.css"}]},"curly-braces":{"begin":"\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"meta.brace.curly.imba"}},"end":"\\\\}","endCaptures":{"0":{"name":"meta.brace.curly.imba"}},"patterns":[{"include":"#expr"},{"include":"#punctuation-comma"}]},"decorator":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\@(?!\\\\@)","beginCaptures":{"0":{"name":"punctuation.decorator.imba"}},"end":"(?=\\\\s)","name":"meta.decorator.imba","patterns":[{"include":"#expr"}]},"directives":{"begin":"^(///)\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\s+(path|types|no-default-lib|lib|name)\\\\s*=\\\\s*((\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)))+\\\\s*/>\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.imba"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.imba","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.imba"},"2":{"name":"entity.name.tag.directive.imba"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.imba"}},"name":"meta.tag.imba","patterns":[{"match":"path|types|no-default-lib|lib|name","name":"entity.other.attribute-name.directive.imba"},{"match":"=","name":"keyword.operator.assignment.imba"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"(</)caption(>)|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.imba"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.imba"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!'))|[^*\\\\\\\\])*?'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([''\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?))(?=\\\\s+)"}]},"expr":{"patterns":[{"include":"#style-declaration"},{"include":"#object-keys"},{"include":"#generics-literal"},{"include":"#tag-literal"},{"include":"#regex"},{"include":"#keywords"},{"include":"#comment"},{"include":"#literal"},{"include":"#plain-identifiers"},{"include":"#plain-accessors"},{"include":"#pairs"}]},"expression":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.imba"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.imba"}},"patterns":[{"include":"#expr"}]},{"include":"#tag-literal"},{"include":"#expressionWithoutIdentifiers"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#literal"},{"include":"#support-objects"}]},"generics-literal":{"begin":"(?<=[\\\\w\\\\]\\\\)])\\\\<","beginCaptures":{"1":{"name":"meta.generics.annotation.open.imba"}},"end":"\\\\>","endCaptures":{"0":{"name":"meta.generics.annotation.close.imba"}},"name":"meta.generics.annotation.imba","patterns":[{"include":"#type-brackets"}]},"global-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(global)\\\\b(?!\\\\$)","name":"variable.language.global.imba"},"identifiers":{"patterns":[{"captures":{"1":{"name":"punctuation.accessor.imba"},"2":{"name":"punctuation.accessor.optional.imba"},"3":{"name":"entity.name.function.property.imba"}},"match":"(?:(?:(\\\\.)|(\\\\.\\\\.(?!\\\\s*[[:digit:]]|\\\\s+)))\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?)(?=\\\\s*={{functionOrArrowLookup}})"},{"captures":{"1":{"name":"punctuation.accessor.imba"},"2":{"name":"punctuation.accessor.optional.imba"},"3":{"name":"variable.other.constant.property.imba"}},"match":"(?:(\\\\.)|(\\\\.\\\\.(?!\\\\s*[[:digit:]]|\\\\s+)))\\\\s*(\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.imba"},"2":{"name":"punctuation.accessor.optional.imba"},"3":{"name":"variable.other.class.property.imba"}},"match":"(?:(\\\\.)|(\\\\.\\\\.(?!\\\\s*[[:digit:]]|\\\\s+)))([[:upper:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\!]?)"},{"captures":{"1":{"name":"punctuation.accessor.imba"},"2":{"name":"punctuation.accessor.optional.imba"},"3":{"name":"variable.other.property.imba"}},"match":"(?:(\\\\.)|(\\\\.\\\\.(?!\\\\s*[[:digit:]]|\\\\s+)))(\\\\#?[_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?)"},{"match":"(for own|for|if|unless|when)\\\\b","name":"keyword.other"},{"match":"require","name":"support.function.require"},{"include":"#plain-identifiers"},{"include":"#type-literal"},{"include":"#generics-literal"}]},"inline-css-selector":{"begin":"(^\\\\t+)(?!(?:[\\\\^\\\\@\\\\.\\\\%\\\\w\\\\$\\\\!\\\\-]+)(?:\\\\s*[\\\\:\\\\=]))","end":"(\\\\s*(?=(?:[\\\\^\\\\@\\\\.\\\\%\\\\w\\\\$\\\\!\\\\-]+)(?:\\\\s*[\\\\:\\\\=])|\\\\)|\\\\])|\\\\s*$)","endCaptures":{"0":{"name":"punctuation.separator.sel-properties.css"}},"name":"meta.selector.css","patterns":[{"include":"#css-selector-innards"}]},"inline-styles":{"patterns":[{"include":"#style-property"},{"include":"#css-property-values"},{"include":"#style-expr"}]},"inline-tags":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.bracket.square.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.square.end.jsdoc"}},"match":"(\\\\[)[^\\\\]]+(\\\\])(?={@(?:link|linkcode|linkplain|tutorial))","name":"constant.other.description.jsdoc"},{"begin":"({)((@)(?:link(?:code|plain)?|tutorial))\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"},"2":{"name":"storage.type.class.jsdoc"},"3":{"name":"punctuation.definition.inline.tag.jsdoc"}},"end":"}|(?=\\\\*/)","endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"name":"entity.name.type.instance.jsdoc","patterns":[{"captures":{"1":{"name":"variable.other.link.underline.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?=https?://)(?:[^|}\\\\s*]|\\\\*[/])+)(\\\\|)?"},{"captures":{"1":{"name":"variable.other.description.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?:[^{}@\\\\s|*]|\\\\*[^/])+)(\\\\|)?"}]}]},"invalid-indentation":{"patterns":[{"match":"^[\\\\ ]+","name":"invalid.whitespace"},{"match":"^\\\\t+\\\\s+","name":"invalid.whitespace"}]},"jsdoctype":{"patterns":[{"match":"\\\\G{(?:[^}*]|\\\\*[^/}])+$","name":"invalid.illegal.type.jsdoc"},{"begin":"\\\\G({)","beginCaptures":{"0":{"name":"entity.name.type.instance.jsdoc"},"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"}},"contentName":"entity.name.type.instance.jsdoc","end":"((}))\\\\s*|(?=\\\\*/)","endCaptures":{"1":{"name":"entity.name.type.instance.jsdoc"},"2":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"patterns":[{"include":"#brackets"}]}]},"keywords":{"patterns":[{"match":"(if|elif|else|unless|switch|when|then|do|import|export|for own|for|while|until|return|yield|try|catch|await|rescue|finally|throw|as|continue|break|extend|augment)(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.imba"},{"match":"(?<=export)\\\\s+(default)(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.imba"},{"match":"(?<=import)\\\\s+(type)(?=\\\\s+[\\\\w\\\\{\\\\$\\\\_])","name":"keyword.control.imba"},{"match":"(extend|global|abstract)\\\\s+(?=class|tag|abstract|mixin|interface)","name":"keyword.control.imba"},{"match":"(?<=[\\\\*\\\\}\\\\w\\\\$])\\\\s+(from)(?=\\\\s+[\\\\\\"\\\\'])","name":"keyword.control.imba"},{"match":"(def|get|set)(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.function.imba"},{"match":"(protected|private)\\\\s+(?=def|get|set)","name":"keyword.control.imba"},{"match":"(tag|class|struct|mixin|interface)(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.class.imba"},{"match":"(let|const|constructor)(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.imba"},{"match":"(prop|attr)(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.imba"},{"match":"(static)\\\\s+","name":"storage.modifier.imba"},{"match":"(declare)\\\\s+","name":"storage.modifier.imba"},{"include":"#ops"},{"match":"(=|\\\\|\\\\|=|\\\\?\\\\?=|\\\\&\\\\&=|\\\\+=|\\\\-=|\\\\*=|\\\\^=|\\\\%=)","name":"keyword.operator.assignment.imba"},{"match":"(\\\\>\\\\=?|\\\\<\\\\=?)","name":"keyword.operator.imba"},{"match":"(of|delete|\\\\!?isa|typeof|\\\\!?in|new|\\\\!?is|isnt)(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.imba"}]},"literal":{"patterns":[{"include":"#number-with-unit-literal"},{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#this-literal"},{"include":"#global-literal"},{"include":"#super-literal"},{"include":"#type-literal"},{"include":"#generics-literal"},{"include":"#string"}]},"mixin-css-selector":{"begin":"(\\\\%[\\\\w\\\\-]+)","beginCaptures":{"1":{"name":"entity.other.attribute-name.mixin.css"}},"end":"(\\\\s*(?=(?:[\\\\^\\\\@\\\\.\\\\%\\\\w\\\\$\\\\!\\\\-]+)(?:\\\\s*[\\\\:\\\\=])[^\\\\:])|\\\\s*$|(?=\\\\s+\\\\#\\\\s))","endCaptures":{"0":{"name":"punctuation.separator.sel-properties.css"}},"name":"meta.selector.css","patterns":[{"include":"#css-selector-innards"}]},"mixin-css-selector-after":{"begin":"(?<=%[\\\\w\\\\-]+)(?!(?:[\\\\^\\\\@\\\\.\\\\%\\\\w\\\\$\\\\!\\\\-]+)(?:\\\\s*[\\\\:\\\\=])[^\\\\:])","end":"(\\\\s*(?=(?:[\\\\^\\\\@\\\\.\\\\%\\\\w\\\\$\\\\!\\\\-]+)(?:\\\\s*[\\\\:\\\\=])[^\\\\:])|\\\\s*$|(?=\\\\s+\\\\#\\\\s))","endCaptures":{"0":{"name":"punctuation.separator.sel-properties.css"}},"name":"meta.selector.css","patterns":[{"include":"#css-selector-innards"}]},"mixin-declaration":{"begin":"^(\\\\t*)(\\\\%[\\\\w\\\\-]+)","beginCaptures":{"2":{"name":"entity.other.attribute-name.mixin.css"}},"end":"^(?!(\\\\1\\\\t|\\\\s*$))","name":"meta.style.imba","patterns":[{"include":"#mixin-css-selector-after"},{"include":"#css-comment"},{"include":"#nested-css-selector"},{"include":"#inline-styles"}]},"nested-css-selector":{"begin":"(^\\\\t+)(?!(?:[\\\\^\\\\@\\\\.\\\\%\\\\w\\\\$\\\\!\\\\-]+)(?:\\\\s*[\\\\:\\\\=])[^\\\\:])","end":"(\\\\s*(?=(?:[\\\\^\\\\@\\\\.\\\\%\\\\w\\\\$\\\\!\\\\-]+)(?:\\\\s*[\\\\:\\\\=])[^\\\\:])|\\\\s*$|(?=\\\\s+\\\\#\\\\s))","endCaptures":{"0":{"name":"punctuation.separator.sel-properties.css"}},"name":"meta.selector.css","patterns":[{"include":"#css-selector-innards"}]},"nested-style-declaration":{"begin":"^(\\\\t+)(?=[\\\\n^]*\\\\&)","end":"^(?!(\\\\1\\\\t|\\\\s*$))","name":"meta.style.imba","patterns":[{"include":"#nested-css-selector"},{"include":"#inline-styles"}]},"null-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))null(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.null.imba"},"number-with-unit-literal":{"patterns":[{"captures":{"1":{"name":"constant.numeric.imba"},"2":{"name":"keyword.other.unit.imba"}},"match":"([0-9]+)([a-z]+|\\\\%)"},{"captures":{"1":{"name":"constant.numeric.decimal.imba"},"2":{"name":"keyword.other.unit.imba"}},"match":"([0-9]*\\\\.[0-9]+(?:[eE][\\\\-+]?[0-9]+)?)([a-z]+|\\\\%)"}]},"numeric-literal":{"patterns":[{"captures":{"1":{"name":"storage.type.numeric.bigint.imba"}},"match":"\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.hex.imba"},{"captures":{"1":{"name":"storage.type.numeric.bigint.imba"}},"match":"\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.binary.imba"},{"captures":{"1":{"name":"storage.type.numeric.bigint.imba"}},"match":"\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.octal.imba"},{"captures":{"0":{"name":"constant.numeric.decimal.imba"},"1":{"name":"meta.delimiter.decimal.period.imba"},"2":{"name":"storage.type.numeric.bigint.imba"},"3":{"name":"meta.delimiter.decimal.period.imba"},"4":{"name":"storage.type.numeric.bigint.imba"},"5":{"name":"meta.delimiter.decimal.period.imba"},"6":{"name":"storage.type.numeric.bigint.imba"},"7":{"name":"storage.type.numeric.bigint.imba"},"8":{"name":"meta.delimiter.decimal.period.imba"},"9":{"name":"storage.type.numeric.bigint.imba"},"10":{"name":"meta.delimiter.decimal.period.imba"},"11":{"name":"storage.type.numeric.bigint.imba"},"12":{"name":"meta.delimiter.decimal.period.imba"},"13":{"name":"storage.type.numeric.bigint.imba"},"14":{"name":"storage.type.numeric.bigint.imba"}},"match":"(?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b))(?!\\\\$)"}]},"numericConstant-literal":{"patterns":[{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))NaN(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.nan.imba"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Infinity(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.infinity.imba"}]},"object-keys":{"patterns":[{"match":"[_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?\\\\:","name":"meta.object-literal.key"}]},"ops":{"patterns":[{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.spread.imba"},{"match":"\\\\*=|(?<!\\\\()/=|%=|\\\\+=|\\\\-=|\\\\?=|\\\\?\\\\?=|=\\\\?","name":"keyword.operator.assignment.compound.imba"},{"match":"\\\\^=\\\\?|\\\\|=\\\\?|\\\\~=\\\\?|\\\\&=|\\\\^=|<<=|>>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.imba"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.imba"},{"match":"===|!==|==|!=|~=","name":"keyword.operator.comparison.imba"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.imba"},{"captures":{"1":{"name":"keyword.operator.logical.imba"},"2":{"name":"keyword.operator.arithmetic.imba"}},"match":"(\\\\!)\\\\s*(/)(?![/*])"},{"match":"\\\\!|&&|\\\\|\\\\||\\\\?\\\\?|or\\\\b(?=\\\\s|$)|and\\\\b(?=\\\\s|$)|\\\\@\\\\b(?=\\\\s|$)","name":"keyword.operator.logical.imba"},{"match":"\\\\?(?=\\\\s|$)","name":"keyword.operator.bitwise.imba"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.ternary.imba"},{"match":"\\\\=","name":"keyword.operator.assignment.imba"},{"match":"--","name":"keyword.operator.decrement.imba"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.imba"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.imba"}]},"pairs":{"patterns":[{"include":"#curly-braces"},{"include":"#square-braces"},{"include":"#round-braces"}]},"plain-accessors":{"patterns":[{"captures":{"1":{"name":"punctuation.accessor.imba"},"2":{"name":"variable.other.property.imba"}},"match":"(\\\\.\\\\.?)([_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?)"}]},"plain-identifiers":{"patterns":[{"match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","name":"variable.other.constant.imba"},{"match":"[[:upper:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\!]?","name":"variable.other.class.imba"},{"match":"\\\\$\\\\d+","name":"variable.special.imba"},{"match":"\\\\$[_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?","name":"variable.other.internal.imba"},{"match":"\\\\@\\\\@+[_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?","name":"variable.other.symbol.imba"},{"match":"[_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?","name":"variable.other.readwrite.imba"},{"match":"\\\\@[_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?","name":"variable.other.instance.imba"},{"match":"\\\\#+[_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?","name":"variable.other.private.imba"},{"match":"\\\\:[_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?","name":"string.symbol.imba"}]},"punctuation-accessor":{"captures":{"1":{"name":"punctuation.accessor.imba"},"2":{"name":"punctuation.accessor.optional.imba"}},"match":"(?:(\\\\.)|(\\\\.\\\\.(?!\\\\s*[[:digit:]]|\\\\s+)))"},"punctuation-comma":{"match":",","name":"punctuation.separator.comma.imba"},"punctuation-semicolon":{"match":";","name":"punctuation.terminator.statement.imba"},"qstring-double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.imba"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.imba"}},"name":"string.quoted.double.imba","patterns":[{"include":"#template-substitution-element"},{"include":"#string-character-escape"}]},"qstring-single":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.imba"}},"end":"(\\\\')|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.imba"},"2":{"name":"invalid.illegal.newline.imba"}},"name":"string.quoted.single.imba","patterns":[{"include":"#string-character-escape"}]},"qstring-single-multi":{"begin":"'''","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.imba"}},"end":"'''","endCaptures":{"0":{"name":"punctuation.definition.string.end.imba"}},"name":"string.quoted.single.imba","patterns":[{"include":"#string-character-escape"}]},"regex":{"patterns":[{"begin":"(?<!\\\\+\\\\+|--|})(?<=[=(:,\\\\[?+!]|^return|[^\\\\._$[:alnum:]]return|^case|[^\\\\._$[:alnum:]]case|=>|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[\\\\()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^\\\\)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([gimsuy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.imba"}},"end":"(/)([gimsuy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.imba"},"2":{"name":"keyword.other.imba"}},"name":"string.regexp.imba","patterns":[{"include":"#regexp"}]},{"begin":"((?<![_$[:alnum:])\\\\]]|\\\\+\\\\+|--|}|\\\\*\\\\/)|((?<=^return|[^\\\\._$[:alnum:]]return|^case|[^\\\\._$[:alnum:]]case))\\\\s*)\\\\/(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\])+\\\\/([gimsuy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.imba"}},"end":"(/)([gimsuy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.imba"},"2":{"name":"keyword.other.imba"}},"name":"string.regexp.imba","patterns":[{"include":"#regexp"}]}]},"regex-character-class":{"patterns":[{"match":"\\\\\\\\[wWsSdDtrnvf]|\\\\.","name":"constant.other.character-class.regexp"},{"match":"\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})","name":"constant.character.numeric.regexp"},{"match":"\\\\\\\\c[A-Z]","name":"constant.character.control.regexp"},{"match":"\\\\\\\\.","name":"constant.character.escape.backslash.regexp"}]},"regexp":{"patterns":[{"match":"\\\\\\\\[bB]|\\\\^|\\\\$","name":"keyword.control.anchor.regexp"},{"captures":{"0":{"name":"keyword.other.back-reference.regexp"},"1":{"name":"variable.other.regexp"}},"match":"\\\\\\\\[1-9]\\\\d*|\\\\\\\\k<([a-zA-Z_$][\\\\w$]*)>"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?<!))","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"},"5":{"name":"meta.assertion.look-behind.regexp"},"6":{"name":"meta.assertion.negative-look-behind.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.assertion.regexp","patterns":[{"include":"#regexp"}]},{"begin":"\\\\((?:(\\\\?:)|(?:\\\\?<([a-zA-Z_$][\\\\w$]*)>))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))\\\\-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"root":{"patterns":[{"include":"#block"}]},"round-braces":{"begin":"\\\\s*(\\\\()","beginCaptures":{"1":{"name":"meta.brace.round.imba"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.imba"}},"patterns":[{"include":"#expr"},{"include":"#punctuation-comma"}]},"single-line-comment-consuming-line-ending":{"begin":"(^[ \\\\t]+)?((//|\\\\#\\\\s)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.imba"},"2":{"name":"comment.line.double-slash.imba"},"3":{"name":"punctuation.definition.comment.imba"},"4":{"name":"storage.type.internaldeclaration.imba"},"5":{"name":"punctuation.decorator.internaldeclaration.imba"}},"contentName":"comment.line.double-slash.imba","end":"(?=^)"},"square-braces":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.imba"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.imba"}},"patterns":[{"include":"#expr"},{"include":"#punctuation-comma"}]},"string":{"patterns":[{"include":"#qstring-single-multi"},{"include":"#qstring-double-multi"},{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template"}]},"string-character-escape":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\{[0-9A-Fa-f]+\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.imba"},"style-declaration":{"begin":"^(\\\\t*)(?:(global|local|export)\\\\s+)?(?:(scoped)\\\\s+)?(css)\\\\s","beginCaptures":{"2":{"name":"keyword.control.export.imba"},"3":{"name":"storage.modifier.imba"},"4":{"name":"storage.type.style.imba"}},"end":"^(?!(\\\\1\\\\t|\\\\s*$))","name":"meta.style.imba","patterns":[{"include":"#css-selector"},{"include":"#css-comment"},{"include":"#nested-css-selector"},{"include":"#inline-styles"}]},"style-expr":{"patterns":[{"captures":{"1":{"name":"constant.numeric.integer.decimal.css"},"2":{"name":"keyword.other.unit.css"}},"match":"(\\\\b[0-9][0-9_]*)(\\\\w+|%)?"},{"match":"--[_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?","name":"support.constant.property-value.var.css"},{"match":"(x+s|sm-|md-|lg-|sm|md|lg|x+l|hg|x+h)(?![\\\\w-])","name":"support.constant.property-value.size.css"},{"match":"[_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?","name":"support.constant.property-value.css"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","name":"meta.function.css","patterns":[{"include":"#style-expr"}]}]},"style-property":{"patterns":[{"begin":"(?=(?:[\\\\^\\\\@\\\\.\\\\%\\\\w\\\\$\\\\!\\\\-]+)(?:\\\\s*[\\\\:\\\\=]))","beginCaptures":{"1":{"name":"support.function.calc.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\s*[\\\\:\\\\=]","endCaptures":{"0":{"name":"punctuation.separator.key-value.css"}},"name":"meta.property-name.css","patterns":[{"match":"(?:--|\\\\$)[\\\\w\\\\-\\\\$]+","name":"support.type.property-name.variable.css"},{"match":"\\\\@[\\\\!\\\\<\\\\>]?[0-9]+","name":"support.type.property-name.modifier.breakpoint.css"},{"match":"\\\\^?\\\\@+[\\\\w\\\\-\\\\$]+","name":"support.type.property-name.modifier.css"},{"match":"\\\\^?\\\\.+[\\\\w\\\\-\\\\$]+","name":"support.type.property-name.modifier.flag.css"},{"match":"\\\\^?\\\\%+[\\\\w\\\\-\\\\$]+","name":"support.type.property-name.modifier.state.css"},{"match":"\\\\.\\\\.[\\\\w\\\\-\\\\$]+|\\\\^+[\\\\.\\\\@\\\\%][\\\\w\\\\-\\\\$]+","name":"support.type.property-name.modifier.up.css"},{"match":"\\\\.[\\\\w\\\\-\\\\$]+","name":"support.type.property-name.modifier.is.css"},{"match":"[\\\\w\\\\-\\\\$]+","name":"support.type.property-name.css"}]}]},"super-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))super\\\\b(?!\\\\$)","name":"variable.language.super.imba"},"tag-attr-name":{"begin":"([\\\\w$_]+(?:\\\\-[\\\\w$_]+)*)","beginCaptures":{"0":{"name":"entity.other.attribute-name.imba"}},"contentName":"entity.other.attribute-name.imba","end":"(?=[\\\\s\\\\.\\\\[\\\\>\\\\=])"},"tag-attr-value":{"begin":"(\\\\=)","beginCaptures":{"0":{"name":"keyword.operator.tag.assignment"}},"contentName":"meta.tag.attribute-value.imba","end":"(?=>|\\\\s)","patterns":[{"include":"#expr"}]},"tag-classname":{"begin":"\\\\.","contentName":"entity.other.attribute-name.class.css","end":"(?=[\\\\.\\\\[\\\\>\\\\s\\\\(\\\\=])","patterns":[{"include":"#tag-interpolated-content"}]},"tag-content":{"patterns":[{"include":"#tag-name"},{"include":"#tag-expr-name"},{"include":"#tag-interpolated-content"},{"include":"#tag-interpolated-parens"},{"include":"#tag-interpolated-brackets"},{"include":"#tag-event-handler"},{"include":"#tag-mixin-name"},{"include":"#tag-classname"},{"include":"#tag-ref"},{"include":"#tag-attr-value"},{"include":"#tag-attr-name"},{"include":"#comment"}]},"tag-event-handler":{"begin":"(\\\\@[\\\\w$_]+(?:\\\\-[\\\\w$_]+)*)","beginCaptures":{"0":{"name":"entity.other.event-name.imba"}},"contentName":"entity.other.tag.event","end":"(?=[\\\\[\\\\>\\\\s\\\\=])","patterns":[{"include":"#tag-interpolated-content"},{"include":"#tag-interpolated-parens"},{"begin":"\\\\.","beginCaptures":{"0":{"name":"punctuation.section.tag"}},"end":"(?=[\\\\.\\\\[\\\\>\\\\s\\\\=]|$)","name":"entity.other.event-modifier.imba","patterns":[{"include":"#tag-interpolated-parens"},{"include":"#tag-interpolated-content"}]}]},"tag-expr-name":{"begin":"(?<=<)(?=[\\\\w\\\\{])","contentName":"entity.name.tag.imba","end":"(?=[\\\\%\\\\$\\\\#\\\\.\\\\[\\\\>\\\\s\\\\(])","patterns":[{"include":"#tag-interpolated-content"}]},"tag-interpolated-brackets":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.tag.imba"}},"contentName":"meta.embedded.line.imba","end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.tag.imba"}},"name":"meta.tag.expression.imba","patterns":[{"include":"#inline-css-selector"},{"include":"#inline-styles"}]},"tag-interpolated-content":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.tag.imba"}},"contentName":"meta.embedded.line.imba","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.tag.imba"}},"name":"meta.tag.expression.imba","patterns":[{"include":"#expression"}]},"tag-interpolated-parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.tag.imba"}},"contentName":"meta.embedded.line.imba","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.tag.imba"}},"name":"meta.tag.expression.imba","patterns":[{"include":"#expression"}]},"tag-literal":{"patterns":[{"begin":"(<)(?=[\\\\%\\\\~\\\\w\\\\{\\\\[\\\\.\\\\#\\\\$\\\\@\\\\(])","beginCaptures":{"1":{"name":"punctuation.section.tag.open.imba"}},"contentName":"meta.tag.attributes.imba","end":"(>)","endCaptures":{"1":{"name":"punctuation.section.tag.close.imba"}},"name":"meta.tag.imba","patterns":[{"include":"#tag-content"}]}]},"tag-mixin-name":{"match":"(\\\\%[\\\\w\\\\-]+)","name":"entity.other.tag-mixin.imba"},"tag-name":{"patterns":[{"match":"(?<=<)(self|global|slot)(?=[\\\\.\\\\[\\\\>\\\\s\\\\(])","name":"entity.name.tag.special.imba"}]},"tag-ref":{"match":"(\\\\$[\\\\w\\\\-]+)","name":"entity.other.tag-ref.imba"},"template":{"patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?)({{typeArguments}}\\\\s*)?\`)","end":"(?=\`)","name":"string.template.imba","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?))","end":"(?=({{typeArguments}}\\\\s*)?\`)","patterns":[{"match":"([_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?)","name":"entity.name.function.tagged-template.imba"}]}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?)\\\\s*(?=({{typeArguments}}\\\\s*)\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.imba"}},"end":"(?=\`)","name":"string.template.imba","patterns":[{"include":"#type-arguments"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*(?:\\\\-[_$[:alnum:]]+)*[\\\\?\\\\!]?)?(\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.imba"},"2":{"name":"punctuation.definition.string.template.begin.imba"}},"end":"\`","endCaptures":{"0":{"name":"punctuation.definition.string.template.end.imba"}},"name":"string.template.imba","patterns":[{"include":"#template-substitution-element"},{"include":"#string-character-escape"}]}]},"template-substitution-element":{"begin":"(?<!\\\\\\\\)\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.imba"}},"contentName":"meta.embedded.line.imba","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.imba"}},"name":"meta.template.expression.imba","patterns":[{"include":"#expr"}]},"this-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(this|self)\\\\b(?!\\\\$)","name":"variable.language.this.imba"},"type-annotation":{"patterns":[{"include":"#type-literal"}]},"type-brackets":{"patterns":[{"begin":"{","end":"}","patterns":[{"include":"#type-brackets"}]},{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#type-brackets"}]},{"begin":"\\\\<","end":"\\\\>","patterns":[{"include":"#type-brackets"}]},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#type-brackets"}]}]},"type-literal":{"begin":"(\\\\\\\\)","beginCaptures":{"1":{"name":"meta.type.annotation.open.imba"}},"end":"(?=[\\\\s\\\\]\\\\)\\\\,\\\\.\\\\=\\\\}]|$)","name":"meta.type.annotation.imba","patterns":[{"include":"#type-brackets"}]},"undefined-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))undefined(?![\\\\?_\\\\-$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.undefined.imba"}},"scopeName":"source.imba","embeddedLangs":["typescript"]}`)),Oae=[...Ge,Sae]});var C$={};x(C$,{default:()=>Lae});var Nae,Lae,_$=_(()=>{Nae=Object.freeze(JSON.parse(`{"displayName":"INI","name":"ini","patterns":[{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ini"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.ini"}},"end":"\\\\n","name":"comment.line.number-sign.ini"}]},{"begin":"(^[ \\\\t]+)?(?=;)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ini"}},"end":"(?!\\\\G)","patterns":[{"begin":";","beginCaptures":{"0":{"name":"punctuation.definition.comment.ini"}},"end":"\\\\n","name":"comment.line.semicolon.ini"}]},{"captures":{"1":{"name":"keyword.other.definition.ini"},"2":{"name":"punctuation.separator.key-value.ini"}},"match":"\\\\b([a-zA-Z0-9_.-]+)\\\\b\\\\s*(=)"},{"captures":{"1":{"name":"punctuation.definition.entity.ini"},"3":{"name":"punctuation.definition.entity.ini"}},"match":"^(\\\\[)(.*?)(\\\\])","name":"entity.name.section.group-title.ini"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ini"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ini"}},"name":"string.quoted.single.ini","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.ini"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ini"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ini"}},"name":"string.quoted.double.ini"}],"scopeName":"source.ini","aliases":["properties"]}`)),Lae=[Nae]});var $ae,B$,x$=_(()=>{Ye();$ae=Object.freeze(JSON.parse(`{"displayName":"jinja-html","firstLineMatch":"^{% extends [\\"'][^\\"']+[\\"'] %}","foldingStartMarker":"(<(?i:(head|table|tr|div|style|script|ul|ol|form|dl))\\\\b.*?>|{%\\\\s*(block|filter|for|if|macro|raw))","foldingStopMarker":"(</(?i:(head|table|tr|div|style|script|ul|ol|form|dl))\\\\b.*?>|{%\\\\s*(endblock|endfilter|endfor|endif|endmacro|endraw)\\\\s*%})","name":"jinja-html","patterns":[{"include":"source.jinja"},{"include":"text.html.basic"}],"scopeName":"text.html.jinja","embeddedLangs":["html"]}`)),B$=[...ce,$ae]});var v$={};x(v$,{default:()=>jae});var Rae,jae,E$=_(()=>{x$();Rae=Object.freeze(JSON.parse(`{"displayName":"Jinja","foldingStartMarker":"({%\\\\s*(block|filter|for|if|macro|raw))","foldingStopMarker":"({%\\\\s*(endblock|endfilter|endfor|endif|endmacro|endraw)\\\\s*%})","name":"jinja","patterns":[{"begin":"({%)\\\\s*(raw)\\\\s*(%})","captures":{"1":{"name":"entity.other.jinja.delimiter.tag"},"2":{"name":"keyword.control.jinja"},"3":{"name":"entity.other.jinja.delimiter.tag"}},"end":"({%)\\\\s*(endraw)\\\\s*(%})","name":"comment.block.jinja.raw"},{"include":"#comments"},{"begin":"{{-?","captures":[{"name":"variable.entity.other.jinja.delimiter"}],"end":"-?}}","name":"variable.meta.scope.jinja","patterns":[{"include":"#expression"}]},{"begin":"{%-?","captures":[{"name":"entity.other.jinja.delimiter.tag"}],"end":"-?%}","name":"meta.scope.jinja.tag","patterns":[{"include":"#expression"}]}],"repository":{"comments":{"begin":"{#-?","captures":[{"name":"entity.other.jinja.delimiter.comment"}],"end":"-?#}","name":"comment.block.jinja","patterns":[{"include":"#comments"}]},"escaped_char":{"match":"\\\\\\\\x[0-9A-F]{2}","name":"constant.character.escape.hex.jinja"},"escaped_unicode_char":{"captures":{"1":{"name":"constant.character.escape.unicode.16-bit-hex.jinja"},"2":{"name":"constant.character.escape.unicode.32-bit-hex.jinja"},"3":{"name":"constant.character.escape.unicode.name.jinja"}},"match":"(\\\\\\\\U[0-9A-Fa-f]{8})|(\\\\\\\\u[0-9A-Fa-f]{4})|(\\\\\\\\N\\\\{[a-zA-Z ]+\\\\})"},"expression":{"patterns":[{"captures":{"1":{"name":"keyword.control.jinja"},"2":{"name":"variable.other.jinja.block"}},"match":"\\\\s*\\\\b(block)\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.control.jinja"},"2":{"name":"variable.other.jinja.filter"}},"match":"\\\\s*\\\\b(filter)\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.control.jinja"},"2":{"name":"variable.other.jinja.test"}},"match":"\\\\s*\\\\b(is)\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.control.jinja"}},"match":"(?<=\\\\{\\\\%-|\\\\{\\\\%)\\\\s*\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b(?!\\\\s*[,=])"},{"match":"\\\\b(and|else|if|in|import|not|or|recursive|with(out)?\\\\s+context)\\\\b","name":"keyword.control.jinja"},{"match":"\\\\b(true|false|none)\\\\b","name":"constant.language.jinja"},{"match":"\\\\b(loop|super|self|varargs|kwargs)\\\\b","name":"variable.language.jinja"},{"match":"[a-zA-Z_][a-zA-Z0-9_]*","name":"variable.other.jinja"},{"match":"(\\\\+|\\\\-|\\\\*\\\\*|\\\\*|//|/|%)","name":"keyword.operator.arithmetic.jinja"},{"captures":{"1":{"name":"punctuation.other.jinja"},"2":{"name":"variable.other.jinja.filter"}},"match":"(\\\\|)([a-zA-Z_][a-zA-Z0-9_]*)"},{"captures":{"1":{"name":"punctuation.other.jinja"},"2":{"name":"variable.other.jinja.attribute"}},"match":"(\\\\.)([a-zA-Z_][a-zA-Z0-9_]*)"},{"begin":"\\\\[","captures":[{"name":"punctuation.other.jinja"}],"end":"\\\\]","patterns":[{"include":"#expression"}]},{"begin":"\\\\(","captures":[{"name":"punctuation.other.jinja"}],"end":"\\\\)","patterns":[{"include":"#expression"}]},{"begin":"\\\\{","captures":[{"name":"punctuation.other.jinja"}],"end":"\\\\}","patterns":[{"include":"#expression"}]},{"match":"(\\\\.|:|\\\\||,)","name":"punctuation.other.jinja"},{"match":"(==|<=|=>|<|>|!=)","name":"keyword.operator.comparison.jinja"},{"match":"=","name":"keyword.operator.assignment.jinja"},{"begin":"\\"","beginCaptures":[{"name":"punctuation.definition.string.begin.jinja"}],"end":"\\"","endCaptures":[{"name":"punctuation.definition.string.end.jinja"}],"name":"string.quoted.double.jinja","patterns":[{"include":"#string"}]},{"begin":"'","beginCaptures":[{"name":"punctuation.definition.string.begin.jinja"}],"end":"'","endCaptures":[{"name":"punctuation.definition.string.end.jinja"}],"name":"string.quoted.single.jinja","patterns":[{"include":"#string"}]},{"begin":"@/","beginCaptures":[{"name":"punctuation.definition.regexp.begin.jinja"}],"end":"/","endCaptures":[{"name":"punctuation.definition.regexp.end.jinja"}],"name":"string.regexp.jinja","patterns":[{"include":"#simple_escapes"}]}]},"simple_escapes":{"captures":{"1":{"name":"constant.character.escape.newline.jinja"},"2":{"name":"constant.character.escape.backlash.jinja"},"3":{"name":"constant.character.escape.double-quote.jinja"},"4":{"name":"constant.character.escape.single-quote.jinja"},"5":{"name":"constant.character.escape.bell.jinja"},"6":{"name":"constant.character.escape.backspace.jinja"},"7":{"name":"constant.character.escape.formfeed.jinja"},"8":{"name":"constant.character.escape.linefeed.jinja"},"9":{"name":"constant.character.escape.return.jinja"},"10":{"name":"constant.character.escape.tab.jinja"},"11":{"name":"constant.character.escape.vertical-tab.jinja"}},"match":"(\\\\\\\\\\\\n)|(\\\\\\\\\\\\\\\\)|(\\\\\\\\\\\\\\")|(\\\\\\\\')|(\\\\\\\\a)|(\\\\\\\\b)|(\\\\\\\\f)|(\\\\\\\\n)|(\\\\\\\\r)|(\\\\\\\\t)|(\\\\\\\\v)"},"string":{"patterns":[{"include":"#simple_escapes"},{"include":"#escaped_char"},{"include":"#escaped_unicode_char"}]}},"scopeName":"source.jinja","embeddedLangs":["jinja-html"]}`)),jae=[...B$,Rae]});var Q$={};x(Q$,{default:()=>Mae});var Pae,Mae,I$=_(()=>{Qe();Pae=Object.freeze(JSON.parse(`{"displayName":"Jison","fileTypes":["jison"],"injections":{"L:(meta.action.jison - (comment | string)), source.js.embedded.jison - (comment | string), source.js.embedded.source - (comment | string.quoted.double | string.quoted.single)":{"patterns":[{"match":"\\\\\${2}","name":"variable.language.semantic-value.jison"},{"match":"@\\\\$","name":"variable.language.result-location.jison"},{"match":"##\\\\$|\\\\byysp\\\\b","name":"variable.language.stack-index-0.jison"},{"match":"#\\\\S+#","name":"support.variable.token-reference.jison"},{"match":"#\\\\$","name":"variable.language.result-id.jison"},{"match":"\\\\$(?:-?\\\\d+|[[:alpha:]_](?:[\\\\w-]*\\\\w)?)","name":"support.variable.token-value.jison"},{"match":"@(?:-?\\\\d+|[[:alpha:]_](?:[\\\\w-]*\\\\w)?)","name":"support.variable.token-location.jison"},{"match":"##(?:-?\\\\d+|[[:alpha:]_](?:[\\\\w-]*\\\\w)?)","name":"support.variable.stack-index.jison"},{"match":"#(?:-?\\\\d+|[[:alpha:]_](?:[\\\\w-]*\\\\w)?)","name":"support.variable.token-id.jison"},{"match":"\\\\byy(?:l(?:eng|ineno|oc|stack)|rulelength|s(?:tate|s?tack)|text|vstack)\\\\b","name":"variable.language.jison"},{"match":"\\\\byy(?:clearin|erro[kr])\\\\b","name":"keyword.other.jison"}]}},"name":"jison","patterns":[{"begin":"%%","beginCaptures":{"0":{"name":"meta.separator.section.jison"}},"end":"\\\\z","patterns":[{"begin":"%%","beginCaptures":{"0":{"name":"meta.separator.section.jison"}},"end":"\\\\z","patterns":[{"begin":"\\\\G","contentName":"source.js.embedded.jison","end":"\\\\z","name":"meta.section.epilogue.jison","patterns":[{"include":"#epilogue_section"}]}]},{"begin":"\\\\G","end":"(?=%%)","name":"meta.section.rules.jison","patterns":[{"include":"#rules_section"}]}]},{"begin":"^","end":"(?=%%)","name":"meta.section.declarations.jison","patterns":[{"include":"#declarations_section"}]}],"repository":{"actions":{"patterns":[{"begin":"\\\\{\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.action.begin.jison"}},"contentName":"source.js.embedded.jison","end":"\\\\}\\\\}","endCaptures":{"0":{"name":"punctuation.definition.action.end.jison"}},"name":"meta.action.jison","patterns":[{"include":"source.js"}]},{"begin":"(?=%\\\\{)","end":"(?<=%\\\\})","name":"meta.action.jison","patterns":[{"include":"#user_code_blocks"}]}]},"comments":{"patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.jison"}},"end":"$","name":"comment.line.double-slash.jison"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.jison"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.jison"}},"name":"comment.block.jison"}]},"declarations_section":{"patterns":[{"include":"#comments"},{"begin":"^\\\\s*(%lex)\\\\s*$","beginCaptures":{"1":{"name":"entity.name.tag.lexer.begin.jison"}},"end":"^\\\\s*(/lex)\\\\b","endCaptures":{"1":{"name":"entity.name.tag.lexer.end.jison"}},"patterns":[{"begin":"%%","beginCaptures":{"0":{"name":"meta.separator.section.jisonlex"}},"end":"(?=/lex)","patterns":[{"begin":"^%%","beginCaptures":{"0":{"name":"meta.separator.section.jisonlex"}},"end":"(?=/lex)","patterns":[{"begin":"\\\\G","contentName":"source.js.embedded.jisonlex","end":"(?=/lex)","name":"meta.section.user-code.jisonlex","patterns":[{"include":"source.jisonlex#user_code_section"}]}]},{"begin":"\\\\G","end":"^(?=%%|/lex)","name":"meta.section.rules.jisonlex","patterns":[{"include":"source.jisonlex#rules_section"}]}]},{"begin":"^","end":"(?=%%|/lex)","name":"meta.section.definitions.jisonlex","patterns":[{"include":"source.jisonlex#definitions_section"}]}]},{"begin":"(?=%\\\\{)","end":"(?<=%\\\\})","name":"meta.section.prologue.jison","patterns":[{"include":"#user_code_blocks"}]},{"include":"#options_declarations"},{"match":"%(ebnf|left|nonassoc|parse-param|right|start)\\\\b","name":"keyword.other.declaration.$1.jison"},{"include":"#include_declarations"},{"begin":"%(code)\\\\b","beginCaptures":{"0":{"name":"keyword.other.declaration.$1.jison"}},"end":"$","name":"meta.code.jison","patterns":[{"include":"#comments"},{"include":"#rule_actions"},{"match":"(init|required)","name":"keyword.other.code-qualifier.$1.jison"},{"include":"#quoted_strings"},{"match":"\\\\b[[:alpha:]_](?:[\\\\w-]*\\\\w)?\\\\b","name":"string.unquoted.jison"}]},{"begin":"%(parser-type)\\\\b","beginCaptures":{"0":{"name":"keyword.other.declaration.$1.jison"}},"end":"$","name":"meta.parser-type.jison","patterns":[{"include":"#comments"},{"include":"#quoted_strings"},{"match":"\\\\b[[:alpha:]_](?:[\\\\w-]*\\\\w)?\\\\b","name":"string.unquoted.jison"}]},{"begin":"%(token)\\\\b","beginCaptures":{"0":{"name":"keyword.other.declaration.$1.jison"}},"end":"$|(%%|;)","endCaptures":{"1":{"name":"punctuation.terminator.declaration.token.jison"}},"name":"meta.token.jison","patterns":[{"include":"#comments"},{"include":"#numbers"},{"include":"#quoted_strings"},{"match":"<[[:alpha:]_](?:[\\\\w-]*\\\\w)?>","name":"invalid.unimplemented.jison"},{"match":"\\\\S+","name":"entity.other.token.jison"}]},{"match":"%(debug|import)\\\\b","name":"keyword.other.declaration.$1.jison"},{"match":"%prec\\\\b","name":"invalid.illegal.jison"},{"match":"%[[:alpha:]_](?:[\\\\w-]*\\\\w)?\\\\b","name":"invalid.unimplemented.jison"},{"include":"#numbers"},{"include":"#quoted_strings"}]},"epilogue_section":{"patterns":[{"include":"#user_code_include_declarations"},{"include":"source.js"}]},"include_declarations":{"patterns":[{"begin":"(%(include))\\\\s*","beginCaptures":{"1":{"name":"keyword.other.declaration.$2.jison"}},"end":"(?<=['\\"])|(?=\\\\s)","name":"meta.include.jison","patterns":[{"include":"#include_paths"}]}]},"include_paths":{"patterns":[{"include":"#quoted_strings"},{"begin":"(?=\\\\S)","end":"(?=\\\\s)","name":"string.unquoted.jison","patterns":[{"include":"source.js#string_escapes"}]}]},"numbers":{"patterns":[{"captures":{"1":{"name":"storage.type.number.jison"},"2":{"name":"constant.numeric.integer.hexadecimal.jison"}},"match":"(0[Xx])([0-9A-Fa-f]+)"},{"match":"\\\\d+","name":"constant.numeric.integer.decimal.jison"}]},"options_declarations":{"patterns":[{"begin":"%options\\\\b","beginCaptures":{"0":{"name":"keyword.other.options.jison"}},"end":"^(?=\\\\S|\\\\s*$)","name":"meta.options.jison","patterns":[{"include":"#comments"},{"match":"\\\\b[[:alpha:]_](?:[\\\\w-]*\\\\w)?\\\\b","name":"entity.name.constant.jison"},{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.option.assignment.jison"}},"end":"(?<=['\\"])|(?=\\\\s)","patterns":[{"include":"#comments"},{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.$1.jison"},{"include":"#numbers"},{"include":"#quoted_strings"},{"match":"\\\\S+","name":"string.unquoted.jison"}]},{"include":"#quoted_strings"}]}]},"quoted_strings":{"patterns":[{"begin":"\\"","end":"\\"","name":"string.quoted.double.jison","patterns":[{"include":"source.js#string_escapes"}]},{"begin":"'","end":"'","name":"string.quoted.single.jison","patterns":[{"include":"source.js#string_escapes"}]}]},"rule_actions":{"patterns":[{"include":"#actions"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.action.begin.jison"}},"contentName":"source.js.embedded.jison","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.action.end.jison"}},"name":"meta.action.jison","patterns":[{"include":"source.js"}]},{"include":"#include_declarations"},{"begin":"->|\u2192","beginCaptures":{"0":{"name":"punctuation.definition.action.arrow.jison"}},"contentName":"source.js.embedded.jison","end":"$","name":"meta.action.jison","patterns":[{"include":"source.js"}]}]},"rules_section":{"patterns":[{"include":"#comments"},{"include":"#actions"},{"include":"#include_declarations"},{"begin":"\\\\b[[:alpha:]_](?:[\\\\w-]*\\\\w)?\\\\b","beginCaptures":{"0":{"name":"entity.name.constant.rule-result.jison"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.rule.jison"}},"name":"meta.rule.jison","patterns":[{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.rule-components.assignment.jison"}},"end":"(?=;)","name":"meta.rule-components.jison","patterns":[{"include":"#comments"},{"include":"#quoted_strings"},{"captures":{"1":{"name":"punctuation.definition.named-reference.begin.jison"},"2":{"name":"entity.name.other.reference.jison"},"3":{"name":"punctuation.definition.named-reference.end.jison"}},"match":"(\\\\[)([[:alpha:]_](?:[\\\\w-]*\\\\w)?)(\\\\])"},{"begin":"(%(prec))\\\\s*","beginCaptures":{"1":{"name":"keyword.other.$2.jison"}},"end":"(?<=['\\"])|(?=\\\\s)","name":"meta.prec.jison","patterns":[{"include":"#comments"},{"include":"#quoted_strings"},{"begin":"(?=\\\\S)","end":"(?=\\\\s)","name":"constant.other.token.jison"}]},{"match":"\\\\|","name":"keyword.operator.rule-components.separator.jison"},{"match":"\\\\b(?:EOF|error)\\\\b","name":"keyword.other.$0.jison"},{"match":"(?:%(?:e(?:mpty|psilon))|\\\\b[\u0190\u025B\u03B5\u03F5])\\\\b","name":"keyword.other.empty.jison"},{"include":"#rule_actions"}]}]}]},"user_code_blocks":{"patterns":[{"begin":"%\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.user-code-block.begin.jison"}},"contentName":"source.js.embedded.jison","end":"%\\\\}","endCaptures":{"0":{"name":"punctuation.definition.user-code-block.end.jison"}},"name":"meta.user-code-block.jison","patterns":[{"include":"source.js"}]}]},"user_code_include_declarations":{"patterns":[{"begin":"^(%(include))\\\\s*","beginCaptures":{"1":{"name":"keyword.other.declaration.$2.jison"}},"end":"(?<=['\\"])|(?=\\\\s)","name":"meta.include.jison","patterns":[{"include":"#include_paths"}]}]}},"scopeName":"source.jison","embeddedLangs":["javascript"]}`)),Mae=[...J,Pae]});var D$={};x(D$,{default:()=>qae});var Tae,qae,F$=_(()=>{Tae=Object.freeze(JSON.parse(`{"displayName":"JSON5","fileTypes":["json5"],"name":"json5","patterns":[{"include":"#comments"},{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json5"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json5"}},"name":"meta.structure.array.json5","patterns":[{"include":"#comments"},{"include":"#value"},{"match":",","name":"punctuation.separator.array.json5"},{"match":"[^\\\\s\\\\]]","name":"invalid.illegal.expected-array-separator.json5"}]},"comments":{"patterns":[{"match":"/{2}.*","name":"comment.single.json5"},{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json5"}},"end":"\\\\*/","name":"comment.block.documentation.json5"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json5"}},"end":"\\\\*/","name":"comment.block.json5"}]},"constant":{"match":"\\\\b(?:true|false|null|Infinity|NaN)\\\\b","name":"constant.language.json5"},"infinity":{"match":"(-)*\\\\b(?:Infinity|NaN)\\\\b","name":"constant.language.json5"},"key":{"name":"string.key.json5","patterns":[{"include":"#stringSingle"},{"include":"#stringDouble"},{"match":"[a-zA-Z0-9_-]","name":"string.key.json5"}]},"number":{"patterns":[{"comment":"handles hexadecimal numbers","match":"(0x)[0-9a-fA-f]*","name":"constant.hex.numeric.json5"},{"comment":"handles integer and decimal numbers","match":"[+-.]?(?=[1-9]|0(?!\\\\d))\\\\d+(\\\\.\\\\d+)?([eE][+-]?\\\\d+)?","name":"constant.dec.numeric.json5"}]},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json5"}},"comment":"a json5 object","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json5"}},"name":"meta.structure.dictionary.json5","patterns":[{"include":"#comments"},{"comment":"the json5 object key","include":"#key"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json5"}},"end":"(,)|(?=\\\\})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json5"}},"name":"meta.structure.dictionary.value.json5","patterns":[{"comment":"the json5 object value","include":"#value"},{"match":"[^\\\\s,]","name":"invalid.illegal.expected-dictionary-separator.json5"}]},{"match":"[^\\\\s\\\\}]","name":"invalid.illegal.expected-dictionary-separator.json5"}]},"stringDouble":{"begin":"[\\"]","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json5"}},"end":"[\\"]","endCaptures":{"0":{"name":"punctuation.definition.string.end.json5"}},"name":"string.quoted.json5","patterns":[{"match":"(?:\\\\\\\\(?:[\\"\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4}))","name":"constant.character.escape.json5"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json5"}]},"stringSingle":{"begin":"[']","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json5"}},"end":"[']","endCaptures":{"0":{"name":"punctuation.definition.string.end.json5"}},"name":"string.quoted.json5","patterns":[{"match":"(?:\\\\\\\\(?:[\\"\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4}))","name":"constant.character.escape.json5"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json5"}]},"value":{"comment":"the 'value' diagram at http://json.org","patterns":[{"include":"#constant"},{"include":"#infinity"},{"include":"#number"},{"include":"#stringSingle"},{"include":"#stringDouble"},{"include":"#array"},{"include":"#object"}]}},"scopeName":"source.json5"}`)),qae=[Tae]});var S$={};x(S$,{default:()=>zae});var Gae,zae,O$=_(()=>{Gae=Object.freeze(JSON.parse('{"displayName":"JSON with Comments","name":"jsonc","patterns":[{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json.comments"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json.comments"}},"name":"meta.structure.array.json.comments","patterns":[{"include":"#value"},{"match":",","name":"punctuation.separator.array.json.comments"},{"match":"[^\\\\s\\\\]]","name":"invalid.illegal.expected-array-separator.json.comments"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json.comments"}},"end":"\\\\*/","name":"comment.block.documentation.json.comments"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json.comments"}},"end":"\\\\*/","name":"comment.block.json.comments"},{"captures":{"1":{"name":"punctuation.definition.comment.json.comments"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.js"}]},"constant":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.json.comments"},"number":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[eE][+-]?\\\\d+)?)?","name":"constant.numeric.json.comments"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json.comments"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json.comments"}},"name":"meta.structure.dictionary.json.comments","patterns":[{"comment":"the JSON object key","include":"#objectkey"},{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json.comments"}},"end":"(,)|(?=\\\\})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json.comments"}},"name":"meta.structure.dictionary.value.json.comments","patterns":[{"comment":"the JSON object value","include":"#value"},{"match":"[^\\\\s,]","name":"invalid.illegal.expected-dictionary-separator.json.comments"}]},{"match":"[^\\\\s\\\\}]","name":"invalid.illegal.expected-dictionary-separator.json.comments"}]},"objectkey":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.support.type.property-name.begin.json.comments"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.support.type.property-name.end.json.comments"}},"name":"string.json.comments support.type.property-name.json.comments","patterns":[{"include":"#stringcontent"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json.comments"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.json.comments"}},"name":"string.quoted.double.json.comments","patterns":[{"include":"#stringcontent"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\(?:[\\"\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})","name":"constant.character.escape.json.comments"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json.comments"}]},"value":{"patterns":[{"include":"#constant"},{"include":"#number"},{"include":"#string"},{"include":"#array"},{"include":"#object"},{"include":"#comments"}]}},"scopeName":"source.json.comments"}')),zae=[Gae]});var N$={};x(N$,{default:()=>Hae});var Uae,Hae,L$=_(()=>{Uae=Object.freeze(JSON.parse('{"displayName":"JSON Lines","name":"jsonl","patterns":[{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json.lines"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json.lines"}},"name":"meta.structure.array.json.lines","patterns":[{"include":"#value"},{"match":",","name":"punctuation.separator.array.json.lines"},{"match":"[^\\\\s\\\\]]","name":"invalid.illegal.expected-array-separator.json.lines"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json.lines"}},"end":"\\\\*/","name":"comment.block.documentation.json.lines"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json.lines"}},"end":"\\\\*/","name":"comment.block.json.lines"},{"captures":{"1":{"name":"punctuation.definition.comment.json.lines"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.js"}]},"constant":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.json.lines"},"number":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[eE][+-]?\\\\d+)?)?","name":"constant.numeric.json.lines"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json.lines"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json.lines"}},"name":"meta.structure.dictionary.json.lines","patterns":[{"comment":"the JSON object key","include":"#objectkey"},{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json.lines"}},"end":"(,)|(?=\\\\})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json.lines"}},"name":"meta.structure.dictionary.value.json.lines","patterns":[{"comment":"the JSON object value","include":"#value"},{"match":"[^\\\\s,]","name":"invalid.illegal.expected-dictionary-separator.json.lines"}]},{"match":"[^\\\\s\\\\}]","name":"invalid.illegal.expected-dictionary-separator.json.lines"}]},"objectkey":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.support.type.property-name.begin.json.lines"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.support.type.property-name.end.json.lines"}},"name":"string.json.lines support.type.property-name.json.lines","patterns":[{"include":"#stringcontent"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json.lines"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.json.lines"}},"name":"string.quoted.double.json.lines","patterns":[{"include":"#stringcontent"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\(?:[\\"\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})","name":"constant.character.escape.json.lines"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json.lines"}]},"value":{"patterns":[{"include":"#constant"},{"include":"#number"},{"include":"#string"},{"include":"#array"},{"include":"#object"},{"include":"#comments"}]}},"scopeName":"source.json.lines"}')),Hae=[Uae]});var $$={};x($$,{default:()=>Yae});var Zae,Yae,R$=_(()=>{Zae=Object.freeze(JSON.parse(`{"displayName":"Jsonnet","name":"jsonnet","patterns":[{"include":"#expression"},{"include":"#keywords"}],"repository":{"builtin-functions":{"patterns":[{"match":"\\\\bstd[.](acos|asin|atan|ceil|char|codepoint|cos|exp|exponent)\\\\b","name":"support.function.jsonnet"},{"match":"\\\\bstd[.](filter|floor|force|length|log|makeArray|mantissa)\\\\b","name":"support.function.jsonnet"},{"match":"\\\\bstd[.](objectFields|objectHas|pow|sin|sqrt|tan|type|thisFile)\\\\b","name":"support.function.jsonnet"},{"match":"\\\\bstd[.](acos|asin|atan|ceil|char|codepoint|cos|exp|exponent)\\\\b","name":"support.function.jsonnet"},{"match":"\\\\bstd[.](abs|assertEqual|escapeString(Bash|Dollars|Json|Python))\\\\b","name":"support.function.jsonnet"},{"match":"\\\\bstd[.](filterMap|flattenArrays|foldl|foldr|format|join)\\\\b","name":"support.function.jsonnet"},{"match":"\\\\bstd[.](lines|manifest(Ini|Python(Vars)?)|map|max|min|mod)\\\\b","name":"support.function.jsonnet"},{"match":"\\\\bstd[.](set|set(Diff|Inter|Member|Union)|sort)\\\\b","name":"support.function.jsonnet"},{"match":"\\\\bstd[.](range|split|stringChars|substr|toString|uniq)\\\\b","name":"support.function.jsonnet"}]},"comment":{"patterns":[{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.jsonnet"},{"match":"//.*$","name":"comment.line.jsonnet"},{"match":"#.*$","name":"comment.block.jsonnet"}]},"double-quoted-strings":{"begin":"\\"","end":"\\"","name":"string.quoted.double.jsonnet","patterns":[{"match":"\\\\\\\\([\\"\\\\\\\\/bfnrt]|(u[0-9a-fA-F]{4}))","name":"constant.character.escape.jsonnet"},{"match":"\\\\\\\\[^\\"\\\\\\\\/bfnrtu]","name":"invalid.illegal.jsonnet"}]},"expression":{"patterns":[{"include":"#literals"},{"include":"#comment"},{"include":"#single-quoted-strings"},{"include":"#double-quoted-strings"},{"include":"#triple-quoted-strings"},{"include":"#builtin-functions"},{"include":"#functions"}]},"functions":{"patterns":[{"begin":"\\\\b([a-zA-Z_][a-z0-9A-Z_]*)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.jsonnet"}},"end":"\\\\)","name":"meta.function","patterns":[{"include":"#expression"}]}]},"keywords":{"patterns":[{"match":"[!:~\\\\+\\\\-&\\\\|\\\\^=<>\\\\*\\\\/%]","name":"keyword.operator.jsonnet"},{"match":"\\\\$","name":"keyword.other.jsonnet"},{"match":"\\\\b(self|super|import|importstr|local|tailstrict)\\\\b","name":"keyword.other.jsonnet"},{"match":"\\\\b(if|then|else|for|in|error|assert)\\\\b","name":"keyword.control.jsonnet"},{"match":"\\\\b(function)\\\\b","name":"storage.type.jsonnet"},{"match":"[a-zA-Z_][a-z0-9A-Z_]*\\\\s*(:::|\\\\+:::)","name":"variable.parameter.jsonnet"},{"match":"[a-zA-Z_][a-z0-9A-Z_]*\\\\s*(::|\\\\+::)","name":"entity.name.type"},{"match":"[a-zA-Z_][a-z0-9A-Z_]*\\\\s*(:|\\\\+:)","name":"variable.parameter.jsonnet"}]},"literals":{"patterns":[{"match":"\\\\b(true|false|null)\\\\b","name":"constant.language.jsonnet"},{"match":"\\\\b(\\\\d+([Ee][+-]?\\\\d+)?)\\\\b","name":"constant.numeric.jsonnet"},{"match":"\\\\b\\\\d+[.]\\\\d*([Ee][+-]?\\\\d+)?\\\\b","name":"constant.numeric.jsonnet"},{"match":"\\\\b[.]\\\\d+([Ee][+-]?\\\\d+)?\\\\b","name":"constant.numeric.jsonnet"}]},"single-quoted-strings":{"begin":"'","end":"'","name":"string.quoted.double.jsonnet","patterns":[{"match":"\\\\\\\\(['\\\\\\\\/bfnrt]|(u[0-9a-fA-F]{4}))","name":"constant.character.escape.jsonnet"},{"match":"\\\\\\\\[^'\\\\\\\\/bfnrtu]","name":"invalid.illegal.jsonnet"}]},"triple-quoted-strings":{"patterns":[{"begin":"\\\\|\\\\|\\\\|","end":"\\\\|\\\\|\\\\|","name":"string.quoted.triple.jsonnet"}]}},"scopeName":"source.jsonnet"}`)),Yae=[Zae]});var j$={};x(j$,{default:()=>Kae});var Wae,Kae,P$=_(()=>{Wae=Object.freeze(JSON.parse(`{"displayName":"JSSM","fileTypes":["jssm","jssm_state"],"name":"jssm","patterns":[{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.mn"}},"comment":"block comment","end":"\\\\*/","name":"comment.block.jssm"},{"begin":"//","comment":"block comment","end":"$","name":"comment.line.jssm"},{"begin":"\\\\\${","captures":{"0":{"name":"entity.name.function"}},"comment":"js outcalls","end":"}","name":"keyword.other"},{"comment":"semver","match":"([0-9]*)(\\\\.)([0-9]*)(\\\\.)([0-9]*)","name":"constant.numeric"},{"comment":"jssm language tokens","match":"graph_layout(\\\\s*)(:)","name":"constant.language.jssmLanguage"},{"comment":"jssm language tokens","match":"machine_name(\\\\s*)(:)","name":"constant.language.jssmLanguage"},{"comment":"jssm language tokens","match":"machine_version(\\\\s*)(:)","name":"constant.language.jssmLanguage"},{"comment":"jssm language tokens","match":"jssm_version(\\\\s*)(:)","name":"constant.language.jssmLanguage"},{"comment":"transitions","match":"<->","name":"keyword.control.transition.jssmArrow.legal_legal"},{"comment":"transitions","match":"<-","name":"keyword.control.transition.jssmArrow.legal_none"},{"comment":"transitions","match":"->","name":"keyword.control.transition.jssmArrow.none_legal"},{"comment":"transitions","match":"<=>","name":"keyword.control.transition.jssmArrow.main_main"},{"comment":"transitions","match":"=>","name":"keyword.control.transition.jssmArrow.none_main"},{"comment":"transitions","match":"<=","name":"keyword.control.transition.jssmArrow.main_none"},{"comment":"transitions","match":"<~>","name":"keyword.control.transition.jssmArrow.forced_forced"},{"comment":"transitions","match":"~>","name":"keyword.control.transition.jssmArrow.none_forced"},{"comment":"transitions","match":"<~","name":"keyword.control.transition.jssmArrow.forced_none"},{"comment":"transitions","match":"<-=>","name":"keyword.control.transition.jssmArrow.legal_main"},{"comment":"transitions","match":"<=->","name":"keyword.control.transition.jssmArrow.main_legal"},{"comment":"transitions","match":"<-~>","name":"keyword.control.transition.jssmArrow.legal_forced"},{"comment":"transitions","match":"<~->","name":"keyword.control.transition.jssmArrow.forced_legal"},{"comment":"transitions","match":"<=~>","name":"keyword.control.transition.jssmArrow.main_forced"},{"comment":"transitions","match":"<~=>","name":"keyword.control.transition.jssmArrow.forced_main"},{"comment":"edge probability annotation","match":"([0-9]+)%","name":"constant.numeric.jssmProbability"},{"comment":"action annotation","match":"\\\\'[^']*\\\\'","name":"constant.character.jssmAction"},{"comment":"jssm label annotation","match":"\\\\\\"[^\\"]*\\\\\\"","name":"entity.name.tag.jssmLabel.doublequoted"},{"comment":"jssm label annotation","match":"([a-zA-Z0-9_.+&()#@!?,])","name":"entity.name.tag.jssmLabel.atom"}],"scopeName":"source.jssm","aliases":["fsl"]}`)),Kae=[Wae]});var M$={};x(M$,{default:()=>ad});var Jae,ad,Ng=_(()=>{Jae=Object.freeze(JSON.parse('{"displayName":"R","name":"r","patterns":[{"include":"#roxygen"},{"include":"#comments"},{"include":"#constants"},{"include":"#keywords"},{"include":"#storage-type"},{"include":"#strings"},{"include":"#brackets"},{"include":"#function-declarations"},{"include":"#lambda-functions"},{"include":"#builtin-functions"},{"include":"#function-calls"},{"include":"#general-variables"}],"repository":{"brackets":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.r"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.r"}},"patterns":[{"include":"source.r"}]},{"begin":"\\\\[(?!\\\\[)","beginCaptures":{"0":{"name":"punctuation.section.brackets.single.begin.r"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.brackets.single.end.r"}},"patterns":[{"include":"source.r"}]},{"begin":"\\\\[\\\\[","beginCaptures":{"0":{"name":"punctuation.section.brackets.double.begin.r"}},"contentName":"meta.item-access.arguments.r","end":"\\\\]\\\\]","endCaptures":{"0":{"name":"punctuation.section.brackets.double.end.r"}},"patterns":[{"include":"source.r"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.braces.begin.r"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.braces.end.r"}},"patterns":[{"include":"source.r"}]}]},"builtin-functions":{"patterns":[{"captures":{"1":{"name":"support.function.r"}},"match":"\\\\b(abbreviate|abs|acos|acosh|activeBindingFunction|addNA|addTaskCallback|agrep|agrepl|alist|all|all\\\\.equal|all\\\\.equal\\\\.character|all\\\\.equal\\\\.default|all\\\\.equal\\\\.environment|all\\\\.equal\\\\.envRefClass|all\\\\.equal\\\\.factor|all\\\\.equal\\\\.formula|all\\\\.equal\\\\.function|all\\\\.equal\\\\.language|all\\\\.equal\\\\.list|all\\\\.equal\\\\.numeric|all\\\\.equal\\\\.POSIXt|all\\\\.equal\\\\.raw|all\\\\.names|allowInterrupts|all\\\\.vars|any|anyDuplicated|anyDuplicated\\\\.array|anyDuplicated\\\\.data\\\\.frame|anyDuplicated\\\\.default|anyDuplicated\\\\.matrix|anyNA|anyNA\\\\.data\\\\.frame|anyNA\\\\.numeric_version|anyNA\\\\.POSIXlt|aperm|aperm\\\\.default|aperm\\\\.table|append|apply|Arg|args|array|arrayInd|as\\\\.array|as\\\\.array\\\\.default|as\\\\.call|as\\\\.character|as\\\\.character\\\\.condition|as\\\\.character\\\\.Date|as\\\\.character\\\\.default|as\\\\.character\\\\.error|as\\\\.character\\\\.factor|as\\\\.character\\\\.hexmode|as\\\\.character\\\\.numeric_version|as\\\\.character\\\\.octmode|as\\\\.character\\\\.POSIXt|as\\\\.character\\\\.srcref|as\\\\.complex|as\\\\.data\\\\.frame|as\\\\.data\\\\.frame\\\\.array|as\\\\.data\\\\.frame\\\\.AsIs|as\\\\.data\\\\.frame\\\\.character|as\\\\.data\\\\.frame\\\\.complex|as\\\\.data\\\\.frame\\\\.data\\\\.frame|as\\\\.data\\\\.frame\\\\.Date|as\\\\.data\\\\.frame\\\\.default|as\\\\.data\\\\.frame\\\\.difftime|as\\\\.data\\\\.frame\\\\.factor|as\\\\.data\\\\.frame\\\\.integer|as\\\\.data\\\\.frame\\\\.list|as\\\\.data\\\\.frame\\\\.logical|as\\\\.data\\\\.frame\\\\.matrix|as\\\\.data\\\\.frame\\\\.model\\\\.matrix|as\\\\.data\\\\.frame\\\\.noquote|as\\\\.data\\\\.frame\\\\.numeric|as\\\\.data\\\\.frame\\\\.numeric_version|as\\\\.data\\\\.frame\\\\.ordered|as\\\\.data\\\\.frame\\\\.POSIXct|as\\\\.data\\\\.frame\\\\.POSIXlt|as\\\\.data\\\\.frame\\\\.raw|as\\\\.data\\\\.frame\\\\.table|as\\\\.data\\\\.frame\\\\.ts|as\\\\.data\\\\.frame\\\\.vector|as\\\\.Date|as\\\\.Date\\\\.character|as\\\\.Date\\\\.default|as\\\\.Date\\\\.factor|as\\\\.Date\\\\.numeric|as\\\\.Date\\\\.POSIXct|as\\\\.Date\\\\.POSIXlt|as\\\\.difftime|as\\\\.double|as\\\\.double\\\\.difftime|as\\\\.double\\\\.POSIXlt|as\\\\.environment|as\\\\.expression|as\\\\.expression\\\\.default|as\\\\.factor|as\\\\.function|as\\\\.function\\\\.default|as\\\\.hexmode|asin|asinh|as\\\\.integer|as\\\\.list|as\\\\.list\\\\.data\\\\.frame|as\\\\.list\\\\.Date|as\\\\.list\\\\.default|as\\\\.list\\\\.difftime|as\\\\.list\\\\.environment|as\\\\.list\\\\.factor|as\\\\.list\\\\.function|as\\\\.list\\\\.numeric_version|as\\\\.list\\\\.POSIXct|as\\\\.list\\\\.POSIXlt|as\\\\.logical|as\\\\.logical\\\\.factor|as\\\\.matrix|as\\\\.matrix\\\\.data\\\\.frame|as\\\\.matrix\\\\.default|as\\\\.matrix\\\\.noquote|as\\\\.matrix\\\\.POSIXlt|as\\\\.name|asNamespace|as\\\\.null|as\\\\.null\\\\.default|as\\\\.numeric|as\\\\.numeric_version|as\\\\.octmode|as\\\\.ordered|as\\\\.package_version|as\\\\.pairlist|asplit|as\\\\.POSIXct|as\\\\.POSIXct\\\\.Date|as\\\\.POSIXct\\\\.default|as\\\\.POSIXct\\\\.numeric|as\\\\.POSIXct\\\\.POSIXlt|as\\\\.POSIXlt|as\\\\.POSIXlt\\\\.character|as\\\\.POSIXlt\\\\.Date|as\\\\.POSIXlt\\\\.default|as\\\\.POSIXlt\\\\.factor|as\\\\.POSIXlt\\\\.numeric|as\\\\.POSIXlt\\\\.POSIXct|as\\\\.qr|as\\\\.raw|asS3|asS4|assign|as\\\\.single|as\\\\.single\\\\.default|as\\\\.symbol|as\\\\.table|as\\\\.table\\\\.default|as\\\\.vector|as\\\\.vector\\\\.factor|atan|atan2|atanh|attach|attachNamespace|attr|attr\\\\.all\\\\.equal|attributes|autoload|autoloader|backsolve|baseenv|basename|besselI|besselJ|besselK|besselY|beta|bindingIsActive|bindingIsLocked|bindtextdomain|bitwAnd|bitwNot|bitwOr|bitwShiftL|bitwShiftR|bitwXor|body|bquote|break|browser|browserCondition|browserSetDebug|browserText|builtins|by|by\\\\.data\\\\.frame|by\\\\.default|bzfile|c|call|callCC|capabilities|casefold|cat|cbind|cbind\\\\.data\\\\.frame|c\\\\.Date|c\\\\.difftime|ceiling|c\\\\.factor|character|char\\\\.expand|charmatch|charToRaw|chartr|check_tzones|chkDots|chol|chol2inv|chol\\\\.default|choose|class|clearPushBack|close|closeAllConnections|close\\\\.connection|close\\\\.srcfile|close\\\\.srcfilealias|c\\\\.noquote|c\\\\.numeric_version|col|colMeans|colnames|colSums|commandArgs|comment|complex|computeRestarts|conditionCall|conditionCall\\\\.condition|conditionMessage|conditionMessage\\\\.condition|conflictRules|conflicts|Conj|contributors|cos|cosh|cospi|c\\\\.POSIXct|c\\\\.POSIXlt|crossprod|Cstack_info|cummax|cummin|cumprod|cumsum|curlGetHeaders|cut|cut\\\\.Date|cut\\\\.default|cut\\\\.POSIXt|c\\\\.warnings|data\\\\.class|data\\\\.frame|data\\\\.matrix|date|debug|debuggingState|debugonce|default\\\\.stringsAsFactors|delayedAssign|deparse|deparse1|det|detach|determinant|determinant\\\\.matrix|dget|diag|diff|diff\\\\.Date|diff\\\\.default|diff\\\\.difftime|diff\\\\.POSIXt|difftime|digamma|dim|dim\\\\.data\\\\.frame|dimnames|dimnames\\\\.data\\\\.frame|dir|dir\\\\.create|dir\\\\.exists|dirname|do\\\\.call|dontCheck|double|dput|dQuote|drop|droplevels|droplevels\\\\.data\\\\.frame|droplevels\\\\.factor|dump|duplicated|duplicated\\\\.array|duplicated\\\\.data\\\\.frame|duplicated\\\\.default|duplicated\\\\.matrix|duplicated\\\\.numeric_version|duplicated\\\\.POSIXlt|duplicated\\\\.warnings|dynGet|dyn\\\\.load|dyn\\\\.unload|eapply|eigen|emptyenv|enc2native|enc2utf8|encodeString|Encoding|endsWith|enquote|environment|environmentIsLocked|environmentName|env\\\\.profile|errorCondition|eval|eval\\\\.parent|evalq|exists|exp|expand\\\\.grid|expm1|expression|extSoftVersion|factor|factorial|fifo|file|file\\\\.access|file\\\\.append|file\\\\.choose|file\\\\.copy|file\\\\.create|file\\\\.exists|file\\\\.info|file\\\\.link|file\\\\.mode|file\\\\.mtime|file\\\\.path|file\\\\.remove|file\\\\.rename|file\\\\.show|file\\\\.size|file\\\\.symlink|Filter|Find|findInterval|find\\\\.package|findPackageEnv|findRestart|floor|flush|flush\\\\.connection|for|force|forceAndCall|formals|format|format\\\\.AsIs|formatC|format\\\\.data\\\\.frame|format\\\\.Date|format\\\\.default|format\\\\.difftime|formatDL|format\\\\.factor|format\\\\.hexmode|format\\\\.info|format\\\\.libraryIQR|format\\\\.numeric_version|format\\\\.octmode|format\\\\.packageInfo|format\\\\.POSIXct|format\\\\.POSIXlt|format\\\\.pval|format\\\\.summaryDefault|forwardsolve|function|gamma|gc|gcinfo|gc\\\\.time|gctorture|gctorture2|get|get0|getAllConnections|getCallingDLL|getCallingDLLe|getConnection|getDLLRegisteredRoutines|getDLLRegisteredRoutines\\\\.character|getDLLRegisteredRoutines\\\\.DLLInfo|getElement|geterrmessage|getExportedValue|getHook|getLoadedDLLs|getNamespace|getNamespaceExports|getNamespaceImports|getNamespaceInfo|getNamespaceName|getNamespaceUsers|getNamespaceVersion|getNativeSymbolInfo|getOption|getRversion|getSrcLines|getTaskCallbackNames|gettext|gettextf|getwd|gl|globalCallingHandlers|globalenv|gregexec|gregexpr|grep|grepl|grepRaw|grouping|gsub|gzcon|gzfile|I|iconv|iconvlist|icuGetCollate|icuSetCollate|identical|identity|if|ifelse|Im|importIntoEnv|infoRDS|inherits|integer|interaction|interactive|intersect|intToBits|intToUtf8|inverse\\\\.rle|invisible|invokeRestart|invokeRestartInteractively|isa|is\\\\.array|is\\\\.atomic|isatty|isBaseNamespace|is\\\\.call|is\\\\.character|is\\\\.complex|is\\\\.data\\\\.frame|isdebugged|is\\\\.double|is\\\\.element|is\\\\.environment|is\\\\.expression|is\\\\.factor|isFALSE|is\\\\.finite|is\\\\.function|isIncomplete|is\\\\.infinite|is\\\\.integer|is\\\\.language|is\\\\.list|is\\\\.loaded|is\\\\.logical|is\\\\.matrix|is\\\\.na|is\\\\.na\\\\.data\\\\.frame|is\\\\.name|isNamespace|isNamespaceLoaded|is\\\\.nan|is\\\\.na\\\\.numeric_version|is\\\\.na\\\\.POSIXlt|is\\\\.null|is\\\\.numeric|is\\\\.numeric\\\\.Date|is\\\\.numeric\\\\.difftime|is\\\\.numeric\\\\.POSIXt|is\\\\.numeric_version|is\\\\.object|ISOdate|ISOdatetime|isOpen|is\\\\.ordered|is\\\\.package_version|is\\\\.pairlist|is\\\\.primitive|is\\\\.qr|is\\\\.R|is\\\\.raw|is\\\\.recursive|isRestart|isS4|isSeekable|is\\\\.single|is\\\\.symbol|isSymmetric|isSymmetric\\\\.matrix|is\\\\.table|isTRUE|is\\\\.unsorted|is\\\\.vector|jitter|julian|julian\\\\.Date|julian\\\\.POSIXt|kappa|kappa\\\\.default|kappa\\\\.lm|kappa\\\\.qr|kronecker|l10n_info|labels|labels\\\\.default|La_library|lapply|La\\\\.svd|La_version|lazyLoad|lazyLoadDBexec|lazyLoadDBfetch|lbeta|lchoose|length|length\\\\.POSIXlt|lengths|levels|levels\\\\.default|lfactorial|lgamma|libcurlVersion|library|library\\\\.dynam|library\\\\.dynam\\\\.unload|licence|license|list|list2DF|list2env|list\\\\.dirs|list\\\\.files|load|loadedNamespaces|loadingNamespaceInfo|loadNamespace|local|lockBinding|lockEnvironment|log|log10|log1p|log2|logb|logical|lower\\\\.tri|ls|makeActiveBinding|make\\\\.names|make\\\\.unique|Map|mapply|marginSums|margin\\\\.table|match|match\\\\.arg|match\\\\.call|match\\\\.fun|Math\\\\.data\\\\.frame|Math\\\\.Date|Math\\\\.difftime|Math\\\\.factor|Math\\\\.POSIXt|mat\\\\.or\\\\.vec|matrix|max|max\\\\.col|mean|mean\\\\.Date|mean\\\\.default|mean\\\\.difftime|mean\\\\.POSIXct|mean\\\\.POSIXlt|memCompress|memDecompress|mem\\\\.maxNSize|mem\\\\.maxVSize|memory\\\\.profile|merge|merge\\\\.data\\\\.frame|merge\\\\.default|message|mget|min|missing|Mod|mode|months|months\\\\.Date|months\\\\.POSIXt|names|namespaceExport|namespaceImport|namespaceImportClasses|namespaceImportFrom|namespaceImportMethods|names\\\\.POSIXlt|nargs|nchar|ncol|NCOL|Negate|new\\\\.env|next|NextMethod|ngettext|nlevels|noquote|norm|normalizePath|nrow|NROW|nullfile|numeric|numeric_version|numToBits|numToInts|nzchar|objects|oldClass|OlsonNames|on\\\\.exit|open|open\\\\.connection|open\\\\.srcfile|open\\\\.srcfilealias|open\\\\.srcfilecopy|Ops\\\\.data\\\\.frame|Ops\\\\.Date|Ops\\\\.difftime|Ops\\\\.factor|Ops\\\\.numeric_version|Ops\\\\.ordered|Ops\\\\.POSIXt|options|order|ordered|outer|packageEvent|packageHasNamespace|packageNotFoundError|packageStartupMessage|package_version|packBits|pairlist|parent\\\\.env|parent\\\\.frame|parse|parseNamespaceFile|paste|paste0|path\\\\.expand|path\\\\.package|pcre_config|pi|pipe|plot|pmatch|pmax|pmax\\\\.int|pmin|pmin\\\\.int|polyroot|Position|pos\\\\.to\\\\.env|pretty|pretty\\\\.default|prettyNum|print|print\\\\.AsIs|print\\\\.by|print\\\\.condition|print\\\\.connection|print\\\\.data\\\\.frame|print\\\\.Date|print\\\\.default|print\\\\.difftime|print\\\\.Dlist|print\\\\.DLLInfo|print\\\\.DLLInfoList|print\\\\.DLLRegisteredRoutines|print\\\\.eigen|print\\\\.factor|print\\\\.function|print\\\\.hexmode|print\\\\.libraryIQR|print\\\\.listof|print\\\\.NativeRoutineList|print\\\\.noquote|print\\\\.numeric_version|print\\\\.octmode|print\\\\.packageInfo|print\\\\.POSIXct|print\\\\.POSIXlt|print\\\\.proc_time|print\\\\.restart|print\\\\.rle|print\\\\.simple\\\\.list|print\\\\.srcfile|print\\\\.srcref|print\\\\.summaryDefault|print\\\\.summary\\\\.table|print\\\\.summary\\\\.warnings|print\\\\.table|print\\\\.warnings|prmatrix|proc\\\\.time|prod|proportions|prop\\\\.table|provideDimnames|psigamma|pushBack|pushBackLength|q|qr|qr\\\\.coef|qr\\\\.default|qr\\\\.fitted|qr\\\\.Q|qr\\\\.qty|qr\\\\.qy|qr\\\\.R|qr\\\\.resid|qr\\\\.solve|qr\\\\.X|quarters|quarters\\\\.Date|quarters\\\\.POSIXt|quit|quote|range|range\\\\.default|rank|rapply|raw|rawConnection|rawConnectionValue|rawShift|rawToBits|rawToChar|rbind|rbind\\\\.data\\\\.frame|rcond|Re|readBin|readChar|read\\\\.dcf|readline|readLines|readRDS|readRenviron|Recall|Reduce|regexec|regexpr|reg\\\\.finalizer|registerS3method|registerS3methods|regmatches|remove|removeTaskCallback|rep|rep\\\\.Date|rep\\\\.difftime|repeat|rep\\\\.factor|rep\\\\.int|replace|rep_len|replicate|rep\\\\.numeric_version|rep\\\\.POSIXct|rep\\\\.POSIXlt|require|requireNamespace|restartDescription|restartFormals|retracemem|return|returnValue|rev|rev\\\\.default|R\\\\.home|rle|rm|RNGkind|RNGversion|round|round\\\\.Date|round\\\\.POSIXt|row|rowMeans|rownames|row\\\\.names|row\\\\.names\\\\.data\\\\.frame|row\\\\.names\\\\.default|rowsum|rowsum\\\\.data\\\\.frame|rowsum\\\\.default|rowSums|R_system_version|R\\\\.version|R\\\\.Version|R\\\\.version\\\\.string|sample|sample\\\\.int|sapply|save|save\\\\.image|saveRDS|scale|scale\\\\.default|scan|search|searchpaths|seek|seek\\\\.connection|seq|seq_along|seq\\\\.Date|seq\\\\.default|seq\\\\.int|seq_len|seq\\\\.POSIXt|sequence|sequence\\\\.default|serialize|serverSocket|setdiff|setequal|setHook|setNamespaceInfo|set\\\\.seed|setSessionTimeLimit|setTimeLimit|setwd|showConnections|shQuote|sign|signalCondition|signif|simpleCondition|simpleError|simpleMessage|simpleWarning|simplify2array|sin|single|sinh|sink|sink\\\\.number|sinpi|slice\\\\.index|socketAccept|socketConnection|socketSelect|socketTimeout|solve|solve\\\\.default|solve\\\\.qr|sort|sort\\\\.default|sort\\\\.int|sort\\\\.list|sort\\\\.POSIXlt|source|split|split\\\\.data\\\\.frame|split\\\\.Date|split\\\\.default|split\\\\.POSIXct|sprintf|sqrt|sQuote|srcfile|srcfilealias|srcfilecopy|srcref|standardGeneric|startsWith|stderr|stdin|stdout|stop|stopifnot|storage\\\\.mode|str2expression|str2lang|strftime|strptime|strrep|strsplit|strtoi|strtrim|structure|strwrap|sub|subset|subset\\\\.data\\\\.frame|subset\\\\.default|subset\\\\.matrix|substitute|substr|substring|sum|summary|summary\\\\.connection|summary\\\\.data\\\\.frame|Summary\\\\.data\\\\.frame|summary\\\\.Date|Summary\\\\.Date|summary\\\\.default|Summary\\\\.difftime|summary\\\\.factor|Summary\\\\.factor|summary\\\\.matrix|Summary\\\\.numeric_version|Summary\\\\.ordered|summary\\\\.POSIXct|Summary\\\\.POSIXct|summary\\\\.POSIXlt|Summary\\\\.POSIXlt|summary\\\\.proc_time|summary\\\\.srcfile|summary\\\\.srcref|summary\\\\.table|summary\\\\.warnings|suppressMessages|suppressPackageStartupMessages|suppressWarnings|suspendInterrupts|svd|sweep|switch|sys\\\\.call|sys\\\\.calls|Sys\\\\.chmod|Sys\\\\.Date|sys\\\\.frame|sys\\\\.frames|sys\\\\.function|Sys\\\\.getenv|Sys\\\\.getlocale|Sys\\\\.getpid|Sys\\\\.glob|Sys\\\\.info|sys\\\\.load\\\\.image|Sys\\\\.localeconv|sys\\\\.nframe|sys\\\\.on\\\\.exit|sys\\\\.parent|sys\\\\.parents|Sys\\\\.readlink|sys\\\\.save\\\\.image|Sys\\\\.setenv|Sys\\\\.setFileTime|Sys\\\\.setlocale|Sys\\\\.sleep|sys\\\\.source|sys\\\\.status|system|system2|system\\\\.file|system\\\\.time|Sys\\\\.time|Sys\\\\.timezone|Sys\\\\.umask|Sys\\\\.unsetenv|Sys\\\\.which|t|table|tabulate|tan|tanh|tanpi|tapply|taskCallbackManager|tcrossprod|t\\\\.data\\\\.frame|t\\\\.default|tempdir|tempfile|textConnection|textConnectionValue|tolower|topenv|toString|toString\\\\.default|toupper|trace|traceback|tracemem|tracingState|transform|transform\\\\.data\\\\.frame|transform\\\\.default|trigamma|trimws|trunc|truncate|truncate\\\\.connection|trunc\\\\.Date|trunc\\\\.POSIXt|try|tryCatch|tryInvokeRestart|typeof|unclass|undebug|union|unique|unique\\\\.array|unique\\\\.data\\\\.frame|unique\\\\.default|unique\\\\.matrix|unique\\\\.numeric_version|unique\\\\.POSIXlt|unique\\\\.warnings|units|units\\\\.difftime|unix\\\\.time|unlink|unlist|unloadNamespace|unlockBinding|unname|unserialize|unsplit|untrace|untracemem|unz|upper\\\\.tri|url|UseMethod|utf8ToInt|validEnc|validUTF8|vapply|vector|Vectorize|version|warning|warningCondition|warnings|weekdays|weekdays\\\\.Date|weekdays\\\\.POSIXt|which|which\\\\.max|which\\\\.min|while|with|withAutoprint|withCallingHandlers|with\\\\.default|within|within\\\\.data\\\\.frame|within\\\\.list|withRestarts|withVisible|write|writeBin|writeChar|write\\\\.dcf|writeLines|xor|xpdrows\\\\.data\\\\.frame|xtfrm|xtfrm\\\\.AsIs|xtfrm\\\\.data\\\\.frame|xtfrm\\\\.Date|xtfrm\\\\.default|xtfrm\\\\.difftime|xtfrm\\\\.factor|xtfrm\\\\.numeric_version|xtfrm\\\\.POSIXct|xtfrm\\\\.POSIXlt|xzfile|zapsmall)\\\\s*(\\\\()"},{"captures":{"1":{"name":"support.function.r"}},"match":"\\\\b(abline|arrows|assocplot|axis|Axis|axis\\\\.Date|axis\\\\.POSIXct|axTicks|barplot|barplot\\\\.default|box|boxplot|boxplot\\\\.default|boxplot\\\\.matrix|bxp|cdplot|clip|close\\\\.screen|co\\\\.intervals|contour|contour\\\\.default|coplot|curve|dotchart|erase\\\\.screen|filled\\\\.contour|fourfoldplot|frame|grconvertX|grconvertY|grid|hist|hist\\\\.default|identify|image|image\\\\.default|layout|layout\\\\.show|lcm|legend|lines|lines\\\\.default|locator|matlines|matplot|matpoints|mosaicplot|mtext|pairs|pairs\\\\.default|panel\\\\.smooth|par|persp|pie|plot|plot\\\\.default|plot\\\\.design|plot\\\\.function|plot\\\\.new|plot\\\\.window|plot\\\\.xy|points|points\\\\.default|polygon|polypath|rasterImage|rect|rug|screen|segments|smoothScatter|spineplot|split\\\\.screen|stars|stem|strheight|stripchart|strwidth|sunflowerplot|symbols|text|text\\\\.default|title|xinch|xspline|xyinch|yinch)\\\\s*(\\\\()"},{"captures":{"1":{"name":"support.function.r"}},"match":"\\\\b(adjustcolor|as\\\\.graphicsAnnot|as\\\\.raster|axisTicks|bitmap|blues9|bmp|boxplot\\\\.stats|cairo_pdf|cairo_ps|cairoSymbolFont|check\\\\.options|chull|CIDFont|cm|cm\\\\.colors|col2rgb|colorConverter|colorRamp|colorRampPalette|colors|colorspaces|colours|contourLines|convertColor|densCols|dev2bitmap|devAskNewPage|dev\\\\.capabilities|dev\\\\.capture|dev\\\\.control|dev\\\\.copy|dev\\\\.copy2eps|dev\\\\.copy2pdf|dev\\\\.cur|dev\\\\.flush|dev\\\\.hold|deviceIsInteractive|dev\\\\.interactive|dev\\\\.list|dev\\\\.new|dev\\\\.next|dev\\\\.off|dev\\\\.prev|dev\\\\.print|dev\\\\.set|dev\\\\.size|embedFonts|extendrange|getGraphicsEvent|getGraphicsEventEnv|graphics\\\\.off|gray|gray\\\\.colors|grey|grey\\\\.colors|grSoftVersion|hcl|hcl\\\\.colors|hcl\\\\.pals|heat\\\\.colors|Hershey|hsv|is\\\\.raster|jpeg|make\\\\.rgb|n2mfrow|nclass\\\\.FD|nclass\\\\.scott|nclass\\\\.Sturges|palette|palette\\\\.colors|palette\\\\.pals|pdf|pdfFonts|pdf\\\\.options|pictex|png|postscript|postscriptFonts|ps\\\\.options|quartz|quartzFont|quartzFonts|quartz\\\\.options|quartz\\\\.save|rainbow|recordGraphics|recordPlot|replayPlot|rgb|rgb2hsv|savePlot|setEPS|setGraphicsEventEnv|setGraphicsEventHandlers|setPS|svg|terrain\\\\.colors|tiff|topo\\\\.colors|trans3d|Type1Font|x11|X11|X11Font|X11Fonts|X11\\\\.options|xfig|xy\\\\.coords|xyTable|xyz\\\\.coords)\\\\s*(\\\\()"},{"captures":{"1":{"name":"support.function.r"}},"match":"\\\\b(addNextMethod|allNames|Arith|as|asMethodDefinition|assignClassDef|assignMethodsMetaData|balanceMethodsList|cacheGenericsMetaData|cacheMetaData|cacheMethod|callGeneric|callNextMethod|canCoerce|cbind2|checkAtAssignment|checkSlotAssignment|classesToAM|classLabel|classMetaName|className|coerce|Compare|completeClassDefinition|completeExtends|completeSubclasses|Complex|conformMethod|defaultDumpName|defaultPrototype|doPrimitiveMethod|dumpMethod|dumpMethods|el|elNamed|empty\\\\.dump|emptyMethodsList|evalOnLoad|evalqOnLoad|evalSource|existsFunction|existsMethod|extends|externalRefMethod|finalDefaultMethod|findClass|findFunction|findMethod|findMethods|findMethodSignatures|findUnique|fixPre1\\\\.8|formalArgs|functionBody|generic\\\\.skeleton|getAllSuperClasses|getClass|getClassDef|getClasses|getDataPart|getFunction|getGeneric|getGenerics|getGroup|getGroupMembers|getLoadActions|getMethod|getMethods|getMethodsForDispatch|getMethodsMetaData|getPackageName|getRefClass|getSlots|getValidity|hasArg|hasLoadAction|hasMethod|hasMethods|implicitGeneric|inheritedSlotNames|initFieldArgs|initialize|initRefFields|insertClassMethods|insertMethod|insertSource|is|isClass|isClassDef|isClassUnion|isGeneric|isGrammarSymbol|isGroup|isRematched|isSealedClass|isSealedMethod|isVirtualClass|isXS3Class|kronecker|languageEl|linearizeMlist|listFromMethods|listFromMlist|loadMethod|Logic|makeClassRepresentation|makeExtends|makeGeneric|makeMethodsList|makePrototypeFromClassDef|makeStandardGeneric|matchSignature|Math|Math2|mergeMethods|metaNameUndo|MethodAddCoerce|methodSignatureMatrix|method\\\\.skeleton|MethodsList|MethodsListSelect|methodsPackageMetaName|missingArg|multipleClasses|new|newBasic|newClassRepresentation|newEmptyObject|Ops|packageSlot|possibleExtends|prohibitGeneric|promptClass|promptMethods|prototype|Quote|rbind2|reconcilePropertiesAndPrototype|registerImplicitGenerics|rematchDefinition|removeClass|removeGeneric|removeMethod|removeMethods|representation|requireMethods|resetClass|resetGeneric|S3Class|S3Part|sealClass|selectMethod|selectSuperClasses|setAs|setClass|setClassUnion|setDataPart|setGeneric|setGenericImplicit|setGroupGeneric|setIs|setLoadAction|setLoadActions|setMethod|setOldClass|setPackageName|setPrimitiveMethods|setRefClass|setReplaceMethod|setValidity|show|showClass|showDefault|showExtends|showMethods|showMlist|signature|SignatureMethod|sigToEnv|slot|slotNames|slotsFromS3|substituteDirect|substituteFunctionArgs|Summary|superClassDepth|testInheritedMethods|testVirtual|tryNew|unRematchDefinition|validObject|validSlotNames)\\\\s*(\\\\()"},{"captures":{"1":{"name":"support.function.r"}},"match":"\\\\b(acf|acf2AR|add1|addmargins|add\\\\.scope|aggregate|aggregate\\\\.data\\\\.frame|aggregate\\\\.ts|AIC|alias|anova|ansari\\\\.test|aov|approx|approxfun|ar|ar\\\\.burg|arima|arima0|arima0\\\\.diag|arima\\\\.sim|ARMAacf|ARMAtoMA|ar\\\\.mle|ar\\\\.ols|ar\\\\.yw|as\\\\.dendrogram|as\\\\.dist|as\\\\.formula|as\\\\.hclust|asOneSidedFormula|as\\\\.stepfun|as\\\\.ts|ave|bandwidth\\\\.kernel|bartlett\\\\.test|BIC|binomial|binom\\\\.test|biplot|Box\\\\.test|bw\\\\.bcv|bw\\\\.nrd|bw\\\\.nrd0|bw\\\\.SJ|bw\\\\.ucv|C|cancor|case\\\\.names|ccf|chisq\\\\.test|cmdscale|coef|coefficients|complete\\\\.cases|confint|confint\\\\.default|confint\\\\.lm|constrOptim|contrasts|contr\\\\.helmert|contr\\\\.poly|contr\\\\.SAS|contr\\\\.sum|contr\\\\.treatment|convolve|cooks\\\\.distance|cophenetic|cor|cor\\\\.test|cov|cov2cor|covratio|cov\\\\.wt|cpgram|cutree|cycle|D|dbeta|dbinom|dcauchy|dchisq|decompose|delete\\\\.response|deltat|dendrapply|density|density\\\\.default|deriv|deriv3|deviance|dexp|df|DF2formula|dfbeta|dfbetas|dffits|df\\\\.kernel|df\\\\.residual|dgamma|dgeom|dhyper|diffinv|dist|dlnorm|dlogis|dmultinom|dnbinom|dnorm|dpois|drop1|drop\\\\.scope|drop\\\\.terms|dsignrank|dt|dummy\\\\.coef|dummy\\\\.coef\\\\.lm|dunif|dweibull|dwilcox|ecdf|eff\\\\.aovlist|effects|embed|end|estVar|expand\\\\.model\\\\.frame|extractAIC|factanal|factor\\\\.scope|family|fft|filter|fisher\\\\.test|fitted|fitted\\\\.values|fivenum|fligner\\\\.test|formula|frequency|friedman\\\\.test|ftable|Gamma|gaussian|get_all_vars|getCall|getInitial|glm|glm\\\\.control|glm\\\\.fit|hasTsp|hat|hatvalues|hclust|heatmap|HoltWinters|influence|influence\\\\.measures|integrate|interaction\\\\.plot|inverse\\\\.gaussian|IQR|is\\\\.empty\\\\.model|is\\\\.leaf|is\\\\.mts|isoreg|is\\\\.stepfun|is\\\\.ts|is\\\\.tskernel|KalmanForecast|KalmanLike|KalmanRun|KalmanSmooth|kernapply|kernel|kmeans|knots|kruskal\\\\.test|ksmooth|ks\\\\.test|lag|lag\\\\.plot|line|lm|lm\\\\.fit|lm\\\\.influence|lm\\\\.wfit|loadings|loess|loess\\\\.control|loess\\\\.smooth|logLik|loglin|lowess|ls\\\\.diag|lsfit|ls\\\\.print|mad|mahalanobis|makeARIMA|make\\\\.link|makepredictcall|manova|mantelhaen\\\\.test|mauchly\\\\.test|mcnemar\\\\.test|median|median\\\\.default|medpolish|model\\\\.extract|model\\\\.frame|model\\\\.frame\\\\.default|model\\\\.matrix|model\\\\.matrix\\\\.default|model\\\\.matrix\\\\.lm|model\\\\.offset|model\\\\.response|model\\\\.tables|model\\\\.weights|monthplot|mood\\\\.test|mvfft|na\\\\.action|na\\\\.contiguous|na\\\\.exclude|na\\\\.fail|na\\\\.omit|na\\\\.pass|napredict|naprint|naresid|nextn|nlm|nlminb|nls|nls\\\\.control|NLSstAsymptotic|NLSstClosestX|NLSstLfAsymptote|NLSstRtAsymptote|nobs|numericDeriv|offset|oneway\\\\.test|optim|optimHess|optimise|optimize|order\\\\.dendrogram|pacf|p\\\\.adjust|p\\\\.adjust\\\\.methods|Pair|pairwise\\\\.prop\\\\.test|pairwise\\\\.table|pairwise\\\\.t\\\\.test|pairwise\\\\.wilcox\\\\.test|pbeta|pbinom|pbirthday|pcauchy|pchisq|pexp|pf|pgamma|pgeom|phyper|plclust|plnorm|plogis|plot\\\\.ecdf|plot\\\\.spec\\\\.coherency|plot\\\\.spec\\\\.phase|plot\\\\.stepfun|plot\\\\.ts|pnbinom|pnorm|poisson|poisson\\\\.test|poly|polym|power|power\\\\.anova\\\\.test|power\\\\.prop\\\\.test|power\\\\.t\\\\.test|ppoints|ppois|ppr|PP\\\\.test|prcomp|predict|predict\\\\.glm|predict\\\\.lm|preplot|princomp|printCoefmat|profile|proj|promax|prop\\\\.test|prop\\\\.trend\\\\.test|psignrank|pt|ptukey|punif|pweibull|pwilcox|qbeta|qbinom|qbirthday|qcauchy|qchisq|qexp|qf|qgamma|qgeom|qhyper|qlnorm|qlogis|qnbinom|qnorm|qpois|qqline|qqnorm|qqplot|qsignrank|qt|qtukey|quade\\\\.test|quantile|quasi|quasibinomial|quasipoisson|qunif|qweibull|qwilcox|r2dtable|rbeta|rbinom|rcauchy|rchisq|read\\\\.ftable|rect\\\\.hclust|reformulate|relevel|reorder|replications|reshape|resid|residuals|residuals\\\\.glm|residuals\\\\.lm|rexp|rf|rgamma|rgeom|rhyper|rlnorm|rlogis|rmultinom|rnbinom|rnorm|rpois|rsignrank|rstandard|rstudent|rt|runif|runmed|rweibull|rwilcox|rWishart|scatter\\\\.smooth|screeplot|sd|se\\\\.contrast|selfStart|setNames|shapiro\\\\.test|sigma|simulate|smooth|smoothEnds|smooth\\\\.spline|sortedXyData|spec\\\\.ar|spec\\\\.pgram|spec\\\\.taper|spectrum|spline|splinefun|splinefunH|SSasymp|SSasympOff|SSasympOrig|SSbiexp|SSD|SSfol|SSfpl|SSgompertz|SSlogis|SSmicmen|SSweibull|start|stat\\\\.anova|step|stepfun|stl|StructTS|summary\\\\.aov|summary\\\\.glm|summary\\\\.lm|summary\\\\.manova|summary\\\\.stepfun|supsmu|symnum|termplot|terms|terms\\\\.formula|time|toeplitz|ts|tsdiag|ts\\\\.intersect|tsp|ts\\\\.plot|tsSmooth|ts\\\\.union|t\\\\.test|TukeyHSD|uniroot|update|update\\\\.default|update\\\\.formula|var|variable\\\\.names|varimax|var\\\\.test|vcov|weighted\\\\.mean|weighted\\\\.residuals|weights|wilcox\\\\.test|window|write\\\\.ftable|xtabs)\\\\s*(\\\\()"},{"captures":{"1":{"name":"support.function.r"}},"match":"\\\\b(adist|alarm|apropos|aregexec|argsAnywhere|asDateBuilt|askYesNo|aspell|aspell_package_C_files|aspell_package_Rd_files|aspell_package_R_files|aspell_package_vignettes|aspell_write_personal_dictionary_file|as\\\\.person|as\\\\.personList|as\\\\.relistable|as\\\\.roman|assignInMyNamespace|assignInNamespace|available\\\\.packages|bibentry|browseEnv|browseURL|browseVignettes|bug\\\\.report|capture\\\\.output|changedFiles|charClass|checkCRAN|chooseBioCmirror|chooseCRANmirror|citation|cite|citeNatbib|citEntry|citFooter|citHeader|close\\\\.socket|combn|compareVersion|contrib\\\\.url|count\\\\.fields|create\\\\.post|data|dataentry|data\\\\.entry|de|debugcall|debugger|demo|de\\\\.ncols|de\\\\.restore|de\\\\.setup|download\\\\.file|download\\\\.packages|dump\\\\.frames|edit|emacs|example|file\\\\.edit|fileSnapshot|file_test|find|findLineNum|fix|fixInNamespace|flush\\\\.console|formatOL|formatUL|getAnywhere|getCRANmirrors|getFromNamespace|getParseData|getParseText|getS3method|getSrcDirectory|getSrcFilename|getSrcLocation|getSrcref|getTxtProgressBar|glob2rx|globalVariables|hasName|head|head\\\\.matrix|help|help\\\\.request|help\\\\.search|help\\\\.start|history|hsearch_db|hsearch_db_concepts|hsearch_db_keywords|installed\\\\.packages|install\\\\.packages|is\\\\.relistable|isS3method|isS3stdGeneric|limitedLabels|loadhistory|localeToCharset|lsf\\\\.str|ls\\\\.str|maintainer|make\\\\.packages\\\\.html|makeRweaveLatexCodeRunner|make\\\\.socket|memory\\\\.limit|memory\\\\.size|menu|methods|mirror2html|modifyList|new\\\\.packages|news|nsl|object\\\\.size|old\\\\.packages|osVersion|packageDate|packageDescription|packageName|package\\\\.skeleton|packageStatus|packageVersion|page|person|personList|pico|process\\\\.events|prompt|promptData|promptImport|promptPackage|rc\\\\.getOption|rc\\\\.options|rc\\\\.settings|rc\\\\.status|readCitationFile|read\\\\.csv|read\\\\.csv2|read\\\\.delim|read\\\\.delim2|read\\\\.DIF|read\\\\.fortran|read\\\\.fwf|read\\\\.socket|read\\\\.table|recover|relist|remove\\\\.packages|removeSource|Rprof|Rprofmem|RShowDoc|RSiteSearch|rtags|Rtangle|RtangleFinish|RtangleRuncode|RtangleSetup|RtangleWritedoc|RweaveChunkPrefix|RweaveEvalWithOpt|RweaveLatex|RweaveLatexFinish|RweaveLatexOptions|RweaveLatexSetup|RweaveLatexWritedoc|RweaveTryStop|savehistory|select\\\\.list|sessionInfo|setBreakpoint|setRepositories|setTxtProgressBar|stack|Stangle|str|strcapture|strOptions|summaryRprof|suppressForeignCheck|Sweave|SweaveHooks|SweaveSyntaxLatex|SweaveSyntaxNoweb|SweaveSyntConv|tail|tail\\\\.matrix|tar|timestamp|toBibtex|toLatex|txtProgressBar|type\\\\.convert|undebugcall|unstack|untar|unzip|update\\\\.packages|upgrade|URLdecode|URLencode|url\\\\.show|vi|View|vignette|warnErrList|write\\\\.csv|write\\\\.csv2|write\\\\.socket|write\\\\.table|xedit|xemacs|zip)\\\\s*(\\\\()"}]},"comments":{"patterns":[{"captures":{"1":{"name":"comment.line.pragma.r"},"2":{"name":"entity.name.pragma.name.r"}},"match":"^(#pragma[ \\\\t]+mark)[ \\\\t](.*)","name":"comment.line.pragma-mark.r"},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.r"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.r"}},"end":"\\\\n","name":"comment.line.number-sign.r"}]}]},"constants":{"patterns":[{"match":"\\\\b(pi|letters|LETTERS|month\\\\.abb|month\\\\.name)\\\\b","name":"support.constant.misc.r"},{"match":"\\\\b(TRUE|FALSE|NULL|NA|NA_integer_|NA_real_|NA_complex_|NA_character_|Inf|NaN)\\\\b","name":"constant.language.r"},{"match":"\\\\b0(x|X)[0-9a-fA-F]+i\\\\b","name":"constant.numeric.imaginary.hexadecimal.r"},{"match":"\\\\b[0-9]+\\\\.?[0-9]*(?:(e|E)(\\\\+|-)?[0-9]+)?i\\\\b","name":"constant.numeric.imaginary.decimal.r"},{"match":"\\\\.[0-9]+(?:(e|E)(\\\\+|-)?[0-9]+)?i\\\\b","name":"constant.numeric.imaginary.decimal.r"},{"match":"\\\\b0(x|X)[0-9a-fA-F]+L\\\\b","name":"constant.numeric.integer.hexadecimal.r"},{"match":"\\\\b(?:[0-9]+\\\\.?[0-9]*)(?:(e|E)(\\\\+|-)?[0-9]+)?L\\\\b","name":"constant.numeric.integer.decimal.r"},{"match":"\\\\b0(x|X)[0-9a-fA-F]+\\\\b","name":"constant.numeric.float.hexadecimal.r"},{"match":"\\\\b[0-9]+\\\\.?[0-9]*(?:(e|E)(\\\\+|-)?[0-9]+)?\\\\b","name":"constant.numeric.float.decimal.r"},{"match":"\\\\.[0-9]+(?:(e|E)(\\\\+|-)?[0-9]+)?\\\\b","name":"constant.numeric.float.decimal.r"}]},"function-calls":{"begin":"(?:\\\\b|(?=\\\\.))((?:[a-zA-Z._][\\\\w.]*|`[^`]+`))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"variable.function.r"},"2":{"name":"punctuation.section.parens.begin.r"}},"contentName":"meta.function-call.arguments.r","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.parens.end.r"}},"name":"meta.function-call.r","patterns":[{"include":"#function-parameters"}]},"function-declarations":{"patterns":[{"captures":{"1":{"name":"entity.name.function.r"},"2":{"name":"keyword.operator.assignment.r"},"3":{"name":"keyword.control.r"}},"match":"((?:`[^`\\\\\\\\]*(?:\\\\\\\\.[^`\\\\\\\\]*)*`)|(?:[[:alpha:].][[:alnum:]._]*))\\\\s*(<?<-|=(?!=))\\\\s*(function|\\\\\\\\)(?!\\\\w)","name":"meta.function.r","patterns":[{"include":"#lambda-functions"}]}]},"function-parameters":{"patterns":[{"contentName":"meta.function-call.parameters.r","name":"meta.function-call.r"},{"match":"(?:[a-zA-Z._][\\\\w.]*|`[^`]+`)(?=\\\\s[^=])","name":"variable.other.r"},{"begin":"(?==)","end":"(?=[,)])","patterns":[{"include":"source.r"}]},{"match":",","name":"punctuation.separator.parameters.r"},{"include":"source.r"}]},"general-variables":{"patterns":[{"captures":{"1":{"name":"variable.parameter.r"},"2":{"name":"keyword.operator.assignment.r"}},"match":"([[:alpha:].][[:alnum:]._]*)\\\\s*(=)(?=[^=])"},{"captures":{"1":{"name":"variable.parameter.r"},"2":{"name":"keyword.operator.assignment.r"}},"match":"(`[^`]+`)\\\\s*(=)(?=[^=])"},{"match":"\\\\b([\\\\d_][[:alnum:]._]+)\\\\b","name":"invalid.illegal.variable.other.r"},{"match":"\\\\b([[:alnum:]_]+)(?=::)","name":"entity.namespace.r"}]},"keywords":{"patterns":[{"match":"\\\\b(break|next|repeat|else|in)\\\\b","name":"keyword.control.r"},{"match":"\\\\b(ifelse|if|for|return|switch|while|invisible)\\\\b(?=\\\\s*\\\\()","name":"keyword.control.r"},{"match":"(\\\\-|\\\\+|\\\\*|\\\\/|%\\\\/%|%%|%\\\\*%|%o%|%x%|\\\\^)","name":"keyword.operator.arithmetic.r"},{"match":"(:=|<-|<<-|->|->>)","name":"keyword.operator.assignment.r"},{"match":"(==|<=|>=|!=|<>|<|>|%in%)","name":"keyword.operator.comparison.r"},{"match":"(!|&{1,2}|[|]{1,2})","name":"keyword.operator.logical.r"},{"match":"(\\\\|>)","name":"keyword.operator.pipe.r"},{"match":"(%between%|%chin%|%like%|%\\\\+%|%\\\\+replace%|%:%|%do%|%dopar%|%>%|%<>%|%T>%|%\\\\$%)","name":"keyword.operator.other.r"},{"match":"(\\\\.\\\\.\\\\.|\\\\$|:|\\\\~|@)","name":"keyword.other.r"}]},"lambda-functions":{"patterns":[{"begin":"\\\\b(function)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.r"},"2":{"name":"punctuation.section.parens.begin.r"}},"contentName":"meta.function.parameters.r","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.r"}},"name":"meta.function.r","patterns":[{"include":"#comments"},{"match":"(?:[a-zA-Z._][\\\\w.]*|`[^`]+`)","name":"variable.other.r"},{"begin":"(?==)","end":"(?=[,)])","patterns":[{"include":"source.r"}]},{"match":",","name":"punctuation.separator.parameters.r"}]}]},"roxygen":{"patterns":[{"begin":"^\\\\s*(#\')\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.comment.r"}},"end":"$\\\\n?","name":"comment.line.roxygen.r","patterns":[{"captures":{"1":{"name":"keyword.other.r"},"2":{"name":"variable.parameter.r"}},"match":"(@param)\\\\s*((?:[a-zA-Z._][\\\\w.]*|`[^`]+`))"},{"match":"@[a-zA-Z0-9]+","name":"keyword.other.r"}]}]},"storage-type":{"patterns":[{"match":"\\\\b(character|complex|double|expression|integer|list|logical|numeric|single|raw)\\\\b(?=\\\\s*\\\\()","name":"storage.type.r"}]},"strings":{"patterns":[{"begin":"[rR]\\"(-*)\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.raw.begin.r"}},"end":"\\\\]\\\\1\\"","endCaptures":{"0":{"name":"punctuation.definition.string.raw.end.r"}},"name":"string.quoted.double.raw.r"},{"begin":"[rR]\'(-*)\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.raw.begin.r"}},"end":"\\\\]\\\\1\'","endCaptures":{"0":{"name":"punctuation.definition.string.raw.end.r"}},"name":"string.quoted.single.raw.r"},{"begin":"[rR]\\"(-*)\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.raw.begin.r"}},"end":"\\\\}\\\\1\\"","endCaptures":{"0":{"name":"punctuation.definition.string.raw.end.r"}},"name":"string.quoted.double.raw.r"},{"begin":"[rR]\'(-*)\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.raw.begin.r"}},"end":"\\\\}\\\\1\'","endCaptures":{"0":{"name":"punctuation.definition.string.raw.end.r"}},"name":"string.quoted.single.raw.r"},{"begin":"[rR]\\"(-*)\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.raw.begin.r"}},"end":"\\\\)\\\\1\\"","endCaptures":{"0":{"name":"punctuation.definition.string.raw.end.r"}},"name":"string.quoted.double.raw.r"},{"begin":"[rR]\'(-*)\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.raw.begin.r"}},"end":"\\\\)\\\\1\'","endCaptures":{"0":{"name":"punctuation.definition.string.raw.end.r"}},"name":"string.quoted.single.raw.r"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.r"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.r"}},"name":"string.quoted.double.r","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.r"}]},{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.r"}},"end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.r"}},"name":"string.quoted.single.r","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.r"}]}]}},"scopeName":"source.r"}')),ad=[Jae]});var T$={};x(T$,{default:()=>Xae});var Vae,Xae,q$=_(()=>{VA();vc();Qe();Ng();Nn();Vae=Object.freeze(JSON.parse(`{"displayName":"Julia","name":"julia","patterns":[{"include":"#operator"},{"include":"#array"},{"include":"#string"},{"include":"#parentheses"},{"include":"#bracket"},{"include":"#function_decl"},{"include":"#function_call"},{"include":"#for_block"},{"include":"#keyword"},{"include":"#number"},{"include":"#comment"},{"include":"#type_decl"},{"include":"#symbol"},{"include":"#punctuation"}],"repository":{"array":{"patterns":[{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.bracket.julia"}},"end":"(\\\\])((?:\\\\.)?'*)","endCaptures":{"1":{"name":"meta.bracket.julia"},"2":{"name":"keyword.operator.transpose.julia"}},"name":"meta.array.julia","patterns":[{"match":"\\\\bbegin\\\\b","name":"constant.numeric.julia"},{"match":"\\\\bend\\\\b","name":"constant.numeric.julia"},{"include":"#self_no_for_block"}]}]},"bracket":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"meta.bracket.julia"}},"end":"(\\\\})((?:\\\\.)?'*)","endCaptures":{"1":{"name":"meta.bracket.julia"},"2":{"name":"keyword.operator.transpose.julia"}},"patterns":[{"include":"#self_no_for_block"}]}]},"comment":{"patterns":[{"include":"#comment_block"},{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.julia"}},"end":"\\\\n","name":"comment.line.number-sign.julia","patterns":[{"include":"#comment_tags"}]}]},"comment_block":{"patterns":[{"begin":"#=","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.julia"}},"end":"=#","endCaptures":{"0":{"name":"punctuation.definition.comment.end.julia"}},"name":"comment.block.number-sign-equals.julia","patterns":[{"include":"#comment_tags"},{"include":"#comment_block"}]}]},"comment_tags":{"patterns":[{"match":"\\\\bTODO\\\\b","name":"keyword.other.comment-annotation.julia"},{"match":"\\\\bFIXME\\\\b","name":"keyword.other.comment-annotation.julia"},{"match":"\\\\bCHANGED\\\\b","name":"keyword.other.comment-annotation.julia"},{"match":"\\\\bXXX\\\\b","name":"keyword.other.comment-annotation.julia"}]},"for_block":{"comment":"for blocks need to be special-cased to support tokenizing 'outer' properly","patterns":[{"begin":"\\\\b(for)\\\\b","beginCaptures":{"0":{"name":"keyword.control.julia"}},"end":"(?<!,|\\\\s)(\\\\s*\\\\n)","patterns":[{"match":"\\\\bouter\\\\b","name":"keyword.other.julia"},{"include":"$self"}]}]},"function_call":{"patterns":[{"begin":"((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?\\\\.?(\\\\()","beginCaptures":{"1":{"name":"support.function.julia"},"2":{"name":"support.type.julia"},"3":{"name":"meta.bracket.julia"}},"end":"\\\\)(('|(\\\\.'))*\\\\.?')?","endCaptures":{"0":{"name":"meta.bracket.julia"},"1":{"name":"keyword.operator.transposed-func.julia"}},"patterns":[{"include":"#self_no_for_block"}]}]},"function_decl":{"patterns":[{"captures":{"1":{"name":"entity.name.function.julia"},"2":{"name":"support.type.julia"}},"comment":"first group is function name\\nSecond group is type parameters (e.g. {T<:Number, S})\\nThen open parens\\nThen a lookahead ensures that we are followed by:\\n - anything (function arguments)\\n - 0 or more spaces\\n - Finally an equal sign\\nNegative lookahead ensures we don't have another equal sign (not \`==\`)","match":"((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?(?=\\\\([^#]*\\\\)(::[^\\\\s]+)?(\\\\s*\\\\bwhere\\\\b\\\\s+.+?)?\\\\s*?=(?![=>]))"},{"captures":{"1":{"name":"keyword.other.julia"},"2":{"name":"keyword.operator.dots.julia"},"3":{"name":"entity.name.function.julia"},"4":{"name":"support.type.julia"}},"comment":"similar regex to previous, but with keyword not 1-line syntax","match":"\\\\b(function|macro)(?:\\\\s+(?:(?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*(\\\\.))?((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?|\\\\s*)(?=\\\\()"}]},"keyword":{"patterns":[{"match":"\\\\b(?<![:_\\\\.])(?:function|mutable\\\\s+struct|struct|macro|quote|abstract\\\\s+type|primitive\\\\s+type|module|baremodule|where)\\\\b","name":"keyword.other.julia"},{"match":"\\\\b(?<![:_])(?:if|else|elseif|for|while|begin|let|do|try|catch|finally|return|break|continue)\\\\b","name":"keyword.control.julia"},{"match":"\\\\b(?<![:_])end\\\\b","name":"keyword.control.end.julia"},{"match":"\\\\b(?<![:_])(?:global|local|const)\\\\b","name":"keyword.storage.modifier.julia"},{"match":"\\\\b(?<![:_])(?:export)\\\\b","name":"keyword.control.export.julia"},{"match":"^(?:public)\\\\b","name":"keyword.control.public.julia"},{"match":"\\\\b(?<![:_])(?:import)\\\\b","name":"keyword.control.import.julia"},{"match":"\\\\b(?<![:_])(?:using)\\\\b","name":"keyword.control.using.julia"},{"match":"(?<=\\\\S\\\\s+)\\\\b(as)\\\\b(?=\\\\s+\\\\S)","name":"keyword.control.as.julia"},{"match":"(@(\\\\.|(?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*))","name":"support.function.macro.julia"}]},"number":{"patterns":[{"captures":{"1":{"name":"constant.numeric.julia"},"2":{"name":"keyword.operator.conjugate-number.julia"}},"match":"((?<!(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF]))(?:(?:\\\\b0(?:x|X)[0-9a-fA-F](?:_?[0-9a-fA-F])*)|(?:\\\\b0o[0-7](?:_?[0-7])*)|(?:\\\\b0b[0-1](?:_?[0-1])*)|(?:(?:\\\\b[0-9](?:_?[0-9])*\\\\.?(?!\\\\.)(?:[_0-9]*))|(?:\\\\b\\\\.[0-9](?:_?[0-9])*))(?:[efE][+-]?[0-9](?:_?[0-9])*)?(?:im\\\\b|Inf(?:16|32|64)?\\\\b|NaN(?:16|32|64)?\\\\b|\u03C0\\\\b|pi\\\\b|\u212F\\\\b)?|\\\\b[0-9]+|\\\\bInf(?:16|32|64)?\\\\b|\\\\bNaN(?:16|32|64)?\\\\b|\\\\b\u03C0\\\\b|\\\\bpi\\\\b|\\\\b\u212F\\\\b))('*)"},{"match":"\\\\bARGS\\\\b|\\\\bC_NULL\\\\b|\\\\bDEPOT_PATH\\\\b|\\\\bENDIAN_BOM\\\\b|\\\\bENV\\\\b|\\\\bLOAD_PATH\\\\b|\\\\bPROGRAM_FILE\\\\b|\\\\bstdin\\\\b|\\\\bstdout\\\\b|\\\\bstderr\\\\b|\\\\bVERSION\\\\b|\\\\bdevnull\\\\b","name":"constant.global.julia"},{"match":"\\\\btrue\\\\b|\\\\bfalse\\\\b|\\\\bnothing\\\\b|\\\\bmissing\\\\b","name":"constant.language.julia"}]},"operator":{"patterns":[{"match":"\\\\.?(?:<-->|->|-->|<--|\u2190|\u2192|\u2194|\u219A|\u219B|\u219E|\u21A0|\u21A2|\u21A3|\u21A6|\u21A4|\u21AE|\u21CE|\u21CD|\u21CF|\u21D0|\u21D2|\u21D4|\u21F4|\u21F6|\u21F7|\u21F8|\u21F9|\u21FA|\u21FB|\u21FC|\u21FD|\u21FE|\u21FF|\u27F5|\u27F6|\u27F7|\u27F9|\u27FA|\u27FB|\u27FC|\u27FD|\u27FE|\u27FF|\u2900|\u2901|\u2902|\u2903|\u2904|\u2905|\u2906|\u2907|\u290C|\u290D|\u290E|\u290F|\u2910|\u2911|\u2914|\u2915|\u2916|\u2917|\u2918|\u291D|\u291E|\u291F|\u2920|\u2944|\u2945|\u2946|\u2947|\u2948|\u294A|\u294B|\u294E|\u2950|\u2952|\u2953|\u2956|\u2957|\u295A|\u295B|\u295E|\u295F|\u2962|\u2964|\u2966|\u2967|\u2968|\u2969|\u296A|\u296B|\u296C|\u296D|\u2970|\u29F4|\u2B31|\u2B30|\u2B32|\u2B33|\u2B34|\u2B35|\u2B36|\u2B37|\u2B38|\u2B39|\u2B3A|\u2B3B|\u2B3C|\u2B3D|\u2B3E|\u2B3F|\u2B40|\u2B41|\u2B42|\u2B43|\u2977|\u2B44|\u297A|\u2B47|\u2B48|\u2B49|\u2B4A|\u2B4B|\u2B4C|\uFFE9|\uFFEB|\u21DC|\u21DD|\u219C|\u219D|\u21A9|\u21AA|\u21AB|\u21AC|\u21BC|\u21BD|\u21C0|\u21C1|\u21C4|\u21C6|\u21C7|\u21C9|\u21CB|\u21CC|\u21DA|\u21DB|\u21E0|\u21E2|\u21B7|\u21B6|\u21BA|\u21BB|=>)","name":"keyword.operator.arrow.julia"},{"match":"(?::=|\\\\+=|-=|\\\\*=|//=|/=|\\\\.//=|\\\\./=|\\\\.\\\\*=|\\\\\\\\=|\\\\.\\\\\\\\=|\\\\^=|\\\\.\\\\^=|%=|\\\\.%=|\xF7=|\\\\.\xF7=|\\\\|=|&=|\\\\.&=|\u22BB=|\\\\.\u22BB=|\\\\$=|<<=|>>=|>>>=|=(?!=))","name":"keyword.operator.update.julia"},{"match":"(?:<<|>>>|>>|\\\\.>>>|\\\\.>>|\\\\.<<)","name":"keyword.operator.shift.julia"},{"captures":{"1":{"name":"keyword.operator.relation.types.julia"},"2":{"name":"support.type.julia"},"3":{"name":"keyword.operator.transpose.julia"}},"match":"(?:\\\\s*(::|>:|<:)\\\\s*((?:(?:Union)?\\\\([^)]*\\\\)|[[:alpha:]_$\u2207][[:word:]\u207A-\u209C!\u2032\\\\.]*(?:(?:{(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})|(?:\\".+?(?<!\\\\\\\\)\\"))?)))(?:\\\\.\\\\.\\\\.)?((?:\\\\.)?'*)"},{"match":"(\\\\.?((?<!<)<=|(?<!>)>=|>|<|\u2265|\u2264|===|==|\u2261|!=|\u2260|!==|\u2262|\u2208|\u2209|\u220B|\u220C|\u2286|\u2288|\u2282|\u2284|\u228A|\u221D|\u220A|\u220D|\u2225|\u2226|\u2237|\u223A|\u223B|\u223D|\u223E|\u2241|\u2243|\u2242|\u2244|\u2245|\u2246|\u2247|\u2248|\u2249|\u224A|\u224B|\u224C|\u224D|\u224E|\u2250|\u2251|\u2252|\u2253|\u2256|\u2257|\u2258|\u2259|\u225A|\u225B|\u225C|\u225D|\u225E|\u225F|\u2263|\u2266|\u2267|\u2268|\u2269|\u226A|\u226B|\u226C|\u226D|\u226E|\u226F|\u2270|\u2271|\u2272|\u2273|\u2274|\u2275|\u2276|\u2277|\u2278|\u2279|\u227A|\u227B|\u227C|\u227D|\u227E|\u227F|\u2280|\u2281|\u2283|\u2285|\u2287|\u2289|\u228B|\u228F|\u2290|\u2291|\u2292|\u229C|\u22A9|\u22AC|\u22AE|\u22B0|\u22B1|\u22B2|\u22B3|\u22B4|\u22B5|\u22B6|\u22B7|\u22CD|\u22D0|\u22D1|\u22D5|\u22D6|\u22D7|\u22D8|\u22D9|\u22DA|\u22DB|\u22DC|\u22DD|\u22DE|\u22DF|\u22E0|\u22E1|\u22E2|\u22E3|\u22E4|\u22E5|\u22E6|\u22E7|\u22E8|\u22E9|\u22EA|\u22EB|\u22EC|\u22ED|\u22F2|\u22F3|\u22F4|\u22F5|\u22F6|\u22F7|\u22F8|\u22F9|\u22FA|\u22FB|\u22FC|\u22FD|\u22FE|\u22FF|\u27C8|\u27C9|\u27D2|\u29B7|\u29C0|\u29C1|\u29E1|\u29E3|\u29E4|\u29E5|\u2A66|\u2A67|\u2A6A|\u2A6B|\u2A6C|\u2A6D|\u2A6E|\u2A6F|\u2A70|\u2A71|\u2A72|\u2A73|\u2A75|\u2A76|\u2A77|\u2A78|\u2A79|\u2A7A|\u2A7B|\u2A7C|\u2A7D|\u2A7E|\u2A7F|\u2A80|\u2A81|\u2A82|\u2A83|\u2A84|\u2A85|\u2A86|\u2A87|\u2A88|\u2A89|\u2A8A|\u2A8B|\u2A8C|\u2A8D|\u2A8E|\u2A8F|\u2A90|\u2A91|\u2A92|\u2A93|\u2A94|\u2A95|\u2A96|\u2A97|\u2A98|\u2A99|\u2A9A|\u2A9B|\u2A9C|\u2A9D|\u2A9E|\u2A9F|\u2AA0|\u2AA1|\u2AA2|\u2AA3|\u2AA4|\u2AA5|\u2AA6|\u2AA7|\u2AA8|\u2AA9|\u2AAA|\u2AAB|\u2AAC|\u2AAD|\u2AAE|\u2AAF|\u2AB0|\u2AB1|\u2AB2|\u2AB3|\u2AB4|\u2AB5|\u2AB6|\u2AB7|\u2AB8|\u2AB9|\u2ABA|\u2ABB|\u2ABC|\u2ABD|\u2ABE|\u2ABF|\u2AC0|\u2AC1|\u2AC2|\u2AC3|\u2AC4|\u2AC5|\u2AC6|\u2AC7|\u2AC8|\u2AC9|\u2ACA|\u2ACB|\u2ACC|\u2ACD|\u2ACE|\u2ACF|\u2AD0|\u2AD1|\u2AD2|\u2AD3|\u2AD4|\u2AD5|\u2AD6|\u2AD7|\u2AD8|\u2AD9|\u2AF7|\u2AF8|\u2AF9|\u2AFA|\u22A2|\u22A3|\u27C2|\u2AEA|\u2AEB|<:|>:))","name":"keyword.operator.relation.julia"},{"match":"(?<=\\\\s)(?:\\\\?)(?=\\\\s)","name":"keyword.operator.ternary.julia"},{"match":"(?<=\\\\s)(?:\\\\:)(?=\\\\s)","name":"keyword.operator.ternary.julia"},{"match":"(?:\\\\|\\\\||&&|(?<!(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF]))!)","name":"keyword.operator.boolean.julia"},{"match":"(?<=[[:word:]\u207A-\u209C!\u2032\u2207\\\\)\\\\]\\\\}])(?::)","name":"keyword.operator.range.julia"},{"match":"(?:\\\\|>)","name":"keyword.operator.applies.julia"},{"match":"(?:\\\\||\\\\.\\\\||\\\\&|\\\\.\\\\&|~|\xAC|\\\\.~|\u22BB|\\\\.\u22BB)","name":"keyword.operator.bitwise.julia"},{"match":"\\\\.?(?:\\\\+\\\\+|\\\\-\\\\-|\\\\+|\\\\-|\u2212|\xA6|\\\\||\u2295|\u2296|\u229E|\u229F|\u222A|\u2228|\u2294|\xB1|\u2213|\u2214|\u2238|\u224F|\u228E|\u22BB|\u22BD|\u22CE|\u22D3|\u27C7|\u29FA|\u29FB|\u2A08|\u2A22|\u2A23|\u2A24|\u2A25|\u2A26|\u2A27|\u2A28|\u2A29|\u2A2A|\u2A2B|\u2A2C|\u2A2D|\u2A2E|\u2A39|\u2A3A|\u2A41|\u2A42|\u2A45|\u2A4A|\u2A4C|\u2A4F|\u2A50|\u2A52|\u2A54|\u2A56|\u2A57|\u2A5B|\u2A5D|\u2A61|\u2A62|\u2A63|\\\\*|//?|\u233F|\xF7|%|&|\xB7|\u0387|\u22C5|\u2218|\xD7|\\\\\\\\|\u2229|\u2227|\u2297|\u2298|\u2299|\u229A|\u229B|\u22A0|\u22A1|\u2293|\u2217|\u2219|\u2224|\u214B|\u2240|\u22BC|\u22C4|\u22C6|\u22C7|\u22C9|\u22CA|\u22CB|\u22CC|\u22CF|\u22D2|\u27D1|\u29B8|\u29BC|\u29BE|\u29BF|\u29F6|\u29F7|\u2A07|\u2A30|\u2A31|\u2A32|\u2A33|\u2A34|\u2A35|\u2A36|\u2A37|\u2A38|\u2A3B|\u2A3C|\u2A3D|\u2A40|\u2A43|\u2A44|\u2A4B|\u2A4D|\u2A4E|\u2A51|\u2A53|\u2A55|\u2A58|\u2A5A|\u2A5C|\u2A5E|\u2A5F|\u2A60|\u2ADB|\u228D|\u25B7|\u2A1D|\u27D5|\u27D6|\u27D7|\u2A1F|\\\\^|\u2191|\u2193|\u21F5|\u27F0|\u27F1|\u2908|\u2909|\u290A|\u290B|\u2912|\u2913|\u2949|\u294C|\u294D|\u294F|\u2951|\u2954|\u2955|\u2958|\u2959|\u295C|\u295D|\u2960|\u2961|\u2963|\u2965|\u296E|\u296F|\uFFEA|\uFFEC|\u221A|\u221B|\u221C|\u22C6|\xB1|\u2213)","name":"keyword.operator.arithmetic.julia"},{"match":"(?:\u2218)","name":"keyword.operator.compose.julia"},{"match":"(?:::|(?<=\\\\s)isa(?=\\\\s))","name":"keyword.operator.isa.julia"},{"match":"(?:(?<=\\\\s)in(?=\\\\s))","name":"keyword.operator.relation.in.julia"},{"match":"(?:\\\\.(?=(?:@|_|\\\\p{L}))|\\\\.\\\\.+|\u2026|\u205D|\u22EE|\u22F1|\u22F0|\u22EF)","name":"keyword.operator.dots.julia"},{"match":"(?:\\\\$)(?=.+)","name":"keyword.operator.interpolation.julia"},{"captures":{"2":{"name":"keyword.operator.transposed-variable.julia"}},"match":"((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)(('|(\\\\.'))*\\\\.?')"},{"captures":{"1":{"name":"bracket.end.julia"},"2":{"name":"keyword.operator.transposed-matrix.julia"}},"match":"(\\\\])((?:'|(?:\\\\.'))*\\\\.?')"},{"captures":{"1":{"name":"bracket.end.julia"},"2":{"name":"keyword.operator.transposed-parens.julia"}},"match":"(\\\\))((?:'|(?:\\\\.'))*\\\\.?')"}]},"parentheses":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.bracket.julia"}},"end":"(\\\\))((?:\\\\.)?'*)","endCaptures":{"1":{"name":"meta.bracket.julia"},"2":{"name":"keyword.operator.transpose.julia"}},"patterns":[{"include":"#self_no_for_block"}]}]},"punctuation":{"patterns":[{"match":",","name":"punctuation.separator.comma.julia"},{"match":";","name":"punctuation.separator.semicolon.julia"}]},"self_no_for_block":{"comment":"Same as $self, but does not contain #for_block. 'outer' is not valid in some contexts (e.g. generators, comprehensions, indexing), so use this when matching those in begin/end patterns. Keep this up-to-date with $self!","patterns":[{"include":"#operator"},{"include":"#array"},{"include":"#string"},{"include":"#parentheses"},{"include":"#bracket"},{"include":"#function_decl"},{"include":"#function_call"},{"include":"#keyword"},{"include":"#number"},{"include":"#comment"},{"include":"#type_decl"},{"include":"#symbol"},{"include":"#punctuation"}]},"string":{"patterns":[{"begin":"(?:(@doc)\\\\s((?:doc)?\\"\\"\\")|(doc\\"\\"\\"))","beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"end":"(\\"\\"\\") ?(->)?","endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"keyword.operator.arrow.julia"}},"name":"string.docstring.julia","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}]},{"begin":"(i?cxx)(\\"\\"\\")","beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"contentName":"meta.embedded.inline.cpp","end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}},"name":"embed.cxx.julia","patterns":[{"include":"source.cpp#root_context"},{"include":"#string_dollar_sign_interpolate"}]},{"begin":"(py)(\\"\\"\\")","beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"contentName":"meta.embedded.inline.python","end":"([\\\\s\\\\w]*)(\\"\\"\\")","endCaptures":{"2":{"name":"punctuation.definition.string.end.julia"}},"name":"embed.python.julia","patterns":[{"include":"source.python"},{"include":"#string_dollar_sign_interpolate"}]},{"begin":"(js)(\\"\\"\\")","beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"contentName":"meta.embedded.inline.javascript","end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}},"name":"embed.js.julia","patterns":[{"include":"source.js"},{"include":"#string_dollar_sign_interpolate"}]},{"begin":"(R)(\\"\\"\\")","beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"contentName":"meta.embedded.inline.r","end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}},"name":"embed.R.julia","patterns":[{"include":"source.r"},{"include":"#string_dollar_sign_interpolate"}]},{"begin":"(raw)(\\"\\"\\")","beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}},"name":"string.quoted.other.julia","patterns":[{"include":"#string_escaped_char"}]},{"begin":"(raw)(\\")","beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}},"name":"string.quoted.other.julia","patterns":[{"include":"#string_escaped_char"}]},{"begin":"(sql)(\\"\\"\\")","beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"contentName":"meta.embedded.inline.sql","end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}},"name":"embed.sql.julia","patterns":[{"include":"source.sql"},{"include":"#string_dollar_sign_interpolate"}]},{"begin":"var\\"\\"\\"","end":"\\"\\"\\"","name":"constant.other.symbol.julia","patterns":[{"include":"#string_escaped_char"}]},{"begin":"var\\"","end":"\\"","name":"constant.other.symbol.julia","patterns":[{"include":"#string_escaped_char"}]},{"begin":"^\\\\s?(doc)?(\\"\\"\\")\\\\s?$","beginCaptures":{"1":{"name":"support.function.macro.julia"},"2":{"name":"punctuation.definition.string.begin.julia"}},"comment":"This only matches docstrings that start and end with triple quotes on\\ntheir own line in the void","end":"(\\"\\"\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"}},"name":"string.docstring.julia","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"}},"end":"'(?!')","endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}},"name":"string.quoted.single.julia","patterns":[{"include":"#string_escaped_char"}]},{"begin":"\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.multiline.begin.julia"}},"comment":"multi-line string with triple double quotes","end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.multiline.end.julia"}},"name":"string.quoted.triple.double.julia","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}]},{"begin":"\\"(?!\\"\\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"}},"comment":"String with single pair of double quotes. Regex matches isolated double quote","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.julia"}},"name":"string.quoted.double.julia","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}]},{"begin":"r\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.regexp.begin.julia"}},"end":"(\\"\\"\\")([imsx]{0,4})?","endCaptures":{"1":{"name":"punctuation.definition.string.regexp.end.julia"},"2":{"comment":"I took this scope name from python regex grammar","name":"keyword.other.option-toggle.regexp.julia"}},"name":"string.regexp.julia","patterns":[{"include":"#string_escaped_char"}]},{"begin":"r\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.regexp.begin.julia"}},"end":"(\\")([imsx]{0,4})?","endCaptures":{"1":{"name":"punctuation.definition.string.regexp.end.julia"},"2":{"comment":"I took this scope name from python regex grammar","name":"keyword.other.option-toggle.regexp.julia"}},"name":"string.regexp.julia","patterns":[{"include":"#string_escaped_char"}]},{"begin":"(?<!\\")((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"end":"(\\"\\"\\")((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)?","endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}},"name":"string.quoted.other.julia","patterns":[{"include":"#string_escaped_char"}]},{"begin":"(?<!\\")((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"end":"(?<![^\\\\\\\\]\\\\\\\\)(\\")((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)?","endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}},"name":"string.quoted.other.julia","patterns":[{"include":"#string_escaped_char"}]},{"begin":"(?<!\`)((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)?\`\`\`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"end":"(\`\`\`)((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)?","endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}},"name":"string.interpolated.backtick.julia","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}]},{"begin":"(?<!\`)((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)?\`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.julia"},"1":{"name":"support.function.macro.julia"}},"end":"(?<![^\\\\\\\\]\\\\\\\\)(\`)((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)?","endCaptures":{"1":{"name":"punctuation.definition.string.end.julia"},"2":{"name":"support.function.macro.julia"}},"name":"string.interpolated.backtick.julia","patterns":[{"include":"#string_escaped_char"},{"include":"#string_dollar_sign_interpolate"}]}]},"string_dollar_sign_interpolate":{"patterns":[{"match":"\\\\$(?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF]|[^\\\\p{^Sc}$])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF]|[^\\\\p{^Sc}$])*","name":"variable.interpolation.julia"},{"begin":"\\\\$(\\\\()","beginCaptures":{"1":{"name":"meta.bracket.julia"}},"comment":"\`punctuation.section.embedded\`, \`constant.escape\`,\\n& \`meta.embedded.line\` were considered but appear to have even spottier\\nsupport among popular syntaxes.","end":"\\\\)","endCaptures":{"0":{"name":"meta.bracket.julia"}},"name":"variable.interpolation.julia","patterns":[{"include":"#self_no_for_block"}]}]},"string_escaped_char":{"patterns":[{"match":"\\\\\\\\(\\\\\\\\|[0-3]\\\\d{,2}|[4-7]\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8}|.)","name":"constant.character.escape.julia"}]},"symbol":{"patterns":[{"comment":"This is string.quoted.symbol.julia in tpoisot's package","match":"(?<![[:word:]\u207A-\u209C!\u2032\u2207\\\\)\\\\]\\\\}]):(?:(?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)(?!(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF]))(?![\\"\`])","name":"constant.other.symbol.julia"}]},"type_decl":{"patterns":[{"captures":{"1":{"name":"entity.name.type.julia"},"2":{"name":"entity.other.inherited-class.julia"},"3":{"name":"punctuation.separator.inheritance.julia"}},"match":"(?>!:_)(?:struct|mutable\\\\s+struct|abstract\\\\s+type|primitive\\\\s+type)\\\\s+((?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*)(\\\\s*(<:)\\\\s*(?:[[:alpha:]_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\u{1D6C1}\u{1D6DB}\u{1D6FB}\u{1D715}\u{1D735}\u{1D74F}\u{1D76F}\u{1D789}\u{1D7A9}\u{1D7C3}\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\u{1D7CE}-\u{1D7E1}]|[^\\\\P{Mn}\\u0001-\xA1]|[^\\\\P{Mc}\\u0001-\xA1]|[^\\\\P{Nd}\\u0001-\xA1]|[^\\\\P{Pc}\\u0001-\xA1]|[^\\\\P{Sk}\\u0001-\xA1]|[^\\\\P{Me}\\u0001-\xA1]|[^\\\\P{No}\\u0001-\xA1]|[\u2032-\u2037\u2057]|[^\\\\P{So}\u2190-\u21FF])*(?:{.*})?)?","name":"meta.type.julia"}]}},"scopeName":"source.julia","embeddedLangs":["cpp","python","javascript","r","sql"],"aliases":["jl"]}`)),Xae=[...Zo,...Ur,...J,...ad,...Ve,Vae]});var G$={};x(G$,{default:()=>tre});var ere,tre,z$=_(()=>{ere=Object.freeze(JSON.parse('{"displayName":"Kotlin","fileTypes":["kt","kts"],"name":"kotlin","patterns":[{"include":"#import"},{"include":"#package"},{"include":"#code"}],"repository":{"annotation-simple":{"match":"(?<!\\\\w)@[\\\\w\\\\.]+\\\\b(?!:)","name":"entity.name.type.annotation.kotlin"},"annotation-site":{"begin":"(?<!\\\\w)(@\\\\w+):\\\\s*(?!\\\\[)","beginCaptures":{"1":{"name":"entity.name.type.annotation-site.kotlin"}},"end":"$","patterns":[{"include":"#unescaped-annotation"}]},"annotation-site-list":{"begin":"(?<!\\\\w)(@\\\\w+):\\\\s*\\\\[","beginCaptures":{"1":{"name":"entity.name.type.annotation-site.kotlin"}},"end":"\\\\]","patterns":[{"include":"#unescaped-annotation"}]},"binary-literal":{"match":"0(b|B)[01][01_]*","name":"constant.numeric.binary.kotlin"},"boolean-literal":{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.kotlin"},"character":{"begin":"\'","end":"\'","name":"string.quoted.single.kotlin","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.kotlin"}]},"class-declaration":{"captures":{"1":{"name":"keyword.hard.class.kotlin"},"2":{"name":"entity.name.type.class.kotlin"},"3":{"patterns":[{"include":"#type-parameter"}]}},"match":"\\\\b(class|(?:fun\\\\s+)?interface)\\\\s+(\\\\b\\\\w+\\\\b|`[^`]+`)\\\\s*(?<GROUP><([^<>]|\\\\g<GROUP>)+>)?"},"code":{"patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#annotation-simple"},{"include":"#annotation-site-list"},{"include":"#annotation-site"},{"include":"#class-declaration"},{"include":"#object"},{"include":"#type-alias"},{"include":"#function"},{"include":"#variable-declaration"},{"include":"#type-constraint"},{"include":"#type-annotation"},{"include":"#function-call"},{"include":"#method-reference"},{"include":"#key"},{"include":"#string"},{"include":"#string-empty"},{"include":"#string-multiline"},{"include":"#character"},{"include":"#lambda-arrow"},{"include":"#operators"},{"include":"#self-reference"},{"include":"#decimal-literal"},{"include":"#hex-literal"},{"include":"#binary-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"}]},"comment-block":{"begin":"/\\\\*(?!\\\\*)","end":"\\\\*/","name":"comment.block.kotlin"},"comment-javadoc":{"patterns":[{"begin":"/\\\\*\\\\*","end":"\\\\*/","name":"comment.block.javadoc.kotlin","patterns":[{"match":"@(return|constructor|receiver|sample|see|author|since|suppress)\\\\b","name":"keyword.other.documentation.javadoc.kotlin"},{"captures":{"1":{"name":"keyword.other.documentation.javadoc.kotlin"},"2":{"name":"variable.parameter.kotlin"}},"match":"(@param|@property)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"keyword.other.documentation.javadoc.kotlin"},"2":{"name":"variable.parameter.kotlin"}},"match":"(@param)\\\\[(\\\\S+)\\\\]"},{"captures":{"1":{"name":"keyword.other.documentation.javadoc.kotlin"},"2":{"name":"entity.name.type.class.kotlin"}},"match":"(@(?:exception|throws))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"keyword.other.documentation.javadoc.kotlin"},"2":{"name":"entity.name.type.class.kotlin"},"3":{"name":"variable.parameter.kotlin"}},"match":"{(@link)\\\\s+(\\\\S+)?#([\\\\w$]+\\\\s*\\\\([^\\\\(\\\\)]*\\\\)).*}"}]}]},"comment-line":{"begin":"//","end":"$","name":"comment.line.double-slash.kotlin"},"comments":{"patterns":[{"include":"#comment-line"},{"include":"#comment-block"},{"include":"#comment-javadoc"}]},"control-keywords":{"match":"\\\\b(if|else|while|do|when|try|throw|break|continue|return|for)\\\\b","name":"keyword.control.kotlin"},"decimal-literal":{"match":"\\\\b\\\\d[\\\\d_]*(\\\\.[\\\\d_]+)?((e|E)\\\\d+)?(u|U)?(L|F|f)?\\\\b","name":"constant.numeric.decimal.kotlin"},"function":{"captures":{"1":{"name":"keyword.hard.fun.kotlin"},"2":{"patterns":[{"include":"#type-parameter"}]},"4":{"name":"entity.name.type.class.extension.kotlin"},"5":{"name":"entity.name.function.declaration.kotlin"}},"match":"\\\\b(fun)\\\\b\\\\s*(?<GROUP><([^<>]|\\\\g<GROUP>)+>)?\\\\s*(?:(?:(\\\\w+)\\\\.)?(\\\\b\\\\w+\\\\b|`[^`]+`))?"},"function-call":{"captures":{"1":{"name":"entity.name.function.call.kotlin"},"2":{"patterns":[{"include":"#type-parameter"}]}},"match":"\\\\??\\\\.?(\\\\b\\\\w+\\\\b|`[^`]+`)\\\\s*(?<GROUP><([^<>]|\\\\g<GROUP>)+>)?\\\\s*(?=[({])"},"hard-keywords":{"match":"\\\\b(as|typeof|is|in)\\\\b","name":"keyword.hard.kotlin"},"hex-literal":{"match":"0(x|X)[A-Fa-f0-9][A-Fa-f0-9_]*(u|U)?","name":"constant.numeric.hex.kotlin"},"import":{"begin":"\\\\b(import)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.soft.kotlin"}},"contentName":"entity.name.package.kotlin","end":";|$","name":"meta.import.kotlin","patterns":[{"include":"#comments"},{"include":"#hard-keywords"},{"match":"\\\\*","name":"variable.language.wildcard.kotlin"}]},"key":{"captures":{"1":{"name":"variable.parameter.kotlin"},"2":{"name":"keyword.operator.assignment.kotlin"}},"match":"\\\\b(\\\\w=)\\\\s*(=)"},"keywords":{"patterns":[{"include":"#prefix-modifiers"},{"include":"#postfix-modifiers"},{"include":"#soft-keywords"},{"include":"#hard-keywords"},{"include":"#control-keywords"}]},"lambda-arrow":{"match":"->","name":"storage.type.function.arrow.kotlin"},"method-reference":{"captures":{"1":{"name":"entity.name.function.reference.kotlin"}},"match":"\\\\??::(\\\\b\\\\w+\\\\b|`[^`]+`)"},"null-literal":{"match":"\\\\bnull\\\\b","name":"constant.language.null.kotlin"},"object":{"captures":{"1":{"name":"keyword.hard.object.kotlin"},"2":{"name":"entity.name.type.object.kotlin"}},"match":"\\\\b(object)(?:\\\\s+(\\\\b\\\\w+\\\\b|`[^`]+`))?"},"operators":{"patterns":[{"match":"(===?|\\\\!==?|<=|>=|<|>)","name":"keyword.operator.comparison.kotlin"},{"match":"([+*/%-]=)","name":"keyword.operator.assignment.arithmetic.kotlin"},{"match":"(=)","name":"keyword.operator.assignment.kotlin"},{"match":"([+*/%-])","name":"keyword.operator.arithmetic.kotlin"},{"match":"(!|&&|\\\\|\\\\|)","name":"keyword.operator.logical.kotlin"},{"match":"(--|\\\\+\\\\+)","name":"keyword.operator.increment-decrement.kotlin"},{"match":"(\\\\.\\\\.)","name":"keyword.operator.range.kotlin"}]},"package":{"begin":"\\\\b(package)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.hard.package.kotlin"}},"contentName":"entity.name.package.kotlin","end":";|$","name":"meta.package.kotlin","patterns":[{"include":"#comments"}]},"postfix-modifiers":{"match":"\\\\b(where|by|get|set)\\\\b","name":"storage.modifier.other.kotlin"},"prefix-modifiers":{"match":"\\\\b(abstract|final|enum|open|annotation|sealed|data|override|final|lateinit|private|protected|public|internal|inner|companion|noinline|crossinline|vararg|reified|tailrec|operator|infix|inline|external|const|suspend|value)\\\\b","name":"storage.modifier.other.kotlin"},"self-reference":{"match":"\\\\b(this|super)(@\\\\w+)?\\\\b","name":"variable.language.this.kotlin"},"soft-keywords":{"match":"\\\\b(init|catch|finally|field)\\\\b","name":"keyword.soft.kotlin"},"string":{"begin":"(?<!\\")\\"(?!\\")","end":"\\"","name":"string.quoted.double.kotlin","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.kotlin"},{"include":"#string-escape-simple"},{"include":"#string-escape-bracketed"}]},"string-empty":{"match":"(?<!\\")\\"\\"(?!\\")","name":"string.quoted.double.kotlin"},"string-escape-bracketed":{"begin":"(?<!\\\\\\\\)(\\\\$\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.template-expression.begin"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.template-expression.end"}},"name":"meta.template.expression.kotlin","patterns":[{"include":"#code"}]},"string-escape-simple":{"match":"(?<!\\\\\\\\)\\\\$\\\\w+\\\\b","name":"variable.string-escape.kotlin"},"string-multiline":{"begin":"\\"\\"\\"","end":"\\"\\"\\"","name":"string.quoted.double.kotlin","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.kotlin"},{"include":"#string-escape-simple"},{"include":"#string-escape-bracketed"}]},"type-alias":{"captures":{"1":{"name":"keyword.hard.typealias.kotlin"},"2":{"name":"entity.name.type.kotlin"},"3":{"patterns":[{"include":"#type-parameter"}]}},"match":"\\\\b(typealias)\\\\s+(\\\\b\\\\w+\\\\b|`[^`]+`)\\\\s*(?<GROUP><([^<>]|\\\\g<GROUP>)+>)?"},"type-annotation":{"captures":{"0":{"patterns":[{"include":"#type-parameter"}]}},"match":"(?<![:?]):\\\\s*(\\\\w|\\\\?|\\\\s|->|(?<GROUP>[<(]([^<>()\\"\']|\\\\g<GROUP>)+[)>]))+"},"type-parameter":{"patterns":[{"match":"\\\\b\\\\w+\\\\b","name":"entity.name.type.kotlin"},{"match":"\\\\b(in|out)\\\\b","name":"storage.modifier.kotlin"}]},"unescaped-annotation":{"match":"\\\\b[\\\\w\\\\.]+\\\\b","name":"entity.name.type.annotation.kotlin"},"variable-declaration":{"captures":{"1":{"name":"keyword.hard.kotlin"},"2":{"patterns":[{"include":"#type-parameter"}]}},"match":"\\\\b(val|var)\\\\b\\\\s*(?<GROUP><([^<>]|\\\\g<GROUP>)+>)?"}},"scopeName":"source.kotlin","aliases":["kt","kts"]}')),tre=[ere]});var U$={};x(U$,{default:()=>are});var nre,are,H$=_(()=>{nre=Object.freeze(JSON.parse('{"displayName":"Kusto","fileTypes":["csl","kusto","kql"],"name":"kusto","patterns":[{"comment":"Tabular operators: common helper operators","match":"\\\\b(by|from|of|to|step|with)\\\\b","name":"keyword.other.operator.kusto"},{"comment":"Query statements: https://docs.microsoft.com/en-us/azure/kusto/query/statements","match":"\\\\b(let|set|alias|declare|pattern|query_parameters|restrict|access|set)\\\\b","name":"keyword.control.kusto"},{"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/datatypes-string-operators","match":"\\\\b(and|or|has_all|has_any|matches|regex)\\\\b","name":"keyword.other.operator.kusto"},{"captures":{"1":{"name":"support.function.kusto"},"2":{"patterns":[{"include":"#Strings"}]}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/clusterfunction","match":"\\\\b(cluster|database)(?:\\\\s*\\\\(\\\\s*(.+?)\\\\s*\\\\))?(?!\\\\w)","name":"meta.special.database.kusto"},{"comment":"Special functions: https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/tablefunction","match":"\\\\b(external_table|materialized_view|materialize|table|toscalar)\\\\b","name":"support.function.kusto"},{"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/betweenoperator","match":"(?<!\\\\w)(!?between)\\\\b","name":"keyword.other.operator.kusto"},{"captures":{"1":{"name":"support.function.kusto"},"2":{"patterns":[{"include":"#Numeric"}]},"3":{"patterns":[{"include":"#Numeric"}]}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/binoperators","match":"\\\\b(binary_and|binary_or|binary_shift_left|binary_shift_right|binary_xor)(?:\\\\s*\\\\(\\\\s*(\\\\w+)\\\\s*,\\\\s*(\\\\w+)\\\\s*\\\\))?(?!\\\\w)","name":"meta.scalar.bitwise.kusto"},{"captures":{"1":{"name":"support.function.kusto"},"2":{"patterns":[{"include":"#Numeric"}]}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/binary-notfunction","match":"\\\\b(binary_not|bitset_count_ones)(?:\\\\s*\\\\(\\\\s*(\\\\w+)\\\\s*\\\\))?(?!\\\\w)","name":"meta.scalar.bitwise.kusto"},{"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/in-cs-operator","match":"(?<!\\\\w)(!?in~?)(?!\\\\w)","name":"keyword.other.operator.kusto"},{"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/datatypes-string-operators","match":"(?<!\\\\w)(!?(?:contains|endswith|hasprefix|hassuffix|has|startswith)(?:_cs)?)(?!\\\\w)","name":"keyword.other.operator.kusto"},{"captures":{"1":{"name":"support.function.kusto"},"2":{"patterns":[{"include":"#DateTimeTimeSpanDataTypes"},{"include":"#TimeSpanLiterals"},{"include":"#DateTimeTimeSpanFunctions"},{"include":"#Numeric"}]},"3":{"patterns":[{"include":"#DateTimeTimeSpanDataTypes"},{"include":"#TimeSpanLiterals"},{"include":"#DateTimeTimeSpanFunctions"},{"include":"#Numeric"}]},"4":{"patterns":[{"include":"#DateTimeTimeSpanDataTypes"},{"include":"#TimeSpanLiterals"},{"include":"#DateTimeTimeSpanFunctions"},{"include":"#Numeric"}]}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/rangefunction","match":"\\\\b(range)\\\\s*\\\\((?:\\\\s*(\\\\w+(?:\\\\(.*?\\\\))?)\\\\s*,\\\\s*(\\\\w+(?:\\\\(.*?\\\\))?)\\\\s*,?(?:\\\\s*)?(\\\\w+(?:\\\\(.*?\\\\))?)?\\\\s*\\\\))?(?!\\\\w)","name":"meta.scalar.function.range.kusto"},{"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/scalarfunctions","match":"\\\\b(abs|acos|around|array_concat|array_iff|array_index_of|array_length|array_reverse|array_rotate_left|array_rotate_right|array_shift_left|array_shift_right|array_slice|array_sort_asc|array_sort_desc|array_split|array_sum|asin|assert|atan2|atan|bag_has_key|bag_keys|bag_merge|bag_remove_keys|base64_decode_toarray|base64_decode_tostring|base64_decode_toguid|base64_encode_fromarray|base64_encode_tostring|base64_encode_fromguid|beta_cdf|beta_inv|beta_pdf|bin_at|bin_auto|case|ceiling|coalesce|column_ifexists|convert_angle|convert_energy|convert_force|convert_length|convert_mass|convert_speed|convert_temperature|convert_volume|cos|cot|countof|current_cluster_endpoint|current_database|current_principal_details|current_principal_is_member_of|current_principal|cursor_after|cursor_before_or_at|cursor_current|current_cursor|dcount_hll|degrees|dynamic_to_json|estimate_data_size|exp10|exp2|exp|extent_id|extent_tags|extract_all|extract_json|extractjson|extract|floor|format_bytes|format_ipv4_mask|format_ipv4|gamma|gettype|gzip_compress_to_base64_string|gzip_decompress_from_base64_string|has_any_index|has_any_ipv4_prefix|has_any_ipv4|has_ipv4_prefix|has_ipv4|hash_combine|hash_many|hash_md5|hash_sha1|hash_sha256|hash_xxhash64|hash|iff|iif|indexof_regex|indexof|ingestion_time|ipv4_compare|ipv4_is_in_range|ipv4_is_in_any_range|ipv4_is_match|ipv4_is_private|ipv4_netmask_suffix|ipv6_compare|ipv6_is_match|isascii|isempty|isfinite|isinf|isnan|isnotempty|notempty|isnotnull|notnull|isnull|isutf8|jaccard_index|log10|log2|loggamma|log|make_string|max_of|min_of|new_guid|not|bag_pack|pack_all|pack_array|pack_dictionary|pack|parse_command_line|parse_csv|parse_ipv4_mask|parse_ipv4|parse_ipv6_mask|parse_ipv6|parse_path|parse_urlquery|parse_url|parse_user_agent|parse_version|parse_xml|percentile_tdigest|percentile_array_tdigest|percentrank_tdigest|pi|pow|radians|rand|rank_tdigest|regex_quote|repeat|replace_regex|replace_string|reverse|round|set_difference|set_has_element|set_intersect|set_union|sign|sin|split|sqrt|strcat_array|strcat_delim|strcmp|strcat|string_size|strlen|strrep|substring|tan|to_utf8|tobool|todecimal|todouble|toreal|toguid|tohex|toint|tolong|tolower|tostring|toupper|translate|treepath|trim_end|trim_start|trim|unixtime_microseconds_todatetime|unixtime_milliseconds_todatetime|unixtime_nanoseconds_todatetime|unixtime_seconds_todatetime|url_decode|url_encode_component|url_encode|welch_test|zip|zlib_compress_to_base64_string|zlib_decompress_from_base64_string)\\\\b","name":"support.function.kusto"},{"captures":{"1":{"name":"support.function.kusto"},"2":{"patterns":[{"include":"#DateTimeTimeSpanDataTypes"},{"include":"#TimeSpanLiterals"},{"include":"#DateTimeTimeSpanFunctions"},{"include":"#Numeric"}]},"3":{"patterns":[{"include":"#TimeSpanLiterals"},{"include":"#Numeric"}]}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/binfunction","match":"\\\\b(bin)(?:\\\\s*\\\\(\\\\s*(.+?)\\\\s*,\\\\s*(.+?)\\\\s*\\\\))?(?!\\\\w)","name":"meta.scalar.function.bin.kusto"},{"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/count-aggfunction","match":"\\\\b(count)\\\\s*\\\\(\\\\s*\\\\)(?!\\\\w)","name":"support.function.kusto"},{"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/aggregation-functions","match":"\\\\b(arg_max|arg_min|avgif|avg|binary_all_and|binary_all_or|binary_all_xor|buildschema|countif|dcount|dcountif|hll|hll_merge|make_bag_if|make_bag|make_list_with_nulls|make_list_if|make_list|make_set_if|make_set|maxif|max|minif|min|percentilesw_array|percentiles_array|percentilesw|percentilew|percentiles|percentile|stdevif|stdevp|stdev|sumif|sum|take_anyif|take_any|tdigest_merge|merge_tdigest|tdigest|varianceif|variancep|variance)\\\\b","name":"support.function.kusto"},{"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/geospatial-grid-systems","match":"\\\\b(geo_distance_2points|geo_distance_point_to_line|geo_distance_point_to_polygon|geo_intersects_2lines|geo_intersects_2polygons|geo_intersects_line_with_polygon|geo_intersection_2lines|geo_intersection_2polygons|geo_intersection_line_with_polygon|geo_line_centroid|geo_line_densify|geo_line_length|geo_line_simplify|geo_polygon_area|geo_polygon_centroid|geo_polygon_densify|geo_polygon_perimeter|geo_polygon_simplify|geo_polygon_to_s2cells|geo_point_in_circle|geo_point_in_polygon|geo_point_to_geohash|geo_point_to_h3cell|geo_point_to_s2cell|geo_geohash_to_central_point|geo_geohash_neighbors|geo_geohash_to_polygon|geo_s2cell_to_central_point|geo_s2cell_neighbors|geo_s2cell_to_polygon|geo_h3cell_to_central_point|geo_h3cell_neighbors|geo_h3cell_to_polygon|geo_h3cell_parent|geo_h3cell_children|geo_h3cell_level|geo_h3cell_rings|geo_simplify_polygons_array|geo_union_lines_array|geo_union_polygons_array)\\\\b","name":"support.function.kusto"},{"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/windowsfunctions","match":"\\\\b(next|prev|row_cumsum|row_number|row_rank|row_window_session)\\\\b","name":"support.function.kusto"},{"comment":"User-defined functions: https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions","match":"\\\\.(create-or-alter|replace)","name":"keyword.control.kusto"},{"comment":"User-defined functions: https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions","match":"(?<=let )[^\\\\n]+(?=\\\\W*=)","name":"entity.function.name.lambda.kusto"},{"comment":"User-defined functions: https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions","match":"\\\\b(folder|docstring|skipvalidation)\\\\b","name":"keyword.other.operator.kusto"},{"match":"\\\\b(function)\\\\b","name":"storage.type.kusto"},{"comment":"Data types: https://docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types","match":"\\\\b(bool|decimal|dynamic|guid|int|long|real|string)\\\\b","name":"storage.type.kusto"},{"captures":{"1":{"name":"keyword.other.query.kusto"},"2":{"name":"variable.other.kusto"}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/asoperator","match":"\\\\b(as)\\\\s+(\\\\w+)\\\\b","name":"meta.query.as.kusto"},{"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/datatableoperator","match":"\\\\b(datatable)(?=\\\\W*\\\\()","name":"keyword.other.query.kusto"},{"captures":{"1":{"name":"keyword.other.query.kusto"},"2":{"name":"keyword.other.operator.kusto"}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/facetoperator","match":"\\\\b(facet)(?:\\\\s+(by))?\\\\b","name":"meta.query.facet.kusto"},{"captures":{"1":{"name":"keyword.other.query.kusto"},"2":{"name":"entity.name.function.kusto"}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/invokeoperator","match":"\\\\b(invoke)(?:\\\\s+(\\\\w+))?\\\\b","name":"meta.query.invoke.kusto"},{"captures":{"1":{"name":"keyword.other.query.kusto"},"2":{"name":"keyword.other.operator.kusto"},"3":{"name":"variable.other.column.kusto"}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/orderoperator","match":"\\\\b(order)(?:\\\\s+(by)\\\\s+(\\\\w+))?\\\\b","name":"meta.query.order.kusto"},{"captures":{"1":{"name":"keyword.other.query.kusto"},"2":{"name":"variable.other.column.kusto"},"3":{"name":"keyword.other.operator.kusto"},"4":{"patterns":[{"include":"#TimeSpanLiterals"},{"include":"#DateTimeTimeSpanFunctions"},{"include":"#Numeric"}]},"5":{"name":"keyword.other.operator.kusto"},"6":{"patterns":[{"include":"#TimeSpanLiterals"},{"include":"#DateTimeTimeSpanFunctions"},{"include":"#Numeric"}]},"7":{"name":"keyword.other.operator.kusto"},"8":{"patterns":[{"include":"#TimeSpanLiterals"},{"include":"#DateTimeTimeSpanFunctions"},{"include":"#Numeric"}]}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/rangeoperator","match":"\\\\b(range)\\\\s+(\\\\w+)\\\\s+(from)\\\\s+(\\\\w+(?:\\\\(\\\\w*\\\\))?)\\\\s+(to)\\\\s+(\\\\w+(?:\\\\(\\\\w*\\\\))?)\\\\s+(step)\\\\s+(\\\\w+(?:\\\\(\\\\w*\\\\))?)\\\\b","name":"meta.query.range.kusto"},{"captures":{"1":{"name":"keyword.other.query.kusto"},"2":{"patterns":[{"include":"#Numeric"}]}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/sampleoperator","match":"\\\\b(sample)(?:\\\\s+(\\\\d+))?(?![\\\\w-])","name":"meta.query.sample.kusto"},{"captures":{"1":{"name":"keyword.other.query.kusto"},"2":{"patterns":[{"include":"#Numeric"}]},"3":{"name":"keyword.other.operator.kusto"},"4":{"name":"variable.other.column.kusto"}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/sampledistinctoperator","match":"\\\\b(sample-distinct)(?:\\\\s+(\\\\d+)\\\\s+(of)\\\\s+(\\\\w+))?\\\\b","name":"meta.query.sample-distinct.kusto"},{"captures":{"1":{"name":"keyword.other.query.kusto"},"2":{"name":"keyword.other.operator.kusto"}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/sortoperator","match":"\\\\b(sort)(?:\\\\s+(by))?\\\\b","name":"meta.query.sort.kusto"},{"captures":{"1":{"name":"keyword.other.query.kusto"},"2":{"patterns":[{"include":"#Numeric"}]}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/takeoperator","match":"\\\\b(take|limit)(?:\\\\s+(\\\\d+))\\\\b","name":"meta.query.take.kusto"},{"captures":{"1":{"name":"keyword.other.query.kusto"},"2":{"patterns":[{"include":"#Numeric"}]},"3":{"name":"keyword.other.operator.kusto"},"4":{"name":"variable.other.column.kusto"}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/topoperator","match":"\\\\b(top)(?:\\\\s+(\\\\d+)\\\\s+(by)\\\\s+(\\\\w+))?(?![\\\\w-])\\\\b","name":"meta.query.top.kusto"},{"captures":{"1":{"name":"keyword.other.query.kusto"},"2":{"patterns":[{"include":"#Numeric"}]},"3":{"name":"keyword.other.operator.kusto"},"4":{"name":"variable.other.column.kusto"},"5":{"name":"keyword.other.operator.kusto"},"6":{"name":"variable.other.column.kusto"}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/tophittersoperator","match":"\\\\b(top-hitters)(?:\\\\s+(\\\\d+)\\\\s+(of)\\\\s+(\\\\w+)(?:\\\\s+(by)\\\\s+(\\\\w+))?)?\\\\b","name":"meta.query.top-hitters.kusto"},{"comment":"Tabular operators: https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/queries","match":"\\\\b(consume|count|distinct|evaluate|extend|externaldata|find|fork|getschema|join|lookup|make-series|mv-apply|mv-expand|project-away|project-keep|project-rename|project-reorder|project|parse|parse-where|parse-kv|partition|print|reduce|render|scan|search|serialize|shuffle|summarize|top-nested|union|where)\\\\b","name":"keyword.other.query.kusto"},{"comment":"Tabular operators: evalute (plugins): https://docs.microsoft.com/en-us/azure/kusto/query/evaluateoperator","match":"\\\\b(active_users_count|activity_counts_metrics|activity_engagement|new_activity_metrics|activity_metrics|autocluster|azure_digital_twins_query_request|bag_unpack|basket|cosmosdb_sql_request|dcount_intersect|diffpatterns|funnel_sequence_completion|funnel_sequence|http_request_post|http_request|infer_storage_schema|ipv4_lookup|mysql_request|narrow|pivot|preview|rolling_percentile|rows_near|schema_merge|session_count|sequence_detect|sliding_window_counts|sql_request)\\\\b","name":"support.function.kusto"},{"comment":"Tabular operators: join: https://docs.microsoft.com/en-us/azure/kusto/query/joinoperator","match":"\\\\b(on|kind|hint\\\\.remote|hint\\\\.strategy)\\\\b","name":"keyword.other.operator.kusto"},{"comment":"Tabular operators: join ($left, $right): https://docs.microsoft.com/en-us/azure/kusto/query/joinoperator","match":"(\\\\$left|\\\\$right)\\\\b","name":"keyword.other.kusto"},{"comment":"Tabular operators: join (kinds, strategies): https://docs.microsoft.com/en-us/azure/kusto/query/joinoperator","match":"\\\\b(innerunique|inner|leftouter|rightouter|fullouter|leftanti|anti|leftantisemi|rightanti|rightantisemi|leftsemi|rightsemi|broadcast)\\\\b","name":"keyword.other.kusto"},{"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/machine-learning-and-tsa","match":"\\\\b(series_abs|series_acos|series_add|series_asin|series_atan|series_cos|series_decompose|series_decompose_anomalies|series_decompose_forecast|series_divide|series_equals|series_exp|series_fft|series_fill_backward|series_fill_const|series_fill_forward|series_fill_linear|series_fir|series_fit_2lines_dynamic|series_fit_2lines|series_fit_line_dynamic|series_fit_line|series_fit_poly|series_greater_equals|series_greater|series_ifft|series_iir|series_less_equals|series_less|series_multiply|series_not_equals|series_outliers|series_pearson_correlation|series_periods_detect|series_periods_validate|series_pow|series_seasonal|series_sign|series_sin|series_stats|series_stats_dynamic|series_subtract|series_tan)\\\\b","name":"support.function.kusto"},{"comment":"Tabular operators: mv-expand (bagexpand options): https://docs.microsoft.com/en-us/azure/kusto/query/mvexpandoperator","match":"\\\\b(bag|array)\\\\b","name":"keyword.other.operator.kusto"},{"comment":"Tabular operators: order: https://docs.microsoft.com/en-us/azure/kusto/query/orderoperator","match":"\\\\b(asc|desc|nulls first|nulls last)\\\\b","name":"keyword.other.kusto"},{"comment":"Tabular operators: parse: https://docs.microsoft.com/en-us/azure/kusto/query/parseoperator","match":"\\\\b(regex|simple|relaxed)\\\\b","name":"keyword.other.kusto"},{"match":"\\\\b(anomalychart|areachart|barchart|card|columnchart|ladderchart|linechart|piechart|pivotchart|scatterchart|stackedareachart|timechart|timepivot)\\\\b","name":"support.function.kusto"},{"include":"#Strings"},{"match":"\\\\{.*?\\\\}","name":"string.other.kusto"},{"comment":"Comments","match":"//.*","name":"comment.line.kusto"},{"include":"#TimeSpanLiterals"},{"include":"#DateTimeTimeSpanFunctions"},{"include":"#DateTimeTimeSpanDataTypes"},{"include":"#Numeric"},{"match":"\\\\b(true|false|null)\\\\b","name":"constant.language.kusto"},{"comment":"Deprecated functions","match":"\\\\b(anyif|any|array_strcat|base64_decodestring|base64_encodestring|make_dictionary|makelist|makeset|mvexpand|todynamic|parse_json|replace|weekofyear)(?=\\\\W*\\\\(|\\\\b)","name":"invalid.deprecated.kusto"}],"repository":{"DateTimeTimeSpanDataTypes":{"patterns":[{"match":"\\\\b(datetime|timespan|time)\\\\b","name":"storage.type.kusto"}]},"DateTimeTimeSpanFunctions":{"patterns":[{"captures":{"1":{"name":"support.function.kusto"},"2":{"patterns":[{"include":"#DateTimeTimeSpanDataTypes"}]},"3":{"patterns":[{"include":"#Strings"}]}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/format-datetimefunction","match":"\\\\b(format_datetime)(?:\\\\s*\\\\(\\\\s*(.+?)\\\\s*,\\\\s*([\'\\"].*?[\'\\"])\\\\s*\\\\))?(?!\\\\w)","name":"meta.scalar.function.format_datetime.kusto"},{"comment":"Scalar function: DateTime/Timespan Functions: https://docs.microsoft.com/en-us/azure/kusto/query/scalarfunctions#datetimetimespan-functions","match":"\\\\b(ago|datetime_add|datetime_diff|datetime_local_to_utc|datetime_part|datetime_utc_to_local|dayofmonth|dayofweek|dayofyear|endofday|endofmonth|endofweek|endofyear|format_timespan|getmonth|getyear|hourofday|make_datetime|make_timespan|monthofyear|now|startofday|startofmonth|startofweek|startofyear|todatetime|totimespan|week_of_year)(?=\\\\W*\\\\()","name":"support.function.kusto"}]},"Escapes":{"patterns":[{"match":"(\\\\\\\\[\'\\"]|\\\\\\\\\\\\\\\\)","name":"constant.character.escape.kusto"}]},"Numeric":{"patterns":[{"match":"\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\.?[0-9]*+)|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f|ll|LL|ull|ULL)?(?=\\\\b|\\\\w)","name":"constant.numeric.kusto"}]},"Strings":{"patterns":[{"begin":"([@h]?\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.kusto"}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/scalar-data-types/string","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.kusto"}},"name":"string.quoted.double.kusto","patterns":[{"include":"#Escapes"}]},{"begin":"([@h]?\')","beginCaptures":{"1":{"name":"punctuation.definition.string.kusto"}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/scalar-data-types/string","end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.kusto"}},"name":"string.quoted.single.kusto","patterns":[{"include":"#Escapes"}]},{"begin":"([@h]?```)","beginCaptures":{"1":{"name":"punctuation.definition.string.kusto"}},"comment":"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/scalar-data-types/string#multi-line-string-literals","end":"```","endCaptures":{"0":{"name":"punctuation.definition.string.kusto"}},"name":"string.quoted.multi.kusto","patterns":[{"include":"#Escapes"}]}]},"TimeSpanLiterals":{"patterns":[{"comment":"timespan literals: https://docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types/timespan#timespan-literals","match":"[+-]?(?:\\\\d*\\\\.)?\\\\d+(?:microseconds?|ticks?|seconds?|ms|d|h|m|s)\\\\b","name":"constant.numeric.kusto"}]}},"scopeName":"source.kusto","aliases":["kql"]}')),are=[nre]});var Z$={};x(Z$,{default:()=>JB});var rre,JB,VB=_(()=>{Ng();rre=Object.freeze(JSON.parse('{"displayName":"TeX","name":"tex","patterns":[{"begin":"(?<=^\\\\s*)((\\\\\\\\)iffalse)(?!\\\\s*[{}]\\\\s*\\\\\\\\fi)","beginCaptures":{"1":{"name":"keyword.control.tex"},"2":{"name":"punctuation.definition.keyword.tex"}},"contentName":"comment.line.percentage.tex","end":"((\\\\\\\\)(?:else|fi))","endCaptures":{"1":{"name":"keyword.control.tex"},"2":{"name":"punctuation.definition.keyword.tex"}},"patterns":[{"include":"#comment"},{"include":"#braces"},{"include":"#conditionals"}]},{"captures":{"1":{"name":"punctuation.definition.keyword.tex"}},"match":"(\\\\\\\\)(backmatter|csname|else|endcsname|fi|frontmatter|mainmatter|unless|if(case|cat|csname|defined|dim|eof|false|fontchar|hbox|hmode|inner|mmode|num|odd|true|vbox|vmode|void|x)?)(?![a-zA-Z@])","name":"keyword.control.tex"},{"captures":{"1":{"name":"keyword.control.catcode.tex"},"2":{"name":"punctuation.definition.keyword.tex"},"3":{"name":"punctuation.separator.key-value.tex"},"4":{"name":"constant.numeric.category.tex"}},"match":"((\\\\\\\\)catcode)`(?:\\\\\\\\)?.(=)(\\\\d+)","name":"meta.catcode.tex"},{"include":"#comment"},{"match":"[\\\\[\\\\]]","name":"punctuation.definition.brackets.tex"},{"begin":"(\\\\$\\\\$|\\\\$)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.tex"}},"end":"(\\\\1)","endCaptures":{"1":{"name":"punctuation.definition.string.end.tex"}},"name":"meta.math.block.tex support.class.math.block.tex","patterns":[{"match":"\\\\\\\\\\\\$","name":"constant.character.escape.tex"},{"include":"#math"},{"include":"$self"}]},{"match":"\\\\\\\\\\\\\\\\","name":"keyword.control.newline.tex"},{"captures":{"1":{"name":"punctuation.definition.function.tex"}},"match":"(\\\\\\\\)_*[\\\\p{Alphabetic}@]+(?:_[\\\\p{Alphabetic}@]+)*:[NncVvoxefTFpwD]*","name":"support.class.general.latex3.tex"},{"captures":{"1":{"name":"punctuation.definition.function.tex"}},"match":"(\\\\.)[\\\\p{Alphabetic}@]+(?:_[\\\\p{Alphabetic}@]+)*:[NncVvoxefTFpwD]*","name":"support.class.general.latex3.tex"},{"captures":{"1":{"name":"punctuation.definition.function.tex"}},"match":"(\\\\\\\\)(?:[,;]|(?:[\\\\p{Alphabetic}@]+))","name":"support.function.general.tex"},{"captures":{"1":{"name":"punctuation.definition.keyword.tex"}},"match":"(\\\\\\\\)[^a-zA-Z@]","name":"constant.character.escape.tex"}],"repository":{"braces":{"begin":"(?<!\\\\\\\\)\\\\{","beginCaptures":{"0":{"name":"punctuation.group.begin.tex"}},"end":"(?<!\\\\\\\\)\\\\}","endCaptures":{"0":{"name":"punctuation.group.end.tex"}},"name":"meta.group.braces.tex","patterns":[{"include":"#braces"}]},"comment":{"begin":"(^[ \\\\t]+)?(?=%)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.tex"}},"end":"(?!\\\\G)","patterns":[{"begin":"%:?","beginCaptures":{"0":{"name":"punctuation.definition.comment.tex"}},"end":"$\\\\n?","name":"comment.line.percentage.tex"},{"begin":"^(%!TEX) (\\\\S*) =","beginCaptures":{"1":{"name":"punctuation.definition.comment.tex"}},"end":"$\\\\n?","name":"comment.line.percentage.directive.tex"}]},"conditionals":{"begin":"(?<=^\\\\s*)\\\\\\\\if[a-z]*","end":"(?<=^\\\\s*)\\\\\\\\fi","patterns":[{"include":"#comment"},{"include":"#conditionals"}]},"math":{"patterns":[{"begin":"((\\\\\\\\)(?:text|mbox))(\\\\{)","beginCaptures":{"1":{"name":"constant.other.math.tex"},"2":{"name":"punctuation.definition.function.tex"},"3":{"name":"punctuation.definition.arguments.begin.tex meta.text.normal.tex"}},"contentName":"meta.text.normal.tex","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.tex meta.text.normal.tex"}},"patterns":[{"include":"#math"},{"include":"$self"}]},{"match":"\\\\\\\\{|\\\\\\\\}","name":"punctuation.math.bracket.pair.tex"},{"match":"\\\\\\\\(left|right|((big|bigg|Big|Bigg)[lr]?))([\\\\(\\\\[\\\\<\\\\>\\\\]\\\\)\\\\.\\\\|]|\\\\\\\\[{}|]|\\\\\\\\[lr]?[Vv]ert|\\\\\\\\[lr]angle)","name":"punctuation.math.bracket.pair.big.tex"},{"captures":{"1":{"name":"punctuation.definition.constant.math.tex"}},"match":"(\\\\\\\\)(s(s(earrow|warrow|lash)|h(ort(downarrow|uparrow|parallel|leftarrow|rightarrow|mid)|arp)|tar|i(gma|m(eq)?)|u(cc(sim|n(sim|approx)|curlyeq|eq|approx)?|pset(neq(q)?|plus(eq)?|eq(q)?)?|rd|m|bset(neq(q)?|plus(eq)?|eq(q)?)?)|p(hericalangle|adesuit)|e(tminus|arrow)|q(su(pset(eq)?|bset(eq)?)|c(up|ap)|uare)|warrow|m(ile|all(s(etminus|mile)|frown)))|h(slash|ook(leftarrow|rightarrow)|eartsuit|bar)|R(sh|ightarrow|e|bag)|Gam(e|ma)|n(s(hort(parallel|mid)|im|u(cc(eq)?|pseteq(q)?|bseteq))|Rightarrow|n(earrow|warrow)|cong|triangle(left(eq(slant)?)?|right(eq(slant)?)?)|i(plus)?|u|p(lus|arallel|rec(eq)?)|e(q|arrow|g|xists)|v(dash|Dash)|warrow|le(ss|q(slant|q)?|ft(arrow|rightarrow))|a(tural|bla)|VDash|rightarrow|g(tr|eq(slant|q)?)|mid|Left(arrow|rightarrow))|c(hi|irc(eq|le(d(circ|S|dash|ast)|arrow(left|right)))?|o(ng|prod|lon|mplement)|dot(s|p)?|u(p|r(vearrow(left|right)|ly(eq(succ|prec)|vee(downarrow|uparrow)?|wedge(downarrow|uparrow)?)))|enterdot|lubsuit|ap)|Xi|Maps(to(char)?|from(char)?)|B(ox|umpeq|bbk)|t(h(ick(sim|approx)|e(ta|refore))|imes|op|wohead(leftarrow|rightarrow)|a(u|lloblong)|riangle(down|q|left(eq(slant)?)?|right(eq(slant)?)?)?)|i(n(t(er(cal|leave))?|plus|fty)?|ota|math)|S(igma|u(pset|bset))|zeta|o(slash|times|int|dot|plus|vee|wedge|lessthan|greaterthan|m(inus|ega)|b(slash|long|ar))|d(i(v(ideontimes)?|a(g(down|up)|mond(suit)?)|gamma)|o(t(plus|eq(dot)?)|ublebarwedge|wn(harpoon(left|right)|downarrows|arrow))|d(ots|agger)|elta|a(sh(v|leftarrow|rightarrow)|leth|gger))|Y(down|up|left|right)|C(up|ap)|u(n(lhd|rhd)|p(silon|harpoon(left|right)|downarrow|uparrows|lus|arrow)|lcorner|rcorner)|jmath|Theta|Im|p(si|hi|i(tchfork)?|erp|ar(tial|allel)|r(ime|o(d|pto)|ec(sim|n(sim|approx)|curlyeq|eq|approx)?)|m)|e(t(h|a)|psilon|q(slant(less|gtr)|circ|uiv)|ll|xists|mptyset)|Omega|D(iamond|ownarrow|elta)|v(d(ots|ash)|ee(bar)?|Dash|ar(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|curly(vee|wedge)|t(heta|imes|riangle(left|right)?)|o(slash|circle|times|dot|plus|vee|wedge|lessthan|ast|greaterthan|minus|b(slash|ar))|p(hi|i|ropto)|epsilon|kappa|rho|bigcirc))|kappa|Up(silon|downarrow|arrow)|Join|f(orall|lat|a(t(s(emi|lash)|bslash)|llingdotseq)|rown)|P(si|hi|i)|w(p|edge|r)|l(hd|n(sim|eq(q)?|approx)|ceil|times|ightning|o(ng(left(arrow|rightarrow)|rightarrow|maps(to|from))|zenge|oparrow(left|right))|dot(s|p)|e(ss(sim|dot|eq(qgtr|gtr)|approx|gtr)|q(slant|q)?|ft(slice|harpoon(down|up)|threetimes|leftarrows|arrow(t(ail|riangle))?|right(squigarrow|harpoons|arrow(s|triangle|eq)?))|adsto)|vertneqq|floor|l(c(orner|eil)|floor|l|bracket)?|a(ngle|mbda)|rcorner|bag)|a(s(ymp|t)|ngle|pprox(eq)?|l(pha|eph)|rrownot|malg)|V(dash|vdash)|r(h(o|d)|ceil|times|i(singdotseq|ght(s(quigarrow|lice)|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(t(ail|riangle))?|rightarrows))|floor|angle|r(ceil|parenthesis|floor|bracket)|bag)|g(n(sim|eq(q)?|approx)|tr(sim|dot|eq(qless|less)|less|approx)|imel|eq(slant|q)?|vertneqq|amma|g(g)?)|Finv|xi|m(ho|i(nuso|d)|o(o|dels)|u(ltimap)?|p|e(asuredangle|rge)|aps(to|from(char)?))|b(i(n(dnasrepma|ampersand)|g(s(tar|qc(up|ap))|nplus|c(irc|u(p|rly(vee|wedge))|ap)|triangle(down|up)|interleave|o(times|dot|plus)|uplus|parallel|vee|wedge|box))|o(t|wtie|x(slash|circle|times|dot|plus|empty|ast|minus|b(slash|ox|ar)))|u(llet|mpeq)|e(cause|t(h|ween|a))|lack(square|triangle(down|left|right)?|lozenge)|a(ck(s(im(eq)?|lash)|prime|epsilon)|r(o|wedge))|bslash)|L(sh|ong(left(arrow|rightarrow)|rightarrow|maps(to|from))|eft(arrow|rightarrow)|leftarrow|ambda|bag)|Arrownot)(?![a-zA-Z@])","name":"constant.character.math.tex"},{"captures":{"1":{"name":"punctuation.definition.constant.math.tex"}},"match":"(\\\\\\\\)(sum|prod|coprod|int|oint|bigcap|bigcup|bigsqcup|bigvee|bigwedge|bigodot|bigotimes|bogoplus|biguplus)\\\\b","name":"constant.character.math.tex"},{"captures":{"1":{"name":"punctuation.definition.constant.math.tex"}},"match":"(\\\\\\\\)(arccos|arcsin|arctan|arg|cos|cosh|cot|coth|csc|deg|det|dim|exp|gcd|hom|inf|ker|lg|lim|liminf|limsup|ln|log|max|min|pr|sec|sin|sinh|sup|tan|tanh)\\\\b","name":"constant.other.math.tex"},{"begin":"((\\\\\\\\)Sexpr(\\\\{))","beginCaptures":{"1":{"name":"support.function.sexpr.math.tex"},"2":{"name":"punctuation.definition.function.math.tex"},"3":{"name":"punctuation.section.embedded.begin.math.tex"}},"contentName":"support.function.sexpr.math.tex","end":"(((\\\\})))","endCaptures":{"1":{"name":"support.function.sexpr.math.tex"},"2":{"name":"punctuation.section.embedded.end.math.tex"},"3":{"name":"source.r"}},"name":"meta.embedded.line.r","patterns":[{"begin":"\\\\G(?!\\\\})","end":"(?=\\\\})","name":"source.r","patterns":[{"include":"source.r"}]}]},{"captures":{"1":{"name":"punctuation.definition.constant.math.tex"}},"match":"(\\\\\\\\)(?!begin\\\\{|verb)([A-Za-z]+)","name":"constant.other.general.math.tex"},{"match":"(?<!\\\\\\\\)\\\\{","name":"punctuation.math.begin.bracket.curly.tex"},{"match":"(?<!\\\\\\\\)\\\\}","name":"punctuation.math.end.bracket.curly.tex"},{"match":"(?<!\\\\\\\\)\\\\(","name":"punctuation.math.begin.bracket.round.tex"},{"match":"(?<!\\\\\\\\)\\\\)","name":"punctuation.math.end.bracket.round.tex"},{"match":"(([0-9]*[\\\\.][0-9]+)|[0-9]+)","name":"constant.numeric.math.tex"},{"match":"[\\\\+\\\\*/_\\\\^-]","name":"punctuation.math.operator.tex"}]}},"scopeName":"text.tex","embeddedLangs":["r"]}')),JB=[...ad,rre]});var Y$={};x(Y$,{default:()=>ore});var ire,ore,W$=_(()=>{VB();ire=Object.freeze(JSON.parse('{"displayName":"LaTeX","name":"latex","patterns":[{"comment":"This scope identifies partially typed commands such as `\\\\tab`. We use this to trigger \u201CCommand Completion\u201D only when it makes sense.","match":"(?<=\\\\\\\\[\\\\w@]|\\\\\\\\[\\\\w@]{2}|\\\\\\\\[\\\\w@]{3}|\\\\\\\\[\\\\w@]{4}|\\\\\\\\[\\\\w@]{5}|\\\\\\\\[\\\\w@]{6})\\\\s","name":"meta.space-after-command.latex"},{"begin":"((\\\\\\\\)(?:usepackage|documentclass))\\\\b(?=\\\\[|\\\\{)","beginCaptures":{"1":{"name":"keyword.control.preamble.latex"},"2":{"name":"punctuation.definition.function.latex"}},"end":"(?<=\\\\})","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.latex"}},"name":"meta.preamble.latex","patterns":[{"include":"#multiline-optional-arg"},{"begin":"((?:\\\\G|(?<=\\\\]))\\\\{)","beginCaptures":{"0":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"support.class.latex","end":"(\\\\})","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"$self"}]}]},{"begin":"((\\\\\\\\)(?:include|input))(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.include.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.latex"}},"name":"meta.include.latex","patterns":[{"include":"$self"}]},{"begin":"((\\\\\\\\)((?:sub){0,2}section|(?:sub)?paragraph|chapter|part|addpart|addchap|addsec|minisec|frametitle)(?:\\\\*)?)((?:\\\\[[^\\\\[]*?\\\\]){0,2})(\\\\{)","beginCaptures":{"1":{"name":"support.function.section.latex"},"2":{"name":"punctuation.definition.function.latex"},"4":{"patterns":[{"include":"#optional-arg-bracket"}]},"5":{"name":"punctuation.definition.arguments.begin.latex"}},"comment":"this works OK with all kinds of crazy stuff as long as section is one line","contentName":"entity.name.section.latex","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.latex"}},"name":"meta.function.section.$3.latex","patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"((?:\\\\s*)\\\\\\\\begin\\\\{songs\\\\}\\\\{.*\\\\})","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"contentName":"meta.data.environment.songs.latex","end":"(\\\\\\\\end\\\\{songs\\\\}(?:\\\\s*\\\\n)?)","name":"meta.function.environment.songs.latex","patterns":[{"begin":"\\\\\\\\\\\\[","end":"\\\\]","name":"meta.chord.block.latex support.class.chord.block.environment.latex","patterns":[{"include":"$self"}]},{"match":"\\\\^","name":"meta.chord.block.latex support.class.chord.block.environment.latex"},{"include":"$self"}]},{"begin":"(?:^\\\\s*)?\\\\\\\\begin\\\\{(lstlisting|minted|pyglist)\\\\}(?=\\\\[|\\\\{)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\\\\\end\\\\{\\\\1\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:asy|asymptote))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.asy","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.asy"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:bash))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.shell","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.shell"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:c|cpp))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.cpp.embedded.latex","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.cpp.embedded.latex"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:css))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.css","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.css"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:gnuplot))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.gnuplot","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.gnuplot"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:hs|haskell))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.haskell","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.haskell"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:html))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"text.html","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"text.html.basic"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:java))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.java","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.java"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:jl|julia))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.julia","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.julia"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:js|javascript))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.js","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.js"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:lua))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.lua","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.lua"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:py|python|sage))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.python","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.python"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:rb|ruby))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.ruby","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.ruby"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:rust))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.rust","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.rust"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:ts|typescript))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.ts","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.ts"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:xml))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"text.xml","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"text.xml"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)((?:yaml))(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"source.yaml","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:minted|lstlisting|pyglist)\\\\})","patterns":[{"include":"source.yaml"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)([a-zA-Z]*)(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"meta.function.embedded.latex","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:lstlisting|minted|pyglist)\\\\})","name":"meta.embedded.block.generic.latex"}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:asy|asycode)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:asy|asycode)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.asymptote","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:asy|asycode)\\\\*?\\\\})","patterns":[{"include":"source.asymptote"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:cppcode)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:cppcode)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.cpp.embedded.latex","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:cppcode)\\\\*?\\\\})","patterns":[{"include":"source.cpp.embedded.latex"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:dot2tex|dotcode)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:dot2tex|dotcode)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.dot","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:dot2tex|dotcode)\\\\*?\\\\})","patterns":[{"include":"source.dot"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:gnuplot)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:gnuplot)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.gnuplot","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:gnuplot)\\\\*?\\\\})","patterns":[{"include":"source.gnuplot"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:hscode)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:hscode)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.haskell","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:hscode)\\\\*?\\\\})","patterns":[{"include":"source.haskell"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:jlcode|jlverbatim|jlblock|jlconcode|jlconsole|jlconverbatim)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:jlcode|jlverbatim|jlblock|jlconcode|jlconsole|jlconverbatim)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.julia","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:jlcode|jlverbatim|jlblock|jlconcode|jlconsole|jlconverbatim)\\\\*?\\\\})","patterns":[{"include":"source.julia"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:juliacode|juliaverbatim|juliablock|juliaconcode|juliaconsole|juliaconverbatim)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:juliacode|juliaverbatim|juliablock|juliaconcode|juliaconsole|juliaconverbatim)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.julia","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:juliacode|juliaverbatim|juliablock|juliaconcode|juliaconsole|juliaconverbatim)\\\\*?\\\\})","patterns":[{"include":"source.julia"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:luacode)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:luacode)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.lua","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:luacode)\\\\*?\\\\})","patterns":[{"include":"source.lua"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:pycode|pyverbatim|pyblock|pyconcode|pyconsole|pyconverbatim)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:pycode|pyverbatim|pyblock|pyconcode|pyconsole|pyconverbatim)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.python","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:pycode|pyverbatim|pyblock|pyconcode|pyconsole|pyconverbatim)\\\\*?\\\\})","patterns":[{"include":"source.python"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:pylabcode|pylabverbatim|pylabblock|pylabconcode|pylabconsole|pylabconverbatim)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:pylabcode|pylabverbatim|pylabblock|pylabconcode|pylabconsole|pylabconverbatim)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.python","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:pylabcode|pylabverbatim|pylabblock|pylabconcode|pylabconsole|pylabconverbatim)\\\\*?\\\\})","patterns":[{"include":"source.python"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:sageblock|sagesilent|sageverbatim|sageexample|sagecommandline|python|pythonq|pythonrepl)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:sageblock|sagesilent|sageverbatim|sageexample|sagecommandline|python|pythonq|pythonrepl)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.python","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:sageblock|sagesilent|sageverbatim|sageexample|sagecommandline|python|pythonq|pythonrepl)\\\\*?\\\\})","patterns":[{"include":"source.python"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:scalacode)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:scalacode)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.scala","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:scalacode)\\\\*?\\\\})","patterns":[{"include":"source.scala"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{(?:sympycode|sympyverbatim|sympyblock|sympyconcode|sympyconsole|sympyconverbatim)\\\\*?\\\\}(?:\\\\[[a-zA-Z0-9_-]*\\\\])?(?=\\\\[|\\\\{|\\\\s*$)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\s*\\\\\\\\end\\\\{(?:sympycode|sympyverbatim|sympyblock|sympyconcode|sympyconsole|sympyconverbatim)\\\\*?\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}}},{"begin":"^(?=\\\\s*)","contentName":"source.python","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:sympycode|sympyverbatim|sympyblock|sympyconcode|sympyconsole|sympyconverbatim)\\\\*?\\\\})","patterns":[{"include":"source.python"}]}]},{"begin":"\\\\s*\\\\\\\\begin\\\\{([a-zA-Z]*code|lstlisting|minted|pyglist)\\\\*?\\\\}(?:\\\\[.*\\\\])?(?:\\\\{.*\\\\})?","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"contentName":"meta.function.embedded.latex","end":"\\\\\\\\end\\\\{\\\\1\\\\}(?:\\\\s*\\\\n)?","name":"meta.embedded.block.generic.latex"},{"begin":"((?:^\\\\s*)?\\\\\\\\begin\\\\{((?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?))\\\\})(?:\\\\[[^\\\\]]*\\\\]){,2}(?=\\\\{)","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"(\\\\\\\\end\\\\{\\\\2\\\\})","patterns":[{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:asy|asymptote)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.asy","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.asy"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:bash)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.shell","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.shell"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:c|cpp)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.cpp.embedded.latex","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.cpp.embedded.latex"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:css)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.css","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.css"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:gnuplot)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.gnuplot","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.gnuplot"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:hs|haskell)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.haskell","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.haskell"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:html)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"text.html","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"text.html.basic"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:java)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.java","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.java"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:jl|julia)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.julia","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.julia"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:js|javascript)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.js","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.js"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:lua)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.lua","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.lua"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:py|python|sage)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.python","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.python"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:rb|ruby)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.ruby","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.ruby"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:rust)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.rust","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.rust"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:ts|typescript)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.ts","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.ts"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:xml)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"text.xml","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"text.xml"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:yaml)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"source.yaml","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"source.yaml"}]}]},{"begin":"\\\\G(\\\\{)(?:__|[a-z\\\\s]*)(?i:tikz|tikzpicture)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"text.tex.latex","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"include":"text.tex.latex"}]}]},{"begin":"\\\\G(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","patterns":[{"begin":"\\\\G","end":"(\\\\})\\\\s*$","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"^(\\\\s*)","contentName":"meta.function.embedded.latex","end":"^\\\\s*(?=\\\\\\\\end\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\*?|PlaceholderFromCode\\\\*?|SetPlaceholderCode\\\\*?)\\\\})","name":"meta.embedded.block.generic.latex"}]}]},{"begin":"(?:^\\\\s*)?\\\\\\\\begin\\\\{(terminal\\\\*?)\\\\}(?=\\\\[|\\\\{)","captures":{"0":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"\\\\\\\\end\\\\{\\\\1\\\\}","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)([a-zA-Z]*)(\\\\})","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"meta.function.embedded.latex","end":"^\\\\s*(?=\\\\\\\\end\\\\{terminal\\\\*?\\\\})","name":"meta.embedded.block.generic.latex"}]},{"begin":"((\\\\\\\\)addplot)(?:\\\\+?)((?:\\\\[[^\\\\[]*\\\\]))*\\\\s*(gnuplot)\\\\s*((?:\\\\[[^\\\\[]*\\\\]))*\\\\s*(\\\\{)","captures":{"1":{"name":"support.function.be.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"patterns":[{"include":"#optional-arg-bracket"}]},"4":{"name":"variable.parameter.function.latex"},"5":{"patterns":[{"include":"#optional-arg-bracket"}]},"6":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"\\\\s*(\\\\};)","patterns":[{"begin":"%","beginCaptures":{"0":{"name":"punctuation.definition.comment.latex"}},"end":"$\\\\n?","name":"comment.line.percentage.latex"},{"include":"source.gnuplot"}]},{"begin":"(\\\\s*\\\\\\\\begin\\\\{((?:fboxv|boxedv|V|v|spv)erbatim\\\\*?)\\\\})","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"contentName":"markup.raw.verbatim.latex","end":"(\\\\\\\\end\\\\{\\\\2\\\\})","name":"meta.function.verbatim.latex"},{"begin":"(\\\\s*\\\\\\\\begin\\\\{VerbatimOut\\\\}\\\\{[^\\\\}]*\\\\})","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"contentName":"markup.raw.verbatim.latex","end":"(\\\\\\\\end\\\\{\\\\VerbatimOut\\\\})","name":"meta.function.verbatim.latex"},{"begin":"(\\\\s*\\\\\\\\begin\\\\{alltt\\\\})","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"contentName":"markup.raw.verbatim.latex","end":"(\\\\\\\\end\\\\{alltt\\\\})","name":"meta.function.alltt.latex","patterns":[{"captures":{"1":{"name":"punctuation.definition.function.latex"}},"match":"(\\\\\\\\)[A-Za-z]+","name":"support.function.general.latex"}]},{"begin":"(\\\\s*\\\\\\\\begin\\\\{([Cc]omment)\\\\})","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"contentName":"comment.line.percentage.latex","end":"(\\\\\\\\end\\\\{\\\\2\\\\})","name":"meta.function.verbatim.latex"},{"begin":"(?:\\\\s*)((\\\\\\\\)(?:href|hyperref|hyperimage))(?=\\\\[|\\\\{)","beginCaptures":{"1":{"name":"support.function.url.latex"}},"comment":"Captures \\\\command[option]{url}{optional category}{optional name}{text}","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.latex"}},"name":"meta.function.hyperlink.latex","patterns":[{"include":"#multiline-optional-arg-no-highlight"},{"begin":"(?:\\\\G|(?<=\\\\]))(\\\\{)([^}]*)(\\\\})(?:\\\\{[^}]*\\\\}){2}?(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"markup.underline.link.latex"},"3":{"name":"punctuation.definition.arguments.end.latex"},"4":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"meta.variable.parameter.function.latex","end":"(?=\\\\})","patterns":[{"include":"$self"}]},{"begin":"(?:\\\\G|(?<=\\\\]))(?:(\\\\{)[^}]*(\\\\}))?(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.latex"},"2":{"name":"punctuation.definition.arguments.end.latex"},"3":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"meta.variable.parameter.function.latex","end":"(?=\\\\})","patterns":[{"include":"$self"}]}]},{"captures":{"1":{"name":"support.function.url.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"punctuation.definition.arguments.begin.latex"},"5":{"name":"punctuation.definition.arguments.end.latex"},"\'":{"name":"markup.underline.link.latex"}},"match":"(?:\\\\s*)((\\\\\\\\)url)(\\\\{)([^}]*)(\\\\})","name":"meta.function.link.url.latex"},{"captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"comment":"These two patterns match the \\\\begin{document} and \\\\end{document} commands, so that the environment matching pattern following them will ignore those commands.","match":"(\\\\s*\\\\\\\\begin\\\\{document\\\\})","name":"meta.function.begin-document.latex"},{"captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"match":"(\\\\s*\\\\\\\\end\\\\{document\\\\})","name":"meta.function.end-document.latex"},{"begin":"(?:\\\\s*)((\\\\\\\\)begin)(\\\\{)((?:\\\\+?array|equation|(?:IEEE)?eqnarray|multline|align|aligned|alignat|alignedat|flalign|flaligned|flalignat|split|gather|gathered|\\\\+?cases|(?:display)?math|\\\\+?[a-zA-Z]*matrix|[pbBvV]?NiceMatrix|[pbBvV]?NiceArray|(?:(?:arg)?(?:mini|maxi)))(?:\\\\*|!)?)(\\\\})(\\\\s*\\\\n)?","captures":{"1":{"name":"support.function.be.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"punctuation.definition.arguments.begin.latex"},"4":{"name":"variable.parameter.function.latex"},"5":{"name":"punctuation.definition.arguments.end.latex"}},"contentName":"meta.math.block.latex support.class.math.block.environment.latex","end":"(?:\\\\s*)((\\\\\\\\)end)(\\\\{)(\\\\4)(\\\\})(?:\\\\s*\\\\n)?","name":"meta.function.environment.math.latex","patterns":[{"match":"(?<!\\\\\\\\)&","name":"keyword.control.equation.align.latex"},{"match":"\\\\\\\\\\\\\\\\","name":"keyword.control.equation.newline.latex"},{"include":"#definition-label"},{"include":"text.tex#math"},{"include":"$self"}]},{"begin":"(?:\\\\s*)(\\\\\\\\begin\\\\{empheq\\\\}(?:\\\\[.*\\\\])?)","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"contentName":"meta.math.block.latex support.class.math.block.environment.latex","end":"(?:\\\\s*)(\\\\\\\\end\\\\{empheq\\\\})","name":"meta.function.environment.math.latex","patterns":[{"match":"(?<!\\\\\\\\)&","name":"keyword.control.equation.align.latex"},{"match":"\\\\\\\\\\\\\\\\","name":"keyword.control.equation.newline.latex"},{"include":"#definition-label"},{"include":"text.tex#math"},{"include":"$self"}]},{"begin":"(\\\\s*\\\\\\\\begin\\\\{(tabular[xy*]?|xltabular|longtable|(?:long)?tabu|(?:long|tall)?tblr|NiceTabular[X*]?|booktabs)\\\\}(\\\\s*\\\\n)?)","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"contentName":"meta.data.environment.tabular.latex","end":"(\\\\s*\\\\\\\\end\\\\{(\\\\2)\\\\}(?:\\\\s*\\\\n)?)","name":"meta.function.environment.tabular.latex","patterns":[{"match":"(?<!\\\\\\\\)&","name":"keyword.control.table.cell.latex"},{"match":"\\\\\\\\\\\\\\\\","name":"keyword.control.table.newline.latex"},{"include":"$self"}]},{"begin":"(\\\\s*\\\\\\\\begin\\\\{(itemize|enumerate|description|list)\\\\})","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"(\\\\\\\\end\\\\{\\\\2\\\\}(?:\\\\s*\\\\n)?)","name":"meta.function.environment.list.latex","patterns":[{"include":"$self"}]},{"begin":"(\\\\s*\\\\\\\\begin\\\\{tikzpicture\\\\})","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"(\\\\\\\\end\\\\{tikzpicture\\\\}(?:\\\\s*\\\\n)?)","name":"meta.function.environment.latex.tikz","patterns":[{"include":"$self"}]},{"begin":"(\\\\s*\\\\\\\\begin\\\\{frame\\\\})","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"(\\\\\\\\end\\\\{frame\\\\})","name":"meta.function.environment.frame.latex","patterns":[{"include":"$self"}]},{"begin":"(\\\\s*\\\\\\\\begin\\\\{(mpost\\\\*?)\\\\})","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"(\\\\\\\\end\\\\{\\\\2\\\\}(?:\\\\s*\\\\n)?)","name":"meta.function.environment.latex.mpost"},{"begin":"(\\\\s*\\\\\\\\begin\\\\{markdown\\\\})","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"contentName":"meta.embedded.markdown_latex_combined","end":"(\\\\\\\\end\\\\{markdown\\\\})","patterns":[{"include":"text.tex.markdown_latex_combined"}]},{"begin":"(\\\\s*\\\\\\\\begin\\\\{(\\\\w+\\\\*?)\\\\})","captures":{"1":{"patterns":[{"include":"#begin-env-tokenizer"}]}},"end":"(\\\\\\\\end\\\\{\\\\2\\\\}(?:\\\\s*\\\\n)?)","name":"meta.function.environment.general.latex","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"storage.type.function.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"punctuation.definition.begin.latex"},"4":{"name":"support.function.general.latex"},"5":{"name":"punctuation.definition.function.latex"},"6":{"name":"punctuation.definition.end.latex"}},"match":"((\\\\\\\\)(?:newcommand|renewcommand|(?:re)?newrobustcmd|DeclareRobustCommand))\\\\*?({)((\\\\\\\\)[^}]*)(})"},{"begin":"((\\\\\\\\)marginpar)((?:\\\\[[^\\\\[]*?\\\\])*)(\\\\{)","beginCaptures":{"1":{"name":"support.function.marginpar.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"patterns":[{"include":"#optional-arg-bracket"}]},"4":{"name":"punctuation.definition.marginpar.begin.latex"}},"contentName":"meta.paragraph.margin.latex","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.marginpar.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"((\\\\\\\\)footnote)((?:\\\\[[^\\\\[]*?\\\\])*)(\\\\{)","beginCaptures":{"1":{"name":"support.function.footnote.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"patterns":[{"include":"#optional-arg-bracket"}]},"4":{"name":"punctuation.definition.footnote.begin.latex"}},"contentName":"entity.name.footnote.latex","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.footnote.end.latex"}},"patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"((\\\\\\\\)emph)(\\\\{)","beginCaptures":{"1":{"name":"support.function.emph.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"punctuation.definition.emph.begin.latex"}},"contentName":"markup.italic.emph.latex","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.emph.end.latex"}},"name":"meta.function.emph.latex","patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"((\\\\\\\\)textit)(\\\\{)","captures":{"1":{"name":"support.function.textit.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"punctuation.definition.textit.begin.latex"}},"comment":"We put the keyword in a capture and name this capture, so that disabling spell checking for \u201Ckeyword\u201D won\'t be inherited by the argument to \\\\textit{...}.\\n\\nPut specific matches for particular LaTeX keyword.functions before the last two more general functions","contentName":"markup.italic.textit.latex","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.textit.end.latex"}},"name":"meta.function.textit.latex","patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"((\\\\\\\\)textbf)(\\\\{)","captures":{"1":{"name":"support.function.textbf.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"punctuation.definition.textbf.begin.latex"}},"contentName":"markup.bold.textbf.latex","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.textbf.end.latex"}},"name":"meta.function.textbf.latex","patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"begin":"((\\\\\\\\)texttt)(\\\\{)","captures":{"1":{"name":"support.function.texttt.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"punctuation.definition.texttt.begin.latex"}},"contentName":"markup.raw.texttt.latex","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.texttt.end.latex"}},"name":"meta.function.texttt.latex","patterns":[{"include":"text.tex#braces"},{"include":"$self"}]},{"captures":{"0":{"name":"keyword.other.item.latex"},"1":{"name":"punctuation.definition.keyword.latex"}},"match":"(\\\\\\\\)item\\\\b","name":"meta.scope.item.latex"},{"begin":"((\\\\\\\\)(?:[aA]uto|foot|full|no|ref|short|[tT]ext|[pP]aren|[sS]mart)?[cC]ite(?:al)?(?:p|s|t|author|year(?:par)?|title)?[ANP]*\\\\*?)((?:(?:\\\\([^\\\\)]*\\\\)){0,2}(?:\\\\[[^\\\\]]*\\\\]){0,2}\\\\{[\\\\p{Alphabetic}\\\\p{Number}_:.-]*\\\\})*)(<[^\\\\]<>]*>)?((?:\\\\[[^\\\\]]*\\\\])*)(\\\\{)","captures":{"1":{"name":"keyword.control.cite.latex"},"2":{"name":"punctuation.definition.keyword.latex"},"3":{"patterns":[{"include":"#autocites-arg"}]},"4":{"patterns":[{"include":"#optional-arg-angle-no-highlight"}]},"5":{"patterns":[{"include":"#optional-arg-bracket-no-highlight"}]},"6":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.latex"}},"name":"meta.citation.latex","patterns":[{"captures":{"1":{"name":"comment.line.percentage.tex"},"2":{"name":"punctuation.definition.comment.tex"}},"match":"((%).*)$"},{"match":"[\\\\p{Alphabetic}\\\\p{Number}:.-]+","name":"constant.other.reference.citation.latex"}]},{"begin":"((\\\\\\\\)bibentry)(\\\\{)","captures":{"1":{"name":"keyword.control.cite.latex"},"2":{"name":"punctuation.definition.keyword.latex"},"3":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.latex"}},"name":"meta.citation.latex","patterns":[{"match":"[\\\\p{Alphabetic}\\\\p{Number}:.]+","name":"constant.other.reference.citation.latex"}]},{"begin":"((\\\\\\\\)(?:\\\\w*[rR]ef\\\\*?))(?:\\\\[[^\\\\]]*\\\\])?(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.ref.latex"},"2":{"name":"punctuation.definition.keyword.latex"},"3":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.latex"}},"name":"meta.reference.label.latex","patterns":[{"match":"[\\\\p{Alphabetic}\\\\p{Number}\\\\.,:/*!^_-]","name":"constant.other.reference.label.latex"}]},{"include":"#definition-label"},{"begin":"((\\\\\\\\)(?:verb|Verb|spverb)\\\\*?)\\\\s*((\\\\\\\\)scantokens)(\\\\{)","beginCaptures":{"1":{"name":"support.function.verb.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"support.function.verb.latex"},"4":{"name":"punctuation.definition.verb.latex"},"5":{"name":"punctuation.definition.begin.latex"}},"contentName":"markup.raw.verb.latex","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.end.latex"}},"name":"meta.function.verb.latex","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"support.function.verb.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"punctuation.definition.verb.latex"},"4":{"name":"markup.raw.verb.latex"},"5":{"name":"punctuation.definition.verb.latex"}},"match":"((\\\\\\\\)(?:verb|Verb|spverb)\\\\*?)\\\\s*((?<=\\\\s)\\\\S|[^a-zA-Z])(.*?)(\\\\3|$)","name":"meta.function.verb.latex"},{"captures":{"1":{"name":"support.function.verb.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"patterns":[{"include":"#optional-arg-bracket"}]},"4":{"name":"punctuation.definition.arguments.begin.latex"},"5":{"name":"punctuation.definition.arguments.end.latex"},"6":{"name":"punctuation.definition.verb.latex"},"7":{"name":"markup.raw.verb.latex"},"8":{"name":"punctuation.definition.verb.latex"},"9":{"name":"punctuation.definition.verb.latex"},"10":{"name":"markup.raw.verb.latex"},"11":{"name":"punctuation.definition.verb.latex"}},"match":"((\\\\\\\\)(?:mint|mintinline))((?:\\\\[[^\\\\[]*?\\\\])?)(\\\\{)[a-zA-Z]*(\\\\})(?:(?:([^a-zA-Z\\\\{])(.*?)(\\\\6))|(?:(\\\\{)(.*?)(\\\\})))","name":"meta.function.verb.latex"},{"captures":{"1":{"name":"support.function.verb.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"patterns":[{"include":"#optional-arg-bracket"}]},"4":{"name":"punctuation.definition.verb.latex"},"5":{"name":"markup.raw.verb.latex"},"6":{"name":"punctuation.definition.verb.latex"},"7":{"name":"punctuation.definition.verb.latex"},"8":{"name":"markup.raw.verb.latex"},"9":{"name":"punctuation.definition.verb.latex"}},"match":"((\\\\\\\\)[a-z]+inline)((?:\\\\[[^\\\\[]*?\\\\])?)(?:(?:([^a-zA-Z\\\\{])(.*?)(\\\\4))|(?:(\\\\{)(.*?)(\\\\})))","name":"meta.function.verb.latex"},{"captures":{"1":{"name":"support.function.verb.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"patterns":[{"include":"#optional-arg-bracket"}]},"4":{"name":"punctuation.definition.verb.latex"},"5":{"name":"source.python","patterns":[{"include":"source.python"}]},"6":{"name":"punctuation.definition.verb.latex"},"7":{"name":"punctuation.definition.verb.latex"},"8":{"name":"source.python","patterns":[{"include":"source.python"}]},"9":{"name":"punctuation.definition.verb.latex"}},"match":"((\\\\\\\\)(?:(?:py|pycon|pylab|pylabcon|sympy|sympycon)[cv]?|pyq|pycq|pyif))((?:\\\\[[^\\\\[]*?\\\\])?)(?:(?:([^a-zA-Z\\\\{])(.*?)(\\\\4))|(?:(\\\\{)(.*?)(\\\\})))","name":"meta.function.verb.latex"},{"captures":{"1":{"name":"support.function.verb.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"patterns":[{"include":"#optional-arg-bracket"}]},"4":{"name":"punctuation.definition.verb.latex"},"5":{"name":"source.julia","patterns":[{"include":"source.julia"}]},"6":{"name":"punctuation.definition.verb.latex"},"7":{"name":"punctuation.definition.verb.latex"},"8":{"name":"source.julia","patterns":[{"include":"source.julia"}]},"9":{"name":"punctuation.definition.verb.latex"}},"match":"((\\\\\\\\)(?:jl|julia)[cv]?)((?:\\\\[[^\\\\[]*?\\\\])?)(?:(?:([^a-zA-Z\\\\{])(.*?)(\\\\4))|(?:(\\\\{)(.*?)(\\\\})))","name":"meta.function.verb.latex"},{"begin":"((\\\\\\\\)(?:directlua|luadirect))(\\\\{)","beginCaptures":{"1":{"name":"support.function.verb.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"punctuation.definition.arguments.begin.latex"}},"contentName":"source.lua","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.latex"}},"patterns":[{"include":"source.lua"}]},{"match":"\\\\\\\\(?:newline|pagebreak|clearpage|linebreak|pause)(?:\\\\b)","name":"keyword.control.layout.latex"},{"begin":"\\\\\\\\\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.latex"}},"end":"\\\\\\\\\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.latex"}},"name":"meta.math.block.latex support.class.math.block.environment.latex","patterns":[{"include":"text.tex#math"},{"include":"$self"}]},{"begin":"\\\\$\\\\$","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.latex"}},"end":"\\\\$\\\\$","endCaptures":{"0":{"name":"punctuation.definition.string.end.latex"}},"name":"meta.math.block.latex support.class.math.block.environment.latex","patterns":[{"match":"\\\\\\\\\\\\$","name":"constant.character.escape.latex"},{"include":"text.tex#math"},{"include":"$self"}]},{"begin":"\\\\$","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.tex"}},"end":"\\\\$","endCaptures":{"0":{"name":"punctuation.definition.string.end.tex"}},"name":"meta.math.block.tex support.class.math.block.tex","patterns":[{"match":"\\\\\\\\\\\\$","name":"constant.character.escape.latex"},{"include":"text.tex#math"},{"include":"$self"}]},{"begin":"\\\\\\\\\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.latex"}},"end":"\\\\\\\\\\\\]","endCaptures":{"0":{"name":"punctuation.definition.string.end.latex"}},"name":"meta.math.block.latex support.class.math.block.environment.latex","patterns":[{"include":"text.tex#math"},{"include":"$self"}]},{"captures":{"1":{"name":"punctuation.definition.constant.latex"}},"match":"(\\\\\\\\)(text(s(terling|ixoldstyle|urd|e(ction|venoldstyle|rvicemark))|yen|n(ineoldstyle|umero|aira)|c(ircledP|o(py(left|right)|lonmonetary)|urrency|e(nt(oldstyle)?|lsius))|t(hree(superior|oldstyle|quarters(emdash)?)|i(ldelow|mes)|w(o(superior|oldstyle)|elveudash)|rademark)|interrobang(down)?|zerooldstyle|o(hm|ne(superior|half|oldstyle|quarter)|penbullet|rd(feminine|masculine))|d(i(scount|ed|v(orced)?)|o(ng|wnarrow|llar(oldstyle)?)|egree|agger(dbl)?|blhyphen(char)?)|uparrow|p(ilcrow|e(so|r(t(housand|enthousand)|iodcentered))|aragraph|m)|e(stimated|ightoldstyle|uro)|quotes(traight(dblbase|base)|ingle)|f(iveoldstyle|ouroldstyle|lorin|ractionsolidus)|won|l(not|ira|e(ftarrow|af)|quill|angle|brackdbl)|a(s(cii(caron|dieresis|acute|grave|macron|breve)|teriskcentered)|cutedbl)|r(ightarrow|e(cipe|ferencemark|gistered)|quill|angle|brackdbl)|g(uarani|ravedbl)|m(ho|inus|u(sicalnote)?|arried)|b(igcircle|orn|ullet|lank|a(ht|rdbl)|rokenbar)))\\\\b","name":"constant.character.latex"},{"captures":{"1":{"name":"punctuation.definition.variable.latex"}},"match":"(\\\\\\\\)(?:[cgl]_+[_\\\\p{Alphabetic}@]+_[a-z]+|[qs]_[_\\\\p{Alphabetic}@]+[\\\\p{Alphabetic}@])","name":"variable.other.latex3.latex"},{"captures":{"1":{"name":"punctuation.definition.column-specials.begin.latex"},"2":{"name":"punctuation.definition.column-specials.end.latex"}},"match":"(?:<|>)(\\\\{)\\\\$(\\\\})","name":"meta.column-specials.latex"},{"include":"text.tex"}],"repository":{"autocites-arg":{"patterns":[{"captures":{"1":{"patterns":[{"include":"#optional-arg-parenthesis-no-highlight"}]},"2":{"patterns":[{"include":"#optional-arg-bracket-no-highlight"}]},"3":{"name":"punctuation.definition.arguments.begin.latex"},"4":{"name":"constant.other.reference.citation.latex"},"5":{"name":"punctuation.definition.arguments.end.latex"},"6":{"patterns":[{"include":"#autocites-arg"}]}},"match":"((?:\\\\([^\\\\)]*\\\\)){0,2})((?:\\\\[[^\\\\]]*\\\\]){0,2})(\\\\{)([\\\\p{Alphabetic}\\\\p{Number}_:.-]+)(\\\\})(.*)"}]},"begin-env-tokenizer":{"captures":{"1":{"name":"support.function.be.latex"},"2":{"name":"punctuation.definition.function.latex"},"3":{"name":"punctuation.definition.arguments.begin.latex"},"4":{"name":"variable.parameter.function.latex"},"5":{"name":"punctuation.definition.arguments.end.latex"},"6":{"name":"punctuation.definition.arguments.optional.begin.latex"},"7":{"patterns":[{"include":"$self"}]},"8":{"name":"punctuation.definition.arguments.optional.end.latex"},"9":{"name":"punctuation.definition.arguments.begin.latex"},"10":{"name":"variable.parameter.function.latex"},"11":{"name":"punctuation.definition.arguments.end.latex"}},"match":"\\\\s*((\\\\\\\\)(?:begin|end))(\\\\{)([a-zA-Z]*\\\\*?)(\\\\})(?:(\\\\[)([^\\\\]]*)(\\\\])){,2}(?:(\\\\{)([^{}]*)(\\\\}))?"},"definition-label":{"begin":"((\\\\\\\\)z?label)((?:\\\\[[^\\\\[]*?\\\\])*)(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.label.latex"},"2":{"name":"punctuation.definition.keyword.latex"},"3":{"patterns":[{"include":"#optional-arg-bracket"}]},"4":{"name":"punctuation.definition.arguments.begin.latex"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.latex"}},"name":"meta.definition.label.latex","patterns":[{"match":"[\\\\p{Alphabetic}\\\\p{Number}\\\\.,:/*!^_-]","name":"variable.parameter.definition.label.latex"}]},"multiline-optional-arg":{"begin":"\\\\G\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.arguments.optional.begin.latex"}},"contentName":"variable.parameter.function.latex","end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.arguments.optional.end.latex"}},"name":"meta.parameter.optional.latex","patterns":[{"include":"$self"}]},"multiline-optional-arg-no-highlight":{"begin":"\\\\G\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.arguments.optional.begin.latex"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.arguments.optional.end.latex"}},"name":"meta.parameter.optional.latex","patterns":[{"include":"$self"}]},"optional-arg-angle-no-highlight":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.arguments.optional.begin.latex"},"2":{"name":"punctuation.definition.arguments.optional.end.latex"}},"match":"(<)[^<]*?(>)","name":"meta.parameter.optional.latex"}]},"optional-arg-bracket":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.arguments.optional.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.optional.end.latex"}},"match":"(\\\\[)([^\\\\[]*?)(\\\\])","name":"meta.parameter.optional.latex"}]},"optional-arg-bracket-no-highlight":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.arguments.optional.begin.latex"},"2":{"name":"punctuation.definition.arguments.optional.end.latex"}},"match":"(\\\\[)[^\\\\[]*?(\\\\])","name":"meta.parameter.optional.latex"}]},"optional-arg-parenthesis":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.arguments.optional.begin.latex"},"2":{"name":"variable.parameter.function.latex"},"3":{"name":"punctuation.definition.arguments.optional.end.latex"}},"match":"(\\\\()([^\\\\(]*?)(\\\\))","name":"meta.parameter.optional.latex"}]},"optional-arg-parenthesis-no-highlight":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.arguments.optional.begin.latex"},"2":{"name":"punctuation.definition.arguments.optional.end.latex"}},"match":"(\\\\()[^\\\\(]*?(\\\\))","name":"meta.parameter.optional.latex"}]}},"scopeName":"text.tex.latex","embeddedLangs":["tex"],"embeddedLangsLazy":["shellscript","css","gnuplot","haskell","html","java","julia","javascript","lua","python","ruby","rust","typescript","xml","yaml","scala"]}')),ore=[...JB,ire]});var K$={};x(K$,{default:()=>cre});var sre,cre,J$=_(()=>{sre=Object.freeze(JSON.parse(`{"displayName":"Lean 4","fileTypes":[],"name":"lean","patterns":[{"include":"#comments"},{"match":"\\\\b(Prop|Type|Sort)\\\\b","name":"storage.type.lean4"},{"match":"\\\\battribute\\\\b\\\\s*\\\\[[^\\\\]]*\\\\]","name":"storage.modifier.lean4"},{"match":"@\\\\[[^\\\\]]*\\\\]","name":"storage.modifier.lean4"},{"match":"\\\\b(?<!\\\\.)(global|local|scoped|partial|unsafe|private|protected|noncomputable)(?!\\\\.)\\\\b","name":"storage.modifier.lean4"},{"match":"\\\\b(sorry|admit|stop)\\\\b","name":"invalid.illegal.lean4"},{"match":"#(print|eval|reduce|check|check_failure)\\\\b","name":"keyword.other.lean4"},{"match":"\\\\bderiving\\\\s+instance\\\\b","name":"keyword.other.command.lean4"},{"begin":"\\\\b(?<!\\\\.)(inductive|coinductive|structure|theorem|axiom|abbrev|lemma|def|instance|class|constant)\\\\b\\\\s+(\\\\{[^}]*\\\\})?","beginCaptures":{"1":{"name":"keyword.other.definitioncommand.lean4"}},"end":"(?=\\\\bwith\\\\b|\\\\bextends\\\\b|\\\\bwhere\\\\b|[:\\\\|\\\\(\\\\[\\\\{\u2983<>])","name":"meta.definitioncommand.lean4","patterns":[{"include":"#comments"},{"include":"#definitionName"},{"match":","}]},{"match":"\\\\b(?<!\\\\.)(theorem|show|have|from|suffices|nomatch|def|class|structure|instance|set_option|initialize|builtin_initialize|example|inductive|coinductive|axiom|constant|universe|universes|variable|variables|import|open|export|theory|prelude|renaming|hiding|exposing|do|by|let|extends|mutual|mut|where|rec|syntax|macro_rules|macro|deriving|fun|section|namespace|end|infix|infixl|infixr|postfix|prefix|notation|abbrev|if|then|else|calc|match|with|for|in|unless|try|catch|finally|return|continue|break)(?!\\\\.)\\\\b","name":"keyword.other.lean4"},{"begin":"\xAB","contentName":"entity.name.lean4","end":"\xBB"},{"begin":"(s!)\\"","beginCaptures":{"1":{"name":"keyword.other.lean4"}},"end":"\\"","name":"string.interpolated.lean4","patterns":[{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"keyword.other.lean4"}},"end":"(\\\\})","endCaptures":{"1":{"name":"keyword.other.lean4"}},"patterns":[{"include":"$self"}]},{"match":"\\\\\\\\[\\\\\\\\\\"ntr']","name":"constant.character.escape.lean4"},{"match":"\\\\\\\\x[0-9A-Fa-f][0-9A-Fa-f]","name":"constant.character.escape.lean4"},{"match":"\\\\\\\\u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]","name":"constant.character.escape.lean4"}]},{"begin":"\\"","end":"\\"","name":"string.quoted.double.lean4","patterns":[{"match":"\\\\\\\\[\\\\\\\\\\"ntr']","name":"constant.character.escape.lean4"},{"match":"\\\\\\\\x[0-9A-Fa-f][0-9A-Fa-f]","name":"constant.character.escape.lean4"},{"match":"\\\\\\\\u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]","name":"constant.character.escape.lean4"}]},{"match":"\\\\b(true|false)\\\\b","name":"constant.language.lean4"},{"match":"'[^\\\\\\\\']'","name":"string.quoted.single.lean4"},{"captures":{"1":{"name":"constant.character.escape.lean4"}},"match":"'(\\\\\\\\(x[0-9A-Fa-f][0-9A-Fa-f]|u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]|.))'","name":"string.quoted.single.lean4"},{"match":"\`+[^\\\\[(]\\\\S+","name":"entity.name.lean4"},{"match":"\\\\b([0-9]+|0([xX][0-9a-fA-F]+)|[-]?(0|[1-9][0-9]*)(\\\\.[0-9]+)?([eE][+-]?[0-9]+)?)\\\\b","name":"constant.numeric.lean4"}],"repository":{"blockComment":{"begin":"/-","end":"-/","name":"comment.block.lean4","patterns":[{"include":"source.lean4.markdown"},{"include":"#blockComment"}]},"comments":{"patterns":[{"include":"#dashComment"},{"include":"#docComment"},{"include":"#stringBlock"},{"include":"#modDocComment"},{"include":"#blockComment"}]},"dashComment":{"begin":"--","end":"$","name":"comment.line.double-dash.lean4","patterns":[{"include":"source.lean4.markdown"}]},"definitionName":{"patterns":[{"match":"\\\\b[^:\xAB\xBB\\\\(\\\\)\\\\{\\\\}[:space:]=\u2192\u03BB\u2200?][^:\xAB\xBB\\\\(\\\\)\\\\{\\\\}[:space:]]*","name":"entity.name.function.lean4"},{"begin":"\xAB","contentName":"entity.name.function.lean4","end":"\xBB"}]},"docComment":{"begin":"/--","end":"-/","name":"comment.block.documentation.lean4","patterns":[{"include":"source.lean4.markdown"},{"include":"#blockComment"}]},"modDocComment":{"begin":"/-!","end":"-/","name":"comment.block.documentation.lean4","patterns":[{"include":"source.lean4.markdown"},{"include":"#blockComment"}]}},"scopeName":"source.lean4","aliases":["lean4"]}`)),cre=[sre]});var V$={};x(V$,{default:()=>XB});var lre,XB,ex=_(()=>{lre=Object.freeze(JSON.parse(`{"displayName":"Less","name":"less","patterns":[{"include":"#comment-block"},{"include":"#less-namespace-accessors"},{"include":"#less-extend"},{"include":"#at-rules"},{"include":"#less-variable-assignment"},{"include":"#property-list"},{"include":"#selector"}],"repository":{"angle-type":{"captures":{"1":{"name":"keyword.other.unit.less"}},"match":"(?i:[-+]?(?:(?:\\\\d*\\\\.\\\\d+(?:[eE](?:[-+]?\\\\d+))*)|(?:[-+]?\\\\d+))(deg|grad|rad|turn))\\\\b","name":"constant.numeric.less"},"arbitrary-repetition":{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.less"}},"match":"\\\\s*(?:(,))"},"at-charset":{"begin":"\\\\s*((@)charset\\\\b)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.at-rule.charset.less"},"2":{"name":"punctuation.definition.keyword.less"}},"end":"\\\\s*((?=;|$))","name":"meta.at-rule.charset.less","patterns":[{"include":"#literal-string"}]},"at-container":{"begin":"(?=\\\\s*@container)","end":"\\\\s*(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.end.less"}},"patterns":[{"begin":"((@)container)","beginCaptures":{"1":{"name":"keyword.control.at-rule.container.less"},"2":{"name":"punctuation.definition.keyword.less"},"3":{"name":"support.constant.container.less"}},"end":"(?=\\\\{)","name":"meta.at-rule.container.less","patterns":[{"begin":"\\\\s*(?=[^{;])","end":"\\\\s*(?=[{;])","patterns":[{"match":"\\\\b(not|and|or)\\\\b","name":"keyword.operator.comparison.less"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.at-rule.container-query.less","patterns":[{"captures":{"1":{"name":"support.type.property-name.less"}},"match":"\\\\b(aspect-ratio|block-size|height|inline-size|orientation|width)\\\\b","name":"support.constant.size-feature.less"},{"match":"((<|>)=?)|=|\\\\/","name":"keyword.operator.comparison.less"},{"match":":","name":"punctuation.separator.key-value.less"},{"match":"portrait|landscape","name":"support.constant.property-value.less"},{"include":"#numeric-values"},{"match":"\\\\/","name":"keyword.operator.arithmetic.less"},{"include":"#var-function"},{"include":"#less-variables"},{"include":"#less-variable-interpolation"}]},{"include":"#style-function"},{"match":"--|(?:-?(?:(?:[a-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R]))))(?:(?:[-\\\\da-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R])))*","name":"variable.parameter.container-name.css"},{"include":"#arbitrary-repetition"},{"include":"#less-variables"}]}]},{"begin":"\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.begin.less"}},"end":"(?=\\\\})","patterns":[{"include":"#rule-list-body"},{"include":"$self"}]}]},"at-counter-style":{"begin":"\\\\s*((@)counter-style\\\\b)\\\\s+(?:(?i:\\\\b(decimal|none)\\\\b)|(-?(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*))\\\\s*(?=\\\\{|$)","beginCaptures":{"1":{"name":"keyword.control.at-rule.counter-style.less"},"2":{"name":"punctuation.definition.keyword.less"},"3":{"name":"invalid.illegal.counter-style-name.less"},"4":{"name":"entity.other.counter-style-name.css"}},"end":"\\\\s*(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.begin.less"}},"name":"meta.at-rule.counter-style.less","patterns":[{"include":"#comment-block"},{"include":"#rule-list"}]},"at-custom-media":{"begin":"(?=\\\\s*@custom-media\\\\b)","end":"\\\\s*(?=;)","name":"meta.at-rule.custom-media.less","patterns":[{"captures":{"0":{"name":"punctuation.section.property-list.less"}},"match":"\\\\s*;"},{"captures":{"1":{"name":"keyword.control.at-rule.custom-media.less"},"2":{"name":"punctuation.definition.keyword.less"},"3":{"name":"support.constant.custom-media.less"}},"match":"\\\\s*((@)custom-media)(?=.*?)"},{"include":"#media-query-list"}]},"at-font-face":{"begin":"\\\\s*((@)font-face)\\\\s*(?=\\\\{|$)","beginCaptures":{"1":{"name":"keyword.control.at-rule.font-face.less"},"2":{"name":"punctuation.definition.keyword.less"}},"end":"\\\\s*(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.end.less"}},"name":"meta.at-rule.font-face.less","patterns":[{"include":"#comment-block"},{"include":"#rule-list"}]},"at-import":{"begin":"\\\\s*((@)import\\\\b)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.at-rule.import.less"},"2":{"name":"punctuation.definition.keyword.less"}},"end":"\\\\;","endCaptures":{"0":{"name":"punctuation.terminator.rule.less"}},"name":"meta.at-rule.import.less","patterns":[{"include":"#url-function"},{"include":"#less-variables"},{"begin":"(?<=([\\"'])|([\\"']\\\\)))\\\\s*","end":"\\\\s*(?=\\\\;)","patterns":[{"include":"#media-query"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.group.less","patterns":[{"match":"reference|inline|less|css|once|multiple|optional","name":"constant.language.import-directive.less"},{"include":"#comma-delimiter"}]},{"include":"#literal-string"}]},"at-keyframes":{"begin":"\\\\s*((@)keyframes)(?=.*?\\\\{)","beginCaptures":{"1":{"name":"keyword.control.at-rule.keyframe.less"},"2":{"name":"punctuation.definition.keyword.less"},"4":{"name":"support.constant.keyframe.less"}},"end":"\\\\s*(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.end.less"}},"patterns":[{"begin":"\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.begin.less"}},"end":"(?=\\\\})","patterns":[{"captures":{"1":{"name":"keyword.other.keyframe-selector.less"},"2":{"name":"constant.numeric.less"},"3":{"name":"keyword.other.unit.less"}},"match":"\\\\s*(?:(from|to)|((?:\\\\.[0-9]+|[0-9]+(?:\\\\.[0-9]*)?)(%)))\\\\s*,?\\\\s*"},{"include":"$self"}]},{"begin":"\\\\s*(?=[^{;])","end":"\\\\s*(?=\\\\{)","name":"meta.at-rule.keyframe.less","patterns":[{"include":"#keyframe-name"},{"include":"#arbitrary-repetition"}]}]},"at-media":{"begin":"(?=\\\\s*@media\\\\b)","end":"\\\\s*(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.end.less"}},"patterns":[{"begin":"\\\\s*((@)media)","beginCaptures":{"1":{"name":"keyword.control.at-rule.media.less"},"2":{"name":"punctuation.definition.keyword.less"},"3":{"name":"support.constant.media.less"}},"end":"\\\\s*(?=\\\\{)","name":"meta.at-rule.media.less","patterns":[{"include":"#media-query-list"}]},{"begin":"\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.begin.less"}},"end":"(?=\\\\})","patterns":[{"include":"#rule-list-body"},{"include":"$self"}]}]},"at-namespace":{"begin":"\\\\s*((@)namespace)\\\\s+","beginCaptures":{"1":{"name":"keyword.control.at-rule.namespace.less"},"2":{"name":"punctuation.definition.keyword.less"}},"end":"\\\\;","endCaptures":{"0":{"name":"punctuation.terminator.rule.less"}},"name":"meta.at-rule.namespace.less","patterns":[{"include":"#url-function"},{"include":"#literal-string"},{"match":"(-?(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*)","name":"entity.name.constant.namespace-prefix.less"}]},"at-page":{"captures":{"1":{"name":"keyword.control.at-rule.page.less"},"2":{"name":"punctuation.definition.keyword.less"},"3":{"name":"punctuation.definition.entity.less"},"4":{"name":"entity.other.attribute-name.pseudo-class.less"}},"match":"\\\\s*((@)page)\\\\s*(?:(:)(first|left|right))?\\\\s*(?=\\\\{|$)","name":"meta.at-rule.page.less","patterns":[{"include":"#comment-block"},{"include":"#rule-list"}]},"at-rules":{"patterns":[{"include":"#at-charset"},{"include":"#at-container"},{"include":"#at-counter-style"},{"include":"#at-custom-media"},{"include":"#at-font-face"},{"include":"#at-media"},{"include":"#at-import"},{"include":"#at-keyframes"},{"include":"#at-namespace"},{"include":"#at-page"},{"include":"#at-supports"},{"include":"#at-viewport"}]},"at-supports":{"begin":"(?=\\\\s*@supports\\\\b)","end":"(?=\\\\s*)(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.block.end.less"}},"patterns":[{"begin":"\\\\s*((@)supports)","beginCaptures":{"1":{"name":"keyword.control.at-rule.supports.less"},"2":{"name":"punctuation.definition.keyword.less"},"3":{"name":"support.constant.supports.less"}},"end":"\\\\s*(?=\\\\{)","name":"meta.at-rule.supports.less","patterns":[{"include":"#at-supports-operators"},{"include":"#at-supports-parens"}]},{"begin":"\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.section.property-list.begin.less"}},"end":"(?=\\\\})","patterns":[{"include":"#rule-list-body"},{"include":"$self"}]}]},"at-supports-operators":{"match":"\\\\b(?:and|or|not)\\\\b","name":"keyword.operator.logic.less"},"at-supports-parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.group.less","patterns":[{"include":"#at-supports-operators"},{"include":"#at-supports-parens"},{"include":"#rule-list-body"}]},"attr-function":{"begin":"\\\\b(attr)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.filter.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#qualified-name"},{"include":"#literal-string"},{"begin":"(-?(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*)","end":"(?=\\\\))","name":"entity.other.attribute-name.less","patterns":[{"match":"\\\\b((?i:em|ex|ch|rem)|(?i:vw|vh|vmin|vmax)|(?i:cm|mm|q|in|pt|pc|px|fr)|(?i:deg|grad|rad|turn)|(?i:s|ms)|(?i:Hz|kHz)|(?i:dpi|dpcm|dppx))\\\\b","name":"keyword.other.unit.less"},{"include":"#comma-delimiter"},{"include":"#property-value-constants"},{"include":"#numeric-values"}]},{"include":"#color-values"}]}]},"builtin-functions":{"patterns":[{"include":"#attr-function"},{"include":"#calc-function"},{"include":"#color-functions"},{"include":"#counter-functions"},{"include":"#cross-fade-function"},{"include":"#cubic-bezier-function"},{"include":"#filter-function"},{"include":"#fit-content-function"},{"include":"#format-function"},{"include":"#gradient-functions"},{"include":"#grid-repeat-function"},{"include":"#image-function"},{"include":"#less-functions"},{"include":"#local-function"},{"include":"#minmax-function"},{"include":"#regexp-function"},{"include":"#shape-functions"},{"include":"#steps-function"},{"include":"#symbols-function"},{"include":"#transform-functions"},{"include":"#url-function"},{"include":"#var-function"}]},"calc-function":{"begin":"\\\\b(calc)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.calc.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-strings"},{"include":"#var-function"},{"include":"#calc-function"},{"include":"#attr-function"},{"include":"#less-math"},{"include":"#relative-color"}]}]},"color-adjuster-operators":{"match":"[\\\\-\\\\+*](?=\\\\s+)","name":"keyword.operator.less"},"color-functions":{"patterns":[{"begin":"\\\\b(rgba?)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color.less"}},"comment":"rgb(), rgba()","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-strings"},{"include":"#less-variables"},{"include":"#var-function"},{"include":"#comma-delimiter"},{"include":"#value-separator"},{"include":"#percentage-type"},{"include":"#number-type"}]}]},{"begin":"\\\\b(hsla|hsl|hwb|oklab|oklch|lab|lch)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color.less"}},"comment":"hsla, hsl, hwb, oklab, oklch, lab, lch","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#color-values"},{"include":"#less-strings"},{"include":"#less-variables"},{"include":"#var-function"},{"include":"#comma-delimiter"},{"include":"#angle-type"},{"include":"#percentage-type"},{"include":"#number-type"},{"include":"#calc-function"},{"include":"#value-separator"}]}]},{"begin":"\\\\b(light-dark)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color.less"}},"comment":"light-dark()","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#color-values"},{"include":"#comma-delimiter"}]}]},{"include":"#less-color-functions"}]},"color-values":{"patterns":[{"include":"#color-functions"},{"include":"#less-functions"},{"include":"#less-variables"},{"include":"#var-function"},{"match":"\\\\b(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)\\\\b","name":"support.constant.color.w3c-standard-color-name.less"},{"match":"\\\\b(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|rebeccapurple|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato|turquoise|violet|wheat|whitesmoke|yellowgreen)\\\\b","name":"support.constant.color.w3c-extended-color-keywords.less"},{"match":"\\\\b((?i)currentColor|transparent)\\\\b","name":"support.constant.color.w3c-special-color-keyword.less"},{"captures":{"1":{"name":"punctuation.definition.constant.less"}},"match":"(#)(\\\\h{3}|\\\\h{4}|\\\\h{6}|\\\\h{8})\\\\b","name":"constant.other.color.rgb-value.less"},{"include":"#relative-color"}]},"comma-delimiter":{"captures":{"1":{"name":"punctuation.separator.less"}},"match":"\\\\s*(,)\\\\s*"},"comment-block":{"patterns":[{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.less"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.less"}},"name":"comment.block.less"},{"include":"#comment-line"}]},"comment-line":{"captures":{"1":{"name":"punctuation.definition.comment.less"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.less"},"counter-functions":{"patterns":[{"begin":"\\\\b(counter)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.filter.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-strings"},{"include":"#less-variables"},{"include":"#var-function"},{"match":"(?:--(?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))+|-?(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*)","name":"entity.other.counter-name.less"},{"begin":"(?=,)","end":"(?=\\\\))","patterns":[{"include":"#comma-delimiter"},{"match":"\\\\b((?xi:arabic-indic|armenian|bengali|cambodian|circle|cjk-decimal|cjk-earthly-branch|cjk-heavenly-stem|decimal-leading-zero|decimal|devanagari|disclosure-closed|disclosure-open|disc|ethiopic-numeric|georgian|gujarati|gurmukhi|hebrew|hiragana-iroha|hiragana|japanese-formal|japanese-informal|kannada|katakana-iroha|katakana|khmer|korean-hangul-formal|korean-hanja-formal|korean-hanja-informal|lao|lower-alpha|lower-armenian|lower-greek|lower-latin|lower-roman|malayalam|mongolian|myanmar|oriya|persian|simp-chinese-formal|simp-chinese-informal|square|tamil|telugu|thai|tibetan|trad-chinese-formal|trad-chinese-informal|upper-alpha|upper-armenian|upper-latin|upper-roman)|none)\\\\b","name":"support.constant.property-value.counter-style.less"}]}]}]},{"begin":"\\\\b(counters)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.filter.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"match":"(-?(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*)","name":"entity.other.counter-name.less string.unquoted.less"},{"begin":"(?=,)","end":"(?=\\\\))","patterns":[{"include":"#less-strings"},{"include":"#less-variables"},{"include":"#var-function"},{"include":"#literal-string"},{"include":"#comma-delimiter"},{"match":"\\\\b((?xi:arabic-indic|armenian|bengali|cambodian|circle|cjk-decimal|cjk-earthly-branch|cjk-heavenly-stem|decimal-leading-zero|decimal|devanagari|disclosure-closed|disclosure-open|disc|ethiopic-numeric|georgian|gujarati|gurmukhi|hebrew|hiragana-iroha|hiragana|japanese-formal|japanese-informal|kannada|katakana-iroha|katakana|khmer|korean-hangul-formal|korean-hanja-formal|korean-hanja-informal|lao|lower-alpha|lower-armenian|lower-greek|lower-latin|lower-roman|malayalam|mongolian|myanmar|oriya|persian|simp-chinese-formal|simp-chinese-informal|square|tamil|telugu|thai|tibetan|trad-chinese-formal|trad-chinese-informal|upper-alpha|upper-armenian|upper-latin|upper-roman)|none)\\\\b","name":"support.constant.property-value.counter-style.less"}]}]}]}]},"cross-fade-function":{"patterns":[{"begin":"\\\\b(cross-fade)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.image.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#comma-delimiter"},{"include":"#percentage-type"},{"include":"#color-values"},{"include":"#image-type"},{"include":"#literal-string"},{"include":"#unquoted-string"}]}]}]},"cubic-bezier-function":{"begin":"\\\\b(cubic-bezier)(\\\\()","beginCaptures":{"1":{"name":"support.function.timing.less"},"2":{"name":"punctuation.definition.group.begin.less"}},"contentName":"meta.group.less","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"include":"#less-functions"},{"include":"#calc-function"},{"include":"#less-variables"},{"include":"#var-function"},{"include":"#comma-delimiter"},{"include":"#number-type"}]},"custom-property-name":{"captures":{"1":{"name":"punctuation.definition.custom-property.less"},"2":{"name":"support.type.custom-property.name.less"}},"match":"\\\\s*(--)((?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))+)","name":"support.type.custom-property.less"},"dimensions":{"patterns":[{"include":"#angle-type"},{"include":"#frequency-type"},{"include":"#time-type"},{"include":"#percentage-type"},{"include":"#length-type"}]},"filter-function":{"begin":"\\\\b(filter)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.filter.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","name":"meta.group.less","patterns":[{"include":"#comma-delimiter"},{"include":"#image-type"},{"include":"#literal-string"},{"include":"#filter-functions"}]}]},"filter-functions":{"patterns":[{"include":"#less-functions"},{"begin":"\\\\b(blur)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.filter.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#length-type"}]}]},{"begin":"\\\\b(brightness|contrast|grayscale|invert|opacity|saturate|sepia)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.filter.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#percentage-type"},{"include":"#number-type"},{"include":"#less-functions"}]}]},{"begin":"\\\\b(drop-shadow)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.filter.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#length-type"},{"include":"#color-values"}]}]},{"begin":"\\\\b(hue-rotate)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.filter.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#angle-type"}]}]}]},"fit-content-function":{"begin":"\\\\b(fit-content)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.grid.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#var-function"},{"include":"#calc-function"},{"include":"#percentage-type"},{"include":"#length-type"}]}]},"format-function":{"patterns":[{"begin":"\\\\b(format)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.format.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#literal-string"}]}]}]},"frequency-type":{"captures":{"1":{"name":"keyword.other.unit.less"}},"match":"(?i:[-+]?(?:(?:\\\\d*\\\\.\\\\d+(?:[eE](?:[-+]?\\\\d+))*)|(?:[-+]?\\\\d+))(Hz|kHz))\\\\b","name":"constant.numeric.less"},"global-property-values":{"match":"\\\\b(?:initial|inherit|unset|revert-layer|revert)\\\\b","name":"support.constant.property-value.less"},"gradient-functions":{"patterns":[{"begin":"\\\\b((?:repeating-)?linear-gradient)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.gradient.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#var-function"},{"include":"#angle-type"},{"include":"#color-values"},{"include":"#percentage-type"},{"include":"#length-type"},{"include":"#comma-delimiter"},{"match":"\\\\bto\\\\b","name":"keyword.other.less"},{"match":"\\\\b(top|right|bottom|left)\\\\b","name":"support.constant.property-value.less"}]}]},{"begin":"\\\\b((?:repeating-)?radial-gradient)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.gradient.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#var-function"},{"include":"#color-values"},{"include":"#percentage-type"},{"include":"#length-type"},{"include":"#comma-delimiter"},{"match":"\\\\b(at|circle|ellipse)\\\\b","name":"keyword.other.less"},{"match":"\\\\b(top|right|bottom|left|center|(farthest|closest)-(corner|side))\\\\b","name":"support.constant.property-value.less"}]}]}]},"grid-repeat-function":{"begin":"\\\\b(repeat)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.grid.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#comma-delimiter"},{"include":"#var-function"},{"include":"#length-type"},{"include":"#percentage-type"},{"include":"#minmax-function"},{"include":"#integer-type"},{"match":"\\\\b(auto-(fill|fit))\\\\b","name":"support.keyword.repetitions.less"},{"match":"\\\\b(((max|min)-content)|auto)\\\\b","name":"support.constant.property-value.less"}]}]},"image-function":{"begin":"\\\\b(image)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.image.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#image-type"},{"include":"#literal-string"},{"include":"#color-values"},{"include":"#comma-delimiter"},{"include":"#unquoted-string"}]}]},"image-type":{"patterns":[{"include":"#cross-fade-function"},{"include":"#gradient-functions"},{"include":"#image-function"},{"include":"#url-function"}]},"important":{"captures":{"1":{"name":"punctuation.separator.less"}},"match":"(\\\\!)\\\\s*important","name":"keyword.other.important.less"},"integer-type":{"match":"(?:[-+]?\\\\d+)","name":"constant.numeric.less"},"keyframe-name":{"begin":"\\\\s*(-?(?:[_a-z]|[^\\\\x{00}-\\\\x{7F}]|(?:(:?\\\\\\\\[0-9a-f]{1,6}(\\\\r\\\\n|[\\\\s\\\\t\\\\r\\\\n\\\\f])?)|\\\\\\\\[^\\\\r\\\\n\\\\f0-9a-f]))(?:[_a-z0-9-]|[^\\\\x{00}-\\\\x{7F}]|(?:(:?\\\\\\\\[0-9a-f]{1,6}(\\\\r\\\\n|[\\\\t\\\\r\\\\n\\\\f])?)|\\\\\\\\[^\\\\r\\\\n\\\\f0-9a-f]))*)?","beginCaptures":{"1":{"name":"variable.other.constant.animation-name.less"}},"end":"\\\\s*(?:(,)|(?=[{;]))","endCaptures":{"1":{"name":"punctuation.definition.arbitrary-repetition.less"}}},"length-type":{"patterns":[{"captures":{"1":{"name":"keyword.other.unit.less"}},"match":"(?:[-+]?)(?:\\\\d+\\\\.\\\\d+|\\\\.?\\\\d+)(?:[eE][-+]?\\\\d+)?(em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|m|q|in|pt|pc|px|fr|dpi|dpcm|dppx|x)","name":"constant.numeric.less"},{"match":"\\\\b(?:[-+]?)0\\\\b","name":"constant.numeric.less"}]},"less-boolean-function":{"begin":"\\\\b(boolean)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.boolean.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-logical-comparisons"}]}]},"less-color-blend-functions":{"patterns":[{"begin":"\\\\b(multiply|screen|overlay|(soft|hard)light|difference|exclusion|negation|average)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color-blend.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#var-function"},{"include":"#comma-delimiter"},{"include":"#color-values"}]}]}]},"less-color-channel-functions":{"patterns":[{"begin":"\\\\b(hue|saturation|lightness|hsv(hue|saturation|value)|red|green|blue|alpha|luma|luminance)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color-definition.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#color-values"}]}]}]},"less-color-definition-functions":{"patterns":[{"begin":"\\\\b(argb)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color-definition.less"}},"comment":"argb()","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#var-function"},{"include":"#color-values"}]}]},{"begin":"\\\\b(hsva?)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color.less"}},"comment":"hsva(), hsv()","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#integer-type"},{"include":"#percentage-type"},{"include":"#number-type"},{"include":"#less-strings"},{"include":"#less-variables"},{"include":"#var-function"},{"include":"#calc-function"},{"include":"#comma-delimiter"}]}]}]},"less-color-functions":{"patterns":[{"include":"#less-color-blend-functions"},{"include":"#less-color-channel-functions"},{"include":"#less-color-definition-functions"},{"include":"#less-color-operation-functions"}]},"less-color-operation-functions":{"patterns":[{"begin":"\\\\b(fade|shade|tint)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color-operation.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#color-values"},{"include":"#comma-delimiter"},{"include":"#percentage-type"}]}]},{"begin":"\\\\b(spin)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color-operation.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#color-values"},{"include":"#comma-delimiter"},{"include":"#number-type"}]}]},{"begin":"\\\\b(((de)?saturate)|((light|dark)en)|(fade(in|out)))(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color-operation.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#color-values"},{"include":"#comma-delimiter"},{"include":"#percentage-type"},{"match":"\\\\brelative\\\\b","name":"constant.language.relative.less"}]}]},{"begin":"\\\\b(contrast)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color-operation.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#color-values"},{"include":"#comma-delimiter"},{"include":"#percentage-type"}]}]},{"begin":"\\\\b(greyscale)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color-operation.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#color-values"}]}]},{"begin":"\\\\b(mix)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color-operation.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#color-values"},{"include":"#comma-delimiter"},{"include":"#less-math"},{"include":"#percentage-type"}]}]}]},"less-extend":{"begin":"(:)(extend)(?=\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.entity.less"},"2":{"name":"entity.other.attribute-name.pseudo-class.extend.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"match":"\\\\ball\\\\b","name":"constant.language.all.less"},{"include":"#selectors"}]}]},"less-functions":{"patterns":[{"include":"#less-boolean-function"},{"include":"#less-color-functions"},{"include":"#less-if-function"},{"include":"#less-list-functions"},{"include":"#less-math-functions"},{"include":"#less-misc-functions"},{"include":"#less-string-functions"},{"include":"#less-type-functions"}]},"less-if-function":{"begin":"\\\\b(if)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.if.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-mixin-guards"},{"include":"#comma-delimiter"},{"include":"#property-values"}]}]},"less-list-functions":{"patterns":[{"begin":"\\\\b(length)(?=\\\\()\\\\b","beginCaptures":{"1":{"name":"support.function.length.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#property-values"},{"include":"#comma-delimiter"}]}]},{"begin":"\\\\b(extract)(?=\\\\()\\\\b","beginCaptures":{"1":{"name":"support.function.extract.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#property-values"},{"include":"#comma-delimiter"},{"include":"#integer-type"}]}]},{"begin":"\\\\b(range)(?=\\\\()\\\\b","beginCaptures":{"1":{"name":"support.function.range.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#property-values"},{"include":"#comma-delimiter"},{"include":"#integer-type"}]}]}]},"less-logical-comparisons":{"patterns":[{"captures":{"1":{"name":"keyword.operator.logical.less"}},"match":"\\\\s*(=|((<|>)=?))\\\\s*"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.group.less","patterns":[{"include":"#less-logical-comparisons"}]},{"match":"\\\\btrue|false\\\\b","name":"constant.language.less"},{"match":",","name":"punctuation.separator.less"},{"include":"#property-values"},{"include":"#selectors"},{"include":"#unquoted-string"}]},"less-math":{"patterns":[{"match":"[-\\\\+\\\\*\\\\/]","name":"keyword.operator.arithmetic.less"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.group.less","patterns":[{"include":"#less-math"}]},{"include":"#numeric-values"},{"include":"#less-variables"}]},"less-math-functions":{"patterns":[{"begin":"\\\\b(ceil|floor|percentage|round|sqrt|abs|a?(sin|cos|tan))(?=\\\\()","beginCaptures":{"1":{"name":"support.function.math.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#numeric-values"}]}]},{"captures":{"2":{"name":"support.function.math.less"},"3":{"name":"punctuation.definition.group.begin.less"},"4":{"name":"punctuation.definition.group.end.less"}},"match":"((pi)(\\\\()(\\\\)))","name":"meta.function-call.less"},{"begin":"\\\\b(pow|m(od|in|ax))(?=\\\\()","beginCaptures":{"1":{"name":"support.function.math.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#numeric-values"},{"include":"#comma-delimiter"}]}]}]},"less-misc-functions":{"patterns":[{"begin":"\\\\b(color)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.color.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#literal-string"}]}]},{"begin":"\\\\b(image-(size|width|height))(?=\\\\()","beginCaptures":{"1":{"name":"support.function.image.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#literal-string"},{"include":"#unquoted-string"}]}]},{"begin":"\\\\b(convert|unit)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.convert.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#numeric-values"},{"include":"#literal-string"},{"include":"#comma-delimiter"},{"match":"((c|m)?m|in|p(t|c|x)|m?s|g?rad|deg|turn|%|r?em|ex|ch)","name":"keyword.other.unit.less"}]}]},{"begin":"\\\\b(data-uri)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.data-uri.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#literal-string"},{"captures":{"1":{"name":"punctuation.separator.less"}},"match":"\\\\s*(?:(,))"}]}]},{"captures":{"2":{"name":"punctuation.definition.group.begin.less"},"3":{"name":"punctuation.definition.group.end.less"}},"match":"\\\\b(default(\\\\()(\\\\)))\\\\b","name":"support.function.default.less"},{"begin":"\\\\b(get-unit)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.get-unit.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#dimensions"}]}]},{"begin":"\\\\b(svg-gradient)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.svg-gradient.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#angle-type"},{"include":"#comma-delimiter"},{"include":"#color-values"},{"include":"#percentage-type"},{"include":"#length-type"},{"match":"\\\\bto\\\\b","name":"keyword.other.less"},{"match":"\\\\b(top|right|bottom|left|center)\\\\b","name":"support.constant.property-value.less"},{"match":"\\\\b(at|circle|ellipse)\\\\b","name":"keyword.other.less"}]}]}]},"less-mixin-guards":{"patterns":[{"begin":"\\\\s*(and|not|or)?\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.operator.logical.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","name":"meta.group.less","patterns":[{"include":"#less-variable-comparison"},{"captures":{"1":{"name":"meta.group.less"},"2":{"name":"punctuation.definition.group.begin.less"},"3":{"name":"punctuation.definition.group.end.less"}},"match":"default((\\\\()(\\\\)))","name":"support.function.default.less"},{"include":"#property-values"},{"include":"#less-logical-comparisons"},{"include":"$self"}]}]}]},"less-namespace-accessors":{"patterns":[{"begin":"(?=\\\\s*when\\\\b)","end":"\\\\s*(?:(,)|(?=[{;]))","endCaptures":{"1":{"name":"punctuation.definition.block.end.less"}},"name":"meta.conditional.guarded-namespace.less","patterns":[{"captures":{"1":{"name":"keyword.control.conditional.less"},"2":{"name":"punctuation.definition.keyword.less"}},"match":"\\\\s*(when)(?=.*?)"},{"include":"#less-mixin-guards"},{"include":"#comma-delimiter"},{"begin":"\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.section.property-list.begin.less"}},"end":"(?=\\\\})","name":"meta.block.less","patterns":[{"include":"#rule-list-body"}]},{"include":"#selectors"}]},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.group.begin.less"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.end.less"},"2":{"name":"punctuation.terminator.rule.less"}},"name":"meta.group.less","patterns":[{"include":"#less-variable-assignment"},{"include":"#comma-delimiter"},{"include":"#property-values"},{"include":"#rule-list-body"}]},{"captures":{"1":{"name":"punctuation.terminator.rule.less"}},"match":"(;)|(?=[})])"}]},"less-string-functions":{"patterns":[{"begin":"\\\\b(e(scape)?)(?=\\\\()\\\\b","beginCaptures":{"1":{"name":"support.function.escape.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#comma-delimiter"},{"include":"#literal-string"},{"include":"#unquoted-string"}]}]},{"begin":"\\\\s*(%)(?=\\\\()\\\\s*","beginCaptures":{"1":{"name":"support.function.format.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#comma-delimiter"},{"include":"#literal-string"},{"include":"#property-values"}]}]},{"begin":"\\\\b(replace)(?=\\\\()\\\\b","beginCaptures":{"1":{"name":"support.function.replace.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#comma-delimiter"},{"include":"#literal-string"},{"include":"#property-values"}]}]}]},"less-strings":{"patterns":[{"begin":"(~)('|\\")","beginCaptures":{"1":{"name":"constant.character.escape.less"},"2":{"name":"punctuation.definition.string.begin.less"}},"contentName":"markup.raw.inline.less","end":"('|\\")|(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.less"},"2":{"name":"invalid.illegal.newline.less"}},"name":"string.quoted.other.less","patterns":[{"include":"#string-content"}]}]},"less-type-functions":{"patterns":[{"begin":"\\\\b(is(number|string|color|keyword|url|pixel|em|percentage|ruleset))(?=\\\\()","beginCaptures":{"1":{"name":"support.function.type.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#property-values"}]}]},{"begin":"\\\\b(isunit)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.type.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#property-values"},{"include":"#comma-delimiter"},{"match":"\\\\b((?i:em|ex|ch|rem)|(?i:vw|vh|vmin|vmax)|(?i:cm|mm|q|in|pt|pc|px|fr)|(?i:deg|grad|rad|turn)|(?i:s|ms)|(?i:Hz|kHz)|(?i:dpi|dpcm|dppx))\\\\b","name":"keyword.other.unit.less"}]}]},{"begin":"\\\\b(isdefined)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.type.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"}]}]}]},"less-variable-assignment":{"patterns":[{"begin":"(@)(-?(?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*)","beginCaptures":{"0":{"name":"variable.other.readwrite.less"},"1":{"name":"punctuation.definition.variable.less"},"2":{"name":"support.other.variable.less"}},"end":"\\\\s*(;|(\\\\.{3})|(?=\\\\)))","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"},"2":{"name":"keyword.operator.spread.less"}},"name":"meta.property-value.less","patterns":[{"captures":{"1":{"name":"punctuation.separator.key-value.less"},"4":{"name":"meta.property-value.less"}},"match":"(((\\\\+_?)?):)([\\\\s\\\\t]*)"},{"include":"#property-values"},{"include":"#comma-delimiter"},{"include":"#property-list"},{"include":"#unquoted-string"}]}]},"less-variable-comparison":{"patterns":[{"begin":"(@{1,2})([-]?([_a-z]|[^\\\\x{00}-\\\\x{7F}]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*)","beginCaptures":{"0":{"name":"variable.other.readwrite.less"},"1":{"name":"punctuation.definition.variable.less"},"2":{"name":"support.other.variable.less"}},"end":"\\\\s*(?=\\\\))","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"patterns":[{"captures":{"1":{"name":"keyword.operator.logical.less"}},"match":"\\\\s*(=|((<|>)=?))\\\\s*"},{"match":"\\\\btrue\\\\b","name":"constant.language.less"},{"include":"#property-values"},{"include":"#selectors"},{"include":"#unquoted-string"},{"match":",","name":"punctuation.separator.less"}]}]},"less-variable-interpolation":{"captures":{"1":{"name":"punctuation.definition.variable.less"},"2":{"name":"punctuation.definition.expression.less"},"3":{"name":"support.other.variable.less"},"4":{"name":"punctuation.definition.expression.less"}},"match":"(@)(\\\\{)([-\\\\w]+)(\\\\})","name":"variable.other.readwrite.less"},"less-variables":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.less"},"2":{"name":"support.other.variable.less"}},"match":"\\\\s*(@@?)([-\\\\w]+)","name":"variable.other.readwrite.less"},{"include":"#less-variable-interpolation"}]},"literal-string":{"patterns":[{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.less"}},"end":"(')|(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.less"},"2":{"name":"invalid.illegal.newline.less"}},"name":"string.quoted.single.less","patterns":[{"include":"#string-content"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.less"}},"end":"(\\")|(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.less"},"2":{"name":"invalid.illegal.newline.less"}},"name":"string.quoted.double.less","patterns":[{"include":"#string-content"}]},{"include":"#less-strings"}]},"local-function":{"begin":"\\\\b(local)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.font-face.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#unquoted-string"}]}]},"media-query":{"begin":"\\\\s*(only|not)?\\\\s*(all|aural|braille|embossed|handheld|print|projection|screen|tty|tv)?","beginCaptures":{"1":{"name":"keyword.operator.logic.media.less"},"2":{"name":"support.constant.media.less"}},"end":"\\\\s*(?:(,)|(?=[{;]))","endCaptures":{"1":{"name":"punctuation.definition.arbitrary-repetition.less"}},"patterns":[{"include":"#less-variables"},{"include":"#custom-property-name"},{"begin":"\\\\s*(and)?\\\\s*(\\\\()\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.logic.media.less"},"2":{"name":"punctuation.definition.group.begin.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.group.less","patterns":[{"begin":"(--|(?:-?(?:(?:[a-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R]))))(?:(?:[-\\\\da-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R])))*)\\\\s*(?=[:)])","beginCaptures":{"0":{"name":"support.type.property-name.media.less"}},"end":"(((\\\\+_?)?):)|(?=\\\\))","endCaptures":{"1":{"name":"punctuation.separator.key-value.less"}}},{"match":"\\\\b(portrait|landscape|progressive|interlace)","name":"support.constant.property-value.less"},{"captures":{"1":{"name":"constant.numeric.less"},"2":{"name":"keyword.operator.arithmetic.less"},"3":{"name":"constant.numeric.less"}},"match":"\\\\s*(\\\\d+)(/)(\\\\d+)"},{"include":"#less-math"}]}]},"media-query-list":{"begin":"\\\\s*(?=[^{;])","end":"\\\\s*(?=[{;])","patterns":[{"include":"#media-query"}]},"minmax-function":{"begin":"\\\\b(minmax)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.grid.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#var-function"},{"include":"#length-type"},{"include":"#comma-delimiter"},{"match":"\\\\b(max-content|min-content)\\\\b","name":"support.constant.property-value.less"}]}]},"number-type":{"match":"(?:[-+]?)(?:\\\\d+\\\\.\\\\d+|\\\\.?\\\\d+)(?:[eE][-+]?\\\\d+)?","name":"constant.numeric.less"},"numeric-values":{"patterns":[{"include":"#dimensions"},{"include":"#percentage-type"},{"include":"#number-type"}]},"percentage-type":{"captures":{"1":{"name":"keyword.other.unit.less"}},"match":"(?:[-+]?)(?:\\\\d+\\\\.\\\\d+|\\\\.?\\\\d+)(?:[eE][-+]?\\\\d+)?(%)","name":"constant.numeric.less"},"property-list":{"patterns":[{"begin":"(?=(?=[^;]*)\\\\{)","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.end.less"}},"patterns":[{"include":"#rule-list"}]}]},"property-value-constants":{"patterns":[{"comment":"align-content, align-items, align-self, justify-content, justify-items, justify-self","match":"\\\\b(flex-start|flex-end|start|end|space-between|space-around|space-evenly|stretch|baseline|safe|unsafe|legacy|anchor-center|first|last|self-start|self-end)\\\\b","name":"support.constant.property-value.less"},{"comment":"alignment-baseline","match":"\\\\b(text-before-edge|before-edge|middle|central|text-after-edge|after-edge|ideographic|alphabetic|hanging|mathematical|top|center|bottom)\\\\b","name":"support.constant.property-value.less"},{"include":"#global-property-values"},{"include":"#cubic-bezier-function"},{"include":"#steps-function"},{"comment":"animation-composition","match":"\\\\b(?:replace|add|accumulate)\\\\b","name":"support.constant.property-value.less"},{"comment":"animation-direction","match":"\\\\b(?:normal|alternate-reverse|alternate|reverse)\\\\b","name":"support.constant.property-value.less"},{"comment":"animation-fill-mode","match":"\\\\b(?:forwards|backwards|both)\\\\b","name":"support.constant.property-value.less"},{"comment":"animation-iteration-count","match":"\\\\b(?:infinite)\\\\b","name":"support.constant.property-value.less"},{"comment":"animation-play-state","match":"\\\\b(?:running|paused)\\\\b","name":"support.constant.property-value.less"},{"comment":"animation-range, animation-range-start, animation-range-end","match":"\\\\b(?:entry-crossing|exit-crossing|entry|exit)\\\\b","name":"support.constant.property-value.less"},{"comment":"animation-timing-function","match":"\\\\b(linear|ease-in-out|ease-in|ease-out|ease|step-start|step-end)\\\\b","name":"support.constant.property-value.less"},{"match":"\\\\b(absolute|active|add|all-petite-caps|all-small-caps|all-scroll|all|alphabetic|alpha|alternate-reverse|alternate|always|annotation|antialiased|at|autohiding-scrollbar|auto|avoid-column|avoid-page|avoid-region|avoid|background-color|background-image|background-position|background-size|background-repeat|background|backwards|balance|baseline|below|bevel|bicubic|bidi-override|blink|block-line-height|block-start|block-end|block|blur|bolder|bold|border-top-left-radius|border-top-right-radius|border-bottom-left-radius|border-bottom-right-radius|border-end-end-radius|border-end-start-radius|border-start-end-radius|border-start-start-radius|border-block-start-color|border-block-start-style|border-block-start-width|border-block-start|border-block-end-color|border-block-end-style|border-block-end-width|border-block-end|border-block-color|border-block-style|border-block-width|border-block|border-inline-start-color|border-inline-start-style|border-inline-start-width|border-inline-start|border-inline-end-color|border-inline-end-style|border-inline-end-width|border-inline-end|border-inline-color|border-inline-style|border-inline-width|border-inline|border-top-color|border-top-style|border-top-width|border-top|border-right-color|border-right-style|border-right-width|border-right|border-bottom-color|border-bottom-style|border-bottom-width|border-bottom|border-left-color|border-left-style|border-left-width|border-left|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-image|border-color|border-style|border-width|border-radius|border-collapse|border-spacing|border|both|bottom|box-shadow|box|break-all|break-word|break-spaces|brightness|butt(on)?|capitalize|central|center|char(acter-variant)?|cjk-ideographic|clip|clone|close-quote|closest-corner|closest-side|col-resize|collapse|color-stop|color-burn|color-dodge|color|column-count|column-gap|column-reverse|column-rule-color|column-rule-width|column-rule|column-width|columns|column|common-ligatures|condensed|consider-shifts|contain|content-box|contents?|contextual|contrast|cover|crisp-edges|crispEdges|crop|crosshair|cross|darken|dashed|default|dense|device-width|diagonal-fractions|difference|disabled|discard|discretionary-ligatures|disregard-shifts|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|drop-shadow|[nsew]{1,4}-resize|ease-in-out|ease-in|ease-out|ease|element|ellipsis|embed|end|EndColorStr|evenodd|exclude-ruby|exclusion|expanded|extra-condensed|extra-expanded|farthest-corner|farthest-side|farthest|fill-box|fill-opacity|fill|filter|fit-content|fixed|flat|flex-basis|flex-end|flex-grow|flex-shrink|flex-start|flexbox|flex|flip|flood-color|font-size-adjust|font-size|font-stretch|font-weight|font|forwards|from-image|from|full-width|gap|geometricPrecision|glyphs|gradient|grayscale|grid-column-gap|grid-column|grid-row-gap|grid-row|grid-gap|grid-height|grid|groove|hand|hanging|hard-light|height|help|hidden|hide|historical-forms|historical-ligatures|horizontal-tb|horizontal|hue|ideographic|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|inactive|include-ruby|infinite|inherit|initial|inline-end|inline-size|inline-start|inline-table|inline-line-height|inline-flexbox|inline-flex|inline-box|inline-block|inline|inset|inside|inter-ideograph|inter-word|intersect|invert|isolate|isolation|italic|jis(04|78|83|90)|justify-all|justify|keep-all|larger|large|last|layout|left|letter-spacing|lighten|lighter|lighting-color|linear-gradient|linearRGB|linear|line-edge|line-height|line-through|line|lining-nums|list-item|local|loose|lowercase|lr-tb|ltr|luminosity|luminance|manual|manipulation|margin-bottom|margin-box|margin-left|margin-right|margin-top|margin|marker(-offset|s)?|match-parent|mathematical|max-(content|height|lines|size|width)|medium|middle|min-(content|height|width)|miter|mixed|move|multiply|newspaper|no-change|no-clip|no-close-quote|no-open-quote|no-common-ligatures|no-discretionary-ligatures|no-historical-ligatures|no-contextual|no-drop|no-repeat|none|nonzero|normal|not-allowed|nowrap|oblique|offset-after|offset-before|offset-end|offset-start|offset|oldstyle-nums|opacity|open-quote|optimize(Legibility|Precision|Quality|Speed)|order|ordinal|ornaments|outline-color|outline-offset|outline-width|outline|outset|outside|overline|over-edge|overlay|padding(-bottom|-box|-left|-right|-top|-box)?|page|paint(ed)?|paused|pan-(x|left|right|y|up|down)|perspective-origin|petite-caps|pixelated|pointer|pinch-zoom|pretty|pre(-line|-wrap)?|preserve-3d|preserve-breaks|preserve-spaces|preserve|progid:DXImageTransform\\\\.Microsoft\\\\.(Alpha|Blur|dropshadow|gradient|Shadow)|progress|proportional-nums|proportional-width|radial-gradient|recto|region|relative|repeating-linear-gradient|repeating-radial-gradient|repeat-x|repeat-y|repeat|replaced|reset-size|reverse|revert-layer|revert|ridge|right|round|row-gap|row-resize|row-reverse|row|rtl|ruby|running|saturate|saturation|screen|scrollbar|scroll-position|scroll|separate|sepia|scale-down|semi-condensed|semi-expanded|shape-image-threshold|shape-margin|shape-outside|show|sideways-lr|sideways-rl|sideways|simplified|size|slashed-zero|slice|small-caps|smaller|small|smooth|snap|solid|soft-light|space-around|space-between|space|span|sRGB|stable|stacked-fractions|stack|startColorStr|start|static|step-end|step-start|sticky|stop-color|stop-opacity|stretch|strict|stroke-box|stroke-dasharray|stroke-dashoffset|stroke-miterlimit|stroke-opacity|stroke-width|stroke|styleset|style|stylistic|subgrid|subpixel-antialiased|subtract|super|swash|table-caption|table-cell|table-column-group|table-footer-group|table-header-group|table-row-group|table-column|table-row|table|tabular-nums|tb-rl|text((-bottom|-(decoration|emphasis)-color|-indent|-(over|under)-edge|-shadow|-size(-adjust)?|-top)|field)?|thick|thin|titling-caps|titling-case|top|touch|to|traditional|transform-origin|transform-style|transform|ultra-condensed|ultra-expanded|under-edge|underline|unicase|unset|uppercase|upright|use-glyph-orientation|use-script|verso|vertical(-align|-ideographic|-lr|-rl|-text)?|view-box|viewport-fill-opacity|viewport-fill|visibility|visibleFill|visiblePainted|visibleStroke|visible|wait|wavy|weight|whitespace|width|word-spacing|wrap-reverse|wrap-reverse|wrap|xx?-(large|small)|z-index|zero|zoom-in|zoom-out|zoom|arabic-indic|armenian|bengali|cambodian|circle|cjk-decimal|cjk-earthly-branch|cjk-heavenly-stem|decimal-leading-zero|decimal|devanagari|disclosure-closed|disclosure-open|disc|ethiopic-numeric|georgian|gujarati|gurmukhi|hebrew|hiragana-iroha|hiragana|japanese-formal|japanese-informal|kannada|katakana-iroha|katakana|khmer|korean-hangul-formal|korean-hanja-formal|korean-hanja-informal|lao|lower-alpha|lower-armenian|lower-greek|lower-latin|lower-roman|malayalam|mongolian|myanmar|oriya|persian|simp-chinese-formal|simp-chinese-informal|square|tamil|telugu|thai|tibetan|trad-chinese-formal|trad-chinese-informal|upper-alpha|upper-armenian|upper-latin|upper-roman)\\\\b","name":"support.constant.property-value.less"},{"match":"\\\\b(sans-serif|serif|monospace|fantasy|cursive)\\\\b(?=\\\\s*[;,\\\\n}])","name":"support.constant.font-name.less"}]},"property-values":{"patterns":[{"include":"#comment-block"},{"include":"#builtin-functions"},{"include":"#color-functions"},{"include":"#less-functions"},{"include":"#less-variables"},{"include":"#unicode-range"},{"include":"#numeric-values"},{"include":"#color-values"},{"include":"#property-value-constants"},{"include":"#less-math"},{"include":"#literal-string"},{"include":"#comma-delimiter"},{"include":"#important"}]},"pseudo-selectors":{"patterns":[{"begin":"(:)(dir)(?=\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.entity.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"entity.other.attribute-name.pseudo-class.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"match":"ltr|rtl","name":"variable.parameter.dir.less"},{"include":"#less-variables"}]}]},{"begin":"(:)(lang)(?=\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.entity.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"entity.other.attribute-name.pseudo-class.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#literal-string"},{"include":"#unquoted-string"}]}]},{"begin":"(:)(not)(?=\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.entity.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"entity.other.attribute-name.pseudo-class.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#selectors"}]}]},{"begin":"(:)(nth(-last)?-(child|of-type))(?=\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.entity.less"},"2":{"name":"entity.other.attribute-name.pseudo-class.less"}},"contentName":"meta.function-call.less","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"entity.other.attribute-name.pseudo-class.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","name":"meta.group.less","patterns":[{"match":"\\\\b(even|odd)\\\\b","name":"keyword.other.pseudo-class.less"},{"captures":{"1":{"name":"keyword.operator.arithmetic.less"},"2":{"name":"keyword.other.unit.less"},"4":{"name":"keyword.operator.arithmetic.less"}},"match":"(?:([-+])?(?:\\\\d+)?(n)(\\\\s*([-+])\\\\s*\\\\d+)?|[-+]?\\\\s*\\\\d+)","name":"constant.numeric.less"},{"include":"#less-math"},{"include":"#less-strings"},{"include":"#less-variable-interpolation"}]}]},{"begin":"(:)(host-context|host|has|is|not|where)(?=\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.entity.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"entity.other.attribute-name.pseudo-class.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#selectors"}]}]},{"captures":{"1":{"name":"punctuation.definition.entity.less"},"2":{"name":"entity.other.attribute-name.pseudo-class.less"}},"match":"(:)(active|any-link|autofill|blank|buffering|checked|current|default|defined|disabled|empty|enabled|first-child|first-of-type|first|focus-visible|focus-within|focus|fullscreen|future|host|hover|in-range|indeterminate|invalid|last-child|last-of-type|left|local-link|link|modal|muted|only-child|only-of-type|optional|out-of-range|past|paused|picture-in-picture|placeholder-shown|playing|popover-open|read-only|read-write|required|right|root|scope|seeking|stalled|target-within|target|user-invalid|user-valid|valid|visited|volume-locked)\\\\b","name":"meta.function-call.less"},{"begin":"(::?)(highlight|part|state)(?=\\\\s*(\\\\())","beginCaptures":{"1":{"name":"punctuation.definition.entity.less"}},"comment":"::highlight()","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"entity.other.attribute-name.pseudo-element.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"match":"--|(?:-?(?:(?:[a-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R]))))(?:(?:[-\\\\da-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R])))*","name":"variable.parameter.less"},{"include":"#less-variables"}]}]},{"begin":"(::?)slotted(?=\\\\s*(\\\\())","beginCaptures":{"1":{"name":"punctuation.definition.entity.less"}},"comment":"::slotted()","contentName":"meta.function-call.less","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"entity.other.attribute-name.pseudo-element.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","name":"meta.group.less","patterns":[{"include":"#selectors"}]}]},{"captures":{"1":{"name":"punctuation.definition.entity.less"}},"comment":"defined pseudo-elements","match":"(::?)(after|backdrop|before|cue|file-selector-button|first-letter|first-line|grammar-error|marker|placeholder|selection|spelling-error|target-text|view-transition-group|view-transition-image-pair|view-transition-new|view-transition-old|view-transition)\\\\b","name":"entity.other.attribute-name.pseudo-element.less"},{"captures":{"1":{"name":"punctuation.definition.entity.less"},"2":{"name":"meta.namespace.vendor-prefix.less"}},"comment":"other possible pseudo-elements","match":"(::?)(-\\\\w+-)(--|(?:-?(?:(?:[a-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R]))))(?:(?:[-\\\\da-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R])))*)\\\\b","name":"entity.other.attribute-name.pseudo-element.less"}]},"qualified-name":{"captures":{"1":{"name":"entity.name.constant.less"},"2":{"name":"entity.name.namespace.wildcard.less"},"3":{"name":"punctuation.separator.namespace.less"}},"match":"(?:(-?(?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*)|(\\\\*))?([|])(?!=)"},"regexp-function":{"begin":"\\\\b(regexp)(?=\\\\()","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"support.function.regexp.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","name":"meta.function-call.less","patterns":[{"include":"#literal-string"}]}]},"relative-color":{"patterns":[{"match":"from","name":"keyword.other.less"},{"match":"\\\\b[hslawbch]\\\\b","name":"keyword.other.less"}]},"rule-list":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.begin.less"}},"end":"(?=\\\\s*\\\\})","name":"meta.property-list.less","patterns":[{"captures":{"1":{"name":"punctuation.terminator.rule.less"}},"match":"\\\\s*(;)|(?=[})])"},{"include":"#rule-list-body"},{"include":"#less-extend"}]}]},"rule-list-body":{"patterns":[{"include":"#comment-block"},{"include":"#comment-line"},{"include":"#at-rules"},{"include":"#less-variable-assignment"},{"begin":"(?=[-\\\\w]*?@\\\\{.*\\\\}[-\\\\w]*?\\\\s*:[^;{(]*(?=[;})]))","end":"(?=\\\\s*(;)|(?=[})]))","patterns":[{"begin":"(?=[^\\\\s:])","end":"(?=(((\\\\+_?)?):)[\\\\s\\\\t]*)","name":"support.type.property-name.less","patterns":[{"include":"#less-variable-interpolation"}]},{"begin":"(((\\\\+_?)?):)(?=[\\\\s\\\\t]*)","beginCaptures":{"1":{"name":"punctuation.separator.key-value.less"}},"contentName":"support.type.property-name.less","end":"(?=\\\\s*(;)|(?=[})]))","patterns":[{"include":"#property-values"}]}]},{"begin":"(?=[-a-z])","end":"$|(?![-a-z])","patterns":[{"include":"#custom-property-name"},{"begin":"(-[\\\\w-]+?-)((?:(?:[a-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R])))(?:(?:[-\\\\da-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R])))*)\\\\b","beginCaptures":{"0":{"name":"support.type.property-name.less"},"1":{"name":"meta.namespace.vendor-prefix.less"}},"comment":"vendor-prefixed properties","end":"\\\\s*(;)|(?=[})])","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"patterns":[{"begin":"(((\\\\+_?)?):)(?=[\\\\s\\\\t]*)","beginCaptures":{"1":{"name":"punctuation.separator.key-value.less"}},"contentName":"meta.property-value.less","end":"(?=\\\\s*(;)|(?=[})]))","patterns":[{"include":"#property-values"},{"match":"[\\\\w-]+","name":"support.constant.property-value.less"}]}]},{"include":"#filter-function"},{"begin":"\\\\b(border((-(bottom|top)-(left|right))|((-(start|end)){2}))?-radius|(border-image(?!-)))\\\\b","beginCaptures":{"0":{"name":"support.type.property-name.less"}},"comment":"border-radius and border-image properties utilize a slash as a separator","end":"\\\\s*(;)|(?=[})])","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"patterns":[{"begin":"(((\\\\+_?)?):)(?=[\\\\s\\\\t]*)","beginCaptures":{"1":{"name":"punctuation.separator.key-value.less"}},"contentName":"meta.property-value.less","end":"(?=\\\\s*(;)|(?=[})]))","patterns":[{"include":"#value-separator"},{"include":"#property-values"}]}]},{"captures":{"1":{"name":"keyword.other.custom-property.prefix.less"},"2":{"name":"support.type.custom-property.name.less"}},"match":"\\\\b(var-)(-?(?:[[-\\\\w][^\\\\x{00}-\\\\x{9f}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{9f}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*)(?=\\\\s)","name":"invalid.deprecated.custom-property.less"},{"begin":"\\\\bfont(-family)?(?!-)\\\\b","beginCaptures":{"0":{"name":"support.type.property-name.less"}},"end":"\\\\s*(;)|(?=[})])","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"name":"meta.property-name.less","patterns":[{"captures":{"1":{"name":"punctuation.separator.key-value.less"},"4":{"name":"meta.property-value.less"}},"match":"(((\\\\+_?)?):)([\\\\s\\\\t]*)"},{"include":"#property-values"},{"match":"-?(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{9f}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[-\\\\w][^\\\\x{00}-\\\\x{9f}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*(\\\\s+-?(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{9f}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[-\\\\w][^\\\\x{00}-\\\\x{9f}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*)*","name":"string.unquoted.less"},{"match":",","name":"punctuation.separator.less"}]},{"begin":"\\\\banimation-timeline\\\\b","beginCaptures":{"0":{"name":"support.type.property-name.less"}},"end":"\\\\s*(;)|(?=[})])","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"patterns":[{"begin":"(((\\\\+_?)?):)(?=[\\\\s\\\\t]*)","beginCaptures":{"1":{"name":"punctuation.separator.key-value.less"}},"contentName":"meta.property-value.less","end":"(?=\\\\s*(;)|(?=[})]))","patterns":[{"include":"#comment-block"},{"include":"#custom-property-name"},{"include":"#scroll-function"},{"include":"#view-function"},{"include":"#property-values"},{"include":"#less-variables"},{"include":"#arbitrary-repetition"},{"include":"#important"}]}]},{"begin":"\\\\banimation(?:-name)?(?=(?:\\\\+_?)?:)\\\\b","beginCaptures":{"0":{"name":"support.type.property-name.less"}},"end":"\\\\s*(;)|(?=[})])","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"patterns":[{"begin":"(((\\\\+_?)?):)(?=[\\\\s\\\\t]*)","beginCaptures":{"1":{"name":"punctuation.separator.key-value.less"}},"contentName":"meta.property-value.less","end":"(?=\\\\s*(;)|(?=[})]))","patterns":[{"include":"#comment-block"},{"include":"#builtin-functions"},{"include":"#less-functions"},{"include":"#less-variables"},{"include":"#numeric-values"},{"include":"#property-value-constants"},{"match":"-?(?:[_a-zA-Z]|[^\\\\x{00}-\\\\x{7F}]|(?:(:?\\\\\\\\[0-9a-f]{1,6}(\\\\r\\\\n|[\\\\s\\\\t\\\\r\\\\n\\\\f])?)|\\\\\\\\[^\\\\r\\\\n\\\\f0-9a-f]))(?:[-_a-zA-Z0-9]|[^\\\\x{00}-\\\\x{7F}]|(?:(:?\\\\\\\\[0-9a-f]{1,6}(\\\\r\\\\n|[\\\\t\\\\r\\\\n\\\\f])?)|\\\\\\\\[^\\\\r\\\\n\\\\f0-9a-f]))*","name":"variable.other.constant.animation-name.less string.unquoted.less"},{"include":"#less-math"},{"include":"#arbitrary-repetition"},{"include":"#important"}]}]},{"begin":"\\\\b(transition(-(property|duration|delay|timing-function))?)\\\\b","beginCaptures":{"1":{"name":"support.type.property-name.less"}},"end":"\\\\s*(;)|(?=[})])","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"patterns":[{"begin":"(((\\\\+_?)?):)(?=[\\\\s\\\\t]*)","beginCaptures":{"1":{"name":"punctuation.separator.key-value.less"}},"contentName":"meta.property-value.less","end":"(?=\\\\s*(;)|(?=[})]))","patterns":[{"include":"#time-type"},{"include":"#property-values"},{"include":"#cubic-bezier-function"},{"include":"#steps-function"},{"include":"#arbitrary-repetition"}]}]},{"begin":"\\\\b(?:backdrop-)?filter\\\\b","beginCaptures":{"0":{"name":"support.type.property-name.less"}},"end":"\\\\s*(;)|(?=[})])","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"name":"meta.property-name.less","patterns":[{"captures":{"1":{"name":"punctuation.separator.key-value.less"},"4":{"name":"meta.property-value.less"}},"match":"(((\\\\+_?)?):)([\\\\s\\\\t]*)"},{"match":"\\\\b(inherit|initial|unset|none)\\\\b","name":"meta.property-value.less"},{"include":"#filter-functions"}]},{"begin":"\\\\bwill-change\\\\b","beginCaptures":{"0":{"name":"support.type.property-name.less"}},"end":"\\\\s*(;)|(?=[})])","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"name":"meta.property-name.less","patterns":[{"captures":{"1":{"name":"punctuation.separator.key-value.less"},"4":{"name":"meta.property-value.less"}},"match":"(((\\\\+_?)?):)([\\\\s\\\\t]*)"},{"match":"unset|initial|inherit|will-change|auto|scroll-position|contents","name":"invalid.illegal.property-value.less"},{"match":"-?(?:[[-\\\\w][^\\\\x{00}-\\\\x{9f}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{9f}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*","name":"support.constant.property-value.less"},{"include":"#arbitrary-repetition"}]},{"begin":"\\\\bcounter-(increment|(re)?set)\\\\b","beginCaptures":{"0":{"name":"support.type.property-name.less"}},"end":"\\\\s*(;)|(?=[})])","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"name":"meta.property-name.less","patterns":[{"captures":{"1":{"name":"punctuation.separator.key-value.less"},"4":{"name":"meta.property-value.less"}},"match":"(((\\\\+_?)?):)([\\\\s\\\\t]*)"},{"match":"-?(?:[[-\\\\w][^\\\\x{00}-\\\\x{9f}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{9f}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*","name":"entity.name.constant.counter-name.less"},{"include":"#integer-type"},{"match":"unset|initial|inherit|auto","name":"invalid.illegal.property-value.less"}]},{"begin":"\\\\bcontainer(?:-name)?(?=\\\\s*?:)","end":"\\\\s*(;)|(?=[})])","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"name":"support.type.property-name.less","patterns":[{"begin":"(((\\\\+_?)?):)(?=[\\\\s\\\\t]*)","beginCaptures":{"1":{"name":"punctuation.separator.key-value.less"}},"contentName":"meta.property-value.less","end":"(?=\\\\s*(;)|(?=[})]))","patterns":[{"match":"\\\\bdefault\\\\b","name":"invalid.illegal.property-value.less"},{"include":"#global-property-values"},{"include":"#custom-property-name"},{"contentName":"variable.other.constant.container-name.less","match":"--|(?:-?(?:(?:[a-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R]))))(?:(?:[-\\\\da-zA-Z_]|[\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}\\\\x{200D}\\\\x{203F}\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}])|(?:\\\\\\\\(?:\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\s\\\\R])))*","name":"support.constant.property-value.less"},{"include":"#property-values"}]}]},{"match":"\\\\b(accent-height|align-content|align-items|align-self|alignment-baseline|all|animation-timing-function|animation-range-start|animation-range-end|animation-range|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation-composition|animation|appearance|ascent|aspect-ratio|azimuth|backface-visibility|background-size|background-repeat-y|background-repeat-x|background-repeat|background-position-y|background-position-x|background-position|background-origin|background-image|background-color|background-clip|background-blend-mode|background-attachment|background|baseline-shift|begin|bias|blend-mode|border-top-left-radius|border-top-right-radius|border-bottom-left-radius|border-bottom-right-radius|border-end-end-radius|border-end-start-radius|border-start-end-radius|border-start-start-radius|border-block-start-color|border-block-start-style|border-block-start-width|border-block-start|border-block-end-color|border-block-end-style|border-block-end-width|border-block-end|border-block-color|border-block-style|border-block-width|border-block|border-inline-start-color|border-inline-start-style|border-inline-start-width|border-inline-start|border-inline-end-color|border-inline-end-style|border-inline-end-width|border-inline-end|border-inline-color|border-inline-style|border-inline-width|border-inline|border-top-color|border-top-style|border-top-width|border-top|border-right-color|border-right-style|border-right-width|border-right|border-bottom-color|border-bottom-style|border-bottom-width|border-bottom|border-left-color|border-left-style|border-left-width|border-left|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-image|border-color|border-style|border-width|border-radius|border-collapse|border-spacing|border|bottom|box-(align|decoration-break|direction|flex|ordinal-group|orient|pack|shadow|sizing)|break-(after|before|inside)|caption-side|clear|clip-path|clip-rule|clip|color(-(interpolation(-filters)?|profile|rendering))?|columns|column-(break-before|count|fill|gap|(rule(-(color|style|width))?)|span|width)|container-name|container-type|container|contain-intrinsic-block-size|contain-intrinsic-inline-size|contain-intrinsic-height|contain-intrinsic-size|contain-intrinsic-width|contain|content|counter-(increment|reset)|cursor|[cdf][xy]|direction|display|divisor|dominant-baseline|dur|elevation|empty-cells|enable-background|end|fallback|fill(-(opacity|rule))?|filter|flex(-(align|basis|direction|flow|grow|item-align|line-pack|negative|order|pack|positive|preferred-size|shrink|wrap))?|float|flood-(color|opacity)|font-display|font-family|font-feature-settings|font-kerning|font-language-override|font-size(-adjust)?|font-smoothing|font-stretch|font-style|font-synthesis|font-variant(-(alternates|caps|east-asian|ligatures|numeric|position))?|font-weight|font|fr|((column|row)-)?gap|glyph-orientation-(horizontal|vertical)|grid-(area|gap)|grid-auto-(columns|flow|rows)|grid-(column|row)(-(end|gap|start))?|grid-template(-(areas|columns|rows))?|grid|height|hyphens|image-(orientation|rendering|resolution)|inset(-(block|inline))?(-(start|end))?|isolation|justify-content|justify-items|justify-self|kerning|left|letter-spacing|lighting-color|line-(box-contain|break|clamp|height)|list-style(-(image|position|type))?|(margin|padding)(-(bottom|left|right|top)|(-(block|inline)?(-(end|start))?))?|marker(-(end|mid|start))?|mask(-(clip||composite|image|origin|position|repeat|size|type))?|(max|min)-(height|width)|mix-blend-mode|nbsp-mode|negative|object-(fit|position)|opacity|operator|order|orphans|outline(-(color|offset|style|width))?|overflow(-((inline|block)|scrolling|wrap|x|y))?|overscroll-behavior(-block|-(inline|x|y))?|pad(ding(-(bottom|left|right|top))?)?|page(-break-(after|before|inside))?|paint-order|pause(-(after|before))?|perspective(-origin(-(x|y))?)?|pitch(-range)?|place-content|place-self|pointer-events|position|prefix|quotes|range|resize|right|rotate|scale|scroll-behavior|shape-(image-threshold|margin|outside|rendering)|size|speak(-as)?|src|stop-(color|opacity)|stroke(-(dash(array|offset)|line(cap|join)|miterlimit|opacity|width))?|suffix|symbols|system|tab-size|table-layout|tap-highlight-color|text-align(-last)?|text-decoration(-(color|line|style))?|text-emphasis(-(color|position|style))?|text-(anchor|fill-color|height|indent|justify|orientation|overflow|rendering|size-adjust|shadow|transform|underline-position|wrap)|top|touch-action|transform(-origin(-(x|y))?)|transform(-style)?|transition(-(delay|duration|property|timing-function))?|translate|unicode-(bidi|range)|user-(drag|select)|vertical-align|visibility|white-space(-collapse)?|widows|width|will-change|word-(break|spacing|wrap)|writing-mode|z-index|zoom)\\\\b","name":"support.type.property-name.less"},{"match":"\\\\b(((contain-intrinsic|max|min)-)?(block|inline)?-size)\\\\b","name":"support.type.property-name.less"},{"include":"$self"}]},{"begin":"\\\\b((?:(?:\\\\+_?)?):)([\\\\s\\\\t]*)","beginCaptures":{"1":{"name":"punctuation.separator.key-value.less"},"2":{"name":"meta.property-value.less"}},"captures":{"1":{"name":"punctuation.separator.key-value.less"},"4":{"name":"meta.property-value.less"}},"contentName":"meta.property-value.less","end":"\\\\s*(;)|(?=[})])","endCaptures":{"1":{"name":"punctuation.terminator.rule.less"}},"patterns":[{"include":"#property-values"}]},{"include":"$self"}]},"scroll-function":{"begin":"\\\\b(scroll)(\\\\()","beginCaptures":{"1":{"name":"support.function.scroll.less"},"2":{"name":"punctuation.definition.group.begin.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"match":"root|nearest|self","name":"support.constant.scroller.less"},{"match":"block|inline|x|y","name":"support.constant.axis.less"},{"include":"#less-variables"},{"include":"#var-function"}]},"selector":{"patterns":[{"begin":"(?=[>~+/\\\\.*#a-zA-Z\\\\[&]|(\\\\:{1,2}[^\\\\s])|@\\\\{)","contentName":"meta.selector.less","end":"(?=@(?!\\\\{)|[{;])","patterns":[{"include":"#comment-line"},{"include":"#selectors"},{"include":"#less-namespace-accessors"},{"include":"#less-variable-interpolation"},{"include":"#important"}]}]},"selectors":{"patterns":[{"match":"\\\\b([a-z](?:(?:[-_a-z0-9\\\\x{00B7}]|\\\\\\\\\\\\.|[[\\\\x{00C0}-\\\\x{00D6}][\\\\x{00D8}-\\\\x{00F6}][\\\\x{00F8}-\\\\x{02FF}][\\\\x{0300}-\\\\x{037D}][\\\\x{037F}-\\\\x{1FFF}][\\\\x{200C}-\\\\x{200D}][\\\\x{203F}-\\\\x{2040}][\\\\x{2070}-\\\\x{218F}][\\\\x{2C00}-\\\\x{2FEF}][\\\\x{3001}-\\\\x{D7FF}][\\\\x{F900}-\\\\x{FDCF}][\\\\x{FDF0}-\\\\x{FFFD}][\\\\x{10000}-\\\\x{EFFFF}]]))*-(?:(?:[-_a-z0-9\\\\x{00B7}]|\\\\\\\\\\\\.|[[\\\\x{00C0}-\\\\x{00D6}][\\\\x{00D8}-\\\\x{00F6}][\\\\x{00F8}-\\\\x{02FF}][\\\\x{0300}-\\\\x{037D}][\\\\x{037F}-\\\\x{1FFF}][\\\\x{200C}-\\\\x{200D}][\\\\x{203F}-\\\\x{2040}][\\\\x{2070}-\\\\x{218F}][\\\\x{2C00}-\\\\x{2FEF}][\\\\x{3001}-\\\\x{D7FF}][\\\\x{F900}-\\\\x{FDCF}][\\\\x{FDF0}-\\\\x{FFFD}][\\\\x{10000}-\\\\x{EFFFF}]]))*)\\\\b","name":"entity.name.tag.custom.less"},{"match":"\\\\b(a|abbr|acronym|address|applet|area|article|aside|audio|b|base|basefont|bdi|bdo|big|blockquote|body|br|button|canvas|caption|circle|cite|clipPath|code|col|colgroup|content|data|dataList|dd|defs|del|details|dfn|dialog|dir|div|dl|dt|element|ellipse|em|embed|eventsource|fieldset|figcaption|figure|filter|footer|foreignObject|form|frame|frameset|g|glyph|glyphRef|h1|h2|h3|h4|h5|h6|head|header|hgroup|hr|html|i|iframe|image|img|input|ins|isindex|kbd|keygen|label|legend|li|line|linearGradient|link|main|map|mark|marker|mask|menu|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|path|pattern|picture|polygon|polyline|pre|progress|q|radialGradient|rect|rp|ruby|rt|rtc|s|samp|script|section|select|shadow|small|source|span|stop|strike|strong|style|sub|summary|sup|svg|switch|symbol|table|tbody|td|template|textarea|textPath|tfoot|th|thead|time|title|tr|track|tref|tspan|tt|u|ul|use|var|video|wbr|xmp)\\\\b","name":"entity.name.tag.less"},{"begin":"(\\\\.)","beginCaptures":{"1":{"name":"punctuation.definition.entity.less"}},"end":"(?![-\\\\w]|[^\\\\x{00}-\\\\x{9f}]|\\\\\\\\([A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9])|(\\\\@(?=\\\\{)))","name":"entity.other.attribute-name.class.less","patterns":[{"include":"#less-variable-interpolation"}]},{"begin":"(#)","beginCaptures":{"1":{"name":"punctuation.definition.entity.less"}},"end":"(?![-\\\\w]|[^\\\\x{00}-\\\\x{9f}]|\\\\\\\\([A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9])|(\\\\@(?=\\\\{)))","name":"entity.other.attribute-name.id.less","patterns":[{"include":"#less-variable-interpolation"}]},{"begin":"(&)","beginCaptures":{"1":{"name":"punctuation.definition.entity.less"}},"contentName":"entity.other.attribute-name.parent.less","end":"(?![-\\\\w]|[^\\\\x{00}-\\\\x{9f}]|\\\\\\\\([A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9])|(\\\\@(?=\\\\{)))","name":"entity.other.attribute-name.parent.less","patterns":[{"include":"#less-variable-interpolation"},{"include":"#selectors"}]},{"include":"#pseudo-selectors"},{"include":"#less-extend"},{"match":"(?!\\\\+_?:)(?:>{1,3}|[~+])(?![>~+;}])","name":"punctuation.separator.combinator.less"},{"match":"((?:>{1,3}|[~+])){2,}","name":"invalid.illegal.combinator.less"},{"match":"\\\\/deep\\\\/","name":"invalid.illegal.combinator.less"},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.braces.begin.less"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.braces.end.less"}},"name":"meta.attribute-selector.less","patterns":[{"include":"#less-variable-interpolation"},{"include":"#qualified-name"},{"match":"(-?(?:[[_a-zA-Z][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))(?:[[-\\\\w][^\\\\x{00}-\\\\x{7F}]]|(?:\\\\\\\\\\\\h{1,6}[\\\\s\\\\t\\\\n\\\\f]?|\\\\\\\\[^\\\\n\\\\f\\\\h]))*)","name":"entity.other.attribute-name.less"},{"begin":"\\\\s*([~*|^$]?=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.attribute-selector.less"}},"end":"(?=(\\\\s|\\\\]))","patterns":[{"include":"#less-variable-interpolation"},{"match":"[^\\\\s\\\\]\\\\['\\"]","name":"string.unquoted.less"},{"include":"#literal-string"},{"captures":{"1":{"name":"keyword.other.less"}},"match":"(?:\\\\s+([iI]))?"},{"match":"\\\\]","name":"punctuation.definition.entity.less"}]}]},{"include":"#arbitrary-repetition"},{"match":"\\\\*","name":"entity.name.tag.wildcard.less"}]},"shape-functions":{"patterns":[{"begin":"\\\\b(rect)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.shape.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"match":"\\\\bauto\\\\b","name":"support.constant.property-value.less"},{"include":"#length-type"},{"include":"#comma-delimiter"}]}]},{"begin":"\\\\b(inset)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.shape.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"match":"\\\\bround\\\\b","name":"keyword.other.less"},{"include":"#length-type"},{"include":"#percentage-type"}]}]},{"begin":"\\\\b(circle|ellipse)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.shape.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"match":"\\\\bat\\\\b","name":"keyword.other.less"},{"match":"\\\\b(top|right|bottom|left|center|closest-side|farthest-side)\\\\b","name":"support.constant.property-value.less"},{"include":"#length-type"},{"include":"#percentage-type"}]}]},{"begin":"\\\\b(polygon)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.shape.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"match":"\\\\b(nonzero|evenodd)\\\\b","name":"support.constant.property-value.less"},{"include":"#length-type"},{"include":"#percentage-type"}]}]}]},"steps-function":{"begin":"\\\\b(steps)(\\\\()","beginCaptures":{"1":{"name":"support.function.timing.less"},"2":{"name":"punctuation.definition.group.begin.less"}},"contentName":"meta.group.less","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"match":"jump-start|jump-end|jump-none|jump-both|start|end","name":"support.constant.step-position.less"},{"include":"#comma-delimiter"},{"include":"#integer-type"},{"include":"#less-variables"},{"include":"#var-function"},{"include":"#calc-function"}]},"string-content":{"patterns":[{"include":"#less-variable-interpolation"},{"match":"\\\\\\\\\\\\s*\\\\n","name":"constant.character.escape.newline.less"},{"match":"\\\\\\\\(\\\\h{1,6}|.)","name":"constant.character.escape.less"}]},"style-function":{"begin":"\\\\b(style)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.style.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#rule-list-body"}]}]},"symbols-function":{"begin":"\\\\b(symbols)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.counter.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"match":"\\\\b(cyclic|numeric|alphabetic|symbolic|fixed)\\\\b","name":"support.constant.symbol-type.less"},{"include":"#comma-delimiter"},{"include":"#literal-string"},{"include":"#image-type"}]}]},"time-type":{"captures":{"1":{"name":"keyword.other.unit.less"}},"match":"(?i:[-+]?(?:(?:\\\\d*\\\\.\\\\d+(?:[eE](?:[-+]?\\\\d+))*)|(?:[-+]?\\\\d+))(s|ms))\\\\b","name":"constant.numeric.less"},"transform-functions":{"patterns":[{"begin":"\\\\b(matrix3d|scale3d|matrix|scale)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.transform.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#comma-delimiter"},{"include":"#number-type"},{"include":"#less-variables"},{"include":"#var-function"}]}]},{"begin":"\\\\b(translate(3d)?)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.transform.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#comma-delimiter"},{"include":"#percentage-type"},{"include":"#length-type"},{"include":"#number-type"},{"include":"#less-variables"},{"include":"#var-function"}]}]},{"begin":"\\\\b(translate[XY])(?=\\\\()","beginCaptures":{"0":{"name":"support.function.transform.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#percentage-type"},{"include":"#length-type"},{"include":"#number-type"},{"include":"#less-variables"},{"include":"#var-function"}]}]},{"begin":"\\\\b(rotate[XYZ]?|skew[XY])(?=\\\\()","beginCaptures":{"0":{"name":"support.function.transform.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#angle-type"},{"include":"#less-variables"},{"include":"#calc-function"},{"include":"#var-function"}]}]},{"begin":"\\\\b(skew)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.transform.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#comma-delimiter"},{"include":"#angle-type"},{"include":"#less-variables"},{"include":"#calc-function"},{"include":"#var-function"}]}]},{"begin":"\\\\b(translateZ|perspective)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.transform.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#length-type"},{"include":"#less-variables"},{"include":"#calc-function"},{"include":"#var-function"}]}]},{"begin":"\\\\b(rotate3d)(?=\\\\()","beginCaptures":{"0":{"name":"support.function.transform.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#comma-delimiter"},{"include":"#angle-type"},{"include":"#number-type"},{"include":"#less-variables"},{"include":"#calc-function"},{"include":"#var-function"}]}]},{"begin":"\\\\b(scale[XYZ])(?=\\\\()","beginCaptures":{"0":{"name":"support.function.transform.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#comma-delimiter"},{"include":"#number-type"},{"include":"#less-variables"},{"include":"#calc-function"},{"include":"#var-function"}]}]}]},"unicode-range":{"captures":{"1":{"name":"support.constant.unicode-range.prefix.less"},"2":{"name":"constant.codepoint-range.less"},"3":{"name":"punctuation.section.range.less"}},"match":"(?i)(u\\\\+)([0-9a-f?]{1,6}(?:(-)[0-9a-f]{1,6})?)","name":"support.unicode-range.less"},"unquoted-string":{"match":"[^\\\\s'\\"]","name":"string.unquoted.less"},"url-function":{"begin":"\\\\b(url)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.url.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#less-variables"},{"include":"#literal-string"},{"include":"#unquoted-string"},{"include":"#var-function"}]}]},"value-separator":{"captures":{"1":{"name":"punctuation.separator.less"}},"match":"\\\\s*(/)\\\\s*"},"var-function":{"begin":"\\\\b(var)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.var.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"include":"#comma-delimiter"},{"include":"#custom-property-name"},{"include":"#less-variables"},{"include":"#property-values"}]}]},"view-function":{"begin":"\\\\b(view)(?=\\\\()","beginCaptures":{"1":{"name":"support.function.view.less"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.end.less"}},"name":"meta.function-call.less","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.begin.less"}},"end":"(?=\\\\))","patterns":[{"match":"block|inline|x|y|auto","name":"support.constant.property-value.less"},{"include":"#percentage-type"},{"include":"#length-type"},{"include":"#less-variables"},{"include":"#var-function"},{"include":"#calc-function"},{"include":"#arbitrary-repetition"}]}]}},"scopeName":"source.css.less"}`)),XB=[lre]});var X$={};x(X$,{default:()=>dre});var Are,dre,eR=_(()=>{Ye();rt();zr();Qe();Are=Object.freeze(JSON.parse(`{"displayName":"Liquid","fileTypes":["liquid"],"foldingStartMarker":"{%-?\\\\s*(capture|case|comment|for|form|if|javascript|paginate|schema|style)[^(%})]+%}","foldingStopMarker":"{%\\\\s*(endcapture|endcase|endcomment|endfor|endform|endif|endjavascript|endpaginate|endschema|endstyle)[^(%})]+%}","injections":{"L:meta.embedded.block.js, L:meta.embedded.block.css, L:meta.embedded.block.html, L:string.quoted":{"patterns":[{"include":"#injection"}]}},"name":"liquid","patterns":[{"include":"#core"}],"repository":{"attribute":{"begin":"\\\\w+:","beginCaptures":{"0":{"name":"entity.other.attribute-name.liquid"}},"end":"(?=,|%}|}}|\\\\|)","patterns":[{"include":"#value_expression"}]},"attribute_liquid":{"begin":"\\\\w+:","beginCaptures":{"0":{"name":"entity.other.attribute-name.liquid"}},"end":"(?=,|\\\\|)|$","patterns":[{"include":"#value_expression"}]},"comment_block":{"begin":"{%-?\\\\s*comment\\\\s*-?%}","end":"{%-?\\\\s*endcomment\\\\s*-?%}","name":"comment.block.liquid","patterns":[{"include":"#comment_block"},{"match":"(.(?!{%-?\\\\s*(comment|endcomment)\\\\s*-?%}))*."}]},"core":{"patterns":[{"include":"#raw_tag"},{"include":"#doc_tag"},{"include":"#comment_block"},{"include":"#style_codefence"},{"include":"#stylesheet_codefence"},{"include":"#json_codefence"},{"include":"#javascript_codefence"},{"include":"#object"},{"include":"#tag"},{"include":"text.html.basic"}]},"doc_tag":{"begin":"{%-?\\\\s*(doc)\\\\s*-?%}","beginCaptures":{"0":{"name":"meta.tag.liquid"},"1":{"name":"entity.name.tag.doc.liquid"}},"contentName":"comment.block.documentation.liquid","end":"{%-?\\\\s*(enddoc)\\\\s*-?%}","endCaptures":{"0":{"name":"meta.tag.liquid"},"1":{"name":"entity.name.tag.doc.liquid"}},"name":"meta.block.doc.liquid","patterns":[{"include":"#liquid_doc_param_tag"},{"include":"#liquid_doc_example_tag"},{"include":"#liquid_doc_fallback_tag"}]},"filter":{"captures":{"1":{"name":"support.function.liquid"}},"match":"\\\\|\\\\s*((?![\\\\.0-9])[a-zA-Z0-9_-]+\\\\:?)\\\\s*"},"injection":{"patterns":[{"include":"#raw_tag"},{"include":"#comment_block"},{"include":"#object"},{"include":"#tag_injection"}]},"invalid_range":{"match":"\\\\((.(?!\\\\.\\\\.))+\\\\)","name":"invalid.illegal.range.liquid"},"javascript_codefence":{"begin":"({%-?)\\\\s*(javascript)\\\\s*(-?%})","beginCaptures":{"0":{"name":"meta.tag.metadata.javascript.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.javascript.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"contentName":"meta.embedded.block.js","end":"({%-?)\\\\s*(endjavascript)\\\\s*(-?%})","endCaptures":{"0":{"name":"meta.tag.metadata.javascript.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.javascript.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}},"name":"meta.block.javascript.liquid","patterns":[{"include":"source.js"}]},"json_codefence":{"begin":"({%-?)\\\\s*(schema)\\\\s*(-?%})","beginCaptures":{"0":{"name":"meta.tag.metadata.schema.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.schema.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"contentName":"meta.embedded.block.json","end":"({%-?)\\\\s*(endschema)\\\\s*(-?%})","endCaptures":{"0":{"name":"meta.tag.metadata.schema.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.schema.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}},"name":"meta.block.schema.liquid","patterns":[{"include":"source.json"}]},"language_constant":{"match":"\\\\b(false|true|nil|blank)\\\\b|empty(?!\\\\?)","name":"constant.language.liquid"},"liquid_doc_example_tag":{"captures":{"1":{"name":"storage.type.class.liquid"}},"match":"(@example)\\\\b"},"liquid_doc_fallback_tag":{"captures":{"1":{"name":"storage.type.class.liquid"}},"match":"(@\\\\w+)\\\\b"},"liquid_doc_param_tag":{"captures":{"1":{"name":"storage.type.class.liquid"},"2":{"name":"entity.name.type.instance.liquid"},"3":{"name":"variable.other.liquid"}},"match":"(@param)\\\\s+(?:({[^}]*}?)\\\\s+)?([a-zA-Z_]\\\\w*)?"},"number":{"match":"((-|\\\\+)\\\\s*)?[0-9]+(\\\\.[0-9]+)?","name":"constant.numeric.liquid"},"object":{"begin":"(?<!comment %})(?<!comment -%})(?<!comment%})(?<!comment-%})(?<!raw %})(?<!raw -%})(?<!raw%})(?<!raw-%}){{-?","beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.liquid"}},"end":"-?}}","endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}},"name":"meta.object.liquid","patterns":[{"include":"#filter"},{"include":"#attribute"},{"include":"#value_expression"}]},"operator":{"captures":{"1":{"name":"keyword.operator.expression.liquid"}},"match":"(?:(?<=\\\\s)|\\\\b)(\\\\=\\\\=|!\\\\=|\\\\>|\\\\<|\\\\>\\\\=|\\\\<\\\\=|or|and|contains)(?:(?=\\\\s)|\\\\b)"},"range":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.liquid"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.liquid"}},"name":"meta.range.liquid","patterns":[{"match":"\\\\.\\\\.","name":"punctuation.range.liquid"},{"include":"#variable_lookup"},{"include":"#number"}]},"raw_tag":{"begin":"{%-?\\\\s*(raw)\\\\s*-?%}","beginCaptures":{"1":{"name":"entity.name.tag.liquid"}},"contentName":"string.unquoted.liquid","end":"{%-?\\\\s*(endraw)\\\\s*-?%}","endCaptures":{"1":{"name":"entity.name.tag.liquid"}},"name":"meta.entity.tag.raw.liquid","patterns":[{"match":"(.(?!{%-?\\\\s*endraw\\\\s*-?%}))*."}]},"string":{"patterns":[{"include":"#string_single"},{"include":"#string_double"}]},"string_double":{"begin":"\\"","end":"\\"","name":"string.quoted.double.liquid"},"string_single":{"begin":"'","end":"'","name":"string.quoted.single.liquid"},"style_codefence":{"begin":"({%-?)\\\\s*(style)\\\\s*(-?%})","beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"contentName":"meta.embedded.block.css","end":"({%-?)\\\\s*(endstyle)\\\\s*(-?%})","endCaptures":{"0":{"name":"meta.tag.metadata.style.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}},"name":"meta.block.style.liquid","patterns":[{"include":"source.css"}]},"stylesheet_codefence":{"begin":"({%-?)\\\\s*(stylesheet)\\\\s*(-?%})","beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"contentName":"meta.embedded.block.css","end":"({%-?)\\\\s*(endstylesheet)\\\\s*(-?%})","endCaptures":{"0":{"name":"meta.tag.metadata.style.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}},"name":"meta.block.style.liquid","patterns":[{"include":"source.css"}]},"tag":{"begin":"(?<!comment %})(?<!comment -%})(?<!comment%})(?<!comment-%})(?<!raw %})(?<!raw -%})(?<!raw%})(?<!raw-%}){%-?","beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.liquid"}},"end":"-?%}","endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}},"name":"meta.tag.liquid","patterns":[{"include":"#tag_body"}]},"tag_assign":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(assign|echo)\\\\b","beginCaptures":{"1":{"name":"entity.name.tag.liquid"}},"end":"(?=%})","name":"meta.entity.tag.liquid","patterns":[{"include":"#filter"},{"include":"#attribute"},{"include":"#value_expression"}]},"tag_assign_liquid":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(assign|echo)\\\\b","beginCaptures":{"1":{"name":"entity.name.tag.liquid"}},"end":"$","name":"meta.entity.tag.liquid","patterns":[{"include":"#filter"},{"include":"#attribute_liquid"},{"include":"#value_expression"}]},"tag_body":{"patterns":[{"include":"#tag_liquid"},{"include":"#tag_assign"},{"include":"#tag_comment_inline"},{"include":"#tag_case"},{"include":"#tag_conditional"},{"include":"#tag_for"},{"include":"#tag_paginate"},{"include":"#tag_render"},{"include":"#tag_tablerow"},{"include":"#tag_expression"}]},"tag_case":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(case|when)\\\\b","beginCaptures":{"1":{"name":"keyword.control.case.liquid"}},"end":"(?=%})","name":"meta.entity.tag.case.liquid","patterns":[{"include":"#value_expression"}]},"tag_case_liquid":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(case|when)\\\\b","beginCaptures":{"1":{"name":"keyword.control.case.liquid"}},"end":"$","name":"meta.entity.tag.case.liquid","patterns":[{"include":"#value_expression"}]},"tag_comment_block_liquid":{"begin":"(?:^\\\\s*)(comment)\\\\b","end":"(?:^\\\\s*)(endcomment)\\\\b","name":"comment.block.liquid","patterns":[{"include":"#tag_comment_block_liquid"},{"match":"(?:^\\\\s*)(?!(comment|endcomment)).*"}]},"tag_comment_inline":{"begin":"#","end":"(?=%})","name":"comment.line.number-sign.liquid"},"tag_comment_inline_liquid":{"begin":"(?:^\\\\s*)#.*","end":"$","name":"comment.line.number-sign.liquid"},"tag_conditional":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(if|elsif|unless)\\\\b","beginCaptures":{"1":{"name":"keyword.control.conditional.liquid"}},"end":"(?=%})","name":"meta.entity.tag.conditional.liquid","patterns":[{"include":"#value_expression"}]},"tag_conditional_liquid":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(if|elsif|unless)\\\\b","beginCaptures":{"1":{"name":"keyword.control.conditional.liquid"}},"end":"$","name":"meta.entity.tag.conditional.liquid","patterns":[{"include":"#value_expression"}]},"tag_expression":{"patterns":[{"include":"#tag_expression_without_arguments"},{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(\\\\w+)","beginCaptures":{"1":{"name":"entity.name.tag.liquid"}},"end":"(?=%})","name":"meta.entity.tag.liquid","patterns":[{"include":"#value_expression"}]}]},"tag_expression_liquid":{"patterns":[{"include":"#tag_expression_without_arguments"},{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(\\\\w+)","beginCaptures":{"1":{"name":"entity.name.tag.liquid"}},"end":"$","name":"meta.entity.tag.liquid","patterns":[{"include":"#value_expression"}]}]},"tag_expression_without_arguments":{"patterns":[{"captures":{"1":{"name":"keyword.control.conditional.liquid"}},"match":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(endunless|endif)\\\\b"},{"captures":{"1":{"name":"keyword.control.loop.liquid"}},"match":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(endfor|endtablerow|endpaginate)\\\\b"},{"captures":{"1":{"name":"keyword.control.case.liquid"}},"match":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(endcase)\\\\b"},{"captures":{"1":{"name":"keyword.control.other.liquid"}},"match":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(capture|case|comment|for|form|if|javascript|paginate|schema|style)\\\\b"},{"captures":{"1":{"name":"keyword.control.other.liquid"}},"match":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(endcapture|endcase|endcomment|endfor|endform|endif|endjavascript|endpaginate|endschema|endstyle)\\\\b"},{"captures":{"1":{"name":"keyword.control.other.liquid"}},"match":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(else|break|continue)\\\\b"}]},"tag_for":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(for)\\\\b","beginCaptures":{"1":{"name":"keyword.control.for.liquid"}},"end":"(?=%})","name":"meta.entity.tag.for.liquid","patterns":[{"include":"#tag_for_body"}]},"tag_for_body":{"patterns":[{"match":"\\\\b(in|reversed)\\\\b","name":"keyword.control.liquid"},{"match":"\\\\b(offset|limit):","name":"keyword.control.liquid"},{"include":"#value_expression"}]},"tag_for_liquid":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(for)\\\\b","beginCaptures":{"1":{"name":"keyword.control.for.liquid"}},"end":"$","name":"meta.entity.tag.for.liquid","patterns":[{"include":"#tag_for_body"}]},"tag_injection":{"begin":"(?<!comment %})(?<!comment -%})(?<!comment%})(?<!comment-%})(?<!raw %})(?<!raw -%})(?<!raw%})(?<!raw-%}){%-?(?!-?\\\\s*(endstyle|endjavascript|endcomment|endraw))","beginCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}},"end":"-?%}","endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}},"name":"meta.tag.liquid","patterns":[{"include":"#tag_body"}]},"tag_liquid":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(liquid)\\\\b","beginCaptures":{"1":{"name":"keyword.control.liquid.liquid"}},"end":"(?=%})","name":"meta.entity.tag.liquid.liquid","patterns":[{"include":"#tag_comment_block_liquid"},{"include":"#tag_comment_inline_liquid"},{"include":"#tag_assign_liquid"},{"include":"#tag_case_liquid"},{"include":"#tag_conditional_liquid"},{"include":"#tag_for_liquid"},{"include":"#tag_paginate_liquid"},{"include":"#tag_render_liquid"},{"include":"#tag_tablerow_liquid"},{"include":"#tag_expression_liquid"}]},"tag_paginate":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(paginate)\\\\b","beginCaptures":{"1":{"name":"keyword.control.paginate.liquid"}},"end":"(?=%})","name":"meta.entity.tag.paginate.liquid","patterns":[{"include":"#tag_paginate_body"}]},"tag_paginate_body":{"patterns":[{"match":"\\\\b(by)\\\\b","name":"keyword.control.liquid"},{"include":"#value_expression"}]},"tag_paginate_liquid":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(paginate)\\\\b","beginCaptures":{"1":{"name":"keyword.control.paginate.liquid"}},"end":"$","name":"meta.entity.tag.paginate.liquid","patterns":[{"include":"#tag_paginate_body"}]},"tag_render":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(render)\\\\b","beginCaptures":{"1":{"name":"entity.name.tag.render.liquid"}},"end":"(?=%})","name":"meta.entity.tag.render.liquid","patterns":[{"include":"#tag_render_special_keywords"},{"include":"#attribute"},{"include":"#value_expression"}]},"tag_render_liquid":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(render)\\\\b","beginCaptures":{"1":{"name":"entity.name.tag.render.liquid"}},"end":"$","name":"meta.entity.tag.render.liquid","patterns":[{"include":"#tag_render_special_keywords"},{"include":"#attribute_liquid"},{"include":"#value_expression"}]},"tag_render_special_keywords":{"match":"\\\\b(with|as|for)\\\\b","name":"keyword.control.other.liquid"},"tag_tablerow":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(tablerow)\\\\b","beginCaptures":{"1":{"name":"keyword.control.tablerow.liquid"}},"end":"(?=%})","name":"meta.entity.tag.tablerow.liquid","patterns":[{"include":"#tag_tablerow_body"}]},"tag_tablerow_body":{"patterns":[{"match":"\\\\b(in)\\\\b","name":"keyword.control.liquid"},{"match":"\\\\b(cols|offset|limit):","name":"keyword.control.liquid"},{"include":"#value_expression"}]},"tag_tablerow_liquid":{"begin":"(?:(?:(?<={%)|(?<={%-)|^)\\\\s*)(tablerow)\\\\b","beginCaptures":{"1":{"name":"keyword.control.tablerow.liquid"}},"end":"$","name":"meta.entity.tag.tablerow.liquid","patterns":[{"include":"#tag_tablerow_body"}]},"value_expression":{"patterns":[{"captures":{"2":{"name":"invalid.illegal.filter.liquid"},"3":{"name":"invalid.illegal.filter.liquid"}},"match":"(\\\\[)(\\\\|)(?=[^\\\\]]*)(?=\\\\])"},{"match":"(?<=\\\\s)(\\\\+|\\\\-|\\\\/|\\\\*)(?=\\\\s)","name":"invalid.illegal.filter.liquid"},{"include":"#language_constant"},{"include":"#operator"},{"include":"#invalid_range"},{"include":"#range"},{"include":"#number"},{"include":"#string"},{"include":"#variable_lookup"}]},"variable_lookup":{"patterns":[{"match":"\\\\b(additional_checkout_buttons|address|all_country_option_tags|all_products|article|articles|block|blog|blogs|canonical_url|cart|checkout|collection|collections|comment|content_for_additional_checkout_buttons|content_for_header|content_for_index|content_for_layout|country_option_tags|currency|current_page|current_tags|customer|customer_address|discount_allocation|discount_application|external_video|font|forloop|form|fulfillment|gift_card|handle|image|images|line_item|link|linklist|linklists|location|localization|metafield|model|model_source|order|page|page_description|page_image|page_title|pages|paginate|part|policy|powered_by_link|predictive_search|product|product_option|product_variant|recommendations|request|routes|script|scripts|search|section|selling_plan|selling_plan_allocation|selling_plan_group|settings|shipping_method|shop|shop_locale|store_availability|tablerow|tax_line|template|theme|transaction|unit_price_measurement|variant|video|video_source)\\\\b","name":"variable.language.liquid"},{"match":"((?<=\\\\w\\\\:\\\\s)\\\\w+)","name":"variable.parameter.liquid"},{"begin":"(?<=\\\\w)\\\\[","beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.liquid"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.brackets.end.liquid"}},"name":"meta.brackets.liquid","patterns":[{"include":"#string"}]},{"match":"(?<=(\\\\w|\\\\])\\\\.)([-\\\\w]+\\\\??)","name":"variable.other.member.liquid"},{"match":"(?<=\\\\w)\\\\.(?=\\\\w)","name":"punctuation.accessor.liquid"},{"match":"(?i)[a-z_](\\\\w|(?:-(?!\\\\}\\\\})))*","name":"variable.other.liquid"}]}},"scopeName":"text.html.liquid","embeddedLangs":["html","css","json","javascript"]}`)),dre=[...ce,...ue,...bn,...J,Are]});var tR={};x(tR,{default:()=>pre});var ure,pre,nR=_(()=>{ure=Object.freeze(JSON.parse(`{"displayName":"Log file","fileTypes":["log"],"name":"log","patterns":[{"match":"\\\\b(Trace)\\\\b:","name":"comment log.verbose"},{"match":"(?i)\\\\[(verbose|verb|vrb|vb|v)\\\\]","name":"comment log.verbose"},{"match":"(?<=^[\\\\s\\\\d\\\\p]*)\\\\bV\\\\b","name":"comment log.verbose"},{"match":"\\\\b(DEBUG|Debug)\\\\b|(?i)\\\\b(debug)\\\\:","name":"markup.changed log.debug"},{"match":"(?i)\\\\[(debug|dbug|dbg|de|d)\\\\]","name":"markup.changed log.debug"},{"match":"(?<=^[\\\\s\\\\d\\\\p]*)\\\\bD\\\\b","name":"markup.changed log.debug"},{"match":"\\\\b(HINT|INFO|INFORMATION|Info|NOTICE|II)\\\\b|(?i)\\\\b(info|information)\\\\:","name":"markup.inserted log.info"},{"match":"(?i)\\\\[(information|info|inf|in|i)\\\\]","name":"markup.inserted log.info"},{"match":"(?<=^[\\\\s\\\\d\\\\p]*)\\\\bI\\\\b","name":"markup.inserted log.info"},{"match":"\\\\b(WARNING|WARN|Warn|WW)\\\\b|(?i)\\\\b(warning)\\\\:","name":"markup.deleted log.warning"},{"match":"(?i)\\\\[(warning|warn|wrn|wn|w)\\\\]","name":"markup.deleted log.warning"},{"match":"(?<=^[\\\\s\\\\d\\\\p]*)\\\\bW\\\\b","name":"markup.deleted log.warning"},{"match":"\\\\b(ALERT|CRITICAL|EMERGENCY|ERROR|FAILURE|FAIL|Fatal|FATAL|Error|EE)\\\\b|(?i)\\\\b(error)\\\\:","name":"string.regexp, strong log.error"},{"match":"(?i)\\\\[(error|eror|err|er|e|fatal|fatl|ftl|fa|f)\\\\]","name":"string.regexp, strong log.error"},{"match":"(?<=^[\\\\s\\\\d\\\\p]*)\\\\bE\\\\b","name":"string.regexp, strong log.error"},{"match":"\\\\b\\\\d{4}-\\\\d{2}-\\\\d{2}(?=T|\\\\b)","name":"comment log.date"},{"match":"(?<=(^|\\\\s))\\\\d{2}[^\\\\w\\\\s]\\\\d{2}[^\\\\w\\\\s]\\\\d{4}\\\\b","name":"comment log.date"},{"match":"T?\\\\d{1,2}:\\\\d{2}(:\\\\d{2}([.,]\\\\d{1,})?)?(Z| ?[+-]\\\\d{1,2}:\\\\d{2})?\\\\b","name":"comment log.date"},{"match":"T\\\\d{2}\\\\d{2}(\\\\d{2}([.,]\\\\d{1,})?)?(Z| ?[+-]\\\\d{1,2}\\\\d{2})?\\\\b","name":"comment log.date"},{"match":"\\\\b([0-9a-fA-F]{40}|[0-9a-fA-F]{10}|[0-9a-fA-F]{7})\\\\b","name":"constant.language"},{"match":"\\\\b[0-9a-fA-F]{8}[-]?([0-9a-fA-F]{4}[-]?){3}[0-9a-fA-F]{12}\\\\b","name":"constant.language log.constant"},{"match":"\\\\b([0-9a-fA-F]{2,}[:-])+[0-9a-fA-F]{2,}+\\\\b","name":"constant.language log.constant"},{"match":"\\\\b([0-9]+|true|false|null)\\\\b","name":"constant.language log.constant"},{"match":"\\\\b(0x[a-fA-F0-9]+)\\\\b","name":"constant.language log.constant"},{"match":"\\"[^\\"]*\\"","name":"string log.string"},{"match":"(?<![\\\\w])'[^']*'","name":"string log.string"},{"match":"\\\\b([a-zA-Z.]*Exception)\\\\b","name":"string.regexp, emphasis log.exceptiontype"},{"begin":"^[\\\\t ]*at[\\\\t ]","end":"$","name":"string.key, emphasis log.exception"},{"match":"\\\\b[a-z]+://\\\\S+\\\\b/?","name":"constant.language log.constant"},{"match":"(?<![\\\\w/\\\\\\\\])([\\\\w-]+\\\\.)+([\\\\w-])+(?![\\\\w/\\\\\\\\])","name":"constant.language log.constant"}],"scopeName":"text.log"}`)),pre=[ure]});var aR={};x(aR,{default:()=>gre});var mre,gre,rR=_(()=>{mre=Object.freeze(JSON.parse('{"displayName":"Logo","fileTypes":[],"name":"logo","patterns":[{"match":"^to [\\\\w.]+","name":"entity.name.function.logo"},{"match":"continue|do\\\\.until|do\\\\.while|end|for(each)?|if(else|falsetrue|)|repeat|stop|until","name":"keyword.control.logo"},{"match":"\\\\b(\\\\.defmacro|\\\\.eq|\\\\.macro|\\\\.maybeoutput|\\\\.setbf|\\\\.setfirst|\\\\.setitem|\\\\.setsegmentsize|allopen|allowgetset|and|apply|arc|arctan|arity|array|arrayp|arraytolist|ascii|ashift|back|background|backslashedp|beforep|bitand|bitnot|bitor|bitxor|buried|buriedp|bury|buryall|buryname|butfirst|butfirsts|butlast|bye|cascade|case|caseignoredp|catch|char|clean|clearscreen|cleartext|close|closeall|combine|cond|contents|copydef|cos|count|crossmap|cursor|define|definedp|dequeue|difference|dribble|edall|edit|editfile|edn|edns|edpl|edpls|edps|emptyp|eofp|epspict|equalp|erall|erase|erasefile|ern|erns|erpl|erpls|erps|erract|error|exp|fence|filep|fill|filter|find|first|firsts|forever|form|forward|fput|fullprintp|fullscreen|fulltext|gc|gensym|global|goto|gprop|greaterp|heading|help|hideturtle|home|ignore|int|invoke|iseq|item|keyp|label|last|left|lessp|list|listp|listtoarray|ln|load|loadnoisily|loadpict|local|localmake|log10|lowercase|lput|lshift|macroexpand|macrop|make|map|map.se|mdarray|mditem|mdsetitem|member|memberp|minus|modulo|name|namelist|namep|names|nodes|nodribble|norefresh|not|numberp|openappend|openread|openupdate|openwrite|or|output|palette|parse|pause|pen|pencolor|pendown|pendownp|penerase|penmode|penpaint|penreverse|pensize|penup|pick|plist|plistp|plists|pllist|po|poall|pon|pons|pop|popl|popls|pops|pos|pot|pots|power|pprop|prefix|primitivep|print|printdepthlimit|printwidthlimit|procedurep|procedures|product|push|queue|quoted|quotient|radarctan|radcos|radsin|random|rawascii|readchar|readchars|reader|readlist|readpos|readrawline|readword|redefp|reduce|refresh|remainder|remdup|remove|remprop|repcount|rerandom|reverse|right|round|rseq|run|runparse|runresult|save|savel|savepict|screenmode|scrunch|sentence|setbackground|setcursor|seteditor|setheading|sethelploc|setitem|setlibloc|setmargins|setpalette|setpen|setpencolor|setpensize|setpos|setprefix|setread|setreadpos|setscrunch|settemploc|settextcolor|setwrite|setwritepos|setx|setxy|sety|shell|show|shownp|showturtle|sin|splitscreen|sqrt|standout|startup|step|stepped|steppedp|substringp|sum|tag|test|text|textscreen|thing|throw|towards|trace|traced|tracedp|transfer|turtlemode|type|unbury|unburyall|unburyname|unburyonedit|unstep|untrace|uppercase|usealternatenam|wait|while|window|word|wordp|wrap|writepos|writer|xcor|ycor)\\\\b","name":"keyword.other.logo"},{"captures":{"1":{"name":"punctuation.definition.variable.logo"}},"match":"(\\\\:)(?:\\\\|[^|]*\\\\||[-\\\\w.]*)+","name":"variable.parameter.logo"},{"match":"\\"(?:\\\\|[^|]*\\\\||[-\\\\w.]*)+","name":"string.other.word.logo"},{"begin":"(^[ \\\\t]+)?(?=;)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.logo"}},"end":"(?!\\\\G)","patterns":[{"begin":";","beginCaptures":{"0":{"name":"punctuation.definition.comment.logo"}},"end":"\\\\n","name":"comment.line.semicolon.logo"}]}],"scopeName":"source.logo"}')),gre=[mre]});var iR={};x(iR,{default:()=>bre});var fre,bre,oR=_(()=>{fre=Object.freeze(JSON.parse('{"displayName":"Luau","fileTypes":["luau"],"name":"luau","patterns":[{"include":"#function-definition"},{"include":"#number"},{"include":"#string"},{"include":"#shebang"},{"include":"#comment"},{"include":"#local-declaration"},{"include":"#for-loop"},{"include":"#type-alias-declaration"},{"include":"#keyword"},{"include":"#language_constant"},{"include":"#standard_library"},{"include":"#identifier"},{"include":"#operator"},{"include":"#parentheses"},{"include":"#table"},{"include":"#type_cast"},{"include":"#type_annotation"},{"include":"#attribute"}],"repository":{"attribute":{"patterns":[{"captures":{"1":{"name":"keyword.operator.attribute.luau"},"2":{"name":"storage.type.attribute.luau"}},"match":"(@)([a-zA-Z_][a-zA-Z0-9_]*)","name":"meta.attribute.luau"}]},"comment":{"patterns":[{"begin":"--\\\\[(=*)\\\\[","end":"\\\\]\\\\1\\\\]","name":"comment.block.luau","patterns":[{"begin":"(```luau?)\\\\s+","beginCaptures":{"1":{"name":"comment.luau"}},"end":"(```)","endCaptures":{"1":{"name":"comment.luau"}},"name":"keyword.operator.other.luau","patterns":[{"include":"source.luau"}]},{"include":"#doc_comment_tags"}]},{"begin":"---","end":"\\\\n","name":"comment.line.double-dash.documentation.luau","patterns":[{"include":"#doc_comment_tags"}]},{"begin":"--","end":"\\\\n","name":"comment.line.double-dash.luau"}]},"doc_comment_tags":{"patterns":[{"match":"@\\\\w+","name":"storage.type.class.luadoc.luau"},{"captures":{"1":{"name":"storage.type.class.luadoc.luau"},"2":{"name":"variable.parameter.luau"}},"match":"((?<=[\\\\s*!\\\\/])[\\\\\\\\@]param)(?:\\\\s)+(\\\\b\\\\w+\\\\b)"}]},"for-loop":{"begin":"\\\\b(for)\\\\b","beginCaptures":{"1":{"name":"keyword.control.luau"}},"end":"\\\\b(in)\\\\b|(=)","endCaptures":{"1":{"name":"keyword.control.luau"},"2":{"name":"keyword.operator.assignment.luau"}},"patterns":[{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.luau"}},"end":"(?=\\\\s*in\\\\b|\\\\s*[=,]|\\\\s*$)","patterns":[{"include":"#type_literal"}]},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b","name":"variable.parameter.luau"}]},"function-definition":{"begin":"\\\\b(?:(local)\\\\s+)?(function)\\\\b(?![,:])","beginCaptures":{"1":{"name":"storage.modifier.local.luau"},"2":{"name":"keyword.control.luau"}},"end":"(?<=[\\\\)\\\\-{}\\\\[\\\\]\\"\'])","name":"meta.function.luau","patterns":[{"include":"#comment"},{"include":"#generics-declaration"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.luau"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.luau"}},"name":"meta.parameter.luau","patterns":[{"include":"#comment"},{"match":"\\\\.\\\\.\\\\.","name":"variable.parameter.function.varargs.luau"},{"match":"[a-zA-Z_][a-zA-Z0-9_]*","name":"variable.parameter.function.luau"},{"match":",","name":"punctuation.separator.arguments.luau"},{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.type.luau"}},"end":"(?=[\\\\),])","patterns":[{"include":"#type_literal"}]}]},{"match":"\\\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm|__iter|__idiv)\\\\b","name":"variable.language.metamethod.luau"},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b","name":"entity.name.function.luau"}]},"generics-declaration":{"begin":"(<)","end":"(>)","patterns":[{"match":"[a-zA-Z_][a-zA-Z0-9_]*","name":"entity.name.type.luau"},{"match":"=","name":"keyword.operator.assignment.luau"},{"include":"#type_literal"}]},"identifier":{"patterns":[{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b(?=\\\\s*(?:[({\\"\']|\\\\[\\\\[))","name":"entity.name.function.luau"},{"match":"(?<=[^.]\\\\.|:)\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b","name":"variable.other.property.luau"},{"match":"\\\\b([A-Z_][A-Z0-9_]*)\\\\b","name":"variable.other.constant.luau"},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b","name":"variable.other.readwrite.luau"}]},"interpolated_string_expression":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.interpolated-string-expression.begin.luau"}},"contentName":"meta.embedded.line.luau","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.interpolated-string-expression.end.luau"}},"name":"meta.template.expression.luau","patterns":[{"include":"source.luau"}]},"keyword":{"patterns":[{"match":"\\\\b(break|do|else|for|if|elseif|return|then|repeat|while|until|end|in|continue)\\\\b","name":"keyword.control.luau"},{"match":"\\\\b(local)\\\\b","name":"storage.modifier.local.luau"},{"match":"\\\\b(function)\\\\b(?![,:])","name":"keyword.control.luau"},{"match":"(?<![^.]\\\\.|:)\\\\b(self)\\\\b","name":"variable.language.self.luau"},{"match":"\\\\b(and|or|not)\\\\b","name":"keyword.operator.logical.luau keyword.operator.wordlike.luau"},{"match":"(?<=[^.]\\\\.|:)\\\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm)\\\\b","name":"variable.language.metamethod.luau"},{"match":"(?<![.])\\\\.{3}(?!\\\\.)","name":"keyword.other.unit.luau"}]},"language_constant":{"patterns":[{"match":"(?<![^.]\\\\.|:)\\\\b(false)\\\\b","name":"constant.language.boolean.false.luau"},{"match":"(?<![^.]\\\\.|:)\\\\b(true)\\\\b","name":"constant.language.boolean.true.luau"},{"match":"(?<![^.]\\\\.|:)\\\\b(nil(?!:))\\\\b","name":"constant.language.nil.luau"}]},"local-declaration":{"begin":"\\\\b(local)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.local.luau"}},"end":"(?=\\\\s*do\\\\b|\\\\s*[=;]|\\\\s*$)","patterns":[{"include":"#comment"},{"include":"#attribute"},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.luau"}},"end":"(?=\\\\s*do\\\\b|\\\\s*[=;,]|\\\\s*$)","patterns":[{"include":"#type_literal"}]},{"match":"\\\\b([A-Z_][A-Z0-9_]*)\\\\b","name":"variable.other.constant.luau"},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b","name":"variable.other.readwrite.luau"}]},"number":{"patterns":[{"match":"\\\\b0_*[xX]_*[\\\\da-fA-F_]*(?:[eE][\\\\+\\\\-]?_*\\\\d[\\\\d_]*(?:\\\\.[\\\\d_]*)?)?","name":"constant.numeric.hex.luau"},{"match":"\\\\b0_*[bB][01_]+(?:[eE][\\\\+\\\\-]?_*\\\\d[\\\\d_]*(?:\\\\.[\\\\d_]*)?)?","name":"constant.numeric.binary.luau"},{"match":"(?:\\\\d[\\\\d_]*(?:\\\\.[\\\\d_]*)?|\\\\.\\\\d[\\\\d_]*)(?:[eE][\\\\+\\\\-]?_*\\\\d[\\\\d_]*(?:\\\\.[\\\\d_]*)?)?","name":"constant.numeric.decimal.luau"}]},"operator":{"patterns":[{"match":"==|~=|!=|<=?|>=?","name":"keyword.operator.comparison.luau"},{"match":"\\\\+=|-=|/=|//=|\\\\*=|%=|\\\\^=|\\\\.\\\\.=|=","name":"keyword.operator.assignment.luau"},{"match":"\\\\+|-|%|\\\\*|\\\\/\\\\/|\\\\/|\\\\^","name":"keyword.operator.arithmetic.luau"},{"match":"#|(?<!\\\\.)\\\\.{2}(?!\\\\.)","name":"keyword.operator.other.luau"}]},"parentheses":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.arguments.begin.luau"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.arguments.end.luau"}},"patterns":[{"match":",","name":"punctuation.separator.arguments.luau"},{"include":"source.luau"}]},"shebang":{"captures":{"1":{"name":"punctuation.definition.comment.luau"}},"match":"\\\\A(#!).*$\\\\n?","name":"comment.line.shebang.luau"},"standard_library":{"patterns":[{"match":"(?<![^.]\\\\.|:)\\\\b(assert|collectgarbage|error|gcinfo|getfenv|getmetatable|ipairs|loadstring|newproxy|next|pairs|pcall|print|rawequal|rawset|require|select|setfenv|setmetatable|tonumber|tostring|type|typeof|unpack|xpcall)\\\\b","name":"support.function.luau"},{"match":"(?<![^.]\\\\.|:)\\\\b(_G|_VERSION)\\\\b","name":"constant.language.luau"},{"match":"(?<![^.]\\\\.|:)\\\\b(bit32\\\\.(?:arshift|band|bnot|bor|btest|bxor|extract|lrotate|lshift|replace|rrotate|rshift|countlz|countrz|byteswap)|coroutine\\\\.(?:create|isyieldable|resume|running|status|wrap|yield|close)|debug\\\\.(?:info|loadmodule|profilebegin|profileend|traceback)|math\\\\.(?:abs|acos|asin|atan|atan2|ceil|clamp|cos|cosh|deg|exp|floor|fmod|frexp|ldexp|log|log10|max|min|modf|noise|pow|rad|random|randomseed|round|sign|sin|sinh|sqrt|tan|tanh)|os\\\\.(?:clock|date|difftime|time)|string\\\\.(?:byte|char|find|format|gmatch|gsub|len|lower|match|pack|packsize|rep|reverse|split|sub|unpack|upper)|table\\\\.(?:concat|create|find|foreach|foreachi|getn|insert|maxn|move|pack|remove|sort|unpack|clear|freeze|isfrozen|clone)|task\\\\.(?:spawn|synchronize|desynchronize|wait|defer|delay)|utf8\\\\.(?:char|codepoint|codes|graphemes|len|nfcnormalize|nfdnormalize|offset)|buffer\\\\.(?:create|fromstring|tostring|len|readi8|readu8|readi16|readu16|readi32|readu32|readf32|readf64|writei8|writeu8|writei16|writeu16|writei32|writeu32|writef32|writef64|readstring|writestring|copy|fill))\\\\b","name":"support.function.luau"},{"match":"(?<![^.]\\\\.|:)\\\\b(bit32|buffer|coroutine|debug|math(\\\\.(huge|pi))?|os|string|table|task|utf8(\\\\.charpattern)?)\\\\b","name":"support.constant.luau"},{"match":"(?<![^.]\\\\.|:)\\\\b(delay|DebuggerManager|elapsedTime|PluginManager|printidentity|settings|spawn|stats|tick|time|UserSettings|version|wait|warn)\\\\b","name":"support.function.luau"},{"match":"(?<![^.]\\\\.|:)\\\\b(game|plugin|shared|script|workspace|Enum(?:\\\\.\\\\w+){0,2})\\\\b","name":"constant.language.luau"}]},"string":{"patterns":[{"begin":"\\"","end":"\\"","name":"string.quoted.double.luau","patterns":[{"include":"#string_escape"}]},{"begin":"\'","end":"\'","name":"string.quoted.single.luau","patterns":[{"include":"#string_escape"}]},{"begin":"\\\\[(=*)\\\\[","end":"\\\\]\\\\1\\\\]","name":"string.other.multiline.luau"},{"begin":"`","end":"`","name":"string.interpolated.luau","patterns":[{"include":"#interpolated_string_expression"},{"include":"#string_escape"}]}]},"string_escape":{"patterns":[{"match":"\\\\\\\\[abfnrtvz\'\\"`{\\\\\\\\]","name":"constant.character.escape.luau"},{"match":"\\\\\\\\\\\\d{1,3}","name":"constant.character.escape.luau"},{"match":"\\\\\\\\x[0-9a-fA-F]{2}","name":"constant.character.escape.luau"},{"match":"\\\\\\\\u\\\\{[0-9a-fA-F]*\\\\}","name":"constant.character.escape.luau"},{"match":"\\\\\\\\$","name":"constant.character.escape.luau"}]},"table":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.table.begin.luau"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.table.end.luau"}},"patterns":[{"match":"[,;]","name":"punctuation.separator.fields.luau"},{"include":"source.luau"}]},"type-alias-declaration":{"begin":"^\\\\b(?:(export)\\\\s+)?(type)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.visibility.luau"},"2":{"name":"storage.type.luau"}},"end":"(?=\\\\s*$)|(?=\\\\s*;)","patterns":[{"include":"#type_literal"},{"match":"=","name":"keyword.operator.assignment.luau"}]},"type_annotation":{"begin":":(?!\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b(?=\\\\s*(?:[({\\"\']|\\\\[\\\\[)))","end":"(?<=\\\\))(?!\\\\s*->)|=|;|$|(?=\\\\breturn\\\\b)|(?=\\\\bend\\\\b)","patterns":[{"include":"#comment"},{"include":"#type_literal"}]},"type_cast":{"begin":"(::)","beginCaptures":{"1":{"name":"keyword.operator.typecast.luau"}},"end":"(?=^|[;),}\\\\]:?\\\\-\\\\+\\\\>](?!\\\\s*[&\\\\|])|$|\\\\b(break|do|else|for|if|elseif|return|then|repeat|while|until|end|in|continue)\\\\b)","patterns":[{"include":"#type_literal"}]},"type_literal":{"patterns":[{"include":"#comment"},{"include":"#string"},{"match":"\\\\?|\\\\&|\\\\|","name":"keyword.operator.type.luau"},{"match":"->","name":"keyword.operator.type.function.luau"},{"match":"\\\\b(false)\\\\b","name":"constant.language.boolean.false.luau"},{"match":"\\\\b(true)\\\\b","name":"constant.language.boolean.true.luau"},{"match":"\\\\b(nil|string|number|boolean|thread|userdata|symbol|any)\\\\b","name":"support.type.primitive.luau"},{"begin":"\\\\b(typeof)\\\\b(\\\\()","beginCaptures":{"1":{"name":"support.function.luau"},"2":{"name":"punctuation.arguments.begin.typeof.luau"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.arguments.end.typeof.luau"}},"patterns":[{"include":"source.luau"}]},{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.luau"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.luau"}},"patterns":[{"match":"=","name":"keyword.operator.assignment.luau"},{"include":"#type_literal"}]},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b","name":"entity.name.type.luau"},{"begin":"\\\\{","end":"\\\\}","patterns":[{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#type_literal"}]},{"captures":{"1":{"name":"variable.property.luau"},"2":{"name":"keyword.operator.type.luau"}},"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b(:)"},{"include":"#type_literal"},{"match":"[,;]","name":"punctuation.separator.fields.type.luau"}]},{"begin":"\\\\(","end":"\\\\)","patterns":[{"captures":{"1":{"name":"variable.parameter.luau"},"2":{"name":"keyword.operator.type.luau"}},"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\b(:)","name":"variable.parameter.luau"},{"include":"#type_literal"}]}]}},"scopeName":"source.luau"}')),bre=[fre]});var sR={};x(sR,{default:()=>yre});var hre,yre,cR=_(()=>{hre=Object.freeze(JSON.parse('{"displayName":"Makefile","name":"make","patterns":[{"include":"#comment"},{"include":"#variables"},{"include":"#variable-assignment"},{"include":"#directives"},{"include":"#recipe"},{"include":"#target"}],"repository":{"another-variable-braces":{"patterns":[{"begin":"(?<={)(?!})","end":"(?=}|((?<!\\\\\\\\)\\\\n))","name":"variable.other.makefile","patterns":[{"include":"#variables"},{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.continuation.makefile"}]}]},"another-variable-parentheses":{"patterns":[{"begin":"(?<=\\\\()(?!\\\\))","end":"(?=\\\\)|((?<!\\\\\\\\)\\\\n))","name":"variable.other.makefile","patterns":[{"include":"#variables"},{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.continuation.makefile"}]}]},"braces-interpolation":{"begin":"{","end":"}","patterns":[{"include":"#variables"},{"include":"#interpolation"}]},"builtin-variable-braces":{"patterns":[{"match":"(?<={)(MAKEFILES|VPATH|SHELL|MAKESHELL|MAKE|MAKELEVEL|MAKEFLAGS|MAKECMDGOALS|CURDIR|SUFFIXES|\\\\.LIBPATTERNS)(?=\\\\s*})","name":"variable.language.makefile"}]},"builtin-variable-parentheses":{"patterns":[{"match":"(?<=\\\\()(MAKEFILES|VPATH|SHELL|MAKESHELL|MAKE|MAKELEVEL|MAKEFLAGS|MAKECMDGOALS|CURDIR|SUFFIXES|\\\\.LIBPATTERNS)(?=\\\\s*\\\\))","name":"variable.language.makefile"}]},"comma":{"match":",","name":"punctuation.separator.delimeter.comma.makefile"},"comment":{"begin":"(^[ ]+)?((?<!\\\\\\\\)(\\\\\\\\\\\\\\\\)*)(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.makefile"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.makefile"}},"end":"(?=[^\\\\\\\\])$","name":"comment.line.number-sign.makefile","patterns":[{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.continuation.makefile"}]}]},"directives":{"patterns":[{"begin":"^[ ]*([s\\\\-]?include)\\\\b","beginCaptures":{"1":{"name":"keyword.control.include.makefile"}},"end":"^","patterns":[{"include":"#comment"},{"include":"#variables"},{"match":"%","name":"constant.other.placeholder.makefile"}]},{"begin":"^[ ]*(vpath)\\\\b","beginCaptures":{"1":{"name":"keyword.control.vpath.makefile"}},"end":"^","patterns":[{"include":"#comment"},{"include":"#variables"},{"match":"%","name":"constant.other.placeholder.makefile"}]},{"begin":"^\\\\s*(?:(override)\\\\s*)?(define)\\\\s*([^\\\\s]+)\\\\s*(=|\\\\?=|:=|\\\\+=)?(?=\\\\s)","captures":{"1":{"name":"keyword.control.override.makefile"},"2":{"name":"keyword.control.define.makefile"},"3":{"name":"variable.other.makefile"},"4":{"name":"punctuation.separator.key-value.makefile"}},"end":"^\\\\s*(endef)\\\\b","name":"meta.scope.conditional.makefile","patterns":[{"begin":"\\\\G(?!\\\\n)","end":"^","patterns":[{"include":"#comment"}]},{"include":"#variables"},{"include":"#directives"}]},{"begin":"^[ ]*(export)\\\\b","beginCaptures":{"1":{"name":"keyword.control.$1.makefile"}},"end":"^","patterns":[{"include":"#comment"},{"include":"#variable-assignment"},{"match":"[^\\\\s]+","name":"variable.other.makefile"}]},{"begin":"^[ ]*(override|private)\\\\b","beginCaptures":{"1":{"name":"keyword.control.$1.makefile"}},"end":"^","patterns":[{"include":"#comment"},{"include":"#variable-assignment"}]},{"begin":"^[ ]*(unexport|undefine)\\\\b","beginCaptures":{"1":{"name":"keyword.control.$1.makefile"}},"end":"^","patterns":[{"include":"#comment"},{"match":"[^\\\\s]+","name":"variable.other.makefile"}]},{"begin":"^\\\\s*(ifeq|ifneq|ifdef|ifndef)(?=\\\\s)","captures":{"1":{"name":"keyword.control.$1.makefile"}},"end":"^\\\\s*(endif)\\\\b","name":"meta.scope.conditional.makefile","patterns":[{"begin":"\\\\G","end":"^","name":"meta.scope.condition.makefile","patterns":[{"include":"#comma"},{"include":"#variables"},{"include":"#comment"}]},{"begin":"^\\\\s*else(?=\\\\s)\\\\s*(ifeq|ifneq|ifdef|ifndef)*(?=\\\\s)","beginCaptures":{"0":{"name":"keyword.control.else.makefile"}},"end":"^","patterns":[{"include":"#comma"},{"include":"#variables"},{"include":"#comment"}]},{"include":"$self"}]}]},"flavor-variable-braces":{"patterns":[{"begin":"(?<={)(origin|flavor)\\\\s(?=[^\\\\s}]+\\\\s*})","beginCaptures":{"1":{"name":"support.function.$1.makefile"}},"contentName":"variable.other.makefile","end":"(?=})","name":"meta.scope.function-call.makefile","patterns":[{"include":"#variables"}]}]},"flavor-variable-parentheses":{"patterns":[{"begin":"(?<=\\\\()(origin|flavor)\\\\s(?=[^\\\\s)]+\\\\s*\\\\))","beginCaptures":{"1":{"name":"support.function.$1.makefile"}},"contentName":"variable.other.makefile","end":"(?=\\\\))","name":"meta.scope.function-call.makefile","patterns":[{"include":"#variables"}]}]},"function-variable-braces":{"patterns":[{"begin":"(?<={)(subst|patsubst|strip|findstring|filter(-out)?|sort|word(list)?|firstword|lastword|dir|notdir|suffix|basename|addsuffix|addprefix|join|wildcard|realpath|abspath|info|error|warning|shell|foreach|if|or|and|call|eval|value|file|guile)\\\\s","beginCaptures":{"1":{"name":"support.function.$1.makefile"}},"end":"(?=}|((?<!\\\\\\\\)\\\\n))","name":"meta.scope.function-call.makefile","patterns":[{"include":"#comma"},{"include":"#variables"},{"include":"#interpolation"},{"match":"%|\\\\*","name":"constant.other.placeholder.makefile"},{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.continuation.makefile"}]}]},"function-variable-parentheses":{"patterns":[{"begin":"(?<=\\\\()(subst|patsubst|strip|findstring|filter(-out)?|sort|word(list)?|firstword|lastword|dir|notdir|suffix|basename|addsuffix|addprefix|join|wildcard|realpath|abspath|info|error|warning|shell|foreach|if|or|and|call|eval|value|file|guile)\\\\s","beginCaptures":{"1":{"name":"support.function.$1.makefile"}},"end":"(?=\\\\)|((?<!\\\\\\\\)\\\\n))","name":"meta.scope.function-call.makefile","patterns":[{"include":"#comma"},{"include":"#variables"},{"include":"#interpolation"},{"match":"%|\\\\*","name":"constant.other.placeholder.makefile"},{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.continuation.makefile"}]}]},"interpolation":{"patterns":[{"include":"#parentheses-interpolation"},{"include":"#braces-interpolation"}]},"parentheses-interpolation":{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#variables"},{"include":"#interpolation"}]},"recipe":{"begin":"^\\\\t([+\\\\-@]*)","beginCaptures":{"1":{"name":"keyword.control.$1.makefile"}},"end":"[^\\\\\\\\]$","name":"meta.scope.recipe.makefile","patterns":[{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.continuation.makefile"},{"include":"#variables"}]},"simple-variable":{"patterns":[{"match":"\\\\$[^(){}]","name":"variable.language.makefile"}]},"target":{"begin":"^(?!\\\\t)([^:]*)(:)(?!\\\\=)","beginCaptures":{"1":{"patterns":[{"captures":{"1":{"name":"support.function.target.$1.makefile"}},"match":"^\\\\s*(\\\\.(PHONY|SUFFIXES|DEFAULT|PRECIOUS|INTERMEDIATE|SECONDARY|SECONDEXPANSION|DELETE_ON_ERROR|IGNORE|LOW_RESOLUTION_TIME|SILENT|EXPORT_ALL_VARIABLES|NOTPARALLEL|ONESHELL|POSIX))\\\\s*$"},{"begin":"(?=\\\\S)","end":"(?=\\\\s|$)","name":"entity.name.function.target.makefile","patterns":[{"include":"#variables"},{"match":"%","name":"constant.other.placeholder.makefile"}]}]},"2":{"name":"punctuation.separator.key-value.makefile"}},"end":"[^\\\\\\\\]$","name":"meta.scope.target.makefile","patterns":[{"begin":"\\\\G","end":"(?=[^\\\\\\\\])$","name":"meta.scope.prerequisites.makefile","patterns":[{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.continuation.makefile"},{"match":"%|\\\\*","name":"constant.other.placeholder.makefile"},{"include":"#comment"},{"include":"#variables"}]}]},"variable-assignment":{"begin":"(^[ ]*|\\\\G\\\\s*)([^\\\\s:#=]+)\\\\s*((?<![?:+!])=|\\\\?=|:=|\\\\+=|!=)","beginCaptures":{"2":{"name":"variable.other.makefile","patterns":[{"include":"#variables"}]},"3":{"name":"punctuation.separator.key-value.makefile"}},"end":"\\\\n","patterns":[{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.continuation.makefile"},{"include":"#comment"},{"include":"#variables"}]},"variable-braces":{"patterns":[{"begin":"\\\\${","captures":{"0":{"name":"punctuation.definition.variable.makefile"}},"end":"}|((?<!\\\\\\\\)\\\\n)","name":"string.interpolated.makefile","patterns":[{"include":"#variables"},{"include":"#builtin-variable-braces"},{"include":"#function-variable-braces"},{"include":"#flavor-variable-braces"},{"include":"#another-variable-braces"}]}]},"variable-parentheses":{"patterns":[{"begin":"\\\\$\\\\(","captures":{"0":{"name":"punctuation.definition.variable.makefile"}},"end":"\\\\)|((?<!\\\\\\\\)\\\\n)","name":"string.interpolated.makefile","patterns":[{"include":"#variables"},{"include":"#builtin-variable-parentheses"},{"include":"#function-variable-parentheses"},{"include":"#flavor-variable-parentheses"},{"include":"#another-variable-parentheses"}]}]},"variables":{"patterns":[{"include":"#simple-variable"},{"include":"#variable-parentheses"},{"include":"#variable-braces"}]}},"scopeName":"source.makefile","aliases":["makefile"]}')),yre=[hre]});var lR={};x(lR,{default:()=>kre});var wre,kre,AR=_(()=>{rt();ex();YA();Qe();wre=Object.freeze(JSON.parse('{"displayName":"Marko","fileTypes":["marko"],"name":"marko","patterns":[{"begin":"^\\\\s*(style)\\\\s+(\\\\{)","beginCaptures":{"1":{"name":"storage.type.marko.css"},"2":{"name":"punctuation.section.scope.begin.marko.css"}},"comment":"CSS style block, eg: style { color: green }","contentName":"source.css","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.scope.end.marko.css"}},"name":"meta.embedded.css","patterns":[{"include":"source.css"}]},{"begin":"^\\\\s*(style)\\\\.(less)\\\\s+(\\\\{)","beginCaptures":{"1":{"name":"storage.type.marko.css"},"2":{"name":"storage.modifier.marko.css"},"3":{"name":"punctuation.section.scope.begin.marko.css"}},"comment":"Less style block, eg: style.less { color: green }","contentName":"source.less","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.scope.end.marko.css"}},"name":"meta.embedded.less","patterns":[{"include":"source.css.less"}]},{"begin":"^\\\\s*(style)\\\\.(scss)\\\\s+(\\\\{)","beginCaptures":{"1":{"name":"storage.type.marko.css"},"2":{"name":"storage.modifier.marko.css"},"3":{"name":"punctuation.section.scope.begin.marko.css"}},"comment":"SCSS style block, eg: style.scss { color: green }","contentName":"source.scss","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.scope.end.marko.css"}},"name":"meta.embedded.scss","patterns":[{"include":"source.css.scss"}]},{"begin":"^\\\\s*(?:(static )|(?=(?:class|import|export) ))","beginCaptures":{"1":{"name":"keyword.control.static.marko"}},"comment":"Top level blocks parsed as JavaScript","contentName":"source.js","end":"(?=\\\\n|$)","name":"meta.embedded.js","patterns":[{"include":"#javascript-statement"}]},{"include":"#content-concise-mode"}],"repository":{"attrs":{"patterns":[{"applyEndPatternLast":1,"begin":"(?:\\\\s+|,)(?:(key|on[a-zA-Z0-9_$-]+|[a-zA-Z0-9_$]+Change|no-update(?:-body)?(?:-if)?)|([a-zA-Z0-9_$][a-zA-Z0-9_$-]*))(:[a-zA-Z0-9_$][a-zA-Z0-9_$-]*)?","beginCaptures":{"1":{"name":"support.type.attribute-name.marko"},"2":{"name":"entity.other.attribute-name.marko"},"3":{"name":"support.function.attribute-name.marko"}},"comment":"Attribute with optional value","end":"(?=.|$)","name":"meta.marko-attribute","patterns":[{"include":"#html-args-or-method"},{"applyEndPatternLast":1,"begin":"\\\\s*(:?=)\\\\s*","beginCaptures":{"1":{"patterns":[{"include":"source.js"}]}},"comment":"Attribute value","contentName":"source.js","end":"(?=.|$)","name":"meta.embedded.js","patterns":[{"include":"#javascript-expression"}]}]},{"applyEndPatternLast":1,"begin":"(?:\\\\s+|,)\\\\.\\\\.\\\\.","beginCaptures":{"1":{"name":"keyword.operator.spread.marko"}},"comment":"A ...spread attribute","contentName":"source.js","end":"(?=.|$)","name":"meta.marko-spread-attribute","patterns":[{"include":"#javascript-expression"}]},{"begin":"\\\\s*(,(?!,))","captures":{"1":{"patterns":[{"include":"source.js"}]}},"comment":"Consume any whitespace after a comma","end":"(?!\\\\S)"},{"include":"#javascript-comment-multiline"},{"include":"#invalid"}]},"concise-html-block":{"begin":"\\\\s*(--+)\\\\s*$","beginCaptures":{"2":{"name":"punctuation.section.scope.begin.marko"}},"comment":"--- HTML block within concise mode content. ---","end":"\\\\1","endCaptures":{"1":{"name":"punctuation.section.scope.end.marko"}},"name":"meta.section.marko-html-block","patterns":[{"include":"#content-html-mode"}]},"concise-html-line":{"captures":{"1":{"name":"punctuation.section.scope.begin.marko"},"2":{"patterns":[{"include":"#html-comments"},{"include":"#tag-html"},{"match":"\\\\\\\\.","name":"string"},{"include":"#placeholder"},{"match":".+?","name":"string"}]}},"comment":"-- HTML line within concise mode content. (content-html-mode w/o scriptlet)","match":"\\\\s*(--+)(?=\\\\s+\\\\S)(.*$)","name":"meta.section.marko-html-line"},"concise-open-tag-content":{"patterns":[{"include":"#tag-before-attrs"},{"begin":"\\\\s*\\\\[","beginCaptures":{"0":{"name":"punctuation.section.scope.begin.marko"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.scope.end.marko"}},"patterns":[{"include":"#attrs"},{"include":"#invalid"}]},{"begin":"(?!^)(?= )","end":"(?=--)|(?<!,)(?=\\\\n)","patterns":[{"include":"#attrs"},{"include":"#invalid"}]}]},"concise-script-block":{"begin":"(\\\\s+)(--+)\\\\s*$","beginCaptures":{"2":{"name":"punctuation.section.scope.begin.marko"}},"comment":"--- Embedded concise script content block. ---","end":"(\\\\2)|(?=^(?!\\\\1)\\\\s*\\\\S)","endCaptures":{"1":{"name":"punctuation.section.scope.end.marko"}},"name":"meta.section.marko-script-block","patterns":[{"include":"#content-embedded-script"}]},"concise-script-line":{"applyEndPatternLast":1,"begin":"\\\\s*(--+)","beginCaptures":{"1":{"name":"punctuation.section.scope.begin.marko"}},"comment":"-- Embedded concise script content line.","end":"$","name":"meta.section.marko-script-line","patterns":[{"include":"#content-embedded-script"}]},"concise-style-block":{"begin":"(\\\\s+)(--+)\\\\s*$","beginCaptures":{"2":{"name":"punctuation.section.scope.begin.marko"}},"comment":"--- Embedded concise style content block. ---","contentName":"source.css","end":"(\\\\2)|(?=^(?!\\\\1)\\\\s*\\\\S)","endCaptures":{"1":{"name":"punctuation.section.scope.end.marko"}},"name":"meta.section.marko-style-block","patterns":[{"include":"#content-embedded-style"}]},"concise-style-block-less":{"begin":"(\\\\s+)(--+)\\\\s*$","beginCaptures":{"2":{"name":"punctuation.section.scope.begin.marko"}},"comment":"--- Embedded concise style content block. ---","contentName":"source.less","end":"(\\\\2)|(?=^(?!\\\\1)\\\\s*\\\\S)","endCaptures":{"1":{"name":"punctuation.section.scope.end.marko"}},"name":"meta.section.marko-style-block","patterns":[{"include":"#content-embedded-style-less"}]},"concise-style-block-scss":{"begin":"(\\\\s+)(--+)\\\\s*$","beginCaptures":{"2":{"name":"punctuation.section.scope.begin.marko"}},"comment":"--- Embedded concise style content block. ---","contentName":"source.scss","end":"(\\\\2)|(?=^(?!\\\\1)\\\\s*\\\\S)","endCaptures":{"1":{"name":"punctuation.section.scope.end.marko"}},"name":"meta.section.marko-style-block","patterns":[{"include":"#content-embedded-style-scss"}]},"concise-style-line":{"applyEndPatternLast":1,"begin":"\\\\s*(--+)","beginCaptures":{"1":{"name":"punctuation.section.scope.begin.marko"}},"comment":"-- Embedded concise style content line.","contentName":"source.css","end":"$","name":"meta.section.marko-style-line","patterns":[{"include":"#content-embedded-style"}]},"concise-style-line-less":{"applyEndPatternLast":1,"begin":"\\\\s*(--+)","beginCaptures":{"1":{"name":"punctuation.section.scope.begin.marko"}},"comment":"-- Embedded concise style content line.","contentName":"source.less","end":"$","name":"meta.section.marko-style-line","patterns":[{"include":"#content-embedded-style-less"}]},"concise-style-line-scss":{"applyEndPatternLast":1,"begin":"\\\\s*(--+)","beginCaptures":{"1":{"name":"punctuation.section.scope.begin.marko"}},"comment":"-- Embedded concise style content line.","contentName":"source.scss","end":"$","name":"meta.section.marko-style-line","patterns":[{"include":"#content-embedded-style-scss"}]},"content-concise-mode":{"comment":"Concise mode content block.","name":"meta.marko-concise-content","patterns":[{"include":"#scriptlet"},{"include":"#javascript-comments"},{"include":"#html-comments"},{"include":"#concise-html-block"},{"include":"#concise-html-line"},{"include":"#tag-html"},{"comment":"A concise html tag.","patterns":[{"begin":"^(\\\\s*)(?=style\\\\.less\\\\b)","comment":"Concise style tag less","patterns":[{"include":"#concise-open-tag-content"},{"include":"#concise-style-block-less"},{"include":"#concise-style-line-less"}],"while":"(?=^\\\\1\\\\s+(\\\\S|$))"},{"begin":"^(\\\\s*)(?=style\\\\.scss\\\\b)","comment":"Concise style tag scss","patterns":[{"include":"#concise-open-tag-content"},{"include":"#concise-style-block-scss"},{"include":"#concise-style-line-scss"}],"while":"(?=^\\\\1\\\\s+(\\\\S|$))"},{"begin":"^(\\\\s*)(?=style\\\\b)","comment":"Concise style tag","patterns":[{"include":"#concise-open-tag-content"},{"include":"#concise-style-block"},{"include":"#concise-style-line"}],"while":"(?=^\\\\1\\\\s+(\\\\S|$))"},{"begin":"^(\\\\s*)(?=script\\\\b)","comment":"Concise script tag","patterns":[{"include":"#concise-open-tag-content"},{"include":"#concise-script-block"},{"include":"#concise-script-line"}],"while":"(?=^\\\\1\\\\s+(\\\\S|$))"},{"begin":"^(\\\\s*)(?=[a-zA-Z0-9_$@])","comment":"Normal concise tag","patterns":[{"include":"#concise-open-tag-content"},{"include":"#content-concise-mode"}],"while":"(?=^\\\\1\\\\s+(\\\\S|$))"}]},{"include":"#invalid"}]},"content-embedded-script":{"name":"meta.embedded.js","patterns":[{"include":"#placeholder"},{"include":"source.js"}]},"content-embedded-style":{"name":"meta.embedded.css","patterns":[{"include":"#placeholder"},{"include":"source.css"}]},"content-embedded-style-less":{"name":"meta.embedded.css.less","patterns":[{"include":"#placeholder"},{"include":"source.css.less"}]},"content-embedded-style-scss":{"name":"meta.embedded.css.scss","patterns":[{"include":"#placeholder"},{"include":"source.css.scss"}]},"content-html-mode":{"comment":"HTML mode content block.","patterns":[{"include":"#scriptlet"},{"include":"#html-comments"},{"include":"#tag-html"},{"match":"\\\\\\\\.","name":"string"},{"include":"#placeholder"},{"match":".+?","name":"string"}]},"html-args-or-method":{"patterns":[{"include":"#javascript-args"},{"begin":"(?<=\\\\))\\\\s*(?=\\\\{)","comment":"Attribute method shorthand following parens","contentName":"source.js","end":"(?<=\\\\})","name":"meta.embedded.js","patterns":[{"include":"source.js"}]}]},"html-comments":{"patterns":[{"begin":"\\\\s*(<!(--)?)","beginCaptures":{"1":{"name":"punctuation.definition.comment.marko"}},"comment":"HTML comments, doctypes & cdata","end":"\\\\2>","endCaptures":{"0":{"name":"punctuation.definition.comment.marko"}},"name":"comment.block.marko"},{"begin":"\\\\s*(<html-comment>)","beginCaptures":{"1":{"name":"punctuation.definition.comment.marko"}},"comment":"Preserved HTML comment tag","end":"</html-comment>","endCaptures":{"0":{"name":"punctuation.definition.comment.marko"}},"name":"comment.block.marko"}]},"invalid":{"match":"[^\\\\s]","name":"invalid.illegal.character-not-allowed-here.marko"},"javascript-args":{"begin":"(?=\\\\()","comment":"Javascript style arguments","contentName":"source.js","end":"(?<=\\\\))","name":"meta.embedded.js","patterns":[{"include":"source.js"}]},"javascript-comment-line":{"captures":{"0":{"patterns":[{"include":"source.js"}]}},"comment":"JavaScript // single line comment","contentName":"source.js","match":"\\\\s*//.*$"},"javascript-comment-multiline":{"begin":"\\\\s*(?=/\\\\*)","comment":"JavaScript /* block comment */","contentName":"source.js","end":"(?<=\\\\*/)","patterns":[{"include":"source.js"}]},"javascript-comments":{"patterns":[{"include":"#javascript-comment-multiline"},{"include":"#javascript-comment-line"}]},"javascript-enclosed":{"comment":"Matches JavaScript content and ensures enclosed blocks are matched.","patterns":[{"include":"#javascript-comments"},{"include":"#javascript-args"},{"begin":"(?={)","end":"(?<=})","patterns":[{"include":"source.js"}]},{"begin":"(?=\\\\[)","end":"(?<=])","patterns":[{"include":"source.js"}]},{"begin":"(?=\\")","end":"(?<=\\")","patterns":[{"include":"source.js"}]},{"begin":"(?=\')","end":"(?<=\')","patterns":[{"include":"source.js"}]},{"begin":"(?=`)","end":"(?<=`)","patterns":[{"include":"source.js"}]},{"begin":"/(?!<[\\\\]})A-Z0-9.<%]\\\\s*/)(?!/?>|$)","captures":{"0":{"name":"string.regexp.js"}},"contentName":"source.js","end":"/[gimsuy]*","patterns":[{"include":"source.js#regexp"},{"include":"source.js"}]},{"begin":"\\\\s*(?:(?:\\\\b(?:new|typeof|instanceof|in)\\\\b)|\\\\&\\\\&|\\\\|\\\\||[\\\\^|&]|[!=]=|[!=]==|<|<[=<]|=>|[?:]|[-+*%](?!-))","captures":{"0":{"patterns":[{"include":"source.js"}]}},"end":"(?=\\\\S)"}]},"javascript-expression":{"patterns":[{"include":"#javascript-enclosed"},{"captures":{"0":{"patterns":[{"include":"source.js"}]}},"comment":"Match identifiers and member expressions","match":"[0-9a-zA-Z$_.]+"}]},"javascript-statement":{"patterns":[{"include":"#javascript-enclosed"},{"include":"source.js"}]},"open-tag-content":{"patterns":[{"include":"#tag-before-attrs"},{"begin":"(?= )","comment":"Attributes begin after the first space within the tag name","end":"(?=/?>)","patterns":[{"include":"#attrs"}]}]},"placeholder":{"begin":"\\\\$!?{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.js"}},"comment":"${ } placeholder","contentName":"source.js","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.js"}},"patterns":[{"include":"source.js"}]},"scriptlet":{"begin":"^\\\\s*(\\\\$)\\\\s+","beginCaptures":{"1":{"name":"keyword.control.scriptlet.marko"}},"comment":"An inline JavaScript scriptlet.","contentName":"source.js","end":"$","name":"meta.embedded.js","patterns":[{"include":"#javascript-statement"}]},"tag-before-attrs":{"comment":"Everything in a tag before the attributes content","patterns":[{"include":"#tag-name"},{"comment":"Shorthand class or ID attribute","match":"[#.][a-zA-Z0-9_$][a-zA-Z0-9_$-]*","name":"entity.other.attribute-name.marko"},{"begin":"/(?!/)","beginCaptures":{"0":{"name":"punctuation.separator.key-value.marko"}},"comment":"Variable for a tag","contentName":"source.js","end":"(?=:?\\\\=|\\\\s|>|$|\\\\||\\\\(|/)","name":"meta.embedded.js","patterns":[{"comment":"Match identifiers","match":"[a-zA-Z$_][0-9a-zA-Z$_]*","name":"variable.other.constant.object.js"},{"include":"source.js#object-binding-pattern"},{"include":"source.js#array-binding-pattern"},{"include":"source.js#var-single-variable"},{"include":"#javascript-expression"}]},{"applyEndPatternLast":1,"begin":"\\\\s*(:?=)\\\\s*","beginCaptures":{"1":{"patterns":[{"include":"source.js"}]}},"comment":"Default attribute value","contentName":"source.js","end":"(?=.|$)","name":"meta.embedded.js","patterns":[{"include":"#javascript-expression"}]},{"begin":"\\\\|","beginCaptures":{"0":{"name":"punctuation.section.scope.begin.marko"}},"comment":"Parameters for a tag","end":"\\\\|","endCaptures":{"0":{"name":"punctuation.section.scope.end.marko"}},"patterns":[{"include":"source.js#function-parameters-body"},{"include":"source.js"}]},{"include":"#html-args-or-method"}]},"tag-html":{"comment":"Matches an HTML tag and its contents","patterns":[{"begin":"\\\\s*(<)(?=(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)\\\\b)","beginCaptures":{"1":{"name":"punctuation.definition.tag.end.marko"}},"comment":"HTML void elements","end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.marko"}},"patterns":[{"include":"#open-tag-content"}]},{"begin":"\\\\s*(<)(?=style\\\\.less\\\\b)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.marko"}},"comment":"HTML style tag with less","end":"/>|(?<=\\\\>)","endCaptures":{"0":{"name":"punctuation.definition.tag.end.marko"}},"patterns":[{"include":"#open-tag-content"},{"begin":">","beginCaptures":{"0":{"name":"punctuation.definition.tag.end.marko"}},"comment":"Style body content","contentName":"source.less","end":"\\\\s*(</)(style)?(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.marko"},"2":{"patterns":[{"include":"#tag-name"}]},"3":{"name":"punctuation.definition.tag.end.marko"}},"patterns":[{"include":"#content-embedded-style-less"}]}]},{"begin":"\\\\s*(<)(?=style\\\\.scss\\\\b)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.marko"}},"comment":"HTML style tag with scss","end":"/>|(?<=\\\\>)","endCaptures":{"0":{"name":"punctuation.definition.tag.end.marko"}},"patterns":[{"include":"#open-tag-content"},{"begin":">","beginCaptures":{"0":{"name":"punctuation.definition.tag.end.marko"}},"comment":"Style body content","contentName":"source.less","end":"\\\\s*(</)(style)?(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.marko"},"2":{"patterns":[{"include":"#tag-name"}]},"3":{"name":"punctuation.definition.tag.end.marko"}},"patterns":[{"include":"#content-embedded-style-scss"}]}]},{"begin":"\\\\s*(<)(?=style\\\\b)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.marko"}},"comment":"HTML style tag","end":"/>|(?<=\\\\>)","endCaptures":{"0":{"name":"punctuation.definition.tag.end.marko"}},"patterns":[{"include":"#open-tag-content"},{"begin":">","beginCaptures":{"0":{"name":"punctuation.definition.tag.end.marko"}},"comment":"Style body content","contentName":"source.css","end":"\\\\s*(</)(style)?(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.marko"},"2":{"patterns":[{"include":"#tag-name"}]},"3":{"name":"punctuation.definition.tag.end.marko"}},"patterns":[{"include":"#content-embedded-style"}]}]},{"begin":"\\\\s*(<)(?=script\\\\b)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.marko"}},"comment":"HTML script tag","end":"/>|(?<=\\\\>)","endCaptures":{"0":{"name":"punctuation.definition.tag.end.marko"}},"patterns":[{"include":"#open-tag-content"},{"begin":">","beginCaptures":{"0":{"name":"punctuation.definition.tag.end.marko"}},"comment":"Script body content","contentName":"source.js","end":"\\\\s*(</)(script)?(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.marko"},"2":{"patterns":[{"include":"#tag-name"}]},"3":{"name":"punctuation.definition.tag.end.marko"}},"patterns":[{"include":"#content-embedded-script"}]}]},{"begin":"\\\\s*(<)(?=[a-zA-Z0-9_$@])","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.marko"}},"comment":"HTML normal tag","end":"/>|(?<=\\\\>)","endCaptures":{"0":{"name":"punctuation.definition.tag.end.marko"}},"patterns":[{"include":"#open-tag-content"},{"begin":">","beginCaptures":{"0":{"name":"punctuation.definition.tag.end.marko"}},"comment":"Body content","end":"\\\\s*(</)([a-zA-Z0-9_$:@-]+)?(.*?)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.marko"},"2":{"patterns":[{"include":"#tag-name"}]},"3":{"patterns":[{"include":"#invalid"}]},"4":{"name":"punctuation.definition.tag.end.marko"}},"patterns":[{"include":"#content-html-mode"}]}]}]},"tag-name":{"patterns":[{"begin":"\\\\${","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.js"}},"comment":"Dynamic tag.","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.js"}},"patterns":[{"include":"source.js"}]},{"captures":{"1":{"name":"entity.name.tag.marko"},"2":{"name":"storage.type.marko.css"},"3":{"patterns":[{"comment":"Core tag.","match":"(attrs|return|import)(?=\\\\b)","name":"support.type.builtin.marko"},{"comment":"Core tag.","match":"(for|if|while|else-if|else|macro|tag|await|let|const|effect|set|get|id|lifecycle)(?=\\\\b)","name":"support.function.marko"},{"comment":"Attribute tag.","match":"@.+","name":"entity.other.attribute-name.marko"},{"comment":"Native or userland tag.","match":".+","name":"entity.name.tag.marko"}]}},"match":"(style)\\\\.([a-zA-Z0-9$_-]+(?:\\\\.[a-zA-Z0-9$_-]+)*)|([a-zA-Z0-9_$@][a-zA-Z0-9_$@:-]*)"}]}},"scopeName":"text.marko","embeddedLangs":["css","less","scss","javascript"]}')),kre=[...ue,...XB,...zo,...J,wre]});var dR={};x(dR,{default:()=>_re});var Cre,_re,uR=_(()=>{Cre=Object.freeze(JSON.parse(`{"displayName":"MATLAB","fileTypes":["m"],"name":"matlab","patterns":[{"comment":"This and #all_after_command_dual are split out so #command_dual can be excluded in things like (), {}, []","include":"#all_before_command_dual"},{"include":"#command_dual"},{"include":"#all_after_command_dual"}],"repository":{"all_after_command_dual":{"patterns":[{"include":"#string"},{"include":"#line_continuation"},{"include":"#comments"},{"include":"#conjugate_transpose"},{"include":"#transpose"},{"include":"#constants"},{"include":"#variables"},{"include":"#numbers"},{"include":"#operators"}]},"all_before_command_dual":{"patterns":[{"include":"#classdef"},{"include":"#function"},{"include":"#blocks"},{"include":"#control_statements"},{"include":"#global_persistent"},{"include":"#parens"},{"include":"#square_brackets"},{"include":"#indexing_curly_brackets"},{"include":"#curly_brackets"}]},"blocks":{"patterns":[{"begin":"\\\\s*(?:^|[\\\\s,;])(for)\\\\b","beginCaptures":{"1":{"name":"keyword.control.for.matlab"}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.for.matlab"}},"name":"meta.for.matlab","patterns":[{"include":"$self"}]},{"begin":"\\\\s*(?:^|[\\\\s,;])(if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.if.matlab"}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.if.matlab"},"2":{"patterns":[{"include":"$self"}]}},"name":"meta.if.matlab","patterns":[{"captures":{"2":{"name":"keyword.control.elseif.matlab"},"3":{"patterns":[{"include":"$self"}]}},"end":"^","match":"(\\\\s*)(?:^|[\\\\s,;])(elseif)\\\\b(.*)$\\\\n?","name":"meta.elseif.matlab"},{"captures":{"2":{"name":"keyword.control.else.matlab"},"3":{"patterns":[{"include":"$self"}]}},"end":"^","match":"(\\\\s*)(?:^|[\\\\s,;])(else)\\\\b(.*)?$\\\\n?","name":"meta.else.matlab"},{"include":"$self"}]},{"begin":"\\\\s*(?:^|[\\\\s,;])(parfor)\\\\b","beginCaptures":{"1":{"name":"keyword.control.for.matlab"}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.for.matlab"}},"name":"meta.parfor.matlab","patterns":[{"begin":"\\\\G(?!$)","end":"$\\\\n?","name":"meta.parfor-quantity.matlab","patterns":[{"include":"$self"}]},{"include":"$self"}]},{"begin":"\\\\s*(?:^|[\\\\s,;])(spmd)\\\\b","beginCaptures":{"1":{"name":"keyword.control.spmd.matlab"}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.spmd.matlab"}},"name":"meta.spmd.matlab","patterns":[{"begin":"\\\\G(?!$)","end":"$\\\\n?","name":"meta.spmd-statement.matlab","patterns":[{"include":"$self"}]},{"include":"$self"}]},{"begin":"\\\\s*(?:^|[\\\\s,;])(switch)\\\\b","beginCaptures":{"1":{"name":"keyword.control.switch.matlab"}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.switch.matlab"}},"name":"meta.switch.matlab","patterns":[{"captures":{"2":{"name":"keyword.control.case.matlab"},"3":{"patterns":[{"include":"$self"}]}},"end":"^","match":"(\\\\s*)(?:^|[\\\\s,;])(case)\\\\b(.*)$\\\\n?","name":"meta.case.matlab"},{"captures":{"2":{"name":"keyword.control.otherwise.matlab"},"3":{"patterns":[{"include":"$self"}]}},"end":"^","match":"(\\\\s*)(?:^|[\\\\s,;])(otherwise)\\\\b(.*)?$\\\\n?","name":"meta.otherwise.matlab"},{"include":"$self"}]},{"begin":"\\\\s*(?:^|[\\\\s,;])(try)\\\\b","beginCaptures":{"1":{"name":"keyword.control.try.matlab"}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.try.matlab"}},"name":"meta.try.matlab","patterns":[{"captures":{"2":{"name":"keyword.control.catch.matlab"},"3":{"patterns":[{"include":"$self"}]}},"end":"^","match":"(\\\\s*)(?:^|[\\\\s,;])(catch)\\\\b(.*)?$\\\\n?","name":"meta.catch.matlab"},{"include":"$self"}]},{"begin":"\\\\s*(?:^|[\\\\s,;])(while)\\\\b","beginCaptures":{"1":{"name":"keyword.control.while.matlab"}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.while.matlab"}},"name":"meta.while.matlab","patterns":[{"include":"$self"}]}]},"braced_validator_list":{"begin":"\\\\s*({)\\\\s*","beginCaptures":{"1":{"name":"storage.type.matlab"}},"comment":"Validator functions. Treated as a recursive group to permit nested brackets, quotes, etc.","end":"(})","endCaptures":{"1":{"name":"storage.type.matlab"}},"patterns":[{"include":"#braced_validator_list"},{"include":"#validator_strings"},{"include":"#line_continuation"},{"captures":{"1":{"name":"storage.type.matlab"}},"match":"([^{}}'\\"\\\\.]+)"},{"match":"\\\\.","name":"storage.type.matlab"}]},"classdef":{"patterns":[{"begin":"(^\\\\s*)(classdef)\\\\b\\\\s*(.*)","beginCaptures":{"2":{"name":"storage.type.class.matlab"},"3":{"patterns":[{"captures":{"1":{"patterns":[{"match":"[a-zA-Z][a-zA-Z0-9_]*","name":"variable.parameter.class.matlab"},{"begin":"=\\\\s*","end":",|(?=\\\\))","patterns":[{"match":"true|false","name":"constant.language.boolean.matlab"},{"include":"#string"}]}]},"2":{"name":"meta.class-declaration.matlab"},"3":{"name":"entity.name.section.class.matlab"},"4":{"name":"keyword.operator.other.matlab"},"5":{"patterns":[{"match":"[a-zA-Z][a-zA-Z0-9_]*(\\\\.[a-zA-Z][a-zA-Z0-9_]*)*","name":"entity.other.inherited-class.matlab"},{"match":"&","name":"keyword.operator.other.matlab"}]},"6":{"patterns":[{"include":"$self"}]}},"match":"(\\\\([^)]*\\\\))?\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)(?:\\\\s*(<)\\\\s*([^%]*))?)\\\\s*($|(?=(%|...)).*)"}]}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.class.matlab"}},"name":"meta.class.matlab","patterns":[{"begin":"(^\\\\s*)(properties)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))","beginCaptures":{"2":{"name":"keyword.control.properties.matlab"},"3":{"patterns":[{"match":"[a-zA-Z][a-zA-Z0-9_]*","name":"variable.parameter.properties.matlab"},{"begin":"=\\\\s*","end":",|(?=\\\\))","patterns":[{"match":"true|false","name":"constant.language.boolean.matlab"},{"match":"public|protected|private","name":"constant.language.access.matlab"}]}]}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.properties.matlab"}},"name":"meta.properties.matlab","patterns":[{"include":"#validators"},{"include":"$self"}]},{"begin":"(^\\\\s*)(methods)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))","beginCaptures":{"2":{"name":"keyword.control.methods.matlab"},"3":{"patterns":[{"match":"[a-zA-Z][a-zA-Z0-9_]*","name":"variable.parameter.methods.matlab"},{"begin":"=\\\\s*","end":",|(?=\\\\))","patterns":[{"match":"true|false","name":"constant.language.boolean.matlab"},{"match":"public|protected|private","name":"constant.language.access.matlab"}]}]}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.methods.matlab"}},"name":"meta.methods.matlab","patterns":[{"include":"$self"}]},{"begin":"(^\\\\s*)(events)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))","beginCaptures":{"2":{"name":"keyword.control.events.matlab"},"3":{"patterns":[{"match":"[a-zA-Z][a-zA-Z0-9_]*","name":"variable.parameter.events.matlab"},{"begin":"=\\\\s*","end":",|(?=\\\\))","patterns":[{"match":"true|false","name":"constant.language.boolean.matlab"},{"match":"public|protected|private","name":"constant.language.access.matlab"}]}]}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.events.matlab"}},"name":"meta.events.matlab","patterns":[{"include":"$self"}]},{"begin":"(^\\\\s*)(enumeration)\\\\b([^%]*)\\\\s*($|(?=%))","beginCaptures":{"2":{"name":"keyword.control.enumeration.matlab"}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.enumeration.matlab"}},"name":"meta.enumeration.matlab","patterns":[{"include":"$self"}]},{"include":"$self"}]}]},"command_dual":{"captures":{"1":{"name":"string.interpolated.matlab"},"2":{"name":"variable.other.command.matlab"},"28":{"name":"comment.line.percentage.matlab"}},"comment":" 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1516 17 18 19 20 21 22 23 24 25 26 27 28","match":"^\\\\s*(([b-df-hk-moq-zA-HJ-MO-Z]\\\\w*|a|an|a([A-Za-mo-z0-9_]\\\\w*|n[A-Za-rt-z0-9_]\\\\w*|ns\\\\w+)|e|ep|e([A-Za-oq-z0-9_]\\\\w*|p[A-Za-rt-z0-9_]\\\\w*|ps\\\\w+)|in|i([A-Za-mo-z0-9_]\\\\w*|n[A-Za-eg-z0-9_]\\\\w*|nf\\\\w+)|I|In|I([A-Za-mo-z0-9_]\\\\w*|n[A-Za-eg-z0-9_]\\\\w*|nf\\\\w+)|j\\\\w+|N|Na|N([A-Zb-z0-9_]\\\\w*|a[A-MO-Za-z0-9_]\\\\w*|aN\\\\w+)|n|na|nar|narg|nargi|nargo|nargou|n([A-Zb-z0-9_]\\\\w*|a([A-Za-mo-qs-z0-9_]\\\\w*|n\\\\w+|r([A-Za-fh-z0-9_]\\\\w*|g([A-Za-hj-nq-z0-9_]\\\\w*|i([A-Za-mo-z0-9_]\\\\w*|n\\\\w+)|o([A-Za-tv-z0-9_]\\\\w*|u([A-Za-su-z]\\\\w*|t\\\\w+))))))|p|p[A-Za-hj-z0-9_]\\\\w*|pi\\\\w+)\\\\s+((([^\\\\s;,%()=.{&|~<>:+\\\\-*/\\\\\\\\@^'\\"]|(?=')|(?=\\"))|(\\\\.\\\\^|\\\\.\\\\*|\\\\./|\\\\.\\\\\\\\|\\\\.'|\\\\.\\\\(|&&|==|\\\\|\\\\||&(?=[^&])|\\\\|(?=[^\\\\|])|~=|<=|>=|~(?!=)|<(?!=)|>(?!=)|:|\\\\+|-|\\\\*|/|\\\\\\\\|@|\\\\^)([^\\\\s]|\\\\s*(?=%)|\\\\s+$|\\\\s+(,|;|\\\\)|}|\\\\]|&|\\\\||<|>|=|:|\\\\*|/|\\\\\\\\|\\\\^|@|(\\\\.[^\\\\d.]|\\\\.\\\\.[^.])))|(\\\\.[^^*/\\\\\\\\'(\\\\sA-Za-z]))([^%]|'[^']*'|\\"[^\\"]*\\")*|(\\\\.(?=\\\\s)|\\\\.[A-Za-z]|(?={))([^(=\\\\'\\"%]|==|'[^']*'|\\"[^\\"]*\\"|\\\\(|\\\\([^)%]*\\\\)|\\\\[|\\\\[[^\\\\]%]*\\\\]|{|{[^}%]*})*(\\\\.\\\\.\\\\.[^%]*)?((?=%)|$)))(%.*)?$"},"comment_block":{"begin":"(^[\\\\s]*)%\\\\{[^\\\\n\\\\S]*+\\\\n","beginCaptures":{"1":{"name":"punctuation.definition.comment.matlab"}},"end":"^[\\\\s]*%\\\\}[^\\\\n\\\\S]*+(?:\\\\n|$)","name":"comment.block.percentage.matlab","patterns":[{"include":"#comment_block"},{"match":"^[^\\\\n]*\\\\n"}]},"comments":{"patterns":[{"begin":"(^[ \\\\t]+)?(?=%%\\\\s)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"}},"end":"(?!\\\\G)","patterns":[{"begin":"%%","beginCaptures":{"0":{"name":"punctuation.definition.comment.matlab"}},"end":"\\\\n","name":"comment.line.double-percentage.matlab","patterns":[{"begin":"\\\\G[^\\\\S\\\\n]*(?![\\\\n\\\\s])","contentName":"meta.cell.matlab","end":"(?=\\\\n)"}]}]},{"include":"#comment_block"},{"begin":"(^[ \\\\t]+)?(?=%)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.matlab"}},"end":"(?!\\\\G)","patterns":[{"begin":"%","beginCaptures":{"0":{"name":"punctuation.definition.comment.matlab"}},"end":"\\\\n","name":"comment.line.percentage.matlab"}]}]},"conjugate_transpose":{"match":"((?<=[^\\\\s])|(?<=\\\\])|(?<=\\\\))|(?<=\\\\}))'","name":"keyword.operator.transpose.matlab"},"constants":{"comment":"MATLAB Constants","match":"(?<!\\\\.)\\\\b(eps|false|Inf|inf|intmax|intmin|namelengthmax|NaN|nan|on|off|realmax|realmin|true|pi)\\\\b","name":"constant.language.matlab"},"control_statements":{"captures":{"1":{"name":"keyword.control.matlab"}},"match":"\\\\s*(?:^|[\\\\s,;])(break|continue|return)\\\\b","name":"meta.control.matlab"},"curly_brackets":{"begin":"\\\\{","comment":"We don't include $self here to avoid matching command syntax inside (), [], {}","end":"\\\\}","patterns":[{"include":"#end_in_parens"},{"include":"#all_before_command_dual"},{"include":"#all_after_command_dual"},{"include":"#end_in_parens"},{"comment":"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written","include":"#block_keywords"}]},"end_in_parens":{"comment":"end as operator symbol","match":"\\\\bend\\\\b","name":"keyword.operator.symbols.matlab"},"function":{"patterns":[{"begin":"(^\\\\s*)(function)\\\\s+(?:(?:(\\\\[)([^\\\\]]*)(\\\\])|([a-zA-Z][a-zA-Z0-9_]*))\\\\s*=\\\\s*)?([a-zA-Z][a-zA-Z0-9_]*(\\\\.[a-zA-Z][a-zA-Z0-9_]*)*)\\\\s*","beginCaptures":{"2":{"name":"storage.type.function.matlab"},"3":{"name":"punctuation.definition.arguments.begin.matlab"},"4":{"patterns":[{"match":"\\\\w+","name":"variable.parameter.output.matlab"}]},"5":{"name":"punctuation.definition.arguments.end.matlab"},"6":{"name":"variable.parameter.output.function.matlab"},"7":{"name":"entity.name.function.matlab"}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b(\\\\s*\\\\n)?","endCaptures":{"1":{"name":"keyword.control.end.function.matlab"}},"name":"meta.function.matlab","patterns":[{"begin":"\\\\G\\\\(","end":"\\\\)","name":"meta.arguments.function.matlab","patterns":[{"include":"#line_continuation"},{"match":"\\\\w+","name":"variable.parameter.input.matlab"}]},{"begin":"(^\\\\s*)(arguments)\\\\b([^%]*)\\\\s*(\\\\([^)]*\\\\))?\\\\s*($|(?=%))","beginCaptures":{"2":{"name":"keyword.control.arguments.matlab"},"3":{"patterns":[{"match":"[a-zA-Z][a-zA-Z0-9_]*","name":"variable.parameter.arguments.matlab"}]}},"end":"\\\\s*(?:^|[\\\\s,;])(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.arguments.matlab"}},"name":"meta.arguments.matlab","patterns":[{"include":"#validators"},{"include":"$self"}]},{"include":"$self"}]}]},"global_persistent":{"captures":{"1":{"name":"keyword.control.globalpersistent.matlab"}},"match":"^\\\\s*(global|persistent)\\\\b","name":"meta.globalpersistent.matlab"},"indexing_curly_brackets":{"Comment":"Match identifier{idx, idx, } and stop at newline without ... This helps with partially written code like x{idx ","begin":"([a-zA-Z][a-zA-Z0-9_\\\\.]*\\\\s*)\\\\{","beginCaptures":{"1":{"patterns":[{"include":"$self"}]}},"comment":"We don't include $self here to avoid matching command syntax inside (), [], {}","end":"(\\\\}|(?<!\\\\.\\\\.\\\\.).\\\\n)","patterns":[{"include":"#end_in_parens"},{"include":"#all_before_command_dual"},{"include":"#all_after_command_dual"},{"include":"#end_in_parens"},{"comment":"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written","include":"#block_keywords"}]},"line_continuation":{"captures":{"1":{"name":"keyword.operator.symbols.matlab"},"2":{"name":"comment.line.continuation.matlab"}},"comment":"Line continuations","match":"(\\\\.\\\\.\\\\.)(.*)$","name":"meta.linecontinuation.matlab"},"numbers":{"comment":"Valid numbers: 1, .1, 1.1, .1e1, 1.1e1, 1e1, 1i, 1j, 1e2j","match":"(?<=[\\\\s\\\\-\\\\+\\\\*\\\\/\\\\\\\\=:\\\\[\\\\(\\\\{,]|^)\\\\d*\\\\.?\\\\d+([eE][+-]?\\\\d)?([0-9&&[^\\\\.]])*(i|j)?\\\\b","name":"constant.numeric.matlab"},"operators":{"comment":"Operator symbols","match":"(?<=\\\\s)(==|~=|>|>=|<|<=|&|&&|:|\\\\||\\\\|\\\\||\\\\+|-|\\\\*|\\\\.\\\\*|/|\\\\./|\\\\\\\\|\\\\.\\\\\\\\|\\\\^|\\\\.\\\\^)(?=\\\\s)","name":"keyword.operator.symbols.matlab"},"parens":{"begin":"\\\\(","comment":"We don't include $self here to avoid matching command syntax inside (), [], {}","end":"(\\\\)|(?<!\\\\.\\\\.\\\\.).\\\\n)","patterns":[{"include":"#end_in_parens"},{"include":"#all_before_command_dual"},{"include":"#all_after_command_dual"},{"comment":"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written","include":"#block_keywords"}]},"square_brackets":{"begin":"\\\\[","comment":"We don't include $self here to avoid matching command syntax inside (), [], {}","end":"\\\\]","patterns":[{"include":"#all_before_command_dual"},{"include":"#all_after_command_dual"},{"comment":"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written","include":"#block_keywords"}]},"string":{"patterns":[{"captures":{"1":{"name":"string.interpolated.matlab"},"2":{"name":"punctuation.definition.string.begin.matlab"}},"comment":"Shell command","match":"^\\\\s*((!).*$\\\\n?)"},{"begin":"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"comment":"Character vector literal (single-quoted)","end":"'(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\s|;|:|,))","endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}},"name":"string.quoted.single.matlab","patterns":[{"match":"''","name":"constant.character.escape.matlab"},{"match":"'(?=.)","name":"invalid.illegal.unescaped-quote.matlab"},{"comment":"Operator symbols","match":"((\\\\%([\\\\+\\\\-0]?\\\\d{0,3}(\\\\.\\\\d{1,3})?)(c|d|e|E|f|g|G|s|((b|t)?(o|u|x|X))))|\\\\%\\\\%|\\\\\\\\(b|f|n|r|t|\\\\\\\\))","name":"constant.character.escape.matlab"}]},{"begin":"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.matlab"}},"comment":"String literal (double-quoted)","end":"\\"(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\||\\\\s|;|:|,))","endCaptures":{"0":{"name":"punctuation.definition.string.end.matlab"}},"name":"string.quoted.double.matlab","patterns":[{"match":"\\"\\"","name":"constant.character.escape.matlab"},{"match":"\\"(?=.)","name":"invalid.illegal.unescaped-quote.matlab"}]}]},"transpose":{"match":"\\\\.'","name":"keyword.operator.transpose.matlab"},"validator_strings":{"comment":"Simplified string patterns nested inside validator functions which don't change scopes of matches.","patterns":[{"patterns":[{"begin":"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)'","comment":"Character vector literal (single-quoted)","end":"'(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\s|;|:|,))","name":"storage.type.matlab","patterns":[{"match":"''"},{"match":"'(?=.)"},{"match":"([^']+)"}]},{"begin":"((?<=(\\\\[|\\\\(|\\\\{|=|\\\\s|;|:|,|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^))|^)\\"","comment":"String literal (double-quoted)","end":"\\"(?=(\\\\[|\\\\(|\\\\{|\\\\]|\\\\)|\\\\}|=|~|<|>|&|\\\\||-|\\\\+|\\\\*|/|\\\\\\\\|\\\\.|\\\\^|\\\\||\\\\s|;|:|,))","name":"storage.type.matlab","patterns":[{"match":"\\"\\""},{"match":"\\"(?=.)"},{"match":"[^\\"]+"}]}]}]},"validators":{"begin":"\\\\s*[;]?\\\\s*([a-zA-Z][a-zA-Z0-9_\\\\.\\\\?]*)","comment":"Property and argument validation. Match an identifier allowing . and ?.","end":"([;\\\\n%=].*)","endCaptures":{"1":{"patterns":[{"captures":{"1":{"patterns":[{"include":"$self"}]}},"comment":"Match comments","match":"([%].*)"},{"captures":{"1":{"patterns":[{"include":"$self"}]}},"comment":"Handle things like arg = val; nextArg","match":"(=[^;]*)"},{"captures":{"1":{"patterns":[{"include":"#validators"}]}},"comment":"End of property/argument patterns which start a new property/argument. Look for beginning of identifier after semicolon. Otherwise treat as regular code.","match":"([\\\\n;]\\\\s*[a-zA-Z].*)"},{"include":"$self"}]}},"patterns":[{"include":"#line_continuation"},{"comment":"Size declaration","match":"\\\\s*(\\\\([^\\\\)]*\\\\))","name":"storage.type.matlab"},{"comment":"Type declaration","match":"([a-zA-Z][a-zA-Z0-9_\\\\.]*)","name":"storage.type.matlab"},{"include":"#braced_validator_list"}]},"variables":{"comment":"MATLAB variables","match":"(?<!\\\\.)\\\\b(nargin|nargout|varargin|varargout)\\\\b","name":"variable.other.function.matlab"}},"scopeName":"source.matlab"}`)),_re=[Cre]});var pR={};x(pR,{default:()=>xre});var Bre,xre,mR=_(()=>{nd();Qc();Ec();Bre=Object.freeze(JSON.parse(`{"displayName":"MDC","injectionSelector":"L:text.html.markdown","name":"mdc","patterns":[{"include":"text.html.markdown#frontMatter"},{"include":"#block"}],"repository":{"attribute":{"patterns":[{"captures":{"2":{"name":"entity.other.attribute-name.html"},"3":{"patterns":[{"include":"#attribute-interior"}]}},"match":"(([^=><\\\\s]*)(=[\\"]([^\\"]*)([\\"])|[']([^']*)(['])|=[^\\\\s'\\"}]*)?\\\\s*)"}]},"attribute-interior":{"patterns":[{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.key-value.html"}},"end":"(?<=[^\\\\s=])(?!\\\\s*=)|(?=/?>)","patterns":[{"match":"([^\\\\s\\"'=<>\`/]|/(?!>))+","name":"string.unquoted.html"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.double.html","patterns":[{"include":"#entities"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.single.html","patterns":[{"include":"#entities"}]},{"match":"=","name":"invalid.illegal.unexpected-equals-sign.html"}]}]},"attributes":{"captures":{"1":{"name":"punctuation.definition.tag.start.component"},"3":{"patterns":[{"include":"#attribute"}]},"4":{"name":"punctuation.definition.tag.end.component"}},"match":"(({)([^{]*)(}))","name":"attributes.mdc"},"block":{"patterns":[{"include":"#component_block"},{"include":"text.html.markdown#separator"},{"include":"#heading"},{"include":"#blockquote"},{"include":"#lists"},{"include":"text.html.markdown#fenced_code_block"},{"include":"text.html.markdown#link-def"},{"include":"text.html.markdown#html"},{"include":"#paragraph"}]},"blockquote":{"begin":"(^|\\\\G)[ ]*(>) ?","captures":{"2":{"name":"punctuation.definition.quote.begin.markdown"}},"name":"markup.quote.markdown","patterns":[{"include":"#block"}],"while":"(^|\\\\G)\\\\s*(>) ?"},"component_block":{"begin":"(^|\\\\G)(\\\\s*)(:{2,})(?i:(\\\\w[\\\\w\\\\d-]+)(\\\\s*|\\\\s*({[^{]*}))$)","beginCaptures":{"3":{"name":"punctuation.definition.tag.start.mdc"},"4":{"name":"entity.name.tag.mdc"},"5":{"patterns":[{"include":"#attributes"}]}},"end":"(^|\\\\G)(\\\\2)(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.tag.end.mdc"}},"name":"block.component.mdc","patterns":[{"captures":{"2":{"name":"punctuation.definition.tag.end.mdc"}},"match":"(^|\\\\G)\\\\s*([:]{2,})$"},{"begin":"(^|\\\\G)(\\\\s*)(-{3})(\\\\s*)$","end":"(^|\\\\G)(\\\\s*(-{3})(\\\\s*)$)","patterns":[{"include":"source.yaml"}]},{"captures":{"2":{"name":"entity.other.attribute-name.html"},"3":{"name":"comment.block.html"}},"match":"^(\\\\s*)(#[\\\\w\\\\-\\\\_]*)\\\\s*(<!--(.*)-->)?$"},{"include":"#block"}]},"component_inline":{"captures":{"2":{"name":"punctuation.definition.tag.start.component"},"3":{"name":"entity.name.tag.component"},"5":{"patterns":[{"include":"#attributes"}]},"6":{"patterns":[{"include":"#span"}]},"7":{"patterns":[{"include":"#span"}]},"8":{"patterns":[{"include":"#attributes"}]}},"match":"(^|\\\\G|\\\\s+)(:)(?i:(\\\\w[\\\\w\\\\d-]*))(({[^}]*})(\\\\[[^\\\\]]*\\\\])?|(\\\\[[^\\\\]]*\\\\])({[^}]*})?)?\\\\s","name":"inline.component.mdc"},"entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.html"},"912":{"name":"punctuation.definition.entity.html"}},"match":"(&)(?=[a-zA-Z])((a(s(ymp(eq)?|cr|t)|n(d(slope|d|v|and)?|g(s(t|ph)|zarr|e|le|rt(vb(d)?)?|msd(a(h|c|d|e|f|a|g|b))?)?)|c(y|irc|d|ute|E)?|tilde|o(pf|gon)|uml|p(id|os|prox(eq)?|e|E|acir)?|elig|f(r)?|w(conint|int)|l(pha|e(ph|fsym))|acute|ring|grave|m(p|a(cr|lg))|breve)|A(s(sign|cr)|nd|MP|c(y|irc)|tilde|o(pf|gon)|uml|pplyFunction|fr|Elig|lpha|acute|ring|grave|macr|breve))|(B(scr|cy|opf|umpeq|e(cause|ta|rnoullis)|fr|a(ckslash|r(v|wed))|reve)|b(s(cr|im(e)?|ol(hsub|b)?|emi)|n(ot|e(quiv)?)|c(y|ong)|ig(s(tar|qcup)|c(irc|up|ap)|triangle(down|up)|o(times|dot|plus)|uplus|vee|wedge)|o(t(tom)?|pf|wtie|x(h(d|u|D|U)?|times|H(d|u|D|U)?|d(R|l|r|L)|u(R|l|r|L)|plus|D(R|l|r|L)|v(R|h|H|l|r|L)?|U(R|l|r|L)|V(R|h|H|l|r|L)?|minus|box))|Not|dquo|u(ll(et)?|mp(e(q)?|E)?)|prime|e(caus(e)?|t(h|ween|a)|psi|rnou|mptyv)|karow|fr|l(ock|k(1(2|4)|34)|a(nk|ck(square|triangle(down|left|right)?|lozenge)))|a(ck(sim(eq)?|cong|prime|epsilon)|r(vee|wed(ge)?))|r(eve|vbar)|brk(tbrk)?))|(c(s(cr|u(p(e)?|b(e)?))|h(cy|i|eck(mark)?)|ylcty|c(irc|ups(sm)?|edil|a(ps|ron))|tdot|ir(scir|c(eq|le(d(R|circ|S|dash|ast)|arrow(left|right)))?|e|fnint|E|mid)?|o(n(int|g(dot)?)|p(y(sr)?|f|rod)|lon(e(q)?)?|m(p(fn|le(xes|ment))?|ma(t)?))|dot|u(darr(l|r)|p(s|c(up|ap)|or|dot|brcap)?|e(sc|pr)|vee|wed|larr(p)?|r(vearrow(left|right)|ly(eq(succ|prec)|vee|wedge)|arr(m)?|ren))|e(nt(erdot)?|dil|mptyv)|fr|w(conint|int)|lubs(uit)?|a(cute|p(s|c(up|ap)|dot|and|brcup)?|r(on|et))|r(oss|arr))|C(scr|hi|c(irc|onint|edil|aron)|ircle(Minus|Times|Dot|Plus)|Hcy|o(n(tourIntegral|int|gruent)|unterClockwiseContourIntegral|p(f|roduct)|lon(e)?)|dot|up(Cap)?|OPY|e(nterDot|dilla)|fr|lo(seCurly(DoubleQuote|Quote)|ckwiseContourIntegral)|a(yleys|cute|p(italDifferentialD)?)|ross))|(d(s(c(y|r)|trok|ol)|har(l|r)|c(y|aron)|t(dot|ri(f)?)|i(sin|e|v(ide(ontimes)?|onx)?|am(s|ond(suit)?)?|gamma)|Har|z(cy|igrarr)|o(t(square|plus|eq(dot)?|minus)?|ublebarwedge|pf|wn(harpoon(left|right)|downarrows|arrow)|llar)|d(otseq|a(rr|gger))?|u(har|arr)|jcy|e(lta|g|mptyv)|f(isht|r)|wangle|lc(orn|rop)|a(sh(v)?|leth|rr|gger)|r(c(orn|rop)|bkarow)|b(karow|lac)|Arr)|D(s(cr|trok)|c(y|aron)|Scy|i(fferentialD|a(critical(Grave|Tilde|Do(t|ubleAcute)|Acute)|mond))|o(t(Dot|Equal)?|uble(Right(Tee|Arrow)|ContourIntegral|Do(t|wnArrow)|Up(DownArrow|Arrow)|VerticalBar|L(ong(RightArrow|Left(RightArrow|Arrow))|eft(RightArrow|Tee|Arrow)))|pf|wn(Right(TeeVector|Vector(Bar)?)|Breve|Tee(Arrow)?|arrow|Left(RightVector|TeeVector|Vector(Bar)?)|Arrow(Bar|UpArrow)?))|Zcy|el(ta)?|D(otrahd)?|Jcy|fr|a(shv|rr|gger)))|(e(s(cr|im|dot)|n(sp|g)|c(y|ir(c)?|olon|aron)|t(h|a)|o(pf|gon)|dot|u(ro|ml)|p(si(v|lon)?|lus|ar(sl)?)|e|D(ot|Dot)|q(s(im|lant(less|gtr))|c(irc|olon)|u(iv(DD)?|est|als)|vparsl)|f(Dot|r)|l(s(dot)?|inters|l)?|a(ster|cute)|r(Dot|arr)|g(s(dot)?|rave)?|x(cl|ist|p(onentiale|ectation))|m(sp(1(3|4))?|pty(set|v)?|acr))|E(s(cr|im)|c(y|irc|aron)|ta|o(pf|gon)|NG|dot|uml|TH|psilon|qu(ilibrium|al(Tilde)?)|fr|lement|acute|grave|x(ists|ponentialE)|m(pty(SmallSquare|VerySmallSquare)|acr)))|(f(scr|nof|cy|ilig|o(pf|r(k(v)?|all))|jlig|partint|emale|f(ilig|l(ig|lig)|r)|l(tns|lig|at)|allingdotseq|r(own|a(sl|c(1(2|8|3|4|5|6)|78|2(3|5)|3(8|4|5)|45|5(8|6)))))|F(scr|cy|illed(SmallSquare|VerySmallSquare)|o(uriertrf|pf|rAll)|fr))|(G(scr|c(y|irc|edil)|t|opf|dot|T|Jcy|fr|amma(d)?|reater(Greater|SlantEqual|Tilde|Equal(Less)?|FullEqual|Less)|g|breve)|g(s(cr|im(e|l)?)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|irc)|t(c(c|ir)|dot|quest|lPar|r(sim|dot|eq(qless|less)|less|a(pprox|rr)))?|imel|opf|dot|jcy|e(s(cc|dot(o(l)?)?|l(es)?)?|q(slant|q)?|l)?|v(nE|ertneqq)|fr|E(l)?|l(j|E|a)?|a(cute|p|mma(d)?)|rave|g(g)?|breve))|(h(s(cr|trok|lash)|y(phen|bull)|circ|o(ok(leftarrow|rightarrow)|pf|arr|rbar|mtht)|e(llip|arts(uit)?|rcon)|ks(earow|warow)|fr|a(irsp|lf|r(dcy|r(cir|w)?)|milt)|bar|Arr)|H(s(cr|trok)|circ|ilbertSpace|o(pf|rizontalLine)|ump(DownHump|Equal)|fr|a(cek|t)|ARDcy))|(i(s(cr|in(s(v)?|dot|v|E)?)|n(care|t(cal|prod|e(rcal|gers)|larhk)?|odot|fin(tie)?)?|c(y|irc)?|t(ilde)?|i(nfin|i(nt|int)|ota)?|o(cy|ta|pf|gon)|u(kcy|ml)|jlig|prod|e(cy|xcl)|quest|f(f|r)|acute|grave|m(of|ped|a(cr|th|g(part|e|line))))|I(scr|n(t(e(rsection|gral))?|visible(Comma|Times))|c(y|irc)|tilde|o(ta|pf|gon)|dot|u(kcy|ml)|Ocy|Jlig|fr|Ecy|acute|grave|m(plies|a(cr|ginaryI))?))|(j(s(cr|ercy)|c(y|irc)|opf|ukcy|fr|math)|J(s(cr|ercy)|c(y|irc)|opf|ukcy|fr))|(k(scr|hcy|c(y|edil)|opf|jcy|fr|appa(v)?|green)|K(scr|c(y|edil)|Hcy|opf|Jcy|fr|appa))|(l(s(h|cr|trok|im(e|g)?|q(uo(r)?|b)|aquo)|h(ar(d|u(l)?)|blk)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|ub|e(il|dil)|aron)|Barr|t(hree|c(c|ir)|imes|dot|quest|larr|r(i(e|f)?|Par))?|Har|o(ng(left(arrow|rightarrow)|rightarrow|mapsto)|times|z(enge|f)?|oparrow(left|right)|p(f|lus|ar)|w(ast|bar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|r(dhar|ushar))|ur(dshar|uhar)|jcy|par(lt)?|e(s(s(sim|dot|eq(qgtr|gtr)|approx|gtr)|cc|dot(o(r)?)?|g(es)?)?|q(slant|q)?|ft(harpoon(down|up)|threetimes|leftarrows|arrow(tail)?|right(squigarrow|harpoons|arrow(s)?))|g)?|v(nE|ertneqq)|f(isht|loor|r)|E(g)?|l(hard|corner|tri|arr)?|a(ng(d|le)?|cute|t(e(s)?|ail)?|p|emptyv|quo|rr(sim|hk|tl|pl|fs|lp|b(fs)?)?|gran|mbda)|r(har(d)?|corner|tri|arr|m)|g(E)?|m(idot|oust(ache)?)|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr))|L(s(h|cr|trok)|c(y|edil|aron)|t|o(ng(RightArrow|left(arrow|rightarrow)|rightarrow|Left(RightArrow|Arrow))|pf|wer(RightArrow|LeftArrow))|T|e(ss(Greater|SlantEqual|Tilde|EqualGreater|FullEqual|Less)|ft(Right(Vector|Arrow)|Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|rightarrow|Floor|A(ngleBracket|rrow(RightArrow|Bar)?)))|Jcy|fr|l(eftarrow)?|a(ng|cute|placetrf|rr|mbda)|midot))|(M(scr|cy|inusPlus|opf|u|e(diumSpace|llintrf)|fr|ap)|m(s(cr|tpos)|ho|nplus|c(y|omma)|i(nus(d(u)?|b)?|cro|d(cir|dot|ast)?)|o(dels|pf)|dash|u(ltimap|map)?|p|easuredangle|DDot|fr|l(cp|dr)|a(cr|p(sto(down|up|left)?)?|l(t(ese)?|e)|rker)))|(n(s(hort(parallel|mid)|c(cue|e|r)?|im(e(q)?)?|u(cc(eq)?|p(set(eq(q)?)?|e|E)?|b(set(eq(q)?)?|e|E)?)|par|qsu(pe|be)|mid)|Rightarrow|h(par|arr|Arr)|G(t(v)?|g)|c(y|ong(dot)?|up|edil|a(p|ron))|t(ilde|lg|riangle(left(eq)?|right(eq)?)|gl)|i(s(d)?|v)?|o(t(ni(v(c|a|b))?|in(dot|v(c|a|b)|E)?)?|pf)|dash|u(m(sp|ero)?)?|jcy|p(olint|ar(sl|t|allel)?|r(cue|e(c(eq)?)?)?)|e(s(im|ear)|dot|quiv|ar(hk|r(ow)?)|xist(s)?|Arr)?|v(sim|infin|Harr|dash|Dash|l(t(rie)?|e|Arr)|ap|r(trie|Arr)|g(t|e))|fr|w(near|ar(hk|r(ow)?)|Arr)|V(dash|Dash)|l(sim|t(ri(e)?)?|dr|e(s(s)?|q(slant|q)?|ft(arrow|rightarrow))?|E|arr|Arr)|a(ng|cute|tur(al(s)?)?|p(id|os|prox|E)?|bla)|r(tri(e)?|ightarrow|arr(c|w)?|Arr)|g(sim|t(r)?|e(s|q(slant|q)?)?|E)|mid|L(t(v)?|eft(arrow|rightarrow)|l)|b(sp|ump(e)?))|N(scr|c(y|edil|aron)|tilde|o(nBreakingSpace|Break|t(R(ightTriangle(Bar|Equal)?|everseElement)|Greater(Greater|SlantEqual|Tilde|Equal|FullEqual|Less)?|S(u(cceeds(SlantEqual|Tilde|Equal)?|perset(Equal)?|bset(Equal)?)|quareSu(perset(Equal)?|bset(Equal)?))|Hump(DownHump|Equal)|Nested(GreaterGreater|LessLess)|C(ongruent|upCap)|Tilde(Tilde|Equal|FullEqual)?|DoubleVerticalBar|Precedes(SlantEqual|Equal)?|E(qual(Tilde)?|lement|xists)|VerticalBar|Le(ss(Greater|SlantEqual|Tilde|Equal|Less)?|ftTriangle(Bar|Equal)?))?|pf)|u|e(sted(GreaterGreater|LessLess)|wLine|gative(MediumSpace|Thi(nSpace|ckSpace)|VeryThinSpace))|Jcy|fr|acute))|(o(s(cr|ol|lash)|h(m|bar)|c(y|ir(c)?)|ti(lde|mes(as)?)|S|int|opf|d(sold|iv|ot|ash|blac)|uml|p(erp|lus|ar)|elig|vbar|f(cir|r)|l(c(ir|ross)|t|ine|arr)|a(st|cute)|r(slope|igof|or|d(er(of)?|f|m)?|v|arr)?|g(t|on|rave)|m(i(nus|cron|d)|ega|acr))|O(s(cr|lash)|c(y|irc)|ti(lde|mes)|opf|dblac|uml|penCurly(DoubleQuote|Quote)|ver(B(ar|rac(e|ket))|Parenthesis)|fr|Elig|acute|r|grave|m(icron|ega|acr)))|(p(s(cr|i)|h(i(v)?|one|mmat)|cy|i(tchfork|v)?|o(intint|und|pf)|uncsp|er(cnt|tenk|iod|p|mil)|fr|l(us(sim|cir|two|d(o|u)|e|acir|mn|b)?|an(ck(h)?|kv))|ar(s(im|l)|t|a(llel)?)?|r(sim|n(sim|E|ap)|cue|ime(s)?|o(d|p(to)?|f(surf|line|alar))|urel|e(c(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?)?|E|ap)?|m)|P(s(cr|i)|hi|cy|i|o(incareplane|pf)|fr|lusMinus|artialD|r(ime|o(duct|portion(al)?)|ecedes(SlantEqual|Tilde|Equal)?)?))|(q(scr|int|opf|u(ot|est(eq)?|at(int|ernions))|prime|fr)|Q(scr|opf|UOT|fr))|(R(s(h|cr)|ho|c(y|edil|aron)|Barr|ight(Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|Floor|A(ngleBracket|rrow(Bar|LeftArrow)?))|o(undImplies|pf)|uleDelayed|e(verse(UpEquilibrium|E(quilibrium|lement)))?|fr|EG|a(ng|cute|rr(tl)?)|rightarrow)|r(s(h|cr|q(uo(r)?|b)|aquo)|h(o(v)?|ar(d|u(l)?))|nmid|c(y|ub|e(il|dil)|aron)|Barr|t(hree|imes|ri(e|f|ltri)?)|i(singdotseq|ng|ght(squigarrow|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(tail)?|rightarrows))|Har|o(times|p(f|lus|ar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|ldhar)|uluhar|p(polint|ar(gt)?)|e(ct|al(s|ine|part)?|g)|f(isht|loor|r)|l(har|arr|m)|a(ng(d|e|le)?|c(ute|e)|t(io(nals)?|ail)|dic|emptyv|quo|rr(sim|hk|c|tl|pl|fs|w|lp|ap|b(fs)?)?)|rarr|x|moust(ache)?|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr)))|(s(s(cr|tarf|etmn|mile)|h(y|c(hcy|y)|ort(parallel|mid)|arp)|c(sim|y|n(sim|E|ap)|cue|irc|polint|e(dil)?|E|a(p|ron))?|t(ar(f)?|r(ns|aight(phi|epsilon)))|i(gma(v|f)?|m(ne|dot|plus|e(q)?|l(E)?|rarr|g(E)?)?)|zlig|o(pf|ftcy|l(b(ar)?)?)|dot(e|b)?|u(ng|cc(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?|p(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|hs(ol|ub)|1|n(e|E)|2|d(sub|ot)|3|plus|e(dot)?|E|larr|mult)?|m|b(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|n(e|E)|dot|plus|e(dot)?|E|rarr|mult)?)|pa(des(uit)?|r)|e(swar|ct|tm(n|inus)|ar(hk|r(ow)?)|xt|mi|Arr)|q(su(p(set(eq)?|e)?|b(set(eq)?|e)?)|c(up(s)?|ap(s)?)|u(f|ar(e|f))?)|fr(own)?|w(nwar|ar(hk|r(ow)?)|Arr)|larr|acute|rarr|m(t(e(s)?)?|i(d|le)|eparsl|a(shp|llsetminus))|bquo)|S(scr|hort(RightArrow|DownArrow|UpArrow|LeftArrow)|c(y|irc|edil|aron)?|tar|igma|H(cy|CHcy)|opf|u(c(hThat|ceeds(SlantEqual|Tilde|Equal)?)|p(set|erset(Equal)?)?|m|b(set(Equal)?)?)|OFTcy|q(uare(Su(perset(Equal)?|bset(Equal)?)|Intersection|Union)?|rt)|fr|acute|mallCircle))|(t(s(hcy|c(y|r)|trok)|h(i(nsp|ck(sim|approx))|orn|e(ta(sym|v)?|re(4|fore))|k(sim|ap))|c(y|edil|aron)|i(nt|lde|mes(d|b(ar)?)?)|o(sa|p(cir|f(ork)?|bot)?|ea)|dot|prime|elrec|fr|w(ixt|ohead(leftarrow|rightarrow))|a(u|rget)|r(i(sb|time|dot|plus|e|angle(down|q|left(eq)?|right(eq)?)?|minus)|pezium|ade)|brk)|T(s(cr|trok)|RADE|h(i(nSpace|ckSpace)|e(ta|refore))|c(y|edil|aron)|S(cy|Hcy)|ilde(Tilde|Equal|FullEqual)?|HORN|opf|fr|a(u|b)|ripleDot))|(u(scr|h(ar(l|r)|blk)|c(y|irc)|t(ilde|dot|ri(f)?)|Har|o(pf|gon)|d(har|arr|blac)|u(arr|ml)|p(si(h|lon)?|harpoon(left|right)|downarrow|uparrows|lus|arrow)|f(isht|r)|wangle|l(c(orn(er)?|rop)|tri)|a(cute|rr)|r(c(orn(er)?|rop)|tri|ing)|grave|m(l|acr)|br(cy|eve)|Arr)|U(scr|n(ion(Plus)?|der(B(ar|rac(e|ket))|Parenthesis))|c(y|irc)|tilde|o(pf|gon)|dblac|uml|p(si(lon)?|downarrow|Tee(Arrow)?|per(RightArrow|LeftArrow)|DownArrow|Equilibrium|arrow|Arrow(Bar|DownArrow)?)|fr|a(cute|rr(ocir)?)|ring|grave|macr|br(cy|eve)))|(v(s(cr|u(pn(e|E)|bn(e|E)))|nsu(p|b)|cy|Bar(v)?|zigzag|opf|dash|prop|e(e(eq|bar)?|llip|r(t|bar))|Dash|fr|ltri|a(ngrt|r(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|t(heta|riangle(left|right))|p(hi|i|ropto)|epsilon|kappa|r(ho)?))|rtri|Arr)|V(scr|cy|opf|dash(l)?|e(e|r(yThinSpace|t(ical(Bar|Separator|Tilde|Line))?|bar))|Dash|vdash|fr|bar))|(w(scr|circ|opf|p|e(ierp|d(ge(q)?|bar))|fr|r(eath)?)|W(scr|circ|opf|edge|fr))|(X(scr|i|opf|fr)|x(s(cr|qcup)|h(arr|Arr)|nis|c(irc|up|ap)|i|o(time|dot|p(f|lus))|dtri|u(tri|plus)|vee|fr|wedge|l(arr|Arr)|r(arr|Arr)|map))|(y(scr|c(y|irc)|icy|opf|u(cy|ml)|en|fr|ac(y|ute))|Y(scr|c(y|irc)|opf|uml|Icy|Ucy|fr|acute|Acy))|(z(scr|hcy|c(y|aron)|igrarr|opf|dot|e(ta|etrf)|fr|w(nj|j)|acute)|Z(scr|c(y|aron)|Hcy|opf|dot|e(ta|roWidthSpace)|fr|acute)))(;)","name":"constant.character.entity.named.$2.html"},{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)#[0-9]+(;)","name":"constant.character.entity.numeric.decimal.html"},{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)#[xX][0-9a-fA-F]+(;)","name":"constant.character.entity.numeric.hexadecimal.html"},{"match":"&(?=[a-zA-Z0-9]+;)","name":"invalid.illegal.ambiguous-ampersand.html"}]},"heading":{"captures":{"1":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{6})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.6.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{5})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.5.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{4})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.4.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{3})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.3.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{2})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.2.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{1})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.1.markdown"}]}},"match":"(?:^|\\\\G)[ ]*(#{1,6}\\\\s+(.*?)(\\\\s+#{1,6})?\\\\s*)$","name":"markup.heading.markdown","patterns":[{"include":"text.html.markdown#inline"}]},"heading-setext":{"patterns":[{"match":"^(={3,})(?=[ \\\\t]*$\\\\n?)","name":"markup.heading.setext.1.markdown"},{"match":"^(-{3,})(?=[ \\\\t]*$\\\\n?)","name":"markup.heading.setext.2.markdown"}]},"inline":{"patterns":[{"include":"#component_inline"},{"include":"#span"},{"include":"#attributes"}]},"lists":{"patterns":[{"begin":"(^|\\\\G)([ ]*)([*+-])([ \\\\t])","beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}},"name":"markup.list.unnumbered.markdown","patterns":[{"include":"#block"},{"include":"text.html.markdown#list_paragraph"}],"while":"((^|\\\\G)([ ]*|\\\\t))|(^[ \\\\t]*$)"},{"begin":"(^|\\\\G)([ ]*)([0-9]+\\\\.)([ \\\\t])","beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}},"name":"markup.list.numbered.markdown","patterns":[{"include":"#block"},{"include":"text.html.markdown#list_paragraph"}],"while":"((^|\\\\G)([ ]*|\\\\t))|(^[ \\\\t]*$)"}]},"paragraph":{"begin":"(^|\\\\G)[ ]*(?=\\\\S)","name":"meta.paragraph.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"},{"include":"#heading-setext"}],"while":"(^|\\\\G)((?=\\\\s*[-=]{3,}\\\\s*$)|[ ]{4,}(?=\\\\S))"},"span":{"captures":{"1":{"name":"punctuation.definition.tag.start.component"},"2":{"name":"string.other.link.description.title.markdown"},"3":{"name":"punctuation.definition.tag.end.component"},"4":{"patterns":[{"include":"#attributes"}]}},"match":"(\\\\[)([^]]*)(\\\\])(({)([^{]*)(}))?\\\\s","name":"span.component.mdc"}},"scopeName":"text.markdown.mdc.standalone","embeddedLangs":["markdown","yaml","html-derivative"]}`)),xre=[...Wo,...Zr,...Hr,Bre]});var gR={};x(gR,{default:()=>Ere});var vre,Ere,fR=_(()=>{vre=Object.freeze(JSON.parse('{"displayName":"MDX","fileTypes":["mdx"],"name":"mdx","patterns":[{"include":"#markdown-frontmatter"},{"include":"#markdown-sections"}],"repository":{"commonmark-attention":{"patterns":[{"match":"(?<=\\\\S)\\\\*{3,}|\\\\*{3,}(?=\\\\S)","name":"string.other.strong.emphasis.asterisk.mdx"},{"match":"(?<=[\\\\p{L}\\\\p{N}])_{3,}(?![\\\\p{L}\\\\p{N}])|(?<=\\\\p{P})_{3,}|(?<![\\\\p{L}\\\\p{N}]|\\\\p{P})_{3,}(?!\\\\s)","name":"string.other.strong.emphasis.underscore.mdx"},{"match":"(?<=\\\\S)\\\\*{2}|\\\\*{2}(?=\\\\S)","name":"string.other.strong.asterisk.mdx"},{"match":"(?<=[\\\\p{L}\\\\p{N}])_{2}(?![\\\\p{L}\\\\p{N}])|(?<=\\\\p{P})_{2}|(?<![\\\\p{L}\\\\p{N}]|\\\\p{P})_{2}(?!\\\\s)","name":"string.other.strong.underscore.mdx"},{"match":"(?<=\\\\S)\\\\*|\\\\*(?=\\\\S)","name":"string.other.emphasis.asterisk.mdx"},{"match":"(?<=[\\\\p{L}\\\\p{N}])_(?![\\\\p{L}\\\\p{N}])|(?<=\\\\p{P})_|(?<![\\\\p{L}\\\\p{N}]|\\\\p{P})_(?!\\\\s)","name":"string.other.emphasis.underscore.mdx"}]},"commonmark-block-quote":{"begin":"(?:^|\\\\G)[\\\\t ]*(>)[ ]?","beginCaptures":{"0":{"name":"markup.quote.mdx"},"1":{"name":"punctuation.definition.quote.begin.mdx"}},"name":"markup.quote.mdx","patterns":[{"include":"#markdown-sections"}],"while":"(>)[ ]?","whileCaptures":{"0":{"name":"markup.quote.mdx"},"1":{"name":"punctuation.definition.quote.begin.mdx"}}},"commonmark-character-escape":{"match":"\\\\\\\\(?:[!\\"#$%&\'()*+,\\\\-.\\\\/:;<=>?@\\\\[\\\\\\\\\\\\]^_`{|}~])","name":"constant.language.character-escape.mdx"},"commonmark-character-reference":{"patterns":[{"include":"#whatwg-html-data-character-reference-named-terminated"},{"captures":{"1":{"name":"punctuation.definition.character-reference.begin.html"},"2":{"name":"punctuation.definition.character-reference.numeric.html"},"3":{"name":"punctuation.definition.character-reference.numeric.hexadecimal.html"},"4":{"name":"constant.numeric.integer.hexadecimal.html"},"5":{"name":"punctuation.definition.character-reference.end.html"}},"match":"(&)(#)([Xx])([0-9A-Fa-f]{1,6})(;)","name":"constant.language.character-reference.numeric.hexadecimal.html"},{"captures":{"1":{"name":"punctuation.definition.character-reference.begin.html"},"2":{"name":"punctuation.definition.character-reference.numeric.html"},"3":{"name":"constant.numeric.integer.decimal.html"},"4":{"name":"punctuation.definition.character-reference.end.html"}},"match":"(&)(#)([0-9]{1,7})(;)","name":"constant.language.character-reference.numeric.decimal.html"}]},"commonmark-code-fenced":{"patterns":[{"include":"#commonmark-code-fenced-apib"},{"include":"#commonmark-code-fenced-asciidoc"},{"include":"#commonmark-code-fenced-c"},{"include":"#commonmark-code-fenced-clojure"},{"include":"#commonmark-code-fenced-coffee"},{"include":"#commonmark-code-fenced-console"},{"include":"#commonmark-code-fenced-cpp"},{"include":"#commonmark-code-fenced-cs"},{"include":"#commonmark-code-fenced-css"},{"include":"#commonmark-code-fenced-diff"},{"include":"#commonmark-code-fenced-dockerfile"},{"include":"#commonmark-code-fenced-elixir"},{"include":"#commonmark-code-fenced-elm"},{"include":"#commonmark-code-fenced-erlang"},{"include":"#commonmark-code-fenced-gitconfig"},{"include":"#commonmark-code-fenced-go"},{"include":"#commonmark-code-fenced-graphql"},{"include":"#commonmark-code-fenced-haskell"},{"include":"#commonmark-code-fenced-html"},{"include":"#commonmark-code-fenced-ini"},{"include":"#commonmark-code-fenced-java"},{"include":"#commonmark-code-fenced-js"},{"include":"#commonmark-code-fenced-json"},{"include":"#commonmark-code-fenced-julia"},{"include":"#commonmark-code-fenced-kotlin"},{"include":"#commonmark-code-fenced-less"},{"include":"#commonmark-code-fenced-less"},{"include":"#commonmark-code-fenced-lua"},{"include":"#commonmark-code-fenced-makefile"},{"include":"#commonmark-code-fenced-md"},{"include":"#commonmark-code-fenced-mdx"},{"include":"#commonmark-code-fenced-objc"},{"include":"#commonmark-code-fenced-perl"},{"include":"#commonmark-code-fenced-php"},{"include":"#commonmark-code-fenced-php"},{"include":"#commonmark-code-fenced-python"},{"include":"#commonmark-code-fenced-r"},{"include":"#commonmark-code-fenced-raku"},{"include":"#commonmark-code-fenced-ruby"},{"include":"#commonmark-code-fenced-rust"},{"include":"#commonmark-code-fenced-scala"},{"include":"#commonmark-code-fenced-scss"},{"include":"#commonmark-code-fenced-shell"},{"include":"#commonmark-code-fenced-shell-session"},{"include":"#commonmark-code-fenced-sql"},{"include":"#commonmark-code-fenced-svg"},{"include":"#commonmark-code-fenced-swift"},{"include":"#commonmark-code-fenced-toml"},{"include":"#commonmark-code-fenced-ts"},{"include":"#commonmark-code-fenced-tsx"},{"include":"#commonmark-code-fenced-vbnet"},{"include":"#commonmark-code-fenced-xml"},{"include":"#commonmark-code-fenced-yaml"},{"include":"#commonmark-code-fenced-unknown"}]},"commonmark-code-fenced-apib":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:api\\\\x2dblueprint|(?:.*\\\\.)?apib))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.apib.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.apib","patterns":[{"include":"text.html.markdown.source.gfm.apib"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:api\\\\x2dblueprint|(?:.*\\\\.)?apib))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.apib.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.apib","patterns":[{"include":"text.html.markdown.source.gfm.apib"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-asciidoc":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?(?:adoc|asciidoc)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.asciidoc.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.asciidoc","patterns":[{"include":"text.html.asciidoc"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?(?:adoc|asciidoc)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.asciidoc.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.asciidoc","patterns":[{"include":"text.html.asciidoc"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-c":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:dtrace|dtrace\\\\x2dscript|oncrpc|rpc|rpcgen|unified\\\\x2dparallel\\\\x2dc|x\\\\x2dbitmap|x\\\\x2dpixmap|xdr|(?:.*\\\\.)?(?:c|cats|h|idc|opencl|upc|xbm|xpm|xs)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.c.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.c","patterns":[{"include":"source.c"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:dtrace|dtrace\\\\x2dscript|oncrpc|rpc|rpcgen|unified\\\\x2dparallel\\\\x2dc|x\\\\x2dbitmap|x\\\\x2dpixmap|xdr|(?:.*\\\\.)?(?:c|cats|h|idc|opencl|upc|xbm|xpm|xs)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.c.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.c","patterns":[{"include":"source.c"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-clojure":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:clojure|rouge|(?:.*\\\\.)?(?:boot|cl2|clj|cljc|cljs|cljs\\\\.hl|cljscm|cljx|edn|hic|rg|wisp)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.clojure.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.clojure","patterns":[{"include":"source.clojure"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:clojure|rouge|(?:.*\\\\.)?(?:boot|cl2|clj|cljc|cljs|cljs\\\\.hl|cljscm|cljx|edn|hic|rg|wisp)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.clojure.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.clojure","patterns":[{"include":"source.clojure"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-coffee":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:coffee\\\\x2dscript|coffeescript|(?:.*\\\\.)?(?:_coffee|cjsx|coffee|cson|em|emberscript|iced)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.coffee.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.coffee","patterns":[{"include":"source.coffee"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:coffee\\\\x2dscript|coffeescript|(?:.*\\\\.)?(?:_coffee|cjsx|coffee|cson|em|emberscript|iced)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.coffee.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.coffee","patterns":[{"include":"source.coffee"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-console":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:pycon|python\\\\x2dconsole))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.console.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.console","patterns":[{"include":"text.python.console"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:pycon|python\\\\x2dconsole))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.console.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.console","patterns":[{"include":"text.python.console"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-cpp":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:ags|ags\\\\x2dscript|asymptote|c\\\\+\\\\+|edje\\\\x2ddata\\\\x2dcollection|game\\\\x2dmaker\\\\x2dlanguage|swig|(?:.*\\\\.)?(?:asc|ash|asy|c\\\\+\\\\+|cc|cp|cpp|cppm|cxx|edc|gml|h\\\\+\\\\+|hh|hpp|hxx|inl|ino|ipp|ixx|metal|re|tcc|tpp|txx)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.cpp.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.cpp","patterns":[{"include":"source.c++"},{"include":"source.cpp"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:ags|ags\\\\x2dscript|asymptote|c\\\\+\\\\+|edje\\\\x2ddata\\\\x2dcollection|game\\\\x2dmaker\\\\x2dlanguage|swig|(?:.*\\\\.)?(?:asc|ash|asy|c\\\\+\\\\+|cc|cp|cpp|cppm|cxx|edc|gml|h\\\\+\\\\+|hh|hpp|hxx|inl|ino|ipp|ixx|metal|re|tcc|tpp|txx)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.cpp.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.cpp","patterns":[{"include":"source.c++"},{"include":"source.cpp"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-cs":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:beef|c#|cakescript|csharp|(?:.*\\\\.)?(?:bf|cake|cs|cs\\\\.pp|csx|eq|linq|uno)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.cs.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.cs","patterns":[{"include":"source.cs"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:beef|c#|cakescript|csharp|(?:.*\\\\.)?(?:bf|cake|cs|cs\\\\.pp|csx|eq|linq|uno)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.cs.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.cs","patterns":[{"include":"source.cs"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-css":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?css))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.css.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.css","patterns":[{"include":"source.css"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?css))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.css.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.css","patterns":[{"include":"source.css"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-diff":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:udiff|(?:.*\\\\.)?(?:diff|patch)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.diff.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.diff","patterns":[{"include":"source.diff"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:udiff|(?:.*\\\\.)?(?:diff|patch)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.diff.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.diff","patterns":[{"include":"source.diff"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-dockerfile":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:containerfile|(?:.*\\\\.)?dockerfile))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.dockerfile.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.dockerfile","patterns":[{"include":"source.dockerfile"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:containerfile|(?:.*\\\\.)?dockerfile))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.dockerfile.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.dockerfile","patterns":[{"include":"source.dockerfile"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-elixir":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:elixir|(?:.*\\\\.)?(?:ex|exs)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.elixir.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.elixir","patterns":[{"include":"source.elixir"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:elixir|(?:.*\\\\.)?(?:ex|exs)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.elixir.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.elixir","patterns":[{"include":"source.elixir"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-elm":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?elm))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.elm.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.elm","patterns":[{"include":"source.elm"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?elm))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.elm.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.elm","patterns":[{"include":"source.elm"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-erlang":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:erlang|(?:.*\\\\.)?(?:app|app\\\\.src|erl|es|escript|hrl|xrl|yrl)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.erlang.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.erlang","patterns":[{"include":"source.erlang"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:erlang|(?:.*\\\\.)?(?:app|app\\\\.src|erl|es|escript|hrl|xrl|yrl)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.erlang.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.erlang","patterns":[{"include":"source.erlang"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-gitconfig":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:git\\\\x2dconfig|gitmodules|(?:.*\\\\.)?gitconfig))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.gitconfig.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.gitconfig","patterns":[{"include":"source.gitconfig"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:git\\\\x2dconfig|gitmodules|(?:.*\\\\.)?gitconfig))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.gitconfig.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.gitconfig","patterns":[{"include":"source.gitconfig"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-go":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:golang|(?:.*\\\\.)?go))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.go.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.go","patterns":[{"include":"source.go"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:golang|(?:.*\\\\.)?go))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.go.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.go","patterns":[{"include":"source.go"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-graphql":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?(?:gql|graphql|graphqls)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.graphql.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.graphql","patterns":[{"include":"source.graphql"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?(?:gql|graphql|graphqls)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.graphql.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.graphql","patterns":[{"include":"source.graphql"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-haskell":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:c2hs|c2hs\\\\x2dhaskell|frege|haskell|(?:.*\\\\.)?(?:chs|dhall|hs|hs\\\\x2dboot|hsc)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.haskell.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.haskell","patterns":[{"include":"source.haskell"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:c2hs|c2hs\\\\x2dhaskell|frege|haskell|(?:.*\\\\.)?(?:chs|dhall|hs|hs\\\\x2dboot|hsc)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.haskell.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.haskell","patterns":[{"include":"source.haskell"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-html":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:html|(?:.*\\\\.)?(?:hta|htm|html\\\\.hl|kit|mtml|xht|xhtml)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.html.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.html","patterns":[{"include":"text.html.basic"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:html|(?:.*\\\\.)?(?:hta|htm|html\\\\.hl|kit|mtml|xht|xhtml)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.html.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.html","patterns":[{"include":"text.html.basic"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-ini":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:altium|altium\\\\x2ddesigner|dosini|(?:.*\\\\.)?(?:cnf|dof|ini|lektorproject|outjob|pcbdoc|prefs|prjpcb|properties|schdoc|url)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.ini.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.ini","patterns":[{"include":"source.ini"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:altium|altium\\\\x2ddesigner|dosini|(?:.*\\\\.)?(?:cnf|dof|ini|lektorproject|outjob|pcbdoc|prefs|prjpcb|properties|schdoc|url)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.ini.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.ini","patterns":[{"include":"source.ini"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-java":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:chuck|unrealscript|(?:.*\\\\.)?(?:ck|jav|java|jsh|uc)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.java.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.java","patterns":[{"include":"source.java"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:chuck|unrealscript|(?:.*\\\\.)?(?:ck|jav|java|jsh|uc)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.java.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.java","patterns":[{"include":"source.java"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-js":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:cycript|javascript\\\\+erb|json\\\\x2dwith\\\\x2dcomments|node|qt\\\\x2dscript|(?:.*\\\\.)?(?:_js|bones|cjs|code\\\\x2dsnippets|code\\\\x2dworkspace|cy|es6|jake|javascript|js|js\\\\.erb|jsb|jscad|jsfl|jslib|jsm|json5|jsonc|jsonld|jspre|jss|jsx|mjs|njs|pac|sjs|ssjs|sublime\\\\x2dbuild|sublime\\\\x2dcolor\\\\x2dscheme|sublime\\\\x2dcommands|sublime\\\\x2dcompletions|sublime\\\\x2dkeymap|sublime\\\\x2dmacro|sublime\\\\x2dmenu|sublime\\\\x2dmousemap|sublime\\\\x2dproject|sublime\\\\x2dsettings|sublime\\\\x2dtheme|sublime\\\\x2dworkspace|sublime_metrics|sublime_session|xsjs|xsjslib)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.js.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.js","patterns":[{"include":"source.js"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:cycript|javascript\\\\+erb|json\\\\x2dwith\\\\x2dcomments|node|qt\\\\x2dscript|(?:.*\\\\.)?(?:_js|bones|cjs|code\\\\x2dsnippets|code\\\\x2dworkspace|cy|es6|jake|javascript|js|js\\\\.erb|jsb|jscad|jsfl|jslib|jsm|json5|jsonc|jsonld|jspre|jss|jsx|mjs|njs|pac|sjs|ssjs|sublime\\\\x2dbuild|sublime\\\\x2dcolor\\\\x2dscheme|sublime\\\\x2dcommands|sublime\\\\x2dcompletions|sublime\\\\x2dkeymap|sublime\\\\x2dmacro|sublime\\\\x2dmenu|sublime\\\\x2dmousemap|sublime\\\\x2dproject|sublime\\\\x2dsettings|sublime\\\\x2dtheme|sublime\\\\x2dworkspace|sublime_metrics|sublime_session|xsjs|xsjslib)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.js.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.js","patterns":[{"include":"source.js"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-json":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:ecere\\\\x2dprojects|ipython\\\\x2dnotebook|jupyter\\\\x2dnotebook|max|max/msp|maxmsp|oasv2\\\\x2djson|oasv3\\\\x2djson|(?:.*\\\\.)?(?:4dform|4dproject|avsc|epj|geojson|gltf|har|ice|ipynb|json|json|json|json\\\\x2dtmlanguage|jsonl|maxhelp|maxpat|maxproj|mcmeta|mxt|pat|sarif|tfstate|tfstate\\\\.backup|topojson|webapp|webmanifest|yy|yyp)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.json.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.json","patterns":[{"include":"source.json"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:ecere\\\\x2dprojects|ipython\\\\x2dnotebook|jupyter\\\\x2dnotebook|max|max/msp|maxmsp|oasv2\\\\x2djson|oasv3\\\\x2djson|(?:.*\\\\.)?(?:4dform|4dproject|avsc|epj|geojson|gltf|har|ice|ipynb|json|json|json|json\\\\x2dtmlanguage|jsonl|maxhelp|maxpat|maxproj|mcmeta|mxt|pat|sarif|tfstate|tfstate\\\\.backup|topojson|webapp|webmanifest|yy|yyp)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.json.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.json","patterns":[{"include":"source.json"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-julia":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:julia|(?:.*\\\\.)?jl))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.julia.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.julia","patterns":[{"include":"source.julia"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:julia|(?:.*\\\\.)?jl))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.julia.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.julia","patterns":[{"include":"source.julia"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-kotlin":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:gradle\\\\x2dkotlin\\\\x2ddsl|kotlin|(?:.*\\\\.)?(?:gradle\\\\.kts|kt|ktm|kts)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.kotlin.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.kotlin","patterns":[{"include":"source.kotlin"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:gradle\\\\x2dkotlin\\\\x2ddsl|kotlin|(?:.*\\\\.)?(?:gradle\\\\.kts|kt|ktm|kts)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.kotlin.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.kotlin","patterns":[{"include":"source.kotlin"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-less":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:less\\\\x2dcss|(?:.*\\\\.)?less))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.less.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.less","patterns":[{"include":"source.css.less"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:less\\\\x2dcss|(?:.*\\\\.)?less))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.less.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.less","patterns":[{"include":"source.css.less"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-lua":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?(?:fcgi|lua|nse|p8|pd_lua|rbxs|rockspec|wlua)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.lua.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.lua","patterns":[{"include":"source.lua"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?(?:fcgi|lua|nse|p8|pd_lua|rbxs|rockspec|wlua)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.lua.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.lua","patterns":[{"include":"source.lua"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-makefile":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:bsdmake|mf|(?:.*\\\\.)?(?:mak|make|makefile|mk|mkfile)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.makefile.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.makefile","patterns":[{"include":"source.makefile"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:bsdmake|mf|(?:.*\\\\.)?(?:mak|make|makefile|mk|mkfile)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.makefile.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.makefile","patterns":[{"include":"source.makefile"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-md":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:md|pandoc|rmarkdown|(?:.*\\\\.)?(?:livemd|markdown|mdown|mdwn|mkd|mkdn|mkdown|qmd|rmd|ronn|scd|workbook)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.md.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.md","patterns":[{"include":"text.md"},{"include":"source.gfm"},{"include":"text.html.markdown"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:md|pandoc|rmarkdown|(?:.*\\\\.)?(?:livemd|markdown|mdown|mdwn|mkd|mkdn|mkdown|qmd|rmd|ronn|scd|workbook)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.md.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.md","patterns":[{"include":"text.md"},{"include":"source.gfm"},{"include":"text.html.markdown"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-mdx":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?mdx))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.mdx.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.mdx","patterns":[{"include":"source.mdx"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?mdx))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.mdx.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.mdx","patterns":[{"include":"source.mdx"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-objc":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:obj\\\\x2dc|objc|objective\\\\x2dc|objectivec))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.objc.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.objc","patterns":[{"include":"source.objc"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:obj\\\\x2dc|objc|objective\\\\x2dc|objectivec))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.objc.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.objc","patterns":[{"include":"source.objc"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-perl":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:cperl|(?:.*\\\\.)?(?:cgi|perl|ph|pl|plx|pm|psgi|t)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.perl.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.perl","patterns":[{"include":"source.perl"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:cperl|(?:.*\\\\.)?(?:cgi|perl|ph|pl|plx|pm|psgi|t)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.perl.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.perl","patterns":[{"include":"source.perl"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-php":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:html\\\\+php|inc|php|(?:.*\\\\.)?(?:aw|ctp|php3|php4|php5|phps|phpt|phtml)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.php.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.php","patterns":[{"include":"text.html.php"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:html\\\\+php|inc|php|(?:.*\\\\.)?(?:aw|ctp|php3|php4|php5|phps|phpt|phtml)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.php.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.php","patterns":[{"include":"text.html.php"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-python":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:bazel|easybuild|python|python3|rusthon|snakemake|starlark|xonsh|(?:.*\\\\.)?(?:bzl|eb|gyp|gypi|lmi|py|py3|pyde|pyi|pyp|pyt|pyw|rpy|sage|sagews|smk|snakefile|spec|tac|wsgi|xpy|xsh)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.python.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.python","patterns":[{"include":"source.python"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:bazel|easybuild|python|python3|rusthon|snakemake|starlark|xonsh|(?:.*\\\\.)?(?:bzl|eb|gyp|gypi|lmi|py|py3|pyde|pyi|pyp|pyt|pyw|rpy|sage|sagews|smk|snakefile|spec|tac|wsgi|xpy|xsh)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.python.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.python","patterns":[{"include":"source.python"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-r":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:rscript|splus|(?:.*\\\\.)?(?:r|rd|rsx)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.r.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.r","patterns":[{"include":"source.r"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:rscript|splus|(?:.*\\\\.)?(?:r|rd|rsx)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.r.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.r","patterns":[{"include":"source.r"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-raku":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:perl\\\\x2d6|perl6|pod\\\\x2d6|(?:.*\\\\.)?(?:6pl|6pm|nqp|p6|p6l|p6m|pl6|pm6|pod|pod6|raku|rakumod)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.raku.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.raku","patterns":[{"include":"source.raku"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:perl\\\\x2d6|perl6|pod\\\\x2d6|(?:.*\\\\.)?(?:6pl|6pm|nqp|p6|p6l|p6m|pl6|pm6|pod|pod6|raku|rakumod)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.raku.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.raku","patterns":[{"include":"source.raku"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-ruby":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:jruby|macruby|(?:.*\\\\.)?(?:builder|druby|duby|eye|gemspec|god|jbuilder|mirah|mspec|pluginspec|podspec|prawn|rabl|rake|rb|rbi|rbuild|rbw|rbx|ru|ruby|thor|watchr)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.ruby.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.ruby","patterns":[{"include":"source.ruby"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:jruby|macruby|(?:.*\\\\.)?(?:builder|druby|duby|eye|gemspec|god|jbuilder|mirah|mspec|pluginspec|podspec|prawn|rabl|rake|rb|rbi|rbuild|rbw|rbx|ru|ruby|thor|watchr)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.ruby.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.ruby","patterns":[{"include":"source.ruby"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-rust":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:rust|(?:.*\\\\.)?(?:rs|rs\\\\.in)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.rust.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.rust","patterns":[{"include":"source.rust"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:rust|(?:.*\\\\.)?(?:rs|rs\\\\.in)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.rust.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.rust","patterns":[{"include":"source.rust"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-scala":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?(?:kojo|sbt|sc|scala)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.scala.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.scala","patterns":[{"include":"source.scala"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?(?:kojo|sbt|sc|scala)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.scala.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.scala","patterns":[{"include":"source.scala"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-scss":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?scss))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.scss.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.scss","patterns":[{"include":"source.css.scss"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?scss))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.scss.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.scss","patterns":[{"include":"source.css.scss"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-shell":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:abuild|alpine\\\\x2dabuild|apkbuild|envrc|gentoo\\\\x2debuild|gentoo\\\\x2declass|openrc|openrc\\\\x2drunscript|shell|shell\\\\x2dscript|(?:.*\\\\.)?(?:bash|bats|command|csh|ebuild|eclass|ksh|sh|sh\\\\.in|tcsh|tmux|tool|zsh|zsh\\\\x2dtheme)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.shell.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.shell","patterns":[{"include":"source.shell"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:abuild|alpine\\\\x2dabuild|apkbuild|envrc|gentoo\\\\x2debuild|gentoo\\\\x2declass|openrc|openrc\\\\x2drunscript|shell|shell\\\\x2dscript|(?:.*\\\\.)?(?:bash|bats|command|csh|ebuild|eclass|ksh|sh|sh\\\\.in|tcsh|tmux|tool|zsh|zsh\\\\x2dtheme)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.shell.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.shell","patterns":[{"include":"source.shell"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-shell-session":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:bash\\\\x2dsession|console|shellsession|(?:.*\\\\.)?sh\\\\x2dsession))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.shell-session.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.shell-session","patterns":[{"include":"text.shell-session"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:bash\\\\x2dsession|console|shellsession|(?:.*\\\\.)?sh\\\\x2dsession))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.shell-session.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.shell-session","patterns":[{"include":"text.shell-session"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-sql":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:plpgsql|sqlpl|(?:.*\\\\.)?(?:cql|db2|ddl|mysql|pgsql|prc|sql|sql|sql|tab|udf|viw)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.sql.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.sql","patterns":[{"include":"source.sql"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:plpgsql|sqlpl|(?:.*\\\\.)?(?:cql|db2|ddl|mysql|pgsql|prc|sql|sql|sql|tab|udf|viw)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.sql.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.sql","patterns":[{"include":"source.sql"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-svg":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?svg))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.svg.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.svg","patterns":[{"include":"text.xml.svg"},{"include":"text.xml"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?svg))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.svg.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.svg","patterns":[{"include":"text.xml.svg"},{"include":"text.xml"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-swift":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?swift))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.swift.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.swift","patterns":[{"include":"source.swift"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?swift))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.swift.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.swift","patterns":[{"include":"source.swift"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-toml":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?toml))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.toml.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.toml","patterns":[{"include":"source.toml"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?toml))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.toml.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.toml","patterns":[{"include":"source.toml"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-ts":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:typescript|(?:.*\\\\.)?(?:cts|mts|ts)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.ts.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.ts","patterns":[{"include":"source.ts"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:typescript|(?:.*\\\\.)?(?:cts|mts|ts)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.ts.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.ts","patterns":[{"include":"source.ts"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-tsx":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?tsx))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.tsx.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.tsx","patterns":[{"include":"source.tsx"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:(?:.*\\\\.)?tsx))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.tsx.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.tsx","patterns":[{"include":"source.tsx"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-unknown":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?:[^\\\\t\\\\n\\\\r` ])+)(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)?(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"contentName":"markup.raw.code.fenced.mdx","end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.other.mdx"},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?:[^\\\\t\\\\n\\\\r ])+)(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)?(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"contentName":"markup.raw.code.fenced.mdx","end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.other.mdx"}]},"commonmark-code-fenced-vbnet":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:fb|freebasic|realbasic|vb\\\\x2d\\\\.net|vb\\\\.net|vbnet|vbscript|visual\\\\x2dbasic|visual\\\\x2dbasic\\\\x2d\\\\.net|(?:.*\\\\.)?(?:bi|rbbas|rbfrm|rbmnu|rbres|rbtbar|rbuistate|vb|vbhtml|vbs)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.vbnet.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.vbnet","patterns":[{"include":"source.vbnet"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:fb|freebasic|realbasic|vb\\\\x2d\\\\.net|vb\\\\.net|vbnet|vbscript|visual\\\\x2dbasic|visual\\\\x2dbasic\\\\x2d\\\\.net|(?:.*\\\\.)?(?:bi|rbbas|rbfrm|rbmnu|rbres|rbtbar|rbuistate|vb|vbhtml|vbs)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.vbnet.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.vbnet","patterns":[{"include":"source.vbnet"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-xml":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:collada|eagle|labview|web\\\\x2dontology\\\\x2dlanguage|xpages|(?:.*\\\\.)?(?:adml|admx|ant|axaml|axml|brd|builds|ccproj|ccxml|clixml|cproject|cscfg|csdef|csproj|ct|dae|depproj|dita|ditamap|ditaval|dll\\\\.config|dotsettings|filters|fsproj|fxml|glade|gmx|grxml|hzp|iml|ivy|jelly|jsproj|kml|launch|lvclass|lvlib|lvproj|mdpolicy|mjml|mxml|natvis|ndproj|nproj|nuspec|odd|osm|owl|pkgproj|proj|props|ps1xml|psc1|pt|qhelp|rdf|resx|rss|sch|sch|scxml|sfproj|shproj|srdf|storyboard|sublime\\\\x2dsnippet|targets|tml|ui|urdf|ux|vbproj|vcxproj|vsixmanifest|vssettings|vstemplate|vxml|wixproj|wsdl|wsf|wxi|wxl|wxs|x3d|xacro|xaml|xib|xlf|xliff|xmi|xml|xml\\\\.dist|xmp|xpl|xproc|xproj|xsd|xsp\\\\x2dconfig|xsp\\\\.metadata|xspec|xul|zcml)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.xml.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.xml","patterns":[{"include":"text.xml"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:collada|eagle|labview|web\\\\x2dontology\\\\x2dlanguage|xpages|(?:.*\\\\.)?(?:adml|admx|ant|axaml|axml|brd|builds|ccproj|ccxml|clixml|cproject|cscfg|csdef|csproj|ct|dae|depproj|dita|ditamap|ditaval|dll\\\\.config|dotsettings|filters|fsproj|fxml|glade|gmx|grxml|hzp|iml|ivy|jelly|jsproj|kml|launch|lvclass|lvlib|lvproj|mdpolicy|mjml|mxml|natvis|ndproj|nproj|nuspec|odd|osm|owl|pkgproj|proj|props|ps1xml|psc1|pt|qhelp|rdf|resx|rss|sch|sch|scxml|sfproj|shproj|srdf|storyboard|sublime\\\\x2dsnippet|targets|tml|ui|urdf|ux|vbproj|vcxproj|vsixmanifest|vssettings|vstemplate|vxml|wixproj|wsdl|wsf|wxi|wxl|wxs|x3d|xacro|xaml|xib|xlf|xliff|xmi|xml|xml\\\\.dist|xmp|xpl|xproc|xproj|xsd|xsp\\\\x2dconfig|xsp\\\\.metadata|xspec|xul|zcml)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.xml.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.xml","patterns":[{"include":"text.xml"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-fenced-yaml":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*(`{3,})(?:[\\\\t ]*((?i:jar\\\\x2dmanifest|kaitai\\\\x2dstruct|oasv2\\\\x2dyaml|oasv3\\\\x2dyaml|unity3d\\\\x2dasset|yaml|yml|(?:.*\\\\.)?(?:anim|asset|ksy|lkml|lookml|mat|meta|mir|prefab|raml|reek|rviz|sublime\\\\x2dsyntax|syntax|unity|yaml\\\\x2dtmlanguage|yaml\\\\.sed|yml\\\\.mysql)))(?:[\\\\t ]+((?:[^\\\\n\\\\r`])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.yaml.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.yaml","patterns":[{"include":"source.yaml"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]},{"begin":"(?:^|\\\\G)[\\\\t ]*(~{3,})(?:[\\\\t ]*((?i:jar\\\\x2dmanifest|kaitai\\\\x2dstruct|oasv2\\\\x2dyaml|oasv3\\\\x2dyaml|unity3d\\\\x2dasset|yaml|yml|(?:.*\\\\.)?(?:anim|asset|ksy|lkml|lookml|mat|meta|mir|prefab|raml|reek|rviz|sublime\\\\x2dsyntax|syntax|unity|yaml\\\\x2dtmlanguage|yaml\\\\.sed|yml\\\\.mysql)))(?:[\\\\t ]+((?:[^\\\\n\\\\r])+))?)(?:[\\\\t ]*$)","beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"patterns":[{"include":"#markdown-string"}]}},"end":"(?:^|\\\\G)[\\\\t ]*(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}},"name":"markup.code.yaml.mdx","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.yaml","patterns":[{"include":"source.yaml"}],"while":"(^|\\\\G)(?![\\\\t ]*([`~]{3,})[\\\\t ]*$)"}]}]},"commonmark-code-text":{"captures":{"1":{"name":"string.other.begin.code.mdx"},"2":{"name":"markup.raw.code.mdx markup.inline.raw.code.mdx"},"3":{"name":"string.other.end.code.mdx"}},"match":"(?<!`)(`+)(?!`)(.+?)(?<!`)(\\\\1)(?!`)","name":"markup.code.other.mdx"},"commonmark-definition":{"captures":{"1":{"name":"string.other.begin.mdx"},"2":{"name":"entity.name.identifier.mdx","patterns":[{"include":"#markdown-string"}]},"3":{"name":"string.other.end.mdx"},"4":{"name":"punctuation.separator.key-value.mdx"},"5":{"name":"string.other.begin.destination.mdx"},"6":{"name":"string.other.link.destination.mdx","patterns":[{"include":"#markdown-string"}]},"7":{"name":"string.other.end.destination.mdx"},"8":{"name":"string.other.link.destination.mdx","patterns":[{"include":"#markdown-string"}]},"9":{"name":"string.other.begin.mdx"},"10":{"name":"string.quoted.double.mdx","patterns":[{"include":"#markdown-string"}]},"11":{"name":"string.other.end.mdx"},"12":{"name":"string.other.begin.mdx"},"13":{"name":"string.quoted.single.mdx","patterns":[{"include":"#markdown-string"}]},"14":{"name":"string.other.end.mdx"},"15":{"name":"string.other.begin.mdx"},"16":{"name":"string.quoted.paren.mdx","patterns":[{"include":"#markdown-string"}]},"17":{"name":"string.other.end.mdx"}},"match":"(?:^|\\\\G)[\\\\t ]*(\\\\[)((?:[^\\\\[\\\\\\\\\\\\]]|\\\\\\\\[\\\\[\\\\\\\\\\\\]]?)+?)(\\\\])(:)[ \\\\t]*(?:(<)((?:[^\\\\n<\\\\\\\\>]|\\\\\\\\[<\\\\\\\\>]?)*)(>)|(\\\\g<destination_raw>))(?:[\\\\t ]+(?:(\\")((?:[^\\"\\\\\\\\]|\\\\\\\\[\\"\\\\\\\\]?)*)(\\")|(\')((?:[^\'\\\\\\\\]|\\\\\\\\[\'\\\\\\\\]?)*)(\')|(\\\\()((?:[^\\\\)\\\\\\\\]|\\\\\\\\[\\\\)\\\\\\\\]?)*)(\\\\))))?$(?<destination_raw>(?!\\\\<)(?:(?:[^\\\\p{Cc}\\\\ \\\\\\\\\\\\(\\\\)]|\\\\\\\\[\\\\(\\\\)\\\\\\\\]?)|\\\\(\\\\g<destination_raw>*\\\\))+){0}","name":"meta.link.reference.def.mdx"},"commonmark-hard-break-escape":{"match":"\\\\\\\\$","name":"constant.language.character-escape.line-ending.mdx"},"commonmark-hard-break-trailing":{"match":"( ){2,}$","name":"carriage-return constant.language.character-escape.line-ending.mdx"},"commonmark-heading-atx":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.heading.mdx"},"2":{"name":"entity.name.section.mdx","patterns":[{"include":"#markdown-text"}]},"3":{"name":"punctuation.definition.heading.mdx"}},"match":"(?:^|\\\\G)[\\\\t ]*(#{1}(?!#))(?:[ \\\\t]+([^\\\\r\\\\n]+?)(?:[ \\\\t]+(#+?))?)?[ \\\\t]*$","name":"markup.heading.atx.1.mdx"},{"captures":{"1":{"name":"punctuation.definition.heading.mdx"},"2":{"name":"entity.name.section.mdx","patterns":[{"include":"#markdown-text"}]},"3":{"name":"punctuation.definition.heading.mdx"}},"match":"(?:^|\\\\G)[\\\\t ]*(#{2}(?!#))(?:[ \\\\t]+([^\\\\r\\\\n]+?)(?:[ \\\\t]+(#+?))?)?[ \\\\t]*$","name":"markup.heading.atx.2.mdx"},{"captures":{"1":{"name":"punctuation.definition.heading.mdx"},"2":{"name":"entity.name.section.mdx","patterns":[{"include":"#markdown-text"}]},"3":{"name":"punctuation.definition.heading.mdx"}},"match":"(?:^|\\\\G)[\\\\t ]*(#{3}(?!#))(?:[ \\\\t]+([^\\\\r\\\\n]+?)(?:[ \\\\t]+(#+?))?)?[ \\\\t]*$","name":"markup.heading.atx.3.mdx"},{"captures":{"1":{"name":"punctuation.definition.heading.mdx"},"2":{"name":"entity.name.section.mdx","patterns":[{"include":"#markdown-text"}]},"3":{"name":"punctuation.definition.heading.mdx"}},"match":"(?:^|\\\\G)[\\\\t ]*(#{4}(?!#))(?:[ \\\\t]+([^\\\\r\\\\n]+?)(?:[ \\\\t]+(#+?))?)?[ \\\\t]*$","name":"markup.heading.atx.4.mdx"},{"captures":{"1":{"name":"punctuation.definition.heading.mdx"},"2":{"name":"entity.name.section.mdx","patterns":[{"include":"#markdown-text"}]},"3":{"name":"punctuation.definition.heading.mdx"}},"match":"(?:^|\\\\G)[\\\\t ]*(#{5}(?!#))(?:[ \\\\t]+([^\\\\r\\\\n]+?)(?:[ \\\\t]+(#+?))?)?[ \\\\t]*$","name":"markup.heading.atx.5.mdx"},{"captures":{"1":{"name":"punctuation.definition.heading.mdx"},"2":{"name":"entity.name.section.mdx","patterns":[{"include":"#markdown-text"}]},"3":{"name":"punctuation.definition.heading.mdx"}},"match":"(?:^|\\\\G)[\\\\t ]*(#{6}(?!#))(?:[ \\\\t]+([^\\\\r\\\\n]+?)(?:[ \\\\t]+(#+?))?)?[ \\\\t]*$","name":"markup.heading.atx.6.mdx"}]},"commonmark-heading-setext":{"patterns":[{"match":"(?:^|\\\\G)[\\\\t ]*(={1,})[ \\\\t]*$","name":"markup.heading.setext.1.mdx"},{"match":"(?:^|\\\\G)[\\\\t ]*(-{1,})[ \\\\t]*$","name":"markup.heading.setext.2.mdx"}]},"commonmark-label-end":{"patterns":[{"captures":{"1":{"name":"string.other.end.mdx"},"2":{"name":"string.other.begin.mdx"},"3":{"name":"string.other.begin.destination.mdx"},"4":{"name":"string.other.link.destination.mdx","patterns":[{"include":"#markdown-string"}]},"5":{"name":"string.other.end.destination.mdx"},"6":{"name":"string.other.link.destination.mdx","patterns":[{"include":"#markdown-string"}]},"7":{"name":"string.other.begin.mdx"},"8":{"name":"string.quoted.double.mdx","patterns":[{"include":"#markdown-string"}]},"9":{"name":"string.other.end.mdx"},"10":{"name":"string.other.begin.mdx"},"11":{"name":"string.quoted.single.mdx","patterns":[{"include":"#markdown-string"}]},"12":{"name":"string.other.end.mdx"},"13":{"name":"string.other.begin.mdx"},"14":{"name":"string.quoted.paren.mdx","patterns":[{"include":"#markdown-string"}]},"15":{"name":"string.other.end.mdx"},"16":{"name":"string.other.end.mdx"}},"match":"(\\\\])(\\\\()[\\\\t ]*(?:(?:(<)((?:[^\\\\n<\\\\\\\\>]|\\\\\\\\[<\\\\\\\\>]?)*)(>)|(\\\\g<destination_raw>))(?:[\\\\t ]+(?:(\\")((?:[^\\"\\\\\\\\]|\\\\\\\\[\\"\\\\\\\\]?)*)(\\")|(\')((?:[^\'\\\\\\\\]|\\\\\\\\[\'\\\\\\\\]?)*)(\')|(\\\\()((?:[^\\\\)\\\\\\\\]|\\\\\\\\[\\\\)\\\\\\\\]?)*)(\\\\))))?)?[\\\\t ]*(\\\\))(?<destination_raw>(?!\\\\<)(?:(?:[^\\\\p{Cc}\\\\ \\\\\\\\\\\\(\\\\)]|\\\\\\\\[\\\\(\\\\)\\\\\\\\]?)|\\\\(\\\\g<destination_raw>*\\\\))+){0}"},{"captures":{"1":{"name":"string.other.end.mdx"},"2":{"name":"string.other.begin.mdx"},"3":{"name":"entity.name.identifier.mdx","patterns":[{"include":"#markdown-string"}]},"4":{"name":"string.other.end.mdx"}},"match":"(\\\\])(\\\\[)((?:[^\\\\[\\\\\\\\\\\\]]|\\\\\\\\[\\\\[\\\\\\\\\\\\]]?)+?)(\\\\])"},{"captures":{"1":{"name":"string.other.end.mdx"}},"match":"(\\\\])"}]},"commonmark-label-start":{"patterns":[{"match":"\\\\!\\\\[(?!\\\\^)","name":"string.other.begin.image.mdx"},{"match":"\\\\[","name":"string.other.begin.link.mdx"}]},"commonmark-list-item":{"patterns":[{"begin":"(?:^|\\\\G)[\\\\t ]*((?:[*+-]))(?:[ ]{4}(?![ ])|\\\\t)(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"variable.unordered.list.mdx"},"2":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t)[ ]{1}"},{"begin":"(?:^|\\\\G)[\\\\t ]*((?:[*+-]))(?:[ ]{3}(?![ ]))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"variable.unordered.list.mdx"},"2":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t)"},{"begin":"(?:^|\\\\G)[\\\\t ]*((?:[*+-]))(?:[ ]{2}(?![ ]))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"variable.unordered.list.mdx"},"2":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)[ ]{3}"},{"begin":"(?:^|\\\\G)[\\\\t ]*((?:[*+-]))(?:[ ]{1}|(?=\\\\n))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"variable.unordered.list.mdx"},"2":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)[ ]{2}"},{"begin":"(?:^|\\\\G)[\\\\t ]*([0-9]{9})((?:\\\\.|\\\\)))(?:[ ]{4}(?![ ])|\\\\t(?![\\\\t ]))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t){3}[ ]{2}"},{"begin":"(?:^|\\\\G)[\\\\t ]*(?:([0-9]{9})((?:\\\\.|\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{8})((?:\\\\.|\\\\)))(?:[ ]{4}(?![ ])))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"string.other.number.mdx"},"4":{"name":"variable.ordered.list.mdx"},"5":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t){3}[ ]{1}"},{"begin":"(?:^|\\\\G)[\\\\t ]*(?:([0-9]{9})((?:\\\\.|\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{8})((?:\\\\.|\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{7})((?:\\\\.|\\\\)))(?:[ ]{4}(?![ ])))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"string.other.number.mdx"},"4":{"name":"variable.ordered.list.mdx"},"5":{"name":"string.other.number.mdx"},"6":{"name":"variable.ordered.list.mdx"},"7":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t){3}"},{"begin":"(?:^|\\\\G)[\\\\t ]*(?:([0-9]{9})((?:\\\\.|\\\\)))(?:[ ]{1}|(?=[ \\\\t]*\\\\n))|([0-9]{8})((?:\\\\.|\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{7})((?:\\\\.|\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{6})((?:\\\\.|\\\\)))(?:[ ]{4}(?![ ])))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"string.other.number.mdx"},"4":{"name":"variable.ordered.list.mdx"},"5":{"name":"string.other.number.mdx"},"6":{"name":"variable.ordered.list.mdx"},"7":{"name":"string.other.number.mdx"},"8":{"name":"variable.ordered.list.mdx"},"9":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t){2}[ ]{3}"},{"begin":"(?:^|\\\\G)[\\\\t ]*(?:([0-9]{8})((?:\\\\.|\\\\)))(?:[ ]{1}|(?=[ \\\\t]*\\\\n))|([0-9]{7})((?:\\\\.|\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{6})((?:\\\\.|\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{5})((?:\\\\.|\\\\)))(?:[ ]{4}(?![ ])))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"string.other.number.mdx"},"4":{"name":"variable.ordered.list.mdx"},"5":{"name":"string.other.number.mdx"},"6":{"name":"variable.ordered.list.mdx"},"7":{"name":"string.other.number.mdx"},"8":{"name":"variable.ordered.list.mdx"},"9":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t){2}[ ]{2}"},{"begin":"(?:^|\\\\G)[\\\\t ]*(?:([0-9]{7})((?:\\\\.|\\\\)))(?:[ ]{1}|(?=[ \\\\t]*\\\\n))|([0-9]{6})((?:\\\\.|\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{5})((?:\\\\.|\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{4})((?:\\\\.|\\\\)))(?:[ ]{4}(?![ ])))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"string.other.number.mdx"},"4":{"name":"variable.ordered.list.mdx"},"5":{"name":"string.other.number.mdx"},"6":{"name":"variable.ordered.list.mdx"},"7":{"name":"string.other.number.mdx"},"8":{"name":"variable.ordered.list.mdx"},"9":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t){2}[ ]{1}"},{"begin":"(?:^|\\\\G)[\\\\t ]*(?:([0-9]{6})((?:\\\\.|\\\\)))(?:[ ]{1}|(?=[ \\\\t]*\\\\n))|([0-9]{5})((?:\\\\.|\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{4})((?:\\\\.|\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{3})((?:\\\\.|\\\\)))(?:[ ]{4}(?![ ])))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"string.other.number.mdx"},"4":{"name":"variable.ordered.list.mdx"},"5":{"name":"string.other.number.mdx"},"6":{"name":"variable.ordered.list.mdx"},"7":{"name":"string.other.number.mdx"},"8":{"name":"variable.ordered.list.mdx"},"9":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t){2}"},{"begin":"(?:^|\\\\G)[\\\\t ]*(?:([0-9]{5})((?:\\\\.|\\\\)))(?:[ ]{1}|(?=[ \\\\t]*\\\\n))|([0-9]{4})((?:\\\\.|\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{3})((?:\\\\.|\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{2})((?:\\\\.|\\\\)))(?:[ ]{4}(?![ ])))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"string.other.number.mdx"},"4":{"name":"variable.ordered.list.mdx"},"5":{"name":"string.other.number.mdx"},"6":{"name":"variable.ordered.list.mdx"},"7":{"name":"string.other.number.mdx"},"8":{"name":"variable.ordered.list.mdx"},"9":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t)[ ]{3}"},{"begin":"(?:^|\\\\G)[\\\\t ]*(?:([0-9]{4})((?:\\\\.|\\\\)))(?:[ ]{1}|(?=[ \\\\t]*\\\\n))|([0-9]{3})((?:\\\\.|\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{2})((?:\\\\.|\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{1})((?:\\\\.|\\\\)))(?:[ ]{4}(?![ ])))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"string.other.number.mdx"},"4":{"name":"variable.ordered.list.mdx"},"5":{"name":"string.other.number.mdx"},"6":{"name":"variable.ordered.list.mdx"},"7":{"name":"string.other.number.mdx"},"8":{"name":"variable.ordered.list.mdx"},"9":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t)[ ]{2}"},{"begin":"(?:^|\\\\G)[\\\\t ]*(?:([0-9]{3})((?:\\\\.|\\\\)))(?:[ ]{1}|(?=[ \\\\t]*\\\\n))|([0-9]{2})((?:\\\\.|\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{1})((?:\\\\.|\\\\)))(?:[ ]{3}(?![ ])))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"string.other.number.mdx"},"4":{"name":"variable.ordered.list.mdx"},"5":{"name":"string.other.number.mdx"},"6":{"name":"variable.ordered.list.mdx"},"7":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t)[ ]{1}"},{"begin":"(?:^|\\\\G)[\\\\t ]*(?:([0-9]{2})((?:\\\\.|\\\\)))(?:[ ]{1}|(?=[ \\\\t]*\\\\n))|([0-9])((?:\\\\.|\\\\)))(?:[ ]{2}(?![ ])))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"string.other.number.mdx"},"4":{"name":"variable.ordered.list.mdx"},"5":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t)"},{"begin":"(?:^|\\\\G)[\\\\t ]*([0-9])((?:\\\\.|\\\\)))(?:[ ]{1}|(?=[ \\\\t]*\\\\n))(\\\\[[\\\\t Xx]\\\\](?=[\\\\t\\\\n\\\\r ]+(?:$|[^\\\\t\\\\n\\\\r ])))?","beginCaptures":{"1":{"name":"string.other.number.mdx"},"2":{"name":"variable.ordered.list.mdx"},"3":{"name":"keyword.other.tasklist.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)[ ]{3}"}]},"commonmark-paragraph":{"begin":"(?![\\\\t ]*$)","name":"meta.paragraph.mdx","patterns":[{"include":"#markdown-text"}],"while":"(?:^|\\\\G)(?:[ ]{4}|\\\\t)"},"commonmark-thematic-break":{"match":"(?:^|\\\\G)[\\\\t ]*([-*_])[ \\\\t]*(?:\\\\1[ \\\\t]*){2,}$","name":"meta.separator.mdx"},"extension-gfm-autolink-literal":{"patterns":[{"match":"(?<=^|[\\\\t\\\\n\\\\r \\\\(\\\\*\\\\_\\\\[\\\\]~])(?=(?i:www)\\\\.[^\\\\n\\\\r])(?:(?:[\\\\p{L}\\\\p{N}]|-|[\\\\._](?!(?:[!\\"\'\\\\)\\\\*,\\\\.:;<\\\\?_~]*(?:[\\\\s<]|\\\\][\\\\t\\\\n \\\\(\\\\[]))))+\\\\g<path>?)?(?<path>(?:(?:[^\\\\t\\\\n\\\\r !\\"&\'\\\\(\\\\)\\\\*,\\\\.:;<\\\\?\\\\]_~]|&(?![A-Za-z]*;(?:[!\\"\'\\\\)\\\\*,\\\\.:;<\\\\?_~]*(?:[\\\\s<]|\\\\][\\\\t\\\\n \\\\(\\\\[])))|[!\\"\'\\\\)\\\\*,\\\\.:;\\\\?_~](?!(?:[!\\"\'\\\\)\\\\*,\\\\.:;<\\\\?_~]*(?:[\\\\s<]|\\\\][\\\\t\\\\n \\\\(\\\\[]))))|\\\\(\\\\g<path>*\\\\))+){0}","name":"string.other.link.autolink.literal.www.mdx"},{"match":"(?<=^|[^A-Za-z])(?i:https?://)(?=[\\\\p{L}\\\\p{N}])(?:(?:[\\\\p{L}\\\\p{N}]|-|[\\\\._](?!(?:[!\\"\'\\\\)\\\\*,\\\\.:;<\\\\?_~]*(?:[\\\\s<]|\\\\][\\\\t\\\\n \\\\(\\\\[]))))+\\\\g<path>?)?(?<path>(?:(?:[^\\\\t\\\\n\\\\r !\\"&\'\\\\(\\\\)\\\\*,\\\\.:;<\\\\?\\\\]_~]|&(?![A-Za-z]*;(?:[!\\"\'\\\\)\\\\*,\\\\.:;<\\\\?_~]*(?:[\\\\s<]|\\\\][\\\\t\\\\n \\\\(\\\\[])))|[!\\"\'\\\\)\\\\*,\\\\.:;\\\\?_~](?!(?:[!\\"\'\\\\)\\\\*,\\\\.:;<\\\\?_~]*(?:[\\\\s<]|\\\\][\\\\t\\\\n \\\\(\\\\[]))))|\\\\(\\\\g<path>*\\\\))+){0}","name":"string.other.link.autolink.literal.http.mdx"},{"match":"(?<=^|[^A-Za-z/])(?i:mailto:|xmpp:)?(?:[0-9A-Za-z+\\\\-\\\\._])+@(?:(?:[0-9A-Za-z]|[-_](?!(?:[!\\"\'\\\\)\\\\*,\\\\.:;<\\\\?_~]*(?:[\\\\s<]|\\\\][\\\\t\\\\n \\\\(\\\\[]))))+(?:\\\\.(?!(?:[!\\"\'\\\\)\\\\*,\\\\.:;<\\\\?_~]*(?:[\\\\s<]|\\\\][\\\\t\\\\n \\\\(\\\\[])))))+(?:[A-Za-z]|[-_](?!(?:[!\\"\'\\\\)\\\\*,\\\\.:;<\\\\?_~]*(?:[\\\\s<]|\\\\][\\\\t\\\\n \\\\(\\\\[]))))+","name":"string.other.link.autolink.literal.email.mdx"}]},"extension-gfm-footnote-call":{"captures":{"1":{"name":"string.other.begin.link.mdx"},"2":{"name":"string.other.begin.footnote.mdx"},"3":{"name":"entity.name.identifier.mdx","patterns":[{"include":"#markdown-string"}]},"4":{"name":"string.other.end.footnote.mdx"}},"match":"(\\\\[)(\\\\^)((?:[^\\\\t\\\\n\\\\r \\\\[\\\\\\\\\\\\]]|\\\\\\\\[\\\\[\\\\\\\\\\\\]]?)+)(\\\\])"},"extension-gfm-footnote-definition":{"begin":"(?:^|\\\\G)[\\\\t ]*(\\\\[)(\\\\^)((?:[^\\\\t\\\\n\\\\r \\\\[\\\\\\\\\\\\]]|\\\\\\\\[\\\\[\\\\\\\\\\\\]]?)+)(\\\\])(:)[\\\\t ]*","beginCaptures":{"1":{"name":"string.other.begin.link.mdx"},"2":{"name":"string.other.begin.footnote.mdx"},"3":{"name":"entity.name.identifier.mdx","patterns":[{"include":"#markdown-string"}]},"4":{"name":"string.other.end.footnote.mdx"}},"patterns":[{"include":"#markdown-sections"}],"while":"^(?=[\\\\t ]*$)|(?:^|\\\\G)(?:[ ]{4}|\\\\t)"},"extension-gfm-strikethrough":{"match":"(?<=\\\\S)(?<!~)~{1,2}(?!~)|(?<!~)~{1,2}(?=\\\\S)(?!~)","name":"string.other.strikethrough.mdx"},"extension-gfm-table":{"begin":"(?:^|\\\\G)[\\\\t ]*(?=\\\\|[^\\\\n\\\\r]+\\\\|[ \\\\t]*$)","end":"^(?=[\\\\t ]*$)|$","patterns":[{"captures":{"1":{"patterns":[{"include":"#markdown-text"}]}},"match":"(?<=\\\\||(?:^|\\\\G))[\\\\t ]*((?:[^\\\\n\\\\r\\\\\\\\\\\\|]|\\\\\\\\[\\\\\\\\\\\\|]?)+?)[\\\\t ]*(?=\\\\||$)"},{"match":"(?:\\\\|)","name":"markup.list.table-delimiter.mdx"}]},"extension-github-gemoji":{"captures":{"1":{"name":"punctuation.definition.gemoji.begin.mdx"},"2":{"name":"keyword.control.gemoji.mdx"},"3":{"name":"punctuation.definition.gemoji.end.mdx"}},"match":"(:)((?:(?:(?:hand_with_index_finger_and_thumb_cros|mailbox_clo|fist_rai|confu)s|r(?:aised_hand_with_fingers_splay|e(?:gister|l(?:iev|ax)))|disappointed_reliev|confound|(?:a(?:ston|ngu)i|flu)sh|unamus|hush)e|(?:chart_with_(?:down|up)wards_tre|large_orange_diamo|small_(?:orang|blu)e_diamo|large_blue_diamo|parasol_on_grou|loud_sou|rewi)n|(?:rightwards_pushing_h|hourglass_flowing_s|leftwards_(?:pushing_)?h|(?:raised_back_of|palm_(?:down|up)|call_me)_h|(?:(?:(?:clippert|ascensi)on|norfolk)_is|christmas_is|desert_is|bouvet_is|new_zea|thai|eng|fin|ire)l|rightwards_h|pinching_h|writing_h|s(?:w(?:itzer|azi)|cot)l|magic_w|ok_h|icel)an|s(?:un_behind_(?:large|small|rain)_clou|hallow_pan_of_foo|tar_of_davi|leeping_be|kateboar|a(?:tisfie|uropo)|hiel|oun|qui)|(?:ear_with_hearing_a|pouring_liqu)i|(?:identification_c|(?:arrow_(?:back|for)|fast_for)w|credit_c|woman_be|biohaz|man_be|l(?:eop|iz))ar|m(?:usical_key|ortar_)boar|(?:drop_of_bl|canned_f)oo|c(?:apital_abc|upi)|person_bal|(?:black_bi|(?:cust|plac)a)r|(?:clip|key)boar|mermai|pea_po|worrie|po(?:la|u)n|threa|dv)d|(?:(?:(?:face_with_open_eyes_and_hand_over|face_with_diagonal|open|no)_mou|h(?:and_over_mou|yacin)|mammo)t|running_shirt_with_sas|(?:(?:fishing_pole_and_|blow)fi|(?:tropical_f|petri_d)i|(?:paint|tooth)bru|banglade|jellyfi)s|(?:camera_fl|wavy_d)as|triump|menora|pouc|blus|watc|das|has)h|(?:s(?:o(?:(?:uth_georgia_south_sandwich|lomon)_island|ck)|miling_face_with_three_heart|t_kitts_nevi|weat_drop|agittariu|c(?:orpiu|issor)|ymbol|hort)|twisted_rightwards_arrow|(?:northern_mariana|heard_mcdonald|(?:british_virgi|us_virgi|pitcair|cayma)n|turks_caicos|us_outlying|(?:falk|a)land|marshall|c(?:anary|ocos)|faroe)_island|(?:face_holding_back_tea|(?:c(?:ard_index_divid|rossed_fing)|pinched_fing)e|night_with_sta)r|(?:two_(?:wo)?men_holding|people_holding|heart|open)_hand|(?:sunrise_over_mountai|(?:congratul|united_n)atio|jea)n|(?:caribbean_)?netherland|(?:f(?:lower_playing_car|ace_in_clou)|crossed_swor|prayer_bea)d|(?:money_with_win|nest_with_eg|crossed_fla|hotsprin)g|revolving_heart|(?:high_brightne|(?:expression|wire)le|(?:tumbler|wine)_gla|milk_gla|compa|dre)s|performing_art|earth_america|orthodox_cros|l(?:ow_brightnes|a(?:tin_cros|o)|ung)|no_pedestrian|c(?:ontrol_kno|lu)b|b(?:ookmark_tab|rick|ean)|nesting_doll|cook_island|(?:fleur_de_l|tenn)i|(?:o(?:ncoming_b|phiuch|ctop)|hi(?:ppopotam|bisc)|trolleyb|m(?:(?:rs|x)_cla|auriti|inib)|belar|cact|abac|(?:cyp|tau)r)u|medal_sport|(?:chopstic|firewor)k|rhinocero|(?:p(?:aw_prin|eanu)|footprin)t|two_heart|princes|(?:hondur|baham)a|barbado|aquariu|c(?:ustom|hain)|maraca|comoro|flag|wale|hug|vh)s|(?:(?:diamond_shape_with_a_dot_ins|playground_sl)id|(?:(?:first_quarter|last_quarter|full|new)_moon_with|(?:zipper|money)_mouth|dotted_line|upside_down|c(?:rying_c|owboy_h)at|(?:disguis|nauseat)ed|neutral|monocle|panda|tired|woozy|clown|nerd|zany|fox)_fac|s(?:t(?:uck_out_tongue_winking_ey|eam_locomotiv)|(?:lightly_(?:frown|smil)|neez|h(?:ush|ak))ing_fac|(?:tudio_micropho|(?:hinto_shr|lot_mach)i|ierra_leo|axopho)n|mall_airplan|un_with_fac|a(?:luting_fac|tellit|k)|haved_ic|y(?:nagogu|ring)|n(?:owfl)?ak|urinam|pong)|(?:black_(?:medium_)?small|white_(?:(?:medium_)?small|large)|(?:black|white)_medium|black_large|orange|purple|yellow|b(?:rown|lue)|red)_squar|(?:(?:perso|woma)n_with_|man_with_)?probing_can|(?:p(?:ut_litter_in_its_pl|outing_f)|frowning_f|cold_f|wind_f|hot_f)ac|(?:arrows_c(?:ounterc)?lockwi|computer_mou|derelict_hou|carousel_hor|c(?:ity_sunri|hee)|heartpul|briefca|racehor|pig_no|lacros)s|(?:(?:face_with_head_band|ideograph_advant|adhesive_band|under|pack)a|currency_exchan|l(?:eft_l)?ugga|woman_jud|name_bad|man_jud|jud)g|face_with_peeking_ey|(?:(?:e(?:uropean_post_off|ar_of_r)|post_off)i|information_sour|ambulan)c|artificial_satellit|(?:busts?_in_silhouet|(?:vulcan_sal|parach)u|m(?:usical_no|ayot)|ro(?:ller_ska|set)|timor_les|ice_ska)t|(?:(?:incoming|red)_envelo|s(?:ao_tome_princi|tethosco)|(?:micro|tele)sco|citysca)p|(?:(?:(?:convenience|department)_st|musical_sc)o|f(?:light_depar|ramed_pic)tu|love_you_gestu|heart_on_fi|japanese_og|cote_divoi|perseve|singapo)r|b(?:ullettrain_sid|eliz|on)|(?:(?:female_|male_)?dete|radioa)ctiv|(?:christmas|deciduous|evergreen|tanabata|palm)_tre|(?:vibration_mo|cape_ver)d|(?:fortune_cook|neckt|self)i|(?:fork_and_)?knif|athletic_sho|(?:p(?:lead|arty)|drool|curs|melt|yawn|ly)ing_fac|vomiting_fac|(?:(?:c(?:urling_st|ycl)|meat_on_b|repeat_|headst)o|(?:fire_eng|tanger|ukra)i|rice_sce|(?:micro|i)pho|champag|pho)n|(?:cricket|video)_gam|(?:boxing_glo|oli)v|(?:d(?:ragon|izzy)|monkey)_fac|(?:m(?:artin|ozamb)iq|fond)u|wind_chim|test_tub|flat_sho|m(?:a(?:ns_sho|t)|icrob|oos|ut)|(?:handsh|fish_c|moon_c|cupc)ak|nail_car|zimbabw|ho(?:neybe|l)|ice_cub|airplan|pensiv|c(?:a(?:n(?:dl|o)|k)|o(?:ffe|oki))|tongu|purs|f(?:lut|iv)|d(?:at|ov)|n(?:iu|os)|kit|rag|ax)e|(?:(?:british_indian_ocean_territo|(?:plate_with_cutl|batt)e|medal_milita|low_batte|hunga|wea)r|family_(?:woman_(?:woman_(?:girl|boy)|girl|boy)|man_(?:woman_(?:girl|boy)|man_(?:girl|boy)|girl|boy))_bo|person_feeding_bab|woman_feeding_bab|s(?:u(?:spension_railwa|nn)|t(?:atue_of_libert|_barthelem|rawberr))|(?:m(?:ountain_cable|ilky_)|aerial_tram)wa|articulated_lorr|man_feeding_bab|mountain_railwa|partly_sunn|(?:vatican_c|infin)it|(?:outbox_tr|inbox_tr|birthd|motorw|paragu|urugu|norw|x_r)a|butterfl|ring_buo|t(?:urke|roph)|angr|fogg)y|(?:(?:perso|woma)n_in_motorized_wheelchai|(?:(?:notebook_with_decorative_c|four_leaf_cl)ov|(?:index_pointing_at_the_vie|white_flo)w|(?:face_with_thermome|non\\\\-potable_wa|woman_firefigh|desktop_compu|m(?:an_firefigh|otor_scoo)|(?:ro(?:ller_coa|o)|oy)s|potable_wa|kick_scoo|thermome|firefigh|helicop|ot)t|(?:woman_factory_wor|(?:woman_office|woman_health|health)_wor|man_(?:factory|office|health)_wor|(?:factory|office)_wor|rice_crac|black_jo|firecrac)k|telephone_receiv|(?:palms_up_toget|f(?:ire_extinguis|eat)|teac)h|(?:(?:open_)?file_fol|level_sli)d|police_offic|f(?:lying_sauc|arm)|woman_teach|roll_of_pap|(?:m(?:iddle_f|an_s)in|woman_sin|hambur|plun|dag)g|do_not_litt|wilted_flow|woman_farm|man_(?:teach|farm)|(?:bell_pe|hot_pe|fli)pp|l(?:o(?:udspeak|ve_lett|bst)|edg|add)|tokyo_tow|c(?:ucumb|lapp|anc)|b(?:e(?:ginn|av)|adg)|print|hamst)e|(?:perso|woma)n_in_manual_wheelchai|m(?:an(?:_in_motorized|(?:_in_man)?ual)|otorized)_wheelchai|(?:person_(?:white|curly|red)_|wheelc)hai|triangular_rule|(?:film_project|e(?:l_salv|cu)ad|elevat|tract|anch)o|s(?:traight_rul|pace_invad|crewdriv|nowboard|unflow|peak|wimm|ing|occ|how|urf|ki)e|r(?:ed_ca|unne|azo)|d(?:o(?:lla|o)|ee)|barbe)r|(?:(?:cloud_with_(?:lightning_and_)?ra|japanese_gobl|round_pushp|liechtenste|mandar|pengu|dolph|bahra|pushp|viol)i|(?:couple(?:_with_heart_wo|kiss_)man|construction_worker|(?:mountain_bik|bow|row)ing|lotus_position|(?:w(?:eight_lift|alk)|climb)ing|white_haired|curly_haired|raising_hand|super(?:villain|hero)|red_haired|basketball|s(?:(?:wimm|urf)ing|assy)|haircut|no_good|(?:vampir|massag)e|b(?:iking|ald)|zombie|fairy|mage|elf|ng)_(?:wo)?ma|(?:(?:couple_with_heart_man|isle_of)_m|(?:couplekiss_woman_|(?:b(?:ouncing_ball|lond_haired)|tipping_hand|pregnant|kneeling|deaf)_|frowning_|s(?:tanding|auna)_|po(?:uting_|lice)|running_|blonde_|o(?:lder|k)_)wom|(?:perso|woma)n_with_turb|(?:b(?:ouncing_ball|lond_haired)|tipping_hand|pregnant|kneeling|deaf)_m|f(?:olding_hand_f|rowning_m)|man_with_turb|(?:turkmen|afghan|pak)ist|s(?:tanding_m|(?:outh_s)?ud|auna_m)|po(?:uting_|lice)m|running_m|azerbaij|k(?:yrgyz|azakh)st|tajikist|uzbekist|o(?:lder_m|k_m|ce)|(?:orang|bh)ut|taiw|jord)a|s(?:mall_red_triangle_dow|(?:valbard_jan_may|int_maart|ev)e|afety_pi|top_sig|t_marti|(?:corpi|po|o)o|wede)|(?:heavy_(?:d(?:ivision|ollar)|equals|minus|plus)|no_entry|female|male)_sig|(?:arrow_(?:heading|double)_d|p(?:erson_with_cr|oint_d)|arrow_up_d|thumbsd)ow|(?:house_with_gard|l(?:ock_with_ink_p|eafy_gre)|dancing_(?:wo)?m|fountain_p|keycap_t|chick|ali|yem|od)e|(?:izakaya|jack_o)_lanter|(?:funeral_u|(?:po(?:stal_h|pc)|capric)o|unico)r|chess_paw|b(?:a(?:llo|c)o|eni|rai)|l(?:anter|io)|c(?:o(?:ff)?i|row)|melo|rame|oma|yar)n|(?:s(?:t(?:uck_out_tongue_closed_ey|_vincent_grenadin)|kull_and_crossbon|unglass|pad)|(?:french_souther|palestinia)n_territori|(?:face_with_spiral|kissing_smiling)_ey|united_arab_emirat|kissing_closed_ey|(?:clinking_|dark_sun|eye)glass|(?:no_mobile_|head)phon|womans_cloth|b(?:allet_sho|lueberri)|philippin|(?:no_bicyc|seychel)l|roll_ey|(?:cher|a)ri|p(?:ancak|isc)|maldiv|leav)es|(?:f(?:amily_(?:woman_(?:woman_)?|man_(?:woman_|man_)?)girl_gir|earfu)|(?:woman_playing_hand|m(?:an_playing_hand|irror_)|c(?:onfetti|rystal)_|volley|track|base|8)bal|(?:(?:m(?:ailbox_with_(?:no_)?m|onor)|cockt|e\\\\-m)a|(?:person|bride|woman)_with_ve|man_with_ve|light_ra|braz|ema)i|(?:transgender|baby)_symbo|passport_contro|(?:arrow_(?:down|up)_sm|rice_b|footb)al|(?:dromedary_cam|ferris_whe|love_hot|high_he|pretz|falaf|isra)e|page_with_cur|me(?:dical_symbo|ta)|(?:n(?:ewspaper_ro|o_be)|bellhop_be)l|rugby_footbal|s(?:chool_satche|(?:peak|ee)_no_evi|oftbal|crol|anda|nai|hel)|(?:peace|atom)_symbo|hear_no_evi|cora|hote|bage|labe|rof|ow)l|(?:(?:negative_squared_cross|heavy_exclamation|part_alternation)_mar|(?:eight_spoked_)?asteris|(?:ballot_box_with_che|(?:(?:mantelpiece|alarm|timer)_c|un)lo|(?:ha(?:(?:mmer_and|ir)_p|tch(?:ing|ed)_ch)|baby_ch|joyst)i|railway_tra|lipsti|peaco)c|heavy_check_mar|white_check_mar|tr(?:opical_drin|uc)|national_par|pickup_truc|diving_mas|floppy_dis|s(?:tar_struc|hamroc|kun|har)|chipmun|denmar|duc|hoo|lin)k|(?:leftwards_arrow_with_h|arrow_right_h|(?:o(?:range|pen)|closed|blue)_b)ook|(?:woman_playing_water_pol|m(?:an(?:_(?:playing_water_pol|with_gua_pi_ma|in_tuxed)|g)|ontenegr|o(?:roc|na)c|e(?:xic|tr|m))|(?:perso|woma)n_in_tuxed|(?:trinidad_toba|vir)g|water_buffal|b(?:urkina_fas|a(?:mbo|nj)|ent)|puerto_ric|water_pol|flaming|kangaro|(?:mosqu|burr)it|(?:avoc|torn)ad|curaca|lesoth|potat|ko(?:sov|k)|tomat|d(?:ang|od)|yo_y|hoch|t(?:ac|og)|zer)o|(?:c(?:entral_african|zech)|dominican)_republic|(?:eight_pointed_black_s|six_pointed_s|qa)tar|(?:business_suit_levitat|(?:classical_buil|breast_fee)d|(?:woman_cartwhee|m(?:an_(?:cartwhee|jugg)|en_wrest)|women_wrest|woman_jugg|face_exha|cartwhee|wrest|dump)l|c(?:hildren_cross|amp)|woman_facepalm|woman_shrugg|man_(?:facepalm|shrugg)|people_hugg|(?:person_fe|woman_da|man_da)nc|fist_oncom|horse_rac|(?:no_smo|thin)k|laugh|s(?:eedl|mok)|park|w(?:arn|edd))ing|f(?:a(?:mily(?:_(?:woman_(?:woman_(?:girl|boy)|girl|boy)|man_(?:woman_(?:girl|boy)|man_(?:girl|boy)|girl|boy)))?|ctory)|o(?:u(?:ntain|r)|ot|g)|r(?:owning)?|i(?:re|s[ht])|ly|u)|(?:(?:(?:information_desk|handball|bearded)_|(?:frowning|ok)_|juggling_|mer)pers|(?:previous_track|p(?:lay_or_p)?ause|black_square|white_square|next_track|r(?:ecord|adio)|eject)_butt|(?:wa[nx]ing_(?:crescent|gibbous)_m|bowl_with_sp|crescent_m|racc)o|(?:b(?:ouncing_ball|lond_haired)|tipping_hand|pregnant|kneeling|deaf)_pers|s(?:t(?:_pierre_miquel|op_butt|ati)|tanding_pers|peech_ballo|auna_pers)|r(?:eminder_r)?ibb|thought_ballo|watermel|badmint|c(?:amero|ray)|le(?:ban|m)|oni|bis)on|(?:heavy_heart_exclama|building_construc|heart_decora|exclama)tion|(?:(?:triangular_flag_on_po|(?:(?:woman_)?technolog|m(?:ountain_bicycl|an_technolog)|bicycl)i|(?:wo)?man_scienti|(?:wo)?man_arti|s(?:afety_ve|cienti)|empty_ne)s|(?:vertical_)?traffic_ligh|(?:rescue_worker_helm|military_helm|nazar_amul|city_suns|wastebask|dropl|t(?:rump|oil)|bouqu|buck|magn|secr)e|one_piece_swimsui|(?:(?:arrow_(?:low|upp)er|point)_r|bridge_at_n|copyr|mag_r)igh|(?:bullettrain_fro|(?:potted_pl|croiss|e(?:ggpl|leph))a)n|s(?:t(?:ar_and_cresc|ud)en|cream_ca|mi(?:ley?|rk)_ca|(?:peed|ail)boa|hir)|(?:arrow_(?:low|upp)er|point)_lef|woman_astronau|r(?:o(?:tating_ligh|cke)|eceip)|heart_eyes_ca|man_astronau|(?:woman_stud|circus_t|man_stud|trid)en|(?:ringed_pla|file_cabi)ne|nut_and_bol|(?:older_)?adul|k(?:i(?:ssing_ca|wi_frui)|uwai|no)|(?:pouting_c|c(?:ut_of_m|old_sw)e|womans_h|montserr|(?:(?:motor_|row)b|lab_c)o|heartbe|toph)a|(?:woman_pil|honey_p|man_pil|[cp]arr|teap|rob)o|hiking_boo|arrow_lef|fist_righ|flashligh|f(?:ist_lef|ee)|black_ca|astronau|(?:c(?:hest|oco)|dough)nu|innocen|joy_ca|artis|(?:acce|egy)p|co(?:me|a)|pilo)t|(?:heavy_multiplication_|t\\\\-re)x|(?:s(?:miling_face_with_te|piral_calend)|oncoming_police_c|chocolate_b|ra(?:ilway|cing)_c|police_c|polar_be|teddy_be|madagasc|blue_c|calend|myanm)ar|c(?:l(?:o(?:ud(?:_with_lightning)?|ck(?:1[0-2]?|[2-9]))|ap)?|o(?:uple(?:_with_heart|kiss)?|nstruction|mputer|ok|p|w)|a(?:r(?:d_index)?|mera)|r(?:icket|y)|h(?:art|ild))|(?:m(?:artial_arts_unifo|echanical_a)r|(?:cherry_)?blosso|b(?:aggage_clai|roo)|ice_?crea|facepal|mushroo|restroo|vietna|dru|yu)m|(?:woman_with_headscar|m(?:obile_phone_of|aple_lea)|fallen_lea|wol)f|(?:(?:closed_lock_with|old)_|field_hoc|ice_hoc|han|don)key|g(?:lobe_with_meridians|r(?:e(?:y_(?:exclama|ques)tion|e(?:n(?:_(?:square|circle|salad|apple|heart|book)|land)|ce)|y_heart|nada)|i(?:mac|nn)ing|apes)|u(?:inea_bissau|ernsey|am|n)|(?:(?:olfing|enie)_(?:wo)?|uards(?:wo)?)man|(?:inger_roo|oal_ne|hos)t|(?:uadeloup|ame_di|iraff|oos)e|ift_heart|i(?:braltar|rl)|(?:uatemal|(?:eorg|amb)i|orill|uyan|han)a|uide_dog|(?:oggl|lov)es|arlic|emini|uitar|abon|oat|ear|b)|construction_worker|(?:(?:envelope_with|bow_and)_ar|left_right_ar|raised_eyeb)row|(?:(?:oncoming_automob|crocod)i|right_anger_bubb|l(?:eft_speech_bubb|otion_bott|ady_beet)|congo_brazzavil|eye_speech_bubb|(?:large_blue|orange|purple|yellow|brown)_circ|(?:(?:european|japanese)_cas|baby_bot)t|b(?:alance_sca|eet)|s(?:ewing_need|weat_smi)|(?:black|white|red)_circ|(?:motor|re)cyc|pood|turt|tama|waff|musc|eag)le|first_quarter_moon|s(?:m(?:all_red_triangle|i(?:ley?|rk))|t(?:uck_out_tongue|ar)|hopping|leeping|p(?:arkle|ider)|unrise|nowman|chool|cream|k(?:ull|i)|weat|ix|a)|(?:(?:b(?:osnia_herzegovi|ana)|wallis_futu|(?:french_gui|botsw)a|argenti|st_hele)n|(?:(?:equatorial|papua_new)_guin|north_kor|eritr)e|t(?:ristan_da_cunh|ad)|(?:(?:(?:french_poly|indo)ne|tuni)s|(?:new_caledo|ma(?:urita|cedo)|lithua|(?:tanz|alb|rom)a|arme|esto)n|diego_garc|s(?:audi_arab|t_luc|lov(?:ak|en)|omal|erb)|e(?:arth_as|thiop)|m(?:icrone|alay)s|(?:austra|mongo)l|c(?:ambod|roat)|(?:bulga|alge)r|(?:colom|nami|zam)b|boliv|l(?:iber|atv))i|(?:wheel_of_dhar|cine|pana)m|(?:(?:(?:closed|beach|open)_)?umbrel|ceuta_melil|venezue|ang(?:uil|o)|koa)l|c(?:ongo_kinshas|anad|ub)|(?:western_saha|a(?:mpho|ndor)|zeb)r|american_samo|video_camer|m(?:o(?:vie_camer|ldov)|alt|eg)|(?:earth_af|costa_)ric|s(?:outh_afric|ri_lank|a(?:mo|nt))|bubble_te|(?:antarct|jama)ic|ni(?:caragu|geri|nj)|austri|pi(?:nat|zz)|arub|k(?:eny|aab)|indi|u7a7|l(?:lam|ib[ry])|dn)a|l(?:ast_quarter_moon|o(?:tus|ck)|ips|eo)|(?:hammer_and_wren|c(?:ockroa|hur)|facepun|wren|crut|pun)ch|s(?:nowman_with_snow|ignal_strength|weet_potato|miling_imp|p(?:ider_web|arkle[rs])|w(?:im_brief|an)|a(?:n(?:_marino|dwich)|lt)|topwatch|t(?:a(?:dium|r[2s])|ew)|l(?:e(?:epy|d)|oth)|hrimp|yria|carf|(?:hee|oa)p|ea[lt]|h(?:oe|i[pt])|o[bs])|(?:s(?:tuffed_flatbre|p(?:iral_notep|eaking_he))|(?:exploding_h|baguette_br|flatbr)e)ad|(?:arrow_(?:heading|double)_u|(?:p(?:lace_of_wor|assenger_)sh|film_str|tul)i|page_facing_u|biting_li|(?:billed_c|world_m)a|mouse_tra|(?:curly_lo|busst)o|thumbsu|lo(?:llip)?o|clam|im)p|(?:anatomical|light_blue|sparkling|kissing|mending|orange|purple|yellow|broken|b(?:rown|l(?:ack|ue))|pink)_heart|(?:(?:transgender|black)_fla|mechanical_le|(?:checkered|pirate)_fla|electric_plu|rainbow_fla|poultry_le|service_do|white_fla|luxembour|fried_eg|moneyba|h(?:edgeh|otd)o|shru)g|(?:cloud_with|mountain)_snow|(?:(?:antigua_barb|berm)u|(?:kh|ug)an|rwan)da|(?:3r|2n)d_place_medal|1(?:st_place_medal|234|00)|lotus_position|(?:w(?:eight_lift|alk)|climb)ing|(?:(?:cup_with_str|auto_ricksh)a|carpentry_sa|windo|jigsa)w|(?:(?:couch_and|diya)_la|f(?:ried_shri|uelpu))mp|(?:woman_mechan|man_mechan|alemb)ic|(?:european_un|accord|collis|reun)ion|(?:flight_arriv|hospit|portug|seneg|nep)al|card_file_box|(?:(?:oncoming_)?tax|m(?:o(?:unt_fuj|ya)|alaw)|s(?:paghett|ush|ar)|b(?:r(?:occol|une)|urund)|(?:djibou|kiriba)t|hait|fij)i|(?:shopping_c|white_he|bar_ch)art|d(?:isappointed|ominica|e(?:sert)?)|raising_hand|super(?:villain|hero)|b(?:e(?:verage_box|ers|d)|u(?:bbles|lb|g)|i(?:k(?:ini|e)|rd)|o(?:o(?:ks|t)|a[rt]|y)|read|a[cn]k)|ra(?:ised_hands|bbit2|t)|(?:hindu_tem|ap)ple|thong_sandal|a(?:r(?:row_(?:right|down|up)|t)|bc?|nt)?|r(?:a(?:i(?:sed_hand|nbow)|bbit|dio|m)|u(?:nning)?|epeat|i(?:ng|ce)|o(?:ck|se))|takeout_box|(?:flying_|mini)disc|(?:(?:interrob|yin_y)a|b(?:o(?:omera|wli)|angba)|(?:ping_p|hong_k)o|calli|mahjo)ng|b(?:a(?:llot_box|sket|th?|by)|o(?:o(?:k(?:mark)?|m)|w)|u(?:tter|s)|e(?:ll|er?|ar))?|heart_eyes|basketball|(?:paperclip|dancer|ticket)s|point_up_2|(?:wo)?man_cook|n(?:ew(?:spaper)?|o(?:tebook|_entry)|iger)|t(?:e(?:lephone|a)|o(?:oth|p)|r(?:oll)?|wo)|h(?:o(?:u(?:rglass|se)|rse)|a(?:mmer|nd)|eart)|paperclip|full_moon|(?:b(?:lack_ni|athtu|om)|her)b|(?:long|oil)_drum|pineapple|(?:clock(?:1[0-2]?|[2-9])3|u6e8)0|p(?:o(?:int_up|ut)|r(?:ince|ay)|i(?:ck|g)|en)|e(?:nvelope|ight|u(?:ro)?|gg|ar|ye|s)|m(?:o(?:u(?:ntain|se)|nkey|on)|echanic|a(?:ilbox|g|n)|irror)?|new_moon|d(?:iamonds|olls|art)|question|k(?:iss(?:ing)?|ey)|haircut|no_good|(?:vampir|massag)e|g(?:olf(?:ing)?|u(?:inea|ard)|e(?:nie|m)|ift|rin)|h(?:a(?:ndbag|msa)|ouses|earts|ut)|postbox|toolbox|(?:pencil|t(?:rain|iger)|whale|cat|dog)2|belgium|(?:volca|kimo)no|(?:vanuat|tuval|pala|naur|maca)u|tokelau|o(?:range|ne?|m|k)?|office|dancer|ticket|dragon|pencil|zombie|w(?:o(?:mens|rm|od)|ave|in[gk]|c)|m(?:o(?:sque|use2)|e(?:rman|ns)|a(?:li|sk))|jersey|tshirt|w(?:heel|oman)|dizzy|j(?:apan|oy)|t(?:rain|iger)|whale|fairy|a(?:nge[lr]|bcd|tm)|c(?:h(?:a(?:ir|d)|ile)|a(?:ndy|mel)|urry|rab|o(?:rn|ol|w2)|[dn])|p(?:ager|e(?:a(?:ch|r)|ru)|i(?:g2|ll|e)|oop)|n(?:otes|ine)|t(?:onga|hree|ent|ram|[mv])|f(?:erry|r(?:ies|ee|og)|ax)|u(?:7(?:533|981|121)|5(?:5b6|408|272)|6(?:307|70[89]))|mage|e(?:yes|nd)|i(?:ra[nq]|t)|cat|dog|elf|z(?:zz|ap)|yen|j(?:ar|p)|leg|id|u[kps]|ng|o[2x]|vs|kr|[\\\\+\\\\x2D]1|x|v)(:)","name":"string.emoji.mdx"},"extension-github-mention":{"captures":{"1":{"name":"punctuation.definition.mention.begin.mdx"},"2":{"name":"string.other.link.mention.mdx"}},"match":"(?<![0-9A-Za-z_`])(@)((?:[0-9A-Za-z][0-9A-Za-z-]{0,38})(?:\\\\/(?:[0-9A-Za-z][0-9A-Za-z-]{0,38}))?)(?![0-9A-Za-z_`])","name":"string.mention.mdx"},"extension-github-reference":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.reference.begin.mdx"},"2":{"name":"string.other.link.reference.security-advisory.mdx"},"3":{"name":"punctuation.definition.reference.begin.mdx"},"4":{"name":"string.other.link.reference.issue-or-pr.mdx"}},"match":"(?<![0-9A-Za-z_])(?:((?i:ghsa-|cve-))([A-Za-z0-9]+)|((?i:gh-|#))([0-9]+))(?![0-9A-Za-z_])","name":"string.reference.mdx"},{"captures":{"1":{"name":"string.other.link.reference.user.mdx"},"2":{"name":"punctuation.definition.reference.begin.mdx"},"3":{"name":"string.other.link.reference.issue-or-pr.mdx"}},"match":"(?<![^\\\\t\\\\n\\\\r \\\\(@\\\\[\\\\{])((?:[0-9A-Za-z][0-9A-Za-z-]{0,38})(?:\\\\/(?:(?:\\\\.git[0-9A-Za-z_-]|\\\\.(?!git)|[0-9A-Za-z_-])+))?)(#)([0-9]+)(?![0-9A-Za-z_])","name":"string.reference.mdx"}]},"extension-math-flow":{"begin":"(?:^|\\\\G)[\\\\t ]*(\\\\${2,})([^\\\\n\\\\r\\\\$]*)$","beginCaptures":{"1":{"name":"string.other.begin.math.flow.mdx"},"2":{"patterns":[{"include":"#markdown-string"}]}},"contentName":"markup.raw.math.flow.mdx","end":"(\\\\1)(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.end.math.flow.mdx"}},"name":"markup.code.other.mdx"},"extension-math-text":{"captures":{"1":{"name":"string.other.begin.math.mdx"},"2":{"name":"markup.raw.math.mdx markup.inline.raw.math.mdx"},"3":{"name":"string.other.end.math.mdx"}},"match":"(?<!\\\\$)(\\\\${2,})(?!\\\\$)(.+?)(?<!\\\\$)(\\\\1)(?!\\\\$)"},"extension-mdx-esm":{"begin":"(?:^|\\\\G)(?=(?i:export|import)[ ])","end":"^(?=[\\\\t ]*$)|$","name":"meta.embedded.tsx","patterns":[{"include":"source.tsx#statements"}]},"extension-mdx-expression-flow":{"begin":"(?:^|\\\\G)[\\\\t ]*(\\\\{)(?!.*\\\\}[\\\\t ]*.)","beginCaptures":{"1":{"name":"string.other.begin.expression.mdx.js"}},"contentName":"meta.embedded.tsx","end":"(\\\\})(?:[\\\\t ]*$)","endCaptures":{"1":{"name":"string.other.begin.expression.mdx.js"}},"patterns":[{"include":"source.tsx#expression"}]},"extension-mdx-expression-text":{"begin":"\\\\{","beginCaptures":{"0":{"name":"string.other.begin.expression.mdx.js"}},"contentName":"meta.embedded.tsx","end":"\\\\}","endCaptures":{"0":{"name":"string.other.begin.expression.mdx.js"}},"patterns":[{"include":"source.tsx#expression"}]},"extension-mdx-jsx-flow":{"begin":"(?<=^|\\\\G|\\\\>)[\\\\t ]*(<)(?=(?![\\\\t\\\\n\\\\r ]))(?:\\\\s*(/))?(?:\\\\s*(?:(?:((?:[_$[:alpha:]][-_$[:alnum:]]*))\\\\s*(:)\\\\s*((?:[_$[:alpha:]][-_$[:alnum:]]*)))|((?:(?:[_$[:alpha:]][_$[:alnum:]]*)(?:\\\\s*\\\\.\\\\s*(?:[_$[:alpha:]][-_$[:alnum:]]*))+))|((?:[_$[:upper:]][_$[:alnum:]]*))|((?:[_$[:alpha:]][-_$[:alnum:]]*)))(?=[\\\\s\\\\/\\\\>\\\\{]))?","beginCaptures":{"1":{"name":"punctuation.definition.tag.end.jsx"},"2":{"name":"punctuation.definition.tag.closing.jsx"},"3":{"name":"entity.name.tag.namespace.jsx"},"4":{"name":"punctuation.separator.namespace.jsx"},"5":{"name":"entity.name.tag.local.jsx"},"6":{"name":"support.class.component.jsx"},"7":{"name":"support.class.component.jsx"},"8":{"name":"entity.name.tag.jsx"}},"end":"(?:(\\\\/)\\\\s*)?(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.self-closing.jsx"},"2":{"name":"punctuation.definition.tag.end.jsx"}},"patterns":[{"include":"source.tsx#jsx-tag-attribute-name"},{"include":"source.tsx#jsx-tag-attribute-assignment"},{"include":"source.tsx#jsx-string-double-quoted"},{"include":"source.tsx#jsx-string-single-quoted"},{"include":"source.tsx#jsx-evaluated-code"},{"include":"source.tsx#jsx-tag-attributes-illegal"}]},"extension-mdx-jsx-text":{"begin":"(<)(?=(?![\\\\t\\\\n\\\\r ]))(?:\\\\s*(/))?(?:\\\\s*(?:(?:((?:[_$[:alpha:]][-_$[:alnum:]]*))\\\\s*(:)\\\\s*((?:[_$[:alpha:]][-_$[:alnum:]]*)))|((?:(?:[_$[:alpha:]][_$[:alnum:]]*)(?:\\\\s*\\\\.\\\\s*(?:[_$[:alpha:]][-_$[:alnum:]]*))+))|((?:[_$[:upper:]][_$[:alnum:]]*))|((?:[_$[:alpha:]][-_$[:alnum:]]*)))(?=[\\\\s\\\\/\\\\>\\\\{]))?","beginCaptures":{"1":{"name":"punctuation.definition.tag.end.jsx"},"2":{"name":"punctuation.definition.tag.closing.jsx"},"3":{"name":"entity.name.tag.namespace.jsx"},"4":{"name":"punctuation.separator.namespace.jsx"},"5":{"name":"entity.name.tag.local.jsx"},"6":{"name":"support.class.component.jsx"},"7":{"name":"support.class.component.jsx"},"8":{"name":"entity.name.tag.jsx"}},"end":"(?:(\\\\/)\\\\s*)?(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.self-closing.jsx"},"2":{"name":"punctuation.definition.tag.end.jsx"}},"patterns":[{"include":"source.tsx#jsx-tag-attribute-name"},{"include":"source.tsx#jsx-tag-attribute-assignment"},{"include":"source.tsx#jsx-string-double-quoted"},{"include":"source.tsx#jsx-string-single-quoted"},{"include":"source.tsx#jsx-evaluated-code"},{"include":"source.tsx#jsx-tag-attributes-illegal"}]},"extension-toml":{"begin":"\\\\A\\\\+{3}$","beginCaptures":{"0":{"name":"string.other.begin.toml"}},"contentName":"meta.embedded.toml","end":"^\\\\+{3}$","endCaptures":{"0":{"name":"string.other.end.toml"}},"patterns":[{"include":"source.toml"}]},"extension-yaml":{"begin":"\\\\A-{3}$","beginCaptures":{"0":{"name":"string.other.begin.yaml"}},"contentName":"meta.embedded.yaml","end":"^-{3}$","endCaptures":{"0":{"name":"string.other.end.yaml"}},"patterns":[{"include":"source.yaml"}]},"markdown-frontmatter":{"patterns":[{"include":"#extension-toml"},{"include":"#extension-yaml"}]},"markdown-sections":{"patterns":[{"include":"#commonmark-block-quote"},{"include":"#commonmark-code-fenced"},{"include":"#extension-gfm-footnote-definition"},{"include":"#commonmark-definition"},{"include":"#commonmark-heading-atx"},{"include":"#commonmark-thematic-break"},{"include":"#commonmark-heading-setext"},{"include":"#commonmark-list-item"},{"include":"#extension-gfm-table"},{"include":"#extension-math-flow"},{"include":"#extension-mdx-esm"},{"include":"#extension-mdx-expression-flow"},{"include":"#extension-mdx-jsx-flow"},{"include":"#commonmark-paragraph"}]},"markdown-string":{"patterns":[{"include":"#commonmark-character-escape"},{"include":"#commonmark-character-reference"}]},"markdown-text":{"patterns":[{"include":"#commonmark-attention"},{"include":"#commonmark-character-escape"},{"include":"#commonmark-character-reference"},{"include":"#commonmark-code-text"},{"include":"#commonmark-hard-break-trailing"},{"include":"#commonmark-hard-break-escape"},{"include":"#commonmark-label-end"},{"include":"#extension-gfm-footnote-call"},{"include":"#commonmark-label-start"},{"include":"#extension-gfm-autolink-literal"},{"include":"#extension-gfm-strikethrough"},{"include":"#extension-github-gemoji"},{"include":"#extension-github-mention"},{"include":"#extension-github-reference"},{"include":"#extension-math-text"},{"include":"#extension-mdx-expression-text"},{"include":"#extension-mdx-jsx-text"}]},"whatwg-html-data-character-reference-named-terminated":{"captures":{"1":{"name":"punctuation.definition.character-reference.begin.html"},"2":{"name":"keyword.control.character-reference.html"},"3":{"name":"punctuation.definition.character-reference.end.html"}},"match":"(&)((?:C(?:(?:o(?:unterClockwiseCo)?|lockwiseCo)ntourIntegra|cedi)|(?:(?:Not(?:S(?:quareSu(?:per|b)set|u(?:cceeds|(?:per|b)set))|Precedes|Greater|Tilde|Less)|Not(?:Righ|Lef)tTriangle|(?:Not(?:(?:Succeed|Precede|Les)s|Greater)|(?:Precede|Succeed)s|Less)Slant|SquareSu(?:per|b)set|(?:Not(?:Greater|Tilde)|Tilde|Less)Full|RightTriangle|LeftTriangle|Greater(?:Slant|Full)|Precedes|Succeeds|Superset|NotHump|Subset|Tilde|Hump)Equ|int(?:er)?c|DotEqu)a|DoubleContourIntegra|(?:n(?:short)?parall|shortparall|p(?:arall|rur))e|(?:rightarrowta|l(?:eftarrowta|ced|ata|Ata)|sced|rata|perm|rced|rAta|ced)i|Proportiona|smepars|e(?:qvpars|pars|xc|um)|Integra|suphso|rarr[pt]|n(?:pars|tg)|l(?:arr[pt]|cei)|Rarrt|(?:hybu|fora)l|ForAl|[GKLNR-Tcknt]cedi|rcei|iexc|gime|fras|[uy]um|oso|dso|ium|Ium)l|D(?:o(?:uble(?:(?:L(?:ong(?:Left)?R|eftR)ight|L(?:ongL)?eft|UpDown|Right|Up)Arrow|Do(?:wnArrow|t))|wn(?:ArrowUpA|TeeA|a)rrow)|iacriticalDot|strok|ashv|cy)|(?:(?:(?:N(?:(?:otN)?estedGreater|ot(?:Greater|Less))|Less(?:Equal)?)Great|GreaterGreat|l[lr]corn|mark|east)e|Not(?:Double)?VerticalBa|(?:Not(?:Righ|Lef)tTriangleB|(?:(?:Righ|Lef)tDown|Right(?:Up)?|Left(?:Up)?)VectorB|RightTriangleB|Left(?:Triangle|Arrow)B|RightArrowB|V(?:er(?:ticalB|b)|b)|UpArrowB|l(?:ur(?:ds|u)h|dr(?:us|d)h|trP|owb|H)|profal|r(?:ulu|dld)h|b(?:igst|rvb)|(?:wed|ve[er])b|s(?:wn|es)w|n(?:wne|ese|sp|hp)|gtlP|d(?:oll|uh|H)|(?:hor|ov)b|u(?:dh|H)|r(?:lh|H)|ohb|hb|St)a|D(?:o(?:wn(?:(?:Left(?:Right|Tee)|RightTee)Vecto|(?:(?:Righ|Lef)tVector|Arrow)Ba)|ubleVerticalBa)|a(?:gge|r)|sc|f)|(?:(?:(?:Righ|Lef)tDown|(?:Righ|Lef)tUp)Tee|(?:Righ|Lef)tUpDown)Vecto|VerticalSeparato|(?:Left(?:Right|Tee)|RightTee)Vecto|less(?:eqq?)?gt|e(?:qslantgt|sc)|(?:RightF|LeftF|[lr]f)loo|u(?:[lr]corne|ar)|timesba|(?:plusa|cirs|apa)ci|U(?:arroci|f)|(?:dzigr|s(?:u(?:pl|br)|imr|[lr])|zigr|angz|nvH|l(?:tl|B)|r[Br])ar|UnderBa|(?:plus|harr|top|mid|of)ci|O(?:verBa|sc|f)|dd?agge|s(?:olba|sc)|g(?:t(?:rar|ci)|sc|f)|c(?:opys|u(?:po|ep)|sc|f)|(?:n(?:(?:v[lr]|w|r)A|l[Aa]|h[Aa]|eA)|x[hlr][Aa]|u(?:ua|da|A)|s[ew]A|rla|o[lr]a|rba|rAa|l[Ablr]a|h(?:oa|A)|era|d(?:ua|A)|cra|vA)r|o(?:lci|sc|ro|pa)|ropa|roar|l(?:o(?:pa|ar)|sc|Ar)|i(?:ma|s)c|ltci|dd?ar|a(?:ma|s)c|R(?:Bar|sc|f)|I(?:mac|f)|(?:u(?:ma|s)|oma|ema|Oma|Ema|[wyz]s|qs|ks|fs|Zs|Ys|Xs|Ws|Vs|Us|Ss|Qs|Ns|Ms|Ks|Is|Gs|Fs|Cs|Bs)c|Umac|x(?:sc|f)|v(?:sc|f)|rsc|n(?:ld|f)|m(?:sc|ld|ac|f)|rAr|h(?:sc|f)|b(?:sc|f)|psc|P(?:sc|f)|L(?:sc|ar|f)|jsc|J(?:sc|f)|E(?:sc|f)|[HT]sc|[yz]f|wf|tf|qf|pf|kf|jf|Zf|Yf|Xf|Wf|Vf|Tf|Sf|Qf|Nf|Mf|Kf|Hf|Gf|Ff|Cf|Bf)r|(?:Diacritical(?:Double)?A|[EINOSYZaisz]a)cute|(?:(?:N(?:egative(?:VeryThin|Thi(?:ck|n))|onBreaking)|NegativeMedium|ZeroWidth|VeryThin|Medium|Thi(?:ck|n))Spac|Filled(?:Very)?SmallSquar|Empty(?:Very)?SmallSquar|(?:N(?:ot(?:Succeeds|Greater|Tilde|Less)T|t)|DiacriticalT|VerticalT|PrecedesT|SucceedsT|NotEqualT|GreaterT|TildeT|EqualT|LessT|at|Ut|It)ild|(?:(?:DiacriticalG|[EIOUaiu]g)ra|(?:u|U)?bre|(?:o|e)?gra)v|(?:doublebar|curly|big|x)wedg|H(?:orizontalLin|ilbertSpac)|Double(?:Righ|Lef)tTe|(?:(?:measured|uw)ang|exponentia|dwang|ssmi|fema)l|(?:Poincarepla|reali|pho|oli)n|(?:black)?lozeng|(?:VerticalL|(?:prof|imag)l)in|SmallCircl|(?:black|dot)squar|rmoustach|l(?:moustach|angl)|(?:b(?:ack)?pr|(?:tri|xo)t|[qt]pr)im|[Tt]herefor|(?:DownB|[Gag]b)rev|(?:infint|nv[lr]tr)i|b(?:arwedg|owti)|an(?:dslop|gl)|(?:cu(?:rly)?v|rthr|lthr|b(?:ig|ar)v|xv)e|n(?:s(?:qsu[bp]|ccu)|prcu)|orslop|NewLin|maltes|Becaus|rangl|incar|(?:otil|Otil|t(?:ra|il))d|[inu]tild|s(?:mil|imn)|(?:sc|pr)cu|Wedg|Prim|Brev)e|(?:CloseCurly(?:Double)?Quo|OpenCurly(?:Double)?Quo|[ry]?acu)te|(?:Reverse(?:Up)?|Up)Equilibrium|C(?:apitalDifferentialD|(?:oproduc|(?:ircleD|enterD|d)o)t|on(?:grue|i)nt|conint|upCap|o(?:lone|pf)|OPY|hi)|(?:(?:(?:left)?rightsquig|(?:longleftr|twoheadr|nleftr|nLeftr|longr|hookr|nR|Rr)ight|(?:twohead|hook)left|longleft|updown|Updown|nright|Right|nleft|nLeft|down|up|Up)a|L(?:(?:ong(?:left)?righ|(?:ong)?lef)ta|eft(?:(?:right)?a|RightA|TeeA))|RightTeeA|LongLeftA|UpTeeA)rrow|(?:(?:RightArrow|Short|Upper|Lower)Left|(?:L(?:eftArrow|o(?:wer|ng))|LongLeft|Short|Upper)Right|ShortUp)Arrow|(?:b(?:lacktriangle(?:righ|lef)|ulle|no)|RightDoubleBracke|RightAngleBracke|Left(?:Doub|Ang)leBracke|(?:vartriangle|downharpoon|c(?:ircl|urv)earrow|upharpoon|looparrow)righ|(?:vartriangle|downharpoon|c(?:ircl|urv)earrow|upharpoon|looparrow|mapsto)lef|(?:UnderBrack|OverBrack|emptys|targ|Sups)e|diamondsui|c(?:ircledas|lubsui|are)|(?:spade|heart)sui|(?:(?:c(?:enter|t)|lmi|ino)d|(?:Triple|mD)D|n(?:otin|e)d|(?:ncong|doteq|su[bp]e|e[gl]s)d|l(?:ess|t)d|isind|c(?:ong|up|ap)?d|b(?:igod|N)|t(?:(?:ri)?d|opb)|s(?:ub|im)d|midd|g(?:tr?)?d|Lmid|DotD|(?:xo|ut|z)d|e(?:s?d|rD|fD|DD)|dtd|Zd|Id|Gd|Ed)o|realpar|i(?:magpar|iin)|S(?:uchTha|qr)|su[bp]mul|(?:(?:lt|i)que|gtque|(?:mid|low)a|e(?:que|xi))s|Produc|s(?:updo|e[cx])|r(?:parg|ec)|lparl|vangr|hamil|(?:homt|[lr]fis|ufis|dfis)h|phmma|t(?:wix|in)|quo|o(?:do|as)|fla|eDo)t|(?:(?:Square)?Intersecti|(?:straight|back|var)epsil|SquareUni|expectati|upsil|epsil|Upsil|eq?col|Epsil|(?:omic|Omic|rca|lca|eca|Sca|[NRTt]ca|Lca|Eca|[Zdz]ca|Dca)r|scar|ncar|herc|ccar|Ccar|iog|Iog)on|Not(?:S(?:quareSu(?:per|b)set|u(?:cceeds|(?:per|b)set))|Precedes|Greater|Tilde|Less)?|(?:(?:(?:Not(?:Reverse)?|Reverse)E|comp|E)leme|NotCongrue|(?:n[gl]|l)eqsla|geqsla|q(?:uat)?i|perc|iiii|coni|cwi|awi|oi)nt|(?:(?:rightleftharpo|leftrightharpo|quaterni)on|(?:(?:N(?:ot(?:NestedLess|Greater|Less)|estedLess)L|(?:eqslant|gtr(?:eqq?)?)l|LessL)e|Greater(?:Equal)?Le|cro)s|(?:rightright|leftleft|upup)arrow|rightleftarrow|(?:(?:(?:righ|lef)tthree|divideon|b(?:igo|ox)|[lr]o)t|InvisibleT)ime|downdownarrow|(?:(?:smallset|tri|dot|box)m|PlusM)inu|(?:RoundImpli|complex|Impli|Otim)e|C(?:ircle(?:Time|Minu|Plu)|ayley|ros)|(?:rationa|mode)l|NotExist|(?:(?:UnionP|MinusP|(?:b(?:ig[ou]|ox)|tri|s(?:u[bp]|im)|dot|xu|mn)p)l|(?:xo|u)pl|o(?:min|pl)|ropl|lopl|epl)u|otimesa|integer|e(?:linter|qual)|setminu|rarrbf|larrb?f|olcros|rarrf|mstpo|lesge|gesle|Exist|[lr]time|strn|napo|fltn|ccap|apo)s|(?:b(?:(?:lack|ig)triangledow|etwee)|(?:righ|lef)tharpoondow|(?:triangle|mapsto)dow|(?:nv|i)infi|ssetm|plusm|lagra|d(?:[lr]cor|isi)|c(?:ompf|aro)|s?frow|(?:hyph|curr)e|kgree|thor|ogo|ye)n|Not(?:Righ|Lef)tTriangle|(?:Up(?:Arrow)?|Short)DownArrow|(?:(?:n(?:triangle(?:righ|lef)t|succ|prec)|(?:trianglerigh|trianglelef|sqsu[bp]se|ques)t|backsim)e|lvertneq|gvertneq|(?:suc|pre)cneq|a(?:pprox|symp)e|(?:succ|prec|vee)e|circe)q|(?:UnderParenthes|OverParenthes|xn)is|(?:(?:Righ|Lef)tDown|Right(?:Up)?|Left(?:Up)?)Vector|D(?:o(?:wn(?:RightVector|LeftVector|Arrow|Tee)|t)|el|D)|l(?:eftrightarrows|br(?:k(?:sl[du]|e)|ac[ek])|tri[ef]|s(?:im[eg]|qb|h)|hard|a(?:tes|ngd|p)|o[pz]f|rm|gE|fr|eg|cy)|(?:NotHumpDownHum|(?:righ|lef)tharpoonu|big(?:(?:triangle|sqc)u|c[au])|HumpDownHum|m(?:apstou|lc)|(?:capbr|xsq)cu|smash|rarr[al]|(?:weie|sha)r|larrl|velli|(?:thin|punc)s|h(?:elli|airs)|(?:u[lr]c|vp)ro|d[lr]cro|c(?:upc[au]|apc[au])|thka|scna|prn?a|oper|n(?:ums|va|cu|bs)|ens|xc[au]|Ma)p|l(?:eftrightarrow|e(?:ftarrow|s(?:dot)?)?|moust|a(?:rrb?|te?|ng)|t(?:ri)?|sim|par|oz|l|g)|n(?:triangle(?:righ|lef)t|succ|prec)|SquareSu(?:per|b)set|(?:I(?:nvisibleComm|ot)|(?:varthe|iio)t|varkapp|(?:vars|S)igm|(?:diga|mco)mm|Cedill|lambd|Lambd|delt|Thet|omeg|Omeg|Kapp|Delt|nabl|zet|to[es]|rdc|ldc|iot|Zet|Bet|Et)a|b(?:lacktriangle|arwed|u(?:mpe?|ll)|sol|o(?:x[HVhv]|t)|brk|ne)|(?:trianglerigh|trianglelef|sqsu[bp]se|ques)t|RightT(?:riangl|e)e|(?:(?:varsu[bp]setn|su(?:psetn?|bsetn?))eq|nsu[bp]seteq|colone|(?:wedg|sim)e|nsime|lneq|gneq)q|DifferentialD|(?:(?:fall|ris)ingdots|(?:suc|pre)ccurly|ddots)eq|A(?:pplyFunction|ssign|(?:tild|grav|brev)e|acute|o(?:gon|pf)|lpha|(?:mac|sc|f)r|c(?:irc|y)|ring|Elig|uml|nd|MP)|(?:varsu[bp]setn|su(?:psetn?|bsetn?))eq|L(?:eft(?:T(?:riangl|e)e|Arrow)|l)|G(?:reaterEqual|amma)|E(?:xponentialE|quilibrium|sim|cy|TH|NG)|(?:(?:RightCeil|LeftCeil|varnoth|ar|Ur)in|(?:b(?:ack)?co|uri)n|vzigza|roan|loan|ffli|amal|sun|rin|n(?:tl|an)|Ran|Lan)g|(?:thick|succn?|precn?|less|g(?:tr|n)|ln|n)approx|(?:s(?:traightph|em)|(?:rtril|xu|u[lr]|xd|v[lr])tr|varph|l[lr]tr|b(?:sem|eps)|Ph)i|(?:circledd|osl|n(?:v[Dd]|V[Dd]|d)|hsl|V(?:vd|D)|Osl|v[Dd]|md)ash|(?:(?:RuleDelay|imp|cuw)e|(?:n(?:s(?:hort)?)?|short|rn)mi|D(?:Dotrah|iamon)|(?:i(?:nt)?pr|peri)o|odsol|llhar|c(?:opro|irmi)|(?:capa|anda|pou)n|Barwe|napi|api)d|(?:cu(?:rlyeq(?:suc|pre)|es)|telre|[ou]dbla|Udbla|Odbla|radi|lesc|gesc|dbla)c|(?:circled|big|eq|[is]|c|x|a|S|[hw]|W|H|G|E|C)circ|rightarrow|R(?:ightArrow|arr|e)|Pr(?:oportion)?|(?:longmapst|varpropt|p(?:lustw|ropt)|varrh|numer|(?:rsa|lsa|sb)qu|m(?:icr|h)|[lr]aqu|bdqu|eur)o|UnderBrace|ImaginaryI|B(?:ernoullis|a(?:ckslash|rv)|umpeq|cy)|(?:(?:Laplace|Mellin|zee)tr|Fo(?:uriertr|p)|(?:profsu|ssta)r|ordero|origo|[ps]op|nop|mop|i(?:op|mo)|h(?:op|al)|f(?:op|no)|dop|bop|Rop|Pop|Nop|Lop|Iop|Hop|Dop|[GJKMOQSTV-Zgjkoqvwyz]op|Bop)f|nsu[bp]seteq|t(?:ri(?:angleq|e)|imesd|he(?:tav|re4)|au)|O(?:verBrace|r)|(?:(?:pitchfo|checkma|t(?:opfo|b)|rob|rbb|l[bo]b)r|intlarh|b(?:brktbr|l(?:oc|an))|perten|NoBrea|rarrh|s[ew]arh|n[ew]arh|l(?:arrh|hbl)|uhbl|Hace)k|(?:NotCupC|(?:mu(?:lti)?|x)m|cupbrc)ap|t(?:riangle|imes|heta|opf?)|Precedes|Succeeds|Superset|NotEqual|(?:n(?:atural|exist|les)|s(?:qc[au]p|mte)|prime)s|c(?:ir(?:cled[RS]|[Ee])|u(?:rarrm|larrp|darr[lr]|ps)|o(?:mmat|pf)|aps|hi)|b(?:sol(?:hsu)?b|ump(?:eq|E)|ox(?:box|[Vv][HLRhlr]|[Hh][DUdu]|[DUdu][LRlr])|e(?:rnou|t[ah])|lk(?:34|1[24])|cy)|(?:l(?:esdot|squ|dqu)o|rsquo|rdquo|ngt)r|a(?:n(?:g(?:msda[a-h]|st|e)|d[dv])|st|p[Ee]|mp|fr|c[Edy])|(?:g(?:esdoto|E)|[lr]haru)l|(?:angrtvb|lrhar|nis)d|(?:(?:th(?:ic)?k|succn?|p(?:r(?:ecn?|n)?|lus)|rarr|l(?:ess|arr)|su[bp]|par|scn|g(?:tr|n)|ne|sc|n[glv]|ln|eq?)si|thetasy|ccupss|alefsy|botto)m|trpezium|(?:hks[ew]|dr?bk|bk)arow|(?:(?:[lr]a|d|c)empty|b(?:nequi|empty)|plank|nequi|odi)v|(?:(?:sc|rp|n)pol|point|fpart)int|(?:c(?:irf|wco)|awco)nint|PartialD|n(?:s(?:u[bp](?:set)?|c)|rarr|ot(?:ni|in)?|warr|e(?:arr)?|a(?:tur|p)|vlt|p(?:re?|ar)|um?|l[et]|ge|i)|n(?:atural|exist|les)|d(?:i(?:am(?:ond)?|v(?:ide)?)|tri|ash|ot|d)|backsim|l(?:esdot|squ|dqu)o|g(?:esdoto|E)|U(?:p(?:Arrow|si)|nion|arr)|angrtvb|p(?:l(?:anckh|us(?:d[ou]|[be]))|ar(?:sl|t)|r(?:od|nE|E)|erp|iv|m)|n(?:ot(?:niv[a-c]|in(?:v[a-c]|E))|rarr[cw]|s(?:u[bp][Ee]|c[er])|part|v(?:le|g[et])|g(?:es|E)|c(?:ap|y)|apE|lE|iv|Ll|Gg)|m(?:inus(?:du|b)|ale|cy|p)|rbr(?:k(?:sl[du]|e)|ac[ek])|(?:suphsu|tris|rcu|lcu)b|supdsub|(?:s[ew]a|n[ew]a)rrow|(?:b(?:ecaus|sim)|n(?:[lr]tri|bump)|csu[bp])e|equivDD|u(?:rcorn|lcorn|psi)|timesb|s(?:u(?:p(?:set)?|b(?:set)?)|q(?:su[bp]|u)|i(?:gma|m)|olb?|dot|mt|fr|ce?)|p(?:l(?:anck|us)|r(?:op|ec?)?|ara?|i)|o(?:times|r(?:d(?:er)?)?)|m(?:i(?:nusd?|d)|a(?:p(?:sto)?|lt)|u)|rmoust|g(?:e(?:s(?:dot|l)?|q)?|sim|n(?:ap|e)|t|l|g)|(?:spade|heart)s|c(?:u(?:rarr|larr|p)|o(?:m(?:ma|p)|lon|py|ng)|lubs|heck|cups|irc?|ent|ap)|colone|a(?:p(?:prox)?|n(?:g(?:msd|rt)?|d)|symp|f|c)|S(?:quare|u[bp]|c)|Subset|b(?:ecaus|sim)|vsu[bp]n[Ee]|s(?:u(?:psu[bp]|b(?:su[bp]|n[Ee]|E)|pn[Ee]|p[1-3E]|m)|q(?:u(?:ar[ef]|f)|su[bp]e)|igma[fv]|etmn|dot[be]|par|mid|hc?y|c[Ey])|f(?:rac(?:78|5[68]|45|3[458]|2[35]|1[2-68])|fr)|e(?:m(?:sp1[34]|ptyv)|psiv|c(?:irc|y)|t[ah]|ng|ll|fr|e)|(?:kappa|isins|vBar|fork|rho|phi|n[GL]t)v|divonx|V(?:dashl|ee)|gammad|G(?:ammad|cy|[Tgt])|[Ldhlt]strok|[HT]strok|(?:c(?:ylct|hc)|(?:s(?:oft|hch)|hard|S(?:OFT|HCH)|jser|J(?:ser|uk)|HARD|tsh|TSH|juk|iuk|I(?:uk|[EO])|zh|yi|nj|lj|k[hj]|gj|dj|ZH|Y[AIU]|NJ|LJ|K[HJ]|GJ|D[JSZ])c|ubrc|Ubrc|(?:yu|i[eo]|dz|v|p|f)c|TSc|SHc|CHc|Vc|Pc|Mc|Fc)y|(?:(?:wre|jm)at|dalet|a(?:ngs|le)p|imat|[lr]ds)h|[CLRUceglnou]acute|ff?llig|(?:f(?:fi|[ij])|sz|oe|ij|ae|OE|IJ)lig|r(?:a(?:tio|rr|ng)|tri|par|eal)|s[ew]arr|s(?:qc[au]p|mte)|prime|rarrb|i(?:n(?:fin|t)?|sin|t|i|c)|e(?:quiv|m(?:pty|sp)|p(?:si|ar)|cir|l|g)|kappa|isins|ncong|doteq|(?:wedg|sim)e|nsime|rsquo|rdquo|[lr]haru|V(?:dash|ert)|Tilde|lrhar|gamma|Equal|UpTee|n(?:[lr]tri|bump)|C(?:olon|up|ap)|v(?:arpi|ert)|u(?:psih|ml)|vnsu[bp]|r(?:tri[ef]|e(?:als|g)|a(?:rr[cw]|ng[de]|ce)|sh|lm|x)|rhard|sim[gl]E|i(?:sin[Ev]|mage|f[fr]|cy)|harrw|(?:n[gl]|l)eqq|g(?:sim[el]|tcc|e(?:qq|l)|nE|l[Eaj]|gg|ap)|ocirc|starf|utrif|d(?:trif|i(?:ams|e)|ashv|sc[ry]|fr|eg)|[du]har[lr]|T(?:HORN|a[bu])|(?:TRAD|[gl]vn)E|odash|[EUaeu]o(?:gon|pf)|alpha|[IJOUYgjuy]c(?:irc|y)|v(?:arr|ee)|succ|sim[gl]|harr|ln(?:ap|e)|lesg|(?:n[gl]|l)eq|ocir|star|utri|vBar|fork|su[bp]e|nsim|lneq|gneq|csu[bp]|zwn?j|yacy|x(?:opf|i)|scnE|o(?:r(?:d[fm]|v)|mid|lt|hm|gt|fr|cy|S)|scap|rsqb|ropf|ltcc|tsc[ry]|QUOT|[EOUYao]uml|rho|phi|n[GL]t|e[gl]s|ngt|I(?:nt|m)|nis|rfr|rcy|lnE|lEg|ufr|S(?:um|cy)|R(?:sh|ho)|psi|Ps?i|[NRTt]cy|L(?:sh|cy|[Tt])|kcy|Kcy|Hat|REG|[Zdz]cy|wr|lE|wp|Xi|Nu|Mu)(;)","name":"constant.language.character-reference.named.html"}},"scopeName":"source.mdx","embeddedLangs":[],"embeddedLangsLazy":["tsx","toml","yaml","c","clojure","coffee","cpp","csharp","css","diff","docker","elixir","elm","erlang","go","graphql","haskell","html","ini","java","javascript","json","julia","kotlin","less","lua","make","markdown","objective-c","perl","python","r","ruby","rust","scala","scss","shellscript","shellsession","sql","xml","swift","typescript"]}')),Ere=[vre]});var bR={};x(bR,{default:()=>Ire});var Qre,Ire,hR=_(()=>{Qre=Object.freeze(JSON.parse(`{"displayName":"Mermaid","fileTypes":[],"injectionSelector":"L:text.html.markdown","name":"mermaid","patterns":[{"include":"#mermaid-code-block"},{"include":"#mermaid-code-block-with-attributes"},{"include":"#mermaid-ado-code-block"}],"repository":{"mermaid":{"patterns":[{"begin":"^\\\\s*(architecture-beta)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"Architecture Diagram","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"4":{"name":"string"},"5":{"name":"keyword.control.mermaid"},"6":{"name":"string"},"7":{"name":"punctuation.definition.typeparameters.end.mermaid"},"8":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"9":{"name":"string"},"10":{"name":"punctuation.definition.typeparameters.end.mermaid"},"11":{"name":"keyword.control.mermaid"},"12":{"name":"variable"}},"comment":"(group|service)(group id)(icon name)?(title)(in)?(parent)?","match":"(?i)\\\\s*(group|service)\\\\s+([\\\\w-]+)\\\\s*(\\\\()?([\\\\w\\\\s-]+)?(:)?([\\\\w\\\\s-]+)?(\\\\))?\\\\s*(\\\\[)?([\\\\w\\\\s-]+)?\\\\s*(\\\\])?\\\\s*(in)?\\\\s*([\\\\w-]+)?"},{"captures":{"1":{"name":"variable"},"2":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"3":{"name":"variable"},"4":{"name":"punctuation.definition.typeparameters.end.mermaid"},"5":{"name":"keyword.control.mermaid"},"6":{"name":"entity.name.function.mermaid"},"7":{"name":"keyword.control.mermaid"},"8":{"name":"entity.name.function.mermaid"},"9":{"name":"keyword.control.mermaid"},"10":{"name":"variable"},"11":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"12":{"name":"variable"},"13":{"name":"punctuation.definition.typeparameters.end.mermaid"}},"comment":"(service id)(group id)?:(T|B|L|R) <?-->? (T|B|L|R):(service id)(group id)?","match":"(?i)\\\\s*([\\\\w-]+)\\\\s*(\\\\{)?\\\\s*(group)?(\\\\})?\\\\s*(:)\\\\s*(T|B|L|R)\\\\s+(<?-->?)\\\\s+(T|B|L|R)\\\\s*(:)\\\\s*([\\\\w-]+)\\\\s*(\\\\{)?\\\\s*(group)?(\\\\})?"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"variable"}},"comment":"(junction)(junction id)(in)?(group)","match":"(?i)\\\\s*(junction)\\\\s+([\\\\w-]+)\\\\s*(in)?\\\\s*([\\\\w-]+)?"}]},{"begin":"^\\\\s*(classDiagram)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"Class Diagram","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"captures":{"1":{"name":"entity.name.type.class.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"keyword.control.mermaid"},"5":{"name":"entity.name.type.class.mermaid"},"6":{"name":"keyword.control.mermaid"},"7":{"name":"string"}},"comment":"(class name) (\\"multiplicity relationship\\")? (relationship) (\\"multiplicity relationship\\")? (class name) :? (labelText)?","match":"(?i)([\\\\w-]+)\\\\s(\\"(?:\\\\d+|\\\\*|0..\\\\d+|1..\\\\d+|1..\\\\*)\\")?\\\\s?(--o|--\\\\*|\\\\<--|--\\\\>|<\\\\.\\\\.|\\\\.\\\\.\\\\>|\\\\<\\\\|\\\\.\\\\.|\\\\.\\\\.\\\\|\\\\>|\\\\<\\\\|--|--\\\\|>|--\\\\*|--|\\\\.\\\\.|\\\\*--|o--)\\\\s(\\"(?:\\\\d+|\\\\*|0..\\\\d+|1..\\\\d+|1..\\\\*)\\")?\\\\s?([\\\\w-]+)\\\\s?(:)?\\\\s(.*)$"},{"captures":{"1":{"name":"entity.name.type.class.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"entity.name.function.mermaid"},"5":{"name":"punctuation.parenthesis.open.mermaid"},"6":{"name":"storage.type.mermaid"},"7":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"8":{"name":"storage.type.mermaid"},"9":{"name":"punctuation.definition.typeparameters.end.mermaid"},"10":{"name":"entity.name.variable.parameter.mermaid"},"11":{"name":"punctuation.parenthesis.closed.mermaid"},"12":{"name":"keyword.control.mermaid"},"13":{"name":"storage.type.mermaid"},"14":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"15":{"name":"storage.type.mermaid"},"16":{"name":"punctuation.definition.typeparameters.end.mermaid"}},"comment":"(class name) : (visibility)?(function)( (function param/generic param)? )(classifier)? (return/generic return)?$","match":"(?i)([\\\\w-]+)\\\\s?(:)\\\\s([\\\\+~#-])?([\\\\w-]+)(\\\\()([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?\\\\s?([\\\\w-]+)?(\\\\))([*\\\\$]{0,2})\\\\s?([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?$"},{"captures":{"1":{"name":"entity.name.type.class.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"storage.type.mermaid"},"5":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"6":{"name":"storage.type.mermaid"},"7":{"name":"punctuation.definition.typeparameters.end.mermaid"},"8":{"name":"entity.name.variable.field.mermaid"}},"comment":"(class name) : (visibility)?(datatype/generic data type) (attribute name)$","match":"(?i)([\\\\w-]+)\\\\s?(:)\\\\s([\\\\+~#-])?([\\\\w-]+)(~)?([\\\\w-]+)?(~)?\\\\s([\\\\w-]+)?$"},{"captures":{"1":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"2":{"name":"storage.type.mermaid"},"3":{"name":"punctuation.definition.typeparameters.end.mermaid"},"4":{"name":"entity.name.type.class.mermaid"}},"comment":"<<(Annotation)>> (class name)","match":"(?i)(<<)([\\\\w-]+)(>>)\\\\s?([\\\\w-]+)?"},{"begin":"(?i)(class)\\\\s+([\\\\w-]+)(~)?([\\\\w-]+)?(~)?\\\\s?({)","beginCaptures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.type.class.mermaid"},"3":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"4":{"name":"storage.type.mermaid"},"5":{"name":"punctuation.definition.typeparameters.end.mermaid"},"6":{"name":"keyword.control.mermaid"}},"comment":"class (class name) ~?(generic type)?~? ({)","end":"(})","endCaptures":{"1":{"name":"keyword.control.mermaid"}},"patterns":[{"match":"\\\\%%.*","name":"comment"},{"begin":"(?i)\\\\s([\\\\+~#-])?([\\\\w-]+)(\\\\()","beginCaptures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.function.mermaid"},"3":{"name":"punctuation.parenthesis.open.mermaid"}},"comment":"(visibility)?(function)( (function param/generic param)? )(classifier)? (return/generic return)?$","end":"(?i)(\\\\))([*\\\\$]{0,2})\\\\s?([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?$","endCaptures":{"1":{"name":"punctuation.parenthesis.closed.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"storage.type.mermaid"},"4":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"5":{"name":"storage.type.mermaid"},"6":{"name":"punctuation.definition.typeparameters.end.mermaid"}},"patterns":[{"captures":{"1":{"name":"storage.type.mermaid"},"2":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"3":{"name":"storage.type.mermaid"},"4":{"name":"punctuation.definition.typeparameters.end.mermaid"},"5":{"name":"entity.name.variable.parameter.mermaid"}},"comment":"(TBD)","match":"(?i)\\\\s*,?\\\\s*([\\\\w-]+)?(~)?([\\\\w-]+)?(~)?\\\\s?([\\\\w-]+)?"}]},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"storage.type.mermaid"},"3":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"4":{"name":"storage.type.mermaid"},"5":{"name":"punctuation.definition.typeparameters.end.mermaid"},"6":{"name":"entity.name.variable.field.mermaid"}},"comment":"(visibility)?(datatype/generic data type) (attribute name)$","match":"(?i)\\\\s([\\\\+~#-])?([\\\\w-]+)(~)?([\\\\w-]+)?(~)?\\\\s([\\\\w-]+)?$"},{"captures":{"1":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"2":{"name":"storage.type.mermaid"},"3":{"name":"punctuation.definition.typeparameters.end.mermaid"},"4":{"name":"entity.name.type.class.mermaid"}},"comment":"<<(Annotation)>> (class name)","match":"(?i)(<<)([\\\\w-]+)(>>)\\\\s?([\\\\w-]+)?"}]},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.type.class.mermaid"},"3":{"name":"punctuation.definition.typeparameters.begin.mermaid"},"4":{"name":"storage.type.mermaid"},"5":{"name":"punctuation.definition.typeparameters.end.mermaid"}},"comment":"class (class name) ~?(generic type)?~?","match":"(?i)(class)\\\\s+([\\\\w-]+)(~)?([\\\\w-]+)?(~)?"}]},{"begin":"^\\\\s*(erDiagram)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"Entity Relationship Diagram","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"captures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"string"},"4":{"name":"keyword.control.mermaid"}},"comment":"(entity)","match":"(?i)^\\\\s*([\\\\w-]+)\\\\s*(\\\\[)?\\\\s*((?:[\\\\w-]+)|(?:\\"[\\\\w\\\\s-]+\\"))?\\\\s*(\\\\])?$"},{"begin":"(?i)\\\\s+([\\\\w-]+)\\\\s*(\\\\[)?\\\\s*((?:[\\\\w-]+)|(?:\\"[\\\\w\\\\s-]+\\"))?\\\\s*(\\\\])?\\\\s*({)","beginCaptures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"string"},"4":{"name":"keyword.control.mermaid"},"5":{"name":"keyword.control.mermaid"}},"comment":"(entity) {","end":"(})","endCaptures":{"1":{"name":"keyword.control.mermaid"}},"patterns":[{"captures":{"1":{"name":"storage.type.mermaid"},"2":{"name":"variable"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"string"}},"comment":"(type) (name) (PK|FK)? (\\"comment\\")?","match":"(?i)\\\\s*([\\\\w-]+)\\\\s+([\\\\w-]+)\\\\s+(PK|FK)?\\\\s*(\\"[\\"\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\")?\\\\s*"},{"match":"\\\\%%.*","name":"comment"}]},{"captures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"variable"},"4":{"name":"keyword.control.mermaid"},"5":{"name":"string"}},"comment":"(entity) (relationship) (entity) : (label)","match":"(?i)\\\\s*([\\\\w-]+)\\\\s*((?:\\\\|o|\\\\|\\\\||}o|}\\\\||one or (?:zero|more|many)|zero or (?:one|more|many)|many\\\\((?:0|1)\\\\)|only one|0\\\\+|1\\\\+?)(?:..|--)(?:o\\\\||\\\\|\\\\||o{|\\\\|{|one or (?:zero|more|many)|zero or (?:one|more|many)|many\\\\((?:0|1)\\\\)|only one|0\\\\+|1\\\\+?))\\\\s*([\\\\w-]+)\\\\s*(:)\\\\s*((?:\\"[\\\\w\\\\s]*\\")|(?:[\\\\w-]+))"}]},{"begin":"^\\\\s*(gantt)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"Gantt Diagram","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.function.mermaid"}},"match":"(?i)^\\\\s*(dateFormat)\\\\s+([\\\\w\\\\-\\\\.]+)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.function.mermaid"}},"match":"(?i)^\\\\s*(axisFormat)\\\\s+([\\\\w\\\\%\\\\/\\\\\\\\\\\\-\\\\.]+)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"match":"(?i)(tickInterval)\\\\s+(([1-9][0-9]*)(millisecond|second|minute|hour|day|week|month))"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"match":"(?i)^\\\\s*(title)\\\\s+(\\\\s*[\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"match":"(?i)^\\\\s*(excludes)\\\\s+((?:[\\\\d\\\\-,\\\\s]+|monday|tuesday|wednesday|thursday|friday|saturday|sunday|weekends)+)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"match":"(?i)^\\\\s+(todayMarker)\\\\s+(.*)$"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"match":"(?i)^\\\\s*(section)\\\\s+(\\\\s*[\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)"},{"begin":"(?i)^\\\\s(.*)(:)","beginCaptures":{"1":{"name":"string"},"2":{"name":"keyword.control.mermaid"}},"end":"$","patterns":[{"match":"(crit|done|active|after)","name":"entity.name.function.mermaid"},{"match":"\\\\%%.*","name":"comment"}]}]},{"begin":"^\\\\s*(gitGraph)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"Git Graph","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"begin":"(?i)^\\\\s*(commit)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"commit","end":"$","patterns":[{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"string"}},"comment":"(id)(:) (\\"id\\")","match":"(?i)\\\\s*(id)(:)\\\\s?(\\"[^\\"\\\\n]*\\")"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"entity.name.function.mermaid"}},"comment":"(type)(:) (COMMIT_TYPE)","match":"(?i)\\\\s*(type)(:)\\\\s?(NORMAL|REVERSE|HIGHLIGHT)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"string"}},"comment":"(tag)(:) (\\"tag\\")","match":"(?i)\\\\s*(tag)(:)\\\\s?(\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\")"}]},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"}},"comment":"(checkout) (branch-name)","match":"(?i)^\\\\s*(checkout)\\\\s*([^\\\\s\\"]*)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"keyword.control.mermaid"},"5":{"name":"constant.numeric.decimal.mermaid"}},"comment":"(branch) (branch-name) (order)?(:) (number)","match":"(?i)^\\\\s*(branch)\\\\s*([^\\\\s\\"]*)\\\\s*(?:(order)(:)\\\\s?(\\\\d+))?"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"keyword.control.mermaid"},"5":{"name":"string"}},"comment":"(merge) (branch-name) (tag: \\"tag-name\\")?","match":"(?i)^\\\\s*(merge)\\\\s*([^\\\\s\\"]*)\\\\s*(?:(tag)(:)\\\\s?(\\"[^\\"\\\\n]*\\"))?"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"string"}},"comment":"(cherry-pick) (id)(:)(\\"commit-id\\")","match":"(?i)^\\\\s*(cherry-pick)\\\\s+(id)(:)\\\\s*(\\"[^\\"\\\\n]*\\")"}]},{"begin":"^\\\\s*(graph|flowchart)\\\\s+([\\\\p{Letter}\\\\ 0-9]+)","beginCaptures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.function.mermaid"}},"comment":"Graph","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"string"},"5":{"name":"keyword.control.mermaid"}},"comment":"","match":"(?i)^\\\\s*(subgraph)\\\\s+(\\\\w+)(\\\\[)(\\"?[\\\\w\\\\s*+%=\\\\\\\\/:\\\\.\\\\-'\`,&^#$!?<>]*\\"?)(\\\\])"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.function.mermaid"}},"match":"^\\\\s*(subgraph)\\\\s+([\\\\p{Letter}\\\\ 0-9<>]+)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.function.mermaid"}},"match":"^(?i)\\\\s*(direction)\\\\s+(RB|BT|RL|TD|LR)"},{"match":"\\\\b(end)\\\\b","name":"keyword.control.mermaid"},{"begin":"(?i)(\\\\b(?:(?!--|==)[-\\\\w])+\\\\b\\\\s*)(\\\\(\\\\[|\\\\[\\\\[|\\\\[\\\\(|\\\\[|\\\\(+|\\\\>|\\\\{|\\\\(\\\\()","beginCaptures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"string"}},"comment":"(Entity)(Edge/Shape)(Text)(Edge/Shape)","end":"(?i)(\\\\]\\\\)|\\\\]\\\\]|\\\\)\\\\]|\\\\]|\\\\)+|\\\\}|\\\\)\\\\))","endCaptures":{"1":{"name":"keyword.control.mermaid"}},"patterns":[{"begin":"\\\\s*(\\")","beginCaptures":{"1":{"name":"string"}},"comment":"(\\"multi-line text\\")","end":"(\\")","endCaptures":{"1":{"name":"string"}},"patterns":[{"begin":"(?i)([^\\"]*)","beginCaptures":{"1":{"name":"string"}},"comment":"capture inner text between quotes","end":"(?=\\")","patterns":[{"captures":{"1":{"name":"comment"}},"match":"([^\\"]*)"}]}]},{"captures":{"1":{"name":"string"}},"comment":"(single line text)","match":"(?i)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)"}]},{"begin":"(?i)\\\\s*((?:-{2,5}|={2,5})[xo>]?\\\\|)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"(Graph Link)(\\"Multiline text\\")(Graph Link)","end":"(?i)(\\\\|)","endCaptures":{"1":{"name":"keyword.control.mermaid"}},"patterns":[{"begin":"\\\\s*(\\")","beginCaptures":{"1":{"name":"string"}},"comment":"(\\"multi-line text\\")","end":"(\\")","endCaptures":{"1":{"name":"string"}},"patterns":[{"begin":"(?i)([^\\"]*)","beginCaptures":{"1":{"name":"string"}},"comment":"capture inner text between quotes","end":"(?=\\")","patterns":[{"captures":{"1":{"name":"comment"}},"match":"([^\\"]*)"}]}]},{"captures":{"1":{"name":"string"}},"comment":"(single line text)","match":"(?i)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)"}]},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"},"3":{"name":"keyword.control.mermaid"}},"comment":"(Graph Link Start Arrow)(Text)(Graph Link End Arrow)","match":"(?i)\\\\s*([xo<]?(?:-{2,5}|={2,5}|-\\\\.{1,3}|-\\\\.))((?:(?!--|==)[\\\\w\\\\s*+%=\\\\\\\\/:\\\\.\\\\-'\`,\\"&^#$!?<>\\\\[\\\\]])*)((?:-{2,5}|={2,5}|\\\\.{1,3}-|\\\\.-)[xo>]?)"},{"captures":{"1":{"name":"keyword.control.mermaid"}},"comment":"(Graph Link)","match":"(?i)\\\\s*([ox<]?(?:-.{1,3}-|-{1,3}|={1,3})[ox>]?)"},{"comment":"Entity","match":"(\\\\b(?:(?!--|==)[-\\\\w])+\\\\b\\\\s*)","name":"variable"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"string"}},"comment":"(Class)(Node(s))(ClassName)","match":"(?i)\\\\s*(class)\\\\s+(\\\\b[-,\\\\w]+)\\\\s+(\\\\b\\\\w+\\\\b)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"string"}},"comment":"(ClassDef)(ClassName)(Styles)","match":"(?i)\\\\s*(classDef)\\\\s+(\\\\b\\\\w+\\\\b)\\\\s+(\\\\b[-,:;#\\\\w]+)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"variable"},"4":{"name":"string"}},"comment":"(Click)(Entity)(Link)?(Tooltip)","match":"(?i)\\\\s*(click)\\\\s+(\\\\b[-\\\\w]+\\\\b\\\\s*)(\\\\b\\\\w+\\\\b)?\\\\s(\\"*.*\\")"}]},{"begin":"^\\\\s*(pie)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"Pie Chart","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"match":"(?i)^\\\\s*(title)\\\\s+(\\\\s*[\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)"},{"begin":"(?i)\\\\s(.*)(:)","beginCaptures":{"1":{"name":"string"},"2":{"name":"keyword.control.mermaid"}},"end":"$","patterns":[{"match":"\\\\%%.*","name":"comment"}]}]},{"begin":"^\\\\s*(quadrantChart)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"Quadrant Chart","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"match":"(?i)^\\\\s*(title)\\\\s*([\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)"},{"begin":"(?i)^\\\\s*([xy]-axis)\\\\s+((?:(?!-->)[$&%/#.,?!*+=\\\\'\\\\\\\\\\\\-\\\\w\\\\s])*)","beginCaptures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"comment":"(x|y-axis) (text) (-->)? (text)?","end":"$","patterns":[{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"comment":"(-->) (text)","match":"(?i)\\\\s*(-->)\\\\s*([$&%/#.,?!*+=\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)"}]},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"match":"(?i)^\\\\s*(quadrant-[1234])\\\\s*([\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)"},{"captures":{"1":{"name":"string"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"constant.numeric.decimal.mermaid"},"5":{"name":"keyword.control.mermaid"},"6":{"name":"constant.numeric.decimal.mermaid"},"7":{"name":"keyword.control.mermaid"}},"comment":"(text)(:) ([)(decimal)(,) (decimal)(])","match":"(?i)\\\\s*([$&%/#.,?!*+=\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*(:)\\\\s*(\\\\[)\\\\s*(\\\\d\\\\.\\\\d+)\\\\s*(,)\\\\s*(\\\\d\\\\.\\\\d+)\\\\s*(\\\\])"}]},{"begin":"^\\\\s*(requirementDiagram)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"Requirement Diagram","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"begin":"(?i)^\\\\s*((?:functional|interface|performance|physical)?requirement|designConstraint)\\\\s*([\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*({)","beginCaptures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"keyword.control.mermaid"}},"comment":"(requirement) (name) ({)","end":"(?i)\\\\s*(})","endCaptures":{"1":{"name":"keyword.control.mermaid"}},"patterns":[{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"}},"comment":"(id:) (variable id)","match":"(?i)\\\\s*(id:)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"comment":"(text:) (text string)","match":"(?i)\\\\s*(text:)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.function.mermaid"}},"comment":"(risk:) (risk option)","match":"(?i)\\\\s*(risk:)\\\\s*(low|medium|high)\\\\s*$"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.function.mermaid"}},"comment":"(verifyMethod)(:) (method)","match":"(?i)\\\\s*(verifymethod:)\\\\s*(analysis|inspection|test|demonstration)\\\\s*$"}]},{"begin":"(?i)^\\\\s*(element)\\\\s*([\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*({)","beginCaptures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"keyword.control.mermaid"}},"comment":"(element) (name) ({)","end":"(?i)\\\\s*(})","endCaptures":{"1":{"name":"keyword.control.mermaid"}},"patterns":[{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"}},"comment":"(type:) (user type)","match":"(?i)\\\\s*(type:)\\\\s*([\\"$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"}},"comment":"(docref:) (user ref)","match":"(?i)\\\\s*(docref:)\\\\s*([$&%\\\\^/#.,?!;:*+<>_\\\\'\\\\\\\\\\\\w\\\\s]+)"}]},{"captures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"keyword.control.mermaid"},"5":{"name":"variable"}},"comment":"(source) (-) (type) (->) (destination)","match":"(?i)^\\\\s*([\\\\w]+)\\\\s*(-)\\\\s*(contains|copies|derives|satisfies|verifies|refines|traces)\\\\s*(->)\\\\s*([\\\\w]+)\\\\s*$"},{"captures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"keyword.control.mermaid"},"5":{"name":"variable"}},"comment":"(destination) (<-) (type) (-) (source)","match":"(?i)^\\\\s*([\\\\w]+)\\\\s*(<-)\\\\s*(contains|copies|derives|satisfies|verifies|refines|traces)\\\\s*(-)\\\\s*([\\\\w]+)\\\\s*$"}]},{"begin":"^\\\\s*(sequenceDiagram)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"Sequence Diagram","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"(\\\\%%|#).*","name":"comment"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"string"}},"comment":"(title)(title text)","match":"(?i)(title)\\\\s*(:)?\\\\s+(\\\\s*[\\"\\\\(\\\\)$&%\\\\^/#.,?!:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"string"}},"comment":"(participant)(Actor)(as)?(Label)?","match":"(?i)\\\\s*(participant|actor)\\\\s+((?:(?! as )[\\"\\\\(\\\\)$&%\\\\^/#.?!*=<>\\\\'\\\\\\\\\\\\w\\\\s])+)\\\\s*(as)?\\\\s([\\"\\\\(\\\\)$&%\\\\^/#.,?!*=<>\\\\'\\\\\\\\\\\\w\\\\s]+)?"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"}},"comment":"(activate/deactivate)(Actor)","match":"(?i)\\\\s*((?:de)?activate)\\\\s+(\\\\b[\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?\\\\s*)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.function.mermaid"},"3":{"name":"variable"},"4":{"name":"keyword.control.mermaid"},"5":{"name":"variable"},"6":{"name":"keyword.control.mermaid"},"7":{"name":"string"}},"comment":"(Note)(direction)(Actor)(,)?(Actor)?(:)(Message)","match":"(?i)\\\\s*(Note)\\\\s+((?:left|right)\\\\sof|over)\\\\s+(\\\\b[\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?\\\\s*)(,)?(\\\\b[\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?\\\\s*)?(:)(?:\\\\s+([^;#]*))?"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"comment":"(loop)(loop text)","match":"(?i)\\\\s*(loop)(?:\\\\s+([^;#]*))?"},{"captures":{"1":{"name":"keyword.control.mermaid"}},"comment":"(end)","match":"\\\\s*(end)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"comment":"(alt/else/option/par/and/autonumber/critical/opt)(text)","match":"(?i)\\\\s*(alt|else|option|par|and|rect|autonumber|critical|opt)(?:\\\\s+([^#;]*))?$"},{"captures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"variable"},"4":{"name":"keyword.control.mermaid"},"5":{"name":"string"}},"comment":"(Actor)(Arrow)(Actor)(:)(Message)","match":"(?i)\\\\s*(\\\\b[\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?)\\\\s*(-?-(?:\\\\>|x|\\\\))\\\\>?[+-]?)\\\\s*([\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\w\\\\s]+\\\\b\\\\)?)\\\\s*(:)\\\\s*([^;#]*)"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"entity.name.function.mermaid"},"3":{"name":"string"}},"comment":"(box transparent text)","match":"(?i)\\\\s*(box)\\\\s+(transparent)(?:\\\\s+([^;#]*))?"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"comment":"(box text)","match":"(?i)\\\\s*(box)(?:\\\\s+([^;#]*))?"}]},{"begin":"^\\\\s*(stateDiagram(?:-v2)?)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"State Diagram","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"captures":{"1":{"name":"keyword.control.mermaid"}},"comment":"}","match":"\\\\s+(})\\\\s+"},{"captures":{"1":{"name":"keyword.control.mermaid"}},"comment":"--","match":"\\\\s+(--)\\\\s+"},{"comment":"(state)","match":"^\\\\s*([\\\\w-]+)$","name":"variable"},{"captures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"string"}},"comment":"(state) : (description)","match":"(?i)([\\\\w-]+)\\\\s+(:)\\\\s+(\\\\s*[-\\\\w\\\\s]+\\\\b)"},{"begin":"(?i)^\\\\s*(state)\\\\s+","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"state","end":"$","patterns":[{"captures":{"1":{"name":"string"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"variable"}},"comment":"\\"(description)\\" as (state)","match":"(?i)\\\\s*(\\"[-\\\\w\\\\s]+\\\\b\\")\\\\s+(as)\\\\s+([\\\\w-]+)"},{"captures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"}},"comment":"(state name) {","match":"(?i)\\\\s*([\\\\w-]+)\\\\s+({)"},{"captures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"}},"comment":"(state name) <<fork|join>>","match":"(?i)\\\\s*([\\\\w-]+)\\\\s+(<<(?:fork|join)>>)"}]},{"begin":"(?i)([\\\\w-]+)\\\\s+(-->)","beginCaptures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"}},"comment":"(state) -->","end":"$","patterns":[{"captures":{"1":{"name":"variable"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"string"}},"comment":"(state) (:)? (transition text)?","match":"(?i)\\\\s+([\\\\w-]+)\\\\s*(:)?\\\\s*([^\\\\n:]+)?"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"string"}},"comment":"[*] (:)? (transition text)?","match":"(?i)(\\\\[\\\\*\\\\])\\\\s*(:)?\\\\s*([^\\\\n:]+)?"}]},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"variable"},"4":{"name":"keyword.control.mermaid"},"5":{"name":"string"}},"comment":"[*] --> (state) (:)? (transition text)?","match":"(?i)(\\\\[\\\\*\\\\])\\\\s+(-->)\\\\s+([\\\\w-]+)\\\\s*(:)?\\\\s*([^\\\\n:]+)?"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"},"3":{"name":"keyword.control.mermaid"},"4":{"name":"string"}},"comment":"note left|right of (state name)","match":"(?i)^\\\\s*(note (?:left|right) of)\\\\s+([\\\\w-]+)\\\\s+(:)\\\\s*([^\\\\n:]+)"},{"begin":"(?i)^\\\\s*(note (?:left|right) of)\\\\s+([\\\\w-]+)(.|\\\\n)","beginCaptures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"variable"}},"comment":"note left|right of (state name) (note text) end note","contentName":"string","end":"(?i)(end note)","endCaptures":{"1":{"name":"keyword.control.mermaid"}}}]},{"begin":"^\\\\s*(journey)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"User Journey","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"match":"(?i)^\\\\s*(title|section)\\\\s+(\\\\s*[\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)"},{"begin":"(?i)\\\\s*([\\"\\\\(\\\\)$&%\\\\^/.,?!*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)\\\\s*(:)\\\\s*(\\\\d+)\\\\s*(:)","beginCaptures":{"1":{"name":"string"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"constant.numeric.decimal.mermaid"},"4":{"name":"keyword.control.mermaid"}},"end":"$","patterns":[{"captures":{"1":{"name":"variable"}},"comment":"(taskName)","match":"(?i)\\\\s*,?\\\\s*([^,#\\\\n]+)"}]}]},{"begin":"^\\\\s*(xychart(?:-beta)?(?:\\\\s+horizontal)?)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"XY Chart","end":"(^|\\\\G)(?=\\\\s*[\`:~]{3,}\\\\s*$)","patterns":[{"match":"\\\\%%.*","name":"comment"},{"captures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"string"}},"match":"(?i)^\\\\s*(title)\\\\s+(\\\\s*[\\"\\\\(\\\\)$&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*)"},{"begin":"(?i)^\\\\s*(x-axis)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"(x-axis)","end":"$","patterns":[{"captures":{"1":{"name":"constant.numeric.decimal.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"constant.numeric.decimal.mermaid"}},"comment":"(decimal) (-->) (decimal)","match":"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\\\\s*(-->)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)"},{"captures":{"1":{"name":"string"}},"comment":"(\\"text\\")","match":"(?i)\\\\s+(\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\")"},{"captures":{"1":{"name":"string"}},"comment":"(text)","match":"(?i)\\\\s+([\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w]*)"},{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"([)(text)(,)(text)*(])","end":"\\\\s*(\\\\])","endCaptures":{"1":{"name":"keyword.control.mermaid"}},"patterns":[{"captures":{"1":{"name":"constant.numeric.decimal.mermaid"}},"comment":"(decimal)","match":"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)"},{"captures":{"1":{"name":"string"}},"comment":"(\\"text\\")","match":"(?i)\\\\s*(\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\")"},{"captures":{"1":{"name":"string"}},"comment":"(text)","match":"(?i)\\\\s*([\\\\($&%\\\\^/#.?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]+)"},{"captures":{"1":{"name":"keyword.control.mermaid"}},"comment":"(,)","match":"(?i)\\\\s*(,)"}]}]},{"begin":"(?i)^\\\\s*(y-axis)","beginCaptures":{"1":{"name":"keyword.control.mermaid"}},"comment":"(y-axis)","end":"$","patterns":[{"captures":{"1":{"name":"constant.numeric.decimal.mermaid"},"2":{"name":"keyword.control.mermaid"},"3":{"name":"constant.numeric.decimal.mermaid"}},"comment":"(decimal) (-->) (decimal)","match":"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)\\\\s*(-->)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)"},{"captures":{"1":{"name":"string"}},"comment":"(\\"text\\")","match":"(?i)\\\\s+(\\"[\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w\\\\s]*\\")"},{"captures":{"1":{"name":"string"}},"comment":"(text)","match":"(?i)\\\\s+([\\\\($&%\\\\^/#.,?!;:*+=<>\\\\'\\\\\\\\\\\\-\\\\w]*)"}]},{"begin":"(?i)^\\\\s*(line|bar)\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"keyword.control.mermaid"},"2":{"name":"keyword.control.mermaid"}},"comment":"(line|bar) ([)(decimal)+(])","end":"\\\\s*(\\\\])","endCaptures":{"1":{"name":"keyword.control.mermaid"}},"patterns":[{"captures":{"1":{"name":"constant.numeric.decimal.mermaid"}},"comment":"(decimal)","match":"(?i)\\\\s*([-+]?\\\\d+\\\\.?\\\\d*)"},{"captures":{"1":{"name":"keyword.control.mermaid"}},"comment":"(,)","match":"(?i)\\\\s*(,)"}]}]}]},"mermaid-ado-code-block":{"begin":"(?i)\\\\s*:::\\\\s*mermaid\\\\s*$","contentName":"meta.embedded.block.mermaid","end":"\\\\s*:::\\\\s*","patterns":[{"include":"#mermaid"}]},"mermaid-code-block":{"begin":"(?i)(?<=[\`~])mermaid(\\\\s+[^\`~]*)?$","contentName":"meta.embedded.block.mermaid","end":"(^|\\\\G)(?=\\\\s*[\`~]{3,}\\\\s*$)","patterns":[{"include":"#mermaid"}]},"mermaid-code-block-with-attributes":{"begin":"(?i)(?<=[\`~])\\\\{\\\\s*\\\\.?mermaid(\\\\s+[^\`~]*)?$","contentName":"meta.embedded.block.mermaid","end":"(^|\\\\G)(?=\\\\s*[\`~]{3,}\\\\s*$)","patterns":[{"include":"#mermaid"}]}},"scopeName":"markdown.mermaid.codeblock","aliases":["mmd"]}`)),Ire=[Qre]});var yR={};x(yR,{default:()=>Fre});var Dre,Fre,wR=_(()=>{Dre=Object.freeze(JSON.parse('{"displayName":"MIPS Assembly","fileTypes":["s","mips","spim","asm"],"name":"mipsasm","patterns":[{"comment":"ok actually this are instructions, but one also could call them funtions\u2026","match":"\\\\b(mul|abs|div|divu|mulo|mulou|neg|negu|not|rem|remu|rol|ror|li|seq|sge|sgeu|sgt|sgtu|sle|sleu|sne|b|beqz|bge|bgeu|bgt|bgtu|ble|bleu|blt|bltu|bnez|la|ld|ulh|ulhu|ulw|sd|ush|usw|move|mfc1\\\\.d|l\\\\.d|l\\\\.s|s\\\\.d|s\\\\.s)\\\\b","name":"support.function.pseudo.mips"},{"match":"\\\\b(abs\\\\.d|abs\\\\.s|add|add\\\\.d|add\\\\.s|addi|addiu|addu|and|andi|bc1f|bc1t|beq|bgez|bgezal|bgtz|blez|bltz|bltzal|bne|break|c\\\\.eq\\\\.d|c\\\\.eq\\\\.s|c\\\\.le\\\\.d|c\\\\.le\\\\.s|c\\\\.lt\\\\.d|c\\\\.lt\\\\.s|ceil\\\\.w\\\\.d|ceil\\\\.w\\\\.s|clo|clz|cvt\\\\.d\\\\.s|cvt\\\\.d\\\\.w|cvt\\\\.s\\\\.d|cvt\\\\.s\\\\.w|cvt\\\\.w\\\\.d|cvt\\\\.w\\\\.s|div|div\\\\.d|div\\\\.s|divu|eret|floor\\\\.w\\\\.d|floor\\\\.w\\\\.s|j|jal|jalr|jr|lb|lbu|lh|lhu|ll|lui|lw|lwc1|lwl|lwr|madd|maddu|mfc0|mfc1|mfhi|mflo|mov\\\\.d|mov\\\\.s|movf|movf\\\\.d|movf\\\\.s|movn|movn\\\\.d|movn\\\\.s|movt|movt\\\\.d|movt\\\\.s|movz|movz\\\\.d|movz\\\\.s|msub|mtc0|mtc1|mthi|mtlo|mul|mul\\\\.d|mul\\\\.s|mult|multu|neg\\\\.d|neg\\\\.s|nop|nor|or|ori|round\\\\.w\\\\.d|round\\\\.w\\\\.s|sb|sc|sdc1|sh|sll|sllv|slt|slti|sltiu|sltu|sqrt\\\\.d|sqrt\\\\.s|sra|srav|srl|srlv|sub|sub\\\\.d|sub\\\\.s|subu|sw|swc1|swl|swr|syscall|teq|teqi|tge|tgei|tgeiu|tgeu|tlt|tlti|tltiu|tltu|trunc\\\\.w\\\\.d|trunc\\\\.w\\\\.s|xor|xori)\\\\b","name":"support.function.mips"},{"match":"\\\\.(ascii|asciiz|byte|data|double|float|half|kdata|ktext|space|text|word|set\\\\s*(noat|at))\\\\b","name":"storage.type.mips"},{"match":"\\\\.(align|extern||globl)\\\\b","name":"storage.modifier.mips"},{"captures":{"1":{"name":"entity.name.function.label.mips"}},"match":"\\\\b([A-Za-z0-9_]+):","name":"meta.function.label.mips"},{"captures":{"1":{"name":"punctuation.definition.variable.mips"}},"match":"(\\\\$)(0|[2-9]|1[0-9]|2[0-5]|2[89]|3[0-1])\\\\b","name":"variable.other.register.usable.by-number.mips"},{"captures":{"1":{"name":"punctuation.definition.variable.mips"}},"match":"(\\\\$)(zero|v[01]|a[0-3]|t[0-9]|s[0-7]|gp|sp|fp|ra)\\\\b","name":"variable.other.register.usable.by-name.mips"},{"captures":{"1":{"name":"punctuation.definition.variable.mips"}},"match":"(\\\\$)(at|k[01]|1|2[67])\\\\b","name":"variable.other.register.reserved.mips"},{"captures":{"1":{"name":"punctuation.definition.variable.mips"}},"match":"(\\\\$)f([0-9]|1[0-9]|2[0-9]|3[0-1])\\\\b","name":"variable.other.register.usable.floating-point.mips"},{"match":"\\\\b\\\\d+\\\\.\\\\d+\\\\b","name":"constant.numeric.float.mips"},{"match":"\\\\b(\\\\d+|0(x|X)[a-fA-F0-9]+)\\\\b","name":"constant.numeric.integer.mips"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.mips"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.mips"}},"name":"string.quoted.double.mips","patterns":[{"match":"\\\\\\\\[rnt\\\\\\\\\\"]","name":"constant.character.escape.mips"}]},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.mips"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.mips"}},"end":"\\\\n","name":"comment.line.number-sign.mips"}]}],"scopeName":"source.mips","aliases":["mips"]}')),Fre=[Dre]});var kR={};x(kR,{default:()=>Ore});var Sre,Ore,CR=_(()=>{Sre=Object.freeze(JSON.parse(`{"displayName":"Mojo","name":"mojo","patterns":[{"include":"#statement"},{"include":"#expression"}],"repository":{"annotated-parameter":{"begin":"\\\\b([[:alpha:]_]\\\\w*)\\\\s*(:)","beginCaptures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.annotation.python"}},"end":"(,)|(?=\\\\))","endCaptures":{"1":{"name":"punctuation.separator.parameters.python"}},"patterns":[{"include":"#expression"},{"match":"=(?!=)","name":"keyword.operator.assignment.python"}]},"assignment-operator":{"match":"<<=|>>=|//=|\\\\*\\\\*=|\\\\+=|-=|/=|@=|\\\\*=|%=|~=|\\\\^=|&=|\\\\|=|=(?!=)","name":"keyword.operator.assignment.python"},"backticks":{"begin":"\\\\\`","end":"(?:\\\\\`|(?<!\\\\\\\\)(\\\\n))","name":"string.quoted.single.python"},"builtin-callables":{"patterns":[{"include":"#illegal-names"},{"include":"#illegal-object-name"},{"include":"#builtin-exceptions"},{"include":"#builtin-functions"},{"include":"#builtin-types"}]},"builtin-exceptions":{"match":"(?<!\\\\.)\\\\b((Arithmetic|Assertion|Attribute|Buffer|BlockingIO|BrokenPipe|ChildProcess|(Connection(Aborted|Refused|Reset)?)|EOF|Environment|FileExists|FileNotFound|FloatingPoint|IO|Import|Indentation|Index|Interrupted|IsADirectory|NotADirectory|Permission|ProcessLookup|Timeout|Key|Lookup|Memory|Name|NotImplemented|OS|Overflow|Reference|Runtime|Recursion|Syntax|System|Tab|Type|UnboundLocal|Unicode(Encode|Decode|Translate)?|Value|Windows|ZeroDivision|ModuleNotFound)Error|((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes|Resource)?Warning|SystemExit|Stop(Async)?Iteration|KeyboardInterrupt|GeneratorExit|(Base)?Exception)\\\\b","name":"support.type.exception.python"},"builtin-functions":{"patterns":[{"match":"(?<!\\\\.)\\\\b(__import__|abs|aiter|all|any|anext|ascii|bin|breakpoint|callable|chr|compile|copyright|credits|delattr|dir|divmod|enumerate|eval|exec|exit|filter|format|getattr|globals|hasattr|hash|help|hex|id|input|isinstance|issubclass|iter|len|license|locals|map|max|memoryview|min|next|oct|open|ord|pow|print|quit|range|reload|repr|reversed|round|setattr|sorted|sum|vars|zip)\\\\b","name":"support.function.builtin.python"},{"match":"(?<!\\\\.)\\\\b(file|reduce|intern|raw_input|unicode|cmp|basestring|execfile|long|xrange)\\\\b","name":"variable.legacy.builtin.python"}]},"builtin-possible-callables":{"patterns":[{"include":"#builtin-callables"},{"include":"#magic-names"}]},"builtin-types":{"match":"(?<!\\\\.)\\\\b(__mlir_attr|__mlir_op|__mlir_type|bool|bytearray|bytes|classmethod|complex|dict|float|frozenset|int|list|object|property|set|slice|staticmethod|str|tuple|type|super)\\\\b","name":"support.type.python"},"call-wrapper-inheritance":{"begin":"\\\\b(?=([[:alpha:]_]\\\\w*)\\\\s*(\\\\())","comment":"same as a function call, but in inheritance context","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"name":"meta.function-call.python","patterns":[{"include":"#inheritance-name"},{"include":"#function-arguments"}]},"class-declaration":{"patterns":[{"begin":"\\\\s*(class|struct|trait)\\\\s+(?=[[:alpha:]_]\\\\w*\\\\s*(:|\\\\())","beginCaptures":{"1":{"name":"storage.type.class.python"}},"end":"(:)","endCaptures":{"1":{"name":"punctuation.section.class.begin.python"}},"name":"meta.class.python","patterns":[{"include":"#class-name"},{"include":"#class-inheritance"}]}]},"class-inheritance":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.inheritance.begin.python"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.inheritance.end.python"}},"name":"meta.class.inheritance.python","patterns":[{"match":"(\\\\*\\\\*|\\\\*)","name":"keyword.operator.unpacking.arguments.python"},{"match":",","name":"punctuation.separator.inheritance.python"},{"match":"=(?!=)","name":"keyword.operator.assignment.python"},{"match":"\\\\bmetaclass\\\\b","name":"support.type.metaclass.python"},{"include":"#illegal-names"},{"include":"#class-kwarg"},{"include":"#call-wrapper-inheritance"},{"include":"#expression-base"},{"include":"#member-access-class"},{"include":"#inheritance-identifier"}]},"class-kwarg":{"captures":{"1":{"name":"entity.other.inherited-class.python variable.parameter.class.python"},"2":{"name":"keyword.operator.assignment.python"}},"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\s*(=)(?!=)"},"class-name":{"patterns":[{"include":"#illegal-object-name"},{"include":"#builtin-possible-callables"},{"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"entity.name.type.class.python"}]},"codetags":{"captures":{"1":{"name":"keyword.codetag.notation.python"}},"match":"(?:\\\\b(NOTE|XXX|HACK|FIXME|BUG|TODO)\\\\b)"},"comments":{"patterns":[{"begin":"(?:\\\\#\\\\s*(type:)\\\\s*+(?!$|\\\\#))","beginCaptures":{"0":{"name":"meta.typehint.comment.python"},"1":{"name":"comment.typehint.directive.notation.python"}},"contentName":"meta.typehint.comment.python","end":"(?:$|(?=\\\\#))","name":"comment.line.number-sign.python","patterns":[{"match":"\\\\Gignore(?=\\\\s*(?:$|\\\\#))","name":"comment.typehint.ignore.notation.python"},{"match":"(?<!\\\\.)\\\\b(bool|bytes|float|int|object|str|List|Dict|Iterable|Sequence|Set|FrozenSet|Callable|Union|Tuple|Any|None)\\\\b","name":"comment.typehint.type.notation.python"},{"match":"([\\\\[\\\\]\\\\(\\\\),\\\\.\\\\=\\\\*]|(->))","name":"comment.typehint.punctuation.notation.python"},{"match":"([[:alpha:]_]\\\\w*)","name":"comment.typehint.variable.notation.python"}]},{"include":"#comments-base"}]},"comments-base":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($)","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"comments-string-double-three":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($|(?=\\"\\"\\"))","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"comments-string-single-three":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($|(?='''))","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"curly-braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dict.begin.python"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dict.end.python"}},"patterns":[{"match":":","name":"punctuation.separator.dict.python"},{"include":"#expression"}]},"decorator":{"begin":"^\\\\s*((@))\\\\s*(?=[[:alpha:]_]\\\\w*)","beginCaptures":{"1":{"name":"entity.name.function.decorator.python"},"2":{"name":"punctuation.definition.decorator.python"}},"end":"(\\\\))(?:(.*?)(?=\\\\s*(?:\\\\#|$)))|(?=\\\\n|\\\\#)","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"},"2":{"name":"invalid.illegal.decorator.python"}},"name":"meta.function.decorator.python","patterns":[{"include":"#decorator-name"},{"include":"#function-arguments"}]},"decorator-name":{"patterns":[{"include":"#builtin-callables"},{"include":"#illegal-object-name"},{"captures":{"2":{"name":"punctuation.separator.period.python"}},"match":"([[:alpha:]_]\\\\w*)|(\\\\.)","name":"entity.name.function.decorator.python"},{"include":"#line-continuation"},{"captures":{"1":{"name":"invalid.illegal.decorator.python"}},"match":"\\\\s*([^([:alpha:]\\\\s_\\\\.#\\\\\\\\].*?)(?=\\\\#|$)","name":"invalid.illegal.decorator.python"}]},"double-one-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"double-one-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"double-one-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[[:alnum:]]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#double-one-regexp-character-set"},{"include":"#double-one-regexp-comments"},{"include":"#regexp-flags"},{"include":"#double-one-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#double-one-regexp-lookahead"},{"include":"#double-one-regexp-lookahead-negative"},{"include":"#double-one-regexp-lookbehind"},{"include":"#double-one-regexp-lookbehind-negative"},{"include":"#double-one-regexp-conditional"},{"include":"#double-one-regexp-parentheses-non-capturing"},{"include":"#double-one-regexp-parentheses"}]},"double-one-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[[:alnum:]]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-three-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"double-three-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"double-three-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[[:alnum:]]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#double-three-regexp-character-set"},{"include":"#double-three-regexp-comments"},{"include":"#regexp-flags"},{"include":"#double-three-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#double-three-regexp-lookahead"},{"include":"#double-three-regexp-lookahead-negative"},{"include":"#double-three-regexp-lookbehind"},{"include":"#double-three-regexp-lookbehind-negative"},{"include":"#double-three-regexp-conditional"},{"include":"#double-three-regexp-parentheses-non-capturing"},{"include":"#double-three-regexp-parentheses"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[[:alnum:]]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"ellipsis":{"match":"\\\\.\\\\.\\\\.","name":"constant.other.ellipsis.python"},"escape-sequence":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|[0-7]{1,3}|[\\\\\\\\\\"'abfnrtv])","name":"constant.character.escape.python"},"escape-sequence-unicode":{"patterns":[{"match":"\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\\\\{[\\\\w\\\\s]+?\\\\})","name":"constant.character.escape.python"}]},"expression":{"comment":"All valid Python expressions","patterns":[{"include":"#expression-base"},{"include":"#member-access"},{"comment":"Tokenize identifiers to help linters","match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b"}]},"expression-bare":{"comment":"valid Python expressions w/o comments and line continuation","patterns":[{"include":"#backticks"},{"include":"#literal"},{"include":"#regexp"},{"include":"#string"},{"include":"#lambda"},{"include":"#generator"},{"include":"#illegal-operator"},{"include":"#operator"},{"include":"#curly-braces"},{"include":"#item-access"},{"include":"#list"},{"include":"#odd-function-call"},{"include":"#round-braces"},{"include":"#function-call"},{"include":"#builtin-functions"},{"include":"#builtin-types"},{"include":"#builtin-exceptions"},{"include":"#magic-names"},{"include":"#special-names"},{"include":"#illegal-names"},{"include":"#special-variables"},{"include":"#ellipsis"},{"include":"#punctuation"},{"include":"#line-continuation"}]},"expression-base":{"comment":"valid Python expressions with comments and line continuation","patterns":[{"include":"#comments"},{"include":"#expression-bare"},{"include":"#line-continuation"}]},"f-expression":{"comment":"All valid Python expressions, except comments and line continuation","patterns":[{"include":"#expression-bare"},{"include":"#member-access"},{"comment":"Tokenize identifiers to help linters","match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b"}]},"fregexp-base-expression":{"patterns":[{"include":"#fregexp-quantifier"},{"include":"#fstring-formatting-braces"},{"match":"\\\\{.*?\\\\}"},{"include":"#regexp-base-common"}]},"fregexp-quantifier":{"match":"\\\\{\\\\{(\\\\d+|\\\\d+,(\\\\d+)?|,\\\\d+)\\\\}\\\\}","name":"keyword.operator.quantifier.regexp"},"fstring-fnorm-quoted-multi-line":{"begin":"(\\\\b[fF])([bBuU])?('''|\\"\\"\\")","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.multi.python storage.type.string.python"},"2":{"name":"invalid.illegal.prefix.python"},"3":{"name":"punctuation.definition.string.begin.python string.interpolated.python string.quoted.multi.python"}},"end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"include":"#fstring-multi-core"}]},"fstring-fnorm-quoted-single-line":{"begin":"(\\\\b[fF])([bBuU])?((['\\"]))","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.single.python storage.type.string.python"},"2":{"name":"invalid.illegal.prefix.python"},"3":{"name":"punctuation.definition.string.begin.python string.interpolated.python string.quoted.single.python"}},"end":"(\\\\3)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"include":"#fstring-single-core"}]},"fstring-formatting":{"patterns":[{"include":"#fstring-formatting-braces"},{"include":"#fstring-formatting-singe-brace"}]},"fstring-formatting-braces":{"patterns":[{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"},"2":{"name":"invalid.illegal.brace.python"},"3":{"name":"constant.character.format.placeholder.other.python"}},"comment":"empty braces are illegal","match":"({)(\\\\s*?)(})"},{"match":"({{|}})","name":"constant.character.escape.python"}]},"fstring-formatting-singe-brace":{"match":"(}(?!}))","name":"invalid.illegal.brace.python"},"fstring-guts":{"patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"},{"include":"#fstring-formatting"}]},"fstring-illegal-multi-brace":{"patterns":[{"include":"#impossible"}]},"fstring-illegal-single-brace":{"begin":"(\\\\{)(?=[^\\\\n}]*$\\\\n?)","beginCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"comment":"it is illegal to have a multiline brace inside a single-line string","end":"(\\\\})|(?=\\\\n)","endCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"patterns":[{"include":"#fstring-terminator-single"},{"include":"#f-expression"}]},"fstring-multi-brace":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"comment":"value interpolation using { ... }","end":"(\\\\})","endCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"patterns":[{"include":"#fstring-terminator-multi"},{"include":"#f-expression"}]},"fstring-multi-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\\\\\}\\\\{]|'''|\\"\\"\\"))|\\\\n","name":"string.interpolated.python string.quoted.multi.python"},"fstring-normf-quoted-multi-line":{"begin":"(\\\\b[bBuU])([fF])('''|\\"\\"\\")","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"string.interpolated.python string.quoted.multi.python storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python string.quoted.multi.python"}},"end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"include":"#fstring-multi-core"}]},"fstring-normf-quoted-single-line":{"begin":"(\\\\b[bBuU])([fF])((['\\"]))","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"string.interpolated.python string.quoted.single.python storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python string.quoted.single.python"}},"end":"(\\\\3)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"include":"#fstring-single-core"}]},"fstring-raw-guts":{"patterns":[{"include":"#string-consume-escape"},{"include":"#fstring-formatting"}]},"fstring-raw-multi-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\\\\\}\\\\{]|'''|\\"\\"\\"))|\\\\n","name":"string.interpolated.python string.quoted.raw.multi.python"},"fstring-raw-quoted-multi-line":{"begin":"(\\\\b(?:[rR][fF]|[fF][rR]))('''|\\"\\"\\")","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.raw.multi.python storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python string.quoted.raw.multi.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.multi.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-raw-guts"},{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"include":"#fstring-raw-multi-core"}]},"fstring-raw-quoted-single-line":{"begin":"(\\\\b(?:[rR][fF]|[fF][rR]))((['\\"]))","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.raw.single.python storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python string.quoted.raw.single.python"}},"end":"(\\\\2)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.single.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-raw-guts"},{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"include":"#fstring-raw-single-core"}]},"fstring-raw-single-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\\\\\}\\\\{]|(['\\"])|((?<!\\\\\\\\)\\\\n)))|\\\\n","name":"string.interpolated.python string.quoted.raw.single.python"},"fstring-single-brace":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"comment":"value interpolation using { ... }","end":"(\\\\})|(?=\\\\n)","endCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"patterns":[{"include":"#fstring-terminator-single"},{"include":"#f-expression"}]},"fstring-single-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\\\\\}\\\\{]|(['\\"])|((?<!\\\\\\\\)\\\\n)))|\\\\n","name":"string.interpolated.python string.quoted.single.python"},"fstring-terminator-multi":{"patterns":[{"match":"(=(![rsa])?)(?=})","name":"storage.type.format.python"},{"match":"(=?![rsa])(?=})","name":"storage.type.format.python"},{"captures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"match":"((?:=?)(?:![rsa])?)(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})"},{"include":"#fstring-terminator-multi-tail"}]},"fstring-terminator-multi-tail":{"begin":"((?:=?)(?:![rsa])?)(:)(?=.*?{)","beginCaptures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"end":"(?=})","patterns":[{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"match":"([bcdeEfFgGnosxX%])(?=})","name":"storage.type.format.python"},{"match":"(\\\\.\\\\d+)","name":"storage.type.format.python"},{"match":"(,)","name":"storage.type.format.python"},{"match":"(\\\\d+)","name":"storage.type.format.python"},{"match":"(\\\\#)","name":"storage.type.format.python"},{"match":"([-+ ])","name":"storage.type.format.python"},{"match":"([<>=^])","name":"storage.type.format.python"},{"match":"(\\\\w)","name":"storage.type.format.python"}]},"fstring-terminator-single":{"patterns":[{"match":"(=(![rsa])?)(?=})","name":"storage.type.format.python"},{"match":"(=?![rsa])(?=})","name":"storage.type.format.python"},{"captures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"match":"((?:=?)(?:![rsa])?)(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})"},{"include":"#fstring-terminator-single-tail"}]},"fstring-terminator-single-tail":{"begin":"((?:=?)(?:![rsa])?)(:)(?=.*?{)","beginCaptures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"end":"(?=})|(?=\\\\n)","patterns":[{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"match":"([bcdeEfFgGnosxX%])(?=})","name":"storage.type.format.python"},{"match":"(\\\\.\\\\d+)","name":"storage.type.format.python"},{"match":"(,)","name":"storage.type.format.python"},{"match":"(\\\\d+)","name":"storage.type.format.python"},{"match":"(\\\\#)","name":"storage.type.format.python"},{"match":"([-+ ])","name":"storage.type.format.python"},{"match":"([<>=^])","name":"storage.type.format.python"},{"match":"(\\\\w)","name":"storage.type.format.python"}]},"function-arguments":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python"}},"contentName":"meta.function-call.arguments.python","end":"(?=\\\\))(?!\\\\)\\\\s*\\\\()","patterns":[{"match":"(,)","name":"punctuation.separator.arguments.python"},{"captures":{"1":{"name":"keyword.operator.unpacking.arguments.python"}},"match":"(?:(?<=[,(])|^)\\\\s*(\\\\*{1,2})"},{"include":"#lambda-incomplete"},{"include":"#illegal-names"},{"captures":{"1":{"name":"variable.parameter.function-call.python"},"2":{"name":"keyword.operator.assignment.python"}},"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\s*(=)(?!=)"},{"match":"=(?!=)","name":"keyword.operator.assignment.python"},{"include":"#expression"},{"captures":{"1":{"name":"punctuation.definition.arguments.end.python"},"2":{"name":"punctuation.definition.arguments.begin.python"}},"match":"\\\\s*(\\\\))\\\\s*(\\\\()"}]},"function-call":{"begin":"\\\\b(?=([[:alpha:]_]\\\\w*)\\\\s*(\\\\())","comment":"Regular function call of the type \\"name(args)\\"","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"name":"meta.function-call.python","patterns":[{"include":"#special-variables"},{"include":"#function-name"},{"include":"#function-arguments"}]},"function-declaration":{"begin":"\\\\s*(?:\\\\b(async)\\\\s+)?\\\\b(def|fn)\\\\s+(?=[[:alpha:]_][[:word:]]*\\\\s*[\\\\(\\\\[])","beginCaptures":{"1":{"name":"storage.type.function.async.python"},"2":{"name":"storage.type.function.python"}},"end":"(:|(?=[#'\\"\\\\n]))","endCaptures":{"1":{"name":"punctuation.section.function.begin.python"}},"name":"meta.function.python","patterns":[{"include":"#function-modifier"},{"include":"#function-def-name"},{"include":"#parameters"},{"include":"#meta_parameters"},{"include":"#line-continuation"},{"include":"#return-annotation"}]},"function-def-name":{"patterns":[{"include":"#illegal-object-name"},{"include":"#builtin-possible-callables"},{"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"entity.name.function.python"}]},"function-modifier":{"match":"(raises|capturing)","name":"storage.modifier"},"function-name":{"patterns":[{"include":"#builtin-possible-callables"},{"comment":"Some color schemas support meta.function-call.generic scope","match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"meta.function-call.generic.python"}]},"generator":{"begin":"\\\\bfor\\\\b","beginCaptures":{"0":{"name":"keyword.control.flow.python"}},"comment":"Match \\"for ... in\\" construct used in generators and for loops to\\ncorrectly identify the \\"in\\" as a control flow keyword.\\n","end":"\\\\bin\\\\b","endCaptures":{"0":{"name":"keyword.control.flow.python"}},"patterns":[{"include":"#expression"}]},"illegal-names":{"captures":{"1":{"name":"keyword.control.flow.python"},"2":{"name":"storage.type.function.python"},"3":{"name":"keyword.control.import.python"}},"match":"\\\\b(?:(and|assert|async|await|break|class|struct|trait|continue|del|elif|else|except|finally|for|from|global|if|in|is|(?<=\\\\.)lambda|lambda(?=\\\\s*[\\\\.=])|nonlocal|not|or|pass|raise|return|try|while|with|yield)|(def|fn|capturing|raises)|(as|import))\\\\b"},"illegal-object-name":{"comment":"It's illegal to name class or function \\"True\\"","match":"\\\\b(True|False|None)\\\\b","name":"keyword.illegal.name.python"},"illegal-operator":{"patterns":[{"match":"&&|\\\\|\\\\||--|\\\\+\\\\+","name":"invalid.illegal.operator.python"},{"match":"[?$]","name":"invalid.illegal.operator.python"},{"comment":"We don't want \`!\` to flash when we're typing \`!=\`","match":"!\\\\b","name":"invalid.illegal.operator.python"}]},"import":{"comment":"Import statements used to correctly mark \`from\`, \`import\`, and \`as\`\\n","patterns":[{"begin":"\\\\b(?<!\\\\.)(from)\\\\b(?=.+import)","beginCaptures":{"1":{"name":"keyword.control.import.python"}},"end":"$|(?=import)","patterns":[{"match":"\\\\.+","name":"punctuation.separator.period.python"},{"include":"#expression"}]},{"begin":"\\\\b(?<!\\\\.)(import)\\\\b","beginCaptures":{"1":{"name":"keyword.control.import.python"}},"end":"$","patterns":[{"match":"\\\\b(?<!\\\\.)as\\\\b","name":"keyword.control.import.python"},{"include":"#expression"}]}]},"impossible":{"comment":"This is a special rule that should be used where no match is desired. It is not a good idea to match something like '1{0}' because in some cases that can result in infinite loops in token generation. So the rule instead matches and impossible expression to allow a match to fail and move to the next token.","match":"$.^"},"inheritance-identifier":{"captures":{"1":{"name":"entity.other.inherited-class.python"}},"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b"},"inheritance-name":{"patterns":[{"include":"#lambda-incomplete"},{"include":"#builtin-possible-callables"},{"include":"#inheritance-identifier"}]},"item-access":{"patterns":[{"begin":"\\\\b(?=[[:alpha:]_]\\\\w*\\\\s*\\\\[)","end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"name":"meta.item-access.python","patterns":[{"include":"#item-name"},{"include":"#item-index"},{"include":"#expression"}]}]},"item-index":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python"}},"contentName":"meta.item-access.arguments.python","end":"(?=\\\\])","patterns":[{"match":":","name":"punctuation.separator.slice.python"},{"include":"#expression"}]},"item-name":{"patterns":[{"include":"#special-variables"},{"include":"#builtin-functions"},{"include":"#special-names"},{"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"meta.indexed-name.python"}]},"lambda":{"patterns":[{"captures":{"1":{"name":"keyword.control.flow.python"}},"match":"((?<=\\\\.)lambda|lambda(?=\\\\s*[\\\\.=]))"},{"captures":{"1":{"name":"storage.type.function.lambda.python"}},"match":"\\\\b(lambda)\\\\s*?(?=[,\\\\n]|$)"},{"begin":"\\\\b(lambda)\\\\b","beginCaptures":{"1":{"name":"storage.type.function.lambda.python"}},"contentName":"meta.function.lambda.parameters.python","end":"(:)|(\\\\n)","endCaptures":{"1":{"name":"punctuation.section.function.lambda.begin.python"}},"name":"meta.lambda-function.python","patterns":[{"match":"\\\\b(owned|borrowed|inout)\\\\b","name":"storage.modifier"},{"match":"/","name":"keyword.operator.positional.parameter.python"},{"match":"(\\\\*\\\\*|\\\\*)","name":"keyword.operator.unpacking.parameter.python"},{"include":"#lambda-nested-incomplete"},{"include":"#illegal-names"},{"captures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.parameters.python"}},"match":"([[:alpha:]_]\\\\w*)\\\\s*(?:(,)|(?=:|$))"},{"include":"#comments"},{"include":"#backticks"},{"include":"#lambda-parameter-with-default"},{"include":"#line-continuation"},{"include":"#illegal-operator"}]}]},"lambda-incomplete":{"match":"\\\\blambda(?=\\\\s*[,)])","name":"storage.type.function.lambda.python"},"lambda-nested-incomplete":{"match":"\\\\blambda(?=\\\\s*[:,)])","name":"storage.type.function.lambda.python"},"lambda-parameter-with-default":{"begin":"\\\\b([[:alpha:]_]\\\\w*)\\\\s*(=)","beginCaptures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"keyword.operator.python"}},"end":"(,)|(?=:|$)","endCaptures":{"1":{"name":"punctuation.separator.parameters.python"}},"patterns":[{"include":"#expression"}]},"line-continuation":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.continuation.line.python"},"2":{"name":"invalid.illegal.line.continuation.python"}},"match":"(\\\\\\\\)\\\\s*(\\\\S.*$\\\\n?)"},{"begin":"(\\\\\\\\)\\\\s*$\\\\n?","beginCaptures":{"1":{"name":"punctuation.separator.continuation.line.python"}},"end":"(?=^\\\\s*$)|(?!(\\\\s*[rR]?(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\"|\\\\'|\\\\\\"))|(\\\\G$))","patterns":[{"include":"#regexp"},{"include":"#string"}]}]},"list":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.list.begin.python"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.list.end.python"}},"patterns":[{"include":"#expression"}]},"literal":{"patterns":[{"match":"\\\\b(True|False|None|NotImplemented|Ellipsis)\\\\b","name":"constant.language.python"},{"include":"#number"}]},"loose-default":{"begin":"(=)","beginCaptures":{"1":{"name":"keyword.operator.python"}},"end":"(,)|(?=\\\\))","endCaptures":{"1":{"name":"punctuation.separator.parameters.python"}},"patterns":[{"include":"#expression"}]},"magic-function-names":{"captures":{"1":{"name":"support.function.magic.python"}},"comment":"these methods have magic interpretation by python and are generally called\\nindirectly through syntactic constructs\\n","match":"\\\\b(__(?:abs|add|aenter|aexit|aiter|and|anext|await|bool|call|ceil|class_getitem|cmp|coerce|complex|contains|copy|deepcopy|del|delattr|delete|delitem|delslice|dir|div|divmod|enter|eq|exit|float|floor|floordiv|format|ge|get|getattr|getattribute|getinitargs|getitem|getnewargs|getslice|getstate|gt|hash|hex|iadd|iand|idiv|ifloordiv||ilshift|imod|imul|index|init|instancecheck|int|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|long|lshift|lt|missing|mod|mul|ne|neg|new|next|nonzero|oct|or|pos|pow|radd|rand|rdiv|rdivmod|reduce|reduce_ex|repr|reversed|rfloordiv||rlshift|rmod|rmul|ror|round|rpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|set_name|setslice|setstate|sizeof|str|sub|subclasscheck|truediv|trunc|unicode|xor|matmul|rmatmul|imatmul|init_subclass|set_name|fspath|bytes|prepare|length_hint)__)\\\\b"},"magic-names":{"patterns":[{"include":"#magic-function-names"},{"include":"#magic-variable-names"}]},"magic-variable-names":{"captures":{"1":{"name":"support.variable.magic.python"}},"comment":"magic variables which a class/module may have.","match":"\\\\b(__(?:all|annotations|bases|builtins|class|struct|trait|closure|code|debug|defaults|dict|doc|file|func|globals|kwdefaults|match_args|members|metaclass|methods|module|mro|mro_entries|name|qualname|post_init|self|signature|slots|subclasses|version|weakref|wrapped|classcell|spec|path|package|future|traceback)__)\\\\b"},"member-access":{"begin":"(\\\\.)\\\\s*(?!\\\\.)","beginCaptures":{"1":{"name":"punctuation.separator.period.python"}},"end":"(?<=\\\\S)(?=\\\\W)|(^|(?<=\\\\s))(?=[^\\\\\\\\\\\\w\\\\s])|$","name":"meta.member.access.python","patterns":[{"include":"#function-call"},{"include":"#member-access-base"},{"include":"#member-access-attribute"}]},"member-access-attribute":{"comment":"Highlight attribute access in otherwise non-specialized cases.","match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"meta.attribute.python"},"member-access-base":{"patterns":[{"include":"#magic-names"},{"include":"#illegal-names"},{"include":"#illegal-object-name"},{"include":"#special-names"},{"include":"#line-continuation"},{"include":"#item-access"}]},"member-access-class":{"begin":"(\\\\.)\\\\s*(?!\\\\.)","beginCaptures":{"1":{"name":"punctuation.separator.period.python"}},"end":"(?<=\\\\S)(?=\\\\W)|$","name":"meta.member.access.python","patterns":[{"include":"#call-wrapper-inheritance"},{"include":"#member-access-base"},{"include":"#inheritance-identifier"}]},"meta_parameters":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.python"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.python"}},"name":"meta.function.parameters.python","patterns":[{"begin":"\\\\b([[:alpha:]_]\\\\w*)\\\\s*(:)","beginCaptures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.annotation.python"}},"end":"(,)|(?=\\\\])","endCaptures":{"1":{"name":"punctuation.separator.parameters.python"}},"patterns":[{"include":"#expression"}]},{"include":"#comments"}]},"number":{"name":"constant.numeric.python","patterns":[{"include":"#number-float"},{"include":"#number-dec"},{"include":"#number-hex"},{"include":"#number-oct"},{"include":"#number-bin"},{"include":"#number-long"},{"match":"\\\\b[0-9]+\\\\w+","name":"invalid.illegal.name.python"}]},"number-bin":{"captures":{"1":{"name":"storage.type.number.python"}},"match":"(?<![\\\\w\\\\.])(0[bB])(_?[01])+\\\\b","name":"constant.numeric.bin.python"},"number-dec":{"captures":{"1":{"name":"storage.type.imaginary.number.python"},"2":{"name":"invalid.illegal.dec.python"}},"match":"(?<![\\\\w\\\\.])(?:[1-9](?:_?[0-9])*|0+|[0-9](?:_?[0-9])*([jJ])|0([0-9]+)(?![eE\\\\.]))\\\\b","name":"constant.numeric.dec.python"},"number-float":{"captures":{"1":{"name":"storage.type.imaginary.number.python"}},"match":"(?<!\\\\w)(?:(?:\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\.)(?:[eE][+-]?[0-9](?:_?[0-9])*)?|[0-9](?:_?[0-9])*(?:[eE][+-]?[0-9](?:_?[0-9])*))([jJ])?\\\\b","name":"constant.numeric.float.python"},"number-hex":{"captures":{"1":{"name":"storage.type.number.python"}},"match":"(?<![\\\\w\\\\.])(0[xX])(_?[0-9a-fA-F])+\\\\b","name":"constant.numeric.hex.python"},"number-long":{"captures":{"2":{"name":"storage.type.number.python"}},"comment":"this is to support python2 syntax for long ints","match":"(?<![\\\\w\\\\.])([1-9][0-9]*|0)([lL])\\\\b","name":"constant.numeric.bin.python"},"number-oct":{"captures":{"1":{"name":"storage.type.number.python"}},"match":"(?<![\\\\w\\\\.])(0[oO])(_?[0-7])+\\\\b","name":"constant.numeric.oct.python"},"odd-function-call":{"begin":"(?<=\\\\]|\\\\))\\\\s*(?=\\\\()","comment":"A bit obscured function call where there may have been an\\narbitrary number of other operations to get the function.\\nE.g. \\"arr[idx](args)\\"\\n","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"patterns":[{"include":"#function-arguments"}]},"operator":{"captures":{"1":{"name":"keyword.operator.logical.python"},"2":{"name":"keyword.control.flow.python"},"3":{"name":"keyword.operator.bitwise.python"},"4":{"name":"keyword.operator.arithmetic.python"},"5":{"name":"keyword.operator.comparison.python"},"6":{"name":"keyword.operator.assignment.python"}},"match":"\\\\b(?<!\\\\.)(?:(and|or|not|in|is)|(for|if|else|await|(?:yield(?:\\\\s+from)?)))(?!\\\\s*:)\\\\b|(<<|>>|&|\\\\||\\\\^|~)|(\\\\*\\\\*|\\\\*|\\\\+|-|%|//|/|@)|(!=|==|>=|<=|<|>)|(:=)"},"parameter-special":{"captures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"variable.parameter.function.language.special.self.python"},"3":{"name":"variable.parameter.function.language.special.cls.python"},"4":{"name":"punctuation.separator.parameters.python"}},"match":"\\\\b((self)|(cls))\\\\b\\\\s*(?:(,)|(?=\\\\)))"},"parameters":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.python"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.python"}},"name":"meta.function.parameters.python","patterns":[{"match":"\\\\b(owned|borrowed|inout)\\\\b","name":"storage.modifier"},{"match":"/","name":"keyword.operator.positional.parameter.python"},{"match":"(\\\\*\\\\*|\\\\*)","name":"keyword.operator.unpacking.parameter.python"},{"include":"#lambda-incomplete"},{"include":"#illegal-names"},{"include":"#illegal-object-name"},{"include":"#parameter-special"},{"captures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.parameters.python"}},"match":"([[:alpha:]_]\\\\w*)\\\\s*(?:(,)|(?=[)#\\\\n=]))"},{"include":"#comments"},{"include":"#loose-default"},{"include":"#annotated-parameter"}]},"punctuation":{"patterns":[{"match":":","name":"punctuation.separator.colon.python"},{"match":",","name":"punctuation.separator.element.python"}]},"regexp":{"patterns":[{"include":"#regexp-single-three-line"},{"include":"#regexp-double-three-line"},{"include":"#regexp-single-one-line"},{"include":"#regexp-double-one-line"}]},"regexp-backreference":{"captures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.begin.regexp"},"2":{"name":"entity.name.tag.named.backreference.regexp"},"3":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp"}},"match":"(\\\\()(\\\\?P=\\\\w+(?:\\\\s+[[:alnum:]]+)?)(\\\\))","name":"meta.backreference.named.regexp"},"regexp-backreference-number":{"captures":{"1":{"name":"entity.name.tag.backreference.regexp"}},"match":"(\\\\\\\\[1-9]\\\\d?)","name":"meta.backreference.regexp"},"regexp-base-common":{"patterns":[{"match":"\\\\.","name":"support.other.match.any.regexp"},{"match":"\\\\^","name":"support.other.match.begin.regexp"},{"match":"\\\\$","name":"support.other.match.end.regexp"},{"match":"[+*?]\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.disjunction.regexp"},{"include":"#regexp-escape-sequence"}]},"regexp-base-expression":{"patterns":[{"include":"#regexp-quantifier"},{"include":"#regexp-base-common"}]},"regexp-charecter-set-escapes":{"patterns":[{"match":"\\\\\\\\[abfnrtv\\\\\\\\]","name":"constant.character.escape.regexp"},{"include":"#regexp-escape-special"},{"match":"\\\\\\\\([0-7]{1,3})","name":"constant.character.escape.regexp"},{"include":"#regexp-escape-character"},{"include":"#regexp-escape-unicode"},{"include":"#regexp-escape-catchall"}]},"regexp-double-one-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\")","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\")|(?<!\\\\\\\\)(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.single.python","patterns":[{"include":"#double-one-regexp-expression"}]},"regexp-double-three-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\"\\"\\")","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\"\\"\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.multi.python","patterns":[{"include":"#double-three-regexp-expression"}]},"regexp-escape-catchall":{"match":"\\\\\\\\(.|\\\\n)","name":"constant.character.escape.regexp"},"regexp-escape-character":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|0[0-7]{1,2}|[0-7]{3})","name":"constant.character.escape.regexp"},"regexp-escape-sequence":{"patterns":[{"include":"#regexp-escape-special"},{"include":"#regexp-escape-character"},{"include":"#regexp-escape-unicode"},{"include":"#regexp-backreference-number"},{"include":"#regexp-escape-catchall"}]},"regexp-escape-special":{"match":"\\\\\\\\([AbBdDsSwWZ])","name":"support.other.escape.special.regexp"},"regexp-escape-unicode":{"match":"\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.unicode.regexp"},"regexp-flags":{"match":"\\\\(\\\\?[aiLmsux]+\\\\)","name":"storage.modifier.flag.regexp"},"regexp-quantifier":{"match":"\\\\{(\\\\d+|\\\\d+,(\\\\d+)?|,\\\\d+)\\\\}","name":"keyword.operator.quantifier.regexp"},"regexp-single-one-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\')","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\')|(?<!\\\\\\\\)(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.single.python","patterns":[{"include":"#single-one-regexp-expression"}]},"regexp-single-three-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\'\\\\'\\\\')","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\'\\\\'\\\\')","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.multi.python","patterns":[{"include":"#single-three-regexp-expression"}]},"return-annotation":{"begin":"(->)","beginCaptures":{"1":{"name":"punctuation.separator.annotation.result.python"}},"end":"(?=:)","patterns":[{"include":"#expression"}]},"round-braces":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.begin.python"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.end.python"}},"patterns":[{"include":"#expression"}]},"semicolon":{"patterns":[{"match":"\\\\;$","name":"invalid.deprecated.semicolon.python"}]},"single-one-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"single-one-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"single-one-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[[:alnum:]]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#single-one-regexp-character-set"},{"include":"#single-one-regexp-comments"},{"include":"#regexp-flags"},{"include":"#single-one-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#single-one-regexp-lookahead"},{"include":"#single-one-regexp-lookahead-negative"},{"include":"#single-one-regexp-lookbehind"},{"include":"#single-one-regexp-lookbehind-negative"},{"include":"#single-one-regexp-conditional"},{"include":"#single-one-regexp-parentheses-non-capturing"},{"include":"#single-one-regexp-parentheses"}]},"single-one-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[[:alnum:]]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-three-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"single-three-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"single-three-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[[:alnum:]]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#single-three-regexp-character-set"},{"include":"#single-three-regexp-comments"},{"include":"#regexp-flags"},{"include":"#single-three-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#single-three-regexp-lookahead"},{"include":"#single-three-regexp-lookahead-negative"},{"include":"#single-three-regexp-lookbehind"},{"include":"#single-three-regexp-lookbehind-negative"},{"include":"#single-three-regexp-conditional"},{"include":"#single-three-regexp-parentheses-non-capturing"},{"include":"#single-three-regexp-parentheses"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[[:alnum:]]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"special-names":{"match":"\\\\b(_*[[:upper:]][_\\\\d]*[[:upper:]])[[:upper:]\\\\d]*(_\\\\w*)?\\\\b","name":"constant.other.caps.python"},"special-variables":{"captures":{"1":{"name":"variable.language.special.self.python"},"2":{"name":"variable.language.special.cls.python"}},"match":"\\\\b(?<!\\\\.)(?:(self)|(cls))\\\\b"},"statement":{"patterns":[{"include":"#import"},{"include":"#class-declaration"},{"include":"#function-declaration"},{"include":"#generator"},{"include":"#statement-keyword"},{"include":"#assignment-operator"},{"include":"#decorator"},{"include":"#semicolon"}]},"statement-keyword":{"patterns":[{"match":"\\\\b((async\\\\s+)?\\\\s*(def|fn))\\\\b","name":"storage.type.function.python"},{"comment":"if \`as\` is eventually followed by \`:\` or line continuation\\nit's probably control flow like:\\n with foo as bar, \\\\\\n Foo as Bar:\\n try:\\n do_stuff()\\n except Exception as e:\\n pass\\n","match":"\\\\b(?<!\\\\.)as\\\\b(?=.*[:\\\\\\\\])","name":"keyword.control.flow.python"},{"comment":"other legal use of \`as\` is in an import","match":"\\\\b(?<!\\\\.)as\\\\b","name":"keyword.control.import.python"},{"match":"\\\\b(?<!\\\\.)(async|continue|del|assert|break|finally|for|from|elif|else|if|except|pass|raise|return|try|while|with)\\\\b","name":"keyword.control.flow.python"},{"match":"\\\\b(?<!\\\\.)(global|nonlocal)\\\\b","name":"storage.modifier.declaration.python"},{"match":"\\\\b(?<!\\\\.)(class|struct|trait)\\\\b","name":"storage.type.class.python"},{"captures":{"1":{"name":"keyword.control.flow.python"}},"match":"^\\\\s*(case|match)(?=\\\\s*([-+\\\\w\\\\d(\\\\[{'\\":#]|$))\\\\b"},{"captures":{"1":{"name":"storage.modifier.declaration.python"},"2":{"name":"variable.other.python"}},"match":"\\\\b(var|let|alias) \\\\s*([[:alpha:]_]\\\\w*)\\\\b"}]},"string":{"patterns":[{"include":"#string-quoted-multi-line"},{"include":"#string-quoted-single-line"},{"include":"#string-bin-quoted-multi-line"},{"include":"#string-bin-quoted-single-line"},{"include":"#string-raw-quoted-multi-line"},{"include":"#string-raw-quoted-single-line"},{"include":"#string-raw-bin-quoted-multi-line"},{"include":"#string-raw-bin-quoted-single-line"},{"include":"#fstring-fnorm-quoted-multi-line"},{"include":"#fstring-fnorm-quoted-single-line"},{"include":"#fstring-normf-quoted-multi-line"},{"include":"#fstring-normf-quoted-single-line"},{"include":"#fstring-raw-quoted-multi-line"},{"include":"#fstring-raw-quoted-single-line"}]},"string-bin-quoted-multi-line":{"begin":"(\\\\b[bB])('''|\\"\\"\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.binary.multi.python","patterns":[{"include":"#string-entity"}]},"string-bin-quoted-single-line":{"begin":"(\\\\b[bB])((['\\"]))","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.binary.single.python","patterns":[{"include":"#string-entity"}]},"string-brace-formatting":{"patterns":[{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"},"3":{"name":"storage.type.format.python"},"4":{"name":"storage.type.format.python"}},"match":"({{|}}|(?:{\\\\w*(\\\\.[[:alpha:]_]\\\\w*|\\\\[[^\\\\]'\\"]+\\\\])*(![rsa])?(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)?}))","name":"meta.format.brace.python"},{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"},"3":{"name":"storage.type.format.python"},"4":{"name":"storage.type.format.python"}},"match":"({\\\\w*(\\\\.[[:alpha:]_]\\\\w*|\\\\[[^\\\\]'\\"]+\\\\])*(![rsa])?(:)[^'\\"{}\\\\n]*(?:\\\\{[^'\\"}\\\\n]*?\\\\}[^'\\"{}\\\\n]*)*})","name":"meta.format.brace.python"}]},"string-consume-escape":{"match":"\\\\\\\\['\\"\\\\n\\\\\\\\]"},"string-entity":{"patterns":[{"include":"#escape-sequence"},{"include":"#string-line-continuation"},{"include":"#string-formatting"}]},"string-formatting":{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"match":"(%(\\\\([\\\\w\\\\s]*\\\\))?[-+#0 ]*(\\\\d+|\\\\*)?(\\\\.(\\\\d+|\\\\*))?([hlL])?[diouxXeEfFgGcrsab%])","name":"meta.format.percent.python"},"string-line-continuation":{"match":"\\\\\\\\$","name":"constant.language.python"},"string-mojo-code-block":{"begin":"^(\\\\s*\\\\\`{3,})(mojo)$","beginCaptures":{"1":{"name":"string.quoted.single.python"},"2":{"name":"string.quoted.single.python"}},"contentName":"source.mojo","end":"^(\\\\1)$","endCaptures":{"1":{"name":"string.quoted.single.python"}},"name":"meta.embedded.block.mojo","patterns":[{"include":"source.mojo"}]},"string-multi-bad-brace1-formatting-raw":{"begin":"(?=\\\\{%(.*?(?!'''|\\"\\"\\"))%\\\\})","comment":"template using {% ... %}","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#string-consume-escape"}]},"string-multi-bad-brace1-formatting-unicode":{"begin":"(?=\\\\{%(.*?(?!'''|\\"\\"\\"))%\\\\})","comment":"template using {% ... %}","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"}]},"string-multi-bad-brace2-formatting-raw":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!'''|\\"\\"\\")[^!:\\\\.\\\\[}\\\\w]).*?(?!'''|\\"\\"\\")\\\\})","comment":"odd format or format-like syntax","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"}]},"string-multi-bad-brace2-formatting-unicode":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!'''|\\"\\"\\")[^!:\\\\.\\\\[}\\\\w]).*?(?!'''|\\"\\"\\")\\\\})","comment":"odd format or format-like syntax","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#string-entity"}]},"string-quoted-multi-line":{"begin":"(?:\\\\b([rR])(?=[uU]))?([uU])?('''|\\"\\"\\")","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.multi.python","patterns":[{"include":"#string-multi-bad-brace1-formatting-unicode"},{"include":"#string-multi-bad-brace2-formatting-unicode"},{"include":"#string-unicode-guts"}]},"string-quoted-single-line":{"begin":"(?:\\\\b([rR])(?=[uU]))?([uU])?((['\\"]))","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\3)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.single.python","patterns":[{"include":"#string-single-bad-brace1-formatting-unicode"},{"include":"#string-single-bad-brace2-formatting-unicode"},{"include":"#string-unicode-guts"}]},"string-raw-bin-guts":{"patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"}]},"string-raw-bin-quoted-multi-line":{"begin":"(\\\\b(?:R[bB]|[bB]R))('''|\\"\\"\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.binary.multi.python","patterns":[{"include":"#string-raw-bin-guts"}]},"string-raw-bin-quoted-single-line":{"begin":"(\\\\b(?:R[bB]|[bB]R))((['\\"]))","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.binary.single.python","patterns":[{"include":"#string-raw-bin-guts"}]},"string-raw-guts":{"patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"},{"include":"#string-brace-formatting"}]},"string-raw-quoted-multi-line":{"begin":"\\\\b(([uU]R)|(R))('''|\\"\\"\\")","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\4)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.multi.python","patterns":[{"include":"#string-multi-bad-brace1-formatting-raw"},{"include":"#string-multi-bad-brace2-formatting-raw"},{"include":"#string-raw-guts"}]},"string-raw-quoted-single-line":{"begin":"\\\\b(([uU]R)|(R))((['\\"]))","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\4)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.single.python","patterns":[{"include":"#string-single-bad-brace1-formatting-raw"},{"include":"#string-single-bad-brace2-formatting-raw"},{"include":"#string-raw-guts"}]},"string-single-bad-brace1-formatting-raw":{"begin":"(?=\\\\{%(.*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n)))%\\\\})","comment":"template using {% ... %}","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#string-consume-escape"}]},"string-single-bad-brace1-formatting-unicode":{"begin":"(?=\\\\{%(.*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n)))%\\\\})","comment":"template using {% ... %}","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"}]},"string-single-bad-brace2-formatting-raw":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))[^!:\\\\.\\\\[}\\\\w]).*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))\\\\})","comment":"odd format or format-like syntax","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"}]},"string-single-bad-brace2-formatting-unicode":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))[^!:\\\\.\\\\[}\\\\w]).*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))\\\\})","comment":"odd format or format-like syntax","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#string-entity"}]},"string-unicode-guts":{"patterns":[{"include":"#string-mojo-code-block"},{"include":"#escape-sequence-unicode"},{"include":"#string-entity"},{"include":"#string-brace-formatting"}]}},"scopeName":"source.mojo"}`)),Ore=[Sre]});var _R={};x(_R,{default:()=>Lre});var Nre,Lre,BR=_(()=>{Nre=Object.freeze(JSON.parse('{"displayName":"Move","name":"move","patterns":[{"include":"#address"},{"include":"#comments"},{"include":"#module"},{"include":"#script"},{"include":"#annotation"},{"include":"#comments"},{"include":"#annotation"},{"include":"#entry"},{"include":"#public-scope"},{"include":"#public"},{"include":"#native"},{"include":"#import"},{"include":"#friend"},{"include":"#const"},{"include":"#struct"},{"include":"#has_ability"},{"include":"#enum"},{"include":"#macro"},{"include":"#fun"},{"include":"#spec"}],"repository":{"=== DEPRECATED_BELOW ===":{},"abilities":{"comment":"Ability","match":"\\\\b(store|key|drop|copy)\\\\b","name":"support.type.ability.move"},"address":{"begin":"\\\\b(address)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.type.address.keyword.move"}},"comment":"Address block","end":"(?<=})","name":"meta.address_block.move","patterns":[{"include":"#comments"},{"begin":"(?<=address)","comment":"Address value/const","end":"(?=[{])","name":"meta.address.definition.move","patterns":[{"include":"#comments"},{"include":"#address_literal"},{"comment":"Named Address","match":"\\\\b(\\\\w+)\\\\b","name":"entity.name.type.move"}]},{"include":"#module"}]},"annotation":{"begin":"#\\\\[","end":"\\\\]","name":"support.constant.annotation.move","patterns":[{"comment":"Annotation name","match":"\\\\b(\\\\w+)\\\\s*(?=\\\\=)","name":"meta.annotation.name.move"},{"begin":"=","comment":"Annotation value","end":"(?=[,\\\\]])","name":"meta.annotation.value.move","patterns":[{"include":"#literals"}]}]},"as":{"comment":"Keyword as (highlighted)","match":"\\\\b(as)\\\\b","name":"keyword.control.as.move"},"as-import":{"comment":"Keyword as in import statement; not highlighted","match":"\\\\b(as)\\\\b","name":"meta.import.as.move"},"block":{"begin":"{","comment":"Block expression or definition","end":"}","name":"meta.block.move","patterns":[{"include":"#expr"}]},"block-comments":{"patterns":[{"begin":"/\\\\*[\\\\*!](?![\\\\*/])","comment":"Block documentation comment","end":"\\\\*/","name":"comment.block.documentation.move"},{"begin":"/\\\\*","comment":"Block comment","end":"\\\\*/","name":"comment.block.move"}]},"capitalized":{"comment":"MyType - capitalized type name","match":"\\\\b([A-Z][a-zA-Z_0-9]*)\\\\b","name":"entity.name.type.use.move"},"comments":{"name":"meta.comments.move","patterns":[{"include":"#doc-comments"},{"include":"#line-comments"},{"include":"#block-comments"}]},"const":{"begin":"\\\\b(const)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.const.move"}},"end":";","name":"meta.const.move","patterns":[{"include":"#comments"},{"include":"#primitives"},{"include":"#literals"},{"include":"#types"},{"match":"\\\\b([A-Z][A-Z_0-9]+)\\\\b","name":"constant.other.move"},{"include":"#error_const"}]},"control":{"comment":"Control flow","match":"\\\\b(return|while|loop|if|else|break|continue|abort)\\\\b","name":"keyword.control.move"},"doc-comments":{"begin":"///","comment":"Documentation comment","end":"$","name":"comment.block.documentation.move","patterns":[{"captures":{"1":{"name":"markup.underline.link.move"}},"comment":"Escaped member / link","match":"`(\\\\w+)`"}]},"entry":{"comment":"entry","match":"\\\\b(entry)\\\\b","name":"storage.modifier.visibility.entry.move"},"enum":{"begin":"\\\\b(enum)\\\\b","beginCaptures":{"1":{"name":"keyword.control.enum.move"}},"comment":"Enum syntax","end":"(?<=})","name":"meta.enum.move","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#type_param"},{"comment":"Enum name (ident)","match":"\\\\b[A-Z][a-zA-Z_0-9]*\\\\b","name":"entity.name.type.enum.move"},{"include":"#has"},{"include":"#abilities"},{"begin":"{","end":"}","name":"meta.enum.definition.move","patterns":[{"include":"#comments"},{"match":"\\\\b([A-Z][A-Za-z_0-9]*)\\\\b(?=\\\\s*\\\\()","name":"entity.name.function.enum.move"},{"match":"\\\\b([A-Z][A-Za-z_0-9]*)\\\\b","name":"entity.name.type.enum.move"},{"begin":"\\\\(","end":"\\\\)","name":"meta.enum.tuple.move","patterns":[{"include":"#comments"},{"include":"#expr_generic"},{"include":"#capitalized"},{"include":"#types"}]},{"begin":"{","end":"}","name":"meta.enum.struct.move","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#expr_generic"},{"include":"#capitalized"},{"include":"#types"}]}]}]},"error_const":{"match":"\\\\b(E[A-Z][A-Za-z0-9_]*)\\\\b","name":"variable.other.error.const.move"},"escaped_identifier":{"begin":"`","comment":"Escaped variable","end":"`","name":"variable.language.escaped.move"},"expr":{"comment":"Aggregate Expression","name":"meta.expression.move","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#expr_generic"},{"include":"#packed_field"},{"include":"#import"},{"include":"#as"},{"include":"#mut"},{"include":"#let"},{"include":"#types"},{"include":"#literals"},{"include":"#control"},{"include":"#move_copy"},{"include":"#resource_methods"},{"include":"#self_access"},{"include":"#module_access"},{"include":"#label"},{"include":"#macro_call"},{"include":"#local_call"},{"include":"#method_call"},{"include":"#path_access"},{"include":"#match_expression"},{"match":"\\\\$(?=[a-z])","name":"keyword.operator.macro.dollar.move"},{"match":"(?<=[$])[a-z][A-Z_0-9a-z]*","name":"variable.other.meta.move"},{"comment":"ALL_CONST_CAPS","match":"\\\\b([A-Z][A-Z_]+)\\\\b","name":"constant.other.move"},{"include":"#error_const"},{"comment":"CustomType","match":"\\\\b([A-Z][a-zA-Z_0-9]*)\\\\b","name":"entity.name.type.move"},{"include":"#paren"},{"include":"#block"}]},"expr_generic":{"begin":"<(?=([\\\\sa-z_,0-9A-Z<>]+>))","comment":"< angle brackets >","end":">","name":"meta.expression.generic.type.move","patterns":[{"include":"#comments"},{"include":"#types"},{"include":"#capitalized"},{"include":"#expr_generic"}]},"friend":{"begin":"\\\\b(friend)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.type.move"}},"end":";","name":"meta.friend.move","patterns":[{"include":"#comments"},{"include":"#address_literal"},{"comment":"Name of the imported module","match":"\\\\b([a-zA-Z][A-Za-z_0-9]*)\\\\b","name":"entity.name.type.module.move"}]},"fun":{"patterns":[{"include":"#fun_signature"},{"include":"#block"}]},"fun_body":{"begin":"{","comment":"Function body","end":"(?<=})","name":"meta.fun_body.move","patterns":[{"include":"#expr"}]},"fun_call":{"begin":"\\\\b(\\\\w+)\\\\s*(?:<[\\\\w\\\\s,]+>)?\\\\s*[(]","beginCaptures":{"1":{"name":"entity.name.function.call.move"}},"comment":"Function call","end":"[)]","name":"meta.fun_call.move","patterns":[{"include":"#comments"},{"include":"#resource_methods"},{"include":"#self_access"},{"include":"#module_access"},{"include":"#move_copy"},{"include":"#literals"},{"include":"#fun_call"},{"include":"#block"},{"include":"#mut"},{"include":"#as"}]},"fun_signature":{"begin":"\\\\b(fun)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.fun.move"}},"comment":"Function signature","end":"(?=[;{])","name":"meta.fun_signature.move","patterns":[{"include":"#comments"},{"include":"#module_access"},{"include":"#capitalized"},{"include":"#types"},{"include":"#mut"},{"begin":"(?<=\\\\bfun)","comment":"Function name","end":"(?=[<(])","name":"meta.function_name.move","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"match":"\\\\b(\\\\w+)\\\\b","name":"entity.name.function.move"}]},{"include":"#type_param"},{"begin":"[(]","comment":"Parentheses","end":"[)]","name":"meta.parentheses.move","patterns":[{"include":"#comments"},{"include":"#self_access"},{"include":"#expr_generic"},{"include":"#escaped_identifier"},{"include":"#module_access"},{"include":"#capitalized"},{"include":"#types"},{"include":"#mut"}]},{"comment":"Keyword acquires","match":"\\\\b(acquires)\\\\b","name":"storage.modifier"}]},"has":{"comment":"Has Abilities","match":"\\\\b(has)\\\\b","name":"keyword.control.ability.has.move"},"has_ability":{"begin":"(?<=[})])\\\\s+(has)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.type.move"}},"end":";","name":"meta.has.ability.move","patterns":[{"include":"#comments"},{"include":"#abilities"}]},"ident":{"match":"\\\\b([a-zA-Z][A-Z_a-z0-9]*)\\\\b","name":"meta.identifier.move"},"import":{"begin":"\\\\b(use)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.type.move"}},"end":";","name":"meta.import.move","patterns":[{"include":"#comments"},{"include":"#use_fun"},{"include":"#address_literal"},{"include":"#as-import"},{"comment":"Uppercase entities","match":"\\\\b([A-Z]\\\\w*)\\\\b","name":"entity.name.type.move"},{"begin":"{","comment":"Module members","end":"}","patterns":[{"include":"#comments"},{"include":"#as-import"},{"comment":"Uppercase entities","match":"\\\\b([A-Z]\\\\w*)\\\\b","name":"entity.name.type.move"}]},{"comment":"Name of the imported module","match":"\\\\b(\\\\w+)\\\\b","name":"meta.entity.name.type.module.move"}]},"inline":{"comment":"inline","match":"\\\\b(inline)\\\\b","name":"storage.modifier.visibility.inline.move"},"label":{"comment":"Label","match":"\'[a-z][a-z_0-9]*","name":"string.quoted.single.label.move"},"let":{"comment":"Keyword let","match":"\\\\b(let)\\\\b","name":"keyword.control.move"},"line-comments":{"begin":"//","comment":"Single-line comment","end":"$","name":"comment.line.double-slash.move"},"literals":{"comment":"Literals supported in Move","name":"meta.literal.move","patterns":[{"comment":"base16 address literal","match":"@0x[A-F0-9a-f]+","name":"support.constant.address.base16.move"},{"comment":"named address literal @[ident]","match":"@[a-zA-Z][a-zA-Z_0-9]*","name":"support.constant.address.name.move"},{"comment":"Hex literal","match":"0x[_a-fA-F0-9]+(?:u(?:8|16|32|64|128|256))?","name":"constant.numeric.hex.move"},{"comment":"Numeric literal","match":"(?<!(?:\\\\w|(?:(?<!\\\\.)\\\\.)))[0-9][_0-9]*(?:\\\\.(?!\\\\.)(?:[0-9][_0-9]*)?)?(?:[eE][+\\\\-]?[_0-9]+)?(?:[u](?:8|16|32|64|128|256))?","name":"constant.numeric.move"},{"begin":"\\\\bb\\"","comment":"vector ascii bytestring literal","end":"\\"","name":"meta.vector.literal.ascii.move","patterns":[{"comment":"character escape","match":"\\\\\\\\.","name":"constant.character.escape.move"},{"comment":"Special symbol escape","match":"\\\\\\\\[nrt\\\\0\\"]","name":"constant.character.escape.move"},{"comment":"HEX Escape","match":"\\\\\\\\x[a-fA-F0-9][A-Fa-f0-9]","name":"constant.character.escape.hex.move"},{"comment":"ASCII Character","match":"[\\\\x00-\\\\x7F]","name":"string.quoted.double.raw.move"}]},{"begin":"x\\"","comment":"vector hex literal","end":"\\"","name":"meta.vector.literal.hex.move","patterns":[{"comment":"vector hex literal","match":"[A-Fa-f0-9]+","name":"constant.character.move"}]},{"comment":"bool literal","match":"\\\\b(?:true|false)\\\\b","name":"constant.language.boolean.move"},{"begin":"vector\\\\[","comment":"vector literal (macro?)","end":"\\\\]","name":"meta.vector.literal.macro.move","patterns":[{"include":"#expr"}]}]},"local_call":{"comment":"call to a local / imported fun","match":"\\\\b([a-z][_a-z0-9]*)(?=[<\\\\(])","name":"entity.name.function.call.local.move"},"macro":{"begin":"\\\\b(macro)\\\\b","beginCaptures":{"1":{"name":"keyword.control.macro.move"}},"comment":"macro fun [ident] {}","end":"(?<=})","name":"meta.macro.move","patterns":[{"include":"#comments"},{"include":"#fun"}]},"macro_call":{"captures":{"2":{"name":"support.function.macro.move"}},"comment":"Macro fun call","match":"(\\\\b|\\\\.)([a-z][A-Za-z0-9_]*)!","name":"meta.macro.call"},"match_expression":{"begin":"\\\\b(match)\\\\b","beginCaptures":{"1":{"name":"keyword.control.match.move"}},"comment":"enum pattern matching","end":"(?<=})","name":"meta.match.move","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#types"},{"begin":"{","comment":"Block expression or definition","end":"}","name":"meta.match.block.move","patterns":[{"comment":"arrow operator","match":"\\\\b(=>)\\\\b","name":"operator.match.move"},{"include":"#expr"}]},{"include":"#expr"}]},"method_call":{"captures":{"1":{"name":"entity.name.function.call.path.move"}},"comment":"<expr>.[ident]<>?() call","match":"\\\\.([a-z][_a-z0-9]*)(?=[<\\\\(])","name":"meta.path.call.move"},"module":{"begin":"\\\\b(module)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.type.move"}},"comment":"Module definition","end":"(?<=[;}])","name":"meta.module.move","patterns":[{"include":"#comments"},{"begin":"(?<=\\\\b(module)\\\\b)","comment":"Module name","end":"(?=[;{])","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"begin":"(?<=\\\\b(module))","comment":"Module namespace / address","end":"(?=[(::){])","name":"constant.other.move","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"}]},{"begin":"(?<=::)","comment":"Module name","end":"(?=[\\\\s;{])","name":"entity.name.type.move","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"}]}]},{"begin":"{","comment":"Module scope","end":"}","name":"meta.module_scope.move","patterns":[{"include":"#comments"},{"include":"#annotation"},{"include":"#entry"},{"include":"#public-scope"},{"include":"#public"},{"include":"#native"},{"include":"#import"},{"include":"#friend"},{"include":"#const"},{"include":"#struct"},{"include":"#has_ability"},{"include":"#enum"},{"include":"#macro"},{"include":"#fun"},{"include":"#spec"}]}]},"module_access":{"captures":{"1":{"name":"meta.entity.name.type.accessed.module.move"},"2":{"name":"entity.name.function.call.move"}},"comment":"Use of module type or method","match":"\\\\b(\\\\w+)::(\\\\w+)\\\\b","name":"meta.module_access.move"},"module_label":{"begin":"^\\\\s*(module)\\\\b","comment":"Module label, inline module definition","end":";\\\\s*$","name":"meta.module.label.move","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"begin":"(?<=\\\\bmodule\\\\b)","comment":"Module namespace / address","end":"(?=[(::){])","name":"constant.other.move"},{"begin":"(?<=::)","comment":"Module name","end":"(?=[\\\\s{])","name":"entity.name.type.move"}]},"move_copy":{"comment":"Keywords move and copy","match":"\\\\b(move|copy)\\\\b","name":"variable.language.move"},"mut":{"comment":"Mutable reference and let mut","match":"\\\\b(mut)\\\\b","name":"storage.modifier.mut.move"},"native":{"comment":"native","match":"\\\\b(native)\\\\b","name":"storage.modifier.visibility.native.move"},"packed_field":{"comment":"[ident]: ","match":"[a-z][a-z0-9_]+\\\\s*:\\\\s*(?=\\\\s)","name":"meta.struct.field.move"},"paren":{"begin":"\\\\(","end":"\\\\)","name":"meta.paren.move","patterns":[{"include":"#expr"}]},"path_access":{"comment":"<expr>.[ident] access","match":"\\\\.[a-z][_a-z0-9]*\\\\b","name":"meta.path.access.move"},"phantom":{"comment":"Keyword phantom inside type parameters","match":"\\\\b(phantom)\\\\b","name":"keyword.control.phantom.move"},"primitives":{"comment":"Primitive types","match":"\\\\b(u8|u16|u32|u64|u128|u256|address|bool|signer)\\\\b","name":"support.type.primitives.move"},"public":{"comment":"public","match":"\\\\b(public)\\\\b","name":"storage.modifier.visibility.public.move"},"public-scope":{"begin":"(?<=\\\\b(public))\\\\s*\\\\(","comment":"public (friend/script/package)","end":"\\\\)","name":"meta.public.scoped.move","patterns":[{"include":"#comments"},{"match":"\\\\b(friend|script|package)\\\\b","name":"keyword.control.public.scope.move"}]},"resource_methods":{"comment":"Methods to work with resource","match":"\\\\b(borrow_global|borrow_global_mut|exists|move_from|move_to_sender|move_to)\\\\b","name":"support.function.typed.move"},"script":{"begin":"\\\\b(script)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.script.move"}},"end":"(?<=})","name":"meta.script.move","patterns":[{"include":"#comments"},{"begin":"{","comment":"Script scope","end":"}","name":"meta.script_scope.move","patterns":[{"include":"#const"},{"include":"#comments"},{"include":"#import"},{"include":"#fun"}]}]},"self_access":{"captures":{"1":{"name":"variable.language.self.move"},"2":{"name":"entity.name.function.call.move"}},"comment":"Use of Self","match":"\\\\b(Self)::(\\\\w+)\\\\b","name":"meta.self_access.move"},"spec":{"begin":"\\\\b(spec)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.spec.move"}},"end":"(?<=[;}])","name":"meta.spec.move","patterns":[{"comment":"Spec target","match":"\\\\b(module|schema|struct|fun)","name":"storage.modifier.spec.target.move"},{"comment":"Spec define inline","match":"\\\\b(define)","name":"storage.modifier.spec.define.move"},{"comment":"Target name","match":"\\\\b(\\\\w+)\\\\b","name":"entity.name.function.move"},{"begin":"{","comment":"Spec block","end":"}","patterns":[{"include":"#comments"},{"include":"#spec_block"},{"include":"#spec_types"},{"include":"#spec_define"},{"include":"#spec_keywords"},{"include":"#control"},{"include":"#fun_call"},{"include":"#literals"},{"include":"#types"},{"include":"#let"}]}]},"spec_block":{"begin":"{","comment":"Spec block","end":"}","name":"meta.spec_block.move","patterns":[{"include":"#comments"},{"include":"#spec_block"},{"include":"#spec_types"},{"include":"#fun_call"},{"include":"#literals"},{"include":"#control"},{"include":"#types"},{"include":"#let"}]},"spec_define":{"begin":"\\\\b(define)\\\\b","beginCaptures":{"1":{"name":"keyword.control.move.spec"}},"comment":"Spec define keyword","end":"(?=[;{])","name":"meta.spec_define.move","patterns":[{"include":"#comments"},{"include":"#spec_types"},{"include":"#types"},{"begin":"(?<=\\\\bdefine)","comment":"Function name","end":"(?=[(])","patterns":[{"include":"#comments"},{"match":"\\\\b(\\\\w+)\\\\b","name":"entity.name.function.move"}]}]},"spec_keywords":{"match":"\\\\b(global|pack|unpack|pragma|native|include|ensures|requires|invariant|apply|aborts_if|modifies)\\\\b","name":"keyword.control.move.spec"},"spec_types":{"comment":"Spec-only types","match":"\\\\b(range|num|vector|bool|u8|u16|u32|u64|u128|u256|address)\\\\b","name":"support.type.vector.move"},"struct":{"begin":"\\\\b(struct)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.type.move"}},"end":"(?<=[};\\\\)])","name":"meta.struct.move","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#has"},{"include":"#abilities"},{"comment":"Struct name (ident)","match":"\\\\b[A-Z][a-zA-Z_0-9]*\\\\b","name":"entity.name.type.struct.move"},{"begin":"\\\\(","comment":"Positional fields","end":"\\\\)","name":"meta.struct.paren.move","patterns":[{"include":"#comments"},{"include":"#capitalized"},{"include":"#types"}]},{"include":"#type_param"},{"begin":"\\\\(","comment":"Simple struct","end":"(?<=[)])","name":"meta.struct.paren.move","patterns":[{"include":"#comments"},{"include":"#types"}]},{"begin":"{","comment":"Struct body","end":"}","name":"meta.struct.body.move","patterns":[{"include":"#comments"},{"include":"#self_access"},{"include":"#escaped_identifier"},{"include":"#module_access"},{"include":"#expr_generic"},{"include":"#capitalized"},{"include":"#types"}]},{"include":"#has_ability"}]},"struct_pack":{"begin":"(?<=[A-Za-z0-9_>])\\\\s*{","comment":"Struct { field: value... }; identified as generic / ident followed by curly\'s","end":"}","name":"meta.struct.pack.move","patterns":[{"include":"#comments"}]},"type_param":{"begin":"<","comment":"Generic type param","end":">","name":"meta.generic_param.move","patterns":[{"include":"#comments"},{"include":"#phantom"},{"include":"#capitalized"},{"include":"#module_access"},{"include":"#abilities"}]},"types":{"comment":"Built-in types + vector","name":"meta.types.move","patterns":[{"include":"#primitives"},{"include":"#vector"}]},"use_fun":{"begin":"\\\\b(fun)\\\\b","beginCaptures":{"1":{"name":"storage.modifier.fun.move"}},"comment":"use { fun } internals","end":"(?=;)","name":"meta.import.fun.move","patterns":[{"include":"#comments"},{"comment":"as keyword","match":"\\\\b(as)\\\\b","name":"keyword.control.as.move"},{"comment":"Self keyword","match":"\\\\b(Self)\\\\b","name":"variable.language.self.use.fun.move"},{"comment":"Function name","match":"\\\\b(_______[a-z][a-z_0-9]+)\\\\b","name":"entity.name.function.use.move"},{"include":"#types"},{"include":"#escaped_identifier"},{"include":"#capitalized"}]},"vector":{"comment":"vector type","match":"\\\\b(vector)\\\\b","name":"support.type.vector.move"}},"scopeName":"source.move"}')),Lre=[Nre]});var xR={};x(xR,{default:()=>Rre});var $re,Rre,vR=_(()=>{$re=Object.freeze(JSON.parse('{"displayName":"Narrat Language","name":"narrat","patterns":[{"include":"#comments"},{"include":"#expression"}],"repository":{"commands":{"patterns":[{"match":"\\\\b(set|var)\\\\b","name":"keyword.commands.variables.narrat"},{"match":"\\\\b(talk|think)\\\\b","name":"keyword.commands.text.narrat"},{"match":"\\\\b(jump|run|wait|return|save|save_prompt)","name":"keyword.commands.flow.narrat"},{"match":"\\\\b(log|clear_dialog)\\\\b","name":"keyword.commands.helpers.narrat"},{"match":"\\\\b(set_screen|empty_layer|set_button)","name":"keyword.commands.screens.narrat"},{"match":"\\\\b(play|pause|stop)\\\\b","name":"keyword.commands.audio.narrat"},{"match":"\\\\b(notify|enable_notifications|disable_notifications)\\\\b","name":"keyword.commands.notifications.narrat"},{"match":"\\\\b(set_stat|get_stat_value|add_stat)","name":"keyword.commands.stats.narrat"},{"match":"\\\\b(neg|abs|random|random_float|random_from_args|min|max|clamp|floor|round|ceil|sqrt|^)\\\\b","name":"keyword.commands.math.narrat"},{"match":"\\\\b(concat|join)\\\\b","name":"keyword.commands.string.narrat"},{"match":"\\\\b(text_field)\\\\b","name":"keyword.commands.text_field.narrat"},{"match":"\\\\b(add_level|set_level|add_xp|roll|get_level|get_xp)\\\\b","name":"keyword.commands.skills.narrat"},{"match":"\\\\b(add_item|remove_item|enable_interaction|disable_interaction|has_item?|item_amount?)","name":"keyword.commands.inventory.narrat"},{"match":"\\\\b(start_quest|start_objective|complete_objective|complete_quest|quest_started?|objective_started?|quest_completed?|objective_completed?)","name":"keyword.commands.quests.narrat"}]},"comments":{"patterns":[{"match":"\\\\/\\\\/.*$","name":"comment.line.narrat"}]},"expression":{"patterns":[{"include":"#keywords"},{"include":"#commands"},{"include":"#operators"},{"include":"#primitives"},{"include":"#strings"},{"include":"#paren-expression"}]},"interpolation":{"patterns":[{"match":"(\\\\w|\\\\.)+","name":"variable.interpolation.narrat"}]},"keywords":{"patterns":[{"match":"\\\\b(if|else|choice)\\\\b","name":"keyword.control.narrat"},{"match":"\\\\$[\\\\w|\\\\.]+\\\\b","name":"variable.value.narrat"},{"match":"^\\\\w+(?=(\\\\s|\\\\w)*:)","name":"entity.name.function.narrat"},{"match":"^\\\\w+(?!(\\\\s|\\\\w)*:)","name":"invalid.label.narrat"},{"match":"(?<=\\\\w)[^^](\\\\b\\\\w+\\\\b)(?=(\\\\s|\\\\w)*:)","name":"entity.other.attribute-name"}]},"operators":{"patterns":[{"match":"(&&|\\\\|\\\\||!=|==|>=|<=|<|>|!|\\\\?)\\\\s","name":"keyword.operator.logic.narrat"},{"match":"(\\\\+|-|\\\\*|\\\\/)\\\\s","name":"keyword.operator.arithmetic.narrat"}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.paren.open"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.paren.close"}},"name":"expression.group","patterns":[{"include":"#expression"}]},"primitives":{"patterns":[{"match":"\\\\b\\\\d+\\\\b","name":"constant.numeric.narrat"},{"match":"\\\\btrue\\\\b","name":"constant.language.true.narrat"},{"match":"\\\\bfalse\\\\b","name":"constant.language.false.narrat"},{"match":"\\\\bnull\\\\b","name":"constant.language.null.narrat"},{"match":"\\\\bundefined\\\\b","name":"constant.language.undefined.narrat"}]},"strings":{"begin":"\\"","end":"\\"","name":"string.quoted.double.narrat","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.narrat"},{"begin":"%{","beginCaptures":{"0":{"name":"punctuation.template.open"}},"end":"}","endCaptures":{"0":{"name":"punctuation.template.close.narrat"}},"name":"expression.template","patterns":[{"include":"#expression"},{"include":"#interpolation"}]}]}},"scopeName":"source.narrat","aliases":["nar"]}')),Rre=[$re]});var ER={};x(ER,{default:()=>Pre});var jre,Pre,QR=_(()=>{jre=Object.freeze(JSON.parse('{"displayName":"Nextflow","name":"nextflow","patterns":[{"include":"#nextflow"}],"repository":{"enum-def":{"begin":"^\\\\s*(enum)\\\\s+(\\\\w+)\\\\s*{","beginCaptures":{"1":{"name":"keyword.nextflow"},"2":{"name":"storage.type.groovy"}},"end":"}","patterns":[{"include":"source.nextflow-groovy#comments"},{"include":"#enum-values"}]},"enum-values":{"patterns":[{"begin":"(?<=;|^)\\\\s*\\\\b([A-Z0-9_]+)(?=\\\\s*(?:,|}|\\\\(|$))","beginCaptures":{"1":{"name":"constant.enum.name.groovy"}},"end":",|(?=})|^(?!\\\\s*\\\\w+\\\\s*(?:,|$))","patterns":[{"begin":"\\\\(","end":"\\\\)","name":"meta.enum.value.groovy","patterns":[{"match":",","name":"punctuation.definition.seperator.parameter.groovy"},{"include":"#groovy-code"}]}]}]},"function-body":{"patterns":[{"match":"\\\\s"},{"begin":"(?=(?:\\\\w|<)[^\\\\(]*\\\\s+(?:[\\\\w$]|<)+\\\\s*\\\\()","end":"(?=[\\\\w$]+\\\\s*\\\\()","name":"meta.method.return-type.java","patterns":[{"include":"source.nextflow-groovy#types"}]},{"begin":"([\\\\w$]+)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.nextflow"}},"end":"\\\\)","name":"meta.definition.method.signature.java","patterns":[{"begin":"(?=[^)])","end":"(?=\\\\))","name":"meta.method.parameters.groovy","patterns":[{"begin":"(?=[^,)])","end":"(?=,|\\\\))","name":"meta.method.parameter.groovy","patterns":[{"match":",","name":"punctuation.definition.separator.groovy"},{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.groovy"}},"end":"(?=,|\\\\))","name":"meta.parameter.default.groovy","patterns":[{"include":"source.nextflow-groovy#groovy-code"}]},{"include":"source.nextflow-groovy#parameters"}]}]}]},{"begin":"(?=<)","end":"(?=\\\\s)","name":"meta.method.paramerised-type.groovy","patterns":[{"begin":"<","end":">","name":"storage.type.parameters.groovy","patterns":[{"include":"source.nextflow-groovy#types"},{"match":",","name":"punctuation.definition.seperator.groovy"}]}]},{"begin":"{","end":"(?=})","name":"meta.method.body.java","patterns":[{"include":"source.nextflow-groovy#groovy-code"}]}]},"function-def":{"applyEndPatternLast":1,"begin":"(?:(?<=;|^|{)(?=\\\\s*(?:(?:def)|(?:(?:(?:boolean|byte|char|short|int|float|long|double)|(?:@?(?:[a-zA-Z]\\\\w*\\\\.)*[A-Z]+\\\\w*))[\\\\[\\\\]]*(?:<.*>)?)n)\\\\s+([^=]+\\\\s+)?\\\\w+\\\\s*\\\\())","end":"}|(?=[^{])","name":"meta.definition.method.groovy","patterns":[{"include":"#function-body"}]},"include-decl":{"patterns":[{"match":"^\\\\b(include)\\\\b","name":"keyword.nextflow"},{"match":"\\\\b(from)\\\\b","name":"keyword.nextflow"}]},"nextflow":{"patterns":[{"include":"#enum-def"},{"include":"#function-def"},{"include":"#process-def"},{"include":"#workflow-def"},{"include":"#output-def"},{"include":"#include-decl"},{"include":"source.nextflow-groovy"}]},"output-def":{"begin":"^\\\\s*(output)\\\\s*{","beginCaptures":{"1":{"name":"keyword.nextflow"}},"end":"}","name":"output.nextflow","patterns":[{"include":"source.nextflow-groovy#groovy"}]},"process-body":{"patterns":[{"match":"(?:input|output|when|script|shell|exec):","name":"constant.block.nextflow"},{"match":"\\\\b(val|env|file|path|stdin|stdout|tuple)(\\\\(|\\\\s)","name":"entity.name.function.nextflow"},{"include":"source.nextflow-groovy#groovy"}]},"process-def":{"begin":"^\\\\s*(process)\\\\s+(\\\\w+)\\\\s*{","beginCaptures":{"1":{"name":"keyword.nextflow"},"2":{"name":"entity.name.function.nextflow"}},"end":"}","name":"process.nextflow","patterns":[{"include":"#process-body"}]},"workflow-body":{"patterns":[{"match":"(?:take|main|emit|publish):","name":"constant.block.nextflow"},{"include":"source.nextflow-groovy#groovy"}]},"workflow-def":{"begin":"^\\\\s*(workflow)(?:\\\\s+(\\\\w+))?\\\\s*{","beginCaptures":{"1":{"name":"keyword.nextflow"},"2":{"name":"entity.name.function.nextflow"}},"end":"}","name":"workflow.nextflow","patterns":[{"include":"#workflow-body"}]}},"scopeName":"source.nextflow","aliases":["nf"]}')),Pre=[jre]});var IR={};x(IR,{default:()=>Tre});var Mre,Tre,DR=_(()=>{Og();Mre=Object.freeze(JSON.parse(`{"displayName":"Nginx","fileTypes":["conf.erb","conf","ngx","nginx.conf","mime.types","fastcgi_params","scgi_params","uwsgi_params"],"foldingStartMarker":"\\\\{\\\\s*$","foldingStopMarker":"^\\\\s*\\\\}","name":"nginx","patterns":[{"match":"\\\\#.*","name":"comment.line.number-sign"},{"begin":"\\\\b((?:content|rewrite|access|init_worker|init|set|log|balancer|ssl_(?:client_hello|session_fetch|certificate))_by_lua(?:_block)?)\\\\s*\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"}},"contentName":"meta.embedded.block.lua","end":"\\\\}","name":"meta.context.lua.nginx","patterns":[{"include":"source.lua"}]},{"begin":"\\\\b((?:content|rewrite|access|init_worker|init|set|log|balancer|ssl_(?:client_hello|session_fetch|certificate))_by_lua)\\\\s*'","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"}},"contentName":"meta.embedded.block.lua","end":"'","name":"meta.context.lua.nginx","patterns":[{"include":"source.lua"}]},{"begin":"\\\\b(events) +\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"}},"end":"\\\\}","name":"meta.context.events.nginx","patterns":[{"include":"$self"}]},{"begin":"\\\\b(http) +\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"}},"end":"\\\\}","name":"meta.context.http.nginx","patterns":[{"include":"$self"}]},{"begin":"\\\\b(mail) +\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"}},"end":"\\\\}","name":"meta.context.mail.nginx","patterns":[{"include":"$self"}]},{"begin":"\\\\b(stream) +\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"}},"end":"\\\\}","name":"meta.context.stream.nginx","patterns":[{"include":"$self"}]},{"begin":"\\\\b(server) +\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"}},"end":"\\\\}","name":"meta.context.server.nginx","patterns":[{"include":"$self"}]},{"begin":"\\\\b(location) +([\\\\^]?~[\\\\*]?|=) +(.*?)\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"},"2":{"name":"keyword.operator.nginx"},"3":{"name":"string.regexp.nginx"}},"end":"\\\\}","name":"meta.context.location.nginx","patterns":[{"include":"$self"}]},{"begin":"\\\\b(location) +(.*?)\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"},"2":{"name":"entity.name.context.location.nginx"}},"end":"\\\\}","name":"meta.context.location.nginx","patterns":[{"include":"$self"}]},{"begin":"\\\\b(limit_except) +\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"}},"end":"\\\\}","name":"meta.context.limit_except.nginx","patterns":[{"include":"$self"}]},{"begin":"\\\\b(if) +\\\\(","beginCaptures":{"1":{"name":"keyword.control.nginx"}},"end":"\\\\)","name":"meta.context.if.nginx","patterns":[{"include":"#if_condition"}]},{"begin":"\\\\b(upstream) +(.*?)\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"},"2":{"name":"entity.name.context.location.nginx"}},"end":"\\\\}","name":"meta.context.upstream.nginx","patterns":[{"include":"$self"}]},{"begin":"\\\\b(types) +\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"}},"end":"\\\\}","name":"meta.context.types.nginx","patterns":[{"include":"$self"}]},{"begin":"\\\\b(map) +(\\\\$)([A-Za-z0-9\\\\_]+) +(\\\\$)([A-Za-z0-9\\\\_]+) *\\\\{","beginCaptures":{"1":{"name":"storage.type.directive.context.nginx"},"2":{"name":"punctuation.definition.variable.nginx"},"3":{"name":"variable.parameter.nginx"},"4":{"name":"punctuation.definition.variable.nginx"},"5":{"name":"variable.other.nginx"}},"end":"\\\\}","name":"meta.context.map.nginx","patterns":[{"include":"#values"},{"match":";","name":"punctuation.terminator.nginx"},{"match":"\\\\#.*","name":"comment.line.number-sign"}]},{"begin":"\\\\{","end":"\\\\}","name":"meta.block.nginx","patterns":[{"include":"$self"}]},{"begin":"\\\\b(return)\\\\b","beginCaptures":{"1":{"name":"keyword.control.nginx"}},"end":";","patterns":[{"include":"#values"}]},{"begin":"\\\\b(rewrite)\\\\s+","beginCaptures":{"1":{"name":"keyword.directive.nginx"}},"end":"(last|break|redirect|permanent)?(;)","endCaptures":{"1":{"name":"keyword.other.nginx"},"2":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"\\\\b(server)\\\\s+","beginCaptures":{"1":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"1":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#server_parameters"}]},{"begin":"\\\\b(internal|empty_gif|f4f|flv|hls|mp4|break|status|stub_status|ip_hash|ntlm|least_conn|upstream_conf|least_conn|zone_sync)\\\\b","beginCaptures":{"1":{"name":"keyword.directive.nginx"}},"end":"(;|$)","endCaptures":{"1":{"name":"punctuation.terminator.nginx"}}},{"begin":"([\\"'\\\\s]|^)(accept_)(mutex|mutex_delay)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(debug_)(connection|points)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(error_)(log|page)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(ssl_)(engine|buffer_size|certificate|certificate_key|ciphers|client_certificate|conf_command|crl|dhparam|early_data|ecdh_curve|ocsp|ocsp_cache|ocsp_responder|password_file|prefer_server_ciphers|protocols|reject_handshake|session_cache|session_ticket_key|session_tickets|session_timeout|stapling|stapling_file|stapling_responder|stapling_verify|trusted_certificate|verify_client|verify_depth|alpn|handshake_timeout|preread)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(worker_)(aio_requests|connections|cpu_affinity|priority|processes|rlimit_core|rlimit_nofile|shutdown_timeout)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(auth_)(delay|basic|basic_user_file|jwt|jwt_claim_set|jwt_header_set|jwt_key_cache|jwt_key_file|jwt_key_request|jwt_leeway|jwt_type|jwt_require|request|request_set|http|http_header|http_pass_client_cert|http_timeout)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(client_)(body_buffer_size|body_in_file_only|body_in_single_buffer|body_temp_path|body_timeout|header_buffer_size|header_timeout|max_body_size)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(keepalive_)(disable|requests|time|timeout)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(limit_)(rate|rate_after|conn|conn_dry_run|conn_log_level|conn_status|conn_zone|zone|req|req_dry_run|req_log_level|req_status|req_zone)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(lingering_)(close|time|timeout)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(log_)(not_found|subrequest|format)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(max_)(ranges|errors)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(msie_)(padding|refresh)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(open_)(file_cache|file_cache_errors|file_cache_min_uses|file_cache_valid|log_file_cache)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(send_)(lowat|timeout)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(server_)(name|name_in_redirect|names_hash_bucket_size|names_hash_max_size|tokens)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(tcp_)(nodelay|nopush)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(types_)(hash_bucket_size|hash_max_size)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(variables_)(hash_bucket_size|hash_max_size)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(add_)(before_body|after_body|header|trailer)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(status_)(zone|format)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(autoindex_)(exact_size|format|localtime)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(ancient_)(browser|browser_value)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(modern_)(browser|browser_value)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(charset_)(map|types)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(dav_)(access|methods)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(fastcgi_)(bind|buffer_size|buffering|buffers|busy_buffers_size|cache|cache_background_update|cache_bypass|cache_key|cache_lock|cache_lock_age|cache_lock_timeout|cache_max_range_offset|cache_methods|cache_min_uses|cache_path|cache_purge|cache_revalidate|cache_use_stale|cache_valid|catch_stderr|connect_timeout|force_ranges|hide_header|ignore_client_abort|ignore_headers|index|intercept_errors|keep_conn|limit_rate|max_temp_file_size|next_upstream|next_upstream_timeout|next_upstream_tries|no_cache|param|pass|pass_header|pass_request_body|pass_request_headers|read_timeout|request_buffering|send_lowat|send_timeout|socket_keepalive|split_path_info|store|store_access|temp_file_write_size|temp_path)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(geoip_)(country|city|org|proxy|proxy_recursive)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(grpc_)(bind|buffer_size|connect_timeout|hide_header|ignore_headers|intercept_errors|next_upstream|next_upstream_timeout|next_upstream_tries|pass|pass_header|read_timeout|send_timeout|set_header|socket_keepalive|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_conf_command|ssl_crl|ssl_name|ssl_password_file|ssl_protocols|ssl_server_name|ssl_session_reuse|ssl_trusted_certificate|ssl_verify|ssl_verify_depth)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(gzip_)(buffers|comp_level|disable|http_version|min_length|proxied|types|vary|static)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(hls_)(buffers|forward_args|fragment|mp4_buffer_size|mp4_max_buffer_size)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(image_)(filter|filter_buffer|filter_interlace|filter_jpeg_quality|filter_sharpen|filter_transparency|filter_webp_quality)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(map_)(hash_bucket_size|hash_max_size)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(memcached_)(bind|buffer_size|connect_timeout|gzip_flag|next_upstream|next_upstream_timeout|next_upstream_tries|pass|read_timeout|send_timeout|socket_keepalive)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(mp4_)(buffer_size|max_buffer_size|limit_rate|limit_rate_after|start_key_frame)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(perl_)(modules|require|set)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(proxy_)(bind|buffer_size|buffering|buffers|busy_buffers_size|cache|cache_background_update|cache_bypass|cache_convert_head|cache_key|cache_lock|cache_lock_age|cache_lock_timeout|cache_max_range_offset|cache_methods|cache_min_uses|cache_path|cache_purge|cache_revalidate|cache_use_stale|cache_valid|connect_timeout|cookie_domain|cookie_flags|cookie_path|force_ranges|headers_hash_bucket_size|headers_hash_max_size|hide_header|http_version|ignore_client_abort|ignore_headers|intercept_errors|limit_rate|max_temp_file_size|method|next_upstream|next_upstream_timeout|next_upstream_tries|no_cache|pass|pass_header|pass_request_body|pass_request_headers|read_timeout|redirect|request_buffering|send_lowat|send_timeout|set_body|set_header|socket_keepalive|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_conf_command|ssl_crl|ssl_name|ssl_password_file|ssl_protocols|ssl_server_name|ssl_session_reuse|ssl_trusted_certificate|ssl_verify|ssl_verify_depth|store|store_access|temp_file_write_size|temp_path|buffer|pass_error_message|protocol|smtp_auth|timeout|protocol_timeout|download_rate|half_close|requests|responses|session_drop|ssl|upload_rate)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(real_)(ip_header|ip_recursive)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(referer_)(hash_bucket_size|hash_max_size)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(scgi_)(bind|buffer_size|buffering|buffers|busy_buffers_size|cache|cache_background_update|cache_bypass|cache_key|cache_lock|cache_lock_age|cache_lock_timeout|cache_max_range_offset|cache_methods|cache_min_uses|cache_path|cache_purge|cache_revalidate|cache_use_stale|cache_valid|connect_timeout|force_ranges|hide_header|ignore_client_abort|ignore_headers|intercept_errors|limit_rate|max_temp_file_size|next_upstream|next_upstream_timeout|next_upstream_tries|no_cache|param|pass|pass_header|pass_request_body|pass_request_headers|read_timeout|request_buffering|send_timeout|socket_keepalive|store|store_access|temp_file_write_size|temp_path)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(secure_)(link|link_md5|link_secret)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(session_)(log|log_format|log_zone)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(ssi_)(last_modified|min_file_chunk|silent_errors|types|value_length)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(sub_)(filter|filter_last_modified|filter_once|filter_types)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(health_)(check|check_timeout)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(userid_)(domain|expires|flags|mark|name|p3p|path|service)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(uwsgi_)(bind|buffer_size|buffering|buffers|busy_buffers_size|cache|cache_background_update|cache_bypass|cache_key|cache_lock|cache_lock_age|cache_lock_timeout|cache_max_range_offset|cache_methods|cache_min_uses|cache_path|cache_purge|cache_revalidate|cache_use_stale|cache_valid|connect_timeout|force_ranges|hide_header|ignore_client_abort|ignore_headers|intercept_errors|limit_rate|max_temp_file_size|modifier1|modifier2|next_upstream|next_upstream_timeout|next_upstream_tries|no_cache|param|pass|pass_header|pass_request_body|pass_request_headers|read_timeout|request_buffering|send_timeout|socket_keepalive|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_conf_command|ssl_crl|ssl_name|ssl_password_file|ssl_protocols|ssl_server_name|ssl_session_reuse|ssl_trusted_certificate|ssl_verify|ssl_verify_depth|store|store_access|temp_file_write_size|temp_path)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(http2_)(body_preread_size|chunk_size|idle_timeout|max_concurrent_pushes|max_concurrent_streams|max_field_size|max_header_size|max_requests|push|push_preload|recv_buffer_size|recv_timeout)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(http3_)(hq|max_concurrent_streams|stream_buffer_size)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(quic_)(active_connection_id_limit|bpf|gso|host_key|retry)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(xslt_)(last_modified|param|string_param|stylesheet|types)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(imap_)(auth|capabilities|client_buffer)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(pop3_)(auth|capabilities)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(smtp_)(auth|capabilities|client_buffer|greeting_delay)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(preread_)(buffer_size|timeout)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(mqtt_)(preread|buffers|rewrite_buffer_size|set_connect)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(zone_)(sync_buffers|sync_connect_retry_interval|sync_connect_timeout|sync_interval|sync_recv_buffer_size|sync_server|sync_ssl|sync_ssl_certificate|sync_ssl_certificate_key|sync_ssl_ciphers|sync_ssl_conf_command|sync_ssl_crl|sync_ssl_name|sync_ssl_password_file|sync_ssl_protocols|sync_ssl_server_name|sync_ssl_trusted_certificate|sync_ssl_verify|sync_ssl_verify_depth|sync_timeout)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(otel_)(exporter|service_name|trace|trace_context|span_name|span_attr)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(js_)(body_filter|content|fetch_buffer_size|fetch_ciphers|fetch_max_response_buffer_size|fetch_protocols|fetch_timeout|fetch_trusted_certificate|fetch_verify|fetch_verify_depth|header_filter|import|include|path|periodic|preload_object|set|shared_dict_zone|var|access|filter|preread)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"},"4":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"([\\"'\\\\s]|^)(daemon|env|include|pid|use|user|aio|alias|directio|etag|listen|resolver|root|satisfy|sendfile|allow|deny|api|autoindex|charset|geo|gunzip|gzip|expires|index|keyval|mirror|perl|set|slice|ssi|ssl|zone|state|hash|keepalive|queue|random|sticky|match|userid|http2|http3|protocol|timeout|xclient|starttls|mqtt|load_module|lock_file|master_process|multi_accept|pcre_jit|thread_pool|timer_resolution|working_directory|absolute_redirect|aio_write|chunked_transfer_encoding|connection_pool_size|default_type|directio_alignment|disable_symlinks|if_modified_since|ignore_invalid_headers|large_client_header_buffers|merge_slashes|output_buffers|port_in_redirect|postpone_output|read_ahead|recursive_error_pages|request_pool_size|reset_timedout_connection|resolver_timeout|sendfile_max_chunk|subrequest_output_buffer_size|try_files|underscores_in_headers|addition_types|override_charset|source_charset|create_full_put_path|min_delete_depth|f4f_buffer_size|gunzip_buffers|internal_redirect|keyval_zone|access_log|mirror_request_body|random_index|set_real_ip_from|valid_referers|rewrite_log|uninitialized_variable_warn|split_clients|least_time|sticky_cookie_insert|xml_entities|google_perftools_profiles)([\\"'\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.directive.nginx"},"2":{"name":"keyword.directive.nginx"},"3":{"name":"keyword.directive.nginx"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"\\\\b([a-zA-Z0-9\\\\_]+)\\\\s+","beginCaptures":{"1":{"name":"keyword.directive.unknown.nginx"}},"end":"(;|$)","endCaptures":{"1":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]},{"begin":"\\\\b([a-z]+\\\\/[A-Za-z0-9\\\\-\\\\.\\\\+]+)\\\\b","beginCaptures":{"1":{"name":"constant.other.mediatype.nginx"}},"end":"(;)","endCaptures":{"1":{"name":"punctuation.terminator.nginx"}},"patterns":[{"include":"#values"}]}],"repository":{"if_condition":{"patterns":[{"include":"#variables"},{"match":"\\\\!?\\\\~\\\\*?\\\\s","name":"keyword.operator.nginx"},{"match":"\\\\!?\\\\-[fdex]\\\\s","name":"keyword.operator.nginx"},{"match":"\\\\!?=[^=]","name":"keyword.operator.nginx"},{"include":"#regexp_and_string"}]},"regexp_and_string":{"patterns":[{"match":"\\\\^.*?\\\\$","name":"string.regexp.nginx"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.nginx","patterns":[{"match":"\\\\\\\\[\\"'nt\\\\\\\\]","name":"constant.character.escape.nginx"},{"include":"#variables"}]},{"begin":"'","end":"'","name":"string.quoted.single.nginx","patterns":[{"match":"\\\\\\\\[\\"'nt\\\\\\\\]","name":"constant.character.escape.nginx"},{"include":"#variables"}]}]},"server_parameters":{"patterns":[{"captures":{"1":{"name":"variable.parameter.nginx"},"2":{"name":"keyword.operator.nginx"},"3":{"name":"constant.numeric.nginx"}},"match":"(?:^|\\\\s)(weight|max_conn|max_fails|fail_timeout|slow_start)(=)(\\\\d[\\\\d\\\\.]*[bBkKmMgGtTsShHdD]?)(?:\\\\s|;|$)"},{"include":"#values"}]},"values":{"patterns":[{"include":"#variables"},{"match":"\\\\#.*","name":"comment.line.number-sign"},{"captures":{"1":{"name":"constant.numeric.nginx"}},"match":"(?<=\\\\G|\\\\s)(=?[0-9][0-9\\\\.]*[bBkKmMgGtTsShHdD]?)(?=[\\\\t ;])"},{"match":"(?<=\\\\G|\\\\s)(on|off|true|false)(?=[\\\\t ;])","name":"constant.language.nginx"},{"match":"(?<=\\\\G|\\\\s)(kqueue|rtsig|epoll|\\\\/dev\\\\/poll|select|poll|eventport|max|all|default_server|default|main|crit|error|debug|warn|notice|last)(?=[\\\\t ;])","name":"constant.language.nginx"},{"match":"\\\\\\\\.*\\\\ |\\\\~\\\\*|\\\\~|\\\\!\\\\~\\\\*|\\\\!\\\\~","name":"keyword.operator.nginx"},{"include":"#regexp_and_string"}]},"variables":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.nginx"},"2":{"name":"variable.other.nginx"}},"match":"(\\\\$)([A-Za-z0-9\\\\_]+)\\\\b"},{"captures":{"1":{"name":"punctuation.definition.variable.nginx"},"2":{"name":"variable.other.nginx"},"3":{"name":"punctuation.definition.variable.nginx"}},"match":"(\\\\$\\\\{)([A-Za-z0-9\\\\_]+)(\\\\})"}]}},"scopeName":"source.nginx","embeddedLangs":["lua"]}`)),Tre=[...ed,Mre]});var FR={};x(FR,{default:()=>Gre});var qre,Gre,SR=_(()=>{Uo();Ye();Ja();Qe();rt();Ho();nd();qre=Object.freeze(JSON.parse(`{"displayName":"Nim","fileTypes":["nim"],"name":"nim","patterns":[{"begin":"[ \\\\t]*##\\\\[","contentName":"comment.block.doc-comment.content.nim","end":"\\\\]##","name":"comment.block.doc-comment.nim","patterns":[{"include":"#multilinedoccomment","name":"comment.block.doc-comment.nested.nim"}]},{"begin":"[ \\\\t]*#\\\\[","contentName":"comment.block.content.nim","end":"\\\\]#","name":"comment.block.nim","patterns":[{"include":"#multilinecomment","name":"comment.block.nested.nim"}]},{"begin":"(^[ \\\\t]+)?(?=##)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.nim"}},"end":"(?!\\\\G)","patterns":[{"begin":"##","beginCaptures":{"0":{"name":"punctuation.definition.comment.nim"}},"end":"\\\\n","name":"comment.line.number-sign.doc-comment.nim"}]},{"begin":"(^[ \\\\t]+)?(?=#[^\\\\[])","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.nim"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.nim"}},"end":"\\\\n","name":"comment.line.number-sign.nim"}]},{"comment":"A nim procedure or method","name":"meta.proc.nim","patterns":[{"begin":"\\\\b(proc|method|template|macro|iterator|converter|func)\\\\s+\\\\\`?([^\\\\:\\\\{\\\\s\\\\\`\\\\*\\\\(]*)\\\\\`?(\\\\s*\\\\*)?\\\\s*(?=\\\\(|\\\\=|:|\\\\[|\\\\n|\\\\{)","captures":{"1":{"name":"keyword.other"},"2":{"name":"entity.name.function.nim"},"3":{"name":"keyword.control.export"}},"end":"\\\\)","patterns":[{"include":"source.nim"}]}]},{"begin":"discard \\"\\"\\"","comment":"A discarded triple string literal comment","end":"\\"\\"\\"(?!\\")","name":"comment.line.discarded.nim"},{"include":"#float_literal"},{"include":"#integer_literal"},{"comment":"Operator as function name","match":"(?<=\\\\\`)[^\\\\\` ]+(?=\\\\\`)","name":"entity.name.function.nim"},{"captures":{"1":{"name":"keyword.control.export"}},"comment":"Export qualifier.","match":"\\\\b\\\\s*(\\\\*)(?:\\\\s*(?=[,:])|\\\\s+(?=[=]))"},{"captures":{"1":{"name":"support.type.nim"},"2":{"name":"keyword.control.export"}},"comment":"Export qualifier following a type def.","match":"\\\\b([A-Z]\\\\w+)(\\\\*)"},{"include":"#string_literal"},{"comment":"Language Constants.","match":"\\\\b(true|false|Inf|NegInf|NaN|nil)\\\\b","name":"constant.language.nim"},{"comment":"Keywords that affect program control flow or scope.","match":"\\\\b(block|break|case|continue|do|elif|else|end|except|finally|for|if|raise|return|try|when|while|yield)\\\\b","name":"keyword.control.nim"},{"comment":"Keyword boolean operators for expressions.","match":"(\\\\b(and|in|is|isnot|not|notin|or|xor)\\\\b)","name":"keyword.boolean.nim"},{"comment":"Generic operators for expressions.","match":"(=|\\\\+|-|\\\\*|/|<|>|@|\\\\$|~|&|%|!|\\\\?|\\\\^|\\\\.|:|\\\\\\\\)+","name":"keyword.operator.nim"},{"comment":"Other keywords.","match":"(\\\\b(addr|as|asm|atomic|bind|cast|const|converter|concept|defer|discard|distinct|div|enum|export|from|import|include|let|mod|mixin|object|of|ptr|ref|shl|shr|static|type|using|var|tuple|iterator|macro|func|method|proc|template)\\\\b)","name":"keyword.other.nim"},{"comment":"Invalid and unused keywords.","match":"(\\\\b(generic|interface|lambda|out|shared)\\\\b)","name":"invalid.illegal.invalid-keyword.nim"},{"comment":"Common functions","match":"\\\\b(new|await|assert|echo|defined|declared|newException|countup|countdown|high|low)\\\\b","name":"keyword.other.common.function.nim"},{"comment":"Built-in, concrete types.","match":"\\\\b(((uint|int)(8|16|32|64)?)|float(32|64)?|bool|string|auto|cstring|char|byte|tobject|typedesc|stmt|expr|any|untyped|typed)\\\\b","name":"storage.type.concrete.nim"},{"comment":"Built-in, generic types.","match":"\\\\b(range|array|seq|set|pointer)\\\\b","name":"storage.type.generic.nim"},{"comment":"Special types.","match":"\\\\b(openarray|varargs|void)\\\\b","name":"storage.type.generic.nim"},{"comment":"Other constants.","match":"\\\\b[A-Z][A-Z0-9_]+\\\\b","name":"support.constant.nim"},{"comment":"Other types.","match":"\\\\b[A-Z]\\\\w+\\\\b","name":"support.type.nim"},{"comment":"Function call.","match":"\\\\b\\\\w+\\\\b(?=(\\\\[([a-zA-Z0-9_,]|\\\\s)+\\\\])?\\\\()","name":"support.function.any-method.nim"},{"comment":"Function call (no parenthesis).","match":"(?!(openarray|varargs|void|range|array|seq|set|pointer|new|await|assert|echo|defined|declared|newException|countup|countdown|high|low|((uint|int)(8|16|32|64)?)|float(32|64)?|bool|string|auto|cstring|char|byte|tobject|typedesc|stmt|expr|any|untyped|typed|addr|as|asm|atomic|bind|cast|const|converter|concept|defer|discard|distinct|div|enum|export|from|import|include|let|mod|mixin|object|of|ptr|ref|shl|shr|static|type|using|var|tuple|iterator|macro|func|method|proc|template|and|in|is|isnot|not|notin|or|xor|proc|method|template|macro|iterator|converter|func|true|false|Inf|NegInf|NaN|nil|block|break|case|continue|do|elif|else|end|except|finally|for|if|raise|return|try|when|while|yield)\\\\b)\\\\w+\\\\s+(?!(and|in|is|isnot|not|notin|or|xor|[^a-zA-Z0-9_\\"'\`(-+]+)\\\\b)(?=[a-zA-Z0-9_\\"'\`(-+])","name":"support.function.any-method.nim"},{"begin":"(^\\\\s*)?(?=\\\\{\\\\.emit: ?\\"\\"\\")","beginCaptures":{"0":{"name":"punctuation.whitespace.embedded.leading.nim"}},"end":"(?!\\\\G)(\\\\s*$\\\\n?)?","endCaptures":{"0":{"name":"punctuation.whitespace.embedded.trailing.nim"}},"patterns":[{"begin":"\\\\{\\\\.(emit:) ?(\\"\\"\\")","captures":{"1":{"name":"keyword.other.nim"},"2":{"name":"punctuation.section.embedded.begin.nim"}},"contentName":"source.c","end":"(\\")\\"\\"(?!\\")(\\\\.{0,1}\\\\})?","endCaptures":{"0":{"name":"punctuation.section.embedded.end.nim"},"1":{"name":"source.c"}},"name":"meta.embedded.block.c","patterns":[{"begin":"\\\\\`","end":"\\\\\`","name":"keyword.operator.nim"},{"include":"source.c"}]}]},{"begin":"\\\\{\\\\.","beginCaptures":{"0":{"name":"punctuation.pragma.start.nim"}},"end":"\\\\.?\\\\}","endCaptures":{"0":{"name":"punctuation.pragma.end.nim"}},"patterns":[{"begin":"\\\\b([[:alpha:]]\\\\w*)(?:\\\\s|\\\\s*:)","beginCaptures":{"1":{"name":"meta.preprocessor.pragma.nim"}},"end":"(?=\\\\.?\\\\}|,)","patterns":[{"include":"source.nim"}]},{"begin":"\\\\b([[:alpha:]]\\\\w*)\\\\(","beginCaptures":{"1":{"name":"meta.preprocessor.pragma.nim"}},"end":"\\\\)","patterns":[{"include":"source.nim"}]},{"captures":{"1":{"name":"meta.preprocessor.pragma.nim"}},"match":"\\\\b([[:alpha:]]\\\\w*)(?=\\\\.?\\\\}|,)"},{"begin":"\\\\b([[:alpha:]]\\\\w*)(\\"\\"\\")","beginCaptures":{"1":{"name":"meta.preprocessor.pragma.nim"},"2":{"name":"punctuation.definition.string.begin.nim"}},"end":"\\"\\"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.triple.raw.nim"},{"begin":"\\\\b([[:alpha:]]\\\\w*)(\\")","beginCaptures":{"1":{"name":"meta.preprocessor.pragma.nim"},"2":{"name":"punctuation.definition.string.begin.nim"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.double.raw.nim"},{"begin":"\\\\b(hint\\\\[\\\\w+\\\\]):","beginCaptures":{"1":{"name":"meta.preprocessor.pragma.nim"}},"end":"(?=\\\\.?\\\\}|,)","patterns":[{"include":"source.nim"}]},{"match":",","name":"punctuation.separator.comma.nim"}]},{"begin":"(^\\\\s*)?(?=asm \\"\\"\\")","beginCaptures":{"0":{"name":"punctuation.whitespace.embedded.leading.nim"}},"end":"(?!\\\\G)(\\\\s*$\\\\n?)?","endCaptures":{"0":{"name":"punctuation.whitespace.embedded.trailing.nim"}},"patterns":[{"begin":"(asm) (\\"\\"\\")","captures":{"1":{"name":"keyword.other.nim"},"2":{"name":"punctuation.section.embedded.begin.nim"}},"contentName":"source.asm","end":"(\\")\\"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.section.embedded.end.nim"},"1":{"name":"source.asm"}},"name":"meta.embedded.block.asm","patterns":[{"begin":"\\\\\`","end":"\\\\\`","name":"keyword.operator.nim"},{"include":"source.asm"}]}]},{"captures":{"1":{"name":"storage.type.function.nim"},"2":{"name":"keyword.operator.nim"}},"comment":"tmpl specifier","match":"(tmpl(i)?)(?=( (html|xml|js|css|glsl|md))?\\"\\"\\")"},{"begin":"(^\\\\s*)?(?=html\\"\\"\\")","beginCaptures":{"0":{"name":"punctuation.whitespace.embedded.leading.nim"}},"end":"(?!\\\\G)(\\\\s*$\\\\n?)?","endCaptures":{"0":{"name":"punctuation.whitespace.embedded.trailing.nim"}},"patterns":[{"begin":"(html)(\\"\\"\\")","captures":{"1":{"name":"keyword.other.nim"},"2":{"name":"punctuation.section.embedded.begin.nim"}},"contentName":"text.html","end":"(\\")\\"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.section.embedded.end.nim"},"1":{"name":"text.html"}},"name":"meta.embedded.block.html","patterns":[{"begin":"(?<!\\\\$)(\\\\$)\\\\(","captures":{"1":{"name":"keyword.operator.nim"}},"end":"\\\\)","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)\\\\{","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"\\\\}","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)(for|while|case|of|when|if|else|elif)( )","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"(\\\\{|\\\\n)","endCaptures":{"1":{"name":"plain"}},"patterns":[{"include":"source.nim"}]},{"match":"(?<!\\\\$)(\\\\$\\\\w+)","name":"keyword.operator.nim"},{"include":"text.html.basic"}]}]},{"begin":"(^\\\\s*)?(?=xml\\"\\"\\")","beginCaptures":{"0":{"name":"punctuation.whitespace.embedded.leading.nim"}},"end":"(?!\\\\G)(\\\\s*$\\\\n?)?","endCaptures":{"0":{"name":"punctuation.whitespace.embedded.trailing.nim"}},"patterns":[{"begin":"(xml)(\\"\\"\\")","captures":{"1":{"name":"keyword.other.nim"},"2":{"name":"punctuation.section.embedded.begin.nim"}},"contentName":"text.xml","end":"(\\")\\"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.section.embedded.end.nim"},"1":{"name":"text.xml"}},"name":"meta.embedded.block.xml","patterns":[{"begin":"(?<!\\\\$)(\\\\$)\\\\(","captures":{"1":{"name":"keyword.operator.nim"}},"end":"\\\\)","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)\\\\{","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"\\\\}","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)(for|while|case|of|when|if|else|elif)( )","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"(\\\\{|\\\\n)","endCaptures":{"1":{"name":"plain"}},"patterns":[{"include":"source.nim"}]},{"match":"(?<!\\\\$)(\\\\$\\\\w+)","name":"keyword.operator.nim"},{"include":"text.xml"}]}]},{"begin":"(^\\\\s*)?(?=js\\"\\"\\")","beginCaptures":{"0":{"name":"punctuation.whitespace.embedded.leading.nim"}},"end":"(?!\\\\G)(\\\\s*$\\\\n?)?","endCaptures":{"0":{"name":"punctuation.whitespace.embedded.trailing.nim"}},"patterns":[{"begin":"(js)(\\"\\"\\")","captures":{"1":{"name":"keyword.other.nim"},"2":{"name":"punctuation.section.embedded.begin.nim"}},"contentName":"source.js","end":"(\\")\\"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.section.embedded.end.nim"},"1":{"name":"source.js"}},"name":"meta.embedded.block.js","patterns":[{"begin":"(?<!\\\\$)(\\\\$)\\\\(","captures":{"1":{"name":"keyword.operator.nim"}},"end":"\\\\)","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)\\\\{","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"\\\\}","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)(for|while|case|of|when|if|else|elif)( )","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"(\\\\{|\\\\n)","endCaptures":{"1":{"name":"plain"}},"patterns":[{"include":"source.nim"}]},{"match":"(?<!\\\\$)(\\\\$\\\\w+)","name":"keyword.operator.nim"},{"include":"source.js"}]}]},{"begin":"(^\\\\s*)?(?=css\\"\\"\\")","beginCaptures":{"0":{"name":"punctuation.whitespace.embedded.leading.nim"}},"end":"(?!\\\\G)(\\\\s*$\\\\n?)?","endCaptures":{"0":{"name":"punctuation.whitespace.embedded.trailing.nim"}},"patterns":[{"begin":"(css)(\\"\\"\\")","captures":{"1":{"name":"keyword.other.nim"},"2":{"name":"punctuation.section.embedded.begin.nim"}},"contentName":"source.css","end":"(\\")\\"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.section.embedded.end.nim"},"1":{"name":"source.css"}},"name":"meta.embedded.block.css","patterns":[{"begin":"(?<!\\\\$)(\\\\$)\\\\(","captures":{"1":{"name":"keyword.operator.nim"}},"end":"\\\\)","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)\\\\{","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"\\\\}","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)(for|while|case|of|when|if|else|elif)( )","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"(\\\\{|\\\\n)","endCaptures":{"1":{"name":"plain"}},"patterns":[{"include":"source.nim"}]},{"match":"(?<!\\\\$)(\\\\$\\\\w+)","name":"keyword.operator.nim"},{"include":"source.css"}]}]},{"begin":"(^\\\\s*)?(?=glsl\\"\\"\\")","beginCaptures":{"0":{"name":"punctuation.whitespace.embedded.leading.nim"}},"end":"(?!\\\\G)(\\\\s*$\\\\n?)?","endCaptures":{"0":{"name":"punctuation.whitespace.embedded.trailing.nim"}},"patterns":[{"begin":"(glsl)(\\"\\"\\")","captures":{"1":{"name":"keyword.other.nim"},"2":{"name":"punctuation.section.embedded.begin.nim"}},"contentName":"source.glsl","end":"(\\")\\"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.section.embedded.end.nim"},"1":{"name":"source.glsl"}},"name":"meta.embedded.block.glsl","patterns":[{"begin":"(?<!\\\\$)(\\\\$)\\\\(","captures":{"1":{"name":"keyword.operator.nim"}},"end":"\\\\)","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)\\\\{","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"\\\\}","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)(for|while|case|of|when|if|else|elif)( )","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"(\\\\{|\\\\n)","endCaptures":{"1":{"name":"plain"}},"patterns":[{"include":"source.nim"}]},{"match":"(?<!\\\\$)(\\\\$\\\\w+)","name":"keyword.operator.nim"},{"include":"source.glsl"}]}]},{"begin":"(^\\\\s*)?(?=md\\"\\"\\")","beginCaptures":{"0":{"name":"punctuation.whitespace.embedded.leading.nim"}},"end":"(?!\\\\G)(\\\\s*$\\\\n?)?","endCaptures":{"0":{"name":"punctuation.whitespace.embedded.trailing.nim"}},"patterns":[{"begin":"(md)(\\"\\"\\")","captures":{"1":{"name":"keyword.other.nim"},"2":{"name":"punctuation.section.embedded.begin.nim"}},"contentName":"text.html.markdown","end":"(\\")\\"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.section.embedded.end.nim"},"1":{"name":"text.html.markdown"}},"name":"meta.embedded.block.html.markdown","patterns":[{"begin":"(?<!\\\\$)(\\\\$)\\\\(","captures":{"1":{"name":"keyword.operator.nim"}},"end":"\\\\)","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)\\\\{","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"\\\\}","patterns":[{"include":"source.nim"}]},{"begin":"(?<!\\\\$)(\\\\$)(for|while|case|of|when|if|else|elif)( )","captures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"keyword.operator.nim"}},"end":"(\\\\{|\\\\n)","endCaptures":{"1":{"name":"plain"}},"patterns":[{"include":"source.nim"}]},{"match":"(?<!\\\\$)(\\\\$\\\\w+)","name":"keyword.operator.nim"},{"include":"text.html.markdown"}]}]}],"repository":{"char_escapes":{"patterns":[{"match":"\\\\\\\\[cC]|\\\\\\\\[rR]","name":"constant.character.escape.carriagereturn.nim"},{"match":"\\\\\\\\[lL]|\\\\\\\\[nN]","name":"constant.character.escape.linefeed.nim"},{"match":"\\\\\\\\[fF]","name":"constant.character.escape.formfeed.nim"},{"match":"\\\\\\\\[tT]","name":"constant.character.escape.tabulator.nim"},{"match":"\\\\\\\\[vV]","name":"constant.character.escape.verticaltabulator.nim"},{"match":"\\\\\\\\\\\\\\"","name":"constant.character.escape.double-quote.nim"},{"match":"\\\\\\\\'","name":"constant.character.escape.single-quote.nim"},{"match":"\\\\\\\\[0-9]+","name":"constant.character.escape.chardecimalvalue.nim"},{"match":"\\\\\\\\[aA]","name":"constant.character.escape.alert.nim"},{"match":"\\\\\\\\[bB]","name":"constant.character.escape.backspace.nim"},{"match":"\\\\\\\\[eE]","name":"constant.character.escape.escape.nim"},{"match":"\\\\\\\\[xX]\\\\h\\\\h","name":"constant.character.escape.hex.nim"},{"match":"\\\\\\\\\\\\\\\\","name":"constant.character.escape.backslash.nim"}]},"extended_string_quoted_double_raw":{"begin":"\\\\b(\\\\w+)(\\")","beginCaptures":{"1":{"name":"support.function.any-method.nim"},"2":{"name":"punctuation.definition.string.begin.nim"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.double.raw.nim","patterns":[{"include":"#raw_string_escapes"}]},"extended_string_quoted_triple_raw":{"begin":"\\\\b(\\\\w+)(\\"\\"\\")","beginCaptures":{"1":{"name":"support.function.any-method.nim"},"2":{"name":"punctuation.definition.string.begin.nim"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.triple.raw.nim"},"float_literal":{"patterns":[{"match":"\\\\b\\\\d[_\\\\d]*((\\\\.\\\\d[_\\\\d]*([eE][\\\\+\\\\-]?\\\\d[_\\\\d]*)?)|([eE][\\\\+\\\\-]?\\\\d[_\\\\d]*))('([fF](32|64|128)|[fFdD]))?","name":"constant.numeric.float.decimal.nim"},{"match":"\\\\b0[xX]\\\\h[_\\\\h]*'([fF](32|64|128)|[fFdD])","name":"constant.numeric.float.hexadecimal.nim"},{"match":"\\\\b0o[0-7][_0-7]*'([fF](32|64|128)|[fFdD])","name":"constant.numeric.float.octal.nim"},{"match":"\\\\b0(b|B)[01][_01]*'([fF](32|64|128)|[fFdD])","name":"constant.numeric.float.binary.nim"},{"match":"\\\\b(\\\\d[_\\\\d]*)'([fF](32|64|128)|[fFdD])","name":"constant.numeric.float.decimal.nim"}]},"fmt_interpolation":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.nim"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.nim"}},"name":"meta.template.expression.nim","patterns":[{"begin":":","end":"(?=\\\\})","name":"meta.template.format-specifier.nim"},{"include":"source.nim"}]},"fmt_string":{"begin":"\\\\b(fmt)(\\")","beginCaptures":{"1":{"name":"support.function.any-method.nim"},"2":{"name":"punctuation.definition.string.begin.nim"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.double.raw.nim","patterns":[{"match":"(?<!\\")\\"(?!\\")","name":"invalid.illegal.nim"},{"include":"#raw_string_escapes"},{"include":"#fmt_interpolation"}]},"fmt_string_call":{"begin":"(fmt)\\\\((?=\\")","beginCaptures":{"1":{"name":"support.function.any-method.nim"}},"end":"\\\\)","patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"end":"\\"(?=\\\\))","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.double.nim","patterns":[{"match":"\\"","name":"invalid.illegal.nim"},{"include":"#string_escapes"},{"include":"#fmt_interpolation"}]}]},"fmt_string_operator":{"begin":"(&)(\\")","beginCaptures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"punctuation.definition.string.begin.nim"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.double.nim","patterns":[{"match":"\\"","name":"invalid.illegal.nim"},{"include":"#string_escapes"},{"include":"#fmt_interpolation"}]},"fmt_string_triple":{"begin":"\\\\b(fmt)(\\"\\"\\")","beginCaptures":{"1":{"name":"support.function.any-method.nim"},"2":{"name":"punctuation.definition.string.begin.nim"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.triple.raw.nim","patterns":[{"include":"#fmt_interpolation"}]},"fmt_string_triple_operator":{"begin":"(&)(\\"\\"\\")","beginCaptures":{"1":{"name":"keyword.operator.nim"},"2":{"name":"punctuation.definition.string.begin.nim"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.triple.raw.nim","patterns":[{"include":"#fmt_interpolation"}]},"integer_literal":{"patterns":[{"match":"\\\\b(0[xX]\\\\h[_\\\\h]*)('(([iIuU](8|16|32|64))|[uU]))?","name":"constant.numeric.integer.hexadecimal.nim"},{"match":"\\\\b(0o[0-7][_0-7]*)('(([iIuU](8|16|32|64))|[uU]))?","name":"constant.numeric.integer.octal.nim"},{"match":"\\\\b(0(b|B)[01][_01]*)('(([iIuU](8|16|32|64))|[uU]))?","name":"constant.numeric.integer.binary.nim"},{"match":"\\\\b(\\\\d[_\\\\d]*)('(([iIuU](8|16|32|64))|[uU]))?","name":"constant.numeric.integer.decimal.nim"}]},"multilinecomment":{"begin":"#\\\\[","end":"\\\\]#","patterns":[{"include":"#multilinecomment"}]},"multilinedoccomment":{"begin":"##\\\\[","end":"\\\\]##","patterns":[{"include":"#multilinedoccomment"}]},"raw_string_escapes":{"captures":{"1":{"name":"constant.character.escape.double-quote.nim"}},"match":"[^\\"](\\"\\")"},"string_escapes":{"patterns":[{"match":"\\\\\\\\[pP]","name":"constant.character.escape.newline.nim"},{"match":"\\\\\\\\[uU]\\\\h\\\\h\\\\h\\\\h","name":"constant.character.escape.hex.nim"},{"match":"\\\\\\\\[uU]\\\\{\\\\h+\\\\}","name":"constant.character.escape.hex.nim"},{"include":"#char_escapes"}]},"string_literal":{"patterns":[{"include":"#fmt_string_triple"},{"include":"#fmt_string_triple_operator"},{"include":"#extended_string_quoted_triple_raw"},{"include":"#string_quoted_triple_raw"},{"include":"#fmt_string_operator"},{"include":"#fmt_string"},{"include":"#fmt_string_call"},{"include":"#string_quoted_double_raw"},{"include":"#extended_string_quoted_double_raw"},{"include":"#string_quoted_single"},{"include":"#string_quoted_triple"},{"include":"#string_quoted_double"}]},"string_quoted_double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"comment":"Double Quoted String","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.double.nim","patterns":[{"include":"#string_escapes"}]},"string_quoted_double_raw":{"begin":"\\\\br\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.double.raw.nim","patterns":[{"include":"#raw_string_escapes"}]},"string_quoted_single":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"comment":"Single quoted character literal","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.single.nim","patterns":[{"include":"#char_escapes"},{"match":"([^']{2,}?)","name":"invalid.illegal.character.nim"}]},"string_quoted_triple":{"begin":"\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"comment":"Triple Quoted String","end":"\\"\\"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.triple.nim"},"string_quoted_triple_raw":{"begin":"r\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nim"}},"comment":"Raw Triple Quoted String","end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nim"}},"name":"string.quoted.triple.raw.nim"}},"scopeName":"source.nim","embeddedLangs":["c","html","xml","javascript","css","glsl","markdown"]}`)),Gre=[...Va,...ce,...Qt,...J,...ue,...Xa,...Wo,qre]});var OR={};x(OR,{default:()=>Ure});var zre,Ure,NR=_(()=>{zre=Object.freeze(JSON.parse(`{"displayName":"Nix","fileTypes":["nix"],"name":"nix","patterns":[{"include":"#expression"}],"repository":{"attribute-bind":{"patterns":[{"include":"#attribute-name"},{"include":"#attribute-bind-from-equals"}]},"attribute-bind-from-equals":{"begin":"\\\\=","beginCaptures":{"0":{"name":"keyword.operator.bind.nix"}},"end":"\\\\;","endCaptures":{"0":{"name":"punctuation.terminator.bind.nix"}},"patterns":[{"include":"#expression"}]},"attribute-inherit":{"begin":"\\\\binherit\\\\b","beginCaptures":{"0":{"name":"keyword.other.inherit.nix"}},"end":"\\\\;","endCaptures":{"0":{"name":"punctuation.terminator.inherit.nix"}},"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.function.arguments.nix"}},"end":"(?=\\\\;)","patterns":[{"begin":"\\\\)","beginCaptures":{"0":{"name":"punctuation.section.function.arguments.nix"}},"end":"(?=\\\\;)","patterns":[{"include":"#bad-reserved"},{"include":"#attribute-name-single"},{"include":"#others"}]},{"include":"#expression"}]},{"begin":"(?=[a-zA-Z\\\\_])","end":"(?=\\\\;)","patterns":[{"include":"#bad-reserved"},{"include":"#attribute-name-single"},{"include":"#others"}]},{"include":"#others"}]},"attribute-name":{"patterns":[{"match":"\\\\b[a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*","name":"entity.other.attribute-name.multipart.nix"},{"match":"\\\\."},{"include":"#string-quoted"},{"include":"#interpolation"}]},"attribute-name-single":{"match":"\\\\b[a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*","name":"entity.other.attribute-name.single.nix"},"attrset-contents":{"patterns":[{"include":"#attribute-inherit"},{"include":"#bad-reserved"},{"include":"#attribute-bind"},{"include":"#others"}]},"attrset-definition":{"begin":"(?=\\\\{)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"begin":"(\\\\{)","beginCaptures":{"0":{"name":"punctuation.definition.attrset.nix"}},"end":"(\\\\})","endCaptures":{"0":{"name":"punctuation.definition.attrset.nix"}},"patterns":[{"include":"#attrset-contents"}]},{"begin":"(?<=\\\\})","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression-cont"}]}]},"attrset-definition-brace-opened":{"patterns":[{"begin":"(?<=\\\\})","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression-cont"}]},{"begin":"(?=.?)","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.attrset.nix"}},"patterns":[{"include":"#attrset-contents"}]}]},"attrset-for-sure":{"patterns":[{"begin":"(?=\\\\brec\\\\b)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"begin":"\\\\brec\\\\b","beginCaptures":{"0":{"name":"keyword.other.nix"}},"end":"(?=\\\\{)","patterns":[{"include":"#others"}]},{"include":"#attrset-definition"},{"include":"#others"}]},{"begin":"(?=\\\\{\\\\s*(\\\\}|[^,?]*(=|;)))","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#attrset-definition"},{"include":"#others"}]}]},"attrset-or-function":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.attrset-or-function.nix"}},"end":"(?=([\\\\])};]|\\\\b(else|then)\\\\b))","patterns":[{"begin":"(?=(\\\\s*\\\\}|\\\\\\"|\\\\binherit\\\\b|\\\\$\\\\{|\\\\b[a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*(\\\\s*\\\\.|\\\\s*=[^=])))","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#attrset-definition-brace-opened"}]},{"begin":"(?=(\\\\.\\\\.\\\\.|\\\\b[a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*\\\\s*[,?]))","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#function-definition-brace-opened"}]},{"include":"#bad-reserved"},{"begin":"\\\\b[a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*","beginCaptures":{"0":{"name":"variable.parameter.function.maybe.nix"}},"end":"(?=([\\\\])};]|\\\\b(else|then)\\\\b))","patterns":[{"begin":"(?=\\\\.)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#attrset-definition-brace-opened"}]},{"begin":"\\\\s*(\\\\,)","beginCaptures":{"1":{"name":"keyword.operator.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#function-definition-brace-opened"}]},{"begin":"(?=\\\\=)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#attribute-bind-from-equals"},{"include":"#attrset-definition-brace-opened"}]},{"begin":"(?=\\\\?)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#function-parameter-default"},{"begin":"\\\\,","beginCaptures":{"0":{"name":"keyword.operator.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#function-definition-brace-opened"}]}]},{"include":"#others"}]},{"include":"#others"}]},"bad-reserved":{"match":"(?<![\\\\w'-])(if|then|else|assert|with|let|in|rec|inherit)(?![\\\\w'-])","name":"invalid.illegal.reserved.nix"},"comment":{"patterns":[{"begin":"/\\\\*([^*]|\\\\*[^\\\\/])*","end":"\\\\*\\\\/","name":"comment.block.nix","patterns":[{"include":"#comment-remark"}]},{"begin":"\\\\#","end":"$","name":"comment.line.number-sign.nix","patterns":[{"include":"#comment-remark"}]}]},"comment-remark":{"captures":{"1":{"name":"markup.bold.comment.nix"}},"match":"(TODO|FIXME|BUG|\\\\!\\\\!\\\\!):?"},"constants":{"patterns":[{"begin":"\\\\b(builtins|true|false|null)\\\\b","beginCaptures":{"0":{"name":"constant.language.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression-cont"}]},{"begin":"\\\\b(scopedImport|import|isNull|abort|throw|baseNameOf|dirOf|removeAttrs|map|toString|derivationStrict|derivation)\\\\b","beginCaptures":{"0":{"name":"support.function.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression-cont"}]},{"begin":"\\\\b[0-9]+\\\\b","beginCaptures":{"0":{"name":"constant.numeric.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression-cont"}]}]},"expression":{"patterns":[{"include":"#parens-and-cont"},{"include":"#list-and-cont"},{"include":"#string"},{"include":"#interpolation"},{"include":"#with-assert"},{"include":"#function-for-sure"},{"include":"#attrset-for-sure"},{"include":"#attrset-or-function"},{"include":"#let"},{"include":"#if"},{"include":"#operator-unary"},{"include":"#constants"},{"include":"#bad-reserved"},{"include":"#parameter-name-and-cont"},{"include":"#others"}]},"expression-cont":{"begin":"(?=.?)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#parens"},{"include":"#list"},{"include":"#string"},{"include":"#interpolation"},{"include":"#function-for-sure"},{"include":"#attrset-for-sure"},{"include":"#attrset-or-function"},{"match":"(\\\\bor\\\\b|\\\\.|==|!=|!|\\\\<\\\\=|\\\\<|\\\\>\\\\=|\\\\>|&&|\\\\|\\\\||-\\\\>|//|\\\\?|\\\\+\\\\+|-|\\\\*|/(?=([^*]|$))|\\\\+)","name":"keyword.operator.nix"},{"include":"#constants"},{"include":"#bad-reserved"},{"include":"#parameter-name"},{"include":"#others"}]},"function-body":{"begin":"(@\\\\s*([a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*)\\\\s*)?(\\\\:)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression"}]},"function-body-from-colon":{"begin":"(\\\\:)","beginCaptures":{"0":{"name":"punctuation.definition.function.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression"}]},"function-contents":{"patterns":[{"include":"#bad-reserved"},{"include":"#function-parameter"},{"include":"#others"}]},"function-definition":{"begin":"(?=.?)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#function-body-from-colon"},{"begin":"(?=.?)","end":"(?=\\\\:)","patterns":[{"begin":"(\\\\b[a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*)","beginCaptures":{"0":{"name":"variable.parameter.function.4.nix"}},"end":"(?=\\\\:)","patterns":[{"begin":"\\\\@","end":"(?=\\\\:)","patterns":[{"include":"#function-header-until-colon-no-arg"},{"include":"#others"}]},{"include":"#others"}]},{"begin":"(?=\\\\{)","end":"(?=\\\\:)","patterns":[{"include":"#function-header-until-colon-with-arg"}]}]},{"include":"#others"}]},"function-definition-brace-opened":{"begin":"(?=.?)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#function-body-from-colon"},{"begin":"(?=.?)","end":"(?=\\\\:)","patterns":[{"include":"#function-header-close-brace-with-arg"},{"begin":"(?=.?)","end":"(?=\\\\})","patterns":[{"include":"#function-contents"}]}]},{"include":"#others"}]},"function-for-sure":{"patterns":[{"begin":"(?=(\\\\b[a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*\\\\s*[:@]|\\\\{[^}]*\\\\}\\\\s*:|\\\\{[^#}\\"'/=]*[,\\\\?]))","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#function-definition"}]}]},"function-header-close-brace-no-arg":{"begin":"\\\\}","beginCaptures":{"0":{"name":"punctuation.definition.entity.function.nix"}},"end":"(?=\\\\:)","patterns":[{"include":"#others"}]},"function-header-close-brace-with-arg":{"begin":"\\\\}","beginCaptures":{"0":{"name":"punctuation.definition.entity.function.nix"}},"end":"(?=\\\\:)","patterns":[{"include":"#function-header-terminal-arg"},{"include":"#others"}]},"function-header-open-brace":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.entity.function.2.nix"}},"end":"(?=\\\\})","patterns":[{"include":"#function-contents"}]},"function-header-terminal-arg":{"begin":"(?=@)","end":"(?=\\\\:)","patterns":[{"begin":"\\\\@","end":"(?=\\\\:)","patterns":[{"begin":"(\\\\b[a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*)","end":"(?=\\\\:)","name":"variable.parameter.function.3.nix"},{"include":"#others"}]},{"include":"#others"}]},"function-header-until-colon-no-arg":{"begin":"(?=\\\\{)","end":"(?=\\\\:)","patterns":[{"include":"#function-header-open-brace"},{"include":"#function-header-close-brace-no-arg"}]},"function-header-until-colon-with-arg":{"begin":"(?=\\\\{)","end":"(?=\\\\:)","patterns":[{"include":"#function-header-open-brace"},{"include":"#function-header-close-brace-with-arg"}]},"function-parameter":{"patterns":[{"begin":"(\\\\.\\\\.\\\\.)","end":"(,|(?=\\\\}))","name":"keyword.operator.nix","patterns":[{"include":"#others"}]},{"begin":"\\\\b[a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*","beginCaptures":{"0":{"name":"variable.parameter.function.1.nix"}},"end":"(,|(?=\\\\}))","endCaptures":{"0":{"name":"keyword.operator.nix"}},"patterns":[{"include":"#whitespace"},{"include":"#comment"},{"include":"#function-parameter-default"},{"include":"#expression"}]},{"include":"#others"}]},"function-parameter-default":{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.nix"}},"end":"(?=[,}])","patterns":[{"include":"#expression"}]},"if":{"begin":"(?=\\\\bif\\\\b)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"begin":"\\\\bif\\\\b","beginCaptures":{"0":{"name":"keyword.other.nix"}},"end":"\\\\bth(?=en\\\\b)","endCaptures":{"0":{"name":"keyword.other.nix"}},"patterns":[{"include":"#expression"}]},{"begin":"(?<=th)en\\\\b","beginCaptures":{"0":{"name":"keyword.other.nix"}},"end":"\\\\bel(?=se\\\\b)","endCaptures":{"0":{"name":"keyword.other.nix"}},"patterns":[{"include":"#expression"}]},{"begin":"(?<=el)se\\\\b","beginCaptures":{"0":{"name":"keyword.other.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","endCaptures":{"0":{"name":"keyword.other.nix"}},"patterns":[{"include":"#expression"}]}]},"illegal":{"match":".","name":"invalid.illegal"},"interpolation":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.nix"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.nix"}},"name":"meta.embedded","patterns":[{"include":"#expression"}]},"let":{"begin":"(?=\\\\blet\\\\b)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"begin":"\\\\blet\\\\b","beginCaptures":{"0":{"name":"keyword.other.nix"}},"end":"(?=([\\\\])};,]|\\\\b(in|else|then)\\\\b))","patterns":[{"begin":"(?=\\\\{)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#attrset-contents"}]},{"begin":"(^|(?<=\\\\}))","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression-cont"}]},{"include":"#others"}]},{"include":"#attrset-contents"},{"include":"#others"}]},{"begin":"\\\\bin\\\\b","beginCaptures":{"0":{"name":"keyword.other.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression"}]}]},"list":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.list.nix"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.list.nix"}},"patterns":[{"include":"#expression"}]},"list-and-cont":{"begin":"(?=\\\\[)","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#list"},{"include":"#expression-cont"}]},"operator-unary":{"match":"(!|-)","name":"keyword.operator.unary.nix"},"others":{"patterns":[{"include":"#whitespace"},{"include":"#comment"},{"include":"#illegal"}]},"parameter-name":{"captures":{"0":{"name":"variable.parameter.name.nix"}},"match":"\\\\b[a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*"},"parameter-name-and-cont":{"begin":"\\\\b[a-zA-Z\\\\_][a-zA-Z0-9\\\\_\\\\'\\\\-]*","beginCaptures":{"0":{"name":"variable.parameter.name.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression-cont"}]},"parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.expression.nix"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.expression.nix"}},"patterns":[{"include":"#expression"}]},"parens-and-cont":{"begin":"(?=\\\\()","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#parens"},{"include":"#expression-cont"}]},"string":{"patterns":[{"begin":"(?=\\\\'\\\\')","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"begin":"\\\\'\\\\'","beginCaptures":{"0":{"name":"punctuation.definition.string.other.start.nix"}},"end":"\\\\'\\\\'(?!\\\\$|\\\\'|\\\\\\\\.)","endCaptures":{"0":{"name":"punctuation.definition.string.other.end.nix"}},"name":"string.quoted.other.nix","patterns":[{"match":"\\\\'\\\\'(\\\\$|\\\\'|\\\\\\\\.)","name":"constant.character.escape.nix"},{"include":"#interpolation"}]},{"include":"#expression-cont"}]},{"begin":"(?=\\\\\\")","end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#string-quoted"},{"include":"#expression-cont"}]},{"begin":"(~?[a-zA-Z0-9\\\\.\\\\_\\\\-\\\\+]*(\\\\/[a-zA-Z0-9\\\\.\\\\_\\\\-\\\\+]+)+)","beginCaptures":{"0":{"name":"string.unquoted.path.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression-cont"}]},{"begin":"(\\\\<[a-zA-Z0-9\\\\.\\\\_\\\\-\\\\+]+(\\\\/[a-zA-Z0-9\\\\.\\\\_\\\\-\\\\+]+)*\\\\>)","beginCaptures":{"0":{"name":"string.unquoted.spath.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression-cont"}]},{"begin":"([a-zA-Z][a-zA-Z0-9\\\\+\\\\-\\\\.]*\\\\:[a-zA-Z0-9\\\\%\\\\/\\\\?\\\\:\\\\@\\\\&\\\\=\\\\+\\\\$\\\\,\\\\-\\\\_\\\\.\\\\!\\\\~\\\\*\\\\']+)","beginCaptures":{"0":{"name":"string.unquoted.url.nix"}},"end":"(?=([\\\\])};,]|\\\\b(else|then)\\\\b))","patterns":[{"include":"#expression-cont"}]}]},"string-quoted":{"begin":"\\\\\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.double.start.nix"}},"end":"\\\\\\"","endCaptures":{"0":{"name":"punctuation.definition.string.double.end.nix"}},"name":"string.quoted.double.nix","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.nix"},{"include":"#interpolation"}]},"whitespace":{"match":"\\\\s+"},"with-assert":{"begin":"(?<![\\\\w'-])(with|assert)(?![\\\\w'-])","beginCaptures":{"0":{"name":"keyword.other.nix"}},"end":"\\\\;","patterns":[{"include":"#expression"}]}},"scopeName":"source.nix"}`)),Ure=[zre]});var LR={};x(LR,{default:()=>Zre});var Hre,Zre,$R=_(()=>{Hre=Object.freeze(JSON.parse(`{"displayName":"nushell","name":"nushell","patterns":[{"include":"#define-variable"},{"include":"#define-alias"},{"include":"#function"},{"include":"#extern"},{"include":"#module"},{"include":"#use-module"},{"include":"#expression"},{"include":"#comment"}],"repository":{"binary":{"begin":"\\\\b(0x)(\\\\[)","beginCaptures":{"1":{"name":"constant.numeric.nushell"},"2":{"name":"meta.brace.square.begin.nushell"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.begin.nushell"}},"name":"constant.binary.nushell","patterns":[{"match":"[0-9a-fA-F]{2}","name":"constant.numeric.nushell"}]},"braced-expression":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.nushell"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.nushell"}},"name":"meta.expression.braced.nushell","patterns":[{"begin":"(?<=\\\\{)\\\\s*\\\\|","end":"\\\\|","name":"meta.closure.parameters.nushell","patterns":[{"include":"#function-parameter"}]},{"captures":{"1":{"name":"variable.other.nushell"},"2":{"name":"keyword.control.nushell"}},"match":"(\\\\w+)\\\\s*(:)\\\\s*"},{"captures":{"1":{"name":"variable.other.nushell"},"2":{"name":"variable.other.nushell","patterns":[{"include":"#paren-expression"}]},"3":{"name":"keyword.control.nushell"}},"match":"(\\\\$\\"((?:[^\\"\\\\\\\\]|\\\\\\\\.)*)\\")\\\\s*(:)\\\\s*","name":"meta.record-entry.nushell"},{"captures":{"1":{"name":"variable.other.nushell"},"2":{"name":"keyword.control.nushell"}},"match":"(\\"(?:[^\\"\\\\\\\\]|\\\\\\\\.)*\\")\\\\s*(:)\\\\s*","name":"meta.record-entry.nushell"},{"captures":{"1":{"name":"variable.other.nushell"},"2":{"name":"variable.other.nushell","patterns":[{"include":"#paren-expression"}]},"3":{"name":"keyword.control.nushell"}},"match":"(\\\\$'([^']*)')\\\\s*(:)\\\\s*","name":"meta.record-entry.nushell"},{"captures":{"1":{"name":"variable.other.nushell"},"2":{"name":"keyword.control.nushell"}},"match":"('[^']*')\\\\s*(:)\\\\s*","name":"meta.record-entry.nushell"},{"include":"#spread"},{"include":"source.nushell"}]},"command":{"begin":"(?<!\\\\w)(?:(\\\\^)|(?![0-9]|\\\\$))([\\\\w.!]+(?:(?: (?!-)[\\\\w\\\\-.!]+(?:(?= |\\\\))|$)|[\\\\w\\\\-.!]+))*|(?<=\\\\^)\\\\$?(?:\\"[^\\"]+\\"|'[^']+'))","beginCaptures":{"1":{"name":"keyword.operator.nushell"},"2":{"patterns":[{"include":"#control-keywords"},{"captures":{"0":{"name":"keyword.other.builtin.nushell"}},"match":"(?:ansi|char) \\\\w+"},{"captures":{"1":{"name":"keyword.other.builtin.nushell"},"2":{"patterns":[{"include":"#value"}]}},"comment":"Regex generated with list-to-tree (https://github.com/glcraft/list-to-tree)","match":"(a(?:l(?:ias|l)|n(?:si(?: (?:gradient|link|strip))?|y)|ppend|st)|b(?:g|its(?: (?:and|not|or|ro(?:l|r)|sh(?:l|r)|xor))?|reak|ytes(?: (?:a(?:dd|t)|build|collect|ends-with|index-of|length|re(?:move|place|verse)|starts-with))?)|c(?:al|d|h(?:ar|unks)|lear|o(?:l(?:lect|umns)|m(?:mandline(?: (?:edit|get-cursor|set-cursor))?|p(?:act|lete))|n(?:fig(?: (?:env|nu|reset))?|st|tinue))|p)|d(?:ate(?: (?:format|humanize|list-timezone|now|to-(?:record|t(?:able|imezone))))?|e(?:bug(?: (?:info|profile))?|code(?: (?:base(?:32(?:hex)?|64)|hex|new-base64))?|f(?:ault)?|scribe|tect columns)|o|rop(?: (?:column|nth))?|t(?: (?:add|diff|format|now|part|to|utcnow))?|u)|e(?:ach(?: while)?|cho|moji|n(?:code(?: (?:base(?:32(?:hex)?|64)|hex|new-base64))?|umerate)|rror make|very|x(?:ec|it|p(?:l(?:ain|ore)|ort(?: (?:alias|const|def|extern|module|use)|-env)?)|tern))|f(?:i(?:l(?:e|l|ter)|nd|rst)|latten|mt|or(?:mat(?: (?:d(?:ate|uration)|filesize|pattern))?)?|rom(?: (?:csv|eml|i(?:cs|ni)|json|msgpack(?:z)?|nuon|ods|p(?:arquet|list)|ssv|t(?:oml|sv)|url|vcf|x(?:lsx|ml)|y(?:aml|ml)))?)|g(?:e(?:nerate|t)|lob|r(?:id|oup(?:-by)?)|stat)|h(?:ash(?: (?:md5|sha256))?|e(?:aders|lp(?: (?:aliases|commands|e(?:scapes|xterns)|modules|operators))?)|i(?:de(?:-env)?|sto(?:gram|ry(?: session)?))|ttp(?: (?:delete|get|head|options|p(?:atch|ost|ut)))?)|i(?:f|gnore|n(?:c|put(?: list(?:en)?)?|s(?:ert|pect)|t(?:erleave|o(?: (?:b(?:i(?:nary|ts)|ool)|cell-path|d(?:atetime|uration)|f(?:ilesize|loat)|glob|int|record|s(?:qlite|tring)|value))?))|s-(?:admin|empty|not-empty|terminal)|tems)|j(?:oin|son path|walk)|k(?:eybindings(?: (?:default|list(?:en)?))?|ill)|l(?:ast|e(?:ngth|t(?:-env)?)|ines|o(?:ad-env|op)|s)|m(?:at(?:ch|h(?: (?:a(?:bs|rc(?:cos(?:h)?|sin(?:h)?|tan(?:h)?)|vg)|c(?:eil|os(?:h)?)|exp|floor|l(?:n|og)|m(?:ax|edian|in|ode)|product|round|s(?:in(?:h)?|qrt|tddev|um)|tan(?:h)?|variance))?)|d|e(?:rge|tadata(?: (?:access|set))?)|k(?:dir|temp)|o(?:dule|ve)|ut|v)|nu-(?:check|highlight)|o(?:pen|verlay(?: (?:hide|list|new|use))?)|p(?:a(?:nic|r(?:-each|se)|th(?: (?:basename|dirname|ex(?:ists|pand)|join|parse|relative-to|split|type))?)|lugin(?: (?:add|list|rm|stop|use))?|net|o(?:lars(?: (?:a(?:gg(?:-groups)?|ll-(?:false|true)|ppend|rg-(?:m(?:ax|in)|sort|true|unique|where)|s(?:-date(?:time)?)?)|c(?:a(?:che|st)|o(?:l(?:lect|umns)?|n(?:cat(?:-str)?|tains)|unt(?:-null)?)|umulative)|d(?:atepart|ecimal|rop(?:-(?:duplicates|nulls))?|ummies)|exp(?:lode|r-not)|f(?:etch|i(?:l(?:l-n(?:an|ull)|ter(?:-with)?)|rst)|latten)|g(?:et(?:-(?:day|hour|m(?:inute|onth)|nanosecond|ordinal|second|week(?:day)?|year))?|roup-by)|i(?:mplode|nt(?:eger|o-(?:df|lazy|nu))|s-(?:duplicated|in|n(?:ot-null|ull)|unique))|join|l(?:ast|it|owercase)|m(?:ax|e(?:an|dian)|in)|n(?:-unique|ot)|o(?:pen|therwise)|p(?:ivot|rofile)|qu(?:antile|ery)|r(?:e(?:name|place(?:-all)?|verse)|olling)|s(?:a(?:mple|ve)|chema|e(?:lect|t(?:-with-idx)?)|h(?:ape|ift)|lice|ort-by|t(?:d|ore-(?:get|ls|rm)|r(?:-(?:join|lengths|slice)|ftime))|um(?:mary)?)|take|u(?:n(?:ique|pivot)|ppercase)|va(?:lue-counts|r)|w(?:hen|ith-column)))?|rt)|r(?:epend|int)|s)|query(?: (?:db|git|json|web(?:page-info)?|xml))?|r(?:an(?:dom(?: (?:b(?:inary|ool)|chars|dice|float|int|uuid))?|ge)|e(?:duce|g(?:ex|istry query)|ject|name|turn|verse)|m|o(?:ll(?: (?:down|left|right|up))?|tate)|un-external)|s(?:ave|c(?:hema|ope(?: (?:aliases|commands|e(?:ngine-stats|xterns)|modules|variables))?)|e(?:lect|q(?: (?:char|date))?)|huffle|kip(?: (?:until|while))?|leep|o(?:rt(?:-by)?|urce(?:-env)?)|plit(?: (?:c(?:ell-path|hars|olumn)|list|row|words)|-by)?|t(?:art|or(?: (?:create|delete|export|i(?:mport|nsert)|open|reset|update))?|r(?: (?:c(?:a(?:mel-case|pitalize)|ontains)|d(?:istance|owncase)|e(?:nds-with|xpand)|index-of|join|kebab-case|length|pascal-case|re(?:place|verse)|s(?:creaming-snake-case|imilarity|nake-case|ta(?:rts-with|ts)|ubstring)|t(?:itle-case|rim)|upcase)|ess_internals)?)|ys(?: (?:cpu|disks|host|mem|net|temp|users))?)|t(?:a(?:ble|ke(?: (?:until|while))?)|e(?:e|rm size)|imeit|o(?: (?:csv|html|json|m(?:d|sgpack(?:z)?)|nuon|p(?:arquet|list)|t(?:ext|oml|sv)|xml|yaml)|uch)?|r(?:anspose|y)|utor)|u(?:limit|n(?:ame|iq(?:-by)?)|p(?:date(?: cells)?|sert)|rl(?: (?:build-query|decode|encode|join|parse))?|se)|v(?:alues|ersion|iew(?: (?:files|ir|s(?:ource|pan)))?)|w(?:atch|h(?:ere|i(?:ch|le)|oami)|i(?:ndow|th-env)|rap)|zip)(?![\\\\w-])( (.*))?"},{"captures":{"1":{"patterns":[{"include":"#paren-expression"}]}},"match":"(?<=\\\\^)(?:\\\\$(\\"[^\\"]+\\"|'[^']+')|\\"[^\\"]+\\"|'[^']+')","name":"entity.name.type.external.nushell"},{"captures":{"1":{"name":"entity.name.type.external.nushell"},"2":{"patterns":[{"include":"#value"}]}},"match":"([\\\\w.]+(?:-[\\\\w.!]+)*)(?: (.*))?"},{"include":"#value"}]}},"end":"(?=\\\\||\\\\)|\\\\}|;)|$","name":"meta.command.nushell","patterns":[{"include":"#parameters"},{"include":"#spread"},{"include":"#value"}]},"comment":{"match":"(#.*)$","name":"comment.nushell"},"constant-keywords":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.nushell"},"constant-value":{"patterns":[{"include":"#constant-keywords"},{"include":"#datetime"},{"include":"#numbers"},{"include":"#numbers-hexa"},{"include":"#binary"}]},"control-keywords":{"comment":"Regex generated with list-to-tree (https://github.com/glcraft/list-to-tree)","match":"(?<![0-9a-zA-Z_\\\\-.\\\\/:\\\\\\\\])(?:break|continue|else(?: if)?|for|if|loop|mut|return|try|while)(?![0-9a-zA-Z_\\\\-.\\\\/:\\\\\\\\])","name":"keyword.control.nushell"},"datetime":{"match":"\\\\b\\\\d{4}-\\\\d{2}-\\\\d{2}(?:T\\\\d{2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d+)?(?:\\\\+\\\\d{2}:?\\\\d{2}|Z)?)?\\\\b","name":"constant.numeric.nushell"},"define-alias":{"captures":{"1":{"name":"entity.name.function.nushell"},"2":{"name":"entity.name.type.nushell"},"3":{"patterns":[{"include":"#operators"}]}},"match":"((?:export )?alias)\\\\s+([\\\\w\\\\-!]+)\\\\s*(=)"},"define-variable":{"captures":{"1":{"name":"keyword.other.nushell"},"2":{"name":"variable.other.nushell"},"3":{"patterns":[{"include":"#operators"}]}},"match":"(let|mut|(?:export\\\\s+)?const)\\\\s+(\\\\w+)\\\\s+(=)"},"expression":{"patterns":[{"include":"#pre-command"},{"include":"#for-loop"},{"include":"#operators"},{"match":"\\\\|","name":"keyword.control.nushell"},{"include":"#control-keywords"},{"include":"#constant-value"},{"include":"#command"},{"include":"#value"}]},"extern":{"begin":"((?:export\\\\s+)?extern)\\\\s+([\\\\w\\\\-]+|\\"[\\\\w\\\\- ]+\\")","beginCaptures":{"1":{"name":"entity.name.function.nushell"},"2":{"name":"entity.name.type.nushell"}},"end":"(?<=\\\\])","endCaptures":{"0":{"name":"punctuation.definition.function.end.nushell"}},"patterns":[{"include":"#function-parameters"}]},"for-loop":{"begin":"(for)\\\\s+(\\\\$?\\\\w+)\\\\s+(in)\\\\s+(.+)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"keyword.other.nushell"},"2":{"name":"variable.other.nushell"},"3":{"name":"keyword.other.nushell"},"4":{"patterns":[{"include":"#value"}]},"5":{"name":"punctuation.section.block.begin.bracket.curly.nushell"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.nushell"}},"name":"meta.for-loop.nushell","patterns":[{"include":"source.nushell"}]},"function":{"begin":"((?:export\\\\s+)?def(?:\\\\s+--\\\\w+)*)\\\\s+([\\\\w\\\\-]+|\\"[\\\\w\\\\- ]+\\"|'[\\\\w\\\\- ]+'|\`[\\\\w\\\\- ]+\`)(\\\\s+--\\\\w+)*","beginCaptures":{"1":{"name":"entity.name.function.nushell"},"2":{"name":"entity.name.type.nushell"},"3":{"name":"entity.name.function.nushell"}},"end":"(?<=\\\\})","patterns":[{"include":"#function-parameters"},{"include":"#function-body"},{"include":"#function-inout"}]},"function-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.function.begin.nushell"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.function.end.nushell"}},"name":"meta.function.body.nushell","patterns":[{"include":"source.nushell"}]},"function-inout":{"patterns":[{"include":"#types"},{"match":"->","name":"keyword.operator.nushell"},{"include":"#function-multiple-inout"}]},"function-multiple-inout":{"begin":"(?<=]\\\\s*)(:)\\\\s+(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.in-out.nushell"},"2":{"name":"meta.brace.square.begin.nushell"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.end.nushell"}},"patterns":[{"include":"#types"},{"captures":{"1":{"name":"punctuation.separator.nushell"}},"match":"\\\\s*(,)\\\\s*"},{"captures":{"1":{"name":"keyword.operator.nushell"}},"match":"\\\\s+(->)\\\\s+"}]},"function-parameter":{"patterns":[{"captures":{"1":{"name":"keyword.control.nushell"}},"match":"(-{0,2}|\\\\.{3})[\\\\w-]+(?:\\\\((-[\\\\w?])\\\\))?","name":"variable.parameter.nushell"},{"begin":"\\\\??:\\\\s*","end":"(?=(?:\\\\s+(?:-{0,2}|\\\\.{3})[\\\\w-]+)|(?:\\\\s*(?:,|\\\\]|\\\\||@|=|#|$)))","patterns":[{"include":"#types"}]},{"begin":"@(?=\\"|')","end":"(?<=\\"|')","patterns":[{"include":"#string"}]},{"begin":"=\\\\s*","end":"(?=(?:\\\\s+-{0,2}[\\\\w-]+)|(?:\\\\s*(?:,|\\\\]|\\\\||#|$)))","name":"default.value.nushell","patterns":[{"include":"#value"}]}]},"function-parameters":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.begin.nushell"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.end.nushell"}},"name":"meta.function.parameters.nushell","patterns":[{"include":"#function-parameter"},{"include":"#comment"}]},"internal-variables":{"match":"\\\\$(?:nu|env)\\\\b","name":"variable.language.nushell"},"keyword":{"match":"(?:def(?:-env)?)","name":"keyword.other.nushell"},"module":{"begin":"((?:export\\\\s+)?module)\\\\s+([\\\\w\\\\-]+)\\\\s*\\\\{","beginCaptures":{"1":{"name":"entity.name.function.nushell"},"2":{"name":"entity.name.namespace.nushell"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.module.end.nushell"}},"name":"meta.module.nushell","patterns":[{"include":"source.nushell"}]},"numbers":{"match":"(?<![\\\\w-])[-+]?(?:\\\\d+|\\\\d{1,3}(?:_\\\\d{3})*)(?:\\\\.\\\\d*)?(?i:ns|us|ms|sec|min|hr|day|wk|b|kb|mb|gb|tb|pt|eb|zb|kib|mib|gib|tib|pit|eib|zib)?(?:(?![\\\\w.])|(?=\\\\.\\\\.))","name":"constant.numeric.nushell"},"numbers-hexa":{"match":"(?<![\\\\w-])0x[0-9a-fA-F]+(?![\\\\w.])","name":"constant.numeric.nushell"},"operators":{"patterns":[{"include":"#operators-word"},{"include":"#operators-symbols"},{"include":"#ranges"}]},"operators-symbols":{"match":"(?<= )(?:(?:\\\\+|\\\\-|\\\\*|\\\\/)=?|\\\\/\\\\/|\\\\*\\\\*|!=|[<>=]=?|[!=]~|\\\\+\\\\+=?)(?= |$)","name":"keyword.control.nushell"},"operators-word":{"match":"(?<= |\\\\()(?:mod|in|not-in|not|and|or|xor|bit-or|bit-and|bit-xor|bit-shl|bit-shr|starts-with|ends-with)(?= |\\\\)|$)","name":"keyword.control.nushell"},"parameters":{"captures":{"1":{"name":"keyword.control.nushell"}},"match":"(?<=\\\\s)(-{1,2})[\\\\w-]+","name":"variable.parameter.nushell"},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.begin.nushell"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.end.nushell"}},"name":"meta.expression.parenthesis.nushell","patterns":[{"include":"#expression"}]},"pre-command":{"begin":"(\\\\w+)(=)","beginCaptures":{"1":{"name":"variable.other.nushell"},"2":{"patterns":[{"include":"#operators"}]}},"end":"(?=\\\\s+)","patterns":[{"include":"#value"}]},"ranges":{"match":"\\\\.\\\\.<?","name":"keyword.control.nushell"},"spread":{"match":"\\\\.\\\\.\\\\.(?=[^\\\\s\\\\]}])","name":"keyword.control.nushell"},"string":{"patterns":[{"include":"#string-single-quote"},{"include":"#string-backtick"},{"include":"#string-double-quote"},{"include":"#string-interpolated-double"},{"include":"#string-interpolated-single"},{"include":"#string-bare"}]},"string-backtick":{"begin":"\`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nushell"}},"end":"\`","endCaptures":{"0":{"name":"punctuation.definition.string.end.nushell"}},"name":"string.quoted.single.nushell"},"string-bare":{"match":"[^$\\\\[{(\\"',|#\\\\s|][^\\\\[\\\\]{}()\\"'\\\\s#,|]*","name":"string.bare.nushell"},"string-double-quote":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nushell"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nushell"}},"name":"string.quoted.double.nushell","patterns":[{"match":"\\\\w+"},{"include":"#string-escape"}]},"string-escape":{"match":"\\\\\\\\(?:[bfrnt\\\\\\\\'\\"/]|u[0-9a-fA-F]{4})","name":"constant.character.escape.nushell"},"string-interpolated-double":{"begin":"\\\\$\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nushell"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.nushell"}},"name":"string.interpolated.double.nushell","patterns":[{"match":"\\\\\\\\[()]","name":"constant.character.escape.nushell"},{"include":"#string-escape"},{"include":"#paren-expression"}]},"string-interpolated-single":{"begin":"\\\\$'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nushell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.nushell"}},"name":"string.interpolated.single.nushell","patterns":[{"include":"#paren-expression"}]},"string-single-quote":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.nushell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.nushell"}},"name":"string.quoted.single.nushell"},"table":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.begin.nushell"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.end.nushell"}},"name":"meta.table.nushell","patterns":[{"include":"#spread"},{"include":"#value"},{"match":",","name":"punctuation.separator.nushell"}]},"types":{"patterns":[{"begin":"\\\\b(list)\\\\s*<","beginCaptures":{"1":{"name":"entity.name.type.nushell"}},"end":">","name":"meta.list.nushell","patterns":[{"include":"#types"}]},{"begin":"\\\\b(record)\\\\s*<","beginCaptures":{"1":{"name":"entity.name.type.nushell"}},"end":">","name":"meta.record.nushell","patterns":[{"captures":{"1":{"name":"variable.parameter.nushell"}},"match":"([\\\\w\\\\-]+|\\"[\\\\w\\\\- ]+\\"|'[^']+')\\\\s*:\\\\s*"},{"include":"#types"}]},{"match":"\\\\b(\\\\w+)\\\\b","name":"entity.name.type.nushell"}]},"use-module":{"patterns":[{"captures":{"1":{"name":"entity.name.function.nushell"},"2":{"name":"entity.name.namespace.nushell"},"3":{"name":"keyword.other.nushell"}},"match":"^\\\\s*((?:export )?use)\\\\s+([\\\\w\\\\-]+|\\"[\\\\w\\\\- ]+\\"|'[\\\\w\\\\- ]+')(?:\\\\s+([\\\\w\\\\-]+|\\"[\\\\w\\\\- ]+\\"|'[\\\\w\\\\- ]+'|\\\\*))?\\\\s*;?$"},{"begin":"^\\\\s*((?:export )?use)\\\\s+([\\\\w\\\\-]+|\\"[\\\\w\\\\- ]+\\"|'[\\\\w\\\\- ]+')\\\\s*\\\\[","beginCaptures":{"1":{"name":"entity.name.function.nushell"},"2":{"name":"entity.name.namespace.nushell"}},"end":"(\\\\])\\\\s*;?\\\\s*$","endCaptures":{"1":{"name":"meta.brace.square.end.nushell"}},"patterns":[{"captures":{"1":{"name":"keyword.other.nushell"}},"match":"([\\\\w\\\\-]+|\\"[\\\\w\\\\- ]+\\"|'[\\\\w\\\\- ]+'|\\\\*),?"},{"include":"#comment"}]},{"captures":{"2":{"name":"entity.name.function.nushell"},"3":{"name":"string.bare.nushell","patterns":[{"captures":{"1":{"name":"entity.name.namespace.nushell"}},"match":"([\\\\w\\\\- ]+)(?:\\\\.nu)?(?=$|\\"|')"}]},"4":{"name":"keyword.other.nushell"}},"match":"(?<path>(?:/|\\\\\\\\|~[\\\\/\\\\\\\\]|\\\\.\\\\.?[\\\\/\\\\\\\\])?(?:[^\\\\/\\\\\\\\]+[\\\\/\\\\\\\\])*[\\\\w\\\\- ]+(?:\\\\.nu)?){0}^\\\\s*((?:export )?use)\\\\s+(\\"\\\\g<path>\\"|'\\\\g<path>\\\\'|(?![\\"'])\\\\g<path>)(?:\\\\s+([\\\\w\\\\-]+|\\"[\\\\w\\\\- ]+\\"|'[^']+'|\\\\*))?\\\\s*;?$"},{"begin":"(?<path>(?:/|\\\\\\\\|~[\\\\/\\\\\\\\]|\\\\.\\\\.?[\\\\/\\\\\\\\])?(?:[^\\\\/\\\\\\\\]+[\\\\/\\\\\\\\])*[\\\\w\\\\- ]+(?:\\\\.nu)?){0}^\\\\s*((?:export )?use)\\\\s+(\\"\\\\g<path>\\"|'\\\\g<path>\\\\'|(?![\\"'])\\\\g<path>)\\\\s+\\\\[","beginCaptures":{"2":{"name":"entity.name.function.nushell"},"3":{"name":"string.bare.nushell","patterns":[{"captures":{"1":{"name":"entity.name.namespace.nushell"}},"match":"([\\\\w\\\\- ]+)(?:\\\\.nu)?(?=$|\\"|')"}]}},"end":"(\\\\])\\\\s*;?\\\\s*$","endCaptures":{"1":{"name":"meta.brace.square.end.nushell"}},"patterns":[{"captures":{"0":{"name":"keyword.other.nushell"}},"match":"([\\\\w\\\\-]+|\\"[\\\\w\\\\- ]+\\"|'[\\\\w\\\\- ]+'|\\\\*),?"},{"include":"#comment"}]},{"captures":{"0":{"name":"entity.name.function.nushell"}},"match":"^\\\\s*(?:export )?use\\\\b"}]},"value":{"patterns":[{"include":"#variables"},{"include":"#variable-fields"},{"include":"#control-keywords"},{"include":"#constant-value"},{"include":"#table"},{"include":"#operators"},{"include":"#paren-expression"},{"include":"#braced-expression"},{"include":"#string"},{"include":"#comment"}]},"variable-fields":{"match":"(?<=\\\\)|\\\\}|\\\\])(?:\\\\.(?:[\\\\w-]+|\\"[\\\\w\\\\- ]+\\"))+","name":"variable.other.nushell"},"variables":{"captures":{"1":{"patterns":[{"include":"#internal-variables"},{"match":"\\\\$.+","name":"variable.other.nushell"}]},"2":{"name":"variable.other.nushell"}},"match":"(\\\\$[a-zA-Z0-9_]+)((?:\\\\.(?:[\\\\w-]+|\\"[\\\\w\\\\- ]+\\"))*)"}},"scopeName":"source.nushell","aliases":["nu"]}`)),Zre=[Hre]});var RR={};x(RR,{default:()=>Wre});var Yre,Wre,jR=_(()=>{Yre=Object.freeze(JSON.parse(`{"displayName":"Objective-C","name":"objective-c","patterns":[{"include":"#anonymous_pattern_1"},{"include":"#anonymous_pattern_2"},{"include":"#anonymous_pattern_3"},{"include":"#anonymous_pattern_4"},{"include":"#anonymous_pattern_5"},{"include":"#apple_foundation_functional_macros"},{"include":"#anonymous_pattern_7"},{"include":"#anonymous_pattern_8"},{"include":"#anonymous_pattern_9"},{"include":"#anonymous_pattern_10"},{"include":"#anonymous_pattern_11"},{"include":"#anonymous_pattern_12"},{"include":"#anonymous_pattern_13"},{"include":"#anonymous_pattern_14"},{"include":"#anonymous_pattern_15"},{"include":"#anonymous_pattern_16"},{"include":"#anonymous_pattern_17"},{"include":"#anonymous_pattern_18"},{"include":"#anonymous_pattern_19"},{"include":"#anonymous_pattern_20"},{"include":"#anonymous_pattern_21"},{"include":"#anonymous_pattern_22"},{"include":"#anonymous_pattern_23"},{"include":"#anonymous_pattern_24"},{"include":"#anonymous_pattern_25"},{"include":"#anonymous_pattern_26"},{"include":"#anonymous_pattern_27"},{"include":"#anonymous_pattern_28"},{"include":"#anonymous_pattern_29"},{"include":"#anonymous_pattern_30"},{"include":"#bracketed_content"},{"include":"#c_lang"}],"repository":{"anonymous_pattern_1":{"begin":"((@)(interface|protocol))(?!.+;)\\\\s+([A-Za-z_][A-Za-z0-9_]*)\\\\s*((:)(?:\\\\s*)([A-Za-z][A-Za-z0-9]*))?(\\\\s|\\\\n)?","captures":{"1":{"name":"storage.type.objc"},"2":{"name":"punctuation.definition.storage.type.objc"},"4":{"name":"entity.name.type.objc"},"6":{"name":"punctuation.definition.entity.other.inherited-class.objc"},"7":{"name":"entity.other.inherited-class.objc"},"8":{"name":"meta.divider.objc"},"9":{"name":"meta.inherited-class.objc"}},"contentName":"meta.scope.interface.objc","end":"((@)end)\\\\b","name":"meta.interface-or-protocol.objc","patterns":[{"include":"#interface_innards"}]},"anonymous_pattern_10":{"captures":{"1":{"name":"punctuation.definition.keyword.objc"}},"match":"(@)(defs|encode)\\\\b","name":"keyword.other.objc"},"anonymous_pattern_11":{"match":"\\\\bid\\\\b","name":"storage.type.id.objc"},"anonymous_pattern_12":{"match":"\\\\b(IBOutlet|IBAction|BOOL|SEL|id|unichar|IMP|Class|instancetype)\\\\b","name":"storage.type.objc"},"anonymous_pattern_13":{"captures":{"1":{"name":"punctuation.definition.storage.type.objc"}},"match":"(@)(class|protocol)\\\\b","name":"storage.type.objc"},"anonymous_pattern_14":{"begin":"((@)selector)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.type.objc"},"2":{"name":"punctuation.definition.storage.type.objc"},"3":{"name":"punctuation.definition.storage.type.objc"}},"contentName":"meta.selector.method-name.objc","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.storage.type.objc"}},"name":"meta.selector.objc","patterns":[{"captures":{"1":{"name":"punctuation.separator.arguments.objc"}},"match":"\\\\b(?:[a-zA-Z_:][\\\\w]*)+","name":"support.function.any-method.name-of-parameter.objc"}]},"anonymous_pattern_15":{"captures":{"1":{"name":"punctuation.definition.storage.modifier.objc"}},"match":"(@)(synchronized|public|package|private|protected)\\\\b","name":"storage.modifier.objc"},"anonymous_pattern_16":{"match":"\\\\b(YES|NO|Nil|nil)\\\\b","name":"constant.language.objc"},"anonymous_pattern_17":{"match":"\\\\bNSApp\\\\b","name":"support.variable.foundation.objc"},"anonymous_pattern_18":{"captures":{"1":{"name":"punctuation.whitespace.support.function.cocoa.leopard.objc"},"2":{"name":"support.function.cocoa.leopard.objc"}},"match":"(\\\\s*)\\\\b(NS(Rect(ToCGRect|FromCGRect)|MakeCollectable|S(tringFromProtocol|ize(ToCGSize|FromCGSize))|Draw(NinePartImage|ThreePartImage)|P(oint(ToCGPoint|FromCGPoint)|rotocolFromString)|EventMaskFromType|Value))\\\\b"},"anonymous_pattern_19":{"captures":{"1":{"name":"punctuation.whitespace.support.function.leading.cocoa.objc"},"2":{"name":"support.function.cocoa.objc"}},"match":"(\\\\s*)\\\\b(NS(R(ound(DownToMultipleOfPageSize|UpToMultipleOfPageSize)|un(CriticalAlertPanel(RelativeToWindow)?|InformationalAlertPanel(RelativeToWindow)?|AlertPanel(RelativeToWindow)?)|e(set(MapTable|HashTable)|c(ycleZone|t(Clip(List)?|F(ill(UsingOperation|List(UsingOperation|With(Grays|Colors(UsingOperation)?))?)?|romString))|ordAllocationEvent)|turnAddress|leaseAlertPanel|a(dPixel|l(MemoryAvailable|locateCollectable))|gisterServicesProvider)|angeFromString)|Get(SizeAndAlignment|CriticalAlertPanel|InformationalAlertPanel|UncaughtExceptionHandler|FileType(s)?|WindowServerMemory|AlertPanel)|M(i(n(X|Y)|d(X|Y))|ouseInRect|a(p(Remove|Get|Member|Insert(IfAbsent|KnownAbsent)?)|ke(R(ect|ange)|Size|Point)|x(Range|X|Y)))|B(itsPer(SampleFromDepth|PixelFromDepth)|e(stDepth|ep|gin(CriticalAlertSheet|InformationalAlertSheet|AlertSheet)))|S(ho(uldRetainWithZone|w(sServicesMenuItem|AnimationEffect))|tringFrom(R(ect|ange)|MapTable|S(ize|elector)|HashTable|Class|Point)|izeFromString|e(t(ShowsServicesMenuItem|ZoneName|UncaughtExceptionHandler|FocusRingStyle)|lectorFromString|archPathForDirectoriesInDomains)|wap(Big(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|Short|Host(ShortTo(Big|Little)|IntTo(Big|Little)|DoubleTo(Big|Little)|FloatTo(Big|Little)|Long(To(Big|Little)|LongTo(Big|Little)))|Int|Double|Float|L(ittle(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|ong(Long)?)))|H(ighlightRect|o(stByteOrder|meDirectory(ForUser)?)|eight|ash(Remove|Get|Insert(IfAbsent|KnownAbsent)?)|FSType(CodeFromFileType|OfFile))|N(umberOfColorComponents|ext(MapEnumeratorPair|HashEnumeratorItem))|C(o(n(tainsRect|vert(GlyphsToPackedGlyphs|Swapped(DoubleToHost|FloatToHost)|Host(DoubleToSwapped|FloatToSwapped)))|unt(MapTable|HashTable|Frames|Windows(ForContext)?)|py(M(emoryPages|apTableWithZone)|Bits|HashTableWithZone|Object)|lorSpaceFromDepth|mpare(MapTables|HashTables))|lassFromString|reate(MapTable(WithZone)?|HashTable(WithZone)?|Zone|File(namePboardType|ContentsPboardType)))|TemporaryDirectory|I(s(ControllerMarker|EmptyRect|FreedObject)|n(setRect|crementExtraRefCount|te(r(sect(sRect|ionR(ect|ange))|faceStyleForKey)|gralRect)))|Zone(Realloc|Malloc|Name|Calloc|Fr(omPointer|ee))|O(penStepRootDirectory|ffsetRect)|D(i(sableScreenUpdates|videRect)|ottedFrameRect|e(c(imal(Round|Multiply|S(tring|ubtract)|Normalize|Co(py|mpa(ct|re))|IsNotANumber|Divide|Power|Add)|rementExtraRefCountWasZero)|faultMallocZone|allocate(MemoryPages|Object))|raw(Gr(oove|ayBezel)|B(itmap|utton)|ColorTiledRects|TiledRects|DarkBezel|W(hiteBezel|indowBackground)|LightBezel))|U(serName|n(ionR(ect|ange)|registerServicesProvider)|pdateDynamicServices)|Java(Bundle(Setup|Cleanup)|Setup(VirtualMachine)?|Needs(ToLoadClasses|VirtualMachine)|ClassesF(orBundle|romPath)|ObjectNamedInPath|ProvidesClasses)|P(oint(InRect|FromString)|erformService|lanarFromDepth|ageSize)|E(n(d(MapTableEnumeration|HashTableEnumeration)|umerate(MapTable|HashTable)|ableScreenUpdates)|qual(R(ects|anges)|Sizes|Points)|raseRect|xtraRefCount)|F(ileTypeForHFSTypeCode|ullUserName|r(ee(MapTable|HashTable)|ame(Rect(WithWidth(UsingOperation)?)?|Address)))|Wi(ndowList(ForContext)?|dth)|Lo(cationInRange|g(v|PageSize)?)|A(ccessibility(R(oleDescription(ForUIElement)?|aiseBadArgumentException)|Unignored(Children(ForOnlyChild)?|Descendant|Ancestor)|PostNotification|ActionDescription)|pplication(Main|Load)|vailableWindowDepths|ll(MapTable(Values|Keys)|HashTableObjects|ocate(MemoryPages|Collectable|Object)))))\\\\b"},"anonymous_pattern_2":{"begin":"((@)(implementation))\\\\s+([A-Za-z_][A-Za-z0-9_]*)\\\\s*(?::\\\\s*([A-Za-z][A-Za-z0-9]*))?","captures":{"1":{"name":"storage.type.objc"},"2":{"name":"punctuation.definition.storage.type.objc"},"4":{"name":"entity.name.type.objc"},"5":{"name":"entity.other.inherited-class.objc"}},"contentName":"meta.scope.implementation.objc","end":"((@)end)\\\\b","name":"meta.implementation.objc","patterns":[{"include":"#implementation_innards"}]},"anonymous_pattern_20":{"match":"\\\\bNS(RuleEditor|G(arbageCollector|radient)|MapTable|HashTable|Co(ndition|llectionView(Item)?)|T(oolbarItemGroup|extInputClient|r(eeNode|ackingArea))|InvocationOperation|Operation(Queue)?|D(ictionaryController|ockTile)|P(ointer(Functions|Array)|athC(o(ntrol(Delegate)?|mponentCell)|ell(Delegate)?)|r(intPanelAccessorizing|edicateEditor(RowTemplate)?))|ViewController|FastEnumeration|Animat(ionContext|ablePropertyContainer))\\\\b","name":"support.class.cocoa.leopard.objc"},"anonymous_pattern_21":{"match":"\\\\bNS(R(u(nLoop|ler(Marker|View))|e(sponder|cursiveLock|lativeSpecifier)|an(domSpecifier|geSpecifier))|G(etCommand|lyph(Generator|Storage|Info)|raphicsContext)|XML(Node|D(ocument|TD(Node)?)|Parser|Element)|M(iddleSpecifier|ov(ie(View)?|eCommand)|utable(S(tring|et)|C(haracterSet|opying)|IndexSet|D(ictionary|ata)|URLRequest|ParagraphStyle|A(ttributedString|rray))|e(ssagePort(NameServer)?|nu(Item(Cell)?|View)?|t(hodSignature|adata(Item|Query(ResultGroup|AttributeValueTuple)?)))|a(ch(BootstrapServer|Port)|trix))|B(itmapImageRep|ox|u(ndle|tton(Cell)?)|ezierPath|rowser(Cell)?)|S(hadow|c(anner|r(ipt(SuiteRegistry|C(o(ercionHandler|mmand(Description)?)|lassDescription)|ObjectSpecifier|ExecutionContext|WhoseTest)|oll(er|View)|een))|t(epper(Cell)?|atus(Bar|Item)|r(ing|eam))|imple(HorizontalTypesetter|CString)|o(cketPort(NameServer)?|und|rtDescriptor)|p(e(cifierTest|ech(Recognizer|Synthesizer)|ll(Server|Checker))|litView)|e(cureTextField(Cell)?|t(Command)?|archField(Cell)?|rializer|gmentedC(ontrol|ell))|lider(Cell)?|avePanel)|H(ost|TTP(Cookie(Storage)?|URLResponse)|elpManager)|N(ib(Con(nector|trolConnector)|OutletConnector)?|otification(Center|Queue)?|u(ll|mber(Formatter)?)|etService(Browser)?|ameSpecifier)|C(ha(ngeSpelling|racterSet)|o(n(stantString|nection|trol(ler)?|ditionLock)|d(ing|er)|unt(Command|edSet)|pying|lor(Space|P(ick(ing(Custom|Default)|er)|anel)|Well|List)?|m(p(oundPredicate|arisonPredicate)|boBox(Cell)?))|u(stomImageRep|rsor)|IImageRep|ell|l(ipView|o(seCommand|neCommand)|assDescription)|a(ched(ImageRep|URLResponse)|lendar(Date)?)|reateCommand)|T(hread|ypesetter|ime(Zone|r)|o(olbar(Item(Validations)?)?|kenField(Cell)?)|ext(Block|Storage|Container|Tab(le(Block)?)?|Input|View|Field(Cell)?|List|Attachment(Cell)?)?|a(sk|b(le(Header(Cell|View)|Column|View)|View(Item)?))|reeController)|I(n(dex(S(pecifier|et)|Path)|put(Manager|S(tream|erv(iceProvider|er(MouseTracker)?)))|vocation)|gnoreMisspelledWords|mage(Rep|Cell|View)?)|O(ut(putStream|lineView)|pen(GL(Context|Pixel(Buffer|Format)|View)|Panel)|bj(CTypeSerializationCallBack|ect(Controller)?))|D(i(st(antObject(Request)?|ributed(NotificationCenter|Lock))|ctionary|rectoryEnumerator)|ocument(Controller)?|e(serializer|cimalNumber(Behaviors|Handler)?|leteCommand)|at(e(Components|Picker(Cell)?|Formatter)?|a)|ra(wer|ggingInfo))|U(ser(InterfaceValidations|Defaults(Controller)?)|RL(Re(sponse|quest)|Handle(Client)?|C(onnection|ache|redential(Storage)?)|Download(Delegate)?|Prot(ocol(Client)?|ectionSpace)|AuthenticationChallenge(Sender)?)?|n(iqueIDSpecifier|doManager|archiver))|P(ipe|o(sitionalSpecifier|pUpButton(Cell)?|rt(Message|NameServer|Coder)?)|ICTImageRep|ersistentDocument|DFImageRep|a(steboard|nel|ragraphStyle|geLayout)|r(int(Info|er|Operation|Panel)|o(cessInfo|tocolChecker|perty(Specifier|ListSerialization)|gressIndicator|xy)|edicate))|E(numerator|vent|PSImageRep|rror|x(ception|istsCommand|pression))|V(iew(Animation)?|al(idated(ToobarItem|UserInterfaceItem)|ue(Transformer)?))|Keyed(Unarchiver|Archiver)|Qui(ckDrawView|tCommand)|F(ile(Manager|Handle|Wrapper)|o(nt(Manager|Descriptor|Panel)?|rm(Cell|atter)))|W(hoseSpecifier|indow(Controller)?|orkspace)|L(o(c(k(ing)?|ale)|gicalTest)|evelIndicator(Cell)?|ayoutManager)|A(ssertionHandler|nimation|ctionCell|ttributedString|utoreleasePool|TSTypesetter|ppl(ication|e(Script|Event(Manager|Descriptor)))|ffineTransform|lert|r(chiver|ray(Controller)?)))\\\\b","name":"support.class.cocoa.objc"},"anonymous_pattern_22":{"match":"\\\\bNS(R(oundingMode|ule(Editor(RowType|NestingMode)|rOrientation)|e(questUserAttentionType|lativePosition))|G(lyphInscription|radientDrawingOptions)|XML(NodeKind|D(ocumentContentKind|TDNodeKind)|ParserError)|M(ultibyteGlyphPacking|apTableOptions)|B(itmapFormat|oxType|ezierPathElement|ackgroundStyle|rowserDropOperation)|S(tr(ing(CompareOptions|DrawingOptions|EncodingConversionOptions)|eam(Status|Event))|p(eechBoundary|litViewDividerStyle)|e(archPathD(irectory|omainMask)|gmentS(tyle|witchTracking))|liderType|aveOptions)|H(TTPCookieAcceptPolicy|ashTableOptions)|N(otification(SuspensionBehavior|Coalescing)|umberFormatter(RoundingMode|Behavior|Style|PadPosition)|etService(sError|Options))|C(haracterCollection|o(lor(RenderingIntent|SpaceModel|PanelMode)|mp(oundPredicateType|arisonPredicateModifier))|ellStateValue|al(culationError|endarUnit))|T(ypesetterControlCharacterAction|imeZoneNameStyle|e(stComparisonOperation|xt(Block(Dimension|V(erticalAlignment|alueType)|Layer)|TableLayoutAlgorithm|FieldBezelStyle))|ableView(SelectionHighlightStyle|ColumnAutoresizingStyle)|rackingAreaOptions)|I(n(sertionPosition|te(rfaceStyle|ger))|mage(RepLoadStatus|Scaling|CacheMode|FrameStyle|LoadStatus|Alignment))|Ope(nGLPixelFormatAttribute|rationQueuePriority)|Date(Picker(Mode|Style)|Formatter(Behavior|Style))|U(RL(RequestCachePolicy|HandleStatus|C(acheStoragePolicy|redentialPersistence))|Integer)|P(o(stingStyle|int(ingDeviceType|erFunctionsOptions)|pUpArrowPosition)|athStyle|r(int(ing(Orientation|PaginationMode)|erTableStatus|PanelOptions)|opertyList(MutabilityOptions|Format)|edicateOperatorType))|ExpressionType|KeyValue(SetMutationKind|Change)|QTMovieLoopMode|F(indPanel(SubstringMatchType|Action)|o(nt(RenderingMode|FamilyClass)|cusRingPlacement))|W(hoseSubelementIdentifier|ind(ingRule|ow(B(utton|ackingLocation)|SharingType|CollectionBehavior)))|L(ine(MovementDirection|SweepDirection|CapStyle|JoinStyle)|evelIndicatorStyle)|Animation(BlockingMode|Curve))\\\\b","name":"support.type.cocoa.leopard.objc"},"anonymous_pattern_23":{"match":"\\\\bC(I(Sampler|Co(ntext|lor)|Image(Accumulator)?|PlugIn(Registration)?|Vector|Kernel|Filter(Generator|Shape)?)|A(Renderer|MediaTiming(Function)?|BasicAnimation|ScrollLayer|Constraint(LayoutManager)?|T(iledLayer|extLayer|rans(ition|action))|OpenGLLayer|PropertyAnimation|KeyframeAnimation|Layer|A(nimation(Group)?|ction)))\\\\b","name":"support.class.quartz.objc"},"anonymous_pattern_24":{"match":"\\\\bC(G(Float|Point|Size|Rect)|IFormat|AConstraintAttribute)\\\\b","name":"support.type.quartz.objc"},"anonymous_pattern_25":{"match":"\\\\bNS(R(ect(Edge)?|ange)|G(lyph(Relation|LayoutMode)?|radientType)|M(odalSession|a(trixMode|p(Table|Enumerator)))|B(itmapImageFileType|orderType|uttonType|ezelStyle|ackingStoreType|rowserColumnResizingType)|S(cr(oll(er(Part|Arrow)|ArrowPosition)|eenAuxiliaryOpaque)|tringEncoding|ize|ocketNativeHandle|election(Granularity|Direction|Affinity)|wapped(Double|Float)|aveOperationType)|Ha(sh(Table|Enumerator)|ndler(2)?)|C(o(ntrol(Size|Tint)|mp(ositingOperation|arisonResult))|ell(State|Type|ImagePosition|Attribute))|T(hreadPrivate|ypesetterGlyphInfo|i(ckMarkPosition|tlePosition|meInterval)|o(ol(TipTag|bar(SizeMode|DisplayMode))|kenStyle)|IFFCompression|ext(TabType|Alignment)|ab(State|leViewDropOperation|ViewType)|rackingRectTag)|ImageInterpolation|Zone|OpenGL(ContextAuxiliary|PixelFormatAuxiliary)|D(ocumentChangeType|atePickerElementFlags|ra(werState|gOperation))|UsableScrollerParts|P(oint|r(intingPageOrder|ogressIndicator(Style|Th(ickness|readInfo))))|EventType|KeyValueObservingOptions|Fo(nt(SymbolicTraits|TraitMask|Action)|cusRingType)|W(indow(OrderingMode|Depth)|orkspace(IconCreationOptions|LaunchOptions)|ritingDirection)|L(ineBreakMode|ayout(Status|Direction))|A(nimation(Progress|Effect)|ppl(ication(TerminateReply|DelegateReply|PrintReply)|eEventManagerSuspensionID)|ffineTransformStruct|lertStyle))\\\\b","name":"support.type.cocoa.objc"},"anonymous_pattern_26":{"match":"\\\\bNS(NotFound|Ordered(Ascending|Descending|Same))\\\\b","name":"support.constant.cocoa.objc"},"anonymous_pattern_27":{"match":"\\\\bNS(MenuDidBeginTracking|ViewDidUpdateTrackingAreas)?Notification\\\\b","name":"support.constant.notification.cocoa.leopard.objc"},"anonymous_pattern_28":{"match":"\\\\bNS(Menu(Did(RemoveItem|SendAction|ChangeItem|EndTracking|AddItem)|WillSendAction)|S(ystemColorsDidChange|plitView(DidResizeSubviews|WillResizeSubviews))|C(o(nt(extHelpModeDid(Deactivate|Activate)|rolT(intDidChange|extDid(BeginEditing|Change|EndEditing)))|lor(PanelColorDidChange|ListDidChange)|mboBox(Selection(IsChanging|DidChange)|Will(Dismiss|PopUp)))|lassDescriptionNeededForClass)|T(oolbar(DidRemoveItem|WillAddItem)|ext(Storage(DidProcessEditing|WillProcessEditing)|Did(BeginEditing|Change|EndEditing)|View(DidChange(Selection|TypingAttributes)|WillChangeNotifyingTextView))|ableView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)))|ImageRepRegistryDidChange|OutlineView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)|Item(Did(Collapse|Expand)|Will(Collapse|Expand)))|Drawer(Did(Close|Open)|Will(Close|Open))|PopUpButton(CellWillPopUp|WillPopUp)|View(GlobalFrameDidChange|BoundsDidChange|F(ocusDidChange|rameDidChange))|FontSetChanged|W(indow(Did(Resi(ze|gn(Main|Key))|M(iniaturize|ove)|Become(Main|Key)|ChangeScreen(|Profile)|Deminiaturize|Update|E(ndSheet|xpose))|Will(M(iniaturize|ove)|BeginSheet|Close))|orkspace(SessionDid(ResignActive|BecomeActive)|Did(Mount|TerminateApplication|Unmount|PerformFileOperation|Wake|LaunchApplication)|Will(Sleep|Unmount|PowerOff|LaunchApplication)))|A(ntialiasThresholdChanged|ppl(ication(Did(ResignActive|BecomeActive|Hide|ChangeScreenParameters|U(nhide|pdate)|FinishLaunching)|Will(ResignActive|BecomeActive|Hide|Terminate|U(nhide|pdate)|FinishLaunching))|eEventManagerWillProcessFirstEvent)))Notification\\\\b","name":"support.constant.notification.cocoa.objc"},"anonymous_pattern_29":{"match":"\\\\bNS(RuleEditor(RowType(Simple|Compound)|NestingMode(Si(ngle|mple)|Compound|List))|GradientDraws(BeforeStartingLocation|AfterEndingLocation)|M(inusSetExpressionType|a(chPortDeallocate(ReceiveRight|SendRight|None)|pTable(StrongMemory|CopyIn|ZeroingWeakMemory|ObjectPointerPersonality)))|B(oxCustom|undleExecutableArchitecture(X86|I386|PPC(64)?)|etweenPredicateOperatorType|ackgroundStyle(Raised|Dark|L(ight|owered)))|S(tring(DrawingTruncatesLastVisibleLine|EncodingConversion(ExternalRepresentation|AllowLossy))|ubqueryExpressionType|p(e(ech(SentenceBoundary|ImmediateBoundary|WordBoundary)|llingState(GrammarFlag|SpellingFlag))|litViewDividerStyleThi(n|ck))|e(rvice(RequestTimedOutError|M(iscellaneousError|alformedServiceDictionaryError)|InvalidPasteboardDataError|ErrorM(inimum|aximum)|Application(NotFoundError|LaunchFailedError))|gmentStyle(Round(Rect|ed)|SmallSquare|Capsule|Textured(Rounded|Square)|Automatic)))|H(UDWindowMask|ashTable(StrongMemory|CopyIn|ZeroingWeakMemory|ObjectPointerPersonality))|N(oModeColorPanel|etServiceNoAutoRename)|C(hangeRedone|o(ntainsPredicateOperatorType|l(orRenderingIntent(RelativeColorimetric|Saturation|Default|Perceptual|AbsoluteColorimetric)|lectorDisabledOption))|ellHit(None|ContentArea|TrackableArea|EditableTextArea))|T(imeZoneNameStyle(S(hort(Standard|DaylightSaving)|tandard)|DaylightSaving)|extFieldDatePickerStyle|ableViewSelectionHighlightStyle(Regular|SourceList)|racking(Mouse(Moved|EnteredAndExited)|CursorUpdate|InVisibleRect|EnabledDuringMouseDrag|A(ssumeInside|ctive(In(KeyWindow|ActiveApp)|WhenFirstResponder|Always))))|I(n(tersectSetExpressionType|dexedColorSpaceModel)|mageScale(None|Proportionally(Down|UpOrDown)|AxesIndependently))|Ope(nGLPFAAllowOfflineRenderers|rationQueue(DefaultMaxConcurrentOperationCount|Priority(High|Normal|Very(High|Low)|Low)))|D(iacriticInsensitiveSearch|ownloadsDirectory)|U(nionSetExpressionType|TF(16(BigEndianStringEncoding|StringEncoding|LittleEndianStringEncoding)|32(BigEndianStringEncoding|StringEncoding|LittleEndianStringEncoding)))|P(ointerFunctions(Ma(chVirtualMemory|llocMemory)|Str(ongMemory|uctPersonality)|C(StringPersonality|opyIn)|IntegerPersonality|ZeroingWeakMemory|O(paque(Memory|Personality)|bjectP(ointerPersonality|ersonality)))|at(hStyle(Standard|NavigationBar|PopUp)|ternColorSpaceModel)|rintPanelShows(Scaling|Copies|Orientation|P(a(perSize|ge(Range|SetupAccessory))|review)))|Executable(RuntimeMismatchError|NotLoadableError|ErrorM(inimum|aximum)|L(inkError|oadError)|ArchitectureMismatchError)|KeyValueObservingOption(Initial|Prior)|F(i(ndPanelSubstringMatchType(StartsWith|Contains|EndsWith|FullWord)|leRead(TooLargeError|UnknownStringEncodingError))|orcedOrderingSearch)|Wi(ndow(BackingLocation(MainMemory|Default|VideoMemory)|Sharing(Read(Only|Write)|None)|CollectionBehavior(MoveToActiveSpace|CanJoinAllSpaces|Default))|dthInsensitiveSearch)|AggregateExpressionType)\\\\b","name":"support.constant.cocoa.leopard.objc"},"anonymous_pattern_3":{"begin":"@\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objc"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objc"}},"name":"string.quoted.double.objc","patterns":[{"include":"#string_escaped_char"},{"match":"%(\\\\d+\\\\$)?[#0\\\\- +']*((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?(\\\\.((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?)?[@]","name":"constant.other.placeholder.objc"},{"include":"#string_placeholder"}]},"anonymous_pattern_30":{"match":"\\\\bNS(R(GB(ModeColorPanel|ColorSpaceModel)|ight(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey)|ound(RectBezelStyle|Bankers|ed(BezelStyle|TokenStyle|DisclosureBezelStyle)|Down|Up|Plain|Line(CapStyle|JoinStyle))|un(StoppedResponse|ContinuesResponse|AbortedResponse)|e(s(izableWindowMask|et(CursorRectsRunLoopOrdering|FunctionKey))|ce(ssedBezelStyle|iver(sCantHandleCommandScriptError|EvaluationScriptError))|turnTextMovement|doFunctionKey|quiredArgumentsMissingScriptError|l(evancyLevelIndicatorStyle|ative(Before|After))|gular(SquareBezelStyle|ControlSize)|moveTraitFontAction)|a(n(domSubelement|geDateMode)|tingLevelIndicatorStyle|dio(ModeMatrix|Button)))|G(IFFileType|lyph(Below|Inscribe(B(elow|ase)|Over(strike|Below)|Above)|Layout(WithPrevious|A(tAPoint|gainstAPoint))|A(ttribute(BidiLevel|Soft|Inscribe|Elastic)|bove))|r(ooveBorder|eaterThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|a(y(ModeColorPanel|ColorSpaceModel)|dient(None|Con(cave(Strong|Weak)|vex(Strong|Weak)))|phiteControlTint)))|XML(N(o(tationDeclarationKind|de(CompactEmptyElement|IsCDATA|OptionsNone|Use(SingleQuotes|DoubleQuotes)|Pre(serve(NamespaceOrder|C(haracterReferences|DATA)|DTD|Prefixes|E(ntities|mptyElements)|Quotes|Whitespace|A(ttributeOrder|ll))|ttyPrint)|ExpandEmptyElement))|amespaceKind)|CommentKind|TextKind|InvalidKind|D(ocument(X(MLKind|HTMLKind|Include)|HTMLKind|T(idy(XML|HTML)|extKind)|IncludeContentTypeDeclaration|Validate|Kind)|TDKind)|P(arser(GTRequiredError|XMLDeclNot(StartedError|FinishedError)|Mi(splaced(XMLDeclarationError|CDATAEndStringError)|xedContentDeclNot(StartedError|FinishedError))|S(t(andaloneValueError|ringNot(StartedError|ClosedError))|paceRequiredError|eparatorRequiredError)|N(MTOKENRequiredError|o(t(ationNot(StartedError|FinishedError)|WellBalancedError)|DTDError)|amespaceDeclarationError|AMERequiredError)|C(haracterRef(In(DTDError|PrologError|EpilogError)|AtEOFError)|o(nditionalSectionNot(StartedError|FinishedError)|mment(NotFinishedError|ContainsDoubleHyphenError))|DATANotFinishedError)|TagNameMismatchError|In(ternalError|valid(HexCharacterRefError|C(haracter(RefError|InEntityError|Error)|onditionalSectionError)|DecimalCharacterRefError|URIError|Encoding(NameError|Error)))|OutOfMemoryError|D(ocumentStartError|elegateAbortedParseError|OCTYPEDeclNotFinishedError)|U(RI(RequiredError|FragmentError)|n(declaredEntityError|parsedEntityError|knownEncodingError|finishedTagError))|P(CDATARequiredError|ublicIdentifierRequiredError|arsedEntityRef(MissingSemiError|NoNameError|In(Internal(SubsetError|Error)|PrologError|EpilogError)|AtEOFError)|r(ocessingInstructionNot(StartedError|FinishedError)|ematureDocumentEndError))|E(n(codingNotSupportedError|tity(Ref(In(DTDError|PrologError|EpilogError)|erence(MissingSemiError|WithoutNameError)|LoopError|AtEOFError)|BoundaryError|Not(StartedError|FinishedError)|Is(ParameterError|ExternalError)|ValueRequiredError))|qualExpectedError|lementContentDeclNot(StartedError|FinishedError)|xt(ernalS(tandaloneEntityError|ubsetNotFinishedError)|raContentError)|mptyDocumentError)|L(iteralNot(StartedError|FinishedError)|T(RequiredError|SlashRequiredError)|essThanSymbolInAttributeError)|Attribute(RedefinedError|HasNoValueError|Not(StartedError|FinishedError)|ListNot(StartedError|FinishedError)))|rocessingInstructionKind)|E(ntity(GeneralKind|DeclarationKind|UnparsedKind|P(ar(sedKind|ameterKind)|redefined))|lement(Declaration(MixedKind|UndefinedKind|E(lementKind|mptyKind)|Kind|AnyKind)|Kind))|Attribute(N(MToken(sKind|Kind)|otationKind)|CDATAKind|ID(Ref(sKind|Kind)|Kind)|DeclarationKind|En(tit(yKind|iesKind)|umerationKind)|Kind))|M(i(n(XEdge|iaturizableWindowMask|YEdge|uteCalendarUnit)|terLineJoinStyle|ddleSubelement|xedState)|o(nthCalendarUnit|deSwitchFunctionKey|use(Moved(Mask)?|E(ntered(Mask)?|ventSubtype|xited(Mask)?))|veToBezierPathElement|mentary(ChangeButton|Push(Button|InButton)|Light(Button)?))|enuFunctionKey|a(c(intoshInterfaceStyle|OSRomanStringEncoding)|tchesPredicateOperatorType|ppedRead|x(XEdge|YEdge))|ACHOperatingSystem)|B(MPFileType|o(ttomTabsBezelBorder|ldFontMask|rderlessWindowMask|x(Se(condary|parator)|OldStyle|Primary))|uttLineCapStyle|e(zelBorder|velLineJoinStyle|low(Bottom|Top)|gin(sWith(Comparison|PredicateOperatorType)|FunctionKey))|lueControlTint|ack(spaceCharacter|tabTextMovement|ingStore(Retained|Buffered|Nonretained)|TabCharacter|wardsSearch|groundTab)|r(owser(NoColumnResizing|UserColumnResizing|AutoColumnResizing)|eakFunctionKey))|S(h(ift(JISStringEncoding|KeyMask)|ow(ControlGlyphs|InvisibleGlyphs)|adowlessSquareBezelStyle)|y(s(ReqFunctionKey|tem(D(omainMask|efined(Mask)?)|FunctionKey))|mbolStringEncoding)|c(a(nnedOption|le(None|ToFit|Proportionally))|r(oll(er(NoPart|Increment(Page|Line|Arrow)|Decrement(Page|Line|Arrow)|Knob(Slot)?|Arrows(M(inEnd|axEnd)|None|DefaultSetting))|Wheel(Mask)?|LockFunctionKey)|eenChangedEventType))|t(opFunctionKey|r(ingDrawing(OneShot|DisableScreenFontSubstitution|Uses(DeviceMetrics|FontLeading|LineFragmentOrigin))|eam(Status(Reading|NotOpen|Closed|Open(ing)?|Error|Writing|AtEnd)|Event(Has(BytesAvailable|SpaceAvailable)|None|OpenCompleted|E(ndEncountered|rrorOccurred)))))|i(ngle(DateMode|UnderlineStyle)|ze(DownFontAction|UpFontAction))|olarisOperatingSystem|unOSOperatingSystem|pecialPageOrder|e(condCalendarUnit|lect(By(Character|Paragraph|Word)|i(ng(Next|Previous)|onAffinity(Downstream|Upstream))|edTab|FunctionKey)|gmentSwitchTracking(Momentary|Select(One|Any)))|quareLineCapStyle|witchButton|ave(ToOperation|Op(tions(Yes|No|Ask)|eration)|AsOperation)|mall(SquareBezelStyle|C(ontrolSize|apsFontMask)|IconButtonBezelStyle))|H(ighlightModeMatrix|SBModeColorPanel|o(ur(Minute(SecondDatePickerElementFlag|DatePickerElementFlag)|CalendarUnit)|rizontalRuler|meFunctionKey)|TTPCookieAcceptPolicy(Never|OnlyFromMainDocumentDomain|Always)|e(lp(ButtonBezelStyle|KeyMask|FunctionKey)|avierFontAction)|PUXOperatingSystem)|Year(MonthDa(yDatePickerElementFlag|tePickerElementFlag)|CalendarUnit)|N(o(n(StandardCharacterSetFontMask|ZeroWindingRule|activatingPanelMask|LossyASCIIStringEncoding)|Border|t(ification(SuspensionBehavior(Hold|Coalesce|D(eliverImmediately|rop))|NoCoalescing|CoalescingOn(Sender|Name)|DeliverImmediately|PostToAllSessions)|PredicateType|EqualToPredicateOperatorType)|S(cr(iptError|ollerParts)|ubelement|pecifierError)|CellMask|T(itle|opLevelContainersSpecifierError|abs(BezelBorder|NoBorder|LineBorder))|I(nterfaceStyle|mage)|UnderlineStyle|FontChangeAction)|u(ll(Glyph|CellType)|m(eric(Search|PadKeyMask)|berFormatter(Round(Half(Down|Up|Even)|Ceiling|Down|Up|Floor)|Behavior(10|Default)|S(cientificStyle|pellOutStyle)|NoStyle|CurrencyStyle|DecimalStyle|P(ercentStyle|ad(Before(Suffix|Prefix)|After(Suffix|Prefix))))))|e(t(Services(BadArgumentError|NotFoundError|C(ollisionError|ancelledError)|TimeoutError|InvalidError|UnknownError|ActivityInProgress)|workDomainMask)|wlineCharacter|xt(StepInterfaceStyle|FunctionKey))|EXTSTEPStringEncoding|a(t(iveShortGlyphPacking|uralTextAlignment)|rrowFontMask))|C(hange(ReadOtherContents|GrayCell(Mask)?|BackgroundCell(Mask)?|Cleared|Done|Undone|Autosaved)|MYK(ModeColorPanel|ColorSpaceModel)|ircular(BezelStyle|Slider)|o(n(stantValueExpressionType|t(inuousCapacityLevelIndicatorStyle|entsCellMask|ain(sComparison|erSpecifierError)|rol(Glyph|KeyMask))|densedFontMask)|lor(Panel(RGBModeMask|GrayModeMask|HSBModeMask|C(MYKModeMask|olorListModeMask|ustomPaletteModeMask|rayonModeMask)|WheelModeMask|AllModesMask)|ListModeColorPanel)|reServiceDirectory|m(p(osite(XOR|Source(In|O(ut|ver)|Atop)|Highlight|C(opy|lear)|Destination(In|O(ut|ver)|Atop)|Plus(Darker|Lighter))|ressedFontMask)|mandKeyMask))|u(stom(SelectorPredicateOperatorType|PaletteModeColorPanel)|r(sor(Update(Mask)?|PointingDevice)|veToBezierPathElement))|e(nterT(extAlignment|abStopType)|ll(State|H(ighlighted|as(Image(Horizontal|OnLeftOrBottom)|OverlappingImage))|ChangesContents|Is(Bordered|InsetButton)|Disabled|Editable|LightsBy(Gray|Background|Contents)|AllowsMixedState))|l(ipPagination|o(s(ePathBezierPathElement|ableWindowMask)|ckAndCalendarDatePickerStyle)|ear(ControlTint|DisplayFunctionKey|LineFunctionKey))|a(seInsensitive(Search|PredicateOption)|n(notCreateScriptCommandError|cel(Button|TextMovement))|chesDirectory|lculation(NoError|Overflow|DivideByZero|Underflow|LossOfPrecision)|rriageReturnCharacter)|r(itical(Request|AlertStyle)|ayonModeColorPanel))|T(hick(SquareBezelStyle|erSquareBezelStyle)|ypesetter(Behavior|HorizontalTabAction|ContainerBreakAction|ZeroAdvancementAction|OriginalBehavior|ParagraphBreakAction|WhitespaceAction|L(ineBreakAction|atestBehavior))|i(ckMark(Right|Below|Left|Above)|tledWindowMask|meZoneDatePickerElementFlag)|o(olbarItemVisibilityPriority(Standard|High|User|Low)|pTabsBezelBorder|ggleButton)|IFF(Compression(N(one|EXT)|CCITTFAX(3|4)|OldJPEG|JPEG|PackBits|LZW)|FileType)|e(rminate(Now|Cancel|Later)|xt(Read(InapplicableDocumentTypeError|WriteErrorM(inimum|aximum))|Block(M(i(nimum(Height|Width)|ddleAlignment)|a(rgin|ximum(Height|Width)))|B(o(ttomAlignment|rder)|aselineAlignment)|Height|TopAlignment|P(ercentageValueType|adding)|Width|AbsoluteValueType)|StorageEdited(Characters|Attributes)|CellType|ured(RoundedBezelStyle|BackgroundWindowMask|SquareBezelStyle)|Table(FixedLayoutAlgorithm|AutomaticLayoutAlgorithm)|Field(RoundedBezel|SquareBezel|AndStepperDatePickerStyle)|WriteInapplicableDocumentTypeError|ListPrependEnclosingMarker))|woByteGlyphPacking|ab(Character|TextMovement|le(tP(oint(Mask|EventSubtype)?|roximity(Mask|EventSubtype)?)|Column(NoResizing|UserResizingMask|AutoresizingMask)|View(ReverseSequentialColumnAutoresizingStyle|GridNone|S(olid(HorizontalGridLineMask|VerticalGridLineMask)|equentialColumnAutoresizingStyle)|NoColumnAutoresizing|UniformColumnAutoresizingStyle|FirstColumnOnlyAutoresizingStyle|LastColumnOnlyAutoresizingStyle)))|rackModeMatrix)|I(n(sert(CharFunctionKey|FunctionKey|LineFunctionKey)|t(Type|ernalS(criptError|pecifierError))|dexSubelement|validIndexSpecifierError|formational(Request|AlertStyle)|PredicateOperatorType)|talicFontMask|SO(2022JPStringEncoding|Latin(1StringEncoding|2StringEncoding))|dentityMappingCharacterCollection|llegalTextMovement|mage(R(ight|ep(MatchesDevice|LoadStatus(ReadingHeader|Completed|InvalidData|Un(expectedEOF|knownType)|WillNeedAllData)))|Below|C(ellType|ache(BySize|Never|Default|Always))|Interpolation(High|None|Default|Low)|O(nly|verlaps)|Frame(Gr(oove|ayBezel)|Button|None|Photo)|L(oadStatus(ReadError|C(ompleted|ancelled)|InvalidData|UnexpectedEOF)|eft)|A(lign(Right|Bottom(Right|Left)?|Center|Top(Right|Left)?|Left)|bove)))|O(n(State|eByteGlyphPacking|OffButton|lyScrollerArrows)|ther(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|TextMovement)|SF1OperatingSystem|pe(n(GL(GO(Re(setLibrary|tainRenderers)|ClearFormatCache|FormatCacheSize)|PFA(R(obust|endererID)|M(inimumPolicy|ulti(sample|Screen)|PSafe|aximumPolicy)|BackingStore|S(creenMask|te(ncilSize|reo)|ingleRenderer|upersample|ample(s|Buffers|Alpha))|NoRecovery|C(o(lor(Size|Float)|mpliant)|losestPolicy)|OffScreen|D(oubleBuffer|epthSize)|PixelBuffer|VirtualScreenCount|FullScreen|Window|A(cc(umSize|elerated)|ux(Buffers|DepthStencil)|l(phaSize|lRenderers))))|StepUnicodeReservedBase)|rationNotSupportedForKeyS(criptError|pecifierError))|ffState|KButton|rPredicateType|bjC(B(itfield|oolType)|S(hortType|tr(ingType|uctType)|electorType)|NoType|CharType|ObjectType|DoubleType|UnionType|PointerType|VoidType|FloatType|Long(Type|longType)|ArrayType))|D(i(s(c(losureBezelStyle|reteCapacityLevelIndicatorStyle)|playWindowRunLoopOrdering)|acriticInsensitivePredicateOption|rect(Selection|PredicateModifier))|o(c(ModalWindowMask|ument(Directory|ationDirectory))|ubleType|wn(TextMovement|ArrowFunctionKey))|e(s(cendingPageOrder|ktopDirectory)|cimalTabStopType|v(ice(NColorSpaceModel|IndependentModifierFlagsMask)|eloper(Directory|ApplicationDirectory))|fault(ControlTint|TokenStyle)|lete(Char(acter|FunctionKey)|FunctionKey|LineFunctionKey)|moApplicationDirectory)|a(yCalendarUnit|teFormatter(MediumStyle|Behavior(10|Default)|ShortStyle|NoStyle|FullStyle|LongStyle))|ra(wer(Clos(ingState|edState)|Open(ingState|State))|gOperation(Generic|Move|None|Copy|Delete|Private|Every|Link|All)))|U(ser(CancelledError|D(irectory|omainMask)|FunctionKey)|RL(Handle(NotLoaded|Load(Succeeded|InProgress|Failed))|CredentialPersistence(None|Permanent|ForSession))|n(scaledWindowMask|cachedRead|i(codeStringEncoding|talicFontMask|fiedTitleAndToolbarWindowMask)|d(o(CloseGroupingRunLoopOrdering|FunctionKey)|e(finedDateComponent|rline(Style(Single|None|Thick|Double)|Pattern(Solid|D(ot|ash(Dot(Dot)?)?)))))|known(ColorSpaceModel|P(ointingDevice|ageOrder)|KeyS(criptError|pecifierError))|boldFontMask)|tilityWindowMask|TF8StringEncoding|p(dateWindowsRunLoopOrdering|TextMovement|ArrowFunctionKey))|J(ustifiedTextAlignment|PEG(2000FileType|FileType)|apaneseEUC(GlyphPacking|StringEncoding))|P(o(s(t(Now|erFontMask|WhenIdle|ASAP)|iti(on(Replace|Be(fore|ginning)|End|After)|ve(IntType|DoubleType|FloatType)))|pUp(NoArrow|ArrowAt(Bottom|Center))|werOffEventType|rtraitOrientation)|NGFileType|ush(InCell(Mask)?|OnPushOffButton)|e(n(TipMask|UpperSideMask|PointingDevice|LowerSideMask)|riodic(Mask)?)|P(S(caleField|tatus(Title|Field)|aveButton)|N(ote(Title|Field)|ame(Title|Field))|CopiesField|TitleField|ImageButton|OptionsButton|P(a(perFeedButton|ge(Range(To|From)|ChoiceMatrix))|reviewButton)|LayoutButton)|lainTextTokenStyle|a(useFunctionKey|ragraphSeparatorCharacter|ge(DownFunctionKey|UpFunctionKey))|r(int(ing(ReplyLater|Success|Cancelled|Failure)|ScreenFunctionKey|erTable(NotFound|OK|Error)|FunctionKey)|o(p(ertyList(XMLFormat|MutableContainers(AndLeaves)?|BinaryFormat|Immutable|OpenStepFormat)|rietaryStringEncoding)|gressIndicator(BarStyle|SpinningStyle|Preferred(SmallThickness|Thickness|LargeThickness|AquaThickness)))|e(ssedTab|vFunctionKey))|L(HeightForm|CancelButton|TitleField|ImageButton|O(KButton|rientationMatrix)|UnitsButton|PaperNameButton|WidthForm))|E(n(terCharacter|d(sWith(Comparison|PredicateOperatorType)|FunctionKey))|v(e(nOddWindingRule|rySubelement)|aluatedObjectExpressionType)|qualTo(Comparison|PredicateOperatorType)|ra(serPointingDevice|CalendarUnit|DatePickerElementFlag)|x(clude(10|QuickDrawElementsIconCreationOption)|pandedFontMask|ecuteFunctionKey))|V(i(ew(M(in(XMargin|YMargin)|ax(XMargin|YMargin))|HeightSizable|NotSizable|WidthSizable)|aPanelFontAction)|erticalRuler|a(lidationErrorM(inimum|aximum)|riableExpressionType))|Key(SpecifierEvaluationScriptError|Down(Mask)?|Up(Mask)?|PathExpressionType|Value(MinusSetMutation|SetSetMutation|Change(Re(placement|moval)|Setting|Insertion)|IntersectSetMutation|ObservingOption(New|Old)|UnionSetMutation|ValidationError))|QTMovie(NormalPlayback|Looping(BackAndForthPlayback|Playback))|F(1(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|7FunctionKey|i(nd(PanelAction(Replace(A(ndFind|ll(InSelection)?))?|S(howFindPanel|e(tFindString|lectAll(InSelection)?))|Next|Previous)|FunctionKey)|tPagination|le(Read(No(SuchFileError|PermissionError)|CorruptFileError|In(validFileNameError|applicableStringEncodingError)|Un(supportedSchemeError|knownError))|HandlingPanel(CancelButton|OKButton)|NoSuchFileError|ErrorM(inimum|aximum)|Write(NoPermissionError|In(validFileNameError|applicableStringEncodingError)|OutOfSpaceError|Un(supportedSchemeError|knownError))|LockingError)|xedPitchFontMask)|2(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|o(nt(Mo(noSpaceTrait|dernSerifsClass)|BoldTrait|S(ymbolicClass|criptsClass|labSerifsClass|ansSerifClass)|C(o(ndensedTrait|llectionApplicationOnlyMask)|larendonSerifsClass)|TransitionalSerifsClass|I(ntegerAdvancementsRenderingMode|talicTrait)|O(ldStyleSerifsClass|rnamentalsClass)|DefaultRenderingMode|U(nknownClass|IOptimizedTrait)|Panel(S(hadowEffectModeMask|t(andardModesMask|rikethroughEffectModeMask)|izeModeMask)|CollectionModeMask|TextColorEffectModeMask|DocumentColorEffectModeMask|UnderlineEffectModeMask|FaceModeMask|All(ModesMask|EffectsModeMask))|ExpandedTrait|VerticalTrait|F(amilyClassMask|reeformSerifsClass)|Antialiased(RenderingMode|IntegerAdvancementsRenderingMode))|cusRing(Below|Type(None|Default|Exterior)|Only|Above)|urByteGlyphPacking|rm(attingError(M(inimum|aximum))?|FeedCharacter))|8FunctionKey|unction(ExpressionType|KeyMask)|3(1FunctionKey|2FunctionKey|3FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey)|9FunctionKey|4FunctionKey|P(RevertButton|S(ize(Title|Field)|etButton)|CurrentField|Preview(Button|Field))|l(oat(ingPointSamplesBitmapFormat|Type)|agsChanged(Mask)?)|axButton|5FunctionKey|6FunctionKey)|W(heelModeColorPanel|indow(s(NTOperatingSystem|CP125(1StringEncoding|2StringEncoding|3StringEncoding|4StringEncoding|0StringEncoding)|95(InterfaceStyle|OperatingSystem))|M(iniaturizeButton|ovedEventType)|Below|CloseButton|ToolbarButton|ZoomButton|Out|DocumentIconButton|ExposedEventType|Above)|orkspaceLaunch(NewInstance|InhibitingBackgroundOnly|Default|PreferringClassic|WithoutA(ctivation|ddingToRecents)|A(sync|nd(Hide(Others)?|Print)|llowingClassicStartup))|eek(day(CalendarUnit|OrdinalCalendarUnit)|CalendarUnit)|a(ntsBidiLevels|rningAlertStyle)|r(itingDirection(RightToLeft|Natural|LeftToRight)|apCalendarComponents))|L(i(stModeMatrix|ne(Moves(Right|Down|Up|Left)|B(order|reakBy(C(harWrapping|lipping)|Truncating(Middle|Head|Tail)|WordWrapping))|S(eparatorCharacter|weep(Right|Down|Up|Left))|ToBezierPathElement|DoesntMove|arSlider)|teralSearch|kePredicateOperatorType|ghterFontAction|braryDirectory)|ocalDomainMask|e(ssThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|ft(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey))|a(yout(RightToLeft|NotDone|CantFit|OutOfGlyphs|Done|LeftToRight)|ndscapeOrientation)|ABColorSpaceModel)|A(sc(iiWithDoubleByteEUCGlyphPacking|endingPageOrder)|n(y(Type|PredicateModifier|EventMask)|choredSearch|imation(Blocking|Nonblocking(Threaded)?|E(ffect(DisappearingItemDefault|Poof)|ase(In(Out)?|Out))|Linear)|dPredicateType)|t(Bottom|tachmentCharacter|omicWrite|Top)|SCIIStringEncoding|d(obe(GB1CharacterCollection|CNS1CharacterCollection|Japan(1CharacterCollection|2CharacterCollection)|Korea1CharacterCollection)|dTraitFontAction|minApplicationDirectory)|uto(saveOperation|Pagination)|pp(lication(SupportDirectory|D(irectory|e(fined(Mask)?|legateReply(Success|Cancel|Failure)|activatedEventType))|ActivatedEventType)|KitDefined(Mask)?)|l(ternateKeyMask|pha(ShiftKeyMask|NonpremultipliedBitmapFormat|FirstBitmapFormat)|ert(SecondButtonReturn|ThirdButtonReturn|OtherReturn|DefaultReturn|ErrorReturn|FirstButtonReturn|AlternateReturn)|l(ScrollerParts|DomainsMask|PredicateModifier|LibrariesDirectory|ApplicationsDirectory))|rgument(sWrongScriptError|EvaluationScriptError)|bove(Bottom|Top)|WTEventType))\\\\b","name":"support.constant.cocoa.objc"},"anonymous_pattern_4":{"begin":"\\\\b(id)\\\\s*(?=<)","beginCaptures":{"1":{"name":"storage.type.objc"}},"end":"(?<=>)","name":"meta.id-with-protocol.objc","patterns":[{"include":"#protocol_list"}]},"anonymous_pattern_5":{"match":"\\\\b(NS_DURING|NS_HANDLER|NS_ENDHANDLER)\\\\b","name":"keyword.control.macro.objc"},"anonymous_pattern_7":{"captures":{"1":{"name":"punctuation.definition.keyword.objc"}},"match":"(@)(try|catch|finally|throw)\\\\b","name":"keyword.control.exception.objc"},"anonymous_pattern_8":{"captures":{"1":{"name":"punctuation.definition.keyword.objc"}},"match":"(@)(synchronized)\\\\b","name":"keyword.control.synchronize.objc"},"anonymous_pattern_9":{"captures":{"1":{"name":"punctuation.definition.keyword.objc"}},"match":"(@)(required|optional)\\\\b","name":"keyword.control.protocol-specification.objc"},"apple_foundation_functional_macros":{"begin":"(\\\\b(?:API_AVAILABLE|API_DEPRECATED|API_UNAVAILABLE|NS_AVAILABLE|NS_AVAILABLE_MAC|NS_AVAILABLE_IOS|NS_DEPRECATED|NS_DEPRECATED_MAC|NS_DEPRECATED_IOS|NS_SWIFT_NAME))(?:(?:\\\\s)+)?(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.preprocessor.apple-foundation.objc"},"2":{"name":"punctuation.section.macro.arguments.begin.bracket.round.apple-foundation.objc"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.macro.arguments.end.bracket.round.apple-foundation.objc"}},"name":"meta.preprocessor.macro.callable.apple-foundation.objc","patterns":[{"include":"#c_lang"}]},"bracketed_content":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.scope.begin.objc"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.scope.end.objc"}},"name":"meta.bracketed.objc","patterns":[{"begin":"(?=predicateWithFormat:)(?<=NSPredicate )(predicateWithFormat:)","beginCaptures":{"1":{"name":"support.function.any-method.objc"},"2":{"name":"punctuation.separator.arguments.objc"}},"end":"(?=\\\\])","name":"meta.function-call.predicate.objc","patterns":[{"captures":{"1":{"name":"punctuation.separator.arguments.objc"}},"match":"\\\\bargument(Array|s)(:)","name":"support.function.any-method.name-of-parameter.objc"},{"captures":{"1":{"name":"punctuation.separator.arguments.objc"}},"match":"\\\\b\\\\w+(:)","name":"invalid.illegal.unknown-method.objc"},{"begin":"@\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objc"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objc"}},"name":"string.quoted.double.objc","patterns":[{"match":"\\\\b(AND|OR|NOT|IN)\\\\b","name":"keyword.operator.logical.predicate.cocoa.objc"},{"match":"\\\\b(ALL|ANY|SOME|NONE)\\\\b","name":"constant.language.predicate.cocoa.objc"},{"match":"\\\\b(NULL|NIL|SELF|TRUE|YES|FALSE|NO|FIRST|LAST|SIZE)\\\\b","name":"constant.language.predicate.cocoa.objc"},{"match":"\\\\b(MATCHES|CONTAINS|BEGINSWITH|ENDSWITH|BETWEEN)\\\\b","name":"keyword.operator.comparison.predicate.cocoa.objc"},{"match":"\\\\bC(ASEINSENSITIVE|I)\\\\b","name":"keyword.other.modifier.predicate.cocoa.objc"},{"match":"\\\\b(ANYKEY|SUBQUERY|CAST|TRUEPREDICATE|FALSEPREDICATE)\\\\b","name":"keyword.other.predicate.cocoa.objc"},{"match":"\\\\\\\\(\\\\\\\\|[abefnrtv'\\"?]|[0-3]\\\\d{,2}|[4-7]\\\\d?|x[a-zA-Z0-9]+)","name":"constant.character.escape.objc"},{"match":"\\\\\\\\.","name":"invalid.illegal.unknown-escape.objc"}]},{"include":"#special_variables"},{"include":"#c_functions"},{"include":"$base"}]},{"begin":"(?=\\\\w)(?<=[\\\\w\\\\])\\"] )(\\\\w+(?:(:)|(?=\\\\])))","beginCaptures":{"1":{"name":"support.function.any-method.objc"},"2":{"name":"punctuation.separator.arguments.objc"}},"end":"(?=\\\\])","name":"meta.function-call.objc","patterns":[{"captures":{"1":{"name":"punctuation.separator.arguments.objc"}},"match":"\\\\b\\\\w+(:)","name":"support.function.any-method.name-of-parameter.objc"},{"include":"#special_variables"},{"include":"#c_functions"},{"include":"$base"}]},{"include":"#special_variables"},{"include":"#c_functions"},{"include":"$self"}]},"c_functions":{"patterns":[{"captures":{"1":{"name":"punctuation.whitespace.support.function.leading.objc"},"2":{"name":"support.function.C99.objc"}},"match":"(\\\\s*)\\\\b(hypot(f|l)?|s(scanf|ystem|nprintf|ca(nf|lb(n(f|l)?|ln(f|l)?))|i(n(h(f|l)?|f|l)?|gn(al|bit))|tr(s(tr|pn)|nc(py|at|mp)|c(spn|hr|oll|py|at|mp)|to(imax|d|u(l(l)?|max)|k|f|l(d|l)?)|error|pbrk|ftime|len|rchr|xfrm)|printf|et(jmp|vbuf|locale|buf)|qrt(f|l)?|w(scanf|printf)|rand)|n(e(arbyint(f|l)?|xt(toward(f|l)?|after(f|l)?))|an(f|l)?)|c(s(in(h(f|l)?|f|l)?|qrt(f|l)?)|cos(h(f)?|f|l)?|imag(f|l)?|t(ime|an(h(f|l)?|f|l)?)|o(s(h(f|l)?|f|l)?|nj(f|l)?|pysign(f|l)?)|p(ow(f|l)?|roj(f|l)?)|e(il(f|l)?|xp(f|l)?)|l(o(ck|g(f|l)?)|earerr)|a(sin(h(f|l)?|f|l)?|cos(h(f|l)?|f|l)?|tan(h(f|l)?|f|l)?|lloc|rg(f|l)?|bs(f|l)?)|real(f|l)?|brt(f|l)?)|t(ime|o(upper|lower)|an(h(f|l)?|f|l)?|runc(f|l)?|gamma(f|l)?|mp(nam|file))|i(s(space|n(ormal|an)|cntrl|inf|digit|u(nordered|pper)|p(unct|rint)|finite|w(space|c(ntrl|type)|digit|upper|p(unct|rint)|lower|al(num|pha)|graph|xdigit|blank)|l(ower|ess(equal|greater)?)|al(num|pha)|gr(eater(equal)?|aph)|xdigit|blank)|logb(f|l)?|max(div|abs))|di(v|fftime)|_Exit|unget(c|wc)|p(ow(f|l)?|ut(s|c(har)?|wc(har)?)|error|rintf)|e(rf(c(f|l)?|f|l)?|x(it|p(2(f|l)?|f|l|m1(f|l)?)?))|v(s(scanf|nprintf|canf|printf|w(scanf|printf))|printf|f(scanf|printf|w(scanf|printf))|w(scanf|printf)|a_(start|copy|end|arg))|qsort|f(s(canf|e(tpos|ek))|close|tell|open|dim(f|l)?|p(classify|ut(s|c|w(s|c))|rintf)|e(holdexcept|set(e(nv|xceptflag)|round)|clearexcept|testexcept|of|updateenv|r(aiseexcept|ror)|get(e(nv|xceptflag)|round))|flush|w(scanf|ide|printf|rite)|loor(f|l)?|abs(f|l)?|get(s|c|pos|w(s|c))|re(open|e|ad|xp(f|l)?)|m(in(f|l)?|od(f|l)?|a(f|l|x(f|l)?)?))|l(d(iv|exp(f|l)?)|o(ngjmp|cal(time|econv)|g(1(p(f|l)?|0(f|l)?)|2(f|l)?|f|l|b(f|l)?)?)|abs|l(div|abs|r(int(f|l)?|ound(f|l)?))|r(int(f|l)?|ound(f|l)?)|gamma(f|l)?)|w(scanf|c(s(s(tr|pn)|nc(py|at|mp)|c(spn|hr|oll|py|at|mp)|to(imax|d|u(l(l)?|max)|k|f|l(d|l)?|mbs)|pbrk|ftime|len|r(chr|tombs)|xfrm)|to(b|mb)|rtomb)|printf|mem(set|c(hr|py|mp)|move))|a(s(sert|ctime|in(h(f|l)?|f|l)?)|cos(h(f|l)?|f|l)?|t(o(i|f|l(l)?)|exit|an(h(f|l)?|2(f|l)?|f|l)?)|b(s|ort))|g(et(s|c(har)?|env|wc(har)?)|mtime)|r(int(f|l)?|ound(f|l)?|e(name|alloc|wind|m(ove|quo(f|l)?|ainder(f|l)?))|a(nd|ise))|b(search|towc)|m(odf(f|l)?|em(set|c(hr|py|mp)|move)|ktime|alloc|b(s(init|towcs|rtowcs)|towc|len|r(towc|len))))\\\\b"},{"captures":{"1":{"name":"punctuation.whitespace.function-call.leading.objc"},"2":{"name":"support.function.any-method.objc"},"3":{"name":"punctuation.definition.parameters.objc"}},"match":"(?:(?=\\\\s)(?:(?<=else|new|return)|(?<!\\\\w))(\\\\s+))?(\\\\b(?!(while|for|do|if|else|switch|catch|enumerate|return|r?iterate)\\\\s*\\\\()(?:(?!NS)[A-Za-z_][A-Za-z0-9_]*+\\\\b|::)++)\\\\s*(\\\\()","name":"meta.function-call.objc"}]},"c_lang":{"patterns":[{"include":"#preprocessor-rule-enabled"},{"include":"#preprocessor-rule-disabled"},{"include":"#preprocessor-rule-conditional"},{"include":"#comments"},{"include":"#switch_statement"},{"match":"\\\\b(break|continue|do|else|for|goto|if|_Pragma|return|while)\\\\b","name":"keyword.control.objc"},{"include":"#storage_types"},{"match":"typedef","name":"keyword.other.typedef.objc"},{"match":"\\\\bin\\\\b","name":"keyword.other.in.objc"},{"match":"\\\\b(const|extern|register|restrict|static|volatile|inline|__block)\\\\b","name":"storage.modifier.objc"},{"match":"\\\\bk[A-Z]\\\\w*\\\\b","name":"constant.other.variable.mac-classic.objc"},{"match":"\\\\bg[A-Z]\\\\w*\\\\b","name":"variable.other.readwrite.global.mac-classic.objc"},{"match":"\\\\bs[A-Z]\\\\w*\\\\b","name":"variable.other.readwrite.static.mac-classic.objc"},{"match":"\\\\b(NULL|true|false|TRUE|FALSE)\\\\b","name":"constant.language.objc"},{"include":"#operators"},{"include":"#numbers"},{"include":"#strings"},{"include":"#special_variables"},{"begin":"^\\\\s*((\\\\#)\\\\s*define)\\\\s+((?<id>[a-zA-Z_$][\\\\w$]*))(?:(\\\\()(\\\\s*\\\\g<id>\\\\s*((,)\\\\s*\\\\g<id>\\\\s*)*(?:\\\\.\\\\.\\\\.)?)(\\\\)))?","beginCaptures":{"1":{"name":"keyword.control.directive.define.objc"},"2":{"name":"punctuation.definition.directive.objc"},"3":{"name":"entity.name.function.preprocessor.objc"},"5":{"name":"punctuation.definition.parameters.begin.objc"},"6":{"name":"variable.parameter.preprocessor.objc"},"8":{"name":"punctuation.separator.parameters.objc"},"9":{"name":"punctuation.definition.parameters.end.objc"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.macro.objc","patterns":[{"include":"#preprocessor-rule-define-line-contents"}]},{"begin":"^\\\\s*((#)\\\\s*(error|warning))\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.directive.diagnostic.$3.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.diagnostic.objc","patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objc"}},"end":"\\"|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objc"}},"name":"string.quoted.double.objc","patterns":[{"include":"#line_continuation_character"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objc"}},"end":"'|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objc"}},"name":"string.quoted.single.objc","patterns":[{"include":"#line_continuation_character"}]},{"begin":"[^'\\"]","end":"(?<!\\\\\\\\)(?=\\\\s*\\\\n)","name":"string.unquoted.single.objc","patterns":[{"include":"#line_continuation_character"},{"include":"#comments"}]}]},{"begin":"^\\\\s*((#)\\\\s*(include(?:_next)?|import))\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.directive.$3.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.include.objc","patterns":[{"include":"#line_continuation_character"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objc"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objc"}},"name":"string.quoted.double.include.objc"},{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objc"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.objc"}},"name":"string.quoted.other.lt-gt.include.objc"}]},{"include":"#pragma-mark"},{"begin":"^\\\\s*((#)\\\\s*line)\\\\b","beginCaptures":{"1":{"name":"keyword.control.directive.line.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#strings"},{"include":"#numbers"},{"include":"#line_continuation_character"}]},{"begin":"^\\\\s*(?:((#)\\\\s*undef))\\\\b","beginCaptures":{"1":{"name":"keyword.control.directive.undef.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"match":"[a-zA-Z_$][\\\\w$]*","name":"entity.name.function.preprocessor.objc"},{"include":"#line_continuation_character"}]},{"begin":"^\\\\s*(?:((#)\\\\s*pragma))\\\\b","beginCaptures":{"1":{"name":"keyword.control.directive.pragma.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.pragma.objc","patterns":[{"include":"#strings"},{"match":"[a-zA-Z_$][\\\\w\\\\-$]*","name":"entity.other.attribute-name.pragma.preprocessor.objc"},{"include":"#numbers"},{"include":"#line_continuation_character"}]},{"match":"\\\\b(u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t)\\\\b","name":"support.type.sys-types.objc"},{"match":"\\\\b(pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t)\\\\b","name":"support.type.pthread.objc"},{"match":"\\\\b(int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t)\\\\b","name":"support.type.stdint.objc"},{"match":"\\\\b(noErr|kNilOptions|kInvalidID|kVariableLengthArray)\\\\b","name":"support.constant.mac-classic.objc"},{"match":"\\\\b(AbsoluteTime|Boolean|Byte|ByteCount|ByteOffset|BytePtr|CompTimeValue|ConstLogicalAddress|ConstStrFileNameParam|ConstStringPtr|Duration|Fixed|FixedPtr|Float32|Float32Point|Float64|Float80|Float96|FourCharCode|Fract|FractPtr|Handle|ItemCount|LogicalAddress|OptionBits|OSErr|OSStatus|OSType|OSTypePtr|PhysicalAddress|ProcessSerialNumber|ProcessSerialNumberPtr|ProcHandle|Ptr|ResType|ResTypePtr|ShortFixed|ShortFixedPtr|SignedByte|SInt16|SInt32|SInt64|SInt8|Size|StrFileName|StringHandle|StringPtr|TimeBase|TimeRecord|TimeScale|TimeValue|TimeValue64|UInt16|UInt32|UInt64|UInt8|UniChar|UniCharCount|UniCharCountPtr|UniCharPtr|UnicodeScalarValue|UniversalProcHandle|UniversalProcPtr|UnsignedFixed|UnsignedFixedPtr|UnsignedWide|UTF16Char|UTF32Char|UTF8Char)\\\\b","name":"support.type.mac-classic.objc"},{"match":"\\\\b([A-Za-z0-9_]+_t)\\\\b","name":"support.type.posix-reserved.objc"},{"include":"#block"},{"include":"#parens"},{"begin":"(?<!\\\\w)(?!\\\\s*(?:not|compl|sizeof|not_eq|bitand|xor|bitor|and|or|and_eq|xor_eq|or_eq|alignof|alignas|_Alignof|_Alignas|while|for|do|if|else|goto|switch|return|break|case|continue|default|void|char|short|int|signed|unsigned|long|float|double|bool|_Bool|_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|NULL|true|false|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t|struct|union|enum|typedef|auto|register|static|extern|thread_local|inline|_Noreturn|const|volatile|restrict|_Atomic)\\\\s*\\\\()(?=[a-zA-Z_]\\\\w*\\\\s*\\\\()","end":"(?<=\\\\))","name":"meta.function.objc","patterns":[{"include":"#function-innards"}]},{"include":"#line_continuation_character"},{"begin":"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\]\\\\)]))?(\\\\[)(?!\\\\])","beginCaptures":{"1":{"name":"variable.object.objc"},"2":{"name":"punctuation.definition.begin.bracket.square.objc"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.objc"}},"name":"meta.bracket.square.access.objc","patterns":[{"include":"#function-call-innards"}]},{"match":"\\\\[\\\\s*\\\\]","name":"storage.modifier.array.bracket.square.objc"},{"match":";","name":"punctuation.terminator.statement.objc"},{"match":",","name":"punctuation.separator.delimiter.objc"}],"repository":{"access-method":{"begin":"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\]\\\\)]))\\\\s*(?:(\\\\.)|(->))((?:(?:[a-zA-Z_][a-zA-Z_0-9]*)\\\\s*(?:(?:\\\\.)|(?:->)))*)\\\\s*([a-zA-Z_][a-zA-Z_0-9]*)(\\\\()","beginCaptures":{"1":{"name":"variable.object.objc"},"2":{"name":"punctuation.separator.dot-access.objc"},"3":{"name":"punctuation.separator.pointer-access.objc"},"4":{"patterns":[{"match":"\\\\.","name":"punctuation.separator.dot-access.objc"},{"match":"->","name":"punctuation.separator.pointer-access.objc"},{"match":"[a-zA-Z_][a-zA-Z_0-9]*","name":"variable.object.objc"},{"match":".+","name":"everything.else.objc"}]},"5":{"name":"entity.name.function.member.objc"},"6":{"name":"punctuation.section.arguments.begin.bracket.round.function.member.objc"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.function.member.objc"}},"name":"meta.function-call.member.objc","patterns":[{"include":"#function-call-innards"}]},"block":{"patterns":[{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objc"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objc"}},"name":"meta.block.objc","patterns":[{"include":"#block_innards"}]}]},"block_innards":{"patterns":[{"include":"#preprocessor-rule-enabled-block"},{"include":"#preprocessor-rule-disabled-block"},{"include":"#preprocessor-rule-conditional-block"},{"include":"#method_access"},{"include":"#member_access"},{"include":"#c_function_call"},{"begin":"(?:(?:(?=\\\\s)(?<!else|new|return)(?<=\\\\w)\\\\s+(and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)))((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"variable.other.objc"},"2":{"name":"punctuation.section.parens.begin.bracket.round.initialization.objc"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.initialization.objc"}},"name":"meta.initialization.objc","patterns":[{"include":"#function-call-innards"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objc"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objc"}},"patterns":[{"include":"#block_innards"}]},{"include":"#parens-block"},{"include":"$base"}]},"c_function_call":{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\s*\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\]))\\\\s*\\\\()","end":"(?<=\\\\))(?!\\\\w)","name":"meta.function-call.objc","patterns":[{"include":"#function-call-innards"}]},"case_statement":{"begin":"((?<!\\\\w)case(?!\\\\w))","beginCaptures":{"1":{"name":"keyword.control.case.objc"}},"end":"(:)","endCaptures":{"1":{"name":"punctuation.separator.case.objc"}},"name":"meta.conditional.case.objc","patterns":[{"include":"#conditional_context"}]},"comments":{"patterns":[{"captures":{"1":{"name":"meta.toc-list.banner.block.objc"}},"match":"^/\\\\* =(\\\\s*.*?)\\\\s*= \\\\*/$\\\\n?","name":"comment.block.objc"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.objc"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.objc"}},"name":"comment.block.objc"},{"captures":{"1":{"name":"meta.toc-list.banner.line.objc"}},"match":"^// =(\\\\s*.*?)\\\\s*=\\\\s*$\\\\n?","name":"comment.line.banner.objc"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.objc"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.objc"}},"end":"(?=\\\\n)","name":"comment.line.double-slash.objc","patterns":[{"include":"#line_continuation_character"}]}]}]},"conditional_context":{"patterns":[{"include":"$base"},{"include":"#block_innards"}]},"default_statement":{"begin":"((?<!\\\\w)default(?!\\\\w))","beginCaptures":{"1":{"name":"keyword.control.default.objc"}},"end":"(:)","endCaptures":{"1":{"name":"punctuation.separator.case.default.objc"}},"name":"meta.conditional.case.objc","patterns":[{"include":"#conditional_context"}]},"disabled":{"begin":"^\\\\s*#\\\\s*if(n?def)?\\\\b.*$","end":"^\\\\s*#\\\\s*endif\\\\b","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},"function-call-innards":{"patterns":[{"include":"#comments"},{"include":"#storage_types"},{"include":"#method_access"},{"include":"#member_access"},{"include":"#operators"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.objc"},"2":{"name":"punctuation.section.arguments.begin.bracket.round.objc"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.objc"}},"patterns":[{"include":"#function-call-innards"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objc"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objc"}},"patterns":[{"include":"#function-call-innards"}]},{"include":"#block_innards"}]},"function-innards":{"patterns":[{"include":"#comments"},{"include":"#storage_types"},{"include":"#operators"},{"include":"#vararg_ellipses"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.objc"},"2":{"name":"punctuation.section.parameters.begin.bracket.round.objc"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parameters.end.bracket.round.objc"}},"name":"meta.function.definition.parameters.objc","patterns":[{"include":"#probably_a_parameter"},{"include":"#function-innards"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objc"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objc"}},"patterns":[{"include":"#function-innards"}]},{"include":"$base"}]},"line_continuation_character":{"patterns":[{"captures":{"1":{"name":"constant.character.escape.line-continuation.objc"}},"match":"(\\\\\\\\)\\\\n"}]},"member_access":{"captures":{"1":{"patterns":[{"include":"#special_variables"},{"match":"(.+)","name":"variable.other.object.access.objc"}]},"2":{"name":"punctuation.separator.dot-access.objc"},"3":{"name":"punctuation.separator.pointer-access.objc"},"4":{"patterns":[{"include":"#member_access"},{"include":"#method_access"},{"captures":{"1":{"patterns":[{"include":"#special_variables"},{"match":"(.+)","name":"variable.other.object.access.objc"}]},"2":{"name":"punctuation.separator.dot-access.objc"},"3":{"name":"punctuation.separator.pointer-access.objc"}},"match":"((?:[a-zA-Z_]\\\\w*|(?<=\\\\]|\\\\)))\\\\s*)(?:((?:\\\\.\\\\*|\\\\.))|((?:->\\\\*|->)))"}]},"5":{"name":"variable.other.member.objc"}},"match":"((?:[a-zA-Z_]\\\\w*|(?<=\\\\]|\\\\)))\\\\s*)(?:((?:\\\\.\\\\*|\\\\.))|((?:->\\\\*|->)))((?:[a-zA-Z_]\\\\w*\\\\s*(?-mix:(?:(?:\\\\.\\\\*|\\\\.))|(?:(?:->\\\\*|->)))\\\\s*)*)\\\\s*(\\\\b(?!(?:void|char|short|int|signed|unsigned|long|float|double|bool|_Bool|_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t))[a-zA-Z_]\\\\w*\\\\b(?!\\\\())"},"method_access":{"begin":"((?:[a-zA-Z_]\\\\w*|(?<=\\\\]|\\\\)))\\\\s*)(?:((?:\\\\.\\\\*|\\\\.))|((?:->\\\\*|->)))((?:[a-zA-Z_]\\\\w*\\\\s*(?-mix:(?:(?:\\\\.\\\\*|\\\\.))|(?:(?:->\\\\*|->)))\\\\s*)*)\\\\s*([a-zA-Z_]\\\\w*)(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#special_variables"},{"match":"(.+)","name":"variable.other.object.access.objc"}]},"2":{"name":"punctuation.separator.dot-access.objc"},"3":{"name":"punctuation.separator.pointer-access.objc"},"4":{"patterns":[{"include":"#member_access"},{"include":"#method_access"},{"captures":{"1":{"patterns":[{"include":"#special_variables"},{"match":"(.+)","name":"variable.other.object.access.objc"}]},"2":{"name":"punctuation.separator.dot-access.objc"},"3":{"name":"punctuation.separator.pointer-access.objc"}},"match":"((?:[a-zA-Z_]\\\\w*|(?<=\\\\]|\\\\)))\\\\s*)(?:((?:\\\\.\\\\*|\\\\.))|((?:->\\\\*|->)))"}]},"5":{"name":"entity.name.function.member.objc"},"6":{"name":"punctuation.section.arguments.begin.bracket.round.function.member.objc"}},"contentName":"meta.function-call.member.objc","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.arguments.end.bracket.round.function.member.objc"}},"patterns":[{"include":"#function-call-innards"}]},"numbers":{"begin":"(?<!\\\\w)(?=\\\\d|\\\\.\\\\d)","end":"(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))","patterns":[{"captures":{"1":{"name":"keyword.other.unit.hexadecimal.objc"},"2":{"name":"constant.numeric.hexadecimal.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"3":{"name":"punctuation.separator.constant.numeric.objc"},"4":{"name":"constant.numeric.hexadecimal.objc"},"5":{"name":"constant.numeric.hexadecimal.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"6":{"name":"punctuation.separator.constant.numeric.objc"},"8":{"name":"keyword.other.unit.exponent.hexadecimal.objc"},"9":{"name":"keyword.operator.plus.exponent.hexadecimal.objc"},"10":{"name":"keyword.operator.minus.exponent.hexadecimal.objc"},"11":{"name":"constant.numeric.exponent.hexadecimal.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"12":{"name":"keyword.other.unit.suffix.floating-point.objc"}},"match":"(\\\\G0[xX])(?:([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?((?:(?<=[0-9a-fA-F])\\\\.|\\\\.(?=[0-9a-fA-F])))(?:([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?(?:((?<!')([pP])(\\\\+)?(\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:([lLfF](?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"captures":{"2":{"name":"constant.numeric.decimal.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"3":{"name":"punctuation.separator.constant.numeric.objc"},"4":{"name":"constant.numeric.decimal.point.objc"},"5":{"name":"constant.numeric.decimal.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"6":{"name":"punctuation.separator.constant.numeric.objc"},"8":{"name":"keyword.other.unit.exponent.decimal.objc"},"9":{"name":"keyword.operator.plus.exponent.decimal.objc"},"10":{"name":"keyword.operator.minus.exponent.decimal.objc"},"11":{"name":"constant.numeric.exponent.decimal.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"12":{"name":"keyword.other.unit.suffix.floating-point.objc"}},"match":"(\\\\G(?=[0-9.])(?!0[xXbB]))(?:([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?((?:(?<=[0-9])\\\\.|\\\\.(?=[0-9])))(?:([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?(?:((?<!')([eE])(\\\\+)?(\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:([lLfF](?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"captures":{"1":{"name":"keyword.other.unit.binary.objc"},"2":{"name":"constant.numeric.binary.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"3":{"name":"punctuation.separator.constant.numeric.objc"},"4":{"name":"keyword.other.unit.suffix.integer.objc"}},"match":"(\\\\G0[bB])([01](?:(?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"captures":{"1":{"name":"keyword.other.unit.octal.objc"},"2":{"name":"constant.numeric.octal.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"3":{"name":"punctuation.separator.constant.numeric.objc"},"4":{"name":"keyword.other.unit.suffix.integer.objc"}},"match":"(\\\\G0)((?:(?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))+)(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"captures":{"1":{"name":"keyword.other.unit.hexadecimal.objc"},"2":{"name":"constant.numeric.hexadecimal.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"3":{"name":"punctuation.separator.constant.numeric.objc"},"5":{"name":"keyword.other.unit.exponent.hexadecimal.objc"},"6":{"name":"keyword.operator.plus.exponent.hexadecimal.objc"},"7":{"name":"keyword.operator.minus.exponent.hexadecimal.objc"},"8":{"name":"constant.numeric.exponent.hexadecimal.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"9":{"name":"keyword.other.unit.suffix.integer.objc"}},"match":"(\\\\G0[xX])([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?<!')([pP])(\\\\+)?(\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"captures":{"2":{"name":"constant.numeric.decimal.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"3":{"name":"punctuation.separator.constant.numeric.objc"},"5":{"name":"keyword.other.unit.exponent.decimal.objc"},"6":{"name":"keyword.operator.plus.exponent.decimal.objc"},"7":{"name":"keyword.operator.minus.exponent.decimal.objc"},"8":{"name":"constant.numeric.exponent.decimal.objc","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objc"}]},"9":{"name":"keyword.other.unit.suffix.integer.objc"}},"match":"(\\\\G(?=[0-9.])(?!0[xXbB]))([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?<!')([eE])(\\\\+)?(\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"match":"(?:(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))+","name":"invalid.illegal.constant.numeric.objc"}]},"operators":{"patterns":[{"match":"(?<![\\\\w$])(sizeof)(?![\\\\w$])","name":"keyword.operator.sizeof.objc"},{"match":"--","name":"keyword.operator.decrement.objc"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.objc"},{"match":"%=|\\\\+=|-=|\\\\*=|(?<!\\\\()/=","name":"keyword.operator.assignment.compound.objc"},{"match":"&=|\\\\^=|<<=|>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.objc"},{"match":"<<|>>","name":"keyword.operator.bitwise.shift.objc"},{"match":"!=|<=|>=|==|<|>","name":"keyword.operator.comparison.objc"},{"match":"&&|!|\\\\|\\\\|","name":"keyword.operator.logical.objc"},{"match":"&|\\\\||\\\\^|~","name":"keyword.operator.objc"},{"match":"=","name":"keyword.operator.assignment.objc"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.objc"},{"begin":"(\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.objc"}},"end":"(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.objc"}},"patterns":[{"include":"#function-call-innards"},{"include":"$base"}]}]},"parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objc"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objc"}},"name":"meta.parens.objc","patterns":[{"include":"$base"}]},"parens-block":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objc"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objc"}},"name":"meta.parens.block.objc","patterns":[{"include":"#block_innards"},{"match":"(?-mix:(?<!:):(?!:))","name":"punctuation.range-based.objc"}]},"pragma-mark":{"captures":{"1":{"name":"meta.preprocessor.pragma.objc"},"2":{"name":"keyword.control.directive.pragma.pragma-mark.objc"},"3":{"name":"punctuation.definition.directive.objc"},"4":{"name":"entity.name.tag.pragma-mark.objc"}},"match":"^\\\\s*(((#)\\\\s*pragma\\\\s+mark)\\\\s+(.*))","name":"meta.section.objc"},"preprocessor-rule-conditional":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if(?:n?def)?\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#preprocessor-rule-enabled-elif"},{"include":"#preprocessor-rule-enabled-else"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"$base"}]},{"captures":{"0":{"name":"invalid.illegal.stray-$1.objc"}},"match":"^\\\\s*#\\\\s*(else|elif|endif)\\\\b"}]},"preprocessor-rule-conditional-block":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if(?:n?def)?\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#preprocessor-rule-enabled-elif-block"},{"include":"#preprocessor-rule-enabled-else-block"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#block_innards"}]},{"captures":{"0":{"name":"invalid.illegal.stray-$1.objc"}},"match":"^\\\\s*#\\\\s*(else|elif|endif)\\\\b"}]},"preprocessor-rule-conditional-line":{"patterns":[{"match":"(?:\\\\bdefined\\\\b\\\\s*$)|(?:\\\\bdefined\\\\b(?=\\\\s*\\\\(*\\\\s*(?:(?!defined\\\\b)[a-zA-Z_$][\\\\w$]*\\\\b)\\\\s*\\\\)*\\\\s*(?:\\\\n|//|/\\\\*|\\\\?|\\\\:|&&|\\\\|\\\\||\\\\\\\\\\\\s*\\\\n)))","name":"keyword.control.directive.conditional.objc"},{"match":"\\\\bdefined\\\\b","name":"invalid.illegal.macro-name.objc"},{"include":"#comments"},{"include":"#strings"},{"include":"#numbers"},{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.objc"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.objc"}},"patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#operators"},{"match":"\\\\b(NULL|true|false|TRUE|FALSE)\\\\b","name":"constant.language.objc"},{"match":"[a-zA-Z_$][\\\\w$]*","name":"entity.name.function.preprocessor.objc"},{"include":"#line_continuation_character"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objc"}},"end":"\\\\)|(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objc"}},"patterns":[{"include":"#preprocessor-rule-conditional-line"}]}]},"preprocessor-rule-define-line-blocks":{"patterns":[{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objc"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objc"}},"patterns":[{"include":"#preprocessor-rule-define-line-blocks"},{"include":"#preprocessor-rule-define-line-contents"}]},{"include":"#preprocessor-rule-define-line-contents"}]},"preprocessor-rule-define-line-contents":{"patterns":[{"include":"#vararg_ellipses"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objc"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objc"}},"name":"meta.block.objc","patterns":[{"include":"#preprocessor-rule-define-line-blocks"}]},{"match":"\\\\(","name":"punctuation.section.parens.begin.bracket.round.objc"},{"match":"\\\\)","name":"punctuation.section.parens.end.bracket.round.objc"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas|asm|__asm__|auto|bool|_Bool|char|_Complex|double|enum|float|_Imaginary|int|long|short|signed|struct|typedef|union|unsigned|void)\\\\s*\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\s*\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\]))\\\\s*\\\\()","end":"(?<=\\\\))(?!\\\\w)|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","name":"meta.function.objc","patterns":[{"include":"#preprocessor-rule-define-line-functions"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objc"}},"end":"\\"|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objc"}},"name":"string.quoted.double.objc","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"},{"include":"#line_continuation_character"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objc"}},"end":"'|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objc"}},"name":"string.quoted.single.objc","patterns":[{"include":"#string_escaped_char"},{"include":"#line_continuation_character"}]},{"include":"#method_access"},{"include":"#member_access"},{"include":"$base"}]},"preprocessor-rule-define-line-functions":{"patterns":[{"include":"#comments"},{"include":"#storage_types"},{"include":"#vararg_ellipses"},{"include":"#method_access"},{"include":"#member_access"},{"include":"#operators"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.objc"},"2":{"name":"punctuation.section.arguments.begin.bracket.round.objc"}},"end":"(\\\\))|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"1":{"name":"punctuation.section.arguments.end.bracket.round.objc"}},"patterns":[{"include":"#preprocessor-rule-define-line-functions"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objc"}},"end":"(\\\\))|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"1":{"name":"punctuation.section.parens.end.bracket.round.objc"}},"patterns":[{"include":"#preprocessor-rule-define-line-functions"}]},{"include":"#preprocessor-rule-define-line-contents"}]},"preprocessor-rule-disabled":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0+\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"include":"#preprocessor-rule-enabled-elif"},{"include":"#preprocessor-rule-enabled-else"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=^\\\\s*((#)\\\\s*(?:elif|else|endif)\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"$base"}]},{"begin":"\\\\n","contentName":"comment.block.preprocessor.if-branch.objc","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]}]},"preprocessor-rule-disabled-block":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0+\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"include":"#preprocessor-rule-enabled-elif-block"},{"include":"#preprocessor-rule-enabled-else-block"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=^\\\\s*((#)\\\\s*(?:elif|else|endif)\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#block_innards"}]},{"begin":"\\\\n","contentName":"comment.block.preprocessor.if-branch.in-block.objc","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]}]},"preprocessor-rule-disabled-elif":{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)(?=\\\\s*\\\\(*\\\\b0+\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=^\\\\s*((#)\\\\s*(?:elif|else|endif)\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"begin":"\\\\n","contentName":"comment.block.preprocessor.elif-branch.objc","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]},"preprocessor-rule-enabled":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"},"3":{"name":"constant.numeric.preprocessor.objc"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"contentName":"comment.block.preprocessor.else-branch.objc","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"contentName":"comment.block.preprocessor.if-branch.objc","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"$base"}]}]}]},"preprocessor-rule-enabled-block":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"contentName":"comment.block.preprocessor.else-branch.in-block.objc","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"contentName":"comment.block.preprocessor.if-branch.in-block.objc","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#block_innards"}]}]}]},"preprocessor-rule-enabled-elif":{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:endif)\\\\b))","patterns":[{"begin":"^\\\\s*((#)\\\\s*(else)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"contentName":"comment.block.preprocessor.elif-branch.objc","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*(elif)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"contentName":"comment.block.preprocessor.elif-branch.objc","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"include":"$base"}]}]},"preprocessor-rule-enabled-elif-block":{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objc","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:endif)\\\\b))","patterns":[{"begin":"^\\\\s*((#)\\\\s*(else)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"contentName":"comment.block.preprocessor.elif-branch.in-block.objc","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*(elif)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"contentName":"comment.block.preprocessor.elif-branch.objc","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"include":"#block_innards"}]}]},"preprocessor-rule-enabled-else":{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"$base"}]},"preprocessor-rule-enabled-else-block":{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objc"},"1":{"name":"keyword.control.directive.conditional.objc"},"2":{"name":"punctuation.definition.directive.objc"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#block_innards"}]},"probably_a_parameter":{"captures":{"1":{"name":"variable.parameter.probably.objc"}},"match":"(?<=(?:[a-zA-Z_0-9] |[&*>\\\\]\\\\)]))\\\\s*([a-zA-Z_]\\\\w*)\\\\s*(?=(?:\\\\[\\\\]\\\\s*)?(?:,|\\\\)))"},"static_assert":{"begin":"(static_assert|_Static_assert)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.static_assert.objc"},"2":{"name":"punctuation.section.arguments.begin.bracket.round.objc"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.arguments.end.bracket.round.objc"}},"patterns":[{"begin":"(,)\\\\s*(?=(?:L|u8|u|U\\\\s*\\\\\\")?)","beginCaptures":{"1":{"name":"punctuation.separator.delimiter.objc"}},"end":"(?=\\\\))","name":"meta.static_assert.message.objc","patterns":[{"include":"#string_context"},{"include":"#string_context_c"}]},{"include":"#function_call_context"}]},"storage_types":{"patterns":[{"match":"(?-mix:(?<!\\\\w)(?:void|char|short|int|signed|unsigned|long|float|double|bool|_Bool)(?!\\\\w))","name":"storage.type.built-in.primitive.objc"},{"match":"(?-mix:(?<!\\\\w)(?:_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t)(?!\\\\w))","name":"storage.type.built-in.objc"},{"match":"(?-mix:\\\\b(asm|__asm__|enum|struct|union)\\\\b)","name":"storage.type.$1.objc"}]},"string_escaped_char":{"patterns":[{"match":"\\\\\\\\(\\\\\\\\|[abefnprtv'\\"?]|[0-3]\\\\d{,2}|[4-7]\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})","name":"constant.character.escape.objc"},{"match":"\\\\\\\\.","name":"invalid.illegal.unknown-escape.objc"}]},"string_placeholder":{"patterns":[{"match":"%(\\\\d+\\\\$)?[#0\\\\- +']*[,;:_]?((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?(\\\\.((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]","name":"constant.other.placeholder.objc"},{"captures":{"1":{"name":"invalid.illegal.placeholder.objc"}},"match":"(%)(?!\\"\\\\s*(PRI|SCN))"}]},"strings":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objc"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objc"}},"name":"string.quoted.double.objc","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"},{"include":"#line_continuation_character"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objc"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.objc"}},"name":"string.quoted.single.objc","patterns":[{"include":"#string_escaped_char"},{"include":"#line_continuation_character"}]}]},"switch_conditional_parentheses":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.parens.begin.bracket.round.conditional.switch.objc"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.parens.end.bracket.round.conditional.switch.objc"}},"name":"meta.conditional.switch.objc","patterns":[{"include":"#conditional_context"}]},"switch_statement":{"begin":"(((?<!\\\\w)switch(?!\\\\w)))","beginCaptures":{"1":{"name":"meta.head.switch.objc"},"2":{"name":"keyword.control.switch.objc"}},"end":"(?:(?<=\\\\})|(?=[;>\\\\[\\\\]=]))","name":"meta.block.switch.objc","patterns":[{"begin":"\\\\G ?","end":"((?:\\\\{|(?=;)))","endCaptures":{"1":{"name":"punctuation.section.block.begin.bracket.curly.switch.objc"}},"name":"meta.head.switch.objc","patterns":[{"include":"#switch_conditional_parentheses"},{"include":"$base"}]},{"begin":"(?<=\\\\{)","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.section.block.end.bracket.curly.switch.objc"}},"name":"meta.body.switch.objc","patterns":[{"include":"#default_statement"},{"include":"#case_statement"},{"include":"$base"},{"include":"#block_innards"}]},{"begin":"(?<=})[\\\\s\\\\n]*","end":"[\\\\s\\\\n]*(?=;)","name":"meta.tail.switch.objc","patterns":[{"include":"$base"}]}]},"vararg_ellipses":{"match":"(?<!\\\\.)\\\\.\\\\.\\\\.(?!\\\\.)","name":"punctuation.vararg-ellipses.objc"}}},"comment":{"patterns":[{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.objc"}},"end":"\\\\*/","name":"comment.block.objc"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.objc"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.objc"}},"end":"\\\\n","name":"comment.line.double-slash.objc","patterns":[{"match":"(?>\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.objc"}]}]}]},"disabled":{"begin":"^\\\\s*#\\\\s*if(n?def)?\\\\b.*$","comment":"eat nested preprocessor if(def)s","end":"^\\\\s*#\\\\s*endif\\\\b.*$","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},"implementation_innards":{"patterns":[{"include":"#preprocessor-rule-enabled-implementation"},{"include":"#preprocessor-rule-disabled-implementation"},{"include":"#preprocessor-rule-other-implementation"},{"include":"#property_directive"},{"include":"#method_super"},{"include":"$base"}]},"interface_innards":{"patterns":[{"include":"#preprocessor-rule-enabled-interface"},{"include":"#preprocessor-rule-disabled-interface"},{"include":"#preprocessor-rule-other-interface"},{"include":"#properties"},{"include":"#protocol_list"},{"include":"#method"},{"include":"$base"}]},"method":{"begin":"^(-|\\\\+)\\\\s*","end":"(?=\\\\{|#)|;","name":"meta.function.objc","patterns":[{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.type.begin.objc"}},"end":"(\\\\))\\\\s*(\\\\w+\\\\b)","endCaptures":{"1":{"name":"punctuation.definition.type.end.objc"},"2":{"name":"entity.name.function.objc"}},"name":"meta.return-type.objc","patterns":[{"include":"#protocol_list"},{"include":"#protocol_type_qualifier"},{"include":"$base"}]},{"match":"\\\\b\\\\w+(?=:)","name":"entity.name.function.name-of-parameter.objc"},{"begin":"((:))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.name-of-parameter.objc"},"2":{"name":"punctuation.separator.arguments.objc"},"3":{"name":"punctuation.definition.type.begin.objc"}},"end":"(\\\\))\\\\s*(\\\\w+\\\\b)?","endCaptures":{"1":{"name":"punctuation.definition.type.end.objc"},"2":{"name":"variable.parameter.function.objc"}},"name":"meta.argument-type.objc","patterns":[{"include":"#protocol_list"},{"include":"#protocol_type_qualifier"},{"include":"$base"}]},{"include":"#comment"}]},"method_super":{"begin":"^(?=-|\\\\+)","end":"(?<=\\\\})|(?=#)","name":"meta.function-with-body.objc","patterns":[{"include":"#method"},{"include":"$base"}]},"pragma-mark":{"captures":{"1":{"name":"meta.preprocessor.objc"},"2":{"name":"keyword.control.import.pragma.objc"},"3":{"name":"meta.toc-list.pragma-mark.objc"}},"match":"^\\\\s*(#\\\\s*(pragma\\\\s+mark)\\\\s+(.*))","name":"meta.section.objc"},"preprocessor-rule-disabled-implementation":{"begin":"^\\\\s*(#(if)\\\\s+(0)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.objc"},"2":{"name":"keyword.control.import.if.objc"},"3":{"name":"constant.numeric.preprocessor.objc"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b)","captures":{"1":{"name":"meta.preprocessor.objc"},"2":{"name":"keyword.control.import.else.objc"}},"end":"(?=^\\\\s*#\\\\s*endif\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#interface_innards"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","name":"comment.block.preprocessor.if-branch.objc","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]},"preprocessor-rule-disabled-interface":{"begin":"^\\\\s*(#(if)\\\\s+(0)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.objc"},"2":{"name":"keyword.control.import.if.objc"},"3":{"name":"constant.numeric.preprocessor.objc"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b)","captures":{"1":{"name":"meta.preprocessor.objc"},"2":{"name":"keyword.control.import.else.objc"}},"end":"(?=^\\\\s*#\\\\s*endif\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#interface_innards"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","name":"comment.block.preprocessor.if-branch.objc","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]},"preprocessor-rule-enabled-implementation":{"begin":"^\\\\s*(#(if)\\\\s+(0*1)\\\\b)","captures":{"1":{"name":"meta.preprocessor.objc"},"2":{"name":"keyword.control.import.if.objc"},"3":{"name":"constant.numeric.preprocessor.objc"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.objc"},"2":{"name":"keyword.control.import.else.objc"}},"contentName":"comment.block.preprocessor.else-branch.objc","end":"(?=^\\\\s*#\\\\s*endif\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#implementation_innards"}]}]},"preprocessor-rule-enabled-interface":{"begin":"^\\\\s*(#(if)\\\\s+(0*1)\\\\b)","captures":{"1":{"name":"meta.preprocessor.objc"},"2":{"name":"keyword.control.import.if.objc"},"3":{"name":"constant.numeric.preprocessor.objc"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.objc"},"2":{"name":"keyword.control.import.else.objc"}},"contentName":"comment.block.preprocessor.else-branch.objc","end":"(?=^\\\\s*#\\\\s*endif\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#interface_innards"}]}]},"preprocessor-rule-other-implementation":{"begin":"^\\\\s*(#\\\\s*(if(n?def)?)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","captures":{"1":{"name":"meta.preprocessor.objc"},"2":{"name":"keyword.control.import.objc"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b).*?(?:(?=(?://|/\\\\*))|$)","patterns":[{"include":"#implementation_innards"}]},"preprocessor-rule-other-interface":{"begin":"^\\\\s*(#\\\\s*(if(n?def)?)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","captures":{"1":{"name":"meta.preprocessor.objc"},"2":{"name":"keyword.control.import.objc"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b).*?(?:(?=(?://|/\\\\*))|$)","patterns":[{"include":"#interface_innards"}]},"properties":{"patterns":[{"begin":"((@)property)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.property.objc"},"2":{"name":"punctuation.definition.keyword.objc"},"3":{"name":"punctuation.section.scope.begin.objc"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.scope.end.objc"}},"name":"meta.property-with-attributes.objc","patterns":[{"match":"\\\\b(getter|setter|readonly|readwrite|assign|retain|copy|nonatomic|atomic|strong|weak|nonnull|nullable|null_resettable|null_unspecified|class|direct)\\\\b","name":"keyword.other.property.attribute.objc"}]},{"captures":{"1":{"name":"keyword.other.property.objc"},"2":{"name":"punctuation.definition.keyword.objc"}},"match":"((@)property)\\\\b","name":"meta.property.objc"}]},"property_directive":{"captures":{"1":{"name":"punctuation.definition.keyword.objc"}},"match":"(@)(dynamic|synthesize)\\\\b","name":"keyword.other.property.directive.objc"},"protocol_list":{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.section.scope.begin.objc"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.section.scope.end.objc"}},"name":"meta.protocol-list.objc","patterns":[{"match":"\\\\bNS(GlyphStorage|M(utableCopying|enuItem)|C(hangeSpelling|o(ding|pying|lorPicking(Custom|Default)))|T(oolbarItemValidations|ext(Input|AttachmentCell))|I(nputServ(iceProvider|erMouseTracker)|gnoreMisspelledWords)|Obj(CTypeSerializationCallBack|ect)|D(ecimalNumberBehaviors|raggingInfo)|U(serInterfaceValidations|RL(HandleClient|DownloadDelegate|ProtocolClient|AuthenticationChallengeSender))|Validated(ToobarItem|UserInterfaceItem)|Locking)\\\\b","name":"support.other.protocol.objc"}]},"protocol_type_qualifier":{"match":"\\\\b(in|out|inout|oneway|bycopy|byref|nonnull|nullable|_Nonnull|_Nullable|_Null_unspecified)\\\\b","name":"storage.modifier.protocol.objc"},"special_variables":{"patterns":[{"match":"\\\\b_cmd\\\\b","name":"variable.other.selector.objc"},{"match":"\\\\b(self|super)\\\\b","name":"variable.language.objc"}]},"string_escaped_char":{"patterns":[{"match":"\\\\\\\\(\\\\\\\\|[abefnprtv'\\"?]|[0-3]\\\\d{,2}|[4-7]\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})","name":"constant.character.escape.objc"},{"match":"\\\\\\\\.","name":"invalid.illegal.unknown-escape.objc"}]},"string_placeholder":{"patterns":[{"match":"%(\\\\d+\\\\$)?[#0\\\\- +']*[,;:_]?((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?(\\\\.((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]","name":"constant.other.placeholder.objc"},{"captures":{"1":{"name":"invalid.illegal.placeholder.objc"}},"match":"(%)(?!\\"\\\\s*(PRI|SCN))"}]}},"scopeName":"source.objc","aliases":["objc"]}`)),Wre=[Yre]});var PR={};x(PR,{default:()=>Jre});var Kre,Jre,MR=_(()=>{Kre=Object.freeze(JSON.parse(`{"displayName":"Objective-C++","name":"objective-cpp","patterns":[{"include":"#cpp_lang"},{"include":"#anonymous_pattern_1"},{"include":"#anonymous_pattern_2"},{"include":"#anonymous_pattern_3"},{"include":"#anonymous_pattern_4"},{"include":"#anonymous_pattern_5"},{"include":"#apple_foundation_functional_macros"},{"include":"#anonymous_pattern_7"},{"include":"#anonymous_pattern_8"},{"include":"#anonymous_pattern_9"},{"include":"#anonymous_pattern_10"},{"include":"#anonymous_pattern_11"},{"include":"#anonymous_pattern_12"},{"include":"#anonymous_pattern_13"},{"include":"#anonymous_pattern_14"},{"include":"#anonymous_pattern_15"},{"include":"#anonymous_pattern_16"},{"include":"#anonymous_pattern_17"},{"include":"#anonymous_pattern_18"},{"include":"#anonymous_pattern_19"},{"include":"#anonymous_pattern_20"},{"include":"#anonymous_pattern_21"},{"include":"#anonymous_pattern_22"},{"include":"#anonymous_pattern_23"},{"include":"#anonymous_pattern_24"},{"include":"#anonymous_pattern_25"},{"include":"#anonymous_pattern_26"},{"include":"#anonymous_pattern_27"},{"include":"#anonymous_pattern_28"},{"include":"#anonymous_pattern_29"},{"include":"#anonymous_pattern_30"},{"include":"#bracketed_content"},{"include":"#c_lang"}],"repository":{"anonymous_pattern_1":{"begin":"((@)(interface|protocol))(?!.+;)\\\\s+([A-Za-z_][A-Za-z0-9_]*)\\\\s*((:)(?:\\\\s*)([A-Za-z][A-Za-z0-9]*))?(\\\\s|\\\\n)?","captures":{"1":{"name":"storage.type.objcpp"},"2":{"name":"punctuation.definition.storage.type.objcpp"},"4":{"name":"entity.name.type.objcpp"},"6":{"name":"punctuation.definition.entity.other.inherited-class.objcpp"},"7":{"name":"entity.other.inherited-class.objcpp"},"8":{"name":"meta.divider.objcpp"},"9":{"name":"meta.inherited-class.objcpp"}},"contentName":"meta.scope.interface.objcpp","end":"((@)end)\\\\b","name":"meta.interface-or-protocol.objcpp","patterns":[{"include":"#interface_innards"}]},"anonymous_pattern_10":{"captures":{"1":{"name":"punctuation.definition.keyword.objcpp"}},"match":"(@)(defs|encode)\\\\b","name":"keyword.other.objcpp"},"anonymous_pattern_11":{"match":"\\\\bid\\\\b","name":"storage.type.id.objcpp"},"anonymous_pattern_12":{"match":"\\\\b(IBOutlet|IBAction|BOOL|SEL|id|unichar|IMP|Class|instancetype)\\\\b","name":"storage.type.objcpp"},"anonymous_pattern_13":{"captures":{"1":{"name":"punctuation.definition.storage.type.objcpp"}},"match":"(@)(class|protocol)\\\\b","name":"storage.type.objcpp"},"anonymous_pattern_14":{"begin":"((@)selector)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.type.objcpp"},"2":{"name":"punctuation.definition.storage.type.objcpp"},"3":{"name":"punctuation.definition.storage.type.objcpp"}},"contentName":"meta.selector.method-name.objcpp","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.storage.type.objcpp"}},"name":"meta.selector.objcpp","patterns":[{"captures":{"1":{"name":"punctuation.separator.arguments.objcpp"}},"match":"\\\\b(?:[a-zA-Z_:][\\\\w]*)+","name":"support.function.any-method.name-of-parameter.objcpp"}]},"anonymous_pattern_15":{"captures":{"1":{"name":"punctuation.definition.storage.modifier.objcpp"}},"match":"(@)(synchronized|public|package|private|protected)\\\\b","name":"storage.modifier.objcpp"},"anonymous_pattern_16":{"match":"\\\\b(YES|NO|Nil|nil)\\\\b","name":"constant.language.objcpp"},"anonymous_pattern_17":{"match":"\\\\bNSApp\\\\b","name":"support.variable.foundation.objcpp"},"anonymous_pattern_18":{"captures":{"1":{"name":"punctuation.whitespace.support.function.cocoa.leopard.objcpp"},"2":{"name":"support.function.cocoa.leopard.objcpp"}},"match":"(\\\\s*)\\\\b(NS(Rect(ToCGRect|FromCGRect)|MakeCollectable|S(tringFromProtocol|ize(ToCGSize|FromCGSize))|Draw(NinePartImage|ThreePartImage)|P(oint(ToCGPoint|FromCGPoint)|rotocolFromString)|EventMaskFromType|Value))\\\\b"},"anonymous_pattern_19":{"captures":{"1":{"name":"punctuation.whitespace.support.function.leading.cocoa.objcpp"},"2":{"name":"support.function.cocoa.objcpp"}},"match":"(\\\\s*)\\\\b(NS(R(ound(DownToMultipleOfPageSize|UpToMultipleOfPageSize)|un(CriticalAlertPanel(RelativeToWindow)?|InformationalAlertPanel(RelativeToWindow)?|AlertPanel(RelativeToWindow)?)|e(set(MapTable|HashTable)|c(ycleZone|t(Clip(List)?|F(ill(UsingOperation|List(UsingOperation|With(Grays|Colors(UsingOperation)?))?)?|romString))|ordAllocationEvent)|turnAddress|leaseAlertPanel|a(dPixel|l(MemoryAvailable|locateCollectable))|gisterServicesProvider)|angeFromString)|Get(SizeAndAlignment|CriticalAlertPanel|InformationalAlertPanel|UncaughtExceptionHandler|FileType(s)?|WindowServerMemory|AlertPanel)|M(i(n(X|Y)|d(X|Y))|ouseInRect|a(p(Remove|Get|Member|Insert(IfAbsent|KnownAbsent)?)|ke(R(ect|ange)|Size|Point)|x(Range|X|Y)))|B(itsPer(SampleFromDepth|PixelFromDepth)|e(stDepth|ep|gin(CriticalAlertSheet|InformationalAlertSheet|AlertSheet)))|S(ho(uldRetainWithZone|w(sServicesMenuItem|AnimationEffect))|tringFrom(R(ect|ange)|MapTable|S(ize|elector)|HashTable|Class|Point)|izeFromString|e(t(ShowsServicesMenuItem|ZoneName|UncaughtExceptionHandler|FocusRingStyle)|lectorFromString|archPathForDirectoriesInDomains)|wap(Big(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|Short|Host(ShortTo(Big|Little)|IntTo(Big|Little)|DoubleTo(Big|Little)|FloatTo(Big|Little)|Long(To(Big|Little)|LongTo(Big|Little)))|Int|Double|Float|L(ittle(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|ong(Long)?)))|H(ighlightRect|o(stByteOrder|meDirectory(ForUser)?)|eight|ash(Remove|Get|Insert(IfAbsent|KnownAbsent)?)|FSType(CodeFromFileType|OfFile))|N(umberOfColorComponents|ext(MapEnumeratorPair|HashEnumeratorItem))|C(o(n(tainsRect|vert(GlyphsToPackedGlyphs|Swapped(DoubleToHost|FloatToHost)|Host(DoubleToSwapped|FloatToSwapped)))|unt(MapTable|HashTable|Frames|Windows(ForContext)?)|py(M(emoryPages|apTableWithZone)|Bits|HashTableWithZone|Object)|lorSpaceFromDepth|mpare(MapTables|HashTables))|lassFromString|reate(MapTable(WithZone)?|HashTable(WithZone)?|Zone|File(namePboardType|ContentsPboardType)))|TemporaryDirectory|I(s(ControllerMarker|EmptyRect|FreedObject)|n(setRect|crementExtraRefCount|te(r(sect(sRect|ionR(ect|ange))|faceStyleForKey)|gralRect)))|Zone(Realloc|Malloc|Name|Calloc|Fr(omPointer|ee))|O(penStepRootDirectory|ffsetRect)|D(i(sableScreenUpdates|videRect)|ottedFrameRect|e(c(imal(Round|Multiply|S(tring|ubtract)|Normalize|Co(py|mpa(ct|re))|IsNotANumber|Divide|Power|Add)|rementExtraRefCountWasZero)|faultMallocZone|allocate(MemoryPages|Object))|raw(Gr(oove|ayBezel)|B(itmap|utton)|ColorTiledRects|TiledRects|DarkBezel|W(hiteBezel|indowBackground)|LightBezel))|U(serName|n(ionR(ect|ange)|registerServicesProvider)|pdateDynamicServices)|Java(Bundle(Setup|Cleanup)|Setup(VirtualMachine)?|Needs(ToLoadClasses|VirtualMachine)|ClassesF(orBundle|romPath)|ObjectNamedInPath|ProvidesClasses)|P(oint(InRect|FromString)|erformService|lanarFromDepth|ageSize)|E(n(d(MapTableEnumeration|HashTableEnumeration)|umerate(MapTable|HashTable)|ableScreenUpdates)|qual(R(ects|anges)|Sizes|Points)|raseRect|xtraRefCount)|F(ileTypeForHFSTypeCode|ullUserName|r(ee(MapTable|HashTable)|ame(Rect(WithWidth(UsingOperation)?)?|Address)))|Wi(ndowList(ForContext)?|dth)|Lo(cationInRange|g(v|PageSize)?)|A(ccessibility(R(oleDescription(ForUIElement)?|aiseBadArgumentException)|Unignored(Children(ForOnlyChild)?|Descendant|Ancestor)|PostNotification|ActionDescription)|pplication(Main|Load)|vailableWindowDepths|ll(MapTable(Values|Keys)|HashTableObjects|ocate(MemoryPages|Collectable|Object)))))\\\\b"},"anonymous_pattern_2":{"begin":"((@)(implementation))\\\\s+([A-Za-z_][A-Za-z0-9_]*)\\\\s*(?::\\\\s*([A-Za-z][A-Za-z0-9]*))?","captures":{"1":{"name":"storage.type.objcpp"},"2":{"name":"punctuation.definition.storage.type.objcpp"},"4":{"name":"entity.name.type.objcpp"},"5":{"name":"entity.other.inherited-class.objcpp"}},"contentName":"meta.scope.implementation.objcpp","end":"((@)end)\\\\b","name":"meta.implementation.objcpp","patterns":[{"include":"#implementation_innards"}]},"anonymous_pattern_20":{"match":"\\\\bNS(RuleEditor|G(arbageCollector|radient)|MapTable|HashTable|Co(ndition|llectionView(Item)?)|T(oolbarItemGroup|extInputClient|r(eeNode|ackingArea))|InvocationOperation|Operation(Queue)?|D(ictionaryController|ockTile)|P(ointer(Functions|Array)|athC(o(ntrol(Delegate)?|mponentCell)|ell(Delegate)?)|r(intPanelAccessorizing|edicateEditor(RowTemplate)?))|ViewController|FastEnumeration|Animat(ionContext|ablePropertyContainer))\\\\b","name":"support.class.cocoa.leopard.objcpp"},"anonymous_pattern_21":{"match":"\\\\bNS(R(u(nLoop|ler(Marker|View))|e(sponder|cursiveLock|lativeSpecifier)|an(domSpecifier|geSpecifier))|G(etCommand|lyph(Generator|Storage|Info)|raphicsContext)|XML(Node|D(ocument|TD(Node)?)|Parser|Element)|M(iddleSpecifier|ov(ie(View)?|eCommand)|utable(S(tring|et)|C(haracterSet|opying)|IndexSet|D(ictionary|ata)|URLRequest|ParagraphStyle|A(ttributedString|rray))|e(ssagePort(NameServer)?|nu(Item(Cell)?|View)?|t(hodSignature|adata(Item|Query(ResultGroup|AttributeValueTuple)?)))|a(ch(BootstrapServer|Port)|trix))|B(itmapImageRep|ox|u(ndle|tton(Cell)?)|ezierPath|rowser(Cell)?)|S(hadow|c(anner|r(ipt(SuiteRegistry|C(o(ercionHandler|mmand(Description)?)|lassDescription)|ObjectSpecifier|ExecutionContext|WhoseTest)|oll(er|View)|een))|t(epper(Cell)?|atus(Bar|Item)|r(ing|eam))|imple(HorizontalTypesetter|CString)|o(cketPort(NameServer)?|und|rtDescriptor)|p(e(cifierTest|ech(Recognizer|Synthesizer)|ll(Server|Checker))|litView)|e(cureTextField(Cell)?|t(Command)?|archField(Cell)?|rializer|gmentedC(ontrol|ell))|lider(Cell)?|avePanel)|H(ost|TTP(Cookie(Storage)?|URLResponse)|elpManager)|N(ib(Con(nector|trolConnector)|OutletConnector)?|otification(Center|Queue)?|u(ll|mber(Formatter)?)|etService(Browser)?|ameSpecifier)|C(ha(ngeSpelling|racterSet)|o(n(stantString|nection|trol(ler)?|ditionLock)|d(ing|er)|unt(Command|edSet)|pying|lor(Space|P(ick(ing(Custom|Default)|er)|anel)|Well|List)?|m(p(oundPredicate|arisonPredicate)|boBox(Cell)?))|u(stomImageRep|rsor)|IImageRep|ell|l(ipView|o(seCommand|neCommand)|assDescription)|a(ched(ImageRep|URLResponse)|lendar(Date)?)|reateCommand)|T(hread|ypesetter|ime(Zone|r)|o(olbar(Item(Validations)?)?|kenField(Cell)?)|ext(Block|Storage|Container|Tab(le(Block)?)?|Input|View|Field(Cell)?|List|Attachment(Cell)?)?|a(sk|b(le(Header(Cell|View)|Column|View)|View(Item)?))|reeController)|I(n(dex(S(pecifier|et)|Path)|put(Manager|S(tream|erv(iceProvider|er(MouseTracker)?)))|vocation)|gnoreMisspelledWords|mage(Rep|Cell|View)?)|O(ut(putStream|lineView)|pen(GL(Context|Pixel(Buffer|Format)|View)|Panel)|bj(CTypeSerializationCallBack|ect(Controller)?))|D(i(st(antObject(Request)?|ributed(NotificationCenter|Lock))|ctionary|rectoryEnumerator)|ocument(Controller)?|e(serializer|cimalNumber(Behaviors|Handler)?|leteCommand)|at(e(Components|Picker(Cell)?|Formatter)?|a)|ra(wer|ggingInfo))|U(ser(InterfaceValidations|Defaults(Controller)?)|RL(Re(sponse|quest)|Handle(Client)?|C(onnection|ache|redential(Storage)?)|Download(Delegate)?|Prot(ocol(Client)?|ectionSpace)|AuthenticationChallenge(Sender)?)?|n(iqueIDSpecifier|doManager|archiver))|P(ipe|o(sitionalSpecifier|pUpButton(Cell)?|rt(Message|NameServer|Coder)?)|ICTImageRep|ersistentDocument|DFImageRep|a(steboard|nel|ragraphStyle|geLayout)|r(int(Info|er|Operation|Panel)|o(cessInfo|tocolChecker|perty(Specifier|ListSerialization)|gressIndicator|xy)|edicate))|E(numerator|vent|PSImageRep|rror|x(ception|istsCommand|pression))|V(iew(Animation)?|al(idated(ToobarItem|UserInterfaceItem)|ue(Transformer)?))|Keyed(Unarchiver|Archiver)|Qui(ckDrawView|tCommand)|F(ile(Manager|Handle|Wrapper)|o(nt(Manager|Descriptor|Panel)?|rm(Cell|atter)))|W(hoseSpecifier|indow(Controller)?|orkspace)|L(o(c(k(ing)?|ale)|gicalTest)|evelIndicator(Cell)?|ayoutManager)|A(ssertionHandler|nimation|ctionCell|ttributedString|utoreleasePool|TSTypesetter|ppl(ication|e(Script|Event(Manager|Descriptor)))|ffineTransform|lert|r(chiver|ray(Controller)?)))\\\\b","name":"support.class.cocoa.objcpp"},"anonymous_pattern_22":{"match":"\\\\bNS(R(oundingMode|ule(Editor(RowType|NestingMode)|rOrientation)|e(questUserAttentionType|lativePosition))|G(lyphInscription|radientDrawingOptions)|XML(NodeKind|D(ocumentContentKind|TDNodeKind)|ParserError)|M(ultibyteGlyphPacking|apTableOptions)|B(itmapFormat|oxType|ezierPathElement|ackgroundStyle|rowserDropOperation)|S(tr(ing(CompareOptions|DrawingOptions|EncodingConversionOptions)|eam(Status|Event))|p(eechBoundary|litViewDividerStyle)|e(archPathD(irectory|omainMask)|gmentS(tyle|witchTracking))|liderType|aveOptions)|H(TTPCookieAcceptPolicy|ashTableOptions)|N(otification(SuspensionBehavior|Coalescing)|umberFormatter(RoundingMode|Behavior|Style|PadPosition)|etService(sError|Options))|C(haracterCollection|o(lor(RenderingIntent|SpaceModel|PanelMode)|mp(oundPredicateType|arisonPredicateModifier))|ellStateValue|al(culationError|endarUnit))|T(ypesetterControlCharacterAction|imeZoneNameStyle|e(stComparisonOperation|xt(Block(Dimension|V(erticalAlignment|alueType)|Layer)|TableLayoutAlgorithm|FieldBezelStyle))|ableView(SelectionHighlightStyle|ColumnAutoresizingStyle)|rackingAreaOptions)|I(n(sertionPosition|te(rfaceStyle|ger))|mage(RepLoadStatus|Scaling|CacheMode|FrameStyle|LoadStatus|Alignment))|Ope(nGLPixelFormatAttribute|rationQueuePriority)|Date(Picker(Mode|Style)|Formatter(Behavior|Style))|U(RL(RequestCachePolicy|HandleStatus|C(acheStoragePolicy|redentialPersistence))|Integer)|P(o(stingStyle|int(ingDeviceType|erFunctionsOptions)|pUpArrowPosition)|athStyle|r(int(ing(Orientation|PaginationMode)|erTableStatus|PanelOptions)|opertyList(MutabilityOptions|Format)|edicateOperatorType))|ExpressionType|KeyValue(SetMutationKind|Change)|QTMovieLoopMode|F(indPanel(SubstringMatchType|Action)|o(nt(RenderingMode|FamilyClass)|cusRingPlacement))|W(hoseSubelementIdentifier|ind(ingRule|ow(B(utton|ackingLocation)|SharingType|CollectionBehavior)))|L(ine(MovementDirection|SweepDirection|CapStyle|JoinStyle)|evelIndicatorStyle)|Animation(BlockingMode|Curve))\\\\b","name":"support.type.cocoa.leopard.objcpp"},"anonymous_pattern_23":{"match":"\\\\bC(I(Sampler|Co(ntext|lor)|Image(Accumulator)?|PlugIn(Registration)?|Vector|Kernel|Filter(Generator|Shape)?)|A(Renderer|MediaTiming(Function)?|BasicAnimation|ScrollLayer|Constraint(LayoutManager)?|T(iledLayer|extLayer|rans(ition|action))|OpenGLLayer|PropertyAnimation|KeyframeAnimation|Layer|A(nimation(Group)?|ction)))\\\\b","name":"support.class.quartz.objcpp"},"anonymous_pattern_24":{"match":"\\\\bC(G(Float|Point|Size|Rect)|IFormat|AConstraintAttribute)\\\\b","name":"support.type.quartz.objcpp"},"anonymous_pattern_25":{"match":"\\\\bNS(R(ect(Edge)?|ange)|G(lyph(Relation|LayoutMode)?|radientType)|M(odalSession|a(trixMode|p(Table|Enumerator)))|B(itmapImageFileType|orderType|uttonType|ezelStyle|ackingStoreType|rowserColumnResizingType)|S(cr(oll(er(Part|Arrow)|ArrowPosition)|eenAuxiliaryOpaque)|tringEncoding|ize|ocketNativeHandle|election(Granularity|Direction|Affinity)|wapped(Double|Float)|aveOperationType)|Ha(sh(Table|Enumerator)|ndler(2)?)|C(o(ntrol(Size|Tint)|mp(ositingOperation|arisonResult))|ell(State|Type|ImagePosition|Attribute))|T(hreadPrivate|ypesetterGlyphInfo|i(ckMarkPosition|tlePosition|meInterval)|o(ol(TipTag|bar(SizeMode|DisplayMode))|kenStyle)|IFFCompression|ext(TabType|Alignment)|ab(State|leViewDropOperation|ViewType)|rackingRectTag)|ImageInterpolation|Zone|OpenGL(ContextAuxiliary|PixelFormatAuxiliary)|D(ocumentChangeType|atePickerElementFlags|ra(werState|gOperation))|UsableScrollerParts|P(oint|r(intingPageOrder|ogressIndicator(Style|Th(ickness|readInfo))))|EventType|KeyValueObservingOptions|Fo(nt(SymbolicTraits|TraitMask|Action)|cusRingType)|W(indow(OrderingMode|Depth)|orkspace(IconCreationOptions|LaunchOptions)|ritingDirection)|L(ineBreakMode|ayout(Status|Direction))|A(nimation(Progress|Effect)|ppl(ication(TerminateReply|DelegateReply|PrintReply)|eEventManagerSuspensionID)|ffineTransformStruct|lertStyle))\\\\b","name":"support.type.cocoa.objcpp"},"anonymous_pattern_26":{"match":"\\\\bNS(NotFound|Ordered(Ascending|Descending|Same))\\\\b","name":"support.constant.cocoa.objcpp"},"anonymous_pattern_27":{"match":"\\\\bNS(MenuDidBeginTracking|ViewDidUpdateTrackingAreas)?Notification\\\\b","name":"support.constant.notification.cocoa.leopard.objcpp"},"anonymous_pattern_28":{"match":"\\\\bNS(Menu(Did(RemoveItem|SendAction|ChangeItem|EndTracking|AddItem)|WillSendAction)|S(ystemColorsDidChange|plitView(DidResizeSubviews|WillResizeSubviews))|C(o(nt(extHelpModeDid(Deactivate|Activate)|rolT(intDidChange|extDid(BeginEditing|Change|EndEditing)))|lor(PanelColorDidChange|ListDidChange)|mboBox(Selection(IsChanging|DidChange)|Will(Dismiss|PopUp)))|lassDescriptionNeededForClass)|T(oolbar(DidRemoveItem|WillAddItem)|ext(Storage(DidProcessEditing|WillProcessEditing)|Did(BeginEditing|Change|EndEditing)|View(DidChange(Selection|TypingAttributes)|WillChangeNotifyingTextView))|ableView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)))|ImageRepRegistryDidChange|OutlineView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)|Item(Did(Collapse|Expand)|Will(Collapse|Expand)))|Drawer(Did(Close|Open)|Will(Close|Open))|PopUpButton(CellWillPopUp|WillPopUp)|View(GlobalFrameDidChange|BoundsDidChange|F(ocusDidChange|rameDidChange))|FontSetChanged|W(indow(Did(Resi(ze|gn(Main|Key))|M(iniaturize|ove)|Become(Main|Key)|ChangeScreen(|Profile)|Deminiaturize|Update|E(ndSheet|xpose))|Will(M(iniaturize|ove)|BeginSheet|Close))|orkspace(SessionDid(ResignActive|BecomeActive)|Did(Mount|TerminateApplication|Unmount|PerformFileOperation|Wake|LaunchApplication)|Will(Sleep|Unmount|PowerOff|LaunchApplication)))|A(ntialiasThresholdChanged|ppl(ication(Did(ResignActive|BecomeActive|Hide|ChangeScreenParameters|U(nhide|pdate)|FinishLaunching)|Will(ResignActive|BecomeActive|Hide|Terminate|U(nhide|pdate)|FinishLaunching))|eEventManagerWillProcessFirstEvent)))Notification\\\\b","name":"support.constant.notification.cocoa.objcpp"},"anonymous_pattern_29":{"match":"\\\\bNS(RuleEditor(RowType(Simple|Compound)|NestingMode(Si(ngle|mple)|Compound|List))|GradientDraws(BeforeStartingLocation|AfterEndingLocation)|M(inusSetExpressionType|a(chPortDeallocate(ReceiveRight|SendRight|None)|pTable(StrongMemory|CopyIn|ZeroingWeakMemory|ObjectPointerPersonality)))|B(oxCustom|undleExecutableArchitecture(X86|I386|PPC(64)?)|etweenPredicateOperatorType|ackgroundStyle(Raised|Dark|L(ight|owered)))|S(tring(DrawingTruncatesLastVisibleLine|EncodingConversion(ExternalRepresentation|AllowLossy))|ubqueryExpressionType|p(e(ech(SentenceBoundary|ImmediateBoundary|WordBoundary)|llingState(GrammarFlag|SpellingFlag))|litViewDividerStyleThi(n|ck))|e(rvice(RequestTimedOutError|M(iscellaneousError|alformedServiceDictionaryError)|InvalidPasteboardDataError|ErrorM(inimum|aximum)|Application(NotFoundError|LaunchFailedError))|gmentStyle(Round(Rect|ed)|SmallSquare|Capsule|Textured(Rounded|Square)|Automatic)))|H(UDWindowMask|ashTable(StrongMemory|CopyIn|ZeroingWeakMemory|ObjectPointerPersonality))|N(oModeColorPanel|etServiceNoAutoRename)|C(hangeRedone|o(ntainsPredicateOperatorType|l(orRenderingIntent(RelativeColorimetric|Saturation|Default|Perceptual|AbsoluteColorimetric)|lectorDisabledOption))|ellHit(None|ContentArea|TrackableArea|EditableTextArea))|T(imeZoneNameStyle(S(hort(Standard|DaylightSaving)|tandard)|DaylightSaving)|extFieldDatePickerStyle|ableViewSelectionHighlightStyle(Regular|SourceList)|racking(Mouse(Moved|EnteredAndExited)|CursorUpdate|InVisibleRect|EnabledDuringMouseDrag|A(ssumeInside|ctive(In(KeyWindow|ActiveApp)|WhenFirstResponder|Always))))|I(n(tersectSetExpressionType|dexedColorSpaceModel)|mageScale(None|Proportionally(Down|UpOrDown)|AxesIndependently))|Ope(nGLPFAAllowOfflineRenderers|rationQueue(DefaultMaxConcurrentOperationCount|Priority(High|Normal|Very(High|Low)|Low)))|D(iacriticInsensitiveSearch|ownloadsDirectory)|U(nionSetExpressionType|TF(16(BigEndianStringEncoding|StringEncoding|LittleEndianStringEncoding)|32(BigEndianStringEncoding|StringEncoding|LittleEndianStringEncoding)))|P(ointerFunctions(Ma(chVirtualMemory|llocMemory)|Str(ongMemory|uctPersonality)|C(StringPersonality|opyIn)|IntegerPersonality|ZeroingWeakMemory|O(paque(Memory|Personality)|bjectP(ointerPersonality|ersonality)))|at(hStyle(Standard|NavigationBar|PopUp)|ternColorSpaceModel)|rintPanelShows(Scaling|Copies|Orientation|P(a(perSize|ge(Range|SetupAccessory))|review)))|Executable(RuntimeMismatchError|NotLoadableError|ErrorM(inimum|aximum)|L(inkError|oadError)|ArchitectureMismatchError)|KeyValueObservingOption(Initial|Prior)|F(i(ndPanelSubstringMatchType(StartsWith|Contains|EndsWith|FullWord)|leRead(TooLargeError|UnknownStringEncodingError))|orcedOrderingSearch)|Wi(ndow(BackingLocation(MainMemory|Default|VideoMemory)|Sharing(Read(Only|Write)|None)|CollectionBehavior(MoveToActiveSpace|CanJoinAllSpaces|Default))|dthInsensitiveSearch)|AggregateExpressionType)\\\\b","name":"support.constant.cocoa.leopard.objcpp"},"anonymous_pattern_3":{"begin":"@\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.objcpp","patterns":[{"include":"#string_escaped_char"},{"match":"%(\\\\d+\\\\$)?[#0\\\\- +']*((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?(\\\\.((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?)?[@]","name":"constant.other.placeholder.objcpp"},{"include":"#string_placeholder"}]},"anonymous_pattern_30":{"match":"\\\\bNS(R(GB(ModeColorPanel|ColorSpaceModel)|ight(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey)|ound(RectBezelStyle|Bankers|ed(BezelStyle|TokenStyle|DisclosureBezelStyle)|Down|Up|Plain|Line(CapStyle|JoinStyle))|un(StoppedResponse|ContinuesResponse|AbortedResponse)|e(s(izableWindowMask|et(CursorRectsRunLoopOrdering|FunctionKey))|ce(ssedBezelStyle|iver(sCantHandleCommandScriptError|EvaluationScriptError))|turnTextMovement|doFunctionKey|quiredArgumentsMissingScriptError|l(evancyLevelIndicatorStyle|ative(Before|After))|gular(SquareBezelStyle|ControlSize)|moveTraitFontAction)|a(n(domSubelement|geDateMode)|tingLevelIndicatorStyle|dio(ModeMatrix|Button)))|G(IFFileType|lyph(Below|Inscribe(B(elow|ase)|Over(strike|Below)|Above)|Layout(WithPrevious|A(tAPoint|gainstAPoint))|A(ttribute(BidiLevel|Soft|Inscribe|Elastic)|bove))|r(ooveBorder|eaterThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|a(y(ModeColorPanel|ColorSpaceModel)|dient(None|Con(cave(Strong|Weak)|vex(Strong|Weak)))|phiteControlTint)))|XML(N(o(tationDeclarationKind|de(CompactEmptyElement|IsCDATA|OptionsNone|Use(SingleQuotes|DoubleQuotes)|Pre(serve(NamespaceOrder|C(haracterReferences|DATA)|DTD|Prefixes|E(ntities|mptyElements)|Quotes|Whitespace|A(ttributeOrder|ll))|ttyPrint)|ExpandEmptyElement))|amespaceKind)|CommentKind|TextKind|InvalidKind|D(ocument(X(MLKind|HTMLKind|Include)|HTMLKind|T(idy(XML|HTML)|extKind)|IncludeContentTypeDeclaration|Validate|Kind)|TDKind)|P(arser(GTRequiredError|XMLDeclNot(StartedError|FinishedError)|Mi(splaced(XMLDeclarationError|CDATAEndStringError)|xedContentDeclNot(StartedError|FinishedError))|S(t(andaloneValueError|ringNot(StartedError|ClosedError))|paceRequiredError|eparatorRequiredError)|N(MTOKENRequiredError|o(t(ationNot(StartedError|FinishedError)|WellBalancedError)|DTDError)|amespaceDeclarationError|AMERequiredError)|C(haracterRef(In(DTDError|PrologError|EpilogError)|AtEOFError)|o(nditionalSectionNot(StartedError|FinishedError)|mment(NotFinishedError|ContainsDoubleHyphenError))|DATANotFinishedError)|TagNameMismatchError|In(ternalError|valid(HexCharacterRefError|C(haracter(RefError|InEntityError|Error)|onditionalSectionError)|DecimalCharacterRefError|URIError|Encoding(NameError|Error)))|OutOfMemoryError|D(ocumentStartError|elegateAbortedParseError|OCTYPEDeclNotFinishedError)|U(RI(RequiredError|FragmentError)|n(declaredEntityError|parsedEntityError|knownEncodingError|finishedTagError))|P(CDATARequiredError|ublicIdentifierRequiredError|arsedEntityRef(MissingSemiError|NoNameError|In(Internal(SubsetError|Error)|PrologError|EpilogError)|AtEOFError)|r(ocessingInstructionNot(StartedError|FinishedError)|ematureDocumentEndError))|E(n(codingNotSupportedError|tity(Ref(In(DTDError|PrologError|EpilogError)|erence(MissingSemiError|WithoutNameError)|LoopError|AtEOFError)|BoundaryError|Not(StartedError|FinishedError)|Is(ParameterError|ExternalError)|ValueRequiredError))|qualExpectedError|lementContentDeclNot(StartedError|FinishedError)|xt(ernalS(tandaloneEntityError|ubsetNotFinishedError)|raContentError)|mptyDocumentError)|L(iteralNot(StartedError|FinishedError)|T(RequiredError|SlashRequiredError)|essThanSymbolInAttributeError)|Attribute(RedefinedError|HasNoValueError|Not(StartedError|FinishedError)|ListNot(StartedError|FinishedError)))|rocessingInstructionKind)|E(ntity(GeneralKind|DeclarationKind|UnparsedKind|P(ar(sedKind|ameterKind)|redefined))|lement(Declaration(MixedKind|UndefinedKind|E(lementKind|mptyKind)|Kind|AnyKind)|Kind))|Attribute(N(MToken(sKind|Kind)|otationKind)|CDATAKind|ID(Ref(sKind|Kind)|Kind)|DeclarationKind|En(tit(yKind|iesKind)|umerationKind)|Kind))|M(i(n(XEdge|iaturizableWindowMask|YEdge|uteCalendarUnit)|terLineJoinStyle|ddleSubelement|xedState)|o(nthCalendarUnit|deSwitchFunctionKey|use(Moved(Mask)?|E(ntered(Mask)?|ventSubtype|xited(Mask)?))|veToBezierPathElement|mentary(ChangeButton|Push(Button|InButton)|Light(Button)?))|enuFunctionKey|a(c(intoshInterfaceStyle|OSRomanStringEncoding)|tchesPredicateOperatorType|ppedRead|x(XEdge|YEdge))|ACHOperatingSystem)|B(MPFileType|o(ttomTabsBezelBorder|ldFontMask|rderlessWindowMask|x(Se(condary|parator)|OldStyle|Primary))|uttLineCapStyle|e(zelBorder|velLineJoinStyle|low(Bottom|Top)|gin(sWith(Comparison|PredicateOperatorType)|FunctionKey))|lueControlTint|ack(spaceCharacter|tabTextMovement|ingStore(Retained|Buffered|Nonretained)|TabCharacter|wardsSearch|groundTab)|r(owser(NoColumnResizing|UserColumnResizing|AutoColumnResizing)|eakFunctionKey))|S(h(ift(JISStringEncoding|KeyMask)|ow(ControlGlyphs|InvisibleGlyphs)|adowlessSquareBezelStyle)|y(s(ReqFunctionKey|tem(D(omainMask|efined(Mask)?)|FunctionKey))|mbolStringEncoding)|c(a(nnedOption|le(None|ToFit|Proportionally))|r(oll(er(NoPart|Increment(Page|Line|Arrow)|Decrement(Page|Line|Arrow)|Knob(Slot)?|Arrows(M(inEnd|axEnd)|None|DefaultSetting))|Wheel(Mask)?|LockFunctionKey)|eenChangedEventType))|t(opFunctionKey|r(ingDrawing(OneShot|DisableScreenFontSubstitution|Uses(DeviceMetrics|FontLeading|LineFragmentOrigin))|eam(Status(Reading|NotOpen|Closed|Open(ing)?|Error|Writing|AtEnd)|Event(Has(BytesAvailable|SpaceAvailable)|None|OpenCompleted|E(ndEncountered|rrorOccurred)))))|i(ngle(DateMode|UnderlineStyle)|ze(DownFontAction|UpFontAction))|olarisOperatingSystem|unOSOperatingSystem|pecialPageOrder|e(condCalendarUnit|lect(By(Character|Paragraph|Word)|i(ng(Next|Previous)|onAffinity(Downstream|Upstream))|edTab|FunctionKey)|gmentSwitchTracking(Momentary|Select(One|Any)))|quareLineCapStyle|witchButton|ave(ToOperation|Op(tions(Yes|No|Ask)|eration)|AsOperation)|mall(SquareBezelStyle|C(ontrolSize|apsFontMask)|IconButtonBezelStyle))|H(ighlightModeMatrix|SBModeColorPanel|o(ur(Minute(SecondDatePickerElementFlag|DatePickerElementFlag)|CalendarUnit)|rizontalRuler|meFunctionKey)|TTPCookieAcceptPolicy(Never|OnlyFromMainDocumentDomain|Always)|e(lp(ButtonBezelStyle|KeyMask|FunctionKey)|avierFontAction)|PUXOperatingSystem)|Year(MonthDa(yDatePickerElementFlag|tePickerElementFlag)|CalendarUnit)|N(o(n(StandardCharacterSetFontMask|ZeroWindingRule|activatingPanelMask|LossyASCIIStringEncoding)|Border|t(ification(SuspensionBehavior(Hold|Coalesce|D(eliverImmediately|rop))|NoCoalescing|CoalescingOn(Sender|Name)|DeliverImmediately|PostToAllSessions)|PredicateType|EqualToPredicateOperatorType)|S(cr(iptError|ollerParts)|ubelement|pecifierError)|CellMask|T(itle|opLevelContainersSpecifierError|abs(BezelBorder|NoBorder|LineBorder))|I(nterfaceStyle|mage)|UnderlineStyle|FontChangeAction)|u(ll(Glyph|CellType)|m(eric(Search|PadKeyMask)|berFormatter(Round(Half(Down|Up|Even)|Ceiling|Down|Up|Floor)|Behavior(10|Default)|S(cientificStyle|pellOutStyle)|NoStyle|CurrencyStyle|DecimalStyle|P(ercentStyle|ad(Before(Suffix|Prefix)|After(Suffix|Prefix))))))|e(t(Services(BadArgumentError|NotFoundError|C(ollisionError|ancelledError)|TimeoutError|InvalidError|UnknownError|ActivityInProgress)|workDomainMask)|wlineCharacter|xt(StepInterfaceStyle|FunctionKey))|EXTSTEPStringEncoding|a(t(iveShortGlyphPacking|uralTextAlignment)|rrowFontMask))|C(hange(ReadOtherContents|GrayCell(Mask)?|BackgroundCell(Mask)?|Cleared|Done|Undone|Autosaved)|MYK(ModeColorPanel|ColorSpaceModel)|ircular(BezelStyle|Slider)|o(n(stantValueExpressionType|t(inuousCapacityLevelIndicatorStyle|entsCellMask|ain(sComparison|erSpecifierError)|rol(Glyph|KeyMask))|densedFontMask)|lor(Panel(RGBModeMask|GrayModeMask|HSBModeMask|C(MYKModeMask|olorListModeMask|ustomPaletteModeMask|rayonModeMask)|WheelModeMask|AllModesMask)|ListModeColorPanel)|reServiceDirectory|m(p(osite(XOR|Source(In|O(ut|ver)|Atop)|Highlight|C(opy|lear)|Destination(In|O(ut|ver)|Atop)|Plus(Darker|Lighter))|ressedFontMask)|mandKeyMask))|u(stom(SelectorPredicateOperatorType|PaletteModeColorPanel)|r(sor(Update(Mask)?|PointingDevice)|veToBezierPathElement))|e(nterT(extAlignment|abStopType)|ll(State|H(ighlighted|as(Image(Horizontal|OnLeftOrBottom)|OverlappingImage))|ChangesContents|Is(Bordered|InsetButton)|Disabled|Editable|LightsBy(Gray|Background|Contents)|AllowsMixedState))|l(ipPagination|o(s(ePathBezierPathElement|ableWindowMask)|ckAndCalendarDatePickerStyle)|ear(ControlTint|DisplayFunctionKey|LineFunctionKey))|a(seInsensitive(Search|PredicateOption)|n(notCreateScriptCommandError|cel(Button|TextMovement))|chesDirectory|lculation(NoError|Overflow|DivideByZero|Underflow|LossOfPrecision)|rriageReturnCharacter)|r(itical(Request|AlertStyle)|ayonModeColorPanel))|T(hick(SquareBezelStyle|erSquareBezelStyle)|ypesetter(Behavior|HorizontalTabAction|ContainerBreakAction|ZeroAdvancementAction|OriginalBehavior|ParagraphBreakAction|WhitespaceAction|L(ineBreakAction|atestBehavior))|i(ckMark(Right|Below|Left|Above)|tledWindowMask|meZoneDatePickerElementFlag)|o(olbarItemVisibilityPriority(Standard|High|User|Low)|pTabsBezelBorder|ggleButton)|IFF(Compression(N(one|EXT)|CCITTFAX(3|4)|OldJPEG|JPEG|PackBits|LZW)|FileType)|e(rminate(Now|Cancel|Later)|xt(Read(InapplicableDocumentTypeError|WriteErrorM(inimum|aximum))|Block(M(i(nimum(Height|Width)|ddleAlignment)|a(rgin|ximum(Height|Width)))|B(o(ttomAlignment|rder)|aselineAlignment)|Height|TopAlignment|P(ercentageValueType|adding)|Width|AbsoluteValueType)|StorageEdited(Characters|Attributes)|CellType|ured(RoundedBezelStyle|BackgroundWindowMask|SquareBezelStyle)|Table(FixedLayoutAlgorithm|AutomaticLayoutAlgorithm)|Field(RoundedBezel|SquareBezel|AndStepperDatePickerStyle)|WriteInapplicableDocumentTypeError|ListPrependEnclosingMarker))|woByteGlyphPacking|ab(Character|TextMovement|le(tP(oint(Mask|EventSubtype)?|roximity(Mask|EventSubtype)?)|Column(NoResizing|UserResizingMask|AutoresizingMask)|View(ReverseSequentialColumnAutoresizingStyle|GridNone|S(olid(HorizontalGridLineMask|VerticalGridLineMask)|equentialColumnAutoresizingStyle)|NoColumnAutoresizing|UniformColumnAutoresizingStyle|FirstColumnOnlyAutoresizingStyle|LastColumnOnlyAutoresizingStyle)))|rackModeMatrix)|I(n(sert(CharFunctionKey|FunctionKey|LineFunctionKey)|t(Type|ernalS(criptError|pecifierError))|dexSubelement|validIndexSpecifierError|formational(Request|AlertStyle)|PredicateOperatorType)|talicFontMask|SO(2022JPStringEncoding|Latin(1StringEncoding|2StringEncoding))|dentityMappingCharacterCollection|llegalTextMovement|mage(R(ight|ep(MatchesDevice|LoadStatus(ReadingHeader|Completed|InvalidData|Un(expectedEOF|knownType)|WillNeedAllData)))|Below|C(ellType|ache(BySize|Never|Default|Always))|Interpolation(High|None|Default|Low)|O(nly|verlaps)|Frame(Gr(oove|ayBezel)|Button|None|Photo)|L(oadStatus(ReadError|C(ompleted|ancelled)|InvalidData|UnexpectedEOF)|eft)|A(lign(Right|Bottom(Right|Left)?|Center|Top(Right|Left)?|Left)|bove)))|O(n(State|eByteGlyphPacking|OffButton|lyScrollerArrows)|ther(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|TextMovement)|SF1OperatingSystem|pe(n(GL(GO(Re(setLibrary|tainRenderers)|ClearFormatCache|FormatCacheSize)|PFA(R(obust|endererID)|M(inimumPolicy|ulti(sample|Screen)|PSafe|aximumPolicy)|BackingStore|S(creenMask|te(ncilSize|reo)|ingleRenderer|upersample|ample(s|Buffers|Alpha))|NoRecovery|C(o(lor(Size|Float)|mpliant)|losestPolicy)|OffScreen|D(oubleBuffer|epthSize)|PixelBuffer|VirtualScreenCount|FullScreen|Window|A(cc(umSize|elerated)|ux(Buffers|DepthStencil)|l(phaSize|lRenderers))))|StepUnicodeReservedBase)|rationNotSupportedForKeyS(criptError|pecifierError))|ffState|KButton|rPredicateType|bjC(B(itfield|oolType)|S(hortType|tr(ingType|uctType)|electorType)|NoType|CharType|ObjectType|DoubleType|UnionType|PointerType|VoidType|FloatType|Long(Type|longType)|ArrayType))|D(i(s(c(losureBezelStyle|reteCapacityLevelIndicatorStyle)|playWindowRunLoopOrdering)|acriticInsensitivePredicateOption|rect(Selection|PredicateModifier))|o(c(ModalWindowMask|ument(Directory|ationDirectory))|ubleType|wn(TextMovement|ArrowFunctionKey))|e(s(cendingPageOrder|ktopDirectory)|cimalTabStopType|v(ice(NColorSpaceModel|IndependentModifierFlagsMask)|eloper(Directory|ApplicationDirectory))|fault(ControlTint|TokenStyle)|lete(Char(acter|FunctionKey)|FunctionKey|LineFunctionKey)|moApplicationDirectory)|a(yCalendarUnit|teFormatter(MediumStyle|Behavior(10|Default)|ShortStyle|NoStyle|FullStyle|LongStyle))|ra(wer(Clos(ingState|edState)|Open(ingState|State))|gOperation(Generic|Move|None|Copy|Delete|Private|Every|Link|All)))|U(ser(CancelledError|D(irectory|omainMask)|FunctionKey)|RL(Handle(NotLoaded|Load(Succeeded|InProgress|Failed))|CredentialPersistence(None|Permanent|ForSession))|n(scaledWindowMask|cachedRead|i(codeStringEncoding|talicFontMask|fiedTitleAndToolbarWindowMask)|d(o(CloseGroupingRunLoopOrdering|FunctionKey)|e(finedDateComponent|rline(Style(Single|None|Thick|Double)|Pattern(Solid|D(ot|ash(Dot(Dot)?)?)))))|known(ColorSpaceModel|P(ointingDevice|ageOrder)|KeyS(criptError|pecifierError))|boldFontMask)|tilityWindowMask|TF8StringEncoding|p(dateWindowsRunLoopOrdering|TextMovement|ArrowFunctionKey))|J(ustifiedTextAlignment|PEG(2000FileType|FileType)|apaneseEUC(GlyphPacking|StringEncoding))|P(o(s(t(Now|erFontMask|WhenIdle|ASAP)|iti(on(Replace|Be(fore|ginning)|End|After)|ve(IntType|DoubleType|FloatType)))|pUp(NoArrow|ArrowAt(Bottom|Center))|werOffEventType|rtraitOrientation)|NGFileType|ush(InCell(Mask)?|OnPushOffButton)|e(n(TipMask|UpperSideMask|PointingDevice|LowerSideMask)|riodic(Mask)?)|P(S(caleField|tatus(Title|Field)|aveButton)|N(ote(Title|Field)|ame(Title|Field))|CopiesField|TitleField|ImageButton|OptionsButton|P(a(perFeedButton|ge(Range(To|From)|ChoiceMatrix))|reviewButton)|LayoutButton)|lainTextTokenStyle|a(useFunctionKey|ragraphSeparatorCharacter|ge(DownFunctionKey|UpFunctionKey))|r(int(ing(ReplyLater|Success|Cancelled|Failure)|ScreenFunctionKey|erTable(NotFound|OK|Error)|FunctionKey)|o(p(ertyList(XMLFormat|MutableContainers(AndLeaves)?|BinaryFormat|Immutable|OpenStepFormat)|rietaryStringEncoding)|gressIndicator(BarStyle|SpinningStyle|Preferred(SmallThickness|Thickness|LargeThickness|AquaThickness)))|e(ssedTab|vFunctionKey))|L(HeightForm|CancelButton|TitleField|ImageButton|O(KButton|rientationMatrix)|UnitsButton|PaperNameButton|WidthForm))|E(n(terCharacter|d(sWith(Comparison|PredicateOperatorType)|FunctionKey))|v(e(nOddWindingRule|rySubelement)|aluatedObjectExpressionType)|qualTo(Comparison|PredicateOperatorType)|ra(serPointingDevice|CalendarUnit|DatePickerElementFlag)|x(clude(10|QuickDrawElementsIconCreationOption)|pandedFontMask|ecuteFunctionKey))|V(i(ew(M(in(XMargin|YMargin)|ax(XMargin|YMargin))|HeightSizable|NotSizable|WidthSizable)|aPanelFontAction)|erticalRuler|a(lidationErrorM(inimum|aximum)|riableExpressionType))|Key(SpecifierEvaluationScriptError|Down(Mask)?|Up(Mask)?|PathExpressionType|Value(MinusSetMutation|SetSetMutation|Change(Re(placement|moval)|Setting|Insertion)|IntersectSetMutation|ObservingOption(New|Old)|UnionSetMutation|ValidationError))|QTMovie(NormalPlayback|Looping(BackAndForthPlayback|Playback))|F(1(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|7FunctionKey|i(nd(PanelAction(Replace(A(ndFind|ll(InSelection)?))?|S(howFindPanel|e(tFindString|lectAll(InSelection)?))|Next|Previous)|FunctionKey)|tPagination|le(Read(No(SuchFileError|PermissionError)|CorruptFileError|In(validFileNameError|applicableStringEncodingError)|Un(supportedSchemeError|knownError))|HandlingPanel(CancelButton|OKButton)|NoSuchFileError|ErrorM(inimum|aximum)|Write(NoPermissionError|In(validFileNameError|applicableStringEncodingError)|OutOfSpaceError|Un(supportedSchemeError|knownError))|LockingError)|xedPitchFontMask)|2(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|o(nt(Mo(noSpaceTrait|dernSerifsClass)|BoldTrait|S(ymbolicClass|criptsClass|labSerifsClass|ansSerifClass)|C(o(ndensedTrait|llectionApplicationOnlyMask)|larendonSerifsClass)|TransitionalSerifsClass|I(ntegerAdvancementsRenderingMode|talicTrait)|O(ldStyleSerifsClass|rnamentalsClass)|DefaultRenderingMode|U(nknownClass|IOptimizedTrait)|Panel(S(hadowEffectModeMask|t(andardModesMask|rikethroughEffectModeMask)|izeModeMask)|CollectionModeMask|TextColorEffectModeMask|DocumentColorEffectModeMask|UnderlineEffectModeMask|FaceModeMask|All(ModesMask|EffectsModeMask))|ExpandedTrait|VerticalTrait|F(amilyClassMask|reeformSerifsClass)|Antialiased(RenderingMode|IntegerAdvancementsRenderingMode))|cusRing(Below|Type(None|Default|Exterior)|Only|Above)|urByteGlyphPacking|rm(attingError(M(inimum|aximum))?|FeedCharacter))|8FunctionKey|unction(ExpressionType|KeyMask)|3(1FunctionKey|2FunctionKey|3FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey)|9FunctionKey|4FunctionKey|P(RevertButton|S(ize(Title|Field)|etButton)|CurrentField|Preview(Button|Field))|l(oat(ingPointSamplesBitmapFormat|Type)|agsChanged(Mask)?)|axButton|5FunctionKey|6FunctionKey)|W(heelModeColorPanel|indow(s(NTOperatingSystem|CP125(1StringEncoding|2StringEncoding|3StringEncoding|4StringEncoding|0StringEncoding)|95(InterfaceStyle|OperatingSystem))|M(iniaturizeButton|ovedEventType)|Below|CloseButton|ToolbarButton|ZoomButton|Out|DocumentIconButton|ExposedEventType|Above)|orkspaceLaunch(NewInstance|InhibitingBackgroundOnly|Default|PreferringClassic|WithoutA(ctivation|ddingToRecents)|A(sync|nd(Hide(Others)?|Print)|llowingClassicStartup))|eek(day(CalendarUnit|OrdinalCalendarUnit)|CalendarUnit)|a(ntsBidiLevels|rningAlertStyle)|r(itingDirection(RightToLeft|Natural|LeftToRight)|apCalendarComponents))|L(i(stModeMatrix|ne(Moves(Right|Down|Up|Left)|B(order|reakBy(C(harWrapping|lipping)|Truncating(Middle|Head|Tail)|WordWrapping))|S(eparatorCharacter|weep(Right|Down|Up|Left))|ToBezierPathElement|DoesntMove|arSlider)|teralSearch|kePredicateOperatorType|ghterFontAction|braryDirectory)|ocalDomainMask|e(ssThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|ft(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey))|a(yout(RightToLeft|NotDone|CantFit|OutOfGlyphs|Done|LeftToRight)|ndscapeOrientation)|ABColorSpaceModel)|A(sc(iiWithDoubleByteEUCGlyphPacking|endingPageOrder)|n(y(Type|PredicateModifier|EventMask)|choredSearch|imation(Blocking|Nonblocking(Threaded)?|E(ffect(DisappearingItemDefault|Poof)|ase(In(Out)?|Out))|Linear)|dPredicateType)|t(Bottom|tachmentCharacter|omicWrite|Top)|SCIIStringEncoding|d(obe(GB1CharacterCollection|CNS1CharacterCollection|Japan(1CharacterCollection|2CharacterCollection)|Korea1CharacterCollection)|dTraitFontAction|minApplicationDirectory)|uto(saveOperation|Pagination)|pp(lication(SupportDirectory|D(irectory|e(fined(Mask)?|legateReply(Success|Cancel|Failure)|activatedEventType))|ActivatedEventType)|KitDefined(Mask)?)|l(ternateKeyMask|pha(ShiftKeyMask|NonpremultipliedBitmapFormat|FirstBitmapFormat)|ert(SecondButtonReturn|ThirdButtonReturn|OtherReturn|DefaultReturn|ErrorReturn|FirstButtonReturn|AlternateReturn)|l(ScrollerParts|DomainsMask|PredicateModifier|LibrariesDirectory|ApplicationsDirectory))|rgument(sWrongScriptError|EvaluationScriptError)|bove(Bottom|Top)|WTEventType))\\\\b","name":"support.constant.cocoa.objcpp"},"anonymous_pattern_4":{"begin":"\\\\b(id)\\\\s*(?=<)","beginCaptures":{"1":{"name":"storage.type.objcpp"}},"end":"(?<=>)","name":"meta.id-with-protocol.objcpp","patterns":[{"include":"#protocol_list"}]},"anonymous_pattern_5":{"match":"\\\\b(NS_DURING|NS_HANDLER|NS_ENDHANDLER)\\\\b","name":"keyword.control.macro.objcpp"},"anonymous_pattern_7":{"captures":{"1":{"name":"punctuation.definition.keyword.objcpp"}},"match":"(@)(try|catch|finally|throw)\\\\b","name":"keyword.control.exception.objcpp"},"anonymous_pattern_8":{"captures":{"1":{"name":"punctuation.definition.keyword.objcpp"}},"match":"(@)(synchronized)\\\\b","name":"keyword.control.synchronize.objcpp"},"anonymous_pattern_9":{"captures":{"1":{"name":"punctuation.definition.keyword.objcpp"}},"match":"(@)(required|optional)\\\\b","name":"keyword.control.protocol-specification.objcpp"},"apple_foundation_functional_macros":{"begin":"(\\\\b(?:API_AVAILABLE|API_DEPRECATED|API_UNAVAILABLE|NS_AVAILABLE|NS_AVAILABLE_MAC|NS_AVAILABLE_IOS|NS_DEPRECATED|NS_DEPRECATED_MAC|NS_DEPRECATED_IOS|NS_SWIFT_NAME))(?:(?:\\\\s)+)?(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.preprocessor.apple-foundation.objcpp"},"2":{"name":"punctuation.section.macro.arguments.begin.bracket.round.apple-foundation.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.macro.arguments.end.bracket.round.apple-foundation.objcpp"}},"name":"meta.preprocessor.macro.callable.apple-foundation.objcpp","patterns":[{"include":"#c_lang"}]},"bracketed_content":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.scope.begin.objcpp"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.scope.end.objcpp"}},"name":"meta.bracketed.objcpp","patterns":[{"begin":"(?=predicateWithFormat:)(?<=NSPredicate )(predicateWithFormat:)","beginCaptures":{"1":{"name":"support.function.any-method.objcpp"},"2":{"name":"punctuation.separator.arguments.objcpp"}},"end":"(?=\\\\])","name":"meta.function-call.predicate.objcpp","patterns":[{"captures":{"1":{"name":"punctuation.separator.arguments.objcpp"}},"match":"\\\\bargument(Array|s)(:)","name":"support.function.any-method.name-of-parameter.objcpp"},{"captures":{"1":{"name":"punctuation.separator.arguments.objcpp"}},"match":"\\\\b\\\\w+(:)","name":"invalid.illegal.unknown-method.objcpp"},{"begin":"@\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.objcpp","patterns":[{"match":"\\\\b(AND|OR|NOT|IN)\\\\b","name":"keyword.operator.logical.predicate.cocoa.objcpp"},{"match":"\\\\b(ALL|ANY|SOME|NONE)\\\\b","name":"constant.language.predicate.cocoa.objcpp"},{"match":"\\\\b(NULL|NIL|SELF|TRUE|YES|FALSE|NO|FIRST|LAST|SIZE)\\\\b","name":"constant.language.predicate.cocoa.objcpp"},{"match":"\\\\b(MATCHES|CONTAINS|BEGINSWITH|ENDSWITH|BETWEEN)\\\\b","name":"keyword.operator.comparison.predicate.cocoa.objcpp"},{"match":"\\\\bC(ASEINSENSITIVE|I)\\\\b","name":"keyword.other.modifier.predicate.cocoa.objcpp"},{"match":"\\\\b(ANYKEY|SUBQUERY|CAST|TRUEPREDICATE|FALSEPREDICATE)\\\\b","name":"keyword.other.predicate.cocoa.objcpp"},{"match":"\\\\\\\\(\\\\\\\\|[abefnrtv'\\"?]|[0-3]\\\\d{,2}|[4-7]\\\\d?|x[a-zA-Z0-9]+)","name":"constant.character.escape.objcpp"},{"match":"\\\\\\\\.","name":"invalid.illegal.unknown-escape.objcpp"}]},{"include":"#special_variables"},{"include":"#c_functions"},{"include":"$base"}]},{"begin":"(?=\\\\w)(?<=[\\\\w\\\\])\\"] )(\\\\w+(?:(:)|(?=\\\\])))","beginCaptures":{"1":{"name":"support.function.any-method.objcpp"},"2":{"name":"punctuation.separator.arguments.objcpp"}},"end":"(?=\\\\])","name":"meta.function-call.objcpp","patterns":[{"captures":{"1":{"name":"punctuation.separator.arguments.objcpp"}},"match":"\\\\b\\\\w+(:)","name":"support.function.any-method.name-of-parameter.objcpp"},{"include":"#special_variables"},{"include":"#c_functions"},{"include":"$base"}]},{"include":"#special_variables"},{"include":"#c_functions"},{"include":"$self"}]},"c_functions":{"patterns":[{"captures":{"1":{"name":"punctuation.whitespace.support.function.leading.objcpp"},"2":{"name":"support.function.C99.objcpp"}},"match":"(\\\\s*)\\\\b(hypot(f|l)?|s(scanf|ystem|nprintf|ca(nf|lb(n(f|l)?|ln(f|l)?))|i(n(h(f|l)?|f|l)?|gn(al|bit))|tr(s(tr|pn)|nc(py|at|mp)|c(spn|hr|oll|py|at|mp)|to(imax|d|u(l(l)?|max)|k|f|l(d|l)?)|error|pbrk|ftime|len|rchr|xfrm)|printf|et(jmp|vbuf|locale|buf)|qrt(f|l)?|w(scanf|printf)|rand)|n(e(arbyint(f|l)?|xt(toward(f|l)?|after(f|l)?))|an(f|l)?)|c(s(in(h(f|l)?|f|l)?|qrt(f|l)?)|cos(h(f)?|f|l)?|imag(f|l)?|t(ime|an(h(f|l)?|f|l)?)|o(s(h(f|l)?|f|l)?|nj(f|l)?|pysign(f|l)?)|p(ow(f|l)?|roj(f|l)?)|e(il(f|l)?|xp(f|l)?)|l(o(ck|g(f|l)?)|earerr)|a(sin(h(f|l)?|f|l)?|cos(h(f|l)?|f|l)?|tan(h(f|l)?|f|l)?|lloc|rg(f|l)?|bs(f|l)?)|real(f|l)?|brt(f|l)?)|t(ime|o(upper|lower)|an(h(f|l)?|f|l)?|runc(f|l)?|gamma(f|l)?|mp(nam|file))|i(s(space|n(ormal|an)|cntrl|inf|digit|u(nordered|pper)|p(unct|rint)|finite|w(space|c(ntrl|type)|digit|upper|p(unct|rint)|lower|al(num|pha)|graph|xdigit|blank)|l(ower|ess(equal|greater)?)|al(num|pha)|gr(eater(equal)?|aph)|xdigit|blank)|logb(f|l)?|max(div|abs))|di(v|fftime)|_Exit|unget(c|wc)|p(ow(f|l)?|ut(s|c(har)?|wc(har)?)|error|rintf)|e(rf(c(f|l)?|f|l)?|x(it|p(2(f|l)?|f|l|m1(f|l)?)?))|v(s(scanf|nprintf|canf|printf|w(scanf|printf))|printf|f(scanf|printf|w(scanf|printf))|w(scanf|printf)|a_(start|copy|end|arg))|qsort|f(s(canf|e(tpos|ek))|close|tell|open|dim(f|l)?|p(classify|ut(s|c|w(s|c))|rintf)|e(holdexcept|set(e(nv|xceptflag)|round)|clearexcept|testexcept|of|updateenv|r(aiseexcept|ror)|get(e(nv|xceptflag)|round))|flush|w(scanf|ide|printf|rite)|loor(f|l)?|abs(f|l)?|get(s|c|pos|w(s|c))|re(open|e|ad|xp(f|l)?)|m(in(f|l)?|od(f|l)?|a(f|l|x(f|l)?)?))|l(d(iv|exp(f|l)?)|o(ngjmp|cal(time|econv)|g(1(p(f|l)?|0(f|l)?)|2(f|l)?|f|l|b(f|l)?)?)|abs|l(div|abs|r(int(f|l)?|ound(f|l)?))|r(int(f|l)?|ound(f|l)?)|gamma(f|l)?)|w(scanf|c(s(s(tr|pn)|nc(py|at|mp)|c(spn|hr|oll|py|at|mp)|to(imax|d|u(l(l)?|max)|k|f|l(d|l)?|mbs)|pbrk|ftime|len|r(chr|tombs)|xfrm)|to(b|mb)|rtomb)|printf|mem(set|c(hr|py|mp)|move))|a(s(sert|ctime|in(h(f|l)?|f|l)?)|cos(h(f|l)?|f|l)?|t(o(i|f|l(l)?)|exit|an(h(f|l)?|2(f|l)?|f|l)?)|b(s|ort))|g(et(s|c(har)?|env|wc(har)?)|mtime)|r(int(f|l)?|ound(f|l)?|e(name|alloc|wind|m(ove|quo(f|l)?|ainder(f|l)?))|a(nd|ise))|b(search|towc)|m(odf(f|l)?|em(set|c(hr|py|mp)|move)|ktime|alloc|b(s(init|towcs|rtowcs)|towc|len|r(towc|len))))\\\\b"},{"captures":{"1":{"name":"punctuation.whitespace.function-call.leading.objcpp"},"2":{"name":"support.function.any-method.objcpp"},"3":{"name":"punctuation.definition.parameters.objcpp"}},"match":"(?:(?=\\\\s)(?:(?<=else|new|return)|(?<!\\\\w))(\\\\s+))?(\\\\b(?!(while|for|do|if|else|switch|catch|enumerate|return|r?iterate)\\\\s*\\\\()(?:(?!NS)[A-Za-z_][A-Za-z0-9_]*+\\\\b|::)++)\\\\s*(\\\\()","name":"meta.function-call.objcpp"}]},"c_lang":{"patterns":[{"include":"#preprocessor-rule-enabled"},{"include":"#preprocessor-rule-disabled"},{"include":"#preprocessor-rule-conditional"},{"include":"#comments"},{"include":"#switch_statement"},{"match":"\\\\b(break|continue|do|else|for|goto|if|_Pragma|return|while)\\\\b","name":"keyword.control.objcpp"},{"include":"#storage_types"},{"match":"typedef","name":"keyword.other.typedef.objcpp"},{"match":"\\\\bin\\\\b","name":"keyword.other.in.objcpp"},{"match":"\\\\b(const|extern|register|restrict|static|volatile|inline|__block)\\\\b","name":"storage.modifier.objcpp"},{"match":"\\\\bk[A-Z]\\\\w*\\\\b","name":"constant.other.variable.mac-classic.objcpp"},{"match":"\\\\bg[A-Z]\\\\w*\\\\b","name":"variable.other.readwrite.global.mac-classic.objcpp"},{"match":"\\\\bs[A-Z]\\\\w*\\\\b","name":"variable.other.readwrite.static.mac-classic.objcpp"},{"match":"\\\\b(NULL|true|false|TRUE|FALSE)\\\\b","name":"constant.language.objcpp"},{"include":"#operators"},{"include":"#numbers"},{"include":"#strings"},{"include":"#special_variables"},{"begin":"^\\\\s*((\\\\#)\\\\s*define)\\\\s+((?<id>[a-zA-Z_$][\\\\w$]*))(?:(\\\\()(\\\\s*\\\\g<id>\\\\s*((,)\\\\s*\\\\g<id>\\\\s*)*(?:\\\\.\\\\.\\\\.)?)(\\\\)))?","beginCaptures":{"1":{"name":"keyword.control.directive.define.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"},"3":{"name":"entity.name.function.preprocessor.objcpp"},"5":{"name":"punctuation.definition.parameters.begin.objcpp"},"6":{"name":"variable.parameter.preprocessor.objcpp"},"8":{"name":"punctuation.separator.parameters.objcpp"},"9":{"name":"punctuation.definition.parameters.end.objcpp"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.macro.objcpp","patterns":[{"include":"#preprocessor-rule-define-line-contents"}]},{"begin":"^\\\\s*((#)\\\\s*(error|warning))\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.directive.diagnostic.$3.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.diagnostic.objcpp","patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"\\"|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.objcpp","patterns":[{"include":"#line_continuation_character"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"'|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.single.objcpp","patterns":[{"include":"#line_continuation_character"}]},{"begin":"[^'\\"]","end":"(?<!\\\\\\\\)(?=\\\\s*\\\\n)","name":"string.unquoted.single.objcpp","patterns":[{"include":"#line_continuation_character"},{"include":"#comments"}]}]},{"begin":"^\\\\s*((#)\\\\s*(include(?:_next)?|import))\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.directive.$3.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.include.objcpp","patterns":[{"include":"#line_continuation_character"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.include.objcpp"},{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.other.lt-gt.include.objcpp"}]},{"include":"#pragma-mark"},{"begin":"^\\\\s*((#)\\\\s*line)\\\\b","beginCaptures":{"1":{"name":"keyword.control.directive.line.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#strings"},{"include":"#numbers"},{"include":"#line_continuation_character"}]},{"begin":"^\\\\s*(?:((#)\\\\s*undef))\\\\b","beginCaptures":{"1":{"name":"keyword.control.directive.undef.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"match":"[a-zA-Z_$][\\\\w$]*","name":"entity.name.function.preprocessor.objcpp"},{"include":"#line_continuation_character"}]},{"begin":"^\\\\s*(?:((#)\\\\s*pragma))\\\\b","beginCaptures":{"1":{"name":"keyword.control.directive.pragma.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.pragma.objcpp","patterns":[{"include":"#strings"},{"match":"[a-zA-Z_$][\\\\w\\\\-$]*","name":"entity.other.attribute-name.pragma.preprocessor.objcpp"},{"include":"#numbers"},{"include":"#line_continuation_character"}]},{"match":"\\\\b(u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t)\\\\b","name":"support.type.sys-types.objcpp"},{"match":"\\\\b(pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t)\\\\b","name":"support.type.pthread.objcpp"},{"match":"\\\\b(int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t)\\\\b","name":"support.type.stdint.objcpp"},{"match":"\\\\b(noErr|kNilOptions|kInvalidID|kVariableLengthArray)\\\\b","name":"support.constant.mac-classic.objcpp"},{"match":"\\\\b(AbsoluteTime|Boolean|Byte|ByteCount|ByteOffset|BytePtr|CompTimeValue|ConstLogicalAddress|ConstStrFileNameParam|ConstStringPtr|Duration|Fixed|FixedPtr|Float32|Float32Point|Float64|Float80|Float96|FourCharCode|Fract|FractPtr|Handle|ItemCount|LogicalAddress|OptionBits|OSErr|OSStatus|OSType|OSTypePtr|PhysicalAddress|ProcessSerialNumber|ProcessSerialNumberPtr|ProcHandle|Ptr|ResType|ResTypePtr|ShortFixed|ShortFixedPtr|SignedByte|SInt16|SInt32|SInt64|SInt8|Size|StrFileName|StringHandle|StringPtr|TimeBase|TimeRecord|TimeScale|TimeValue|TimeValue64|UInt16|UInt32|UInt64|UInt8|UniChar|UniCharCount|UniCharCountPtr|UniCharPtr|UnicodeScalarValue|UniversalProcHandle|UniversalProcPtr|UnsignedFixed|UnsignedFixedPtr|UnsignedWide|UTF16Char|UTF32Char|UTF8Char)\\\\b","name":"support.type.mac-classic.objcpp"},{"match":"\\\\b([A-Za-z0-9_]+_t)\\\\b","name":"support.type.posix-reserved.objcpp"},{"include":"#block"},{"include":"#parens"},{"begin":"(?<!\\\\w)(?!\\\\s*(?:not|compl|sizeof|not_eq|bitand|xor|bitor|and|or|and_eq|xor_eq|or_eq|alignof|alignas|_Alignof|_Alignas|while|for|do|if|else|goto|switch|return|break|case|continue|default|void|char|short|int|signed|unsigned|long|float|double|bool|_Bool|_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|NULL|true|false|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t|struct|union|enum|typedef|auto|register|static|extern|thread_local|inline|_Noreturn|const|volatile|restrict|_Atomic)\\\\s*\\\\()(?=[a-zA-Z_]\\\\w*\\\\s*\\\\()","end":"(?<=\\\\))","name":"meta.function.objcpp","patterns":[{"include":"#function-innards"}]},{"include":"#line_continuation_character"},{"begin":"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\]\\\\)]))?(\\\\[)(?!\\\\])","beginCaptures":{"1":{"name":"variable.object.objcpp"},"2":{"name":"punctuation.definition.begin.bracket.square.objcpp"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.objcpp"}},"name":"meta.bracket.square.access.objcpp","patterns":[{"include":"#function-call-innards"}]},{"match":"\\\\[\\\\s*\\\\]","name":"storage.modifier.array.bracket.square.objcpp"},{"match":";","name":"punctuation.terminator.statement.objcpp"},{"match":",","name":"punctuation.separator.delimiter.objcpp"}],"repository":{"access-method":{"begin":"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\]\\\\)]))\\\\s*(?:(\\\\.)|(->))((?:(?:[a-zA-Z_][a-zA-Z_0-9]*)\\\\s*(?:(?:\\\\.)|(?:->)))*)\\\\s*([a-zA-Z_][a-zA-Z_0-9]*)(\\\\()","beginCaptures":{"1":{"name":"variable.object.objcpp"},"2":{"name":"punctuation.separator.dot-access.objcpp"},"3":{"name":"punctuation.separator.pointer-access.objcpp"},"4":{"patterns":[{"match":"\\\\.","name":"punctuation.separator.dot-access.objcpp"},{"match":"->","name":"punctuation.separator.pointer-access.objcpp"},{"match":"[a-zA-Z_][a-zA-Z_0-9]*","name":"variable.object.objcpp"},{"match":".+","name":"everything.else.objcpp"}]},"5":{"name":"entity.name.function.member.objcpp"},"6":{"name":"punctuation.section.arguments.begin.bracket.round.function.member.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.function.member.objcpp"}},"name":"meta.function-call.member.objcpp","patterns":[{"include":"#function-call-innards"}]},"block":{"patterns":[{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"name":"meta.block.objcpp","patterns":[{"include":"#block_innards"}]}]},"block_innards":{"patterns":[{"include":"#preprocessor-rule-enabled-block"},{"include":"#preprocessor-rule-disabled-block"},{"include":"#preprocessor-rule-conditional-block"},{"include":"#method_access"},{"include":"#member_access"},{"include":"#c_function_call"},{"begin":"(?:(?:(?=\\\\s)(?<!else|new|return)(?<=\\\\w)\\\\s+(and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)))((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"variable.other.objcpp"},"2":{"name":"punctuation.section.parens.begin.bracket.round.initialization.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.initialization.objcpp"}},"name":"meta.initialization.objcpp","patterns":[{"include":"#function-call-innards"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"patterns":[{"include":"#block_innards"}]},{"include":"#parens-block"},{"include":"$base"}]},"c_function_call":{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\s*\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\]))\\\\s*\\\\()","end":"(?<=\\\\))(?!\\\\w)","name":"meta.function-call.objcpp","patterns":[{"include":"#function-call-innards"}]},"case_statement":{"begin":"((?<!\\\\w)case(?!\\\\w))","beginCaptures":{"1":{"name":"keyword.control.case.objcpp"}},"end":"(:)","endCaptures":{"1":{"name":"punctuation.separator.case.objcpp"}},"name":"meta.conditional.case.objcpp","patterns":[{"include":"#conditional_context"}]},"comments":{"patterns":[{"captures":{"1":{"name":"meta.toc-list.banner.block.objcpp"}},"match":"^/\\\\* =(\\\\s*.*?)\\\\s*= \\\\*/$\\\\n?","name":"comment.block.objcpp"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.objcpp"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.objcpp"}},"name":"comment.block.objcpp"},{"captures":{"1":{"name":"meta.toc-list.banner.line.objcpp"}},"match":"^// =(\\\\s*.*?)\\\\s*=\\\\s*$\\\\n?","name":"comment.line.banner.objcpp"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.objcpp"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.objcpp"}},"end":"(?=\\\\n)","name":"comment.line.double-slash.objcpp","patterns":[{"include":"#line_continuation_character"}]}]}]},"conditional_context":{"patterns":[{"include":"$base"},{"include":"#block_innards"}]},"default_statement":{"begin":"((?<!\\\\w)default(?!\\\\w))","beginCaptures":{"1":{"name":"keyword.control.default.objcpp"}},"end":"(:)","endCaptures":{"1":{"name":"punctuation.separator.case.default.objcpp"}},"name":"meta.conditional.case.objcpp","patterns":[{"include":"#conditional_context"}]},"disabled":{"begin":"^\\\\s*#\\\\s*if(n?def)?\\\\b.*$","end":"^\\\\s*#\\\\s*endif\\\\b","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},"function-call-innards":{"patterns":[{"include":"#comments"},{"include":"#storage_types"},{"include":"#method_access"},{"include":"#member_access"},{"include":"#operators"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.objcpp"},"2":{"name":"punctuation.section.arguments.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.objcpp"}},"patterns":[{"include":"#function-call-innards"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"patterns":[{"include":"#function-call-innards"}]},{"include":"#block_innards"}]},"function-innards":{"patterns":[{"include":"#comments"},{"include":"#storage_types"},{"include":"#operators"},{"include":"#vararg_ellipses"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.objcpp"},"2":{"name":"punctuation.section.parameters.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parameters.end.bracket.round.objcpp"}},"name":"meta.function.definition.parameters.objcpp","patterns":[{"include":"#probably_a_parameter"},{"include":"#function-innards"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"patterns":[{"include":"#function-innards"}]},{"include":"$base"}]},"line_continuation_character":{"patterns":[{"captures":{"1":{"name":"constant.character.escape.line-continuation.objcpp"}},"match":"(\\\\\\\\)\\\\n"}]},"member_access":{"captures":{"1":{"patterns":[{"include":"#special_variables"},{"match":"(.+)","name":"variable.other.object.access.objcpp"}]},"2":{"name":"punctuation.separator.dot-access.objcpp"},"3":{"name":"punctuation.separator.pointer-access.objcpp"},"4":{"patterns":[{"include":"#member_access"},{"include":"#method_access"},{"captures":{"1":{"patterns":[{"include":"#special_variables"},{"match":"(.+)","name":"variable.other.object.access.objcpp"}]},"2":{"name":"punctuation.separator.dot-access.objcpp"},"3":{"name":"punctuation.separator.pointer-access.objcpp"}},"match":"((?:[a-zA-Z_]\\\\w*|(?<=\\\\]|\\\\)))\\\\s*)(?:((?:\\\\.\\\\*|\\\\.))|((?:->\\\\*|->)))"}]},"5":{"name":"variable.other.member.objcpp"}},"match":"((?:[a-zA-Z_]\\\\w*|(?<=\\\\]|\\\\)))\\\\s*)(?:((?:\\\\.\\\\*|\\\\.))|((?:->\\\\*|->)))((?:[a-zA-Z_]\\\\w*\\\\s*(?-mix:(?:(?:\\\\.\\\\*|\\\\.))|(?:(?:->\\\\*|->)))\\\\s*)*)\\\\s*(\\\\b(?!(?:void|char|short|int|signed|unsigned|long|float|double|bool|_Bool|_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t))[a-zA-Z_]\\\\w*\\\\b(?!\\\\())"},"method_access":{"begin":"((?:[a-zA-Z_]\\\\w*|(?<=\\\\]|\\\\)))\\\\s*)(?:((?:\\\\.\\\\*|\\\\.))|((?:->\\\\*|->)))((?:[a-zA-Z_]\\\\w*\\\\s*(?-mix:(?:(?:\\\\.\\\\*|\\\\.))|(?:(?:->\\\\*|->)))\\\\s*)*)\\\\s*([a-zA-Z_]\\\\w*)(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#special_variables"},{"match":"(.+)","name":"variable.other.object.access.objcpp"}]},"2":{"name":"punctuation.separator.dot-access.objcpp"},"3":{"name":"punctuation.separator.pointer-access.objcpp"},"4":{"patterns":[{"include":"#member_access"},{"include":"#method_access"},{"captures":{"1":{"patterns":[{"include":"#special_variables"},{"match":"(.+)","name":"variable.other.object.access.objcpp"}]},"2":{"name":"punctuation.separator.dot-access.objcpp"},"3":{"name":"punctuation.separator.pointer-access.objcpp"}},"match":"((?:[a-zA-Z_]\\\\w*|(?<=\\\\]|\\\\)))\\\\s*)(?:((?:\\\\.\\\\*|\\\\.))|((?:->\\\\*|->)))"}]},"5":{"name":"entity.name.function.member.objcpp"},"6":{"name":"punctuation.section.arguments.begin.bracket.round.function.member.objcpp"}},"contentName":"meta.function-call.member.objcpp","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.arguments.end.bracket.round.function.member.objcpp"}},"patterns":[{"include":"#function-call-innards"}]},"numbers":{"begin":"(?<!\\\\w)(?=\\\\d|\\\\.\\\\d)","end":"(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))","patterns":[{"captures":{"1":{"name":"keyword.other.unit.hexadecimal.objcpp"},"2":{"name":"constant.numeric.hexadecimal.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"3":{"name":"punctuation.separator.constant.numeric.objcpp"},"4":{"name":"constant.numeric.hexadecimal.objcpp"},"5":{"name":"constant.numeric.hexadecimal.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"6":{"name":"punctuation.separator.constant.numeric.objcpp"},"8":{"name":"keyword.other.unit.exponent.hexadecimal.objcpp"},"9":{"name":"keyword.operator.plus.exponent.hexadecimal.objcpp"},"10":{"name":"keyword.operator.minus.exponent.hexadecimal.objcpp"},"11":{"name":"constant.numeric.exponent.hexadecimal.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"12":{"name":"keyword.other.unit.suffix.floating-point.objcpp"}},"match":"(\\\\G0[xX])(?:([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?((?:(?<=[0-9a-fA-F])\\\\.|\\\\.(?=[0-9a-fA-F])))(?:([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?(?:((?<!')([pP])(\\\\+)?(\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:([lLfF](?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"captures":{"2":{"name":"constant.numeric.decimal.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"3":{"name":"punctuation.separator.constant.numeric.objcpp"},"4":{"name":"constant.numeric.decimal.point.objcpp"},"5":{"name":"constant.numeric.decimal.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"6":{"name":"punctuation.separator.constant.numeric.objcpp"},"8":{"name":"keyword.other.unit.exponent.decimal.objcpp"},"9":{"name":"keyword.operator.plus.exponent.decimal.objcpp"},"10":{"name":"keyword.operator.minus.exponent.decimal.objcpp"},"11":{"name":"constant.numeric.exponent.decimal.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"12":{"name":"keyword.other.unit.suffix.floating-point.objcpp"}},"match":"(\\\\G(?=[0-9.])(?!0[xXbB]))(?:([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?((?:(?<=[0-9])\\\\.|\\\\.(?=[0-9])))(?:([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?(?:((?<!')([eE])(\\\\+)?(\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:([lLfF](?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"captures":{"1":{"name":"keyword.other.unit.binary.objcpp"},"2":{"name":"constant.numeric.binary.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"3":{"name":"punctuation.separator.constant.numeric.objcpp"},"4":{"name":"keyword.other.unit.suffix.integer.objcpp"}},"match":"(\\\\G0[bB])([01](?:(?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"captures":{"1":{"name":"keyword.other.unit.octal.objcpp"},"2":{"name":"constant.numeric.octal.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"3":{"name":"punctuation.separator.constant.numeric.objcpp"},"4":{"name":"keyword.other.unit.suffix.integer.objcpp"}},"match":"(\\\\G0)((?:(?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))+)(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"captures":{"1":{"name":"keyword.other.unit.hexadecimal.objcpp"},"2":{"name":"constant.numeric.hexadecimal.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"3":{"name":"punctuation.separator.constant.numeric.objcpp"},"5":{"name":"keyword.other.unit.exponent.hexadecimal.objcpp"},"6":{"name":"keyword.operator.plus.exponent.hexadecimal.objcpp"},"7":{"name":"keyword.operator.minus.exponent.hexadecimal.objcpp"},"8":{"name":"constant.numeric.exponent.hexadecimal.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"9":{"name":"keyword.other.unit.suffix.integer.objcpp"}},"match":"(\\\\G0[xX])([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?<!')([pP])(\\\\+)?(\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"captures":{"2":{"name":"constant.numeric.decimal.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"3":{"name":"punctuation.separator.constant.numeric.objcpp"},"5":{"name":"keyword.other.unit.exponent.decimal.objcpp"},"6":{"name":"keyword.operator.plus.exponent.decimal.objcpp"},"7":{"name":"keyword.operator.minus.exponent.decimal.objcpp"},"8":{"name":"constant.numeric.exponent.decimal.objcpp","patterns":[{"match":"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])","name":"punctuation.separator.constant.numeric.objcpp"}]},"9":{"name":"keyword.other.unit.suffix.integer.objcpp"}},"match":"(\\\\G(?=[0-9.])(?!0[xXbB]))([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?<!')([eE])(\\\\+)?(\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))"},{"match":"(?:(?:['0-9a-zA-Z_\\\\.']|(?<=[eEpP])[+-]))+","name":"invalid.illegal.constant.numeric.objcpp"}]},"operators":{"patterns":[{"match":"(?<![\\\\w$])(sizeof)(?![\\\\w$])","name":"keyword.operator.sizeof.objcpp"},{"match":"--","name":"keyword.operator.decrement.objcpp"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.objcpp"},{"match":"%=|\\\\+=|-=|\\\\*=|(?<!\\\\()/=","name":"keyword.operator.assignment.compound.objcpp"},{"match":"&=|\\\\^=|<<=|>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.objcpp"},{"match":"<<|>>","name":"keyword.operator.bitwise.shift.objcpp"},{"match":"!=|<=|>=|==|<|>","name":"keyword.operator.comparison.objcpp"},{"match":"&&|!|\\\\|\\\\|","name":"keyword.operator.logical.objcpp"},{"match":"&|\\\\||\\\\^|~","name":"keyword.operator.objcpp"},{"match":"=","name":"keyword.operator.assignment.objcpp"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.objcpp"},{"begin":"(\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.objcpp"}},"end":"(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.objcpp"}},"patterns":[{"include":"#function-call-innards"},{"include":"$base"}]}]},"parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"name":"meta.parens.objcpp","patterns":[{"include":"$base"}]},"parens-block":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"name":"meta.parens.block.objcpp","patterns":[{"include":"#block_innards"},{"match":"(?-mix:(?<!:):(?!:))","name":"punctuation.range-based.objcpp"}]},"pragma-mark":{"captures":{"1":{"name":"meta.preprocessor.pragma.objcpp"},"2":{"name":"keyword.control.directive.pragma.pragma-mark.objcpp"},"3":{"name":"punctuation.definition.directive.objcpp"},"4":{"name":"entity.name.tag.pragma-mark.objcpp"}},"match":"^\\\\s*(((#)\\\\s*pragma\\\\s+mark)\\\\s+(.*))","name":"meta.section.objcpp"},"preprocessor-rule-conditional":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if(?:n?def)?\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#preprocessor-rule-enabled-elif"},{"include":"#preprocessor-rule-enabled-else"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"$base"}]},{"captures":{"0":{"name":"invalid.illegal.stray-$1.objcpp"}},"match":"^\\\\s*#\\\\s*(else|elif|endif)\\\\b"}]},"preprocessor-rule-conditional-block":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if(?:n?def)?\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#preprocessor-rule-enabled-elif-block"},{"include":"#preprocessor-rule-enabled-else-block"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#block_innards"}]},{"captures":{"0":{"name":"invalid.illegal.stray-$1.objcpp"}},"match":"^\\\\s*#\\\\s*(else|elif|endif)\\\\b"}]},"preprocessor-rule-conditional-line":{"patterns":[{"match":"(?:\\\\bdefined\\\\b\\\\s*$)|(?:\\\\bdefined\\\\b(?=\\\\s*\\\\(*\\\\s*(?:(?!defined\\\\b)[a-zA-Z_$][\\\\w$]*\\\\b)\\\\s*\\\\)*\\\\s*(?:\\\\n|//|/\\\\*|\\\\?|\\\\:|&&|\\\\|\\\\||\\\\\\\\\\\\s*\\\\n)))","name":"keyword.control.directive.conditional.objcpp"},{"match":"\\\\bdefined\\\\b","name":"invalid.illegal.macro-name.objcpp"},{"include":"#comments"},{"include":"#strings"},{"include":"#numbers"},{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.objcpp"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.objcpp"}},"patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#operators"},{"match":"\\\\b(NULL|true|false|TRUE|FALSE)\\\\b","name":"constant.language.objcpp"},{"match":"[a-zA-Z_$][\\\\w$]*","name":"entity.name.function.preprocessor.objcpp"},{"include":"#line_continuation_character"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"\\\\)|(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"patterns":[{"include":"#preprocessor-rule-conditional-line"}]}]},"preprocessor-rule-define-line-blocks":{"patterns":[{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"patterns":[{"include":"#preprocessor-rule-define-line-blocks"},{"include":"#preprocessor-rule-define-line-contents"}]},{"include":"#preprocessor-rule-define-line-contents"}]},"preprocessor-rule-define-line-contents":{"patterns":[{"include":"#vararg_ellipses"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"name":"meta.block.objcpp","patterns":[{"include":"#preprocessor-rule-define-line-blocks"}]},{"match":"\\\\(","name":"punctuation.section.parens.begin.bracket.round.objcpp"},{"match":"\\\\)","name":"punctuation.section.parens.end.bracket.round.objcpp"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas|asm|__asm__|auto|bool|_Bool|char|_Complex|double|enum|float|_Imaginary|int|long|short|signed|struct|typedef|union|unsigned|void)\\\\s*\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\s*\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\]))\\\\s*\\\\()","end":"(?<=\\\\))(?!\\\\w)|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","name":"meta.function.objcpp","patterns":[{"include":"#preprocessor-rule-define-line-functions"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"\\"|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.objcpp","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"},{"include":"#line_continuation_character"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"'|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.single.objcpp","patterns":[{"include":"#string_escaped_char"},{"include":"#line_continuation_character"}]},{"include":"#method_access"},{"include":"#member_access"},{"include":"$base"}]},"preprocessor-rule-define-line-functions":{"patterns":[{"include":"#comments"},{"include":"#storage_types"},{"include":"#vararg_ellipses"},{"include":"#method_access"},{"include":"#member_access"},{"include":"#operators"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.objcpp"},"2":{"name":"punctuation.section.arguments.begin.bracket.round.objcpp"}},"end":"(\\\\))|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"1":{"name":"punctuation.section.arguments.end.bracket.round.objcpp"}},"patterns":[{"include":"#preprocessor-rule-define-line-functions"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"(\\\\))|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"1":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"patterns":[{"include":"#preprocessor-rule-define-line-functions"}]},{"include":"#preprocessor-rule-define-line-contents"}]},"preprocessor-rule-disabled":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0+\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"include":"#preprocessor-rule-enabled-elif"},{"include":"#preprocessor-rule-enabled-else"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*(?:elif|else|endif)\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"$base"}]},{"begin":"\\\\n","contentName":"comment.block.preprocessor.if-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]}]},"preprocessor-rule-disabled-block":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0+\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"include":"#preprocessor-rule-enabled-elif-block"},{"include":"#preprocessor-rule-enabled-else-block"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*(?:elif|else|endif)\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#block_innards"}]},{"begin":"\\\\n","contentName":"comment.block.preprocessor.if-branch.in-block.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]}]},"preprocessor-rule-disabled-elif":{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)(?=\\\\s*\\\\(*\\\\b0+\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*(?:elif|else|endif)\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"begin":"\\\\n","contentName":"comment.block.preprocessor.elif-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]},"preprocessor-rule-enabled":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"},"3":{"name":"constant.numeric.preprocessor.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.else-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.if-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"$base"}]}]}]},"preprocessor-rule-enabled-block":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.else-branch.in-block.objcpp","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.if-branch.in-block.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#block_innards"}]}]}]},"preprocessor-rule-enabled-elif":{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:endif)\\\\b))","patterns":[{"begin":"^\\\\s*((#)\\\\s*(else)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.elif-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*(elif)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.elif-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"include":"$base"}]}]},"preprocessor-rule-enabled-elif-block":{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments"},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:endif)\\\\b))","patterns":[{"begin":"^\\\\s*((#)\\\\s*(else)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.elif-branch.in-block.objcpp","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*(elif)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.elif-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"include":"#block_innards"}]}]},"preprocessor-rule-enabled-else":{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"$base"}]},"preprocessor-rule-enabled-else-block":{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#block_innards"}]},"probably_a_parameter":{"captures":{"1":{"name":"variable.parameter.probably.objcpp"}},"match":"(?<=(?:[a-zA-Z_0-9] |[&*>\\\\]\\\\)]))\\\\s*([a-zA-Z_]\\\\w*)\\\\s*(?=(?:\\\\[\\\\]\\\\s*)?(?:,|\\\\)))"},"static_assert":{"begin":"(static_assert|_Static_assert)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.static_assert.objcpp"},"2":{"name":"punctuation.section.arguments.begin.bracket.round.objcpp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.arguments.end.bracket.round.objcpp"}},"patterns":[{"begin":"(,)\\\\s*(?=(?:L|u8|u|U\\\\s*\\\\\\")?)","beginCaptures":{"1":{"name":"punctuation.separator.delimiter.objcpp"}},"end":"(?=\\\\))","name":"meta.static_assert.message.objcpp","patterns":[{"include":"#string_context"},{"include":"#string_context_c"}]},{"include":"#function_call_context"}]},"storage_types":{"patterns":[{"match":"(?-mix:(?<!\\\\w)(?:void|char|short|int|signed|unsigned|long|float|double|bool|_Bool)(?!\\\\w))","name":"storage.type.built-in.primitive.objcpp"},{"match":"(?-mix:(?<!\\\\w)(?:_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t)(?!\\\\w))","name":"storage.type.built-in.objcpp"},{"match":"(?-mix:\\\\b(asm|__asm__|enum|struct|union)\\\\b)","name":"storage.type.$1.objcpp"}]},"string_escaped_char":{"patterns":[{"match":"\\\\\\\\(\\\\\\\\|[abefnprtv'\\"?]|[0-3]\\\\d{,2}|[4-7]\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})","name":"constant.character.escape.objcpp"},{"match":"\\\\\\\\.","name":"invalid.illegal.unknown-escape.objcpp"}]},"string_placeholder":{"patterns":[{"match":"%(\\\\d+\\\\$)?[#0\\\\- +']*[,;:_]?((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?(\\\\.((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]","name":"constant.other.placeholder.objcpp"},{"captures":{"1":{"name":"invalid.illegal.placeholder.objcpp"}},"match":"(%)(?!\\"\\\\s*(PRI|SCN))"}]},"strings":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.objcpp","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"},{"include":"#line_continuation_character"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.single.objcpp","patterns":[{"include":"#string_escaped_char"},{"include":"#line_continuation_character"}]}]},"switch_conditional_parentheses":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.parens.begin.bracket.round.conditional.switch.objcpp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.parens.end.bracket.round.conditional.switch.objcpp"}},"name":"meta.conditional.switch.objcpp","patterns":[{"include":"#conditional_context"}]},"switch_statement":{"begin":"(((?<!\\\\w)switch(?!\\\\w)))","beginCaptures":{"1":{"name":"meta.head.switch.objcpp"},"2":{"name":"keyword.control.switch.objcpp"}},"end":"(?:(?<=\\\\})|(?=[;>\\\\[\\\\]=]))","name":"meta.block.switch.objcpp","patterns":[{"begin":"\\\\G ?","end":"((?:\\\\{|(?=;)))","endCaptures":{"1":{"name":"punctuation.section.block.begin.bracket.curly.switch.objcpp"}},"name":"meta.head.switch.objcpp","patterns":[{"include":"#switch_conditional_parentheses"},{"include":"$base"}]},{"begin":"(?<=\\\\{)","end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.section.block.end.bracket.curly.switch.objcpp"}},"name":"meta.body.switch.objcpp","patterns":[{"include":"#default_statement"},{"include":"#case_statement"},{"include":"$base"},{"include":"#block_innards"}]},{"begin":"(?<=})[\\\\s\\\\n]*","end":"[\\\\s\\\\n]*(?=;)","name":"meta.tail.switch.objcpp","patterns":[{"include":"$base"}]}]},"vararg_ellipses":{"match":"(?<!\\\\.)\\\\.\\\\.\\\\.(?!\\\\.)","name":"punctuation.vararg-ellipses.objcpp"}}},"comment":{"patterns":[{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.objcpp"}},"end":"\\\\*/","name":"comment.block.objcpp"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.objcpp"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.objcpp"}},"end":"\\\\n","name":"comment.line.double-slash.objcpp","patterns":[{"match":"(?>\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.objcpp"}]}]}]},"cpp_lang":{"patterns":[{"include":"#special_block"},{"include":"#strings"},{"match":"\\\\b(friend|explicit|virtual|override|final|noexcept)\\\\b","name":"storage.modifier.objcpp"},{"match":"\\\\b(private:|protected:|public:)","name":"storage.type.modifier.access.objcpp"},{"match":"\\\\b(catch|try|throw|using)\\\\b","name":"keyword.control.objcpp"},{"match":"\\\\bdelete\\\\b(\\\\s*\\\\[\\\\])?|\\\\bnew\\\\b(?!])","name":"keyword.control.objcpp"},{"match":"\\\\b(f|m)[A-Z]\\\\w*\\\\b","name":"variable.other.readwrite.member.objcpp"},{"match":"\\\\bthis\\\\b","name":"variable.language.this.objcpp"},{"match":"\\\\bnullptr\\\\b","name":"constant.language.objcpp"},{"include":"#template_definition"},{"match":"\\\\btemplate\\\\b\\\\s*","name":"storage.type.template.objcpp"},{"match":"\\\\b(const_cast|dynamic_cast|reinterpret_cast|static_cast)\\\\b\\\\s*","name":"keyword.operator.cast.objcpp"},{"captures":{"1":{"name":"entity.scope.objcpp"},"2":{"name":"entity.scope.name.objcpp"},"3":{"name":"punctuation.separator.namespace.access.objcpp"}},"match":"((?:[a-zA-Z_][a-zA-Z_0-9]*::)*)([a-zA-Z_][a-zA-Z_0-9]*)(::)","name":"punctuation.separator.namespace.access.objcpp"},{"match":"\\\\b(and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\b","name":"keyword.operator.objcpp"},{"match":"\\\\b(decltype|wchar_t|char16_t|char32_t)\\\\b","name":"storage.type.objcpp"},{"match":"\\\\b(constexpr|export|mutable|typename|thread_local)\\\\b","name":"storage.modifier.objcpp"},{"begin":"(?:^|(?:(?<!else|new|=)))((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.objcpp"},"2":{"name":"punctuation.definition.parameters.begin.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.objcpp"}},"name":"meta.function.destructor.objcpp","patterns":[{"include":"$base"}]},{"begin":"(?:^|(?:(?<!else|new|=)))((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.objcpp"},"2":{"name":"punctuation.definition.parameters.begin.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.objcpp"}},"name":"meta.function.destructor.prototype.objcpp","patterns":[{"include":"$base"}]},{"include":"#c_lang"}],"repository":{"angle_brackets":{"begin":"<","end":">","name":"meta.angle-brackets.objcpp","patterns":[{"include":"#angle_brackets"},{"include":"$base"}]},"block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"name":"meta.block.objcpp","patterns":[{"captures":{"1":{"name":"support.function.any-method.objcpp"},"2":{"name":"punctuation.definition.parameters.objcpp"}},"match":"((?!while|for|do|if|else|switch|catch|enumerate|return|r?iterate)(?:\\\\b[A-Za-z_][A-Za-z0-9_]*+\\\\b|::)*+)\\\\s*(\\\\()","name":"meta.function-call.objcpp"},{"include":"$base"}]},"constructor":{"patterns":[{"begin":"(?:^\\\\s*)((?!while|for|do|if|else|switch|catch|enumerate|r?iterate)[A-Za-z_][A-Za-z0-9_:]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.constructor.objcpp"},"2":{"name":"punctuation.definition.parameters.begin.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.objcpp"}},"name":"meta.function.constructor.objcpp","patterns":[{"include":"#probably_a_parameter"},{"include":"#function-innards"}]},{"begin":"(:)((?=\\\\s*[A-Za-z_][A-Za-z0-9_:]*\\\\s*(\\\\()))","beginCaptures":{"1":{"name":"punctuation.definition.parameters.objcpp"}},"end":"(?=\\\\{)","name":"meta.function.constructor.initializer-list.objcpp","patterns":[{"include":"$base"}]}]},"special_block":{"patterns":[{"begin":"\\\\b(using)\\\\b\\\\s*(namespace)\\\\b\\\\s*((?:[_A-Za-z][_A-Za-z0-9]*\\\\b(::)?)*)","beginCaptures":{"1":{"name":"keyword.control.objcpp"},"2":{"name":"storage.type.namespace.objcpp"},"3":{"name":"entity.name.type.objcpp"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.statement.objcpp"}},"name":"meta.using-namespace-declaration.objcpp"},{"begin":"\\\\b(namespace)\\\\b\\\\s*([_A-Za-z][_A-Za-z0-9]*\\\\b)?+","beginCaptures":{"1":{"name":"storage.type.namespace.objcpp"},"2":{"name":"entity.name.type.objcpp"}},"captures":{"1":{"name":"keyword.control.namespace.$2.objcpp"}},"end":"(?<=\\\\})|(?=(;|,|\\\\(|\\\\)|>|\\\\[|\\\\]|=))","name":"meta.namespace-block.objcpp","patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.scope.objcpp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.scope.objcpp"}},"patterns":[{"include":"#special_block"},{"include":"#constructor"},{"include":"$base"}]},{"include":"$base"}]},{"begin":"\\\\b(?:(class)|(struct))\\\\b\\\\s*([_A-Za-z][_A-Za-z0-9]*\\\\b)?+(\\\\s*:\\\\s*(public|protected|private)\\\\s*([_A-Za-z][_A-Za-z0-9]*\\\\b)((\\\\s*,\\\\s*(public|protected|private)\\\\s*[_A-Za-z][_A-Za-z0-9]*\\\\b)*))?","beginCaptures":{"1":{"name":"storage.type.class.objcpp"},"2":{"name":"storage.type.struct.objcpp"},"3":{"name":"entity.name.type.objcpp"},"5":{"name":"storage.type.modifier.access.objcpp"},"6":{"name":"entity.name.type.inherited.objcpp"},"7":{"patterns":[{"match":"(public|protected|private)","name":"storage.type.modifier.access.objcpp"},{"match":"[_A-Za-z][_A-Za-z0-9]*","name":"entity.name.type.inherited.objcpp"}]}},"end":"(?<=\\\\})|(?=(;|\\\\(|\\\\)|>|\\\\[|\\\\]|=))","name":"meta.class-struct-block.objcpp","patterns":[{"include":"#angle_brackets"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"(\\\\})(\\\\s*\\\\n)?","endCaptures":{"1":{"name":"punctuation.section.block.end.bracket.curly.objcpp"},"2":{"name":"invalid.illegal.you-forgot-semicolon.objcpp"}},"patterns":[{"include":"#special_block"},{"include":"#constructor"},{"include":"$base"}]},{"include":"$base"}]},{"begin":"\\\\b(extern)(?=\\\\s*\\")","beginCaptures":{"1":{"name":"storage.modifier.objcpp"}},"end":"(?<=\\\\})|(?=\\\\w)|(?=\\\\s*#\\\\s*endif\\\\b)","name":"meta.extern-block.objcpp","patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"\\\\}|(?=\\\\s*#\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"patterns":[{"include":"#special_block"},{"include":"$base"}]},{"include":"$base"}]}]},"strings":{"patterns":[{"begin":"(u|u8|U|L)?\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"},"1":{"name":"meta.encoding.objcpp"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.objcpp","patterns":[{"match":"\\\\\\\\u\\\\h{4}|\\\\\\\\U\\\\h{8}","name":"constant.character.escape.objcpp"},{"match":"\\\\\\\\['\\"?\\\\\\\\abfnrtv]","name":"constant.character.escape.objcpp"},{"match":"\\\\\\\\[0-7]{1,3}","name":"constant.character.escape.objcpp"},{"match":"\\\\\\\\x\\\\h+","name":"constant.character.escape.objcpp"},{"include":"#string_placeholder"}]},{"begin":"(u|u8|U|L)?R\\"(?:([^ ()\\\\\\\\\\\\t]{0,16})|([^ ()\\\\\\\\\\\\t]*))\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"},"1":{"name":"meta.encoding.objcpp"},"3":{"name":"invalid.illegal.delimiter-too-long.objcpp"}},"end":"\\\\)\\\\2(\\\\3)\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"},"1":{"name":"invalid.illegal.delimiter-too-long.objcpp"}},"name":"string.quoted.double.raw.objcpp"}]},"template_definition":{"begin":"\\\\b(template)\\\\s*(<)\\\\s*","beginCaptures":{"1":{"name":"storage.type.template.objcpp"},"2":{"name":"meta.template.angle-brackets.start.objcpp"}},"end":">","endCaptures":{"0":{"name":"meta.template.angle-brackets.end.objcpp"}},"name":"template.definition.objcpp","patterns":[{"include":"#template_definition_argument"}]},"template_definition_argument":{"captures":{"1":{"name":"storage.type.template.objcpp"},"2":{"name":"storage.type.template.objcpp"},"3":{"name":"entity.name.type.template.objcpp"},"4":{"name":"storage.type.template.objcpp"},"5":{"name":"meta.template.operator.ellipsis.objcpp"},"6":{"name":"entity.name.type.template.objcpp"},"7":{"name":"storage.type.template.objcpp"},"8":{"name":"entity.name.type.template.objcpp"},"9":{"name":"keyword.operator.assignment.objcpp"},"10":{"name":"constant.language.objcpp"},"11":{"name":"meta.template.operator.comma.objcpp"}},"match":"\\\\s*(?:([a-zA-Z_][a-zA-Z_0-9]*\\\\s*)|((?:[a-zA-Z_][a-zA-Z_0-9]*\\\\s+)*)([a-zA-Z_][a-zA-Z_0-9]*)|([a-zA-Z_][a-zA-Z_0-9]*)\\\\s*(\\\\.\\\\.\\\\.)\\\\s*([a-zA-Z_][a-zA-Z_0-9]*)|((?:[a-zA-Z_][a-zA-Z_0-9]*\\\\s+)*)([a-zA-Z_][a-zA-Z_0-9]*)\\\\s*(=)\\\\s*(\\\\w+))(,|(?=>))"}}},"cpp_lang_newish":{"patterns":[{"include":"#special_block"},{"match":"(?-mix:##[a-zA-Z_]\\\\w*(?!\\\\w))","name":"variable.other.macro.argument.objcpp"},{"include":"#strings"},{"match":"(?<!\\\\w)((?:inline|constexpr|mutable|friend|explicit|virtual))(?!\\\\w)","name":"storage.modifier.specificer.functional.pre-parameters.$1.objcpp"},{"match":"(?<!\\\\w)((?:final|override|volatile|const|noexcept))(?!\\\\w)(?=\\\\s*(?:(?:(?:(?:\\\\{|;))|[\\\\n\\\\r])))","name":"storage.modifier.specifier.functional.post-parameters.$1.objcpp"},{"match":"(?<!\\\\w)((?:const|static|volatile|register|restrict|extern))(?!\\\\w)","name":"storage.modifier.specifier.$1.objcpp"},{"match":"(?<!\\\\w)((?:private|protected|public)) *:","name":"storage.type.modifier.access.control.$1.objcpp"},{"match":"(?<!\\\\w)(?:throw|try|catch)(?!\\\\w)","name":"keyword.control.exception.$1.objcpp"},{"match":"(?<!\\\\w)(using|typedef)(?!\\\\w)","name":"keyword.other.$1.objcpp"},{"include":"#memory_operators"},{"match":"\\\\bthis\\\\b","name":"variable.language.this.objcpp"},{"include":"#constants"},{"include":"#template_definition"},{"match":"\\\\btemplate\\\\b\\\\s*","name":"storage.type.template.objcpp"},{"match":"\\\\b(const_cast|dynamic_cast|reinterpret_cast|static_cast)\\\\b\\\\s*","name":"keyword.operator.cast.$1.objcpp"},{"include":"#scope_resolution"},{"match":"\\\\b(decltype|wchar_t|char16_t|char32_t)\\\\b","name":"storage.type.objcpp"},{"match":"\\\\b(constexpr|export|mutable|typename|thread_local)\\\\b","name":"storage.modifier.objcpp"},{"begin":"(?:^|(?:(?<!else|new|=)))((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.destructor.objcpp"},"2":{"name":"punctuation.definition.parameters.begin.destructor.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.destructor.objcpp"}},"name":"meta.function.destructor.objcpp","patterns":[{"include":"$base"}]},{"begin":"(?:^|(?:(?<!else|new|=)))((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.objcpp"},"2":{"name":"punctuation.definition.parameters.begin.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.objcpp"}},"name":"meta.function.destructor.prototype.objcpp","patterns":[{"include":"$base"}]},{"include":"#preprocessor-rule-enabled"},{"include":"#preprocessor-rule-disabled"},{"include":"#preprocessor-rule-conditional"},{"include":"#comments-c"},{"match":"\\\\b(break|case|continue|default|do|else|for|goto|if|_Pragma|return|switch|while)\\\\b","name":"keyword.control.$1.objcpp"},{"include":"#storage_types_c"},{"match":"\\\\b(const|extern|register|restrict|static|volatile|inline)\\\\b","name":"storage.modifier.objcpp"},{"include":"#operators"},{"include":"#operator_overload"},{"include":"#number_literal"},{"include":"#strings-c"},{"begin":"^\\\\s*((\\\\#)\\\\s*define)\\\\s+((?<id>[a-zA-Z_$][\\\\w$]*))(?:(\\\\()(\\\\s*\\\\g<id>\\\\s*((,)\\\\s*\\\\g<id>\\\\s*)*(?:\\\\.\\\\.\\\\.)?)(\\\\)))?","beginCaptures":{"1":{"name":"keyword.control.directive.define.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"},"3":{"name":"entity.name.function.preprocessor.objcpp"},"5":{"name":"punctuation.definition.parameters.begin.objcpp"},"6":{"name":"variable.parameter.preprocessor.objcpp"},"8":{"name":"punctuation.separator.parameters.objcpp"},"9":{"name":"punctuation.definition.parameters.end.objcpp"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.macro.objcpp","patterns":[{"include":"#preprocessor-rule-define-line-contents"}]},{"begin":"^\\\\s*((#)\\\\s*(error|warning))\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.directive.diagnostic.$3.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.diagnostic.objcpp","patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"\\"|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.objcpp","patterns":[{"include":"#line_continuation_character"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"'|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.single.objcpp","patterns":[{"include":"#line_continuation_character"}]},{"begin":"[^'\\"]","end":"(?<!\\\\\\\\)(?=\\\\s*\\\\n)","name":"string.unquoted.single.objcpp","patterns":[{"include":"#line_continuation_character"},{"include":"#comments-c"}]}]},{"begin":"^\\\\s*((#)\\\\s*(include(?:_next)?|import))\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.directive.$3.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.include.objcpp","patterns":[{"include":"#line_continuation_character"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.include.objcpp"},{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.other.lt-gt.include.objcpp"}]},{"include":"#pragma-mark"},{"begin":"^\\\\s*((#)\\\\s*line)\\\\b","beginCaptures":{"1":{"name":"keyword.control.directive.line.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#strings-c"},{"include":"#number_literal"},{"include":"#line_continuation_character"}]},{"begin":"^\\\\s*(?:((#)\\\\s*undef))\\\\b","beginCaptures":{"1":{"name":"keyword.control.directive.undef.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"match":"[a-zA-Z_$][\\\\w$]*","name":"entity.name.function.preprocessor.objcpp"},{"include":"#line_continuation_character"}]},{"begin":"^\\\\s*(?:((#)\\\\s*pragma))\\\\b","beginCaptures":{"1":{"name":"keyword.control.directive.pragma.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=(?://|/\\\\*))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.pragma.objcpp","patterns":[{"include":"#strings-c"},{"match":"[a-zA-Z_$][\\\\w\\\\-$]*","name":"entity.other.attribute-name.pragma.preprocessor.objcpp"},{"include":"#number_literal"},{"include":"#line_continuation_character"}]},{"match":"\\\\b(u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t)\\\\b","name":"support.type.sys-types.objcpp"},{"match":"\\\\b(pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t)\\\\b","name":"support.type.pthread.objcpp"},{"match":"\\\\b(int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t)\\\\b","name":"support.type.stdint.objcpp"},{"match":"(?<!\\\\w)[a-zA-Z_](?:\\\\w)*_t(?!\\\\w)","name":"support.type.posix-reserved.objcpp"},{"include":"#block-c"},{"include":"#parens-c"},{"begin":"(?<!\\\\w)(?!\\\\s*(?:not|compl|sizeof|new|delete|not_eq|bitand|xor|bitor|and|or|throw|and_eq|xor_eq|or_eq|alignof|alignas|typeid|noexcept|static_cast|dynamic_cast|const_cast|reinterpret_cast|while|for|do|if|else|goto|switch|try|catch|return|break|case|continue|default|auto|void|char|short|int|signed|unsigned|long|float|double|bool|wchar_t|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|NULL|true|false|nullptr|class|struct|union|enum|const|static|volatile|register|restrict|extern|inline|constexpr|mutable|friend|explicit|virtual|volatile|const|noexcept|constexpr|mutable|constexpr|consteval|private|protected|public|this|template|namespace|using|operator|typedef|decltype|typename|asm|__asm__|concept|requires|export|thread_local|atomic_cancel|atomic_commit|atomic_noexcept|co_await|co_return|co_yield|import|module|reflexpr|synchronized)\\\\s*\\\\()(?=[a-zA-Z_]\\\\w*\\\\s*\\\\()","end":"(?<=\\\\))","name":"meta.function.definition.objcpp","patterns":[{"include":"#function-innards-c"}]},{"include":"#line_continuation_character"},{"begin":"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\]\\\\)]))?(\\\\[)(?!\\\\])","beginCaptures":{"1":{"name":"variable.other.object.objcpp"},"2":{"name":"punctuation.definition.begin.bracket.square.objcpp"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.square.objcpp"}},"name":"meta.bracket.square.access.objcpp","patterns":[{"include":"#function-call-innards-c"}]},{"match":"(?-mix:(?<!delete))\\\\\\\\[\\\\\\\\s*\\\\\\\\]","name":"storage.modifier.array.bracket.square.objcpp"},{"match":";","name":"punctuation.terminator.statement.objcpp"},{"match":",","name":"punctuation.separator.delimiter.objcpp"}],"repository":{"access-member":{"captures":{"1":{"name":"variable.other.object.objcpp"},"2":{"name":"punctuation.separator.dot-access.objcpp"},"3":{"name":"punctuation.separator.pointer-access.objcpp"},"4":{"patterns":[{"match":"\\\\.","name":"punctuation.separator.dot-access.objcpp"},{"match":"->","name":"punctuation.separator.pointer-access.objcpp"},{"match":"[a-zA-Z_]\\\\w*","name":"variable.other.object.objcpp"},{"match":".+","name":"everything.else.objcpp"}]},"5":{"name":"variable.other.member.objcpp"}},"match":"(?:(?:([a-zA-Z_]\\\\w*)|(?<=\\\\]|\\\\))))\\\\s*(?:(?:((?:(?:\\\\.|\\\\.\\\\*)))|((?:(?:->|->\\\\*)))))\\\\s*((?:[a-zA-Z_]\\\\w*\\\\s*(?:(?:\\\\.|->))\\\\s*)*)\\\\b(?!(?:auto|void|char|short|int|signed|unsigned|long|float|double|bool|wchar_t|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t))([a-zA-Z_]\\\\w*)\\\\b(?!\\\\()","name":"variable.other.object.access.objcpp"},"access-method":{"begin":"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\]\\\\)]))\\\\s*(?:(\\\\.)|(->))((?:(?:[a-zA-Z_][a-zA-Z_0-9]*)\\\\s*(?:(?:\\\\.)|(?:->)))*)\\\\s*([a-zA-Z_][a-zA-Z_0-9]*)(\\\\()","beginCaptures":{"1":{"name":"variable.other.object.objcpp"},"2":{"name":"punctuation.separator.dot-access.objcpp"},"3":{"name":"punctuation.separator.pointer-access.objcpp"},"4":{"patterns":[{"match":"\\\\.","name":"punctuation.separator.dot-access.objcpp"},{"match":"->","name":"punctuation.separator.pointer-access.objcpp"},{"match":"[a-zA-Z_][a-zA-Z_0-9]*","name":"variable.other.object.objcpp"},{"match":".+","name":"everything.else.objcpp"}]},"5":{"name":"entity.name.function.member.objcpp"},"6":{"name":"punctuation.section.arguments.begin.bracket.round.function.member.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.function.member.objcpp"}},"name":"meta.function-call.member.objcpp","patterns":[{"include":"#function-call-innards-c"}]},"angle_brackets":{"begin":"<","end":">","name":"meta.angle-brackets.objcpp","patterns":[{"include":"#angle_brackets"},{"include":"$base"}]},"block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"name":"meta.block.objcpp","patterns":[{"captures":{"1":{"name":"support.function.any-method.objcpp"},"2":{"name":"punctuation.definition.parameters.objcpp"}},"match":"((?!while|for|do|if|else|switch|catch|return)(?:\\\\b[A-Za-z_][A-Za-z0-9_]*+\\\\b|::)*+)\\\\s*(\\\\()","name":"meta.function-call.objcpp"},{"include":"$base"}]},"block-c":{"patterns":[{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"name":"meta.block.objcpp","patterns":[{"include":"#block_innards-c"}]}]},"block_innards-c":{"patterns":[{"include":"#preprocessor-rule-enabled-block"},{"include":"#preprocessor-rule-disabled-block"},{"include":"#preprocessor-rule-conditional-block"},{"include":"#access-method"},{"include":"#access-member"},{"include":"#c_function_call"},{"begin":"(?:(?:(?=\\\\s)(?<!else|new|return)(?<=\\\\w)\\\\s+(and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)))((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"variable.other.objcpp"},"2":{"name":"punctuation.section.parens.begin.bracket.round.initialization.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.initialization.objcpp"}},"name":"meta.initialization.objcpp","patterns":[{"include":"#function-call-innards-c"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"patterns":[{"include":"#block_innards-c"}]},{"include":"#parens-block-c"},{"include":"$base"}]},"c_function_call":{"begin":"(?!(?:while|for|do|if|else|switch|catch|return|typeid|alignof|alignas|sizeof|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\s*(?:(?:<(?:[\\\\s<>,\\\\w])*>\\\\s*))?\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\]))\\\\s*\\\\()","end":"(?<=\\\\))(?!\\\\w)","name":"meta.function-call.objcpp","patterns":[{"include":"#function-call-innards-c"}]},"comments-c":{"patterns":[{"captures":{"1":{"name":"meta.toc-list.banner.block.objcpp"}},"match":"^/\\\\* =(\\\\s*.*?)\\\\s*= \\\\*/$\\\\n?","name":"comment.block.objcpp"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.objcpp"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.objcpp"}},"name":"comment.block.objcpp"},{"captures":{"1":{"name":"meta.toc-list.banner.line.objcpp"}},"match":"^// =(\\\\s*.*?)\\\\s*=\\\\s*$\\\\n?","name":"comment.line.banner.objcpp"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.objcpp"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.objcpp"}},"end":"(?=\\\\n)","name":"comment.line.double-slash.objcpp","patterns":[{"include":"#line_continuation_character"}]}]}]},"constants":{"match":"(?<!\\\\w)(?:NULL|true|false|nullptr)(?!\\\\w)","name":"constant.language.objcpp"},"constructor":{"patterns":[{"begin":"(?:^\\\\s*)((?!while|for|do|if|else|switch|catch)[A-Za-z_][A-Za-z0-9_:]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.constructor.objcpp"},"2":{"name":"punctuation.definition.parameters.begin.constructor.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.constructor.objcpp"}},"name":"meta.function.constructor.objcpp","patterns":[{"include":"#probably_a_parameter"},{"include":"#function-innards-c"}]},{"begin":"(:)((?=\\\\s*[A-Za-z_][A-Za-z0-9_:]*\\\\s*(\\\\()))","beginCaptures":{"1":{"name":"punctuation.definition.initializer-list.parameters.objcpp"}},"end":"(?=\\\\{)","name":"meta.function.constructor.initializer-list.objcpp","patterns":[{"include":"$base"}]}]},"disabled":{"begin":"^\\\\s*#\\\\s*if(n?def)?\\\\b.*$","end":"^\\\\s*#\\\\s*endif\\\\b","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},"function-call-innards-c":{"patterns":[{"include":"#comments-c"},{"include":"#storage_types_c"},{"include":"#access-method"},{"include":"#access-member"},{"include":"#operators"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|return|typeid|alignof|alignas|sizeof|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()((?:new)\\\\s*((?:(?:<(?:[\\\\s<>,\\\\w])*>\\\\s*))?)|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.memory.new.objcpp"},"2":{"patterns":[{"include":"#template_call_innards"}]},"3":{"name":"punctuation.section.arguments.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.objcpp"}},"patterns":[{"include":"#function-call-innards-c"}]},{"begin":"(?<!\\\\w)(?!\\\\s*(?:not|compl|sizeof|new|delete|not_eq|bitand|xor|bitor|and|or|throw|and_eq|xor_eq|or_eq|alignof|alignas|typeid|noexcept|static_cast|dynamic_cast|const_cast|reinterpret_cast|while|for|do|if|else|goto|switch|try|catch|return|break|case|continue|default|auto|void|char|short|int|signed|unsigned|long|float|double|bool|wchar_t|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|NULL|true|false|nullptr|class|struct|union|enum|const|static|volatile|register|restrict|extern|inline|constexpr|mutable|friend|explicit|virtual|volatile|const|noexcept|constexpr|mutable|constexpr|consteval|private|protected|public|this|template|namespace|using|operator|typedef|decltype|typename|asm|__asm__|concept|requires|export|thread_local|atomic_cancel|atomic_commit|atomic_noexcept|co_await|co_return|co_yield|import|module|reflexpr|synchronized)\\\\s*\\\\()((?:[a-zA-Z_]\\\\w*\\\\s*(?:(?:<(?:[\\\\s<>,\\\\w])*>\\\\s*))?::)*)\\\\s*([a-zA-Z_]\\\\w*)\\\\s*(?:((?:<(?:[\\\\s<>,\\\\w])*>\\\\s*)))?(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#scope_resolution"}]},"2":{"name":"entity.name.function.call.objcpp"},"3":{"patterns":[{"include":"#template_call_innards"}]},"4":{"name":"punctuation.section.arguments.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arguments.end.bracket.round.objcpp"}},"patterns":[{"include":"#function-call-innards-c"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"patterns":[{"include":"#function-call-innards-c"}]},{"include":"#block_innards-c"}]},"function-innards-c":{"patterns":[{"include":"#comments-c"},{"include":"#storage_types_c"},{"include":"#operators"},{"include":"#vararg_ellipses-c"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|return|typeid|alignof|alignas|sizeof|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.objcpp"},"2":{"name":"punctuation.section.parameters.begin.bracket.round.objcpp"}},"end":"\\\\)|:","endCaptures":{"0":{"name":"punctuation.section.parameters.end.bracket.round.objcpp"}},"name":"meta.function.definition.parameters.objcpp","patterns":[{"include":"#probably_a_parameter"},{"include":"#function-innards-c"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"patterns":[{"include":"#function-innards-c"}]},{"include":"$base"}]},"line_continuation_character":{"patterns":[{"captures":{"1":{"name":"constant.character.escape.line-continuation.objcpp"}},"match":"(\\\\\\\\)\\\\n"}]},"literal_numeric_seperator":{"match":"(?<!')'(?!')","name":"punctuation.separator.constant.numeric.objcpp"},"memory_operators":{"captures":{"1":{"name":"keyword.operator.memory.delete.array.objcpp"},"2":{"name":"keyword.operator.memory.delete.array.bracket.objcpp"},"3":{"name":"keyword.operator.memory.delete.objcpp"},"4":{"name":"keyword.operator.memory.new.objcpp"}},"match":"(?<!\\\\w)(?:(?:(delete)\\\\s*(\\\\[\\\\])|(delete))|(new))(?!\\\\w)","name":"keyword.operator.memory.objcpp"},"number_literal":{"captures":{"2":{"name":"keyword.other.unit.hexadecimal.objcpp"},"3":{"name":"constant.numeric.hexadecimal.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"4":{"name":"punctuation.separator.constant.numeric.objcpp"},"5":{"name":"constant.numeric.hexadecimal.objcpp"},"6":{"name":"constant.numeric.hexadecimal.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"7":{"name":"punctuation.separator.constant.numeric.objcpp"},"8":{"name":"keyword.other.unit.exponent.hexadecimal.objcpp"},"9":{"name":"keyword.operator.plus.exponent.hexadecimal.objcpp"},"10":{"name":"keyword.operator.minus.exponent.hexadecimal.objcpp"},"11":{"name":"constant.numeric.exponent.hexadecimal.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"12":{"name":"constant.numeric.decimal.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"13":{"name":"punctuation.separator.constant.numeric.objcpp"},"14":{"name":"constant.numeric.decimal.point.objcpp"},"15":{"name":"constant.numeric.decimal.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"16":{"name":"punctuation.separator.constant.numeric.objcpp"},"17":{"name":"keyword.other.unit.exponent.decimal.objcpp"},"18":{"name":"keyword.operator.plus.exponent.decimal.objcpp"},"19":{"name":"keyword.operator.minus.exponent.decimal.objcpp"},"20":{"name":"constant.numeric.exponent.decimal.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"21":{"name":"keyword.other.unit.suffix.floating-point.objcpp"},"22":{"name":"keyword.other.unit.binary.objcpp"},"23":{"name":"constant.numeric.binary.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"24":{"name":"punctuation.separator.constant.numeric.objcpp"},"25":{"name":"keyword.other.unit.octal.objcpp"},"26":{"name":"constant.numeric.octal.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"27":{"name":"punctuation.separator.constant.numeric.objcpp"},"28":{"name":"keyword.other.unit.hexadecimal.objcpp"},"29":{"name":"constant.numeric.hexadecimal.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"30":{"name":"punctuation.separator.constant.numeric.objcpp"},"31":{"name":"keyword.other.unit.exponent.hexadecimal.objcpp"},"32":{"name":"keyword.operator.plus.exponent.hexadecimal.objcpp"},"33":{"name":"keyword.operator.minus.exponent.hexadecimal.objcpp"},"34":{"name":"constant.numeric.exponent.hexadecimal.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"35":{"name":"constant.numeric.decimal.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"36":{"name":"punctuation.separator.constant.numeric.objcpp"},"37":{"name":"keyword.other.unit.exponent.decimal.objcpp"},"38":{"name":"keyword.operator.plus.exponent.decimal.objcpp"},"39":{"name":"keyword.operator.minus.exponent.decimal.objcpp"},"40":{"name":"constant.numeric.exponent.decimal.objcpp","patterns":[{"include":"#literal_numeric_seperator"}]},"41":{"name":"keyword.other.unit.suffix.integer.objcpp"},"42":{"name":"keyword.other.unit.user-defined.objcpp"}},"match":"((?<!\\\\w)(?:(?:(?:(0[xX])(?:([0-9a-fA-F](?:(?:(?:[0-9a-fA-F]|((?<!')'(?!')))))*))?((?:(?:(?<=[0-9a-fA-F])\\\\.|\\\\.(?=[0-9a-fA-F]))))(?:([0-9a-fA-F](?:(?:(?:[0-9a-fA-F]|((?<!')'(?!')))))*))?(?:([pP])(\\\\+)?(\\\\-)?((?:[0-9](?:(?:(?:[0-9]|(?:(?<!')'(?!')))))*)))?|(?:([0-9](?:(?:(?:[0-9]|((?<!')'(?!')))))*))?((?:(?:(?<=[0-9])\\\\.|\\\\.(?=[0-9]))))(?:([0-9](?:(?:(?:[0-9]|((?<!')'(?!')))))*))?(?:([eE])(\\\\+)?(\\\\-)?((?:[0-9](?:(?:(?:[0-9]|(?:(?<!')'(?!')))))*)))?)(?:([lLfF](?!\\\\w)))?|(?:(?:(?:(?:(?:(0[bB])((?:(?:(?:[01]|((?<!')'(?!')))))+)|(0)((?:(?:(?:[0-7]|((?<!')'(?!')))))+)))|(0[xX])([0-9a-fA-F](?:(?:(?:[0-9a-fA-F]|((?<!')'(?!')))))*)(?:([pP])(\\\\+)?(\\\\-)?((?:[0-9](?:(?:(?:[0-9]|(?:(?<!')'(?!')))))*)))?))|([0-9](?:(?:(?:[0-9]|((?<!')'(?!')))))*)(?:([eE])(\\\\+)?(\\\\-)?((?:[0-9](?:(?:(?:[0-9]|(?:(?<!')'(?!')))))*)))?)(?:((?:(?:(?:(?:(?:(?:(?:(?:(?:(?:(?:(?:LL[uU]|ll[uU]))|[uU]LL))|[uU]ll))|ll))|LL))|[uUlL]))(?!\\\\w)))?))(\\\\w*))"},"operator_overload":{"begin":"((?:[a-zA-Z_]\\\\w*\\\\s*(?:(?:<(?:[\\\\s<>,\\\\w])*>\\\\s*))?::)*)\\\\s*(operator)((?:(?:\\\\s*(?:\\\\+\\\\+|\\\\-\\\\-|\\\\(\\\\)|\\\\[\\\\]|\\\\->|\\\\+\\\\+|\\\\-\\\\-|\\\\+|\\\\-|!|~|\\\\*|&|\\\\->\\\\*|\\\\*|\\\\/|%|\\\\+|\\\\-|<<|>>|<=>|<|<=|>|>=|==|!=|&|\\\\^|\\\\||&&|\\\\|\\\\||=|\\\\+=|\\\\-=|\\\\*=|\\\\/=|%=|<<=|>>=|&=|\\\\^=|\\\\|=|,)|\\\\s+(?:(?:(?:new|new\\\\[\\\\]|delete|delete\\\\[\\\\])|(?:[a-zA-Z_]\\\\w*\\\\s*(?:(?:<(?:[\\\\s<>,\\\\w])*>\\\\s*))?::)*[a-zA-Z_]\\\\w*\\\\s*(?:&)?)))))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.scope.objcpp"},"2":{"name":"keyword.other.operator.overload.objcpp"},"3":{"name":"entity.name.operator.overloadee.objcpp"},"4":{"name":"punctuation.section.parameters.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parameters.end.bracket.round.objcpp"}},"name":"meta.function.definition.parameters.operator-overload.objcpp","patterns":[{"include":"#probably_a_parameter"},{"include":"#function-innards-c"}]},"operators":{"patterns":[{"match":"(?-mix:(?<!\\\\w)((?:not|compl|sizeof|new|delete|not_eq|bitand|xor|bitor|and|or|and_eq|xor_eq|or_eq|alignof|alignas|typeid|noexcept))(?!\\\\w))","name":"keyword.operator.$1.objcpp"},{"match":"--","name":"keyword.operator.decrement.objcpp"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.objcpp"},{"match":"%=|\\\\+=|-=|\\\\*=|(?<!\\\\()/=","name":"keyword.operator.assignment.compound.objcpp"},{"match":"&=|\\\\^=|<<=|>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.objcpp"},{"match":"<<|>>","name":"keyword.operator.bitwise.shift.objcpp"},{"match":"!=|<=|>=|==|<|>","name":"keyword.operator.comparison.objcpp"},{"match":"&&|!|\\\\|\\\\|","name":"keyword.operator.logical.objcpp"},{"match":"&|\\\\||\\\\^|~","name":"keyword.operator.objcpp"},{"match":"=","name":"keyword.operator.assignment.objcpp"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.objcpp"},{"applyEndPatternLast":true,"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.objcpp"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.objcpp"}},"patterns":[{"include":"#access-method"},{"include":"#access-member"},{"include":"#c_function_call"},{"include":"$base"}]}]},"parens-block-c":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"name":"meta.block.parens.objcpp","patterns":[{"include":"#block_innards-c"},{"match":"(?<!:):(?!:)","name":"punctuation.range-based.objcpp"}]},"parens-c":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"name":"punctuation.section.parens-c\\b.objcpp","patterns":[{"include":"$base"}]},"pragma-mark":{"captures":{"1":{"name":"meta.preprocessor.pragma.objcpp"},"2":{"name":"keyword.control.directive.pragma.pragma-mark.objcpp"},"3":{"name":"punctuation.definition.directive.objcpp"},"4":{"name":"entity.name.tag.pragma-mark.objcpp"}},"match":"^\\\\s*(((#)\\\\s*pragma\\\\s+mark)\\\\s+(.*))","name":"meta.section.objcpp"},"preprocessor-rule-conditional":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if(?:n?def)?\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#preprocessor-rule-enabled-elif"},{"include":"#preprocessor-rule-enabled-else"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"$base"}]},{"captures":{"0":{"name":"invalid.illegal.stray-$1.objcpp"}},"match":"^\\\\s*#\\\\s*(else|elif|endif)\\\\b"}]},"preprocessor-rule-conditional-block":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if(?:n?def)?\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#preprocessor-rule-enabled-elif-block"},{"include":"#preprocessor-rule-enabled-else-block"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#block_innards-c"}]},{"captures":{"0":{"name":"invalid.illegal.stray-$1.objcpp"}},"match":"^\\\\s*#\\\\s*(else|elif|endif)\\\\b"}]},"preprocessor-rule-conditional-line":{"patterns":[{"match":"(?:\\\\bdefined\\\\b\\\\s*$)|(?:\\\\bdefined\\\\b(?=\\\\s*\\\\(*\\\\s*(?:(?!defined\\\\b)[a-zA-Z_$][\\\\w$]*\\\\b)\\\\s*\\\\)*\\\\s*(?:\\\\n|//|/\\\\*|\\\\?|\\\\:|&&|\\\\|\\\\||\\\\\\\\\\\\s*\\\\n)))","name":"keyword.control.directive.conditional.objcpp"},{"match":"\\\\bdefined\\\\b","name":"invalid.illegal.macro-name.objcpp"},{"include":"#comments-c"},{"include":"#strings-c"},{"include":"#number_literal"},{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.objcpp"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.objcpp"}},"patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#operators"},{"include":"#constants"},{"match":"[a-zA-Z_$][\\\\w$]*","name":"entity.name.function.preprocessor.objcpp"},{"include":"#line_continuation_character"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"\\\\)|(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","endCaptures":{"0":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"patterns":[{"include":"#preprocessor-rule-conditional-line"}]}]},"preprocessor-rule-define-line-blocks":{"patterns":[{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"patterns":[{"include":"#preprocessor-rule-define-line-blocks"},{"include":"#preprocessor-rule-define-line-contents"}]},{"include":"#preprocessor-rule-define-line-contents"}]},"preprocessor-rule-define-line-contents":{"patterns":[{"include":"#vararg_ellipses-c"},{"match":"(?-mix:##?[a-zA-Z_]\\\\w*(?!\\\\w))","name":"variable.other.macro.argument.objcpp"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"}|(?=\\\\s*#\\\\s*(?:elif|else|endif)\\\\b)|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"name":"meta.block.objcpp","patterns":[{"include":"#preprocessor-rule-define-line-blocks"}]},{"match":"\\\\(","name":"punctuation.section.parens.begin.bracket.round.objcpp"},{"match":"\\\\)","name":"punctuation.section.parens.end.bracket.round.objcpp"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|return|typeid|alignof|alignas|sizeof|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas|asm|__asm__|auto|bool|_Bool|char|_Complex|double|enum|float|_Imaginary|int|long|short|signed|struct|typedef|union|unsigned|void)\\\\s*\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\s*\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\]))\\\\s*\\\\()","end":"(?<=\\\\))(?!\\\\w)|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","name":"meta.function.objcpp","patterns":[{"include":"#preprocessor-rule-define-line-functions"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"\\"|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.objcpp","patterns":[{"include":"#string_escaped_char-c"},{"include":"#string_placeholder-c"},{"include":"#line_continuation_character"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"'|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.single.objcpp","patterns":[{"include":"#string_escaped_char-c"},{"include":"#line_continuation_character"}]},{"include":"#access-method"},{"include":"#access-member"},{"include":"$base"}]},"preprocessor-rule-define-line-functions":{"patterns":[{"include":"#comments-c"},{"include":"#storage_types_c"},{"include":"#vararg_ellipses-c"},{"include":"#access-method"},{"include":"#access-member"},{"include":"#operators"},{"begin":"(?!(?:while|for|do|if|else|switch|catch|return|typeid|alignof|alignas|sizeof|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\s*\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\(\\\\)|\\\\[\\\\])))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.objcpp"},"2":{"name":"punctuation.section.arguments.begin.bracket.round.objcpp"}},"end":"(\\\\))|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"1":{"name":"punctuation.section.arguments.end.bracket.round.objcpp"}},"patterns":[{"include":"#preprocessor-rule-define-line-functions"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.bracket.round.objcpp"}},"end":"(\\\\))|(?<!\\\\\\\\)(?=\\\\s*\\\\n)","endCaptures":{"1":{"name":"punctuation.section.parens.end.bracket.round.objcpp"}},"patterns":[{"include":"#preprocessor-rule-define-line-functions"}]},{"include":"#preprocessor-rule-define-line-contents"}]},"preprocessor-rule-disabled":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0+\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments-c"},{"include":"#preprocessor-rule-enabled-elif"},{"include":"#preprocessor-rule-enabled-else"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*(?:elif|else|endif)\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"$base"}]},{"begin":"\\\\n","contentName":"comment.block.preprocessor.if-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]}]},"preprocessor-rule-disabled-block":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0+\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments-c"},{"include":"#preprocessor-rule-enabled-elif-block"},{"include":"#preprocessor-rule-enabled-else-block"},{"include":"#preprocessor-rule-disabled-elif"},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*(?:elif|else|endif)\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#block_innards-c"}]},{"begin":"\\\\n","contentName":"comment.block.preprocessor.if-branch.in-block.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]}]},"preprocessor-rule-disabled-elif":{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)(?=\\\\s*\\\\(*\\\\b0+\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*(?:elif|else|endif)\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments-c"},{"begin":"\\\\n","contentName":"comment.block.preprocessor.elif-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]},"preprocessor-rule-enabled":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"},"3":{"name":"constant.numeric.preprocessor.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments-c"},{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.else-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.if-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"$base"}]}]}]},"preprocessor-rule-enabled-block":{"patterns":[{"begin":"^\\\\s*((#)\\\\s*if\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"^\\\\s*((#)\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments-c"},{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.else-branch.in-block.objcpp","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.if-branch.in-block.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#block_innards-c"}]}]}]},"preprocessor-rule-enabled-elif":{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments-c"},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:endif)\\\\b))","patterns":[{"begin":"^\\\\s*((#)\\\\s*(else)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.elif-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*(elif)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.elif-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"include":"$base"}]}]},"preprocessor-rule-enabled-elif-block":{"begin":"^\\\\s*((#)\\\\s*elif\\\\b)(?=\\\\s*\\\\(*\\\\b0*1\\\\b\\\\)*\\\\s*(?:$|//|/\\\\*))","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"begin":"\\\\G(?=.)(?!//|/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))","end":"(?=//)|(?=/\\\\*(?!.*\\\\\\\\\\\\s*\\\\n))|(?<!\\\\\\\\)(?=\\\\n)","name":"meta.preprocessor.objcpp","patterns":[{"include":"#preprocessor-rule-conditional-line"}]},{"include":"#comments-c"},{"begin":"\\\\n","end":"(?=^\\\\s*((#)\\\\s*(?:endif)\\\\b))","patterns":[{"begin":"^\\\\s*((#)\\\\s*(else)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.elif-branch.in-block.objcpp","end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"^\\\\s*((#)\\\\s*(elif)\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"contentName":"comment.block.preprocessor.elif-branch.objcpp","end":"(?=^\\\\s*((#)\\\\s*(?:else|elif|endif)\\\\b))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"include":"#block_innards-c"}]}]},"preprocessor-rule-enabled-else":{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"$base"}]},"preprocessor-rule-enabled-else-block":{"begin":"^\\\\s*((#)\\\\s*else\\\\b)","beginCaptures":{"0":{"name":"meta.preprocessor.objcpp"},"1":{"name":"keyword.control.directive.conditional.objcpp"},"2":{"name":"punctuation.definition.directive.objcpp"}},"end":"(?=^\\\\s*((#)\\\\s*endif\\\\b))","patterns":[{"include":"#block_innards-c"}]},"probably_a_parameter":{"captures":{"1":{"name":"variable.parameter.probably.defaulted.objcpp"},"2":{"name":"variable.parameter.probably.objcpp"}},"match":"(?:(?:([a-zA-Z_]\\\\w*)\\\\s*(?==)|(?<=\\\\w\\\\s|\\\\*\\\\/|[&*>\\\\]\\\\)])\\\\s*([a-zA-Z_]\\\\w*)\\\\s*(?=(?:\\\\[\\\\]\\\\s*)?(?:(?:,|\\\\))))))"},"scope_resolution":{"captures":{"1":{"patterns":[{"include":"#scope_resolution"}]},"2":{"name":"entity.name.namespace.scope-resolution.objcpp"},"3":{"patterns":[{"include":"#template_call_innards"}]},"4":{"name":"punctuation.separator.namespace.access.objcpp"}},"match":"((?:[a-zA-Z_]\\\\w*\\\\s*(?:(?:<(?:[\\\\s<>,\\\\w])*>\\\\s*))?::)*\\\\s*)([a-zA-Z_]\\\\w*)\\\\s*((?:<(?:[\\\\s<>,\\\\w])*>\\\\s*))?(::)","name":"meta.scope-resolution.objcpp"},"special_block":{"patterns":[{"begin":"\\\\b(using)\\\\s+(namespace)\\\\s+(?:((?:[a-zA-Z_]\\\\w*\\\\s*(?:(?:<(?:[\\\\s<>,\\\\w])*>\\\\s*))?::)*)\\\\s*)?((?<!\\\\w)[a-zA-Z_]\\\\w*(?!\\\\w))(?=;|\\\\n)","beginCaptures":{"1":{"name":"keyword.other.using.directive.objcpp"},"2":{"name":"keyword.other.namespace.directive.objcpp storage.type.namespace.directive.objcpp"},"3":{"patterns":[{"include":"#scope_resolution"}]},"4":{"name":"entity.name.namespace.objcpp"}},"comment":"https://en.cppreference.com/w/cpp/language/namespace","end":";","endCaptures":{"0":{"name":"punctuation.terminator.statement.objcpp"}},"name":"meta.using-namespace-declaration.objcpp"},{"begin":"(?<!\\\\w)(namespace)\\\\s+(?:(?:((?:[a-zA-Z_]\\\\w*\\\\s*(?:(?:<(?:[\\\\s<>,\\\\w])*>\\\\s*))?::)*[a-zA-Z_]\\\\w*)|(?={)))","beginCaptures":{"1":{"name":"keyword.other.namespace.definition.objcpp storage.type.namespace.definition.objcpp"},"2":{"patterns":[{"match":"(?-mix:(?<!\\\\w)[a-zA-Z_]\\\\w*(?!\\\\w))","name":"entity.name.type.objcpp"},{"match":"::","name":"punctuation.separator.namespace.access.objcpp"}]}},"end":"(?<=\\\\})|(?=(;|,|\\\\(|\\\\)|>|\\\\[|\\\\]|=))","name":"meta.namespace-block.objcpp","patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.scope.objcpp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.scope.objcpp"}},"patterns":[{"include":"#special_block"},{"include":"#constructor"},{"include":"$base"}]},{"include":"$base"}]},{"begin":"\\\\b(?:(class)|(struct))\\\\b\\\\s*([_A-Za-z][_A-Za-z0-9]*\\\\b)?+(\\\\s*:\\\\s*(public|protected|private)\\\\s*([_A-Za-z][_A-Za-z0-9]*\\\\b)((\\\\s*,\\\\s*(public|protected|private)\\\\s*[_A-Za-z][_A-Za-z0-9]*\\\\b)*))?","beginCaptures":{"1":{"name":"storage.type.class.objcpp"},"2":{"name":"storage.type.struct.objcpp"},"3":{"name":"entity.name.type.objcpp"},"5":{"name":"storage.type.modifier.access.objcpp"},"6":{"name":"entity.name.type.inherited.objcpp"},"7":{"patterns":[{"match":"(public|protected|private)","name":"storage.type.modifier.access.objcpp"},{"match":"[_A-Za-z][_A-Za-z0-9]*","name":"entity.name.type.inherited.objcpp"}]}},"end":"(?<=\\\\})|(;)|(?=(\\\\(|\\\\)|>|\\\\[|\\\\]|=))","endCaptures":{"1":{"name":"punctuation.terminator.statement.objcpp"}},"name":"meta.class-struct-block.objcpp","patterns":[{"include":"#angle_brackets"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"(\\\\})(\\\\s*\\\\n)?","endCaptures":{"1":{"name":"punctuation.section.block.end.bracket.curly.objcpp"},"2":{"name":"invalid.illegal.you-forgot-semicolon.objcpp"}},"patterns":[{"include":"#special_block"},{"include":"#constructor"},{"include":"$base"}]},{"include":"$base"}]},{"begin":"\\\\b(extern)(?=\\\\s*\\")","beginCaptures":{"1":{"name":"storage.modifier.objcpp"}},"end":"(?<=\\\\})|(?=\\\\w)|(?=\\\\s*#\\\\s*endif\\\\b)","name":"meta.extern-block.objcpp","patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.bracket.curly.objcpp"}},"end":"\\\\}|(?=\\\\s*#\\\\s*endif\\\\b)","endCaptures":{"0":{"name":"punctuation.section.block.end.bracket.curly.objcpp"}},"patterns":[{"include":"#special_block"},{"include":"$base"}]},{"include":"$base"}]}]},"storage_types_c":{"patterns":[{"match":"(?<!\\\\w)(?:auto|void|char|short|int|signed|unsigned|long|float|double|bool|wchar_t)(?!\\\\w)","name":"storage.type.primitive.objcpp"},{"match":"(?<!\\\\w)(?:u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t)(?!\\\\w)","name":"storage.type.objcpp"},{"match":"(?<!\\\\w)(asm|__asm__|enum|union|struct)(?!\\\\w)","name":"storage.type.$1.objcpp"}]},"string_escaped_char-c":{"patterns":[{"match":"\\\\\\\\(\\\\\\\\|[abefnprtv'\\"?]|[0-3]\\\\d{,2}|[4-7]\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})","name":"constant.character.escape.objcpp"},{"match":"\\\\\\\\.","name":"invalid.illegal.unknown-escape.objcpp"}]},"string_placeholder-c":{"patterns":[{"match":"%(\\\\d+\\\\$)?[#0\\\\- +']*[,;:_]?((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?(\\\\.((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]","name":"constant.other.placeholder.objcpp"}]},"strings":{"patterns":[{"begin":"(u|u8|U|L)?\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"},"1":{"name":"meta.encoding.objcpp"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.objcpp","patterns":[{"match":"\\\\\\\\u\\\\h{4}|\\\\\\\\U\\\\h{8}","name":"constant.character.escape.objcpp"},{"match":"\\\\\\\\['\\"?\\\\\\\\abfnrtv]","name":"constant.character.escape.objcpp"},{"match":"\\\\\\\\[0-7]{1,3}","name":"constant.character.escape.objcpp"},{"match":"\\\\\\\\x\\\\h+","name":"constant.character.escape.objcpp"},{"include":"#string_placeholder-c"}]},{"begin":"(u|u8|U|L)?R\\"(?:([^ ()\\\\\\\\\\\\t]{0,16})|([^ ()\\\\\\\\\\\\t]*))\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"},"1":{"name":"meta.encoding.objcpp"},"3":{"name":"invalid.illegal.delimiter-too-long.objcpp"}},"end":"\\\\)\\\\2(\\\\3)\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"},"1":{"name":"invalid.illegal.delimiter-too-long.objcpp"}},"name":"string.quoted.double.raw.objcpp"}]},"strings-c":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.double.objcpp","patterns":[{"include":"#string_escaped_char-c"},{"include":"#string_placeholder-c"},{"include":"#line_continuation_character"}]},{"begin":"(?-mix:(?<![\\\\da-fA-F])')","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.objcpp"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.objcpp"}},"name":"string.quoted.single.objcpp","patterns":[{"include":"#string_escaped_char-c"},{"include":"#line_continuation_character"}]}]},"template_call_innards":{"captures":{"0":{"name":"meta.template.call.objcpp","patterns":[{"include":"#storage_types_c"},{"include":"#constants"},{"include":"#scope_resolution"},{"match":"(?<!\\\\w)[a-zA-Z_]\\\\w*(?!\\\\w)","name":"storage.type.user-defined.objcpp"},{"include":"#operators"},{"include":"#number_literal"},{"include":"#strings"},{"match":",","name":"punctuation.separator.comma.template.argument.objcpp"}]}},"match":"<(?:[\\\\s<>,\\\\w])*>\\\\s*"},"template_definition":{"begin":"(?-mix:(?<!\\\\w)(template)\\\\s*(<))","beginCaptures":{"1":{"name":"storage.type.template.objcpp"},"2":{"name":"punctuation.section.angle-brackets.start.template.definition.objcpp"}},"end":"(?-mix:(>))","endCaptures":{"1":{"name":"punctuation.section.angle-brackets.end.template.definition.objcpp"}},"name":"meta.template.definition.objcpp","patterns":[{"include":"#scope_resolution"},{"include":"#template_definition_argument"},{"include":"#template_call_innards"}]},"template_definition_argument":{"captures":{"2":{"name":"storage.type.template.argument.$1.objcpp"},"3":{"name":"storage.type.template.argument.$2.objcpp"},"4":{"name":"entity.name.type.template.objcpp"},"5":{"name":"storage.type.template.objcpp"},"6":{"name":"keyword.operator.ellipsis.template.definition.objcpp"},"7":{"name":"entity.name.type.template.objcpp"},"8":{"name":"storage.type.template.objcpp"},"9":{"name":"entity.name.type.template.objcpp"},"10":{"name":"keyword.operator.assignment.objcpp"},"11":{"name":"constant.other.objcpp"},"12":{"name":"punctuation.separator.comma.template.argument.objcpp"}},"match":"((?:(?:(?:(?:(?:(?:\\\\s*([a-zA-Z_]\\\\w*)|((?:[a-zA-Z_]\\\\w*\\\\s+)+)([a-zA-Z_]\\\\w*)))|([a-zA-Z_]\\\\w*)\\\\s*(\\\\.\\\\.\\\\.)\\\\s*([a-zA-Z_]\\\\w*)))|((?:[a-zA-Z_]\\\\w*\\\\s+)*)([a-zA-Z_]\\\\w*)\\\\s*([=])\\\\s*(\\\\w+)))\\\\s*(?:(?:(,)|(?=>))))"},"vararg_ellipses-c":{"match":"(?<!\\\\.)\\\\.\\\\.\\\\.(?!\\\\.)","name":"punctuation.vararg-ellipses.objcpp"}}},"disabled":{"begin":"^\\\\s*#\\\\s*if(n?def)?\\\\b.*$","comment":"eat nested preprocessor if(def)s","end":"^\\\\s*#\\\\s*endif\\\\b.*$","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},"implementation_innards":{"patterns":[{"include":"#preprocessor-rule-enabled-implementation"},{"include":"#preprocessor-rule-disabled-implementation"},{"include":"#preprocessor-rule-other-implementation"},{"include":"#property_directive"},{"include":"#method_super"},{"include":"$base"}]},"interface_innards":{"patterns":[{"include":"#preprocessor-rule-enabled-interface"},{"include":"#preprocessor-rule-disabled-interface"},{"include":"#preprocessor-rule-other-interface"},{"include":"#properties"},{"include":"#protocol_list"},{"include":"#method"},{"include":"$base"}]},"method":{"begin":"^(-|\\\\+)\\\\s*","end":"(?=\\\\{|#)|;","name":"meta.function.objcpp","patterns":[{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.type.begin.objcpp"}},"end":"(\\\\))\\\\s*(\\\\w+\\\\b)","endCaptures":{"1":{"name":"punctuation.definition.type.end.objcpp"},"2":{"name":"entity.name.function.objcpp"}},"name":"meta.return-type.objcpp","patterns":[{"include":"#protocol_list"},{"include":"#protocol_type_qualifier"},{"include":"$base"}]},{"match":"\\\\b\\\\w+(?=:)","name":"entity.name.function.name-of-parameter.objcpp"},{"begin":"((:))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.name-of-parameter.objcpp"},"2":{"name":"punctuation.separator.arguments.objcpp"},"3":{"name":"punctuation.definition.type.begin.objcpp"}},"end":"(\\\\))\\\\s*(\\\\w+\\\\b)?","endCaptures":{"1":{"name":"punctuation.definition.type.end.objcpp"},"2":{"name":"variable.parameter.function.objcpp"}},"name":"meta.argument-type.objcpp","patterns":[{"include":"#protocol_list"},{"include":"#protocol_type_qualifier"},{"include":"$base"}]},{"include":"#comment"}]},"method_super":{"begin":"^(?=-|\\\\+)","end":"(?<=\\\\})|(?=#)","name":"meta.function-with-body.objcpp","patterns":[{"include":"#method"},{"include":"$base"}]},"pragma-mark":{"captures":{"1":{"name":"meta.preprocessor.objcpp"},"2":{"name":"keyword.control.import.pragma.objcpp"},"3":{"name":"meta.toc-list.pragma-mark.objcpp"}},"match":"^\\\\s*(#\\\\s*(pragma\\\\s+mark)\\\\s+(.*))","name":"meta.section.objcpp"},"preprocessor-rule-disabled-implementation":{"begin":"^\\\\s*(#(if)\\\\s+(0)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.objcpp"},"2":{"name":"keyword.control.import.if.objcpp"},"3":{"name":"constant.numeric.preprocessor.objcpp"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b)","captures":{"1":{"name":"meta.preprocessor.objcpp"},"2":{"name":"keyword.control.import.else.objcpp"}},"end":"(?=^\\\\s*#\\\\s*endif\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#interface_innards"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","name":"comment.block.preprocessor.if-branch.objcpp","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]},"preprocessor-rule-disabled-interface":{"begin":"^\\\\s*(#(if)\\\\s+(0)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.objcpp"},"2":{"name":"keyword.control.import.if.objcpp"},"3":{"name":"constant.numeric.preprocessor.objcpp"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b)","captures":{"1":{"name":"meta.preprocessor.objcpp"},"2":{"name":"keyword.control.import.else.objcpp"}},"end":"(?=^\\\\s*#\\\\s*endif\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#interface_innards"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","name":"comment.block.preprocessor.if-branch.objcpp","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]}]},"preprocessor-rule-enabled-implementation":{"begin":"^\\\\s*(#(if)\\\\s+(0*1)\\\\b)","captures":{"1":{"name":"meta.preprocessor.objcpp"},"2":{"name":"keyword.control.import.if.objcpp"},"3":{"name":"constant.numeric.preprocessor.objcpp"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.objcpp"},"2":{"name":"keyword.control.import.else.objcpp"}},"contentName":"comment.block.preprocessor.else-branch.objcpp","end":"(?=^\\\\s*#\\\\s*endif\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#implementation_innards"}]}]},"preprocessor-rule-enabled-interface":{"begin":"^\\\\s*(#(if)\\\\s+(0*1)\\\\b)","captures":{"1":{"name":"meta.preprocessor.objcpp"},"2":{"name":"keyword.control.import.if.objcpp"},"3":{"name":"constant.numeric.preprocessor.objcpp"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"begin":"^\\\\s*(#\\\\s*(else)\\\\b).*","captures":{"1":{"name":"meta.preprocessor.objcpp"},"2":{"name":"keyword.control.import.else.objcpp"}},"contentName":"comment.block.preprocessor.else-branch.objcpp","end":"(?=^\\\\s*#\\\\s*endif\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#disabled"},{"include":"#pragma-mark"}]},{"begin":"","end":"(?=^\\\\s*#\\\\s*(else|endif)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","patterns":[{"include":"#interface_innards"}]}]},"preprocessor-rule-other-implementation":{"begin":"^\\\\s*(#\\\\s*(if(n?def)?)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","captures":{"1":{"name":"meta.preprocessor.objcpp"},"2":{"name":"keyword.control.import.objcpp"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b).*?(?:(?=(?://|/\\\\*))|$)","patterns":[{"include":"#implementation_innards"}]},"preprocessor-rule-other-interface":{"begin":"^\\\\s*(#\\\\s*(if(n?def)?)\\\\b.*?(?:(?=(?://|/\\\\*))|$))","captures":{"1":{"name":"meta.preprocessor.objcpp"},"2":{"name":"keyword.control.import.objcpp"}},"end":"^\\\\s*(#\\\\s*(endif)\\\\b).*?(?:(?=(?://|/\\\\*))|$)","patterns":[{"include":"#interface_innards"}]},"properties":{"patterns":[{"begin":"((@)property)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.property.objcpp"},"2":{"name":"punctuation.definition.keyword.objcpp"},"3":{"name":"punctuation.section.scope.begin.objcpp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.scope.end.objcpp"}},"name":"meta.property-with-attributes.objcpp","patterns":[{"match":"\\\\b(getter|setter|readonly|readwrite|assign|retain|copy|nonatomic|atomic|strong|weak|nonnull|nullable|null_resettable|null_unspecified|class|direct)\\\\b","name":"keyword.other.property.attribute.objcpp"}]},{"captures":{"1":{"name":"keyword.other.property.objcpp"},"2":{"name":"punctuation.definition.keyword.objcpp"}},"match":"((@)property)\\\\b","name":"meta.property.objcpp"}]},"property_directive":{"captures":{"1":{"name":"punctuation.definition.keyword.objcpp"}},"match":"(@)(dynamic|synthesize)\\\\b","name":"keyword.other.property.directive.objcpp"},"protocol_list":{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.section.scope.begin.objcpp"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.section.scope.end.objcpp"}},"name":"meta.protocol-list.objcpp","patterns":[{"match":"\\\\bNS(GlyphStorage|M(utableCopying|enuItem)|C(hangeSpelling|o(ding|pying|lorPicking(Custom|Default)))|T(oolbarItemValidations|ext(Input|AttachmentCell))|I(nputServ(iceProvider|erMouseTracker)|gnoreMisspelledWords)|Obj(CTypeSerializationCallBack|ect)|D(ecimalNumberBehaviors|raggingInfo)|U(serInterfaceValidations|RL(HandleClient|DownloadDelegate|ProtocolClient|AuthenticationChallengeSender))|Validated(ToobarItem|UserInterfaceItem)|Locking)\\\\b","name":"support.other.protocol.objcpp"}]},"protocol_type_qualifier":{"match":"\\\\b(in|out|inout|oneway|bycopy|byref|nonnull|nullable|_Nonnull|_Nullable|_Null_unspecified)\\\\b","name":"storage.modifier.protocol.objcpp"},"special_variables":{"patterns":[{"match":"\\\\b_cmd\\\\b","name":"variable.other.selector.objcpp"},{"match":"\\\\b(self|super)\\\\b","name":"variable.language.objcpp"}]},"string_escaped_char":{"patterns":[{"match":"\\\\\\\\(\\\\\\\\|[abefnprtv'\\"?]|[0-3]\\\\d{,2}|[4-7]\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})","name":"constant.character.escape.objcpp"},{"match":"\\\\\\\\.","name":"invalid.illegal.unknown-escape.objcpp"}]},"string_placeholder":{"patterns":[{"match":"%(\\\\d+\\\\$)?[#0\\\\- +']*[,;:_]?((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?(\\\\.((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]","name":"constant.other.placeholder.objcpp"},{"captures":{"1":{"name":"invalid.illegal.placeholder.objcpp"}},"match":"(%)(?!\\"\\\\s*(PRI|SCN))"}]}},"scopeName":"source.objcpp"}`)),Jre=[Kre]});var TR={};x(TR,{default:()=>Xre});var Vre,Xre,qR=_(()=>{Vre=Object.freeze(JSON.parse(`{"displayName":"OCaml","fileTypes":[".ml",".mli"],"name":"ocaml","patterns":[{"include":"#comment"},{"include":"#pragma"},{"include":"#decl"}],"repository":{"attribute":{"begin":"(\\\\[)[[:space:]]*((?<![#\\\\-:!?.@*/&%^+<=>|~$])@{1,3}(?![#\\\\-:!?.@*/&%^+<=>|~$]))","beginCaptures":{"1":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"},"2":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":"\\\\]","endCaptures":{"0":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},"patterns":[{"include":"#attributePayload"}]},"attributeIdentifier":{"captures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"punctuation.definition.tag"}},"match":"((?<![#\\\\-:!?.@*/&%^+<=>|~$])%(?![#\\\\-:!?.@*/&%^+<=>|~$]))((?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))"},"attributePayload":{"patterns":[{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]%|^%))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"((?<![#\\\\-:!?.@*/&%^+<=>|~$])[:\\\\?](?![#\\\\-:!?.@*/&%^+<=>|~$]))|(?<=[[:space:]])|(?=\\\\])","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"include":"#pathModuleExtended"},{"include":"#pathRecord"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(?=\\\\])","patterns":[{"include":"#signature"},{"include":"#type"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]\\\\?|^\\\\?))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(?=\\\\])","patterns":[{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]\\\\?|^\\\\?))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(?=\\\\])|\\\\bwhen\\\\b","endCaptures":{"1":{}},"patterns":[{"include":"#pattern"}]},{"begin":"(?:(?<=(?:[^[:word:]]when|^when))(?![[:word:]]))","end":"(?=\\\\])","patterns":[{"include":"#term"}]}]},{"include":"#term"}]},"bindClassTerm":{"patterns":[{"begin":"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]class|^class|[^[:word:]]type|^type))(?![[:word:]]))","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])(:)|(=)(?![#\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"support.type strong"}},"patterns":[{"begin":"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]class|^class|[^[:word:]]type|^type))(?![[:word:]]))","end":"(?=(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)[[:space:]]*,|[^[:space:][:lower:]%])|(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)|(?=\\\\btype\\\\b)","endCaptures":{"0":{"name":"entity.name.function strong emphasis"}},"patterns":[{"include":"#attributeIdentifier"}]},{"begin":"\\\\[","captures":{"0":{"name":"punctuation.definition.tag"}},"end":"\\\\]","patterns":[{"include":"#type"}]},{"include":"#bindTermArgs"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\-:!?.@*/&%^+<=>|~$])|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|val)\\\\b)","endCaptures":{"0":{"name":"support.type strong"}},"patterns":[{"include":"#literalClassType"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"\\\\band\\\\b|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},"patterns":[{"include":"#term"}]}]},"bindClassType":{"patterns":[{"begin":"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]class|^class|[^[:word:]]type|^type))(?![[:word:]]))","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])(:)|(=)(?![#\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"support.type strong"}},"patterns":[{"begin":"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]class|^class|[^[:word:]]type|^type))(?![[:word:]]))","end":"(?=(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)[[:space:]]*,|[^[:space:][:lower:]%])|(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)|(?=\\\\btype\\\\b)","endCaptures":{"0":{"name":"entity.name.function strong emphasis"}},"patterns":[{"include":"#attributeIdentifier"}]},{"begin":"\\\\[","captures":{"0":{"name":"punctuation.definition.tag"}},"end":"\\\\]","patterns":[{"include":"#type"}]},{"include":"#bindTermArgs"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\-:!?.@*/&%^+<=>|~$])|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|val)\\\\b)","endCaptures":{"0":{"name":"support.type strong"}},"patterns":[{"include":"#literalClassType"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"\\\\band\\\\b|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},"patterns":[{"include":"#literalClassType"}]}]},"bindConstructor":{"patterns":[{"begin":"(?:(?<=(?:[^[:word:]]exception|^exception))(?![[:word:]]))|(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]\\\\+=|^\\\\+=|[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=|[^#\\\\-:!?.@*/&%^+<=>|~$]\\\\||^\\\\|))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(:)|(\\\\bof\\\\b)|((?<![#\\\\-:!?.@*/&%^+<=>|~$])\\\\|(?![#\\\\-:!?.@*/&%^+<=>|~$]))|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"punctuation.definition.tag"},"3":{"name":"support.type strong"}},"patterns":[{"include":"#attributeIdentifier"},{"match":"\\\\.\\\\.","name":"variable.other.class.js message.error variable.interpolation string.regexp"},{"match":"\\\\b(?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)\\\\b(?![[:space:]]*(?:\\\\.|\\\\([^\\\\*]))","name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"},{"include":"#type"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))|(?:(?<=(?:[^[:word:]]of|^of))(?![[:word:]]))","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])\\\\|(?![#\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"support.type strong"}},"patterns":[{"include":"#type"}]}]},"bindSignature":{"patterns":[{"include":"#comment"},{"begin":"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\-:!?.@*/&%^+<=>|~$])","endCaptures":{"0":{"name":"support.type strong"}},"patterns":[{"include":"#comment"},{"include":"#pathModuleExtended"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"\\\\band\\\\b|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},"patterns":[{"include":"#signature"}]}]},"bindStructure":{"patterns":[{"include":"#comment"},{"begin":"(?:(?<=(?:[^[:word:]]and|^and))(?![[:word:]]))|(?=[[:upper:]])","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])(:(?!=))|(:?=)(?![#\\\\-:!?.@*/&%^+<=>|~$])|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|open|type|val)\\\\b)","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"support.type strong"}},"patterns":[{"include":"#comment"},{"match":"\\\\bmodule\\\\b","name":"markup.inserted constant.language support.constant.property-value entity.name.filename"},{"match":"(?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)","name":"entity.name.function strong emphasis"},{"begin":"\\\\((?!\\\\))","captures":{"0":{"name":"punctuation.definition.tag"}},"end":"\\\\)","patterns":[{"include":"#comment"},{"begin":"(?<![#\\\\-:!?.@*/&%^+<=>|~$]):(?![#\\\\-:!?.@*/&%^+<=>|~$])","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"}},"end":"(?=\\\\))","patterns":[{"include":"#signature"}]},{"include":"#variableModule"}]},{"include":"#literalUnit"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"\\\\b(and)\\\\b|((?<![#\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\-:!?.@*/&%^+<=>|~$]))|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"},"2":{"name":"support.type strong"}},"patterns":[{"include":"#signature"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:=|^:=|[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"\\\\b(?:(and)|(with))\\\\b|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"},"2":{"name":"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},"patterns":[{"include":"#structure"}]}]},"bindTerm":{"patterns":[{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]!|^!))(?![#\\\\-:!?.@*/&%^+<=>|~$]))|(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]external|^external|[^[:word:]]let|^let|[^[:word:]]method|^method|[^[:word:]]val|^val))(?![[:word:]]))","end":"(\\\\bmodule\\\\b)|(\\\\bopen\\\\b)|(?<![#\\\\-:!?.@*/&%^+<=>|~$])(:)|((?<![#\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\-:!?.@*/&%^+<=>|~$]))(?![#\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"1":{"name":"markup.inserted constant.language support.constant.property-value entity.name.filename"},"2":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"3":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"4":{"name":"support.type strong"}},"patterns":[{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]!|^!))(?![#\\\\-:!?.@*/&%^+<=>|~$]))|(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]external|^external|[^[:word:]]let|^let|[^[:word:]]method|^method|[^[:word:]]val|^val))(?![[:word:]]))","end":"(?=\\\\b(?:module|open)\\\\b)|(?=(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)[[:space:]]*,|[^[:space:][:lower:]%])|(\\\\brec\\\\b)|((?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{"name":"entity.name.function strong emphasis"}},"patterns":[{"include":"#attributeIdentifier"},{"include":"#comment"}]},{"begin":"(?:(?<=(?:[^[:word:]]rec|^rec))(?![[:word:]]))","end":"((?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))|(?=[^[:space:][:alpha:]])","endCaptures":{"0":{"name":"entity.name.function strong emphasis"}},"patterns":[{"include":"#bindTermArgs"}]},{"include":"#bindTermArgs"}]},{"begin":"(?:(?<=(?:[^[:word:]]module|^module))(?![[:word:]]))","end":"(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"include":"#declModule"}]},{"begin":"(?:(?<=(?:[^[:word:]]open|^open))(?![[:word:]]))","end":"(?=\\\\bin\\\\b)|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"include":"#pathModuleSimple"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"support.type strong"}},"patterns":[{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"\\\\btype\\\\b|(?=[^[:space:]])","endCaptures":{"0":{"name":"keyword.control"}}},{"begin":"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])\\\\.(?![#\\\\-:!?.@*/&%^+<=>|~$])","endCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"include":"#pattern"}]},{"include":"#type"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"\\\\band\\\\b|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},"patterns":[{"include":"#term"}]}]},"bindTermArgs":{"patterns":[{"applyEndPatternLast":true,"begin":"~|\\\\?","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":":|(?=[^[:space:]])","endCaptures":{"0":{"name":"keyword"}},"patterns":[{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]~|^~|[^#\\\\-:!?.@*/&%^+<=>|~$]\\\\?|^\\\\?))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)|(?<=\\\\))","endCaptures":{"0":{"name":"markup.inserted constant.language support.constant.property-value entity.name.filename"}},"patterns":[{"include":"#comment"},{"begin":"\\\\((?!\\\\*)","captures":{"0":{"name":"punctuation.definition.tag"}},"end":"\\\\)","patterns":[{"begin":"(?<=\\\\()","end":":|=","endCaptures":{"0":{"name":"keyword"}},"patterns":[{"match":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","name":"markup.inserted constant.language support.constant.property-value entity.name.filename"}]},{"begin":"(?<=:)","end":"=|(?=\\\\))","endCaptures":{"0":{"name":"keyword"}},"patterns":[{"include":"#type"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(?=\\\\))","patterns":[{"include":"#term"}]}]}]}]},{"include":"#pattern"}]},"bindType":{"patterns":[{"begin":"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]type|^type))(?![[:word:]]))","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])\\\\+=|=(?![#\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"support.type strong"}},"patterns":[{"include":"#attributeIdentifier"},{"include":"#pathType"},{"match":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","name":"entity.name.function strong"},{"include":"#type"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]\\\\+=|^\\\\+=|[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"\\\\band\\\\b|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},"patterns":[{"include":"#bindConstructor"}]}]},"comment":{"patterns":[{"include":"#attribute"},{"include":"#extension"},{"include":"#commentBlock"},{"include":"#commentDoc"}]},"commentBlock":{"begin":"\\\\(\\\\*(?!\\\\*[^\\\\)])","contentName":"emphasis","end":"\\\\*\\\\)","name":"comment constant.regexp meta.separator.markdown","patterns":[{"include":"#commentBlock"},{"include":"#commentDoc"}]},"commentDoc":{"begin":"\\\\(\\\\*\\\\*","end":"\\\\*\\\\)","name":"comment constant.regexp meta.separator.markdown","patterns":[{"match":"\\\\*"},{"include":"#comment"}]},"decl":{"patterns":[{"include":"#declClass"},{"include":"#declException"},{"include":"#declInclude"},{"include":"#declModule"},{"include":"#declOpen"},{"include":"#declTerm"},{"include":"#declType"}]},"declClass":{"begin":"\\\\bclass\\\\b","beginCaptures":{"0":{"name":"entity.name.class constant.numeric markup.underline"}},"end":";;|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"patterns":[{"include":"#comment"},{"include":"#pragma"},{"begin":"(?:(?<=(?:[^[:word:]]class|^class))(?![[:word:]]))","beginCaptures":{"0":{"name":"entity.name.class constant.numeric markup.underline"}},"end":"\\\\btype\\\\b|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|val)\\\\b)","endCaptures":{"0":{"name":"keyword"}},"patterns":[{"include":"#bindClassTerm"}]},{"begin":"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))","end":"(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"include":"#bindClassType"}]}]},"declException":{"begin":"\\\\bexception\\\\b","beginCaptures":{"0":{"name":"keyword markup.underline"}},"end":";;|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"patterns":[{"include":"#attributeIdentifier"},{"include":"#comment"},{"include":"#pragma"},{"include":"#bindConstructor"}]},"declInclude":{"begin":"\\\\binclude\\\\b","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":";;|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"patterns":[{"include":"#attributeIdentifier"},{"include":"#comment"},{"include":"#pragma"},{"include":"#signature"}]},"declModule":{"begin":"(?:(?<=(?:[^[:word:]]module|^module))(?![[:word:]]))|\\\\bmodule\\\\b","beginCaptures":{"0":{"name":"markup.inserted constant.language support.constant.property-value entity.name.filename markup.underline"}},"end":";;|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"patterns":[{"include":"#comment"},{"include":"#pragma"},{"begin":"(?:(?<=(?:[^[:word:]]module|^module))(?![[:word:]]))","end":"(\\\\btype\\\\b)|(?=[[:upper:]])","endCaptures":{"0":{"name":"keyword"}},"patterns":[{"include":"#attributeIdentifier"},{"include":"#comment"},{"match":"\\\\brec\\\\b","name":"variable.other.class.js message.error variable.interpolation string.regexp"}]},{"begin":"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))","end":"(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"include":"#bindSignature"}]},{"begin":"(?=[[:upper:]])","end":"(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"include":"#bindStructure"}]}]},"declOpen":{"begin":"\\\\bopen\\\\b","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":";;|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"patterns":[{"include":"#attributeIdentifier"},{"include":"#comment"},{"include":"#pragma"},{"include":"#pathModuleExtended"}]},"declTerm":{"begin":"\\\\b(?:(external|val)|(method)|(let))\\\\b(!?)","beginCaptures":{"1":{"name":"support.type markup.underline"},"2":{"name":"storage.type markup.underline"},"3":{"name":"keyword.control markup.underline"},"4":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":";;|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"patterns":[{"include":"#comment"},{"include":"#pragma"},{"include":"#bindTerm"}]},"declType":{"begin":"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))|\\\\btype\\\\b","beginCaptures":{"0":{"name":"keyword markup.underline"}},"end":";;|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"patterns":[{"include":"#comment"},{"include":"#pragma"},{"include":"#bindType"}]},"extension":{"begin":"(\\\\[)((?<![#\\\\-:!?.@*/&%^+<=>|~$])%{1,3}(?![#\\\\-:!?.@*/&%^+<=>|~$]))","beginCaptures":{"1":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"},"2":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":"\\\\]","endCaptures":{"0":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},"patterns":[{"include":"#attributePayload"}]},"literal":{"patterns":[{"include":"#termConstructor"},{"include":"#literalArray"},{"include":"#literalBoolean"},{"include":"#literalCharacter"},{"include":"#literalList"},{"include":"#literalNumber"},{"include":"#literalObjectTerm"},{"include":"#literalString"},{"include":"#literalRecord"},{"include":"#literalUnit"}]},"literalArray":{"begin":"\\\\[\\\\|","captures":{"0":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},"end":"\\\\|\\\\]","patterns":[{"include":"#term"}]},"literalBoolean":{"match":"\\\\bfalse|true\\\\b","name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"},"literalCharacter":{"begin":"(?<![[:word:]])'","end":"'","name":"markup.punctuation.quote.beginning","patterns":[{"include":"#literalCharacterEscape"}]},"literalCharacterEscape":{"match":"\\\\\\\\(?:[\\\\\\\\\\"'ntbr]|[[:digit:]][[:digit:]][[:digit:]]|x[[:xdigit:]][[:xdigit:]]|o[0-3][0-7][0-7])"},"literalClassType":{"patterns":[{"include":"#comment"},{"begin":"\\\\bobject\\\\b","captures":{"0":{"name":"punctuation.definition.tag emphasis"}},"end":"\\\\bend\\\\b","patterns":[{"begin":"\\\\binherit\\\\b","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":";;|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"patterns":[{"begin":"\\\\bas\\\\b","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":";;|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"include":"#variablePattern"}]},{"include":"#type"}]},{"include":"#pattern"},{"include":"#declTerm"}]},{"begin":"\\\\[","end":"\\\\]"}]},"literalList":{"patterns":[{"begin":"\\\\[","captures":{"0":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},"end":"\\\\]","patterns":[{"include":"#term"}]}]},"literalNumber":{"match":"(?<![[:alpha:]])[[:digit:]][[:digit:]]*(\\\\.[[:digit:]][[:digit:]]*)?","name":"constant.numeric"},"literalObjectTerm":{"patterns":[{"include":"#comment"},{"begin":"\\\\bobject\\\\b","captures":{"0":{"name":"punctuation.definition.tag emphasis"}},"end":"\\\\bend\\\\b","patterns":[{"begin":"\\\\binherit\\\\b","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":";;|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"patterns":[{"begin":"\\\\bas\\\\b","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":";;|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"include":"#variablePattern"}]},{"include":"#term"}]},{"include":"#pattern"},{"include":"#declTerm"}]},{"begin":"\\\\[","end":"\\\\]"}]},"literalRecord":{"begin":"\\\\{","captures":{"0":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong strong"}},"end":"\\\\}","patterns":[{"begin":"(?<=\\\\{|;)","end":"(:)|(=)|(;)|(with)|(?=\\\\})","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"support.type strong"},"3":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"4":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"include":"#comment"},{"include":"#pathModulePrefixSimple"},{"match":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","name":"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{"begin":"(?:(?<=(?:[^[:word:]]with|^with))(?![[:word:]]))","end":"(:)|(=)|(;)|(?=\\\\})","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"support.type strong"},"3":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"match":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","name":"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(;)|(=)|(?=\\\\})","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{"name":"support.type strong"}},"patterns":[{"include":"#type"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":";|(?=\\\\})","endCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"include":"#term"}]}]},"literalString":{"patterns":[{"begin":"\\"","end":"\\"","name":"string beginning.punctuation.definition.quote.markdown","patterns":[{"include":"#literalStringEscape"}]},{"begin":"(\\\\{)([_[:lower:]]*?)(\\\\|)","end":"(\\\\|)(\\\\2)(\\\\})","name":"string beginning.punctuation.definition.quote.markdown","patterns":[{"include":"#literalStringEscape"}]}]},"literalStringEscape":{"match":"\\\\\\\\(?:[\\\\\\\\\\"ntbr]|[[:digit:]][[:digit:]][[:digit:]]|x[[:xdigit:]][[:xdigit:]]|o[0-3][0-7][0-7])"},"literalUnit":{"match":"\\\\(\\\\)","name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"},"pathModuleExtended":{"patterns":[{"include":"#pathModulePrefixExtended"},{"match":"(?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)","name":"entity.name.class constant.numeric"}]},"pathModulePrefixExtended":{"begin":"(?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\.|$|\\\\()","beginCaptures":{"0":{"name":"entity.name.class constant.numeric"}},"end":"(?![[:space:]\\\\.]|$|\\\\()","patterns":[{"include":"#comment"},{"begin":"\\\\(","captures":{"0":{"name":"keyword.control"}},"end":"\\\\)","patterns":[{"match":"((?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\)))","name":"string.other.link variable.language variable.parameter emphasis"},{"include":"#structure"}]},{"begin":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])\\\\.(?![#\\\\-:!?.@*/&%^+<=>|~$])","beginCaptures":{"0":{"name":"keyword strong"}},"end":"((?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\.|$))|((?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*(?:$|\\\\()))|((?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\)))|(?![[:space:]\\\\.[:upper:]]|$|\\\\()","endCaptures":{"1":{"name":"entity.name.class constant.numeric"},"2":{"name":"entity.name.function strong"},"3":{"name":"string.other.link variable.language variable.parameter emphasis"}}}]},"pathModulePrefixExtendedParens":{"begin":"\\\\(","captures":{"0":{"name":"keyword.control"}},"end":"\\\\)","patterns":[{"match":"((?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\)))","name":"string.other.link variable.language variable.parameter emphasis"},{"include":"#structure"}]},"pathModulePrefixSimple":{"begin":"(?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\.)","beginCaptures":{"0":{"name":"entity.name.class constant.numeric"}},"end":"(?![[:space:]\\\\.])","patterns":[{"include":"#comment"},{"begin":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])\\\\.(?![#\\\\-:!?.@*/&%^+<=>|~$])","beginCaptures":{"0":{"name":"keyword strong"}},"end":"((?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\.))|((?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*))|(?![[:space:]\\\\.[:upper:]])","endCaptures":{"1":{"name":"entity.name.class constant.numeric"},"2":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"}}}]},"pathModuleSimple":{"patterns":[{"include":"#pathModulePrefixSimple"},{"match":"(?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)","name":"entity.name.class constant.numeric"}]},"pathRecord":{"patterns":[{"begin":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","end":"(?=[^[:space:]\\\\.])(?!\\\\(\\\\*)","patterns":[{"include":"#comment"},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]\\\\.|^\\\\.))(?![#\\\\-:!?.@*/&%^+<=>|~$]))|(?<![#\\\\-:!?.@*/&%^+<=>|~$])\\\\.(?![#\\\\-:!?.@*/&%^+<=>|~$])","beginCaptures":{"0":{"name":"keyword strong"}},"end":"((?<![#\\\\-:!?.@*/&%^+<=>|~$])\\\\.(?![#\\\\-:!?.@*/&%^+<=>|~$]))|((?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|mutable|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))|(?<=\\\\))|(?<=\\\\])","endCaptures":{"1":{"name":"keyword strong"},"2":{"name":"markup.inserted constant.language support.constant.property-value entity.name.filename"}},"patterns":[{"include":"#comment"},{"include":"#pathModulePrefixSimple"},{"begin":"\\\\((?!\\\\*)","captures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":"\\\\)","patterns":[{"include":"#term"}]},{"begin":"\\\\[","captures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":"\\\\]","patterns":[{"include":"#pattern"}]}]}]}]},"pattern":{"patterns":[{"include":"#comment"},{"include":"#patternArray"},{"include":"#patternLazy"},{"include":"#patternList"},{"include":"#patternMisc"},{"include":"#patternModule"},{"include":"#patternRecord"},{"include":"#literal"},{"include":"#patternParens"},{"include":"#patternType"},{"include":"#variablePattern"},{"include":"#termOperator"}]},"patternArray":{"begin":"\\\\[\\\\|","captures":{"0":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},"end":"\\\\|\\\\]","patterns":[{"include":"#pattern"}]},"patternLazy":{"match":"lazy","name":"variable.other.class.js message.error variable.interpolation string.regexp"},"patternList":{"begin":"\\\\[","captures":{"0":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"}},"end":"\\\\]","patterns":[{"include":"#pattern"}]},"patternMisc":{"captures":{"1":{"name":"string.regexp strong"},"2":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"3":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"match":"((?<![#\\\\-:!?.@*/&%^+<=>|~$]),(?![#\\\\-:!?.@*/&%^+<=>|~$]))|([#\\\\-:!?.@*/&%^+<=>|~$]+)|\\\\b(as)\\\\b"},"patternModule":{"begin":"\\\\bmodule\\\\b","beginCaptures":{"0":{"name":"markup.inserted constant.language support.constant.property-value entity.name.filename"}},"end":"(?=\\\\))","patterns":[{"include":"#declModule"}]},"patternParens":{"begin":"\\\\((?!\\\\))","captures":{"0":{"name":"punctuation.definition.tag"}},"end":"\\\\)","patterns":[{"include":"#comment"},{"begin":"(?<![#\\\\-:!?.@*/&%^+<=>|~$]):(?![#\\\\-:!?.@*/&%^+<=>|~$])","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"}},"end":"(?=\\\\))","patterns":[{"include":"#type"}]},{"include":"#pattern"}]},"patternRecord":{"begin":"\\\\{","captures":{"0":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong strong"}},"end":"\\\\}","patterns":[{"begin":"(?<=\\\\{|;)","end":"(:)|(=)|(;)|(with)|(?=\\\\})","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"support.type strong"},"3":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"4":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"include":"#comment"},{"include":"#pathModulePrefixSimple"},{"match":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","name":"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{"begin":"(?:(?<=(?:[^[:word:]]with|^with))(?![[:word:]]))","end":"(:)|(=)|(;)|(?=\\\\})","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"support.type strong"},"3":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"match":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","name":"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(;)|(=)|(?=\\\\})","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{"name":"support.type strong"}},"patterns":[{"include":"#type"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":";|(?=\\\\})","endCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"include":"#pattern"}]}]},"patternType":{"begin":"\\\\btype\\\\b","beginCaptures":{"0":{"name":"keyword"}},"end":"(?=\\\\))","patterns":[{"include":"#declType"}]},"pragma":{"begin":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])#(?![#\\\\-:!?.@*/&%^+<=>|~$])","beginCaptures":{"0":{"name":"punctuation.definition.tag"}},"end":"(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"include":"#comment"},{"include":"#literalNumber"},{"include":"#literalString"}]},"signature":{"patterns":[{"include":"#comment"},{"include":"#signatureLiteral"},{"include":"#signatureFunctor"},{"include":"#pathModuleExtended"},{"include":"#signatureParens"},{"include":"#signatureRecovered"},{"include":"#signatureConstraints"}]},"signatureConstraints":{"begin":"\\\\bwith\\\\b","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"}},"end":"(?=\\\\))|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"begin":"(?:(?<=(?:[^[:word:]]with|^with))(?![[:word:]]))","end":"\\\\b(?:(module)|(type))\\\\b","endCaptures":{"1":{"name":"markup.inserted constant.language support.constant.property-value entity.name.filename"},"2":{"name":"keyword"}}},{"include":"#declModule"},{"include":"#declType"}]},"signatureFunctor":{"patterns":[{"begin":"\\\\bfunctor\\\\b","beginCaptures":{"0":{"name":"keyword"}},"end":"(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"begin":"(?:(?<=(?:[^[:word:]]functor|^functor))(?![[:word:]]))","end":"(\\\\(\\\\))|(\\\\((?!\\\\)))","endCaptures":{"1":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"},"2":{"name":"punctuation.definition.tag"}}},{"begin":"(?<=\\\\()","end":"(:)|(\\\\))","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"punctuation.definition.tag"}},"patterns":[{"include":"#variableModule"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"patterns":[{"include":"#signature"}]},{"begin":"(?<=\\\\))","end":"(\\\\()|((?<![#\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\-:!?.@*/&%^+<=>|~$]))","endCaptures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"support.type strong"}}},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]->|^->))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"include":"#signature"}]}]},{"match":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\-:!?.@*/&%^+<=>|~$])","name":"support.type strong"}]},"signatureLiteral":{"begin":"\\\\bsig\\\\b","captures":{"0":{"name":"punctuation.definition.tag emphasis"}},"end":"\\\\bend\\\\b","patterns":[{"include":"#comment"},{"include":"#pragma"},{"include":"#decl"}]},"signatureParens":{"begin":"\\\\((?!\\\\))","captures":{"0":{"name":"punctuation.definition.tag"}},"end":"\\\\)","patterns":[{"include":"#comment"},{"begin":"(?<![#\\\\-:!?.@*/&%^+<=>|~$]):(?![#\\\\-:!?.@*/&%^+<=>|~$])","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"}},"end":"(?=\\\\))","patterns":[{"include":"#signature"}]},{"include":"#signature"}]},"signatureRecovered":{"patterns":[{"begin":"\\\\(|(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:|[^#\\\\-:!?.@*/&%^+<=>|~$]->|^->))(?![#\\\\-:!?.@*/&%^+<=>|~$]))|(?:(?<=(?:[^[:word:]]include|^include|[^[:word:]]open|^open))(?![[:word:]]))","end":"\\\\bmodule\\\\b|(?!$|[[:space:]]|\\\\bmodule\\\\b)","endCaptures":{"0":{"name":"markup.inserted constant.language support.constant.property-value entity.name.filename"}}},{"begin":"(?:(?<=(?:[^[:word:]]module|^module))(?![[:word:]]))","end":"(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"begin":"(?:(?<=(?:[^[:word:]]module|^module))(?![[:word:]]))","end":"\\\\btype\\\\b","endCaptures":{"0":{"name":"keyword"}}},{"begin":"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))","end":"\\\\bof\\\\b","endCaptures":{"0":{"name":"punctuation.definition.tag"}}},{"begin":"(?:(?<=(?:[^[:word:]]of|^of))(?![[:word:]]))","end":"(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"include":"#signature"}]}]}]},"structure":{"patterns":[{"include":"#comment"},{"include":"#structureLiteral"},{"include":"#structureFunctor"},{"include":"#pathModuleExtended"},{"include":"#structureParens"}]},"structureFunctor":{"patterns":[{"begin":"\\\\bfunctor\\\\b","beginCaptures":{"0":{"name":"keyword"}},"end":"(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"begin":"(?:(?<=(?:[^[:word:]]functor|^functor))(?![[:word:]]))","end":"(\\\\(\\\\))|(\\\\((?!\\\\)))","endCaptures":{"1":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"},"2":{"name":"punctuation.definition.tag"}}},{"begin":"(?<=\\\\()","end":"(:)|(\\\\))","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"punctuation.definition.tag"}},"patterns":[{"include":"#variableModule"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.tag"}},"patterns":[{"include":"#signature"}]},{"begin":"(?<=\\\\))","end":"(\\\\()|((?<![#\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\-:!?.@*/&%^+<=>|~$]))","endCaptures":{"1":{"name":"punctuation.definition.tag"},"2":{"name":"support.type strong"}}},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]->|^->))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","patterns":[{"include":"#structure"}]}]},{"match":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\-:!?.@*/&%^+<=>|~$])","name":"support.type strong"}]},"structureLiteral":{"begin":"\\\\bstruct\\\\b","captures":{"0":{"name":"punctuation.definition.tag emphasis"}},"end":"\\\\bend\\\\b","patterns":[{"include":"#comment"},{"include":"#pragma"},{"include":"#decl"}]},"structureParens":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.definition.tag"}},"end":"\\\\)","patterns":[{"include":"#structureUnpack"},{"include":"#structure"}]},"structureUnpack":{"begin":"\\\\bval\\\\b","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":"(?=\\\\))"},"term":{"patterns":[{"include":"#termLet"},{"include":"#termAtomic"}]},"termAtomic":{"patterns":[{"include":"#comment"},{"include":"#termConditional"},{"include":"#termConstructor"},{"include":"#termDelim"},{"include":"#termFor"},{"include":"#termFunction"},{"include":"#literal"},{"include":"#termMatch"},{"include":"#termMatchRule"},{"include":"#termPun"},{"include":"#termOperator"},{"include":"#termTry"},{"include":"#termWhile"},{"include":"#pathRecord"}]},"termConditional":{"match":"\\\\b(?:if|then|else)\\\\b","name":"keyword.control"},"termConstructor":{"patterns":[{"include":"#pathModulePrefixSimple"},{"match":"(?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)","name":"constant.language constant.numeric entity.other.attribute-name.id.css strong"}]},"termDelim":{"patterns":[{"begin":"\\\\((?!\\\\))","captures":{"0":{"name":"punctuation.definition.tag"}},"end":"\\\\)","patterns":[{"include":"#term"}]},{"begin":"\\\\bbegin\\\\b","captures":{"0":{"name":"punctuation.definition.tag"}},"end":"\\\\bend\\\\b","patterns":[{"include":"#attributeIdentifier"},{"include":"#term"}]}]},"termFor":{"patterns":[{"begin":"\\\\bfor\\\\b","beginCaptures":{"0":{"name":"keyword.control"}},"end":"\\\\bdone\\\\b","endCaptures":{"0":{"name":"keyword.control"}},"patterns":[{"begin":"(?:(?<=(?:[^[:word:]]for|^for))(?![[:word:]]))","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\-:!?.@*/&%^+<=>|~$])","endCaptures":{"0":{"name":"support.type strong"}},"patterns":[{"include":"#pattern"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"\\\\b(?:downto|to)\\\\b","endCaptures":{"0":{"name":"keyword.control"}},"patterns":[{"include":"#term"}]},{"begin":"(?:(?<=(?:[^[:word:]]to|^to))(?![[:word:]]))","end":"\\\\bdo\\\\b","endCaptures":{"0":{"name":"keyword.control"}},"patterns":[{"include":"#term"}]},{"begin":"(?:(?<=(?:[^[:word:]]do|^do))(?![[:word:]]))","end":"(?=\\\\bdone\\\\b)","patterns":[{"include":"#term"}]}]}]},"termFunction":{"captures":{"1":{"name":"storage.type"},"2":{"name":"storage.type"}},"match":"\\\\b(?:(fun)|(function))\\\\b"},"termLet":{"patterns":[{"begin":"(?:(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=|[^#\\\\-:!?.@*/&%^+<=>|~$]->|^->))(?![#\\\\-:!?.@*/&%^+<=>|~$]))|(?<=;|\\\\())(?=[[:space:]]|\\\\blet\\\\b)|(?:(?<=(?:[^[:word:]]begin|^begin|[^[:word:]]do|^do|[^[:word:]]else|^else|[^[:word:]]in|^in|[^[:word:]]struct|^struct|[^[:word:]]then|^then|[^[:word:]]try|^try))(?![[:word:]]))|(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]@@|^@@))(?![#\\\\-:!?.@*/&%^+<=>|~$]))[[:space:]]+","end":"\\\\b(?:(and)|(let))\\\\b|(?=[^[:space:]])(?!\\\\(\\\\*)","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"},"2":{"name":"storage.type markup.underline"}},"patterns":[{"include":"#comment"}]},{"begin":"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]let|^let))(?![[:word:]]))|(let)","beginCaptures":{"1":{"name":"storage.type markup.underline"}},"end":"\\\\b(?:(and)|(in))\\\\b|(?=\\\\}|\\\\)|\\\\]|\\\\b(?:end|class|exception|external|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp markup.underline"},"2":{"name":"storage.type markup.underline"}},"patterns":[{"include":"#bindTerm"}]}]},"termMatch":{"begin":"\\\\bmatch\\\\b","captures":{"0":{"name":"keyword.control"}},"end":"\\\\bwith\\\\b","patterns":[{"include":"#term"}]},"termMatchRule":{"patterns":[{"begin":"(?:(?<=(?:[^[:word:]]fun|^fun|[^[:word:]]function|^function|[^[:word:]]with|^with))(?![[:word:]]))","end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])(\\\\|)|(->)(?![#\\\\-:!?.@*/&%^+<=>|~$])","endCaptures":{"1":{"name":"support.type strong"},"2":{"name":"support.type strong"}},"patterns":[{"include":"#comment"},{"include":"#attributeIdentifier"},{"include":"#pattern"}]},{"begin":"(?:(?<=(?:[^\\\\[#\\\\-:!?.@*/&%^+<=>|~$]\\\\||^\\\\|))(?![#\\\\-:!?.@*/&%^+<=>|~$]))|(?<![#\\\\-:!?.@*/&%^+<=>|~$])\\\\|(?![#\\\\-:!?.@*/&%^+<=>|~$])","beginCaptures":{"0":{"name":"support.type strong"}},"end":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])(\\\\|)|(->)(?![#\\\\-:!?.@*/&%^+<=>|~$])","endCaptures":{"1":{"name":"support.type strong"},"2":{"name":"support.type strong"}},"patterns":[{"include":"#pattern"},{"begin":"\\\\bwhen\\\\b","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":"(?=(?<![#\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\-:!?.@*/&%^+<=>|~$]))","patterns":[{"include":"#term"}]}]}]},"termOperator":{"patterns":[{"begin":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])#(?![#\\\\-:!?.@*/&%^+<=>|~$])","beginCaptures":{"0":{"name":"keyword"}},"end":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","endCaptures":{"0":{"name":"entity.name.function"}}},{"captures":{"0":{"name":"keyword.control strong"}},"match":"<-"},{"captures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"match":"(,|[#\\\\-:!?.@*/&%^+<=>|~$]+)|(;)"},{"match":"\\\\b(?:and|assert|asr|land|lazy|lsr|lxor|mod|new|or)\\\\b","name":"variable.other.class.js message.error variable.interpolation string.regexp"}]},"termPun":{"applyEndPatternLast":true,"begin":"(?<![#\\\\-:!?.@*/&%^+<=>|~$])\\\\?|~(?![#\\\\-:!?.@*/&%^+<=>|~$])","beginCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"end":":|(?=[^[:space:]:])","endCaptures":{"0":{"name":"keyword"}},"patterns":[{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]\\\\?|^\\\\?|[^#\\\\-:!?.@*/&%^+<=>|~$]~|^~))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","endCaptures":{"0":{"name":"markup.inserted constant.language support.constant.property-value entity.name.filename"}}}]},"termTry":{"begin":"\\\\btry\\\\b","captures":{"0":{"name":"keyword.control"}},"end":"\\\\bwith\\\\b","patterns":[{"include":"#term"}]},"termWhile":{"patterns":[{"begin":"\\\\bwhile\\\\b","beginCaptures":{"0":{"name":"keyword.control"}},"end":"\\\\bdone\\\\b","endCaptures":{"0":{"name":"keyword.control"}},"patterns":[{"begin":"(?:(?<=(?:[^[:word:]]while|^while))(?![[:word:]]))","end":"\\\\bdo\\\\b","endCaptures":{"0":{"name":"keyword.control"}},"patterns":[{"include":"#term"}]},{"begin":"(?:(?<=(?:[^[:word:]]do|^do))(?![[:word:]]))","end":"(?=\\\\bdone\\\\b)","patterns":[{"include":"#term"}]}]}]},"type":{"patterns":[{"include":"#comment"},{"match":"\\\\bnonrec\\\\b","name":"variable.other.class.js message.error variable.interpolation string.regexp"},{"include":"#pathModulePrefixExtended"},{"include":"#typeLabel"},{"include":"#typeObject"},{"include":"#typeOperator"},{"include":"#typeParens"},{"include":"#typePolymorphicVariant"},{"include":"#typeRecord"},{"include":"#typeConstructor"}]},"typeConstructor":{"patterns":[{"begin":"(_)|((?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))|(')((?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))|(?<=[^\\\\*]\\\\)|\\\\])","beginCaptures":{"1":{"name":"comment constant.regexp meta.separator.markdown"},"3":{"name":"string.other.link variable.language variable.parameter emphasis strong emphasis"},"4":{"name":"keyword.control emphasis"}},"end":"(?=\\\\((?!\\\\*)|\\\\*|:|,|=|\\\\.|>|-|\\\\{|\\\\[|\\\\+|\\\\}|\\\\)|\\\\]|;|\\\\|)|((?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))[:space:]*(?!\\\\(\\\\*|[[:word:]])|(?=;;|\\\\}|\\\\)|\\\\]|\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\b)","endCaptures":{"1":{"name":"entity.name.function strong"}},"patterns":[{"include":"#comment"},{"include":"#pathModulePrefixExtended"}]}]},"typeLabel":{"patterns":[{"begin":"(\\\\??)((?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))[[:space:]]*((?<![#\\\\-:!?.@*/&%^+<=>|~$]):(?![#\\\\-:!?.@*/&%^+<=>|~$]))","captures":{"1":{"name":"keyword strong emphasis"},"2":{"name":"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"},"3":{"name":"keyword"}},"end":"(?=(?<![#\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\-:!?.@*/&%^+<=>|~$]))","patterns":[{"include":"#type"}]}]},"typeModule":{"begin":"\\\\bmodule\\\\b","beginCaptures":{"0":{"name":"markup.inserted constant.language support.constant.property-value entity.name.filename"}},"end":"(?=\\\\))","patterns":[{"include":"#pathModuleExtended"},{"include":"#signatureConstraints"}]},"typeObject":{"begin":"<","captures":{"0":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong strong"}},"end":">","patterns":[{"begin":"(?<=<|;)","end":"(:)|(?=>)","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"3":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"4":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"include":"#comment"},{"include":"#pathModulePrefixSimple"},{"match":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","name":"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(;)|(?=>)","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{"name":"support.type strong"}},"patterns":[{"include":"#type"}]}]},"typeOperator":{"patterns":[{"match":",|;|[#\\\\-:!?.@*/&%^+<=>|~$]+","name":"variable.other.class.js message.error variable.interpolation string.regexp strong"}]},"typeParens":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.definition.tag"}},"end":"\\\\)","patterns":[{"match":",","name":"variable.other.class.js message.error variable.interpolation string.regexp"},{"include":"#typeModule"},{"include":"#type"}]},"typePolymorphicVariant":{"begin":"\\\\[","end":"\\\\]","patterns":[]},"typeRecord":{"begin":"\\\\{","captures":{"0":{"name":"constant.language constant.numeric entity.other.attribute-name.id.css strong strong"}},"end":"\\\\}","patterns":[{"begin":"(?<=\\\\{|;)","end":"(:)|(=)|(;)|(with)|(?=\\\\})","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"support.type strong"},"3":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"4":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"include":"#comment"},{"include":"#pathModulePrefixSimple"},{"match":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","name":"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{"begin":"(?:(?<=(?:[^[:word:]]with|^with))(?![[:word:]]))","end":"(:)|(=)|(;)|(?=\\\\})","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp strong"},"2":{"name":"support.type strong"},"3":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"match":"(?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)","name":"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":"(;)|(=)|(?=\\\\})","endCaptures":{"1":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"},"2":{"name":"support.type strong"}},"patterns":[{"include":"#type"}]},{"begin":"(?:(?<=(?:[^#\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\-:!?.@*/&%^+<=>|~$]))","end":";|(?=\\\\})","endCaptures":{"0":{"name":"variable.other.class.js message.error variable.interpolation string.regexp"}},"patterns":[{"include":"#type"}]}]},"variableModule":{"captures":{"0":{"name":"string.other.link variable.language variable.parameter emphasis"}},"match":"(?:\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)"},"variablePattern":{"captures":{"1":{"name":"comment constant.regexp meta.separator.markdown"},"2":{"name":"string.other.link variable.language variable.parameter emphasis"}},"match":"(\\\\b_\\\\b)|((?:(?!\\\\b(?:and|'|as|asr|assert|\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\{|\\\\(|\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\+|private|\\\\?|\\"|rec|\\\\\\\\|\\\\}|\\\\)|\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\||virtual|when|while|with)\\\\b(?:[^']|$))\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))"}},"scopeName":"source.ocaml"}`)),Xre=[Vre]});var GR={};x(GR,{default:()=>tie});var eie,tie,zR=_(()=>{eie=Object.freeze(JSON.parse(`{"displayName":"Pascal","fileTypes":["pas","p","pp","dfm","fmx","dpr","dpk","lfm","lpr"],"name":"pascal","patterns":[{"match":"\\\\b(?i:(absolute|abstract|add|all|and_then|array|as|asc|asm|assembler|async|attribute|autoreleasepool|await|begin|bindable|block|by|case|cdecl|class|concat|const|constref|copy|cppdecl|contains|default|delegate|deprecated|desc|distinct|div|each|else|empty|end|ensure|enum|equals|event|except|export|exports|extension|external|far|file|finalization|finalizer|finally|flags|forward|from|future|generic|goto|group|has|helper|if|implements|implies|import|in|index|inherited|initialization|inline|interrupt|into|invariants|is|iterator|label|library|join|lazy|lifetimestrategy|locked|locking|loop|mapped|matching|message|method|mod|module|name|namespace|near|nested|new|nostackframe|not|notify|nullable|object|of|old|oldfpccall|on|only|operator|optional|or_else|order|otherwise|out|override|package|packed|parallel|params|partial|pascal|pinned|platform|pow|private|program|protected|public|published|interface|implementation|qualified|queryable|raises|read|readonly|record|reference|register|remove|resident|require|requires|resourcestring|restricted|result|reverse|safecall|sealed|segment|select|selector|sequence|set|shl|shr|skip|specialize|soft|static|stored|stdcall|step|strict|strong|take|then|threadvar|to|try|tuple|type|unconstrained|unit|unmanaged|unretained|unsafe|uses|using|var|view|virtual|volatile|weak|dynamic|overload|reintroduce|where|with|write|xor|yield))\\\\b","name":"keyword.pascal"},{"captures":{"1":{"name":"storage.type.prototype.pascal"},"2":{"name":"entity.name.function.prototype.pascal"}},"match":"\\\\b(?i:(function|procedure|constructor|destructor))\\\\b\\\\s+(\\\\w+(\\\\.\\\\w+)?)(\\\\(.*?\\\\))?;\\\\s*(?=(?i:attribute|forward|external))","name":"meta.function.prototype.pascal"},{"captures":{"1":{"name":"storage.type.function.pascal"},"2":{"name":"entity.name.function.pascal"}},"match":"\\\\b(?i:(function|procedure|constructor|destructor|property|read|write))\\\\b\\\\s+(\\\\w+(\\\\.\\\\w+)?)","name":"meta.function.pascal"},{"match":"\\\\b(?i:(self|result))\\\\b","name":"token.variable"},{"match":"\\\\b(?i:(and|or))\\\\b","name":"keyword.operator.pascal"},{"match":"\\\\b(?i:(break|continue|exit|abort|while|do|downto|for|raise|repeat|until))\\\\b","name":"keyword.control.pascal"},{"begin":"\\\\{\\\\$","captures":{"0":{"name":"string.regexp"}},"end":"\\\\}","name":"string.regexp"},{"match":"\\\\b(?i:(ansichar|ansistring|boolean|byte|cardinal|char|comp|currency|double|dword|extended|file|integer|int8|int16|int32|int64|longint|longword|nativeint|nativeuint|olevariant|pansichar|pchar|pwidechar|pointer|real|shortint|shortstring|single|smallint|string|uint8|uint16|uint32|uint64|variant|widechar|widestring|word|wordbool|uintptr|intptr))\\\\b","name":"storage.support.type.pascal"},{"match":"\\\\b(\\\\d+)|(\\\\d*\\\\.\\\\d+([eE][\\\\-+]?\\\\d+)?)\\\\b","name":"constant.numeric.pascal"},{"match":"\\\\$[0-9a-fA-F]{1,16}\\\\b","name":"constant.numeric.hex.pascal"},{"match":"\\\\b(?i:(true|false|nil))\\\\b","name":"constant.language.pascal"},{"match":"\\\\b(?i:(Assert))\\\\b","name":"keyword.control"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.pascal"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.pascal"}},"end":"\\\\n","name":"comment.line.double-slash.pascal.two"}]},{"begin":"\\\\(\\\\*","captures":{"0":{"name":"punctuation.definition.comment.pascal"}},"end":"\\\\*\\\\)","name":"comment.block.pascal.one"},{"begin":"\\\\{(?!\\\\$)","captures":{"0":{"name":"punctuation.definition.comment.pascal"}},"end":"\\\\}","name":"comment.block.pascal.two"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pascal"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.pascal"}},"name":"string.quoted.single.pascal","patterns":[{"match":"''","name":"constant.character.escape.apostrophe.pascal"}]},{"match":"\\\\#\\\\d+","name":"string.other.pascal"}],"scopeName":"source.pascal"}`)),tie=[eie]});var UR={};x(UR,{default:()=>aie});var nie,aie,HR=_(()=>{Ye();Ja();rt();Qe();Nn();nie=Object.freeze(JSON.parse(`{"displayName":"Perl","name":"perl","patterns":[{"include":"#line_comment"},{"begin":"^(?==[a-zA-Z]+)","end":"^(=cut\\\\b.*$)","endCaptures":{"1":{"patterns":[{"include":"#pod"}]}},"name":"comment.block.documentation.perl","patterns":[{"include":"#pod"}]},{"include":"#variable"},{"applyEndPatternLast":1,"begin":"\\\\b(?=qr\\\\s*[^\\\\s\\\\w])","comment":"string.regexp.compile.perl","end":"((([egimosxradlupcn]*)))(?=(\\\\s+\\\\S|\\\\s*[;\\\\,\\\\#\\\\{\\\\}\\\\)]|\\\\s*$))","endCaptures":{"1":{"name":"string.regexp.compile.perl"},"2":{"name":"punctuation.definition.string.perl"},"3":{"name":"keyword.control.regexp-option.perl"}},"patterns":[{"begin":"(qr)\\\\s*\\\\{","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"\\\\}","name":"string.regexp.compile.nested_braces.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_braces_interpolated"}]},{"begin":"(qr)\\\\s*\\\\[","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"\\\\]","name":"string.regexp.compile.nested_brackets.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_brackets_interpolated"}]},{"begin":"(qr)\\\\s*<","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":">","name":"string.regexp.compile.nested_ltgt.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_ltgt_interpolated"}]},{"begin":"(qr)\\\\s*\\\\(","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"\\\\)","name":"string.regexp.compile.nested_parens.perl","patterns":[{"comment":"This is to prevent thinks like qr/foo$/ to treat $/ as a variable","match":"\\\\$(?=[^\\\\s\\\\w\\\\\\\\'\\\\{\\\\[\\\\(\\\\<])"},{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_parens_interpolated"}]},{"begin":"(qr)\\\\s*'","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"'","name":"string.regexp.compile.single-quote.perl","patterns":[{"include":"#escaped_char"}]},{"begin":"(qr)\\\\s*([^\\\\s\\\\w'\\\\{\\\\[\\\\(\\\\<])","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"\\\\2","name":"string.regexp.compile.simple-delimiter.perl","patterns":[{"comment":"This is to prevent thinks like qr/foo$/ to treat $/ as a variable","match":"\\\\$(?=[^\\\\s\\\\w'\\\\{\\\\[\\\\(\\\\<])","name":"keyword.control.anchor.perl"},{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_parens_interpolated"}]}]},{"applyEndPatternLast":1,"begin":"(?<!\\\\{|\\\\+|\\\\-)\\\\b(?=m\\\\s*[^\\\\sa-zA-Z0-9])","comment":"string.regexp.find-m.perl","end":"((([egimosxradlupcn]*)))(?=(\\\\s+\\\\S|\\\\s*[;\\\\,\\\\#\\\\{\\\\}\\\\)]|\\\\s*$))","endCaptures":{"1":{"name":"string.regexp.find-m.perl"},"2":{"name":"punctuation.definition.string.perl"},"3":{"name":"keyword.control.regexp-option.perl"}},"patterns":[{"begin":"(m)\\\\s*\\\\{","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"\\\\}","name":"string.regexp.find-m.nested_braces.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_braces_interpolated"}]},{"begin":"(m)\\\\s*\\\\[","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"\\\\]","name":"string.regexp.find-m.nested_brackets.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_brackets_interpolated"}]},{"begin":"(m)\\\\s*<","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":">","name":"string.regexp.find-m.nested_ltgt.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_ltgt_interpolated"}]},{"begin":"(m)\\\\s*\\\\(","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"\\\\)","name":"string.regexp.find-m.nested_parens.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_parens_interpolated"}]},{"begin":"(m)\\\\s*'","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"'","name":"string.regexp.find-m.single-quote.perl","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\G(?<!\\\\{|\\\\+|\\\\-)(m)(?!_)\\\\s*([^\\\\sa-zA-Z0-9'\\\\{\\\\[\\\\(\\\\<])","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"\\\\2","name":"string.regexp.find-m.simple-delimiter.perl","patterns":[{"comment":"This is to prevent thinks like qr/foo$/ to treat $/ as a variable","match":"\\\\$(?=[^\\\\sa-zA-Z0-9'\\\\{\\\\[\\\\(\\\\<])","name":"keyword.control.anchor.perl"},{"include":"#escaped_char"},{"include":"#variable"},{"begin":"\\\\[","beginCaptures":{"1":{"name":"punctuation.definition.character-class.begin.perl"}},"end":"\\\\]","endCaptures":{"1":{"name":"punctuation.definition.character-class.end.perl"}},"name":"constant.other.character-class.set.perl","patterns":[{"comment":"This is to prevent thinks like qr/foo$/ to treat $/ as a variable","match":"\\\\$(?=[^\\\\s\\\\w'\\\\{\\\\[\\\\(\\\\<])","name":"keyword.control.anchor.perl"},{"include":"#escaped_char"}]},{"include":"#nested_parens_interpolated"}]}]},{"applyEndPatternLast":1,"begin":"\\\\b(?=(?<!\\\\&)(s)(\\\\s+\\\\S|\\\\s*[;\\\\,\\\\{\\\\}\\\\(\\\\)\\\\[<]|$))","comment":"string.regexp.replace.perl","end":"((([egimosxradlupcn]*)))(?=(\\\\s+\\\\S|\\\\s*[;\\\\,\\\\{\\\\}\\\\)\\\\]>]|\\\\s*$))","endCaptures":{"1":{"name":"string.regexp.replace.perl"},"2":{"name":"punctuation.definition.string.perl"},"3":{"name":"keyword.control.regexp-option.perl"}},"patterns":[{"begin":"(s)\\\\s*\\\\{","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"\\\\}","name":"string.regexp.nested_braces.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_braces"}]},{"begin":"(s)\\\\s*\\\\[","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"\\\\]","name":"string.regexp.nested_brackets.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_brackets"}]},{"begin":"(s)\\\\s*<","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":">","name":"string.regexp.nested_ltgt.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_ltgt"}]},{"begin":"(s)\\\\s*\\\\(","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"\\\\)","name":"string.regexp.nested_parens.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_parens"}]},{"begin":"\\\\{","captures":{"0":{"name":"punctuation.definition.string.perl"}},"end":"\\\\}","name":"string.regexp.format.nested_braces.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_braces_interpolated"}]},{"begin":"\\\\[","captures":{"0":{"name":"punctuation.definition.string.perl"}},"end":"\\\\]","name":"string.regexp.format.nested_brackets.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_brackets_interpolated"}]},{"begin":"<","captures":{"0":{"name":"punctuation.definition.string.perl"}},"end":">","name":"string.regexp.format.nested_ltgt.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_ltgt_interpolated"}]},{"begin":"\\\\(","captures":{"0":{"name":"punctuation.definition.string.perl"}},"end":"\\\\)","name":"string.regexp.format.nested_parens.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_parens_interpolated"}]},{"begin":"'","captures":{"0":{"name":"punctuation.definition.string.perl"}},"end":"'","name":"string.regexp.format.single_quote.perl","patterns":[{"match":"\\\\\\\\['\\\\\\\\]","name":"constant.character.escape.perl"}]},{"begin":"([^\\\\s\\\\w\\\\[({<;])","captures":{"0":{"name":"punctuation.definition.string.perl"}},"end":"\\\\1","name":"string.regexp.format.simple_delimiter.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"}]},{"match":"\\\\s+"}]},{"begin":"\\\\b(?=s([^\\\\sa-zA-Z0-9\\\\[({<]).*\\\\1([egimosxradlupcn]*)([\\\\}\\\\)\\\\;\\\\,]|\\\\s+))","comment":"string.regexp.replaceXXX","end":"((([egimosxradlupcn]*)))(?=([\\\\}\\\\)\\\\;\\\\,]|\\\\s+|\\\\s*$))","endCaptures":{"1":{"name":"string.regexp.replace.perl"},"2":{"name":"punctuation.definition.string.perl"},"3":{"name":"keyword.control.regexp-option.perl"}},"patterns":[{"begin":"(s\\\\s*)([^\\\\sa-zA-Z0-9\\\\[({<])","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"(?=\\\\2)","name":"string.regexp.replaceXXX.simple_delimiter.perl","patterns":[{"include":"#escaped_char"}]},{"begin":"'","captures":{"0":{"name":"punctuation.definition.string.perl"}},"end":"'","name":"string.regexp.replaceXXX.format.single_quote.perl","patterns":[{"match":"\\\\\\\\['\\\\\\\\]","name":"constant.character.escape.perl.perl"}]},{"begin":"([^\\\\sa-zA-Z0-9\\\\[({<])","captures":{"0":{"name":"punctuation.definition.string.perl"}},"end":"\\\\1","name":"string.regexp.replaceXXX.format.simple_delimiter.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"}]}]},{"begin":"\\\\b(?=(?<!\\\\\\\\)s\\\\s*([^\\\\s\\\\w\\\\[({<>]))","comment":"string.regexp.replace.extended","end":"((([egimosradlupc]*x[egimosradlupc]*)))\\\\b","endCaptures":{"1":{"name":"string.regexp.replace.perl"},"2":{"name":"punctuation.definition.string.perl"},"3":{"name":"keyword.control.regexp-option.perl"}},"patterns":[{"begin":"(s)\\\\s*(.)","captures":{"0":{"name":"punctuation.definition.string.perl"},"1":{"name":"support.function.perl"}},"end":"(?=\\\\2)","name":"string.regexp.replace.extended.simple_delimiter.perl","patterns":[{"include":"#escaped_char"}]},{"begin":"'","captures":{"0":{"name":"punctuation.definition.string.perl"}},"end":"'(?=[egimosradlupc]*x[egimosradlupc]*)\\\\b","name":"string.regexp.replace.extended.simple_delimiter.perl","patterns":[{"include":"#escaped_char"}]},{"begin":"(.)","captures":{"0":{"name":"punctuation.definition.string.perl"}},"end":"\\\\1(?=[egimosradlupc]*x[egimosradlupc]*)\\\\b","name":"string.regexp.replace.extended.simple_delimiter.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"}]}]},{"begin":"(?<=\\\\(|\\\\{|~|&|\\\\||if|unless|^)\\\\s*((\\\\/))","beginCaptures":{"1":{"name":"string.regexp.find.perl"},"2":{"name":"punctuation.definition.string.perl"}},"contentName":"string.regexp.find.perl","end":"((\\\\1([egimosxradlupcn]*)))(?=(\\\\s+\\\\S|\\\\s*[;\\\\,\\\\#\\\\{\\\\}\\\\)]|\\\\s*$))","endCaptures":{"1":{"name":"string.regexp.find.perl"},"2":{"name":"punctuation.definition.string.perl"},"3":{"name":"keyword.control.regexp-option.perl"}},"patterns":[{"comment":"This is to prevent thinks like /foo$/ to treat $/ as a variable","match":"\\\\$(?=\\\\/)","name":"keyword.control.anchor.perl"},{"include":"#escaped_char"},{"include":"#variable"}]},{"captures":{"1":{"name":"constant.other.key.perl"}},"match":"\\\\b(\\\\w+)\\\\s*(?==>)"},{"match":"(?<={)\\\\s*\\\\w+\\\\s*(?=})","name":"constant.other.bareword.perl"},{"captures":{"1":{"name":"keyword.control.perl"},"2":{"name":"entity.name.type.class.perl"}},"match":"^\\\\s*(package)\\\\s+([^\\\\s;]+)","name":"meta.class.perl"},{"captures":{"1":{"name":"storage.type.sub.perl"},"2":{"name":"entity.name.function.perl"},"3":{"name":"storage.type.method.perl"}},"match":"\\\\b(sub)(?:\\\\s+([-a-zA-Z0-9_]+))?\\\\s*(?:\\\\([\\\\$\\\\@\\\\*;]*\\\\))?[^\\\\w\\\\{]","name":"meta.function.perl"},{"captures":{"1":{"name":"entity.name.function.perl"},"2":{"name":"punctuation.definition.parameters.perl"},"3":{"name":"variable.parameter.function.perl"}},"match":"^\\\\s*(BEGIN|UNITCHECK|CHECK|INIT|END|DESTROY)\\\\b","name":"meta.function.perl"},{"begin":"^(?=(\\\\t| {4}))","end":"(?=[^\\\\t\\\\s])","name":"meta.leading-tabs","patterns":[{"captures":{"1":{"name":"meta.odd-tab"},"2":{"name":"meta.even-tab"}},"match":"(\\\\t| {4})(\\\\t| {4})?"}]},{"captures":{"1":{"name":"support.function.perl"},"2":{"name":"punctuation.definition.string.perl"},"5":{"name":"punctuation.definition.string.perl"},"8":{"name":"punctuation.definition.string.perl"}},"match":"\\\\b(tr|y)\\\\s*([^A-Za-z0-9\\\\s])(.*?)(?<!\\\\\\\\)(\\\\\\\\{2})*(\\\\2)(.*?)(?<!\\\\\\\\)(\\\\\\\\{2})*(\\\\2)","name":"string.regexp.replace.perl"},{"match":"\\\\b(__FILE__|__LINE__|__PACKAGE__|__SUB__)\\\\b","name":"constant.language.perl"},{"begin":"\\\\b(__DATA__|__END__)\\\\n?","beginCaptures":{"1":{"name":"constant.language.perl"}},"contentName":"comment.block.documentation.perl","end":"\\\\z","patterns":[{"include":"#pod"}]},{"match":"(?<!->)\\\\b(continue|default|die|do|else|elsif|exit|for|foreach|given|goto|if|last|next|redo|return|select|unless|until|wait|when|while|switch|case|require|use|eval)\\\\b","name":"keyword.control.perl"},{"match":"\\\\b(my|our|local)\\\\b","name":"storage.modifier.perl"},{"match":"(?<!\\\\w)\\\\-[rwxoRWXOezsfdlpSbctugkTBMAC]\\\\b","name":"keyword.operator.filetest.perl"},{"match":"\\\\b(and|or|xor|as|not)\\\\b","name":"keyword.operator.logical.perl"},{"match":"(<=>|=>|->)","name":"keyword.operator.comparison.perl"},{"include":"#heredoc"},{"begin":"\\\\bqq\\\\s*([^\\\\(\\\\{\\\\[\\\\<\\\\w\\\\s])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.other.qq.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"}]},{"begin":"\\\\bqx\\\\s*([^'\\\\(\\\\{\\\\[\\\\<\\\\w\\\\s])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.interpolated.qx.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"}]},{"begin":"\\\\bqx\\\\s*'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.interpolated.qx.single-quote.perl","patterns":[{"include":"#escaped_char"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.double.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"}]},{"begin":"(?<!->)\\\\bqw?\\\\s*([^\\\\(\\\\{\\\\[\\\\<\\\\w\\\\s])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.other.q.perl"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.single.perl","patterns":[{"match":"\\\\\\\\['\\\\\\\\]","name":"constant.character.escape.perl"}]},{"begin":"\`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\`","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.interpolated.perl","patterns":[{"include":"#escaped_char"},{"include":"#variable"}]},{"begin":"(?<!->)\\\\bqq\\\\s*\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.other.qq-paren.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_parens_interpolated"},{"include":"#variable"}]},{"begin":"\\\\bqq\\\\s*\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.other.qq-brace.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_braces_interpolated"},{"include":"#variable"}]},{"begin":"\\\\bqq\\\\s*\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.other.qq-bracket.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_brackets_interpolated"},{"include":"#variable"}]},{"begin":"\\\\bqq\\\\s*\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.other.qq-ltgt.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_ltgt_interpolated"},{"include":"#variable"}]},{"begin":"(?<!->)\\\\bqx\\\\s*\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.interpolated.qx-paren.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_parens_interpolated"},{"include":"#variable"}]},{"begin":"\\\\bqx\\\\s*\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.interpolated.qx-brace.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_braces_interpolated"},{"include":"#variable"}]},{"begin":"\\\\bqx\\\\s*\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.interpolated.qx-bracket.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_brackets_interpolated"},{"include":"#variable"}]},{"begin":"\\\\bqx\\\\s*\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.interpolated.qx-ltgt.perl","patterns":[{"include":"#escaped_char"},{"include":"#nested_ltgt_interpolated"},{"include":"#variable"}]},{"begin":"(?<!->)\\\\bqw?\\\\s*\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.other.q-paren.perl","patterns":[{"include":"#nested_parens"}]},{"begin":"\\\\bqw?\\\\s*\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.other.q-brace.perl","patterns":[{"include":"#nested_braces"}]},{"begin":"\\\\bqw?\\\\s*\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.other.q-bracket.perl","patterns":[{"include":"#nested_brackets"}]},{"begin":"\\\\bqw?\\\\s*\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.other.q-ltgt.perl","patterns":[{"include":"#nested_ltgt"}]},{"begin":"^__\\\\w+__","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"$","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.unquoted.program-block.perl"},{"begin":"\\\\b(format)\\\\s+(\\\\w+)\\\\s*=","beginCaptures":{"1":{"name":"support.function.perl"},"2":{"name":"entity.name.function.format.perl"}},"end":"^\\\\.\\\\s*$","name":"meta.format.perl","patterns":[{"include":"#line_comment"},{"include":"#variable"}]},{"captures":{"1":{"name":"support.function.perl"},"2":{"name":"entity.name.function.perl"}},"match":"\\\\b(x)\\\\s*(\\\\d+)\\\\b"},{"match":"\\\\b(ARGV|DATA|ENV|SIG|STDERR|STDIN|STDOUT|atan2|bind|binmode|bless|caller|chdir|chmod|chomp|chop|chown|chr|chroot|close|closedir|cmp|connect|cos|crypt|dbmclose|dbmopen|defined|delete|dump|each|endgrent|endhostent|endnetent|endprotoent|endpwent|endservent|eof|eq|eval|exec|exists|exp|fcntl|fileno|flock|fork|formline|ge|getc|getgrent|getgrgid|getgrnam|gethostbyaddr|gethostbyname|gethostent|getlogin|getnetbyaddr|getnetbyname|getnetent|getpeername|getpgrp|getppid|getpriority|getprotobyname|getprotobynumber|getprotoent|getpwent|getpwnam|getpwuid|getservbyname|getservbyport|getservent|getsockname|getsockopt|glob|gmtime|grep|gt|hex|import|index|int|ioctl|join|keys|kill|lc|lcfirst|le|length|link|listen|local|localtime|log|lstat|lt|m|map|mkdir|msgctl|msgget|msgrcv|msgsnd|ne|no|oct|open|opendir|ord|pack|pipe|pop|pos|print|printf|push|quotemeta|rand|read|readdir|readlink|recv|ref|rename|reset|reverse|rewinddir|rindex|rmdir|s|say|scalar|seek|seekdir|semctl|semget|semop|send|setgrent|sethostent|setnetent|setpgrp|setpriority|setprotoent|setpwent|setservent|setsockopt|shift|shmctl|shmget|shmread|shmwrite|shutdown|sin|sleep|socket|socketpair|sort|splice|split|sprintf|sqrt|srand|stat|study|substr|symlink|syscall|sysopen|sysread|system|syswrite|tell|telldir|tie|tied|time|times|tr|truncate|uc|ucfirst|umask|undef|unlink|unpack|unshift|untie|utime|values|vec|waitpid|wantarray|warn|write|y)\\\\b","name":"support.function.perl"},{"captures":{"1":{"name":"punctuation.section.scope.begin.perl"},"2":{"name":"punctuation.section.scope.end.perl"}},"comment":"Match empty brackets for \u21A9 snippet","match":"(\\\\{)(\\\\})"},{"captures":{"1":{"name":"punctuation.section.scope.begin.perl"},"2":{"name":"punctuation.section.scope.end.perl"}},"comment":"Match empty parenthesis for \u21A9 snippet","match":"(\\\\()(\\\\))"}],"repository":{"escaped_char":{"patterns":[{"match":"\\\\\\\\\\\\d+","name":"constant.character.escape.perl"},{"match":"\\\\\\\\c[^\\\\s\\\\\\\\]","name":"constant.character.escape.perl"},{"match":"\\\\\\\\g(?:\\\\{(?:\\\\w*|-\\\\d+)\\\\}|\\\\d+)","name":"constant.character.escape.perl"},{"match":"\\\\\\\\k(?:\\\\{\\\\w*\\\\}|<\\\\w*>|'\\\\w*')","name":"constant.character.escape.perl"},{"match":"\\\\\\\\N\\\\{[^\\\\}]*\\\\}","name":"constant.character.escape.perl"},{"match":"\\\\\\\\o\\\\{\\\\d*\\\\}","name":"constant.character.escape.perl"},{"match":"\\\\\\\\(?:p|P)(?:\\\\{\\\\w*\\\\}|P)","name":"constant.character.escape.perl"},{"match":"\\\\\\\\x(?:[0-9a-zA-Z]{2}|\\\\{\\\\w*\\\\})?","name":"constant.character.escape.perl"},{"match":"\\\\\\\\.","name":"constant.character.escape.perl"}]},"heredoc":{"patterns":[{"begin":"((((<<(~)?) *')(HTML)(')))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.raw.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.raw.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.raw.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.html","patterns":[{"begin":"^","end":"\\\\n","name":"text.html.basic","patterns":[{"include":"text.html.basic"}]}]},{"begin":"((((<<(~)?) *')(XML)(')))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.raw.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.raw.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.raw.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.xml","patterns":[{"begin":"^","end":"\\\\n","name":"text.xml","patterns":[{"include":"text.xml"}]}]},{"begin":"((((<<(~)?) *')(CSS)(')))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.raw.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.raw.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.raw.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.css","patterns":[{"begin":"^","end":"\\\\n","name":"source.css","patterns":[{"include":"source.css"}]}]},{"begin":"((((<<(~)?) *')(JAVASCRIPT)(')))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.raw.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.raw.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.raw.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.js","patterns":[{"begin":"^","end":"\\\\n","name":"source.js","patterns":[{"include":"source.js"}]}]},{"begin":"((((<<(~)?) *')(SQL)(')))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.raw.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.raw.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.raw.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.sql","patterns":[{"begin":"^","end":"\\\\n","name":"source.sql","patterns":[{"include":"source.sql"}]}]},{"begin":"((((<<(~)?) *')(POSTSCRIPT)(')))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.raw.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.raw.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.raw.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.postscript","patterns":[{"begin":"^","end":"\\\\n","name":"source.postscript","patterns":[{"include":"source.postscript"}]}]},{"begin":"((((<<(~)?) *')([^']*)(')))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.raw.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.raw.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.raw.perl"},"3":{"name":"punctuation.definition.string.end.perl"}}},{"begin":"((((<<(~)?) *\\\\\\\\)((?![=\\\\d\\\\$\\\\( ])[^;,'\\"\`\\\\s\\\\)]*)()))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.raw.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.raw.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.raw.perl"},"3":{"name":"punctuation.definition.string.end.perl"}}},{"begin":"((((<<(~)?) *\\")(HTML)(\\")))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.html","patterns":[{"begin":"^","end":"\\\\n","name":"text.html.basic","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"text.html.basic"}]}]},{"begin":"((((<<(~)?) *\\")(XML)(\\")))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.xml","patterns":[{"begin":"^","end":"\\\\n","name":"text.xml","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"text.xml"}]}]},{"begin":"((((<<(~)?) *\\")(CSS)(\\")))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.css","patterns":[{"begin":"^","end":"\\\\n","name":"source.css","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"source.css"}]}]},{"begin":"((((<<(~)?) *\\")(JAVASCRIPT)(\\")))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.js","patterns":[{"begin":"^","end":"\\\\n","name":"source.js","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"source.js"}]}]},{"begin":"((((<<(~)?) *\\")(SQL)(\\")))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.sql","patterns":[{"begin":"^","end":"\\\\n","name":"source.sql","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"source.sql"}]}]},{"begin":"((((<<(~)?) *\\")(POSTSCRIPT)(\\")))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.postscript","patterns":[{"begin":"^","end":"\\\\n","name":"source.postscript","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"source.postscript"}]}]},{"begin":"((((<<(~)?) *\\")([^\\"]*)(\\")))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"patterns":[{"include":"#escaped_char"},{"include":"#variable"}]},{"begin":"((((<<(~)?) *)(HTML)()))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.html","patterns":[{"begin":"^","end":"\\\\n","name":"text.html.basic","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"text.html.basic"}]}]},{"begin":"((((<<(~)?) *)(XML)()))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.xml","patterns":[{"begin":"^","end":"\\\\n","name":"text.xml","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"text.xml"}]}]},{"begin":"((((<<(~)?) *)(CSS)()))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.css","patterns":[{"begin":"^","end":"\\\\n","name":"source.css","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"source.css"}]}]},{"begin":"((((<<(~)?) *)(JAVASCRIPT)()))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.js","patterns":[{"begin":"^","end":"\\\\n","name":"source.js","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"source.js"}]}]},{"begin":"((((<<(~)?) *)(SQL)()))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.sql","patterns":[{"begin":"^","end":"\\\\n","name":"source.sql","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"source.sql"}]}]},{"begin":"((((<<(~)?) *)(POSTSCRIPT)()))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"name":"meta.embedded.block.postscript","patterns":[{"begin":"^","end":"\\\\n","name":"source.postscript","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"source.postscript"}]}]},{"begin":"((((<<(~)?) *)((?![=\\\\d\\\\$\\\\( ])[^;,'\\"\`\\\\s\\\\)]*)()))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.interpolated.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"patterns":[{"include":"#escaped_char"},{"include":"#variable"}]},{"begin":"((((<<(~)?) *\`)([^\`]*)(\`)))(.*)\\\\n?","beginCaptures":{"1":{"name":"string.unquoted.heredoc.interpolated.perl"},"2":{"name":"punctuation.definition.string.begin.perl"},"3":{"name":"punctuation.definition.delimiter.begin.perl"},"7":{"name":"punctuation.definition.delimiter.end.perl"},"8":{"patterns":[{"include":"$self"}]}},"contentName":"string.unquoted.heredoc.shell.perl","end":"^((?!\\\\5)\\\\s+)?((\\\\6))$","endCaptures":{"2":{"name":"string.unquoted.heredoc.interpolated.perl"},"3":{"name":"punctuation.definition.string.end.perl"}},"patterns":[{"include":"#escaped_char"},{"include":"#variable"}]}]},"line_comment":{"patterns":[{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.perl"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.perl"}},"end":"\\\\n","name":"comment.line.number-sign.perl"}]}]},"nested_braces":{"begin":"\\\\{","captures":{"1":{"name":"punctuation.section.scope.perl"}},"end":"\\\\}","patterns":[{"include":"#escaped_char"},{"include":"#nested_braces"}]},"nested_braces_interpolated":{"begin":"\\\\{","captures":{"1":{"name":"punctuation.section.scope.perl"}},"end":"\\\\}","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_braces_interpolated"}]},"nested_brackets":{"begin":"\\\\[","captures":{"1":{"name":"punctuation.section.scope.perl"}},"end":"\\\\]","patterns":[{"include":"#escaped_char"},{"include":"#nested_brackets"}]},"nested_brackets_interpolated":{"begin":"\\\\[","captures":{"1":{"name":"punctuation.section.scope.perl"}},"end":"\\\\]","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_brackets_interpolated"}]},"nested_ltgt":{"begin":"<","captures":{"1":{"name":"punctuation.section.scope.perl"}},"end":">","patterns":[{"include":"#nested_ltgt"}]},"nested_ltgt_interpolated":{"begin":"<","captures":{"1":{"name":"punctuation.section.scope.perl"}},"end":">","patterns":[{"include":"#variable"},{"include":"#nested_ltgt_interpolated"}]},"nested_parens":{"begin":"\\\\(","captures":{"1":{"name":"punctuation.section.scope.perl"}},"end":"\\\\)","patterns":[{"include":"#escaped_char"},{"include":"#nested_parens"}]},"nested_parens_interpolated":{"begin":"\\\\(","captures":{"1":{"name":"punctuation.section.scope.perl"}},"end":"\\\\)","patterns":[{"comment":"This is to prevent thinks like qr/foo$/ to treat $/ as a variable","match":"\\\\$(?=[^\\\\s\\\\w'\\\\{\\\\[\\\\(\\\\<])","name":"keyword.control.anchor.perl"},{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_parens_interpolated"}]},"pod":{"patterns":[{"match":"^=(pod|back|cut)\\\\b","name":"storage.type.class.pod.perl"},{"begin":"^(=begin)\\\\s+(html)\\\\s*$","beginCaptures":{"1":{"name":"storage.type.class.pod.perl"},"2":{"name":"variable.other.pod.perl"}},"contentName":"text.embedded.html.basic","end":"^(=end)\\\\s+(html)|^(?==cut)","endCaptures":{"1":{"name":"storage.type.class.pod.perl"},"2":{"name":"variable.other.pod.perl"}},"name":"meta.embedded.pod.perl","patterns":[{"include":"text.html.basic"}]},{"captures":{"1":{"name":"storage.type.class.pod.perl"},"2":{"name":"variable.other.pod.perl","patterns":[{"include":"#pod-formatting"}]}},"match":"^(=(?:head[1-4]|item|over|encoding|begin|end|for))\\\\b\\\\s*(.*)"},{"include":"#pod-formatting"}]},"pod-formatting":{"patterns":[{"captures":{"1":{"name":"markup.italic.pod.perl"},"2":{"name":"markup.italic.pod.perl"}},"match":"I(?:<([^<>]+)>|<+(\\\\s+(?:(?<!\\\\s)>|[^>])+\\\\s+)>+)","name":"entity.name.type.instance.pod.perl"},{"captures":{"1":{"name":"markup.bold.pod.perl"},"2":{"name":"markup.bold.pod.perl"}},"match":"B(?:<([^<>]+)>|<+(\\\\s+(?:(?<!\\\\s)>|[^>])+\\\\s+)>+)","name":"entity.name.type.instance.pod.perl"},{"captures":{"1":{"name":"markup.raw.pod.perl"},"2":{"name":"markup.raw.pod.perl"}},"match":"C(?:<([^<>]+)>|<+(\\\\\\\\s+(?:(?<!\\\\\\\\s)>|[^>])+\\\\\\\\s+)>+)","name":"entity.name.type.instance.pod.perl"},{"captures":{"1":{"name":"markup.underline.link.hyperlink.pod.perl"}},"match":"L<([^>]+)>","name":"entity.name.type.instance.pod.perl"},{"match":"[EFSXZ]<[^>]*>","name":"entity.name.type.instance.pod.perl"}]},"variable":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.perl"}},"match":"(\\\\$)&(?![A-Za-z0-9_])","name":"variable.other.regexp.match.perl"},{"captures":{"1":{"name":"punctuation.definition.variable.perl"}},"match":"(\\\\$)\`(?![A-Za-z0-9_])","name":"variable.other.regexp.pre-match.perl"},{"captures":{"1":{"name":"punctuation.definition.variable.perl"}},"match":"(\\\\$)'(?![A-Za-z0-9_])","name":"variable.other.regexp.post-match.perl"},{"captures":{"1":{"name":"punctuation.definition.variable.perl"}},"match":"(\\\\$)\\\\+(?![A-Za-z0-9_])","name":"variable.other.regexp.last-paren-match.perl"},{"captures":{"1":{"name":"punctuation.definition.variable.perl"}},"match":"(\\\\$)\\"(?![A-Za-z0-9_])","name":"variable.other.readwrite.list-separator.perl"},{"captures":{"1":{"name":"punctuation.definition.variable.perl"}},"match":"(\\\\$)0(?![A-Za-z0-9_])","name":"variable.other.predefined.program-name.perl"},{"captures":{"1":{"name":"punctuation.definition.variable.perl"}},"match":"(\\\\$)[_ab\\\\*\\\\.\\\\/\\\\|,\\\\\\\\;#%=\\\\-~^:?!\\\\$<>\\\\(\\\\)\\\\[\\\\]@](?![A-Za-z0-9_])","name":"variable.other.predefined.perl"},{"captures":{"1":{"name":"punctuation.definition.variable.perl"}},"match":"(\\\\$)[0-9]+(?![A-Za-z0-9_])","name":"variable.other.subpattern.perl"},{"captures":{"1":{"name":"punctuation.definition.variable.perl"}},"match":"([\\\\$\\\\@\\\\%](#)?)([a-zA-Zx7f-xff\\\\$]|::)([a-zA-Z0-9_x7f-xff\\\\$]|::)*\\\\b","name":"variable.other.readwrite.global.perl"},{"captures":{"1":{"name":"punctuation.definition.variable.perl"},"2":{"name":"punctuation.definition.variable.perl"}},"match":"(\\\\$\\\\{)(?:[a-zA-Zx7f-xff\\\\$]|::)(?:[a-zA-Z0-9_x7f-xff\\\\$]|::)*(\\\\})","name":"variable.other.readwrite.global.perl"},{"captures":{"1":{"name":"punctuation.definition.variable.perl"}},"match":"([\\\\$\\\\@\\\\%](#)?)[0-9_]\\\\b","name":"variable.other.readwrite.global.special.perl"}]}},"scopeName":"source.perl","embeddedLangs":["html","xml","css","javascript","sql"]}`)),aie=[...ce,...Qt,...ue,...J,...Ve,nie]});var ZR={};x(ZR,{default:()=>tx});var rie,tx,nx=_(()=>{Ye();Ja();Nn();Qe();zr();rt();rie=Object.freeze(JSON.parse(`{"displayName":"PHP","name":"php","patterns":[{"include":"#attribute"},{"include":"#comments"},{"captures":{"1":{"name":"keyword.other.namespace.php"},"2":{"name":"entity.name.type.namespace.php","patterns":[{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]}},"match":"(?i)(?:^|(?<=<\\\\?php))\\\\s*(namespace)\\\\s+([a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)(?=\\\\s*;)","name":"meta.namespace.php"},{"begin":"(?i)(?:^|(?<=<\\\\?php))\\\\s*(namespace)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.namespace.php"}},"end":"(?<=})|(?=\\\\?>)","name":"meta.namespace.php","patterns":[{"include":"#comments"},{"captures":{"0":{"patterns":[{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]}},"match":"(?i)[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+","name":"entity.name.type.namespace.php"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.namespace.begin.bracket.curly.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.namespace.end.bracket.curly.php"}},"patterns":[{"include":"$self"}]},{"match":"[^\\\\s]+","name":"invalid.illegal.identifier.php"}]},{"match":"\\\\s+(?=use\\\\b)"},{"begin":"(?i)\\\\buse\\\\b","beginCaptures":{"0":{"name":"keyword.other.use.php"}},"end":"(?<=})|(?=;)|(?=\\\\?>)","name":"meta.use.php","patterns":[{"match":"\\\\b(const|function)\\\\b","name":"storage.type.\${1:/downcase}.php"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.use.begin.bracket.curly.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.use.end.bracket.curly.php"}},"patterns":[{"include":"#scope-resolution"},{"captures":{"1":{"name":"keyword.other.use-as.php"},"2":{"name":"storage.modifier.php"},"3":{"name":"entity.other.alias.php"}},"match":"(?xi)\\n\\\\b(as)\\n\\\\s+(final|abstract|public|private|protected|static)\\n\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)"},{"captures":{"1":{"name":"keyword.other.use-as.php"},"2":{"patterns":[{"match":"^(?:final|abstract|public|private|protected|static)$","name":"storage.modifier.php"},{"match":".+","name":"entity.other.alias.php"}]}},"match":"(?xi)\\n\\\\b(as)\\n\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)"},{"captures":{"1":{"name":"keyword.other.use-insteadof.php"},"2":{"name":"support.class.php"}},"match":"(?i)\\\\b(insteadof)\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)"},{"match":";","name":"punctuation.terminator.expression.php"},{"include":"#use-inner"}]},{"include":"#use-inner"}]},{"begin":"(?ix)\\n\\\\b(trait)\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)","beginCaptures":{"1":{"name":"storage.type.trait.php"},"2":{"name":"entity.name.type.trait.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.trait.end.bracket.curly.php"}},"name":"meta.trait.php","patterns":[{"include":"#comments"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.trait.begin.bracket.curly.php"}},"contentName":"meta.trait.body.php","end":"(?=}|\\\\?>)","patterns":[{"include":"$self"}]}]},{"begin":"(?ix)\\n\\\\b(interface)\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)","beginCaptures":{"1":{"name":"storage.type.interface.php"},"2":{"name":"entity.name.type.interface.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.interface.end.bracket.curly.php"}},"name":"meta.interface.php","patterns":[{"include":"#comments"},{"include":"#interface-extends"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.interface.begin.bracket.curly.php"}},"contentName":"meta.interface.body.php","end":"(?=}|\\\\?>)","patterns":[{"include":"#class-constant"},{"include":"$self"}]}]},{"begin":"(?ix)\\n\\\\b(enum)\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\n(?: \\\\s* (:) \\\\s* (int | string) \\\\b )?","beginCaptures":{"1":{"name":"storage.type.enum.php"},"2":{"name":"entity.name.type.enum.php"},"3":{"name":"keyword.operator.return-value.php"},"4":{"name":"keyword.other.type.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.enum.end.bracket.curly.php"}},"name":"meta.enum.php","patterns":[{"include":"#comments"},{"include":"#class-implements"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.enum.begin.bracket.curly.php"}},"contentName":"meta.enum.body.php","end":"(?=}|\\\\?>)","patterns":[{"captures":{"1":{"name":"storage.modifier.php"},"2":{"name":"constant.enum.php"}},"match":"(?i)\\\\b(case)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)"},{"include":"#class-constant"},{"include":"$self"}]}]},{"begin":"(?ix)\\n(?:\\n \\\\b((?:(?:final|abstract|readonly)\\\\s+)*)(class)\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\n |\\\\b(new)\\\\b\\\\s*(\\\\#\\\\[.*\\\\])?\\\\s*(?:(readonly)\\\\s+)?\\\\b(class)\\\\b # anonymous class\\n)","beginCaptures":{"1":{"patterns":[{"match":"final|abstract","name":"storage.modifier.\${0:/downcase}.php"},{"match":"readonly","name":"storage.modifier.php"}]},"2":{"name":"storage.type.class.php"},"3":{"name":"entity.name.type.class.php"},"4":{"name":"keyword.other.new.php"},"5":{"patterns":[{"include":"#attribute"}]},"6":{"name":"storage.modifier.php"},"7":{"name":"storage.type.class.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.class.end.bracket.curly.php"}},"name":"meta.class.php","patterns":[{"begin":"(?<=class)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.function-call.php","patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"include":"#comments"},{"include":"#class-extends"},{"include":"#class-implements"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.class.begin.bracket.curly.php"}},"contentName":"meta.class.body.php","end":"(?=}|\\\\?>)","patterns":[{"include":"#class-constant"},{"include":"$self"}]}]},{"include":"#match_statement"},{"include":"#switch_statement"},{"captures":{"1":{"name":"keyword.control.yield-from.php"}},"match":"\\\\s*\\\\b(yield\\\\s+from)\\\\b"},{"captures":{"1":{"name":"keyword.control.\${1:/downcase}.php"}},"match":"\\\\b(break|case|continue|declare|default|die|do|else(if)?|end(declare|for(each)?|if|switch|while)|exit|for(each)?|if|return|switch|use|while|yield)\\\\b"},{"begin":"(?i)\\\\b((?:require|include)(?:_once)?)(\\\\s+|(?=\\\\())","beginCaptures":{"1":{"name":"keyword.control.import.include.php"}},"end":"(?=\\\\s|;|$|\\\\?>)","name":"meta.include.php","patterns":[{"include":"$self"}]},{"begin":"\\\\b(catch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.exception.catch.php"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"name":"meta.catch.php","patterns":[{"captures":{"1":{"patterns":[{"match":"\\\\|","name":"punctuation.separator.delimiter.php"},{"begin":"(?i)(?=[\\\\\\\\a-z_\\\\x{7f}-\\\\x{10ffff}])","end":"(?xi)\\n( [a-z_\\\\x{7f}-\\\\x{10ffff}] [a-z0-9_\\\\x{7f}-\\\\x{10ffff}]* )\\n(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])","endCaptures":{"1":{"name":"support.class.exception.php"}},"patterns":[{"include":"#namespace"}]}]},"2":{"name":"variable.other.php"},"3":{"name":"punctuation.definition.variable.php"}},"match":"(?xi)\\n([a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ (?: \\\\s*\\\\|\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)*) # union or single exception class\\n\\\\s*\\n((\\\\$+)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)? # Variable"}]},{"match":"\\\\b(catch|try|throw|exception|finally)\\\\b","name":"keyword.control.exception.php"},{"begin":"(?i)\\\\b(function)\\\\s*(?=&?\\\\s*\\\\()","beginCaptures":{"1":{"name":"storage.type.function.php"}},"end":"(?=\\\\s*{)","name":"meta.function.closure.php","patterns":[{"include":"#comments"},{"begin":"(&)?\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.modifier.reference.php"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"contentName":"meta.function.parameters.php","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"patterns":[{"include":"#function-parameters"}]},{"begin":"(?i)(use)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.function.use.php"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"name":"meta.function.closure.use.php","patterns":[{"match":",","name":"punctuation.separator.delimiter.php"},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"punctuation.definition.variable.php"}},"match":"(?i)((?:(&)\\\\s*)?(\\\\$+)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(?=,|\\\\))"}]},{"captures":{"1":{"name":"keyword.operator.return-value.php"},"2":{"patterns":[{"include":"#php-types"}]}},"match":"(?xi)\\n(:)\\\\s*\\n(\\n # nullable type\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ |\\n # union, intersection or DNF type\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n (?: \\\\s*[|&]\\\\s*\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n )+\\n)\\n(?=\\\\s*(?:{|/[/*]|\\\\#|$))"}]},{"begin":"(?i)\\\\b(fn)\\\\s*(?=&?\\\\s*\\\\()","beginCaptures":{"1":{"name":"storage.type.function.php"}},"end":"=>","endCaptures":{"0":{"name":"punctuation.definition.arrow.php"}},"name":"meta.function.closure.php","patterns":[{"begin":"(?:(&)\\\\s*)?(\\\\()","beginCaptures":{"1":{"name":"storage.modifier.reference.php"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"contentName":"meta.function.parameters.php","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"patterns":[{"include":"#function-parameters"}]},{"captures":{"1":{"name":"keyword.operator.return-value.php"},"2":{"patterns":[{"include":"#php-types"}]}},"match":"(?xi)\\n(:)\\\\s*\\n(\\n # nullable type\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ |\\n # union, intersection or DNF type\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n (?: \\\\s*[|&]\\\\s*\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n )+\\n)\\n(?=\\\\s*(?:=>|/[/*]|\\\\#|$))"}]},{"begin":"((?:(?:final|abstract|public|private|protected)\\\\s+)*)(function)\\\\s+(__construct)\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"match":"final|abstract|public|private|protected","name":"storage.modifier.php"}]},"2":{"name":"storage.type.function.php"},"3":{"name":"support.function.constructor.php"},"4":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"contentName":"meta.function.parameters.php","end":"(?xi)\\n(\\\\)) \\\\s* ( : \\\\s*\\n (?:\\\\?\\\\s*)? (?!\\\\s) [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\\\\\s\\\\|&()]+ (?<!\\\\s)\\n)?\\n(?=\\\\s*(?:{|/[/*]|\\\\#|$|;))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.bracket.round.php"},"2":{"name":"invalid.illegal.return-type.php"}},"name":"meta.function.php","patterns":[{"include":"#comments"},{"match":",","name":"punctuation.separator.delimiter.php"},{"begin":"(?xi)\\n((?:(?:public|private|protected|readonly)(?:\\\\s+|(?=\\\\?)))++)\\n(?: (\\n # nullable type\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ |\\n # union, intersection or DNF type\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n (?: \\\\s*[|&]\\\\s*\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n )+\\n) \\\\s+ )?\\n((?:(&)\\\\s*)?(\\\\$)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Variable name with possible reference","beginCaptures":{"1":{"patterns":[{"match":"public|private|protected|readonly","name":"storage.modifier.php"}]},"2":{"patterns":[{"include":"#php-types"}]},"3":{"name":"variable.other.php"},"4":{"name":"storage.modifier.reference.php"},"5":{"name":"punctuation.definition.variable.php"}},"end":"(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#))","name":"meta.function.parameter.promoted-property.php","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.php"}},"end":"(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#))","patterns":[{"include":"#parameter-default-types"}]}]},{"include":"#function-parameters"}]},{"begin":"((?:(?:final|abstract|public|private|protected|static)\\\\s+)*)(function)\\\\s+(?i:(__(?:call|construct|debugInfo|destruct|get|set|isset|unset|toString|clone|set_state|sleep|wakeup|autoload|invoke|callStatic|serialize|unserialize))|(?:(&)?\\\\s*([a-zA-Z_\\\\x{7f}-\\\\x{10ffff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{10ffff}]*)))\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"match":"final|abstract|public|private|protected|static","name":"storage.modifier.php"}]},"2":{"name":"storage.type.function.php"},"3":{"name":"support.function.magic.php"},"4":{"name":"storage.modifier.reference.php"},"5":{"name":"entity.name.function.php"},"6":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"contentName":"meta.function.parameters.php","end":"(?xi)\\n(\\\\)) (?: \\\\s* (:) \\\\s* (\\n # nullable type\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ |\\n # union, intersection or DNF type\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n (?: \\\\s*[|&]\\\\s*\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n )+\\n) )?\\n(?=\\\\s*(?:{|/[/*]|\\\\#|$|;))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.bracket.round.php"},"2":{"name":"keyword.operator.return-value.php"},"3":{"patterns":[{"match":"\\\\b(static)\\\\b","name":"storage.type.php"},{"match":"\\\\b(never)\\\\b","name":"keyword.other.type.never.php"},{"include":"#php-types"}]}},"name":"meta.function.php","patterns":[{"include":"#function-parameters"}]},{"captures":{"1":{"patterns":[{"match":"public|private|protected|static|readonly","name":"storage.modifier.php"}]},"2":{"patterns":[{"include":"#php-types"}]},"3":{"name":"variable.other.php"},"4":{"name":"punctuation.definition.variable.php"}},"match":"(?xi)\\n((?:(?:public|private|protected|static|readonly)(?:\\\\s+|(?=\\\\?)))++) # At least one modifier\\n(\\n # nullable type\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ |\\n # union, intersection or DNF type\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n (?: \\\\s*[|&]\\\\s*\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n )+\\n)?\\n\\\\s+ ((\\\\$)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Variable name"},{"include":"#invoke-call"},{"include":"#scope-resolution"},{"include":"#variables"},{"include":"#strings"},{"captures":{"1":{"name":"support.function.construct.php"},"2":{"name":"punctuation.definition.array.begin.bracket.round.php"},"3":{"name":"punctuation.definition.array.end.bracket.round.php"}},"match":"(array)(\\\\()(\\\\))","name":"meta.array.empty.php"},{"begin":"(array)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"support.function.construct.php"},"2":{"name":"punctuation.definition.array.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.array.end.bracket.round.php"}},"name":"meta.array.php","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"punctuation.definition.storage-type.begin.bracket.round.php"},"2":{"name":"storage.type.php"},"3":{"name":"punctuation.definition.storage-type.end.bracket.round.php"}},"match":"(?i)(\\\\()\\\\s*(array|real|double|float|int(?:eger)?|bool(?:ean)?|string|object|binary|unset)\\\\s*(\\\\))"},{"match":"(?i)\\\\b(array|real|double|float|int(eger)?|bool(ean)?|string|class|var|function|interface|trait|parent|self|object|mixed)\\\\b","name":"storage.type.php"},{"match":"(?i)\\\\b(global|abstract|const|final|private|protected|public|static)\\\\b","name":"storage.modifier.php"},{"include":"#object"},{"match":";","name":"punctuation.terminator.expression.php"},{"match":":","name":"punctuation.terminator.statement.php"},{"include":"#heredoc"},{"include":"#numbers"},{"match":"(?i)\\\\bclone\\\\b","name":"keyword.other.clone.php"},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.spread.php"},{"match":"\\\\.=?","name":"keyword.operator.string.php"},{"match":"=>","name":"keyword.operator.key.php"},{"captures":{"1":{"name":"keyword.operator.assignment.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"storage.modifier.reference.php"}},"match":"(?i)(\\\\=)(&)|(&)(?=[$a-z_])"},{"match":"@","name":"keyword.operator.error-control.php"},{"match":"===|==|!==|!=|<>","name":"keyword.operator.comparison.php"},{"match":"=|\\\\+=|\\\\-=|\\\\*\\\\*?=|/=|%=|&=|\\\\|=|\\\\^=|<<=|>>=|\\\\?\\\\?=","name":"keyword.operator.assignment.php"},{"match":"<=>|<=|>=|<|>","name":"keyword.operator.comparison.php"},{"match":"\\\\-\\\\-|\\\\+\\\\+","name":"keyword.operator.increment-decrement.php"},{"match":"\\\\-|\\\\+|\\\\*\\\\*?|/|%","name":"keyword.operator.arithmetic.php"},{"match":"(?i)(!|&&|\\\\|\\\\|)|\\\\b(and|or|xor|as)\\\\b","name":"keyword.operator.logical.php"},{"include":"#function-call"},{"match":"<<|>>|~|\\\\^|&|\\\\|","name":"keyword.operator.bitwise.php"},{"begin":"(?i)\\\\b(instanceof)\\\\s+(?=[\\\\\\\\$a-z_])","beginCaptures":{"1":{"name":"keyword.operator.type.php"}},"end":"(?i)(?=[^\\\\\\\\$a-z0-9_\\\\x{7f}-\\\\x{10ffff}])","patterns":[{"include":"#class-name"},{"include":"#variable-name"}]},{"include":"#instantiation"},{"captures":{"1":{"name":"keyword.control.goto.php"},"2":{"name":"support.other.php"}},"match":"(?i)(goto)\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)"},{"captures":{"1":{"name":"entity.name.goto-label.php"}},"match":"(?i)^\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*(?<!default))\\\\s*:(?!:)"},{"include":"#string-backtick"},{"include":"#ternary_shorthand"},{"include":"#null_coalescing"},{"include":"#ternary_expression"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.curly.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.php"}},"patterns":[{"include":"$self"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.php"}},"end":"\\\\]|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.section.array.end.php"}},"patterns":[{"include":"$self"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.php"}},"patterns":[{"include":"$self"}]},{"include":"#constants"},{"match":",","name":"punctuation.separator.delimiter.php"}],"repository":{"attribute":{"begin":"\\\\#\\\\[","end":"\\\\]","name":"meta.attribute.php","patterns":[{"match":",","name":"punctuation.separator.delimiter.php"},{"begin":"([a-zA-Z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#attribute-name"}]},"2":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"include":"#attribute-name"}]},"attribute-name":{"patterns":[{"begin":"(?i)(?=\\\\\\\\?[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\\\\\\\\)","end":"(?xi)\\n( [a-z_\\\\x{7f}-\\\\x{10ffff}] [a-z0-9_\\\\x{7f}-\\\\x{10ffff}]* )?\\n(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])","endCaptures":{"1":{"name":"support.attribute.php"}},"patterns":[{"include":"#namespace"}]},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(?xi)\\n(\\\\\\\\)?\\\\b(Attribute|SensitiveParameter|AllowDynamicProperties|ReturnTypeWillChange)\\\\b","name":"support.attribute.builtin.php"},{"begin":"(?i)(?=[\\\\\\\\a-z_\\\\x{7f}-\\\\x{10ffff}])","end":"(?xi)\\n( [a-z_\\\\x{7f}-\\\\x{10ffff}] [a-z0-9_\\\\x{7f}-\\\\x{10ffff}]* )?\\n(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])","endCaptures":{"1":{"name":"support.attribute.php"}},"patterns":[{"include":"#namespace"}]}]},"class-builtin":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(?xi)\\n(\\\\\\\\)?\\\\b\\n(Attribute|(APC|Append)Iterator|Array(Access|Iterator|Object)\\n|Bad(Function|Method)CallException\\n|(Caching|CallbackFilter)Iterator|Collator|Collectable|Cond|Countable|CURLFile\\n|Date(Interval|Period|Time(Interface|Immutable|Zone)?)?|Directory(Iterator)?|DomainException\\n|DOM(Attr|CdataSection|CharacterData|Comment|Document(Fragment)?|Element|EntityReference\\n |Implementation|NamedNodeMap|Node(list)?|ProcessingInstruction|Text|XPath)\\n|(Error)?Exception|EmptyIterator\\n|finfo\\n|Ev(Check|Child|Embed|Fork|Idle|Io|Loop|Periodic|Prepare|Signal|Stat|Timer|Watcher)?\\n|Event(Base|Buffer(Event)?|SslContext|Http(Request|Connection)?|Config|DnsBase|Util|Listener)?\\n|FANNConnection|(Filter|Filesystem)Iterator\\n|Gender\\\\\\\\Gender|GlobIterator|Gmagick(Draw|Pixel)?\\n|Haru(Annotation|Destination|Doc|Encoder|Font|Image|Outline|Page)\\n|Http((Inflate|Deflate)?Stream|Message|Request(Pool)?|Response|QueryString)\\n|HRTime\\\\\\\\(PerformanceCounter|StopWatch)\\n|Intl(Calendar|((CodePoint|RuleBased)?Break|Parts)?Iterator|DateFormatter|TimeZone)\\n|Imagick(Draw|Pixel(Iterator)?)?\\n|InfiniteIterator|InvalidArgumentException|Iterator(Aggregate|Iterator)?\\n|JsonSerializable\\n|KTaglib_(MPEG_(File|AudioProperties)|Tag|ID3v2_(Tag|(AttachedPicture)?Frame))\\n|Lapack|(Length|Locale|Logic)Exception|LimitIterator|Lua(Closure)?\\n|Mongo(BinData|Client|Code|Collection|CommandCursor|Cursor(Exception)?|Date|DB(Ref)?|DeleteBatch\\n |Grid(FS(Cursor|File)?)|Id|InsertBatch|Int(32|64)|Log|Pool|Regex|ResultException|Timestamp\\n |UpdateBatch|Write(Batch|ConcernException))?\\n|Memcache(d)?|MessageFormatter|MultipleIterator|Mutex\\n|mysqli(_(driver|stmt|warning|result))?\\n|MysqlndUh(Connection|PreparedStatement)\\n|NoRewindIterator|Normalizer|NumberFormatter\\n|OCI-(Collection|Lob)|OuterIterator|(OutOf(Bounds|Range)|Overflow)Exception\\n|ParentIterator|PDO(Statement)?|Phar(Data|FileInfo)?|php_user_filter|Pool\\n|QuickHash(Int(Set|StringHash)|StringIntHash)\\n|Recursive(Array|Caching|Directory|Fallback|Filter|Iterator|Regex|Tree)?Iterator\\n|Reflection(Class|Function(Abstract)?|Method|Object|Parameter|Property|(Zend)?Extension)?\\n|RangeException|Reflector|RegexIterator|ResourceBundle|RuntimeException|RRD(Creator|Graph|Updater)\\n|SAM(Connection|Message)|SCA(_(SoapProxy|LocalProxy))?\\n|SDO_(DAS_(ChangeSummary|Data(Factory|Object)|Relational|Setting|XML(_Document)?)\\n |Data(Factory|Object)|Exception|List|Model_(Property|ReflectionDataObject|Type)|Sequence)\\n|SeekableIterator|Serializable|SessionHandler(Interface)?|SimpleXML(Iterator|Element)|SNMP\\n|Soap(Client|Fault|Header|Param|Server|Var)\\n|SphinxClient|Spoofchecker\\n|Spl(DoublyLinkedList|Enum|File(Info|Object)|FixedArray|(Max|Min)?Heap|Observer|ObjectStorage\\n |(Priority)?Queue|Stack|Subject|Type|TempFileObject)\\n|SQLite(3(Result|Stmt)?|Database|Result|Unbuffered)\\n|stdClass|streamWrapper|SVM(Model)?|Swish(Result(s)?|Search)?|Sync(Event|Mutex|ReaderWriter|Semaphore)\\n|Thread(ed)?|tidy(Node)?|TokyoTyrant(Table|Iterator|Query)?|Transliterator|Traversable\\n|UConverter|(Underflow|UnexpectedValue)Exception\\n|V8Js(Exception)?|Varnish(Admin|Log|Stat)\\n|Worker|Weak(Map|Ref)\\n|XML(Diff\\\\\\\\(Base|DOM|File|Memory)|Reader|Writer)|XsltProcessor\\n|Yaf_(Route_(Interface|Map|Regex|Rewrite|Simple|Supervar)\\n |Action_Abstract|Application|Config_(Simple|Ini|Abstract)|Controller_Abstract\\n |Dispatcher|Exception|Loader|Plugin_Abstract|Registry|Request_(Abstract|Simple|Http)\\n |Response_Abstract|Router|Session|View_(Simple|Interface))\\n|Yar_(Client(_Exception)?|Concurrent_Client|Server(_Exception)?)\\n|ZipArchive|ZMQ(Context|Device|Poll|Socket)?)\\n\\\\b","name":"support.class.builtin.php"}]},"class-constant":{"patterns":[{"captures":{"1":{"name":"storage.modifier.php"},"2":{"name":"constant.other.php"}},"match":"(?i)\\\\b(const)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)"}]},"class-extends":{"patterns":[{"begin":"(?i)(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.extends.php"}},"end":"(?i)(?=[^A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])","patterns":[{"include":"#comments"},{"include":"#inheritance-single"}]}]},"class-implements":{"patterns":[{"begin":"(?i)(implements)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.implements.php"}},"end":"(?i)(?={)","patterns":[{"include":"#comments"},{"match":",","name":"punctuation.separator.classes.php"},{"include":"#inheritance-single"}]}]},"class-name":{"patterns":[{"begin":"(?i)(?=\\\\\\\\?[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\\\\\\\\)","end":"(?xi)\\n( [a-z_\\\\x{7f}-\\\\x{10ffff}] [a-z0-9_\\\\x{7f}-\\\\x{10ffff}]* )?\\n(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])","endCaptures":{"1":{"name":"support.class.php"}},"patterns":[{"include":"#namespace"}]},{"include":"#class-builtin"},{"begin":"(?i)(?=[\\\\\\\\a-z_\\\\x{7f}-\\\\x{10ffff}])","end":"(?xi)\\n( [a-z_\\\\x{7f}-\\\\x{10ffff}] [a-z0-9_\\\\x{7f}-\\\\x{10ffff}]* )?\\n(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])","endCaptures":{"1":{"name":"support.class.php"}},"patterns":[{"include":"#namespace"}]}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?=\\\\s)","beginCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"name":"comment.block.documentation.phpdoc.php","patterns":[{"include":"#php_doc"}]},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.php"}},"end":"\\\\*/","name":"comment.block.php"},{"begin":"(^\\\\s+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.php"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"end":"\\\\n|(?=\\\\?>)","name":"comment.line.double-slash.php"}]},{"begin":"(^\\\\s+)?(?=#)(?!#\\\\[)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.php"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"end":"\\\\n|(?=\\\\?>)","name":"comment.line.number-sign.php"}]}]},"constants":{"patterns":[{"match":"(?i)\\\\b(TRUE|FALSE|NULL|__(FILE|DIR|FUNCTION|CLASS|METHOD|LINE|NAMESPACE)__|ON|OFF|YES|NO|NL|BR|TAB)\\\\b","name":"constant.language.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(DEFAULT_INCLUDE_PATH|EAR_(INSTALL|EXTENSION)_DIR|E_(ALL|COMPILE_(ERROR|WARNING)|CORE_(ERROR|WARNING)|DEPRECATED|ERROR|NOTICE|PARSE|RECOVERABLE_ERROR|STRICT|USER_(DEPRECATED|ERROR|NOTICE|WARNING)|WARNING)|PHP_(ROUND_HALF_(DOWN|EVEN|ODD|UP)|(MAJOR|MINOR|RELEASE)_VERSION|MAXPATHLEN|BINDIR|SHLIB_SUFFIX|SYSCONFDIR|SAPI|CONFIG_FILE_(PATH|SCAN_DIR)|INT_(MAX|SIZE)|ZTS|OS|OUTPUT_HANDLER_(START|CONT|END)|DEBUG|DATADIR|URL_(SCHEME|HOST|USER|PORT|PASS|PATH|QUERY|FRAGMENT)|PREFIX|EXTRA_VERSION|EXTENSION_DIR|EOL|VERSION(_ID)?|WINDOWS_(NT_(SERVER|DOMAIN_CONTROLLER|WORKSTATION)|VERSION_(MAJOR|MINOR)|BUILD|SUITEMASK|SP_(MAJOR|MINOR)|PRODUCTTYPE|PLATFORM)|LIBDIR|LOCALSTATEDIR)|STD(ERR|IN|OUT)|ZEND_(DEBUG_BUILD|THREAD_SAFE))\\\\b","name":"support.constant.core.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(__COMPILER_HALT_OFFSET__|AB(MON_(1|2|3|4|5|6|7|8|9|10|11|12)|DAY[1-7])|AM_STR|ASSERT_(ACTIVE|BAIL|CALLBACK_QUIET_EVAL|WARNING)|ALT_DIGITS|CASE_(UPPER|LOWER)|CHAR_MAX|CONNECTION_(ABORTED|NORMAL|TIMEOUT)|CODESET|COUNT_(NORMAL|RECURSIVE)|CREDITS_(ALL|DOCS|FULLPAGE|GENERAL|GROUP|MODULES|QA|SAPI)|CRYPT_(BLOWFISH|EXT_DES|MD5|SHA(256|512)|SALT_LENGTH|STD_DES)|CURRENCY_SYMBOL|D_(T_)?FMT|DATE_(ATOM|COOKIE|ISO8601|RFC(822|850|1036|1123|2822|3339)|RSS|W3C)|DAY_[1-7]|DECIMAL_POINT|DIRECTORY_SEPARATOR|ENT_(COMPAT|IGNORE|(NO)?QUOTES)|EXTR_(IF_EXISTS|OVERWRITE|PREFIX_(ALL|IF_EXISTS|INVALID|SAME)|REFS|SKIP)|ERA(_(D_(T_)?FMT)|T_FMT|YEAR)?|FRAC_DIGITS|GROUPING|HASH_HMAC|HTML_(ENTITIES|SPECIALCHARS)|INF|INFO_(ALL|CREDITS|CONFIGURATION|ENVIRONMENT|GENERAL|LICENSEMODULES|VARIABLES)|INI_(ALL|CANNER_(NORMAL|RAW)|PERDIR|SYSTEM|USER)|INT_(CURR_SYMBOL|FRAC_DIGITS)|LC_(ALL|COLLATE|CTYPE|MESSAGES|MONETARY|NUMERIC|TIME)|LOCK_(EX|NB|SH|UN)|LOG_(ALERT|AUTH(PRIV)?|CRIT|CRON|CONS|DAEMON|DEBUG|EMERG|ERR|INFO|LOCAL[1-7]|LPR|KERN|MAIL|NEWS|NODELAY|NOTICE|NOWAIT|ODELAY|PID|PERROR|WARNING|SYSLOG|UCP|USER)|M_(1_PI|SQRT(1_2|2|3|PI)|2_(SQRT)?PI|PI(_(2|4))?|E(ULER)?|LN(10|2|PI)|LOG(10|2)E)|MON_(1|2|3|4|5|6|7|8|9|10|11|12|DECIMAL_POINT|GROUPING|THOUSANDS_SEP)|N_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|NAN|NEGATIVE_SIGN|NO(EXPR|STR)|P_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|PM_STR|POSITIVE_SIGN|PATH(_SEPARATOR|INFO_(EXTENSION|(BASE|DIR|FILE)NAME))|RADIXCHAR|SEEK_(CUR|END|SET)|SORT_(ASC|DESC|LOCALE_STRING|REGULAR|STRING)|STR_PAD_(BOTH|LEFT|RIGHT)|T_FMT(_AMPM)?|THOUSEP|THOUSANDS_SEP|UPLOAD_ERR_(CANT_WRITE|EXTENSION|(FORM|INI)_SIZE|NO_(FILE|TMP_DIR)|OK|PARTIAL)|YES(EXPR|STR))\\\\b","name":"support.constant.std.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(GLOB_(MARK|BRACE|NO(SORT|CHECK|ESCAPE)|ONLYDIR|ERR|AVAILABLE_FLAGS)|XML_(SAX_IMPL|(DTD|DOCUMENT(_(FRAG|TYPE))?|HTML_DOCUMENT|NOTATION|NAMESPACE_DECL|PI|COMMENT|DATA_SECTION|TEXT)_NODE|OPTION_(SKIP_(TAGSTART|WHITE)|CASE_FOLDING|TARGET_ENCODING)|ERROR_((BAD_CHAR|(ATTRIBUTE_EXTERNAL|BINARY|PARAM|RECURSIVE)_ENTITY)_REF|MISPLACED_XML_PI|SYNTAX|NONE|NO_(MEMORY|ELEMENTS)|TAG_MISMATCH|INCORRECT_ENCODING|INVALID_TOKEN|DUPLICATE_ATTRIBUTE|UNCLOSED_(CDATA_SECTION|TOKEN)|UNDEFINED_ENTITY|UNKNOWN_ENCODING|JUNK_AFTER_DOC_ELEMENT|PARTIAL_CHAR|EXTERNAL_ENTITY_HANDLING|ASYNC_ENTITY)|ENTITY_(((REF|DECL)_)?NODE)|ELEMENT(_DECL)?_NODE|LOCAL_NAMESPACE|ATTRIBUTE_(NMTOKEN(S)?|NOTATION|NODE)|CDATA|ID(REF(S)?)?|DECL_NODE|ENTITY|ENUMERATION)|MHASH_(RIPEMD(128|160|256|320)|GOST|MD(2|4|5)|SHA(1|224|256|384|512)|SNEFRU256|HAVAL(128|160|192|224|256)|CRC23(B)?|TIGER(128|160)?|WHIRLPOOL|ADLER32)|MYSQL_(BOTH|NUM|CLIENT_(SSL|COMPRESS|IGNORE_SPACE|INTERACTIVE|ASSOC))|MYSQLI_(REPORT_(STRICT|INDEX|OFF|ERROR|ALL)|REFRESH_(GRANT|MASTER|BACKUP_LOG|STATUS|SLAVE|HOSTS|THREADS|TABLES|LOG)|READ_DEFAULT_(FILE|GROUP)|(GROUP|MULTIPLE_KEY|BINARY|BLOB)_FLAG|BOTH|STMT_ATTR_(CURSOR_TYPE|UPDATE_MAX_LENGTH|PREFETCH_ROWS)|STORE_RESULT|SERVER_QUERY_(NO_((GOOD_)?INDEX_USED)|WAS_SLOW)|SET_(CHARSET_NAME|FLAG)|NO_(DEFAULT_VALUE_FLAG|DATA)|NOT_NULL_FLAG|NUM(_FLAG)?|CURSOR_TYPE_(READ_ONLY|SCROLLABLE|NO_CURSOR|FOR_UPDATE)|CLIENT_(SSL|NO_SCHEMA|COMPRESS|IGNORE_SPACE|INTERACTIVE|FOUND_ROWS)|TYPE_(GEOMETRY|((MEDIUM|LONG|TINY)_)?BLOB|BIT|SHORT|STRING|SET|YEAR|NULL|NEWDECIMAL|NEWDATE|CHAR|TIME(STAMP)?|TINY|INT24|INTERVAL|DOUBLE|DECIMAL|DATE(TIME)?|ENUM|VAR_STRING|FLOAT|LONG(LONG)?)|TIME_STAMP_FLAG|INIT_COMMAND|ZEROFILL_FLAG|ON_UPDATE_NOW_FLAG|OPT_(NET_((CMD|READ)_BUFFER_SIZE)|CONNECT_TIMEOUT|INT_AND_FLOAT_NATIVE|LOCAL_INFILE)|DEBUG_TRACE_ENABLED|DATA_TRUNCATED|USE_RESULT|(ENUM|(PART|PRI|UNIQUE)_KEY|UNSIGNED)_FLAG|ASSOC|ASYNC|AUTO_INCREMENT_FLAG)|MCRYPT_(RC(2|6)|RIJNDAEL_(128|192|256)|RAND|GOST|XTEA|MODE_(STREAM|NOFB|CBC|CFB|OFB|ECB)|MARS|BLOWFISH(_COMPAT)?|SERPENT|SKIPJACK|SAFER(64|128|PLUS)|CRYPT|CAST_(128|256)|TRIPLEDES|THREEWAY|TWOFISH|IDEA|(3)?DES|DECRYPT|DEV_(U)?RANDOM|PANAMA|ENCRYPT|ENIGNA|WAKE|LOKI97|ARCFOUR(_IV)?)|STREAM_(REPORT_ERRORS|MUST_SEEK|MKDIR_RECURSIVE|BUFFER_(NONE|FULL|LINE)|SHUT_(RD)?WR|SOCK_(RDM|RAW|STREAM|SEQPACKET|DGRAM)|SERVER_(BIND|LISTEN)|NOTIFY_(REDIRECTED|RESOLVE|MIME_TYPE_IS|SEVERITY_(INFO|ERR|WARN)|COMPLETED|CONNECT|PROGRESS|FILE_SIZE_IS|FAILURE|AUTH_(REQUIRED|RESULT))|CRYPTO_METHOD_((SSLv2(3)?|SSLv3|TLS)_(CLIENT|SERVER))|CLIENT_((ASYNC_)?CONNECT|PERSISTENT)|CAST_(AS_STREAM|FOR_SELECT)|(IGNORE|IS)_URL|IPPROTO_(RAW|TCP|ICMP|IP|UDP)|OOB|OPTION_(READ_(BUFFER|TIMEOUT)|BLOCKING|WRITE_BUFFER)|URL_STAT_(LINK|QUIET)|USE_PATH|PEEK|PF_(INET(6)?|UNIX)|ENFORCE_SAFE_MODE|FILTER_(ALL|READ|WRITE))|SUNFUNCS_RET_(DOUBLE|STRING|TIMESTAMP)|SQLITE_(READONLY|ROW|MISMATCH|MISUSE|BOTH|BUSY|SCHEMA|NOMEM|NOTFOUND|NOTADB|NOLFS|NUM|CORRUPT|CONSTRAINT|CANTOPEN|TOOBIG|INTERRUPT|INTERNAL|IOERR|OK|DONE|PROTOCOL|PERM|ERROR|EMPTY|FORMAT|FULL|LOCKED|ABORT|ASSOC|AUTH)|SQLITE3_(BOTH|BLOB|NUM|NULL|TEXT|INTEGER|OPEN_(READ(ONLY|WRITE)|CREATE)|FLOAT_ASSOC)|CURL(M_(BAD_((EASY)?HANDLE)|CALL_MULTI_PERFORM|INTERNAL_ERROR|OUT_OF_MEMORY|OK)|MSG_DONE|SSH_AUTH_(HOST|NONE|DEFAULT|PUBLICKEY|PASSWORD|KEYBOARD)|CLOSEPOLICY_(SLOWEST|CALLBACK|OLDEST|LEAST_(RECENTLY_USED|TRAFFIC)|INFO_(REDIRECT_(COUNT|TIME)|REQUEST_SIZE|SSL_VERIFYRESULT|STARTTRANSFER_TIME|(SIZE|SPEED)_(DOWNLOAD|UPLOAD)|HTTP_CODE|HEADER_(OUT|SIZE)|NAMELOOKUP_TIME|CONNECT_TIME|CONTENT_(TYPE|LENGTH_(DOWNLOAD|UPLOAD))|CERTINFO|TOTAL_TIME|PRIVATE|PRETRANSFER_TIME|EFFECTIVE_URL|FILETIME)|OPT_(RESUME_FROM|RETURNTRANSFER|REDIR_PROTOCOLS|REFERER|READ(DATA|FUNCTION)|RANGE|RANDOM_FILE|MAX(CONNECTS|REDIRS)|BINARYTRANSFER|BUFFERSIZE|SSH_(HOST_PUBLIC_KEY_MD5|(PRIVATE|PUBLIC)_KEYFILE)|AUTH_TYPES)|SSL(CERT(TYPE|PASSWD)?|ENGINE(_DEFAULT)?|VERSION|KEY(TYPE|PASSWD)?)|SSL_(CIPHER_LIST|VERIFY(HOST|PEER))|STDERR|HTTP(GET|HEADER|200ALIASES|_VERSION|PROXYTUNNEL|AUTH)|HEADER(FUNCTION)?|NO(BODY|SIGNAL|PROGRESS)|NETRC|CRLF|CONNECTTIMEOUT(_MS)?|COOKIE(SESSION|JAR|FILE)?|CUSTOMREQUEST|CERTINFO|CLOSEPOLICY|CA(INFO|PATH)|TRANSFERTEXT|TCP_NODELAY|TIME(CONDITION|OUT(_MS)?|VALUE)|INTERFACE|INFILE(SIZE)?|IPRESOLVE|DNS_(CACHE_TIMEOUT|USE_GLOBAL_CACHE)|URL|USER(AGENT|PWD)|UNRESTRICTED_AUTH|UPLOAD|PRIVATE|PROGRESSFUNCTION|PROXY(TYPE|USERPWD|PORT|AUTH)?|PROTOCOLS|PORT|POST(REDIR|QUOTE|FIELDS)?|PUT|EGDSOCKET|ENCODING|VERBOSE|KRB4LEVEL|KEYPASSWD|QUOTE|FRESH_CONNECT|FTP(APPEND|LISTONLY|PORT|SSLAUTH)|FTP_(SSL|SKIP_PASV_IP|CREATE_MISSING_DIRS|USE_EP(RT|SV)|FILEMETHOD)|FILE(TIME)?|FORBID_REUSE|FOLLOWLOCATION|FAILONERROR|WRITE(FUNCTION|HEADER)|LOW_SPEED_(LIMIT|TIME)|AUTOREFERER)|PROXY_(HTTP|SOCKS(4|5))|PROTO_(SCP|SFTP|HTTP(S)?|TELNET|TFTP|DICT|FTP(S)?|FILE|LDAP(S)?|ALL)|E_((RECV|READ)_ERROR|GOT_NOTHING|MALFORMAT_USER|BAD_(CONTENT_ENCODING|CALLING_ORDER|PASSWORD_ENTERED|FUNCTION_ARGUMENT)|SSH|SSL_(CIPHER|CONNECT_ERROR|CERTPROBLEM|CACERT|PEER_CERTIFICATE|ENGINE_(NOTFOUND|SETFAILED))|SHARE_IN_USE|SEND_ERROR|HTTP_(RANGE_ERROR|NOT_FOUND|PORT_FAILED|POST_ERROR)|COULDNT_(RESOLVE_(HOST|PROXY)|CONNECT)|TOO_MANY_REDIRECTS|TELNET_OPTION_SYNTAX|OBSOLETE|OUT_OF_MEMORY|OPERATION|TIMEOUTED|OK|URL_MALFORMAT(_USER)?|UNSUPPORTED_PROTOCOL|UNKNOWN_TELNET_OPTION|PARTIAL_FILE|FTP_(BAD_DOWNLOAD_RESUME|SSL_FAILED|COULDNT_(RETR_FILE|GET_SIZE|STOR_FILE|SET_(BINARY|ASCII)|USE_REST)|CANT_(GET_HOST|RECONNECT)|USER_PASSWORD_INCORRECT|PORT_FAILED|QUOTE_ERROR|WRITE_ERROR|WEIRD_((PASS|PASV|SERVER|USER)_REPLY|227_FORMAT)|ACCESS_DENIED)|FILESIZE_EXCEEDED|FILE_COULDNT_READ_FILE|FUNCTION_NOT_FOUND|FAILED_INIT|WRITE_ERROR|LIBRARY_NOT_FOUND|LDAP_(SEARCH_FAILED|CANNOT_BIND|INVALID_URL)|ABORTED_BY_CALLBACK)|VERSION_NOW|FTP(METHOD_(MULTI|SINGLE|NO)CWD|SSL_(ALL|NONE|CONTROL|TRY)|AUTH_(DEFAULT|SSL|TLS))|AUTH_(ANY(SAFE)?|BASIC|DIGEST|GSSNEGOTIATE|NTLM))|CURL_(HTTP_VERSION_(1_(0|1)|NONE)|NETRC_(REQUIRED|IGNORED|OPTIONAL)|TIMECOND_(IF(UN)?MODSINCE|LASTMOD)|IPRESOLVE_(V(4|6)|WHATEVER)|VERSION_(SSL|IPV6|KERBEROS4|LIBZ))|IMAGETYPE_(GIF|XBM|BMP|SWF|COUNT|TIFF_(MM|II)|ICO|IFF|UNKNOWN|JB2|JPX|JP2|JPC|JPEG(2000)?|PSD|PNG|WBMP)|INPUT_(REQUEST|GET|SERVER|SESSION|COOKIE|POST|ENV)|ICONV_(MIME_DECODE_(STRICT|CONTINUE_ON_ERROR)|IMPL|VERSION)|DNS_(MX|SRV|SOA|HINFO|NS|NAPTR|CNAME|TXT|PTR|ANY|ALL|AAAA|A(6)?)|DOM(STRING_SIZE_ERR)|DOM_((SYNTAX|HIERARCHY_REQUEST|NO_(MODIFICATION_ALLOWED|DATA_ALLOWED)|NOT_(FOUND|SUPPORTED)|NAMESPACE|INDEX_SIZE|USE_ATTRIBUTE|VALID_(MODIFICATION|STATE|CHARACTER|ACCESS)|PHP|VALIDATION|WRONG_DOCUMENT)_ERR)|JSON_(HEX_(TAG|QUOT|AMP|APOS)|NUMERIC_CHECK|ERROR_(SYNTAX|STATE_MISMATCH|NONE|CTRL_CHAR|DEPTH|UTF8)|FORCE_OBJECT)|PREG_((D_UTF8(_OFFSET)?|NO|INTERNAL|(BACKTRACK|RECURSION)_LIMIT)_ERROR|GREP_INVERT|SPLIT_(NO_EMPTY|(DELIM|OFFSET)_CAPTURE)|SET_ORDER|OFFSET_CAPTURE|PATTERN_ORDER)|PSFS_(PASS_ON|ERR_FATAL|FEED_ME|FLAG_(NORMAL|FLUSH_(CLOSE|INC)))|PCRE_VERSION|POSIX_((F|R|W|X)_OK|S_IF(REG|BLK|SOCK|CHR|IFO))|FNM_(NOESCAPE|CASEFOLD|PERIOD|PATHNAME)|FILTER_(REQUIRE_(SCALAR|ARRAY)|NULL_ON_FAILURE|CALLBACK|DEFAULT|UNSAFE_RAW|SANITIZE_(MAGIC_QUOTES|STRING|STRIPPED|SPECIAL_CHARS|NUMBER_(INT|FLOAT)|URL|EMAIL|ENCODED|FULL_SPCIAL_CHARS)|VALIDATE_(REGEXP|BOOLEAN|INT|IP|URL|EMAIL|FLOAT)|FORCE_ARRAY|FLAG_(SCHEME_REQUIRED|STRIP_(BACKTICK|HIGH|LOW)|HOST_REQUIRED|NONE|NO_(RES|PRIV)_RANGE|ENCODE_QUOTES|IPV(4|6)|PATH_REQUIRED|EMPTY_STRING_NULL|ENCODE_(HIGH|LOW|AMP)|QUERY_REQUIRED|ALLOW_(SCIENTIFIC|HEX|THOUSAND|OCTAL|FRACTION)))|FILE_(BINARY|SKIP_EMPTY_LINES|NO_DEFAULT_CONTEXT|TEXT|IGNORE_NEW_LINES|USE_INCLUDE_PATH|APPEND)|FILEINFO_(RAW|MIME(_(ENCODING|TYPE))?|SYMLINK|NONE|CONTINUE|DEVICES|PRESERVE_ATIME)|FORCE_(DEFLATE|GZIP)|LIBXML_(XINCLUDE|NSCLEAN|NO(XMLDECL|BLANKS|NET|CDATA|ERROR|EMPTYTAG|ENT|WARNING)|COMPACT|DTD(VALID|LOAD|ATTR)|((DOTTED|LOADED)_)?VERSION|PARSEHUGE|ERR_(NONE|ERROR|FATAL|WARNING)))\\\\b","name":"support.constant.ext.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(T_(RETURN|REQUIRE(_ONCE)?|GOTO|GLOBAL|(MINUS|MOD|MUL|XOR)_EQUAL|METHOD_C|ML_COMMENT|BREAK|BOOL_CAST|BOOLEAN_(AND|OR)|BAD_CHARACTER|SR(_EQUAL)?|STRING(_CAST|VARNAME)?|START_HEREDOC|STATIC|SWITCH|SL(_EQUAL)?|HALT_COMPILER|NS_(C|SEPARATOR)|NUM_STRING|NEW|NAMESPACE|CHARACTER|COMMENT|CONSTANT(_ENCAPSED_STRING)?|CONCAT_EQUAL|CONTINUE|CURLY_OPEN|CLOSE_TAG|CLONE|CLASS(_C)?|CASE|CATCH|TRY|THROW|IMPLEMENTS|ISSET|IS_((GREATER|SMALLER)_OR_EQUAL|(NOT_)?(IDENTICAL|EQUAL))|INSTANCEOF|INCLUDE(_ONCE)?|INC|INT_CAST|INTERFACE|INLINE_HTML|IF|OR_EQUAL|OBJECT_(CAST|OPERATOR)|OPEN_TAG(_WITH_ECHO)?|OLD_FUNCTION|DNUMBER|DIR|DIV_EQUAL|DOC_COMMENT|DOUBLE_(ARROW|CAST|COLON)|DOLLAR_OPEN_CURLY_BRACES|DO|DEC|DECLARE|DEFAULT|USE|UNSET(_CAST)?|PRINT|PRIVATE|PROTECTED|PUBLIC|PLUS_EQUAL|PAAMAYIM_NEKUDOTAYIM|EXTENDS|EXIT|EMPTY|ENCAPSED_AND_WHITESPACE|END(SWITCH|IF|DECLARE|FOR(EACH)?|WHILE)|END_HEREDOC|ECHO|EVAL|ELSE(IF)?|VAR(IABLE)?|FINAL|FILE|FOR(EACH)?|FUNC_C|FUNCTION|WHITESPACE|WHILE|LNUMBER|LIST|LINE|LOGICAL_(AND|OR|XOR)|ARRAY_(CAST)?|ABSTRACT|AS|AND_EQUAL))\\\\b","name":"support.constant.parser-token.php"},{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*","name":"constant.other.php"}]},"function-call":{"patterns":[{"begin":"(\\\\\\\\?(?<![a-zA-Z0-9_\\\\x{7f}-\\\\x{10ffff}])[a-zA-Z_\\\\x{7f}-\\\\x{10ffff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{10ffff}]*(?:\\\\\\\\[a-zA-Z_\\\\x{7f}-\\\\x{10ffff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{10ffff}]*)+)\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#namespace"},{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*","name":"entity.name.function.php"}]},"2":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.function-call.php","patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"begin":"(\\\\\\\\)?(?<![a-zA-Z0-9_\\\\x{7f}-\\\\x{10ffff}])([a-zA-Z_\\\\x{7f}-\\\\x{10ffff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#namespace"}]},"2":{"patterns":[{"include":"#support"},{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*","name":"entity.name.function.php"}]},"3":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.function-call.php","patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"match":"(?i)\\\\b(print|echo)\\\\b","name":"support.function.construct.output.php"}]},"function-parameters":{"patterns":[{"include":"#attribute"},{"include":"#comments"},{"match":",","name":"punctuation.separator.delimiter.php"},{"captures":{"1":{"patterns":[{"include":"#php-types"}]},"2":{"name":"variable.other.php"},"3":{"name":"storage.modifier.reference.php"},"4":{"name":"keyword.operator.variadic.php"},"5":{"name":"punctuation.definition.variable.php"}},"match":"(?xi)\\n(?: (\\n # nullable type\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ |\\n # union, intersection or DNF type\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n (?: \\\\s*[|&]\\\\s*\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n )+\\n) \\\\s+ )?\\n((?:(&)\\\\s*)?(\\\\.\\\\.\\\\.)(\\\\$)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Variable name with possible reference\\n(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#|$)) # A closing parentheses (end of argument list) or a comma or a comment","name":"meta.function.parameter.variadic.php"},{"begin":"(?xi)\\n(\\n # nullable type\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ |\\n # union, intersection or DNF type\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n (?: \\\\s*[|&]\\\\s*\\n (?: [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | \\\\(\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+(?:\\\\s*&\\\\s*[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ \\\\s*\\\\) )\\n )+\\n)\\n\\\\s+ ((?:(&)\\\\s*)?(\\\\$)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Variable name with possible reference","beginCaptures":{"1":{"patterns":[{"include":"#php-types"}]},"2":{"name":"variable.other.php"},"3":{"name":"storage.modifier.reference.php"},"4":{"name":"punctuation.definition.variable.php"}},"end":"(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#))","name":"meta.function.parameter.typehinted.php","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.php"}},"end":"(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#))","patterns":[{"include":"#parameter-default-types"}]}]},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"punctuation.definition.variable.php"}},"match":"(?xi)\\n((?:(&)\\\\s*)?(\\\\$)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Variable name with possible reference\\n(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#|$)) # A closing parentheses (end of argument list) or a comma or a comment","name":"meta.function.parameter.no-default.php"},{"begin":"(?xi)\\n((?:(&)\\\\s*)?(\\\\$)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Variable name with possible reference\\n\\\\s*(=)\\\\s*","beginCaptures":{"1":{"name":"variable.other.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"punctuation.definition.variable.php"},"4":{"name":"keyword.operator.assignment.php"}},"end":"(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#))","name":"meta.function.parameter.default.php","patterns":[{"include":"#parameter-default-types"}]}]},"heredoc":{"patterns":[{"begin":"(?i)(?=<<<\\\\s*(\\"?)([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)(\\\\1)\\\\s*$)","end":"(?!\\\\G)","name":"string.unquoted.heredoc.php","patterns":[{"include":"#heredoc_interior"}]},{"begin":"(?=<<<\\\\s*'([a-zA-Z_]+[a-zA-Z0-9_]*)'\\\\s*$)","end":"(?!\\\\G)","name":"string.unquoted.nowdoc.php","patterns":[{"include":"#nowdoc_interior"}]}]},"heredoc_interior":{"patterns":[{"begin":"(<<<)\\\\s*(\\"?)(HTML)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.html","end":"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.html","patterns":[{"include":"#interpolation"},{"include":"text.html.basic"}]},{"begin":"(<<<)\\\\s*(\\"?)(XML)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.xml","end":"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.xml","patterns":[{"include":"#interpolation"},{"include":"text.xml"}]},{"begin":"(<<<)\\\\s*(\\"?)([DS]QL)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.sql","end":"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.sql","patterns":[{"include":"#interpolation"},{"include":"source.sql"}]},{"begin":"(<<<)\\\\s*(\\"?)(JAVASCRIPT|JS)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.js","end":"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.js","patterns":[{"include":"#interpolation"},{"include":"source.js"}]},{"begin":"(<<<)\\\\s*(\\"?)(JSON)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.json","end":"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.json","patterns":[{"include":"#interpolation"},{"include":"source.json"}]},{"begin":"(<<<)\\\\s*(\\"?)(CSS)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.css","end":"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.css","patterns":[{"include":"#interpolation"},{"include":"source.css"}]},{"begin":"(<<<)\\\\s*(\\"?)(REGEXP?)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"string.regexp.heredoc.php","end":"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"patterns":[{"include":"#interpolation"},{"match":"(\\\\\\\\){1,2}[.$^\\\\[\\\\]{}]","name":"constant.character.escape.regex.php"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repitition.php"},"3":{"name":"punctuation.definition.arbitrary-repitition.php"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repitition.php"},{"begin":"\\\\[(?:\\\\^?\\\\])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"\\\\]","name":"string.regexp.character-class.php","patterns":[{"match":"\\\\\\\\[\\\\\\\\'\\\\[\\\\]]","name":"constant.character.escape.php"}]},{"match":"[$^+*]","name":"keyword.operator.regexp.php"},{"begin":"(?i)(?<=^|\\\\s)(#)\\\\s(?=[[a-z0-9_\\\\x{7f}-\\\\x{10ffff},. \\\\t?!-][^\\\\x{00}-\\\\x{7f}]]*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.php"}},"end":"$","endCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"name":"comment.line.number-sign.php"}]},{"begin":"(<<<)\\\\s*(\\"?)(BLADE)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.html.php.blade","end":"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.php.blade","patterns":[{"include":"#interpolation"}]},{"begin":"(?i)(<<<)\\\\s*(\\"?)([a-z_\\\\x{7f}-\\\\x{10ffff}]+[a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)(\\\\2)(\\\\s*)","beginCaptures":{"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"end":"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"1":{"name":"keyword.operator.heredoc.php"}},"patterns":[{"include":"#interpolation"}]}]},"inheritance-single":{"patterns":[{"begin":"(?i)(?=\\\\\\\\?[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\\\\\\\\)","end":"(?i)([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)?(?=[^a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])","endCaptures":{"1":{"name":"entity.other.inherited-class.php"}},"patterns":[{"include":"#namespace"}]},{"include":"#class-builtin"},{"include":"#namespace"},{"match":"(?i)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*","name":"entity.other.inherited-class.php"}]},"instantiation":{"begin":"(?i)(new)\\\\s+(?!class\\\\b)","beginCaptures":{"1":{"name":"keyword.other.new.php"}},"end":"(?i)(?=[^a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])","patterns":[{"match":"(?i)(parent|static|self)(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}])","name":"storage.type.php"},{"include":"#class-name"},{"include":"#variable-name"}]},"interface-extends":{"patterns":[{"begin":"(?i)(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.extends.php"}},"end":"(?i)(?={)","patterns":[{"include":"#comments"},{"match":",","name":"punctuation.separator.classes.php"},{"include":"#inheritance-single"}]}]},"interpolation":{"patterns":[{"match":"\\\\\\\\[0-7]{1,3}","name":"constant.character.escape.octal.php"},{"match":"\\\\\\\\x[0-9A-Fa-f]{1,2}","name":"constant.character.escape.hex.php"},{"match":"\\\\\\\\u{[0-9A-Fa-f]+}","name":"constant.character.escape.unicode.php"},{"match":"\\\\\\\\[nrtvef$\\\\\\\\]","name":"constant.character.escape.php"},{"begin":"{(?=\\\\$.*?})","beginCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"patterns":[{"include":"$self"}]},{"include":"#variable-name"}]},"interpolation_double_quoted":{"patterns":[{"match":"\\\\\\\\\\"","name":"constant.character.escape.php"},{"include":"#interpolation"}]},"invoke-call":{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"punctuation.definition.variable.php"}},"match":"(?i)((\\\\$+)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)(?=\\\\s*\\\\()","name":"meta.function-call.invoke.php"},"match_statement":{"patterns":[{"match":"\\\\s+(?=match\\\\b)"},{"begin":"\\\\bmatch\\\\b","beginCaptures":{"0":{"name":"keyword.control.match.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.section.match-block.end.bracket.curly.php"}},"name":"meta.match-statement.php","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.match-expression.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.match-expression.end.bracket.round.php"}},"patterns":[{"include":"$self"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.section.match-block.begin.bracket.curly.php"}},"end":"(?=}|\\\\?>)","patterns":[{"match":"=>","name":"keyword.definition.arrow.php"},{"include":"$self"}]}]}]},"named-arguments":{"captures":{"1":{"name":"entity.name.variable.parameter.php"},"2":{"name":"punctuation.separator.colon.php"}},"match":"(?i)(?<=^|\\\\(|,)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(:)(?!:)"},"namespace":{"begin":"(?i)(?:(namespace)|[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)?(\\\\\\\\)","beginCaptures":{"1":{"name":"variable.language.namespace.php"},"2":{"name":"punctuation.separator.inheritance.php"}},"end":"(?i)(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\\\\\\\\)","name":"support.other.namespace.php","patterns":[{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]},"nowdoc_interior":{"patterns":[{"begin":"(<<<)\\\\s*'(HTML)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.html","end":"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.html","patterns":[{"include":"text.html.basic"}]},{"begin":"(<<<)\\\\s*'(XML)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.xml","end":"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.xml","patterns":[{"include":"text.xml"}]},{"begin":"(<<<)\\\\s*'([DS]QL)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.sql","end":"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.sql","patterns":[{"include":"source.sql"}]},{"begin":"(<<<)\\\\s*'(JAVASCRIPT|JS)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.js","end":"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.js","patterns":[{"include":"source.js"}]},{"begin":"(<<<)\\\\s*'(JSON)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.json","end":"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.json","patterns":[{"include":"source.json"}]},{"begin":"(<<<)\\\\s*'(CSS)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.css","end":"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.css","patterns":[{"include":"source.css"}]},{"begin":"(<<<)\\\\s*'(REGEXP?)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"string.regexp.nowdoc.php","end":"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"patterns":[{"match":"(\\\\\\\\){1,2}[.$^\\\\[\\\\]{}]","name":"constant.character.escape.regex.php"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repitition.php"},"3":{"name":"punctuation.definition.arbitrary-repitition.php"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repitition.php"},{"begin":"\\\\[(?:\\\\^?\\\\])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"\\\\]","name":"string.regexp.character-class.php","patterns":[{"match":"\\\\\\\\[\\\\\\\\'\\\\[\\\\]]","name":"constant.character.escape.php"}]},{"match":"[$^+*]","name":"keyword.operator.regexp.php"},{"begin":"(?i)(?<=^|\\\\s)(#)\\\\s(?=[[a-z0-9_\\\\x{7f}-\\\\x{10ffff},. \\\\t?!-][^\\\\x{00}-\\\\x{7f}]]*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.php"}},"end":"$","endCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"name":"comment.line.number-sign.php"}]},{"begin":"(<<<)\\\\s*'(BLADE)'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.html.php.blade","end":"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.php.blade"},{"begin":"(?i)(<<<)\\\\s*'([a-z_\\\\x{7f}-\\\\x{10ffff}]+[a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)'(\\\\s*)","beginCaptures":{"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"end":"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])","endCaptures":{"1":{"name":"keyword.operator.nowdoc.php"}}}]},"null_coalescing":{"match":"\\\\?\\\\?","name":"keyword.operator.null-coalescing.php"},"numbers":{"patterns":[{"match":"0[xX][0-9a-fA-F]+(?:_[0-9a-fA-F]+)*","name":"constant.numeric.hex.php"},{"match":"0[bB][01]+(?:_[01]+)*","name":"constant.numeric.binary.php"},{"match":"0[oO][0-7]+(?:_[0-7]+)*","name":"constant.numeric.octal.php"},{"match":"0(?:_?[0-7]+)+","name":"constant.numeric.octal.php"},{"captures":{"1":{"name":"punctuation.separator.decimal.period.php"},"2":{"name":"punctuation.separator.decimal.period.php"}},"match":"(?:(?:[0-9]+(?:_[0-9]+)*)?(\\\\.)[0-9]+(?:_[0-9]+)*(?:[eE][+-]?[0-9]+(?:_[0-9]+)*)?|[0-9]+(?:_[0-9]+)*(\\\\.)(?:[0-9]+(?:_[0-9]+)*)?(?:[eE][+-]?[0-9]+(?:_[0-9]+)*)?|[0-9]+(?:_[0-9]+)*[eE][+-]?[0-9]+(?:_[0-9]+)*)","name":"constant.numeric.decimal.php"},{"match":"0|[1-9](?:_?[0-9]+)*","name":"constant.numeric.decimal.php"}]},"object":{"patterns":[{"begin":"(\\\\??->)\\\\s*(\\\\$?{)","beginCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"punctuation.definition.variable.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"patterns":[{"include":"$self"}]},{"begin":"(?i)(\\\\??->)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"entity.name.function.php"},"3":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.method-call.php","patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"captures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"variable.other.property.php"},"3":{"name":"punctuation.definition.variable.php"}},"match":"(?i)(\\\\??->)\\\\s*((\\\\$+)?[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)?"}]},"parameter-default-types":{"patterns":[{"include":"#strings"},{"include":"#numbers"},{"include":"#string-backtick"},{"include":"#variables"},{"match":"=>","name":"keyword.operator.key.php"},{"match":"=","name":"keyword.operator.assignment.php"},{"match":"&(?=\\\\s*\\\\$)","name":"storage.modifier.reference.php"},{"begin":"(array)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"support.function.construct.php"},"2":{"name":"punctuation.definition.array.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.array.end.bracket.round.php"}},"name":"meta.array.php","patterns":[{"include":"#parameter-default-types"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.php"}},"end":"\\\\]|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.section.array.end.php"}},"patterns":[{"include":"$self"}]},{"include":"#instantiation"},{"begin":"(?xi)\\n(?=[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+\\n (::)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)?\\n)","end":"(?i)(::)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)?","endCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"constant.other.class.php"}},"patterns":[{"include":"#class-name"}]},{"include":"#constants"}]},"php-types":{"patterns":[{"match":"\\\\?","name":"keyword.operator.nullable-type.php"},{"match":"[|&]","name":"punctuation.separator.delimiter.php"},{"match":"(?i)\\\\b(null|int|float|bool|string|array|object|callable|iterable|true|false|mixed|void)\\\\b","name":"keyword.other.type.php"},{"match":"(?i)\\\\b(parent|self)\\\\b","name":"storage.type.php"},{"match":"\\\\(","name":"punctuation.definition.type.begin.bracket.round.php"},{"match":"\\\\)","name":"punctuation.definition.type.end.bracket.round.php"},{"include":"#class-name"}]},"php_doc":{"patterns":[{"match":"^(?!\\\\s*\\\\*).*?(?:(?=\\\\*\\\\/)|$\\\\n?)","name":"invalid.illegal.missing-asterisk.phpdoc.php"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"},"3":{"name":"storage.modifier.php"},"4":{"name":"invalid.illegal.wrong-access-type.phpdoc.php"}},"match":"^\\\\s*\\\\*\\\\s*(@access)\\\\s+((public|private|protected)|(.+))\\\\s*$"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"},"2":{"name":"markup.underline.link.php"}},"match":"(@xlink)\\\\s+(.+)\\\\s*$"},{"begin":"(@(?:global|param|property(-(read|write))?|return|throws|var))\\\\s+(?=[?A-Za-z_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]|\\\\()","beginCaptures":{"1":{"name":"keyword.other.phpdoc.php"}},"contentName":"meta.other.type.phpdoc.php","end":"(?=\\\\s|\\\\*/)","patterns":[{"include":"#php_doc_types_array_multiple"},{"include":"#php_doc_types_array_single"},{"include":"#php_doc_types"}]},{"match":"@(api|abstract|author|category|copyright|example|global|inherit[Dd]oc|internal|license|link|method|property(-(read|write))?|package|param|return|see|since|source|static|subpackage|throws|todo|var|version|uses|deprecated|final|ignore)\\\\b","name":"keyword.other.phpdoc.php"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"}},"match":"{(@(link|inherit[Dd]oc)).+?}","name":"meta.tag.inline.phpdoc.php"}]},"php_doc_types":{"captures":{"0":{"patterns":[{"match":"\\\\?","name":"keyword.operator.nullable-type.php"},{"match":"\\\\b(string|integer|int|boolean|bool|float|double|object|mixed|array|resource|void|null|callback|false|true|self|static)\\\\b","name":"keyword.other.type.php"},{"include":"#class-name"},{"match":"[|&]","name":"punctuation.separator.delimiter.php"},{"match":"\\\\(","name":"punctuation.definition.type.begin.bracket.round.php"},{"match":"\\\\)","name":"punctuation.definition.type.end.bracket.round.php"}]}},"match":"(?i)\\\\??[a-z_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\][a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]*([|&]\\\\??[a-z_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\][a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]*)*"},"php_doc_types_array_multiple":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.type.begin.bracket.round.phpdoc.php"}},"end":"(\\\\))(\\\\[\\\\])|(?=\\\\*/)","endCaptures":{"1":{"name":"punctuation.definition.type.end.bracket.round.phpdoc.php"},"2":{"name":"keyword.other.array.phpdoc.php"}},"patterns":[{"include":"#php_doc_types_array_multiple"},{"include":"#php_doc_types_array_single"},{"include":"#php_doc_types"},{"match":"[|&]","name":"punctuation.separator.delimiter.php"}]},"php_doc_types_array_single":{"captures":{"1":{"patterns":[{"include":"#php_doc_types"}]},"2":{"name":"keyword.other.array.phpdoc.php"}},"match":"(?i)([a-z_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\][a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]*)(\\\\[\\\\])"},"regex-double-quoted":{"begin":"\\"/(?=(\\\\\\\\.|[^\\"/])++/[imsxeADSUXu]*\\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"(/)([imsxeADSUXu]*)(\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.regexp.double-quoted.php","patterns":[{"match":"(\\\\\\\\){1,2}[.$^\\\\[\\\\]{}]","name":"constant.character.escape.regex.php"},{"include":"#interpolation_double_quoted"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.php"},"3":{"name":"punctuation.definition.arbitrary-repetition.php"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repetition.php"},{"begin":"\\\\[(?:\\\\^?\\\\])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"\\\\]","name":"string.regexp.character-class.php","patterns":[{"include":"#interpolation_double_quoted"}]},{"match":"[$^+*]","name":"keyword.operator.regexp.php"}]},"regex-single-quoted":{"begin":"'/(?=(\\\\\\\\(?:\\\\\\\\(?:\\\\\\\\[\\\\\\\\']?|[^'])|.)|[^'/])++/[imsxeADSUXu]*')","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"(/)([imsxeADSUXu]*)(')","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.regexp.single-quoted.php","patterns":[{"include":"#single_quote_regex_escape"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.php"},"3":{"name":"punctuation.definition.arbitrary-repetition.php"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repetition.php"},{"begin":"\\\\[(?:\\\\^?\\\\])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"\\\\]","name":"string.regexp.character-class.php"},{"match":"[$^+*]","name":"keyword.operator.regexp.php"}]},"scope-resolution":{"patterns":[{"captures":{"1":{"patterns":[{"match":"\\\\b(self|static|parent)\\\\b","name":"storage.type.php"},{"include":"#class-name"},{"include":"#variable-name"}]}},"match":"([A-Za-z_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\][A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]*)(?=\\\\s*::)"},{"begin":"(?i)(::)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"entity.name.function.php"},"3":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.method-call.static.php","patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"captures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"keyword.other.class.php"}},"match":"(?i)(::)\\\\s*(class)\\\\b"},{"captures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"variable.other.class.php"},"3":{"name":"punctuation.definition.variable.php"},"4":{"name":"constant.other.class.php"}},"match":"(?xi)\\n(::)\\\\s*\\n(?:\\n ((\\\\$+)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Variable\\n |\\n ([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Constant\\n)?"}]},"single_quote_regex_escape":{"match":"\\\\\\\\(?:\\\\\\\\(?:\\\\\\\\[\\\\\\\\']?|[^'])|.)","name":"constant.character.escape.php"},"sql-string-double-quoted":{"begin":"\\"\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND|WITH)\\\\b)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"contentName":"source.sql.embedded.php","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.double.sql.php","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(#)(\\\\\\\\\\"|[^\\"])*(?=\\"|$)","name":"comment.line.number-sign.sql"},{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(--)(\\\\\\\\\\"|[^\\"])*(?=\\"|$)","name":"comment.line.double-dash.sql"},{"match":"\\\\\\\\[\\\\\\\\\\"\`']","name":"constant.character.escape.php"},{"match":"'(?=((\\\\\\\\')|[^'\\"])*(\\"|$))","name":"string.quoted.single.unclosed.sql"},{"match":"\`(?=((\\\\\\\\\`)|[^\`\\"])*(\\"|$))","name":"string.quoted.other.backtick.unclosed.sql"},{"begin":"'","end":"'","name":"string.quoted.single.sql","patterns":[{"include":"#interpolation_double_quoted"}]},{"begin":"\`","end":"\`","name":"string.quoted.other.backtick.sql","patterns":[{"include":"#interpolation_double_quoted"}]},{"include":"#interpolation_double_quoted"},{"include":"source.sql"}]},"sql-string-single-quoted":{"begin":"'\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND|WITH)\\\\b)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"contentName":"source.sql.embedded.php","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.single.sql.php","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(#)(\\\\\\\\'|[^'])*(?='|$)","name":"comment.line.number-sign.sql"},{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(--)(\\\\\\\\'|[^'])*(?='|$)","name":"comment.line.double-dash.sql"},{"match":"\\\\\\\\[\\\\\\\\'\`\\"]","name":"constant.character.escape.php"},{"match":"\`(?=((\\\\\\\\\`)|[^\`'])*('|$))","name":"string.quoted.other.backtick.unclosed.sql"},{"match":"\\"(?=((\\\\\\\\\\")|[^\\"'])*('|$))","name":"string.quoted.double.unclosed.sql"},{"include":"source.sql"}]},"string-backtick":{"begin":"\`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"\`","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.interpolated.php","patterns":[{"match":"\\\\\\\\\`","name":"constant.character.escape.php"},{"include":"#interpolation"}]},"string-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.double.php","patterns":[{"include":"#interpolation_double_quoted"}]},"string-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.single.php","patterns":[{"match":"\\\\\\\\[\\\\\\\\']","name":"constant.character.escape.php"}]},"strings":{"patterns":[{"include":"#regex-double-quoted"},{"include":"#sql-string-double-quoted"},{"include":"#string-double-quoted"},{"include":"#regex-single-quoted"},{"include":"#sql-string-single-quoted"},{"include":"#string-single-quoted"}]},"support":{"patterns":[{"match":"(?xi)\\n\\\\b\\napc_(\\n store|sma_info|compile_file|clear_cache|cas|cache_info|inc|dec|define_constants|delete(_file)?|\\n exists|fetch|load_constants|add|bin_(dump|load)(file)?\\n)\\\\b","name":"support.function.apc.php"},{"match":"(?xi)\\\\b\\n(\\n shuffle|sizeof|sort|next|nat(case)?sort|count|compact|current|in_array|usort|uksort|uasort|\\n pos|prev|end|each|extract|ksort|key(_exists)?|krsort|list|asort|arsort|rsort|reset|range|\\n array(_(shift|sum|splice|search|slice|chunk|change_key_case|count_values|column|combine|\\n (diff|intersect)(_(u)?(key|assoc))?|u(diff|intersect)(_(u)?assoc)?|unshift|unique|\\n pop|push|pad|product|values|keys|key_exists|filter|fill(_keys)?|flip|walk(_recursive)?|\\n reduce|replace(_recursive)?|reverse|rand|multisort|merge(_recursive)?|map)?)\\n)\\\\b","name":"support.function.array.php"},{"match":"(?xi)\\\\b\\n(\\n show_source|sys_getloadavg|sleep|highlight_(file|string)|constant|connection_(aborted|status)|\\n time_(nanosleep|sleep_until)|ignore_user_abort|die|define(d)?|usleep|uniqid|unpack|__halt_compiler|\\n php_(check_syntax|strip_whitespace)|pack|eval|exit|get_browser\\n)\\\\b","name":"support.function.basic_functions.php"},{"match":"(?i)\\\\bbc(scale|sub|sqrt|comp|div|pow(mod)?|add|mod|mul)\\\\b","name":"support.function.bcmath.php"},{"match":"(?i)\\\\bblenc_encrypt\\\\b","name":"support.function.blenc.php"},{"match":"(?i)\\\\bbz(compress|close|open|decompress|errstr|errno|error|flush|write|read)\\\\b","name":"support.function.bz2.php"},{"match":"(?xi)\\\\b\\n(\\n (French|Gregorian|Jewish|Julian)ToJD|cal_(to_jd|info|days_in_month|from_jd)|unixtojd|\\n jdto(unix|jewish)|easter_(date|days)|JD(MonthName|To(Gregorian|Julian|French)|DayOfWeek)\\n)\\\\b","name":"support.function.calendar.php"},{"match":"(?xi)\\\\b\\n(\\n class_alias|all_user_method(_array)?|is_(a|subclass_of)|__autoload|(class|interface|method|property|trait)_exists|\\n get_(class(_(vars|methods))?|(called|parent)_class|object_vars|declared_(classes|interfaces|traits))\\n)\\\\b","name":"support.function.classobj.php"},{"match":"(?xi)\\\\b\\n(\\n com_(create_guid|print_typeinfo|event_sink|load_typelib|get_active_object|message_pump)|\\n variant_(sub|set(_type)?|not|neg|cast|cat|cmp|int|idiv|imp|or|div|date_(from|to)_timestamp|\\n pow|eqv|fix|and|add|abs|round|get_type|xor|mod|mul)\\n)\\\\b","name":"support.function.com.php"},{"match":"(?i)\\\\b(isset|unset|eval|empty|list)\\\\b","name":"support.function.construct.php"},{"match":"(?i)\\\\b(print|echo)\\\\b","name":"support.function.construct.output.php"},{"match":"(?i)\\\\bctype_(space|cntrl|digit|upper|punct|print|lower|alnum|alpha|graph|xdigit)\\\\b","name":"support.function.ctype.php"},{"match":"(?xi)\\\\b\\ncurl_(\\n share_(close|init|setopt)|strerror|setopt(_array)?|copy_handle|close|init|unescape|pause|escape|\\n errno|error|exec|version|file_create|reset|getinfo|\\n multi_(strerror|setopt|select|close|init|info_read|(add|remove)_handle|getcontent|exec)\\n)\\\\b","name":"support.function.curl.php"},{"match":"(?xi)\\\\b\\n(\\n strtotime|str[fp]time|checkdate|time|timezone_name_(from_abbr|get)|idate|\\n timezone_((location|offset|transitions|version)_get|(abbreviations|identifiers)_list|open)|\\n date(_(sun(rise|set)|sun_info|sub|create(_(immutable_)?from_format)?|timestamp_(get|set)|timezone_(get|set)|time_set|\\n isodate_set|interval_(create_from_date_string|format)|offset_get|diff|default_timezone_(get|set)|date_set|\\n parse(_from_format)?|format|add|get_last_errors|modify))?|\\n localtime|get(date|timeofday)|gm(strftime|date|mktime)|microtime|mktime\\n)\\\\b","name":"support.function.datetime.php"},{"match":"(?i)\\\\bdba_(sync|handlers|nextkey|close|insert|optimize|open|delete|popen|exists|key_split|firstkey|fetch|list|replace)\\\\b","name":"support.function.dba.php"},{"match":"(?i)\\\\bdbx_(sort|connect|compare|close|escape_string|error|query|fetch_row)\\\\b","name":"support.function.dbx.php"},{"match":"(?i)\\\\b(scandir|chdir|chroot|closedir|opendir|dir|rewinddir|readdir|getcwd)\\\\b","name":"support.function.dir.php"},{"match":"(?xi)\\\\b\\neio_(\\n sync(fs)?|sync_file_range|symlink|stat(vfs)?|sendfile|set_min_parallel|set_max_(idle|poll_(reqs|time)|parallel)|\\n seek|n(threads|op|pending|reqs|ready)|chown|chmod|custom|close|cancel|truncate|init|open|dup2|unlink|utime|poll|\\n event_loop|f(sync|stat(vfs)?|chown|chmod|truncate|datasync|utime|allocate)|write|lstat|link|rename|realpath|\\n read(ahead|dir|link)?|rmdir|get_(event_stream|last_error)|grp(_(add|cancel|limit))?|mknod|mkdir|busy\\n)\\\\b","name":"support.function.eio.php"},{"match":"(?xi)\\\\b\\nenchant_(\\n dict_(store_replacement|suggest|check|is_in_session|describe|quick_check|add_to_(personal|session)|get_error)|\\n broker_(set_ordering|init|dict_exists|describe|free(_dict)?|list_dicts|request_(pwl_)?dict|get_error)\\n)\\\\b","name":"support.function.enchant.php"},{"match":"(?i)\\\\b(split(i)?|sql_regcase|ereg(i)?(_replace)?)\\\\b","name":"support.function.ereg.php"},{"match":"(?i)\\\\b((restore|set)_(error_handler|exception_handler)|trigger_error|debug_(print_)?backtrace|user_error|error_(log|reporting|get_last))\\\\b","name":"support.function.errorfunc.php"},{"match":"(?i)\\\\b(shell_exec|system|passthru|proc_(nice|close|terminate|open|get_status)|escapeshell(arg|cmd)|exec)\\\\b","name":"support.function.exec.php"},{"match":"(?i)\\\\b(exif_(thumbnail|tagname|imagetype|read_data)|read_exif_data)\\\\b","name":"support.function.exif.php"},{"match":"(?xi)\\\\b\\nfann_(\\n (duplicate|length|merge|shuffle|subset)_train_data|scale_(train(_data)?|(input|output)(_train_data)?)|\\n set_(scaling_params|sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|\\n cascade_(num_candidate_groups|candidate_(change_fraction|limit|stagnation_epochs)|\\n output_(change_fraction|stagnation_epochs)|weight_multiplier|activation_(functions|steepnesses)|\\n (max|min)_(cand|out)_epochs)|\\n callback|training_algorithm|train_(error|stop)_function|(input|output)_scaling_params|error_log|\\n quickprop_(decay|mu)|weight(_array)?|learning_(momentum|rate)|bit_fail_limit|\\n activation_(function|steepness)(_(hidden|layer|output))?|\\n rprop_((decrease|increase)_factor|delta_(max|min|zero)))|\\n save(_train)?|num_(input|output)_train_data|copy|clear_scaling_params|cascadetrain_on_(file|data)|\\n create_((sparse|shortcut|standard)(_array)?|train(_from_callback)?|from_file)|\\n test(_data)?|train(_(on_(file|data)|epoch))?|init_weights|descale_(input|output|train)|destroy(_train)?|\\n print_error|run|reset_(MSE|err(no|str))|read_train_from_file|randomize_weights|\\n get_(sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|num_(input|output|layers)|\\n network_type|MSE|connection_(array|rate)|bias_array|bit_fail(_limit)?|\\n cascade_(num_(candidates|candidate_groups)|(candidate|output)_(change_fraction|limit|stagnation_epochs)|\\n weight_multiplier|activation_(functions|steepnesses)(_count)?|(max|min)_(cand|out)_epochs)|\\n total_(connections|neurons)|training_algorithm|train_(error|stop)_function|err(no|str)|\\n quickprop_(decay|mu)|learning_(momentum|rate)|layer_array|activation_(function|steepness)|\\n rprop_((decrease|increase)_factor|delta_(max|min|zero)))\\n)\\\\b","name":"support.function.fann.php"},{"match":"(?xi)\\\\b\\n(\\n symlink|stat|set_file_buffer|chown|chgrp|chmod|copy|clearstatcache|touch|tempnam|tmpfile|\\n is_(dir|(uploaded_)?file|executable|link|readable|writ(e)?able)|disk_(free|total)_space|diskfreespace|\\n dirname|delete|unlink|umask|pclose|popen|pathinfo|parse_ini_(file|string)|fscanf|fstat|fseek|fnmatch|\\n fclose|ftell|ftruncate|file(size|[acm]time|type|inode|owner|perms|group)?|file_(exists|(get|put)_contents)|\\n f(open|puts|putcsv|passthru|eof|flush|write|lock|read|gets(s)?|getc(sv)?)|lstat|lchown|lchgrp|link(info)?|\\n rename|rewind|read(file|link)|realpath(_cache_(get|size))?|rmdir|glob|move_uploaded_file|mkdir|basename\\n)\\\\b","name":"support.function.file.php"},{"match":"(?i)\\\\b(finfo_(set_flags|close|open|file|buffer)|mime_content_type)\\\\b","name":"support.function.fileinfo.php"},{"match":"(?i)\\\\bfilter_(has_var|input(_array)?|id|var(_array)?|list)\\\\b","name":"support.function.filter.php"},{"match":"(?i)\\\\bfastcgi_finish_request\\\\b","name":"support.function.fpm.php"},{"match":"(?i)\\\\b(call_user_(func|method)(_array)?|create_function|unregister_tick_function|forward_static_call(_array)?|function_exists|func_(num_args|get_arg(s)?)|register_(shutdown|tick)_function|get_defined_functions)\\\\b","name":"support.function.funchand.php"},{"match":"(?i)\\\\b((n)?gettext|textdomain|d((n)?gettext|c(n)?gettext)|bind(textdomain|_textdomain_codeset))\\\\b","name":"support.function.gettext.php"},{"match":"(?xi)\\\\b\\ngmp_(\\n scan[01]|strval|sign|sub|setbit|sqrt(rem)?|hamdist|neg|nextprime|com|clrbit|cmp|testbit|\\n intval|init|invert|import|or|div(exact)?|div_(q|qr|r)|jacobi|popcount|pow(m)?|perfect_square|\\n prob_prime|export|fact|legendre|and|add|abs|root(rem)?|random(_(bits|range))?|gcd(ext)?|xor|mod|mul\\n)\\\\b","name":"support.function.gmp.php"},{"match":"(?i)\\\\bhash(_(hmac(_file)?|copy|init|update(_(file|stream))?|pbkdf2|equals|file|final|algos))?\\\\b","name":"support.function.hash.php"},{"match":"(?xi)\\\\b\\n(\\n http_(support|send_(status|stream|content_(disposition|type)|data|file|last_modified)|head|\\n negotiate_(charset|content_type|language)|chunked_decode|cache_(etag|last_modified)|throttle|\\n inflate|deflate|date|post_(data|fields)|put_(data|file|stream)|persistent_handles_(count|clean|ident)|\\n parse_(cookie|headers|message|params)|redirect|request(_(method_(exists|name|(un)?register)|body_encode))?|\\n get(_request_(headers|body(_stream)?))?|match_(etag|modified|request_header)|build_(cookie|str|url))|\\n ob_(etag|deflate|inflate)handler\\n)\\\\b","name":"support.function.http.php"},{"match":"(?i)\\\\b(iconv(_(str(pos|len|rpos)|substr|(get|set)_encoding|mime_(decode(_headers)?|encode)))?|ob_iconv_handler)\\\\b","name":"support.function.iconv.php"},{"match":"(?i)\\\\biis_((start|stop)_(service|server)|set_(script_map|server_rights|dir_security|app_settings)|(add|remove)_server|get_(script_map|service_state|server_(rights|by_(comment|path))|dir_security))\\\\b","name":"support.function.iisfunc.php"},{"match":"(?xi)\\\\b\\n(\\n iptc(embed|parse)|(jpeg|png)2wbmp|gd_info|getimagesize(fromstring)?|\\n image(s[xy]|scale|(char|string)(up)?|set(style|thickness|tile|interpolation|pixel|brush)|savealpha|\\n convolution|copy(resampled|resized|merge(gray)?)?|colors(forindex|total)|\\n color(set|closest(alpha|hwb)?|transparent|deallocate|(allocate|exact|resolve)(alpha)?|at|match)|\\n crop(auto)?|create(truecolor|from(string|jpeg|png|wbmp|webp|gif|gd(2(part)?)?|xpm|xbm))?|\\n types|ttf(bbox|text)|truecolortopalette|istruecolor|interlace|2wbmp|destroy|dashedline|jpeg|\\n _type_to_(extension|mime_type)|ps(slantfont|text|(encode|extend|free|load)font|bbox)|png|polygon|\\n palette(copy|totruecolor)|ellipse|ft(text|bbox)|filter|fill|filltoborder|\\n filled(arc|ellipse|polygon|rectangle)|font(height|width)|flip|webp|wbmp|line|loadfont|layereffect|\\n antialias|affine(matrix(concat|get))?|alphablending|arc|rotate|rectangle|gif|gd(2)?|gammacorrect|\\n grab(screen|window)|xbm)\\n)\\\\b","name":"support.function.image.php"},{"match":"(?xi)\\\\b\\n(\\n sys_get_temp_dir|set_(time_limit|include_path|magic_quotes_runtime)|cli_(get|set)_process_title|\\n ini_(alter|get(_all)?|restore|set)|zend_(thread_id|version|logo_guid)|dl|php(credits|info|version)|\\n php_(sapi_name|ini_(scanned_files|loaded_file)|uname|logo_guid)|putenv|extension_loaded|version_compare|\\n assert(_options)?|restore_include_path|gc_(collect_cycles|disable|enable(d)?)|getopt|\\n get_(cfg_var|current_user|defined_constants|extension_funcs|include_path|included_files|loaded_extensions|\\n magic_quotes_(gpc|runtime)|required_files|resources)|\\n get(env|lastmod|rusage|my(inode|[gup]id))|\\n memory_get_(peak_)?usage|main|magic_quotes_runtime\\n)\\\\b","name":"support.function.info.php"},{"match":"(?xi)\\\\b\\nibase_(\\n set_event_handler|service_(attach|detach)|server_info|num_(fields|params)|name_result|connect|\\n commit(_ret)?|close|trans|delete_user|drop_db|db_info|pconnect|param_info|prepare|err(code|msg)|\\n execute|query|field_info|fetch_(assoc|object|row)|free_(event_handler|query|result)|wait_event|\\n add_user|affected_rows|rollback(_ret)?|restore|gen_id|modify_user|maintain_db|backup|\\n blob_(cancel|close|create|import|info|open|echo|add|get)\\n)\\\\b","name":"support.function.interbase.php"},{"match":"(?xi)\\\\b\\n(\\n normalizer_(normalize|is_normalized)|idn_to_(unicode|utf8|ascii)|\\n numfmt_(set_(symbol|(text_)?attribute|pattern)|create|(parse|format)(_currency)?|\\n get_(symbol|(text_)?attribute|pattern|error_(code|message)|locale))|\\n collator_(sort(_with_sort_keys)?|set_(attribute|strength)|compare|create|asort|\\n get_(strength|sort_key|error_(code|message)|locale|attribute))|\\n transliterator_(create(_(inverse|from_rules))?|transliterate|list_ids|get_error_(code|message))|\\n intl(cal|tz)_get_error_(code|message)|intl_(is_failure|error_name|get_error_(code|message))|\\n datefmt_(set_(calendar|lenient|pattern|timezone(_id)?)|create|is_lenient|parse|format(_object)?|localtime|\\n get_(calendar(_object)?|time(type|zone(_id)?)|datetype|pattern|error_(code|message)|locale))|\\n locale_(set_default|compose|canonicalize|parse|filter_matches|lookup|accept_from_http|\\n get_(script|display_(script|name|variant|language|region)|default|primary_language|keywords|all_variants|region))|\\n resourcebundle_(create|count|locales|get(_(error_(code|message)))?)|\\n grapheme_(str(i?str|r?i?pos|len)|substr|extract)|\\n msgfmt_(set_pattern|create|(format|parse)(_message)?|get_(pattern|error_(code|message)|locale))\\n)\\\\b","name":"support.function.intl.php"},{"match":"(?i)\\\\bjson_(decode|encode|last_error(_msg)?)\\\\b","name":"support.function.json.php"},{"match":"(?xi)\\\\b\\nldap_(\\n start|tls|sort|search|sasl_bind|set_(option|rebind_proc)|(first|next)_(attribute|entry|reference)|\\n connect|control_paged_result(_response)?|count_entries|compare|close|t61_to_8859|8859_to_t61|\\n dn2ufn|delete|unbind|parse_(reference|result)|escape|errno|err2str|error|explode_dn|bind|\\n free_result|list|add|rename|read|get_(option|dn|entries|values(_len)?|attributes)|modify(_batch)?|\\n mod_(add|del|replace)\\n)\\\\b","name":"support.function.ldap.php"},{"match":"(?i)\\\\blibxml_(set_(streams_context|external_entity_loader)|clear_errors|disable_entity_loader|use_internal_errors|get_(errors|last_error))\\\\b","name":"support.function.libxml.php"},{"match":"(?i)\\\\b(ezmlm_hash|mail)\\\\b","name":"support.function.mail.php"},{"match":"(?xi)\\\\b\\n(\\n (a)?(cos|sin|tan)(h)?|sqrt|srand|hypot|hexdec|ceil|is_(nan|(in)?finite)|octdec|dec(hex|oct|bin)|deg2rad|\\n pi|pow|exp(m1)?|floor|fmod|lcg_value|log(1(p|0))?|atan2|abs|round|rand|rad2deg|getrandmax|\\n mt_(srand|rand|getrandmax)|max|min|bindec|base_convert\\n)\\\\b","name":"support.function.math.php"},{"match":"(?xi)\\\\b\\nmb_(\\n str(cut|str|to(lower|upper)|istr|ipos|imwidth|pos|width|len|rchr|richr|ripos|rpos)|\\n substitute_character|substr(_count)?|split|send_mail|http_(input|output)|check_encoding|\\n convert_(case|encoding|kana|variables)|internal_encoding|output_handler|decode_(numericentity|mimeheader)|\\n detect_(encoding|order)|parse_str|preferred_mime_name|encoding_aliases|encode_(numericentity|mimeheader)|\\n ereg(i(_replace)?)?|ereg_(search(_(get(pos|regs)|init|regs|(set)?pos))?|replace(_callback)?|match)|\\n list_encodings|language|regex_(set_options|encoding)|get_info\\n)\\\\b","name":"support.function.mbstring.php"},{"match":"(?xi)\\\\b\\n(\\n mcrypt_(\\n cfb|create_iv|cbc|ofb|decrypt|encrypt|ecb|list_(algorithms|modes)|generic(_((de)?init|end))?|\\n enc_(self_test|is_block_(algorithm|algorithm_mode|mode)|\\n get_(supported_key_sizes|(block|iv|key)_size|(algorithms|modes)_name))|\\n get_(cipher_name|(block|iv|key)_size)|\\n module_(close|self_test|is_block_(algorithm|algorithm_mode|mode)|open|\\n get_(supported_key_sizes|algo_(block|key)_size)))|\\n mdecrypt_generic\\n)\\\\b","name":"support.function.mcrypt.php"},{"match":"(?i)\\\\bmemcache_debug\\\\b","name":"support.function.memcache.php"},{"match":"(?i)\\\\bmhash(_(count|keygen_s2k|get_(hash_name|block_size)))?\\\\b","name":"support.function.mhash.php"},{"match":"(?i)\\\\b(log_(cmd_(insert|delete|update)|killcursor|write_batch|reply|getmore)|bson_(decode|encode))\\\\b","name":"support.function.mongo.php"},{"match":"(?xi)\\\\b\\nmysql_(\\n stat|set_charset|select_db|num_(fields|rows)|connect|client_encoding|close|create_db|escape_string|\\n thread_id|tablename|insert_id|info|data_seek|drop_db|db_(name|query)|unbuffered_query|pconnect|ping|\\n errno|error|query|field_(seek|name|type|table|flags|len)|fetch_(object|field|lengths|assoc|array|row)|\\n free_result|list_(tables|dbs|processes|fields)|affected_rows|result|real_escape_string|\\n get_(client|host|proto|server)_info\\n)\\\\b","name":"support.function.mysql.php"},{"match":"(?xi)\\\\b\\nmysqli_(\\n ssl_set|store_result|stat|send_(query|long_data)|set_(charset|opt|local_infile_(default|handler))|\\n stmt_(store_result|send_long_data|next_result|close|init|data_seek|prepare|execute|fetch|free_result|\\n attr_(get|set)|result_metadata|reset|get_(result|warnings)|more_results|bind_(param|result))|\\n select_db|slave_query|savepoint|next_result|change_user|character_set_name|connect|commit|\\n client_encoding|close|thread_safe|init|options|(enable|disable)_(reads_from_master|rpl_parse)|\\n dump_debug_info|debug|data_seek|use_result|ping|poll|param_count|prepare|escape_string|execute|\\n embedded_server_(start|end)|kill|query|field_seek|free_result|autocommit|rollback|report|refresh|\\n fetch(_(object|fields|field(_direct)?|assoc|all|array|row))?|rpl_(parse_enabled|probe|query_type)|\\n release_savepoint|reap_async_query|real_(connect|escape_string|query)|more_results|multi_query|\\n get_(charset|connection_stats|client_(stats|info|version)|cache_stats|warnings|links_stats|metadata)|\\n master_query|bind_(param|result)|begin_transaction\\n)\\\\b","name":"support.function.mysqli.php"},{"match":"(?i)\\\\bmysqlnd_memcache_(set|get_config)\\\\b","name":"support.function.mysqlnd-memcache.php"},{"match":"(?i)\\\\bmysqlnd_ms_(set_(user_pick_server|qos)|dump_servers|query_is_select|fabric_select_(shard|global)|get_(stats|last_(used_connection|gtid))|xa_(commit|rollback|gc|begin)|match_wild)\\\\b","name":"support.function.mysqlnd-ms.php"},{"match":"(?i)\\\\bmysqlnd_qc_(set_(storage_handler|cache_condition|is_select|user_handlers)|clear_cache|get_(normalized_query_trace_log|core_stats|cache_info|query_trace_log|available_handlers))\\\\b","name":"support.function.mysqlnd-qc.php"},{"match":"(?i)\\\\bmysqlnd_uh_(set_(statement|connection)_proxy|convert_to_mysqlnd)\\\\b","name":"support.function.mysqlnd-uh.php"},{"match":"(?xi)\\\\b\\n(\\n syslog|socket_(set_(blocking|timeout)|get_status)|set(raw)?cookie|http_response_code|openlog|\\n headers_(list|sent)|header(_(register_callback|remove))?|checkdnsrr|closelog|inet_(ntop|pton)|ip2long|\\n openlog|dns_(check_record|get_(record|mx))|define_syslog_variables|(p)?fsockopen|long2ip|\\n get(servby(name|port)|host(name|by(name(l)?|addr))|protoby(name|number)|mxrr)\\n)\\\\b","name":"support.function.network.php"},{"match":"(?i)\\\\bnsapi_(virtual|response_headers|request_headers)\\\\b","name":"support.function.nsapi.php"},{"match":"(?xi)\\\\b\\n(\\n oci(statementtype|setprefetch|serverversion|savelob(file)?|numcols|new(collection|cursor|descriptor)|nlogon|\\n column(scale|size|name|type(raw)?|isnull|precision)|coll(size|trim|assign(elem)?|append|getelem|max)|commit|\\n closelob|cancel|internaldebug|definebyname|plogon|parse|error|execute|fetch(statement|into)?|\\n free(statement|collection|cursor|desc)|write(temporarylob|lobtofile)|loadlob|log(on|off)|rowcount|rollback|\\n result|bindbyname)|\\n oci_(statement_type|set_(client_(info|identifier)|prefetch|edition|action|module_name)|server_version|\\n num_(fields|rows)|new_(connect|collection|cursor|descriptor)|connect|commit|client_version|close|cancel|\\n internal_debug|define_by_name|pconnect|password_change|parse|error|execute|bind_(array_)?by_name|\\n field_(scale|size|name|type(_raw)?|is_null|precision)|fetch(_(object|assoc|all|array|row))?|\\n free_(statement|descriptor)|lob_(copy|is_equal)|rollback|result|get_implicit_resultset)\\n)\\\\b","name":"support.function.oci8.php"},{"match":"(?i)\\\\bopcache_(compile_file|invalidate|reset|get_(status|configuration))\\\\b","name":"support.function.opcache.php"},{"match":"(?xi)\\\\b\\nopenssl_(\\n sign|spki_(new|export(_challenge)?|verify)|seal|csr_(sign|new|export(_to_file)?|get_(subject|public_key))|\\n cipher_iv_length|open|dh_compute_key|digest|decrypt|public_(decrypt|encrypt)|encrypt|error_string|\\n pkcs12_(export(_to_file)?|read)|pkcs7_(sign|decrypt|encrypt|verify)|verify|free_key|random_pseudo_bytes|\\n pkey_(new|export(_to_file)?|free|get_(details|public|private))|private_(decrypt|encrypt)|pbkdf2|\\n get_((cipher|md)_methods|cert_locations|(public|private)key)|\\n x509_(check_private_key|checkpurpose|parse|export(_to_file)?|fingerprint|free|read)\\n)\\\\b","name":"support.function.openssl.php"},{"match":"(?xi)\\\\b\\n(\\n output_(add_rewrite_var|reset_rewrite_vars)|flush|\\n ob_(start|clean|implicit_flush|end_(clean|flush)|flush|list_handlers|gzhandler|\\n get_(status|contents|clean|flush|length|level))\\n)\\\\b","name":"support.function.output.php"},{"match":"(?i)\\\\bpassword_(hash|needs_rehash|verify|get_info)\\\\b","name":"support.function.password.php"},{"match":"(?xi)\\\\b\\npcntl_(\\n strerror|signal(_dispatch)?|sig(timedwait|procmask|waitinfo)|setpriority|errno|exec|fork|\\n w(stopsig|termsig|if(stopped|signaled|exited))|wait(pid)?|alarm|getpriority|get_last_error\\n)\\\\b","name":"support.function.pcntl.php"},{"match":"(?xi)\\\\b\\npg_(\\n socket|send_(prepare|execute|query(_params)?)|set_(client_encoding|error_verbosity)|select|host|\\n num_(fields|rows)|consume_input|connection_(status|reset|busy)|connect(_poll)?|convert|copy_(from|to)|\\n client_encoding|close|cancel_query|tty|transaction_status|trace|insert|options|delete|dbname|untrace|\\n unescape_bytea|update|pconnect|ping|port|put_line|parameter_status|prepare|version|query(_params)?|\\n escape_(string|identifier|literal|bytea)|end_copy|execute|flush|free_result|last_(notice|error|oid)|\\n field_(size|num|name|type(_oid)?|table|is_null|prtlen)|affected_rows|result_(status|seek|error(_field)?)|\\n fetch_(object|assoc|all(_columns)?|array|row|result)|get_(notify|pid|result)|meta_data|\\n lo_(seek|close|create|tell|truncate|import|open|unlink|export|write|read(_all)?)|\\n)\\\\b","name":"support.function.pgsql.php"},{"match":"(?i)\\\\b(virtual|getallheaders|apache_((get|set)env|note|child_terminate|lookup_uri|response_headers|reset_timeout|request_headers|get_(version|modules)))\\\\b","name":"support.function.php_apache.php"},{"match":"(?i)\\\\bdom_import_simplexml\\\\b","name":"support.function.php_dom.php"},{"match":"(?xi)\\\\b\\nftp_(\\n ssl_connect|systype|site|size|set_option|nlist|nb_(continue|f?(put|get))|ch(dir|mod)|connect|cdup|close|\\n delete|put|pwd|pasv|exec|quit|f(put|get)|login|alloc|rename|raw(list)?|rmdir|get(_option)?|mdtm|mkdir\\n)\\\\b","name":"support.function.php_ftp.php"},{"match":"(?xi)\\\\b\\nimap_(\\n (create|delete|list|rename|scan)(mailbox)?|status|sort|subscribe|set_quota|set(flag_full|acl)|search|savebody|\\n num_(recent|msg)|check|close|clearflag_full|thread|timeout|open|header(info)?|headers|append|alerts|reopen|\\n 8bit|unsubscribe|undelete|utf7_(decode|encode)|utf8|uid|ping|errors|expunge|qprint|gc|\\n fetch(structure|header|text|mime|body)|fetch_overview|lsub|list(scan|subscribed)|last_error|\\n rfc822_(parse_(headers|adrlist)|write_address)|get(subscribed|acl|mailboxes)|get_quota(root)?|\\n msgno|mime_header_decode|mail_(copy|compose|move)|mail|mailboxmsginfo|binary|body(struct)?|base64\\n)\\\\b","name":"support.function.php_imap.php"},{"match":"(?xi)\\\\b\\nmssql_(\\n select_db|num_(fields|rows)|next_result|connect|close|init|data_seek|pconnect|execute|query|\\n field_(seek|name|type|length)|fetch_(object|field|assoc|array|row|batch)|free_(statement|result)|\\n rows_affected|result|guid_string|get_last_message|min_(error|message)_severity|bind\\n)\\\\b","name":"support.function.php_mssql.php"},{"match":"(?xi)\\\\b\\nodbc_(\\n statistics|specialcolumns|setoption|num_(fields|rows)|next_result|connect|columns|columnprivileges|commit|\\n cursor|close(_all)?|tables|tableprivileges|do|data_source|pconnect|primarykeys|procedures|procedurecolumns|\\n prepare|error(msg)?|exec(ute)?|field_(scale|num|name|type|precision|len)|foreignkeys|free_result|\\n fetch_(into|object|array|row)|longreadlen|autocommit|rollback|result(_all)?|gettypeinfo|binmode\\n)\\\\b","name":"support.function.php_odbc.php"},{"match":"(?i)\\\\bpreg_(split|quote|filter|last_error|replace(_callback)?|grep|match(_all)?)\\\\b","name":"support.function.php_pcre.php"},{"match":"(?i)\\\\b(spl_(classes|object_hash|autoload(_(call|unregister|extensions|functions|register))?)|class_(implements|uses|parents)|iterator_(count|to_array|apply))\\\\b","name":"support.function.php_spl.php"},{"match":"(?i)\\\\bzip_(close|open|entry_(name|compressionmethod|compressedsize|close|open|filesize|read)|read)\\\\b","name":"support.function.php_zip.php"},{"match":"(?xi)\\\\b\\nposix_(\\n strerror|set(s|e?u|[ep]?g)id|ctermid|ttyname|times|isatty|initgroups|uname|errno|kill|access|\\n get(sid|cwd|uid|pid|ppid|pwnam|pwuid|pgid|pgrp|euid|egid|login|rlimit|gid|grnam|groups|grgid)|\\n get_last_error|mknod|mkfifo\\n)\\\\b","name":"support.function.posix.php"},{"match":"(?i)\\\\bset(thread|proc)title\\\\b","name":"support.function.proctitle.php"},{"match":"(?xi)\\\\b\\npspell_(\\n store_replacement|suggest|save_wordlist|new(_(config|personal))?|check|clear_session|\\n config_(save_repl|create|ignore|(data|dict)_dir|personal|runtogether|repl|mode)|add_to_(session|personal)\\n)\\\\b","name":"support.function.pspell.php"},{"match":"(?i)\\\\breadline(_(completion_function|clear_history|callback_(handler_(install|remove)|read_char)|info|on_new_line|write_history|list_history|add_history|redisplay|read_history))?\\\\b","name":"support.function.readline.php"},{"match":"(?i)\\\\brecode(_(string|file))?\\\\b","name":"support.function.recode.php"},{"match":"(?i)\\\\brrd(c_disconnect|_(create|tune|info|update|error|version|first|fetch|last(update)?|restore|graph|xport))\\\\b","name":"support.function.rrd.php"},{"match":"(?xi)\\\\b\\n(\\n shm_((get|has|remove|put)_var|detach|attach|remove)|sem_(acquire|release|remove|get)|ftok|\\n msg_((get|remove|set|stat)_queue|send|queue_exists|receive)\\n)\\\\b","name":"support.function.sem.php"},{"match":"(?xi)\\\\b\\nsession_(\\n status|start|set_(save_handler|cookie_params)|save_path|name|commit|cache_(expire|limiter)|\\n is_registered|id|destroy|decode|unset|unregister|encode|write_close|abort|reset|register(_shutdown)?|\\n regenerate_id|get_cookie_params|module_name\\n)\\\\b","name":"support.function.session.php"},{"match":"(?i)\\\\bshmop_(size|close|open|delete|write|read)\\\\b","name":"support.function.shmop.php"},{"match":"(?i)\\\\bsimplexml_(import_dom|load_(string|file))\\\\b","name":"support.function.simplexml.php"},{"match":"(?xi)\\\\b\\n(\\n snmp(walk(oid)?|realwalk|get(next)?|set)|\\n snmp_(set_(valueretrieval|quick_print|enum_print|oid_(numeric_print|output_format))|read_mib|\\n get_(valueretrieval|quick_print))|\\n snmp[23]_(set|walk|real_walk|get(next)?)\\n)\\\\b","name":"support.function.snmp.php"},{"match":"(?i)\\\\b(is_soap_fault|use_soap_error_handler)\\\\b","name":"support.function.soap.php"},{"match":"(?xi)\\\\b\\nsocket_(\\n shutdown|strerror|send(to|msg)?|set_((non)?block|option)|select|connect|close|clear_error|bind|\\n create(_(pair|listen))?|cmsg_space|import_stream|write|listen|last_error|accept|recv(from|msg)?|\\n read|get(peer|sock)name|get_option\\n)\\\\b","name":"support.function.sockets.php"},{"match":"(?xi)\\\\b\\nsqlite_(\\n single_query|seek|has_(more|prev)|num_(fields|rows)|next|changes|column|current|close|\\n create_(aggregate|function)|open|unbuffered_query|udf_(decode|encode)_binary|popen|prev|\\n escape_string|error_string|exec|valid|key|query|field_name|factory|\\n fetch_(string|single|column_types|object|all|array)|lib(encoding|version)|\\n last_(insert_rowid|error)|array_query|rewind|busy_timeout\\n)\\\\b","name":"support.function.sqlite.php"},{"match":"(?xi)\\\\b\\nsqlsrv_(\\n send_stream_data|server_info|has_rows|num_(fields|rows)|next_result|connect|configure|commit|\\n client_info|close|cancel|prepare|errors|execute|query|field_metadata|fetch(_(array|object))?|\\n free_stmt|rows_affected|rollback|get_(config|field)|begin_transaction\\n)\\\\b","name":"support.function.sqlsrv.php"},{"match":"(?xi)\\\\b\\nstats_(\\n harmonic_mean|covariance|standard_deviation|skew|\\n cdf_(noncentral_(chisquare|f)|negative_binomial|chisquare|cauchy|t|uniform|poisson|exponential|f|weibull|\\n logistic|laplace|gamma|binomial|beta)|\\n stat_(noncentral_t|correlation|innerproduct|independent_t|powersum|percentile|paired_t|gennch|binomial_coef)|\\n dens_(normal|negative_binomial|chisquare|cauchy|t|pmf_(hypergeometric|poisson|binomial)|exponential|f|\\n weibull|logistic|laplace|gamma|beta)|\\n den_uniform|variance|kurtosis|absolute_deviation|\\n rand_(setall|phrase_to_seeds|ranf|get_seeds|\\n gen_(noncentral_[ft]|noncenral_chisquare|normal|chisquare|t|int|\\n i(uniform|poisson|binomial(_negative)?)|exponential|f(uniform)?|gamma|beta))\\n)\\\\b","name":"support.function.stats.php"},{"match":"(?xi)\\\\b\\n(\\n set_socket_blocking|\\n stream_(socket_(shutdown|sendto|server|client|pair|enable_crypto|accept|recvfrom|get_name)|\\n set_(chunk_size|timeout|(read|write)_buffer|blocking)|select|notification_callback|supports_lock|\\n context_(set_(option|default|params)|create|get_(options|default|params))|copy_to_stream|is_local|\\n encoding|filter_(append|prepend|register|remove)|wrapper_((un)?register|restore)|\\n resolve_include_path|register_wrapper|get_(contents|transports|filters|wrappers|line|meta_data)|\\n bucket_(new|prepend|append|make_writeable)\\n )\\n)\\\\b","name":"support.function.streamsfuncs.php"},{"match":"(?xi)\\\\b\\n(\\n money_format|md5(_file)?|metaphone|bin2hex|sscanf|sha1(_file)?|\\n str(str|c?spn|n(at)?(case)?cmp|chr|coll|(case)?cmp|to(upper|lower)|tok|tr|istr|pos|pbrk|len|rchr|ri?pos|rev)|\\n str_(getcsv|ireplace|pad|repeat|replace|rot13|shuffle|split|word_count)|\\n strip(c?slashes|os)|strip_tags|similar_text|soundex|substr(_(count|compare|replace))?|setlocale|\\n html(specialchars(_decode)?|entities)|html_entity_decode|hex2bin|hebrev(c)?|number_format|nl2br|nl_langinfo|\\n chop|chunk_split|chr|convert_(cyr_string|uu(decode|encode))|count_chars|crypt|crc32|trim|implode|ord|\\n uc(first|words)|join|parse_str|print(f)?|echo|explode|v?[fs]?printf|quoted_printable_(decode|encode)|\\n quotemeta|wordwrap|lcfirst|[lr]trim|localeconv|levenshtein|addc?slashes|get_html_translation_table\\n)\\\\b","name":"support.function.string.php"},{"match":"(?xi)\\\\b\\nsybase_(\\n set_message_handler|select_db|num_(fields|rows)|connect|close|deadlock_retry_count|data_seek|\\n unbuffered_query|pconnect|query|field_seek|fetch_(object|field|assoc|array|row)|free_result|\\n affected_rows|result|get_last_message|min_(client|error|message|server)_severity\\n)\\\\b","name":"support.function.sybase.php"},{"match":"(?i)\\\\b(taint|is_tainted|untaint)\\\\b","name":"support.function.taint.php"},{"match":"(?xi)\\\\b\\n(\\n tidy_((get|set)opt|set_encoding|save_config|config_count|clean_repair|is_(xhtml|xml)|diagnose|\\n (access|error|warning)_count|load_config|reset_config|(parse|repair)_(string|file)|\\n get_(status|html(_ver)?|head|config|output|opt_doc|root|release|body))|\\n ob_tidyhandler\\n)\\\\b","name":"support.function.tidy.php"},{"match":"(?i)\\\\btoken_(name|get_all)\\\\b","name":"support.function.tokenizer.php"},{"match":"(?xi)\\\\b\\ntrader_(\\n stoch(f|r|rsi)?|stddev|sin(h)?|sum|sub|set_(compat|unstable_period)|sqrt|sar(ext)?|sma|\\n ht_(sine|trend(line|mode)|dc(period|phase)|phasor)|natr|cci|cos(h)?|correl|\\n cdl(shootingstar|shortline|sticksandwich|stalledpattern|spinningtop|separatinglines|\\n hikkake(mod)?|highwave|homingpigeon|hangingman|harami(cross)?|hammer|concealbabyswall|\\n counterattack|closingmarubozu|thrusting|tasukigap|takuri|tristar|inneck|invertedhammer|\\n identical3crows|2crows|onneck|doji(star)?|darkcloudcover|dragonflydoji|unique3river|\\n upsidegap2crows|3(starsinsouth|inside|outside|whitesoldiers|linestrike|blackcrows)|\\n piercing|engulfing|evening(doji)?star|kicking(bylength)?|longline|longleggeddoji|\\n ladderbottom|advanceblock|abandonedbaby|risefall3methods|rickshawman|gapsidesidewhite|\\n gravestonedoji|xsidegap3methods|morning(doji)?star|mathold|matchinglow|marubozu|\\n belthold|breakaway)|\\n ceil|cmo|tsf|typprice|t3|tema|tan(h)?|trix|trima|trange|obv|div|dema|dx|ultosc|ppo|\\n plus_d[im]|errno|exp|ema|var|kama|floor|wclprice|willr|wma|ln|log10|bop|beta|bbands|\\n linearreg(_(slope|intercept|angle))?|asin|acos|atan|atr|adosc|ad|add|adx(r)?|apo|avgprice|\\n aroon(osc)?|rsi|roc|rocp|rocr(100)?|get_(compat|unstable_period)|min(index)?|minus_d[im]|\\n minmax(index)?|mid(point|price)|mom|mult|medprice|mfi|macd(ext|fix)?|mavp|max(index)?|ma(ma)?\\n)\\\\b","name":"support.function.trader.php"},{"match":"(?i)\\\\buopz_(copy|compose|implement|overload|delete|undefine|extend|function|flags|restore|rename|redefine|backup)\\\\b","name":"support.function.uopz.php"},{"match":"(?i)\\\\b(http_build_query|(raw)?url(decode|encode)|parse_url|get_(headers|meta_tags)|base64_(decode|encode))\\\\b","name":"support.function.url.php"},{"match":"(?xi)\\\\b\\n(\\n strval|settype|serialize|(bool|double|float)val|debug_zval_dump|intval|import_request_variables|isset|\\n is_(scalar|string|null|numeric|callable|int(eger)?|object|double|float|long|array|resource|real|bool)|\\n unset|unserialize|print_r|empty|var_(dump|export)|gettype|get_(defined_vars|resource_type)\\n)\\\\b","name":"support.function.var.php"},{"match":"(?i)\\\\bwddx_(serialize_(value|vars)|deserialize|packet_(start|end)|add_vars)\\\\b","name":"support.function.wddx.php"},{"match":"(?i)\\\\bxhprof_(sample_)?(disable|enable)\\\\b","name":"support.function.xhprof.php"},{"match":"(?xi)\\n\\\\b\\n(\\n utf8_(decode|encode)|\\n xml_(set_((notation|(end|start)_namespace|unparsed_entity)_decl_handler|\\n (character_data|default|element|external_entity_ref|processing_instruction)_handler|object)|\\n parse(_into_struct)?|parser_((get|set)_option|create(_ns)?|free)|error_string|\\n get_(current_((column|line)_number|byte_index)|error_code))\\n)\\\\b","name":"support.function.xml.php"},{"match":"(?xi)\\\\b\\nxmlrpc_(\\n server_(call_method|create|destroy|add_introspection_data|register_(introspection_callback|method))|\\n is_fault|decode(_request)?|parse_method_descriptions|encode(_request)?|(get|set)_type\\n)\\\\b","name":"support.function.xmlrpc.php"},{"match":"(?xi)\\\\b\\nxmlwriter_(\\n (end|start|write)_(comment|cdata|dtd(_(attlist|entity|element))?|document|pi|attribute|element)|\\n (start|write)_(attribute|element)_ns|write_raw|set_indent(_string)?|text|output_memory|open_(memory|uri)|\\n full_end_element|flush|\\n)\\\\b","name":"support.function.xmlwriter.php"},{"match":"(?xi)\\\\b\\n(\\n zlib_(decode|encode|get_coding_type)|readgzfile|\\n gz(seek|compress|close|tell|inflate|open|decode|deflate|uncompress|puts|passthru|encode|eof|file|\\n write|rewind|read|getc|getss?)\\n)\\\\b","name":"support.function.zlib.php"},{"match":"(?i)\\\\bis_int(eger)?\\\\b","name":"support.function.alias.php"}]},"switch_statement":{"patterns":[{"match":"\\\\s+(?=switch\\\\b)"},{"begin":"\\\\bswitch\\\\b(?!\\\\s*\\\\(.*\\\\)\\\\s*:)","beginCaptures":{"0":{"name":"keyword.control.switch.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.section.switch-block.end.bracket.curly.php"}},"name":"meta.switch-statement.php","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.switch-expression.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.switch-expression.end.bracket.round.php"}},"patterns":[{"include":"$self"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.section.switch-block.begin.bracket.curly.php"}},"end":"(?=}|\\\\?>)","patterns":[{"include":"$self"}]}]}]},"ternary_expression":{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.php"}},"end":"(?<!:):(?!:)","endCaptures":{"0":{"name":"keyword.operator.ternary.php"}},"patterns":[{"captures":{"1":{"patterns":[{"include":"$self"}]}},"match":"(?i)^\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(?=:(?!:))"},{"include":"$self"}]},"ternary_shorthand":{"match":"\\\\?:","name":"keyword.operator.ternary.php"},"use-inner":{"patterns":[{"include":"#comments"},{"begin":"(?i)\\\\b(as)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.use-as.php"}},"end":"(?i)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*","endCaptures":{"0":{"name":"entity.other.alias.php"}}},{"include":"#class-name"},{"match":",","name":"punctuation.separator.delimiter.php"}]},"var_basic":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(?i)(\\\\$+)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*","name":"variable.other.php"}]},"var_global":{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$)((_(COOKIE|FILES|GET|POST|REQUEST))|arg(v|c))\\\\b","name":"variable.other.global.php"},"var_global_safer":{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$)((GLOBALS|_(ENV|SERVER|SESSION)))","name":"variable.other.global.safer.php"},"var_language":{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$)this\\\\b","name":"variable.language.this.php"},"variable-name":{"patterns":[{"include":"#var_global"},{"include":"#var_global_safer"},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"punctuation.definition.variable.php"},"4":{"name":"keyword.operator.class.php"},"5":{"name":"variable.other.property.php"},"6":{"name":"punctuation.section.array.begin.php"},"7":{"name":"constant.numeric.index.php"},"8":{"name":"variable.other.index.php"},"9":{"name":"punctuation.definition.variable.php"},"10":{"name":"string.unquoted.index.php"},"11":{"name":"punctuation.section.array.end.php"}},"match":"(?xi)\\n((\\\\$)(?<name>[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*))\\\\s*\\n(?:\\n (\\\\??->)\\\\s*(\\\\g<name>)\\n |\\n (\\\\[)(?:(\\\\d+)|((\\\\$)\\\\g<name>)|([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*))(\\\\])\\n)?"},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"punctuation.definition.variable.php"},"4":{"name":"punctuation.definition.variable.php"}},"match":"(?i)((\\\\\${)(?<name>[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)(}))"}]},"variables":{"patterns":[{"include":"#var_language"},{"include":"#var_global"},{"include":"#var_global_safer"},{"include":"#var_basic"},{"begin":"\\\\\${(?=.*?})","beginCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"patterns":[{"include":"$self"}]}]}},"scopeName":"source.php","embeddedLangs":["html","xml","sql","javascript","json","css"]}`)),tx=[...ce,...Qt,...Ve,...J,...bn,...ue,rie]});var YR={};x(YR,{default:()=>oie});var iie,oie,WR=_(()=>{iie=Object.freeze(JSON.parse(`{"displayName":"PL/SQL","fileTypes":["sql","ddl","dml","pkh","pks","pkb","pck","pls","plb"],"foldingStartMarker":"(?i)^\\\\s*(begin|if|loop)\\\\b","foldingStopMarker":"(?i)^\\\\s*(end)\\\\b","name":"plsql","patterns":[{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.oracle"},{"match":"--.*$","name":"comment.line.double-dash.oracle"},{"match":"(?i)(?:^\\\\s*)rem(?:\\\\s+.*$)","name":"comment.line.sqlplus.oracle"},{"match":"(?i)(?:^\\\\s*)prompt(?:\\\\s+.*$)","name":"comment.line.sqlplus-prompt.oracle"},{"captures":{"1":{"name":"keyword.other.oracle"},"2":{"name":"keyword.other.oracle"}},"match":"(?i)^\\\\s*(create)(\\\\s+or\\\\s+replace)?\\\\s+","name":"meta.create.oracle"},{"captures":{"1":{"name":"keyword.other.oracle"},"2":{"name":"keyword.other.oracle"},"3":{"name":"entity.name.type.oracle"}},"match":"(?i)\\\\b(package)(\\\\s+body)?\\\\s+(\\\\S+)","name":"meta.package.oracle"},{"captures":{"1":{"name":"keyword.other.oracle"},"2":{"name":"entity.name.type.oracle"}},"match":"(?i)\\\\b(type)\\\\s+\\"([^\\"]+)\\"","name":"meta.type.oracle"},{"captures":{"1":{"name":"keyword.other.oracle"},"2":{"name":"entity.name.function.oracle"}},"match":"(?i)^\\\\s*(function|procedure)\\\\s+\\"?([-a-z0-9_]+)\\"?","name":"meta.procedure.oracle"},{"match":"[!<>:]?=|<>|<|>|\\\\+|(?<!\\\\.)\\\\*|-|(?<!^)/|\\\\|\\\\|","name":"keyword.operator.oracle"},{"match":"(?i)\\\\b(true|false|null|is\\\\s+(not\\\\s+)?null)\\\\b","name":"constant.language.oracle"},{"match":"\\\\b\\\\d+(\\\\.\\\\d+)?\\\\b","name":"constant.numeric.oracle"},{"match":"(?i)\\\\b(if|elsif|else|end\\\\s+if|loop|end\\\\s+loop|for|while|case|end\\\\s+case|continue|return|goto)\\\\b","name":"keyword.control.oracle"},{"match":"(?i)\\\\b(or|and|not|like)\\\\b","name":"keyword.other.oracle"},{"match":"(?i)\\\\b(%(isopen|found|notfound|rowcount)|commit|rollback|sqlerrm)\\\\b","name":"support.function.oracle"},{"match":"(?i)\\\\b(sql|sqlcode)\\\\b","name":"variable.language.oracle"},{"match":"(?i)\\\\b(ascii|asciistr|chr|compose|concat|convert|decompose|dump|initcap|instr|instrb|instrc|instr2|instr4|unistr|length|lengthb|lengthc|length2|length4|lower|lpad|ltrim|nchr|replace|rpad|rtrim|soundex|substr|translate|trim|upper|vsize)\\\\b","name":"support.function.builtin.char.oracle"},{"match":"(?i)\\\\b(add_months|current_date|current_timestamp|dbtimezone|last_day|localtimestamp|months_between|new_time|next_day|round|sessiontimezone|sysdate|tz_offset|systimestamp)\\\\b","name":"support.function.builtin.date.oracle"},{"match":"(?i)\\\\b(avg|count|sum|max|min|median|corr|corr_\\\\w+|covar_(pop|samp)|cume_dist|dense_rank|first|group_id|grouping|grouping_id|last|percentile_cont|percentile_disc|percent_rank|rank|regr_\\\\w+|row_number|stats_binomial_test|stats_crosstab|stats_f_test|stats_ks_test|stats_mode|stats_mw_test|stats_one_way_anova|stats_t_test_\\\\w+|stats_wsr_test|stddev|stddev_pop|stddev_samp|var_pop|var_samp|variance)\\\\b","name":"support.function.builtin.aggregate.oracle"},{"match":"(?i)\\\\b(bfilename|cardinality|coalesce|decode|empty_(blob|clob)|lag|lead|listagg|lnnvl|nanvl|nullif|nvl|nvl2|sys_(context|guid|typeid|connect_by_path|extract_utc)|uid|(current\\\\s+)?user|userenv|cardinality|(bulk\\\\s+)?collect|powermultiset(_by_cardinality)?|ora_hash|standard_hash|execute\\\\s+immediate|alter\\\\s+session)\\\\b","name":"support.function.builtin.advanced.oracle"},{"match":"(?i)\\\\b(bin_to_num|cast|chartorowid|from_tz|hextoraw|numtodsinterval|numtoyminterval|rawtohex|rawtonhex|to_char|to_clob|to_date|to_dsinterval|to_lob|to_multi_byte|to_nclob|to_number|to_single_byte|to_timestamp|to_timestamp_tz|to_yminterval|scn_to_timestamp|timestamp_to_scn|rowidtochar|rowidtonchar|to_binary_double|to_binary_float|to_blob|to_nchar|con_dbid_to_id|con_guid_to_id|con_name_to_id|con_uid_to_id)\\\\b","name":"support.function.builtin.convert.oracle"},{"match":"(?i)\\\\b(abs|acos|asin|atan|atan2|bit_(and|or|xor)|ceil|cos|cosh|exp|extract|floor|greatest|least|ln|log|mod|power|remainder|round|sign|sin|sinh|sqrt|tan|tanh|trunc)\\\\b","name":"support.function.builtin.math.oracle"},{"match":"(?i)\\\\b(\\\\.(count|delete|exists|extend|first|last|limit|next|prior|trim|reverse))\\\\b","name":"support.function.builtin.collection.oracle"},{"match":"(?i)\\\\b(cluster_details|cluster_distance|cluster_id|cluster_probability|cluster_set|feature_details|feature_id|feature_set|feature_value|prediction|prediction_bounds|prediction_cost|prediction_details|prediction_probability|prediction_set)\\\\b","name":"support.function.builtin.data_mining.oracle"},{"match":"(?i)\\\\b(appendchildxml|deletexml|depth|extract|existsnode|extractvalue|insertchildxml|insertxmlbefore|xmlcast|xmldiff|xmlelement|xmlexists|xmlisvalid|insertchildxmlafter|insertchildxmlbefore|path|sys_dburigen|sys_xmlagg|sys_xmlgen|updatexml|xmlagg|xmlcdata|xmlcolattval|xmlcomment|xmlconcat|xmlforest|xmlparse|xmlpi|xmlquery|xmlroot|xmlsequence|xmlserialize|xmltable|xmltransform)\\\\b","name":"support.function.builtin.xml.oracle"},{"match":"(?i)\\\\b(pragma\\\\s+(autonomous_transaction|serially_reusable|restrict_references|exception_init|inline))\\\\b","name":"keyword.other.pragma.oracle"},{"match":"(?i)\\\\b(p(i|o|io)_[-a-z0-9_]+)\\\\b","name":"variable.parameter.oracle"},{"match":"(?i)\\\\b(l_[-a-z0-9_]+)\\\\b","name":"variable.other.oracle"},{"match":"(?i):\\\\b(new|old)\\\\b","name":"variable.trigger.oracle"},{"match":"(?i)\\\\b(connect\\\\s+by\\\\s+(nocycle\\\\s+)?(prior|level)|connect_by_(root|icycle)|level|start\\\\s+with)\\\\b","name":"keyword.hierarchical.sql.oracle"},{"match":"(?i)\\\\b(language|name|java|c)\\\\b","name":"keyword.wrapper.oracle"},{"match":"(?i)\\\\b(end|then|deterministic|exception|when|declare|begin|in|out|nocopy|is|as|exit|open|fetch|into|close|subtype|type|rowtype|default|exclusive|mode|lock|record|index\\\\s+by|result_cache|constant|comment|\\\\.(nextval|currval))\\\\b","name":"keyword.other.oracle"},{"match":"(?i)\\\\b(grant|revoke|alter|drop|force|add|check|constraint|primary\\\\s+key|foreign\\\\s+key|references|unique(\\\\s+index)?|column|sequence|increment\\\\s+by|cache|(materialized\\\\s+)?view|trigger|storage|tablespace|pct(free|used)|(init|max)trans|logging)\\\\b","name":"keyword.other.ddl.oracle"},{"match":"(?i)\\\\b(with|select|from|where|order\\\\s+(siblings\\\\s+)?by|group\\\\s+by|rollup|cube|((left|right|cross|natural)\\\\s+(outer\\\\s+)?)?join|on|asc|desc|update|set|insert|into|values|delete|distinct|union|minus|intersect|having|limit|table|between|like|of|row|(range|rows)\\\\s+between|nulls\\\\s+first|nulls\\\\s+last|before|after|all|any|exists|rownum|cursor|returning|over|partition\\\\s+by|merge|using|matched|pivot|unpivot)\\\\b","name":"keyword.other.sql.oracle"},{"match":"(?i)\\\\b(define|whenever\\\\s+sqlerror|exec|timing\\\\s+start|timing\\\\s+stop)\\\\b","name":"keyword.other.sqlplus.oracle"},{"match":"(?i)\\\\b(access_into_null|case_not_found|collection_is_null|cursor_already_open|dup_val_on_index|invalid_cursor|invalid_number|login_denied|no_data_found|not_logged_on|program_error|rowtype_mismatch|self_is_null|storage_error|subscript_beyond_count|subscript_outside_limit|sys_invalid_rowid|timeout_on_resource|too_many_rows|value_error|zero_divide|others)\\\\b","name":"support.type.exception.oracle"},{"captures":{"3":{"name":"support.class.oracle"}},"match":"(?i)\\\\b((dbms|utl|owa|apex)_\\\\w+\\\\.(\\\\w+))\\\\b","name":"support.function.oracle"},{"captures":{"3":{"name":"support.class.oracle"}},"match":"(?i)\\\\b((htf|htp)\\\\.(\\\\w+))\\\\b","name":"support.function.oracle"},{"captures":{"3":{"name":"support.class.user-defined.oracle"}},"match":"(?i)\\\\b((\\\\w+_pkg|pkg_\\\\w+)\\\\.(\\\\w+))\\\\b","name":"support.function.user-defined.oracle"},{"match":"(?i)\\\\b(raise|raise_application_error)\\\\b","name":"support.function.oracle"},{"begin":"'","end":"'","name":"string.quoted.single.oracle"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.oracle"},{"match":"(?i)\\\\b(char|varchar|varchar2|nchar|nvarchar2|boolean|date|timestamp(\\\\s+with(\\\\s+local)?\\\\s+time\\\\s+zone)?|interval\\\\s*day(\\\\(\\\\d*\\\\))?\\\\s*to\\\\s*month|interval\\\\s*year(\\\\(\\\\d*\\\\))?\\\\s*to\\\\s*second(\\\\(\\\\d*\\\\))?|xmltype|blob|clob|nclob|bfile|long|long\\\\s+raw|raw|number|integer|decimal|smallint|float|binary_(float|double|integer)|pls_(float|double|integer)|rowid|urowid|vararray|natural|naturaln|positive|positiven|signtype|simple_(float|double|integer))\\\\b","name":"storage.type.oracle"}],"scopeName":"source.plsql.oracle"}`)),oie=[iie]});var KR={};x(KR,{default:()=>cie});var sie,cie,JR=_(()=>{sie=Object.freeze(JSON.parse('{"displayName":"Gettext PO","fileTypes":["po","pot","potx"],"name":"po","patterns":[{"begin":"^(?=(msgid(_plural)?|msgctxt)\\\\s*\\"[^\\"])|^\\\\s*$","comment":"Start of body of document, after header","end":"\\\\z","patterns":[{"include":"#body"}]},{"include":"#comments"},{"match":"^msg(id|str)\\\\s+\\"\\"\\\\s*$\\\\n?","name":"comment.line.number-sign.po"},{"captures":{"1":{"name":"constant.language.po"},"2":{"name":"punctuation.separator.key-value.po"},"3":{"name":"string.other.po"}},"match":"^\\"(?:([^\\\\s:]+)(:)\\\\s+)?([^\\"]*)\\"\\\\s*$\\\\n?","name":"meta.header.po"}],"repository":{"body":{"patterns":[{"begin":"^(msgid(_plural)?)\\\\s+","beginCaptures":{"1":{"name":"keyword.control.msgid.po"}},"end":"^(?!\\")","name":"meta.scope.msgid.po","patterns":[{"begin":"(\\\\G|^)\\"","end":"\\"","name":"string.quoted.double.po","patterns":[{"match":"\\\\\\\\[\\\\\\\\\\"]","name":"constant.character.escape.po"}]}]},{"begin":"^(msgstr)(?:(\\\\[)(\\\\d+)(\\\\]))?\\\\s+","beginCaptures":{"1":{"name":"keyword.control.msgstr.po"},"2":{"name":"keyword.control.msgstr.po"},"3":{"name":"constant.numeric.po"},"4":{"name":"keyword.control.msgstr.po"}},"end":"^(?!\\")","name":"meta.scope.msgstr.po","patterns":[{"begin":"(\\\\G|^)\\"","end":"\\"","name":"string.quoted.double.po","patterns":[{"match":"\\\\\\\\[\\\\\\\\\\"]","name":"constant.character.escape.po"}]}]},{"begin":"^(msgctxt)(?:(\\\\[)(\\\\d+)(\\\\]))?\\\\s+","beginCaptures":{"1":{"name":"keyword.control.msgctxt.po"},"2":{"name":"keyword.control.msgctxt.po"},"3":{"name":"constant.numeric.po"},"4":{"name":"keyword.control.msgctxt.po"}},"end":"^(?!\\")","name":"meta.scope.msgctxt.po","patterns":[{"begin":"(\\\\G|^)\\"","end":"\\"","name":"string.quoted.double.po","patterns":[{"match":"\\\\\\\\[\\\\\\\\\\"]","name":"constant.character.escape.po"}]}]},{"captures":{"1":{"name":"punctuation.definition.comment.po"}},"match":"^(#~).*$\\\\n?","name":"comment.line.number-sign.obsolete.po"},{"include":"#comments"},{"comment":"a line that does not begin with # or \\". Could improve this regexp","match":"^(?!\\\\s*$)[^#\\"].*$\\\\n?","name":"invalid.illegal.po"}]},"comments":{"patterns":[{"begin":"^(?=#)","end":"(?!\\\\G)","patterns":[{"begin":"(#,)\\\\s+","beginCaptures":{"1":{"name":"punctuation.definition.comment.po"}},"end":"\\\\n","name":"comment.line.number-sign.flag.po","patterns":[{"captures":{"1":{"name":"entity.name.type.flag.po"}},"match":"(?:\\\\G|,\\\\s*)((?:fuzzy)|(?:no-)?(?:c|objc|sh|lisp|elisp|librep|scheme|smalltalk|java|csharp|awk|object-pascal|ycp|tcl|perl|perl-brace|php|gcc-internal|qt|boost)-format)"}]},{"begin":"#\\\\.","beginCaptures":{"0":{"name":"punctuation.definition.comment.po"}},"end":"\\\\n","name":"comment.line.number-sign.extracted.po"},{"begin":"(#:)[ \\\\t]*","beginCaptures":{"1":{"name":"punctuation.definition.comment.po"}},"end":"\\\\n","name":"comment.line.number-sign.reference.po","patterns":[{"match":"(\\\\S+:)([\\\\d;]*)","name":"storage.type.class.po"}]},{"begin":"#\\\\|","beginCaptures":{"0":{"name":"punctuation.definition.comment.po"}},"end":"\\\\n","name":"comment.line.number-sign.previous.po"},{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.po"}},"end":"\\\\n","name":"comment.line.number-sign.po"}]}]}},"scopeName":"source.po","aliases":["pot","potx"]}')),cie=[sie]});var VR={};x(VR,{default:()=>Aie});var lie,Aie,XR=_(()=>{lie=Object.freeze(JSON.parse('{"displayName":"Polar","name":"polar","patterns":[{"include":"#comment"},{"include":"#rule"},{"include":"#rule-type"},{"include":"#inline-query"},{"include":"#resource-block"},{"include":"#test-block"},{"include":"#fixture"}],"repository":{"boolean":{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean"},"comment":{"match":"#.*","name":"comment.line.number-sign"},"fixture":{"patterns":[{"match":"\\\\bfixture\\\\b","name":"keyword.control"},{"begin":"\\\\btest\\\\b","beginCaptures":{"0":{"name":"keyword.control"}},"end":"\\\\bfixture\\\\b","endCaptures":{"0":{"name":"keyword.control"}}}]},"inline-query":{"begin":"\\\\?=","beginCaptures":{"0":{"name":"keyword.control"}},"end":";","name":"meta.inline-query","patterns":[{"include":"#term"}]},"keyword":{"patterns":[{"match":"\\\\b(cut|or|debug|print|in|forall|if|and|of|not|matches|type|on|global)\\\\b","name":"constant.character"}]},"number":{"patterns":[{"match":"\\\\b[+-]?\\\\d+(?:(\\\\.)\\\\d+(?:e[+-]?\\\\d+)?|(?:e[+-]?\\\\d+))\\\\b","name":"constant.numeric.float"},{"match":"\\\\b(\\\\+|\\\\-)[\\\\d]+\\\\b","name":"constant.numeric.integer"},{"match":"\\\\b[\\\\d]+\\\\b","name":"constant.numeric.natural"}]},"object-literal":{"begin":"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)\\\\s*\\\\{","beginCaptures":{"1":{"name":"entity.name.type.resource"}},"end":"\\\\}","name":"constant.other.object-literal","patterns":[{"include":"#string"},{"include":"#number"},{"include":"#boolean"}]},"operator":{"captures":{"1":{"name":"keyword.control"}},"match":"(\\\\+|-|\\\\*|\\\\/|<|>|=|!)"},"resource-block":{"begin":"(?<resourceType>[a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*){0}((?:(resource|actor)\\\\s+(\\\\g<resourceType>)(?:\\\\s+(extends)\\\\s+(\\\\g<resourceType>(?:\\\\s*,\\\\s*\\\\g<resourceType>)*)\\\\s*,?\\\\s*)?)|(global))\\\\s*{","beginCaptures":{"3":{"comment":"actor|resource","name":"keyword.control"},"4":{"comment":"declared resource type","name":"entity.name.type"},"5":{"comment":"extends","name":"keyword.control"},"6":{"comment":"list of extended resources","patterns":[{"match":"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)","name":"entity.name.type"}]},"7":{"comment":"global","name":"keyword.control"}},"end":"\\\\}","name":"meta.resource-block","patterns":[{"match":";","name":"punctuation.separator.sequence.declarations"},{"begin":"\\\\{","end":"\\\\}","name":"meta.relation-declaration","patterns":[{"include":"#specializer"},{"include":"#comment"},{"match":",","name":"punctuation.separator.sequence.dict"}]},{"include":"#term"}]},"rule":{"name":"meta.rule","patterns":[{"include":"#rule-functor"},{"begin":"\\\\bif\\\\b","beginCaptures":{"0":{"name":"keyword.control.if"}},"end":";","patterns":[{"include":"#term"}]},{"match":";"}]},"rule-functor":{"begin":"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)\\\\s*\\\\(","beginCaptures":{"1":{"name":"support.function.rule"}},"end":"\\\\)","patterns":[{"include":"#specializer"},{"match":",","name":"punctuation.separator.sequence.list"},{"include":"#term"}]},"rule-type":{"begin":"\\\\btype\\\\b","beginCaptures":{"0":{"name":"keyword.other.type-decl"}},"end":";","name":"meta.rule-type","patterns":[{"include":"#rule-functor"}]},"specializer":{"captures":{"1":{"name":"entity.name.type.resource"}},"match":"[a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*\\\\s*:\\\\s*([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)"},"string":{"begin":"\\"","end":"\\"","name":"string.quoted.double","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape"}]},"term":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#number"},{"include":"#keyword"},{"include":"#operator"},{"include":"#boolean"},{"include":"#object-literal"},{"begin":"\\\\[","end":"\\\\]","name":"meta.bracket.list","patterns":[{"include":"#term"},{"match":",","name":"punctuation.separator.sequence.list"}]},{"begin":"\\\\{","end":"\\\\}","name":"meta.bracket.dict","patterns":[{"include":"#term"},{"match":",","name":"punctuation.separator.sequence.dict"}]},{"begin":"\\\\(","end":"\\\\)","name":"meta.parens","patterns":[{"include":"#term"}]}]},"test-block":{"begin":"(test)\\\\s+(\\"[^\\"]*\\")\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control"},"2":{"name":"string.quoted.double"}},"end":"\\\\}","name":"meta.test-block","patterns":[{"begin":"(setup)\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control"}},"end":"\\\\}","name":"meta.test-setup","patterns":[{"include":"#rule"},{"include":"#comment"},{"include":"#fixture"}]},{"include":"#rule"},{"match":"\\\\b(assert|assert_not)\\\\b","name":"keyword.other"},{"include":"#comment"}]}},"scopeName":"source.polar"}')),Aie=[lie]});var e4={};x(e4,{default:()=>uie});var die,uie,t4=_(()=>{die=Object.freeze(JSON.parse('{"displayName":"PowerQuery","fileTypes":["pq","pqm"],"name":"powerquery","patterns":[{"include":"#Noise"},{"include":"#LiteralExpression"},{"include":"#Keywords"},{"include":"#ImplicitVariable"},{"include":"#IntrinsicVariable"},{"include":"#Operators"},{"include":"#DotOperators"},{"include":"#TypeName"},{"include":"#RecordExpression"},{"include":"#Punctuation"},{"include":"#QuotedIdentifier"},{"include":"#Identifier"}],"repository":{"BlockComment":{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.powerquery"},"DecimalNumber":{"match":"(?<![\\\\d\\\\w])(\\\\d*\\\\.\\\\d+)\\\\b","name":"constant.numeric.decimal.powerquery"},"DotOperators":{"captures":{"1":{"name":"keyword.operator.ellipsis.powerquery"},"2":{"name":"keyword.operator.list.powerquery"}},"match":"(?<!\\\\.)(?:(\\\\.\\\\.\\\\.)|(\\\\.\\\\.))(?!\\\\.)"},"EscapeSequence":{"begin":"#\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.escapesequence.begin.powerquery"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.escapesequence.end.powerquery"}},"name":"constant.character.escapesequence.powerquery","patterns":[{"match":"(#|\\\\h{4}|\\\\h{8}|cr|lf|tab)(?:,(#|\\\\h{4}|\\\\h{8}|cr|lf|tab))*"},{"match":"[^\\\\)]","name":"invalid.illegal.escapesequence.powerquery"}]},"FloatNumber":{"match":"(\\\\d*\\\\.)?\\\\d+(e|E)(\\\\+|-)?\\\\d+","name":"constant.numeric.float.powerquery"},"HexNumber":{"match":"0(x|X)\\\\h+","name":"constant.numeric.integer.hexadecimal.powerquery"},"Identifier":{"captures":{"1":{"name":"keyword.operator.inclusiveidentifier.powerquery"},"2":{"name":"entity.name.powerquery"}},"match":"(?:(?<![\\\\._\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Nd}\\\\p{Pc}\\\\p{Mn}\\\\p{Mc}\\\\p{Cf}])(@?)([_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}][_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Nd}\\\\p{Pc}\\\\p{Mn}\\\\p{Mc}\\\\p{Cf}]*(?:\\\\.[_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}][_\\\\p{Lu}\\\\p{Ll}\\\\p{Lt}\\\\p{Lm}\\\\p{Lo}\\\\p{Nl}\\\\p{Nd}\\\\p{Pc}\\\\p{Mn}\\\\p{Mc}\\\\p{Cf}])*)\\\\b)"},"ImplicitVariable":{"match":"\\\\b_\\\\b","name":"keyword.operator.implicitvariable.powerquery"},"InclusiveIdentifier":{"captures":{"0":{"name":"inclusiveidentifier.powerquery"}},"match":"@"},"IntNumber":{"captures":{"1":{"name":"constant.numeric.integer.powerquery"}},"match":"\\\\b(\\\\d+)\\\\b"},"IntrinsicVariable":{"captures":{"1":{"name":"constant.language.intrinsicvariable.powerquery"}},"match":"(?<![\\\\d\\\\w])(#sections|#shared)\\\\b"},"Keywords":{"captures":{"1":{"name":"keyword.operator.word.logical.powerquery"},"2":{"name":"keyword.control.conditional.powerquery"},"3":{"name":"keyword.control.exception.powerquery"},"4":{"name":"keyword.other.powerquery"},"5":{"name":"keyword.powerquery"}},"match":"\\\\b(?:(and|or|not)|(if|then|else)|(try|otherwise)|(as|each|in|is|let|meta|type|error)|(section|shared))\\\\b"},"LineComment":{"match":"//.*","name":"comment.line.double-slash.powerquery"},"LiteralExpression":{"patterns":[{"include":"#String"},{"include":"#NumericConstant"},{"include":"#LogicalConstant"},{"include":"#NullConstant"},{"include":"#FloatNumber"},{"include":"#DecimalNumber"},{"include":"#HexNumber"},{"include":"#IntNumber"}]},"LogicalConstant":{"match":"\\\\b(true|false)\\\\b","name":"constant.language.logical.powerquery"},"Noise":{"patterns":[{"include":"#BlockComment"},{"include":"#LineComment"},{"include":"#Whitespace"}]},"NullConstant":{"match":"\\\\b(null)\\\\b","name":"constant.language.null.powerquery"},"NumericConstant":{"captures":{"1":{"name":"constant.language.numeric.float.powerquery"}},"match":"(?<![\\\\d\\\\w])(#infinity|#nan)\\\\b"},"Operators":{"captures":{"1":{"name":"keyword.operator.function.powerquery"},"2":{"name":"keyword.operator.assignment-or-comparison.powerquery"},"3":{"name":"keyword.operator.comparison.powerquery"},"4":{"name":"keyword.operator.combination.powerquery"},"5":{"name":"keyword.operator.arithmetic.powerquery"},"6":{"name":"keyword.operator.sectionaccess.powerquery"},"7":{"name":"keyword.operator.optional.powerquery"}},"match":"(=>)|(=)|(<>|<|>|<=|>=)|(&)|(\\\\+|-|\\\\*|\\\\/)|(!)|(\\\\?)"},"Punctuation":{"captures":{"1":{"name":"punctuation.separator.powerquery"},"2":{"name":"punctuation.section.parens.begin.powerquery"},"3":{"name":"punctuation.section.parens.end.powerquery"},"4":{"name":"punctuation.section.braces.begin.powerquery"},"5":{"name":"punctuation.section.braces.end.powerquery"}},"match":"(,)|(\\\\()|(\\\\))|({)|(})"},"QuotedIdentifier":{"begin":"#\\"","beginCaptures":{"0":{"name":"punctuation.definition.quotedidentifier.begin.powerquery"}},"end":"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.definition.quotedidentifier.end.powerquery"}},"name":"entity.name.powerquery","patterns":[{"match":"\\"\\"","name":"constant.character.escape.quote.powerquery"},{"include":"#EscapeSequence"}]},"RecordExpression":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.powerquery"}},"contentName":"meta.recordexpression.powerquery","end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.brackets.end.powerquery"}},"patterns":[{"include":"$self"}]},"String":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.powerquery"}},"end":"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.powerquery"}},"name":"string.quoted.double.powerquery","patterns":[{"match":"\\"\\"","name":"constant.character.escape.quote.powerquery"},{"include":"#EscapeSequence"}]},"TypeName":{"captures":{"1":{"name":"storage.modifier.powerquery"},"2":{"name":"storage.type.powerquery"}},"match":"\\\\b(?:(optional|nullable)|(action|any|anynonnull|binary|date|datetime|datetimezone|duration|function|list|logical|none|null|number|record|table|text|type))\\\\b"},"Whitespace":{"match":"\\\\s+"}},"scopeName":"source.powerquery"}')),uie=[die]});var n4={};x(n4,{default:()=>mie});var pie,mie,a4=_(()=>{pie=Object.freeze(JSON.parse(`{"displayName":"PowerShell","name":"powershell","patterns":[{"begin":"<#","beginCaptures":{"0":{"name":"punctuation.definition.comment.block.begin.powershell"}},"end":"#>","endCaptures":{"0":{"name":"punctuation.definition.comment.block.end.powershell"}},"name":"comment.block.powershell","patterns":[{"include":"#commentEmbeddedDocs"}]},{"match":"[2-6]>&1|>>|>|<<|<|>|>\\\\||[1-6]>|[1-6]>>","name":"keyword.operator.redirection.powershell"},{"include":"#commands"},{"include":"#commentLine"},{"include":"#variable"},{"include":"#subexpression"},{"include":"#function"},{"include":"#attribute"},{"include":"#UsingDirective"},{"include":"#type"},{"include":"#hashtable"},{"include":"#doubleQuotedString"},{"include":"#scriptblock"},{"comment":"Needed to parse stuff correctly in 'argument mode'. (See about_parsing.)","include":"#doubleQuotedStringEscapes"},{"applyEndPatternLast":true,"begin":"['\\\\x{2018}-\\\\x{201B}]","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.powershell"}},"end":"['\\\\x{2018}-\\\\x{201B}]","endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}},"name":"string.quoted.single.powershell","patterns":[{"match":"['\\\\x{2018}-\\\\x{201B}]{2}","name":"constant.character.escape.powershell"}]},{"begin":"(@[\\"\\\\x{201C}-\\\\x{201E}])\\\\s*$","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.powershell"}},"end":"^[\\"\\\\x{201C}-\\\\x{201E}]@","endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}},"name":"string.quoted.double.heredoc.powershell","patterns":[{"include":"#variableNoProperty"},{"include":"#doubleQuotedStringEscapes"},{"include":"#interpolation"}]},{"begin":"(@['\\\\x{2018}-\\\\x{201B}])\\\\s*$","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.powershell"}},"end":"^['\\\\x{2018}-\\\\x{201B}]@","endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}},"name":"string.quoted.single.heredoc.powershell"},{"include":"#numericConstant"},{"begin":"(@)(\\\\()","beginCaptures":{"1":{"name":"keyword.other.array.begin.powershell"},"2":{"name":"punctuation.section.group.begin.powershell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}},"name":"meta.group.array-expression.powershell","patterns":[{"include":"$self"}]},{"begin":"((\\\\$))(\\\\()","beginCaptures":{"1":{"name":"keyword.other.substatement.powershell"},"2":{"name":"punctuation.definition.subexpression.powershell"},"3":{"name":"punctuation.section.group.begin.powershell"}},"comment":"TODO: move to repo; make recursive.","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}},"name":"meta.group.complex.subexpression.powershell","patterns":[{"include":"$self"}]},{"match":"(\\\\b(([A-Za-z0-9\\\\-_\\\\.]+)\\\\.(?i:exe|com|cmd|bat))\\\\b)","name":"support.function.powershell"},{"match":"(?<!\\\\w|-|\\\\.)((?i:begin|break|catch|clean|continue|data|default|define|do|dynamicparam|else|elseif|end|exit|finally|for|from|if|in|inlinescript|parallel|param|process|return|sequence|switch|throw|trap|try|until|var|while)|%|\\\\?)(?!\\\\w)","name":"keyword.control.powershell"},{"match":"(?<!\\\\w|-|[^\\\\)]\\\\.)((?i:(foreach|where)(?!-object))|%|\\\\?)(?!\\\\w)","name":"keyword.control.powershell"},{"begin":"(?<!\\\\w)(--%)(?!\\\\w)","beginCaptures":{"1":{"name":"keyword.control.powershell"}},"comment":"This should be moved to the repository at some point.","end":"$","patterns":[{"match":".+","name":"string.unquoted.powershell"}]},{"comment":"This should only be relevant inside a class but will require a rework of how classes are matched. This is a temp fix.","match":"(?<!\\\\w)((?i:hidden|static))(?!\\\\w)","name":"storage.modifier.powershell"},{"captures":{"1":{"name":"storage.type.powershell"},"2":{"name":"entity.name.function"}},"comment":"capture should be entity.name.type, but it doesn't provide a good color in the default schema.","match":"(?<!\\\\w|-)((?i:class)|%|\\\\?)(?:\\\\s)+((?:\\\\p{L}|\\\\d|_|-|)+)\\\\b"},{"match":"(?<!\\\\w)-(?i:is(?:not)?|as)\\\\b","name":"keyword.operator.comparison.powershell"},{"match":"(?<!\\\\w)-(?i:[ic]?(?:eq|ne|[gl][te]|(?:not)?(?:like|match|contains|in)|replace))(?!\\\\p{L})","name":"keyword.operator.comparison.powershell"},{"match":"(?<!\\\\w)-(?i:join|split)(?!\\\\p{L})|!","name":"keyword.operator.unary.powershell"},{"match":"(?<!\\\\w)-(?i:and|or|not|xor)(?!\\\\p{L})|!","name":"keyword.operator.logical.powershell"},{"match":"(?<!\\\\w)-(?i:band|bor|bnot|bxor|shl|shr)(?!\\\\p{L})","name":"keyword.operator.bitwise.powershell"},{"match":"(?<!\\\\w)-(?i:f)(?!\\\\p{L})","name":"keyword.operator.string-format.powershell"},{"match":"[+%*/-]?=|[+/*%-]","name":"keyword.operator.assignment.powershell"},{"match":"\\\\|{2}|&{2}|;","name":"punctuation.terminator.statement.powershell"},{"match":"&|(?<!\\\\w)\\\\.(?= )|\`|,|\\\\|","name":"keyword.operator.other.powershell"},{"comment":"This is very imprecise, is there a syntax for 'must come after...' ","match":"(?<!\\\\s|^)\\\\.\\\\.(?=\\\\-?\\\\d|\\\\(|\\\\$)","name":"keyword.operator.range.powershell"}],"repository":{"RequiresDirective":{"begin":"(?<=#)(?i:(requires))\\\\s","beginCaptures":{"0":{"name":"keyword.control.requires.powershell"}},"end":"$","name":"meta.requires.powershell","patterns":[{"match":"\\\\-(?i:Modules|PSSnapin|RunAsAdministrator|ShellId|Version|Assembly|PSEdition)","name":"keyword.other.powershell"},{"match":"(?<!-)\\\\b\\\\p{L}+|\\\\d+(?:\\\\.\\\\d+)*","name":"variable.parameter.powershell"},{"include":"#hashtable"}]},"UsingDirective":{"captures":{"1":{"name":"keyword.control.using.powershell"},"2":{"name":"keyword.other.powershell"},"3":{"name":"variable.parameter.powershell"}},"match":"(?<!\\\\w)(?i:(using))\\\\s+(?i:(namespace|module))\\\\s+(?i:((?:\\\\w+(?:\\\\.)?)+))"},"attribute":{"begin":"(\\\\[)\\\\s*\\\\b(?i)(cmdletbinding|alias|outputtype|parameter|validatenotnull|validatenotnullorempty|validatecount|validateset|allownull|allowemptycollection|allowemptystring|validatescript|validaterange|validatepattern|validatelength|supportswildcards)\\\\b","beginCaptures":{"1":{"name":"punctuation.section.bracket.begin.powershell"},"2":{"name":"support.function.attribute.powershell"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.section.bracket.end.powershell"}},"name":"meta.attribute.powershell","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.group.begin.powershell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}},"patterns":[{"include":"$self"},{"captures":{"1":{"name":"variable.parameter.attribute.powershell"},"2":{"name":"keyword.operator.assignment.powershell"}},"match":"(?i)\\\\b(mandatory|valuefrompipeline|valuefrompipelinebypropertyname|valuefromremainingarguments|position|parametersetname|defaultparametersetname|supportsshouldprocess|supportspaging|positionalbinding|helpuri|confirmimpact|helpmessage)\\\\b(?:\\\\s+)?(=)?"}]}]},"commands":{"patterns":[{"comment":"Verb-Noun pattern:","match":"(?:(\\\\p{L}|\\\\d|_|-|\\\\\\\\|\\\\:)*\\\\\\\\)?\\\\b(?i:Add|Approve|Assert|Backup|Block|Build|Checkpoint|Clear|Close|Compare|Complete|Compress|Confirm|Connect|Convert|ConvertFrom|ConvertTo|Copy|Debug|Deny|Deploy|Disable|Disconnect|Dismount|Edit|Enable|Enter|Exit|Expand|Export|Find|Format|Get|Grant|Group|Hide|Import|Initialize|Install|Invoke|Join|Limit|Lock|Measure|Merge|Mount|Move|New|Open|Optimize|Out|Ping|Pop|Protect|Publish|Push|Read|Receive|Redo|Register|Remove|Rename|Repair|Request|Reset|Resize|Resolve|Restart|Restore|Resume|Revoke|Save|Search|Select|Send|Set|Show|Skip|Split|Start|Step|Stop|Submit|Suspend|Switch|Sync|Test|Trace|Unblock|Undo|Uninstall|Unlock|Unprotect|Unpublish|Unregister|Update|Use|Wait|Watch|Write)\\\\-.+?(?:\\\\.(?i:exe|cmd|bat|ps1))?\\\\b","name":"support.function.powershell"},{"comment":"Builtin cmdlets with reserved verbs","match":"(?<!\\\\w)(?i:foreach-object)(?!\\\\w)","name":"support.function.powershell"},{"comment":"Builtin cmdlets with reserved verbs","match":"(?<!\\\\w)(?i:where-object)(?!\\\\w)","name":"support.function.powershell"},{"comment":"Builtin cmdlets with reserved verbs","match":"(?<!\\\\w)(?i:sort-object)(?!\\\\w)","name":"support.function.powershell"},{"comment":"Builtin cmdlets with reserved verbs","match":"(?<!\\\\w)(?i:tee-object)(?!\\\\w)","name":"support.function.powershell"}]},"commentEmbeddedDocs":{"patterns":[{"captures":{"1":{"name":"constant.string.documentation.powershell"},"2":{"name":"keyword.operator.documentation.powershell"}},"comment":"these embedded doc keywords do not support arguments, must be the only thing on the line","match":"(?:^|\\\\G)(?i:\\\\s*(\\\\.)(COMPONENT|DESCRIPTION|EXAMPLE|FUNCTIONALITY|INPUTS|LINK|NOTES|OUTPUTS|ROLE|SYNOPSIS))\\\\s*$","name":"comment.documentation.embedded.powershell"},{"captures":{"1":{"name":"constant.string.documentation.powershell"},"2":{"name":"keyword.operator.documentation.powershell"},"3":{"name":"keyword.operator.documentation.powershell"}},"comment":"these embedded doc keywords require arguments though the type required may be inconsistent, they may not all be able to use the same argument match","match":"(?:^|\\\\G)(?i:\\\\s*(\\\\.)(EXTERNALHELP|FORWARDHELP(?:CATEGORY|TARGETNAME)|PARAMETER|REMOTEHELPRUNSPACE))\\\\s+(.+?)\\\\s*$","name":"comment.documentation.embedded.powershell"}]},"commentLine":{"begin":"(?<![\`\\\\\\\\-])(#)#*","captures":{"1":{"name":"punctuation.definition.comment.powershell"}},"end":"$\\\\n?","name":"comment.line.powershell","patterns":[{"include":"#commentEmbeddedDocs"},{"include":"#RequiresDirective"}]},"doubleQuotedString":{"applyEndPatternLast":true,"begin":"[\\"\\\\x{201C}-\\\\x{201E}]","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.powershell"}},"end":"[\\"\\\\x{201C}-\\\\x{201E}]","endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}},"name":"string.quoted.double.powershell","patterns":[{"match":"(?i)\\\\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,64}\\\\b"},{"include":"#variableNoProperty"},{"include":"#doubleQuotedStringEscapes"},{"match":"[\\"\\\\x{201C}-\\\\x{201E}]{2}","name":"constant.character.escape.powershell"},{"include":"#interpolation"},{"match":"\`\\\\s*$","name":"keyword.other.powershell"}]},"doubleQuotedStringEscapes":{"patterns":[{"match":"\`[\`0abefnrtv'\\"\\\\x{2018}-\\\\x{201E}$]","name":"constant.character.escape.powershell"},{"include":"#unicodeEscape"}]},"function":{"begin":"^(?:\\\\s*+)(?i)(function|filter|configuration|workflow)\\\\s+(?:(global|local|script|private):)?((?:\\\\p{L}|\\\\d|_|-|\\\\.)+)","beginCaptures":{"0":{"name":"meta.function.powershell"},"1":{"name":"storage.type.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"3":{"name":"entity.name.function.powershell"}},"end":"(?=\\\\{|\\\\()","patterns":[{"include":"#commentLine"}]},"hashtable":{"begin":"(@)(\\\\{)","beginCaptures":{"1":{"name":"keyword.other.hashtable.begin.powershell"},"2":{"name":"punctuation.section.braces.begin.powershell"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.section.braces.end.powershell"}},"name":"meta.hashtable.powershell","patterns":[{"captures":{"1":{"name":"punctuation.definition.string.begin.powershell"},"2":{"name":"variable.other.readwrite.powershell"},"3":{"name":"punctuation.definition.string.end.powershell"},"4":{"name":"keyword.operator.assignment.powershell"}},"match":"\\\\b((?:\\\\'|\\\\\\")?)(\\\\w+)((?:\\\\'|\\\\\\")?)(?:\\\\s+)?(=)(?:\\\\s+)?","name":"meta.hashtable.assignment.powershell"},{"include":"#scriptblock"},{"include":"$self"}]},"interpolation":{"begin":"(((\\\\$)))((\\\\())","beginCaptures":{"1":{"name":"keyword.other.substatement.powershell"},"2":{"name":"punctuation.definition.substatement.powershell"},"3":{"name":"punctuation.section.embedded.substatement.begin.powershell"},"4":{"name":"punctuation.section.group.begin.powershell"},"5":{"name":"punctuation.section.embedded.substatement.begin.powershell"}},"contentName":"interpolated.complex.source.powershell","end":"(\\\\))","endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"},"1":{"name":"punctuation.section.embedded.substatement.end.powershell"}},"name":"meta.embedded.substatement.powershell","patterns":[{"include":"$self"}]},"numericConstant":{"patterns":[{"captures":{"1":{"name":"constant.numeric.hex.powershell"},"2":{"name":"keyword.other.powershell"}},"match":"(?<!\\\\w)([-+]?0(?:x|X)[0-9a-fA-F_]+(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\\\b"},{"captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}},"match":"(?<!\\\\w)([-+]?(?:[0-9_]+)?\\\\.[0-9_]+(?:(?:e|E)[0-9]+)?(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\\\b"},{"captures":{"1":{"name":"constant.numeric.octal.powershell"},"2":{"name":"keyword.other.powershell"}},"match":"(?<!\\\\w)([-+]?0(?:b|B)[01_]+(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\\\b"},{"captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}},"match":"(?<!\\\\w)([-+]?[0-9_]+(?:e|E)(?:[0-9_])?+(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\\\b"},{"captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}},"match":"(?<!\\\\w)([-+]?[0-9_]+\\\\.(?:e|E)(?:[0-9_])?+(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\\\b"},{"captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}},"match":"(?<!\\\\w)([-+]?[0-9_]+[\\\\.]?(?:F|f|D|d|M|m))((?i:[kmgtp]b)?)\\\\b"},{"captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}},"match":"(?<!\\\\w)([-+]?[0-9_]+[\\\\.]?(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\\\b"}]},"scriptblock":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.braces.begin.powershell"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.braces.end.powershell"}},"name":"meta.scriptblock.powershell","patterns":[{"include":"$self"}]},"subexpression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.group.begin.powershell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}},"name":"meta.group.simple.subexpression.powershell","patterns":[{"include":"$self"}]},"type":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.bracket.begin.powershell"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.bracket.end.powershell"}},"patterns":[{"match":"(?!\\\\d+|\\\\.)(?:\\\\p{L}|\\\\p{N}|\\\\.)+","name":"storage.type.powershell"},{"include":"$self"}]},"unicodeEscape":{"comment":"\`u{xxxx} added in PowerShell 6.0","patterns":[{"match":"\`u\\\\{(?:(?:10)?([0-9a-fA-F]){1,4}|0?\\\\g<1>{1,5})}","name":"constant.character.escape.powershell"},{"match":"\`u(?:\\\\{[0-9a-fA-F]{,6}.)?","name":"invalid.character.escape.powershell"}]},"variable":{"patterns":[{"captures":{"0":{"name":"constant.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"}},"comment":"These are special constants.","match":"(\\\\$)(?i:(False|Null|True))\\\\b"},{"captures":{"0":{"name":"support.constant.variable.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}},"comment":"These are the other built-in constants.","match":"(\\\\$)(?i:(Error|ExecutionContext|Host|Home|PID|PsHome|PsVersionTable|ShellID))((?:\\\\.(?:\\\\p{L}|\\\\d|_)+)*\\\\b)?\\\\b"},{"captures":{"0":{"name":"support.variable.automatic.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}},"comment":"Automatic variables are not constants, but they are read-only. In monokai (default) color schema support.variable doesn't have color, so we use constant.","match":"(\\\\$)((?:[$^?])|(?i:_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This)\\\\b)((?:\\\\.(?:\\\\p{L}|\\\\d|_)+)*\\\\b)?"},{"captures":{"0":{"name":"variable.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}},"comment":"Style preference variables as language variables so that they stand out.","match":"(\\\\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|InformationPreference|LogCommandHealthEvent|LogCommandLifecycleEvent|LogEngineHealthEvent|LogEngineLifecycleEvent|LogProviderHealthEvent|LogProviderLifecycleEvent|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|PSCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoLoadingPreference|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|ProgressPreference|VerbosePreference|WarningPreference|WhatIfPreference))((?:\\\\.(?:\\\\p{L}|\\\\d|_)+)*\\\\b)?\\\\b"},{"captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"4":{"name":"variable.other.member.powershell"}},"match":"(?i:(\\\\$|@)(global|local|private|script|using|workflow):((?:\\\\p{L}|\\\\d|_)+))((?:\\\\.(?:\\\\p{L}|\\\\d|_)+)*\\\\b)?"},{"captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"punctuation.section.braces.begin.powershell"},"3":{"name":"storage.modifier.scope.powershell"},"5":{"name":"punctuation.section.braces.end.powershell"},"6":{"name":"variable.other.member.powershell"}},"match":"(?i:(\\\\$)(\\\\{)(global|local|private|script|using|workflow):([^}]*[^}\`])(\\\\}))((?:\\\\.(?:\\\\p{L}|\\\\d|_)+)*\\\\b)?"},{"captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"support.variable.drive.powershell"},"4":{"name":"variable.other.member.powershell"}},"match":"(?i:(\\\\$|@)((?:\\\\p{L}|\\\\d|_)+:)?((?:\\\\p{L}|\\\\d|_)+))((?:\\\\.(?:\\\\p{L}|\\\\d|_)+)*\\\\b)?"},{"captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"punctuation.section.braces.begin.powershell"},"3":{"name":"support.variable.drive.powershell"},"5":{"name":"punctuation.section.braces.end.powershell"},"6":{"name":"variable.other.member.powershell"}},"match":"(?i:(\\\\$)(\\\\{)((?:\\\\p{L}|\\\\d|_)+:)?([^}]*[^}\`])(\\\\}))((?:\\\\.(?:\\\\p{L}|\\\\d|_)+)*\\\\b)?"}]},"variableNoProperty":{"patterns":[{"captures":{"0":{"name":"constant.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"}},"comment":"These are special constants.","match":"(\\\\$)(?i:(False|Null|True))\\\\b"},{"captures":{"0":{"name":"support.constant.variable.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}},"comment":"These are the other built-in constants.","match":"(\\\\$)(?i:(Error|ExecutionContext|Host|Home|PID|PsHome|PsVersionTable|ShellID))\\\\b"},{"captures":{"0":{"name":"support.variable.automatic.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}},"comment":"Automatic variables are not constants, but they are read-only...","match":"(\\\\$)((?:[$^?])|(?i:_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This)\\\\b)"},{"captures":{"0":{"name":"variable.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}},"comment":"Style preference variables as language variables so that they stand out.","match":"(\\\\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|InformationPreference|LogCommandHealthEvent|LogCommandLifecycleEvent|LogEngineHealthEvent|LogEngineLifecycleEvent|LogProviderHealthEvent|LogProviderLifecycleEvent|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|PSCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoLoadingPreference|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|ProgressPreference|VerbosePreference|WarningPreference|WhatIfPreference))\\\\b"},{"captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"4":{"name":"variable.other.member.powershell"}},"match":"(?i:(\\\\$)(global|local|private|script|using|workflow):((?:\\\\p{L}|\\\\d|_)+))"},{"captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"4":{"name":"keyword.other.powershell"},"5":{"name":"variable.other.member.powershell"}},"match":"(?i:(\\\\$)(\\\\{)(global|local|private|script|using|workflow):([^}]*[^}\`])(\\\\}))"},{"captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"support.variable.drive.powershell"},"4":{"name":"variable.other.member.powershell"}},"match":"(?i:(\\\\$)((?:\\\\p{L}|\\\\d|_)+:)?((?:\\\\p{L}|\\\\d|_)+))"},{"captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"punctuation.section.braces.begin"},"3":{"name":"support.variable.drive.powershell"},"5":{"name":"punctuation.section.braces.end"}},"match":"(?i:(\\\\$)(\\\\{)((?:\\\\p{L}|\\\\d|_)+:)?([^}]*[^}\`])(\\\\}))"}]}},"scopeName":"source.powershell","aliases":["ps","ps1"]}`)),mie=[pie]});var r4={};x(r4,{default:()=>fie});var gie,fie,i4=_(()=>{gie=Object.freeze(JSON.parse('{"displayName":"Prisma","fileTypes":["prisma"],"name":"prisma","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#multi_line_comment"},{"include":"#model_block_definition"},{"include":"#config_block_definition"},{"include":"#enum_block_definition"},{"include":"#type_definition"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"1":{"name":"punctuation.definition.tag.prisma"}},"end":"\\\\]","endCaptures":{"1":{"name":"punctuation.definition.tag.prisma"}},"name":"source.prisma.array","patterns":[{"include":"#value"}]},"assignment":{"patterns":[{"begin":"^\\\\s*(\\\\w+)\\\\s*(=)\\\\s*","beginCaptures":{"1":{"name":"variable.other.assignment.prisma"},"2":{"name":"keyword.operator.terraform"}},"end":"\\\\n","patterns":[{"include":"#value"},{"include":"#double_comment_inline"}]}]},"attribute":{"captures":{"1":{"name":"entity.name.function.attribute.prisma"}},"match":"(@@?[\\\\w\\\\.]+)","name":"source.prisma.attribute"},"attribute_with_arguments":{"begin":"(@@?[\\\\w\\\\.]+)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.attribute.prisma"},"2":{"name":"punctuation.definition.tag.prisma"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}},"name":"source.prisma.attribute.with_arguments","patterns":[{"include":"#named_argument"},{"include":"#value"}]},"boolean":{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.prisma"},"config_block_definition":{"begin":"^\\\\s*(generator|datasource)\\\\s+([A-Za-z][\\\\w]*)\\\\s+({)","beginCaptures":{"1":{"name":"storage.type.config.prisma"},"2":{"name":"entity.name.type.config.prisma"},"3":{"name":"punctuation.definition.tag.prisma"}},"end":"\\\\s*\\\\}","endCaptures":{"1":{"name":"punctuation.definition.tag.prisma"}},"name":"source.prisma.embedded.source","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#multi_line_comment"},{"include":"#assignment"}]},"double_comment":{"begin":"//","end":"$\\\\n?","name":"comment.prisma"},"double_comment_inline":{"match":"//[^\\\\n]*","name":"comment.prisma"},"double_quoted_string":{"begin":"\\"","beginCaptures":{"0":{"name":"string.quoted.double.start.prisma"}},"end":"\\"","endCaptures":{"0":{"name":"string.quoted.double.end.prisma"}},"name":"unnamed","patterns":[{"include":"#string_interpolation"},{"match":"([\\\\w\\\\-\\\\/\\\\._\\\\\\\\%@:\\\\?=]+)","name":"string.quoted.double.prisma"}]},"enum_block_definition":{"begin":"^\\\\s*(enum)\\\\s+([A-Za-z][\\\\w]*)\\\\s+({)","beginCaptures":{"1":{"name":"storage.type.enum.prisma"},"2":{"name":"entity.name.type.enum.prisma"},"3":{"name":"punctuation.definition.tag.prisma"}},"end":"\\\\s*\\\\}","endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}},"name":"source.prisma.embedded.source","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#multi_line_comment"},{"include":"#enum_value_definition"}]},"enum_value_definition":{"patterns":[{"captures":{"1":{"name":"variable.other.assignment.prisma"}},"match":"^\\\\s*(\\\\w+)\\\\s*"},{"include":"#attribute_with_arguments"},{"include":"#attribute"}]},"field_definition":{"name":"scalar.field","patterns":[{"captures":{"1":{"name":"variable.other.assignment.prisma"},"2":{"name":"invalid.illegal.colon.prisma"},"3":{"name":"variable.language.relations.prisma"},"4":{"name":"support.type.primitive.prisma"},"5":{"name":"keyword.operator.list_type.prisma"},"6":{"name":"keyword.operator.optional_type.prisma"},"7":{"name":"invalid.illegal.required_type.prisma"}},"match":"^\\\\s*(\\\\w+)(\\\\s*:)?\\\\s+((?!(?:Int|BigInt|String|DateTime|Bytes|Decimal|Float|Json|Boolean)\\\\b)\\\\b\\\\w+)?(Int|BigInt|String|DateTime|Bytes|Decimal|Float|Json|Boolean)?(\\\\[\\\\])?(\\\\?)?(\\\\!)?"},{"include":"#attribute_with_arguments"},{"include":"#attribute"}]},"functional":{"begin":"(\\\\w+)(\\\\()","beginCaptures":{"1":{"name":"support.function.functional.prisma"},"2":{"name":"punctuation.definition.tag.prisma"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}},"name":"source.prisma.functional","patterns":[{"include":"#value"}]},"identifier":{"patterns":[{"match":"\\\\b(\\\\w)+\\\\b","name":"support.constant.constant.prisma"}]},"literal":{"name":"source.prisma.literal","patterns":[{"include":"#boolean"},{"include":"#number"},{"include":"#double_quoted_string"},{"include":"#identifier"}]},"map_key":{"name":"source.prisma.key","patterns":[{"captures":{"1":{"name":"variable.parameter.key.prisma"},"2":{"name":"punctuation.definition.separator.key-value.prisma"}},"match":"(\\\\w+)\\\\s*(:)\\\\s*"}]},"model_block_definition":{"begin":"^\\\\s*(model|type|view)\\\\s+([A-Za-z][\\\\w]*)\\\\s*({)","beginCaptures":{"1":{"name":"storage.type.model.prisma"},"2":{"name":"entity.name.type.model.prisma"},"3":{"name":"punctuation.definition.tag.prisma"}},"end":"\\\\s*\\\\}","endCaptures":{"0":{"name":"punctuation.definition.tag.prisma"}},"name":"source.prisma.embedded.source","patterns":[{"include":"#triple_comment"},{"include":"#double_comment"},{"include":"#multi_line_comment"},{"include":"#field_definition"}]},"multi_line_comment":{"begin":"/\\\\*","end":"\\\\*/","name":"comment.prisma"},"named_argument":{"name":"source.prisma.named_argument","patterns":[{"include":"#map_key"},{"include":"#value"}]},"number":{"match":"((0(x|X)[0-9a-fA-F]*)|(\\\\+|-)?\\\\b(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)([LlFfUuDdg]|UL|ul)?\\\\b","name":"constant.numeric.prisma"},"string_interpolation":{"patterns":[{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"keyword.control.interpolation.start.prisma"}},"end":"\\\\s*\\\\}","endCaptures":{"0":{"name":"keyword.control.interpolation.end.prisma"}},"name":"source.tag.embedded.source.prisma","patterns":[{"include":"#value"}]}]},"triple_comment":{"begin":"///","end":"$\\\\n?","name":"comment.prisma"},"type_definition":{"patterns":[{"captures":{"1":{"name":"storage.type.type.prisma"},"2":{"name":"entity.name.type.type.prisma"},"3":{"name":"support.type.primitive.prisma"}},"match":"^\\\\s*(type)\\\\s+(\\\\w+)\\\\s*=\\\\s*(\\\\w+)"},{"include":"#attribute_with_arguments"},{"include":"#attribute"}]},"value":{"name":"source.prisma.value","patterns":[{"include":"#array"},{"include":"#functional"},{"include":"#literal"}]}},"scopeName":"source.prisma"}')),fie=[gie]});var o4={};x(o4,{default:()=>hie});var bie,hie,s4=_(()=>{bie=Object.freeze(JSON.parse(`{"displayName":"Prolog","fileTypes":["pl","pro"],"name":"prolog","patterns":[{"include":"#comments"},{"begin":"(?<=:-)\\\\s*","end":"(\\\\.)","endCaptures":{"1":{"name":"keyword.control.clause.bodyend.prolog"}},"name":"meta.clause.body.prolog","patterns":[{"include":"#comments"},{"include":"#builtin"},{"include":"#controlandkeywords"},{"include":"#atom"},{"include":"#variable"},{"include":"#constants"},{"match":".","name":"meta.clause.body.prolog"}]},{"begin":"^\\\\s*([a-z][a-zA-Z0-9_]*)(\\\\(?)(?=.*:-.*)","beginCaptures":{"1":{"name":"entity.name.function.clause.prolog"},"2":{"name":"punctuation.definition.parameters.begin"}},"end":"((\\\\)?))\\\\s*(:-)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end"},"3":{"name":"keyword.control.clause.bodybegin.prolog"}},"name":"meta.clause.head.prolog","patterns":[{"include":"#atom"},{"include":"#variable"},{"include":"#constants"}]},{"begin":"^\\\\s*([a-z][a-zA-Z0-9_]*)(\\\\(?)(?=.*-->.*)","beginCaptures":{"1":{"name":"entity.name.function.dcg.prolog"},"2":{"name":"punctuation.definition.parameters.begin"}},"end":"((\\\\)?))\\\\s*(-->)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end"},"3":{"name":"keyword.control.dcg.bodybegin.prolog"}},"name":"meta.dcg.head.prolog","patterns":[{"include":"#atom"},{"include":"#variable"},{"include":"#constants"}]},{"begin":"(?<=-->)\\\\s*","end":"(\\\\.)","endCaptures":{"1":{"name":"keyword.control.dcg.bodyend.prolog"}},"name":"meta.dcg.body.prolog","patterns":[{"include":"#comments"},{"include":"#controlandkeywords"},{"include":"#atom"},{"include":"#variable"},{"include":"#constants"},{"match":".","name":"meta.dcg.body.prolog"}]},{"begin":"^\\\\s*([a-zA-Z][a-zA-Z0-9_]*)(\\\\(?)(?!.*(:-|-->).*)","beginCaptures":{"1":{"name":"entity.name.function.fact.prolog"},"2":{"name":"punctuation.definition.parameters.begin"}},"end":"((\\\\)?))\\\\s*(\\\\.)(?!\\\\d+)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end"},"3":{"name":"keyword.control.fact.end.prolog"}},"name":"meta.fact.prolog","patterns":[{"include":"#comments"},{"include":"#atom"},{"include":"#variable"},{"include":"#constants"}]}],"repository":{"atom":{"patterns":[{"match":"(?<![a-zA-Z0-9_])[a-z][a-zA-Z0-9_]*(?!\\\\s*\\\\(|[a-zA-Z0-9_])","name":"constant.other.atom.simple.prolog"},{"match":"'.*?'","name":"constant.other.atom.quoted.prolog"},{"match":"\\\\[\\\\]","name":"constant.other.atom.emptylist.prolog"}]},"builtin":{"patterns":[{"match":"\\\\b(op|nl|fail|dynamic|discontiguous|initialization|meta_predicate|module_transparent|multifile|public|thread_local|thread_initialization|volatile)\\\\b","name":"keyword.other"},{"match":"\\\\b(abolish|abort|abs|absolute_file_name|access_file|acos|acosh|acyclic_term|add_import_module|append|apropos|arg|asin|asinh|assert|asserta|assertz|at_end_of_stream|at_halt|atan|atanh|atom|atom_chars|atom_codes|atom_concat|atom_length|atom_number|atom_prefix|atom_string|atom_to_stem_list|atom_to_term|atomic|atomic_concat|atomic_list_concat|atomics_to_string|attach_packs|attr_portray_hook|attr_unify_hook|attribute_goals|attvar|autoload|autoload_path|b_getval|b_set_dict|b_setval|bagof|begin_tests|between|blob|break|byte_count|call_dcg|call_residue_vars|callable|cancel_halt|catch|ceil|ceiling|char_code|char_conversion|char_type|character_count|chdir|chr_leash|chr_notrace|chr_show_store|chr_trace|clause|clause_property|close|close_dde_conversation|close_table|code_type|collation_key|compare|compare_strings|compile_aux_clauses|compile_predicates|compiling|compound|compound_name_arguments|compound_name_arity|consult|context_module|copy_predicate_clauses|copy_stream_data|copy_term|copy_term_nat|copysign|cos|cosh|cputime|create_prolog_flag|current_arithmetic_function|current_atom|current_blob|current_char_conversion|current_engine|current_flag|current_format_predicate|current_functor|current_input|current_key|current_locale|current_module|current_op|current_output|current_predicate|current_prolog_flag|current_signal|current_stream|current_trie|cyclic_term|date_time_stamp|date_time_value|day_of_the_week|dcg_translate_rule|dde_current_connection|dde_current_service|dde_execute|dde_poke|dde_register_service|dde_request|dde_unregister_service|debug|debugging|default_module|del_attr|del_attrs|del_dict|delete_directory|delete_file|delete_import_module|deterministic|dict_create|dict_pairs|dif|directory_files|divmod|doc_browser|doc_collect|doc_load_library|doc_server|double_metaphone|downcase_atom|dtd|dtd_property|duplicate_term|dwim_match|dwim_predicate|e|edit|encoding|engine_create|engine_fetch|engine_next|engine_next_reified|engine_post|engine_self|engine_yield|ensure_loaded|epsilon|erase|erf|erfc|eval|exception|exists_directory|exists_file|exists_source|exp|expand_answer|expand_file_name|expand_file_search_path|expand_goal|expand_query|expand_term|explain|fast_read|fast_term_serialized|fast_write|file_base_name|file_directory_name|file_name_extension|file_search_path|fill_buffer|find_chr_constraint|findall|findnsols|flag|float|float_fractional_part|float_integer_part|floor|flush_output|forall|format|format_predicate|format_time|free_dtd|free_sgml_parser|free_table|freeze|frozen|functor|garbage_collect|garbage_collect_atoms|garbage_collect_clauses|gdebug|get|get_attr|get_attrs|get_byte|get_char|get_code|get_dict|get_flag|get_sgml_parser|get_single_char|get_string_code|get_table_attribute|get_time|getbit|getenv|goal_expansion|ground|gspy|gtrace|guitracer|gxref|gzopen|halt|help|import_module|in_pce_thread|in_pce_thread_sync|in_table|include|inf|instance|integer|iri_xml_namespace|is_absolute_file_name|is_dict|is_engine|is_list|is_stream|is_thread|keysort|known_licenses|leash|length|lgamma|library_directory|license|line_count|line_position|list_strings|listing|load_dtd|load_files|load_html|load_rdf|load_sgml|load_structure|load_test_files|load_xml|locale_create|locale_destroy|locale_property|locale_sort|log|lsb|make|make_directory|make_library_index|max|memberchk|message_hook|message_property|message_queue_create|message_queue_destroy|message_queue_property|message_to_string|min|module|module_property|msb|msort|mutex_create|mutex_destroy|mutex_lock|mutex_property|mutex_statistics|mutex_trylock|mutex_unlock|name|nan|nb_current|nb_delete|nb_getval|nb_link_dict|nb_linkarg|nb_linkval|nb_set_dict|nb_setarg|nb_setval|new_dtd|new_order_table|new_sgml_parser|new_table|nl|nodebug|noguitracer|nonvar|noprotocol|normalize_space|nospy|nospyall|notrace|nth_clause|nth_integer_root_and_remainder|number|number_chars|number_codes|number_string|numbervars|odbc_close_statement|odbc_connect|odbc_current_connection|odbc_current_table|odbc_data_source|odbc_debug|odbc_disconnect|odbc_driver_connect|odbc_end_transaction|odbc_execute|odbc_fetch|odbc_free_statement|odbc_get_connection|odbc_prepare|odbc_query|odbc_set_connection|odbc_statistics|odbc_table_column|odbc_table_foreign_key|odbc_table_primary_key|odbc_type|on_signal|op|open|open_dde_conversation|open_dtd|open_null_stream|open_resource|open_string|open_table|order_table_mapping|parse_time|passed|pce_dispatch|pdt_install_console|peek_byte|peek_char|peek_code|peek_string|phrase|plus|popcount|porter_stem|portray|portray_clause|powm|predicate_property|predsort|prefix_string|print|print_message|print_message_lines|process_rdf|profile|profiler|project_attributes|prolog|prolog_choice_attribute|prolog_current_choice|prolog_current_frame|prolog_cut_to|prolog_debug|prolog_exception_hook|prolog_file_type|prolog_frame_attribute|prolog_ide|prolog_list_goal|prolog_load_context|prolog_load_file|prolog_nodebug|prolog_skip_frame|prolog_skip_level|prolog_stack_property|prolog_to_os_filename|prolog_trace_interception|prompt|protocol|protocola|protocolling|put|put_attr|put_attrs|put_byte|put_char|put_code|put_dict|qcompile|qsave_program|random|random_float|random_property|rational|rationalize|rdf_write_xml|read|read_clause|read_history|read_link|read_pending_chars|read_pending_codes|read_string|read_table_fields|read_table_record|read_table_record_data|read_term|read_term_from_atom|recorda|recorded|recordz|redefine_system_predicate|reexport|reload_library_index|rename_file|require|reset|reset_profiler|resource|retract|retractall|round|run_tests|running_tests|same_file|same_term|see|seeing|seek|seen|select_dict|set_end_of_stream|set_flag|set_input|set_locale|set_module|set_output|set_prolog_IO|set_prolog_flag|set_prolog_stack|set_random|set_sgml_parser|set_stream|set_stream_position|set_test_options|setarg|setenv|setlocale|setof|sgml_parse|shell|shift|show_coverage|show_profile|sign|sin|sinh|size_file|skip|sleep|sort|source_exports|source_file|source_file_property|source_location|split_string|spy|sqrt|stamp_date_time|statistics|stream_pair|stream_position_data|stream_property|string|string_chars|string_code|string_codes|string_concat|string_length|string_lower|string_upper|strip_module|style_check|sub_atom|sub_atom_icasechk|sub_string|subsumes_term|succ|suite|swritef|tab|table_previous_record|table_start_of_record|table_version|table_window|tan|tanh|tell|telling|term_attvars|term_expansion|term_hash|term_string|term_subsumer|term_to_atom|term_variables|test|test_report|text_to_string|thread_at_exit|thread_create|thread_detach|thread_exit|thread_get_message|thread_join|thread_message_hook|thread_peek_message|thread_property|thread_self|thread_send_message|thread_setconcurrency|thread_signal|thread_statistics|throw|time|time_file|tmp_file|tmp_file_stream|tokenize_atom|told|trace|tracing|trie_destroy|trie_gen|trie_insert|trie_insert_new|trie_lookup|trie_new|trie_property|trie_term|trim_stacks|truncate|tty_get_capability|tty_goto|tty_put|tty_size|ttyflush|unaccent_atom|unifiable|unify_with_occurs_check|unix|unknown|unload_file|unsetenv|upcase_atom|use_module|var|var_number|var_property|variant_hash|version|visible|wait_for_input|when|wildcard_match|win_add_dll_directory|win_exec|win_folder|win_has_menu|win_insert_menu|win_insert_menu_item|win_registry_get_value|win_remove_dll_directory|win_shell|win_window_pos|window_title|with_mutex|with_output_to|working_directory|write|write_canonical|write_length|write_term|writef|writeln|writeq|xml_is_dom|xml_to_rdf|zopen)\\\\b","name":"support.function.builtin.prolog"}]},"comments":{"patterns":[{"match":"%.*","name":"comment.line.percent-sign.prolog"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.prolog"}},"end":"\\\\*/","name":"comment.block.prolog"}]},"constants":{"patterns":[{"match":"(?<![a-zA-Z]|/)(\\\\d+|(\\\\d+\\\\.\\\\d+))","name":"constant.numeric.integer.prolog"},{"match":"\\".*?\\"","name":"string.quoted.double.prolog"}]},"controlandkeywords":{"patterns":[{"begin":"(->)","beginCaptures":{"1":{"name":"keyword.control.if.prolog"}},"end":"(;)","endCaptures":{"1":{"name":"keyword.control.else.prolog"}},"name":"meta.if.prolog","patterns":[{"include":"$self"},{"include":"#builtin"},{"include":"#comments"},{"include":"#atom"},{"include":"#variable"},{"match":".","name":"meta.if.body.prolog"}]},{"match":"!","name":"keyword.control.cut.prolog"},{"match":"(\\\\s(is)\\\\s)|=:=|=\\\\.\\\\.|=?\\\\\\\\?=|\\\\\\\\\\\\+|@?>|@?=?<|\\\\+|\\\\*|\\\\-","name":"keyword.operator.prolog"}]},"variable":{"patterns":[{"match":"(?<![a-zA-Z0-9_])[A-Z][a-zA-Z0-9_]*","name":"variable.parameter.uppercase.prolog"},{"match":"(?<!\\\\w)_","name":"variable.language.anonymous.prolog"}]}},"scopeName":"source.prolog"}`)),hie=[bie]});var c4={};x(c4,{default:()=>wie});var yie,wie,l4=_(()=>{yie=Object.freeze(JSON.parse(`{"displayName":"Protocol Buffer 3","fileTypes":["proto"],"name":"proto","patterns":[{"include":"#comments"},{"include":"#syntax"},{"include":"#package"},{"include":"#import"},{"include":"#optionStmt"},{"include":"#message"},{"include":"#enum"},{"include":"#service"}],"repository":{"comments":{"patterns":[{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.proto"},{"begin":"//","end":"$\\\\n?","name":"comment.line.double-slash.proto"}]},"constants":{"match":"\\\\b(true|false|max|[A-Z_]+)\\\\b","name":"constant.language.proto"},"enum":{"begin":"(enum)(\\\\s+)([A-Za-z][A-Za-z0-9_]*)(\\\\s*)(\\\\{)?","beginCaptures":{"1":{"name":"keyword.other.proto"},"3":{"name":"entity.name.class.proto"}},"end":"\\\\}","patterns":[{"include":"#reserved"},{"include":"#optionStmt"},{"include":"#comments"},{"begin":"([A-Za-z][A-Za-z0-9_]*)\\\\s*(=)\\\\s*(0[xX][0-9a-fA-F]+|[0-9]+)","beginCaptures":{"1":{"name":"variable.other.proto"},"2":{"name":"keyword.operator.assignment.proto"},"3":{"name":"constant.numeric.proto"}},"end":"(;)","endCaptures":{"1":{"name":"punctuation.terminator.proto"}},"patterns":[{"include":"#fieldOptions"}]}]},"field":{"begin":"\\\\s*(optional|repeated|required)?\\\\s*\\\\b([\\\\w.]+)\\\\s+(\\\\w+)\\\\s*(=)\\\\s*(0[xX][0-9a-fA-F]+|[0-9]+)","beginCaptures":{"1":{"name":"storage.modifier.proto"},"2":{"name":"storage.type.proto"},"3":{"name":"variable.other.proto"},"4":{"name":"keyword.operator.assignment.proto"},"5":{"name":"constant.numeric.proto"}},"end":"(;)","endCaptures":{"1":{"name":"punctuation.terminator.proto"}},"patterns":[{"include":"#fieldOptions"}]},"fieldOptions":{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#constants"},{"include":"#number"},{"include":"#string"},{"include":"#subMsgOption"},{"include":"#optionName"}]},"ident":{"match":"[A-Za-z][A-Za-z0-9_]*","name":"entity.name.class.proto"},"import":{"captures":{"1":{"name":"keyword.other.proto"},"2":{"name":"keyword.other.proto"},"3":{"name":"string.quoted.double.proto.import"},"4":{"name":"punctuation.terminator.proto"}},"match":"\\\\s*(import)\\\\s+(weak|public)?\\\\s*(\\"[^\\"]+\\")\\\\s*(;)"},"kv":{"begin":"(\\\\w+)\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.other.proto"},"2":{"name":"punctuation.separator.key-value.proto"}},"end":"(;)|,|(?=[}/_a-zA-Z])","endCaptures":{"1":{"name":"punctuation.terminator.proto"}},"patterns":[{"include":"#constants"},{"include":"#number"},{"include":"#string"},{"include":"#subMsgOption"}]},"mapfield":{"begin":"\\\\s*(map)\\\\s*(<)\\\\s*([\\\\w.]+)\\\\s*,\\\\s*([\\\\w.]+)\\\\s*(>)\\\\s+(\\\\w+)\\\\s*(=)\\\\s*(\\\\d+)","beginCaptures":{"1":{"name":"storage.type.proto"},"2":{"name":"punctuation.definition.typeparameters.begin.proto"},"3":{"name":"storage.type.proto"},"4":{"name":"storage.type.proto"},"5":{"name":"punctuation.definition.typeparameters.end.proto"},"6":{"name":"variable.other.proto"},"7":{"name":"keyword.operator.assignment.proto"},"8":{"name":"constant.numeric.proto"}},"end":"(;)","endCaptures":{"1":{"name":"punctuation.terminator.proto"}},"patterns":[{"include":"#fieldOptions"}]},"message":{"begin":"(message|extend)(\\\\s+)([A-Za-z_][A-Za-z0-9_.]*)(\\\\s*)(\\\\{)?","beginCaptures":{"1":{"name":"keyword.other.proto"},"3":{"name":"entity.name.class.message.proto"}},"end":"\\\\}","patterns":[{"include":"#reserved"},{"include":"$self"},{"include":"#enum"},{"include":"#optionStmt"},{"include":"#comments"},{"include":"#oneof"},{"include":"#field"},{"include":"#mapfield"}]},"method":{"begin":"(rpc)\\\\s+([A-Za-z][A-Za-z0-9_]*)","beginCaptures":{"1":{"name":"keyword.other.proto"},"2":{"name":"entity.name.function"}},"end":"\\\\}|(;)","endCaptures":{"1":{"name":"punctuation.terminator.proto"}},"patterns":[{"include":"#comments"},{"include":"#optionStmt"},{"include":"#rpcKeywords"},{"include":"#ident"}]},"number":{"match":"\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)\\\\b","name":"constant.numeric.proto"},"oneof":{"begin":"(oneof)\\\\s+([A-Za-z][A-Za-z0-9_]*)\\\\s*\\\\{?","beginCaptures":{"1":{"name":"keyword.other.proto"},"2":{"name":"variable.other.proto"}},"end":"\\\\}","patterns":[{"include":"#optionStmt"},{"include":"#comments"},{"include":"#field"}]},"optionName":{"captures":{"1":{"name":"support.other.proto"},"2":{"name":"support.other.proto"},"3":{"name":"support.other.proto"}},"match":"(\\\\w+|\\\\(\\\\w+(\\\\.\\\\w+)*\\\\))(\\\\.\\\\w+)*"},"optionStmt":{"begin":"(option)\\\\s+(\\\\w+|\\\\(\\\\w+(\\\\.\\\\w+)*\\\\))(\\\\.\\\\w+)*\\\\s*(=)","beginCaptures":{"1":{"name":"keyword.other.proto"},"2":{"name":"support.other.proto"},"3":{"name":"support.other.proto"},"4":{"name":"support.other.proto"},"5":{"name":"keyword.operator.assignment.proto"}},"end":"(;)","endCaptures":{"1":{"name":"punctuation.terminator.proto"}},"patterns":[{"include":"#constants"},{"include":"#number"},{"include":"#string"},{"include":"#subMsgOption"}]},"package":{"captures":{"1":{"name":"keyword.other.proto"},"2":{"name":"string.unquoted.proto.package"},"3":{"name":"punctuation.terminator.proto"}},"match":"\\\\s*(package)\\\\s+([\\\\w.]+)\\\\s*(;)"},"reserved":{"begin":"(reserved)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.proto"}},"end":"(;)","endCaptures":{"1":{"name":"punctuation.terminator.proto"}},"patterns":[{"captures":{"1":{"name":"constant.numeric.proto"},"3":{"name":"keyword.other.proto"},"4":{"name":"constant.numeric.proto"}},"match":"(\\\\d+)(\\\\s+(to)\\\\s+(\\\\d+))?"},{"include":"#string"}]},"rpcKeywords":{"match":"\\\\b(stream|returns)\\\\b","name":"keyword.other.proto"},"service":{"begin":"(service)\\\\s+([A-Za-z][A-Za-z0-9_.]*)\\\\s*\\\\{?","beginCaptures":{"1":{"name":"keyword.other.proto"},"2":{"name":"entity.name.class.message.proto"}},"end":"\\\\}","patterns":[{"include":"#comments"},{"include":"#optionStmt"},{"include":"#method"}]},"storagetypes":{"match":"\\\\b(double|float|int32|int64|uint32|uint64|sint32|sint64|fixed32|fixed64|sfixed32|sfixed64|bool|string|bytes)\\\\b","name":"storage.type.proto"},"string":{"match":"('([^']|\\\\')*')|(\\"([^\\"]|\\\\\\")*\\")","name":"string.quoted.double.proto"},"subMsgOption":{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#kv"},{"include":"#comments"}]},"syntax":{"captures":{"1":{"name":"keyword.other.proto"},"2":{"name":"keyword.operator.assignment.proto"},"3":{"name":"string.quoted.double.proto.syntax"},"4":{"name":"punctuation.terminator.proto"}},"match":"\\\\s*(syntax)\\\\s*(=)\\\\s*(\\"proto[23]\\")\\\\s*(;)"}},"scopeName":"source.proto","aliases":["protobuf"]}`)),wie=[yie]});var A4={};x(A4,{default:()=>Cie});var kie,Cie,d4=_(()=>{Qe();rt();Ye();kie=Object.freeze(JSON.parse(`{"displayName":"Pug","name":"pug","patterns":[{"comment":"Doctype declaration.","match":"^(!!!|doctype)(\\\\s*[a-zA-Z0-9-_]+)?","name":"meta.tag.sgml.doctype.html"},{"begin":"^(\\\\s*)//-","comment":"Unbuffered (pug-only) comments.","end":"^(?!(\\\\1\\\\s)|\\\\s*$)","name":"comment.unbuffered.block.pug"},{"begin":"^(\\\\s*)//","comment":"Buffered (html) comments.","end":"^(?!(\\\\1\\\\s)|\\\\s*$)","name":"string.comment.buffered.block.pug","patterns":[{"captures":{"1":{"name":"invalid.illegal.comment.comment.block.pug"}},"comment":"Buffered comments inside buffered comments will generate invalid html.","match":"^\\\\s*(//)(?!-)","name":"string.comment.buffered.block.pug"}]},{"begin":"<!--","end":"--\\\\s*>","name":"comment.unbuffered.block.pug","patterns":[{"match":"--","name":"invalid.illegal.comment.comment.block.pug"}]},{"begin":"^(\\\\s*)-$","comment":"Unbuffered code block.","end":"^(?!(\\\\1\\\\s)|\\\\s*$)","name":"source.js","patterns":[{"include":"source.js"}]},{"begin":"^(\\\\s*)(script)((\\\\.$)|(?=[^\\\\n]*((text|application)/javascript|module).*\\\\.$))","beginCaptures":{"2":{"name":"entity.name.tag.pug"}},"comment":"Script tag with JavaScript code.","end":"^(?!(\\\\1\\\\s)|\\\\s*$)","name":"meta.tag.other","patterns":[{"begin":"\\\\G(?=\\\\()","end":"$","patterns":[{"include":"#tag_attributes"}]},{"begin":"\\\\G(?=[.#])","end":"$","patterns":[{"include":"#complete_tag"}]},{"include":"source.js"}]},{"begin":"^(\\\\s*)(style)((\\\\.$)|(?=[.#(].*\\\\.$))","beginCaptures":{"2":{"name":"entity.name.tag.pug"}},"comment":"Style tag with CSS code.","end":"^(?!(\\\\1\\\\s)|\\\\s*$)","name":"meta.tag.other","patterns":[{"begin":"\\\\G(?=\\\\()","end":"$","patterns":[{"include":"#tag_attributes"}]},{"begin":"\\\\G(?=[.#])","end":"$","patterns":[{"include":"#complete_tag"}]},{"include":"source.css"}]},{"begin":"^(\\\\s*):(sass)(?=\\\\(|$)","beginCaptures":{"2":{"name":"constant.language.name.sass.filter.pug"}},"end":"^(?!(\\\\1\\\\s)|\\\\s*$)","name":"source.sass.filter.pug","patterns":[{"include":"#tag_attributes"},{"include":"source.sass"}]},{"begin":"^(\\\\s*):(scss)(?=\\\\(|$)","beginCaptures":{"2":{"name":"constant.language.name.scss.filter.pug"}},"end":"^(?!(\\\\1\\\\s)|\\\\s*$)","name":"source.css.scss.filter.pug","patterns":[{"include":"#tag_attributes"},{"include":"source.css.scss"}]},{"begin":"^(\\\\s*):(less)(?=\\\\(|$)","beginCaptures":{"2":{"name":"constant.language.name.less.filter.pug"}},"end":"^(?!(\\\\1\\\\s)|\\\\s*$)","name":"source.less.filter.pug","patterns":[{"include":"#tag_attributes"},{"include":"source.less"}]},{"begin":"^(\\\\s*):(stylus)(?=\\\\(|$)","beginCaptures":{"2":{"name":"constant.language.name.stylus.filter.pug"}},"end":"^(?!(\\\\1\\\\s)|\\\\s*$)","patterns":[{"include":"#tag_attributes"},{"include":"source.stylus"}]},{"begin":"^(\\\\s*):(coffee(-?script)?)(?=\\\\(|$)","beginCaptures":{"2":{"name":"constant.language.name.coffeescript.filter.pug"}},"end":"^(?!(\\\\1\\\\s)|\\\\s*$)","name":"source.coffeescript.filter.pug","patterns":[{"include":"#tag_attributes"},{"include":"source.coffee"}]},{"begin":"^(\\\\s*):(uglify-js)(?=\\\\(|$)","beginCaptures":{"2":{"name":"constant.language.name.js.filter.pug"}},"end":"^(?!(\\\\1\\\\s)|\\\\s*$)","name":"source.js.filter.pug","patterns":[{"include":"#tag_attributes"},{"include":"source.js"}]},{"begin":"^(\\\\s*)((:(?=.))|(:$))","beginCaptures":{"4":{"name":"invalid.illegal.empty.generic.filter.pug"}},"comment":"Generic Pug filter.","end":"^(?!(\\\\1\\\\s)|\\\\s*$)","patterns":[{"begin":"\\\\G(?<=:)(?=.)","end":"$","name":"name.generic.filter.pug","patterns":[{"match":"\\\\G\\\\(","name":"invalid.illegal.name.generic.filter.pug"},{"match":"[\\\\w-]","name":"constant.language.name.generic.filter.pug"},{"include":"#tag_attributes"},{"match":"\\\\W","name":"invalid.illegal.name.generic.filter.pug"}]}]},{"begin":"^(\\\\s*)(?:(?=\\\\.$)|(?:(?=[\\\\w.#].*?\\\\.$)(?=(?:(?:(?:(?:(?:#[\\\\w-]+)|(?:\\\\.[\\\\w-]+))|(?:(?:[#!]\\\\{[^}]*\\\\})|(?:\\\\w(?:(?:[\\\\w:-]+[\\\\w-])|(?:[\\\\w-]*)))))(?:(?:#[\\\\w-]+)|(?:\\\\.[\\\\w-]+)|(?:\\\\((?:[^()\\\\'\\\\\\"]*(?:(?:\\\\'(?:[^\\\\']|(?:(?<!\\\\\\\\)\\\\\\\\\\\\'))*\\\\')|(?:\\\\\\"(?:[^\\\\\\"]|(?:(?<!\\\\\\\\)\\\\\\\\\\\\\\"))*\\\\\\")))*[^()]*\\\\))*)*)(?:(?:(?::\\\\s+)|(?<=\\\\)))(?:(?:(?:(?:#[\\\\w-]+)|(?:\\\\.[\\\\w-]+))|(?:(?:[#!]\\\\{[^}]*\\\\})|(?:\\\\w(?:(?:[\\\\w:-]+[\\\\w-])|(?:[\\\\w-]*)))))(?:(?:#[\\\\w-]+)|(?:\\\\.[\\\\w-]+)|(?:\\\\((?:[^()\\\\'\\\\\\"]*(?:(?:\\\\'(?:[^\\\\']|(?:(?<!\\\\\\\\)\\\\\\\\\\\\'))*\\\\')|(?:\\\\\\"(?:[^\\\\\\"]|(?:(?<!\\\\\\\\)\\\\\\\\\\\\\\"))*\\\\\\")))*[^()]*\\\\))*)*))*)\\\\.$)(?:(?:(#[\\\\w-]+)|(\\\\.[\\\\w-]+))|((?:[#!]\\\\{[^}]*\\\\})|(?:\\\\w(?:(?:[\\\\w:-]+[\\\\w-])|(?:[\\\\w-]*)))))))","beginCaptures":{"2":{"name":"meta.selector.css entity.other.attribute-name.id.css.pug"},"3":{"name":"meta.selector.css entity.other.attribute-name.class.css.pug"},"4":{"name":"meta.tag.other entity.name.tag.pug"}},"comment":"Generated from dot_block_tag.py","end":"^(?!(\\\\1\\\\s)|\\\\s*$)","patterns":[{"match":"\\\\.$","name":"storage.type.function.pug.dot-block-dot"},{"include":"#tag_attributes"},{"include":"#complete_tag"},{"begin":"^(?=.)","end":"$","name":"text.block.pug","patterns":[{"include":"#inline_pug"},{"include":"#embedded_html"},{"include":"#html_entity"},{"include":"#interpolated_value"},{"include":"#interpolated_error"}]}]},{"begin":"^\\\\s*","comment":"All constructs that generally span a single line starting with any number of white-spaces.","end":"$","patterns":[{"include":"#inline_pug"},{"include":"#blocks_and_includes"},{"include":"#unbuffered_code"},{"include":"#mixin_definition"},{"include":"#mixin_call"},{"include":"#flow_control"},{"include":"#flow_control_each"},{"include":"#case_conds"},{"begin":"\\\\|","comment":"Tag pipe text line.","end":"$","name":"text.block.pipe.pug","patterns":[{"include":"#inline_pug"},{"include":"#embedded_html"},{"include":"#html_entity"},{"include":"#interpolated_value"},{"include":"#interpolated_error"}]},{"include":"#printed_expression"},{"begin":"\\\\G(?=(#[^\\\\{\\\\w-])|[^\\\\w.#])","comment":"Line starting with characters incompatible with tag name/id/class is standalone text.","end":"$","patterns":[{"begin":"</?(?=[!#])","end":">|$","patterns":[{"include":"#inline_pug"},{"include":"#interpolated_value"},{"include":"#interpolated_error"}]},{"include":"#inline_pug"},{"include":"#embedded_html"},{"include":"#html_entity"},{"include":"#interpolated_value"},{"include":"#interpolated_error"}]},{"include":"#complete_tag"}]}],"repository":{"babel_parens":{"begin":"\\\\(","end":"\\\\)|(({\\\\s*)?$)","patterns":[{"include":"#babel_parens"},{"include":"source.js"}]},"blocks_and_includes":{"captures":{"1":{"name":"storage.type.import.include.pug"},"4":{"name":"variable.control.import.include.pug"}},"comment":"Template blocks and includes.","match":"(extends|include|yield|append|prepend|block( (append|prepend))?)\\\\s+(.*)$","name":"meta.first-class.pug"},"case_conds":{"begin":"(default|when)((\\\\s+|(?=:))|$)","captures":{"1":{"name":"storage.type.function.pug"}},"comment":"Pug case conditionals.","end":"$","name":"meta.control.flow.pug","patterns":[{"begin":"\\\\G(?!:)","end":"(?=:\\\\s+)|$","name":"js.embedded.control.flow.pug","patterns":[{"include":"#case_when_paren"},{"include":"source.js"}]},{"begin":":\\\\s+","end":"$","name":"tag.case.control.flow.pug","patterns":[{"include":"#complete_tag"}]}]},"case_when_paren":{"begin":"\\\\(","end":"\\\\)","name":"js.when.control.flow.pug","patterns":[{"include":"#case_when_paren"},{"match":":","name":"invalid.illegal.name.tag.pug"},{"include":"source.js"}]},"complete_tag":{"begin":"(?=[\\\\w.#])|(:\\\\s*)","end":"(\\\\.?$)|(?=:.)","endCaptures":{"1":{"name":"storage.type.function.pug.dot-block-dot"}},"patterns":[{"include":"#blocks_and_includes"},{"include":"#unbuffered_code"},{"include":"#mixin_call"},{"include":"#flow_control"},{"include":"#flow_control_each"},{"match":"(?<=:)\\\\w.*$","name":"invalid.illegal.name.tag.pug"},{"include":"#tag_name"},{"include":"#tag_id"},{"include":"#tag_classes"},{"include":"#tag_attributes"},{"include":"#tag_mixin_attributes"},{"captures":{"2":{"name":"invalid.illegal.end.tag.pug"},"4":{"name":"invalid.illegal.end.tag.pug"}},"match":"((\\\\.)\\\\s+$)|((:)\\\\s*$)"},{"include":"#printed_expression"},{"include":"#tag_text"}]},"embedded_html":{"begin":"(?=<[^>]*>)","end":"$|(?=>)","name":"html","patterns":[{"include":"text.html.basic"},{"include":"#interpolated_value"},{"include":"#interpolated_error"}]},"flow_control":{"begin":"(for|if|else if|else|until|while|unless|case)(\\\\s+|$)","captures":{"1":{"name":"storage.type.function.pug"}},"comment":"Pug control flow.","end":"$","name":"meta.control.flow.pug","patterns":[{"begin":"","end":"$","name":"js.embedded.control.flow.pug","patterns":[{"include":"source.js"}]}]},"flow_control_each":{"begin":"(each)(\\\\s+|$)","captures":{"1":{"name":"storage.type.function.pug"}},"end":"$","name":"meta.control.flow.pug.each","patterns":[{"match":"([\\\\w$_]+)(?:\\\\s*,\\\\s*([\\\\w$_]+))?","name":"variable.other.pug.each-var"},{"begin":"","end":"$","name":"js.embedded.control.flow.pug","patterns":[{"include":"source.js"}]}]},"html_entity":{"patterns":[{"match":"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)","name":"constant.character.entity.html.text.pug"},{"match":"[<>&]","name":"invalid.illegal.html_entity.text.pug"}]},"inline_pug":{"begin":"(?<!\\\\\\\\)(#\\\\[)","captures":{"1":{"name":"entity.name.function.pug"},"2":{"name":"entity.name.function.pug"}},"end":"(\\\\])","name":"inline.pug","patterns":[{"include":"#inline_pug"},{"include":"#mixin_call"},{"begin":"(?<!\\\\])(?=[\\\\w.#])|(:\\\\s*)","end":"(?=\\\\]|(:.)|=|\\\\s)","name":"tag.inline.pug","patterns":[{"include":"#tag_name"},{"include":"#tag_id"},{"include":"#tag_classes"},{"include":"#tag_attributes"},{"include":"#tag_mixin_attributes"},{"include":"#inline_pug"},{"match":"\\\\[","name":"invalid.illegal.tag.pug"}]},{"include":"#unbuffered_code"},{"include":"#printed_expression"},{"match":"\\\\[","name":"invalid.illegal.tag.pug"},{"include":"#inline_pug_text"}]},"inline_pug_text":{"begin":"","end":"(?=\\\\])","patterns":[{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#inline_pug_text"}]},{"include":"#inline_pug"},{"include":"#embedded_html"},{"include":"#html_entity"},{"include":"#interpolated_value"},{"include":"#interpolated_error"}]},"interpolated_error":{"match":"(?<!\\\\\\\\)[#!]\\\\{(?=[^}]*$)","name":"invalid.illegal.tag.pug"},"interpolated_value":{"begin":"(?<!\\\\\\\\)[#!]\\\\{(?=.*?\\\\})","end":"\\\\}","name":"string.interpolated.pug","patterns":[{"match":"{","name":"invalid.illegal.tag.pug"},{"include":"source.js"}]},"js_braces":{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#js_braces"},{"include":"source.js"}]},"js_brackets":{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#js_brackets"},{"include":"source.js"}]},"js_parens":{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#js_parens"},{"include":"source.js"}]},"mixin_call":{"begin":"((?:mixin\\\\s+)|\\\\+)([\\\\w-]+)","beginCaptures":{"1":{"name":"storage.type.function.pug"},"2":{"name":"meta.tag.other entity.name.function.pug"}},"end":"(?!\\\\()|$","patterns":[{"begin":"(?<!\\\\))\\\\(","end":"\\\\)","name":"args.mixin.pug","patterns":[{"include":"#js_parens"},{"captures":{"1":{"name":"meta.tag.other entity.other.attribute-name.tag.pug"}},"match":"([^\\\\s(),=/]+)\\\\s*=\\\\s*"},{"include":"source.js"}]},{"include":"#tag_attributes"}]},"mixin_definition":{"captures":{"1":{"name":"storage.type.function.pug"},"2":{"name":"meta.tag.other entity.name.function.pug"},"3":{"name":"punctuation.definition.parameters.begin.js"},"4":{"name":"variable.parameter.function.js"},"5":{"name":"punctuation.definition.parameters.begin.js"}},"match":"(mixin\\\\s+)([\\\\w-]+)(?:(\\\\()\\\\s*((?:[a-zA-Z_]\\\\w*\\\\s*)(?:,\\\\s*[a-zA-Z_]\\\\w*\\\\s*)*)(\\\\)))?$"},"printed_expression":{"begin":"(!?\\\\=)\\\\s*","captures":{"1":{"name":"constant"}},"end":"(?=\\\\])|$","name":"source.js","patterns":[{"include":"#js_brackets"},{"include":"source.js"}]},"tag_attribute_name":{"captures":{"1":{"name":"entity.other.attribute-name.tag.pug"}},"match":"([^\\\\s(),=/!]+)\\\\s*"},"tag_attribute_name_paren":{"begin":"\\\\(\\\\s*","end":"\\\\)","name":"entity.other.attribute-name.tag.pug","patterns":[{"include":"#tag_attribute_name_paren"},{"include":"#tag_attribute_name"}]},"tag_attributes":{"begin":"(\\\\(\\\\s*)","captures":{"1":{"name":"constant.name.attribute.tag.pug"}},"end":"(\\\\))","name":"meta.tag.other","patterns":[{"include":"#tag_attribute_name_paren"},{"include":"#tag_attribute_name"},{"match":"!(?!=)","name":"invalid.illegal.tag.pug"},{"begin":"=\\\\s*","end":"$|(?=,|(?:\\\\s+[^!%&*\\\\-+~|<>?/])|\\\\))","name":"attribute_value","patterns":[{"include":"#js_parens"},{"include":"#js_brackets"},{"include":"#js_braces"},{"include":"source.js"}]},{"begin":"(?<=[%&*\\\\-+~|<>:?/])\\\\s+","end":"$|(?=,|(?:\\\\s+[^!%&*\\\\-+~|<>?/])|\\\\))","name":"attribute_value2","patterns":[{"include":"#js_parens"},{"include":"#js_brackets"},{"include":"#js_braces"},{"include":"source.js"}]}]},"tag_classes":{"captures":{"1":{"name":"invalid.illegal.tag.pug"}},"match":"\\\\.([^\\\\w-])?[\\\\w-]*","name":"meta.selector.css entity.other.attribute-name.class.css.pug"},"tag_id":{"match":"#[\\\\w-]+","name":"meta.selector.css entity.other.attribute-name.id.css.pug"},"tag_mixin_attributes":{"begin":"(&attributes\\\\()","captures":{"1":{"name":"entity.name.function.pug"}},"end":"(\\\\))","name":"meta.tag.other","patterns":[{"match":"attributes(?=\\\\))","name":"storage.type.keyword.pug"},{"include":"source.js"}]},"tag_name":{"begin":"([#!]\\\\{(?=.*?\\\\}))|(\\\\w(([\\\\w:-]+[\\\\w-])|([\\\\w-]*)))","end":"(\\\\G(?<!\\\\5[^\\\\w-]))|\\\\}|$","name":"meta.tag.other entity.name.tag.pug","patterns":[{"begin":"\\\\G(?<=\\\\{)","end":"(?=\\\\})","name":"meta.tag.other entity.name.tag.pug","patterns":[{"match":"{","name":"invalid.illegal.tag.pug"},{"include":"source.js"}]}]},"tag_text":{"begin":"(?=.)","end":"$","patterns":[{"include":"#inline_pug"},{"include":"#embedded_html"},{"include":"#html_entity"},{"include":"#interpolated_value"},{"include":"#interpolated_error"}]},"unbuffered_code":{"begin":"(-|(([a-zA-Z0-9_]+)\\\\s+=))","beginCaptures":{"3":{"name":"variable.parameter.javascript.embedded.pug"}},"comment":"name = function() {}","end":"(?=\\\\])|(({\\\\s*)?$)","name":"source.js","patterns":[{"include":"#js_brackets"},{"include":"#babel_parens"},{"include":"source.js"}]}},"scopeName":"text.pug","embeddedLangs":["javascript","css","html"],"aliases":["jade"],"embeddedLangsLazy":["sass","scss","stylus","coffee"]}`)),Cie=[...J,...ue,...ce,kie]});var u4={};x(u4,{default:()=>Bie});var _ie,Bie,p4=_(()=>{_ie=Object.freeze(JSON.parse('{"displayName":"Puppet","fileTypes":["pp"],"foldingStartMarker":"(^\\\\s*/\\\\*|(\\\\{|\\\\[|\\\\()\\\\s*$)","foldingStopMarker":"(\\\\*/|^\\\\s*(\\\\}|\\\\]|\\\\)))","name":"puppet","patterns":[{"include":"#line_comment"},{"include":"#constants"},{"begin":"^\\\\s*/\\\\*","end":"\\\\*/","name":"comment.block.puppet"},{"begin":"\\\\b(node)\\\\b","captures":{"1":{"name":"storage.type.puppet"},"2":{"name":"entity.name.type.class.puppet"}},"end":"(?={)","name":"meta.definition.class.puppet","patterns":[{"match":"\\\\bdefault\\\\b","name":"keyword.puppet"},{"include":"#strings"},{"include":"#regex-literal"}]},{"begin":"\\\\b(class)\\\\s+((?:[a-z][a-z0-9_]*)?(?:::[a-z][a-z0-9_]*)+|[a-z][a-z0-9_]*)\\\\s*","captures":{"1":{"name":"storage.type.puppet"},"2":{"name":"entity.name.type.class.puppet"}},"end":"(?={)","name":"meta.definition.class.puppet","patterns":[{"begin":"\\\\b(inherits)\\\\b\\\\s+","captures":{"1":{"name":"storage.modifier.puppet"}},"end":"(?=\\\\(|{)","name":"meta.definition.class.inherits.puppet","patterns":[{"match":"\\\\b((?:[-_A-Za-z0-9\\".]+::)*[-_A-Za-z0-9\\".]+)\\\\b","name":"support.type.puppet"}]},{"include":"#line_comment"},{"include":"#resource-parameters"},{"include":"#parameter-default-types"}]},{"begin":"^\\\\s*(plan)\\\\s+((?:[a-z][a-z0-9_]*)?(?:::[a-z][a-z0-9_]*)+|[a-z][a-z0-9_]*)\\\\s*","captures":{"1":{"name":"storage.type.puppet"},"2":{"name":"entity.name.type.plan.puppet"}},"end":"(?={)","name":"meta.definition.plan.puppet","patterns":[{"include":"#line_comment"},{"include":"#resource-parameters"},{"include":"#parameter-default-types"}]},{"begin":"^\\\\s*(define|function)\\\\s+([a-z][a-z0-9_]*|(?:[a-z][a-z0-9_]*)?(?:::[a-z][a-z0-9_]*)+)\\\\s*(\\\\()","captures":{"1":{"name":"storage.type.function.puppet"},"2":{"name":"entity.name.function.puppet"}},"end":"(?={)","name":"meta.function.puppet","patterns":[{"include":"#line_comment"},{"include":"#resource-parameters"},{"include":"#parameter-default-types"}]},{"captures":{"1":{"name":"keyword.control.puppet"}},"match":"\\\\b(case|else|elsif|if|unless)(?!::)\\\\b"},{"include":"#keywords"},{"include":"#resource-definition"},{"include":"#heredoc"},{"include":"#strings"},{"include":"#puppet-datatypes"},{"include":"#array"},{"match":"((\\\\$?)\\"?[a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*\\"?):(?=\\\\s+|$)","name":"entity.name.section.puppet"},{"include":"#numbers"},{"include":"#variable"},{"begin":"\\\\b(import|include|contain|require)\\\\s+(?!.*=>)","beginCaptures":{"1":{"name":"keyword.control.import.include.puppet"}},"contentName":"variable.parameter.include.puppet","end":"(?=\\\\s|$)","name":"meta.include.puppet"},{"match":"\\\\b\\\\w+\\\\s*(?==>)\\\\s*","name":"constant.other.key.puppet"},{"match":"(?<={)\\\\s*\\\\w+\\\\s*(?=})","name":"constant.other.bareword.puppet"},{"match":"\\\\b(alert|crit|debug|defined|emerg|err|escape|fail|failed|file|generate|gsub|info|notice|package|realize|search|tag|tagged|template|warning)\\\\b(?!.*{)","name":"support.function.puppet"},{"match":"=>","name":"punctuation.separator.key-value.puppet"},{"match":"->","name":"keyword.control.orderarrow.puppet"},{"match":"~>","name":"keyword.control.notifyarrow.puppet"},{"include":"#regex-literal"}],"repository":{"array":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.array.begin.puppet"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.array.end.puppet"}},"name":"meta.array.puppet","patterns":[{"match":"\\\\s*,\\\\s*"},{"include":"#parameter-default-types"},{"include":"#line_comment"}]},"constants":{"patterns":[{"match":"\\\\b(absent|directory|false|file|present|running|stopped|true)\\\\b(?!.*{)","name":"constant.language.puppet"}]},"double-quoted-string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.puppet"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.puppet"}},"name":"string.quoted.double.interpolated.puppet","patterns":[{"include":"#escaped_char"},{"include":"#interpolated_puppet"}]},"escaped_char":{"match":"\\\\\\\\.","name":"constant.character.escape.puppet"},"function_call":{"begin":"([a-zA-Z_][a-zA-Z0-9_]*)(\\\\()","end":"\\\\)","name":"meta.function-call.puppet","patterns":[{"include":"#parameter-default-types"},{"match":",","name":"punctuation.separator.parameters.puppet"}]},"hash":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.hash.begin.puppet"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.hash.end.puppet"}},"name":"meta.hash.puppet","patterns":[{"match":"\\\\b\\\\w+\\\\s*(?==>)\\\\s*","name":"constant.other.key.puppet"},{"include":"#parameter-default-types"},{"include":"#line_comment"}]},"heredoc":{"patterns":[{"begin":"@\\\\([[:blank:]]*\\"([^:\\\\/) \\\\t]+)\\"[[:blank:]]*(:[[:blank:]]*[a-z][a-zA-Z0-9_+]*[[:blank:]]*)?(\\\\/[[:blank:]]*[tsrnL$]*)?[[:blank:]]*\\\\)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.puppet"}},"end":"^[[:blank:]]*(\\\\|[[:blank:]]*-|\\\\||-)?[[:blank:]]*\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.puppet"}},"name":"string.interpolated.heredoc.puppet","patterns":[{"include":"#escaped_char"},{"include":"#interpolated_puppet"}]},{"begin":"@\\\\([[:blank:]]*([^:\\\\/) \\\\t]+)[[:blank:]]*(:[[:blank:]]*[a-z][a-zA-Z0-9_+]*[[:blank:]]*)?(\\\\/[[:blank:]]*[tsrnL$]*)?[[:blank:]]*\\\\)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.puppet"}},"end":"^[[:blank:]]*(\\\\|[[:blank:]]*-|\\\\||-)?[[:blank:]]*\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.puppet"}},"name":"string.unquoted.heredoc.puppet"}]},"interpolated_puppet":{"patterns":[{"begin":"(\\\\${)(\\\\d+)","beginCaptures":{"1":{"name":"punctuation.section.embedded.begin.puppet"},"2":{"name":"source.puppet variable.other.readwrite.global.pre-defined.puppet"}},"contentName":"source.puppet","end":"}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.puppet"}},"name":"meta.embedded.line.puppet","patterns":[{"include":"$self"}]},{"begin":"(\\\\${)(_[a-zA-Z0-9_]*)","beginCaptures":{"1":{"name":"punctuation.section.embedded.begin.puppet"},"2":{"name":"source.puppet variable.other.readwrite.global.puppet"}},"contentName":"source.puppet","end":"}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.puppet"}},"name":"meta.embedded.line.puppet","patterns":[{"include":"$self"}]},{"begin":"(\\\\${)(([a-z][a-z0-9_]*)?(?:::[a-z][a-z0-9_]*)*)","beginCaptures":{"1":{"name":"punctuation.section.embedded.begin.puppet"},"2":{"name":"source.puppet variable.other.readwrite.global.puppet"}},"contentName":"source.puppet","end":"}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.puppet"}},"name":"meta.embedded.line.puppet","patterns":[{"include":"$self"}]},{"begin":"\\\\${","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.puppet"}},"contentName":"source.puppet","end":"}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.puppet"}},"name":"meta.embedded.line.puppet","patterns":[{"include":"$self"}]}]},"keywords":{"captures":{"1":{"name":"keyword.puppet"}},"match":"\\\\b(undef)\\\\b"},"line_comment":{"patterns":[{"captures":{"1":{"name":"comment.line.number-sign.puppet"},"2":{"name":"punctuation.definition.comment.puppet"}},"match":"^((#).*$\\\\n?)","name":"meta.comment.full-line.puppet"},{"captures":{"1":{"name":"punctuation.definition.comment.puppet"}},"match":"(#).*$\\\\n?","name":"comment.line.number-sign.puppet"}]},"nested_braces":{"begin":"\\\\{","captures":{"1":{"name":"punctuation.section.scope.puppet"}},"end":"\\\\}","patterns":[{"include":"#escaped_char"},{"include":"#nested_braces"}]},"nested_braces_interpolated":{"begin":"\\\\{","captures":{"1":{"name":"punctuation.section.scope.puppet"}},"end":"\\\\}","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_braces_interpolated"}]},"nested_brackets":{"begin":"\\\\[","captures":{"1":{"name":"punctuation.section.scope.puppet"}},"end":"\\\\]","patterns":[{"include":"#escaped_char"},{"include":"#nested_brackets"}]},"nested_brackets_interpolated":{"begin":"\\\\[","captures":{"1":{"name":"punctuation.section.scope.puppet"}},"end":"\\\\]","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_brackets_interpolated"}]},"nested_parens":{"begin":"\\\\(","captures":{"1":{"name":"punctuation.section.scope.puppet"}},"end":"\\\\)","patterns":[{"include":"#escaped_char"},{"include":"#nested_parens"}]},"nested_parens_interpolated":{"begin":"\\\\(","captures":{"1":{"name":"punctuation.section.scope.puppet"}},"end":"\\\\)","patterns":[{"include":"#escaped_char"},{"include":"#variable"},{"include":"#nested_parens_interpolated"}]},"numbers":{"patterns":[{"comment":"HEX 0x 0-f","match":"(?<!\\\\w|\\\\d)([-+]?)(?i:0x)(?i:[0-9a-f])+(?!\\\\w|\\\\d)","name":"constant.numeric.hexadecimal.puppet"},{"comment":"INTEGERS [(+|-)] digits [e [(+|-)] digits]","match":"(?<!\\\\w|\\\\.)([-+]?)(?<!\\\\d)\\\\d+(?i:e(\\\\+|-){0,1}\\\\d+){0,1}(?!\\\\w|\\\\d|\\\\.)","name":"constant.numeric.integer.puppet"},{"comment":"FLOAT [(+|-)] digits . digits [e [(+|-)] digits]","match":"(?<!\\\\w)([-+]?)\\\\d+\\\\.\\\\d+(?i:e(\\\\+|-){0,1}\\\\d+){0,1}(?!\\\\w|\\\\d)","name":"constant.numeric.integer.puppet"}]},"parameter-default-types":{"patterns":[{"include":"#strings"},{"include":"#numbers"},{"include":"#variable"},{"include":"#hash"},{"include":"#array"},{"include":"#function_call"},{"include":"#constants"},{"include":"#puppet-datatypes"}]},"puppet-datatypes":{"patterns":[{"comment":"Puppet Data type","match":"(?<![a-zA-Z\\\\$])([A-Z][a-zA-Z0-9_]*)(?![a-zA-Z0-9_])","name":"storage.type.puppet"}]},"regex-literal":{"comment":"Puppet Regular expression literal without interpolation","match":"(\\\\/)(.+?)(?:[^\\\\\\\\]\\\\/)","name":"string.regexp.literal.puppet"},"resource-definition":{"begin":"(?:^|\\\\b)(::[a-z][a-z0-9_]*|[a-z][a-z0-9_]*|(?:[a-z][a-z0-9_]*)?(?:::[a-z][a-z0-9_]*)+)\\\\s*({)\\\\s*","beginCaptures":{"1":{"name":"meta.definition.resource.puppet storage.type.puppet"}},"contentName":"entity.name.section.puppet","end":":","patterns":[{"include":"#strings"},{"include":"#variable"},{"include":"#array"}]},"resource-parameters":{"patterns":[{"captures":{"1":{"name":"variable.other.puppet"},"2":{"name":"punctuation.definition.variable.puppet"}},"match":"((\\\\$+)[a-zA-Z_][a-zA-Z0-9_]*)\\\\s*(?=,|\\\\))","name":"meta.function.argument.puppet"},{"begin":"((\\\\$+)[a-zA-Z_][a-zA-Z0-9_]*)(?:\\\\s*(=)\\\\s*)\\\\s*","captures":{"1":{"name":"variable.other.puppet"},"2":{"name":"punctuation.definition.variable.puppet"},"3":{"name":"keyword.operator.assignment.puppet"}},"end":"(?=,|\\\\))","name":"meta.function.argument.puppet","patterns":[{"include":"#parameter-default-types"}]}]},"single-quoted-string":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.puppet"}},"end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.puppet"}},"name":"string.quoted.single.puppet","patterns":[{"include":"#escaped_char"}]},"strings":{"patterns":[{"include":"#double-quoted-string"},{"include":"#single-quoted-string"}]},"variable":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.puppet"}},"match":"(\\\\$)(\\\\d+)","name":"variable.other.readwrite.global.pre-defined.puppet"},{"captures":{"1":{"name":"punctuation.definition.variable.puppet"}},"match":"(\\\\$)_[a-zA-Z0-9_]*","name":"variable.other.readwrite.global.puppet"},{"captures":{"1":{"name":"punctuation.definition.variable.puppet"}},"match":"(\\\\$)(([a-z][a-zA-Z0-9_]*)?(?:::[a-z][a-zA-Z0-9_]*)*)","name":"variable.other.readwrite.global.puppet"}]}},"scopeName":"source.puppet"}')),Bie=[_ie]});var m4={};x(m4,{default:()=>vie});var xie,vie,g4=_(()=>{xie=Object.freeze(JSON.parse(`{"displayName":"PureScript","fileTypes":["purs"],"name":"purescript","patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.purescript"},"2":{"name":"punctuation.definition.entity.purescript"}},"match":"(\`)(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*\\\\.)?[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(\`)","name":"keyword.operator.function.infix.purescript"},{"begin":"^\\\\s*\\\\b(module)(?!')\\\\b","beginCaptures":{"1":{"name":"keyword.other.purescript"}},"end":"(where)","endCaptures":{"1":{"name":"keyword.other.purescript"}},"name":"meta.declaration.module.purescript","patterns":[{"include":"#comments"},{"include":"#module_name"},{"include":"#module_exports"},{"match":"[a-z]+","name":"invalid.purescript"}]},{"begin":"^\\\\s*\\\\b(class)(?!')\\\\b","beginCaptures":{"1":{"name":"storage.type.class.purescript"}},"end":"\\\\b(where)\\\\b|$","endCaptures":{"1":{"name":"keyword.other.purescript"}},"name":"meta.declaration.typeclass.purescript","patterns":[{"include":"#type_signature"}]},{"begin":"^\\\\s*\\\\b(else\\\\s+)?(derive\\\\s+)?(newtype\\\\s+)?(instance)(?!')\\\\b","beginCaptures":{"1":{"name":"keyword.other.purescript"},"2":{"name":"keyword.other.purescript"},"3":{"name":"keyword.other.purescript"},"4":{"name":"keyword.other.purescript"}},"contentName":"meta.type-signature.purescript","end":"\\\\b(where)\\\\b|$","endCaptures":{"1":{"name":"keyword.other.purescript"}},"name":"meta.declaration.instance.purescript","patterns":[{"include":"#type_signature"}]},{"begin":"^(\\\\s*)(foreign)\\\\s+(import)\\\\s+(data)\\\\s+([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)","beginCaptures":{"2":{"name":"keyword.other.purescript"},"3":{"name":"keyword.other.purescript"},"4":{"name":"keyword.other.purescript"},"5":{"name":"entity.name.type.purescript"},"6":{"name":"keyword.other.double-colon.purescript"}},"contentName":"meta.kind-signature.purescript","end":"^(?!\\\\1[ \\\\t]|[ \\\\t]*$)","name":"meta.foreign.data.purescript","patterns":[{"include":"#double_colon"},{"include":"#kind_signature"}]},{"begin":"^(\\\\s*)(foreign)\\\\s+(import)\\\\s+([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)","beginCaptures":{"2":{"name":"keyword.other.purescript"},"3":{"name":"keyword.other.purescript"},"4":{"name":"entity.name.function.purescript"}},"contentName":"meta.type-signature.purescript","end":"^(?!\\\\1[ \\\\t]|[ \\\\t]*$)","name":"meta.foreign.purescript","patterns":[{"include":"#double_colon"},{"include":"#type_signature"}]},{"begin":"^\\\\s*\\\\b(import)(?!')\\\\b","beginCaptures":{"1":{"name":"keyword.other.purescript"}},"end":"($|(?=--))","name":"meta.import.purescript","patterns":[{"include":"#module_name"},{"include":"#module_exports"},{"captures":{"1":{"name":"keyword.other.purescript"}},"match":"\\\\b(as|hiding)\\\\b"}]},{"begin":"^(\\\\s)*(data|newtype)\\\\s+(.+?)\\\\s*(?=\\\\=|$)","beginCaptures":{"2":{"name":"storage.type.data.purescript"},"3":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}},"end":"^(?!\\\\1[ \\\\t]|[ \\\\t]*$)","name":"meta.declaration.type.data.purescript","patterns":[{"include":"#comments"},{"captures":{"0":{"name":"keyword.operator.assignment.purescript"}},"match":"="},{"captures":{"1":{"patterns":[{"include":"#data_ctor"}]},"2":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}},"match":"(?:(?:\\\\b([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*)\\\\s+)(?:(?<ctorArgs>(?:(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*|(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*\\\\.)?[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*|(?:(?:[\\\\w()'\u2192\u21D2\\\\[\\\\],]|->|=>)+\\\\s*)+))(?:\\\\s*(?:\\\\s+)\\\\s*\\\\g<ctorArgs>)?)?))"},{"captures":{"0":{"name":"punctuation.separator.pipe.purescript"}},"match":"\\\\|"},{"include":"#record_types"}]},{"begin":"^(\\\\s)*(type)\\\\s+(.+?)\\\\s*(?=\\\\=|$)","beginCaptures":{"2":{"name":"storage.type.data.purescript"},"3":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}},"contentName":"meta.type-signature.purescript","end":"^(?!\\\\1[ \\\\t]|[ \\\\t]*$)","name":"meta.declaration.type.type.purescript","patterns":[{"captures":{"0":{"name":"keyword.operator.assignment.purescript"}},"match":"="},{"include":"#type_signature"},{"include":"#record_types"},{"include":"#comments"}]},{"match":"^\\\\s*\\\\b(derive|where|data|type|newtype|infix[lr]?|foreign(\\\\s+import)?(\\\\s+data)?)(?!')\\\\b","name":"keyword.other.purescript"},{"match":"\\\\?(?:[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*|[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)","name":"entity.name.function.typed-hole.purescript"},{"match":"^\\\\s*\\\\b(data|type|newtype)(?!')\\\\b","name":"storage.type.purescript"},{"match":"\\\\b(do|ado|if|then|else|case|of|let|in)(?!('|\\\\s*(:|=)))\\\\b","name":"keyword.control.purescript"},{"match":"\\\\b(?<!\\\\$)0(x|X)[0-9a-fA-F]+\\\\b(?!\\\\$)","name":"constant.numeric.hex.purescript"},{"captures":{"0":{"name":"constant.numeric.decimal.purescript"},"1":{"name":"meta.delimiter.decimal.period.purescript"},"2":{"name":"meta.delimiter.decimal.period.purescript"},"3":{"name":"meta.delimiter.decimal.period.purescript"},"4":{"name":"meta.delimiter.decimal.period.purescript"},"5":{"name":"meta.delimiter.decimal.period.purescript"},"6":{"name":"meta.delimiter.decimal.period.purescript"}},"match":"(?<!\\\\$)(?:(?:\\\\b[0-9]+(\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\b)|(?:\\\\b[0-9]+[eE][+-]?[0-9]+\\\\b)|(?:\\\\b[0-9]+(\\\\.)[0-9]+\\\\b)|(?:\\\\b[0-9]+\\\\b(?!\\\\.)))(?!\\\\$)","name":"constant.numeric.decimal.purescript"},{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.purescript"},{"match":"\\\\b(([0-9]+_?)*[0-9]+|0([xX][0-9a-fA-F]+|[oO][0-7]+))\\\\b","name":"constant.numeric.purescript"},{"begin":"\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.purescript"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.purescript"}},"name":"string.quoted.triple.purescript"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.purescript"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.purescript"}},"name":"string.quoted.double.purescript","patterns":[{"include":"#characters"},{"begin":"\\\\\\\\\\\\s","beginCaptures":{"0":{"name":"markup.other.escape.newline.begin.purescript"}},"end":"\\\\\\\\","endCaptures":{"0":{"name":"markup.other.escape.newline.end.purescript"}},"patterns":[{"match":"\\\\S+","name":"invalid.illegal.character-not-allowed-here.purescript"}]}]},{"match":"\\\\\\\\$","name":"markup.other.escape.newline.purescript"},{"captures":{"1":{"name":"punctuation.definition.string.begin.purescript"},"2":{"patterns":[{"include":"#characters"}]},"7":{"name":"punctuation.definition.string.end.purescript"}},"match":"(')((?:[ -\\\\[\\\\]-~]|(\\\\\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\"'\\\\&]))|(\\\\\\\\o[0-7]+)|(\\\\\\\\x[0-9A-Fa-f]+)|(\\\\^[A-Z@\\\\[\\\\]\\\\\\\\\\\\^_])))(')","name":"string.quoted.single.purescript"},{"include":"#function_type_declaration"},{"captures":{"1":{"patterns":[{"include":"$self"}]},"2":{"name":"keyword.other.double-colon.purescript"},"3":{"name":"meta.type-signature.purescript","patterns":[{"include":"#type_signature"}]}},"match":"\\\\((?<paren>(?:[^()]|\\\\(\\\\g<paren>\\\\))*)(::|\u2237)(?<paren2>(?:[^()]|\\\\(\\\\g<paren2>\\\\))*)\\\\)"},{"begin":"^(\\\\s*)(?:(::|\u2237))","beginCaptures":{"2":{"name":"keyword.other.double-colon.purescript"}},"end":"^(?!\\\\1[ \\\\t]*|[ \\\\t]*$)","patterns":[{"include":"#type_signature"}]},{"include":"#data_ctor"},{"include":"#comments"},{"include":"#infix_op"},{"match":"\\\\<-|-\\\\>","name":"keyword.other.arrow.purescript"},{"match":"[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+","name":"keyword.operator.purescript"},{"match":",","name":"punctuation.separator.comma.purescript"}],"repository":{"block_comment":{"patterns":[{"applyEndPatternLast":1,"begin":"\\\\{-\\\\s*\\\\|","beginCaptures":{"0":{"name":"punctuation.definition.comment.documentation.purescript"}},"end":"-\\\\}","endCaptures":{"0":{"name":"punctuation.definition.comment.documentation.purescript"}},"name":"comment.block.documentation.purescript","patterns":[{"include":"#block_comment"}]},{"applyEndPatternLast":1,"begin":"\\\\{-","beginCaptures":{"0":{"name":"punctuation.definition.comment.purescript"}},"end":"-\\\\}","name":"comment.block.purescript","patterns":[{"include":"#block_comment"}]}]},"characters":{"patterns":[{"captures":{"1":{"name":"constant.character.escape.purescript"},"2":{"name":"constant.character.escape.octal.purescript"},"3":{"name":"constant.character.escape.hexadecimal.purescript"},"4":{"name":"constant.character.escape.control.purescript"}},"match":"(?:[ -\\\\[\\\\]-~]|(\\\\\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\"'\\\\&]))|(\\\\\\\\o[0-7]+)|(\\\\\\\\x[0-9A-Fa-f]+)|(\\\\^[A-Z@\\\\[\\\\]\\\\\\\\\\\\^_]))"}]},"class_constraint":{"patterns":[{"captures":{"1":{"patterns":[{"match":"\\\\b[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*","name":"entity.name.type.purescript"}]},"2":{"patterns":[{"include":"#type_name"},{"include":"#generic_type"}]}},"match":"(?:(?:([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*)\\\\s+)(?:(?<classConstraint>(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*|(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*\\\\.)?[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)(?:\\\\s*(?:\\\\s+)\\\\s*\\\\g<classConstraint>)?)))","name":"meta.class-constraint.purescript"}]},"comments":{"patterns":[{"begin":"(^[ \\\\t]+)?(?=--+\\\\s+\\\\|)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.purescript"}},"end":"(?!\\\\G)","patterns":[{"begin":"(--+)\\\\s+(\\\\|)","beginCaptures":{"1":{"name":"punctuation.definition.comment.purescript"},"2":{"name":"punctuation.definition.comment.documentation.purescript"}},"end":"\\\\n","name":"comment.line.double-dash.documentation.purescript"}]},{"begin":"(^[ \\\\t]+)?(?=--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]))","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.purescript"}},"end":"(?!\\\\G)","patterns":[{"begin":"--","beginCaptures":{"0":{"name":"punctuation.definition.comment.purescript"}},"end":"\\\\n","name":"comment.line.double-dash.purescript"}]},{"include":"#block_comment"}]},"data_ctor":{"patterns":[{"match":"\\\\b[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*","name":"entity.name.tag.purescript"}]},"double_colon":{"patterns":[{"match":"(?:::|\u2237)","name":"keyword.other.double-colon.purescript"}]},"function_type_declaration":{"patterns":[{"begin":"^(\\\\s*)([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\\\s*(?:(::|\u2237)(?!.*<-))","beginCaptures":{"2":{"name":"entity.name.function.purescript"},"3":{"name":"keyword.other.double-colon.purescript"}},"contentName":"meta.type-signature.purescript","end":"^(?!\\\\1[ \\\\t]|[ \\\\t]*$)","name":"meta.function.type-declaration.purescript","patterns":[{"include":"#double_colon"},{"include":"#type_signature"}]}]},"generic_type":{"patterns":[{"match":"\\\\b(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*\\\\.)?[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*","name":"variable.other.generic-type.purescript"}]},"infix_op":{"patterns":[{"match":"(?:\\\\((?!--+\\\\))[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]\`{}_\\"']]+\\\\))","name":"entity.name.function.infix.purescript"}]},"kind_signature":{"patterns":[{"match":"\\\\*","name":"keyword.other.star.purescript"},{"match":"!","name":"keyword.other.exclaimation-point.purescript"},{"match":"#","name":"keyword.other.pound-sign.purescript"},{"match":"->|\u2192","name":"keyword.other.arrow.purescript"}]},"module_exports":{"patterns":[{"begin":"\\\\(","end":"\\\\)","name":"meta.declaration.exports.purescript","patterns":[{"include":"#comments"},{"match":"\\\\b(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*\\\\.)?[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*","name":"entity.name.function.purescript"},{"include":"#type_name"},{"match":",","name":"punctuation.separator.comma.purescript"},{"include":"#infix_op"},{"match":"\\\\(.*?\\\\)","name":"meta.other.constructor-list.purescript"}]}]},"module_name":{"patterns":[{"match":"(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*\\\\.)*[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*\\\\.?","name":"support.other.module.purescript"}]},"record_field_declaration":{"patterns":[{"begin":"([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\\\s*(::|\u2237)","beginCaptures":{"1":{"patterns":[{"match":"(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*\\\\.)?[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*","name":"entity.other.attribute-name.purescript"}]},"2":{"name":"keyword.other.double-colon.purescript"}},"contentName":"meta.type-signature.purescript","end":"(?=([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\\\s*(::|\u2237)|})","name":"meta.record-field.type-declaration.purescript","patterns":[{"include":"#type_signature"},{"include":"#record_types"}]}]},"record_types":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"keyword.operator.type.record.begin.purescript"}},"end":"\\\\}","endCaptures":{"0":{"name":"keyword.operator.type.record.end.purescript"}},"name":"meta.type.record.purescript","patterns":[{"match":",","name":"punctuation.separator.comma.purescript"},{"include":"#record_field_declaration"},{"include":"#comments"}]}]},"type_name":{"patterns":[{"match":"\\\\b[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*","name":"entity.name.type.purescript"}]},"type_signature":{"patterns":[{"captures":{"1":{"patterns":[{"include":"#class_constraint"}]},"4":{"name":"keyword.other.big-arrow.purescript"}},"match":"(?:(?:\\\\()(?:(?<classConstraints>(?:(?:(?:([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*)\\\\s+)(?:(?<classConstraint>(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*|(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*\\\\.)?[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)(?:\\\\s*(?:\\\\s+)\\\\s*\\\\g<classConstraint>)?))))(?:\\\\s*(?:,)\\\\s*\\\\g<classConstraints>)?))(?:\\\\))(?:\\\\s*(=>|<=|\u21D0|\u21D2)))","name":"meta.class-constraints.purescript"},{"captures":{"1":{"patterns":[{"include":"#class_constraint"}]},"4":{"name":"keyword.other.big-arrow.purescript"}},"match":"((?:(?:([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*)\\\\s+)(?:(?<classConstraint>(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*|(?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?:\\\\.[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)*\\\\.)?[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)(?:\\\\s*(?:\\\\s+)\\\\s*\\\\g<classConstraint>)?))))\\\\s*(=>|<=|\u21D0|\u21D2)","name":"meta.class-constraints.purescript"},{"match":"->|\u2192","name":"keyword.other.arrow.purescript"},{"match":"=>|\u21D2","name":"keyword.other.big-arrow.purescript"},{"match":"<=|\u21D0","name":"keyword.other.big-arrow-left.purescript"},{"match":"forall|\u2200","name":"keyword.other.forall.purescript"},{"include":"#generic_type"},{"include":"#type_name"},{"include":"#comments"}]}},"scopeName":"source.purescript"}`)),vie=[xie]});var f4={};x(f4,{default:()=>Qie});var Eie,Qie,b4=_(()=>{Qe();Eie=Object.freeze(JSON.parse(`{"displayName":"QML","name":"qml","patterns":[{"match":"\\\\bpragma\\\\s+Singleton\\\\b","name":"constant.language.qml"},{"include":"#import-statements"},{"include":"#object"},{"include":"#comment"}],"repository":{"attributes-dictionary":{"patterns":[{"include":"#typename"},{"include":"#keywords"},{"include":"#identifier"},{"include":"#attributes-value"},{"include":"#comment"}]},"attributes-value":{"patterns":[{"begin":"(?<=\\\\w)\\\\s*\\\\:\\\\s*(?=[A-Z]\\\\w*\\\\s*\\\\{)","description":"A QML object as value.","end":"(?<=\\\\})","patterns":[{"include":"#object"}]},{"begin":"(?<=\\\\w)\\\\s*\\\\:\\\\s*\\\\[","description":"A list as value.","end":"\\\\](.*)$","endCaptures":{"0":{"patterns":[{"include":"source.js"}]}},"patterns":[{"include":"#object"},{"include":"source.js"}]},{"begin":"(?<=\\\\w)\\\\s*\\\\:(?=\\\\s*\\\\{?\\\\s*$)","description":"A block of JavaScript code as value.","end":"(?<=\\\\})","patterns":[{"begin":"\\\\{","contentName":"meta.embedded.block.js","end":"\\\\}","patterns":[{"include":"source.js"}]}]},{"begin":"(?<=\\\\w)\\\\s*\\\\:","contentName":"meta.embedded.line.js","description":"A JavaScript expression as value.","end":";|$|(?=\\\\})","patterns":[{"include":"source.js"}]}]},"comment":{"patterns":[{"begin":"(\\\\/\\\\/:)","beginCaptures":{"1":{"name":"storage.type.class.qml.tr"}},"end":"$","patterns":[{"include":"#comment-contents"}]},{"begin":"(\\\\/\\\\/[~|=])\\\\s*([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","beginCaptures":{"1":{"name":"storage.type.class.qml.tr"},"2":{"name":"variable.other.qml.tr"}},"end":"$","patterns":[{"include":"#comment-contents"}]},{"begin":"(\\\\/\\\\/)","beginCaptures":{"1":{"name":"comment.line.double-slash.qml"}},"end":"$","patterns":[{"include":"#comment-contents"}]},{"begin":"(\\\\/\\\\*)","beginCaptures":{"1":{"name":"comment.line.double-slash.qml"}},"end":"(\\\\*\\\\/)","endCaptures":{"1":{"name":"comment.line.double-slash.qml"}},"patterns":[{"include":"#comment-contents"}]}]},"comment-contents":{"patterns":[{"match":"\\\\b(TODO|DEBUG|XXX)\\\\b","name":"constant.language.qml"},{"match":"\\\\b(BUG|FIXME)\\\\b","name":"invalid"},{"match":".","name":"comment.line.double-slash.qml"}]},"data-types":{"patterns":[{"description":"QML basic data types.","match":"\\\\b(bool|double|enum|int|list|real|string|url|variant|var)\\\\b","name":"storage.type.qml"},{"description":"QML modules basic data types.","match":"\\\\b(date|point|rect|size)\\\\b","name":"support.type.qml"}]},"group-attributes":{"patterns":[{"begin":"\\\\b([_a-zA-Z]\\\\w*)\\\\s*\\\\{","beginCaptures":{"1":{"name":"variable.parameter.qml"}},"end":"\\\\}","patterns":[{"include":"$self"},{"include":"#comment"},{"include":"#attributes-dictionary"}]}]},"identifier":{"description":"The name of variable, key, signal and etc.","patterns":[{"match":"\\\\b[_a-zA-Z]\\\\w*\\\\b","name":"variable.parameter.qml"}]},"import-statements":{"patterns":[{"begin":"\\\\b(import)\\\\b","beginCaptures":{"1":{"name":"keyword.control.import.qml"}},"end":"$","patterns":[{"match":"\\\\bas\\\\b","name":"keyword.control.as.qml"},{"include":"#string"},{"description":"<Version.Number>","match":"\\\\b\\\\d+\\\\.\\\\d+\\\\b","name":"constant.numeric.qml"},{"description":"as <Namespace>","match":"(?<=as)\\\\s+[A-Z]\\\\w*\\\\b","name":"entity.name.type.qml"},{"include":"#identifier"},{"include":"#comment"}]}]},"keywords":{"patterns":[{"include":"#data-types"},{"include":"#reserved-words"}]},"method-attributes":{"patterns":[{"begin":"\\\\b(function)\\\\b","beginCaptures":{"1":{"name":"storage.type.qml"}},"end":"(?<=\\\\})","patterns":[{"begin":"([_a-zA-Z]\\\\w*)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.qml"}},"end":"\\\\)","patterns":[{"include":"#identifier"}]},{"begin":"\\\\{","contentName":"meta.embedded.block.js","end":"\\\\}","patterns":[{"include":"source.js"}]}]}]},"object":{"patterns":[{"begin":"\\\\b([A-Z]\\\\w*)\\\\s*\\\\{","beginCaptures":{"1":{"name":"entity.name.type.qml"}},"end":"\\\\}","patterns":[{"include":"$self"},{"include":"#group-attributes"},{"include":"#method-attributes"},{"include":"#signal-attributes"},{"include":"#comment"},{"include":"#attributes-dictionary"}]}]},"reserved-words":{"patterns":[{"description":"Attribute modifier.","match":"\\\\b(default|alias|readonly|required)\\\\b","name":"storage.modifier.qml"},{"match":"\\\\b(property|id|on)\\\\b","name":"keyword.other.qml"},{"description":"Special words for signal handlers including property change.","match":"\\\\b(on[A-Z]\\\\w*(Changed)?)\\\\b","name":"keyword.control.qml"}]},"signal-attributes":{"patterns":[{"begin":"\\\\b(signal)\\\\b","beginCaptures":{"1":{"name":"storage.type.qml"}},"end":"$","patterns":[{"begin":"([_a-zA-Z]\\\\w*)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.qml"}},"end":"\\\\)","patterns":[{"include":"#keywords"},{"include":"#identifier"}]},{"include":"#identifier"},{"include":"#comment"}]}]},"string":{"description":"String literal with double or signle quote.","patterns":[{"begin":"'","end":"'","name":"string.quoted.single.qml"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.qml"}]},"typename":{"description":"The name of type. First letter must be uppercase.","patterns":[{"match":"\\\\b[A-Z]\\\\w*\\\\b","name":"entity.name.type.qml"}]}},"scopeName":"source.qml","embeddedLangs":["javascript"]}`)),Qie=[...J,Eie]});var h4={};x(h4,{default:()=>Die});var Iie,Die,y4=_(()=>{Iie=Object.freeze(JSON.parse('{"displayName":"QML Directory","name":"qmldir","patterns":[{"include":"#comment"},{"include":"#keywords"},{"include":"#version"},{"include":"#names"}],"repository":{"comment":{"patterns":[{"begin":"#","end":"$","name":"comment.line.number-sign.qmldir"}]},"file-name":{"patterns":[{"match":"\\\\b\\\\w+\\\\.(qmltypes|qml|js)\\\\b","name":"string.unquoted.qmldir"}]},"identifier":{"patterns":[{"match":"\\\\b\\\\w+\\\\b","name":"variable.parameter.qmldir"}]},"keywords":{"patterns":[{"match":"\\\\b(module|singleton|internal|plugin|classname|typeinfo|depends|designersupported)\\\\b","name":"keyword.other.qmldir"}]},"module-name":{"patterns":[{"match":"\\\\b[A-Z]\\\\w*\\\\b","name":"entity.name.type.qmldir"}]},"names":{"patterns":[{"include":"#file-name"},{"include":"#module-name"},{"include":"#identifier"}]},"version":{"patterns":[{"match":"\\\\b\\\\d+\\\\.\\\\d+\\\\b","name":"constant.numeric.qml"}]}},"scopeName":"source.qmldir"}')),Die=[Iie]});var w4={};x(w4,{default:()=>Sie});var Fie,Sie,k4=_(()=>{Fie=Object.freeze(JSON.parse(`{"displayName":"Qt Style Sheets","name":"qss","patterns":[{"include":"#comment-block"},{"include":"#rule-list"},{"include":"#selector"}],"repository":{"color":{"patterns":[{"begin":"\\\\b(rgb|rgba|hsv|hsva|hsl|hsla)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.qss"}},"description":"Color Type","end":"\\\\)","patterns":[{"include":"#comment-block"},{"include":"#number"}]},{"match":"\\\\b(white|black|red|darkred|green|darkgreen|blue|darkblue|cyan|darkcyan|magenta|darkmagenta|yellow|darkyellow|gray|darkgray|lightgray|transparent|color0|color1)\\\\b","name":"support.constant.property-value.named-color.qss"},{"match":"#([0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})\\\\b","name":"support.constant.property-value.color.qss"}]},"comment-block":{"patterns":[{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.qss"}]},"icon-properties":{"patterns":[{"match":"\\\\b(backward-icon|cd-icon|computer-icon|desktop-icon|dialog-apply-icon|dialog-cancel-icon|dialog-close-icon|dialog-discard-icon|dialog-help-icon|dialog-no-icon|dialog-ok-icon|dialog-open-icon|dialog-reset-icon|dialog-save-icon|dialog-yes-icon|directory-closed-icon|directory-icon|directory-link-icon|directory-open-icon|dockwidget-close-icon|downarrow-icon|dvd-icon|file-icon|file-link-icon|filedialog-contentsview-icon|filedialog-detailedview-icon|filedialog-end-icon|filedialog-infoview-icon|filedialog-listview-icon|filedialog-new-directory-icon|filedialog-parent-directory-icon|filedialog-start-icon|floppy-icon|forward-icon|harddisk-icon|home-icon|leftarrow-icon|messagebox-critical-icon|messagebox-information-icon|messagebox-question-icon|messagebox-warning-icon|network-icon|rightarrow-icon|titlebar-contexthelp-icon|titlebar-maximize-icon|titlebar-menu-icon|titlebar-minimize-icon|titlebar-normal-icon|titlebar-close-icon|titlebar-shade-icon|titlebar-unshade-icon|trash-icon|uparrow-icon)\\\\b","name":"support.type.property-name.qss"}]},"id-selector":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.qss"},"2":{"name":"entity.name.tag.qss"}},"match":"(#)([a-zA-Z][a-zA-Z0-9_-]*)"}]},"number":{"patterns":[{"description":"floating number","match":"\\\\b(\\\\d+)?\\\\.(\\\\d+)\\\\b","name":"constant.numeric.qss"},{"description":"percentage","match":"\\\\b(\\\\d+)%","name":"constant.numeric.qss"},{"description":"length","match":"\\\\b(\\\\d+)(px|pt|em|ex)?\\\\b","name":"constant.numeric.qss"},{"description":"integer","match":"\\\\b(\\\\d+)\\\\b","name":"constant.numeric.qss"}]},"properties":{"patterns":[{"include":"#property-values"},{"match":"\\\\b(paint-alternating-row-colors-for-empty-area|dialogbuttonbox-buttons-have-icons|titlebar-show-tooltips-on-buttons|messagebox-text-interaction-flags|lineedit-password-mask-delay|outline-bottom-right-radius|lineedit-password-character|selection-background-color|outline-bottom-left-radius|border-bottom-right-radius|alternate-background-color|widget-animation-duration|border-bottom-left-radius|show-decoration-selected|outline-top-right-radius|outline-top-left-radius|border-top-right-radius|border-top-left-radius|background-attachment|subcontrol-position|border-bottom-width|border-bottom-style|border-bottom-color|background-position|border-right-width|border-right-style|border-right-color|subcontrol-origin|border-left-width|border-left-style|border-left-color|background-origin|background-repeat|border-top-width|border-top-style|border-top-color|background-image|background-color|text-decoration|selection-color|background-clip|padding-bottom|outline-radius|outline-offset|image-position|gridline-color|padding-right|outline-style|outline-color|margin-bottom|button-layout|border-radius|border-bottom|padding-left|margin-right|border-width|border-style|border-image|border-color|border-right|padding-top|margin-left|font-weight|font-family|border-left|text-align|min-height|max-height|margin-top|font-style|border-top|background|min-width|max-width|icon-size|font-size|position|spacing|padding|outline|opacity|margin|height|bottom|border|width|right|image|color|left|font|top)\\\\b","name":"support.type.property-name.qss"},{"include":"#icon-properties"}]},"property-selector":{"patterns":[{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#comment-block"},{"include":"#string"},{"match":"\\\\b[_a-zA-Z]\\\\w*\\\\b","name":"variable.parameter.qml"}]}]},"property-values":{"patterns":[{"begin":":","end":";|(?=\\\\})","patterns":[{"include":"#comment-block"},{"include":"#color"},{"begin":"\\\\b(qlineargradient|qradialgradient|qconicalgradient)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.qss"}},"description":"Gradient Type","end":"\\\\)","patterns":[{"include":"#comment-block"},{"match":"\\\\b(x1|y1|x2|y2|stop|angle|radius|cx|cy|fx|fy)\\\\b","name":"variable.parameter.qss"},{"include":"#color"},{"include":"#number"}]},{"begin":"\\\\b(url)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function.qss"}},"contentName":"string.unquoted.qss","description":"URL Type","end":"\\\\)"},{"match":"\\\\bpalette\\\\s*(?=\\\\()\\\\b","name":"entity.name.function.qss"},{"match":"\\\\b(highlighted-text|alternate-base|line-through|link-visited|dot-dot-dash|window-text|button-text|bright-text|underline|no-repeat|highlight|overline|absolute|relative|repeat-y|repeat-x|midlight|selected|disabled|dot-dash|content|padding|oblique|stretch|repeat|window|shadow|button|border|margin|active|italic|normal|outset|groove|double|dotted|dashed|repeat|scroll|center|bottom|light|solid|ridge|inset|fixed|right|text|link|dark|base|bold|none|left|mid|off|top|on)\\\\b","name":"support.constant.property-value.qss"},{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.qss"},{"include":"#string"},{"include":"#number"}]}]},"pseudo-states":{"patterns":[{"match":"\\\\b(active|adjoins-item|alternate|bottom|checked|closable|closed|default|disabled|editable|edit-focus|enabled|exclusive|first|flat|floatable|focus|has-children|has-siblings|horizontal|hover|indeterminate|last|left|maximized|middle|minimized|movable|no-frame|non-exclusive|off|on|only-one|open|next-selected|pressed|previous-selected|read-only|right|selected|top|unchecked|vertical|window)\\\\b","name":"keyword.control.qss"}]},"rule-list":{"patterns":[{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#comment-block"},{"include":"#properties"},{"include":"#icon-properties"}]}]},"selector":{"patterns":[{"include":"#stylable-widgets"},{"include":"#sub-controls"},{"include":"#pseudo-states"},{"include":"#property-selector"},{"include":"#id-selector"}]},"string":{"description":"String literal with double or signle quote.","patterns":[{"begin":"'","end":"'","name":"string.quoted.single.qml"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.qml"}]},"stylable-widgets":{"patterns":[{"match":"\\\\b(QAbstractScrollArea|QAbstractItemView|QCheckBox|QColumnView|QComboBox|QDateEdit|QDateTimeEdit|QDialog|QDialogButtonBox|QDockWidget|QDoubleSpinBox|QFrame|QGroupBox|QHeaderView|QLabel|QLineEdit|QListView|QListWidget|QMainWindow|QMenu|QMenuBar|QMessageBox|QProgressBar|QPlainTextEdit|QPushButton|QRadioButton|QScrollBar|QSizeGrip|QSlider|QSpinBox|QSplitter|QStatusBar|QTabBar|QTabWidget|QTableView|QTableWidget|QTextEdit|QTimeEdit|QToolBar|QToolButton|QToolBox|QToolTip|QTreeView|QTreeWidget|QWidget)\\\\b","name":"entity.name.type.qss"}]},"sub-controls":{"patterns":[{"match":"\\\\b(add-line|add-page|branch|chunk|close-button|corner|down-arrow|down-button|drop-down|float-button|groove|indicator|handle|icon|item|left-arrow|left-corner|menu-arrow|menu-button|menu-indicator|right-arrow|pane|right-corner|scroller|section|separator|sub-line|sub-page|tab|tab-bar|tear|tearoff|text|title|up-arrow|up-button)\\\\b","name":"entity.other.inherited-class.qss"}]}},"scopeName":"source.qss"}`)),Sie=[Fie]});var C4={};x(C4,{default:()=>Nie});var Oie,Nie,_4=_(()=>{Oie=Object.freeze(JSON.parse(`{"displayName":"Racket","name":"racket","patterns":[{"include":"#comment"},{"include":"#not-atom"},{"include":"#atom"},{"include":"#quote"},{"match":"^#lang","name":"keyword.other.racket"}],"repository":{"args":{"patterns":[{"include":"#keyword"},{"include":"#comment"},{"include":"#default-args"},{"match":"[^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*","name":"variable.parameter.racket"}]},"argument":{"patterns":[{"begin":"(?<=[(\\\\[{])\\\\s*(\\\\|)","beginCaptures":{"1":{"name":"punctuation.verbatim.begin.racket"}},"contentName":"variable.parameter.racket","end":"\\\\|","endCaptures":{"0":"punctuation.verbatim.end.racket"}},{"begin":"(?<=[(\\\\[{])\\\\s*(\\\\#%|\\\\\\\\\\\\ |[^\\\\#()\\\\[\\\\]{}\\",'\`;\\\\s])","beginCaptures":{"1":{"name":"variable.parameter.racket"}},"contentName":"variable.parameter.racket","end":"(?=[()\\\\[\\\\]{}\\",'\`;\\\\s])","patterns":[{"match":"\\\\\\\\ "},{"begin":"\\\\|","beginCaptures":{"0":"punctuation.verbatim.begin.racket"},"end":"\\\\|","endCaptures":{"0":"punctuation.verbatim.end.racket"}}]}]},"argument-struct":{"patterns":[{"begin":"(?<=[(\\\\[{])\\\\s*(\\\\|)","beginCaptures":{"1":{"name":"punctuation.verbatim.begin.racket"}},"contentName":"variable.other.member.racket","end":"\\\\|","endCaptures":{"0":"punctuation.verbatim.end.racket"}},{"begin":"(?<=[(\\\\[{])\\\\s*(\\\\#%|\\\\\\\\\\\\ |[^\\\\#()\\\\[\\\\]{}\\",'\`;\\\\s])","beginCaptures":{"1":{"name":"variable.other.member.racket"}},"contentName":"variable.other.member.racket","end":"(?=[()\\\\[\\\\]{}\\",'\`;\\\\s])","patterns":[{"match":"\\\\\\\\ "},{"begin":"\\\\|","beginCaptures":{"0":"punctuation.verbatim.begin.racket"},"end":"\\\\|","endCaptures":{"0":"punctuation.verbatim.end.racket"}}]}]},"atom":{"patterns":[{"include":"#bool"},{"include":"#number"},{"include":"#string"},{"include":"#keyword"},{"include":"#character"},{"include":"#symbol"},{"include":"#variable"}]},"base-string":{"patterns":[{"begin":"\\"","beginCaptures":{"0":[{"name":"punctuation.definition.string.begin.racket"}]},"end":"\\"","endCaptures":{"0":[{"name":"punctuation.definition.string.end.racket"}]},"name":"string.quoted.double.racket","patterns":[{"include":"#escape-char"}]}]},"binding":{"patterns":[{"begin":"(?<=[(\\\\[{])\\\\s*(\\\\|)","beginCaptures":{"1":{"name":"punctuation.verbatim.begin.racket"}},"contentName":"entity.name.constant","end":"\\\\|","endCaptures":{"0":"punctuation.verbatim.end.racket"}},{"begin":"(?<=[(\\\\[{])\\\\s*(\\\\#%|\\\\\\\\\\\\ |[^\\\\#()\\\\[\\\\]{}\\",'\`;\\\\s])","beginCaptures":{"1":{"name":"entity.name.constant"}},"contentName":"entity.name.constant","end":"(?=[()\\\\[\\\\]{}\\",'\`;\\\\s])","patterns":[{"match":"\\\\\\\\ "},{"begin":"\\\\|","beginCaptures":{"0":"punctuation.verbatim.begin.racket"},"end":"\\\\|","endCaptures":{"0":"punctuation.verbatim.end.racket"}}]}]},"bool":{"patterns":[{"match":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])\\\\#(?:[tT](?:rue)?|[fF](?:alse)?)(?=[()\\\\[\\\\]{}\\",'\`;\\\\s])","name":"constant.language.racket"}]},"builtin-functions":{"patterns":[{"include":"#format"},{"include":"#define"},{"include":"#lambda"},{"include":"#struct"},{"captures":{"1":{"name":"support.function.racket"}},"match":"(?<=$|[()\\\\[\\\\]{}\\",'\`;\\\\s])(\\\\.\\\\.\\\\.|_|syntax-id-rules|syntax-rules|\\\\#%app|\\\\#%datum|\\\\#%declare|\\\\#%expression|\\\\#%module-begin|\\\\#%plain-app|\\\\#%plain-lambda|\\\\#%plain-module-begin|\\\\#%printing-module-begin|\\\\#%provide|\\\\#%require|\\\\#%stratified-body|\\\\#%top|\\\\#%top-interaction|\\\\#%variable-reference|\\\\.\\\\.\\\\.|:do-in|=>|_|all-defined-out|all-from-out|and|apply|arity-at-least|begin|begin-for-syntax|begin0|call-with-input-file|call-with-input-file\\\\*|call-with-output-file|call-with-output-file\\\\*|case|case-lambda|combine-in|combine-out|cond|date|date\\\\*|define|define-for-syntax|define-logger|define-namespace-anchor|define-sequence-syntax|define-struct|define-struct\\\\/derived|define-syntax|define-syntax-rule|define-syntaxes|define-values|define-values-for-syntax|do|else|except-in|except-out|exn|exn:break|exn:break:hang-up|exn:break:terminate|exn:fail|exn:fail:contract|exn:fail:contract:arity|exn:fail:contract:continuation|exn:fail:contract:divide-by-zero|exn:fail:contract:non-fixnum-result|exn:fail:contract:variable|exn:fail:filesystem|exn:fail:filesystem:errno|exn:fail:filesystem:exists|exn:fail:filesystem:missing-module|exn:fail:filesystem:version|exn:fail:network|exn:fail:network:errno|exn:fail:out-of-memory|exn:fail:read|exn:fail:read:eof|exn:fail:read:non-char|exn:fail:syntax|exn:fail:syntax:missing-module|exn:fail:syntax:unbound|exn:fail:unsupported|exn:fail:user|file|for|for\\\\*|for\\\\*\\\\/and|for\\\\*\\\\/first|for\\\\*\\\\/fold|for\\\\*\\\\/fold\\\\/derived|for\\\\*\\\\/hash|for\\\\*\\\\/hasheq|for\\\\*\\\\/hasheqv|for\\\\*\\\\/last|for\\\\*\\\\/list|for\\\\*\\\\/lists|for\\\\*\\\\/or|for\\\\*\\\\/product|for\\\\*\\\\/sum|for\\\\*\\\\/vector|for-label|for-meta|for-syntax|for-template|for\\\\/and|for\\\\/first|for\\\\/fold|for\\\\/fold\\\\/derived|for\\\\/hash|for\\\\/hasheq|for\\\\/hasheqv|for\\\\/last|for\\\\/list|for\\\\/lists|for\\\\/or|for\\\\/product|for\\\\/sum|for\\\\/vector|gen:custom-write|gen:equal\\\\+hash|if|in-bytes|in-bytes-lines|in-directory|in-hash|in-hash-keys|in-hash-pairs|in-hash-values|in-immutable-hash|in-immutable-hash-keys|in-immutable-hash-pairs|in-immutable-hash-values|in-indexed|in-input-port-bytes|in-input-port-chars|in-lines|in-list|in-mlist|in-mutable-hash|in-mutable-hash-keys|in-mutable-hash-pairs|in-mutable-hash-values|in-naturals|in-port|in-producer|in-range|in-string|in-value|in-vector|in-weak-hash|in-weak-hash-keys|in-weak-hash-pairs|in-weak-hash-values|lambda|let|let\\\\*|let\\\\*-values|let-syntax|let-syntaxes|let-values|let\\\\/cc|let\\\\/ec|letrec|letrec-syntax|letrec-syntaxes|letrec-syntaxes\\\\+values|letrec-values|lib|local-require|log-debug|log-error|log-fatal|log-info|log-warning|module|module\\\\*|module\\\\+|only-in|only-meta-in|open-input-file|open-input-output-file|open-output-file|or|parameterize|parameterize\\\\*|parameterize-break|planet|prefix-in|prefix-out|protect-out|provide|quasiquote|quasisyntax|quasisyntax\\\\/loc|quote|quote-syntax|quote-syntax\\\\/prune|regexp-match\\\\*|regexp-match-peek-positions\\\\*|regexp-match-positions\\\\*|relative-in|rename-in|rename-out|require|set!|set!-values|sort|srcloc|struct|struct-copy|struct-field-index|struct-out|submod|syntax|syntax-case|syntax-case\\\\*|syntax-id-rules|syntax-rules|syntax\\\\/loc|time|unless|unquote|unquote-splicing|unsyntax|unsyntax-splicing|when|with-continuation-mark|with-handlers|with-handlers\\\\*|with-input-from-file|with-output-to-file|with-syntax|\u03BB|\\\\#%app|\\\\#%datum|\\\\#%declare|\\\\#%expression|\\\\#%module-begin|\\\\#%plain-app|\\\\#%plain-lambda|\\\\#%plain-module-begin|\\\\#%printing-module-begin|\\\\#%provide|\\\\#%require|\\\\#%stratified-body|\\\\#%top|\\\\#%top-interaction|\\\\#%variable-reference|->|->\\\\*|->\\\\*m|->d|->dm|->i|->m|\\\\.\\\\.\\\\.|:do-in|<=\\\\/c|=\\\\/c|==|=>|>=\\\\/c|_|absent|abstract|add-between|all-defined-out|all-from-out|and|and\\\\/c|any|any\\\\/c|apply|arity-at-least|arrow-contract-info|augment|augment\\\\*|augment-final|augment-final\\\\*|augride|augride\\\\*|bad-number-of-results|begin|begin-for-syntax|begin0|between\\\\/c|blame-add-context|box-immutable\\\\/c|box\\\\/c|call-with-atomic-output-file|call-with-file-lock\\\\/timeout|call-with-input-file|call-with-input-file\\\\*|call-with-output-file|call-with-output-file\\\\*|case|case->|case->m|case-lambda|channel\\\\/c|char-in\\\\/c|check-duplicates|class|class\\\\*|class-field-accessor|class-field-mutator|class\\\\/c|class\\\\/derived|combine-in|combine-out|command-line|compound-unit|compound-unit\\\\/infer|cond|cons\\\\/c|cons\\\\/dc|continuation-mark-key\\\\/c|contract|contract-exercise|contract-out|contract-struct|contracted|copy-directory\\\\/files|current-contract-region|date|date\\\\*|define|define-compound-unit|define-compound-unit\\\\/infer|define-contract-struct|define-custom-hash-types|define-custom-set-types|define-for-syntax|define-local-member-name|define-logger|define-match-expander|define-member-name|define-module-boundary-contract|define-namespace-anchor|define-opt\\\\/c|define-sequence-syntax|define-serializable-class|define-serializable-class\\\\*|define-signature|define-signature-form|define-struct|define-struct\\\\/contract|define-struct\\\\/derived|define-syntax|define-syntax-rule|define-syntaxes|define-unit|define-unit-binding|define-unit-from-context|define-unit\\\\/contract|define-unit\\\\/new-import-export|define-unit\\\\/s|define-values|define-values-for-export|define-values-for-syntax|define-values\\\\/invoke-unit|define-values\\\\/invoke-unit\\\\/infer|define\\\\/augment|define\\\\/augment-final|define\\\\/augride|define\\\\/contract|define\\\\/final-prop|define\\\\/match|define\\\\/overment|define\\\\/override|define\\\\/override-final|define\\\\/private|define\\\\/public|define\\\\/public-final|define\\\\/pubment|define\\\\/subexpression-pos-prop|define\\\\/subexpression-pos-prop\\\\/name|delay|delay\\\\/idle|delay\\\\/name|delay\\\\/strict|delay\\\\/sync|delay\\\\/thread|delete-directory\\\\/files|dict->list|dict-can-functional-set\\\\?|dict-can-remove-keys\\\\?|dict-clear|dict-clear!|dict-copy|dict-count|dict-empty\\\\?|dict-for-each|dict-has-key\\\\?|dict-implements\\\\/c|dict-implements\\\\?|dict-iterate-first|dict-iterate-key|dict-iterate-next|dict-iterate-value|dict-keys|dict-map|dict-mutable\\\\?|dict-ref|dict-ref!|dict-remove|dict-remove!|dict-set|dict-set!|dict-set\\\\*|dict-set\\\\*!|dict-update|dict-update!|dict-values|dict\\\\?|display-lines|display-lines-to-file|display-to-file|do|dynamic->\\\\*|dynamic-place|dynamic-place\\\\*|else|eof-evt|except|except-in|except-out|exn|exn:break|exn:break:hang-up|exn:break:terminate|exn:fail|exn:fail:contract|exn:fail:contract:arity|exn:fail:contract:blame|exn:fail:contract:continuation|exn:fail:contract:divide-by-zero|exn:fail:contract:non-fixnum-result|exn:fail:contract:variable|exn:fail:filesystem|exn:fail:filesystem:errno|exn:fail:filesystem:exists|exn:fail:filesystem:missing-module|exn:fail:filesystem:version|exn:fail:network|exn:fail:network:errno|exn:fail:object|exn:fail:out-of-memory|exn:fail:read|exn:fail:read:eof|exn:fail:read:non-char|exn:fail:syntax|exn:fail:syntax:missing-module|exn:fail:syntax:unbound|exn:fail:unsupported|exn:fail:user|export|extends|failure-cont|field|field-bound\\\\?|file|file->bytes|file->bytes-lines|file->lines|file->list|file->string|file->value|find-files|find-relative-path|first-or\\\\/c|flat-contract-with-explanation|flat-murec-contract|flat-rec-contract|for|for\\\\*|for\\\\*\\\\/and|for\\\\*\\\\/async|for\\\\*\\\\/first|for\\\\*\\\\/fold|for\\\\*\\\\/fold\\\\/derived|for\\\\*\\\\/hash|for\\\\*\\\\/hasheq|for\\\\*\\\\/hasheqv|for\\\\*\\\\/last|for\\\\*\\\\/list|for\\\\*\\\\/lists|for\\\\*\\\\/mutable-set|for\\\\*\\\\/mutable-seteq|for\\\\*\\\\/mutable-seteqv|for\\\\*\\\\/or|for\\\\*\\\\/product|for\\\\*\\\\/set|for\\\\*\\\\/seteq|for\\\\*\\\\/seteqv|for\\\\*\\\\/stream|for\\\\*\\\\/sum|for\\\\*\\\\/vector|for\\\\*\\\\/weak-set|for\\\\*\\\\/weak-seteq|for\\\\*\\\\/weak-seteqv|for-label|for-meta|for-syntax|for-template|for\\\\/and|for\\\\/async|for\\\\/first|for\\\\/fold|for\\\\/fold\\\\/derived|for\\\\/hash|for\\\\/hasheq|for\\\\/hasheqv|for\\\\/last|for\\\\/list|for\\\\/lists|for\\\\/mutable-set|for\\\\/mutable-seteq|for\\\\/mutable-seteqv|for\\\\/or|for\\\\/product|for\\\\/set|for\\\\/seteq|for\\\\/seteqv|for\\\\/stream|for\\\\/sum|for\\\\/vector|for\\\\/weak-set|for\\\\/weak-seteq|for\\\\/weak-seteqv|gen:custom-write|gen:dict|gen:equal\\\\+hash|gen:set|gen:stream|generic|get-field|get-preference|hash\\\\/c|hash\\\\/dc|if|implies|import|in-bytes|in-bytes-lines|in-dict|in-dict-keys|in-dict-values|in-directory|in-hash|in-hash-keys|in-hash-pairs|in-hash-values|in-immutable-hash|in-immutable-hash-keys|in-immutable-hash-pairs|in-immutable-hash-values|in-immutable-set|in-indexed|in-input-port-bytes|in-input-port-chars|in-lines|in-list|in-mlist|in-mutable-hash|in-mutable-hash-keys|in-mutable-hash-pairs|in-mutable-hash-values|in-mutable-set|in-naturals|in-port|in-producer|in-range|in-set|in-slice|in-stream|in-string|in-syntax|in-value|in-vector|in-weak-hash|in-weak-hash-keys|in-weak-hash-pairs|in-weak-hash-values|in-weak-set|include|include-at\\\\/relative-to|include-at\\\\/relative-to\\\\/reader|include\\\\/reader|inherit|inherit-field|inherit\\\\/inner|inherit\\\\/super|init|init-depend|init-field|init-rest|inner|inspect|instantiate|integer-in|interface|interface\\\\*|invariant-assertion|invoke-unit|invoke-unit\\\\/infer|lambda|lazy|let|let\\\\*|let\\\\*-values|let-syntax|let-syntaxes|let-values|let\\\\/cc|let\\\\/ec|letrec|letrec-syntax|letrec-syntaxes|letrec-syntaxes\\\\+values|letrec-values|lib|link|list\\\\*of|list\\\\/c|listof|local|local-require|log-debug|log-error|log-fatal|log-info|log-warning|make-custom-hash|make-custom-hash-types|make-custom-set|make-custom-set-types|make-handle-get-preference-locked|make-immutable-custom-hash|make-mutable-custom-set|make-object|make-temporary-file|make-weak-custom-hash|make-weak-custom-set|match|match\\\\*|match\\\\*\\\\/derived|match-define|match-define-values|match-lambda|match-lambda\\\\*|match-lambda\\\\*\\\\*|match-let|match-let\\\\*|match-let\\\\*-values|match-let-values|match-letrec|match-letrec-values|match\\\\/derived|match\\\\/values|member-name-key|mixin|module|module\\\\*|module\\\\+|nand|new|new-\u2200\\\\/c|new-\u2203\\\\/c|non-empty-listof|none\\\\/c|nor|not\\\\/c|object-contract|object\\\\/c|one-of\\\\/c|only|only-in|only-meta-in|open|open-input-file|open-input-output-file|open-output-file|opt\\\\/c|or|or\\\\/c|overment|overment\\\\*|override|override\\\\*|override-final|override-final\\\\*|parameter\\\\/c|parameterize|parameterize\\\\*|parameterize-break|parametric->\\\\/c|pathlist-closure|peek-bytes!-evt|peek-bytes-avail!-evt|peek-bytes-evt|peek-string!-evt|peek-string-evt|peeking-input-port|place|place\\\\*|place\\\\/context|planet|port->bytes|port->bytes-lines|port->lines|port->string|prefix|prefix-in|prefix-out|pretty-format|private|private\\\\*|procedure-arity-includes\\\\/c|process|process\\\\*|process\\\\*\\\\/ports|process\\\\/ports|promise\\\\/c|prompt-tag\\\\/c|prop:dict\\\\/contract|protect-out|provide|provide-signature-elements|provide\\\\/contract|public|public\\\\*|public-final|public-final\\\\*|pubment|pubment\\\\*|quasiquote|quasisyntax|quasisyntax\\\\/loc|quote|quote-syntax|quote-syntax\\\\/prune|raise-blame-error|raise-not-cons-blame-error|range|read-bytes!-evt|read-bytes-avail!-evt|read-bytes-evt|read-bytes-line-evt|read-line-evt|read-string!-evt|read-string-evt|real-in|recontract-out|recursive-contract|regexp-match\\\\*|regexp-match-evt|regexp-match-peek-positions\\\\*|regexp-match-positions\\\\*|relative-in|relocate-input-port|relocate-output-port|remove-duplicates|rename|rename-in|rename-inner|rename-out|rename-super|require|send|send\\\\*|send\\\\+|send-generic|send\\\\/apply|send\\\\/keyword-apply|sequence\\\\/c|set!|set!-values|set-field!|set\\\\/c|shared|sort|srcloc|stream|stream\\\\*|stream-cons|string-join|string-len\\\\/c|string-normalize-spaces|string-replace|string-split|string-trim|struct|struct\\\\*|struct-copy|struct-field-index|struct-out|struct\\\\/c|struct\\\\/ctc|struct\\\\/dc|submod|super|super-instantiate|super-make-object|super-new|symbols|syntax|syntax-case|syntax-case\\\\*|syntax-id-rules|syntax-rules|syntax\\\\/c|syntax\\\\/loc|system|system\\\\*|system\\\\*\\\\/exit-code|system\\\\/exit-code|tag|this|this%|thunk|thunk\\\\*|time|transplant-input-port|transplant-output-port|unconstrained-domain->|unit|unit-from-context|unit\\\\/c|unit\\\\/new-import-export|unit\\\\/s|unless|unquote|unquote-splicing|unsyntax|unsyntax-splicing|values\\\\/drop|vector-immutable\\\\/c|vector-immutableof|vector-sort|vector-sort!|vector\\\\/c|vectorof|when|with-continuation-mark|with-contract|with-contract-continuation-mark|with-handlers|with-handlers\\\\*|with-input-from-file|with-method|with-output-to-file|with-syntax|wrapped-extra-arg-arrow|write-to-file|~\\\\.a|~\\\\.s|~\\\\.v|~a|~e|~r|~s|~v|\u03BB|expand-for-clause|for-clause-syntax-protect|syntax-pattern-variable\\\\?|\\\\*|\\\\+|-|\\\\/|<|<=|=|>|>=|abort-current-continuation|abs|absolute-path\\\\?|acos|add1|alarm-evt|always-evt|andmap|angle|append|arithmetic-shift|arity-at-least-value|arity-at-least\\\\?|asin|assf|assoc|assq|assv|atan|banner|bitwise-and|bitwise-bit-field|bitwise-bit-set\\\\?|bitwise-ior|bitwise-not|bitwise-xor|boolean\\\\?|bound-identifier=\\\\?|box|box-cas!|box-immutable|box\\\\?|break-enabled|break-parameterization\\\\?|break-thread|build-list|build-path|build-path\\\\/convention-type|build-string|build-vector|byte-pregexp|byte-pregexp\\\\?|byte-ready\\\\?|byte-regexp|byte-regexp\\\\?|byte\\\\?|bytes|bytes->immutable-bytes|bytes->list|bytes->path|bytes->path-element|bytes->string\\\\/latin-1|bytes->string\\\\/locale|bytes->string\\\\/utf-8|bytes-append|bytes-close-converter|bytes-convert|bytes-convert-end|bytes-converter\\\\?|bytes-copy|bytes-copy!|bytes-environment-variable-name\\\\?|bytes-fill!|bytes-length|bytes-open-converter|bytes-ref|bytes-set!|bytes-utf-8-index|bytes-utf-8-length|bytes-utf-8-ref|bytes<\\\\?|bytes=\\\\?|bytes>\\\\?|bytes\\\\?|caaaar|caaadr|caaar|caadar|caaddr|caadr|caar|cadaar|cadadr|cadar|caddar|cadddr|caddr|cadr|call-in-nested-thread|call-with-break-parameterization|call-with-composable-continuation|call-with-continuation-barrier|call-with-continuation-prompt|call-with-current-continuation|call-with-default-reading-parameterization|call-with-escape-continuation|call-with-exception-handler|call-with-immediate-continuation-mark|call-with-parameterization|call-with-semaphore|call-with-semaphore\\\\/enable-break|call-with-values|call\\\\/cc|call\\\\/ec|car|cdaaar|cdaadr|cdaar|cdadar|cdaddr|cdadr|cdar|cddaar|cddadr|cddar|cdddar|cddddr|cdddr|cddr|cdr|ceiling|channel-get|channel-put|channel-put-evt|channel-put-evt\\\\?|channel-try-get|channel\\\\?|chaperone-box|chaperone-channel|chaperone-continuation-mark-key|chaperone-evt|chaperone-hash|chaperone-of\\\\?|chaperone-procedure|chaperone-procedure\\\\*|chaperone-prompt-tag|chaperone-struct|chaperone-struct-type|chaperone-vector|chaperone-vector\\\\*|chaperone\\\\?|char->integer|char-alphabetic\\\\?|char-blank\\\\?|char-ci<=\\\\?|char-ci<\\\\?|char-ci=\\\\?|char-ci>=\\\\?|char-ci>\\\\?|char-downcase|char-foldcase|char-general-category|char-graphic\\\\?|char-iso-control\\\\?|char-lower-case\\\\?|char-numeric\\\\?|char-punctuation\\\\?|char-ready\\\\?|char-symbolic\\\\?|char-title-case\\\\?|char-titlecase|char-upcase|char-upper-case\\\\?|char-utf-8-length|char-whitespace\\\\?|char<=\\\\?|char<\\\\?|char=\\\\?|char>=\\\\?|char>\\\\?|char\\\\?|check-duplicate-identifier|check-tail-contract|checked-procedure-check-and-extract|choice-evt|cleanse-path|close-input-port|close-output-port|collect-garbage|collection-file-path|collection-path|compile|compile-allow-set!-undefined|compile-context-preservation-enabled|compile-enforce-module-constants|compile-syntax|compiled-expression-recompile|compiled-expression\\\\?|compiled-module-expression\\\\?|complete-path\\\\?|complex\\\\?|compose|compose1|cons|continuation-mark-key\\\\?|continuation-mark-set->context|continuation-mark-set->list|continuation-mark-set->list\\\\*|continuation-mark-set-first|continuation-mark-set\\\\?|continuation-marks|continuation-prompt-available\\\\?|continuation-prompt-tag\\\\?|continuation\\\\?|copy-file|cos|current-break-parameterization|current-code-inspector|current-command-line-arguments|current-compile|current-compiled-file-roots|current-continuation-marks|current-custodian|current-directory|current-directory-for-user|current-drive|current-environment-variables|current-error-port|current-eval|current-evt-pseudo-random-generator|current-force-delete-permissions|current-gc-milliseconds|current-get-interaction-input-port|current-inexact-milliseconds|current-input-port|current-inspector|current-library-collection-links|current-library-collection-paths|current-load|current-load-extension|current-load-relative-directory|current-load\\\\/use-compiled|current-locale|current-logger|current-memory-use|current-milliseconds|current-module-declare-name|current-module-declare-source|current-module-name-resolver|current-module-path-for-load|current-namespace|current-output-port|current-parameterization|current-plumber|current-preserved-thread-cell-values|current-print|current-process-milliseconds|current-prompt-read|current-pseudo-random-generator|current-read-interaction|current-reader-guard|current-readtable|current-seconds|current-security-guard|current-subprocess-custodian-mode|current-thread|current-thread-group|current-thread-initial-stack-size|current-write-relative-directory|custodian-box-value|custodian-box\\\\?|custodian-limit-memory|custodian-managed-list|custodian-memory-accounting-available\\\\?|custodian-require-memory|custodian-shut-down\\\\?|custodian-shutdown-all|custodian\\\\?|custom-print-quotable-accessor|custom-print-quotable\\\\?|custom-write-accessor|custom-write\\\\?|date\\\\*-nanosecond|date\\\\*-time-zone-name|date\\\\*\\\\?|date-day|date-dst\\\\?|date-hour|date-minute|date-month|date-second|date-time-zone-offset|date-week-day|date-year|date-year-day|date\\\\?|datum->syntax|datum-intern-literal|default-continuation-prompt-tag|delete-directory|delete-file|denominator|directory-exists\\\\?|directory-list|display|displayln|double-flonum\\\\?|dump-memory-stats|dynamic-require|dynamic-require-for-syntax|dynamic-wind|environment-variables-copy|environment-variables-names|environment-variables-ref|environment-variables-set!|environment-variables\\\\?|eof|eof-object\\\\?|ephemeron-value|ephemeron\\\\?|eprintf|eq-hash-code|eq\\\\?|equal-hash-code|equal-secondary-hash-code|equal\\\\?|equal\\\\?\\\\/recur|eqv-hash-code|eqv\\\\?|error|error-display-handler|error-escape-handler|error-print-context-length|error-print-source-location|error-print-width|error-value->string-handler|eval|eval-jit-enabled|eval-syntax|even\\\\?|evt\\\\?|exact->inexact|exact-integer\\\\?|exact-nonnegative-integer\\\\?|exact-positive-integer\\\\?|exact\\\\?|executable-yield-handler|exit|exit-handler|exn-continuation-marks|exn-message|exn:break-continuation|exn:break:hang-up\\\\?|exn:break:terminate\\\\?|exn:break\\\\?|exn:fail:contract:arity\\\\?|exn:fail:contract:continuation\\\\?|exn:fail:contract:divide-by-zero\\\\?|exn:fail:contract:non-fixnum-result\\\\?|exn:fail:contract:variable-id|exn:fail:contract:variable\\\\?|exn:fail:contract\\\\?|exn:fail:filesystem:errno-errno|exn:fail:filesystem:errno\\\\?|exn:fail:filesystem:exists\\\\?|exn:fail:filesystem:missing-module-path|exn:fail:filesystem:missing-module\\\\?|exn:fail:filesystem:version\\\\?|exn:fail:filesystem\\\\?|exn:fail:network:errno-errno|exn:fail:network:errno\\\\?|exn:fail:network\\\\?|exn:fail:out-of-memory\\\\?|exn:fail:read-srclocs|exn:fail:read:eof\\\\?|exn:fail:read:non-char\\\\?|exn:fail:read\\\\?|exn:fail:syntax-exprs|exn:fail:syntax:missing-module-path|exn:fail:syntax:missing-module\\\\?|exn:fail:syntax:unbound\\\\?|exn:fail:syntax\\\\?|exn:fail:unsupported\\\\?|exn:fail:user\\\\?|exn:fail\\\\?|exn:missing-module-accessor|exn:missing-module\\\\?|exn:srclocs-accessor|exn:srclocs\\\\?|exn\\\\?|exp|expand|expand-for-clause|expand-once|expand-syntax|expand-syntax-once|expand-syntax-to-top-form|expand-to-top-form|expand-user-path|explode-path|expt|file-exists\\\\?|file-or-directory-identity|file-or-directory-modify-seconds|file-or-directory-permissions|file-position|file-position\\\\*|file-size|file-stream-buffer-mode|file-stream-port\\\\?|file-truncate|filesystem-change-evt|filesystem-change-evt-cancel|filesystem-change-evt\\\\?|filesystem-root-list|filter|find-executable-path|find-library-collection-links|find-library-collection-paths|find-system-path|findf|fixnum\\\\?|floating-point-bytes->real|flonum\\\\?|floor|flush-output|foldl|foldr|for-clause-syntax-protect|for-each|format|fprintf|free-identifier=\\\\?|free-label-identifier=\\\\?|free-template-identifier=\\\\?|free-transformer-identifier=\\\\?|gcd|generate-temporaries|gensym|get-output-bytes|get-output-string|getenv|global-port-print-handler|guard-evt|handle-evt|handle-evt\\\\?|hash|hash->list|hash-clear|hash-clear!|hash-copy|hash-copy-clear|hash-count|hash-empty\\\\?|hash-eq\\\\?|hash-equal\\\\?|hash-eqv\\\\?|hash-for-each|hash-has-key\\\\?|hash-iterate-first|hash-iterate-key|hash-iterate-key\\\\+value|hash-iterate-next|hash-iterate-pair|hash-iterate-value|hash-keys|hash-keys-subset\\\\?|hash-map|hash-placeholder\\\\?|hash-ref|hash-ref!|hash-remove|hash-remove!|hash-set|hash-set!|hash-set\\\\*|hash-set\\\\*!|hash-update|hash-update!|hash-values|hash-weak\\\\?|hash\\\\?|hasheq|hasheqv|identifier-binding|identifier-binding-symbol|identifier-label-binding|identifier-prune-lexical-context|identifier-prune-to-source-module|identifier-remove-from-definition-context|identifier-template-binding|identifier-transformer-binding|identifier\\\\?|imag-part|immutable\\\\?|impersonate-box|impersonate-channel|impersonate-continuation-mark-key|impersonate-hash|impersonate-procedure|impersonate-procedure\\\\*|impersonate-prompt-tag|impersonate-struct|impersonate-vector|impersonate-vector\\\\*|impersonator-ephemeron|impersonator-of\\\\?|impersonator-prop:application-mark|impersonator-property-accessor-procedure\\\\?|impersonator-property\\\\?|impersonator\\\\?|in-cycle|in-parallel|in-sequences|in-values\\\\*-sequence|in-values-sequence|inexact->exact|inexact-real\\\\?|inexact\\\\?|input-port\\\\?|inspector-superior\\\\?|inspector\\\\?|integer->char|integer->integer-bytes|integer-bytes->integer|integer-length|integer-sqrt|integer-sqrt\\\\/remainder|integer\\\\?|internal-definition-context-binding-identifiers|internal-definition-context-introduce|internal-definition-context-seal|internal-definition-context\\\\?|keyword->string|keyword-apply|keyword<\\\\?|keyword\\\\?|kill-thread|lcm|legacy-match-expander\\\\?|length|liberal-define-context\\\\?|link-exists\\\\?|list|list\\\\*|list->bytes|list->string|list->vector|list-ref|list-tail|list\\\\?|load|load-extension|load-on-demand-enabled|load-relative|load-relative-extension|load\\\\/cd|load\\\\/use-compiled|local-expand|local-expand\\\\/capture-lifts|local-transformer-expand|local-transformer-expand\\\\/capture-lifts|locale-string-encoding|log|log-all-levels|log-level-evt|log-level\\\\?|log-max-level|log-message|log-receiver\\\\?|logger-name|logger\\\\?|magnitude|make-arity-at-least|make-base-empty-namespace|make-base-namespace|make-bytes|make-channel|make-continuation-mark-key|make-continuation-prompt-tag|make-custodian|make-custodian-box|make-date|make-date\\\\*|make-derived-parameter|make-directory|make-do-sequence|make-empty-namespace|make-environment-variables|make-ephemeron|make-exn|make-exn:break|make-exn:break:hang-up|make-exn:break:terminate|make-exn:fail|make-exn:fail:contract|make-exn:fail:contract:arity|make-exn:fail:contract:continuation|make-exn:fail:contract:divide-by-zero|make-exn:fail:contract:non-fixnum-result|make-exn:fail:contract:variable|make-exn:fail:filesystem|make-exn:fail:filesystem:errno|make-exn:fail:filesystem:exists|make-exn:fail:filesystem:missing-module|make-exn:fail:filesystem:version|make-exn:fail:network|make-exn:fail:network:errno|make-exn:fail:out-of-memory|make-exn:fail:read|make-exn:fail:read:eof|make-exn:fail:read:non-char|make-exn:fail:syntax|make-exn:fail:syntax:missing-module|make-exn:fail:syntax:unbound|make-exn:fail:unsupported|make-exn:fail:user|make-file-or-directory-link|make-hash|make-hash-placeholder|make-hasheq|make-hasheq-placeholder|make-hasheqv|make-hasheqv-placeholder|make-immutable-hash|make-immutable-hasheq|make-immutable-hasheqv|make-impersonator-property|make-input-port|make-inspector|make-keyword-procedure|make-known-char-range-list|make-log-receiver|make-logger|make-output-port|make-parameter|make-phantom-bytes|make-pipe|make-placeholder|make-plumber|make-polar|make-prefab-struct|make-pseudo-random-generator|make-reader-graph|make-readtable|make-rectangular|make-rename-transformer|make-resolved-module-path|make-security-guard|make-semaphore|make-set!-transformer|make-shared-bytes|make-sibling-inspector|make-special-comment|make-srcloc|make-string|make-struct-field-accessor|make-struct-field-mutator|make-struct-type|make-struct-type-property|make-syntax-delta-introducer|make-syntax-introducer|make-thread-cell|make-thread-group|make-vector|make-weak-box|make-weak-hash|make-weak-hasheq|make-weak-hasheqv|make-will-executor|map|match-\\\\.\\\\.\\\\.-nesting|match-expander\\\\?|max|mcar|mcdr|mcons|member|memf|memq|memv|min|module->exports|module->imports|module->indirect-exports|module->language-info|module->namespace|module-compiled-cross-phase-persistent\\\\?|module-compiled-exports|module-compiled-imports|module-compiled-indirect-exports|module-compiled-language-info|module-compiled-name|module-compiled-submodules|module-declared\\\\?|module-path-index-join|module-path-index-resolve|module-path-index-split|module-path-index-submodule|module-path-index\\\\?|module-path\\\\?|module-predefined\\\\?|module-provide-protected\\\\?|modulo|mpair\\\\?|nack-guard-evt|namespace-anchor->empty-namespace|namespace-anchor->namespace|namespace-anchor\\\\?|namespace-attach-module|namespace-attach-module-declaration|namespace-base-phase|namespace-mapped-symbols|namespace-module-identifier|namespace-module-registry|namespace-require|namespace-require\\\\/constant|namespace-require\\\\/copy|namespace-require\\\\/expansion-time|namespace-set-variable-value!|namespace-symbol->identifier|namespace-syntax-introduce|namespace-undefine-variable!|namespace-unprotect-module|namespace-variable-value|namespace\\\\?|negative\\\\?|never-evt|newline|normal-case-path|not|null|null\\\\?|number->string|number\\\\?|numerator|object-name|odd\\\\?|open-input-bytes|open-input-string|open-output-bytes|open-output-string|ormap|output-port\\\\?|pair\\\\?|parameter-procedure=\\\\?|parameter\\\\?|parameterization\\\\?|parse-leftover->\\\\*|path->bytes|path->complete-path|path->directory-path|path->string|path-add-extension|path-add-suffix|path-convention-type|path-element->bytes|path-element->string|path-for-some-system\\\\?|path-list-string->path-list|path-replace-extension|path-replace-suffix|path-string\\\\?|path<\\\\?|path\\\\?|peek-byte|peek-byte-or-special|peek-bytes|peek-bytes!|peek-bytes-avail!|peek-bytes-avail!\\\\*|peek-bytes-avail!\\\\/enable-break|peek-char|peek-char-or-special|peek-string|peek-string!|phantom-bytes\\\\?|pipe-content-length|placeholder-get|placeholder-set!|placeholder\\\\?|plumber-add-flush!|plumber-flush-all|plumber-flush-handle-remove!|plumber-flush-handle\\\\?|plumber\\\\?|poll-guard-evt|port-closed-evt|port-closed\\\\?|port-commit-peeked|port-count-lines!|port-count-lines-enabled|port-counts-lines\\\\?|port-display-handler|port-file-identity|port-file-unlock|port-next-location|port-print-handler|port-progress-evt|port-provides-progress-evts\\\\?|port-read-handler|port-try-file-lock\\\\?|port-write-handler|port-writes-atomic\\\\?|port-writes-special\\\\?|port\\\\?|positive\\\\?|prefab-key->struct-type|prefab-key\\\\?|prefab-struct-key|pregexp|pregexp\\\\?|primitive-closure\\\\?|primitive-result-arity|primitive\\\\?|print|print-as-expression|print-boolean-long-form|print-box|print-graph|print-hash-table|print-mpair-curly-braces|print-pair-curly-braces|print-reader-abbreviations|print-struct|print-syntax-width|print-unreadable|print-vector-length|printf|println|procedure->method|procedure-arity|procedure-arity-includes\\\\?|procedure-arity\\\\?|procedure-closure-contents-eq\\\\?|procedure-extract-target|procedure-impersonator\\\\*\\\\?|procedure-keywords|procedure-reduce-arity|procedure-reduce-keyword-arity|procedure-rename|procedure-result-arity|procedure-specialize|procedure-struct-type\\\\?|procedure\\\\?|progress-evt\\\\?|prop:arity-string|prop:authentic|prop:checked-procedure|prop:custom-print-quotable|prop:custom-write|prop:equal\\\\+hash|prop:evt|prop:exn:missing-module|prop:exn:srclocs|prop:expansion-contexts|prop:impersonator-of|prop:input-port|prop:legacy-match-expander|prop:liberal-define-context|prop:match-expander|prop:object-name|prop:output-port|prop:procedure|prop:rename-transformer|prop:sequence|prop:set!-transformer|pseudo-random-generator->vector|pseudo-random-generator-vector\\\\?|pseudo-random-generator\\\\?|putenv|quotient|quotient\\\\/remainder|raise|raise-argument-error|raise-arguments-error|raise-arity-error|raise-mismatch-error|raise-range-error|raise-result-error|raise-syntax-error|raise-type-error|raise-user-error|random|random-seed|rational\\\\?|rationalize|read|read-accept-bar-quote|read-accept-box|read-accept-compiled|read-accept-dot|read-accept-graph|read-accept-infix-dot|read-accept-lang|read-accept-quasiquote|read-accept-reader|read-byte|read-byte-or-special|read-bytes|read-bytes!|read-bytes-avail!|read-bytes-avail!\\\\*|read-bytes-avail!\\\\/enable-break|read-bytes-line|read-case-sensitive|read-cdot|read-char|read-char-or-special|read-curly-brace-as-paren|read-curly-brace-with-tag|read-decimal-as-inexact|read-eval-print-loop|read-language|read-line|read-on-demand-source|read-square-bracket-as-paren|read-square-bracket-with-tag|read-string|read-string!|read-syntax|read-syntax\\\\/recursive|read\\\\/recursive|readtable-mapping|readtable\\\\?|real->decimal-string|real->double-flonum|real->floating-point-bytes|real->single-flonum|real-part|real\\\\?|regexp|regexp-match|regexp-match-exact\\\\?|regexp-match-peek|regexp-match-peek-immediate|regexp-match-peek-positions|regexp-match-peek-positions-immediate|regexp-match-peek-positions-immediate\\\\/end|regexp-match-peek-positions\\\\/end|regexp-match-positions|regexp-match-positions\\\\/end|regexp-match\\\\/end|regexp-match\\\\?|regexp-max-lookbehind|regexp-quote|regexp-replace|regexp-replace\\\\*|regexp-replace-quote|regexp-replaces|regexp-split|regexp-try-match|regexp\\\\?|relative-path\\\\?|remainder|remove|remove\\\\*|remq|remq\\\\*|remv|remv\\\\*|rename-file-or-directory|rename-transformer-target|rename-transformer\\\\?|replace-evt|reroot-path|resolve-path|resolved-module-path-name|resolved-module-path\\\\?|reverse|round|seconds->date|security-guard\\\\?|semaphore-peek-evt|semaphore-peek-evt\\\\?|semaphore-post|semaphore-try-wait\\\\?|semaphore-wait|semaphore-wait\\\\/enable-break|semaphore\\\\?|sequence->stream|sequence-generate|sequence-generate\\\\*|sequence\\\\?|set!-transformer-procedure|set!-transformer\\\\?|set-box!|set-mcar!|set-mcdr!|set-phantom-bytes!|set-port-next-location!|shared-bytes|shell-execute|simplify-path|sin|single-flonum\\\\?|sleep|special-comment-value|special-comment\\\\?|split-path|sqrt|srcloc->string|srcloc-column|srcloc-line|srcloc-position|srcloc-source|srcloc-span|srcloc\\\\?|stop-after|stop-before|string|string->bytes\\\\/latin-1|string->bytes\\\\/locale|string->bytes\\\\/utf-8|string->immutable-string|string->keyword|string->list|string->number|string->path|string->path-element|string->symbol|string->uninterned-symbol|string->unreadable-symbol|string-append|string-ci<=\\\\?|string-ci<\\\\?|string-ci=\\\\?|string-ci>=\\\\?|string-ci>\\\\?|string-copy|string-copy!|string-downcase|string-environment-variable-name\\\\?|string-fill!|string-foldcase|string-length|string-locale-ci<\\\\?|string-locale-ci=\\\\?|string-locale-ci>\\\\?|string-locale-downcase|string-locale-upcase|string-locale<\\\\?|string-locale=\\\\?|string-locale>\\\\?|string-normalize-nfc|string-normalize-nfd|string-normalize-nfkc|string-normalize-nfkd|string-port\\\\?|string-ref|string-set!|string-titlecase|string-upcase|string-utf-8-length|string<=\\\\?|string<\\\\?|string=\\\\?|string>=\\\\?|string>\\\\?|string\\\\?|struct->vector|struct-accessor-procedure\\\\?|struct-constructor-procedure\\\\?|struct-info|struct-mutator-procedure\\\\?|struct-predicate-procedure\\\\?|struct-type-info|struct-type-make-constructor|struct-type-make-predicate|struct-type-property-accessor-procedure\\\\?|struct-type-property\\\\?|struct-type\\\\?|struct:arity-at-least|struct:date|struct:date\\\\*|struct:exn|struct:exn:break|struct:exn:break:hang-up|struct:exn:break:terminate|struct:exn:fail|struct:exn:fail:contract|struct:exn:fail:contract:arity|struct:exn:fail:contract:continuation|struct:exn:fail:contract:divide-by-zero|struct:exn:fail:contract:non-fixnum-result|struct:exn:fail:contract:variable|struct:exn:fail:filesystem|struct:exn:fail:filesystem:errno|struct:exn:fail:filesystem:exists|struct:exn:fail:filesystem:missing-module|struct:exn:fail:filesystem:version|struct:exn:fail:network|struct:exn:fail:network:errno|struct:exn:fail:out-of-memory|struct:exn:fail:read|struct:exn:fail:read:eof|struct:exn:fail:read:non-char|struct:exn:fail:syntax|struct:exn:fail:syntax:missing-module|struct:exn:fail:syntax:unbound|struct:exn:fail:unsupported|struct:exn:fail:user|struct:srcloc|struct\\\\?|sub1|subbytes|subprocess|subprocess-group-enabled|subprocess-kill|subprocess-pid|subprocess-status|subprocess-wait|subprocess\\\\?|substring|symbol->string|symbol-interned\\\\?|symbol-unreadable\\\\?|symbol<\\\\?|symbol\\\\?|sync|sync\\\\/enable-break|sync\\\\/timeout|sync\\\\/timeout\\\\/enable-break|syntax->datum|syntax->list|syntax-arm|syntax-column|syntax-debug-info|syntax-disarm|syntax-e|syntax-line|syntax-local-bind-syntaxes|syntax-local-certifier|syntax-local-context|syntax-local-expand-expression|syntax-local-get-shadower|syntax-local-identifier-as-binding|syntax-local-introduce|syntax-local-lift-context|syntax-local-lift-expression|syntax-local-lift-module|syntax-local-lift-module-end-declaration|syntax-local-lift-provide|syntax-local-lift-require|syntax-local-lift-values-expression|syntax-local-make-definition-context|syntax-local-make-delta-introducer|syntax-local-match-introduce|syntax-local-module-defined-identifiers|syntax-local-module-exports|syntax-local-module-required-identifiers|syntax-local-name|syntax-local-phase-level|syntax-local-submodules|syntax-local-transforming-module-provides\\\\?|syntax-local-value|syntax-local-value\\\\/immediate|syntax-original\\\\?|syntax-pattern-variable\\\\?|syntax-position|syntax-property|syntax-property-preserved\\\\?|syntax-property-symbol-keys|syntax-protect|syntax-rearm|syntax-recertify|syntax-shift-phase-level|syntax-source|syntax-source-module|syntax-span|syntax-taint|syntax-tainted\\\\?|syntax-track-origin|syntax-transforming-module-expression\\\\?|syntax-transforming-with-lifts\\\\?|syntax-transforming\\\\?|syntax\\\\?|system-big-endian\\\\?|system-idle-evt|system-language\\\\+country|system-library-subpath|system-path-convention-type|system-type|tan|terminal-port\\\\?|thread|thread-cell-ref|thread-cell-set!|thread-cell-values\\\\?|thread-cell\\\\?|thread-dead-evt|thread-dead\\\\?|thread-group\\\\?|thread-receive|thread-receive-evt|thread-resume|thread-resume-evt|thread-rewind-receive|thread-running\\\\?|thread-send|thread-suspend|thread-suspend-evt|thread-try-receive|thread-wait|thread\\\\/suspend-to-kill|thread\\\\?|time-apply|truncate|unbox|uncaught-exception-handler|unquoted-printing-string|unquoted-printing-string-value|unquoted-printing-string\\\\?|use-collection-link-paths|use-compiled-file-check|use-compiled-file-paths|use-user-specific-search-paths|values|variable-reference->empty-namespace|variable-reference->module-base-phase|variable-reference->module-declaration-inspector|variable-reference->module-path-index|variable-reference->module-source|variable-reference->namespace|variable-reference->phase|variable-reference->resolved-module-path|variable-reference-constant\\\\?|variable-reference\\\\?|vector|vector->immutable-vector|vector->list|vector->pseudo-random-generator|vector->pseudo-random-generator!|vector->values|vector-cas!|vector-copy!|vector-fill!|vector-immutable|vector-length|vector-ref|vector-set!|vector-set-performance-stats!|vector\\\\?|version|void|void\\\\?|weak-box-value|weak-box\\\\?|will-execute|will-executor\\\\?|will-register|will-try-execute|wrap-evt|write|write-byte|write-bytes|write-bytes-avail|write-bytes-avail\\\\*|write-bytes-avail-evt|write-bytes-avail\\\\/enable-break|write-char|write-special|write-special-avail\\\\*|write-special-evt|write-string|writeln|zero\\\\?|\\\\*|\\\\*list\\\\/c|\\\\+|-|\\\\/|<|<\\\\/c|<=|=|>|>\\\\/c|>=|abort-current-continuation|abs|absolute-path\\\\?|acos|add1|alarm-evt|always-evt|andmap|angle|append|append\\\\*|append-map|argmax|argmin|arithmetic-shift|arity-at-least-value|arity-at-least\\\\?|arity-checking-wrapper|arity-includes\\\\?|arity=\\\\?|arrow-contract-info-accepts-arglist|arrow-contract-info-chaperone-procedure|arrow-contract-info-check-first-order|arrow-contract-info\\\\?|asin|assf|assoc|assq|assv|atan|banner|base->-doms\\\\/c|base->-rngs\\\\/c|base->\\\\?|bitwise-and|bitwise-bit-field|bitwise-bit-set\\\\?|bitwise-ior|bitwise-not|bitwise-xor|blame-add-car-context|blame-add-cdr-context|blame-add-missing-party|blame-add-nth-arg-context|blame-add-range-context|blame-add-unknown-context|blame-context|blame-contract|blame-fmt->-string|blame-missing-party\\\\?|blame-negative|blame-original\\\\?|blame-positive|blame-replace-negative|blame-source|blame-swap|blame-swapped\\\\?|blame-update|blame-value|blame\\\\?|boolean=\\\\?|boolean\\\\?|bound-identifier=\\\\?|box|box-cas!|box-immutable|box\\\\?|break-enabled|break-parameterization\\\\?|break-thread|build-chaperone-contract-property|build-compound-type-name|build-contract-property|build-flat-contract-property|build-list|build-path|build-path\\\\/convention-type|build-string|build-vector|byte-pregexp|byte-pregexp\\\\?|byte-ready\\\\?|byte-regexp|byte-regexp\\\\?|byte\\\\?|bytes|bytes->immutable-bytes|bytes->list|bytes->path|bytes->path-element|bytes->string\\\\/latin-1|bytes->string\\\\/locale|bytes->string\\\\/utf-8|bytes-append|bytes-append\\\\*|bytes-close-converter|bytes-convert|bytes-convert-end|bytes-converter\\\\?|bytes-copy|bytes-copy!|bytes-environment-variable-name\\\\?|bytes-fill!|bytes-join|bytes-length|bytes-no-nuls\\\\?|bytes-open-converter|bytes-ref|bytes-set!|bytes-utf-8-index|bytes-utf-8-length|bytes-utf-8-ref|bytes<\\\\?|bytes=\\\\?|bytes>\\\\?|bytes\\\\?|caaaar|caaadr|caaar|caadar|caaddr|caadr|caar|cadaar|cadadr|cadar|caddar|cadddr|caddr|cadr|call-in-nested-thread|call-with-break-parameterization|call-with-composable-continuation|call-with-continuation-barrier|call-with-continuation-prompt|call-with-current-continuation|call-with-default-reading-parameterization|call-with-escape-continuation|call-with-exception-handler|call-with-immediate-continuation-mark|call-with-input-bytes|call-with-input-string|call-with-output-bytes|call-with-output-string|call-with-parameterization|call-with-semaphore|call-with-semaphore\\\\/enable-break|call-with-values|call\\\\/cc|call\\\\/ec|car|cartesian-product|cdaaar|cdaadr|cdaar|cdadar|cdaddr|cdadr|cdar|cddaar|cddadr|cddar|cdddar|cddddr|cdddr|cddr|cdr|ceiling|channel-get|channel-put|channel-put-evt|channel-put-evt\\\\?|channel-try-get|channel\\\\?|chaperone-box|chaperone-channel|chaperone-continuation-mark-key|chaperone-contract-property\\\\?|chaperone-contract\\\\?|chaperone-evt|chaperone-hash|chaperone-hash-set|chaperone-of\\\\?|chaperone-procedure|chaperone-procedure\\\\*|chaperone-prompt-tag|chaperone-struct|chaperone-struct-type|chaperone-vector|chaperone-vector\\\\*|chaperone\\\\?|char->integer|char-alphabetic\\\\?|char-blank\\\\?|char-ci<=\\\\?|char-ci<\\\\?|char-ci=\\\\?|char-ci>=\\\\?|char-ci>\\\\?|char-downcase|char-foldcase|char-general-category|char-graphic\\\\?|char-in|char-iso-control\\\\?|char-lower-case\\\\?|char-numeric\\\\?|char-punctuation\\\\?|char-ready\\\\?|char-symbolic\\\\?|char-title-case\\\\?|char-titlecase|char-upcase|char-upper-case\\\\?|char-utf-8-length|char-whitespace\\\\?|char<=\\\\?|char<\\\\?|char=\\\\?|char>=\\\\?|char>\\\\?|char\\\\?|check-duplicate-identifier|checked-procedure-check-and-extract|choice-evt|class->interface|class-info|class-seal|class-unseal|class\\\\?|cleanse-path|close-input-port|close-output-port|coerce-chaperone-contract|coerce-chaperone-contracts|coerce-contract|coerce-contract\\\\/f|coerce-contracts|coerce-flat-contract|coerce-flat-contracts|collect-garbage|collection-file-path|collection-path|combinations|compile|compile-allow-set!-undefined|compile-context-preservation-enabled|compile-enforce-module-constants|compile-syntax|compiled-expression-recompile|compiled-expression\\\\?|compiled-module-expression\\\\?|complete-path\\\\?|complex\\\\?|compose|compose1|conjoin|conjugate|cons|cons\\\\?|const|continuation-mark-key\\\\?|continuation-mark-set->context|continuation-mark-set->list|continuation-mark-set->list\\\\*|continuation-mark-set-first|continuation-mark-set\\\\?|continuation-marks|continuation-prompt-available\\\\?|continuation-prompt-tag\\\\?|continuation\\\\?|contract-continuation-mark-key|contract-custom-write-property-proc|contract-first-order|contract-first-order-passes\\\\?|contract-late-neg-projection|contract-name|contract-proc|contract-projection|contract-property\\\\?|contract-random-generate|contract-random-generate-fail|contract-random-generate-fail\\\\?|contract-random-generate-get-current-environment|contract-random-generate-stash|contract-random-generate\\\\/choose|contract-stronger\\\\?|contract-struct-exercise|contract-struct-generate|contract-struct-late-neg-projection|contract-struct-list-contract\\\\?|contract-val-first-projection|contract\\\\?|convert-stream|copy-file|copy-port|cos|cosh|count|current-blame-format|current-break-parameterization|current-code-inspector|current-command-line-arguments|current-compile|current-compiled-file-roots|current-continuation-marks|current-custodian|current-directory|current-directory-for-user|current-drive|current-environment-variables|current-error-port|current-eval|current-evt-pseudo-random-generator|current-force-delete-permissions|current-future|current-gc-milliseconds|current-get-interaction-input-port|current-inexact-milliseconds|current-input-port|current-inspector|current-library-collection-links|current-library-collection-paths|current-load|current-load-extension|current-load-relative-directory|current-load\\\\/use-compiled|current-locale|current-logger|current-memory-use|current-milliseconds|current-module-declare-name|current-module-declare-source|current-module-name-resolver|current-module-path-for-load|current-namespace|current-output-port|current-parameterization|current-plumber|current-preserved-thread-cell-values|current-print|current-process-milliseconds|current-prompt-read|current-pseudo-random-generator|current-read-interaction|current-reader-guard|current-readtable|current-seconds|current-security-guard|current-subprocess-custodian-mode|current-thread|current-thread-group|current-thread-initial-stack-size|current-write-relative-directory|curry|curryr|custodian-box-value|custodian-box\\\\?|custodian-limit-memory|custodian-managed-list|custodian-memory-accounting-available\\\\?|custodian-require-memory|custodian-shut-down\\\\?|custodian-shutdown-all|custodian\\\\?|custom-print-quotable-accessor|custom-print-quotable\\\\?|custom-write-accessor|custom-write-property-proc|custom-write\\\\?|date\\\\*-nanosecond|date\\\\*-time-zone-name|date\\\\*\\\\?|date-day|date-dst\\\\?|date-hour|date-minute|date-month|date-second|date-time-zone-offset|date-week-day|date-year|date-year-day|date\\\\?|datum->syntax|datum-intern-literal|default-continuation-prompt-tag|degrees->radians|delete-directory|delete-file|denominator|dict-iter-contract|dict-key-contract|dict-value-contract|directory-exists\\\\?|directory-list|disjoin|display|displayln|double-flonum\\\\?|drop|drop-common-prefix|drop-right|dropf|dropf-right|dump-memory-stats|dup-input-port|dup-output-port|dynamic-get-field|dynamic-object\\\\/c|dynamic-require|dynamic-require-for-syntax|dynamic-send|dynamic-set-field!|dynamic-wind|eighth|empty|empty-sequence|empty-stream|empty\\\\?|environment-variables-copy|environment-variables-names|environment-variables-ref|environment-variables-set!|environment-variables\\\\?|eof|eof-object\\\\?|ephemeron-value|ephemeron\\\\?|eprintf|eq-contract-val|eq-contract\\\\?|eq-hash-code|eq\\\\?|equal-contract-val|equal-contract\\\\?|equal-hash-code|equal-secondary-hash-code|equal<%>|equal\\\\?|equal\\\\?\\\\/recur|eqv-hash-code|eqv\\\\?|error|error-display-handler|error-escape-handler|error-print-context-length|error-print-source-location|error-print-width|error-value->string-handler|eval|eval-jit-enabled|eval-syntax|even\\\\?|evt\\\\/c|evt\\\\?|exact->inexact|exact-ceiling|exact-floor|exact-integer\\\\?|exact-nonnegative-integer\\\\?|exact-positive-integer\\\\?|exact-round|exact-truncate|exact\\\\?|executable-yield-handler|exit|exit-handler|exn-continuation-marks|exn-message|exn:break-continuation|exn:break:hang-up\\\\?|exn:break:terminate\\\\?|exn:break\\\\?|exn:fail:contract:arity\\\\?|exn:fail:contract:blame-object|exn:fail:contract:blame\\\\?|exn:fail:contract:continuation\\\\?|exn:fail:contract:divide-by-zero\\\\?|exn:fail:contract:non-fixnum-result\\\\?|exn:fail:contract:variable-id|exn:fail:contract:variable\\\\?|exn:fail:contract\\\\?|exn:fail:filesystem:errno-errno|exn:fail:filesystem:errno\\\\?|exn:fail:filesystem:exists\\\\?|exn:fail:filesystem:missing-module-path|exn:fail:filesystem:missing-module\\\\?|exn:fail:filesystem:version\\\\?|exn:fail:filesystem\\\\?|exn:fail:network:errno-errno|exn:fail:network:errno\\\\?|exn:fail:network\\\\?|exn:fail:object\\\\?|exn:fail:out-of-memory\\\\?|exn:fail:read-srclocs|exn:fail:read:eof\\\\?|exn:fail:read:non-char\\\\?|exn:fail:read\\\\?|exn:fail:syntax-exprs|exn:fail:syntax:missing-module-path|exn:fail:syntax:missing-module\\\\?|exn:fail:syntax:unbound\\\\?|exn:fail:syntax\\\\?|exn:fail:unsupported\\\\?|exn:fail:user\\\\?|exn:fail\\\\?|exn:misc:match\\\\?|exn:missing-module-accessor|exn:missing-module\\\\?|exn:srclocs-accessor|exn:srclocs\\\\?|exn\\\\?|exp|expand|expand-once|expand-syntax|expand-syntax-once|expand-syntax-to-top-form|expand-to-top-form|expand-user-path|explode-path|expt|externalizable<%>|failure-result\\\\/c|false|false\\\\/c|false\\\\?|field-names|fifth|file-exists\\\\?|file-name-from-path|file-or-directory-identity|file-or-directory-modify-seconds|file-or-directory-permissions|file-position|file-position\\\\*|file-size|file-stream-buffer-mode|file-stream-port\\\\?|file-truncate|filename-extension|filesystem-change-evt|filesystem-change-evt-cancel|filesystem-change-evt\\\\?|filesystem-root-list|filter|filter-map|filter-not|filter-read-input-port|find-executable-path|find-library-collection-links|find-library-collection-paths|find-system-path|findf|first|fixnum\\\\?|flat-contract|flat-contract-predicate|flat-contract-property\\\\?|flat-contract\\\\?|flat-named-contract|flatten|floating-point-bytes->real|flonum\\\\?|floor|flush-output|fold-files|foldl|foldr|for-each|force|format|fourth|fprintf|free-identifier=\\\\?|free-label-identifier=\\\\?|free-template-identifier=\\\\?|free-transformer-identifier=\\\\?|fsemaphore-count|fsemaphore-post|fsemaphore-try-wait\\\\?|fsemaphore-wait|fsemaphore\\\\?|future|future\\\\?|futures-enabled\\\\?|gcd|generate-member-key|generate-temporaries|generic-set\\\\?|generic\\\\?|gensym|get-output-bytes|get-output-string|get\\\\/build-late-neg-projection|get\\\\/build-val-first-projection|getenv|global-port-print-handler|group-by|group-execute-bit|group-read-bit|group-write-bit|guard-evt|handle-evt|handle-evt\\\\?|has-blame\\\\?|has-contract\\\\?|hash|hash->list|hash-clear|hash-clear!|hash-copy|hash-copy-clear|hash-count|hash-empty\\\\?|hash-eq\\\\?|hash-equal\\\\?|hash-eqv\\\\?|hash-for-each|hash-has-key\\\\?|hash-iterate-first|hash-iterate-key|hash-iterate-key\\\\+value|hash-iterate-next|hash-iterate-pair|hash-iterate-value|hash-keys|hash-keys-subset\\\\?|hash-map|hash-placeholder\\\\?|hash-ref|hash-ref!|hash-remove|hash-remove!|hash-set|hash-set!|hash-set\\\\*|hash-set\\\\*!|hash-update|hash-update!|hash-values|hash-weak\\\\?|hash\\\\?|hasheq|hasheqv|identifier-binding|identifier-binding-symbol|identifier-label-binding|identifier-prune-lexical-context|identifier-prune-to-source-module|identifier-remove-from-definition-context|identifier-template-binding|identifier-transformer-binding|identifier\\\\?|identity|if\\\\/c|imag-part|immutable\\\\?|impersonate-box|impersonate-channel|impersonate-continuation-mark-key|impersonate-hash|impersonate-hash-set|impersonate-procedure|impersonate-procedure\\\\*|impersonate-prompt-tag|impersonate-struct|impersonate-vector|impersonate-vector\\\\*|impersonator-contract\\\\?|impersonator-ephemeron|impersonator-of\\\\?|impersonator-prop:application-mark|impersonator-prop:blame|impersonator-prop:contracted|impersonator-property-accessor-procedure\\\\?|impersonator-property\\\\?|impersonator\\\\?|implementation\\\\?|implementation\\\\?\\\\/c|in-combinations|in-cycle|in-dict-pairs|in-parallel|in-permutations|in-sequences|in-values\\\\*-sequence|in-values-sequence|index-of|index-where|indexes-of|indexes-where|inexact->exact|inexact-real\\\\?|inexact\\\\?|infinite\\\\?|input-port-append|input-port\\\\?|inspector-superior\\\\?|inspector\\\\?|instanceof\\\\/c|integer->char|integer->integer-bytes|integer-bytes->integer|integer-length|integer-sqrt|integer-sqrt\\\\/remainder|integer\\\\?|interface->method-names|interface-extension\\\\?|interface\\\\?|internal-definition-context-binding-identifiers|internal-definition-context-introduce|internal-definition-context-seal|internal-definition-context\\\\?|is-a\\\\?|is-a\\\\?\\\\/c|keyword->string|keyword-apply|keyword<\\\\?|keyword\\\\?|keywords-match|kill-thread|last|last-pair|lcm|length|liberal-define-context\\\\?|link-exists\\\\?|list|list\\\\*|list->bytes|list->mutable-set|list->mutable-seteq|list->mutable-seteqv|list->set|list->seteq|list->seteqv|list->string|list->vector|list->weak-set|list->weak-seteq|list->weak-seteqv|list-contract\\\\?|list-prefix\\\\?|list-ref|list-set|list-tail|list-update|list\\\\?|listen-port-number\\\\?|load|load-extension|load-on-demand-enabled|load-relative|load-relative-extension|load\\\\/cd|load\\\\/use-compiled|local-expand|local-expand\\\\/capture-lifts|local-transformer-expand|local-transformer-expand\\\\/capture-lifts|locale-string-encoding|log|log-all-levels|log-level-evt|log-level\\\\?|log-max-level|log-message|log-receiver\\\\?|logger-name|logger\\\\?|magnitude|make-arity-at-least|make-base-empty-namespace|make-base-namespace|make-bytes|make-channel|make-chaperone-contract|make-continuation-mark-key|make-continuation-prompt-tag|make-contract|make-custodian|make-custodian-box|make-date|make-date\\\\*|make-derived-parameter|make-directory|make-directory\\\\*|make-do-sequence|make-empty-namespace|make-environment-variables|make-ephemeron|make-exn|make-exn:break|make-exn:break:hang-up|make-exn:break:terminate|make-exn:fail|make-exn:fail:contract|make-exn:fail:contract:arity|make-exn:fail:contract:blame|make-exn:fail:contract:continuation|make-exn:fail:contract:divide-by-zero|make-exn:fail:contract:non-fixnum-result|make-exn:fail:contract:variable|make-exn:fail:filesystem|make-exn:fail:filesystem:errno|make-exn:fail:filesystem:exists|make-exn:fail:filesystem:missing-module|make-exn:fail:filesystem:version|make-exn:fail:network|make-exn:fail:network:errno|make-exn:fail:object|make-exn:fail:out-of-memory|make-exn:fail:read|make-exn:fail:read:eof|make-exn:fail:read:non-char|make-exn:fail:syntax|make-exn:fail:syntax:missing-module|make-exn:fail:syntax:unbound|make-exn:fail:unsupported|make-exn:fail:user|make-file-or-directory-link|make-flat-contract|make-fsemaphore|make-generic|make-hash|make-hash-placeholder|make-hasheq|make-hasheq-placeholder|make-hasheqv|make-hasheqv-placeholder|make-immutable-hash|make-immutable-hasheq|make-immutable-hasheqv|make-impersonator-property|make-input-port|make-input-port\\\\/read-to-peek|make-inspector|make-keyword-procedure|make-known-char-range-list|make-limited-input-port|make-list|make-lock-file-name|make-log-receiver|make-logger|make-mixin-contract|make-none\\\\/c|make-output-port|make-parameter|make-parent-directory\\\\*|make-phantom-bytes|make-pipe|make-pipe-with-specials|make-placeholder|make-plumber|make-polar|make-prefab-struct|make-primitive-class|make-proj-contract|make-pseudo-random-generator|make-reader-graph|make-readtable|make-rectangular|make-rename-transformer|make-resolved-module-path|make-security-guard|make-semaphore|make-set!-transformer|make-shared-bytes|make-sibling-inspector|make-special-comment|make-srcloc|make-string|make-struct-field-accessor|make-struct-field-mutator|make-struct-type|make-struct-type-property|make-syntax-delta-introducer|make-syntax-introducer|make-tentative-pretty-print-output-port|make-thread-cell|make-thread-group|make-vector|make-weak-box|make-weak-hash|make-weak-hasheq|make-weak-hasheqv|make-will-executor|map|match-equality-test|matches-arity-exactly\\\\?|max|mcar|mcdr|mcons|member|member-name-key-hash-code|member-name-key=\\\\?|member-name-key\\\\?|memf|memq|memv|merge-input|method-in-interface\\\\?|min|mixin-contract|module->exports|module->imports|module->indirect-exports|module->language-info|module->namespace|module-compiled-cross-phase-persistent\\\\?|module-compiled-exports|module-compiled-imports|module-compiled-indirect-exports|module-compiled-language-info|module-compiled-name|module-compiled-submodules|module-declared\\\\?|module-path-index-join|module-path-index-resolve|module-path-index-split|module-path-index-submodule|module-path-index\\\\?|module-path\\\\?|module-predefined\\\\?|module-provide-protected\\\\?|modulo|mpair\\\\?|mutable-set|mutable-seteq|mutable-seteqv|n->th|nack-guard-evt|namespace-anchor->empty-namespace|namespace-anchor->namespace|namespace-anchor\\\\?|namespace-attach-module|namespace-attach-module-declaration|namespace-base-phase|namespace-mapped-symbols|namespace-module-identifier|namespace-module-registry|namespace-require|namespace-require\\\\/constant|namespace-require\\\\/copy|namespace-require\\\\/expansion-time|namespace-set-variable-value!|namespace-symbol->identifier|namespace-syntax-introduce|namespace-undefine-variable!|namespace-unprotect-module|namespace-variable-value|namespace\\\\?|nan\\\\?|natural-number\\\\/c|natural\\\\?|negate|negative-integer\\\\?|negative\\\\?|never-evt|newline|ninth|non-empty-string\\\\?|nonnegative-integer\\\\?|nonpositive-integer\\\\?|normal-case-path|normalize-arity|normalize-path|normalized-arity\\\\?|not|null|null\\\\?|number->string|number\\\\?|numerator|object%|object->vector|object-info|object-interface|object-method-arity-includes\\\\?|object-name|object-or-false=\\\\?|object=\\\\?|object\\\\?|odd\\\\?|open-input-bytes|open-input-string|open-output-bytes|open-output-nowhere|open-output-string|order-of-magnitude|ormap|other-execute-bit|other-read-bit|other-write-bit|output-port\\\\?|pair\\\\?|parameter-procedure=\\\\?|parameter\\\\?|parameterization\\\\?|parse-command-line|partition|path->bytes|path->complete-path|path->directory-path|path->string|path-add-extension|path-add-suffix|path-convention-type|path-element->bytes|path-element->string|path-element\\\\?|path-for-some-system\\\\?|path-get-extension|path-has-extension\\\\?|path-list-string->path-list|path-only|path-replace-extension|path-replace-suffix|path-string\\\\?|path<\\\\?|path\\\\?|peek-byte|peek-byte-or-special|peek-bytes|peek-bytes!|peek-bytes-avail!|peek-bytes-avail!\\\\*|peek-bytes-avail!\\\\/enable-break|peek-char|peek-char-or-special|peek-string|peek-string!|permutations|phantom-bytes\\\\?|pi|pi\\\\.f|pipe-content-length|place-break|place-channel|place-channel-get|place-channel-put|place-channel-put\\\\/get|place-channel\\\\?|place-dead-evt|place-enabled\\\\?|place-kill|place-location\\\\?|place-message-allowed\\\\?|place-sleep|place-wait|place\\\\?|placeholder-get|placeholder-set!|placeholder\\\\?|plumber-add-flush!|plumber-flush-all|plumber-flush-handle-remove!|plumber-flush-handle\\\\?|plumber\\\\?|poll-guard-evt|port->list|port-closed-evt|port-closed\\\\?|port-commit-peeked|port-count-lines!|port-count-lines-enabled|port-counts-lines\\\\?|port-display-handler|port-file-identity|port-file-unlock|port-next-location|port-number\\\\?|port-print-handler|port-progress-evt|port-provides-progress-evts\\\\?|port-read-handler|port-try-file-lock\\\\?|port-write-handler|port-writes-atomic\\\\?|port-writes-special\\\\?|port\\\\?|positive-integer\\\\?|positive\\\\?|predicate\\\\/c|prefab-key->struct-type|prefab-key\\\\?|prefab-struct-key|preferences-lock-file-mode|pregexp|pregexp\\\\?|pretty-display|pretty-print|pretty-print-\\\\.-symbol-without-bars|pretty-print-abbreviate-read-macros|pretty-print-columns|pretty-print-current-style-table|pretty-print-depth|pretty-print-exact-as-decimal|pretty-print-extend-style-table|pretty-print-handler|pretty-print-newline|pretty-print-post-print-hook|pretty-print-pre-print-hook|pretty-print-print-hook|pretty-print-print-line|pretty-print-remap-stylable|pretty-print-show-inexactness|pretty-print-size-hook|pretty-print-style-table\\\\?|pretty-printing|pretty-write|primitive-closure\\\\?|primitive-result-arity|primitive\\\\?|print|print-as-expression|print-boolean-long-form|print-box|print-graph|print-hash-table|print-mpair-curly-braces|print-pair-curly-braces|print-reader-abbreviations|print-struct|print-syntax-width|print-unreadable|print-vector-length|printable\\\\/c|printable<%>|printf|println|procedure->method|procedure-arity|procedure-arity-includes\\\\?|procedure-arity\\\\?|procedure-closure-contents-eq\\\\?|procedure-extract-target|procedure-impersonator\\\\*\\\\?|procedure-keywords|procedure-reduce-arity|procedure-reduce-keyword-arity|procedure-rename|procedure-result-arity|procedure-specialize|procedure-struct-type\\\\?|procedure\\\\?|processor-count|progress-evt\\\\?|promise-forced\\\\?|promise-running\\\\?|promise\\\\/name\\\\?|promise\\\\?|prop:arity-string|prop:arrow-contract|prop:arrow-contract-get-info|prop:arrow-contract\\\\?|prop:authentic|prop:blame|prop:chaperone-contract|prop:checked-procedure|prop:contract|prop:contracted|prop:custom-print-quotable|prop:custom-write|prop:dict|prop:equal\\\\+hash|prop:evt|prop:exn:missing-module|prop:exn:srclocs|prop:expansion-contexts|prop:flat-contract|prop:impersonator-of|prop:input-port|prop:liberal-define-context|prop:object-name|prop:opt-chaperone-contract|prop:opt-chaperone-contract-get-test|prop:opt-chaperone-contract\\\\?|prop:orc-contract|prop:orc-contract-get-subcontracts|prop:orc-contract\\\\?|prop:output-port|prop:place-location|prop:procedure|prop:recursive-contract|prop:recursive-contract-unroll|prop:recursive-contract\\\\?|prop:rename-transformer|prop:sequence|prop:set!-transformer|prop:stream|proper-subset\\\\?|pseudo-random-generator->vector|pseudo-random-generator-vector\\\\?|pseudo-random-generator\\\\?|put-preferences|putenv|quotient|quotient\\\\/remainder|radians->degrees|raise|raise-argument-error|raise-arguments-error|raise-arity-error|raise-contract-error|raise-mismatch-error|raise-range-error|raise-result-error|raise-syntax-error|raise-type-error|raise-user-error|random|random-seed|rational\\\\?|rationalize|read|read-accept-bar-quote|read-accept-box|read-accept-compiled|read-accept-dot|read-accept-graph|read-accept-infix-dot|read-accept-lang|read-accept-quasiquote|read-accept-reader|read-byte|read-byte-or-special|read-bytes|read-bytes!|read-bytes-avail!|read-bytes-avail!\\\\*|read-bytes-avail!\\\\/enable-break|read-bytes-line|read-case-sensitive|read-cdot|read-char|read-char-or-special|read-curly-brace-as-paren|read-curly-brace-with-tag|read-decimal-as-inexact|read-eval-print-loop|read-language|read-line|read-on-demand-source|read-square-bracket-as-paren|read-square-bracket-with-tag|read-string|read-string!|read-syntax|read-syntax\\\\/recursive|read\\\\/recursive|readtable-mapping|readtable\\\\?|real->decimal-string|real->double-flonum|real->floating-point-bytes|real->single-flonum|real-part|real\\\\?|reencode-input-port|reencode-output-port|regexp|regexp-match|regexp-match-exact\\\\?|regexp-match-peek|regexp-match-peek-immediate|regexp-match-peek-positions|regexp-match-peek-positions-immediate|regexp-match-peek-positions-immediate\\\\/end|regexp-match-peek-positions\\\\/end|regexp-match-positions|regexp-match-positions\\\\/end|regexp-match\\\\/end|regexp-match\\\\?|regexp-max-lookbehind|regexp-quote|regexp-replace|regexp-replace\\\\*|regexp-replace-quote|regexp-replaces|regexp-split|regexp-try-match|regexp\\\\?|relative-path\\\\?|remainder|remf|remf\\\\*|remove|remove\\\\*|remq|remq\\\\*|remv|remv\\\\*|rename-contract|rename-file-or-directory|rename-transformer-target|rename-transformer\\\\?|replace-evt|reroot-path|resolve-path|resolved-module-path-name|resolved-module-path\\\\?|rest|reverse|round|second|seconds->date|security-guard\\\\?|semaphore-peek-evt|semaphore-peek-evt\\\\?|semaphore-post|semaphore-try-wait\\\\?|semaphore-wait|semaphore-wait\\\\/enable-break|semaphore\\\\?|sequence->list|sequence->stream|sequence-add-between|sequence-andmap|sequence-append|sequence-count|sequence-filter|sequence-fold|sequence-for-each|sequence-generate|sequence-generate\\\\*|sequence-length|sequence-map|sequence-ormap|sequence-ref|sequence-tail|sequence\\\\?|set|set!-transformer-procedure|set!-transformer\\\\?|set->list|set->stream|set-add|set-add!|set-box!|set-clear|set-clear!|set-copy|set-copy-clear|set-count|set-empty\\\\?|set-eq\\\\?|set-equal\\\\?|set-eqv\\\\?|set-first|set-for-each|set-implements\\\\/c|set-implements\\\\?|set-intersect|set-intersect!|set-map|set-mcar!|set-mcdr!|set-member\\\\?|set-mutable\\\\?|set-phantom-bytes!|set-port-next-location!|set-remove|set-remove!|set-rest|set-subtract|set-subtract!|set-symmetric-difference|set-symmetric-difference!|set-union|set-union!|set-weak\\\\?|set=\\\\?|set\\\\?|seteq|seteqv|seventh|sgn|shared-bytes|shell-execute|shrink-path-wrt|shuffle|simple-form-path|simplify-path|sin|single-flonum\\\\?|sinh|sixth|skip-projection-wrapper\\\\?|sleep|some-system-path->string|special-comment-value|special-comment\\\\?|special-filter-input-port|split-at|split-at-right|split-common-prefix|split-path|splitf-at|splitf-at-right|sqr|sqrt|srcloc->string|srcloc-column|srcloc-line|srcloc-position|srcloc-source|srcloc-span|srcloc\\\\?|stop-after|stop-before|stream->list|stream-add-between|stream-andmap|stream-append|stream-count|stream-empty\\\\?|stream-filter|stream-first|stream-fold|stream-for-each|stream-length|stream-map|stream-ormap|stream-ref|stream-rest|stream-tail|stream\\\\/c|stream\\\\?|string|string->bytes\\\\/latin-1|string->bytes\\\\/locale|string->bytes\\\\/utf-8|string->immutable-string|string->keyword|string->list|string->number|string->path|string->path-element|string->some-system-path|string->symbol|string->uninterned-symbol|string->unreadable-symbol|string-append|string-append\\\\*|string-ci<=\\\\?|string-ci<\\\\?|string-ci=\\\\?|string-ci>=\\\\?|string-ci>\\\\?|string-contains\\\\?|string-copy|string-copy!|string-downcase|string-environment-variable-name\\\\?|string-fill!|string-foldcase|string-length|string-locale-ci<\\\\?|string-locale-ci=\\\\?|string-locale-ci>\\\\?|string-locale-downcase|string-locale-upcase|string-locale<\\\\?|string-locale=\\\\?|string-locale>\\\\?|string-no-nuls\\\\?|string-normalize-nfc|string-normalize-nfd|string-normalize-nfkc|string-normalize-nfkd|string-port\\\\?|string-prefix\\\\?|string-ref|string-set!|string-suffix\\\\?|string-titlecase|string-upcase|string-utf-8-length|string<=\\\\?|string<\\\\?|string=\\\\?|string>=\\\\?|string>\\\\?|string\\\\?|struct->vector|struct-accessor-procedure\\\\?|struct-constructor-procedure\\\\?|struct-info|struct-mutator-procedure\\\\?|struct-predicate-procedure\\\\?|struct-type-info|struct-type-make-constructor|struct-type-make-predicate|struct-type-property-accessor-procedure\\\\?|struct-type-property\\\\/c|struct-type-property\\\\?|struct-type\\\\?|struct:arity-at-least|struct:arrow-contract-info|struct:date|struct:date\\\\*|struct:exn|struct:exn:break|struct:exn:break:hang-up|struct:exn:break:terminate|struct:exn:fail|struct:exn:fail:contract|struct:exn:fail:contract:arity|struct:exn:fail:contract:blame|struct:exn:fail:contract:continuation|struct:exn:fail:contract:divide-by-zero|struct:exn:fail:contract:non-fixnum-result|struct:exn:fail:contract:variable|struct:exn:fail:filesystem|struct:exn:fail:filesystem:errno|struct:exn:fail:filesystem:exists|struct:exn:fail:filesystem:missing-module|struct:exn:fail:filesystem:version|struct:exn:fail:network|struct:exn:fail:network:errno|struct:exn:fail:object|struct:exn:fail:out-of-memory|struct:exn:fail:read|struct:exn:fail:read:eof|struct:exn:fail:read:non-char|struct:exn:fail:syntax|struct:exn:fail:syntax:missing-module|struct:exn:fail:syntax:unbound|struct:exn:fail:unsupported|struct:exn:fail:user|struct:srcloc|struct:wrapped-extra-arg-arrow|struct\\\\?|sub1|subbytes|subclass\\\\?|subclass\\\\?\\\\/c|subprocess|subprocess-group-enabled|subprocess-kill|subprocess-pid|subprocess-status|subprocess-wait|subprocess\\\\?|subset\\\\?|substring|suggest\\\\/c|symbol->string|symbol-interned\\\\?|symbol-unreadable\\\\?|symbol<\\\\?|symbol=\\\\?|symbol\\\\?|sync|sync\\\\/enable-break|sync\\\\/timeout|sync\\\\/timeout\\\\/enable-break|syntax->datum|syntax->list|syntax-arm|syntax-column|syntax-debug-info|syntax-disarm|syntax-e|syntax-line|syntax-local-bind-syntaxes|syntax-local-certifier|syntax-local-context|syntax-local-expand-expression|syntax-local-get-shadower|syntax-local-identifier-as-binding|syntax-local-introduce|syntax-local-lift-context|syntax-local-lift-expression|syntax-local-lift-module|syntax-local-lift-module-end-declaration|syntax-local-lift-provide|syntax-local-lift-require|syntax-local-lift-values-expression|syntax-local-make-definition-context|syntax-local-make-delta-introducer|syntax-local-module-defined-identifiers|syntax-local-module-exports|syntax-local-module-required-identifiers|syntax-local-name|syntax-local-phase-level|syntax-local-submodules|syntax-local-transforming-module-provides\\\\?|syntax-local-value|syntax-local-value\\\\/immediate|syntax-original\\\\?|syntax-position|syntax-property|syntax-property-preserved\\\\?|syntax-property-symbol-keys|syntax-protect|syntax-rearm|syntax-recertify|syntax-shift-phase-level|syntax-source|syntax-source-module|syntax-span|syntax-taint|syntax-tainted\\\\?|syntax-track-origin|syntax-transforming-module-expression\\\\?|syntax-transforming-with-lifts\\\\?|syntax-transforming\\\\?|syntax\\\\?|system-big-endian\\\\?|system-idle-evt|system-language\\\\+country|system-library-subpath|system-path-convention-type|system-type|tail-marks-match\\\\?|take|take-common-prefix|take-right|takef|takef-right|tan|tanh|tcp-abandon-port|tcp-accept|tcp-accept-evt|tcp-accept-ready\\\\?|tcp-accept\\\\/enable-break|tcp-addresses|tcp-close|tcp-connect|tcp-connect\\\\/enable-break|tcp-listen|tcp-listener\\\\?|tcp-port\\\\?|tentative-pretty-print-port-cancel|tentative-pretty-print-port-transfer|tenth|terminal-port\\\\?|the-unsupplied-arg|third|thread|thread-cell-ref|thread-cell-set!|thread-cell-values\\\\?|thread-cell\\\\?|thread-dead-evt|thread-dead\\\\?|thread-group\\\\?|thread-receive|thread-receive-evt|thread-resume|thread-resume-evt|thread-rewind-receive|thread-running\\\\?|thread-send|thread-suspend|thread-suspend-evt|thread-try-receive|thread-wait|thread\\\\/suspend-to-kill|thread\\\\?|time-apply|touch|true|truncate|udp-addresses|udp-bind!|udp-bound\\\\?|udp-close|udp-connect!|udp-connected\\\\?|udp-multicast-interface|udp-multicast-join-group!|udp-multicast-leave-group!|udp-multicast-loopback\\\\?|udp-multicast-set-interface!|udp-multicast-set-loopback!|udp-multicast-set-ttl!|udp-multicast-ttl|udp-open-socket|udp-receive!|udp-receive!\\\\*|udp-receive!-evt|udp-receive!\\\\/enable-break|udp-receive-ready-evt|udp-send|udp-send\\\\*|udp-send-evt|udp-send-ready-evt|udp-send-to|udp-send-to\\\\*|udp-send-to-evt|udp-send-to\\\\/enable-break|udp-send\\\\/enable-break|udp\\\\?|unbox|uncaught-exception-handler|unit\\\\?|unquoted-printing-string|unquoted-printing-string-value|unquoted-printing-string\\\\?|unspecified-dom|unsupplied-arg\\\\?|use-collection-link-paths|use-compiled-file-check|use-compiled-file-paths|use-user-specific-search-paths|user-execute-bit|user-read-bit|user-write-bit|value-blame|value-contract|values|variable-reference->empty-namespace|variable-reference->module-base-phase|variable-reference->module-declaration-inspector|variable-reference->module-path-index|variable-reference->module-source|variable-reference->namespace|variable-reference->phase|variable-reference->resolved-module-path|variable-reference-constant\\\\?|variable-reference\\\\?|vector|vector->immutable-vector|vector->list|vector->pseudo-random-generator|vector->pseudo-random-generator!|vector->values|vector-append|vector-argmax|vector-argmin|vector-cas!|vector-copy|vector-copy!|vector-count|vector-drop|vector-drop-right|vector-fill!|vector-filter|vector-filter-not|vector-immutable|vector-length|vector-map|vector-map!|vector-member|vector-memq|vector-memv|vector-ref|vector-set!|vector-set\\\\*!|vector-set-performance-stats!|vector-split-at|vector-split-at-right|vector-take|vector-take-right|vector\\\\?|version|void|void\\\\?|weak-box-value|weak-box\\\\?|weak-set|weak-seteq|weak-seteqv|will-execute|will-executor\\\\?|will-register|will-try-execute|with-input-from-bytes|with-input-from-string|with-output-to-bytes|with-output-to-string|would-be-future|wrap-evt|wrapped-extra-arg-arrow-extra-neg-party-argument|wrapped-extra-arg-arrow-real-func|wrapped-extra-arg-arrow\\\\?|writable<%>|write|write-byte|write-bytes|write-bytes-avail|write-bytes-avail\\\\*|write-bytes-avail-evt|write-bytes-avail\\\\/enable-break|write-char|write-special|write-special-avail\\\\*|write-special-evt|write-string|writeln|xor|zero\\\\?)(?=$|[()\\\\[\\\\]{}\\",'\`;\\\\s])"}]},"byte-string":{"patterns":[{"begin":"#\\"","beginCaptures":{"0":[{"name":"punctuation.definition.string.begin.racket"}]},"end":"\\"","endCaptures":{"0":[{"name":"punctuation.definition.string.end.racket"}]},"name":"string.byte.racket","patterns":[{"include":"#escape-char-base"}]}]},"character":{"patterns":[{"match":"\\\\#\\\\\\\\(?:(?:[0-7]{3})|(?:u[0-9a-fA-F]{1,4})|(?:U[0-9a-fA-F]{1,6})|(?:(?:null?|newline|linefeed|backspace|v?tab|page|return|space|rubout|(?:[^\\\\w\\\\s]|\\\\d))(?![a-zA-Z]))|(?:[^\\\\W\\\\d](?=[\\\\W\\\\d])|\\\\W))","name":"string.quoted.single.racket"}]},"comment":{"patterns":[{"include":"#comment-line"},{"include":"#comment-block"},{"include":"#comment-sexp"}]},"comment-block":{"patterns":[{"begin":"#\\\\|","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.racket"}},"end":"\\\\|#","endCaptures":{"0":{"name":"punctuation.definition.comment.end.racket"}},"name":"comment.block.racket","patterns":[{"include":"#comment-block"}]}]},"comment-line":{"patterns":[{"beginCaptures":{"1":{"name":"punctuation.definition.comment.racket"}},"match":"(#!)[ /].*$","name":"comment.line.unix.racket"},{"captures":{"1":{"name":"punctuation.definition.comment.racket"}},"match":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])(;).*$","name":"comment.line.semicolon.racket"}]},"comment-sexp":{"patterns":[{"match":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])#;","name":"comment.sexp.racket"}]},"default-args":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.begin.racket"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"include":"#default-args-content"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.begin.racket"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"include":"#default-args-content"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.begin.racket"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"include":"#default-args-content"}]}]},"default-args-content":{"patterns":[{"include":"#comment"},{"include":"#argument"},{"include":"$base"}]},"default-args-struct":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.begin.racket"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"include":"#default-args-struct-content"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.begin.racket"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"include":"#default-args-struct-content"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.begin.racket"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"include":"#default-args-struct-content"}]}]},"default-args-struct-content":{"patterns":[{"include":"#comment"},{"include":"#argument-struct"},{"include":"$base"}]},"define":{"patterns":[{"include":"#define-func"},{"include":"#define-vals"},{"include":"#define-val"}]},"define-func":{"patterns":[{"begin":"(?<=[(\\\\[{])\\\\s*(define(?:(?:-for)?-syntax)?)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.type.lambda.racket"},"2":{"name":"punctuation.section.begin.racket"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"include":"#func-args"}]},{"begin":"(?<=[(\\\\[{])\\\\s*(define(?:(?:-for)?-syntax)?)\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"storage.type.lambda.racket"},"2":{"name":"punctuation.section.begin.racket"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"include":"#func-args"}]},{"begin":"(?<=[(\\\\[{])\\\\s*(define(?:(?:-for)?-syntax)?)\\\\s*({)","beginCaptures":{"1":{"name":"storage.type.lambda.racket"},"2":{"name":"punctuation.section.begin.racket"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"include":"#func-args"}]}]},"define-val":{"patterns":[{"captures":{"1":{"name":"storage.type.racket"},"2":{"name":"entity.name.constant.racket"}},"match":"(?<=[(\\\\[{])\\\\s*(define(?:(?:-for)?-syntax)?)\\\\s+([^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*)"}]},"define-vals":{"patterns":[{"begin":"(?<=[(\\\\[{])\\\\s*(define-(?:values(?:-for-syntax)?|syntaxes)?)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.type.racket"},"2":{"name":"punctuation.section.begin.racket"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"match":"[^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*","name":"entity.name.constant"}]},{"begin":"(?<=[(\\\\[{])\\\\s*(define-(?:values(?:-for-syntax)?|syntaxes)?)\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"storage.type.racket"},"2":{"name":"punctuation.section.begin.racket"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"match":"[^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*","name":"entity.name.constant"}]},{"begin":"(?<=[(\\\\[{])\\\\s*(define-(?:values(?:-for-syntax)?|syntaxes)?)\\\\s*({)","beginCaptures":{"1":{"name":"storage.type.racket"},"2":{"name":"punctuation.section.begin.racket"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"patterns":[{"match":"[^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*","name":"entity.name.constant"}]}]},"dot":{"patterns":[{"match":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])\\\\.(?=$|[()\\\\[\\\\]{}\\",'\`;\\\\s])","name":"punctuation.accessor.racket"}]},"escape-char":{"patterns":[{"include":"#escape-char-base"},{"match":"\\\\\\\\(?:(?:u[\\\\da-fA-F]{1,4})|(?:U[\\\\da-fA-F]{1,8}))","name":"constant.character.escape.racket"},{"include":"#escape-char-error"}]},"escape-char-base":{"patterns":[{"match":"\\\\\\\\(?:(?:[abtnvfre\\"'\\\\\\\\])|(?:[0-7]{1,3})|(?:x[\\\\da-fA-F]{1,2}))","name":"constant.character.escape.racket"}]},"escape-char-error":{"patterns":[{"match":"\\\\\\\\.","name":"invalid.illegal.escape.racket"}]},"format":{"patterns":[{"begin":"(?<=[(\\\\[{])\\\\s*(e?printf|format)\\\\s*(\\")","beginCaptures":{"1":{"name":"support.function.racket"},"2":{"name":"string.quoted.double.racket"}},"contentName":"string.quoted.double.racket","end":"\\"","endCaptures":{"0":{"name":"string.quoted.double.racket"}},"patterns":[{"include":"#format-string"},{"include":"#escape-char"}]}]},"format-string":{"patterns":[{"match":"~(?:(?:\\\\.?[n%aAsSvV])|[cCbBoOxX~\\\\s])","name":"constant.other.placeholder.racket"}]},"func-args":{"patterns":[{"include":"#function-name"},{"include":"#dot"},{"include":"#comment"},{"include":"#args"}]},"function-name":{"patterns":[{"begin":"(?<=[(\\\\[{])\\\\s*(\\\\|)","beginCaptures":{"1":{"name":"punctuation.verbatim.begin.racket"}},"contentName":"entity.name.function.racket","end":"\\\\|","endCaptures":{"0":"punctuation.verbatim.end.racket"},"name":"entity.name.function.racket"},{"begin":"(?<=[(\\\\[{])\\\\s*(\\\\#%|\\\\\\\\\\\\ |[^\\\\#()\\\\[\\\\]{}\\",'\`;\\\\s])","beginCaptures":{"1":{"name":"entity.name.function.racket"}},"contentName":"entity.name.function.racket","end":"(?=[()\\\\[\\\\]{}\\",'\`;\\\\s])","patterns":[{"match":"\\\\\\\\ "},{"begin":"\\\\|","beginCaptures":{"0":"punctuation.verbatim.begin.racket"},"end":"\\\\|","endCaptures":{"0":"punctuation.verbatim.end.racket"}}]}]},"hash":{"patterns":[{"begin":"\\\\#hash(?:eq(?:v)?)?\\\\(","beginCaptures":{"0":{"name":"punctuation.section.hash.begin.racket"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.hash.end.racket"}},"name":"meta.hash.racket","patterns":[{"include":"#hash-content"}]},{"begin":"\\\\#hash(?:eq(?:v)?)?\\\\[","beginCaptures":{"0":{"name":"punctuation.section.hash.begin.racket"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.hash.end.racket"}},"name":"meta.hash.racket","patterns":[{"include":"#hash-content"}]},{"begin":"\\\\#hash(?:eq(?:v)?)?\\\\{","beginCaptures":{"0":{"name":"punctuation.section.hash.begin.racket"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.hash.end.racket"}},"name":"meta.hash.racket","patterns":[{"include":"#hash-content"}]}]},"hash-content":{"patterns":[{"include":"#comment"},{"include":"#pairing"}]},"here-string":{"patterns":[{"begin":"#<<(.*)$","end":"^\\\\1$","name":"string.here.racket"}]},"keyword":{"patterns":[{"match":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])\\\\#:[^()\\\\[\\\\]{}\\",'\`;\\\\s]+","name":"keyword.other.racket"}]},"lambda":{"patterns":[{"include":"#lambda-onearg"},{"include":"#lambda-args"}]},"lambda-args":{"patterns":[{"begin":"(?<=[(\\\\[{])\\\\s*(lambda|\u03BB)\\\\s+(\\\\()","beginCaptures":{"1":{"name":"storage.type.lambda.racket"},"2":{"name":"punctuation.section.begin.racket"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"name":"meta.lambda.racket","patterns":[{"include":"#args"}]},{"begin":"(?<=[(\\\\[{])\\\\s*(lambda|\u03BB)\\\\s+({)","beginCaptures":{"1":{"name":"storage.type.lambda.racket"},"2":{"name":"punctuation.section.begin.racket"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"name":"meta.lambda.racket","patterns":[{"include":"#args"}]},{"begin":"(?<=[(\\\\[{])\\\\s*(lambda|\u03BB)\\\\s+(\\\\[)","beginCaptures":{"1":{"name":"storage.type.lambda.racket"},"2":{"name":"punctuation.section.begin.racket"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.end.racket"}},"name":"meta.lambda.racket","patterns":[{"include":"#args"}]}]},"lambda-onearg":[{"captures":{"1":{"name":"storage.type.lambda.racket"},"2":{"name":"variable.parameter.racket"}},"match":"(?<=[(\\\\[{])\\\\s*(lambda|\u03BB)\\\\s+([^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*)","name":"meta.lambda.racket"}],"list":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.list.begin.racket"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.list.end.racket"}},"name":"meta.list.racket","patterns":[{"include":"#list-content"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.list.begin.racket"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.list.end.racket"}},"name":"meta.list.racket","patterns":[{"include":"#list-content"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.list.begin.racket"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.list.end.racket"}},"name":"meta.list.racket","patterns":[{"include":"#list-content"}]}]},"list-content":{"patterns":[{"include":"#builtin-functions"},{"include":"#dot"},{"include":"$base"}]},"not-atom":{"patterns":[{"include":"#vector"},{"include":"#hash"},{"include":"#prefab-struct"},{"include":"#list"},{"match":"(?<=^|[()\\\\[\\\\]{}\\\\\\",'\`;\\\\s])(?:\\\\#[cC][iI]|\\\\#[cC][sS])(?=\\\\s)","name":"keyword.control.racket"},{"match":"(?<=^|[()\\\\[\\\\]{}\\\\\\",'\`;\\\\s])(?:\\\\#&)","name":"support.function.racket"}]},"number":{"patterns":[{"include":"#number-dec"},{"include":"#number-oct"},{"include":"#number-bin"},{"include":"#number-hex"}]},"number-bin":{"patterns":[{"match":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])(?:\\\\#[bB](?:\\\\#[eEiI])?|(?:\\\\#[eEiI])?\\\\#[bB])(?:(?:(?:(?:(?:(?:[+-]?[01]+\\\\#*\\\\/[01]+\\\\#*)|(?:[+-]?[01]+\\\\.[01]+\\\\#*)|(?:[+-]?[01]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[01]+\\\\#*))(?:[sldefSLDEF][+-]?[01]+)?)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f]))@(?:(?:(?:(?:[+-]?[01]+\\\\#*\\\\/[01]+\\\\#*)|(?:[+-]?[01]+\\\\.[01]+\\\\#*)|(?:[+-]?[01]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[01]+\\\\#*))(?:[sldefSLDEF][+-]?[01]+)?)|(?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])))|(?:(?:(?:(?:(?:[+-]?[01]+\\\\#*\\\\/[01]+\\\\#*)|(?:[+-]?[01]+\\\\.[01]+\\\\#*)|(?:[+-]?[01]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[01]+\\\\#*))(?:[sldefSLDEF][+-]?[01]+)?)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f]))?[+-](?:(?:(?:(?:[+-]?[01]+\\\\#*\\\\/[01]+\\\\#*)|(?:[+-]?[01]+\\\\.[01]+\\\\#*)|(?:[+-]?[01]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[01]+\\\\#*))(?:[sldefSLDEF][+-]?[01]+)?)|(?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])|)i)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])|(?:(?:[+-]?[01]+\\\\#*\\\\/[01]+\\\\#*)|(?:[+-]?[01]*\\\\.[01]+\\\\#*)|(?:[+-]?[01]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[01]+\\\\#*))(?:[sldefSLDEF][+-]?[01]+)?)(?=$|[()\\\\[\\\\]{}\\",'\`;\\\\s])","name":"constant.numeric.bin.racket"}]},"number-dec":{"patterns":[{"match":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])(?:(?:\\\\#[dD])?(?:\\\\#[eEiI])?|(?:\\\\#[eEiI])?(?:\\\\#[dD])?)(?:(?:(?:(?:(?:(?:[+-]?\\\\d+\\\\#*\\\\/\\\\d+\\\\#*)|(?:[+-]?\\\\d+\\\\.\\\\d+\\\\#*)|(?:[+-]?\\\\d+\\\\#*\\\\.\\\\#*)|(?:[+-]?\\\\d+\\\\#*))(?:[sldefSLDEF][+-]?\\\\d+)?)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f]))@(?:(?:(?:(?:[+-]?\\\\d+\\\\#*\\\\/\\\\d+\\\\#*)|(?:[+-]?\\\\d+\\\\.\\\\d+\\\\#*)|(?:[+-]?\\\\d+\\\\#*\\\\.\\\\#*)|(?:[+-]?\\\\d+\\\\#*))(?:[sldefSLDEF][+-]?\\\\d+)?)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])))|(?:(?:(?:(?:(?:[+-]?\\\\d+\\\\#*\\\\/\\\\d+\\\\#*)|(?:[+-]?\\\\d+\\\\.\\\\d+\\\\#*)|(?:[+-]?\\\\d+\\\\#*\\\\.\\\\#*)|(?:[+-]?\\\\d+\\\\#*))(?:[sldefSLDEF][+-]?\\\\d+)?)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f]))?[+-](?:(?:(?:(?:[+-]?\\\\d+\\\\#*\\\\/\\\\d+\\\\#*)|(?:[+-]?\\\\d+\\\\.\\\\d+\\\\#*)|(?:[+-]?\\\\d+\\\\#*\\\\.\\\\#*)|(?:[+-]?\\\\d+\\\\#*))(?:[sldefSLDEF][+-]?\\\\d+)?)|(?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])|)i)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])|(?:(?:[+-]?\\\\d+\\\\#*\\\\/\\\\d+\\\\#*)|(?:[+-]?\\\\d*\\\\.\\\\d+\\\\#*)|(?:[+-]?\\\\d+\\\\#*\\\\.\\\\#*)|(?:[+-]?\\\\d+\\\\#*))(?:[sldefSLDEF][+-]?\\\\d+)?)(?=$|[()\\\\[\\\\]{}\\",'\`;\\\\s])","name":"constant.numeric.racket"}]},"number-hex":{"patterns":[{"match":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])(?:\\\\#[xX](?:\\\\#[eEiI])?|(?:\\\\#[eEiI])?\\\\#[xX])(?:(?:(?:(?:(?:(?:[+-]?[0-9a-fA-F]+\\\\#*\\\\/[0-9a-fA-F]+\\\\#*)|(?:[+-]?[0-9a-fA-F]\\\\.[0-9a-fA-F]+\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\#*))(?:[slSL][+-]?[0-9a-fA-F]+)?)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f]))@(?:(?:(?:(?:[+-]?[0-9a-fA-F]+\\\\#*\\\\/[0-9a-fA-F]+\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\.[0-9a-fA-F]+\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\#*))(?:[slSL][+-]?[0-9a-fA-F]+)?)|(?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])))|(?:(?:(?:(?:(?:[+-]?[0-9a-fA-F]+\\\\#*\\\\/[0-9a-fA-F]+\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\.[0-9a-fA-F]+\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\#*))(?:[slSL][+-]?[0-9a-fA-F]+)?)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f]))?[+-](?:(?:(?:(?:[+-]?[0-9a-fA-F]+\\\\#*\\\\/[0-9a-fA-F]+\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\.[0-9a-fA-F]+\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\#*))(?:[slSL][+-]?[0-9a-fA-F]+)?)|(?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])|)i)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])|(?:(?:[+-]?[0-9a-fA-F]+\\\\#*\\\\/[0-9a-fA-F]+\\\\#*)|(?:[+-]?[0-9a-fA-F]*\\\\.[0-9a-fA-F]+\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\#*))(?:[slSL][+-]?[0-9a-fA-F]+)?)(?=$|[()\\\\[\\\\]{}\\",'\`;\\\\s])","name":"constant.numeric.hex.racket"}]},"number-oct":{"patterns":[{"match":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])(?:\\\\#[oO](?:\\\\#[eEiI])?|(?:\\\\#[eEiI])?\\\\#[oO])(?:(?:(?:(?:(?:(?:[+-]?[0-7]+\\\\#*\\\\/[0-7]+\\\\#*)|(?:[+-]?[0-7]+\\\\.[0-7]+\\\\#*)|(?:[+-]?[0-7]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[0-7]+\\\\#*))(?:[sldefSLDEF][+-]?[0-7]+)?)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f]))@(?:(?:(?:(?:[+-]?[0-7]+\\\\#*\\\\/[0-7]+\\\\#*)|(?:[+-]?[0-7]+\\\\.[0-7]+\\\\#*)|(?:[+-]?[0-7]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[0-7]+\\\\#*))(?:[sldefSLDEF][+-]?[0-7]+)?)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])))|(?:(?:(?:(?:(?:[+-]?[0-7]+\\\\#*\\\\/[0-7]+\\\\#*)|(?:[+-]?[0-7]+\\\\.[0-7]+\\\\#*)|(?:[+-]?[0-7]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[0-7]+\\\\#*))(?:[sldefSLDEF][+-]?[0-7]+)?)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f]))?[+-](?:(?:(?:(?:[+-]?[0-7]+\\\\#*\\\\/[0-7]+\\\\#*)|(?:[+-]?[0-7]+\\\\.[0-7]+\\\\#*)|(?:[+-]?[0-7]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[0-7]+\\\\#*))(?:[sldefSLDEF][+-]?[0-7]+)?)|(?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])|)i)|[+-](?:(?:[iI][nN][fF])\\\\.[0f]|(?:[nN][aA][nN])\\\\.[0f])|(?:(?:[+-]?[0-7]+\\\\#*\\\\/[0-7]+\\\\#*)|(?:[+-]?[0-7]*\\\\.[0-7]+\\\\#*)|(?:[+-]?[0-7]+\\\\#*\\\\.\\\\#*)|(?:[+-]?[0-7]+\\\\#*))(?:[sldefSLDEF][+-]?[0-7]+)?)(?=$|[()\\\\[\\\\]{}\\",'\`;\\\\s])","name":"constant.numeric.octal.racket"}]},"pair-content":{"patterns":[{"include":"#dot"},{"include":"#comment"},{"include":"#atom"}]},"pairing":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.pair.begin.racket"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.pair.end.racket"}},"name":"meta.list.racket","patterns":[{"include":"#pair-content"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.pair.begin.racket"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.pair.end.racket"}},"name":"meta.list.racket","patterns":[{"include":"#pair-content"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.pair.begin.racket"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.pair.end.racket"}},"name":"meta.list.racket","patterns":[{"include":"#pair-content"}]}]},"prefab-struct":{"patterns":[{"begin":"#s\\\\(","beginCaptures":{"0":{"name":"punctuation.section.prefab-struct.begin.racket"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.prefab-struct.end.racket"}},"name":"meta.prefab-struct.racket","patterns":[{"include":"$base"}]},{"begin":"#s\\\\[","beginCaptures":{"0":{"name":"punctuation.section.prefab-struct.begin.racket"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.prefab-struct.end.racket"}},"name":"meta.prefab-struct.racket","patterns":[{"include":"$base"}]},{"begin":"#s{","beginCaptures":{"0":{"name":"punctuation.section.prefab-struct.begin.racket"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.prefab-struct.end.racket"}},"name":"meta.prefab-struct.racket","patterns":[{"include":"$base"}]}]},"quote":{"patterns":[{"match":"(?<=^|[()\\\\[\\\\]{}\\\\\\",'\`;\\\\s])(?:,@|'|\`|,|\\\\#'|\\\\#\`|\\\\#,|\\\\#~|\\\\#,@)+(?=[()\\\\[\\\\]{}\\\\\\",'\`;\\\\s]|\\\\#[^%]|[^()\\\\[\\\\]{}\\",'\`;\\\\s])","name":"support.function.racket"}]},"regexp-byte-string":{"patterns":[{"begin":"#(r|p)x#\\"","beginCaptures":{"0":[{"name":"punctuation.definition.string.begin.racket"}]},"end":"\\"","endCaptures":{"0":[{"name":"punctuation.definition.string.end.racket"}]},"name":"string.regexp.byte.racket","patterns":[{"include":"#escape-char-base"}]}]},"regexp-string":{"patterns":[{"begin":"#(r|p)x\\"","beginCaptures":{"0":[{"name":"punctuation.definition.string.begin.racket"}]},"end":"\\"","endCaptures":{"0":[{"name":"punctuation.definition.string.end.racket"}]},"name":"string.regexp.racket","patterns":[{"include":"#escape-char-base"}]}]},"string":{"patterns":[{"include":"#byte-string"},{"include":"#regexp-byte-string"},{"include":"#regexp-string"},{"include":"#base-string"},{"include":"#here-string"}]},"struct":{"patterns":[{"begin":"(?<=[(\\\\[{])\\\\s*(struct)\\\\s+([^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*)(?:\\\\s+[^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*)?\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.struct.racket"},"2":{"name":"entity.name.struct.racket"},"3":{"name":"punctuation.section.fields.begin.racket"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.fields.end.racket"}},"name":"meta.struct.fields.racket","patterns":[{"include":"#comment"},{"include":"#default-args-struct"},{"include":"#struct-field"}]},{"begin":"(?<=[(\\\\[{])\\\\s*(struct)\\\\s+([^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*)(?:\\\\s+[^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*)?\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"storage.struct.racket"},"2":{"name":"entity.name.struct.racket"},"3":{"name":"punctuation.section.fields.begin.racket"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.fields.end.racket"}},"name":"meta.struct.fields.racket","patterns":[{"include":"#default-args-struct"},{"include":"#struct-field"}]},{"begin":"(?<=[(\\\\[{])\\\\s*(struct)\\\\s+([^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*)(?:\\\\s+[^(\\\\#)\\\\[\\\\]{}\\",'\`;\\\\s][^()\\\\[\\\\]{}\\",'\`;\\\\s]*)?\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"storage.struct.racket"},"2":{"name":"entity.name.struct.racket"},"3":{"name":"punctuation.section.fields.begin.racket"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.fields.end.racket"}},"name":"meta.struct.fields.racket","patterns":[{"include":"#default-args-struct"},{"include":"#struct-field"}]}]},"struct-field":{"patterns":[{"begin":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])(\\\\|)","beginCaptures":{"1":{"name":"punctuation.verbatim.begin.racket"}},"contentName":"variable.other.member.racket","end":"\\\\|","endCaptures":{"0":{"name":"punctuation.verbatim.end.racket"}}},{"begin":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])(\\\\#%|\\\\\\\\\\\\ |[^\\\\#()\\\\[\\\\]{}\\",'\`;\\\\s])","beginCaptures":{"1":{"name":"variable.other.member.racket"}},"contentName":"variable.other.member.racket","end":"(?=[()\\\\[\\\\]{}\\",'\`;\\\\s])","patterns":[{"match":"\\\\\\\\ "},{"begin":"\\\\|","beginCaptures":{"0":{"name":"punctuation.verbatim.begin.racket"}},"end":"\\\\|","endCaptures":{"0":{"name":"punctuation.verbatim.end.racket"}}}]}]},"symbol":{"patterns":[{"begin":"(?<=^|[()\\\\[\\\\]{}\\",;\\\\s])(?:\`|')+(\\\\|)","beginCaptures":{"1":{"name":"punctuation.verbatim.begin.racket"}},"end":"\\\\|","endCaptures":{"0":{"name":"punctuation.verbatim.end.racket"}},"name":"string.quoted.single.racket"},{"begin":"(?<=^|[()\\\\[\\\\]{}\\",;\\\\s])(?:\`|')+(?:\\\\#%|\\\\\\\\\\\\ |[^\\\\#()\\\\[\\\\]{}\\",'\`;\\\\s])","end":"(?=[()\\\\[\\\\]{}\\",'\`;\\\\s])","name":"string.quoted.single.racket","patterns":[{"match":"\\\\\\\\ "},{"begin":"\\\\|","beginCaptures":{"0":{"name":"punctuation.verbatim.begin.racket"}},"end":"\\\\|","endCaptures":{"0":{"name":"punctuation.verbatim.end.racket"}}}]}]},"variable":{"patterns":[{"begin":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])(\\\\|)","beginCaptures":{"1":{"name":"punctuation.verbatim.begin.racket"}},"end":"\\\\|","endCaptures":{"0":{"name":"punctuation.verbatim.end.racket"}}},{"begin":"(?<=^|[()\\\\[\\\\]{}\\",'\`;\\\\s])(?:\\\\#%|\\\\\\\\\\\\ |[^\\\\#()\\\\[\\\\]{}\\",'\`;\\\\s])","end":"(?=[()\\\\[\\\\]{}\\",'\`;\\\\s])","patterns":[{"match":"\\\\\\\\ "},{"begin":"\\\\|","beginCaptures":{"0":{"name":"punctuation.verbatim.begin.racket"}},"end":"\\\\|","endCaptures":{"0":{"name":"punctuation.verbatim.end.racket"}}}]}]},"vector":{"patterns":[{"begin":"\\\\#(?:fl|Fl|fx|Fx)?[0-9]*\\\\(","beginCaptures":{"0":{"name":"punctuation.section.vector.begin.racket"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.vector.end.racket"}},"name":"meta.vector.racket","patterns":[{"include":"$base"}]},{"begin":"\\\\#(?:fl|Fl|fx|Fx)?[0-9]*\\\\[","beginCaptures":{"0":{"name":"punctuation.section.vector.begin.racket"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.vector.end.racket"}},"name":"meta.vector.racket","patterns":[{"include":"$base"}]},{"begin":"\\\\#(?:fl|Fl|fx|Fx)?[0-9]*{","beginCaptures":{"0":{"name":"punctuation.section.vector.begin.racket"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.vector.end.racket"}},"name":"meta.vector.racket","patterns":[{"include":"$base"}]}]}},"scopeName":"source.racket"}`)),Nie=[Oie]});var B4={};x(B4,{default:()=>$ie});var Lie,$ie,x4=_(()=>{Lie=Object.freeze(JSON.parse(`{"displayName":"Raku","name":"raku","patterns":[{"begin":"^=begin","end":"^=end","name":"comment.block.perl"},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.perl"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.perl"}},"end":"\\\\n","name":"comment.line.number-sign.perl"}]},{"captures":{"1":{"name":"storage.type.class.perl.6"},"3":{"name":"entity.name.type.class.perl.6"}},"match":"(class|enum|grammar|knowhow|module|package|role|slang|subset)(\\\\s+)(((?:::|')?(?:([a-zA-Z_\\\\x{C0}-\\\\x{FF}\\\\$])([a-zA-Z0-9_\\\\x{C0}-\\\\x{FF}\\\\\\\\$]|[\\\\-'][a-zA-Z0-9_\\\\x{C0}-\\\\x{FF}\\\\$])*))+)","name":"meta.class.perl.6"},{"begin":"(?<=\\\\s)'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.single.perl","patterns":[{"match":"\\\\\\\\['\\\\\\\\]","name":"constant.character.escape.perl"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.perl"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.perl"}},"name":"string.quoted.double.perl","patterns":[{"match":"\\\\\\\\[abtnfre\\"\\\\\\\\]","name":"constant.character.escape.perl"}]},{"begin":"q(q|to|heredoc)*\\\\s*:?(q|to|heredoc)*\\\\s*/(.+)/","end":"\\\\3","name":"string.quoted.single.heredoc.perl"},{"begin":"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*{{","end":"}}","name":"string.quoted.double.heredoc.brace.perl","patterns":[{"include":"#qq_brace_string_content"}]},{"begin":"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*\\\\(\\\\(","end":"\\\\)\\\\)","name":"string.quoted.double.heredoc.paren.perl","patterns":[{"include":"#qq_paren_string_content"}]},{"begin":"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*\\\\[\\\\[","end":"\\\\]\\\\]","name":"string.quoted.double.heredoc.bracket.perl","patterns":[{"include":"#qq_bracket_string_content"}]},{"begin":"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*{","end":"}","name":"string.quoted.single.heredoc.brace.perl","patterns":[{"include":"#qq_brace_string_content"}]},{"begin":"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*/","end":"/","name":"string.quoted.single.heredoc.slash.perl","patterns":[{"include":"#qq_slash_string_content"}]},{"begin":"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*\\\\(","end":"\\\\)","name":"string.quoted.single.heredoc.paren.perl","patterns":[{"include":"#qq_paren_string_content"}]},{"begin":"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*\\\\[","end":"\\\\]","name":"string.quoted.single.heredoc.bracket.perl","patterns":[{"include":"#qq_bracket_string_content"}]},{"begin":"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*'","end":"'","name":"string.quoted.single.heredoc.single.perl","patterns":[{"include":"#qq_single_string_content"}]},{"begin":"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\s*\\"","end":"\\"","name":"string.quoted.single.heredoc.double.perl","patterns":[{"include":"#qq_double_string_content"}]},{"match":"\\\\b\\\\$\\\\w+\\\\b","name":"variable.other.perl"},{"match":"\\\\b(macro|sub|submethod|method|multi|proto|only|rule|token|regex|category)\\\\b","name":"storage.type.declare.routine.perl"},{"match":"\\\\b(self)\\\\b","name":"variable.language.perl"},{"match":"\\\\b(use|require)\\\\b","name":"keyword.other.include.perl"},{"match":"\\\\b(if|else|elsif|unless)\\\\b","name":"keyword.control.conditional.perl"},{"match":"\\\\b(let|my|our|state|temp|has|constant)\\\\b","name":"storage.type.variable.perl"},{"match":"\\\\b(for|loop|repeat|while|until|gather|given)\\\\b","name":"keyword.control.repeat.perl"},{"match":"\\\\b(take|do|when|next|last|redo|return|contend|maybe|defer|default|exit|make|continue|break|goto|leave|async|lift)\\\\b","name":"keyword.control.flowcontrol.perl"},{"match":"\\\\b(is|as|but|trusts|of|returns|handles|where|augment|supersede)\\\\b","name":"storage.modifier.type.constraints.perl"},{"match":"\\\\b(BEGIN|CHECK|INIT|START|FIRST|ENTER|LEAVE|KEEP|UNDO|NEXT|LAST|PRE|POST|END|CATCH|CONTROL|TEMP)\\\\b","name":"meta.function.perl"},{"match":"\\\\b(die|fail|try|warn)\\\\b","name":"keyword.control.control-handlers.perl"},{"match":"\\\\b(prec|irs|ofs|ors|export|deep|binary|unary|reparsed|rw|parsed|cached|readonly|defequiv|will|ref|copy|inline|tighter|looser|equiv|assoc|required)\\\\b","name":"storage.modifier.perl"},{"match":"\\\\b(NaN|Inf)\\\\b","name":"constant.numeric.perl"},{"match":"\\\\b(oo|fatal)\\\\b","name":"keyword.other.pragma.perl"},{"match":"\\\\b(Object|Any|Junction|Whatever|Capture|MatchSignature|Proxy|Matcher|Package|Module|ClassGrammar|Scalar|Array|Hash|KeyHash|KeySet|KeyBagPair|List|Seq|Range|Set|Bag|Mapping|Void|UndefFailure|Exception|Code|Block|Routine|Sub|MacroMethod|Submethod|Regex|Str|str|Blob|Char|ByteCodepoint|Grapheme|StrPos|StrLen|Version|NumComplex|num|complex|Bit|bit|bool|True|FalseIncreasing|Decreasing|Ordered|Callable|AnyCharPositional|Associative|Ordering|KeyExtractorComparator|OrderingPair|IO|KitchenSink|RoleInt|int|int1|int2|int4|int8|int16|int32|int64Rat|rat|rat1|rat2|rat4|rat8|rat16|rat32|rat64Buf|buf|buf1|buf2|buf4|buf8|buf16|buf32|buf64UInt|uint|uint1|uint2|uint4|uint8|uint16|uint32uint64|Abstraction|utf8|utf16|utf32)\\\\b","name":"support.type.perl6"},{"match":"\\\\b(div|xx|x|mod|also|leg|cmp|before|after|eq|ne|le|lt|not|gt|ge|eqv|ff|fff|and|andthen|or|xor|orelse|extra|lcm|gcd)\\\\b","name":"keyword.operator.perl"},{"match":"(\\\\$|@|%|&)(\\\\*|:|!|\\\\^|~|=|\\\\?|(<(?=.+>)))?([a-zA-Z_\\\\x{C0}-\\\\x{FF}\\\\$])([a-zA-Z0-9_\\\\x{C0}-\\\\x{FF}\\\\$]|[\\\\-'][a-zA-Z0-9_\\\\x{C0}-\\\\x{FF}\\\\$])*","name":"variable.other.identifier.perl.6"},{"match":"\\\\b(eager|hyper|substr|index|rindex|grep|map|sort|join|lines|hints|chmod|split|reduce|min|max|reverse|truncate|zip|cat|roundrobin|classify|first|sum|keys|values|pairs|defined|delete|exists|elems|end|kv|any|all|one|wrap|shape|key|value|name|pop|push|shift|splice|unshift|floor|ceiling|abs|exp|log|log10|rand|sign|sqrt|sin|cos|tan|round|strand|roots|cis|unpolar|polar|atan2|pick|chop|p5chop|chomp|p5chomp|lc|lcfirst|uc|ucfirst|capitalize|normalize|pack|unpack|quotemeta|comb|samecase|sameaccent|chars|nfd|nfc|nfkd|nfkc|printf|sprintf|caller|evalfile|run|runinstead|nothing|want|bless|chr|ord|gmtime|time|eof|localtime|gethost|getpw|chroot|getlogin|getpeername|kill|fork|wait|perl|graphs|codes|bytes|clone|print|open|read|write|readline|say|seek|close|opendir|readdir|slurp|spurt|shell|run|pos|fmt|vec|link|unlink|symlink|uniq|pair|asin|atan|sec|cosec|cotan|asec|acosec|acotan|sinh|cosh|tanh|asinh|done|acos|acosh|atanh|sech|cosech|cotanh|sech|acosech|acotanh|asech|ok|nok|plan_ok|dies_ok|lives_ok|skip|todo|pass|flunk|force_todo|use_ok|isa_ok|diag|is_deeply|isnt|like|skip_rest|unlike|cmp_ok|eval_dies_ok|nok_error|eval_lives_ok|approx|is_approx|throws_ok|version_lt|plan|EVAL|succ|pred|times|nonce|once|signature|new|connect|operator|undef|undefine|sleep|from|to|infix|postfix|prefix|circumfix|postcircumfix|minmax|lazy|count|unwrap|getc|pi|e|context|void|quasi|body|each|contains|rewinddir|subst|can|isa|flush|arity|assuming|rewind|callwith|callsame|nextwith|nextsame|attr|eval_elsewhere|none|srand|trim|trim_start|trim_end|lastcall|WHAT|WHERE|HOW|WHICH|VAR|WHO|WHENCE|ACCEPTS|REJECTS|not|true|iterator|by|re|im|invert|flip|gist|flat|tree|is-prime|throws_like|trans)\\\\b","name":"support.function.perl"}],"repository":{"qq_brace_string_content":{"begin":"{","end":"}","patterns":[{"include":"#qq_brace_string_content"}]},"qq_bracket_string_content":{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#qq_bracket_string_content"}]},"qq_double_string_content":{"begin":"\\"","end":"\\"","patterns":[{"include":"#qq_double_string_content"}]},"qq_paren_string_content":{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#qq_paren_string_content"}]},"qq_single_string_content":{"begin":"'","end":"'","patterns":[{"include":"#qq_single_string_content"}]},"qq_slash_string_content":{"begin":"\\\\\\\\/","end":"\\\\\\\\/","patterns":[{"include":"#qq_slash_string_content"}]}},"scopeName":"source.perl.6","aliases":["perl6"]}`)),$ie=[Lie]});var v4={};x(v4,{default:()=>jie});var Rie,jie,E4=_(()=>{Ye();DB();Rie=Object.freeze(JSON.parse(`{"displayName":"ASP.NET Razor","fileTypes":["razor","cshtml"],"injections":{"string.quoted.double.html":{"patterns":[{"include":"#explicit-razor-expression"},{"include":"#implicit-expression"}]},"string.quoted.single.html":{"patterns":[{"include":"#explicit-razor-expression"},{"include":"#implicit-expression"}]}},"name":"razor","patterns":[{"include":"#razor-control-structures"},{"include":"text.html.basic"}],"repository":{"addTagHelper-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.addTagHelper"},"3":{"patterns":[{"include":"#tagHelper-directive-argument"}]}},"match":"(@)(addTagHelper)\\\\s+([^$]+)?","name":"meta.directive"},"attribute-directive":{"begin":"(@)(attribute)\\\\b\\\\s+","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.attribute"}},"end":"(?<=\\\\])|$","name":"meta.directive","patterns":[{"include":"source.cs#attribute-section"}]},"await-prefix":{"match":"(await)\\\\s+","name":"keyword.other.await.cs"},"balanced-brackets-csharp":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.squarebracket.open.cs"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.squarebracket.close.cs"}},"name":"razor.test.balanced.brackets","patterns":[{"include":"source.cs"}]},"balanced-parenthesis-csharp":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.parenthesis.open.cs"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parenthesis.close.cs"}},"name":"razor.test.balanced.parenthesis","patterns":[{"include":"source.cs"}]},"catch-clause":{"begin":"(?:^|(?<=}))\\\\s*(catch)\\\\b\\\\s*?(?=[\\\\n\\\\(\\\\{])","beginCaptures":{"1":{"name":"keyword.control.try.catch.cs"}},"end":"(?<=})","name":"meta.statement.catch.razor","patterns":[{"include":"#catch-condition"},{"include":"source.cs#when-clause"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"catch-condition":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.open.cs"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.cs"}},"patterns":[{"captures":{"1":{"patterns":[{"include":"source.cs#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*(?:(\\\\g<identifier>)\\\\b)?"}]},"code-directive":{"begin":"(@)(code)((?=\\\\{)|\\\\s+)","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.code"}},"end":"(?<=})|\\\\s","patterns":[{"include":"#directive-codeblock"}]},"csharp-code-block":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.curlybrace.open.cs"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.curlybrace.close.cs"}},"name":"meta.structure.razor.csharp.codeblock","patterns":[{"include":"#razor-codeblock-body"}]},"csharp-condition":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.parenthesis.open.cs"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parenthesis.close.cs"}},"patterns":[{"include":"source.cs#local-variable-declaration"},{"include":"source.cs#expression"},{"include":"source.cs#punctuation-comma"},{"include":"source.cs#punctuation-semicolon"}]},"directive-codeblock":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.razor.directive.codeblock.open"}},"contentName":"source.cs","end":"(\\\\})","endCaptures":{"1":{"name":"keyword.control.razor.directive.codeblock.close"}},"name":"meta.structure.razor.directive.codeblock","patterns":[{"include":"source.cs#class-or-struct-members"}]},"directive-markupblock":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.razor.directive.codeblock.open"}},"end":"(\\\\})","endCaptures":{"1":{"name":"keyword.control.razor.directive.codeblock.close"}},"name":"meta.structure.razor.directive.markblock","patterns":[{"include":"$self"}]},"directives":{"patterns":[{"include":"#code-directive"},{"include":"#functions-directive"},{"include":"#page-directive"},{"include":"#addTagHelper-directive"},{"include":"#removeTagHelper-directive"},{"include":"#tagHelperPrefix-directive"},{"include":"#model-directive"},{"include":"#inherits-directive"},{"include":"#implements-directive"},{"include":"#namespace-directive"},{"include":"#inject-directive"},{"include":"#attribute-directive"},{"include":"#section-directive"},{"include":"#layout-directive"},{"include":"#using-directive"},{"include":"#rendermode-directive"},{"include":"#preservewhitespace-directive"},{"include":"#typeparam-directive"}]},"do-statement":{"begin":"(?:(@))(do)\\\\b\\\\s","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.loop.do.cs"}},"end":"(?<=})","name":"meta.statement.do.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"do-statement-with-optional-transition":{"begin":"(?:^\\\\s*|(@))(do)\\\\b\\\\s","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.loop.do.cs"}},"end":"(?<=})","name":"meta.statement.do.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"else-part":{"begin":"(?:^|(?<=}))\\\\s*(else)\\\\b\\\\s*?(?: (if))?\\\\s*?(?=[\\\\n\\\\(\\\\{])","beginCaptures":{"1":{"name":"keyword.control.conditional.else.cs"},"2":{"name":"keyword.control.conditional.if.cs"}},"end":"(?<=})","name":"meta.statement.else.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"escaped-transition":{"match":"@@","name":"constant.character.escape.razor.transition"},"explicit-razor-expression":{"begin":"(@)\\\\(","beginCaptures":{"0":{"name":"keyword.control.cshtml"},"1":{"patterns":[{"include":"#transition"}]}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.control.cshtml"}},"name":"meta.expression.explicit.cshtml","patterns":[{"include":"source.cs#expression"}]},"finally-clause":{"begin":"(?:^|(?<=}))\\\\s*(finally)\\\\b\\\\s*?(?=[\\\\n\\\\{])","beginCaptures":{"1":{"name":"keyword.control.try.finally.cs"}},"end":"(?<=})","name":"meta.statement.finally.razor","patterns":[{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"for-statement":{"begin":"(?:(@))(for)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.loop.for.cs"}},"end":"(?<=})","name":"meta.statement.for.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"for-statement-with-optional-transition":{"begin":"(?:^\\\\s*|(@))(for)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.loop.for.cs"}},"end":"(?<=})","name":"meta.statement.for.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"foreach-condition":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.open.cs"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.cs"}},"patterns":[{"captures":{"1":{"name":"keyword.other.var.cs"},"2":{"patterns":[{"include":"source.cs#type"}]},"7":{"name":"entity.name.variable.local.cs"},"8":{"name":"keyword.control.loop.in.cs"}},"match":"(?:(\\\\bvar\\\\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+(\\\\g<identifier>)\\\\s+\\\\b(in)\\\\b"},{"captures":{"1":{"name":"keyword.other.var.cs"},"2":{"patterns":[{"include":"source.cs#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":"source.cs#expression"}]},"foreach-statement":{"begin":"(?:(@)(await\\\\s+)?)(foreach)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"patterns":[{"include":"#await-prefix"}]},"3":{"name":"keyword.control.loop.foreach.cs"}},"end":"(?<=})","name":"meta.statement.foreach.razor","patterns":[{"include":"#foreach-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"foreach-statement-with-optional-transition":{"begin":"(?:^\\\\s*|(@)(await\\\\s+)?)(foreach)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"patterns":[{"include":"#await-prefix"}]},"3":{"name":"keyword.control.loop.foreach.cs"}},"end":"(?<=})","name":"meta.statement.foreach.razor","patterns":[{"include":"#foreach-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"functions-directive":{"begin":"(@)(functions)((?=\\\\{)|\\\\s+)","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.functions"}},"end":"(?<=})|\\\\s","patterns":[{"include":"#directive-codeblock"}]},"if-statement":{"begin":"(?:(@))(if)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.conditional.if.cs"}},"end":"(?<=})","name":"meta.statement.if.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"if-statement-with-optional-transition":{"begin":"(?:^\\\\s*|(@))(if)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.conditional.if.cs"}},"end":"(?<=})","name":"meta.statement.if.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"implements-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.implements"},"3":{"patterns":[{"include":"source.cs#type"}]}},"match":"(@)(implements)\\\\s+([^$]+)?","name":"meta.directive"},"implicit-expression":{"begin":"(?<![[:alpha:][:alnum:]])(@)","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]}},"contentName":"source.cs","end":"(?=[\\\\s<>\\\\{\\\\}\\\\)\\\\]'\\"])","name":"meta.expression.implicit.cshtml","patterns":[{"include":"#await-prefix"},{"include":"#implicit-expression-body"}]},"implicit-expression-accessor":{"match":"(?<=\\\\.)[_[:alpha:]][_[:alnum:]]*","name":"variable.other.object.property.cs"},"implicit-expression-accessor-start":{"begin":"([_[:alpha:]][_[:alnum:]]*)","beginCaptures":{"1":{"name":"variable.other.object.cs"}},"end":"(?=[\\\\s<>\\\\{\\\\}\\\\)\\\\]'\\"])","patterns":[{"include":"#implicit-expression-continuation"}]},"implicit-expression-body":{"end":"(?=[\\\\s<>\\\\{\\\\}\\\\)\\\\]'\\"])","patterns":[{"include":"#implicit-expression-invocation-start"},{"include":"#implicit-expression-accessor-start"}]},"implicit-expression-continuation":{"end":"(?=[\\\\s<>\\\\{\\\\}\\\\)\\\\]'\\"])","patterns":[{"include":"#balanced-parenthesis-csharp"},{"include":"#balanced-brackets-csharp"},{"include":"#implicit-expression-invocation"},{"include":"#implicit-expression-accessor"},{"include":"#implicit-expression-extension"}]},"implicit-expression-dot-operator":{"captures":{"1":{"name":"punctuation.accessor.cs"}},"match":"(\\\\.)(?=[_[:alpha:]][_[:alnum:]]*)"},"implicit-expression-invocation":{"match":"(?<=\\\\.)[_[:alpha:]][_[:alnum:]]*(?=\\\\()","name":"entity.name.function.cs"},"implicit-expression-invocation-start":{"begin":"([_[:alpha:]][_[:alnum:]]*)(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.cs"}},"end":"(?=[\\\\s<>\\\\{\\\\}\\\\)\\\\]'\\"])","patterns":[{"include":"#implicit-expression-continuation"}]},"implicit-expression-null-conditional-operator":{"captures":{"1":{"name":"keyword.operator.null-conditional.cs"}},"match":"(\\\\?)(?=[.\\\\[])"},"implicit-expression-null-forgiveness-operator":{"captures":{"1":{"name":"keyword.operator.logical.cs"}},"match":"(\\\\!)(?=(?:\\\\.[_[:alpha:]][_[:alnum:]]*)|\\\\?|[\\\\[\\\\(])"},"implicit-expression-operator":{"patterns":[{"include":"#implicit-expression-dot-operator"},{"include":"#implicit-expression-null-conditional-operator"},{"include":"#implicit-expression-null-forgiveness-operator"}]},"inherits-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.inherits"},"3":{"patterns":[{"include":"source.cs#type"}]}},"match":"(@)(inherits)\\\\s+([^$]+)?","name":"meta.directive"},"inject-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.inject"},"3":{"patterns":[{"include":"source.cs#type"}]},"4":{"name":"entity.name.variable.property.cs"}},"match":"(@)(inject)\\\\s*([\\\\S\\\\s]+?)?\\\\s*([_[:alpha:]][_[:alnum:]]*)?\\\\s*(?=$)","name":"meta.directive"},"layout-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.layout"},"3":{"patterns":[{"include":"source.cs#type"}]}},"match":"(@)(layout)\\\\s+([^$]+)?","name":"meta.directive"},"lock-statement":{"begin":"(?:(@))(lock)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.other.lock.cs"}},"end":"(?<=})","name":"meta.statement.lock.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"lock-statement-with-optional-transition":{"begin":"(?:^\\\\s*|(@))(lock)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.other.lock.cs"}},"end":"(?<=})","name":"meta.statement.lock.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"model-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.model"},"3":{"patterns":[{"include":"source.cs#type"}]}},"match":"(@)(model)\\\\s+([^$]+)?","name":"meta.directive"},"namespace-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.namespace"},"3":{"patterns":[{"include":"#namespace-directive-argument"}]}},"match":"(@)(namespace)\\\\s+([^\\\\s]+)?","name":"meta.directive"},"namespace-directive-argument":{"captures":{"1":{"name":"entity.name.type.namespace.cs"},"2":{"name":"punctuation.accessor.cs"}},"match":"([_[:alpha:]][_[:alnum:]]*)(\\\\.)?"},"non-void-tag":{"begin":"(?=<(!)?([^/\\\\s>]+)(\\\\s|/?>))","end":"(</)(\\\\2)\\\\s*(>)|(/>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"patterns":[{"begin":"(<)(!)?([^/\\\\s>]+)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"constant.character.escape.razor.tagHelperOptOut"},"3":{"name":"entity.name.tag.html"}},"end":"(?=/?>)","patterns":[{"include":"#razor-control-structures"},{"include":"text.html.basic#attribute"}]},{"begin":">","beginCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"end":"(?=</)","patterns":[{"include":"#wellformed-html"},{"include":"$self"}]}]},"optionally-transitioned-csharp-control-structures":{"patterns":[{"include":"#using-statement-with-optional-transition"},{"include":"#if-statement-with-optional-transition"},{"include":"#else-part"},{"include":"#foreach-statement-with-optional-transition"},{"include":"#for-statement-with-optional-transition"},{"include":"#while-statement"},{"include":"#switch-statement-with-optional-transition"},{"include":"#lock-statement-with-optional-transition"},{"include":"#do-statement-with-optional-transition"},{"include":"#try-statement-with-optional-transition"}]},"optionally-transitioned-razor-control-structures":{"patterns":[{"include":"#razor-comment"},{"include":"#razor-codeblock"},{"include":"#explicit-razor-expression"},{"include":"#escaped-transition"},{"include":"#directives"},{"include":"#optionally-transitioned-csharp-control-structures"},{"include":"#implicit-expression"}]},"page-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.page"},"3":{"patterns":[{"include":"source.cs#string-literal"}]}},"match":"(@)(page)\\\\s+([^$]+)?","name":"meta.directive"},"preservewhitespace-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.preservewhitespace"},"3":{"patterns":[{"include":"source.cs#boolean-literal"}]}},"match":"(@)(preservewhitespace)\\\\s+([^$]+)?","name":"meta.directive"},"razor-codeblock":{"begin":"(@)(\\\\{)","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.codeblock.open"}},"contentName":"source.cs","end":"(\\\\})","endCaptures":{"1":{"name":"keyword.control.razor.directive.codeblock.close"}},"name":"meta.structure.razor.codeblock","patterns":[{"include":"#razor-codeblock-body"}]},"razor-codeblock-body":{"patterns":[{"include":"#text-tag"},{"include":"#wellformed-html"},{"include":"#razor-single-line-markup"},{"include":"#optionally-transitioned-razor-control-structures"},{"include":"source.cs"}]},"razor-comment":{"begin":"(@)(\\\\*)","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.comment.star"}},"contentName":"comment.block.razor","end":"(\\\\*)(@)","endCaptures":{"1":{"name":"keyword.control.razor.comment.star"},"2":{"patterns":[{"include":"#transition"}]}},"name":"meta.comment.razor"},"razor-control-structures":{"patterns":[{"include":"#razor-comment"},{"include":"#razor-codeblock"},{"include":"#explicit-razor-expression"},{"include":"#escaped-transition"},{"include":"#directives"},{"include":"#transitioned-csharp-control-structures"},{"include":"#implicit-expression"}]},"razor-single-line-markup":{"captures":{"1":{"name":"keyword.control.razor.singleLineMarkup"},"2":{"patterns":[{"include":"#razor-control-structures"},{"include":"text.html.basic"}]}},"match":"(\\\\@\\\\:)([^$]*)$"},"removeTagHelper-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.removeTagHelper"},"3":{"patterns":[{"include":"#tagHelper-directive-argument"}]}},"match":"(@)(removeTagHelper)\\\\s+([^$]+)?","name":"meta.directive"},"rendermode-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.rendermode"},"3":{"patterns":[{"include":"source.cs#type"}]}},"match":"(@)(rendermode)\\\\s+([^$]+)?","name":"meta.directive"},"section-directive":{"begin":"(@)(section)\\\\b\\\\s+([_[:alpha:]][_[:alnum:]]*)?","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.section"},"3":{"name":"variable.other.razor.directive.sectionName"}},"end":"(?<=})","name":"meta.directive.block","patterns":[{"include":"#directive-markupblock"}]},"switch-code-block":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.curlybrace.open.cs"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.curlybrace.close.cs"}},"name":"meta.structure.razor.csharp.codeblock.switch","patterns":[{"include":"source.cs#switch-label"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"switch-statement":{"begin":"(?:(@))(switch)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.switch.cs"}},"end":"(?<=})","name":"meta.statement.switch.razor","patterns":[{"include":"#csharp-condition"},{"include":"#switch-code-block"},{"include":"#razor-codeblock-body"}]},"switch-statement-with-optional-transition":{"begin":"(?:^\\\\s*|(@))(switch)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.switch.cs"}},"end":"(?<=})","name":"meta.statement.switch.razor","patterns":[{"include":"#csharp-condition"},{"include":"#switch-code-block"},{"include":"#razor-codeblock-body"}]},"tagHelper-directive-argument":{"patterns":[{"include":"source.cs#string-literal"},{"include":"#unquoted-string-argument"}]},"tagHelperPrefix-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.tagHelperPrefix"},"3":{"patterns":[{"include":"#tagHelper-directive-argument"}]}},"match":"(@)(tagHelperPrefix)\\\\s+([^$]+)?","name":"meta.directive"},"text-tag":{"begin":"(<text\\\\s*>)","beginCaptures":{"1":{"name":"keyword.control.cshtml.transition.textTag.open"}},"end":"(</text>)","endCaptures":{"1":{"name":"keyword.control.cshtml.transition.textTag.close"}},"patterns":[{"include":"#wellformed-html"},{"include":"$self"}]},"transition":{"match":"@","name":"keyword.control.cshtml.transition"},"transitioned-csharp-control-structures":{"patterns":[{"include":"#using-statement"},{"include":"#if-statement"},{"include":"#else-part"},{"include":"#foreach-statement"},{"include":"#for-statement"},{"include":"#while-statement"},{"include":"#switch-statement"},{"include":"#lock-statement"},{"include":"#do-statement"},{"include":"#try-statement"}]},"try-block":{"begin":"(?:(@))(try)\\\\b\\\\s*","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.try.cs"}},"end":"(?<=})","name":"meta.statement.try.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"try-block-with-optional-transition":{"begin":"(?:^\\\\s*|(@))(try)\\\\b\\\\s*","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.try.cs"}},"end":"(?<=})","name":"meta.statement.try.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"try-statement":{"patterns":[{"include":"#try-block"},{"include":"#catch-clause"},{"include":"#finally-clause"}]},"try-statement-with-optional-transition":{"patterns":[{"include":"#try-block-with-optional-transition"},{"include":"#catch-clause"},{"include":"#finally-clause"}]},"typeparam-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.razor.directive.typeparam"},"3":{"patterns":[{"include":"source.cs#type"}]}},"match":"(@)(typeparam)\\\\s+([^$]+)?","name":"meta.directive"},"unquoted-string-argument":{"match":"[^$]+","name":"string.quoted.double.cs"},"using-alias-directive":{"captures":{"1":{"name":"entity.name.type.alias.cs"},"2":{"name":"keyword.operator.assignment.cs"},"3":{"patterns":[{"include":"source.cs#type"}]}},"match":"([_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*(=)\\\\s*(.+)\\\\s*"},"using-directive":{"captures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.other.using.cs"},"3":{"patterns":[{"include":"#using-static-directive"},{"include":"#using-alias-directive"},{"include":"#using-standard-directive"}]},"4":{"name":"keyword.control.razor.optionalSemicolon"}},"match":"(@)(using)\\\\b\\\\s+(?!\\\\(|\\\\s)(.+?)?(;)?$","name":"meta.directive"},"using-standard-directive":{"captures":{"1":{"name":"entity.name.type.namespace.cs"}},"match":"([_[:alpha:]][_[:alnum:]]*)\\\\s*"},"using-statement":{"begin":"(?:(@))(using)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.other.using.cs"}},"end":"(?<=})","name":"meta.statement.using.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"using-statement-with-optional-transition":{"begin":"(?:^\\\\s*|(@))(using)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.other.using.cs"}},"end":"(?<=})","name":"meta.statement.using.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]},"using-static-directive":{"captures":{"1":{"name":"keyword.other.static.cs"},"2":{"patterns":[{"include":"source.cs#type"}]}},"match":"(static)\\\\b\\\\s+(.+)"},"void-tag":{"begin":"(?i)(<)(!)?(area|base|br|col|command|embed|hr|img|input|keygen|link|meta|param|source|track|wbr)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"constant.character.escape.razor.tagHelperOptOut"},"3":{"name":"entity.name.tag.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.$3.void.html","patterns":[{"include":"text.html.basic#attribute"}]},"wellformed-html":{"patterns":[{"include":"#void-tag"},{"include":"#non-void-tag"}]},"while-statement":{"begin":"(?:(@)|^\\\\s*|(?<=})\\\\s*)(while)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.loop.while.cs"}},"end":"(?<=})|(;)","endCaptures":{"1":{"name":"punctuation.terminator.statement.cs"}},"name":"meta.statement.while.razor","patterns":[{"include":"#csharp-condition"},{"include":"#csharp-code-block"},{"include":"#razor-codeblock-body"}]}},"scopeName":"text.aspnetcorerazor","embeddedLangs":["html","csharp"]}`)),jie=[...ce,...IB,Rie]});var Q4={};x(Q4,{default:()=>Mie});var Pie,Mie,I4=_(()=>{Pie=Object.freeze(JSON.parse(`{"displayName":"Windows Registry Script","fileTypes":["reg","REG"],"name":"reg","patterns":[{"match":"Windows Registry Editor Version 5\\\\.00|REGEDIT4","name":"keyword.control.import.reg"},{"captures":{"1":{"name":"punctuation.definition.comment.reg"}},"match":"(;).*$","name":"comment.line.semicolon.reg"},{"captures":{"1":{"name":"punctuation.definition.section.reg"},"2":{"name":"entity.section.reg"},"3":{"name":"punctuation.definition.section.reg"}},"match":"^\\\\s*(\\\\[(?!-))(.*?)(\\\\])","name":"entity.name.function.section.add.reg"},{"captures":{"1":{"name":"punctuation.definition.section.reg"},"2":{"name":"entity.section.reg"},"3":{"name":"punctuation.definition.section.reg"}},"match":"^\\\\s*(\\\\[-)(.*?)(\\\\])","name":"entity.name.function.section.delete.reg"},{"captures":{"2":{"name":"punctuation.definition.quote.reg"},"3":{"name":"support.function.regname.ini"},"4":{"name":"punctuation.definition.quote.reg"},"5":{"name":"punctuation.definition.equals.reg"},"7":{"name":"keyword.operator.arithmetic.minus.reg"},"9":{"name":"punctuation.definition.quote.reg"},"10":{"name":"string.name.regdata.reg"},"11":{"name":"punctuation.definition.quote.reg"},"13":{"name":"support.type.dword.reg"},"14":{"name":"keyword.operator.arithmetic.colon.reg"},"15":{"name":"constant.numeric.dword.reg"},"17":{"name":"support.type.dword.reg"},"18":{"name":"keyword.operator.arithmetic.parenthesis.reg"},"19":{"name":"keyword.operator.arithmetic.parenthesis.reg"},"20":{"name":"constant.numeric.hex.size.reg"},"21":{"name":"keyword.operator.arithmetic.parenthesis.reg"},"22":{"name":"keyword.operator.arithmetic.colon.reg"},"23":{"name":"constant.numeric.hex.reg"},"24":{"name":"keyword.operator.arithmetic.linecontinuation.reg"},"25":{"name":"comment.declarationline.semicolon.reg"}},"match":"^(\\\\s*([\\"']?)(.+?)([\\"']?)\\\\s*(=))?\\\\s*((-)|(([\\"'])(.*?)([\\"']))|(((?i:dword))(\\\\:)\\\\s*([\\\\dabcdefABCDEF]{1,8}))|(((?i:hex))((\\\\()([\\\\d]*)(\\\\)))?(\\\\:)(.*?)(\\\\\\\\?)))\\\\s*(;.*)?$","name":"meta.declaration.reg"},{"match":"[0-9]+","name":"constant.numeric.reg"},{"match":"[a-fA-F]+","name":"constant.numeric.hex.reg"},{"match":",+","name":"constant.numeric.hex.comma.reg"},{"match":"\\\\\\\\","name":"keyword.operator.arithmetic.linecontinuation.reg"}],"scopeName":"source.reg"}`)),Mie=[Pie]});var D4={};x(D4,{default:()=>qie});var Tie,qie,F4=_(()=>{Tie=Object.freeze(JSON.parse('{"displayName":"Rel","name":"rel","patterns":[{"include":"#strings"},{"include":"#comment"},{"include":"#single-line-comment-consuming-line-ending"},{"include":"#deprecated-temporary"},{"include":"#operators"},{"include":"#symbols"},{"include":"#keywords"},{"include":"#otherkeywords"},{"include":"#types"},{"include":"#constants"}],"repository":{"comment":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.rel"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.rel"}},"name":"comment.block.documentation.rel","patterns":[{"include":"#docblock"}]},{"begin":"(/\\\\*)(?:\\\\s*((@)internal)(?=\\\\s|(\\\\*/)))?","beginCaptures":{"1":{"name":"punctuation.definition.comment.rel"},"2":{"name":"storage.type.internaldeclaration.rel"},"3":{"name":"punctuation.decorator.internaldeclaration.rel"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.rel"}},"name":"comment.block.rel"},{"begin":"doc\\"\\"\\"","end":"\\"\\"\\"","name":"comment.block.documentation.rel"},{"begin":"(^[ \\\\t]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.rel"},"2":{"name":"comment.line.double-slash.rel"},"3":{"name":"punctuation.definition.comment.rel"},"4":{"name":"storage.type.internaldeclaration.rel"},"5":{"name":"punctuation.decorator.internaldeclaration.rel"}},"contentName":"comment.line.double-slash.rel","end":"(?=$)"}]},"constants":{"patterns":[{"match":"(\\\\b(true|false)\\\\b)","name":"constant.language.rel"}]},"deprecated-temporary":{"patterns":[{"match":"@inspect","name":"keyword.other.rel"}]},"keywords":{"patterns":[{"match":"(\\\\b(def|entity|bound|include|ic|forall|exists|\u2200|\u2203|return|module|^end)\\\\b)|(((\\\\<)?\\\\|(\\\\>)?)|\u2200|\u2203)","name":"keyword.control.rel"}]},"operators":{"patterns":[{"match":"(\\\\b(if|then|else|and|or|not|eq|neq|lt|lt_eq|gt|gt_eq)\\\\b)|(\\\\+|\\\\-|\\\\*|\\\\/|\xF7|\\\\^|\\\\%|\\\\=|\\\\!\\\\=|\u2260|\\\\<|\\\\<\\\\=|\u2264|\\\\>|\\\\>\\\\=|\u2265|\\\\&)|\\\\s+(end)","name":"keyword.other.rel"}]},"otherkeywords":{"patterns":[{"match":"\\\\s*(@inline)\\\\s*|\\\\s*(@auto_number)\\\\s*|\\\\s*(function)\\\\s|(\\\\b(implies|select|from|\u2208|where|for|in)\\\\b)|(((\\\\<)?\\\\|(\\\\>)?)|\u2208)","name":"keyword.other.rel"}]},"single-line-comment-consuming-line-ending":{"begin":"(^[ \\\\t]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.rel"},"2":{"name":"comment.line.double-slash.rel"},"3":{"name":"punctuation.definition.comment.rel"},"4":{"name":"storage.type.internaldeclaration.rel"},"5":{"name":"punctuation.decorator.internaldeclaration.rel"}},"contentName":"comment.line.double-slash.rel","end":"(?=^)"},"strings":{"begin":"\\"","end":"\\"","name":"string.quoted.double.rel","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.rel"}]},"symbols":{"patterns":[{"match":"(:[\\\\[_$[:alpha:]](\\\\]|[_$[:alnum:]]*))","name":"variable.parameter.rel"}]},"types":{"patterns":[{"match":"(\\\\b(Symbol|Char|Bool|Rational|FixedDecimal|Float16|Float32|Float64|Int8|Int16|Int32|Int64|Int128|UInt8|UInt16|UInt32|UInt64|UInt128|Date|DateTime|Day|Week|Month|Year|Nanosecond|Microsecond|Millisecond|Second|Minute|Hour|FilePos|HashValue|AutoNumberValue)\\\\b)","name":"entity.name.type.rel"}]}},"scopeName":"source.rel"}')),qie=[Tie]});var S4={};x(S4,{default:()=>zie});var Gie,zie,O4=_(()=>{Gie=Object.freeze(JSON.parse(`{"displayName":"RISC-V","fileTypes":["S","s","riscv","asm"],"name":"riscv","patterns":[{"comment":"ok actually this are instructions, but one also could call them funtions\u2026","match":"\\\\b(la|lb|lh|lw|ld|nop|li|mv|not|neg|negw|sext\\\\.w|seqz|snez|sltz|sgtz|beqz|bnez|blez|bgez|bltz|bgtz|bgt|ble|bgtu|bleu|j|jal|jr|ret|call|tail|fence|csr[r|w|s|c]|csr[w|s|c]i)\\\\b","name":"support.function.pseudo.riscv"},{"match":"\\\\b(add|addw|auipc|lui|jalr|beq|bne|blt|bge|bltu|bgeu|lb|lh|lw|ld|lbu|lhu|sb|sh|sw|sd|addi|addiw|slti|sltiu|xori|ori|andi|slli|slliw|srli|srliw|srai|sraiw|sub|subw|sll|sllw|slt|sltu|xor|srl|srlw|sra|sraw|or|and|fence|fence\\\\.i|csrrw|csrrs|csrrc|csrrwi|csrrsi|csrrci)\\\\b","name":"support.function.riscv"},{"comment":"priviledged instructions","match":"\\\\b(ecall|ebreak|sfence\\\\.vma|mret|sret|uret|wfi)\\\\b","name":"support.function.riscv.privileged"},{"comment":"M extension (multiplication and division)","match":"\\\\b(mul|mulh|mulhsu|mulhu|div|divu|rem|remu|mulw|divw|divuw|remw|remuw)\\\\b","name":"support.function.riscv.m"},{"comment":"C extension (compressed instructions)","match":"\\\\b(c\\\\.addi4spn|c\\\\.fld|c\\\\.lq|c\\\\.lw|c\\\\.flw|c\\\\.ld|c\\\\.fsd|c\\\\.sq|c\\\\.sw|c\\\\.fsw|c\\\\.sd|c\\\\.nop|c\\\\.addi|c\\\\.jal|c\\\\.addiw|c\\\\.li|c\\\\.addi16sp|c\\\\.lui|c\\\\.srli|c\\\\.srli64|c\\\\.srai|c\\\\.srai64|c\\\\.andi|c\\\\.sub|c\\\\.xor|c\\\\.or|c\\\\.and|c\\\\.subw|c\\\\.addw|c\\\\.j|c\\\\.beqz|c\\\\.bnez)\\\\b","name":"support.function.riscv.c"},{"comment":"A extension (atomic instructions)","match":"\\\\b(lr\\\\.[w|d]|sc\\\\.[w|d]|amoswap\\\\.[w|d]|amoadd\\\\.[w|d]|amoxor\\\\.[w|d]|amoand\\\\.[w|d]|amoor\\\\.[w|d]|amomin\\\\.[w|d]|amomax\\\\.[w|d]|amominu\\\\.[w|d]|amomaxu\\\\.[w|d])\\\\b","name":"support.function.riscv.a"},{"comment":"F extension (single precision floating point)","match":"\\\\b(flw|fsw|fmadd\\\\.s|fmsub\\\\.s|fnmsub\\\\.s|fnmadd\\\\.s|fadd\\\\.s|fsub\\\\.s|fmul\\\\.s|fdiv\\\\.s|fsqrt\\\\.s|fsgnj\\\\.s|fsgnjn\\\\.s|fsgnjx\\\\.s|fmin\\\\.s|fmax\\\\.s|fcvt\\\\.w\\\\.s|fcvt\\\\.wu\\\\.s|fmv\\\\.x\\\\.w|feq\\\\.s|flt\\\\.s|fle\\\\.s|fclass\\\\.s|fcvt\\\\.s\\\\.w|fcvt\\\\.s\\\\.wu|fmv\\\\.w\\\\.x|fcvt\\\\.l\\\\.s|fcvt\\\\.lu\\\\.s|fcvt\\\\.s\\\\.l|fcvt\\\\.s\\\\.lu)\\\\b","name":"support.function.riscv.f"},{"comment":"D extension (double precision floating point)","match":"\\\\b(fld|fsd|fmadd\\\\.d|fmsub\\\\.d|fnmsub\\\\.d|fnmadd\\\\.d|fadd\\\\.d|fsub\\\\.d|fmul\\\\.d|fdiv\\\\.d|fsqrt\\\\.d|fsgnj\\\\.d|fsgnjn\\\\.d|fsgnjx\\\\.d|fmin\\\\.d|fmax\\\\.d|fcvt\\\\.s\\\\.d|fcvt\\\\.d\\\\.s|feq\\\\.d|flt\\\\.d|fle\\\\.d|fclass\\\\.d|fcvt\\\\.w\\\\.d|fcvt\\\\.wu\\\\.d|fcvt\\\\.d\\\\.w|fcvt\\\\.d\\\\.wu|fcvt\\\\.l\\\\.d|fcvt\\\\.lu\\\\.d|fmv\\\\.x\\\\.d|fcvt\\\\.d\\\\.l|fcvt\\\\.d\\\\.lu|fmv\\\\.d\\\\.x)\\\\b","name":"support.function.riscv.d"},{"match":"\\\\.(skip|ascii|asciiz|byte|[2|4|8]byte|data|double|float|half|kdata|ktext|space|text|word|dword|dtprelword|dtpreldword|set\\\\s*(noat|at)|[s|u]leb128|string|incbin|zero|rodata|comm|common)\\\\b","name":"storage.type.riscv"},{"match":"\\\\.(balign|align|p2align|extern|globl|global|local|pushsection|section|bss|insn|option|type|equ|macro|endm|file|ident)\\\\b","name":"storage.modifier.riscv"},{"captures":{"1":{"name":"entity.name.function.label.riscv"}},"match":"\\\\b([A-Za-z0-9_]+):","name":"meta.function.label.riscv"},{"captures":{"1":{"name":"punctuation.definition.variable.riscv"}},"match":"\\\\b(x([0-9]|1[0-9]|2[0-9]|3[0-1]))\\\\b","name":"variable.other.register.usable.by-number.riscv"},{"captures":{"1":{"name":"punctuation.definition.variable.riscv"}},"match":"\\\\b(zero|ra|sp|gp|tp|t[0-6]|a[0-7]|s[0-9]|fp|s1[0-1])\\\\b","name":"variable.other.register.usable.by-name.riscv"},{"captures":{"1":{"name":"punctuation.definition.variable.riscv"}},"match":"\\\\b(([umsh]|vs)status|([umsh]|vs)ie|([ums]|vs)tvec|([ums]|vs)scratch|([ums]|vs)epc|([ums]|vs)cause|([umsh]|vs)tval|([umsh]|vs)ip|fflags|frm|fcsr|m?cycleh?|timeh?|m?instreth?|m?hpmcounter([3-9]|[12][0-9]|3[01])h?|[msh][ei]deleg|[msh]counteren|v?satp|hgeie|hgeip|[hm]tinst|hvip|hgatp|htimedeltah?|mvendorid|marchid|mimpid|mhartid|misa|mstatush|mtval2|pmpcfg[0-3]|pmpaddr([0-9]|1[0-5])|mcountinhibit|mhpmevent([3-9]|[12][0-9]|3[01])|tselect|tdata[1-3]|dcsr|dpc|dscratch[0-1])\\\\b","name":"variable.other.csr.names.riscv"},{"captures":{"1":{"name":"punctuation.definition.variable.riscv"}},"match":"\\\\bf([0-9]|1[0-9]|2[0-9]|3[0-1])\\\\b","name":"variable.other.register.usable.floating-point.riscv"},{"match":"\\\\b\\\\d+\\\\.\\\\d+\\\\b","name":"constant.numeric.float.riscv"},{"match":"\\\\b(\\\\d+|0(x|X)[a-fA-F0-9]+)\\\\b","name":"constant.numeric.integer.riscv"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.riscv"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.riscv"}},"name":"string.quoted.double.riscv","patterns":[{"match":"\\\\\\\\[rnt\\\\\\\\\\"]","name":"constant.character.escape.riscv"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.riscv"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.riscv"}},"name":"string.quoted.single.riscv","patterns":[{"match":"\\\\\\\\[rnt\\\\\\\\\\"]","name":"constant.character.escape.riscv"}]},{"begin":"\\\\/\\\\*","end":"\\\\*\\\\/","name":"comment.block"},{"begin":"\\\\/\\\\/","end":"\\\\n","name":"comment.line.double-slash"},{"begin":"^\\\\s*\\\\#\\\\s*(define)\\\\s+((?<id>[a-zA-Z_][a-zA-Z0-9_]*))(?:(\\\\()(\\\\s*\\\\g<id>\\\\s*((,)\\\\s*\\\\g<id>\\\\s*)*(?:\\\\.\\\\.\\\\.)?)(\\\\)))?","beginCaptures":{"1":{"name":"keyword.control.import.define.c"},"2":{"name":"entity.name.function.preprocessor.c"},"4":{"name":"punctuation.definition.parameters.c"},"5":{"name":"variable.parameter.preprocessor.c"},"7":{"name":"punctuation.separator.parameters.c"},"8":{"name":"punctuation.definition.parameters.c"}},"end":"(?=(?://|/\\\\*))|$","name":"meta.preprocessor.macro.c","patterns":[{"match":"(?>\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.c"},{"include":"$base"}]},{"begin":"^\\\\s*#\\\\s*(error|warning)\\\\b","captures":{"1":{"name":"keyword.control.import.error.c"}},"end":"$","name":"meta.preprocessor.diagnostic.c","patterns":[{"match":"(?>\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.c"}]},{"begin":"^\\\\s*#\\\\s*(include|import)\\\\b\\\\s+","captures":{"1":{"name":"keyword.control.import.include.c"}},"end":"(?=(?://|/\\\\*))|$","name":"meta.preprocessor.c.include","patterns":[{"match":"(?>\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.c"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.c"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.c"}},"name":"string.quoted.double.include.c"},{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.c"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.c"}},"name":"string.quoted.other.lt-gt.include.c"}]},{"begin":"^\\\\s*#\\\\s*(define|defined|elif|else|if|ifdef|ifndef|line|pragma|undef|endif)\\\\b","captures":{"1":{"name":"keyword.control.import.c"}},"end":"(?=(?://|/\\\\*))|$","name":"meta.preprocessor.c","patterns":[{"match":"(?>\\\\\\\\\\\\s*\\\\n)","name":"punctuation.separator.continuation.c"}]},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.riscv"}},"end":"(?!\\\\G)","patterns":[{"begin":"#|(\\\\/\\\\/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.riscv"}},"end":"\\\\n","name":"comment.line.number-sign.riscv"}]}],"scopeName":"source.riscv"}`)),zie=[Gie]});var N4={};x(N4,{default:()=>Hie});var Uie,Hie,L4=_(()=>{Ec();VA();vc();Qe();Ki();Qc();QB();td();Uie=Object.freeze(JSON.parse('{"displayName":"reStructuredText","name":"rst","patterns":[{"include":"#body"}],"repository":{"anchor":{"match":"^\\\\.{2}\\\\s+(_[^:]+:)\\\\s*","name":"entity.name.tag.anchor"},"block":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+\\\\S+::)(.*)","beginCaptures":{"2":{"name":"keyword.control"},"3":{"name":"variable"}},"end":"^(?!\\\\1\\\\s|\\\\s*$)","patterns":[{"include":"#block-param"},{"include":"#body"}]},"block-comment":{"begin":"^(\\\\s*)\\\\.{2}(\\\\s+|$)","end":"^(?=\\\\S)|^\\\\s*$","name":"comment.block","patterns":[{"begin":"^\\\\s{3,}(?=\\\\S)","name":"comment.block","while":"^\\\\s{3}.*|^\\\\s*$"}]},"block-param":{"patterns":[{"captures":{"1":{"name":"keyword.control"},"2":{"name":"variable.parameter"}},"match":"(:param\\\\s+(.+?):)(?:\\\\s|$)"},{"captures":{"1":{"name":"keyword.control"},"2":{"patterns":[{"match":"\\\\b(0x[a-fA-F\\\\d]+|\\\\d+)\\\\b","name":"constant.numeric"},{"include":"#inline-markup"}]}},"match":"(:.+?:)(?:$|\\\\s+(.*))"}]},"blocks":{"patterns":[{"include":"#domains"},{"include":"#doctest"},{"include":"#code-block-cpp"},{"include":"#code-block-py"},{"include":"#code-block-console"},{"include":"#code-block-javascript"},{"include":"#code-block-yaml"},{"include":"#code-block-cmake"},{"include":"#code-block-kconfig"},{"include":"#code-block-ruby"},{"include":"#code-block-dts"},{"include":"#code-block"},{"include":"#doctest-block"},{"include":"#raw-html"},{"include":"#block"},{"include":"#literal-block"},{"include":"#block-comment"}]},"body":{"patterns":[{"include":"#title"},{"include":"#inline-markup"},{"include":"#anchor"},{"include":"#line-block"},{"include":"#replace-include"},{"include":"#footnote"},{"include":"#substitution"},{"include":"#blocks"},{"include":"#table"},{"include":"#simple-table"},{"include":"#options-list"}]},"bold":{"begin":"(?<=[\\\\s\\"\'(\\\\[{<]|^)\\\\*{2}[^\\\\s*]","end":"\\\\*{2}|^\\\\s*$","name":"markup.bold"},"citation":{"applyEndPatternLast":0,"begin":"(?<=[\\\\s\\"\'(\\\\[{<]|^)`[^\\\\s`]","end":"`_{,2}|^\\\\s*$","name":"entity.name.tag"},"code-block":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+(code|code-block)::)","beginCaptures":{"2":{"name":"keyword.control"}},"patterns":[{"include":"#block-param"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"code-block-cmake":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+(code|code-block)::)\\\\s*(cmake)\\\\s*$","beginCaptures":{"2":{"name":"keyword.control"},"4":{"name":"variable.parameter.codeblock.cmake"}},"patterns":[{"include":"#block-param"},{"include":"source.cmake"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"code-block-console":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+(code|code-block)::)\\\\s*(console|shell|bash)\\\\s*$","beginCaptures":{"2":{"name":"keyword.control"},"4":{"name":"variable.parameter.codeblock.console"}},"patterns":[{"include":"#block-param"},{"include":"source.shell"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"code-block-cpp":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+(code|code-block)::)\\\\s*(c|c\\\\+\\\\+|cpp|C|C\\\\+\\\\+|CPP|Cpp)\\\\s*$","beginCaptures":{"2":{"name":"keyword.control"},"4":{"name":"variable.parameter.codeblock.cpp"}},"patterns":[{"include":"#block-param"},{"include":"source.cpp"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"code-block-dts":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+(code|code-block)::)\\\\s*(dts|DTS|devicetree)\\\\s*$","beginCaptures":{"2":{"name":"keyword.control"},"4":{"name":"variable.parameter.codeblock.dts"}},"patterns":[{"include":"#block-param"},{"include":"source.dts"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"code-block-javascript":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+(code|code-block)::)\\\\s*(javascript)\\\\s*$","beginCaptures":{"2":{"name":"keyword.control"},"4":{"name":"variable.parameter.codeblock.js"}},"patterns":[{"include":"#block-param"},{"include":"source.js"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"code-block-kconfig":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+(code|code-block)::)\\\\s*([kK]config)\\\\s*$","beginCaptures":{"2":{"name":"keyword.control"},"4":{"name":"variable.parameter.codeblock.kconfig"}},"patterns":[{"include":"#block-param"},{"include":"source.kconfig"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"code-block-py":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+(code|code-block)::)\\\\s*(python)\\\\s*$","beginCaptures":{"2":{"name":"keyword.control"},"4":{"name":"variable.parameter.codeblock.py"}},"patterns":[{"include":"#block-param"},{"include":"source.python"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"code-block-ruby":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+(code|code-block)::)\\\\s*(ruby)\\\\s*$","beginCaptures":{"2":{"name":"keyword.control"},"4":{"name":"variable.parameter.codeblock.ruby"}},"patterns":[{"include":"#block-param"},{"include":"source.ruby"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"code-block-yaml":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+(code|code-block)::)\\\\s*(ya?ml)\\\\s*$","beginCaptures":{"2":{"name":"keyword.control"},"4":{"name":"variable.parameter.codeblock.yaml"}},"patterns":[{"include":"#block-param"},{"include":"source.yaml"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"doctest":{"begin":"^(>>>)\\\\s*(.*)","beginCaptures":{"1":{"name":"keyword.control"},"2":{"patterns":[{"include":"source.python"}]}},"end":"^\\\\s*$"},"doctest-block":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+doctest::)\\\\s*$","beginCaptures":{"2":{"name":"keyword.control"}},"patterns":[{"include":"#block-param"},{"include":"source.python"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"domain-auto":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+auto(?:class|module|exception|function|decorator|data|method|attribute|property)::)\\\\s*(.*)","beginCaptures":{"2":{"name":"keyword.control.py"},"3":{"patterns":[{"include":"source.python"}]}},"patterns":[{"include":"#block-param"},{"include":"#body"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"domain-cpp":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+(?:cpp|c):(?:class|struct|function|member|var|type|enum|enum-struct|enum-class|enumerator|union|concept)::)\\\\s*(?:(@\\\\w+)|(.*))","beginCaptures":{"2":{"name":"keyword.control"},"3":{"name":"entity.name.tag"},"4":{"patterns":[{"include":"source.cpp"}]}},"patterns":[{"include":"#block-param"},{"include":"#body"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"domain-js":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+js:\\\\w+::)\\\\s*(.*)","beginCaptures":{"2":{"name":"keyword.control"},"3":{"patterns":[{"include":"source.js"}]}},"end":"^(?!\\\\1[ \\\\t]|$)","patterns":[{"include":"#block-param"},{"include":"#body"}]},"domain-py":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+py:(?:module|function|data|exception|class|attribute|property|method|staticmethod|classmethod|decorator|decoratormethod)::)\\\\s*(.*)","beginCaptures":{"2":{"name":"keyword.control"},"3":{"patterns":[{"include":"source.python"}]}},"patterns":[{"include":"#block-param"},{"include":"#body"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"domains":{"patterns":[{"include":"#domain-cpp"},{"include":"#domain-py"},{"include":"#domain-auto"},{"include":"#domain-js"}]},"escaped":{"match":"\\\\\\\\.","name":"constant.character.escape"},"footnote":{"match":"^\\\\s*\\\\.{2}\\\\s+\\\\[(?:[\\\\w\\\\.-]+|[#*]|#\\\\w+)\\\\]\\\\s+","name":"entity.name.tag"},"footnote-ref":{"match":"\\\\[(?:[\\\\w\\\\.-]+|[#*])\\\\]_","name":"entity.name.tag"},"ignore":{"patterns":[{"match":"\'[`*]+\'"},{"match":"<[`*]+>"},{"match":"{[`*]+}"},{"match":"\\\\([`*]+\\\\)"},{"match":"\\\\[[`*]+\\\\]"},{"match":"\\"[`*]+\\""}]},"inline-markup":{"patterns":[{"include":"#escaped"},{"include":"#ignore"},{"include":"#ref"},{"include":"#literal"},{"include":"#monospaced"},{"include":"#citation"},{"include":"#bold"},{"include":"#italic"},{"include":"#list"},{"include":"#macro"},{"include":"#reference"},{"include":"#footnote-ref"}]},"italic":{"begin":"(?<=[\\\\s\\"\'(\\\\[{<]|^)\\\\*[^\\\\s*]","end":"\\\\*|^\\\\s*$","name":"markup.italic"},"line-block":{"match":"^\\\\|\\\\s+","name":"keyword.control"},"list":{"match":"^\\\\s*(\\\\d+\\\\.|\\\\* -|[a-zA-Z#]\\\\.|[iIvVxXmMcC]+\\\\.|\\\\(\\\\d+\\\\)|\\\\d+\\\\)|[*+-])\\\\s+","name":"keyword.control"},"literal":{"captures":{"1":{"name":"keyword.control"},"2":{"name":"entity.name.tag"}},"match":"(:\\\\S+:)(`.*?`\\\\\\\\?)"},"literal-block":{"begin":"^(\\\\s*)(.*)(::)\\\\s*$","beginCaptures":{"2":{"patterns":[{"include":"#inline-markup"}]},"3":{"name":"keyword.control"}},"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"macro":{"match":"\\\\|[^\\\\|]+\\\\|","name":"entity.name.tag"},"monospaced":{"begin":"(?<=[\\\\s\\"\'(\\\\[{<]|^)``[^\\\\s`]","end":"``|^\\\\s*$","name":"string.interpolated"},"options-list":{"match":"(?:(?:^|,\\\\s+)(?:[-+]\\\\w|--?[a-zA-Z][\\\\w-]+|/\\\\w+)(?:[ =](?:\\\\w+|<[^<>]+?>))?)+(?= |\\\\t|$)","name":"variable.parameter"},"raw-html":{"begin":"^(\\\\s*)(\\\\.{2}\\\\s+raw\\\\s*::)\\\\s+(html)\\\\s*$","beginCaptures":{"2":{"name":"keyword.control"},"3":{"name":"variable.parameter.html"}},"patterns":[{"include":"#block-param"},{"include":"text.html.derivative"}],"while":"^\\\\1(?=\\\\s)|^\\\\s*$"},"ref":{"begin":"(:ref:)`","beginCaptures":{"1":{"name":"keyword.control"}},"end":"`|^\\\\s*$","name":"entity.name.tag","patterns":[{"match":"<.*?>","name":"markup.underline.link"}]},"reference":{"match":"[\\\\w-]*[a-zA-Z\\\\d-]__?\\\\b","name":"entity.name.tag"},"replace-include":{"captures":{"1":{"name":"keyword.control"},"2":{"name":"entity.name.tag"},"3":{"name":"keyword.control"}},"match":"^\\\\s*(\\\\.{2})\\\\s+(\\\\|[^\\\\|]+\\\\|)\\\\s+(replace::)"},"simple-table":{"match":"^[=\\\\s]+$","name":"keyword.control.table"},"substitution":{"match":"^\\\\.{2}\\\\s*\\\\|([^|]+)\\\\|","name":"entity.name.tag"},"table":{"begin":"^\\\\s*\\\\+[=+-]+\\\\+\\\\s*$","beginCaptures":{"0":{"name":"keyword.control.table"}},"end":"^(?![+|])","patterns":[{"match":"[=+|-]","name":"keyword.control.table"}]},"title":{"match":"^(\\\\*{3,}|#{3,}|\\\\={3,}|~{3,}|\\\\+{3,}|-{3,}|`{3,}|\\\\^{3,}|:{3,}|\\"{3,}|_{3,}|\'{3,})$","name":"markup.heading"}},"scopeName":"source.rst","embeddedLangs":["html-derivative","cpp","python","javascript","shellscript","yaml","cmake","ruby"]}')),Hie=[...Hr,...Zo,...Ur,...J,...ia,...Zr,...EB,...Yo,Uie]});var $4={};x($4,{default:()=>Yie});var Zie,Yie,R4=_(()=>{Zie=Object.freeze(JSON.parse(`{"displayName":"Rust","name":"rust","patterns":[{"begin":"(<)(\\\\[)","beginCaptures":{"1":{"name":"punctuation.brackets.angle.rust"},"2":{"name":"punctuation.brackets.square.rust"}},"comment":"boxed slice literal","end":">","endCaptures":{"0":{"name":"punctuation.brackets.angle.rust"}},"patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#gtypes"},{"include":"#lvariables"},{"include":"#lifetimes"},{"include":"#punctuation"},{"include":"#types"}]},{"captures":{"1":{"name":"keyword.operator.macro.dollar.rust"},"3":{"name":"keyword.other.crate.rust"},"4":{"name":"entity.name.type.metavariable.rust"},"6":{"name":"keyword.operator.key-value.rust"},"7":{"name":"variable.other.metavariable.specifier.rust"}},"comment":"macro type metavariables","match":"(\\\\$)((crate)|([A-Z][A-Za-z0-9_]*))((:)(block|expr|ident|item|lifetime|literal|meta|path?|stmt|tt|ty|vis))?","name":"meta.macro.metavariable.type.rust","patterns":[{"include":"#keywords"}]},{"captures":{"1":{"name":"keyword.operator.macro.dollar.rust"},"2":{"name":"variable.other.metavariable.name.rust"},"4":{"name":"keyword.operator.key-value.rust"},"5":{"name":"variable.other.metavariable.specifier.rust"}},"comment":"macro metavariables","match":"(\\\\$)([a-z][A-Za-z0-9_]*)((:)(block|expr|ident|item|lifetime|literal|meta|path?|stmt|tt|ty|vis))?","name":"meta.macro.metavariable.rust","patterns":[{"include":"#keywords"}]},{"captures":{"1":{"name":"entity.name.function.macro.rules.rust"},"3":{"name":"entity.name.function.macro.rust"},"4":{"name":"entity.name.type.macro.rust"},"5":{"name":"punctuation.brackets.curly.rust"}},"comment":"macro rules","match":"\\\\b(macro_rules!)\\\\s+(([a-z0-9_]+)|([A-Z][a-z0-9_]*))\\\\s+(\\\\{)","name":"meta.macro.rules.rust"},{"captures":{"1":{"name":"storage.type.rust"},"2":{"name":"entity.name.module.rust"}},"comment":"modules","match":"(mod)\\\\s+((?:r#(?!crate|[Ss]elf|super))?[a-z][A-Za-z0-9_]*)"},{"begin":"\\\\b(extern)\\\\s+(crate)","beginCaptures":{"1":{"name":"storage.type.rust"},"2":{"name":"keyword.other.crate.rust"}},"comment":"external crate imports","end":";","endCaptures":{"0":{"name":"punctuation.semi.rust"}},"name":"meta.import.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#punctuation"}]},{"begin":"\\\\b(use)\\\\s","beginCaptures":{"1":{"name":"keyword.other.rust"}},"comment":"use statements","end":";","endCaptures":{"0":{"name":"punctuation.semi.rust"}},"name":"meta.use.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#types"},{"include":"#lvariables"}]},{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#types"},{"include":"#keywords"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#variables"}],"repository":{"attributes":{"begin":"(#)(\\\\!?)(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.attribute.rust"},"3":{"name":"punctuation.brackets.attribute.rust"}},"comment":"attributes","end":"\\\\]","endCaptures":{"0":{"name":"punctuation.brackets.attribute.rust"}},"name":"meta.attribute.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#lifetimes"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#gtypes"},{"include":"#types"}]},"block-comments":{"patterns":[{"comment":"empty block comments","match":"/\\\\*\\\\*/","name":"comment.block.rust"},{"begin":"/\\\\*\\\\*","comment":"block documentation comments","end":"\\\\*/","name":"comment.block.documentation.rust","patterns":[{"include":"#block-comments"}]},{"begin":"/\\\\*(?!\\\\*)","comment":"block comments","end":"\\\\*/","name":"comment.block.rust","patterns":[{"include":"#block-comments"}]}]},"comments":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.rust"}},"comment":"documentation comments","match":"(///).*$","name":"comment.line.documentation.rust"},{"captures":{"1":{"name":"punctuation.definition.comment.rust"}},"comment":"line comments","match":"(//).*$","name":"comment.line.double-slash.rust"}]},"constants":{"patterns":[{"comment":"ALL CAPS constants","match":"\\\\b[A-Z]{2}[A-Z0-9_]*\\\\b","name":"constant.other.caps.rust"},{"captures":{"1":{"name":"storage.type.rust"},"2":{"name":"constant.other.caps.rust"}},"comment":"constant declarations","match":"\\\\b(const)\\\\s+([A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"punctuation.separator.dot.decimal.rust"},"2":{"name":"keyword.operator.exponent.rust"},"3":{"name":"keyword.operator.exponent.sign.rust"},"4":{"name":"constant.numeric.decimal.exponent.mantissa.rust"},"5":{"name":"entity.name.type.numeric.rust"}},"comment":"decimal integers and floats","match":"\\\\b\\\\d[\\\\d_]*(\\\\.?)[\\\\d_]*(?:(E|e)([+-]?)([\\\\d_]+))?(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.decimal.rust"},{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"hexadecimal integers","match":"\\\\b0x[\\\\da-fA-F_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.hex.rust"},{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"octal integers","match":"\\\\b0o[0-7_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.oct.rust"},{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"binary integers","match":"\\\\b0b[01_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.bin.rust"},{"comment":"booleans","match":"\\\\b(true|false)\\\\b","name":"constant.language.bool.rust"}]},"escapes":{"captures":{"1":{"name":"constant.character.escape.backslash.rust"},"2":{"name":"constant.character.escape.bit.rust"},"3":{"name":"constant.character.escape.unicode.rust"},"4":{"name":"constant.character.escape.unicode.punctuation.rust"},"5":{"name":"constant.character.escape.unicode.punctuation.rust"}},"comment":"escapes: ASCII, byte, Unicode, quote, regex","match":"(\\\\\\\\)(?:(?:(x[0-7][\\\\da-fA-F])|(u(\\\\{)[\\\\da-fA-F]{4,6}(\\\\}))|.))","name":"constant.character.escape.rust"},"functions":{"patterns":[{"captures":{"1":{"name":"keyword.other.rust"},"2":{"name":"punctuation.brackets.round.rust"}},"comment":"pub as a function","match":"\\\\b(pub)(\\\\()"},{"begin":"\\\\b(fn)\\\\s+((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)((\\\\()|(<))","beginCaptures":{"1":{"name":"keyword.other.fn.rust"},"2":{"name":"entity.name.function.rust"},"4":{"name":"punctuation.brackets.round.rust"},"5":{"name":"punctuation.brackets.angle.rust"}},"comment":"function definition","end":"(\\\\{)|(;)","endCaptures":{"1":{"name":"punctuation.brackets.curly.rust"},"2":{"name":"punctuation.semi.rust"}},"name":"meta.function.definition.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]},{"begin":"((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.rust"},"2":{"name":"punctuation.brackets.round.rust"}},"comment":"function/method calls, chaining","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.brackets.round.rust"}},"name":"meta.function.call.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]},{"begin":"((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)(?=::<.*>\\\\()","beginCaptures":{"1":{"name":"entity.name.function.rust"}},"comment":"function/method calls with turbofish","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.brackets.round.rust"}},"name":"meta.function.call.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]}]},"gtypes":{"patterns":[{"comment":"option types","match":"\\\\b(Some|None)\\\\b","name":"entity.name.type.option.rust"},{"comment":"result types","match":"\\\\b(Ok|Err)\\\\b","name":"entity.name.type.result.rust"}]},"interpolations":{"captures":{"1":{"name":"punctuation.definition.interpolation.rust"},"2":{"name":"punctuation.definition.interpolation.rust"}},"comment":"curly brace interpolations","match":"({)[^\\"{}]*(})","name":"meta.interpolation.rust"},"keywords":{"patterns":[{"comment":"control flow keywords","match":"\\\\b(await|break|continue|do|else|for|if|loop|match|return|try|while|yield)\\\\b","name":"keyword.control.rust"},{"comment":"storage keywords","match":"\\\\b(extern|let|macro|mod)\\\\b","name":"keyword.other.rust storage.type.rust"},{"comment":"const keyword","match":"\\\\b(const)\\\\b","name":"storage.modifier.rust"},{"comment":"type keyword","match":"\\\\b(type)\\\\b","name":"keyword.declaration.type.rust storage.type.rust"},{"comment":"enum keyword","match":"\\\\b(enum)\\\\b","name":"keyword.declaration.enum.rust storage.type.rust"},{"comment":"trait keyword","match":"\\\\b(trait)\\\\b","name":"keyword.declaration.trait.rust storage.type.rust"},{"comment":"struct keyword","match":"\\\\b(struct)\\\\b","name":"keyword.declaration.struct.rust storage.type.rust"},{"comment":"storage modifiers","match":"\\\\b(abstract|static)\\\\b","name":"storage.modifier.rust"},{"comment":"other keywords","match":"\\\\b(as|async|become|box|dyn|move|final|gen|impl|in|override|priv|pub|ref|typeof|union|unsafe|unsized|use|virtual|where)\\\\b","name":"keyword.other.rust"},{"comment":"fn","match":"\\\\bfn\\\\b","name":"keyword.other.fn.rust"},{"comment":"crate","match":"\\\\bcrate\\\\b","name":"keyword.other.crate.rust"},{"comment":"mut","match":"\\\\bmut\\\\b","name":"storage.modifier.mut.rust"},{"comment":"logical operators","match":"(\\\\^|\\\\||\\\\|\\\\||&&|<<|>>|!)(?!=)","name":"keyword.operator.logical.rust"},{"comment":"logical AND, borrow references","match":"&(?![&=])","name":"keyword.operator.borrow.and.rust"},{"comment":"assignment operators","match":"(\\\\+=|-=|\\\\*=|/=|%=|\\\\^=|&=|\\\\|=|<<=|>>=)","name":"keyword.operator.assignment.rust"},{"comment":"single equal","match":"(?<![<>])=(?!=|>)","name":"keyword.operator.assignment.equal.rust"},{"comment":"comparison operators","match":"(=(=)?(?!>)|!=|<=|(?<!=)>=)","name":"keyword.operator.comparison.rust"},{"comment":"math operators","match":"(([+%]|(\\\\*(?!\\\\w)))(?!=))|(-(?!>))|(/(?!/))","name":"keyword.operator.math.rust"},{"captures":{"1":{"name":"punctuation.brackets.round.rust"},"2":{"name":"punctuation.brackets.square.rust"},"3":{"name":"punctuation.brackets.curly.rust"},"4":{"name":"keyword.operator.comparison.rust"},"5":{"name":"punctuation.brackets.round.rust"},"6":{"name":"punctuation.brackets.square.rust"},"7":{"name":"punctuation.brackets.curly.rust"}},"comment":"less than, greater than (special case)","match":"(?:\\\\b|(?:(\\\\))|(\\\\])|(\\\\})))[ \\\\t]+([<>])[ \\\\t]+(?:\\\\b|(?:(\\\\()|(\\\\[)|(\\\\{)))"},{"comment":"namespace operator","match":"::","name":"keyword.operator.namespace.rust"},{"captures":{"1":{"name":"keyword.operator.dereference.rust"}},"comment":"dereference asterisk","match":"(\\\\*)(?=\\\\w+)"},{"comment":"subpattern binding","match":"@","name":"keyword.operator.subpattern.rust"},{"comment":"dot access","match":"\\\\.(?!\\\\.)","name":"keyword.operator.access.dot.rust"},{"comment":"ranges, range patterns","match":"\\\\.{2}(=|\\\\.)?","name":"keyword.operator.range.rust"},{"comment":"colon","match":":(?!:)","name":"keyword.operator.key-value.rust"},{"comment":"dashrocket, skinny arrow","match":"->|<-","name":"keyword.operator.arrow.skinny.rust"},{"comment":"hashrocket, fat arrow","match":"=>","name":"keyword.operator.arrow.fat.rust"},{"comment":"dollar macros","match":"\\\\$","name":"keyword.operator.macro.dollar.rust"},{"comment":"question mark operator, questionably sized, macro kleene matcher","match":"\\\\?","name":"keyword.operator.question.rust"}]},"lifetimes":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.lifetime.rust"},"2":{"name":"entity.name.type.lifetime.rust"}},"comment":"named lifetime parameters","match":"(['])([a-zA-Z_][0-9a-zA-Z_]*)(?!['])\\\\b"},{"captures":{"1":{"name":"keyword.operator.borrow.rust"},"2":{"name":"punctuation.definition.lifetime.rust"},"3":{"name":"entity.name.type.lifetime.rust"}},"comment":"borrowing references to named lifetimes","match":"(\\\\&)(['])([a-zA-Z_][0-9a-zA-Z_]*)(?!['])\\\\b"}]},"lvariables":{"patterns":[{"comment":"self","match":"\\\\b[Ss]elf\\\\b","name":"variable.language.self.rust"},{"comment":"super","match":"\\\\bsuper\\\\b","name":"variable.language.super.rust"}]},"macros":{"patterns":[{"captures":{"2":{"name":"entity.name.function.macro.rust"},"3":{"name":"entity.name.type.macro.rust"}},"comment":"macros","match":"(([a-z_][A-Za-z0-9_]*!)|([A-Z_][A-Za-z0-9_]*!))","name":"meta.macro.rust"}]},"namespaces":{"patterns":[{"captures":{"1":{"name":"entity.name.namespace.rust"},"2":{"name":"keyword.operator.namespace.rust"}},"comment":"namespace (non-type, non-function path segment)","match":"(?<![A-Za-z0-9_])([A-Za-z0-9_]+)((?<!super|self)::)"}]},"punctuation":{"patterns":[{"comment":"comma","match":",","name":"punctuation.comma.rust"},{"comment":"curly braces","match":"[{}]","name":"punctuation.brackets.curly.rust"},{"comment":"parentheses, round brackets","match":"[()]","name":"punctuation.brackets.round.rust"},{"comment":"semicolon","match":";","name":"punctuation.semi.rust"},{"comment":"square brackets","match":"[\\\\[\\\\]]","name":"punctuation.brackets.square.rust"},{"comment":"angle brackets","match":"(?<!=)[<>]","name":"punctuation.brackets.angle.rust"}]},"strings":{"patterns":[{"begin":"(b?)(\\")","beginCaptures":{"1":{"name":"string.quoted.byte.raw.rust"},"2":{"name":"punctuation.definition.string.rust"}},"comment":"double-quoted strings and byte strings","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.rust"}},"name":"string.quoted.double.rust","patterns":[{"include":"#escapes"},{"include":"#interpolations"}]},{"begin":"(b?r)(#*)(\\")","beginCaptures":{"1":{"name":"string.quoted.byte.raw.rust"},"2":{"name":"punctuation.definition.string.raw.rust"},"3":{"name":"punctuation.definition.string.rust"}},"comment":"double-quoted raw strings and raw byte strings","end":"(\\")(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.rust"},"2":{"name":"punctuation.definition.string.raw.rust"}},"name":"string.quoted.double.rust"},{"begin":"(b)?(')","beginCaptures":{"1":{"name":"string.quoted.byte.raw.rust"},"2":{"name":"punctuation.definition.char.rust"}},"comment":"characters and bytes","end":"'","endCaptures":{"0":{"name":"punctuation.definition.char.rust"}},"name":"string.quoted.single.char.rust","patterns":[{"include":"#escapes"}]}]},"types":{"patterns":[{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"numeric types","match":"(?<![A-Za-z])(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)\\\\b"},{"begin":"\\\\b(_?[A-Z][A-Za-z0-9_]*)(<)","beginCaptures":{"1":{"name":"entity.name.type.rust"},"2":{"name":"punctuation.brackets.angle.rust"}},"comment":"parameterized types","end":">","endCaptures":{"0":{"name":"punctuation.brackets.angle.rust"}},"patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#lifetimes"},{"include":"#punctuation"},{"include":"#types"},{"include":"#variables"}]},{"comment":"primitive types","match":"\\\\b(bool|char|str)\\\\b","name":"entity.name.type.primitive.rust"},{"captures":{"1":{"name":"keyword.declaration.trait.rust storage.type.rust"},"2":{"name":"entity.name.type.trait.rust"}},"comment":"trait declarations","match":"\\\\b(trait)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.struct.rust storage.type.rust"},"2":{"name":"entity.name.type.struct.rust"}},"comment":"struct declarations","match":"\\\\b(struct)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.enum.rust storage.type.rust"},"2":{"name":"entity.name.type.enum.rust"}},"comment":"enum declarations","match":"\\\\b(enum)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.type.rust storage.type.rust"},"2":{"name":"entity.name.type.declaration.rust"}},"comment":"type declarations","match":"\\\\b(type)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"comment":"types","match":"\\\\b_?[A-Z][A-Za-z0-9_]*\\\\b(?!!)","name":"entity.name.type.rust"}]},"variables":{"patterns":[{"comment":"variables","match":"\\\\b(?<!(?<!\\\\.)\\\\.)(?:r#(?!(crate|[Ss]elf|super)))?[a-z0-9_]+\\\\b","name":"variable.other.rust"}]}},"scopeName":"source.rust","aliases":["rs"]}`)),Yie=[Zie]});var j4={};x(j4,{default:()=>Kie});var Wie,Kie,P4=_(()=>{Nn();Wie=Object.freeze(JSON.parse(`{"displayName":"SAS","fileTypes":["sas"],"foldingStartMarker":"(?i:(proc|data|%macro).*;$)","foldingStopMarker":"(?i:(run|quit|%mend)\\\\s?);","name":"sas","patterns":[{"include":"#starComment"},{"include":"#blockComment"},{"include":"#macro"},{"include":"#constant"},{"include":"#quote"},{"include":"#operator"},{"begin":"\\\\b(?i:(data))\\\\s+","beginCaptures":{"1":{"name":"keyword.other.sas"}},"comment":"Begins a DATA step and provides names for any output SAS data sets, views, or programs.","end":"(;)","patterns":[{"include":"#blockComment"},{"include":"#dataSet"},{"captures":{"1":{"name":"keyword.other.sas"},"2":{"name":"keyword.other.sas"}},"match":"(?i:(?:(stack|pgm|view|source)\\\\s?=\\\\s?)|(debug|nesting|nolist))"}]},{"begin":"\\\\b(?i:(set|update|modify|merge))\\\\s+","beginCaptures":{"1":{"name":"support.function.sas"},"2":{"name":"entity.name.class.sas"},"3":{"name":"entity.name.class.sas"}},"comment":"DATA set File-Handling Statements for DATA step","end":"(;)","patterns":[{"include":"#blockComment"},{"include":"#dataSet"}]},{"match":"(?i:\\\\b(if|while|until|for|do|end|then|else|run|quit|cancel|options)\\\\b)","name":"keyword.control.sas"},{"captures":{"1":{"name":"support.class.sas"},"3":{"name":"entity.name.function.sas"}},"match":"(?i:(%(bquote|do|else|end|eval|global|goto|if|inc|include|index|input|length|let|list|local|lowcase|macro|mend|nrbquote|nrquote|nrstr|put|qscan|qsysfunc|quote|run|scan|str|substr|syscall|sysevalf|sysexec|sysfunc|sysrc|then|to|unquote|upcase|until|while|window)\\\\b))\\\\s*(\\\\w*)","name":"keyword.other.sas"},{"begin":"(?i:\\\\b(proc\\\\s*(sql))\\\\b)","beginCaptures":{"1":{"name":"support.function.sas"},"2":{"name":"support.class.sas"}},"comment":"Looks like for this to work there must be a *name* as well as the patterns/include bit.","end":"(?i:\\\\b(quit)\\\\s*;)","endCaptures":{"1":{"name":"keyword.control.sas"}},"name":"meta.sql.sas","patterns":[{"include":"#starComment"},{"include":"#blockComment"},{"include":"source.sql"}]},{"match":"(?i:\\\\b(by|label|format)\\\\b)","name":"keyword.datastep.sas"},{"captures":{"1":{"name":"support.function.sas"},"2":{"name":"support.class.sas"}},"match":"(?i:\\\\b(proc (\\\\w+))\\\\b)","name":"meta.function-call.sas"},{"match":"(?i:\\\\b(_n_|_error_)\\\\b)","name":"variable.language.sas"},{"captures":{"1":{"name":"support.class.sas"}},"match":"\\\\b(?i:(_all_|_character_|_cmd_|_freq_|_i_|_infile_|_last_|_msg_|_null_|_numeric_|_temporary_|_type_|abort|abs|addr|adjrsq|airy|alpha|alter|altlog|altprint|and|arcos|array|arsin|as|atan|attrc|attrib|attrn|authserver|autoexec|awscontrol|awsdef|awsmenu|awsmenumerge|awstitle|backward|band|base|betainv|between|blocksize|blshift|bnot|bor|brshift|bufno|bufsize|bxor|by|byerr|byline|byte|calculated|call|cards|cards4|case|catcache|cbufno|cdf|ceil|center|cexist|change|chisq|cinv|class|cleanup|close|cnonct|cntllev|coalesce|codegen|col|collate|collin|column|comamid|comaux1|comaux2|comdef|compbl|compound|compress|config|continue|convert|cos|cosh|cpuid|create|cross|crosstab|css|curobs|cv|daccdb|daccdbsl|daccsl|daccsyd|dacctab|dairy|datalines|datalines4|date|datejul|datepart|datetime|day|dbcslang|dbcstype|dclose|ddm|delete|delimiter|depdb|depdbsl|depsl|depsyd|deptab|dequote|descending|descript|design=|device|dflang|dhms|dif|digamma|dim|dinfo|display|distinct|dkricond|dkrocond|dlm|dnum|do|dopen|doptname|doptnum|dread|drop|dropnote|dsname|dsnferr|echo|else|emaildlg|emailid|emailpw|emailserver|emailsys|encrypt|end|endsas|engine|eof|eov|erf|erfc|error|errorcheck|errors|exist|exp|fappend|fclose|fcol|fdelete|feedback|fetch|fetchobs|fexist|fget|file|fileclose|fileexist|filefmt|filename|fileref|filevar|finfo|finv|fipname|fipnamel|fipstate|first|firstobs|floor|fmterr|fmtsearch|fnonct|fnote|font|fontalias|footnote[1-9]?|fopen|foptname|foptnum|force|formatted|formchar|formdelim|formdlim|forward|fpoint|fpos|fput|fread|frewind|frlen|from|fsep|full|fullstimer|fuzz|fwrite|gaminv|gamma|getoption|getvarc|getvarn|go|goto|group|gwindow|hbar|hbound|helpenv|helploc|hms|honorappearance|hosthelp|hostprint|hour|hpct|html|hvar|ibessel|ibr|id|if|index|indexc|indexw|infile|informat|initcmd|initstmt|inner|input|inputc|inputn|inr|insert|int|intck|intnx|into|intrr|invaliddata|irr|is|jbessel|join|juldate|keep|kentb|kurtosis|label|lag|last|lbound|leave|left|length|levels|lgamma|lib|libname|library|libref|line|linesize|link|list|log|log10|log2|logpdf|logpmf|logsdf|lostcard|lowcase|lrecl|ls|macro|macrogen|maps|mautosource|max|maxdec|maxr|mdy|mean|measures|median|memtype|merge|merror|min|minute|missing|missover|mlogic|mod|mode|model|modify|month|mopen|mort|mprint|mrecall|msglevel|msymtabmax|mvarsize|myy|n|nest|netpv|new|news|nmiss|no|nobatch|nobs|nocaps|nocardimage|nocenter|nocharcode|nocmdmac|nocol|nocum|nodate|nodbcs|nodetails|nodmr|nodms|nodmsbatch|nodup|nodupkey|noduplicates|noechoauto|noequals|noerrorabend|noexitwindows|nofullstimer|noicon|noimplmac|noint|nolist|noloadlist|nomiss|nomlogic|nomprint|nomrecall|nomsgcase|nomstored|nomultenvappl|nonotes|nonumber|noobs|noovp|nopad|nopercent|noprint|noprintinit|normal|norow|norsasuser|nosetinit|nosource|nosource2|nosplash|nosymbolgen|note|notes|notitle|notitles|notsorted|noverbose|noxsync|noxwait|npv|null|number|numkeys|nummousekeys|nway|obs|ods|on|open|option|order|ordinal|otherwise|out|outer|outp=|output|over|ovp|p(1|5|10|25|50|75|90|95|99)|pad|pad2|page|pageno|pagesize|paired|parm|parmcards|path|pathdll|pathname|pdf|peek|peekc|pfkey|pmf|point|poisson|poke|position|printer|probbeta|probbnml|probchi|probf|probgam|probhypr|probit|probnegb|probnorm|probsig|probt|procleave|project|prt|propcase|prxmatch|prxparse|prxchange|prxposn|ps|put|putc|putn|pw|pwreq|qtr|quote|r|ranbin|rancau|ranexp|rangam|range|ranks|rannor|ranpoi|rantbl|rantri|ranuni|read|recfm|register|regr|remote|remove|rename|repeat|replace|resolve|retain|return|reuse|reverse|rewind|right|round|rsquare|rtf|rtrace|rtraceloc|s|s2|samploc|sasautos|sascontrol|sasfrscr|sashelp|sasmsg|sasmstore|sasscript|sasuser|saving|scan|sdf|second|select|selection|separated|seq|serror|set|setcomm|setot|sign|simple|sin|sinh|siteinfo|skewness|skip|sle|sls|sortedby|sortpgm|sortseq|sortsize|soundex|source2|spedis|splashlocation|split|spool|sqrt|start|std|stderr|stdin|stfips|stimer|stname|stnamel|stop|stopover|strip|subgroup|subpopn|substr|sum|sumwgt|symbol|symbolgen|symget|symput|sysget|sysin|sysleave|sysmsg|sysparm|sysprint|sysprintfont|sysprod|sysrc|system|t|table|tables|tan|tanh|tapeclose|tbufsize|terminal|test|then|time|timepart|tinv|title[1-9]?|tnonct|to|today|tol|tooldef|totper|transformout|translate|trantab|tranwrd|trigamma|trim|trimn|trunc|truncover|type|unformatted|uniform|union|until|upcase|update|user|usericon|uss|validate|value|var|varfmt|varinfmt|varlabel|varlen|varname|varnum|varray|varrayx|vartype|verify|vformat|vformatd|vformatdx|vformatn|vformatnx|vformatw|vformatwx|vformatx|vinarray|vinarrayx|vinformat|vinformatd|vinformatdx|vinformatn|vinformatnx|vinformatw|vinformatwx|vinformatx|vlabel|vlabelx|vlength|vlengthx|vname|vnamex|vnferr|vtype|vtypex|weekday|weight|when|where|while|wincharset|window|work|workinit|workterm|write|wsum|wsumx|x|xsync|xwait|year|yearcutoff|yes|yyq|zipfips|zipname|zipnamel|zipstate))\\\\b","name":"support.function.sas"}],"repository":{"blockComment":{"patterns":[{"begin":"\\\\/\\\\*","end":"\\\\*\\\\/","name":"comment.block.slashstar.sas"}]},"constant":{"patterns":[{"comment":"numeric constant","match":"(?<![&\\\\}])\\\\b[0-9]*\\\\.?[0-9]+([eEdD][-+]?[0-9]+)?\\\\b","name":"constant.numeric.sas"},{"comment":"single quote numeric-type constant","match":"(')([^']+)(')(dt|[dt])","name":"constant.numeric.quote.single.sas"},{"comment":"double quote numeric-type constant","match":"(\\")([^\\"]+)(\\")(dt|[dt])","name":"constant.numeric.quote.double.sas"}]},"dataSet":{"patterns":[{"begin":"((\\\\w+)\\\\.)?(\\\\w+)\\\\s?\\\\(","beginCaptures":{"2":{"name":"entity.name.class.libref.sas"},"3":{"name":"entity.name.class.dsname.sas"}},"comment":"data set with options","end":"\\\\)","patterns":[{"include":"#dataSetOptions"},{"include":"#blockComment"},{"include":"#macro"},{"include":"#constant"},{"include":"#quote"},{"include":"#operator"}]},{"captures":{"2":{"name":"entity.name.class.libref.sas"},"3":{"name":"entity.name.class.dsname.sas"}},"comment":"data set without options","match":"\\\\b((\\\\w+)\\\\.)?(\\\\w+)\\\\b"}]},"dataSetOptions":{"patterns":[{"match":"(?<=\\\\s|\\\\(|\\\\))(?i:ALTER|BUFNO|BUFSIZE|CNTLLEV|COMPRESS|DLDMGACTION|ENCRYPT|ENCRYPTKEY|EXTENDOBSCOUNTER|GENMAX|GENNUM|INDEX|LABEL|OBSBUF|OUTREP|PW|PWREQ|READ|REPEMPTY|REPLACE|REUSE|ROLE|SORTEDBY|SPILL|TOBSNO|TYPE|WRITE|FILECLOSE|FIRSTOBS|IN|OBS|POINTOBS|WHERE|WHEREUP|IDXNAME|IDXWHERE|DROP|KEEP|RENAME)\\\\s?=","name":"keyword.other.sas"}]},"macro":{"patterns":[{"match":"(&+(?i:[a-z_]([a-z0-9_]+)?)(\\\\.+)?)\\\\b","name":"variable.other.macro.sas"}]},"operator":{"patterns":[{"match":"([\\\\+\\\\-\\\\*\\\\^\\\\/])","name":"keyword.operator.arithmetic.sas"},{"match":"\\\\b(?i:(eq|ne|gt|lt|ge|le|in|not|&|and|or|min|max))\\\\b","name":"keyword.operator.comparison.sas"},{"match":"([\xAC<>^~]?=(:)?|>|<|\\\\||!|\xA6|\xAC|^|~|<>|><|\\\\|\\\\|)","name":"keyword.operator.sas"}]},"quote":{"patterns":[{"begin":"(?<!%)(')","comment":"single quoted string block","end":"(')([bx])?","name":"string.quoted.single.sas"},{"begin":"(\\")","comment":"double quoted string block","end":"(\\")([bx])?","name":"string.quoted.double.sas"}]},"starComment":{"patterns":[{"include":"#blockcomment"},{"begin":"(?<=;)[\\\\s%]*\\\\*","end":";","name":"comment.line.inline.star.sas"},{"begin":"^[\\\\s%]*\\\\*","end":";","name":"comment.line.start.sas"}]}},"scopeName":"source.sas","embeddedLangs":["sql"]}`)),Kie=[...Ve,Wie]});var M4={};x(M4,{default:()=>Vie});var Jie,Vie,T4=_(()=>{Jie=Object.freeze(JSON.parse(`{"displayName":"Sass","fileTypes":["sass"],"foldingStartMarker":"/\\\\*|^#|^\\\\*|^\\\\b|*#?region|^\\\\.","foldingStopMarker":"\\\\*/|*#?endregion|^\\\\s*$","name":"sass","patterns":[{"begin":"^(\\\\s*)(/\\\\*)","end":"(\\\\*/)|^(?!\\\\s\\\\1)","name":"comment.block.sass","patterns":[{"include":"#comment-tag"},{"include":"#comment-param"}]},{"match":"^[\\\\t ]*/?//[\\\\t ]*[SRI][\\\\t ]*$","name":"keyword.other.sass.formatter.action"},{"begin":"^[\\\\t ]*//[\\\\t ]*(import)[\\\\t ]*(css-variables)[\\\\t ]*(from)","captures":{"1":{"name":"keyword.control"},"2":{"name":"variable"},"3":{"name":"keyword.control"}},"end":"$\\\\n?","name":"comment.import.css.variables","patterns":[{"include":"#import-quotes"}]},{"include":"#double-slash"},{"include":"#double-quoted"},{"include":"#single-quoted"},{"include":"#interpolation"},{"include":"#curly-brackets"},{"include":"#placeholder-selector"},{"begin":"\\\\$[a-zA-Z0-9_-]+(?=:)","captures":{"0":{"name":"variable.other.name"}},"end":"$\\\\n?|(?=\\\\)\\\\s\\\\)|\\\\)\\\\n)","name":"sass.script.maps","patterns":[{"include":"#double-slash"},{"include":"#double-quoted"},{"include":"#single-quoted"},{"include":"#interpolation"},{"include":"#variable"},{"include":"#rgb-value"},{"include":"#numeric"},{"include":"#unit"},{"include":"#flag"},{"include":"#comma"},{"include":"#function"},{"include":"#function-content"},{"include":"#operator"},{"include":"#reserved-words"},{"include":"#parent-selector"},{"include":"#property-value"},{"include":"#semicolon"},{"include":"#dotdotdot"}]},{"include":"#variable-root"},{"include":"#numeric"},{"include":"#unit"},{"include":"#flag"},{"include":"#comma"},{"include":"#semicolon"},{"include":"#dotdotdot"},{"begin":"@include|\\\\+(?!\\\\W|\\\\d)","captures":{"0":{"name":"keyword.control.at-rule.css.sass"}},"end":"(?=\\\\n|\\\\()","name":"support.function.name.sass.library"},{"begin":"^(@use)","captures":{"0":{"name":"keyword.control.at-rule.css.sass.use"}},"end":"(?=\\\\n)","name":"sass.use","patterns":[{"match":"as|with","name":"support.type.css.sass"},{"include":"#numeric"},{"include":"#unit"},{"include":"#variable-root"},{"include":"#rgb-value"},{"include":"#comma"},{"include":"#parenthesis-open"},{"include":"#parenthesis-close"},{"include":"#colon"},{"include":"#import-quotes"}]},{"begin":"^@import(.*?)( as.*)?$","captures":{"1":{"name":"constant.character.css.sass"},"2":{"name":"invalid"}},"end":"(?=\\\\n)","name":"keyword.control.at-rule.use"},{"begin":"@mixin|^[\\\\t ]*=|@function","captures":{"0":{"name":"keyword.control.at-rule.css.sass"}},"end":"$\\\\n?|(?=\\\\()","name":"support.function.name.sass","patterns":[{"match":"[\\\\w-]+","name":"entity.name.function"}]},{"begin":"@","end":"$\\\\n?|\\\\s(?!(all|braille|embossed|handheld|print|projection|screen|speech|tty|tv|if|only|not)(\\\\s|,))","name":"keyword.control.at-rule.css.sass"},{"begin":"(?<!\\\\-|\\\\()\\\\b(a|abbr|acronym|address|applet|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|datalist|dd|del|details|dfn|dialog|div|dl|dt|em|embed|eventsource|fieldset|figure|figcaption|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|label|legend|li|link|map|mark|menu|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|picture|pre|progress|q|samp|script|section|select|small|source|span|strike|strong|style|sub|summary|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video|main|svg|rect|ruby|center|circle|ellipse|line|polyline|polygon|path|text|u|slot)\\\\b(?!-|\\\\)|:\\\\s)|&","end":"$\\\\n?|(?=\\\\s|,|\\\\(|\\\\)|\\\\.|\\\\#|\\\\[|>|-|_)","name":"entity.name.tag.css.sass.symbol","patterns":[{"include":"#interpolation"},{"include":"#pseudo-class"}]},{"begin":"#","end":"$\\\\n?|(?=\\\\s|,|\\\\(|\\\\)|\\\\.|\\\\[|>)","name":"entity.other.attribute-name.id.css.sass","patterns":[{"include":"#interpolation"},{"include":"#pseudo-class"}]},{"begin":"\\\\.|(?<=&)(-|_)","end":"$\\\\n?|(?=\\\\s|,|\\\\(|\\\\)|\\\\[|>)","name":"entity.other.attribute-name.class.css.sass","patterns":[{"include":"#interpolation"},{"include":"#pseudo-class"}]},{"begin":"\\\\[","end":"\\\\]","name":"entity.other.attribute-selector.sass","patterns":[{"include":"#double-quoted"},{"include":"#single-quoted"},{"match":"\\\\^|\\\\$|\\\\*|~","name":"keyword.other.regex.sass"}]},{"match":"^((?<=\\\\]|\\\\)|not\\\\(|\\\\*|>|>\\\\s)|\\n*):[a-z:-]+|(::|:-)[a-z:-]+","name":"entity.other.attribute-name.pseudo-class.css.sass"},{"include":"#module"},{"match":"[\\\\w-]*\\\\(","name":"entity.name.function"},{"match":"\\\\)","name":"entity.name.function.close"},{"begin":":","end":"$\\\\n?|(?=\\\\s\\\\(|and\\\\(|\\\\),)","name":"meta.property-list.css.sass.prop","patterns":[{"match":"(?<=:)[a-z-]+\\\\s","name":"support.type.property-name.css.sass.prop.name"},{"include":"#double-slash"},{"include":"#double-quoted"},{"include":"#single-quoted"},{"include":"#interpolation"},{"include":"#curly-brackets"},{"include":"#variable"},{"include":"#rgb-value"},{"include":"#numeric"},{"include":"#unit"},{"include":"#module"},{"match":"--.+?(?=\\\\))","name":"variable.css"},{"match":"[\\\\w-]*\\\\(","name":"entity.name.function"},{"match":"\\\\)","name":"entity.name.function.close"},{"include":"#flag"},{"include":"#comma"},{"include":"#semicolon"},{"include":"#function"},{"include":"#function-content"},{"include":"#operator"},{"include":"#parent-selector"},{"include":"#property-value"}]},{"include":"#rgb-value"},{"include":"#function"},{"include":"#function-content"},{"begin":"(?<=})(?!\\\\n|\\\\(|\\\\)|[a-zA-Z0-9_-]+:)","end":"\\\\s|(?=,|\\\\.|\\\\[|\\\\)|\\\\n)","name":"entity.name.tag.css.sass","patterns":[{"include":"#interpolation"},{"include":"#pseudo-class"}]},{"include":"#operator"},{"match":"[a-z-]+((?=:|#{))","name":"support.type.property-name.css.sass.prop.name"},{"include":"#reserved-words"},{"include":"#property-value"}],"repository":{"colon":{"match":":","name":"meta.property-list.css.sass.colon"},"comma":{"match":"\\\\band\\\\b|\\\\bor\\\\b|,","name":"comment.punctuation.comma.sass"},"comment-param":{"match":"\\\\@(\\\\w+)","name":"storage.type.class.jsdoc"},"comment-tag":{"begin":"(?<={{)","end":"(?=}})","name":"comment.tag.sass"},"curly-brackets":{"match":"{|}","name":"invalid"},"dotdotdot":{"match":"\\\\.\\\\.\\\\.","name":"variable.other"},"double-quoted":{"begin":"\\"","end":"\\"","name":"string.quoted.double.css.sass","patterns":[{"include":"#quoted-interpolation"}]},"double-slash":{"begin":"//","end":"$\\\\n?","name":"comment.line.sass","patterns":[{"include":"#comment-tag"}]},"flag":{"match":"!(important|default|optional|global)","name":"keyword.other.important.css.sass"},"function":{"match":"(?<=[\\\\s|\\\\(|,|:])(?!url|format|attr)[a-zA-Z0-9_-][\\\\w-]*(?=\\\\()","name":"support.function.name.sass"},"function-content":{"begin":"(?<=url\\\\(|format\\\\(|attr\\\\()","end":".(?=\\\\))","name":"string.quoted.double.css.sass"},"import-quotes":{"match":"[\\"']?\\\\.{0,2}[\\\\w/]+[\\"']?","name":"constant.character.css.sass"},"interpolation":{"begin":"#{","end":"}","name":"support.function.interpolation.sass","patterns":[{"include":"#variable"},{"include":"#numeric"},{"include":"#operator"},{"include":"#unit"},{"include":"#comma"},{"include":"#double-quoted"},{"include":"#single-quoted"}]},"module":{"captures":{"1":{"name":"constant.character.module.name"},"2":{"name":"constant.numeric.module.dot"}},"match":"([\\\\w-]+?)(\\\\.)","name":"constant.character.module"},"numeric":{"match":"(-|\\\\.)?[0-9]+(\\\\.[0-9]+)?","name":"constant.numeric.css.sass"},"operator":{"match":"\\\\+|\\\\s-\\\\s|\\\\s-(?=\\\\$)|(?<=\\\\()-(?=\\\\$)|\\\\s-(?=\\\\()|\\\\*|/|%|=|!|<|>|~","name":"keyword.operator.sass"},"parent-selector":{"match":"&","name":"entity.name.tag.css.sass"},"parenthesis-close":{"match":"\\\\)","name":"entity.name.function.parenthesis.close"},"parenthesis-open":{"match":"\\\\(","name":"entity.name.function.parenthesis.open"},"placeholder-selector":{"begin":"(?<!\\\\d)%(?!\\\\d)","end":"$\\\\n?|\\\\s","name":"entity.other.inherited-class.placeholder-selector.css.sass"},"property-value":{"match":"[a-zA-Z0-9_-]+","name":"meta.property-value.css.sass support.constant.property-value.css.sass"},"pseudo-class":{"match":":[a-z:-]+","name":"entity.other.attribute-name.pseudo-class.css.sass"},"quoted-interpolation":{"begin":"#{","end":"}","name":"support.function.interpolation.sass","patterns":[{"include":"#variable"},{"include":"#numeric"},{"include":"#operator"},{"include":"#unit"},{"include":"#comma"}]},"reserved-words":{"match":"\\\\b(false|from|in|not|null|through|to|true)\\\\b","name":"support.type.property-name.css.sass"},"rgb-value":{"match":"(#)([0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})\\\\b","name":"constant.language.color.rgb-value.css.sass"},"semicolon":{"match":";","name":"invalid"},"single-quoted":{"begin":"'","end":"'","name":"string.quoted.single.css.sass","patterns":[{"include":"#quoted-interpolation"}]},"unit":{"match":"(?<=[\\\\d]|})(ch|cm|deg|dpcm|dpi|dppx|em|ex|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vw|fr|%)","name":"keyword.control.unit.css.sass"},"variable":{"match":"\\\\$[a-zA-Z0-9_-]+","name":"variable.other.value"},"variable-root":{"match":"\\\\$[a-zA-Z0-9_-]+","name":"variable.other.root"}},"scopeName":"source.sass"}`)),Vie=[Jie]});var q4={};x(q4,{default:()=>eoe});var Xie,eoe,G4=_(()=>{Xie=Object.freeze(JSON.parse('{"displayName":"Scala","fileTypes":["scala"],"firstLineMatch":"^#!/.*\\\\b\\\\w*scala\\\\b","foldingStartMarker":"/\\\\*\\\\*|\\\\{\\\\s*$","foldingStopMarker":"\\\\*\\\\*/|^\\\\s*\\\\}","name":"scala","patterns":[{"include":"#code"}],"repository":{"backQuotedVariable":{"match":"`[^`]+`"},"block-comments":{"patterns":[{"captures":{"0":{"name":"punctuation.definition.comment.scala"}},"match":"/\\\\*\\\\*/","name":"comment.block.empty.scala"},{"begin":"^\\\\s*(/\\\\*\\\\*)(?!/)","beginCaptures":{"1":{"name":"punctuation.definition.comment.scala"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.scala"}},"name":"comment.block.documentation.scala","patterns":[{"captures":{"1":{"name":"keyword.other.documentation.scaladoc.scala"},"2":{"name":"variable.parameter.scala"}},"match":"(@param)\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"keyword.other.documentation.scaladoc.scala"},"2":{"name":"entity.name.class"}},"match":"(@(?:tparam|throws))\\\\s+(\\\\S+)"},{"match":"@(return|see|note|example|constructor|usecase|author|version|since|todo|deprecated|migration|define|inheritdoc|groupname|groupprio|groupdesc|group|contentDiagram|documentable|syntax)\\\\b","name":"keyword.other.documentation.scaladoc.scala"},{"captures":{"1":{"name":"punctuation.definition.documentation.link.scala"},"2":{"name":"string.other.link.title.markdown"},"3":{"name":"punctuation.definition.documentation.link.scala"}},"match":"(\\\\[\\\\[)([^\\\\]]+)(\\\\]\\\\])"},{"include":"#block-comments"}]},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.scala"}},"end":"\\\\*/","name":"comment.block.scala","patterns":[{"include":"#block-comments"}]}]},"char-literal":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.character.begin.scala"},"2":{"name":"punctuation.definition.character.end.scala"}},"match":"(\')\'(\')","name":"string.quoted.other constant.character.literal.scala"},{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.character.begin.scala"}},"end":"\'|$","endCaptures":{"0":{"name":"punctuation.definition.character.end.scala"}},"name":"string.quoted.other constant.character.literal.scala","patterns":[{"match":"\\\\\\\\(?:[btnfr\\\\\\\\\\"\']|[0-7]{1,3}|u[0-9A-Fa-f]{4})","name":"constant.character.escape.scala"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-character-escape.scala"},{"match":"[^\']{2,}","name":"invalid.illegal.character-literal-too-long"},{"match":"(?<!\')[^\']","name":"invalid.illegal.character-literal-too-long"}]}]},"code":{"patterns":[{"include":"#using-directive"},{"include":"#script-header"},{"include":"#storage-modifiers"},{"include":"#declarations"},{"include":"#inheritance"},{"include":"#extension"},{"include":"#imports"},{"include":"#exports"},{"include":"#comments"},{"include":"#strings"},{"include":"#initialization"},{"include":"#xml-literal"},{"include":"#namedBounds"},{"include":"#keywords"},{"include":"#using"},{"include":"#constants"},{"include":"#singleton-type"},{"include":"#inline"},{"include":"#scala-quoted-or-symbol"},{"include":"#char-literal"},{"include":"#empty-parentheses"},{"include":"#parameter-list"},{"include":"#qualifiedClassName"},{"include":"#backQuotedVariable"},{"include":"#curly-braces"},{"include":"#meta-brackets"},{"include":"#meta-bounds"},{"include":"#meta-colons"}]},"comments":{"patterns":[{"include":"#block-comments"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.scala"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.scala"}},"end":"\\\\n","name":"comment.line.double-slash.scala"}]}]},"constants":{"patterns":[{"match":"\\\\b(false|null|true)\\\\b","name":"constant.language.scala"},{"match":"\\\\b(0[xX][0-9a-fA-F_]*)\\\\b","name":"constant.numeric.scala"},{"match":"\\\\b(([0-9][0-9_]*(\\\\.[0-9][0-9_]*)?)([eE](\\\\+|-)?[0-9][0-9_]*)?|[0-9][0-9_]*)[LlFfDd]?\\\\b","name":"constant.numeric.scala"},{"match":"(\\\\.[0-9][0-9_]*)([eE](\\\\+|-)?[0-9][0-9_]*)?[LlFfDd]?\\\\b","name":"constant.numeric.scala"},{"match":"\\\\b0[bB][01]([01_]*[01])?[Ll]?\\\\b","name":"constant.numeric.scala"},{"match":"\\\\b(this|super)\\\\b","name":"variable.language.scala"}]},"curly-braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.block.begin.scala"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.block.end.scala"}},"patterns":[{"include":"#code"}]},"declarations":{"patterns":[{"captures":{"1":{"name":"keyword.declaration.scala"},"2":{"name":"entity.name.function.declaration"}},"match":"\\\\b(def)\\\\b\\\\s*(?!//|/\\\\*)((?:(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)|`[^`]+`))?"},{"captures":{"1":{"name":"keyword.declaration.scala"},"2":{"name":"entity.name.class.declaration"}},"match":"\\\\b(trait)\\\\b\\\\s*(?!//|/\\\\*)((?:(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)|`[^`]+`))?"},{"captures":{"1":{"name":"keyword.declaration.scala"},"2":{"name":"keyword.declaration.scala"},"3":{"name":"entity.name.class.declaration"}},"match":"\\\\b(?:(case)\\\\s+)?(class|object|enum)\\\\b\\\\s*(?!//|/\\\\*)((?:(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)|`[^`]+`))?"},{"captures":{"1":{"name":"keyword.declaration.scala"},"2":{"name":"entity.name.type.declaration"}},"match":"(?<!\\\\.)\\\\b(type)\\\\b\\\\s*(?!//|/\\\\*)((?:(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)|`[^`]+`))?"},{"captures":{"1":{"name":"keyword.declaration.stable.scala"},"2":{"name":"keyword.declaration.volatile.scala"}},"match":"\\\\b(?:(val)|(var))\\\\b\\\\s*(?!//|/\\\\*)(?=(?:(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)|`[^`]+`)?\\\\()"},{"captures":{"1":{"name":"keyword.declaration.stable.scala"},"2":{"name":"variable.stable.declaration.scala"}},"match":"\\\\b(val)\\\\b\\\\s*(?!//|/\\\\*)((?:(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)|`[^`]+`)(?:\\\\s*,\\\\s*(?:(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)|`[^`]+`))*)?(?!\\")"},{"captures":{"1":{"name":"keyword.declaration.volatile.scala"},"2":{"name":"variable.volatile.declaration.scala"}},"match":"\\\\b(var)\\\\b\\\\s*(?!//|/\\\\*)((?:(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)|`[^`]+`)(?:\\\\s*,\\\\s*(?:(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)|`[^`]+`))*)?(?!\\")"},{"captures":{"1":{"name":"keyword.other.package.scala"},"2":{"name":"keyword.declaration.scala"},"3":{"name":"entity.name.class.declaration"}},"match":"\\\\b(package)\\\\s+(object)\\\\b\\\\s*(?!//|/\\\\*)((?:(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)|`[^`]+`))?"},{"begin":"\\\\b(package)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.package.scala"}},"end":"(?<=[\\\\n;])","name":"meta.package.scala","patterns":[{"include":"#comments"},{"match":"(`[^`]+`|(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+))","name":"entity.name.package.scala"},{"match":"\\\\.","name":"punctuation.definition.package"}]},{"captures":{"1":{"name":"keyword.declaration.scala"},"2":{"name":"entity.name.given.declaration"}},"match":"\\\\b(given)\\\\b\\\\s*([_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|`[^`]+`)?"}]},"empty-parentheses":{"captures":{"1":{"name":"meta.bracket.scala"}},"match":"(\\\\(\\\\))","name":"meta.parentheses.scala"},"exports":{"begin":"\\\\b(export)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.export.scala"}},"end":"(?<=[\\\\n;])","name":"meta.export.scala","patterns":[{"include":"#comments"},{"match":"\\\\b(given)\\\\b","name":"keyword.other.export.given.scala"},{"match":"[A-Z\\\\p{Lt}\\\\p{Lu}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?","name":"entity.name.class.export.scala"},{"match":"(`[^`]+`|(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+))","name":"entity.name.export.scala"},{"match":"\\\\.","name":"punctuation.definition.export"},{"begin":"{","beginCaptures":{"0":{"name":"meta.bracket.scala"}},"end":"}","endCaptures":{"0":{"name":"meta.bracket.scala"}},"name":"meta.export.selector.scala","patterns":[{"captures":{"1":{"name":"keyword.other.export.given.scala"},"2":{"name":"entity.name.class.export.renamed-from.scala"},"3":{"name":"entity.name.export.renamed-from.scala"},"4":{"name":"keyword.other.arrow.scala"},"5":{"name":"entity.name.class.export.renamed-to.scala"},"6":{"name":"entity.name.export.renamed-to.scala"}},"match":"(given\\\\s)?\\\\s*(?:([A-Z\\\\p{Lt}\\\\p{Lu}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)))\\\\s*(=>)\\\\s*(?:([A-Z\\\\p{Lt}\\\\p{Lu}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)))\\\\s*"},{"match":"\\\\b(given)\\\\b","name":"keyword.other.export.given.scala"},{"captures":{"1":{"name":"keyword.other.export.given.scala"},"2":{"name":"entity.name.class.export.scala"},"3":{"name":"entity.name.export.scala"}},"match":"(given\\\\s+)?(?:([A-Z\\\\p{Lt}\\\\p{Lu}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)))"}]}]},"extension":{"patterns":[{"captures":{"1":{"name":"keyword.declaration.scala"}},"match":"^\\\\s*(extension)\\\\s+(?=[\\\\[\\\\(])"}]},"imports":{"begin":"\\\\b(import)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.import.scala"}},"end":"(?<=[\\\\n;])","name":"meta.import.scala","patterns":[{"include":"#comments"},{"match":"\\\\b(given)\\\\b","name":"keyword.other.import.given.scala"},{"match":"\\\\s(as)\\\\s","name":"keyword.other.import.as.scala"},{"match":"[A-Z\\\\p{Lt}\\\\p{Lu}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?","name":"entity.name.class.import.scala"},{"match":"(`[^`]+`|(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+))","name":"entity.name.import.scala"},{"match":"\\\\.","name":"punctuation.definition.import"},{"begin":"{","beginCaptures":{"0":{"name":"meta.bracket.scala"}},"end":"}","endCaptures":{"0":{"name":"meta.bracket.scala"}},"name":"meta.import.selector.scala","patterns":[{"captures":{"1":{"name":"keyword.other.import.given.scala"},"2":{"name":"entity.name.class.import.renamed-from.scala"},"3":{"name":"entity.name.import.renamed-from.scala"},"4":{"name":"keyword.other.arrow.scala"},"5":{"name":"entity.name.class.import.renamed-to.scala"},"6":{"name":"entity.name.import.renamed-to.scala"}},"match":"(given\\\\s)?\\\\s*(?:([A-Z\\\\p{Lt}\\\\p{Lu}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)))\\\\s*(=>)\\\\s*(?:([A-Z\\\\p{Lt}\\\\p{Lu}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)))\\\\s*"},{"match":"\\\\b(given)\\\\b","name":"keyword.other.import.given.scala"},{"captures":{"1":{"name":"keyword.other.import.given.scala"},"2":{"name":"entity.name.class.import.scala"},"3":{"name":"entity.name.import.scala"}},"match":"(given\\\\s+)?(?:([A-Z\\\\p{Lt}\\\\p{Lu}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)))"}]}]},"inheritance":{"patterns":[{"captures":{"1":{"name":"keyword.declaration.scala"},"2":{"name":"entity.name.class"}},"match":"\\\\b(extends|with|derives)\\\\b\\\\s*([A-Z\\\\p{Lt}\\\\p{Lu}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|`[^`]+`|(?=\\\\([^\\\\)]+=>)|(?=(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+))|(?=\\"))?"}]},"initialization":{"captures":{"1":{"name":"keyword.declaration.scala"}},"match":"\\\\b(new)\\\\b"},"inline":{"patterns":[{"match":"\\\\b(inline)(?=\\\\s+((?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)|`[^`]+`)\\\\s*:)","name":"storage.modifier.other"},{"match":"\\\\b(inline)\\\\b(?=(?:.(?!\\\\b(?:val|def|given)\\\\b))*\\\\b(if|match)\\\\b)","name":"keyword.control.flow.scala"}]},"keywords":{"patterns":[{"match":"\\\\b(return|throw)\\\\b","name":"keyword.control.flow.jump.scala"},{"match":"\\\\b(classOf|isInstanceOf|asInstanceOf)\\\\b","name":"support.function.type-of.scala"},{"match":"\\\\b(else|if|then|do|while|for|yield|match|case)\\\\b","name":"keyword.control.flow.scala"},{"match":"^\\\\s*(end)\\\\s+(if|while|for|match)(?=\\\\s*(//.*|/\\\\*(?!.*\\\\*/\\\\s*\\\\S.*).*)?$)","name":"keyword.control.flow.end.scala"},{"match":"^\\\\s*(end)\\\\s+(val)(?=\\\\s*(//.*|/\\\\*(?!.*\\\\*/\\\\s*\\\\S.*).*)?$)","name":"keyword.declaration.stable.end.scala"},{"match":"^\\\\s*(end)\\\\s+(var)(?=\\\\s*(//.*|/\\\\*(?!.*\\\\*/\\\\s*\\\\S.*).*)?$)","name":"keyword.declaration.volatile.end.scala"},{"captures":{"1":{"name":"keyword.declaration.end.scala"},"2":{"name":"keyword.declaration.end.scala"},"3":{"name":"entity.name.type.declaration"}},"match":"^\\\\s*(end)\\\\s+(?:(new|extension)|([A-Z\\\\p{Lt}\\\\p{Lu}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?))(?=\\\\s*(//.*|/\\\\*(?!.*\\\\*/\\\\s*\\\\S.*).*)?$)"},{"match":"\\\\b(catch|finally|try)\\\\b","name":"keyword.control.exception.scala"},{"match":"^\\\\s*(end)\\\\s+(try)(?=\\\\s*(//.*|/\\\\*(?!.*\\\\*/\\\\s*\\\\S.*).*)?$)","name":"keyword.control.exception.end.scala"},{"captures":{"1":{"name":"keyword.declaration.end.scala"},"2":{"name":"entity.name.declaration"}},"match":"^\\\\s*(end)\\\\s+(`[^`]+`|(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+))?(?=\\\\s*(//.*|/\\\\*(?!.*\\\\*/\\\\s*\\\\S.*).*)?$)"},{"match":"([!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]|[\\\\\\\\]){3,}","name":"keyword.operator.scala"},{"captures":{"1":{"patterns":[{"match":"(\\\\|\\\\||&&)","name":"keyword.operator.logical.scala"},{"match":"(\\\\!=|==|\\\\<=|>=)","name":"keyword.operator.comparison.scala"},{"match":"..","name":"keyword.operator.scala"}]}},"match":"((?:[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]|[\\\\\\\\]){2,}|_\\\\*)"},{"captures":{"1":{"patterns":[{"match":"(\\\\!)","name":"keyword.operator.logical.scala"},{"match":"(\\\\*|-|\\\\+|/|%|~)","name":"keyword.operator.arithmetic.scala"},{"match":"(=|\\\\<|>)","name":"keyword.operator.comparison.scala"},{"match":".","name":"keyword.operator.scala"}]}},"match":"(?<!_)([!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]|\\\\\\\\)"}]},"meta-bounds":{"comment":"For themes: Matching view bounds","match":"<%|=:=|<:<|<%<|>:|<:","name":"meta.bounds.scala"},"meta-brackets":{"comment":"For themes: Brackets look nice when colored.","patterns":[{"comment":"The punctuation.section.*.begin is needed for return snippet in source bundle","match":"\\\\{","name":"punctuation.section.block.begin.scala"},{"comment":"The punctuation.section.*.end is needed for return snippet in source bundle","match":"\\\\}","name":"punctuation.section.block.end.scala"},{"match":"{|}|\\\\(|\\\\)|\\\\[|\\\\]","name":"meta.bracket.scala"}]},"meta-colons":{"comment":"For themes: Matching type colons","patterns":[{"match":"(?<!:):(?!:)","name":"meta.colon.scala"}]},"namedBounds":{"patterns":[{"captures":{"1":{"name":"keyword.other.import.as.scala"},"2":{"name":"variable.stable.declaration.scala"}},"match":"\\\\s+(as)\\\\s+([_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?)\\\\b"}]},"parameter-list":{"patterns":[{"captures":{"1":{"name":"variable.parameter.scala"},"2":{"name":"meta.colon.scala"}},"match":"(?<=[^\\\\._$a-zA-Z0-9])(`[^`]+`|[_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?)\\\\s*(:)\\\\s+"}]},"qualifiedClassName":{"captures":{"1":{"name":"entity.name.class"}},"match":"(\\\\b([A-Z][\\\\w]*)(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?)"},"scala-quoted-or-symbol":{"patterns":[{"captures":{"1":{"name":"keyword.control.flow.staging.scala constant.other.symbol.scala"},"2":{"name":"constant.other.symbol.scala"}},"match":"(\')((?>(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)))(?!\')"},{"match":"\'(?=\\\\s*\\\\{(?!\'))","name":"keyword.control.flow.staging.scala"},{"match":"\'(?=\\\\s*\\\\[(?!\'))","name":"keyword.control.flow.staging.scala"},{"match":"\\\\$(?=\\\\s*\\\\{)","name":"keyword.control.flow.staging.scala"}]},"script-header":{"captures":{"1":{"name":"string.unquoted.shebang.scala"}},"match":"^#!(.*)$","name":"comment.block.shebang.scala"},"singleton-type":{"captures":{"1":{"name":"keyword.type.scala"}},"match":"\\\\.(type)(?![A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[0-9])"},"storage-modifiers":{"patterns":[{"match":"\\\\b(private\\\\[\\\\S+\\\\]|protected\\\\[\\\\S+\\\\]|private|protected)\\\\b","name":"storage.modifier.access"},{"match":"\\\\b(synchronized|@volatile|abstract|final|lazy|sealed|implicit|override|@transient|@native)\\\\b","name":"storage.modifier.other"},{"match":"(?<=^|\\\\s)\\\\b(transparent|opaque|infix|open|inline)\\\\b(?=[a-z\\\\s]*\\\\b(def|val|var|given|type|class|trait|object|enum)\\\\b)","name":"storage.modifier.other"}]},"string-interpolation":{"patterns":[{"match":"\\\\$\\\\$","name":"constant.character.escape.interpolation.scala"},{"captures":{"1":{"name":"punctuation.definition.template-expression.begin.scala"}},"match":"(\\\\$)([A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*)","name":"meta.template.expression.scala"},{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.scala"}},"contentName":"meta.embedded.line.scala","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.scala"}},"name":"meta.template.expression.scala","patterns":[{"include":"#code"}]}]},"strings":{"patterns":[{"begin":"\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.scala"}},"end":"\\"\\"\\"(?!\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.scala"}},"name":"string.quoted.triple.scala","patterns":[{"match":"\\\\\\\\\\\\\\\\|\\\\\\\\u[0-9A-Fa-f]{4}","name":"constant.character.escape.scala"}]},{"begin":"\\\\b(raw)(\\"\\"\\")","beginCaptures":{"1":{"name":"keyword.interpolation.scala"},"2":{"name":"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"}},"end":"(\\"\\"\\")(?!\\")|\\\\$\\n|(\\\\$[^\\\\$\\"_{A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}])","endCaptures":{"1":{"name":"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"},"2":{"name":"invalid.illegal.unrecognized-string-escape.scala"}},"patterns":[{"match":"\\\\$[\\\\$\\"]","name":"constant.character.escape.scala"},{"include":"#string-interpolation"},{"match":".","name":"string.quoted.triple.interpolated.scala"}]},{"begin":"\\\\b((?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?))(\\"\\"\\")","beginCaptures":{"1":{"name":"keyword.interpolation.scala"},"2":{"name":"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"}},"end":"(\\"\\"\\")(?!\\")|\\\\$\\n|(\\\\$[^\\\\$\\"_{A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}])","endCaptures":{"1":{"name":"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"},"2":{"name":"invalid.illegal.unrecognized-string-escape.scala"}},"patterns":[{"include":"#string-interpolation"},{"match":"\\\\\\\\\\\\\\\\|\\\\\\\\u[0-9A-Fa-f]{4}","name":"constant.character.escape.scala"},{"match":".","name":"string.quoted.triple.interpolated.scala"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.scala"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.scala"}},"name":"string.quoted.double.scala","patterns":[{"match":"\\\\\\\\(?:[btnfr\\\\\\\\\\"\']|[0-7]{1,3}|u[0-9A-Fa-f]{4})","name":"constant.character.escape.scala"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.scala"}]},{"begin":"\\\\b(raw)(\\")","beginCaptures":{"1":{"name":"keyword.interpolation.scala"},"2":{"name":"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"}},"end":"(\\")|\\\\$\\n|(\\\\$[^\\\\$\\"_{A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}])","endCaptures":{"1":{"name":"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"},"2":{"name":"invalid.illegal.unrecognized-string-escape.scala"}},"patterns":[{"match":"\\\\$[\\\\$\\"]","name":"constant.character.escape.scala"},{"include":"#string-interpolation"},{"match":".","name":"string.quoted.double.interpolated.scala"}]},{"begin":"\\\\b((?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?))(\\")","beginCaptures":{"1":{"name":"keyword.interpolation.scala"},"2":{"name":"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"}},"end":"(\\")|\\\\$\\n|(\\\\$[^\\\\$\\"_{A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}])","endCaptures":{"1":{"name":"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"},"2":{"name":"invalid.illegal.unrecognized-string-escape.scala"}},"patterns":[{"match":"\\\\$[\\\\$\\"]","name":"constant.character.escape.scala"},{"include":"#string-interpolation"},{"match":"\\\\\\\\(?:[btnfr\\\\\\\\\\"\']|[0-7]{1,3}|u[0-9A-Fa-f]{4})","name":"constant.character.escape.scala"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.scala"},{"match":".","name":"string.quoted.double.interpolated.scala"}]}]},"using":{"patterns":[{"captures":{"1":{"name":"keyword.declaration.scala"}},"match":"(?<=\\\\()\\\\s*(using)\\\\s"}]},"using-directive":{"begin":"^\\\\s*(//>)\\\\s*(using)[^\\\\S\\\\n]+(?:(\\\\S+))?","beginCaptures":{"1":{"name":"punctuation.definition.comment.scala"},"2":{"name":"keyword.other.import.scala"},"3":{"patterns":[{"match":"[A-Z\\\\p{Lt}\\\\p{Lu}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|`[^`]+`|(?:[A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}][A-Z\\\\p{Lt}\\\\p{Lu}_a-z\\\\$\\\\p{Lo}\\\\p{Nl}\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)?|[!#%&*+\\\\-\\\\/:<>=?@^|~\\\\p{Sm}\\\\p{So}]+)","name":"entity.name.import.scala"},{"match":"\\\\.","name":"punctuation.definition.import"}]}},"end":"\\\\n","name":"comment.line.shebang.scala","patterns":[{"include":"#constants"},{"include":"#strings"},{"match":"[^\\\\s,]+","name":"string.quoted.double.scala"}]},"xml-doublequotedString":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.double.xml","patterns":[{"include":"#xml-entity"}]},"xml-embedded-content":{"patterns":[{"begin":"{","captures":{"0":{"name":"meta.bracket.scala"}},"end":"}","name":"meta.source.embedded.scala","patterns":[{"include":"#code"}]},{"captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}},"match":" (?:([-_a-zA-Z0-9]+)((:)))?([_a-zA-Z-]+)="},{"include":"#xml-doublequotedString"},{"include":"#xml-singlequotedString"}]},"xml-entity":{"captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}},"match":"(&)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#[0-9]+|#x[0-9a-fA-F]+)(;)","name":"constant.character.entity.xml"},"xml-literal":{"patterns":[{"begin":"(<)((?:([_a-zA-Z0-9][_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*))(?=(\\\\s[^>]*)?></\\\\2>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"3":{"name":"entity.name.tag.namespace.xml"},"4":{"name":"entity.name.tag.xml"},"5":{"name":"punctuation.separator.namespace.xml"},"6":{"name":"entity.name.tag.localname.xml"}},"comment":"We do not allow a tag name to start with a - since this would likely conflict with the <- operator. This is not very common for tag names anyway. Also code such as -- if (val <val2 || val> val3) will falsly be recognized as an xml tag. The solution is to put a space on either side of the comparison operator","end":"(>(<))/(?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]*[_a-zA-Z0-9])(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"meta.scope.between-tag-pair.xml"},"3":{"name":"entity.name.tag.namespace.xml"},"4":{"name":"entity.name.tag.xml"},"5":{"name":"punctuation.separator.namespace.xml"},"6":{"name":"entity.name.tag.localname.xml"},"7":{"name":"punctuation.definition.tag.xml"}},"name":"meta.tag.no-content.xml","patterns":[{"include":"#xml-embedded-content"}]},{"begin":"(</?)(?:([_a-zA-Z0-9][-_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*)(?=[^>]*?>)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.namespace.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(/?>)","name":"meta.tag.xml","patterns":[{"include":"#xml-embedded-content"}]},{"include":"#xml-entity"}]},"xml-singlequotedString":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.single.xml","patterns":[{"include":"#xml-entity"}]}},"scopeName":"source.scala"}')),eoe=[Xie]});var z4={};x(z4,{default:()=>noe});var toe,noe,U4=_(()=>{toe=Object.freeze(JSON.parse(`{"displayName":"Scheme","fileTypes":["scm","ss","sch","rkt"],"name":"scheme","patterns":[{"include":"#comment"},{"include":"#block-comment"},{"include":"#sexp"},{"include":"#string"},{"include":"#language-functions"},{"include":"#quote"},{"include":"#illegal"}],"repository":{"block-comment":{"begin":"\\\\#\\\\|","contentName":"comment","end":"\\\\|\\\\#","name":"comment","patterns":[{"include":"#block-comment","name":"comment"}]},"comment":{"begin":"(^[ \\\\t]+)?(?=;)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.scheme"}},"end":"(?!\\\\G)","patterns":[{"begin":";","beginCaptures":{"0":{"name":"punctuation.definition.comment.scheme"}},"end":"\\\\n","name":"comment.line.semicolon.scheme"}]},"constants":{"patterns":[{"match":"#[t|f]","name":"constant.language.boolean.scheme"},{"match":"(?<=[\\\\(\\\\s])((#e|#i)?[0-9]+(\\\\.[0-9]+)?|(#x)[0-9a-fA-F]+|(#o)[0-7]+|(#b)[01]+)(?=[\\\\s;()'\\",\\\\[\\\\]])","name":"constant.numeric.scheme"}]},"illegal":{"match":"[()\\\\[\\\\]]","name":"invalid.illegal.parenthesis.scheme"},"language-functions":{"patterns":[{"match":"(?<=(\\\\s|\\\\(|\\\\[))(do|or|and|else|quasiquote|begin|if|case|set!|cond|let|unquote|define|let\\\\*|unquote-splicing|delay|letrec)(?=(\\\\s|\\\\())","name":"keyword.control.scheme"},{"comment":"\\n\\t\\t\\t\\t\\t\\tThese functions run a test, and return a boolean\\n\\t\\t\\t\\t\\t\\tanswer.\\n\\t\\t\\t\\t\\t","match":"(?<=(\\\\s|\\\\())(char-alphabetic|char-lower-case|char-numeric|char-ready|char-upper-case|char-whitespace|(?:char|string)(?:-ci)?(?:=|<=?|>=?)|atom|boolean|bound-identifier=|char|complex|identifier|integer|symbol|free-identifier=|inexact|eof-object|exact|list|(?:input|output)-port|pair|real|rational|zero|vector|negative|odd|null|string|eq|equal|eqv|even|number|positive|procedure)(\\\\?)(?=(\\\\s|\\\\())","name":"support.function.boolean-test.scheme"},{"comment":"\\n\\t\\t\\t\\t\\t\\tThese functions change one type into another.\\n\\t\\t\\t\\t\\t","match":"(?<=(\\\\s|\\\\())(char->integer|exact->inexact|inexact->exact|integer->char|symbol->string|list->vector|list->string|identifier->symbol|vector->list|string->list|string->number|string->symbol|number->string)(?=(\\\\s|\\\\())","name":"support.function.convert-type.scheme"},{"comment":"\\n\\t\\t\\t\\t\\t\\tThese functions are potentially dangerous because\\n\\t\\t\\t\\t\\t\\tthey have side-effects which could affect other\\n\\t\\t\\t\\t\\t\\tparts of the program.\\n\\t\\t\\t\\t\\t","match":"(?<=(\\\\s|\\\\())(set-(?:car|cdr)|(?:vector|string)-(?:fill|set))(!)(?=(\\\\s|\\\\())","name":"support.function.with-side-effects.scheme"},{"comment":"\\n\\t\\t\\t\\t\\t\\t+, -, *, /, =, >, etc. \\n\\t\\t\\t\\t\\t","match":"(?<=(\\\\s|\\\\())(>=?|<=?|=|[*/+-])(?=(\\\\s|\\\\())","name":"keyword.operator.arithmetic.scheme"},{"match":"(?<=(\\\\s|\\\\())(append|apply|approximate|call-with-current-continuation|call/cc|catch|construct-identifier|define-syntax|display|foo|for-each|force|format|cd|gen-counter|gen-loser|generate-identifier|last-pair|length|let-syntax|letrec-syntax|list|list-ref|list-tail|load|log|macro|magnitude|map|map-streams|max|member|memq|memv|min|newline|nil|not|peek-char|rationalize|read|read-char|return|reverse|sequence|substring|syntax|syntax-rules|transcript-off|transcript-on|truncate|unwrap-syntax|values-list|write|write-char|cons|c(a|d){1,4}r|abs|acos|angle|asin|assoc|assq|assv|atan|ceiling|cos|floor|round|sin|sqrt|tan|(?:real|imag)-part|numerator|denominatormodulo|exp|expt|remainder|quotient|lcm|call-with-(?:input|output)-file|(?:close|current)-(?:input|output)-port|with-(?:input|output)-from-file|open-(?:input|output)-file|char-(?:downcase|upcase|ready)|make-(?:polar|promise|rectangular|string|vector)string(?:-(?:append|copy|length|ref))?|vector(?:-length|-ref))(?=(\\\\s|\\\\())","name":"support.function.general.scheme"}]},"quote":{"comment":"\\n\\t\\t\\t\\tWe need to be able to quote any kind of item, which creates\\n\\t\\t\\t\\ta tiny bit of complexity in our grammar. It is hopefully\\n\\t\\t\\t\\tnot overwhelming complexity.\\n\\t\\t\\t\\t\\n\\t\\t\\t\\tNote: the first two matches are special cases. quoted\\n\\t\\t\\t\\tsymbols, and quoted empty lists are considered constant.other\\n\\t\\t\\t\\t\\n\\t\\t\\t","patterns":[{"captures":{"1":{"name":"punctuation.section.quoted.symbol.scheme"}},"match":"(')\\\\s*([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*)","name":"constant.other.symbol.scheme"},{"captures":{"1":{"name":"punctuation.section.quoted.empty-list.scheme"},"2":{"name":"meta.expression.scheme"},"3":{"name":"punctuation.section.expression.begin.scheme"},"4":{"name":"punctuation.section.expression.end.scheme"}},"match":"(')\\\\s*((\\\\()\\\\s*(\\\\)))","name":"constant.other.empty-list.schem"},{"begin":"(')\\\\s*","beginCaptures":{"1":{"name":"punctuation.section.quoted.scheme"}},"comment":"quoted double-quoted string or s-expression","end":"(?=[\\\\s()])|(?<=\\\\n)","name":"string.other.quoted-object.scheme","patterns":[{"include":"#quoted"}]}]},"quote-sexp":{"begin":"(?<=\\\\()\\\\s*(quote)\\\\s+","beginCaptures":{"1":{"name":"keyword.control.quote.scheme"}},"comment":"\\n\\t\\t\\t\\tSomething quoted with (quote \xABthing\xBB). In this case \xABthing\xBB\\n\\t\\t\\t\\twill not be evaluated, so we are considering it a string.\\n\\t\\t\\t","contentName":"string.other.quote.scheme","end":"(?=[\\\\s)])|(?<=\\\\n)","patterns":[{"include":"#quoted"}]},"quoted":{"patterns":[{"include":"#string"},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.scheme"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.expression.end.scheme"}},"name":"meta.expression.scheme","patterns":[{"include":"#quoted"}]},{"include":"#quote"},{"include":"#illegal"}]},"sexp":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.scheme"}},"end":"(\\\\))(\\\\n)?","endCaptures":{"1":{"name":"punctuation.section.expression.end.scheme"},"2":{"name":"meta.after-expression.scheme"}},"name":"meta.expression.scheme","patterns":[{"include":"#comment"},{"begin":"(?<=\\\\()(define)\\\\s+(\\\\()([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*)((\\\\s+([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*|[._]))*)\\\\s*(\\\\))","captures":{"1":{"name":"keyword.control.scheme"},"2":{"name":"punctuation.definition.function.scheme"},"3":{"name":"entity.name.function.scheme"},"4":{"name":"variable.parameter.function.scheme"},"7":{"name":"punctuation.definition.function.scheme"}},"end":"(?=\\\\))","name":"meta.declaration.procedure.scheme","patterns":[{"include":"#comment"},{"include":"#sexp"},{"include":"#illegal"}]},{"begin":"(?<=\\\\()(lambda)\\\\s+(\\\\()((?:([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*|[._])\\\\s+)*(?:([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*|[._]))?)(\\\\))","captures":{"1":{"name":"keyword.control.scheme"},"2":{"name":"punctuation.definition.variable.scheme"},"3":{"name":"variable.parameter.scheme"},"6":{"name":"punctuation.definition.variable.scheme"}},"comment":"\\n\\t\\t\\t\\t\\t\\tNot sure this one is quite correct. That \\\\s* is\\n\\t\\t\\t\\t\\t\\tparticularly troubling\\n\\t\\t\\t\\t\\t","end":"(?=\\\\))","name":"meta.declaration.procedure.scheme","patterns":[{"include":"#comment"},{"include":"#sexp"},{"include":"#illegal"}]},{"begin":"(?<=\\\\()(define)\\\\s([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*)\\\\s*.*?","captures":{"1":{"name":"keyword.control.scheme"},"2":{"name":"variable.other.scheme"}},"end":"(?=\\\\))","name":"meta.declaration.variable.scheme","patterns":[{"include":"#comment"},{"include":"#sexp"},{"include":"#illegal"}]},{"include":"#quote-sexp"},{"include":"#quote"},{"include":"#language-functions"},{"include":"#string"},{"include":"#constants"},{"match":"(?<=[\\\\(\\\\s])(#\\\\\\\\)(space|newline|tab)(?=[\\\\s\\\\)])","name":"constant.character.named.scheme"},{"match":"(?<=[\\\\(\\\\s])(#\\\\\\\\)x[0-9A-F]{2,4}(?=[\\\\s\\\\)])","name":"constant.character.hex-literal.scheme"},{"match":"(?<=[\\\\(\\\\s])(#\\\\\\\\).(?=[\\\\s\\\\)])","name":"constant.character.escape.scheme"},{"comment":"\\n\\t\\t\\t\\t\\t\\tthe . in (a . b) which conses together two elements\\n\\t\\t\\t\\t\\t\\ta and b. (a b c) == (a . (b . (c . nil)))\\n\\t\\t\\t\\t\\t","match":"(?<=[ ()])\\\\.(?=[ ()])","name":"punctuation.separator.cons.scheme"},{"include":"#sexp"},{"include":"#illegal"}]},"string":{"begin":"(\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.scheme"}},"end":"(\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.scheme"}},"name":"string.quoted.double.scheme","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.scheme"}]}},"scopeName":"source.scheme"}`)),noe=[toe]});var H4={};x(H4,{default:()=>roe});var aoe,roe,Z4=_(()=>{KB();aoe=Object.freeze(JSON.parse('{"displayName":"ShaderLab","name":"shaderlab","patterns":[{"begin":"//","end":"$","name":"comment.line.double-slash.shaderlab"},{"match":"\\\\b(?i:Range|Float|Int|Color|Vector|2D|3D|Cube|Any)\\\\b","name":"support.type.basic.shaderlab"},{"include":"#numbers"},{"match":"\\\\b(?i:Shader|Properties|SubShader|Pass|Category)\\\\b","name":"storage.type.structure.shaderlab"},{"match":"\\\\b(?i:Name|Tags|Fallback|CustomEditor|Cull|ZWrite|ZTest|Offset|Blend|BlendOp|ColorMask|AlphaToMask|LOD|Lighting|Stencil|Ref|ReadMask|WriteMask|Comp|CompBack|CompFront|Fail|ZFail|UsePass|GrabPass|Dependency|Material|Diffuse|Ambient|Shininess|Specular|Emission|Fog|Mode|Density|SeparateSpecular|SetTexture|Combine|ConstantColor|Matrix|AlphaTest|ColorMaterial|BindChannels|Bind)\\\\b","name":"support.type.propertyname.shaderlab"},{"match":"\\\\b(?i:Back|Front|On|Off|[RGBA]{1,3}|AmbientAndDiffuse|Emission)\\\\b","name":"support.constant.property-value.shaderlab"},{"match":"\\\\b(?i:Less|Greater|LEqual|GEqual|Equal|NotEqual|Always|Never)\\\\b","name":"support.constant.property-value.comparisonfunction.shaderlab"},{"match":"\\\\b(?i:Keep|Zero|Replace|IncrSat|DecrSat|Invert|IncrWrap|DecrWrap)\\\\b","name":"support.constant.property-value.stenciloperation.shaderlab"},{"match":"\\\\b(?i:Previous|Primary|Texture|Constant|Lerp|Double|Quad|Alpha)\\\\b","name":"support.constant.property-value.texturecombiners.shaderlab"},{"match":"\\\\b(?i:Global|Linear|Exp2|Exp)\\\\b","name":"support.constant.property-value.fog.shaderlab"},{"match":"\\\\b(?i:Vertex|Normal|Tangent|TexCoord0|TexCoord1)\\\\b","name":"support.constant.property-value.bindchannels.shaderlab"},{"match":"\\\\b(?i:Add|Sub|RevSub|Min|Max|LogicalClear|LogicalSet|LogicalCopyInverted|LogicalCopy|LogicalNoop|LogicalInvert|LogicalAnd|LogicalNand|LogicalOr|LogicalNor|LogicalXor|LogicalEquiv|LogicalAndReverse|LogicalAndInverted|LogicalOrReverse|LogicalOrInverted)\\\\b","name":"support.constant.property-value.blendoperations.shaderlab"},{"match":"\\\\b(?i:One|Zero|SrcColor|SrcAlpha|DstColor|DstAlpha|OneMinusSrcColor|OneMinusSrcAlpha|OneMinusDstColor|OneMinusDstAlpha)\\\\b","name":"support.constant.property-value.blendfactors.shaderlab"},{"match":"\\\\[([a-zA-Z_][a-zA-Z0-9_]*)\\\\](?!\\\\s*[a-zA-Z_][a-zA-Z0-9_]*\\\\s*\\\\(\\")","name":"support.variable.reference.shaderlab"},{"begin":"(\\\\[)","end":"(\\\\])","name":"meta.attribute.shaderlab","patterns":[{"match":"\\\\G([a-zA-Z]+)\\\\b","name":"support.type.attributename.shaderlab"},{"include":"#numbers"}]},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\s*\\\\(","name":"support.variable.declaration.shaderlab"},{"begin":"\\\\b(CGPROGRAM|CGINCLUDE)\\\\b","beginCaptures":{"1":{"name":"keyword.other"}},"end":"\\\\b(ENDCG)\\\\b","endCaptures":{"1":{"name":"keyword.other"}},"name":"meta.cgblock","patterns":[{"include":"#hlsl-embedded"}]},{"begin":"\\\\b(HLSLPROGRAM|HLSLINCLUDE)\\\\b","beginCaptures":{"1":{"name":"keyword.other"}},"end":"\\\\b(ENDHLSL)\\\\b","endCaptures":{"1":{"name":"keyword.other"}},"name":"meta.hlslblock","patterns":[{"include":"#hlsl-embedded"}]},{"begin":"\\"","end":"\\"","name":"string.quoted.double.shaderlab"}],"repository":{"hlsl-embedded":{"patterns":[{"include":"source.hlsl"},{"match":"\\\\b(fixed([1-4](x[1-4])?)?)\\\\b","name":"storage.type.basic.shaderlab"},{"match":"\\\\b(UNITY_MATRIX_MVP|UNITY_MATRIX_MV|UNITY_MATRIX_M|UNITY_MATRIX_V|UNITY_MATRIX_P|UNITY_MATRIX_VP|UNITY_MATRIX_T_MV|UNITY_MATRIX_I_V|UNITY_MATRIX_IT_MV|_Object2World|_World2Object|unity_ObjectToWorld|unity_WorldToObject)\\\\b","name":"support.variable.transformations.shaderlab"},{"match":"\\\\b(_WorldSpaceCameraPos|_ProjectionParams|_ScreenParams|_ZBufferParams|unity_OrthoParams|unity_CameraProjection|unity_CameraInvProjection|unity_CameraWorldClipPlanes)\\\\b","name":"support.variable.camera.shaderlab"},{"match":"\\\\b(_Time|_SinTime|_CosTime|unity_DeltaTime)\\\\b","name":"support.variable.time.shaderlab"},{"match":"\\\\b(_LightColor0|_WorldSpaceLightPos0|_LightMatrix0|unity_4LightPosX0|unity_4LightPosY0|unity_4LightPosZ0|unity_4LightAtten0|unity_LightColor|_LightColor|unity_LightPosition|unity_LightAtten|unity_SpotDirection)\\\\b","name":"support.variable.lighting.shaderlab"},{"match":"\\\\b(unity_AmbientSky|unity_AmbientEquator|unity_AmbientGround|UNITY_LIGHTMODEL_AMBIENT|unity_FogColor|unity_FogParams)\\\\b","name":"support.variable.fog.shaderlab"},{"match":"\\\\b(unity_LODFade)\\\\b","name":"support.variable.various.shaderlab"},{"match":"\\\\b(SHADER_API_D3D9|SHADER_API_D3D11|SHADER_API_GLCORE|SHADER_API_OPENGL|SHADER_API_GLES|SHADER_API_GLES3|SHADER_API_METAL|SHADER_API_D3D11_9X|SHADER_API_PSSL|SHADER_API_XBOXONE|SHADER_API_PSP2|SHADER_API_WIIU|SHADER_API_MOBILE|SHADER_API_GLSL)\\\\b","name":"support.variable.preprocessor.targetplatform.shaderlab"},{"match":"\\\\b(SHADER_TARGET)\\\\b","name":"support.variable.preprocessor.targetmodel.shaderlab"},{"match":"\\\\b(UNITY_VERSION)\\\\b","name":"support.variable.preprocessor.unityversion.shaderlab"},{"match":"\\\\b(UNITY_BRANCH|UNITY_FLATTEN|UNITY_NO_SCREENSPACE_SHADOWS|UNITY_NO_LINEAR_COLORSPACE|UNITY_NO_RGBM|UNITY_NO_DXT5nm|UNITY_FRAMEBUFFER_FETCH_AVAILABLE|UNITY_USE_RGBA_FOR_POINT_SHADOWS|UNITY_ATTEN_CHANNEL|UNITY_HALF_TEXEL_OFFSET|UNITY_UV_STARTS_AT_TOP|UNITY_MIGHT_NOT_HAVE_DEPTH_Texture|UNITY_NEAR_CLIP_VALUE|UNITY_VPOS_TYPE|UNITY_CAN_COMPILE_TESSELLATION|UNITY_COMPILER_HLSL|UNITY_COMPILER_HLSL2GLSL|UNITY_COMPILER_CG|UNITY_REVERSED_Z)\\\\b","name":"support.variable.preprocessor.platformdifference.shaderlab"},{"match":"\\\\b(UNITY_PASS_FORWARDBASE|UNITY_PASS_FORWARDADD|UNITY_PASS_DEFERRED|UNITY_PASS_SHADOWCASTER|UNITY_PASS_PREPASSBASE|UNITY_PASS_PREPASSFINAL)\\\\b","name":"support.variable.preprocessor.texture2D.shaderlab"},{"match":"\\\\b(appdata_base|appdata_tan|appdata_full|appdata_img)\\\\b","name":"support.class.structures.shaderlab"},{"match":"\\\\b(SurfaceOutputStandardSpecular|SurfaceOutputStandard|SurfaceOutput|Input)\\\\b","name":"support.class.surface.shaderlab"}]},"numbers":{"patterns":[{"match":"\\\\b([0-9]+\\\\.?[0-9]*)\\\\b","name":"constant.numeric.shaderlab"}]}},"scopeName":"source.shaderlab","embeddedLangs":["hlsl"],"aliases":["shader"]}')),roe=[...WB,aoe]});var Y4={};x(Y4,{default:()=>ooe});var ioe,ooe,W4=_(()=>{Ki();ioe=Object.freeze(JSON.parse('{"displayName":"Shell Session","fileTypes":["sh-session"],"name":"shellsession","patterns":[{"captures":{"1":{"name":"entity.other.prompt-prefix.shell-session"},"2":{"name":"punctuation.separator.prompt.shell-session"},"3":{"name":"source.shell","patterns":[{"include":"source.shell"}]}},"match":"^(?:((?:\\\\(\\\\S+\\\\)\\\\s*)?(?:sh\\\\S*?|\\\\w+\\\\S+[@:]\\\\S+(?:\\\\s+\\\\S+)?|\\\\[\\\\S+?[@:][^\\\\n]+?\\\\].*?))\\\\s*)?([>$#%\u276F\u279C]|\\\\p{Greek})\\\\s+(.*)$"},{"match":"^.+$","name":"meta.output.shell-session"}],"scopeName":"text.shell-session","embeddedLangs":["shellscript"],"aliases":["console"]}')),ooe=[...ia,ioe]});var K4={};x(K4,{default:()=>coe});var soe,coe,J4=_(()=>{soe=Object.freeze(JSON.parse(`{"displayName":"Smalltalk","fileTypes":["st"],"foldingStartMarker":"\\\\[","foldingStopMarker":"^\\\\s*\\\\]|^\\\\s\\\\]","name":"smalltalk","patterns":[{"match":"\\\\$.","name":"constant.character.smalltalk"},{"match":"\\\\b(class)\\\\b","name":"storage.type.$1.smalltalk"},{"match":"\\\\b(extend|super|self)\\\\b","name":"storage.modifier.$1.smalltalk"},{"match":"\\\\b(yourself|new|Smalltalk)\\\\b","name":"keyword.control.$1.smalltalk"},{"match":":=","name":"keyword.operator.assignment.smalltalk"},{"comment":"Parse the variable declaration like: |a b c|","match":"/^:\\\\w*\\\\s*\\\\|/","name":"constant.other.block.smalltalk"},{"captures":{"1":{"name":"punctuation.definition.instance-variables.begin.smalltalk"},"2":{"patterns":[{"match":"\\\\w+","name":"support.type.variable.declaration.smalltalk"}]},"3":{"name":"punctuation.definition.instance-variables.end.smalltalk"}},"match":"(\\\\|)(\\\\s*\\\\w[\\\\w ]*)(\\\\|)"},{"captures":{"1":{"patterns":[{"match":":\\\\w+","name":"entity.name.function.block.smalltalk"}]}},"comment":"Parse the blocks like: [ :a :b | ...... ]","match":"\\\\[((\\\\s+|:\\\\w+)*)\\\\|"},{"include":"#numeric"},{"match":"<(?!<|=)|>(?!<|=|>)|<=|>=|=|==|~=|~~|>>|\\\\^","name":"keyword.operator.comparison.smalltalk"},{"match":"(\\\\*|\\\\+|\\\\-|/|\\\\\\\\)","name":"keyword.operator.arithmetic.smalltalk"},{"match":"(?<=[ \\\\t])!+|\\\\bnot\\\\b|&|\\\\band\\\\b|\\\\||\\\\bor\\\\b","name":"keyword.operator.logical.smalltalk"},{"comment":"Fake reserved word -> main Smalltalk messages","match":"(?<!\\\\.)\\\\b(ensure|resume|retry|signal)\\\\b(?![?!])","name":"keyword.control.smalltalk"},{"comment":"Fake conditionals. Smalltalk Methods.","match":"ifCurtailed:|ifTrue:|ifFalse:|whileFalse:|whileTrue:","name":"keyword.control.conditionals.smalltalk"},{"captures":{"1":{"name":"entity.other.inherited-class.smalltalk"},"3":{"name":"keyword.control.smalltalk"},"4":{"name":"entity.name.type.class.smalltalk"}},"match":"(\\\\w+)(\\\\s+(subclass:))\\\\s*(\\\\w*)","name":"meta.class.smalltalk"},{"begin":"\\"","beginCaptures":[{"name":"punctuation.definition.comment.begin.smalltalk"}],"end":"\\"","endCaptures":[{"name":"punctuation.definition.comment.end.smalltalk"}],"name":"comment.block.smalltalk"},{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.smalltalk"},{"match":"\\\\b(nil)\\\\b","name":"constant.language.nil.smalltalk"},{"captures":{"1":{"name":"punctuation.definition.constant.smalltalk"}},"comment":"messages/methods","match":"(?>[a-zA-Z_]\\\\w*(?>[?!])?)(:)(?!:)","name":"constant.other.messages.smalltalk"},{"captures":{"1":{"name":"punctuation.definition.constant.smalltalk"}},"comment":"symbols","match":"(#)[a-zA-Z_][a-zA-Z0-9_:]*","name":"constant.other.symbol.smalltalk"},{"begin":"#\\\\[","beginCaptures":[{"name":"punctuation.definition.constant.begin.smalltalk"}],"end":"\\\\]","endCaptures":[{"name":"punctuation.definition.constant.end.smalltalk"}],"name":"meta.array.byte.smalltalk","patterns":[{"match":"[0-9]+(r[a-zA-Z0-9]+)?","name":"constant.numeric.integer.smalltalk"},{"match":"[^\\\\s\\\\]]+","name":"invalid.illegal.character-not-allowed-here.smalltalk"}]},{"begin":"#\\\\(","beginCaptures":[{"name":"punctuation.definition.constant.begin.smalltalk"}],"comment":"Array Constructor","end":"\\\\)","endCaptures":[{"name":"punctuation.definition.constant.end.smalltalk"}],"name":"constant.other.array.smalltalk"},{"begin":"'","beginCaptures":[{"name":"punctuation.definition.string.begin.smalltalk"}],"end":"'","endCaptures":[{"name":"punctuation.definition.string.end.smalltalk"}],"name":"string.quoted.single.smalltalk"},{"match":"\\\\b[A-Z]\\\\w*\\\\b","name":"variable.other.constant.smalltalk"}],"repository":{"numeric":{"patterns":[{"match":"(?<!\\\\w)[0-9]+\\\\.[0-9]+s[0-9]*","name":"constant.numeric.float.scaled.smalltalk"},{"match":"(?<!\\\\w)[0-9]+\\\\.[0-9]+([edq]-?[0-9]+)?","name":"constant.numeric.float.smalltalk"},{"match":"(?<!\\\\w)-?[0-9]+r[a-zA-Z0-9]+","name":"constant.numeric.integer.radix.smalltalk"},{"match":"(?<!\\\\w)-?[0-9]+([edq]-?[0-9]+)?","name":"constant.numeric.integer.smalltalk"}]}},"scopeName":"source.smalltalk"}`)),coe=[soe]});var V4={};x(V4,{default:()=>Aoe});var loe,Aoe,X4=_(()=>{loe=Object.freeze(JSON.parse(`{"displayName":"Solidity","fileTypes":["sol"],"name":"solidity","patterns":[{"include":"#natspec"},{"include":"#declaration-userType"},{"include":"#comment"},{"include":"#operator"},{"include":"#global"},{"include":"#control"},{"include":"#constant"},{"include":"#primitive"},{"include":"#type-primitive"},{"include":"#type-modifier-extended-scope"},{"include":"#declaration"},{"include":"#function-call"},{"include":"#assembly"},{"include":"#punctuation"}],"repository":{"assembly":{"patterns":[{"match":"\\\\b(assembly)\\\\b","name":"keyword.control.assembly"},{"match":"\\\\b(let)\\\\b","name":"storage.type.assembly"}]},"comment":{"patterns":[{"include":"#comment-line"},{"include":"#comment-block"}]},"comment-block":{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block","patterns":[{"include":"#comment-todo"}]},"comment-line":{"begin":"(?<!tp:)//","end":"$","name":"comment.line","patterns":[{"include":"#comment-todo"}]},"comment-todo":{"match":"(?i)\\\\b(FIXME|TODO|CHANGED|XXX|IDEA|HACK|NOTE|REVIEW|NB|BUG|QUESTION|COMBAK|TEMP|SUPPRESS|LINT|\\\\w+-disable|\\\\w+-suppress)\\\\b(?-i)","name":"keyword.comment.todo"},"constant":{"patterns":[{"include":"#constant-boolean"},{"include":"#constant-time"},{"include":"#constant-currency"}]},"constant-boolean":{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean"},"constant-currency":{"match":"\\\\b(ether|wei|gwei|finney|szabo)\\\\b","name":"constant.language.currency"},"constant-time":{"match":"\\\\b(seconds|minutes|hours|days|weeks|years)\\\\b","name":"constant.language.time"},"control":{"patterns":[{"include":"#control-flow"},{"include":"#control-using"},{"include":"#control-import"},{"include":"#control-pragma"},{"include":"#control-underscore"},{"include":"#control-unchecked"},{"include":"#control-other"}]},"control-flow":{"patterns":[{"match":"\\\\b(if|else|for|while|do|break|continue|try|catch|finally|throw|return|global)\\\\b","name":"keyword.control.flow"},{"begin":"\\\\b(returns)\\\\b","beginCaptures":{"1":{"name":"keyword.control.flow.return"}},"end":"(?=\\\\))","patterns":[{"include":"#declaration-function-parameters"}]}]},"control-import":{"patterns":[{"begin":"\\\\b(import)\\\\b","beginCaptures":{"1":{"name":"keyword.control.import"}},"end":"(?=\\\\;)","patterns":[{"begin":"((?=\\\\{))","end":"((?=\\\\}))","patterns":[{"match":"\\\\b(\\\\w+)\\\\b","name":"entity.name.type.interface"}]},{"match":"\\\\b(from)\\\\b","name":"keyword.control.import.from"},{"include":"#string"},{"include":"#punctuation"}]},{"match":"\\\\b(import)\\\\b","name":"keyword.control.import"}]},"control-other":{"match":"\\\\b(new|delete|emit)\\\\b","name":"keyword.control"},"control-pragma":{"captures":{"1":{"name":"keyword.control.pragma"},"2":{"name":"entity.name.tag.pragma"},"3":{"name":"constant.other.pragma"}},"match":"\\\\b(pragma)(?:\\\\s+([A-Za-z_]\\\\w+)\\\\s+([^\\\\s]+))?\\\\b"},"control-unchecked":{"match":"\\\\b(unchecked)\\\\b","name":"keyword.control.unchecked"},"control-underscore":{"match":"\\\\b(_)\\\\b","name":"constant.other.underscore"},"control-using":{"patterns":[{"captures":{"1":{"name":"keyword.control.using"},"2":{"name":"entity.name.type.library"},"3":{"name":"keyword.control.for"},"4":{"name":"entity.name.type"}},"match":"\\\\b(using)\\\\b\\\\s+\\\\b([A-Za-z\\\\d_]+)\\\\b\\\\s+\\\\b(for)\\\\b\\\\s+\\\\b([A-Za-z\\\\d_]+)"},{"match":"\\\\b(using)\\\\b","name":"keyword.control.using"}]},"declaration":{"patterns":[{"include":"#declaration-contract"},{"include":"#declaration-userType"},{"include":"#declaration-interface"},{"include":"#declaration-library"},{"include":"#declaration-function"},{"include":"#declaration-modifier"},{"include":"#declaration-constructor"},{"include":"#declaration-event"},{"include":"#declaration-storage"},{"include":"#declaration-error"}]},"declaration-constructor":{"patterns":[{"begin":"\\\\b(constructor)\\\\b","beginCaptures":{"1":{"name":"storage.type.constructor"}},"end":"(?=\\\\{)","patterns":[{"begin":"\\\\G\\\\s*(?=\\\\()","end":"(?=\\\\))","patterns":[{"include":"#declaration-function-parameters"}]},{"begin":"(?<=\\\\))","end":"(?=\\\\{)","patterns":[{"include":"#type-modifier-access"},{"include":"#function-call"}]}]},{"captures":{"1":{"name":"storage.type.constructor"}},"match":"\\\\b(constructor)\\\\b"}]},"declaration-contract":{"patterns":[{"begin":"\\\\b(contract)\\\\b\\\\s+(\\\\w+)\\\\b\\\\s+\\\\b(is)\\\\b\\\\s+","beginCaptures":{"1":{"name":"storage.type.contract"},"2":{"name":"entity.name.type.contract"},"3":{"name":"storage.modifier.is"}},"end":"(?=\\\\{)","patterns":[{"match":"\\\\b(\\\\w+)\\\\b","name":"entity.name.type.contract.extend"}]},{"captures":{"1":{"name":"storage.type.contract"},"2":{"name":"entity.name.type.contract"}},"match":"\\\\b(contract)(\\\\s+([A-Za-z_]\\\\w*))?\\\\b"}]},"declaration-enum":{"patterns":[{"begin":"\\\\b(enum)\\\\s+(\\\\w+)\\\\b","beginCaptures":{"1":{"name":"storage.type.enum"},"2":{"name":"entity.name.type.enum"}},"end":"(?=\\\\})","patterns":[{"match":"\\\\b(\\\\w+)\\\\b","name":"variable.other.enummember"},{"include":"#punctuation"},{"include":"#comment"}]},{"captures":{"1":{"name":"storage.type.enum"},"3":{"name":"entity.name.type.enum"}},"match":"\\\\b(enum)(\\\\s+([A-Za-z_]\\\\w*))?\\\\b"}]},"declaration-error":{"captures":{"1":{"name":"storage.type.error"},"3":{"name":"entity.name.type.error"}},"match":"\\\\b(error)(\\\\s+([A-Za-z_]\\\\w*))?\\\\b"},"declaration-event":{"patterns":[{"begin":"\\\\b(event)\\\\b(?:\\\\s+(\\\\w+)\\\\b)?","beginCaptures":{"1":{"name":"storage.type.event"},"2":{"name":"entity.name.type.event"}},"end":"(?=\\\\))","patterns":[{"include":"#type-primitive"},{"captures":{"1":{"name":"storage.type.modifier.indexed"},"2":{"name":"variable.parameter.event"}},"match":"\\\\b(?:(indexed)\\\\s)?(\\\\w+)(?:,\\\\s*|)"},{"include":"#punctuation"}]},{"captures":{"1":{"name":"storage.type.event"},"3":{"name":"entity.name.type.event"}},"match":"\\\\b(event)(\\\\s+([A-Za-z_]\\\\w*))?\\\\b"}]},"declaration-function":{"patterns":[{"begin":"\\\\b(function)\\\\s+(\\\\w+)\\\\b","beginCaptures":{"1":{"name":"storage.type.function"},"2":{"name":"entity.name.function"}},"end":"(?=\\\\{|;)","patterns":[{"include":"#natspec"},{"include":"#global"},{"include":"#declaration-function-parameters"},{"include":"#type-modifier-access"},{"include":"#type-modifier-payable"},{"include":"#type-modifier-immutable"},{"include":"#type-modifier-extended-scope"},{"include":"#control-flow"},{"include":"#function-call"},{"include":"#modifier-call"},{"include":"#punctuation"}]},{"captures":{"1":{"name":"storage.type.function"},"2":{"name":"entity.name.function"}},"match":"\\\\b(function)\\\\s+([A-Za-z_]\\\\w*)\\\\b"}]},"declaration-function-parameters":{"begin":"\\\\G\\\\s*(?=\\\\()","end":"(?=\\\\))","patterns":[{"include":"#type-primitive"},{"include":"#type-modifier-extended-scope"},{"captures":{"1":{"name":"storage.type.struct"}},"match":"\\\\b([A-Z]\\\\w*)\\\\b"},{"include":"#variable"},{"include":"#punctuation"},{"include":"#comment"}]},"declaration-interface":{"patterns":[{"begin":"\\\\b(interface)\\\\b\\\\s+(\\\\w+)\\\\b\\\\s+\\\\b(is)\\\\b\\\\s+","beginCaptures":{"1":{"name":"storage.type.interface"},"2":{"name":"entity.name.type.interface"},"3":{"name":"storage.modifier.is"}},"end":"(?=\\\\{)","patterns":[{"match":"\\\\b(\\\\w+)\\\\b","name":"entity.name.type.interface.extend"}]},{"captures":{"1":{"name":"storage.type.interface"},"2":{"name":"entity.name.type.interface"}},"match":"\\\\b(interface)(\\\\s+([A-Za-z_]\\\\w*))?\\\\b"}]},"declaration-library":{"captures":{"1":{"name":"storage.type.library"},"3":{"name":"entity.name.type.library"}},"match":"\\\\b(library)(\\\\s+([A-Za-z_]\\\\w*))?\\\\b"},"declaration-modifier":{"patterns":[{"begin":"\\\\b(modifier)\\\\b\\\\s*(\\\\w+)","beginCaptures":{"1":{"name":"storage.type.function.modifier"},"2":{"name":"entity.name.function.modifier"}},"end":"(?=\\\\{)","patterns":[{"include":"#declaration-function-parameters"},{"begin":"(?<=\\\\))","end":"(?=\\\\{)","patterns":[{"include":"#declaration-function-parameters"},{"include":"#type-modifier-access"},{"include":"#type-modifier-payable"},{"include":"#type-modifier-immutable"},{"include":"#type-modifier-extended-scope"},{"include":"#function-call"},{"include":"#modifier-call"},{"include":"#control-flow"}]}]},{"captures":{"1":{"name":"storage.type.modifier"},"3":{"name":"entity.name.function"}},"match":"\\\\b(modifier)(\\\\s+([A-Za-z_]\\\\w*))?\\\\b"}]},"declaration-storage":{"patterns":[{"include":"#declaration-storage-mapping"},{"include":"#declaration-struct"},{"include":"#declaration-enum"},{"include":"#declaration-storage-field"}]},"declaration-storage-field":{"patterns":[{"include":"#comment"},{"include":"#control"},{"include":"#type-primitive"},{"include":"#type-modifier-access"},{"include":"#type-modifier-immutable"},{"include":"#type-modifier-extend-scope"},{"include":"#type-modifier-payable"},{"include":"#type-modifier-constant"},{"include":"#primitive"},{"include":"#constant"},{"include":"#operator"},{"include":"#punctuation"}]},"declaration-storage-mapping":{"patterns":[{"begin":"\\\\b(mapping)\\\\b","beginCaptures":{"1":{"name":"storage.type.mapping"}},"end":"(?=\\\\))","patterns":[{"include":"#declaration-storage-mapping"},{"include":"#type-primitive"},{"include":"#punctuation"},{"include":"#operator"}]},{"match":"\\\\b(mapping)\\\\b","name":"storage.type.mapping"}]},"declaration-struct":{"patterns":[{"captures":{"1":{"name":"storage.type.struct"},"3":{"name":"entity.name.type.struct"}},"match":"\\\\b(struct)(\\\\s+([A-Za-z_]\\\\w*))?\\\\b"},{"begin":"\\\\b(struct)\\\\b\\\\s*(\\\\w+)?\\\\b\\\\s*(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.struct"},"2":{"name":"entity.name.type.struct"}},"end":"(?=\\\\})","patterns":[{"include":"#type-primitive"},{"include":"#variable"},{"include":"#punctuation"},{"include":"#comment"}]}]},"declaration-userType":{"captures":{"1":{"name":"storage.type.userType"},"2":{"name":"entity.name.type.userType"},"3":{"name":"storage.modifier.is"}},"match":"\\\\b(type)\\\\b\\\\s+(\\\\w+)\\\\b\\\\s+\\\\b(is)\\\\b"},"function-call":{"captures":{"1":{"name":"entity.name.function"},"2":{"name":"punctuation.parameters.begin"}},"match":"\\\\b([A-Za-z_]\\\\w*)\\\\s*(\\\\()"},"global":{"patterns":[{"include":"#global-variables"},{"include":"#global-functions"}]},"global-functions":{"patterns":[{"match":"\\\\b(require|assert|revert)\\\\b","name":"keyword.control.exceptions"},{"match":"\\\\b(selfdestruct|suicide)\\\\b","name":"keyword.control.contract"},{"match":"\\\\b(addmod|mulmod|keccak256|sha256|sha3|ripemd160|ecrecover)\\\\b","name":"support.function.math"},{"match":"\\\\b(unicode)\\\\b","name":"support.function.string"},{"match":"\\\\b(blockhash|gasleft)\\\\b","name":"variable.language.transaction"},{"match":"\\\\b(type)\\\\b","name":"variable.language.type"}]},"global-variables":{"patterns":[{"match":"\\\\b(this)\\\\b","name":"variable.language.this"},{"match":"\\\\b(super)\\\\b","name":"variable.language.super"},{"match":"\\\\b(abi)\\\\b","name":"variable.language.builtin.abi"},{"match":"\\\\b(msg\\\\.sender|msg|block|tx|now)\\\\b","name":"variable.language.transaction"},{"match":"\\\\b(tx\\\\.origin|tx\\\\.gasprice|msg\\\\.data|msg\\\\.sig|msg\\\\.value)\\\\b","name":"variable.language.transaction"}]},"modifier-call":{"patterns":[{"include":"#function-call"},{"match":"\\\\b(\\\\w+)\\\\b","name":"entity.name.function.modifier"}]},"natspec":{"patterns":[{"begin":"/\\\\*\\\\*","end":"\\\\*/","name":"comment.block.documentation","patterns":[{"include":"#natspec-tags"}]},{"begin":"///","end":"$","name":"comment.block.documentation","patterns":[{"include":"#natspec-tags"}]}]},"natspec-tag-author":{"match":"(@author)\\\\b","name":"storage.type.author.natspec"},"natspec-tag-custom":{"match":"(@custom:\\\\w*)\\\\b","name":"storage.type.dev.natspec"},"natspec-tag-dev":{"match":"(@dev)\\\\b","name":"storage.type.dev.natspec"},"natspec-tag-inheritdoc":{"match":"(@inheritdoc)\\\\b","name":"storage.type.author.natspec"},"natspec-tag-notice":{"match":"(@notice)\\\\b","name":"storage.type.dev.natspec"},"natspec-tag-param":{"captures":{"1":{"name":"storage.type.param.natspec"},"3":{"name":"variable.other.natspec"}},"match":"(@param)(\\\\s+([A-Za-z_]\\\\w*))?\\\\b"},"natspec-tag-return":{"captures":{"1":{"name":"storage.type.return.natspec"},"3":{"name":"variable.other.natspec"}},"match":"(@return)(\\\\s+([A-Za-z_]\\\\w*))?\\\\b"},"natspec-tag-title":{"match":"(@title)\\\\b","name":"storage.type.title.natspec"},"natspec-tags":{"patterns":[{"include":"#comment-todo"},{"include":"#natspec-tag-title"},{"include":"#natspec-tag-author"},{"include":"#natspec-tag-notice"},{"include":"#natspec-tag-dev"},{"include":"#natspec-tag-param"},{"include":"#natspec-tag-return"},{"include":"#natspec-tag-custom"},{"include":"#natspec-tag-inheritdoc"}]},"number":{"patterns":[{"include":"#number-decimal"},{"include":"#number-hex"},{"include":"#number-scientific"}]},"number-decimal":{"match":"\\\\b([0-9_]+(\\\\.[0-9_]+)?)\\\\b","name":"constant.numeric.decimal"},"number-hex":{"match":"\\\\b(0[xX][a-fA-F0-9]+)\\\\b","name":"constant.numeric.hexadecimal"},"number-scientific":{"match":"\\\\b(?:0\\\\.(?:0[0-9]|[0-9][0-9_]?)|[0-9][0-9_]*(?:\\\\.\\\\d{1,2})?)(?:e[+-]?[0-9_]+)?","name":"constant.numeric.scientific"},"operator":{"patterns":[{"include":"#operator-logic"},{"include":"#operator-mapping"},{"include":"#operator-arithmetic"},{"include":"#operator-binary"},{"include":"#operator-assignment"}]},"operator-arithmetic":{"match":"(\\\\+|\\\\-|\\\\/|\\\\*)","name":"keyword.operator.arithmetic"},"operator-assignment":{"match":"(\\\\:?=)","name":"keyword.operator.assignment"},"operator-binary":{"match":"(\\\\^|\\\\&|\\\\||<<|>>)","name":"keyword.operator.binary"},"operator-logic":{"match":"(==|\\\\!=|<(?!<)|<=|>(?!>)|>=|\\\\&\\\\&|\\\\|\\\\||\\\\:(?!=)|\\\\?|\\\\!)","name":"keyword.operator.logic"},"operator-mapping":{"match":"(=>)","name":"keyword.operator.mapping"},"primitive":{"patterns":[{"include":"#number-decimal"},{"include":"#number-hex"},{"include":"#number-scientific"},{"include":"#string"}]},"punctuation":{"patterns":[{"match":";","name":"punctuation.terminator.statement"},{"match":"\\\\.","name":"punctuation.accessor"},{"match":",","name":"punctuation.separator"},{"match":"\\\\{","name":"punctuation.brace.curly.begin"},{"match":"\\\\}","name":"punctuation.brace.curly.end"},{"match":"\\\\[","name":"punctuation.brace.square.begin"},{"match":"\\\\]","name":"punctuation.brace.square.end"},{"match":"\\\\(","name":"punctuation.parameters.begin"},{"match":"\\\\)","name":"punctuation.parameters.end"}]},"string":{"patterns":[{"match":"\\\\\\"(?:\\\\\\\\\\"|[^\\\\\\"])*\\\\\\"","name":"string.quoted.double"},{"match":"\\\\'(?:\\\\\\\\'|[^\\\\'])*\\\\'","name":"string.quoted.single"}]},"type-modifier-access":{"match":"\\\\b(internal|external|private|public)\\\\b","name":"storage.type.modifier.access"},"type-modifier-constant":{"match":"\\\\b(constant)\\\\b","name":"storage.type.modifier.readonly"},"type-modifier-extended-scope":{"match":"\\\\b(pure|view|inherited|indexed|storage|memory|virtual|calldata|override|abstract)\\\\b","name":"storage.type.modifier.extendedscope"},"type-modifier-immutable":{"match":"\\\\b(immutable)\\\\b","name":"storage.type.modifier.readonly"},"type-modifier-payable":{"match":"\\\\b(nonpayable|payable)\\\\b","name":"storage.type.modifier.payable"},"type-primitive":{"patterns":[{"begin":"\\\\b(address|string\\\\d*|bytes\\\\d*|int\\\\d*|uint\\\\d*|bool|hash\\\\d*)\\\\b(?:\\\\[\\\\])(\\\\()","beginCaptures":{"1":{"name":"support.type.primitive"}},"end":"(\\\\))","patterns":[{"include":"#primitive"},{"include":"#punctuation"},{"include":"#global"},{"include":"#variable"}]},{"match":"\\\\b(address|string\\\\d*|bytes\\\\d*|int\\\\d*|uint\\\\d*|bool|hash\\\\d*)\\\\b","name":"support.type.primitive"}]},"variable":{"patterns":[{"captures":{"1":{"name":"variable.parameter.function"}},"match":"\\\\b(\\\\_\\\\w+)\\\\b"},{"captures":{"1":{"name":"support.variable.property"}},"match":"(?:\\\\.)(\\\\w+)\\\\b"},{"captures":{"1":{"name":"variable.parameter.other"}},"match":"\\\\b(\\\\w+)\\\\b"}]}},"scopeName":"source.solidity"}`)),Aoe=[loe]});var ej={};x(ej,{default:()=>uoe});var doe,uoe,tj=_(()=>{Ye();doe=Object.freeze(JSON.parse(`{"displayName":"Closure Templates","fileTypes":["soy"],"injections":{"meta.tag":{"patterns":[{"include":"#body"}]}},"name":"soy","patterns":[{"include":"#alias"},{"include":"#delpackage"},{"include":"#namespace"},{"include":"#template"},{"include":"#comment"}],"repository":{"alias":{"captures":{"1":{"name":"storage.type.soy"},"2":{"name":"entity.name.type.soy"},"3":{"name":"storage.type.soy"},"4":{"name":"entity.name.type.soy"}},"match":"{(alias)\\\\s+([\\\\w\\\\.]+)(?:\\\\s+(as)\\\\s+(\\\\w+))?}"},"attribute":{"captures":{"1":{"name":"storage.other.attribute.soy"},"2":{"name":"string.double.quoted.soy"}},"match":"(\\\\w+)=(\\"(?:\\\\\\\\?.)*?\\")"},"body":{"patterns":[{"include":"#comment"},{"include":"#let"},{"include":"#call"},{"include":"#css"},{"include":"#xid"},{"include":"#condition"},{"include":"#condition-control"},{"include":"#for"},{"include":"#literal"},{"include":"#msg"},{"include":"#special-character"},{"include":"#print"},{"include":"text.html.basic"}]},"boolean":{"match":"true|false","name":"language.constant.boolean.soy"},"call":{"patterns":[{"begin":"{((?:del)?call)\\\\s+([\\\\w\\\\.]+)(?=[^/]*?})","beginCaptures":{"1":{"name":"storage.type.function.soy"},"2":{"name":"entity.name.function.soy"}},"end":"{/(\\\\1)}","endCaptures":{"1":{"name":"storage.type.function.soy"}},"patterns":[{"include":"#comment"},{"include":"#variant"},{"include":"#attribute"},{"include":"#param"}]},{"begin":"{((?:del)?call)(\\\\s+[\\\\w\\\\.]+)","beginCaptures":{"1":{"name":"storage.type.function.soy"},"2":{"name":"entity.name.function.soy"}},"end":"/}","patterns":[{"include":"#variant"},{"include":"#attribute"}]}]},"comment":{"patterns":[{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.documentation.soy","patterns":[{"captures":{"1":{"name":"keyword.parameter.soy"},"2":{"name":"variable.parameter.soy"}},"match":"(@param\\\\??)\\\\s+(\\\\S+)"}]},{"match":"^\\\\s*(\\\\/\\\\/.*)$","name":"comment.line.double-slash.soy"}]},"condition":{"begin":"{/?(if|elseif|switch|case)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.soy"}},"end":"}","patterns":[{"include":"#attribute"},{"include":"#expression"}]},"condition-control":{"captures":{"1":{"name":"keyword.control.soy"}},"match":"{(else|ifempty|default)}"},"css":{"begin":"{(css)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.soy"}},"end":"}","patterns":[{"include":"#expression"}]},"delpackage":{"captures":{"1":{"name":"storage.type.soy"},"2":{"name":"entity.name.type.soy"}},"match":"{(delpackage)\\\\s+([\\\\w\\\\.]+)}"},"expression":{"patterns":[{"include":"#boolean"},{"include":"#number"},{"include":"#function"},{"include":"#null"},{"include":"#string"},{"include":"#variable-ref"},{"include":"#operator"}]},"for":{"begin":"{/?(foreach|for)(?=\\\\s|})","beginCaptures":{"1":{"name":"keyword.control.soy"}},"end":"}","patterns":[{"match":"in","name":"keyword.control.soy"},{"include":"#expression"},{"include":"#body"}]},"function":{"begin":"(\\\\w+)\\\\(","beginCaptures":{"1":{"name":"support.function.soy"}},"end":"\\\\)","patterns":[{"include":"#expression"}]},"let":{"patterns":[{"begin":"{(let)\\\\s+(\\\\$\\\\w+\\\\s*:)","beginCaptures":{"1":{"name":"storage.type.soy"},"2":{"name":"variable.soy"}},"end":"/}","patterns":[{"include":"#comment"},{"include":"#expression"}]},{"begin":"{(let)\\\\s+(\\\\$\\\\w+)","beginCaptures":{"1":{"name":"storage.type.soy"},"2":{"name":"variable.soy"}},"end":"{/(\\\\1)}","endCaptures":{"1":{"name":"storage.type.soy"}},"patterns":[{"include":"#attribute"},{"include":"#body"}]}]},"literal":{"begin":"{(literal)}","beginCaptures":{"1":{"name":"keyword.other.soy"}},"end":"{/(\\\\1)}","endCaptures":{"1":{"name":"keyword.other.soy"}},"name":"meta.literal"},"msg":{"captures":{"1":{"name":"keyword.other.soy"}},"end":"}","match":"{/?(msg|fallbackmsg)","patterns":[{"include":"#attribute"}]},"namespace":{"captures":{"1":{"name":"storage.type.soy"},"2":{"name":"entity.name.type.soy"}},"match":"{(namespace)\\\\s+([\\\\w\\\\.]+)}"},"null":{"match":"null","name":"language.constant.null.soy"},"number":{"match":"-?\\\\.?\\\\d+|\\\\d[\\\\.\\\\d]*","name":"language.constant.numeric"},"operator":{"match":"-|not|\\\\*|\\\\/|%|\\\\+|<=|>=|<|>|==|!=|and|or|\\\\?:|\\\\?|:","name":"keyword.operator.soy"},"param":{"patterns":[{"begin":"{(param)\\\\s+(\\\\w+\\\\s*\\\\:)","beginCaptures":{"1":{"name":"storage.type.soy"},"2":{"name":"variable.parameter.soy"}},"end":"/}","patterns":[{"include":"#expression"}]},{"begin":"{(param)\\\\s+(\\\\w+)","beginCaptures":{"1":{"name":"storage.type.soy"},"2":{"name":"variable.parameter.soy"}},"end":"{/(\\\\1)}","endCaptures":{"1":{"name":"storage.type.soy"}},"patterns":[{"include":"#attribute"},{"include":"#body"}]}]},"print":{"begin":"{(print)?\\\\s*","beginCaptures":{"1":{"name":"keyword.other.soy"}},"end":"}","patterns":[{"captures":{"1":{"name":"support.function.soy"}},"match":"\\\\|\\\\s*(changeNewlineToBr|truncate|bidiSpanWrap|bidiUnicodeWrap)"},{"include":"#expression"}]},"special-character":{"captures":{"1":{"name":"language.support.constant"}},"match":"{(sp|nil|\\\\\\\\r|\\\\\\\\n|\\\\\\\\t|lb|rb)}"},"string":{"begin":"'","end":"'","name":"string.quoted.single.soy","patterns":[{"match":"\\\\\\\\(?:[\\\\\\\\'\\"nrtbf]|u[0-9a-fA-F]{4})","name":"constant.character.escape.soy"}]},"template":{"begin":"{(template|deltemplate)\\\\s([\\\\w\\\\.]+)","beginCaptures":{"1":{"name":"storage.type.soy"},"2":{"name":"entity.name.function.soy"}},"end":"{(/\\\\1)}","endCaptures":{"1":{"name":"storage.type.soy"}},"patterns":[{"begin":"{(@param)(\\\\??)\\\\s+(\\\\S+\\\\s*:)","beginCaptures":{"1":{"name":"keyword.parameter.soy"},"2":{"name":"storage.modifier.keyword.operator.soy"},"3":{"name":"variable.parameter.soy"}},"end":"}","name":"meta.parameter.soy","patterns":[{"include":"#type"}]},{"include":"#variant"},{"include":"#body"},{"include":"#attribute"}]},"type":{"patterns":[{"match":"any|null|\\\\?|string|bool|int|float|number|html|uri|js|css|attributes","name":"support.type.soy"},{"begin":"(list|map)(<)","beginCaptures":{"1":{"name":"support.type.soy"},"2":{"name":"support.type.punctuation.soy"}},"end":"(>)","endCaptures":{"1":{"name":"support.type.modifier.soy"}},"patterns":[{"include":"#type"}]}]},"variable-ref":{"match":"\\\\$[\\\\a-zA-Z_][\\\\w\\\\.]*","name":"variable.other.soy"},"variant":{"begin":"(variant)=(\\")","beginCaptures":{"1":{"name":"storage.other.attribute.soy"},"2":{"name":"string.double.quoted.soy"}},"contentName":"string.double.quoted.soy","end":"(\\")","endCaptures":{"1":{"name":"string.double.quoted.soy"}},"patterns":[{"include":"#expression"}]},"xid":{"begin":"{(xid)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.soy"}},"end":"}","patterns":[{"include":"#expression"}]}},"scopeName":"text.html.soy","embeddedLangs":["html"],"aliases":["closure-templates"]}`)),uoe=[...ce,doe]});var nj={};x(nj,{default:()=>ax});var poe,ax,rx=_(()=>{poe=Object.freeze(JSON.parse(`{"displayName":"Turtle","fileTypes":["turtle","ttl","acl"],"name":"turtle","patterns":[{"include":"#rule-constraint"},{"include":"#iriref"},{"include":"#prefix"},{"include":"#prefixed-name"},{"include":"#comment"},{"include":"#special-predicate"},{"include":"#literals"},{"include":"#language-tag"}],"repository":{"boolean":{"match":"\\\\b(?i:true|false)\\\\b","name":"constant.language.sparql"},"comment":{"match":"#.*$","name":"comment.line.number-sign.turtle"},"integer":{"match":"[+-]?(?:\\\\d+|[0-9]+\\\\.[0-9]*|\\\\.[0-9]+(?:[eE][+-]?\\\\d+)?)","name":"constant.numeric.turtle"},"iriref":{"match":"<[^\\\\x20-\\\\x20<>\\"{}|^\`\\\\\\\\]*>","name":"entity.name.type.iriref.turtle"},"language-tag":{"captures":{"1":{"name":"entity.name.class.turtle"}},"match":"@(\\\\w+)","name":"meta.string-literal-language-tag.turtle"},"literals":{"patterns":[{"include":"#string"},{"include":"#numeric"},{"include":"#boolean"}]},"numeric":{"patterns":[{"include":"#integer"}]},"prefix":{"match":"(?i:@?base|@?prefix)\\\\s","name":"keyword.operator.turtle"},"prefixed-name":{"captures":{"1":{"name":"storage.type.PNAME_NS.turtle"},"2":{"name":"support.variable.PN_LOCAL.turtle"}},"match":"(\\\\w*:)(\\\\w*)","name":"constant.complex.turtle"},"rule-constraint":{"begin":"(rule:content) (\\"\\"\\")","beginCaptures":{"1":{"patterns":[{"include":"#prefixed-name"}]},"2":{"name":"string.quoted.triple.turtle"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"string.quoted.triple.turtle"}},"name":"meta.rule-constraint.turtle","patterns":[{"include":"source.srs"}]},"single-dquote-string-literal":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.turtle"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.turtle"}},"name":"string.quoted.double.turtle","patterns":[{"include":"#string-character-escape"}]},"single-squote-string-literal":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.turtle"}},"end":"'","endCaptures":{"1":{"name":"punctuation.definition.string.end.turtle"},"2":{"name":"invalid.illegal.newline.turtle"}},"name":"string.quoted.single.turtle","patterns":[{"include":"#string-character-escape"}]},"special-predicate":{"captures":{"1":{"name":"keyword.control.turtle"}},"match":"\\\\s(a)\\\\s","name":"meta.specialPredicate.turtle"},"string":{"patterns":[{"include":"#triple-squote-string-literal"},{"include":"#triple-dquote-string-literal"},{"include":"#single-squote-string-literal"},{"include":"#single-dquote-string-literal"},{"include":"#triple-tick-string-literal"}]},"string-character-escape":{"match":"\\\\\\\\(x\\\\h{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.turtle"},"triple-dquote-string-literal":{"begin":"\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.turtle"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.turtle"}},"name":"string.quoted.triple.turtle","patterns":[{"include":"#string-character-escape"}]},"triple-squote-string-literal":{"begin":"'''","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.turtle"}},"end":"'''","endCaptures":{"0":{"name":"punctuation.definition.string.end.turtle"}},"name":"string.quoted.triple.turtle","patterns":[{"include":"#string-character-escape"}]},"triple-tick-string-literal":{"begin":"\`\`\`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.turtle"}},"end":"\`\`\`","endCaptures":{"0":{"name":"punctuation.definition.string.end.turtle"}},"name":"string.quoted.triple.turtle","patterns":[{"include":"#string-character-escape"}]}},"scopeName":"source.turtle"}`)),ax=[poe]});var aj={};x(aj,{default:()=>goe});var moe,goe,rj=_(()=>{rx();moe=Object.freeze(JSON.parse('{"displayName":"SPARQL","fileTypes":["rq","sparql","sq"],"name":"sparql","patterns":[{"include":"source.turtle"},{"include":"#query-keyword-operators"},{"include":"#functions"},{"include":"#variables"},{"include":"#expression-operators"}],"repository":{"expression-operators":{"match":"(?:\\\\|\\\\||&&|=|!=|<|>|<=|>=|\\\\*|/|\\\\+|-|\\\\||\\\\^|\\\\?|\\\\!)","name":"support.class.sparql"},"functions":{"match":"\\\\b(?i:concat|regex|asc|desc|bound|isiri|isuri|isblank|isliteral|isnumeric|str|lang|datatype|sameterm|langmatches|avg|count|group_concat|separator|max|min|sample|sum|iri|uri|bnode|strdt|uuid|struuid|strlang|strlen|substr|ucase|lcase|strstarts|strends|contains|strbefore|strafter|encode_for_uri|replace|abs|round|ceil|floor|rand|now|year|month|day|hours|minutes|seconds|timezone|tz|md5|sha1|sha256|sha384|sha512|coalesce|if)\\\\b","name":"support.function.sparql"},"query-keyword-operators":{"match":"\\\\b(?i:define|select|distinct|reduced|from|named|construct|ask|describe|where|graph|having|bind|as|filter|optional|union|order|by|group|limit|offset|values|insert data|delete data|with|delete|insert|clear|silent|default|all|create|drop|copy|move|add|to|using|service|not exists|exists|not in|in|minus|load)\\\\b","name":"keyword.control.sparql"},"variables":{"match":"(?<!\\\\w)[?$]\\\\w+","name":"constant.variable.sparql.turtle"}},"scopeName":"source.sparql","embeddedLangs":["turtle"]}')),goe=[...ax,moe]});var ij={};x(ij,{default:()=>boe});var foe,boe,oj=_(()=>{foe=Object.freeze(JSON.parse('{"displayName":"Splunk Query Language","fileTypes":["splunk","spl"],"name":"splunk","patterns":[{"comment":"Splunk Built-in functions","match":"(?<=(\\\\||\\\\[))([\\\\s]*)\\\\b(abstract|accum|addcoltotals|addinfo|addtotals|analyzefields|anomalies|anomalousvalue|append|appendcols|appendpipe|arules|associate|audit|autoregress|bucket|bucketdir|chart|cluster|collect|concurrency|contingency|convert|correlate|crawl|datamodel|dbinspect|dbxquery|dbxlookup|dedup|delete|delta|diff|dispatch|erex|eval|eventcount|eventstats|extract|fieldformat|fields|fieldsummary|file|filldown|fillnull|findtypes|folderize|foreach|format|from|gauge|gentimes|geostats|head|highlight|history|input|inputcsv|inputlookup|iplocation|join|kmeans|kvform|loadjob|localize|localop|lookup|makecontinuous|makemv|makeresults|map|metadata|metasearch|multikv|multisearch|mvcombine|mvexpand|nomv|outlier|outputcsv|outputlookup|outputtext|overlap|pivot|predict|rangemap|rare|regex|relevancy|reltime|rename|replace|rest|return|reverse|rex|rtorder|run|savedsearch|script|scrub|search|searchtxn|selfjoin|sendemail|set|setfields|sichart|sirare|sistats|sitimechart|sitop|sort|spath|stats|strcat|streamstats|table|tags|tail|timechart|top|transaction|transpose|trendline|tscollect|tstats|typeahead|typelearner|typer|uniq|untable|where|x11|xmlkv|xmlunescape|xpath|xyseries)\\\\b(?=[\\\\s])","name":"support.class.splunk_search"},{"comment":"Splunk Eval functions","match":"\\\\b(abs|acos|acosh|asin|asinh|atan|atan2|atanh|case|cidrmatch|ceiling|coalesce|commands|cos|cosh|exact|exp|floor|hypot|if|in|isbool|isint|isnotnull|isnull|isnum|isstr|len|like|ln|log|lower|ltrim|match|max|md5|min|mvappend|mvcount|mvdedup|mvfilter|mvfind|mvindex|mvjoin|mvrange|mvsort|mvzip|now|null|nullif|pi|pow|printf|random|relative_time|replace|round|rtrim|searchmatch|sha1|sha256|sha512|sigfig|sin|sinh|spath|split|sqrt|strftime|strptime|substr|tan|tanh|time|tonumber|tostring|trim|typeof|upper|urldecode|validate)(?=\\\\()\\\\b","name":"support.function.splunk_search"},{"comment":"Splunk Transforming functions","match":"\\\\b(avg|count|distinct_count|estdc|estdc_error|eval|max|mean|median|min|mode|percentile|range|stdev|stdevp|sum|sumsq|var|varp|first|last|list|values|earliest|earliest_time|latest|latest_time|per_day|per_hour|per_minute|per_second|rate)\\\\b","name":"support.function.splunk_search"},{"comment":"Splunk Macro Names","match":"(?<=\\\\`)[\\\\w]+(?=\\\\(|\\\\`)","name":"entity.name.function.splunk_search"},{"comment":"Digits","match":"\\\\b(\\\\d+)\\\\b","name":"constant.numeric.splunk_search"},{"comment":"Escape Characters","match":"(\\\\\\\\\\\\\\\\|\\\\\\\\\\\\||\\\\\\\\\\\\*|\\\\\\\\\\\\=)","name":"contant.character.escape.splunk_search"},{"comment":"Splunk Operators","match":"(\\\\|,)","name":"keyword.operator.splunk_search"},{"comment":"Splunk Language Constants","match":"(?i)\\\\b(as|by|or|and|over|where|output|outputnew)\\\\b|(?-i)\\\\b(NOT|true|false)\\\\b","name":"constant.language.splunk_search"},{"comment":"Splunk Macro Parameters","match":"(?<=\\\\(|,|[^=]\\\\s{300})([^\\\\(\\\\)\\\\\\",=]+)(?=\\\\)|,)","name":"variable.parameter.splunk_search"},{"comment":"Splunk Variables","match":"([\\\\w\\\\.]+)(\\\\[\\\\]|\\\\{\\\\})?([\\\\s]*)(?=\\\\=)","name":"variable.splunk_search"},{"comment":"Comparison or assignment","match":"=","name":"keyword.operator.splunk_search"},{"begin":"(?<!\\\\\\\\)\\"","end":"(?<!\\\\\\\\)\\"","name":"string.quoted.double.splunk_search"},{"begin":"(?<!\\\\\\\\)\'","end":"(?<!\\\\\\\\)\'","name":"string.quoted.single.splunk_search"},{"begin":"query=\\\\\\"","end":"(?<!\\\\\\\\)\\"","name":"meta.embedded.block.sql"},{"begin":"(?<!\\\\\\\\)```","end":"(?<!\\\\\\\\)```","name":"comment.block.splunk_search"},{"begin":"`comment\\\\(","end":"\\\\)`","name":"comment.block.splunk_search"}],"scopeName":"source.splunk_search","aliases":["spl"]}')),boe=[foe]});var sj={};x(sj,{default:()=>yoe});var hoe,yoe,cj=_(()=>{hoe=Object.freeze(JSON.parse('{"displayName":"SSH Config","fileTypes":["ssh_config",".ssh/config","sshd_config"],"name":"ssh-config","patterns":[{"match":"\\\\b(A(cceptEnv|dd(ressFamily|KeysToAgent)|llow(AgentForwarding|Groups|StreamLocalForwarding|TcpForwarding|Users)|uth(enticationMethods|orized((Keys(Command(User)?|File)|Principals(Command(User)?|File)))))|B(anner|atchMode|ind(Address|Interface))|C(anonical(Domains|ize(FallbackLocal|Hostname|MaxDots|PermittedCNAMEs))|ertificateFile|hallengeResponseAuthentication|heckHostIP|hrootDirectory|iphers?|learAllForwardings|ientAlive(CountMax|Interval)|ompression(Level)?|onnect(Timeout|ionAttempts)|ontrolMaster|ontrolPath|ontrolPersist)|D(eny(Groups|Users)|isableForwarding|ynamicForward)|E(nableSSHKeysign|scapeChar|xitOnForwardFailure|xposeAuthInfo)|F(ingerprintHash|orceCommand|orward(Agent|X11(Timeout|Trusted)?))|G(atewayPorts|SSAPI(Authentication|CleanupCredentials|ClientIdentity|DelegateCredentials|KeyExchange|RenewalForcesRekey|ServerIdentity|StrictAcceptorCheck|TrustDns)|atewayPorts|lobalKnownHostsFile)|H(ashKnownHosts|ost(based(AcceptedKeyTypes|Authentication|KeyTypes|UsesNameFromPacketOnly)|Certificate|Key(Agent|Algorithms|Alias)?|Name))|I(dentit(iesOnly|y(Agent|File))|gnore(Rhosts|Unknown|UserKnownHosts)|nclude|PQoS)|K(bdInteractive(Authentication|Devices)|erberos(Authentication|GetAFSToken|OrLocalPasswd|TicketCleanup)|exAlgorithms)|L(istenAddress|ocal(Command|Forward)|oginGraceTime|ogLevel)|M(ACs|atch|ax(AuthTries|Sessions|Startups))|N(oHostAuthenticationForLocalhost|umberOfPasswordPrompts)|P(KCS11Provider|asswordAuthentication|ermit(EmptyPasswords|LocalCommand|Open|RootLogin|TTY|Tunnel|User(Environment|RC))|idFile|ort|referredAuthentications|rint(LastLog|Motd)|rotocol|roxy(Command|Jump|UseFdpass)|ubkey(AcceptedKeyTypes|Authentication))|R(Domain|SAAuthentication|ekeyLimit|emote(Command|Forward)|equestTTY|evoked(HostKeys|Keys)|hostsRSAAuthentication)|S(endEnv|erverAlive(CountMax|Interval)|treamLocalBind(Mask|Unlink)|trict(HostKeyChecking|Modes)|ubsystem|yslogFacility)|T(CPKeepAlive|rustedUserCAKeys|unnel(Device)?)|U(pdateHostKeys|se(BlacklistedKeys|DNS|Keychain|PAM|PrivilegedPort|r(KnownHostsFile)?))|V(erifyHostKeyDNS|ersionAddendum|isualHostKey)|X(11(DisplayOffset|Forwarding|UseLocalhost)|AuthLocation))\\\\b","name":"keyword.other.ssh-config"},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ssh-config"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.ssh-config"}},"end":"\\\\n","name":"comment.line.number-sign.ssh-config"}]},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ssh-config"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.ssh-config"}},"end":"\\\\n","name":"comment.line.double-slash.ssh-config"}]},{"captures":{"1":{"name":"storage.type.ssh-config"},"2":{"name":"entity.name.section.ssh-config"},"3":{"name":"meta.toc-list.ssh-config"}},"match":"(?:^| |\\\\t)(Host)\\\\s+((.*))$"},{"match":"\\\\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\b","name":"constant.numeric.ssh-config"},{"match":"\\\\b[0-9]+\\\\b","name":"constant.numeric.ssh-config"},{"match":"\\\\b(yes|no)\\\\b","name":"constant.language.ssh-config"},{"match":"\\\\b[A-Z_]+\\\\b","name":"constant.language.ssh-config"}],"scopeName":"source.ssh-config"}')),yoe=[hoe]});var lj={};x(lj,{default:()=>koe});var woe,koe,Aj=_(()=>{Nn();woe=Object.freeze(JSON.parse(`{"displayName":"Stata","fileTypes":["do","ado","mata"],"foldingStartMarker":"\\\\{\\\\s*$","foldingStopMarker":"^\\\\s*\\\\}","name":"stata","patterns":[{"include":"#ascii-regex-functions"},{"include":"#unicode-regex-functions"},{"include":"#constants"},{"include":"#functions"},{"include":"#comments"},{"include":"#subscripts"},{"include":"#operators"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#builtin_variables"},{"include":"#macro-commands"},{"comment":"keywords that delimit flow conditionals","match":"\\\\b(if|else if|else)\\\\b","name":"keyword.control.conditional.stata"},{"captures":{"1":{"name":"storage.type.scalar.stata"}},"match":"^\\\\s*(sca(lar|la|l)?(\\\\s+de(fine|fin|fi|f)?)?)\\\\s+(?!(drop|dir?|l(ist|is|i)?)\\\\s+)"},{"begin":"\\\\b(mer(ge|g)?)\\\\s+(1|m|n)(:)(1|m|n)","beginCaptures":{"1":{"name":"keyword.control.flow.stata"},"3":{"patterns":[{"include":"#constants"},{"match":"m|n","name":""}]},"4":{"name":"punctuation.separator.key-value"},"5":{"patterns":[{"include":"#constants"},{"match":"m|n","name":""}]}},"end":"using","patterns":[{"include":"#builtin_variables"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#comments"}]},{"captures":{"1":{"name":"keyword.control.flow.stata"},"2":{"patterns":[{"include":"#macro-local-identifiers"},{"include":"#macro-local"},{"include":"#macro-global"}]},"3":{"name":"keyword.control.flow.stata"}},"match":"\\\\b(foreach)\\\\s+((?!in|of).+)\\\\s+(in|of var(list|lis|li|l)?|of new(list|lis|li|l)?|of num(list|lis|li|l)?)\\\\b"},{"begin":"\\\\b(foreach)\\\\s+((?!in|of).+)\\\\s+(of loc(al|a)?|of glo(bal|ba|b)?)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.flow.stata"},"2":{"patterns":[{"include":"#macro-local-identifiers"},{"include":"#macro-local"},{"include":"#macro-global"}]},"3":{"name":"keyword.control.flow.stata"}},"end":"(?=\\\\s*\\\\{)","patterns":[{"include":"#macro-local-identifiers"},{"include":"#macro-local"},{"include":"#macro-global"}]},{"begin":"\\\\b(forvalues|forvalue|forvalu|forval|forva|forv)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.flow.stata"}},"end":"\\\\s*(=)\\\\s*([^\\\\{]+)\\\\s*|(?=\\\\n)","endCaptures":{"1":{"name":"keyword.operator.assignment.stata"},"2":{"patterns":[{"include":"#constants"},{"include":"#operators"},{"include":"#macro-local"},{"include":"#macro-global"}]}},"patterns":[{"include":"#macro-local-identifiers"},{"include":"#macro-local"},{"include":"#macro-global"}]},{"comment":"keywords that delimit loops","match":"\\\\b(while|continue)\\\\b","name":"keyword.control.flow.stata"},{"captures":{"1":{"name":"keyword.other.stata"}},"comment":"keywords that haven't fit into other groups (yet).","match":"\\\\b(as|ass|asse|asser|assert)\\\\b"},{"comment":"prefixes that require a colon","match":"\\\\b(by(sort|sor|so|s)?|statsby|rolling|bootstrap|jackknife|permute|simulate|svy|mi est(imate|imat|ima|im|i)?|nestreg|stepwise|xi|fp|mfp|vers(ion|io|i)?)\\\\b","name":"storage.type.function.stata"},{"comment":"prefixes that don't need a colon","match":"\\\\b(qui(etly|etl|et|e)?|n(oisily|oisil|oisi|ois|oi|o)?|cap(ture|tur|tu|t)?)\\\\b:?","name":"keyword.control.flow.stata"},{"captures":{"1":{"name":"storage.type.function.stata"},"3":{"name":"storage.type.function.stata"},"7":{"name":"entity.name.function.stata"}},"match":"\\\\s*(pr(ogram|ogra|ogr|og|o)?)\\\\s+((di(r)?|drop|l(ist|is|i)?)\\\\s+)([\\\\w&&[^0-9]]\\\\w{0,31})"},{"begin":"^\\\\s*(pr(ogram|ogra|ogr|og|o)?)\\\\s+(de(fine|fin|fi|f)?\\\\s+)?","beginCaptures":{"1":{"name":"storage.type.function.stata"},"3":{"name":"storage.type.function.stata"}},"end":"(?=,|\\\\n|/)","patterns":[{"include":"#macro-local"},{"include":"#macro-global"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"entity.name.function.stata"},{"match":"[^A-za-z_0-9,\\\\n/ ]+","name":"invalid.illegal.name.stata"}]},{"captures":{"1":"keyword.functions.data.stata.test"},"match":"\\\\b(form(at|a)?)\\\\s*([\\\\w&&[^0-9]]\\\\w{0,31})*\\\\s*(%)(-)?(0)?([0-9]+)(.)([0-9]+)(e|f|g)(c)?"},{"include":"#braces-with-error"},{"begin":"(?=syntax)","end":"\\\\n","patterns":[{"begin":"syntax","beginCaptures":{"0":{"name":"keyword.functions.program.stata"}},"comment":"color before the comma","end":"(?=,|\\\\n)","patterns":[{"begin":"///","end":"\\\\n","name":"comment.block.stata"},{"match":"\\\\[","name":"punctuation.definition.parameters.begin.stata"},{"match":"\\\\]","name":"punctuation.definition.parameters.end.stata"},{"match":"\\\\b(varlist|varname|newvarlist|newvarname|namelist|name|anything)\\\\b","name":"entity.name.type.class.stata"},{"captures":{"2":{"name":"entity.name.type.class.stata"},"3":{"name":"keyword.operator.arithmetic.stata"}},"match":"\\\\b((if|in|using|fweight|aweight|pweight|iweight))\\\\b(/)?"},{"captures":{"1":{"name":"keyword.operator.arithmetic.stata"},"2":{"name":"entity.name.type.class.stata"}},"match":"(/)?(exp)"},{"include":"#constants"},{"include":"#operators"},{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#builtin_variables"}]},{"begin":",","beginCaptures":{"0":{"name":"punctuation.definition.variable.begin.stata"}},"comment":"things to color after the comma","end":"(?=\\\\n)","patterns":[{"begin":"///","end":"\\\\n","name":"comment.block.stata"},{"begin":"([^\\\\s\\\\[\\\\]]+)(\\\\()","beginCaptures":{"1":{"comment":"these are the names that become macros","patterns":[{"include":"#macro-local-identifiers"},{"include":"#macro-local"},{"include":"#macro-global"}]},"2":{"name":"keyword.operator.parentheses.stata"}},"comment":"color options with parentheses","end":"\\\\)","endCaptures":{"0":{"name":"keyword.operator.parentheses.stata"}},"patterns":[{"captures":{"0":{"name":"support.type.stata"}},"comment":"the first word is often a type","match":"\\\\b(integer|intege|integ|inte|int|real|string|strin|stri|str)\\\\b"},{"include":"#constants"},{"include":"#operators"},{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#builtin_variables"}]},{"include":"#macro-local-identifiers"},{"include":"#constants"},{"include":"#operators"},{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#builtin_variables"}]}]},{"captures":{"1":{"name":"keyword.functions.data.stata"}},"comment":"one-word commands","match":"\\\\b(sa(v|ve)|saveold|destring|tostring|u(se|s)?|note(s)?|form(at|a)?)\\\\b"},{"comment":"programming commands","match":"\\\\b(exit|end)\\\\b","name":"keyword.functions.data.stata"},{"captures":{"1":{"name":"keyword.functions.data.stata"},"2":{"patterns":[{"include":"#macro-local"}]},"4":{"name":"invalid.illegal.name.stata"},"5":{"name":"keyword.operator.assignment.stata"}},"match":"\\\\b(replace)\\\\s+([^=]+)\\\\s*((==)|(=))"},{"captures":{"1":{"name":"keyword.functions.data.stata"},"3":{"name":"support.type.stata"},"5":{"patterns":[{"include":"#reserved-names"},{"include":"#macro-local"}]},"7":{"name":"invalid.illegal.name.stata"},"8":{"name":"keyword.operator.assignment.stata"}},"match":"\\\\b(g(enerate|enerat|enera|ener|ene|en|e)?|egen)\\\\s+((byte|int|long|float|double|str[1-9]?[0-9]?[0-9]?[0-9]?|strL)\\\\s+)?([^=\\\\s]+)\\\\s*((==)|(=))"},{"captures":{"1":{"name":"keyword.functions.data.stata"},"3":{"name":"support.type.stata"}},"match":"\\\\b(set ty(pe|p)?)\\\\s+((byte|int|long|float|double|str[1-9]?[0-9]?[0-9]?[0-9]?|strL)?\\\\s+)\\\\b"},{"captures":{"1":{"name":"keyword.functions.data.stata"},"3":{"name":"keyword.functions.data.stata"},"6":{"name":"punctuation.definition.string.begin.stata"},"7":{"patterns":[{"include":"#string-compound"},{"include":"#macro-local-escaped"},{"include":"#macro-global-escaped"},{"include":"#macro-local"},{"include":"#macro-global"},{"match":"[^\`\\\\$]{81,}","name":"invalid.illegal.name.stata"},{"match":".","name":"string.quoted.double.compound.stata"}]},"8":{"name":"punctuation.definition.string.begin.stata"}},"match":"\\\\b(la(bel|be|b)?)\\\\s+(var(iable|iabl|iab|ia|i)?)\\\\s+([\\\\w&&[^0-9]]\\\\w{0,31})\\\\s+(\`\\")(.+)(\\"')"},{"captures":{"1":{"name":"keyword.functions.data.stata"},"3":{"name":"keyword.functions.data.stata"},"6":{"name":"punctuation.definition.string.begin.stata"},"7":{"patterns":[{"include":"#macro-local-escaped"},{"include":"#macro-global-escaped"},{"include":"#macro-local"},{"include":"#macro-global"},{"match":"[^\`\\\\$]{81,}","name":"invalid.illegal.name.stata"},{"match":".","name":"string.quoted.double.stata"}]},"8":{"name":"punctuation.definition.string.begin.stata"}},"match":"\\\\b(la(bel|be|b)?)\\\\s+(var(iable|iabl|iab|ia|i)?)\\\\s+([\\\\w&&[^0-9]]\\\\w{0,31})\\\\s+(\\")(.+)(\\")"},{"captures":{"1":{"name":"keyword.functions.data.stata"},"3":{"name":"keyword.functions.data.stata"}},"match":"\\\\b(la(bel|be|b)?)\\\\s+(da(ta|t)?|var(iable|iabl|iab|ia|i)?|de(f|fi|fin|fine)?|val(ues|ue|u)?|di(r)?|l(ist|is|i)?|copy|drop|save|lang(uage|uag|ua|u)?)\\\\b"},{"begin":"\\\\b(drop|keep)\\\\b(?!\\\\s+(if|in)\\\\b)","beginCaptures":{"1":{"name":"keyword.functions.data.stata"}},"end":"\\\\n","patterns":[{"match":"\\\\b(if|in)\\\\b","name":"invalid.illegal.name.stata"},{"include":"#comments"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#operators"}]},{"captures":{"1":{"name":"keyword.functions.data.stata"},"2":{"name":"keyword.functions.data.stata"}},"match":"\\\\b(drop|keep)\\\\s+(if|in)\\\\b"},{"begin":"^\\\\s*mata:?\\\\s*$","comment":"won't match single-line Mata statements","end":"^\\\\s*end\\\\s*$\\\\n?","name":"meta.embedded.block.mata","patterns":[{"match":"(?<![^$\\\\s])(version|pragma|if|else|for|while|do|break|continue|goto|return)(?=\\\\s)","name":"keyword.control.mata"},{"captures":{"1":{"name":"storage.type.eltype.mata"},"4":{"name":"storage.type.orgtype.mata"}},"match":"\\\\b(transmorphic|string|numeric|real|complex|(pointer(\\\\([^)]+\\\\))?))\\\\s+(matrix|vector|rowvector|colvector|scalar)\\\\b","name":"storage.type.mata"},{"comment":"need to end with whitespace character here or last group doesn't match","match":"\\\\b(transmorphic|string|numeric|real|complex|(pointer(\\\\([^)]+\\\\))?))\\\\s","name":"storage.type.eltype.mata"},{"match":"\\\\b(matrix|vector|rowvector|colvector|scalar)\\\\b","name":"storage.type.orgtype.mata"},{"match":"\\\\!|\\\\+\\\\+|\\\\-\\\\-|\\\\&|\\\\'|\\\\?|\\\\\\\\|\\\\:\\\\:|\\\\,|\\\\.\\\\.|\\\\||\\\\=|\\\\=\\\\=|\\\\>\\\\=|\\\\<\\\\=|\\\\<|\\\\>|\\\\!\\\\=|\\\\#|\\\\+|\\\\-|\\\\*|\\\\^|\\\\/","name":"keyword.operator.mata"},{"include":"$self"}]},{"begin":"\\\\b(odbc)\\\\b","beginCaptures":{"0":{"name":"keyword.control.flow.stata"}},"end":"\\\\n","patterns":[{"begin":"///","end":"\\\\n","name":"comment.block.stata"},{"begin":"(exec?)(\\\\(\\")","beginCaptures":{"1":{"name":"support.function.builtin.stata"},"2":{"name":"punctuation.definition.parameters.begin.stata"}},"end":"\\"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.stata"}},"patterns":[{"include":"source.sql"}]},{"include":"$self"}]},{"include":"#commands-other"}],"repository":{"ascii-regex-character-class":{"patterns":[{"match":"\\\\\\\\[\\\\*\\\\+\\\\?\\\\-\\\\.\\\\^\\\\$\\\\|\\\\[\\\\]\\\\(\\\\)\\\\\\\\]","name":"constant.character.escape.backslash.stata"},{"match":"\\\\.","name":"constant.character.character-class.stata"},{"match":"\\\\\\\\.","name":"illegal.invalid.character-class.stata"},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.stata"},"2":{"name":"keyword.operator.negation.stata"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.stata"}},"name":"constant.other.character-class.set.stata","patterns":[{"include":"#ascii-regex-character-class"},{"captures":{"2":{"name":"constant.character.escape.backslash.stata"},"4":{"name":"constant.character.escape.backslash.stata"}},"match":"((\\\\\\\\.)|.)\\\\-((\\\\\\\\.)|[^\\\\]])","name":"constant.other.character-class.range.stata"}]}]},"ascii-regex-functions":{"patterns":[{"captures":{"1":{"name":"support.function.builtin.stata"},"2":{"name":"punctuation.definition.parameters.begin.stata"},"3":{"patterns":[{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments-triple-slash"}]},"4":{"name":"punctuation.definition.variable.begin.stata"},"5":{"name":"punctuation.definition.string.begin.stata"},"6":{"patterns":[{"include":"#ascii-regex-internals"}]},"7":{"name":"punctuation.definition.string.end.stata"},"8":{"name":"invalid.illegal.punctuation.stata"},"9":{"name":"punctuation.definition.parameters.end.stata"}},"comment":"color regexm with regular quotes i.e. \\" ","match":"\\\\b(regexm)(\\\\()([^,]+)(,)\\\\s*(\\")([^\\"]+)(\\"(')?)\\\\s*(\\\\))"},{"captures":{"1":{"name":"support.function.builtin.stata"},"2":{"name":"punctuation.definition.parameters.begin.stata"},"3":{"patterns":[{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments-triple-slash"}]},"4":{"name":"punctuation.definition.variable.begin.stata"},"5":{"name":"punctuation.definition.string.begin.stata"},"6":{"patterns":[{"include":"#ascii-regex-internals"}]},"7":{"name":"punctuation.definition.string.end.stata"},"8":{"name":"punctuation.definition.parameters.end.stata"}},"comment":"color regexm with compound quotes","match":"\\\\b(regexm)(\\\\()([^,]+)(,)\\\\s*(\`\\")([^\\"]+)(\\"')\\\\s*(\\\\))"},{"captures":{"1":{"name":"support.function.builtin.stata"},"2":{"name":"punctuation.definition.parameters.begin.stata"},"3":{"patterns":[{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments"}]},"4":{"name":"punctuation.definition.variable.begin.stata"},"5":{"name":"punctuation.definition.string.begin.stata"},"6":{"patterns":[{"include":"#ascii-regex-internals"}]},"7":{"name":"punctuation.definition.string.end.stata"},"8":{"name":"invalid.illegal.punctuation.stata"},"9":{"patterns":[{"match":",","name":"punctuation.definition.variable.begin.stata"},{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments-triple-slash"}]},"10":{"name":"punctuation.definition.parameters.end.stata"}},"comment":"color regexr with regular quotes i.e. \\" ","match":"\\\\b(regexr)(\\\\()([^,]+)(,)\\\\s*(\\")([^\\"]+)(\\"(')?)\\\\s*([^\\\\)]*)(\\\\))"},{"captures":{"1":{"name":"support.function.builtin.stata"},"2":{"name":"punctuation.definition.parameters.begin.stata"},"3":{"patterns":[{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments"}]},"4":{"name":"punctuation.definition.variable.begin.stata"},"5":{"name":"punctuation.definition.string.begin.stata"},"6":{"patterns":[{"include":"#ascii-regex-internals"}]},"7":{"name":"punctuation.definition.string.end.stata"},"8":{"patterns":[{"match":",","name":"punctuation.definition.variable.begin.stata"},{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments-triple-slash"}]},"9":{"name":"punctuation.definition.parameters.end.stata"}},"comment":"color regexr with compound quotes i.e. \`\\"text\\"' ","match":"\\\\b(regexr)(\\\\()([^,]+)(,)\\\\s*(\`\\")([^\\"]+)(\\"')\\\\s*([^\\\\)]*)(\\\\))"}]},"ascii-regex-internals":{"patterns":[{"match":"\\\\^","name":"keyword.control.anchor.stata"},{"comment":"matched when not a global, but must be ascii","match":"\\\\$(?![a-zA-Z_\\\\{])","name":"keyword.control.anchor.stata"},{"match":"[\\\\?\\\\+\\\\*]","name":"keyword.control.quantifier.stata"},{"match":"\\\\|","name":"keyword.control.or.stata"},{"begin":"(\\\\()(?=\\\\?|\\\\*|\\\\+)","beginCaptures":{"1":{"name":"keyword.operator.group.stata"}},"contentName":"invalid.illegal.regexm.stata","end":"\\\\)","endCaptures":{"0":{"name":"keyword.operator.group.stata"}}},{"begin":"(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.group.stata"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.operator.group.stata"}},"patterns":[{"include":"#ascii-regex-internals"}]},{"include":"#ascii-regex-character-class"},{"include":"#macro-local"},{"include":"#macro-global"},{"comment":"NOTE: Error if I have .+ No idea why but it works fine it seems with just .","match":".","name":"string.quoted.stata"}]},"braces-with-error":{"patterns":[{"begin":"(\\\\{)\\\\s*([^\\\\n]*)(?=\\\\n)","beginCaptures":{"1":{"name":"keyword.control.block.begin.stata"},"2":{"patterns":[{"include":"#comments"},{"match":"[^\\\\n]+","name":"illegal.invalid.name.stata"}]}},"comment":"correct with nothing else on the line but whitespace; before and after; before; after; correct","end":"^\\\\s*(\\\\})\\\\s*$|^\\\\s*([^\\\\*\\"\\\\}]+)\\\\s+(\\\\})\\\\s*([^\\\\*\\"\\\\}/\\\\n]+)|^\\\\s*([^\\"\\\\*\\\\}]+)\\\\s+(\\\\})|\\\\s*(\\\\})\\\\s*([^\\"\\\\*\\\\}/\\\\n]+)|(\\\\})$","endCaptures":{"1":{"name":"keyword.control.block.end.stata"},"2":{"name":"invalid.illegal.name.stata"},"3":{"name":"keyword.control.block.end.stata"},"4":{"name":"invalid.illegal.name.stata"},"5":{"name":"invalid.illegal.name.stata"},"6":{"name":"keyword.control.block.end.stata"},"7":{"name":"keyword.control.block.end.stata"},"8":{"name":"invalid.illegal.name.stata"},"9":{"name":"keyword.control.block.end.stata"}},"patterns":[{"include":"$self"}]}]},"braces-without-error":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"keyword.control.block.begin.stata"}},"end":"\\\\}","endCaptures":{"0":{"name":"keyword.control.block.end.stata"}}}]},"builtin_types":{"patterns":[{"match":"\\\\b(byte|int|long|float|double|str[1-9]?[0-9]?[0-9]?[0-9]?|strL)\\\\b","name":"support.type.stata"}]},"builtin_variables":{"patterns":[{"match":"\\\\b(_b|_coef|_cons|_n|_N|_rc|_se)\\\\b","name":"variable.object.stata"}]},"commands-other":{"patterns":[{"comment":"Add on commands","match":"\\\\b(reghdfe|ivreghdfe|ivreg2|outreg|gcollapse|gcontract|gegen|gisid|glevelsof|gquantiles)\\\\b","name":"keyword.control.flow.stata"},{"comment":"Built in commands","match":"\\\\b(about|ac|acprplot|ado|adopath|adoupdate|alpha|ameans|an|ano|anov|anova|anova_terms|anovadef|aorder|ap|app|appe|appen|append|arch|arch_dr|arch_estat|arch_p|archlm|areg|areg_p|args|arima|arima_dr|arima_estat|arima_p|asmprobit|asmprobit_estat|asmprobit_lf|asmprobit_mfx__dlg|asmprobit_p|avplot|avplots|bcskew0|bgodfrey|binreg|bip0_lf|biplot|bipp_lf|bipr_lf|bipr_p|biprobit|bitest|bitesti|bitowt|blogit|bmemsize|boot|bootsamp|boxco_l|boxco_p|boxcox|boxcox_p|bprobit|br|break|brier|bro|brow|brows|browse|brr|brrstat|bs|bsampl_w|bsample|bsqreg|bstat|bstrap|ca|ca_estat|ca_p|cabiplot|camat|canon|canon_estat|canon_p|caprojection|cat|cc|cchart|cci|cd|censobs_table|centile|cf|char|chdir|checkdlgfiles|checkestimationsample|checkhlpfiles|checksum|chelp|ci|cii|cl|class|classutil|clear|cli|clis|clist|clog|clog_lf|clog_p|clogi|clogi_sw|clogit|clogit_lf|clogit_p|clogitp|clogl_sw|cloglog|clonevar|clslistarray|cluster|cluster_measures|cluster_stop|cluster_tree|cluster_tree_8|clustermat|cmdlog|cnr|cnre|cnreg|cnreg_p|cnreg_sw|cnsreg|codebook|collaps4|collapse|colormult_nb|colormult_nw|compare|compress|conf|confi|confir|confirm|conren|cons|const|constr|constra|constrai|constrain|constraint|contract|copy|copyright|copysource|cor|corc|corr|corr2data|corr_anti|corr_kmo|corr_smc|corre|correl|correla|correlat|correlate|corrgram|cou|coun|count|cprplot|crc|cret|cretu|cretur|creturn|cross|cs|cscript|cscript_log|csi|ct|ct_is|ctset|ctst_st|cttost|cumsp|cumul|cusum|cutil|d|datasig|datasign|datasigna|datasignat|datasignatu|datasignatur|datasignature|datetof|db|dbeta|de|dec|deco|decod|decode|deff|des|desc|descr|descri|describ|describe|dfbeta|dfgls|dfuller|di|di_g|dir|dirstats|dis|discard|disp|disp_res|disp_s|displ|displa|display|do|doe|doed|doedi|doedit|dotplot|dprobit|drawnorm|ds|ds_util|dstdize|duplicates|durbina|dwstat|dydx|ed|edi|edit|eivreg|emdef|en|enc|enco|encod|encode|eq|erase|ereg|ereg_lf|ereg_p|ereg_sw|ereghet|ereghet_glf|ereghet_glf_sh|ereghet_gp|ereghet_ilf|ereghet_ilf_sh|ereghet_ip|eret|eretu|eretur|ereturn|err|erro|error|est|est_cfexist|est_cfname|est_clickable|est_expand|est_hold|est_table|est_unhold|est_unholdok|estat|estat_default|estat_summ|estat_vce_only|esti|estimates|etodow|etof|etomdy|expand|expandcl|fac|fact|facto|factor|factor_estat|factor_p|factor_pca_rotated|factor_rotate|factormat|fcast|fcast_compute|fcast_graph|fdades|fdadesc|fdadescr|fdadescri|fdadescrib|fdadescribe|fdasav|fdasave|fdause|fh_st|file|filefilter|fillin|find_hlp_file|findfile|findit|fit|fl|fli|flis|flist|fpredict|frac_adj|frac_chk|frac_cox|frac_ddp|frac_dis|frac_dv|frac_in|frac_mun|frac_pp|frac_pq|frac_pv|frac_wgt|frac_xo|fracgen|fracplot|fracpoly|fracpred|fron_ex|fron_hn|fron_p|fron_tn|fron_tn2|frontier|ftodate|ftoe|ftomdy|ftowdate|gamhet_glf|gamhet_gp|gamhet_ilf|gamhet_ip|gamma|gamma_d2|gamma_p|gamma_sw|gammahet|gdi_hexagon|gdi_spokes|genrank|genstd|genvmean|gettoken|gladder|glim_l01|glim_l02|glim_l03|glim_l04|glim_l05|glim_l06|glim_l07|glim_l08|glim_l09|glim_l10|glim_l11|glim_l12|glim_lf|glim_mu|glim_nw1|glim_nw2|glim_nw3|glim_p|glim_v1|glim_v2|glim_v3|glim_v4|glim_v5|glim_v6|glim_v7|glm|glm_p|glm_sw|glmpred|glogit|glogit_p|gmeans|gnbre_lf|gnbreg|gnbreg_p|gomp_lf|gompe_sw|gomper_p|gompertz|gompertzhet|gomphet_glf|gomphet_glf_sh|gomphet_gp|gomphet_ilf|gomphet_ilf_sh|gomphet_ip|gphdot|gphpen|gphprint|gprefs|gprobi_p|gprobit|gr|gr7|gr_copy|gr_current|gr_db|gr_describe|gr_dir|gr_draw|gr_draw_replay|gr_drop|gr_edit|gr_editviewopts|gr_example|gr_example2|gr_export|gr_print|gr_qscheme|gr_query|gr_read|gr_rename|gr_replay|gr_save|gr_set|gr_setscheme|gr_table|gr_undo|gr_use|graph|grebar|greigen|grmeanby|gs_fileinfo|gs_filetype|gs_graphinfo|gs_stat|gsort|gwood|h|hareg|hausman|haver|he|heck_d2|heckma_p|heckman|heckp_lf|heckpr_p|heckprob|hel|help|hereg|hetpr_lf|hetpr_p|hetprob|hettest|hexdump|hilite|hist|histogram|hlogit|hlu|hmeans|hotel|hotelling|hprobit|hreg|hsearch|icd9|icd9_ff|icd9p|iis|impute|imtest|inbase|include|inf|infi|infil|infile|infix|inp|inpu|input|ins|insheet|insp|inspe|inspec|inspect|integ|inten|intreg|intreg_p|intrg2_ll|intrg_ll|intrg_ll2|ipolate|iqreg|ir|irf|irf_create|irfm|iri|is_svy|is_svysum|isid|istdize|ivprobit|ivprobit_p|ivreg|ivreg_footnote|ivtob_lf|ivtobit|ivtobit_p|jacknife|jknife|jkstat|joinby|kalarma1|kap|kapmeier|kappa|kapwgt|kdensity|ksm|ksmirnov|ktau|kwallis|labelbook|ladder|levelsof|leverage|lfit|lfit_p|li|lincom|line|linktest|lis|list|lloghet_glf|lloghet_glf_sh|lloghet_gp|lloghet_ilf|lloghet_ilf_sh|lloghet_ip|llogi_sw|llogis_p|llogist|llogistic|llogistichet|lnorm_lf|lnorm_sw|lnorma_p|lnormal|lnormalhet|lnormhet_glf|lnormhet_glf_sh|lnormhet_gp|lnormhet_ilf|lnormhet_ilf_sh|lnormhet_ip|lnskew0|loadingplot|(?<!\\\\.)log|logi|logis_lf|logistic|logistic_p|logit|logit_estat|logit_p|loglogs|logrank|loneway|lookfor|lookup|lowess|lpredict|lrecomp|lroc|lrtest|ls|lsens|lsens_x|lstat|ltable|ltriang|lv|lvr2plot|m|ma|mac|macr|macro|makecns|man|manova|manovatest|mantel|mark|markin|markout|marksample|mat|mat_capp|mat_order|mat_put_rr|mat_rapp|mata|mata_clear|mata_describe|mata_drop|mata_matdescribe|mata_matsave|mata_matuse|mata_memory|mata_mlib|mata_mosave|mata_rename|mata_which|matalabel|matcproc|matlist|matname|matr|matri|matrix|matrix_input__dlg|matstrik|mcc|mcci|md0_|md1_|md1debug_|md2_|md2debug_|mds|mds_estat|mds_p|mdsconfig|mdslong|mdsmat|mdsshepard|mdytoe|mdytof|me_derd|mean|means|median|memory|memsize|mfp|mfx|mhelp|mhodds|minbound|mixed_ll|mixed_ll_reparm|mkassert|mkdir|mkmat|mkspline|ml|ml_adjs|ml_bhhhs|ml_c_d|ml_check|ml_clear|ml_cnt|ml_debug|ml_defd|ml_e0|ml_e0_bfgs|ml_e0_cycle|ml_e0_dfp|ml_e0i|ml_e1|ml_e1_bfgs|ml_e1_bhhh|ml_e1_cycle|ml_e1_dfp|ml_e2|ml_e2_cycle|ml_ebfg0|ml_ebfr0|ml_ebfr1|ml_ebh0q|ml_ebhh0|ml_ebhr0|ml_ebr0i|ml_ecr0i|ml_edfp0|ml_edfr0|ml_edfr1|ml_edr0i|ml_eds|ml_eer0i|ml_egr0i|ml_elf|ml_elf_bfgs|ml_elf_bhhh|ml_elf_cycle|ml_elf_dfp|ml_elfi|ml_elfs|ml_enr0i|ml_enrr0|ml_erdu0|ml_erdu0_bfgs|ml_erdu0_bhhh|ml_erdu0_bhhhq|ml_erdu0_cycle|ml_erdu0_dfp|ml_erdu0_nrbfgs|ml_exde|ml_footnote|ml_geqnr|ml_grad0|ml_graph|ml_hbhhh|ml_hd0|ml_hold|ml_init|ml_inv|ml_log|ml_max|ml_mlout|ml_mlout_8|ml_model|ml_nb0|ml_opt|ml_p|ml_plot|ml_query|ml_rdgrd|ml_repor|ml_s_e|ml_score|ml_searc|ml_technique|ml_unhold|mleval|mlf_|mlmatbysum|mlmatsum|mlog|mlogi|mlogit|mlogit_footnote|mlogit_p|mlopts|mlsum|mlvecsum|mnl0_|mor|more|mov|move|mprobit|mprobit_lf|mprobit_p|mrdu0_|mrdu1_|mvdecode|mvencode|mvreg|mvreg_estat|nbreg|nbreg_al|nbreg_lf|nbreg_p|nbreg_sw|nestreg|net|newey|newey_p|news|nl|nlcom|nlcom_p|nlexp2|nlexp2a|nlexp3|nlgom3|nlgom4|nlinit|nllog3|nllog4|nlog_rd|nlogit|nlogit_p|nlogitgen|nlogittree|nlpred|nobreak|notes_dlg|nptrend|numlabel|numlist|old_ver|olo|olog|ologi|ologi_sw|ologit|ologit_p|ologitp|on|one|onew|onewa|oneway|op_colnm|op_comp|op_diff|op_inv|op_str|opr|opro|oprob|oprob_sw|oprobi|oprobi_p|oprobit|oprobitp|opts_exclusive|order|orthog|orthpoly|ou|out|outf|outfi|outfil|outfile|outs|outsh|outshe|outshee|outsheet|ovtest|pac|palette|parse_dissim|pause|pca|pca_display|pca_estat|pca_p|pca_rotate|pcamat|pchart|pchi|pcorr|pctile|pentium|pergram|personal|peto_st|pkcollapse|pkcross|pkequiv|pkexamine|pkshape|pksumm|plugin|pnorm|poisgof|poiss_lf|poiss_sw|poisso_p|poisson|poisson_estat|post|postclose|postfile|postutil|pperron|prais|prais_e|prais_e2|prais_p|predict|predictnl|preserve|print|prob|probi|probit|probit_estat|probit_p|proc_time|procoverlay|procrustes|procrustes_estat|procrustes_p|profiler|prop|proportion|prtest|prtesti|pwcorr|pwd|qs|qby|qbys|qchi|qladder|qnorm|qqplot|qreg|qreg_c|qreg_p|qreg_sw|qu|quadchk|quantile|que|quer|query|range|ranksum|ratio|rchart|rcof|recast|recode|reg|reg3|reg3_p|regdw|regr|regre|regre_p2|regres|regres_p|regress|regress_estat|regriv_p|remap|ren|rena|renam|rename|renpfix|repeat|reshape|restore|ret|retu|retur|return|rmdir|robvar|roccomp|rocf_lf|rocfit|rocgold|rocplot|roctab|rologit|rologit_p|rot|rota|rotat|rotate|rotatemat|rreg|rreg_p|ru|run|runtest|rvfplot|rvpplot|safesum|sample|sampsi|savedresults|sc|scatter|scm_mine|sco|scob_lf|scob_p|scobi_sw|scobit|scor|score|scoreplot|scoreplot_help|scree|screeplot|screeplot_help|sdtest|sdtesti|se|search|separate|seperate|serrbar|serset|set|set_defaults|sfrancia|sh|she|shel|shell|shewhart|signestimationsample|signrank|signtest|simul|sktest|sleep|slogit|slogit_d2|slogit_p|smooth|snapspan|so|sor|sort|spearman|spikeplot|spikeplt|spline_x|split|sqreg|sqreg_p|sret|sretu|sretur|sreturn|ssc|st|st_ct|st_hc|st_hcd|st_hcd_sh|st_is|st_issys|st_note|st_promo|st_set|st_show|st_smpl|st_subid|stack|stbase|stci|stcox|stcox_estat|stcox_fr|stcox_fr_ll|stcox_p|stcox_sw|stcoxkm|stcstat|stcurv|stcurve|stdes|stem|stepwise|stfill|stgen|stir|stjoin|stmc|stmh|stphplot|stphtest|stptime|strate|streg|streg_sw|streset|sts|stset|stsplit|stsum|sttocc|sttoct|stvary|su|suest|sum|summ|summa|summar|summari|summariz|summarize|sunflower|sureg|survcurv|survsum|svar|svar_p|svmat|svy_disp|svy_dreg|svy_est|svy_est_7|svy_estat|svy_get|svy_gnbreg_p|svy_head|svy_header|svy_heckman_p|svy_heckprob_p|svy_intreg_p|svy_ivreg_p|svy_logistic_p|svy_logit_p|svy_mlogit_p|svy_nbreg_p|svy_ologit_p|svy_oprobit_p|svy_poisson_p|svy_probit_p|svy_regress_p|svy_sub|svy_sub_7|svy_x|svy_x_7|svy_x_p|svydes|svygen|svygnbreg|svyheckman|svyheckprob|svyintreg|svyintrg|svyivreg|svylc|svylog_p|svylogit|svymarkout|svymean|svymlog|svymlogit|svynbreg|svyolog|svyologit|svyoprob|svyoprobit|svyopts|svypois|svypoisson|svyprobit|svyprobt|svyprop|svyratio|svyreg|svyreg_p|svyregress|svyset|svytab|svytest|svytotal|sw|swilk|symmetry|symmi|symplot|sysdescribe|sysdir|sysuse|szroeter|ta|tab|tab1|tab2|tab_or|tabd|tabdi|tabdis|tabdisp|tabi|table|tabodds|tabstat|tabu|tabul|tabula|tabulat|tabulate|te|tes|test|testnl|testparm|teststd|tetrachoric|time_it|timer|tis|tob|tobi|tobit|tobit_p|tobit_sw|token|tokeni|tokeniz|tokenize|total|translate|translator|transmap|treat_ll|treatr_p|treatreg|trim|trnb_cons|trnb_mean|trpoiss_d2|trunc_ll|truncr_p|truncreg|tsappend|tset|tsfill|tsline|tsline_ex|tsreport|tsrevar|tsrline|tsset|tssmooth|tsunab|ttest|ttesti|tut_chk|tut_wait|tutorial|tw|tware_st|two|twoway|twoway__fpfit_serset|twoway__function_gen|twoway__histogram_gen|twoway__ipoint_serset|twoway__ipoints_serset|twoway__kdensity_gen|twoway__lfit_serset|twoway__normgen_gen|twoway__pci_serset|twoway__qfit_serset|twoway__scatteri_serset|twoway__sunflower_gen|twoway_ksm_serset|ty|typ|type|typeof|unab|unabbrev|unabcmd|update|uselabel|var|var_mkcompanion|var_p|varbasic|varfcast|vargranger|varirf|varirf_add|varirf_cgraph|varirf_create|varirf_ctable|varirf_describe|varirf_dir|varirf_drop|varirf_erase|varirf_graph|varirf_ograph|varirf_rename|varirf_set|varirf_table|varlmar|varnorm|varsoc|varstable|varstable_w|varstable_w2|varwle|vec|vec_fevd|vec_mkphi|vec_p|vec_p_w|vecirf_create|veclmar|veclmar_w|vecnorm|vecnorm_w|vecrank|vecstable|verinst|vers|versi|versio|version|view|viewsource|vif|vwls|wdatetof|webdescribe|webseek|webuse|wh|whelp|whi|which|wilc_st|wilcoxon|win|wind|windo|window|winexec|wntestb|wntestq|xchart|xcorr|xi|xmlsav|xmlsave|xmluse|xpose|xsh|xshe|xshel|xshell|xt_iis|xt_tis|xtab_p|xtabond|xtbin_p|xtclog|xtcloglog|xtcloglog_d2|xtcloglog_pa_p|xtcloglog_re_p|xtcnt_p|xtcorr|xtdata|xtdes|xtfront_p|xtfrontier|xtgee|xtgee_elink|xtgee_estat|xtgee_makeivar|xtgee_p|xtgee_plink|xtgls|xtgls_p|xthaus|xthausman|xtht_p|xthtaylor|xtile|xtint_p|xtintreg|xtintreg_d2|xtintreg_p|xtivreg|xtline|xtline_ex|xtlogit|xtlogit_d2|xtlogit_fe_p|xtlogit_pa_p|xtlogit_re_p|xtmixed|xtmixed_estat|xtmixed_p|xtnb_fe|xtnb_lf|xtnbreg|xtnbreg_pa_p|xtnbreg_refe_p|xtpcse|xtpcse_p|xtpois|xtpoisson|xtpoisson_d2|xtpoisson_pa_p|xtpoisson_refe_p|xtpred|xtprobit|xtprobit_d2|xtprobit_re_p|xtps_fe|xtps_lf|xtps_ren|xtps_ren_8|xtrar_p|xtrc|xtrc_p|xtrchh|xtrefe_p|yx|yxview__barlike_draw|yxview_area_draw|yxview_bar_draw|yxview_dot_draw|yxview_dropline_draw|yxview_function_draw|yxview_iarrow_draw|yxview_ilabels_draw|yxview_normal_draw|yxview_pcarrow_draw|yxview_pcbarrow_draw|yxview_pccapsym_draw|yxview_pcscatter_draw|yxview_pcspike_draw|yxview_rarea_draw|yxview_rbar_draw|yxview_rbarm_draw|yxview_rcap_draw|yxview_rcapsym_draw|yxview_rconnected_draw|yxview_rline_draw|yxview_rscatter_draw|yxview_rspike_draw|yxview_spike_draw|yxview_sunflower_draw|zap_s|zinb|zinb_llf|zinb_plf|zip|zip_llf|zip_p|zip_plf|zt_ct_5|zt_hc_5|zt_hcd_5|zt_is_5|zt_iss_5|zt_sho_5|zt_smp_5|ztnb|ztnb_p|ztp|ztp_p|prtab|prchange|eststo|estout|esttab|estadd|estpost|ivregress|xtreg|xtreg_be|xtreg_fe|xtreg_ml|xtreg_pa_p|xtreg_re|xtregar|xtrere_p|xtset|xtsf_ll|xtsf_llti|xtsum|xttab|xttest0|xttobit|xttobit_p|xttrans)\\\\b","name":"keyword.control.flow.stata"}]},"comments":{"patterns":[{"include":"#comments-double-slash"},{"include":"#comments-star"},{"include":"#comments-block"},{"include":"#comments-triple-slash"}]},"comments-block":{"patterns":[{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.stata"}},"end":"(\\\\*/\\\\s+\\\\*[^\\\\n]*)|(\\\\*/(?!\\\\*))","endCaptures":{"0":{"name":"punctuation.definition.comment.end.stata"}},"name":"comment.block.stata","patterns":[{"comment":"this ends and restarts a comment block. but need to catch this so that it doesn't start _another_ level of comment blocks","match":"\\\\*/\\\\*"},{"include":"#docblockr-comment"},{"include":"#comments-block"},{"include":"#docstring"}]}]},"comments-double-slash":{"patterns":[{"begin":"(^//|(?<=\\\\s)//)(?!/)","captures":{"0":{"name":"punctuation.definition.comment.stata"}},"end":"(?=\\\\n)","name":"comment.line.double-slash.stata","patterns":[{"include":"#docblockr-comment"}]}]},"comments-star":{"patterns":[{"begin":"^\\\\s*(\\\\*)","captures":{"0":{"name":"punctuation.definition.comment.stata"}},"comment":"TODO! need to except out the occasion that a * comes after a /// on the previous line. May be easiest to join with the comment.line.triple-slash.stata below","end":"(?=\\\\n)","name":"comment.line.star.stata","patterns":[{"include":"#docblockr-comment"},{"begin":"///","end":"\\\\n","name":"comment.line-continuation.stata"},{"include":"#comments"}]}]},"comments-triple-slash":{"patterns":[{"begin":"(^///|(?<=\\\\s)///)","captures":{"0":{"name":"punctuation.definition.comment.stata"}},"end":"(?=\\\\n)","name":"comment.line.triple-slash.stata","patterns":[{"include":"#docblockr-comment"}]}]},"constants":{"patterns":[{"include":"#factorvariables"},{"match":"\\\\b(?i:(\\\\d+\\\\.\\\\d*(e[\\\\-\\\\+]?\\\\d+)?))(?=[^a-zA-Z_])","name":"constant.numeric.float.stata"},{"match":"(?<=[^0-9a-zA-Z_])(?i:(\\\\.\\\\d+(e[\\\\-\\\\+]?\\\\d+)?))","name":"constant.numeric.float.stata"},{"match":"\\\\b(?i:(\\\\d+e[\\\\-\\\\+]?\\\\d+))","name":"constant.numeric.float.stata"},{"match":"\\\\b(\\\\d+)\\\\b","name":"constant.numeric.integer.decimal.stata"},{"match":"(?<![\\\\w])(\\\\.(?![\\\\./]))(?![\\\\w])","name":"constant.language.missing.stata"},{"match":"\\\\b_all\\\\b","name":"constant.language.allvars.stata"}]},"docblockr-comment":{"patterns":[{"captures":{"1":{"name":"invalid.illegal.name.stata"}},"match":"(?<!\\\\w)(@(error|ERROR|Error))\\\\b"},{"captures":{"1":{"name":"keyword.docblockr.stata"}},"match":"(?<!\\\\w)(@\\\\w+)\\\\b"}]},"docstring":{"patterns":[{"begin":"'''","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.stata"}},"end":"'''","endCaptures":{"0":{"name":"punctuation.definition.string.begin.stata"}},"name":"string.quoted.docstring.stata"},{"begin":"\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.stata"}},"end":"\\"\\"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.begin.stata"}},"name":"string.quoted.docstring.stata"}]},"factorvariables":{"patterns":[{"match":"\\\\b(i|c|o)\\\\.(?=[\\\\w&&[^0-9]]|\\\\([\\\\w&&[^0-9]])","name":"constant.language.factorvars.stata"},{"captures":{"0":{"name":"constant.language.factorvars.stata"},"3":{"patterns":[{"include":"#constants"}]}},"match":"\\\\b(i?b)((\\\\d+)|n)\\\\.(?=[\\\\w&&[^0-9]]|\\\\([\\\\w&&[^0-9]])"},{"captures":{"0":{"name":"constant.language.factorvars.stata"},"2":{"name":"keyword.operator.parentheses.stata"},"3":{"patterns":[{"include":"#constants"},{"include":"#operators"}]},"4":{"name":"keyword.operator.parentheses.stata"}},"match":"\\\\b(i?b)(\\\\()(#\\\\d+|first|last|freq)(\\\\))\\\\.(?=[\\\\w&&[^0-9]]|\\\\([\\\\w&&[^0-9]])"},{"captures":{"0":{"name":"constant.language.factorvars.stata"},"2":{"patterns":[{"include":"#constants"}]}},"match":"\\\\b(i?o?)(\\\\d+)\\\\.(?=[\\\\w&&[^0-9]]|\\\\([\\\\w&&[^0-9]])"},{"captures":{"1":{"name":"constant.language.factorvars.stata"},"2":{"name":"keyword.operator.parentheses.stata"},"3":{"patterns":[{"include":"$self"}]},"4":{"name":"keyword.operator.parentheses.stata"},"5":{"name":"constant.language.factorvars.stata"}},"match":"\\\\b(i?o?)(\\\\()(.*?)(\\\\))(\\\\.)(?=[\\\\w&&[^0-9]]|\\\\([\\\\w&&[^0-9]])"}]},"functions":{"patterns":[{"begin":"\\\\b((abbrev|abs|acos|acosh|asin|asinh|atan|atan2|atanh|autocode|betaden|binomial|binomialp|binomialtail|binormalbofd|byteorder|c|cauchy|cauchyden|cauchytail|Cdhms|ceil|char|chi2|chi2den|chi2tail|Chms|cholesky|chop|clip|clock|Clock|cloglog|Cmdyhms|cofC|Cofc|cofd|Cofd|coleqnumb|collatorlocale|collatorversion|colnfreeparms|colnumb|colsof|comb|cond|corr|cos|cosh|daily|date|day|det|dgammapda|dgammapdada|dgammapdadx|dgammapdx|dgammapdxdx|dhms|diag|diag0cnt|digamma|dofb|dofc|dofC|dofh|dofm|dofq|dofw|dofy|dow|doy|dunnettprob|e|el|epsdouble|epsfloat|exp|exponential|exponentialden|exponentialtail|F|Fden|fileexists|fileread|filereaderror|filewrite|float|floor|fmtwidth|Ftail|gammaden|gammap|gammaptail|get|hadamard|halfyear|halfyearly|hh|hhC|hms|hofd|hours|hypergeometric|hypergeometricp|I|ibeta|ibetatail|igaussian|igaussianden|igaussiantail|indexnot|inlist|inrange|int|inv|invbinomial|invbinomialtail|invcauchy|invcauchytail|invchi2|invchi2tail|invcloglog|invdunnettprob|invexponential|invexponentialtail|invF|invFtail|invgammap|invgammaptail|invibeta|invibetatail|invigaussian|invigaussiantail|invlaplace|invlaplacetail|invlogistic|invlogistictail|invlogit|invnbinomial|invnbinomialtail|invnchi2|invnchi2tail|invnF|invnFtail|invnibeta|invnormal|invnt|invnttail|invpoisson|invpoissontail|invsym|invt|invttail|invtukeyprob|invweibull|invweibullph|invweibullphtail|invweibulltail|irecode|issymmetric|itrim|J|laplace|laplaceden|laplacetail|length|ln|lncauchyden|lnfactorial|lngamma|lnigammaden|lnigaussianden|lniwishartden|lnlaplaceden|lnmvnormalden|lnnormal|lnnormalden|lnwishartden|log|log10|logistic|logisticden|logistictail|logit|lower|ltrim|matmissing|matrix|matuniform|max|maxbyte|maxdouble|maxfloat|maxint|maxlong|mdy|mdyhms|mi|min|minbyte|mindouble|minfloat|minint|minlong|minutes|missing|mm|mmC|mod|mofd|month|monthly|mreldif|msofhours|msofminutes|msofseconds|nbetaden|nbinomial|nbinomialp|nbinomialtail|nchi2|nchi2den|nchi2tail|nF|nFden|nFtail|nibeta|normal|normalden|npnchi2|npnF|npnt|nt|ntden|nttail|nullmat|plural|poisson|poissonp|poissontail|proper|qofd|quarter|quarterly|r|rbeta|rbinomial|rcauchy|rchi2|real|recode|regexs|reldif|replay|return|reverse|rexponential|rgamma|rhypergeometric|rigaussian|rlaplace|rlogistic|rnbinomial|rnormal|round|roweqnumb|rownfreeparms|rownumb|rowsof|rpoisson|rt|rtrim|runiform|runiformint|rweibull|rweibullph|s|scalar|seconds|sign|sin|sinh|smallestdouble|soundex|sqrt|ss|ssC|string|stritrim|strlen|strlower|strltrim|strmatch|strofreal|strpos|strproper|strreverse|strrpos|strrtrim|strtoname|strtrim|strupper|subinstr|subinword|substr|sum|sweep|t|tan|tanh|tc|tC|td|tden|th|tin|tm|tobytes|tq|trace|trigamma|trim|trunc|ttail|tukeyprob|tw|twithin|uchar|udstrlen|udsubstr|uisdigit|uisletter|upper|ustrcompare|ustrcompareex|ustrfix|ustrfrom|ustrinvalidcnt|ustrleft|ustrlen|ustrlower|ustrltrim|ustrnormalize|ustrpos|ustrregexs|ustrreverse|ustrright|ustrrpos|ustrrtrim|ustrsortkey|ustrsortkeyex|ustrtitle|ustrto|ustrtohex|ustrtoname|ustrtrim|ustrunescape|ustrupper|ustrword|ustrwordcount|usubinstr|usubstr|vec|vecdiag|week|weekly|weibull|weibullden|weibullph|weibullphden|weibullphtail|weibulltail|wofd|word|wordbreaklocale|wordcount|year|yearly|yh|ym|yofd|yq|yw)|([\\\\w&&[^0-9]]\\\\w{0,31}))(\\\\()","beginCaptures":{"2":{"name":"support.function.builtin.stata"},"3":{"name":"support.function.custom.stata"},"4":{"name":"punctuation.definition.parameters.begin.stata"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.stata"}},"patterns":[{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"keyword.operator.parentheses.stata"}},"end":"\\\\)","endCaptures":{"0":{"name":"keyword.operator.parentheses.stata"}},"patterns":[{"include":"#ascii-regex-functions"},{"include":"#unicode-regex-functions"},{"include":"#functions"},{"include":"#subscripts"},{"include":"#constants"},{"include":"#comments"},{"include":"#operators"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#builtin_variables"},{"include":"#macro-commands"},{"include":"#braces-without-error"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"}]},{"include":"#ascii-regex-functions"},{"include":"#unicode-regex-functions"},{"include":"#functions"},{"include":"#subscripts"},{"include":"#constants"},{"include":"#comments"},{"include":"#operators"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#builtin_variables"},{"include":"#macro-commands"},{"include":"#braces-without-error"}]}]},"macro-commands":{"patterns":[{"begin":"\\\\b(loc(al|a)?)\\\\s+([\\\\w'\`\\\\$\\\\(\\\\)\\\\{\\\\}]+)\\\\s*(?=:|=)","beginCaptures":{"1":{"name":"keyword.macro.stata"},"3":{"patterns":[{"include":"#macro-local-identifiers"},{"include":"#macro-local"},{"include":"#macro-global"}]}},"end":"\\\\n","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.arithmetic.stata"}},"end":"(?=\\\\n)","patterns":[{"include":"$self"}]},{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.arithmetic.stata"}},"end":"(?=\\\\n)","patterns":[{"include":"#macro-extended-functions"}]}]},{"begin":"\\\\b(gl(obal|oba|ob|o)?)\\\\s+(?=[\\\\w\`\\\\$])","beginCaptures":{"1":{"name":"keyword.macro.stata"}},"end":"(\\\\})|(?=\\\\\\"|\\\\s|\\\\n|/|,|=)","patterns":[{"include":"#reserved-names"},{"match":"[\\\\w&&[^0-9_]]\\\\w{0,31}","name":"entity.name.type.class.stata"},{"include":"#macro-local"},{"include":"#macro-global"}]},{"begin":"\\\\b(loc(al|a)?)\\\\s+(\\\\+\\\\+|\\\\-\\\\-)?(?=[\\\\w\`\\\\$])","beginCaptures":{"1":{"name":"keyword.macro.stata"},"3":{"name":"keyword.operator.arithmetic.stata"}},"end":"(?=\\\\\\"|\\\\s|\\\\n|/|,|=)","patterns":[{"include":"#macro-local-identifiers"},{"include":"#macro-local"},{"include":"#macro-global"}]},{"begin":"\\\\b(tempvar|tempname|tempfile)\\\\s*(?=\\\\s)","beginCaptures":{"1":{"name":"keyword.macro.stata"}},"end":"\\\\n","patterns":[{"begin":"///","end":"\\\\n","name":"comment.block.stata"},{"include":"#macro-local-identifiers"},{"include":"#macro-local"},{"include":"#macro-global"}]},{"begin":"\\\\b(ma(cro|cr|c)?)\\\\s+(drop|l(ist|is|i)?)\\\\s*(?=\\\\s)","beginCaptures":{"0":{"name":"keyword.macro.stata"}},"end":"\\\\n","patterns":[{"begin":"///","end":"\\\\n","name":"comment.block.stata"},{"match":"\\\\*","name":"keyword.operator.arithmetic.stata"},{"include":"#constants"},{"include":"#macro-global"},{"include":"#macro-local"},{"include":"#comments"},{"match":"\\\\w{1,31}","name":"entity.name.type.class.stata"}]}]},"macro-extended-functions":{"patterns":[{"match":"\\\\b(properties)\\\\b","name":"keyword.macro.extendedfcn.stata"},{"match":"\\\\b(t(ype|yp|y)?|f(ormat|orma|orm|or|o)?|val(ue|u)?\\\\s+l(able|abl|ab|a)?|var(iable|iabl|iab|ia|i)?\\\\s+l(abel|abe|ab|a)?|data\\\\s+l(able|abl|ab|a)?|sort(edby|edb|ed|e)?|lab(el|e)?|maxlength|constraint|char)\\\\b","name":"keyword.macro.extendedfcn.stata"},{"match":"\\\\b(permname)\\\\b","name":"keyword.macro.extendedfcn.stata"},{"match":"\\\\b(adosubdir|dir|files?|dirs?|other|sysdir)\\\\b","name":"keyword.macro.extendedfcn.stata"},{"match":"\\\\b(env(ironment|ironmen|ironme|ironm|iron|iro|ir|i)?)\\\\b","name":"keyword.macro.extendedfcn.stata"},{"match":"\\\\b(all\\\\s+(globals|scalars|matrices)|((numeric|string)\\\\s+scalars))\\\\b","name":"keyword.macro.extendedfcn.stata"},{"captures":{"1":{"name":"keyword.macro.extendedfcn.stata"},"2":{"name":"keyword.macro.extendedfcn.stata"},"3":{"name":"entity.name.type.class.stata"}},"match":"\\\\b(list)\\\\s+(uniq|dups|sort|clean|retok(enize|eniz|eni|en|e)?|sizeof)\\\\s+(\\\\w{1,32})"},{"captures":{"1":{"name":"keyword.macro.extendedfcn.stata"},"2":{"name":"entity.name.type.class.stata"},"3":{"name":"keyword.operator.list.stata"},"4":{"name":"entity.name.type.class.stata"}},"match":"\\\\b(list)\\\\s+(\\\\w{1,32})\\\\s+(\\\\||&|\\\\-|===|==|in)\\\\s+(\\\\w{1,32})"},{"captures":{"1":{"name":"keyword.macro.extendedfcn.stata"},"2":{"name":"punctuation.definition.string.begin.stata"},"3":{"name":"string.quoted.double.stata"},"4":{"name":"punctuation.definition.string.end.stata"},"5":{"name":"keyword.macro.extendedfcn.stata"},"6":{"name":"entity.name.type.class.stata"}},"match":"\\\\b(list\\\\s+posof)\\\\s+(\\")(\\\\w+)(\\")\\\\s+(in)\\\\s+(\\\\w{1,32})"},{"match":"\\\\b(rown(ames|ame|am|a)?|coln(ames|ame|am|a)?|rowf(ullnames|ullname|ullnam|ullna|ulln|ull|ul|u)?|colf(ullnames|ullname|ullnam|ullna|ulln|ull|ul|u)?|roweq?|coleq?|rownumb|colnumb|roweqnumb|coleqnumb|rownfreeparms|colnfreeparms|rownlfs|colnlfs|rowsof|colsof|rowvarlist|colvarlist|rowlfnames|collfnames)\\\\b","name":"keyword.macro.extendedfcn.stata"},{"match":"\\\\b(tsnorm)\\\\b","name":"keyword.macro.extendedfcn.stata"},{"captures":{"1":{"name":"keyword.macro.extendedfcn.stata"},"7":{"patterns":[{"include":"#macro-local"},{"include":"#macro-global"}]}},"match":"\\\\b((copy|(ud|u)?strlen)\\\\s+(loc(al|a)?|gl(obal|oba|ob|o)?))\\\\s+([^']+)"},{"captures":{"1":{"name":"keyword.macro.extendedfcn.stata"}},"match":"\\\\b(word\\\\s+count)"},{"captures":{"1":{"name":"keyword.macro.extendedfcn.stata"},"2":{"patterns":[{"include":"#macro-local"},{"include":"#constants"}]},"3":{"name":"keyword.macro.extendedfcn.stata"}},"match":"(word|piece)\\\\s+([\\\\s\`'\\\\w]+)\\\\s+(of)"},{"begin":"\\\\b(subinstr\\\\s+(loc(al|a)?|gl(obal|oba|ob|o)?))\\\\s+(\\\\w{1,32})","beginCaptures":{"1":{"name":"keyword.macro.extendedfcn.stata"},"5":{"name":"entity.name.type.class.stata"}},"end":"(?=//|\\\\n)","patterns":[{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#string-compound"},{"include":"#string-regular"},{"captures":{"1":{"name":"support.function.builtin.stata"},"2":{"name":"punctuation.definition.parameters.begin.stata"},"3":{"name":"keyword.macro.extendedfcn.stata"},"4":{"name":"entity.name.type.class.stata"},"5":{"name":"punctuation.definition.parameters.end.stata"}},"match":"(count|coun|cou|co|c)(\\\\()(local|loca|loc|global|globa|glob|glo|gl)\\\\s+(\\\\w{1,32})(\\\\))"}]},{"include":"#comments"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"$self"}]},"macro-global":{"patterns":[{"begin":"(\\\\$)(\\\\{)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.stata"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.string.end.stata"}},"patterns":[{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#comments-block"},{"begin":"[^\\\\w]","end":"\\\\n|(?=})","name":"comment.line.stata"},{"match":"\\\\w{1,32}","name":"entity.name.type.class.stata"}]},{"begin":"\\\\$","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.stata"}},"end":"(?!\\\\w)","endCaptures":{"1":{"name":"punctuation.definition.string.end.stata"}},"patterns":[{"include":"#macro-local"},{"include":"#macro-global"},{"match":"[\\\\w&&[^0-9_]]\\\\w{0,31}|_\\\\w{1,31}","name":"entity.name.type.class.stata"}]}]},"macro-global-escaped":{"patterns":[{"begin":"(\\\\\\\\\\\\$)(\\\\\\\\\\\\{)?","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.stata"}},"end":"(\\\\\\\\\\\\})|(?=\\\\\\"|\\\\s|\\\\n|/|,)","endCaptures":{"1":{"name":"punctuation.definition.string.end.stata"}},"patterns":[{"include":"#macro-local"},{"include":"#macro-global"},{"match":"[\\\\w&&[^0-9_]]\\\\w{0,31}|_\\\\w{1,31}","name":"entity.name.type.class.stata"}]}]},"macro-local":{"patterns":[{"begin":"(\`)(=)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.stata"},"2":{"name":"keyword.operator.comparison.stata"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.stata"}},"patterns":[{"include":"$self"}]},{"begin":"(\`)(:)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.stata"},"2":{"name":"keyword.operator.comparison.stata"}},"contentName":"meta.macro-extended-function.stata","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.stata"}},"patterns":[{"include":"#macro-local"},{"include":"#macro-extended-functions"},{"include":"#constants"},{"include":"#string-compound"},{"include":"#string-regular"}]},{"begin":"(\`)(macval)(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.stata"},"2":{"name":"support.function.builtin.stata"},"3":{"name":"punctuation.definition.parameters.begin.stata"}},"contentName":"meta.macro-extended-function.stata","end":"(\\\\))(')","endCaptures":{"1":{"name":"punctuation.definition.parameters.begin.stata"},"2":{"name":"punctuation.definition.string.end.stata"}},"patterns":[{"include":"#macro-local"},{"include":"#macro-global"},{"match":"\\\\w{1,31}","name":"entity.name.type.class.stata"}]},{"begin":"\`(?!\\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.stata"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.stata"}},"patterns":[{"match":"\\\\+\\\\+|\\\\-\\\\-","name":"keyword.operator.arithmetic.stata"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#comments-block"},{"begin":"[^\\\\w]","end":"\\\\n|(?=')","name":"comment.line.stata"},{"match":"\\\\w{1,31}","name":"entity.name.type.class.stata"}]}]},"macro-local-escaped":{"patterns":[{"begin":"\\\\\\\\\`(?!\\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.stata"}},"comment":"appropriately color macros that have embedded escaped \`,', and $ characters for lazy evaluation","end":"\\\\\\\\'|'","endCaptures":{"0":{"name":"punctuation.definition.string.end.stata"}},"patterns":[{"include":"#macro-local"},{"include":"#macro-global"},{"match":"\\\\w{1,31}","name":"entity.name.type.class.stata"}]}]},"macro-local-identifiers":{"patterns":[{"match":"[^\\\\w'\`\\\\$\\\\(\\\\)\\\\s]","name":"invalid.illegal.name.stata"},{"match":"\\\\w{32,}","name":"invalid.illegal.name.stata"},{"match":"\\\\w{1,31}","name":"entity.name.type.class.stata"}]},"operators":{"patterns":[{"comment":"++ and -- must come first to support ligatures","match":"\\\\+\\\\+|\\\\-\\\\-|\\\\+|\\\\-|\\\\*|\\\\^","name":"keyword.operator.arithmetic.stata"},{"comment":"match division operator but not path separator","match":"(?<![\\\\w.&&[^0-9]])/(?![\\\\w.&&[^0-9]]|$)","name":"keyword.operator.arithmetic.stata"},{"comment":"match division operator but not path separator","match":"(?<![\\\\w.&&[^0-9]])\\\\\\\\(?![\\\\w.&&[^0-9]]|$)","name":"keyword.operator.matrix.addrow.stata"},{"match":"\\\\|\\\\|","name":"keyword.operator.graphcombine.stata"},{"match":"\\\\&|\\\\|","name":"keyword.operator.logical.stata"},{"match":"(?:<=|>=|:=|==|!=|~=|<|>|=|!!|!)","name":"keyword.operator.comparison.stata"},{"match":"\\\\(|\\\\)","name":"keyword.operator.parentheses.stata"},{"match":"(##|#)","name":"keyword.operator.factor-variables.stata"},{"match":"%","name":"keyword.operator.format.stata"},{"match":":","name":"punctuation.separator.key-value"},{"match":"\\\\[","name":"punctuation.definition.parameters.begin.stata"},{"match":"\\\\]","name":"punctuation.definition.parameters.end.stata"},{"match":",","name":"punctuation.definition.variable.begin.stata"},{"match":";","name":"keyword.operator.delimiter.stata"}]},"reserved-names":{"patterns":[{"match":"\\\\b(_all|_b|byte|_coef|_cons|double|float|if|in|int|long|_n|_N|_pi|_pred|_rc|_skip|str[0-9]+|strL|using|with)\\\\b","name":"invalid.illegal.name.stata"},{"match":"[^\\\\w'\`\\\\$\\\\(\\\\)\\\\s]","name":"invalid.illegal.name.stata"},{"match":"[0-9][\\\\w]{31,}","name":"invalid.illegal.name.stata"},{"match":"\\\\w{33,}","name":"invalid.illegal.name.stata"}]},"string-compound":{"patterns":[{"begin":"\`\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.stata"}},"end":"\\"'|(?=\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.stata"}},"name":"string.quoted.double.compound.stata","patterns":[{"comment":"This must come before #string-regular and #string-compound to accurately color \`\\"\\"\\"' in strings","match":"\\"","name":"string.quoted.double.compound.stata"},{"comment":"see https://github.com/kylebarron/language-stata/issues/53","match":"\`\`\`(?=[^']*\\")","name":"meta.markdown.code.block.stata"},{"include":"#string-regular"},{"include":"#string-compound"},{"include":"#macro-local-escaped"},{"include":"#macro-global-escaped"},{"include":"#macro-local"},{"include":"#macro-global"}]}]},"string-regular":{"patterns":[{"begin":"(?<!\`)\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.stata"}},"end":"(\\")(')?|(?=\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.stata"},"2":{"name":"invalid.illegal.punctuation.stata"}},"name":"string.quoted.double.stata","patterns":[{"comment":"see https://github.com/kylebarron/language-stata/issues/53","match":"\`\`\`(?=[^']*\\")","name":"meta.markdown.code.block.stata"},{"include":"#macro-local-escaped"},{"include":"#macro-global-escaped"},{"include":"#macro-local"},{"include":"#macro-global"}]}]},"subscripts":{"patterns":[{"begin":"(?<=[\\\\w'])(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.stata"}},"comment":"highlight expressions, like [_n], when using subscripts on a variable","end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.stata"}},"name":"meta.subscripts.stata","patterns":[{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#builtin_variables"},{"include":"#operators"},{"include":"#constants"},{"include":"#functions"}]}]},"unicode-regex-character-class":{"patterns":[{"match":"\\\\\\\\[wWsSdD]|\\\\.","name":"constant.character.character-class.stata"},{"match":"\\\\\\\\.","name":"constant.character.escape.backslash.stata"},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.stata"},"2":{"name":"keyword.operator.negation.stata"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.stata"}},"name":"constant.other.character-class.set.stata","patterns":[{"include":"#unicode-regex-character-class"},{"captures":{"2":{"name":"constant.character.escape.backslash.stata"},"4":{"name":"constant.character.escape.backslash.stata"}},"match":"((\\\\\\\\.)|.)\\\\-((\\\\\\\\.)|[^\\\\]])","name":"constant.other.character-class.range.stata"}]}]},"unicode-regex-functions":{"patterns":[{"captures":{"1":{"name":"support.function.builtin.stata"},"2":{"name":"punctuation.definition.parameters.begin.stata"},"3":{"patterns":[{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments-triple-slash"}]},"4":{"name":"punctuation.definition.variable.begin.stata"},"5":{"name":"punctuation.definition.string.begin.stata"},"6":{"patterns":[{"include":"#unicode-regex-internals"}]},"7":{"name":"punctuation.definition.string.end.stata"},"8":{"name":"invalid.illegal.punctuation.stata"},"9":{"patterns":[{"include":"#constants"},{"match":",","name":"punctuation.definition.variable.begin.stata"}]},"10":{"name":"punctuation.definition.parameters.end.stata"}},"comment":"color regexm with regular quotes i.e. \\" ","match":"\\\\b(ustrregexm)(\\\\()([^,]+)(,)\\\\s*(\\")([^\\"]+)(\\"(')?)([,0-9\\\\s]*)?\\\\s*(\\\\))"},{"captures":{"1":{"name":"support.function.builtin.stata"},"2":{"name":"punctuation.definition.parameters.begin.stata"},"3":{"patterns":[{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments-triple-slash"}]},"4":{"name":"punctuation.definition.variable.begin.stata"},"5":{"name":"punctuation.definition.string.begin.stata"},"6":{"patterns":[{"include":"#unicode-regex-internals"}]},"7":{"name":"punctuation.definition.string.end.stata"},"8":{"patterns":[{"include":"#constants"},{"match":",","name":"punctuation.definition.variable.begin.stata"}]},"9":{"name":"punctuation.definition.parameters.end.stata"}},"comment":"color regexm with compound quotes","match":"\\\\b(ustrregexm)(\\\\()([^,]+)(,)\\\\s*(\`\\")([^\\"]+)(\\"')([,0-9\\\\s]*)?\\\\s*(\\\\))"},{"captures":{"1":{"name":"support.function.builtin.stata"},"2":{"name":"punctuation.definition.parameters.begin.stata"},"3":{"patterns":[{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments"}]},"4":{"name":"punctuation.definition.variable.begin.stata"},"5":{"name":"punctuation.definition.string.begin.stata"},"6":{"patterns":[{"include":"#unicode-regex-internals"}]},"7":{"name":"punctuation.definition.string.end.stata"},"8":{"name":"invalid.illegal.punctuation.stata"},"9":{"patterns":[{"match":",","name":"punctuation.definition.variable.begin.stata"},{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments-triple-slash"},{"include":"#constants"}]},"10":{"name":"punctuation.definition.parameters.end.stata"}},"comment":"color regexr with regular quotes i.e. \\" ","match":"\\\\b(ustrregexrf|ustrregexra)(\\\\()([^,]+)(,)\\\\s*(\\")([^\\"]+)(\\"(')?)\\\\s*([^\\\\)]*)(\\\\))"},{"captures":{"1":{"name":"support.function.builtin.stata"},"2":{"name":"punctuation.definition.parameters.begin.stata"},"3":{"patterns":[{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments"}]},"4":{"name":"punctuation.definition.variable.begin.stata"},"5":{"name":"punctuation.definition.string.begin.stata"},"6":{"patterns":[{"include":"#unicode-regex-internals"}]},"7":{"name":"punctuation.definition.string.end.stata"},"8":{"patterns":[{"match":",","name":"punctuation.definition.variable.begin.stata"},{"include":"#string-compound"},{"include":"#string-regular"},{"include":"#macro-local"},{"include":"#macro-global"},{"include":"#functions"},{"match":"[\\\\w&&[^0-9]]\\\\w{0,31}","name":"variable.parameter.function.stata"},{"include":"#comments-triple-slash"},{"include":"#constants"}]},"9":{"name":"punctuation.definition.parameters.end.stata"}},"comment":"color regexr with compound quotes i.e. \`\\"text\\"' ","match":"\\\\b(ustrregexrf|ustrregexra)(\\\\()([^,]+)(,)\\\\s*(\`\\")([^\\"]+)(\\"')\\\\s*([^\\\\)]*)(\\\\))"}]},"unicode-regex-internals":{"patterns":[{"match":"\\\\\\\\[bBAZzG]|\\\\^","name":"keyword.control.anchor.stata"},{"comment":"matched when not a global","match":"\\\\$(?![[\\\\w&&[^0-9_]][\\\\w]{0,31}|_[\\\\w]{1,31}\\\\{])","name":"keyword.control.anchor.stata"},{"match":"\\\\\\\\[1-9][0-9]?","name":"keyword.other.back-reference.stata"},{"match":"[?+*][?+]?|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.stata"},{"match":"\\\\|","name":"keyword.operator.or.stata"},{"begin":"\\\\((?!\\\\?\\\\#|\\\\?=|\\\\?!|\\\\?<=|\\\\?<!)","end":"\\\\)","name":"keyword.operator.group.stata","patterns":[{"include":"#unicode-regex-internals"}]},{"begin":"\\\\(\\\\?\\\\#","end":"\\\\)","name":"comment.block.stata"},{"comment":"We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.","match":"(?<=^|\\\\s)#\\\\s[[a-zA-Z0-9,. \\\\t?!-:][^\\\\x{00}-\\\\x{7F}]]*$","name":"comment.line.number-sign.stata"},{"match":"\\\\(\\\\?[iLmsux]+\\\\)","name":"keyword.other.option-toggle.stata"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?<!))","beginCaptures":{"1":{"name":"keyword.operator.group.stata"},"2":{"name":"punctuation.definition.group.assertion.stata"},"3":{"name":"keyword.assertion.look-ahead.stata"},"4":{"name":"keyword.assertion.negative-look-ahead.stata"},"5":{"name":"keyword.assertion.look-behind.stata"},"6":{"name":"keyword.assertion.negative-look-behind.stata"}},"end":"(\\\\))","endCaptures":{"1":{"name":"keyword.operator.group.stata"}},"name":"meta.group.assertion.stata","patterns":[{"include":"#unicode-regex-internals"}]},{"begin":"(\\\\()(\\\\?\\\\(([1-9][0-9]?|[a-zA-Z_][a-zA-Z_0-9]*)\\\\))","beginCaptures":{"1":{"name":"punctuation.definition.group.stata"},"2":{"name":"punctuation.definition.group.assertion.conditional.stata"},"3":{"name":"entity.name.section.back-reference.stata"}},"comment":"we can make this more sophisticated to match the | character that separates yes-pattern from no-pattern, but it's not really necessary.","end":"(\\\\))","name":"meta.group.assertion.conditional.stata","patterns":[{"include":"#unicode-regex-internals"}]},{"include":"#unicode-regex-character-class"},{"include":"#macro-local"},{"include":"#macro-global"},{"comment":"NOTE: Error if I have .+ No idea why but it works fine it seems with just .","match":".","name":"string.quoted.stata"}]}},"scopeName":"source.stata","embeddedLangs":["sql"]}`)),koe=[...Ve,woe]});var dj={};x(dj,{default:()=>_oe});var Coe,_oe,uj=_(()=>{Coe=Object.freeze(JSON.parse(`{"displayName":"Stylus","fileTypes":["styl","stylus","css.styl","css.stylus"],"name":"stylus","patterns":[{"include":"#comment"},{"include":"#at_rule"},{"include":"#language_keywords"},{"include":"#language_constants"},{"include":"#variable_declaration"},{"include":"#function"},{"include":"#selector"},{"include":"#declaration"},{"captures":{"1":{"name":"punctuation.section.property-list.begin.css"},"2":{"name":"punctuation.section.property-list.end.css"}},"match":"(\\\\{)(\\\\})","name":"meta.brace.curly.css"},{"match":"\\\\{|\\\\}","name":"meta.brace.curly.css"},{"include":"#numeric"},{"include":"#string"},{"include":"#operator"}],"repository":{"at_rule":{"patterns":[{"begin":"\\\\s*((@)(import|require))\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.at-rule.import.stylus"},"2":{"name":"punctuation.definition.keyword.stylus"}},"end":"\\\\s*((?=;|$|\\\\n))","endCaptures":{"1":{"name":"punctuation.terminator.rule.css"}},"name":"meta.at-rule.import.css","patterns":[{"include":"#string"}]},{"begin":"\\\\s*((@)(extend[s]?)\\\\b)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.at-rule.extend.stylus"},"2":{"name":"punctuation.definition.keyword.stylus"}},"end":"\\\\s*((?=;|$|\\\\n))","endCaptures":{"1":{"name":"punctuation.terminator.rule.css"}},"name":"meta.at-rule.extend.css","patterns":[{"include":"#selector"}]},{"captures":{"1":{"name":"keyword.control.at-rule.fontface.stylus"},"2":{"name":"punctuation.definition.keyword.stylus"}},"match":"^\\\\s*((@)font-face)\\\\b","name":"meta.at-rule.fontface.stylus"},{"captures":{"1":{"name":"keyword.control.at-rule.css.stylus"},"2":{"name":"punctuation.definition.keyword.stylus"}},"match":"^\\\\s*((@)css)\\\\b","name":"meta.at-rule.css.stylus"},{"begin":"\\\\s*((@)charset)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.control.at-rule.charset.stylus"},"2":{"name":"punctuation.definition.keyword.stylus"}},"end":"\\\\s*((?=;|$|\\\\n))","name":"meta.at-rule.charset.stylus","patterns":[{"include":"#string"}]},{"begin":"\\\\s*((@)keyframes)\\\\b\\\\s+([a-zA-Z_-][a-zA-Z0-9_-]*)","beginCaptures":{"1":{"name":"keyword.control.at-rule.keyframes.stylus"},"2":{"name":"punctuation.definition.keyword.stylus"},"3":{"name":"entity.name.function.keyframe.stylus"}},"end":"\\\\s*((?=\\\\{|$|\\\\n))","name":"meta.at-rule.keyframes.stylus"},{"begin":"(?=(\\\\b(\\\\d+%|from\\\\b|to\\\\b)))","end":"(?=(\\\\{|\\\\n))","name":"meta.at-rule.keyframes.stylus","patterns":[{"match":"(\\\\b(\\\\d+%|from\\\\b|to\\\\b))","name":"entity.other.attribute-name.stylus"}]},{"captures":{"1":{"name":"keyword.control.at-rule.media.stylus"},"2":{"name":"punctuation.definition.keyword.stylus"}},"match":"^\\\\s*((@)media)\\\\b","name":"meta.at-rule.media.stylus"},{"match":"(?:(?=\\\\w)(?<![\\\\w-]))(width|scan|resolution|orientation|monochrome|min-width|min-resolution|min-monochrome|min-height|min-device-width|min-device-height|min-device-aspect-ratio|min-color-index|min-color|min-aspect-ratio|max-width|max-resolution|max-monochrome|max-height|max-device-width|max-device-height|max-device-aspect-ratio|max-color-index|max-color|max-aspect-ratio|height|grid|device-width|device-height|device-aspect-ratio|color-index|color|aspect-ratio)(?:(?<=\\\\w)(?![\\\\w-]))","name":"support.type.property-name.media-feature.media.css"},{"match":"(?:(?=\\\\w)(?<![\\\\w-]))(tv|tty|screen|projection|print|handheld|embossed|braille|aural|all)(?:(?<=\\\\w)(?![\\\\w-]))","name":"support.constant.media-type.media.css"},{"match":"(?:(?=\\\\w)(?<![\\\\w-]))(portrait|landscape)(?:(?<=\\\\w)(?![\\\\w-]))","name":"support.constant.property-value.media-property.media.css"}]},"char_escape":{"match":"\\\\\\\\(.)","name":"constant.character.escape.stylus"},"color":{"patterns":[{"begin":"\\\\b(rgb|rgba|hsl|hsla)(\\\\()","beginCaptures":{"1":{"name":"support.function.color.css"},"2":{"name":"punctuation.section.function.css"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.function.css"}},"name":"meta.function.color.css","patterns":[{"match":"\\\\s*(,)\\\\s*","name":"punctuation.separator.parameter.css"},{"include":"#numeric"},{"include":"#property_variable"}]},{"captures":{"1":{"name":"punctuation.definition.constant.css"}},"match":"(#)([0-9a-fA-F]{3}|[0-9a-fA-F]{6})\\\\b","name":"constant.other.color.rgb-value.css"},{"comment":"http://www.w3.org/TR/CSS21/syndata.html#value-def-color","match":"\\\\b(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)\\\\b","name":"support.constant.color.w3c-standard-color-name.css"},{"comment":"http://www.w3.org/TR/css3-color/#svg-color","match":"\\\\b(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato|turquoise|violet|wheat|whitesmoke|yellowgreen)\\\\b","name":"support.constant.color.w3c-extended-color-name.css"}]},"comment":{"patterns":[{"include":"#comment_block"},{"include":"#comment_line"}]},"comment_block":{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.css"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.css"}},"name":"comment.block.css"},"comment_line":{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.stylus"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.stylus"}},"end":"(?=\\\\n)","name":"comment.line.double-slash.stylus"}]},"declaration":{"begin":"((?<=^)[^\\\\S\\\\n]+)|((?<=;)[^\\\\S\\\\n]*)|((?<=\\\\{)[^\\\\S\\\\n]*)","end":"(?=\\\\n)|(;)|(?=\\\\})|(\\\\n)","endCaptures":{"2":{"name":"punctuation.terminator.rule.css"}},"name":"meta.property-list.css","patterns":[{"match":"(?<![\\\\w-])--(?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*","name":"variable.css"},{"include":"#language_keywords"},{"include":"#language_constants"},{"match":"(?:(?<=^)[^\\\\S\\\\n]+(\\\\n))"},{"captures":{"1":{"name":"support.type.property-name.css"},"2":{"name":"punctuation.separator.key-value.css"},"3":{"name":"variable.section.css"}},"match":"\\\\G\\\\s*(counter-reset|counter-increment)(?:(:)|[^\\\\S\\\\n])[^\\\\S\\\\n]*([a-zA-Z_-][a-zA-Z0-9_-]*)","name":"meta.property.counter.css"},{"begin":"\\\\G\\\\s*(filter)(?:(:)|[^\\\\S\\\\n])[^\\\\S\\\\n]*","beginCaptures":{"1":{"name":"support.type.property-name.css"},"2":{"name":"punctuation.separator.key-value.css"}},"end":"(?=\\\\n|;|\\\\}|$)","name":"meta.property.filter.css","patterns":[{"include":"#function"},{"include":"#property_values"}]},{"include":"#property"},{"include":"#interpolation"},{"include":"$self"}]},"font_name":{"match":"(\\\\b(?i:arial|century|comic|courier|cursive|fantasy|futura|garamond|georgia|helvetica|impact|lucida|monospace|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif)\\\\b)","name":"support.constant.font-name.css"},"function":{"begin":"(?=[a-zA-Z_-][a-zA-Z0-9_-]*\\\\()","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.function.css"}},"patterns":[{"begin":"(format|url|local)(\\\\()","beginCaptures":{"1":{"name":"support.function.misc.css"},"2":{"name":"punctuation.section.function.css"}},"end":"(?=\\\\))","name":"meta.function.misc.css","patterns":[{"match":"(?<=\\\\()[^\\\\)\\\\s]*(?=\\\\))","name":"string.css"},{"include":"#string"},{"include":"#variable"},{"include":"#operator"},{"match":"\\\\s*"}]},{"captures":{"1":{"name":"support.function.misc.counter.css"},"2":{"name":"punctuation.section.function.css"},"3":{"name":"variable.section.css"}},"match":"(counter)(\\\\()([a-zA-Z_-][a-zA-Z0-9_-]*)(?=\\\\))","name":"meta.function.misc.counter.css"},{"begin":"(counters)(\\\\()","beginCaptures":{"1":{"name":"support.function.misc.counters.css"},"2":{"name":"punctuation.section.function.css"}},"end":"(?=\\\\))","name":"meta.function.misc.counters.css","patterns":[{"match":"\\\\G[a-zA-Z_-][a-zA-Z0-9_-]*","name":"variable.section.css"},{"match":"\\\\s*(,)\\\\s*","name":"punctuation.separator.parameter.css"},{"include":"#string"},{"include":"#interpolation"}]},{"begin":"(attr)(\\\\()","beginCaptures":{"1":{"name":"support.function.misc.attr.css"},"2":{"name":"punctuation.section.function.css"}},"end":"(?=\\\\))","name":"meta.function.misc.attr.css","patterns":[{"match":"\\\\G[a-zA-Z_-][a-zA-Z0-9_-]*","name":"entity.other.attribute-name.attribute.css"},{"match":"(?<=[a-zA-Z0-9_-])\\\\s*\\\\b(string|color|url|integer|number|length|em|ex|px|rem|vw|vh|vmin|vmax|mm|cm|in|pt|pc|angle|deg|grad|rad|time|s|ms|frequency|Hz|kHz|%)\\\\b","name":"support.type.attr.css"},{"match":"\\\\s*(,)\\\\s*","name":"punctuation.separator.parameter.css"},{"include":"#string"},{"include":"#interpolation"}]},{"begin":"(calc)(\\\\()","beginCaptures":{"1":{"name":"support.function.misc.calc.css"},"2":{"name":"punctuation.section.function.css"}},"end":"(?=\\\\))","name":"meta.function.misc.calc.css","patterns":[{"include":"#property_values"}]},{"begin":"(cubic-bezier)(\\\\()","beginCaptures":{"1":{"name":"support.function.timing.cubic-bezier.css"},"2":{"name":"punctuation.section.function.css"}},"end":"(?=\\\\))","name":"meta.function.timing.cubic-bezier.css","patterns":[{"match":"\\\\s*(,)\\\\s*","name":"punctuation.separator.parameter.css"},{"include":"#numeric"},{"include":"#interpolation"}]},{"begin":"(steps)(\\\\()","beginCaptures":{"1":{"name":"support.function.timing.steps.css"},"2":{"name":"punctuation.section.function.css"}},"end":"(?=\\\\))","name":"meta.function.timing.steps.css","patterns":[{"match":"\\\\s*(,)\\\\s*","name":"punctuation.separator.parameter.css"},{"include":"#numeric"},{"match":"\\\\b(start|end)\\\\b","name":"support.constant.timing.steps.direction.css"},{"include":"#interpolation"}]},{"begin":"(linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient)(\\\\()","beginCaptures":{"1":{"name":"support.function.gradient.css"},"2":{"name":"punctuation.section.function.css"}},"end":"(?=\\\\))","name":"meta.function.gradient.css","patterns":[{"match":"\\\\s*(,)\\\\s*","name":"punctuation.separator.parameter.css"},{"include":"#numeric"},{"include":"#color"},{"match":"\\\\b(to|bottom|right|left|top|circle|ellipse|center|closest-side|closest-corner|farthest-side|farthest-corner|at)\\\\b","name":"support.constant.gradient.css"},{"include":"#interpolation"}]},{"begin":"(blur|brightness|contrast|grayscale|hue-rotate|invert|opacity|saturate|sepia)(\\\\()","beginCaptures":{"1":{"name":"support.function.filter.css"},"2":{"name":"punctuation.section.function.css"}},"end":"(?=\\\\))","name":"meta.function.filter.css","patterns":[{"include":"#numeric"},{"include":"#property_variable"},{"include":"#interpolation"}]},{"begin":"(drop-shadow)(\\\\()","beginCaptures":{"1":{"name":"support.function.filter.drop-shadow.css"},"2":{"name":"punctuation.section.function.css"}},"end":"(?=\\\\))","name":"meta.function.filter.drop-shadow.css","patterns":[{"include":"#numeric"},{"include":"#color"},{"include":"#property_variable"},{"include":"#interpolation"}]},{"begin":"(matrix|matrix3d|perspective|rotate|rotate3d|rotate[Xx]|rotate[yY]|rotate[zZ]|scale|scale3d|scale[xX]|scale[yY]|scale[zZ]|skew|skew[xX]|skew[yY]|translate|translate3d|translate[xX]|translate[yY]|translate[zZ])(\\\\()","beginCaptures":{"1":{"name":"support.function.transform.css"},"2":{"name":"punctuation.section.function.css"}},"end":"(?=\\\\))","name":"meta.function.transform.css","patterns":[{"include":"#numeric"},{"include":"#property_variable"},{"include":"#interpolation"}]},{"match":"(url|local|format|counter|counters|attr|calc)(?=\\\\()","name":"support.function.misc.css"},{"match":"(cubic-bezier|steps)(?=\\\\()","name":"support.function.timing.css"},{"match":"(linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient)(?=\\\\()","name":"support.function.gradient.css"},{"match":"(blur|brightness|contrast|drop-shadow|grayscale|hue-rotate|invert|opacity|saturate|sepia)(?=\\\\()","name":"support.function.filter.css"},{"match":"(matrix|matrix3d|perspective|rotate|rotate3d|rotate[Xx]|rotate[yY]|rotate[zZ]|scale|scale3d|scale[xX]|scale[yY]|scale[zZ]|skew|skew[xX]|skew[yY]|translate|translate3d|translate[xX]|translate[yY]|translate[zZ])(?=\\\\()","name":"support.function.transform.css"},{"begin":"([a-zA-Z_-][a-zA-Z0-9_-]*)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.stylus"},"2":{"name":"punctuation.section.function.css"}},"end":"(?=\\\\))","name":"meta.function.stylus","patterns":[{"match":"--(?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*","name":"variable.argument.stylus"},{"match":"\\\\s*(,)\\\\s*","name":"punctuation.separator.parameter.css"},{"include":"#interpolation"},{"include":"#property_values"}]},{"match":"\\\\(","name":"punctuation.section.function.css"}]},"interpolation":{"begin":"(?:(\\\\{)[^\\\\S\\\\n]*)(?=[^;=]*[^\\\\S\\\\n]*\\\\})","beginCaptures":{"1":{"name":"meta.brace.curly"}},"end":"(?:[^\\\\S\\\\n]*(\\\\}))|\\\\n|$","endCaptures":{"1":{"name":"meta.brace.curly"}},"name":"meta.interpolation.stylus","patterns":[{"include":"#variable"},{"include":"#numeric"},{"include":"#string"},{"include":"#operator"}]},"language_constants":{"match":"\\\\b(true|false|null)\\\\b","name":"constant.language.stylus"},"language_keywords":{"patterns":[{"match":"(\\\\b|\\\\s)(return|else|for|unless|if|else)\\\\b","name":"keyword.control.stylus"},{"match":"(\\\\b|\\\\s)(!important|in|is defined|is a)\\\\b","name":"keyword.other.stylus"},{"match":"\\\\barguments\\\\b","name":"variable.language.stylus"}]},"numeric":{"patterns":[{"captures":{"1":{"name":"keyword.other.unit.css"}},"match":"(?<!\\\\w|-)(?:(?:-|\\\\+)?(?:[0-9]+(?:\\\\.[0-9]+)?)|(?:\\\\.[0-9]+))((?:px|pt|ch|cm|mm|in|r?em|ex|pc|deg|g?rad|dpi|dpcm|dppx|fr|ms|s|turn|vh|vmax|vmin|vw)\\\\b|%)?","name":"constant.numeric.css"}]},"operator":{"patterns":[{"match":"((?:\\\\?|:|!|~|\\\\+|(\\\\s-\\\\s)|(?:\\\\*)?\\\\*|\\\\/|%|(\\\\.)?\\\\.\\\\.|<|>|(?:=|:|\\\\?|\\\\+|-|\\\\*|\\\\/|%|<|>)?=|!=)|\\\\b(?:in|is(?:nt)?|(?<!:)not|or|and)\\\\b)","name":"keyword.operator.stylus"},{"include":"#char_escape"}]},"property":{"begin":"(?:\\\\G\\\\s*(?:(-webkit-[-A-Za-z]+|-moz-[-A-Za-z]+|-o-[-A-Za-z]+|-ms-[-A-Za-z]+|-khtml-[-A-Za-z]+|zoom|z-index|y|x|wrap|word-wrap|word-spacing|word-break|word|width|widows|white-space-collapse|white-space|white|weight|volume|voice-volume|voice-stress|voice-rate|voice-pitch-range|voice-pitch|voice-family|voice-duration|voice-balance|voice|visibility|vertical-align|variant|user-select|up|unicode-bidi|unicode-range|unicode|trim|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform|touch-action|top-width|top-style|top-right-radius|top-left-radius|top-color|top|timing-function|text-wrap|text-transform|text-shadow|text-replace|text-rendering|text-overflow|text-outline|text-justify|text-indent|text-height|text-emphasis|text-decoration|text-align-last|text-align|text|target-position|target-new|target-name|target|table-layout|tab-size|style-type|style-position|style-image|style|string-set|stretch|stress|stacking-strategy|stacking-shift|stacking-ruby|stacking|src|speed|speech-rate|speech|speak-punctuation|speak-numeral|speak-header|speak|span|spacing|space-collapse|space|sizing|size-adjust|size|shadow|respond-to|rule-width|rule-style|rule-color|rule|ruby-span|ruby-position|ruby-overhang|ruby-align|ruby|rows|rotation-point|rotation|role|right-width|right-style|right-color|right|richness|rest-before|rest-after|rest|resource|resize|reset|replace|repeat|rendering-intent|rate|radius|quotes|punctuation-trim|punctuation|property|profile|presentation-level|presentation|position|pointer-events|point|play-state|play-during|play-count|pitch-range|pitch|phonemes|pause-before|pause-after|pause|page-policy|page-break-inside|page-break-before|page-break-after|page|padding-top|padding-right|padding-left|padding-bottom|padding|pack|overhang|overflow-y|overflow-x|overflow-style|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|origin|orientation|orient|ordinal-group|order|opacity|offset|numeral|new|nav-up|nav-right|nav-left|nav-index|nav-down|nav|name|move-to|model|mix-blend-mode|min-width|min-height|min|max-width|max-height|max|marquee-style|marquee-speed|marquee-play-count|marquee-direction|marquee|marks|mark-before|mark-after|mark|margin-top|margin-right|margin-left|margin-bottom|margin|mask-image|list-style-type|list-style-position|list-style-image|list-style|list|lines|line-stacking-strategy|line-stacking-shift|line-stacking-ruby|line-stacking|line-height|line-break|level|letter-spacing|length|left-width|left-style|left-color|left|label|justify-content|justify|iteration-count|inline-box-align|initial-value|initial-size|initial-before-align|initial-before-adjust|initial-after-align|initial-after-adjust|index|indent|increment|image-resolution|image-orientation|image|icon|hyphens|hyphenate-resource|hyphenate-lines|hyphenate-character|hyphenate-before|hyphenate-after|hyphenate|height|header|hanging-punctuation|gap|grid|grid-area|grid-auto-columns|grid-auto-flow|grid-auto-rows|grid-column|grid-column-end|grid-column-start|grid-row|grid-row-end|grid-row-start|grid-template|grid-template-areas|grid-template-columns|grid-template-rows|row-gap|gap|font-kerning|font-language-override|font-weight|font-variant-caps|font-variant|font-style|font-synthesis|font-stretch|font-size-adjust|font-size|font-family|font|float-offset|float|flex-wrap|flex-shrink|flex-grow|flex-group|flex-flow|flex-direction|flex-basis|flex|fit-position|fit|fill|filter|family|empty-cells|emphasis|elevation|duration|drop-initial-value|drop-initial-size|drop-initial-before-align|drop-initial-before-adjust|drop-initial-after-align|drop-initial-after-adjust|drop|down|dominant-baseline|display-role|display-model|display|direction|delay|decoration-break|decoration|cursor|cue-before|cue-after|cue|crop|counter-reset|counter-increment|counter|count|content|columns|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|column-break-before|column-break-after|column|color-profile|color|collapse|clip|clear|character|caption-side|break-inside|break-before|break-after|break|box-sizing|box-shadow|box-pack|box-orient|box-ordinal-group|box-lines|box-flex-group|box-flex|box-direction|box-decoration-break|box-align|box|bottom-width|bottom-style|bottom-right-radius|bottom-left-radius|bottom-color|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-length|border-left-width|border-left-style|border-left-color|border-left|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|bookmark-target|bookmark-level|bookmark-label|bookmark|binding|bidi|before|baseline-shift|baseline|balance|background-blend-mode|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-break|background-attachment|background|azimuth|attachment|appearance|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-duration|animation-direction|animation-delay|animation-fill-mode|animation|alignment-baseline|alignment-adjust|alignment|align-self|align-last|align-items|align-content|align|after|adjust|will-change)|(writing-mode|text-anchor|stroke-width|stroke-opacity|stroke-miterlimit|stroke-linejoin|stroke-linecap|stroke-dashoffset|stroke-dasharray|stroke|stop-opacity|stop-color|shape-rendering|marker-start|marker-mid|marker-end|lighting-color|kerning|image-rendering|glyph-orientation-vertical|glyph-orientation-horizontal|flood-opacity|flood-color|fill-rule|fill-opacity|fill|enable-background|color-rendering|color-interpolation-filters|color-interpolation|clip-rule|clip-path)|([a-zA-Z_-][a-zA-Z0-9_-]*))(?!([^\\\\S\\\\n]*&)|([^\\\\S\\\\n]*\\\\{))(?=:|([^\\\\S\\\\n]+[^\\\\s])))","beginCaptures":{"1":{"name":"support.type.property-name.css"},"2":{"name":"support.type.property-name.svg.css"},"3":{"name":"support.function.mixin.stylus"}},"end":"(;)|(?=\\\\n|\\\\}|$)","endCaptures":{"1":{"name":"punctuation.terminator.rule.css"}},"patterns":[{"include":"#property_value"}]},"property_value":{"begin":"\\\\G(?:(:)|(\\\\s))(\\\\s*)(?!&)","beginCaptures":{"1":{"name":"punctuation.separator.key-value.css"},"2":{"name":"punctuation.separator.key-value.css"}},"end":"(?=\\\\n|;|\\\\})","endCaptures":{"1":{"name":"punctuation.terminator.rule.css"}},"name":"meta.property-value.css","patterns":[{"include":"#property_values"},{"match":"[^\\\\n]+?"}]},"property_values":{"patterns":[{"include":"#function"},{"include":"#comment"},{"include":"#language_keywords"},{"include":"#language_constants"},{"match":"(?:(?=\\\\w)(?<![\\\\w-]))(wrap-reverse|wrap|whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|unicase|underline|ultra-expanded|ultra-condensed|transparent|transform|top|titling-caps|thin|thick|text-top|text-bottom|text|tb-rl|table-row-group|table-row|table-header-group|table-footer-group|table-column-group|table-column|table-cell|table|sw-resize|super|strict|stretch|step-start|step-end|static|square|space-between|space-around|space|solid|soft-light|small-caps|separate|semi-expanded|semi-condensed|se-resize|scroll|screen|saturation|s-resize|running|rtl|row-reverse|row-resize|row|round|right|ridge|reverse|repeat-y|repeat-x|repeat|relative|progressive|progress|pre-wrap|pre-line|pre|pointer|petite-caps|paused|pan-x|pan-left|pan-right|pan-y|pan-up|pan-down|padding-box|overline|overlay|outside|outset|optimizeSpeed|optimizeLegibility|opacity|oblique|nw-resize|nowrap|not-allowed|normal|none|no-repeat|no-drop|newspaper|ne-resize|n-resize|multiply|move|middle|medium|max-height|manipulation|main-size|luminosity|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|local|list-item|linear(?!-)|line-through|line-edge|line|lighter|lighten|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline-block|inline|inherit|infinite|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|hue|horizontal|hidden|help|hard-light|hand|groove|geometricPrecision|forwards|flex-start|flex-end|flex|fixed|extra-expanded|extra-condensed|expanded|exclusion|ellipsis|ease-out|ease-in-out|ease-in|ease|e-resize|double|dotted|distribute-space|distribute-letter|distribute-all-lines|distribute|disc|disabled|difference|default|decimal|dashed|darken|currentColor|crosshair|cover|content-box|contain|condensed|column-reverse|column|color-dodge|color-burn|color|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|border-box|bolder|bold|block|bidi-override|below|baseline|balance|backwards|auto|antialiased|always|alternate-reverse|alternate|all-small-caps|all-scroll|all-petite-caps|all|absolute)(?:(?<=\\\\w)(?![\\\\w-]))","name":"support.constant.property-value.css"},{"match":"(?:(?=\\\\w)(?<![\\\\w-]))(start|sRGB|square|round|optimizeSpeed|optimizeQuality|nonzero|miter|middle|linearRGB|geometricPrecision |evenodd |end |crispEdges|butt|bevel)(?:(?<=\\\\w)(?![\\\\w-]))","name":"support.constant.property-value.svg.css"},{"include":"#font_name"},{"include":"#numeric"},{"include":"#color"},{"include":"#string"},{"match":"\\\\!\\\\s*important","name":"keyword.other.important.css"},{"include":"#operator"},{"include":"#stylus_keywords"},{"include":"#property_variable"}]},"property_variable":{"patterns":[{"include":"#variable"},{"match":"(?<!^)(\\\\@[a-zA-Z_-][a-zA-Z0-9_-]*)","name":"variable.property.stylus"}]},"selector":{"patterns":[{"match":"(?:(?=\\\\w)(?<![\\\\w-]))(a|abbr|acronym|address|area|article|aside|audio|b|base|bdi|bdo|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|data|datalist|dd|del|details|dfn|dialog|div|dl|dt|em|embed|eventsource|fieldset|figure|figcaption|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|main|map|mark|math|menu|menuitem|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|picture|pre|progress|q|rb|rp|rt|rtc|ruby|s|samp|script|section|select|small|source|span|strike|strong|style|sub|summary|sup|svg|table|tbody|td|template|textarea|tfoot|th|thead|time|title|tr|track|tt|u|ul|var|video|wbr)(?:(?<=\\\\w)(?![\\\\w-]))","name":"entity.name.tag.css"},{"match":"(?:(?=\\\\w)(?<![\\\\w-]))(vkern|view|use|tspan|tref|title|textPath|text|symbol|switch|svg|style|stop|set|script|rect|radialGradient|polyline|polygon|pattern|path|mpath|missing-glyph|metadata|mask|marker|linearGradient|line|image|hkern|glyphRef|glyph|g|foreignObject|font-face-uri|font-face-src|font-face-name|font-face-format|font-face|font|filter|feTurbulence|feTile|feSpotLight|feSpecularLighting|fePointLight|feOffset|feMorphology|feMergeNode|feMerge|feImage|feGaussianBlur|feFuncR|feFuncG|feFuncB|feFuncA|feFlood|feDistantLight|feDisplacementMap|feDiffuseLighting|feConvolveMatrix|feComposite|feComponentTransfer|feColorMatrix|feBlend|ellipse|desc|defs|cursor|color-profile|clipPath|circle|animateTransform|animateMotion|animateColor|animate|altGlyphItem|altGlyphDef|altGlyph|a)(?:(?<=\\\\w)(?![\\\\w-]))","name":"entity.name.tag.svg.css"},{"match":"\\\\s*(\\\\,)\\\\s*","name":"meta.selector.stylus"},{"match":"\\\\*","name":"meta.selector.stylus"},{"captures":{"2":{"name":"entity.other.attribute-name.parent-selector-suffix.stylus"}},"match":"\\\\s*(\\\\&)([a-zA-Z0-9_-]+)\\\\s*","name":"meta.selector.stylus"},{"match":"\\\\s*(\\\\&)\\\\s*","name":"meta.selector.stylus"},{"captures":{"1":{"name":"punctuation.definition.entity.css"}},"match":"(\\\\.)[a-zA-Z0-9_-]+","name":"entity.other.attribute-name.class.css"},{"captures":{"1":{"name":"punctuation.definition.entity.css"}},"match":"(#)[a-zA-Z][a-zA-Z0-9_-]*","name":"entity.other.attribute-name.id.css"},{"captures":{"1":{"name":"punctuation.definition.entity.css"}},"match":"(:+)(after|before|content|first-letter|first-line|host|(-(moz|webkit|ms)-)?selection)\\\\b","name":"entity.other.attribute-name.pseudo-element.css"},{"captures":{"1":{"name":"punctuation.definition.entity.css"}},"match":"(:)((first|last)-child|(first|last|only)-of-type|empty|root|target|first|left|right)\\\\b","name":"entity.other.attribute-name.pseudo-class.css"},{"captures":{"1":{"name":"punctuation.definition.entity.css"}},"match":"(:)(checked|enabled|default|disabled|indeterminate|invalid|optional|required|valid)\\\\b","name":"entity.other.attribute-name.pseudo-class.ui-state.css"},{"begin":"((:)not)(\\\\()","beginCaptures":{"1":{"name":"entity.other.attribute-name.pseudo-class.css"},"2":{"name":"punctuation.definition.entity.css"},"3":{"name":"punctuation.section.function.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.css"}},"patterns":[{"include":"#selector"}]},{"captures":{"1":{"name":"entity.other.attribute-name.pseudo-class.css"},"2":{"name":"punctuation.definition.entity.css"},"3":{"name":"punctuation.section.function.css"},"4":{"name":"constant.numeric.css"},"5":{"name":"punctuation.section.function.css"}},"match":"((:)nth-(?:(?:last-)?child|(?:last-)?of-type))(\\\\()(\\\\-?(?:\\\\d+n?|n)(?:\\\\+\\\\d+)?|even|odd)(\\\\))"},{"captures":{"1":{"name":"entity.other.attribute-name.pseudo-class.css"},"2":{"name":"puncutation.definition.entity.css"},"3":{"name":"punctuation.section.function.css"},"4":{"name":"constant.language.css"},"5":{"name":"punctuation.section.function.css"}},"match":"((:)dir)\\\\s*(?:(\\\\()(ltr|rtl)?(\\\\)))?"},{"captures":{"1":{"name":"entity.other.attribute-name.pseudo-class.css"},"2":{"name":"puncutation.definition.entity.css"},"3":{"name":"punctuation.section.function.css"},"4":{"name":"constant.language.css"},"6":{"name":"punctuation.section.function.css"}},"match":"((:)lang)\\\\s*(?:(\\\\()(\\\\w+(-\\\\w+)?)?(\\\\)))?"},{"captures":{"1":{"name":"punctuation.definition.entity.css"}},"match":"(:)(active|hover|link|visited|focus)\\\\b","name":"entity.other.attribute-name.pseudo-class.css"},{"captures":{"1":{"name":"punctuation.definition.entity.css"}},"match":"(::)(shadow)\\\\b","name":"entity.other.attribute-name.pseudo-class.css"},{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"name":"entity.other.attribute-name.attribute.css"},"3":{"name":"punctuation.separator.operator.css"},"4":{"name":"string.unquoted.attribute-value.css"},"5":{"name":"string.quoted.double.attribute-value.css"},"6":{"name":"punctuation.definition.string.begin.css"},"7":{"name":"punctuation.definition.string.end.css"},"8":{"name":"punctuation.definition.entity.css"}},"match":"(?i)(\\\\[)\\\\s*(-?[_a-z\\\\\\\\[[:^ascii:]]][_a-z0-9\\\\-\\\\\\\\[[:^ascii:]]]*)(?:\\\\s*([~|^$*]?=)\\\\s*(?:(-?[_a-z\\\\\\\\[[:^ascii:]]][_a-z0-9\\\\-\\\\\\\\[[:^ascii:]]]*)|((?>(['\\"])(?:[^\\\\\\\\]|\\\\\\\\.)*?(\\\\6)))))?\\\\s*(\\\\])","name":"meta.attribute-selector.css"},{"include":"#interpolation"},{"include":"#variable"}]},"string":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.css"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.css"}},"name":"string.quoted.double.css","patterns":[{"match":"\\\\\\\\([a-fA-F0-9]{1,6}|.)","name":"constant.character.escape.css"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.css"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.css"}},"name":"string.quoted.single.css","patterns":[{"match":"\\\\\\\\([a-fA-F0-9]{1,6}|.)","name":"constant.character.escape.css"}]}]},"variable":{"match":"(\\\\$[a-zA-Z_-][a-zA-Z0-9_-]*)","name":"variable.stylus"},"variable_declaration":{"begin":"^[^\\\\S\\\\n]*(\\\\$?[a-zA-Z_-][a-zA-Z0-9_-]*)[^\\\\S\\\\n]*(\\\\=|\\\\?\\\\=|\\\\:\\\\=)","beginCaptures":{"1":{"name":"variable.stylus"},"2":{"name":"keyword.operator.stylus"}},"end":"(\\\\n)|(;)|(?=\\\\})","endCaptures":{"2":{"name":"punctuation.terminator.rule.css"}},"patterns":[{"include":"#property_values"}]}},"scopeName":"source.stylus","aliases":["styl"]}`)),_oe=[Coe]});var pj={};x(pj,{default:()=>xoe});var Boe,xoe,mj=_(()=>{Qe();hn();rt();Dg();Boe=Object.freeze(JSON.parse(`{"displayName":"Svelte","fileTypes":["svelte"],"injections":{"L:(meta.script.svelte | meta.style.svelte) (meta.lang.js | meta.lang.javascript) - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"source.js","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"source.js"}]}]},"L:(meta.script.svelte | meta.style.svelte) (meta.lang.ts | meta.lang.typescript) - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"source.ts","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"source.ts"}]}]},"L:(meta.script.svelte | meta.style.svelte) meta.lang.coffee - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"source.coffee","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"source.coffee"}]}]},"L:(source.ts, source.js, source.coffee)":{"patterns":[{"match":"(?<![_$./'\\"[:alnum:]])\\\\$(?=[_[:alpha:]][_$[:alnum:]]*)","name":"punctuation.definition.variable.svelte"},{"match":"(?<![_$./'\\"[:alnum:]])(\\\\$\\\\$)(?=props|restProps|slots)","name":"punctuation.definition.variable.svelte"}]},"L:meta.script.svelte - meta.lang - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"source.js","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"source.js"}]}]},"L:meta.style.svelte - meta.lang - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"source.css","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"source.css"}]}]},"L:meta.style.svelte meta.lang.css - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"source.css","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"source.css"}]}]},"L:meta.style.svelte meta.lang.less - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"source.css.less","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"source.css.less"}]}]},"L:meta.style.svelte meta.lang.postcss - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"source.css.postcss","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"source.css.postcss"}]}]},"L:meta.style.svelte meta.lang.sass - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"source.sass","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"source.sass"}]}]},"L:meta.style.svelte meta.lang.scss - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"source.css.scss","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"source.css.scss"}]}]},"L:meta.style.svelte meta.lang.stylus - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"source.stylus","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"source.stylus"}]}]},"L:meta.template.svelte - meta.lang - (meta source)":{"patterns":[{"begin":"(?<=>)\\\\s","end":"(?=</template)","patterns":[{"include":"#scope"}]}]},"L:meta.template.svelte meta.lang.pug - (meta source)":{"patterns":[{"begin":"(?<=>)(?!</)","contentName":"text.pug","end":"(?=</)","name":"meta.embedded.block.svelte","patterns":[{"include":"text.pug"}]}]}},"name":"svelte","patterns":[{"include":"#scope"}],"repository":{"attributes":{"patterns":[{"include":"#attributes-directives"},{"include":"#attributes-keyvalue"},{"include":"#attributes-interpolated"}]},"attributes-directives":{"begin":"(?<!<)(on|use|bind|transition|in|out|animate|let|class|style)(:)(?:((?:--)?[_$[:alpha:]][_\\\\-$[:alnum:]]*(?=\\\\s*=))|((?:--)?[_$[:alpha:]][_\\\\-$[:alnum:]]*))((\\\\|\\\\w+)*)","beginCaptures":{"1":{"patterns":[{"include":"#attributes-directives-keywords"}]},"2":{"name":"punctuation.definition.keyword.svelte"},"3":{"patterns":[{"include":"#attributes-directives-types-assigned"}]},"4":{"patterns":[{"include":"#attributes-directives-types"}]},"5":{"patterns":[{"match":"\\\\w+","name":"support.function.svelte"},{"match":"\\\\|","name":"punctuation.separator.svelte"}]}},"end":"(?=\\\\s*+[^=\\\\s])","name":"meta.directive.$1.svelte","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.key-value.svelte"}},"end":"(?<=[^\\\\s=])(?!\\\\s*=)|(?=/?>)","patterns":[{"include":"#attributes-value"}]}]},"attributes-directives-keywords":{"patterns":[{"match":"on|use|bind","name":"keyword.control.svelte"},{"match":"transition|in|out|animate","name":"keyword.other.animation.svelte"},{"match":"let","name":"storage.type.svelte"},{"match":"class|style","name":"entity.other.attribute-name.svelte"}]},"attributes-directives-types":{"patterns":[{"match":"(?<=(on):).*$","name":"entity.name.type.svelte"},{"match":"(?<=(bind):).*$","name":"variable.parameter.svelte"},{"match":"(?<=(use|transition|in|out|animate):).*$","name":"variable.function.svelte"},{"match":"(?<=(let|class|style):).*$","name":"variable.parameter.svelte"}]},"attributes-directives-types-assigned":{"patterns":[{"match":"(?<=(bind):)this$","name":"variable.language.svelte"},{"match":"(?<=(bind):).*$","name":"entity.name.type.svelte"},{"match":"(?<=(class):).*$","name":"entity.other.attribute-name.class.svelte"},{"match":"(?<=(style):).*$","name":"support.type.property-name.svelte"},{"include":"#attributes-directives-types"}]},"attributes-generics":{"begin":"(generics)(=)([\\"'])","beginCaptures":{"1":{"name":"entity.other.attribute-name.svelte"},"2":{"name":"punctuation.separator.key-value.svelte"},"3":{"name":"punctuation.definition.string.begin.svelte"}},"contentName":"meta.embedded.expression.svelte source.ts","end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.svelte"}},"patterns":[{"include":"#type-parameters"}]},"attributes-interpolated":{"begin":"(?<!:|=)\\\\s*({)","captures":{"1":{"name":"entity.other.attribute-name.svelte"}},"contentName":"meta.embedded.expression.svelte source.ts","end":"(\\\\})","patterns":[{"include":"source.ts"}]},"attributes-keyvalue":{"begin":"((?:--)?[_$[:alpha:]][_\\\\-$[:alnum:]]*)","beginCaptures":{"0":{"patterns":[{"match":"--.*","name":"support.type.property-name.svelte"},{"match":".*","name":"entity.other.attribute-name.svelte"}]}},"end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.$1.svelte","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.key-value.svelte"}},"end":"(?<=[^\\\\s=])(?!\\\\s*=)|(?=/?>)","patterns":[{"include":"#attributes-value"}]}]},"attributes-value":{"patterns":[{"include":"#interpolation"},{"captures":{"1":{"name":"punctuation.definition.string.begin.svelte"},"2":{"name":"constant.numeric.decimal.svelte"},"3":{"name":"punctuation.definition.string.end.svelte"},"4":{"name":"constant.numeric.decimal.svelte"}},"match":"(?:(['\\"])([0-9._]+[\\\\w%]{,4})(\\\\1))|(?:([0-9._]+[\\\\w%]{,4})(?=\\\\s|/?>))"},{"match":"([^\\\\s\\"'=<>\`/]|/(?!>))+","name":"string.unquoted.svelte","patterns":[{"include":"#interpolation"}]},{"begin":"(['\\"])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.svelte"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.svelte"}},"name":"string.quoted.svelte","patterns":[{"include":"#interpolation"}]}]},"comments":{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.svelte"}},"end":"-->","name":"comment.block.svelte","patterns":[{"begin":"(@)(component)","beginCaptures":{"1":{"name":"punctuation.definition.keyword.svelte"},"2":{"name":"storage.type.class.component.svelte keyword.declaration.class.component.svelte"}},"contentName":"comment.block.documentation.svelte","end":"(?=-->)","patterns":[{"captures":{"0":{"patterns":[{"include":"text.html.markdown"}]}},"match":".*?(?=-->)"},{"include":"text.html.markdown"}]},{"match":"\\\\G-?>|<!--(?!>)|<!-(?=-->)|--!>","name":"invalid.illegal.characters-not-allowed-here.svelte"}]},"destructuring":{"patterns":[{"begin":"(?={)","end":"(?<=})","name":"meta.embedded.expression.svelte source.ts","patterns":[{"include":"source.ts#object-binding-pattern"}]},{"begin":"(?=\\\\[)","end":"(?<=\\\\])","name":"meta.embedded.expression.svelte source.ts","patterns":[{"include":"source.ts#array-binding-pattern"}]}]},"destructuring-const":{"patterns":[{"begin":"(?={)","end":"(?<=})","name":"meta.embedded.expression.svelte source.ts","patterns":[{"include":"source.ts#object-binding-pattern-const"}]},{"begin":"(?=\\\\[)","end":"(?<=\\\\])","name":"meta.embedded.expression.svelte source.ts","patterns":[{"include":"source.ts#array-binding-pattern-const"}]}]},"interpolation":{"patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.svelte"}},"contentName":"meta.embedded.expression.svelte source.ts","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.svelte"}},"patterns":[{"begin":"\\\\G\\\\s*(?={)","end":"(?<=})","patterns":[{"include":"source.ts#object-literal"}]},{"include":"source.ts"}]}]},"scope":{"patterns":[{"include":"#comments"},{"include":"#special-tags"},{"include":"#tags"},{"include":"#interpolation"},{"begin":"(?<=>|})","end":"(?=<|{)","name":"text.svelte"}]},"special-tags":{"patterns":[{"include":"#special-tags-void"},{"include":"#special-tags-block-begin"},{"include":"#special-tags-block-end"}]},"special-tags-block-begin":{"begin":"({)\\\\s*(#([a-z]*))","beginCaptures":{"1":{"name":"punctuation.definition.block.begin.svelte"},"2":{"patterns":[{"include":"#special-tags-keywords"}]}},"end":"(})","endCaptures":{"0":{"name":"punctuation.definition.block.end.svelte"}},"name":"meta.special.$3.svelte meta.special.start.svelte","patterns":[{"include":"#special-tags-modes"}]},"special-tags-block-end":{"begin":"({)\\\\s*(/([a-z]*))","beginCaptures":{"1":{"name":"punctuation.definition.block.begin.svelte"},"2":{"patterns":[{"include":"#special-tags-keywords"}]}},"end":"(})","endCaptures":{"1":{"name":"punctuation.definition.block.end.svelte"}},"name":"meta.special.$3.svelte meta.special.end.svelte"},"special-tags-keywords":{"captures":{"1":{"name":"punctuation.definition.keyword.svelte"},"2":{"patterns":[{"match":"if|else\\\\s+if|else","name":"keyword.control.conditional.svelte"},{"match":"each|key","name":"keyword.control.svelte"},{"match":"await|then|catch","name":"keyword.control.flow.svelte"},{"match":"snippet","name":"keyword.control.svelte"},{"match":"html","name":"keyword.other.svelte"},{"match":"render","name":"keyword.other.svelte"},{"match":"debug","name":"keyword.other.debugger.svelte"},{"match":"const","name":"storage.type.svelte"}]}},"match":"([#@/:])(else\\\\s+if|[a-z]*)"},"special-tags-modes":{"patterns":[{"begin":"(?<=(if|key|then|catch|snippet|html|render).*?)\\\\G","end":"(?=})","name":"meta.embedded.expression.svelte source.ts","patterns":[{"include":"source.ts"}]},{"begin":"(?<=const.*?)\\\\G","end":"(?=})","patterns":[{"include":"#destructuring-const"},{"begin":"\\\\G\\\\s*([_$[:alpha:]][_$[:alnum:]]+)\\\\s*","beginCaptures":{"1":{"name":"variable.other.constant.svelte"}},"end":"(?=\\\\=)"},{"begin":"(?=\\\\=)","end":"(?=})","name":"meta.embedded.expression.svelte source.ts","patterns":[{"include":"source.ts"}]}]},{"begin":"(?<=each.*?)\\\\G","end":"(?=})","patterns":[{"begin":"\\\\G\\\\s*?(?=\\\\S)","contentName":"meta.embedded.expression.svelte source.ts","end":"(?=(?:(?:^\\\\s*|\\\\s+)(as))|\\\\s*(}|,))","patterns":[{"include":"source.ts"}]},{"begin":"(as)|(?=}|,)","beginCaptures":{"1":{"name":"keyword.control.as.svelte"}},"end":"(?=})","patterns":[{"include":"#destructuring"},{"begin":"\\\\(","captures":{"0":{"name":"meta.brace.round.svelte"}},"contentName":"meta.embedded.expression.svelte source.ts","end":"\\\\)|(?=})","patterns":[{"include":"source.ts"}]},{"captures":{"1":{"name":"meta.embedded.expression.svelte source.ts","patterns":[{"include":"source.ts"}]}},"match":"(\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\s*)"},{"match":",","name":"punctuation.separator.svelte"}]}]},{"begin":"(?<=await.*?)\\\\G","end":"(?=})","patterns":[{"begin":"\\\\G\\\\s*?(?=\\\\S)","contentName":"meta.embedded.expression.svelte source.ts","end":"\\\\s+(then)|(?=})","endCaptures":{"1":{"name":"keyword.control.flow.svelte"}},"patterns":[{"include":"source.ts"}]},{"begin":"(?<=then\\\\b)","contentName":"meta.embedded.expression.svelte source.ts","end":"(?=})","patterns":[{"include":"source.ts"}]}]},{"begin":"(?<=debug.*?)\\\\G","end":"(?=})","patterns":[{"captures":{"0":{"name":"meta.embedded.expression.svelte source.ts","patterns":[{"include":"source.ts"}]}},"match":"[_$[:alpha:]][_$[:alnum:]]*"},{"match":",","name":"punctuation.separator.svelte"}]}]},"special-tags-void":{"begin":"({)\\\\s*((?:[@:])(else\\\\s+if|[a-z]*))","beginCaptures":{"1":{"name":"punctuation.definition.block.begin.svelte"},"2":{"patterns":[{"include":"#special-tags-keywords"}]}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.end.svelte"}},"name":"meta.special.$3.svelte","patterns":[{"include":"#special-tags-modes"}]},"tags":{"patterns":[{"include":"#tags-lang"},{"include":"#tags-void"},{"include":"#tags-general-end"},{"include":"#tags-general-start"}]},"tags-end-node":{"captures":{"1":{"name":"meta.tag.end.svelte punctuation.definition.tag.begin.svelte"},"2":{"name":"meta.tag.end.svelte","patterns":[{"include":"#tags-name"}]},"3":{"name":"meta.tag.end.svelte punctuation.definition.tag.end.svelte"},"4":{"name":"meta.tag.start.svelte punctuation.definition.tag.end.svelte"}},"match":"(</)(.*?)\\\\s*(>)|(/>)"},"tags-general-end":{"begin":"(</)([^/\\\\s>]*)","beginCaptures":{"1":{"name":"meta.tag.end.svelte punctuation.definition.tag.begin.svelte"},"2":{"name":"meta.tag.end.svelte","patterns":[{"include":"#tags-name"}]}},"end":"(>)","endCaptures":{"1":{"name":"meta.tag.end.svelte punctuation.definition.tag.end.svelte"}},"name":"meta.scope.tag.$2.svelte"},"tags-general-start":{"begin":"(<)([^/\\\\s>/]*)","beginCaptures":{"0":{"patterns":[{"include":"#tags-start-node"}]}},"end":"(/?>)","endCaptures":{"1":{"name":"meta.tag.start.svelte punctuation.definition.tag.end.svelte"}},"name":"meta.scope.tag.$2.svelte","patterns":[{"include":"#tags-start-attributes"}]},"tags-lang":{"begin":"<(script|style|template)","beginCaptures":{"0":{"patterns":[{"include":"#tags-start-node"}]}},"end":"</\\\\1\\\\s*>|/>","endCaptures":{"0":{"patterns":[{"include":"#tags-end-node"}]}},"name":"meta.$1.svelte","patterns":[{"begin":"\\\\G(?=\\\\s*[^>]*?(type|lang)\\\\s*=\\\\s*(['\\"]|)(?:text/)?(\\\\w+)\\\\2)","end":"(?=</|/>)","name":"meta.lang.$3.svelte","patterns":[{"include":"#tags-lang-start-attributes"}]},{"include":"#tags-lang-start-attributes"}]},"tags-lang-start-attributes":{"begin":"\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.svelte"}},"name":"meta.tag.start.svelte","patterns":[{"include":"#attributes-generics"},{"include":"#attributes"}]},"tags-name":{"patterns":[{"captures":{"1":{"name":"keyword.control.svelte"},"2":{"name":"punctuation.definition.keyword.svelte"},"3":{"name":"entity.name.tag.svelte"}},"match":"(svelte)(:)([a-z][\\\\w:-]*)"},{"match":"slot","name":"keyword.control.svelte"},{"captures":{"1":{"patterns":[{"match":"\\\\w+","name":"support.class.component.svelte"},{"match":"\\\\.","name":"punctuation.definition.keyword.svelte"}]},"2":{"name":"support.class.component.svelte"}},"match":"([\\\\w]+(?:\\\\.[\\\\w]+)+)|([A-Z][\\\\w]+)"},{"match":"[a-z][\\\\w0-9:]*-[\\\\w0-9:-]*","name":"meta.tag.custom.svelte entity.name.tag.svelte"},{"match":"[a-z][\\\\w0-9:-]*","name":"entity.name.tag.svelte"}]},"tags-start-attributes":{"begin":"\\\\G","end":"(?=/?>)","name":"meta.tag.start.svelte","patterns":[{"include":"#attributes"}]},"tags-start-node":{"captures":{"1":{"name":"punctuation.definition.tag.begin.svelte"},"2":{"patterns":[{"include":"#tags-name"}]}},"match":"(<)([^/\\\\s>/]*)","name":"meta.tag.start.svelte"},"tags-void":{"begin":"(<)(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.svelte"},"2":{"name":"entity.name.tag.svelte"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.begin.svelte"}},"name":"meta.tag.void.svelte","patterns":[{"include":"#attributes"}]},"type-parameters":{"name":"meta.type.parameters.ts","patterns":[{"include":"source.ts#comment"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends|in|out|const)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},{"include":"source.ts#type"},{"include":"source.ts#punctuation-comma"},{"match":"(=)(?!>)","name":"keyword.operator.assignment.ts"}]}},"scopeName":"source.svelte","embeddedLangs":["javascript","typescript","css","postcss"],"embeddedLangsLazy":["coffee","stylus","sass","scss","less","pug","markdown"]}`)),xoe=[...J,...Ge,...ue,...KA,Boe]});var gj={};x(gj,{default:()=>Eoe});var voe,Eoe,fj=_(()=>{voe=Object.freeze(JSON.parse('{"displayName":"Swift","fileTypes":["swift"],"firstLineMatch":"^#!/.*\\\\bswift","name":"swift","patterns":[{"include":"#root"}],"repository":{"async-throws":{"captures":{"1":{"name":"invalid.illegal.await-must-precede-throws.swift"},"2":{"name":"storage.modifier.exception.swift"},"3":{"name":"storage.modifier.async.swift"}},"match":"\\\\b(?:(throws\\\\s+async|rethrows\\\\s+async)|(throws|rethrows)|(async))\\\\b"},"attributes":{"patterns":[{"begin":"((@)available)(\\\\()","beginCaptures":{"1":{"name":"storage.modifier.attribute.swift"},"2":{"name":"punctuation.definition.attribute.swift"},"3":{"name":"punctuation.definition.arguments.begin.swift"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.swift"}},"name":"meta.attribute.available.swift","patterns":[{"captures":{"1":{"name":"keyword.other.platform.os.swift"},"2":{"name":"constant.numeric.swift"}},"match":"\\\\b(swift|(?:iOS|macOS|OSX|watchOS|tvOS|visionOS|UIKitForMac)(?:ApplicationExtension)?)\\\\b(?:\\\\s+([0-9]+(?:\\\\.[0-9]+)*\\\\b))?"},{"begin":"\\\\b(introduced|deprecated|obsoleted)\\\\s*(:)\\\\s*","beginCaptures":{"1":{"name":"keyword.other.swift"},"2":{"name":"punctuation.separator.key-value.swift"}},"end":"(?!\\\\G)","patterns":[{"match":"\\\\b[0-9]+(?:\\\\.[0-9]+)*\\\\b","name":"constant.numeric.swift"}]},{"begin":"\\\\b(message|renamed)\\\\s*(:)\\\\s*(?=\\")","beginCaptures":{"1":{"name":"keyword.other.swift"},"2":{"name":"punctuation.separator.key-value.swift"}},"end":"(?!\\\\G)","patterns":[{"include":"#literals"}]},{"captures":{"1":{"name":"keyword.other.platform.all.swift"},"2":{"name":"keyword.other.swift"},"3":{"name":"invalid.illegal.character-not-allowed-here.swift"}},"match":"(?:(\\\\*)|\\\\b(deprecated|unavailable|noasync)\\\\b)\\\\s*(.*?)(?=[,)])"}]},{"begin":"((@)objc)(\\\\()","beginCaptures":{"1":{"name":"storage.modifier.attribute.swift"},"2":{"name":"punctuation.definition.attribute.swift"},"3":{"name":"punctuation.definition.arguments.begin.swift"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.swift"}},"name":"meta.attribute.objc.swift","patterns":[{"captures":{"1":{"name":"invalid.illegal.missing-colon-after-selector-piece.swift"}},"match":"\\\\w*(?::(?:\\\\w*:)*(\\\\w*))?","name":"entity.name.function.swift"}]},{"begin":"(@)(?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)","beginCaptures":{"0":{"name":"storage.modifier.attribute.swift"},"1":{"name":"punctuation.definition.attribute.swift"},"2":{"name":"punctuation.definition.identifier.swift"},"3":{"name":"punctuation.definition.identifier.swift"}},"end":"(?!\\\\G\\\\()","name":"meta.attribute.swift","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.arguments.begin.swift"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.swift"}},"name":"meta.arguments.attribute.swift","patterns":[{"include":"#expressions"}]}]}]},"builtin-functions":{"patterns":[{"match":"(?<=\\\\.)(?:s(?:ort(?:ed)?|plit)|contains|index|partition|f(?:i(?:lter|rst)|orEach|latMap)|with(?:MutableCharacters|CString|U(?:nsafe(?:Mutable(?:BufferPointer|Pointer(?:s|To(?:Header|Elements)))|BufferPointer)|TF8Buffer))|m(?:in|a(?:p|x)))(?=\\\\s*[({])\\\\b","name":"support.function.swift"},{"match":"(?<=\\\\.)(?:s(?:ymmetricDifference|t(?:oreBytes|arts|ride)|ortInPlace|u(?:ccessor|ffix|btract(?:ing|InPlace|WithOverflow)?)|quareRoot|amePosition)|h(?:oldsUnique(?:Reference|OrPinnedReference)|as(?:Suffix|Prefix))|ne(?:gate(?:d)?|xt)|c(?:o(?:untByEnumerating|py(?:Bytes)?)|lamp(?:ed)?|reate)|t(?:o(?:IntMax|Opaque|UIntMax)|ake(?:RetainedValue|UnretainedValue)|r(?:uncatingRemainder|a(?:nscodedLength|ilSurrogate)))|i(?:s(?:MutableAndUniquelyReferenced(?:OrPinned)?|S(?:trictSu(?:perset(?:Of)?|bset(?:Of)?)|u(?:perset(?:Of)?|bset(?:Of)?))|Continuation|T(?:otallyOrdered|railSurrogate)|Disjoint(?:With)?|Unique(?:Reference|lyReferenced(?:OrPinned)?)|Equal|Le(?:ss(?:ThanOrEqualTo)?|adSurrogate))|n(?:sert(?:ContentsOf)?|tersect(?:ion|InPlace)?|itialize(?:Memory|From)?|dex(?:Of|ForKey)))|o(?:verlaps|bjectAt)|d(?:i(?:stance(?:To)?|vide(?:d|WithOverflow)?)|e(?:s(?:cendant|troy)|code(?:CString)?|initialize|alloc(?:ate(?:Capacity)?)?)|rop(?:First|Last))|u(?:n(?:ion(?:InPlace)?|derestimateCount|wrappedOrError)|p(?:date(?:Value)?|percased))|join(?:ed|WithSeparator)|p(?:op(?:First|Last)|ass(?:Retained|Unretained)|re(?:decessor|fix))|e(?:scape(?:d)?|n(?:code|umerate(?:d)?)|lementsEqual|xclusiveOr(?:InPlace)?)|f(?:orm(?:Remainder|S(?:ymmetricDifference|quareRoot)|TruncatingRemainder|In(?:tersection|dex)|Union)|latten|rom(?:CString(?:RepairingIllFormedUTF8)?|Opaque))|w(?:i(?:thMemoryRebound|dth)|rite(?:To)?)|l(?:o(?:wercased|ad)|e(?:adSurrogate|xicographical(?:Compare|lyPrecedes)))|a(?:ss(?:ign(?:BackwardFrom|From)?|umingMemoryBound)|d(?:d(?:ing(?:Product)?|Product|WithOverflow)?|vanced(?:By)?)|utorelease|ppend(?:ContentsOf)?|lloc(?:ate)?|bs)|r(?:ound(?:ed)?|e(?:serveCapacity|tain|duce|place(?:Range|Subrange)?|verse(?:d)?|quest(?:NativeBuffer|UniqueMutableBackingBuffer)|lease|m(?:ove(?:Range|Subrange|Value(?:ForKey)?|First|Last|A(?:tIndex|ll))?|ainder(?:WithOverflow)?)))|ge(?:nerate|t(?:Objects|Element))|m(?:in(?:imum(?:Magnitude)?|Element)|ove(?:Initialize(?:Memory|BackwardFrom|From)?|Assign(?:From)?)?|ultipl(?:y(?:WithOverflow)?|ied)|easure|a(?:ke(?:Iterator|Description)|x(?:imum(?:Magnitude)?|Element)))|bindMemory)(?=\\\\s*\\\\()","name":"support.function.swift"},{"match":"(?<=\\\\.)(?:s(?:uperclassMirror|amePositionIn|tartsWith)|nextObject|c(?:haracterAtIndex|o(?:untByEnumeratingWithState|pyWithZone)|ustom(?:Mirror|PlaygroundQuickLook))|is(?:EmptyInput|ASCII)|object(?:Enumerator|ForKey|AtIndex)|join|put|keyEnumerator|withUnsafeMutablePointerToValue|length|getMirror|m(?:oveInitializeAssignFrom|ember))(?=\\\\s*\\\\()","name":"support.function.swift"}]},"builtin-global-functions":{"patterns":[{"begin":"\\\\b(type)(\\\\()\\\\s*(of)(:)","beginCaptures":{"1":{"name":"support.function.dynamic-type.swift"},"2":{"name":"punctuation.definition.arguments.begin.swift"},"3":{"name":"support.variable.parameter.swift"},"4":{"name":"punctuation.separator.argument-label.begin.swift"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.swift"}},"patterns":[{"include":"#expressions"}]},{"match":"\\\\b(?:anyGenerator|autoreleasepool)(?=\\\\s*[({])\\\\b","name":"support.function.swift"},{"match":"\\\\b(?:s(?:tride(?:of(?:Value)?)?|izeof(?:Value)?|equence|wap)|numericCast|transcode|is(?:UniquelyReferenced(?:NonObjC)?|KnownUniquelyReferenced)|zip|d(?:ump|ebugPrint)|unsafe(?:BitCast|Downcast|Unwrap|Address(?:Of)?)|pr(?:int|econdition(?:Failure)?)|fatalError|with(?:Unsafe(?:MutablePointer|Pointer)|ExtendedLifetime|VaList)|a(?:ssert(?:ionFailure)?|lignof(?:Value)?|bs)|re(?:peatElement|adLine)|getVaList|m(?:in|ax))(?=\\\\s*\\\\()","name":"support.function.swift"},{"match":"\\\\b(?:s(?:ort|uffix|pli(?:ce|t))|insert|overlaps|d(?:istance|rop(?:First|Last))|join|prefix|extend|withUnsafe(?:MutablePointers|Pointers)|lazy|advance|re(?:flect|move(?:Range|Last|A(?:tIndex|ll))))(?=\\\\s*\\\\()","name":"support.function.swift"}]},"builtin-properties":{"patterns":[{"match":"(?<=^Process\\\\.|\\\\WProcess\\\\.|^CommandLine\\\\.|\\\\WCommandLine\\\\.)(arguments|argc|unsafeArgv)","name":"support.variable.swift"},{"match":"(?<=\\\\.)(?:s(?:t(?:artIndex|ri(?:ngValue|de))|i(?:ze|gn(?:BitIndex|ificand(?:Bit(?:Count|Pattern)|Width)?|alingNaN)?)|u(?:perclassMirror|mmary|bscriptBaseAddress))|h(?:eader|as(?:hValue|PointerRepresentation))|n(?:ulTerminatedUTF8|ext(?:Down|Up)|a(?:n|tiveOwner))|c(?:haracters|ount(?:TrailingZeros)?|ustom(?:Mirror|PlaygroundQuickLook)|apacity)|i(?:s(?:S(?:ign(?:Minus|aling(?:NaN)?)|ubnormal)|N(?:ormal|aN)|Canonical|Infinite|Zero|Empty|Finite|ASCII)|n(?:dices|finity)|dentity)|owner|de(?:scription|bugDescription)|u(?:n(?:safelyUnwrapped|icodeScalar(?:s)?|derestimatedCount)|tf(?:16|8(?:Start|C(?:String|odeUnitCount))?)|intValue|ppercaseString|lp(?:OfOne)?)|p(?:i|ointee)|e(?:ndIndex|lements|xponent(?:Bit(?:Count|Pattern))?)|value(?:s)?|keys|quietNaN|f(?:irst(?:ElementAddress(?:IfContiguous)?)?|loatingPointClass)|l(?:ittleEndian|owercaseString|eastNo(?:nzeroMagnitude|rmalMagnitude)|a(?:st|zy))|a(?:l(?:ignment|l(?:ocatedElementCount|Zeros))|rray(?:PropertyIsNativeTypeChecked)?)|ra(?:dix|wValue)|greatestFiniteMagnitude|m(?:in|emory|ax)|b(?:yteS(?:ize|wapped)|i(?:nade|tPattern|gEndian)|uffer|ase(?:Address)?))\\\\b","name":"support.variable.swift"},{"match":"(?<=\\\\.)(?:boolValue|disposition|end|objectIdentifier|quickLookObject|start|valueType)\\\\b","name":"support.variable.swift"},{"match":"(?<=\\\\.)(?:s(?:calarValue|i(?:ze|gnalingNaN)|o(?:und|me)|uppressed|prite|et)|n(?:one|egative(?:Subnormal|Normal|Infinity|Zero))|c(?:ol(?:or|lection)|ustomized)|t(?:o(?:NearestOr(?:Even|AwayFromZero)|wardZero)|uple|ext)|i(?:nt|mage)|optional|d(?:ictionary|o(?:uble|wn))|u(?:Int|p|rl)|p(?:o(?:sitive(?:Subnormal|Normal|Infinity|Zero)|int)|lus)|e(?:rror|mptyInput)|view|quietNaN|float|a(?:ttributedString|wayFromZero)|r(?:ectangle|ange)|generated|minus|b(?:ool|ezierPath))\\\\b","name":"support.variable.swift"}]},"builtin-types":{"patterns":[{"include":"#builtin-types-builtin-class-type"},{"include":"#builtin-types-builtin-enum-type"},{"include":"#builtin-types-builtin-protocol-type"},{"include":"#builtin-types-builtin-struct-type"},{"include":"#builtin-types-builtin-typealias"},{"match":"\\\\bAny\\\\b","name":"support.type.any.swift"}]},"builtin-types-builtin-class-type":{"match":"\\\\b(Managed(Buffer|ProtoBuffer)|NonObjectiveCBase|AnyGenerator)\\\\b","name":"support.class.swift"},"builtin-types-builtin-enum-type":{"patterns":[{"match":"\\\\b(?:CommandLine|Process(?=\\\\.))\\\\b","name":"support.constant.swift"},{"match":"\\\\bNever\\\\b","name":"support.constant.never.swift"},{"match":"\\\\b(?:ImplicitlyUnwrappedOptional|Representation|MemoryLayout|FloatingPointClassification|SetIndexRepresentation|SetIteratorRepresentation|FloatingPointRoundingRule|UnicodeDecodingResult|Optional|DictionaryIndexRepresentation|AncestorRepresentation|DisplayStyle|PlaygroundQuickLook|Never|FloatingPointSign|Bit|DictionaryIteratorRepresentation)\\\\b","name":"support.type.swift"},{"match":"\\\\b(?:MirrorDisposition|QuickLookObject)\\\\b","name":"support.type.swift"}]},"builtin-types-builtin-protocol-type":{"patterns":[{"match":"\\\\b(?:Ra(?:n(?:domAccess(?:Collection|Indexable)|geReplaceable(?:Collection|Indexable))|wRepresentable)|M(?:irrorPath|utable(?:Collection|Indexable))|Bi(?:naryFloatingPoint|twiseOperations|directional(?:Collection|Indexable))|S(?:tr(?:ideable|eamable)|igned(?:Number|Integer)|e(?:tAlgebra|quence))|Hashable|C(?:o(?:llection|mparable)|ustom(?:Reflectable|StringConvertible|DebugStringConvertible|PlaygroundQuickLookable|LeafReflectable)|VarArg)|TextOutputStream|I(?:n(?:teger(?:Arithmetic)?|dexable(?:Base)?)|teratorProtocol)|OptionSet|Un(?:signedInteger|icodeCodec)|E(?:quatable|rror|xpressibleBy(?:BooleanLiteral|String(?:Interpolation|Literal)|NilLiteral|IntegerLiteral|DictionaryLiteral|UnicodeScalarLiteral|ExtendedGraphemeClusterLiteral|FloatLiteral|ArrayLiteral))|FloatingPoint|L(?:osslessStringConvertible|azy(?:SequenceProtocol|CollectionProtocol))|A(?:nyObject|bsoluteValuable))\\\\b","name":"support.type.swift"},{"match":"\\\\b(?:Ran(?:domAccessIndexType|geReplaceableCollectionType)|GeneratorType|M(?:irror(?:Type|PathType)|utable(?:Sliceable|CollectionType))|B(?:i(?:twiseOperationsType|directionalIndexType)|oolean(?:Type|LiteralConvertible))|S(?:tring(?:InterpolationConvertible|LiteralConvertible)|i(?:nkType|gned(?:NumberType|IntegerType))|e(?:tAlgebraType|quenceType)|liceable)|NilLiteralConvertible|C(?:ollectionType|VarArgType)|Inte(?:rvalType|ger(?:Type|LiteralConvertible|ArithmeticType))|O(?:utputStreamType|ptionSetType)|DictionaryLiteralConvertible|Un(?:signedIntegerType|icode(?:ScalarLiteralConvertible|CodecType))|E(?:rrorType|xten(?:sibleCollectionType|dedGraphemeClusterLiteralConvertible))|F(?:orwardIndexType|loat(?:ingPointType|LiteralConvertible))|A(?:nyCollectionType|rrayLiteralConvertible))\\\\b","name":"support.type.swift"}]},"builtin-types-builtin-struct-type":{"patterns":[{"match":"\\\\b(?:R(?:e(?:peat(?:ed)?|versed(?:RandomAccess(?:Collection|Index)|Collection|Index))|an(?:domAccessSlice|ge(?:Replaceable(?:RandomAccessSlice|BidirectionalSlice|Slice)|Generator)?))|Generator(?:Sequence|OfOne)|M(?:irror|utable(?:Ran(?:domAccessSlice|geReplaceable(?:RandomAccessSlice|BidirectionalSlice|Slice))|BidirectionalSlice|Slice)|anagedBufferPointer)|B(?:idirectionalSlice|ool)|S(?:t(?:aticString|ri(?:ng|deT(?:hrough(?:Generator|Iterator)?|o(?:Generator|Iterator)?)))|et(?:I(?:ndex|terator))?|lice)|HalfOpenInterval|C(?:haracter(?:View)?|o(?:ntiguousArray|untable(?:Range|ClosedRange)|llectionOfOne)|OpaquePointer|losed(?:Range(?:I(?:ndex|terator))?|Interval)|VaListPointer)|I(?:n(?:t(?:16|8|32|64)?|d(?:ices|ex(?:ing(?:Generator|Iterator))?))|terator(?:Sequence|OverOne)?)|Zip2(?:Sequence|Iterator)|O(?:paquePointer|bjectIdentifier)|D(?:ictionary(?:I(?:ndex|terator)|Literal)?|ouble|efault(?:RandomAccessIndices|BidirectionalIndices|Indices))|U(?:n(?:safe(?:RawPointer|Mutable(?:RawPointer|BufferPointer|Pointer)|BufferPointer(?:Generator|Iterator)?|Pointer)|icodeScalar(?:View)?|foldSequence|managed)|TF(?:16(?:View)?|8(?:View)?|32)|Int(?:16|8|32|64)?)|Join(?:Generator|ed(?:Sequence|Iterator))|PermutationGenerator|E(?:numerate(?:Generator|Sequence|d(?:Sequence|Iterator))|mpty(?:Generator|Collection|Iterator))|Fl(?:oat(?:80)?|atten(?:Generator|BidirectionalCollection(?:Index)?|Sequence|Collection(?:Index)?|Iterator))|L(?:egacyChildren|azy(?:RandomAccessCollection|Map(?:RandomAccessCollection|Generator|BidirectionalCollection|Sequence|Collection|Iterator)|BidirectionalCollection|Sequence|Collection|Filter(?:Generator|BidirectionalCollection|Sequence|Collection|I(?:ndex|terator))))|A(?:ny(?:RandomAccessCollection|Generator|BidirectionalCollection|Sequence|Hashable|Collection|I(?:ndex|terator))|utoreleasingUnsafeMutablePointer|rray(?:Slice)?))\\\\b","name":"support.type.swift"},{"match":"\\\\b(?:R(?:everse(?:RandomAccess(?:Collection|Index)|Collection|Index)|awByte)|Map(?:Generator|Sequence|Collection)|S(?:inkOf|etGenerator)|Zip2Generator|DictionaryGenerator|Filter(?:Generator|Sequence|Collection(?:Index)?)|LazyForwardCollection|Any(?:RandomAccessIndex|BidirectionalIndex|Forward(?:Collection|Index)))\\\\b","name":"support.type.swift"}]},"builtin-types-builtin-typealias":{"patterns":[{"match":"\\\\b(?:Raw(?:Significand|Exponent|Value)|B(?:ooleanLiteralType|uffer|ase)|S(?:t(?:orage|r(?:i(?:ngLiteralType|de)|eam(?:1|2)))|ubSequence)|NativeBuffer|C(?:hild(?:ren)?|Bool|S(?:hort|ignedChar)|odeUnit|Char(?:16|32)?|Int|Double|Unsigned(?:Short|Char|Int|Long(?:Long)?)|Float|WideChar|Long(?:Long)?)|I(?:n(?:t(?:Max|egerLiteralType)|d(?:ices|ex(?:Distance)?))|terator)|Distance|U(?:n(?:icodeScalar(?:Type|Index|View|LiteralType)|foldFirstSequence)|TF(?:16(?:Index|View)|8Index)|IntMax)|E(?:lement(?:s)?|x(?:tendedGraphemeCluster(?:Type|LiteralType)|ponent))|V(?:oid|alue)|Key|Float(?:32|LiteralType|64)|AnyClass)\\\\b","name":"support.type.swift"},{"match":"\\\\b(?:Generator|PlaygroundQuickLook|UWord|Word)\\\\b","name":"support.type.swift"}]},"code-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.scope.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.scope.end.swift"}},"patterns":[{"include":"$self"}]},"comments":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.swift"}},"match":"\\\\A^(#!).*$\\\\n?","name":"comment.line.number-sign.swift"},{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.swift"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.swift"}},"name":"comment.block.documentation.swift","patterns":[{"include":"#comments-nested"}]},{"begin":"/\\\\*:","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.swift"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.swift"}},"name":"comment.block.documentation.playground.swift","patterns":[{"include":"#comments-nested"}]},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.swift"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.swift"}},"name":"comment.block.swift","patterns":[{"include":"#comments-nested"}]},{"match":"\\\\*/","name":"invalid.illegal.unexpected-end-of-block-comment.swift"},{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.swift"}},"end":"(?!\\\\G)","patterns":[{"begin":"///","beginCaptures":{"0":{"name":"punctuation.definition.comment.swift"}},"end":"$","name":"comment.line.triple-slash.documentation.swift"},{"begin":"//:","beginCaptures":{"0":{"name":"punctuation.definition.comment.swift"}},"end":"$","name":"comment.line.double-slash.documentation.swift"},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.swift"}},"end":"$","name":"comment.line.double-slash.swift"}]}]},"comments-nested":{"begin":"/\\\\*","end":"\\\\*/","patterns":[{"include":"#comments-nested"}]},"compiler-control":{"patterns":[{"begin":"^\\\\s*(#)(if|elseif)\\\\s+(false)\\\\b.*?(?=$|//|/\\\\*)","beginCaptures":{"0":{"name":"meta.preprocessor.conditional.swift"},"1":{"name":"punctuation.definition.preprocessor.swift"},"2":{"name":"keyword.control.import.preprocessor.conditional.swift"},"3":{"name":"constant.language.boolean.swift"}},"contentName":"comment.block.preprocessor.swift","end":"(?=^\\\\s*(#(elseif|else|endif)\\\\b))"},{"begin":"^\\\\s*(#)(if|elseif)\\\\s+","captures":{"1":{"name":"punctuation.definition.preprocessor.swift"},"2":{"name":"keyword.control.import.preprocessor.conditional.swift"}},"end":"(?=\\\\s*(?://|/\\\\*))|$","name":"meta.preprocessor.conditional.swift","patterns":[{"match":"(&&|\\\\|\\\\|)","name":"keyword.operator.logical.swift"},{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.swift"},{"captures":{"1":{"name":"keyword.other.condition.swift"},"2":{"name":"punctuation.definition.parameters.begin.swift"},"3":{"name":"support.constant.platform.architecture.swift"},"4":{"name":"punctuation.definition.parameters.end.swift"}},"match":"\\\\b(arch)\\\\s*(\\\\()\\\\s*(?:(arm|arm64|powerpc64|powerpc64le|i386|x86_64|s390x)|\\\\w+)\\\\s*(\\\\))"},{"captures":{"1":{"name":"keyword.other.condition.swift"},"2":{"name":"punctuation.definition.parameters.begin.swift"},"3":{"name":"support.constant.platform.os.swift"},"4":{"name":"punctuation.definition.parameters.end.swift"}},"match":"\\\\b(os)\\\\s*(\\\\()\\\\s*(?:(macOS|OSX|iOS|tvOS|watchOS|visionOS|Android|Linux|FreeBSD|Windows|PS4)|\\\\w+)\\\\s*(\\\\))"},{"captures":{"1":{"name":"keyword.other.condition.swift"},"2":{"name":"punctuation.definition.parameters.begin.swift"},"3":{"name":"entity.name.type.module.swift"},"4":{"name":"punctuation.definition.parameters.end.swift"}},"match":"\\\\b(canImport)\\\\s*(\\\\()([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)(\\\\))"},{"begin":"\\\\b(targetEnvironment)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.condition.swift"},"2":{"name":"punctuation.definition.parameters.begin.swift"}},"end":"(\\\\))|$","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.swift"}},"patterns":[{"match":"\\\\b(simulator|UIKitForMac)\\\\b","name":"support.constant.platform.environment.swift"}]},{"begin":"\\\\b(swift|compiler)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.condition.swift"},"2":{"name":"punctuation.definition.parameters.begin.swift"}},"end":"(\\\\))|$","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.swift"}},"patterns":[{"match":">=|<","name":"keyword.operator.comparison.swift"},{"match":"\\\\b[0-9]+(?:\\\\.[0-9]+)*\\\\b","name":"constant.numeric.swift"}]}]},{"captures":{"1":{"name":"punctuation.definition.preprocessor.swift"},"2":{"name":"keyword.control.import.preprocessor.conditional.swift"},"3":{"patterns":[{"match":"\\\\S+","name":"invalid.illegal.character-not-allowed-here.swift"}]}},"match":"^\\\\s*(#)(else|endif)(.*?)(?=$|//|/\\\\*)","name":"meta.preprocessor.conditional.swift"},{"captures":{"1":{"name":"punctuation.definition.preprocessor.swift"},"2":{"name":"keyword.control.import.preprocessor.sourcelocation.swift"},"4":{"name":"punctuation.definition.parameters.begin.swift"},"5":{"patterns":[{"begin":"(file)\\\\s*(:)\\\\s*(?=\\")","beginCaptures":{"1":{"name":"support.variable.parameter.swift"},"2":{"name":"punctuation.separator.key-value.swift"}},"end":"(?!\\\\G)","patterns":[{"include":"#literals"}]},{"captures":{"1":{"name":"support.variable.parameter.swift"},"2":{"name":"punctuation.separator.key-value.swift"},"3":{"name":"constant.numeric.integer.swift"}},"match":"(line)\\\\s*(:)\\\\s*([0-9]+)"},{"match":",","name":"punctuation.separator.parameters.swift"},{"match":"\\\\S+","name":"invalid.illegal.character-not-allowed-here.swift"}]},"6":{"name":"punctuation.definition.parameters.begin.swift"},"7":{"patterns":[{"match":"\\\\S+","name":"invalid.illegal.character-not-allowed-here.swift"}]}},"match":"^\\\\s*(#)(sourceLocation)((\\\\()([^)]*)(\\\\)))(.*?)(?=$|//|/\\\\*)","name":"meta.preprocessor.sourcelocation.swift"}]},"conditionals":{"patterns":[{"begin":"(?<!\\\\.)\\\\b(if|guard|switch|for)\\\\b","beginCaptures":{"1":{"patterns":[{"include":"#keywords"}]}},"end":"(?=\\\\{)","patterns":[{"include":"#expressions-without-trailing-closures"}]},{"begin":"(?<!\\\\.)\\\\b(while)\\\\b","beginCaptures":{"1":{"patterns":[{"include":"#keywords"}]}},"end":"(?=\\\\{)|$","patterns":[{"include":"#expressions-without-trailing-closures"}]}]},"declarations":{"patterns":[{"include":"#declarations-function"},{"include":"#declarations-function-initializer"},{"include":"#declarations-function-subscript"},{"include":"#declarations-typed-variable-declaration"},{"include":"#declarations-import"},{"include":"#declarations-operator"},{"include":"#declarations-precedencegroup"},{"include":"#declarations-protocol"},{"include":"#declarations-type"},{"include":"#declarations-extension"},{"include":"#declarations-typealias"},{"include":"#declarations-macro"}]},"declarations-available-types":{"patterns":[{"include":"#comments"},{"include":"#builtin-types"},{"include":"#attributes"},{"match":"\\\\basync\\\\b","name":"storage.modifier.async.swift"},{"match":"\\\\b(?:throws|rethrows)\\\\b","name":"storage.modifier.exception.swift"},{"match":"\\\\bsome\\\\b","name":"keyword.other.operator.type.opaque.swift"},{"match":"\\\\bany\\\\b","name":"keyword.other.operator.type.existential.swift"},{"match":"\\\\b(?:repeat|each)\\\\b","name":"keyword.control.loop.swift"},{"match":"\\\\b(?:inout|isolated|borrowing|consuming)\\\\b","name":"storage.modifier.swift"},{"match":"\\\\bSelf\\\\b","name":"variable.language.swift"},{"captures":{"1":{"name":"keyword.operator.type.function.swift"}},"match":"(?<![/=\\\\-+!*%<>&|\\\\^~.])(->)(?![/=\\\\-+!*%<>&|\\\\^~.])"},{"captures":{"1":{"name":"keyword.operator.type.composition.swift"}},"match":"(?<![/=\\\\-+!*%<>&|\\\\^~.])(&)(?![/=\\\\-+!*%<>&|\\\\^~.])"},{"match":"[?!]","name":"keyword.operator.type.optional.swift"},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.function.variadic-parameter.swift"},{"match":"\\\\bprotocol\\\\b","name":"keyword.other.type.composition.swift"},{"match":"(?<=\\\\.)(?:Protocol|Type)\\\\b","name":"keyword.other.type.metatype.swift"},{"include":"#declarations-available-types-tuple-type"},{"include":"#declarations-available-types-collection-type"},{"include":"#declarations-generic-argument-clause"}]},"declarations-available-types-collection-type":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.collection-type.begin.swift"}},"end":"\\\\]|(?=[>){}])","endCaptures":{"0":{"name":"punctuation.section.collection-type.end.swift"}},"patterns":[{"include":"#declarations-available-types"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.key-value.swift"}},"end":"(?=\\\\]|[>){}])","patterns":[{"match":":","name":"invalid.illegal.extra-colon-in-dictionary-type.swift"},{"include":"#declarations-available-types"}]}]},"declarations-available-types-tuple-type":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.tuple-type.begin.swift"}},"end":"\\\\)|(?=[>\\\\]{}])","endCaptures":{"0":{"name":"punctuation.section.tuple-type.end.swift"}},"patterns":[{"include":"#declarations-available-types"}]},"declarations-extension":{"begin":"\\\\b(extension)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))","beginCaptures":{"1":{"name":"storage.type.$1.swift"},"2":{"name":"entity.name.type.swift","patterns":[{"include":"#declarations-available-types"}]},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?<=\\\\})","name":"meta.definition.type.$1.swift","patterns":[{"include":"#comments"},{"include":"#declarations-generic-where-clause"},{"include":"#declarations-inheritance-clause"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.type.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.type.end.swift"}},"name":"meta.definition.type.body.swift","patterns":[{"include":"$self"}]}]},"declarations-function":{"begin":"\\\\b(func)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)|(?:((?<oph>[/=\\\\-+!*%<>&|^~?]|[\\\\x{00A1}-\\\\x{00A7}]|[\\\\x{00A9}\\\\x{00AB}]|[\\\\x{00AC}\\\\x{00AE}]|[\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]|[\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]|[\\\\x{2030}-\\\\x{203E}]|[\\\\x{2041}-\\\\x{2053}]|[\\\\x{2055}-\\\\x{205E}]|[\\\\x{2190}-\\\\x{23FF}]|[\\\\x{2500}-\\\\x{2775}]|[\\\\x{2794}-\\\\x{2BFF}]|[\\\\x{2E00}-\\\\x{2E7F}]|[\\\\x{3001}-\\\\x{3003}]|[\\\\x{3008}-\\\\x{3030}])(\\\\g<oph>|(?<opc>[\\\\x{0300}-\\\\x{036F}]|[\\\\x{1DC0}-\\\\x{1DFF}]|[\\\\x{20D0}-\\\\x{20FF}]|[\\\\x{FE00}-\\\\x{FE0F}]|[\\\\x{FE20}-\\\\x{FE2F}]|[\\\\x{E0100}-\\\\x{E01EF}]))*)|(\\\\.(\\\\g<oph>|\\\\g<opc>|\\\\.)+)))\\\\s*(?=\\\\(|<)","beginCaptures":{"1":{"name":"storage.type.function.swift"},"2":{"name":"entity.name.function.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?<=\\\\})|$","name":"meta.definition.function.swift","patterns":[{"include":"#comments"},{"include":"#declarations-generic-parameter-clause"},{"include":"#declarations-parameter-clause"},{"include":"#declarations-function-result"},{"include":"#async-throws"},{"include":"#declarations-generic-where-clause"},{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.section.function.begin.swift"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.section.function.end.swift"}},"name":"meta.definition.function.body.swift","patterns":[{"include":"$self"}]}]},"declarations-function-initializer":{"begin":"(?<!\\\\.)\\\\b(init[?!]*)\\\\s*(?=\\\\(|<)","beginCaptures":{"1":{"name":"storage.type.function.swift","patterns":[{"match":"(?<=[?!])[?!]+","name":"invalid.illegal.character-not-allowed-here.swift"}]}},"end":"(?<=\\\\})|$","name":"meta.definition.function.initializer.swift","patterns":[{"include":"#comments"},{"include":"#declarations-generic-parameter-clause"},{"include":"#declarations-parameter-clause"},{"include":"#async-throws"},{"include":"#declarations-generic-where-clause"},{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.section.function.begin.swift"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.section.function.end.swift"}},"name":"meta.definition.function.body.swift","patterns":[{"include":"$self"}]}]},"declarations-function-result":{"begin":"(?<![/=\\\\-+!*%<>&|\\\\^~.])(->)(?![/=\\\\-+!*%<>&|\\\\^~.])\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.function-result.swift"}},"end":"(?!\\\\G)(?=\\\\{|\\\\bwhere\\\\b|;|=)|$","name":"meta.function-result.swift","patterns":[{"include":"#declarations-available-types"}]},"declarations-function-subscript":{"begin":"(?<!\\\\.)\\\\b(subscript)\\\\s*(?=\\\\(|<)","beginCaptures":{"1":{"name":"storage.type.function.swift"}},"end":"(?<=\\\\})|$","name":"meta.definition.function.subscript.swift","patterns":[{"include":"#comments"},{"include":"#declarations-generic-parameter-clause"},{"include":"#declarations-parameter-clause"},{"include":"#declarations-function-result"},{"include":"#async-throws"},{"include":"#declarations-generic-where-clause"},{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.section.function.begin.swift"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.section.function.end.swift"}},"name":"meta.definition.function.body.swift","patterns":[{"include":"$self"}]}]},"declarations-generic-argument-clause":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.separator.generic-argument-clause.begin.swift"}},"end":">|(?=[)\\\\]{}])","endCaptures":{"0":{"name":"punctuation.separator.generic-argument-clause.end.swift"}},"name":"meta.generic-argument-clause.swift","patterns":[{"include":"#declarations-available-types"}]},"declarations-generic-parameter-clause":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.separator.generic-parameter-clause.begin.swift"}},"end":">|(?=[^\\\\w\\\\d:<>\\\\s,=&`])","endCaptures":{"0":{"name":"punctuation.separator.generic-parameter-clause.end.swift"}},"name":"meta.generic-parameter-clause.swift","patterns":[{"include":"#comments"},{"include":"#declarations-generic-where-clause"},{"match":"\\\\beach\\\\b","name":"keyword.control.loop.swift"},{"captures":{"1":{"name":"variable.language.generic-parameter.swift"}},"match":"\\\\b((?!\\\\d)\\\\w[\\\\w\\\\d]*)\\\\b"},{"match":",","name":"punctuation.separator.generic-parameters.swift"},{"begin":"(:)\\\\s*","beginCaptures":{"1":{"name":"punctuation.separator.generic-parameter-constraint.swift"}},"end":"(?=[,>]|(?!\\\\G)\\\\bwhere\\\\b)","name":"meta.generic-parameter-constraint.swift","patterns":[{"begin":"\\\\G","end":"(?=[,>]|(?!\\\\G)\\\\bwhere\\\\b)","name":"entity.other.inherited-class.swift","patterns":[{"include":"#declarations-type-identifier"},{"include":"#declarations-type-operators"}]}]}]},"declarations-generic-where-clause":{"begin":"\\\\b(where)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.other.generic-constraint-introducer.swift"}},"end":"(?!\\\\G)$|(?=[>{};\\\\n]|//|/\\\\*)","name":"meta.generic-where-clause.swift","patterns":[{"include":"#comments"},{"include":"#declarations-generic-where-clause-requirement-list"}]},"declarations-generic-where-clause-requirement-list":{"begin":"\\\\G|,\\\\s*","end":"(?=[,>{};\\\\n]|//|/\\\\*)","patterns":[{"include":"#comments"},{"include":"#constraint"},{"include":"#declarations-available-types"},{"begin":"(?<![/=\\\\-+!*%<>&|\\\\^~.])(==)(?![/=\\\\-+!*%<>&|\\\\^~.])","beginCaptures":{"1":{"name":"keyword.operator.generic-constraint.same-type.swift"}},"end":"(?=\\\\s*[,>{};\\\\n]|//|/\\\\*)","name":"meta.generic-where-clause.same-type-requirement.swift","patterns":[{"include":"#declarations-available-types"}]},{"begin":"(?<![/=\\\\-+!*%<>&|\\\\^~.])(:)(?![/=\\\\-+!*%<>&|\\\\^~.])","beginCaptures":{"1":{"name":"keyword.operator.generic-constraint.conforms-to.swift"}},"end":"(?=\\\\s*[,>{};\\\\n]|//|/\\\\*)","name":"meta.generic-where-clause.conformance-requirement.swift","patterns":[{"begin":"\\\\G\\\\s*","contentName":"entity.other.inherited-class.swift","end":"(?=\\\\s*[,>{};\\\\n]|//|/\\\\*)","patterns":[{"include":"#declarations-available-types"}]}]}]},"declarations-import":{"begin":"(?<!\\\\.)\\\\b(import)\\\\s+","beginCaptures":{"1":{"name":"keyword.control.import.swift"}},"end":"(;)|$\\\\n?|(?=//|/\\\\*)","endCaptures":{"1":{"name":"punctuation.terminator.statement.swift"}},"name":"meta.import.swift","patterns":[{"begin":"\\\\G(?!;|$|//|/\\\\*)(?:(typealias|struct|class|actor|enum|protocol|var|func)\\\\s+)?","beginCaptures":{"1":{"name":"storage.modifier.swift"}},"end":"(?=;|$|//|/\\\\*)","patterns":[{"captures":{"1":{"name":"punctuation.definition.identifier.swift"},"2":{"name":"punctuation.definition.identifier.swift"}},"match":"(?<=\\\\G|\\\\.)(?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)","name":"entity.name.type.swift"},{"match":"(?<=\\\\G|\\\\.)\\\\$[0-9]+","name":"entity.name.type.swift"},{"captures":{"1":{"patterns":[{"match":"\\\\.","name":"invalid.illegal.dot-not-allowed-here.swift"}]}},"match":"(?<=\\\\G|\\\\.)(?:((?<oph>[/=\\\\-+!*%<>&|^~?]|[\\\\x{00A1}-\\\\x{00A7}]|[\\\\x{00A9}\\\\x{00AB}]|[\\\\x{00AC}\\\\x{00AE}]|[\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]|[\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]|[\\\\x{2030}-\\\\x{203E}]|[\\\\x{2041}-\\\\x{2053}]|[\\\\x{2055}-\\\\x{205E}]|[\\\\x{2190}-\\\\x{23FF}]|[\\\\x{2500}-\\\\x{2775}]|[\\\\x{2794}-\\\\x{2BFF}]|[\\\\x{2E00}-\\\\x{2E7F}]|[\\\\x{3001}-\\\\x{3003}]|[\\\\x{3008}-\\\\x{3030}])(\\\\g<oph>|(?<opc>[\\\\x{0300}-\\\\x{036F}]|[\\\\x{1DC0}-\\\\x{1DFF}]|[\\\\x{20D0}-\\\\x{20FF}]|[\\\\x{FE00}-\\\\x{FE0F}]|[\\\\x{FE20}-\\\\x{FE2F}]|[\\\\x{E0100}-\\\\x{E01EF}]))*)|(\\\\.(\\\\g<oph>|\\\\g<opc>|\\\\.)+))(?=\\\\.|;|$|//|/\\\\*|\\\\s)","name":"entity.name.type.swift"},{"match":"\\\\.","name":"punctuation.separator.import.swift"},{"begin":"(?!\\\\s*(;|$|//|/\\\\*))","end":"(?=\\\\s*(;|$|//|/\\\\*))","name":"invalid.illegal.character-not-allowed-here.swift"}]}]},"declarations-inheritance-clause":{"begin":"(:)(?=\\\\s*\\\\{)|(:)\\\\s*","beginCaptures":{"1":{"name":"invalid.illegal.empty-inheritance-clause.swift"},"2":{"name":"punctuation.separator.inheritance-clause.swift"}},"end":"(?!\\\\G)$|(?=[={}]|(?!\\\\G)\\\\bwhere\\\\b)","name":"meta.inheritance-clause.swift","patterns":[{"begin":"\\\\bclass\\\\b","beginCaptures":{"0":{"name":"storage.type.class.swift"}},"end":"(?=[={}]|(?!\\\\G)\\\\bwhere\\\\b)","patterns":[{"include":"#comments"},{"include":"#declarations-inheritance-clause-more-types"}]},{"begin":"\\\\G","end":"(?!\\\\G)$|(?=[={}]|(?!\\\\G)\\\\bwhere\\\\b)","patterns":[{"include":"#comments"},{"include":"#declarations-inheritance-clause-inherited-type"},{"include":"#declarations-inheritance-clause-more-types"},{"include":"#declarations-type-operators"}]}]},"declarations-inheritance-clause-inherited-type":{"begin":"(?=[`\\\\p{L}_])","end":"(?!\\\\G)","name":"entity.other.inherited-class.swift","patterns":[{"include":"#declarations-type-identifier"}]},"declarations-inheritance-clause-more-types":{"begin":",\\\\s*","end":"(?!\\\\G)(?!//|/\\\\*)|(?=[,={}]|(?!\\\\G)\\\\bwhere\\\\b)","name":"meta.inheritance-list.more-types","patterns":[{"include":"#comments"},{"include":"#declarations-inheritance-clause-inherited-type"},{"include":"#declarations-inheritance-clause-more-types"},{"include":"#declarations-type-operators"}]},"declarations-macro":{"begin":"\\\\b(macro)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*(?=\\\\(|<|=)","beginCaptures":{"1":{"name":"storage.type.function.swift"},"2":{"name":"entity.name.function.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"$|(?=;|//|/\\\\*|\\\\}|=)","name":"meta.definition.macro.swift","patterns":[{"include":"#comments"},{"include":"#declarations-generic-parameter-clause"},{"include":"#declarations-parameter-clause"},{"include":"#declarations-function-result"},{"include":"#async-throws"},{"include":"#declarations-generic-where-clause"}]},"declarations-operator":{"begin":"(?:\\\\b(prefix|infix|postfix)\\\\s+)?\\\\b(operator)\\\\s+(((?<oph>[/=\\\\-+!*%<>&|^~?]|[\\\\x{00A1}-\\\\x{00A7}]|[\\\\x{00A9}\\\\x{00AB}]|[\\\\x{00AC}\\\\x{00AE}]|[\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]|[\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]|[\\\\x{2030}-\\\\x{203E}]|[\\\\x{2041}-\\\\x{2053}]|[\\\\x{2055}-\\\\x{205E}]|[\\\\x{2190}-\\\\x{23FF}]|[\\\\x{2500}-\\\\x{2775}]|[\\\\x{2794}-\\\\x{2BFF}]|[\\\\x{2E00}-\\\\x{2E7F}]|[\\\\x{3001}-\\\\x{3003}]|[\\\\x{3008}-\\\\x{3030}])(\\\\g<oph>|\\\\.|(?<opc>[\\\\x{0300}-\\\\x{036F}]|[\\\\x{1DC0}-\\\\x{1DFF}]|[\\\\x{20D0}-\\\\x{20FF}]|[\\\\x{FE00}-\\\\x{FE0F}]|[\\\\x{FE20}-\\\\x{FE2F}]|[\\\\x{E0100}-\\\\x{E01EF}]))*+)|(\\\\.(\\\\g<oph>|\\\\g<opc>|\\\\.)++))\\\\s*","beginCaptures":{"1":{"name":"storage.modifier.swift"},"2":{"name":"storage.type.function.operator.swift"},"3":{"name":"entity.name.function.operator.swift"},"4":{"name":"entity.name.function.operator.swift","patterns":[{"match":"\\\\.","name":"invalid.illegal.dot-not-allowed-here.swift"}]}},"end":"(;)|$\\\\n?|(?=//|/\\\\*)","endCaptures":{"1":{"name":"punctuation.terminator.statement.swift"}},"name":"meta.definition.operator.swift","patterns":[{"include":"#declarations-operator-swift2"},{"include":"#declarations-operator-swift3"},{"match":"((?!$|;|//|/\\\\*)\\\\S)+","name":"invalid.illegal.character-not-allowed-here.swift"}]},"declarations-operator-swift2":{"begin":"\\\\G(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.operator.begin.swift"}},"end":"(\\\\})","endCaptures":{"1":{"name":"punctuation.definition.operator.end.swift"}},"patterns":[{"include":"#comments"},{"captures":{"1":{"name":"storage.modifier.swift"},"2":{"name":"keyword.other.operator.associativity.swift"}},"match":"\\\\b(associativity)\\\\s+(left|right)\\\\b"},{"captures":{"1":{"name":"storage.modifier.swift"},"2":{"name":"constant.numeric.integer.swift"}},"match":"\\\\b(precedence)\\\\s+([0-9]+)\\\\b"},{"captures":{"1":{"name":"storage.modifier.swift"}},"match":"\\\\b(assignment)\\\\b"}]},"declarations-operator-swift3":{"captures":{"2":{"name":"entity.other.inherited-class.swift","patterns":[{"include":"#declarations-types-precedencegroup"}]},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"match":"\\\\G(:)\\\\s*((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))"},"declarations-parameter-clause":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.swift"}},"end":"(\\\\))(?:\\\\s*(async)\\\\b)?","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.swift"},"2":{"name":"storage.modifier.async.swift"}},"name":"meta.parameter-clause.swift","patterns":[{"include":"#declarations-parameter-list"}]},"declarations-parameter-list":{"patterns":[{"captures":{"1":{"name":"entity.name.function.swift"},"2":{"name":"punctuation.definition.identifier.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"variable.parameter.function.swift"},"5":{"name":"punctuation.definition.identifier.swift"},"6":{"name":"punctuation.definition.identifier.swift"}},"match":"((?<q1>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q1>))\\\\s+((?<q2>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q2>))(?=\\\\s*:)"},{"captures":{"1":{"name":"variable.parameter.function.swift"},"2":{"name":"entity.name.function.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"match":"(((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)))(?=\\\\s*:)"},{"begin":":\\\\s*(?!\\\\s)","end":"(?=[,)])","patterns":[{"include":"#declarations-available-types"},{"match":":","name":"invalid.illegal.extra-colon-in-parameter-list.swift"},{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.swift"}},"end":"(?=[,)])","patterns":[{"include":"#expressions"}]}]}]},"declarations-precedencegroup":{"begin":"\\\\b(precedencegroup)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.precedencegroup.swift"},"2":{"name":"entity.name.type.precedencegroup.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?!\\\\G)","name":"meta.definition.precedencegroup.swift","patterns":[{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.precedencegroup.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.precedencegroup.end.swift"}},"patterns":[{"include":"#comments"},{"captures":{"1":{"name":"storage.modifier.swift"},"2":{"name":"entity.other.inherited-class.swift","patterns":[{"include":"#declarations-types-precedencegroup"}]},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"match":"\\\\b(higherThan|lowerThan)\\\\s*:\\\\s*((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))"},{"captures":{"1":{"name":"storage.modifier.swift"},"2":{"name":"keyword.other.operator.associativity.swift"}},"match":"\\\\b(associativity)\\\\b(?:\\\\s*:\\\\s*(right|left|none)\\\\b)?"},{"captures":{"1":{"name":"storage.modifier.swift"},"2":{"name":"constant.language.boolean.swift"}},"match":"\\\\b(assignment)\\\\b(?:\\\\s*:\\\\s*(true|false)\\\\b)?"}]}]},"declarations-protocol":{"begin":"\\\\b(protocol)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))","beginCaptures":{"1":{"name":"storage.type.$1.swift"},"2":{"name":"entity.name.type.$1.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?<=\\\\})","name":"meta.definition.type.protocol.swift","patterns":[{"include":"#comments"},{"include":"#declarations-inheritance-clause"},{"include":"#declarations-generic-where-clause"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.type.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.type.end.swift"}},"name":"meta.definition.type.body.swift","patterns":[{"include":"#declarations-protocol-protocol-method"},{"include":"#declarations-protocol-protocol-initializer"},{"include":"#declarations-protocol-associated-type"},{"include":"$self"}]}]},"declarations-protocol-associated-type":{"begin":"\\\\b(associatedtype)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*","beginCaptures":{"1":{"name":"keyword.other.declaration-specifier.swift"},"2":{"name":"variable.language.associatedtype.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?!\\\\G)$|(?=[;}]|$)","name":"meta.definition.associatedtype.swift","patterns":[{"include":"#declarations-inheritance-clause"},{"include":"#declarations-generic-where-clause"},{"include":"#declarations-typealias-assignment"}]},"declarations-protocol-protocol-initializer":{"begin":"(?<!\\\\.)\\\\b(init[?!]*)\\\\s*(?=\\\\(|<)","beginCaptures":{"1":{"name":"storage.type.function.swift","patterns":[{"match":"(?<=[?!])[?!]+","name":"invalid.illegal.character-not-allowed-here.swift"}]}},"end":"$|(?=;|//|/\\\\*|\\\\})","name":"meta.definition.function.initializer.swift","patterns":[{"include":"#comments"},{"include":"#declarations-generic-parameter-clause"},{"include":"#declarations-parameter-clause"},{"include":"#async-throws"},{"include":"#declarations-generic-where-clause"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.function.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.function.end.swift"}},"name":"invalid.illegal.function-body-not-allowed-in-protocol.swift","patterns":[{"include":"$self"}]}]},"declarations-protocol-protocol-method":{"begin":"\\\\b(func)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)|(?:((?<oph>[/=\\\\-+!*%<>&|^~?]|[\\\\x{00A1}-\\\\x{00A7}]|[\\\\x{00A9}\\\\x{00AB}]|[\\\\x{00AC}\\\\x{00AE}]|[\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]|[\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]|[\\\\x{2030}-\\\\x{203E}]|[\\\\x{2041}-\\\\x{2053}]|[\\\\x{2055}-\\\\x{205E}]|[\\\\x{2190}-\\\\x{23FF}]|[\\\\x{2500}-\\\\x{2775}]|[\\\\x{2794}-\\\\x{2BFF}]|[\\\\x{2E00}-\\\\x{2E7F}]|[\\\\x{3001}-\\\\x{3003}]|[\\\\x{3008}-\\\\x{3030}])(\\\\g<oph>|(?<opc>[\\\\x{0300}-\\\\x{036F}]|[\\\\x{1DC0}-\\\\x{1DFF}]|[\\\\x{20D0}-\\\\x{20FF}]|[\\\\x{FE00}-\\\\x{FE0F}]|[\\\\x{FE20}-\\\\x{FE2F}]|[\\\\x{E0100}-\\\\x{E01EF}]))*)|(\\\\.(\\\\g<oph>|\\\\g<opc>|\\\\.)+)))\\\\s*(?=\\\\(|<)","beginCaptures":{"1":{"name":"storage.type.function.swift"},"2":{"name":"entity.name.function.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"$|(?=;|//|/\\\\*|\\\\})","name":"meta.definition.function.swift","patterns":[{"include":"#comments"},{"include":"#declarations-generic-parameter-clause"},{"include":"#declarations-parameter-clause"},{"include":"#declarations-function-result"},{"include":"#async-throws"},{"include":"#declarations-generic-where-clause"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.function.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.function.end.swift"}},"name":"invalid.illegal.function-body-not-allowed-in-protocol.swift","patterns":[{"include":"$self"}]}]},"declarations-type":{"patterns":[{"begin":"\\\\b(class(?!\\\\s+(?:func|var|let)\\\\b)|struct|actor)\\\\b\\\\s*((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))","beginCaptures":{"1":{"name":"storage.type.$1.swift"},"2":{"name":"entity.name.type.$1.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?<=\\\\})","name":"meta.definition.type.$1.swift","patterns":[{"include":"#comments"},{"include":"#declarations-generic-parameter-clause"},{"include":"#declarations-generic-where-clause"},{"include":"#declarations-inheritance-clause"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.type.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.type.end.swift"}},"name":"meta.definition.type.body.swift","patterns":[{"include":"$self"}]}]},{"include":"#declarations-type-enum"}]},"declarations-type-enum":{"begin":"\\\\b(enum)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))","beginCaptures":{"1":{"name":"storage.type.$1.swift"},"2":{"name":"entity.name.type.$1.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?<=\\\\})","name":"meta.definition.type.$1.swift","patterns":[{"include":"#comments"},{"include":"#declarations-generic-parameter-clause"},{"include":"#declarations-generic-where-clause"},{"include":"#declarations-inheritance-clause"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.type.begin.swift"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.type.end.swift"}},"name":"meta.definition.type.body.swift","patterns":[{"include":"#declarations-type-enum-enum-case-clause"},{"include":"$self"}]}]},"declarations-type-enum-associated-values":{"begin":"\\\\G\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.swift"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.swift"}},"patterns":[{"include":"#comments"},{"begin":"(?:(_)|((?<q1>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*\\\\k<q1>))\\\\s+(((?<q2>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*\\\\k<q2>))\\\\s*(:)","beginCaptures":{"1":{"name":"entity.name.function.swift"},"2":{"name":"invalid.illegal.distinct-labels-not-allowed.swift"},"5":{"name":"variable.parameter.function.swift"},"7":{"name":"punctuation.separator.argument-label.swift"}},"end":"(?=[,)\\\\]])","patterns":[{"include":"#declarations-available-types"}]},{"begin":"(((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*\\\\k<q>))\\\\s*(:)","beginCaptures":{"1":{"name":"entity.name.function.swift"},"2":{"name":"variable.parameter.function.swift"},"4":{"name":"punctuation.separator.argument-label.swift"}},"end":"(?=[,)\\\\]])","patterns":[{"include":"#declarations-available-types"}]},{"begin":"(?![,)\\\\]])(?=\\\\S)","end":"(?=[,)\\\\]])","patterns":[{"include":"#declarations-available-types"},{"match":":","name":"invalid.illegal.extra-colon-in-parameter-list.swift"}]}]},"declarations-type-enum-enum-case":{"begin":"((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*","beginCaptures":{"1":{"name":"variable.other.enummember.swift"}},"end":"(?<=\\\\))|(?![=(])","patterns":[{"include":"#comments"},{"include":"#declarations-type-enum-associated-values"},{"include":"#declarations-type-enum-raw-value-assignment"}]},"declarations-type-enum-enum-case-clause":{"begin":"\\\\b(case)\\\\b\\\\s*","beginCaptures":{"1":{"name":"storage.type.enum.case.swift"}},"end":"(?=[;}])|(?!\\\\G)(?!//|/\\\\*)(?=[^\\\\s,])","patterns":[{"include":"#comments"},{"include":"#declarations-type-enum-enum-case"},{"include":"#declarations-type-enum-more-cases"}]},"declarations-type-enum-more-cases":{"begin":",\\\\s*","end":"(?!\\\\G)(?!//|/\\\\*)(?=[;}]|[^\\\\s,])","name":"meta.enum-case.more-cases","patterns":[{"include":"#comments"},{"include":"#declarations-type-enum-enum-case"},{"include":"#declarations-type-enum-more-cases"}]},"declarations-type-enum-raw-value-assignment":{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.assignment.swift"}},"end":"(?!\\\\G)","patterns":[{"include":"#comments"},{"include":"#literals"}]},"declarations-type-identifier":{"begin":"((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*","beginCaptures":{"1":{"name":"meta.type-name.swift","patterns":[{"include":"#builtin-types"}]},"2":{"name":"punctuation.definition.identifier.swift"},"3":{"name":"punctuation.definition.identifier.swift"}},"end":"(?!<)","patterns":[{"begin":"(?=<)","end":"(?!\\\\G)","patterns":[{"include":"#declarations-generic-argument-clause"}]}]},"declarations-type-operators":{"patterns":[{"captures":{"1":{"name":"keyword.operator.type.composition.swift"}},"match":"(?<![/=\\\\-+!*%<>&|\\\\^~.])(&)(?![/=\\\\-+!*%<>&|\\\\^~.])"},{"captures":{"1":{"name":"keyword.operator.type.requirement-suppression.swift"}},"match":"(?<![/=\\\\-+!*%<>&|\\\\^~.])(~)(?![/=\\\\-+!*%<>&|\\\\^~.])"}]},"declarations-typealias":{"begin":"\\\\b(typealias)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*","beginCaptures":{"1":{"name":"keyword.other.declaration-specifier.swift"},"2":{"name":"entity.name.type.typealias.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.identifier.swift"}},"end":"(?!\\\\G)$|(?=;|//|/\\\\*|$)","name":"meta.definition.typealias.swift","patterns":[{"begin":"\\\\G(?=<)","end":"(?!\\\\G)","patterns":[{"include":"#declarations-generic-parameter-clause"}]},{"include":"#declarations-typealias-assignment"}]},"declarations-typealias-assignment":{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.assignment.swift"}},"end":"(?!\\\\G)$|(?=;|//|/\\\\*|$)","patterns":[{"include":"#declarations-available-types"}]},"declarations-typed-variable-declaration":{"begin":"\\\\b(?:(async)\\\\s+)?(let|var)\\\\b\\\\s+(?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)\\\\s*:","beginCaptures":{"1":{"name":"storage.modifier.async.swift"},"2":{"name":"keyword.other.declaration-specifier.swift"}},"end":"(?=$|[={])","patterns":[{"include":"#declarations-available-types"}]},"declarations-types-precedencegroup":{"patterns":[{"match":"\\\\b(?:BitwiseShift|Assignment|RangeFormation|Casting|Addition|NilCoalescing|Comparison|LogicalConjunction|LogicalDisjunction|Default|Ternary|Multiplication|FunctionArrow)Precedence\\\\b","name":"support.type.swift"}]},"expressions":{"patterns":[{"include":"#expressions-without-trailing-closures-or-member-references"},{"include":"#expressions-trailing-closure"},{"include":"#member-reference"}]},"expressions-trailing-closure":{"patterns":[{"captures":{"1":{"name":"support.function.any-method.swift"},"2":{"name":"punctuation.definition.identifier.swift"},"3":{"name":"punctuation.definition.identifier.swift"}},"match":"(#?(?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))(?=\\\\s*\\\\{)","name":"meta.function-call.trailing-closure-only.swift"},{"captures":{"1":{"name":"support.function.any-method.trailing-closure-label.swift"},"2":{"name":"punctuation.definition.identifier.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.separator.argument-label.swift"}},"match":"((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*(:)(?=\\\\s*\\\\{)"}]},"expressions-without-trailing-closures":{"patterns":[{"include":"#expressions-without-trailing-closures-or-member-references"},{"include":"#member-references"}]},"expressions-without-trailing-closures-or-member-references":{"patterns":[{"include":"#comments"},{"include":"#code-block"},{"include":"#attributes"},{"include":"#expressions-without-trailing-closures-or-member-references-closure-parameter"},{"include":"#literals"},{"include":"#operators"},{"include":"#builtin-types"},{"include":"#builtin-functions"},{"include":"#builtin-global-functions"},{"include":"#builtin-properties"},{"include":"#expressions-without-trailing-closures-or-member-references-compound-name"},{"include":"#conditionals"},{"include":"#keywords"},{"include":"#expressions-without-trailing-closures-or-member-references-availability-condition"},{"include":"#expressions-without-trailing-closures-or-member-references-function-or-macro-call-expression"},{"include":"#expressions-without-trailing-closures-or-member-references-macro-expansion"},{"include":"#expressions-without-trailing-closures-or-member-references-subscript-expression"},{"include":"#expressions-without-trailing-closures-or-member-references-parenthesized-expression"},{"match":"\\\\b_\\\\b","name":"support.variable.discard-value.swift"}]},"expressions-without-trailing-closures-or-member-references-availability-condition":{"begin":"\\\\B(#(?:un)?available)(\\\\()","beginCaptures":{"1":{"name":"support.function.availability-condition.swift"},"2":{"name":"punctuation.definition.arguments.begin.swift"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.swift"}},"patterns":[{"captures":{"1":{"name":"keyword.other.platform.os.swift"},"2":{"name":"constant.numeric.swift"}},"match":"\\\\s*\\\\b((?:iOS|macOS|OSX|watchOS|tvOS|visionOS|UIKitForMac)(?:ApplicationExtension)?)\\\\b(?:\\\\s+([0-9]+(?:\\\\.[0-9]+)*\\\\b))"},{"captures":{"1":{"name":"keyword.other.platform.all.swift"},"2":{"name":"invalid.illegal.character-not-allowed-here.swift"}},"match":"(\\\\*)\\\\s*(.*?)(?=[,)])"},{"match":"[^\\\\s,)]+","name":"invalid.illegal.character-not-allowed-here.swift"}]},"expressions-without-trailing-closures-or-member-references-closure-parameter":{"match":"\\\\$[0-9]+","name":"variable.language.closure-parameter.swift"},"expressions-without-trailing-closures-or-member-references-compound-name":{"captures":{"1":{"name":"entity.name.function.compound-name.swift"},"2":{"name":"punctuation.definition.entity.swift"},"3":{"name":"punctuation.definition.entity.swift"},"4":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.swift"},"2":{"name":"punctuation.definition.entity.swift"}},"match":"(?<q>`?)(?!_:)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>):","name":"entity.name.function.compound-name.swift"}]}},"match":"((?<q1>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q1>))\\\\(((((?<q2>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q2>)):)+)\\\\)"},"expressions-without-trailing-closures-or-member-references-expression-element-list":{"patterns":[{"include":"#comments"},{"begin":"((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*(:)","beginCaptures":{"1":{"name":"support.function.any-method.swift"},"2":{"name":"punctuation.definition.identifier.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.separator.argument-label.swift"}},"end":"(?=[,)\\\\]])","patterns":[{"include":"#expressions"}]},{"begin":"(?![,)\\\\]])(?=\\\\S)","end":"(?=[,)\\\\]])","patterns":[{"include":"#expressions"}]}]},"expressions-without-trailing-closures-or-member-references-function-or-macro-call-expression":{"patterns":[{"begin":"(#?(?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"support.function.any-method.swift"},"2":{"name":"punctuation.definition.identifier.swift"},"3":{"name":"punctuation.definition.identifier.swift"},"4":{"name":"punctuation.definition.arguments.begin.swift"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.swift"}},"name":"meta.function-call.swift","patterns":[{"include":"#expressions-without-trailing-closures-or-member-references-expression-element-list"}]},{"begin":"(?<=[`\\\\])}>\\\\p{L}_\\\\p{N}\\\\p{M}])\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.swift"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.swift"}},"name":"meta.function-call.swift","patterns":[{"include":"#expressions-without-trailing-closures-or-member-references-expression-element-list"}]}]},"expressions-without-trailing-closures-or-member-references-macro-expansion":{"match":"(#(?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))","name":"support.function.any-method.swift"},"expressions-without-trailing-closures-or-member-references-parenthesized-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.tuple.begin.swift"}},"end":"(\\\\))\\\\s*((?:\\\\b(?:async|throws|rethrows)\\\\s)*)","endCaptures":{"1":{"name":"punctuation.section.tuple.end.swift"},"2":{"patterns":[{"match":"\\\\brethrows\\\\b","name":"invalid.illegal.rethrows-only-allowed-on-function-declarations.swift"},{"include":"#async-throws"}]}},"patterns":[{"include":"#expressions-without-trailing-closures-or-member-references-expression-element-list"}]},"expressions-without-trailing-closures-or-member-references-subscript-expression":{"begin":"(?<=[`\\\\p{L}_\\\\p{N}\\\\p{M}])\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.swift"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.swift"}},"name":"meta.subscript-expression.swift","patterns":[{"include":"#expressions-without-trailing-closures-or-member-references-expression-element-list"}]},"keywords":{"patterns":[{"match":"(?<!\\\\.)\\\\b(?:if|else|guard|where|switch|case|default|fallthrough)\\\\b","name":"keyword.control.branch.swift"},{"match":"(?<!\\\\.)\\\\b(?:continue|break|fallthrough|return)\\\\b","name":"keyword.control.transfer.swift"},{"match":"(?<!\\\\.)\\\\b(?:while|for|in|each)\\\\b","name":"keyword.control.loop.swift"},{"match":"\\\\bany\\\\b(?=\\\\s*`?[\\\\p{L}_])","name":"keyword.other.operator.type.existential.swift"},{"captures":{"1":{"name":"keyword.control.loop.swift"},"2":{"name":"punctuation.whitespace.trailing.repeat.swift"}},"match":"(?<!\\\\.)\\\\b(repeat)\\\\b(\\\\s*)"},{"match":"(?<!\\\\.)\\\\bdefer\\\\b","name":"keyword.control.defer.swift"},{"captures":{"1":{"name":"invalid.illegal.try-must-precede-await.swift"},"2":{"name":"keyword.control.await.swift"}},"match":"(?<!\\\\.)\\\\b(?:(await\\\\s+try)|(await))\\\\b"},{"match":"(?<!\\\\.)\\\\b(?:catch|throw|try)\\\\b|\\\\btry[?!]\\\\B","name":"keyword.control.exception.swift"},{"match":"(?<!\\\\.)\\\\b(?:throws|rethrows)\\\\b","name":"storage.modifier.exception.swift"},{"captures":{"1":{"name":"keyword.control.exception.swift"},"2":{"name":"punctuation.whitespace.trailing.do.swift"}},"match":"(?<!\\\\.)\\\\b(do)\\\\b(\\\\s*)"},{"captures":{"1":{"name":"storage.modifier.async.swift"},"2":{"name":"keyword.other.declaration-specifier.swift"}},"match":"(?<!\\\\.)\\\\b(?:(async)\\\\s+)?(let|var)\\\\b"},{"match":"(?<!\\\\.)\\\\b(?:associatedtype|operator|typealias)\\\\b","name":"keyword.other.declaration-specifier.swift"},{"match":"(?<!\\\\.)\\\\b(class|enum|extension|precedencegroup|protocol|struct|actor)\\\\b(?=\\\\s*`?[\\\\p{L}_])","name":"storage.type.$1.swift"},{"match":"(?<!\\\\.)\\\\b(?:inout|static|final|lazy|mutating|nonmutating|optional|indirect|required|override|dynamic|convenience|infix|prefix|postfix|distributed|nonisolated|borrowing|consuming)\\\\b","name":"storage.modifier.swift"},{"match":"\\\\binit[?!]|\\\\binit\\\\b|(?<!\\\\.)\\\\b(?:func|deinit|subscript|didSet|get|set|willSet)\\\\b","name":"storage.type.function.swift"},{"match":"(?<!\\\\.)\\\\b(?:fileprivate|private|internal|public|open|package)\\\\b","name":"keyword.other.declaration-specifier.accessibility.swift"},{"match":"(?<!\\\\.)\\\\bunowned\\\\((?:safe|unsafe)\\\\)|(?<!\\\\.)\\\\b(?:weak|unowned)\\\\b","name":"keyword.other.capture-specifier.swift"},{"captures":{"1":{"name":"keyword.other.type.swift"},"2":{"name":"keyword.other.type.metatype.swift"}},"match":"(?<=\\\\.)(?:(dynamicType|self)|(Protocol|Type))\\\\b"},{"match":"(?<!\\\\.)\\\\b(?:super|self|Self)\\\\b","name":"variable.language.swift"},{"match":"\\\\B(?:#file|#filePath|#fileID|#line|#column|#function|#dsohandle)\\\\b|\\\\b(?:__FILE__|__LINE__|__COLUMN__|__FUNCTION__|__DSO_HANDLE__)\\\\b","name":"support.variable.swift"},{"match":"(?<!\\\\.)\\\\bimport\\\\b","name":"keyword.control.import.swift"},{"match":"(?<!\\\\.)\\\\bconsume(?=\\\\s+`?[\\\\p{L}_])","name":"keyword.control.consume.swift"},{"match":"(?<!\\\\.)\\\\bcopy(?=\\\\s+`?[\\\\p{L}_])","name":"keyword.control.copy.swift"}]},"literals":{"patterns":[{"include":"#literals-boolean"},{"include":"#literals-numeric"},{"include":"#literals-string"},{"match":"\\\\bnil\\\\b","name":"constant.language.nil.swift"},{"match":"\\\\B#(colorLiteral|imageLiteral|fileLiteral)\\\\b","name":"support.function.object-literal.swift"},{"match":"\\\\B#externalMacro\\\\b","name":"support.function.builtin-macro.swift"},{"match":"\\\\B#keyPath\\\\b","name":"support.function.key-path.swift"},{"begin":"\\\\B(#selector)(\\\\()(?:\\\\s*(getter|setter)\\\\s*(:))?","beginCaptures":{"1":{"name":"support.function.selector-reference.swift"},"2":{"name":"punctuation.definition.arguments.begin.swift"},"3":{"name":"support.variable.parameter.swift"},"4":{"name":"punctuation.separator.argument-label.swift"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.swift"}},"patterns":[{"include":"#expressions"}]},{"include":"#literals-regular-expression-literal"}]},"literals-boolean":{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.swift"},"literals-numeric":{"patterns":[{"match":"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)[0-9][0-9_]*(?=\\\\.[0-9]|[eE])(?:\\\\.[0-9][0-9_]*)?(?:[eE][-+]?[0-9][0-9_]*)?\\\\b(?!\\\\.[0-9])","name":"constant.numeric.float.decimal.swift"},{"match":"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)(0x[0-9a-fA-F][0-9a-fA-F_]*)(?:\\\\.[0-9a-fA-F][0-9a-fA-F_]*)?[pP][-+]?[0-9][0-9_]*\\\\b(?!\\\\.[0-9])","name":"constant.numeric.float.hexadecimal.swift"},{"match":"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)(0x[0-9a-fA-F][0-9a-fA-F_]*)(?:\\\\.[0-9a-fA-F][0-9a-fA-F_]*)?(?:[pP][-+]?\\\\w*)\\\\b(?!\\\\.[0-9])","name":"invalid.illegal.numeric.float.invalid-exponent.swift"},{"match":"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)(0x[0-9a-fA-F][0-9a-fA-F_]*)\\\\.[0-9][\\\\w.]*","name":"invalid.illegal.numeric.float.missing-exponent.swift"},{"match":"(?<=\\\\s|^)\\\\-?\\\\.[0-9][\\\\w.]*","name":"invalid.illegal.numeric.float.missing-leading-zero.swift"},{"match":"(\\\\B\\\\-|\\\\b)0[box]_[0-9a-fA-F_]*(?:[pPeE][+-]?\\\\w+)?[\\\\w.]+","name":"invalid.illegal.numeric.leading-underscore.swift"},{"match":"(?<=[\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)[0-9]+\\\\b"},{"match":"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)0b[01][01_]*\\\\b(?!\\\\.[0-9])","name":"constant.numeric.integer.binary.swift"},{"match":"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)0o[0-7][0-7_]*\\\\b(?!\\\\.[0-9])","name":"constant.numeric.integer.octal.swift"},{"match":"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)[0-9][0-9_]*\\\\b(?!\\\\.[0-9])","name":"constant.numeric.integer.decimal.swift"},{"match":"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)0x[0-9a-fA-F][0-9a-fA-F_]*\\\\b(?!\\\\.[0-9])","name":"constant.numeric.integer.hexadecimal.swift"},{"match":"(\\\\B\\\\-|\\\\b)[0-9][\\\\w.]*","name":"invalid.illegal.numeric.other.swift"}]},"literals-regular-expression-literal":{"patterns":[{"begin":"(#+)/\\\\n","end":"/\\\\1","name":"string.regexp.block.swift","patterns":[{"include":"#literals-regular-expression-literal-regex-guts"},{"include":"#literals-regular-expression-literal-line-comment"}]},{"captures":{"0":{"patterns":[{"include":"#literals-regular-expression-literal-regex-guts"}]},"1":{"name":"punctuation.definition.string.begin.regexp.swift"},"8":{"name":"punctuation.definition.string.end.regexp.swift"},"9":{"name":"invalid.illegal.returns-not-allowed.regexp"}},"match":"(?!/\\\\s)(?!//)(((\\\\#+)?)/)(\\\\\\\\\\\\s)?(?<guts>(?>(?:\\\\\\\\Q(?:(?!\\\\\\\\E)(?!/\\\\2).)*+(?:\\\\\\\\E|(?(3)|(?<!\\\\s))(?=/\\\\2))|\\\\\\\\.|\\\\(\\\\?\\\\#[^)]*\\\\)|\\\\(\\\\?(?>(\\\\{(?:\\\\g<-1>|(?!{).*?)\\\\}))(?:\\\\[(?!\\\\d)\\\\w+\\\\])?[X<>]?\\\\)|(?<class>\\\\[(?:\\\\\\\\.|[^\\\\[\\\\]]|\\\\g<class>)+\\\\])|\\\\(\\\\g<guts>?+\\\\)|(?:(?!/\\\\2)[^()\\\\[\\\\\\\\])+)+))?+(?(3)|(?(5)(?<!\\\\s)))(/\\\\2)|\\\\#+/.+(\\\\n)","name":"string.regexp.line.swift"}]},"literals-regular-expression-literal-backreference-or-subpattern":{"patterns":[{"captures":{"1":{"name":"constant.character.escape.backslash.regexp"},"2":{"name":"variable.other.group-name.regexp"},"3":{"name":"keyword.operator.recursion-level.regexp"},"4":{"name":"constant.numeric.integer.decimal.regexp"},"5":{"name":"constant.numeric.integer.decimal.regexp"},"6":{"name":"keyword.operator.recursion-level.regexp"},"7":{"name":"constant.numeric.integer.decimal.regexp"},"8":{"name":"constant.character.escape.backslash.regexp"}},"match":"(\\\\\\\\g\\\\{)(?:((?!\\\\d)\\\\w+)(?:([+-])(\\\\d+))?|([+-]?\\\\d+)(?:([+-])(\\\\d+))?)(\\\\})"},{"captures":{"1":{"name":"constant.character.escape.backslash.regexp"},"2":{"name":"constant.numeric.integer.decimal.regexp"},"3":{"name":"keyword.operator.recursion-level.regexp"},"4":{"name":"constant.numeric.integer.decimal.regexp"}},"match":"(\\\\\\\\g)([+-]?\\\\d+)(?:([+-])(\\\\d+))?"},{"captures":{"1":{"name":"constant.character.escape.backslash.regexp"},"2":{"name":"variable.other.group-name.regexp"},"3":{"name":"keyword.operator.recursion-level.regexp"},"4":{"name":"constant.numeric.integer.decimal.regexp"},"5":{"name":"constant.numeric.integer.decimal.regexp"},"6":{"name":"keyword.operator.recursion-level.regexp"},"7":{"name":"constant.numeric.integer.decimal.regexp"},"8":{"name":"constant.character.escape.backslash.regexp"}},"match":"(\\\\\\\\[gk]<)(?:((?!\\\\d)\\\\w+)(?:([+-])(\\\\d+))?|([+-]?\\\\d+)(?:([+-])(\\\\d+))?)(>)"},{"captures":{"1":{"name":"constant.character.escape.backslash.regexp"},"2":{"name":"variable.other.group-name.regexp"},"3":{"name":"keyword.operator.recursion-level.regexp"},"4":{"name":"constant.numeric.integer.decimal.regexp"},"5":{"name":"constant.numeric.integer.decimal.regexp"},"6":{"name":"keyword.operator.recursion-level.regexp"},"7":{"name":"constant.numeric.integer.decimal.regexp"},"8":{"name":"constant.character.escape.backslash.regexp"}},"match":"(\\\\\\\\[gk]\')(?:((?!\\\\d)\\\\w+)(?:([+-])(\\\\d+))?|([+-]?\\\\d+)(?:([+-])(\\\\d+))?)(\')"},{"captures":{"1":{"name":"constant.character.escape.backslash.regexp"},"2":{"name":"variable.other.group-name.regexp"},"3":{"name":"keyword.operator.recursion-level.regexp"},"4":{"name":"constant.numeric.integer.decimal.regexp"},"5":{"name":"constant.character.escape.backslash.regexp"}},"match":"(\\\\\\\\k\\\\{)((?!\\\\d)\\\\w+)(?:([+-])(\\\\d+))?(\\\\})"},{"match":"\\\\\\\\[1-9][0-9]+","name":"keyword.other.back-reference.regexp"},{"captures":{"1":{"name":"keyword.other.back-reference.regexp"},"2":{"name":"variable.other.group-name.regexp"},"3":{"name":"keyword.operator.recursion-level.regexp"},"4":{"name":"constant.numeric.integer.decimal.regexp"},"5":{"name":"keyword.other.back-reference.regexp"}},"match":"(\\\\(\\\\?(?:P[=>]|&))((?!\\\\d)\\\\w+)(?:([+-])(\\\\d+))?(\\\\))"},{"match":"\\\\(\\\\?R\\\\)","name":"keyword.other.back-reference.regexp"},{"captures":{"1":{"name":"keyword.other.back-reference.regexp"},"2":{"name":"constant.numeric.integer.decimal.regexp"},"3":{"name":"keyword.operator.recursion-level.regexp"},"4":{"name":"constant.numeric.integer.decimal.regexp"},"5":{"name":"keyword.other.back-reference.regexp"}},"match":"(\\\\(\\\\?)([+-]?\\\\d+)(?:([+-])(\\\\d+))?(\\\\))"}]},"literals-regular-expression-literal-backtracking-directive-or-global-matching-option":{"captures":{"1":{"name":"keyword.control.directive.regexp"},"2":{"name":"keyword.control.directive.regexp"},"3":{"name":"keyword.control.directive.regexp"},"4":{"name":"variable.language.tag.regexp"},"5":{"name":"keyword.control.directive.regexp"},"6":{"name":"keyword.operator.assignment.regexp"},"7":{"name":"constant.numeric.integer.decimal.regexp"},"8":{"name":"keyword.control.directive.regexp"},"9":{"name":"keyword.control.directive.regexp"}},"match":"(\\\\(\\\\*)(?:(ACCEPT|FAIL|F|MARK(?=:)|(?=:)|COMMIT|PRUNE|SKIP|THEN)(?:(:)([^)]+))?|(?:(LIMIT_(?:DEPTH|HEAP|MATCH))(=)(\\\\d+))|(CRLF|CR|ANYCRLF|ANY|LF|NUL|BSR_ANYCRLF|BSR_UNICODE|NOTEMPTY_ATSTART|NOTEMPTY|NO_AUTO_POSSESS|NO_DOTSTAR_ANCHOR|NO_JIT|NO_START_OPT|UTF|UCP))(\\\\))"},"literals-regular-expression-literal-callout":{"captures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"keyword.control.callout.regexp"},"3":{"name":"constant.numeric.integer.decimal.regexp"},"4":{"name":"entity.name.function.callout.regexp"},"5":{"name":"entity.name.function.callout.regexp"},"6":{"name":"entity.name.function.callout.regexp"},"7":{"name":"entity.name.function.callout.regexp"},"8":{"name":"entity.name.function.callout.regexp"},"9":{"name":"entity.name.function.callout.regexp"},"10":{"name":"entity.name.function.callout.regexp"},"11":{"name":"entity.name.function.callout.regexp"},"12":{"name":"punctuation.definition.group.regexp"},"13":{"name":"punctuation.definition.group.regexp"},"14":{"name":"keyword.control.callout.regexp"},"15":{"name":"entity.name.function.callout.regexp"},"16":{"name":"variable.language.tag-name.regexp"},"17":{"name":"punctuation.definition.group.regexp"},"18":{"name":"punctuation.definition.group.regexp"},"19":{"name":"keyword.control.callout.regexp"},"21":{"name":"variable.language.tag-name.regexp"},"22":{"name":"keyword.control.callout.regexp"},"23":{"name":"punctuation.definition.group.regexp"}},"match":"(\\\\()(?<keyw>\\\\?C)(?:(?<num>\\\\d+)|`(?<name>(?:[^`]|``)*)`|\'(?<name>(?:[^\']|\'\')*)\'|\\"(?<name>(?:[^\\"]|\\"\\")*)\\"|\\\\^(?<name>(?:[^\\\\^]|\\\\^\\\\^)*)\\\\^|%(?<name>(?:[^%]|%%)*)%|\\\\#(?<name>(?:[^#]|\\\\#\\\\#)*)\\\\#|\\\\$(?<name>(?:[^$]|\\\\$\\\\$)*)\\\\$|\\\\{(?<name>(?:[^}]|\\\\}\\\\})*)\\\\})?(\\\\))|(\\\\()(?<keyw>\\\\*)(?<name>(?!\\\\d)\\\\w+)(?:\\\\[(?<tag>(?!\\\\d)\\\\w+)\\\\])?(?:\\\\{[^,}]+(?:,[^,}]+)*\\\\})?(\\\\))|(\\\\()(?<keyw>\\\\?)(?>(\\\\{(?:\\\\g<-1>|(?!{).*?)\\\\}))(?:\\\\[(?<tag>(?!\\\\d)\\\\w+)\\\\])?(?<keyw>[X<>]?)(\\\\))","name":"meta.callout.regexp"},"literals-regular-expression-literal-character-properties":{"captures":{"1":{"name":"support.variable.character-property.regexp"},"2":{"name":"punctuation.definition.character-class.regexp"},"3":{"name":"support.variable.character-property.regexp"},"4":{"name":"punctuation.definition.character-class.regexp"}},"match":"\\\\\\\\[pP]\\\\{([\\\\s\\\\w-]+(?:=[\\\\s\\\\w-]+)?)\\\\}|(\\\\[:)([\\\\s\\\\w-]+(?:=[\\\\s\\\\w-]+)?)(:\\\\])","name":"constant.other.character-class.set.regexp"},"literals-regular-expression-literal-custom-char-class":{"patterns":[{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"include":"#literals-regular-expression-literal-custom-char-class-members"}]}]},"literals-regular-expression-literal-custom-char-class-members":{"patterns":[{"match":"\\\\\\\\b","name":"constant.character.escape.backslash.regexp"},{"include":"#literals-regular-expression-literal-custom-char-class"},{"include":"#literals-regular-expression-literal-quote"},{"include":"#literals-regular-expression-literal-set-operators"},{"include":"#literals-regular-expression-literal-unicode-scalars"},{"include":"#literals-regular-expression-literal-character-properties"}]},"literals-regular-expression-literal-group-option-toggle":{"match":"\\\\(\\\\?(?:\\\\^(?:[iJmnsUxwDPSW]|xx|y\\\\{[gw]\\\\})*|(?:[iJmnsUxwDPSW]|xx|y\\\\{[gw]\\\\})+|(?:[iJmnsUxwDPSW]|xx|y\\\\{[gw]\\\\})*-(?:[iJmnsUxwDPSW]|xx|y\\\\{[gw]\\\\})*)\\\\)","name":"keyword.other.option-toggle.regexp"},"literals-regular-expression-literal-group-or-conditional":{"patterns":[{"begin":"(\\\\()(\\\\?~)","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"keyword.control.conditional.absent.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.absent.regexp","patterns":[{"include":"#literals-regular-expression-literal-regex-guts"}]},{"begin":"(\\\\()(?<cond>\\\\?\\\\()(?:(?<NumberRef>(?<num>[+-]?\\\\d+)(?:(?<op>[+-])(?<num>\\\\d+))?)|(?<cond>R)\\\\g<NumberRef>?|(?<cond>R&)(?<NamedRef>(?<name>(?!\\\\d)\\\\w+)(?:(?<op>[+-])(?<num>\\\\d+))?)|(?<cond><)(?:\\\\g<NamedRef>|\\\\g<NumberRef>)(?<cond>>)|(?<cond>\')(?:\\\\g<NamedRef>|\\\\g<NumberRef>)(?<cond>\')|(?<cond>DEFINE)|(?<cond>VERSION)(?<compar>>?=)(?<num>\\\\d+\\\\.\\\\d+))(?<cond>\\\\))|(\\\\()(?<cond>\\\\?)(?=\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"keyword.control.conditional.regexp"},"4":{"name":"constant.numeric.integer.decimal.regexp"},"5":{"name":"keyword.operator.recursion-level.regexp"},"6":{"name":"constant.numeric.integer.decimal.regexp"},"7":{"name":"keyword.control.conditional.regexp"},"8":{"name":"keyword.control.conditional.regexp"},"10":{"name":"variable.other.group-name.regexp"},"11":{"name":"keyword.operator.recursion-level.regexp"},"12":{"name":"constant.numeric.integer.decimal.regexp"},"13":{"name":"keyword.control.conditional.regexp"},"14":{"name":"keyword.control.conditional.regexp"},"15":{"name":"keyword.control.conditional.regexp"},"16":{"name":"keyword.control.conditional.regexp"},"17":{"name":"keyword.control.conditional.regexp"},"18":{"name":"keyword.control.conditional.regexp"},"19":{"name":"keyword.operator.comparison.regexp"},"20":{"name":"constant.numeric.integer.decimal.regexp"},"21":{"name":"keyword.control.conditional.regexp"},"22":{"name":"punctuation.definition.group.regexp"},"23":{"name":"keyword.control.conditional.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.conditional.regexp","patterns":[{"include":"#literals-regular-expression-literal-regex-guts"}]},{"begin":"(\\\\()((\\\\?)(?:([:|>=!*]|<[=!*])|P?<(?:((?!\\\\d)\\\\w+)(-))?((?!\\\\d)\\\\w+)>|\'(?:((?!\\\\d)\\\\w+)(-))?((?!\\\\d)\\\\w+)\'|(?:\\\\^(?:[iJmnsUxwDPSW]|xx|y\\\\{[gw]\\\\})*|(?:[iJmnsUxwDPSW]|xx|y\\\\{[gw]\\\\})+|(?:[iJmnsUxwDPSW]|xx|y\\\\{[gw]\\\\})*-(?:[iJmnsUxwDPSW]|xx|y\\\\{[gw]\\\\})*):)|\\\\*(atomic|pla|positive_lookahead|nla|negative_lookahead|plb|positive_lookbehind|nlb|negative_lookbehind|napla|non_atomic_positive_lookahead|naplb|non_atomic_positive_lookbehind|sr|script_run|asr|atomic_script_run):)?+","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"keyword.other.group-options.regexp"},"3":{"name":"punctuation.definition.group.regexp"},"4":{"name":"punctuation.definition.group.regexp"},"5":{"name":"variable.other.group-name.regexp"},"6":{"name":"keyword.operator.balancing-group.regexp"},"7":{"name":"variable.other.group-name.regexp"},"8":{"name":"variable.other.group-name.regexp"},"9":{"name":"keyword.operator.balancing-group.regexp"},"10":{"name":"variable.other.group-name.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#literals-regular-expression-literal-regex-guts"}]}]},"literals-regular-expression-literal-line-comment":{"captures":{"1":{"name":"punctuation.definition.comment.regexp"}},"match":"(\\\\#).*$","name":"comment.line.regexp"},"literals-regular-expression-literal-quote":{"begin":"\\\\\\\\Q","beginCaptures":{"0":{"name":"constant.character.escape.backslash.regexp"}},"end":"\\\\\\\\E|(\\\\n)","endCaptures":{"0":{"name":"constant.character.escape.backslash.regexp"},"1":{"name":"invalid.illegal.returns-not-allowed.regexp"}},"name":"string.quoted.other.regexp.swift"},"literals-regular-expression-literal-regex-guts":{"patterns":[{"include":"#literals-regular-expression-literal-quote"},{"begin":"\\\\(\\\\?\\\\#","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.comment.end.regexp"}},"name":"comment.block.regexp"},{"begin":"<\\\\{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.regexp"}},"end":"\\\\}>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.regexp"}},"name":"meta.embedded.expression.regexp"},{"include":"#literals-regular-expression-literal-unicode-scalars"},{"include":"#literals-regular-expression-literal-character-properties"},{"match":"[$^]|\\\\\\\\[AbBGyYzZ]|\\\\\\\\K","name":"keyword.control.anchor.regexp"},{"include":"#literals-regular-expression-literal-backtracking-directive-or-global-matching-option"},{"include":"#literals-regular-expression-literal-callout"},{"include":"#literals-regular-expression-literal-backreference-or-subpattern"},{"match":"\\\\.|\\\\\\\\[CdDhHNORsSvVwWX]","name":"constant.character.character-class.regexp"},{"match":"\\\\\\\\c.","name":"constant.character.entity.control-character.regexp"},{"match":"\\\\\\\\[^c]","name":"constant.character.escape.backslash.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"match":"[*+?]","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\{\\\\s*\\\\d+\\\\s*(?:,\\\\s*\\\\d*\\\\s*)?\\\\}|\\\\{\\\\s*,\\\\s*\\\\d+\\\\s*\\\\}","name":"keyword.operator.quantifier.regexp"},{"include":"#literals-regular-expression-literal-custom-char-class"},{"include":"#literals-regular-expression-literal-group-option-toggle"},{"include":"#literals-regular-expression-literal-group-or-conditional"}]},"literals-regular-expression-literal-set-operators":{"patterns":[{"match":"&&","name":"keyword.operator.intersection.regexp.swift"},{"match":"--","name":"keyword.operator.subtraction.regexp.swift"},{"match":"\\\\~\\\\~","name":"keyword.operator.symmetric-difference.regexp.swift"}]},"literals-regular-expression-literal-unicode-scalars":{"match":"\\\\\\\\u\\\\{\\\\s*(?:[0-9a-fA-F]+\\\\s*)+\\\\}|\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\x\\\\{[0-9a-fA-F]+\\\\}|\\\\\\\\x[0-9a-fA-F]{0,2}|\\\\\\\\U[0-9a-fA-F]{8}|\\\\\\\\o\\\\{[0-7]+\\\\}|\\\\\\\\0[0-7]{0,3}|\\\\\\\\N\\\\{(?:U\\\\+[0-9a-fA-F]{1,8}|[\\\\s\\\\w-]+)\\\\}","name":"constant.character.numeric.regexp"},"literals-string":{"patterns":[{"begin":"\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.swift"}},"end":"\\"\\"\\"(#*)","endCaptures":{"0":{"name":"punctuation.definition.string.end.swift"},"1":{"name":"invalid.illegal.extra-closing-delimiter.swift"}},"name":"string.quoted.double.block.swift","patterns":[{"match":"\\\\G.+(?=\\"\\"\\")|\\\\G.+","name":"invalid.illegal.content-after-opening-delimiter.swift"},{"match":"\\\\\\\\\\\\s*\\\\n","name":"constant.character.escape.newline.swift"},{"include":"#literals-string-string-guts"},{"match":"\\\\S((?!\\\\\\\\\\\\().)*(?=\\"\\"\\")","name":"invalid.illegal.content-before-closing-delimiter.swift"}]},{"begin":"#\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.swift"}},"end":"\\"\\"\\"#(#*)","endCaptures":{"0":{"name":"punctuation.definition.string.end.swift"},"1":{"name":"invalid.illegal.extra-closing-delimiter.swift"}},"name":"string.quoted.double.block.raw.swift","patterns":[{"match":"\\\\G.+(?=\\"\\"\\")|\\\\G.+","name":"invalid.illegal.content-after-opening-delimiter.swift"},{"match":"\\\\\\\\#\\\\s*\\\\n","name":"constant.character.escape.newline.swift"},{"include":"#literals-string-raw-string-guts"},{"match":"\\\\S((?!\\\\\\\\#\\\\().)*(?=\\"\\"\\")","name":"invalid.illegal.content-before-closing-delimiter.swift"}]},{"begin":"(##+)\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.swift"}},"end":"\\"\\"\\"\\\\1(#*)","endCaptures":{"0":{"name":"punctuation.definition.string.end.swift"},"1":{"name":"invalid.illegal.extra-closing-delimiter.swift"}},"name":"string.quoted.double.block.raw.swift","patterns":[{"match":"\\\\G.+(?=\\"\\"\\")|\\\\G.+","name":"invalid.illegal.content-after-opening-delimiter.swift"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.swift"}},"end":"\\"(#*)","endCaptures":{"0":{"name":"punctuation.definition.string.end.swift"},"1":{"name":"invalid.illegal.extra-closing-delimiter.swift"}},"name":"string.quoted.double.single-line.swift","patterns":[{"match":"\\\\r|\\\\n","name":"invalid.illegal.returns-not-allowed.swift"},{"include":"#literals-string-string-guts"}]},{"begin":"(##+)\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.raw.swift"}},"end":"\\"\\\\1(#*)","endCaptures":{"0":{"name":"punctuation.definition.string.end.raw.swift"},"1":{"name":"invalid.illegal.extra-closing-delimiter.swift"}},"name":"string.quoted.double.single-line.raw.swift","patterns":[{"match":"\\\\r|\\\\n","name":"invalid.illegal.returns-not-allowed.swift"}]},{"begin":"#\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.raw.swift"}},"end":"\\"#(#*)","endCaptures":{"0":{"name":"punctuation.definition.string.end.raw.swift"},"1":{"name":"invalid.illegal.extra-closing-delimiter.swift"}},"name":"string.quoted.double.single-line.raw.swift","patterns":[{"match":"\\\\r|\\\\n","name":"invalid.illegal.returns-not-allowed.swift"},{"include":"#literals-string-raw-string-guts"}]}]},"literals-string-raw-string-guts":{"patterns":[{"match":"\\\\\\\\#[0\\\\\\\\tnr\\"\']","name":"constant.character.escape.swift"},{"match":"\\\\\\\\#u\\\\{[0-9a-fA-F]{1,8}\\\\}","name":"constant.character.escape.unicode.swift"},{"begin":"\\\\\\\\#\\\\(","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.swift"}},"contentName":"source.swift","end":"(\\\\))","endCaptures":{"0":{"name":"punctuation.section.embedded.end.swift"},"1":{"name":"source.swift"}},"name":"meta.embedded.line.swift","patterns":[{"include":"$self"},{"begin":"\\\\(","end":"\\\\)"}]},{"match":"\\\\\\\\#.","name":"invalid.illegal.escape-not-recognized"}]},"literals-string-string-guts":{"patterns":[{"match":"\\\\\\\\[0\\\\\\\\tnr\\"\']","name":"constant.character.escape.swift"},{"match":"\\\\\\\\u\\\\{[0-9a-fA-F]{1,8}\\\\}","name":"constant.character.escape.unicode.swift"},{"begin":"\\\\\\\\\\\\(","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.swift"}},"contentName":"source.swift","end":"(\\\\))","endCaptures":{"0":{"name":"punctuation.section.embedded.end.swift"},"1":{"name":"source.swift"}},"name":"meta.embedded.line.swift","patterns":[{"include":"$self"},{"begin":"\\\\(","end":"\\\\)"}]},{"match":"\\\\\\\\.","name":"invalid.illegal.escape-not-recognized"}]},"member-reference":{"patterns":[{"captures":{"1":{"name":"variable.other.swift"},"2":{"name":"punctuation.definition.identifier.swift"},"3":{"name":"punctuation.definition.identifier.swift"}},"match":"(?<=\\\\.)((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))"}]},"operators":{"patterns":[{"match":"\\\\b(is\\\\b|as([!?]\\\\B|\\\\b))","name":"keyword.operator.type-casting.swift"},{"begin":"(?=(?<oph>[/=\\\\-+!*%<>&|^~?]|[\\\\x{00A1}-\\\\x{00A7}]|[\\\\x{00A9}\\\\x{00AB}]|[\\\\x{00AC}\\\\x{00AE}]|[\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]|[\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]|[\\\\x{2030}-\\\\x{203E}]|[\\\\x{2041}-\\\\x{2053}]|[\\\\x{2055}-\\\\x{205E}]|[\\\\x{2190}-\\\\x{23FF}]|[\\\\x{2500}-\\\\x{2775}]|[\\\\x{2794}-\\\\x{2BFF}]|[\\\\x{2E00}-\\\\x{2E7F}]|[\\\\x{3001}-\\\\x{3003}]|[\\\\x{3008}-\\\\x{3030}])|\\\\.(\\\\g<oph>|\\\\.|[\\\\x{0300}-\\\\x{036F}]|[\\\\x{1DC0}-\\\\x{1DFF}]|[\\\\x{20D0}-\\\\x{20FF}]|[\\\\x{FE00}-\\\\x{FE0F}]|[\\\\x{FE20}-\\\\x{FE2F}]|[\\\\x{E0100}-\\\\x{E01EF}]))","end":"(?!\\\\G)","patterns":[{"captures":{"0":{"patterns":[{"match":"\\\\G(\\\\+\\\\+|\\\\-\\\\-)$","name":"keyword.operator.increment-or-decrement.swift"},{"match":"\\\\G(\\\\+|\\\\-)$","name":"keyword.operator.arithmetic.unary.swift"},{"match":"\\\\G!$","name":"keyword.operator.logical.not.swift"},{"match":"\\\\G~$","name":"keyword.operator.bitwise.not.swift"},{"match":".+","name":"keyword.operator.custom.prefix.swift"}]}},"match":"\\\\G(?<=^|[\\\\s(\\\\[{,;:])((?!(//|/\\\\*|\\\\*/))([/=\\\\-+!*%<>&|^~?]|[\\\\x{00A1}-\\\\x{00A7}]|[\\\\x{00A9}\\\\x{00AB}]|[\\\\x{00AC}\\\\x{00AE}]|[\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]|[\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]|[\\\\x{2030}-\\\\x{203E}]|[\\\\x{2041}-\\\\x{2053}]|[\\\\x{2055}-\\\\x{205E}]|[\\\\x{2190}-\\\\x{23FF}]|[\\\\x{2500}-\\\\x{2775}]|[\\\\x{2794}-\\\\x{2BFF}]|[\\\\x{2E00}-\\\\x{2E7F}]|[\\\\x{3001}-\\\\x{3003}]|[\\\\x{3008}-\\\\x{3030}]|[\\\\x{0300}-\\\\x{036F}]|[\\\\x{1DC0}-\\\\x{1DFF}]|[\\\\x{20D0}-\\\\x{20FF}]|[\\\\x{FE00}-\\\\x{FE0F}]|[\\\\x{FE20}-\\\\x{FE2F}]|[\\\\x{E0100}-\\\\x{E01EF}]))++(?![\\\\s)\\\\]},;:]|\\\\z)"},{"captures":{"0":{"patterns":[{"match":"\\\\G(\\\\+\\\\+|\\\\-\\\\-)$","name":"keyword.operator.increment-or-decrement.swift"},{"match":"\\\\G!$","name":"keyword.operator.increment-or-decrement.swift"},{"match":".+","name":"keyword.operator.custom.postfix.swift"}]}},"match":"\\\\G(?<!^|[\\\\s(\\\\[{,;:])((?!(//|/\\\\*|\\\\*/))([/=\\\\-+!*%<>&|^~?]|[\\\\x{00A1}-\\\\x{00A7}]|[\\\\x{00A9}\\\\x{00AB}]|[\\\\x{00AC}\\\\x{00AE}]|[\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]|[\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]|[\\\\x{2030}-\\\\x{203E}]|[\\\\x{2041}-\\\\x{2053}]|[\\\\x{2055}-\\\\x{205E}]|[\\\\x{2190}-\\\\x{23FF}]|[\\\\x{2500}-\\\\x{2775}]|[\\\\x{2794}-\\\\x{2BFF}]|[\\\\x{2E00}-\\\\x{2E7F}]|[\\\\x{3001}-\\\\x{3003}]|[\\\\x{3008}-\\\\x{3030}]|[\\\\x{0300}-\\\\x{036F}]|[\\\\x{1DC0}-\\\\x{1DFF}]|[\\\\x{20D0}-\\\\x{20FF}]|[\\\\x{FE00}-\\\\x{FE0F}]|[\\\\x{FE20}-\\\\x{FE2F}]|[\\\\x{E0100}-\\\\x{E01EF}]))++(?=[\\\\s)\\\\]},;:]|\\\\z)"},{"captures":{"0":{"patterns":[{"match":"\\\\G=$","name":"keyword.operator.assignment.swift"},{"match":"\\\\G(\\\\+|\\\\-|\\\\*|/|%|<<|>>|&|\\\\^|\\\\||&&|\\\\|\\\\|)=$","name":"keyword.operator.assignment.compound.swift"},{"match":"\\\\G(\\\\+|\\\\-|\\\\*|/)$","name":"keyword.operator.arithmetic.swift"},{"match":"\\\\G&(\\\\+|\\\\-|\\\\*)$","name":"keyword.operator.arithmetic.overflow.swift"},{"match":"\\\\G%$","name":"keyword.operator.arithmetic.remainder.swift"},{"match":"\\\\G(==|!=|>|<|>=|<=|~=)$","name":"keyword.operator.comparison.swift"},{"match":"\\\\G\\\\?\\\\?$","name":"keyword.operator.coalescing.swift"},{"match":"\\\\G(&&|\\\\|\\\\|)$","name":"keyword.operator.logical.swift"},{"match":"\\\\G(&|\\\\||\\\\^|<<|>>)$","name":"keyword.operator.bitwise.swift"},{"match":"\\\\G(===|!==)$","name":"keyword.operator.bitwise.swift"},{"match":"\\\\G\\\\?$","name":"keyword.operator.ternary.swift"},{"match":".+","name":"keyword.operator.custom.infix.swift"}]}},"match":"\\\\G((?!(//|/\\\\*|\\\\*/))([/=\\\\-+!*%<>&|^~?]|[\\\\x{00A1}-\\\\x{00A7}]|[\\\\x{00A9}\\\\x{00AB}]|[\\\\x{00AC}\\\\x{00AE}]|[\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]|[\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]|[\\\\x{2030}-\\\\x{203E}]|[\\\\x{2041}-\\\\x{2053}]|[\\\\x{2055}-\\\\x{205E}]|[\\\\x{2190}-\\\\x{23FF}]|[\\\\x{2500}-\\\\x{2775}]|[\\\\x{2794}-\\\\x{2BFF}]|[\\\\x{2E00}-\\\\x{2E7F}]|[\\\\x{3001}-\\\\x{3003}]|[\\\\x{3008}-\\\\x{3030}]|[\\\\x{0300}-\\\\x{036F}]|[\\\\x{1DC0}-\\\\x{1DFF}]|[\\\\x{20D0}-\\\\x{20FF}]|[\\\\x{FE00}-\\\\x{FE0F}]|[\\\\x{FE20}-\\\\x{FE2F}]|[\\\\x{E0100}-\\\\x{E01EF}]))++"},{"captures":{"0":{"patterns":[{"match":".+","name":"keyword.operator.custom.prefix.dot.swift"}]}},"match":"\\\\G(?<=^|[\\\\s(\\\\[{,;:])\\\\.((?!(//|/\\\\*|\\\\*/))(\\\\.|[/=\\\\-+!*%<>&|^~?]|[\\\\x{00A1}-\\\\x{00A7}]|[\\\\x{00A9}\\\\x{00AB}]|[\\\\x{00AC}\\\\x{00AE}]|[\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]|[\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]|[\\\\x{2030}-\\\\x{203E}]|[\\\\x{2041}-\\\\x{2053}]|[\\\\x{2055}-\\\\x{205E}]|[\\\\x{2190}-\\\\x{23FF}]|[\\\\x{2500}-\\\\x{2775}]|[\\\\x{2794}-\\\\x{2BFF}]|[\\\\x{2E00}-\\\\x{2E7F}]|[\\\\x{3001}-\\\\x{3003}]|[\\\\x{3008}-\\\\x{3030}]|[\\\\x{0300}-\\\\x{036F}]|[\\\\x{1DC0}-\\\\x{1DFF}]|[\\\\x{20D0}-\\\\x{20FF}]|[\\\\x{FE00}-\\\\x{FE0F}]|[\\\\x{FE20}-\\\\x{FE2F}]|[\\\\x{E0100}-\\\\x{E01EF}]))++(?![\\\\s)\\\\]},;:]|\\\\z)"},{"captures":{"0":{"patterns":[{"match":".+","name":"keyword.operator.custom.postfix.dot.swift"}]}},"match":"\\\\G(?<!^|[\\\\s(\\\\[{,;:])\\\\.((?!(//|/\\\\*|\\\\*/))(\\\\.|[/=\\\\-+!*%<>&|^~?]|[\\\\x{00A1}-\\\\x{00A7}]|[\\\\x{00A9}\\\\x{00AB}]|[\\\\x{00AC}\\\\x{00AE}]|[\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]|[\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]|[\\\\x{2030}-\\\\x{203E}]|[\\\\x{2041}-\\\\x{2053}]|[\\\\x{2055}-\\\\x{205E}]|[\\\\x{2190}-\\\\x{23FF}]|[\\\\x{2500}-\\\\x{2775}]|[\\\\x{2794}-\\\\x{2BFF}]|[\\\\x{2E00}-\\\\x{2E7F}]|[\\\\x{3001}-\\\\x{3003}]|[\\\\x{3008}-\\\\x{3030}]|[\\\\x{0300}-\\\\x{036F}]|[\\\\x{1DC0}-\\\\x{1DFF}]|[\\\\x{20D0}-\\\\x{20FF}]|[\\\\x{FE00}-\\\\x{FE0F}]|[\\\\x{FE20}-\\\\x{FE2F}]|[\\\\x{E0100}-\\\\x{E01EF}]))++(?=[\\\\s)\\\\]},;:]|\\\\z)"},{"captures":{"0":{"patterns":[{"match":"\\\\G\\\\.\\\\.[.<]$","name":"keyword.operator.range.swift"},{"match":".+","name":"keyword.operator.custom.infix.dot.swift"}]}},"match":"\\\\G\\\\.((?!(//|/\\\\*|\\\\*/))(\\\\.|[/=\\\\-+!*%<>&|^~?]|[\\\\x{00A1}-\\\\x{00A7}]|[\\\\x{00A9}\\\\x{00AB}]|[\\\\x{00AC}\\\\x{00AE}]|[\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]|[\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]|[\\\\x{2030}-\\\\x{203E}]|[\\\\x{2041}-\\\\x{2053}]|[\\\\x{2055}-\\\\x{205E}]|[\\\\x{2190}-\\\\x{23FF}]|[\\\\x{2500}-\\\\x{2775}]|[\\\\x{2794}-\\\\x{2BFF}]|[\\\\x{2E00}-\\\\x{2E7F}]|[\\\\x{3001}-\\\\x{3003}]|[\\\\x{3008}-\\\\x{3030}]|[\\\\x{0300}-\\\\x{036F}]|[\\\\x{1DC0}-\\\\x{1DFF}]|[\\\\x{20D0}-\\\\x{20FF}]|[\\\\x{FE00}-\\\\x{FE0F}]|[\\\\x{FE20}-\\\\x{FE2F}]|[\\\\x{E0100}-\\\\x{E01EF}]))++"}]},{"match":":","name":"keyword.operator.ternary.swift"}]},"root":{"patterns":[{"include":"#compiler-control"},{"include":"#declarations"},{"include":"#expressions"}]}},"scopeName":"source.swift"}')),Eoe=[voe]});var bj={};x(bj,{default:()=>Ioe});var Qoe,Ioe,hj=_(()=>{Qoe=Object.freeze(JSON.parse('{"displayName":"SystemVerilog","fileTypes":["v","vh","sv","svh"],"name":"system-verilog","patterns":[{"include":"#comments"},{"include":"#strings"},{"include":"#typedef-enum-struct-union"},{"include":"#typedef"},{"include":"#functions"},{"include":"#keywords"},{"include":"#tables"},{"include":"#function-task"},{"include":"#module-declaration"},{"include":"#class-declaration"},{"include":"#enum-struct-union"},{"include":"#sequence"},{"include":"#all-types"},{"include":"#module-parameters"},{"include":"#module-no-parameters"},{"include":"#port-net-parameter"},{"include":"#system-tf"},{"include":"#assertion"},{"include":"#bind-directive"},{"include":"#cast-operator"},{"include":"#storage-scope"},{"include":"#attributes"},{"include":"#imports"},{"include":"#operators"},{"include":"#constants"},{"include":"#identifiers"},{"include":"#selects"}],"repository":{"all-types":{"patterns":[{"include":"#built-ins"},{"include":"#modifiers"}]},"assertion":{"captures":{"1":{"name":"entity.name.goto-label.php"},"2":{"name":"keyword.operator.systemverilog"},"3":{"name":"keyword.sva.systemverilog"}},"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*(:)[ \\\\t\\\\r\\\\n]*(assert|assume|cover|restrict)\\\\b"},"attributes":{"begin":"(?<!@[ \\\\t\\\\r\\\\n]?)\\\\(\\\\*","beginCaptures":{"0":{"name":"punctuation.attribute.rounds.begin"}},"end":"\\\\*\\\\)","endCaptures":{"0":{"name":"punctuation.attribute.rounds.end"}},"name":"meta.attribute.systemverilog","patterns":[{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"keyword.operator.assignment.systemverilog"}},"match":"([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\t\\\\r\\\\n]*(=)[ \\\\t\\\\r\\\\n]*)?"},{"include":"#constants"},{"include":"#strings"}]},"base-grammar":{"patterns":[{"include":"#all-types"},{"include":"#comments"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"captures":{"1":{"name":"storage.type.interface.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]+[a-zA-Z_][a-zA-Z0-9_,= \\\\t\\\\n]*"},{"include":"#storage-scope"}]},"bind-directive":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.module.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(bind)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$\\\\.]*)\\\\b","name":"meta.definition.systemverilog"},"built-ins":{"patterns":[{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(bit|logic|reg)\\\\b","name":"storage.type.vector.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(byte|shortint|int|longint|integer|time|genvar)\\\\b","name":"storage.type.atom.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(shortreal|real|realtime)\\\\b","name":"storage.type.notint.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\\\\b","name":"storage.type.net.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(genvar|var|void|signed|unsigned|string|const|process)\\\\b","name":"storage.type.built-in.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(uvm_(?:root|transaction|component|monitor|driver|test|env|object|agent|sequence_base|sequence_item|sequence_state|sequencer|sequencer_base|sequence|component_registry|analysis_imp|analysis_port|analysis_export|config_db|active_passive_enum|phase|verbosity|tlm_analysis_fifo|tlm_fifo|report_server|objection|recorder|domain|reg_field|reg_block|reg|bitstream_t|radix_enum|printer|packer|comparer|scope_stack))\\\\b","name":"storage.type.uvm.systemverilog"}]},"cast-operator":{"captures":{"1":{"patterns":[{"include":"#built-ins"},{"include":"#constants"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"storage.type.user-defined.systemverilog"}]},"2":{"name":"keyword.operator.cast.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*([0-9]+|[a-zA-Z_][a-zA-Z0-9_$]*)(\')(?=\\\\()","name":"meta.cast.systemverilog"},"class-declaration":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(virtual[ \\\\t\\\\r\\\\n]+)?(class)(?:[ \\\\t\\\\r\\\\n]+(static|automatic))?[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*)(?:[ \\\\t\\\\r\\\\n]+(extends|implements)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*))?","beginCaptures":{"1":{"name":"storage.modifier.systemverilog"},"2":{"name":"storage.type.class.systemverilog"},"3":{"name":"storage.modifier.systemverilog"},"4":{"name":"entity.name.type.class.systemverilog"},"5":{"name":"keyword.control.systemverilog"},"6":{"name":"entity.name.type.class.systemverilog"}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.class.end.systemverilog"}},"name":"meta.class.systemverilog","patterns":[{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.class.systemverilog"},"3":{"name":"entity.name.type.class.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]+\\\\b(extends|implements)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*)(?:[ \\\\t\\\\r\\\\n]*,[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$:]*))*"},{"captures":{"1":{"name":"storage.type.userdefined.systemverilog"},"2":{"name":"keyword.operator.param.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]+\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*(#)\\\\(","name":"meta.typedef.class.systemverilog"},{"include":"#port-net-parameter"},{"include":"#base-grammar"},{"include":"#module-binding"},{"include":"#identifiers"}]},"comments":{"patterns":[{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.systemverilog"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.systemverilog"}},"name":"comment.block.systemverilog","patterns":[{"include":"#fixme-todo"}]},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.systemverilog"}},"end":"$\\\\n?","name":"comment.line.double-slash.systemverilog","patterns":[{"include":"#fixme-todo"}]}]},"compiler-directives":{"name":"meta.preprocessor.systemverilog","patterns":[{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"match":"(`)(else|endif|endcelldefine|celldefine|nounconnected_drive|resetall|undefineall|end_keywords|__FILE__|__LINE__)\\\\b"},{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"},"3":{"name":"variable.other.constant.preprocessor.systemverilog"}},"match":"(`)(ifdef|ifndef|elsif|define|undef|pragma)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b"},{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"match":"(`)(include|timescale|default_nettype|unconnected_drive|line|begin_keywords)\\\\b"},{"begin":"(`)(protected)\\\\b","beginCaptures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"end":"(`)(endprotected)\\\\b","endCaptures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"name":"meta.crypto.systemverilog"},{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"variable.other.constant.preprocessor.systemverilog"}},"match":"(`)([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b"}]},"constants":{"patterns":[{"match":"(\\\\b[1-9][0-9_]*)?\'([sS]?[bB][ \\\\t\\\\r\\\\n]*[0-1xXzZ?][0-1_xXzZ?]*|[sS]?[oO][ \\\\t\\\\r\\\\n]*[0-7xXzZ?][0-7_xXzZ?]*|[sS]?[dD][ \\\\t\\\\r\\\\n]*[0-9xXzZ?][0-9_xXzZ?]*|[sS]?[hH][ \\\\t\\\\r\\\\n]*[0-9a-fA-FxXzZ?][0-9a-fA-F_xXzZ?]*)((e|E)(\\\\+|-)?[0-9]+)?(?!\'|\\\\w)","name":"constant.numeric.systemverilog"},{"match":"\'[01xXzZ]","name":"constant.numeric.bit.systemverilog"},{"match":"\\\\b(?:\\\\d[\\\\d_\\\\.]*(?<!\\\\.)(?:e|E)(?:\\\\+|-)?[0-9]+)\\\\b","name":"constant.numeric.exp.systemverilog"},{"match":"\\\\b(?:\\\\d[\\\\d_\\\\.]*(?!(?:[\\\\d\\\\.]|[ \\\\t\\\\r\\\\n]*(?:e|E|fs|ps|ns|us|ms|s))))\\\\b","name":"constant.numeric.decimal.systemverilog"},{"match":"\\\\b(?:\\\\d[\\\\d\\\\.]*[ \\\\t\\\\r\\\\n]*(?:fs|ps|ns|us|ms|s))\\\\b","name":"constant.numeric.time.systemverilog"},{"include":"#compiler-directives"},{"match":"\\\\b(?:this|super|null)\\\\b","name":"constant.language.systemverilog"},{"match":"\\\\b([A-Z][A-Z0-9_]*)\\\\b","name":"constant.other.net.systemverilog"},{"match":"\\\\b(?<!\\\\.)([A-Z0-9_]+)(?!\\\\.)\\\\b","name":"constant.numeric.parameter.uppercase.systemverilog"},{"match":"\\\\.\\\\*","name":"keyword.operator.quantifier.regexp"}]},"enum-struct-union":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(enum|struct|union(?:[ \\\\t\\\\r\\\\n]+tagged)?|class|interface[ \\\\t\\\\r\\\\n]+class)(?:[ \\\\t\\\\r\\\\n]+(?!packed|signed|unsigned)([a-zA-Z_][a-zA-Z0-9_$]*)?(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-\\\\+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]\\\\(\\\\)]*\\\\])?))?(?:[ \\\\t\\\\r\\\\n]+(packed))?(?:[ \\\\t\\\\r\\\\n]+(signed|unsigned))?(?=[ \\\\t\\\\r\\\\n]*(?:{|$))","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"patterns":[{"include":"#built-ins"}]},"3":{"patterns":[{"include":"#selects"}]},"4":{"name":"storage.modifier.systemverilog"},"5":{"name":"storage.modifier.systemverilog"}},"end":"(?<=})[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|(?<=^|[ \\\\t\\\\r\\\\n])\\\\\\\\[!-~]+(?=$|[ \\\\t\\\\r\\\\n]))(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-\\\\+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]\\\\(\\\\)]*\\\\])?)[ \\\\t\\\\r\\\\n]*[,;]","endCaptures":{"1":{"patterns":[{"include":"#identifiers"}]},"2":{"patterns":[{"include":"#selects"}]}},"name":"meta.enum-struct-union.systemverilog","patterns":[{"include":"#keywords"},{"include":"#base-grammar"},{"include":"#identifiers"}]},"fixme-todo":{"patterns":[{"match":"(?i:fixme)","name":"invalid.broken.fixme.systemverilog"},{"match":"(?i:todo)","name":"invalid.unimplemented.todo.systemverilog"}]},"function-task":{"begin":"[ \\\\t\\\\r\\\\n]*(?:\\\\b(virtual)[ \\\\t\\\\r\\\\n]+)?(?:\\\\b(function|task)\\\\b)(?:[ \\\\t\\\\r\\\\n]+\\\\b(static|automatic)\\\\b)?","beginCaptures":{"1":{"name":"storage.modifier.systemverilog"},"2":{"name":"storage.type.function.systemverilog"},"3":{"name":"storage.modifier.systemverilog"}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.function.end.systemverilog"}},"name":"meta.function.systemverilog","patterns":[{"captures":{"1":{"name":"support.type.scope.systemverilog"},"2":{"name":"keyword.operator.scope.systemverilog"},"3":{"patterns":[{"include":"#built-ins"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"storage.type.user-defined.systemverilog"}]},"4":{"patterns":[{"include":"#modifiers"}]},"5":{"patterns":[{"include":"#selects"}]},"6":{"name":"entity.name.function.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*(?:\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::))?([a-zA-Z_][a-zA-Z0-9_$]*\\\\b[ \\\\t\\\\r\\\\n]+)?(?:\\\\b(signed|unsigned)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-\\\\+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]\\\\(\\\\)]*\\\\])[ \\\\t\\\\r\\\\n]*)?(?:\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b[ \\\\t\\\\r\\\\n]*)(?=\\\\(|;)"},{"include":"#keywords"},{"include":"#port-net-parameter"},{"include":"#base-grammar"},{"include":"#identifiers"}]},"functions":{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(?!while|for|if|iff|else|case|casex|casez)([a-zA-Z_][a-zA-Z0-9_$]*)(?=[ \\\\t\\\\r\\\\n]*\\\\()","name":"entity.name.function.systemverilog"},"identifiers":{"patterns":[{"match":"\\\\b[a-zA-Z_][a-zA-Z0-9_$]*\\\\b","name":"variable.other.identifier.systemverilog"},{"match":"(?<=^|[ \\\\t\\\\r\\\\n])\\\\\\\\[!-~]+(?=$|[ \\\\t\\\\r\\\\n])","name":"string.regexp.identifier.systemverilog"}]},"imports":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"support.type.scope.systemverilog"},"3":{"name":"keyword.operator.scope.systemverilog"},"4":{"patterns":[{"include":"#operators"},{"include":"#identifiers"}]}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(import|export)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*|\\\\*)[ \\\\t\\\\r\\\\n]*(::)[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|\\\\*)[ \\\\t\\\\r\\\\n]*(,|;)","name":"meta.import.systemverilog"},"keywords":{"patterns":[{"captures":{"1":{"name":"keyword.other.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(edge|negedge|posedge|cell|config|defparam|design|disable|endgenerate|endspecify|event|generate|ifnone|incdir|instance|liblist|library|noshowcancelled|pulsestyle_onevent|pulsestyle_ondetect|scalared|showcancelled|specify|specparam|use|vectored)\\\\b"},{"include":"#sv-control"},{"include":"#sv-control-begin"},{"include":"#sv-control-end"},{"include":"#sv-definition"},{"include":"#sv-cover-cross"},{"include":"#sv-std"},{"include":"#sv-option"},{"include":"#sv-local"},{"include":"#sv-rand"}]},"modifiers":{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(?:un)?signed|packed|small|medium|large|supply[01]|strong[01]|pull[01]|weak[01]|highz[01])\\\\b","name":"storage.modifier.systemverilog"},"module-binding":{"begin":"\\\\.([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*\\\\(","beginCaptures":{"1":{"name":"support.function.port.systemverilog"}},"end":"\\\\),?","name":"meta.port.binding.systemverilog","patterns":[{"include":"#constants"},{"include":"#comments"},{"include":"#operators"},{"include":"#strings"},{"include":"#constants"},{"include":"#storage-scope"},{"include":"#cast-operator"},{"include":"#system-tf"},{"match":"\\\\bvirtual\\\\b","name":"storage.modifier.systemverilog"},{"include":"#identifiers"}]},"module-declaration":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b((?:macro)?module|interface|program|package|modport)[ \\\\t\\\\r\\\\n]+(?:(static|automatic)[ \\\\t\\\\r\\\\n]+)?([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"storage.modifier.systemverilog"},"3":{"name":"entity.name.type.module.systemverilog"}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.module.end.systemverilog"}},"name":"meta.module.systemverilog","patterns":[{"include":"#parameters"},{"include":"#port-net-parameter"},{"include":"#imports"},{"include":"#base-grammar"},{"include":"#system-tf"},{"include":"#identifiers"}]},"module-no-parameters":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(bind|pullup|pulldown)[ \\\\t\\\\r\\\\n]+(?:([a-zA-Z_][a-zA-Z0-9_$\\\\.]*)[ \\\\t\\\\r\\\\n]+)?)?((?:\\\\b(?:and|nand|or|nor|xor|xnor|buf|not|bufif[01]|notif[01]|r?[npc]mos|r?tran|r?tranif[01])\\\\b|[a-zA-Z_][a-zA-Z0-9_$]*))[ \\\\t\\\\r\\\\n]+(?!intersect|and|or|throughout|within)([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-\\\\+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]\\\\(\\\\)]*\\\\])?)[ \\\\t\\\\r\\\\n]*(?=\\\\(|$)(?!;)","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.module.systemverilog"},"3":{"name":"entity.name.type.module.systemverilog"},"4":{"name":"variable.other.module.systemverilog"},"5":{"patterns":[{"include":"#selects"}]}},"end":"\\\\)(?:[ \\\\t\\\\r\\\\n]*(;))?","endCaptures":{"1":{"name":"punctuation.module.instantiation.end.systemverilog"}},"name":"meta.module.no_parameters.systemverilog","patterns":[{"include":"#module-binding"},{"include":"#comments"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"include":"#port-net-parameter"},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b(?=[ \\\\t\\\\r\\\\n]*(\\\\(|$))","name":"variable.other.module.systemverilog"},{"include":"#identifiers"}]},"module-parameters":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(bind)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$\\\\.]*)[ \\\\t\\\\r\\\\n]+)?([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]+(?!intersect|and|or|throughout|within)(?=#[^#])","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.module.systemverilog"},"3":{"name":"entity.name.type.module.systemverilog"}},"end":"\\\\)(?:[ \\\\t\\\\r\\\\n]*(;))?","endCaptures":{"1":{"name":"punctuation.module.instantiation.end.systemverilog"}},"name":"meta.module.parameters.systemverilog","patterns":[{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b(?=[ \\\\t\\\\r\\\\n]*\\\\()","name":"variable.other.module.systemverilog"},{"include":"#module-binding"},{"include":"#parameters"},{"include":"#comments"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"include":"#port-net-parameter"},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b(?=[ \\\\t\\\\r\\\\n]*$)","name":"variable.other.module.systemverilog"},{"include":"#identifiers"}]},"operators":{"patterns":[{"match":"\\\\b(?:dist|inside|with|intersect|and|or|throughout|within|first_match)\\\\b|:=|:/|\\\\|->|\\\\|=>|->>|\\\\*>|#-#|#=#|&&&","name":"keyword.operator.logical.systemverilog"},{"match":"@|##|#|->|<->","name":"keyword.operator.channel.systemverilog"},{"match":"\\\\+=|-=|/=|\\\\*=|%=|&=|\\\\|=|\\\\^=|>>>=|>>=|<<<=|<<=|<=|=","name":"keyword.operator.assignment.systemverilog"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.systemverilog"},{"match":"--","name":"keyword.operator.decrement.systemverilog"},{"match":"\\\\+|-|\\\\*\\\\*|\\\\*|/|%","name":"keyword.operator.arithmetic.systemverilog"},{"match":"!|&&|\\\\|\\\\|","name":"keyword.operator.logical.systemverilog"},{"match":"<<<|<<|>>>|>>","name":"keyword.operator.bitwise.shift.systemverilog"},{"match":"~&|~\\\\||~|\\\\^~|~\\\\^|&|\\\\||\\\\^|{|\'{|}|:|\\\\?","name":"keyword.operator.bitwise.systemverilog"},{"match":"<=|<|>=|>|==\\\\?|!=\\\\?|===|!==|==|!=","name":"keyword.operator.comparison.systemverilog"}]},"parameters":{"begin":"[ \\\\t\\\\r\\\\n]*(#)[ \\\\t\\\\r\\\\n]*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.channel.systemverilog"},"2":{"name":"punctuation.section.parameters.begin"}},"end":"(\\\\))[ \\\\t\\\\r\\\\n]*(?=;|\\\\(|[a-zA-Z_]|\\\\\\\\|$)","endCaptures":{"1":{"name":"punctuation.section.parameters.end"}},"name":"meta.parameters.systemverilog","patterns":[{"include":"#port-net-parameter"},{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#strings"},{"include":"#system-tf"},{"include":"#functions"},{"match":"\\\\bvirtual\\\\b","name":"storage.modifier.systemverilog"},{"include":"#module-binding"}]},"port-net-parameter":{"patterns":[{"captures":{"1":{"name":"support.type.direction.systemverilog"},"2":{"name":"storage.type.net.systemverilog"},"3":{"name":"support.type.scope.systemverilog"},"4":{"name":"keyword.operator.scope.systemverilog"},"5":{"patterns":[{"include":"#built-ins"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"storage.type.user-defined.systemverilog"}]},"6":{"patterns":[{"include":"#modifiers"}]},"7":{"patterns":[{"include":"#selects"}]},"8":{"patterns":[{"include":"#constants"},{"include":"#identifiers"}]},"9":{"patterns":[{"include":"#selects"}]}},"match":",?[ \\\\t\\\\r\\\\n]*(?:\\\\b(output|input|inout|ref)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:\\\\b(localparam|parameter|var|supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::))?(?:([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:\\\\b(signed|unsigned)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-\\\\+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]\\\\(\\\\)]*\\\\])[ \\\\t\\\\r\\\\n]*)?(?<!(?<!#)[:&|=+\\\\-*/%?><^!~\\\\(][ \\\\t\\\\r\\\\n]*)\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-\\\\+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]\\\\(\\\\)]*\\\\])?[ \\\\t\\\\r\\\\n]*(?=,|;|=|\\\\)|/|$)","name":"meta.port-net-parameter.declaration.systemverilog"}]},"selects":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.slice.brackets.begin"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.slice.brackets.end"}},"name":"meta.brackets.select.systemverilog","patterns":[{"match":"\\\\$(?![a-z])","name":"constant.language.systemverilog"},{"include":"#system-tf"},{"include":"#constants"},{"include":"#operators"},{"include":"#cast-operator"},{"include":"#storage-scope"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"variable.other.identifier.systemverilog"}]},"sequence":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.function.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(sequence)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b","name":"meta.sequence.systemverilog"},"storage-scope":{"captures":{"1":{"name":"support.type.scope.systemverilog"},"2":{"name":"keyword.operator.scope.systemverilog"}},"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::)","name":"meta.scope.systemverilog"},"strings":{"patterns":[{"begin":"`?\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.systemverilog"}},"end":"\\"`?","endCaptures":{"0":{"name":"punctuation.definition.string.end.systemverilog"}},"name":"string.quoted.double.systemverilog","patterns":[{"match":"\\\\\\\\(?:[nt\\\\\\\\\\"vfa]|[0-7]{3}|x[0-9a-fA-F]{2})","name":"constant.character.escape.systemverilog"},{"match":"%(\\\\d+\\\\$)?[\'\\\\-+0 #]*[,;:_]?((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?(\\\\.((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?)?(hh|h|ll|l|j|z|t|L)?[xXhHdDoObBcClLvVmMpPsStTuUzZeEfFgG%]","name":"constant.character.format.placeholder.systemverilog"},{"match":"%","name":"invalid.illegal.placeholder.systemverilog"},{"include":"#fixme-todo"}]},{"begin":"(?<=include)[ \\\\t\\\\r\\\\n]*(<)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.systemverilog"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.systemverilog"}},"name":"string.quoted.other.lt-gt.include.systemverilog"}]},"sv-control":{"captures":{"1":{"name":"keyword.control.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(initial|always|always_comb|always_ff|always_latch|final|assign|deassign|force|release|wait|forever|repeat|alias|while|for|if|iff|else|case|casex|casez|default|endcase|return|break|continue|do|foreach|clocking|coverpoint|property|bins|binsof|illegal_bins|ignore_bins|randcase|matches|solve|before|expect|cross|ref|srandom|struct|chandle|tagged|extern|throughout|timeprecision|timeunit|priority|type|union|wait_order|triggered|randsequence|context|pure|wildcard|new|forkjoin|unique|unique0|priority)\\\\b"},"sv-control-begin":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"punctuation.definition.label.systemverilog"},"3":{"name":"entity.name.section.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(begin|fork)\\\\b(?:[ \\\\t\\\\r\\\\n]*(:)[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*))?","name":"meta.item.begin.systemverilog"},"sv-control-end":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"punctuation.definition.label.systemverilog"},"3":{"name":"entity.name.section.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(end|endmodule|endinterface|endprogram|endchecker|endclass|endpackage|endconfig|endfunction|endtask|endproperty|endsequence|endgroup|endprimitive|endclocking|endgenerate|join|join_any|join_none)\\\\b(?:[ \\\\t\\\\r\\\\n]*(:)[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*))?","name":"meta.item.end.systemverilog"},"sv-cover-cross":{"captures":{"2":{"name":"entity.name.type.class.systemverilog"},"3":{"name":"keyword.operator.other.systemverilog"},"4":{"name":"keyword.control.systemverilog"}},"match":"(([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*(:))?[ \\\\t\\\\r\\\\n]*(coverpoint|cross)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)","name":"meta.definition.systemverilog"},"sv-definition":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.class.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(primitive|package|constraint|interface|covergroup|program)[ \\\\t\\\\r\\\\n]+\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b","name":"meta.definition.systemverilog"},"sv-local":{"captures":{"1":{"name":"keyword.other.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(const|static|protected|virtual|localparam|parameter|local)\\\\b"},"sv-option":{"captures":{"1":{"name":"keyword.cover.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(option)\\\\."},"sv-rand":{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(?:rand|randc)\\\\b","name":"storage.type.rand.systemverilog"},"sv-std":{"match":"\\\\b(std)\\\\b::","name":"support.class.systemverilog"},"system-tf":{"match":"\\\\$[a-zA-Z0-9_$][a-zA-Z0-9_$]*\\\\b","name":"support.function.systemverilog"},"tables":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(table)\\\\b","beginCaptures":{"1":{"name":"keyword.table.systemverilog.begin"}},"end":"[ \\\\t\\\\r\\\\n]*\\\\b(endtable)\\\\b","endCaptures":{"1":{"name":"keyword.table.systemverilog.end"}},"name":"meta.table.systemverilog","patterns":[{"include":"#comments"},{"match":"\\\\b[01xXbBrRfFpPnN]\\\\b","name":"constant.language.systemverilog"},{"match":"[-*?]","name":"constant.language.systemverilog"},{"captures":{"1":{"name":"constant.language.systemverilog"}},"match":"\\\\(([01xX?]{2})\\\\)"},{"match":":","name":"punctuation.definition.label.systemverilog"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"include":"#identifiers"}]},"typedef":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(typedef)[ \\\\t\\\\r\\\\n]+)(?:([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\t\\\\r\\\\n]+\\\\b(signed|unsigned)\\\\b)?(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-\\\\+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]\\\\(\\\\)]*\\\\])?))?(?=[ \\\\t\\\\r\\\\n]*[a-zA-Z_\\\\\\\\])","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"patterns":[{"include":"#built-ins"},{"match":"\\\\bvirtual\\\\b","name":"storage.modifier.systemverilog"}]},"3":{"patterns":[{"include":"#modifiers"}]},"4":{"patterns":[{"include":"#selects"}]}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.typedef.end.systemverilog"}},"name":"meta.typedef.systemverilog","patterns":[{"include":"#identifiers"},{"include":"#selects"}]},"typedef-enum-struct-union":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(typedef)[ \\\\t\\\\r\\\\n]+(enum|struct|union(?:[ \\\\t\\\\r\\\\n]+tagged)?|class|interface[ \\\\t\\\\r\\\\n]+class)(?:[ \\\\t\\\\r\\\\n]+(?!packed|signed|unsigned)([a-zA-Z_][a-zA-Z0-9_$]*)?(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-\\\\+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]\\\\(\\\\)]*\\\\])?))?(?:[ \\\\t\\\\r\\\\n]+(packed))?(?:[ \\\\t\\\\r\\\\n]+(signed|unsigned))?(?=[ \\\\t\\\\r\\\\n]*(?:{|$))","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"keyword.control.systemverilog"},"3":{"patterns":[{"include":"#built-ins"}]},"4":{"patterns":[{"include":"#selects"}]},"5":{"name":"storage.modifier.systemverilog"},"6":{"name":"storage.modifier.systemverilog"}},"end":"(?<=})[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|(?<=^|[ \\\\t\\\\r\\\\n])\\\\\\\\[!-~]+(?=$|[ \\\\t\\\\r\\\\n]))(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-\\\\+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]\\\\(\\\\)]*\\\\])?)[ \\\\t\\\\r\\\\n]*[,;]","endCaptures":{"1":{"name":"storage.type.systemverilog"},"2":{"patterns":[{"include":"#selects"}]}},"name":"meta.typedef-enum-struct-union.systemverilog","patterns":[{"include":"#port-net-parameter"},{"include":"#keywords"},{"include":"#base-grammar"},{"include":"#identifiers"}]}},"scopeName":"source.systemverilog"}')),Ioe=[Qoe]});var yj={};x(yj,{default:()=>Foe});var Doe,Foe,wj=_(()=>{Doe=Object.freeze(JSON.parse(`{"displayName":"Systemd Units","name":"systemd","patterns":[{"include":"#comments"},{"begin":"^\\\\s*(InaccessableDirectories|InaccessibleDirectories|ReadOnlyDirectories|ReadWriteDirectories|Capabilities|TableId|UseDomainName|IPv6AcceptRouterAdvertisements|SysVStartPriority|StartLimitInterval|RequiresOverridable|RequisiteOverridable|PropagateReloadTo|PropagateReloadFrom|OnFailureIsolate|BindTo)\\\\s*(=)[ \\\\t]*","beginCaptures":{"1":{"name":"invalid.deprecated"},"2":{"name":"keyword.operator.assignment"}},"end":"(?<!\\\\\\\\)\\\\n","patterns":[{"include":"#comments"},{"include":"#variables"},{"include":"#quotedString"},{"include":"#booleans"},{"include":"#timeSpans"},{"include":"#sizes"},{"include":"#numbers"}]},{"begin":"^\\\\s*(Environment)\\\\s*(=)[ \\\\t]*","beginCaptures":{"1":{"name":"entity.name.tag"},"2":{"name":"keyword.operator.assignment"}},"end":"(?<!\\\\\\\\)\\\\n","name":"meta.config-entry.systemd","patterns":[{"include":"#comments"},{"captures":{"1":{"name":"variable.parameter"},"2":{"name":"keyword.operator.assignment"}},"match":"(?<=\\\\G|[\\\\s\\"'])([A-Za-z0-9\\\\_]+)(=)(?=[^\\\\s\\"'])"},{"include":"#variables"},{"include":"#booleans"},{"include":"#numbers"}]},{"begin":"^\\\\s*(OnCalendar)\\\\s*(=)[ \\\\t]*","beginCaptures":{"1":{"name":"entity.name.tag"},"2":{"name":"keyword.operator.assignment"}},"end":"(?<!\\\\\\\\)\\\\n","name":"meta.config-entry.systemd","patterns":[{"include":"#comments"},{"include":"#variables"},{"include":"#calendarShorthands"},{"include":"#numbers"}]},{"begin":"^\\\\s*(CapabilityBoundingSet|AmbientCapabilities|AddCapability|DropCapability)\\\\s*(=)[ \\\\t]*","beginCaptures":{"1":{"name":"entity.name.tag"},"2":{"name":"keyword.operator.assignment"}},"end":"(?<!\\\\\\\\)\\\\n","name":"meta.config-entry.systemd","patterns":[{"include":"#comments"},{"include":"#capabilities"}]},{"begin":"^\\\\s*(Restart)\\\\s*(=)[ \\\\t]*","beginCaptures":{"1":{"name":"entity.name.tag"},"2":{"name":"keyword.operator.assignment"}},"end":"(?<!\\\\\\\\)\\\\n","name":"meta.config-entry.systemd","patterns":[{"include":"#comments"},{"include":"#variables"},{"include":"#restartOptions"}]},{"begin":"^\\\\s*(Type)\\\\s*(=)[ \\\\t]*","beginCaptures":{"1":{"name":"entity.name.tag"},"2":{"name":"keyword.operator.assignment"}},"end":"(?<!\\\\\\\\)\\\\n","name":"meta.config-entry.systemd","patterns":[{"include":"#comments"},{"include":"#variables"},{"include":"#typeOptions"}]},{"begin":"^\\\\s*(Exec(?:Start(?:Pre|Post)?|Reload|Stop(?:Post)?))\\\\s*(=)[ \\\\t]*","beginCaptures":{"1":{"name":"entity.name.tag"},"2":{"name":"keyword.operator.assignment"}},"end":"(?<!\\\\\\\\)\\\\n","name":"meta.config-entry.systemd","patterns":[{"include":"#comments"},{"include":"#executablePrefixes"},{"include":"#variables"},{"include":"#quotedString"},{"include":"#booleans"},{"include":"#numbers"}]},{"begin":"^\\\\s*([\\\\w\\\\-\\\\.]+)\\\\s*(=)[ \\\\t]*","beginCaptures":{"1":{"name":"entity.name.tag"},"2":{"name":"keyword.operator.assignment"}},"end":"(?<!\\\\\\\\)\\\\n","name":"meta.config-entry.systemd","patterns":[{"include":"#comments"},{"include":"#variables"},{"include":"#quotedString"},{"include":"#booleans"},{"include":"#timeSpans"},{"include":"#sizes"},{"include":"#numbers"}]},{"include":"#sections"}],"repository":{"booleans":{"patterns":[{"match":"\\\\b(?<![-\\\\/\\\\.])(true|false|on|off|yes|no)(?![-\\\\/\\\\.])\\\\b","name":"constant.language"}]},"calendarShorthands":{"patterns":[{"match":"\\\\b(?:minute|hour|dai|month|week|quarter|semiannual)ly\\\\b","name":"constant.language"}]},"capabilities":{"patterns":[{"match":"\\\\b(?:CAP_(?:AUDIT_CONTROL|AUDIT_READ|AUDIT_WRITE|BLOCK_SUSPEND|BPF|CHECKPOINT_RESTORE|CHOWN|DAC_OVERRIDE|DAC_READ_SEARCH|FOWNER|FSETID|IPC_LOCK|IPC_OWNER|KILL|LEASE|LINUX_IMMUTABLE|MAC_ADMIN|MAC_OVERRIDE|MKNOD|NET_ADMIN|NET_BIND_SERVICE|NET_BROADCAST|NET_RAW|PERFMON|SETFCAP|SETGID|SETPCAP|SETUID|SYS_ADMIN|SYS_BOOT|SYS_CHROOT|SYS_MODULE|SYS_NICE|SYS_PACCT|SYS_PTRACE|SYS_RAWIO|SYS_RESOURCE|SYS_TIME|SYS_TTY_CONFIG|SYSLOG|WAKE_ALARM))\\\\b","name":"constant.other.systemd"}]},"comments":{"patterns":[{"match":"^\\\\s*[#;].*\\\\n","name":"comment.line.number-sign"}]},"executablePrefixes":{"patterns":[{"match":"\\\\G([@\\\\-\\\\:]+(?:\\\\+|\\\\!\\\\!?)?|(?:\\\\+|\\\\!\\\\!?)[@\\\\-\\\\:]*)","name":"keyword.operator.prefix.systemd"}]},"numbers":{"patterns":[{"match":"(?<=\\\\s|=)\\\\d+(?:\\\\.\\\\d+)?(?=[\\\\s:]|$)","name":"constant.numeric"}]},"quotedString":{"patterns":[{"begin":"(?<=\\\\G|\\\\s)'","end":"['\\\\n]","name":"string.quoted.single","patterns":[{"match":"\\\\\\\\(?:[abfnrtvs\\\\\\\\\\"'\\\\n]|x[0-9A-Fa-f]{2}|[0-8]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.escape"}]},{"begin":"(?<=\\\\G|\\\\s)\\"","end":"[\\"\\\\n]","name":"string.quoted.double","patterns":[{"match":"\\\\\\\\(?:[abfnrtvs\\\\\\\\\\"'\\\\n]|x[0-9A-Fa-f]{2}|[0-8]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.escape"}]}]},"restartOptions":{"patterns":[{"match":"\\\\b(no|always|on\\\\-(?:success|failure|abnormal|abort|watchdog))\\\\b","name":"constant.language"}]},"sections":{"patterns":[{"match":"^\\\\s*\\\\[(Address|Automount|BFIFO|BandMultiQueueing|BareUDP|BatmanAdvanced|Bond|Bridge|BridgeFDB|BridgeMDB|BridgeVLAN|CAKE|CAN|ClassfulMultiQueueing|Container|Content|ControlledDelay|Coredump|D-BUS Service|DHCP|DHCPPrefixDelegation|DHCPServer|DHCPServerStaticLease|DHCPv4|DHCPv6|DHCPv6PrefixDelegation|DeficitRoundRobinScheduler|DeficitRoundRobinSchedulerClass|Distribution|EnhancedTransmissionSelection|Exec|FairQueueing|FairQueueingControlledDelay|Feature|Files|FlowQueuePIE|FooOverUDP|GENEVE|GenericRandomEarlyDetection|HeavyHitterFilter|HierarchyTokenBucket|HierarchyTokenBucketClass|Home|IOCost|IPVLAN|IPVTAP|IPoIB|IPv6AcceptRA|IPv6AddressLabel|IPv6PREF64Prefix|IPv6Prefix|IPv6PrefixDelegation|IPv6RoutePrefix|IPv6SendRA|Image|Install|Journal|Kube|L2TP|L2TPSession|LLDP|Link|Login|MACVLAN|MACVTAP|MACsec|MACsecReceiveAssociation|MACsecReceiveChannel|MACsecTransmitAssociation|Manager|Match|Mount|Neighbor|NetDev|Network|NetworkEmulator|NextHop|OOM|Output|PFIFO|PFIFOFast|PFIFOHeadDrop|PIE|PStore|Packages|Partition|Path|Peer|Pod|QDisc|Quadlet|QuickFairQueueing|QuickFairQueueingClass|Remote|Resolve|Route|RoutingPolicyRule|SR-IOV|Scope|Service|Sleep|Socket|Source|StochasticFairBlue|StochasticFairnessQueueing|Swap|Tap|Target|Time|Timer|TokenBucketFilter|TrafficControlQueueingDiscipline|Transfer|TrivialLinkEqualizer|Tun|Tunnel|UKI|Unit|Upload|VLAN|VRF|VXCAN|VXLAN|Volume|WLAN|WireGuard|WireGuardPeer|Xfrm)\\\\]","name":"entity.name.section"},{"match":"\\\\s*\\\\[[\\\\w-]+\\\\]","name":"entity.name.unknown-section"}]},"sizes":{"patterns":[{"match":"(?<=\\\\s|=)\\\\d+(?:\\\\.\\\\d+)?[KMGT](?=[\\\\s:]|$)","name":"constant.numeric"},{"match":"(?<==)infinity(?=[\\\\s:]|$)","name":"constant.numeric"}]},"timeSpans":{"patterns":[{"match":"\\\\b(?:\\\\d+(?:[u\u03BC]s(?:ec)?|ms(?:ec)?|s(?:ec|econds?)?|m(?:in|inutes?)?|h(?:r|ours?)?|d(?:ays?)?|w(?:eeks)?|M|months?|y(?:ears?)?)){1,}\\\\b","name":"constant.numeric"}]},"typeOptions":{"patterns":[{"match":"\\\\b(?:simple|exec|forking|oneshot|dbus|notify(?:-reload)?|idle|unicast|local|broadcast|anycast|multicast|blackhole|unreachable|prohibit|throw|nat|xresolve|blackhole|unreachable|prohibit|ad-hoc|station|ap(?:-vlan)?|wds|monitor|mesh-point|p2p-(?:client|go|device)|ocb|nan)\\\\b","name":"constant.language"}]},"variables":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.systemd"},"2":{"name":"variable.other"}},"match":"(\\\\$)([A-Za-z0-9\\\\_]+)\\\\b"},{"captures":{"1":{"name":"punctuation.definition.variable.systemd"},"2":{"name":"variable.other"},"3":{"name":"punctuation.definition.variable.systemd"}},"match":"(\\\\$\\\\{)([A-Za-z0-9\\\\_]+)(\\\\})"},{"match":"%%","name":"constant.other.placeholder"},{"match":"%[aAbBCEfgGhHiIjJlLmMnNopPsStTuUvVwW]\\\\b","name":"constant.other.placeholder"}]}},"scopeName":"source.systemd"}`)),Foe=[Doe]});var kj={};x(kj,{default:()=>Ooe});var Soe,Ooe,Cj=_(()=>{Soe=Object.freeze(JSON.parse(`{"displayName":"TalonScript","name":"talonscript","patterns":[{"include":"#body-header"},{"include":"#header"},{"include":"#body-noheader"},{"include":"#comment"},{"include":"#settings"}],"repository":{"action":{"begin":"([a-zA-Z0-9._]+)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.talon","patterns":[{"match":"\\\\.","name":"punctuation.separator.talon"}]},"2":{"name":"punctuation.definition.parameters.begin.talon"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.talon"}},"name":"variable.parameter.talon","patterns":[{"include":"#action"},{"include":"#qstring-long"},{"include":"#qstring"},{"include":"#argsep"},{"include":"#number"},{"include":"#operator"},{"include":"#varname"}]},"action-gamepad":{"captures":{"2":{"name":"punctuation.definition.parameters.begin.talon"},"3":{"name":"variable.parameter.talon","patterns":[{"include":"#key-mods"}]},"4":{"name":"punctuation.definition.parameters.key.talon"}},"match":"(deck|gamepad|action|face|parrot)(\\\\()(.*)(\\\\))","name":"entity.name.function.talon"},"action-key":{"captures":{"1":{"name":"punctuation.definition.parameters.begin.talon"},"2":{"name":"variable.parameter.talon","patterns":[{"include":"#key-prefixes"},{"include":"#key-mods"},{"include":"#keystring"}]},"3":{"name":"punctuation.definition.parameters.key.talon"}},"match":"key(\\\\()(.*)(\\\\))","name":"entity.name.function.talon"},"argsep":{"match":",","name":"punctuation.separator.talon"},"assignment":{"captures":{"1":{"name":"variable.other.talon"},"2":{"name":"keyword.operator.talon"},"3":{"name":"variable.other.talon","patterns":[{"include":"#comment"},{"include":"#expression"}]}},"match":"(\\\\S*)(\\\\s?=\\\\s?)(.*)"},"body-header":{"begin":"^-$","end":"(?=not)possible","patterns":[{"include":"#body-noheader"}]},"body-noheader":{"patterns":[{"include":"#comment"},{"include":"#other-rule-definition"},{"include":"#speech-rule-definition"}]},"capture":{"match":"(\\\\<[a-zA-Z0-9._]+\\\\>)","name":"variable.parameter.talon"},"comment":{"match":"(\\\\s*#.*)$","name":"comment.line.number-sign.talon"},"context":{"captures":{"1":{"name":"entity.name.tag.talon","patterns":[{"match":"(and |or )","name":"keyword.operator.talon"}]},"2":{"name":"entity.name.type.talon","patterns":[{"include":"#comment"},{"include":"#regexp"}]}},"match":"(.*): (.*)"},"expression":{"patterns":[{"include":"#qstring-long"},{"include":"#action-key"},{"include":"#action"},{"include":"#operator"},{"include":"#number"},{"include":"#qstring"},{"include":"#varname"}]},"fstring":{"captures":{"1":{"patterns":[{"include":"#action"},{"include":"#operator"},{"include":"#number"},{"include":"#varname"},{"include":"#qstring"}]}},"match":"{(.+?)}","name":"constant.character.format.placeholder.talon"},"header":{"begin":"(?=^app:|title:|os:|tag:|list:|language:)","end":"(?=^-$)","patterns":[{"include":"#comment"},{"include":"#context"}]},"key-mods":{"captures":{"1":{"name":"keyword.operator.talon"},"2":{"name":"keyword.control.talon"}},"match":"(:)(up|down|change|repeat|start|stop|\\\\d+)","name":"keyword.operator.talon"},"key-prefixes":{"captures":{"1":{"name":"keyword.control.talon"},"2":{"name":"keyword.operator.talon"}},"match":"(ctrl|shift|cmd|alt|win|super)(-)"},"keystring":{"begin":"(\\"|')","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.talon"}},"end":"(\\\\1)|$","endCaptures":{"1":{"name":"punctuation.definition.string.end.talon"}},"name":"string.quoted.double.talon","patterns":[{"include":"#string-body"},{"include":"#key-mods"},{"include":"#key-prefixes"}]},"list":{"match":"({[a-zA-Z0-9._]+?})","name":"string.interpolated.talon"},"number":{"match":"(?<=\\\\b)\\\\d+(\\\\.\\\\d+)?","name":"constant.numeric.talon"},"operator":{"match":"\\\\s(\\\\+|-|\\\\*|/|or)\\\\s","name":"keyword.operator.talon"},"other-rule-definition":{"begin":"^([a-z]+\\\\(.*[^\\\\-]\\\\)|[a-z]+\\\\(.*--\\\\)|[a-z]+\\\\(-\\\\)|[a-z]+\\\\(\\\\)):","beginCaptures":{"1":{"name":"entity.name.tag.talon","patterns":[{"include":"#action-key"},{"include":"#action-gamepad"},{"include":"#rule-specials"}]}},"end":"(?=^[^\\\\s#])","patterns":[{"include":"#statement"}]},"qstring":{"begin":"(\\"|')","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.talon"}},"end":"(\\\\1)|$","endCaptures":{"1":{"name":"punctuation.definition.string.end.talon"}},"name":"string.quoted.double.talon","patterns":[{"include":"#string-body"}]},"qstring-long":{"begin":"(\\"\\"\\"|''')","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.talon"}},"end":"(\\\\1)","endCaptures":{"1":{"name":"punctuation.definition.string.end.talon"}},"name":"string.quoted.double.talon","patterns":[{"include":"#string-body"}]},"regexp":{"begin":"(/)","end":"(/)","name":"string.regexp.talon","patterns":[{"match":"\\\\.","name":"support.other.match.any.regexp"},{"match":"\\\\$","name":"support.other.match.end.regexp"},{"match":"\\\\^","name":"support.other.match.begin.regexp"},{"match":"\\\\\\\\\\\\.|\\\\\\\\\\\\*|\\\\\\\\\\\\^|\\\\\\\\\\\\$|\\\\\\\\\\\\+|\\\\\\\\\\\\?","name":"constant.character.escape.talon"},{"match":"\\\\[(\\\\\\\\\\\\]|[^\\\\]])*\\\\]","name":"constant.other.set.regexp"},{"match":"\\\\*|\\\\+|\\\\?","name":"keyword.operator.quantifier.regexp"}]},"rule-specials":{"captures":{"1":{"name":"entity.name.function.talon"},"2":{"name":"punctuation.definition.parameters.begin.talon"},"3":{"name":"punctuation.definition.parameters.end.talon"}},"match":"(settings|tag)(\\\\()(\\\\))"},"speech-rule-definition":{"begin":"^(.*?):","beginCaptures":{"1":{"name":"entity.name.tag.talon","patterns":[{"match":"^\\\\^","name":"string.regexp.talon"},{"match":"\\\\$$","name":"string.regexp.talon"},{"match":"\\\\(","name":"punctuation.definition.parameters.begin.talon"},{"match":"\\\\)","name":"punctuation.definition.parameters.end.talon"},{"match":"\\\\|","name":"punctuation.separator.talon"},{"include":"#capture"},{"include":"#list"}]}},"end":"(?=^[^\\\\s#])","patterns":[{"include":"#statement"}]},"statement":{"patterns":[{"include":"#comment"},{"include":"#qstring-long"},{"include":"#action-key"},{"include":"#action"},{"include":"#qstring"},{"include":"#assignment"}]},"string-body":{"patterns":[{"match":"{{|}}","name":"string.quoted.double.talon"},{"match":"\\\\\\\\\\\\\\\\|\\\\\\\\n|\\\\\\\\t|\\\\\\\\r|\\\\\\\\\\"|\\\\\\\\'","name":"constant.character.escape.python"},{"include":"#fstring"}]},"varname":{"captures":{"2":{"name":"constant.numeric.talon","patterns":[{"match":"_","name":"keyword.operator.talon"}]}},"match":"([a-zA-Z0-9._])(_(list|\\\\d+))?","name":"variable.parameter.talon"}},"scopeName":"source.talon","aliases":["talon"]}`)),Ooe=[Soe]});var _j={};x(_j,{default:()=>Loe});var Noe,Loe,Bj=_(()=>{Noe=Object.freeze(JSON.parse(`{"displayName":"Tasl","fileTypes":["tasl"],"name":"tasl","patterns":[{"include":"#comment"},{"include":"#namespace"},{"include":"#type"},{"include":"#class"},{"include":"#edge"}],"repository":{"class":{"begin":"(?:^\\\\s*)(class)\\\\b","beginCaptures":{"1":{"name":"keyword.control.tasl.class"}},"end":"$","patterns":[{"include":"#key"},{"include":"#export"},{"include":"#expression"}]},"comment":{"captures":{"1":{"name":"punctuation.definition.comment.tasl"}},"match":"(#).*$","name":"comment.line.number-sign.tasl"},"component":{"begin":"->","beginCaptures":{"0":{"name":"punctuation.separator.tasl.component"}},"end":"$","patterns":[{"include":"#expression"}]},"coproduct":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.block.tasl.coproduct"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.block.tasl.coproduct"}},"patterns":[{"include":"#comment"},{"include":"#term"},{"include":"#option"}]},"datatype":{"match":"[a-zA-Z][a-zA-Z0-9]*:(?:[A-Za-z0-9\\\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})+","name":"string.regexp"},"edge":{"begin":"(?:^\\\\s*)(edge)\\\\b","beginCaptures":{"1":{"name":"keyword.control.tasl.edge"}},"end":"$","patterns":[{"include":"#key"},{"include":"#export"},{"match":"=/","name":"punctuation.separator.tasl.edge.source"},{"match":"/=>","name":"punctuation.separator.tasl.edge.target"},{"match":"=>","name":"punctuation.separator.tasl.edge"},{"include":"#expression"}]},"export":{"match":"::","name":"keyword.operator.tasl.export"},"expression":{"patterns":[{"include":"#literal"},{"include":"#uri"},{"include":"#product"},{"include":"#coproduct"},{"include":"#reference"},{"include":"#optional"},{"include":"#identifier"}]},"identifier":{"captures":{"1":{"name":"variable"}},"match":"([a-zA-Z][a-zA-Z0-9]*)\\\\b"},"key":{"match":"[a-zA-Z][a-zA-Z0-9]*:(?:[A-Za-z0-9\\\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})+","name":"markup.bold entity.name.class"},"literal":{"patterns":[{"include":"#datatype"}]},"namespace":{"captures":{"1":{"name":"keyword.control.tasl.namespace"},"2":{"patterns":[{"include":"#namespaceURI"},{"match":"[a-zA-Z][a-zA-Z0-9]*\\\\b","name":"entity.name"}]}},"match":"(?:^\\\\s*)(namespace)\\\\b(.*)"},"namespaceURI":{"match":"[a-z]+:[a-zA-Z0-9-._~:\\\\/?#\\\\[\\\\]@!$&'()*+,;%=]+","name":"markup.underline.link"},"option":{"begin":"<-","beginCaptures":{"0":{"name":"punctuation.separator.tasl.option"}},"end":"$","patterns":[{"include":"#expression"}]},"optional":{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator"}},"end":"$","patterns":[{"include":"#expression"}]},"product":{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.block.tasl.product"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.tasl.product"}},"patterns":[{"include":"#comment"},{"include":"#term"},{"include":"#component"}]},"reference":{"captures":{"1":{"name":"markup.bold keyword.operator"},"2":{"patterns":[{"include":"#key"}]}},"match":"(\\\\*)\\\\s*(.*)"},"term":{"match":"[a-zA-Z][a-zA-Z0-9]*:(?:[A-Za-z0-9\\\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})+","name":"entity.other.tasl.key"},"type":{"begin":"(?:^\\\\s*)(type)\\\\b","beginCaptures":{"1":{"name":"keyword.control.tasl.type"}},"end":"$","patterns":[{"include":"#expression"}]},"uri":{"match":"<>","name":"variable.other.constant"}},"scopeName":"source.tasl"}`)),Loe=[Noe]});var xj={};x(xj,{default:()=>Roe});var $oe,Roe,vj=_(()=>{$oe=Object.freeze(JSON.parse('{"displayName":"Tcl","fileTypes":["tcl"],"foldingStartMarker":"\\\\{\\\\s*$","foldingStopMarker":"^\\\\s*\\\\}","name":"tcl","patterns":[{"begin":"(?<=^|;)\\\\s*((#))","beginCaptures":{"1":{"name":"comment.line.number-sign.tcl"},"2":{"name":"punctuation.definition.comment.tcl"}},"contentName":"comment.line.number-sign.tcl","end":"\\\\n","patterns":[{"match":"(\\\\\\\\\\\\\\\\|\\\\\\\\\\\\n)"}]},{"captures":{"1":{"name":"keyword.control.tcl"}},"match":"(?<=^|[\\\\[{;])\\\\s*(if|while|for|catch|default|return|break|continue|switch|exit|foreach|try|throw)\\\\b"},{"captures":{"1":{"name":"keyword.control.tcl"}},"match":"(?<=^|})\\\\s*(then|elseif|else)\\\\b"},{"captures":{"1":{"name":"keyword.other.tcl"},"2":{"name":"entity.name.function.tcl"}},"match":"(?<=^|{)\\\\s*(proc)\\\\s+([^\\\\s]+)"},{"captures":{"1":{"name":"keyword.other.tcl"}},"match":"(?<=^|[\\\\[{;])\\\\s*(after|append|array|auto_execok|auto_import|auto_load|auto_mkindex|auto_mkindex_old|auto_qualify|auto_reset|bgerror|binary|cd|clock|close|concat|dde|encoding|eof|error|eval|exec|expr|fblocked|fconfigure|fcopy|file|fileevent|filename|flush|format|gets|glob|global|history|http|incr|info|interp|join|lappend|library|lindex|linsert|list|llength|load|lrange|lreplace|lsearch|lset|lsort|memory|msgcat|namespace|open|package|parray|pid|pkg::create|pkg_mkIndex|proc|puts|pwd|re_syntax|read|registry|rename|resource|scan|seek|set|socket|SafeBase|source|split|string|subst|Tcl|tcl_endOfWord|tcl_findLibrary|tcl_startOfNextWord|tcl_startOfPreviousWord|tcl_wordBreakAfter|tcl_wordBreakBefore|tcltest|tclvars|tell|time|trace|unknown|unset|update|uplevel|upvar|variable|vwait)\\\\b"},{"begin":"(?<=^|[\\\\[{;])\\\\s*(regexp|regsub)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.other.tcl"}},"comment":"special-case regexp/regsub keyword in order to handle the expression","end":"[\\\\n;\\\\]]","patterns":[{"match":"\\\\\\\\(?:.|\\\\n)","name":"constant.character.escape.tcl"},{"comment":"switch for regexp","match":"-\\\\w+\\\\s*"},{"applyEndPatternLast":1,"begin":"--\\\\s*","comment":"end of switches","end":"","patterns":[{"include":"#regexp"}]},{"include":"#regexp"}]},{"include":"#escape"},{"include":"#variable"},{"include":"#operator"},{"include":"#numeric"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.tcl"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.tcl"}},"name":"string.quoted.double.tcl","patterns":[{"include":"#escape"},{"include":"#variable"},{"include":"#embedded"}]}],"repository":{"bare-string":{"begin":"(?:^|(?<=\\\\s))\\"","comment":"matches a single quote-enclosed word without scoping","end":"\\"([^\\\\s\\\\]]*)","endCaptures":{"1":{"name":"invalid.illegal.tcl"}},"patterns":[{"include":"#escape"},{"include":"#variable"}]},"braces":{"begin":"(?:^|(?<=\\\\s))\\\\{","comment":"matches a single brace-enclosed word","end":"\\\\}([^\\\\s\\\\]]*)","endCaptures":{"1":{"name":"invalid.illegal.tcl"}},"patterns":[{"match":"\\\\\\\\[{}\\\\n]","name":"constant.character.escape.tcl"},{"include":"#inner-braces"}]},"embedded":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.tcl"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.embedded.end.tcl"}},"name":"source.tcl.embedded","patterns":[{"include":"source.tcl"}]},"escape":{"match":"\\\\\\\\(\\\\d{1,3}|x[a-fA-F0-9]+|u[a-fA-F0-9]{1,4}|.|\\\\n)","name":"constant.character.escape.tcl"},"inner-braces":{"begin":"\\\\{","comment":"matches a nested brace in a brace-enclosed word","end":"\\\\}","patterns":[{"match":"\\\\\\\\[{}\\\\n]","name":"constant.character.escape.tcl"},{"include":"#inner-braces"}]},"numeric":{"match":"(?<![a-zA-Z])([+-]?([0-9]*[.])?[0-9]+f?)(?![\\\\.a-zA-Z])","name":"constant.numeric.tcl"},"operator":{"match":"(?<= |\\\\d)(-|\\\\+|~|&{1,2}|\\\\|{1,2}|<{1,2}|>{1,2}|\\\\*{1,2}|!|%|\\\\/|<=|>=|={1,2}|!=|\\\\^)(?= |\\\\d)","name":"keyword.operator.tcl"},"regexp":{"begin":"(?=\\\\S)(?![\\\\n;\\\\]])","comment":"matches a single word, named as a regexp, then swallows the rest of the command","end":"(?=[\\\\n;\\\\]])","patterns":[{"begin":"(?=[^ \\\\t\\\\n;])","end":"(?=[ \\\\t\\\\n;])","name":"string.regexp.tcl","patterns":[{"include":"#braces"},{"include":"#bare-string"},{"include":"#escape"},{"include":"#variable"}]},{"begin":"[ \\\\t]","comment":"swallow the rest of the command","end":"(?=[\\\\n;\\\\]])","patterns":[{"include":"#variable"},{"include":"#embedded"},{"include":"#escape"},{"include":"#braces"},{"include":"#string"}]}]},"string":{"applyEndPatternLast":1,"begin":"(?:^|(?<=\\\\s))(?=\\")","comment":"matches a single quote-enclosed word with scoping","end":"","name":"string.quoted.double.tcl","patterns":[{"include":"#bare-string"}]},"variable":{"captures":{"1":{"name":"punctuation.definition.variable.tcl"}},"match":"(\\\\$)((?:[a-zA-Z0-9_]|::)+(\\\\([^\\\\)]+\\\\))?|\\\\{[^\\\\}]*\\\\})","name":"support.function.tcl"}},"scopeName":"source.tcl"}')),Roe=[$oe]});var Ej={};x(Ej,{default:()=>Poe});var joe,Poe,Qj=_(()=>{HB();Qe();rt();joe=Object.freeze(JSON.parse(`{"displayName":"Templ","name":"templ","patterns":[{"include":"#script-template"},{"include":"#css-template"},{"include":"#html-template"},{"include":"source.go"}],"repository":{"block-element":{"begin":"(</?)((?i:address|blockquote|dd|div|section|article|aside|header|footer|nav|menu|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|pre)(?=\\\\s|\\\\\\\\|>))","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.block.any.html"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.block.any.html","patterns":[{"include":"#tag-stuff"}]},"call-expression":{"begin":"({\\\\!)\\\\s+","beginCaptures":{"0":{"name":"start.call-expression.templ"},"1":{"name":"punctuation.brace.open"}},"end":"(})","endCaptures":{"0":{"name":"end.call-expression.templ"},"1":{"name":"punctuation.brace.close"}},"name":"call-expression.templ","patterns":[{"include":"source.go"}]},"case-expression":{"begin":"^\\\\s*case .+?:$","captures":{"0":{"name":"case.switch.html-template.templ","patterns":[{"include":"source.go"}]}},"end":"(^\\\\s*case .+?:$)|(^\\\\s*default:$)|(\\\\s*$)","patterns":[{"include":"#template-node"}]},"close-element":{"begin":"(</?)([a-zA-Z0-9:\\\\-]+)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.other.html"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.html","patterns":[{"include":"#tag-stuff"}]},"css-template":{"begin":"^(css) ([A-z_][A-z_0-9]*\\\\()","beginCaptures":{"1":{"name":"keyword.control.go"},"2":{"patterns":[{"include":"source.go"}]}},"end":"(?<=^}$)","name":"css-template.templ","patterns":[{"begin":"(?<=\\\\()","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.round.go"}},"name":"params.css-template.templ","patterns":[{"include":"source.go"}]},{"begin":"(?<=\\\\)) ({)$","beginCaptures":{"1":{"name":"punctuation.definition.begin.bracket.curly.go"}},"end":"^(})$","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.curly.go"}},"name":"block.css-template.templ","patterns":[{"begin":"\\\\s*((?:-(?:webkit|moz|o|ms|khtml)-)?(?:zoom|z-index|y|x|writing-mode|wrap|wrap-through|wrap-inside|wrap-flow|wrap-before|wrap-after|word-wrap|word-spacing|word-break|word|will-change|width|widows|white-space-collapse|white-space|white|weight|volume|voice-volume|voice-stress|voice-rate|voice-pitch-range|voice-pitch|voice-family|voice-duration|voice-balance|voice|visibility|vertical-align|vector-effect|variant|user-zoom|user-select|up|unicode-(bidi|range)|trim|translate|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform-box|transform|touch-action|top-width|top-style|top-right-radius|top-left-radius|top-color|top|timing-function|text-wrap|text-underline-position|text-transform|text-spacing|text-space-trim|text-space-collapse|text-size-adjust|text-shadow|text-replace|text-rendering|text-overflow|text-outline|text-orientation|text-justify|text-indent|text-height|text-emphasis-style|text-emphasis-skip|text-emphasis-position|text-emphasis-color|text-emphasis|text-decoration-style|text-decoration-stroke|text-decoration-skip|text-decoration-line|text-decoration-fill|text-decoration-color|text-decoration|text-combine-upright|text-anchor|text-align-last|text-align-all|text-align|text|target-position|target-new|target-name|target|table-layout|tab-size|system|symbols|suffix|style-type|style-position|style-image|style|stroke-width|stroke-opacity|stroke-miterlimit|stroke-linejoin|stroke-linecap|stroke-dashoffset|stroke-dasharray|stroke|string-set|stretch|stress|stop-opacity|stop-color|stacking-strategy|stacking-shift|stacking-ruby|stacking|src|speed|speech-rate|speech|speak-punctuation|speak-numeral|speak-header|speak-as|speak|span|spacing|space-collapse|space|solid-opacity|solid-color|sizing|size-adjust|size|shape-rendering|shape-padding|shape-outside|shape-margin|shape-inside|shape-image-threshold|shadow|scroll-snap-type|scroll-snap-points-y|scroll-snap-points-x|scroll-snap-destination|scroll-snap-coordinate|scroll-behavior|scale|ry|rx|respond-to|rule-width|rule-style|rule-color|rule|ruby-span|ruby-position|ruby-overhang|ruby-merge|ruby-align|ruby|rows|rotation-point|rotation|rotate|role|right-width|right-style|right-color|right|richness|rest-before|rest-after|rest|resource|resolution|resize|reset|replace|repeat|rendering-intent|region-fragment|rate|range|radius|r|quotes|punctuation-trim|punctuation|property|profile|presentation-level|presentation|prefix|position|pointer-events|point|play-state|play-during|play-count|pitch-range|pitch|phonemes|perspective-origin|perspective|pause-before|pause-after|pause|page-policy|page-break-inside|page-break-before|page-break-after|page|padding-top|padding-right|padding-left|padding-inline-start|padding-inline-end|padding-bottom|padding-block-start|padding-block-end|padding|pad|pack|overhang|overflow-y|overflow-x|overflow-wrap|overflow-style|overflow-inline|overflow-block|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|origin|orientation|orient|ordinal-group|order|opacity|offset-start|offset-inline-start|offset-inline-end|offset-end|offset-block-start|offset-block-end|offset-before|offset-after|offset|object-position|object-fit|numeral|new|negative|nav-up|nav-right|nav-left|nav-index|nav-down|nav|name|move-to|motion-rotation|motion-path|motion-offset|motion|model|mix-blend-mode|min-zoom|min-width|min-inline-size|min-height|min-block-size|min|max-zoom|max-width|max-lines|max-inline-size|max-height|max-block-size|max|mask-type|mask-size|mask-repeat|mask-position|mask-origin|mask-mode|mask-image|mask-composite|mask-clip|mask-border-width|mask-border-source|mask-border-slice|mask-border-repeat|mask-border-outset|mask-border-mode|mask-border|mask|marquee-style|marquee-speed|marquee-play-count|marquee-loop|marquee-direction|marquee|marks|marker-start|marker-side|marker-mid|marker-end|marker|margin-top|margin-right|margin-left|margin-inline-start|margin-inline-end|margin-bottom|margin-block-start|margin-block-end|margin|list-style-type|list-style-position|list-style-image|list-style|list|lines|line-stacking-strategy|line-stacking-shift|line-stacking-ruby|line-stacking|line-snap|line-height|line-grid|line-break|line|lighting-color|level|letter-spacing|length|left-width|left-style|left-color|left|label|kerning|justify-self|justify-items|justify-content|justify|iteration-count|isolation|inline-size|inline-box-align|initial-value|initial-size|initial-letter-wrap|initial-letter-align|initial-letter|initial-before-align|initial-before-adjust|initial-after-align|initial-after-adjust|index|indent|increment|image-rendering|image-resolution|image-orientation|image|icon|hyphens|hyphenate-limit-zone|hyphenate-limit-lines|hyphenate-limit-last|hyphenate-limit-chars|hyphenate-character|hyphenate|height|header|hanging-punctuation|grid-template-rows|grid-template-columns|grid-template-areas|grid-template|grid-row-start|grid-row-gap|grid-row-end|grid-row|grid-rows|grid-gap|grid-column-start|grid-column-gap|grid-column-end|grid-column|grid-columns|grid-auto-rows|grid-auto-flow|grid-auto-columns|grid-area|grid|glyph-orientation-vertical|glyph-orientation-horizontal|gap|font-weight|font-variant-position|font-variant-numeric|font-variant-ligatures|font-variant-east-asian|font-variant-caps|font-variant-alternates|font-variant|font-synthesis|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|flow-into|flow-from|flow|flood-opacity|flood-color|float-offset|float|flex-wrap|flex-shrink|flex-grow|flex-group|flex-flow|flex-direction|flex-basis|flex|fit-position|fit|filter|fill-rule|fill-opacity|fill|family|fallback|enable-background|empty-cells|emphasis|elevation|duration|drop-initial-value|drop-initial-size|drop-initial-before-align|drop-initial-before-adjust|drop-initial-after-align|drop-initial-after-adjust|drop|down|dominant-baseline|display-role|display-model|display|direction|delay|decoration-break|decoration|cy|cx|cursor|cue-before|cue-after|cue|crop|counter-set|counter-reset|counter-increment|counter|count|corner-shape|corners|continue|content|contain|columns|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|column-break-before|column-break-after|column|color-rendering|color-profile|color-interpolation-filters|color-interpolation|color-adjust|color|collapse|clip-rule|clip-path|clip|clear|character|caret-shape|caret-color|caret|caption-side|buffered-rendering|break-inside|break-before|break-after|break|box-suppress|box-snap|box-sizing|box-shadow|box-pack|box-orient|box-ordinal-group|box-lines|box-flex-group|box-flex|box-direction|box-decoration-break|box-align|box|bottom-width|bottom-style|bottom-right-radius|bottom-left-radius|bottom-color|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-limit|border-length|border-left-width|border-left-style|border-left-color|border-left|border-inline-start-width|border-inline-start-style|border-inline-start-color|border-inline-start|border-inline-end-width|border-inline-end-style|border-inline-end-color|border-inline-end|border-image-width|border-image-transform|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-clip-top|border-clip-right|border-clip-left|border-clip-bottom|border-clip|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border-block-start-width|border-block-start-style|border-block-start-color|border-block-start|border-block-end-width|border-block-end-style|border-block-end-color|border-block-end|border|bookmark-target|bookmark-level|bookmark-label|bookmark|block-size|binding|bidi|before|baseline-shift|baseline|balance|background-size|background-repeat|background-position-y|background-position-x|background-position-inline|background-position-block|background-position|background-origin|background-image|background-color|background-clip|background-blend-mode|background-attachment|background|backface-visibility|backdrop-filter|azimuth|attachment|appearance|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|alt|all|alignment-baseline|alignment-adjust|alignment|align-last|align-self|align-items|align-content|align|after|adjust|additive-symbols)):\\\\s+","beginCaptures":{"1":{"name":"support.type.property-name.css"}},"end":"(?<=;$)","name":"property.css-template.templ","patterns":[{"begin":"({)","beginCaptures":{"1":{"name":"punctuation.definition.begin.bracket.curly.go"}},"end":"(})(;)$","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.curly.go"},"2":{"name":"punctuation.terminator.rule.css"}},"name":"expression.property.css-template.templ","patterns":[{"include":"source.go"}]},{"captures":{"1":{"name":"support.type.property-value.css"},"2":{"name":"punctuation.terminator.rule.css"}},"match":"(.*)(;)$","name":"constant.property.css-template.templ"}]}]}]},"default-expression":{"begin":"^\\\\s*default:$","captures":{"0":{"name":"default.switch.html-template.templ","patterns":[{"include":"source.go"}]}},"end":"(^\\\\s*case .+?:$)|(^\\\\s*default:$)|(\\\\s*$)","patterns":[{"include":"#template-node"}]},"element":{"begin":"(<)([a-zA-Z0-9:\\\\-]++)(?=[^>]*></\\\\2>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.html"}},"end":"(>(<)/)(\\\\2)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"meta.scope.between-tag-pair.html"},"3":{"name":"entity.name.tag.html"},"4":{"name":"punctuation.definition.tag.html"}},"name":"meta.tag.any.html","patterns":[{"include":"#tag-stuff"}]},"else-expression":{"begin":"\\\\s+(else)\\\\s+({)\\\\s*$","beginCaptures":{"1":{"name":"keyword.control.go"},"2":{"name":"punctuation.definition.begin.bracket.curly.go"}},"end":"^\\\\s*(})$","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.curly.go"}},"name":"else.html-template.templ","patterns":[{"include":"#template-node"}]},"else-if-expression":{"begin":"\\\\s(else if)\\\\s","beginCaptures":{"1":{"name":"keyword.control.go"}},"end":"(?<=})","name":"else-if.html-template.templ","patterns":[{"begin":"(?<=if\\\\s)","end":"({)$","endCaptures":{"1":{"name":"punctuation.definition.begin.bracket.curly.go"}},"name":"expression.else-if.html-template.templ","patterns":[{"include":"source.go"}]},{"begin":"(?<={)$","end":"^\\\\s*(})","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.curly.go"}},"name":"block.else-if.html-template.templ","patterns":[{"include":"#template-node"}]}]},"entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)([a-zA-Z0-9]+|#[0-9]+|#[xX][0-9a-fA-F]+)(;)","name":"constant.character.entity.html"},{"match":"&","name":"invalid.illegal.bad-ampersand.html"}]},"for-expression":{"begin":"^\\\\s*for .+{","captures":{"0":{"name":"meta.embedded.block.go","patterns":[{"include":"source.go"}]}},"end":"\\\\s*}\\\\s*\\n","name":"for.html-template.templ","patterns":[{"include":"#template-node"}]},"go-comment-block":{"begin":"(\\\\/\\\\*)","beginCaptures":{"1":{"name":"punctuation.definition.comment.go"}},"end":"(\\\\*\\\\/)","endCaptures":{"1":{"name":"punctuation.definition.comment.go"}},"name":"comment.block.go"},"go-comment-double-slash":{"begin":"(\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.definition.comment.go"}},"end":"(?:\\\\n|$)","name":"comment.line.double-slash.go"},"html-comment":{"begin":"<!--","beginCaptures":{"0":{"name":"punctuation.definition.comment.html"}},"end":"-->","endCaptures":{"0":{"name":"punctuation.definition.comment.html"}},"name":"comment.block.html"},"html-template":{"begin":"^(templ) ((?:\\\\([A-z_][A-z_0-9]* \\\\*?[A-z_][A-z_0-9]*\\\\) )?[A-z_][A-z_0-9]*(\\\\(|\\\\[))","beginCaptures":{"1":{"name":"keyword.control.go"},"2":{"patterns":[{"include":"source.go"}]}},"end":"(?<=^}$)","name":"html-template.templ","patterns":[{"begin":"(?<=\\\\()","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.round.go"}},"name":"params.html-template.templ","patterns":[{"include":"source.go"}]},{"begin":"(?<=\\\\[)","end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.square.go"}},"name":"type-params.html-template.templ","patterns":[{"include":"source.go"}]},{"begin":"(?<=\\\\)) ({)$","beginCaptures":{"1":{"name":"punctuation.definition.begin.bracket.curly.go"}},"end":"^(})$","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.curly.go"}},"name":"block.html-template.templ","patterns":[{"include":"#template-node"}]}]},"if-expression":{"begin":"^\\\\s*(if)\\\\s","beginCaptures":{"1":{"name":"keyword.control.go"}},"end":"(?<=})","name":"if.html-template.templ","patterns":[{"begin":"(?<=if\\\\s)","end":"({)$","endCaptures":{"1":{"name":"punctuation.definition.begin.bracket.curly.go"}},"name":"expression.if.html-template.templ","patterns":[{"include":"source.go"}]},{"begin":"(?<={)$","end":"^\\\\s*(})","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.curly.go"}},"name":"block.if.html-template.templ","patterns":[{"include":"#template-node"}]}]},"import-expression":{"patterns":[{"begin":"(@)((?:[A-z_][A-z_0-9]*\\\\.)?[A-z_][A-z_0-9]*(?:\\\\(|{|$))","beginCaptures":{"1":{"name":"keyword.control.go"},"2":{"patterns":[{"include":"source.go"}]}},"end":"(?<=\\\\))$|(?<=})$|(?<=$)","name":"import-expression.templ","patterns":[{"begin":"(?<=[A-z_0-9]{)","end":"\\\\s*(})(\\\\.[A-z_][A-z_0-9]*\\\\()","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.curly.go"},"2":{"patterns":[{"include":"source.go"}]}},"name":"struct-method.import-expression.templ","patterns":[{"include":"source.go"}]},{"begin":"(?<=\\\\()","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.round.go"}},"name":"params.import-expression.templ","patterns":[{"include":"source.go"}]},{"begin":"(?<=\\\\))\\\\s({)$","beginCaptures":{"1":{"name":"punctuation.brace.open"}},"end":"^\\\\s*(})$","endCaptures":{"1":{"name":"punctuation.brace.close"}},"name":"children.import-expression.templ","patterns":[{"include":"#template-node"}]}]}]},"inline-element":{"begin":"(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)(?=\\\\s|\\\\\\\\|>))","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.inline.any.html"}},"end":"((?: ?/)?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.any.html","patterns":[{"include":"#tag-stuff"}]},"raw-go":{"begin":"{{","beginCaptures":{"0":{"name":"start.raw-go.templ"},"1":{"name":"punctuation.brace.open"}},"end":"}}","endCaptures":{"0":{"name":"end.raw-go.templ"},"1":{"name":"punctuation.brace.open"}},"name":"raw-go.templ","patterns":[{"include":"source.go"}]},"script-element":{"begin":"(<)(script)([^>]*)(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#tag-stuff"}]},"4":{"name":"punctuation.definition.tag.html"}},"end":"<\/script>","endCaptures":{"0":{"patterns":[{"include":"#close-element"}]}},"name":"meta.tag.script.html","patterns":[{"include":"source.js"}]},"script-template":{"begin":"^(script) ([A-z_][A-z_0-9]*\\\\()","beginCaptures":{"1":{"name":"keyword.control.go"},"2":{"patterns":[{"include":"source.go"}]}},"end":"(?<=^}$)","name":"script-template.templ","patterns":[{"begin":"(?<=\\\\()","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.round.go"}},"name":"params.script-template.templ","patterns":[{"include":"source.go"}]},{"begin":"(?<=\\\\)) ({)$","beginCaptures":{"1":{"name":"punctuation.definition.begin.bracket.curly.go"}},"end":"^(})$","endCaptures":{"1":{"name":"punctuation.definition.end.bracket.curly.go"}},"name":"block.script-template.templ","patterns":[{"include":"source.js"}]}]},"sgml":{"begin":"<!","captures":{"0":{"name":"punctuation.definition.tag.html"}},"end":">","name":"meta.tag.sgml.html","patterns":[{"begin":"(?i:DOCTYPE)","captures":{"1":{"name":"entity.name.tag.doctype.html"}},"end":"(?=>)","name":"meta.tag.sgml.doctype.html","patterns":[{"match":"\\"[^\\">]*\\"","name":"string.quoted.double.doctype.identifiers-and-DTDs.html"}]},{"begin":"\\\\[CDATA\\\\[","end":"]](?=>)","name":"constant.other.inline-data.html"},{"match":"(\\\\s*)(?!--|>)\\\\S(\\\\s*)","name":"invalid.illegal.bad-comments-or-CDATA.html"}]},"string-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.double.html","patterns":[{"include":"#entities"}]},"string-expression":{"begin":"{\\\\s+","beginCaptures":{"0":{"name":"start.string-expression.templ"}},"end":"}","endCaptures":{"0":{"name":"end.string-expression.templ"}},"name":"expression.html-template.templ","patterns":[{"include":"source.go"}]},"style-element":{"begin":"(<)(style)([^>]*)(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#tag-stuff"}]},"4":{"name":"punctuation.definition.tag.html"}},"end":"</style>","endCaptures":{"0":{"patterns":[{"include":"#close-element"}]}},"name":"meta.tag.style.html","patterns":[{"include":"source.css"}]},"switch-expression":{"begin":"^\\\\s*switch .+?{$","captures":{"0":{"name":"meta.embedded.block.go","patterns":[{"include":"source.go"}]}},"end":"^\\\\s*}$","name":"switch.html-template.templ","patterns":[{"include":"#template-node"},{"include":"#case-expression"},{"include":"#default-expression"}]},"tag-else-attribute":{"begin":"\\\\s(else)\\\\s({)$","beginCaptures":{"1":{"name":"keyword.control.go"},"2":{"name":"punctuation.brace.open"}},"end":"^\\\\s*(})$","endCaptures":{"1":{"name":"punctuation.brace.close"}},"name":"else.attribute.html","patterns":[{"include":"#tag-stuff"}]},"tag-else-if-attribute":{"begin":"\\\\s(else if)\\\\s","beginCaptures":{"1":{"name":"keyword.control.go"}},"end":"(?<=})","name":"else-if.attribute.html","patterns":[{"begin":"(?<=if\\\\s)","end":"({)$","endCaptures":{"1":{"name":"punctuation.brace.open"}},"name":"expression.else-if.attribute.html","patterns":[{"include":"source.go"}]},{"begin":"(?<={)$","end":"^\\\\s*(})","endCaptures":{"1":{"name":"punctuation.brace.close"}},"name":"block.else-if.attribute.html","patterns":[{"include":"#tag-stuff"}]}]},"tag-generic-attribute":{"match":"(?<=[^=])\\\\b([a-zA-Z0-9:-]+)","name":"entity.other.attribute-name.html"},"tag-id-attribute":{"begin":"\\\\b(id)\\\\b\\\\s*(=)","captures":{"1":{"name":"entity.other.attribute-name.id.html"},"2":{"name":"punctuation.separator.key-value.html"}},"end":"(?!\\\\G)(?<='|\\"|[^\\\\s<>/])","name":"meta.attribute-with-value.id.html","patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"meta.toc-list.id.html","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.double.html","patterns":[{"include":"#entities"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"meta.toc-list.id.html","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.single.html","patterns":[{"include":"#entities"}]},{"captures":{"0":{"name":"meta.toc-list.id.html"}},"match":"(?<==)(?:[^\\\\s{}<>/'\\"]|/(?!>))+","name":"string.unquoted.html"}]},"tag-if-attribute":{"begin":"^\\\\s*(if)\\\\s","beginCaptures":{"1":{"name":"keyword.control.go"}},"end":"(?<=})","name":"if.attribute.html","patterns":[{"begin":"(?<=if\\\\s)","end":"({)$","endCaptures":{"1":{"name":"punctuation.brace.open"}},"name":"expression.if.attribute.html","patterns":[{"include":"source.go"}]},{"begin":"(?<={)$","end":"^\\\\s*(})","endCaptures":{"1":{"name":"punctuation.brace.close"}},"name":"block.if.attribute.html","patterns":[{"include":"#tag-stuff"}]}]},"tag-stuff":{"patterns":[{"include":"#tag-id-attribute"},{"include":"#tag-generic-attribute"},{"include":"#string-double-quoted"},{"include":"#string-expression"},{"include":"#tag-if-attribute"},{"include":"#tag-else-if-attribute"},{"include":"#tag-else-attribute"}]},"template-node":{"patterns":[{"include":"#string-expression"},{"include":"#call-expression"},{"include":"#import-expression"},{"include":"#script-element"},{"include":"#style-element"},{"include":"#element"},{"include":"#html-comment"},{"include":"#go-comment-block"},{"include":"#go-comment-double-slash"},{"include":"#sgml"},{"include":"#block-element"},{"include":"#inline-element"},{"include":"#close-element"},{"include":"#else-if-expression"},{"include":"#if-expression"},{"include":"#else-expression"},{"include":"#for-expression"},{"include":"#switch-expression"},{"include":"#raw-go"}]}},"scopeName":"source.templ","embeddedLangs":["go","javascript","css"]}`)),Poe=[...UB,...J,...ue,joe]});var Ij={};x(Ij,{default:()=>Toe});var Moe,Toe,Dj=_(()=>{Moe=Object.freeze(JSON.parse('{"displayName":"Terraform","fileTypes":["tf","tfvars"],"name":"terraform","patterns":[{"include":"#comments"},{"include":"#attribute_definition"},{"include":"#block"},{"include":"#expressions"}],"repository":{"attribute_access":{"begin":"\\\\.(?!\\\\*)","beginCaptures":{"0":{"name":"keyword.operator.accessor.hcl"}},"comment":"Matches traversal attribute access such as .attr","end":"[[:alpha:]][\\\\w-]*|\\\\d*","endCaptures":{"0":{"patterns":[{"comment":"Attribute name","match":"(?!null|false|true)[[:alpha:]][\\\\w-]*","name":"variable.other.member.hcl"},{"comment":"Optional attribute index","match":"\\\\d+","name":"constant.numeric.integer.hcl"}]}}},"attribute_definition":{"captures":{"1":{"name":"punctuation.section.parens.begin.hcl"},"2":{"name":"variable.other.readwrite.hcl"},"3":{"name":"punctuation.section.parens.end.hcl"},"4":{"name":"keyword.operator.assignment.hcl"}},"comment":"Identifier \\"=\\" with optional parens","match":"(\\\\()?(\\\\b(?!null\\\\b|false\\\\b|true\\\\b)[[:alpha:]][[:alnum:]_-]*)(\\\\))?\\\\s*(\\\\=(?!\\\\=|\\\\>))\\\\s*","name":"variable.declaration.hcl"},"attribute_splat":{"begin":"\\\\.","beginCaptures":{"0":{"name":"keyword.operator.accessor.hcl"}},"comment":"Legacy attribute-only splat","end":"\\\\*","endCaptures":{"0":{"name":"keyword.operator.splat.hcl"}}},"block":{"begin":"([\\\\w][\\\\-\\\\w]*)([\\\\s\\\\\\"\\\\-\\\\w]*)(\\\\{)","beginCaptures":{"1":{"patterns":[{"comment":"Known block type","match":"\\\\bdata|check|import|locals|module|output|provider|resource|terraform|variable\\\\b","name":"entity.name.type.terraform"},{"comment":"Unknown block type","match":"\\\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\\\b","name":"entity.name.type.hcl"}]},"2":{"patterns":[{"comment":"Block label","match":"[\\\\\\"\\\\-\\\\w]+","name":"variable.other.enummember.hcl"}]},"3":{"name":"punctuation.section.block.begin.hcl"},"5":{"name":"punctuation.section.block.begin.hcl"}},"comment":"This will match Terraform blocks like `resource \\"aws_instance\\" \\"web\\" {` or `module {`","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.block.end.hcl"}},"name":"meta.block.hcl","patterns":[{"include":"#comments"},{"include":"#attribute_definition"},{"include":"#block"},{"include":"#expressions"}]},"block_inline_comments":{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.hcl"}},"comment":"Inline comments start with the /* sequence and end with the */ sequence, and may have any characters within except the ending sequence. An inline comment is considered equivalent to a whitespace sequence","end":"\\\\*/","name":"comment.block.hcl"},"brackets":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.hcl"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.brackets.end.hcl"}},"patterns":[{"comment":"Splat operator","match":"\\\\*","name":"keyword.operator.splat.hcl"},{"include":"#comma"},{"include":"#comments"},{"include":"#inline_for_expression"},{"include":"#inline_if_expression"},{"include":"#expressions"},{"include":"#local_identifiers"}]},"char_escapes":{"comment":"Character Escapes","match":"\\\\\\\\[nrt\\"\\\\\\\\]|\\\\\\\\u(\\\\h{8}|\\\\h{4})","name":"constant.character.escape.hcl"},"comma":{"comment":"Commas - used in certain expressions","match":"\\\\,","name":"punctuation.separator.hcl"},"comments":{"patterns":[{"include":"#hash_line_comments"},{"include":"#double_slash_line_comments"},{"include":"#block_inline_comments"}]},"double_slash_line_comments":{"begin":"//","captures":{"0":{"name":"punctuation.definition.comment.hcl"}},"comment":"Line comments start with // sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence","end":"$\\\\n?","name":"comment.line.double-slash.hcl"},"expressions":{"patterns":[{"include":"#literal_values"},{"include":"#operators"},{"include":"#tuple_for_expression"},{"include":"#object_for_expression"},{"include":"#brackets"},{"include":"#objects"},{"include":"#attribute_access"},{"include":"#attribute_splat"},{"include":"#functions"},{"include":"#parens"}]},"for_expression_body":{"patterns":[{"comment":"in keyword","match":"\\\\bin\\\\b","name":"keyword.operator.word.hcl"},{"comment":"if keyword","match":"\\\\bif\\\\b","name":"keyword.control.conditional.hcl"},{"match":"\\\\:","name":"keyword.operator.hcl"},{"include":"#expressions"},{"include":"#comments"},{"include":"#comma"},{"include":"#local_identifiers"}]},"functions":{"begin":"([:\\\\-\\\\w]+)(\\\\()","beginCaptures":{"1":{"patterns":[{"match":"\\\\b(core::)?(abs|abspath|alltrue|anytrue|base64decode|base64encode|base64gzip|base64sha256|base64sha512|basename|bcrypt|can|ceil|chomp|chunklist|cidrhost|cidrnetmask|cidrsubnet|cidrsubnets|coalesce|coalescelist|compact|concat|contains|csvdecode|dirname|distinct|element|endswith|file|filebase64|filebase64sha256|filebase64sha512|fileexists|filemd5|fileset|filesha1|filesha256|filesha512|flatten|floor|format|formatdate|formatlist|indent|index|join|jsondecode|jsonencode|keys|length|log|lookup|lower|matchkeys|max|md5|merge|min|nonsensitive|one|parseint|pathexpand|plantimestamp|pow|range|regex|regexall|replace|reverse|rsadecrypt|sensitive|setintersection|setproduct|setsubtract|setunion|sha1|sha256|sha512|signum|slice|sort|split|startswith|strcontains|strrev|substr|sum|templatefile|textdecodebase64|textencodebase64|timeadd|timecmp|timestamp|title|tobool|tolist|tomap|tonumber|toset|tostring|transpose|trim|trimprefix|trimspace|trimsuffix|try|upper|urlencode|uuid|uuidv5|values|yamldecode|yamlencode|zipmap)\\\\b","name":"support.function.builtin.terraform"},{"match":"\\\\bprovider::[[:alpha:]][\\\\w_-]*::[[:alpha:]][\\\\w_-]*\\\\b","name":"support.function.provider.terraform"}]},"2":{"name":"punctuation.section.parens.begin.hcl"}},"comment":"Built-in function calls","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.hcl"}},"name":"meta.function-call.hcl","patterns":[{"include":"#comments"},{"include":"#expressions"},{"include":"#comma"}]},"hash_line_comments":{"begin":"#","captures":{"0":{"name":"punctuation.definition.comment.hcl"}},"comment":"Line comments start with # sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence","end":"$\\\\n?","name":"comment.line.number-sign.hcl"},"hcl_type_keywords":{"comment":"Type keywords known to HCL.","match":"\\\\b(any|string|number|bool|list|set|map|tuple|object)\\\\b","name":"storage.type.hcl"},"heredoc":{"begin":"(\\\\<\\\\<\\\\-?)\\\\s*(\\\\w+)\\\\s*$","beginCaptures":{"1":{"name":"keyword.operator.heredoc.hcl"},"2":{"name":"keyword.control.heredoc.hcl"}},"comment":"String Heredoc","end":"^\\\\s*\\\\2\\\\s*$","endCaptures":{"0":{"name":"keyword.control.heredoc.hcl"}},"name":"string.unquoted.heredoc.hcl","patterns":[{"include":"#string_interpolation"}]},"inline_for_expression":{"captures":{"1":{"name":"keyword.control.hcl"},"2":{"patterns":[{"match":"\\\\=\\\\>","name":"storage.type.function.hcl"},{"include":"#for_expression_body"}]}},"match":"(for)\\\\b(.*)\\\\n"},"inline_if_expression":{"begin":"(if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.conditional.hcl"}},"end":"\\\\n","patterns":[{"include":"#expressions"},{"include":"#comments"},{"include":"#comma"},{"include":"#local_identifiers"}]},"language_constants":{"comment":"Language Constants","match":"\\\\b(true|false|null)\\\\b","name":"constant.language.hcl"},"literal_values":{"patterns":[{"include":"#numeric_literals"},{"include":"#language_constants"},{"include":"#string_literals"},{"include":"#heredoc"},{"include":"#hcl_type_keywords"},{"include":"#named_value_references"}]},"local_identifiers":{"comment":"Local Identifiers","match":"\\\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\\\b","name":"variable.other.readwrite.hcl"},"named_value_references":{"comment":"Constant values available only to Terraform.","match":"\\\\b(var|local|module|data|path|terraform)\\\\b","name":"variable.other.readwrite.terraform"},"numeric_literals":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.exponent.hcl"}},"comment":"Integer, no fraction, optional exponent","match":"\\\\b\\\\d+([Ee][+-]?)\\\\d+\\\\b","name":"constant.numeric.float.hcl"},{"captures":{"1":{"name":"punctuation.separator.decimal.hcl"},"2":{"name":"punctuation.separator.exponent.hcl"}},"comment":"Integer, fraction, optional exponent","match":"\\\\b\\\\d+(\\\\.)\\\\d+(?:([Ee][+-]?)\\\\d+)?\\\\b","name":"constant.numeric.float.hcl"},{"comment":"Integers","match":"\\\\b\\\\d+\\\\b","name":"constant.numeric.integer.hcl"}]},"object_for_expression":{"begin":"(\\\\{)\\\\s?(for)\\\\b","beginCaptures":{"1":{"name":"punctuation.section.braces.begin.hcl"},"2":{"name":"keyword.control.hcl"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.braces.end.hcl"}},"patterns":[{"match":"\\\\=\\\\>","name":"storage.type.function.hcl"},{"include":"#for_expression_body"}]},"object_key_values":{"patterns":[{"include":"#comments"},{"include":"#literal_values"},{"include":"#operators"},{"include":"#tuple_for_expression"},{"include":"#object_for_expression"},{"include":"#heredoc"},{"include":"#functions"}]},"objects":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.braces.begin.hcl"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.braces.end.hcl"}},"name":"meta.braces.hcl","patterns":[{"include":"#comments"},{"include":"#objects"},{"include":"#inline_for_expression"},{"include":"#inline_if_expression"},{"captures":{"1":{"name":"meta.mapping.key.hcl variable.other.readwrite.hcl"},"2":{"name":"keyword.operator.assignment.hcl","patterns":[{"match":"\\\\=\\\\>","name":"storage.type.function.hcl"}]}},"comment":"Literal, named object key","match":"\\\\b((?!null|false|true)[[:alpha:]][[:alnum:]_-]*)\\\\s*(\\\\=\\\\>?)\\\\s*"},{"captures":{"0":{"patterns":[{"include":"#named_value_references"}]},"1":{"name":"meta.mapping.key.hcl string.quoted.double.hcl"},"2":{"name":"punctuation.definition.string.begin.hcl"},"3":{"name":"punctuation.definition.string.end.hcl"},"4":{"name":"keyword.operator.hcl"}},"comment":"String object key","match":"\\\\b((\\").*(\\"))\\\\s*(\\\\=)\\\\s*"},{"begin":"^\\\\s*\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.hcl"}},"comment":"Computed object key (any expression between parens)","end":"(\\\\))\\\\s*(=|:)\\\\s*","endCaptures":{"1":{"name":"punctuation.section.parens.end.hcl"},"2":{"name":"keyword.operator.hcl"}},"name":"meta.mapping.key.hcl","patterns":[{"include":"#named_value_references"},{"include":"#attribute_access"}]},{"include":"#object_key_values"}]},"operators":{"patterns":[{"match":"\\\\>\\\\=","name":"keyword.operator.hcl"},{"match":"\\\\<\\\\=","name":"keyword.operator.hcl"},{"match":"\\\\=\\\\=","name":"keyword.operator.hcl"},{"match":"\\\\!\\\\=","name":"keyword.operator.hcl"},{"match":"\\\\+","name":"keyword.operator.arithmetic.hcl"},{"match":"\\\\-","name":"keyword.operator.arithmetic.hcl"},{"match":"\\\\*","name":"keyword.operator.arithmetic.hcl"},{"match":"\\\\/","name":"keyword.operator.arithmetic.hcl"},{"match":"\\\\%","name":"keyword.operator.arithmetic.hcl"},{"match":"\\\\&\\\\&","name":"keyword.operator.logical.hcl"},{"match":"\\\\|\\\\|","name":"keyword.operator.logical.hcl"},{"match":"\\\\!","name":"keyword.operator.logical.hcl"},{"match":"\\\\>","name":"keyword.operator.hcl"},{"match":"\\\\<","name":"keyword.operator.hcl"},{"match":"\\\\?","name":"keyword.operator.hcl"},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.hcl"},{"match":"\\\\:","name":"keyword.operator.hcl"},{"match":"\\\\=\\\\>","name":"keyword.operator.hcl"}]},"parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.hcl"}},"comment":"Parens - matched *after* function syntax","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.hcl"}},"patterns":[{"include":"#comments"},{"include":"#expressions"}]},"string_interpolation":{"begin":"(?<![%$])([%$]{)","beginCaptures":{"1":{"name":"keyword.other.interpolation.begin.hcl"}},"comment":"String interpolation","end":"\\\\}","endCaptures":{"0":{"name":"keyword.other.interpolation.end.hcl"}},"name":"meta.interpolation.hcl","patterns":[{"comment":"Trim left whitespace","match":"\\\\~\\\\s","name":"keyword.operator.template.left.trim.hcl"},{"comment":"Trim right whitespace","match":"\\\\s\\\\~","name":"keyword.operator.template.right.trim.hcl"},{"comment":"if/else/endif and for/in/endfor directives","match":"\\\\b(if|else|endif|for|in|endfor)\\\\b","name":"keyword.control.hcl"},{"include":"#expressions"},{"include":"#local_identifiers"}]},"string_literals":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.hcl"}},"comment":"Strings","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.hcl"}},"name":"string.quoted.double.hcl","patterns":[{"include":"#string_interpolation"},{"include":"#char_escapes"}]},"tuple_for_expression":{"begin":"(\\\\[)\\\\s?(for)\\\\b","beginCaptures":{"1":{"name":"punctuation.section.brackets.begin.hcl"},"2":{"name":"keyword.control.hcl"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.brackets.end.hcl"}},"patterns":[{"include":"#for_expression_body"}]}},"scopeName":"source.hcl.terraform","aliases":["tf","tfvars"]}')),Toe=[Moe]});var Fj={};x(Fj,{default:()=>Goe});var qoe,Goe,Sj=_(()=>{qoe=Object.freeze(JSON.parse(`{"displayName":"TOML","fileTypes":["toml"],"name":"toml","patterns":[{"include":"#comments"},{"include":"#groups"},{"include":"#key_pair"},{"include":"#invalid"}],"repository":{"comments":{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.toml"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.toml"}},"end":"\\\\n","name":"comment.line.number-sign.toml"}]},"groups":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.section.begin.toml"},"2":{"patterns":[{"match":"[^\\\\s.]+","name":"entity.name.section.toml"}]},"3":{"name":"punctuation.definition.section.begin.toml"}},"match":"^\\\\s*(\\\\[)([^\\\\[\\\\]]*)(\\\\])","name":"meta.group.toml"},{"captures":{"1":{"name":"punctuation.definition.section.begin.toml"},"2":{"patterns":[{"match":"[^\\\\s.]+","name":"entity.name.section.toml"}]},"3":{"name":"punctuation.definition.section.begin.toml"}},"match":"^\\\\s*(\\\\[\\\\[)([^\\\\[\\\\]]*)(\\\\]\\\\])","name":"meta.group.double.toml"}]},"invalid":{"match":"\\\\S+(\\\\s*(?=\\\\S))?","name":"invalid.illegal.not-allowed-here.toml"},"key_pair":{"patterns":[{"begin":"([A-Za-z0-9_-]+)\\\\s*(=)\\\\s*","captures":{"1":{"name":"variable.other.key.toml"},"2":{"name":"punctuation.separator.key-value.toml"}},"end":"(?<=\\\\S)(?<!=)|$","patterns":[{"include":"#primatives"}]},{"begin":"((\\")(.*?)(\\"))\\\\s*(=)\\\\s*","captures":{"1":{"name":"variable.other.key.toml"},"2":{"name":"punctuation.definition.variable.begin.toml"},"3":{"patterns":[{"match":"\\\\\\\\([btnfr\\"\\\\\\\\]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.escape.toml"},{"match":"\\\\\\\\[^btnfr\\"\\\\\\\\]","name":"invalid.illegal.escape.toml"},{"match":"\\"","name":"invalid.illegal.not-allowed-here.toml"}]},"4":{"name":"punctuation.definition.variable.end.toml"},"5":{"name":"punctuation.separator.key-value.toml"}},"end":"(?<=\\\\S)(?<!=)|$","patterns":[{"include":"#primatives"}]},{"begin":"((')([^']*)('))\\\\s*(=)\\\\s*","captures":{"1":{"name":"variable.other.key.toml"},"2":{"name":"punctuation.definition.variable.begin.toml"},"4":{"name":"punctuation.definition.variable.end.toml"},"5":{"name":"punctuation.separator.key-value.toml"}},"end":"(?<=\\\\S)(?<!=)|$","patterns":[{"include":"#primatives"}]},{"begin":"(((?:[A-Za-z0-9_-]+|\\"(?:[^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'[^']*')(?:\\\\s*\\\\.\\\\s*|(?=\\\\s*=))){2,})\\\\s*(=)\\\\s*","captures":{"1":{"name":"variable.other.key.toml","patterns":[{"match":"\\\\.","name":"punctuation.separator.variable.toml"},{"captures":{"1":{"name":"punctuation.definition.variable.begin.toml"},"2":{"patterns":[{"match":"\\\\\\\\([btnfr\\"\\\\\\\\]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.escape.toml"},{"match":"\\\\\\\\[^btnfr\\"\\\\\\\\]","name":"invalid.illegal.escape.toml"}]},"3":{"name":"punctuation.definition.variable.end.toml"}},"match":"(\\")((?:[^\\"\\\\\\\\]|\\\\\\\\.)*)(\\")"},{"captures":{"1":{"name":"punctuation.definition.variable.begin.toml"},"2":{"name":"punctuation.definition.variable.end.toml"}},"match":"(')[^']*(')"}]},"3":{"name":"punctuation.separator.key-value.toml"}},"comment":"Dotted key","end":"(?<=\\\\S)(?<!=)|$","patterns":[{"include":"#primatives"}]}]},"primatives":{"patterns":[{"begin":"\\\\G\\"\\"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.toml"}},"end":"\\"{3,5}","endCaptures":{"0":{"name":"punctuation.definition.string.end.toml"}},"name":"string.quoted.triple.double.toml","patterns":[{"match":"\\\\\\\\([btnfr\\"\\\\\\\\]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.escape.toml"},{"match":"\\\\\\\\[^btnfr\\"\\\\\\\\\\\\n]","name":"invalid.illegal.escape.toml"}]},{"begin":"\\\\G\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.toml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.toml"}},"name":"string.quoted.double.toml","patterns":[{"match":"\\\\\\\\([btnfr\\"\\\\\\\\]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.escape.toml"},{"match":"\\\\\\\\[^btnfr\\"\\\\\\\\]","name":"invalid.illegal.escape.toml"}]},{"begin":"\\\\G'''","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.toml"}},"end":"'{3,5}","endCaptures":{"0":{"name":"punctuation.definition.string.end.toml"}},"name":"string.quoted.triple.single.toml"},{"begin":"\\\\G'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.toml"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.toml"}},"name":"string.quoted.single.toml"},{"match":"\\\\G[0-9]{4}-(0[1-9]|1[012])-(?!00|3[2-9])[0-3][0-9]([Tt ](?!2[5-9])[0-2][0-9]:[0-5][0-9]:(?!6[1-9])[0-6][0-9](\\\\.[0-9]+)?(Z|[+-](?!2[5-9])[0-2][0-9]:[0-5][0-9])?)?","name":"constant.other.date.toml"},{"match":"\\\\G(?!2[5-9])[0-2][0-9]:[0-5][0-9]:(?!6[1-9])[0-6][0-9](\\\\.[0-9]+)?","name":"constant.other.time.toml"},{"match":"\\\\G(true|false)","name":"constant.language.boolean.toml"},{"match":"\\\\G0x\\\\h(\\\\h|_\\\\h)*","name":"constant.numeric.hex.toml"},{"match":"\\\\G0o[0-7]([0-7]|_[0-7])*","name":"constant.numeric.octal.toml"},{"match":"\\\\G0b[01]([01]|_[01])*","name":"constant.numeric.binary.toml"},{"match":"\\\\G[+-]?(inf|nan)","name":"constant.numeric.toml"},{"match":"\\\\G([+-]?(0|([1-9](([0-9]|_[0-9])+)?)))(?=[.eE])(\\\\.([0-9](([0-9]|_[0-9])+)?))?([eE]([+-]?[0-9](([0-9]|_[0-9])+)?))?","name":"constant.numeric.float.toml"},{"match":"\\\\G([+-]?(0|([1-9](([0-9]|_[0-9])+)?)))","name":"constant.numeric.integer.toml"},{"begin":"\\\\G\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.toml"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.array.end.toml"}},"name":"meta.array.toml","patterns":[{"begin":"(?=[\\"'']|[+-]?[0-9]|[+-]?(inf|nan)|true|false|\\\\[|\\\\{)","end":",|(?=])","endCaptures":{"0":{"name":"punctuation.separator.array.toml"}},"patterns":[{"include":"#primatives"},{"include":"#comments"},{"include":"#invalid"}]},{"include":"#comments"},{"include":"#invalid"}]},{"begin":"\\\\G\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.inline-table.begin.toml"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.inline-table.end.toml"}},"name":"meta.inline-table.toml","patterns":[{"begin":"(?=\\\\S)","end":",|(?=})","endCaptures":{"0":{"name":"punctuation.separator.inline-table.toml"}},"patterns":[{"include":"#key_pair"}]},{"include":"#comments"}]}]}},"scopeName":"source.toml"}`)),Goe=[qoe]});var zoe,Oj,Nj=_(()=>{hn();rt();Qe();zoe=Object.freeze(JSON.parse('{"fileTypes":["js","jsx","ts","tsx","html","vue","svelte","php","res"],"injectTo":["source.ts","source.js"],"injectionSelector":"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string, L:source.vue -comment -string, L:source.svelte -comment -string, L:source.php -comment -string, L:source.rescript -comment -string","injections":{"L:source":{"patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"es-tag-css","patterns":[{"begin":"(?i)(\\\\s?\\\\/\\\\*\\\\s?(css|inline-css)\\\\s?\\\\*\\\\/\\\\s?)(`)","beginCaptures":{"1":{"name":"comment.block"}},"end":"(`)","patterns":[{"include":"source.ts#template-substitution-element"},{"include":"source.css"},{"include":"inline.es6-htmlx#template"}]},{"begin":"(?i)(\\\\s*(css|inline-css))(`)","beginCaptures":{"1":{"name":"comment.block"}},"end":"(`)","patterns":[{"include":"source.ts#template-substitution-element"},{"include":"source.css"},{"include":"inline.es6-htmlx#template"},{"include":"string.quoted.other.template.js"}]},{"begin":"(?i)(?<=\\\\s|\\\\,|\\\\=|\\\\:|\\\\(|\\\\$\\\\()\\\\s{0,}(((\\\\/\\\\*)|(\\\\/\\\\/))\\\\s?(css|inline-css)[ ]{0,1000}\\\\*?\\\\/?)[ ]{0,1000}$","beginCaptures":{"1":{"name":"comment.line"}},"end":"(`).*","patterns":[{"begin":"(\\\\G)","end":"(`)"},{"include":"source.ts#template-substitution-element"},{"include":"source.css"}]},{"begin":"(\\\\${)","beginCaptures":{"1":{"name":"entity.name.tag"}},"end":"(})","endCaptures":{"1":{"name":"entity.name.tag"}},"patterns":[{"include":"source.ts#template-substitution-element"},{"include":"source.js"}]}],"scopeName":"inline.es6-css","embeddedLangs":["typescript","css","javascript"]}')),Oj=[...Ge,...ue,...J,zoe]});var Uoe,Lj,$j=_(()=>{hn();Ho();Qe();Uoe=Object.freeze(JSON.parse('{"fileTypes":["js","jsx","ts","tsx","html","vue","svelte","php","res"],"injectTo":["source.ts","source.js"],"injectionSelector":"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string","injections":{"L:source":{"patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"es-tag-glsl","patterns":[{"begin":"(?i)(\\\\s?\\\\/\\\\*\\\\s?(glsl|inline-glsl)\\\\s?\\\\*\\\\/\\\\s?)(`)","beginCaptures":{"1":{"name":"comment.block"}},"end":"(`)","patterns":[{"include":"source.ts#template-substitution-element"},{"include":"source.glsl"},{"include":"inline.es6-htmlx#template"}]},{"begin":"(?i)(\\\\s*(glsl|inline-glsl))(`)","beginCaptures":{"1":{"name":"comment.block"}},"end":"(`)","patterns":[{"include":"source.ts#template-substitution-element"},{"include":"source.glsl"},{"include":"inline.es6-htmlx#template"},{"include":"string.quoted.other.template.js"}]},{"begin":"(?i)(?<=\\\\s|\\\\,|\\\\=|\\\\:|\\\\(|\\\\$\\\\()\\\\s{0,}(((\\\\/\\\\*)|(\\\\/\\\\/))\\\\s?(glsl|inline-glsl)[ ]{0,1000}\\\\*?\\\\/?)[ ]{0,1000}$","beginCaptures":{"1":{"name":"comment.line"}},"end":"(`).*","patterns":[{"begin":"(\\\\G)","end":"(`)"},{"include":"source.ts#template-substitution-element"},{"include":"source.glsl"}]},{"begin":"(\\\\${)","beginCaptures":{"1":{"name":"entity.name.tag"}},"end":"(})","endCaptures":{"1":{"name":"entity.name.tag"}},"patterns":[{"include":"source.ts#template-substitution-element"},{"include":"source.js"}]}],"scopeName":"inline.es6-glsl","embeddedLangs":["typescript","glsl","javascript"]}')),Lj=[...Ge,...Xa,...J,Uoe]});var Hoe,Rj,jj=_(()=>{hn();Ye();Qe();Hoe=Object.freeze(JSON.parse('{"fileTypes":["js","jsx","ts","tsx","html","vue","svelte","php","res"],"injectTo":["source.ts","source.js"],"injectionSelector":"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string","injections":{"L:source":{"patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"es-tag-html","patterns":[{"begin":"(?i)(\\\\s?\\\\/\\\\*\\\\s?(html|template|inline-html|inline-template)\\\\s?\\\\*\\\\/\\\\s?)(`)","beginCaptures":{"1":{"name":"comment.block"}},"end":"(`)","patterns":[{"include":"source.ts#template-substitution-element"},{"include":"text.html.basic"},{"include":"inline.es6-htmlx#template"}]},{"begin":"(?i)(\\\\s*(html|template|inline-html|inline-template))(`)","beginCaptures":{"1":{"name":"comment.block"}},"end":"(`)","patterns":[{"include":"source.ts#template-substitution-element"},{"include":"text.html.basic"},{"include":"inline.es6-htmlx#template"},{"include":"string.quoted.other.template.js"}]},{"begin":"(?i)(?<=\\\\s|\\\\,|\\\\=|\\\\:|\\\\(|\\\\$\\\\()\\\\s{0,}(((\\\\/\\\\*)|(\\\\/\\\\/))\\\\s?(html|template|inline-html|inline-template)[ ]{0,1000}\\\\*?\\\\/?)[ ]{0,1000}$","beginCaptures":{"1":{"name":"comment.line"}},"end":"(`).*","patterns":[{"begin":"(\\\\G)","end":"(`)"},{"include":"source.ts#template-substitution-element"},{"include":"text.html.basic"}]},{"begin":"(\\\\${)","beginCaptures":{"1":{"name":"entity.name.tag"}},"end":"(})","endCaptures":{"1":{"name":"entity.name.tag"}},"patterns":[{"include":"source.ts#template-substitution-element"},{"include":"source.js"}]},{"begin":"(\\\\$\\\\(`)","beginCaptures":{"1":{"name":"entity.name.tag"}},"end":"(`\\\\))","endCaptures":{"1":{"name":"entity.name.tag"}},"patterns":[{"include":"source.ts#template-substitution-element"},{"include":"source.js"}]}],"scopeName":"inline.es6-html","embeddedLangs":["typescript","html","javascript"]}')),Rj=[...Ge,...ce,...J,Hoe]});var Zoe,Pj,Mj=_(()=>{hn();Nn();Zoe=Object.freeze(JSON.parse('{"fileTypes":["js","jsx","ts","tsx","html","vue","svelte","php","res"],"injectTo":["source.ts","source.js"],"injectionSelector":"L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string","injections":{"L:source":{"patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"es-tag-sql","patterns":[{"begin":"(?i)\\\\b(\\\\w+\\\\.sql)\\\\s*(`)","beginCaptures":{"1":{"name":"variable.parameter"}},"end":"(`)","patterns":[{"include":"source.ts#template-substitution-element"},{"include":"source.ts#string-character-escape"},{"include":"source.sql"},{"include":"source.plpgsql.postgres"},{"match":"."}]},{"begin":"(?i)(\\\\s?\\\\/?\\\\*?\\\\s?(sql|inline-sql)\\\\s?\\\\*?\\\\/?\\\\s?)(`)","beginCaptures":{"1":{"name":"comment.block"}},"end":"(`)","patterns":[{"include":"source.ts#template-substitution-element"},{"include":"source.ts#string-character-escape"},{"include":"source.sql"},{"include":"source.plpgsql.postgres"},{"match":"."}]},{"begin":"(?i)(?<=\\\\s|\\\\,|\\\\=|\\\\:|\\\\(|\\\\$\\\\()\\\\s{0,}(((\\\\/\\\\*)|(\\\\/\\\\/))\\\\s?(sql|inline-sql)[ ]{0,1000}\\\\*?\\\\/?)[ ]{0,1000}$","beginCaptures":{"1":{"name":"comment.line"}},"end":"(`)","patterns":[{"begin":"(\\\\G)","end":"(`)"},{"include":"source.ts#template-substitution-element"},{"include":"source.ts#string-character-escape"},{"include":"source.sql"},{"include":"source.plpgsql.postgres"},{"match":"."}]}],"scopeName":"inline.es6-sql","embeddedLangs":["typescript","sql"]}')),Pj=[...Ge,...Ve,Zoe]});var Yoe,Tj,qj=_(()=>{Ja();Yoe=Object.freeze(JSON.parse('{"fileTypes":["js","jsx","ts","tsx","html","vue","svelte","php","res"],"injectTo":["source.ts","source.js"],"injectionSelector":"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string","injections":{"L:source":{"patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"es-tag-xml","patterns":[{"begin":"(?i)(\\\\s?\\\\/\\\\*\\\\s?(xml|svg|inline-svg|inline-xml)\\\\s?\\\\*\\\\/\\\\s?)(`)","beginCaptures":{"1":{"name":"comment.block"}},"end":"(`)","patterns":[{"include":"text.xml"}]},{"begin":"(?i)(\\\\s*(xml|inline-xml))(`)","beginCaptures":{"1":{"name":"comment.block"}},"end":"(`)","patterns":[{"include":"text.xml"}]},{"begin":"(?i)(?<=\\\\s|\\\\,|\\\\=|\\\\:|\\\\(|\\\\$\\\\()\\\\s{0,}(((\\\\/\\\\*)|(\\\\/\\\\/))\\\\s?(xml|svg|inline-svg|inline-xml)[ ]{0,1000}\\\\*?\\\\/?)[ ]{0,1000}$","beginCaptures":{"1":{"name":"comment.line"}},"end":"(`).*","patterns":[{"begin":"(\\\\G)","end":"(`)"},{"include":"text.xml"}]}],"scopeName":"inline.es6-xml","embeddedLangs":["xml"]}')),Tj=[...Qt,Yoe]});var Gj={};x(Gj,{default:()=>Koe});var Woe,Koe,zj=_(()=>{hn();Nj();$j();jj();Mj();qj();Woe=Object.freeze(JSON.parse('{"displayName":"TypeScript with Tags","name":"ts-tags","patterns":[{"include":"source.ts"}],"scopeName":"source.ts.tags","embeddedLangs":["typescript","es-tag-css","es-tag-glsl","es-tag-html","es-tag-sql","es-tag-xml"],"aliases":["lit"]}')),Koe=[...Ge,...Oj,...Lj,...Rj,...Pj,...Tj,Woe]});var Uj={};x(Uj,{default:()=>Voe});var Joe,Voe,Hj=_(()=>{Joe=Object.freeze(JSON.parse('{"displayName":"TSV","fileTypes":["tsv","tab"],"name":"tsv","patterns":[{"captures":{"1":{"name":"rainbow1"},"2":{"name":"keyword.rainbow2"},"3":{"name":"entity.name.function.rainbow3"},"4":{"name":"comment.rainbow4"},"5":{"name":"string.rainbow5"},"6":{"name":"variable.parameter.rainbow6"},"7":{"name":"constant.numeric.rainbow7"},"8":{"name":"entity.name.type.rainbow8"},"9":{"name":"markup.bold.rainbow9"},"10":{"name":"invalid.rainbow10"}},"match":"([^\\\\t]*\\\\t?)([^\\\\t]*\\\\t?)([^\\\\t]*\\\\t?)([^\\\\t]*\\\\t?)([^\\\\t]*\\\\t?)([^\\\\t]*\\\\t?)([^\\\\t]*\\\\t?)([^\\\\t]*\\\\t?)([^\\\\t]*\\\\t?)([^\\\\t]*\\\\t?)","name":"rainbowgroup"}],"scopeName":"text.tsv"}')),Voe=[Joe]});var Zj={};x(Zj,{default:()=>ese});var Xoe,ese,Yj=_(()=>{rt();Qe();YA();nx();vc();td();Xoe=Object.freeze(JSON.parse(`{"displayName":"Twig","fileTypes":["twig","html.twig"],"firstLineMatch":"<!(?i:DOCTYPE)|<(?i:html)|<\\\\?(?i:php)|\\\\{\\\\{|\\\\{%|\\\\{#","foldingStartMarker":"(<(?i:body|div|dl|fieldset|form|head|li|ol|script|select|style|table|tbody|tfoot|thead|tr|ul)\\\\b.*?>|<!--(?!.*--\\\\s*>)|^<!--\\\\ \\\\#tminclude\\\\ (?>.*?-->)$|\\\\{%\\\\s+(autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim))","foldingStopMarker":"(</(?i:body|div|dl|fieldset|form|head|li|ol|script|select|style|table|tbody|tfoot|thead|tr|ul)>|^(?!.*?<!--).*?--\\\\s*>|^<!--\\\\ end\\\\ tminclude\\\\ -->$|\\\\{%\\\\s+end(autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim))","name":"twig","patterns":[{"begin":"(<)([a-zA-Z0-9:]++)(?=[^>]*></\\\\2>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.html"}},"end":"(>(<)/)(\\\\2)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"meta.scope.between-tag-pair.html"},"3":{"name":"entity.name.tag.html"},"4":{"name":"punctuation.definition.tag.html"}},"name":"meta.tag.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(<\\\\?)(xml)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.xml.html"}},"end":"(\\\\?>)","name":"meta.tag.preprocessor.xml.html","patterns":[{"include":"#tag-generic-attribute"},{"include":"#string-double-quoted"},{"include":"#string-single-quoted"}]},{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.html"}},"end":"--\\\\s*>","name":"comment.block.html","patterns":[{"match":"--","name":"invalid.illegal.bad-comments-or-CDATA.html"},{"include":"#embedded-code"}]},{"begin":"<!","captures":{"0":{"name":"punctuation.definition.tag.html"}},"end":">","name":"meta.tag.sgml.html","patterns":[{"begin":"(?i:DOCTYPE)","captures":{"1":{"name":"entity.name.tag.doctype.html"}},"end":"(?=>)","name":"meta.tag.sgml.doctype.html","patterns":[{"match":"\\"[^\\">]*\\"","name":"string.quoted.double.doctype.identifiers-and-DTDs.html"}]},{"begin":"\\\\[CDATA\\\\[","end":"]](?=>)","name":"constant.other.inline-data.html"},{"match":"(\\\\s*)(?!--|>)\\\\S(\\\\s*)","name":"invalid.illegal.bad-comments-or-CDATA.html"}]},{"include":"#embedded-code"},{"begin":"(?:^\\\\s+)?(<)((?i:style))\\\\b(?![^>]*/>)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.style.html"},"3":{"name":"punctuation.definition.tag.html"}},"end":"(</)((?i:style))(>)(?:\\\\s*\\\\n)?","name":"source.css.embedded.html","patterns":[{"include":"#tag-stuff"},{"begin":"(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"}},"end":"(?=</(?i:style))","patterns":[{"include":"#embedded-code"},{"include":"source.css"}]}]},{"begin":"(?:^\\\\s+)?(<)((?i:script))\\\\b(?![^>]*/>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.script.html"}},"end":"(?<=</(script|SCRIPT))(>)(?:\\\\s*\\\\n)?","endCaptures":{"2":{"name":"punctuation.definition.tag.html"}},"name":"source.js.embedded.html","patterns":[{"include":"#tag-stuff"},{"begin":"(?<!</(?:script|SCRIPT))(>)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.script.html"}},"end":"(</)((?i:script))","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.js"}},"match":"(//).*?((?=<\/script)|$\\\\n?)","name":"comment.line.double-slash.js"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"\\\\*/|(?=<\/script)","name":"comment.block.js"},{"include":"#php"},{"include":"#twig-print-tag"},{"include":"#twig-statement-tag"},{"include":"#twig-comment-tag"},{"include":"source.js"}]}]},{"begin":"(?ix) # Enable free spacing mode, case insensitive\\n # Make sure our opening js tag has word boundaries\\n (?<=\\\\{\\\\%\\\\sjs\\\\s\\\\%\\\\}|\\\\{\\\\%\\\\sincludejs\\\\s\\\\%\\\\})\\n ","comment":"Add JS support to set tags that use the pattern \\"css\\" in their name","end":"(?ix)(?=\\\\{\\\\%\\\\sendjs\\\\s\\\\%\\\\}|\\\\{\\\\%\\\\sendincludejs\\\\s\\\\%\\\\})","name":"source.js.embedded.twig","patterns":[{"include":"source.js"}]},{"begin":"(?ix) # Enable free spacing mode, case insensitive\\n (?<=\\\\{\\\\%\\\\scss\\\\s\\\\%\\\\}|\\\\{\\\\%\\\\sincludecss\\\\s\\\\%\\\\}|\\\\{\\\\%\\\\sincludehirescss\\\\s\\\\%\\\\})\\n ","comment":"Add CSS support to set tags that use the pattern \\"css\\" in their name","end":"(?ix)(?=\\\\{\\\\%\\\\sendcss\\\\s\\\\%\\\\}|\\\\{\\\\%\\\\sendincludecss\\\\s\\\\%\\\\}|\\\\{\\\\%\\\\sendincludehirescss\\\\s\\\\%\\\\})","name":"source.css.embedded.twig","patterns":[{"include":"source.css"}]},{"begin":"(?ix) # Enable free spacing mode, case insensitive\\n (?<=\\\\{\\\\%\\\\sscss\\\\s\\\\%\\\\}|\\\\{\\\\%\\\\sincludescss\\\\s\\\\%\\\\}|\\\\{\\\\%\\\\sincludehiresscss\\\\s\\\\%\\\\})\\n ","comment":"Add SCSS support to set tags that use the pattern \\"scss\\" in their name","end":"(?ix)(?=\\\\{\\\\%\\\\sendscss\\\\s\\\\%\\\\}|\\\\{\\\\%\\\\sendincludescss\\\\s\\\\%\\\\}|\\\\{\\\\%\\\\sendincludehiresscss\\\\s\\\\%\\\\})","name":"source.css.scss.embedded.twig","patterns":[{"include":"source.css.scss"}]},{"begin":"(</?)((?i:body|head|html)\\\\b)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.structure.any.html"}},"end":"(>)","name":"meta.tag.structure.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)((?i:address|blockquote|dd|div|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre)\\\\b)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.block.any.html"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.block.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)\\\\b)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.inline.any.html"}},"end":"((?: ?/)?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)([a-zA-Z0-9:]+)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.other.html"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.html","patterns":[{"include":"#tag-stuff"}]},{"include":"#entities"},{"match":"<>","name":"invalid.illegal.incomplete.html"},{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"},{"include":"#twig-print-tag"},{"include":"#twig-statement-tag"},{"include":"#twig-comment-tag"}],"repository":{"embedded-code":{"patterns":[{"include":"#ruby"},{"include":"#php"},{"include":"#twig-print-tag"},{"include":"#twig-statement-tag"},{"include":"#twig-comment-tag"},{"include":"#python"}]},"entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)","name":"constant.character.entity.html"},{"match":"&","name":"invalid.illegal.bad-ampersand.html"}]},"php":{"begin":"(?=(^\\\\s*)?<\\\\?)","end":"(?!(^\\\\s*)?<\\\\?)","patterns":[{"include":"source.php"}]},"python":{"begin":"(?:^\\\\s*)<\\\\?python(?!.*\\\\?>)","end":"\\\\?>(?:\\\\s*$\\\\n)?","name":"source.python.embedded.html","patterns":[{"include":"source.python"}]},"ruby":{"patterns":[{"begin":"<%+#","captures":{"0":{"name":"punctuation.definition.comment.erb"}},"end":"%>","name":"comment.block.erb"},{"begin":"<%+(?!>)=?","captures":{"0":{"name":"punctuation.section.embedded.ruby"}},"end":"-?%>","name":"source.ruby.embedded.html","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.ruby"}},"match":"(#).*?(?=-?%>)","name":"comment.line.number-sign.ruby"},{"include":"source.ruby"}]},{"begin":"<\\\\?r(?!>)=?","captures":{"0":{"name":"punctuation.section.embedded.ruby.nitro"}},"end":"-?\\\\?>","name":"source.ruby.nitro.embedded.html","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.ruby.nitro"}},"match":"(#).*?(?=-?\\\\?>)","name":"comment.line.number-sign.ruby.nitro"},{"include":"source.ruby"}]}]},"string-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.double.html","patterns":[{"include":"#embedded-code"},{"include":"#entities"}]},"string-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.single.html","patterns":[{"include":"#embedded-code"},{"include":"#entities"}]},"tag-generic-attribute":{"match":"\\\\b([a-zA-Z\\\\-:]+)","name":"entity.other.attribute-name.html"},"tag-id-attribute":{"begin":"\\\\b(id)\\\\b\\\\s*(=)","captures":{"1":{"name":"entity.other.attribute-name.id.html"},"2":{"name":"punctuation.separator.key-value.html"}},"end":"(?<='|\\")","name":"meta.attribute-with-value.id.html","patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"meta.toc-list.id.html","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.double.html","patterns":[{"include":"#embedded-code"},{"include":"#entities"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"meta.toc-list.id.html","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.single.html","patterns":[{"include":"#embedded-code"},{"include":"#entities"}]}]},"tag-stuff":{"patterns":[{"include":"#tag-id-attribute"},{"include":"#tag-generic-attribute"},{"include":"#string-double-quoted"},{"include":"#string-single-quoted"},{"include":"#embedded-code"}]},"twig-arrays":{"begin":"(?<=[\\\\s\\\\(\\\\{\\\\[:,])\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.twig"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.array.end.twig"}},"name":"meta.array.twig","patterns":[{"include":"#twig-arrays"},{"include":"#twig-hashes"},{"include":"#twig-constants"},{"include":"#twig-operators"},{"include":"#twig-strings"},{"include":"#twig-functions-warg"},{"include":"#twig-functions"},{"include":"#twig-macros"},{"include":"#twig-objects"},{"include":"#twig-properties"},{"include":"#twig-filters-warg"},{"include":"#twig-filters"},{"include":"#twig-filters-warg-ud"},{"include":"#twig-filters-ud"},{"match":",","name":"punctuation.separator.object.twig"}]},"twig-comment-tag":{"begin":"\\\\{#-?","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.twig"}},"end":"-?#\\\\}","endCaptures":{"0":{"name":"punctuation.definition.comment.end.twig"}},"name":"comment.block.twig"},"twig-constants":{"patterns":[{"match":"(?i)(?<=[\\\\s\\\\[\\\\(\\\\{:,])(?:true|false|null|none)(?=[\\\\s\\\\)\\\\]\\\\}\\\\,])","name":"constant.language.twig"},{"match":"(?<=[\\\\s\\\\[\\\\(\\\\{:,]|\\\\.\\\\.|\\\\*\\\\*)[0-9]+(?:\\\\.[0-9]+)?(?=[\\\\s\\\\)\\\\]\\\\}\\\\,]|\\\\.\\\\.|\\\\*\\\\*)","name":"constant.numeric.twig"}]},"twig-filters":{"captures":{"1":{"name":"support.function.twig"}},"match":"(?<=(?:[a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}\\\\]\\\\)\\\\'\\\\\\"]\\\\|)|\\\\{%\\\\sfilter\\\\s)(abs|capitalize|e(?:scape)?|first|join|(?:json|url)_encode|keys|last|length|lower|nl2br|number_format|raw|reverse|round|sort|striptags|title|trim|upper)(?=[\\\\s\\\\|\\\\]\\\\}\\\\):,]|\\\\.\\\\.|\\\\*\\\\*)"},"twig-filters-ud":{"captures":{"1":{"name":"meta.function-call.other.twig"}},"match":"(?<=(?:[a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}\\\\]\\\\)\\\\'\\\\\\"]\\\\|)|\\\\{%\\\\sfilter\\\\s)([a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*)"},"twig-filters-warg":{"begin":"(?<=(?:[a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}\\\\]\\\\)\\\\'\\\\\\"]\\\\|)|\\\\{%\\\\sfilter\\\\s)(batch|convert_encoding|date|date_modify|default|e(?:scape)?|format|join|merge|number_format|replace|round|slice|split|trim)(\\\\()","beginCaptures":{"1":{"name":"support.function.twig"},"2":{"name":"punctuation.definition.parameters.begin.twig"}},"contentName":"meta.function.arguments.twig","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.twig"}},"patterns":[{"include":"#twig-constants"},{"include":"#twig-operators"},{"include":"#twig-functions-warg"},{"include":"#twig-functions"},{"include":"#twig-macros"},{"include":"#twig-objects"},{"include":"#twig-properties"},{"include":"#twig-filters-warg"},{"include":"#twig-filters"},{"include":"#twig-filters-warg-ud"},{"include":"#twig-filters-ud"},{"include":"#twig-strings"},{"include":"#twig-arrays"},{"include":"#twig-hashes"}]},"twig-filters-warg-ud":{"begin":"(?<=(?:[a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}\\\\]\\\\)\\\\'\\\\\\"]\\\\|)|\\\\{%\\\\sfilter\\\\s)([a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*)(\\\\()","beginCaptures":{"1":{"name":"meta.function-call.other.twig"},"2":{"name":"punctuation.definition.parameters.begin.twig"}},"contentName":"meta.function.arguments.twig","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.twig"}},"patterns":[{"include":"#twig-constants"},{"include":"#twig-functions-warg"},{"include":"#twig-functions"},{"include":"#twig-macros"},{"include":"#twig-objects"},{"include":"#twig-properties"},{"include":"#twig-filters-warg"},{"include":"#twig-filters"},{"include":"#twig-filters-warg-ud"},{"include":"#twig-filters-ud"},{"include":"#twig-strings"},{"include":"#twig-arrays"},{"include":"#twig-hashes"}]},"twig-functions":{"captures":{"1":{"name":"support.function.twig"}},"match":"(?<=is\\\\s)(defined|empty|even|iterable|odd)"},"twig-functions-warg":{"begin":"(?<=[\\\\s\\\\(\\\\[\\\\{:,])(attribute|block|constant|cycle|date|divisible by|dump|include|max|min|parent|random|range|same as|source|template_from_string)(\\\\()","beginCaptures":{"1":{"name":"support.function.twig"},"2":{"name":"punctuation.definition.parameters.begin.twig"}},"contentName":"meta.function.arguments.twig","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.twig"}},"patterns":[{"include":"#twig-constants"},{"include":"#twig-functions-warg"},{"include":"#twig-functions"},{"include":"#twig-macros"},{"include":"#twig-objects"},{"include":"#twig-properties"},{"include":"#twig-filters-warg"},{"include":"#twig-filters"},{"include":"#twig-filters-warg-ud"},{"include":"#twig-filters-ud"},{"include":"#twig-strings"},{"include":"#twig-arrays"}]},"twig-hashes":{"begin":"(?<=[\\\\s\\\\(\\\\{\\\\[:,])\\\\{","beginCaptures":{"0":{"name":"punctuation.section.hash.begin.twig"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.hash.end.twig"}},"name":"meta.hash.twig","patterns":[{"include":"#twig-hashes"},{"include":"#twig-arrays"},{"include":"#twig-constants"},{"include":"#twig-operators"},{"include":"#twig-strings"},{"include":"#twig-functions-warg"},{"include":"#twig-functions"},{"include":"#twig-macros"},{"include":"#twig-objects"},{"include":"#twig-properties"},{"include":"#twig-filters-warg"},{"include":"#twig-filters"},{"include":"#twig-filters-warg-ud"},{"include":"#twig-filters-ud"},{"match":":","name":"punctuation.separator.key-value.twig"},{"match":",","name":"punctuation.separator.object.twig"}]},"twig-keywords":{"match":"(?<=\\\\s)((?:end)?(?:autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim)|as|do|else|elseif|extends|flush|from|ignore missing|import|include|only|use|with)(?=\\\\s)","name":"keyword.control.twig"},"twig-macros":{"begin":"(?<=[\\\\s\\\\(\\\\[\\\\{:,])([a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*)(?:(\\\\.)([a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*))?(\\\\()","beginCaptures":{"1":{"name":"meta.function-call.twig"},"2":{"name":"punctuation.separator.property.twig"},"3":{"name":"variable.other.property.twig"},"4":{"name":"punctuation.definition.parameters.begin.twig"}},"contentName":"meta.function.arguments.twig","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.twig"}},"patterns":[{"include":"#twig-constants"},{"include":"#twig-operators"},{"include":"#twig-functions-warg"},{"include":"#twig-functions"},{"include":"#twig-macros"},{"include":"#twig-objects"},{"include":"#twig-properties"},{"include":"#twig-filters-warg"},{"include":"#twig-filters"},{"include":"#twig-filters-warg-ud"},{"include":"#twig-filters-ud"},{"include":"#twig-strings"},{"include":"#twig-arrays"},{"include":"#twig-hashes"}]},"twig-objects":{"captures":{"1":{"name":"variable.other.twig"}},"match":"(?<=[\\\\s\\\\{\\\\[\\\\(:,])([a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*)(?=[\\\\s\\\\}\\\\[\\\\]\\\\(\\\\)\\\\.\\\\|,:])"},"twig-operators":{"patterns":[{"captures":{"1":{"name":"keyword.operator.arithmetic.twig"}},"match":"(?<=\\\\s)(\\\\+|-|//?|%|\\\\*\\\\*?)(?=\\\\s)"},{"captures":{"1":{"name":"keyword.operator.assignment.twig"}},"match":"(?<=\\\\s)(=|~)(?=\\\\s)"},{"captures":{"1":{"name":"keyword.operator.bitwise.twig"}},"match":"(?<=\\\\s)(b-(?:and|or|xor))(?=\\\\s)"},{"captures":{"1":{"name":"keyword.operator.comparison.twig"}},"match":"(?<=\\\\s)((?:!|=)=|<=?|>=?|(?:not )?in|is(?: not)?|(?:ends|starts) with|matches)(?=\\\\s)"},{"captures":{"1":{"name":"keyword.operator.logical.twig"}},"match":"(?<=\\\\s)(\\\\?|:|\\\\?:|\\\\?\\\\?|and|not|or)(?=\\\\s)"},{"captures":{"0":{"name":"keyword.operator.other.twig"}},"match":"(?<=[a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}\\\\]\\\\)'\\"])\\\\.\\\\.(?=[a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}'\\"])"},{"captures":{"0":{"name":"keyword.operator.other.twig"}},"match":"(?<=[a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}\\\\]\\\\}\\\\)'\\"])\\\\|(?=[a-zA-Z_\\\\x{7f}-\\\\x{ff}])"}]},"twig-print-tag":{"begin":"\\\\{\\\\{-?","beginCaptures":{"0":{"name":"punctuation.section.tag.twig"}},"end":"-?\\\\}\\\\}","endCaptures":{"0":{"name":"punctuation.section.tag.twig"}},"name":"meta.tag.template.value.twig","patterns":[{"include":"#twig-constants"},{"include":"#twig-operators"},{"include":"#twig-functions-warg"},{"include":"#twig-functions"},{"include":"#twig-macros"},{"include":"#twig-objects"},{"include":"#twig-properties"},{"include":"#twig-filters-warg"},{"include":"#twig-filters"},{"include":"#twig-filters-warg-ud"},{"include":"#twig-filters-ud"},{"include":"#twig-strings"},{"include":"#twig-arrays"},{"include":"#twig-hashes"}]},"twig-properties":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.property.twig"},"2":{"name":"variable.other.property.twig"}},"match":"(?<=[a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}])(\\\\.)([a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*)(?=[\\\\.\\\\s\\\\|\\\\[\\\\)\\\\]\\\\}:,])"},{"begin":"(?<=[a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}])(\\\\.)([a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*)(\\\\()","beginCaptures":{"1":{"name":"punctuation.separator.property.twig"},"2":{"name":"variable.other.property.twig"},"3":{"name":"punctuation.definition.parameters.begin.twig"}},"contentName":"meta.function.arguments.twig","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.twig"}},"patterns":[{"include":"#twig-constants"},{"include":"#twig-functions-warg"},{"include":"#twig-functions"},{"include":"#twig-macros"},{"include":"#twig-objects"},{"include":"#twig-properties"},{"include":"#twig-filters-warg"},{"include":"#twig-filters"},{"include":"#twig-filters-warg-ud"},{"include":"#twig-filters-ud"},{"include":"#twig-strings"},{"include":"#twig-arrays"}]},{"captures":{"1":{"name":"punctuation.section.array.begin.twig"},"2":{"name":"variable.other.property.twig"},"3":{"name":"punctuation.section.array.end.twig"},"4":{"name":"punctuation.section.array.begin.twig"},"5":{"name":"variable.other.property.twig"},"6":{"name":"punctuation.section.array.end.twig"},"7":{"name":"punctuation.section.array.begin.twig"},"8":{"name":"variable.other.property.twig"},"9":{"name":"punctuation.section.array.end.twig"}},"match":"(?<=[a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}\\\\]])(?:(\\\\[)('[a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*')(\\\\])|(\\\\[)(\\"[a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*\\")(\\\\])|(\\\\[)([a-zA-Z_\\\\x{7f}-\\\\x{ff}][a-zA-Z0-9_\\\\x{7f}-\\\\x{ff}]*)(\\\\]))"}]},"twig-statement-tag":{"begin":"\\\\{%-?","beginCaptures":{"0":{"name":"punctuation.section.tag.twig"}},"end":"-?%\\\\}","endCaptures":{"0":{"name":"punctuation.section.tag.twig"}},"name":"meta.tag.template.block.twig","patterns":[{"include":"#twig-constants"},{"include":"#twig-keywords"},{"include":"#twig-operators"},{"include":"#twig-functions-warg"},{"include":"#twig-functions"},{"include":"#twig-macros"},{"include":"#twig-filters-warg"},{"include":"#twig-filters"},{"include":"#twig-filters-warg-ud"},{"include":"#twig-filters-ud"},{"include":"#twig-objects"},{"include":"#twig-properties"},{"include":"#twig-strings"},{"include":"#twig-arrays"},{"include":"#twig-hashes"}]},"twig-strings":{"patterns":[{"begin":"(?:(?<!\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\))'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.twig"}},"end":"(?:(?<!\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\))'","endCaptures":{"0":{"name":"punctuation.definition.string.end.twig"}},"name":"string.quoted.single.twig"},{"begin":"(?:(?<!\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\))\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.twig"}},"end":"(?:(?<!\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\))\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.twig"}},"name":"string.quoted.double.twig"}]}},"scopeName":"text.html.twig","embeddedLangs":["css","javascript","scss","php","python","ruby"]}`)),ese=[...ue,...J,...zo,...tx,...Ur,...Yo,Xoe]});var Wj={};x(Wj,{default:()=>nse});var tse,nse,Kj=_(()=>{tse=Object.freeze(JSON.parse('{"displayName":"TypeSpec","fileTypes":["tsp"],"name":"typespec","patterns":[{"include":"#statement"}],"repository":{"alias-id":{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.assignment.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.alias-id.typespec","patterns":[{"include":"#expression"}]},"alias-statement":{"begin":"\\\\b(alias)\\\\b\\\\s+(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)\\\\s*","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"entity.name.type.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.alias-statement.typespec","patterns":[{"include":"#alias-id"},{"include":"#type-parameters"}]},"augment-decorator-statement":{"begin":"((@@)\\\\b[_$[:alpha:]](?:[_$[:alnum:]]|\\\\.[_$[:alpha:]])*\\\\b)","beginCaptures":{"1":{"name":"entity.name.tag.tsp"},"2":{"name":"entity.name.tag.tsp"}},"end":"(?=[_$[:alpha:]])|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.augment-decorator-statement.typespec","patterns":[{"include":"#token"},{"include":"#parenthesized-expression"}]},"block-comment":{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.tsp"},"boolean-literal":{"match":"\\\\b(true|false)\\\\b","name":"constant.language.tsp"},"callExpression":{"begin":"(\\\\b[_$[:alpha:]](?:[_$[:alnum:]]|\\\\.[_$[:alpha:]])*\\\\b)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.tsp"},"2":{"name":"punctuation.parenthesis.open.tsp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.tsp"}},"name":"meta.callExpression.typespec","patterns":[{"include":"#token"},{"include":"#expression"},{"include":"#punctuation-comma"}]},"const-statement":{"begin":"\\\\b(const)\\\\b\\\\s+(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"variable.name.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.const-statement.typespec","patterns":[{"include":"#type-annotation"},{"include":"#operator-assignment"},{"include":"#expression"}]},"decorator":{"begin":"((@)\\\\b[_$[:alpha:]](?:[_$[:alnum:]]|\\\\.[_$[:alpha:]])*\\\\b)","beginCaptures":{"1":{"name":"entity.name.tag.tsp"},"2":{"name":"entity.name.tag.tsp"}},"end":"(?=[_$[:alpha:]])|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.decorator.typespec","patterns":[{"include":"#token"},{"include":"#parenthesized-expression"}]},"decorator-declaration-statement":{"begin":"(?:(extern)\\\\s+)?\\\\b(dec)\\\\b\\\\s+(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"keyword.other.tsp"},"3":{"name":"entity.name.function.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.decorator-declaration-statement.typespec","patterns":[{"include":"#token"},{"include":"#operation-parameters"}]},"directive":{"begin":"\\\\s*(#\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b)","beginCaptures":{"1":{"name":"keyword.directive.name.tsp"}},"end":"$|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.directive.typespec","patterns":[{"include":"#string-literal"},{"include":"#identifier-expression"}]},"doc-comment":{"begin":"/\\\\*\\\\*","beginCaptures":{"0":{"name":"comment.block.tsp"}},"end":"\\\\*/","endCaptures":{"0":{"name":"comment.block.tsp"}},"name":"comment.block.tsp","patterns":[{"include":"#doc-comment-block"}]},"doc-comment-block":{"patterns":[{"include":"#doc-comment-param"},{"include":"#doc-comment-return-tag"},{"include":"#doc-comment-unknown-tag"}]},"doc-comment-param":{"captures":{"1":{"name":"keyword.tag.tspdoc"},"2":{"name":"keyword.tag.tspdoc"},"3":{"name":"variable.name.tsp"}},"match":"((@)(?:param|template|prop))\\\\s+(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)\\\\b","name":"comment.block.tsp"},"doc-comment-return-tag":{"captures":{"1":{"name":"keyword.tag.tspdoc"},"2":{"name":"keyword.tag.tspdoc"}},"match":"((@)(?:returns))\\\\b","name":"comment.block.tsp"},"doc-comment-unknown-tag":{"captures":{"1":{"name":"entity.name.tag.tsp"},"2":{"name":"entity.name.tag.tsp"}},"match":"((@)(?:\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`))\\\\b","name":"comment.block.tsp"},"else-expression":{"begin":"\\\\b(else)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"((?<=\\\\})|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))","name":"meta.else-expression.typespec","patterns":[{"include":"#projection-expression"},{"include":"#projection-body"}]},"else-if-expression":{"begin":"\\\\b(else)\\\\s+(if)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"keyword.other.tsp"}},"end":"((?<=\\\\})|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))","name":"meta.else-if-expression.typespec","patterns":[{"include":"#projection-expression"},{"include":"#projection-body"}]},"enum-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.tsp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.tsp"}},"name":"meta.enum-body.typespec","patterns":[{"include":"#enum-member"},{"include":"#token"},{"include":"#directive"},{"include":"#decorator"},{"include":"#punctuation-comma"}]},"enum-member":{"begin":"(?:(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)\\\\s*(:?))","beginCaptures":{"1":{"name":"variable.name.tsp"},"2":{"name":"keyword.operator.type.annotation.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.enum-member.typespec","patterns":[{"include":"#token"},{"include":"#type-annotation"}]},"enum-statement":{"begin":"\\\\b(enum)\\\\b\\\\s+(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"entity.name.type.tsp"}},"end":"(?<=\\\\})|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.enum-statement.typespec","patterns":[{"include":"#token"},{"include":"#enum-body"}]},"escape-character":{"match":"\\\\\\\\.","name":"constant.character.escape.tsp"},"expression":{"patterns":[{"include":"#token"},{"include":"#directive"},{"include":"#parenthesized-expression"},{"include":"#valueof"},{"include":"#typeof"},{"include":"#type-arguments"},{"include":"#object-literal"},{"include":"#tuple-literal"},{"include":"#tuple-expression"},{"include":"#model-expression"},{"include":"#callExpression"},{"include":"#identifier-expression"}]},"function-call":{"begin":"(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.tsp"},"2":{"name":"punctuation.parenthesis.open.tsp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.tsp"}},"name":"meta.function-call.typespec","patterns":[{"include":"#expression"}]},"function-declaration-statement":{"begin":"(?:(extern)\\\\s+)?\\\\b(fn)\\\\b\\\\s+(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"keyword.other.tsp"},"3":{"name":"entity.name.function.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.function-declaration-statement.typespec","patterns":[{"include":"#token"},{"include":"#operation-parameters"},{"include":"#type-annotation"}]},"identifier-expression":{"match":"\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`","name":"entity.name.type.tsp"},"if-expression":{"begin":"\\\\b(if)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"((?<=\\\\})|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))","name":"meta.if-expression.typespec","patterns":[{"include":"#projection-expression"},{"include":"#projection-body"}]},"import-statement":{"begin":"\\\\b(import)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.import-statement.typespec","patterns":[{"include":"#token"}]},"interface-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.tsp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.tsp"}},"name":"meta.interface-body.typespec","patterns":[{"include":"#token"},{"include":"#directive"},{"include":"#decorator"},{"include":"#interface-member"},{"include":"#punctuation-semicolon"}]},"interface-heritage":{"begin":"\\\\b(extends)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"((?=\\\\{)|(?=;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))","name":"meta.interface-heritage.typespec","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"interface-member":{"begin":"(?:\\\\b(op)\\\\b\\\\s+)?(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"entity.name.function.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.interface-member.typespec","patterns":[{"include":"#token"},{"include":"#operation-signature"}]},"interface-statement":{"begin":"\\\\b(interface)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"(?<=\\\\})|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.interface-statement.typespec","patterns":[{"include":"#token"},{"include":"#type-parameters"},{"include":"#interface-heritage"},{"include":"#interface-body"},{"include":"#expression"}]},"line-comment":{"match":"//.*$","name":"comment.line.double-slash.tsp"},"model-expression":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.tsp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.tsp"}},"name":"meta.model-expression.typespec","patterns":[{"include":"#model-property"},{"include":"#token"},{"include":"#directive"},{"include":"#decorator"},{"include":"#spread-operator"},{"include":"#punctuation-semicolon"}]},"model-heritage":{"begin":"\\\\b(extends|is)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"((?=\\\\{)|(?=;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))","name":"meta.model-heritage.typespec","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"model-property":{"begin":"(?:(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)|(\\\\\\"(?:[^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\"))","beginCaptures":{"1":{"name":"variable.name.tsp"},"2":{"name":"string.quoted.double.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.model-property.typespec","patterns":[{"include":"#token"},{"include":"#type-annotation"},{"include":"#operator-assignment"},{"include":"#expression"}]},"model-statement":{"begin":"\\\\b(model)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"(?<=\\\\})|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.model-statement.typespec","patterns":[{"include":"#token"},{"include":"#type-parameters"},{"include":"#model-heritage"},{"include":"#expression"}]},"namespace-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.tsp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.tsp"}},"name":"meta.namespace-body.typespec","patterns":[{"include":"#statement"}]},"namespace-name":{"begin":"(?=[_$[:alpha:]])","end":"((?=\\\\{)|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))","name":"meta.namespace-name.typespec","patterns":[{"include":"#identifier-expression"},{"include":"#punctuation-accessor"}]},"namespace-statement":{"begin":"\\\\b(namespace)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"((?<=\\\\})|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))","name":"meta.namespace-statement.typespec","patterns":[{"include":"#token"},{"include":"#namespace-name"},{"include":"#namespace-body"}]},"numeric-literal":{"match":"(?:\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$)|\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$)|(?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))","name":"constant.numeric.tsp"},"object-literal":{"begin":"#\\\\{","beginCaptures":{"0":{"name":"punctuation.hashcurlybrace.open.tsp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.tsp"}},"name":"meta.object-literal.typespec","patterns":[{"include":"#token"},{"include":"#object-literal-property"},{"include":"#directive"},{"include":"#spread-operator"},{"include":"#punctuation-comma"}]},"object-literal-property":{"begin":"(?:(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)\\\\s*(:))","beginCaptures":{"1":{"name":"variable.name.tsp"},"2":{"name":"keyword.operator.type.annotation.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.object-literal-property.typespec","patterns":[{"include":"#token"},{"include":"#expression"}]},"operation-heritage":{"begin":"\\\\b(is)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.operation-heritage.typespec","patterns":[{"include":"#expression"}]},"operation-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.open.tsp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.tsp"}},"name":"meta.operation-parameters.typespec","patterns":[{"include":"#token"},{"include":"#decorator"},{"include":"#model-property"},{"include":"#spread-operator"},{"include":"#punctuation-comma"}]},"operation-signature":{"patterns":[{"include":"#type-parameters"},{"include":"#operation-heritage"},{"include":"#operation-parameters"},{"include":"#type-annotation"}]},"operation-statement":{"begin":"\\\\b(op)\\\\b\\\\s+(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"entity.name.function.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.operation-statement.typespec","patterns":[{"include":"#token"},{"include":"#operation-signature"}]},"operator-assignment":{"match":"=","name":"keyword.operator.assignment.tsp"},"parenthesized-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.open.tsp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.tsp"}},"name":"meta.parenthesized-expression.typespec","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"projection":{"begin":"(from|to)","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"((?<=\\\\})|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))","name":"meta.projection.typespec","patterns":[{"include":"#projection-parameters"},{"include":"#projection-body"}]},"projection-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.tsp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.tsp"}},"name":"meta.projection-body.typespec","patterns":[{"include":"#projection-expression"},{"include":"#punctuation-semicolon"}]},"projection-expression":{"patterns":[{"include":"#else-if-expression"},{"include":"#if-expression"},{"include":"#else-expression"},{"include":"#function-call"}]},"projection-parameter":{"begin":"(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"variable.name.tsp"}},"end":"(?=\\\\))|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.projection-parameter.typespec","patterns":[]},"projection-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.open.tsp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.close.tsp"}},"name":"meta.projection-parameters.typespec","patterns":[{"include":"#token"},{"include":"#projection-parameter"}]},"projection-statement":{"begin":"\\\\b(projection)\\\\b\\\\s+(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)(#)(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"keyword.other.tsp"},"3":{"name":"keyword.operator.selector.tsp"},"4":{"name":"variable.name.tsp"}},"end":"((?<=\\\\})|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b))","name":"meta.projection-statement.typespec","patterns":[{"include":"#projection-statement-body"}]},"projection-statement-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.tsp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.tsp"}},"name":"meta.projection-statement-body.typespec","patterns":[{"include":"#projection"}]},"punctuation-accessor":{"match":"\\\\.","name":"punctuation.accessor.tsp"},"punctuation-comma":{"match":",","name":"punctuation.comma.tsp"},"punctuation-semicolon":{"match":";","name":"punctuation.terminator.statement.tsp"},"scalar-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.tsp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.tsp"}},"name":"meta.scalar-body.typespec","patterns":[{"include":"#token"},{"include":"#directive"},{"include":"#scalar-constructor"},{"include":"#punctuation-semicolon"}]},"scalar-constructor":{"begin":"\\\\b(init)\\\\b\\\\s+(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"entity.name.function.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.scalar-constructor.typespec","patterns":[{"include":"#token"},{"include":"#operation-parameters"}]},"scalar-extends":{"begin":"\\\\b(extends)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"(?=;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.scalar-extends.typespec","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"scalar-statement":{"begin":"\\\\b(scalar)\\\\b\\\\s+(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"entity.name.type.tsp"}},"end":"(?<=\\\\})|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.scalar-statement.typespec","patterns":[{"include":"#token"},{"include":"#type-parameters"},{"include":"#scalar-extends"},{"include":"#scalar-body"}]},"spread-operator":{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.spread-operator.typespec","patterns":[{"include":"#expression"}]},"statement":{"patterns":[{"include":"#token"},{"include":"#directive"},{"include":"#augment-decorator-statement"},{"include":"#decorator"},{"include":"#model-statement"},{"include":"#scalar-statement"},{"include":"#union-statement"},{"include":"#interface-statement"},{"include":"#enum-statement"},{"include":"#alias-statement"},{"include":"#const-statement"},{"include":"#namespace-statement"},{"include":"#operation-statement"},{"include":"#import-statement"},{"include":"#using-statement"},{"include":"#decorator-declaration-statement"},{"include":"#function-declaration-statement"},{"include":"#projection-statement"},{"include":"#punctuation-semicolon"}]},"string-literal":{"begin":"\\"","end":"\\"|$","name":"string.quoted.double.tsp","patterns":[{"include":"#template-expression"},{"include":"#escape-character"}]},"template-expression":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.tsp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.tsp"}},"name":"meta.template-expression.typespec","patterns":[{"include":"#expression"}]},"token":{"patterns":[{"include":"#doc-comment"},{"include":"#line-comment"},{"include":"#block-comment"},{"include":"#triple-quoted-string-literal"},{"include":"#string-literal"},{"include":"#boolean-literal"},{"include":"#numeric-literal"}]},"triple-quoted-string-literal":{"begin":"\\"\\"\\"","end":"\\"\\"\\"","name":"string.quoted.triple.tsp","patterns":[{"include":"#template-expression"},{"include":"#escape-character"}]},"tuple-expression":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.squarebracket.open.tsp"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.squarebracket.close.tsp"}},"name":"meta.tuple-expression.typespec","patterns":[{"include":"#expression"}]},"tuple-literal":{"begin":"#\\\\[","beginCaptures":{"0":{"name":"punctuation.hashsquarebracket.open.tsp"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.squarebracket.close.tsp"}},"name":"meta.tuple-literal.typespec","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"type-annotation":{"begin":"\\\\s*(\\\\??)\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.optional.tsp"},"2":{"name":"keyword.operator.type.annotation.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|=|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.type-annotation.typespec","patterns":[{"include":"#expression"}]},"type-argument":{"begin":"(?:(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)\\\\s*(=))","beginCaptures":{"1":{"name":"entity.name.type.tsp"},"2":{"name":"keyword.operator.assignment.tsp"}},"end":"(?=>)|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","endCaptures":{"0":{"name":"keyword.operator.assignment.tsp"}},"name":"meta.type-argument.typespec","patterns":[{"include":"#token"},{"include":"#expression"},{"include":"#punctuation-comma"}]},"type-arguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.tsp"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.tsp"}},"name":"meta.type-arguments.typespec","patterns":[{"include":"#type-argument"},{"include":"#expression"},{"include":"#punctuation-comma"}]},"type-parameter":{"begin":"(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"entity.name.type.tsp"}},"end":"(?=>)|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.type-parameter.typespec","patterns":[{"include":"#token"},{"include":"#type-parameter-constraint"},{"include":"#type-parameter-default"}]},"type-parameter-constraint":{"begin":"extends","beginCaptures":{"0":{"name":"keyword.other.tsp"}},"end":"(?=>)|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.type-parameter-constraint.typespec","patterns":[{"include":"#expression"}]},"type-parameter-default":{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.tsp"}},"end":"(?=>)|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.type-parameter-default.typespec","patterns":[{"include":"#expression"}]},"type-parameters":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.tsp"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.tsp"}},"name":"meta.type-parameters.typespec","patterns":[{"include":"#type-parameter"},{"include":"#punctuation-comma"}]},"typeof":{"begin":"\\\\b(typeof)","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"(?=>)|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.typeof.typespec","patterns":[{"include":"#expression"}]},"union-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.curlybrace.open.tsp"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.curlybrace.close.tsp"}},"name":"meta.union-body.typespec","patterns":[{"include":"#union-variant"},{"include":"#token"},{"include":"#directive"},{"include":"#decorator"},{"include":"#expression"},{"include":"#punctuation-comma"}]},"union-statement":{"begin":"\\\\b(union)\\\\b\\\\s+(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)","beginCaptures":{"1":{"name":"keyword.other.tsp"},"2":{"name":"entity.name.type.tsp"}},"end":"(?<=\\\\})|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.union-statement.typespec","patterns":[{"include":"#token"},{"include":"#union-body"}]},"union-variant":{"begin":"(?:(\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\b|`(?:[^`\\\\\\\\]|\\\\\\\\.)*`)\\\\s*(:))","beginCaptures":{"1":{"name":"variable.name.tsp"},"2":{"name":"keyword.operator.type.annotation.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.union-variant.typespec","patterns":[{"include":"#token"},{"include":"#expression"}]},"using-statement":{"begin":"\\\\b(using)\\\\b","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.using-statement.typespec","patterns":[{"include":"#token"},{"include":"#identifier-expression"},{"include":"#punctuation-accessor"}]},"valueof":{"begin":"\\\\b(valueof)","beginCaptures":{"1":{"name":"keyword.other.tsp"}},"end":"(?=>)|(?=,|;|@|\\\\)|\\\\}|\\\\b(?:extern)\\\\b|\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\b)","name":"meta.valueof.typespec","patterns":[{"include":"#expression"}]}},"scopeName":"source.tsp","aliases":["tsp"]}')),nse=[tse]});var Jj={};x(Jj,{default:()=>rse});var ase,rse,Vj=_(()=>{ase=Object.freeze(JSON.parse('{"displayName":"Typst","name":"typst","patterns":[{"include":"#markup"}],"repository":{"arguments":{"patterns":[{"match":"\\\\b[[:alpha:]_][[:alnum:]_-]*(?=:)","name":"variable.parameter.typst"},{"include":"#code"}]},"code":{"patterns":[{"include":"#common"},{"begin":"{","captures":{"0":{"name":"punctuation.definition.block.code.typst"}},"end":"}","name":"meta.block.code.typst","patterns":[{"include":"#code"}]},{"begin":"\\\\[","captures":{"0":{"name":"punctuation.definition.block.content.typst"}},"end":"\\\\]","name":"meta.block.content.typst","patterns":[{"include":"#markup"}]},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.typst"}},"end":"\\n","name":"comment.line.double-slash.typst"},{"match":":","name":"punctuation.separator.colon.typst"},{"match":",","name":"punctuation.separator.comma.typst"},{"match":"=>|\\\\.\\\\.","name":"keyword.operator.typst"},{"match":"==|!=|<=|<|>=|>","name":"keyword.operator.relational.typst"},{"match":"\\\\+=|-=|\\\\*=|/=|=","name":"keyword.operator.assignment.typst"},{"match":"\\\\+|\\\\*|/|(?<![[:alpha:]_][[:alnum:]_-]*)-(?![:alnum:]_-]*[[:alpha:]_])","name":"keyword.operator.arithmetic.typst"},{"match":"\\\\b(and|or|not)\\\\b","name":"keyword.operator.word.typst"},{"match":"\\\\b(let|as|in|set|show)\\\\b","name":"keyword.other.typst"},{"match":"\\\\b(if|else)\\\\b","name":"keyword.control.conditional.typst"},{"match":"\\\\b(for|while|break|continue)\\\\b","name":"keyword.control.loop.typst"},{"match":"\\\\b(import|include|export)\\\\b","name":"keyword.control.import.typst"},{"match":"\\\\b(return)\\\\b","name":"keyword.control.flow.typst"},{"include":"#constants"},{"comment":"Function name","match":"\\\\b[[:alpha:]_][[:alnum:]_-]*!?(?=\\\\[|\\\\()","name":"entity.name.function.typst"},{"comment":"Function name","match":"(?<=\\\\bshow\\\\s*)\\\\b[[:alpha:]_][[:alnum:]_-]*(?=\\\\s*[:.])","name":"entity.name.function.typst"},{"begin":"(?<=\\\\b[[:alpha:]_][[:alnum:]_-]*!?)\\\\(","captures":{"0":{"name":"punctuation.definition.group.typst"}},"comment":"Function arguments","end":"\\\\)","patterns":[{"include":"#arguments"}]},{"match":"\\\\b[[:alpha:]_][[:alnum:]_-]*\\\\b","name":"variable.other.typst"},{"begin":"\\\\(","captures":{"0":{"name":"punctuation.definition.group.typst"}},"end":"\\\\)|(?=;)","name":"meta.group.typst","patterns":[{"include":"#code"}]}]},"comments":{"patterns":[{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.typst"}},"end":"\\\\*/","name":"comment.block.typst","patterns":[{"include":"#comments"}]},{"begin":"(?<!:)//","beginCaptures":{"0":{"name":"punctuation.definition.comment.typst"}},"end":"\\n","name":"comment.line.double-slash.typst","patterns":[{"include":"#comments"}]}]},"common":{"patterns":[{"include":"#comments"}]},"constants":{"patterns":[{"match":"\\\\bnone\\\\b","name":"constant.language.none.typst"},{"match":"\\\\bauto\\\\b","name":"constant.language.auto.typst"},{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.typst"},{"match":"\\\\b(\\\\d*)?\\\\.?\\\\d+([eE][+-]?\\\\d+)?(mm|pt|cm|in|em)\\\\b","name":"constant.numeric.length.typst"},{"match":"\\\\b(\\\\d*)?\\\\.?\\\\d+([eE][+-]?\\\\d+)?(rad|deg)\\\\b","name":"constant.numeric.angle.typst"},{"match":"\\\\b(\\\\d*)?\\\\.?\\\\d+([eE][+-]?\\\\d+)?%","name":"constant.numeric.percentage.typst"},{"match":"\\\\b(\\\\d*)?\\\\.?\\\\d+([eE][+-]?\\\\d+)?fr","name":"constant.numeric.fr.typst"},{"match":"\\\\b\\\\d+\\\\b","name":"constant.numeric.integer.typst"},{"match":"\\\\b(\\\\d*)?\\\\.?\\\\d+([eE][+-]?\\\\d+)?\\\\b","name":"constant.numeric.float.typst"},{"begin":"\\"","captures":{"0":{"name":"punctuation.definition.string.typst"}},"end":"\\"","name":"string.quoted.double.typst","patterns":[{"match":"\\\\\\\\([\\\\\\\\\\"nrt]|u\\\\{?[0-9a-zA-Z]*\\\\}?)","name":"constant.character.escape.string.typst"}]},{"begin":"\\\\$","captures":{"0":{"name":"punctuation.definition.string.math.typst"}},"end":"\\\\$","name":"string.other.math.typst"}]},"markup":{"patterns":[{"include":"#common"},{"match":"\\\\\\\\([\\\\\\\\/\\\\[\\\\]{}#*_=~`$-.]|u\\\\{[0-9a-zA-Z]*\\\\}?)","name":"constant.character.escape.content.typst"},{"match":"\\\\\\\\","name":"punctuation.definition.linebreak.typst"},{"match":"~","name":"punctuation.definition.nonbreaking-space.typst"},{"match":"-\\\\?","name":"punctuation.definition.shy.typst"},{"match":"---","name":"punctuation.definition.em-dash.typst"},{"match":"--","name":"punctuation.definition.en-dash.typst"},{"match":"\\\\.\\\\.\\\\.","name":"punctuation.definition.ellipsis.typst"},{"match":":([a-zA-Z0-9]+:)+","name":"constant.symbol.typst"},{"begin":"(^\\\\*|\\\\*$|((?<=\\\\W|_)\\\\*)|(\\\\*(?=\\\\W|_)))","captures":{"0":{"name":"punctuation.definition.bold.typst"}},"end":"(^\\\\*|\\\\*$|((?<=\\\\W|_)\\\\*)|(\\\\*(?=\\\\W|_)))|\\n|(?=\\\\])","name":"markup.bold.typst","patterns":[{"include":"#markup"}]},{"begin":"(^_|_$|((?<=\\\\W|_)_)|(_(?=\\\\W|_)))","captures":{"0":{"name":"punctuation.definition.italic.typst"}},"end":"(^_|_$|((?<=\\\\W|_)_)|(_(?=\\\\W|_)))|\\n|(?=\\\\])","name":"markup.italic.typst","patterns":[{"include":"#markup"}]},{"match":"https?://[0-9a-zA-Z~/%#&=\',;\\\\.\\\\+\\\\?]*","name":"markup.underline.link.typst"},{"begin":"`{3,}","captures":{"0":{"name":"punctuation.definition.raw.typst"}},"end":"\\\\0","name":"markup.raw.block.typst"},{"begin":"`","captures":{"0":{"name":"punctuation.definition.raw.typst"}},"end":"`","name":"markup.raw.inline.typst"},{"begin":"\\\\$","captures":{"0":{"name":"punctuation.definition.string.math.typst"}},"end":"\\\\$","name":"string.other.math.typst"},{"begin":"^\\\\s*=+\\\\s+","beginCaptures":{"0":{"name":"punctuation.definition.heading.typst"}},"contentName":"entity.name.section.typst","end":"\\n|(?=<)","name":"markup.heading.typst","patterns":[{"include":"#markup"}]},{"match":"^\\\\s*-\\\\s+","name":"punctuation.definition.list.unnumbered.typst"},{"match":"^\\\\s*([0-9]*\\\\.|\\\\+)\\\\s+","name":"punctuation.definition.list.numbered.typst"},{"captures":{"1":{"name":"punctuation.definition.list.description.typst"},"2":{"name":"markup.list.term.typst"}},"match":"^\\\\s*(/)\\\\s+([^:]*:)"},{"captures":{"1":{"name":"punctuation.definition.label.typst"}},"match":"<[[:alpha:]_][[:alnum:]_-]*>","name":"entity.other.label.typst"},{"captures":{"1":{"name":"punctuation.definition.reference.typst"}},"match":"(@)[[:alpha:]_][[:alnum:]_-]*","name":"entity.other.reference.typst"},{"begin":"(#)(let|set|show)\\\\b","beginCaptures":{"0":{"name":"keyword.other.typst"},"1":{"name":"punctuation.definition.keyword.typst"}},"end":"\\n|(;)|(?=])","endCaptures":{"1":{"name":"punctuation.terminator.statement.typst"}},"patterns":[{"include":"#code"}]},{"captures":{"1":{"name":"punctuation.definition.keyword.typst"}},"match":"(#)(as|in)\\\\b","name":"keyword.other.typst"},{"begin":"((#)if|(?<=(}|])\\\\s*)else)\\\\b","beginCaptures":{"0":{"name":"keyword.control.conditional.typst"},"2":{"name":"punctuation.definition.keyword.typst"}},"end":"\\n|(?=])|(?<=}|])","patterns":[{"include":"#code"}]},{"begin":"(#)(for|while)\\\\b","beginCaptures":{"0":{"name":"keyword.control.loop.typst"},"1":{"name":"punctuation.definition.keyword.typst"}},"end":"\\n|(?=])|(?<=}|])","patterns":[{"include":"#code"}]},{"captures":{"1":{"name":"punctuation.definition.keyword.typst"}},"match":"(#)(break|continue)\\\\b","name":"keyword.control.loop.typst"},{"begin":"(#)(import|include|export)\\\\b","beginCaptures":{"0":{"name":"keyword.control.import.typst"},"1":{"name":"punctuation.definition.keyword.typst"}},"end":"\\n|(;)|(?=])","endCaptures":{"1":{"name":"punctuation.terminator.statement.typst"}},"patterns":[{"include":"#code"}]},{"captures":{"1":{"name":"punctuation.definition.keyword.typst"}},"match":"(#)(return)\\\\b","name":"keyword.control.flow.typst"},{"captures":{"2":{"name":"punctuation.definition.function.typst"}},"comment":"Function name","match":"((#)[[:alpha:]_][[:alnum:]_-]*!?)(?=\\\\[|\\\\()","name":"entity.name.function.typst"},{"begin":"(?<=#[[:alpha:]_][[:alnum:]_-]*!?)\\\\(","captures":{"0":{"name":"punctuation.definition.group.typst"}},"comment":"Function arguments","end":"\\\\)","patterns":[{"include":"#arguments"}]},{"captures":{"1":{"name":"punctuation.definition.variable.typst"}},"match":"(#)[[:alpha:]_][.[:alnum:]_-]*","name":"entity.other.interpolated.typst"},{"begin":"#","end":"\\\\s","name":"meta.block.content.typst","patterns":[{"include":"#code"}]}]}},"scopeName":"source.typst","aliases":["typ"]}')),rse=[ase]});var Xj={};x(Xj,{default:()=>ose});var ise,ose,eP=_(()=>{ise=Object.freeze(JSON.parse(`{"displayName":"V","fileTypes":[".v",".vh",".vsh",".vv","v.mod"],"name":"v","patterns":[{"include":"#comments"},{"include":"#function-decl"},{"include":"#as-is"},{"include":"#attributes"},{"include":"#assignment"},{"include":"#module-decl"},{"include":"#import-decl"},{"include":"#hash-decl"},{"include":"#brackets"},{"include":"#builtin-fix"},{"include":"#escaped-fix"},{"include":"#operators"},{"include":"#function-limited-overload-decl"},{"include":"#function-extend-decl"},{"include":"#function-exist"},{"include":"#generic"},{"include":"#constants"},{"include":"#type"},{"include":"#enum"},{"include":"#interface"},{"include":"#struct"},{"include":"#keywords"},{"include":"#storage"},{"include":"#numbers"},{"include":"#strings"},{"include":"#types"},{"include":"#punctuations"},{"include":"#variable-assign"},{"include":"#function-decl"}],"repository":{"as-is":{"begin":"\\\\s+(as|is)\\\\s+","beginCaptures":{"1":{"name":"keyword.$1.v"}},"end":"([\\\\w.]*)","endCaptures":{"1":{"name":"entity.name.alias.v"}}},"assignment":{"captures":{"1":{"patterns":[{"include":"#operators"}]}},"match":"\\\\s+((?:\\\\:|\\\\+|\\\\-|\\\\*|/|\\\\%|\\\\&|\\\\||\\\\^)?=)\\\\s+","name":"meta.definition.variable.v"},"attributes":{"captures":{"1":{"name":"meta.function.attribute.v"},"2":{"name":"punctuation.definition.begin.bracket.square.v"},"3":{"name":"storage.modifier.attribute.v"},"4":{"name":"punctuation.definition.end.bracket.square.v"}},"match":"^\\\\s*((\\\\[)(deprecated|unsafe|console|heap|manualfree|typedef|live|inline|flag|ref_only|direct_array_access|callconv)(\\\\]))","name":"meta.definition.attribute.v"},"brackets":{"patterns":[{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.bracket.curly.begin.v"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.v"}},"patterns":[{"include":"$self"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.bracket.round.begin.v"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.bracket.round.end.v"}},"patterns":[{"include":"$self"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.bracket.square.begin.v"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.bracket.square.end.v"}},"patterns":[{"include":"$self"}]}]},"builtin-fix":{"patterns":[{"patterns":[{"match":"(const)(?=\\\\s*\\\\()","name":"storage.modifier.v"},{"match":"\\\\b(fn|type|enum|struct|union|interface|map|assert|sizeof|typeof|__offsetof)\\\\b(?=\\\\s*\\\\()","name":"keyword.$1.v"}]},{"patterns":[{"match":"(\\\\$if|\\\\$else)(?=\\\\s*\\\\()","name":"keyword.control.v"},{"match":"\\\\b(as|in|is|or|break|continue|default|unsafe|match|if|else|for|go|spawn|goto|defer|return|shared|select|rlock|lock|atomic|asm)\\\\b(?=\\\\s*\\\\()","name":"keyword.control.v"}]},{"patterns":[{"captures":{"1":{"name":"storage.type.numeric.v"}},"match":"(?<!.)(i?(?:8|16|nt|64|128)|u?(?:16|32|64|128)|f?(?:32|64))(?=\\\\s*\\\\()","name":"meta.expr.numeric.cast.v"},{"captures":{"1":{"name":"storage.type.$1.v"}},"match":"(bool|byte|byteptr|charptr|voidptr|string|rune|size_t|[ui]size)(?=\\\\s*\\\\()","name":"meta.expr.bool.cast.v"}]}]},"comments":{"patterns":[{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.v"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.v"}},"name":"comment.block.documentation.v","patterns":[{"include":"#comments"}]},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.v"}},"end":"$","name":"comment.line.double-slash.v"}]},"constants":{"match":"\\\\b(true|false|none)\\\\b","name":"constant.language.v"},"enum":{"captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.enum.v"},"3":{"name":"entity.name.enum.v"}},"match":"^\\\\s*(?:(pub)?\\\\s+)?(enum)\\\\s+(?:\\\\w+\\\\.)?(\\\\w*)","name":"meta.definition.enum.v"},"function-decl":{"captures":{"1":{"name":"storage.modifier.v"},"2":{"name":"keyword.fn.v"},"3":{"name":"entity.name.function.v"},"4":{"patterns":[{"include":"#generic"}]}},"match":"^(\\\\bpub\\\\b\\\\s+)?(\\\\bfn\\\\b)\\\\s+(?:\\\\([^\\\\)]+\\\\)\\\\s+)?(?:(?:C\\\\.)?)(\\\\w+)\\\\s*((?<=[\\\\w\\\\s+])(\\\\<)(\\\\w+)(\\\\>))?","name":"meta.definition.function.v"},"function-exist":{"captures":{"0":{"name":"meta.function.call.v"},"1":{"patterns":[{"include":"#illegal-name"},{"match":"\\\\w+","name":"entity.name.function.v"}]},"2":{"patterns":[{"include":"#generic"}]}},"match":"(\\\\w+)((?<=[\\\\w\\\\s+])(\\\\<)(\\\\w+)(\\\\>))?(?=\\\\s*\\\\()","name":"meta.support.function.v"},"function-extend-decl":{"captures":{"1":{"name":"storage.modifier.v"},"2":{"name":"keyword.fn.v"},"3":{"name":"punctuation.definition.bracket.round.begin.v"},"4":{"patterns":[{"include":"#brackets"},{"include":"#storage"},{"include":"#generic"},{"include":"#types"},{"include":"#punctuation"}]},"5":{"name":"punctuation.definition.bracket.round.end.v"},"6":{"patterns":[{"include":"#illegal-name"},{"match":"\\\\w+","name":"entity.name.function.v"}]},"7":{"patterns":[{"include":"#generic"}]}},"match":"^\\\\s*(pub)?\\\\s*(fn)\\\\s*(\\\\()([^\\\\)]*)(\\\\))\\\\s*(?:(?:C\\\\.)?)(\\\\w+)\\\\s*((?<=[\\\\w\\\\s+])(\\\\<)(\\\\w+)(\\\\>))?","name":"meta.definition.function.v"},"function-limited-overload-decl":{"captures":{"1":{"name":"storage.modifier.v"},"2":{"name":"keyword.fn.v"},"3":{"name":"punctuation.definition.bracket.round.begin.v"},"4":{"patterns":[{"include":"#brackets"},{"include":"#storage"},{"include":"#generic"},{"include":"#types"},{"include":"#punctuation"}]},"5":{"name":"punctuation.definition.bracket.round.end.v"},"6":{"patterns":[{"include":"#operators"}]},"7":{"name":"punctuation.definition.bracket.round.begin.v"},"8":{"patterns":[{"include":"#brackets"},{"include":"#storage"},{"include":"#generic"},{"include":"#types"},{"include":"#punctuation"}]},"9":{"name":"punctuation.definition.bracket.round.end.v"},"10":{"patterns":[{"include":"#illegal-name"},{"match":"\\\\w+","name":"entity.name.function.v"}]}},"match":"^\\\\s*(pub)?\\\\s*(fn)\\\\s*(\\\\()([^\\\\)]*)(\\\\))\\\\s*([\\\\+\\\\-\\\\*\\\\/])?\\\\s*(\\\\()([^\\\\)]*)(\\\\))\\\\s*(?:(?:C\\\\.)?)(\\\\w+)","name":"meta.definition.function.v"},"generic":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.bracket.angle.begin.v"},"2":{"patterns":[{"include":"#illegal-name"},{"match":"\\\\w+","name":"entity.name.generic.v"}]},"3":{"name":"punctuation.definition.bracket.angle.end.v"}},"match":"(?<=[\\\\w\\\\s+])(\\\\<)(\\\\w+)(\\\\>)","name":"meta.definition.generic.v"}]},"hash-decl":{"begin":"^\\\\s*(#)","end":"$","name":"markup.bold.v"},"illegal-name":{"match":"\\\\d\\\\w+","name":"invalid.illegal.v"},"import-decl":{"begin":"^\\\\s*(import)\\\\s+","beginCaptures":{"1":{"name":"keyword.import.v"}},"end":"([\\\\w.]+)","endCaptures":{"1":{"name":"entity.name.import.v"}},"name":"meta.import.v"},"interface":{"captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"keyword.interface.v"},"3":{"patterns":[{"include":"#illegal-name"},{"match":"\\\\w+","name":"entity.name.interface.v"}]}},"match":"^\\\\s*(?:(pub)?\\\\s+)?(interface)\\\\s+(\\\\w*)","name":"meta.definition.interface.v"},"keywords":{"patterns":[{"match":"(\\\\$if|\\\\$else)","name":"keyword.control.v"},{"match":"(?<!@)\\\\b(as|it|is|in|or|break|continue|default|unsafe|match|if|else|for|go|spawn|goto|defer|return|shared|select|rlock|lock|atomic|asm)\\\\b","name":"keyword.control.v"},{"match":"(?<!@)\\\\b(fn|type|typeof|enum|struct|interface|map|assert|sizeof|__offsetof)\\\\b","name":"keyword.$1.v"}]},"module-decl":{"begin":"^\\\\s*(module)\\\\s+","beginCaptures":{"1":{"name":"keyword.module.v"}},"end":"([\\\\w.]+)","endCaptures":{"1":{"name":"entity.name.module.v"}},"name":"meta.module.v"},"numbers":{"patterns":[{"match":"([0-9]+(_?))+(\\\\.)([0-9]+[eE][-+]?[0-9]+)","name":"constant.numeric.exponential.v"},{"match":"([0-9]+(_?))+(\\\\.)([0-9]+)","name":"constant.numeric.float.v"},{"match":"(?:0b)(?:(?:[0-1]+)(?:_?))+","name":"constant.numeric.binary.v"},{"match":"(?:0o)(?:(?:[0-7]+)(?:_?))+","name":"constant.numeric.octal.v"},{"match":"(?:0x)(?:(?:[0-9a-fA-F]+)(?:_?))+","name":"constant.numeric.hex.v"},{"match":"(?:(?:[0-9]+)(?:[_]?))+","name":"constant.numeric.integer.v"}]},"operators":{"patterns":[{"match":"(\\\\+|\\\\-|\\\\*|\\\\/|\\\\%|\\\\+\\\\+|\\\\-\\\\-|\\\\>\\\\>|\\\\<\\\\<)","name":"keyword.operator.arithmetic.v"},{"match":"(\\\\=\\\\=|\\\\!\\\\=|\\\\>|\\\\<|\\\\>\\\\=|\\\\<\\\\=)","name":"keyword.operator.relation.v"},{"match":"(\\\\:\\\\=|\\\\=|\\\\+\\\\=|\\\\-\\\\=|\\\\*\\\\=|\\\\/\\\\=|\\\\%\\\\=|\\\\&\\\\=|\\\\|\\\\=|\\\\^\\\\=|\\\\~\\\\=|\\\\&\\\\&\\\\=|\\\\|\\\\|\\\\=|\\\\>\\\\>\\\\=|\\\\<\\\\<\\\\=)","name":"keyword.operator.assignment.v"},{"match":"(\\\\&|\\\\||\\\\^|\\\\~|<(?!<)|>(?!>))","name":"keyword.operator.bitwise.v"},{"match":"(\\\\&\\\\&|\\\\|\\\\||\\\\!)","name":"keyword.operator.logical.v"},{"match":"\\\\?","name":"keyword.operator.optional.v"}]},"punctuation":{"patterns":[{"match":"\\\\.","name":"punctuation.delimiter.period.dot.v"},{"match":",","name":"punctuation.delimiter.comma.v"},{"match":":","name":"punctuation.separator.key-value.colon.v"},{"match":";","name":"punctuation.definition.other.semicolon.v"},{"match":"\\\\?","name":"punctuation.definition.other.questionmark.v"},{"match":"#","name":"punctuation.hash.v"}]},"punctuations":{"patterns":[{"match":"(?:\\\\.)","name":"punctuation.accessor.v"},{"match":"(?:,)","name":"punctuation.separator.comma.v"}]},"storage":{"match":"\\\\b(const|mut|pub)\\\\b","name":"storage.modifier.v"},"string-escaped-char":{"patterns":[{"match":"\\\\\\\\([0-7]{3}|[\\\\$abfnrtv\\\\\\\\'\\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})","name":"constant.character.escape.v"},{"match":"\\\\\\\\[^0-7\\\\$xuUabfnrtv\\\\'\\"]","name":"invalid.illegal.unknown-escape.v"}]},"string-interpolation":{"captures":{"1":{"patterns":[{"match":"\\\\$\\\\d[\\\\.\\\\w]+","name":"invalid.illegal.v"},{"match":"\\\\$([\\\\.\\\\w]+|\\\\{.*?\\\\})","name":"variable.other.interpolated.v"}]}},"match":"(\\\\$([\\\\w.]+|\\\\{.*?\\\\}))","name":"meta.string.interpolation.v"},"string-placeholder":{"match":"%(\\\\[\\\\d+\\\\])?([\\\\+#\\\\-0\\\\x20]{,2}((\\\\d+|\\\\*)?(\\\\.?(\\\\d+|\\\\*|(\\\\[\\\\d+\\\\])\\\\*?)?(\\\\[\\\\d+\\\\])?)?))?[vT%tbcdoqxXUbeEfFgGsp]","name":"constant.other.placeholder.v"},"strings":{"patterns":[{"begin":"\`","end":"\`","name":"string.quoted.rune.v","patterns":[{"include":"#string-escaped-char"},{"include":"#string-interpolation"},{"include":"#string-placeholder"}]},{"begin":"(r)'","beginCaptures":{"1":{"name":"storage.type.string.v"}},"end":"'","name":"string.quoted.raw.v","patterns":[{"include":"#string-interpolation"},{"include":"#string-placeholder"}]},{"begin":"(r)\\"","beginCaptures":{"1":{"name":"storage.type.string.v"}},"end":"\\"","name":"string.quoted.raw.v","patterns":[{"include":"#string-interpolation"},{"include":"#string-placeholder"}]},{"begin":"(c?)'","beginCaptures":{"1":{"name":"storage.type.string.v"}},"end":"'","name":"string.quoted.v","patterns":[{"include":"#string-escaped-char"},{"include":"#string-interpolation"},{"include":"#string-placeholder"}]},{"begin":"(c?)\\"","beginCaptures":{"1":{"name":"storage.type.string.v"}},"end":"\\"","name":"string.quoted.v","patterns":[{"include":"#string-escaped-char"},{"include":"#string-interpolation"},{"include":"#string-placeholder"}]}]},"struct":{"patterns":[{"begin":"^\\\\s*(?:(mut|pub(?:\\\\s+mut)?|__global)\\\\s+)?(struct|union)\\\\s+([\\\\w.]+)\\\\s*|({)","beginCaptures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.struct.v"},"3":{"name":"entity.name.type.v"},"4":{"name":"punctuation.definition.bracket.curly.begin.v"}},"end":"\\\\s*|(})","endCaptures":{"1":{"name":"punctuation.definition.bracket.curly.end.v"}},"name":"meta.definition.struct.v","patterns":[{"include":"#struct-access-modifier"},{"captures":{"1":{"name":"variable.other.property.v"},"2":{"patterns":[{"include":"#numbers"},{"include":"#brackets"},{"include":"#types"},{"match":"\\\\w+","name":"storage.type.other.v"}]},"3":{"name":"keyword.operator.assignment.v"},"4":{"patterns":[{"include":"$self"}]}},"match":"\\\\b(\\\\w+)\\\\s+([\\\\w\\\\[\\\\]\\\\*&.]+)(?:\\\\s*(=)\\\\s*((?:.(?=$|//|/\\\\*))*+))?"},{"include":"#types"},{"include":"$self"}]},{"captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.struct.v"},"3":{"name":"entity.name.struct.v"}},"match":"^\\\\s*(?:(mut|pub(?:\\\\s+mut)?|__global))\\\\s+?(struct)\\\\s+(?:\\\\s+([\\\\w.]+))?","name":"meta.definition.struct.v"}]},"struct-access-modifier":{"captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"punctuation.separator.struct.key-value.v"}},"match":"(?<=\\\\s|^)(mut|pub(?:\\\\s+mut)?|__global)(:|\\\\b)"},"type":{"captures":{"1":{"name":"storage.modifier.$1.v"},"2":{"name":"storage.type.type.v"},"3":{"patterns":[{"include":"#illegal-name"},{"include":"#types"},{"match":"\\\\w+","name":"entity.name.type.v"}]},"4":{"patterns":[{"include":"#illegal-name"},{"include":"#types"},{"match":"\\\\w+","name":"entity.name.type.v"}]}},"match":"^\\\\s*(?:(pub)?\\\\s+)?(type)\\\\s+(\\\\w*)\\\\s+(?:\\\\w+\\\\.+)?(\\\\w*)","name":"meta.definition.type.v"},"types":{"patterns":[{"match":"(?<!\\\\.)\\\\b(i(8|16|nt|64|128)|u(8|16|32|64|128)|f(32|64))\\\\b","name":"storage.type.numeric.v"},{"match":"(?<!\\\\.)\\\\b(bool|byte|byteptr|charptr|voidptr|string|ustring|rune)\\\\b","name":"storage.type.$1.v"}]},"variable-assign":{"captures":{"0":{"patterns":[{"match":"[a-zA-Z_]\\\\w*","name":"variable.other.assignment.v"},{"include":"#punctuation"}]}},"match":"[a-zA-Z_]\\\\w*(?:,\\\\s*[a-zA-Z_]\\\\w*)*(?=\\\\s*(?:=|:=))"}},"scopeName":"source.v"}`)),ose=[ise]});var tP={};x(tP,{default:()=>cse});var sse,cse,nP=_(()=>{sse=Object.freeze(JSON.parse(`{"displayName":"Vala","fileTypes":["vala","vapi","gs"],"name":"vala","patterns":[{"include":"#code"}],"repository":{"code":{"patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#strings"},{"include":"#keywords"},{"include":"#types"},{"include":"#functions"},{"include":"#variables"}]},"comments":{"patterns":[{"captures":{"0":{"name":"punctuation.definition.comment.vala"}},"match":"/\\\\*\\\\*/","name":"comment.block.empty.vala"},{"include":"text.html.javadoc"},{"include":"#comments-inline"}]},"comments-inline":{"patterns":[{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.vala"}},"end":"\\\\*/","name":"comment.block.vala"},{"captures":{"1":{"name":"comment.line.double-slash.vala"},"2":{"name":"punctuation.definition.comment.vala"}},"match":"\\\\s*((//).*$\\\\n?)"}]},"constants":{"patterns":[{"match":"\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\\\b","name":"constant.numeric.vala"},{"match":"\\\\b([A-Z][A-Z0-9_]+)\\\\b","name":"variable.other.constant.vala"}]},"functions":{"patterns":[{"match":"(\\\\w+)(?=\\\\s*(<[\\\\s\\\\w.]+>\\\\s*)?\\\\()","name":"entity.name.function.vala"}]},"keywords":{"patterns":[{"match":"(?<=^|[^@\\\\w\\\\.])(as|do|if|in|is|not|or|and|for|get|new|out|ref|set|try|var|base|case|else|enum|lock|null|this|true|void|weak|async|break|catch|class|const|false|owned|throw|using|while|with|yield|delete|extern|inline|params|public|return|sealed|signal|sizeof|static|struct|switch|throws|typeof|unlock|default|dynamic|ensures|finally|foreach|private|unowned|virtual|abstract|continue|delegate|internal|override|requires|volatile|construct|interface|namespace|protected|errordomain)\\\\b","name":"keyword.vala"},{"match":"(?<=^|[^@\\\\w\\\\.])(bool|double|float|unichar|unichar2|char|uchar|int|uint|long|ulong|short|ushort|size_t|ssize_t|string|string16|string32|void|signal|int8|int16|int32|int64|uint8|uint16|uint32|uint64|va_list|time_t)\\\\b","name":"keyword.vala"},{"match":"(#if|#elif|#else|#endif)","name":"keyword.vala"}]},"strings":{"patterns":[{"begin":"\\"\\"\\"","end":"\\"\\"\\"","name":"string.quoted.triple.vala"},{"begin":"@\\"","end":"\\"","name":"string.quoted.interpolated.vala","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.vala"},{"match":"\\\\$\\\\w+","name":"constant.character.escape.vala"},{"match":"\\\\$\\\\(([^)(]|\\\\(([^)(]|\\\\([^)]*\\\\))*\\\\))*\\\\)","name":"constant.character.escape.vala"}]},{"begin":"\\"","end":"\\"","name":"string.quoted.double.vala","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.vala"}]},{"begin":"'","end":"'","name":"string.quoted.single.vala","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.vala"}]},{"match":"/((\\\\\\\\/)|([^/]))*/(?=\\\\s*[,;)\\\\.\\\\n])","name":"string.regexp.vala"}]},"types":{"patterns":[{"match":"(?<=^|[^@\\\\w\\\\.])(bool|double|float|unichar|unichar2|char|uchar|int|uint|long|ulong|short|ushort|size_t|ssize_t|string|string16|string32|void|signal|int8|int16|int32|int64|uint8|uint16|uint32|uint64|va_list|time_t)\\\\b","name":"storage.type.primitive.vala"},{"match":"\\\\b([A-Z]+\\\\w*)\\\\b","name":"entity.name.type.vala"}]},"variables":{"patterns":[{"match":"\\\\b([_a-z]+\\\\w*)\\\\b","name":"variable.other.vala"}]}},"scopeName":"source.vala"}`)),cse=[sse]});var aP={};x(aP,{default:()=>Ase});var lse,Ase,rP=_(()=>{lse=Object.freeze(JSON.parse(`{"displayName":"Visual Basic","name":"vb","patterns":[{"match":"\\\\n","name":"meta.ending-space"},{"include":"#round-brackets"},{"begin":"^(?=\\\\t)","end":"(?=[^\\\\t])","name":"meta.leading-space","patterns":[{"captures":{"1":{"name":"meta.odd-tab.tabs"},"2":{"name":"meta.even-tab.tabs"}},"match":"(\\\\t)(\\\\t)?"}]},{"begin":"^(?= )","end":"(?=[^ ])","name":"meta.leading-space","patterns":[{"captures":{"1":{"name":"meta.odd-tab.spaces"},"2":{"name":"meta.even-tab.spaces"}},"match":"( )( )?"}]},{"captures":{"1":{"name":"storage.type.function.asp"},"2":{"name":"entity.name.function.asp"},"3":{"name":"punctuation.definition.parameters.asp"},"4":{"name":"variable.parameter.function.asp"},"5":{"name":"punctuation.definition.parameters.asp"}},"match":"^\\\\s*((?i:function|sub))\\\\s*([a-zA-Z_]\\\\w*)\\\\s*(\\\\()([^)]*)(\\\\)).*\\\\n?","name":"meta.function.asp"},{"begin":"(^[ \\\\t]+)?(?=')","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.asp"}},"end":"(?!\\\\G)","patterns":[{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.comment.asp"}},"end":"\\\\n","name":"comment.line.apostrophe.asp"}]},{"match":"(?i:\\\\b(If|Then|Else|ElseIf|Else If|End If|While|Wend|For|To|Each|Case|Select|End Select|Return|Continue|Do|Until|Loop|Next|With|Exit Do|Exit For|Exit Function|Exit Property|Exit Sub|IIf)\\\\b)","name":"keyword.control.asp"},{"match":"(?i:\\\\b(Mod|And|Not|Or|Xor|as)\\\\b)","name":"keyword.operator.asp"},{"captures":{"1":{"name":"storage.type.asp"},"2":{"name":"variable.other.bfeac.asp"},"3":{"name":"meta.separator.comma.asp"}},"match":"(?i:(dim)\\\\s*(?:(\\\\b[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\\\b)\\\\s*(,?)))","name":"variable.other.dim.asp"},{"match":"(?i:\\\\s*\\\\b(Call|Class|Const|Dim|Redim|Function|Sub|Private Sub|Public Sub|End Sub|End Function|End Class|End Property|Public Property|Private Property|Set|Let|Get|New|Randomize|Option Explicit|On Error Resume Next|On Error GoTo)\\\\b\\\\s*)","name":"storage.type.asp"},{"match":"(?i:\\\\b(Private|Public|Default)\\\\b)","name":"storage.modifier.asp"},{"match":"(?i:\\\\s*\\\\b(Empty|False|Nothing|Null|True)\\\\b)","name":"constant.language.asp"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.asp"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.asp"}},"name":"string.quoted.double.asp","patterns":[{"match":"\\"\\"","name":"constant.character.escape.apostrophe.asp"}]},{"captures":{"1":{"name":"punctuation.definition.variable.asp"}},"match":"(\\\\$)[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\\\b\\\\s*","name":"variable.other.asp"},{"match":"(?i:\\\\b(Application|ObjectContext|Request|Response|Server|Session)\\\\b)","name":"support.class.asp"},{"match":"(?i:\\\\b(Contents|StaticObjects|ClientCertificate|Cookies|Form|QueryString|ServerVariables)\\\\b)","name":"support.class.collection.asp"},{"match":"(?i:\\\\b(TotalBytes|Buffer|CacheControl|Charset|ContentType|Expires|ExpiresAbsolute|IsClientConnected|PICS|Status|ScriptTimeout|CodePage|LCID|SessionID|Timeout)\\\\b)","name":"support.constant.asp"},{"match":"(?i:\\\\b(Lock|Unlock|SetAbort|SetComplete|BinaryRead|AddHeader|AppendToLog|BinaryWrite|Clear|End|Flush|Redirect|Write|CreateObject|HTMLEncode|MapPath|URLEncode|Abandon|Convert|Regex)\\\\b)","name":"support.function.asp"},{"match":"(?i:\\\\b(Application_OnEnd|Application_OnStart|OnTransactionAbort|OnTransactionCommit|Session_OnEnd|Session_OnStart)\\\\b)","name":"support.function.event.asp"},{"match":"(?i:(?<=as )(\\\\b[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\\\b))","name":"support.type.vb.asp"},{"match":"(?i:\\\\b(Array|Add|Asc|Atn|CBool|CByte|CCur|CDate|CDbl|Chr|CInt|CLng|Conversions|Cos|CreateObject|CSng|CStr|Date|DateAdd|DateDiff|DatePart|DateSerial|DateValue|Day|Derived|Math|Escape|Eval|Exists|Exp|Filter|FormatCurrency|FormatDateTime|FormatNumber|FormatPercent|GetLocale|GetObject|GetRef|Hex|Hour|InputBox|InStr|InStrRev|Int|Fix|IsArray|IsDate|IsEmpty|IsNull|IsNumeric|IsObject|Item|Items|Join|Keys|LBound|LCase|Left|Len|LoadPicture|Log|LTrim|RTrim|Trim|Maths|Mid|Minute|Month|MonthName|MsgBox|Now|Oct|Remove|RemoveAll|Replace|RGB|Right|Rnd|Round|ScriptEngine|ScriptEngineBuildVersion|ScriptEngineMajorVersion|ScriptEngineMinorVersion|Second|SetLocale|Sgn|Sin|Space|Split|Sqr|StrComp|String|StrReverse|Tan|Time|Timer|TimeSerial|TimeValue|TypeName|UBound|UCase|Unescape|VarType|Weekday|WeekdayName|Year)\\\\b)","name":"support.function.vb.asp"},{"match":"-?\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\\\\b","name":"constant.numeric.asp"},{"match":"(?i:\\\\b(vbtrue|vbfalse|vbcr|vbcrlf|vbformfeed|vblf|vbnewline|vbnullchar|vbnullstring|int32|vbtab|vbverticaltab|vbbinarycompare|vbtextcomparevbsunday|vbmonday|vbtuesday|vbwednesday|vbthursday|vbfriday|vbsaturday|vbusesystemdayofweek|vbfirstjan1|vbfirstfourdays|vbfirstfullweek|vbgeneraldate|vblongdate|vbshortdate|vblongtime|vbshorttime|vbobjecterror|vbEmpty|vbNull|vbInteger|vbLong|vbSingle|vbDouble|vbCurrency|vbDate|vbString|vbObject|vbError|vbBoolean|vbVariant|vbDataObject|vbDecimal|vbByte|vbArray)\\\\b)","name":"support.type.vb.asp"},{"captures":{"1":{"name":"entity.name.function.asp"}},"match":"(?i:(\\\\b[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\\\b)(?=\\\\(\\\\)?))","name":"support.function.asp"},{"match":"(?i:((?<=(\\\\+|=|-|\\\\&|\\\\\\\\|/|<|>|\\\\(|,))\\\\s*\\\\b([a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?)\\\\b(?!(\\\\(|\\\\.))|\\\\b([a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?)\\\\b(?=\\\\s*(\\\\+|=|-|\\\\&|\\\\\\\\|/|<|>|\\\\(|\\\\)))))","name":"variable.other.asp"},{"match":"!|\\\\$|%|&|\\\\*|\\\\-\\\\-|\\\\-|\\\\+\\\\+|\\\\+|~|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\\\\|\\\\||\\\\?\\\\:|\\\\*=|/=|%=|\\\\+=|\\\\-=|&=|\\\\^=|\\\\b(in|instanceof|new|delete|typeof|void)\\\\b","name":"keyword.operator.js"}],"repository":{"round-brackets":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.round-brackets.begin.asp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.round-brackets.end.asp"}},"name":"meta.round-brackets","patterns":[{"include":"source.asp.vb.net"}]}},"scopeName":"source.asp.vb.net","aliases":["cmd"]}`)),Ase=[lse]});var iP={};x(iP,{default:()=>use});var dse,use,oP=_(()=>{dse=Object.freeze(JSON.parse('{"displayName":"Verilog","fileTypes":["v","vh"],"name":"verilog","patterns":[{"include":"#comments"},{"include":"#module_pattern"},{"include":"#keywords"},{"include":"#constants"},{"include":"#strings"},{"include":"#operators"}],"repository":{"comments":{"patterns":[{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.verilog"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.verilog"}},"end":"\\\\n","name":"comment.line.double-slash.verilog"}]},{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.c-style.verilog"}]},"constants":{"patterns":[{"match":"`(?!(celldefine|endcelldefine|default_nettype|define|undef|ifdef|ifndef|else|endif|include|resetall|timescale|unconnected_drive|nounconnected_drive))[a-z_A-Z][a-zA-Z0-9_$]*","name":"variable.other.constant.verilog"},{"match":"[0-9]*\'[bBoOdDhH][a-fA-F0-9_xXzZ]+\\\\b","name":"constant.numeric.sized_integer.verilog"},{"captures":{"1":{"name":"constant.numeric.integer.verilog"},"2":{"name":"punctuation.separator.range.verilog"},"3":{"name":"constant.numeric.integer.verilog"}},"match":"\\\\b(\\\\d+)(:)(\\\\d+)\\\\b","name":"meta.block.numeric.range.verilog"},{"match":"\\\\b\\\\d[\\\\d_]*(?i:e\\\\d+)?\\\\b","name":"constant.numeric.integer.verilog"},{"match":"\\\\b\\\\d+\\\\.\\\\d+(?i:e\\\\d+)?\\\\b","name":"constant.numeric.real.verilog"},{"match":"#\\\\d+","name":"constant.numeric.delay.verilog"},{"match":"\\\\b[01xXzZ]+\\\\b","name":"constant.numeric.logic.verilog"}]},"instantiation_patterns":{"patterns":[{"include":"#keywords"},{"begin":"^\\\\s*(?!always|and|assign|output|input|inout|wire|module)([a-zA-Z][a-zA-Z0-9_]*)\\\\s+([a-zA-Z][a-zA-Z0-9_]*)(?<!begin|if)\\\\s*(?=\\\\(|$)","beginCaptures":{"1":{"name":"entity.name.tag.module.reference.verilog"},"2":{"name":"entity.name.tag.module.identifier.verilog"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.expression.verilog"}},"name":"meta.block.instantiation.parameterless.verilog","patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#strings"}]},{"begin":"^\\\\s*([a-zA-Z][a-zA-Z0-9_]*)\\\\s*(#)(?=\\\\s*\\\\()","beginCaptures":{"1":{"name":"entity.name.tag.module.reference.verilog"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.expression.verilog"}},"name":"meta.block.instantiation.with.parameters.verilog","patterns":[{"include":"#parenthetical_list"},{"match":"[a-zA-Z][a-zA-Z0-9_]*","name":"entity.name.tag.module.identifier.verilog"}]}]},"keywords":{"patterns":[{"match":"\\\\b(always|and|assign|attribute|begin|buf|bufif0|bufif1|case[xz]?|cmos|deassign|default|defparam|disable|edge|else|end(attribute|case|function|generate|module|primitive|specify|table|task)?|event|for|force|forever|fork|function|generate|genvar|highz(01)|if(none)?|initial|inout|input|integer|join|localparam|medium|module|large|macromodule|nand|negedge|nmos|nor|not|notif(01)|or|output|parameter|pmos|posedge|primitive|pull0|pull1|pulldown|pullup|rcmos|real|realtime|reg|release|repeat|rnmos|rpmos|rtran|rtranif(01)|scalared|signed|small|specify|specparam|strength|strong0|strong1|supply0|supply1|table|task|time|tran|tranif(01)|tri(01)?|tri(and|or|reg)|unsigned|vectored|wait|wand|weak(01)|while|wire|wor|xnor|xor)\\\\b","name":"keyword.other.verilog"},{"match":"^\\\\s*`((cell)?define|default_(decay_time|nettype|trireg_strength)|delay_mode_(path|unit|zero)|ifdef|ifndef|include|end(if|celldefine)|else|(no)?unconnected_drive|resetall|timescale|undef)\\\\b","name":"keyword.other.compiler.directive.verilog"},{"match":"\\\\$(f(open|close)|readmem(b|h)|timeformat|printtimescale|stop|finish|(s|real)?time|realtobits|bitstoreal|rtoi|itor|(f)?(display|write(h|b)))\\\\b","name":"support.function.system.console.tasks.verilog"},{"match":"\\\\$(random|dist_(chi_square|erlang|exponential|normal|poisson|t|uniform))\\\\b","name":"support.function.system.random_number.tasks.verilog"},{"match":"\\\\$((a)?sync\\\\$((n)?and|(n)or)\\\\$(array|plane))\\\\b","name":"support.function.system.pld_modeling.tasks.verilog"},{"match":"\\\\$(q_(initialize|add|remove|full|exam))\\\\b","name":"support.function.system.stochastic.tasks.verilog"},{"match":"\\\\$(hold|nochange|period|recovery|setup(hold)?|skew|width)\\\\b","name":"support.function.system.timing.tasks.verilog"},{"match":"\\\\$(dump(file|vars|off|on|all|limit|flush))\\\\b","name":"support.function.system.vcd.tasks.verilog"},{"match":"\\\\$(countdrivers|list|input|scope|showscopes|(no)?(key|log)|reset(_count|_value)?|(inc)?save|restart|showvars|getpattern|sreadmem(b|h)|scale)","name":"support.function.non-standard.tasks.verilog"}]},"module_pattern":{"patterns":[{"begin":"\\\\b(module)\\\\s+([a-zA-Z][a-zA-Z0-9_]*)","beginCaptures":{"1":{"name":"storage.type.module.verilog"},"2":{"name":"entity.name.type.module.verilog"}},"end":"\\\\bendmodule\\\\b","endCaptures":{"0":{"name":"storage.type.module.verilog"}},"name":"meta.block.module.verilog","patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#constants"},{"include":"#strings"},{"include":"#instantiation_patterns"},{"include":"#operators"}]}]},"operators":{"patterns":[{"match":"\\\\+|-|\\\\*|/|%|(<|>)=?|(!|=)?==?|!|&&?|\\\\|\\\\|?|\\\\^?~|~\\\\^?","name":"keyword.operator.verilog"}]},"parenthetical_list":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.list.verilog"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.list.verilog"}},"name":"meta.block.parenthetical_list.verilog","patterns":[{"include":"#parenthetical_list"},{"include":"#comments"},{"include":"#keywords"},{"include":"#constants"},{"include":"#strings"}]}]},"strings":{"patterns":[{"begin":"\\"","end":"\\"","name":"string.quoted.double.verilog","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.verilog"}]}]}},"scopeName":"source.verilog"}')),use=[dse]});var sP={};x(sP,{default:()=>mse});var pse,mse,cP=_(()=>{pse=Object.freeze(JSON.parse(`{"displayName":"VHDL","fileTypes":["vhd","vhdl","vho","vht"],"name":"vhdl","patterns":[{"include":"#block_processing"},{"include":"#cleanup"}],"repository":{"architecture_pattern":{"patterns":[{"begin":"\\\\b((?i:architecture))\\\\s+(([a-zA-z][a-zA-z0-9_]*)|(.+))(?=\\\\s)\\\\s+((?i:of))\\\\s+(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))(?=\\\\s*(?i:is))\\\\b","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"entity.name.type.architecture.begin.vhdl"},"4":{"name":"invalid.illegal.invalid.identifier.vhdl"},"5":{"name":"keyword.language.vhdl"},"7":{"name":"entity.name.type.entity.reference.vhdl"},"8":{"name":"invalid.illegal.invalid.identifier.vhdl"}},"end":"\\\\b((?i:end))(\\\\s+((?i:architecture)))?(\\\\s+((\\\\3)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"keyword.language.vhdl"},"6":{"name":"entity.name.type.architecture.end.vhdl"},"7":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"name":"support.block.architecture","patterns":[{"include":"#block_pattern"},{"include":"#function_definition_pattern"},{"include":"#procedure_definition_pattern"},{"include":"#component_pattern"},{"include":"#if_pattern"},{"include":"#process_pattern"},{"include":"#type_pattern"},{"include":"#record_pattern"},{"include":"#for_pattern"},{"include":"#entity_instantiation_pattern"},{"include":"#component_instantiation_pattern"},{"include":"#cleanup"}]}]},"attribute_list":{"patterns":[{"begin":"\\\\'\\\\(","beginCaptures":{"0":{"name":"punctuation.vhdl"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.vhdl"}},"patterns":[{"include":"#parenthetical_list"},{"include":"#cleanup"}]}]},"block_pattern":{"patterns":[{"begin":"^\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)\\\\s*(:)\\\\s*)?(\\\\s*(?i:block))","beginCaptures":{"2":{"name":"meta.block.block.name"},"3":{"name":"keyword.language.vhdl"},"4":{"name":"keyword.language.vhdl"}},"end":"((?i:end\\\\s+block))(\\\\s+((\\\\2)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"2":{"name":"meta.block.block.end"},"5":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"name":"meta.block.block","patterns":[{"include":"#control_patterns"},{"include":"#cleanup"}]}]},"block_processing":{"patterns":[{"include":"#package_pattern"},{"include":"#package_body_pattern"},{"include":"#entity_pattern"},{"include":"#architecture_pattern"}]},"case_pattern":{"patterns":[{"begin":"^\\\\s*((([a-zA-Z][a-zA-Z0-9_]*)|(.+?))\\\\s*:\\\\s*)?\\\\b((?i:case))\\\\b","beginCaptures":{"3":{"name":"entity.name.tag.case.begin.vhdl"},"4":{"name":"invalid.illegal.invalid.identifier.vhdl"},"5":{"name":"keyword.language.vhdl"}},"end":"\\\\b((?i:end))\\\\s*(\\\\s+(((?i:case))|(.*?)))(\\\\s+((\\\\2)|(.*?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"4":{"name":"keyword.language.vhdl"},"5":{"name":"invalid.illegal.case.required.vhdl"},"8":{"name":"entity.name.tag.case.end.vhdl"},"9":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"patterns":[{"include":"#control_patterns"},{"include":"#cleanup"}]}]},"cleanup":{"patterns":[{"include":"#comments"},{"include":"#constants_numeric"},{"include":"#strings"},{"include":"#attribute_list"},{"include":"#syntax_highlighting"}]},"comments":{"patterns":[{"match":"--.*$\\\\n?","name":"comment.line.double-dash.vhdl"}]},"component_instantiation_pattern":{"patterns":[{"begin":"^\\\\s*([a-zA-Z][a-zA-Z0-9_]*)\\\\s*(:)\\\\s*([a-zA-Z][a-zA-Z0-9_]*)\\\\b(?=\\\\s*($|generic|port))","beginCaptures":{"1":{"name":"entity.name.section.component_instantiation.vhdl"},"2":{"name":"punctuation.vhdl"},"3":{"name":"entity.name.tag.component.reference.vhdl"}},"end":";","endCaptures":{"0":{"name":"punctuation.vhdl"}},"patterns":[{"include":"#parenthetical_list"},{"include":"#cleanup"}]}]},"component_pattern":{"patterns":[{"begin":"^\\\\s*\\\\b((?i:component))\\\\s+(([a-zA-Z_][a-zA-Z0-9_]*)\\\\s*|(.+?))(?=\\\\b(?i:is|port)\\\\b|$|--)(\\\\b((?i:is\\\\b)))?","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"entity.name.type.component.begin.vhdl"},"4":{"name":"invalid.illegal.invalid.identifier.vhdl"},"6":{"name":"keyword.language.vhdl"}},"end":"\\\\b((?i:end))\\\\s+(((?i:component\\\\b))|(.+?))(?=\\\\s*|;)(\\\\s+((\\\\3)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"keyword.language.vhdl"},"4":{"name":"invalid.illegal.component.keyword.required.vhdl"},"7":{"name":"entity.name.type.component.end.vhdl"},"8":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"patterns":[{"include":"#generic_list_pattern"},{"include":"#port_list_pattern"},{"include":"#comments"}]}]},"constants_numeric":{"patterns":[{"match":"\\\\b([+\\\\-]?[\\\\d_]+\\\\.[\\\\d_]+([eE][+\\\\-]?[\\\\d_]+)?)\\\\b","name":"constant.numeric.floating_point.vhdl"},{"match":"\\\\b\\\\d+#[\\\\h_]+#\\\\b","name":"constant.numeric.base_pound_number_pound.vhdl"},{"match":"\\\\b[\\\\d_]+([eE][\\\\d_]+)?\\\\b","name":"constant.numeric.integer.vhdl"},{"match":"[xX]\\"[0-9a-fA-F_uUxXzZwWlLhH\\\\-]+\\"","name":"constant.numeric.quoted.double.string.hex.vhdl"},{"match":"[oO]\\"[0-7_uUxXzZwWlLhH\\\\-]+\\"","name":"constant.numeric.quoted.double.string.octal.vhdl"},{"match":"[bB]?\\"[01_uUxXzZwWlLhH\\\\-]+\\"","name":"constant.numeric.quoted.double.string.binary.vhdl"},{"captures":{"1":{"name":"invalid.illegal.quoted.double.string.vhdl"}},"match":"([bBoOxX]\\".+?\\")","name":"constant.numeric.quoted.double.string.illegal.vhdl"},{"match":"'[01uUxXzZwWlLhH\\\\-]'","name":"constant.numeric.quoted.single.std_logic"}]},"control_patterns":{"patterns":[{"include":"#case_pattern"},{"include":"#if_pattern"},{"include":"#for_pattern"},{"include":"#while_pattern"}]},"entity_instantiation_pattern":{"patterns":[{"begin":"^\\\\s*([a-zA-Z][a-zA-Z0-9_]*)\\\\s*(:)\\\\s*(((?i:use))\\\\s+)?((?i:entity))\\\\s+((([a-zA-Z][a-zA-Z0-9_]*)|(.+?))(\\\\.))?(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))(?=\\\\s*(\\\\(|$|(?i:port|generic)))(\\\\s*(\\\\()\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))(?=\\\\s*\\\\))\\\\s*(\\\\)))?","beginCaptures":{"1":{"name":"entity.name.section.entity_instantiation.vhdl"},"2":{"name":"punctuation.vhdl"},"4":{"name":"keyword.language.vhdl"},"5":{"name":"keyword.language.vhdl"},"8":{"name":"entity.name.tag.library.reference.vhdl"},"9":{"name":"invalid.illegal.invalid.identifier.vhdl"},"10":{"name":"punctuation.vhdl"},"12":{"name":"entity.name.tag.entity.reference.vhdl"},"13":{"name":"invalid.illegal.invalid.identifier.vhdl"},"16":{"name":"punctuation.vhdl"},"18":{"name":"entity.name.tag.architecture.reference.vhdl"},"19":{"name":"invalid.illegal.invalid.identifier.vhdl"},"21":{"name":"punctuation.vhdl"}},"end":";","endCaptures":{"0":{"name":"punctuation.vhdl"}},"patterns":[{"include":"#parenthetical_list"},{"include":"#cleanup"}]}]},"entity_pattern":{"patterns":[{"begin":"^\\\\s*((?i:entity\\\\b))\\\\s+(([a-zA-Z][a-zA-Z\\\\d_]*)|(.+?))(?=\\\\s)","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"entity.name.type.entity.begin.vhdl"},"4":{"name":"invalid.illegal.invalid.identifier.vhdl"}},"end":"\\\\b((?i:end\\\\b))(\\\\s+((?i:entity)))?(\\\\s+((\\\\3)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"keyword.language.vhdl"},"6":{"name":"entity.name.type.entity.end.vhdl"},"7":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"patterns":[{"include":"#comments"},{"include":"#generic_list_pattern"},{"include":"#port_list_pattern"},{"include":"#cleanup"}]}]},"for_pattern":{"patterns":[{"begin":"^\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)\\\\s*(:)\\\\s*)?(?!(?i:wait\\\\s*))\\\\b((?i:for))\\\\b(?!\\\\s*(?i:all))","beginCaptures":{"2":{"name":"entity.name.tag.for.generate.begin.vhdl"},"3":{"name":"punctuation.vhdl"},"4":{"name":"keyword.language.vhdl"}},"end":"\\\\b((?i:end))\\\\s+(((?i:generate|loop))|(\\\\S+))\\\\b(\\\\s+((\\\\2)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"keyword.language.vhdl"},"4":{"name":"invalid.illegal.loop.or.generate.required.vhdl"},"7":{"name":"entity.name.tag.for.generate.end.vhdl"},"8":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"patterns":[{"include":"#control_patterns"},{"include":"#entity_instantiation_pattern"},{"include":"#component_pattern"},{"include":"#component_instantiation_pattern"},{"include":"#process_pattern"},{"include":"#cleanup"}]}]},"function_definition_pattern":{"patterns":[{"begin":"^\\\\s*((?i:impure)?\\\\s*(?i:function))\\\\s+(([a-zA-Z][a-zA-Z\\\\d_]*)|(\\"\\\\S+\\")|(\\\\\\\\.+\\\\\\\\)|(.+?))(?=\\\\s*(\\\\(|(?i:\\\\breturn\\\\b)))","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"entity.name.function.function.begin.vhdl"},"4":{"name":"entity.name.function.function.begin.vhdl"},"5":{"name":"entity.name.function.function.begin.vhdl"},"6":{"name":"invalid.illegal.invalid.identifier.vhdl"}},"end":"^\\\\s*((?i:end))(\\\\s+((?i:function)))?(\\\\s+((\\\\3|\\\\4|\\\\5)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"keyword.language.vhdl"},"6":{"name":"entity.name.function.function.end.vhdl"},"7":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"patterns":[{"include":"#control_patterns"},{"include":"#parenthetical_list"},{"include":"#type_pattern"},{"include":"#record_pattern"},{"include":"#cleanup"}]}]},"function_prototype_pattern":{"patterns":[{"begin":"^\\\\s*((?i:impure)?\\\\s*(?i:function))\\\\s+(([a-zA-Z][a-zA-Z\\\\d_]*)|(\\"\\\\S+\\")|(\\\\\\\\.+\\\\\\\\)|(.+?))(?=\\\\s*(\\\\(|(?i:\\\\breturn\\\\b)))","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"entity.name.function.function.prototype.vhdl"},"4":{"name":"entity.name.function.function.prototype.vhdl"},"5":{"name":"entity.name.function.function.prototype.vhdl"},"6":{"name":"invalid.illegal.function.name.vhdl"}},"end":"(?<=;)","patterns":[{"begin":"\\\\b(?i:return)(?=\\\\s+[^;]+\\\\s*;)","beginCaptures":{"0":{"name":"keyword.language.vhdl"}},"end":"\\\\;","endCaptures":{"0":{"name":"punctuation.terminator.function_prototype.vhdl"}},"patterns":[{"include":"#parenthetical_list"},{"include":"#cleanup"}]},{"include":"#parenthetical_list"},{"include":"#cleanup"}]}]},"generic_list_pattern":{"patterns":[{"begin":"\\\\b(?i:generic)\\\\b","beginCaptures":{"0":{"name":"keyword.language.vhdl"}},"end":";","endCaptures":{"0":{"name":"punctuation.vhdl"}},"patterns":[{"include":"#parenthetical_list"}]}]},"if_pattern":{"patterns":[{"begin":"(([a-zA-Z][a-zA-Z0-9_]*)\\\\s*(:)\\\\s*)?\\\\b((?i:if))\\\\b","beginCaptures":{"2":{"name":"entity.name.tag.if.generate.begin.vhdl"},"3":{"name":"punctuation.vhdl"},"4":{"name":"keyword.language.vhdl"}},"end":"\\\\b((?i:end))\\\\s+((((?i:generate|if))|(\\\\S+))\\\\b(\\\\s+((\\\\2)|(.+?)))?)?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"4":{"name":"keyword.language.vhdl"},"5":{"name":"invalid.illegal.if.or.generate.required.vhdl"},"8":{"name":"entity.name.tag.if.generate.end.vhdl"},"9":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"patterns":[{"include":"#control_patterns"},{"include":"#process_pattern"},{"include":"#entity_instantiation_pattern"},{"include":"#component_pattern"},{"include":"#component_instantiation_pattern"},{"include":"#cleanup"}]}]},"keywords":{"patterns":[{"match":"'(?i:active|ascending|base|delayed|driving|driving_value|event|high|image|instance|instance_name|last|last_value|left|leftof|length|low|path|path_name|pos|pred|quiet|range|reverse|reverse_range|right|rightof|simple|simple_name|stable|succ|transaction|val|value)\\\\b","name":"keyword.attributes.vhdl"},{"match":"\\\\b(?i:abs|access|after|alias|all|and|architecture|array|assert|attribute|begin|block|body|buffer|bus|case|component|configuration|constant|context|deallocate|disconnect|downto|else|elsif|end|entity|exit|file|for|force|function|generate|generic|group|guarded|if|impure|in|inertial|inout|is|label|library|linkage|literal|loop|map|mod|nand|new|next|nor|not|null|of|on|open|or|others|out|package|port|postponed|procedure|process|protected|pure|range|record|register|reject|release|rem|report|return|rol|ror|select|severity|shared|signal|sla|sll|sra|srl|subtype|then|to|transport|type|unaffected|units|until|use|variable|wait|when|while|with|xnor|xor)\\\\b","name":"keyword.language.vhdl"},{"match":"\\\\b(?i:std|ieee|work|standard|textio|std_logic_1164|std_logic_arith|std_logic_misc|std_logic_signed|std_logic_textio|std_logic_unsigned|numeric_bit|numeric_std|math_complex|math_real|vital_primitives|vital_timing)\\\\b","name":"standard.library.language.vhdl"},{"match":"(\\\\+|\\\\-|<=|=|=>|:=|>=|>|<|/|\\\\||&|(\\\\*{1,2}))","name":"keyword.operator.vhdl"}]},"package_body_pattern":{"patterns":[{"begin":"\\\\b((?i:package))\\\\s+((?i:body))\\\\s+(([a-zA-Z][a-zA-Z\\\\d_]*)|(.+?))\\\\s+((?i:is))\\\\b","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"2":{"name":"keyword.language.vhdl"},"4":{"name":"entity.name.section.package_body.begin.vhdl"},"5":{"name":"invalid.illegal.invalid.identifier.vhdl"},"6":{"name":"keyword.language.vhdl"}},"end":"\\\\b((?i:end\\\\b))(\\\\s+((?i:package))\\\\s+((?i:body)))?(\\\\s+((\\\\4)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"keyword.language.vhdl"},"4":{"name":"keyword.language.vhdl"},"7":{"name":"entity.name.section.package_body.end.vhdl"},"8":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"patterns":[{"include":"#protected_body_pattern"},{"include":"#function_definition_pattern"},{"include":"#procedure_definition_pattern"},{"include":"#type_pattern"},{"include":"#subtype_pattern"},{"include":"#record_pattern"},{"include":"#cleanup"}]}]},"package_pattern":{"patterns":[{"begin":"\\\\b((?i:package))\\\\s+(?!(?i:body))(([a-zA-Z][a-zA-Z\\\\d_]*)|(.+?))\\\\s+((?i:is))\\\\b","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"entity.name.section.package.begin.vhdl"},"4":{"name":"invalid.illegal.invalid.identifier.vhdl"},"5":{"name":"keyword.language.vhdl"}},"end":"\\\\b((?i:end\\\\b))(\\\\s+((?i:package)))?(\\\\s+((\\\\2)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"keyword.language.vhdl"},"6":{"name":"entity.name.section.package.end.vhdl"},"7":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"patterns":[{"include":"#protected_pattern"},{"include":"#function_prototype_pattern"},{"include":"#procedure_prototype_pattern"},{"include":"#type_pattern"},{"include":"#subtype_pattern"},{"include":"#record_pattern"},{"include":"#component_pattern"},{"include":"#cleanup"}]}]},"parenthetical_list":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.vhdl"}},"end":"(?<=\\\\))","patterns":[{"begin":"(?=['\\"a-zA-Z0-9])","end":"(;|\\\\)|,)","endCaptures":{"0":{"name":"punctuation.vhdl"}},"name":"source.vhdl","patterns":[{"include":"#comments"},{"include":"#parenthetical_pair"},{"include":"#cleanup"}]},{"match":"\\\\)","name":"invalid.illegal.unexpected.parenthesis.vhdl"},{"include":"#cleanup"}]}]},"parenthetical_pair":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.vhdl"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.vhdl"}},"patterns":[{"include":"#parenthetical_pair"},{"include":"#cleanup"}]}]},"port_list_pattern":{"patterns":[{"begin":"\\\\b(?i:port)\\\\b","beginCaptures":{"0":{"name":"keyword.language.vhdl"}},"end":"(?<=\\\\))\\\\s*;","endCaptures":{"0":{"name":"punctuation.vhdl"}},"patterns":[{"include":"#parenthetical_list"}]}]},"procedure_definition_pattern":{"patterns":[{"begin":"^\\\\s*((?i:procedure))\\\\s+(([a-zA-Z][a-zA-Z\\\\d_]*)|(\\"\\\\S+\\")|(.+?))(?=\\\\s*(\\\\(|(?i:is)))","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"entity.name.function.procedure.begin.vhdl"},"4":{"name":"entity.name.function.procedure.begin.vhdl"},"5":{"name":"invalid.illegal.invalid.identifier.vhdl"}},"end":"^\\\\s*((?i:end))(\\\\s+((?i:procedure)))?(\\\\s+((\\\\3|\\\\4)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"keyword.language.vhdl"},"6":{"name":"entity.name.function.procedure.end.vhdl"},"7":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"patterns":[{"include":"#parenthetical_list"},{"include":"#control_patterns"},{"include":"#type_pattern"},{"include":"#record_pattern"},{"include":"#cleanup"}]}]},"procedure_prototype_pattern":{"patterns":[{"begin":"\\\\b((?i:procedure))\\\\s+(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))(?=\\\\s*(\\\\(|;))","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"entity.name.function.procedure.begin.vhdl"},"4":{"name":"invalid.illegal.invalid.identifier.vhdl"}},"end":";","endCaptures":{"0":{"name":"punctual.vhdl"}},"patterns":[{"include":"#parenthetical_list"}]}]},"process_pattern":{"patterns":[{"begin":"^\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)\\\\s*(:)\\\\s*)?((?:postponed\\\\s+)?(?i:process\\\\b))","beginCaptures":{"2":{"name":"entity.name.section.process.begin.vhdl"},"3":{"name":"punctuation.vhdl"},"4":{"name":"keyword.language.vhdl"}},"end":"((?i:end))(\\\\s+((?:postponed\\\\s+)?(?i:process)))(\\\\s+((\\\\2)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"keyword.language.vhdl"},"6":{"name":"entity.name.section.process.end.vhdl"},"7":{"name":"invalid.illegal.invalid.identifier.vhdl"}},"patterns":[{"include":"#control_patterns"},{"include":"#cleanup"}]}]},"protected_body_pattern":{"patterns":[{"begin":"\\\\b((?i:type))\\\\s+(([a-zA-Z][a-zA-Z\\\\d_]*)|(.+?))\\\\s+\\\\b((?i:is\\\\s+protected\\\\s+body))\\\\s+","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"entity.name.section.protected_body.begin.vhdl"},"4":{"name":"invalid.illegal.invalid.identifier.vhdl"},"5":{"name":"keyword.language.vhdl"}},"end":"\\\\b((?i:end\\\\s+protected\\\\s+body))(\\\\s+((\\\\3)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"4":{"name":"entity.name.section.protected_body.end.vhdl"},"5":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"patterns":[{"include":"#function_definition_pattern"},{"include":"#procedure_definition_pattern"},{"include":"#type_pattern"},{"include":"#subtype_pattern"},{"include":"#record_pattern"},{"include":"#cleanup"}]}]},"protected_pattern":{"patterns":[{"begin":"\\\\b((?i:type))\\\\s+(([a-zA-Z][a-zA-Z\\\\d_]*)|(.+?))\\\\s+\\\\b((?i:is\\\\s+protected))\\\\s+(?!(?i:body))","beginCaptures":{"1":{"name":"keyword.language.vhdls"},"3":{"name":"entity.name.section.protected.begin.vhdl"},"4":{"name":"invalid.illegal.invalid.identifier.vhdl"},"5":{"name":"keyword.language.vhdl"}},"end":"\\\\b((?i:end\\\\s+protected))(\\\\s+((\\\\3)|(.+?)))?(?!(?i:body))(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"4":{"name":"entity.name.section.protected.end.vhdl"},"5":{"name":"invalid.illegal.mismatched.identifier.vhdl"}},"patterns":[{"include":"#function_prototype_pattern"},{"include":"#procedure_prototype_pattern"},{"include":"#type_pattern"},{"include":"#subtype_pattern"},{"include":"#record_pattern"},{"include":"#component_pattern"},{"include":"#cleanup"}]}]},"punctuation":{"patterns":[{"match":"(\\\\.|,|:|;|\\\\(|\\\\))","name":"punctuation.vhdl"}]},"record_pattern":{"patterns":[{"begin":"\\\\b(?i:record)\\\\b","beginCaptures":{"0":{"name":"keyword.language.vhdl"}},"end":"\\\\b((?i:end))\\\\s+((?i:record))(\\\\s+(([a-zA-Z][a-zA-Z\\\\d_]*)|(.*?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"2":{"name":"keyword.language.vhdl"},"5":{"name":"entity.name.type.record.vhdl"},"6":{"name":"invalid.illegal.invalid.identifier.vhdl"}},"patterns":[{"include":"#cleanup"}]},{"include":"#cleanup"}]},"strings":{"patterns":[{"match":"'.'","name":"string.quoted.single.vhdl"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.vhdl","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.vhdl"}]},{"begin":"\\\\\\\\","end":"\\\\\\\\","name":"string.other.backslash.vhdl"}]},"subtype_pattern":{"patterns":[{"begin":"\\\\b((?i:subtype))\\\\s+(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))\\\\s+((?i:is))\\\\b","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"entity.name.type.subtype.vhdl"},"4":{"name":"invalid.illegal.invalid.identifier.vhdl"},"5":{"name":"keyword.language.vhdl"}},"end":";","endCaptures":{"0":{"name":"punctuation.vhdl"}},"patterns":[{"include":"#cleanup"}]}]},"support_constants":{"patterns":[{"match":"\\\\b(?i:math_1_over_e|math_1_over_pi|math_1_over_sqrt_2|math_2_pi|math_3_pi_over_2|math_deg_to_rad|math_e|math_log10_of_e|math_log2_of_e|math_log_of_10|math_log_of_2|math_pi|math_pi_over_2|math_pi_over_3|math_pi_over_4|math_rad_to_deg|math_sqrt_2|math_sqrt_pi)\\\\b","name":"support.constant.ieee.math_real.vhdl"},{"match":"\\\\b(?i:math_cbase_1|math_cbase_j|math_czero|positive_real|principal_value)\\\\b","name":"support.constant.ieee.math_complex.vhdl"},{"match":"\\\\b(?i:true|false)\\\\b","name":"support.constant.std.standard.vhdl"}]},"support_functions":{"patterns":[{"match":"\\\\b(?i:finish|stop|resolution_limit)\\\\b","name":"support.function.std.env.vhdl"},{"match":"\\\\b(?i:readline|read|writeline|write|endfile|endline)\\\\b","name":"support.function.std.textio.vhdl"},{"match":"\\\\b(?i:rising_edge|falling_edge|to_bit|to_bitvector|to_stdulogic|to_stdlogicvector|to_stdulogicvector|is_x)\\\\b","name":"support.function.ieee.std_logic_1164.vhdl"},{"match":"\\\\b(?i:shift_left|shift_right|rotate_left|rotate_right|resize|to_integer|to_unsigned|to_signed)\\\\b","name":"support.function.ieee.numeric_std.vhdl"},{"match":"\\\\b(?i:arccos(h?)|arcsin(h?)|arctan|arctanh|cbrt|ceil|cos|cosh|exp|floor|log10|log2|log|realmax|realmin|round|sign|sin|sinh|sqrt|tan|tanh|trunc)\\\\b","name":"support.function.ieee.math_real.vhdl"},{"match":"\\\\b(?i:arg|cmplx|complex_to_polar|conj|get_principal_value|polar_to_complex)\\\\b","name":"support.function.ieee.math_complex.vhdl"}]},"support_types":{"patterns":[{"match":"\\\\b(?i:boolean|bit|character|severity_level|integer|real|time|delay_length|now|natural|positive|string|bit_vector|file_open_kind|file_open_status|fs|ps|ns|us|ms|sec|min|hr|severity_level|note|warning|error|failure)\\\\b","name":"support.type.std.standard.vhdl"},{"match":"\\\\b(?i:line|text|side|width|input|output)\\\\b","name":"support.type.std.textio.vhdl"},{"match":"\\\\b(?i:std_logic|std_ulogic|std_logic_vector|std_ulogic_vector)\\\\b","name":"support.type.ieee.std_logic_1164.vhdl"},{"match":"\\\\b(?i:signed|unsigned)\\\\b","name":"support.type.ieee.numeric_std.vhdl"},{"match":"\\\\b(?i:complex|complex_polar)\\\\b","name":"support.type.ieee.math_complex.vhdl"}]},"syntax_highlighting":{"patterns":[{"include":"#keywords"},{"include":"#punctuation"},{"include":"#support_constants"},{"include":"#support_types"},{"include":"#support_functions"}]},"type_pattern":{"patterns":[{"begin":"\\\\b((?i:type))\\\\s+(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))((?=\\\\s*;)|(\\\\s+((?i:is))))\\\\b","beginCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"entity.name.type.type.vhdl"},"4":{"name":"invalid.illegal.invalid.identifier.vhdl"},"7":{"name":"keyword.language.vhdl"}},"end":";","endCaptures":{"0":{"name":"punctuation.vhdl"}},"patterns":[{"include":"#record_pattern"},{"include":"#cleanup"}]}]},"while_pattern":{"patterns":[{"begin":"^\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)\\\\s*(:)\\\\s*)?\\\\b((?i:while))\\\\b","beginCaptures":{"2":{"name":""},"3":{"name":"punctuation.vhdl"},"4":{"name":"keyword.language.vhdl"}},"end":"\\\\b((?i:end))\\\\s+(((?i:loop))|(\\\\S+))\\\\b(\\\\s+((\\\\2)|(.+?)))?(?=\\\\s*;)","endCaptures":{"1":{"name":"keyword.language.vhdl"},"3":{"name":"keyword.language.vhdl"},"4":{"name":"invalid.illegal.loop.keyword.required.vhdl"},"7":{"name":"entity.name.tag.while.loop.vhdl"},"8":{"name":"invalid.illegal.mismatched.identifier"}},"patterns":[{"include":"#control_patterns"},{"include":"#cleanup"}]}]}},"scopeName":"source.vhdl"}`)),mse=[pse]});var lP={};x(lP,{default:()=>fse});var gse,fse,AP=_(()=>{gse=Object.freeze(JSON.parse(`{"displayName":"Vim Script","name":"viml","patterns":[{"include":"#comment"},{"include":"#constant"},{"include":"#entity"},{"include":"#keyword"},{"include":"#punctuation"},{"include":"#storage"},{"include":"#strings"},{"include":"#support"},{"include":"#variable"},{"include":"#syntax"},{"include":"#commands"},{"include":"#option"},{"include":"#map"}],"repository":{"commands":{"patterns":[{"match":"\\\\bcom(\\\\s|\\\\!)","name":"storage.other.command.viml"},{"match":"\\\\bau(\\\\s|\\\\!)","name":"storage.other.command.viml"},{"match":"-bang","name":"storage.other.command.bang.viml"},{"match":"-nargs=[*+0-9]+","name":"storage.other.command.args.viml"},{"match":"-complete=\\\\S+","name":"storage.other.command.completion.viml"},{"begin":"(aug(roup)?)","end":"(augroup\\\\sEND|$)","name":"support.function.augroup.viml"}]},"comment":{"patterns":[{"begin":"((\\\\s+)?\\"\\"\\")","end":"^(?!\\")","name":"comment.block.documentation.viml"},{"match":"^\\"\\\\svim:.*","name":"comment.block.modeline.viml"},{"begin":"(\\\\s+\\"\\\\s+)(?!\\")","end":"$","name":"comment.line.viml","patterns":[{"match":"\\\\{\\\\{\\\\{\\\\d?$","name":"comment.line.foldmarker.viml"},{"match":"\\\\}\\\\}\\\\}\\\\d?","name":"comment.line.foldmarker.viml"}]},{"begin":"^(\\\\s+)?\\"","end":"$","name":"comment.line.viml","patterns":[{"match":"\\\\{\\\\{\\\\{\\\\d?$","name":"comment.line.foldmarker.viml"},{"match":"\\\\}\\\\}\\\\}\\\\d?","name":"comment.line.foldmarker.viml"}]}]},"constant":{"patterns":[{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.viml"},{"match":"\\\\b([0-9]+)\\\\b","name":"constant.numeric.viml"}]},"entity":{"patterns":[{"match":"(([absg]\\\\:)?[a-zA-Z0-9_#.]{2,})\\\\b(?=\\\\()","name":"entity.name.function.viml"}]},"keyword":{"patterns":[{"match":"\\\\b(if|while|for|return|au(g|group)|else(if|)?|do|in)\\\\b","name":"keyword.control.viml"},{"match":"\\\\b(end|endif|endfor|endwhile)\\\\s|$","name":"keyword.control.viml"},{"match":"\\\\b(break|continue|try|catch|endtry|finally|finish|throw|range)\\\\b","name":"keyword.control.viml"},{"match":"\\\\b(fun|func|function|endfunction|endfunc)\\\\b","name":"keyword.function.viml"},{"match":"\\\\b(normal|silent)\\\\b","name":"keyword.other.viml"},{"include":"#operators"}]},"map":{"patterns":[{"begin":"(\\\\<)","beginCaptures":{"1":{"name":"punctuation.definition.map.viml"}},"end":"(\\\\>|\\\\s)","endCaptures":{"1":{"name":"punctuation.definition.map.viml"}},"patterns":[{"match":"(?<=:\\\\s)(.+)","name":"constant.character.map.rhs.viml"},{"match":"(?i:(bang|buffer|expr|nop|plug|sid|silent))","name":"constant.character.map.special.viml"},{"match":"(?i:([adcms]-\\\\w))","name":"constant.character.map.key.viml"},{"match":"(?i:(F[0-9]+))","name":"constant.character.map.key.fn.viml"},{"match":"(?i:(bs|bar|cr|del|down|esc|left|right|space|tab|up|leader))","name":"constant.character.map.viml"}]},{"match":"(\\\\b([cinostvx]?(nore)?map)\\\\b)","name":"storage.type.map.viml"}]},"operators":{"patterns":[{"match":"([#+?!=~\\\\\\\\])","name":"keyword.operator.viml"},{"match":" ([:\\\\-.]|[&|]{2})( |$)","name":"keyword.operator.viml"},{"match":"([.]{3})","name":"keyword.operator.viml"},{"match":"( [<>] )","name":"keyword.operator.viml"},{"match":"(>=)","name":"keyword.operator.viml"}]},"option":{"patterns":[{"match":"&?\\\\b(al|aleph|anti|antialias|arab|arabic|arshape|arabicshape|ari|allowrevins|akm|altkeymap|ambw|ambiwidth|acd|autochdir|ai|autoindent|ar|autoread|aw|autowrite|awa|autowriteall|bg|background|bs|backspace|bk|backup|bkc|backupcopy|bdir|backupdir|bex|backupext|bsk|backupskip|bdlay|balloondelay|beval|ballooneval|bevalterm|balloonevalterm|bexpr|balloonexpr|bo|belloff|bin|binary|bomb|brk|breakat|bri|breakindent|briopt|breakindentopt|bsdir|browsedir|bh|bufhidden|bl|buflisted|bt|buftype|cmp|casemap|cd|cdpath|cedit|ccv|charconvert|cin|cindent|cink|cinkeys|cino|cinoptions|cinw|cinwords|cb|clipboard|ch|cmdheight|cwh|cmdwinheight|cc|colorcolumn|co|columns|com|comments|cms|commentstring|cp|compatible|cpt|complete|cocu|concealcursor|cole|conceallevel|cfu|completefunc|cot|completeopt|cf|confirm|ci|copyindent|cpo|cpoptions|cm|cryptmethod|cspc|cscopepathcomp|csprg|cscopeprg|csqf|cscopequickfix|csre|cscoperelative|cst|cscopetag|csto|cscopetagorder|csverb|cscopeverbose|crb|cursorbind|cuc|cursorcolumn|cul|cursorline|debug|def|define|deco|delcombine|dict|dictionary|diff|dex|diffexpr|dip|diffopt|dg|digraph|dir|directory|dy|display|ead|eadirection|ed|edcompatible|emo|emoji|enc|encoding|eol|endofline|ea|equalalways|ep|equalprg|eb|errorbells|ef|errorfile|efm|errorformat|ek|esckeys|ei|eventignore|et|expandtab|ex|exrc|fenc|fileencoding|fencs|fileencodings|ff|fileformat|ffs|fileformats|fic|fileignorecase|ft|filetype|fcs|fillchars|fixeol|fixendofline|fk|fkmap|fcl|foldclose|fdc|foldcolumn|fen|foldenable|fde|foldexpr|fdi|foldignore|fdl|foldlevel|fdls|foldlevelstart|fmr|foldmarker|fdm|foldmethod|fml|foldminlines|fdn|foldnestmax|fdo|foldopen|fdt|foldtext|fex|formatexpr|fo|formatoptions|flp|formatlistpat|fp|formatprg|fs|fsync|gd|gdefault|gfm|grepformat|gp|grepprg|gcr|guicursor|gfn|guifont|gfs|guifontset|gfw|guifontwide|ghr|guiheadroom|go|guioptions|guipty|gtl|guitablabel|gtt|guitabtooltip|hf|helpfile|hh|helpheight|hlg|helplang|hid|hidden|hl|highlight|hi|history|hk|hkmap|hkp|hkmapp|hls|hlsearch|icon|iconstring|ic|ignorecase|imaf|imactivatefunc|imak|imactivatekey|imc|imcmdline|imd|imdisable|imi|iminsert|ims|imsearch|imsf|imstatusfunc|imst|imstyle|inc|include|inex|includeexpr|is|incsearch|inde|indentexpr|indk|indentkeys|inf|infercase|im|insertmode|isf|isfname|isi|isident|isk|iskeyword|isp|isprint|js|joinspaces|key|kmp|keymap|km|keymodel|kp|keywordprg|lmap|langmap|lm|langmenu|lnr|langnoremap|lrm|langremap|ls|laststatus|lz|lazyredraw|lbr|linebreak|lines|lsp|linespace|lisp|lw|lispwords|list|lcs|listchars|lpl|loadplugins|luadll|macatsui|magic|mef|makeef|menc|makeencoding|mp|makeprg|mps|matchpairs|mat|matchtime|mco|maxcombine|mfd|maxfuncdepth|mmd|maxmapdepth|mm|maxmem|mmp|maxmempattern|mmt|maxmemtot|mis|menuitems|msm|mkspellmem|ml|modeline|mls|modelines|ma|modifiable|mod|modified|more|mouse|mousef|mousefocus|mh|mousehide|mousem|mousemodel|mouses|mouseshape|mouset|mousetime|mzschemedll|mzschemegcdll|mzq|mzquantum|nf|nrformats|nu|number|nuw|numberwidth|ofu|omnifunc|odev|opendevice|opfunc|operatorfunc|pp|packpath|para|paragraphs|paste|pt|pastetoggle|pex|patchexpr|pm|patchmode|pa|path|perldll|pi|preserveindent|pvh|previewheight|pvw|previewwindow|pdev|printdevice|penc|printencoding|pexpr|printexpr|pfn|printfont|pheader|printheader|pmbcs|printmbcharset|pmbfn|printmbfont|popt|printoptions|prompt|ph|pumheight|pythonthreedll|pythondll|pyx|pyxversion|qe|quoteescape|ro|readonly|rdt|redrawtime|re|regexpengine|rnu|relativenumber|remap|rop|renderoptions|report|rs|restorescreen|ri|revins|rl|rightleft|rlc|rightleftcmd|rubydll|ru|ruler|ruf|rulerformat|rtp|runtimepath|scr|scroll|scb|scrollbind|sj|scrolljump|so|scrolloff|sbo|scrollopt|sect|sections|secure|sel|selection|slm|selectmode|ssop|sessionoptions|sh|shell|shcf|shellcmdflag|sp|shellpipe|shq|shellquote|srr|shellredir|ssl|shellslash|stmp|shelltemp|st|shelltype|sxq|shellxquote|sxe|shellxescape|sr|shiftround|sw|shiftwidth|shm|shortmess|sn|shortname|sbr|showbreak|sc|showcmd|sft|showfulltag|sm|showmatch|smd|showmode|stal|showtabline|ss|sidescroll|siso|sidescrolloff|scl|signcolumn|scs|smartcase|si|smartindent|sta|smarttab|sts|softtabstop|spell|spc|spellcapcheck|spf|spellfile|spl|spelllang|sps|spellsuggest|sb|splitbelow|spr|splitright|sol|startofline|stl|statusline|su|suffixes|sua|suffixesadd|swf|swapfile|sws|swapsync|swb|switchbuf|smc|synmaxcol|syn|syntax|tal|tabline|tpm|tabpagemax|ts|tabstop|tbs|tagbsearch|tc|tagcase|tl|taglength|tr|tagrelative|tag|tags|tgst|tagstack|tcldll|term|tbidi|termbidi|tenc|termencoding|tgc|termguicolors|tk|termkey|tms|termsize|terse|ta|textauto|tx|textmode|tw|textwidth|tsr|thesaurus|top|tildeop|to|timeout|tm|timeoutlen|title|titlelen|titleold|titlestring|tb|toolbar|tbis|toolbariconsize|ttimeout|ttm|ttimeoutlen|tbi|ttybuiltin|tf|ttyfast|ttym|ttymouse|tsl|ttyscroll|tty|ttytype|udir|undodir|udf|undofile|ul|undolevels|ur|undoreload|uc|updatecount|ut|updatetime|vbs|verbose|vfile|verbosefile|vdir|viewdir|vop|viewoptions|vi|viminfo|vif|viminfofile|ve|virtualedit|vb|visualbell|warn|wiv|weirdinvert|ww|whichwrap|wc|wildchar|wcm|wildcharm|wig|wildignore|wic|wildignorecase|wmnu|wildmenu|wim|wildmode|wop|wildoptions|wak|winaltkeys|wi|window|wh|winheight|wfh|winfixheight|wfw|winfixwidth|wmh|winminheight|wmw|winminwidth|winptydll|wiw|winwidth|wrap|wm|wrapmargin|ws|wrapscan|write|wa|writeany|wb|writebackup|wd|writedelay)\\\\b","name":"support.type.option.viml"},{"match":"&?\\\\b(aleph|allowrevins|altkeymap|ambiwidth|autochdir|arabic|arabicshape|autoindent|autoread|autowrite|autowriteall|background|backspace|backup|backupcopy|backupdir|backupext|backupskip|balloondelay|ballooneval|balloonexpr|belloff|binary|bomb|breakat|breakindent|breakindentopt|browsedir|bufhidden|buflisted|buftype|casemap|cdpath|cedit|charconvert|cindent|cinkeys|cinoptions|cinwords|clipboard|cmdheight|cmdwinheight|colorcolumn|columns|comments|commentstring|complete|completefunc|completeopt|concealcursor|conceallevel|confirm|copyindent|cpoptions|cscopepathcomp|cscopeprg|cscopequickfix|cscoperelative|cscopetag|cscopetagorder|cscopeverbose|cursorbind|cursorcolumn|cursorline|debug|define|delcombine|dictionary|diff|diffexpr|diffopt|digraph|directory|display|eadirection|encoding|endofline|equalalways|equalprg|errorbells|errorfile|errorformat|eventignore|expandtab|exrc|fileencoding|fileencodings|fileformat|fileformats|fileignorecase|filetype|fillchars|fixendofline|fkmap|foldclose|foldcolumn|foldenable|foldexpr|foldignore|foldlevel|foldlevelstart|foldmarker|foldmethod|foldminlines|foldnestmax|foldopen|foldtext|formatexpr|formatlistpat|formatoptions|formatprg|fsync|gdefault|grepformat|grepprg|guicursor|guifont|guifontset|guifontwide|guioptions|guitablabel|guitabtooltip|helpfile|helpheight|helplang|hidden|hlsearch|history|hkmap|hkmapp|icon|iconstring|ignorecase|imcmdline|imdisable|iminsert|imsearch|include|includeexpr|incsearch|indentexpr|indentkeys|infercase|insertmode|isfname|isident|iskeyword|isprint|joinspaces|keymap|keymodel|keywordprg|langmap|langmenu|langremap|laststatus|lazyredraw|linebreak|lines|linespace|lisp|lispwords|list|listchars|loadplugins|magic|makeef|makeprg|matchpairs|matchtime|maxcombine|maxfuncdepth|maxmapdepth|maxmem|maxmempattern|maxmemtot|menuitems|mkspellmem|modeline|modelines|modifiable|modified|more|mouse|mousefocus|mousehide|mousemodel|mouseshape|mousetime|nrformats|number|numberwidth|omnifunc|opendevice|operatorfunc|packpath|paragraphs|paste|pastetoggle|patchexpr|patchmode|path|perldll|preserveindent|previewheight|previewwindow|printdevice|printencoding|printexpr|printfont|printheader|printmbcharset|printmbfont|printoptions|prompt|pumheight|pythondll|pythonthreedll|quoteescape|readonly|redrawtime|regexpengine|relativenumber|remap|report|revins|rightleft|rightleftcmd|rubydll|ruler|rulerformat|runtimepath|scroll|scrollbind|scrolljump|scrolloff|scrollopt|sections|secure|selection|selectmode|sessionoptions|shada|shell|shellcmdflag|shellpipe|shellquote|shellredir|shellslash|shelltemp|shellxescape|shellxquote|shiftround|shiftwidth|shortmess|showbreak|showcmd|showfulltag|showmatch|showmode|showtabline|sidescroll|sidescrolloff|signcolumn|smartcase|smartindent|smarttab|softtabstop|spell|spellcapcheck|spellfile|spelllang|spellsuggest|splitbelow|splitright|startofline|statusline|suffixes|suffixesadd|swapfile|switchbuf|synmaxcol|syntax|tabline|tabpagemax|tabstop|tagbsearch|tagcase|taglength|tagrelative|tags|tagstack|term|termbidi|terse|textwidth|thesaurus|tildeop|timeout|timeoutlen|title|titlelen|titleold|titlestring|ttimeout|ttimeoutlen|ttytype|undodir|undofile|undolevels|undoreload|updatecount|updatetime|verbose|verbosefile|viewdir|viewoptions|virtualedit|visualbell|warn|whichwrap|wildchar|wildcharm|wildignore|wildignorecase|wildmenu|wildmode|wildoptions|winaltkeys|window|winheight|winfixheight|winfixwidth|winminheight|winminwidth|winwidth|wrap|wrapmargin|wrapscan|write|writeany|writebackup|writedelay)\\\\b","name":"support.type.option.viml"},{"match":"&?\\\\b(al|ari|akm|ambw|acd|arab|arshape|ai|ar|aw|awa|bg|bs|bk|bkc|bdir|bex|bsk|bdlay|beval|bexpr|bo|bin|bomb|brk|bri|briopt|bsdir|bh|bl|bt|cmp|cd|cedit|ccv|cin|cink|cino|cinw|cb|ch|cwh|cc|co|com|cms|cpt|cfu|cot|cocu|cole|cf|ci|cpo|cspc|csprg|csqf|csre|cst|csto|cpo|crb|cuc|cul|debug|def|deco|dict|diff|dex|dip|dg|dir|dy|ead|enc|eol|ea|ep|eb|ef|efm|ei|et|ex|fenc|fencs|ff|ffs|fic|ft|fcs|fixeol|fk|fcl|fdc|fen|fde|fdi|fdl|fdls|fmr|fdm|fml|fdn|fdo|fdt|fex|flp|fo|fp|fs|gd|gfm|gp|gcr|gfn|gfs|gfw|go|gtl|gtt|hf|hh|hlg|hid|hls|hi|hk|hkp|icon|iconstring|ic|imc|imd|imi|ims|inc|inex|is|inde|indk|inf|im|isf|isi|isk|isp|js|kmp|km|kp|lmap|lm|lrm|ls|lz|lbr|lines|lsp|lisp|lw|list|lcs|lpl|magic|mef|mp|mps|mat|mco|mfd|mmd|mm|mmp|mmt|mis|msm|ml|mls|ma|mod|more|mouse|mousef|mh|mousem|mouses|mouset|nf|nu|nuw|ofu|odev|opfunc|pp|para|paste|pt|pex|pm|pa|perldll|pi|pvh|pvw|pdev|penc|pexpr|pfn|pheader|pmbcs|pmbfn|popt|prompt|ph|pythondll|pythonthreedlll|qe|ro|rdt|re|rnu|remap|report|ri|rl|rlc|rubydll|ru|ruf|rtp|scr|scb|sj|so|sbo|sect|secure|sel|slm|ssop|sd|sh|shcf|sp|shq|srr|ssl|stmp|sxe|sxq|sr|sw|shm|sbr|sc|sft|sm|smd|stal|ss|siso|scl|scs|si|sta|sts|spell|spc|spf|spl|sps|sb|spr|sol|stl|su|sua|swf|swb|smc|syn|tal|tpm|ts|tbs|tc|tl|tr|tag|tgst|term|tbidi|terse|tw|tsr|top|to|tm|title|titlelen|titleold|titlestring|ttimeout|ttm|tty|udir|udf|ul|ur|uc|ut|vbs|vfile|vdir|vop|ve|vb|warn|ww|wc|wcm|wig|wic|wmnu|wim|wop|wak|wi|wh|wfh|wfw|wmh|wmw|wiw|wrap|wm|ws|write|wa|wb|wd)\\\\b","name":"support.type.option.shortname.viml"},{"match":"\\\\b(noanti|noantialias|noarab|noarabic|noarshape|noarabicshape|noari|noallowrevins|noakm|noaltkeymap|noacd|noautochdir|noai|noautoindent|noar|noautoread|noaw|noautowrite|noawa|noautowriteall|nobk|nobackup|nobeval|noballooneval|nobevalterm|noballoonevalterm|nobin|nobinary|nobomb|nobri|nobreakindent|nobl|nobuflisted|nocin|nocindent|nocp|nocompatible|nocf|noconfirm|noci|nocopyindent|nocsre|nocscoperelative|nocst|nocscopetag|nocsverb|nocscopeverbose|nocrb|nocursorbind|nocuc|nocursorcolumn|nocul|nocursorline|nodeco|nodelcombine|nodiff|nodg|nodigraph|noed|noedcompatible|noemo|noemoji|noeol|noendofline|noea|noequalalways|noeb|noerrorbells|noek|noesckeys|noet|noexpandtab|noex|noexrc|nofic|nofileignorecase|nofixeol|nofixendofline|nofk|nofkmap|nofen|nofoldenable|nofs|nofsync|nogd|nogdefault|noguipty|nohid|nohidden|nohk|nohkmap|nohkp|nohkmapp|nohls|nohlsearch|noicon|noic|noignorecase|noimc|noimcmdline|noimd|noimdisable|nois|noincsearch|noinf|noinfercase|noim|noinsertmode|nojs|nojoinspaces|nolnr|nolangnoremap|nolrm|nolangremap|nolz|nolazyredraw|nolbr|nolinebreak|nolisp|nolist|nolpl|noloadplugins|nomacatsui|nomagic|noml|nomodeline|noma|nomodifiable|nomod|nomodified|nomore|nomousef|nomousefocus|nomh|nomousehide|nonu|nonumber|noodev|noopendevice|nopaste|nopi|nopreserveindent|nopvw|nopreviewwindow|noprompt|noro|noreadonly|nornu|norelativenumber|nors|norestorescreen|nori|norevins|norl|norightleft|noru|noruler|noscb|noscrollbind|nosecure|nossl|noshellslash|nostmp|noshelltemp|nosr|noshiftround|nosn|noshortname|nosc|noshowcmd|nosft|noshowfulltag|nosm|noshowmatch|nosmd|noshowmode|noscs|nosmartcase|nosi|nosmartindent|nosta|nosmarttab|nospell|nosb|nosplitbelow|nospr|nosplitright|nosol|nostartofline|noswf|noswapfile|notbs|notagbsearch|notr|notagrelative|notgst|notagstack|notbidi|notermbidi|notgc|notermguicolors|noterse|nota|notextauto|notx|notextmode|notop|notildeop|noto|notimeout|notitle|nottimeout|notbi|nottybuiltin|notf|nottyfast|noudf|noundofile|novb|novisualbell|nowarn|nowiv|noweirdinvert|nowic|nowildignorecase|nowmnu|nowildmenu|nowfh|nowinfixheight|nowfw|nowinfixwidth|nowrapscan|nowrap|nows|nowrite|nowa|nowriteany|nowb|nowritebackup)\\\\b","name":"support.type.option.off.viml"}]},"punctuation":{"patterns":[{"match":"([()])","name":"punctuation.parens.viml"},{"match":"([,])","name":"punctuation.comma.viml"}]},"storage":{"patterns":[{"match":"\\\\b(call|let|unlet)\\\\b","name":"storage.viml"},{"match":"\\\\b(abort|autocmd)\\\\b","name":"storage.viml"},{"match":"\\\\b(set(l|local)?)\\\\b","name":"storage.viml"},{"match":"\\\\b(com(mand)?)\\\\b","name":"storage.viml"},{"match":"\\\\b(color(scheme)?)\\\\b","name":"storage.viml"},{"match":"\\\\b(Plug|Plugin)\\\\b","name":"storage.plugin.viml"}]},"strings":{"patterns":[{"begin":"\\"","end":"(\\"|$)","name":"string.quoted.double.viml","patterns":[]},{"begin":"'","end":"('|$)","name":"string.quoted.single.viml","patterns":[]},{"match":"/(\\\\\\\\\\\\\\\\|\\\\\\\\/|[^\\\\n/])*/","name":"string.regexp.viml"}]},"support":{"patterns":[{"match":"(add|call|delete|empty|extend|get|has|isdirectory|join|printf)(?=\\\\()","name":"support.function.viml"},{"match":"\\\\b(echo(m|hl)?|exe(cute)?|redir|redraw|sleep|so(urce)?|wincmd|setf)\\\\b","name":"support.function.viml"},{"match":"(v\\\\:(beval_col|beval_bufnr|beval_lnum|beval_text|beval_winnr|char|charconvert_from|charconvert_to|cmdarg|cmdbang|count|count1|ctype|dying|errmsg|exception|fcs_reason|fcs_choice|fname_in|fname_out|fname_new|fname_diff|folddashes|foldlevel|foldend|foldstart|insertmode|key|lang|lc_time|lnum|mouse_win|mouse_lnum|mouse_col|oldfiles|operator|prevcount|profiling|progname|register|scrollstart|servername|searchforward|shell_error|statusmsg|swapname|swapchoice|swapcommand|termresponse|this_session|throwpoint|val|version|warningmsg|windowid))","name":"support.type.builtin.vim-variable.viml"},{"match":"(&(cpo|isk|omnifunc|paste|previewwindow|rtp|tags|term|wrap))","name":"support.type.builtin.viml"},{"match":"(&(shell(cmdflag|redir)?))","name":"support.type.builtin.viml"},{"match":"\\\\<args\\\\>","name":"support.variable.args.viml"},{"match":"\\\\b(None|ErrorMsg|WarningMsg)\\\\b","name":"support.type.syntax.viml"},{"match":"\\\\b(BufNewFile|BufReadPre|BufRead|BufReadPost|BufReadCmd|FileReadPre|FileReadPost|FileReadCmd|FilterReadPre|FilterReadPost|StdinReadPre|StdinReadPost|BufWrite|BufWritePre|BufWritePost|BufWriteCmd|FileWritePre|FileWritePost|FileWriteCmd|FileAppendPre|FileAppendPost|FileAppendCmd|FilterWritePre|FilterWritePost|BufAdd|BufCreate|BufDelete|BufWipeout|BufFilePre|BufFilePost|BufEnter|BufLeave|BufWinEnter|BufWinLeave|BufUnload|BufHidden|BufNew|SwapExists|TermOpen|TermClose|FileType|Syntax|OptionSet|VimEnter|GUIEnter|GUIFailed|TermResponse|QuitPre|VimLeavePre|VimLeave|DirChanged|FileChangedShell|FileChangedShellPost|FileChangedRO|ShellCmdPost|ShellFilterPost|CmdUndefined|FuncUndefined|SpellFileMissing|SourcePre|SourceCmd|VimResized|FocusGained|FocusLost|CursorHold|CursorHoldI|CursorMoved|CursorMovedI|WinNew|WinEnter|WinLeave|TabEnter|TabLeave|TabNew|TabNewEntered|TabClosed|CmdlineEnter|CmdlineLeave|CmdwinEnter|CmdwinLeave|InsertEnter|InsertChange|InsertLeave|InsertCharPre|TextYankPost|TextChanged|TextChangedI|ColorScheme|RemoteReply|QuickFixCmdPre|QuickFixCmdPost|SessionLoadPost|MenuPopup|CompleteDone|User)\\\\b","name":"support.type.event.viml"},{"match":"\\\\b(Comment|Constant|String|Character|Number|Boolean|Float|Identifier|Function|Statement|Conditional|Repeat|Label|Operator|Keyword|Exception|PreProc|Include|Define|Macro|PreCondit|Type|StorageClass|Structure|Typedef|Special|SpecialChar|Tag|Delimiter|SpecialComment|Debug|Underlined|Ignore|Error|Todo)\\\\b","name":"support.type.syntax-group.viml"}]},"syntax":{"patterns":[{"match":"syn(tax)? case (ignore|match)","name":"keyword.control.syntax.viml"},{"match":"syn(tax)? (clear|enable|include|off|on|manual|sync)","name":"keyword.control.syntax.viml"},{"match":"\\\\b(contained|display|excludenl|fold|keepend|oneline|skipnl|skipwhite|transparent)\\\\b","name":"keyword.other.syntax.viml"},{"match":"\\\\b(add|containedin|contains|matchgroup|nextgroup)\\\\=","name":"keyword.other.syntax.viml"},{"captures":{"1":{"name":"keyword.other.syntax-range.viml"},"3":{"name":"string.regexp.viml"}},"match":"((start|skip|end)\\\\=)(\\\\+\\\\S+\\\\+\\\\s)?"},{"captures":{"0":{"name":"support.type.syntax.viml"},"1":{"name":"storage.syntax.viml"},"3":{"name":"variable.other.syntax-scope.viml"},"4":{"name":"storage.modifier.syntax.viml"}},"match":"(syn|syntax)\\\\s+(cluster|keyword|match|region)(\\\\s+\\\\w+\\\\s+)(contained)?","patterns":[]},{"captures":{"1":{"name":"storage.highlight.viml"},"2":{"name":"storage.modifier.syntax.viml"},"3":{"name":"support.function.highlight.viml"},"4":{"name":"variable.other.viml"},"5":{"name":"variable.other.viml"}},"match":"(hi|highlight)(?:\\\\s+)(def|default)(?:\\\\s+)(link)(?:\\\\s+)(\\\\w+)(?:\\\\s+)(\\\\w+)","patterns":[]}]},"variable":{"patterns":[{"match":"https?://\\\\S+","name":"variable.other.link.viml"},{"match":"(?<=\\\\()([a-zA-Z]+)(?=\\\\))","name":"variable.parameter.viml"},{"match":"\\\\b([absgl]:[a-zA-Z0-9_.#]+)\\\\b(?!\\\\()","name":"variable.other.viml"}]}},"scopeName":"source.viml","aliases":["vim","vimscript"]}`)),fse=[gse]});var bse,dP,uP=_(()=>{bse=Object.freeze(JSON.parse('{"fileTypes":[],"injectTo":["text.html.markdown"],"injectionSelector":"L:text.html.markdown","name":"markdown-vue","patterns":[{"include":"#vue-code-block"}],"repository":{"vue-code-block":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(vue)((\\\\s+|:|,|\\\\{|\\\\?)[^`~]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown","patterns":[]}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"include":"source.vue"}]}},"scopeName":"markdown.vue.codeblock"}')),dP=[bse]});var hse,pP,mP=_(()=>{hse=Object.freeze(JSON.parse('{"fileTypes":[],"injectTo":["source.vue","text.html.markdown","text.html.derivative","text.pug"],"injectionSelector":"L:meta.tag -meta.attribute -meta.ng-binding -entity.name.tag.pug -attribute_value -source.tsx -source.js.jsx, L:meta.element -meta.attribute","name":"vue-directives","patterns":[{"include":"source.vue#vue-directives"}],"scopeName":"vue.directives"}')),pP=[hse]});var yse,gP,fP=_(()=>{yse=Object.freeze(JSON.parse('{"fileTypes":[],"injectTo":["source.vue","text.html.markdown","text.html.derivative","text.pug"],"injectionSelector":"L:text.pug -comment -string.comment, L:text.html.derivative -comment.block, L:text.html.markdown -comment.block","name":"vue-interpolations","patterns":[{"include":"source.vue#vue-interpolations"}],"scopeName":"vue.interpolations"}')),gP=[yse]});var wse,bP,hP=_(()=>{Qe();wse=Object.freeze(JSON.parse(`{"fileTypes":[],"injectTo":["source.vue"],"injectionSelector":"L:source.css -comment, L:source.postcss -comment, L:source.sass -comment, L:source.stylus -comment","name":"vue-sfc-style-variable-injection","patterns":[{"include":"#vue-sfc-style-variable-injection"}],"repository":{"vue-sfc-style-variable-injection":{"begin":"\\\\b(v-bind)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function"}},"end":"\\\\)","name":"vue.sfc.style.variable.injection.v-bind","patterns":[{"begin":"('|\\")","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"}},"end":"(\\\\1)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"source.ts.embedded.html.vue","patterns":[{"include":"source.js"}]},{"include":"source.js"}]}},"scopeName":"vue.sfc.style.variable.injection","embeddedLangs":["javascript"]}`)),bP=[...J,wse]});var yP={};x(yP,{default:()=>ix});var kse,ix,ox=_(()=>{Ye();rt();Qe();hn();zr();Ec();uP();mP();fP();hP();kse=Object.freeze(JSON.parse(`{"displayName":"Vue","name":"vue","patterns":[{"include":"#vue-comments"},{"include":"text.html.basic#comment"},{"include":"#self-closing-tag"},{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}},"patterns":[{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)md\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"text.html.markdown","patterns":[{"include":"text.html.markdown"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)html\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"text.html.derivative","patterns":[{"include":"#html-stuff"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)pug\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"text.pug","patterns":[{"include":"text.pug"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)stylus\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.stylus","patterns":[{"include":"source.stylus"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)postcss\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.postcss","patterns":[{"include":"source.postcss"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)sass\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.sass","patterns":[{"include":"source.sass"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)css\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.css","patterns":[{"include":"source.css"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)scss\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.css.scss","patterns":[{"include":"source.css.scss"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)less\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.css.less","patterns":[{"include":"source.css.less"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)js\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.js","patterns":[{"include":"source.js"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)ts\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.ts","patterns":[{"include":"source.ts"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)jsx\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.js.jsx","patterns":[{"include":"source.js.jsx"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)tsx\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.tsx","patterns":[{"include":"source.tsx"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)coffee\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.coffee","patterns":[{"include":"source.coffee"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)json\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.json","patterns":[{"include":"source.json"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)jsonc\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.json.comments","patterns":[{"include":"source.json.comments"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)json5\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.json5","patterns":[{"include":"source.json5"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)yaml\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.yaml","patterns":[{"include":"source.yaml"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)toml\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.toml","patterns":[{"include":"source.toml"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)(gql|graphql)\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.graphql","patterns":[{"include":"source.graphql"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)vue\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.vue","patterns":[{"include":"source.vue"}]}]},{"begin":"(template)\\\\b","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/template\\\\b)","name":"text.html.derivative","patterns":[{"include":"#html-stuff"}]}]},{"begin":"(script)\\\\b","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/script\\\\b)","name":"source.js","patterns":[{"include":"source.js"}]}]},{"begin":"(style)\\\\b","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/style\\\\b)","name":"source.css","patterns":[{"include":"source.css"}]}]},{"begin":"([a-zA-Z0-9:-]+)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"(</)(\\\\1)\\\\s*(?=>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"text"}]}]}],"repository":{"html-stuff":{"patterns":[{"include":"#template-tag"},{"include":"text.html.derivative"},{"include":"text.html.basic"}]},"self-closing-tag":{"begin":"(<)([a-zA-Z0-9:-]+)(?=([^>]+/>))","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"end":"(/>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}},"name":"self-closing-tag","patterns":[{"include":"#tag-stuff"}]},"tag-stuff":{"begin":"\\\\G","end":"(?=/>)|(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}},"name":"meta.tag-stuff","patterns":[{"include":"#vue-directives"},{"include":"text.html.basic#attribute"}]},"template-tag":{"patterns":[{"include":"#template-tag-1"},{"include":"#template-tag-2"}]},"template-tag-1":{"begin":"(<)(template)\\\\b(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"},"3":{"name":"punctuation.definition.tag.end.html.vue"}},"end":"(/?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}},"name":"meta.template-tag.start","patterns":[{"begin":"\\\\G","end":"(?=/>)|((</)(template)\\\\b)","endCaptures":{"2":{"name":"punctuation.definition.tag.begin.html.vue"},"3":{"name":"entity.name.tag.$3.html.vue"}},"name":"meta.template-tag.end","patterns":[{"include":"#html-stuff"}]}]},"template-tag-2":{"begin":"(<)(template)\\\\b","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"end":"(/?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}},"name":"meta.template-tag.start","patterns":[{"begin":"\\\\G","end":"(?=/>)|((</)(template)\\\\b)","endCaptures":{"2":{"name":"punctuation.definition.tag.begin.html.vue"},"3":{"name":"entity.name.tag.$3.html.vue"}},"name":"meta.template-tag.end","patterns":[{"include":"#tag-stuff"},{"include":"#html-stuff"}]}]},"vue-comments":{"patterns":[{"include":"#vue-comments-key-value"}]},"vue-comments-key-value":{"begin":"(<!--)\\\\s*(@)([\\\\w$]+)(?=\\\\s)","beginCaptures":{"1":{"name":"punctuation.definition.comment.vue"},"2":{"name":"punctuation.definition.block.tag.comment.vue"},"3":{"name":"storage.type.class.comment.vue"}},"end":"(-->)","endCaptures":{"1":{"name":"punctuation.definition.comment.vue"}},"name":"comment.block.vue","patterns":[{"include":"source.json#value"}]},"vue-directives":{"patterns":[{"include":"#vue-directives-control"},{"include":"#vue-directives-style-attr"},{"include":"#vue-directives-original"},{"include":"#vue-directives-generic-attr"}]},"vue-directives-control":{"begin":"(v-for)|(v-if|v-else-if|v-else)","captures":{"1":{"name":"keyword.control.loop.vue"},"2":{"name":"keyword.control.conditional.vue"}},"end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.directive.control.vue","patterns":[{"include":"#vue-directives-expression"}]},"vue-directives-expression":{"patterns":[{"begin":"(=)\\\\s*('|\\"|\`)","beginCaptures":{"1":{"name":"punctuation.separator.key-value.html.vue"},"2":{"name":"punctuation.definition.string.begin.html.vue"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.html.vue"}},"patterns":[{"begin":"(?<=('|\\"|\`))","end":"(?=\\\\1)","name":"source.ts.embedded.html.vue","patterns":[{"include":"source.ts#expression"}]}]},{"begin":"(=)\\\\s*(?=[^'\\"\`])","beginCaptures":{"1":{"name":"punctuation.separator.key-value.html.vue"}},"end":"(?=(\\\\s|>|\\\\/>))","patterns":[{"begin":"(?=[^'\\"\`])","end":"(?=(\\\\s|>|\\\\/>))","name":"source.ts.embedded.html.vue","patterns":[{"include":"source.ts#expression"}]}]}]},"vue-directives-generic-attr":{"begin":"\\\\b(generic)\\\\s*(=)","captures":{"1":{"name":"entity.other.attribute-name.html.vue"},"2":{"name":"punctuation.separator.key-value.html.vue"}},"end":"(?<='|\\")","name":"meta.attribute.generic.vue","patterns":[{"begin":"('|\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.html.vue"}},"comment":"https://github.com/microsoft/vscode/blob/fd4346210f59135fad81a8b8c4cea7bf5a9ca6b4/extensions/typescript-basics/syntaxes/TypeScript.tmLanguage.json#L4002-L4020","end":"(\\\\1)","endCaptures":{"1":{"name":"punctuation.definition.string.end.html.vue"}},"name":"meta.type.parameters.vue","patterns":[{"include":"source.ts#comment"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends|in|out)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},{"include":"source.ts#type"},{"include":"source.ts#punctuation-comma"},{"match":"(=)(?!>)","name":"keyword.operator.assignment.ts"}]}]},"vue-directives-original":{"begin":"(?:(?:(v-[\\\\w-]+)(:)?)|([:\\\\.])|(@)|(#))(?:(?:(\\\\[)([^\\\\]]*)(\\\\]))|([\\\\w-]+))?","beginCaptures":{"1":{"name":"entity.other.attribute-name.html.vue"},"2":{"name":"punctuation.separator.key-value.html.vue"},"3":{"name":"punctuation.attribute-shorthand.bind.html.vue"},"4":{"name":"punctuation.attribute-shorthand.event.html.vue"},"5":{"name":"punctuation.attribute-shorthand.slot.html.vue"},"6":{"name":"punctuation.separator.key-value.html.vue"},"7":{"name":"source.ts.embedded.html.vue","patterns":[{"include":"source.ts#expression"}]},"8":{"name":"punctuation.separator.key-value.html.vue"},"9":{"name":"entity.other.attribute-name.html.vue"}},"end":"(?=\\\\s*[^=\\\\s])","endCaptures":{"1":{"name":"punctuation.definition.string.end.html.vue"}},"name":"meta.attribute.directive.vue","patterns":[{"1":{"name":"punctuation.separator.key-value.html.vue"},"2":{"name":"entity.other.attribute-name.html.vue"},"match":"(\\\\.)([\\\\w-]*)"},{"include":"#vue-directives-expression"}]},"vue-directives-style-attr":{"begin":"\\\\b(style)\\\\s*(=)","captures":{"1":{"name":"entity.other.attribute-name.html.vue"},"2":{"name":"punctuation.separator.key-value.html.vue"}},"end":"(?<='|\\")","name":"meta.attribute.style.vue","patterns":[{"begin":"('|\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.html.vue"}},"comment":"Copy from source.css#rule-list-innards","end":"(\\\\1)","endCaptures":{"1":{"name":"punctuation.definition.string.end.html.vue"}},"name":"source.css.embedded.html.vue","patterns":[{"include":"source.css#comment-block"},{"include":"source.css#escapes"},{"include":"source.css#font-features"},{"match":"(?<![\\\\w-])--(?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*","name":"variable.css"},{"begin":"(?<![-a-zA-Z])(?=[-a-zA-Z])","end":"$|(?![-a-zA-Z])","name":"meta.property-name.css","patterns":[{"include":"source.css#property-names"}]},{"begin":"(:)\\\\s*","beginCaptures":{"1":{"name":"punctuation.separator.key-value.css"}},"comment":"Modify end to fix #199. TODO: handle ' character.","contentName":"meta.property-value.css","end":"\\\\s*(;)|\\\\s*(?='|\\")","endCaptures":{"1":{"name":"punctuation.terminator.rule.css"}},"patterns":[{"include":"source.css#comment-block"},{"include":"source.css#property-values"}]},{"match":";","name":"punctuation.terminator.rule.css"}]}]},"vue-interpolations":{"patterns":[{"begin":"(\\\\{\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.interpolation.begin.html.vue"}},"end":"(\\\\}\\\\})","endCaptures":{"1":{"name":"punctuation.definition.interpolation.end.html.vue"}},"name":"expression.embedded.vue","patterns":[{"begin":"\\\\G","end":"(?=\\\\}\\\\})","name":"source.ts.embedded.html.vue","patterns":[{"include":"source.ts#expression"}]}]}]}},"scopeName":"source.vue","embeddedLangs":["html","css","javascript","typescript","json","html-derivative","markdown-vue","vue-directives","vue-interpolations","vue-sfc-style-variable-injection"],"embeddedLangsLazy":["markdown","pug","stylus","sass","scss","less","jsx","tsx","coffee","jsonc","json5","yaml","toml","graphql"]}`)),ix=[...ce,...ue,...J,...Ge,...bn,...Hr,...dP,...pP,...gP,...bP,kse]});var wP={};x(wP,{default:()=>_se});var Cse,_se,kP=_(()=>{ox();Qe();Cse=Object.freeze(JSON.parse(`{"displayName":"Vue HTML","fileTypes":[],"name":"vue-html","patterns":[{"include":"source.vue#vue-interpolations"},{"begin":"(<)([A-Z][a-zA-Z0-9:-]*)(?=[^>]*></\\\\2>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"support.class.component.html"}},"end":"(>)(<)(/)(\\\\2)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"},"2":{"name":"punctuation.definition.tag.begin.html meta.scope.between-tag-pair.html"},"3":{"name":"punctuation.definition.tag.begin.html"},"4":{"name":"support.class.component.html"},"5":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(<)([a-z][a-zA-Z0-9:-]*)(?=[^>]*></\\\\2>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"(>)(<)(/)(\\\\2)(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"},"2":{"name":"punctuation.definition.tag.begin.html meta.scope.between-tag-pair.html"},"3":{"name":"punctuation.definition.tag.begin.html"},"4":{"name":"entity.name.tag.html"},"5":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(<\\\\?)(xml)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.xml.html"}},"end":"(\\\\?>)","name":"meta.tag.preprocessor.xml.html","patterns":[{"include":"#tag-generic-attribute"},{"include":"#string-double-quoted"},{"include":"#string-single-quoted"}]},{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.html"}},"end":"-->","name":"comment.block.html"},{"begin":"<!","captures":{"0":{"name":"punctuation.definition.tag.html"}},"end":">","name":"meta.tag.sgml.html","patterns":[{"begin":"(?i:DOCTYPE)","captures":{"1":{"name":"entity.name.tag.doctype.html"}},"end":"(?=>)","name":"meta.tag.sgml.doctype.html","patterns":[{"match":"\\"[^\\">]*\\"","name":"string.quoted.double.doctype.identifiers-and-DTDs.html"}]},{"begin":"\\\\[CDATA\\\\[","end":"]](?=>)","name":"constant.other.inline-data.html"},{"match":"(\\\\s*)(?!--|>)\\\\S(\\\\s*)","name":"invalid.illegal.bad-comments-or-CDATA.html"}]},{"begin":"(</?)([A-Z][a-zA-Z0-9:-]*\\\\b)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"support.class.component.html"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.block.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)([a-z][a-zA-Z0-9:-]*\\\\b)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.block.any.html"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.block.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)((?i:body|head|html)\\\\b)","captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.structure.any.html"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)((?i:address|blockquote|dd|div|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre)(?!-)\\\\b)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.block.any.html"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.block.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)(?!-)\\\\b)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.inline.any.html"}},"end":"(/?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.any.html","patterns":[{"include":"#tag-stuff"}]},{"begin":"(</?)([a-zA-Z0-9:-]+)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.other.html"}},"end":"(/?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.html","patterns":[{"include":"#tag-stuff"}]},{"include":"#entities"},{"match":"<>","name":"invalid.illegal.incomplete.html"},{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}],"repository":{"entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)","name":"constant.character.entity.html"},{"match":"&","name":"invalid.illegal.bad-ampersand.html"}]},"string-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.double.html","patterns":[{"include":"source.vue#vue-interpolations"},{"include":"#entities"}]},"string-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.single.html","patterns":[{"include":"source.vue#vue-interpolations"},{"include":"#entities"}]},"tag-generic-attribute":{"match":"(?<=[^=])\\\\b([a-zA-Z0-9:\\\\-_]+)","name":"entity.other.attribute-name.html"},"tag-id-attribute":{"begin":"\\\\b(id)\\\\b\\\\s*(=)","captures":{"1":{"name":"entity.other.attribute-name.id.html"},"2":{"name":"punctuation.separator.key-value.html"}},"end":"(?!\\\\G)(?<='|\\"|[^\\\\s<>/])","name":"meta.attribute-with-value.id.html","patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"meta.toc-list.id.html","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.double.html","patterns":[{"include":"source.vue#vue-interpolations"},{"include":"#entities"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"meta.toc-list.id.html","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.single.html","patterns":[{"include":"source.vue#vue-interpolations"},{"include":"#entities"}]},{"captures":{"0":{"name":"meta.toc-list.id.html"}},"match":"(?<==)(?:[^\\\\s<>/'\\"]|/(?!>))+","name":"string.unquoted.html"}]},"tag-stuff":{"patterns":[{"include":"#vue-directives"},{"include":"#tag-id-attribute"},{"include":"#tag-generic-attribute"},{"include":"#string-double-quoted"},{"include":"#string-single-quoted"},{"include":"#unquoted-attribute"}]},"unquoted-attribute":{"match":"(?<==)(?:[^\\\\s<>/'\\"]|/(?!>))+","name":"string.unquoted.html"},"vue-directives":{"begin":"(?:\\\\b(v-)|(:|@|#))([a-zA-Z0-9\\\\-_]+)(?:\\\\:([a-zA-Z\\\\-_]+))?(?:\\\\.([a-zA-Z\\\\-_]+))*\\\\s*(=)","captures":{"1":{"name":"entity.other.attribute-name.html"},"2":{"name":"punctuation.separator.key-value.html"},"3":{"name":"entity.other.attribute-name.html"},"4":{"name":"entity.other.attribute-name.html"},"5":{"name":"entity.other.attribute-name.html"},"6":{"name":"punctuation.separator.key-value.html"}},"end":"(?<='|\\")|(?=[\\\\s<>\`])","name":"meta.directive.vue","patterns":[{"begin":"\`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"\`","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"source.directive.vue","patterns":[{"include":"source.js#expression"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"source.directive.vue","patterns":[{"include":"source.js#expression"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"source.directive.vue","patterns":[{"include":"source.js#expression"}]}]}},"scopeName":"text.html.vue-html","embeddedLangs":["vue","javascript"],"embeddedLangsLazy":[]}`)),_se=[...ix,...J,Cse]});var CP={};x(CP,{default:()=>xse});var Bse,xse,_P=_(()=>{Bse=Object.freeze(JSON.parse(`{"displayName":"Vyper","name":"vyper","patterns":[{"include":"#statement"},{"include":"#expression"},{"include":"#reserved-names-vyper"}],"repository":{"annotated-parameter":{"begin":"\\\\b([[:alpha:]_]\\\\w*)\\\\s*(:)","beginCaptures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.annotation.python"}},"end":"(,)|(?=\\\\))","endCaptures":{"1":{"name":"punctuation.separator.parameters.python"}},"patterns":[{"include":"#expression"},{"match":"=(?!=)","name":"keyword.operator.assignment.python"}]},"assignment-operator":{"match":"<<=|>>=|//=|\\\\*\\\\*=|\\\\+=|-=|/=|@=|\\\\*=|%=|~=|\\\\^=|&=|\\\\|=|=(?!=)","name":"keyword.operator.assignment.python"},"backticks":{"begin":"\\\\\`","end":"(?:\\\\\`|(?<!\\\\\\\\)(\\\\n))","name":"invalid.deprecated.backtick.python","patterns":[{"include":"#expression"}]},"builtin-callables":{"patterns":[{"include":"#illegal-names"},{"include":"#illegal-object-name"},{"include":"#builtin-exceptions"},{"include":"#builtin-functions"},{"include":"#builtin-types"}]},"builtin-exceptions":{"match":"(?<!\\\\.)\\\\b((Arithmetic|Assertion|Attribute|Buffer|BlockingIO|BrokenPipe|ChildProcess|(Connection(Aborted|Refused|Reset)?)|EOF|Environment|FileExists|FileNotFound|FloatingPoint|IO|Import|Indentation|Index|Interrupted|IsADirectory|NotADirectory|Permission|ProcessLookup|Timeout|Key|Lookup|Memory|Name|NotImplemented|OS|Overflow|Reference|Runtime|Recursion|Syntax|System|Tab|Type|UnboundLocal|Unicode(Encode|Decode|Translate)?|Value|Windows|ZeroDivision|ModuleNotFound)Error|((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes|Resource)?Warning|SystemExit|Stop(Async)?Iteration|KeyboardInterrupt|GeneratorExit|(Base)?Exception)\\\\b","name":"support.type.exception.python"},"builtin-functions":{"patterns":[{"match":"(?<!\\\\.)\\\\b(__import__|abs|aiter|all|any|anext|ascii|bin|breakpoint|callable|chr|compile|copyright|credits|delattr|dir|divmod|enumerate|eval|exec|exit|filter|format|getattr|globals|hasattr|hash|help|hex|id|input|isinstance|issubclass|iter|len|license|locals|map|max|memoryview|min|next|oct|open|ord|pow|print|quit|range|reload|repr|reversed|round|setattr|sorted|sum|vars|zip)\\\\b","name":"support.function.builtin.python"},{"match":"(?<!\\\\.)\\\\b(file|reduce|intern|raw_input|unicode|cmp|basestring|execfile|long|xrange)\\\\b","name":"variable.legacy.builtin.python"},{"match":"(?<!\\\\.)\\\\b(abi_encode|abi_decode|_abi_encode|_abi_decode|floor|ceil|convert|slice|len|concat|sha256|method_id|keccak256|ecrecover|ecadd|ecmul|extract32|as_wei_value|raw_call|blockhash|blobhash|bitwise_and|bitwise_or|bitwise_xor|bitwise_not|uint256_addmod|uint256_mulmod|unsafe_add|unsafe_sub|unsafe_mul|unsafe_div|pow_mod256|uint2str|isqrt|sqrt|shift|create_minimal_proxy_to|create_forwarder_to|create_copy_of|create_from_blueprint|min|max|empty|abs|min_value|max_value|epsilon)\\\\b","name":"support.function.builtin.vyper"},{"match":"(?<!\\\\.)\\\\b(send|print|breakpoint|selfdestruct|raw_call|raw_log|raw_revert|create_minimal_proxy_to|create_forwarder_to|create_copy_of|create_from_blueprint)\\\\b","name":"support.function.builtin.lowlevel.vyper"},{"match":"(?<!\\\\.)\\\\b(struct|enum|flag|event|interface|HashMap|DynArray|Bytes|String)\\\\b","name":"support.type.reference.vyper"},{"match":"(?<!\\\\.)\\\\b(nonreentrant|internal|view|pure|private|immutable|constant)\\\\b","name":"support.function.builtin.modifiers.safe.vyper"},{"match":"(?<!\\\\.)\\\\b(deploy|nonpayable|payable|external|modifying)\\\\b","name":"support.function.builtin.modifiers.unsafe.vyper"}]},"builtin-possible-callables":{"patterns":[{"include":"#builtin-callables"},{"include":"#magic-names"}]},"builtin-types":{"patterns":[{"match":"(?<!\\\\.)\\\\b(bool|bytearray|bytes|classmethod|complex|dict|float|frozenset|int|list|object|property|set|slice|staticmethod|str|tuple|type|super)\\\\b","name":"support.type.python"},{"match":"(?<!\\\\.)\\\\b(uint248|HashMap|bytes22|int88|bytes24|bytes11|int24|bytes28|bytes19|uint136|decimal|uint40|uint168|uint120|int112|bytes4|uint192|String|int104|bytes29|int120|uint232|bytes8|bool|bytes14|int56|uint32|int232|uint48|bytes17|bytes12|uint24|int160|int72|int256|uint56|uint80|uint104|uint144|uint200|bytes20|uint160|bytes18|bytes16|uint8|int40|Bytes|uint72|bytes2|bytes23|int48|bytes6|bytes13|int192|bytes15|uint96|address|uint64|uint88|bytes7|int64|bytes32|bytes30|int176|int248|uint128|int8|int136|int216|bytes31|int144|bytes1|int168|bytes5|uint216|int200|bytes25|uint112|int128|bytes10|uint16|DynArray|int16|int32|int208|int184|bytes9|int224|bytes3|int80|uint152|bytes21|int96|uint256|uint176|uint240|bytes27|bytes26|int240|uint224|uint184|uint208|int152)\\\\b","name":"support.type.basetype.vyper"},{"match":"(?<!\\\\.)\\\\b(max_int128|min_int128|nonlocal|babbage|_default_|___init___|await|indexed|____init____|true|constant|with|from|nonpayable|finally|enum|zero_wei|del|for|____default____|if|none|or|global|def|not|class|twei|struct|mwei|empty_bytes32|nonreentrant|transient|false|assert|event|pass|finney|init|lovelace|min_decimal|shannon|public|external|internal|flagunreachable|_init_|return|in|and|raise|try|gwei|break|zero_address|pwei|range|wei|while|ada|yield|as|immutable|continue|async|lambda|default|is|szabo|kwei|import|max_uint256|elif|___default___|else|except|max_decimal|interface|payable|ether)\\\\b","name":"support.type.keywords.vyper"},{"match":"(?<!\\\\.)\\\\b(ZERO_ADDRESS|EMPTY_BYTES32|MAX_INT128|MIN_INT128|MAX_DECIMAL|MIN_DECIMAL|MIN_UINT256|MAX_UINT256|super)\\\\b","name":"support.type.constant.vyper"},{"match":"(?<!\\\\.)\\\\b(implements|uses|initializes|exports)\\\\b","name":"entity.other.inherited-class.modules.vyper"}]},"call-wrapper-inheritance":{"begin":"\\\\b(?=([[:alpha:]_]\\\\w*)\\\\s*(\\\\())","comment":"same as a function call, but in inheritance context","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"name":"meta.function-call.python","patterns":[{"include":"#inheritance-name"},{"include":"#function-arguments"}]},"class-declaration":{"patterns":[{"begin":"\\\\s*(class)\\\\s+(?=[[:alpha:]_]\\\\w*\\\\s*(:|\\\\())","beginCaptures":{"1":{"name":"storage.type.class.python"}},"end":"(:)","endCaptures":{"1":{"name":"punctuation.section.class.begin.python"}},"name":"meta.class.python","patterns":[{"include":"#class-name"},{"include":"#class-inheritance"}]}]},"class-inheritance":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.inheritance.begin.python"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.inheritance.end.python"}},"name":"meta.class.inheritance.python","patterns":[{"match":"(\\\\*\\\\*|\\\\*)","name":"keyword.operator.unpacking.arguments.python"},{"match":",","name":"punctuation.separator.inheritance.python"},{"match":"=(?!=)","name":"keyword.operator.assignment.python"},{"match":"\\\\bmetaclass\\\\b","name":"support.type.metaclass.python"},{"include":"#illegal-names"},{"include":"#class-kwarg"},{"include":"#call-wrapper-inheritance"},{"include":"#expression-base"},{"include":"#member-access-class"},{"include":"#inheritance-identifier"}]},"class-kwarg":{"captures":{"1":{"name":"entity.other.inherited-class.python variable.parameter.class.python"},"2":{"name":"keyword.operator.assignment.python"}},"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\s*(=)(?!=)"},"class-name":{"patterns":[{"include":"#illegal-object-name"},{"include":"#builtin-possible-callables"},{"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"entity.name.type.class.python"}]},"codetags":{"captures":{"1":{"name":"keyword.codetag.notation.python"}},"match":"(?:\\\\b(NOTE|XXX|HACK|FIXME|BUG|TODO)\\\\b)"},"comments":{"patterns":[{"begin":"(?:\\\\#\\\\s*(type:)\\\\s*+(?!$|\\\\#))","beginCaptures":{"0":{"name":"meta.typehint.comment.python"},"1":{"name":"comment.typehint.directive.notation.python"}},"contentName":"meta.typehint.comment.python","end":"(?:$|(?=\\\\#))","name":"comment.line.number-sign.python","patterns":[{"match":"\\\\Gignore(?=\\\\s*(?:$|\\\\#))","name":"comment.typehint.ignore.notation.python"},{"match":"(?<!\\\\.)\\\\b(bool|bytes|float|int|object|str|List|Dict|Iterable|Sequence|Set|FrozenSet|Callable|Union|Tuple|Any|None)\\\\b","name":"comment.typehint.type.notation.python"},{"match":"([\\\\[\\\\]\\\\(\\\\),\\\\.\\\\=\\\\*]|(->))","name":"comment.typehint.punctuation.notation.python"},{"match":"([[:alpha:]_]\\\\w*)","name":"comment.typehint.variable.notation.python"}]},{"include":"#comments-base"}]},"comments-base":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($)","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"comments-string-double-three":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($|(?=\\"\\"\\"))","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"comments-string-single-three":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($|(?='''))","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"curly-braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dict.begin.python"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dict.end.python"}},"patterns":[{"match":":","name":"punctuation.separator.dict.python"},{"include":"#expression"}]},"decorator":{"begin":"^\\\\s*((@))\\\\s*(?=[[:alpha:]_]\\\\w*)","beginCaptures":{"1":{"name":"entity.name.function.decorator.python"},"2":{"name":"punctuation.definition.decorator.python"}},"end":"(\\\\))(?:(.*?)(?=\\\\s*(?:\\\\#|$)))|(?=\\\\n|\\\\#)","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"},"2":{"name":"invalid.illegal.decorator.python"}},"name":"meta.function.decorator.python","patterns":[{"include":"#decorator-name"},{"include":"#function-arguments"}]},"decorator-name":{"patterns":[{"include":"#builtin-callables"},{"include":"#illegal-object-name"},{"captures":{"2":{"name":"punctuation.separator.period.python"}},"match":"([[:alpha:]_]\\\\w*)|(\\\\.)","name":"entity.name.function.decorator.python"},{"include":"#line-continuation"},{"captures":{"1":{"name":"invalid.illegal.decorator.python"}},"match":"\\\\s*([^([:alpha:]\\\\s_\\\\.#\\\\\\\\].*?)(?=\\\\#|$)","name":"invalid.illegal.decorator.python"}]},"docstring":{"patterns":[{"begin":"(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\1)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"}},"name":"string.quoted.docstring.multi.python","patterns":[{"include":"#docstring-prompt"},{"include":"#codetags"},{"include":"#docstring-guts-unicode"}]},{"begin":"([rR])(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"}},"name":"string.quoted.docstring.raw.multi.python","patterns":[{"include":"#string-consume-escape"},{"include":"#docstring-prompt"},{"include":"#codetags"}]},{"begin":"(\\\\'|\\\\\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\1)|(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.docstring.single.python","patterns":[{"include":"#codetags"},{"include":"#docstring-guts-unicode"}]},{"begin":"([rR])(\\\\'|\\\\\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)|(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.docstring.raw.single.python","patterns":[{"include":"#string-consume-escape"},{"include":"#codetags"}]}]},"docstring-guts-unicode":{"patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"}]},"docstring-prompt":{"captures":{"1":{"name":"keyword.control.flow.python"}},"match":"(?:(?:^|\\\\G)\\\\s*((?:>>>|\\\\.\\\\.\\\\.)\\\\s)(?=\\\\s*\\\\S))"},"docstring-statement":{"begin":"^(?=\\\\s*[rR]?(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\"|\\\\'|\\\\\\"))","comment":"the string either terminates correctly or by the beginning of a new line (this is for single line docstrings that aren't terminated) AND it's not followed by another docstring","end":"((?<=\\\\1)|^)(?!\\\\s*[rR]?(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\"|\\\\'|\\\\\\"))","patterns":[{"include":"#docstring"}]},"double-one-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"double-one-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"double-one-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[[:alnum:]]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#double-one-regexp-character-set"},{"include":"#double-one-regexp-comments"},{"include":"#regexp-flags"},{"include":"#double-one-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#double-one-regexp-lookahead"},{"include":"#double-one-regexp-lookahead-negative"},{"include":"#double-one-regexp-lookbehind"},{"include":"#double-one-regexp-lookbehind-negative"},{"include":"#double-one-regexp-conditional"},{"include":"#double-one-regexp-parentheses-non-capturing"},{"include":"#double-one-regexp-parentheses"}]},"double-one-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[[:alnum:]]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-three-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"double-three-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"double-three-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[[:alnum:]]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#double-three-regexp-character-set"},{"include":"#double-three-regexp-comments"},{"include":"#regexp-flags"},{"include":"#double-three-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#double-three-regexp-lookahead"},{"include":"#double-three-regexp-lookahead-negative"},{"include":"#double-three-regexp-lookbehind"},{"include":"#double-three-regexp-lookbehind-negative"},{"include":"#double-three-regexp-conditional"},{"include":"#double-three-regexp-parentheses-non-capturing"},{"include":"#double-three-regexp-parentheses"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[[:alnum:]]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"ellipsis":{"match":"\\\\.\\\\.\\\\.","name":"constant.other.ellipsis.python"},"escape-sequence":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|[0-7]{1,3}|[\\\\\\\\\\"'abfnrtv])","name":"constant.character.escape.python"},"escape-sequence-unicode":{"patterns":[{"match":"\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\\\\{[\\\\w\\\\s]+?\\\\})","name":"constant.character.escape.python"}]},"expression":{"comment":"All valid Python expressions","patterns":[{"include":"#expression-base"},{"include":"#member-access"},{"comment":"Tokenize identifiers to help linters","match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b"}]},"expression-bare":{"comment":"valid Python expressions w/o comments and line continuation","patterns":[{"include":"#backticks"},{"include":"#illegal-anno"},{"include":"#literal"},{"include":"#regexp"},{"include":"#string"},{"include":"#lambda"},{"include":"#generator"},{"include":"#illegal-operator"},{"include":"#operator"},{"include":"#curly-braces"},{"include":"#item-access"},{"include":"#list"},{"include":"#odd-function-call"},{"include":"#round-braces"},{"include":"#function-call"},{"include":"#builtin-functions"},{"include":"#builtin-types"},{"include":"#builtin-exceptions"},{"include":"#magic-names"},{"include":"#special-names"},{"include":"#illegal-names"},{"include":"#special-variables"},{"include":"#ellipsis"},{"include":"#punctuation"},{"include":"#line-continuation"},{"include":"#special-variables-types"}]},"expression-base":{"comment":"valid Python expressions with comments and line continuation","patterns":[{"include":"#comments"},{"include":"#expression-bare"},{"include":"#line-continuation"}]},"f-expression":{"comment":"All valid Python expressions, except comments and line continuation","patterns":[{"include":"#expression-bare"},{"include":"#member-access"},{"comment":"Tokenize identifiers to help linters","match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b"}]},"fregexp-base-expression":{"patterns":[{"include":"#fregexp-quantifier"},{"include":"#fstring-formatting-braces"},{"match":"\\\\{.*?\\\\}"},{"include":"#regexp-base-common"}]},"fregexp-quantifier":{"match":"\\\\{\\\\{(\\\\d+|\\\\d+,(\\\\d+)?|,\\\\d+)\\\\}\\\\}","name":"keyword.operator.quantifier.regexp"},"fstring-fnorm-quoted-multi-line":{"begin":"(\\\\b[fF])([bBuU])?('''|\\"\\"\\")","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.multi.python storage.type.string.python"},"2":{"name":"invalid.illegal.prefix.python"},"3":{"name":"punctuation.definition.string.begin.python string.interpolated.python string.quoted.multi.python"}},"end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"include":"#fstring-multi-core"}]},"fstring-fnorm-quoted-single-line":{"begin":"(\\\\b[fF])([bBuU])?((['\\"]))","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.single.python storage.type.string.python"},"2":{"name":"invalid.illegal.prefix.python"},"3":{"name":"punctuation.definition.string.begin.python string.interpolated.python string.quoted.single.python"}},"end":"(\\\\3)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"include":"#fstring-single-core"}]},"fstring-formatting":{"patterns":[{"include":"#fstring-formatting-braces"},{"include":"#fstring-formatting-singe-brace"}]},"fstring-formatting-braces":{"patterns":[{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"},"2":{"name":"invalid.illegal.brace.python"},"3":{"name":"constant.character.format.placeholder.other.python"}},"comment":"empty braces are illegal","match":"({)(\\\\s*?)(})"},{"match":"({{|}})","name":"constant.character.escape.python"}]},"fstring-formatting-singe-brace":{"match":"(}(?!}))","name":"invalid.illegal.brace.python"},"fstring-guts":{"patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"},{"include":"#fstring-formatting"}]},"fstring-illegal-multi-brace":{"patterns":[{"include":"#impossible"}]},"fstring-illegal-single-brace":{"begin":"(\\\\{)(?=[^\\\\n}]*$\\\\n?)","beginCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"comment":"it is illegal to have a multiline brace inside a single-line string","end":"(\\\\})|(?=\\\\n)","endCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"patterns":[{"include":"#fstring-terminator-single"},{"include":"#f-expression"}]},"fstring-multi-brace":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"comment":"value interpolation using { ... }","end":"(\\\\})","endCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"patterns":[{"include":"#fstring-terminator-multi"},{"include":"#f-expression"}]},"fstring-multi-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\\\\\}\\\\{]|'''|\\"\\"\\"))|\\\\n","name":"string.interpolated.python string.quoted.multi.python"},"fstring-normf-quoted-multi-line":{"begin":"(\\\\b[bBuU])([fF])('''|\\"\\"\\")","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"string.interpolated.python string.quoted.multi.python storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python string.quoted.multi.python"}},"end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"include":"#fstring-multi-core"}]},"fstring-normf-quoted-single-line":{"begin":"(\\\\b[bBuU])([fF])((['\\"]))","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"string.interpolated.python string.quoted.single.python storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python string.quoted.single.python"}},"end":"(\\\\3)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"include":"#fstring-single-core"}]},"fstring-raw-guts":{"patterns":[{"include":"#string-consume-escape"},{"include":"#fstring-formatting"}]},"fstring-raw-multi-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\\\\\}\\\\{]|'''|\\"\\"\\"))|\\\\n","name":"string.interpolated.python string.quoted.raw.multi.python"},"fstring-raw-quoted-multi-line":{"begin":"(\\\\b(?:[rR][fF]|[fF][rR]))('''|\\"\\"\\")","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.raw.multi.python storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python string.quoted.raw.multi.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.multi.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-raw-guts"},{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"include":"#fstring-raw-multi-core"}]},"fstring-raw-quoted-single-line":{"begin":"(\\\\b(?:[rR][fF]|[fF][rR]))((['\\"]))","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.raw.single.python storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python string.quoted.raw.single.python"}},"end":"(\\\\2)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.single.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-raw-guts"},{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"include":"#fstring-raw-single-core"}]},"fstring-raw-single-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\\\\\}\\\\{]|(['\\"])|((?<!\\\\\\\\)\\\\n)))|\\\\n","name":"string.interpolated.python string.quoted.raw.single.python"},"fstring-single-brace":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"comment":"value interpolation using { ... }","end":"(\\\\})|(?=\\\\n)","endCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"patterns":[{"include":"#fstring-terminator-single"},{"include":"#f-expression"}]},"fstring-single-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\\\\\}\\\\{]|(['\\"])|((?<!\\\\\\\\)\\\\n)))|\\\\n","name":"string.interpolated.python string.quoted.single.python"},"fstring-terminator-multi":{"patterns":[{"match":"(=(![rsa])?)(?=})","name":"storage.type.format.python"},{"match":"(=?![rsa])(?=})","name":"storage.type.format.python"},{"captures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"match":"((?:=?)(?:![rsa])?)(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})"},{"include":"#fstring-terminator-multi-tail"}]},"fstring-terminator-multi-tail":{"begin":"((?:=?)(?:![rsa])?)(:)(?=.*?{)","beginCaptures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"end":"(?=})","patterns":[{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"match":"([bcdeEfFgGnosxX%])(?=})","name":"storage.type.format.python"},{"match":"(\\\\.\\\\d+)","name":"storage.type.format.python"},{"match":"(,)","name":"storage.type.format.python"},{"match":"(\\\\d+)","name":"storage.type.format.python"},{"match":"(\\\\#)","name":"storage.type.format.python"},{"match":"([-+ ])","name":"storage.type.format.python"},{"match":"([<>=^])","name":"storage.type.format.python"},{"match":"(\\\\w)","name":"storage.type.format.python"}]},"fstring-terminator-single":{"patterns":[{"match":"(=(![rsa])?)(?=})","name":"storage.type.format.python"},{"match":"(=?![rsa])(?=})","name":"storage.type.format.python"},{"captures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"match":"((?:=?)(?:![rsa])?)(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})"},{"include":"#fstring-terminator-single-tail"}]},"fstring-terminator-single-tail":{"begin":"((?:=?)(?:![rsa])?)(:)(?=.*?{)","beginCaptures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"end":"(?=})|(?=\\\\n)","patterns":[{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"match":"([bcdeEfFgGnosxX%])(?=})","name":"storage.type.format.python"},{"match":"(\\\\.\\\\d+)","name":"storage.type.format.python"},{"match":"(,)","name":"storage.type.format.python"},{"match":"(\\\\d+)","name":"storage.type.format.python"},{"match":"(\\\\#)","name":"storage.type.format.python"},{"match":"([-+ ])","name":"storage.type.format.python"},{"match":"([<>=^])","name":"storage.type.format.python"},{"match":"(\\\\w)","name":"storage.type.format.python"}]},"function-arguments":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python"}},"contentName":"meta.function-call.arguments.python","end":"(?=\\\\))(?!\\\\)\\\\s*\\\\()","patterns":[{"match":"(,)","name":"punctuation.separator.arguments.python"},{"captures":{"1":{"name":"keyword.operator.unpacking.arguments.python"}},"match":"(?:(?<=[,(])|^)\\\\s*(\\\\*{1,2})"},{"include":"#lambda-incomplete"},{"include":"#illegal-names"},{"captures":{"1":{"name":"variable.parameter.function-call.python"},"2":{"name":"keyword.operator.assignment.python"}},"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\s*(=)(?!=)"},{"match":"=(?!=)","name":"keyword.operator.assignment.python"},{"include":"#expression"},{"captures":{"1":{"name":"punctuation.definition.arguments.end.python"},"2":{"name":"punctuation.definition.arguments.begin.python"}},"match":"\\\\s*(\\\\))\\\\s*(\\\\()"}]},"function-call":{"begin":"\\\\b(?=([[:alpha:]_]\\\\w*)\\\\s*(\\\\())","comment":"Regular function call of the type \\"name(args)\\"","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"name":"meta.function-call.python","patterns":[{"include":"#special-variables"},{"include":"#function-name"},{"include":"#function-arguments"}]},"function-declaration":{"begin":"\\\\s*(?:\\\\b(async)\\\\s+)?\\\\b(def)\\\\s+(?=[[:alpha:]_][[:word:]]*\\\\s*\\\\()","beginCaptures":{"1":{"name":"storage.type.function.async.python"},"2":{"name":"storage.type.function.python"}},"end":"(:|(?=[#'\\"\\\\n]))","endCaptures":{"1":{"name":"punctuation.section.function.begin.python"}},"name":"meta.function.python","patterns":[{"include":"#function-def-name"},{"include":"#parameters"},{"include":"#line-continuation"},{"include":"#return-annotation"}]},"function-def-name":{"patterns":[{"match":"\\\\b(__default__)\\\\b","name":"entity.name.function.fallback.vyper"},{"match":"\\\\b(__init__)\\\\b","name":"entity.name.function.constructor.vyper"},{"include":"#illegal-object-name"},{"include":"#builtin-possible-callables"},{"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"entity.name.function.python"}]},"function-name":{"patterns":[{"include":"#builtin-possible-callables"},{"comment":"Some color schemas support meta.function-call.generic scope","match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"meta.function-call.generic.python"}]},"generator":{"begin":"\\\\bfor\\\\b","beginCaptures":{"0":{"name":"keyword.control.flow.python"}},"comment":"Match \\"for ... in\\" construct used in generators and for loops to\\ncorrectly identify the \\"in\\" as a control flow keyword.\\n","end":"\\\\bin\\\\b","endCaptures":{"0":{"name":"keyword.control.flow.python"}},"patterns":[{"include":"#expression"}]},"illegal-anno":{"match":"->","name":"invalid.illegal.annotation.python"},"illegal-names":{"captures":{"1":{"name":"keyword.control.flow.python"},"2":{"name":"keyword.control.import.python"}},"match":"\\\\b(?:(and|assert|async|await|break|class|continue|def|del|elif|else|except|finally|for|from|global|if|in|is|(?<=\\\\.)lambda|lambda(?=\\\\s*[\\\\.=])|nonlocal|not|or|pass|raise|return|try|while|with|yield)|(as|import))\\\\b"},"illegal-object-name":{"comment":"It's illegal to name class or function \\"True\\"","match":"\\\\b(True|False|None)\\\\b","name":"keyword.illegal.name.python"},"illegal-operator":{"patterns":[{"match":"&&|\\\\|\\\\||--|\\\\+\\\\+","name":"invalid.illegal.operator.python"},{"match":"[?$]","name":"invalid.illegal.operator.python"},{"comment":"We don't want \`!\` to flash when we're typing \`!=\`","match":"!\\\\b","name":"invalid.illegal.operator.python"}]},"import":{"comment":"Import statements used to correctly mark \`from\`, \`import\`, and \`as\`\\n","patterns":[{"begin":"\\\\b(?<!\\\\.)(from)\\\\b(?=.+import)","beginCaptures":{"1":{"name":"keyword.control.import.python"}},"end":"$|(?=import)","patterns":[{"match":"\\\\.+","name":"punctuation.separator.period.python"},{"include":"#expression"}]},{"begin":"\\\\b(?<!\\\\.)(import)\\\\b","beginCaptures":{"1":{"name":"keyword.control.import.python"}},"end":"$","patterns":[{"match":"\\\\b(?<!\\\\.)as\\\\b","name":"keyword.control.import.python"},{"include":"#expression"}]}]},"impossible":{"comment":"This is a special rule that should be used where no match is desired. It is not a good idea to match something like '1{0}' because in some cases that can result in infinite loops in token generation. So the rule instead matches and impossible expression to allow a match to fail and move to the next token.","match":"$.^"},"inheritance-identifier":{"captures":{"1":{"name":"entity.other.inherited-class.python"}},"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b"},"inheritance-name":{"patterns":[{"include":"#lambda-incomplete"},{"include":"#builtin-possible-callables"},{"include":"#inheritance-identifier"}]},"item-access":{"patterns":[{"begin":"\\\\b(?=[[:alpha:]_]\\\\w*\\\\s*\\\\[)","end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"name":"meta.item-access.python","patterns":[{"include":"#item-name"},{"include":"#item-index"},{"include":"#expression"}]}]},"item-index":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python"}},"contentName":"meta.item-access.arguments.python","end":"(?=\\\\])","patterns":[{"match":":","name":"punctuation.separator.slice.python"},{"include":"#expression"}]},"item-name":{"patterns":[{"include":"#special-variables"},{"include":"#builtin-functions"},{"include":"#special-names"},{"match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"meta.indexed-name.python"},{"include":"#special-variables-types"}]},"lambda":{"patterns":[{"captures":{"1":{"name":"keyword.control.flow.python"}},"match":"((?<=\\\\.)lambda|lambda(?=\\\\s*[\\\\.=]))"},{"captures":{"1":{"name":"storage.type.function.lambda.python"}},"match":"\\\\b(lambda)\\\\s*?(?=[,\\\\n]|$)"},{"begin":"\\\\b(lambda)\\\\b","beginCaptures":{"1":{"name":"storage.type.function.lambda.python"}},"contentName":"meta.function.lambda.parameters.python","end":"(:)|(\\\\n)","endCaptures":{"1":{"name":"punctuation.section.function.lambda.begin.python"}},"name":"meta.lambda-function.python","patterns":[{"match":"/","name":"keyword.operator.positional.parameter.python"},{"match":"(\\\\*\\\\*|\\\\*)","name":"keyword.operator.unpacking.parameter.python"},{"include":"#lambda-nested-incomplete"},{"include":"#illegal-names"},{"captures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.parameters.python"}},"match":"([[:alpha:]_]\\\\w*)\\\\s*(?:(,)|(?=:|$))"},{"include":"#comments"},{"include":"#backticks"},{"include":"#illegal-anno"},{"include":"#lambda-parameter-with-default"},{"include":"#line-continuation"},{"include":"#illegal-operator"}]}]},"lambda-incomplete":{"match":"\\\\blambda(?=\\\\s*[,)])","name":"storage.type.function.lambda.python"},"lambda-nested-incomplete":{"match":"\\\\blambda(?=\\\\s*[:,)])","name":"storage.type.function.lambda.python"},"lambda-parameter-with-default":{"begin":"\\\\b([[:alpha:]_]\\\\w*)\\\\s*(=)","beginCaptures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"keyword.operator.python"}},"end":"(,)|(?=:|$)","endCaptures":{"1":{"name":"punctuation.separator.parameters.python"}},"patterns":[{"include":"#expression"}]},"line-continuation":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.continuation.line.python"},"2":{"name":"invalid.illegal.line.continuation.python"}},"match":"(\\\\\\\\)\\\\s*(\\\\S.*$\\\\n?)"},{"begin":"(\\\\\\\\)\\\\s*$\\\\n?","beginCaptures":{"1":{"name":"punctuation.separator.continuation.line.python"}},"end":"(?=^\\\\s*$)|(?!(\\\\s*[rR]?(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\"|\\\\'|\\\\\\"))|(\\\\G$))","patterns":[{"include":"#regexp"},{"include":"#string"}]}]},"list":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.list.begin.python"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.list.end.python"}},"patterns":[{"include":"#expression"}]},"literal":{"patterns":[{"match":"\\\\b(True|False|None|NotImplemented|Ellipsis)\\\\b","name":"constant.language.python"},{"include":"#number"}]},"loose-default":{"begin":"(=)","beginCaptures":{"1":{"name":"keyword.operator.python"}},"end":"(,)|(?=\\\\))","endCaptures":{"1":{"name":"punctuation.separator.parameters.python"}},"patterns":[{"include":"#expression"}]},"magic-function-names":{"captures":{"1":{"name":"support.function.magic.python"}},"comment":"these methods have magic interpretation by python and are generally called\\nindirectly through syntactic constructs\\n","match":"\\\\b(__(?:abs|add|aenter|aexit|aiter|and|anext|await|bool|call|ceil|class_getitem|cmp|coerce|complex|contains|copy|deepcopy|del|delattr|delete|delitem|delslice|dir|div|divmod|enter|eq|exit|float|floor|floordiv|format|ge|get|getattr|getattribute|getinitargs|getitem|getnewargs|getslice|getstate|gt|hash|hex|iadd|iand|idiv|ifloordiv||ilshift|imod|imul|index|init|instancecheck|int|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|long|lshift|lt|missing|mod|mul|ne|neg|new|next|nonzero|oct|or|pos|pow|radd|rand|rdiv|rdivmod|reduce|reduce_ex|repr|reversed|rfloordiv||rlshift|rmod|rmul|ror|round|rpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|set_name|setslice|setstate|sizeof|str|sub|subclasscheck|truediv|trunc|unicode|xor|matmul|rmatmul|imatmul|init_subclass|set_name|fspath|bytes|prepare|length_hint)__)\\\\b"},"magic-names":{"patterns":[{"include":"#magic-function-names"},{"include":"#magic-variable-names"}]},"magic-variable-names":{"captures":{"1":{"name":"support.variable.magic.python"}},"comment":"magic variables which a class/module may have.","match":"\\\\b(__(?:all|annotations|bases|builtins|class|closure|code|debug|defaults|dict|doc|file|func|globals|kwdefaults|match_args|members|metaclass|methods|module|mro|mro_entries|name|qualname|post_init|self|signature|slots|subclasses|version|weakref|wrapped|classcell|spec|path|package|future|traceback)__)\\\\b"},"member-access":{"begin":"(\\\\.)\\\\s*(?!\\\\.)","beginCaptures":{"1":{"name":"punctuation.separator.period.python"}},"end":"(?<=\\\\S)(?=\\\\W)|(^|(?<=\\\\s))(?=[^\\\\\\\\\\\\w\\\\s])|$","name":"meta.member.access.python","patterns":[{"include":"#function-call"},{"include":"#member-access-base"},{"include":"#member-access-attribute"}]},"member-access-attribute":{"comment":"Highlight attribute access in otherwise non-specialized cases.","match":"\\\\b([[:alpha:]_]\\\\w*)\\\\b","name":"meta.attribute.python"},"member-access-base":{"patterns":[{"include":"#magic-names"},{"include":"#illegal-names"},{"include":"#illegal-object-name"},{"include":"#special-names"},{"include":"#line-continuation"},{"include":"#item-access"},{"include":"#special-variables-types"}]},"member-access-class":{"begin":"(\\\\.)\\\\s*(?!\\\\.)","beginCaptures":{"1":{"name":"punctuation.separator.period.python"}},"end":"(?<=\\\\S)(?=\\\\W)|$","name":"meta.member.access.python","patterns":[{"include":"#call-wrapper-inheritance"},{"include":"#member-access-base"},{"include":"#inheritance-identifier"}]},"number":{"name":"constant.numeric.python","patterns":[{"include":"#number-float"},{"include":"#number-dec"},{"include":"#number-hex"},{"include":"#number-oct"},{"include":"#number-bin"},{"include":"#number-long"},{"match":"\\\\b[0-9]+\\\\w+","name":"invalid.illegal.name.python"}]},"number-bin":{"captures":{"1":{"name":"storage.type.number.python"}},"match":"(?<![\\\\w\\\\.])(0[bB])(_?[01])+\\\\b","name":"constant.numeric.bin.python"},"number-dec":{"captures":{"1":{"name":"storage.type.imaginary.number.python"},"2":{"name":"invalid.illegal.dec.python"}},"match":"(?<![\\\\w\\\\.])(?:[1-9](?:_?[0-9])*|0+|[0-9](?:_?[0-9])*([jJ])|0([0-9]+)(?![eE\\\\.]))\\\\b","name":"constant.numeric.dec.python"},"number-float":{"captures":{"1":{"name":"storage.type.imaginary.number.python"}},"match":"(?<!\\\\w)(?:(?:\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\.)(?:[eE][+-]?[0-9](?:_?[0-9])*)?|[0-9](?:_?[0-9])*(?:[eE][+-]?[0-9](?:_?[0-9])*))([jJ])?\\\\b","name":"constant.numeric.float.python"},"number-hex":{"captures":{"1":{"name":"storage.type.number.python"}},"match":"(?<![\\\\w\\\\.])(0[xX])(_?[0-9a-fA-F])+\\\\b","name":"constant.numeric.hex.python"},"number-long":{"captures":{"2":{"name":"storage.type.number.python"}},"comment":"this is to support python2 syntax for long ints","match":"(?<![\\\\w\\\\.])([1-9][0-9]*|0)([lL])\\\\b","name":"constant.numeric.bin.python"},"number-oct":{"captures":{"1":{"name":"storage.type.number.python"}},"match":"(?<![\\\\w\\\\.])(0[oO])(_?[0-7])+\\\\b","name":"constant.numeric.oct.python"},"odd-function-call":{"begin":"(?<=\\\\]|\\\\))\\\\s*(?=\\\\()","comment":"A bit obscured function call where there may have been an\\narbitrary number of other operations to get the function.\\nE.g. \\"arr[idx](args)\\"\\n","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"patterns":[{"include":"#function-arguments"}]},"operator":{"captures":{"1":{"name":"keyword.operator.logical.python"},"2":{"name":"keyword.control.flow.python"},"3":{"name":"keyword.operator.bitwise.python"},"4":{"name":"keyword.operator.arithmetic.python"},"5":{"name":"keyword.operator.comparison.python"},"6":{"name":"keyword.operator.assignment.python"}},"match":"\\\\b(?<!\\\\.)(?:(and|or|not|in|is)|(for|if|else|await|(?:yield(?:\\\\s+from)?)))(?!\\\\s*:)\\\\b|(<<|>>|&|\\\\||\\\\^|~)|(\\\\*\\\\*|\\\\*|\\\\+|-|%|//|/|@)|(!=|==|>=|<=|<|>)|(:=)"},"parameter-special":{"captures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"variable.parameter.function.language.special.self.python"},"3":{"name":"variable.parameter.function.language.special.cls.python"},"4":{"name":"punctuation.separator.parameters.python"}},"match":"\\\\b((self)|(cls))\\\\b\\\\s*(?:(,)|(?=\\\\)))"},"parameters":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.python"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.python"}},"name":"meta.function.parameters.python","patterns":[{"match":"/","name":"keyword.operator.positional.parameter.python"},{"match":"(\\\\*\\\\*|\\\\*)","name":"keyword.operator.unpacking.parameter.python"},{"include":"#lambda-incomplete"},{"include":"#illegal-names"},{"include":"#illegal-object-name"},{"include":"#parameter-special"},{"captures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.parameters.python"}},"match":"([[:alpha:]_]\\\\w*)\\\\s*(?:(,)|(?=[)#\\\\n=]))"},{"include":"#comments"},{"include":"#loose-default"},{"include":"#annotated-parameter"}]},"punctuation":{"patterns":[{"match":":","name":"punctuation.separator.colon.python"},{"match":",","name":"punctuation.separator.element.python"}]},"regexp":{"patterns":[{"include":"#regexp-single-three-line"},{"include":"#regexp-double-three-line"},{"include":"#regexp-single-one-line"},{"include":"#regexp-double-one-line"}]},"regexp-backreference":{"captures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.begin.regexp"},"2":{"name":"entity.name.tag.named.backreference.regexp"},"3":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp"}},"match":"(\\\\()(\\\\?P=\\\\w+(?:\\\\s+[[:alnum:]]+)?)(\\\\))","name":"meta.backreference.named.regexp"},"regexp-backreference-number":{"captures":{"1":{"name":"entity.name.tag.backreference.regexp"}},"match":"(\\\\\\\\[1-9]\\\\d?)","name":"meta.backreference.regexp"},"regexp-base-common":{"patterns":[{"match":"\\\\.","name":"support.other.match.any.regexp"},{"match":"\\\\^","name":"support.other.match.begin.regexp"},{"match":"\\\\$","name":"support.other.match.end.regexp"},{"match":"[+*?]\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.disjunction.regexp"},{"include":"#regexp-escape-sequence"}]},"regexp-base-expression":{"patterns":[{"include":"#regexp-quantifier"},{"include":"#regexp-base-common"}]},"regexp-charecter-set-escapes":{"patterns":[{"match":"\\\\\\\\[abfnrtv\\\\\\\\]","name":"constant.character.escape.regexp"},{"include":"#regexp-escape-special"},{"match":"\\\\\\\\([0-7]{1,3})","name":"constant.character.escape.regexp"},{"include":"#regexp-escape-character"},{"include":"#regexp-escape-unicode"},{"include":"#regexp-escape-catchall"}]},"regexp-double-one-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\")","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\")|(?<!\\\\\\\\)(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.single.python","patterns":[{"include":"#double-one-regexp-expression"}]},"regexp-double-three-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\"\\"\\")","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\"\\"\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.multi.python","patterns":[{"include":"#double-three-regexp-expression"}]},"regexp-escape-catchall":{"match":"\\\\\\\\(.|\\\\n)","name":"constant.character.escape.regexp"},"regexp-escape-character":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|0[0-7]{1,2}|[0-7]{3})","name":"constant.character.escape.regexp"},"regexp-escape-sequence":{"patterns":[{"include":"#regexp-escape-special"},{"include":"#regexp-escape-character"},{"include":"#regexp-escape-unicode"},{"include":"#regexp-backreference-number"},{"include":"#regexp-escape-catchall"}]},"regexp-escape-special":{"match":"\\\\\\\\([AbBdDsSwWZ])","name":"support.other.escape.special.regexp"},"regexp-escape-unicode":{"match":"\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.unicode.regexp"},"regexp-flags":{"match":"\\\\(\\\\?[aiLmsux]+\\\\)","name":"storage.modifier.flag.regexp"},"regexp-quantifier":{"match":"\\\\{(\\\\d+|\\\\d+,(\\\\d+)?|,\\\\d+)\\\\}","name":"keyword.operator.quantifier.regexp"},"regexp-single-one-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\')","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\')|(?<!\\\\\\\\)(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.single.python","patterns":[{"include":"#single-one-regexp-expression"}]},"regexp-single-three-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\'\\\\'\\\\')","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\'\\\\'\\\\')","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.multi.python","patterns":[{"include":"#single-three-regexp-expression"}]},"reserved-names-vyper":{"match":"\\\\b(max_int128|min_int128|nonlocal|babbage|_default_|___init___|await|indexed|____init____|true|constant|with|from|nonpayable|finally|enum|zero_wei|del|for|____default____|if|none|or|global|def|not|class|twei|struct|mwei|empty_bytes32|nonreentrant|transient|false|assert|event|pass|finney|init|lovelace|min_decimal|shannon|public|external|internal|flagunreachable|_init_|return|in|and|raise|try|gwei|break|zero_address|pwei|range|wei|while|ada|yield|as|immutable|continue|async|lambda|default|is|szabo|kwei|import|max_uint256|elif|___default___|else|except|max_decimal|interface|payable|ether)\\\\b","name":"name.reserved.vyper"},"return-annotation":{"begin":"(->)","beginCaptures":{"1":{"name":"punctuation.separator.annotation.result.python"}},"end":"(?=:)","patterns":[{"include":"#expression"}]},"round-braces":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.begin.python"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.end.python"}},"patterns":[{"include":"#expression"}]},"semicolon":{"patterns":[{"match":"\\\\;$","name":"invalid.deprecated.semicolon.python"}]},"single-one-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"single-one-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"single-one-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[[:alnum:]]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#single-one-regexp-character-set"},{"include":"#single-one-regexp-comments"},{"include":"#regexp-flags"},{"include":"#single-one-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#single-one-regexp-lookahead"},{"include":"#single-one-regexp-lookahead-negative"},{"include":"#single-one-regexp-lookbehind"},{"include":"#single-one-regexp-lookbehind-negative"},{"include":"#single-one-regexp-conditional"},{"include":"#single-one-regexp-parentheses-non-capturing"},{"include":"#single-one-regexp-parentheses"}]},"single-one-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[[:alnum:]]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-three-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"single-three-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"single-three-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[[:alnum:]]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#single-three-regexp-character-set"},{"include":"#single-three-regexp-comments"},{"include":"#regexp-flags"},{"include":"#single-three-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#single-three-regexp-lookahead"},{"include":"#single-three-regexp-lookahead-negative"},{"include":"#single-three-regexp-lookbehind"},{"include":"#single-three-regexp-lookbehind-negative"},{"include":"#single-three-regexp-conditional"},{"include":"#single-three-regexp-parentheses-non-capturing"},{"include":"#single-three-regexp-parentheses"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[[:alnum:]]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"special-names":{"match":"\\\\b(_*[[:upper:]][_\\\\d]*[[:upper:]])[[:upper:]\\\\d]*(_\\\\w*)?\\\\b","name":"constant.other.caps.python"},"special-variables":{"captures":{"1":{"name":"variable.language.special.self.python"},"2":{"name":"variable.language.special.cls.python"}},"match":"\\\\b(?<!\\\\.)(?:(self)|(cls))\\\\b"},"special-variables-types":{"patterns":[{"match":"(?<!\\\\.)\\\\b(log)\\\\b","name":"variable.language.special.log.vyper"},{"match":"(?<!\\\\.)\\\\b(msg)\\\\b","name":"variable.language.special.msg.vyper"},{"match":"(?<!\\\\.)\\\\b(block)\\\\b","name":"variable.language.special.block.vyper"},{"match":"(?<!\\\\.)\\\\b(tx)\\\\b","name":"variable.language.special.tx.vyper"},{"match":"(?<!\\\\.)\\\\b(chain)\\\\b","name":"variable.language.special.chain.vyper"},{"match":"(?<!\\\\.)\\\\b(extcall)\\\\b","name":"variable.language.special.extcall.vyper"},{"match":"(?<!\\\\.)\\\\b(staticcall)\\\\b","name":"variable.language.special.staticcall.vyper"},{"match":"\\\\b(__interface__)\\\\b","name":"variable.language.special.__interface__.vyper"}]},"statement":{"patterns":[{"include":"#import"},{"include":"#class-declaration"},{"include":"#function-declaration"},{"include":"#generator"},{"include":"#statement-keyword"},{"include":"#assignment-operator"},{"include":"#decorator"},{"include":"#docstring-statement"},{"include":"#semicolon"}]},"statement-keyword":{"patterns":[{"match":"\\\\b((async\\\\s+)?\\\\s*def)\\\\b","name":"storage.type.function.python"},{"comment":"if \`as\` is eventually followed by \`:\` or line continuation\\nit's probably control flow like:\\n with foo as bar, \\\\\\n Foo as Bar:\\n try:\\n do_stuff()\\n except Exception as e:\\n pass\\n","match":"\\\\b(?<!\\\\.)as\\\\b(?=.*[:\\\\\\\\])","name":"keyword.control.flow.python"},{"comment":"other legal use of \`as\` is in an import","match":"\\\\b(?<!\\\\.)as\\\\b","name":"keyword.control.import.python"},{"match":"\\\\b(?<!\\\\.)(async|continue|del|assert|break|finally|for|from|elif|else|if|except|pass|raise|return|try|while|with)\\\\b","name":"keyword.control.flow.python"},{"match":"\\\\b(?<!\\\\.)(global|nonlocal)\\\\b","name":"storage.modifier.declaration.python"},{"match":"\\\\b(?<!\\\\.)(class)\\\\b","name":"storage.type.class.python"},{"captures":{"1":{"name":"keyword.control.flow.python"}},"match":"^\\\\s*(case|match)(?=\\\\s*([-+\\\\w\\\\d(\\\\[{'\\":#]|$))\\\\b"}]},"string":{"patterns":[{"include":"#string-quoted-multi-line"},{"include":"#string-quoted-single-line"},{"include":"#string-bin-quoted-multi-line"},{"include":"#string-bin-quoted-single-line"},{"include":"#string-raw-quoted-multi-line"},{"include":"#string-raw-quoted-single-line"},{"include":"#string-raw-bin-quoted-multi-line"},{"include":"#string-raw-bin-quoted-single-line"},{"include":"#fstring-fnorm-quoted-multi-line"},{"include":"#fstring-fnorm-quoted-single-line"},{"include":"#fstring-normf-quoted-multi-line"},{"include":"#fstring-normf-quoted-single-line"},{"include":"#fstring-raw-quoted-multi-line"},{"include":"#fstring-raw-quoted-single-line"}]},"string-bin-quoted-multi-line":{"begin":"(\\\\b[bB])('''|\\"\\"\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.binary.multi.python","patterns":[{"include":"#string-entity"}]},"string-bin-quoted-single-line":{"begin":"(\\\\b[bB])((['\\"]))","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.binary.single.python","patterns":[{"include":"#string-entity"}]},"string-brace-formatting":{"patterns":[{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"},"3":{"name":"storage.type.format.python"},"4":{"name":"storage.type.format.python"}},"match":"({{|}}|(?:{\\\\w*(\\\\.[[:alpha:]_]\\\\w*|\\\\[[^\\\\]'\\"]+\\\\])*(![rsa])?(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)?}))","name":"meta.format.brace.python"},{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"},"3":{"name":"storage.type.format.python"},"4":{"name":"storage.type.format.python"}},"match":"({\\\\w*(\\\\.[[:alpha:]_]\\\\w*|\\\\[[^\\\\]'\\"]+\\\\])*(![rsa])?(:)[^'\\"{}\\\\n]*(?:\\\\{[^'\\"}\\\\n]*?\\\\}[^'\\"{}\\\\n]*)*})","name":"meta.format.brace.python"}]},"string-consume-escape":{"match":"\\\\\\\\['\\"\\\\n\\\\\\\\]"},"string-entity":{"patterns":[{"include":"#escape-sequence"},{"include":"#string-line-continuation"},{"include":"#string-formatting"}]},"string-formatting":{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"match":"(%(\\\\([\\\\w\\\\s]*\\\\))?[-+#0 ]*(\\\\d+|\\\\*)?(\\\\.(\\\\d+|\\\\*))?([hlL])?[diouxXeEfFgGcrsab%])","name":"meta.format.percent.python"},"string-line-continuation":{"match":"\\\\\\\\$","name":"constant.language.python"},"string-multi-bad-brace1-formatting-raw":{"begin":"(?=\\\\{%(.*?(?!'''|\\"\\"\\"))%\\\\})","comment":"template using {% ... %}","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#string-consume-escape"}]},"string-multi-bad-brace1-formatting-unicode":{"begin":"(?=\\\\{%(.*?(?!'''|\\"\\"\\"))%\\\\})","comment":"template using {% ... %}","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"}]},"string-multi-bad-brace2-formatting-raw":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!'''|\\"\\"\\")[^!:\\\\.\\\\[}\\\\w]).*?(?!'''|\\"\\"\\")\\\\})","comment":"odd format or format-like syntax","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"}]},"string-multi-bad-brace2-formatting-unicode":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!'''|\\"\\"\\")[^!:\\\\.\\\\[}\\\\w]).*?(?!'''|\\"\\"\\")\\\\})","comment":"odd format or format-like syntax","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#string-entity"}]},"string-quoted-multi-line":{"begin":"(?:\\\\b([rR])(?=[uU]))?([uU])?('''|\\"\\"\\")","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.multi.python","patterns":[{"include":"#string-multi-bad-brace1-formatting-unicode"},{"include":"#string-multi-bad-brace2-formatting-unicode"},{"include":"#string-unicode-guts"}]},"string-quoted-single-line":{"begin":"(?:\\\\b([rR])(?=[uU]))?([uU])?((['\\"]))","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\3)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.single.python","patterns":[{"include":"#string-single-bad-brace1-formatting-unicode"},{"include":"#string-single-bad-brace2-formatting-unicode"},{"include":"#string-unicode-guts"}]},"string-raw-bin-guts":{"patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"}]},"string-raw-bin-quoted-multi-line":{"begin":"(\\\\b(?:R[bB]|[bB]R))('''|\\"\\"\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.binary.multi.python","patterns":[{"include":"#string-raw-bin-guts"}]},"string-raw-bin-quoted-single-line":{"begin":"(\\\\b(?:R[bB]|[bB]R))((['\\"]))","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.binary.single.python","patterns":[{"include":"#string-raw-bin-guts"}]},"string-raw-guts":{"patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"},{"include":"#string-brace-formatting"}]},"string-raw-quoted-multi-line":{"begin":"\\\\b(([uU]R)|(R))('''|\\"\\"\\")","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\4)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.multi.python","patterns":[{"include":"#string-multi-bad-brace1-formatting-raw"},{"include":"#string-multi-bad-brace2-formatting-raw"},{"include":"#string-raw-guts"}]},"string-raw-quoted-single-line":{"begin":"\\\\b(([uU]R)|(R))((['\\"]))","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\4)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.single.python","patterns":[{"include":"#string-single-bad-brace1-formatting-raw"},{"include":"#string-single-bad-brace2-formatting-raw"},{"include":"#string-raw-guts"}]},"string-single-bad-brace1-formatting-raw":{"begin":"(?=\\\\{%(.*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n)))%\\\\})","comment":"template using {% ... %}","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#string-consume-escape"}]},"string-single-bad-brace1-formatting-unicode":{"begin":"(?=\\\\{%(.*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n)))%\\\\})","comment":"template using {% ... %}","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"}]},"string-single-bad-brace2-formatting-raw":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))[^!:\\\\.\\\\[}\\\\w]).*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))\\\\})","comment":"odd format or format-like syntax","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"}]},"string-single-bad-brace2-formatting-unicode":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))[^!:\\\\.\\\\[}\\\\w]).*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))\\\\})","comment":"odd format or format-like syntax","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#string-entity"}]},"string-unicode-guts":{"patterns":[{"include":"#escape-sequence-unicode"},{"include":"#string-entity"},{"include":"#string-brace-formatting"}]}},"scopeName":"source.vyper","aliases":["vy"]}`)),xse=[Bse]});var BP={};x(BP,{default:()=>Ese});var vse,Ese,xP=_(()=>{vse=Object.freeze(JSON.parse(`{"displayName":"WebAssembly","name":"wasm","patterns":[{"include":"#comments"},{"include":"#strings"},{"include":"#instructions"},{"include":"#types"},{"include":"#modules"},{"include":"#constants"},{"include":"#invalid"}],"repository":{"comments":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.wat"}},"comment":"Line comment","match":"(;;).*$","name":"comment.line.wat"},{"begin":"\\\\(;","beginCaptures":{"0":{"name":"punctuation.definition.comment.wat"}},"comment":"Block comment","end":";\\\\)","endCaptures":{"0":{"name":"punctuation.definition.comment.wat"}},"name":"comment.block.wat"}]},"constants":{"patterns":[{"comment":"Fixed-width SIMD","patterns":[{"captures":{"1":{"name":"support.type.wat"}},"comment":"Vector literal (i8x16) [simd]","match":"\\\\b(i8x16)(?:\\\\s+0x[0-9a-fA-F]{1,2}){16}\\\\b","name":"constant.numeric.vector.wat"},{"captures":{"1":{"name":"support.type.wat"}},"comment":"Vector literal (i16x8) [simd]","match":"\\\\b(i16x8)(?:\\\\s+0x[0-9a-fA-F]{1,4}){8}\\\\b","name":"constant.numeric.vector.wat"},{"captures":{"1":{"name":"support.type.wat"}},"comment":"Vector literal (i32x4) [simd]","match":"\\\\b(i32x4)(?:\\\\s+0x[0-9a-fA-F]{1,8}){4}\\\\b","name":"constant.numeric.vector.wat"},{"captures":{"1":{"name":"support.type.wat"}},"comment":"Vector literal (i64x2) [simd]","match":"\\\\b(i64x2)(?:\\\\s+0x[0-9a-fA-F]{1,16}){2}\\\\b","name":"constant.numeric.vector.wat"}]},{"comment":"MVP","patterns":[{"comment":"Floating point literal","match":"[+-]?\\\\b[0-9][0-9]*(?:\\\\.[0-9][0-9]*)?(?:[eE][+-]?[0-9]+)?\\\\b","name":"constant.numeric.float.wat"},{"comment":"Floating point hexadecimal literal","match":"[+-]?\\\\b0x([0-9a-fA-F]*\\\\.[0-9a-fA-F]+|[0-9a-fA-F]+\\\\.?)[Pp][+-]?[0-9]+\\\\b","name":"constant.numeric.float.wat"},{"comment":"Floating point infinity","match":"[+-]?\\\\binf\\\\b","name":"constant.numeric.float.wat"},{"comment":"Floating point literal (NaN)","match":"[+-]?\\\\bnan:0x[0-9a-fA-F][0-9a-fA-F]*\\\\b","name":"constant.numeric.float.wat"},{"comment":"Integer literal","match":"[+-]?\\\\b(?:0x[0-9a-fA-F][0-9a-fA-F]*|\\\\d[\\\\d]*)\\\\b","name":"constant.numeric.integer.wat"}]}]},"instructions":{"patterns":[{"comment":"Non-trapping float-to-int conversions","patterns":[{"captures":{"1":{"name":"support.class.wat"}},"comment":"Conversion instruction [nontrapping-float-to-int-conversions]","match":"\\\\b(i32|i64)\\\\.trunc_sat_f(?:32|64)_[su]\\\\b","name":"keyword.operator.word.wat"}]},{"comment":"Sign-extension operators","patterns":[{"captures":{"1":{"name":"support.class.wat"}},"comment":"Numeric instruction (i32) [sign-extension-ops]","match":"\\\\b(i32)\\\\.(?:extend(?:8|16)_s)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Numeric instruction (i64) [sign-extension-ops]","match":"\\\\b(i64)\\\\.(?:extend(?:8|16|32)_s)\\\\b","name":"keyword.operator.word.wat"}]},{"comment":"Bulk memory operations","patterns":[{"captures":{"1":{"name":"support.class.wat"}},"comment":"Memory instruction [bulk-memory-operations]","match":"\\\\b(memory)\\\\.(?:copy|fill|init|drop)\\\\b","name":"keyword.operator.word.wat"}]},{"comment":"Fixed-width SIMD","patterns":[{"captures":{"1":{"name":"support.class.wat"}},"comment":"Vector instruction (v128) [simd]","match":"\\\\b(v128)\\\\.(?:const|and|or|xor|not|andnot|bitselect|load|store)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Vector instruction (i8x16) [simd]","match":"\\\\b(i8x16)\\\\.(?:shuffle|swizzle|splat|replace_lane|add|sub|mul|neg|shl|shr_[su]|eq|ne|lt_[su]|le_[su]|gt_[su]|ge_[su]|min_[su]|max_[su]|any_true|all_true|extract_lane_[su]|add_saturate_[su]|sub_saturate_[su]|avgr_u|narrow_i16x8_[su])\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Vector instruction (i16x8) [simd]","match":"\\\\b(i16x8)\\\\.(?:splat|replace_lane|add|sub|mul|neg|shl|shr_[su]|eq|ne|lt_[su]|le_[su]|gt_[su]|ge_[su]|min_[su]|max_[su]|any_true|all_true|extract_lane_[su]|add_saturate_[su]|sub_saturate_[su]|avgr_u|load8x8_[su]|narrow_i32x4_[su]|widen_(low|high)_i8x16_[su])\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Vector instruction (i32x4) [simd]","match":"\\\\b(i32x4)\\\\.(?:splat|replace_lane|add|sub|mul|neg|shl|shr_[su]|eq|ne|lt_[su]|le_[su]|gt_[su]|ge_[su]|min_[su]|max_[su]|any_true|all_true|extract_lane|load16x4_[su]|trunc_sat_f32x4_[su]|widen_(low|high)_i16x8_[su])\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Vector instruction (i64x2) [simd]","match":"\\\\b(i64x2)\\\\.(?:splat|replace_lane|add|sub|mul|neg|shl|shr_[su]|extract_lane|load32x2_[su])\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Vector instruction (f32x4) [simd]","match":"\\\\b(f32x4)\\\\.(?:splat|replace_lane|add|sub|mul|neg|extract_lane|eq|ne|lt|le|gt|ge|abs|min|max|div|sqrt|convert_i32x4_[su])\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Vector instruction (f64x2) [simd]","match":"\\\\b(f64x2)\\\\.(?:splat|replace_lane|add|sub|mul|neg|extract_lane|eq|ne|lt|le|gt|ge|abs|min|max|div|sqrt)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Vector instruction (v8x16) [simd]","match":"\\\\b(v8x16)\\\\.(?:load_splat|shuffle|swizzle)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Vector instruction (v16x8) [simd]","match":"\\\\b(v16x8)\\\\.load_splat\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Vector instruction (v32x4) [simd]","match":"\\\\b(v32x4)\\\\.load_splat\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Vector instruction (v64x2) [simd]","match":"\\\\b(v64x2)\\\\.load_splat\\\\b","name":"keyword.operator.word.wat"}]},{"comment":"Threads","patterns":[{"captures":{"1":{"name":"support.class.wat"},"2":{"name":"support.class.wat"},"3":{"name":"support.class.wat"},"4":{"name":"support.class.wat"}},"comment":"Atomic instruction (i32) [threads]","match":"\\\\b(i32)\\\\.(atomic)\\\\.(?:load(?:8_u|16_u)?|store(?:8|16)?|wait|(rmw)\\\\.(?:add|sub|and|or|xor|xchg|cmpxchg)|(rmw8|rmw16)\\\\.(?:add_u|sub_u|and_u|or_u|xor_u|xchg_u|cmpxchg_u))\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"},"2":{"name":"support.class.wat"},"3":{"name":"support.class.wat"},"4":{"name":"support.class.wat"}},"comment":"Atomic instruction (i64) [threads]","match":"\\\\b(i64)\\\\.(atomic)\\\\.(?:load(?:8_u|16_u|32_u)?|store(?:8|16|32)?|wait|(rmw)\\\\.(?:add|sub|and|or|xor|xchg|cmpxchg)|(rmw8|rmw16|rmw32)\\\\.(?:add_u|sub_u|and_u|or_u|xor_u|xchg_u|cmpxchg_u))\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Atomic instruction [threads]","match":"\\\\b(atomic)\\\\.(?:notify|fence)\\\\b","name":"keyword.operator.word.wat"},{"comment":"Shared modifier [threads]","match":"\\\\bshared\\\\b","name":"storage.modifier.wat"}]},{"comment":"Reference types","patterns":[{"captures":{"1":{"name":"support.class.wat"}},"comment":"Reference instruction [reference-types]","match":"\\\\b(ref)\\\\.(?:null|is_null|func|extern)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Table instruction [reference-types]","match":"\\\\b(table)\\\\.(?:get|size|grow|fill|init|copy)\\\\b","name":"keyword.operator.word.wat"},{"comment":"Type name [reference-types]","match":"\\\\b(?:externref|funcref|nullref)\\\\b","name":"entity.name.type.wat"}]},{"comment":"Tail Call","patterns":[{"comment":"Control instruction [tail-call]","match":"\\\\breturn_call(?:_indirect)?\\\\b","name":"keyword.control.wat"}]},{"comment":"Exception handling","patterns":[{"comment":"Control instruction [exception-handling]","match":"\\\\b(?:try|catch|throw|rethrow|br_on_exn)\\\\b","name":"keyword.control.wat"},{"comment":"Module element [exception-handling]","match":"(?<=\\\\()event\\\\b","name":"storage.type.wat"}]},{"comment":"Binaryen extensions","patterns":[{"captures":{"1":{"name":"support.class.wat"}},"comment":"Pseudo stack instruction [binaryen]","match":"\\\\b(i32|i64|f32|f64|externref|funcref|nullref|exnref)\\\\.(?:push|pop)\\\\b","name":"keyword.operator.word.wat"}]},{"comment":"MVP","patterns":[{"captures":{"1":{"name":"support.class.type.wat"}},"comment":"Memory instruction (i32) [mvp]","match":"\\\\b(i32)\\\\.(?:load|load(?:8|16)(?:_[su])?|store(?:8|16)?)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.type.wat"}},"comment":"Memory instruction (i64) [mvp]","match":"\\\\b(i64)\\\\.(?:load|load(?:8|16|32)(?:_[su])?|store(?:8|16|32)?)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.type.wat"}},"comment":"Memory instruction (f32/f64) [mvp]","match":"\\\\b(f32|f64)\\\\.(?:load|store)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.memory.wat"}},"comment":"Memory instruction [mvp]","match":"\\\\b(memory)\\\\.(?:size|grow)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"entity.other.attribute-name.wat"}},"comment":"Memory instruction attribute [mvp]","match":"\\\\b(offset|align)=\\\\b"},{"captures":{"1":{"name":"support.class.local.wat"}},"comment":"Variable instruction (local) [mvp]","match":"\\\\b(local)\\\\.(?:get|set|tee)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.global.wat"}},"comment":"Variable instruction (global) [mvp]","match":"\\\\b(global)\\\\.(?:get|set)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.type.wat"}},"comment":"Numeric instruction (i32/i64) [mvp]","match":"\\\\b(i32|i64)\\\\.(const|eqz|eq|ne|lt_[su]|gt_[su]|le_[su]|ge_[su]|clz|ctz|popcnt|add|sub|mul|div_[su]|rem_[su]|and|or|xor|shl|shr_[su]|rotl|rotr)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.type.wat"}},"comment":"Numeric instruction (f32/f64) [mvp]","match":"\\\\b(f32|f64)\\\\.(const|eq|ne|lt|gt|le|ge|abs|neg|ceil|floor|trunc|nearest|sqrt|add|sub|mul|div|min|max|copysign)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.type.wat"}},"comment":"Conversion instruction (i32) [mvp]","match":"\\\\b(i32)\\\\.(wrap_i64|trunc_(f32|f64)_[su]|reinterpret_f32)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.type.wat"}},"comment":"Conversion instruction (i64) [mvp]","match":"\\\\b(i64)\\\\.(extend_i32_[su]|trunc_f(32|64)_[su]|reinterpret_f64)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.type.wat"}},"comment":"Conversion instruction (f32) [mvp]","match":"\\\\b(f32)\\\\.(convert_i(32|64)_[su]|demote_f64|reinterpret_i32)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.type.wat"}},"comment":"Conversion instruction (f64) [mvp]","match":"\\\\b(f64)\\\\.(convert_i(32|64)_[su]|promote_f32|reinterpret_i64)\\\\b","name":"keyword.operator.word.wat"},{"comment":"Control instruction [mvp]","match":"\\\\b(?:unreachable|nop|block|loop|if|then|else|end|br|br_if|br_table|return|call|call_indirect)\\\\b","name":"keyword.control.wat"},{"comment":"Parametric instruction [mvp]","match":"\\\\b(?:drop|select)\\\\b","name":"keyword.operator.word.wat"}]},{"comment":"GC Instructions","patterns":[{"captures":{"1":{"name":"support.class.wat"}},"comment":"Reference Instructions [GC]","match":"\\\\b(ref)\\\\.(?:eq|test|cast)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Struct Instructions [GC]","match":"\\\\b(struct)\\\\.(?:new_canon|new_canon_default|get|get_s|get_u|set)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Array Instructions [GC]","match":"\\\\b(array)\\\\.(?:new_canon|new_canon_default|get|get_s|get_u|set|len|new_canon_fixed|new_canon_data|new_canon_elem)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"i31 Instructions [GC]","match":"\\\\b(i31)\\\\.(?:new|get_s|get_u)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Branch Instructions [GC]","match":"\\\\b(?:br_on_non_null|br_on_cast|br_on_cast_fail)\\\\b","name":"keyword.operator.word.wat"},{"captures":{"1":{"name":"support.class.wat"}},"comment":"Reference Instructions [GC]","match":"\\\\b(extern)\\\\.(?:internalize|externalize)\\\\b","name":"keyword.operator.word.wat"}]}]},"invalid":{"patterns":[{"match":"[^\\\\s()]+","name":"invalid.wat"}]},"modules":{"patterns":[{"comment":"Bulk memory operations","patterns":[{"captures":{"1":{"name":"storage.modifier.wat"}},"comment":"Passive modifier [bulk-memory-operations]","match":"(?<=\\\\(data)\\\\s+(passive)\\\\b"}]},{"comment":"MVP","patterns":[{"comment":"Module element [mvp]","match":"(?<=\\\\()(?:module|import|export|memory|data|table|elem|start|func|type|param|result|global|local)\\\\b","name":"storage.type.wat"},{"captures":{"1":{"name":"storage.modifier.wat"}},"comment":"Mutable global modifier [mvp]","match":"(?<=\\\\()\\\\s*(mut)\\\\b","name":"storage.modifier.wat"},{"captures":{"1":{"name":"entity.name.function.wat"}},"comment":"Function name [mvp]","match":"(?<=\\\\(func|\\\\(start|call|return_call|ref\\\\.func)\\\\s+(\\\\$[0-9A-Za-z!#$%&'*+\\\\-./:<=>?@\\\\\\\\^_\`|~]*)"},{"begin":"\\\\)\\\\s+(\\\\$[0-9A-Za-z!#$%&'*+\\\\-./:<=>?@\\\\\\\\^_\`|~]*)","beginCaptures":{"1":{"name":"entity.name.function.wat"}},"comment":"Function name(s) (elem) [mvp]","end":"\\\\)","patterns":[{"match":"(?<=\\\\s)\\\\$[0-9A-Za-z!#$%&'*+\\\\-./:<=>?@\\\\\\\\^_\`|~]*","name":"entity.name.function.wat"}]},{"captures":{"1":{"name":"support.type.function.wat"}},"comment":"Function type [mvp]","match":"(?<=\\\\(type)\\\\s+(\\\\$[0-9A-Za-z!#$%&'*+\\\\-./:<=>?@\\\\\\\\^_\`|~]*)"},{"comment":"Variable name or branch label [mvp]","match":"\\\\$[0-9A-Za-z!#$%&'*+\\\\-./:<=>?@\\\\\\\\^_\`|~]*\\\\b","name":"variable.other.wat"}]}]},"strings":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin"}},"comment":"String literal","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end"}},"name":"string.quoted.double.wat","patterns":[{"match":"\\\\\\\\(n|t|\\\\\\\\|'|\\"|[0-9a-fA-F]{2})","name":"constant.character.escape.wat"}]},"types":{"patterns":[{"comment":"Fixed-width SIMD","patterns":[{"comment":"Type name [simd]","match":"\\\\bv128\\\\b(?!\\\\.)","name":"entity.name.type.wat"}]},{"comment":"Reference types","patterns":[{"comment":"Type name [reference-types]","match":"\\\\b(?:externref|funcref|nullref)\\\\b(?!\\\\.)","name":"entity.name.type.wat"}]},{"comment":"Exception handling","patterns":[{"comment":"Type name [exception-handling]","match":"\\\\bexnref\\\\b(?!\\\\.)","name":"entity.name.type.wat"}]},{"comment":"MVP","patterns":[{"comment":"Type name [mvp]","match":"\\\\b(?:i32|i64|f32|f64)\\\\b(?!\\\\.)","name":"entity.name.type.wat"}]},{"comment":"GC Types","patterns":[{"comment":"Type name [GC]","match":"\\\\b(?:i8|i16|ref|funcref|externref|anyref|eqref|i31ref|nullfuncref|nullexternref|structref|arrayref|nullref)\\\\b(?!\\\\.)","name":"entity.name.type.wat"}]},{"comment":"GC Heap Types","patterns":[{"comment":"Type name [GC]","match":"\\\\b(?:type|func|extern|any|eq|nofunc|noextern|struct|array|none)\\\\b(?!\\\\.)","name":"entity.name.type.wat"}]},{"comment":"GC Structured and sub Types","patterns":[{"comment":"Type name [GC]","match":"\\\\b(?:struct|array|sub|final|rec|field|mut)\\\\b(?!\\\\.)","name":"entity.name.type.wat"}]}]}},"scopeName":"source.wat"}`)),Ese=[vse]});var vP={};x(vP,{default:()=>Ise});var Qse,Ise,EP=_(()=>{Qse=Object.freeze(JSON.parse('{"displayName":"Wenyan","name":"wenyan","patterns":[{"include":"#keywords"},{"include":"#constants"},{"include":"#operators"},{"include":"#symbols"},{"include":"#expression"},{"include":"#comment-blocks"},{"include":"#comment-lines"}],"repository":{"comment-blocks":{"begin":"(\u6CE8\u66F0|\u758F\u66F0|\u6279\u66F0)\u3002?(\u300C\u300C|\u300E)","end":"(\u300D\u300D|\u300F)","name":"comment.block","patterns":[{"match":"\\\\\\\\.","name":"constant.character"}]},"comment-lines":{"begin":"\u6CE8\u66F0|\u758F\u66F0|\u6279\u66F0","end":"$","name":"comment.line","patterns":[{"match":"\\\\\\\\.","name":"constant.character"}]},"constants":{"patterns":[{"match":"\u8CA0|\xB7|\u53C8|\u96F6|\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D|\u5341|\u767E|\u5343|\u842C|\u5104|\u5146|\u4EAC|\u5793|\u79ED|\u7A70|\u6E9D|\u6F97|\u6B63|\u8F09|\u6975|\u5206|\u91D0|\u6BEB|\u7D72|\u5FFD|\u5FAE|\u7E96|\u6C99|\u5875|\u57C3|\u6E3A|\u6F20","name":"constant.numeric"},{"match":"\u5176|\u9670|\u967D","name":"constant.language"},{"begin":"\u300C\u300C|\u300E","end":"\u300D\u300D|\u300F","name":"string.quoted","patterns":[{"match":"\\\\\\\\.","name":"constant.character"}]}]},"expression":{"patterns":[{"include":"#variables"}]},"keywords":{"patterns":[{"match":"\u6578|\u5217|\u8A00|\u8853|\u723B|\u7269|\u5143","name":"storage.type"},{"match":"\u4E43\u884C\u662F\u8853\u66F0|\u82E5\u5176\u4E0D\u7136\u8005|\u4E43\u6B78\u7A7A\u7121|\u6B32\u884C\u662F\u8853|\u4E43\u6B62\u662F\u904D|\u82E5\u5176\u7136\u8005|\u5176\u7269\u5982\u662F|\u4E43\u5F97\u77E3|\u4E4B\u8853\u4E5F|\u5FC5\u5148\u5F97|\u662F\u8853\u66F0|\u6046\u70BA\u662F|\u4E4B\u7269\u4E5F|\u4E43\u5F97|\u662F\u8B02|\u4E91\u4E91|\u4E2D\u4E4B|\u70BA\u662F|\u4E43\u6B62|\u82E5\u975E|\u6216\u82E5|\u4E4B\u9577|\u5176\u9918","name":"keyword.control"},{"match":"\u6216\u4E91|\u84CB\u8B02","name":"keyword.control"},{"match":"\u4E2D\u6709\u967D\u4E4E|\u4E2D\u7121\u9670\u4E4E|\u6240\u9918\u5E7E\u4F55|\u4E0D\u7B49\u65BC|\u4E0D\u5927\u65BC|\u4E0D\u5C0F\u65BC|\u7B49\u65BC|\u5927\u65BC|\u5C0F\u65BC|\u52A0|\u6E1B|\u4E58|\u9664|\u8B8A|\u4EE5|\u65BC","name":"keyword.operator"},{"match":"\u4E0D\u77E5\u4F55\u798D\u6B5F|\u4E0D\u5FA9\u5B58\u77E3|\u59D1\u5984\u884C\u6B64|\u5982\u4E8B\u4E0D\u8AE7|\u540D\u4E4B\u66F0|\u543E\u5617\u89C0|\u4E4B\u798D\u6B5F|\u4E43\u4F5C\u7F77|\u543E\u6709|\u4ECA\u6709|\u7269\u4E4B|\u66F8\u4E4B|\u4EE5\u65BD|\u6614\u4E4B|\u662F\u77E3|\u4E4B\u66F8|\u65B9\u609F|\u4E4B\u7FA9|\u55DA\u547C|\u4E4B\u798D|\u6709|\u65BD|\u66F0|\u566B|\u53D6|\u4ECA|\u592B|\u4E2D|\u8C48","name":"keyword.other"},{"match":"\u4E5F|\u51E1|\u904D|\u82E5|\u8005|\u4E4B|\u5145|\u929C","name":"keyword.control"}]},"symbols":{"patterns":[{"match":"\u3002|\u3001","name":"punctuation.separator"}]},"variables":{"begin":"\u300C","end":"\u300D","name":"variable.other","patterns":[{"match":"\\\\\\\\.","name":"constant.character"}]}},"scopeName":"source.wenyan","aliases":["\u6587\u8A00"]}')),Ise=[Qse]});var QP={};x(QP,{default:()=>Fse});var Dse,Fse,IP=_(()=>{Dse=Object.freeze(JSON.parse('{"displayName":"WGSL","name":"wgsl","patterns":[{"include":"#line_comments"},{"include":"#block_comments"},{"include":"#keywords"},{"include":"#attributes"},{"include":"#functions"},{"include":"#function_calls"},{"include":"#constants"},{"include":"#types"},{"include":"#variables"},{"include":"#punctuation"}],"repository":{"attributes":{"patterns":[{"captures":{"1":{"name":"keyword.operator.attribute.at"},"2":{"name":"entity.name.attribute.wgsl"}},"comment":"attribute declaration","match":"(@)([A-Za-z_]+)","name":"meta.attribute.wgsl"}]},"block_comments":{"patterns":[{"comment":"empty block comments","match":"/\\\\*\\\\*/","name":"comment.block.wgsl"},{"begin":"/\\\\*\\\\*","comment":"block documentation comments","end":"\\\\*/","name":"comment.block.documentation.wgsl","patterns":[{"include":"#block_comments"}]},{"begin":"/\\\\*(?!\\\\*)","comment":"block comments","end":"\\\\*/","name":"comment.block.wgsl","patterns":[{"include":"#block_comments"}]}]},"constants":{"patterns":[{"comment":"decimal float literal","match":"(-?\\\\b[0-9][0-9]*\\\\.[0-9][0-9]*)([eE][+-]?[0-9]+)?\\\\b","name":"constant.numeric.float.wgsl"},{"comment":"int literal","match":"-?\\\\b0x[0-9a-fA-F]+\\\\b|\\\\b0\\\\b|-?\\\\b[1-9][0-9]*\\\\b","name":"constant.numeric.decimal.wgsl"},{"comment":"uint literal","match":"\\\\b0x[0-9a-fA-F]+u\\\\b|\\\\b0u\\\\b|\\\\b[1-9][0-9]*u\\\\b","name":"constant.numeric.decimal.wgsl"},{"comment":"boolean constant","match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.wgsl"}]},"function_calls":{"patterns":[{"begin":"([A-Za-z0-9_]+)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.wgsl"},"2":{"name":"punctuation.brackets.round.wgsl"}},"comment":"function/method calls","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.brackets.round.wgsl"}},"name":"meta.function.call.wgsl","patterns":[{"include":"#line_comments"},{"include":"#block_comments"},{"include":"#keywords"},{"include":"#attributes"},{"include":"#function_calls"},{"include":"#constants"},{"include":"#types"},{"include":"#variables"},{"include":"#punctuation"}]}]},"functions":{"patterns":[{"begin":"\\\\b(fn)\\\\s+([A-Za-z0-9_]+)((\\\\()|(<))","beginCaptures":{"1":{"name":"keyword.other.fn.wgsl"},"2":{"name":"entity.name.function.wgsl"},"4":{"name":"punctuation.brackets.round.wgsl"}},"comment":"function definition","end":"\\\\{","endCaptures":{"0":{"name":"punctuation.brackets.curly.wgsl"}},"name":"meta.function.definition.wgsl","patterns":[{"include":"#line_comments"},{"include":"#block_comments"},{"include":"#keywords"},{"include":"#attributes"},{"include":"#function_calls"},{"include":"#constants"},{"include":"#types"},{"include":"#variables"},{"include":"#punctuation"}]}]},"keywords":{"patterns":[{"comment":"other keywords","match":"\\\\b(bitcast|block|break|case|continue|continuing|default|discard|else|elseif|enable|fallthrough|for|function|if|loop|private|read|read_write|return|storage|switch|uniform|while|workgroup|write)\\\\b","name":"keyword.control.wgsl"},{"comment":"reserved keywords","match":"\\\\b(asm|const|do|enum|handle|mat|premerge|regardless|typedef|unless|using|vec|void)\\\\b","name":"keyword.control.wgsl"},{"comment":"storage keywords","match":"\\\\b(let|var)\\\\b","name":"keyword.other.wgsl storage.type.wgsl"},{"comment":"type keyword","match":"\\\\b(type)\\\\b","name":"keyword.declaration.type.wgsl storage.type.wgsl"},{"comment":"enum keyword","match":"\\\\b(enum)\\\\b","name":"keyword.declaration.enum.wgsl storage.type.wgsl"},{"comment":"struct keyword","match":"\\\\b(struct)\\\\b","name":"keyword.declaration.struct.wgsl storage.type.wgsl"},{"comment":"fn","match":"\\\\bfn\\\\b","name":"keyword.other.fn.wgsl"},{"comment":"logical operators","match":"(\\\\^|\\\\||\\\\|\\\\||&&|<<|>>|!)(?!=)","name":"keyword.operator.logical.wgsl"},{"comment":"logical AND, borrow references","match":"&(?![&=])","name":"keyword.operator.borrow.and.wgsl"},{"comment":"assignment operators","match":"(\\\\+=|-=|\\\\*=|/=|%=|\\\\^=|&=|\\\\|=|<<=|>>=)","name":"keyword.operator.assignment.wgsl"},{"comment":"single equal","match":"(?<![<>])=(?!=|>)","name":"keyword.operator.assignment.equal.wgsl"},{"comment":"comparison operators","match":"(=(=)?(?!>)|!=|<=|(?<!=)>=)","name":"keyword.operator.comparison.wgsl"},{"comment":"math operators","match":"(([+%]|(\\\\*(?!\\\\w)))(?!=))|(-(?!>))|(/(?!/))","name":"keyword.operator.math.wgsl"},{"comment":"dot access","match":"\\\\.(?!\\\\.)","name":"keyword.operator.access.dot.wgsl"},{"comment":"dashrocket, skinny arrow","match":"->","name":"keyword.operator.arrow.skinny.wgsl"}]},"line_comments":{"comment":"single line comment","match":"\\\\s*//.*","name":"comment.line.double-slash.wgsl"},"punctuation":{"patterns":[{"comment":"comma","match":",","name":"punctuation.comma.wgsl"},{"comment":"curly braces","match":"[{}]","name":"punctuation.brackets.curly.wgsl"},{"comment":"parentheses, round brackets","match":"[()]","name":"punctuation.brackets.round.wgsl"},{"comment":"semicolon","match":";","name":"punctuation.semi.wgsl"},{"comment":"square brackets","match":"[\\\\[\\\\]]","name":"punctuation.brackets.square.wgsl"},{"comment":"angle brackets","match":"(?<![=-])[<>]","name":"punctuation.brackets.angle.wgsl"}]},"types":{"comment":"types","name":"storage.type.wgsl","patterns":[{"comment":"scalar Types","match":"\\\\b(bool|i32|u32|f32)\\\\b","name":"storage.type.wgsl"},{"comment":"reserved scalar Types","match":"\\\\b(i64|u64|f64)\\\\b","name":"storage.type.wgsl"},{"comment":"vector type aliasses","match":"\\\\b(vec2i|vec3i|vec4i|vec2u|vec3u|vec4u|vec2f|vec3f|vec4f|vec2h|vec3h|vec4h)\\\\b","name":"storage.type.wgsl"},{"comment":"matrix type aliasses","match":"\\\\b(mat2x2f|mat2x3f|mat2x4f|mat3x2f|mat3x3f|mat3x4f|mat4x2f|mat4x3f|mat4x4f|mat2x2h|mat2x3h|mat2x4h|mat3x2h|mat3x3h|mat3x4h|mat4x2h|mat4x3h|mat4x4h)\\\\b","name":"storage.type.wgsl"},{"comment":"vector/matrix types","match":"\\\\b(vec[2-4]|mat[2-4]x[2-4])\\\\b","name":"storage.type.wgsl"},{"comment":"atomic types","match":"\\\\b(atomic)\\\\b","name":"storage.type.wgsl"},{"comment":"array types","match":"\\\\b(array)\\\\b","name":"storage.type.wgsl"},{"comment":"Custom type","match":"\\\\b([A-Z][A-Za-z0-9]*)\\\\b","name":"entity.name.type.wgsl"}]},"variables":{"patterns":[{"comment":"variables","match":"\\\\b(?<!(?<!\\\\.)\\\\.)(?:r#(?!(crate|[Ss]elf|super)))?[a-z0-9_]+\\\\b","name":"variable.other.wgsl"}]}},"scopeName":"source.wgsl"}')),Fse=[Dse]});var DP={};x(DP,{default:()=>Ose});var Sse,Ose,FP=_(()=>{Sse=Object.freeze(JSON.parse(`{"displayName":"Wikitext","name":"wikitext","patterns":[{"include":"#wikitext"},{"include":"text.html.basic"}],"repository":{"wikitext":{"patterns":[{"include":"#signature"},{"include":"#redirect"},{"include":"#magic-words"},{"include":"#argument"},{"include":"#template"},{"include":"#convert"},{"include":"#list"},{"include":"#table"},{"include":"#font-style"},{"include":"#internal-link"},{"include":"#external-link"},{"include":"#heading"},{"include":"#break"},{"include":"#wikixml"},{"include":"#extension-comments"}],"repository":{"argument":{"begin":"({{{)","end":"(}}})","name":"variable.parameter.wikitext","patterns":[{"captures":{"1":{"name":"variable.other.wikitext"},"2":{"name":"keyword.operator.wikitext"}},"match":"(?:^|\\\\G)([^#:\\\\|\\\\[\\\\]\\\\{\\\\}\\\\|]*)(\\\\|)"},{"include":"$self"}]},"break":{"match":"^-{4,}","name":"markup.changed.wikitext"},"convert":{"begin":"(-\\\\{(?!\\\\{))([a-zA-Z](\\\\|))?","captures":{"1":{"name":"punctuation.definition.tag.template.wikitext"},"2":{"name":"entity.name.function.type.wikitext"},"3":{"name":"keyword.operator.wikitext"}},"end":"(\\\\}-)","patterns":[{"include":"$self"},{"captures":{"1":{"name":"entity.name.tag.language.wikitext"},"2":{"name":"punctuation.separator.key-value.wikitext"},"3":{"name":"string.unquoted.text.wikitext","patterns":[{"include":"$self"}]},"4":{"name":"punctuation.terminator.rule.wikitext"}},"match":"(?:([a-zA-Z\\\\-]*)(:))?(.*?)(?:(;)|(?=\\\\}-))"}]},"extension-comments":{"begin":"(<%--)\\\\s*(\\\\[)([A-Z_]*)(\\\\])","beginCaptures":{"1":{"name":"punctuation.definition.comment.extension.wikitext"},"2":{"name":"punctuation.definition.tag.extension.wikitext"},"3":{"name":"storage.type.extension.wikitext"},"4":{"name":"punctuation.definition.tag.extension.wikitext"}},"end":"(\\\\[)([A-Z_]*)(\\\\])\\\\s*(--%>)","endCaptures":{"1":{"name":"punctuation.definition.tag.extension.wikitext"},"2":{"name":"storage.type.extension.wikitext"},"3":{"name":"punctuation.definition.tag.extension.wikitext"},"4":{"name":"punctuation.definition.comment.extension.wikitext"}},"name":"comment.block.documentation.special.extension.wikitext","patterns":[{"captures":{"0":{"name":"meta.object.member.extension.wikitext"},"1":{"name":"meta.object-literal.key.extension.wikitext"},"2":{"name":"punctuation.separator.dictionary.key-value.extension.wikitext"},"3":{"name":"punctuation.definition.string.begin.extension.wikitext"},"4":{"name":"string.quoted.other.extension.wikitext"},"5":{"name":"punctuation.definition.string.end.extension.wikitext"}},"match":"(\\\\w*)\\\\s*(=)\\\\s*(#)(.*?)(#)"}]},"external-link":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.tag.link.external.wikitext"},"2":{"name":"entity.name.tag.url.wikitext"},"3":{"name":"string.other.link.external.title.wikitext","patterns":[{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.link.external.wikitext"}},"match":"(\\\\[)((?:(?:(?:http(?:s)?)|(?:ftp(?:s)?)):\\\\/\\\\/)[\\\\w.-]+(?:\\\\.[\\\\w\\\\.-]+)+[\\\\w\\\\-\\\\.~:\\\\/?#%@!\\\\$&'\\\\(\\\\)\\\\*\\\\+,;=.]+)\\\\s*?([^\\\\]]*)(\\\\])","name":"meta.link.external.wikitext"},{"captures":{"1":{"name":"punctuation.definition.tag.link.external.wikitext"},"2":{"name":"invalid.illegal.bad-url.wikitext"},"3":{"name":"string.other.link.external.title.wikitext","patterns":[{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.link.external.wikitext"}},"match":"(\\\\[)([\\\\w.-]+(?:\\\\.[\\\\w\\\\.-]+)+[\\\\w\\\\-\\\\.~:\\\\/?#%@!\\\\$&'\\\\(\\\\)\\\\*\\\\+,;=.]+)\\\\s*?([^\\\\]]*)(\\\\])","name":"invalid.illegal.bad-link.wikitext"}]},"font-style":{"patterns":[{"include":"#bold"},{"include":"#italic"}],"repository":{"bold":{"begin":"(''')","end":"(''')|$","name":"markup.bold.wikitext","patterns":[{"include":"#italic"},{"include":"$self"}]},"italic":{"begin":"('')","end":"((?=[^'])|(?=''))''((?=[^'])|(?=''))|$","name":"markup.italic.wikitext","patterns":[{"include":"#bold"},{"include":"$self"}]}}},"heading":{"captures":{"2":{"name":"string.quoted.other.heading.wikitext","patterns":[{"include":"$self"}]}},"match":"^(={1,6})\\\\s*(.+?)\\\\s*(\\\\1)$","name":"markup.heading.wikitext"},"internal-link":{"TODO":"SINGLE LINE","begin":"(\\\\[\\\\[)(([^#:\\\\|\\\\[\\\\]\\\\{\\\\}]*:)*)?([^\\\\|\\\\[\\\\]]*)?","captures":{"1":{"name":"punctuation.definition.tag.link.internal.wikitext"},"2":{"name":"entity.name.tag.namespace.wikitext"},"4":{"name":"entity.other.attribute-name.wikitext"}},"end":"(\\\\]\\\\])","name":"string.quoted.internal-link.wikitext","patterns":[{"include":"$self"},{"captures":{"1":{"name":"keyword.operator.wikitext"},"5":{"name":"entity.other.attribute-name.localname.wikitext"}},"match":"(\\\\|)|(?:\\\\s*)(?:([-\\\\w.]+)((:)))?([-\\\\w.:]+)\\\\s*(=)"}]},"list":{"name":"markup.list.wikitext","patterns":[{"captures":{"1":{"name":"punctuation.definition.list.begin.markdown.wikitext"}},"match":"^([#*;:]+)"}]},"magic-words":{"patterns":[{"include":"#behavior-switches"},{"include":"#outdated-behavior-switches"},{"include":"#variables"}],"repository":{"behavior-switches":{"match":"(?i)(__)(NOTOC|FORCETOC|TOC|NOEDITSECTION|NEWSECTIONLINK|NOGALLERY|HIDDENCAT|EXPECTUNUSEDCATEGORY|NOCONTENTCONVERT|NOCC|NOTITLECONVERT|NOTC|INDEX|NOINDEX|STATICREDIRECT|NOGLOBAL|DISAMBIG)(__)","name":"constant.language.behavior-switcher.wikitext"},"outdated-behavior-switches":{"match":"(?i)(__)(START|END)(__)","name":"invalid.deprecated.behavior-switcher.wikitext"},"variables":{"patterns":[{"match":"(?i)(\\\\{\\\\{)(CURRENTYEAR|CURRENTMONTH|CURRENTMONTH1|CURRENTMONTHNAME|CURRENTMONTHNAMEGEN|CURRENTMONTHABBREV|CURRENTDAY|CURRENTDAY2|CURRENTDOW|CURRENTDAYNAME|CURRENTTIME|CURRENTHOUR|CURRENTWEEK|CURRENTTIMESTAMP|LOCALYEAR|LOCALMONTH|LOCALMONTH1|LOCALMONTHNAME|LOCALMONTHNAMEGEN|LOCALMONTHABBREV|LOCALDAY|LOCALDAY2|LOCALDOW|LOCALDAYNAME|LOCALTIME|LOCALHOUR|LOCALWEEK|LOCALTIMESTAMP)(\\\\}\\\\})","name":"constant.language.variables.time.wikitext"},{"match":"(?i)(\\\\{\\\\{)(SITENAME|SERVER|SERVERNAME|DIRMARK|DIRECTIONMARK|SCRIPTPATH|STYLEPATH|CURRENTVERSION|CONTENTLANGUAGE|CONTENTLANG|PAGEID|PAGELANGUAGE|CASCADINGSOURCES|REVISIONID|REVISIONDAY|REVISIONDAY2|REVISIONMONTH|REVISIONMONTH1|REVISIONYEAR|REVISIONTIMESTAMP|REVISIONUSER|REVISIONSIZE)(\\\\}\\\\})","name":"constant.language.variables.metadata.wikitext"},{"match":"ISBN\\\\s+((9[\\\\-\\\\s]?7[\\\\-\\\\s]?[89][\\\\-\\\\s]?)?([0-9][\\\\-\\\\s]?){10})","name":"constant.language.variables.isbn.wikitext"},{"match":"RFC\\\\s+[0-9]+","name":"constant.language.variables.rfc.wikitext"},{"match":"PMID\\\\s+[0-9]+","name":"constant.language.variables.pmid.wikitext"}]}}},"redirect":{"patterns":[{"captures":{"1":{"name":"keyword.control.redirect.wikitext"},"2":{"name":"punctuation.definition.tag.link.internal.begin.wikitext"},"3":{"name":"entity.name.tag.namespace.wikitext"},"4":null,"5":{"name":"entity.other.attribute-name.wikitext"},"6":{"name":"invalid.deprecated.ineffective.wikitext"},"7":{"name":"punctuation.definition.tag.link.internal.end.wikitext"}},"match":"(?i)(^\\\\s*?#REDIRECT)\\\\s*(\\\\[\\\\[)(([^#:\\\\|\\\\[\\\\]\\\\{\\\\}]*?:)*)?([^\\\\|\\\\[\\\\]]*)?(\\\\|[^\\\\[\\\\]]*?)?(\\\\]\\\\])"}]},"signature":{"patterns":[{"match":"~{3,5}","name":"keyword.other.signature.wikitext"}]},"table":{"patterns":[{"begin":"^\\\\s*(\\\\{\\\\|)(.*)$","captures":{"1":{"name":"punctuation.definition.tag.table.wikitext"},"2":{"patterns":[{"include":"text.html.basic#attribute"}]}},"end":"^\\\\s*(\\\\|\\\\})","name":"meta.tag.block.table.wikitext","patterns":[{"include":"$self"},{"captures":{"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"patterns":[{"include":"$self"},{"match":"\\\\|.*","name":"invalid.illegal.bad-table-context.wikitext"},{"include":"text.html.basic#attribute"}]}},"match":"^\\\\s*(\\\\|-)\\\\s*(.*)$","name":"meta.tag.block.table-row.wikitext"},{"begin":"^\\\\s*(!)(([^\\\\[]*?)(\\\\|))?(.*?)(?=(!!)|$)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":null,"3":{"patterns":[{"include":"$self"},{"include":"text.html.basic#attribute"}]},"4":{"name":"punctuation.definition.tag.wikitext"},"5":{"name":"markup.bold.style.wikitext"}},"end":"$","name":"meta.tag.block.th.heading","patterns":[{"captures":{"1":{"name":"punctuation.definition.tag.begin.wikitext"},"3":{"patterns":[{"include":"$self"},{"include":"text.html.basic#attribute"}]},"4":{"name":"punctuation.definition.tag.wikitext"},"5":{"name":"markup.bold.style.wikitext"}},"match":"(!!)(([^\\\\[]*?)(\\\\|))?(.*?)(?=(!!)|$)","name":"meta.tag.block.th.inline.wikitext"},{"include":"$self"}]},{"captures":{"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"string.unquoted.caption.wikitext"}},"end":"$","match":"^\\\\s*(\\\\|\\\\+)(.*?)$","name":"meta.tag.block.caption.wikitext","patterns":[{"include":"$self"}]},{"begin":"^\\\\s*(\\\\|)(([^\\\\[]*?)((?<!\\\\|)\\\\|(?!\\\\|)))?","beginCaptures":{"1":{"name":"punctuation.definition.tag.wikitext"},"3":{"patterns":[{"include":"$self"},{"include":"text.html.basic#attribute"}]},"4":{"name":"punctuation.definition.tag.wikitext"}},"end":"$","patterns":[{"include":"$self"},{"match":"\\\\|\\\\|","name":"keyword.operator.wikitext"}]}]}]},"template":{"begin":"(\\\\{\\\\{)\\\\s*(([^#:\\\\|\\\\[\\\\]\\\\{\\\\}]*(:))*)\\\\s*((#[^#:\\\\|\\\\[\\\\]\\\\{\\\\}]+(:))*)([^#:\\\\|\\\\[\\\\]\\\\{\\\\}]*)","captures":{"1":{"name":"punctuation.definition.tag.template.wikitext"},"2":{"name":"entity.name.tag.local-name.wikitext"},"4":{"name":"punctuation.separator.namespace.wikitext"},"5":{"name":"entity.name.function.wikitext"},"7":{"name":"punctuation.separator.namespace.wikitext"},"8":{"name":"entity.name.tag.local-name.wikitext"}},"end":"(\\\\}\\\\})","patterns":[{"include":"$self"},{"match":"(\\\\|)","name":"keyword.operator.wikitext"},{"captures":{"1":{"name":"entity.other.attribute-name.namespace.wikitext"},"2":{"name":"punctuation.separator.namespace.wikitext"},"3":{"name":"entity.other.attribute-name.local-name.wikitext"},"4":{"name":"keyword.operator.equal.wikitext"}},"match":"(?<=\\\\|)\\\\s*(?:([-\\\\w.]+)(:))?([-\\\\w\\\\s\\\\.:]+)\\\\s*(=)"}]},"wikixml":{"patterns":[{"include":"#wiki-self-closed-tags"},{"include":"#normal-wiki-tags"},{"include":"#nowiki"},{"include":"#ref"},{"include":"#jsonin"},{"include":"#math"},{"include":"#syntax-highlight"}],"repository":{"jsonin":{"begin":"(?i)(<)(graph|templatedata)(\\\\s+[^>]+)?\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"contentName":"meta.embedded.block.json","end":"(?i)(</)(\\\\2)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"include":"source.json"}]},"math":{"begin":"(?i)(<)(math|chem|ce)(\\\\s+[^>]+)?\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"contentName":"meta.embedded.block.latex","end":"(?i)(</)(\\\\2)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"include":"text.html.markdown.math#math"}]},"normal-wiki-tags":{"captures":{"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"match":"(?i)(</?)(includeonly|onlyinclude|noinclude)(\\\\s+[^>]+)?\\\\s*(>)","name":"meta.tag.metedata.normal.wikitext"},"nowiki":{"begin":"(?i)(<)(nowiki)(\\\\s+[^>]+)?\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.nowiki.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"contentName":"meta.embedded.block.plaintext","end":"(?i)(</)(nowiki)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.nowiki.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}}},"ref":{"begin":"(?i)(<)(ref)(\\\\s+[^>]+)?\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.ref.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"contentName":"meta.block.ref.wikitext","end":"(?i)(</)(ref)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.ref.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"include":"$self"}]},"syntax-highlight":{"patterns":[{"include":"#hl-css"},{"include":"#hl-html"},{"include":"#hl-ini"},{"include":"#hl-java"},{"include":"#hl-lua"},{"include":"#hl-makefile"},{"include":"#hl-perl"},{"include":"#hl-r"},{"include":"#hl-ruby"},{"include":"#hl-php"},{"include":"#hl-sql"},{"include":"#hl-vb-net"},{"include":"#hl-xml"},{"include":"#hl-xslt"},{"include":"#hl-yaml"},{"include":"#hl-bat"},{"include":"#hl-clojure"},{"include":"#hl-coffee"},{"include":"#hl-c"},{"include":"#hl-cpp"},{"include":"#hl-diff"},{"include":"#hl-dockerfile"},{"include":"#hl-go"},{"include":"#hl-groovy"},{"include":"#hl-pug"},{"include":"#hl-js"},{"include":"#hl-json"},{"include":"#hl-less"},{"include":"#hl-objc"},{"include":"#hl-swift"},{"include":"#hl-scss"},{"include":"#hl-perl6"},{"include":"#hl-powershell"},{"include":"#hl-python"},{"include":"#hl-julia"},{"include":"#hl-rust"},{"include":"#hl-scala"},{"include":"#hl-shell"},{"include":"#hl-ts"},{"include":"#hl-csharp"},{"include":"#hl-fsharp"},{"include":"#hl-dart"},{"include":"#hl-handlebars"},{"include":"#hl-markdown"},{"include":"#hl-erlang"},{"include":"#hl-elixir"},{"include":"#hl-latex"},{"include":"#hl-bibtex"}],"repository":{"hl-bat":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(['\\"]?)(?:batch|bat|dosbatch|winbatch)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.bat","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.batchfile"}]}]},"hl-bibtex":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:bibtex|bib)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.bibtex","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"text.bibtex"}]}]},"hl-c":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)c\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.c","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.c"}]}]},"hl-clojure":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:clojure|clj)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.clojure","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.clojure"}]}]},"hl-coffee":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:coffeescript|coffee-script|coffee)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.coffee","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.coffee"}]}]},"hl-cpp":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:cpp|c\\\\+\\\\+)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.cpp","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.cpp"}]}]},"hl-csharp":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:csharp|c#|cs)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.csharp","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.cs"}]}]},"hl-css":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)css\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.css","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.css"}]}]},"hl-dart":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)dart\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.dart","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.dart"}]}]},"hl-diff":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:diff|udiff)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.diff","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.diff"}]}]},"hl-dockerfile":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:docker|dockerfile)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.dockerfile","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.dockerfile"}]}]},"hl-elixir":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:elixir|ex|exs)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.elixir","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.elixir"}]}]},"hl-erlang":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)erlang\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.erlang","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.erlang"}]}]},"hl-fsharp":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:fsharp|f#)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.fsharp","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.fsharp"}]}]},"hl-go":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:go|golang)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.go","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.go"}]}]},"hl-groovy":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)groovy\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.groovy","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.groovy"}]}]},"hl-handlebars":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)handlebars\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.handlebars","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"text.html.handlebars"}]}]},"hl-html":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)html\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.html","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"text.html.basic"}]}]},"hl-ini":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:ini|cfg|dosini)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.ini","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.ini"}]}]},"hl-java":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)java\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.java","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.java"}]}]},"hl-js":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:javascript|js)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.js","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.js"}]}]},"hl-json":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"json\\"|'json'|\\"json-object\\"|'json-object'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.json","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.json.comments"}]}]},"hl-julia":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"julia\\"|'julia'|\\"jl\\"|'jl'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.julia","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.julia"}]}]},"hl-latex":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:tex|latex)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.latex","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"text.tex.latex"}]}]},"hl-less":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"less\\"|'less'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.less","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.css.less"}]}]},"hl-lua":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)lua\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.lua","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.lua"}]}]},"hl-makefile":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:make|makefile|mf|bsdmake)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.makefile","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.makefile"}]}]},"hl-markdown":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:markdown|md)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.markdown","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"text.html.markdown"}]}]},"hl-objc":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"objective-c\\"|'objective-c'|\\"objectivec\\"|'objectivec'|\\"obj-c\\"|'obj-c'|\\"objc\\"|'objc'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.objc","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.objc"}]}]},"hl-perl":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:perl|ple)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.perl","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.perl"}]}]},"hl-perl6":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"perl6\\"|'perl6'|\\"pl6\\"|'pl6'|\\"raku\\"|'raku'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.perl6","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.perl.6"}]}]},"hl-php":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:php|php3|php4|php5)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.php","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.php"}]}]},"hl-powershell":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"powershell\\"|'powershell'|\\"pwsh\\"|'pwsh'|\\"posh\\"|'posh'|\\"ps1\\"|'ps1'|\\"psm1\\"|'psm1'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.powershell","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.powershell"}]}]},"hl-pug":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:pug|jade)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.pug","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"text.pug"}]}]},"hl-python":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"python\\"|'python'|\\"py\\"|'py'|\\"sage\\"|'sage'|\\"python3\\"|'python3'|\\"py3\\"|'py3'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.python","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.python"}]}]},"hl-r":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:splus|s|r)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.r","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.r"}]}]},"hl-ruby":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:ruby|rb|duby)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.ruby","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.ruby"}]}]},"hl-rust":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"rust\\"|'rust'|\\"rs\\"|'rs'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":null,"end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.rust"}]}]},"hl-scala":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"scala\\"|'scala'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.scala","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.scala"}]}]},"hl-scss":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"scss\\"|'scss'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.scss","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.css.scss"}]}]},"hl-shell":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"bash\\"|'bash'|\\"sh\\"|'sh'|\\"ksh\\"|'ksh'|\\"zsh\\"|'zsh'|\\"shell\\"|'shell'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.shell","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.shell"}]}]},"hl-sql":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)sql\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.sql","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.sql"}]}]},"hl-swift":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"swift\\"|'swift'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.swift","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.swift"}]}]},"hl-ts":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:\\"typescript\\"|'typescript'|\\"ts\\"|'ts'))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.ts","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.ts"}]}]},"hl-vb-net":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)(?:vb\\\\.net|vbnet|lobas|oobas|sobas)\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.vb-net","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.asp.vb.net"}]}]},"hl-xml":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)xml\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.xml","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"text.xml"}]}]},"hl-xslt":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)xslt\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.xslt","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"text.xml.xsl"}]}]},"hl-yaml":{"begin":"(?i)(<)(syntaxhighlight)((?:\\\\s+[^>]+)?(?:\\\\s+lang=(?:(['\\"]?)yaml\\\\4))(?:\\\\s+[^>]+)?)\\\\s*(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.start.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"5":{"name":"punctuation.definition.tag.end.wikitext"}},"end":"(?i)(</)(syntaxhighlight)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.end.wikitext"},"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"name":"punctuation.definition.tag.end.wikitext"}},"patterns":[{"begin":"(^|\\\\G)","contentName":"meta.embedded.block.yaml","end":"(?i)(?=</syntaxhighlight\\\\s*>)","patterns":[{"include":"source.yaml"}]}]}}},"wiki-self-closed-tags":{"captures":{"1":{"name":"punctuation.definition.tag.begin.wikitext"},"2":{"name":"entity.name.tag.wikitext"},"3":{"patterns":[{"include":"text.html.basic#attribute"},{"include":"$self"}]},"4":{"name":"punctuation.definition.tag.end.wikitext"}},"match":"(?i)(<)(templatestyles|ref|nowiki|onlyinclude|includeonly)(\\\\s+[^>]+)?\\\\s*(/>)","name":"meta.tag.metedata.void.wikitext"}}}}}},"scopeName":"source.wikitext","embeddedLangs":[],"aliases":["mediawiki","wiki"],"embeddedLangsLazy":["html","css","ini","java","lua","make","perl","r","ruby","php","sql","vb","xml","xsl","yaml","bat","clojure","coffee","c","cpp","diff","docker","go","groovy","pug","javascript","jsonc","less","objective-c","swift","scss","raku","powershell","python","julia","rust","scala","shellscript","typescript","csharp","fsharp","dart","handlebars","markdown","erlang","elixir","latex","bibtex","json"]}`)),Ose=[Sse]});var SP={};x(SP,{default:()=>Lse});var Nse,Lse,OP=_(()=>{Nse=Object.freeze(JSON.parse('{"displayName":"Wolfram","fileTypes":["wl","m","wls","wlt","mt"],"name":"wolfram","patterns":[{"include":"#main"}],"repository":{"association-group":{"begin":"<\\\\|","beginCaptures":{"0":{"name":"punctuation.section.associations.begin.wolfram"}},"end":"\\\\|>","endCaptures":{"0":{"name":"punctuation.section.associations.end.wolfram"}},"name":"meta.associations.wolfram","patterns":[{"include":"#expressions"}]},"brace-group":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.braces.begin.wolfram"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.braces.end.wolfram"}},"name":"meta.braces.wolfram","patterns":[{"include":"#expressions"}]},"bracket-group":{"begin":"::\\\\[|\\\\[","beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.wolfram"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.brackets.end.wolfram"}},"name":"meta.brackets.wolfram","patterns":[{"include":"#expressions"}]},"comments":{"patterns":[{"begin":"\\\\(\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.wolfram"}},"end":"\\\\*\\\\)","endCaptures":{"0":{"name":"punctuation.definition.comment.wolfram"}},"name":"comment.block","patterns":[{"include":"#comments"}]},{"match":"\\\\*\\\\)","name":"invalid.illegal.stray-comment-end.wolfram"}]},"escaped_character_symbols":{"patterns":[{"match":"System`\\\\\\\\\\\\[(?:F(?:ormalA|ormalAlpha|ormalB|ormalBeta|ormalC|ormalCapitalA|ormalCapitalAlpha|ormalCapitalB|ormalCapitalBeta|ormalCapitalC|ormalCapitalChi|ormalCapitalD|ormalCapitalDelta|ormalCapitalDigamma|ormalCapitalE|ormalCapitalEpsilon|ormalCapitalEta|ormalCapitalF|ormalCapitalG|ormalCapitalGamma|ormalCapitalH|ormalCapitalI|ormalCapitalIota|ormalCapitalJ|ormalCapitalK|ormalCapitalKappa|ormalCapitalKoppa|ormalCapitalL|ormalCapitalLambda|ormalCapitalM|ormalCapitalMu|ormalCapitalN|ormalCapitalNu|ormalCapitalO|ormalCapitalOmega|ormalCapitalOmicron|ormalCapitalP|ormalCapitalPhi|ormalCapitalPi|ormalCapitalPsi|ormalCapitalQ|ormalCapitalR|ormalCapitalRho|ormalCapitalS|ormalCapitalSampi|ormalCapitalSigma|ormalCapitalStigma|ormalCapitalT|ormalCapitalTau|ormalCapitalTheta|ormalCapitalU|ormalCapitalUpsilon|ormalCapitalV|ormalCapitalW|ormalCapitalX|ormalCapitalXi|ormalCapitalY|ormalCapitalZ|ormalCapitalZeta|ormalChi|ormalCurlyCapitalUpsilon|ormalCurlyEpsilon|ormalCurlyKappa|ormalCurlyPhi|ormalCurlyPi|ormalCurlyRho|ormalCurlyTheta|ormalD|ormalDelta|ormalDigamma|ormalE|ormalEpsilon|ormalEta|ormalF|ormalFinalSigma|ormalG|ormalGamma|ormalH|ormalI|ormalIota|ormalJ|ormalK|ormalKappa|ormalKoppa|ormalL|ormalLambda|ormalM|ormalMu|ormalN|ormalNu|ormalO|ormalOmega|ormalOmicron|ormalP|ormalPhi|ormalPi|ormalPsi|ormalQ|ormalR|ormalRho|ormalS|ormalSampi|ormalScriptA|ormalScriptB|ormalScriptC|ormalScriptCapitalA|ormalScriptCapitalB|ormalScriptCapitalC|ormalScriptCapitalD|ormalScriptCapitalE|ormalScriptCapitalF|ormalScriptCapitalG|ormalScriptCapitalH|ormalScriptCapitalI|ormalScriptCapitalJ|ormalScriptCapitalK|ormalScriptCapitalL|ormalScriptCapitalM|ormalScriptCapitalN|ormalScriptCapitalO|ormalScriptCapitalP|ormalScriptCapitalQ|ormalScriptCapitalR|ormalScriptCapitalS|ormalScriptCapitalT|ormalScriptCapitalU|ormalScriptCapitalV|ormalScriptCapitalW|ormalScriptCapitalX|ormalScriptCapitalY|ormalScriptCapitalZ|ormalScriptD|ormalScriptE|ormalScriptF|ormalScriptG|ormalScriptH|ormalScriptI|ormalScriptJ|ormalScriptK|ormalScriptL|ormalScriptM|ormalScriptN|ormalScriptO|ormalScriptP|ormalScriptQ|ormalScriptR|ormalScriptS|ormalScriptT|ormalScriptU|ormalScriptV|ormalScriptW|ormalScriptX|ormalScriptY|ormalScriptZ|ormalSigma|ormalStigma|ormalT|ormalTau|ormalTheta|ormalU|ormalUpsilon|ormalV|ormalW|ormalX|ormalXi|ormalY|ormalZ|ormalZeta))\\\\](?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`\\\\\\\\\\\\[(?:S(?:ystemsModelDelay))\\\\](?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"\\\\\\\\\\\\[(?:F(?:ormalA|ormalAlpha|ormalB|ormalBeta|ormalC|ormalCapitalA|ormalCapitalAlpha|ormalCapitalB|ormalCapitalBeta|ormalCapitalC|ormalCapitalChi|ormalCapitalD|ormalCapitalDelta|ormalCapitalDigamma|ormalCapitalE|ormalCapitalEpsilon|ormalCapitalEta|ormalCapitalF|ormalCapitalG|ormalCapitalGamma|ormalCapitalH|ormalCapitalI|ormalCapitalIota|ormalCapitalJ|ormalCapitalK|ormalCapitalKappa|ormalCapitalKoppa|ormalCapitalL|ormalCapitalLambda|ormalCapitalM|ormalCapitalMu|ormalCapitalN|ormalCapitalNu|ormalCapitalO|ormalCapitalOmega|ormalCapitalOmicron|ormalCapitalP|ormalCapitalPhi|ormalCapitalPi|ormalCapitalPsi|ormalCapitalQ|ormalCapitalR|ormalCapitalRho|ormalCapitalS|ormalCapitalSampi|ormalCapitalSigma|ormalCapitalStigma|ormalCapitalT|ormalCapitalTau|ormalCapitalTheta|ormalCapitalU|ormalCapitalUpsilon|ormalCapitalV|ormalCapitalW|ormalCapitalX|ormalCapitalXi|ormalCapitalY|ormalCapitalZ|ormalCapitalZeta|ormalChi|ormalCurlyCapitalUpsilon|ormalCurlyEpsilon|ormalCurlyKappa|ormalCurlyPhi|ormalCurlyPi|ormalCurlyRho|ormalCurlyTheta|ormalD|ormalDelta|ormalDigamma|ormalE|ormalEpsilon|ormalEta|ormalF|ormalFinalSigma|ormalG|ormalGamma|ormalH|ormalI|ormalIota|ormalJ|ormalK|ormalKappa|ormalKoppa|ormalL|ormalLambda|ormalM|ormalMu|ormalN|ormalNu|ormalO|ormalOmega|ormalOmicron|ormalP|ormalPhi|ormalPi|ormalPsi|ormalQ|ormalR|ormalRho|ormalS|ormalSampi|ormalScriptA|ormalScriptB|ormalScriptC|ormalScriptCapitalA|ormalScriptCapitalB|ormalScriptCapitalC|ormalScriptCapitalD|ormalScriptCapitalE|ormalScriptCapitalF|ormalScriptCapitalG|ormalScriptCapitalH|ormalScriptCapitalI|ormalScriptCapitalJ|ormalScriptCapitalK|ormalScriptCapitalL|ormalScriptCapitalM|ormalScriptCapitalN|ormalScriptCapitalO|ormalScriptCapitalP|ormalScriptCapitalQ|ormalScriptCapitalR|ormalScriptCapitalS|ormalScriptCapitalT|ormalScriptCapitalU|ormalScriptCapitalV|ormalScriptCapitalW|ormalScriptCapitalX|ormalScriptCapitalY|ormalScriptCapitalZ|ormalScriptD|ormalScriptE|ormalScriptF|ormalScriptG|ormalScriptH|ormalScriptI|ormalScriptJ|ormalScriptK|ormalScriptL|ormalScriptM|ormalScriptN|ormalScriptO|ormalScriptP|ormalScriptQ|ormalScriptR|ormalScriptS|ormalScriptT|ormalScriptU|ormalScriptV|ormalScriptW|ormalScriptX|ormalScriptY|ormalScriptZ|ormalSigma|ormalStigma|ormalT|ormalTau|ormalTheta|ormalU|ormalUpsilon|ormalV|ormalW|ormalX|ormalXi|ormalY|ormalZ|ormalZeta))\\\\](?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"\\\\\\\\\\\\[(?:S(?:ystemsModelDelay))\\\\](?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"\\\\\\\\\\\\[(?:D(?:egree))\\\\](?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"\\\\\\\\\\\\[(?:E(?:xponentialE))\\\\](?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"\\\\\\\\\\\\[(?:I(?:maginaryI|maginaryJ|nfinity))\\\\](?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"\\\\\\\\\\\\[(?:P(?:i))\\\\](?![`$[:alnum:]])","name":"constant.language.wolfram"}]},"escaped_characters":{"patterns":[{"match":"\\\\\\\\[!%&()*+/@^_` ]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:A(?:kuz|ndy))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:C(?:ontinuedFractionK|url))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:D(?:ivergence|ivisionSlash))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:E(?:xpectationE))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:F(?:reeformPrompt))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:G(?:radient))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:L(?:aplacian))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:M(?:inus|oon))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:N(?:umberComma))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:P(?:ageBreakAbove|ageBreakBelow|robabilityPr))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:S(?:pooky|tepperDown|tepperLeft|tepperRight|tepperUp|un))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:U(?:nknownGlyph))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:V(?:illa))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:W(?:olframAlphaPrompt))\\\\]","name":"donothighlight.constant.character.escape.undocumented"},{"match":"\\\\\\\\\\\\[(?:C(?:OMPATIBILITYKanjiSpace|OMPATIBILITYNoBreak))\\\\]","name":"invalid.illegal.unsupported"},{"match":"\\\\\\\\\\\\[(?:I(?:nlinePart))\\\\]","name":"invalid.illegal.unsupported"},{"match":"\\\\\\\\\\\\[(?:A(?:Acute|Bar|Cup|DoubleDot|E|Grave|Hat|Ring|Tilde|leph|liasDelimiter|liasIndicator|lignmentMarker|lpha|ltKey|nd|ngle|ngstrom|pplication|quariusSign|riesSign|scendingEllipsis|utoLeftMatch|utoOperand|utoPlaceholder|utoRightMatch|utoSpace))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:B(?:ackslash|eamedEighthNote|eamedSixteenthNote|ecause|et|eta|lackBishop|lackKing|lackKnight|lackPawn|lackQueen|lackRook|reve|ullet))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:C(?:Acute|Cedilla|Hacek|ancerSign|ap|apitalAAcute|apitalABar|apitalACup|apitalADoubleDot|apitalAE|apitalAGrave|apitalAHat|apitalARing|apitalATilde|apitalAlpha|apitalBeta|apitalCAcute|apitalCCedilla|apitalCHacek|apitalChi|apitalDHacek|apitalDelta|apitalDifferentialD|apitalDigamma|apitalEAcute|apitalEBar|apitalECup|apitalEDoubleDot|apitalEGrave|apitalEHacek|apitalEHat|apitalEpsilon|apitalEta|apitalEth|apitalGamma|apitalIAcute|apitalICup|apitalIDoubleDot|apitalIGrave|apitalIHat|apitalIota|apitalKappa|apitalKoppa|apitalLSlash|apitalLambda|apitalMu|apitalNHacek|apitalNTilde|apitalNu|apitalOAcute|apitalODoubleAcute|apitalODoubleDot|apitalOE|apitalOGrave|apitalOHat|apitalOSlash|apitalOTilde|apitalOmega|apitalOmicron|apitalPhi|apitalPi|apitalPsi|apitalRHacek|apitalRho|apitalSHacek|apitalSampi|apitalSigma|apitalStigma|apitalTHacek|apitalTau|apitalTheta|apitalThorn|apitalUAcute|apitalUDoubleAcute|apitalUDoubleDot|apitalUGrave|apitalUHat|apitalURing|apitalUpsilon|apitalXi|apitalYAcute|apitalZHacek|apitalZeta|apricornSign|edilla|ent|enterDot|enterEllipsis|heckedBox|heckmark|heckmarkedBox|hi|ircleDot|ircleMinus|irclePlus|ircleTimes|lockwiseContourIntegral|loseCurlyDoubleQuote|loseCurlyQuote|loverLeaf|lubSuit|olon|ommandKey|onditioned|ongruent|onjugate|onjugateTranspose|onstantC|ontinuation|ontourIntegral|ontrolKey|oproduct|opyright|ounterClockwiseContourIntegral|ross|ubeRoot|up|upCap|urlyCapitalUpsilon|urlyEpsilon|urlyKappa|urlyPhi|urlyPi|urlyRho|urlyTheta|urrency))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:D(?:Hacek|agger|alet|ash|egree|el|eleteKey|elta|escendingEllipsis|iameter|iamond|iamondSuit|ifferenceDelta|ifferentialD|igamma|irectedEdge|iscreteRatio|iscreteShift|iscretionaryHyphen|iscretionaryLineSeparator|iscretionaryPageBreakAbove|iscretionaryPageBreakBelow|iscretionaryParagraphSeparator|istributed|ivide|ivides|otEqual|otlessI|otlessJ|ottedSquare|oubleContourIntegral|oubleDagger|oubleDot|oubleDownArrow|oubleLeftArrow|oubleLeftRightArrow|oubleLeftTee|oubleLongLeftArrow|oubleLongLeftRightArrow|oubleLongRightArrow|oublePrime|oubleRightArrow|oubleRightTee|oubleStruckA|oubleStruckB|oubleStruckC|oubleStruckCapitalA|oubleStruckCapitalB|oubleStruckCapitalC|oubleStruckCapitalD|oubleStruckCapitalE|oubleStruckCapitalF|oubleStruckCapitalG|oubleStruckCapitalH|oubleStruckCapitalI|oubleStruckCapitalJ|oubleStruckCapitalK|oubleStruckCapitalL|oubleStruckCapitalM|oubleStruckCapitalN|oubleStruckCapitalO|oubleStruckCapitalP|oubleStruckCapitalQ|oubleStruckCapitalR|oubleStruckCapitalS|oubleStruckCapitalT|oubleStruckCapitalU|oubleStruckCapitalV|oubleStruckCapitalW|oubleStruckCapitalX|oubleStruckCapitalY|oubleStruckCapitalZ|oubleStruckD|oubleStruckE|oubleStruckEight|oubleStruckF|oubleStruckFive|oubleStruckFour|oubleStruckG|oubleStruckH|oubleStruckI|oubleStruckJ|oubleStruckK|oubleStruckL|oubleStruckM|oubleStruckN|oubleStruckNine|oubleStruckO|oubleStruckOne|oubleStruckP|oubleStruckQ|oubleStruckR|oubleStruckS|oubleStruckSeven|oubleStruckSix|oubleStruckT|oubleStruckThree|oubleStruckTwo|oubleStruckU|oubleStruckV|oubleStruckW|oubleStruckX|oubleStruckY|oubleStruckZ|oubleStruckZero|oubleUpArrow|oubleUpDownArrow|oubleVerticalBar|oubledGamma|oubledPi|ownArrow|ownArrowBar|ownArrowUpArrow|ownBreve|ownExclamation|ownLeftRightVector|ownLeftTeeVector|ownLeftVector|ownLeftVectorBar|ownPointer|ownQuestion|ownRightTeeVector|ownRightVector|ownRightVectorBar|ownTee|ownTeeArrow))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:E(?:Acute|Bar|Cup|DoubleDot|Grave|Hacek|Hat|arth|ighthNote|lement|llipsis|mptyCircle|mptyDiamond|mptyDownTriangle|mptyRectangle|mptySet|mptySmallCircle|mptySmallSquare|mptySquare|mptyUpTriangle|mptyVerySmallSquare|nterKey|ntityEnd|ntityStart|psilon|qual|qualTilde|quilibrium|quivalent|rrorIndicator|scapeKey|ta|th|uro|xists|xponentialE))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:F(?:iLigature|illedCircle|illedDiamond|illedDownTriangle|illedLeftTriangle|illedRectangle|illedRightTriangle|illedSmallCircle|illedSmallSquare|illedSquare|illedUpTriangle|illedVerySmallSquare|inalSigma|irstPage|ivePointedStar|lLigature|lat|lorin|orAll|ormalA|ormalAlpha|ormalB|ormalBeta|ormalC|ormalCapitalA|ormalCapitalAlpha|ormalCapitalB|ormalCapitalBeta|ormalCapitalC|ormalCapitalChi|ormalCapitalD|ormalCapitalDelta|ormalCapitalDigamma|ormalCapitalE|ormalCapitalEpsilon|ormalCapitalEta|ormalCapitalF|ormalCapitalG|ormalCapitalGamma|ormalCapitalH|ormalCapitalI|ormalCapitalIota|ormalCapitalJ|ormalCapitalK|ormalCapitalKappa|ormalCapitalKoppa|ormalCapitalL|ormalCapitalLambda|ormalCapitalM|ormalCapitalMu|ormalCapitalN|ormalCapitalNu|ormalCapitalO|ormalCapitalOmega|ormalCapitalOmicron|ormalCapitalP|ormalCapitalPhi|ormalCapitalPi|ormalCapitalPsi|ormalCapitalQ|ormalCapitalR|ormalCapitalRho|ormalCapitalS|ormalCapitalSampi|ormalCapitalSigma|ormalCapitalStigma|ormalCapitalT|ormalCapitalTau|ormalCapitalTheta|ormalCapitalU|ormalCapitalUpsilon|ormalCapitalV|ormalCapitalW|ormalCapitalX|ormalCapitalXi|ormalCapitalY|ormalCapitalZ|ormalCapitalZeta|ormalChi|ormalCurlyCapitalUpsilon|ormalCurlyEpsilon|ormalCurlyKappa|ormalCurlyPhi|ormalCurlyPi|ormalCurlyRho|ormalCurlyTheta|ormalD|ormalDelta|ormalDigamma|ormalE|ormalEpsilon|ormalEta|ormalF|ormalFinalSigma|ormalG|ormalGamma|ormalH|ormalI|ormalIota|ormalJ|ormalK|ormalKappa|ormalKoppa|ormalL|ormalLambda|ormalM|ormalMu|ormalN|ormalNu|ormalO|ormalOmega|ormalOmicron|ormalP|ormalPhi|ormalPi|ormalPsi|ormalQ|ormalR|ormalRho|ormalS|ormalSampi|ormalScriptA|ormalScriptB|ormalScriptC|ormalScriptCapitalA|ormalScriptCapitalB|ormalScriptCapitalC|ormalScriptCapitalD|ormalScriptCapitalE|ormalScriptCapitalF|ormalScriptCapitalG|ormalScriptCapitalH|ormalScriptCapitalI|ormalScriptCapitalJ|ormalScriptCapitalK|ormalScriptCapitalL|ormalScriptCapitalM|ormalScriptCapitalN|ormalScriptCapitalO|ormalScriptCapitalP|ormalScriptCapitalQ|ormalScriptCapitalR|ormalScriptCapitalS|ormalScriptCapitalT|ormalScriptCapitalU|ormalScriptCapitalV|ormalScriptCapitalW|ormalScriptCapitalX|ormalScriptCapitalY|ormalScriptCapitalZ|ormalScriptD|ormalScriptE|ormalScriptF|ormalScriptG|ormalScriptH|ormalScriptI|ormalScriptJ|ormalScriptK|ormalScriptL|ormalScriptM|ormalScriptN|ormalScriptO|ormalScriptP|ormalScriptQ|ormalScriptR|ormalScriptS|ormalScriptT|ormalScriptU|ormalScriptV|ormalScriptW|ormalScriptX|ormalScriptY|ormalScriptZ|ormalSigma|ormalStigma|ormalT|ormalTau|ormalTheta|ormalU|ormalUpsilon|ormalV|ormalW|ormalX|ormalXi|ormalY|ormalZ|ormalZeta|reakedSmiley|unction))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:G(?:amma|eminiSign|imel|othicA|othicB|othicC|othicCapitalA|othicCapitalB|othicCapitalC|othicCapitalD|othicCapitalE|othicCapitalF|othicCapitalG|othicCapitalH|othicCapitalI|othicCapitalJ|othicCapitalK|othicCapitalL|othicCapitalM|othicCapitalN|othicCapitalO|othicCapitalP|othicCapitalQ|othicCapitalR|othicCapitalS|othicCapitalT|othicCapitalU|othicCapitalV|othicCapitalW|othicCapitalX|othicCapitalY|othicCapitalZ|othicD|othicE|othicEight|othicF|othicFive|othicFour|othicG|othicH|othicI|othicJ|othicK|othicL|othicM|othicN|othicNine|othicO|othicOne|othicP|othicQ|othicR|othicS|othicSeven|othicSix|othicT|othicThree|othicTwo|othicU|othicV|othicW|othicX|othicY|othicZ|othicZero|rayCircle|raySquare|reaterEqual|reaterEqualLess|reaterFullEqual|reaterGreater|reaterLess|reaterSlantEqual|reaterTilde))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:H(?:Bar|acek|appySmiley|eartSuit|ermitianConjugate|orizontalLine|umpDownHump|umpEqual|yphen))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:I(?:Acute|Cup|DoubleDot|Grave|Hat|maginaryI|maginaryJ|mplicitPlus|mplies|ndentingNewLine|nfinity|ntegral|ntersection|nvisibleApplication|nvisibleComma|nvisiblePostfixScriptBase|nvisiblePrefixScriptBase|nvisibleSpace|nvisibleTimes|ota))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:J(?:upiter))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:K(?:appa|ernelIcon|eyBar|oppa))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:L(?:Slash|ambda|astPage|eftAngleBracket|eftArrow|eftArrowBar|eftArrowRightArrow|eftAssociation|eftBracketingBar|eftCeiling|eftDoubleBracket|eftDoubleBracketingBar|eftDownTeeVector|eftDownVector|eftDownVectorBar|eftFloor|eftGuillemet|eftModified|eftPointer|eftRightArrow|eftRightVector|eftSkeleton|eftTee|eftTeeArrow|eftTeeVector|eftTriangle|eftTriangleBar|eftTriangleEqual|eftUpDownVector|eftUpTeeVector|eftUpVector|eftUpVectorBar|eftVector|eftVectorBar|eoSign|essEqual|essEqualGreater|essFullEqual|essGreater|essLess|essSlantEqual|essTilde|etterSpace|ibraSign|ightBulb|imit|ineSeparator|ongDash|ongEqual|ongLeftArrow|ongLeftRightArrow|ongRightArrow|owerLeftArrow|owerRightArrow))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:M(?:ars|athematicaIcon|axLimit|easuredAngle|ediumSpace|ercury|ho|icro|inLimit|inusPlus|od1Key|od2Key|u))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:N(?:Hacek|Tilde|and|atural|egativeMediumSpace|egativeThickSpace|egativeThinSpace|egativeVeryThinSpace|eptune|estedGreaterGreater|estedLessLess|eutralSmiley|ewLine|oBreak|onBreakingSpace|or|ot|otCongruent|otCupCap|otDoubleVerticalBar|otElement|otEqual|otEqualTilde|otExists|otGreater|otGreaterEqual|otGreaterFullEqual|otGreaterGreater|otGreaterLess|otGreaterSlantEqual|otGreaterTilde|otHumpDownHump|otHumpEqual|otLeftTriangle|otLeftTriangleBar|otLeftTriangleEqual|otLess|otLessEqual|otLessFullEqual|otLessGreater|otLessLess|otLessSlantEqual|otLessTilde|otNestedGreaterGreater|otNestedLessLess|otPrecedes|otPrecedesEqual|otPrecedesSlantEqual|otPrecedesTilde|otReverseElement|otRightTriangle|otRightTriangleBar|otRightTriangleEqual|otSquareSubset|otSquareSubsetEqual|otSquareSuperset|otSquareSupersetEqual|otSubset|otSubsetEqual|otSucceeds|otSucceedsEqual|otSucceedsSlantEqual|otSucceedsTilde|otSuperset|otSupersetEqual|otTilde|otTildeEqual|otTildeFullEqual|otTildeTilde|otVerticalBar|u|ull|umberSign))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:O(?:Acute|DoubleAcute|DoubleDot|E|Grave|Hat|Slash|Tilde|mega|micron|penCurlyDoubleQuote|penCurlyQuote|ptionKey|r|verBrace|verBracket|verParenthesis))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:P(?:aragraph|aragraphSeparator|artialD|ermutationProduct|erpendicular|hi|i|iecewise|iscesSign|laceholder|lusMinus|luto|recedes|recedesEqual|recedesSlantEqual|recedesTilde|rime|roduct|roportion|roportional|si))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:Q(?:uarterNote))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:R(?:Hacek|awAmpersand|awAt|awBackquote|awBackslash|awColon|awComma|awDash|awDollar|awDot|awDoubleQuote|awEqual|awEscape|awExclamation|awGreater|awLeftBrace|awLeftBracket|awLeftParenthesis|awLess|awNumberSign|awPercent|awPlus|awQuestion|awQuote|awReturn|awRightBrace|awRightBracket|awRightParenthesis|awSemicolon|awSlash|awSpace|awStar|awTab|awTilde|awUnderscore|awVerticalBar|awWedge|egisteredTrademark|eturnIndicator|eturnKey|everseDoublePrime|everseElement|everseEquilibrium|eversePrime|everseUpEquilibrium|ho|ightAngle|ightAngleBracket|ightArrow|ightArrowBar|ightArrowLeftArrow|ightAssociation|ightBracketingBar|ightCeiling|ightDoubleBracket|ightDoubleBracketingBar|ightDownTeeVector|ightDownVector|ightDownVectorBar|ightFloor|ightGuillemet|ightModified|ightPointer|ightSkeleton|ightTee|ightTeeArrow|ightTeeVector|ightTriangle|ightTriangleBar|ightTriangleEqual|ightUpDownVector|ightUpTeeVector|ightUpVector|ightUpVectorBar|ightVector|ightVectorBar|oundImplies|oundSpaceIndicator|ule|uleDelayed|upee))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:S(?:Hacek|Z|adSmiley|agittariusSign|ampi|aturn|corpioSign|criptA|criptB|criptC|criptCapitalA|criptCapitalB|criptCapitalC|criptCapitalD|criptCapitalE|criptCapitalF|criptCapitalG|criptCapitalH|criptCapitalI|criptCapitalJ|criptCapitalK|criptCapitalL|criptCapitalM|criptCapitalN|criptCapitalO|criptCapitalP|criptCapitalQ|criptCapitalR|criptCapitalS|criptCapitalT|criptCapitalU|criptCapitalV|criptCapitalW|criptCapitalX|criptCapitalY|criptCapitalZ|criptD|criptDotlessI|criptDotlessJ|criptE|criptEight|criptF|criptFive|criptFour|criptG|criptH|criptI|criptJ|criptK|criptL|criptM|criptN|criptNine|criptO|criptOne|criptP|criptQ|criptR|criptS|criptSeven|criptSix|criptT|criptThree|criptTwo|criptU|criptV|criptW|criptX|criptY|criptZ|criptZero|ection|electionPlaceholder|hah|harp|hiftKey|hortDownArrow|hortLeftArrow|hortRightArrow|hortUpArrow|igma|ixPointedStar|keletonIndicator|mallCircle|paceIndicator|paceKey|padeSuit|panFromAbove|panFromBoth|panFromLeft|phericalAngle|qrt|quare|quareIntersection|quareSubset|quareSubsetEqual|quareSuperset|quareSupersetEqual|quareUnion|tar|terling|tigma|ubset|ubsetEqual|ucceeds|ucceedsEqual|ucceedsSlantEqual|ucceedsTilde|uchThat|um|uperset|upersetEqual|ystemEnterKey|ystemsModelDelay))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:T(?:Hacek|abKey|au|aurusSign|ensorProduct|ensorWedge|herefore|heta|hickSpace|hinSpace|horn|ilde|ildeEqual|ildeFullEqual|ildeTilde|imes|rademark|ranspose|ripleDot|woWayRule))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:U(?:Acute|DoubleAcute|DoubleDot|Grave|Hat|Ring|nderBrace|nderBracket|nderParenthesis|ndirectedEdge|nion|nionPlus|pArrow|pArrowBar|pArrowDownArrow|pDownArrow|pEquilibrium|pPointer|pTee|pTeeArrow|pperLeftArrow|pperRightArrow|psilon|ranus))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:V(?:ectorGreater|ectorGreaterEqual|ectorLess|ectorLessEqual|ee|enus|erticalBar|erticalEllipsis|erticalLine|erticalSeparator|erticalTilde|eryThinSpace|irgoSign))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:W(?:arningSign|atchIcon|edge|eierstrassP|hiteBishop|hiteKing|hiteKnight|hitePawn|hiteQueen|hiteRook|olf|olframLanguageLogo|olframLanguageLogoCircle))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:X(?:i|nor|or))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:Y(?:Acute|DoubleDot|en))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:Z(?:Hacek|eta))\\\\]","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\[(?:[$[:alpha:]][$[:alnum:]]*)?\\\\]?","name":"invalid.illegal.BadLongName"},{"match":"\\\\\\\\(?:[$[:alpha:]][$[:alnum:]]*)\\\\]","name":"invalid.illegal.BadLongName"},{"match":"\\\\\\\\:\\\\h{4}","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\:\\\\h{1,3}","name":"invalid.illegal"},{"match":"\\\\\\\\\\\\.\\\\h{2}","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\.\\\\h{1}","name":"invalid.illegal"},{"match":"\\\\\\\\\\\\|0\\\\h{5}","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\|10\\\\h{4}","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\\\\\|\\\\h{1,6}","name":"invalid.illegal"},{"match":"\\\\\\\\[0-7]{3}","name":"donothighlight.constant.character.escape"},{"match":"\\\\\\\\[0-7]{1,2}","name":"invalid.illegal"},{"match":"\\\\\\\\$","name":"donothighlight.constant.character.escape punctuation.separator.continuation"},{"match":"\\\\\\\\.","name":"invalid.illegal"}]},"expressions":{"patterns":[{"include":"#comments"},{"include":"#escaped_character_symbols"},{"include":"#escaped_characters"},{"include":"#out"},{"include":"#slot"},{"include":"#literals"},{"include":"#groups"},{"include":"#stringifying-operators"},{"include":"#operators"},{"include":"#pattern-operators"},{"include":"#symbols"},{"match":"(?:!|&|\'|\\\\*|\\\\+|,|-|\\\\.|/|:|;|<|=|>|\\\\?|@|\\\\\\\\|\\\\^|\\\\||~)","name":"invalid.illegal"}]},"groups":{"patterns":[{"match":"\\\\\\\\\\\\)","name":"invalid.illegal.stray-linearsyntaxparens-end.wolfram"},{"match":"\\\\)","name":"invalid.illegal.stray-parens-end.wolfram"},{"match":"\\\\[\\\\s+\\\\[","name":"invalid.whitespace.Part.wolfram"},{"match":"\\\\]\\\\s+\\\\]","name":"invalid.whitespace.Part.wolfram"},{"match":"\\\\]\\\\]","name":"invalid.illegal.stray-parts-end.wolfram"},{"match":"\\\\]","name":"invalid.illegal.stray-brackets-end.wolfram"},{"match":"\\\\}","name":"invalid.illegal.stray-braces-end.wolfram"},{"match":"\\\\|>","name":"invalid.illegal.stray-associations-end.wolfram"},{"include":"#linearsyntaxparen-group"},{"include":"#paren-group"},{"include":"#part-group"},{"include":"#bracket-group"},{"include":"#brace-group"},{"include":"#association-group"}]},"linearsyntaxparen-group":{"begin":"\\\\\\\\\\\\(","beginCaptures":{"0":{"name":"punctuation.section.linearsyntaxparens.begin.wolfram"}},"end":"\\\\\\\\\\\\)","endCaptures":{"0":{"name":"punctuation.section.linearsyntaxparens.end.wolfram"}},"name":"meta.linearsyntaxparens.wolfram","patterns":[{"include":"#expressions"}]},"literals":{"patterns":[{"include":"#numbers"},{"include":"#strings"}]},"main":{"patterns":[{"include":"#shebang"},{"include":"#simple-toplevel-definitions"},{"include":"#expressions"}]},"numbers":{"patterns":[{"match":"2\\\\^\\\\^(?:(?:0|1)+(?:\\\\.(?!\\\\.)(?:0|1)*)?+|\\\\.(?!\\\\.)(?:0|1)+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"2\\\\^\\\\^(?:(?:0|1)+(?:\\\\.(?!\\\\.)(?:0|1)*)?+|\\\\.(?!\\\\.)(?:0|1)+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))\\\\*\\\\^","name":"invalid.illegal"},{"match":"2\\\\^\\\\^(?:(?:0|1)+(?:\\\\.(?!\\\\.)(?:0|1)*)?+|\\\\.(?!\\\\.)(?:0|1)+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))","name":"constant.numeric.wolfram"},{"match":"2\\\\^\\\\^(?:(?:0|1)+(?:\\\\.(?!\\\\.)(?:0|1)*)?+|\\\\.(?!\\\\.)(?:0|1)+)``","name":"invalid.illegal"},{"match":"2\\\\^\\\\^(?:(?:0|1)+(?:\\\\.(?!\\\\.)(?:0|1)*)?+|\\\\.(?!\\\\.)(?:0|1)+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"2\\\\^\\\\^(?:(?:0|1)+(?:\\\\.(?!\\\\.)(?:0|1)*)?+|\\\\.(?!\\\\.)(?:0|1)+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)\\\\*\\\\^","name":"invalid.illegal"},{"match":"2\\\\^\\\\^(?:(?:0|1)+(?:\\\\.(?!\\\\.)(?:0|1)*)?+|\\\\.(?!\\\\.)(?:0|1)+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)","name":"constant.numeric.wolfram"},{"match":"2\\\\^\\\\^(?:(?:0|1)+(?:\\\\.(?!\\\\.)(?:0|1)*)?+|\\\\.(?!\\\\.)(?:0|1)+)(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"2\\\\^\\\\^(?:(?:0|1)+(?:\\\\.(?!\\\\.)(?:0|1)*)?+|\\\\.(?!\\\\.)(?:0|1)+)\\\\*\\\\^","name":"invalid.illegal"},{"match":"2\\\\^\\\\^(?:(?:0|1)+(?:\\\\.(?!\\\\.)(?:0|1)*)?+|\\\\.(?!\\\\.)(?:0|1)+)","name":"constant.numeric.wolfram"},{"match":"2\\\\^\\\\^","name":"invalid.illegal"},{"match":"8\\\\^\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"8\\\\^\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))\\\\*\\\\^","name":"invalid.illegal"},{"match":"8\\\\^\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))","name":"constant.numeric.wolfram"},{"match":"8\\\\^\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)+)``","name":"invalid.illegal"},{"match":"8\\\\^\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"8\\\\^\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)\\\\*\\\\^","name":"invalid.illegal"},{"match":"8\\\\^\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)","name":"constant.numeric.wolfram"},{"match":"8\\\\^\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"8\\\\^\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)+)\\\\*\\\\^","name":"invalid.illegal"},{"match":"8\\\\^\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\.(?!\\\\.)(?:0|1|2|3|4|5|6|7)+)","name":"constant.numeric.wolfram"},{"match":"8\\\\^\\\\^","name":"invalid.illegal"},{"match":"16\\\\^\\\\^(?:\\\\h+(?:\\\\.(?!\\\\.)\\\\h*)?+|\\\\.(?!\\\\.)\\\\h+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"16\\\\^\\\\^(?:\\\\h+(?:\\\\.(?!\\\\.)\\\\h*)?+|\\\\.(?!\\\\.)\\\\h+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))\\\\*\\\\^","name":"invalid.illegal"},{"match":"16\\\\^\\\\^(?:\\\\h+(?:\\\\.(?!\\\\.)\\\\h*)?+|\\\\.(?!\\\\.)\\\\h+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))","name":"constant.numeric.wolfram"},{"match":"16\\\\^\\\\^(?:\\\\h+(?:\\\\.(?!\\\\.)\\\\h*)?+|\\\\.(?!\\\\.)\\\\h+)``","name":"invalid.illegal"},{"match":"16\\\\^\\\\^(?:\\\\h+(?:\\\\.(?!\\\\.)\\\\h*)?+|\\\\.(?!\\\\.)\\\\h+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"16\\\\^\\\\^(?:\\\\h+(?:\\\\.(?!\\\\.)\\\\h*)?+|\\\\.(?!\\\\.)\\\\h+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)\\\\*\\\\^","name":"invalid.illegal"},{"match":"16\\\\^\\\\^(?:\\\\h+(?:\\\\.(?!\\\\.)\\\\h*)?+|\\\\.(?!\\\\.)\\\\h+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)","name":"constant.numeric.wolfram"},{"match":"16\\\\^\\\\^(?:\\\\h+(?:\\\\.(?!\\\\.)\\\\h*)?+|\\\\.(?!\\\\.)\\\\h+)(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"16\\\\^\\\\^(?:\\\\h+(?:\\\\.(?!\\\\.)\\\\h*)?+|\\\\.(?!\\\\.)\\\\h+)\\\\*\\\\^","name":"invalid.illegal"},{"match":"16\\\\^\\\\^(?:\\\\h+(?:\\\\.(?!\\\\.)\\\\h*)?+|\\\\.(?!\\\\.)\\\\h+)","name":"constant.numeric.wolfram"},{"match":"16\\\\^\\\\^","name":"invalid.illegal"},{"match":"(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))\\\\*\\\\^","name":"invalid.illegal"},{"match":"(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)(?:``(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)))","name":"constant.numeric.wolfram"},{"match":"(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)``","name":"invalid.illegal"},{"match":"(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)\\\\*\\\\^","name":"invalid.illegal"},{"match":"(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)(?:`(?:(?:-|\\\\+)?+(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+))?+)","name":"constant.numeric.wolfram"},{"match":"(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)(?:\\\\*\\\\^(?:-|\\\\+)?+\\\\d+)","name":"constant.numeric.wolfram"},{"match":"(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)\\\\*\\\\^","name":"invalid.illegal"},{"match":"(?:\\\\d+(?:\\\\.(?!\\\\.)\\\\d*)?+|\\\\.(?!\\\\.)\\\\d+)","name":"constant.numeric.wolfram"}]},"operators":{"patterns":[{"match":"(?:\\\\^:=)","name":"keyword.operator.assignment.UpSetDelayed.wolfram"},{"match":"(?:\\\\^:)","name":"invalid.illegal"},{"match":"(?:===)","name":"keyword.operator.SameQ.wolfram"},{"match":"(?:=!=|\\\\.\\\\.\\\\.|//\\\\.|@@@|<->|//@)","name":"keyword.operator.wolfram"},{"match":"(?:\\\\|->)","name":"keyword.operator.Function.wolfram"},{"match":"(?://=)","name":"keyword.operator.assignment.ApplyTo.wolfram"},{"match":"(?:--|\\\\+\\\\+)","name":"keyword.operator.arithmetic.wolfram"},{"match":"(?:\\\\|\\\\||&&)","name":"keyword.operator.logical.wolfram"},{"match":"(?::=)","name":"keyword.operator.assignment.SetDelayed.wolfram"},{"match":"(?:\\\\^=)","name":"keyword.operator.assignment.UpSet.wolfram"},{"match":"(?:/=)","name":"keyword.operator.assignment.DivideBy.wolfram"},{"match":"(?:\\\\+=)","name":"keyword.operator.assignment.AddTo.wolfram"},{"match":"(?:=\\\\s+\\\\.(?![0-9]))","name":"invalid.whitespace.Unset.wolfram"},{"match":"(?:=\\\\.(?![0-9]))","name":"keyword.operator.assignment.Unset.wolfram"},{"match":"(?:\\\\*=)","name":"keyword.operator.assignment.TimesBy.wolfram"},{"match":"(?:-=)","name":"keyword.operator.assignment.SubtractFrom.wolfram"},{"match":"(?:/:)","name":"keyword.operator.assignment.Tag.wolfram"},{"match":"(?:;;)$","name":"invalid.endofline.Span.wolfram"},{"match":"(?:;;)","name":"keyword.operator.Span.wolfram"},{"match":"(?:!=)","name":"keyword.operator.Unequal.wolfram"},{"match":"(?:==)","name":"keyword.operator.Equal.wolfram"},{"match":"(?:!!)","name":"keyword.operator.BangBang.wolfram"},{"match":"(?:\\\\?\\\\?)","name":"invalid.illegal.Information.wolfram"},{"match":"(?:<=|>=|\\\\.\\\\.|:>|<>|->|/@|/;|/\\\\.|//|/\\\\*|@@|@\\\\*|~~|\\\\*\\\\*)","name":"keyword.operator.wolfram"},{"match":"(?:-|\\\\+|/|\\\\*)","name":"keyword.operator.arithmetic.wolfram"},{"match":"(?:=)","name":"keyword.operator.assignment.Set.wolfram"},{"match":"(?:<)","name":"keyword.operator.Less.wolfram"},{"match":"(?:\\\\|)","name":"keyword.operator.Alternatives.wolfram"},{"match":"(?:!)","name":"keyword.operator.Bang.wolfram"},{"match":"(?:;)","name":"keyword.operator.CompoundExpression.wolfram punctuation.terminator"},{"match":"(?:,)","name":"keyword.operator.Comma.wolfram punctuation.separator"},{"match":"^(?:\\\\?)","name":"invalid.startofline.Information.wolfram"},{"match":"(?:\\\\?)","name":"keyword.operator.PatternTest.wolfram"},{"match":"(?:\')","name":"keyword.operator.Derivative.wolfram"},{"match":"(?:&)","name":"keyword.operator.Function.wolfram"},{"match":"(?:>|\\\\^|\\\\.|:|@|~)","name":"keyword.operator.wolfram"}]},"out":{"patterns":[{"match":"%\\\\d+","name":"keyword.other.Out.wolfram"},{"match":"%+","name":"keyword.other.Out.wolfram"}]},"paren-group":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parens.begin.wolfram"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parens.end.wolfram"}},"name":"meta.parens.wolfram","patterns":[{"include":"#expressions"}]},"part-group":{"begin":"\\\\[\\\\[","beginCaptures":{"0":{"name":"punctuation.section.parts.begin.wolfram"}},"end":"\\\\]\\\\]","endCaptures":{"0":{"name":"punctuation.section.parts.end.wolfram"}},"name":"meta.parts.wolfram","patterns":[{"include":"#expressions"}]},"pattern-operators":{"patterns":[{"match":"___","name":"keyword.operator.BlankNullSequence.wolfram"},{"match":"__","name":"keyword.operator.BlankSequence.wolfram"},{"match":"_\\\\.","name":"keyword.operator.Optional.wolfram"},{"match":"_","name":"keyword.operator.Blank.wolfram"}]},"shebang":{"captures":{"1":{"name":"punctuation.definition.comment.wolfram"}},"match":"\\\\A(#!).*(?=$)","name":"comment.line.shebang.wolfram"},"simple-toplevel-definitions":{"patterns":[{"captures":{"1":{"name":"support.function.builtin.wolfram"},"2":{"name":"punctuation.section.brackets.begin.wolfram"},"3":{"name":"meta.function.wolfram entity.name.Context.wolfram"},"4":{"name":"meta.function.wolfram entity.name.function.wolfram"},"5":{"name":"punctuation.section.brackets.end.wolfram"},"6":{"name":"keyword.operator.assignment.wolfram"}},"match":"^\\\\s*(Attributes|Format|Options)\\\\s*(\\\\[)(`?(?:(?:[$[:alpha:]][$[:alnum:]]*)`)*)((?:[$[:alpha:]][$[:alnum:]]*))(\\\\])\\\\s*(:=|=(?!!|=|\\\\.))"},{"captures":{"1":{"name":"meta.function.wolfram entity.name.Context.wolfram"},"2":{"name":"meta.function.wolfram entity.name.function.wolfram"}},"match":"^\\\\s*(`?(?:(?:[$[:alpha:]][$[:alnum:]]*)`)*)((?:[$[:alpha:]][$[:alnum:]]*))(?=\\\\s*(\\\\[(?>[^\\\\[\\\\]]+|\\\\g<-1>)*\\\\])\\\\s*(?:/;.*)?(?::=|=(?!!|=|\\\\.)))"},{"captures":{"1":{"name":"meta.function.wolfram entity.name.Context.wolfram"},"2":{"name":"meta.function.wolfram entity.name.constant.wolfram"}},"match":"^\\\\s*(`?(?:(?:[$[:alpha:]][$[:alnum:]]*)`)*)((?:[$[:alpha:]][$[:alnum:]]*))(?=\\\\s*(?:/;.*)?(?::=|=(?!!|=|\\\\.)))"}]},"slot":{"patterns":[{"match":"#[[:alpha:]][[:alnum:]]*","name":"keyword.other.Slot.wolfram"},{"match":"##\\\\d*","name":"keyword.other.SlotSequence.wolfram"},{"match":"#\\\\d*","name":"keyword.other.Slot.wolfram"}]},"string_escaped_characters":{"patterns":[{"match":"\\\\\\\\[bfnrt\\\\\\"\\\\\\\\<>]","name":"donothighlight.constant.character.escape"},{"include":"#escaped_characters"}]},"stringifying-operators":{"patterns":[{"captures":{"1":{"name":"keyword.operator.PutAppend.wolfram"}},"match":"(>>>)(?=\\\\s*\\")"},{"captures":{"1":{"name":"keyword.operator.PutAppend.wolfram"},"2":{"name":"string.unquoted.wolfram"}},"match":"(>>>)\\\\s*(\\\\w+)"},{"match":">>>","name":"invalid.illegal"},{"captures":{"1":{"name":"keyword.operator.MessageName.wolfram"}},"match":"(::)(?=\\\\s*\\")"},{"captures":{"1":{"name":"keyword.operator.MessageName.wolfram"},"2":{"name":"string.unquoted.wolfram"}},"match":"(::)([[:alpha:]][[:alnum:]]*)"},{"match":"::","name":"invalid.illegal"},{"captures":{"1":{"name":"keyword.operator.Get.wolfram"}},"match":"(<<)(?=\\\\s*\\")"},{"captures":{"1":{"name":"keyword.operator.Get.wolfram"},"2":{"name":"string.unquoted.wolfram"}},"match":"(<<)\\\\s*([`[:alpha:]][`[:alnum:]]*)"},{"match":"<<","name":"invalid.illegal"},{"captures":{"1":{"name":"keyword.operator.Put.wolfram"}},"match":"(>>)(?=\\\\s*\\")"},{"captures":{"1":{"name":"keyword.operator.Put.wolfram"},"2":{"name":"string.unquoted.wolfram"}},"match":"(>>)\\\\s*(\\\\w*)"},{"match":">>","name":"invalid.illegal"}]},"strings":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end"}},"name":"string.quoted.double","patterns":[{"include":"#string_escaped_characters"}]}]},"symbols":{"patterns":[{"match":"System`(?:A(?:ASTriangle|PIFunction|RCHProcess|RIMAProcess|RMAProcess|RProcess|SATriangle|belianGroup|bort|bortKernels|bortProtect|bs|bsArg|bsArgPlot|bsoluteCorrelation|bsoluteCorrelationFunction|bsoluteCurrentValue|bsoluteDashing|bsoluteFileName|bsoluteOptions|bsolutePointSize|bsoluteThickness|bsoluteTime|bsoluteTiming|ccountingForm|ccumulate|ccuracy|cousticAbsorbingValue|cousticImpedanceValue|cousticNormalVelocityValue|cousticPDEComponent|cousticPressureCondition|cousticRadiationValue|cousticSoundHardValue|cousticSoundSoftCondition|ctionMenu|ctivate|cyclicGraphQ|ddSides|ddTo|ddUsers|djacencyGraph|djacencyList|djacencyMatrix|djacentMeshCells|djugate|djustTimeSeriesForecast|djustmentBox|dministrativeDivisionData|ffineHalfSpace|ffineSpace|ffineStateSpaceModel|ffineTransform|irPressureData|irSoundAttenuation|irTemperatureData|ircraftData|irportData|iryAi|iryAiPrime|iryAiZero|iryBi|iryBiPrime|iryBiZero|lgebraicIntegerQ|lgebraicNumber|lgebraicNumberDenominator|lgebraicNumberNorm|lgebraicNumberPolynomial|lgebraicNumberTrace|lgebraicUnitQ|llTrue|lphaChannel|lphabet|lphabeticOrder|lphabeticSort|lternatingFactorial|lternatingGroup|lternatives|mbientLight|mbiguityList|natomyData|natomyPlot3D|natomyStyling|nd|ndersonDarlingTest|ngerJ|ngleBracket|nglePath|nglePath3D|ngleVector|ngularGauge|nimate|nimator|nnotate|nnotation|nnotationDelete|nnotationKeys|nnotationValue|nnuity|nnuityDue|nnulus|nomalyDetection|nomalyDetectorFunction|ntihermitian|ntihermitianMatrixQ|ntisymmetric|ntisymmetricMatrixQ|ntonyms|nyOrder|nySubset|nyTrue|part|partSquareFree|ppellF1|ppend|ppendTo|pply|pplySides|pplyTo|rcCos|rcCosh|rcCot|rcCoth|rcCsc|rcCsch|rcCurvature|rcLength|rcSec|rcSech|rcSin|rcSinDistribution|rcSinh|rcTan|rcTanh|rea|rg|rgMax|rgMin|rgumentsOptions|rithmeticGeometricMean|rray|rrayComponents|rrayDepth|rrayFilter|rrayFlatten|rrayMesh|rrayPad|rrayPlot|rrayPlot3D|rrayQ|rrayResample|rrayReshape|rrayRules|rrays|rrow|rrowheads|ssert|ssociateTo|ssociation|ssociationMap|ssociationQ|ssociationThread|ssuming|symptotic|symptoticDSolveValue|symptoticEqual|symptoticEquivalent|symptoticExpectation|symptoticGreater|symptoticGreaterEqual|symptoticIntegrate|symptoticLess|symptoticLessEqual|symptoticOutputTracker|symptoticProbability|symptoticProduct|symptoticRSolveValue|symptoticSolve|symptoticSum|tomQ|ttributes|udio|udioAmplify|udioBlockMap|udioCapture|udioChannelCombine|udioChannelMix|udioChannelSeparate|udioChannels|udioData|udioDelay|udioDelete|udioDistance|udioFade|udioFrequencyShift|udioGenerator|udioInsert|udioIntervals|udioJoin|udioLength|udioLocalMeasurements|udioLoudness|udioMeasurements|udioNormalize|udioOverlay|udioPad|udioPan|udioPartition|udioPitchShift|udioPlot|udioQ|udioReplace|udioResample|udioReverb|udioReverse|udioSampleRate|udioSpectralMap|udioSpectralTransformation|udioSplit|udioTimeStretch|udioTrim|udioType|ugmentedPolyhedron|ugmentedSymmetricPolynomial|uthenticationDialog|utoRefreshed|utoSubmitting|utocorrelationTest))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:B(?:SplineBasis|SplineCurve|SplineFunction|SplineSurface|abyMonsterGroupB|ackslash|all|and|andpassFilter|andstopFilter|arChart|arChart3D|arLegend|arabasiAlbertGraphDistribution|arcodeImage|arcodeRecognize|aringhausHenzeTest|arlowProschanImportance|arnesG|artlettHannWindow|artlettWindow|aseDecode|aseEncode|aseForm|atesDistribution|attleLemarieWavelet|ecause|eckmannDistribution|eep|egin|eginDialogPacket|eginPackage|ellB|ellY|enfordDistribution|eniniDistribution|enktanderGibratDistribution|enktanderWeibullDistribution|ernoulliB|ernoulliDistribution|ernoulliGraphDistribution|ernoulliProcess|ernsteinBasis|esselFilterModel|esselI|esselJ|esselJZero|esselK|esselY|esselYZero|eta|etaBinomialDistribution|etaDistribution|etaNegativeBinomialDistribution|etaPrimeDistribution|etaRegularized|etween|etweennessCentrality|eveledPolyhedron|ezierCurve|ezierFunction|ilateralFilter|ilateralLaplaceTransform|ilateralZTransform|inCounts|inLists|inarize|inaryDeserialize|inaryDistance|inaryImageQ|inaryRead|inaryReadList|inarySerialize|inaryWrite|inomial|inomialDistribution|inomialProcess|inormalDistribution|iorthogonalSplineWavelet|ipartiteGraphQ|iquadraticFilterModel|irnbaumImportance|irnbaumSaundersDistribution|itAnd|itClear|itGet|itLength|itNot|itOr|itSet|itShiftLeft|itShiftRight|itXor|iweightLocation|iweightMidvariance|lackmanHarrisWindow|lackmanNuttallWindow|lackmanWindow|lank|lankNullSequence|lankSequence|lend|lock|lockMap|lockRandom|lomqvistBeta|lomqvistBetaTest|lur|lurring|odePlot|ohmanWindow|oole|ooleanConsecutiveFunction|ooleanConvert|ooleanCountingFunction|ooleanFunction|ooleanGraph|ooleanMaxterms|ooleanMinimize|ooleanMinterms|ooleanQ|ooleanRegion|ooleanTable|ooleanVariables|orderDimensions|orelTannerDistribution|ottomHatTransform|oundaryDiscretizeGraphics|oundaryDiscretizeRegion|oundaryMesh|oundaryMeshRegion|oundaryMeshRegionQ|oundedRegionQ|oundingRegion|oxData|oxMatrix|oxObject|oxWhiskerChart|racketingBar|rayCurtisDistance|readthFirstScan|reak|ridgeData|rightnessEqualize|roadcastStationData|rownForsytheTest|rownianBridgeProcess|ubbleChart|ubbleChart3D|uckyballGraph|uildingData|ulletGauge|usinessDayQ|utterflyGraph|utterworthFilterModel|utton|uttonBar|uttonBox|uttonNotebook|yteArray|yteArrayFormat|yteArrayFormatQ|yteArrayQ|yteArrayToString|yteCount))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:C(?:|DF|DFDeploy|DFWavelet|Form|MYKColor|SGRegion|SGRegionQ|SGRegionTree|alendarConvert|alendarData|allPacket|allout|anberraDistance|ancel|ancelButton|andlestickChart|anonicalGraph|anonicalName|anonicalWarpingCorrespondence|anonicalWarpingDistance|anonicalizePolygon|anonicalizePolyhedron|anonicalizeRegion|antorMesh|antorStaircase|ap|apForm|apitalDifferentialD|apitalize|apsuleShape|aputoD|arlemanLinearize|arlsonRC|arlsonRD|arlsonRE|arlsonRF|arlsonRG|arlsonRJ|arlsonRK|arlsonRM|armichaelLambda|aseSensitive|ases|ashflow|asoratian|atalanNumber|atch|atenate|auchyDistribution|auchyMatrix|auchyWindow|ayleyGraph|eiling|ell|ellGroup|ellGroupData|ellObject|ellPrint|ells|ellularAutomaton|ensoredDistribution|ensoring|enterArray|enterDot|enteredInterval|entralFeature|entralMoment|entralMomentGeneratingFunction|epstrogram|epstrogramArray|epstrumArray|hampernowneNumber|hanVeseBinarize|haracterCounts|haracterName|haracterRange|haracteristicFunction|haracteristicPolynomial|haracters|hebyshev1FilterModel|hebyshev2FilterModel|hebyshevT|hebyshevU|heck|heckAbort|heckArguments|heckbox|heckboxBar|hemicalData|hessboardDistance|hiDistribution|hiSquareDistribution|hineseRemainder|hoiceButtons|hoiceDialog|holeskyDecomposition|hop|hromaticPolynomial|hromaticityPlot|hromaticityPlot3D|ircle|ircleDot|ircleMinus|irclePlus|irclePoints|ircleThrough|ircleTimes|irculantGraph|ircularArcThrough|ircularOrthogonalMatrixDistribution|ircularQuaternionMatrixDistribution|ircularRealMatrixDistribution|ircularSymplecticMatrixDistribution|ircularUnitaryMatrixDistribution|ircumsphere|ityData|lassifierFunction|lassifierMeasurements|lassifierMeasurementsObject|lassify|lear|learAll|learAttributes|learCookies|learPermissions|learSystemCache|lebschGordan|lickPane|lickToCopy|lip|lock|lockGauge|lose|loseKernels|losenessCentrality|losing|loudAccountData|loudConnect|loudDeploy|loudDirectory|loudDisconnect|loudEvaluate|loudExport|loudFunction|loudGet|loudImport|loudLoggingData|loudObject|loudObjects|loudPublish|loudPut|loudSave|loudShare|loudSubmit|loudSymbol|loudUnshare|lusterClassify|lusteringComponents|lusteringMeasurements|lusteringTree|oefficient|oefficientArrays|oefficientList|oefficientRules|oifletWavelet|ollect|ollinearPoints|olon|olorBalance|olorCombine|olorConvert|olorData|olorDataFunction|olorDetect|olorDistance|olorNegate|olorProfileData|olorQ|olorQuantize|olorReplace|olorSeparate|olorSetter|olorSlider|olorToneMapping|olorize|olorsNear|olumn|ometData|ommonName|ommonUnits|ommonest|ommonestFilter|ommunityGraphPlot|ompanyData|ompatibleUnitQ|ompile|ompiledFunction|omplement|ompleteGraph|ompleteGraphQ|ompleteIntegral|ompleteKaryTree|omplex|omplexArrayPlot|omplexContourPlot|omplexExpand|omplexListPlot|omplexPlot|omplexPlot3D|omplexRegionPlot|omplexStreamPlot|omplexVectorPlot|omponentMeasurements|omposeList|omposeSeries|ompositeQ|omposition|ompoundElement|ompoundExpression|ompoundPoissonDistribution|ompoundPoissonProcess|ompoundRenewalProcess|ompress|oncaveHullMesh|ondition|onditionalExpression|onditioned|one|onfirm|onfirmAssert|onfirmBy|onfirmMatch|onformAudio|onformImages|ongruent|onicGradientFilling|onicHullRegion|onicOptimization|onjugate|onjugateTranspose|onjunction|onnectLibraryCallbackFunction|onnectedComponents|onnectedGraphComponents|onnectedGraphQ|onnectedMeshComponents|onnesWindow|onoverTest|onservativeConvectionPDETerm|onstantArray|onstantImage|onstantRegionQ|onstellationData|onstruct|ontainsAll|ontainsAny|ontainsExactly|ontainsNone|ontainsOnly|ontext|ontextToFileName|ontexts|ontinue|ontinuedFraction|ontinuedFractionK|ontinuousMarkovProcess|ontinuousTask|ontinuousTimeModelQ|ontinuousWaveletData|ontinuousWaveletTransform|ontourDetect|ontourPlot|ontourPlot3D|ontraharmonicMean|ontrol|ontrolActive|ontrollabilityGramian|ontrollabilityMatrix|ontrollableDecomposition|ontrollableModelQ|ontrollerInformation|ontrollerManipulate|ontrollerState|onvectionPDETerm|onvergents|onvexHullMesh|onvexHullRegion|onvexOptimization|onvexPolygonQ|onvexPolyhedronQ|onvexRegionQ|onvolve|onwayGroupCo1|onwayGroupCo2|onwayGroupCo3|oordinateBoundingBox|oordinateBoundingBoxArray|oordinateBounds|oordinateBoundsArray|oordinateChartData|oordinateTransform|oordinateTransformData|oplanarPoints|oprimeQ|oproduct|opulaDistribution|opyDatabin|opyDirectory|opyFile|opyToClipboard|oreNilpotentDecomposition|ornerFilter|orrelation|orrelationDistance|orrelationFunction|orrelationTest|os|osIntegral|osh|oshIntegral|osineDistance|osineWindow|ot|oth|oulombF|oulombG|oulombH1|oulombH2|ount|ountDistinct|ountDistinctBy|ountRoots|ountryData|ounts|ountsBy|ovariance|ovarianceFunction|oxIngersollRossProcess|oxModel|oxModelFit|oxianDistribution|ramerVonMisesTest|reateArchive|reateDatabin|reateDialog|reateDirectory|reateDocument|reateFile|reateManagedLibraryExpression|reateNotebook|reatePacletArchive|reatePalette|reatePermissionsGroup|reateUUID|reateWindow|riticalSection|riticalityFailureImportance|riticalitySuccessImportance|ross|rossMatrix|rossingCount|rossingDetect|rossingPolygon|sc|sch|ube|ubeRoot|uboid|umulant|umulantGeneratingFunction|umulativeFeatureImpactPlot|up|upCap|url|urrencyConvert|urrentDate|urrentImage|urrentValue|urvatureFlowFilter|ycleGraph|ycleIndexPolynomial|ycles|yclicGroup|yclotomic|ylinder|ylindricalDecomposition|ylindricalDecompositionFunction))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:D(?:|Eigensystem|Eigenvalues|GaussianWavelet|MSList|MSString|Solve|SolveValue|agumDistribution|amData|amerauLevenshteinDistance|arker|ashing|ataDistribution|atabin|atabinAdd|atabinUpload|atabins|ataset|ateBounds|ateDifference|ateHistogram|ateList|ateListLogPlot|ateListPlot|ateListStepPlot|ateObject|ateObjectQ|ateOverlapsQ|atePattern|atePlus|ateRange|ateScale|ateSelect|ateString|ateValue|ateWithinQ|ated|atedUnit|aubechiesWavelet|avisDistribution|awsonF|ayCount|ayHemisphere|ayMatchQ|ayName|ayNightTerminator|ayPlus|ayRange|ayRound|aylightQ|eBruijnGraph|eBruijnSequence|ecapitalize|ecimalForm|eclarePackage|ecompose|ecrement|ecrypt|edekindEta|eepSpaceProbeData|efault|efaultButton|efaultValues|efer|efineInputStreamMethod|efineOutputStreamMethod|efineResourceFunction|efinition|egreeCentrality|egreeGraphDistribution|el|elaunayMesh|elayed|elete|eleteAdjacentDuplicates|eleteAnomalies|eleteBorderComponents|eleteCases|eleteDirectory|eleteDuplicates|eleteDuplicatesBy|eleteFile|eleteMissing|eleteObject|eletePermissionsKey|eleteSmallComponents|eleteStopwords|elimitedSequence|endrogram|enominator|ensityHistogram|ensityPlot|ensityPlot3D|eploy|epth|epthFirstScan|erivative|erivativeFilter|erivativePDETerm|esignMatrix|et|eviceClose|eviceConfigure|eviceExecute|eviceExecuteAsynchronous|eviceObject|eviceOpen|eviceRead|eviceReadBuffer|eviceReadLatest|eviceReadList|eviceReadTimeSeries|eviceStreams|eviceWrite|eviceWriteBuffer|evices|iagonal|iagonalMatrix|iagonalMatrixQ|iagonalizableMatrixQ|ialog|ialogInput|ialogNotebook|ialogReturn|iamond|iamondMatrix|iceDissimilarity|ictionaryLookup|ictionaryWordQ|ifferenceDelta|ifferenceQuotient|ifferenceRoot|ifferenceRootReduce|ifferences|ifferentialD|ifferentialRoot|ifferentialRootReduce|ifferentiatorFilter|iffusionPDETerm|igitCount|igitQ|ihedralAngle|ihedralGroup|ilation|imensionReduce|imensionReducerFunction|imensionReduction|imensionalCombinations|imensionalMeshComponents|imensions|iracComb|iracDelta|irectedEdge|irectedGraph|irectedGraphQ|irectedInfinity|irectionalLight|irective|irectory|irectoryName|irectoryQ|irectoryStack|irichletBeta|irichletCharacter|irichletCondition|irichletConvolve|irichletDistribution|irichletEta|irichletL|irichletLambda|irichletTransform|irichletWindow|iscreteAsymptotic|iscreteChirpZTransform|iscreteConvolve|iscreteDelta|iscreteHadamardTransform|iscreteIndicator|iscreteInputOutputModel|iscreteLQEstimatorGains|iscreteLQRegulatorGains|iscreteLimit|iscreteLyapunovSolve|iscreteMarkovProcess|iscreteMaxLimit|iscreteMinLimit|iscretePlot|iscretePlot3D|iscreteRatio|iscreteRiccatiSolve|iscreteShift|iscreteTimeModelQ|iscreteUniformDistribution|iscreteWaveletData|iscreteWaveletPacketTransform|iscreteWaveletTransform|iscretizeGraphics|iscretizeRegion|iscriminant|isjointQ|isjunction|isk|iskMatrix|iskSegment|ispatch|isplayEndPacket|isplayForm|isplayPacket|istanceMatrix|istanceTransform|istribute|istributeDefinitions|istributed|istributionChart|istributionFitTest|istributionParameterAssumptions|istributionParameterQ|iv|ivide|ivideBy|ivideSides|ivisible|ivisorSigma|ivisorSum|ivisors|o|ocumentGenerator|ocumentGeneratorInformation|ocumentGenerators|ocumentNotebook|odecahedron|ominantColors|ominatorTreeGraph|ominatorVertexList|ot|otEqual|oubleBracketingBar|oubleDownArrow|oubleLeftArrow|oubleLeftRightArrow|oubleLeftTee|oubleLongLeftArrow|oubleLongLeftRightArrow|oubleLongRightArrow|oubleRightArrow|oubleRightTee|oubleUpArrow|oubleUpDownArrow|oubleVerticalBar|ownArrow|ownArrowBar|ownArrowUpArrow|ownLeftRightVector|ownLeftTeeVector|ownLeftVector|ownLeftVectorBar|ownRightTeeVector|ownRightVector|ownRightVectorBar|ownTee|ownTeeArrow|ownValues|ownsample|razinInverse|rop|ropShadowing|t|ualPlanarGraph|ualPolyhedron|ualSystemsModel|umpSave|uplicateFreeQ|uration|ynamic|ynamicGeoGraphics|ynamicModule|ynamicSetting|ynamicWrapper))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:E(?:arthImpactData|arthquakeData|ccentricityCentrality|choEvaluation|choFunction|choLabel|dgeAdd|dgeBetweennessCentrality|dgeChromaticNumber|dgeConnectivity|dgeContract|dgeCount|dgeCoverQ|dgeCycleMatrix|dgeDelete|dgeDetect|dgeForm|dgeIndex|dgeList|dgeQ|dgeRules|dgeTaggedGraph|dgeTaggedGraphQ|dgeTags|dgeTransitiveGraphQ|dgeWeightedGraphQ|ditDistance|ffectiveInterest|igensystem|igenvalues|igenvectorCentrality|igenvectors|lement|lementData|liminate|llipsoid|llipticE|llipticExp|llipticExpPrime|llipticF|llipticFilterModel|llipticK|llipticLog|llipticNomeQ|llipticPi|llipticTheta|llipticThetaPrime|mbedCode|mbeddedHTML|mbeddedService|mitSound|mpiricalDistribution|mptyGraphQ|mptyRegion|nclose|ncode|ncrypt|ncryptedObject|nd|ndDialogPacket|ndPackage|ngineeringForm|nterExpressionPacket|nterTextPacket|ntity|ntityClass|ntityClassList|ntityCopies|ntityGroup|ntityInstance|ntityList|ntityPrefetch|ntityProperties|ntityProperty|ntityPropertyClass|ntityRegister|ntityStores|ntityTypeName|ntityUnregister|ntityValue|ntropy|ntropyFilter|nvironment|qual|qualTilde|qualTo|quilibrium|quirippleFilterKernel|quivalent|rf|rfc|rfi|rlangB|rlangC|rlangDistribution|rosion|rrorBox|stimatedBackground|stimatedDistribution|stimatedPointNormals|stimatedProcess|stimatorGains|stimatorRegulator|uclideanDistance|ulerAngles|ulerCharacteristic|ulerE|ulerMatrix|ulerPhi|ulerianGraphQ|valuate|valuatePacket|valuationBox|valuationCell|valuationData|valuationNotebook|valuationObject|venQ|ventData|ventHandler|ventSeries|xactBlackmanWindow|xactNumberQ|xampleData|xcept|xists|xoplanetData|xp|xpGammaDistribution|xpIntegralE|xpIntegralEi|xpToTrig|xpand|xpandAll|xpandDenominator|xpandFileName|xpandNumerator|xpectation|xponent|xponentialDistribution|xponentialGeneratingFunction|xponentialMovingAverage|xponentialPowerDistribution|xport|xportByteArray|xportForm|xportString|xpressionCell|xpressionGraph|xtendedGCD|xternalBundle|xtract|xtractArchive|xtractPacletArchive|xtremeValueDistribution))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:F(?:ARIMAProcess|RatioDistribution|aceAlign|aceForm|acialFeatures|actor|actorInteger|actorList|actorSquareFree|actorSquareFreeList|actorTerms|actorTermsList|actorial|actorial2|actorialMoment|actorialMomentGeneratingFunction|actorialPower|ailure|ailureDistribution|ailureQ|areySequence|eatureImpactPlot|eatureNearest|eatureSpacePlot|eatureSpacePlot3D|eatureValueDependencyPlot|eatureValueImpactPlot|eedbackLinearize|etalGrowthData|ibonacci|ibonorial|ile|ileBaseName|ileByteCount|ileDate|ileExistsQ|ileExtension|ileFormat|ileFormatQ|ileHash|ileNameDepth|ileNameDrop|ileNameJoin|ileNameSetter|ileNameSplit|ileNameTake|ileNames|ilePrint|ileSize|ileSystemMap|ileSystemScan|ileTemplate|ileTemplateApply|ileType|illedCurve|illedTorus|illingTransform|ilterRules|inancialBond|inancialData|inancialDerivative|inancialIndicator|ind|indAnomalies|indArgMax|indArgMin|indClique|indClusters|indCookies|indCurvePath|indCycle|indDevices|indDistribution|indDistributionParameters|indDivisions|indEdgeColoring|indEdgeCover|indEdgeCut|indEdgeIndependentPaths|indEulerianCycle|indFaces|indFile|indFit|indFormula|indFundamentalCycles|indGeneratingFunction|indGeoLocation|indGeometricTransform|indGraphCommunities|indGraphIsomorphism|indGraphPartition|indHamiltonianCycle|indHamiltonianPath|indHiddenMarkovStates|indIndependentEdgeSet|indIndependentVertexSet|indInstance|indIntegerNullVector|indIsomorphicSubgraph|indKClan|indKClique|indKClub|indKPlex|indLibrary|indLinearRecurrence|indList|indMatchingColor|indMaxValue|indMaximum|indMaximumCut|indMaximumFlow|indMeshDefects|indMinValue|indMinimum|indMinimumCostFlow|indMinimumCut|indPath|indPeaks|indPermutation|indPlanarColoring|indPostmanTour|indProcessParameters|indRegionTransform|indRepeat|indRoot|indSequenceFunction|indShortestPath|indShortestTour|indSpanningTree|indSubgraphIsomorphism|indThreshold|indTransientRepeat|indVertexColoring|indVertexCover|indVertexCut|indVertexIndependentPaths|inishDynamic|initeAbelianGroupCount|initeGroupCount|initeGroupData|irst|irstCase|irstPassageTimeDistribution|irstPosition|ischerGroupFi22|ischerGroupFi23|ischerGroupFi24Prime|isherHypergeometricDistribution|isherRatioTest|isherZDistribution|it|ittedModel|ixedOrder|ixedPoint|ixedPointList|latShading|latTopWindow|latten|lattenAt|lightData|lipView|loor|lowPolynomial|old|oldList|oldPair|oldPairList|oldWhile|oldWhileList|or|orAll|ormBox|ormFunction|ormObject|ormPage|ormat|ormulaData|ormulaLookup|ortranForm|ourier|ourierCoefficient|ourierCosCoefficient|ourierCosSeries|ourierCosTransform|ourierDCT|ourierDCTFilter|ourierDCTMatrix|ourierDST|ourierDSTMatrix|ourierMatrix|ourierSequenceTransform|ourierSeries|ourierSinCoefficient|ourierSinSeries|ourierSinTransform|ourierTransform|ourierTrigSeries|oxH|ractionBox|ractionalBrownianMotionProcess|ractionalD|ractionalGaussianNoiseProcess|ractionalPart|rameBox|ramed|rechetDistribution|reeQ|renetSerretSystem|requencySamplingFilterKernel|resnelC|resnelF|resnelG|resnelS|robeniusNumber|robeniusSolve|romAbsoluteTime|romCharacterCode|romCoefficientRules|romContinuedFraction|romDMS|romDateString|romDigits|romEntity|romJulianDate|romLetterNumber|romPolarCoordinates|romRomanNumeral|romSphericalCoordinates|romUnixTime|rontEndExecute|rontEndToken|rontEndTokenExecute|ullDefinition|ullForm|ullGraphics|ullInformationOutputRegulator|ullRegion|ullSimplify|unction|unctionAnalytic|unctionBijective|unctionContinuous|unctionConvexity|unctionDiscontinuities|unctionDomain|unctionExpand|unctionInjective|unctionInterpolation|unctionMeromorphic|unctionMonotonicity|unctionPeriod|unctionRange|unctionSign|unctionSingularities|unctionSurjective|ussellVeselyImportance))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:G(?:ARCHProcess|CD|aborFilter|aborMatrix|aborWavelet|ainMargins|ainPhaseMargins|alaxyData|amma|ammaDistribution|ammaRegularized|ather|atherBy|aussianFilter|aussianMatrix|aussianOrthogonalMatrixDistribution|aussianSymplecticMatrixDistribution|aussianUnitaryMatrixDistribution|aussianWindow|egenbauerC|eneralizedLinearModelFit|enerateAsymmetricKeyPair|enerateDocument|enerateHTTPResponse|enerateSymmetricKey|eneratingFunction|enericCylindricalDecomposition|enomeData|enomeLookup|eoAntipode|eoArea|eoBoundary|eoBoundingBox|eoBounds|eoBoundsRegion|eoBoundsRegionBoundary|eoBubbleChart|eoCircle|eoContourPlot|eoDensityPlot|eoDestination|eoDirection|eoDisk|eoDisplacement|eoDistance|eoDistanceList|eoElevationData|eoEntities|eoGraphPlot|eoGraphics|eoGridDirectionDifference|eoGridPosition|eoGridUnitArea|eoGridUnitDistance|eoGridVector|eoGroup|eoHemisphere|eoHemisphereBoundary|eoHistogram|eoIdentify|eoImage|eoLength|eoListPlot|eoMarker|eoNearest|eoPath|eoPolygon|eoPosition|eoPositionENU|eoPositionXYZ|eoProjectionData|eoRegionValuePlot|eoSmoothHistogram|eoStreamPlot|eoStyling|eoVariant|eoVector|eoVectorENU|eoVectorPlot|eoVectorXYZ|eoVisibleRegion|eoVisibleRegionBoundary|eoWithinQ|eodesicClosing|eodesicDilation|eodesicErosion|eodesicOpening|eodesicPolyhedron|eodesyData|eogravityModelData|eologicalPeriodData|eomagneticModelData|eometricBrownianMotionProcess|eometricDistribution|eometricMean|eometricMeanFilter|eometricOptimization|eometricTransformation|estureHandler|et|etEnvironment|lobalClusteringCoefficient|low|ompertzMakehamDistribution|oochShading|oodmanKruskalGamma|oodmanKruskalGammaTest|oto|ouraudShading|rad|radientFilter|radientFittedMesh|radientOrientationFilter|rammarApply|rammarRules|rammarToken|raph|raph3D|raphAssortativity|raphAutomorphismGroup|raphCenter|raphComplement|raphData|raphDensity|raphDiameter|raphDifference|raphDisjointUnion|raphDistance|raphDistanceMatrix|raphEmbedding|raphHub|raphIntersection|raphJoin|raphLinkEfficiency|raphPeriphery|raphPlot|raphPlot3D|raphPower|raphProduct|raphPropertyDistribution|raphQ|raphRadius|raphReciprocity|raphSum|raphUnion|raphics|raphics3D|raphicsColumn|raphicsComplex|raphicsGrid|raphicsGroup|raphicsRow|rayLevel|reater|reaterEqual|reaterEqualLess|reaterEqualThan|reaterFullEqual|reaterGreater|reaterLess|reaterSlantEqual|reaterThan|reaterTilde|reenFunction|rid|ridBox|ridGraph|roebnerBasis|roupBy|roupCentralizer|roupElementFromWord|roupElementPosition|roupElementQ|roupElementToWord|roupElements|roupGenerators|roupMultiplicationTable|roupOrbits|roupOrder|roupSetwiseStabilizer|roupStabilizer|roupStabilizerChain|roupings|rowCutComponents|udermannian|uidedFilter|umbelDistribution))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:H(?:ITSCentrality|TTPErrorResponse|TTPRedirect|TTPRequest|TTPRequestData|TTPResponse|aarWavelet|adamardMatrix|alfLine|alfNormalDistribution|alfPlane|alfSpace|alftoneShading|amiltonianGraphQ|ammingDistance|ammingWindow|ankelH1|ankelH2|ankelMatrix|ankelTransform|annPoissonWindow|annWindow|aradaNortonGroupHN|araryGraph|armonicMean|armonicMeanFilter|armonicNumber|ash|atchFilling|atchShading|aversine|azardFunction|ead|eatFluxValue|eatInsulationValue|eatOutflowValue|eatRadiationValue|eatSymmetryValue|eatTemperatureCondition|eatTransferPDEComponent|eatTransferValue|eavisideLambda|eavisidePi|eavisideTheta|eldGroupHe|elmholtzPDEComponent|ermiteDecomposition|ermiteH|ermitian|ermitianMatrixQ|essenbergDecomposition|eunB|eunBPrime|eunC|eunCPrime|eunD|eunDPrime|eunG|eunGPrime|eunT|eunTPrime|exahedron|iddenMarkovProcess|ighlightGraph|ighlightImage|ighlightMesh|ighlighted|ighpassFilter|igmanSimsGroupHS|ilbertCurve|ilbertFilter|ilbertMatrix|istogram|istogram3D|istogramDistribution|istogramList|istogramTransform|istogramTransformInterpolation|istoricalPeriodData|itMissTransform|jorthDistribution|odgeDual|oeffdingD|oeffdingDTest|old|oldComplete|oldForm|oldPattern|orizontalGauge|ornerForm|ostLookup|otellingTSquareDistribution|oytDistribution|ue|umanGrowthData|umpDownHump|umpEqual|urwitzLerchPhi|urwitzZeta|yperbolicDistribution|ypercubeGraph|yperexponentialDistribution|yperfactorial|ypergeometric0F1|ypergeometric0F1Regularized|ypergeometric1F1|ypergeometric1F1Regularized|ypergeometric2F1|ypergeometric2F1Regularized|ypergeometricDistribution|ypergeometricPFQ|ypergeometricPFQRegularized|ypergeometricU|yperlink|yperplane|ypoexponentialDistribution|ypothesisTestData))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:I(?:PAddress|conData|conize|cosahedron|dentity|dentityMatrix|f|fCompiled|gnoringInactive|m|mage|mage3D|mage3DProjection|mage3DSlices|mageAccumulate|mageAdd|mageAdjust|mageAlign|mageApply|mageApplyIndexed|mageAspectRatio|mageAssemble|mageCapture|mageChannels|mageClip|mageCollage|mageColorSpace|mageCompose|mageConvolve|mageCooccurrence|mageCorners|mageCorrelate|mageCorrespondingPoints|mageCrop|mageData|mageDeconvolve|mageDemosaic|mageDifference|mageDimensions|mageDisplacements|mageDistance|mageEffect|mageExposureCombine|mageFeatureTrack|mageFileApply|mageFileFilter|mageFileScan|mageFilter|mageFocusCombine|mageForestingComponents|mageForwardTransformation|mageHistogram|mageIdentify|mageInstanceQ|mageKeypoints|mageLevels|mageLines|mageMarker|mageMeasurements|mageMesh|mageMultiply|magePad|magePartition|magePeriodogram|magePerspectiveTransformation|mageQ|mageRecolor|mageReflect|mageResize|mageRestyle|mageRotate|mageSaliencyFilter|mageScaled|mageScan|mageSubtract|mageTake|mageTransformation|mageTrim|mageType|mageValue|mageValuePositions|mageVectorscopePlot|mageWaveformPlot|mplicitD|mplicitRegion|mplies|mport|mportByteArray|mportString|mprovementImportance|nactivate|nactive|ncidenceGraph|ncidenceList|ncidenceMatrix|ncrement|ndefiniteMatrixQ|ndependenceTest|ndependentEdgeSetQ|ndependentPhysicalQuantity|ndependentUnit|ndependentUnitDimension|ndependentVertexSetQ|ndexEdgeTaggedGraph|ndexGraph|ndexed|nexactNumberQ|nfiniteLine|nfiniteLineThrough|nfinitePlane|nfix|nflationAdjust|nformation|nhomogeneousPoissonProcess|nner|nnerPolygon|nnerPolyhedron|npaint|nput|nputField|nputForm|nputNamePacket|nputNotebook|nputPacket|nputStream|nputString|nputStringPacket|nsert|nsertLinebreaks|nset|nsphere|nstall|nstallService|ntegerDigits|ntegerExponent|ntegerLength|ntegerName|ntegerPart|ntegerPartitions|ntegerQ|ntegerReverse|ntegerString|ntegrate|nteractiveTradingChart|nternallyBalancedDecomposition|nterpolatingFunction|nterpolatingPolynomial|nterpolation|nterpretation|nterpretationBox|nterpreter|nterquartileRange|nterrupt|ntersectingQ|ntersection|nterval|ntervalIntersection|ntervalMemberQ|ntervalSlider|ntervalUnion|nverse|nverseBetaRegularized|nverseBilateralLaplaceTransform|nverseBilateralZTransform|nverseCDF|nverseChiSquareDistribution|nverseContinuousWaveletTransform|nverseDistanceTransform|nverseEllipticNomeQ|nverseErf|nverseErfc|nverseFourier|nverseFourierCosTransform|nverseFourierSequenceTransform|nverseFourierSinTransform|nverseFourierTransform|nverseFunction|nverseGammaDistribution|nverseGammaRegularized|nverseGaussianDistribution|nverseGudermannian|nverseHankelTransform|nverseHaversine|nverseJacobiCD|nverseJacobiCN|nverseJacobiCS|nverseJacobiDC|nverseJacobiDN|nverseJacobiDS|nverseJacobiNC|nverseJacobiND|nverseJacobiNS|nverseJacobiSC|nverseJacobiSD|nverseJacobiSN|nverseLaplaceTransform|nverseMellinTransform|nversePermutation|nverseRadon|nverseRadonTransform|nverseSeries|nverseShortTimeFourier|nverseSpectrogram|nverseSurvivalFunction|nverseTransformedRegion|nverseWaveletTransform|nverseWeierstrassP|nverseWishartMatrixDistribution|nverseZTransform|nvisible|rreduciblePolynomialQ|slandData|solatingInterval|somorphicGraphQ|somorphicSubgraphQ|sotopeData|tem|toProcess))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:J(?:accardDissimilarity|acobiAmplitude|acobiCD|acobiCN|acobiCS|acobiDC|acobiDN|acobiDS|acobiEpsilon|acobiNC|acobiND|acobiNS|acobiP|acobiSC|acobiSD|acobiSN|acobiSymbol|acobiZN|acobiZeta|ankoGroupJ1|ankoGroupJ2|ankoGroupJ3|ankoGroupJ4|arqueBeraALMTest|ohnsonDistribution|oin|oinAcross|oinForm|oinedCurve|ordanDecomposition|ordanModelDecomposition|uliaSetBoettcher|uliaSetIterationCount|uliaSetPlot|uliaSetPoints|ulianDate))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:K(?:CoreComponents|Distribution|EdgeConnectedComponents|EdgeConnectedGraphQ|VertexConnectedComponents|VertexConnectedGraphQ|agiChart|aiserBesselWindow|aiserWindow|almanEstimator|almanFilter|arhunenLoeveDecomposition|aryTree|atzCentrality|elvinBei|elvinBer|elvinKei|elvinKer|endallTau|endallTauTest|ernelMixtureDistribution|ernelObject|ernels|ey|eyComplement|eyDrop|eyDropFrom|eyExistsQ|eyFreeQ|eyIntersection|eyMap|eyMemberQ|eySelect|eySort|eySortBy|eyTake|eyUnion|eyValueMap|eyValuePattern|eys|illProcess|irchhoffGraph|irchhoffMatrix|leinInvariantJ|napsackSolve|nightTourGraph|notData|nownUnitQ|ochCurve|olmogorovSmirnovTest|roneckerDelta|roneckerModelDecomposition|roneckerProduct|roneckerSymbol|uiperTest|umaraswamyDistribution|urtosis|uwaharaFilter))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:L(?:ABColor|CHColor|CM|QEstimatorGains|QGRegulator|QOutputRegulatorGains|QRegulatorGains|UDecomposition|UVColor|abel|abeled|aguerreL|akeData|ambdaComponents|ameC|ameCPrime|ameEigenvalueA|ameEigenvalueB|ameS|ameSPrime|aminaData|anczosWindow|andauDistribution|anguageData|anguageIdentify|aplaceDistribution|aplaceTransform|aplacian|aplacianFilter|aplacianGaussianFilter|aplacianPDETerm|ast|atitude|atitudeLongitude|atticeData|atticeReduce|aunchKernels|ayeredGraphPlot|ayeredGraphPlot3D|eafCount|eapVariant|eapYearQ|earnDistribution|earnedDistribution|eastSquares|eastSquaresFilterKernel|eftArrow|eftArrowBar|eftArrowRightArrow|eftDownTeeVector|eftDownVector|eftDownVectorBar|eftRightArrow|eftRightVector|eftTee|eftTeeArrow|eftTeeVector|eftTriangle|eftTriangleBar|eftTriangleEqual|eftUpDownVector|eftUpTeeVector|eftUpVector|eftUpVectorBar|eftVector|eftVectorBar|egended|egendreP|egendreQ|ength|engthWhile|erchPhi|ess|essEqual|essEqualGreater|essEqualThan|essFullEqual|essGreater|essLess|essSlantEqual|essThan|essTilde|etterCounts|etterNumber|etterQ|evel|eveneTest|eviCivitaTensor|evyDistribution|exicographicOrder|exicographicSort|ibraryDataType|ibraryFunction|ibraryFunctionError|ibraryFunctionInformation|ibraryFunctionLoad|ibraryFunctionUnload|ibraryLoad|ibraryUnload|iftingFilterData|iftingWaveletTransform|ighter|ikelihood|imit|indleyDistribution|ine|ineBreakChart|ineGraph|ineIntegralConvolutionPlot|ineLegend|inearFractionalOptimization|inearFractionalTransform|inearGradientFilling|inearGradientImage|inearModelFit|inearOptimization|inearRecurrence|inearSolve|inearSolveFunction|inearizingTransformationData|inkActivate|inkClose|inkConnect|inkCreate|inkInterrupt|inkLaunch|inkObject|inkPatterns|inkRankCentrality|inkRead|inkReadyQ|inkWrite|inks|iouvilleLambda|ist|istAnimate|istContourPlot|istContourPlot3D|istConvolve|istCorrelate|istCurvePathPlot|istDeconvolve|istDensityPlot|istDensityPlot3D|istFourierSequenceTransform|istInterpolation|istLineIntegralConvolutionPlot|istLinePlot|istLinePlot3D|istLogLinearPlot|istLogLogPlot|istLogPlot|istPicker|istPickerBox|istPlay|istPlot|istPlot3D|istPointPlot3D|istPolarPlot|istQ|istSliceContourPlot3D|istSliceDensityPlot3D|istSliceVectorPlot3D|istStepPlot|istStreamDensityPlot|istStreamPlot|istStreamPlot3D|istSurfacePlot3D|istVectorDensityPlot|istVectorDisplacementPlot|istVectorDisplacementPlot3D|istVectorPlot|istVectorPlot3D|istZTransform|ocalAdaptiveBinarize|ocalCache|ocalClusteringCoefficient|ocalEvaluate|ocalObject|ocalObjects|ocalSubmit|ocalSymbol|ocalTime|ocalTimeZone|ocationEquivalenceTest|ocationTest|ocator|ocatorPane|og|og10|og2|ogBarnesG|ogGamma|ogGammaDistribution|ogIntegral|ogLikelihood|ogLinearPlot|ogLogPlot|ogLogisticDistribution|ogMultinormalDistribution|ogNormalDistribution|ogPlot|ogRankTest|ogSeriesDistribution|ogicalExpand|ogisticDistribution|ogisticSigmoid|ogitModelFit|ongLeftArrow|ongLeftRightArrow|ongRightArrow|ongest|ongestCommonSequence|ongestCommonSequencePositions|ongestCommonSubsequence|ongestCommonSubsequencePositions|ongestOrderedSequence|ongitude|ookup|oopFreeGraphQ|owerCaseQ|owerLeftArrow|owerRightArrow|owerTriangularMatrix|owerTriangularMatrixQ|owerTriangularize|owpassFilter|ucasL|uccioSamiComponents|unarEclipse|yapunovSolve|yonsGroupLy))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:M(?:AProcess|achineNumberQ|agnify|ailReceiverFunction|ajority|akeBoxes|akeExpression|anagedLibraryExpressionID|anagedLibraryExpressionQ|andelbrotSetBoettcher|andelbrotSetDistance|andelbrotSetIterationCount|andelbrotSetMemberQ|andelbrotSetPlot|angoldtLambda|anhattanDistance|anipulate|anipulator|annWhitneyTest|annedSpaceMissionData|antissaExponent|ap|apAll|apApply|apAt|apIndexed|apThread|archenkoPasturDistribution|arcumQ|ardiaCombinedTest|ardiaKurtosisTest|ardiaSkewnessTest|arginalDistribution|arkovProcessProperties|assConcentrationCondition|assFluxValue|assImpermeableBoundaryValue|assOutflowValue|assSymmetryValue|assTransferValue|assTransportPDEComponent|atchQ|atchingDissimilarity|aterialShading|athMLForm|athematicalFunctionData|athieuC|athieuCPrime|athieuCharacteristicA|athieuCharacteristicB|athieuCharacteristicExponent|athieuGroupM11|athieuGroupM12|athieuGroupM22|athieuGroupM23|athieuGroupM24|athieuS|athieuSPrime|atrices|atrixExp|atrixForm|atrixFunction|atrixLog|atrixNormalDistribution|atrixPlot|atrixPower|atrixPropertyDistribution|atrixQ|atrixRank|atrixTDistribution|ax|axDate|axDetect|axFilter|axLimit|axMemoryUsed|axStableDistribution|axValue|aximalBy|aximize|axwellDistribution|cLaughlinGroupMcL|ean|eanClusteringCoefficient|eanDegreeConnectivity|eanDeviation|eanFilter|eanGraphDistance|eanNeighborDegree|eanShift|eanShiftFilter|edian|edianDeviation|edianFilter|edicalTestData|eijerG|eijerGReduce|eixnerDistribution|ellinConvolve|ellinTransform|emberQ|emoryAvailable|emoryConstrained|emoryInUse|engerMesh|enuPacket|enuView|erge|ersennePrimeExponent|ersennePrimeExponentQ|eshCellCount|eshCellIndex|eshCells|eshConnectivityGraph|eshCoordinates|eshPrimitives|eshRegion|eshRegionQ|essage|essageDialog|essageList|essageName|essagePacket|essages|eteorShowerData|exicanHatWavelet|eyerWavelet|in|inDate|inDetect|inFilter|inLimit|inMax|inStableDistribution|inValue|ineralData|inimalBy|inimalPolynomial|inimalStateSpaceModel|inimize|inimumTimeIncrement|inkowskiQuestionMark|inorPlanetData|inors|inus|inusPlus|issing|issingQ|ittagLefflerE|ixedFractionParts|ixedGraphQ|ixedMagnitude|ixedRadix|ixedRadixQuantity|ixedUnit|ixtureDistribution|od|odelPredictiveController|odularInverse|odularLambda|odule|oebiusMu|oment|omentConvert|omentEvaluate|omentGeneratingFunction|omentOfInertia|onitor|onomialList|onsterGroupM|oonPhase|oonPosition|orletWavelet|orphologicalBinarize|orphologicalBranchPoints|orphologicalComponents|orphologicalEulerNumber|orphologicalGraph|orphologicalPerimeter|orphologicalTransform|ortalityData|ost|ountainData|ouseAnnotation|ouseAppearance|ousePosition|ouseover|ovieData|ovingAverage|ovingMap|ovingMedian|oyalDistribution|ulticolumn|ultigraphQ|ultinomial|ultinomialDistribution|ultinormalDistribution|ultiplicativeOrder|ultiplySides|ultivariateHypergeometricDistribution|ultivariatePoissonDistribution|ultivariateTDistribution))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:N(?:|ArgMax|ArgMin|Cache|CaputoD|DEigensystem|DEigenvalues|DSolve|DSolveValue|Expectation|FractionalD|Integrate|MaxValue|Maximize|MinValue|Minimize|Probability|Product|Roots|Solve|SolveValues|Sum|akagamiDistribution|ameQ|ames|and|earest|earestFunction|earestMeshCells|earestNeighborGraph|earestTo|ebulaData|eedlemanWunschSimilarity|eeds|egative|egativeBinomialDistribution|egativeDefiniteMatrixQ|egativeMultinomialDistribution|egativeSemidefiniteMatrixQ|egativelyOrientedPoints|eighborhoodData|eighborhoodGraph|est|estGraph|estList|estWhile|estWhileList|estedGreaterGreater|estedLessLess|eumannValue|evilleThetaC|evilleThetaD|evilleThetaN|evilleThetaS|extCell|extDate|extPrime|icholsPlot|ightHemisphere|onCommutativeMultiply|onNegative|onPositive|oncentralBetaDistribution|oncentralChiSquareDistribution|oncentralFRatioDistribution|oncentralStudentTDistribution|ondimensionalizationTransform|oneTrue|onlinearModelFit|onlinearStateSpaceModel|onlocalMeansFilter|or|orlundB|orm|ormal|ormalDistribution|ormalMatrixQ|ormalize|ormalizedSquaredEuclideanDistance|ot|otCongruent|otCupCap|otDoubleVerticalBar|otElement|otEqualTilde|otExists|otGreater|otGreaterEqual|otGreaterFullEqual|otGreaterGreater|otGreaterLess|otGreaterSlantEqual|otGreaterTilde|otHumpDownHump|otHumpEqual|otLeftTriangle|otLeftTriangleBar|otLeftTriangleEqual|otLess|otLessEqual|otLessFullEqual|otLessGreater|otLessLess|otLessSlantEqual|otLessTilde|otNestedGreaterGreater|otNestedLessLess|otPrecedes|otPrecedesEqual|otPrecedesSlantEqual|otPrecedesTilde|otReverseElement|otRightTriangle|otRightTriangleBar|otRightTriangleEqual|otSquareSubset|otSquareSubsetEqual|otSquareSuperset|otSquareSupersetEqual|otSubset|otSubsetEqual|otSucceeds|otSucceedsEqual|otSucceedsSlantEqual|otSucceedsTilde|otSuperset|otSupersetEqual|otTilde|otTildeEqual|otTildeFullEqual|otTildeTilde|otVerticalBar|otebook|otebookApply|otebookClose|otebookDelete|otebookDirectory|otebookEvaluate|otebookFileName|otebookFind|otebookGet|otebookImport|otebookInformation|otebookLocate|otebookObject|otebookOpen|otebookPrint|otebookPut|otebookRead|otebookSave|otebookSelection|otebookTemplate|otebookWrite|otebooks|othing|uclearExplosionData|uclearReactorData|ullSpace|umberCompose|umberDecompose|umberDigit|umberExpand|umberFieldClassNumber|umberFieldDiscriminant|umberFieldFundamentalUnits|umberFieldIntegralBasis|umberFieldNormRepresentatives|umberFieldRegulator|umberFieldRootsOfUnity|umberFieldSignature|umberForm|umberLinePlot|umberQ|umerator|umeratorDenominator|umericQ|umericalOrder|umericalSort|uttallWindow|yquistPlot))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:O(?:|NanGroupON|bservabilityGramian|bservabilityMatrix|bservableDecomposition|bservableModelQ|ceanData|ctahedron|ddQ|ff|ffset|n|nce|pacity|penAppend|penRead|penWrite|pener|penerView|pening|perate|ptimumFlowData|ptionValue|ptional|ptionalElement|ptions|ptionsPattern|r|rder|rderDistribution|rderedQ|rdering|rderingBy|rderlessPatternSequence|rnsteinUhlenbeckProcess|rthogonalMatrixQ|rthogonalize|uter|uterPolygon|uterPolyhedron|utputControllabilityMatrix|utputControllableModelQ|utputForm|utputNamePacket|utputResponse|utputStream|verBar|verDot|verHat|verTilde|verVector|verflow|verlay|verscript|verscriptBox|wenT|wnValues))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:P(?:DF|ERTDistribution|IDTune|acletDataRebuild|acletDirectoryLoad|acletDirectoryUnload|acletDisable|acletEnable|acletFind|acletFindRemote|acletInstall|acletInstallSubmit|acletNewerQ|acletObject|acletSiteObject|acletSiteRegister|acletSiteUnregister|acletSiteUpdate|acletSites|acletUninstall|adLeft|adRight|addedForm|adeApproximant|ageRankCentrality|airedBarChart|airedHistogram|airedSmoothHistogram|airedTTest|airedZTest|aletteNotebook|alindromeQ|ane|aneSelector|anel|arabolicCylinderD|arallelArray|arallelAxisPlot|arallelCombine|arallelDo|arallelEvaluate|arallelKernels|arallelMap|arallelNeeds|arallelProduct|arallelSubmit|arallelSum|arallelTable|arallelTry|arallelepiped|arallelize|arallelogram|arameterMixtureDistribution|arametricConvexOptimization|arametricFunction|arametricNDSolve|arametricNDSolveValue|arametricPlot|arametricPlot3D|arametricRegion|arentBox|arentCell|arentDirectory|arentNotebook|aretoDistribution|aretoPickandsDistribution|arkData|art|artOfSpeech|artialCorrelationFunction|articleAcceleratorData|articleData|artition|artitionsP|artitionsQ|arzenWindow|ascalDistribution|aste|asteButton|athGraph|athGraphQ|attern|atternSequence|atternTest|aulWavelet|auliMatrix|ause|eakDetect|eanoCurve|earsonChiSquareTest|earsonCorrelationTest|earsonDistribution|ercentForm|erfectNumber|erfectNumberQ|erimeter|eriodicBoundaryCondition|eriodogram|eriodogramArray|ermanent|ermissionsGroup|ermissionsGroupMemberQ|ermissionsGroups|ermissionsKey|ermissionsKeys|ermutationCycles|ermutationCyclesQ|ermutationGroup|ermutationLength|ermutationList|ermutationListQ|ermutationMatrix|ermutationMax|ermutationMin|ermutationOrder|ermutationPower|ermutationProduct|ermutationReplace|ermutationSupport|ermutations|ermute|eronaMalikFilter|ersonData|etersenGraph|haseMargins|hongShading|hysicalSystemData|ick|ieChart|ieChart3D|iecewise|iecewiseExpand|illaiTrace|illaiTraceTest|ingTime|ixelValue|ixelValuePositions|laced|laceholder|lanarAngle|lanarFaceList|lanarGraph|lanarGraphQ|lanckRadiationLaw|laneCurveData|lanetData|lanetaryMoonData|lantData|lay|lot|lot3D|luralize|lus|lusMinus|ochhammer|oint|ointFigureChart|ointLegend|ointLight|ointSize|oissonConsulDistribution|oissonDistribution|oissonPDEComponent|oissonProcess|oissonWindow|olarPlot|olyGamma|olyLog|olyaAeppliDistribution|olygon|olygonAngle|olygonCoordinates|olygonDecomposition|olygonalNumber|olyhedron|olyhedronAngle|olyhedronCoordinates|olyhedronData|olyhedronDecomposition|olyhedronGenus|olynomialExpressionQ|olynomialExtendedGCD|olynomialGCD|olynomialLCM|olynomialMod|olynomialQ|olynomialQuotient|olynomialQuotientRemainder|olynomialReduce|olynomialRemainder|olynomialSumOfSquaresList|opupMenu|opupView|opupWindow|osition|ositionIndex|ositionLargest|ositionSmallest|ositive|ositiveDefiniteMatrixQ|ositiveSemidefiniteMatrixQ|ositivelyOrientedPoints|ossibleZeroQ|ostfix|ower|owerDistribution|owerExpand|owerMod|owerModList|owerRange|owerSpectralDensity|owerSymmetricPolynomial|owersRepresentations|reDecrement|reIncrement|recedenceForm|recedes|recedesEqual|recedesSlantEqual|recedesTilde|recision|redict|redictorFunction|redictorMeasurements|redictorMeasurementsObject|reemptProtect|refix|repend|rependTo|reviousCell|reviousDate|riceGraphDistribution|rime|rimeNu|rimeOmega|rimePi|rimePowerQ|rimeQ|rimeZetaP|rimitivePolynomialQ|rimitiveRoot|rimitiveRootList|rincipalComponents|rintTemporary|rintableASCIIQ|rintout3D|rism|rivateKey|robability|robabilityDistribution|robabilityPlot|robabilityScalePlot|robitModelFit|rocessConnection|rocessInformation|rocessObject|rocessParameterAssumptions|rocessParameterQ|rocessStatus|rocesses|roduct|roductDistribution|roductLog|rogressIndicator|rojection|roportion|roportional|rotect|roteinData|runing|seudoInverse|sychrometricPropertyData|ublicKey|ulsarData|ut|utAppend|yramid))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:Q(?:Binomial|Factorial|Gamma|HypergeometricPFQ|Pochhammer|PolyGamma|RDecomposition|nDispersion|uadraticIrrationalQ|uadraticOptimization|uantile|uantilePlot|uantity|uantityArray|uantityDistribution|uantityForm|uantityMagnitude|uantityQ|uantityUnit|uantityVariable|uantityVariableCanonicalUnit|uantityVariableDimensions|uantityVariableIdentifier|uantityVariablePhysicalQuantity|uartileDeviation|uartileSkewness|uartiles|uery|ueueProperties|ueueingNetworkProcess|ueueingProcess|uiet|uietEcho|uotient|uotientRemainder))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:R(?:GBColor|Solve|SolveValue|adialAxisPlot|adialGradientFilling|adialGradientImage|adialityCentrality|adicalBox|adioButton|adioButtonBar|adon|adonTransform|amanujanTau|amanujanTauL|amanujanTauTheta|amanujanTauZ|amp|andomChoice|andomColor|andomComplex|andomDate|andomEntity|andomFunction|andomGeneratorState|andomGeoPosition|andomGraph|andomImage|andomInteger|andomPermutation|andomPoint|andomPolygon|andomPolyhedron|andomPrime|andomReal|andomSample|andomTime|andomVariate|andomWalkProcess|andomWord|ange|angeFilter|ankedMax|ankedMin|arerProbability|aster|aster3D|asterize|ational|ationalExpressionQ|ationalize|atios|awBoxes|awData|ayleighDistribution|e|eIm|eImPlot|eactionPDETerm|ead|eadByteArray|eadLine|eadList|eadString|ealAbs|ealDigits|ealExponent|ealSign|eap|econstructionMesh|ectangle|ectangleChart|ectangleChart3D|ectangularRepeatingElement|ecurrenceFilter|ecurrenceTable|educe|efine|eflectionMatrix|eflectionTransform|efresh|egion|egionBinarize|egionBoundary|egionBounds|egionCentroid|egionCongruent|egionConvert|egionDifference|egionDilation|egionDimension|egionDisjoint|egionDistance|egionDistanceFunction|egionEmbeddingDimension|egionEqual|egionErosion|egionFit|egionImage|egionIntersection|egionMeasure|egionMember|egionMemberFunction|egionMoment|egionNearest|egionNearestFunction|egionPlot|egionPlot3D|egionProduct|egionQ|egionResize|egionSimilar|egionSymmetricDifference|egionUnion|egionWithin|egularExpression|egularPolygon|egularlySampledQ|elationGraph|eleaseHold|eliabilityDistribution|eliefImage|eliefPlot|emove|emoveAlphaChannel|emoveBackground|emoveDiacritics|emoveInputStreamMethod|emoveOutputStreamMethod|emoveUsers|enameDirectory|enameFile|enewalProcess|enkoChart|epairMesh|epeated|epeatedNull|epeatedTiming|epeatingElement|eplace|eplaceAll|eplaceAt|eplaceImageValue|eplaceList|eplacePart|eplacePixelValue|eplaceRepeated|esamplingAlgorithmData|escale|escalingTransform|esetDirectory|esidue|esidueSum|esolve|esourceData|esourceObject|esourceSearch|esponseForm|est|estricted|esultant|eturn|eturnExpressionPacket|eturnPacket|eturnTextPacket|everse|everseBiorthogonalSplineWavelet|everseElement|everseEquilibrium|everseGraph|everseSort|everseSortBy|everseUpEquilibrium|evolutionPlot3D|iccatiSolve|iceDistribution|idgeFilter|iemannR|iemannSiegelTheta|iemannSiegelZ|iemannXi|iffle|ightArrow|ightArrowBar|ightArrowLeftArrow|ightComposition|ightCosetRepresentative|ightDownTeeVector|ightDownVector|ightDownVectorBar|ightTee|ightTeeArrow|ightTeeVector|ightTriangle|ightTriangleBar|ightTriangleEqual|ightUpDownVector|ightUpTeeVector|ightUpVector|ightUpVectorBar|ightVector|ightVectorBar|iskAchievementImportance|iskReductionImportance|obustConvexOptimization|ogersTanimotoDissimilarity|ollPitchYawAngles|ollPitchYawMatrix|omanNumeral|oot|ootApproximant|ootIntervals|ootLocusPlot|ootMeanSquare|ootOfUnityQ|ootReduce|ootSum|oots|otate|otateLeft|otateRight|otationMatrix|otationTransform|ound|ow|owBox|owReduce|udinShapiro|udvalisGroupRu|ule|uleDelayed|ulePlot|un|unProcess|unThrough|ussellRaoDissimilarity))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:S(?:ARIMAProcess|ARMAProcess|ASTriangle|SSTriangle|ameAs|ameQ|ampledSoundFunction|ampledSoundList|atelliteData|atisfiabilityCount|atisfiabilityInstances|atisfiableQ|ave|avitzkyGolayMatrix|awtoothWave|cale|caled|calingMatrix|calingTransform|can|cheduledTask|churDecomposition|cientificForm|corerGi|corerGiPrime|corerHi|corerHiPrime|ec|ech|echDistribution|econdOrderConeOptimization|ectorChart|ectorChart3D|eedRandom|elect|electComponents|electFirst|electedCells|electedNotebook|electionCreateCell|electionEvaluate|electionEvaluateCreateCell|electionMove|emanticImport|emanticImportString|emanticInterpretation|emialgebraicComponentInstances|emidefiniteOptimization|endMail|endMessage|equence|equenceAlignment|equenceCases|equenceCount|equenceFold|equenceFoldList|equencePosition|equenceReplace|equenceSplit|eries|eriesCoefficient|eriesData|erviceConnect|erviceDisconnect|erviceExecute|erviceObject|essionSubmit|essionTime|et|etAccuracy|etAlphaChannel|etAttributes|etCloudDirectory|etCookies|etDelayed|etDirectory|etEnvironment|etFileDate|etOptions|etPermissions|etPrecision|etSelectedNotebook|etSharedFunction|etSharedVariable|etStreamPosition|etSystemOptions|etUsers|etter|etterBar|etting|hallow|hannonWavelet|hapiroWilkTest|hare|harpen|hearingMatrix|hearingTransform|hellRegion|henCastanMatrix|hiftRegisterSequence|hiftedGompertzDistribution|hort|hortDownArrow|hortLeftArrow|hortRightArrow|hortTimeFourier|hortTimeFourierData|hortUpArrow|hortest|hortestPathFunction|how|iderealTime|iegelTheta|iegelTukeyTest|ierpinskiCurve|ierpinskiMesh|ign|ignTest|ignature|ignedRankTest|ignedRegionDistance|impleGraph|impleGraphQ|implePolygonQ|implePolyhedronQ|implex|implify|in|inIntegral|inc|inghMaddalaDistribution|ingularValueDecomposition|ingularValueList|ingularValuePlot|inh|inhIntegral|ixJSymbol|keleton|keletonTransform|kellamDistribution|kewNormalDistribution|kewness|kip|liceContourPlot3D|liceDensityPlot3D|liceDistribution|liceVectorPlot3D|lideView|lider|lider2D|liderBox|lot|lotSequence|mallCircle|mithDecomposition|mithDelayCompensator|mithWatermanSimilarity|moothDensityHistogram|moothHistogram|moothHistogram3D|moothKernelDistribution|nDispersion|ocketConnect|ocketListen|ocketListener|ocketObject|ocketOpen|ocketReadMessage|ocketReadyQ|ocketWaitAll|ocketWaitNext|ockets|okalSneathDissimilarity|olarEclipse|olarSystemFeatureData|olarTime|olidAngle|olidData|olidRegionQ|olve|olveAlways|olveValues|ort|ortBy|ound|oundNote|ourcePDETerm|ow|paceCurveData|pacer|pan|parseArray|parseArrayQ|patialGraphDistribution|patialMedian|peak|pearmanRankTest|pearmanRho|peciesData|pectralLineData|pectrogram|pectrogramArray|pecularity|peechSynthesize|pellingCorrectionList|phere|pherePoints|phericalBesselJ|phericalBesselY|phericalHankelH1|phericalHankelH2|phericalHarmonicY|phericalPlot3D|phericalShell|pheroidalEigenvalue|pheroidalJoiningFactor|pheroidalPS|pheroidalPSPrime|pheroidalQS|pheroidalQSPrime|pheroidalRadialFactor|pheroidalS1|pheroidalS1Prime|pheroidalS2|pheroidalS2Prime|plicedDistribution|plit|plitBy|pokenString|potLight|qrt|qrtBox|quare|quareFreeQ|quareIntersection|quareMatrixQ|quareRepeatingElement|quareSubset|quareSubsetEqual|quareSuperset|quareSupersetEqual|quareUnion|quareWave|quaredEuclideanDistance|quaresR|tableDistribution|tack|tackBegin|tackComplete|tackInhibit|tackedDateListPlot|tackedListPlot|tadiumShape|tandardAtmosphereData|tandardDeviation|tandardDeviationFilter|tandardForm|tandardOceanData|tandardize|tandbyDistribution|tar|tarClusterData|tarData|tarGraph|tartProcess|tateFeedbackGains|tateOutputEstimator|tateResponse|tateSpaceModel|tateSpaceTransform|tateTransformationLinearize|tationaryDistribution|tationaryWaveletPacketTransform|tationaryWaveletTransform|tatusArea|tatusCentrality|tieltjesGamma|tippleShading|tirlingS1|tirlingS2|toppingPowerData|tratonovichProcess|treamDensityPlot|treamPlot|treamPlot3D|treamPosition|treams|tringCases|tringContainsQ|tringCount|tringDelete|tringDrop|tringEndsQ|tringExpression|tringExtract|tringForm|tringFormat|tringFormatQ|tringFreeQ|tringInsert|tringJoin|tringLength|tringMatchQ|tringPadLeft|tringPadRight|tringPart|tringPartition|tringPosition|tringQ|tringRepeat|tringReplace|tringReplaceList|tringReplacePart|tringReverse|tringRiffle|tringRotateLeft|tringRotateRight|tringSkeleton|tringSplit|tringStartsQ|tringTake|tringTakeDrop|tringTemplate|tringToByteArray|tringToStream|tringTrim|tripBoxes|tructuralImportance|truveH|truveL|tudentTDistribution|tyle|tyleBox|tyleData|ubMinus|ubPlus|ubStar|ubValues|ubdivide|ubfactorial|ubgraph|ubresultantPolynomialRemainders|ubresultantPolynomials|ubresultants|ubscript|ubscriptBox|ubsequences|ubset|ubsetEqual|ubsetMap|ubsetQ|ubsets|ubstitutionSystem|ubsuperscript|ubsuperscriptBox|ubtract|ubtractFrom|ubtractSides|ucceeds|ucceedsEqual|ucceedsSlantEqual|ucceedsTilde|uccess|uchThat|um|umConvergence|unPosition|unrise|unset|uperDagger|uperMinus|uperPlus|uperStar|upernovaData|uperscript|uperscriptBox|uperset|upersetEqual|urd|urfaceArea|urfaceData|urvivalDistribution|urvivalFunction|urvivalModel|urvivalModelFit|uzukiDistribution|uzukiGroupSuz|watchLegend|witch|ymbol|ymbolName|ymletWavelet|ymmetric|ymmetricGroup|ymmetricKey|ymmetricMatrixQ|ymmetricPolynomial|ymmetricReduction|ymmetrize|ymmetrizedArray|ymmetrizedArrayRules|ymmetrizedDependentComponents|ymmetrizedIndependentComponents|ymmetrizedReplacePart|ynonyms|yntaxInformation|yntaxLength|yntaxPacket|yntaxQ|ystemDialogInput|ystemInformation|ystemOpen|ystemOptions|ystemProcessData|ystemProcesses|ystemsConnectionsModel|ystemsModelControllerData|ystemsModelDelay|ystemsModelDelayApproximate|ystemsModelDelete|ystemsModelDimensions|ystemsModelExtract|ystemsModelFeedbackConnect|ystemsModelLinearity|ystemsModelMerge|ystemsModelOrder|ystemsModelParallelConnect|ystemsModelSeriesConnect|ystemsModelStateFeedbackConnect|ystemsModelVectorRelativeOrders))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:T(?:Test|abView|able|ableForm|agBox|agSet|agSetDelayed|agUnset|ake|akeDrop|akeLargest|akeLargestBy|akeList|akeSmallest|akeSmallestBy|akeWhile|ally|an|anh|askAbort|askExecute|askObject|askRemove|askResume|askSuspend|askWait|asks|autologyQ|eXForm|elegraphProcess|emplateApply|emplateBox|emplateExpression|emplateIf|emplateObject|emplateSequence|emplateSlot|emplateWith|emporalData|ensorContract|ensorDimensions|ensorExpand|ensorProduct|ensorRank|ensorReduce|ensorSymmetry|ensorTranspose|ensorWedge|erminatedEvaluation|estReport|estReportObject|estResultObject|etrahedron|ext|extCell|extData|extGrid|extPacket|extRecognize|extSentences|extString|extTranslation|extWords|exture|herefore|hermodynamicData|hermometerGauge|hickness|hinning|hompsonGroupTh|hread|hreeJSymbol|hreshold|hrough|hrow|hueMorse|humbnail|ideData|ilde|ildeEqual|ildeFullEqual|ildeTilde|imeConstrained|imeObject|imeObjectQ|imeRemaining|imeSeries|imeSeriesAggregate|imeSeriesForecast|imeSeriesInsert|imeSeriesInvertibility|imeSeriesMap|imeSeriesMapThread|imeSeriesModel|imeSeriesModelFit|imeSeriesResample|imeSeriesRescale|imeSeriesShift|imeSeriesThread|imeSeriesWindow|imeSystemConvert|imeUsed|imeValue|imeZoneConvert|imeZoneOffset|imelinePlot|imes|imesBy|iming|itsGroupT|oBoxes|oCharacterCode|oContinuousTimeModel|oDiscreteTimeModel|oEntity|oExpression|oInvertibleTimeSeries|oLowerCase|oNumberField|oPolarCoordinates|oRadicals|oRules|oSphericalCoordinates|oString|oUpperCase|oeplitzMatrix|ogether|oggler|ogglerBar|ooltip|oonShading|opHatTransform|opologicalSort|orus|orusGraph|otal|otalVariationFilter|ouchPosition|r|race|raceDialog|racePrint|raceScan|racyWidomDistribution|radingChart|raditionalForm|ransferFunctionCancel|ransferFunctionExpand|ransferFunctionFactor|ransferFunctionModel|ransferFunctionPoles|ransferFunctionTransform|ransferFunctionZeros|ransformationFunction|ransformationMatrix|ransformedDistribution|ransformedField|ransformedProcess|ransformedRegion|ransitiveClosureGraph|ransitiveReductionGraph|ranslate|ranslationTransform|ransliterate|ranspose|ravelDirections|ravelDirectionsData|ravelDistance|ravelDistanceList|ravelTime|reeForm|reeGraph|reeGraphQ|reePlot|riangle|riangleWave|riangularDistribution|riangulateMesh|rigExpand|rigFactor|rigFactorList|rigReduce|rigToExp|rigger|rimmedMean|rimmedVariance|ropicalStormData|rueQ|runcatedDistribution|runcatedPolyhedron|sallisQExponentialDistribution|sallisQGaussianDistribution|ube|ukeyLambdaDistribution|ukeyWindow|unnelData|uples|uranGraph|uringMachine|uttePolynomial|woWayRule|ypeHint))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:U(?:RL|RLBuild|RLDecode|RLDispatcher|RLDownload|RLEncode|RLExecute|RLExpand|RLParse|RLQueryDecode|RLQueryEncode|RLRead|RLResponseTime|RLShorten|RLSubmit|nateQ|ncompress|nderBar|nderflow|nderoverscript|nderoverscriptBox|nderscript|nderscriptBox|nderseaFeatureData|ndirectedEdge|ndirectedGraph|ndirectedGraphQ|nequal|nequalTo|nevaluated|niformDistribution|niformGraphDistribution|niformPolyhedron|niformSumDistribution|ninstall|nion|nionPlus|nique|nitBox|nitConvert|nitDimensions|nitRootTest|nitSimplify|nitStep|nitTriangle|nitVector|nitaryMatrixQ|nitize|niverseModelData|niversityData|nixTime|nprotect|nsameQ|nset|nsetShared|ntil|pArrow|pArrowBar|pArrowDownArrow|pDownArrow|pEquilibrium|pSet|pSetDelayed|pTee|pTeeArrow|pTo|pValues|pdate|pperCaseQ|pperLeftArrow|pperRightArrow|pperTriangularMatrix|pperTriangularMatrixQ|pperTriangularize|psample|singFrontEnd))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:V(?:alueQ|alues|ariables|ariance|arianceEquivalenceTest|arianceGammaDistribution|arianceTest|ectorAngle|ectorDensityPlot|ectorDisplacementPlot|ectorDisplacementPlot3D|ectorGreater|ectorGreaterEqual|ectorLess|ectorLessEqual|ectorPlot|ectorPlot3D|ectorQ|ectors|ee|erbatim|erificationTest|ertexAdd|ertexChromaticNumber|ertexComponent|ertexConnectivity|ertexContract|ertexCorrelationSimilarity|ertexCosineSimilarity|ertexCount|ertexCoverQ|ertexDegree|ertexDelete|ertexDiceSimilarity|ertexEccentricity|ertexInComponent|ertexInComponentGraph|ertexInDegree|ertexIndex|ertexJaccardSimilarity|ertexList|ertexOutComponent|ertexOutComponentGraph|ertexOutDegree|ertexQ|ertexReplace|ertexTransitiveGraphQ|ertexWeightedGraphQ|erticalBar|erticalGauge|erticalSeparator|erticalSlider|erticalTilde|oiceStyleData|oigtDistribution|olcanoData|olume|onMisesDistribution|oronoiMesh))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:W(?:aitAll|aitNext|akebyDistribution|alleniusHypergeometricDistribution|aringYuleDistribution|arpingCorrespondence|arpingDistance|atershedComponents|atsonUSquareTest|attsStrogatzGraphDistribution|avePDEComponent|aveletBestBasis|aveletFilterCoefficients|aveletImagePlot|aveletListPlot|aveletMapIndexed|aveletMatrixPlot|aveletPhi|aveletPsi|aveletScalogram|aveletThreshold|eakStationarity|eaklyConnectedComponents|eaklyConnectedGraphComponents|eaklyConnectedGraphQ|eatherData|eatherForecastData|eberE|edge|eibullDistribution|eierstrassE1|eierstrassE2|eierstrassE3|eierstrassEta1|eierstrassEta2|eierstrassEta3|eierstrassHalfPeriodW1|eierstrassHalfPeriodW2|eierstrassHalfPeriodW3|eierstrassHalfPeriods|eierstrassInvariantG2|eierstrassInvariantG3|eierstrassInvariants|eierstrassP|eierstrassPPrime|eierstrassSigma|eierstrassZeta|eightedAdjacencyGraph|eightedAdjacencyMatrix|eightedData|eightedGraphQ|elchWindow|heelGraph|henEvent|hich|hile|hiteNoiseProcess|hittakerM|hittakerW|ienerFilter|ienerProcess|ignerD|ignerSemicircleDistribution|ikipediaData|ilksW|ilksWTest|indDirectionData|indSpeedData|indVectorData|indingCount|indingPolygon|insorizedMean|insorizedVariance|ishartMatrixDistribution|ith|olframAlpha|olframLanguageData|ordCloud|ordCount|ordCounts|ordData|ordDefinition|ordFrequency|ordFrequencyData|ordList|ordStem|ordTranslation|rite|riteLine|riteString|ronskian))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:X(?:MLElement|MLObject|MLTemplate|YZColor|nor|or))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:Y(?:uleDissimilarity))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:Z(?:IPCodeData|Test|Transform|ernikeR|eroSymmetric|eta|etaZero|ipfDistribution))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"System`(?:A(?:cceptanceThreshold|ccuracyGoal|ctiveStyle|ddOnHelpPath|djustmentBoxOptions|lignment|lignmentPoint|llowGroupClose|llowInlineCells|llowLooseGrammar|llowReverseGroupClose|llowScriptLevelChange|llowVersionUpdate|llowedCloudExtraParameters|llowedCloudParameterExtensions|llowedDimensions|llowedFrequencyRange|llowedHeads|lternativeHypothesis|ltitudeMethod|mbiguityFunction|natomySkinStyle|nchoredSearch|nimationDirection|nimationRate|nimationRepetitions|nimationRunTime|nimationRunning|nimationTimeIndex|nnotationRules|ntialiasing|ppearance|ppearanceElements|ppearanceRules|spectRatio|ssociationFormat|ssumptions|synchronous|ttachedCell|udioChannelAssignment|udioEncoding|udioInputDevice|udioLabel|udioOutputDevice|uthentication|utoAction|utoCopy|utoDelete|utoGeneratedPackage|utoIndent|utoItalicWords|utoMultiplicationSymbol|utoOpenNotebooks|utoOpenPalettes|utoOperatorRenderings|utoRemove|utoScroll|utoSpacing|utoloadPath|utorunSequencing|xes|xesEdge|xesLabel|xesOrigin|xesStyle))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:B(?:ackground|arOrigin|arSpacing|aseStyle|aselinePosition|inaryFormat|ookmarks|ooleanStrings|oundaryStyle|oxBaselineShift|oxFormFormatTypes|oxFrame|oxMargins|oxRatios|oxStyle|oxed|ubbleScale|ubbleSizes|uttonBoxOptions|uttonData|uttonFunction|uttonMinHeight|uttonSource|yteOrdering))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:C(?:alendarType|alloutMarker|alloutStyle|aptureRunning|aseOrdering|elestialSystem|ellAutoOverwrite|ellBaseline|ellBracketOptions|ellChangeTimes|ellContext|ellDingbat|ellDingbatMargin|ellDynamicExpression|ellEditDuplicate|ellEpilog|ellEvaluationDuplicate|ellEvaluationFunction|ellEventActions|ellFrame|ellFrameColor|ellFrameLabelMargins|ellFrameLabels|ellFrameMargins|ellGrouping|ellGroupingRules|ellHorizontalScrolling|ellID|ellLabel|ellLabelAutoDelete|ellLabelMargins|ellLabelPositioning|ellLabelStyle|ellLabelTemplate|ellMargins|ellOpen|ellProlog|ellSize|ellTags|haracterEncoding|haracterEncodingsPath|hartBaseStyle|hartElementFunction|hartElements|hartLabels|hartLayout|hartLegends|hartStyle|lassPriors|lickToCopyEnabled|lipPlanes|lipPlanesStyle|lipRange|lippingStyle|losingAutoSave|loudBase|loudObjectNameFormat|loudObjectURLType|lusterDissimilarityFunction|odeAssistOptions|olorCoverage|olorFunction|olorFunctionBinning|olorFunctionScaling|olorRules|olorSelectorSettings|olorSpace|olumnAlignments|olumnLines|olumnSpacings|olumnWidths|olumnsEqual|ombinerFunction|ommonDefaultFormatTypes|ommunityBoundaryStyle|ommunityLabels|ommunityRegionStyle|ompilationOptions|ompilationTarget|ompiled|omplexityFunction|ompressionLevel|onfidenceLevel|onfidenceRange|onfidenceTransform|onfigurationPath|onstants|ontentPadding|ontentSelectable|ontentSize|ontinuousAction|ontourLabels|ontourShading|ontourStyle|ontours|ontrolPlacement|ontrolType|ontrollerLinking|ontrollerMethod|ontrollerPath|ontrolsRendering|onversionRules|ookieFunction|oordinatesToolOptions|opyFunction|opyable|ornerNeighbors|ounterAssignments|ounterFunction|ounterIncrements|ounterStyleMenuListing|ovarianceEstimatorFunction|reateCellID|reateIntermediateDirectories|riterionFunction|ubics|urveClosed))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:D(?:ataRange|ataReversed|atasetTheme|ateFormat|ateFunction|ateGranularity|ateReduction|ateTicksFormat|ayCountConvention|efaultDuplicateCellStyle|efaultDuration|efaultElement|efaultFontProperties|efaultFormatType|efaultInlineFormatType|efaultNaturalLanguage|efaultNewCellStyle|efaultNewInlineCellStyle|efaultNotebook|efaultOptions|efaultPrintPrecision|efaultStyleDefinitions|einitialization|eletable|eleteContents|eletionWarning|elimiterAutoMatching|elimiterFlashTime|elimiterMatching|elimiters|eliveryFunction|ependentVariables|eployed|escriptorStateSpace|iacriticalPositioning|ialogProlog|ialogSymbols|igitBlock|irectedEdges|irection|iscreteVariables|ispersionEstimatorFunction|isplayAllSteps|isplayFunction|istanceFunction|istributedContexts|ithering|ividers|ockedCell|ockedCells|ynamicEvaluationTimeout|ynamicModuleValues|ynamicUpdating))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:E(?:clipseType|dgeCapacity|dgeCost|dgeLabelStyle|dgeLabels|dgeShapeFunction|dgeStyle|dgeValueRange|dgeValueSizes|dgeWeight|ditCellTagsSettings|ditable|lidedForms|nabled|pilog|pilogFunction|scapeRadius|valuatable|valuationCompletionAction|valuationElements|valuationMonitor|valuator|valuatorNames|ventLabels|xcludePods|xcludedContexts|xcludedForms|xcludedLines|xcludedPhysicalQuantities|xclusions|xclusionsStyle|xponentFunction|xponentPosition|xponentStep|xponentialFamily|xportAutoReplacements|xpressionUUID|xtension|xtentElementFunction|xtentMarkers|xtentSize|xternalDataCharacterEncoding|xternalOptions|xternalTypeSignature))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:F(?:aceGrids|aceGridsStyle|ailureAction|eatureNames|eatureTypes|eedbackSector|eedbackSectorStyle|eedbackType|ieldCompletionFunction|ieldHint|ieldHintStyle|ieldMasked|ieldSize|ileNameDialogSettings|ileNameForms|illing|illingStyle|indSettings|itRegularization|ollowRedirects|ontColor|ontFamily|ontSize|ontSlant|ontSubstitutions|ontTracking|ontVariations|ontWeight|orceVersionInstall|ormBoxOptions|ormLayoutFunction|ormProtectionMethod|ormatType|ormatTypeAutoConvert|ourierParameters|ractionBoxOptions|ractionLine|rame|rameBoxOptions|rameLabel|rameMargins|rameRate|rameStyle|rameTicks|rameTicksStyle|rontEndEventActions|unctionSpace))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:G(?:apPenalty|augeFaceElementFunction|augeFaceStyle|augeFrameElementFunction|augeFrameSize|augeFrameStyle|augeLabels|augeMarkers|augeStyle|aussianIntegers|enerateConditions|eneratedCell|eneratedDocumentBinding|eneratedParameters|eneratedQuantityMagnitudes|eneratorDescription|eneratorHistoryLength|eneratorOutputType|eoArraySize|eoBackground|eoCenter|eoGridLines|eoGridLinesStyle|eoGridRange|eoGridRangePadding|eoLabels|eoLocation|eoModel|eoProjection|eoRange|eoRangePadding|eoResolution|eoScaleBar|eoServer|eoStylingImageFunction|eoZoomLevel|radient|raphHighlight|raphHighlightStyle|raphLayerStyle|raphLayers|raphLayout|ridCreationSettings|ridDefaultElement|ridFrame|ridFrameMargins|ridLines|ridLinesStyle|roupActionBase|roupPageBreakWithin))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:H(?:eaderAlignment|eaderBackground|eaderDisplayFunction|eaderLines|eaderSize|eaderStyle|eads|elpBrowserSettings|iddenItems|olidayCalendar|yperlinkAction|yphenation))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:I(?:conRules|gnoreCase|gnoreDiacritics|gnorePunctuation|mageCaptureFunction|mageFormattingWidth|mageLabels|mageLegends|mageMargins|magePadding|magePreviewFunction|mageRegion|mageResolution|mageSize|mageSizeAction|mageSizeMultipliers|magingDevice|mportAutoReplacements|mportOptions|ncludeConstantBasis|ncludeDefinitions|ncludeDirectories|ncludeFileExtension|ncludeGeneratorTasks|ncludeInflections|ncludeMetaInformation|ncludePods|ncludeQuantities|ncludeSingularSolutions|ncludeWindowTimes|ncludedContexts|ndeterminateThreshold|nflationMethod|nheritScope|nitialSeeding|nitialization|nitializationCell|nitializationCellEvaluation|nitializationCellWarning|nputAliases|nputAssumptions|nputAutoReplacements|nsertResults|nsertionFunction|nteractive|nterleaving|nterpolationOrder|nterpolationPoints|nterpretationBoxOptions|nterpretationFunction|ntervalMarkers|ntervalMarkersStyle|nverseFunctions|temAspectRatio|temDisplayFunction|temSize|temStyle))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:J(?:oined))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:K(?:eepExistingVersion|eyCollisionFunction|eypointStrength))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:L(?:abelStyle|abelVisibility|abelingFunction|abelingSize|anguage|anguageCategory|ayerSizeFunction|eaderSize|earningRate|egendAppearance|egendFunction|egendLabel|egendLayout|egendMargins|egendMarkerSize|egendMarkers|ighting|ightingAngle|imitsPositioning|imitsPositioningTokens|ineBreakWithin|ineIndent|ineIndentMaxFraction|ineIntegralConvolutionScale|ineSpacing|inearOffsetFunction|inebreakAdjustments|inkFunction|inkProtocol|istFormat|istPickerBoxOptions|ocalizeVariables|ocatorAutoCreate|ocatorRegion|ooping))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:M(?:agnification|ailAddressValidation|ailResponseFunction|ailSettings|asking|atchLocalNames|axCellMeasure|axColorDistance|axDuration|axExtraBandwidths|axExtraConditions|axFeatureDisplacement|axFeatures|axItems|axIterations|axMixtureKernels|axOverlapFraction|axPlotPoints|axRecursion|axStepFraction|axStepSize|axSteps|emoryConstraint|enuCommandKey|enuSortingValue|enuStyle|esh|eshCellHighlight|eshCellLabel|eshCellMarker|eshCellShapeFunction|eshCellStyle|eshFunctions|eshQualityGoal|eshRefinementFunction|eshShading|eshStyle|etaInformation|ethod|inColorDistance|inIntervalSize|inPointSeparation|issingBehavior|issingDataMethod|issingDataRules|issingString|issingStyle|odal|odulus|ultiaxisArrangement|ultiedgeStyle|ultilaunchWarning|ultilineFunction|ultiselection))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:N(?:icholsGridLines|ominalVariables|onConstants|ormFunction|ormalized|ormalsFunction|otebookAutoSave|otebookBrowseDirectory|otebookConvertSettings|otebookDynamicExpression|otebookEventActions|otebookPath|otebooksMenu|otificationFunction|ullRecords|ullWords|umberFormat|umberMarks|umberMultiplier|umberPadding|umberPoint|umberSeparator|umberSigns|yquistGridLines))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:O(?:pacityFunction|pacityFunctionScaling|peratingSystem|ptionInspectorSettings|utputAutoOverwrite|utputSizeLimit|verlaps|verscriptBoxOptions|verwriteTarget))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:P(?:IDDerivativeFilter|IDFeedforward|acletSite|adding|addingSize|ageBreakAbove|ageBreakBelow|ageBreakWithin|ageFooterLines|ageFooters|ageHeaderLines|ageHeaders|ageTheme|ageWidth|alettePath|aneled|aragraphIndent|aragraphSpacing|arallelization|arameterEstimator|artBehavior|artitionGranularity|assEventsDown|assEventsUp|asteBoxFormInlineCells|ath|erformanceGoal|ermissions|haseRange|laceholderReplace|layRange|lotLabel|lotLabels|lotLayout|lotLegends|lotMarkers|lotPoints|lotRange|lotRangeClipping|lotRangePadding|lotRegion|lotStyle|lotTheme|odStates|odWidth|olarAxes|olarAxesOrigin|olarGridLines|olarTicks|oleZeroMarkers|recisionGoal|referencesPath|reprocessingRules|reserveColor|reserveImageOptions|rincipalValue|rintAction|rintPrecision|rintingCopies|rintingOptions|rintingPageRange|rintingStartingPageNumber|rintingStyleEnvironment|rintout3DPreviewer|rivateCellOptions|rivateEvaluationOptions|rivateFontOptions|rivateNotebookOptions|rivatePaths|rocessDirectory|rocessEnvironment|rocessEstimator|rogressReporting|rolog|ropagateAborts))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:Q(?:uartics))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:R(?:adicalBoxOptions|andomSeeding|asterSize|eImLabels|eImStyle|ealBlockDiagonalForm|ecognitionPrior|ecordLists|ecordSeparators|eferenceLineStyle|efreshRate|egionBoundaryStyle|egionFillingStyle|egionFunction|egionSize|egularization|enderingOptions|equiredPhysicalQuantities|esampling|esamplingMethod|esolveContextAliases|estartInterval|eturnReceiptFunction|evolutionAxis|otateLabel|otationAction|oundingRadius|owAlignments|owLines|owMinHeight|owSpacings|owsEqual|ulerUnits|untimeAttributes|untimeOptions))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:S(?:ameTest|ampleDepth|ampleRate|amplingPeriod|aveConnection|aveDefinitions|aveable|caleDivisions|caleOrigin|calePadding|caleRangeStyle|caleRanges|calingFunctions|cientificNotationThreshold|creenStyleEnvironment|criptBaselineShifts|criptLevel|criptMinSize|criptSizeMultipliers|crollPosition|crollbars|crollingOptions|ectorOrigin|ectorSpacing|electable|elfLoopStyle|eriesTermGoal|haringList|howAutoSpellCheck|howAutoStyles|howCellBracket|howCellLabel|howCellTags|howClosedCellArea|howContents|howCursorTracker|howGroupOpener|howPageBreaks|howSelection|howShortBoxForm|howSpecialCharacters|howStringCharacters|hrinkingDelay|ignPadding|ignificanceLevel|imilarityRules|ingleLetterItalics|liderBoxOptions|ortedBy|oundVolume|pacings|panAdjustments|panCharacterRounding|panLineThickness|panMaxSize|panMinSize|panSymmetric|pecificityGoal|pellingCorrection|pellingDictionaries|pellingDictionariesPath|pellingOptions|phericalRegion|plineClosed|plineDegree|plineKnots|plineWeights|qrtBoxOptions|tabilityMargins|tabilityMarginsStyle|tandardized|tartingStepSize|tateSpaceRealization|tepMonitor|trataVariables|treamColorFunction|treamColorFunctionScaling|treamMarkers|treamPoints|treamScale|treamStyle|trictInequalities|tripOnInput|tripWrapperBoxes|tructuredSelection|tyleBoxAutoDelete|tyleDefinitions|tyleHints|tyleMenuListing|tyleNameDialogSettings|tyleSheetPath|ubscriptBoxOptions|ubsuperscriptBoxOptions|ubtitleEncoding|uperscriptBoxOptions|urdForm|ynchronousInitialization|ynchronousUpdating|yntaxForm|ystemHelpPath|ystemsModelLabels))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:T(?:abFilling|abSpacings|ableAlignments|ableDepth|ableDirections|ableHeadings|ableSpacing|agBoxOptions|aggingRules|argetFunctions|argetUnits|emplateBoxOptions|emporalRegularity|estID|extAlignment|extClipboardType|extJustification|extureCoordinateFunction|extureCoordinateScaling|icks|icksStyle|imeConstraint|imeDirection|imeFormat|imeGoal|imeSystem|imeZone|okenWords|olerance|ooltipDelay|ooltipStyle|otalWidth|ouchscreenAutoZoom|ouchscreenControlPlacement|raceAbove|raceBackward|raceDepth|raceForward|raceOff|raceOn|raceOriginal|rackedSymbols|rackingFunction|raditionalFunctionNotation|ransformationClass|ransformationFunctions|ransitionDirection|ransitionDuration|ransitionEffect|ranslationOptions|ravelMethod|rendStyle|rig))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:U(?:nderoverscriptBoxOptions|nderscriptBoxOptions|ndoOptions|ndoTrackedVariables|nitSystem|nityDimensions|nsavedVariables|pdateInterval|pdatePacletSites|tilityFunction))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:V(?:alidationLength|alidationSet|alueDimensions|arianceEstimatorFunction|ectorAspectRatio|ectorColorFunction|ectorColorFunctionScaling|ectorMarkers|ectorPoints|ectorRange|ectorScaling|ectorSizes|ectorStyle|erifyConvergence|erifySecurityCertificates|erifySolutions|erifyTestAssumptions|ersionedPreferences|ertexCapacity|ertexColors|ertexCoordinates|ertexDataCoordinates|ertexLabelStyle|ertexLabels|ertexNormals|ertexShape|ertexShapeFunction|ertexSize|ertexStyle|ertexTextureCoordinates|ertexWeight|ideoEncoding|iewAngle|iewCenter|iewMatrix|iewPoint|iewProjection|iewRange|iewVector|iewVertical|isible))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:W(?:aveletScale|eights|hitePoint|indowClickSelect|indowElements|indowFloating|indowFrame|indowFrameElements|indowMargins|indowOpacity|indowSize|indowStatusArea|indowTitle|indowToolbars|ordOrientation|ordSearch|ordSelectionFunction|ordSeparators|ordSpacings|orkingPrecision|rapAround))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:Z(?:eroTest|eroWidthTimes))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:A(?:bove|fter|lgebraics|ll|nonymous|utomatic|xis))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:B(?:ack|ackward|aseline|efore|elow|lack|lue|old|ooleans|ottom|oxes|rown|yte))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:C(?:atalan|ellStyle|enter|haracter|omplexInfinity|omplexes|onstant|yan))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:D(?:ashed|efaultAxesStyle|efaultBaseStyle|efaultBoxStyle|efaultFaceGridsStyle|efaultFieldHintStyle|efaultFrameStyle|efaultFrameTicksStyle|efaultGridLinesStyle|efaultLabelStyle|efaultMenuStyle|efaultTicksStyle|efaultTooltipStyle|egree|elimiter|igitCharacter|otDashed|otted))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:E(?:|ndOfBuffer|ndOfFile|ndOfLine|ndOfString|ulerGamma|xpression))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:F(?:alse|lat|ontProperties|orward|orwardBackward|riday|ront|rontEndDynamicExpression|ull))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:G(?:eneral|laisher|oldenAngle|oldenRatio|ray|reen))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:H(?:ere|exadecimalCharacter|oldAll|oldAllComplete|oldFirst|oldRest))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:I(?:|ndeterminate|nfinity|nherited|nteger|ntegers|talic))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:K(?:hinchin))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:L(?:arge|arger|eft|etterCharacter|ightBlue|ightBrown|ightCyan|ightGray|ightGreen|ightMagenta|ightOrange|ightPink|ightPurple|ightRed|ightYellow|istable|ocked))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:M(?:achinePrecision|agenta|anual|edium|eshCellCentroid|eshCellMeasure|eshCellQuality|onday))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:N(?:HoldAll|HoldFirst|HoldRest|egativeIntegers|egativeRationals|egativeReals|oWhitespace|onNegativeIntegers|onNegativeRationals|onNegativeReals|onPositiveIntegers|onPositiveRationals|onPositiveReals|one|ow|ull|umber|umberString|umericFunction))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:O(?:neIdentity|range|rderless))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:P(?:i|ink|lain|ositiveIntegers|ositiveRationals|ositiveReals|rimes|rotected|unctuationCharacter|urple))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:R(?:ationals|eadProtected|eal|eals|ecord|ed|ight))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:S(?:aturday|equenceHold|mall|maller|panFromAbove|panFromBoth|panFromLeft|tartOfLine|tartOfString|tring|truckthrough|tub|unday))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:T(?:emporary|hick|hin|hursday|iny|oday|omorrow|op|ransparent|rue|uesday))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:U(?:ndefined|nderlined))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:W(?:ednesday|hite|hitespace|hitespaceCharacter|ord|ordBoundary|ordCharacter))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:Y(?:ellow|esterday))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:\\\\$(?:Aborted|ActivationKey|AllowDataUpdates|AllowInternet|AssertFunction|Assumptions|AudioInputDevices|AudioOutputDevices|BaseDirectory|BasePacletsDirectory|BatchInput|BatchOutput|ByteOrdering|CacheBaseDirectory|Canceled|CharacterEncoding|CharacterEncodings|CloudAccountName|CloudBase|CloudConnected|CloudCreditsAvailable|CloudEvaluation|CloudExpressionBase|CloudObjectNameFormat|CloudObjectURLType|CloudRootDirectory|CloudSymbolBase|CloudUserID|CloudUserUUID|CloudVersion|CommandLine|CompilationTarget|Context|ContextAliases|ContextPath|ControlActiveSetting|Cookies|CreationDate|CurrentLink|CurrentTask|DateStringFormat|DefaultAudioInputDevice|DefaultAudioOutputDevice|DefaultFrontEnd|DefaultImagingDevice|DefaultKernels|DefaultLocalBase|DefaultLocalKernel|Display|DisplayFunction|DistributedContexts|DynamicEvaluation|Echo|EmbedCodeEnvironments|EmbeddableServices|Epilog|EvaluationCloudBase|EvaluationCloudObject|EvaluationEnvironment|ExportFormats|Failed|FontFamilies|FrontEnd|FrontEndSession|GeoLocation|GeoLocationCity|GeoLocationCountry|GeoLocationSource|HomeDirectory|IgnoreEOF|ImageFormattingWidth|ImageResolution|ImagingDevice|ImagingDevices|ImportFormats|InitialDirectory|Input|InputFileName|InputStreamMethods|Inspector|InstallationDirectory|InterpreterTypes|IterationLimit|KernelCount|KernelID|Language|LibraryPath|LicenseExpirationDate|LicenseID|LicenseServer|Linked|LocalBase|LocalSymbolBase|MachineAddresses|MachineDomains|MachineEpsilon|MachineID|MachineName|MachinePrecision|MachineType|MaxExtraPrecision|MaxMachineNumber|MaxNumber|MaxPiecewiseCases|MaxPrecision|MaxRootDegree|MessageGroups|MessageList|MessagePrePrint|Messages|MinMachineNumber|MinNumber|MinPrecision|MobilePhone|ModuleNumber|NetworkConnected|NewMessage|NewSymbol|NotebookInlineStorageLimit|Notebooks|NumberMarks|OperatingSystem|Output|OutputSizeLimit|OutputStreamMethods|Packages|ParentLink|ParentProcessID|PasswordFile|Path|PathnameSeparator|PerformanceGoal|Permissions|PlotTheme|Printout3DPreviewer|ProcessID|ProcessorCount|ProcessorType|ProgressReporting|RandomGeneratorState|RecursionLimit|ReleaseNumber|RequesterAddress|RequesterCloudUserID|RequesterCloudUserUUID|RequesterWolframID|RequesterWolframUUID|RootDirectory|ScriptCommandLine|ScriptInputString|Services|SessionID|SharedFunctions|SharedVariables|SoundDisplayFunction|SynchronousEvaluation|System|SystemCharacterEncoding|SystemID|SystemShell|SystemTimeZone|SystemWordLength|TemplatePath|TemporaryDirectory|TimeUnit|TimeZone|TimeZoneEntity|TimedOut|UnitSystem|Urgent|UserAgentString|UserBaseDirectory|UserBasePacletsDirectory|UserDocumentsDirectory|UserURLBase|Username|Version|VersionNumber|WolframDocumentsDirectory|WolframID|WolframUUID))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"System`(?:A(?:bortScheduledTask|ctive|lgebraicRules|lternateImage|natomyForm|nimationCycleOffset|nimationCycleRepetitions|nimationDisplayTime|spectRatioFixed|stronomicalData|synchronousTaskObject|synchronousTasks|udioDevice|udioLooping))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:B(?:uttonEvaluator|uttonExpandable|uttonFrame|uttonMargins|uttonNote|uttonStyle))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:C(?:DFInformation|hebyshevDistance|lassifierInformation|lipFill|olorOutput|olumnForm|ompose|onstantArrayLayer|onstantPlusLayer|onstantTimesLayer|onstrainedMax|onstrainedMin|ontourGraphics|ontourLines|onversionOptions|reateScheduledTask|reateTemporary|urry))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:D(?:atabinRemove|ate|ebug|efaultColor|efaultFont|ensityGraphics|isplay|isplayString|otPlusLayer|ragAndDrop))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:E(?:dgeLabeling|dgeRenderingFunction|valuateScheduledTask|xpectedValue))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:F(?:actorComplete|ontForm|ormTheme|romDate|ullOptions))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:G(?:raphStyle|raphicsArray|raphicsSpacing|ridBaseline))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:H(?:TMLSave|eldPart|iddenSurface|omeDirectory))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:I(?:mageRotated|nstanceNormalizationLayer))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:L(?:UBackSubstitution|egendreType|ightSources|inearProgramming|inkOpen|iteral|ongestMatch))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:M(?:eshRange|oleculeEquivalentQ))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:N(?:etInformation|etSharedArray|extScheduledTaskTime|otebookCreate))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:O(?:penTemporary))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:P(?:IDData|ackingMethod|ersistentValue|ixelConstrained|lot3Matrix|lotDivision|lotJoined|olygonIntersections|redictorInformation|roperties|roperty|ropertyList|ropertyValue))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:R(?:andom|asterArray|ecognitionThreshold|elease|emoteKernelObject|emoveAsynchronousTask|emoveProperty|emoveScheduledTask|enderAll|eplaceHeldPart|esetScheduledTask|esumePacket|unScheduledTask))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:S(?:cheduledTaskActiveQ|cheduledTaskInformation|cheduledTaskObject|cheduledTasks|creenRectangle|electionAnimate|equenceAttentionLayer|equenceForm|etProperty|hading|hortestMatch|ingularValues|kinStyle|ocialMediaData|tartAsynchronousTask|tartScheduledTask|tateDimensions|topAsynchronousTask|topScheduledTask|tructuredArray|tyleForm|tylePrint|ubscripted|urfaceColor|urfaceGraphics|uspendPacket|ystemModelProgressReporting))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:T(?:eXSave|extStyle|imeWarpingCorrespondence|imeWarpingDistance|oDate|oFileName|oHeldExpression))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:U(?:RLFetch|RLFetchAsynchronous|RLSave|RLSaveAsynchronous))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:V(?:ectorScale|ertexCoordinateRules|ertexLabeling|ertexRenderingFunction))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:W(?:aitAsynchronousTask|indowMovable))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:\\\\$(?:AsynchronousTask|ConfiguredKernels|DefaultFont|EntityStores|FormatType|HTTPCookies|InstallationDate|MachineDomain|ProductInformation|ProgramName|RandomState|ScheduledTask|SummaryBoxDataSizeLimit|TemporaryPrefix|TextStyle|TopDirectory|UserAddOnsDirectory))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"System`(?:A(?:ctionDelay|ctionMenuBox|ctionMenuBoxOptions|ctiveItem|lgebraicRulesData|lignmentMarker|llowAdultContent|llowChatServices|llowIncomplete|nalytic|nimatorBox|nimatorBoxOptions|nimatorElements|ppendCheck|rgumentCountQ|rrow3DBox|rrowBox|uthenticate|utoEvaluateEvents|utoIndentSpacings|utoMatch|utoNumberFormatting|utoQuoteCharacters|utoScaling|utoStyleOptions|utoStyleWords|utomaticImageSize|xis3DBox|xis3DBoxOptions|xisBox|xisBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:B(?:SplineCurve3DBox|SplineCurve3DBoxOptions|SplineCurveBox|SplineCurveBoxOptions|SplineSurface3DBox|SplineSurface3DBoxOptions|ackFaceColor|ackFaceGlowColor|ackFaceOpacity|ackFaceSpecularColor|ackFaceSpecularExponent|ackFaceSurfaceAppearance|ackFaceTexture|ackgroundAppearance|ackgroundTasksSettings|acksubstitution|eveled|ezierCurve3DBox|ezierCurve3DBoxOptions|ezierCurveBox|ezierCurveBoxOptions|lankForm|ounds|ox|oxDimensions|oxForm|oxID|oxRotation|oxRotationPoint|ra|raKet|rowserCategory|uttonCell|uttonContents|uttonStyleMenuListing))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:C(?:acheGraphics|achedValue|ardinalBSplineBasis|ellBoundingBox|ellContents|ellElementSpacings|ellElementsBoundingBox|ellFrameStyle|ellInsertionPointCell|ellTrayPosition|ellTrayWidgets|hangeOptions|hannelDatabin|hannelListenerWait|hannelPreSendFunction|hartElementData|hartElementDataFunction|heckAll|heckboxBox|heckboxBoxOptions|ircleBox|lipboardNotebook|lockwiseContourIntegral|losed|losingEvent|loudConnections|loudObjectInformation|loudObjectInformationData|loudUserID|oarse|oefficientDomain|olonForm|olorSetterBox|olorSetterBoxOptions|olumnBackgrounds|ompilerEnvironmentAppend|ompletionsListPacket|omponentwiseContextMenu|ompressedData|oneBox|onicHullRegion3DBox|onicHullRegion3DBoxOptions|onicHullRegionBox|onicHullRegionBoxOptions|onnect|ontentsBoundingBox|ontextMenu|ontinuation|ontourIntegral|ontourSmoothing|ontrolAlignment|ontrollerDuration|ontrollerInformationData|onvertToPostScript|onvertToPostScriptPacket|ookies|opyTag|ounterBox|ounterBoxOptions|ounterClockwiseContourIntegral|ounterEvaluator|ounterStyle|uboidBox|uboidBoxOptions|urlyDoubleQuote|urlyQuote|ylinderBox|ylinderBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:D(?:OSTextFormat|ampingFactor|ataCompression|atasetDisplayPanel|ateDelimiters|ebugTag|ecimal|efault2DTool|efault3DTool|efaultAttachedCellStyle|efaultControlPlacement|efaultDockedCellStyle|efaultInputFormatType|efaultOutputFormatType|efaultStyle|efaultTextFormatType|efaultTextInlineFormatType|efaultValue|efineExternal|egreeLexicographic|egreeReverseLexicographic|eleteWithContents|elimitedArray|estroyAfterEvaluation|eviceOpenQ|ialogIndent|ialogLevel|ifferenceOrder|igitBlockMinimum|isableConsolePrintPacket|iskBox|iskBoxOptions|ispatchQ|isplayRules|isplayTemporary|istributionDomain|ivergence|ocumentGeneratorInformationData|omainRegistrationInformation|oubleContourIntegral|oublyInfinite|own|rawBackFaces|rawFrontFaces|rawHighlighted|ualLinearProgramming|umpGet|ynamicBox|ynamicBoxOptions|ynamicLocation|ynamicModuleBox|ynamicModuleBoxOptions|ynamicModuleParent|ynamicName|ynamicNamespace|ynamicReference|ynamicWrapperBox|ynamicWrapperBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:E(?:ditButtonSettings|liminationOrder|llipticReducedHalfPeriods|mbeddingObject|mphasizeSyntaxErrors|mpty|nableConsolePrintPacket|ndAdd|ngineEnvironment|nter|qualColumns|qualRows|quatedTo|rrorBoxOptions|rrorNorm|rrorPacket|rrorsDialogSettings|valuated|valuationMode|valuationOrder|valuationRateLimit|ventEvaluator|ventHandlerTag|xactRootIsolation|xitDialog|xpectationE|xportPacket|xpressionPacket|xternalCall|xternalFunctionName))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:F(?:EDisableConsolePrintPacket|EEnableConsolePrintPacket|ail|ileInformation|ileName|illForm|illedCurveBox|illedCurveBoxOptions|ine|itAll|lashSelection|ont|ontName|ontOpacity|ontPostScriptName|ontReencoding|ormatRules|ormatValues|rameInset|rameless|rontEndObject|rontEndResource|rontEndResourceString|rontEndStackSize|rontEndValueCache|rontEndVersion|rontFaceColor|rontFaceGlowColor|rontFaceOpacity|rontFaceSpecularColor|rontFaceSpecularExponent|rontFaceSurfaceAppearance|rontFaceTexture|ullAxes))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:G(?:eneratedCellStyles|eneric|eometricTransformation3DBox|eometricTransformation3DBoxOptions|eometricTransformationBox|eometricTransformationBoxOptions|estureHandlerTag|etContext|etFileName|etLinebreakInformationPacket|lobalPreferences|lobalSession|raphLayerLabels|raphRoot|raphics3DBox|raphics3DBoxOptions|raphicsBaseline|raphicsBox|raphicsBoxOptions|raphicsComplex3DBox|raphicsComplex3DBoxOptions|raphicsComplexBox|raphicsComplexBoxOptions|raphicsContents|raphicsData|raphicsGridBox|raphicsGroup3DBox|raphicsGroup3DBoxOptions|raphicsGroupBox|raphicsGroupBoxOptions|raphicsGrouping|raphicsStyle|reekStyle|ridBoxAlignment|ridBoxBackground|ridBoxDividers|ridBoxFrame|ridBoxItemSize|ridBoxItemStyle|ridBoxOptions|ridBoxSpacings|ridElementStyleOptions|roupOpenerColor|roupOpenerInsideFrame|roupTogetherGrouping|roupTogetherNestedGrouping))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:H(?:eadCompose|eaders|elpBrowserLookup|elpBrowserNotebook|elpViewerSettings|essian|exahedronBox|exahedronBoxOptions|ighlightString|omePage|orizontal|orizontalForm|orizontalScrollPosition|yperlinkCreationSettings|yphenationOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:I(?:conizedObject|gnoreSpellCheck|mageCache|mageCacheValid|mageEditMode|mageMarkers|mageOffset|mageRangeCache|mageSizeCache|mageSizeRaw|nactiveStyle|ncludeSingularTerm|ndent|ndentMaxFraction|ndentingNewlineSpacings|ndexCreationOptions|ndexTag|nequality|nexactNumbers|nformationData|nformationDataGrid|nlineCounterAssignments|nlineCounterIncrements|nlineRules|nputFieldBox|nputFieldBoxOptions|nputGrouping|nputSettings|nputToBoxFormPacket|nsertionPointObject|nset3DBox|nset3DBoxOptions|nsetBox|nsetBoxOptions|ntegral|nterlaced|nterpolationPrecision|nterpretTemplate|nterruptSettings|nto|nvisibleApplication|nvisibleTimes|temBox|temBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:J(?:acobian|oinedCurveBox|oinedCurveBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:K(?:|ernelExecute|et))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:L(?:abeledSlider|ambertW|anguageOptions|aunch|ayoutInformation|exicographic|icenseID|ine3DBox|ine3DBoxOptions|ineBox|ineBoxOptions|ineBreak|ineWrapParts|inearFilter|inebreakSemicolonWeighting|inkConnectedQ|inkError|inkFlush|inkHost|inkMode|inkOptions|inkReadHeld|inkService|inkWriteHeld|istPickerBoxBackground|isten|iteralSearch|ocalizeDefinitions|ocatorBox|ocatorBoxOptions|ocatorCentering|ocatorPaneBox|ocatorPaneBoxOptions|ongEqual|ongForm|oopback))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:M(?:achineID|achineName|acintoshSystemPageSetup|ainSolve|aintainDynamicCaches|akeRules|atchLocalNameQ|aterial|athMLText|athematicaNotation|axBend|axPoints|enu|enuAppearance|enuEvaluator|enuItem|enuList|ergeDifferences|essageObject|essageOptions|essagesNotebook|etaCharacters|ethodOptions|inRecursion|inSize|ode|odular|onomialOrder|ouseAppearanceTag|ouseButtons|ousePointerNote|ultiLetterItalics|ultiLetterStyle|ultiplicity|ultiscriptBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:N(?:BernoulliB|ProductFactors|SumTerms|Values|amespaceBox|amespaceBoxOptions|estedScriptRules|etworkPacketRecordingDuring|ext|onAssociative|ormalGrouping|otebookDefault|otebookInterfaceObject))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:O(?:LEData|bjectExistsQ|pen|penFunctionInspectorPacket|penSpecialOptions|penerBox|penerBoxOptions|ptionQ|ptionValueBox|ptionValueBoxOptions|ptionsPacket|utputFormData|utputGrouping|utputMathEditExpression|ver|verlayBox|verlayBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:P(?:ackPaclet|ackage|acletDirectoryAdd|acletDirectoryRemove|acletInformation|acletObjectQ|acletUpdate|ageHeight|alettesMenuSettings|aneBox|aneBoxOptions|aneSelectorBox|aneSelectorBoxOptions|anelBox|anelBoxOptions|aperWidth|arameter|arameterVariables|arentConnect|arentForm|arentList|arenthesize|artialD|asteAutoQuoteCharacters|ausedTime|eriodicInterpolation|erpendicular|ickMode|ickedElements|ivoting|lotRangeClipPlanesStyle|oint3DBox|oint3DBoxOptions|ointBox|ointBoxOptions|olygon3DBox|olygon3DBoxOptions|olygonBox|olygonBoxOptions|olygonHoleScale|olygonScale|olyhedronBox|olyhedronBoxOptions|olynomialForm|olynomials|opupMenuBox|opupMenuBoxOptions|ostScript|recedence|redictionRoot|referencesSettings|revious|rimaryPlaceholder|rintForm|rismBox|rismBoxOptions|rivateFrontEndOptions|robabilityPr|rocessStateDomain|rocessTimeDomain|rogressIndicatorBox|rogressIndicatorBoxOptions|romptForm|yramidBox|yramidBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:R(?:adioButtonBox|adioButtonBoxOptions|andomSeed|angeSpecification|aster3DBox|aster3DBoxOptions|asterBox|asterBoxOptions|ationalFunctions|awArray|awMedium|ebuildPacletData|ectangleBox|ecurringDigitsForm|eferenceMarkerStyle|eferenceMarkers|einstall|emoved|epeatedString|esourceAcquire|esourceSubmissionObject|eturnCreatesNewCell|eturnEntersInput|eturnInputFormPacket|otationBox|otationBoxOptions|oundImplies|owBackgrounds|owHeights|uleCondition|uleForm))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:S(?:aveAutoDelete|caledMousePosition|cheduledTaskInformationData|criptForm|criptRules|ectionGrouping|electWithContents|election|electionCell|electionCellCreateCell|electionCellDefaultStyle|electionCellParentStyle|electionPlaceholder|elfLoops|erviceResponse|etOptionsPacket|etSecuredAuthenticationKey|etbacks|etterBox|etterBoxOptions|howAutoConvert|howCodeAssist|howControls|howGroupOpenCloseIcon|howInvisibleCharacters|howPredictiveInterface|howSyntaxStyles|hrinkWrapBoundingBox|ingleEvaluation|ingleLetterStyle|lider2DBox|lider2DBoxOptions|ocket|olveDelayed|oundAndGraphics|pace|paceForm|panningCharacters|phereBox|phereBoxOptions|tartupSound|tringBreak|tringByteCount|tripStyleOnPaste|trokeForm|tructuredArrayHeadQ|tyleKeyMapping|tyleNames|urfaceAppearance|yntax|ystemException|ystemGet|ystemInformationData|ystemStub|ystemTest))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:T(?:ab|abViewBox|abViewBoxOptions|ableViewBox|ableViewBoxAlignment|ableViewBoxBackground|ableViewBoxHeaders|ableViewBoxItemSize|ableViewBoxItemStyle|ableViewBoxOptions|agBoxNote|agStyle|emplateEvaluate|emplateSlotSequence|emplateUnevaluated|emplateVerbatim|emporaryVariable|ensorQ|etrahedronBox|etrahedronBoxOptions|ext3DBox|ext3DBoxOptions|extBand|extBoundingBox|extBox|extForm|extLine|extParagraph|hisLink|itleGrouping|oColor|oggle|oggleFalse|ogglerBox|ogglerBoxOptions|ooBig|ooltipBox|ooltipBoxOptions|otalHeight|raceAction|raceInternal|raceLevel|rackCellChangeTimes|raditionalNotation|raditionalOrder|ransparentColor|rapEnterKey|rapSelection|ubeBSplineCurveBox|ubeBSplineCurveBoxOptions|ubeBezierCurveBox|ubeBezierCurveBoxOptions|ubeBox|ubeBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:U(?:ntrackedVariables|p|seGraphicsRange|serDefinedWavelet|sing))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:V(?:2Get|alueBox|alueBoxOptions|alueForm|aluesData|ectorGlyphData|erbose|ertical|erticalForm|iewPointSelectorSettings|iewPort|irtualGroupData|isibleCell))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:W(?:aitUntil|ebPageMetaInformation|holeCellGroupOpener|indowPersistentStyles|indowSelected|indowWidth|olframAlphaDate|olframAlphaQuantity|olframAlphaResult|olframCloudSettings))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:\\\\$(?:ActivationGroupID|ActivationUserRegistered|AddOnsDirectory|BoxForms|CloudConnection|CloudVersionNumber|CloudWolframEngineVersionNumber|ConditionHold|DefaultMailbox|DefaultPath|FinancialDataSource|GeoEntityTypes|GeoLocationPrecision|HTMLExportRules|HTTPRequest|LaunchDirectory|LicenseProcesses|LicenseSubprocesses|LicenseType|LinkSupported|LoadedFiles|MaxLicenseProcesses|MaxLicenseSubprocesses|MinorReleaseNumber|NetworkLicense|Off|OutputForms|PatchLevelID|PermissionsGroupBase|PipeSupported|PreferencesDirectory|PrintForms|PrintLiteral|RegisteredDeviceClasses|RegisteredUserName|SecuredAuthenticationKeyTokens|SetParentLink|SoundDisplay|SuppressInputFormHeads|SystemMemory|TraceOff|TraceOn|TracePattern|TracePostAction|TracePreAction|UserAgentLanguages|UserAgentMachine|UserAgentName|UserAgentOperatingSystem|UserAgentVersion|UserName))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"System`(?:A(?:ctiveClassification|ctiveClassificationObject|ctivePrediction|ctivePredictionObject|ddToSearchIndex|ggregatedEntityClass|ggregationLayer|ngleBisector|nimatedImage|nimationVideo|nomalyDetector|ppendLayer|pplication|pplyReaction|round|roundReplace|rrayReduce|sk|skAppend|skConfirm|skDisplay|skFunction|skState|skTemplateDisplay|skedQ|skedValue|ssessmentFunction|ssessmentResultObject|ssumeDeterministic|stroAngularSeparation|stroBackground|stroCenter|stroDistance|stroGraphics|stroGridLines|stroGridLinesStyle|stroPosition|stroProjection|stroRange|stroRangePadding|stroReferenceFrame|stroStyling|stroZoomLevel|tom|tomCoordinates|tomCount|tomDiagramCoordinates|tomLabelStyle|tomLabels|tomList|ttachCell|ttentionLayer|udioAnnotate|udioAnnotationLookup|udioIdentify|udioInstanceQ|udioPause|udioPlay|udioRecord|udioStop|udioStream|udioStreams|udioTrackApply|udioTrackSelection|utocomplete|utocompletionFunction|xiomaticTheory|xisLabel|xisObject|xisStyle))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:B(?:asicRecurrentLayer|atchNormalizationLayer|atchSize|ayesianMaximization|ayesianMaximizationObject|ayesianMinimization|ayesianMinimizationObject|esagL|innedVariogramList|inomialPointProcess|ioSequence|ioSequenceBackTranslateList|ioSequenceComplement|ioSequenceInstances|ioSequenceModify|ioSequencePlot|ioSequenceQ|ioSequenceReverseComplement|ioSequenceTranscribe|ioSequenceTranslate|itRate|lockDiagonalMatrix|lockLowerTriangularMatrix|lockUpperTriangularMatrix|lockchainAddressData|lockchainBase|lockchainBlockData|lockchainContractValue|lockchainData|lockchainGet|lockchainKeyEncode|lockchainPut|lockchainTokenData|lockchainTransaction|lockchainTransactionData|lockchainTransactionSign|lockchainTransactionSubmit|ond|ondCount|ondLabelStyle|ondLabels|ondList|ondQ|uildCompiledComponent))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:C(?:TCLossLayer|achePersistence|anvas|ast|ategoricalDistribution|atenateLayer|auchyPointProcess|hannelBase|hannelBrokerAction|hannelHistoryLength|hannelListen|hannelListener|hannelListeners|hannelObject|hannelReceiverFunction|hannelSend|hannelSubscribers|haracterNormalize|hemicalConvert|hemicalFormula|hemicalInstance|hemicalReaction|loudExpression|loudExpressions|loudRenderingMethod|ombinatorB|ombinatorC|ombinatorI|ombinatorK|ombinatorS|ombinatorW|ombinatorY|ombinedEntityClass|ompiledCodeFunction|ompiledComponent|ompiledExpressionDeclaration|ompiledLayer|ompilerCallback|ompilerEnvironment|ompilerEnvironmentAppendTo|ompilerEnvironmentObject|ompilerOptions|omplementedEntityClass|omputeUncertainty|onfirmQuiet|onformationMethod|onnectSystemModelComponents|onnectSystemModelController|onnectedMoleculeComponents|onnectedMoleculeQ|onnectionSettings|ontaining|ontentDetectorFunction|ontentFieldOptions|ontentLocationFunction|ontentObject|ontrastiveLossLayer|onvolutionLayer|reateChannel|reateCloudExpression|reateCompilerEnvironment|reateDataStructure|reateDataSystemModel|reateLicenseEntitlement|reateSearchIndex|reateSystemModel|reateTypeInstance|rossEntropyLossLayer|urrentNotebookImage|urrentScreenImage|urryApplied))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:D(?:SolveChangeVariables|ataStructure|ataStructureQ|atabaseConnect|atabaseDisconnect|atabaseReference|atabinSubmit|ateInterval|eclareCompiledComponent|econvolutionLayer|ecryptFile|eleteChannel|eleteCloudExpression|eleteElements|eleteSearchIndex|erivedKey|iggleGatesPointProcess|iggleGrattonPointProcess|igitalSignature|isableFormatting|ocumentWeightingRules|otLayer|ownValuesFunction|ropoutLayer|ynamicImage))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:E(?:choTiming|lementwiseLayer|mbeddedSQLEntityClass|mbeddedSQLExpression|mbeddingLayer|mptySpaceF|ncryptFile|ntityFunction|ntityStore|stimatedPointProcess|stimatedVariogramModel|valuationEnvironment|valuationPrivileges|xpirationDate|xpressionTree|xtendedEntityClass|xternalEvaluate|xternalFunction|xternalIdentifier|xternalObject|xternalSessionObject|xternalSessions|xternalStorageBase|xternalStorageDownload|xternalStorageGet|xternalStorageObject|xternalStoragePut|xternalStorageUpload|xternalValue|xtractLayer))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:F(?:aceRecognize|eatureDistance|eatureExtract|eatureExtraction|eatureExtractor|eatureExtractorFunction|ileConvert|ileFormatProperties|ileNameToFormatList|ileSystemTree|ilteredEntityClass|indChannels|indEquationalProof|indExternalEvaluators|indGeometricConjectures|indImageText|indIsomers|indMoleculeSubstructure|indPointProcessParameters|indSystemModelEquilibrium|indTextualAnswer|lattenLayer|orAllType|ormControl|orwardCloudCredentials|oxHReduce|rameListVideo|romRawPointer|unctionCompile|unctionCompileExport|unctionCompileExportByteArray|unctionCompileExportLibrary|unctionCompileExportString|unctionDeclaration|unctionLayer|unctionPoles))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:G(?:alleryView|atedRecurrentLayer|enerateDerivedKey|enerateDigitalSignature|enerateFileSignature|enerateSecuredAuthenticationKey|eneratedAssetFormat|eneratedAssetLocation|eoGraphValuePlot|eoOrientationData|eometricAssertion|eometricScene|eometricStep|eometricStylingRules|eometricTest|ibbsPointProcess|raphTree|ridVideo))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:H(?:andlerFunctions|andlerFunctionsKeys|ardcorePointProcess|istogramPointDensity))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:I(?:gnoreIsotopes|gnoreStereochemistry|mageAugmentationLayer|mageBoundingBoxes|mageCases|mageContainsQ|mageContents|mageGraphics|magePosition|magePyramid|magePyramidApply|mageStitch|mportedObject|ncludeAromaticBonds|ncludeHydrogens|ncludeRelatedTables|nertEvaluate|nertExpression|nfiniteFuture|nfinitePast|nhomogeneousPoissonPointProcess|nitialEvaluationHistory|nitializationObject|nitializationObjects|nitializationValue|nitialize|nputPorts|ntegrateChangeVariables|nterfaceSwitched|ntersectedEntityClass|nverseImagePyramid))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:K(?:ernelConfiguration|ernelFunction))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:L(?:earningRateMultipliers|ibraryFunctionDeclaration|icenseEntitlementObject|icenseEntitlements|icensingSettings|inearLayer|iteralType|oadCompiledComponent|ocalResponseNormalizationLayer|ongShortTermMemoryLayer|ossFunction))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:M(?:IMETypeToFormatList|ailExecute|ailFolder|ailItem|ailSearch|ailServerConnect|ailServerConnection|aternPointProcess|axDisplayedChildren|axTrainingRounds|axWordGap|eanAbsoluteLossLayer|eanAround|eanPointDensity|eanSquaredLossLayer|ergingFunction|idpoint|issingValuePattern|issingValueSynthesis|olecule|oleculeAlign|oleculeContainsQ|oleculeDraw|oleculeFreeQ|oleculeGraph|oleculeMatchQ|oleculeMaximumCommonSubstructure|oleculeModify|oleculeName|oleculePattern|oleculePlot|oleculePlot3D|oleculeProperty|oleculeQ|oleculeRecognize|oleculeSubstructureCount|oleculeValue))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:N(?:BodySimulation|BodySimulationData|earestNeighborG|estTree|etAppend|etArray|etArrayLayer|etBidirectionalOperator|etChain|etDecoder|etDelete|etDrop|etEncoder|etEvaluationMode|etExternalObject|etExtract|etFlatten|etFoldOperator|etGANOperator|etGraph|etInitialize|etInsert|etInsertSharedArrays|etJoin|etMapOperator|etMapThreadOperator|etMeasurements|etModel|etNestOperator|etPairEmbeddingOperator|etPort|etPortGradient|etPrepend|etRename|etReplace|etReplacePart|etStateObject|etTake|etTrain|etTrainResultsObject|etUnfold|etworkPacketCapture|etworkPacketRecording|etworkPacketTrace|eymanScottPointProcess|ominalScale|ormalizationLayer|umericArray|umericArrayQ|umericArrayType))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:O(?:peratorApplied|rderingLayer|rdinalScale|utputPorts|verlayVideo))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:P(?:acletSymbol|addingLayer|agination|airCorrelationG|arametricRampLayer|arentEdgeLabel|arentEdgeLabelFunction|arentEdgeLabelStyle|arentEdgeShapeFunction|arentEdgeStyle|arentEdgeStyleFunction|artLayer|artProtection|atternFilling|atternReaction|enttinenPointProcess|erpendicularBisector|ersistenceLocation|ersistenceTime|ersistentObject|ersistentObjects|ersistentSymbol|itchRecognize|laceholderLayer|laybackSettings|ointCountDistribution|ointDensity|ointDensityFunction|ointProcessEstimator|ointProcessFitTest|ointProcessParameterAssumptions|ointProcessParameterQ|ointStatisticFunction|ointValuePlot|oissonPointProcess|oolingLayer|rependLayer|roofObject|ublisherID))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:Q(?:uestionGenerator|uestionInterface|uestionObject|uestionSelector))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:R(?:andomArrayLayer|andomInstance|andomPointConfiguration|andomTree|eactionBalance|eactionBalancedQ|ecalibrationFunction|egisterExternalEvaluator|elationalDatabase|emoteAuthorizationCaching|emoteBatchJobAbort|emoteBatchJobObject|emoteBatchJobs|emoteBatchMapSubmit|emoteBatchSubmissionEnvironment|emoteBatchSubmit|emoteConnect|emoteConnectionObject|emoteEvaluate|emoteFile|emoteInputFiles|emoteProviderSettings|emoteRun|emoteRunProcess|emovalConditions|emoveAudioStream|emoveChannelListener|emoveChannelSubscribers|emoveVideoStream|eplicateLayer|eshapeLayer|esizeLayer|esourceFunction|esourceRegister|esourceRemove|esourceSubmit|esourceSystemBase|esourceSystemPath|esourceUpdate|esourceVersion|everseApplied|ipleyK|ipleyRassonRegion|ootTree|ulesTree))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:S(?:ameTestProperties|ampledEntityClass|earchAdjustment|earchIndexObject|earchIndices|earchQueryString|earchResultObject|ecuredAuthenticationKey|ecuredAuthenticationKeys|ecurityCertificate|equenceIndicesLayer|equenceLastLayer|equenceMostLayer|equencePredict|equencePredictorFunction|equenceRestLayer|equenceReverseLayer|erviceRequest|erviceSubmit|etFileFormatProperties|etSystemModel|lideShowVideo|moothPointDensity|nippet|nippetsVideo|nubPolyhedron|oftmaxLayer|olidBoundaryLoadValue|olidDisplacementCondition|olidFixedCondition|olidMechanicsPDEComponent|olidMechanicsStrain|olidMechanicsStress|ortedEntityClass|ourceLink|patialBinnedPointData|patialBoundaryCorrection|patialEstimate|patialEstimatorFunction|patialJ|patialNoiseLevel|patialObservationRegionQ|patialPointData|patialPointSelect|patialRandomnessTest|patialTransformationLayer|patialTrendFunction|peakerMatchQ|peechCases|peechInterpreter|peechRecognize|plice|tartExternalSession|tartWebSession|tereochemistryElements|traussHardcorePointProcess|traussPointProcess|ubsetCases|ubsetCount|ubsetPosition|ubsetReplace|ubtitleTrackSelection|ummationLayer|ymmetricDifference|ynthesizeMissingValues|ystemCredential|ystemCredentialData|ystemCredentialKey|ystemCredentialKeys|ystemCredentialStoreObject|ystemInstall|ystemModel|ystemModelExamples|ystemModelLinearize|ystemModelMeasurements|ystemModelParametricSimulate|ystemModelPlot|ystemModelReliability|ystemModelSimulate|ystemModelSimulateSensitivity|ystemModelSimulationData|ystemModeler|ystemModels))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:T(?:ableView|argetDevice|argetSystem|ernaryListPlot|ernaryPlotCorners|extCases|extContents|extElement|extPosition|extSearch|extSearchReport|extStructure|homasPointProcess|hreaded|hreadingLayer|ickDirection|ickLabelOrientation|ickLabelPositioning|ickLabels|ickLengths|ickPositions|oRawPointer|otalLayer|ourVideo|rainImageContentDetector|rainTextContentDetector|rainingProgressCheckpointing|rainingProgressFunction|rainingProgressMeasurements|rainingProgressReporting|rainingStoppingCriterion|rainingUpdateSchedule|ransposeLayer|ree|reeCases|reeChildren|reeCount|reeData|reeDelete|reeDepth|reeElementCoordinates|reeElementLabel|reeElementLabelFunction|reeElementLabelStyle|reeElementShape|reeElementShapeFunction|reeElementSize|reeElementSizeFunction|reeElementStyle|reeElementStyleFunction|reeExpression|reeExtract|reeFold|reeInsert|reeLayout|reeLeafCount|reeLeafQ|reeLeaves|reeLevel|reeMap|reeMapAt|reeOutline|reePosition|reeQ|reeReplacePart|reeRules|reeScan|reeSelect|reeSize|reeTraversalOrder|riangleCenter|riangleConstruct|riangleMeasurement|ypeDeclaration|ypeEvaluate|ypeOf|ypeSpecifier|yped))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:U(?:RLDownloadSubmit|nconstrainedParameters|nionedEntityClass|niqueElements|nitVectorLayer|nlabeledTree|nmanageObject|nregisterExternalEvaluator|pdateSearchIndex|seEmbeddedLibrary))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:V(?:alenceErrorHandling|alenceFilling|aluePreprocessingFunction|andermondeMatrix|arianceGammaPointProcess|ariogramFunction|ariogramModel|ectorAround|erifyDerivedKey|erifyDigitalSignature|erifyFileSignature|erifyInterpretation|ideo|ideoCapture|ideoCombine|ideoDelete|ideoExtractFrames|ideoFrameList|ideoFrameMap|ideoGenerator|ideoInsert|ideoIntervals|ideoJoin|ideoMap|ideoMapList|ideoMapTimeSeries|ideoPadding|ideoPause|ideoPlay|ideoQ|ideoRecord|ideoReplace|ideoScreenCapture|ideoSplit|ideoStop|ideoStream|ideoStreams|ideoTimeStretch|ideoTrackSelection|ideoTranscode|ideoTransparency|ideoTrim))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:W(?:ebAudioSearch|ebColumn|ebElementObject|ebExecute|ebImage|ebImageSearch|ebItem|ebRow|ebSearch|ebSessionObject|ebSessions|ebWindowObject|ikidataData|ikidataSearch|ikipediaSearch|ithCleanup|ithLock))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:Z(?:oomCenter|oomFactor))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:\\\\$(?:AllowExternalChannelFunctions|AudioDecoders|AudioEncoders|BlockchainBase|ChannelBase|CompilerEnvironment|CookieStore|CryptographicEllipticCurveNames|CurrentWebSession|DataStructures|DefaultNetworkInterface|DefaultProxyRules|DefaultRemoteBatchSubmissionEnvironment|DefaultRemoteKernel|DefaultSystemCredentialStore|ExternalIdentifierTypes|ExternalStorageBase|GeneratedAssetLocation|IncomingMailSettings|Initialization|InitializationContexts|MaxDisplayedChildren|NetworkInterfaces|NoValue|PersistenceBase|PersistencePath|PreInitialization|PublisherID|ResourceSystemBase|ResourceSystemPath|SSHAuthentication|ServiceCreditsAvailable|SourceLink|SubtitleDecoders|SubtitleEncoders|SystemCredentialStore|TargetSystems|TestFileName|VideoDecoders|VideoEncoders|VoiceStyles))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"System`(?:E(?:cho|xit))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"System`(?:I(?:n|nString))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"System`(?:O(?:ut))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"System`(?:P(?:rint))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"System`(?:Q(?:uit))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"System`(?:\\\\$(?:HistoryLength|Line|Post|Pre|PrePrint|PreRead|SyntaxHandler))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"System`(?:[$[:alpha:]][$[:alnum:]]*)(?![`$[:alnum:]])","name":"invalid.illegal.system.wolfram"},{"match":"(?:[$[:alpha:]][$[:alnum:]]*)(?:`(?:[$[:alpha:]][$[:alnum:]]*))+(?=\\\\s*(\\\\[(?!\\\\s*\\\\[)|@(?!@)))","name":"variable.function.wolfram"},{"match":"(?:[$[:alpha:]][$[:alnum:]]*)(?:`(?:[$[:alpha:]][$[:alnum:]]*))+","name":"symbol.unrecognized.wolfram"},{"match":"(?:[$[:alpha:]][$[:alnum:]]*)`","name":"invalid.illegal.wolfram"},{"match":"(?:`(?:[$[:alpha:]][$[:alnum:]]*))+(?=\\\\s*(\\\\[(?!\\\\s*\\\\[)|@(?!@)))","name":"variable.function.wolfram"},{"match":"(?:`(?:[$[:alpha:]][$[:alnum:]]*))+","name":"symbol.unrecognized.wolfram"},{"match":"`","name":"invalid.illegal.wolfram"},{"match":"(?:A(?:ASTriangle|PIFunction|RCHProcess|RIMAProcess|RMAProcess|RProcess|SATriangle|belianGroup|bort|bortKernels|bortProtect|bs|bsArg|bsArgPlot|bsoluteCorrelation|bsoluteCorrelationFunction|bsoluteCurrentValue|bsoluteDashing|bsoluteFileName|bsoluteOptions|bsolutePointSize|bsoluteThickness|bsoluteTime|bsoluteTiming|ccountingForm|ccumulate|ccuracy|cousticAbsorbingValue|cousticImpedanceValue|cousticNormalVelocityValue|cousticPDEComponent|cousticPressureCondition|cousticRadiationValue|cousticSoundHardValue|cousticSoundSoftCondition|ctionMenu|ctivate|cyclicGraphQ|ddSides|ddTo|ddUsers|djacencyGraph|djacencyList|djacencyMatrix|djacentMeshCells|djugate|djustTimeSeriesForecast|djustmentBox|dministrativeDivisionData|ffineHalfSpace|ffineSpace|ffineStateSpaceModel|ffineTransform|irPressureData|irSoundAttenuation|irTemperatureData|ircraftData|irportData|iryAi|iryAiPrime|iryAiZero|iryBi|iryBiPrime|iryBiZero|lgebraicIntegerQ|lgebraicNumber|lgebraicNumberDenominator|lgebraicNumberNorm|lgebraicNumberPolynomial|lgebraicNumberTrace|lgebraicUnitQ|llTrue|lphaChannel|lphabet|lphabeticOrder|lphabeticSort|lternatingFactorial|lternatingGroup|lternatives|mbientLight|mbiguityList|natomyData|natomyPlot3D|natomyStyling|nd|ndersonDarlingTest|ngerJ|ngleBracket|nglePath|nglePath3D|ngleVector|ngularGauge|nimate|nimator|nnotate|nnotation|nnotationDelete|nnotationKeys|nnotationValue|nnuity|nnuityDue|nnulus|nomalyDetection|nomalyDetectorFunction|ntihermitian|ntihermitianMatrixQ|ntisymmetric|ntisymmetricMatrixQ|ntonyms|nyOrder|nySubset|nyTrue|part|partSquareFree|ppellF1|ppend|ppendTo|pply|pplySides|pplyTo|rcCos|rcCosh|rcCot|rcCoth|rcCsc|rcCsch|rcCurvature|rcLength|rcSec|rcSech|rcSin|rcSinDistribution|rcSinh|rcTan|rcTanh|rea|rg|rgMax|rgMin|rgumentsOptions|rithmeticGeometricMean|rray|rrayComponents|rrayDepth|rrayFilter|rrayFlatten|rrayMesh|rrayPad|rrayPlot|rrayPlot3D|rrayQ|rrayResample|rrayReshape|rrayRules|rrays|rrow|rrowheads|ssert|ssociateTo|ssociation|ssociationMap|ssociationQ|ssociationThread|ssuming|symptotic|symptoticDSolveValue|symptoticEqual|symptoticEquivalent|symptoticExpectation|symptoticGreater|symptoticGreaterEqual|symptoticIntegrate|symptoticLess|symptoticLessEqual|symptoticOutputTracker|symptoticProbability|symptoticProduct|symptoticRSolveValue|symptoticSolve|symptoticSum|tomQ|ttributes|udio|udioAmplify|udioBlockMap|udioCapture|udioChannelCombine|udioChannelMix|udioChannelSeparate|udioChannels|udioData|udioDelay|udioDelete|udioDistance|udioFade|udioFrequencyShift|udioGenerator|udioInsert|udioIntervals|udioJoin|udioLength|udioLocalMeasurements|udioLoudness|udioMeasurements|udioNormalize|udioOverlay|udioPad|udioPan|udioPartition|udioPitchShift|udioPlot|udioQ|udioReplace|udioResample|udioReverb|udioReverse|udioSampleRate|udioSpectralMap|udioSpectralTransformation|udioSplit|udioTimeStretch|udioTrim|udioType|ugmentedPolyhedron|ugmentedSymmetricPolynomial|uthenticationDialog|utoRefreshed|utoSubmitting|utocorrelationTest))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:B(?:SplineBasis|SplineCurve|SplineFunction|SplineSurface|abyMonsterGroupB|ackslash|all|and|andpassFilter|andstopFilter|arChart|arChart3D|arLegend|arabasiAlbertGraphDistribution|arcodeImage|arcodeRecognize|aringhausHenzeTest|arlowProschanImportance|arnesG|artlettHannWindow|artlettWindow|aseDecode|aseEncode|aseForm|atesDistribution|attleLemarieWavelet|ecause|eckmannDistribution|eep|egin|eginDialogPacket|eginPackage|ellB|ellY|enfordDistribution|eniniDistribution|enktanderGibratDistribution|enktanderWeibullDistribution|ernoulliB|ernoulliDistribution|ernoulliGraphDistribution|ernoulliProcess|ernsteinBasis|esselFilterModel|esselI|esselJ|esselJZero|esselK|esselY|esselYZero|eta|etaBinomialDistribution|etaDistribution|etaNegativeBinomialDistribution|etaPrimeDistribution|etaRegularized|etween|etweennessCentrality|eveledPolyhedron|ezierCurve|ezierFunction|ilateralFilter|ilateralLaplaceTransform|ilateralZTransform|inCounts|inLists|inarize|inaryDeserialize|inaryDistance|inaryImageQ|inaryRead|inaryReadList|inarySerialize|inaryWrite|inomial|inomialDistribution|inomialProcess|inormalDistribution|iorthogonalSplineWavelet|ipartiteGraphQ|iquadraticFilterModel|irnbaumImportance|irnbaumSaundersDistribution|itAnd|itClear|itGet|itLength|itNot|itOr|itSet|itShiftLeft|itShiftRight|itXor|iweightLocation|iweightMidvariance|lackmanHarrisWindow|lackmanNuttallWindow|lackmanWindow|lank|lankNullSequence|lankSequence|lend|lock|lockMap|lockRandom|lomqvistBeta|lomqvistBetaTest|lur|lurring|odePlot|ohmanWindow|oole|ooleanConsecutiveFunction|ooleanConvert|ooleanCountingFunction|ooleanFunction|ooleanGraph|ooleanMaxterms|ooleanMinimize|ooleanMinterms|ooleanQ|ooleanRegion|ooleanTable|ooleanVariables|orderDimensions|orelTannerDistribution|ottomHatTransform|oundaryDiscretizeGraphics|oundaryDiscretizeRegion|oundaryMesh|oundaryMeshRegion|oundaryMeshRegionQ|oundedRegionQ|oundingRegion|oxData|oxMatrix|oxObject|oxWhiskerChart|racketingBar|rayCurtisDistance|readthFirstScan|reak|ridgeData|rightnessEqualize|roadcastStationData|rownForsytheTest|rownianBridgeProcess|ubbleChart|ubbleChart3D|uckyballGraph|uildingData|ulletGauge|usinessDayQ|utterflyGraph|utterworthFilterModel|utton|uttonBar|uttonBox|uttonNotebook|yteArray|yteArrayFormat|yteArrayFormatQ|yteArrayQ|yteArrayToString|yteCount))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:C(?:|DF|DFDeploy|DFWavelet|Form|MYKColor|SGRegion|SGRegionQ|SGRegionTree|alendarConvert|alendarData|allPacket|allout|anberraDistance|ancel|ancelButton|andlestickChart|anonicalGraph|anonicalName|anonicalWarpingCorrespondence|anonicalWarpingDistance|anonicalizePolygon|anonicalizePolyhedron|anonicalizeRegion|antorMesh|antorStaircase|ap|apForm|apitalDifferentialD|apitalize|apsuleShape|aputoD|arlemanLinearize|arlsonRC|arlsonRD|arlsonRE|arlsonRF|arlsonRG|arlsonRJ|arlsonRK|arlsonRM|armichaelLambda|aseSensitive|ases|ashflow|asoratian|atalanNumber|atch|atenate|auchyDistribution|auchyMatrix|auchyWindow|ayleyGraph|eiling|ell|ellGroup|ellGroupData|ellObject|ellPrint|ells|ellularAutomaton|ensoredDistribution|ensoring|enterArray|enterDot|enteredInterval|entralFeature|entralMoment|entralMomentGeneratingFunction|epstrogram|epstrogramArray|epstrumArray|hampernowneNumber|hanVeseBinarize|haracterCounts|haracterName|haracterRange|haracteristicFunction|haracteristicPolynomial|haracters|hebyshev1FilterModel|hebyshev2FilterModel|hebyshevT|hebyshevU|heck|heckAbort|heckArguments|heckbox|heckboxBar|hemicalData|hessboardDistance|hiDistribution|hiSquareDistribution|hineseRemainder|hoiceButtons|hoiceDialog|holeskyDecomposition|hop|hromaticPolynomial|hromaticityPlot|hromaticityPlot3D|ircle|ircleDot|ircleMinus|irclePlus|irclePoints|ircleThrough|ircleTimes|irculantGraph|ircularArcThrough|ircularOrthogonalMatrixDistribution|ircularQuaternionMatrixDistribution|ircularRealMatrixDistribution|ircularSymplecticMatrixDistribution|ircularUnitaryMatrixDistribution|ircumsphere|ityData|lassifierFunction|lassifierMeasurements|lassifierMeasurementsObject|lassify|lear|learAll|learAttributes|learCookies|learPermissions|learSystemCache|lebschGordan|lickPane|lickToCopy|lip|lock|lockGauge|lose|loseKernels|losenessCentrality|losing|loudAccountData|loudConnect|loudDeploy|loudDirectory|loudDisconnect|loudEvaluate|loudExport|loudFunction|loudGet|loudImport|loudLoggingData|loudObject|loudObjects|loudPublish|loudPut|loudSave|loudShare|loudSubmit|loudSymbol|loudUnshare|lusterClassify|lusteringComponents|lusteringMeasurements|lusteringTree|oefficient|oefficientArrays|oefficientList|oefficientRules|oifletWavelet|ollect|ollinearPoints|olon|olorBalance|olorCombine|olorConvert|olorData|olorDataFunction|olorDetect|olorDistance|olorNegate|olorProfileData|olorQ|olorQuantize|olorReplace|olorSeparate|olorSetter|olorSlider|olorToneMapping|olorize|olorsNear|olumn|ometData|ommonName|ommonUnits|ommonest|ommonestFilter|ommunityGraphPlot|ompanyData|ompatibleUnitQ|ompile|ompiledFunction|omplement|ompleteGraph|ompleteGraphQ|ompleteIntegral|ompleteKaryTree|omplex|omplexArrayPlot|omplexContourPlot|omplexExpand|omplexListPlot|omplexPlot|omplexPlot3D|omplexRegionPlot|omplexStreamPlot|omplexVectorPlot|omponentMeasurements|omposeList|omposeSeries|ompositeQ|omposition|ompoundElement|ompoundExpression|ompoundPoissonDistribution|ompoundPoissonProcess|ompoundRenewalProcess|ompress|oncaveHullMesh|ondition|onditionalExpression|onditioned|one|onfirm|onfirmAssert|onfirmBy|onfirmMatch|onformAudio|onformImages|ongruent|onicGradientFilling|onicHullRegion|onicOptimization|onjugate|onjugateTranspose|onjunction|onnectLibraryCallbackFunction|onnectedComponents|onnectedGraphComponents|onnectedGraphQ|onnectedMeshComponents|onnesWindow|onoverTest|onservativeConvectionPDETerm|onstantArray|onstantImage|onstantRegionQ|onstellationData|onstruct|ontainsAll|ontainsAny|ontainsExactly|ontainsNone|ontainsOnly|ontext|ontextToFileName|ontexts|ontinue|ontinuedFraction|ontinuedFractionK|ontinuousMarkovProcess|ontinuousTask|ontinuousTimeModelQ|ontinuousWaveletData|ontinuousWaveletTransform|ontourDetect|ontourPlot|ontourPlot3D|ontraharmonicMean|ontrol|ontrolActive|ontrollabilityGramian|ontrollabilityMatrix|ontrollableDecomposition|ontrollableModelQ|ontrollerInformation|ontrollerManipulate|ontrollerState|onvectionPDETerm|onvergents|onvexHullMesh|onvexHullRegion|onvexOptimization|onvexPolygonQ|onvexPolyhedronQ|onvexRegionQ|onvolve|onwayGroupCo1|onwayGroupCo2|onwayGroupCo3|oordinateBoundingBox|oordinateBoundingBoxArray|oordinateBounds|oordinateBoundsArray|oordinateChartData|oordinateTransform|oordinateTransformData|oplanarPoints|oprimeQ|oproduct|opulaDistribution|opyDatabin|opyDirectory|opyFile|opyToClipboard|oreNilpotentDecomposition|ornerFilter|orrelation|orrelationDistance|orrelationFunction|orrelationTest|os|osIntegral|osh|oshIntegral|osineDistance|osineWindow|ot|oth|oulombF|oulombG|oulombH1|oulombH2|ount|ountDistinct|ountDistinctBy|ountRoots|ountryData|ounts|ountsBy|ovariance|ovarianceFunction|oxIngersollRossProcess|oxModel|oxModelFit|oxianDistribution|ramerVonMisesTest|reateArchive|reateDatabin|reateDialog|reateDirectory|reateDocument|reateFile|reateManagedLibraryExpression|reateNotebook|reatePacletArchive|reatePalette|reatePermissionsGroup|reateUUID|reateWindow|riticalSection|riticalityFailureImportance|riticalitySuccessImportance|ross|rossMatrix|rossingCount|rossingDetect|rossingPolygon|sc|sch|ube|ubeRoot|uboid|umulant|umulantGeneratingFunction|umulativeFeatureImpactPlot|up|upCap|url|urrencyConvert|urrentDate|urrentImage|urrentValue|urvatureFlowFilter|ycleGraph|ycleIndexPolynomial|ycles|yclicGroup|yclotomic|ylinder|ylindricalDecomposition|ylindricalDecompositionFunction))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:D(?:|Eigensystem|Eigenvalues|GaussianWavelet|MSList|MSString|Solve|SolveValue|agumDistribution|amData|amerauLevenshteinDistance|arker|ashing|ataDistribution|atabin|atabinAdd|atabinUpload|atabins|ataset|ateBounds|ateDifference|ateHistogram|ateList|ateListLogPlot|ateListPlot|ateListStepPlot|ateObject|ateObjectQ|ateOverlapsQ|atePattern|atePlus|ateRange|ateScale|ateSelect|ateString|ateValue|ateWithinQ|ated|atedUnit|aubechiesWavelet|avisDistribution|awsonF|ayCount|ayHemisphere|ayMatchQ|ayName|ayNightTerminator|ayPlus|ayRange|ayRound|aylightQ|eBruijnGraph|eBruijnSequence|ecapitalize|ecimalForm|eclarePackage|ecompose|ecrement|ecrypt|edekindEta|eepSpaceProbeData|efault|efaultButton|efaultValues|efer|efineInputStreamMethod|efineOutputStreamMethod|efineResourceFunction|efinition|egreeCentrality|egreeGraphDistribution|el|elaunayMesh|elayed|elete|eleteAdjacentDuplicates|eleteAnomalies|eleteBorderComponents|eleteCases|eleteDirectory|eleteDuplicates|eleteDuplicatesBy|eleteFile|eleteMissing|eleteObject|eletePermissionsKey|eleteSmallComponents|eleteStopwords|elimitedSequence|endrogram|enominator|ensityHistogram|ensityPlot|ensityPlot3D|eploy|epth|epthFirstScan|erivative|erivativeFilter|erivativePDETerm|esignMatrix|et|eviceClose|eviceConfigure|eviceExecute|eviceExecuteAsynchronous|eviceObject|eviceOpen|eviceRead|eviceReadBuffer|eviceReadLatest|eviceReadList|eviceReadTimeSeries|eviceStreams|eviceWrite|eviceWriteBuffer|evices|iagonal|iagonalMatrix|iagonalMatrixQ|iagonalizableMatrixQ|ialog|ialogInput|ialogNotebook|ialogReturn|iamond|iamondMatrix|iceDissimilarity|ictionaryLookup|ictionaryWordQ|ifferenceDelta|ifferenceQuotient|ifferenceRoot|ifferenceRootReduce|ifferences|ifferentialD|ifferentialRoot|ifferentialRootReduce|ifferentiatorFilter|iffusionPDETerm|igitCount|igitQ|ihedralAngle|ihedralGroup|ilation|imensionReduce|imensionReducerFunction|imensionReduction|imensionalCombinations|imensionalMeshComponents|imensions|iracComb|iracDelta|irectedEdge|irectedGraph|irectedGraphQ|irectedInfinity|irectionalLight|irective|irectory|irectoryName|irectoryQ|irectoryStack|irichletBeta|irichletCharacter|irichletCondition|irichletConvolve|irichletDistribution|irichletEta|irichletL|irichletLambda|irichletTransform|irichletWindow|iscreteAsymptotic|iscreteChirpZTransform|iscreteConvolve|iscreteDelta|iscreteHadamardTransform|iscreteIndicator|iscreteInputOutputModel|iscreteLQEstimatorGains|iscreteLQRegulatorGains|iscreteLimit|iscreteLyapunovSolve|iscreteMarkovProcess|iscreteMaxLimit|iscreteMinLimit|iscretePlot|iscretePlot3D|iscreteRatio|iscreteRiccatiSolve|iscreteShift|iscreteTimeModelQ|iscreteUniformDistribution|iscreteWaveletData|iscreteWaveletPacketTransform|iscreteWaveletTransform|iscretizeGraphics|iscretizeRegion|iscriminant|isjointQ|isjunction|isk|iskMatrix|iskSegment|ispatch|isplayEndPacket|isplayForm|isplayPacket|istanceMatrix|istanceTransform|istribute|istributeDefinitions|istributed|istributionChart|istributionFitTest|istributionParameterAssumptions|istributionParameterQ|iv|ivide|ivideBy|ivideSides|ivisible|ivisorSigma|ivisorSum|ivisors|o|ocumentGenerator|ocumentGeneratorInformation|ocumentGenerators|ocumentNotebook|odecahedron|ominantColors|ominatorTreeGraph|ominatorVertexList|ot|otEqual|oubleBracketingBar|oubleDownArrow|oubleLeftArrow|oubleLeftRightArrow|oubleLeftTee|oubleLongLeftArrow|oubleLongLeftRightArrow|oubleLongRightArrow|oubleRightArrow|oubleRightTee|oubleUpArrow|oubleUpDownArrow|oubleVerticalBar|ownArrow|ownArrowBar|ownArrowUpArrow|ownLeftRightVector|ownLeftTeeVector|ownLeftVector|ownLeftVectorBar|ownRightTeeVector|ownRightVector|ownRightVectorBar|ownTee|ownTeeArrow|ownValues|ownsample|razinInverse|rop|ropShadowing|t|ualPlanarGraph|ualPolyhedron|ualSystemsModel|umpSave|uplicateFreeQ|uration|ynamic|ynamicGeoGraphics|ynamicModule|ynamicSetting|ynamicWrapper))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:E(?:arthImpactData|arthquakeData|ccentricityCentrality|choEvaluation|choFunction|choLabel|dgeAdd|dgeBetweennessCentrality|dgeChromaticNumber|dgeConnectivity|dgeContract|dgeCount|dgeCoverQ|dgeCycleMatrix|dgeDelete|dgeDetect|dgeForm|dgeIndex|dgeList|dgeQ|dgeRules|dgeTaggedGraph|dgeTaggedGraphQ|dgeTags|dgeTransitiveGraphQ|dgeWeightedGraphQ|ditDistance|ffectiveInterest|igensystem|igenvalues|igenvectorCentrality|igenvectors|lement|lementData|liminate|llipsoid|llipticE|llipticExp|llipticExpPrime|llipticF|llipticFilterModel|llipticK|llipticLog|llipticNomeQ|llipticPi|llipticTheta|llipticThetaPrime|mbedCode|mbeddedHTML|mbeddedService|mitSound|mpiricalDistribution|mptyGraphQ|mptyRegion|nclose|ncode|ncrypt|ncryptedObject|nd|ndDialogPacket|ndPackage|ngineeringForm|nterExpressionPacket|nterTextPacket|ntity|ntityClass|ntityClassList|ntityCopies|ntityGroup|ntityInstance|ntityList|ntityPrefetch|ntityProperties|ntityProperty|ntityPropertyClass|ntityRegister|ntityStores|ntityTypeName|ntityUnregister|ntityValue|ntropy|ntropyFilter|nvironment|qual|qualTilde|qualTo|quilibrium|quirippleFilterKernel|quivalent|rf|rfc|rfi|rlangB|rlangC|rlangDistribution|rosion|rrorBox|stimatedBackground|stimatedDistribution|stimatedPointNormals|stimatedProcess|stimatorGains|stimatorRegulator|uclideanDistance|ulerAngles|ulerCharacteristic|ulerE|ulerMatrix|ulerPhi|ulerianGraphQ|valuate|valuatePacket|valuationBox|valuationCell|valuationData|valuationNotebook|valuationObject|venQ|ventData|ventHandler|ventSeries|xactBlackmanWindow|xactNumberQ|xampleData|xcept|xists|xoplanetData|xp|xpGammaDistribution|xpIntegralE|xpIntegralEi|xpToTrig|xpand|xpandAll|xpandDenominator|xpandFileName|xpandNumerator|xpectation|xponent|xponentialDistribution|xponentialGeneratingFunction|xponentialMovingAverage|xponentialPowerDistribution|xport|xportByteArray|xportForm|xportString|xpressionCell|xpressionGraph|xtendedGCD|xternalBundle|xtract|xtractArchive|xtractPacletArchive|xtremeValueDistribution))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:F(?:ARIMAProcess|RatioDistribution|aceAlign|aceForm|acialFeatures|actor|actorInteger|actorList|actorSquareFree|actorSquareFreeList|actorTerms|actorTermsList|actorial|actorial2|actorialMoment|actorialMomentGeneratingFunction|actorialPower|ailure|ailureDistribution|ailureQ|areySequence|eatureImpactPlot|eatureNearest|eatureSpacePlot|eatureSpacePlot3D|eatureValueDependencyPlot|eatureValueImpactPlot|eedbackLinearize|etalGrowthData|ibonacci|ibonorial|ile|ileBaseName|ileByteCount|ileDate|ileExistsQ|ileExtension|ileFormat|ileFormatQ|ileHash|ileNameDepth|ileNameDrop|ileNameJoin|ileNameSetter|ileNameSplit|ileNameTake|ileNames|ilePrint|ileSize|ileSystemMap|ileSystemScan|ileTemplate|ileTemplateApply|ileType|illedCurve|illedTorus|illingTransform|ilterRules|inancialBond|inancialData|inancialDerivative|inancialIndicator|ind|indAnomalies|indArgMax|indArgMin|indClique|indClusters|indCookies|indCurvePath|indCycle|indDevices|indDistribution|indDistributionParameters|indDivisions|indEdgeColoring|indEdgeCover|indEdgeCut|indEdgeIndependentPaths|indEulerianCycle|indFaces|indFile|indFit|indFormula|indFundamentalCycles|indGeneratingFunction|indGeoLocation|indGeometricTransform|indGraphCommunities|indGraphIsomorphism|indGraphPartition|indHamiltonianCycle|indHamiltonianPath|indHiddenMarkovStates|indIndependentEdgeSet|indIndependentVertexSet|indInstance|indIntegerNullVector|indIsomorphicSubgraph|indKClan|indKClique|indKClub|indKPlex|indLibrary|indLinearRecurrence|indList|indMatchingColor|indMaxValue|indMaximum|indMaximumCut|indMaximumFlow|indMeshDefects|indMinValue|indMinimum|indMinimumCostFlow|indMinimumCut|indPath|indPeaks|indPermutation|indPlanarColoring|indPostmanTour|indProcessParameters|indRegionTransform|indRepeat|indRoot|indSequenceFunction|indShortestPath|indShortestTour|indSpanningTree|indSubgraphIsomorphism|indThreshold|indTransientRepeat|indVertexColoring|indVertexCover|indVertexCut|indVertexIndependentPaths|inishDynamic|initeAbelianGroupCount|initeGroupCount|initeGroupData|irst|irstCase|irstPassageTimeDistribution|irstPosition|ischerGroupFi22|ischerGroupFi23|ischerGroupFi24Prime|isherHypergeometricDistribution|isherRatioTest|isherZDistribution|it|ittedModel|ixedOrder|ixedPoint|ixedPointList|latShading|latTopWindow|latten|lattenAt|lightData|lipView|loor|lowPolynomial|old|oldList|oldPair|oldPairList|oldWhile|oldWhileList|or|orAll|ormBox|ormFunction|ormObject|ormPage|ormat|ormulaData|ormulaLookup|ortranForm|ourier|ourierCoefficient|ourierCosCoefficient|ourierCosSeries|ourierCosTransform|ourierDCT|ourierDCTFilter|ourierDCTMatrix|ourierDST|ourierDSTMatrix|ourierMatrix|ourierSequenceTransform|ourierSeries|ourierSinCoefficient|ourierSinSeries|ourierSinTransform|ourierTransform|ourierTrigSeries|oxH|ractionBox|ractionalBrownianMotionProcess|ractionalD|ractionalGaussianNoiseProcess|ractionalPart|rameBox|ramed|rechetDistribution|reeQ|renetSerretSystem|requencySamplingFilterKernel|resnelC|resnelF|resnelG|resnelS|robeniusNumber|robeniusSolve|romAbsoluteTime|romCharacterCode|romCoefficientRules|romContinuedFraction|romDMS|romDateString|romDigits|romEntity|romJulianDate|romLetterNumber|romPolarCoordinates|romRomanNumeral|romSphericalCoordinates|romUnixTime|rontEndExecute|rontEndToken|rontEndTokenExecute|ullDefinition|ullForm|ullGraphics|ullInformationOutputRegulator|ullRegion|ullSimplify|unction|unctionAnalytic|unctionBijective|unctionContinuous|unctionConvexity|unctionDiscontinuities|unctionDomain|unctionExpand|unctionInjective|unctionInterpolation|unctionMeromorphic|unctionMonotonicity|unctionPeriod|unctionRange|unctionSign|unctionSingularities|unctionSurjective|ussellVeselyImportance))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:G(?:ARCHProcess|CD|aborFilter|aborMatrix|aborWavelet|ainMargins|ainPhaseMargins|alaxyData|amma|ammaDistribution|ammaRegularized|ather|atherBy|aussianFilter|aussianMatrix|aussianOrthogonalMatrixDistribution|aussianSymplecticMatrixDistribution|aussianUnitaryMatrixDistribution|aussianWindow|egenbauerC|eneralizedLinearModelFit|enerateAsymmetricKeyPair|enerateDocument|enerateHTTPResponse|enerateSymmetricKey|eneratingFunction|enericCylindricalDecomposition|enomeData|enomeLookup|eoAntipode|eoArea|eoBoundary|eoBoundingBox|eoBounds|eoBoundsRegion|eoBoundsRegionBoundary|eoBubbleChart|eoCircle|eoContourPlot|eoDensityPlot|eoDestination|eoDirection|eoDisk|eoDisplacement|eoDistance|eoDistanceList|eoElevationData|eoEntities|eoGraphPlot|eoGraphics|eoGridDirectionDifference|eoGridPosition|eoGridUnitArea|eoGridUnitDistance|eoGridVector|eoGroup|eoHemisphere|eoHemisphereBoundary|eoHistogram|eoIdentify|eoImage|eoLength|eoListPlot|eoMarker|eoNearest|eoPath|eoPolygon|eoPosition|eoPositionENU|eoPositionXYZ|eoProjectionData|eoRegionValuePlot|eoSmoothHistogram|eoStreamPlot|eoStyling|eoVariant|eoVector|eoVectorENU|eoVectorPlot|eoVectorXYZ|eoVisibleRegion|eoVisibleRegionBoundary|eoWithinQ|eodesicClosing|eodesicDilation|eodesicErosion|eodesicOpening|eodesicPolyhedron|eodesyData|eogravityModelData|eologicalPeriodData|eomagneticModelData|eometricBrownianMotionProcess|eometricDistribution|eometricMean|eometricMeanFilter|eometricOptimization|eometricTransformation|estureHandler|et|etEnvironment|lobalClusteringCoefficient|low|ompertzMakehamDistribution|oochShading|oodmanKruskalGamma|oodmanKruskalGammaTest|oto|ouraudShading|rad|radientFilter|radientFittedMesh|radientOrientationFilter|rammarApply|rammarRules|rammarToken|raph|raph3D|raphAssortativity|raphAutomorphismGroup|raphCenter|raphComplement|raphData|raphDensity|raphDiameter|raphDifference|raphDisjointUnion|raphDistance|raphDistanceMatrix|raphEmbedding|raphHub|raphIntersection|raphJoin|raphLinkEfficiency|raphPeriphery|raphPlot|raphPlot3D|raphPower|raphProduct|raphPropertyDistribution|raphQ|raphRadius|raphReciprocity|raphSum|raphUnion|raphics|raphics3D|raphicsColumn|raphicsComplex|raphicsGrid|raphicsGroup|raphicsRow|rayLevel|reater|reaterEqual|reaterEqualLess|reaterEqualThan|reaterFullEqual|reaterGreater|reaterLess|reaterSlantEqual|reaterThan|reaterTilde|reenFunction|rid|ridBox|ridGraph|roebnerBasis|roupBy|roupCentralizer|roupElementFromWord|roupElementPosition|roupElementQ|roupElementToWord|roupElements|roupGenerators|roupMultiplicationTable|roupOrbits|roupOrder|roupSetwiseStabilizer|roupStabilizer|roupStabilizerChain|roupings|rowCutComponents|udermannian|uidedFilter|umbelDistribution))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:H(?:ITSCentrality|TTPErrorResponse|TTPRedirect|TTPRequest|TTPRequestData|TTPResponse|aarWavelet|adamardMatrix|alfLine|alfNormalDistribution|alfPlane|alfSpace|alftoneShading|amiltonianGraphQ|ammingDistance|ammingWindow|ankelH1|ankelH2|ankelMatrix|ankelTransform|annPoissonWindow|annWindow|aradaNortonGroupHN|araryGraph|armonicMean|armonicMeanFilter|armonicNumber|ash|atchFilling|atchShading|aversine|azardFunction|ead|eatFluxValue|eatInsulationValue|eatOutflowValue|eatRadiationValue|eatSymmetryValue|eatTemperatureCondition|eatTransferPDEComponent|eatTransferValue|eavisideLambda|eavisidePi|eavisideTheta|eldGroupHe|elmholtzPDEComponent|ermiteDecomposition|ermiteH|ermitian|ermitianMatrixQ|essenbergDecomposition|eunB|eunBPrime|eunC|eunCPrime|eunD|eunDPrime|eunG|eunGPrime|eunT|eunTPrime|exahedron|iddenMarkovProcess|ighlightGraph|ighlightImage|ighlightMesh|ighlighted|ighpassFilter|igmanSimsGroupHS|ilbertCurve|ilbertFilter|ilbertMatrix|istogram|istogram3D|istogramDistribution|istogramList|istogramTransform|istogramTransformInterpolation|istoricalPeriodData|itMissTransform|jorthDistribution|odgeDual|oeffdingD|oeffdingDTest|old|oldComplete|oldForm|oldPattern|orizontalGauge|ornerForm|ostLookup|otellingTSquareDistribution|oytDistribution|ue|umanGrowthData|umpDownHump|umpEqual|urwitzLerchPhi|urwitzZeta|yperbolicDistribution|ypercubeGraph|yperexponentialDistribution|yperfactorial|ypergeometric0F1|ypergeometric0F1Regularized|ypergeometric1F1|ypergeometric1F1Regularized|ypergeometric2F1|ypergeometric2F1Regularized|ypergeometricDistribution|ypergeometricPFQ|ypergeometricPFQRegularized|ypergeometricU|yperlink|yperplane|ypoexponentialDistribution|ypothesisTestData))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:I(?:PAddress|conData|conize|cosahedron|dentity|dentityMatrix|f|fCompiled|gnoringInactive|m|mage|mage3D|mage3DProjection|mage3DSlices|mageAccumulate|mageAdd|mageAdjust|mageAlign|mageApply|mageApplyIndexed|mageAspectRatio|mageAssemble|mageCapture|mageChannels|mageClip|mageCollage|mageColorSpace|mageCompose|mageConvolve|mageCooccurrence|mageCorners|mageCorrelate|mageCorrespondingPoints|mageCrop|mageData|mageDeconvolve|mageDemosaic|mageDifference|mageDimensions|mageDisplacements|mageDistance|mageEffect|mageExposureCombine|mageFeatureTrack|mageFileApply|mageFileFilter|mageFileScan|mageFilter|mageFocusCombine|mageForestingComponents|mageForwardTransformation|mageHistogram|mageIdentify|mageInstanceQ|mageKeypoints|mageLevels|mageLines|mageMarker|mageMeasurements|mageMesh|mageMultiply|magePad|magePartition|magePeriodogram|magePerspectiveTransformation|mageQ|mageRecolor|mageReflect|mageResize|mageRestyle|mageRotate|mageSaliencyFilter|mageScaled|mageScan|mageSubtract|mageTake|mageTransformation|mageTrim|mageType|mageValue|mageValuePositions|mageVectorscopePlot|mageWaveformPlot|mplicitD|mplicitRegion|mplies|mport|mportByteArray|mportString|mprovementImportance|nactivate|nactive|ncidenceGraph|ncidenceList|ncidenceMatrix|ncrement|ndefiniteMatrixQ|ndependenceTest|ndependentEdgeSetQ|ndependentPhysicalQuantity|ndependentUnit|ndependentUnitDimension|ndependentVertexSetQ|ndexEdgeTaggedGraph|ndexGraph|ndexed|nexactNumberQ|nfiniteLine|nfiniteLineThrough|nfinitePlane|nfix|nflationAdjust|nformation|nhomogeneousPoissonProcess|nner|nnerPolygon|nnerPolyhedron|npaint|nput|nputField|nputForm|nputNamePacket|nputNotebook|nputPacket|nputStream|nputString|nputStringPacket|nsert|nsertLinebreaks|nset|nsphere|nstall|nstallService|ntegerDigits|ntegerExponent|ntegerLength|ntegerName|ntegerPart|ntegerPartitions|ntegerQ|ntegerReverse|ntegerString|ntegrate|nteractiveTradingChart|nternallyBalancedDecomposition|nterpolatingFunction|nterpolatingPolynomial|nterpolation|nterpretation|nterpretationBox|nterpreter|nterquartileRange|nterrupt|ntersectingQ|ntersection|nterval|ntervalIntersection|ntervalMemberQ|ntervalSlider|ntervalUnion|nverse|nverseBetaRegularized|nverseBilateralLaplaceTransform|nverseBilateralZTransform|nverseCDF|nverseChiSquareDistribution|nverseContinuousWaveletTransform|nverseDistanceTransform|nverseEllipticNomeQ|nverseErf|nverseErfc|nverseFourier|nverseFourierCosTransform|nverseFourierSequenceTransform|nverseFourierSinTransform|nverseFourierTransform|nverseFunction|nverseGammaDistribution|nverseGammaRegularized|nverseGaussianDistribution|nverseGudermannian|nverseHankelTransform|nverseHaversine|nverseJacobiCD|nverseJacobiCN|nverseJacobiCS|nverseJacobiDC|nverseJacobiDN|nverseJacobiDS|nverseJacobiNC|nverseJacobiND|nverseJacobiNS|nverseJacobiSC|nverseJacobiSD|nverseJacobiSN|nverseLaplaceTransform|nverseMellinTransform|nversePermutation|nverseRadon|nverseRadonTransform|nverseSeries|nverseShortTimeFourier|nverseSpectrogram|nverseSurvivalFunction|nverseTransformedRegion|nverseWaveletTransform|nverseWeierstrassP|nverseWishartMatrixDistribution|nverseZTransform|nvisible|rreduciblePolynomialQ|slandData|solatingInterval|somorphicGraphQ|somorphicSubgraphQ|sotopeData|tem|toProcess))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:J(?:accardDissimilarity|acobiAmplitude|acobiCD|acobiCN|acobiCS|acobiDC|acobiDN|acobiDS|acobiEpsilon|acobiNC|acobiND|acobiNS|acobiP|acobiSC|acobiSD|acobiSN|acobiSymbol|acobiZN|acobiZeta|ankoGroupJ1|ankoGroupJ2|ankoGroupJ3|ankoGroupJ4|arqueBeraALMTest|ohnsonDistribution|oin|oinAcross|oinForm|oinedCurve|ordanDecomposition|ordanModelDecomposition|uliaSetBoettcher|uliaSetIterationCount|uliaSetPlot|uliaSetPoints|ulianDate))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:K(?:CoreComponents|Distribution|EdgeConnectedComponents|EdgeConnectedGraphQ|VertexConnectedComponents|VertexConnectedGraphQ|agiChart|aiserBesselWindow|aiserWindow|almanEstimator|almanFilter|arhunenLoeveDecomposition|aryTree|atzCentrality|elvinBei|elvinBer|elvinKei|elvinKer|endallTau|endallTauTest|ernelMixtureDistribution|ernelObject|ernels|ey|eyComplement|eyDrop|eyDropFrom|eyExistsQ|eyFreeQ|eyIntersection|eyMap|eyMemberQ|eySelect|eySort|eySortBy|eyTake|eyUnion|eyValueMap|eyValuePattern|eys|illProcess|irchhoffGraph|irchhoffMatrix|leinInvariantJ|napsackSolve|nightTourGraph|notData|nownUnitQ|ochCurve|olmogorovSmirnovTest|roneckerDelta|roneckerModelDecomposition|roneckerProduct|roneckerSymbol|uiperTest|umaraswamyDistribution|urtosis|uwaharaFilter))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:L(?:ABColor|CHColor|CM|QEstimatorGains|QGRegulator|QOutputRegulatorGains|QRegulatorGains|UDecomposition|UVColor|abel|abeled|aguerreL|akeData|ambdaComponents|ameC|ameCPrime|ameEigenvalueA|ameEigenvalueB|ameS|ameSPrime|aminaData|anczosWindow|andauDistribution|anguageData|anguageIdentify|aplaceDistribution|aplaceTransform|aplacian|aplacianFilter|aplacianGaussianFilter|aplacianPDETerm|ast|atitude|atitudeLongitude|atticeData|atticeReduce|aunchKernels|ayeredGraphPlot|ayeredGraphPlot3D|eafCount|eapVariant|eapYearQ|earnDistribution|earnedDistribution|eastSquares|eastSquaresFilterKernel|eftArrow|eftArrowBar|eftArrowRightArrow|eftDownTeeVector|eftDownVector|eftDownVectorBar|eftRightArrow|eftRightVector|eftTee|eftTeeArrow|eftTeeVector|eftTriangle|eftTriangleBar|eftTriangleEqual|eftUpDownVector|eftUpTeeVector|eftUpVector|eftUpVectorBar|eftVector|eftVectorBar|egended|egendreP|egendreQ|ength|engthWhile|erchPhi|ess|essEqual|essEqualGreater|essEqualThan|essFullEqual|essGreater|essLess|essSlantEqual|essThan|essTilde|etterCounts|etterNumber|etterQ|evel|eveneTest|eviCivitaTensor|evyDistribution|exicographicOrder|exicographicSort|ibraryDataType|ibraryFunction|ibraryFunctionError|ibraryFunctionInformation|ibraryFunctionLoad|ibraryFunctionUnload|ibraryLoad|ibraryUnload|iftingFilterData|iftingWaveletTransform|ighter|ikelihood|imit|indleyDistribution|ine|ineBreakChart|ineGraph|ineIntegralConvolutionPlot|ineLegend|inearFractionalOptimization|inearFractionalTransform|inearGradientFilling|inearGradientImage|inearModelFit|inearOptimization|inearRecurrence|inearSolve|inearSolveFunction|inearizingTransformationData|inkActivate|inkClose|inkConnect|inkCreate|inkInterrupt|inkLaunch|inkObject|inkPatterns|inkRankCentrality|inkRead|inkReadyQ|inkWrite|inks|iouvilleLambda|ist|istAnimate|istContourPlot|istContourPlot3D|istConvolve|istCorrelate|istCurvePathPlot|istDeconvolve|istDensityPlot|istDensityPlot3D|istFourierSequenceTransform|istInterpolation|istLineIntegralConvolutionPlot|istLinePlot|istLinePlot3D|istLogLinearPlot|istLogLogPlot|istLogPlot|istPicker|istPickerBox|istPlay|istPlot|istPlot3D|istPointPlot3D|istPolarPlot|istQ|istSliceContourPlot3D|istSliceDensityPlot3D|istSliceVectorPlot3D|istStepPlot|istStreamDensityPlot|istStreamPlot|istStreamPlot3D|istSurfacePlot3D|istVectorDensityPlot|istVectorDisplacementPlot|istVectorDisplacementPlot3D|istVectorPlot|istVectorPlot3D|istZTransform|ocalAdaptiveBinarize|ocalCache|ocalClusteringCoefficient|ocalEvaluate|ocalObject|ocalObjects|ocalSubmit|ocalSymbol|ocalTime|ocalTimeZone|ocationEquivalenceTest|ocationTest|ocator|ocatorPane|og|og10|og2|ogBarnesG|ogGamma|ogGammaDistribution|ogIntegral|ogLikelihood|ogLinearPlot|ogLogPlot|ogLogisticDistribution|ogMultinormalDistribution|ogNormalDistribution|ogPlot|ogRankTest|ogSeriesDistribution|ogicalExpand|ogisticDistribution|ogisticSigmoid|ogitModelFit|ongLeftArrow|ongLeftRightArrow|ongRightArrow|ongest|ongestCommonSequence|ongestCommonSequencePositions|ongestCommonSubsequence|ongestCommonSubsequencePositions|ongestOrderedSequence|ongitude|ookup|oopFreeGraphQ|owerCaseQ|owerLeftArrow|owerRightArrow|owerTriangularMatrix|owerTriangularMatrixQ|owerTriangularize|owpassFilter|ucasL|uccioSamiComponents|unarEclipse|yapunovSolve|yonsGroupLy))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:M(?:AProcess|achineNumberQ|agnify|ailReceiverFunction|ajority|akeBoxes|akeExpression|anagedLibraryExpressionID|anagedLibraryExpressionQ|andelbrotSetBoettcher|andelbrotSetDistance|andelbrotSetIterationCount|andelbrotSetMemberQ|andelbrotSetPlot|angoldtLambda|anhattanDistance|anipulate|anipulator|annWhitneyTest|annedSpaceMissionData|antissaExponent|ap|apAll|apApply|apAt|apIndexed|apThread|archenkoPasturDistribution|arcumQ|ardiaCombinedTest|ardiaKurtosisTest|ardiaSkewnessTest|arginalDistribution|arkovProcessProperties|assConcentrationCondition|assFluxValue|assImpermeableBoundaryValue|assOutflowValue|assSymmetryValue|assTransferValue|assTransportPDEComponent|atchQ|atchingDissimilarity|aterialShading|athMLForm|athematicalFunctionData|athieuC|athieuCPrime|athieuCharacteristicA|athieuCharacteristicB|athieuCharacteristicExponent|athieuGroupM11|athieuGroupM12|athieuGroupM22|athieuGroupM23|athieuGroupM24|athieuS|athieuSPrime|atrices|atrixExp|atrixForm|atrixFunction|atrixLog|atrixNormalDistribution|atrixPlot|atrixPower|atrixPropertyDistribution|atrixQ|atrixRank|atrixTDistribution|ax|axDate|axDetect|axFilter|axLimit|axMemoryUsed|axStableDistribution|axValue|aximalBy|aximize|axwellDistribution|cLaughlinGroupMcL|ean|eanClusteringCoefficient|eanDegreeConnectivity|eanDeviation|eanFilter|eanGraphDistance|eanNeighborDegree|eanShift|eanShiftFilter|edian|edianDeviation|edianFilter|edicalTestData|eijerG|eijerGReduce|eixnerDistribution|ellinConvolve|ellinTransform|emberQ|emoryAvailable|emoryConstrained|emoryInUse|engerMesh|enuPacket|enuView|erge|ersennePrimeExponent|ersennePrimeExponentQ|eshCellCount|eshCellIndex|eshCells|eshConnectivityGraph|eshCoordinates|eshPrimitives|eshRegion|eshRegionQ|essage|essageDialog|essageList|essageName|essagePacket|essages|eteorShowerData|exicanHatWavelet|eyerWavelet|in|inDate|inDetect|inFilter|inLimit|inMax|inStableDistribution|inValue|ineralData|inimalBy|inimalPolynomial|inimalStateSpaceModel|inimize|inimumTimeIncrement|inkowskiQuestionMark|inorPlanetData|inors|inus|inusPlus|issing|issingQ|ittagLefflerE|ixedFractionParts|ixedGraphQ|ixedMagnitude|ixedRadix|ixedRadixQuantity|ixedUnit|ixtureDistribution|od|odelPredictiveController|odularInverse|odularLambda|odule|oebiusMu|oment|omentConvert|omentEvaluate|omentGeneratingFunction|omentOfInertia|onitor|onomialList|onsterGroupM|oonPhase|oonPosition|orletWavelet|orphologicalBinarize|orphologicalBranchPoints|orphologicalComponents|orphologicalEulerNumber|orphologicalGraph|orphologicalPerimeter|orphologicalTransform|ortalityData|ost|ountainData|ouseAnnotation|ouseAppearance|ousePosition|ouseover|ovieData|ovingAverage|ovingMap|ovingMedian|oyalDistribution|ulticolumn|ultigraphQ|ultinomial|ultinomialDistribution|ultinormalDistribution|ultiplicativeOrder|ultiplySides|ultivariateHypergeometricDistribution|ultivariatePoissonDistribution|ultivariateTDistribution))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:N(?:|ArgMax|ArgMin|Cache|CaputoD|DEigensystem|DEigenvalues|DSolve|DSolveValue|Expectation|FractionalD|Integrate|MaxValue|Maximize|MinValue|Minimize|Probability|Product|Roots|Solve|SolveValues|Sum|akagamiDistribution|ameQ|ames|and|earest|earestFunction|earestMeshCells|earestNeighborGraph|earestTo|ebulaData|eedlemanWunschSimilarity|eeds|egative|egativeBinomialDistribution|egativeDefiniteMatrixQ|egativeMultinomialDistribution|egativeSemidefiniteMatrixQ|egativelyOrientedPoints|eighborhoodData|eighborhoodGraph|est|estGraph|estList|estWhile|estWhileList|estedGreaterGreater|estedLessLess|eumannValue|evilleThetaC|evilleThetaD|evilleThetaN|evilleThetaS|extCell|extDate|extPrime|icholsPlot|ightHemisphere|onCommutativeMultiply|onNegative|onPositive|oncentralBetaDistribution|oncentralChiSquareDistribution|oncentralFRatioDistribution|oncentralStudentTDistribution|ondimensionalizationTransform|oneTrue|onlinearModelFit|onlinearStateSpaceModel|onlocalMeansFilter|or|orlundB|orm|ormal|ormalDistribution|ormalMatrixQ|ormalize|ormalizedSquaredEuclideanDistance|ot|otCongruent|otCupCap|otDoubleVerticalBar|otElement|otEqualTilde|otExists|otGreater|otGreaterEqual|otGreaterFullEqual|otGreaterGreater|otGreaterLess|otGreaterSlantEqual|otGreaterTilde|otHumpDownHump|otHumpEqual|otLeftTriangle|otLeftTriangleBar|otLeftTriangleEqual|otLess|otLessEqual|otLessFullEqual|otLessGreater|otLessLess|otLessSlantEqual|otLessTilde|otNestedGreaterGreater|otNestedLessLess|otPrecedes|otPrecedesEqual|otPrecedesSlantEqual|otPrecedesTilde|otReverseElement|otRightTriangle|otRightTriangleBar|otRightTriangleEqual|otSquareSubset|otSquareSubsetEqual|otSquareSuperset|otSquareSupersetEqual|otSubset|otSubsetEqual|otSucceeds|otSucceedsEqual|otSucceedsSlantEqual|otSucceedsTilde|otSuperset|otSupersetEqual|otTilde|otTildeEqual|otTildeFullEqual|otTildeTilde|otVerticalBar|otebook|otebookApply|otebookClose|otebookDelete|otebookDirectory|otebookEvaluate|otebookFileName|otebookFind|otebookGet|otebookImport|otebookInformation|otebookLocate|otebookObject|otebookOpen|otebookPrint|otebookPut|otebookRead|otebookSave|otebookSelection|otebookTemplate|otebookWrite|otebooks|othing|uclearExplosionData|uclearReactorData|ullSpace|umberCompose|umberDecompose|umberDigit|umberExpand|umberFieldClassNumber|umberFieldDiscriminant|umberFieldFundamentalUnits|umberFieldIntegralBasis|umberFieldNormRepresentatives|umberFieldRegulator|umberFieldRootsOfUnity|umberFieldSignature|umberForm|umberLinePlot|umberQ|umerator|umeratorDenominator|umericQ|umericalOrder|umericalSort|uttallWindow|yquistPlot))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:O(?:|NanGroupON|bservabilityGramian|bservabilityMatrix|bservableDecomposition|bservableModelQ|ceanData|ctahedron|ddQ|ff|ffset|n|nce|pacity|penAppend|penRead|penWrite|pener|penerView|pening|perate|ptimumFlowData|ptionValue|ptional|ptionalElement|ptions|ptionsPattern|r|rder|rderDistribution|rderedQ|rdering|rderingBy|rderlessPatternSequence|rnsteinUhlenbeckProcess|rthogonalMatrixQ|rthogonalize|uter|uterPolygon|uterPolyhedron|utputControllabilityMatrix|utputControllableModelQ|utputForm|utputNamePacket|utputResponse|utputStream|verBar|verDot|verHat|verTilde|verVector|verflow|verlay|verscript|verscriptBox|wenT|wnValues))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:P(?:DF|ERTDistribution|IDTune|acletDataRebuild|acletDirectoryLoad|acletDirectoryUnload|acletDisable|acletEnable|acletFind|acletFindRemote|acletInstall|acletInstallSubmit|acletNewerQ|acletObject|acletSiteObject|acletSiteRegister|acletSiteUnregister|acletSiteUpdate|acletSites|acletUninstall|adLeft|adRight|addedForm|adeApproximant|ageRankCentrality|airedBarChart|airedHistogram|airedSmoothHistogram|airedTTest|airedZTest|aletteNotebook|alindromeQ|ane|aneSelector|anel|arabolicCylinderD|arallelArray|arallelAxisPlot|arallelCombine|arallelDo|arallelEvaluate|arallelKernels|arallelMap|arallelNeeds|arallelProduct|arallelSubmit|arallelSum|arallelTable|arallelTry|arallelepiped|arallelize|arallelogram|arameterMixtureDistribution|arametricConvexOptimization|arametricFunction|arametricNDSolve|arametricNDSolveValue|arametricPlot|arametricPlot3D|arametricRegion|arentBox|arentCell|arentDirectory|arentNotebook|aretoDistribution|aretoPickandsDistribution|arkData|art|artOfSpeech|artialCorrelationFunction|articleAcceleratorData|articleData|artition|artitionsP|artitionsQ|arzenWindow|ascalDistribution|aste|asteButton|athGraph|athGraphQ|attern|atternSequence|atternTest|aulWavelet|auliMatrix|ause|eakDetect|eanoCurve|earsonChiSquareTest|earsonCorrelationTest|earsonDistribution|ercentForm|erfectNumber|erfectNumberQ|erimeter|eriodicBoundaryCondition|eriodogram|eriodogramArray|ermanent|ermissionsGroup|ermissionsGroupMemberQ|ermissionsGroups|ermissionsKey|ermissionsKeys|ermutationCycles|ermutationCyclesQ|ermutationGroup|ermutationLength|ermutationList|ermutationListQ|ermutationMatrix|ermutationMax|ermutationMin|ermutationOrder|ermutationPower|ermutationProduct|ermutationReplace|ermutationSupport|ermutations|ermute|eronaMalikFilter|ersonData|etersenGraph|haseMargins|hongShading|hysicalSystemData|ick|ieChart|ieChart3D|iecewise|iecewiseExpand|illaiTrace|illaiTraceTest|ingTime|ixelValue|ixelValuePositions|laced|laceholder|lanarAngle|lanarFaceList|lanarGraph|lanarGraphQ|lanckRadiationLaw|laneCurveData|lanetData|lanetaryMoonData|lantData|lay|lot|lot3D|luralize|lus|lusMinus|ochhammer|oint|ointFigureChart|ointLegend|ointLight|ointSize|oissonConsulDistribution|oissonDistribution|oissonPDEComponent|oissonProcess|oissonWindow|olarPlot|olyGamma|olyLog|olyaAeppliDistribution|olygon|olygonAngle|olygonCoordinates|olygonDecomposition|olygonalNumber|olyhedron|olyhedronAngle|olyhedronCoordinates|olyhedronData|olyhedronDecomposition|olyhedronGenus|olynomialExpressionQ|olynomialExtendedGCD|olynomialGCD|olynomialLCM|olynomialMod|olynomialQ|olynomialQuotient|olynomialQuotientRemainder|olynomialReduce|olynomialRemainder|olynomialSumOfSquaresList|opupMenu|opupView|opupWindow|osition|ositionIndex|ositionLargest|ositionSmallest|ositive|ositiveDefiniteMatrixQ|ositiveSemidefiniteMatrixQ|ositivelyOrientedPoints|ossibleZeroQ|ostfix|ower|owerDistribution|owerExpand|owerMod|owerModList|owerRange|owerSpectralDensity|owerSymmetricPolynomial|owersRepresentations|reDecrement|reIncrement|recedenceForm|recedes|recedesEqual|recedesSlantEqual|recedesTilde|recision|redict|redictorFunction|redictorMeasurements|redictorMeasurementsObject|reemptProtect|refix|repend|rependTo|reviousCell|reviousDate|riceGraphDistribution|rime|rimeNu|rimeOmega|rimePi|rimePowerQ|rimeQ|rimeZetaP|rimitivePolynomialQ|rimitiveRoot|rimitiveRootList|rincipalComponents|rintTemporary|rintableASCIIQ|rintout3D|rism|rivateKey|robability|robabilityDistribution|robabilityPlot|robabilityScalePlot|robitModelFit|rocessConnection|rocessInformation|rocessObject|rocessParameterAssumptions|rocessParameterQ|rocessStatus|rocesses|roduct|roductDistribution|roductLog|rogressIndicator|rojection|roportion|roportional|rotect|roteinData|runing|seudoInverse|sychrometricPropertyData|ublicKey|ulsarData|ut|utAppend|yramid))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:Q(?:Binomial|Factorial|Gamma|HypergeometricPFQ|Pochhammer|PolyGamma|RDecomposition|nDispersion|uadraticIrrationalQ|uadraticOptimization|uantile|uantilePlot|uantity|uantityArray|uantityDistribution|uantityForm|uantityMagnitude|uantityQ|uantityUnit|uantityVariable|uantityVariableCanonicalUnit|uantityVariableDimensions|uantityVariableIdentifier|uantityVariablePhysicalQuantity|uartileDeviation|uartileSkewness|uartiles|uery|ueueProperties|ueueingNetworkProcess|ueueingProcess|uiet|uietEcho|uotient|uotientRemainder))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:R(?:GBColor|Solve|SolveValue|adialAxisPlot|adialGradientFilling|adialGradientImage|adialityCentrality|adicalBox|adioButton|adioButtonBar|adon|adonTransform|amanujanTau|amanujanTauL|amanujanTauTheta|amanujanTauZ|amp|andomChoice|andomColor|andomComplex|andomDate|andomEntity|andomFunction|andomGeneratorState|andomGeoPosition|andomGraph|andomImage|andomInteger|andomPermutation|andomPoint|andomPolygon|andomPolyhedron|andomPrime|andomReal|andomSample|andomTime|andomVariate|andomWalkProcess|andomWord|ange|angeFilter|ankedMax|ankedMin|arerProbability|aster|aster3D|asterize|ational|ationalExpressionQ|ationalize|atios|awBoxes|awData|ayleighDistribution|e|eIm|eImPlot|eactionPDETerm|ead|eadByteArray|eadLine|eadList|eadString|ealAbs|ealDigits|ealExponent|ealSign|eap|econstructionMesh|ectangle|ectangleChart|ectangleChart3D|ectangularRepeatingElement|ecurrenceFilter|ecurrenceTable|educe|efine|eflectionMatrix|eflectionTransform|efresh|egion|egionBinarize|egionBoundary|egionBounds|egionCentroid|egionCongruent|egionConvert|egionDifference|egionDilation|egionDimension|egionDisjoint|egionDistance|egionDistanceFunction|egionEmbeddingDimension|egionEqual|egionErosion|egionFit|egionImage|egionIntersection|egionMeasure|egionMember|egionMemberFunction|egionMoment|egionNearest|egionNearestFunction|egionPlot|egionPlot3D|egionProduct|egionQ|egionResize|egionSimilar|egionSymmetricDifference|egionUnion|egionWithin|egularExpression|egularPolygon|egularlySampledQ|elationGraph|eleaseHold|eliabilityDistribution|eliefImage|eliefPlot|emove|emoveAlphaChannel|emoveBackground|emoveDiacritics|emoveInputStreamMethod|emoveOutputStreamMethod|emoveUsers|enameDirectory|enameFile|enewalProcess|enkoChart|epairMesh|epeated|epeatedNull|epeatedTiming|epeatingElement|eplace|eplaceAll|eplaceAt|eplaceImageValue|eplaceList|eplacePart|eplacePixelValue|eplaceRepeated|esamplingAlgorithmData|escale|escalingTransform|esetDirectory|esidue|esidueSum|esolve|esourceData|esourceObject|esourceSearch|esponseForm|est|estricted|esultant|eturn|eturnExpressionPacket|eturnPacket|eturnTextPacket|everse|everseBiorthogonalSplineWavelet|everseElement|everseEquilibrium|everseGraph|everseSort|everseSortBy|everseUpEquilibrium|evolutionPlot3D|iccatiSolve|iceDistribution|idgeFilter|iemannR|iemannSiegelTheta|iemannSiegelZ|iemannXi|iffle|ightArrow|ightArrowBar|ightArrowLeftArrow|ightComposition|ightCosetRepresentative|ightDownTeeVector|ightDownVector|ightDownVectorBar|ightTee|ightTeeArrow|ightTeeVector|ightTriangle|ightTriangleBar|ightTriangleEqual|ightUpDownVector|ightUpTeeVector|ightUpVector|ightUpVectorBar|ightVector|ightVectorBar|iskAchievementImportance|iskReductionImportance|obustConvexOptimization|ogersTanimotoDissimilarity|ollPitchYawAngles|ollPitchYawMatrix|omanNumeral|oot|ootApproximant|ootIntervals|ootLocusPlot|ootMeanSquare|ootOfUnityQ|ootReduce|ootSum|oots|otate|otateLeft|otateRight|otationMatrix|otationTransform|ound|ow|owBox|owReduce|udinShapiro|udvalisGroupRu|ule|uleDelayed|ulePlot|un|unProcess|unThrough|ussellRaoDissimilarity))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:S(?:ARIMAProcess|ARMAProcess|ASTriangle|SSTriangle|ameAs|ameQ|ampledSoundFunction|ampledSoundList|atelliteData|atisfiabilityCount|atisfiabilityInstances|atisfiableQ|ave|avitzkyGolayMatrix|awtoothWave|cale|caled|calingMatrix|calingTransform|can|cheduledTask|churDecomposition|cientificForm|corerGi|corerGiPrime|corerHi|corerHiPrime|ec|ech|echDistribution|econdOrderConeOptimization|ectorChart|ectorChart3D|eedRandom|elect|electComponents|electFirst|electedCells|electedNotebook|electionCreateCell|electionEvaluate|electionEvaluateCreateCell|electionMove|emanticImport|emanticImportString|emanticInterpretation|emialgebraicComponentInstances|emidefiniteOptimization|endMail|endMessage|equence|equenceAlignment|equenceCases|equenceCount|equenceFold|equenceFoldList|equencePosition|equenceReplace|equenceSplit|eries|eriesCoefficient|eriesData|erviceConnect|erviceDisconnect|erviceExecute|erviceObject|essionSubmit|essionTime|et|etAccuracy|etAlphaChannel|etAttributes|etCloudDirectory|etCookies|etDelayed|etDirectory|etEnvironment|etFileDate|etOptions|etPermissions|etPrecision|etSelectedNotebook|etSharedFunction|etSharedVariable|etStreamPosition|etSystemOptions|etUsers|etter|etterBar|etting|hallow|hannonWavelet|hapiroWilkTest|hare|harpen|hearingMatrix|hearingTransform|hellRegion|henCastanMatrix|hiftRegisterSequence|hiftedGompertzDistribution|hort|hortDownArrow|hortLeftArrow|hortRightArrow|hortTimeFourier|hortTimeFourierData|hortUpArrow|hortest|hortestPathFunction|how|iderealTime|iegelTheta|iegelTukeyTest|ierpinskiCurve|ierpinskiMesh|ign|ignTest|ignature|ignedRankTest|ignedRegionDistance|impleGraph|impleGraphQ|implePolygonQ|implePolyhedronQ|implex|implify|in|inIntegral|inc|inghMaddalaDistribution|ingularValueDecomposition|ingularValueList|ingularValuePlot|inh|inhIntegral|ixJSymbol|keleton|keletonTransform|kellamDistribution|kewNormalDistribution|kewness|kip|liceContourPlot3D|liceDensityPlot3D|liceDistribution|liceVectorPlot3D|lideView|lider|lider2D|liderBox|lot|lotSequence|mallCircle|mithDecomposition|mithDelayCompensator|mithWatermanSimilarity|moothDensityHistogram|moothHistogram|moothHistogram3D|moothKernelDistribution|nDispersion|ocketConnect|ocketListen|ocketListener|ocketObject|ocketOpen|ocketReadMessage|ocketReadyQ|ocketWaitAll|ocketWaitNext|ockets|okalSneathDissimilarity|olarEclipse|olarSystemFeatureData|olarTime|olidAngle|olidData|olidRegionQ|olve|olveAlways|olveValues|ort|ortBy|ound|oundNote|ourcePDETerm|ow|paceCurveData|pacer|pan|parseArray|parseArrayQ|patialGraphDistribution|patialMedian|peak|pearmanRankTest|pearmanRho|peciesData|pectralLineData|pectrogram|pectrogramArray|pecularity|peechSynthesize|pellingCorrectionList|phere|pherePoints|phericalBesselJ|phericalBesselY|phericalHankelH1|phericalHankelH2|phericalHarmonicY|phericalPlot3D|phericalShell|pheroidalEigenvalue|pheroidalJoiningFactor|pheroidalPS|pheroidalPSPrime|pheroidalQS|pheroidalQSPrime|pheroidalRadialFactor|pheroidalS1|pheroidalS1Prime|pheroidalS2|pheroidalS2Prime|plicedDistribution|plit|plitBy|pokenString|potLight|qrt|qrtBox|quare|quareFreeQ|quareIntersection|quareMatrixQ|quareRepeatingElement|quareSubset|quareSubsetEqual|quareSuperset|quareSupersetEqual|quareUnion|quareWave|quaredEuclideanDistance|quaresR|tableDistribution|tack|tackBegin|tackComplete|tackInhibit|tackedDateListPlot|tackedListPlot|tadiumShape|tandardAtmosphereData|tandardDeviation|tandardDeviationFilter|tandardForm|tandardOceanData|tandardize|tandbyDistribution|tar|tarClusterData|tarData|tarGraph|tartProcess|tateFeedbackGains|tateOutputEstimator|tateResponse|tateSpaceModel|tateSpaceTransform|tateTransformationLinearize|tationaryDistribution|tationaryWaveletPacketTransform|tationaryWaveletTransform|tatusArea|tatusCentrality|tieltjesGamma|tippleShading|tirlingS1|tirlingS2|toppingPowerData|tratonovichProcess|treamDensityPlot|treamPlot|treamPlot3D|treamPosition|treams|tringCases|tringContainsQ|tringCount|tringDelete|tringDrop|tringEndsQ|tringExpression|tringExtract|tringForm|tringFormat|tringFormatQ|tringFreeQ|tringInsert|tringJoin|tringLength|tringMatchQ|tringPadLeft|tringPadRight|tringPart|tringPartition|tringPosition|tringQ|tringRepeat|tringReplace|tringReplaceList|tringReplacePart|tringReverse|tringRiffle|tringRotateLeft|tringRotateRight|tringSkeleton|tringSplit|tringStartsQ|tringTake|tringTakeDrop|tringTemplate|tringToByteArray|tringToStream|tringTrim|tripBoxes|tructuralImportance|truveH|truveL|tudentTDistribution|tyle|tyleBox|tyleData|ubMinus|ubPlus|ubStar|ubValues|ubdivide|ubfactorial|ubgraph|ubresultantPolynomialRemainders|ubresultantPolynomials|ubresultants|ubscript|ubscriptBox|ubsequences|ubset|ubsetEqual|ubsetMap|ubsetQ|ubsets|ubstitutionSystem|ubsuperscript|ubsuperscriptBox|ubtract|ubtractFrom|ubtractSides|ucceeds|ucceedsEqual|ucceedsSlantEqual|ucceedsTilde|uccess|uchThat|um|umConvergence|unPosition|unrise|unset|uperDagger|uperMinus|uperPlus|uperStar|upernovaData|uperscript|uperscriptBox|uperset|upersetEqual|urd|urfaceArea|urfaceData|urvivalDistribution|urvivalFunction|urvivalModel|urvivalModelFit|uzukiDistribution|uzukiGroupSuz|watchLegend|witch|ymbol|ymbolName|ymletWavelet|ymmetric|ymmetricGroup|ymmetricKey|ymmetricMatrixQ|ymmetricPolynomial|ymmetricReduction|ymmetrize|ymmetrizedArray|ymmetrizedArrayRules|ymmetrizedDependentComponents|ymmetrizedIndependentComponents|ymmetrizedReplacePart|ynonyms|yntaxInformation|yntaxLength|yntaxPacket|yntaxQ|ystemDialogInput|ystemInformation|ystemOpen|ystemOptions|ystemProcessData|ystemProcesses|ystemsConnectionsModel|ystemsModelControllerData|ystemsModelDelay|ystemsModelDelayApproximate|ystemsModelDelete|ystemsModelDimensions|ystemsModelExtract|ystemsModelFeedbackConnect|ystemsModelLinearity|ystemsModelMerge|ystemsModelOrder|ystemsModelParallelConnect|ystemsModelSeriesConnect|ystemsModelStateFeedbackConnect|ystemsModelVectorRelativeOrders))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:T(?:Test|abView|able|ableForm|agBox|agSet|agSetDelayed|agUnset|ake|akeDrop|akeLargest|akeLargestBy|akeList|akeSmallest|akeSmallestBy|akeWhile|ally|an|anh|askAbort|askExecute|askObject|askRemove|askResume|askSuspend|askWait|asks|autologyQ|eXForm|elegraphProcess|emplateApply|emplateBox|emplateExpression|emplateIf|emplateObject|emplateSequence|emplateSlot|emplateWith|emporalData|ensorContract|ensorDimensions|ensorExpand|ensorProduct|ensorRank|ensorReduce|ensorSymmetry|ensorTranspose|ensorWedge|erminatedEvaluation|estReport|estReportObject|estResultObject|etrahedron|ext|extCell|extData|extGrid|extPacket|extRecognize|extSentences|extString|extTranslation|extWords|exture|herefore|hermodynamicData|hermometerGauge|hickness|hinning|hompsonGroupTh|hread|hreeJSymbol|hreshold|hrough|hrow|hueMorse|humbnail|ideData|ilde|ildeEqual|ildeFullEqual|ildeTilde|imeConstrained|imeObject|imeObjectQ|imeRemaining|imeSeries|imeSeriesAggregate|imeSeriesForecast|imeSeriesInsert|imeSeriesInvertibility|imeSeriesMap|imeSeriesMapThread|imeSeriesModel|imeSeriesModelFit|imeSeriesResample|imeSeriesRescale|imeSeriesShift|imeSeriesThread|imeSeriesWindow|imeSystemConvert|imeUsed|imeValue|imeZoneConvert|imeZoneOffset|imelinePlot|imes|imesBy|iming|itsGroupT|oBoxes|oCharacterCode|oContinuousTimeModel|oDiscreteTimeModel|oEntity|oExpression|oInvertibleTimeSeries|oLowerCase|oNumberField|oPolarCoordinates|oRadicals|oRules|oSphericalCoordinates|oString|oUpperCase|oeplitzMatrix|ogether|oggler|ogglerBar|ooltip|oonShading|opHatTransform|opologicalSort|orus|orusGraph|otal|otalVariationFilter|ouchPosition|r|race|raceDialog|racePrint|raceScan|racyWidomDistribution|radingChart|raditionalForm|ransferFunctionCancel|ransferFunctionExpand|ransferFunctionFactor|ransferFunctionModel|ransferFunctionPoles|ransferFunctionTransform|ransferFunctionZeros|ransformationFunction|ransformationMatrix|ransformedDistribution|ransformedField|ransformedProcess|ransformedRegion|ransitiveClosureGraph|ransitiveReductionGraph|ranslate|ranslationTransform|ransliterate|ranspose|ravelDirections|ravelDirectionsData|ravelDistance|ravelDistanceList|ravelTime|reeForm|reeGraph|reeGraphQ|reePlot|riangle|riangleWave|riangularDistribution|riangulateMesh|rigExpand|rigFactor|rigFactorList|rigReduce|rigToExp|rigger|rimmedMean|rimmedVariance|ropicalStormData|rueQ|runcatedDistribution|runcatedPolyhedron|sallisQExponentialDistribution|sallisQGaussianDistribution|ube|ukeyLambdaDistribution|ukeyWindow|unnelData|uples|uranGraph|uringMachine|uttePolynomial|woWayRule|ypeHint))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:U(?:RL|RLBuild|RLDecode|RLDispatcher|RLDownload|RLEncode|RLExecute|RLExpand|RLParse|RLQueryDecode|RLQueryEncode|RLRead|RLResponseTime|RLShorten|RLSubmit|nateQ|ncompress|nderBar|nderflow|nderoverscript|nderoverscriptBox|nderscript|nderscriptBox|nderseaFeatureData|ndirectedEdge|ndirectedGraph|ndirectedGraphQ|nequal|nequalTo|nevaluated|niformDistribution|niformGraphDistribution|niformPolyhedron|niformSumDistribution|ninstall|nion|nionPlus|nique|nitBox|nitConvert|nitDimensions|nitRootTest|nitSimplify|nitStep|nitTriangle|nitVector|nitaryMatrixQ|nitize|niverseModelData|niversityData|nixTime|nprotect|nsameQ|nset|nsetShared|ntil|pArrow|pArrowBar|pArrowDownArrow|pDownArrow|pEquilibrium|pSet|pSetDelayed|pTee|pTeeArrow|pTo|pValues|pdate|pperCaseQ|pperLeftArrow|pperRightArrow|pperTriangularMatrix|pperTriangularMatrixQ|pperTriangularize|psample|singFrontEnd))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:V(?:alueQ|alues|ariables|ariance|arianceEquivalenceTest|arianceGammaDistribution|arianceTest|ectorAngle|ectorDensityPlot|ectorDisplacementPlot|ectorDisplacementPlot3D|ectorGreater|ectorGreaterEqual|ectorLess|ectorLessEqual|ectorPlot|ectorPlot3D|ectorQ|ectors|ee|erbatim|erificationTest|ertexAdd|ertexChromaticNumber|ertexComponent|ertexConnectivity|ertexContract|ertexCorrelationSimilarity|ertexCosineSimilarity|ertexCount|ertexCoverQ|ertexDegree|ertexDelete|ertexDiceSimilarity|ertexEccentricity|ertexInComponent|ertexInComponentGraph|ertexInDegree|ertexIndex|ertexJaccardSimilarity|ertexList|ertexOutComponent|ertexOutComponentGraph|ertexOutDegree|ertexQ|ertexReplace|ertexTransitiveGraphQ|ertexWeightedGraphQ|erticalBar|erticalGauge|erticalSeparator|erticalSlider|erticalTilde|oiceStyleData|oigtDistribution|olcanoData|olume|onMisesDistribution|oronoiMesh))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:W(?:aitAll|aitNext|akebyDistribution|alleniusHypergeometricDistribution|aringYuleDistribution|arpingCorrespondence|arpingDistance|atershedComponents|atsonUSquareTest|attsStrogatzGraphDistribution|avePDEComponent|aveletBestBasis|aveletFilterCoefficients|aveletImagePlot|aveletListPlot|aveletMapIndexed|aveletMatrixPlot|aveletPhi|aveletPsi|aveletScalogram|aveletThreshold|eakStationarity|eaklyConnectedComponents|eaklyConnectedGraphComponents|eaklyConnectedGraphQ|eatherData|eatherForecastData|eberE|edge|eibullDistribution|eierstrassE1|eierstrassE2|eierstrassE3|eierstrassEta1|eierstrassEta2|eierstrassEta3|eierstrassHalfPeriodW1|eierstrassHalfPeriodW2|eierstrassHalfPeriodW3|eierstrassHalfPeriods|eierstrassInvariantG2|eierstrassInvariantG3|eierstrassInvariants|eierstrassP|eierstrassPPrime|eierstrassSigma|eierstrassZeta|eightedAdjacencyGraph|eightedAdjacencyMatrix|eightedData|eightedGraphQ|elchWindow|heelGraph|henEvent|hich|hile|hiteNoiseProcess|hittakerM|hittakerW|ienerFilter|ienerProcess|ignerD|ignerSemicircleDistribution|ikipediaData|ilksW|ilksWTest|indDirectionData|indSpeedData|indVectorData|indingCount|indingPolygon|insorizedMean|insorizedVariance|ishartMatrixDistribution|ith|olframAlpha|olframLanguageData|ordCloud|ordCount|ordCounts|ordData|ordDefinition|ordFrequency|ordFrequencyData|ordList|ordStem|ordTranslation|rite|riteLine|riteString|ronskian))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:X(?:MLElement|MLObject|MLTemplate|YZColor|nor|or))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:Y(?:uleDissimilarity))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:Z(?:IPCodeData|Test|Transform|ernikeR|eroSymmetric|eta|etaZero|ipfDistribution))(?![`$[:alnum:]])","name":"support.function.builtin.wolfram"},{"match":"(?:A(?:cceptanceThreshold|ccuracyGoal|ctiveStyle|ddOnHelpPath|djustmentBoxOptions|lignment|lignmentPoint|llowGroupClose|llowInlineCells|llowLooseGrammar|llowReverseGroupClose|llowScriptLevelChange|llowVersionUpdate|llowedCloudExtraParameters|llowedCloudParameterExtensions|llowedDimensions|llowedFrequencyRange|llowedHeads|lternativeHypothesis|ltitudeMethod|mbiguityFunction|natomySkinStyle|nchoredSearch|nimationDirection|nimationRate|nimationRepetitions|nimationRunTime|nimationRunning|nimationTimeIndex|nnotationRules|ntialiasing|ppearance|ppearanceElements|ppearanceRules|spectRatio|ssociationFormat|ssumptions|synchronous|ttachedCell|udioChannelAssignment|udioEncoding|udioInputDevice|udioLabel|udioOutputDevice|uthentication|utoAction|utoCopy|utoDelete|utoGeneratedPackage|utoIndent|utoItalicWords|utoMultiplicationSymbol|utoOpenNotebooks|utoOpenPalettes|utoOperatorRenderings|utoRemove|utoScroll|utoSpacing|utoloadPath|utorunSequencing|xes|xesEdge|xesLabel|xesOrigin|xesStyle))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:B(?:ackground|arOrigin|arSpacing|aseStyle|aselinePosition|inaryFormat|ookmarks|ooleanStrings|oundaryStyle|oxBaselineShift|oxFormFormatTypes|oxFrame|oxMargins|oxRatios|oxStyle|oxed|ubbleScale|ubbleSizes|uttonBoxOptions|uttonData|uttonFunction|uttonMinHeight|uttonSource|yteOrdering))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:C(?:alendarType|alloutMarker|alloutStyle|aptureRunning|aseOrdering|elestialSystem|ellAutoOverwrite|ellBaseline|ellBracketOptions|ellChangeTimes|ellContext|ellDingbat|ellDingbatMargin|ellDynamicExpression|ellEditDuplicate|ellEpilog|ellEvaluationDuplicate|ellEvaluationFunction|ellEventActions|ellFrame|ellFrameColor|ellFrameLabelMargins|ellFrameLabels|ellFrameMargins|ellGrouping|ellGroupingRules|ellHorizontalScrolling|ellID|ellLabel|ellLabelAutoDelete|ellLabelMargins|ellLabelPositioning|ellLabelStyle|ellLabelTemplate|ellMargins|ellOpen|ellProlog|ellSize|ellTags|haracterEncoding|haracterEncodingsPath|hartBaseStyle|hartElementFunction|hartElements|hartLabels|hartLayout|hartLegends|hartStyle|lassPriors|lickToCopyEnabled|lipPlanes|lipPlanesStyle|lipRange|lippingStyle|losingAutoSave|loudBase|loudObjectNameFormat|loudObjectURLType|lusterDissimilarityFunction|odeAssistOptions|olorCoverage|olorFunction|olorFunctionBinning|olorFunctionScaling|olorRules|olorSelectorSettings|olorSpace|olumnAlignments|olumnLines|olumnSpacings|olumnWidths|olumnsEqual|ombinerFunction|ommonDefaultFormatTypes|ommunityBoundaryStyle|ommunityLabels|ommunityRegionStyle|ompilationOptions|ompilationTarget|ompiled|omplexityFunction|ompressionLevel|onfidenceLevel|onfidenceRange|onfidenceTransform|onfigurationPath|onstants|ontentPadding|ontentSelectable|ontentSize|ontinuousAction|ontourLabels|ontourShading|ontourStyle|ontours|ontrolPlacement|ontrolType|ontrollerLinking|ontrollerMethod|ontrollerPath|ontrolsRendering|onversionRules|ookieFunction|oordinatesToolOptions|opyFunction|opyable|ornerNeighbors|ounterAssignments|ounterFunction|ounterIncrements|ounterStyleMenuListing|ovarianceEstimatorFunction|reateCellID|reateIntermediateDirectories|riterionFunction|ubics|urveClosed))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:D(?:ataRange|ataReversed|atasetTheme|ateFormat|ateFunction|ateGranularity|ateReduction|ateTicksFormat|ayCountConvention|efaultDuplicateCellStyle|efaultDuration|efaultElement|efaultFontProperties|efaultFormatType|efaultInlineFormatType|efaultNaturalLanguage|efaultNewCellStyle|efaultNewInlineCellStyle|efaultNotebook|efaultOptions|efaultPrintPrecision|efaultStyleDefinitions|einitialization|eletable|eleteContents|eletionWarning|elimiterAutoMatching|elimiterFlashTime|elimiterMatching|elimiters|eliveryFunction|ependentVariables|eployed|escriptorStateSpace|iacriticalPositioning|ialogProlog|ialogSymbols|igitBlock|irectedEdges|irection|iscreteVariables|ispersionEstimatorFunction|isplayAllSteps|isplayFunction|istanceFunction|istributedContexts|ithering|ividers|ockedCell|ockedCells|ynamicEvaluationTimeout|ynamicModuleValues|ynamicUpdating))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:E(?:clipseType|dgeCapacity|dgeCost|dgeLabelStyle|dgeLabels|dgeShapeFunction|dgeStyle|dgeValueRange|dgeValueSizes|dgeWeight|ditCellTagsSettings|ditable|lidedForms|nabled|pilog|pilogFunction|scapeRadius|valuatable|valuationCompletionAction|valuationElements|valuationMonitor|valuator|valuatorNames|ventLabels|xcludePods|xcludedContexts|xcludedForms|xcludedLines|xcludedPhysicalQuantities|xclusions|xclusionsStyle|xponentFunction|xponentPosition|xponentStep|xponentialFamily|xportAutoReplacements|xpressionUUID|xtension|xtentElementFunction|xtentMarkers|xtentSize|xternalDataCharacterEncoding|xternalOptions|xternalTypeSignature))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:F(?:aceGrids|aceGridsStyle|ailureAction|eatureNames|eatureTypes|eedbackSector|eedbackSectorStyle|eedbackType|ieldCompletionFunction|ieldHint|ieldHintStyle|ieldMasked|ieldSize|ileNameDialogSettings|ileNameForms|illing|illingStyle|indSettings|itRegularization|ollowRedirects|ontColor|ontFamily|ontSize|ontSlant|ontSubstitutions|ontTracking|ontVariations|ontWeight|orceVersionInstall|ormBoxOptions|ormLayoutFunction|ormProtectionMethod|ormatType|ormatTypeAutoConvert|ourierParameters|ractionBoxOptions|ractionLine|rame|rameBoxOptions|rameLabel|rameMargins|rameRate|rameStyle|rameTicks|rameTicksStyle|rontEndEventActions|unctionSpace))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:G(?:apPenalty|augeFaceElementFunction|augeFaceStyle|augeFrameElementFunction|augeFrameSize|augeFrameStyle|augeLabels|augeMarkers|augeStyle|aussianIntegers|enerateConditions|eneratedCell|eneratedDocumentBinding|eneratedParameters|eneratedQuantityMagnitudes|eneratorDescription|eneratorHistoryLength|eneratorOutputType|eoArraySize|eoBackground|eoCenter|eoGridLines|eoGridLinesStyle|eoGridRange|eoGridRangePadding|eoLabels|eoLocation|eoModel|eoProjection|eoRange|eoRangePadding|eoResolution|eoScaleBar|eoServer|eoStylingImageFunction|eoZoomLevel|radient|raphHighlight|raphHighlightStyle|raphLayerStyle|raphLayers|raphLayout|ridCreationSettings|ridDefaultElement|ridFrame|ridFrameMargins|ridLines|ridLinesStyle|roupActionBase|roupPageBreakWithin))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:H(?:eaderAlignment|eaderBackground|eaderDisplayFunction|eaderLines|eaderSize|eaderStyle|eads|elpBrowserSettings|iddenItems|olidayCalendar|yperlinkAction|yphenation))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:I(?:conRules|gnoreCase|gnoreDiacritics|gnorePunctuation|mageCaptureFunction|mageFormattingWidth|mageLabels|mageLegends|mageMargins|magePadding|magePreviewFunction|mageRegion|mageResolution|mageSize|mageSizeAction|mageSizeMultipliers|magingDevice|mportAutoReplacements|mportOptions|ncludeConstantBasis|ncludeDefinitions|ncludeDirectories|ncludeFileExtension|ncludeGeneratorTasks|ncludeInflections|ncludeMetaInformation|ncludePods|ncludeQuantities|ncludeSingularSolutions|ncludeWindowTimes|ncludedContexts|ndeterminateThreshold|nflationMethod|nheritScope|nitialSeeding|nitialization|nitializationCell|nitializationCellEvaluation|nitializationCellWarning|nputAliases|nputAssumptions|nputAutoReplacements|nsertResults|nsertionFunction|nteractive|nterleaving|nterpolationOrder|nterpolationPoints|nterpretationBoxOptions|nterpretationFunction|ntervalMarkers|ntervalMarkersStyle|nverseFunctions|temAspectRatio|temDisplayFunction|temSize|temStyle))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:J(?:oined))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:K(?:eepExistingVersion|eyCollisionFunction|eypointStrength))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:L(?:abelStyle|abelVisibility|abelingFunction|abelingSize|anguage|anguageCategory|ayerSizeFunction|eaderSize|earningRate|egendAppearance|egendFunction|egendLabel|egendLayout|egendMargins|egendMarkerSize|egendMarkers|ighting|ightingAngle|imitsPositioning|imitsPositioningTokens|ineBreakWithin|ineIndent|ineIndentMaxFraction|ineIntegralConvolutionScale|ineSpacing|inearOffsetFunction|inebreakAdjustments|inkFunction|inkProtocol|istFormat|istPickerBoxOptions|ocalizeVariables|ocatorAutoCreate|ocatorRegion|ooping))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:M(?:agnification|ailAddressValidation|ailResponseFunction|ailSettings|asking|atchLocalNames|axCellMeasure|axColorDistance|axDuration|axExtraBandwidths|axExtraConditions|axFeatureDisplacement|axFeatures|axItems|axIterations|axMixtureKernels|axOverlapFraction|axPlotPoints|axRecursion|axStepFraction|axStepSize|axSteps|emoryConstraint|enuCommandKey|enuSortingValue|enuStyle|esh|eshCellHighlight|eshCellLabel|eshCellMarker|eshCellShapeFunction|eshCellStyle|eshFunctions|eshQualityGoal|eshRefinementFunction|eshShading|eshStyle|etaInformation|ethod|inColorDistance|inIntervalSize|inPointSeparation|issingBehavior|issingDataMethod|issingDataRules|issingString|issingStyle|odal|odulus|ultiaxisArrangement|ultiedgeStyle|ultilaunchWarning|ultilineFunction|ultiselection))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:N(?:icholsGridLines|ominalVariables|onConstants|ormFunction|ormalized|ormalsFunction|otebookAutoSave|otebookBrowseDirectory|otebookConvertSettings|otebookDynamicExpression|otebookEventActions|otebookPath|otebooksMenu|otificationFunction|ullRecords|ullWords|umberFormat|umberMarks|umberMultiplier|umberPadding|umberPoint|umberSeparator|umberSigns|yquistGridLines))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:O(?:pacityFunction|pacityFunctionScaling|peratingSystem|ptionInspectorSettings|utputAutoOverwrite|utputSizeLimit|verlaps|verscriptBoxOptions|verwriteTarget))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:P(?:IDDerivativeFilter|IDFeedforward|acletSite|adding|addingSize|ageBreakAbove|ageBreakBelow|ageBreakWithin|ageFooterLines|ageFooters|ageHeaderLines|ageHeaders|ageTheme|ageWidth|alettePath|aneled|aragraphIndent|aragraphSpacing|arallelization|arameterEstimator|artBehavior|artitionGranularity|assEventsDown|assEventsUp|asteBoxFormInlineCells|ath|erformanceGoal|ermissions|haseRange|laceholderReplace|layRange|lotLabel|lotLabels|lotLayout|lotLegends|lotMarkers|lotPoints|lotRange|lotRangeClipping|lotRangePadding|lotRegion|lotStyle|lotTheme|odStates|odWidth|olarAxes|olarAxesOrigin|olarGridLines|olarTicks|oleZeroMarkers|recisionGoal|referencesPath|reprocessingRules|reserveColor|reserveImageOptions|rincipalValue|rintAction|rintPrecision|rintingCopies|rintingOptions|rintingPageRange|rintingStartingPageNumber|rintingStyleEnvironment|rintout3DPreviewer|rivateCellOptions|rivateEvaluationOptions|rivateFontOptions|rivateNotebookOptions|rivatePaths|rocessDirectory|rocessEnvironment|rocessEstimator|rogressReporting|rolog|ropagateAborts))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:Q(?:uartics))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:R(?:adicalBoxOptions|andomSeeding|asterSize|eImLabels|eImStyle|ealBlockDiagonalForm|ecognitionPrior|ecordLists|ecordSeparators|eferenceLineStyle|efreshRate|egionBoundaryStyle|egionFillingStyle|egionFunction|egionSize|egularization|enderingOptions|equiredPhysicalQuantities|esampling|esamplingMethod|esolveContextAliases|estartInterval|eturnReceiptFunction|evolutionAxis|otateLabel|otationAction|oundingRadius|owAlignments|owLines|owMinHeight|owSpacings|owsEqual|ulerUnits|untimeAttributes|untimeOptions))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:S(?:ameTest|ampleDepth|ampleRate|amplingPeriod|aveConnection|aveDefinitions|aveable|caleDivisions|caleOrigin|calePadding|caleRangeStyle|caleRanges|calingFunctions|cientificNotationThreshold|creenStyleEnvironment|criptBaselineShifts|criptLevel|criptMinSize|criptSizeMultipliers|crollPosition|crollbars|crollingOptions|ectorOrigin|ectorSpacing|electable|elfLoopStyle|eriesTermGoal|haringList|howAutoSpellCheck|howAutoStyles|howCellBracket|howCellLabel|howCellTags|howClosedCellArea|howContents|howCursorTracker|howGroupOpener|howPageBreaks|howSelection|howShortBoxForm|howSpecialCharacters|howStringCharacters|hrinkingDelay|ignPadding|ignificanceLevel|imilarityRules|ingleLetterItalics|liderBoxOptions|ortedBy|oundVolume|pacings|panAdjustments|panCharacterRounding|panLineThickness|panMaxSize|panMinSize|panSymmetric|pecificityGoal|pellingCorrection|pellingDictionaries|pellingDictionariesPath|pellingOptions|phericalRegion|plineClosed|plineDegree|plineKnots|plineWeights|qrtBoxOptions|tabilityMargins|tabilityMarginsStyle|tandardized|tartingStepSize|tateSpaceRealization|tepMonitor|trataVariables|treamColorFunction|treamColorFunctionScaling|treamMarkers|treamPoints|treamScale|treamStyle|trictInequalities|tripOnInput|tripWrapperBoxes|tructuredSelection|tyleBoxAutoDelete|tyleDefinitions|tyleHints|tyleMenuListing|tyleNameDialogSettings|tyleSheetPath|ubscriptBoxOptions|ubsuperscriptBoxOptions|ubtitleEncoding|uperscriptBoxOptions|urdForm|ynchronousInitialization|ynchronousUpdating|yntaxForm|ystemHelpPath|ystemsModelLabels))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:T(?:abFilling|abSpacings|ableAlignments|ableDepth|ableDirections|ableHeadings|ableSpacing|agBoxOptions|aggingRules|argetFunctions|argetUnits|emplateBoxOptions|emporalRegularity|estID|extAlignment|extClipboardType|extJustification|extureCoordinateFunction|extureCoordinateScaling|icks|icksStyle|imeConstraint|imeDirection|imeFormat|imeGoal|imeSystem|imeZone|okenWords|olerance|ooltipDelay|ooltipStyle|otalWidth|ouchscreenAutoZoom|ouchscreenControlPlacement|raceAbove|raceBackward|raceDepth|raceForward|raceOff|raceOn|raceOriginal|rackedSymbols|rackingFunction|raditionalFunctionNotation|ransformationClass|ransformationFunctions|ransitionDirection|ransitionDuration|ransitionEffect|ranslationOptions|ravelMethod|rendStyle|rig))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:U(?:nderoverscriptBoxOptions|nderscriptBoxOptions|ndoOptions|ndoTrackedVariables|nitSystem|nityDimensions|nsavedVariables|pdateInterval|pdatePacletSites|tilityFunction))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:V(?:alidationLength|alidationSet|alueDimensions|arianceEstimatorFunction|ectorAspectRatio|ectorColorFunction|ectorColorFunctionScaling|ectorMarkers|ectorPoints|ectorRange|ectorScaling|ectorSizes|ectorStyle|erifyConvergence|erifySecurityCertificates|erifySolutions|erifyTestAssumptions|ersionedPreferences|ertexCapacity|ertexColors|ertexCoordinates|ertexDataCoordinates|ertexLabelStyle|ertexLabels|ertexNormals|ertexShape|ertexShapeFunction|ertexSize|ertexStyle|ertexTextureCoordinates|ertexWeight|ideoEncoding|iewAngle|iewCenter|iewMatrix|iewPoint|iewProjection|iewRange|iewVector|iewVertical|isible))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:W(?:aveletScale|eights|hitePoint|indowClickSelect|indowElements|indowFloating|indowFrame|indowFrameElements|indowMargins|indowOpacity|indowSize|indowStatusArea|indowTitle|indowToolbars|ordOrientation|ordSearch|ordSelectionFunction|ordSeparators|ordSpacings|orkingPrecision|rapAround))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:Z(?:eroTest|eroWidthTimes))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:A(?:bove|fter|lgebraics|ll|nonymous|utomatic|xis))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:B(?:ack|ackward|aseline|efore|elow|lack|lue|old|ooleans|ottom|oxes|rown|yte))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:C(?:atalan|ellStyle|enter|haracter|omplexInfinity|omplexes|onstant|yan))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:D(?:ashed|efaultAxesStyle|efaultBaseStyle|efaultBoxStyle|efaultFaceGridsStyle|efaultFieldHintStyle|efaultFrameStyle|efaultFrameTicksStyle|efaultGridLinesStyle|efaultLabelStyle|efaultMenuStyle|efaultTicksStyle|efaultTooltipStyle|egree|elimiter|igitCharacter|otDashed|otted))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:E(?:|ndOfBuffer|ndOfFile|ndOfLine|ndOfString|ulerGamma|xpression))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:F(?:alse|lat|ontProperties|orward|orwardBackward|riday|ront|rontEndDynamicExpression|ull))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:G(?:eneral|laisher|oldenAngle|oldenRatio|ray|reen))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:H(?:ere|exadecimalCharacter|oldAll|oldAllComplete|oldFirst|oldRest))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:I(?:|ndeterminate|nfinity|nherited|nteger|ntegers|talic))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:K(?:hinchin))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:L(?:arge|arger|eft|etterCharacter|ightBlue|ightBrown|ightCyan|ightGray|ightGreen|ightMagenta|ightOrange|ightPink|ightPurple|ightRed|ightYellow|istable|ocked))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:M(?:achinePrecision|agenta|anual|edium|eshCellCentroid|eshCellMeasure|eshCellQuality|onday))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:N(?:HoldAll|HoldFirst|HoldRest|egativeIntegers|egativeRationals|egativeReals|oWhitespace|onNegativeIntegers|onNegativeRationals|onNegativeReals|onPositiveIntegers|onPositiveRationals|onPositiveReals|one|ow|ull|umber|umberString|umericFunction))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:O(?:neIdentity|range|rderless))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:P(?:i|ink|lain|ositiveIntegers|ositiveRationals|ositiveReals|rimes|rotected|unctuationCharacter|urple))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:R(?:ationals|eadProtected|eal|eals|ecord|ed|ight))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:S(?:aturday|equenceHold|mall|maller|panFromAbove|panFromBoth|panFromLeft|tartOfLine|tartOfString|tring|truckthrough|tub|unday))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:T(?:emporary|hick|hin|hursday|iny|oday|omorrow|op|ransparent|rue|uesday))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:U(?:ndefined|nderlined))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:W(?:ednesday|hite|hitespace|hitespaceCharacter|ord|ordBoundary|ordCharacter))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:Y(?:ellow|esterday))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:\\\\$(?:Aborted|ActivationKey|AllowDataUpdates|AllowInternet|AssertFunction|Assumptions|AudioInputDevices|AudioOutputDevices|BaseDirectory|BasePacletsDirectory|BatchInput|BatchOutput|ByteOrdering|CacheBaseDirectory|Canceled|CharacterEncoding|CharacterEncodings|CloudAccountName|CloudBase|CloudConnected|CloudCreditsAvailable|CloudEvaluation|CloudExpressionBase|CloudObjectNameFormat|CloudObjectURLType|CloudRootDirectory|CloudSymbolBase|CloudUserID|CloudUserUUID|CloudVersion|CommandLine|CompilationTarget|Context|ContextAliases|ContextPath|ControlActiveSetting|Cookies|CreationDate|CurrentLink|CurrentTask|DateStringFormat|DefaultAudioInputDevice|DefaultAudioOutputDevice|DefaultFrontEnd|DefaultImagingDevice|DefaultKernels|DefaultLocalBase|DefaultLocalKernel|Display|DisplayFunction|DistributedContexts|DynamicEvaluation|Echo|EmbedCodeEnvironments|EmbeddableServices|Epilog|EvaluationCloudBase|EvaluationCloudObject|EvaluationEnvironment|ExportFormats|Failed|FontFamilies|FrontEnd|FrontEndSession|GeoLocation|GeoLocationCity|GeoLocationCountry|GeoLocationSource|HomeDirectory|IgnoreEOF|ImageFormattingWidth|ImageResolution|ImagingDevice|ImagingDevices|ImportFormats|InitialDirectory|Input|InputFileName|InputStreamMethods|Inspector|InstallationDirectory|InterpreterTypes|IterationLimit|KernelCount|KernelID|Language|LibraryPath|LicenseExpirationDate|LicenseID|LicenseServer|Linked|LocalBase|LocalSymbolBase|MachineAddresses|MachineDomains|MachineEpsilon|MachineID|MachineName|MachinePrecision|MachineType|MaxExtraPrecision|MaxMachineNumber|MaxNumber|MaxPiecewiseCases|MaxPrecision|MaxRootDegree|MessageGroups|MessageList|MessagePrePrint|Messages|MinMachineNumber|MinNumber|MinPrecision|MobilePhone|ModuleNumber|NetworkConnected|NewMessage|NewSymbol|NotebookInlineStorageLimit|Notebooks|NumberMarks|OperatingSystem|Output|OutputSizeLimit|OutputStreamMethods|Packages|ParentLink|ParentProcessID|PasswordFile|Path|PathnameSeparator|PerformanceGoal|Permissions|PlotTheme|Printout3DPreviewer|ProcessID|ProcessorCount|ProcessorType|ProgressReporting|RandomGeneratorState|RecursionLimit|ReleaseNumber|RequesterAddress|RequesterCloudUserID|RequesterCloudUserUUID|RequesterWolframID|RequesterWolframUUID|RootDirectory|ScriptCommandLine|ScriptInputString|Services|SessionID|SharedFunctions|SharedVariables|SoundDisplayFunction|SynchronousEvaluation|System|SystemCharacterEncoding|SystemID|SystemShell|SystemTimeZone|SystemWordLength|TemplatePath|TemporaryDirectory|TimeUnit|TimeZone|TimeZoneEntity|TimedOut|UnitSystem|Urgent|UserAgentString|UserBaseDirectory|UserBasePacletsDirectory|UserDocumentsDirectory|UserURLBase|Username|Version|VersionNumber|WolframDocumentsDirectory|WolframID|WolframUUID))(?![`$[:alnum:]])","name":"constant.language.wolfram"},{"match":"(?:A(?:bortScheduledTask|ctive|lgebraicRules|lternateImage|natomyForm|nimationCycleOffset|nimationCycleRepetitions|nimationDisplayTime|spectRatioFixed|stronomicalData|synchronousTaskObject|synchronousTasks|udioDevice|udioLooping))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:B(?:uttonEvaluator|uttonExpandable|uttonFrame|uttonMargins|uttonNote|uttonStyle))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:C(?:DFInformation|hebyshevDistance|lassifierInformation|lipFill|olorOutput|olumnForm|ompose|onstantArrayLayer|onstantPlusLayer|onstantTimesLayer|onstrainedMax|onstrainedMin|ontourGraphics|ontourLines|onversionOptions|reateScheduledTask|reateTemporary|urry))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:D(?:atabinRemove|ate|ebug|efaultColor|efaultFont|ensityGraphics|isplay|isplayString|otPlusLayer|ragAndDrop))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:E(?:dgeLabeling|dgeRenderingFunction|valuateScheduledTask|xpectedValue))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:F(?:actorComplete|ontForm|ormTheme|romDate|ullOptions))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:G(?:raphStyle|raphicsArray|raphicsSpacing|ridBaseline))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:H(?:TMLSave|eldPart|iddenSurface|omeDirectory))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:I(?:mageRotated|nstanceNormalizationLayer))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:L(?:UBackSubstitution|egendreType|ightSources|inearProgramming|inkOpen|iteral|ongestMatch))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:M(?:eshRange|oleculeEquivalentQ))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:N(?:etInformation|etSharedArray|extScheduledTaskTime|otebookCreate))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:O(?:penTemporary))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:P(?:IDData|ackingMethod|ersistentValue|ixelConstrained|lot3Matrix|lotDivision|lotJoined|olygonIntersections|redictorInformation|roperties|roperty|ropertyList|ropertyValue))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:R(?:andom|asterArray|ecognitionThreshold|elease|emoteKernelObject|emoveAsynchronousTask|emoveProperty|emoveScheduledTask|enderAll|eplaceHeldPart|esetScheduledTask|esumePacket|unScheduledTask))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:S(?:cheduledTaskActiveQ|cheduledTaskInformation|cheduledTaskObject|cheduledTasks|creenRectangle|electionAnimate|equenceAttentionLayer|equenceForm|etProperty|hading|hortestMatch|ingularValues|kinStyle|ocialMediaData|tartAsynchronousTask|tartScheduledTask|tateDimensions|topAsynchronousTask|topScheduledTask|tructuredArray|tyleForm|tylePrint|ubscripted|urfaceColor|urfaceGraphics|uspendPacket|ystemModelProgressReporting))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:T(?:eXSave|extStyle|imeWarpingCorrespondence|imeWarpingDistance|oDate|oFileName|oHeldExpression))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:U(?:RLFetch|RLFetchAsynchronous|RLSave|RLSaveAsynchronous))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:V(?:ectorScale|ertexCoordinateRules|ertexLabeling|ertexRenderingFunction))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:W(?:aitAsynchronousTask|indowMovable))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:\\\\$(?:AsynchronousTask|ConfiguredKernels|DefaultFont|EntityStores|FormatType|HTTPCookies|InstallationDate|MachineDomain|ProductInformation|ProgramName|RandomState|ScheduledTask|SummaryBoxDataSizeLimit|TemporaryPrefix|TextStyle|TopDirectory|UserAddOnsDirectory))(?![`$[:alnum:]])","name":"invalid.deprecated.wolfram"},{"match":"(?:A(?:ctionDelay|ctionMenuBox|ctionMenuBoxOptions|ctiveItem|lgebraicRulesData|lignmentMarker|llowAdultContent|llowChatServices|llowIncomplete|nalytic|nimatorBox|nimatorBoxOptions|nimatorElements|ppendCheck|rgumentCountQ|rrow3DBox|rrowBox|uthenticate|utoEvaluateEvents|utoIndentSpacings|utoMatch|utoNumberFormatting|utoQuoteCharacters|utoScaling|utoStyleOptions|utoStyleWords|utomaticImageSize|xis3DBox|xis3DBoxOptions|xisBox|xisBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:B(?:SplineCurve3DBox|SplineCurve3DBoxOptions|SplineCurveBox|SplineCurveBoxOptions|SplineSurface3DBox|SplineSurface3DBoxOptions|ackFaceColor|ackFaceGlowColor|ackFaceOpacity|ackFaceSpecularColor|ackFaceSpecularExponent|ackFaceSurfaceAppearance|ackFaceTexture|ackgroundAppearance|ackgroundTasksSettings|acksubstitution|eveled|ezierCurve3DBox|ezierCurve3DBoxOptions|ezierCurveBox|ezierCurveBoxOptions|lankForm|ounds|ox|oxDimensions|oxForm|oxID|oxRotation|oxRotationPoint|ra|raKet|rowserCategory|uttonCell|uttonContents|uttonStyleMenuListing))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:C(?:acheGraphics|achedValue|ardinalBSplineBasis|ellBoundingBox|ellContents|ellElementSpacings|ellElementsBoundingBox|ellFrameStyle|ellInsertionPointCell|ellTrayPosition|ellTrayWidgets|hangeOptions|hannelDatabin|hannelListenerWait|hannelPreSendFunction|hartElementData|hartElementDataFunction|heckAll|heckboxBox|heckboxBoxOptions|ircleBox|lipboardNotebook|lockwiseContourIntegral|losed|losingEvent|loudConnections|loudObjectInformation|loudObjectInformationData|loudUserID|oarse|oefficientDomain|olonForm|olorSetterBox|olorSetterBoxOptions|olumnBackgrounds|ompilerEnvironmentAppend|ompletionsListPacket|omponentwiseContextMenu|ompressedData|oneBox|onicHullRegion3DBox|onicHullRegion3DBoxOptions|onicHullRegionBox|onicHullRegionBoxOptions|onnect|ontentsBoundingBox|ontextMenu|ontinuation|ontourIntegral|ontourSmoothing|ontrolAlignment|ontrollerDuration|ontrollerInformationData|onvertToPostScript|onvertToPostScriptPacket|ookies|opyTag|ounterBox|ounterBoxOptions|ounterClockwiseContourIntegral|ounterEvaluator|ounterStyle|uboidBox|uboidBoxOptions|urlyDoubleQuote|urlyQuote|ylinderBox|ylinderBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:D(?:OSTextFormat|ampingFactor|ataCompression|atasetDisplayPanel|ateDelimiters|ebugTag|ecimal|efault2DTool|efault3DTool|efaultAttachedCellStyle|efaultControlPlacement|efaultDockedCellStyle|efaultInputFormatType|efaultOutputFormatType|efaultStyle|efaultTextFormatType|efaultTextInlineFormatType|efaultValue|efineExternal|egreeLexicographic|egreeReverseLexicographic|eleteWithContents|elimitedArray|estroyAfterEvaluation|eviceOpenQ|ialogIndent|ialogLevel|ifferenceOrder|igitBlockMinimum|isableConsolePrintPacket|iskBox|iskBoxOptions|ispatchQ|isplayRules|isplayTemporary|istributionDomain|ivergence|ocumentGeneratorInformationData|omainRegistrationInformation|oubleContourIntegral|oublyInfinite|own|rawBackFaces|rawFrontFaces|rawHighlighted|ualLinearProgramming|umpGet|ynamicBox|ynamicBoxOptions|ynamicLocation|ynamicModuleBox|ynamicModuleBoxOptions|ynamicModuleParent|ynamicName|ynamicNamespace|ynamicReference|ynamicWrapperBox|ynamicWrapperBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:E(?:ditButtonSettings|liminationOrder|llipticReducedHalfPeriods|mbeddingObject|mphasizeSyntaxErrors|mpty|nableConsolePrintPacket|ndAdd|ngineEnvironment|nter|qualColumns|qualRows|quatedTo|rrorBoxOptions|rrorNorm|rrorPacket|rrorsDialogSettings|valuated|valuationMode|valuationOrder|valuationRateLimit|ventEvaluator|ventHandlerTag|xactRootIsolation|xitDialog|xpectationE|xportPacket|xpressionPacket|xternalCall|xternalFunctionName))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:F(?:EDisableConsolePrintPacket|EEnableConsolePrintPacket|ail|ileInformation|ileName|illForm|illedCurveBox|illedCurveBoxOptions|ine|itAll|lashSelection|ont|ontName|ontOpacity|ontPostScriptName|ontReencoding|ormatRules|ormatValues|rameInset|rameless|rontEndObject|rontEndResource|rontEndResourceString|rontEndStackSize|rontEndValueCache|rontEndVersion|rontFaceColor|rontFaceGlowColor|rontFaceOpacity|rontFaceSpecularColor|rontFaceSpecularExponent|rontFaceSurfaceAppearance|rontFaceTexture|ullAxes))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:G(?:eneratedCellStyles|eneric|eometricTransformation3DBox|eometricTransformation3DBoxOptions|eometricTransformationBox|eometricTransformationBoxOptions|estureHandlerTag|etContext|etFileName|etLinebreakInformationPacket|lobalPreferences|lobalSession|raphLayerLabels|raphRoot|raphics3DBox|raphics3DBoxOptions|raphicsBaseline|raphicsBox|raphicsBoxOptions|raphicsComplex3DBox|raphicsComplex3DBoxOptions|raphicsComplexBox|raphicsComplexBoxOptions|raphicsContents|raphicsData|raphicsGridBox|raphicsGroup3DBox|raphicsGroup3DBoxOptions|raphicsGroupBox|raphicsGroupBoxOptions|raphicsGrouping|raphicsStyle|reekStyle|ridBoxAlignment|ridBoxBackground|ridBoxDividers|ridBoxFrame|ridBoxItemSize|ridBoxItemStyle|ridBoxOptions|ridBoxSpacings|ridElementStyleOptions|roupOpenerColor|roupOpenerInsideFrame|roupTogetherGrouping|roupTogetherNestedGrouping))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:H(?:eadCompose|eaders|elpBrowserLookup|elpBrowserNotebook|elpViewerSettings|essian|exahedronBox|exahedronBoxOptions|ighlightString|omePage|orizontal|orizontalForm|orizontalScrollPosition|yperlinkCreationSettings|yphenationOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:I(?:conizedObject|gnoreSpellCheck|mageCache|mageCacheValid|mageEditMode|mageMarkers|mageOffset|mageRangeCache|mageSizeCache|mageSizeRaw|nactiveStyle|ncludeSingularTerm|ndent|ndentMaxFraction|ndentingNewlineSpacings|ndexCreationOptions|ndexTag|nequality|nexactNumbers|nformationData|nformationDataGrid|nlineCounterAssignments|nlineCounterIncrements|nlineRules|nputFieldBox|nputFieldBoxOptions|nputGrouping|nputSettings|nputToBoxFormPacket|nsertionPointObject|nset3DBox|nset3DBoxOptions|nsetBox|nsetBoxOptions|ntegral|nterlaced|nterpolationPrecision|nterpretTemplate|nterruptSettings|nto|nvisibleApplication|nvisibleTimes|temBox|temBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:J(?:acobian|oinedCurveBox|oinedCurveBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:K(?:|ernelExecute|et))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:L(?:abeledSlider|ambertW|anguageOptions|aunch|ayoutInformation|exicographic|icenseID|ine3DBox|ine3DBoxOptions|ineBox|ineBoxOptions|ineBreak|ineWrapParts|inearFilter|inebreakSemicolonWeighting|inkConnectedQ|inkError|inkFlush|inkHost|inkMode|inkOptions|inkReadHeld|inkService|inkWriteHeld|istPickerBoxBackground|isten|iteralSearch|ocalizeDefinitions|ocatorBox|ocatorBoxOptions|ocatorCentering|ocatorPaneBox|ocatorPaneBoxOptions|ongEqual|ongForm|oopback))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:M(?:achineID|achineName|acintoshSystemPageSetup|ainSolve|aintainDynamicCaches|akeRules|atchLocalNameQ|aterial|athMLText|athematicaNotation|axBend|axPoints|enu|enuAppearance|enuEvaluator|enuItem|enuList|ergeDifferences|essageObject|essageOptions|essagesNotebook|etaCharacters|ethodOptions|inRecursion|inSize|ode|odular|onomialOrder|ouseAppearanceTag|ouseButtons|ousePointerNote|ultiLetterItalics|ultiLetterStyle|ultiplicity|ultiscriptBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:N(?:BernoulliB|ProductFactors|SumTerms|Values|amespaceBox|amespaceBoxOptions|estedScriptRules|etworkPacketRecordingDuring|ext|onAssociative|ormalGrouping|otebookDefault|otebookInterfaceObject))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:O(?:LEData|bjectExistsQ|pen|penFunctionInspectorPacket|penSpecialOptions|penerBox|penerBoxOptions|ptionQ|ptionValueBox|ptionValueBoxOptions|ptionsPacket|utputFormData|utputGrouping|utputMathEditExpression|ver|verlayBox|verlayBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:P(?:ackPaclet|ackage|acletDirectoryAdd|acletDirectoryRemove|acletInformation|acletObjectQ|acletUpdate|ageHeight|alettesMenuSettings|aneBox|aneBoxOptions|aneSelectorBox|aneSelectorBoxOptions|anelBox|anelBoxOptions|aperWidth|arameter|arameterVariables|arentConnect|arentForm|arentList|arenthesize|artialD|asteAutoQuoteCharacters|ausedTime|eriodicInterpolation|erpendicular|ickMode|ickedElements|ivoting|lotRangeClipPlanesStyle|oint3DBox|oint3DBoxOptions|ointBox|ointBoxOptions|olygon3DBox|olygon3DBoxOptions|olygonBox|olygonBoxOptions|olygonHoleScale|olygonScale|olyhedronBox|olyhedronBoxOptions|olynomialForm|olynomials|opupMenuBox|opupMenuBoxOptions|ostScript|recedence|redictionRoot|referencesSettings|revious|rimaryPlaceholder|rintForm|rismBox|rismBoxOptions|rivateFrontEndOptions|robabilityPr|rocessStateDomain|rocessTimeDomain|rogressIndicatorBox|rogressIndicatorBoxOptions|romptForm|yramidBox|yramidBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:R(?:adioButtonBox|adioButtonBoxOptions|andomSeed|angeSpecification|aster3DBox|aster3DBoxOptions|asterBox|asterBoxOptions|ationalFunctions|awArray|awMedium|ebuildPacletData|ectangleBox|ecurringDigitsForm|eferenceMarkerStyle|eferenceMarkers|einstall|emoved|epeatedString|esourceAcquire|esourceSubmissionObject|eturnCreatesNewCell|eturnEntersInput|eturnInputFormPacket|otationBox|otationBoxOptions|oundImplies|owBackgrounds|owHeights|uleCondition|uleForm))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:S(?:aveAutoDelete|caledMousePosition|cheduledTaskInformationData|criptForm|criptRules|ectionGrouping|electWithContents|election|electionCell|electionCellCreateCell|electionCellDefaultStyle|electionCellParentStyle|electionPlaceholder|elfLoops|erviceResponse|etOptionsPacket|etSecuredAuthenticationKey|etbacks|etterBox|etterBoxOptions|howAutoConvert|howCodeAssist|howControls|howGroupOpenCloseIcon|howInvisibleCharacters|howPredictiveInterface|howSyntaxStyles|hrinkWrapBoundingBox|ingleEvaluation|ingleLetterStyle|lider2DBox|lider2DBoxOptions|ocket|olveDelayed|oundAndGraphics|pace|paceForm|panningCharacters|phereBox|phereBoxOptions|tartupSound|tringBreak|tringByteCount|tripStyleOnPaste|trokeForm|tructuredArrayHeadQ|tyleKeyMapping|tyleNames|urfaceAppearance|yntax|ystemException|ystemGet|ystemInformationData|ystemStub|ystemTest))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:T(?:ab|abViewBox|abViewBoxOptions|ableViewBox|ableViewBoxAlignment|ableViewBoxBackground|ableViewBoxHeaders|ableViewBoxItemSize|ableViewBoxItemStyle|ableViewBoxOptions|agBoxNote|agStyle|emplateEvaluate|emplateSlotSequence|emplateUnevaluated|emplateVerbatim|emporaryVariable|ensorQ|etrahedronBox|etrahedronBoxOptions|ext3DBox|ext3DBoxOptions|extBand|extBoundingBox|extBox|extForm|extLine|extParagraph|hisLink|itleGrouping|oColor|oggle|oggleFalse|ogglerBox|ogglerBoxOptions|ooBig|ooltipBox|ooltipBoxOptions|otalHeight|raceAction|raceInternal|raceLevel|rackCellChangeTimes|raditionalNotation|raditionalOrder|ransparentColor|rapEnterKey|rapSelection|ubeBSplineCurveBox|ubeBSplineCurveBoxOptions|ubeBezierCurveBox|ubeBezierCurveBoxOptions|ubeBox|ubeBoxOptions))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:U(?:ntrackedVariables|p|seGraphicsRange|serDefinedWavelet|sing))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:V(?:2Get|alueBox|alueBoxOptions|alueForm|aluesData|ectorGlyphData|erbose|ertical|erticalForm|iewPointSelectorSettings|iewPort|irtualGroupData|isibleCell))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:W(?:aitUntil|ebPageMetaInformation|holeCellGroupOpener|indowPersistentStyles|indowSelected|indowWidth|olframAlphaDate|olframAlphaQuantity|olframAlphaResult|olframCloudSettings))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:\\\\$(?:ActivationGroupID|ActivationUserRegistered|AddOnsDirectory|BoxForms|CloudConnection|CloudVersionNumber|CloudWolframEngineVersionNumber|ConditionHold|DefaultMailbox|DefaultPath|FinancialDataSource|GeoEntityTypes|GeoLocationPrecision|HTMLExportRules|HTTPRequest|LaunchDirectory|LicenseProcesses|LicenseSubprocesses|LicenseType|LinkSupported|LoadedFiles|MaxLicenseProcesses|MaxLicenseSubprocesses|MinorReleaseNumber|NetworkLicense|Off|OutputForms|PatchLevelID|PermissionsGroupBase|PipeSupported|PreferencesDirectory|PrintForms|PrintLiteral|RegisteredDeviceClasses|RegisteredUserName|SecuredAuthenticationKeyTokens|SetParentLink|SoundDisplay|SuppressInputFormHeads|SystemMemory|TraceOff|TraceOn|TracePattern|TracePostAction|TracePreAction|UserAgentLanguages|UserAgentMachine|UserAgentName|UserAgentOperatingSystem|UserAgentVersion|UserName))(?![`$[:alnum:]])","name":"support.function.undocumented.wolfram"},{"match":"(?:A(?:ctiveClassification|ctiveClassificationObject|ctivePrediction|ctivePredictionObject|ddToSearchIndex|ggregatedEntityClass|ggregationLayer|ngleBisector|nimatedImage|nimationVideo|nomalyDetector|ppendLayer|pplication|pplyReaction|round|roundReplace|rrayReduce|sk|skAppend|skConfirm|skDisplay|skFunction|skState|skTemplateDisplay|skedQ|skedValue|ssessmentFunction|ssessmentResultObject|ssumeDeterministic|stroAngularSeparation|stroBackground|stroCenter|stroDistance|stroGraphics|stroGridLines|stroGridLinesStyle|stroPosition|stroProjection|stroRange|stroRangePadding|stroReferenceFrame|stroStyling|stroZoomLevel|tom|tomCoordinates|tomCount|tomDiagramCoordinates|tomLabelStyle|tomLabels|tomList|ttachCell|ttentionLayer|udioAnnotate|udioAnnotationLookup|udioIdentify|udioInstanceQ|udioPause|udioPlay|udioRecord|udioStop|udioStream|udioStreams|udioTrackApply|udioTrackSelection|utocomplete|utocompletionFunction|xiomaticTheory|xisLabel|xisObject|xisStyle))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:B(?:asicRecurrentLayer|atchNormalizationLayer|atchSize|ayesianMaximization|ayesianMaximizationObject|ayesianMinimization|ayesianMinimizationObject|esagL|innedVariogramList|inomialPointProcess|ioSequence|ioSequenceBackTranslateList|ioSequenceComplement|ioSequenceInstances|ioSequenceModify|ioSequencePlot|ioSequenceQ|ioSequenceReverseComplement|ioSequenceTranscribe|ioSequenceTranslate|itRate|lockDiagonalMatrix|lockLowerTriangularMatrix|lockUpperTriangularMatrix|lockchainAddressData|lockchainBase|lockchainBlockData|lockchainContractValue|lockchainData|lockchainGet|lockchainKeyEncode|lockchainPut|lockchainTokenData|lockchainTransaction|lockchainTransactionData|lockchainTransactionSign|lockchainTransactionSubmit|ond|ondCount|ondLabelStyle|ondLabels|ondList|ondQ|uildCompiledComponent))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:C(?:TCLossLayer|achePersistence|anvas|ast|ategoricalDistribution|atenateLayer|auchyPointProcess|hannelBase|hannelBrokerAction|hannelHistoryLength|hannelListen|hannelListener|hannelListeners|hannelObject|hannelReceiverFunction|hannelSend|hannelSubscribers|haracterNormalize|hemicalConvert|hemicalFormula|hemicalInstance|hemicalReaction|loudExpression|loudExpressions|loudRenderingMethod|ombinatorB|ombinatorC|ombinatorI|ombinatorK|ombinatorS|ombinatorW|ombinatorY|ombinedEntityClass|ompiledCodeFunction|ompiledComponent|ompiledExpressionDeclaration|ompiledLayer|ompilerCallback|ompilerEnvironment|ompilerEnvironmentAppendTo|ompilerEnvironmentObject|ompilerOptions|omplementedEntityClass|omputeUncertainty|onfirmQuiet|onformationMethod|onnectSystemModelComponents|onnectSystemModelController|onnectedMoleculeComponents|onnectedMoleculeQ|onnectionSettings|ontaining|ontentDetectorFunction|ontentFieldOptions|ontentLocationFunction|ontentObject|ontrastiveLossLayer|onvolutionLayer|reateChannel|reateCloudExpression|reateCompilerEnvironment|reateDataStructure|reateDataSystemModel|reateLicenseEntitlement|reateSearchIndex|reateSystemModel|reateTypeInstance|rossEntropyLossLayer|urrentNotebookImage|urrentScreenImage|urryApplied))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:D(?:SolveChangeVariables|ataStructure|ataStructureQ|atabaseConnect|atabaseDisconnect|atabaseReference|atabinSubmit|ateInterval|eclareCompiledComponent|econvolutionLayer|ecryptFile|eleteChannel|eleteCloudExpression|eleteElements|eleteSearchIndex|erivedKey|iggleGatesPointProcess|iggleGrattonPointProcess|igitalSignature|isableFormatting|ocumentWeightingRules|otLayer|ownValuesFunction|ropoutLayer|ynamicImage))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:E(?:choTiming|lementwiseLayer|mbeddedSQLEntityClass|mbeddedSQLExpression|mbeddingLayer|mptySpaceF|ncryptFile|ntityFunction|ntityStore|stimatedPointProcess|stimatedVariogramModel|valuationEnvironment|valuationPrivileges|xpirationDate|xpressionTree|xtendedEntityClass|xternalEvaluate|xternalFunction|xternalIdentifier|xternalObject|xternalSessionObject|xternalSessions|xternalStorageBase|xternalStorageDownload|xternalStorageGet|xternalStorageObject|xternalStoragePut|xternalStorageUpload|xternalValue|xtractLayer))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:F(?:aceRecognize|eatureDistance|eatureExtract|eatureExtraction|eatureExtractor|eatureExtractorFunction|ileConvert|ileFormatProperties|ileNameToFormatList|ileSystemTree|ilteredEntityClass|indChannels|indEquationalProof|indExternalEvaluators|indGeometricConjectures|indImageText|indIsomers|indMoleculeSubstructure|indPointProcessParameters|indSystemModelEquilibrium|indTextualAnswer|lattenLayer|orAllType|ormControl|orwardCloudCredentials|oxHReduce|rameListVideo|romRawPointer|unctionCompile|unctionCompileExport|unctionCompileExportByteArray|unctionCompileExportLibrary|unctionCompileExportString|unctionDeclaration|unctionLayer|unctionPoles))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:G(?:alleryView|atedRecurrentLayer|enerateDerivedKey|enerateDigitalSignature|enerateFileSignature|enerateSecuredAuthenticationKey|eneratedAssetFormat|eneratedAssetLocation|eoGraphValuePlot|eoOrientationData|eometricAssertion|eometricScene|eometricStep|eometricStylingRules|eometricTest|ibbsPointProcess|raphTree|ridVideo))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:H(?:andlerFunctions|andlerFunctionsKeys|ardcorePointProcess|istogramPointDensity))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:I(?:gnoreIsotopes|gnoreStereochemistry|mageAugmentationLayer|mageBoundingBoxes|mageCases|mageContainsQ|mageContents|mageGraphics|magePosition|magePyramid|magePyramidApply|mageStitch|mportedObject|ncludeAromaticBonds|ncludeHydrogens|ncludeRelatedTables|nertEvaluate|nertExpression|nfiniteFuture|nfinitePast|nhomogeneousPoissonPointProcess|nitialEvaluationHistory|nitializationObject|nitializationObjects|nitializationValue|nitialize|nputPorts|ntegrateChangeVariables|nterfaceSwitched|ntersectedEntityClass|nverseImagePyramid))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:K(?:ernelConfiguration|ernelFunction))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:L(?:earningRateMultipliers|ibraryFunctionDeclaration|icenseEntitlementObject|icenseEntitlements|icensingSettings|inearLayer|iteralType|oadCompiledComponent|ocalResponseNormalizationLayer|ongShortTermMemoryLayer|ossFunction))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:M(?:IMETypeToFormatList|ailExecute|ailFolder|ailItem|ailSearch|ailServerConnect|ailServerConnection|aternPointProcess|axDisplayedChildren|axTrainingRounds|axWordGap|eanAbsoluteLossLayer|eanAround|eanPointDensity|eanSquaredLossLayer|ergingFunction|idpoint|issingValuePattern|issingValueSynthesis|olecule|oleculeAlign|oleculeContainsQ|oleculeDraw|oleculeFreeQ|oleculeGraph|oleculeMatchQ|oleculeMaximumCommonSubstructure|oleculeModify|oleculeName|oleculePattern|oleculePlot|oleculePlot3D|oleculeProperty|oleculeQ|oleculeRecognize|oleculeSubstructureCount|oleculeValue))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:N(?:BodySimulation|BodySimulationData|earestNeighborG|estTree|etAppend|etArray|etArrayLayer|etBidirectionalOperator|etChain|etDecoder|etDelete|etDrop|etEncoder|etEvaluationMode|etExternalObject|etExtract|etFlatten|etFoldOperator|etGANOperator|etGraph|etInitialize|etInsert|etInsertSharedArrays|etJoin|etMapOperator|etMapThreadOperator|etMeasurements|etModel|etNestOperator|etPairEmbeddingOperator|etPort|etPortGradient|etPrepend|etRename|etReplace|etReplacePart|etStateObject|etTake|etTrain|etTrainResultsObject|etUnfold|etworkPacketCapture|etworkPacketRecording|etworkPacketTrace|eymanScottPointProcess|ominalScale|ormalizationLayer|umericArray|umericArrayQ|umericArrayType))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:O(?:peratorApplied|rderingLayer|rdinalScale|utputPorts|verlayVideo))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:P(?:acletSymbol|addingLayer|agination|airCorrelationG|arametricRampLayer|arentEdgeLabel|arentEdgeLabelFunction|arentEdgeLabelStyle|arentEdgeShapeFunction|arentEdgeStyle|arentEdgeStyleFunction|artLayer|artProtection|atternFilling|atternReaction|enttinenPointProcess|erpendicularBisector|ersistenceLocation|ersistenceTime|ersistentObject|ersistentObjects|ersistentSymbol|itchRecognize|laceholderLayer|laybackSettings|ointCountDistribution|ointDensity|ointDensityFunction|ointProcessEstimator|ointProcessFitTest|ointProcessParameterAssumptions|ointProcessParameterQ|ointStatisticFunction|ointValuePlot|oissonPointProcess|oolingLayer|rependLayer|roofObject|ublisherID))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:Q(?:uestionGenerator|uestionInterface|uestionObject|uestionSelector))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:R(?:andomArrayLayer|andomInstance|andomPointConfiguration|andomTree|eactionBalance|eactionBalancedQ|ecalibrationFunction|egisterExternalEvaluator|elationalDatabase|emoteAuthorizationCaching|emoteBatchJobAbort|emoteBatchJobObject|emoteBatchJobs|emoteBatchMapSubmit|emoteBatchSubmissionEnvironment|emoteBatchSubmit|emoteConnect|emoteConnectionObject|emoteEvaluate|emoteFile|emoteInputFiles|emoteProviderSettings|emoteRun|emoteRunProcess|emovalConditions|emoveAudioStream|emoveChannelListener|emoveChannelSubscribers|emoveVideoStream|eplicateLayer|eshapeLayer|esizeLayer|esourceFunction|esourceRegister|esourceRemove|esourceSubmit|esourceSystemBase|esourceSystemPath|esourceUpdate|esourceVersion|everseApplied|ipleyK|ipleyRassonRegion|ootTree|ulesTree))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:S(?:ameTestProperties|ampledEntityClass|earchAdjustment|earchIndexObject|earchIndices|earchQueryString|earchResultObject|ecuredAuthenticationKey|ecuredAuthenticationKeys|ecurityCertificate|equenceIndicesLayer|equenceLastLayer|equenceMostLayer|equencePredict|equencePredictorFunction|equenceRestLayer|equenceReverseLayer|erviceRequest|erviceSubmit|etFileFormatProperties|etSystemModel|lideShowVideo|moothPointDensity|nippet|nippetsVideo|nubPolyhedron|oftmaxLayer|olidBoundaryLoadValue|olidDisplacementCondition|olidFixedCondition|olidMechanicsPDEComponent|olidMechanicsStrain|olidMechanicsStress|ortedEntityClass|ourceLink|patialBinnedPointData|patialBoundaryCorrection|patialEstimate|patialEstimatorFunction|patialJ|patialNoiseLevel|patialObservationRegionQ|patialPointData|patialPointSelect|patialRandomnessTest|patialTransformationLayer|patialTrendFunction|peakerMatchQ|peechCases|peechInterpreter|peechRecognize|plice|tartExternalSession|tartWebSession|tereochemistryElements|traussHardcorePointProcess|traussPointProcess|ubsetCases|ubsetCount|ubsetPosition|ubsetReplace|ubtitleTrackSelection|ummationLayer|ymmetricDifference|ynthesizeMissingValues|ystemCredential|ystemCredentialData|ystemCredentialKey|ystemCredentialKeys|ystemCredentialStoreObject|ystemInstall|ystemModel|ystemModelExamples|ystemModelLinearize|ystemModelMeasurements|ystemModelParametricSimulate|ystemModelPlot|ystemModelReliability|ystemModelSimulate|ystemModelSimulateSensitivity|ystemModelSimulationData|ystemModeler|ystemModels))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:T(?:ableView|argetDevice|argetSystem|ernaryListPlot|ernaryPlotCorners|extCases|extContents|extElement|extPosition|extSearch|extSearchReport|extStructure|homasPointProcess|hreaded|hreadingLayer|ickDirection|ickLabelOrientation|ickLabelPositioning|ickLabels|ickLengths|ickPositions|oRawPointer|otalLayer|ourVideo|rainImageContentDetector|rainTextContentDetector|rainingProgressCheckpointing|rainingProgressFunction|rainingProgressMeasurements|rainingProgressReporting|rainingStoppingCriterion|rainingUpdateSchedule|ransposeLayer|ree|reeCases|reeChildren|reeCount|reeData|reeDelete|reeDepth|reeElementCoordinates|reeElementLabel|reeElementLabelFunction|reeElementLabelStyle|reeElementShape|reeElementShapeFunction|reeElementSize|reeElementSizeFunction|reeElementStyle|reeElementStyleFunction|reeExpression|reeExtract|reeFold|reeInsert|reeLayout|reeLeafCount|reeLeafQ|reeLeaves|reeLevel|reeMap|reeMapAt|reeOutline|reePosition|reeQ|reeReplacePart|reeRules|reeScan|reeSelect|reeSize|reeTraversalOrder|riangleCenter|riangleConstruct|riangleMeasurement|ypeDeclaration|ypeEvaluate|ypeOf|ypeSpecifier|yped))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:U(?:RLDownloadSubmit|nconstrainedParameters|nionedEntityClass|niqueElements|nitVectorLayer|nlabeledTree|nmanageObject|nregisterExternalEvaluator|pdateSearchIndex|seEmbeddedLibrary))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:V(?:alenceErrorHandling|alenceFilling|aluePreprocessingFunction|andermondeMatrix|arianceGammaPointProcess|ariogramFunction|ariogramModel|ectorAround|erifyDerivedKey|erifyDigitalSignature|erifyFileSignature|erifyInterpretation|ideo|ideoCapture|ideoCombine|ideoDelete|ideoExtractFrames|ideoFrameList|ideoFrameMap|ideoGenerator|ideoInsert|ideoIntervals|ideoJoin|ideoMap|ideoMapList|ideoMapTimeSeries|ideoPadding|ideoPause|ideoPlay|ideoQ|ideoRecord|ideoReplace|ideoScreenCapture|ideoSplit|ideoStop|ideoStream|ideoStreams|ideoTimeStretch|ideoTrackSelection|ideoTranscode|ideoTransparency|ideoTrim))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:W(?:ebAudioSearch|ebColumn|ebElementObject|ebExecute|ebImage|ebImageSearch|ebItem|ebRow|ebSearch|ebSessionObject|ebSessions|ebWindowObject|ikidataData|ikidataSearch|ikipediaSearch|ithCleanup|ithLock))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:Z(?:oomCenter|oomFactor))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:\\\\$(?:AllowExternalChannelFunctions|AudioDecoders|AudioEncoders|BlockchainBase|ChannelBase|CompilerEnvironment|CookieStore|CryptographicEllipticCurveNames|CurrentWebSession|DataStructures|DefaultNetworkInterface|DefaultProxyRules|DefaultRemoteBatchSubmissionEnvironment|DefaultRemoteKernel|DefaultSystemCredentialStore|ExternalIdentifierTypes|ExternalStorageBase|GeneratedAssetLocation|IncomingMailSettings|Initialization|InitializationContexts|MaxDisplayedChildren|NetworkInterfaces|NoValue|PersistenceBase|PersistencePath|PreInitialization|PublisherID|ResourceSystemBase|ResourceSystemPath|SSHAuthentication|ServiceCreditsAvailable|SourceLink|SubtitleDecoders|SubtitleEncoders|SystemCredentialStore|TargetSystems|TestFileName|VideoDecoders|VideoEncoders|VoiceStyles))(?![`$[:alnum:]])","name":"support.function.experimental.wolfram"},{"match":"(?:A(?:llFalse|nyFalse))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:B(?:oolean))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:C(?:loudbase|omplexQ))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:D(?:ataSet))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:E(?:xpandFilename|xportPacket))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:F(?:ailed|alseQ))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:I(?:nterpolationFunction|nterpolationPolynomial))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:M(?:atch))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:O(?:ptionPattern|ptionsQ))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:R(?:ationalQ|ealQ))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:S(?:tringMatch|ymbolQ))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:U(?:nSameQ|rlExecute))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:\\\\$(?:PathNameSeparator|RegisteredUsername))(?![`$[:alnum:]])","name":"invalid.bad.wolfram"},{"match":"(?:E(?:cho|xit))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"(?:I(?:n|nString))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"(?:O(?:ut))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"(?:P(?:rint))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"(?:Q(?:uit))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"(?:\\\\$(?:HistoryLength|Line|Post|Pre|PrePrint|PreRead|SyntaxHandler))(?![`$[:alnum:]])","name":"invalid.session.wolfram"},{"match":"(?:[$[:alpha:]][$[:alnum:]]*)(?=\\\\s*(\\\\[(?!\\\\s*\\\\[)|@(?!@)))","name":"variable.function.wolfram"},{"match":"(?:[$[:alpha:]][$[:alnum:]]*)","name":"symbol.unrecognized.wolfram"}]}},"scopeName":"source.wolfram","aliases":["wl"]}')),Lse=[Nse]});var NP={};x(NP,{default:()=>Rse});var $se,Rse,LP=_(()=>{Ja();$se=Object.freeze(JSON.parse(`{"displayName":"XSL","name":"xsl","patterns":[{"begin":"(<)(xsl)((:))(template)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.namespace.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(>)","name":"meta.tag.xml.template","patterns":[{"captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}},"match":" (?:([-_a-zA-Z0-9]+)((:)))?([a-zA-Z-]+)"},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},{"include":"text.xml"}],"repository":{"doublequotedString":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.double.xml"},"singlequotedString":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.single.xml"}},"scopeName":"text.xml.xsl","embeddedLangs":["xml"]}`)),Rse=[...Qt,$se]});var $P={};x($P,{default:()=>Pse});var jse,Pse,RP=_(()=>{jse=Object.freeze(JSON.parse(`{"displayName":"ZenScript","fileTypes":["zs"],"name":"zenscript","patterns":[{"comment":"numbers","match":"\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\\\b","name":"constant.numeric.zenscript"},{"comment":"prefixedNumbers","match":"\\\\b\\\\-?(0b|0x|0o|0B|0X|0O)(0|[1-9a-fA-F][0-9a-fA-F_]*)[a-zA-Z_]*\\\\b","name":"constant.numeric.zenscript"},{"include":"#code"},{"comment":"arrays","match":"\\\\b((?:[a-z]\\\\w*\\\\.)*[A-Z]+\\\\w*)(?=\\\\[)","name":"storage.type.object.array.zenscript"}],"repository":{"brackets":{"patterns":[{"captures":{"1":{"name":"keyword.control.zenscript"},"2":{"name":"keyword.other.zenscript"},"3":{"name":"keyword.control.zenscript"},"4":{"name":"variable.other.zenscript"},"5":{"name":"keyword.control.zenscript"},"6":{"name":"constant.numeric.zenscript"},"7":{"name":"keyword.control.zenscript"}},"comment":"items and blocks","match":"(<)\\\\b(.*?)(:(.*?(:(\\\\*|\\\\d+)?)?)?)(>)","name":"keyword.other.zenscript"}]},"class":{"captures":{"1":{"name":"storage.type.zenscript"},"2":{"name":"entity.name.type.class.zenscript"}},"comment":"class","match":"(zenClass)\\\\s+(\\\\w+)","name":"meta.class.zenscript"},"code":{"patterns":[{"include":"#class"},{"include":"#functions"},{"include":"#dots"},{"include":"#quotes"},{"include":"#brackets"},{"include":"#comments"},{"include":"#var"},{"include":"#keywords"},{"include":"#constants"},{"include":"#operators"}]},"comments":{"patterns":[{"comment":"inline comments","match":"//[^\\n]*","name":"comment.line.double=slash"},{"begin":"\\\\/\\\\*","beginCaptures":{"0":{"name":"comment.block"}},"comment":"block comments","end":"\\\\*\\\\/","endCaptures":{"0":{"name":"comment.block"}},"name":"comment.block"}]},"dots":{"captures":{"1":{"name":"storage.type.zenscript"},"2":{"name":"keyword.control.zenscript"},"5":{"name":"keyword.control.zenscript"}},"comment":"dots","match":"\\\\b(\\\\w+)(\\\\.)(\\\\w+)((\\\\.)(\\\\w+))*","name":"plain.text.zenscript"},"functions":{"captures":{"0":{"name":"storage.type.function.zenscript"},"1":{"name":"entity.name.function.zenscript"}},"comment":"functions","match":"function\\\\s+([A-Za-z_$][\\\\w$]*)\\\\s*(?=\\\\()","name":"meta.function.zenscript"},"keywords":{"patterns":[{"comment":"statement keywords","match":"\\\\b(instanceof|get|implements|set|import|function|override|const|if|else|do|while|for|throw|panic|lock|try|catch|finally|return|break|continue|switch|case|default|in|is|as|match|throws|super|new)\\\\b","name":"keyword.control.zenscript"},{"comment":"storage keywords","match":"\\\\b(zenClass|zenConstructor|alias|class|interface|enum|struct|expand|variant|set|void|bool|byte|sbyte|short|ushort|int|uint|long|ulong|usize|float|double|char|string)\\\\b","name":"storage.type.zenscript"},{"comment":"modifier keywords","match":"\\\\b(variant|abstract|final|private|public|export|internal|static|protected|implicit|virtual|extern|immutable)\\\\b","name":"storage.modifier.zenscript"},{"comment":"annotation keywords","match":"\\\\b(Native|Precondition)\\\\b","name":"entity.other.attribute-name"},{"comment":"language keywords","match":"\\\\b(null|true|false)\\\\b","name":"constant.language"}]},"operators":{"patterns":[{"comment":"math operators","match":"\\\\b(\\\\.|\\\\.\\\\.|\\\\.\\\\.\\\\.|,|\\\\+|\\\\+=|\\\\+\\\\+|-|-=|--|~|~=|\\\\*|\\\\*=|/|/=|%|%=|\\\\||\\\\|=|\\\\|\\\\||&|&=|&&|\\\\^|\\\\^=|\\\\?|\\\\?\\\\.|\\\\?\\\\?|<|<=|<<|<<=|>|>=|>>|>>=|>>>|>>>=|=>|=|==|===|!|!=|!==|\\\\$|\`)\\\\b","name":"keyword.control"},{"comment":"colons","match":"\\\\b(;|:)\\\\b","name":"keyword.control"}]},"quotes":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.zenscript"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.zenscript"}},"name":"string.quoted.double.zenscript","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.zenscript"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.zenscript"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.zenscript"}},"name":"string.quoted.single.zenscript","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.zenscript"}]}]},"var":{"comment":"var","match":"\\\\b(val|var)\\\\b","name":"storage.type"}},"scopeName":"source.zenscript"}`)),Pse=[jse]});var jP={};x(jP,{default:()=>Tse});var Mse,Tse,PP=_(()=>{Mse=Object.freeze(JSON.parse(`{"displayName":"Zig","fileTypes":["zig","zon"],"name":"zig","patterns":[{"include":"#comments"},{"include":"#strings"},{"include":"#keywords"},{"include":"#operators"},{"include":"#punctuation"},{"include":"#numbers"},{"include":"#support"},{"include":"#variables"}],"repository":{"commentContents":{"patterns":[{"match":"\\\\b(TODO|FIXME|XXX|NOTE)\\\\b:?","name":"keyword.todo.zig"}]},"comments":{"patterns":[{"begin":"//[!/](?=[^/])","end":"$","name":"comment.line.documentation.zig","patterns":[{"include":"#commentContents"}]},{"begin":"//","end":"$","name":"comment.line.double-slash.zig","patterns":[{"include":"#commentContents"}]}]},"keywords":{"patterns":[{"match":"\\\\binline\\\\b(?!\\\\s*\\\\bfn\\\\b)","name":"keyword.control.repeat.zig"},{"match":"\\\\b(while|for)\\\\b","name":"keyword.control.repeat.zig"},{"match":"\\\\b(extern|packed|export|pub|noalias|inline|comptime|volatile|align|linksection|threadlocal|allowzero|noinline|callconv)\\\\b","name":"keyword.storage.zig"},{"match":"\\\\b(struct|enum|union|opaque)\\\\b","name":"keyword.structure.zig"},{"match":"\\\\b(asm|unreachable)\\\\b","name":"keyword.statement.zig"},{"match":"\\\\b(break|return|continue|defer|errdefer)\\\\b","name":"keyword.control.flow.zig"},{"match":"\\\\b(await|resume|suspend|async|nosuspend)\\\\b","name":"keyword.control.async.zig"},{"match":"\\\\b(try|catch)\\\\b","name":"keyword.control.trycatch.zig"},{"match":"\\\\b(if|else|switch|orelse)\\\\b","name":"keyword.control.conditional.zig"},{"match":"\\\\b(null|undefined)\\\\b","name":"keyword.constant.default.zig"},{"match":"\\\\b(true|false)\\\\b","name":"keyword.constant.bool.zig"},{"match":"\\\\b(usingnamespace|test|and|or)\\\\b","name":"keyword.default.zig"},{"match":"\\\\b(bool|void|noreturn|type|error|anyerror|anyframe|anytype|anyopaque)\\\\b","name":"keyword.type.zig"},{"match":"\\\\b(f16|f32|f64|f80|f128|u\\\\d+|i\\\\d+|isize|usize|comptime_int|comptime_float)\\\\b","name":"keyword.type.integer.zig"},{"match":"\\\\b(c_char|c_short|c_ushort|c_int|c_uint|c_long|c_ulong|c_longlong|c_ulonglong|c_longdouble)\\\\b","name":"keyword.type.c.zig"}]},"numbers":{"patterns":[{"match":"\\\\b0x[0-9a-fA-F][0-9a-fA-F_]*(\\\\.[0-9a-fA-F][0-9a-fA-F_]*)?([pP][+-]?[0-9a-fA-F_]+)?\\\\b","name":"constant.numeric.hexfloat.zig"},{"match":"\\\\b[0-9][0-9_]*(\\\\.[0-9][0-9_]*)?([eE][+-]?[0-9_]+)?\\\\b","name":"constant.numeric.float.zig"},{"match":"\\\\b[0-9][0-9_]*\\\\b","name":"constant.numeric.decimal.zig"},{"match":"\\\\b0x[a-fA-F0-9_]+\\\\b","name":"constant.numeric.hexadecimal.zig"},{"match":"\\\\b0o[0-7_]+\\\\b","name":"constant.numeric.octal.zig"},{"match":"\\\\b0b[01_]+\\\\b","name":"constant.numeric.binary.zig"},{"match":"\\\\b[0-9](([eEpP][+-])|[0-9a-zA-Z_])*(\\\\.(([eEpP][+-])|[0-9a-zA-Z_])*)?([eEpP][+-])?[0-9a-zA-Z_]*\\\\b","name":"constant.numeric.invalid.zig"}]},"operators":{"patterns":[{"match":"(?<=\\\\[)\\\\*c(?=\\\\])","name":"keyword.operator.c-pointer.zig"},{"match":"(\\\\b(and|or)\\\\b)|(==|!=|<=|>=|<|>)","name":"keyword.operator.comparison.zig"},{"match":"(-%?|\\\\+%?|\\\\*%?|/|%)=?","name":"keyword.operator.arithmetic.zig"},{"match":"(<<%?|>>|!|~|&|\\\\^|\\\\|)=?","name":"keyword.operator.bitwise.zig"},{"match":"(==|\\\\+\\\\+|\\\\*\\\\*|->)","name":"keyword.operator.special.zig"},{"match":"=","name":"keyword.operator.assignment.zig"},{"match":"\\\\?","name":"keyword.operator.question.zig"}]},"punctuation":{"patterns":[{"match":"\\\\.","name":"punctuation.accessor.zig"},{"match":",","name":"punctuation.comma.zig"},{"match":":","name":"punctuation.separator.key-value.zig"},{"match":";","name":"punctuation.terminator.statement.zig"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\([nrt'\\"\\\\\\\\]|(x[0-9a-fA-F]{2})|(u\\\\{[0-9a-fA-F]+\\\\}))","name":"constant.character.escape.zig"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.zig"}]},"strings":{"patterns":[{"begin":"\\"","end":"\\"","name":"string.quoted.double.zig","patterns":[{"include":"#stringcontent"}]},{"begin":"\\\\\\\\\\\\\\\\","end":"$","name":"string.multiline.zig"},{"match":"'([^'\\\\\\\\]|\\\\\\\\(x\\\\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.))'","name":"string.quoted.single.zig"}]},"support":{"patterns":[{"comment":"Built-in functions","match":"@[_a-zA-Z][_a-zA-Z0-9]*","name":"support.function.builtin.zig"}]},"variables":{"patterns":[{"name":"meta.function.declaration.zig","patterns":[{"captures":{"1":{"name":"storage.type.function.zig"},"2":{"name":"entity.name.type.zig"}},"match":"\\\\b(fn)\\\\s+([A-Z][a-zA-Z0-9]*)\\\\b"},{"captures":{"1":{"name":"storage.type.function.zig"},"2":{"name":"entity.name.function.zig"}},"match":"\\\\b(fn)\\\\s+([_a-zA-Z][_a-zA-Z0-9]*)\\\\b"},{"begin":"\\\\b(fn)\\\\s+@\\"","beginCaptures":{"1":{"name":"storage.type.function.zig"}},"end":"\\"","name":"entity.name.function.string.zig","patterns":[{"include":"#stringcontent"}]},{"match":"\\\\b(const|var|fn)\\\\b","name":"keyword.default.zig"}]},{"name":"meta.function.call.zig","patterns":[{"match":"([A-Z][a-zA-Z0-9]*)(?=\\\\s*\\\\()","name":"entity.name.type.zig"},{"match":"([_a-zA-Z][_a-zA-Z0-9]*)(?=\\\\s*\\\\()","name":"entity.name.function.zig"}]},{"name":"meta.variable.zig","patterns":[{"match":"\\\\b[_a-zA-Z][_a-zA-Z0-9]*\\\\b","name":"variable.zig"},{"begin":"@\\"","end":"\\"","name":"variable.string.zig","patterns":[{"include":"#stringcontent"}]}]}]}},"scopeName":"source.zig"}`)),Tse=[Mse]});var qP={};x(qP,{default:()=>qse});var qse,GP=_(()=>{qse=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#23262E","activityBar.dropBackground":"#3a404e","activityBar.foreground":"#BAAFC0","activityBarBadge.background":"#00b0ff","activityBarBadge.foreground":"#20232B","badge.background":"#00b0ff","badge.foreground":"#20232B","button.background":"#00e8c5cc","button.hoverBackground":"#07d4b6cc","debugExceptionWidget.background":"#FF9F2E60","debugExceptionWidget.border":"#FF9F2E60","debugToolBar.background":"#20232A","diffEditor.insertedTextBackground":"#29BF1220","diffEditor.removedTextBackground":"#F21B3F20","dropdown.background":"#2b303b","dropdown.border":"#363c49","editor.background":"#23262E","editor.findMatchBackground":"#f39d1256","editor.findMatchBorder":"#f39d12b6","editor.findMatchHighlightBackground":"#59b8b377","editor.foreground":"#D5CED9","editor.hoverHighlightBackground":"#373941","editor.lineHighlightBackground":"#2e323d","editor.lineHighlightBorder":"#2e323d","editor.rangeHighlightBackground":"#372F3C","editor.selectionBackground":"#3D4352","editor.selectionHighlightBackground":"#4F435580","editor.wordHighlightBackground":"#4F4355","editor.wordHighlightStrongBackground":"#db45a280","editorBracketMatch.background":"#746f77","editorBracketMatch.border":"#746f77","editorCodeLens.foreground":"#746f77","editorCursor.foreground":"#FFF","editorError.foreground":"#FC644D","editorGroup.background":"#23262E","editorGroup.dropBackground":"#495061d7","editorGroupHeader.tabsBackground":"#23262E","editorGutter.addedBackground":"#9BC53DBB","editorGutter.deletedBackground":"#FC644DBB","editorGutter.modifiedBackground":"#5BC0EBBB","editorHoverWidget.background":"#373941","editorHoverWidget.border":"#00e8c5cc","editorIndentGuide.activeBackground":"#585C66","editorIndentGuide.background":"#333844","editorLineNumber.foreground":"#746f77","editorLink.activeForeground":"#3B79C7","editorOverviewRuler.border":"#1B1D23","editorRuler.foreground":"#4F4355","editorSuggestWidget.background":"#20232A","editorSuggestWidget.border":"#372F3C","editorSuggestWidget.selectedBackground":"#373941","editorWarning.foreground":"#FF9F2E","editorWhitespace.foreground":"#333844","editorWidget.background":"#20232A","errorForeground":"#FC644D","extensionButton.prominentBackground":"#07d4b6cc","extensionButton.prominentHoverBackground":"#07d4b5b0","focusBorder":"#746f77","foreground":"#D5CED9","gitDecoration.ignoredResourceForeground":"#555555","input.background":"#2b303b","input.placeholderForeground":"#746f77","inputOption.activeBorder":"#C668BA","inputValidation.errorBackground":"#D65343","inputValidation.errorBorder":"#D65343","inputValidation.infoBackground":"#3A6395","inputValidation.infoBorder":"#3A6395","inputValidation.warningBackground":"#DE9237","inputValidation.warningBorder":"#DE9237","list.activeSelectionBackground":"#23262E","list.activeSelectionForeground":"#00e8c6","list.dropBackground":"#3a404e","list.focusBackground":"#282b35","list.focusForeground":"#eee","list.hoverBackground":"#23262E","list.hoverForeground":"#eee","list.inactiveSelectionBackground":"#23262E","list.inactiveSelectionForeground":"#00e8c6","merge.currentContentBackground":"#F9267240","merge.currentHeaderBackground":"#F92672","merge.incomingContentBackground":"#3B79C740","merge.incomingHeaderBackground":"#3B79C7BB","minimapSlider.activeBackground":"#60698060","minimapSlider.background":"#58607460","minimapSlider.hoverBackground":"#60698060","notification.background":"#2d313b","notification.buttonBackground":"#00e8c5cc","notification.buttonHoverBackground":"#07d4b5b0","notification.errorBackground":"#FC644D","notification.infoBackground":"#00b0ff","notification.warningBackground":"#FF9F2E","panel.background":"#23262E","panel.border":"#1B1D23","panelTitle.activeBorder":"#23262E","panelTitle.inactiveForeground":"#746f77","peekView.border":"#23262E","peekViewEditor.background":"#1A1C22","peekViewEditor.matchHighlightBackground":"#FF9F2E60","peekViewResult.background":"#1A1C22","peekViewResult.matchHighlightBackground":"#FF9F2E60","peekViewResult.selectionBackground":"#23262E","peekViewTitle.background":"#1A1C22","peekViewTitleDescription.foreground":"#746f77","pickerGroup.border":"#4F4355","pickerGroup.foreground":"#746f77","progressBar.background":"#C668BA","scrollbar.shadow":"#23262E","scrollbarSlider.activeBackground":"#3A3F4CCC","scrollbarSlider.background":"#3A3F4C77","scrollbarSlider.hoverBackground":"#3A3F4CAA","selection.background":"#746f77","sideBar.background":"#23262E","sideBar.foreground":"#999999","sideBarSectionHeader.background":"#23262E","sideBarTitle.foreground":"#00e8c6","statusBar.background":"#23262E","statusBar.debuggingBackground":"#FC644D","statusBar.noFolderBackground":"#23262E","statusBarItem.activeBackground":"#00e8c5cc","statusBarItem.hoverBackground":"#07d4b5b0","statusBarItem.prominentBackground":"#07d4b5b0","statusBarItem.prominentHoverBackground":"#00e8c5cc","tab.activeBackground":"#23262e","tab.activeBorder":"#00e8c6","tab.activeForeground":"#00e8c6","tab.inactiveBackground":"#23262E","tab.inactiveForeground":"#746f77","terminal.ansiBlue":"#7cb7ff","terminal.ansiBrightBlue":"#7cb7ff","terminal.ansiBrightCyan":"#00e8c6","terminal.ansiBrightGreen":"#96E072","terminal.ansiBrightMagenta":"#ff00aa","terminal.ansiBrightRed":"#ee5d43","terminal.ansiBrightYellow":"#FFE66D","terminal.ansiCyan":"#00e8c6","terminal.ansiGreen":"#96E072","terminal.ansiMagenta":"#ff00aa","terminal.ansiRed":"#ee5d43","terminal.ansiYellow":"#FFE66D","terminalCursor.background":"#23262E","terminalCursor.foreground":"#FFE66D","titleBar.activeBackground":"#23262E","walkThrough.embeddedEditorBackground":"#23262E","widget.shadow":"#14151A"},"displayName":"Andromeeda","name":"andromeeda","tokenColors":[{"settings":{"background":"#23262E","foreground":"#D5CED9"}},{"scope":["comment","markup.quote.markdown","meta.diff","meta.diff.header"],"settings":{"foreground":"#A0A1A7cc"}},{"scope":["meta.template.expression.js","constant.name.attribute.tag.jade","punctuation.definition.metadata.markdown","punctuation.definition.string.end.markdown","punctuation.definition.string.begin.markdown"],"settings":{"foreground":"#D5CED9"}},{"scope":["variable","support.variable","entity.name.tag.yaml","constant.character.entity.html","source.css entity.name.tag.reference","beginning.punctuation.definition.list.markdown","source.css entity.other.attribute-name.parent-selector","meta.structure.dictionary.json support.type.property-name"],"settings":{"foreground":"#00e8c6"}},{"scope":["markup.bold","constant.numeric","meta.group.regexp","constant.other.php","support.constant.ext.php","constant.other.class.php","support.constant.core.php","fenced_code.block.language","constant.other.caps.python","entity.other.attribute-name","support.type.exception.python","source.css keyword.other.unit","variable.other.object.property.js.jsx","variable.other.object.js"],"settings":{"foreground":"#f39c12"}},{"scope":["markup.list","text.xml string","entity.name.type","support.function","entity.other.attribute-name","meta.at-rule.extend","entity.name.function","entity.other.inherited-class","entity.other.keyframe-offset.css","text.html.markdown string.quoted","meta.function-call.generic.python","meta.at-rule.extend support.constant","entity.other.attribute-name.class.jade","source.css entity.other.attribute-name","text.xml punctuation.definition.string"],"settings":{"foreground":"#FFE66D"}},{"scope":["markup.heading","variable.language.this.js","variable.language.special.self.python"],"settings":{"foreground":"#ff00aa"}},{"scope":["punctuation.definition.interpolation","punctuation.section.embedded.end.php","punctuation.section.embedded.end.ruby","punctuation.section.embedded.begin.php","punctuation.section.embedded.begin.ruby","punctuation.definition.template-expression","entity.name.tag"],"settings":{"foreground":"#f92672"}},{"scope":["storage","keyword","meta.link","meta.image","markup.italic","source.js support.type"],"settings":{"foreground":"#c74ded"}},{"scope":["string.regexp","markup.changed"],"settings":{"foreground":"#7cb7ff"}},{"scope":["constant","support.class","keyword.operator","support.constant","text.html.markdown string","source.css support.function","source.php support.function","support.function.magic.python","entity.other.attribute-name.id","markup.deleted"],"settings":{"foreground":"#ee5d43"}},{"scope":["string","text.html.php string","markup.inline.raw","markup.inserted","punctuation.definition.string","punctuation.definition.markdown","text.html meta.embedded source.js string","text.html.php punctuation.definition.string","text.html meta.embedded source.js punctuation.definition.string","text.html punctuation.definition.string","text.html string"],"settings":{"foreground":"#96E072"}},{"scope":["entity.other.inherited-class"],"settings":{"fontStyle":"underline"}}],"type":"dark"}'))});var zP={};x(zP,{default:()=>Gse});var Gse,UP=_(()=>{Gse=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#07090F","activityBar.foreground":"#86A5FF","activityBar.inactiveForeground":"#576dafc5","activityBarBadge.background":"#86A5FF","activityBarBadge.foreground":"#07090F","badge.background":"#86A5FF","badge.foreground":"#07090F","breadcrumb.activeSelectionForeground":"#86A5FF","breadcrumb.focusForeground":"#576daf","breadcrumb.foreground":"#576dafa6","breadcrumbPicker.background":"#07090F","button.background":"#86A5FF","button.foreground":"#07090F","button.hoverBackground":"#A8BEFF","descriptionForeground":"#576daf79","diffEditor.diagonalFill":"#15182B","diffEditor.insertedTextBackground":"#64d3892c","diffEditor.removedTextBackground":"#dd50742c","dropdown.background":"#15182B","dropdown.foreground":"#c7d5ff99","editor.background":"#07090F","editor.findMatchBackground":"#576daf","editor.findMatchHighlightBackground":"#262E47","editor.inactiveSelectionBackground":"#262e47be","editor.selectionBackground":"#262E47","editor.selectionHighlightBackground":"#262E47","editor.wordHighlightBackground":"#262E47","editor.wordHighlightStrongBackground":"#262E47","editorCodeLens.foreground":"#262E47","editorCursor.background":"#01030b","editorCursor.foreground":"#86A5FF","editorGroup.background":"#07090F","editorGroup.border":"#15182B","editorGroup.dropBackground":"#0C0E19","editorGroup.emptyBackground":"#07090F","editorGroupHeader.tabsBackground":"#07090F","editorLineNumber.activeForeground":"#576dafd8","editorLineNumber.foreground":"#262e47bb","editorWidget.background":"#15182B","editorWidget.border":"#576daf","extensionButton.prominentBackground":"#C7D5FF","extensionButton.prominentForeground":"#07090F","focusBorder":"#262E47","foreground":"#576daf","gitDecoration.addedResourceForeground":"#64d389fd","gitDecoration.deletedResourceForeground":"#dd5074","gitDecoration.ignoredResourceForeground":"#576daf90","gitDecoration.modifiedResourceForeground":"#c778db","gitDecoration.untrackedResourceForeground":"#576daf90","icon.foreground":"#576daf","input.background":"#15182B","input.foreground":"#86A5FF","inputOption.activeForeground":"#86A5FF","inputValidation.errorBackground":"#dd5073","inputValidation.errorBorder":"#dd5073","inputValidation.errorForeground":"#07090F","list.activeSelectionBackground":"#000000","list.activeSelectionForeground":"#86A5FF","list.dropBackground":"#000000","list.errorForeground":"#dd5074","list.focusBackground":"#01030b","list.focusForeground":"#86A5FF","list.highlightForeground":"#A8BEFF","list.hoverBackground":"#000000","list.hoverForeground":"#A8BEFF","list.inactiveFocusBackground":"#01030b","list.inactiveSelectionBackground":"#000000","list.inactiveSelectionForeground":"#86A5FF","list.warningForeground":"#e6db7f","notificationCenterHeader.background":"#15182B","notifications.background":"#15182B","panel.border":"#15182B","panelTitle.activeBorder":"#86A5FF","panelTitle.activeForeground":"#C7D5FF","panelTitle.inactiveForeground":"#576daf","peekViewTitle.background":"#262E47","quickInput.background":"#0C0E19","scrollbar.shadow":"#01030b","scrollbarSlider.activeBackground":"#576daf","scrollbarSlider.background":"#262E47","scrollbarSlider.hoverBackground":"#576daf","selection.background":"#01030b","sideBar.background":"#07090F","sideBar.border":"#15182B","sideBarSectionHeader.background":"#07090F","sideBarSectionHeader.foreground":"#86A5FF","statusBar.background":"#86A5FF","statusBar.debuggingBackground":"#c778db","statusBar.foreground":"#07090F","tab.activeBackground":"#07090F","tab.activeBorder":"#86A5FF","tab.activeForeground":"#C7D5FF","tab.border":"#07090F","tab.inactiveBackground":"#07090F","tab.inactiveForeground":"#576dafd8","terminal.ansiBrightRed":"#dd5073","terminal.ansiGreen":"#63eb90","terminal.ansiRed":"#dd5073","terminal.foreground":"#A8BEFF","textLink.foreground":"#86A5FF","titleBar.activeBackground":"#07090F","titleBar.activeForeground":"#86A5FF","titleBar.inactiveBackground":"#07090F","tree.indentGuidesStroke":"#576daf","widget.shadow":"#01030b"},"displayName":"Aurora X","name":"aurora-x","tokenColors":[{"scope":["comment","punctuation.definition.comment"],"settings":{"fontStyle":"italic","foreground":"#546E7A"}},{"scope":["variable","string constant.other.placeholder"],"settings":{"foreground":"#EEFFFF"}},{"scope":["constant.other.color"],"settings":{"foreground":"#ffffff"}},{"scope":["invalid","invalid.illegal"],"settings":{"foreground":"#FF5370"}},{"scope":["keyword","storage.type","storage.modifier"],"settings":{"foreground":"#C792EA"}},{"scope":["keyword.control","constant.other.color","punctuation","meta.tag","punctuation.definition.tag","punctuation.separator.inheritance.php","punctuation.definition.tag.html","punctuation.definition.tag.begin.html","punctuation.definition.tag.end.html","punctuation.section.embedded","keyword.other.template","keyword.other.substitution"],"settings":{"foreground":"#89DDFF"}},{"scope":["entity.name.tag","meta.tag.sgml","markup.deleted.git_gutter"],"settings":{"foreground":"#f07178"}},{"scope":["entity.name.function","meta.function-call","variable.function","support.function","keyword.other.special-method"],"settings":{"foreground":"#82AAFF"}},{"scope":["meta.block variable.other"],"settings":{"foreground":"#f07178"}},{"scope":["support.other.variable","string.other.link"],"settings":{"foreground":"#f07178"}},{"scope":["constant.numeric","constant.language","support.constant","constant.character","constant.escape","variable.parameter","keyword.other.unit","keyword.other"],"settings":{"foreground":"#F78C6C"}},{"scope":["string","constant.other.symbol","constant.other.key","entity.other.inherited-class","markup.heading","markup.inserted.git_gutter","meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js"],"settings":{"foreground":"#C3E88D"}},{"scope":["entity.name","support.type","support.class","support.orther.namespace.use.php","meta.use.php","support.other.namespace.php","markup.changed.git_gutter","support.type.sys-types"],"settings":{"foreground":"#FFCB6B"}},{"scope":["support.type"],"settings":{"foreground":"#B2CCD6"}},{"scope":["source.css support.type.property-name","source.sass support.type.property-name","source.scss support.type.property-name","source.less support.type.property-name","source.stylus support.type.property-name","source.postcss support.type.property-name"],"settings":{"foreground":"#B2CCD6"}},{"scope":["entity.name.module.js","variable.import.parameter.js","variable.other.class.js"],"settings":{"foreground":"#FF5370"}},{"scope":["variable.language"],"settings":{"fontStyle":"italic","foreground":"#FF5370"}},{"scope":["entity.name.method.js"],"settings":{"fontStyle":"italic","foreground":"#82AAFF"}},{"scope":["meta.class-method.js entity.name.function.js","variable.function.constructor"],"settings":{"foreground":"#82AAFF"}},{"scope":["entity.other.attribute-name"],"settings":{"foreground":"#C792EA"}},{"scope":["text.html.basic entity.other.attribute-name.html","text.html.basic entity.other.attribute-name"],"settings":{"fontStyle":"italic","foreground":"#FFCB6B"}},{"scope":["entity.other.attribute-name.class"],"settings":{"foreground":"#FFCB6B"}},{"scope":["source.sass keyword.control"],"settings":{"foreground":"#82AAFF"}},{"scope":["markup.inserted"],"settings":{"foreground":"#C3E88D"}},{"scope":["markup.deleted"],"settings":{"foreground":"#FF5370"}},{"scope":["markup.changed"],"settings":{"foreground":"#C792EA"}},{"scope":["string.regexp"],"settings":{"foreground":"#89DDFF"}},{"scope":["constant.character.escape"],"settings":{"foreground":"#89DDFF"}},{"scope":["*url*","*link*","*uri*"],"settings":{"fontStyle":"underline"}},{"scope":["tag.decorator.js entity.name.tag.js","tag.decorator.js punctuation.definition.tag.js"],"settings":{"fontStyle":"italic","foreground":"#82AAFF"}},{"scope":["source.js constant.other.object.key.js string.unquoted.label.js"],"settings":{"fontStyle":"italic","foreground":"#FF5370"}},{"scope":["source.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFCB6B"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#F78C6C"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FF5370"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C17E70"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#82AAFF"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#f07178"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C3E88D"}},{"scope":["text.html.markdown","punctuation.definition.list_item.markdown"],"settings":{"foreground":"#EEFFFF"}},{"scope":["text.html.markdown markup.inline.raw.markdown"],"settings":{"foreground":"#C792EA"}},{"scope":["text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown"],"settings":{"foreground":"#65737E"}},{"scope":["markdown.heading","markup.heading | markup.heading entity.name","markup.heading.markdown punctuation.definition.heading.markdown"],"settings":{"foreground":"#C3E88D"}},{"scope":["markup.italic"],"settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":["markup.bold","markup.bold string"],"settings":{"fontStyle":"bold","foreground":"#f07178"}},{"scope":["markup.bold markup.italic","markup.italic markup.bold","markup.quote markup.bold","markup.bold markup.italic string","markup.italic markup.bold string","markup.quote markup.bold string"],"settings":{"fontStyle":"bold","foreground":"#f07178"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline","foreground":"#F78C6C"}},{"scope":["markup.quote punctuation.definition.blockquote.markdown"],"settings":{"foreground":"#65737E"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic"}},{"scope":["string.other.link.title.markdown"],"settings":{"foreground":"#82AAFF"}},{"scope":["string.other.link.description.title.markdown"],"settings":{"foreground":"#C792EA"}},{"scope":["constant.other.reference.link.markdown"],"settings":{"foreground":"#FFCB6B"}},{"scope":["markup.raw.block"],"settings":{"foreground":"#C792EA"}},{"scope":["markup.raw.block.fenced.markdown"],"settings":{"foreground":"#00000050"}},{"scope":["punctuation.definition.fenced.markdown"],"settings":{"foreground":"#00000050"}},{"scope":["markup.raw.block.fenced.markdown","variable.language.fenced.markdown","punctuation.section.class.end"],"settings":{"foreground":"#EEFFFF"}},{"scope":["variable.language.fenced.markdown"],"settings":{"foreground":"#65737E"}},{"scope":["meta.separator"],"settings":{"fontStyle":"bold","foreground":"#65737E"}},{"scope":["markup.table"],"settings":{"foreground":"#EEFFFF"}}],"type":"dark"}'))});var HP={};x(HP,{default:()=>zse});var zse,ZP=_(()=>{zse=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#e6b450b3","activityBar.background":"#0b0e14","activityBar.border":"#0b0e14","activityBar.foreground":"#565b66cc","activityBar.inactiveForeground":"#565b6699","activityBarBadge.background":"#e6b450","activityBarBadge.foreground":"#0b0e14","badge.background":"#e6b45033","badge.foreground":"#e6b450","button.background":"#e6b450","button.foreground":"#0b0e14","button.hoverBackground":"#e1af4b","button.secondaryBackground":"#565b6633","button.secondaryForeground":"#bfbdb6","button.secondaryHoverBackground":"#565b6680","debugConsoleInputIcon.foreground":"#e6b450","debugExceptionWidget.background":"#0f131a","debugExceptionWidget.border":"#11151c","debugIcon.breakpointDisabledForeground":"#f2966880","debugIcon.breakpointForeground":"#f29668","debugToolBar.background":"#0f131a","descriptionForeground":"#565b66","diffEditor.diagonalFill":"#11151c","diffEditor.insertedTextBackground":"#7fd9621f","diffEditor.removedTextBackground":"#f26d781f","dropdown.background":"#0d1017","dropdown.border":"#565b6645","dropdown.foreground":"#565b66","editor.background":"#0b0e14","editor.findMatchBackground":"#6c5980","editor.findMatchBorder":"#6c5980","editor.findMatchHighlightBackground":"#6c598066","editor.findMatchHighlightBorder":"#5f4c7266","editor.findRangeHighlightBackground":"#6c598040","editor.foreground":"#bfbdb6","editor.inactiveSelectionBackground":"#409fff21","editor.lineHighlightBackground":"#131721","editor.rangeHighlightBackground":"#6c598033","editor.selectionBackground":"#409fff4d","editor.selectionHighlightBackground":"#7fd96226","editor.selectionHighlightBorder":"#7fd96200","editor.snippetTabstopHighlightBackground":"#7fd96233","editor.wordHighlightBackground":"#73b8ff14","editor.wordHighlightBorder":"#73b8ff80","editor.wordHighlightStrongBackground":"#7fd96214","editor.wordHighlightStrongBorder":"#7fd96280","editorBracketMatch.background":"#6c73804d","editorBracketMatch.border":"#6c73804d","editorCodeLens.foreground":"#acb6bf8c","editorCursor.foreground":"#e6b450","editorError.foreground":"#d95757","editorGroup.background":"#0f131a","editorGroup.border":"#11151c","editorGroupHeader.noTabsBackground":"#0b0e14","editorGroupHeader.tabsBackground":"#0b0e14","editorGroupHeader.tabsBorder":"#0b0e14","editorGutter.addedBackground":"#7fd962cc","editorGutter.deletedBackground":"#f26d78cc","editorGutter.modifiedBackground":"#73b8ffcc","editorHoverWidget.background":"#0f131a","editorHoverWidget.border":"#11151c","editorIndentGuide.activeBackground":"#6c738080","editorIndentGuide.background":"#6c738033","editorLineNumber.activeForeground":"#6c7380e6","editorLineNumber.foreground":"#6c738099","editorLink.activeForeground":"#e6b450","editorMarkerNavigation.background":"#0f131a","editorOverviewRuler.addedForeground":"#7fd962","editorOverviewRuler.border":"#11151c","editorOverviewRuler.bracketMatchForeground":"#6c7380b3","editorOverviewRuler.deletedForeground":"#f26d78","editorOverviewRuler.errorForeground":"#d95757","editorOverviewRuler.findMatchForeground":"#6c5980","editorOverviewRuler.modifiedForeground":"#73b8ff","editorOverviewRuler.warningForeground":"#e6b450","editorOverviewRuler.wordHighlightForeground":"#73b8ff66","editorOverviewRuler.wordHighlightStrongForeground":"#7fd96266","editorRuler.foreground":"#6c738033","editorSuggestWidget.background":"#0f131a","editorSuggestWidget.border":"#11151c","editorSuggestWidget.highlightForeground":"#e6b450","editorSuggestWidget.selectedBackground":"#47526640","editorWarning.foreground":"#e6b450","editorWhitespace.foreground":"#6c738099","editorWidget.background":"#0f131a","editorWidget.border":"#11151c","errorForeground":"#d95757","extensionButton.prominentBackground":"#e6b450","extensionButton.prominentForeground":"#0d1017","extensionButton.prominentHoverBackground":"#e1af4b","focusBorder":"#e6b450b3","foreground":"#565b66","gitDecoration.conflictingResourceForeground":"","gitDecoration.deletedResourceForeground":"#f26d78b3","gitDecoration.ignoredResourceForeground":"#565b6680","gitDecoration.modifiedResourceForeground":"#73b8ffb3","gitDecoration.submoduleResourceForeground":"#d2a6ffb3","gitDecoration.untrackedResourceForeground":"#7fd962b3","icon.foreground":"#565b66","input.background":"#0d1017","input.border":"#565b6645","input.foreground":"#bfbdb6","input.placeholderForeground":"#565b6680","inputOption.activeBackground":"#e6b45033","inputOption.activeBorder":"#e6b4504d","inputOption.activeForeground":"#e6b450","inputValidation.errorBackground":"#0d1017","inputValidation.errorBorder":"#d95757","inputValidation.infoBackground":"#0b0e14","inputValidation.infoBorder":"#39bae6","inputValidation.warningBackground":"#0b0e14","inputValidation.warningBorder":"#ffb454","keybindingLabel.background":"#565b661a","keybindingLabel.border":"#bfbdb61a","keybindingLabel.bottomBorder":"#bfbdb61a","keybindingLabel.foreground":"#bfbdb6","list.activeSelectionBackground":"#47526640","list.activeSelectionForeground":"#bfbdb6","list.deemphasizedForeground":"#d95757","list.errorForeground":"#d95757","list.filterMatchBackground":"#5f4c7266","list.filterMatchBorder":"#6c598066","list.focusBackground":"#47526640","list.focusForeground":"#bfbdb6","list.focusOutline":"#47526640","list.highlightForeground":"#e6b450","list.hoverBackground":"#47526640","list.inactiveSelectionBackground":"#47526633","list.inactiveSelectionForeground":"#565b66","list.invalidItemForeground":"#565b664d","listFilterWidget.background":"#0f131a","listFilterWidget.noMatchesOutline":"#d95757","listFilterWidget.outline":"#e6b450","minimap.background":"#0b0e14","minimap.errorHighlight":"#d95757","minimap.findMatchHighlight":"#6c5980","minimap.selectionHighlight":"#409fff4d","minimapGutter.addedBackground":"#7fd962","minimapGutter.deletedBackground":"#f26d78","minimapGutter.modifiedBackground":"#73b8ff","panel.background":"#0b0e14","panel.border":"#11151c","panelTitle.activeBorder":"#e6b450","panelTitle.activeForeground":"#bfbdb6","panelTitle.inactiveForeground":"#565b66","peekView.border":"#47526640","peekViewEditor.background":"#0f131a","peekViewEditor.matchHighlightBackground":"#6c598066","peekViewEditor.matchHighlightBorder":"#5f4c7266","peekViewResult.background":"#0f131a","peekViewResult.fileForeground":"#bfbdb6","peekViewResult.lineForeground":"#565b66","peekViewResult.matchHighlightBackground":"#6c598066","peekViewResult.selectionBackground":"#47526640","peekViewTitle.background":"#47526640","peekViewTitleDescription.foreground":"#565b66","peekViewTitleLabel.foreground":"#bfbdb6","pickerGroup.border":"#11151c","pickerGroup.foreground":"#565b6680","progressBar.background":"#e6b450","scrollbar.shadow":"#11151c00","scrollbarSlider.activeBackground":"#565b66b3","scrollbarSlider.background":"#565b6666","scrollbarSlider.hoverBackground":"#565b6699","selection.background":"#409fff4d","settings.headerForeground":"#bfbdb6","settings.modifiedItemIndicator":"#73b8ff","sideBar.background":"#0b0e14","sideBar.border":"#0b0e14","sideBarSectionHeader.background":"#0b0e14","sideBarSectionHeader.border":"#0b0e14","sideBarSectionHeader.foreground":"#565b66","sideBarTitle.foreground":"#565b66","statusBar.background":"#0b0e14","statusBar.border":"#0b0e14","statusBar.debuggingBackground":"#f29668","statusBar.debuggingForeground":"#0d1017","statusBar.foreground":"#565b66","statusBar.noFolderBackground":"#0f131a","statusBarItem.activeBackground":"#565b6633","statusBarItem.hoverBackground":"#565b6633","statusBarItem.prominentBackground":"#11151c","statusBarItem.prominentHoverBackground":"#00000030","statusBarItem.remoteBackground":"#e6b450","statusBarItem.remoteForeground":"#0d1017","tab.activeBackground":"#0b0e14","tab.activeBorder":"#e6b450","tab.activeForeground":"#bfbdb6","tab.border":"#0b0e14","tab.inactiveBackground":"#0b0e14","tab.inactiveForeground":"#565b66","tab.unfocusedActiveBorder":"#565b66","tab.unfocusedActiveForeground":"#565b66","tab.unfocusedInactiveForeground":"#565b66","terminal.ansiBlack":"#11151c","terminal.ansiBlue":"#53bdfa","terminal.ansiBrightBlack":"#686868","terminal.ansiBrightBlue":"#59c2ff","terminal.ansiBrightCyan":"#95e6cb","terminal.ansiBrightGreen":"#aad94c","terminal.ansiBrightMagenta":"#d2a6ff","terminal.ansiBrightRed":"#f07178","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#ffb454","terminal.ansiCyan":"#90e1c6","terminal.ansiGreen":"#7fd962","terminal.ansiMagenta":"#cda1fa","terminal.ansiRed":"#ea6c73","terminal.ansiWhite":"#c7c7c7","terminal.ansiYellow":"#f9af4f","terminal.background":"#0b0e14","terminal.foreground":"#bfbdb6","textBlockQuote.background":"#0f131a","textLink.activeForeground":"#e6b450","textLink.foreground":"#e6b450","textPreformat.foreground":"#bfbdb6","titleBar.activeBackground":"#0b0e14","titleBar.activeForeground":"#bfbdb6","titleBar.border":"#0b0e14","titleBar.inactiveBackground":"#0b0e14","titleBar.inactiveForeground":"#565b66","tree.indentGuidesStroke":"#6c738080","walkThrough.embeddedEditorBackground":"#0f131a","welcomePage.buttonBackground":"#e6b45066","welcomePage.progress.background":"#131721","welcomePage.tileBackground":"#0b0e14","welcomePage.tileShadow":"#00000080","widget.shadow":"#00000080"},"displayName":"Ayu Dark","name":"ayu-dark","semanticHighlighting":true,"semanticTokenColors":{"parameter.label":"#bfbdb6"},"tokenColors":[{"settings":{"background":"#0b0e14","foreground":"#bfbdb6"}},{"scope":["comment"],"settings":{"fontStyle":"italic","foreground":"#acb6bf8c"}},{"scope":["string","constant.other.symbol"],"settings":{"foreground":"#aad94c"}},{"scope":["string.regexp","constant.character","constant.other"],"settings":{"foreground":"#95e6cb"}},{"scope":["constant.numeric"],"settings":{"foreground":"#d2a6ff"}},{"scope":["constant.language"],"settings":{"foreground":"#d2a6ff"}},{"scope":["variable","variable.parameter.function-call"],"settings":{"foreground":"#bfbdb6"}},{"scope":["variable.member"],"settings":{"foreground":"#f07178"}},{"scope":["variable.language"],"settings":{"fontStyle":"italic","foreground":"#39bae6"}},{"scope":["storage"],"settings":{"foreground":"#ff8f40"}},{"scope":["keyword"],"settings":{"foreground":"#ff8f40"}},{"scope":["keyword.operator"],"settings":{"foreground":"#f29668"}},{"scope":["punctuation.separator","punctuation.terminator"],"settings":{"foreground":"#bfbdb6b3"}},{"scope":["punctuation.section"],"settings":{"foreground":"#bfbdb6"}},{"scope":["punctuation.accessor"],"settings":{"foreground":"#f29668"}},{"scope":["punctuation.definition.template-expression"],"settings":{"foreground":"#ff8f40"}},{"scope":["punctuation.section.embedded"],"settings":{"foreground":"#ff8f40"}},{"scope":["meta.embedded"],"settings":{"foreground":"#bfbdb6"}},{"scope":["source.java storage.type","source.haskell storage.type","source.c storage.type"],"settings":{"foreground":"#59c2ff"}},{"scope":["entity.other.inherited-class"],"settings":{"foreground":"#39bae6"}},{"scope":["storage.type.function"],"settings":{"foreground":"#ff8f40"}},{"scope":["source.java storage.type.primitive"],"settings":{"foreground":"#39bae6"}},{"scope":["entity.name.function"],"settings":{"foreground":"#ffb454"}},{"scope":["variable.parameter","meta.parameter"],"settings":{"foreground":"#d2a6ff"}},{"scope":["variable.function","variable.annotation","meta.function-call.generic","support.function.go"],"settings":{"foreground":"#ffb454"}},{"scope":["support.function","support.macro"],"settings":{"foreground":"#f07178"}},{"scope":["entity.name.import","entity.name.package"],"settings":{"foreground":"#aad94c"}},{"scope":["entity.name"],"settings":{"foreground":"#59c2ff"}},{"scope":["entity.name.tag","meta.tag.sgml"],"settings":{"foreground":"#39bae6"}},{"scope":["support.class.component"],"settings":{"foreground":"#59c2ff"}},{"scope":["punctuation.definition.tag.end","punctuation.definition.tag.begin","punctuation.definition.tag"],"settings":{"foreground":"#39bae680"}},{"scope":["entity.other.attribute-name"],"settings":{"foreground":"#ffb454"}},{"scope":["support.constant"],"settings":{"fontStyle":"italic","foreground":"#f29668"}},{"scope":["support.type","support.class","source.go storage.type"],"settings":{"foreground":"#39bae6"}},{"scope":["meta.decorator variable.other","meta.decorator punctuation.decorator","storage.type.annotation"],"settings":{"foreground":"#e6b673"}},{"scope":["invalid"],"settings":{"foreground":"#d95757"}},{"scope":["meta.diff","meta.diff.header"],"settings":{"foreground":"#c594c5"}},{"scope":["source.ruby variable.other.readwrite"],"settings":{"foreground":"#ffb454"}},{"scope":["source.css entity.name.tag","source.sass entity.name.tag","source.scss entity.name.tag","source.less entity.name.tag","source.stylus entity.name.tag"],"settings":{"foreground":"#59c2ff"}},{"scope":["source.css support.type","source.sass support.type","source.scss support.type","source.less support.type","source.stylus support.type"],"settings":{"foreground":"#acb6bf8c"}},{"scope":["support.type.property-name"],"settings":{"fontStyle":"normal","foreground":"#39bae6"}},{"scope":["constant.numeric.line-number.find-in-files - match"],"settings":{"foreground":"#acb6bf8c"}},{"scope":["constant.numeric.line-number.match"],"settings":{"foreground":"#ff8f40"}},{"scope":["entity.name.filename.find-in-files"],"settings":{"foreground":"#aad94c"}},{"scope":["message.error"],"settings":{"foreground":"#d95757"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#aad94c"}},{"scope":["markup.underline.link","string.other.link"],"settings":{"foreground":"#39bae6"}},{"scope":["markup.italic"],"settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":["markup.bold"],"settings":{"fontStyle":"bold","foreground":"#f07178"}},{"scope":["markup.italic markup.bold","markup.bold markup.italic"],"settings":{"fontStyle":"bold italic"}},{"scope":["markup.raw"],"settings":{"background":"#bfbdb605"}},{"scope":["markup.raw.inline"],"settings":{"background":"#bfbdb60f"}},{"scope":["meta.separator"],"settings":{"background":"#bfbdb60f","fontStyle":"bold","foreground":"#acb6bf8c"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic","foreground":"#95e6cb"}},{"scope":["markup.list punctuation.definition.list.begin"],"settings":{"foreground":"#ffb454"}},{"scope":["markup.inserted"],"settings":{"foreground":"#7fd962"}},{"scope":["markup.changed"],"settings":{"foreground":"#73b8ff"}},{"scope":["markup.deleted"],"settings":{"foreground":"#f26d78"}},{"scope":["markup.strike"],"settings":{"foreground":"#e6b673"}},{"scope":["markup.table"],"settings":{"background":"#bfbdb60f","foreground":"#39bae6"}},{"scope":["text.html.markdown markup.inline.raw"],"settings":{"foreground":"#f29668"}},{"scope":["text.html.markdown meta.dummy.line-break"],"settings":{"background":"#acb6bf8c","foreground":"#acb6bf8c"}},{"scope":["punctuation.definition.markdown"],"settings":{"background":"#bfbdb6","foreground":"#acb6bf8c"}}],"type":"dark"}'))});var YP={};x(YP,{default:()=>Use});var Use,WP=_(()=>{Use=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBackground":"#00000000","activityBar.activeBorder":"#00000000","activityBar.activeFocusBorder":"#00000000","activityBar.background":"#232634","activityBar.border":"#00000000","activityBar.dropBorder":"#ca9ee633","activityBar.foreground":"#ca9ee6","activityBar.inactiveForeground":"#737994","activityBarBadge.background":"#ca9ee6","activityBarBadge.foreground":"#232634","activityBarTop.activeBorder":"#00000000","activityBarTop.dropBorder":"#ca9ee633","activityBarTop.foreground":"#ca9ee6","activityBarTop.inactiveForeground":"#737994","badge.background":"#51576d","badge.foreground":"#c6d0f5","banner.background":"#51576d","banner.foreground":"#c6d0f5","banner.iconForeground":"#c6d0f5","breadcrumb.activeSelectionForeground":"#ca9ee6","breadcrumb.background":"#303446","breadcrumb.focusForeground":"#ca9ee6","breadcrumb.foreground":"#c6d0f5cc","breadcrumbPicker.background":"#292c3c","button.background":"#ca9ee6","button.border":"#00000000","button.foreground":"#232634","button.hoverBackground":"#d9baed","button.secondaryBackground":"#626880","button.secondaryBorder":"#ca9ee6","button.secondaryForeground":"#c6d0f5","button.secondaryHoverBackground":"#727993","button.separator":"#00000000","charts.blue":"#8caaee","charts.foreground":"#c6d0f5","charts.green":"#a6d189","charts.lines":"#b5bfe2","charts.orange":"#ef9f76","charts.purple":"#ca9ee6","charts.red":"#e78284","charts.yellow":"#e5c890","checkbox.background":"#51576d","checkbox.border":"#00000000","checkbox.foreground":"#ca9ee6","commandCenter.activeBackground":"#62688033","commandCenter.activeBorder":"#ca9ee6","commandCenter.activeForeground":"#ca9ee6","commandCenter.background":"#292c3c","commandCenter.border":"#00000000","commandCenter.foreground":"#b5bfe2","commandCenter.inactiveBorder":"#00000000","commandCenter.inactiveForeground":"#b5bfe2","debugConsole.errorForeground":"#e78284","debugConsole.infoForeground":"#8caaee","debugConsole.sourceForeground":"#f2d5cf","debugConsole.warningForeground":"#ef9f76","debugConsoleInputIcon.foreground":"#c6d0f5","debugExceptionWidget.background":"#232634","debugExceptionWidget.border":"#ca9ee6","debugIcon.breakpointCurrentStackframeForeground":"#626880","debugIcon.breakpointDisabledForeground":"#e7828499","debugIcon.breakpointForeground":"#e78284","debugIcon.breakpointStackframeForeground":"#626880","debugIcon.breakpointUnverifiedForeground":"#a57582","debugIcon.continueForeground":"#a6d189","debugIcon.disconnectForeground":"#626880","debugIcon.pauseForeground":"#8caaee","debugIcon.restartForeground":"#81c8be","debugIcon.startForeground":"#a6d189","debugIcon.stepBackForeground":"#626880","debugIcon.stepIntoForeground":"#c6d0f5","debugIcon.stepOutForeground":"#c6d0f5","debugIcon.stepOverForeground":"#ca9ee6","debugIcon.stopForeground":"#e78284","debugTokenExpression.boolean":"#ca9ee6","debugTokenExpression.error":"#e78284","debugTokenExpression.number":"#ef9f76","debugTokenExpression.string":"#a6d189","debugToolBar.background":"#232634","debugToolBar.border":"#00000000","descriptionForeground":"#c6d0f5","diffEditor.border":"#626880","diffEditor.diagonalFill":"#62688099","diffEditor.insertedLineBackground":"#a6d18926","diffEditor.insertedTextBackground":"#a6d1891a","diffEditor.removedLineBackground":"#e7828426","diffEditor.removedTextBackground":"#e782841a","diffEditorOverview.insertedForeground":"#a6d189cc","diffEditorOverview.removedForeground":"#e78284cc","disabledForeground":"#a5adce","dropdown.background":"#292c3c","dropdown.border":"#ca9ee6","dropdown.foreground":"#c6d0f5","dropdown.listBackground":"#626880","editor.background":"#303446","editor.findMatchBackground":"#674b59","editor.findMatchBorder":"#e7828433","editor.findMatchHighlightBackground":"#506373","editor.findMatchHighlightBorder":"#99d1db33","editor.findRangeHighlightBackground":"#506373","editor.findRangeHighlightBorder":"#99d1db33","editor.focusedStackFrameHighlightBackground":"#a6d18926","editor.foldBackground":"#99d1db40","editor.foreground":"#c6d0f5","editor.hoverHighlightBackground":"#99d1db40","editor.lineHighlightBackground":"#c6d0f512","editor.lineHighlightBorder":"#00000000","editor.rangeHighlightBackground":"#99d1db40","editor.rangeHighlightBorder":"#00000000","editor.selectionBackground":"#949cbb40","editor.selectionHighlightBackground":"#949cbb33","editor.selectionHighlightBorder":"#949cbb33","editor.stackFrameHighlightBackground":"#e5c89026","editor.wordHighlightBackground":"#949cbb33","editor.wordHighlightStrongBackground":"#8caaee33","editorBracketHighlight.foreground1":"#e78284","editorBracketHighlight.foreground2":"#ef9f76","editorBracketHighlight.foreground3":"#e5c890","editorBracketHighlight.foreground4":"#a6d189","editorBracketHighlight.foreground5":"#85c1dc","editorBracketHighlight.foreground6":"#ca9ee6","editorBracketHighlight.unexpectedBracket.foreground":"#ea999c","editorBracketMatch.background":"#949cbb1a","editorBracketMatch.border":"#949cbb","editorCodeLens.foreground":"#838ba7","editorCursor.background":"#303446","editorCursor.foreground":"#f2d5cf","editorError.background":"#00000000","editorError.border":"#00000000","editorError.foreground":"#e78284","editorGroup.border":"#626880","editorGroup.dropBackground":"#ca9ee633","editorGroup.emptyBackground":"#303446","editorGroupHeader.tabsBackground":"#232634","editorGutter.addedBackground":"#a6d189","editorGutter.background":"#303446","editorGutter.commentGlyphForeground":"#ca9ee6","editorGutter.commentRangeForeground":"#414559","editorGutter.deletedBackground":"#e78284","editorGutter.foldingControlForeground":"#949cbb","editorGutter.modifiedBackground":"#e5c890","editorHoverWidget.background":"#292c3c","editorHoverWidget.border":"#626880","editorHoverWidget.foreground":"#c6d0f5","editorIndentGuide.activeBackground":"#626880","editorIndentGuide.background":"#51576d","editorInfo.background":"#00000000","editorInfo.border":"#00000000","editorInfo.foreground":"#8caaee","editorInlayHint.background":"#292c3cbf","editorInlayHint.foreground":"#626880","editorInlayHint.parameterBackground":"#292c3cbf","editorInlayHint.parameterForeground":"#a5adce","editorInlayHint.typeBackground":"#292c3cbf","editorInlayHint.typeForeground":"#b5bfe2","editorLightBulb.foreground":"#e5c890","editorLineNumber.activeForeground":"#ca9ee6","editorLineNumber.foreground":"#838ba7","editorLink.activeForeground":"#ca9ee6","editorMarkerNavigation.background":"#292c3c","editorMarkerNavigationError.background":"#e78284","editorMarkerNavigationInfo.background":"#8caaee","editorMarkerNavigationWarning.background":"#ef9f76","editorOverviewRuler.background":"#292c3c","editorOverviewRuler.border":"#c6d0f512","editorOverviewRuler.modifiedForeground":"#e5c890","editorRuler.foreground":"#626880","editorStickyScrollHover.background":"#414559","editorSuggestWidget.background":"#292c3c","editorSuggestWidget.border":"#626880","editorSuggestWidget.foreground":"#c6d0f5","editorSuggestWidget.highlightForeground":"#ca9ee6","editorSuggestWidget.selectedBackground":"#414559","editorWarning.background":"#00000000","editorWarning.border":"#00000000","editorWarning.foreground":"#ef9f76","editorWhitespace.foreground":"#949cbb66","editorWidget.background":"#292c3c","editorWidget.foreground":"#c6d0f5","editorWidget.resizeBorder":"#626880","errorForeground":"#e78284","errorLens.errorBackground":"#e7828426","errorLens.errorBackgroundLight":"#e7828426","errorLens.errorForeground":"#e78284","errorLens.errorForegroundLight":"#e78284","errorLens.errorMessageBackground":"#e7828426","errorLens.hintBackground":"#a6d18926","errorLens.hintBackgroundLight":"#a6d18926","errorLens.hintForeground":"#a6d189","errorLens.hintForegroundLight":"#a6d189","errorLens.hintMessageBackground":"#a6d18926","errorLens.infoBackground":"#8caaee26","errorLens.infoBackgroundLight":"#8caaee26","errorLens.infoForeground":"#8caaee","errorLens.infoForegroundLight":"#8caaee","errorLens.infoMessageBackground":"#8caaee26","errorLens.statusBarErrorForeground":"#e78284","errorLens.statusBarHintForeground":"#a6d189","errorLens.statusBarIconErrorForeground":"#e78284","errorLens.statusBarIconWarningForeground":"#ef9f76","errorLens.statusBarInfoForeground":"#8caaee","errorLens.statusBarWarningForeground":"#ef9f76","errorLens.warningBackground":"#ef9f7626","errorLens.warningBackgroundLight":"#ef9f7626","errorLens.warningForeground":"#ef9f76","errorLens.warningForegroundLight":"#ef9f76","errorLens.warningMessageBackground":"#ef9f7626","extensionBadge.remoteBackground":"#8caaee","extensionBadge.remoteForeground":"#232634","extensionButton.prominentBackground":"#ca9ee6","extensionButton.prominentForeground":"#232634","extensionButton.prominentHoverBackground":"#d9baed","extensionButton.separator":"#303446","extensionIcon.preReleaseForeground":"#626880","extensionIcon.sponsorForeground":"#f4b8e4","extensionIcon.starForeground":"#e5c890","extensionIcon.verifiedForeground":"#a6d189","focusBorder":"#ca9ee6","foreground":"#c6d0f5","gitDecoration.addedResourceForeground":"#a6d189","gitDecoration.conflictingResourceForeground":"#ca9ee6","gitDecoration.deletedResourceForeground":"#e78284","gitDecoration.ignoredResourceForeground":"#737994","gitDecoration.modifiedResourceForeground":"#e5c890","gitDecoration.stageDeletedResourceForeground":"#e78284","gitDecoration.stageModifiedResourceForeground":"#e5c890","gitDecoration.submoduleResourceForeground":"#8caaee","gitDecoration.untrackedResourceForeground":"#a6d189","gitlens.closedAutolinkedIssueIconColor":"#ca9ee6","gitlens.closedPullRequestIconColor":"#e78284","gitlens.decorations.branchAheadForegroundColor":"#a6d189","gitlens.decorations.branchBehindForegroundColor":"#ef9f76","gitlens.decorations.branchDivergedForegroundColor":"#e5c890","gitlens.decorations.branchMissingUpstreamForegroundColor":"#ef9f76","gitlens.decorations.branchUnpublishedForegroundColor":"#a6d189","gitlens.decorations.statusMergingOrRebasingConflictForegroundColor":"#ea999c","gitlens.decorations.statusMergingOrRebasingForegroundColor":"#e5c890","gitlens.decorations.workspaceCurrentForegroundColor":"#ca9ee6","gitlens.decorations.workspaceRepoMissingForegroundColor":"#a5adce","gitlens.decorations.workspaceRepoOpenForegroundColor":"#ca9ee6","gitlens.decorations.worktreeHasUncommittedChangesForegroundColor":"#ef9f76","gitlens.decorations.worktreeMissingForegroundColor":"#ea999c","gitlens.graphChangesColumnAddedColor":"#a6d189","gitlens.graphChangesColumnDeletedColor":"#e78284","gitlens.graphLane10Color":"#f4b8e4","gitlens.graphLane1Color":"#ca9ee6","gitlens.graphLane2Color":"#e5c890","gitlens.graphLane3Color":"#8caaee","gitlens.graphLane4Color":"#eebebe","gitlens.graphLane5Color":"#a6d189","gitlens.graphLane6Color":"#babbf1","gitlens.graphLane7Color":"#f2d5cf","gitlens.graphLane8Color":"#e78284","gitlens.graphLane9Color":"#81c8be","gitlens.graphMinimapMarkerHeadColor":"#a6d189","gitlens.graphMinimapMarkerHighlightsColor":"#e5c890","gitlens.graphMinimapMarkerLocalBranchesColor":"#8caaee","gitlens.graphMinimapMarkerRemoteBranchesColor":"#769aeb","gitlens.graphMinimapMarkerStashesColor":"#ca9ee6","gitlens.graphMinimapMarkerTagsColor":"#eebebe","gitlens.graphMinimapMarkerUpstreamColor":"#98ca77","gitlens.graphScrollMarkerHeadColor":"#a6d189","gitlens.graphScrollMarkerHighlightsColor":"#e5c890","gitlens.graphScrollMarkerLocalBranchesColor":"#8caaee","gitlens.graphScrollMarkerRemoteBranchesColor":"#769aeb","gitlens.graphScrollMarkerStashesColor":"#ca9ee6","gitlens.graphScrollMarkerTagsColor":"#eebebe","gitlens.graphScrollMarkerUpstreamColor":"#98ca77","gitlens.gutterBackgroundColor":"#4145594d","gitlens.gutterForegroundColor":"#c6d0f5","gitlens.gutterUncommittedForegroundColor":"#ca9ee6","gitlens.lineHighlightBackgroundColor":"#ca9ee626","gitlens.lineHighlightOverviewRulerColor":"#ca9ee6cc","gitlens.mergedPullRequestIconColor":"#ca9ee6","gitlens.openAutolinkedIssueIconColor":"#a6d189","gitlens.openPullRequestIconColor":"#a6d189","gitlens.trailingLineBackgroundColor":"#00000000","gitlens.trailingLineForegroundColor":"#c6d0f54d","gitlens.unpublishedChangesIconColor":"#a6d189","gitlens.unpublishedCommitIconColor":"#a6d189","gitlens.unpulledChangesIconColor":"#ef9f76","icon.foreground":"#ca9ee6","input.background":"#414559","input.border":"#00000000","input.foreground":"#c6d0f5","input.placeholderForeground":"#c6d0f573","inputOption.activeBackground":"#626880","inputOption.activeBorder":"#ca9ee6","inputOption.activeForeground":"#c6d0f5","inputValidation.errorBackground":"#e78284","inputValidation.errorBorder":"#23263433","inputValidation.errorForeground":"#232634","inputValidation.infoBackground":"#8caaee","inputValidation.infoBorder":"#23263433","inputValidation.infoForeground":"#232634","inputValidation.warningBackground":"#ef9f76","inputValidation.warningBorder":"#23263433","inputValidation.warningForeground":"#232634","issues.closed":"#ca9ee6","issues.newIssueDecoration":"#f2d5cf","issues.open":"#a6d189","list.activeSelectionBackground":"#414559","list.activeSelectionForeground":"#c6d0f5","list.dropBackground":"#ca9ee633","list.focusAndSelectionBackground":"#51576d","list.focusBackground":"#414559","list.focusForeground":"#c6d0f5","list.focusOutline":"#00000000","list.highlightForeground":"#ca9ee6","list.hoverBackground":"#41455980","list.hoverForeground":"#c6d0f5","list.inactiveSelectionBackground":"#414559","list.inactiveSelectionForeground":"#c6d0f5","list.warningForeground":"#ef9f76","listFilterWidget.background":"#51576d","listFilterWidget.noMatchesOutline":"#e78284","listFilterWidget.outline":"#00000000","menu.background":"#303446","menu.border":"#30344680","menu.foreground":"#c6d0f5","menu.selectionBackground":"#626880","menu.selectionBorder":"#00000000","menu.selectionForeground":"#c6d0f5","menu.separatorBackground":"#626880","menubar.selectionBackground":"#51576d","menubar.selectionForeground":"#c6d0f5","merge.commonContentBackground":"#51576d","merge.commonHeaderBackground":"#626880","merge.currentContentBackground":"#a6d18933","merge.currentHeaderBackground":"#a6d18966","merge.incomingContentBackground":"#8caaee33","merge.incomingHeaderBackground":"#8caaee66","minimap.background":"#292c3c80","minimap.errorHighlight":"#e78284bf","minimap.findMatchHighlight":"#99d1db4d","minimap.selectionHighlight":"#626880bf","minimap.selectionOccurrenceHighlight":"#626880bf","minimap.warningHighlight":"#ef9f76bf","minimapGutter.addedBackground":"#a6d189bf","minimapGutter.deletedBackground":"#e78284bf","minimapGutter.modifiedBackground":"#e5c890bf","minimapSlider.activeBackground":"#ca9ee699","minimapSlider.background":"#ca9ee633","minimapSlider.hoverBackground":"#ca9ee666","notificationCenter.border":"#ca9ee6","notificationCenterHeader.background":"#292c3c","notificationCenterHeader.foreground":"#c6d0f5","notificationLink.foreground":"#8caaee","notificationToast.border":"#ca9ee6","notifications.background":"#292c3c","notifications.border":"#ca9ee6","notifications.foreground":"#c6d0f5","notificationsErrorIcon.foreground":"#e78284","notificationsInfoIcon.foreground":"#8caaee","notificationsWarningIcon.foreground":"#ef9f76","panel.background":"#303446","panel.border":"#626880","panelSection.border":"#626880","panelSection.dropBackground":"#ca9ee633","panelTitle.activeBorder":"#ca9ee6","panelTitle.activeForeground":"#c6d0f5","panelTitle.inactiveForeground":"#a5adce","peekView.border":"#ca9ee6","peekViewEditor.background":"#292c3c","peekViewEditor.matchHighlightBackground":"#99d1db4d","peekViewEditor.matchHighlightBorder":"#00000000","peekViewEditorGutter.background":"#292c3c","peekViewResult.background":"#292c3c","peekViewResult.fileForeground":"#c6d0f5","peekViewResult.lineForeground":"#c6d0f5","peekViewResult.matchHighlightBackground":"#99d1db4d","peekViewResult.selectionBackground":"#414559","peekViewResult.selectionForeground":"#c6d0f5","peekViewTitle.background":"#303446","peekViewTitleDescription.foreground":"#b5bfe2b3","peekViewTitleLabel.foreground":"#c6d0f5","pickerGroup.border":"#ca9ee6","pickerGroup.foreground":"#ca9ee6","problemsErrorIcon.foreground":"#e78284","problemsInfoIcon.foreground":"#8caaee","problemsWarningIcon.foreground":"#ef9f76","progressBar.background":"#ca9ee6","pullRequests.closed":"#e78284","pullRequests.draft":"#949cbb","pullRequests.merged":"#ca9ee6","pullRequests.notification":"#c6d0f5","pullRequests.open":"#a6d189","sash.hoverBorder":"#ca9ee6","scrollbar.shadow":"#232634","scrollbarSlider.activeBackground":"#41455966","scrollbarSlider.background":"#62688080","scrollbarSlider.hoverBackground":"#737994","selection.background":"#ca9ee666","settings.dropdownBackground":"#51576d","settings.dropdownListBorder":"#00000000","settings.focusedRowBackground":"#62688033","settings.headerForeground":"#c6d0f5","settings.modifiedItemIndicator":"#ca9ee6","settings.numberInputBackground":"#51576d","settings.numberInputBorder":"#00000000","settings.textInputBackground":"#51576d","settings.textInputBorder":"#00000000","sideBar.background":"#292c3c","sideBar.border":"#00000000","sideBar.dropBackground":"#ca9ee633","sideBar.foreground":"#c6d0f5","sideBarSectionHeader.background":"#292c3c","sideBarSectionHeader.foreground":"#c6d0f5","sideBarTitle.foreground":"#ca9ee6","statusBar.background":"#232634","statusBar.border":"#00000000","statusBar.debuggingBackground":"#ef9f76","statusBar.debuggingBorder":"#00000000","statusBar.debuggingForeground":"#232634","statusBar.foreground":"#c6d0f5","statusBar.noFolderBackground":"#232634","statusBar.noFolderBorder":"#00000000","statusBar.noFolderForeground":"#c6d0f5","statusBarItem.activeBackground":"#62688066","statusBarItem.errorBackground":"#00000000","statusBarItem.errorForeground":"#e78284","statusBarItem.hoverBackground":"#62688033","statusBarItem.prominentBackground":"#00000000","statusBarItem.prominentForeground":"#ca9ee6","statusBarItem.prominentHoverBackground":"#62688033","statusBarItem.remoteBackground":"#8caaee","statusBarItem.remoteForeground":"#232634","statusBarItem.warningBackground":"#00000000","statusBarItem.warningForeground":"#ef9f76","symbolIcon.arrayForeground":"#ef9f76","symbolIcon.booleanForeground":"#ca9ee6","symbolIcon.classForeground":"#e5c890","symbolIcon.colorForeground":"#f4b8e4","symbolIcon.constantForeground":"#ef9f76","symbolIcon.constructorForeground":"#babbf1","symbolIcon.enumeratorForeground":"#e5c890","symbolIcon.enumeratorMemberForeground":"#e5c890","symbolIcon.eventForeground":"#f4b8e4","symbolIcon.fieldForeground":"#c6d0f5","symbolIcon.fileForeground":"#ca9ee6","symbolIcon.folderForeground":"#ca9ee6","symbolIcon.functionForeground":"#8caaee","symbolIcon.interfaceForeground":"#e5c890","symbolIcon.keyForeground":"#81c8be","symbolIcon.keywordForeground":"#ca9ee6","symbolIcon.methodForeground":"#8caaee","symbolIcon.moduleForeground":"#c6d0f5","symbolIcon.namespaceForeground":"#e5c890","symbolIcon.nullForeground":"#ea999c","symbolIcon.numberForeground":"#ef9f76","symbolIcon.objectForeground":"#e5c890","symbolIcon.operatorForeground":"#81c8be","symbolIcon.packageForeground":"#eebebe","symbolIcon.propertyForeground":"#ea999c","symbolIcon.referenceForeground":"#e5c890","symbolIcon.snippetForeground":"#eebebe","symbolIcon.stringForeground":"#a6d189","symbolIcon.structForeground":"#81c8be","symbolIcon.textForeground":"#c6d0f5","symbolIcon.typeParameterForeground":"#ea999c","symbolIcon.unitForeground":"#c6d0f5","symbolIcon.variableForeground":"#c6d0f5","tab.activeBackground":"#303446","tab.activeBorder":"#00000000","tab.activeBorderTop":"#ca9ee6","tab.activeForeground":"#ca9ee6","tab.activeModifiedBorder":"#e5c890","tab.border":"#292c3c","tab.hoverBackground":"#3a3f55","tab.hoverBorder":"#00000000","tab.hoverForeground":"#ca9ee6","tab.inactiveBackground":"#292c3c","tab.inactiveForeground":"#737994","tab.inactiveModifiedBorder":"#e5c8904d","tab.lastPinnedBorder":"#ca9ee6","tab.unfocusedActiveBackground":"#292c3c","tab.unfocusedActiveBorder":"#00000000","tab.unfocusedActiveBorderTop":"#ca9ee64d","tab.unfocusedInactiveBackground":"#1f212d","table.headerBackground":"#414559","table.headerForeground":"#c6d0f5","terminal.ansiBlack":"#51576d","terminal.ansiBlue":"#8caaee","terminal.ansiBrightBlack":"#626880","terminal.ansiBrightBlue":"#7b9ef0","terminal.ansiBrightCyan":"#5abfb5","terminal.ansiBrightGreen":"#8ec772","terminal.ansiBrightMagenta":"#f2a4db","terminal.ansiBrightRed":"#e67172","terminal.ansiBrightWhite":"#b5bfe2","terminal.ansiBrightYellow":"#d9ba73","terminal.ansiCyan":"#81c8be","terminal.ansiGreen":"#a6d189","terminal.ansiMagenta":"#f4b8e4","terminal.ansiRed":"#e78284","terminal.ansiWhite":"#a5adce","terminal.ansiYellow":"#e5c890","terminal.border":"#626880","terminal.dropBackground":"#ca9ee633","terminal.foreground":"#c6d0f5","terminal.inactiveSelectionBackground":"#62688080","terminal.selectionBackground":"#626880","terminal.tab.activeBorder":"#ca9ee6","terminalCommandDecoration.defaultBackground":"#626880","terminalCommandDecoration.errorBackground":"#e78284","terminalCommandDecoration.successBackground":"#a6d189","terminalCursor.background":"#303446","terminalCursor.foreground":"#f2d5cf","textBlockQuote.background":"#292c3c","textBlockQuote.border":"#232634","textCodeBlock.background":"#303446","textLink.activeForeground":"#99d1db","textLink.foreground":"#8caaee","textPreformat.foreground":"#c6d0f5","textSeparator.foreground":"#ca9ee6","titleBar.activeBackground":"#232634","titleBar.activeForeground":"#c6d0f5","titleBar.border":"#00000000","titleBar.inactiveBackground":"#232634","titleBar.inactiveForeground":"#c6d0f580","tree.inactiveIndentGuidesStroke":"#51576d","tree.indentGuidesStroke":"#949cbb","walkThrough.embeddedEditorBackground":"#3034464d","welcomePage.progress.background":"#232634","welcomePage.progress.foreground":"#ca9ee6","welcomePage.tileBackground":"#292c3c","widget.shadow":"#292c3c80","window.activeBorder":"#00000000","window.inactiveBorder":"#00000000"},"displayName":"Catppuccin Frapp\xE9","name":"catppuccin-frappe","semanticHighlighting":true,"semanticTokenColors":{"boolean":{"foreground":"#ef9f76"},"builtinAttribute.attribute.library:rust":{"foreground":"#8caaee"},"class.builtin:python":{"foreground":"#ca9ee6"},"class:python":{"foreground":"#e5c890"},"constant.builtin.readonly:nix":{"foreground":"#ca9ee6"},"enumMember":{"foreground":"#81c8be"},"function.decorator:python":{"foreground":"#ef9f76"},"generic.attribute:rust":{"foreground":"#c6d0f5"},"heading":{"foreground":"#e78284"},"number":{"foreground":"#ef9f76"},"pol":{"foreground":"#eebebe"},"property.readonly:javascript":{"foreground":"#c6d0f5"},"property.readonly:javascriptreact":{"foreground":"#c6d0f5"},"property.readonly:typescript":{"foreground":"#c6d0f5"},"property.readonly:typescriptreact":{"foreground":"#c6d0f5"},"selfKeyword":{"foreground":"#e78284"},"text.emph":{"fontStyle":"italic","foreground":"#e78284"},"text.math":{"foreground":"#eebebe"},"text.strong":{"fontStyle":"bold","foreground":"#e78284"},"tomlArrayKey":{"fontStyle":"","foreground":"#8caaee"},"tomlTableKey":{"fontStyle":"","foreground":"#8caaee"},"type.defaultLibrary:go":{"foreground":"#ca9ee6"},"variable.defaultLibrary":{"foreground":"#ea999c"},"variable.readonly.defaultLibrary:go":{"foreground":"#ca9ee6"},"variable.readonly:javascript":{"foreground":"#c6d0f5"},"variable.readonly:javascriptreact":{"foreground":"#c6d0f5"},"variable.readonly:scala":{"foreground":"#c6d0f5"},"variable.readonly:typescript":{"foreground":"#c6d0f5"},"variable.readonly:typescriptreact":{"foreground":"#c6d0f5"},"variable.typeHint:python":{"foreground":"#e5c890"}},"tokenColors":[{"scope":["text","source","variable.other.readwrite","punctuation.definition.variable"],"settings":{"foreground":"#c6d0f5"}},{"scope":"punctuation","settings":{"fontStyle":"","foreground":"#949cbb"}},{"scope":["comment","punctuation.definition.comment"],"settings":{"fontStyle":"italic","foreground":"#737994"}},{"scope":["string","punctuation.definition.string"],"settings":{"foreground":"#a6d189"}},{"scope":"constant.character.escape","settings":{"foreground":"#f4b8e4"}},{"scope":["constant.numeric","variable.other.constant","entity.name.constant","constant.language.boolean","constant.language.false","constant.language.true","keyword.other.unit.user-defined","keyword.other.unit.suffix.floating-point"],"settings":{"foreground":"#ef9f76"}},{"scope":["keyword","keyword.operator.word","keyword.operator.new","variable.language.super","support.type.primitive","storage.type","storage.modifier","punctuation.definition.keyword"],"settings":{"fontStyle":"","foreground":"#ca9ee6"}},{"scope":"entity.name.tag.documentation","settings":{"foreground":"#ca9ee6"}},{"scope":["keyword.operator","punctuation.accessor","punctuation.definition.generic","meta.function.closure punctuation.section.parameters","punctuation.definition.tag","punctuation.separator.key-value"],"settings":{"foreground":"#81c8be"}},{"scope":["entity.name.function","meta.function-call.method","support.function","support.function.misc","variable.function"],"settings":{"fontStyle":"italic","foreground":"#8caaee"}},{"scope":["entity.name.class","entity.other.inherited-class","support.class","meta.function-call.constructor","entity.name.struct"],"settings":{"fontStyle":"italic","foreground":"#e5c890"}},{"scope":"entity.name.enum","settings":{"fontStyle":"italic","foreground":"#e5c890"}},{"scope":["meta.enum variable.other.readwrite","variable.other.enummember"],"settings":{"foreground":"#81c8be"}},{"scope":"meta.property.object","settings":{"foreground":"#81c8be"}},{"scope":["meta.type","meta.type-alias","support.type","entity.name.type"],"settings":{"fontStyle":"italic","foreground":"#e5c890"}},{"scope":["meta.annotation variable.function","meta.annotation variable.annotation.function","meta.annotation punctuation.definition.annotation","meta.decorator","punctuation.decorator"],"settings":{"foreground":"#ef9f76"}},{"scope":["variable.parameter","meta.function.parameters"],"settings":{"fontStyle":"italic","foreground":"#ea999c"}},{"scope":["constant.language","support.function.builtin"],"settings":{"foreground":"#e78284"}},{"scope":"entity.other.attribute-name.documentation","settings":{"foreground":"#e78284"}},{"scope":["keyword.control.directive","punctuation.definition.directive"],"settings":{"foreground":"#e5c890"}},{"scope":"punctuation.definition.typeparameters","settings":{"foreground":"#99d1db"}},{"scope":"entity.name.namespace","settings":{"foreground":"#e5c890"}},{"scope":"support.type.property-name.css","settings":{"fontStyle":"","foreground":"#8caaee"}},{"scope":["variable.language.this","variable.language.this punctuation.definition.variable"],"settings":{"foreground":"#e78284"}},{"scope":"variable.object.property","settings":{"foreground":"#c6d0f5"}},{"scope":["string.template variable","string variable"],"settings":{"foreground":"#c6d0f5"}},{"scope":"keyword.operator.new","settings":{"fontStyle":"bold"}},{"scope":"storage.modifier.specifier.extern.cpp","settings":{"foreground":"#ca9ee6"}},{"scope":["entity.name.scope-resolution.template.call.cpp","entity.name.scope-resolution.parameter.cpp","entity.name.scope-resolution.cpp","entity.name.scope-resolution.function.definition.cpp"],"settings":{"foreground":"#e5c890"}},{"scope":"storage.type.class.doxygen","settings":{"fontStyle":""}},{"scope":["storage.modifier.reference.cpp"],"settings":{"foreground":"#81c8be"}},{"scope":"meta.interpolation.cs","settings":{"foreground":"#c6d0f5"}},{"scope":"comment.block.documentation.cs","settings":{"foreground":"#c6d0f5"}},{"scope":["source.css entity.other.attribute-name.class.css","entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css"],"settings":{"foreground":"#e5c890"}},{"scope":"punctuation.separator.operator.css","settings":{"foreground":"#81c8be"}},{"scope":"source.css entity.other.attribute-name.pseudo-class","settings":{"foreground":"#81c8be"}},{"scope":"source.css constant.other.unicode-range","settings":{"foreground":"#ef9f76"}},{"scope":"source.css variable.parameter.url","settings":{"fontStyle":"","foreground":"#a6d189"}},{"scope":["support.type.vendored.property-name"],"settings":{"foreground":"#99d1db"}},{"scope":["source.css meta.property-value variable","source.css meta.property-value variable.other.less","source.css meta.property-value variable.other.less punctuation.definition.variable.less","meta.definition.variable.scss"],"settings":{"foreground":"#ea999c"}},{"scope":["source.css meta.property-list variable","meta.property-list variable.other.less","meta.property-list variable.other.less punctuation.definition.variable.less"],"settings":{"foreground":"#8caaee"}},{"scope":"keyword.other.unit.percentage.css","settings":{"foreground":"#ef9f76"}},{"scope":"source.css meta.attribute-selector","settings":{"foreground":"#a6d189"}},{"scope":["keyword.other.definition.ini","punctuation.support.type.property-name.json","support.type.property-name.json","punctuation.support.type.property-name.toml","support.type.property-name.toml","entity.name.tag.yaml","punctuation.support.type.property-name.yaml","support.type.property-name.yaml"],"settings":{"fontStyle":"","foreground":"#8caaee"}},{"scope":["constant.language.json","constant.language.yaml"],"settings":{"foreground":"#ef9f76"}},{"scope":["entity.name.type.anchor.yaml","variable.other.alias.yaml"],"settings":{"fontStyle":"","foreground":"#e5c890"}},{"scope":["support.type.property-name.table","entity.name.section.group-title.ini"],"settings":{"foreground":"#e5c890"}},{"scope":"constant.other.time.datetime.offset.toml","settings":{"foreground":"#f4b8e4"}},{"scope":["punctuation.definition.anchor.yaml","punctuation.definition.alias.yaml"],"settings":{"foreground":"#f4b8e4"}},{"scope":"entity.other.document.begin.yaml","settings":{"foreground":"#f4b8e4"}},{"scope":"markup.changed.diff","settings":{"foreground":"#ef9f76"}},{"scope":["meta.diff.header.from-file","meta.diff.header.to-file","punctuation.definition.from-file.diff","punctuation.definition.to-file.diff"],"settings":{"foreground":"#8caaee"}},{"scope":"markup.inserted.diff","settings":{"foreground":"#a6d189"}},{"scope":"markup.deleted.diff","settings":{"foreground":"#e78284"}},{"scope":["variable.other.env"],"settings":{"foreground":"#8caaee"}},{"scope":["string.quoted variable.other.env"],"settings":{"foreground":"#c6d0f5"}},{"scope":"support.function.builtin.gdscript","settings":{"foreground":"#8caaee"}},{"scope":"constant.language.gdscript","settings":{"foreground":"#ef9f76"}},{"scope":"comment meta.annotation.go","settings":{"foreground":"#ea999c"}},{"scope":"comment meta.annotation.parameters.go","settings":{"foreground":"#ef9f76"}},{"scope":"constant.language.go","settings":{"foreground":"#ef9f76"}},{"scope":"variable.graphql","settings":{"foreground":"#c6d0f5"}},{"scope":"string.unquoted.alias.graphql","settings":{"foreground":"#eebebe"}},{"scope":"constant.character.enum.graphql","settings":{"foreground":"#81c8be"}},{"scope":"meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql","settings":{"foreground":"#eebebe"}},{"scope":["keyword.other.doctype","meta.tag.sgml.doctype punctuation.definition.tag","meta.tag.metadata.doctype entity.name.tag","meta.tag.metadata.doctype punctuation.definition.tag"],"settings":{"foreground":"#ca9ee6"}},{"scope":["entity.name.tag"],"settings":{"fontStyle":"","foreground":"#8caaee"}},{"scope":["text.html constant.character.entity","text.html constant.character.entity punctuation","constant.character.entity.xml","constant.character.entity.xml punctuation","constant.character.entity.js.jsx","constant.charactger.entity.js.jsx punctuation","constant.character.entity.tsx","constant.character.entity.tsx punctuation"],"settings":{"foreground":"#e78284"}},{"scope":["entity.other.attribute-name"],"settings":{"foreground":"#e5c890"}},{"scope":["support.class.component","support.class.component.jsx","support.class.component.tsx","support.class.component.vue"],"settings":{"fontStyle":"","foreground":"#f4b8e4"}},{"scope":["punctuation.definition.annotation","storage.type.annotation"],"settings":{"foreground":"#ef9f76"}},{"scope":"constant.other.enum.java","settings":{"foreground":"#81c8be"}},{"scope":"storage.modifier.import.java","settings":{"foreground":"#c6d0f5"}},{"scope":"comment.block.javadoc.java keyword.other.documentation.javadoc.java","settings":{"fontStyle":""}},{"scope":"meta.export variable.other.readwrite.js","settings":{"foreground":"#ea999c"}},{"scope":["variable.other.constant.js","variable.other.constant.ts","variable.other.property.js","variable.other.property.ts"],"settings":{"foreground":"#c6d0f5"}},{"scope":["variable.other.jsdoc","comment.block.documentation variable.other"],"settings":{"fontStyle":"","foreground":"#ea999c"}},{"scope":"storage.type.class.jsdoc","settings":{"fontStyle":""}},{"scope":"support.type.object.console.js","settings":{"foreground":"#c6d0f5"}},{"scope":["support.constant.node","support.type.object.module.js"],"settings":{"foreground":"#ca9ee6"}},{"scope":"storage.modifier.implements","settings":{"foreground":"#ca9ee6"}},{"scope":["constant.language.null.js","constant.language.null.ts","constant.language.undefined.js","constant.language.undefined.ts","support.type.builtin.ts"],"settings":{"foreground":"#ca9ee6"}},{"scope":"variable.parameter.generic","settings":{"foreground":"#e5c890"}},{"scope":["keyword.declaration.function.arrow.js","storage.type.function.arrow.ts"],"settings":{"foreground":"#81c8be"}},{"scope":"punctuation.decorator.ts","settings":{"fontStyle":"italic","foreground":"#8caaee"}},{"scope":["keyword.operator.expression.in.js","keyword.operator.expression.in.ts","keyword.operator.expression.infer.ts","keyword.operator.expression.instanceof.js","keyword.operator.expression.instanceof.ts","keyword.operator.expression.is","keyword.operator.expression.keyof.ts","keyword.operator.expression.of.js","keyword.operator.expression.of.ts","keyword.operator.expression.typeof.ts"],"settings":{"foreground":"#ca9ee6"}},{"scope":"support.function.macro.julia","settings":{"fontStyle":"italic","foreground":"#81c8be"}},{"scope":"constant.language.julia","settings":{"foreground":"#ef9f76"}},{"scope":"constant.other.symbol.julia","settings":{"foreground":"#ea999c"}},{"scope":"text.tex keyword.control.preamble","settings":{"foreground":"#81c8be"}},{"scope":"text.tex support.function.be","settings":{"foreground":"#99d1db"}},{"scope":"constant.other.general.math.tex","settings":{"foreground":"#eebebe"}},{"scope":"variable.language.liquid","settings":{"foreground":"#f4b8e4"}},{"scope":"comment.line.double-dash.documentation.lua storage.type.annotation.lua","settings":{"fontStyle":"","foreground":"#ca9ee6"}},{"scope":["comment.line.double-dash.documentation.lua entity.name.variable.lua","comment.line.double-dash.documentation.lua variable.lua"],"settings":{"foreground":"#c6d0f5"}},{"scope":["heading.1.markdown punctuation.definition.heading.markdown","heading.1.markdown","heading.1.quarto punctuation.definition.heading.quarto","heading.1.quarto","markup.heading.atx.1.mdx","markup.heading.atx.1.mdx punctuation.definition.heading.mdx","markup.heading.setext.1.markdown","markup.heading.heading-0.asciidoc"],"settings":{"foreground":"#e78284"}},{"scope":["heading.2.markdown punctuation.definition.heading.markdown","heading.2.markdown","heading.2.quarto punctuation.definition.heading.quarto","heading.2.quarto","markup.heading.atx.2.mdx","markup.heading.atx.2.mdx punctuation.definition.heading.mdx","markup.heading.setext.2.markdown","markup.heading.heading-1.asciidoc"],"settings":{"foreground":"#ef9f76"}},{"scope":["heading.3.markdown punctuation.definition.heading.markdown","heading.3.markdown","heading.3.quarto punctuation.definition.heading.quarto","heading.3.quarto","markup.heading.atx.3.mdx","markup.heading.atx.3.mdx punctuation.definition.heading.mdx","markup.heading.heading-2.asciidoc"],"settings":{"foreground":"#e5c890"}},{"scope":["heading.4.markdown punctuation.definition.heading.markdown","heading.4.markdown","heading.4.quarto punctuation.definition.heading.quarto","heading.4.quarto","markup.heading.atx.4.mdx","markup.heading.atx.4.mdx punctuation.definition.heading.mdx","markup.heading.heading-3.asciidoc"],"settings":{"foreground":"#a6d189"}},{"scope":["heading.5.markdown punctuation.definition.heading.markdown","heading.5.markdown","heading.5.quarto punctuation.definition.heading.quarto","heading.5.quarto","markup.heading.atx.5.mdx","markup.heading.atx.5.mdx punctuation.definition.heading.mdx","markup.heading.heading-4.asciidoc"],"settings":{"foreground":"#8caaee"}},{"scope":["heading.6.markdown punctuation.definition.heading.markdown","heading.6.markdown","heading.6.quarto punctuation.definition.heading.quarto","heading.6.quarto","markup.heading.atx.6.mdx","markup.heading.atx.6.mdx punctuation.definition.heading.mdx","markup.heading.heading-5.asciidoc"],"settings":{"foreground":"#ca9ee6"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#e78284"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#e78284"}},{"scope":"markup.strikethrough","settings":{"fontStyle":"strikethrough","foreground":"#a5adce"}},{"scope":["punctuation.definition.link","markup.underline.link"],"settings":{"foreground":"#8caaee"}},{"scope":["text.html.markdown punctuation.definition.link.title","text.html.quarto punctuation.definition.link.title","string.other.link.title.markdown","string.other.link.title.quarto","markup.link","punctuation.definition.constant.markdown","punctuation.definition.constant.quarto","constant.other.reference.link.markdown","constant.other.reference.link.quarto","markup.substitution.attribute-reference"],"settings":{"foreground":"#babbf1"}},{"scope":["punctuation.definition.raw.markdown","punctuation.definition.raw.quarto","markup.inline.raw.string.markdown","markup.inline.raw.string.quarto","markup.raw.block.markdown","markup.raw.block.quarto"],"settings":{"foreground":"#a6d189"}},{"scope":"fenced_code.block.language","settings":{"foreground":"#99d1db"}},{"scope":["markup.fenced_code.block punctuation.definition","markup.raw support.asciidoc"],"settings":{"foreground":"#949cbb"}},{"scope":["markup.quote","punctuation.definition.quote.begin"],"settings":{"foreground":"#f4b8e4"}},{"scope":"meta.separator.markdown","settings":{"foreground":"#81c8be"}},{"scope":["punctuation.definition.list.begin.markdown","punctuation.definition.list.begin.quarto","markup.list.bullet"],"settings":{"foreground":"#81c8be"}},{"scope":"markup.heading.quarto","settings":{"fontStyle":"bold"}},{"scope":["entity.other.attribute-name.multipart.nix","entity.other.attribute-name.single.nix"],"settings":{"foreground":"#8caaee"}},{"scope":"variable.parameter.name.nix","settings":{"fontStyle":"","foreground":"#c6d0f5"}},{"scope":"meta.embedded variable.parameter.name.nix","settings":{"fontStyle":"","foreground":"#babbf1"}},{"scope":"string.unquoted.path.nix","settings":{"fontStyle":"","foreground":"#f4b8e4"}},{"scope":["support.attribute.builtin","meta.attribute.php"],"settings":{"foreground":"#e5c890"}},{"scope":"meta.function.parameters.php punctuation.definition.variable.php","settings":{"foreground":"#ea999c"}},{"scope":"constant.language.php","settings":{"foreground":"#ca9ee6"}},{"scope":"text.html.php support.function","settings":{"foreground":"#99d1db"}},{"scope":"keyword.other.phpdoc.php","settings":{"fontStyle":""}},{"scope":["support.variable.magic.python","meta.function-call.arguments.python"],"settings":{"foreground":"#c6d0f5"}},{"scope":["support.function.magic.python"],"settings":{"fontStyle":"italic","foreground":"#99d1db"}},{"scope":["variable.parameter.function.language.special.self.python","variable.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#e78284"}},{"scope":["keyword.control.flow.python","keyword.operator.logical.python"],"settings":{"foreground":"#ca9ee6"}},{"scope":"storage.type.function.python","settings":{"foreground":"#ca9ee6"}},{"scope":["support.token.decorator.python","meta.function.decorator.identifier.python"],"settings":{"foreground":"#99d1db"}},{"scope":["meta.function-call.python"],"settings":{"foreground":"#8caaee"}},{"scope":["entity.name.function.decorator.python","punctuation.definition.decorator.python"],"settings":{"fontStyle":"italic","foreground":"#ef9f76"}},{"scope":"constant.character.format.placeholder.other.python","settings":{"foreground":"#f4b8e4"}},{"scope":["support.type.exception.python","support.function.builtin.python"],"settings":{"foreground":"#ef9f76"}},{"scope":["support.type.python"],"settings":{"foreground":"#ef9f76"}},{"scope":"constant.language.python","settings":{"foreground":"#ca9ee6"}},{"scope":["meta.indexed-name.python","meta.item-access.python"],"settings":{"fontStyle":"italic","foreground":"#ea999c"}},{"scope":"storage.type.string.python","settings":{"fontStyle":"italic","foreground":"#a6d189"}},{"scope":"meta.function.parameters.python","settings":{"fontStyle":""}},{"scope":["string.regexp punctuation.definition.string.begin","string.regexp punctuation.definition.string.end"],"settings":{"foreground":"#f4b8e4"}},{"scope":"keyword.control.anchor.regexp","settings":{"foreground":"#ca9ee6"}},{"scope":"string.regexp.ts","settings":{"foreground":"#c6d0f5"}},{"scope":["punctuation.definition.group.regexp","keyword.other.back-reference.regexp"],"settings":{"foreground":"#a6d189"}},{"scope":"punctuation.definition.character-class.regexp","settings":{"foreground":"#e5c890"}},{"scope":"constant.other.character-class.regexp","settings":{"foreground":"#f4b8e4"}},{"scope":"constant.other.character-class.range.regexp","settings":{"foreground":"#f2d5cf"}},{"scope":"keyword.operator.quantifier.regexp","settings":{"foreground":"#81c8be"}},{"scope":"constant.character.numeric.regexp","settings":{"foreground":"#ef9f76"}},{"scope":["punctuation.definition.group.no-capture.regexp","meta.assertion.look-ahead.regexp","meta.assertion.negative-look-ahead.regexp"],"settings":{"foreground":"#8caaee"}},{"scope":["meta.annotation.rust","meta.annotation.rust punctuation","meta.attribute.rust","punctuation.definition.attribute.rust"],"settings":{"fontStyle":"italic","foreground":"#e5c890"}},{"scope":["meta.attribute.rust string.quoted.double.rust","meta.attribute.rust string.quoted.single.char.rust"],"settings":{"fontStyle":""}},{"scope":["entity.name.function.macro.rules.rust","storage.type.module.rust","storage.modifier.rust","storage.type.struct.rust","storage.type.enum.rust","storage.type.trait.rust","storage.type.union.rust","storage.type.impl.rust","storage.type.rust","storage.type.function.rust","storage.type.type.rust"],"settings":{"fontStyle":"","foreground":"#ca9ee6"}},{"scope":"entity.name.type.numeric.rust","settings":{"fontStyle":"","foreground":"#ca9ee6"}},{"scope":"meta.generic.rust","settings":{"foreground":"#ef9f76"}},{"scope":"entity.name.impl.rust","settings":{"fontStyle":"italic","foreground":"#e5c890"}},{"scope":"entity.name.module.rust","settings":{"foreground":"#ef9f76"}},{"scope":"entity.name.trait.rust","settings":{"fontStyle":"italic","foreground":"#e5c890"}},{"scope":"storage.type.source.rust","settings":{"foreground":"#e5c890"}},{"scope":"entity.name.union.rust","settings":{"foreground":"#e5c890"}},{"scope":"meta.enum.rust storage.type.source.rust","settings":{"foreground":"#81c8be"}},{"scope":["support.macro.rust","meta.macro.rust support.function.rust","entity.name.function.macro.rust"],"settings":{"fontStyle":"italic","foreground":"#8caaee"}},{"scope":["storage.modifier.lifetime.rust","entity.name.type.lifetime"],"settings":{"fontStyle":"italic","foreground":"#8caaee"}},{"scope":"string.quoted.double.rust constant.other.placeholder.rust","settings":{"foreground":"#f4b8e4"}},{"scope":"meta.function.return-type.rust meta.generic.rust storage.type.rust","settings":{"foreground":"#c6d0f5"}},{"scope":"meta.function.call.rust","settings":{"foreground":"#8caaee"}},{"scope":"punctuation.brackets.angle.rust","settings":{"foreground":"#99d1db"}},{"scope":"constant.other.caps.rust","settings":{"foreground":"#ef9f76"}},{"scope":["meta.function.definition.rust variable.other.rust"],"settings":{"foreground":"#ea999c"}},{"scope":"meta.function.call.rust variable.other.rust","settings":{"foreground":"#c6d0f5"}},{"scope":"variable.language.self.rust","settings":{"foreground":"#e78284"}},{"scope":["variable.other.metavariable.name.rust","meta.macro.metavariable.rust keyword.operator.macro.dollar.rust"],"settings":{"foreground":"#f4b8e4"}},{"scope":["comment.line.shebang","comment.line.shebang punctuation.definition.comment","comment.line.shebang","punctuation.definition.comment.shebang.shell","meta.shebang.shell"],"settings":{"fontStyle":"italic","foreground":"#f4b8e4"}},{"scope":"comment.line.shebang constant.language","settings":{"fontStyle":"italic","foreground":"#81c8be"}},{"scope":["meta.function-call.arguments.shell punctuation.definition.variable.shell","meta.function-call.arguments.shell punctuation.section.interpolation","meta.function-call.arguments.shell punctuation.definition.variable.shell","meta.function-call.arguments.shell punctuation.section.interpolation"],"settings":{"foreground":"#e78284"}},{"scope":"meta.string meta.interpolation.parameter.shell variable.other.readwrite","settings":{"fontStyle":"italic","foreground":"#ef9f76"}},{"scope":["source.shell punctuation.section.interpolation","punctuation.definition.evaluation.backticks.shell"],"settings":{"foreground":"#81c8be"}},{"scope":"entity.name.tag.heredoc.shell","settings":{"foreground":"#ca9ee6"}},{"scope":"string.quoted.double.shell variable.other.normal.shell","settings":{"foreground":"#c6d0f5"}}],"type":"dark"}'))});var KP={};x(KP,{default:()=>Hse});var Hse,JP=_(()=>{Hse=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBackground":"#00000000","activityBar.activeBorder":"#00000000","activityBar.activeFocusBorder":"#00000000","activityBar.background":"#dce0e8","activityBar.border":"#00000000","activityBar.dropBorder":"#8839ef33","activityBar.foreground":"#8839ef","activityBar.inactiveForeground":"#9ca0b0","activityBarBadge.background":"#8839ef","activityBarBadge.foreground":"#dce0e8","activityBarTop.activeBorder":"#00000000","activityBarTop.dropBorder":"#8839ef33","activityBarTop.foreground":"#8839ef","activityBarTop.inactiveForeground":"#9ca0b0","badge.background":"#bcc0cc","badge.foreground":"#4c4f69","banner.background":"#bcc0cc","banner.foreground":"#4c4f69","banner.iconForeground":"#4c4f69","breadcrumb.activeSelectionForeground":"#8839ef","breadcrumb.background":"#eff1f5","breadcrumb.focusForeground":"#8839ef","breadcrumb.foreground":"#4c4f69cc","breadcrumbPicker.background":"#e6e9ef","button.background":"#8839ef","button.border":"#00000000","button.foreground":"#dce0e8","button.hoverBackground":"#9c5af2","button.secondaryBackground":"#acb0be","button.secondaryBorder":"#8839ef","button.secondaryForeground":"#4c4f69","button.secondaryHoverBackground":"#c0c3ce","button.separator":"#00000000","charts.blue":"#1e66f5","charts.foreground":"#4c4f69","charts.green":"#40a02b","charts.lines":"#5c5f77","charts.orange":"#fe640b","charts.purple":"#8839ef","charts.red":"#d20f39","charts.yellow":"#df8e1d","checkbox.background":"#bcc0cc","checkbox.border":"#00000000","checkbox.foreground":"#8839ef","commandCenter.activeBackground":"#acb0be33","commandCenter.activeBorder":"#8839ef","commandCenter.activeForeground":"#8839ef","commandCenter.background":"#e6e9ef","commandCenter.border":"#00000000","commandCenter.foreground":"#5c5f77","commandCenter.inactiveBorder":"#00000000","commandCenter.inactiveForeground":"#5c5f77","debugConsole.errorForeground":"#d20f39","debugConsole.infoForeground":"#1e66f5","debugConsole.sourceForeground":"#dc8a78","debugConsole.warningForeground":"#fe640b","debugConsoleInputIcon.foreground":"#4c4f69","debugExceptionWidget.background":"#dce0e8","debugExceptionWidget.border":"#8839ef","debugIcon.breakpointCurrentStackframeForeground":"#acb0be","debugIcon.breakpointDisabledForeground":"#d20f3999","debugIcon.breakpointForeground":"#d20f39","debugIcon.breakpointStackframeForeground":"#acb0be","debugIcon.breakpointUnverifiedForeground":"#bf607c","debugIcon.continueForeground":"#40a02b","debugIcon.disconnectForeground":"#acb0be","debugIcon.pauseForeground":"#1e66f5","debugIcon.restartForeground":"#179299","debugIcon.startForeground":"#40a02b","debugIcon.stepBackForeground":"#acb0be","debugIcon.stepIntoForeground":"#4c4f69","debugIcon.stepOutForeground":"#4c4f69","debugIcon.stepOverForeground":"#8839ef","debugIcon.stopForeground":"#d20f39","debugTokenExpression.boolean":"#8839ef","debugTokenExpression.error":"#d20f39","debugTokenExpression.number":"#fe640b","debugTokenExpression.string":"#40a02b","debugToolBar.background":"#dce0e8","debugToolBar.border":"#00000000","descriptionForeground":"#4c4f69","diffEditor.border":"#acb0be","diffEditor.diagonalFill":"#acb0be99","diffEditor.insertedLineBackground":"#40a02b26","diffEditor.insertedTextBackground":"#40a02b1a","diffEditor.removedLineBackground":"#d20f3926","diffEditor.removedTextBackground":"#d20f391a","diffEditorOverview.insertedForeground":"#40a02bcc","diffEditorOverview.removedForeground":"#d20f39cc","disabledForeground":"#6c6f85","dropdown.background":"#e6e9ef","dropdown.border":"#8839ef","dropdown.foreground":"#4c4f69","dropdown.listBackground":"#acb0be","editor.background":"#eff1f5","editor.findMatchBackground":"#e6adbd","editor.findMatchBorder":"#d20f3933","editor.findMatchHighlightBackground":"#a9daf0","editor.findMatchHighlightBorder":"#04a5e533","editor.findRangeHighlightBackground":"#a9daf0","editor.findRangeHighlightBorder":"#04a5e533","editor.focusedStackFrameHighlightBackground":"#40a02b26","editor.foldBackground":"#04a5e540","editor.foreground":"#4c4f69","editor.hoverHighlightBackground":"#04a5e540","editor.lineHighlightBackground":"#4c4f6912","editor.lineHighlightBorder":"#00000000","editor.rangeHighlightBackground":"#04a5e540","editor.rangeHighlightBorder":"#00000000","editor.selectionBackground":"#7c7f934d","editor.selectionHighlightBackground":"#7c7f9333","editor.selectionHighlightBorder":"#7c7f9333","editor.stackFrameHighlightBackground":"#df8e1d26","editor.wordHighlightBackground":"#7c7f9333","editor.wordHighlightStrongBackground":"#1e66f526","editorBracketHighlight.foreground1":"#d20f39","editorBracketHighlight.foreground2":"#fe640b","editorBracketHighlight.foreground3":"#df8e1d","editorBracketHighlight.foreground4":"#40a02b","editorBracketHighlight.foreground5":"#209fb5","editorBracketHighlight.foreground6":"#8839ef","editorBracketHighlight.unexpectedBracket.foreground":"#e64553","editorBracketMatch.background":"#7c7f931a","editorBracketMatch.border":"#7c7f93","editorCodeLens.foreground":"#8c8fa1","editorCursor.background":"#eff1f5","editorCursor.foreground":"#dc8a78","editorError.background":"#00000000","editorError.border":"#00000000","editorError.foreground":"#d20f39","editorGroup.border":"#acb0be","editorGroup.dropBackground":"#8839ef33","editorGroup.emptyBackground":"#eff1f5","editorGroupHeader.tabsBackground":"#dce0e8","editorGutter.addedBackground":"#40a02b","editorGutter.background":"#eff1f5","editorGutter.commentGlyphForeground":"#8839ef","editorGutter.commentRangeForeground":"#ccd0da","editorGutter.deletedBackground":"#d20f39","editorGutter.foldingControlForeground":"#7c7f93","editorGutter.modifiedBackground":"#df8e1d","editorHoverWidget.background":"#e6e9ef","editorHoverWidget.border":"#acb0be","editorHoverWidget.foreground":"#4c4f69","editorIndentGuide.activeBackground":"#acb0be","editorIndentGuide.background":"#bcc0cc","editorInfo.background":"#00000000","editorInfo.border":"#00000000","editorInfo.foreground":"#1e66f5","editorInlayHint.background":"#e6e9efbf","editorInlayHint.foreground":"#acb0be","editorInlayHint.parameterBackground":"#e6e9efbf","editorInlayHint.parameterForeground":"#6c6f85","editorInlayHint.typeBackground":"#e6e9efbf","editorInlayHint.typeForeground":"#5c5f77","editorLightBulb.foreground":"#df8e1d","editorLineNumber.activeForeground":"#8839ef","editorLineNumber.foreground":"#8c8fa1","editorLink.activeForeground":"#8839ef","editorMarkerNavigation.background":"#e6e9ef","editorMarkerNavigationError.background":"#d20f39","editorMarkerNavigationInfo.background":"#1e66f5","editorMarkerNavigationWarning.background":"#fe640b","editorOverviewRuler.background":"#e6e9ef","editorOverviewRuler.border":"#4c4f6912","editorOverviewRuler.modifiedForeground":"#df8e1d","editorRuler.foreground":"#acb0be","editorStickyScrollHover.background":"#ccd0da","editorSuggestWidget.background":"#e6e9ef","editorSuggestWidget.border":"#acb0be","editorSuggestWidget.foreground":"#4c4f69","editorSuggestWidget.highlightForeground":"#8839ef","editorSuggestWidget.selectedBackground":"#ccd0da","editorWarning.background":"#00000000","editorWarning.border":"#00000000","editorWarning.foreground":"#fe640b","editorWhitespace.foreground":"#7c7f9366","editorWidget.background":"#e6e9ef","editorWidget.foreground":"#4c4f69","editorWidget.resizeBorder":"#acb0be","errorForeground":"#d20f39","errorLens.errorBackground":"#d20f3926","errorLens.errorBackgroundLight":"#d20f3926","errorLens.errorForeground":"#d20f39","errorLens.errorForegroundLight":"#d20f39","errorLens.errorMessageBackground":"#d20f3926","errorLens.hintBackground":"#40a02b26","errorLens.hintBackgroundLight":"#40a02b26","errorLens.hintForeground":"#40a02b","errorLens.hintForegroundLight":"#40a02b","errorLens.hintMessageBackground":"#40a02b26","errorLens.infoBackground":"#1e66f526","errorLens.infoBackgroundLight":"#1e66f526","errorLens.infoForeground":"#1e66f5","errorLens.infoForegroundLight":"#1e66f5","errorLens.infoMessageBackground":"#1e66f526","errorLens.statusBarErrorForeground":"#d20f39","errorLens.statusBarHintForeground":"#40a02b","errorLens.statusBarIconErrorForeground":"#d20f39","errorLens.statusBarIconWarningForeground":"#fe640b","errorLens.statusBarInfoForeground":"#1e66f5","errorLens.statusBarWarningForeground":"#fe640b","errorLens.warningBackground":"#fe640b26","errorLens.warningBackgroundLight":"#fe640b26","errorLens.warningForeground":"#fe640b","errorLens.warningForegroundLight":"#fe640b","errorLens.warningMessageBackground":"#fe640b26","extensionBadge.remoteBackground":"#1e66f5","extensionBadge.remoteForeground":"#dce0e8","extensionButton.prominentBackground":"#8839ef","extensionButton.prominentForeground":"#dce0e8","extensionButton.prominentHoverBackground":"#9c5af2","extensionButton.separator":"#eff1f5","extensionIcon.preReleaseForeground":"#acb0be","extensionIcon.sponsorForeground":"#ea76cb","extensionIcon.starForeground":"#df8e1d","extensionIcon.verifiedForeground":"#40a02b","focusBorder":"#8839ef","foreground":"#4c4f69","gitDecoration.addedResourceForeground":"#40a02b","gitDecoration.conflictingResourceForeground":"#8839ef","gitDecoration.deletedResourceForeground":"#d20f39","gitDecoration.ignoredResourceForeground":"#9ca0b0","gitDecoration.modifiedResourceForeground":"#df8e1d","gitDecoration.stageDeletedResourceForeground":"#d20f39","gitDecoration.stageModifiedResourceForeground":"#df8e1d","gitDecoration.submoduleResourceForeground":"#1e66f5","gitDecoration.untrackedResourceForeground":"#40a02b","gitlens.closedAutolinkedIssueIconColor":"#8839ef","gitlens.closedPullRequestIconColor":"#d20f39","gitlens.decorations.branchAheadForegroundColor":"#40a02b","gitlens.decorations.branchBehindForegroundColor":"#fe640b","gitlens.decorations.branchDivergedForegroundColor":"#df8e1d","gitlens.decorations.branchMissingUpstreamForegroundColor":"#fe640b","gitlens.decorations.branchUnpublishedForegroundColor":"#40a02b","gitlens.decorations.statusMergingOrRebasingConflictForegroundColor":"#e64553","gitlens.decorations.statusMergingOrRebasingForegroundColor":"#df8e1d","gitlens.decorations.workspaceCurrentForegroundColor":"#8839ef","gitlens.decorations.workspaceRepoMissingForegroundColor":"#6c6f85","gitlens.decorations.workspaceRepoOpenForegroundColor":"#8839ef","gitlens.decorations.worktreeHasUncommittedChangesForegroundColor":"#fe640b","gitlens.decorations.worktreeMissingForegroundColor":"#e64553","gitlens.graphChangesColumnAddedColor":"#40a02b","gitlens.graphChangesColumnDeletedColor":"#d20f39","gitlens.graphLane10Color":"#ea76cb","gitlens.graphLane1Color":"#8839ef","gitlens.graphLane2Color":"#df8e1d","gitlens.graphLane3Color":"#1e66f5","gitlens.graphLane4Color":"#dd7878","gitlens.graphLane5Color":"#40a02b","gitlens.graphLane6Color":"#7287fd","gitlens.graphLane7Color":"#dc8a78","gitlens.graphLane8Color":"#d20f39","gitlens.graphLane9Color":"#179299","gitlens.graphMinimapMarkerHeadColor":"#40a02b","gitlens.graphMinimapMarkerHighlightsColor":"#df8e1d","gitlens.graphMinimapMarkerLocalBranchesColor":"#1e66f5","gitlens.graphMinimapMarkerRemoteBranchesColor":"#0b57ef","gitlens.graphMinimapMarkerStashesColor":"#8839ef","gitlens.graphMinimapMarkerTagsColor":"#dd7878","gitlens.graphMinimapMarkerUpstreamColor":"#388c26","gitlens.graphScrollMarkerHeadColor":"#40a02b","gitlens.graphScrollMarkerHighlightsColor":"#df8e1d","gitlens.graphScrollMarkerLocalBranchesColor":"#1e66f5","gitlens.graphScrollMarkerRemoteBranchesColor":"#0b57ef","gitlens.graphScrollMarkerStashesColor":"#8839ef","gitlens.graphScrollMarkerTagsColor":"#dd7878","gitlens.graphScrollMarkerUpstreamColor":"#388c26","gitlens.gutterBackgroundColor":"#ccd0da4d","gitlens.gutterForegroundColor":"#4c4f69","gitlens.gutterUncommittedForegroundColor":"#8839ef","gitlens.lineHighlightBackgroundColor":"#8839ef26","gitlens.lineHighlightOverviewRulerColor":"#8839efcc","gitlens.mergedPullRequestIconColor":"#8839ef","gitlens.openAutolinkedIssueIconColor":"#40a02b","gitlens.openPullRequestIconColor":"#40a02b","gitlens.trailingLineBackgroundColor":"#00000000","gitlens.trailingLineForegroundColor":"#4c4f694d","gitlens.unpublishedChangesIconColor":"#40a02b","gitlens.unpublishedCommitIconColor":"#40a02b","gitlens.unpulledChangesIconColor":"#fe640b","icon.foreground":"#8839ef","input.background":"#ccd0da","input.border":"#00000000","input.foreground":"#4c4f69","input.placeholderForeground":"#4c4f6973","inputOption.activeBackground":"#acb0be","inputOption.activeBorder":"#8839ef","inputOption.activeForeground":"#4c4f69","inputValidation.errorBackground":"#d20f39","inputValidation.errorBorder":"#dce0e833","inputValidation.errorForeground":"#dce0e8","inputValidation.infoBackground":"#1e66f5","inputValidation.infoBorder":"#dce0e833","inputValidation.infoForeground":"#dce0e8","inputValidation.warningBackground":"#fe640b","inputValidation.warningBorder":"#dce0e833","inputValidation.warningForeground":"#dce0e8","issues.closed":"#8839ef","issues.newIssueDecoration":"#dc8a78","issues.open":"#40a02b","list.activeSelectionBackground":"#ccd0da","list.activeSelectionForeground":"#4c4f69","list.dropBackground":"#8839ef33","list.focusAndSelectionBackground":"#bcc0cc","list.focusBackground":"#ccd0da","list.focusForeground":"#4c4f69","list.focusOutline":"#00000000","list.highlightForeground":"#8839ef","list.hoverBackground":"#ccd0da80","list.hoverForeground":"#4c4f69","list.inactiveSelectionBackground":"#ccd0da","list.inactiveSelectionForeground":"#4c4f69","list.warningForeground":"#fe640b","listFilterWidget.background":"#bcc0cc","listFilterWidget.noMatchesOutline":"#d20f39","listFilterWidget.outline":"#00000000","menu.background":"#eff1f5","menu.border":"#eff1f580","menu.foreground":"#4c4f69","menu.selectionBackground":"#acb0be","menu.selectionBorder":"#00000000","menu.selectionForeground":"#4c4f69","menu.separatorBackground":"#acb0be","menubar.selectionBackground":"#bcc0cc","menubar.selectionForeground":"#4c4f69","merge.commonContentBackground":"#bcc0cc","merge.commonHeaderBackground":"#acb0be","merge.currentContentBackground":"#40a02b33","merge.currentHeaderBackground":"#40a02b66","merge.incomingContentBackground":"#1e66f533","merge.incomingHeaderBackground":"#1e66f566","minimap.background":"#e6e9ef80","minimap.errorHighlight":"#d20f39bf","minimap.findMatchHighlight":"#04a5e54d","minimap.selectionHighlight":"#acb0bebf","minimap.selectionOccurrenceHighlight":"#acb0bebf","minimap.warningHighlight":"#fe640bbf","minimapGutter.addedBackground":"#40a02bbf","minimapGutter.deletedBackground":"#d20f39bf","minimapGutter.modifiedBackground":"#df8e1dbf","minimapSlider.activeBackground":"#8839ef99","minimapSlider.background":"#8839ef33","minimapSlider.hoverBackground":"#8839ef66","notificationCenter.border":"#8839ef","notificationCenterHeader.background":"#e6e9ef","notificationCenterHeader.foreground":"#4c4f69","notificationLink.foreground":"#1e66f5","notificationToast.border":"#8839ef","notifications.background":"#e6e9ef","notifications.border":"#8839ef","notifications.foreground":"#4c4f69","notificationsErrorIcon.foreground":"#d20f39","notificationsInfoIcon.foreground":"#1e66f5","notificationsWarningIcon.foreground":"#fe640b","panel.background":"#eff1f5","panel.border":"#acb0be","panelSection.border":"#acb0be","panelSection.dropBackground":"#8839ef33","panelTitle.activeBorder":"#8839ef","panelTitle.activeForeground":"#4c4f69","panelTitle.inactiveForeground":"#6c6f85","peekView.border":"#8839ef","peekViewEditor.background":"#e6e9ef","peekViewEditor.matchHighlightBackground":"#04a5e54d","peekViewEditor.matchHighlightBorder":"#00000000","peekViewEditorGutter.background":"#e6e9ef","peekViewResult.background":"#e6e9ef","peekViewResult.fileForeground":"#4c4f69","peekViewResult.lineForeground":"#4c4f69","peekViewResult.matchHighlightBackground":"#04a5e54d","peekViewResult.selectionBackground":"#ccd0da","peekViewResult.selectionForeground":"#4c4f69","peekViewTitle.background":"#eff1f5","peekViewTitleDescription.foreground":"#5c5f77b3","peekViewTitleLabel.foreground":"#4c4f69","pickerGroup.border":"#8839ef","pickerGroup.foreground":"#8839ef","problemsErrorIcon.foreground":"#d20f39","problemsInfoIcon.foreground":"#1e66f5","problemsWarningIcon.foreground":"#fe640b","progressBar.background":"#8839ef","pullRequests.closed":"#d20f39","pullRequests.draft":"#7c7f93","pullRequests.merged":"#8839ef","pullRequests.notification":"#4c4f69","pullRequests.open":"#40a02b","sash.hoverBorder":"#8839ef","scrollbar.shadow":"#dce0e8","scrollbarSlider.activeBackground":"#ccd0da66","scrollbarSlider.background":"#acb0be80","scrollbarSlider.hoverBackground":"#9ca0b0","selection.background":"#8839ef66","settings.dropdownBackground":"#bcc0cc","settings.dropdownListBorder":"#00000000","settings.focusedRowBackground":"#acb0be33","settings.headerForeground":"#4c4f69","settings.modifiedItemIndicator":"#8839ef","settings.numberInputBackground":"#bcc0cc","settings.numberInputBorder":"#00000000","settings.textInputBackground":"#bcc0cc","settings.textInputBorder":"#00000000","sideBar.background":"#e6e9ef","sideBar.border":"#00000000","sideBar.dropBackground":"#8839ef33","sideBar.foreground":"#4c4f69","sideBarSectionHeader.background":"#e6e9ef","sideBarSectionHeader.foreground":"#4c4f69","sideBarTitle.foreground":"#8839ef","statusBar.background":"#dce0e8","statusBar.border":"#00000000","statusBar.debuggingBackground":"#fe640b","statusBar.debuggingBorder":"#00000000","statusBar.debuggingForeground":"#dce0e8","statusBar.foreground":"#4c4f69","statusBar.noFolderBackground":"#dce0e8","statusBar.noFolderBorder":"#00000000","statusBar.noFolderForeground":"#4c4f69","statusBarItem.activeBackground":"#acb0be66","statusBarItem.errorBackground":"#00000000","statusBarItem.errorForeground":"#d20f39","statusBarItem.hoverBackground":"#acb0be33","statusBarItem.prominentBackground":"#00000000","statusBarItem.prominentForeground":"#8839ef","statusBarItem.prominentHoverBackground":"#acb0be33","statusBarItem.remoteBackground":"#1e66f5","statusBarItem.remoteForeground":"#dce0e8","statusBarItem.warningBackground":"#00000000","statusBarItem.warningForeground":"#fe640b","symbolIcon.arrayForeground":"#fe640b","symbolIcon.booleanForeground":"#8839ef","symbolIcon.classForeground":"#df8e1d","symbolIcon.colorForeground":"#ea76cb","symbolIcon.constantForeground":"#fe640b","symbolIcon.constructorForeground":"#7287fd","symbolIcon.enumeratorForeground":"#df8e1d","symbolIcon.enumeratorMemberForeground":"#df8e1d","symbolIcon.eventForeground":"#ea76cb","symbolIcon.fieldForeground":"#4c4f69","symbolIcon.fileForeground":"#8839ef","symbolIcon.folderForeground":"#8839ef","symbolIcon.functionForeground":"#1e66f5","symbolIcon.interfaceForeground":"#df8e1d","symbolIcon.keyForeground":"#179299","symbolIcon.keywordForeground":"#8839ef","symbolIcon.methodForeground":"#1e66f5","symbolIcon.moduleForeground":"#4c4f69","symbolIcon.namespaceForeground":"#df8e1d","symbolIcon.nullForeground":"#e64553","symbolIcon.numberForeground":"#fe640b","symbolIcon.objectForeground":"#df8e1d","symbolIcon.operatorForeground":"#179299","symbolIcon.packageForeground":"#dd7878","symbolIcon.propertyForeground":"#e64553","symbolIcon.referenceForeground":"#df8e1d","symbolIcon.snippetForeground":"#dd7878","symbolIcon.stringForeground":"#40a02b","symbolIcon.structForeground":"#179299","symbolIcon.textForeground":"#4c4f69","symbolIcon.typeParameterForeground":"#e64553","symbolIcon.unitForeground":"#4c4f69","symbolIcon.variableForeground":"#4c4f69","tab.activeBackground":"#eff1f5","tab.activeBorder":"#00000000","tab.activeBorderTop":"#8839ef","tab.activeForeground":"#8839ef","tab.activeModifiedBorder":"#df8e1d","tab.border":"#e6e9ef","tab.hoverBackground":"#ffffff","tab.hoverBorder":"#00000000","tab.hoverForeground":"#8839ef","tab.inactiveBackground":"#e6e9ef","tab.inactiveForeground":"#9ca0b0","tab.inactiveModifiedBorder":"#df8e1d4d","tab.lastPinnedBorder":"#8839ef","tab.unfocusedActiveBackground":"#e6e9ef","tab.unfocusedActiveBorder":"#00000000","tab.unfocusedActiveBorderTop":"#8839ef4d","tab.unfocusedInactiveBackground":"#d6dbe5","table.headerBackground":"#ccd0da","table.headerForeground":"#4c4f69","terminal.ansiBlack":"#5c5f77","terminal.ansiBlue":"#1e66f5","terminal.ansiBrightBlack":"#6c6f85","terminal.ansiBrightBlue":"#456eff","terminal.ansiBrightCyan":"#2d9fa8","terminal.ansiBrightGreen":"#49af3d","terminal.ansiBrightMagenta":"#fe85d8","terminal.ansiBrightRed":"#de293e","terminal.ansiBrightWhite":"#bcc0cc","terminal.ansiBrightYellow":"#eea02d","terminal.ansiCyan":"#179299","terminal.ansiGreen":"#40a02b","terminal.ansiMagenta":"#ea76cb","terminal.ansiRed":"#d20f39","terminal.ansiWhite":"#acb0be","terminal.ansiYellow":"#df8e1d","terminal.border":"#acb0be","terminal.dropBackground":"#8839ef33","terminal.foreground":"#4c4f69","terminal.inactiveSelectionBackground":"#acb0be80","terminal.selectionBackground":"#acb0be","terminal.tab.activeBorder":"#8839ef","terminalCommandDecoration.defaultBackground":"#acb0be","terminalCommandDecoration.errorBackground":"#d20f39","terminalCommandDecoration.successBackground":"#40a02b","terminalCursor.background":"#eff1f5","terminalCursor.foreground":"#dc8a78","textBlockQuote.background":"#e6e9ef","textBlockQuote.border":"#dce0e8","textCodeBlock.background":"#eff1f5","textLink.activeForeground":"#04a5e5","textLink.foreground":"#1e66f5","textPreformat.foreground":"#4c4f69","textSeparator.foreground":"#8839ef","titleBar.activeBackground":"#dce0e8","titleBar.activeForeground":"#4c4f69","titleBar.border":"#00000000","titleBar.inactiveBackground":"#dce0e8","titleBar.inactiveForeground":"#4c4f6980","tree.inactiveIndentGuidesStroke":"#bcc0cc","tree.indentGuidesStroke":"#7c7f93","walkThrough.embeddedEditorBackground":"#eff1f54d","welcomePage.progress.background":"#dce0e8","welcomePage.progress.foreground":"#8839ef","welcomePage.tileBackground":"#e6e9ef","widget.shadow":"#e6e9ef80","window.activeBorder":"#00000000","window.inactiveBorder":"#00000000"},"displayName":"Catppuccin Latte","name":"catppuccin-latte","semanticHighlighting":true,"semanticTokenColors":{"boolean":{"foreground":"#fe640b"},"builtinAttribute.attribute.library:rust":{"foreground":"#1e66f5"},"class.builtin:python":{"foreground":"#8839ef"},"class:python":{"foreground":"#df8e1d"},"constant.builtin.readonly:nix":{"foreground":"#8839ef"},"enumMember":{"foreground":"#179299"},"function.decorator:python":{"foreground":"#fe640b"},"generic.attribute:rust":{"foreground":"#4c4f69"},"heading":{"foreground":"#d20f39"},"number":{"foreground":"#fe640b"},"pol":{"foreground":"#dd7878"},"property.readonly:javascript":{"foreground":"#4c4f69"},"property.readonly:javascriptreact":{"foreground":"#4c4f69"},"property.readonly:typescript":{"foreground":"#4c4f69"},"property.readonly:typescriptreact":{"foreground":"#4c4f69"},"selfKeyword":{"foreground":"#d20f39"},"text.emph":{"fontStyle":"italic","foreground":"#d20f39"},"text.math":{"foreground":"#dd7878"},"text.strong":{"fontStyle":"bold","foreground":"#d20f39"},"tomlArrayKey":{"fontStyle":"","foreground":"#1e66f5"},"tomlTableKey":{"fontStyle":"","foreground":"#1e66f5"},"type.defaultLibrary:go":{"foreground":"#8839ef"},"variable.defaultLibrary":{"foreground":"#e64553"},"variable.readonly.defaultLibrary:go":{"foreground":"#8839ef"},"variable.readonly:javascript":{"foreground":"#4c4f69"},"variable.readonly:javascriptreact":{"foreground":"#4c4f69"},"variable.readonly:scala":{"foreground":"#4c4f69"},"variable.readonly:typescript":{"foreground":"#4c4f69"},"variable.readonly:typescriptreact":{"foreground":"#4c4f69"},"variable.typeHint:python":{"foreground":"#df8e1d"}},"tokenColors":[{"scope":["text","source","variable.other.readwrite","punctuation.definition.variable"],"settings":{"foreground":"#4c4f69"}},{"scope":"punctuation","settings":{"fontStyle":"","foreground":"#7c7f93"}},{"scope":["comment","punctuation.definition.comment"],"settings":{"fontStyle":"italic","foreground":"#9ca0b0"}},{"scope":["string","punctuation.definition.string"],"settings":{"foreground":"#40a02b"}},{"scope":"constant.character.escape","settings":{"foreground":"#ea76cb"}},{"scope":["constant.numeric","variable.other.constant","entity.name.constant","constant.language.boolean","constant.language.false","constant.language.true","keyword.other.unit.user-defined","keyword.other.unit.suffix.floating-point"],"settings":{"foreground":"#fe640b"}},{"scope":["keyword","keyword.operator.word","keyword.operator.new","variable.language.super","support.type.primitive","storage.type","storage.modifier","punctuation.definition.keyword"],"settings":{"fontStyle":"","foreground":"#8839ef"}},{"scope":"entity.name.tag.documentation","settings":{"foreground":"#8839ef"}},{"scope":["keyword.operator","punctuation.accessor","punctuation.definition.generic","meta.function.closure punctuation.section.parameters","punctuation.definition.tag","punctuation.separator.key-value"],"settings":{"foreground":"#179299"}},{"scope":["entity.name.function","meta.function-call.method","support.function","support.function.misc","variable.function"],"settings":{"fontStyle":"italic","foreground":"#1e66f5"}},{"scope":["entity.name.class","entity.other.inherited-class","support.class","meta.function-call.constructor","entity.name.struct"],"settings":{"fontStyle":"italic","foreground":"#df8e1d"}},{"scope":"entity.name.enum","settings":{"fontStyle":"italic","foreground":"#df8e1d"}},{"scope":["meta.enum variable.other.readwrite","variable.other.enummember"],"settings":{"foreground":"#179299"}},{"scope":"meta.property.object","settings":{"foreground":"#179299"}},{"scope":["meta.type","meta.type-alias","support.type","entity.name.type"],"settings":{"fontStyle":"italic","foreground":"#df8e1d"}},{"scope":["meta.annotation variable.function","meta.annotation variable.annotation.function","meta.annotation punctuation.definition.annotation","meta.decorator","punctuation.decorator"],"settings":{"foreground":"#fe640b"}},{"scope":["variable.parameter","meta.function.parameters"],"settings":{"fontStyle":"italic","foreground":"#e64553"}},{"scope":["constant.language","support.function.builtin"],"settings":{"foreground":"#d20f39"}},{"scope":"entity.other.attribute-name.documentation","settings":{"foreground":"#d20f39"}},{"scope":["keyword.control.directive","punctuation.definition.directive"],"settings":{"foreground":"#df8e1d"}},{"scope":"punctuation.definition.typeparameters","settings":{"foreground":"#04a5e5"}},{"scope":"entity.name.namespace","settings":{"foreground":"#df8e1d"}},{"scope":"support.type.property-name.css","settings":{"fontStyle":"","foreground":"#1e66f5"}},{"scope":["variable.language.this","variable.language.this punctuation.definition.variable"],"settings":{"foreground":"#d20f39"}},{"scope":"variable.object.property","settings":{"foreground":"#4c4f69"}},{"scope":["string.template variable","string variable"],"settings":{"foreground":"#4c4f69"}},{"scope":"keyword.operator.new","settings":{"fontStyle":"bold"}},{"scope":"storage.modifier.specifier.extern.cpp","settings":{"foreground":"#8839ef"}},{"scope":["entity.name.scope-resolution.template.call.cpp","entity.name.scope-resolution.parameter.cpp","entity.name.scope-resolution.cpp","entity.name.scope-resolution.function.definition.cpp"],"settings":{"foreground":"#df8e1d"}},{"scope":"storage.type.class.doxygen","settings":{"fontStyle":""}},{"scope":["storage.modifier.reference.cpp"],"settings":{"foreground":"#179299"}},{"scope":"meta.interpolation.cs","settings":{"foreground":"#4c4f69"}},{"scope":"comment.block.documentation.cs","settings":{"foreground":"#4c4f69"}},{"scope":["source.css entity.other.attribute-name.class.css","entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css"],"settings":{"foreground":"#df8e1d"}},{"scope":"punctuation.separator.operator.css","settings":{"foreground":"#179299"}},{"scope":"source.css entity.other.attribute-name.pseudo-class","settings":{"foreground":"#179299"}},{"scope":"source.css constant.other.unicode-range","settings":{"foreground":"#fe640b"}},{"scope":"source.css variable.parameter.url","settings":{"fontStyle":"","foreground":"#40a02b"}},{"scope":["support.type.vendored.property-name"],"settings":{"foreground":"#04a5e5"}},{"scope":["source.css meta.property-value variable","source.css meta.property-value variable.other.less","source.css meta.property-value variable.other.less punctuation.definition.variable.less","meta.definition.variable.scss"],"settings":{"foreground":"#e64553"}},{"scope":["source.css meta.property-list variable","meta.property-list variable.other.less","meta.property-list variable.other.less punctuation.definition.variable.less"],"settings":{"foreground":"#1e66f5"}},{"scope":"keyword.other.unit.percentage.css","settings":{"foreground":"#fe640b"}},{"scope":"source.css meta.attribute-selector","settings":{"foreground":"#40a02b"}},{"scope":["keyword.other.definition.ini","punctuation.support.type.property-name.json","support.type.property-name.json","punctuation.support.type.property-name.toml","support.type.property-name.toml","entity.name.tag.yaml","punctuation.support.type.property-name.yaml","support.type.property-name.yaml"],"settings":{"fontStyle":"","foreground":"#1e66f5"}},{"scope":["constant.language.json","constant.language.yaml"],"settings":{"foreground":"#fe640b"}},{"scope":["entity.name.type.anchor.yaml","variable.other.alias.yaml"],"settings":{"fontStyle":"","foreground":"#df8e1d"}},{"scope":["support.type.property-name.table","entity.name.section.group-title.ini"],"settings":{"foreground":"#df8e1d"}},{"scope":"constant.other.time.datetime.offset.toml","settings":{"foreground":"#ea76cb"}},{"scope":["punctuation.definition.anchor.yaml","punctuation.definition.alias.yaml"],"settings":{"foreground":"#ea76cb"}},{"scope":"entity.other.document.begin.yaml","settings":{"foreground":"#ea76cb"}},{"scope":"markup.changed.diff","settings":{"foreground":"#fe640b"}},{"scope":["meta.diff.header.from-file","meta.diff.header.to-file","punctuation.definition.from-file.diff","punctuation.definition.to-file.diff"],"settings":{"foreground":"#1e66f5"}},{"scope":"markup.inserted.diff","settings":{"foreground":"#40a02b"}},{"scope":"markup.deleted.diff","settings":{"foreground":"#d20f39"}},{"scope":["variable.other.env"],"settings":{"foreground":"#1e66f5"}},{"scope":["string.quoted variable.other.env"],"settings":{"foreground":"#4c4f69"}},{"scope":"support.function.builtin.gdscript","settings":{"foreground":"#1e66f5"}},{"scope":"constant.language.gdscript","settings":{"foreground":"#fe640b"}},{"scope":"comment meta.annotation.go","settings":{"foreground":"#e64553"}},{"scope":"comment meta.annotation.parameters.go","settings":{"foreground":"#fe640b"}},{"scope":"constant.language.go","settings":{"foreground":"#fe640b"}},{"scope":"variable.graphql","settings":{"foreground":"#4c4f69"}},{"scope":"string.unquoted.alias.graphql","settings":{"foreground":"#dd7878"}},{"scope":"constant.character.enum.graphql","settings":{"foreground":"#179299"}},{"scope":"meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql","settings":{"foreground":"#dd7878"}},{"scope":["keyword.other.doctype","meta.tag.sgml.doctype punctuation.definition.tag","meta.tag.metadata.doctype entity.name.tag","meta.tag.metadata.doctype punctuation.definition.tag"],"settings":{"foreground":"#8839ef"}},{"scope":["entity.name.tag"],"settings":{"fontStyle":"","foreground":"#1e66f5"}},{"scope":["text.html constant.character.entity","text.html constant.character.entity punctuation","constant.character.entity.xml","constant.character.entity.xml punctuation","constant.character.entity.js.jsx","constant.charactger.entity.js.jsx punctuation","constant.character.entity.tsx","constant.character.entity.tsx punctuation"],"settings":{"foreground":"#d20f39"}},{"scope":["entity.other.attribute-name"],"settings":{"foreground":"#df8e1d"}},{"scope":["support.class.component","support.class.component.jsx","support.class.component.tsx","support.class.component.vue"],"settings":{"fontStyle":"","foreground":"#ea76cb"}},{"scope":["punctuation.definition.annotation","storage.type.annotation"],"settings":{"foreground":"#fe640b"}},{"scope":"constant.other.enum.java","settings":{"foreground":"#179299"}},{"scope":"storage.modifier.import.java","settings":{"foreground":"#4c4f69"}},{"scope":"comment.block.javadoc.java keyword.other.documentation.javadoc.java","settings":{"fontStyle":""}},{"scope":"meta.export variable.other.readwrite.js","settings":{"foreground":"#e64553"}},{"scope":["variable.other.constant.js","variable.other.constant.ts","variable.other.property.js","variable.other.property.ts"],"settings":{"foreground":"#4c4f69"}},{"scope":["variable.other.jsdoc","comment.block.documentation variable.other"],"settings":{"fontStyle":"","foreground":"#e64553"}},{"scope":"storage.type.class.jsdoc","settings":{"fontStyle":""}},{"scope":"support.type.object.console.js","settings":{"foreground":"#4c4f69"}},{"scope":["support.constant.node","support.type.object.module.js"],"settings":{"foreground":"#8839ef"}},{"scope":"storage.modifier.implements","settings":{"foreground":"#8839ef"}},{"scope":["constant.language.null.js","constant.language.null.ts","constant.language.undefined.js","constant.language.undefined.ts","support.type.builtin.ts"],"settings":{"foreground":"#8839ef"}},{"scope":"variable.parameter.generic","settings":{"foreground":"#df8e1d"}},{"scope":["keyword.declaration.function.arrow.js","storage.type.function.arrow.ts"],"settings":{"foreground":"#179299"}},{"scope":"punctuation.decorator.ts","settings":{"fontStyle":"italic","foreground":"#1e66f5"}},{"scope":["keyword.operator.expression.in.js","keyword.operator.expression.in.ts","keyword.operator.expression.infer.ts","keyword.operator.expression.instanceof.js","keyword.operator.expression.instanceof.ts","keyword.operator.expression.is","keyword.operator.expression.keyof.ts","keyword.operator.expression.of.js","keyword.operator.expression.of.ts","keyword.operator.expression.typeof.ts"],"settings":{"foreground":"#8839ef"}},{"scope":"support.function.macro.julia","settings":{"fontStyle":"italic","foreground":"#179299"}},{"scope":"constant.language.julia","settings":{"foreground":"#fe640b"}},{"scope":"constant.other.symbol.julia","settings":{"foreground":"#e64553"}},{"scope":"text.tex keyword.control.preamble","settings":{"foreground":"#179299"}},{"scope":"text.tex support.function.be","settings":{"foreground":"#04a5e5"}},{"scope":"constant.other.general.math.tex","settings":{"foreground":"#dd7878"}},{"scope":"variable.language.liquid","settings":{"foreground":"#ea76cb"}},{"scope":"comment.line.double-dash.documentation.lua storage.type.annotation.lua","settings":{"fontStyle":"","foreground":"#8839ef"}},{"scope":["comment.line.double-dash.documentation.lua entity.name.variable.lua","comment.line.double-dash.documentation.lua variable.lua"],"settings":{"foreground":"#4c4f69"}},{"scope":["heading.1.markdown punctuation.definition.heading.markdown","heading.1.markdown","heading.1.quarto punctuation.definition.heading.quarto","heading.1.quarto","markup.heading.atx.1.mdx","markup.heading.atx.1.mdx punctuation.definition.heading.mdx","markup.heading.setext.1.markdown","markup.heading.heading-0.asciidoc"],"settings":{"foreground":"#d20f39"}},{"scope":["heading.2.markdown punctuation.definition.heading.markdown","heading.2.markdown","heading.2.quarto punctuation.definition.heading.quarto","heading.2.quarto","markup.heading.atx.2.mdx","markup.heading.atx.2.mdx punctuation.definition.heading.mdx","markup.heading.setext.2.markdown","markup.heading.heading-1.asciidoc"],"settings":{"foreground":"#fe640b"}},{"scope":["heading.3.markdown punctuation.definition.heading.markdown","heading.3.markdown","heading.3.quarto punctuation.definition.heading.quarto","heading.3.quarto","markup.heading.atx.3.mdx","markup.heading.atx.3.mdx punctuation.definition.heading.mdx","markup.heading.heading-2.asciidoc"],"settings":{"foreground":"#df8e1d"}},{"scope":["heading.4.markdown punctuation.definition.heading.markdown","heading.4.markdown","heading.4.quarto punctuation.definition.heading.quarto","heading.4.quarto","markup.heading.atx.4.mdx","markup.heading.atx.4.mdx punctuation.definition.heading.mdx","markup.heading.heading-3.asciidoc"],"settings":{"foreground":"#40a02b"}},{"scope":["heading.5.markdown punctuation.definition.heading.markdown","heading.5.markdown","heading.5.quarto punctuation.definition.heading.quarto","heading.5.quarto","markup.heading.atx.5.mdx","markup.heading.atx.5.mdx punctuation.definition.heading.mdx","markup.heading.heading-4.asciidoc"],"settings":{"foreground":"#1e66f5"}},{"scope":["heading.6.markdown punctuation.definition.heading.markdown","heading.6.markdown","heading.6.quarto punctuation.definition.heading.quarto","heading.6.quarto","markup.heading.atx.6.mdx","markup.heading.atx.6.mdx punctuation.definition.heading.mdx","markup.heading.heading-5.asciidoc"],"settings":{"foreground":"#8839ef"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#d20f39"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#d20f39"}},{"scope":"markup.strikethrough","settings":{"fontStyle":"strikethrough","foreground":"#6c6f85"}},{"scope":["punctuation.definition.link","markup.underline.link"],"settings":{"foreground":"#1e66f5"}},{"scope":["text.html.markdown punctuation.definition.link.title","text.html.quarto punctuation.definition.link.title","string.other.link.title.markdown","string.other.link.title.quarto","markup.link","punctuation.definition.constant.markdown","punctuation.definition.constant.quarto","constant.other.reference.link.markdown","constant.other.reference.link.quarto","markup.substitution.attribute-reference"],"settings":{"foreground":"#7287fd"}},{"scope":["punctuation.definition.raw.markdown","punctuation.definition.raw.quarto","markup.inline.raw.string.markdown","markup.inline.raw.string.quarto","markup.raw.block.markdown","markup.raw.block.quarto"],"settings":{"foreground":"#40a02b"}},{"scope":"fenced_code.block.language","settings":{"foreground":"#04a5e5"}},{"scope":["markup.fenced_code.block punctuation.definition","markup.raw support.asciidoc"],"settings":{"foreground":"#7c7f93"}},{"scope":["markup.quote","punctuation.definition.quote.begin"],"settings":{"foreground":"#ea76cb"}},{"scope":"meta.separator.markdown","settings":{"foreground":"#179299"}},{"scope":["punctuation.definition.list.begin.markdown","punctuation.definition.list.begin.quarto","markup.list.bullet"],"settings":{"foreground":"#179299"}},{"scope":"markup.heading.quarto","settings":{"fontStyle":"bold"}},{"scope":["entity.other.attribute-name.multipart.nix","entity.other.attribute-name.single.nix"],"settings":{"foreground":"#1e66f5"}},{"scope":"variable.parameter.name.nix","settings":{"fontStyle":"","foreground":"#4c4f69"}},{"scope":"meta.embedded variable.parameter.name.nix","settings":{"fontStyle":"","foreground":"#7287fd"}},{"scope":"string.unquoted.path.nix","settings":{"fontStyle":"","foreground":"#ea76cb"}},{"scope":["support.attribute.builtin","meta.attribute.php"],"settings":{"foreground":"#df8e1d"}},{"scope":"meta.function.parameters.php punctuation.definition.variable.php","settings":{"foreground":"#e64553"}},{"scope":"constant.language.php","settings":{"foreground":"#8839ef"}},{"scope":"text.html.php support.function","settings":{"foreground":"#04a5e5"}},{"scope":"keyword.other.phpdoc.php","settings":{"fontStyle":""}},{"scope":["support.variable.magic.python","meta.function-call.arguments.python"],"settings":{"foreground":"#4c4f69"}},{"scope":["support.function.magic.python"],"settings":{"fontStyle":"italic","foreground":"#04a5e5"}},{"scope":["variable.parameter.function.language.special.self.python","variable.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#d20f39"}},{"scope":["keyword.control.flow.python","keyword.operator.logical.python"],"settings":{"foreground":"#8839ef"}},{"scope":"storage.type.function.python","settings":{"foreground":"#8839ef"}},{"scope":["support.token.decorator.python","meta.function.decorator.identifier.python"],"settings":{"foreground":"#04a5e5"}},{"scope":["meta.function-call.python"],"settings":{"foreground":"#1e66f5"}},{"scope":["entity.name.function.decorator.python","punctuation.definition.decorator.python"],"settings":{"fontStyle":"italic","foreground":"#fe640b"}},{"scope":"constant.character.format.placeholder.other.python","settings":{"foreground":"#ea76cb"}},{"scope":["support.type.exception.python","support.function.builtin.python"],"settings":{"foreground":"#fe640b"}},{"scope":["support.type.python"],"settings":{"foreground":"#fe640b"}},{"scope":"constant.language.python","settings":{"foreground":"#8839ef"}},{"scope":["meta.indexed-name.python","meta.item-access.python"],"settings":{"fontStyle":"italic","foreground":"#e64553"}},{"scope":"storage.type.string.python","settings":{"fontStyle":"italic","foreground":"#40a02b"}},{"scope":"meta.function.parameters.python","settings":{"fontStyle":""}},{"scope":["string.regexp punctuation.definition.string.begin","string.regexp punctuation.definition.string.end"],"settings":{"foreground":"#ea76cb"}},{"scope":"keyword.control.anchor.regexp","settings":{"foreground":"#8839ef"}},{"scope":"string.regexp.ts","settings":{"foreground":"#4c4f69"}},{"scope":["punctuation.definition.group.regexp","keyword.other.back-reference.regexp"],"settings":{"foreground":"#40a02b"}},{"scope":"punctuation.definition.character-class.regexp","settings":{"foreground":"#df8e1d"}},{"scope":"constant.other.character-class.regexp","settings":{"foreground":"#ea76cb"}},{"scope":"constant.other.character-class.range.regexp","settings":{"foreground":"#dc8a78"}},{"scope":"keyword.operator.quantifier.regexp","settings":{"foreground":"#179299"}},{"scope":"constant.character.numeric.regexp","settings":{"foreground":"#fe640b"}},{"scope":["punctuation.definition.group.no-capture.regexp","meta.assertion.look-ahead.regexp","meta.assertion.negative-look-ahead.regexp"],"settings":{"foreground":"#1e66f5"}},{"scope":["meta.annotation.rust","meta.annotation.rust punctuation","meta.attribute.rust","punctuation.definition.attribute.rust"],"settings":{"fontStyle":"italic","foreground":"#df8e1d"}},{"scope":["meta.attribute.rust string.quoted.double.rust","meta.attribute.rust string.quoted.single.char.rust"],"settings":{"fontStyle":""}},{"scope":["entity.name.function.macro.rules.rust","storage.type.module.rust","storage.modifier.rust","storage.type.struct.rust","storage.type.enum.rust","storage.type.trait.rust","storage.type.union.rust","storage.type.impl.rust","storage.type.rust","storage.type.function.rust","storage.type.type.rust"],"settings":{"fontStyle":"","foreground":"#8839ef"}},{"scope":"entity.name.type.numeric.rust","settings":{"fontStyle":"","foreground":"#8839ef"}},{"scope":"meta.generic.rust","settings":{"foreground":"#fe640b"}},{"scope":"entity.name.impl.rust","settings":{"fontStyle":"italic","foreground":"#df8e1d"}},{"scope":"entity.name.module.rust","settings":{"foreground":"#fe640b"}},{"scope":"entity.name.trait.rust","settings":{"fontStyle":"italic","foreground":"#df8e1d"}},{"scope":"storage.type.source.rust","settings":{"foreground":"#df8e1d"}},{"scope":"entity.name.union.rust","settings":{"foreground":"#df8e1d"}},{"scope":"meta.enum.rust storage.type.source.rust","settings":{"foreground":"#179299"}},{"scope":["support.macro.rust","meta.macro.rust support.function.rust","entity.name.function.macro.rust"],"settings":{"fontStyle":"italic","foreground":"#1e66f5"}},{"scope":["storage.modifier.lifetime.rust","entity.name.type.lifetime"],"settings":{"fontStyle":"italic","foreground":"#1e66f5"}},{"scope":"string.quoted.double.rust constant.other.placeholder.rust","settings":{"foreground":"#ea76cb"}},{"scope":"meta.function.return-type.rust meta.generic.rust storage.type.rust","settings":{"foreground":"#4c4f69"}},{"scope":"meta.function.call.rust","settings":{"foreground":"#1e66f5"}},{"scope":"punctuation.brackets.angle.rust","settings":{"foreground":"#04a5e5"}},{"scope":"constant.other.caps.rust","settings":{"foreground":"#fe640b"}},{"scope":["meta.function.definition.rust variable.other.rust"],"settings":{"foreground":"#e64553"}},{"scope":"meta.function.call.rust variable.other.rust","settings":{"foreground":"#4c4f69"}},{"scope":"variable.language.self.rust","settings":{"foreground":"#d20f39"}},{"scope":["variable.other.metavariable.name.rust","meta.macro.metavariable.rust keyword.operator.macro.dollar.rust"],"settings":{"foreground":"#ea76cb"}},{"scope":["comment.line.shebang","comment.line.shebang punctuation.definition.comment","comment.line.shebang","punctuation.definition.comment.shebang.shell","meta.shebang.shell"],"settings":{"fontStyle":"italic","foreground":"#ea76cb"}},{"scope":"comment.line.shebang constant.language","settings":{"fontStyle":"italic","foreground":"#179299"}},{"scope":["meta.function-call.arguments.shell punctuation.definition.variable.shell","meta.function-call.arguments.shell punctuation.section.interpolation","meta.function-call.arguments.shell punctuation.definition.variable.shell","meta.function-call.arguments.shell punctuation.section.interpolation"],"settings":{"foreground":"#d20f39"}},{"scope":"meta.string meta.interpolation.parameter.shell variable.other.readwrite","settings":{"fontStyle":"italic","foreground":"#fe640b"}},{"scope":["source.shell punctuation.section.interpolation","punctuation.definition.evaluation.backticks.shell"],"settings":{"foreground":"#179299"}},{"scope":"entity.name.tag.heredoc.shell","settings":{"foreground":"#8839ef"}},{"scope":"string.quoted.double.shell variable.other.normal.shell","settings":{"foreground":"#4c4f69"}}],"type":"light"}'))});var VP={};x(VP,{default:()=>Zse});var Zse,XP=_(()=>{Zse=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBackground":"#00000000","activityBar.activeBorder":"#00000000","activityBar.activeFocusBorder":"#00000000","activityBar.background":"#181926","activityBar.border":"#00000000","activityBar.dropBorder":"#c6a0f633","activityBar.foreground":"#c6a0f6","activityBar.inactiveForeground":"#6e738d","activityBarBadge.background":"#c6a0f6","activityBarBadge.foreground":"#181926","activityBarTop.activeBorder":"#00000000","activityBarTop.dropBorder":"#c6a0f633","activityBarTop.foreground":"#c6a0f6","activityBarTop.inactiveForeground":"#6e738d","badge.background":"#494d64","badge.foreground":"#cad3f5","banner.background":"#494d64","banner.foreground":"#cad3f5","banner.iconForeground":"#cad3f5","breadcrumb.activeSelectionForeground":"#c6a0f6","breadcrumb.background":"#24273a","breadcrumb.focusForeground":"#c6a0f6","breadcrumb.foreground":"#cad3f5cc","breadcrumbPicker.background":"#1e2030","button.background":"#c6a0f6","button.border":"#00000000","button.foreground":"#181926","button.hoverBackground":"#dac1f9","button.secondaryBackground":"#5b6078","button.secondaryBorder":"#c6a0f6","button.secondaryForeground":"#cad3f5","button.secondaryHoverBackground":"#6a708c","button.separator":"#00000000","charts.blue":"#8aadf4","charts.foreground":"#cad3f5","charts.green":"#a6da95","charts.lines":"#b8c0e0","charts.orange":"#f5a97f","charts.purple":"#c6a0f6","charts.red":"#ed8796","charts.yellow":"#eed49f","checkbox.background":"#494d64","checkbox.border":"#00000000","checkbox.foreground":"#c6a0f6","commandCenter.activeBackground":"#5b607833","commandCenter.activeBorder":"#c6a0f6","commandCenter.activeForeground":"#c6a0f6","commandCenter.background":"#1e2030","commandCenter.border":"#00000000","commandCenter.foreground":"#b8c0e0","commandCenter.inactiveBorder":"#00000000","commandCenter.inactiveForeground":"#b8c0e0","debugConsole.errorForeground":"#ed8796","debugConsole.infoForeground":"#8aadf4","debugConsole.sourceForeground":"#f4dbd6","debugConsole.warningForeground":"#f5a97f","debugConsoleInputIcon.foreground":"#cad3f5","debugExceptionWidget.background":"#181926","debugExceptionWidget.border":"#c6a0f6","debugIcon.breakpointCurrentStackframeForeground":"#5b6078","debugIcon.breakpointDisabledForeground":"#ed879699","debugIcon.breakpointForeground":"#ed8796","debugIcon.breakpointStackframeForeground":"#5b6078","debugIcon.breakpointUnverifiedForeground":"#a47487","debugIcon.continueForeground":"#a6da95","debugIcon.disconnectForeground":"#5b6078","debugIcon.pauseForeground":"#8aadf4","debugIcon.restartForeground":"#8bd5ca","debugIcon.startForeground":"#a6da95","debugIcon.stepBackForeground":"#5b6078","debugIcon.stepIntoForeground":"#cad3f5","debugIcon.stepOutForeground":"#cad3f5","debugIcon.stepOverForeground":"#c6a0f6","debugIcon.stopForeground":"#ed8796","debugTokenExpression.boolean":"#c6a0f6","debugTokenExpression.error":"#ed8796","debugTokenExpression.number":"#f5a97f","debugTokenExpression.string":"#a6da95","debugToolBar.background":"#181926","debugToolBar.border":"#00000000","descriptionForeground":"#cad3f5","diffEditor.border":"#5b6078","diffEditor.diagonalFill":"#5b607899","diffEditor.insertedLineBackground":"#a6da9526","diffEditor.insertedTextBackground":"#a6da951a","diffEditor.removedLineBackground":"#ed879626","diffEditor.removedTextBackground":"#ed87961a","diffEditorOverview.insertedForeground":"#a6da95cc","diffEditorOverview.removedForeground":"#ed8796cc","disabledForeground":"#a5adcb","dropdown.background":"#1e2030","dropdown.border":"#c6a0f6","dropdown.foreground":"#cad3f5","dropdown.listBackground":"#5b6078","editor.background":"#24273a","editor.findMatchBackground":"#604456","editor.findMatchBorder":"#ed879633","editor.findMatchHighlightBackground":"#455c6d","editor.findMatchHighlightBorder":"#91d7e333","editor.findRangeHighlightBackground":"#455c6d","editor.findRangeHighlightBorder":"#91d7e333","editor.focusedStackFrameHighlightBackground":"#a6da9526","editor.foldBackground":"#91d7e340","editor.foreground":"#cad3f5","editor.hoverHighlightBackground":"#91d7e340","editor.lineHighlightBackground":"#cad3f512","editor.lineHighlightBorder":"#00000000","editor.rangeHighlightBackground":"#91d7e340","editor.rangeHighlightBorder":"#00000000","editor.selectionBackground":"#939ab740","editor.selectionHighlightBackground":"#939ab733","editor.selectionHighlightBorder":"#939ab733","editor.stackFrameHighlightBackground":"#eed49f26","editor.wordHighlightBackground":"#939ab733","editor.wordHighlightStrongBackground":"#8aadf433","editorBracketHighlight.foreground1":"#ed8796","editorBracketHighlight.foreground2":"#f5a97f","editorBracketHighlight.foreground3":"#eed49f","editorBracketHighlight.foreground4":"#a6da95","editorBracketHighlight.foreground5":"#7dc4e4","editorBracketHighlight.foreground6":"#c6a0f6","editorBracketHighlight.unexpectedBracket.foreground":"#ee99a0","editorBracketMatch.background":"#939ab71a","editorBracketMatch.border":"#939ab7","editorCodeLens.foreground":"#8087a2","editorCursor.background":"#24273a","editorCursor.foreground":"#f4dbd6","editorError.background":"#00000000","editorError.border":"#00000000","editorError.foreground":"#ed8796","editorGroup.border":"#5b6078","editorGroup.dropBackground":"#c6a0f633","editorGroup.emptyBackground":"#24273a","editorGroupHeader.tabsBackground":"#181926","editorGutter.addedBackground":"#a6da95","editorGutter.background":"#24273a","editorGutter.commentGlyphForeground":"#c6a0f6","editorGutter.commentRangeForeground":"#363a4f","editorGutter.deletedBackground":"#ed8796","editorGutter.foldingControlForeground":"#939ab7","editorGutter.modifiedBackground":"#eed49f","editorHoverWidget.background":"#1e2030","editorHoverWidget.border":"#5b6078","editorHoverWidget.foreground":"#cad3f5","editorIndentGuide.activeBackground":"#5b6078","editorIndentGuide.background":"#494d64","editorInfo.background":"#00000000","editorInfo.border":"#00000000","editorInfo.foreground":"#8aadf4","editorInlayHint.background":"#1e2030bf","editorInlayHint.foreground":"#5b6078","editorInlayHint.parameterBackground":"#1e2030bf","editorInlayHint.parameterForeground":"#a5adcb","editorInlayHint.typeBackground":"#1e2030bf","editorInlayHint.typeForeground":"#b8c0e0","editorLightBulb.foreground":"#eed49f","editorLineNumber.activeForeground":"#c6a0f6","editorLineNumber.foreground":"#8087a2","editorLink.activeForeground":"#c6a0f6","editorMarkerNavigation.background":"#1e2030","editorMarkerNavigationError.background":"#ed8796","editorMarkerNavigationInfo.background":"#8aadf4","editorMarkerNavigationWarning.background":"#f5a97f","editorOverviewRuler.background":"#1e2030","editorOverviewRuler.border":"#cad3f512","editorOverviewRuler.modifiedForeground":"#eed49f","editorRuler.foreground":"#5b6078","editorStickyScrollHover.background":"#363a4f","editorSuggestWidget.background":"#1e2030","editorSuggestWidget.border":"#5b6078","editorSuggestWidget.foreground":"#cad3f5","editorSuggestWidget.highlightForeground":"#c6a0f6","editorSuggestWidget.selectedBackground":"#363a4f","editorWarning.background":"#00000000","editorWarning.border":"#00000000","editorWarning.foreground":"#f5a97f","editorWhitespace.foreground":"#939ab766","editorWidget.background":"#1e2030","editorWidget.foreground":"#cad3f5","editorWidget.resizeBorder":"#5b6078","errorForeground":"#ed8796","errorLens.errorBackground":"#ed879626","errorLens.errorBackgroundLight":"#ed879626","errorLens.errorForeground":"#ed8796","errorLens.errorForegroundLight":"#ed8796","errorLens.errorMessageBackground":"#ed879626","errorLens.hintBackground":"#a6da9526","errorLens.hintBackgroundLight":"#a6da9526","errorLens.hintForeground":"#a6da95","errorLens.hintForegroundLight":"#a6da95","errorLens.hintMessageBackground":"#a6da9526","errorLens.infoBackground":"#8aadf426","errorLens.infoBackgroundLight":"#8aadf426","errorLens.infoForeground":"#8aadf4","errorLens.infoForegroundLight":"#8aadf4","errorLens.infoMessageBackground":"#8aadf426","errorLens.statusBarErrorForeground":"#ed8796","errorLens.statusBarHintForeground":"#a6da95","errorLens.statusBarIconErrorForeground":"#ed8796","errorLens.statusBarIconWarningForeground":"#f5a97f","errorLens.statusBarInfoForeground":"#8aadf4","errorLens.statusBarWarningForeground":"#f5a97f","errorLens.warningBackground":"#f5a97f26","errorLens.warningBackgroundLight":"#f5a97f26","errorLens.warningForeground":"#f5a97f","errorLens.warningForegroundLight":"#f5a97f","errorLens.warningMessageBackground":"#f5a97f26","extensionBadge.remoteBackground":"#8aadf4","extensionBadge.remoteForeground":"#181926","extensionButton.prominentBackground":"#c6a0f6","extensionButton.prominentForeground":"#181926","extensionButton.prominentHoverBackground":"#dac1f9","extensionButton.separator":"#24273a","extensionIcon.preReleaseForeground":"#5b6078","extensionIcon.sponsorForeground":"#f5bde6","extensionIcon.starForeground":"#eed49f","extensionIcon.verifiedForeground":"#a6da95","focusBorder":"#c6a0f6","foreground":"#cad3f5","gitDecoration.addedResourceForeground":"#a6da95","gitDecoration.conflictingResourceForeground":"#c6a0f6","gitDecoration.deletedResourceForeground":"#ed8796","gitDecoration.ignoredResourceForeground":"#6e738d","gitDecoration.modifiedResourceForeground":"#eed49f","gitDecoration.stageDeletedResourceForeground":"#ed8796","gitDecoration.stageModifiedResourceForeground":"#eed49f","gitDecoration.submoduleResourceForeground":"#8aadf4","gitDecoration.untrackedResourceForeground":"#a6da95","gitlens.closedAutolinkedIssueIconColor":"#c6a0f6","gitlens.closedPullRequestIconColor":"#ed8796","gitlens.decorations.branchAheadForegroundColor":"#a6da95","gitlens.decorations.branchBehindForegroundColor":"#f5a97f","gitlens.decorations.branchDivergedForegroundColor":"#eed49f","gitlens.decorations.branchMissingUpstreamForegroundColor":"#f5a97f","gitlens.decorations.branchUnpublishedForegroundColor":"#a6da95","gitlens.decorations.statusMergingOrRebasingConflictForegroundColor":"#ee99a0","gitlens.decorations.statusMergingOrRebasingForegroundColor":"#eed49f","gitlens.decorations.workspaceCurrentForegroundColor":"#c6a0f6","gitlens.decorations.workspaceRepoMissingForegroundColor":"#a5adcb","gitlens.decorations.workspaceRepoOpenForegroundColor":"#c6a0f6","gitlens.decorations.worktreeHasUncommittedChangesForegroundColor":"#f5a97f","gitlens.decorations.worktreeMissingForegroundColor":"#ee99a0","gitlens.graphChangesColumnAddedColor":"#a6da95","gitlens.graphChangesColumnDeletedColor":"#ed8796","gitlens.graphLane10Color":"#f5bde6","gitlens.graphLane1Color":"#c6a0f6","gitlens.graphLane2Color":"#eed49f","gitlens.graphLane3Color":"#8aadf4","gitlens.graphLane4Color":"#f0c6c6","gitlens.graphLane5Color":"#a6da95","gitlens.graphLane6Color":"#b7bdf8","gitlens.graphLane7Color":"#f4dbd6","gitlens.graphLane8Color":"#ed8796","gitlens.graphLane9Color":"#8bd5ca","gitlens.graphMinimapMarkerHeadColor":"#a6da95","gitlens.graphMinimapMarkerHighlightsColor":"#eed49f","gitlens.graphMinimapMarkerLocalBranchesColor":"#8aadf4","gitlens.graphMinimapMarkerRemoteBranchesColor":"#739df2","gitlens.graphMinimapMarkerStashesColor":"#c6a0f6","gitlens.graphMinimapMarkerTagsColor":"#f0c6c6","gitlens.graphMinimapMarkerUpstreamColor":"#96d382","gitlens.graphScrollMarkerHeadColor":"#a6da95","gitlens.graphScrollMarkerHighlightsColor":"#eed49f","gitlens.graphScrollMarkerLocalBranchesColor":"#8aadf4","gitlens.graphScrollMarkerRemoteBranchesColor":"#739df2","gitlens.graphScrollMarkerStashesColor":"#c6a0f6","gitlens.graphScrollMarkerTagsColor":"#f0c6c6","gitlens.graphScrollMarkerUpstreamColor":"#96d382","gitlens.gutterBackgroundColor":"#363a4f4d","gitlens.gutterForegroundColor":"#cad3f5","gitlens.gutterUncommittedForegroundColor":"#c6a0f6","gitlens.lineHighlightBackgroundColor":"#c6a0f626","gitlens.lineHighlightOverviewRulerColor":"#c6a0f6cc","gitlens.mergedPullRequestIconColor":"#c6a0f6","gitlens.openAutolinkedIssueIconColor":"#a6da95","gitlens.openPullRequestIconColor":"#a6da95","gitlens.trailingLineBackgroundColor":"#00000000","gitlens.trailingLineForegroundColor":"#cad3f54d","gitlens.unpublishedChangesIconColor":"#a6da95","gitlens.unpublishedCommitIconColor":"#a6da95","gitlens.unpulledChangesIconColor":"#f5a97f","icon.foreground":"#c6a0f6","input.background":"#363a4f","input.border":"#00000000","input.foreground":"#cad3f5","input.placeholderForeground":"#cad3f573","inputOption.activeBackground":"#5b6078","inputOption.activeBorder":"#c6a0f6","inputOption.activeForeground":"#cad3f5","inputValidation.errorBackground":"#ed8796","inputValidation.errorBorder":"#18192633","inputValidation.errorForeground":"#181926","inputValidation.infoBackground":"#8aadf4","inputValidation.infoBorder":"#18192633","inputValidation.infoForeground":"#181926","inputValidation.warningBackground":"#f5a97f","inputValidation.warningBorder":"#18192633","inputValidation.warningForeground":"#181926","issues.closed":"#c6a0f6","issues.newIssueDecoration":"#f4dbd6","issues.open":"#a6da95","list.activeSelectionBackground":"#363a4f","list.activeSelectionForeground":"#cad3f5","list.dropBackground":"#c6a0f633","list.focusAndSelectionBackground":"#494d64","list.focusBackground":"#363a4f","list.focusForeground":"#cad3f5","list.focusOutline":"#00000000","list.highlightForeground":"#c6a0f6","list.hoverBackground":"#363a4f80","list.hoverForeground":"#cad3f5","list.inactiveSelectionBackground":"#363a4f","list.inactiveSelectionForeground":"#cad3f5","list.warningForeground":"#f5a97f","listFilterWidget.background":"#494d64","listFilterWidget.noMatchesOutline":"#ed8796","listFilterWidget.outline":"#00000000","menu.background":"#24273a","menu.border":"#24273a80","menu.foreground":"#cad3f5","menu.selectionBackground":"#5b6078","menu.selectionBorder":"#00000000","menu.selectionForeground":"#cad3f5","menu.separatorBackground":"#5b6078","menubar.selectionBackground":"#494d64","menubar.selectionForeground":"#cad3f5","merge.commonContentBackground":"#494d64","merge.commonHeaderBackground":"#5b6078","merge.currentContentBackground":"#a6da9533","merge.currentHeaderBackground":"#a6da9566","merge.incomingContentBackground":"#8aadf433","merge.incomingHeaderBackground":"#8aadf466","minimap.background":"#1e203080","minimap.errorHighlight":"#ed8796bf","minimap.findMatchHighlight":"#91d7e34d","minimap.selectionHighlight":"#5b6078bf","minimap.selectionOccurrenceHighlight":"#5b6078bf","minimap.warningHighlight":"#f5a97fbf","minimapGutter.addedBackground":"#a6da95bf","minimapGutter.deletedBackground":"#ed8796bf","minimapGutter.modifiedBackground":"#eed49fbf","minimapSlider.activeBackground":"#c6a0f699","minimapSlider.background":"#c6a0f633","minimapSlider.hoverBackground":"#c6a0f666","notificationCenter.border":"#c6a0f6","notificationCenterHeader.background":"#1e2030","notificationCenterHeader.foreground":"#cad3f5","notificationLink.foreground":"#8aadf4","notificationToast.border":"#c6a0f6","notifications.background":"#1e2030","notifications.border":"#c6a0f6","notifications.foreground":"#cad3f5","notificationsErrorIcon.foreground":"#ed8796","notificationsInfoIcon.foreground":"#8aadf4","notificationsWarningIcon.foreground":"#f5a97f","panel.background":"#24273a","panel.border":"#5b6078","panelSection.border":"#5b6078","panelSection.dropBackground":"#c6a0f633","panelTitle.activeBorder":"#c6a0f6","panelTitle.activeForeground":"#cad3f5","panelTitle.inactiveForeground":"#a5adcb","peekView.border":"#c6a0f6","peekViewEditor.background":"#1e2030","peekViewEditor.matchHighlightBackground":"#91d7e34d","peekViewEditor.matchHighlightBorder":"#00000000","peekViewEditorGutter.background":"#1e2030","peekViewResult.background":"#1e2030","peekViewResult.fileForeground":"#cad3f5","peekViewResult.lineForeground":"#cad3f5","peekViewResult.matchHighlightBackground":"#91d7e34d","peekViewResult.selectionBackground":"#363a4f","peekViewResult.selectionForeground":"#cad3f5","peekViewTitle.background":"#24273a","peekViewTitleDescription.foreground":"#b8c0e0b3","peekViewTitleLabel.foreground":"#cad3f5","pickerGroup.border":"#c6a0f6","pickerGroup.foreground":"#c6a0f6","problemsErrorIcon.foreground":"#ed8796","problemsInfoIcon.foreground":"#8aadf4","problemsWarningIcon.foreground":"#f5a97f","progressBar.background":"#c6a0f6","pullRequests.closed":"#ed8796","pullRequests.draft":"#939ab7","pullRequests.merged":"#c6a0f6","pullRequests.notification":"#cad3f5","pullRequests.open":"#a6da95","sash.hoverBorder":"#c6a0f6","scrollbar.shadow":"#181926","scrollbarSlider.activeBackground":"#363a4f66","scrollbarSlider.background":"#5b607880","scrollbarSlider.hoverBackground":"#6e738d","selection.background":"#c6a0f666","settings.dropdownBackground":"#494d64","settings.dropdownListBorder":"#00000000","settings.focusedRowBackground":"#5b607833","settings.headerForeground":"#cad3f5","settings.modifiedItemIndicator":"#c6a0f6","settings.numberInputBackground":"#494d64","settings.numberInputBorder":"#00000000","settings.textInputBackground":"#494d64","settings.textInputBorder":"#00000000","sideBar.background":"#1e2030","sideBar.border":"#00000000","sideBar.dropBackground":"#c6a0f633","sideBar.foreground":"#cad3f5","sideBarSectionHeader.background":"#1e2030","sideBarSectionHeader.foreground":"#cad3f5","sideBarTitle.foreground":"#c6a0f6","statusBar.background":"#181926","statusBar.border":"#00000000","statusBar.debuggingBackground":"#f5a97f","statusBar.debuggingBorder":"#00000000","statusBar.debuggingForeground":"#181926","statusBar.foreground":"#cad3f5","statusBar.noFolderBackground":"#181926","statusBar.noFolderBorder":"#00000000","statusBar.noFolderForeground":"#cad3f5","statusBarItem.activeBackground":"#5b607866","statusBarItem.errorBackground":"#00000000","statusBarItem.errorForeground":"#ed8796","statusBarItem.hoverBackground":"#5b607833","statusBarItem.prominentBackground":"#00000000","statusBarItem.prominentForeground":"#c6a0f6","statusBarItem.prominentHoverBackground":"#5b607833","statusBarItem.remoteBackground":"#8aadf4","statusBarItem.remoteForeground":"#181926","statusBarItem.warningBackground":"#00000000","statusBarItem.warningForeground":"#f5a97f","symbolIcon.arrayForeground":"#f5a97f","symbolIcon.booleanForeground":"#c6a0f6","symbolIcon.classForeground":"#eed49f","symbolIcon.colorForeground":"#f5bde6","symbolIcon.constantForeground":"#f5a97f","symbolIcon.constructorForeground":"#b7bdf8","symbolIcon.enumeratorForeground":"#eed49f","symbolIcon.enumeratorMemberForeground":"#eed49f","symbolIcon.eventForeground":"#f5bde6","symbolIcon.fieldForeground":"#cad3f5","symbolIcon.fileForeground":"#c6a0f6","symbolIcon.folderForeground":"#c6a0f6","symbolIcon.functionForeground":"#8aadf4","symbolIcon.interfaceForeground":"#eed49f","symbolIcon.keyForeground":"#8bd5ca","symbolIcon.keywordForeground":"#c6a0f6","symbolIcon.methodForeground":"#8aadf4","symbolIcon.moduleForeground":"#cad3f5","symbolIcon.namespaceForeground":"#eed49f","symbolIcon.nullForeground":"#ee99a0","symbolIcon.numberForeground":"#f5a97f","symbolIcon.objectForeground":"#eed49f","symbolIcon.operatorForeground":"#8bd5ca","symbolIcon.packageForeground":"#f0c6c6","symbolIcon.propertyForeground":"#ee99a0","symbolIcon.referenceForeground":"#eed49f","symbolIcon.snippetForeground":"#f0c6c6","symbolIcon.stringForeground":"#a6da95","symbolIcon.structForeground":"#8bd5ca","symbolIcon.textForeground":"#cad3f5","symbolIcon.typeParameterForeground":"#ee99a0","symbolIcon.unitForeground":"#cad3f5","symbolIcon.variableForeground":"#cad3f5","tab.activeBackground":"#24273a","tab.activeBorder":"#00000000","tab.activeBorderTop":"#c6a0f6","tab.activeForeground":"#c6a0f6","tab.activeModifiedBorder":"#eed49f","tab.border":"#1e2030","tab.hoverBackground":"#2e324a","tab.hoverBorder":"#00000000","tab.hoverForeground":"#c6a0f6","tab.inactiveBackground":"#1e2030","tab.inactiveForeground":"#6e738d","tab.inactiveModifiedBorder":"#eed49f4d","tab.lastPinnedBorder":"#c6a0f6","tab.unfocusedActiveBackground":"#1e2030","tab.unfocusedActiveBorder":"#00000000","tab.unfocusedActiveBorderTop":"#c6a0f64d","tab.unfocusedInactiveBackground":"#141620","table.headerBackground":"#363a4f","table.headerForeground":"#cad3f5","terminal.ansiBlack":"#494d64","terminal.ansiBlue":"#8aadf4","terminal.ansiBrightBlack":"#5b6078","terminal.ansiBrightBlue":"#78a1f6","terminal.ansiBrightCyan":"#63cbc0","terminal.ansiBrightGreen":"#8ccf7f","terminal.ansiBrightMagenta":"#f2a9dd","terminal.ansiBrightRed":"#ec7486","terminal.ansiBrightWhite":"#b8c0e0","terminal.ansiBrightYellow":"#e1c682","terminal.ansiCyan":"#8bd5ca","terminal.ansiGreen":"#a6da95","terminal.ansiMagenta":"#f5bde6","terminal.ansiRed":"#ed8796","terminal.ansiWhite":"#a5adcb","terminal.ansiYellow":"#eed49f","terminal.border":"#5b6078","terminal.dropBackground":"#c6a0f633","terminal.foreground":"#cad3f5","terminal.inactiveSelectionBackground":"#5b607880","terminal.selectionBackground":"#5b6078","terminal.tab.activeBorder":"#c6a0f6","terminalCommandDecoration.defaultBackground":"#5b6078","terminalCommandDecoration.errorBackground":"#ed8796","terminalCommandDecoration.successBackground":"#a6da95","terminalCursor.background":"#24273a","terminalCursor.foreground":"#f4dbd6","textBlockQuote.background":"#1e2030","textBlockQuote.border":"#181926","textCodeBlock.background":"#24273a","textLink.activeForeground":"#91d7e3","textLink.foreground":"#8aadf4","textPreformat.foreground":"#cad3f5","textSeparator.foreground":"#c6a0f6","titleBar.activeBackground":"#181926","titleBar.activeForeground":"#cad3f5","titleBar.border":"#00000000","titleBar.inactiveBackground":"#181926","titleBar.inactiveForeground":"#cad3f580","tree.inactiveIndentGuidesStroke":"#494d64","tree.indentGuidesStroke":"#939ab7","walkThrough.embeddedEditorBackground":"#24273a4d","welcomePage.progress.background":"#181926","welcomePage.progress.foreground":"#c6a0f6","welcomePage.tileBackground":"#1e2030","widget.shadow":"#1e203080","window.activeBorder":"#00000000","window.inactiveBorder":"#00000000"},"displayName":"Catppuccin Macchiato","name":"catppuccin-macchiato","semanticHighlighting":true,"semanticTokenColors":{"boolean":{"foreground":"#f5a97f"},"builtinAttribute.attribute.library:rust":{"foreground":"#8aadf4"},"class.builtin:python":{"foreground":"#c6a0f6"},"class:python":{"foreground":"#eed49f"},"constant.builtin.readonly:nix":{"foreground":"#c6a0f6"},"enumMember":{"foreground":"#8bd5ca"},"function.decorator:python":{"foreground":"#f5a97f"},"generic.attribute:rust":{"foreground":"#cad3f5"},"heading":{"foreground":"#ed8796"},"number":{"foreground":"#f5a97f"},"pol":{"foreground":"#f0c6c6"},"property.readonly:javascript":{"foreground":"#cad3f5"},"property.readonly:javascriptreact":{"foreground":"#cad3f5"},"property.readonly:typescript":{"foreground":"#cad3f5"},"property.readonly:typescriptreact":{"foreground":"#cad3f5"},"selfKeyword":{"foreground":"#ed8796"},"text.emph":{"fontStyle":"italic","foreground":"#ed8796"},"text.math":{"foreground":"#f0c6c6"},"text.strong":{"fontStyle":"bold","foreground":"#ed8796"},"tomlArrayKey":{"fontStyle":"","foreground":"#8aadf4"},"tomlTableKey":{"fontStyle":"","foreground":"#8aadf4"},"type.defaultLibrary:go":{"foreground":"#c6a0f6"},"variable.defaultLibrary":{"foreground":"#ee99a0"},"variable.readonly.defaultLibrary:go":{"foreground":"#c6a0f6"},"variable.readonly:javascript":{"foreground":"#cad3f5"},"variable.readonly:javascriptreact":{"foreground":"#cad3f5"},"variable.readonly:scala":{"foreground":"#cad3f5"},"variable.readonly:typescript":{"foreground":"#cad3f5"},"variable.readonly:typescriptreact":{"foreground":"#cad3f5"},"variable.typeHint:python":{"foreground":"#eed49f"}},"tokenColors":[{"scope":["text","source","variable.other.readwrite","punctuation.definition.variable"],"settings":{"foreground":"#cad3f5"}},{"scope":"punctuation","settings":{"fontStyle":"","foreground":"#939ab7"}},{"scope":["comment","punctuation.definition.comment"],"settings":{"fontStyle":"italic","foreground":"#6e738d"}},{"scope":["string","punctuation.definition.string"],"settings":{"foreground":"#a6da95"}},{"scope":"constant.character.escape","settings":{"foreground":"#f5bde6"}},{"scope":["constant.numeric","variable.other.constant","entity.name.constant","constant.language.boolean","constant.language.false","constant.language.true","keyword.other.unit.user-defined","keyword.other.unit.suffix.floating-point"],"settings":{"foreground":"#f5a97f"}},{"scope":["keyword","keyword.operator.word","keyword.operator.new","variable.language.super","support.type.primitive","storage.type","storage.modifier","punctuation.definition.keyword"],"settings":{"fontStyle":"","foreground":"#c6a0f6"}},{"scope":"entity.name.tag.documentation","settings":{"foreground":"#c6a0f6"}},{"scope":["keyword.operator","punctuation.accessor","punctuation.definition.generic","meta.function.closure punctuation.section.parameters","punctuation.definition.tag","punctuation.separator.key-value"],"settings":{"foreground":"#8bd5ca"}},{"scope":["entity.name.function","meta.function-call.method","support.function","support.function.misc","variable.function"],"settings":{"fontStyle":"italic","foreground":"#8aadf4"}},{"scope":["entity.name.class","entity.other.inherited-class","support.class","meta.function-call.constructor","entity.name.struct"],"settings":{"fontStyle":"italic","foreground":"#eed49f"}},{"scope":"entity.name.enum","settings":{"fontStyle":"italic","foreground":"#eed49f"}},{"scope":["meta.enum variable.other.readwrite","variable.other.enummember"],"settings":{"foreground":"#8bd5ca"}},{"scope":"meta.property.object","settings":{"foreground":"#8bd5ca"}},{"scope":["meta.type","meta.type-alias","support.type","entity.name.type"],"settings":{"fontStyle":"italic","foreground":"#eed49f"}},{"scope":["meta.annotation variable.function","meta.annotation variable.annotation.function","meta.annotation punctuation.definition.annotation","meta.decorator","punctuation.decorator"],"settings":{"foreground":"#f5a97f"}},{"scope":["variable.parameter","meta.function.parameters"],"settings":{"fontStyle":"italic","foreground":"#ee99a0"}},{"scope":["constant.language","support.function.builtin"],"settings":{"foreground":"#ed8796"}},{"scope":"entity.other.attribute-name.documentation","settings":{"foreground":"#ed8796"}},{"scope":["keyword.control.directive","punctuation.definition.directive"],"settings":{"foreground":"#eed49f"}},{"scope":"punctuation.definition.typeparameters","settings":{"foreground":"#91d7e3"}},{"scope":"entity.name.namespace","settings":{"foreground":"#eed49f"}},{"scope":"support.type.property-name.css","settings":{"fontStyle":"","foreground":"#8aadf4"}},{"scope":["variable.language.this","variable.language.this punctuation.definition.variable"],"settings":{"foreground":"#ed8796"}},{"scope":"variable.object.property","settings":{"foreground":"#cad3f5"}},{"scope":["string.template variable","string variable"],"settings":{"foreground":"#cad3f5"}},{"scope":"keyword.operator.new","settings":{"fontStyle":"bold"}},{"scope":"storage.modifier.specifier.extern.cpp","settings":{"foreground":"#c6a0f6"}},{"scope":["entity.name.scope-resolution.template.call.cpp","entity.name.scope-resolution.parameter.cpp","entity.name.scope-resolution.cpp","entity.name.scope-resolution.function.definition.cpp"],"settings":{"foreground":"#eed49f"}},{"scope":"storage.type.class.doxygen","settings":{"fontStyle":""}},{"scope":["storage.modifier.reference.cpp"],"settings":{"foreground":"#8bd5ca"}},{"scope":"meta.interpolation.cs","settings":{"foreground":"#cad3f5"}},{"scope":"comment.block.documentation.cs","settings":{"foreground":"#cad3f5"}},{"scope":["source.css entity.other.attribute-name.class.css","entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css"],"settings":{"foreground":"#eed49f"}},{"scope":"punctuation.separator.operator.css","settings":{"foreground":"#8bd5ca"}},{"scope":"source.css entity.other.attribute-name.pseudo-class","settings":{"foreground":"#8bd5ca"}},{"scope":"source.css constant.other.unicode-range","settings":{"foreground":"#f5a97f"}},{"scope":"source.css variable.parameter.url","settings":{"fontStyle":"","foreground":"#a6da95"}},{"scope":["support.type.vendored.property-name"],"settings":{"foreground":"#91d7e3"}},{"scope":["source.css meta.property-value variable","source.css meta.property-value variable.other.less","source.css meta.property-value variable.other.less punctuation.definition.variable.less","meta.definition.variable.scss"],"settings":{"foreground":"#ee99a0"}},{"scope":["source.css meta.property-list variable","meta.property-list variable.other.less","meta.property-list variable.other.less punctuation.definition.variable.less"],"settings":{"foreground":"#8aadf4"}},{"scope":"keyword.other.unit.percentage.css","settings":{"foreground":"#f5a97f"}},{"scope":"source.css meta.attribute-selector","settings":{"foreground":"#a6da95"}},{"scope":["keyword.other.definition.ini","punctuation.support.type.property-name.json","support.type.property-name.json","punctuation.support.type.property-name.toml","support.type.property-name.toml","entity.name.tag.yaml","punctuation.support.type.property-name.yaml","support.type.property-name.yaml"],"settings":{"fontStyle":"","foreground":"#8aadf4"}},{"scope":["constant.language.json","constant.language.yaml"],"settings":{"foreground":"#f5a97f"}},{"scope":["entity.name.type.anchor.yaml","variable.other.alias.yaml"],"settings":{"fontStyle":"","foreground":"#eed49f"}},{"scope":["support.type.property-name.table","entity.name.section.group-title.ini"],"settings":{"foreground":"#eed49f"}},{"scope":"constant.other.time.datetime.offset.toml","settings":{"foreground":"#f5bde6"}},{"scope":["punctuation.definition.anchor.yaml","punctuation.definition.alias.yaml"],"settings":{"foreground":"#f5bde6"}},{"scope":"entity.other.document.begin.yaml","settings":{"foreground":"#f5bde6"}},{"scope":"markup.changed.diff","settings":{"foreground":"#f5a97f"}},{"scope":["meta.diff.header.from-file","meta.diff.header.to-file","punctuation.definition.from-file.diff","punctuation.definition.to-file.diff"],"settings":{"foreground":"#8aadf4"}},{"scope":"markup.inserted.diff","settings":{"foreground":"#a6da95"}},{"scope":"markup.deleted.diff","settings":{"foreground":"#ed8796"}},{"scope":["variable.other.env"],"settings":{"foreground":"#8aadf4"}},{"scope":["string.quoted variable.other.env"],"settings":{"foreground":"#cad3f5"}},{"scope":"support.function.builtin.gdscript","settings":{"foreground":"#8aadf4"}},{"scope":"constant.language.gdscript","settings":{"foreground":"#f5a97f"}},{"scope":"comment meta.annotation.go","settings":{"foreground":"#ee99a0"}},{"scope":"comment meta.annotation.parameters.go","settings":{"foreground":"#f5a97f"}},{"scope":"constant.language.go","settings":{"foreground":"#f5a97f"}},{"scope":"variable.graphql","settings":{"foreground":"#cad3f5"}},{"scope":"string.unquoted.alias.graphql","settings":{"foreground":"#f0c6c6"}},{"scope":"constant.character.enum.graphql","settings":{"foreground":"#8bd5ca"}},{"scope":"meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql","settings":{"foreground":"#f0c6c6"}},{"scope":["keyword.other.doctype","meta.tag.sgml.doctype punctuation.definition.tag","meta.tag.metadata.doctype entity.name.tag","meta.tag.metadata.doctype punctuation.definition.tag"],"settings":{"foreground":"#c6a0f6"}},{"scope":["entity.name.tag"],"settings":{"fontStyle":"","foreground":"#8aadf4"}},{"scope":["text.html constant.character.entity","text.html constant.character.entity punctuation","constant.character.entity.xml","constant.character.entity.xml punctuation","constant.character.entity.js.jsx","constant.charactger.entity.js.jsx punctuation","constant.character.entity.tsx","constant.character.entity.tsx punctuation"],"settings":{"foreground":"#ed8796"}},{"scope":["entity.other.attribute-name"],"settings":{"foreground":"#eed49f"}},{"scope":["support.class.component","support.class.component.jsx","support.class.component.tsx","support.class.component.vue"],"settings":{"fontStyle":"","foreground":"#f5bde6"}},{"scope":["punctuation.definition.annotation","storage.type.annotation"],"settings":{"foreground":"#f5a97f"}},{"scope":"constant.other.enum.java","settings":{"foreground":"#8bd5ca"}},{"scope":"storage.modifier.import.java","settings":{"foreground":"#cad3f5"}},{"scope":"comment.block.javadoc.java keyword.other.documentation.javadoc.java","settings":{"fontStyle":""}},{"scope":"meta.export variable.other.readwrite.js","settings":{"foreground":"#ee99a0"}},{"scope":["variable.other.constant.js","variable.other.constant.ts","variable.other.property.js","variable.other.property.ts"],"settings":{"foreground":"#cad3f5"}},{"scope":["variable.other.jsdoc","comment.block.documentation variable.other"],"settings":{"fontStyle":"","foreground":"#ee99a0"}},{"scope":"storage.type.class.jsdoc","settings":{"fontStyle":""}},{"scope":"support.type.object.console.js","settings":{"foreground":"#cad3f5"}},{"scope":["support.constant.node","support.type.object.module.js"],"settings":{"foreground":"#c6a0f6"}},{"scope":"storage.modifier.implements","settings":{"foreground":"#c6a0f6"}},{"scope":["constant.language.null.js","constant.language.null.ts","constant.language.undefined.js","constant.language.undefined.ts","support.type.builtin.ts"],"settings":{"foreground":"#c6a0f6"}},{"scope":"variable.parameter.generic","settings":{"foreground":"#eed49f"}},{"scope":["keyword.declaration.function.arrow.js","storage.type.function.arrow.ts"],"settings":{"foreground":"#8bd5ca"}},{"scope":"punctuation.decorator.ts","settings":{"fontStyle":"italic","foreground":"#8aadf4"}},{"scope":["keyword.operator.expression.in.js","keyword.operator.expression.in.ts","keyword.operator.expression.infer.ts","keyword.operator.expression.instanceof.js","keyword.operator.expression.instanceof.ts","keyword.operator.expression.is","keyword.operator.expression.keyof.ts","keyword.operator.expression.of.js","keyword.operator.expression.of.ts","keyword.operator.expression.typeof.ts"],"settings":{"foreground":"#c6a0f6"}},{"scope":"support.function.macro.julia","settings":{"fontStyle":"italic","foreground":"#8bd5ca"}},{"scope":"constant.language.julia","settings":{"foreground":"#f5a97f"}},{"scope":"constant.other.symbol.julia","settings":{"foreground":"#ee99a0"}},{"scope":"text.tex keyword.control.preamble","settings":{"foreground":"#8bd5ca"}},{"scope":"text.tex support.function.be","settings":{"foreground":"#91d7e3"}},{"scope":"constant.other.general.math.tex","settings":{"foreground":"#f0c6c6"}},{"scope":"variable.language.liquid","settings":{"foreground":"#f5bde6"}},{"scope":"comment.line.double-dash.documentation.lua storage.type.annotation.lua","settings":{"fontStyle":"","foreground":"#c6a0f6"}},{"scope":["comment.line.double-dash.documentation.lua entity.name.variable.lua","comment.line.double-dash.documentation.lua variable.lua"],"settings":{"foreground":"#cad3f5"}},{"scope":["heading.1.markdown punctuation.definition.heading.markdown","heading.1.markdown","heading.1.quarto punctuation.definition.heading.quarto","heading.1.quarto","markup.heading.atx.1.mdx","markup.heading.atx.1.mdx punctuation.definition.heading.mdx","markup.heading.setext.1.markdown","markup.heading.heading-0.asciidoc"],"settings":{"foreground":"#ed8796"}},{"scope":["heading.2.markdown punctuation.definition.heading.markdown","heading.2.markdown","heading.2.quarto punctuation.definition.heading.quarto","heading.2.quarto","markup.heading.atx.2.mdx","markup.heading.atx.2.mdx punctuation.definition.heading.mdx","markup.heading.setext.2.markdown","markup.heading.heading-1.asciidoc"],"settings":{"foreground":"#f5a97f"}},{"scope":["heading.3.markdown punctuation.definition.heading.markdown","heading.3.markdown","heading.3.quarto punctuation.definition.heading.quarto","heading.3.quarto","markup.heading.atx.3.mdx","markup.heading.atx.3.mdx punctuation.definition.heading.mdx","markup.heading.heading-2.asciidoc"],"settings":{"foreground":"#eed49f"}},{"scope":["heading.4.markdown punctuation.definition.heading.markdown","heading.4.markdown","heading.4.quarto punctuation.definition.heading.quarto","heading.4.quarto","markup.heading.atx.4.mdx","markup.heading.atx.4.mdx punctuation.definition.heading.mdx","markup.heading.heading-3.asciidoc"],"settings":{"foreground":"#a6da95"}},{"scope":["heading.5.markdown punctuation.definition.heading.markdown","heading.5.markdown","heading.5.quarto punctuation.definition.heading.quarto","heading.5.quarto","markup.heading.atx.5.mdx","markup.heading.atx.5.mdx punctuation.definition.heading.mdx","markup.heading.heading-4.asciidoc"],"settings":{"foreground":"#8aadf4"}},{"scope":["heading.6.markdown punctuation.definition.heading.markdown","heading.6.markdown","heading.6.quarto punctuation.definition.heading.quarto","heading.6.quarto","markup.heading.atx.6.mdx","markup.heading.atx.6.mdx punctuation.definition.heading.mdx","markup.heading.heading-5.asciidoc"],"settings":{"foreground":"#c6a0f6"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#ed8796"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#ed8796"}},{"scope":"markup.strikethrough","settings":{"fontStyle":"strikethrough","foreground":"#a5adcb"}},{"scope":["punctuation.definition.link","markup.underline.link"],"settings":{"foreground":"#8aadf4"}},{"scope":["text.html.markdown punctuation.definition.link.title","text.html.quarto punctuation.definition.link.title","string.other.link.title.markdown","string.other.link.title.quarto","markup.link","punctuation.definition.constant.markdown","punctuation.definition.constant.quarto","constant.other.reference.link.markdown","constant.other.reference.link.quarto","markup.substitution.attribute-reference"],"settings":{"foreground":"#b7bdf8"}},{"scope":["punctuation.definition.raw.markdown","punctuation.definition.raw.quarto","markup.inline.raw.string.markdown","markup.inline.raw.string.quarto","markup.raw.block.markdown","markup.raw.block.quarto"],"settings":{"foreground":"#a6da95"}},{"scope":"fenced_code.block.language","settings":{"foreground":"#91d7e3"}},{"scope":["markup.fenced_code.block punctuation.definition","markup.raw support.asciidoc"],"settings":{"foreground":"#939ab7"}},{"scope":["markup.quote","punctuation.definition.quote.begin"],"settings":{"foreground":"#f5bde6"}},{"scope":"meta.separator.markdown","settings":{"foreground":"#8bd5ca"}},{"scope":["punctuation.definition.list.begin.markdown","punctuation.definition.list.begin.quarto","markup.list.bullet"],"settings":{"foreground":"#8bd5ca"}},{"scope":"markup.heading.quarto","settings":{"fontStyle":"bold"}},{"scope":["entity.other.attribute-name.multipart.nix","entity.other.attribute-name.single.nix"],"settings":{"foreground":"#8aadf4"}},{"scope":"variable.parameter.name.nix","settings":{"fontStyle":"","foreground":"#cad3f5"}},{"scope":"meta.embedded variable.parameter.name.nix","settings":{"fontStyle":"","foreground":"#b7bdf8"}},{"scope":"string.unquoted.path.nix","settings":{"fontStyle":"","foreground":"#f5bde6"}},{"scope":["support.attribute.builtin","meta.attribute.php"],"settings":{"foreground":"#eed49f"}},{"scope":"meta.function.parameters.php punctuation.definition.variable.php","settings":{"foreground":"#ee99a0"}},{"scope":"constant.language.php","settings":{"foreground":"#c6a0f6"}},{"scope":"text.html.php support.function","settings":{"foreground":"#91d7e3"}},{"scope":"keyword.other.phpdoc.php","settings":{"fontStyle":""}},{"scope":["support.variable.magic.python","meta.function-call.arguments.python"],"settings":{"foreground":"#cad3f5"}},{"scope":["support.function.magic.python"],"settings":{"fontStyle":"italic","foreground":"#91d7e3"}},{"scope":["variable.parameter.function.language.special.self.python","variable.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#ed8796"}},{"scope":["keyword.control.flow.python","keyword.operator.logical.python"],"settings":{"foreground":"#c6a0f6"}},{"scope":"storage.type.function.python","settings":{"foreground":"#c6a0f6"}},{"scope":["support.token.decorator.python","meta.function.decorator.identifier.python"],"settings":{"foreground":"#91d7e3"}},{"scope":["meta.function-call.python"],"settings":{"foreground":"#8aadf4"}},{"scope":["entity.name.function.decorator.python","punctuation.definition.decorator.python"],"settings":{"fontStyle":"italic","foreground":"#f5a97f"}},{"scope":"constant.character.format.placeholder.other.python","settings":{"foreground":"#f5bde6"}},{"scope":["support.type.exception.python","support.function.builtin.python"],"settings":{"foreground":"#f5a97f"}},{"scope":["support.type.python"],"settings":{"foreground":"#f5a97f"}},{"scope":"constant.language.python","settings":{"foreground":"#c6a0f6"}},{"scope":["meta.indexed-name.python","meta.item-access.python"],"settings":{"fontStyle":"italic","foreground":"#ee99a0"}},{"scope":"storage.type.string.python","settings":{"fontStyle":"italic","foreground":"#a6da95"}},{"scope":"meta.function.parameters.python","settings":{"fontStyle":""}},{"scope":["string.regexp punctuation.definition.string.begin","string.regexp punctuation.definition.string.end"],"settings":{"foreground":"#f5bde6"}},{"scope":"keyword.control.anchor.regexp","settings":{"foreground":"#c6a0f6"}},{"scope":"string.regexp.ts","settings":{"foreground":"#cad3f5"}},{"scope":["punctuation.definition.group.regexp","keyword.other.back-reference.regexp"],"settings":{"foreground":"#a6da95"}},{"scope":"punctuation.definition.character-class.regexp","settings":{"foreground":"#eed49f"}},{"scope":"constant.other.character-class.regexp","settings":{"foreground":"#f5bde6"}},{"scope":"constant.other.character-class.range.regexp","settings":{"foreground":"#f4dbd6"}},{"scope":"keyword.operator.quantifier.regexp","settings":{"foreground":"#8bd5ca"}},{"scope":"constant.character.numeric.regexp","settings":{"foreground":"#f5a97f"}},{"scope":["punctuation.definition.group.no-capture.regexp","meta.assertion.look-ahead.regexp","meta.assertion.negative-look-ahead.regexp"],"settings":{"foreground":"#8aadf4"}},{"scope":["meta.annotation.rust","meta.annotation.rust punctuation","meta.attribute.rust","punctuation.definition.attribute.rust"],"settings":{"fontStyle":"italic","foreground":"#eed49f"}},{"scope":["meta.attribute.rust string.quoted.double.rust","meta.attribute.rust string.quoted.single.char.rust"],"settings":{"fontStyle":""}},{"scope":["entity.name.function.macro.rules.rust","storage.type.module.rust","storage.modifier.rust","storage.type.struct.rust","storage.type.enum.rust","storage.type.trait.rust","storage.type.union.rust","storage.type.impl.rust","storage.type.rust","storage.type.function.rust","storage.type.type.rust"],"settings":{"fontStyle":"","foreground":"#c6a0f6"}},{"scope":"entity.name.type.numeric.rust","settings":{"fontStyle":"","foreground":"#c6a0f6"}},{"scope":"meta.generic.rust","settings":{"foreground":"#f5a97f"}},{"scope":"entity.name.impl.rust","settings":{"fontStyle":"italic","foreground":"#eed49f"}},{"scope":"entity.name.module.rust","settings":{"foreground":"#f5a97f"}},{"scope":"entity.name.trait.rust","settings":{"fontStyle":"italic","foreground":"#eed49f"}},{"scope":"storage.type.source.rust","settings":{"foreground":"#eed49f"}},{"scope":"entity.name.union.rust","settings":{"foreground":"#eed49f"}},{"scope":"meta.enum.rust storage.type.source.rust","settings":{"foreground":"#8bd5ca"}},{"scope":["support.macro.rust","meta.macro.rust support.function.rust","entity.name.function.macro.rust"],"settings":{"fontStyle":"italic","foreground":"#8aadf4"}},{"scope":["storage.modifier.lifetime.rust","entity.name.type.lifetime"],"settings":{"fontStyle":"italic","foreground":"#8aadf4"}},{"scope":"string.quoted.double.rust constant.other.placeholder.rust","settings":{"foreground":"#f5bde6"}},{"scope":"meta.function.return-type.rust meta.generic.rust storage.type.rust","settings":{"foreground":"#cad3f5"}},{"scope":"meta.function.call.rust","settings":{"foreground":"#8aadf4"}},{"scope":"punctuation.brackets.angle.rust","settings":{"foreground":"#91d7e3"}},{"scope":"constant.other.caps.rust","settings":{"foreground":"#f5a97f"}},{"scope":["meta.function.definition.rust variable.other.rust"],"settings":{"foreground":"#ee99a0"}},{"scope":"meta.function.call.rust variable.other.rust","settings":{"foreground":"#cad3f5"}},{"scope":"variable.language.self.rust","settings":{"foreground":"#ed8796"}},{"scope":["variable.other.metavariable.name.rust","meta.macro.metavariable.rust keyword.operator.macro.dollar.rust"],"settings":{"foreground":"#f5bde6"}},{"scope":["comment.line.shebang","comment.line.shebang punctuation.definition.comment","comment.line.shebang","punctuation.definition.comment.shebang.shell","meta.shebang.shell"],"settings":{"fontStyle":"italic","foreground":"#f5bde6"}},{"scope":"comment.line.shebang constant.language","settings":{"fontStyle":"italic","foreground":"#8bd5ca"}},{"scope":["meta.function-call.arguments.shell punctuation.definition.variable.shell","meta.function-call.arguments.shell punctuation.section.interpolation","meta.function-call.arguments.shell punctuation.definition.variable.shell","meta.function-call.arguments.shell punctuation.section.interpolation"],"settings":{"foreground":"#ed8796"}},{"scope":"meta.string meta.interpolation.parameter.shell variable.other.readwrite","settings":{"fontStyle":"italic","foreground":"#f5a97f"}},{"scope":["source.shell punctuation.section.interpolation","punctuation.definition.evaluation.backticks.shell"],"settings":{"foreground":"#8bd5ca"}},{"scope":"entity.name.tag.heredoc.shell","settings":{"foreground":"#c6a0f6"}},{"scope":"string.quoted.double.shell variable.other.normal.shell","settings":{"foreground":"#cad3f5"}}],"type":"dark"}'))});var eM={};x(eM,{default:()=>Yse});var Yse,tM=_(()=>{Yse=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBackground":"#00000000","activityBar.activeBorder":"#00000000","activityBar.activeFocusBorder":"#00000000","activityBar.background":"#11111b","activityBar.border":"#00000000","activityBar.dropBorder":"#cba6f733","activityBar.foreground":"#cba6f7","activityBar.inactiveForeground":"#6c7086","activityBarBadge.background":"#cba6f7","activityBarBadge.foreground":"#11111b","activityBarTop.activeBorder":"#00000000","activityBarTop.dropBorder":"#cba6f733","activityBarTop.foreground":"#cba6f7","activityBarTop.inactiveForeground":"#6c7086","badge.background":"#45475a","badge.foreground":"#cdd6f4","banner.background":"#45475a","banner.foreground":"#cdd6f4","banner.iconForeground":"#cdd6f4","breadcrumb.activeSelectionForeground":"#cba6f7","breadcrumb.background":"#1e1e2e","breadcrumb.focusForeground":"#cba6f7","breadcrumb.foreground":"#cdd6f4cc","breadcrumbPicker.background":"#181825","button.background":"#cba6f7","button.border":"#00000000","button.foreground":"#11111b","button.hoverBackground":"#dec7fa","button.secondaryBackground":"#585b70","button.secondaryBorder":"#cba6f7","button.secondaryForeground":"#cdd6f4","button.secondaryHoverBackground":"#686b84","button.separator":"#00000000","charts.blue":"#89b4fa","charts.foreground":"#cdd6f4","charts.green":"#a6e3a1","charts.lines":"#bac2de","charts.orange":"#fab387","charts.purple":"#cba6f7","charts.red":"#f38ba8","charts.yellow":"#f9e2af","checkbox.background":"#45475a","checkbox.border":"#00000000","checkbox.foreground":"#cba6f7","commandCenter.activeBackground":"#585b7033","commandCenter.activeBorder":"#cba6f7","commandCenter.activeForeground":"#cba6f7","commandCenter.background":"#181825","commandCenter.border":"#00000000","commandCenter.foreground":"#bac2de","commandCenter.inactiveBorder":"#00000000","commandCenter.inactiveForeground":"#bac2de","debugConsole.errorForeground":"#f38ba8","debugConsole.infoForeground":"#89b4fa","debugConsole.sourceForeground":"#f5e0dc","debugConsole.warningForeground":"#fab387","debugConsoleInputIcon.foreground":"#cdd6f4","debugExceptionWidget.background":"#11111b","debugExceptionWidget.border":"#cba6f7","debugIcon.breakpointCurrentStackframeForeground":"#585b70","debugIcon.breakpointDisabledForeground":"#f38ba899","debugIcon.breakpointForeground":"#f38ba8","debugIcon.breakpointStackframeForeground":"#585b70","debugIcon.breakpointUnverifiedForeground":"#a6738c","debugIcon.continueForeground":"#a6e3a1","debugIcon.disconnectForeground":"#585b70","debugIcon.pauseForeground":"#89b4fa","debugIcon.restartForeground":"#94e2d5","debugIcon.startForeground":"#a6e3a1","debugIcon.stepBackForeground":"#585b70","debugIcon.stepIntoForeground":"#cdd6f4","debugIcon.stepOutForeground":"#cdd6f4","debugIcon.stepOverForeground":"#cba6f7","debugIcon.stopForeground":"#f38ba8","debugTokenExpression.boolean":"#cba6f7","debugTokenExpression.error":"#f38ba8","debugTokenExpression.number":"#fab387","debugTokenExpression.string":"#a6e3a1","debugToolBar.background":"#11111b","debugToolBar.border":"#00000000","descriptionForeground":"#cdd6f4","diffEditor.border":"#585b70","diffEditor.diagonalFill":"#585b7099","diffEditor.insertedLineBackground":"#a6e3a126","diffEditor.insertedTextBackground":"#a6e3a11a","diffEditor.removedLineBackground":"#f38ba826","diffEditor.removedTextBackground":"#f38ba81a","diffEditorOverview.insertedForeground":"#a6e3a1cc","diffEditorOverview.removedForeground":"#f38ba8cc","disabledForeground":"#a6adc8","dropdown.background":"#181825","dropdown.border":"#cba6f7","dropdown.foreground":"#cdd6f4","dropdown.listBackground":"#585b70","editor.background":"#1e1e2e","editor.findMatchBackground":"#5e3f53","editor.findMatchBorder":"#f38ba833","editor.findMatchHighlightBackground":"#3e5767","editor.findMatchHighlightBorder":"#89dceb33","editor.findRangeHighlightBackground":"#3e5767","editor.findRangeHighlightBorder":"#89dceb33","editor.focusedStackFrameHighlightBackground":"#a6e3a126","editor.foldBackground":"#89dceb40","editor.foreground":"#cdd6f4","editor.hoverHighlightBackground":"#89dceb40","editor.lineHighlightBackground":"#cdd6f412","editor.lineHighlightBorder":"#00000000","editor.rangeHighlightBackground":"#89dceb40","editor.rangeHighlightBorder":"#00000000","editor.selectionBackground":"#9399b240","editor.selectionHighlightBackground":"#9399b233","editor.selectionHighlightBorder":"#9399b233","editor.stackFrameHighlightBackground":"#f9e2af26","editor.wordHighlightBackground":"#9399b233","editor.wordHighlightStrongBackground":"#89b4fa33","editorBracketHighlight.foreground1":"#f38ba8","editorBracketHighlight.foreground2":"#fab387","editorBracketHighlight.foreground3":"#f9e2af","editorBracketHighlight.foreground4":"#a6e3a1","editorBracketHighlight.foreground5":"#74c7ec","editorBracketHighlight.foreground6":"#cba6f7","editorBracketHighlight.unexpectedBracket.foreground":"#eba0ac","editorBracketMatch.background":"#9399b21a","editorBracketMatch.border":"#9399b2","editorCodeLens.foreground":"#7f849c","editorCursor.background":"#1e1e2e","editorCursor.foreground":"#f5e0dc","editorError.background":"#00000000","editorError.border":"#00000000","editorError.foreground":"#f38ba8","editorGroup.border":"#585b70","editorGroup.dropBackground":"#cba6f733","editorGroup.emptyBackground":"#1e1e2e","editorGroupHeader.tabsBackground":"#11111b","editorGutter.addedBackground":"#a6e3a1","editorGutter.background":"#1e1e2e","editorGutter.commentGlyphForeground":"#cba6f7","editorGutter.commentRangeForeground":"#313244","editorGutter.deletedBackground":"#f38ba8","editorGutter.foldingControlForeground":"#9399b2","editorGutter.modifiedBackground":"#f9e2af","editorHoverWidget.background":"#181825","editorHoverWidget.border":"#585b70","editorHoverWidget.foreground":"#cdd6f4","editorIndentGuide.activeBackground":"#585b70","editorIndentGuide.background":"#45475a","editorInfo.background":"#00000000","editorInfo.border":"#00000000","editorInfo.foreground":"#89b4fa","editorInlayHint.background":"#181825bf","editorInlayHint.foreground":"#585b70","editorInlayHint.parameterBackground":"#181825bf","editorInlayHint.parameterForeground":"#a6adc8","editorInlayHint.typeBackground":"#181825bf","editorInlayHint.typeForeground":"#bac2de","editorLightBulb.foreground":"#f9e2af","editorLineNumber.activeForeground":"#cba6f7","editorLineNumber.foreground":"#7f849c","editorLink.activeForeground":"#cba6f7","editorMarkerNavigation.background":"#181825","editorMarkerNavigationError.background":"#f38ba8","editorMarkerNavigationInfo.background":"#89b4fa","editorMarkerNavigationWarning.background":"#fab387","editorOverviewRuler.background":"#181825","editorOverviewRuler.border":"#cdd6f412","editorOverviewRuler.modifiedForeground":"#f9e2af","editorRuler.foreground":"#585b70","editorStickyScrollHover.background":"#313244","editorSuggestWidget.background":"#181825","editorSuggestWidget.border":"#585b70","editorSuggestWidget.foreground":"#cdd6f4","editorSuggestWidget.highlightForeground":"#cba6f7","editorSuggestWidget.selectedBackground":"#313244","editorWarning.background":"#00000000","editorWarning.border":"#00000000","editorWarning.foreground":"#fab387","editorWhitespace.foreground":"#9399b266","editorWidget.background":"#181825","editorWidget.foreground":"#cdd6f4","editorWidget.resizeBorder":"#585b70","errorForeground":"#f38ba8","errorLens.errorBackground":"#f38ba826","errorLens.errorBackgroundLight":"#f38ba826","errorLens.errorForeground":"#f38ba8","errorLens.errorForegroundLight":"#f38ba8","errorLens.errorMessageBackground":"#f38ba826","errorLens.hintBackground":"#a6e3a126","errorLens.hintBackgroundLight":"#a6e3a126","errorLens.hintForeground":"#a6e3a1","errorLens.hintForegroundLight":"#a6e3a1","errorLens.hintMessageBackground":"#a6e3a126","errorLens.infoBackground":"#89b4fa26","errorLens.infoBackgroundLight":"#89b4fa26","errorLens.infoForeground":"#89b4fa","errorLens.infoForegroundLight":"#89b4fa","errorLens.infoMessageBackground":"#89b4fa26","errorLens.statusBarErrorForeground":"#f38ba8","errorLens.statusBarHintForeground":"#a6e3a1","errorLens.statusBarIconErrorForeground":"#f38ba8","errorLens.statusBarIconWarningForeground":"#fab387","errorLens.statusBarInfoForeground":"#89b4fa","errorLens.statusBarWarningForeground":"#fab387","errorLens.warningBackground":"#fab38726","errorLens.warningBackgroundLight":"#fab38726","errorLens.warningForeground":"#fab387","errorLens.warningForegroundLight":"#fab387","errorLens.warningMessageBackground":"#fab38726","extensionBadge.remoteBackground":"#89b4fa","extensionBadge.remoteForeground":"#11111b","extensionButton.prominentBackground":"#cba6f7","extensionButton.prominentForeground":"#11111b","extensionButton.prominentHoverBackground":"#dec7fa","extensionButton.separator":"#1e1e2e","extensionIcon.preReleaseForeground":"#585b70","extensionIcon.sponsorForeground":"#f5c2e7","extensionIcon.starForeground":"#f9e2af","extensionIcon.verifiedForeground":"#a6e3a1","focusBorder":"#cba6f7","foreground":"#cdd6f4","gitDecoration.addedResourceForeground":"#a6e3a1","gitDecoration.conflictingResourceForeground":"#cba6f7","gitDecoration.deletedResourceForeground":"#f38ba8","gitDecoration.ignoredResourceForeground":"#6c7086","gitDecoration.modifiedResourceForeground":"#f9e2af","gitDecoration.stageDeletedResourceForeground":"#f38ba8","gitDecoration.stageModifiedResourceForeground":"#f9e2af","gitDecoration.submoduleResourceForeground":"#89b4fa","gitDecoration.untrackedResourceForeground":"#a6e3a1","gitlens.closedAutolinkedIssueIconColor":"#cba6f7","gitlens.closedPullRequestIconColor":"#f38ba8","gitlens.decorations.branchAheadForegroundColor":"#a6e3a1","gitlens.decorations.branchBehindForegroundColor":"#fab387","gitlens.decorations.branchDivergedForegroundColor":"#f9e2af","gitlens.decorations.branchMissingUpstreamForegroundColor":"#fab387","gitlens.decorations.branchUnpublishedForegroundColor":"#a6e3a1","gitlens.decorations.statusMergingOrRebasingConflictForegroundColor":"#eba0ac","gitlens.decorations.statusMergingOrRebasingForegroundColor":"#f9e2af","gitlens.decorations.workspaceCurrentForegroundColor":"#cba6f7","gitlens.decorations.workspaceRepoMissingForegroundColor":"#a6adc8","gitlens.decorations.workspaceRepoOpenForegroundColor":"#cba6f7","gitlens.decorations.worktreeHasUncommittedChangesForegroundColor":"#fab387","gitlens.decorations.worktreeMissingForegroundColor":"#eba0ac","gitlens.graphChangesColumnAddedColor":"#a6e3a1","gitlens.graphChangesColumnDeletedColor":"#f38ba8","gitlens.graphLane10Color":"#f5c2e7","gitlens.graphLane1Color":"#cba6f7","gitlens.graphLane2Color":"#f9e2af","gitlens.graphLane3Color":"#89b4fa","gitlens.graphLane4Color":"#f2cdcd","gitlens.graphLane5Color":"#a6e3a1","gitlens.graphLane6Color":"#b4befe","gitlens.graphLane7Color":"#f5e0dc","gitlens.graphLane8Color":"#f38ba8","gitlens.graphLane9Color":"#94e2d5","gitlens.graphMinimapMarkerHeadColor":"#a6e3a1","gitlens.graphMinimapMarkerHighlightsColor":"#f9e2af","gitlens.graphMinimapMarkerLocalBranchesColor":"#89b4fa","gitlens.graphMinimapMarkerRemoteBranchesColor":"#71a4f9","gitlens.graphMinimapMarkerStashesColor":"#cba6f7","gitlens.graphMinimapMarkerTagsColor":"#f2cdcd","gitlens.graphMinimapMarkerUpstreamColor":"#93dd8d","gitlens.graphScrollMarkerHeadColor":"#a6e3a1","gitlens.graphScrollMarkerHighlightsColor":"#f9e2af","gitlens.graphScrollMarkerLocalBranchesColor":"#89b4fa","gitlens.graphScrollMarkerRemoteBranchesColor":"#71a4f9","gitlens.graphScrollMarkerStashesColor":"#cba6f7","gitlens.graphScrollMarkerTagsColor":"#f2cdcd","gitlens.graphScrollMarkerUpstreamColor":"#93dd8d","gitlens.gutterBackgroundColor":"#3132444d","gitlens.gutterForegroundColor":"#cdd6f4","gitlens.gutterUncommittedForegroundColor":"#cba6f7","gitlens.lineHighlightBackgroundColor":"#cba6f726","gitlens.lineHighlightOverviewRulerColor":"#cba6f7cc","gitlens.mergedPullRequestIconColor":"#cba6f7","gitlens.openAutolinkedIssueIconColor":"#a6e3a1","gitlens.openPullRequestIconColor":"#a6e3a1","gitlens.trailingLineBackgroundColor":"#00000000","gitlens.trailingLineForegroundColor":"#cdd6f44d","gitlens.unpublishedChangesIconColor":"#a6e3a1","gitlens.unpublishedCommitIconColor":"#a6e3a1","gitlens.unpulledChangesIconColor":"#fab387","icon.foreground":"#cba6f7","input.background":"#313244","input.border":"#00000000","input.foreground":"#cdd6f4","input.placeholderForeground":"#cdd6f473","inputOption.activeBackground":"#585b70","inputOption.activeBorder":"#cba6f7","inputOption.activeForeground":"#cdd6f4","inputValidation.errorBackground":"#f38ba8","inputValidation.errorBorder":"#11111b33","inputValidation.errorForeground":"#11111b","inputValidation.infoBackground":"#89b4fa","inputValidation.infoBorder":"#11111b33","inputValidation.infoForeground":"#11111b","inputValidation.warningBackground":"#fab387","inputValidation.warningBorder":"#11111b33","inputValidation.warningForeground":"#11111b","issues.closed":"#cba6f7","issues.newIssueDecoration":"#f5e0dc","issues.open":"#a6e3a1","list.activeSelectionBackground":"#313244","list.activeSelectionForeground":"#cdd6f4","list.dropBackground":"#cba6f733","list.focusAndSelectionBackground":"#45475a","list.focusBackground":"#313244","list.focusForeground":"#cdd6f4","list.focusOutline":"#00000000","list.highlightForeground":"#cba6f7","list.hoverBackground":"#31324480","list.hoverForeground":"#cdd6f4","list.inactiveSelectionBackground":"#313244","list.inactiveSelectionForeground":"#cdd6f4","list.warningForeground":"#fab387","listFilterWidget.background":"#45475a","listFilterWidget.noMatchesOutline":"#f38ba8","listFilterWidget.outline":"#00000000","menu.background":"#1e1e2e","menu.border":"#1e1e2e80","menu.foreground":"#cdd6f4","menu.selectionBackground":"#585b70","menu.selectionBorder":"#00000000","menu.selectionForeground":"#cdd6f4","menu.separatorBackground":"#585b70","menubar.selectionBackground":"#45475a","menubar.selectionForeground":"#cdd6f4","merge.commonContentBackground":"#45475a","merge.commonHeaderBackground":"#585b70","merge.currentContentBackground":"#a6e3a133","merge.currentHeaderBackground":"#a6e3a166","merge.incomingContentBackground":"#89b4fa33","merge.incomingHeaderBackground":"#89b4fa66","minimap.background":"#18182580","minimap.errorHighlight":"#f38ba8bf","minimap.findMatchHighlight":"#89dceb4d","minimap.selectionHighlight":"#585b70bf","minimap.selectionOccurrenceHighlight":"#585b70bf","minimap.warningHighlight":"#fab387bf","minimapGutter.addedBackground":"#a6e3a1bf","minimapGutter.deletedBackground":"#f38ba8bf","minimapGutter.modifiedBackground":"#f9e2afbf","minimapSlider.activeBackground":"#cba6f799","minimapSlider.background":"#cba6f733","minimapSlider.hoverBackground":"#cba6f766","notificationCenter.border":"#cba6f7","notificationCenterHeader.background":"#181825","notificationCenterHeader.foreground":"#cdd6f4","notificationLink.foreground":"#89b4fa","notificationToast.border":"#cba6f7","notifications.background":"#181825","notifications.border":"#cba6f7","notifications.foreground":"#cdd6f4","notificationsErrorIcon.foreground":"#f38ba8","notificationsInfoIcon.foreground":"#89b4fa","notificationsWarningIcon.foreground":"#fab387","panel.background":"#1e1e2e","panel.border":"#585b70","panelSection.border":"#585b70","panelSection.dropBackground":"#cba6f733","panelTitle.activeBorder":"#cba6f7","panelTitle.activeForeground":"#cdd6f4","panelTitle.inactiveForeground":"#a6adc8","peekView.border":"#cba6f7","peekViewEditor.background":"#181825","peekViewEditor.matchHighlightBackground":"#89dceb4d","peekViewEditor.matchHighlightBorder":"#00000000","peekViewEditorGutter.background":"#181825","peekViewResult.background":"#181825","peekViewResult.fileForeground":"#cdd6f4","peekViewResult.lineForeground":"#cdd6f4","peekViewResult.matchHighlightBackground":"#89dceb4d","peekViewResult.selectionBackground":"#313244","peekViewResult.selectionForeground":"#cdd6f4","peekViewTitle.background":"#1e1e2e","peekViewTitleDescription.foreground":"#bac2deb3","peekViewTitleLabel.foreground":"#cdd6f4","pickerGroup.border":"#cba6f7","pickerGroup.foreground":"#cba6f7","problemsErrorIcon.foreground":"#f38ba8","problemsInfoIcon.foreground":"#89b4fa","problemsWarningIcon.foreground":"#fab387","progressBar.background":"#cba6f7","pullRequests.closed":"#f38ba8","pullRequests.draft":"#9399b2","pullRequests.merged":"#cba6f7","pullRequests.notification":"#cdd6f4","pullRequests.open":"#a6e3a1","sash.hoverBorder":"#cba6f7","scrollbar.shadow":"#11111b","scrollbarSlider.activeBackground":"#31324466","scrollbarSlider.background":"#585b7080","scrollbarSlider.hoverBackground":"#6c7086","selection.background":"#cba6f766","settings.dropdownBackground":"#45475a","settings.dropdownListBorder":"#00000000","settings.focusedRowBackground":"#585b7033","settings.headerForeground":"#cdd6f4","settings.modifiedItemIndicator":"#cba6f7","settings.numberInputBackground":"#45475a","settings.numberInputBorder":"#00000000","settings.textInputBackground":"#45475a","settings.textInputBorder":"#00000000","sideBar.background":"#181825","sideBar.border":"#00000000","sideBar.dropBackground":"#cba6f733","sideBar.foreground":"#cdd6f4","sideBarSectionHeader.background":"#181825","sideBarSectionHeader.foreground":"#cdd6f4","sideBarTitle.foreground":"#cba6f7","statusBar.background":"#11111b","statusBar.border":"#00000000","statusBar.debuggingBackground":"#fab387","statusBar.debuggingBorder":"#00000000","statusBar.debuggingForeground":"#11111b","statusBar.foreground":"#cdd6f4","statusBar.noFolderBackground":"#11111b","statusBar.noFolderBorder":"#00000000","statusBar.noFolderForeground":"#cdd6f4","statusBarItem.activeBackground":"#585b7066","statusBarItem.errorBackground":"#00000000","statusBarItem.errorForeground":"#f38ba8","statusBarItem.hoverBackground":"#585b7033","statusBarItem.prominentBackground":"#00000000","statusBarItem.prominentForeground":"#cba6f7","statusBarItem.prominentHoverBackground":"#585b7033","statusBarItem.remoteBackground":"#89b4fa","statusBarItem.remoteForeground":"#11111b","statusBarItem.warningBackground":"#00000000","statusBarItem.warningForeground":"#fab387","symbolIcon.arrayForeground":"#fab387","symbolIcon.booleanForeground":"#cba6f7","symbolIcon.classForeground":"#f9e2af","symbolIcon.colorForeground":"#f5c2e7","symbolIcon.constantForeground":"#fab387","symbolIcon.constructorForeground":"#b4befe","symbolIcon.enumeratorForeground":"#f9e2af","symbolIcon.enumeratorMemberForeground":"#f9e2af","symbolIcon.eventForeground":"#f5c2e7","symbolIcon.fieldForeground":"#cdd6f4","symbolIcon.fileForeground":"#cba6f7","symbolIcon.folderForeground":"#cba6f7","symbolIcon.functionForeground":"#89b4fa","symbolIcon.interfaceForeground":"#f9e2af","symbolIcon.keyForeground":"#94e2d5","symbolIcon.keywordForeground":"#cba6f7","symbolIcon.methodForeground":"#89b4fa","symbolIcon.moduleForeground":"#cdd6f4","symbolIcon.namespaceForeground":"#f9e2af","symbolIcon.nullForeground":"#eba0ac","symbolIcon.numberForeground":"#fab387","symbolIcon.objectForeground":"#f9e2af","symbolIcon.operatorForeground":"#94e2d5","symbolIcon.packageForeground":"#f2cdcd","symbolIcon.propertyForeground":"#eba0ac","symbolIcon.referenceForeground":"#f9e2af","symbolIcon.snippetForeground":"#f2cdcd","symbolIcon.stringForeground":"#a6e3a1","symbolIcon.structForeground":"#94e2d5","symbolIcon.textForeground":"#cdd6f4","symbolIcon.typeParameterForeground":"#eba0ac","symbolIcon.unitForeground":"#cdd6f4","symbolIcon.variableForeground":"#cdd6f4","tab.activeBackground":"#1e1e2e","tab.activeBorder":"#00000000","tab.activeBorderTop":"#cba6f7","tab.activeForeground":"#cba6f7","tab.activeModifiedBorder":"#f9e2af","tab.border":"#181825","tab.hoverBackground":"#28283d","tab.hoverBorder":"#00000000","tab.hoverForeground":"#cba6f7","tab.inactiveBackground":"#181825","tab.inactiveForeground":"#6c7086","tab.inactiveModifiedBorder":"#f9e2af4d","tab.lastPinnedBorder":"#cba6f7","tab.unfocusedActiveBackground":"#181825","tab.unfocusedActiveBorder":"#00000000","tab.unfocusedActiveBorderTop":"#cba6f74d","tab.unfocusedInactiveBackground":"#0e0e16","table.headerBackground":"#313244","table.headerForeground":"#cdd6f4","terminal.ansiBlack":"#45475a","terminal.ansiBlue":"#89b4fa","terminal.ansiBrightBlack":"#585b70","terminal.ansiBrightBlue":"#74a8fc","terminal.ansiBrightCyan":"#6bd7ca","terminal.ansiBrightGreen":"#89d88b","terminal.ansiBrightMagenta":"#f2aede","terminal.ansiBrightRed":"#f37799","terminal.ansiBrightWhite":"#bac2de","terminal.ansiBrightYellow":"#ebd391","terminal.ansiCyan":"#94e2d5","terminal.ansiGreen":"#a6e3a1","terminal.ansiMagenta":"#f5c2e7","terminal.ansiRed":"#f38ba8","terminal.ansiWhite":"#a6adc8","terminal.ansiYellow":"#f9e2af","terminal.border":"#585b70","terminal.dropBackground":"#cba6f733","terminal.foreground":"#cdd6f4","terminal.inactiveSelectionBackground":"#585b7080","terminal.selectionBackground":"#585b70","terminal.tab.activeBorder":"#cba6f7","terminalCommandDecoration.defaultBackground":"#585b70","terminalCommandDecoration.errorBackground":"#f38ba8","terminalCommandDecoration.successBackground":"#a6e3a1","terminalCursor.background":"#1e1e2e","terminalCursor.foreground":"#f5e0dc","textBlockQuote.background":"#181825","textBlockQuote.border":"#11111b","textCodeBlock.background":"#1e1e2e","textLink.activeForeground":"#89dceb","textLink.foreground":"#89b4fa","textPreformat.foreground":"#cdd6f4","textSeparator.foreground":"#cba6f7","titleBar.activeBackground":"#11111b","titleBar.activeForeground":"#cdd6f4","titleBar.border":"#00000000","titleBar.inactiveBackground":"#11111b","titleBar.inactiveForeground":"#cdd6f480","tree.inactiveIndentGuidesStroke":"#45475a","tree.indentGuidesStroke":"#9399b2","walkThrough.embeddedEditorBackground":"#1e1e2e4d","welcomePage.progress.background":"#11111b","welcomePage.progress.foreground":"#cba6f7","welcomePage.tileBackground":"#181825","widget.shadow":"#18182580","window.activeBorder":"#00000000","window.inactiveBorder":"#00000000"},"displayName":"Catppuccin Mocha","name":"catppuccin-mocha","semanticHighlighting":true,"semanticTokenColors":{"boolean":{"foreground":"#fab387"},"builtinAttribute.attribute.library:rust":{"foreground":"#89b4fa"},"class.builtin:python":{"foreground":"#cba6f7"},"class:python":{"foreground":"#f9e2af"},"constant.builtin.readonly:nix":{"foreground":"#cba6f7"},"enumMember":{"foreground":"#94e2d5"},"function.decorator:python":{"foreground":"#fab387"},"generic.attribute:rust":{"foreground":"#cdd6f4"},"heading":{"foreground":"#f38ba8"},"number":{"foreground":"#fab387"},"pol":{"foreground":"#f2cdcd"},"property.readonly:javascript":{"foreground":"#cdd6f4"},"property.readonly:javascriptreact":{"foreground":"#cdd6f4"},"property.readonly:typescript":{"foreground":"#cdd6f4"},"property.readonly:typescriptreact":{"foreground":"#cdd6f4"},"selfKeyword":{"foreground":"#f38ba8"},"text.emph":{"fontStyle":"italic","foreground":"#f38ba8"},"text.math":{"foreground":"#f2cdcd"},"text.strong":{"fontStyle":"bold","foreground":"#f38ba8"},"tomlArrayKey":{"fontStyle":"","foreground":"#89b4fa"},"tomlTableKey":{"fontStyle":"","foreground":"#89b4fa"},"type.defaultLibrary:go":{"foreground":"#cba6f7"},"variable.defaultLibrary":{"foreground":"#eba0ac"},"variable.readonly.defaultLibrary:go":{"foreground":"#cba6f7"},"variable.readonly:javascript":{"foreground":"#cdd6f4"},"variable.readonly:javascriptreact":{"foreground":"#cdd6f4"},"variable.readonly:scala":{"foreground":"#cdd6f4"},"variable.readonly:typescript":{"foreground":"#cdd6f4"},"variable.readonly:typescriptreact":{"foreground":"#cdd6f4"},"variable.typeHint:python":{"foreground":"#f9e2af"}},"tokenColors":[{"scope":["text","source","variable.other.readwrite","punctuation.definition.variable"],"settings":{"foreground":"#cdd6f4"}},{"scope":"punctuation","settings":{"fontStyle":"","foreground":"#9399b2"}},{"scope":["comment","punctuation.definition.comment"],"settings":{"fontStyle":"italic","foreground":"#6c7086"}},{"scope":["string","punctuation.definition.string"],"settings":{"foreground":"#a6e3a1"}},{"scope":"constant.character.escape","settings":{"foreground":"#f5c2e7"}},{"scope":["constant.numeric","variable.other.constant","entity.name.constant","constant.language.boolean","constant.language.false","constant.language.true","keyword.other.unit.user-defined","keyword.other.unit.suffix.floating-point"],"settings":{"foreground":"#fab387"}},{"scope":["keyword","keyword.operator.word","keyword.operator.new","variable.language.super","support.type.primitive","storage.type","storage.modifier","punctuation.definition.keyword"],"settings":{"fontStyle":"","foreground":"#cba6f7"}},{"scope":"entity.name.tag.documentation","settings":{"foreground":"#cba6f7"}},{"scope":["keyword.operator","punctuation.accessor","punctuation.definition.generic","meta.function.closure punctuation.section.parameters","punctuation.definition.tag","punctuation.separator.key-value"],"settings":{"foreground":"#94e2d5"}},{"scope":["entity.name.function","meta.function-call.method","support.function","support.function.misc","variable.function"],"settings":{"fontStyle":"italic","foreground":"#89b4fa"}},{"scope":["entity.name.class","entity.other.inherited-class","support.class","meta.function-call.constructor","entity.name.struct"],"settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":"entity.name.enum","settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":["meta.enum variable.other.readwrite","variable.other.enummember"],"settings":{"foreground":"#94e2d5"}},{"scope":"meta.property.object","settings":{"foreground":"#94e2d5"}},{"scope":["meta.type","meta.type-alias","support.type","entity.name.type"],"settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":["meta.annotation variable.function","meta.annotation variable.annotation.function","meta.annotation punctuation.definition.annotation","meta.decorator","punctuation.decorator"],"settings":{"foreground":"#fab387"}},{"scope":["variable.parameter","meta.function.parameters"],"settings":{"fontStyle":"italic","foreground":"#eba0ac"}},{"scope":["constant.language","support.function.builtin"],"settings":{"foreground":"#f38ba8"}},{"scope":"entity.other.attribute-name.documentation","settings":{"foreground":"#f38ba8"}},{"scope":["keyword.control.directive","punctuation.definition.directive"],"settings":{"foreground":"#f9e2af"}},{"scope":"punctuation.definition.typeparameters","settings":{"foreground":"#89dceb"}},{"scope":"entity.name.namespace","settings":{"foreground":"#f9e2af"}},{"scope":"support.type.property-name.css","settings":{"fontStyle":"","foreground":"#89b4fa"}},{"scope":["variable.language.this","variable.language.this punctuation.definition.variable"],"settings":{"foreground":"#f38ba8"}},{"scope":"variable.object.property","settings":{"foreground":"#cdd6f4"}},{"scope":["string.template variable","string variable"],"settings":{"foreground":"#cdd6f4"}},{"scope":"keyword.operator.new","settings":{"fontStyle":"bold"}},{"scope":"storage.modifier.specifier.extern.cpp","settings":{"foreground":"#cba6f7"}},{"scope":["entity.name.scope-resolution.template.call.cpp","entity.name.scope-resolution.parameter.cpp","entity.name.scope-resolution.cpp","entity.name.scope-resolution.function.definition.cpp"],"settings":{"foreground":"#f9e2af"}},{"scope":"storage.type.class.doxygen","settings":{"fontStyle":""}},{"scope":["storage.modifier.reference.cpp"],"settings":{"foreground":"#94e2d5"}},{"scope":"meta.interpolation.cs","settings":{"foreground":"#cdd6f4"}},{"scope":"comment.block.documentation.cs","settings":{"foreground":"#cdd6f4"}},{"scope":["source.css entity.other.attribute-name.class.css","entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css"],"settings":{"foreground":"#f9e2af"}},{"scope":"punctuation.separator.operator.css","settings":{"foreground":"#94e2d5"}},{"scope":"source.css entity.other.attribute-name.pseudo-class","settings":{"foreground":"#94e2d5"}},{"scope":"source.css constant.other.unicode-range","settings":{"foreground":"#fab387"}},{"scope":"source.css variable.parameter.url","settings":{"fontStyle":"","foreground":"#a6e3a1"}},{"scope":["support.type.vendored.property-name"],"settings":{"foreground":"#89dceb"}},{"scope":["source.css meta.property-value variable","source.css meta.property-value variable.other.less","source.css meta.property-value variable.other.less punctuation.definition.variable.less","meta.definition.variable.scss"],"settings":{"foreground":"#eba0ac"}},{"scope":["source.css meta.property-list variable","meta.property-list variable.other.less","meta.property-list variable.other.less punctuation.definition.variable.less"],"settings":{"foreground":"#89b4fa"}},{"scope":"keyword.other.unit.percentage.css","settings":{"foreground":"#fab387"}},{"scope":"source.css meta.attribute-selector","settings":{"foreground":"#a6e3a1"}},{"scope":["keyword.other.definition.ini","punctuation.support.type.property-name.json","support.type.property-name.json","punctuation.support.type.property-name.toml","support.type.property-name.toml","entity.name.tag.yaml","punctuation.support.type.property-name.yaml","support.type.property-name.yaml"],"settings":{"fontStyle":"","foreground":"#89b4fa"}},{"scope":["constant.language.json","constant.language.yaml"],"settings":{"foreground":"#fab387"}},{"scope":["entity.name.type.anchor.yaml","variable.other.alias.yaml"],"settings":{"fontStyle":"","foreground":"#f9e2af"}},{"scope":["support.type.property-name.table","entity.name.section.group-title.ini"],"settings":{"foreground":"#f9e2af"}},{"scope":"constant.other.time.datetime.offset.toml","settings":{"foreground":"#f5c2e7"}},{"scope":["punctuation.definition.anchor.yaml","punctuation.definition.alias.yaml"],"settings":{"foreground":"#f5c2e7"}},{"scope":"entity.other.document.begin.yaml","settings":{"foreground":"#f5c2e7"}},{"scope":"markup.changed.diff","settings":{"foreground":"#fab387"}},{"scope":["meta.diff.header.from-file","meta.diff.header.to-file","punctuation.definition.from-file.diff","punctuation.definition.to-file.diff"],"settings":{"foreground":"#89b4fa"}},{"scope":"markup.inserted.diff","settings":{"foreground":"#a6e3a1"}},{"scope":"markup.deleted.diff","settings":{"foreground":"#f38ba8"}},{"scope":["variable.other.env"],"settings":{"foreground":"#89b4fa"}},{"scope":["string.quoted variable.other.env"],"settings":{"foreground":"#cdd6f4"}},{"scope":"support.function.builtin.gdscript","settings":{"foreground":"#89b4fa"}},{"scope":"constant.language.gdscript","settings":{"foreground":"#fab387"}},{"scope":"comment meta.annotation.go","settings":{"foreground":"#eba0ac"}},{"scope":"comment meta.annotation.parameters.go","settings":{"foreground":"#fab387"}},{"scope":"constant.language.go","settings":{"foreground":"#fab387"}},{"scope":"variable.graphql","settings":{"foreground":"#cdd6f4"}},{"scope":"string.unquoted.alias.graphql","settings":{"foreground":"#f2cdcd"}},{"scope":"constant.character.enum.graphql","settings":{"foreground":"#94e2d5"}},{"scope":"meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql","settings":{"foreground":"#f2cdcd"}},{"scope":["keyword.other.doctype","meta.tag.sgml.doctype punctuation.definition.tag","meta.tag.metadata.doctype entity.name.tag","meta.tag.metadata.doctype punctuation.definition.tag"],"settings":{"foreground":"#cba6f7"}},{"scope":["entity.name.tag"],"settings":{"fontStyle":"","foreground":"#89b4fa"}},{"scope":["text.html constant.character.entity","text.html constant.character.entity punctuation","constant.character.entity.xml","constant.character.entity.xml punctuation","constant.character.entity.js.jsx","constant.charactger.entity.js.jsx punctuation","constant.character.entity.tsx","constant.character.entity.tsx punctuation"],"settings":{"foreground":"#f38ba8"}},{"scope":["entity.other.attribute-name"],"settings":{"foreground":"#f9e2af"}},{"scope":["support.class.component","support.class.component.jsx","support.class.component.tsx","support.class.component.vue"],"settings":{"fontStyle":"","foreground":"#f5c2e7"}},{"scope":["punctuation.definition.annotation","storage.type.annotation"],"settings":{"foreground":"#fab387"}},{"scope":"constant.other.enum.java","settings":{"foreground":"#94e2d5"}},{"scope":"storage.modifier.import.java","settings":{"foreground":"#cdd6f4"}},{"scope":"comment.block.javadoc.java keyword.other.documentation.javadoc.java","settings":{"fontStyle":""}},{"scope":"meta.export variable.other.readwrite.js","settings":{"foreground":"#eba0ac"}},{"scope":["variable.other.constant.js","variable.other.constant.ts","variable.other.property.js","variable.other.property.ts"],"settings":{"foreground":"#cdd6f4"}},{"scope":["variable.other.jsdoc","comment.block.documentation variable.other"],"settings":{"fontStyle":"","foreground":"#eba0ac"}},{"scope":"storage.type.class.jsdoc","settings":{"fontStyle":""}},{"scope":"support.type.object.console.js","settings":{"foreground":"#cdd6f4"}},{"scope":["support.constant.node","support.type.object.module.js"],"settings":{"foreground":"#cba6f7"}},{"scope":"storage.modifier.implements","settings":{"foreground":"#cba6f7"}},{"scope":["constant.language.null.js","constant.language.null.ts","constant.language.undefined.js","constant.language.undefined.ts","support.type.builtin.ts"],"settings":{"foreground":"#cba6f7"}},{"scope":"variable.parameter.generic","settings":{"foreground":"#f9e2af"}},{"scope":["keyword.declaration.function.arrow.js","storage.type.function.arrow.ts"],"settings":{"foreground":"#94e2d5"}},{"scope":"punctuation.decorator.ts","settings":{"fontStyle":"italic","foreground":"#89b4fa"}},{"scope":["keyword.operator.expression.in.js","keyword.operator.expression.in.ts","keyword.operator.expression.infer.ts","keyword.operator.expression.instanceof.js","keyword.operator.expression.instanceof.ts","keyword.operator.expression.is","keyword.operator.expression.keyof.ts","keyword.operator.expression.of.js","keyword.operator.expression.of.ts","keyword.operator.expression.typeof.ts"],"settings":{"foreground":"#cba6f7"}},{"scope":"support.function.macro.julia","settings":{"fontStyle":"italic","foreground":"#94e2d5"}},{"scope":"constant.language.julia","settings":{"foreground":"#fab387"}},{"scope":"constant.other.symbol.julia","settings":{"foreground":"#eba0ac"}},{"scope":"text.tex keyword.control.preamble","settings":{"foreground":"#94e2d5"}},{"scope":"text.tex support.function.be","settings":{"foreground":"#89dceb"}},{"scope":"constant.other.general.math.tex","settings":{"foreground":"#f2cdcd"}},{"scope":"variable.language.liquid","settings":{"foreground":"#f5c2e7"}},{"scope":"comment.line.double-dash.documentation.lua storage.type.annotation.lua","settings":{"fontStyle":"","foreground":"#cba6f7"}},{"scope":["comment.line.double-dash.documentation.lua entity.name.variable.lua","comment.line.double-dash.documentation.lua variable.lua"],"settings":{"foreground":"#cdd6f4"}},{"scope":["heading.1.markdown punctuation.definition.heading.markdown","heading.1.markdown","heading.1.quarto punctuation.definition.heading.quarto","heading.1.quarto","markup.heading.atx.1.mdx","markup.heading.atx.1.mdx punctuation.definition.heading.mdx","markup.heading.setext.1.markdown","markup.heading.heading-0.asciidoc"],"settings":{"foreground":"#f38ba8"}},{"scope":["heading.2.markdown punctuation.definition.heading.markdown","heading.2.markdown","heading.2.quarto punctuation.definition.heading.quarto","heading.2.quarto","markup.heading.atx.2.mdx","markup.heading.atx.2.mdx punctuation.definition.heading.mdx","markup.heading.setext.2.markdown","markup.heading.heading-1.asciidoc"],"settings":{"foreground":"#fab387"}},{"scope":["heading.3.markdown punctuation.definition.heading.markdown","heading.3.markdown","heading.3.quarto punctuation.definition.heading.quarto","heading.3.quarto","markup.heading.atx.3.mdx","markup.heading.atx.3.mdx punctuation.definition.heading.mdx","markup.heading.heading-2.asciidoc"],"settings":{"foreground":"#f9e2af"}},{"scope":["heading.4.markdown punctuation.definition.heading.markdown","heading.4.markdown","heading.4.quarto punctuation.definition.heading.quarto","heading.4.quarto","markup.heading.atx.4.mdx","markup.heading.atx.4.mdx punctuation.definition.heading.mdx","markup.heading.heading-3.asciidoc"],"settings":{"foreground":"#a6e3a1"}},{"scope":["heading.5.markdown punctuation.definition.heading.markdown","heading.5.markdown","heading.5.quarto punctuation.definition.heading.quarto","heading.5.quarto","markup.heading.atx.5.mdx","markup.heading.atx.5.mdx punctuation.definition.heading.mdx","markup.heading.heading-4.asciidoc"],"settings":{"foreground":"#89b4fa"}},{"scope":["heading.6.markdown punctuation.definition.heading.markdown","heading.6.markdown","heading.6.quarto punctuation.definition.heading.quarto","heading.6.quarto","markup.heading.atx.6.mdx","markup.heading.atx.6.mdx punctuation.definition.heading.mdx","markup.heading.heading-5.asciidoc"],"settings":{"foreground":"#cba6f7"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#f38ba8"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#f38ba8"}},{"scope":"markup.strikethrough","settings":{"fontStyle":"strikethrough","foreground":"#a6adc8"}},{"scope":["punctuation.definition.link","markup.underline.link"],"settings":{"foreground":"#89b4fa"}},{"scope":["text.html.markdown punctuation.definition.link.title","text.html.quarto punctuation.definition.link.title","string.other.link.title.markdown","string.other.link.title.quarto","markup.link","punctuation.definition.constant.markdown","punctuation.definition.constant.quarto","constant.other.reference.link.markdown","constant.other.reference.link.quarto","markup.substitution.attribute-reference"],"settings":{"foreground":"#b4befe"}},{"scope":["punctuation.definition.raw.markdown","punctuation.definition.raw.quarto","markup.inline.raw.string.markdown","markup.inline.raw.string.quarto","markup.raw.block.markdown","markup.raw.block.quarto"],"settings":{"foreground":"#a6e3a1"}},{"scope":"fenced_code.block.language","settings":{"foreground":"#89dceb"}},{"scope":["markup.fenced_code.block punctuation.definition","markup.raw support.asciidoc"],"settings":{"foreground":"#9399b2"}},{"scope":["markup.quote","punctuation.definition.quote.begin"],"settings":{"foreground":"#f5c2e7"}},{"scope":"meta.separator.markdown","settings":{"foreground":"#94e2d5"}},{"scope":["punctuation.definition.list.begin.markdown","punctuation.definition.list.begin.quarto","markup.list.bullet"],"settings":{"foreground":"#94e2d5"}},{"scope":"markup.heading.quarto","settings":{"fontStyle":"bold"}},{"scope":["entity.other.attribute-name.multipart.nix","entity.other.attribute-name.single.nix"],"settings":{"foreground":"#89b4fa"}},{"scope":"variable.parameter.name.nix","settings":{"fontStyle":"","foreground":"#cdd6f4"}},{"scope":"meta.embedded variable.parameter.name.nix","settings":{"fontStyle":"","foreground":"#b4befe"}},{"scope":"string.unquoted.path.nix","settings":{"fontStyle":"","foreground":"#f5c2e7"}},{"scope":["support.attribute.builtin","meta.attribute.php"],"settings":{"foreground":"#f9e2af"}},{"scope":"meta.function.parameters.php punctuation.definition.variable.php","settings":{"foreground":"#eba0ac"}},{"scope":"constant.language.php","settings":{"foreground":"#cba6f7"}},{"scope":"text.html.php support.function","settings":{"foreground":"#89dceb"}},{"scope":"keyword.other.phpdoc.php","settings":{"fontStyle":""}},{"scope":["support.variable.magic.python","meta.function-call.arguments.python"],"settings":{"foreground":"#cdd6f4"}},{"scope":["support.function.magic.python"],"settings":{"fontStyle":"italic","foreground":"#89dceb"}},{"scope":["variable.parameter.function.language.special.self.python","variable.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#f38ba8"}},{"scope":["keyword.control.flow.python","keyword.operator.logical.python"],"settings":{"foreground":"#cba6f7"}},{"scope":"storage.type.function.python","settings":{"foreground":"#cba6f7"}},{"scope":["support.token.decorator.python","meta.function.decorator.identifier.python"],"settings":{"foreground":"#89dceb"}},{"scope":["meta.function-call.python"],"settings":{"foreground":"#89b4fa"}},{"scope":["entity.name.function.decorator.python","punctuation.definition.decorator.python"],"settings":{"fontStyle":"italic","foreground":"#fab387"}},{"scope":"constant.character.format.placeholder.other.python","settings":{"foreground":"#f5c2e7"}},{"scope":["support.type.exception.python","support.function.builtin.python"],"settings":{"foreground":"#fab387"}},{"scope":["support.type.python"],"settings":{"foreground":"#fab387"}},{"scope":"constant.language.python","settings":{"foreground":"#cba6f7"}},{"scope":["meta.indexed-name.python","meta.item-access.python"],"settings":{"fontStyle":"italic","foreground":"#eba0ac"}},{"scope":"storage.type.string.python","settings":{"fontStyle":"italic","foreground":"#a6e3a1"}},{"scope":"meta.function.parameters.python","settings":{"fontStyle":""}},{"scope":["string.regexp punctuation.definition.string.begin","string.regexp punctuation.definition.string.end"],"settings":{"foreground":"#f5c2e7"}},{"scope":"keyword.control.anchor.regexp","settings":{"foreground":"#cba6f7"}},{"scope":"string.regexp.ts","settings":{"foreground":"#cdd6f4"}},{"scope":["punctuation.definition.group.regexp","keyword.other.back-reference.regexp"],"settings":{"foreground":"#a6e3a1"}},{"scope":"punctuation.definition.character-class.regexp","settings":{"foreground":"#f9e2af"}},{"scope":"constant.other.character-class.regexp","settings":{"foreground":"#f5c2e7"}},{"scope":"constant.other.character-class.range.regexp","settings":{"foreground":"#f5e0dc"}},{"scope":"keyword.operator.quantifier.regexp","settings":{"foreground":"#94e2d5"}},{"scope":"constant.character.numeric.regexp","settings":{"foreground":"#fab387"}},{"scope":["punctuation.definition.group.no-capture.regexp","meta.assertion.look-ahead.regexp","meta.assertion.negative-look-ahead.regexp"],"settings":{"foreground":"#89b4fa"}},{"scope":["meta.annotation.rust","meta.annotation.rust punctuation","meta.attribute.rust","punctuation.definition.attribute.rust"],"settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":["meta.attribute.rust string.quoted.double.rust","meta.attribute.rust string.quoted.single.char.rust"],"settings":{"fontStyle":""}},{"scope":["entity.name.function.macro.rules.rust","storage.type.module.rust","storage.modifier.rust","storage.type.struct.rust","storage.type.enum.rust","storage.type.trait.rust","storage.type.union.rust","storage.type.impl.rust","storage.type.rust","storage.type.function.rust","storage.type.type.rust"],"settings":{"fontStyle":"","foreground":"#cba6f7"}},{"scope":"entity.name.type.numeric.rust","settings":{"fontStyle":"","foreground":"#cba6f7"}},{"scope":"meta.generic.rust","settings":{"foreground":"#fab387"}},{"scope":"entity.name.impl.rust","settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":"entity.name.module.rust","settings":{"foreground":"#fab387"}},{"scope":"entity.name.trait.rust","settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":"storage.type.source.rust","settings":{"foreground":"#f9e2af"}},{"scope":"entity.name.union.rust","settings":{"foreground":"#f9e2af"}},{"scope":"meta.enum.rust storage.type.source.rust","settings":{"foreground":"#94e2d5"}},{"scope":["support.macro.rust","meta.macro.rust support.function.rust","entity.name.function.macro.rust"],"settings":{"fontStyle":"italic","foreground":"#89b4fa"}},{"scope":["storage.modifier.lifetime.rust","entity.name.type.lifetime"],"settings":{"fontStyle":"italic","foreground":"#89b4fa"}},{"scope":"string.quoted.double.rust constant.other.placeholder.rust","settings":{"foreground":"#f5c2e7"}},{"scope":"meta.function.return-type.rust meta.generic.rust storage.type.rust","settings":{"foreground":"#cdd6f4"}},{"scope":"meta.function.call.rust","settings":{"foreground":"#89b4fa"}},{"scope":"punctuation.brackets.angle.rust","settings":{"foreground":"#89dceb"}},{"scope":"constant.other.caps.rust","settings":{"foreground":"#fab387"}},{"scope":["meta.function.definition.rust variable.other.rust"],"settings":{"foreground":"#eba0ac"}},{"scope":"meta.function.call.rust variable.other.rust","settings":{"foreground":"#cdd6f4"}},{"scope":"variable.language.self.rust","settings":{"foreground":"#f38ba8"}},{"scope":["variable.other.metavariable.name.rust","meta.macro.metavariable.rust keyword.operator.macro.dollar.rust"],"settings":{"foreground":"#f5c2e7"}},{"scope":["comment.line.shebang","comment.line.shebang punctuation.definition.comment","comment.line.shebang","punctuation.definition.comment.shebang.shell","meta.shebang.shell"],"settings":{"fontStyle":"italic","foreground":"#f5c2e7"}},{"scope":"comment.line.shebang constant.language","settings":{"fontStyle":"italic","foreground":"#94e2d5"}},{"scope":["meta.function-call.arguments.shell punctuation.definition.variable.shell","meta.function-call.arguments.shell punctuation.section.interpolation","meta.function-call.arguments.shell punctuation.definition.variable.shell","meta.function-call.arguments.shell punctuation.section.interpolation"],"settings":{"foreground":"#f38ba8"}},{"scope":"meta.string meta.interpolation.parameter.shell variable.other.readwrite","settings":{"fontStyle":"italic","foreground":"#fab387"}},{"scope":["source.shell punctuation.section.interpolation","punctuation.definition.evaluation.backticks.shell"],"settings":{"foreground":"#94e2d5"}},{"scope":"entity.name.tag.heredoc.shell","settings":{"foreground":"#cba6f7"}},{"scope":"string.quoted.double.shell variable.other.normal.shell","settings":{"foreground":"#cdd6f4"}}],"type":"dark"}'))});var nM={};x(nM,{default:()=>Wse});var Wse,aM=_(()=>{Wse=Object.freeze(JSON.parse('{"colors":{"actionBar.toggledBackground":"#383a49","activityBarBadge.background":"#007ACC","checkbox.border":"#6B6B6B","editor.background":"#1E1E1E","editor.foreground":"#D4D4D4","editor.inactiveSelectionBackground":"#3A3D41","editor.selectionHighlightBackground":"#ADD6FF26","editorIndentGuide.activeBackground1":"#707070","editorIndentGuide.background1":"#404040","input.placeholderForeground":"#A6A6A6","list.activeSelectionIconForeground":"#FFF","list.dropBackground":"#383B3D","menu.background":"#252526","menu.border":"#454545","menu.foreground":"#CCCCCC","menu.selectionBackground":"#0078d4","menu.separatorBackground":"#454545","ports.iconRunningProcessForeground":"#369432","sideBarSectionHeader.background":"#0000","sideBarSectionHeader.border":"#ccc3","sideBarTitle.foreground":"#BBBBBB","statusBarItem.remoteBackground":"#16825D","statusBarItem.remoteForeground":"#FFF","tab.lastPinnedBorder":"#ccc3","tab.selectedBackground":"#222222","tab.selectedForeground":"#ffffffa0","terminal.inactiveSelectionBackground":"#3A3D41","widget.border":"#303031"},"displayName":"Dark Plus","name":"dark-plus","semanticHighlighting":true,"semanticTokenColors":{"customLiteral":"#DCDCAA","newOperator":"#C586C0","numberLiteral":"#b5cea8","stringLiteral":"#ce9178"},"tokenColors":[{"scope":["meta.embedded","source.groovy.embedded","string meta.image.inline.markdown","variable.legacy.builtin.python"],"settings":{"foreground":"#D4D4D4"}},{"scope":"emphasis","settings":{"fontStyle":"italic"}},{"scope":"strong","settings":{"fontStyle":"bold"}},{"scope":"header","settings":{"foreground":"#000080"}},{"scope":"comment","settings":{"foreground":"#6A9955"}},{"scope":"constant.language","settings":{"foreground":"#569cd6"}},{"scope":["constant.numeric","variable.other.enummember","keyword.operator.plus.exponent","keyword.operator.minus.exponent"],"settings":{"foreground":"#b5cea8"}},{"scope":"constant.regexp","settings":{"foreground":"#646695"}},{"scope":"entity.name.tag","settings":{"foreground":"#569cd6"}},{"scope":["entity.name.tag.css","entity.name.tag.less"],"settings":{"foreground":"#d7ba7d"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#9cdcfe"}},{"scope":["entity.other.attribute-name.class.css","source.css entity.other.attribute-name.class","entity.other.attribute-name.id.css","entity.other.attribute-name.parent-selector.css","entity.other.attribute-name.parent.less","source.css entity.other.attribute-name.pseudo-class","entity.other.attribute-name.pseudo-element.css","source.css.less entity.other.attribute-name.id","entity.other.attribute-name.scss"],"settings":{"foreground":"#d7ba7d"}},{"scope":"invalid","settings":{"foreground":"#f44747"}},{"scope":"markup.underline","settings":{"fontStyle":"underline"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#569cd6"}},{"scope":"markup.heading","settings":{"fontStyle":"bold","foreground":"#569cd6"}},{"scope":"markup.italic","settings":{"fontStyle":"italic"}},{"scope":"markup.strikethrough","settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inserted","settings":{"foreground":"#b5cea8"}},{"scope":"markup.deleted","settings":{"foreground":"#ce9178"}},{"scope":"markup.changed","settings":{"foreground":"#569cd6"}},{"scope":"punctuation.definition.quote.begin.markdown","settings":{"foreground":"#6A9955"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#6796e6"}},{"scope":"markup.inline.raw","settings":{"foreground":"#ce9178"}},{"scope":"punctuation.definition.tag","settings":{"foreground":"#808080"}},{"scope":["meta.preprocessor","entity.name.function.preprocessor"],"settings":{"foreground":"#569cd6"}},{"scope":"meta.preprocessor.string","settings":{"foreground":"#ce9178"}},{"scope":"meta.preprocessor.numeric","settings":{"foreground":"#b5cea8"}},{"scope":"meta.structure.dictionary.key.python","settings":{"foreground":"#9cdcfe"}},{"scope":"meta.diff.header","settings":{"foreground":"#569cd6"}},{"scope":"storage","settings":{"foreground":"#569cd6"}},{"scope":"storage.type","settings":{"foreground":"#569cd6"}},{"scope":["storage.modifier","keyword.operator.noexcept"],"settings":{"foreground":"#569cd6"}},{"scope":["string","meta.embedded.assembly"],"settings":{"foreground":"#ce9178"}},{"scope":"string.tag","settings":{"foreground":"#ce9178"}},{"scope":"string.value","settings":{"foreground":"#ce9178"}},{"scope":"string.regexp","settings":{"foreground":"#d16969"}},{"scope":["punctuation.definition.template-expression.begin","punctuation.definition.template-expression.end","punctuation.section.embedded"],"settings":{"foreground":"#569cd6"}},{"scope":["meta.template.expression"],"settings":{"foreground":"#d4d4d4"}},{"scope":["support.type.vendored.property-name","support.type.property-name","source.css variable","source.coffee.embedded"],"settings":{"foreground":"#9cdcfe"}},{"scope":"keyword","settings":{"foreground":"#569cd6"}},{"scope":"keyword.control","settings":{"foreground":"#569cd6"}},{"scope":"keyword.operator","settings":{"foreground":"#d4d4d4"}},{"scope":["keyword.operator.new","keyword.operator.expression","keyword.operator.cast","keyword.operator.sizeof","keyword.operator.alignof","keyword.operator.typeid","keyword.operator.alignas","keyword.operator.instanceof","keyword.operator.logical.python","keyword.operator.wordlike"],"settings":{"foreground":"#569cd6"}},{"scope":"keyword.other.unit","settings":{"foreground":"#b5cea8"}},{"scope":["punctuation.section.embedded.begin.php","punctuation.section.embedded.end.php"],"settings":{"foreground":"#569cd6"}},{"scope":"support.function.git-rebase","settings":{"foreground":"#9cdcfe"}},{"scope":"constant.sha.git-rebase","settings":{"foreground":"#b5cea8"}},{"scope":["storage.modifier.import.java","variable.language.wildcard.java","storage.modifier.package.java"],"settings":{"foreground":"#d4d4d4"}},{"scope":"variable.language","settings":{"foreground":"#569cd6"}},{"scope":["entity.name.function","support.function","support.constant.handlebars","source.powershell variable.other.member","entity.name.operator.custom-literal"],"settings":{"foreground":"#DCDCAA"}},{"scope":["support.class","support.type","entity.name.type","entity.name.namespace","entity.other.attribute","entity.name.scope-resolution","entity.name.class","storage.type.numeric.go","storage.type.byte.go","storage.type.boolean.go","storage.type.string.go","storage.type.uintptr.go","storage.type.error.go","storage.type.rune.go","storage.type.cs","storage.type.generic.cs","storage.type.modifier.cs","storage.type.variable.cs","storage.type.annotation.java","storage.type.generic.java","storage.type.java","storage.type.object.array.java","storage.type.primitive.array.java","storage.type.primitive.java","storage.type.token.java","storage.type.groovy","storage.type.annotation.groovy","storage.type.parameters.groovy","storage.type.generic.groovy","storage.type.object.array.groovy","storage.type.primitive.array.groovy","storage.type.primitive.groovy"],"settings":{"foreground":"#4EC9B0"}},{"scope":["meta.type.cast.expr","meta.type.new.expr","support.constant.math","support.constant.dom","support.constant.json","entity.other.inherited-class","punctuation.separator.namespace.ruby"],"settings":{"foreground":"#4EC9B0"}},{"scope":["keyword.control","source.cpp keyword.operator.new","keyword.operator.delete","keyword.other.using","keyword.other.directive.using","keyword.other.operator","entity.name.operator"],"settings":{"foreground":"#C586C0"}},{"scope":["variable","meta.definition.variable.name","support.variable","entity.name.variable","constant.other.placeholder"],"settings":{"foreground":"#9CDCFE"}},{"scope":["variable.other.constant","variable.other.enummember"],"settings":{"foreground":"#4FC1FF"}},{"scope":["meta.object-literal.key"],"settings":{"foreground":"#9CDCFE"}},{"scope":["support.constant.property-value","support.constant.font-name","support.constant.media-type","support.constant.media","constant.other.color.rgb-value","constant.other.rgb-value","support.constant.color"],"settings":{"foreground":"#CE9178"}},{"scope":["punctuation.definition.group.regexp","punctuation.definition.group.assertion.regexp","punctuation.definition.character-class.regexp","punctuation.character.set.begin.regexp","punctuation.character.set.end.regexp","keyword.operator.negation.regexp","support.other.parenthesis.regexp"],"settings":{"foreground":"#CE9178"}},{"scope":["constant.character.character-class.regexp","constant.other.character-class.set.regexp","constant.other.character-class.regexp","constant.character.set.regexp"],"settings":{"foreground":"#d16969"}},{"scope":["keyword.operator.or.regexp","keyword.control.anchor.regexp"],"settings":{"foreground":"#DCDCAA"}},{"scope":"keyword.operator.quantifier.regexp","settings":{"foreground":"#d7ba7d"}},{"scope":["constant.character","constant.other.option"],"settings":{"foreground":"#569cd6"}},{"scope":"constant.character.escape","settings":{"foreground":"#d7ba7d"}},{"scope":"entity.name.label","settings":{"foreground":"#C8C8C8"}}],"type":"dark"}'))});var rM={};x(rM,{default:()=>Kse});var Kse,iM=_(()=>{Kse=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBackground":"#BD93F910","activityBar.activeBorder":"#FF79C680","activityBar.background":"#343746","activityBar.foreground":"#F8F8F2","activityBar.inactiveForeground":"#6272A4","activityBarBadge.background":"#FF79C6","activityBarBadge.foreground":"#F8F8F2","badge.background":"#44475A","badge.foreground":"#F8F8F2","breadcrumb.activeSelectionForeground":"#F8F8F2","breadcrumb.background":"#282A36","breadcrumb.focusForeground":"#F8F8F2","breadcrumb.foreground":"#6272A4","breadcrumbPicker.background":"#191A21","button.background":"#44475A","button.foreground":"#F8F8F2","button.secondaryBackground":"#282A36","button.secondaryForeground":"#F8F8F2","button.secondaryHoverBackground":"#343746","debugToolBar.background":"#21222C","diffEditor.insertedTextBackground":"#50FA7B20","diffEditor.removedTextBackground":"#FF555550","dropdown.background":"#343746","dropdown.border":"#191A21","dropdown.foreground":"#F8F8F2","editor.background":"#282A36","editor.findMatchBackground":"#FFB86C80","editor.findMatchHighlightBackground":"#FFFFFF40","editor.findRangeHighlightBackground":"#44475A75","editor.foldBackground":"#21222C80","editor.foreground":"#F8F8F2","editor.hoverHighlightBackground":"#8BE9FD50","editor.lineHighlightBorder":"#44475A","editor.rangeHighlightBackground":"#BD93F915","editor.selectionBackground":"#44475A","editor.selectionHighlightBackground":"#424450","editor.snippetFinalTabstopHighlightBackground":"#282A36","editor.snippetFinalTabstopHighlightBorder":"#50FA7B","editor.snippetTabstopHighlightBackground":"#282A36","editor.snippetTabstopHighlightBorder":"#6272A4","editor.wordHighlightBackground":"#8BE9FD50","editor.wordHighlightStrongBackground":"#50FA7B50","editorBracketHighlight.foreground1":"#F8F8F2","editorBracketHighlight.foreground2":"#FF79C6","editorBracketHighlight.foreground3":"#8BE9FD","editorBracketHighlight.foreground4":"#50FA7B","editorBracketHighlight.foreground5":"#BD93F9","editorBracketHighlight.foreground6":"#FFB86C","editorBracketHighlight.unexpectedBracket.foreground":"#FF5555","editorCodeLens.foreground":"#6272A4","editorError.foreground":"#FF5555","editorGroup.border":"#BD93F9","editorGroup.dropBackground":"#44475A70","editorGroupHeader.tabsBackground":"#191A21","editorGutter.addedBackground":"#50FA7B80","editorGutter.deletedBackground":"#FF555580","editorGutter.modifiedBackground":"#8BE9FD80","editorHoverWidget.background":"#282A36","editorHoverWidget.border":"#6272A4","editorIndentGuide.activeBackground":"#FFFFFF45","editorIndentGuide.background":"#FFFFFF1A","editorLineNumber.foreground":"#6272A4","editorLink.activeForeground":"#8BE9FD","editorMarkerNavigation.background":"#21222C","editorOverviewRuler.addedForeground":"#50FA7B80","editorOverviewRuler.border":"#191A21","editorOverviewRuler.currentContentForeground":"#50FA7B","editorOverviewRuler.deletedForeground":"#FF555580","editorOverviewRuler.errorForeground":"#FF555580","editorOverviewRuler.incomingContentForeground":"#BD93F9","editorOverviewRuler.infoForeground":"#8BE9FD80","editorOverviewRuler.modifiedForeground":"#8BE9FD80","editorOverviewRuler.selectionHighlightForeground":"#FFB86C","editorOverviewRuler.warningForeground":"#FFB86C80","editorOverviewRuler.wordHighlightForeground":"#8BE9FD","editorOverviewRuler.wordHighlightStrongForeground":"#50FA7B","editorRuler.foreground":"#FFFFFF1A","editorSuggestWidget.background":"#21222C","editorSuggestWidget.foreground":"#F8F8F2","editorSuggestWidget.selectedBackground":"#44475A","editorWarning.foreground":"#8BE9FD","editorWhitespace.foreground":"#FFFFFF1A","editorWidget.background":"#21222C","errorForeground":"#FF5555","extensionButton.prominentBackground":"#50FA7B90","extensionButton.prominentForeground":"#F8F8F2","extensionButton.prominentHoverBackground":"#50FA7B60","focusBorder":"#6272A4","foreground":"#F8F8F2","gitDecoration.conflictingResourceForeground":"#FFB86C","gitDecoration.deletedResourceForeground":"#FF5555","gitDecoration.ignoredResourceForeground":"#6272A4","gitDecoration.modifiedResourceForeground":"#8BE9FD","gitDecoration.untrackedResourceForeground":"#50FA7B","inlineChat.regionHighlight":"#343746","input.background":"#282A36","input.border":"#191A21","input.foreground":"#F8F8F2","input.placeholderForeground":"#6272A4","inputOption.activeBorder":"#BD93F9","inputValidation.errorBorder":"#FF5555","inputValidation.infoBorder":"#FF79C6","inputValidation.warningBorder":"#FFB86C","list.activeSelectionBackground":"#44475A","list.activeSelectionForeground":"#F8F8F2","list.dropBackground":"#44475A","list.errorForeground":"#FF5555","list.focusBackground":"#44475A75","list.highlightForeground":"#8BE9FD","list.hoverBackground":"#44475A75","list.inactiveSelectionBackground":"#44475A75","list.warningForeground":"#FFB86C","listFilterWidget.background":"#343746","listFilterWidget.noMatchesOutline":"#FF5555","listFilterWidget.outline":"#424450","merge.currentHeaderBackground":"#50FA7B90","merge.incomingHeaderBackground":"#BD93F990","panel.background":"#282A36","panel.border":"#BD93F9","panelTitle.activeBorder":"#FF79C6","panelTitle.activeForeground":"#F8F8F2","panelTitle.inactiveForeground":"#6272A4","peekView.border":"#44475A","peekViewEditor.background":"#282A36","peekViewEditor.matchHighlightBackground":"#F1FA8C80","peekViewResult.background":"#21222C","peekViewResult.fileForeground":"#F8F8F2","peekViewResult.lineForeground":"#F8F8F2","peekViewResult.matchHighlightBackground":"#F1FA8C80","peekViewResult.selectionBackground":"#44475A","peekViewResult.selectionForeground":"#F8F8F2","peekViewTitle.background":"#191A21","peekViewTitleDescription.foreground":"#6272A4","peekViewTitleLabel.foreground":"#F8F8F2","pickerGroup.border":"#BD93F9","pickerGroup.foreground":"#8BE9FD","progressBar.background":"#FF79C6","selection.background":"#BD93F9","settings.checkboxBackground":"#21222C","settings.checkboxBorder":"#191A21","settings.checkboxForeground":"#F8F8F2","settings.dropdownBackground":"#21222C","settings.dropdownBorder":"#191A21","settings.dropdownForeground":"#F8F8F2","settings.headerForeground":"#F8F8F2","settings.modifiedItemIndicator":"#FFB86C","settings.numberInputBackground":"#21222C","settings.numberInputBorder":"#191A21","settings.numberInputForeground":"#F8F8F2","settings.textInputBackground":"#21222C","settings.textInputBorder":"#191A21","settings.textInputForeground":"#F8F8F2","sideBar.background":"#21222C","sideBarSectionHeader.background":"#282A36","sideBarSectionHeader.border":"#191A21","sideBarTitle.foreground":"#F8F8F2","statusBar.background":"#191A21","statusBar.debuggingBackground":"#FF5555","statusBar.debuggingForeground":"#191A21","statusBar.foreground":"#F8F8F2","statusBar.noFolderBackground":"#191A21","statusBar.noFolderForeground":"#F8F8F2","statusBarItem.prominentBackground":"#FF5555","statusBarItem.prominentHoverBackground":"#FFB86C","statusBarItem.remoteBackground":"#BD93F9","statusBarItem.remoteForeground":"#282A36","tab.activeBackground":"#282A36","tab.activeBorderTop":"#FF79C680","tab.activeForeground":"#F8F8F2","tab.border":"#191A21","tab.inactiveBackground":"#21222C","tab.inactiveForeground":"#6272A4","terminal.ansiBlack":"#21222C","terminal.ansiBlue":"#BD93F9","terminal.ansiBrightBlack":"#6272A4","terminal.ansiBrightBlue":"#D6ACFF","terminal.ansiBrightCyan":"#A4FFFF","terminal.ansiBrightGreen":"#69FF94","terminal.ansiBrightMagenta":"#FF92DF","terminal.ansiBrightRed":"#FF6E6E","terminal.ansiBrightWhite":"#FFFFFF","terminal.ansiBrightYellow":"#FFFFA5","terminal.ansiCyan":"#8BE9FD","terminal.ansiGreen":"#50FA7B","terminal.ansiMagenta":"#FF79C6","terminal.ansiRed":"#FF5555","terminal.ansiWhite":"#F8F8F2","terminal.ansiYellow":"#F1FA8C","terminal.background":"#282A36","terminal.foreground":"#F8F8F2","titleBar.activeBackground":"#21222C","titleBar.activeForeground":"#F8F8F2","titleBar.inactiveBackground":"#191A21","titleBar.inactiveForeground":"#6272A4","walkThrough.embeddedEditorBackground":"#21222C"},"displayName":"Dracula Theme","name":"dracula","semanticHighlighting":true,"tokenColors":[{"scope":["emphasis"],"settings":{"fontStyle":"italic"}},{"scope":["strong"],"settings":{"fontStyle":"bold"}},{"scope":["header"],"settings":{"foreground":"#BD93F9"}},{"scope":["meta.diff","meta.diff.header"],"settings":{"foreground":"#6272A4"}},{"scope":["markup.inserted"],"settings":{"foreground":"#50FA7B"}},{"scope":["markup.deleted"],"settings":{"foreground":"#FF5555"}},{"scope":["markup.changed"],"settings":{"foreground":"#FFB86C"}},{"scope":["invalid"],"settings":{"fontStyle":"underline italic","foreground":"#FF5555"}},{"scope":["invalid.deprecated"],"settings":{"fontStyle":"underline italic","foreground":"#F8F8F2"}},{"scope":["entity.name.filename"],"settings":{"foreground":"#F1FA8C"}},{"scope":["markup.error"],"settings":{"foreground":"#FF5555"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.bold"],"settings":{"fontStyle":"bold","foreground":"#FFB86C"}},{"scope":["markup.heading"],"settings":{"fontStyle":"bold","foreground":"#BD93F9"}},{"scope":["markup.italic"],"settings":{"fontStyle":"italic","foreground":"#F1FA8C"}},{"scope":["beginning.punctuation.definition.list.markdown","beginning.punctuation.definition.quote.markdown","punctuation.definition.link.restructuredtext"],"settings":{"foreground":"#8BE9FD"}},{"scope":["markup.inline.raw","markup.raw.restructuredtext"],"settings":{"foreground":"#50FA7B"}},{"scope":["markup.underline.link","markup.underline.link.image"],"settings":{"foreground":"#8BE9FD"}},{"scope":["meta.link.reference.def.restructuredtext","punctuation.definition.directive.restructuredtext","string.other.link.description","string.other.link.title"],"settings":{"foreground":"#FF79C6"}},{"scope":["entity.name.directive.restructuredtext","markup.quote"],"settings":{"fontStyle":"italic","foreground":"#F1FA8C"}},{"scope":["meta.separator.markdown"],"settings":{"foreground":"#6272A4"}},{"scope":["fenced_code.block.language","markup.raw.inner.restructuredtext","markup.fenced_code.block.markdown punctuation.definition.markdown"],"settings":{"foreground":"#50FA7B"}},{"scope":["punctuation.definition.constant.restructuredtext"],"settings":{"foreground":"#BD93F9"}},{"scope":["markup.heading.markdown punctuation.definition.string.begin","markup.heading.markdown punctuation.definition.string.end"],"settings":{"foreground":"#BD93F9"}},{"scope":["meta.paragraph.markdown punctuation.definition.string.begin","meta.paragraph.markdown punctuation.definition.string.end"],"settings":{"foreground":"#F8F8F2"}},{"scope":["markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.begin","markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.end"],"settings":{"foreground":"#F1FA8C"}},{"scope":["entity.name.type.class","entity.name.class"],"settings":{"fontStyle":"normal","foreground":"#8BE9FD"}},{"scope":["keyword.expressions-and-types.swift","keyword.other.this","variable.language","variable.language punctuation.definition.variable.php","variable.other.readwrite.instance.ruby","variable.parameter.function.language.special"],"settings":{"fontStyle":"italic","foreground":"#BD93F9"}},{"scope":["entity.other.inherited-class"],"settings":{"fontStyle":"italic","foreground":"#8BE9FD"}},{"scope":["comment","punctuation.definition.comment","unused.comment","wildcard.comment"],"settings":{"foreground":"#6272A4"}},{"scope":["comment keyword.codetag.notation","comment.block.documentation keyword","comment.block.documentation storage.type.class"],"settings":{"foreground":"#FF79C6"}},{"scope":["comment.block.documentation entity.name.type"],"settings":{"fontStyle":"italic","foreground":"#8BE9FD"}},{"scope":["comment.block.documentation entity.name.type punctuation.definition.bracket"],"settings":{"foreground":"#8BE9FD"}},{"scope":["comment.block.documentation variable"],"settings":{"fontStyle":"italic","foreground":"#FFB86C"}},{"scope":["constant","variable.other.constant"],"settings":{"foreground":"#BD93F9"}},{"scope":["constant.character.escape","constant.character.string.escape","constant.regexp"],"settings":{"foreground":"#FF79C6"}},{"scope":["entity.name.tag"],"settings":{"foreground":"#FF79C6"}},{"scope":["entity.other.attribute-name.parent-selector"],"settings":{"foreground":"#FF79C6"}},{"scope":["entity.other.attribute-name"],"settings":{"fontStyle":"italic","foreground":"#50FA7B"}},{"scope":["entity.name.function","meta.function-call.object","meta.function-call.php","meta.function-call.static","meta.method-call.java meta.method","meta.method.groovy","support.function.any-method.lua","keyword.operator.function.infix"],"settings":{"foreground":"#50FA7B"}},{"scope":["entity.name.variable.parameter","meta.at-rule.function variable","meta.at-rule.mixin variable","meta.function.arguments variable.other.php","meta.selectionset.graphql meta.arguments.graphql variable.arguments.graphql","variable.parameter"],"settings":{"fontStyle":"italic","foreground":"#FFB86C"}},{"scope":["meta.decorator variable.other.readwrite","meta.decorator variable.other.property"],"settings":{"fontStyle":"italic","foreground":"#50FA7B"}},{"scope":["meta.decorator variable.other.object"],"settings":{"foreground":"#50FA7B"}},{"scope":["keyword","punctuation.definition.keyword"],"settings":{"foreground":"#FF79C6"}},{"scope":["keyword.control.new","keyword.operator.new"],"settings":{"fontStyle":"bold"}},{"scope":["meta.selector"],"settings":{"foreground":"#FF79C6"}},{"scope":["support"],"settings":{"fontStyle":"italic","foreground":"#8BE9FD"}},{"scope":["support.function.magic","support.variable","variable.other.predefined"],"settings":{"fontStyle":"regular","foreground":"#BD93F9"}},{"scope":["support.function","support.type.property-name"],"settings":{"fontStyle":"regular"}},{"scope":["constant.other.symbol.hashkey punctuation.definition.constant.ruby","entity.other.attribute-name.placeholder punctuation","entity.other.attribute-name.pseudo-class punctuation","entity.other.attribute-name.pseudo-element punctuation","meta.group.double.toml","meta.group.toml","meta.object-binding-pattern-variable punctuation.destructuring","punctuation.colon.graphql","punctuation.definition.block.scalar.folded.yaml","punctuation.definition.block.scalar.literal.yaml","punctuation.definition.block.sequence.item.yaml","punctuation.definition.entity.other.inherited-class","punctuation.function.swift","punctuation.separator.dictionary.key-value","punctuation.separator.hash","punctuation.separator.inheritance","punctuation.separator.key-value","punctuation.separator.key-value.mapping.yaml","punctuation.separator.namespace","punctuation.separator.pointer-access","punctuation.separator.slice","string.unquoted.heredoc punctuation.definition.string","support.other.chomping-indicator.yaml","punctuation.separator.annotation"],"settings":{"foreground":"#FF79C6"}},{"scope":["keyword.operator.other.powershell","keyword.other.statement-separator.powershell","meta.brace.round","meta.function-call punctuation","punctuation.definition.arguments.begin","punctuation.definition.arguments.end","punctuation.definition.entity.begin","punctuation.definition.entity.end","punctuation.definition.tag.cs","punctuation.definition.type.begin","punctuation.definition.type.end","punctuation.section.scope.begin","punctuation.section.scope.end","punctuation.terminator.expression.php","storage.type.generic.java","string.template meta.brace","string.template punctuation.accessor"],"settings":{"foreground":"#F8F8F2"}},{"scope":["meta.string-contents.quoted.double punctuation.definition.variable","punctuation.definition.interpolation.begin","punctuation.definition.interpolation.end","punctuation.definition.template-expression.begin","punctuation.definition.template-expression.end","punctuation.section.embedded.begin","punctuation.section.embedded.coffee","punctuation.section.embedded.end","punctuation.section.embedded.end source.php","punctuation.section.embedded.end source.ruby","punctuation.definition.variable.makefile"],"settings":{"foreground":"#FF79C6"}},{"scope":["entity.name.function.target.makefile","entity.name.section.toml","entity.name.tag.yaml","variable.other.key.toml"],"settings":{"foreground":"#8BE9FD"}},{"scope":["constant.other.date","constant.other.timestamp"],"settings":{"foreground":"#FFB86C"}},{"scope":["variable.other.alias.yaml"],"settings":{"fontStyle":"italic underline","foreground":"#50FA7B"}},{"scope":["storage","meta.implementation storage.type.objc","meta.interface-or-protocol storage.type.objc","source.groovy storage.type.def"],"settings":{"fontStyle":"regular","foreground":"#FF79C6"}},{"scope":["entity.name.type","keyword.primitive-datatypes.swift","keyword.type.cs","meta.protocol-list.objc","meta.return-type.objc","source.go storage.type","source.groovy storage.type","source.java storage.type","source.powershell entity.other.attribute-name","storage.class.std.rust","storage.type.attribute.swift","storage.type.c","storage.type.core.rust","storage.type.cs","storage.type.groovy","storage.type.objc","storage.type.php","storage.type.haskell","storage.type.ocaml"],"settings":{"fontStyle":"italic","foreground":"#8BE9FD"}},{"scope":["entity.name.type.type-parameter","meta.indexer.mappedtype.declaration entity.name.type","meta.type.parameters entity.name.type"],"settings":{"foreground":"#FFB86C"}},{"scope":["storage.modifier"],"settings":{"foreground":"#FF79C6"}},{"scope":["string.regexp","constant.other.character-class.set.regexp","constant.character.escape.backslash.regexp"],"settings":{"foreground":"#F1FA8C"}},{"scope":["punctuation.definition.group.capture.regexp"],"settings":{"foreground":"#FF79C6"}},{"scope":["string.regexp punctuation.definition.string.begin","string.regexp punctuation.definition.string.end"],"settings":{"foreground":"#FF5555"}},{"scope":["punctuation.definition.character-class.regexp"],"settings":{"foreground":"#8BE9FD"}},{"scope":["punctuation.definition.group.regexp"],"settings":{"foreground":"#FFB86C"}},{"scope":["punctuation.definition.group.assertion.regexp","keyword.operator.negation.regexp"],"settings":{"foreground":"#FF5555"}},{"scope":["meta.assertion.look-ahead.regexp"],"settings":{"foreground":"#50FA7B"}},{"scope":["string"],"settings":{"foreground":"#F1FA8C"}},{"scope":["punctuation.definition.string.begin","punctuation.definition.string.end"],"settings":{"foreground":"#E9F284"}},{"scope":["punctuation.support.type.property-name.begin","punctuation.support.type.property-name.end"],"settings":{"foreground":"#8BE9FE"}},{"scope":["string.quoted.docstring.multi","string.quoted.docstring.multi.python punctuation.definition.string.begin","string.quoted.docstring.multi.python punctuation.definition.string.end","string.quoted.docstring.multi.python constant.character.escape"],"settings":{"foreground":"#6272A4"}},{"scope":["variable","constant.other.key.perl","support.variable.property","variable.other.constant.js","variable.other.constant.ts","variable.other.constant.tsx"],"settings":{"foreground":"#F8F8F2"}},{"scope":["meta.import variable.other.readwrite","meta.variable.assignment.destructured.object.coffee variable"],"settings":{"fontStyle":"italic","foreground":"#FFB86C"}},{"scope":["meta.import variable.other.readwrite.alias","meta.export variable.other.readwrite.alias","meta.variable.assignment.destructured.object.coffee variable variable"],"settings":{"fontStyle":"normal","foreground":"#F8F8F2"}},{"scope":["meta.selectionset.graphql variable"],"settings":{"foreground":"#F1FA8C"}},{"scope":["meta.selectionset.graphql meta.arguments variable"],"settings":{"foreground":"#F8F8F2"}},{"scope":["entity.name.fragment.graphql","variable.fragment.graphql"],"settings":{"foreground":"#8BE9FD"}},{"scope":["constant.other.symbol.hashkey.ruby","keyword.operator.dereference.java","keyword.operator.navigation.groovy","meta.scope.for-loop.shell punctuation.definition.string.begin","meta.scope.for-loop.shell punctuation.definition.string.end","meta.scope.for-loop.shell string","storage.modifier.import","punctuation.section.embedded.begin.tsx","punctuation.section.embedded.end.tsx","punctuation.section.embedded.begin.jsx","punctuation.section.embedded.end.jsx","punctuation.separator.list.comma.css","constant.language.empty-list.haskell"],"settings":{"foreground":"#F8F8F2"}},{"scope":["source.shell variable.other"],"settings":{"foreground":"#BD93F9"}},{"scope":["support.constant"],"settings":{"fontStyle":"normal","foreground":"#BD93F9"}},{"scope":["meta.scope.prerequisites.makefile"],"settings":{"foreground":"#F1FA8C"}},{"scope":["meta.attribute-selector.scss"],"settings":{"foreground":"#F1FA8C"}},{"scope":["punctuation.definition.attribute-selector.end.bracket.square.scss","punctuation.definition.attribute-selector.begin.bracket.square.scss"],"settings":{"foreground":"#F8F8F2"}},{"scope":["meta.preprocessor.haskell"],"settings":{"foreground":"#6272A4"}},{"scope":["log.error"],"settings":{"fontStyle":"bold","foreground":"#FF5555"}},{"scope":["log.warning"],"settings":{"fontStyle":"bold","foreground":"#F1FA8C"}}],"type":"dark"}'))});var oM={};x(oM,{default:()=>Jse});var Jse,sM=_(()=>{Jse=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBackground":"#BD93F910","activityBar.activeBorder":"#FF79C680","activityBar.background":"#343746","activityBar.foreground":"#f6f6f4","activityBar.inactiveForeground":"#7b7f8b","activityBarBadge.background":"#f286c4","activityBarBadge.foreground":"#f6f6f4","badge.background":"#44475A","badge.foreground":"#f6f6f4","breadcrumb.activeSelectionForeground":"#f6f6f4","breadcrumb.background":"#282A36","breadcrumb.focusForeground":"#f6f6f4","breadcrumb.foreground":"#7b7f8b","breadcrumbPicker.background":"#191A21","button.background":"#44475A","button.foreground":"#f6f6f4","button.secondaryBackground":"#282A36","button.secondaryForeground":"#f6f6f4","button.secondaryHoverBackground":"#343746","debugToolBar.background":"#262626","diffEditor.insertedTextBackground":"#50FA7B20","diffEditor.removedTextBackground":"#FF555550","dropdown.background":"#343746","dropdown.border":"#191A21","dropdown.foreground":"#f6f6f4","editor.background":"#282A36","editor.findMatchBackground":"#FFB86C80","editor.findMatchHighlightBackground":"#FFFFFF40","editor.findRangeHighlightBackground":"#44475A75","editor.foldBackground":"#21222C80","editor.foreground":"#f6f6f4","editor.hoverHighlightBackground":"#8BE9FD50","editor.lineHighlightBorder":"#44475A","editor.rangeHighlightBackground":"#BD93F915","editor.selectionBackground":"#44475A","editor.selectionHighlightBackground":"#424450","editor.snippetFinalTabstopHighlightBackground":"#282A36","editor.snippetFinalTabstopHighlightBorder":"#62e884","editor.snippetTabstopHighlightBackground":"#282A36","editor.snippetTabstopHighlightBorder":"#7b7f8b","editor.wordHighlightBackground":"#8BE9FD50","editor.wordHighlightStrongBackground":"#50FA7B50","editorBracketHighlight.foreground1":"#f6f6f4","editorBracketHighlight.foreground2":"#f286c4","editorBracketHighlight.foreground3":"#97e1f1","editorBracketHighlight.foreground4":"#62e884","editorBracketHighlight.foreground5":"#bf9eee","editorBracketHighlight.foreground6":"#FFB86C","editorBracketHighlight.unexpectedBracket.foreground":"#ee6666","editorCodeLens.foreground":"#7b7f8b","editorError.foreground":"#ee6666","editorGroup.border":"#bf9eee","editorGroup.dropBackground":"#44475A70","editorGroupHeader.tabsBackground":"#191A21","editorGutter.addedBackground":"#50FA7B80","editorGutter.deletedBackground":"#FF555580","editorGutter.modifiedBackground":"#8BE9FD80","editorHoverWidget.background":"#282A36","editorHoverWidget.border":"#7b7f8b","editorIndentGuide.activeBackground":"#FFFFFF45","editorIndentGuide.background":"#FFFFFF1A","editorLineNumber.foreground":"#7b7f8b","editorLink.activeForeground":"#97e1f1","editorMarkerNavigation.background":"#262626","editorOverviewRuler.addedForeground":"#50FA7B80","editorOverviewRuler.border":"#191A21","editorOverviewRuler.currentContentForeground":"#62e884","editorOverviewRuler.deletedForeground":"#FF555580","editorOverviewRuler.errorForeground":"#FF555580","editorOverviewRuler.incomingContentForeground":"#bf9eee","editorOverviewRuler.infoForeground":"#8BE9FD80","editorOverviewRuler.modifiedForeground":"#8BE9FD80","editorOverviewRuler.selectionHighlightForeground":"#FFB86C","editorOverviewRuler.warningForeground":"#FFB86C80","editorOverviewRuler.wordHighlightForeground":"#97e1f1","editorOverviewRuler.wordHighlightStrongForeground":"#62e884","editorRuler.foreground":"#FFFFFF1A","editorSuggestWidget.background":"#262626","editorSuggestWidget.foreground":"#f6f6f4","editorSuggestWidget.selectedBackground":"#44475A","editorWarning.foreground":"#97e1f1","editorWhitespace.foreground":"#FFFFFF1A","editorWidget.background":"#262626","errorForeground":"#ee6666","extensionButton.prominentBackground":"#50FA7B90","extensionButton.prominentForeground":"#f6f6f4","extensionButton.prominentHoverBackground":"#50FA7B60","focusBorder":"#7b7f8b","foreground":"#f6f6f4","gitDecoration.conflictingResourceForeground":"#FFB86C","gitDecoration.deletedResourceForeground":"#ee6666","gitDecoration.ignoredResourceForeground":"#7b7f8b","gitDecoration.modifiedResourceForeground":"#97e1f1","gitDecoration.untrackedResourceForeground":"#62e884","inlineChat.regionHighlight":"#343746","input.background":"#282A36","input.border":"#191A21","input.foreground":"#f6f6f4","input.placeholderForeground":"#7b7f8b","inputOption.activeBorder":"#bf9eee","inputValidation.errorBorder":"#ee6666","inputValidation.infoBorder":"#f286c4","inputValidation.warningBorder":"#FFB86C","list.activeSelectionBackground":"#44475A","list.activeSelectionForeground":"#f6f6f4","list.dropBackground":"#44475A","list.errorForeground":"#ee6666","list.focusBackground":"#44475A75","list.highlightForeground":"#97e1f1","list.hoverBackground":"#44475A75","list.inactiveSelectionBackground":"#44475A75","list.warningForeground":"#FFB86C","listFilterWidget.background":"#343746","listFilterWidget.noMatchesOutline":"#ee6666","listFilterWidget.outline":"#424450","merge.currentHeaderBackground":"#50FA7B90","merge.incomingHeaderBackground":"#BD93F990","panel.background":"#282A36","panel.border":"#bf9eee","panelTitle.activeBorder":"#f286c4","panelTitle.activeForeground":"#f6f6f4","panelTitle.inactiveForeground":"#7b7f8b","peekView.border":"#44475A","peekViewEditor.background":"#282A36","peekViewEditor.matchHighlightBackground":"#F1FA8C80","peekViewResult.background":"#262626","peekViewResult.fileForeground":"#f6f6f4","peekViewResult.lineForeground":"#f6f6f4","peekViewResult.matchHighlightBackground":"#F1FA8C80","peekViewResult.selectionBackground":"#44475A","peekViewResult.selectionForeground":"#f6f6f4","peekViewTitle.background":"#191A21","peekViewTitleDescription.foreground":"#7b7f8b","peekViewTitleLabel.foreground":"#f6f6f4","pickerGroup.border":"#bf9eee","pickerGroup.foreground":"#97e1f1","progressBar.background":"#f286c4","selection.background":"#bf9eee","settings.checkboxBackground":"#262626","settings.checkboxBorder":"#191A21","settings.checkboxForeground":"#f6f6f4","settings.dropdownBackground":"#262626","settings.dropdownBorder":"#191A21","settings.dropdownForeground":"#f6f6f4","settings.headerForeground":"#f6f6f4","settings.modifiedItemIndicator":"#FFB86C","settings.numberInputBackground":"#262626","settings.numberInputBorder":"#191A21","settings.numberInputForeground":"#f6f6f4","settings.textInputBackground":"#262626","settings.textInputBorder":"#191A21","settings.textInputForeground":"#f6f6f4","sideBar.background":"#262626","sideBarSectionHeader.background":"#282A36","sideBarSectionHeader.border":"#191A21","sideBarTitle.foreground":"#f6f6f4","statusBar.background":"#191A21","statusBar.debuggingBackground":"#ee6666","statusBar.debuggingForeground":"#191A21","statusBar.foreground":"#f6f6f4","statusBar.noFolderBackground":"#191A21","statusBar.noFolderForeground":"#f6f6f4","statusBarItem.prominentBackground":"#ee6666","statusBarItem.prominentHoverBackground":"#FFB86C","statusBarItem.remoteBackground":"#bf9eee","statusBarItem.remoteForeground":"#282A36","tab.activeBackground":"#282A36","tab.activeBorderTop":"#FF79C680","tab.activeForeground":"#f6f6f4","tab.border":"#191A21","tab.inactiveBackground":"#262626","tab.inactiveForeground":"#7b7f8b","terminal.ansiBlack":"#262626","terminal.ansiBlue":"#bf9eee","terminal.ansiBrightBlack":"#7b7f8b","terminal.ansiBrightBlue":"#d6b4f7","terminal.ansiBrightCyan":"#adf6f6","terminal.ansiBrightGreen":"#78f09a","terminal.ansiBrightMagenta":"#f49dda","terminal.ansiBrightRed":"#f07c7c","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#f6f6ae","terminal.ansiCyan":"#97e1f1","terminal.ansiGreen":"#62e884","terminal.ansiMagenta":"#f286c4","terminal.ansiRed":"#ee6666","terminal.ansiWhite":"#f6f6f4","terminal.ansiYellow":"#e7ee98","terminal.background":"#282A36","terminal.foreground":"#f6f6f4","titleBar.activeBackground":"#262626","titleBar.activeForeground":"#f6f6f4","titleBar.inactiveBackground":"#191A21","titleBar.inactiveForeground":"#7b7f8b","walkThrough.embeddedEditorBackground":"#262626"},"displayName":"Dracula Theme Soft","name":"dracula-soft","semanticHighlighting":true,"tokenColors":[{"scope":["emphasis"],"settings":{"fontStyle":"italic"}},{"scope":["strong"],"settings":{"fontStyle":"bold"}},{"scope":["header"],"settings":{"foreground":"#bf9eee"}},{"scope":["meta.diff","meta.diff.header"],"settings":{"foreground":"#7b7f8b"}},{"scope":["markup.inserted"],"settings":{"foreground":"#62e884"}},{"scope":["markup.deleted"],"settings":{"foreground":"#ee6666"}},{"scope":["markup.changed"],"settings":{"foreground":"#FFB86C"}},{"scope":["invalid"],"settings":{"fontStyle":"underline italic","foreground":"#ee6666"}},{"scope":["invalid.deprecated"],"settings":{"fontStyle":"underline italic","foreground":"#f6f6f4"}},{"scope":["entity.name.filename"],"settings":{"foreground":"#e7ee98"}},{"scope":["markup.error"],"settings":{"foreground":"#ee6666"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.bold"],"settings":{"fontStyle":"bold","foreground":"#FFB86C"}},{"scope":["markup.heading"],"settings":{"fontStyle":"bold","foreground":"#bf9eee"}},{"scope":["markup.italic"],"settings":{"fontStyle":"italic","foreground":"#e7ee98"}},{"scope":["beginning.punctuation.definition.list.markdown","beginning.punctuation.definition.quote.markdown","punctuation.definition.link.restructuredtext"],"settings":{"foreground":"#97e1f1"}},{"scope":["markup.inline.raw","markup.raw.restructuredtext"],"settings":{"foreground":"#62e884"}},{"scope":["markup.underline.link","markup.underline.link.image"],"settings":{"foreground":"#97e1f1"}},{"scope":["meta.link.reference.def.restructuredtext","punctuation.definition.directive.restructuredtext","string.other.link.description","string.other.link.title"],"settings":{"foreground":"#f286c4"}},{"scope":["entity.name.directive.restructuredtext","markup.quote"],"settings":{"fontStyle":"italic","foreground":"#e7ee98"}},{"scope":["meta.separator.markdown"],"settings":{"foreground":"#7b7f8b"}},{"scope":["fenced_code.block.language","markup.raw.inner.restructuredtext","markup.fenced_code.block.markdown punctuation.definition.markdown"],"settings":{"foreground":"#62e884"}},{"scope":["punctuation.definition.constant.restructuredtext"],"settings":{"foreground":"#bf9eee"}},{"scope":["markup.heading.markdown punctuation.definition.string.begin","markup.heading.markdown punctuation.definition.string.end"],"settings":{"foreground":"#bf9eee"}},{"scope":["meta.paragraph.markdown punctuation.definition.string.begin","meta.paragraph.markdown punctuation.definition.string.end"],"settings":{"foreground":"#f6f6f4"}},{"scope":["markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.begin","markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.end"],"settings":{"foreground":"#e7ee98"}},{"scope":["entity.name.type.class","entity.name.class"],"settings":{"fontStyle":"normal","foreground":"#97e1f1"}},{"scope":["keyword.expressions-and-types.swift","keyword.other.this","variable.language","variable.language punctuation.definition.variable.php","variable.other.readwrite.instance.ruby","variable.parameter.function.language.special"],"settings":{"fontStyle":"italic","foreground":"#bf9eee"}},{"scope":["entity.other.inherited-class"],"settings":{"fontStyle":"italic","foreground":"#97e1f1"}},{"scope":["comment","punctuation.definition.comment","unused.comment","wildcard.comment"],"settings":{"foreground":"#7b7f8b"}},{"scope":["comment keyword.codetag.notation","comment.block.documentation keyword","comment.block.documentation storage.type.class"],"settings":{"foreground":"#f286c4"}},{"scope":["comment.block.documentation entity.name.type"],"settings":{"fontStyle":"italic","foreground":"#97e1f1"}},{"scope":["comment.block.documentation entity.name.type punctuation.definition.bracket"],"settings":{"foreground":"#97e1f1"}},{"scope":["comment.block.documentation variable"],"settings":{"fontStyle":"italic","foreground":"#FFB86C"}},{"scope":["constant","variable.other.constant"],"settings":{"foreground":"#bf9eee"}},{"scope":["constant.character.escape","constant.character.string.escape","constant.regexp"],"settings":{"foreground":"#f286c4"}},{"scope":["entity.name.tag"],"settings":{"foreground":"#f286c4"}},{"scope":["entity.other.attribute-name.parent-selector"],"settings":{"foreground":"#f286c4"}},{"scope":["entity.other.attribute-name"],"settings":{"fontStyle":"italic","foreground":"#62e884"}},{"scope":["entity.name.function","meta.function-call.object","meta.function-call.php","meta.function-call.static","meta.method-call.java meta.method","meta.method.groovy","support.function.any-method.lua","keyword.operator.function.infix"],"settings":{"foreground":"#62e884"}},{"scope":["entity.name.variable.parameter","meta.at-rule.function variable","meta.at-rule.mixin variable","meta.function.arguments variable.other.php","meta.selectionset.graphql meta.arguments.graphql variable.arguments.graphql","variable.parameter"],"settings":{"fontStyle":"italic","foreground":"#FFB86C"}},{"scope":["meta.decorator variable.other.readwrite","meta.decorator variable.other.property"],"settings":{"fontStyle":"italic","foreground":"#62e884"}},{"scope":["meta.decorator variable.other.object"],"settings":{"foreground":"#62e884"}},{"scope":["keyword","punctuation.definition.keyword"],"settings":{"foreground":"#f286c4"}},{"scope":["keyword.control.new","keyword.operator.new"],"settings":{"fontStyle":"bold"}},{"scope":["meta.selector"],"settings":{"foreground":"#f286c4"}},{"scope":["support"],"settings":{"fontStyle":"italic","foreground":"#97e1f1"}},{"scope":["support.function.magic","support.variable","variable.other.predefined"],"settings":{"fontStyle":"regular","foreground":"#bf9eee"}},{"scope":["support.function","support.type.property-name"],"settings":{"fontStyle":"regular"}},{"scope":["constant.other.symbol.hashkey punctuation.definition.constant.ruby","entity.other.attribute-name.placeholder punctuation","entity.other.attribute-name.pseudo-class punctuation","entity.other.attribute-name.pseudo-element punctuation","meta.group.double.toml","meta.group.toml","meta.object-binding-pattern-variable punctuation.destructuring","punctuation.colon.graphql","punctuation.definition.block.scalar.folded.yaml","punctuation.definition.block.scalar.literal.yaml","punctuation.definition.block.sequence.item.yaml","punctuation.definition.entity.other.inherited-class","punctuation.function.swift","punctuation.separator.dictionary.key-value","punctuation.separator.hash","punctuation.separator.inheritance","punctuation.separator.key-value","punctuation.separator.key-value.mapping.yaml","punctuation.separator.namespace","punctuation.separator.pointer-access","punctuation.separator.slice","string.unquoted.heredoc punctuation.definition.string","support.other.chomping-indicator.yaml","punctuation.separator.annotation"],"settings":{"foreground":"#f286c4"}},{"scope":["keyword.operator.other.powershell","keyword.other.statement-separator.powershell","meta.brace.round","meta.function-call punctuation","punctuation.definition.arguments.begin","punctuation.definition.arguments.end","punctuation.definition.entity.begin","punctuation.definition.entity.end","punctuation.definition.tag.cs","punctuation.definition.type.begin","punctuation.definition.type.end","punctuation.section.scope.begin","punctuation.section.scope.end","punctuation.terminator.expression.php","storage.type.generic.java","string.template meta.brace","string.template punctuation.accessor"],"settings":{"foreground":"#f6f6f4"}},{"scope":["meta.string-contents.quoted.double punctuation.definition.variable","punctuation.definition.interpolation.begin","punctuation.definition.interpolation.end","punctuation.definition.template-expression.begin","punctuation.definition.template-expression.end","punctuation.section.embedded.begin","punctuation.section.embedded.coffee","punctuation.section.embedded.end","punctuation.section.embedded.end source.php","punctuation.section.embedded.end source.ruby","punctuation.definition.variable.makefile"],"settings":{"foreground":"#f286c4"}},{"scope":["entity.name.function.target.makefile","entity.name.section.toml","entity.name.tag.yaml","variable.other.key.toml"],"settings":{"foreground":"#97e1f1"}},{"scope":["constant.other.date","constant.other.timestamp"],"settings":{"foreground":"#FFB86C"}},{"scope":["variable.other.alias.yaml"],"settings":{"fontStyle":"italic underline","foreground":"#62e884"}},{"scope":["storage","meta.implementation storage.type.objc","meta.interface-or-protocol storage.type.objc","source.groovy storage.type.def"],"settings":{"fontStyle":"regular","foreground":"#f286c4"}},{"scope":["entity.name.type","keyword.primitive-datatypes.swift","keyword.type.cs","meta.protocol-list.objc","meta.return-type.objc","source.go storage.type","source.groovy storage.type","source.java storage.type","source.powershell entity.other.attribute-name","storage.class.std.rust","storage.type.attribute.swift","storage.type.c","storage.type.core.rust","storage.type.cs","storage.type.groovy","storage.type.objc","storage.type.php","storage.type.haskell","storage.type.ocaml"],"settings":{"fontStyle":"italic","foreground":"#97e1f1"}},{"scope":["entity.name.type.type-parameter","meta.indexer.mappedtype.declaration entity.name.type","meta.type.parameters entity.name.type"],"settings":{"foreground":"#FFB86C"}},{"scope":["storage.modifier"],"settings":{"foreground":"#f286c4"}},{"scope":["string.regexp","constant.other.character-class.set.regexp","constant.character.escape.backslash.regexp"],"settings":{"foreground":"#e7ee98"}},{"scope":["punctuation.definition.group.capture.regexp"],"settings":{"foreground":"#f286c4"}},{"scope":["string.regexp punctuation.definition.string.begin","string.regexp punctuation.definition.string.end"],"settings":{"foreground":"#ee6666"}},{"scope":["punctuation.definition.character-class.regexp"],"settings":{"foreground":"#97e1f1"}},{"scope":["punctuation.definition.group.regexp"],"settings":{"foreground":"#FFB86C"}},{"scope":["punctuation.definition.group.assertion.regexp","keyword.operator.negation.regexp"],"settings":{"foreground":"#ee6666"}},{"scope":["meta.assertion.look-ahead.regexp"],"settings":{"foreground":"#62e884"}},{"scope":["string"],"settings":{"foreground":"#e7ee98"}},{"scope":["punctuation.definition.string.begin","punctuation.definition.string.end"],"settings":{"foreground":"#dee492"}},{"scope":["punctuation.support.type.property-name.begin","punctuation.support.type.property-name.end"],"settings":{"foreground":"#97e2f2"}},{"scope":["string.quoted.docstring.multi","string.quoted.docstring.multi.python punctuation.definition.string.begin","string.quoted.docstring.multi.python punctuation.definition.string.end","string.quoted.docstring.multi.python constant.character.escape"],"settings":{"foreground":"#7b7f8b"}},{"scope":["variable","constant.other.key.perl","support.variable.property","variable.other.constant.js","variable.other.constant.ts","variable.other.constant.tsx"],"settings":{"foreground":"#f6f6f4"}},{"scope":["meta.import variable.other.readwrite","meta.variable.assignment.destructured.object.coffee variable"],"settings":{"fontStyle":"italic","foreground":"#FFB86C"}},{"scope":["meta.import variable.other.readwrite.alias","meta.export variable.other.readwrite.alias","meta.variable.assignment.destructured.object.coffee variable variable"],"settings":{"fontStyle":"normal","foreground":"#f6f6f4"}},{"scope":["meta.selectionset.graphql variable"],"settings":{"foreground":"#e7ee98"}},{"scope":["meta.selectionset.graphql meta.arguments variable"],"settings":{"foreground":"#f6f6f4"}},{"scope":["entity.name.fragment.graphql","variable.fragment.graphql"],"settings":{"foreground":"#97e1f1"}},{"scope":["constant.other.symbol.hashkey.ruby","keyword.operator.dereference.java","keyword.operator.navigation.groovy","meta.scope.for-loop.shell punctuation.definition.string.begin","meta.scope.for-loop.shell punctuation.definition.string.end","meta.scope.for-loop.shell string","storage.modifier.import","punctuation.section.embedded.begin.tsx","punctuation.section.embedded.end.tsx","punctuation.section.embedded.begin.jsx","punctuation.section.embedded.end.jsx","punctuation.separator.list.comma.css","constant.language.empty-list.haskell"],"settings":{"foreground":"#f6f6f4"}},{"scope":["source.shell variable.other"],"settings":{"foreground":"#bf9eee"}},{"scope":["support.constant"],"settings":{"fontStyle":"normal","foreground":"#bf9eee"}},{"scope":["meta.scope.prerequisites.makefile"],"settings":{"foreground":"#e7ee98"}},{"scope":["meta.attribute-selector.scss"],"settings":{"foreground":"#e7ee98"}},{"scope":["punctuation.definition.attribute-selector.end.bracket.square.scss","punctuation.definition.attribute-selector.begin.bracket.square.scss"],"settings":{"foreground":"#f6f6f4"}},{"scope":["meta.preprocessor.haskell"],"settings":{"foreground":"#7b7f8b"}},{"scope":["log.error"],"settings":{"fontStyle":"bold","foreground":"#ee6666"}},{"scope":["log.warning"],"settings":{"fontStyle":"bold","foreground":"#e7ee98"}}],"type":"dark"}'))});var cM={};x(cM,{default:()=>Vse});var Vse,lM=_(()=>{Vse=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#a7c080d0","activityBar.activeFocusBorder":"#a7c080","activityBar.background":"#2d353b","activityBar.border":"#2d353b","activityBar.dropBackground":"#2d353b","activityBar.foreground":"#d3c6aa","activityBar.inactiveForeground":"#859289","activityBarBadge.background":"#a7c080","activityBarBadge.foreground":"#2d353b","badge.background":"#a7c080","badge.foreground":"#2d353b","breadcrumb.activeSelectionForeground":"#d3c6aa","breadcrumb.focusForeground":"#d3c6aa","breadcrumb.foreground":"#859289","button.background":"#a7c080","button.foreground":"#2d353b","button.hoverBackground":"#a7c080d0","button.secondaryBackground":"#3d484d","button.secondaryForeground":"#d3c6aa","button.secondaryHoverBackground":"#475258","charts.blue":"#7fbbb3","charts.foreground":"#d3c6aa","charts.green":"#a7c080","charts.orange":"#e69875","charts.purple":"#d699b6","charts.red":"#e67e80","charts.yellow":"#dbbc7f","checkbox.background":"#2d353b","checkbox.border":"#4f585e","checkbox.foreground":"#e69875","debugConsole.errorForeground":"#e67e80","debugConsole.infoForeground":"#a7c080","debugConsole.sourceForeground":"#d699b6","debugConsole.warningForeground":"#dbbc7f","debugConsoleInputIcon.foreground":"#83c092","debugIcon.breakpointCurrentStackframeForeground":"#7fbbb3","debugIcon.breakpointDisabledForeground":"#da6362","debugIcon.breakpointForeground":"#e67e80","debugIcon.breakpointStackframeForeground":"#e67e80","debugIcon.breakpointUnverifiedForeground":"#9aa79d","debugIcon.continueForeground":"#7fbbb3","debugIcon.disconnectForeground":"#d699b6","debugIcon.pauseForeground":"#dbbc7f","debugIcon.restartForeground":"#83c092","debugIcon.startForeground":"#83c092","debugIcon.stepBackForeground":"#7fbbb3","debugIcon.stepIntoForeground":"#7fbbb3","debugIcon.stepOutForeground":"#7fbbb3","debugIcon.stepOverForeground":"#7fbbb3","debugIcon.stopForeground":"#e67e80","debugTokenExpression.boolean":"#d699b6","debugTokenExpression.error":"#e67e80","debugTokenExpression.name":"#7fbbb3","debugTokenExpression.number":"#d699b6","debugTokenExpression.string":"#dbbc7f","debugTokenExpression.value":"#a7c080","debugToolBar.background":"#2d353b","descriptionForeground":"#859289","diffEditor.diagonalFill":"#4f585e","diffEditor.insertedTextBackground":"#569d7930","diffEditor.removedTextBackground":"#da636230","dropdown.background":"#2d353b","dropdown.border":"#4f585e","dropdown.foreground":"#9aa79d","editor.background":"#2d353b","editor.findMatchBackground":"#d77f4840","editor.findMatchHighlightBackground":"#899c4040","editor.findRangeHighlightBackground":"#47525860","editor.foldBackground":"#4f585e80","editor.foreground":"#d3c6aa","editor.hoverHighlightBackground":"#475258b0","editor.inactiveSelectionBackground":"#47525860","editor.lineHighlightBackground":"#3d484d90","editor.lineHighlightBorder":"#4f585e00","editor.rangeHighlightBackground":"#3d484d80","editor.selectionBackground":"#475258c0","editor.selectionHighlightBackground":"#47525860","editor.snippetFinalTabstopHighlightBackground":"#899c4040","editor.snippetFinalTabstopHighlightBorder":"#2d353b","editor.snippetTabstopHighlightBackground":"#3d484d","editor.symbolHighlightBackground":"#5a93a240","editor.wordHighlightBackground":"#47525858","editor.wordHighlightStrongBackground":"#475258b0","editorBracketHighlight.foreground1":"#e67e80","editorBracketHighlight.foreground2":"#dbbc7f","editorBracketHighlight.foreground3":"#a7c080","editorBracketHighlight.foreground4":"#7fbbb3","editorBracketHighlight.foreground5":"#e69875","editorBracketHighlight.foreground6":"#d699b6","editorBracketHighlight.unexpectedBracket.foreground":"#859289","editorBracketMatch.background":"#4f585e","editorBracketMatch.border":"#2d353b00","editorCodeLens.foreground":"#7f897da0","editorCursor.foreground":"#d3c6aa","editorError.background":"#da636200","editorError.foreground":"#da6362","editorGhostText.background":"#2d353b00","editorGhostText.foreground":"#7f897da0","editorGroup.border":"#21272b","editorGroup.dropBackground":"#4f585e60","editorGroupHeader.noTabsBackground":"#2d353b","editorGroupHeader.tabsBackground":"#2d353b","editorGutter.addedBackground":"#899c40a0","editorGutter.background":"#2d353b00","editorGutter.commentRangeForeground":"#7f897d","editorGutter.deletedBackground":"#da6362a0","editorGutter.modifiedBackground":"#5a93a2a0","editorHint.foreground":"#b87b9d","editorHoverWidget.background":"#343f44","editorHoverWidget.border":"#475258","editorIndentGuide.activeBackground":"#9aa79d50","editorIndentGuide.background":"#9aa79d20","editorInfo.background":"#5a93a200","editorInfo.foreground":"#5a93a2","editorInlayHint.background":"#2d353b00","editorInlayHint.foreground":"#7f897da0","editorInlayHint.parameterBackground":"#2d353b00","editorInlayHint.parameterForeground":"#7f897da0","editorInlayHint.typeBackground":"#2d353b00","editorInlayHint.typeForeground":"#7f897da0","editorLightBulb.foreground":"#dbbc7f","editorLightBulbAutoFix.foreground":"#83c092","editorLineNumber.activeForeground":"#9aa79de0","editorLineNumber.foreground":"#7f897da0","editorLink.activeForeground":"#a7c080","editorMarkerNavigation.background":"#343f44","editorMarkerNavigationError.background":"#da636280","editorMarkerNavigationInfo.background":"#5a93a280","editorMarkerNavigationWarning.background":"#bf983d80","editorOverviewRuler.addedForeground":"#899c40a0","editorOverviewRuler.border":"#2d353b00","editorOverviewRuler.commonContentForeground":"#859289","editorOverviewRuler.currentContentForeground":"#5a93a2","editorOverviewRuler.deletedForeground":"#da6362a0","editorOverviewRuler.errorForeground":"#e67e80","editorOverviewRuler.findMatchForeground":"#569d79","editorOverviewRuler.incomingContentForeground":"#569d79","editorOverviewRuler.infoForeground":"#d699b6","editorOverviewRuler.modifiedForeground":"#5a93a2a0","editorOverviewRuler.rangeHighlightForeground":"#569d79","editorOverviewRuler.selectionHighlightForeground":"#569d79","editorOverviewRuler.warningForeground":"#dbbc7f","editorOverviewRuler.wordHighlightForeground":"#4f585e","editorOverviewRuler.wordHighlightStrongForeground":"#4f585e","editorRuler.foreground":"#475258a0","editorSuggestWidget.background":"#3d484d","editorSuggestWidget.border":"#3d484d","editorSuggestWidget.foreground":"#d3c6aa","editorSuggestWidget.highlightForeground":"#a7c080","editorSuggestWidget.selectedBackground":"#475258","editorUnnecessaryCode.border":"#2d353b","editorUnnecessaryCode.opacity":"#00000080","editorWarning.background":"#bf983d00","editorWarning.foreground":"#bf983d","editorWhitespace.foreground":"#475258","editorWidget.background":"#2d353b","editorWidget.border":"#4f585e","editorWidget.foreground":"#d3c6aa","errorForeground":"#e67e80","extensionBadge.remoteBackground":"#a7c080","extensionBadge.remoteForeground":"#2d353b","extensionButton.prominentBackground":"#a7c080","extensionButton.prominentForeground":"#2d353b","extensionButton.prominentHoverBackground":"#a7c080d0","extensionIcon.preReleaseForeground":"#e69875","extensionIcon.starForeground":"#83c092","extensionIcon.verifiedForeground":"#a7c080","focusBorder":"#2d353b00","foreground":"#9aa79d","gitDecoration.addedResourceForeground":"#a7c080a0","gitDecoration.conflictingResourceForeground":"#d699b6a0","gitDecoration.deletedResourceForeground":"#e67e80a0","gitDecoration.ignoredResourceForeground":"#4f585e","gitDecoration.modifiedResourceForeground":"#7fbbb3a0","gitDecoration.stageDeletedResourceForeground":"#83c092a0","gitDecoration.stageModifiedResourceForeground":"#83c092a0","gitDecoration.submoduleResourceForeground":"#e69875a0","gitDecoration.untrackedResourceForeground":"#dbbc7fa0","gitlens.closedPullRequestIconColor":"#e67e80","gitlens.decorations.addedForegroundColor":"#a7c080","gitlens.decorations.branchAheadForegroundColor":"#83c092","gitlens.decorations.branchBehindForegroundColor":"#e69875","gitlens.decorations.branchDivergedForegroundColor":"#dbbc7f","gitlens.decorations.branchMissingUpstreamForegroundColor":"#e67e80","gitlens.decorations.branchUnpublishedForegroundColor":"#7fbbb3","gitlens.decorations.branchUpToDateForegroundColor":"#d3c6aa","gitlens.decorations.copiedForegroundColor":"#d699b6","gitlens.decorations.deletedForegroundColor":"#e67e80","gitlens.decorations.ignoredForegroundColor":"#9aa79d","gitlens.decorations.modifiedForegroundColor":"#7fbbb3","gitlens.decorations.renamedForegroundColor":"#d699b6","gitlens.decorations.untrackedForegroundColor":"#dbbc7f","gitlens.gutterBackgroundColor":"#2d353b","gitlens.gutterForegroundColor":"#d3c6aa","gitlens.gutterUncommittedForegroundColor":"#7fbbb3","gitlens.lineHighlightBackgroundColor":"#343f44","gitlens.lineHighlightOverviewRulerColor":"#a7c080","gitlens.mergedPullRequestIconColor":"#d699b6","gitlens.openPullRequestIconColor":"#83c092","gitlens.trailingLineForegroundColor":"#859289","gitlens.unpublishedCommitIconColor":"#dbbc7f","gitlens.unpulledChangesIconColor":"#e69875","gitlens.unpushlishedChangesIconColor":"#7fbbb3","icon.foreground":"#83c092","imagePreview.border":"#2d353b","input.background":"#2d353b00","input.border":"#4f585e","input.foreground":"#d3c6aa","input.placeholderForeground":"#7f897d","inputOption.activeBorder":"#83c092","inputValidation.errorBackground":"#da6362","inputValidation.errorBorder":"#e67e80","inputValidation.errorForeground":"#d3c6aa","inputValidation.infoBackground":"#5a93a2","inputValidation.infoBorder":"#7fbbb3","inputValidation.infoForeground":"#d3c6aa","inputValidation.warningBackground":"#bf983d","inputValidation.warningBorder":"#dbbc7f","inputValidation.warningForeground":"#d3c6aa","issues.closed":"#e67e80","issues.open":"#83c092","keybindingLabel.background":"#2d353b00","keybindingLabel.border":"#272e33","keybindingLabel.bottomBorder":"#21272b","keybindingLabel.foreground":"#d3c6aa","keybindingTable.headerBackground":"#3d484d","keybindingTable.rowsBackground":"#343f44","list.activeSelectionBackground":"#47525880","list.activeSelectionForeground":"#d3c6aa","list.dropBackground":"#343f4480","list.errorForeground":"#e67e80","list.focusBackground":"#47525880","list.focusForeground":"#d3c6aa","list.highlightForeground":"#a7c080","list.hoverBackground":"#2d353b00","list.hoverForeground":"#d3c6aa","list.inactiveFocusBackground":"#47525860","list.inactiveSelectionBackground":"#47525880","list.inactiveSelectionForeground":"#9aa79d","list.invalidItemForeground":"#da6362","list.warningForeground":"#dbbc7f","menu.background":"#2d353b","menu.foreground":"#9aa79d","menu.selectionBackground":"#343f44","menu.selectionForeground":"#d3c6aa","menubar.selectionBackground":"#2d353b","menubar.selectionBorder":"#2d353b","merge.border":"#2d353b00","merge.currentContentBackground":"#5a93a240","merge.currentHeaderBackground":"#5a93a280","merge.incomingContentBackground":"#569d7940","merge.incomingHeaderBackground":"#569d7980","minimap.errorHighlight":"#da636280","minimap.findMatchHighlight":"#569d7960","minimap.selectionHighlight":"#4f585ef0","minimap.warningHighlight":"#bf983d80","minimapGutter.addedBackground":"#899c40a0","minimapGutter.deletedBackground":"#da6362a0","minimapGutter.modifiedBackground":"#5a93a2a0","notebook.cellBorderColor":"#4f585e","notebook.cellHoverBackground":"#2d353b","notebook.cellStatusBarItemHoverBackground":"#343f44","notebook.cellToolbarSeparator":"#4f585e","notebook.focusedCellBackground":"#2d353b","notebook.focusedCellBorder":"#4f585e","notebook.focusedEditorBorder":"#4f585e","notebook.focusedRowBorder":"#4f585e","notebook.inactiveFocusedCellBorder":"#4f585e","notebook.outputContainerBackgroundColor":"#272e33","notebook.selectedCellBorder":"#4f585e","notebookStatusErrorIcon.foreground":"#e67e80","notebookStatusRunningIcon.foreground":"#7fbbb3","notebookStatusSuccessIcon.foreground":"#a7c080","notificationCenterHeader.background":"#3d484d","notificationCenterHeader.foreground":"#d3c6aa","notificationLink.foreground":"#a7c080","notifications.background":"#2d353b","notifications.foreground":"#d3c6aa","notificationsErrorIcon.foreground":"#e67e80","notificationsInfoIcon.foreground":"#7fbbb3","notificationsWarningIcon.foreground":"#dbbc7f","panel.background":"#2d353b","panel.border":"#2d353b","panelInput.border":"#4f585e","panelSection.border":"#21272b","panelSectionHeader.background":"#2d353b","panelTitle.activeBorder":"#a7c080d0","panelTitle.activeForeground":"#d3c6aa","panelTitle.inactiveForeground":"#859289","peekView.border":"#475258","peekViewEditor.background":"#343f44","peekViewEditor.matchHighlightBackground":"#bf983d50","peekViewEditorGutter.background":"#343f44","peekViewResult.background":"#343f44","peekViewResult.fileForeground":"#d3c6aa","peekViewResult.lineForeground":"#9aa79d","peekViewResult.matchHighlightBackground":"#bf983d50","peekViewResult.selectionBackground":"#569d7950","peekViewResult.selectionForeground":"#d3c6aa","peekViewTitle.background":"#475258","peekViewTitleDescription.foreground":"#d3c6aa","peekViewTitleLabel.foreground":"#a7c080","pickerGroup.border":"#a7c0801a","pickerGroup.foreground":"#d3c6aa","ports.iconRunningProcessForeground":"#e69875","problemsErrorIcon.foreground":"#e67e80","problemsInfoIcon.foreground":"#7fbbb3","problemsWarningIcon.foreground":"#dbbc7f","progressBar.background":"#a7c080","quickInputTitle.background":"#343f44","rust_analyzer.inlayHints.background":"#2d353b00","rust_analyzer.inlayHints.foreground":"#7f897da0","rust_analyzer.syntaxTreeBorder":"#e67e80","sash.hoverBorder":"#475258","scrollbar.shadow":"#00000070","scrollbarSlider.activeBackground":"#9aa79d","scrollbarSlider.background":"#4f585e80","scrollbarSlider.hoverBackground":"#4f585e","selection.background":"#475258e0","settings.checkboxBackground":"#2d353b","settings.checkboxBorder":"#4f585e","settings.checkboxForeground":"#e69875","settings.dropdownBackground":"#2d353b","settings.dropdownBorder":"#4f585e","settings.dropdownForeground":"#83c092","settings.focusedRowBackground":"#343f44","settings.headerForeground":"#9aa79d","settings.modifiedItemIndicator":"#7f897d","settings.numberInputBackground":"#2d353b","settings.numberInputBorder":"#4f585e","settings.numberInputForeground":"#d699b6","settings.rowHoverBackground":"#343f44","settings.textInputBackground":"#2d353b","settings.textInputBorder":"#4f585e","settings.textInputForeground":"#7fbbb3","sideBar.background":"#2d353b","sideBar.foreground":"#859289","sideBarSectionHeader.background":"#2d353b00","sideBarSectionHeader.foreground":"#9aa79d","sideBarTitle.foreground":"#9aa79d","statusBar.background":"#2d353b","statusBar.border":"#2d353b","statusBar.debuggingBackground":"#2d353b","statusBar.debuggingForeground":"#e69875","statusBar.foreground":"#9aa79d","statusBar.noFolderBackground":"#2d353b","statusBar.noFolderBorder":"#2d353b","statusBar.noFolderForeground":"#9aa79d","statusBarItem.activeBackground":"#47525870","statusBarItem.errorBackground":"#2d353b","statusBarItem.errorForeground":"#e67e80","statusBarItem.hoverBackground":"#475258a0","statusBarItem.prominentBackground":"#2d353b","statusBarItem.prominentForeground":"#d3c6aa","statusBarItem.prominentHoverBackground":"#475258a0","statusBarItem.remoteBackground":"#2d353b","statusBarItem.remoteForeground":"#9aa79d","statusBarItem.warningBackground":"#2d353b","statusBarItem.warningForeground":"#dbbc7f","symbolIcon.arrayForeground":"#7fbbb3","symbolIcon.booleanForeground":"#d699b6","symbolIcon.classForeground":"#dbbc7f","symbolIcon.colorForeground":"#d3c6aa","symbolIcon.constantForeground":"#83c092","symbolIcon.constructorForeground":"#d699b6","symbolIcon.enumeratorForeground":"#d699b6","symbolIcon.enumeratorMemberForeground":"#83c092","symbolIcon.eventForeground":"#dbbc7f","symbolIcon.fieldForeground":"#d3c6aa","symbolIcon.fileForeground":"#d3c6aa","symbolIcon.folderForeground":"#d3c6aa","symbolIcon.functionForeground":"#a7c080","symbolIcon.interfaceForeground":"#dbbc7f","symbolIcon.keyForeground":"#a7c080","symbolIcon.keywordForeground":"#e67e80","symbolIcon.methodForeground":"#a7c080","symbolIcon.moduleForeground":"#d699b6","symbolIcon.namespaceForeground":"#d699b6","symbolIcon.nullForeground":"#83c092","symbolIcon.numberForeground":"#d699b6","symbolIcon.objectForeground":"#d699b6","symbolIcon.operatorForeground":"#e69875","symbolIcon.packageForeground":"#d699b6","symbolIcon.propertyForeground":"#83c092","symbolIcon.referenceForeground":"#7fbbb3","symbolIcon.snippetForeground":"#d3c6aa","symbolIcon.stringForeground":"#a7c080","symbolIcon.structForeground":"#dbbc7f","symbolIcon.textForeground":"#d3c6aa","symbolIcon.typeParameterForeground":"#83c092","symbolIcon.unitForeground":"#d3c6aa","symbolIcon.variableForeground":"#7fbbb3","tab.activeBackground":"#2d353b","tab.activeBorder":"#a7c080d0","tab.activeForeground":"#d3c6aa","tab.border":"#2d353b","tab.hoverBackground":"#2d353b","tab.hoverForeground":"#d3c6aa","tab.inactiveBackground":"#2d353b","tab.inactiveForeground":"#7f897d","tab.lastPinnedBorder":"#a7c080d0","tab.unfocusedActiveBorder":"#859289","tab.unfocusedActiveForeground":"#9aa79d","tab.unfocusedHoverForeground":"#d3c6aa","tab.unfocusedInactiveForeground":"#7f897d","terminal.ansiBlack":"#343f44","terminal.ansiBlue":"#7fbbb3","terminal.ansiBrightBlack":"#859289","terminal.ansiBrightBlue":"#7fbbb3","terminal.ansiBrightCyan":"#83c092","terminal.ansiBrightGreen":"#a7c080","terminal.ansiBrightMagenta":"#d699b6","terminal.ansiBrightRed":"#e67e80","terminal.ansiBrightWhite":"#d3c6aa","terminal.ansiBrightYellow":"#dbbc7f","terminal.ansiCyan":"#83c092","terminal.ansiGreen":"#a7c080","terminal.ansiMagenta":"#d699b6","terminal.ansiRed":"#e67e80","terminal.ansiWhite":"#d3c6aa","terminal.ansiYellow":"#dbbc7f","terminal.foreground":"#d3c6aa","terminalCursor.foreground":"#d3c6aa","testing.iconErrored":"#e67e80","testing.iconFailed":"#e67e80","testing.iconPassed":"#83c092","testing.iconQueued":"#7fbbb3","testing.iconSkipped":"#d699b6","testing.iconUnset":"#dbbc7f","testing.runAction":"#83c092","textBlockQuote.background":"#272e33","textBlockQuote.border":"#475258","textCodeBlock.background":"#272e33","textLink.activeForeground":"#a7c080c0","textLink.foreground":"#a7c080","textPreformat.foreground":"#dbbc7f","titleBar.activeBackground":"#2d353b","titleBar.activeForeground":"#9aa79d","titleBar.border":"#2d353b","titleBar.inactiveBackground":"#2d353b","titleBar.inactiveForeground":"#7f897d","toolbar.hoverBackground":"#343f44","tree.indentGuidesStroke":"#7f897d","walkThrough.embeddedEditorBackground":"#272e33","welcomePage.buttonBackground":"#343f44","welcomePage.buttonHoverBackground":"#343f44a0","welcomePage.progress.foreground":"#a7c080","welcomePage.tileHoverBackground":"#343f44","widget.shadow":"#00000070"},"displayName":"Everforest Dark","name":"everforest-dark","semanticHighlighting":true,"semanticTokenColors":{"class:python":"#83c092","class:typescript":"#83c092","class:typescriptreact":"#83c092","enum:typescript":"#d699b6","enum:typescriptreact":"#d699b6","enumMember:typescript":"#7fbbb3","enumMember:typescriptreact":"#7fbbb3","interface:typescript":"#83c092","interface:typescriptreact":"#83c092","intrinsic:python":"#d699b6","macro:rust":"#83c092","memberOperatorOverload":"#e69875","module:python":"#7fbbb3","namespace:rust":"#d699b6","namespace:typescript":"#d699b6","namespace:typescriptreact":"#d699b6","operatorOverload":"#e69875","property.defaultLibrary:javascript":"#d699b6","property.defaultLibrary:javascriptreact":"#d699b6","property.defaultLibrary:typescript":"#d699b6","property.defaultLibrary:typescriptreact":"#d699b6","selfKeyword:rust":"#d699b6","variable.defaultLibrary:javascript":"#d699b6","variable.defaultLibrary:javascriptreact":"#d699b6","variable.defaultLibrary:typescript":"#d699b6","variable.defaultLibrary:typescriptreact":"#d699b6"},"tokenColors":[{"scope":"keyword, storage.type.function, storage.type.class, storage.type.enum, storage.type.interface, storage.type.property, keyword.operator.new, keyword.operator.expression, keyword.operator.new, keyword.operator.delete, storage.type.extends","settings":{"foreground":"#e67e80"}},{"scope":"keyword.other.debugger","settings":{"foreground":"#e67e80"}},{"scope":"storage, modifier, keyword.var, entity.name.tag, keyword.control.case, keyword.control.switch","settings":{"foreground":"#e69875"}},{"scope":"keyword.operator","settings":{"foreground":"#e69875"}},{"scope":"string, punctuation.definition.string.end, punctuation.definition.string.begin, punctuation.definition.string.template.begin, punctuation.definition.string.template.end","settings":{"foreground":"#dbbc7f"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#dbbc7f"}},{"scope":"constant.character.escape, punctuation.quasi.element, punctuation.definition.template-expression, punctuation.section.embedded, storage.type.format, constant.other.placeholder, constant.other.placeholder, variable.interpolation","settings":{"foreground":"#a7c080"}},{"scope":"entity.name.function, support.function, meta.function, meta.function-call, meta.definition.method","settings":{"foreground":"#a7c080"}},{"scope":"keyword.control.at-rule, keyword.control.import, keyword.control.export, storage.type.namespace, punctuation.decorator, keyword.control.directive, keyword.preprocessor, punctuation.definition.preprocessor, punctuation.definition.directive, keyword.other.import, keyword.other.package, entity.name.type.namespace, entity.name.scope-resolution, keyword.other.using, keyword.package, keyword.import, keyword.map","settings":{"foreground":"#83c092"}},{"scope":"storage.type.annotation","settings":{"foreground":"#83c092"}},{"scope":"entity.name.label, constant.other.label","settings":{"foreground":"#83c092"}},{"scope":"support.module, support.node, support.other.module, support.type.object.module, entity.name.type.module, entity.name.type.class.module, keyword.control.module","settings":{"foreground":"#83c092"}},{"scope":"storage.type, support.type, entity.name.type, keyword.type","settings":{"foreground":"#7fbbb3"}},{"scope":"entity.name.type.class, support.class, entity.name.class, entity.other.inherited-class, storage.class","settings":{"foreground":"#7fbbb3"}},{"scope":"constant.numeric","settings":{"foreground":"#d699b6"}},{"scope":"constant.language.boolean","settings":{"foreground":"#d699b6"}},{"scope":"entity.name.function.preprocessor","settings":{"foreground":"#d699b6"}},{"scope":"variable.language.this, variable.language.self, variable.language.super, keyword.other.this, variable.language.special, constant.language.null, constant.language.undefined, constant.language.nan","settings":{"foreground":"#d699b6"}},{"scope":"constant.language, support.constant","settings":{"foreground":"#d699b6"}},{"scope":"variable, support.variable, meta.definition.variable","settings":{"foreground":"#d3c6aa"}},{"scope":"variable.object.property, support.variable.property, variable.other.property, variable.other.object.property, variable.other.enummember, variable.other.member, meta.object-literal.key","settings":{"foreground":"#d3c6aa"}},{"scope":"punctuation, meta.brace, meta.delimiter, meta.bracket","settings":{"foreground":"#d3c6aa"}},{"scope":"heading.1.markdown, markup.heading.setext.1.markdown","settings":{"fontStyle":"bold","foreground":"#e67e80"}},{"scope":"heading.2.markdown, markup.heading.setext.2.markdown","settings":{"fontStyle":"bold","foreground":"#e69875"}},{"scope":"heading.3.markdown","settings":{"fontStyle":"bold","foreground":"#dbbc7f"}},{"scope":"heading.4.markdown","settings":{"fontStyle":"bold","foreground":"#a7c080"}},{"scope":"heading.5.markdown","settings":{"fontStyle":"bold","foreground":"#7fbbb3"}},{"scope":"heading.6.markdown","settings":{"fontStyle":"bold","foreground":"#d699b6"}},{"scope":"punctuation.definition.heading.markdown","settings":{"fontStyle":"regular","foreground":"#859289"}},{"scope":"string.other.link.title.markdown, constant.other.reference.link.markdown, string.other.link.description.markdown","settings":{"fontStyle":"regular","foreground":"#d699b6"}},{"scope":"markup.underline.link.image.markdown, markup.underline.link.markdown","settings":{"fontStyle":"underline","foreground":"#a7c080"}},{"scope":"punctuation.definition.string.begin.markdown, punctuation.definition.string.end.markdown, punctuation.definition.italic.markdown, punctuation.definition.quote.begin.markdown, punctuation.definition.metadata.markdown, punctuation.separator.key-value.markdown, punctuation.definition.constant.markdown","settings":{"foreground":"#859289"}},{"scope":"punctuation.definition.bold.markdown","settings":{"fontStyle":"regular","foreground":"#859289"}},{"scope":"meta.separator.markdown, punctuation.definition.constant.begin.markdown, punctuation.definition.constant.end.markdown","settings":{"fontStyle":"bold","foreground":"#859289"}},{"scope":"markup.italic","settings":{"fontStyle":"italic"}},{"scope":"markup.bold","settings":{"fontStyle":"bold"}},{"scope":"markup.bold markup.italic, markup.italic markup.bold","settings":{"fontStyle":"italic bold"}},{"scope":"punctuation.definition.markdown, punctuation.definition.raw.markdown","settings":{"foreground":"#dbbc7f"}},{"scope":"fenced_code.block.language","settings":{"foreground":"#dbbc7f"}},{"scope":"markup.fenced_code.block.markdown, markup.inline.raw.string.markdown","settings":{"foreground":"#a7c080"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#e67e80"}},{"scope":"punctuation.definition.heading.restructuredtext","settings":{"fontStyle":"bold","foreground":"#e69875"}},{"scope":"punctuation.definition.field.restructuredtext, punctuation.separator.key-value.restructuredtext, punctuation.definition.directive.restructuredtext, punctuation.definition.constant.restructuredtext, punctuation.definition.italic.restructuredtext, punctuation.definition.table.restructuredtext","settings":{"foreground":"#859289"}},{"scope":"punctuation.definition.bold.restructuredtext","settings":{"fontStyle":"regular","foreground":"#859289"}},{"scope":"entity.name.tag.restructuredtext, punctuation.definition.link.restructuredtext, punctuation.definition.raw.restructuredtext, punctuation.section.raw.restructuredtext","settings":{"foreground":"#83c092"}},{"scope":"constant.other.footnote.link.restructuredtext","settings":{"foreground":"#d699b6"}},{"scope":"support.directive.restructuredtext","settings":{"foreground":"#e67e80"}},{"scope":"entity.name.directive.restructuredtext, markup.raw.restructuredtext, markup.raw.inner.restructuredtext, string.other.link.title.restructuredtext","settings":{"foreground":"#a7c080"}},{"scope":"punctuation.definition.function.latex, punctuation.definition.function.tex, punctuation.definition.keyword.latex, constant.character.newline.tex, punctuation.definition.keyword.tex","settings":{"foreground":"#859289"}},{"scope":"support.function.be.latex","settings":{"foreground":"#e67e80"}},{"scope":"support.function.section.latex, keyword.control.table.cell.latex, keyword.control.table.newline.latex","settings":{"foreground":"#e69875"}},{"scope":"support.class.latex, variable.parameter.latex, variable.parameter.function.latex, variable.parameter.definition.label.latex, constant.other.reference.label.latex","settings":{"foreground":"#dbbc7f"}},{"scope":"keyword.control.preamble.latex","settings":{"foreground":"#d699b6"}},{"scope":"punctuation.separator.namespace.xml","settings":{"foreground":"#859289"}},{"scope":"entity.name.tag.html, entity.name.tag.xml, entity.name.tag.localname.xml","settings":{"foreground":"#e69875"}},{"scope":"entity.other.attribute-name.html, entity.other.attribute-name.xml, entity.other.attribute-name.localname.xml","settings":{"foreground":"#dbbc7f"}},{"scope":"string.quoted.double.html, string.quoted.single.html, punctuation.definition.string.begin.html, punctuation.definition.string.end.html, punctuation.separator.key-value.html, punctuation.definition.string.begin.xml, punctuation.definition.string.end.xml, string.quoted.double.xml, string.quoted.single.xml, punctuation.definition.tag.begin.html, punctuation.definition.tag.end.html, punctuation.definition.tag.xml, meta.tag.xml, meta.tag.preprocessor.xml, meta.tag.other.html, meta.tag.block.any.html, meta.tag.inline.any.html","settings":{"foreground":"#a7c080"}},{"scope":"variable.language.documentroot.xml, meta.tag.sgml.doctype.xml","settings":{"foreground":"#d699b6"}},{"scope":"storage.type.proto","settings":{"foreground":"#dbbc7f"}},{"scope":"string.quoted.double.proto.syntax, string.quoted.single.proto.syntax, string.quoted.double.proto, string.quoted.single.proto","settings":{"foreground":"#a7c080"}},{"scope":"entity.name.class.proto, entity.name.class.message.proto","settings":{"foreground":"#83c092"}},{"scope":"punctuation.definition.entity.css, punctuation.separator.key-value.css, punctuation.terminator.rule.css, punctuation.separator.list.comma.css","settings":{"foreground":"#859289"}},{"scope":"entity.other.attribute-name.class.css","settings":{"foreground":"#e67e80"}},{"scope":"keyword.other.unit","settings":{"foreground":"#e69875"}},{"scope":"entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css","settings":{"foreground":"#dbbc7f"}},{"scope":"string.quoted.single.css, string.quoted.double.css, support.constant.property-value.css, meta.property-value.css, punctuation.definition.string.begin.css, punctuation.definition.string.end.css, constant.numeric.css, support.constant.font-name.css, variable.parameter.keyframe-list.css","settings":{"foreground":"#a7c080"}},{"scope":"support.type.property-name.css","settings":{"foreground":"#83c092"}},{"scope":"support.type.vendored.property-name.css","settings":{"foreground":"#7fbbb3"}},{"scope":"entity.name.tag.css, entity.other.keyframe-offset.css, punctuation.definition.keyword.css, keyword.control.at-rule.keyframes.css, meta.selector.css","settings":{"foreground":"#d699b6"}},{"scope":"punctuation.definition.entity.scss, punctuation.separator.key-value.scss, punctuation.terminator.rule.scss, punctuation.separator.list.comma.scss","settings":{"foreground":"#859289"}},{"scope":"keyword.control.at-rule.keyframes.scss","settings":{"foreground":"#e69875"}},{"scope":"punctuation.definition.interpolation.begin.bracket.curly.scss, punctuation.definition.interpolation.end.bracket.curly.scss","settings":{"foreground":"#dbbc7f"}},{"scope":"punctuation.definition.string.begin.scss, punctuation.definition.string.end.scss, string.quoted.double.scss, string.quoted.single.scss, constant.character.css.sass, meta.property-value.scss","settings":{"foreground":"#a7c080"}},{"scope":"keyword.control.at-rule.include.scss, keyword.control.at-rule.use.scss, keyword.control.at-rule.mixin.scss, keyword.control.at-rule.extend.scss, keyword.control.at-rule.import.scss","settings":{"foreground":"#d699b6"}},{"scope":"meta.function.stylus","settings":{"foreground":"#d3c6aa"}},{"scope":"entity.name.function.stylus","settings":{"foreground":"#dbbc7f"}},{"scope":"string.unquoted.js","settings":{"foreground":"#d3c6aa"}},{"scope":"punctuation.accessor.js, punctuation.separator.key-value.js, punctuation.separator.label.js, keyword.operator.accessor.js","settings":{"foreground":"#859289"}},{"scope":"punctuation.definition.block.tag.jsdoc","settings":{"foreground":"#e67e80"}},{"scope":"storage.type.js, storage.type.function.arrow.js","settings":{"foreground":"#e69875"}},{"scope":"JSXNested","settings":{"foreground":"#d3c6aa"}},{"scope":"punctuation.definition.tag.jsx, entity.other.attribute-name.jsx, punctuation.definition.tag.begin.js.jsx, punctuation.definition.tag.end.js.jsx, entity.other.attribute-name.js.jsx","settings":{"foreground":"#a7c080"}},{"scope":"entity.name.type.module.ts","settings":{"foreground":"#d3c6aa"}},{"scope":"keyword.operator.type.annotation.ts, punctuation.accessor.ts, punctuation.separator.key-value.ts","settings":{"foreground":"#859289"}},{"scope":"punctuation.definition.tag.directive.ts, entity.other.attribute-name.directive.ts","settings":{"foreground":"#a7c080"}},{"scope":"entity.name.type.ts, entity.name.type.interface.ts, entity.other.inherited-class.ts, entity.name.type.alias.ts, entity.name.type.class.ts, entity.name.type.enum.ts","settings":{"foreground":"#83c092"}},{"scope":"storage.type.ts, storage.type.function.arrow.ts, storage.type.type.ts","settings":{"foreground":"#e69875"}},{"scope":"entity.name.type.module.ts","settings":{"foreground":"#7fbbb3"}},{"scope":"keyword.control.import.ts, keyword.control.export.ts, storage.type.namespace.ts","settings":{"foreground":"#d699b6"}},{"scope":"entity.name.type.module.tsx","settings":{"foreground":"#d3c6aa"}},{"scope":"keyword.operator.type.annotation.tsx, punctuation.accessor.tsx, punctuation.separator.key-value.tsx","settings":{"foreground":"#859289"}},{"scope":"punctuation.definition.tag.directive.tsx, entity.other.attribute-name.directive.tsx, punctuation.definition.tag.begin.tsx, punctuation.definition.tag.end.tsx, entity.other.attribute-name.tsx","settings":{"foreground":"#a7c080"}},{"scope":"entity.name.type.tsx, entity.name.type.interface.tsx, entity.other.inherited-class.tsx, entity.name.type.alias.tsx, entity.name.type.class.tsx, entity.name.type.enum.tsx","settings":{"foreground":"#83c092"}},{"scope":"entity.name.type.module.tsx","settings":{"foreground":"#7fbbb3"}},{"scope":"keyword.control.import.tsx, keyword.control.export.tsx, storage.type.namespace.tsx","settings":{"foreground":"#d699b6"}},{"scope":"storage.type.tsx, storage.type.function.arrow.tsx, storage.type.type.tsx, support.class.component.tsx","settings":{"foreground":"#e69875"}},{"scope":"storage.type.function.coffee","settings":{"foreground":"#e69875"}},{"scope":"meta.type-signature.purescript","settings":{"foreground":"#d3c6aa"}},{"scope":"keyword.other.double-colon.purescript, keyword.other.arrow.purescript, keyword.other.big-arrow.purescript","settings":{"foreground":"#e69875"}},{"scope":"entity.name.function.purescript","settings":{"foreground":"#dbbc7f"}},{"scope":"string.quoted.single.purescript, string.quoted.double.purescript, punctuation.definition.string.begin.purescript, punctuation.definition.string.end.purescript, string.quoted.triple.purescript, entity.name.type.purescript","settings":{"foreground":"#a7c080"}},{"scope":"support.other.module.purescript","settings":{"foreground":"#d699b6"}},{"scope":"punctuation.dot.dart","settings":{"foreground":"#859289"}},{"scope":"storage.type.primitive.dart","settings":{"foreground":"#e69875"}},{"scope":"support.class.dart","settings":{"foreground":"#dbbc7f"}},{"scope":"entity.name.function.dart, string.interpolated.single.dart, string.interpolated.double.dart","settings":{"foreground":"#a7c080"}},{"scope":"variable.language.dart","settings":{"foreground":"#7fbbb3"}},{"scope":"keyword.other.import.dart, storage.type.annotation.dart","settings":{"foreground":"#d699b6"}},{"scope":"entity.other.attribute-name.class.pug","settings":{"foreground":"#e67e80"}},{"scope":"storage.type.function.pug","settings":{"foreground":"#e69875"}},{"scope":"entity.other.attribute-name.tag.pug","settings":{"foreground":"#83c092"}},{"scope":"entity.name.tag.pug, storage.type.import.include.pug","settings":{"foreground":"#d699b6"}},{"scope":"meta.function-call.c, storage.modifier.array.bracket.square.c, meta.function.definition.parameters.c","settings":{"foreground":"#d3c6aa"}},{"scope":"punctuation.separator.dot-access.c, constant.character.escape.line-continuation.c","settings":{"foreground":"#859289"}},{"scope":"keyword.control.directive.include.c, punctuation.definition.directive.c, keyword.control.directive.pragma.c, keyword.control.directive.line.c, keyword.control.directive.define.c, keyword.control.directive.conditional.c, keyword.control.directive.diagnostic.error.c, keyword.control.directive.undef.c, keyword.control.directive.conditional.ifdef.c, keyword.control.directive.endif.c, keyword.control.directive.conditional.ifndef.c, keyword.control.directive.conditional.if.c, keyword.control.directive.else.c","settings":{"foreground":"#e67e80"}},{"scope":"punctuation.separator.pointer-access.c","settings":{"foreground":"#e69875"}},{"scope":"variable.other.member.c","settings":{"foreground":"#83c092"}},{"scope":"meta.function-call.cpp, storage.modifier.array.bracket.square.cpp, meta.function.definition.parameters.cpp, meta.body.function.definition.cpp","settings":{"foreground":"#d3c6aa"}},{"scope":"punctuation.separator.dot-access.cpp, constant.character.escape.line-continuation.cpp","settings":{"foreground":"#859289"}},{"scope":"keyword.control.directive.include.cpp, punctuation.definition.directive.cpp, keyword.control.directive.pragma.cpp, keyword.control.directive.line.cpp, keyword.control.directive.define.cpp, keyword.control.directive.conditional.cpp, keyword.control.directive.diagnostic.error.cpp, keyword.control.directive.undef.cpp, keyword.control.directive.conditional.ifdef.cpp, keyword.control.directive.endif.cpp, keyword.control.directive.conditional.ifndef.cpp, keyword.control.directive.conditional.if.cpp, keyword.control.directive.else.cpp, storage.type.namespace.definition.cpp, keyword.other.using.directive.cpp, storage.type.struct.cpp","settings":{"foreground":"#e67e80"}},{"scope":"punctuation.separator.pointer-access.cpp, punctuation.section.angle-brackets.begin.template.call.cpp, punctuation.section.angle-brackets.end.template.call.cpp","settings":{"foreground":"#e69875"}},{"scope":"variable.other.member.cpp","settings":{"foreground":"#83c092"}},{"scope":"keyword.other.using.cs","settings":{"foreground":"#e67e80"}},{"scope":"keyword.type.cs, constant.character.escape.cs, punctuation.definition.interpolation.begin.cs, punctuation.definition.interpolation.end.cs","settings":{"foreground":"#dbbc7f"}},{"scope":"string.quoted.double.cs, string.quoted.single.cs, punctuation.definition.string.begin.cs, punctuation.definition.string.end.cs","settings":{"foreground":"#a7c080"}},{"scope":"variable.other.object.property.cs","settings":{"foreground":"#83c092"}},{"scope":"entity.name.type.namespace.cs","settings":{"foreground":"#d699b6"}},{"scope":"keyword.symbol.fsharp, constant.language.unit.fsharp","settings":{"foreground":"#d3c6aa"}},{"scope":"keyword.format.specifier.fsharp, entity.name.type.fsharp","settings":{"foreground":"#dbbc7f"}},{"scope":"string.quoted.double.fsharp, string.quoted.single.fsharp, punctuation.definition.string.begin.fsharp, punctuation.definition.string.end.fsharp","settings":{"foreground":"#a7c080"}},{"scope":"entity.name.section.fsharp","settings":{"foreground":"#7fbbb3"}},{"scope":"support.function.attribute.fsharp","settings":{"foreground":"#d699b6"}},{"scope":"punctuation.separator.java, punctuation.separator.period.java","settings":{"foreground":"#859289"}},{"scope":"keyword.other.import.java, keyword.other.package.java","settings":{"foreground":"#e67e80"}},{"scope":"storage.type.function.arrow.java, keyword.control.ternary.java","settings":{"foreground":"#e69875"}},{"scope":"variable.other.property.java","settings":{"foreground":"#83c092"}},{"scope":"variable.language.wildcard.java, storage.modifier.import.java, storage.type.annotation.java, punctuation.definition.annotation.java, storage.modifier.package.java, entity.name.type.module.java","settings":{"foreground":"#d699b6"}},{"scope":"keyword.other.import.kotlin","settings":{"foreground":"#e67e80"}},{"scope":"storage.type.kotlin","settings":{"foreground":"#e69875"}},{"scope":"constant.language.kotlin","settings":{"foreground":"#83c092"}},{"scope":"entity.name.package.kotlin, storage.type.annotation.kotlin","settings":{"foreground":"#d699b6"}},{"scope":"entity.name.package.scala","settings":{"foreground":"#d699b6"}},{"scope":"constant.language.scala","settings":{"foreground":"#7fbbb3"}},{"scope":"entity.name.import.scala","settings":{"foreground":"#83c092"}},{"scope":"string.quoted.double.scala, string.quoted.single.scala, punctuation.definition.string.begin.scala, punctuation.definition.string.end.scala, string.quoted.double.interpolated.scala, string.quoted.single.interpolated.scala, string.quoted.triple.scala","settings":{"foreground":"#a7c080"}},{"scope":"entity.name.class, entity.other.inherited-class.scala","settings":{"foreground":"#dbbc7f"}},{"scope":"keyword.declaration.stable.scala, keyword.other.arrow.scala","settings":{"foreground":"#e69875"}},{"scope":"keyword.other.import.scala","settings":{"foreground":"#e67e80"}},{"scope":"keyword.operator.navigation.groovy, meta.method.body.java, meta.definition.method.groovy, meta.definition.method.signature.java","settings":{"foreground":"#d3c6aa"}},{"scope":"punctuation.separator.groovy","settings":{"foreground":"#859289"}},{"scope":"keyword.other.import.groovy, keyword.other.package.groovy, keyword.other.import.static.groovy","settings":{"foreground":"#e67e80"}},{"scope":"storage.type.def.groovy","settings":{"foreground":"#e69875"}},{"scope":"variable.other.interpolated.groovy, meta.method.groovy","settings":{"foreground":"#a7c080"}},{"scope":"storage.modifier.import.groovy, storage.modifier.package.groovy","settings":{"foreground":"#83c092"}},{"scope":"storage.type.annotation.groovy","settings":{"foreground":"#d699b6"}},{"scope":"keyword.type.go","settings":{"foreground":"#e67e80"}},{"scope":"entity.name.package.go","settings":{"foreground":"#83c092"}},{"scope":"keyword.import.go, keyword.package.go","settings":{"foreground":"#d699b6"}},{"scope":"entity.name.type.mod.rust","settings":{"foreground":"#d3c6aa"}},{"scope":"keyword.operator.path.rust, keyword.operator.member-access.rust","settings":{"foreground":"#859289"}},{"scope":"storage.type.rust","settings":{"foreground":"#e69875"}},{"scope":"support.constant.core.rust","settings":{"foreground":"#83c092"}},{"scope":"meta.attribute.rust, variable.language.rust, storage.type.module.rust","settings":{"foreground":"#d699b6"}},{"scope":"meta.function-call.swift, support.function.any-method.swift","settings":{"foreground":"#d3c6aa"}},{"scope":"support.variable.swift","settings":{"foreground":"#83c092"}},{"scope":"keyword.operator.class.php","settings":{"foreground":"#d3c6aa"}},{"scope":"storage.type.trait.php","settings":{"foreground":"#e69875"}},{"scope":"constant.language.php, support.other.namespace.php","settings":{"foreground":"#83c092"}},{"scope":"storage.type.modifier.access.control.public.cpp, storage.type.modifier.access.control.private.cpp","settings":{"foreground":"#7fbbb3"}},{"scope":"keyword.control.import.include.php, storage.type.php","settings":{"foreground":"#d699b6"}},{"scope":"meta.function-call.arguments.python","settings":{"foreground":"#d3c6aa"}},{"scope":"punctuation.definition.decorator.python, punctuation.separator.period.python","settings":{"foreground":"#859289"}},{"scope":"constant.language.python","settings":{"foreground":"#83c092"}},{"scope":"keyword.control.import.python, keyword.control.import.from.python","settings":{"foreground":"#d699b6"}},{"scope":"constant.language.lua","settings":{"foreground":"#83c092"}},{"scope":"entity.name.class.lua","settings":{"foreground":"#7fbbb3"}},{"scope":"meta.function.method.with-arguments.ruby","settings":{"foreground":"#d3c6aa"}},{"scope":"punctuation.separator.method.ruby","settings":{"foreground":"#859289"}},{"scope":"keyword.control.pseudo-method.ruby, storage.type.variable.ruby","settings":{"foreground":"#e69875"}},{"scope":"keyword.other.special-method.ruby","settings":{"foreground":"#a7c080"}},{"scope":"keyword.control.module.ruby, punctuation.definition.constant.ruby","settings":{"foreground":"#d699b6"}},{"scope":"string.regexp.character-class.ruby,string.regexp.interpolated.ruby,punctuation.definition.character-class.ruby,string.regexp.group.ruby, punctuation.section.regexp.ruby, punctuation.definition.group.ruby","settings":{"foreground":"#dbbc7f"}},{"scope":"variable.other.constant.ruby","settings":{"foreground":"#7fbbb3"}},{"scope":"keyword.other.arrow.haskell, keyword.other.big-arrow.haskell, keyword.other.double-colon.haskell","settings":{"foreground":"#e69875"}},{"scope":"storage.type.haskell","settings":{"foreground":"#dbbc7f"}},{"scope":"constant.other.haskell, string.quoted.double.haskell, string.quoted.single.haskell, punctuation.definition.string.begin.haskell, punctuation.definition.string.end.haskell","settings":{"foreground":"#a7c080"}},{"scope":"entity.name.function.haskell","settings":{"foreground":"#7fbbb3"}},{"scope":"entity.name.namespace, meta.preprocessor.haskell","settings":{"foreground":"#83c092"}},{"scope":"keyword.control.import.julia, keyword.control.export.julia","settings":{"foreground":"#e67e80"}},{"scope":"keyword.storage.modifier.julia","settings":{"foreground":"#e69875"}},{"scope":"constant.language.julia","settings":{"foreground":"#83c092"}},{"scope":"support.function.macro.julia","settings":{"foreground":"#d699b6"}},{"scope":"keyword.other.period.elm","settings":{"foreground":"#d3c6aa"}},{"scope":"storage.type.elm","settings":{"foreground":"#dbbc7f"}},{"scope":"keyword.other.r","settings":{"foreground":"#e69875"}},{"scope":"entity.name.function.r, variable.function.r","settings":{"foreground":"#a7c080"}},{"scope":"constant.language.r","settings":{"foreground":"#83c092"}},{"scope":"entity.namespace.r","settings":{"foreground":"#d699b6"}},{"scope":"punctuation.separator.module-function.erlang, punctuation.section.directive.begin.erlang","settings":{"foreground":"#859289"}},{"scope":"keyword.control.directive.erlang, keyword.control.directive.define.erlang","settings":{"foreground":"#e67e80"}},{"scope":"entity.name.type.class.module.erlang","settings":{"foreground":"#dbbc7f"}},{"scope":"string.quoted.double.erlang, string.quoted.single.erlang, punctuation.definition.string.begin.erlang, punctuation.definition.string.end.erlang","settings":{"foreground":"#a7c080"}},{"scope":"keyword.control.directive.export.erlang, keyword.control.directive.module.erlang, keyword.control.directive.import.erlang, keyword.control.directive.behaviour.erlang","settings":{"foreground":"#d699b6"}},{"scope":"variable.other.readwrite.module.elixir, punctuation.definition.variable.elixir","settings":{"foreground":"#83c092"}},{"scope":"constant.language.elixir","settings":{"foreground":"#7fbbb3"}},{"scope":"keyword.control.module.elixir","settings":{"foreground":"#d699b6"}},{"scope":"entity.name.type.value-signature.ocaml","settings":{"foreground":"#d3c6aa"}},{"scope":"keyword.other.ocaml","settings":{"foreground":"#e69875"}},{"scope":"constant.language.variant.ocaml","settings":{"foreground":"#83c092"}},{"scope":"storage.type.sub.perl, storage.type.declare.routine.perl","settings":{"foreground":"#e67e80"}},{"scope":"meta.function.lisp","settings":{"foreground":"#d3c6aa"}},{"scope":"storage.type.function-type.lisp","settings":{"foreground":"#e67e80"}},{"scope":"keyword.constant.lisp","settings":{"foreground":"#a7c080"}},{"scope":"entity.name.function.lisp","settings":{"foreground":"#83c092"}},{"scope":"constant.keyword.clojure, support.variable.clojure, meta.definition.variable.clojure","settings":{"foreground":"#a7c080"}},{"scope":"entity.global.clojure","settings":{"foreground":"#d699b6"}},{"scope":"entity.name.function.clojure","settings":{"foreground":"#7fbbb3"}},{"scope":"meta.scope.if-block.shell, meta.scope.group.shell","settings":{"foreground":"#d3c6aa"}},{"scope":"support.function.builtin.shell, entity.name.function.shell","settings":{"foreground":"#dbbc7f"}},{"scope":"string.quoted.double.shell, string.quoted.single.shell, punctuation.definition.string.begin.shell, punctuation.definition.string.end.shell, string.unquoted.heredoc.shell","settings":{"foreground":"#a7c080"}},{"scope":"keyword.control.heredoc-token.shell, variable.other.normal.shell, punctuation.definition.variable.shell, variable.other.special.shell, variable.other.positional.shell, variable.other.bracket.shell","settings":{"foreground":"#d699b6"}},{"scope":"support.function.builtin.fish","settings":{"foreground":"#e67e80"}},{"scope":"support.function.unix.fish","settings":{"foreground":"#e69875"}},{"scope":"variable.other.normal.fish, punctuation.definition.variable.fish, variable.other.fixed.fish, variable.other.special.fish","settings":{"foreground":"#7fbbb3"}},{"scope":"string.quoted.double.fish, punctuation.definition.string.end.fish, punctuation.definition.string.begin.fish, string.quoted.single.fish","settings":{"foreground":"#a7c080"}},{"scope":"constant.character.escape.single.fish","settings":{"foreground":"#d699b6"}},{"scope":"punctuation.definition.variable.powershell","settings":{"foreground":"#859289"}},{"scope":"entity.name.function.powershell, support.function.attribute.powershell, support.function.powershell","settings":{"foreground":"#dbbc7f"}},{"scope":"string.quoted.single.powershell, string.quoted.double.powershell, punctuation.definition.string.begin.powershell, punctuation.definition.string.end.powershell, string.quoted.double.heredoc.powershell","settings":{"foreground":"#a7c080"}},{"scope":"variable.other.member.powershell","settings":{"foreground":"#83c092"}},{"scope":"string.unquoted.alias.graphql","settings":{"foreground":"#d3c6aa"}},{"scope":"keyword.type.graphql","settings":{"foreground":"#e67e80"}},{"scope":"entity.name.fragment.graphql","settings":{"foreground":"#d699b6"}},{"scope":"entity.name.function.target.makefile","settings":{"foreground":"#e69875"}},{"scope":"variable.other.makefile","settings":{"foreground":"#dbbc7f"}},{"scope":"meta.scope.prerequisites.makefile","settings":{"foreground":"#a7c080"}},{"scope":"string.source.cmake","settings":{"foreground":"#a7c080"}},{"scope":"entity.source.cmake","settings":{"foreground":"#83c092"}},{"scope":"storage.source.cmake","settings":{"foreground":"#d699b6"}},{"scope":"punctuation.definition.map.viml","settings":{"foreground":"#859289"}},{"scope":"storage.type.map.viml","settings":{"foreground":"#e69875"}},{"scope":"constant.character.map.viml, constant.character.map.key.viml","settings":{"foreground":"#a7c080"}},{"scope":"constant.character.map.special.viml","settings":{"foreground":"#7fbbb3"}},{"scope":"constant.language.tmux, constant.numeric.tmux","settings":{"foreground":"#a7c080"}},{"scope":"entity.name.function.package-manager.dockerfile","settings":{"foreground":"#e69875"}},{"scope":"keyword.operator.flag.dockerfile","settings":{"foreground":"#dbbc7f"}},{"scope":"string.quoted.double.dockerfile, string.quoted.single.dockerfile","settings":{"foreground":"#a7c080"}},{"scope":"constant.character.escape.dockerfile","settings":{"foreground":"#83c092"}},{"scope":"entity.name.type.base-image.dockerfile, entity.name.image.dockerfile","settings":{"foreground":"#d699b6"}},{"scope":"punctuation.definition.separator.diff","settings":{"foreground":"#859289"}},{"scope":"markup.deleted.diff, punctuation.definition.deleted.diff","settings":{"foreground":"#e67e80"}},{"scope":"meta.diff.range.context, punctuation.definition.range.diff","settings":{"foreground":"#e69875"}},{"scope":"meta.diff.header.from-file","settings":{"foreground":"#dbbc7f"}},{"scope":"markup.inserted.diff, punctuation.definition.inserted.diff","settings":{"foreground":"#a7c080"}},{"scope":"markup.changed.diff, punctuation.definition.changed.diff","settings":{"foreground":"#7fbbb3"}},{"scope":"punctuation.definition.from-file.diff","settings":{"foreground":"#d699b6"}},{"scope":"entity.name.section.group-title.ini, punctuation.definition.entity.ini","settings":{"foreground":"#e67e80"}},{"scope":"punctuation.separator.key-value.ini","settings":{"foreground":"#e69875"}},{"scope":"string.quoted.double.ini, string.quoted.single.ini, punctuation.definition.string.begin.ini, punctuation.definition.string.end.ini","settings":{"foreground":"#a7c080"}},{"scope":"keyword.other.definition.ini","settings":{"foreground":"#83c092"}},{"scope":"support.function.aggregate.sql","settings":{"foreground":"#dbbc7f"}},{"scope":"string.quoted.single.sql, punctuation.definition.string.end.sql, punctuation.definition.string.begin.sql, string.quoted.double.sql","settings":{"foreground":"#a7c080"}},{"scope":"support.type.graphql","settings":{"foreground":"#dbbc7f"}},{"scope":"variable.parameter.graphql","settings":{"foreground":"#7fbbb3"}},{"scope":"constant.character.enum.graphql","settings":{"foreground":"#83c092"}},{"scope":"punctuation.support.type.property-name.begin.json, punctuation.support.type.property-name.end.json, punctuation.separator.dictionary.key-value.json, punctuation.definition.string.begin.json, punctuation.definition.string.end.json, punctuation.separator.dictionary.pair.json, punctuation.separator.array.json","settings":{"foreground":"#859289"}},{"scope":"support.type.property-name.json","settings":{"foreground":"#e69875"}},{"scope":"string.quoted.double.json","settings":{"foreground":"#a7c080"}},{"scope":"punctuation.separator.key-value.mapping.yaml","settings":{"foreground":"#859289"}},{"scope":"string.unquoted.plain.out.yaml, string.quoted.single.yaml, string.quoted.double.yaml, punctuation.definition.string.begin.yaml, punctuation.definition.string.end.yaml, string.unquoted.plain.in.yaml, string.unquoted.block.yaml","settings":{"foreground":"#a7c080"}},{"scope":"punctuation.definition.anchor.yaml, punctuation.definition.block.sequence.item.yaml","settings":{"foreground":"#83c092"}},{"scope":"keyword.key.toml","settings":{"foreground":"#e69875"}},{"scope":"string.quoted.single.basic.line.toml, string.quoted.single.literal.line.toml, punctuation.definition.keyValuePair.toml","settings":{"foreground":"#a7c080"}},{"scope":"constant.other.boolean.toml","settings":{"foreground":"#7fbbb3"}},{"scope":"entity.other.attribute-name.table.toml, punctuation.definition.table.toml, entity.other.attribute-name.table.array.toml, punctuation.definition.table.array.toml","settings":{"foreground":"#d699b6"}},{"scope":"comment, string.comment, punctuation.definition.comment","settings":{"fontStyle":"italic","foreground":"#859289"}}],"type":"dark"}'))});var AM={};x(AM,{default:()=>Xse});var Xse,dM=_(()=>{Xse=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#93b259d0","activityBar.activeFocusBorder":"#93b259","activityBar.background":"#fdf6e3","activityBar.border":"#fdf6e3","activityBar.dropBackground":"#fdf6e3","activityBar.foreground":"#5c6a72","activityBar.inactiveForeground":"#939f91","activityBarBadge.background":"#93b259","activityBarBadge.foreground":"#fdf6e3","badge.background":"#93b259","badge.foreground":"#fdf6e3","breadcrumb.activeSelectionForeground":"#5c6a72","breadcrumb.focusForeground":"#5c6a72","breadcrumb.foreground":"#939f91","button.background":"#93b259","button.foreground":"#fdf6e3","button.hoverBackground":"#93b259d0","button.secondaryBackground":"#efebd4","button.secondaryForeground":"#5c6a72","button.secondaryHoverBackground":"#e6e2cc","charts.blue":"#3a94c5","charts.foreground":"#5c6a72","charts.green":"#8da101","charts.orange":"#f57d26","charts.purple":"#df69ba","charts.red":"#f85552","charts.yellow":"#dfa000","checkbox.background":"#fdf6e3","checkbox.border":"#e0dcc7","checkbox.foreground":"#f57d26","debugConsole.errorForeground":"#f85552","debugConsole.infoForeground":"#8da101","debugConsole.sourceForeground":"#df69ba","debugConsole.warningForeground":"#dfa000","debugConsoleInputIcon.foreground":"#35a77c","debugIcon.breakpointCurrentStackframeForeground":"#3a94c5","debugIcon.breakpointDisabledForeground":"#f1706f","debugIcon.breakpointForeground":"#f85552","debugIcon.breakpointStackframeForeground":"#f85552","debugIcon.breakpointUnverifiedForeground":"#879686","debugIcon.continueForeground":"#3a94c5","debugIcon.disconnectForeground":"#df69ba","debugIcon.pauseForeground":"#dfa000","debugIcon.restartForeground":"#35a77c","debugIcon.startForeground":"#35a77c","debugIcon.stepBackForeground":"#3a94c5","debugIcon.stepIntoForeground":"#3a94c5","debugIcon.stepOutForeground":"#3a94c5","debugIcon.stepOverForeground":"#3a94c5","debugIcon.stopForeground":"#f85552","debugTokenExpression.boolean":"#df69ba","debugTokenExpression.error":"#f85552","debugTokenExpression.name":"#3a94c5","debugTokenExpression.number":"#df69ba","debugTokenExpression.string":"#dfa000","debugTokenExpression.value":"#8da101","debugToolBar.background":"#fdf6e3","descriptionForeground":"#939f91","diffEditor.diagonalFill":"#e0dcc7","diffEditor.insertedTextBackground":"#6ec39830","diffEditor.removedTextBackground":"#f1706f30","dropdown.background":"#fdf6e3","dropdown.border":"#e0dcc7","dropdown.foreground":"#879686","editor.background":"#fdf6e3","editor.findMatchBackground":"#f3945940","editor.findMatchHighlightBackground":"#a4bb4a40","editor.findRangeHighlightBackground":"#e6e2cc50","editor.foldBackground":"#e0dcc780","editor.foreground":"#5c6a72","editor.hoverHighlightBackground":"#e6e2cc90","editor.inactiveSelectionBackground":"#e6e2cc50","editor.lineHighlightBackground":"#efebd470","editor.lineHighlightBorder":"#e0dcc700","editor.rangeHighlightBackground":"#efebd480","editor.selectionBackground":"#e6e2cca0","editor.selectionHighlightBackground":"#e6e2cc50","editor.snippetFinalTabstopHighlightBackground":"#a4bb4a40","editor.snippetFinalTabstopHighlightBorder":"#fdf6e3","editor.snippetTabstopHighlightBackground":"#efebd4","editor.symbolHighlightBackground":"#6cb3c640","editor.wordHighlightBackground":"#e6e2cc48","editor.wordHighlightStrongBackground":"#e6e2cc90","editorBracketHighlight.foreground1":"#f85552","editorBracketHighlight.foreground2":"#dfa000","editorBracketHighlight.foreground3":"#8da101","editorBracketHighlight.foreground4":"#3a94c5","editorBracketHighlight.foreground5":"#f57d26","editorBracketHighlight.foreground6":"#df69ba","editorBracketHighlight.unexpectedBracket.foreground":"#939f91","editorBracketMatch.background":"#e0dcc7","editorBracketMatch.border":"#fdf6e300","editorCodeLens.foreground":"#a4ad9ea0","editorCursor.foreground":"#5c6a72","editorError.background":"#f1706f00","editorError.foreground":"#f1706f","editorGhostText.background":"#fdf6e300","editorGhostText.foreground":"#a4ad9ea0","editorGroup.border":"#efebd4","editorGroup.dropBackground":"#e0dcc760","editorGroupHeader.noTabsBackground":"#fdf6e3","editorGroupHeader.tabsBackground":"#fdf6e3","editorGutter.addedBackground":"#a4bb4aa0","editorGutter.background":"#fdf6e300","editorGutter.commentRangeForeground":"#a4ad9e","editorGutter.deletedBackground":"#f1706fa0","editorGutter.modifiedBackground":"#6cb3c6a0","editorHint.foreground":"#e092be","editorHoverWidget.background":"#f4f0d9","editorHoverWidget.border":"#e6e2cc","editorIndentGuide.activeBackground":"#87968650","editorIndentGuide.background":"#87968620","editorInfo.background":"#6cb3c600","editorInfo.foreground":"#6cb3c6","editorInlayHint.background":"#fdf6e300","editorInlayHint.foreground":"#a4ad9ea0","editorInlayHint.parameterBackground":"#fdf6e300","editorInlayHint.parameterForeground":"#a4ad9ea0","editorInlayHint.typeBackground":"#fdf6e300","editorInlayHint.typeForeground":"#a4ad9ea0","editorLightBulb.foreground":"#dfa000","editorLightBulbAutoFix.foreground":"#35a77c","editorLineNumber.activeForeground":"#879686e0","editorLineNumber.foreground":"#a4ad9ea0","editorLink.activeForeground":"#8da101","editorMarkerNavigation.background":"#f4f0d9","editorMarkerNavigationError.background":"#f1706f80","editorMarkerNavigationInfo.background":"#6cb3c680","editorMarkerNavigationWarning.background":"#e4b64980","editorOverviewRuler.addedForeground":"#a4bb4aa0","editorOverviewRuler.border":"#fdf6e300","editorOverviewRuler.commonContentForeground":"#939f91","editorOverviewRuler.currentContentForeground":"#6cb3c6","editorOverviewRuler.deletedForeground":"#f1706fa0","editorOverviewRuler.errorForeground":"#f85552","editorOverviewRuler.findMatchForeground":"#6ec398","editorOverviewRuler.incomingContentForeground":"#6ec398","editorOverviewRuler.infoForeground":"#df69ba","editorOverviewRuler.modifiedForeground":"#6cb3c6a0","editorOverviewRuler.rangeHighlightForeground":"#6ec398","editorOverviewRuler.selectionHighlightForeground":"#6ec398","editorOverviewRuler.warningForeground":"#dfa000","editorOverviewRuler.wordHighlightForeground":"#e0dcc7","editorOverviewRuler.wordHighlightStrongForeground":"#e0dcc7","editorRuler.foreground":"#e6e2cca0","editorSuggestWidget.background":"#efebd4","editorSuggestWidget.border":"#efebd4","editorSuggestWidget.foreground":"#5c6a72","editorSuggestWidget.highlightForeground":"#8da101","editorSuggestWidget.selectedBackground":"#e6e2cc","editorUnnecessaryCode.border":"#fdf6e3","editorUnnecessaryCode.opacity":"#00000080","editorWarning.background":"#e4b64900","editorWarning.foreground":"#e4b649","editorWhitespace.foreground":"#e6e2cc","editorWidget.background":"#fdf6e3","editorWidget.border":"#e0dcc7","editorWidget.foreground":"#5c6a72","errorForeground":"#f85552","extensionBadge.remoteBackground":"#93b259","extensionBadge.remoteForeground":"#fdf6e3","extensionButton.prominentBackground":"#93b259","extensionButton.prominentForeground":"#fdf6e3","extensionButton.prominentHoverBackground":"#93b259d0","extensionIcon.preReleaseForeground":"#f57d26","extensionIcon.starForeground":"#35a77c","extensionIcon.verifiedForeground":"#8da101","focusBorder":"#fdf6e300","foreground":"#879686","gitDecoration.addedResourceForeground":"#8da101a0","gitDecoration.conflictingResourceForeground":"#df69baa0","gitDecoration.deletedResourceForeground":"#f85552a0","gitDecoration.ignoredResourceForeground":"#e0dcc7","gitDecoration.modifiedResourceForeground":"#3a94c5a0","gitDecoration.stageDeletedResourceForeground":"#35a77ca0","gitDecoration.stageModifiedResourceForeground":"#35a77ca0","gitDecoration.submoduleResourceForeground":"#f57d26a0","gitDecoration.untrackedResourceForeground":"#dfa000a0","gitlens.closedPullRequestIconColor":"#f85552","gitlens.decorations.addedForegroundColor":"#8da101","gitlens.decorations.branchAheadForegroundColor":"#35a77c","gitlens.decorations.branchBehindForegroundColor":"#f57d26","gitlens.decorations.branchDivergedForegroundColor":"#dfa000","gitlens.decorations.branchMissingUpstreamForegroundColor":"#f85552","gitlens.decorations.branchUnpublishedForegroundColor":"#3a94c5","gitlens.decorations.branchUpToDateForegroundColor":"#5c6a72","gitlens.decorations.copiedForegroundColor":"#df69ba","gitlens.decorations.deletedForegroundColor":"#f85552","gitlens.decorations.ignoredForegroundColor":"#879686","gitlens.decorations.modifiedForegroundColor":"#3a94c5","gitlens.decorations.renamedForegroundColor":"#df69ba","gitlens.decorations.untrackedForegroundColor":"#dfa000","gitlens.gutterBackgroundColor":"#fdf6e3","gitlens.gutterForegroundColor":"#5c6a72","gitlens.gutterUncommittedForegroundColor":"#3a94c5","gitlens.lineHighlightBackgroundColor":"#f4f0d9","gitlens.lineHighlightOverviewRulerColor":"#93b259","gitlens.mergedPullRequestIconColor":"#df69ba","gitlens.openPullRequestIconColor":"#35a77c","gitlens.trailingLineForegroundColor":"#939f91","gitlens.unpublishedCommitIconColor":"#dfa000","gitlens.unpulledChangesIconColor":"#f57d26","gitlens.unpushlishedChangesIconColor":"#3a94c5","icon.foreground":"#35a77c","imagePreview.border":"#fdf6e3","input.background":"#fdf6e300","input.border":"#e0dcc7","input.foreground":"#5c6a72","input.placeholderForeground":"#a4ad9e","inputOption.activeBorder":"#35a77c","inputValidation.errorBackground":"#f1706f","inputValidation.errorBorder":"#f85552","inputValidation.errorForeground":"#5c6a72","inputValidation.infoBackground":"#6cb3c6","inputValidation.infoBorder":"#3a94c5","inputValidation.infoForeground":"#5c6a72","inputValidation.warningBackground":"#e4b649","inputValidation.warningBorder":"#dfa000","inputValidation.warningForeground":"#5c6a72","issues.closed":"#f85552","issues.open":"#35a77c","keybindingLabel.background":"#fdf6e300","keybindingLabel.border":"#f4f0d9","keybindingLabel.bottomBorder":"#efebd4","keybindingLabel.foreground":"#5c6a72","keybindingTable.headerBackground":"#efebd4","keybindingTable.rowsBackground":"#f4f0d9","list.activeSelectionBackground":"#e6e2cc80","list.activeSelectionForeground":"#5c6a72","list.dropBackground":"#f4f0d980","list.errorForeground":"#f85552","list.focusBackground":"#e6e2cc80","list.focusForeground":"#5c6a72","list.highlightForeground":"#8da101","list.hoverBackground":"#fdf6e300","list.hoverForeground":"#5c6a72","list.inactiveFocusBackground":"#e6e2cc60","list.inactiveSelectionBackground":"#e6e2cc80","list.inactiveSelectionForeground":"#879686","list.invalidItemForeground":"#f1706f","list.warningForeground":"#dfa000","menu.background":"#fdf6e3","menu.foreground":"#879686","menu.selectionBackground":"#f4f0d9","menu.selectionForeground":"#5c6a72","menubar.selectionBackground":"#fdf6e3","menubar.selectionBorder":"#fdf6e3","merge.border":"#fdf6e300","merge.currentContentBackground":"#6cb3c640","merge.currentHeaderBackground":"#6cb3c680","merge.incomingContentBackground":"#6ec39840","merge.incomingHeaderBackground":"#6ec39880","minimap.errorHighlight":"#f1706f80","minimap.findMatchHighlight":"#6ec39860","minimap.selectionHighlight":"#e0dcc7f0","minimap.warningHighlight":"#e4b64980","minimapGutter.addedBackground":"#a4bb4aa0","minimapGutter.deletedBackground":"#f1706fa0","minimapGutter.modifiedBackground":"#6cb3c6a0","notebook.cellBorderColor":"#e0dcc7","notebook.cellHoverBackground":"#fdf6e3","notebook.cellStatusBarItemHoverBackground":"#f4f0d9","notebook.cellToolbarSeparator":"#e0dcc7","notebook.focusedCellBackground":"#fdf6e3","notebook.focusedCellBorder":"#e0dcc7","notebook.focusedEditorBorder":"#e0dcc7","notebook.focusedRowBorder":"#e0dcc7","notebook.inactiveFocusedCellBorder":"#e0dcc7","notebook.outputContainerBackgroundColor":"#f4f0d9","notebook.selectedCellBorder":"#e0dcc7","notebookStatusErrorIcon.foreground":"#f85552","notebookStatusRunningIcon.foreground":"#3a94c5","notebookStatusSuccessIcon.foreground":"#8da101","notificationCenterHeader.background":"#efebd4","notificationCenterHeader.foreground":"#5c6a72","notificationLink.foreground":"#8da101","notifications.background":"#fdf6e3","notifications.foreground":"#5c6a72","notificationsErrorIcon.foreground":"#f85552","notificationsInfoIcon.foreground":"#3a94c5","notificationsWarningIcon.foreground":"#dfa000","panel.background":"#fdf6e3","panel.border":"#fdf6e3","panelInput.border":"#e0dcc7","panelSection.border":"#efebd4","panelSectionHeader.background":"#fdf6e3","panelTitle.activeBorder":"#93b259d0","panelTitle.activeForeground":"#5c6a72","panelTitle.inactiveForeground":"#939f91","peekView.border":"#e6e2cc","peekViewEditor.background":"#f4f0d9","peekViewEditor.matchHighlightBackground":"#e4b64950","peekViewEditorGutter.background":"#f4f0d9","peekViewResult.background":"#f4f0d9","peekViewResult.fileForeground":"#5c6a72","peekViewResult.lineForeground":"#879686","peekViewResult.matchHighlightBackground":"#e4b64950","peekViewResult.selectionBackground":"#6ec39850","peekViewResult.selectionForeground":"#5c6a72","peekViewTitle.background":"#e6e2cc","peekViewTitleDescription.foreground":"#5c6a72","peekViewTitleLabel.foreground":"#8da101","pickerGroup.border":"#93b2591a","pickerGroup.foreground":"#5c6a72","ports.iconRunningProcessForeground":"#f57d26","problemsErrorIcon.foreground":"#f85552","problemsInfoIcon.foreground":"#3a94c5","problemsWarningIcon.foreground":"#dfa000","progressBar.background":"#93b259","quickInputTitle.background":"#f4f0d9","rust_analyzer.inlayHints.background":"#fdf6e300","rust_analyzer.inlayHints.foreground":"#a4ad9ea0","rust_analyzer.syntaxTreeBorder":"#f85552","sash.hoverBorder":"#e6e2cc","scrollbar.shadow":"#3c474d20","scrollbarSlider.activeBackground":"#879686","scrollbarSlider.background":"#e0dcc780","scrollbarSlider.hoverBackground":"#e0dcc7","selection.background":"#e6e2ccc0","settings.checkboxBackground":"#fdf6e3","settings.checkboxBorder":"#e0dcc7","settings.checkboxForeground":"#f57d26","settings.dropdownBackground":"#fdf6e3","settings.dropdownBorder":"#e0dcc7","settings.dropdownForeground":"#35a77c","settings.focusedRowBackground":"#f4f0d9","settings.headerForeground":"#879686","settings.modifiedItemIndicator":"#a4ad9e","settings.numberInputBackground":"#fdf6e3","settings.numberInputBorder":"#e0dcc7","settings.numberInputForeground":"#df69ba","settings.rowHoverBackground":"#f4f0d9","settings.textInputBackground":"#fdf6e3","settings.textInputBorder":"#e0dcc7","settings.textInputForeground":"#3a94c5","sideBar.background":"#fdf6e3","sideBar.foreground":"#939f91","sideBarSectionHeader.background":"#fdf6e300","sideBarSectionHeader.foreground":"#879686","sideBarTitle.foreground":"#879686","statusBar.background":"#fdf6e3","statusBar.border":"#fdf6e3","statusBar.debuggingBackground":"#fdf6e3","statusBar.debuggingForeground":"#f57d26","statusBar.foreground":"#879686","statusBar.noFolderBackground":"#fdf6e3","statusBar.noFolderBorder":"#fdf6e3","statusBar.noFolderForeground":"#879686","statusBarItem.activeBackground":"#e6e2cc70","statusBarItem.errorBackground":"#fdf6e3","statusBarItem.errorForeground":"#f85552","statusBarItem.hoverBackground":"#e6e2cca0","statusBarItem.prominentBackground":"#fdf6e3","statusBarItem.prominentForeground":"#5c6a72","statusBarItem.prominentHoverBackground":"#e6e2cca0","statusBarItem.remoteBackground":"#fdf6e3","statusBarItem.remoteForeground":"#879686","statusBarItem.warningBackground":"#fdf6e3","statusBarItem.warningForeground":"#dfa000","symbolIcon.arrayForeground":"#3a94c5","symbolIcon.booleanForeground":"#df69ba","symbolIcon.classForeground":"#dfa000","symbolIcon.colorForeground":"#5c6a72","symbolIcon.constantForeground":"#35a77c","symbolIcon.constructorForeground":"#df69ba","symbolIcon.enumeratorForeground":"#df69ba","symbolIcon.enumeratorMemberForeground":"#35a77c","symbolIcon.eventForeground":"#dfa000","symbolIcon.fieldForeground":"#5c6a72","symbolIcon.fileForeground":"#5c6a72","symbolIcon.folderForeground":"#5c6a72","symbolIcon.functionForeground":"#8da101","symbolIcon.interfaceForeground":"#dfa000","symbolIcon.keyForeground":"#8da101","symbolIcon.keywordForeground":"#f85552","symbolIcon.methodForeground":"#8da101","symbolIcon.moduleForeground":"#df69ba","symbolIcon.namespaceForeground":"#df69ba","symbolIcon.nullForeground":"#35a77c","symbolIcon.numberForeground":"#df69ba","symbolIcon.objectForeground":"#df69ba","symbolIcon.operatorForeground":"#f57d26","symbolIcon.packageForeground":"#df69ba","symbolIcon.propertyForeground":"#35a77c","symbolIcon.referenceForeground":"#3a94c5","symbolIcon.snippetForeground":"#5c6a72","symbolIcon.stringForeground":"#8da101","symbolIcon.structForeground":"#dfa000","symbolIcon.textForeground":"#5c6a72","symbolIcon.typeParameterForeground":"#35a77c","symbolIcon.unitForeground":"#5c6a72","symbolIcon.variableForeground":"#3a94c5","tab.activeBackground":"#fdf6e3","tab.activeBorder":"#93b259d0","tab.activeForeground":"#5c6a72","tab.border":"#fdf6e3","tab.hoverBackground":"#fdf6e3","tab.hoverForeground":"#5c6a72","tab.inactiveBackground":"#fdf6e3","tab.inactiveForeground":"#a4ad9e","tab.lastPinnedBorder":"#93b259d0","tab.unfocusedActiveBorder":"#939f91","tab.unfocusedActiveForeground":"#879686","tab.unfocusedHoverForeground":"#5c6a72","tab.unfocusedInactiveForeground":"#a4ad9e","terminal.ansiBlack":"#5c6a72","terminal.ansiBlue":"#3a94c5","terminal.ansiBrightBlack":"#5c6a72","terminal.ansiBrightBlue":"#3a94c5","terminal.ansiBrightCyan":"#35a77c","terminal.ansiBrightGreen":"#8da101","terminal.ansiBrightMagenta":"#df69ba","terminal.ansiBrightRed":"#f85552","terminal.ansiBrightWhite":"#f4f0d9","terminal.ansiBrightYellow":"#dfa000","terminal.ansiCyan":"#35a77c","terminal.ansiGreen":"#8da101","terminal.ansiMagenta":"#df69ba","terminal.ansiRed":"#f85552","terminal.ansiWhite":"#939f91","terminal.ansiYellow":"#dfa000","terminal.foreground":"#5c6a72","terminalCursor.foreground":"#5c6a72","testing.iconErrored":"#f85552","testing.iconFailed":"#f85552","testing.iconPassed":"#35a77c","testing.iconQueued":"#3a94c5","testing.iconSkipped":"#df69ba","testing.iconUnset":"#dfa000","testing.runAction":"#35a77c","textBlockQuote.background":"#f4f0d9","textBlockQuote.border":"#e6e2cc","textCodeBlock.background":"#f4f0d9","textLink.activeForeground":"#8da101c0","textLink.foreground":"#8da101","textPreformat.foreground":"#dfa000","titleBar.activeBackground":"#fdf6e3","titleBar.activeForeground":"#879686","titleBar.border":"#fdf6e3","titleBar.inactiveBackground":"#fdf6e3","titleBar.inactiveForeground":"#a4ad9e","toolbar.hoverBackground":"#f4f0d9","tree.indentGuidesStroke":"#a4ad9e","walkThrough.embeddedEditorBackground":"#f4f0d9","welcomePage.buttonBackground":"#f4f0d9","welcomePage.buttonHoverBackground":"#f4f0d9a0","welcomePage.progress.foreground":"#8da101","welcomePage.tileHoverBackground":"#f4f0d9","widget.shadow":"#3c474d20"},"displayName":"Everforest Light","name":"everforest-light","semanticHighlighting":true,"semanticTokenColors":{"class:python":"#35a77c","class:typescript":"#35a77c","class:typescriptreact":"#35a77c","enum:typescript":"#df69ba","enum:typescriptreact":"#df69ba","enumMember:typescript":"#3a94c5","enumMember:typescriptreact":"#3a94c5","interface:typescript":"#35a77c","interface:typescriptreact":"#35a77c","intrinsic:python":"#df69ba","macro:rust":"#35a77c","memberOperatorOverload":"#f57d26","module:python":"#3a94c5","namespace:rust":"#df69ba","namespace:typescript":"#df69ba","namespace:typescriptreact":"#df69ba","operatorOverload":"#f57d26","property.defaultLibrary:javascript":"#df69ba","property.defaultLibrary:javascriptreact":"#df69ba","property.defaultLibrary:typescript":"#df69ba","property.defaultLibrary:typescriptreact":"#df69ba","selfKeyword:rust":"#df69ba","variable.defaultLibrary:javascript":"#df69ba","variable.defaultLibrary:javascriptreact":"#df69ba","variable.defaultLibrary:typescript":"#df69ba","variable.defaultLibrary:typescriptreact":"#df69ba"},"tokenColors":[{"scope":"keyword, storage.type.function, storage.type.class, storage.type.enum, storage.type.interface, storage.type.property, keyword.operator.new, keyword.operator.expression, keyword.operator.new, keyword.operator.delete, storage.type.extends","settings":{"foreground":"#f85552"}},{"scope":"keyword.other.debugger","settings":{"foreground":"#f85552"}},{"scope":"storage, modifier, keyword.var, entity.name.tag, keyword.control.case, keyword.control.switch","settings":{"foreground":"#f57d26"}},{"scope":"keyword.operator","settings":{"foreground":"#f57d26"}},{"scope":"string, punctuation.definition.string.end, punctuation.definition.string.begin, punctuation.definition.string.template.begin, punctuation.definition.string.template.end","settings":{"foreground":"#dfa000"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#dfa000"}},{"scope":"constant.character.escape, punctuation.quasi.element, punctuation.definition.template-expression, punctuation.section.embedded, storage.type.format, constant.other.placeholder, constant.other.placeholder, variable.interpolation","settings":{"foreground":"#8da101"}},{"scope":"entity.name.function, support.function, meta.function, meta.function-call, meta.definition.method","settings":{"foreground":"#8da101"}},{"scope":"keyword.control.at-rule, keyword.control.import, keyword.control.export, storage.type.namespace, punctuation.decorator, keyword.control.directive, keyword.preprocessor, punctuation.definition.preprocessor, punctuation.definition.directive, keyword.other.import, keyword.other.package, entity.name.type.namespace, entity.name.scope-resolution, keyword.other.using, keyword.package, keyword.import, keyword.map","settings":{"foreground":"#35a77c"}},{"scope":"storage.type.annotation","settings":{"foreground":"#35a77c"}},{"scope":"entity.name.label, constant.other.label","settings":{"foreground":"#35a77c"}},{"scope":"support.module, support.node, support.other.module, support.type.object.module, entity.name.type.module, entity.name.type.class.module, keyword.control.module","settings":{"foreground":"#35a77c"}},{"scope":"storage.type, support.type, entity.name.type, keyword.type","settings":{"foreground":"#3a94c5"}},{"scope":"entity.name.type.class, support.class, entity.name.class, entity.other.inherited-class, storage.class","settings":{"foreground":"#3a94c5"}},{"scope":"constant.numeric","settings":{"foreground":"#df69ba"}},{"scope":"constant.language.boolean","settings":{"foreground":"#df69ba"}},{"scope":"entity.name.function.preprocessor","settings":{"foreground":"#df69ba"}},{"scope":"variable.language.this, variable.language.self, variable.language.super, keyword.other.this, variable.language.special, constant.language.null, constant.language.undefined, constant.language.nan","settings":{"foreground":"#df69ba"}},{"scope":"constant.language, support.constant","settings":{"foreground":"#df69ba"}},{"scope":"variable, support.variable, meta.definition.variable","settings":{"foreground":"#5c6a72"}},{"scope":"variable.object.property, support.variable.property, variable.other.property, variable.other.object.property, variable.other.enummember, variable.other.member, meta.object-literal.key","settings":{"foreground":"#5c6a72"}},{"scope":"punctuation, meta.brace, meta.delimiter, meta.bracket","settings":{"foreground":"#5c6a72"}},{"scope":"heading.1.markdown, markup.heading.setext.1.markdown","settings":{"fontStyle":"bold","foreground":"#f85552"}},{"scope":"heading.2.markdown, markup.heading.setext.2.markdown","settings":{"fontStyle":"bold","foreground":"#f57d26"}},{"scope":"heading.3.markdown","settings":{"fontStyle":"bold","foreground":"#dfa000"}},{"scope":"heading.4.markdown","settings":{"fontStyle":"bold","foreground":"#8da101"}},{"scope":"heading.5.markdown","settings":{"fontStyle":"bold","foreground":"#3a94c5"}},{"scope":"heading.6.markdown","settings":{"fontStyle":"bold","foreground":"#df69ba"}},{"scope":"punctuation.definition.heading.markdown","settings":{"fontStyle":"regular","foreground":"#939f91"}},{"scope":"string.other.link.title.markdown, constant.other.reference.link.markdown, string.other.link.description.markdown","settings":{"fontStyle":"regular","foreground":"#df69ba"}},{"scope":"markup.underline.link.image.markdown, markup.underline.link.markdown","settings":{"fontStyle":"underline","foreground":"#8da101"}},{"scope":"punctuation.definition.string.begin.markdown, punctuation.definition.string.end.markdown, punctuation.definition.italic.markdown, punctuation.definition.quote.begin.markdown, punctuation.definition.metadata.markdown, punctuation.separator.key-value.markdown, punctuation.definition.constant.markdown","settings":{"foreground":"#939f91"}},{"scope":"punctuation.definition.bold.markdown","settings":{"fontStyle":"regular","foreground":"#939f91"}},{"scope":"meta.separator.markdown, punctuation.definition.constant.begin.markdown, punctuation.definition.constant.end.markdown","settings":{"fontStyle":"bold","foreground":"#939f91"}},{"scope":"markup.italic","settings":{"fontStyle":"italic"}},{"scope":"markup.bold","settings":{"fontStyle":"bold"}},{"scope":"markup.bold markup.italic, markup.italic markup.bold","settings":{"fontStyle":"italic bold"}},{"scope":"punctuation.definition.markdown, punctuation.definition.raw.markdown","settings":{"foreground":"#dfa000"}},{"scope":"fenced_code.block.language","settings":{"foreground":"#dfa000"}},{"scope":"markup.fenced_code.block.markdown, markup.inline.raw.string.markdown","settings":{"foreground":"#8da101"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#f85552"}},{"scope":"punctuation.definition.heading.restructuredtext","settings":{"fontStyle":"bold","foreground":"#f57d26"}},{"scope":"punctuation.definition.field.restructuredtext, punctuation.separator.key-value.restructuredtext, punctuation.definition.directive.restructuredtext, punctuation.definition.constant.restructuredtext, punctuation.definition.italic.restructuredtext, punctuation.definition.table.restructuredtext","settings":{"foreground":"#939f91"}},{"scope":"punctuation.definition.bold.restructuredtext","settings":{"fontStyle":"regular","foreground":"#939f91"}},{"scope":"entity.name.tag.restructuredtext, punctuation.definition.link.restructuredtext, punctuation.definition.raw.restructuredtext, punctuation.section.raw.restructuredtext","settings":{"foreground":"#35a77c"}},{"scope":"constant.other.footnote.link.restructuredtext","settings":{"foreground":"#df69ba"}},{"scope":"support.directive.restructuredtext","settings":{"foreground":"#f85552"}},{"scope":"entity.name.directive.restructuredtext, markup.raw.restructuredtext, markup.raw.inner.restructuredtext, string.other.link.title.restructuredtext","settings":{"foreground":"#8da101"}},{"scope":"punctuation.definition.function.latex, punctuation.definition.function.tex, punctuation.definition.keyword.latex, constant.character.newline.tex, punctuation.definition.keyword.tex","settings":{"foreground":"#939f91"}},{"scope":"support.function.be.latex","settings":{"foreground":"#f85552"}},{"scope":"support.function.section.latex, keyword.control.table.cell.latex, keyword.control.table.newline.latex","settings":{"foreground":"#f57d26"}},{"scope":"support.class.latex, variable.parameter.latex, variable.parameter.function.latex, variable.parameter.definition.label.latex, constant.other.reference.label.latex","settings":{"foreground":"#dfa000"}},{"scope":"keyword.control.preamble.latex","settings":{"foreground":"#df69ba"}},{"scope":"punctuation.separator.namespace.xml","settings":{"foreground":"#939f91"}},{"scope":"entity.name.tag.html, entity.name.tag.xml, entity.name.tag.localname.xml","settings":{"foreground":"#f57d26"}},{"scope":"entity.other.attribute-name.html, entity.other.attribute-name.xml, entity.other.attribute-name.localname.xml","settings":{"foreground":"#dfa000"}},{"scope":"string.quoted.double.html, string.quoted.single.html, punctuation.definition.string.begin.html, punctuation.definition.string.end.html, punctuation.separator.key-value.html, punctuation.definition.string.begin.xml, punctuation.definition.string.end.xml, string.quoted.double.xml, string.quoted.single.xml, punctuation.definition.tag.begin.html, punctuation.definition.tag.end.html, punctuation.definition.tag.xml, meta.tag.xml, meta.tag.preprocessor.xml, meta.tag.other.html, meta.tag.block.any.html, meta.tag.inline.any.html","settings":{"foreground":"#8da101"}},{"scope":"variable.language.documentroot.xml, meta.tag.sgml.doctype.xml","settings":{"foreground":"#df69ba"}},{"scope":"storage.type.proto","settings":{"foreground":"#dfa000"}},{"scope":"string.quoted.double.proto.syntax, string.quoted.single.proto.syntax, string.quoted.double.proto, string.quoted.single.proto","settings":{"foreground":"#8da101"}},{"scope":"entity.name.class.proto, entity.name.class.message.proto","settings":{"foreground":"#35a77c"}},{"scope":"punctuation.definition.entity.css, punctuation.separator.key-value.css, punctuation.terminator.rule.css, punctuation.separator.list.comma.css","settings":{"foreground":"#939f91"}},{"scope":"entity.other.attribute-name.class.css","settings":{"foreground":"#f85552"}},{"scope":"keyword.other.unit","settings":{"foreground":"#f57d26"}},{"scope":"entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css","settings":{"foreground":"#dfa000"}},{"scope":"string.quoted.single.css, string.quoted.double.css, support.constant.property-value.css, meta.property-value.css, punctuation.definition.string.begin.css, punctuation.definition.string.end.css, constant.numeric.css, support.constant.font-name.css, variable.parameter.keyframe-list.css","settings":{"foreground":"#8da101"}},{"scope":"support.type.property-name.css","settings":{"foreground":"#35a77c"}},{"scope":"support.type.vendored.property-name.css","settings":{"foreground":"#3a94c5"}},{"scope":"entity.name.tag.css, entity.other.keyframe-offset.css, punctuation.definition.keyword.css, keyword.control.at-rule.keyframes.css, meta.selector.css","settings":{"foreground":"#df69ba"}},{"scope":"punctuation.definition.entity.scss, punctuation.separator.key-value.scss, punctuation.terminator.rule.scss, punctuation.separator.list.comma.scss","settings":{"foreground":"#939f91"}},{"scope":"keyword.control.at-rule.keyframes.scss","settings":{"foreground":"#f57d26"}},{"scope":"punctuation.definition.interpolation.begin.bracket.curly.scss, punctuation.definition.interpolation.end.bracket.curly.scss","settings":{"foreground":"#dfa000"}},{"scope":"punctuation.definition.string.begin.scss, punctuation.definition.string.end.scss, string.quoted.double.scss, string.quoted.single.scss, constant.character.css.sass, meta.property-value.scss","settings":{"foreground":"#8da101"}},{"scope":"keyword.control.at-rule.include.scss, keyword.control.at-rule.use.scss, keyword.control.at-rule.mixin.scss, keyword.control.at-rule.extend.scss, keyword.control.at-rule.import.scss","settings":{"foreground":"#df69ba"}},{"scope":"meta.function.stylus","settings":{"foreground":"#5c6a72"}},{"scope":"entity.name.function.stylus","settings":{"foreground":"#dfa000"}},{"scope":"string.unquoted.js","settings":{"foreground":"#5c6a72"}},{"scope":"punctuation.accessor.js, punctuation.separator.key-value.js, punctuation.separator.label.js, keyword.operator.accessor.js","settings":{"foreground":"#939f91"}},{"scope":"punctuation.definition.block.tag.jsdoc","settings":{"foreground":"#f85552"}},{"scope":"storage.type.js, storage.type.function.arrow.js","settings":{"foreground":"#f57d26"}},{"scope":"JSXNested","settings":{"foreground":"#5c6a72"}},{"scope":"punctuation.definition.tag.jsx, entity.other.attribute-name.jsx, punctuation.definition.tag.begin.js.jsx, punctuation.definition.tag.end.js.jsx, entity.other.attribute-name.js.jsx","settings":{"foreground":"#8da101"}},{"scope":"entity.name.type.module.ts","settings":{"foreground":"#5c6a72"}},{"scope":"keyword.operator.type.annotation.ts, punctuation.accessor.ts, punctuation.separator.key-value.ts","settings":{"foreground":"#939f91"}},{"scope":"punctuation.definition.tag.directive.ts, entity.other.attribute-name.directive.ts","settings":{"foreground":"#8da101"}},{"scope":"entity.name.type.ts, entity.name.type.interface.ts, entity.other.inherited-class.ts, entity.name.type.alias.ts, entity.name.type.class.ts, entity.name.type.enum.ts","settings":{"foreground":"#35a77c"}},{"scope":"storage.type.ts, storage.type.function.arrow.ts, storage.type.type.ts","settings":{"foreground":"#f57d26"}},{"scope":"entity.name.type.module.ts","settings":{"foreground":"#3a94c5"}},{"scope":"keyword.control.import.ts, keyword.control.export.ts, storage.type.namespace.ts","settings":{"foreground":"#df69ba"}},{"scope":"entity.name.type.module.tsx","settings":{"foreground":"#5c6a72"}},{"scope":"keyword.operator.type.annotation.tsx, punctuation.accessor.tsx, punctuation.separator.key-value.tsx","settings":{"foreground":"#939f91"}},{"scope":"punctuation.definition.tag.directive.tsx, entity.other.attribute-name.directive.tsx, punctuation.definition.tag.begin.tsx, punctuation.definition.tag.end.tsx, entity.other.attribute-name.tsx","settings":{"foreground":"#8da101"}},{"scope":"entity.name.type.tsx, entity.name.type.interface.tsx, entity.other.inherited-class.tsx, entity.name.type.alias.tsx, entity.name.type.class.tsx, entity.name.type.enum.tsx","settings":{"foreground":"#35a77c"}},{"scope":"entity.name.type.module.tsx","settings":{"foreground":"#3a94c5"}},{"scope":"keyword.control.import.tsx, keyword.control.export.tsx, storage.type.namespace.tsx","settings":{"foreground":"#df69ba"}},{"scope":"storage.type.tsx, storage.type.function.arrow.tsx, storage.type.type.tsx, support.class.component.tsx","settings":{"foreground":"#f57d26"}},{"scope":"storage.type.function.coffee","settings":{"foreground":"#f57d26"}},{"scope":"meta.type-signature.purescript","settings":{"foreground":"#5c6a72"}},{"scope":"keyword.other.double-colon.purescript, keyword.other.arrow.purescript, keyword.other.big-arrow.purescript","settings":{"foreground":"#f57d26"}},{"scope":"entity.name.function.purescript","settings":{"foreground":"#dfa000"}},{"scope":"string.quoted.single.purescript, string.quoted.double.purescript, punctuation.definition.string.begin.purescript, punctuation.definition.string.end.purescript, string.quoted.triple.purescript, entity.name.type.purescript","settings":{"foreground":"#8da101"}},{"scope":"support.other.module.purescript","settings":{"foreground":"#df69ba"}},{"scope":"punctuation.dot.dart","settings":{"foreground":"#939f91"}},{"scope":"storage.type.primitive.dart","settings":{"foreground":"#f57d26"}},{"scope":"support.class.dart","settings":{"foreground":"#dfa000"}},{"scope":"entity.name.function.dart, string.interpolated.single.dart, string.interpolated.double.dart","settings":{"foreground":"#8da101"}},{"scope":"variable.language.dart","settings":{"foreground":"#3a94c5"}},{"scope":"keyword.other.import.dart, storage.type.annotation.dart","settings":{"foreground":"#df69ba"}},{"scope":"entity.other.attribute-name.class.pug","settings":{"foreground":"#f85552"}},{"scope":"storage.type.function.pug","settings":{"foreground":"#f57d26"}},{"scope":"entity.other.attribute-name.tag.pug","settings":{"foreground":"#35a77c"}},{"scope":"entity.name.tag.pug, storage.type.import.include.pug","settings":{"foreground":"#df69ba"}},{"scope":"meta.function-call.c, storage.modifier.array.bracket.square.c, meta.function.definition.parameters.c","settings":{"foreground":"#5c6a72"}},{"scope":"punctuation.separator.dot-access.c, constant.character.escape.line-continuation.c","settings":{"foreground":"#939f91"}},{"scope":"keyword.control.directive.include.c, punctuation.definition.directive.c, keyword.control.directive.pragma.c, keyword.control.directive.line.c, keyword.control.directive.define.c, keyword.control.directive.conditional.c, keyword.control.directive.diagnostic.error.c, keyword.control.directive.undef.c, keyword.control.directive.conditional.ifdef.c, keyword.control.directive.endif.c, keyword.control.directive.conditional.ifndef.c, keyword.control.directive.conditional.if.c, keyword.control.directive.else.c","settings":{"foreground":"#f85552"}},{"scope":"punctuation.separator.pointer-access.c","settings":{"foreground":"#f57d26"}},{"scope":"variable.other.member.c","settings":{"foreground":"#35a77c"}},{"scope":"meta.function-call.cpp, storage.modifier.array.bracket.square.cpp, meta.function.definition.parameters.cpp, meta.body.function.definition.cpp","settings":{"foreground":"#5c6a72"}},{"scope":"punctuation.separator.dot-access.cpp, constant.character.escape.line-continuation.cpp","settings":{"foreground":"#939f91"}},{"scope":"keyword.control.directive.include.cpp, punctuation.definition.directive.cpp, keyword.control.directive.pragma.cpp, keyword.control.directive.line.cpp, keyword.control.directive.define.cpp, keyword.control.directive.conditional.cpp, keyword.control.directive.diagnostic.error.cpp, keyword.control.directive.undef.cpp, keyword.control.directive.conditional.ifdef.cpp, keyword.control.directive.endif.cpp, keyword.control.directive.conditional.ifndef.cpp, keyword.control.directive.conditional.if.cpp, keyword.control.directive.else.cpp, storage.type.namespace.definition.cpp, keyword.other.using.directive.cpp, storage.type.struct.cpp","settings":{"foreground":"#f85552"}},{"scope":"punctuation.separator.pointer-access.cpp, punctuation.section.angle-brackets.begin.template.call.cpp, punctuation.section.angle-brackets.end.template.call.cpp","settings":{"foreground":"#f57d26"}},{"scope":"variable.other.member.cpp","settings":{"foreground":"#35a77c"}},{"scope":"keyword.other.using.cs","settings":{"foreground":"#f85552"}},{"scope":"keyword.type.cs, constant.character.escape.cs, punctuation.definition.interpolation.begin.cs, punctuation.definition.interpolation.end.cs","settings":{"foreground":"#dfa000"}},{"scope":"string.quoted.double.cs, string.quoted.single.cs, punctuation.definition.string.begin.cs, punctuation.definition.string.end.cs","settings":{"foreground":"#8da101"}},{"scope":"variable.other.object.property.cs","settings":{"foreground":"#35a77c"}},{"scope":"entity.name.type.namespace.cs","settings":{"foreground":"#df69ba"}},{"scope":"keyword.symbol.fsharp, constant.language.unit.fsharp","settings":{"foreground":"#5c6a72"}},{"scope":"keyword.format.specifier.fsharp, entity.name.type.fsharp","settings":{"foreground":"#dfa000"}},{"scope":"string.quoted.double.fsharp, string.quoted.single.fsharp, punctuation.definition.string.begin.fsharp, punctuation.definition.string.end.fsharp","settings":{"foreground":"#8da101"}},{"scope":"entity.name.section.fsharp","settings":{"foreground":"#3a94c5"}},{"scope":"support.function.attribute.fsharp","settings":{"foreground":"#df69ba"}},{"scope":"punctuation.separator.java, punctuation.separator.period.java","settings":{"foreground":"#939f91"}},{"scope":"keyword.other.import.java, keyword.other.package.java","settings":{"foreground":"#f85552"}},{"scope":"storage.type.function.arrow.java, keyword.control.ternary.java","settings":{"foreground":"#f57d26"}},{"scope":"variable.other.property.java","settings":{"foreground":"#35a77c"}},{"scope":"variable.language.wildcard.java, storage.modifier.import.java, storage.type.annotation.java, punctuation.definition.annotation.java, storage.modifier.package.java, entity.name.type.module.java","settings":{"foreground":"#df69ba"}},{"scope":"keyword.other.import.kotlin","settings":{"foreground":"#f85552"}},{"scope":"storage.type.kotlin","settings":{"foreground":"#f57d26"}},{"scope":"constant.language.kotlin","settings":{"foreground":"#35a77c"}},{"scope":"entity.name.package.kotlin, storage.type.annotation.kotlin","settings":{"foreground":"#df69ba"}},{"scope":"entity.name.package.scala","settings":{"foreground":"#df69ba"}},{"scope":"constant.language.scala","settings":{"foreground":"#3a94c5"}},{"scope":"entity.name.import.scala","settings":{"foreground":"#35a77c"}},{"scope":"string.quoted.double.scala, string.quoted.single.scala, punctuation.definition.string.begin.scala, punctuation.definition.string.end.scala, string.quoted.double.interpolated.scala, string.quoted.single.interpolated.scala, string.quoted.triple.scala","settings":{"foreground":"#8da101"}},{"scope":"entity.name.class, entity.other.inherited-class.scala","settings":{"foreground":"#dfa000"}},{"scope":"keyword.declaration.stable.scala, keyword.other.arrow.scala","settings":{"foreground":"#f57d26"}},{"scope":"keyword.other.import.scala","settings":{"foreground":"#f85552"}},{"scope":"keyword.operator.navigation.groovy, meta.method.body.java, meta.definition.method.groovy, meta.definition.method.signature.java","settings":{"foreground":"#5c6a72"}},{"scope":"punctuation.separator.groovy","settings":{"foreground":"#939f91"}},{"scope":"keyword.other.import.groovy, keyword.other.package.groovy, keyword.other.import.static.groovy","settings":{"foreground":"#f85552"}},{"scope":"storage.type.def.groovy","settings":{"foreground":"#f57d26"}},{"scope":"variable.other.interpolated.groovy, meta.method.groovy","settings":{"foreground":"#8da101"}},{"scope":"storage.modifier.import.groovy, storage.modifier.package.groovy","settings":{"foreground":"#35a77c"}},{"scope":"storage.type.annotation.groovy","settings":{"foreground":"#df69ba"}},{"scope":"keyword.type.go","settings":{"foreground":"#f85552"}},{"scope":"entity.name.package.go","settings":{"foreground":"#35a77c"}},{"scope":"keyword.import.go, keyword.package.go","settings":{"foreground":"#df69ba"}},{"scope":"entity.name.type.mod.rust","settings":{"foreground":"#5c6a72"}},{"scope":"keyword.operator.path.rust, keyword.operator.member-access.rust","settings":{"foreground":"#939f91"}},{"scope":"storage.type.rust","settings":{"foreground":"#f57d26"}},{"scope":"support.constant.core.rust","settings":{"foreground":"#35a77c"}},{"scope":"meta.attribute.rust, variable.language.rust, storage.type.module.rust","settings":{"foreground":"#df69ba"}},{"scope":"meta.function-call.swift, support.function.any-method.swift","settings":{"foreground":"#5c6a72"}},{"scope":"support.variable.swift","settings":{"foreground":"#35a77c"}},{"scope":"keyword.operator.class.php","settings":{"foreground":"#5c6a72"}},{"scope":"storage.type.trait.php","settings":{"foreground":"#f57d26"}},{"scope":"constant.language.php, support.other.namespace.php","settings":{"foreground":"#35a77c"}},{"scope":"storage.type.modifier.access.control.public.cpp, storage.type.modifier.access.control.private.cpp","settings":{"foreground":"#3a94c5"}},{"scope":"keyword.control.import.include.php, storage.type.php","settings":{"foreground":"#df69ba"}},{"scope":"meta.function-call.arguments.python","settings":{"foreground":"#5c6a72"}},{"scope":"punctuation.definition.decorator.python, punctuation.separator.period.python","settings":{"foreground":"#939f91"}},{"scope":"constant.language.python","settings":{"foreground":"#35a77c"}},{"scope":"keyword.control.import.python, keyword.control.import.from.python","settings":{"foreground":"#df69ba"}},{"scope":"constant.language.lua","settings":{"foreground":"#35a77c"}},{"scope":"entity.name.class.lua","settings":{"foreground":"#3a94c5"}},{"scope":"meta.function.method.with-arguments.ruby","settings":{"foreground":"#5c6a72"}},{"scope":"punctuation.separator.method.ruby","settings":{"foreground":"#939f91"}},{"scope":"keyword.control.pseudo-method.ruby, storage.type.variable.ruby","settings":{"foreground":"#f57d26"}},{"scope":"keyword.other.special-method.ruby","settings":{"foreground":"#8da101"}},{"scope":"keyword.control.module.ruby, punctuation.definition.constant.ruby","settings":{"foreground":"#df69ba"}},{"scope":"string.regexp.character-class.ruby,string.regexp.interpolated.ruby,punctuation.definition.character-class.ruby,string.regexp.group.ruby, punctuation.section.regexp.ruby, punctuation.definition.group.ruby","settings":{"foreground":"#dfa000"}},{"scope":"variable.other.constant.ruby","settings":{"foreground":"#3a94c5"}},{"scope":"keyword.other.arrow.haskell, keyword.other.big-arrow.haskell, keyword.other.double-colon.haskell","settings":{"foreground":"#f57d26"}},{"scope":"storage.type.haskell","settings":{"foreground":"#dfa000"}},{"scope":"constant.other.haskell, string.quoted.double.haskell, string.quoted.single.haskell, punctuation.definition.string.begin.haskell, punctuation.definition.string.end.haskell","settings":{"foreground":"#8da101"}},{"scope":"entity.name.function.haskell","settings":{"foreground":"#3a94c5"}},{"scope":"entity.name.namespace, meta.preprocessor.haskell","settings":{"foreground":"#35a77c"}},{"scope":"keyword.control.import.julia, keyword.control.export.julia","settings":{"foreground":"#f85552"}},{"scope":"keyword.storage.modifier.julia","settings":{"foreground":"#f57d26"}},{"scope":"constant.language.julia","settings":{"foreground":"#35a77c"}},{"scope":"support.function.macro.julia","settings":{"foreground":"#df69ba"}},{"scope":"keyword.other.period.elm","settings":{"foreground":"#5c6a72"}},{"scope":"storage.type.elm","settings":{"foreground":"#dfa000"}},{"scope":"keyword.other.r","settings":{"foreground":"#f57d26"}},{"scope":"entity.name.function.r, variable.function.r","settings":{"foreground":"#8da101"}},{"scope":"constant.language.r","settings":{"foreground":"#35a77c"}},{"scope":"entity.namespace.r","settings":{"foreground":"#df69ba"}},{"scope":"punctuation.separator.module-function.erlang, punctuation.section.directive.begin.erlang","settings":{"foreground":"#939f91"}},{"scope":"keyword.control.directive.erlang, keyword.control.directive.define.erlang","settings":{"foreground":"#f85552"}},{"scope":"entity.name.type.class.module.erlang","settings":{"foreground":"#dfa000"}},{"scope":"string.quoted.double.erlang, string.quoted.single.erlang, punctuation.definition.string.begin.erlang, punctuation.definition.string.end.erlang","settings":{"foreground":"#8da101"}},{"scope":"keyword.control.directive.export.erlang, keyword.control.directive.module.erlang, keyword.control.directive.import.erlang, keyword.control.directive.behaviour.erlang","settings":{"foreground":"#df69ba"}},{"scope":"variable.other.readwrite.module.elixir, punctuation.definition.variable.elixir","settings":{"foreground":"#35a77c"}},{"scope":"constant.language.elixir","settings":{"foreground":"#3a94c5"}},{"scope":"keyword.control.module.elixir","settings":{"foreground":"#df69ba"}},{"scope":"entity.name.type.value-signature.ocaml","settings":{"foreground":"#5c6a72"}},{"scope":"keyword.other.ocaml","settings":{"foreground":"#f57d26"}},{"scope":"constant.language.variant.ocaml","settings":{"foreground":"#35a77c"}},{"scope":"storage.type.sub.perl, storage.type.declare.routine.perl","settings":{"foreground":"#f85552"}},{"scope":"meta.function.lisp","settings":{"foreground":"#5c6a72"}},{"scope":"storage.type.function-type.lisp","settings":{"foreground":"#f85552"}},{"scope":"keyword.constant.lisp","settings":{"foreground":"#8da101"}},{"scope":"entity.name.function.lisp","settings":{"foreground":"#35a77c"}},{"scope":"constant.keyword.clojure, support.variable.clojure, meta.definition.variable.clojure","settings":{"foreground":"#8da101"}},{"scope":"entity.global.clojure","settings":{"foreground":"#df69ba"}},{"scope":"entity.name.function.clojure","settings":{"foreground":"#3a94c5"}},{"scope":"meta.scope.if-block.shell, meta.scope.group.shell","settings":{"foreground":"#5c6a72"}},{"scope":"support.function.builtin.shell, entity.name.function.shell","settings":{"foreground":"#dfa000"}},{"scope":"string.quoted.double.shell, string.quoted.single.shell, punctuation.definition.string.begin.shell, punctuation.definition.string.end.shell, string.unquoted.heredoc.shell","settings":{"foreground":"#8da101"}},{"scope":"keyword.control.heredoc-token.shell, variable.other.normal.shell, punctuation.definition.variable.shell, variable.other.special.shell, variable.other.positional.shell, variable.other.bracket.shell","settings":{"foreground":"#df69ba"}},{"scope":"support.function.builtin.fish","settings":{"foreground":"#f85552"}},{"scope":"support.function.unix.fish","settings":{"foreground":"#f57d26"}},{"scope":"variable.other.normal.fish, punctuation.definition.variable.fish, variable.other.fixed.fish, variable.other.special.fish","settings":{"foreground":"#3a94c5"}},{"scope":"string.quoted.double.fish, punctuation.definition.string.end.fish, punctuation.definition.string.begin.fish, string.quoted.single.fish","settings":{"foreground":"#8da101"}},{"scope":"constant.character.escape.single.fish","settings":{"foreground":"#df69ba"}},{"scope":"punctuation.definition.variable.powershell","settings":{"foreground":"#939f91"}},{"scope":"entity.name.function.powershell, support.function.attribute.powershell, support.function.powershell","settings":{"foreground":"#dfa000"}},{"scope":"string.quoted.single.powershell, string.quoted.double.powershell, punctuation.definition.string.begin.powershell, punctuation.definition.string.end.powershell, string.quoted.double.heredoc.powershell","settings":{"foreground":"#8da101"}},{"scope":"variable.other.member.powershell","settings":{"foreground":"#35a77c"}},{"scope":"string.unquoted.alias.graphql","settings":{"foreground":"#5c6a72"}},{"scope":"keyword.type.graphql","settings":{"foreground":"#f85552"}},{"scope":"entity.name.fragment.graphql","settings":{"foreground":"#df69ba"}},{"scope":"entity.name.function.target.makefile","settings":{"foreground":"#f57d26"}},{"scope":"variable.other.makefile","settings":{"foreground":"#dfa000"}},{"scope":"meta.scope.prerequisites.makefile","settings":{"foreground":"#8da101"}},{"scope":"string.source.cmake","settings":{"foreground":"#8da101"}},{"scope":"entity.source.cmake","settings":{"foreground":"#35a77c"}},{"scope":"storage.source.cmake","settings":{"foreground":"#df69ba"}},{"scope":"punctuation.definition.map.viml","settings":{"foreground":"#939f91"}},{"scope":"storage.type.map.viml","settings":{"foreground":"#f57d26"}},{"scope":"constant.character.map.viml, constant.character.map.key.viml","settings":{"foreground":"#8da101"}},{"scope":"constant.character.map.special.viml","settings":{"foreground":"#3a94c5"}},{"scope":"constant.language.tmux, constant.numeric.tmux","settings":{"foreground":"#8da101"}},{"scope":"entity.name.function.package-manager.dockerfile","settings":{"foreground":"#f57d26"}},{"scope":"keyword.operator.flag.dockerfile","settings":{"foreground":"#dfa000"}},{"scope":"string.quoted.double.dockerfile, string.quoted.single.dockerfile","settings":{"foreground":"#8da101"}},{"scope":"constant.character.escape.dockerfile","settings":{"foreground":"#35a77c"}},{"scope":"entity.name.type.base-image.dockerfile, entity.name.image.dockerfile","settings":{"foreground":"#df69ba"}},{"scope":"punctuation.definition.separator.diff","settings":{"foreground":"#939f91"}},{"scope":"markup.deleted.diff, punctuation.definition.deleted.diff","settings":{"foreground":"#f85552"}},{"scope":"meta.diff.range.context, punctuation.definition.range.diff","settings":{"foreground":"#f57d26"}},{"scope":"meta.diff.header.from-file","settings":{"foreground":"#dfa000"}},{"scope":"markup.inserted.diff, punctuation.definition.inserted.diff","settings":{"foreground":"#8da101"}},{"scope":"markup.changed.diff, punctuation.definition.changed.diff","settings":{"foreground":"#3a94c5"}},{"scope":"punctuation.definition.from-file.diff","settings":{"foreground":"#df69ba"}},{"scope":"entity.name.section.group-title.ini, punctuation.definition.entity.ini","settings":{"foreground":"#f85552"}},{"scope":"punctuation.separator.key-value.ini","settings":{"foreground":"#f57d26"}},{"scope":"string.quoted.double.ini, string.quoted.single.ini, punctuation.definition.string.begin.ini, punctuation.definition.string.end.ini","settings":{"foreground":"#8da101"}},{"scope":"keyword.other.definition.ini","settings":{"foreground":"#35a77c"}},{"scope":"support.function.aggregate.sql","settings":{"foreground":"#dfa000"}},{"scope":"string.quoted.single.sql, punctuation.definition.string.end.sql, punctuation.definition.string.begin.sql, string.quoted.double.sql","settings":{"foreground":"#8da101"}},{"scope":"support.type.graphql","settings":{"foreground":"#dfa000"}},{"scope":"variable.parameter.graphql","settings":{"foreground":"#3a94c5"}},{"scope":"constant.character.enum.graphql","settings":{"foreground":"#35a77c"}},{"scope":"punctuation.support.type.property-name.begin.json, punctuation.support.type.property-name.end.json, punctuation.separator.dictionary.key-value.json, punctuation.definition.string.begin.json, punctuation.definition.string.end.json, punctuation.separator.dictionary.pair.json, punctuation.separator.array.json","settings":{"foreground":"#939f91"}},{"scope":"support.type.property-name.json","settings":{"foreground":"#f57d26"}},{"scope":"string.quoted.double.json","settings":{"foreground":"#8da101"}},{"scope":"punctuation.separator.key-value.mapping.yaml","settings":{"foreground":"#939f91"}},{"scope":"string.unquoted.plain.out.yaml, string.quoted.single.yaml, string.quoted.double.yaml, punctuation.definition.string.begin.yaml, punctuation.definition.string.end.yaml, string.unquoted.plain.in.yaml, string.unquoted.block.yaml","settings":{"foreground":"#8da101"}},{"scope":"punctuation.definition.anchor.yaml, punctuation.definition.block.sequence.item.yaml","settings":{"foreground":"#35a77c"}},{"scope":"keyword.key.toml","settings":{"foreground":"#f57d26"}},{"scope":"string.quoted.single.basic.line.toml, string.quoted.single.literal.line.toml, punctuation.definition.keyValuePair.toml","settings":{"foreground":"#8da101"}},{"scope":"constant.other.boolean.toml","settings":{"foreground":"#3a94c5"}},{"scope":"entity.other.attribute-name.table.toml, punctuation.definition.table.toml, entity.other.attribute-name.table.array.toml, punctuation.definition.table.array.toml","settings":{"foreground":"#df69ba"}},{"scope":"comment, string.comment, punctuation.definition.comment","settings":{"fontStyle":"italic","foreground":"#939f91"}}],"type":"light"}'))});var uM={};x(uM,{default:()=>ece});var ece,pM=_(()=>{ece=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#f9826c","activityBar.background":"#24292e","activityBar.border":"#1b1f23","activityBar.foreground":"#e1e4e8","activityBar.inactiveForeground":"#6a737d","activityBarBadge.background":"#0366d6","activityBarBadge.foreground":"#fff","badge.background":"#044289","badge.foreground":"#c8e1ff","breadcrumb.activeSelectionForeground":"#d1d5da","breadcrumb.focusForeground":"#e1e4e8","breadcrumb.foreground":"#959da5","breadcrumbPicker.background":"#2b3036","button.background":"#176f2c","button.foreground":"#dcffe4","button.hoverBackground":"#22863a","button.secondaryBackground":"#444d56","button.secondaryForeground":"#fff","button.secondaryHoverBackground":"#586069","checkbox.background":"#444d56","checkbox.border":"#1b1f23","debugToolBar.background":"#2b3036","descriptionForeground":"#959da5","diffEditor.insertedTextBackground":"#28a74530","diffEditor.removedTextBackground":"#d73a4930","dropdown.background":"#2f363d","dropdown.border":"#1b1f23","dropdown.foreground":"#e1e4e8","dropdown.listBackground":"#24292e","editor.background":"#24292e","editor.findMatchBackground":"#ffd33d44","editor.findMatchHighlightBackground":"#ffd33d22","editor.focusedStackFrameHighlightBackground":"#2b6a3033","editor.foldBackground":"#58606915","editor.foreground":"#e1e4e8","editor.inactiveSelectionBackground":"#3392FF22","editor.lineHighlightBackground":"#2b3036","editor.linkedEditingBackground":"#3392FF22","editor.selectionBackground":"#3392FF44","editor.selectionHighlightBackground":"#17E5E633","editor.selectionHighlightBorder":"#17E5E600","editor.stackFrameHighlightBackground":"#C6902625","editor.wordHighlightBackground":"#17E5E600","editor.wordHighlightBorder":"#17E5E699","editor.wordHighlightStrongBackground":"#17E5E600","editor.wordHighlightStrongBorder":"#17E5E666","editorBracketHighlight.foreground1":"#79b8ff","editorBracketHighlight.foreground2":"#ffab70","editorBracketHighlight.foreground3":"#b392f0","editorBracketHighlight.foreground4":"#79b8ff","editorBracketHighlight.foreground5":"#ffab70","editorBracketHighlight.foreground6":"#b392f0","editorBracketMatch.background":"#17E5E650","editorBracketMatch.border":"#17E5E600","editorCursor.foreground":"#c8e1ff","editorError.foreground":"#f97583","editorGroup.border":"#1b1f23","editorGroupHeader.tabsBackground":"#1f2428","editorGroupHeader.tabsBorder":"#1b1f23","editorGutter.addedBackground":"#28a745","editorGutter.deletedBackground":"#ea4a5a","editorGutter.modifiedBackground":"#2188ff","editorIndentGuide.activeBackground":"#444d56","editorIndentGuide.background":"#2f363d","editorLineNumber.activeForeground":"#e1e4e8","editorLineNumber.foreground":"#444d56","editorOverviewRuler.border":"#1b1f23","editorWarning.foreground":"#ffea7f","editorWhitespace.foreground":"#444d56","editorWidget.background":"#1f2428","errorForeground":"#f97583","focusBorder":"#005cc5","foreground":"#d1d5da","gitDecoration.addedResourceForeground":"#34d058","gitDecoration.conflictingResourceForeground":"#ffab70","gitDecoration.deletedResourceForeground":"#ea4a5a","gitDecoration.ignoredResourceForeground":"#6a737d","gitDecoration.modifiedResourceForeground":"#79b8ff","gitDecoration.submoduleResourceForeground":"#6a737d","gitDecoration.untrackedResourceForeground":"#34d058","input.background":"#2f363d","input.border":"#1b1f23","input.foreground":"#e1e4e8","input.placeholderForeground":"#959da5","list.activeSelectionBackground":"#39414a","list.activeSelectionForeground":"#e1e4e8","list.focusBackground":"#044289","list.hoverBackground":"#282e34","list.hoverForeground":"#e1e4e8","list.inactiveFocusBackground":"#1d2d3e","list.inactiveSelectionBackground":"#282e34","list.inactiveSelectionForeground":"#e1e4e8","notificationCenterHeader.background":"#24292e","notificationCenterHeader.foreground":"#959da5","notifications.background":"#2f363d","notifications.border":"#1b1f23","notifications.foreground":"#e1e4e8","notificationsErrorIcon.foreground":"#ea4a5a","notificationsInfoIcon.foreground":"#79b8ff","notificationsWarningIcon.foreground":"#ffab70","panel.background":"#1f2428","panel.border":"#1b1f23","panelInput.border":"#2f363d","panelTitle.activeBorder":"#f9826c","panelTitle.activeForeground":"#e1e4e8","panelTitle.inactiveForeground":"#959da5","peekViewEditor.background":"#1f242888","peekViewEditor.matchHighlightBackground":"#ffd33d33","peekViewResult.background":"#1f2428","peekViewResult.matchHighlightBackground":"#ffd33d33","pickerGroup.border":"#444d56","pickerGroup.foreground":"#e1e4e8","progressBar.background":"#0366d6","quickInput.background":"#24292e","quickInput.foreground":"#e1e4e8","scrollbar.shadow":"#0008","scrollbarSlider.activeBackground":"#6a737d88","scrollbarSlider.background":"#6a737d33","scrollbarSlider.hoverBackground":"#6a737d44","settings.headerForeground":"#e1e4e8","settings.modifiedItemIndicator":"#0366d6","sideBar.background":"#1f2428","sideBar.border":"#1b1f23","sideBar.foreground":"#d1d5da","sideBarSectionHeader.background":"#1f2428","sideBarSectionHeader.border":"#1b1f23","sideBarSectionHeader.foreground":"#e1e4e8","sideBarTitle.foreground":"#e1e4e8","statusBar.background":"#24292e","statusBar.border":"#1b1f23","statusBar.debuggingBackground":"#931c06","statusBar.debuggingForeground":"#fff","statusBar.foreground":"#d1d5da","statusBar.noFolderBackground":"#24292e","statusBarItem.prominentBackground":"#282e34","statusBarItem.remoteBackground":"#24292e","statusBarItem.remoteForeground":"#d1d5da","tab.activeBackground":"#24292e","tab.activeBorder":"#24292e","tab.activeBorderTop":"#f9826c","tab.activeForeground":"#e1e4e8","tab.border":"#1b1f23","tab.hoverBackground":"#24292e","tab.inactiveBackground":"#1f2428","tab.inactiveForeground":"#959da5","tab.unfocusedActiveBorder":"#24292e","tab.unfocusedActiveBorderTop":"#1b1f23","tab.unfocusedHoverBackground":"#24292e","terminal.ansiBlack":"#586069","terminal.ansiBlue":"#2188ff","terminal.ansiBrightBlack":"#959da5","terminal.ansiBrightBlue":"#79b8ff","terminal.ansiBrightCyan":"#56d4dd","terminal.ansiBrightGreen":"#85e89d","terminal.ansiBrightMagenta":"#b392f0","terminal.ansiBrightRed":"#f97583","terminal.ansiBrightWhite":"#fafbfc","terminal.ansiBrightYellow":"#ffea7f","terminal.ansiCyan":"#39c5cf","terminal.ansiGreen":"#34d058","terminal.ansiMagenta":"#b392f0","terminal.ansiRed":"#ea4a5a","terminal.ansiWhite":"#d1d5da","terminal.ansiYellow":"#ffea7f","terminal.foreground":"#d1d5da","terminal.tab.activeBorder":"#f9826c","terminalCursor.background":"#586069","terminalCursor.foreground":"#79b8ff","textBlockQuote.background":"#24292e","textBlockQuote.border":"#444d56","textCodeBlock.background":"#2f363d","textLink.activeForeground":"#c8e1ff","textLink.foreground":"#79b8ff","textPreformat.foreground":"#d1d5da","textSeparator.foreground":"#586069","titleBar.activeBackground":"#24292e","titleBar.activeForeground":"#e1e4e8","titleBar.border":"#1b1f23","titleBar.inactiveBackground":"#1f2428","titleBar.inactiveForeground":"#959da5","tree.indentGuidesStroke":"#2f363d","welcomePage.buttonBackground":"#2f363d","welcomePage.buttonHoverBackground":"#444d56"},"displayName":"GitHub Dark","name":"github-dark","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#6a737d"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language"],"settings":{"foreground":"#79b8ff"}},{"scope":["entity","entity.name"],"settings":{"foreground":"#b392f0"}},{"scope":"variable.parameter.function","settings":{"foreground":"#e1e4e8"}},{"scope":"entity.name.tag","settings":{"foreground":"#85e89d"}},{"scope":"keyword","settings":{"foreground":"#f97583"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#f97583"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#e1e4e8"}},{"scope":["string","punctuation.definition.string","string punctuation.section.embedded source"],"settings":{"foreground":"#9ecbff"}},{"scope":"support","settings":{"foreground":"#79b8ff"}},{"scope":"meta.property-name","settings":{"foreground":"#79b8ff"}},{"scope":"variable","settings":{"foreground":"#ffab70"}},{"scope":"variable.other","settings":{"foreground":"#e1e4e8"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"carriage-return","settings":{"background":"#f97583","content":"^M","fontStyle":"italic underline","foreground":"#24292e"}},{"scope":"message.error","settings":{"foreground":"#fdaeb7"}},{"scope":"string variable","settings":{"foreground":"#79b8ff"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#dbedff"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#dbedff"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#85e89d"}},{"scope":"support.constant","settings":{"foreground":"#79b8ff"}},{"scope":"support.variable","settings":{"foreground":"#79b8ff"}},{"scope":"meta.module-reference","settings":{"foreground":"#79b8ff"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#ffab70"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#79b8ff"}},{"scope":"markup.quote","settings":{"foreground":"#85e89d"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#e1e4e8"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#e1e4e8"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#79b8ff"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#86181d","foreground":"#fdaeb7"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#144620","foreground":"#85e89d"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#c24e00","foreground":"#ffab70"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#79b8ff","foreground":"#2f363d"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#b392f0"}},{"scope":"meta.diff.header","settings":{"foreground":"#79b8ff"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#79b8ff"}},{"scope":"meta.output","settings":{"foreground":"#79b8ff"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#d1d5da"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#fdaeb7"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"fontStyle":"underline","foreground":"#dbedff"}}],"type":"dark"}'))});var mM={};x(mM,{default:()=>tce});var tce,gM=_(()=>{tce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#f78166","activityBar.background":"#0d1117","activityBar.border":"#30363d","activityBar.foreground":"#e6edf3","activityBar.inactiveForeground":"#7d8590","activityBarBadge.background":"#1f6feb","activityBarBadge.foreground":"#ffffff","badge.background":"#1f6feb","badge.foreground":"#ffffff","breadcrumb.activeSelectionForeground":"#7d8590","breadcrumb.focusForeground":"#e6edf3","breadcrumb.foreground":"#7d8590","breadcrumbPicker.background":"#161b22","button.background":"#238636","button.foreground":"#ffffff","button.hoverBackground":"#2ea043","button.secondaryBackground":"#282e33","button.secondaryForeground":"#c9d1d9","button.secondaryHoverBackground":"#30363d","checkbox.background":"#161b22","checkbox.border":"#30363d","debugConsole.errorForeground":"#ffa198","debugConsole.infoForeground":"#8b949e","debugConsole.sourceForeground":"#e3b341","debugConsole.warningForeground":"#d29922","debugConsoleInputIcon.foreground":"#bc8cff","debugIcon.breakpointForeground":"#f85149","debugTokenExpression.boolean":"#56d364","debugTokenExpression.error":"#ffa198","debugTokenExpression.name":"#79c0ff","debugTokenExpression.number":"#56d364","debugTokenExpression.string":"#a5d6ff","debugTokenExpression.value":"#a5d6ff","debugToolBar.background":"#161b22","descriptionForeground":"#7d8590","diffEditor.insertedLineBackground":"#23863626","diffEditor.insertedTextBackground":"#3fb9504d","diffEditor.removedLineBackground":"#da363326","diffEditor.removedTextBackground":"#ff7b724d","dropdown.background":"#161b22","dropdown.border":"#30363d","dropdown.foreground":"#e6edf3","dropdown.listBackground":"#161b22","editor.background":"#0d1117","editor.findMatchBackground":"#9e6a03","editor.findMatchHighlightBackground":"#f2cc6080","editor.focusedStackFrameHighlightBackground":"#2ea04366","editor.foldBackground":"#6e76811a","editor.foreground":"#e6edf3","editor.lineHighlightBackground":"#6e76811a","editor.linkedEditingBackground":"#2f81f712","editor.selectionHighlightBackground":"#3fb95040","editor.stackFrameHighlightBackground":"#bb800966","editor.wordHighlightBackground":"#6e768180","editor.wordHighlightBorder":"#6e768199","editor.wordHighlightStrongBackground":"#6e76814d","editor.wordHighlightStrongBorder":"#6e768199","editorBracketHighlight.foreground1":"#79c0ff","editorBracketHighlight.foreground2":"#56d364","editorBracketHighlight.foreground3":"#e3b341","editorBracketHighlight.foreground4":"#ffa198","editorBracketHighlight.foreground5":"#ff9bce","editorBracketHighlight.foreground6":"#d2a8ff","editorBracketHighlight.unexpectedBracket.foreground":"#7d8590","editorBracketMatch.background":"#3fb95040","editorBracketMatch.border":"#3fb95099","editorCursor.foreground":"#2f81f7","editorGroup.border":"#30363d","editorGroupHeader.tabsBackground":"#010409","editorGroupHeader.tabsBorder":"#30363d","editorGutter.addedBackground":"#2ea04366","editorGutter.deletedBackground":"#f8514966","editorGutter.modifiedBackground":"#bb800966","editorIndentGuide.activeBackground":"#e6edf33d","editorIndentGuide.background":"#e6edf31f","editorInlayHint.background":"#8b949e33","editorInlayHint.foreground":"#7d8590","editorInlayHint.paramBackground":"#8b949e33","editorInlayHint.paramForeground":"#7d8590","editorInlayHint.typeBackground":"#8b949e33","editorInlayHint.typeForeground":"#7d8590","editorLineNumber.activeForeground":"#e6edf3","editorLineNumber.foreground":"#6e7681","editorOverviewRuler.border":"#010409","editorWhitespace.foreground":"#484f58","editorWidget.background":"#161b22","errorForeground":"#f85149","focusBorder":"#1f6feb","foreground":"#e6edf3","gitDecoration.addedResourceForeground":"#3fb950","gitDecoration.conflictingResourceForeground":"#db6d28","gitDecoration.deletedResourceForeground":"#f85149","gitDecoration.ignoredResourceForeground":"#6e7681","gitDecoration.modifiedResourceForeground":"#d29922","gitDecoration.submoduleResourceForeground":"#7d8590","gitDecoration.untrackedResourceForeground":"#3fb950","icon.foreground":"#7d8590","input.background":"#0d1117","input.border":"#30363d","input.foreground":"#e6edf3","input.placeholderForeground":"#6e7681","keybindingLabel.foreground":"#e6edf3","list.activeSelectionBackground":"#6e768166","list.activeSelectionForeground":"#e6edf3","list.focusBackground":"#388bfd26","list.focusForeground":"#e6edf3","list.highlightForeground":"#2f81f7","list.hoverBackground":"#6e76811a","list.hoverForeground":"#e6edf3","list.inactiveFocusBackground":"#388bfd26","list.inactiveSelectionBackground":"#6e768166","list.inactiveSelectionForeground":"#e6edf3","minimapSlider.activeBackground":"#8b949e47","minimapSlider.background":"#8b949e33","minimapSlider.hoverBackground":"#8b949e3d","notificationCenterHeader.background":"#161b22","notificationCenterHeader.foreground":"#7d8590","notifications.background":"#161b22","notifications.border":"#30363d","notifications.foreground":"#e6edf3","notificationsErrorIcon.foreground":"#f85149","notificationsInfoIcon.foreground":"#2f81f7","notificationsWarningIcon.foreground":"#d29922","panel.background":"#010409","panel.border":"#30363d","panelInput.border":"#30363d","panelTitle.activeBorder":"#f78166","panelTitle.activeForeground":"#e6edf3","panelTitle.inactiveForeground":"#7d8590","peekViewEditor.background":"#6e76811a","peekViewEditor.matchHighlightBackground":"#bb800966","peekViewResult.background":"#0d1117","peekViewResult.matchHighlightBackground":"#bb800966","pickerGroup.border":"#30363d","pickerGroup.foreground":"#7d8590","progressBar.background":"#1f6feb","quickInput.background":"#161b22","quickInput.foreground":"#e6edf3","scrollbar.shadow":"#484f5833","scrollbarSlider.activeBackground":"#8b949e47","scrollbarSlider.background":"#8b949e33","scrollbarSlider.hoverBackground":"#8b949e3d","settings.headerForeground":"#e6edf3","settings.modifiedItemIndicator":"#bb800966","sideBar.background":"#010409","sideBar.border":"#30363d","sideBar.foreground":"#e6edf3","sideBarSectionHeader.background":"#010409","sideBarSectionHeader.border":"#30363d","sideBarSectionHeader.foreground":"#e6edf3","sideBarTitle.foreground":"#e6edf3","statusBar.background":"#0d1117","statusBar.border":"#30363d","statusBar.debuggingBackground":"#da3633","statusBar.debuggingForeground":"#ffffff","statusBar.focusBorder":"#1f6feb80","statusBar.foreground":"#7d8590","statusBar.noFolderBackground":"#0d1117","statusBarItem.activeBackground":"#e6edf31f","statusBarItem.focusBorder":"#1f6feb","statusBarItem.hoverBackground":"#e6edf314","statusBarItem.prominentBackground":"#6e768166","statusBarItem.remoteBackground":"#30363d","statusBarItem.remoteForeground":"#e6edf3","symbolIcon.arrayForeground":"#f0883e","symbolIcon.booleanForeground":"#58a6ff","symbolIcon.classForeground":"#f0883e","symbolIcon.colorForeground":"#79c0ff","symbolIcon.constantForeground":["#aff5b4","#7ee787","#56d364","#3fb950","#2ea043","#238636","#196c2e","#0f5323","#033a16","#04260f"],"symbolIcon.constructorForeground":"#d2a8ff","symbolIcon.enumeratorForeground":"#f0883e","symbolIcon.enumeratorMemberForeground":"#58a6ff","symbolIcon.eventForeground":"#6e7681","symbolIcon.fieldForeground":"#f0883e","symbolIcon.fileForeground":"#d29922","symbolIcon.folderForeground":"#d29922","symbolIcon.functionForeground":"#bc8cff","symbolIcon.interfaceForeground":"#f0883e","symbolIcon.keyForeground":"#58a6ff","symbolIcon.keywordForeground":"#ff7b72","symbolIcon.methodForeground":"#bc8cff","symbolIcon.moduleForeground":"#ff7b72","symbolIcon.namespaceForeground":"#ff7b72","symbolIcon.nullForeground":"#58a6ff","symbolIcon.numberForeground":"#3fb950","symbolIcon.objectForeground":"#f0883e","symbolIcon.operatorForeground":"#79c0ff","symbolIcon.packageForeground":"#f0883e","symbolIcon.propertyForeground":"#f0883e","symbolIcon.referenceForeground":"#58a6ff","symbolIcon.snippetForeground":"#58a6ff","symbolIcon.stringForeground":"#79c0ff","symbolIcon.structForeground":"#f0883e","symbolIcon.textForeground":"#79c0ff","symbolIcon.typeParameterForeground":"#79c0ff","symbolIcon.unitForeground":"#58a6ff","symbolIcon.variableForeground":"#f0883e","tab.activeBackground":"#0d1117","tab.activeBorder":"#0d1117","tab.activeBorderTop":"#f78166","tab.activeForeground":"#e6edf3","tab.border":"#30363d","tab.hoverBackground":"#0d1117","tab.inactiveBackground":"#010409","tab.inactiveForeground":"#7d8590","tab.unfocusedActiveBorder":"#0d1117","tab.unfocusedActiveBorderTop":"#30363d","tab.unfocusedHoverBackground":"#6e76811a","terminal.ansiBlack":"#484f58","terminal.ansiBlue":"#58a6ff","terminal.ansiBrightBlack":"#6e7681","terminal.ansiBrightBlue":"#79c0ff","terminal.ansiBrightCyan":"#56d4dd","terminal.ansiBrightGreen":"#56d364","terminal.ansiBrightMagenta":"#d2a8ff","terminal.ansiBrightRed":"#ffa198","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#e3b341","terminal.ansiCyan":"#39c5cf","terminal.ansiGreen":"#3fb950","terminal.ansiMagenta":"#bc8cff","terminal.ansiRed":"#ff7b72","terminal.ansiWhite":"#b1bac4","terminal.ansiYellow":"#d29922","terminal.foreground":"#e6edf3","textBlockQuote.background":"#010409","textBlockQuote.border":"#30363d","textCodeBlock.background":"#6e768166","textLink.activeForeground":"#2f81f7","textLink.foreground":"#2f81f7","textPreformat.background":"#6e768166","textPreformat.foreground":"#7d8590","textSeparator.foreground":"#21262d","titleBar.activeBackground":"#0d1117","titleBar.activeForeground":"#7d8590","titleBar.border":"#30363d","titleBar.inactiveBackground":"#010409","titleBar.inactiveForeground":"#7d8590","tree.indentGuidesStroke":"#21262d","welcomePage.buttonBackground":"#21262d","welcomePage.buttonHoverBackground":"#30363d"},"displayName":"GitHub Dark Default","name":"github-dark-default","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#8b949e"}},{"scope":["constant.other.placeholder","constant.character"],"settings":{"foreground":"#ff7b72"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language","entity"],"settings":{"foreground":"#79c0ff"}},{"scope":["entity.name","meta.export.default","meta.definition.variable"],"settings":{"foreground":"#ffa657"}},{"scope":["variable.parameter.function","meta.jsx.children","meta.block","meta.tag.attributes","entity.name.constant","meta.object.member","meta.embedded.expression"],"settings":{"foreground":"#e6edf3"}},{"scope":"entity.name.function","settings":{"foreground":"#d2a8ff"}},{"scope":["entity.name.tag","support.class.component"],"settings":{"foreground":"#7ee787"}},{"scope":"keyword","settings":{"foreground":"#ff7b72"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#ff7b72"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#e6edf3"}},{"scope":["string","string punctuation.section.embedded source"],"settings":{"foreground":"#a5d6ff"}},{"scope":"support","settings":{"foreground":"#79c0ff"}},{"scope":"meta.property-name","settings":{"foreground":"#79c0ff"}},{"scope":"variable","settings":{"foreground":"#ffa657"}},{"scope":"variable.other","settings":{"foreground":"#e6edf3"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#ffa198"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#ffa198"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#ffa198"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#ffa198"}},{"scope":"carriage-return","settings":{"background":"#ff7b72","content":"^M","fontStyle":"italic underline","foreground":"#f0f6fc"}},{"scope":"message.error","settings":{"foreground":"#ffa198"}},{"scope":"string variable","settings":{"foreground":"#79c0ff"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#a5d6ff"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#a5d6ff"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#7ee787"}},{"scope":"support.constant","settings":{"foreground":"#79c0ff"}},{"scope":"support.variable","settings":{"foreground":"#79c0ff"}},{"scope":"support.type.property-name.json","settings":{"foreground":"#7ee787"}},{"scope":"meta.module-reference","settings":{"foreground":"#79c0ff"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#ffa657"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#79c0ff"}},{"scope":"markup.quote","settings":{"foreground":"#7ee787"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#e6edf3"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#e6edf3"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#79c0ff"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#490202","foreground":"#ffa198"}},{"scope":["punctuation.section.embedded"],"settings":{"foreground":"#ff7b72"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#04260f","foreground":"#7ee787"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#5a1e02","foreground":"#ffa657"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#79c0ff","foreground":"#161b22"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#d2a8ff"}},{"scope":"meta.diff.header","settings":{"foreground":"#79c0ff"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#79c0ff"}},{"scope":"meta.output","settings":{"foreground":"#79c0ff"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#8b949e"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#ffa198"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"foreground":"#a5d6ff"}}],"type":"dark"}'))});var fM={};x(fM,{default:()=>nce});var nce,bM=_(()=>{nce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#ec775c","activityBar.background":"#22272e","activityBar.border":"#444c56","activityBar.foreground":"#adbac7","activityBar.inactiveForeground":"#768390","activityBarBadge.background":"#316dca","activityBarBadge.foreground":"#cdd9e5","badge.background":"#316dca","badge.foreground":"#cdd9e5","breadcrumb.activeSelectionForeground":"#768390","breadcrumb.focusForeground":"#adbac7","breadcrumb.foreground":"#768390","breadcrumbPicker.background":"#2d333b","button.background":"#347d39","button.foreground":"#ffffff","button.hoverBackground":"#46954a","button.secondaryBackground":"#3d444d","button.secondaryForeground":"#adbac7","button.secondaryHoverBackground":"#444c56","checkbox.background":"#2d333b","checkbox.border":"#444c56","debugConsole.errorForeground":"#ff938a","debugConsole.infoForeground":"#768390","debugConsole.sourceForeground":"#daaa3f","debugConsole.warningForeground":"#c69026","debugConsoleInputIcon.foreground":"#b083f0","debugIcon.breakpointForeground":"#e5534b","debugTokenExpression.boolean":"#6bc46d","debugTokenExpression.error":"#ff938a","debugTokenExpression.name":"#6cb6ff","debugTokenExpression.number":"#6bc46d","debugTokenExpression.string":"#96d0ff","debugTokenExpression.value":"#96d0ff","debugToolBar.background":"#2d333b","descriptionForeground":"#768390","diffEditor.insertedLineBackground":"#347d3926","diffEditor.insertedTextBackground":"#57ab5a4d","diffEditor.removedLineBackground":"#c93c3726","diffEditor.removedTextBackground":"#f470674d","dropdown.background":"#2d333b","dropdown.border":"#444c56","dropdown.foreground":"#adbac7","dropdown.listBackground":"#2d333b","editor.background":"#22272e","editor.findMatchBackground":"#966600","editor.findMatchHighlightBackground":"#eac55f80","editor.focusedStackFrameHighlightBackground":"#46954a66","editor.foldBackground":"#636e7b1a","editor.foreground":"#adbac7","editor.lineHighlightBackground":"#636e7b1a","editor.linkedEditingBackground":"#539bf512","editor.selectionHighlightBackground":"#57ab5a40","editor.stackFrameHighlightBackground":"#ae7c1466","editor.wordHighlightBackground":"#636e7b80","editor.wordHighlightBorder":"#636e7b99","editor.wordHighlightStrongBackground":"#636e7b4d","editor.wordHighlightStrongBorder":"#636e7b99","editorBracketHighlight.foreground1":"#6cb6ff","editorBracketHighlight.foreground2":"#6bc46d","editorBracketHighlight.foreground3":"#daaa3f","editorBracketHighlight.foreground4":"#ff938a","editorBracketHighlight.foreground5":"#fc8dc7","editorBracketHighlight.foreground6":"#dcbdfb","editorBracketHighlight.unexpectedBracket.foreground":"#768390","editorBracketMatch.background":"#57ab5a40","editorBracketMatch.border":"#57ab5a99","editorCursor.foreground":"#539bf5","editorGroup.border":"#444c56","editorGroupHeader.tabsBackground":"#1c2128","editorGroupHeader.tabsBorder":"#444c56","editorGutter.addedBackground":"#46954a66","editorGutter.deletedBackground":"#e5534b66","editorGutter.modifiedBackground":"#ae7c1466","editorIndentGuide.activeBackground":"#adbac73d","editorIndentGuide.background":"#adbac71f","editorInlayHint.background":"#76839033","editorInlayHint.foreground":"#768390","editorInlayHint.paramBackground":"#76839033","editorInlayHint.paramForeground":"#768390","editorInlayHint.typeBackground":"#76839033","editorInlayHint.typeForeground":"#768390","editorLineNumber.activeForeground":"#adbac7","editorLineNumber.foreground":"#636e7b","editorOverviewRuler.border":"#1c2128","editorWhitespace.foreground":"#545d68","editorWidget.background":"#2d333b","errorForeground":"#e5534b","focusBorder":"#316dca","foreground":"#adbac7","gitDecoration.addedResourceForeground":"#57ab5a","gitDecoration.conflictingResourceForeground":"#cc6b2c","gitDecoration.deletedResourceForeground":"#e5534b","gitDecoration.ignoredResourceForeground":"#636e7b","gitDecoration.modifiedResourceForeground":"#c69026","gitDecoration.submoduleResourceForeground":"#768390","gitDecoration.untrackedResourceForeground":"#57ab5a","icon.foreground":"#768390","input.background":"#22272e","input.border":"#444c56","input.foreground":"#adbac7","input.placeholderForeground":"#636e7b","keybindingLabel.foreground":"#adbac7","list.activeSelectionBackground":"#636e7b66","list.activeSelectionForeground":"#adbac7","list.focusBackground":"#4184e426","list.focusForeground":"#adbac7","list.highlightForeground":"#539bf5","list.hoverBackground":"#636e7b1a","list.hoverForeground":"#adbac7","list.inactiveFocusBackground":"#4184e426","list.inactiveSelectionBackground":"#636e7b66","list.inactiveSelectionForeground":"#adbac7","minimapSlider.activeBackground":"#76839047","minimapSlider.background":"#76839033","minimapSlider.hoverBackground":"#7683903d","notificationCenterHeader.background":"#2d333b","notificationCenterHeader.foreground":"#768390","notifications.background":"#2d333b","notifications.border":"#444c56","notifications.foreground":"#adbac7","notificationsErrorIcon.foreground":"#e5534b","notificationsInfoIcon.foreground":"#539bf5","notificationsWarningIcon.foreground":"#c69026","panel.background":"#1c2128","panel.border":"#444c56","panelInput.border":"#444c56","panelTitle.activeBorder":"#ec775c","panelTitle.activeForeground":"#adbac7","panelTitle.inactiveForeground":"#768390","peekViewEditor.background":"#636e7b1a","peekViewEditor.matchHighlightBackground":"#ae7c1466","peekViewResult.background":"#22272e","peekViewResult.matchHighlightBackground":"#ae7c1466","pickerGroup.border":"#444c56","pickerGroup.foreground":"#768390","progressBar.background":"#316dca","quickInput.background":"#2d333b","quickInput.foreground":"#adbac7","scrollbar.shadow":"#545d6833","scrollbarSlider.activeBackground":"#76839047","scrollbarSlider.background":"#76839033","scrollbarSlider.hoverBackground":"#7683903d","settings.headerForeground":"#adbac7","settings.modifiedItemIndicator":"#ae7c1466","sideBar.background":"#1c2128","sideBar.border":"#444c56","sideBar.foreground":"#adbac7","sideBarSectionHeader.background":"#1c2128","sideBarSectionHeader.border":"#444c56","sideBarSectionHeader.foreground":"#adbac7","sideBarTitle.foreground":"#adbac7","statusBar.background":"#22272e","statusBar.border":"#444c56","statusBar.debuggingBackground":"#c93c37","statusBar.debuggingForeground":"#cdd9e5","statusBar.focusBorder":"#316dca80","statusBar.foreground":"#768390","statusBar.noFolderBackground":"#22272e","statusBarItem.activeBackground":"#adbac71f","statusBarItem.focusBorder":"#316dca","statusBarItem.hoverBackground":"#adbac714","statusBarItem.prominentBackground":"#636e7b66","statusBarItem.remoteBackground":"#444c56","statusBarItem.remoteForeground":"#adbac7","symbolIcon.arrayForeground":"#e0823d","symbolIcon.booleanForeground":"#539bf5","symbolIcon.classForeground":"#e0823d","symbolIcon.colorForeground":"#6cb6ff","symbolIcon.constantForeground":["#b4f1b4","#8ddb8c","#6bc46d","#57ab5a","#46954a","#347d39","#2b6a30","#245829","#1b4721","#113417"],"symbolIcon.constructorForeground":"#dcbdfb","symbolIcon.enumeratorForeground":"#e0823d","symbolIcon.enumeratorMemberForeground":"#539bf5","symbolIcon.eventForeground":"#636e7b","symbolIcon.fieldForeground":"#e0823d","symbolIcon.fileForeground":"#c69026","symbolIcon.folderForeground":"#c69026","symbolIcon.functionForeground":"#b083f0","symbolIcon.interfaceForeground":"#e0823d","symbolIcon.keyForeground":"#539bf5","symbolIcon.keywordForeground":"#f47067","symbolIcon.methodForeground":"#b083f0","symbolIcon.moduleForeground":"#f47067","symbolIcon.namespaceForeground":"#f47067","symbolIcon.nullForeground":"#539bf5","symbolIcon.numberForeground":"#57ab5a","symbolIcon.objectForeground":"#e0823d","symbolIcon.operatorForeground":"#6cb6ff","symbolIcon.packageForeground":"#e0823d","symbolIcon.propertyForeground":"#e0823d","symbolIcon.referenceForeground":"#539bf5","symbolIcon.snippetForeground":"#539bf5","symbolIcon.stringForeground":"#6cb6ff","symbolIcon.structForeground":"#e0823d","symbolIcon.textForeground":"#6cb6ff","symbolIcon.typeParameterForeground":"#6cb6ff","symbolIcon.unitForeground":"#539bf5","symbolIcon.variableForeground":"#e0823d","tab.activeBackground":"#22272e","tab.activeBorder":"#22272e","tab.activeBorderTop":"#ec775c","tab.activeForeground":"#adbac7","tab.border":"#444c56","tab.hoverBackground":"#22272e","tab.inactiveBackground":"#1c2128","tab.inactiveForeground":"#768390","tab.unfocusedActiveBorder":"#22272e","tab.unfocusedActiveBorderTop":"#444c56","tab.unfocusedHoverBackground":"#636e7b1a","terminal.ansiBlack":"#545d68","terminal.ansiBlue":"#539bf5","terminal.ansiBrightBlack":"#636e7b","terminal.ansiBrightBlue":"#6cb6ff","terminal.ansiBrightCyan":"#56d4dd","terminal.ansiBrightGreen":"#6bc46d","terminal.ansiBrightMagenta":"#dcbdfb","terminal.ansiBrightRed":"#ff938a","terminal.ansiBrightWhite":"#cdd9e5","terminal.ansiBrightYellow":"#daaa3f","terminal.ansiCyan":"#39c5cf","terminal.ansiGreen":"#57ab5a","terminal.ansiMagenta":"#b083f0","terminal.ansiRed":"#f47067","terminal.ansiWhite":"#909dab","terminal.ansiYellow":"#c69026","terminal.foreground":"#adbac7","textBlockQuote.background":"#1c2128","textBlockQuote.border":"#444c56","textCodeBlock.background":"#636e7b66","textLink.activeForeground":"#539bf5","textLink.foreground":"#539bf5","textPreformat.background":"#636e7b66","textPreformat.foreground":"#768390","textSeparator.foreground":"#373e47","titleBar.activeBackground":"#22272e","titleBar.activeForeground":"#768390","titleBar.border":"#444c56","titleBar.inactiveBackground":"#1c2128","titleBar.inactiveForeground":"#768390","tree.indentGuidesStroke":"#373e47","welcomePage.buttonBackground":"#373e47","welcomePage.buttonHoverBackground":"#444c56"},"displayName":"GitHub Dark Dimmed","name":"github-dark-dimmed","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#768390"}},{"scope":["constant.other.placeholder","constant.character"],"settings":{"foreground":"#f47067"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language","entity"],"settings":{"foreground":"#6cb6ff"}},{"scope":["entity.name","meta.export.default","meta.definition.variable"],"settings":{"foreground":"#f69d50"}},{"scope":["variable.parameter.function","meta.jsx.children","meta.block","meta.tag.attributes","entity.name.constant","meta.object.member","meta.embedded.expression"],"settings":{"foreground":"#adbac7"}},{"scope":"entity.name.function","settings":{"foreground":"#dcbdfb"}},{"scope":["entity.name.tag","support.class.component"],"settings":{"foreground":"#8ddb8c"}},{"scope":"keyword","settings":{"foreground":"#f47067"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#f47067"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#adbac7"}},{"scope":["string","string punctuation.section.embedded source"],"settings":{"foreground":"#96d0ff"}},{"scope":"support","settings":{"foreground":"#6cb6ff"}},{"scope":"meta.property-name","settings":{"foreground":"#6cb6ff"}},{"scope":"variable","settings":{"foreground":"#f69d50"}},{"scope":"variable.other","settings":{"foreground":"#adbac7"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#ff938a"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#ff938a"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#ff938a"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#ff938a"}},{"scope":"carriage-return","settings":{"background":"#f47067","content":"^M","fontStyle":"italic underline","foreground":"#cdd9e5"}},{"scope":"message.error","settings":{"foreground":"#ff938a"}},{"scope":"string variable","settings":{"foreground":"#6cb6ff"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#96d0ff"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#96d0ff"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#8ddb8c"}},{"scope":"support.constant","settings":{"foreground":"#6cb6ff"}},{"scope":"support.variable","settings":{"foreground":"#6cb6ff"}},{"scope":"support.type.property-name.json","settings":{"foreground":"#8ddb8c"}},{"scope":"meta.module-reference","settings":{"foreground":"#6cb6ff"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#f69d50"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#6cb6ff"}},{"scope":"markup.quote","settings":{"foreground":"#8ddb8c"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#adbac7"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#adbac7"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#6cb6ff"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#5d0f12","foreground":"#ff938a"}},{"scope":["punctuation.section.embedded"],"settings":{"foreground":"#f47067"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#113417","foreground":"#8ddb8c"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#682d0f","foreground":"#f69d50"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#6cb6ff","foreground":"#2d333b"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#dcbdfb"}},{"scope":"meta.diff.header","settings":{"foreground":"#6cb6ff"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#6cb6ff"}},{"scope":"meta.output","settings":{"foreground":"#6cb6ff"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#768390"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#ff938a"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"foreground":"#96d0ff"}}],"type":"dark"}'))});var hM={};x(hM,{default:()=>ace});var ace,yM=_(()=>{ace=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#ff967d","activityBar.background":"#0a0c10","activityBar.border":"#7a828e","activityBar.foreground":"#f0f3f6","activityBar.inactiveForeground":"#f0f3f6","activityBarBadge.background":"#409eff","activityBarBadge.foreground":"#0a0c10","badge.background":"#409eff","badge.foreground":"#0a0c10","breadcrumb.activeSelectionForeground":"#f0f3f6","breadcrumb.focusForeground":"#f0f3f6","breadcrumb.foreground":"#f0f3f6","breadcrumbPicker.background":"#272b33","button.background":"#09b43a","button.foreground":"#0a0c10","button.hoverBackground":"#26cd4d","button.secondaryBackground":"#4c525d","button.secondaryForeground":"#f0f3f6","button.secondaryHoverBackground":"#525964","checkbox.background":"#272b33","checkbox.border":"#7a828e","debugConsole.errorForeground":"#ffb1af","debugConsole.infoForeground":"#bdc4cc","debugConsole.sourceForeground":"#f7c843","debugConsole.warningForeground":"#f0b72f","debugConsoleInputIcon.foreground":"#cb9eff","debugIcon.breakpointForeground":"#ff6a69","debugTokenExpression.boolean":"#4ae168","debugTokenExpression.error":"#ffb1af","debugTokenExpression.name":"#91cbff","debugTokenExpression.number":"#4ae168","debugTokenExpression.string":"#addcff","debugTokenExpression.value":"#addcff","debugToolBar.background":"#272b33","descriptionForeground":"#f0f3f6","diffEditor.insertedLineBackground":"#09b43a26","diffEditor.insertedTextBackground":"#26cd4d4d","diffEditor.removedLineBackground":"#ff6a6926","diffEditor.removedTextBackground":"#ff94924d","dropdown.background":"#272b33","dropdown.border":"#7a828e","dropdown.foreground":"#f0f3f6","dropdown.listBackground":"#272b33","editor.background":"#0a0c10","editor.findMatchBackground":"#e09b13","editor.findMatchHighlightBackground":"#fbd66980","editor.focusedStackFrameHighlightBackground":"#09b43a","editor.foldBackground":"#9ea7b31a","editor.foreground":"#f0f3f6","editor.inactiveSelectionBackground":"#9ea7b3","editor.lineHighlightBackground":"#9ea7b31a","editor.lineHighlightBorder":"#71b7ff","editor.linkedEditingBackground":"#71b7ff12","editor.selectionBackground":"#ffffff","editor.selectionForeground":"#0a0c10","editor.selectionHighlightBackground":"#26cd4d40","editor.stackFrameHighlightBackground":"#e09b13","editor.wordHighlightBackground":"#9ea7b380","editor.wordHighlightBorder":"#9ea7b399","editor.wordHighlightStrongBackground":"#9ea7b34d","editor.wordHighlightStrongBorder":"#9ea7b399","editorBracketHighlight.foreground1":"#91cbff","editorBracketHighlight.foreground2":"#4ae168","editorBracketHighlight.foreground3":"#f7c843","editorBracketHighlight.foreground4":"#ffb1af","editorBracketHighlight.foreground5":"#ffadd4","editorBracketHighlight.foreground6":"#dbb7ff","editorBracketHighlight.unexpectedBracket.foreground":"#f0f3f6","editorBracketMatch.background":"#26cd4d40","editorBracketMatch.border":"#26cd4d99","editorCursor.foreground":"#71b7ff","editorGroup.border":"#7a828e","editorGroupHeader.tabsBackground":"#010409","editorGroupHeader.tabsBorder":"#7a828e","editorGutter.addedBackground":"#09b43a","editorGutter.deletedBackground":"#ff6a69","editorGutter.modifiedBackground":"#e09b13","editorIndentGuide.activeBackground":"#f0f3f63d","editorIndentGuide.background":"#f0f3f61f","editorInlayHint.background":"#bdc4cc33","editorInlayHint.foreground":"#f0f3f6","editorInlayHint.paramBackground":"#bdc4cc33","editorInlayHint.paramForeground":"#f0f3f6","editorInlayHint.typeBackground":"#bdc4cc33","editorInlayHint.typeForeground":"#f0f3f6","editorLineNumber.activeForeground":"#f0f3f6","editorLineNumber.foreground":"#9ea7b3","editorOverviewRuler.border":"#010409","editorWhitespace.foreground":"#7a828e","editorWidget.background":"#272b33","errorForeground":"#ff6a69","focusBorder":"#409eff","foreground":"#f0f3f6","gitDecoration.addedResourceForeground":"#26cd4d","gitDecoration.conflictingResourceForeground":"#e7811d","gitDecoration.deletedResourceForeground":"#ff6a69","gitDecoration.ignoredResourceForeground":"#9ea7b3","gitDecoration.modifiedResourceForeground":"#f0b72f","gitDecoration.submoduleResourceForeground":"#f0f3f6","gitDecoration.untrackedResourceForeground":"#26cd4d","icon.foreground":"#f0f3f6","input.background":"#0a0c10","input.border":"#7a828e","input.foreground":"#f0f3f6","input.placeholderForeground":"#9ea7b3","keybindingLabel.foreground":"#f0f3f6","list.activeSelectionBackground":"#9ea7b366","list.activeSelectionForeground":"#f0f3f6","list.focusBackground":"#409eff26","list.focusForeground":"#f0f3f6","list.highlightForeground":"#71b7ff","list.hoverBackground":"#9ea7b31a","list.hoverForeground":"#f0f3f6","list.inactiveFocusBackground":"#409eff26","list.inactiveSelectionBackground":"#9ea7b366","list.inactiveSelectionForeground":"#f0f3f6","minimapSlider.activeBackground":"#bdc4cc47","minimapSlider.background":"#bdc4cc33","minimapSlider.hoverBackground":"#bdc4cc3d","notificationCenterHeader.background":"#272b33","notificationCenterHeader.foreground":"#f0f3f6","notifications.background":"#272b33","notifications.border":"#7a828e","notifications.foreground":"#f0f3f6","notificationsErrorIcon.foreground":"#ff6a69","notificationsInfoIcon.foreground":"#71b7ff","notificationsWarningIcon.foreground":"#f0b72f","panel.background":"#010409","panel.border":"#7a828e","panelInput.border":"#7a828e","panelTitle.activeBorder":"#ff967d","panelTitle.activeForeground":"#f0f3f6","panelTitle.inactiveForeground":"#f0f3f6","peekViewEditor.background":"#9ea7b31a","peekViewEditor.matchHighlightBackground":"#e09b13","peekViewResult.background":"#0a0c10","peekViewResult.matchHighlightBackground":"#e09b13","pickerGroup.border":"#7a828e","pickerGroup.foreground":"#f0f3f6","progressBar.background":"#409eff","quickInput.background":"#272b33","quickInput.foreground":"#f0f3f6","scrollbar.shadow":"#7a828e33","scrollbarSlider.activeBackground":"#bdc4cc47","scrollbarSlider.background":"#bdc4cc33","scrollbarSlider.hoverBackground":"#bdc4cc3d","settings.headerForeground":"#f0f3f6","settings.modifiedItemIndicator":"#e09b13","sideBar.background":"#010409","sideBar.border":"#7a828e","sideBar.foreground":"#f0f3f6","sideBarSectionHeader.background":"#010409","sideBarSectionHeader.border":"#7a828e","sideBarSectionHeader.foreground":"#f0f3f6","sideBarTitle.foreground":"#f0f3f6","statusBar.background":"#0a0c10","statusBar.border":"#7a828e","statusBar.debuggingBackground":"#ff6a69","statusBar.debuggingForeground":"#0a0c10","statusBar.focusBorder":"#409eff80","statusBar.foreground":"#f0f3f6","statusBar.noFolderBackground":"#0a0c10","statusBarItem.activeBackground":"#f0f3f61f","statusBarItem.focusBorder":"#409eff","statusBarItem.hoverBackground":"#f0f3f614","statusBarItem.prominentBackground":"#9ea7b366","statusBarItem.remoteBackground":"#525964","statusBarItem.remoteForeground":"#f0f3f6","symbolIcon.arrayForeground":"#fe9a2d","symbolIcon.booleanForeground":"#71b7ff","symbolIcon.classForeground":"#fe9a2d","symbolIcon.colorForeground":"#91cbff","symbolIcon.constantForeground":["#acf7b6","#72f088","#4ae168","#26cd4d","#09b43a","#09b43a","#02a232","#008c2c","#007728","#006222"],"symbolIcon.constructorForeground":"#dbb7ff","symbolIcon.enumeratorForeground":"#fe9a2d","symbolIcon.enumeratorMemberForeground":"#71b7ff","symbolIcon.eventForeground":"#9ea7b3","symbolIcon.fieldForeground":"#fe9a2d","symbolIcon.fileForeground":"#f0b72f","symbolIcon.folderForeground":"#f0b72f","symbolIcon.functionForeground":"#cb9eff","symbolIcon.interfaceForeground":"#fe9a2d","symbolIcon.keyForeground":"#71b7ff","symbolIcon.keywordForeground":"#ff9492","symbolIcon.methodForeground":"#cb9eff","symbolIcon.moduleForeground":"#ff9492","symbolIcon.namespaceForeground":"#ff9492","symbolIcon.nullForeground":"#71b7ff","symbolIcon.numberForeground":"#26cd4d","symbolIcon.objectForeground":"#fe9a2d","symbolIcon.operatorForeground":"#91cbff","symbolIcon.packageForeground":"#fe9a2d","symbolIcon.propertyForeground":"#fe9a2d","symbolIcon.referenceForeground":"#71b7ff","symbolIcon.snippetForeground":"#71b7ff","symbolIcon.stringForeground":"#91cbff","symbolIcon.structForeground":"#fe9a2d","symbolIcon.textForeground":"#91cbff","symbolIcon.typeParameterForeground":"#91cbff","symbolIcon.unitForeground":"#71b7ff","symbolIcon.variableForeground":"#fe9a2d","tab.activeBackground":"#0a0c10","tab.activeBorder":"#0a0c10","tab.activeBorderTop":"#ff967d","tab.activeForeground":"#f0f3f6","tab.border":"#7a828e","tab.hoverBackground":"#0a0c10","tab.inactiveBackground":"#010409","tab.inactiveForeground":"#f0f3f6","tab.unfocusedActiveBorder":"#0a0c10","tab.unfocusedActiveBorderTop":"#7a828e","tab.unfocusedHoverBackground":"#9ea7b31a","terminal.ansiBlack":"#7a828e","terminal.ansiBlue":"#71b7ff","terminal.ansiBrightBlack":"#9ea7b3","terminal.ansiBrightBlue":"#91cbff","terminal.ansiBrightCyan":"#56d4dd","terminal.ansiBrightGreen":"#4ae168","terminal.ansiBrightMagenta":"#dbb7ff","terminal.ansiBrightRed":"#ffb1af","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#f7c843","terminal.ansiCyan":"#39c5cf","terminal.ansiGreen":"#26cd4d","terminal.ansiMagenta":"#cb9eff","terminal.ansiRed":"#ff9492","terminal.ansiWhite":"#d9dee3","terminal.ansiYellow":"#f0b72f","terminal.foreground":"#f0f3f6","textBlockQuote.background":"#010409","textBlockQuote.border":"#7a828e","textCodeBlock.background":"#9ea7b366","textLink.activeForeground":"#71b7ff","textLink.foreground":"#71b7ff","textPreformat.background":"#9ea7b366","textPreformat.foreground":"#f0f3f6","textSeparator.foreground":"#7a828e","titleBar.activeBackground":"#0a0c10","titleBar.activeForeground":"#f0f3f6","titleBar.border":"#7a828e","titleBar.inactiveBackground":"#010409","titleBar.inactiveForeground":"#f0f3f6","tree.indentGuidesStroke":"#7a828e","welcomePage.buttonBackground":"#272b33","welcomePage.buttonHoverBackground":"#525964"},"displayName":"GitHub Dark High Contrast","name":"github-dark-high-contrast","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#bdc4cc"}},{"scope":["constant.other.placeholder","constant.character"],"settings":{"foreground":"#ff9492"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language","entity"],"settings":{"foreground":"#91cbff"}},{"scope":["entity.name","meta.export.default","meta.definition.variable"],"settings":{"foreground":"#ffb757"}},{"scope":["variable.parameter.function","meta.jsx.children","meta.block","meta.tag.attributes","entity.name.constant","meta.object.member","meta.embedded.expression"],"settings":{"foreground":"#f0f3f6"}},{"scope":"entity.name.function","settings":{"foreground":"#dbb7ff"}},{"scope":["entity.name.tag","support.class.component"],"settings":{"foreground":"#72f088"}},{"scope":"keyword","settings":{"foreground":"#ff9492"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#ff9492"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#f0f3f6"}},{"scope":["string","string punctuation.section.embedded source"],"settings":{"foreground":"#addcff"}},{"scope":"support","settings":{"foreground":"#91cbff"}},{"scope":"meta.property-name","settings":{"foreground":"#91cbff"}},{"scope":"variable","settings":{"foreground":"#ffb757"}},{"scope":"variable.other","settings":{"foreground":"#f0f3f6"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#ffb1af"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#ffb1af"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#ffb1af"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#ffb1af"}},{"scope":"carriage-return","settings":{"background":"#ff9492","content":"^M","fontStyle":"italic underline","foreground":"#ffffff"}},{"scope":"message.error","settings":{"foreground":"#ffb1af"}},{"scope":"string variable","settings":{"foreground":"#91cbff"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#addcff"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#addcff"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#72f088"}},{"scope":"support.constant","settings":{"foreground":"#91cbff"}},{"scope":"support.variable","settings":{"foreground":"#91cbff"}},{"scope":"support.type.property-name.json","settings":{"foreground":"#72f088"}},{"scope":"meta.module-reference","settings":{"foreground":"#91cbff"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#ffb757"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#91cbff"}},{"scope":"markup.quote","settings":{"foreground":"#72f088"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#f0f3f6"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#f0f3f6"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#91cbff"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#ad0116","foreground":"#ffb1af"}},{"scope":["punctuation.section.embedded"],"settings":{"foreground":"#ff9492"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#006222","foreground":"#72f088"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#a74c00","foreground":"#ffb757"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#91cbff","foreground":"#272b33"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#dbb7ff"}},{"scope":"meta.diff.header","settings":{"foreground":"#91cbff"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#91cbff"}},{"scope":"meta.output","settings":{"foreground":"#91cbff"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#bdc4cc"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#ffb1af"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"foreground":"#addcff"}}],"type":"dark"}'))});var wM={};x(wM,{default:()=>rce});var rce,kM=_(()=>{rce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#f9826c","activityBar.background":"#fff","activityBar.border":"#e1e4e8","activityBar.foreground":"#2f363d","activityBar.inactiveForeground":"#959da5","activityBarBadge.background":"#2188ff","activityBarBadge.foreground":"#fff","badge.background":"#dbedff","badge.foreground":"#005cc5","breadcrumb.activeSelectionForeground":"#586069","breadcrumb.focusForeground":"#2f363d","breadcrumb.foreground":"#6a737d","breadcrumbPicker.background":"#fafbfc","button.background":"#159739","button.foreground":"#fff","button.hoverBackground":"#138934","button.secondaryBackground":"#e1e4e8","button.secondaryForeground":"#1b1f23","button.secondaryHoverBackground":"#d1d5da","checkbox.background":"#fafbfc","checkbox.border":"#d1d5da","debugToolBar.background":"#fff","descriptionForeground":"#6a737d","diffEditor.insertedTextBackground":"#34d05822","diffEditor.removedTextBackground":"#d73a4922","dropdown.background":"#fafbfc","dropdown.border":"#e1e4e8","dropdown.foreground":"#2f363d","dropdown.listBackground":"#fff","editor.background":"#fff","editor.findMatchBackground":"#ffdf5d","editor.findMatchHighlightBackground":"#ffdf5d66","editor.focusedStackFrameHighlightBackground":"#28a74525","editor.foldBackground":"#d1d5da11","editor.foreground":"#24292e","editor.inactiveSelectionBackground":"#0366d611","editor.lineHighlightBackground":"#f6f8fa","editor.linkedEditingBackground":"#0366d611","editor.selectionBackground":"#0366d625","editor.selectionHighlightBackground":"#34d05840","editor.selectionHighlightBorder":"#34d05800","editor.stackFrameHighlightBackground":"#ffd33d33","editor.wordHighlightBackground":"#34d05800","editor.wordHighlightBorder":"#24943e99","editor.wordHighlightStrongBackground":"#34d05800","editor.wordHighlightStrongBorder":"#24943e50","editorBracketHighlight.foreground1":"#005cc5","editorBracketHighlight.foreground2":"#e36209","editorBracketHighlight.foreground3":"#5a32a3","editorBracketHighlight.foreground4":"#005cc5","editorBracketHighlight.foreground5":"#e36209","editorBracketHighlight.foreground6":"#5a32a3","editorBracketMatch.background":"#34d05840","editorBracketMatch.border":"#34d05800","editorCursor.foreground":"#044289","editorError.foreground":"#cb2431","editorGroup.border":"#e1e4e8","editorGroupHeader.tabsBackground":"#f6f8fa","editorGroupHeader.tabsBorder":"#e1e4e8","editorGutter.addedBackground":"#28a745","editorGutter.deletedBackground":"#d73a49","editorGutter.modifiedBackground":"#2188ff","editorIndentGuide.activeBackground":"#d7dbe0","editorIndentGuide.background":"#eff2f6","editorLineNumber.activeForeground":"#24292e","editorLineNumber.foreground":"#1b1f234d","editorOverviewRuler.border":"#fff","editorWarning.foreground":"#f9c513","editorWhitespace.foreground":"#d1d5da","editorWidget.background":"#f6f8fa","errorForeground":"#cb2431","focusBorder":"#2188ff","foreground":"#444d56","gitDecoration.addedResourceForeground":"#28a745","gitDecoration.conflictingResourceForeground":"#e36209","gitDecoration.deletedResourceForeground":"#d73a49","gitDecoration.ignoredResourceForeground":"#959da5","gitDecoration.modifiedResourceForeground":"#005cc5","gitDecoration.submoduleResourceForeground":"#959da5","gitDecoration.untrackedResourceForeground":"#28a745","input.background":"#fafbfc","input.border":"#e1e4e8","input.foreground":"#2f363d","input.placeholderForeground":"#959da5","list.activeSelectionBackground":"#e2e5e9","list.activeSelectionForeground":"#2f363d","list.focusBackground":"#cce5ff","list.hoverBackground":"#ebf0f4","list.hoverForeground":"#2f363d","list.inactiveFocusBackground":"#dbedff","list.inactiveSelectionBackground":"#e8eaed","list.inactiveSelectionForeground":"#2f363d","notificationCenterHeader.background":"#e1e4e8","notificationCenterHeader.foreground":"#6a737d","notifications.background":"#fafbfc","notifications.border":"#e1e4e8","notifications.foreground":"#2f363d","notificationsErrorIcon.foreground":"#d73a49","notificationsInfoIcon.foreground":"#005cc5","notificationsWarningIcon.foreground":"#e36209","panel.background":"#f6f8fa","panel.border":"#e1e4e8","panelInput.border":"#e1e4e8","panelTitle.activeBorder":"#f9826c","panelTitle.activeForeground":"#2f363d","panelTitle.inactiveForeground":"#6a737d","pickerGroup.border":"#e1e4e8","pickerGroup.foreground":"#2f363d","progressBar.background":"#2188ff","quickInput.background":"#fafbfc","quickInput.foreground":"#2f363d","scrollbar.shadow":"#6a737d33","scrollbarSlider.activeBackground":"#959da588","scrollbarSlider.background":"#959da533","scrollbarSlider.hoverBackground":"#959da544","settings.headerForeground":"#2f363d","settings.modifiedItemIndicator":"#2188ff","sideBar.background":"#f6f8fa","sideBar.border":"#e1e4e8","sideBar.foreground":"#586069","sideBarSectionHeader.background":"#f6f8fa","sideBarSectionHeader.border":"#e1e4e8","sideBarSectionHeader.foreground":"#2f363d","sideBarTitle.foreground":"#2f363d","statusBar.background":"#fff","statusBar.border":"#e1e4e8","statusBar.debuggingBackground":"#f9826c","statusBar.debuggingForeground":"#fff","statusBar.foreground":"#586069","statusBar.noFolderBackground":"#fff","statusBarItem.prominentBackground":"#e8eaed","statusBarItem.remoteBackground":"#fff","statusBarItem.remoteForeground":"#586069","tab.activeBackground":"#fff","tab.activeBorder":"#fff","tab.activeBorderTop":"#f9826c","tab.activeForeground":"#2f363d","tab.border":"#e1e4e8","tab.hoverBackground":"#fff","tab.inactiveBackground":"#f6f8fa","tab.inactiveForeground":"#6a737d","tab.unfocusedActiveBorder":"#fff","tab.unfocusedActiveBorderTop":"#e1e4e8","tab.unfocusedHoverBackground":"#fff","terminal.ansiBlack":"#24292e","terminal.ansiBlue":"#0366d6","terminal.ansiBrightBlack":"#959da5","terminal.ansiBrightBlue":"#005cc5","terminal.ansiBrightCyan":"#3192aa","terminal.ansiBrightGreen":"#22863a","terminal.ansiBrightMagenta":"#5a32a3","terminal.ansiBrightRed":"#cb2431","terminal.ansiBrightWhite":"#d1d5da","terminal.ansiBrightYellow":"#b08800","terminal.ansiCyan":"#1b7c83","terminal.ansiGreen":"#28a745","terminal.ansiMagenta":"#5a32a3","terminal.ansiRed":"#d73a49","terminal.ansiWhite":"#6a737d","terminal.ansiYellow":"#dbab09","terminal.foreground":"#586069","terminal.tab.activeBorder":"#f9826c","terminalCursor.background":"#d1d5da","terminalCursor.foreground":"#005cc5","textBlockQuote.background":"#fafbfc","textBlockQuote.border":"#e1e4e8","textCodeBlock.background":"#f6f8fa","textLink.activeForeground":"#005cc5","textLink.foreground":"#0366d6","textPreformat.foreground":"#586069","textSeparator.foreground":"#d1d5da","titleBar.activeBackground":"#fff","titleBar.activeForeground":"#2f363d","titleBar.border":"#e1e4e8","titleBar.inactiveBackground":"#f6f8fa","titleBar.inactiveForeground":"#6a737d","tree.indentGuidesStroke":"#e1e4e8","welcomePage.buttonBackground":"#f6f8fa","welcomePage.buttonHoverBackground":"#e1e4e8"},"displayName":"GitHub Light","name":"github-light","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#6a737d"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language"],"settings":{"foreground":"#005cc5"}},{"scope":["entity","entity.name"],"settings":{"foreground":"#6f42c1"}},{"scope":"variable.parameter.function","settings":{"foreground":"#24292e"}},{"scope":"entity.name.tag","settings":{"foreground":"#22863a"}},{"scope":"keyword","settings":{"foreground":"#d73a49"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#d73a49"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#24292e"}},{"scope":["string","punctuation.definition.string","string punctuation.section.embedded source"],"settings":{"foreground":"#032f62"}},{"scope":"support","settings":{"foreground":"#005cc5"}},{"scope":"meta.property-name","settings":{"foreground":"#005cc5"}},{"scope":"variable","settings":{"foreground":"#e36209"}},{"scope":"variable.other","settings":{"foreground":"#24292e"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"carriage-return","settings":{"background":"#d73a49","content":"^M","fontStyle":"italic underline","foreground":"#fafbfc"}},{"scope":"message.error","settings":{"foreground":"#b31d28"}},{"scope":"string variable","settings":{"foreground":"#005cc5"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#032f62"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#032f62"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#22863a"}},{"scope":"support.constant","settings":{"foreground":"#005cc5"}},{"scope":"support.variable","settings":{"foreground":"#005cc5"}},{"scope":"meta.module-reference","settings":{"foreground":"#005cc5"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#e36209"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#005cc5"}},{"scope":"markup.quote","settings":{"foreground":"#22863a"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#24292e"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#24292e"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#005cc5"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#ffeef0","foreground":"#b31d28"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#f0fff4","foreground":"#22863a"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#ffebda","foreground":"#e36209"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#005cc5","foreground":"#f6f8fa"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#6f42c1"}},{"scope":"meta.diff.header","settings":{"foreground":"#005cc5"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#005cc5"}},{"scope":"meta.output","settings":{"foreground":"#005cc5"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#586069"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#b31d28"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"fontStyle":"underline","foreground":"#032f62"}}],"type":"light"}'))});var CM={};x(CM,{default:()=>ice});var ice,_M=_(()=>{ice=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#fd8c73","activityBar.background":"#ffffff","activityBar.border":"#d0d7de","activityBar.foreground":"#1f2328","activityBar.inactiveForeground":"#656d76","activityBarBadge.background":"#0969da","activityBarBadge.foreground":"#ffffff","badge.background":"#0969da","badge.foreground":"#ffffff","breadcrumb.activeSelectionForeground":"#656d76","breadcrumb.focusForeground":"#1f2328","breadcrumb.foreground":"#656d76","breadcrumbPicker.background":"#ffffff","button.background":"#1f883d","button.foreground":"#ffffff","button.hoverBackground":"#1a7f37","button.secondaryBackground":"#ebecf0","button.secondaryForeground":"#24292f","button.secondaryHoverBackground":"#f3f4f6","checkbox.background":"#f6f8fa","checkbox.border":"#d0d7de","debugConsole.errorForeground":"#cf222e","debugConsole.infoForeground":"#57606a","debugConsole.sourceForeground":"#9a6700","debugConsole.warningForeground":"#7d4e00","debugConsoleInputIcon.foreground":"#6639ba","debugIcon.breakpointForeground":"#cf222e","debugTokenExpression.boolean":"#116329","debugTokenExpression.error":"#a40e26","debugTokenExpression.name":"#0550ae","debugTokenExpression.number":"#116329","debugTokenExpression.string":"#0a3069","debugTokenExpression.value":"#0a3069","debugToolBar.background":"#ffffff","descriptionForeground":"#656d76","diffEditor.insertedLineBackground":"#aceebb4d","diffEditor.insertedTextBackground":"#6fdd8b80","diffEditor.removedLineBackground":"#ffcecb4d","diffEditor.removedTextBackground":"#ff818266","dropdown.background":"#ffffff","dropdown.border":"#d0d7de","dropdown.foreground":"#1f2328","dropdown.listBackground":"#ffffff","editor.background":"#ffffff","editor.findMatchBackground":"#bf8700","editor.findMatchHighlightBackground":"#fae17d80","editor.focusedStackFrameHighlightBackground":"#4ac26b66","editor.foldBackground":"#6e77811a","editor.foreground":"#1f2328","editor.lineHighlightBackground":"#eaeef280","editor.linkedEditingBackground":"#0969da12","editor.selectionHighlightBackground":"#4ac26b40","editor.stackFrameHighlightBackground":"#d4a72c66","editor.wordHighlightBackground":"#eaeef280","editor.wordHighlightBorder":"#afb8c199","editor.wordHighlightStrongBackground":"#afb8c14d","editor.wordHighlightStrongBorder":"#afb8c199","editorBracketHighlight.foreground1":"#0969da","editorBracketHighlight.foreground2":"#1a7f37","editorBracketHighlight.foreground3":"#9a6700","editorBracketHighlight.foreground4":"#cf222e","editorBracketHighlight.foreground5":"#bf3989","editorBracketHighlight.foreground6":"#8250df","editorBracketHighlight.unexpectedBracket.foreground":"#656d76","editorBracketMatch.background":"#4ac26b40","editorBracketMatch.border":"#4ac26b99","editorCursor.foreground":"#0969da","editorGroup.border":"#d0d7de","editorGroupHeader.tabsBackground":"#f6f8fa","editorGroupHeader.tabsBorder":"#d0d7de","editorGutter.addedBackground":"#4ac26b66","editorGutter.deletedBackground":"#ff818266","editorGutter.modifiedBackground":"#d4a72c66","editorIndentGuide.activeBackground":"#1f23283d","editorIndentGuide.background":"#1f23281f","editorInlayHint.background":"#afb8c133","editorInlayHint.foreground":"#656d76","editorInlayHint.paramBackground":"#afb8c133","editorInlayHint.paramForeground":"#656d76","editorInlayHint.typeBackground":"#afb8c133","editorInlayHint.typeForeground":"#656d76","editorLineNumber.activeForeground":"#1f2328","editorLineNumber.foreground":"#8c959f","editorOverviewRuler.border":"#ffffff","editorWhitespace.foreground":"#afb8c1","editorWidget.background":"#ffffff","errorForeground":"#cf222e","focusBorder":"#0969da","foreground":"#1f2328","gitDecoration.addedResourceForeground":"#1a7f37","gitDecoration.conflictingResourceForeground":"#bc4c00","gitDecoration.deletedResourceForeground":"#cf222e","gitDecoration.ignoredResourceForeground":"#6e7781","gitDecoration.modifiedResourceForeground":"#9a6700","gitDecoration.submoduleResourceForeground":"#656d76","gitDecoration.untrackedResourceForeground":"#1a7f37","icon.foreground":"#656d76","input.background":"#ffffff","input.border":"#d0d7de","input.foreground":"#1f2328","input.placeholderForeground":"#6e7781","keybindingLabel.foreground":"#1f2328","list.activeSelectionBackground":"#afb8c133","list.activeSelectionForeground":"#1f2328","list.focusBackground":"#ddf4ff","list.focusForeground":"#1f2328","list.highlightForeground":"#0969da","list.hoverBackground":"#eaeef280","list.hoverForeground":"#1f2328","list.inactiveFocusBackground":"#ddf4ff","list.inactiveSelectionBackground":"#afb8c133","list.inactiveSelectionForeground":"#1f2328","minimapSlider.activeBackground":"#8c959f47","minimapSlider.background":"#8c959f33","minimapSlider.hoverBackground":"#8c959f3d","notificationCenterHeader.background":"#f6f8fa","notificationCenterHeader.foreground":"#656d76","notifications.background":"#ffffff","notifications.border":"#d0d7de","notifications.foreground":"#1f2328","notificationsErrorIcon.foreground":"#cf222e","notificationsInfoIcon.foreground":"#0969da","notificationsWarningIcon.foreground":"#9a6700","panel.background":"#f6f8fa","panel.border":"#d0d7de","panelInput.border":"#d0d7de","panelTitle.activeBorder":"#fd8c73","panelTitle.activeForeground":"#1f2328","panelTitle.inactiveForeground":"#656d76","pickerGroup.border":"#d0d7de","pickerGroup.foreground":"#656d76","progressBar.background":"#0969da","quickInput.background":"#ffffff","quickInput.foreground":"#1f2328","scrollbar.shadow":"#6e778133","scrollbarSlider.activeBackground":"#8c959f47","scrollbarSlider.background":"#8c959f33","scrollbarSlider.hoverBackground":"#8c959f3d","settings.headerForeground":"#1f2328","settings.modifiedItemIndicator":"#d4a72c66","sideBar.background":"#f6f8fa","sideBar.border":"#d0d7de","sideBar.foreground":"#1f2328","sideBarSectionHeader.background":"#f6f8fa","sideBarSectionHeader.border":"#d0d7de","sideBarSectionHeader.foreground":"#1f2328","sideBarTitle.foreground":"#1f2328","statusBar.background":"#ffffff","statusBar.border":"#d0d7de","statusBar.debuggingBackground":"#cf222e","statusBar.debuggingForeground":"#ffffff","statusBar.focusBorder":"#0969da80","statusBar.foreground":"#656d76","statusBar.noFolderBackground":"#ffffff","statusBarItem.activeBackground":"#1f23281f","statusBarItem.focusBorder":"#0969da","statusBarItem.hoverBackground":"#1f232814","statusBarItem.prominentBackground":"#afb8c133","statusBarItem.remoteBackground":"#eaeef2","statusBarItem.remoteForeground":"#1f2328","symbolIcon.arrayForeground":"#953800","symbolIcon.booleanForeground":"#0550ae","symbolIcon.classForeground":"#953800","symbolIcon.colorForeground":"#0a3069","symbolIcon.constantForeground":"#116329","symbolIcon.constructorForeground":"#3e1f79","symbolIcon.enumeratorForeground":"#953800","symbolIcon.enumeratorMemberForeground":"#0550ae","symbolIcon.eventForeground":"#57606a","symbolIcon.fieldForeground":"#953800","symbolIcon.fileForeground":"#7d4e00","symbolIcon.folderForeground":"#7d4e00","symbolIcon.functionForeground":"#6639ba","symbolIcon.interfaceForeground":"#953800","symbolIcon.keyForeground":"#0550ae","symbolIcon.keywordForeground":"#a40e26","symbolIcon.methodForeground":"#6639ba","symbolIcon.moduleForeground":"#a40e26","symbolIcon.namespaceForeground":"#a40e26","symbolIcon.nullForeground":"#0550ae","symbolIcon.numberForeground":"#116329","symbolIcon.objectForeground":"#953800","symbolIcon.operatorForeground":"#0a3069","symbolIcon.packageForeground":"#953800","symbolIcon.propertyForeground":"#953800","symbolIcon.referenceForeground":"#0550ae","symbolIcon.snippetForeground":"#0550ae","symbolIcon.stringForeground":"#0a3069","symbolIcon.structForeground":"#953800","symbolIcon.textForeground":"#0a3069","symbolIcon.typeParameterForeground":"#0a3069","symbolIcon.unitForeground":"#0550ae","symbolIcon.variableForeground":"#953800","tab.activeBackground":"#ffffff","tab.activeBorder":"#ffffff","tab.activeBorderTop":"#fd8c73","tab.activeForeground":"#1f2328","tab.border":"#d0d7de","tab.hoverBackground":"#ffffff","tab.inactiveBackground":"#f6f8fa","tab.inactiveForeground":"#656d76","tab.unfocusedActiveBorder":"#ffffff","tab.unfocusedActiveBorderTop":"#d0d7de","tab.unfocusedHoverBackground":"#eaeef280","terminal.ansiBlack":"#24292f","terminal.ansiBlue":"#0969da","terminal.ansiBrightBlack":"#57606a","terminal.ansiBrightBlue":"#218bff","terminal.ansiBrightCyan":"#3192aa","terminal.ansiBrightGreen":"#1a7f37","terminal.ansiBrightMagenta":"#a475f9","terminal.ansiBrightRed":"#a40e26","terminal.ansiBrightWhite":"#8c959f","terminal.ansiBrightYellow":"#633c01","terminal.ansiCyan":"#1b7c83","terminal.ansiGreen":"#116329","terminal.ansiMagenta":"#8250df","terminal.ansiRed":"#cf222e","terminal.ansiWhite":"#6e7781","terminal.ansiYellow":"#4d2d00","terminal.foreground":"#1f2328","textBlockQuote.background":"#f6f8fa","textBlockQuote.border":"#d0d7de","textCodeBlock.background":"#afb8c133","textLink.activeForeground":"#0969da","textLink.foreground":"#0969da","textPreformat.background":"#afb8c133","textPreformat.foreground":"#656d76","textSeparator.foreground":"#d8dee4","titleBar.activeBackground":"#ffffff","titleBar.activeForeground":"#656d76","titleBar.border":"#d0d7de","titleBar.inactiveBackground":"#f6f8fa","titleBar.inactiveForeground":"#656d76","tree.indentGuidesStroke":"#d8dee4","welcomePage.buttonBackground":"#f6f8fa","welcomePage.buttonHoverBackground":"#f3f4f6"},"displayName":"GitHub Light Default","name":"github-light-default","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#6e7781"}},{"scope":["constant.other.placeholder","constant.character"],"settings":{"foreground":"#cf222e"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language","entity"],"settings":{"foreground":"#0550ae"}},{"scope":["entity.name","meta.export.default","meta.definition.variable"],"settings":{"foreground":"#953800"}},{"scope":["variable.parameter.function","meta.jsx.children","meta.block","meta.tag.attributes","entity.name.constant","meta.object.member","meta.embedded.expression"],"settings":{"foreground":"#1f2328"}},{"scope":"entity.name.function","settings":{"foreground":"#8250df"}},{"scope":["entity.name.tag","support.class.component"],"settings":{"foreground":"#116329"}},{"scope":"keyword","settings":{"foreground":"#cf222e"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#cf222e"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#1f2328"}},{"scope":["string","string punctuation.section.embedded source"],"settings":{"foreground":"#0a3069"}},{"scope":"support","settings":{"foreground":"#0550ae"}},{"scope":"meta.property-name","settings":{"foreground":"#0550ae"}},{"scope":"variable","settings":{"foreground":"#953800"}},{"scope":"variable.other","settings":{"foreground":"#1f2328"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#82071e"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#82071e"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#82071e"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#82071e"}},{"scope":"carriage-return","settings":{"background":"#cf222e","content":"^M","fontStyle":"italic underline","foreground":"#f6f8fa"}},{"scope":"message.error","settings":{"foreground":"#82071e"}},{"scope":"string variable","settings":{"foreground":"#0550ae"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#0a3069"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#0a3069"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#116329"}},{"scope":"support.constant","settings":{"foreground":"#0550ae"}},{"scope":"support.variable","settings":{"foreground":"#0550ae"}},{"scope":"support.type.property-name.json","settings":{"foreground":"#116329"}},{"scope":"meta.module-reference","settings":{"foreground":"#0550ae"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#953800"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#0550ae"}},{"scope":"markup.quote","settings":{"foreground":"#116329"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#1f2328"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#1f2328"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#0550ae"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#ffebe9","foreground":"#82071e"}},{"scope":["punctuation.section.embedded"],"settings":{"foreground":"#cf222e"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#dafbe1","foreground":"#116329"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#ffd8b5","foreground":"#953800"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#0550ae","foreground":"#eaeef2"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#8250df"}},{"scope":"meta.diff.header","settings":{"foreground":"#0550ae"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#0550ae"}},{"scope":"meta.output","settings":{"foreground":"#0550ae"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#57606a"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#82071e"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"foreground":"#0a3069"}}],"type":"light"}'))});var BM={};x(BM,{default:()=>oce});var oce,xM=_(()=>{oce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#ef5b48","activityBar.background":"#ffffff","activityBar.border":"#20252c","activityBar.foreground":"#0e1116","activityBar.inactiveForeground":"#0e1116","activityBarBadge.background":"#0349b4","activityBarBadge.foreground":"#ffffff","badge.background":"#0349b4","badge.foreground":"#ffffff","breadcrumb.activeSelectionForeground":"#0e1116","breadcrumb.focusForeground":"#0e1116","breadcrumb.foreground":"#0e1116","breadcrumbPicker.background":"#ffffff","button.background":"#055d20","button.foreground":"#ffffff","button.hoverBackground":"#024c1a","button.secondaryBackground":"#acb6c0","button.secondaryForeground":"#0e1116","button.secondaryHoverBackground":"#ced5dc","checkbox.background":"#e7ecf0","checkbox.border":"#20252c","debugConsole.errorForeground":"#a0111f","debugConsole.infoForeground":"#4b535d","debugConsole.sourceForeground":"#744500","debugConsole.warningForeground":"#603700","debugConsoleInputIcon.foreground":"#512598","debugIcon.breakpointForeground":"#a0111f","debugTokenExpression.boolean":"#024c1a","debugTokenExpression.error":"#86061d","debugTokenExpression.name":"#023b95","debugTokenExpression.number":"#024c1a","debugTokenExpression.string":"#032563","debugTokenExpression.value":"#032563","debugToolBar.background":"#ffffff","descriptionForeground":"#0e1116","diffEditor.insertedLineBackground":"#82e5964d","diffEditor.insertedTextBackground":"#43c66380","diffEditor.removedLineBackground":"#ffc1bc4d","diffEditor.removedTextBackground":"#ee5a5d66","dropdown.background":"#ffffff","dropdown.border":"#20252c","dropdown.foreground":"#0e1116","dropdown.listBackground":"#ffffff","editor.background":"#ffffff","editor.findMatchBackground":"#744500","editor.findMatchHighlightBackground":"#f0ce5380","editor.focusedStackFrameHighlightBackground":"#26a148","editor.foldBackground":"#66707b1a","editor.foreground":"#0e1116","editor.inactiveSelectionBackground":"#66707b","editor.lineHighlightBackground":"#e7ecf0","editor.linkedEditingBackground":"#0349b412","editor.selectionBackground":"#0e1116","editor.selectionForeground":"#ffffff","editor.selectionHighlightBackground":"#26a14840","editor.stackFrameHighlightBackground":"#b58407","editor.wordHighlightBackground":"#e7ecf080","editor.wordHighlightBorder":"#acb6c099","editor.wordHighlightStrongBackground":"#acb6c04d","editor.wordHighlightStrongBorder":"#acb6c099","editorBracketHighlight.foreground1":"#0349b4","editorBracketHighlight.foreground2":"#055d20","editorBracketHighlight.foreground3":"#744500","editorBracketHighlight.foreground4":"#a0111f","editorBracketHighlight.foreground5":"#971368","editorBracketHighlight.foreground6":"#622cbc","editorBracketHighlight.unexpectedBracket.foreground":"#0e1116","editorBracketMatch.background":"#26a14840","editorBracketMatch.border":"#26a14899","editorCursor.foreground":"#0349b4","editorGroup.border":"#20252c","editorGroupHeader.tabsBackground":"#ffffff","editorGroupHeader.tabsBorder":"#20252c","editorGutter.addedBackground":"#26a148","editorGutter.deletedBackground":"#ee5a5d","editorGutter.modifiedBackground":"#b58407","editorIndentGuide.activeBackground":"#0e11163d","editorIndentGuide.background":"#0e11161f","editorInlayHint.background":"#acb6c033","editorInlayHint.foreground":"#0e1116","editorInlayHint.paramBackground":"#acb6c033","editorInlayHint.paramForeground":"#0e1116","editorInlayHint.typeBackground":"#acb6c033","editorInlayHint.typeForeground":"#0e1116","editorLineNumber.activeForeground":"#0e1116","editorLineNumber.foreground":"#88929d","editorOverviewRuler.border":"#ffffff","editorWhitespace.foreground":"#acb6c0","editorWidget.background":"#ffffff","errorForeground":"#a0111f","focusBorder":"#0349b4","foreground":"#0e1116","gitDecoration.addedResourceForeground":"#055d20","gitDecoration.conflictingResourceForeground":"#873800","gitDecoration.deletedResourceForeground":"#a0111f","gitDecoration.ignoredResourceForeground":"#66707b","gitDecoration.modifiedResourceForeground":"#744500","gitDecoration.submoduleResourceForeground":"#0e1116","gitDecoration.untrackedResourceForeground":"#055d20","icon.foreground":"#0e1116","input.background":"#ffffff","input.border":"#20252c","input.foreground":"#0e1116","input.placeholderForeground":"#66707b","keybindingLabel.foreground":"#0e1116","list.activeSelectionBackground":"#acb6c033","list.activeSelectionForeground":"#0e1116","list.focusBackground":"#dff7ff","list.focusForeground":"#0e1116","list.highlightForeground":"#0349b4","list.hoverBackground":"#e7ecf0","list.hoverForeground":"#0e1116","list.inactiveFocusBackground":"#dff7ff","list.inactiveSelectionBackground":"#acb6c033","list.inactiveSelectionForeground":"#0e1116","minimapSlider.activeBackground":"#88929d47","minimapSlider.background":"#88929d33","minimapSlider.hoverBackground":"#88929d3d","notificationCenterHeader.background":"#e7ecf0","notificationCenterHeader.foreground":"#0e1116","notifications.background":"#ffffff","notifications.border":"#20252c","notifications.foreground":"#0e1116","notificationsErrorIcon.foreground":"#a0111f","notificationsInfoIcon.foreground":"#0349b4","notificationsWarningIcon.foreground":"#744500","panel.background":"#ffffff","panel.border":"#20252c","panelInput.border":"#20252c","panelTitle.activeBorder":"#ef5b48","panelTitle.activeForeground":"#0e1116","panelTitle.inactiveForeground":"#0e1116","pickerGroup.border":"#20252c","pickerGroup.foreground":"#0e1116","progressBar.background":"#0349b4","quickInput.background":"#ffffff","quickInput.foreground":"#0e1116","scrollbar.shadow":"#66707b33","scrollbarSlider.activeBackground":"#88929d47","scrollbarSlider.background":"#88929d33","scrollbarSlider.hoverBackground":"#88929d3d","settings.headerForeground":"#0e1116","settings.modifiedItemIndicator":"#b58407","sideBar.background":"#ffffff","sideBar.border":"#20252c","sideBar.foreground":"#0e1116","sideBarSectionHeader.background":"#ffffff","sideBarSectionHeader.border":"#20252c","sideBarSectionHeader.foreground":"#0e1116","sideBarTitle.foreground":"#0e1116","statusBar.background":"#ffffff","statusBar.border":"#20252c","statusBar.debuggingBackground":"#a0111f","statusBar.debuggingForeground":"#ffffff","statusBar.focusBorder":"#0349b480","statusBar.foreground":"#0e1116","statusBar.noFolderBackground":"#ffffff","statusBarItem.activeBackground":"#0e11161f","statusBarItem.focusBorder":"#0349b4","statusBarItem.hoverBackground":"#0e111614","statusBarItem.prominentBackground":"#acb6c033","statusBarItem.remoteBackground":"#e7ecf0","statusBarItem.remoteForeground":"#0e1116","symbolIcon.arrayForeground":"#702c00","symbolIcon.booleanForeground":"#023b95","symbolIcon.classForeground":"#702c00","symbolIcon.colorForeground":"#032563","symbolIcon.constantForeground":"#024c1a","symbolIcon.constructorForeground":"#341763","symbolIcon.enumeratorForeground":"#702c00","symbolIcon.enumeratorMemberForeground":"#023b95","symbolIcon.eventForeground":"#4b535d","symbolIcon.fieldForeground":"#702c00","symbolIcon.fileForeground":"#603700","symbolIcon.folderForeground":"#603700","symbolIcon.functionForeground":"#512598","symbolIcon.interfaceForeground":"#702c00","symbolIcon.keyForeground":"#023b95","symbolIcon.keywordForeground":"#86061d","symbolIcon.methodForeground":"#512598","symbolIcon.moduleForeground":"#86061d","symbolIcon.namespaceForeground":"#86061d","symbolIcon.nullForeground":"#023b95","symbolIcon.numberForeground":"#024c1a","symbolIcon.objectForeground":"#702c00","symbolIcon.operatorForeground":"#032563","symbolIcon.packageForeground":"#702c00","symbolIcon.propertyForeground":"#702c00","symbolIcon.referenceForeground":"#023b95","symbolIcon.snippetForeground":"#023b95","symbolIcon.stringForeground":"#032563","symbolIcon.structForeground":"#702c00","symbolIcon.textForeground":"#032563","symbolIcon.typeParameterForeground":"#032563","symbolIcon.unitForeground":"#023b95","symbolIcon.variableForeground":"#702c00","tab.activeBackground":"#ffffff","tab.activeBorder":"#ffffff","tab.activeBorderTop":"#ef5b48","tab.activeForeground":"#0e1116","tab.border":"#20252c","tab.hoverBackground":"#ffffff","tab.inactiveBackground":"#ffffff","tab.inactiveForeground":"#0e1116","tab.unfocusedActiveBorder":"#ffffff","tab.unfocusedActiveBorderTop":"#20252c","tab.unfocusedHoverBackground":"#e7ecf0","terminal.ansiBlack":"#0e1116","terminal.ansiBlue":"#0349b4","terminal.ansiBrightBlack":"#4b535d","terminal.ansiBrightBlue":"#1168e3","terminal.ansiBrightCyan":"#3192aa","terminal.ansiBrightGreen":"#055d20","terminal.ansiBrightMagenta":"#844ae7","terminal.ansiBrightRed":"#86061d","terminal.ansiBrightWhite":"#88929d","terminal.ansiBrightYellow":"#4e2c00","terminal.ansiCyan":"#1b7c83","terminal.ansiGreen":"#024c1a","terminal.ansiMagenta":"#622cbc","terminal.ansiRed":"#a0111f","terminal.ansiWhite":"#66707b","terminal.ansiYellow":"#3f2200","terminal.foreground":"#0e1116","textBlockQuote.background":"#ffffff","textBlockQuote.border":"#20252c","textCodeBlock.background":"#acb6c033","textLink.activeForeground":"#0349b4","textLink.foreground":"#0349b4","textPreformat.background":"#acb6c033","textPreformat.foreground":"#0e1116","textSeparator.foreground":"#88929d","titleBar.activeBackground":"#ffffff","titleBar.activeForeground":"#0e1116","titleBar.border":"#20252c","titleBar.inactiveBackground":"#ffffff","titleBar.inactiveForeground":"#0e1116","tree.indentGuidesStroke":"#88929d","welcomePage.buttonBackground":"#e7ecf0","welcomePage.buttonHoverBackground":"#ced5dc"},"displayName":"GitHub Light High Contrast","name":"github-light-high-contrast","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#66707b"}},{"scope":["constant.other.placeholder","constant.character"],"settings":{"foreground":"#a0111f"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language","entity"],"settings":{"foreground":"#023b95"}},{"scope":["entity.name","meta.export.default","meta.definition.variable"],"settings":{"foreground":"#702c00"}},{"scope":["variable.parameter.function","meta.jsx.children","meta.block","meta.tag.attributes","entity.name.constant","meta.object.member","meta.embedded.expression"],"settings":{"foreground":"#0e1116"}},{"scope":"entity.name.function","settings":{"foreground":"#622cbc"}},{"scope":["entity.name.tag","support.class.component"],"settings":{"foreground":"#024c1a"}},{"scope":"keyword","settings":{"foreground":"#a0111f"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#a0111f"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#0e1116"}},{"scope":["string","string punctuation.section.embedded source"],"settings":{"foreground":"#032563"}},{"scope":"support","settings":{"foreground":"#023b95"}},{"scope":"meta.property-name","settings":{"foreground":"#023b95"}},{"scope":"variable","settings":{"foreground":"#702c00"}},{"scope":"variable.other","settings":{"foreground":"#0e1116"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#6e011a"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#6e011a"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#6e011a"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#6e011a"}},{"scope":"carriage-return","settings":{"background":"#a0111f","content":"^M","fontStyle":"italic underline","foreground":"#ffffff"}},{"scope":"message.error","settings":{"foreground":"#6e011a"}},{"scope":"string variable","settings":{"foreground":"#023b95"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#032563"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#032563"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#024c1a"}},{"scope":"support.constant","settings":{"foreground":"#023b95"}},{"scope":"support.variable","settings":{"foreground":"#023b95"}},{"scope":"support.type.property-name.json","settings":{"foreground":"#024c1a"}},{"scope":"meta.module-reference","settings":{"foreground":"#023b95"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#702c00"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#023b95"}},{"scope":"markup.quote","settings":{"foreground":"#024c1a"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#0e1116"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#0e1116"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#023b95"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#fff0ee","foreground":"#6e011a"}},{"scope":["punctuation.section.embedded"],"settings":{"foreground":"#a0111f"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#d2fedb","foreground":"#024c1a"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#ffc67b","foreground":"#702c00"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#023b95","foreground":"#e7ecf0"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#622cbc"}},{"scope":"meta.diff.header","settings":{"foreground":"#023b95"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#023b95"}},{"scope":"meta.output","settings":{"foreground":"#023b95"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#4b535d"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#6e011a"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"foreground":"#032563"}}],"type":"light"}'))});var vM={};x(vM,{default:()=>sce});var sce,EM=_(()=>{sce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBackground":"#343841","activityBar.background":"#17191e","activityBar.border":"#343841","activityBar.foreground":"#eef0f9","activityBar.inactiveForeground":"#858b98","activityBarBadge.background":"#4bf3c8","activityBarBadge.foreground":"#000000","badge.background":"#bfc1c9","badge.foreground":"#17191e","breadcrumb.activeSelectionForeground":"#eef0f9","breadcrumb.background":"#17191e","breadcrumb.focusForeground":"#eef0f9","breadcrumb.foreground":"#858b98","button.background":"#4bf3c8","button.foreground":"#17191e","button.hoverBackground":"#31c19c","button.secondaryBackground":"#545864","button.secondaryForeground":"#eef0f9","button.secondaryHoverBackground":"#858b98","checkbox.background":"#23262d","checkbox.border":"#00000000","checkbox.foreground":"#eef0f9","debugExceptionWidget.background":"#23262d","debugExceptionWidget.border":"#8996d5","debugToolBar.background":"#000","debugToolBar.border":"#ffffff00","diffEditor.border":"#ffffff00","diffEditor.insertedTextBackground":"#4bf3c824","diffEditor.removedTextBackground":"#dc365724","dropdown.background":"#23262d","dropdown.border":"#00000000","dropdown.foreground":"#eef0f9","editor.background":"#17191e","editor.findMatchBackground":"#515c6a","editor.findMatchBorder":"#74879f","editor.findMatchHighlightBackground":"#ea5c0055","editor.findMatchHighlightBorder":"#ffffff00","editor.findRangeHighlightBackground":"#23262d","editor.findRangeHighlightBorder":"#b2434300","editor.foldBackground":"#ad5dca26","editor.foreground":"#eef0f9","editor.hoverHighlightBackground":"#5495d740","editor.inactiveSelectionBackground":"#2a2d34","editor.lineHighlightBackground":"#23262d","editor.lineHighlightBorder":"#ffffff00","editor.rangeHighlightBackground":"#ffffff0b","editor.rangeHighlightBorder":"#ffffff00","editor.selectionBackground":"#ad5dca44","editor.selectionHighlightBackground":"#add6ff34","editor.selectionHighlightBorder":"#495f77","editor.wordHighlightBackground":"#494949b8","editor.wordHighlightStrongBackground":"#004972b8","editorBracketMatch.background":"#545864","editorBracketMatch.border":"#ffffff00","editorCodeLens.foreground":"#bfc1c9","editorCursor.background":"#000000","editorCursor.foreground":"#aeafad","editorError.background":"#ffffff00","editorError.border":"#ffffff00","editorError.foreground":"#f4587e","editorGroup.border":"#343841","editorGroup.emptyBackground":"#17191e","editorGroupHeader.border":"#ffffff00","editorGroupHeader.tabsBackground":"#23262d","editorGroupHeader.tabsBorder":"#ffffff00","editorGutter.addedBackground":"#4bf3c8","editorGutter.background":"#17191e","editorGutter.commentRangeForeground":"#545864","editorGutter.deletedBackground":"#f06788","editorGutter.foldingControlForeground":"#545864","editorGutter.modifiedBackground":"#54b9ff","editorHoverWidget.background":"#252526","editorHoverWidget.border":"#454545","editorHoverWidget.foreground":"#cccccc","editorIndentGuide.activeBackground":"#858b98","editorIndentGuide.background":"#343841","editorInfo.background":"#4490bf00","editorInfo.border":"#4490bf00","editorInfo.foreground":"#54b9ff","editorLineNumber.activeForeground":"#858b98","editorLineNumber.foreground":"#545864","editorLink.activeForeground":"#54b9ff","editorMarkerNavigation.background":"#23262d","editorMarkerNavigationError.background":"#dc3657","editorMarkerNavigationInfo.background":"#54b9ff","editorMarkerNavigationWarning.background":"#ffd493","editorOverviewRuler.background":"#ffffff00","editorOverviewRuler.border":"#ffffff00","editorRuler.foreground":"#545864","editorSuggestWidget.background":"#252526","editorSuggestWidget.border":"#454545","editorSuggestWidget.foreground":"#d4d4d4","editorSuggestWidget.highlightForeground":"#0097fb","editorSuggestWidget.selectedBackground":"#062f4a","editorWarning.background":"#a9904000","editorWarning.border":"#ffffff00","editorWarning.foreground":"#fbc23b","editorWhitespace.foreground":"#cc75f450","editorWidget.background":"#343841","editorWidget.foreground":"#ffffff","editorWidget.resizeBorder":"#cc75f4","focusBorder":"#00daef","foreground":"#cccccc","gitDecoration.addedResourceForeground":"#4bf3c8","gitDecoration.conflictingResourceForeground":"#00daef","gitDecoration.deletedResourceForeground":"#f4587e","gitDecoration.ignoredResourceForeground":"#858b98","gitDecoration.modifiedResourceForeground":"#ffd493","gitDecoration.stageDeletedResourceForeground":"#c74e39","gitDecoration.stageModifiedResourceForeground":"#ffd493","gitDecoration.submoduleResourceForeground":"#54b9ff","gitDecoration.untrackedResourceForeground":"#4bf3c8","icon.foreground":"#cccccc","input.background":"#23262d","input.border":"#bfc1c9","input.foreground":"#eef0f9","input.placeholderForeground":"#858b98","inputOption.activeBackground":"#54b9ff","inputOption.activeBorder":"#007acc00","inputOption.activeForeground":"#17191e","list.activeSelectionBackground":"#2d4860","list.activeSelectionForeground":"#ffffff","list.dropBackground":"#17191e","list.focusBackground":"#54b9ff","list.focusForeground":"#ffffff","list.highlightForeground":"#ffffff","list.hoverBackground":"#343841","list.hoverForeground":"#eef0f9","list.inactiveSelectionBackground":"#17191e","list.inactiveSelectionForeground":"#eef0f9","listFilterWidget.background":"#2d4860","listFilterWidget.noMatchesOutline":"#dc3657","listFilterWidget.outline":"#54b9ff","menu.background":"#252526","menu.border":"#00000085","menu.foreground":"#cccccc","menu.selectionBackground":"#094771","menu.selectionBorder":"#00000000","menu.selectionForeground":"#4bf3c8","menu.separatorBackground":"#bbbbbb","menubar.selectionBackground":"#ffffff1a","menubar.selectionForeground":"#cccccc","merge.commonContentBackground":"#282828","merge.commonHeaderBackground":"#383838","merge.currentContentBackground":"#27403b","merge.currentHeaderBackground":"#367366","merge.incomingContentBackground":"#28384b","merge.incomingHeaderBackground":"#395f8f","minimap.background":"#17191e","minimap.errorHighlight":"#dc3657","minimap.findMatchHighlight":"#515c6a","minimap.selectionHighlight":"#3757b942","minimap.warningHighlight":"#fbc23b","minimapGutter.addedBackground":"#4bf3c8","minimapGutter.deletedBackground":"#f06788","minimapGutter.modifiedBackground":"#54b9ff","notificationCenter.border":"#ffffff00","notificationCenterHeader.background":"#343841","notificationCenterHeader.foreground":"#17191e","notificationToast.border":"#ffffff00","notifications.background":"#343841","notifications.border":"#bfc1c9","notifications.foreground":"#ffffff","notificationsErrorIcon.foreground":"#f4587e","notificationsInfoIcon.foreground":"#54b9ff","notificationsWarningIcon.foreground":"#ff8551","panel.background":"#23262d","panel.border":"#17191e","panelSection.border":"#17191e","panelTitle.activeBorder":"#e7e7e7","panelTitle.activeForeground":"#eef0f9","panelTitle.inactiveForeground":"#bfc1c9","peekView.border":"#007acc","peekViewEditor.background":"#001f33","peekViewEditor.matchHighlightBackground":"#ff8f0099","peekViewEditor.matchHighlightBorder":"#ee931e","peekViewEditorGutter.background":"#001f33","peekViewResult.background":"#252526","peekViewResult.fileForeground":"#ffffff","peekViewResult.lineForeground":"#bbbbbb","peekViewResult.matchHighlightBackground":"#f00","peekViewResult.selectionBackground":"#3399ff33","peekViewResult.selectionForeground":"#ffffff","peekViewTitle.background":"#1e1e1e","peekViewTitleDescription.foreground":"#ccccccb3","peekViewTitleLabel.foreground":"#ffffff","pickerGroup.border":"#ffffff00","pickerGroup.foreground":"#eef0f9","progressBar.background":"#4bf3c8","scrollbar.shadow":"#000000","scrollbarSlider.activeBackground":"#54b9ff66","scrollbarSlider.background":"#54586466","scrollbarSlider.hoverBackground":"#545864B3","selection.background":"#00daef56","settings.focusedRowBackground":"#ffffff07","settings.headerForeground":"#cccccc","sideBar.background":"#23262d","sideBar.border":"#17191e","sideBar.dropBackground":"#17191e","sideBar.foreground":"#bfc1c9","sideBarSectionHeader.background":"#343841","sideBarSectionHeader.border":"#17191e","sideBarSectionHeader.foreground":"#eef0f9","sideBarTitle.foreground":"#eef0f9","statusBar.background":"#17548b","statusBar.debuggingBackground":"#cc75f4","statusBar.debuggingForeground":"#eef0f9","statusBar.foreground":"#eef0f9","statusBar.noFolderBackground":"#6c3c7d","statusBar.noFolderForeground":"#eef0f9","statusBarItem.activeBackground":"#ffffff25","statusBarItem.hoverBackground":"#ffffff1f","statusBarItem.remoteBackground":"#297763","statusBarItem.remoteForeground":"#eef0f9","tab.activeBackground":"#17191e","tab.activeBorder":"#ffffff00","tab.activeBorderTop":"#eef0f9","tab.activeForeground":"#eef0f9","tab.border":"#17191e","tab.hoverBackground":"#343841","tab.hoverForeground":"#eef0f9","tab.inactiveBackground":"#23262d","tab.inactiveForeground":"#858b98","terminal.ansiBlack":"#17191e","terminal.ansiBlue":"#2b7eca","terminal.ansiBrightBlack":"#545864","terminal.ansiBrightBlue":"#54b9ff","terminal.ansiBrightCyan":"#00daef","terminal.ansiBrightGreen":"#4bf3c8","terminal.ansiBrightMagenta":"#cc75f4","terminal.ansiBrightRed":"#f4587e","terminal.ansiBrightWhite":"#fafafa","terminal.ansiBrightYellow":"#ffd493","terminal.ansiCyan":"#24c0cf","terminal.ansiGreen":"#23d18b","terminal.ansiMagenta":"#ad5dca","terminal.ansiRed":"#dc3657","terminal.ansiWhite":"#eef0f9","terminal.ansiYellow":"#ffc368","terminal.border":"#80808059","terminal.foreground":"#cccccc","terminal.selectionBackground":"#ffffff40","terminalCursor.background":"#0087ff","terminalCursor.foreground":"#ffffff","textLink.foreground":"#54b9ff","titleBar.activeBackground":"#17191e","titleBar.activeForeground":"#cccccc","titleBar.border":"#00000000","titleBar.inactiveBackground":"#3c3c3c99","titleBar.inactiveForeground":"#cccccc99","tree.indentGuidesStroke":"#545864","walkThrough.embeddedEditorBackground":"#00000050","widget.shadow":"#ffffff00"},"displayName":"Houston","name":"houston","semanticHighlighting":true,"semanticTokenColors":{"enumMember":{"foreground":"#eef0f9"},"variable.constant":{"foreground":"#ffd493"},"variable.defaultLibrary":{"foreground":"#acafff"}},"tokenColors":[{"scope":"punctuation.definition.delayed.unison,punctuation.definition.list.begin.unison,punctuation.definition.list.end.unison,punctuation.definition.ability.begin.unison,punctuation.definition.ability.end.unison,punctuation.operator.assignment.as.unison,punctuation.separator.pipe.unison,punctuation.separator.delimiter.unison,punctuation.definition.hash.unison","settings":{"foreground":"#4bf3c8"}},{"scope":"variable.other.generic-type.haskell","settings":{"foreground":"#54b9ff"}},{"scope":"storage.type.haskell","settings":{"foreground":"#ffd493"}},{"scope":"support.variable.magic.python","settings":{"foreground":"#4bf3c8"}},{"scope":"punctuation.separator.period.python,punctuation.separator.element.python,punctuation.parenthesis.begin.python,punctuation.parenthesis.end.python","settings":{"foreground":"#eef0f9"}},{"scope":"variable.parameter.function.language.special.self.python","settings":{"foreground":"#acafff"}},{"scope":"storage.modifier.lifetime.rust","settings":{"foreground":"#eef0f9"}},{"scope":"support.function.std.rust","settings":{"foreground":"#00daef"}},{"scope":"entity.name.lifetime.rust","settings":{"foreground":"#acafff"}},{"scope":"variable.language.rust","settings":{"foreground":"#4bf3c8"}},{"scope":"support.constant.edge","settings":{"foreground":"#54b9ff"}},{"scope":"constant.other.character-class.regexp","settings":{"foreground":"#4bf3c8"}},{"scope":"keyword.operator.quantifier.regexp","settings":{"foreground":"#ffd493"}},{"scope":"punctuation.definition.string.begin,punctuation.definition.string.end","settings":{"foreground":"#ffd493"}},{"scope":"variable.parameter.function","settings":{"foreground":"#eef0f9"}},{"scope":"comment markup.link","settings":{"foreground":"#545864"}},{"scope":"markup.changed.diff","settings":{"foreground":"#acafff"}},{"scope":"meta.diff.header.from-file,meta.diff.header.to-file,punctuation.definition.from-file.diff,punctuation.definition.to-file.diff","settings":{"foreground":"#00daef"}},{"scope":"markup.inserted.diff","settings":{"foreground":"#ffd493"}},{"scope":"markup.deleted.diff","settings":{"foreground":"#4bf3c8"}},{"scope":"meta.function.c,meta.function.cpp","settings":{"foreground":"#4bf3c8"}},{"scope":"punctuation.section.block.begin.bracket.curly.cpp,punctuation.section.block.end.bracket.curly.cpp,punctuation.terminator.statement.c,punctuation.section.block.begin.bracket.curly.c,punctuation.section.block.end.bracket.curly.c,punctuation.section.parens.begin.bracket.round.c,punctuation.section.parens.end.bracket.round.c,punctuation.section.parameters.begin.bracket.round.c,punctuation.section.parameters.end.bracket.round.c","settings":{"foreground":"#eef0f9"}},{"scope":"punctuation.separator.key-value","settings":{"foreground":"#eef0f9"}},{"scope":"keyword.operator.expression.import","settings":{"foreground":"#00daef"}},{"scope":"support.constant.math","settings":{"foreground":"#acafff"}},{"scope":"support.constant.property.math","settings":{"foreground":"#ffd493"}},{"scope":"variable.other.constant","settings":{"foreground":"#acafff"}},{"scope":["storage.type.annotation.java","storage.type.object.array.java"],"settings":{"foreground":"#acafff"}},{"scope":"source.java","settings":{"foreground":"#4bf3c8"}},{"scope":"punctuation.section.block.begin.java,punctuation.section.block.end.java,punctuation.definition.method-parameters.begin.java,punctuation.definition.method-parameters.end.java,meta.method.identifier.java,punctuation.section.method.begin.java,punctuation.section.method.end.java,punctuation.terminator.java,punctuation.section.class.begin.java,punctuation.section.class.end.java,punctuation.section.inner-class.begin.java,punctuation.section.inner-class.end.java,meta.method-call.java,punctuation.section.class.begin.bracket.curly.java,punctuation.section.class.end.bracket.curly.java,punctuation.section.method.begin.bracket.curly.java,punctuation.section.method.end.bracket.curly.java,punctuation.separator.period.java,punctuation.bracket.angle.java,punctuation.definition.annotation.java,meta.method.body.java","settings":{"foreground":"#eef0f9"}},{"scope":"meta.method.java","settings":{"foreground":"#00daef"}},{"scope":"storage.modifier.import.java,storage.type.java,storage.type.generic.java","settings":{"foreground":"#acafff"}},{"scope":"keyword.operator.instanceof.java","settings":{"foreground":"#54b9ff"}},{"scope":"meta.definition.variable.name.java","settings":{"foreground":"#4bf3c8"}},{"scope":"keyword.operator.logical","settings":{"foreground":"#eef0f9"}},{"scope":"keyword.operator.bitwise","settings":{"foreground":"#eef0f9"}},{"scope":"keyword.operator.channel","settings":{"foreground":"#eef0f9"}},{"scope":"support.constant.property-value.scss,support.constant.property-value.css","settings":{"foreground":"#ffd493"}},{"scope":"keyword.operator.css,keyword.operator.scss,keyword.operator.less","settings":{"foreground":"#eef0f9"}},{"scope":"support.constant.color.w3c-standard-color-name.css,support.constant.color.w3c-standard-color-name.scss","settings":{"foreground":"#ffd493"}},{"scope":"punctuation.separator.list.comma.css","settings":{"foreground":"#eef0f9"}},{"scope":"support.constant.color.w3c-standard-color-name.css","settings":{"foreground":"#ffd493"}},{"scope":"support.type.vendored.property-name.css","settings":{"foreground":"#eef0f9"}},{"scope":"support.module.node,support.type.object.module,support.module.node","settings":{"foreground":"#acafff"}},{"scope":"entity.name.type.module","settings":{"foreground":"#ffd493"}},{"scope":"variable.other.readwrite,meta.object-literal.key,support.variable.property,support.variable.object.process,support.variable.object.node","settings":{"foreground":"#4bf3c8"}},{"scope":"support.constant.json","settings":{"foreground":"#ffd493"}},{"scope":["keyword.operator.expression.instanceof","keyword.operator.new","keyword.operator.ternary","keyword.operator.optional","keyword.operator.expression.keyof"],"settings":{"foreground":"#54b9ff"}},{"scope":"support.type.object.console","settings":{"foreground":"#4bf3c8"}},{"scope":"support.variable.property.process","settings":{"foreground":"#ffd493"}},{"scope":"entity.name.function,support.function.console","settings":{"foreground":"#00daef"}},{"scope":"keyword.operator.misc.rust","settings":{"foreground":"#eef0f9"}},{"scope":"keyword.operator.sigil.rust","settings":{"foreground":"#54b9ff"}},{"scope":"keyword.operator.delete","settings":{"foreground":"#54b9ff"}},{"scope":"support.type.object.dom","settings":{"foreground":"#eef0f9"}},{"scope":"support.variable.dom,support.variable.property.dom","settings":{"foreground":"#4bf3c8"}},{"scope":"keyword.operator.arithmetic,keyword.operator.comparison,keyword.operator.decrement,keyword.operator.increment,keyword.operator.relational","settings":{"foreground":"#eef0f9"}},{"scope":"keyword.operator.assignment.c,keyword.operator.comparison.c,keyword.operator.c,keyword.operator.increment.c,keyword.operator.decrement.c,keyword.operator.bitwise.shift.c,keyword.operator.assignment.cpp,keyword.operator.comparison.cpp,keyword.operator.cpp,keyword.operator.increment.cpp,keyword.operator.decrement.cpp,keyword.operator.bitwise.shift.cpp","settings":{"foreground":"#54b9ff"}},{"scope":"punctuation.separator.delimiter","settings":{"foreground":"#eef0f9"}},{"scope":"punctuation.separator.c,punctuation.separator.cpp","settings":{"foreground":"#54b9ff"}},{"scope":"support.type.posix-reserved.c,support.type.posix-reserved.cpp","settings":{"foreground":"#eef0f9"}},{"scope":"keyword.operator.sizeof.c,keyword.operator.sizeof.cpp","settings":{"foreground":"#54b9ff"}},{"scope":"variable.parameter.function.language.python","settings":{"foreground":"#ffd493"}},{"scope":"support.type.python","settings":{"foreground":"#eef0f9"}},{"scope":"keyword.operator.logical.python","settings":{"foreground":"#54b9ff"}},{"scope":"variable.parameter.function.python","settings":{"foreground":"#ffd493"}},{"scope":"punctuation.definition.arguments.begin.python,punctuation.definition.arguments.end.python,punctuation.separator.arguments.python,punctuation.definition.list.begin.python,punctuation.definition.list.end.python","settings":{"foreground":"#eef0f9"}},{"scope":"meta.function-call.generic.python","settings":{"foreground":"#00daef"}},{"scope":"constant.character.format.placeholder.other.python","settings":{"foreground":"#ffd493"}},{"scope":"keyword.operator","settings":{"foreground":"#eef0f9"}},{"scope":"keyword.operator.assignment.compound","settings":{"foreground":"#54b9ff"}},{"scope":"keyword.operator.assignment.compound.js,keyword.operator.assignment.compound.ts","settings":{"foreground":"#eef0f9"}},{"scope":"keyword","settings":{"foreground":"#54b9ff"}},{"scope":"entity.name.namespace","settings":{"foreground":"#acafff"}},{"scope":"variable","settings":{"foreground":"#4bf3c8"}},{"scope":"variable.c","settings":{"foreground":"#eef0f9"}},{"scope":"variable.language","settings":{"foreground":"#acafff"}},{"scope":"token.variable.parameter.java","settings":{"foreground":"#eef0f9"}},{"scope":"import.storage.java","settings":{"foreground":"#acafff"}},{"scope":"token.package.keyword","settings":{"foreground":"#54b9ff"}},{"scope":"token.package","settings":{"foreground":"#eef0f9"}},{"scope":["entity.name.function","meta.require","support.function.any-method","variable.function"],"settings":{"foreground":"#00daef"}},{"scope":"entity.name.type.namespace","settings":{"foreground":"#acafff"}},{"scope":"support.class, entity.name.type.class","settings":{"foreground":"#acafff"}},{"scope":"entity.name.class.identifier.namespace.type","settings":{"foreground":"#acafff"}},{"scope":["entity.name.class","variable.other.class.js","variable.other.class.ts"],"settings":{"foreground":"#acafff"}},{"scope":"variable.other.class.php","settings":{"foreground":"#4bf3c8"}},{"scope":"entity.name.type","settings":{"foreground":"#acafff"}},{"scope":"keyword.control","settings":{"foreground":"#54b9ff"}},{"scope":"control.elements, keyword.operator.less","settings":{"foreground":"#ffd493"}},{"scope":"keyword.other.special-method","settings":{"foreground":"#00daef"}},{"scope":"storage","settings":{"foreground":"#54b9ff"}},{"scope":"token.storage","settings":{"foreground":"#54b9ff"}},{"scope":"keyword.operator.expression.delete,keyword.operator.expression.in,keyword.operator.expression.of,keyword.operator.expression.instanceof,keyword.operator.new,keyword.operator.expression.typeof,keyword.operator.expression.void","settings":{"foreground":"#54b9ff"}},{"scope":"token.storage.type.java","settings":{"foreground":"#acafff"}},{"scope":"support.function","settings":{"foreground":"#eef0f9"}},{"scope":"support.type.property-name","settings":{"foreground":"#eef0f9"}},{"scope":"support.constant.property-value","settings":{"foreground":"#eef0f9"}},{"scope":"support.constant.font-name","settings":{"foreground":"#ffd493"}},{"scope":"meta.tag","settings":{"foreground":"#eef0f9"}},{"scope":"string","settings":{"foreground":"#ffd493"}},{"scope":"entity.other.inherited-class","settings":{"foreground":"#acafff"}},{"scope":"constant.other.symbol","settings":{"foreground":"#eef0f9"}},{"scope":"constant.numeric","settings":{"foreground":"#ffd493"}},{"scope":"constant","settings":{"foreground":"#ffd493"}},{"scope":"punctuation.definition.constant","settings":{"foreground":"#ffd493"}},{"scope":"entity.name.tag","settings":{"foreground":"#54b9ff"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#4bf3c8"}},{"scope":"entity.other.attribute-name.html","settings":{"foreground":"#acafff"}},{"scope":"source.astro.meta.attribute.client:idle.html","settings":{"fontStyle":"italic","foreground":"#ffd493"}},{"scope":"string.quoted.double.html,string.quoted.single.html,string.template.html,punctuation.definition.string.begin.html,punctuation.definition.string.end.html","settings":{"foreground":"#4bf3c8"}},{"scope":"entity.other.attribute-name.id","settings":{"fontStyle":"normal","foreground":"#00daef"}},{"scope":"entity.other.attribute-name.class.css","settings":{"fontStyle":"normal","foreground":"#4bf3c8"}},{"scope":"meta.selector","settings":{"foreground":"#54b9ff"}},{"scope":"markup.heading","settings":{"foreground":"#4bf3c8"}},{"scope":"markup.heading punctuation.definition.heading, entity.name.section","settings":{"foreground":"#00daef"}},{"scope":"keyword.other.unit","settings":{"foreground":"#4bf3c8"}},{"scope":"markup.bold,todo.bold","settings":{"foreground":"#ffd493"}},{"scope":"punctuation.definition.bold","settings":{"foreground":"#acafff"}},{"scope":"markup.italic, punctuation.definition.italic,todo.emphasis","settings":{"foreground":"#54b9ff"}},{"scope":"emphasis md","settings":{"foreground":"#54b9ff"}},{"scope":"entity.name.section.markdown","settings":{"foreground":"#4bf3c8"}},{"scope":"punctuation.definition.heading.markdown","settings":{"foreground":"#4bf3c8"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#4bf3c8"}},{"scope":"markup.heading.setext","settings":{"foreground":"#eef0f9"}},{"scope":"punctuation.definition.bold.markdown","settings":{"foreground":"#ffd493"}},{"scope":"markup.inline.raw.markdown","settings":{"foreground":"#ffd493"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#ffd493"}},{"scope":"punctuation.definition.list.markdown","settings":{"foreground":"#4bf3c8"}},{"scope":["punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown","punctuation.definition.metadata.markdown"],"settings":{"foreground":"#4bf3c8"}},{"scope":["beginning.punctuation.definition.list.markdown"],"settings":{"foreground":"#4bf3c8"}},{"scope":"punctuation.definition.metadata.markdown","settings":{"foreground":"#4bf3c8"}},{"scope":"markup.underline.link.markdown,markup.underline.link.image.markdown","settings":{"foreground":"#54b9ff"}},{"scope":"string.other.link.title.markdown,string.other.link.description.markdown","settings":{"foreground":"#00daef"}},{"scope":"string.regexp","settings":{"foreground":"#eef0f9"}},{"scope":"constant.character.escape","settings":{"foreground":"#eef0f9"}},{"scope":"punctuation.section.embedded, variable.interpolation","settings":{"foreground":"#4bf3c8"}},{"scope":"punctuation.section.embedded.begin,punctuation.section.embedded.end","settings":{"foreground":"#54b9ff"}},{"scope":"invalid.illegal","settings":{"foreground":"#ffffff"}},{"scope":"invalid.illegal.bad-ampersand.html","settings":{"foreground":"#eef0f9"}},{"scope":"invalid.broken","settings":{"foreground":"#ffffff"}},{"scope":"invalid.deprecated","settings":{"foreground":"#ffffff"}},{"scope":"invalid.unimplemented","settings":{"foreground":"#ffffff"}},{"scope":"source.json meta.structure.dictionary.json > string.quoted.json","settings":{"foreground":"#cc75f4"}},{"scope":"source.json meta.structure.dictionary.json > string.quoted.json > punctuation.string","settings":{"foreground":"#4bf3c8"}},{"scope":"source.json meta.structure.dictionary.json > value.json > string.quoted.json,source.json meta.structure.array.json > value.json > string.quoted.json,source.json meta.structure.dictionary.json > value.json > string.quoted.json > punctuation,source.json meta.structure.array.json > value.json > string.quoted.json > punctuation","settings":{"foreground":"#ffd493"}},{"scope":"source.json meta.structure.dictionary.json > constant.language.json,source.json meta.structure.array.json > constant.language.json","settings":{"foreground":"#eef0f9"}},{"scope":"support.type.property-name.json","settings":{"foreground":"#4bf3c8"}},{"scope":"support.type.property-name.json punctuation","settings":{"foreground":"#4bf3c8"}},{"scope":"text.html.laravel-blade source.php.embedded.line.html entity.name.tag.laravel-blade","settings":{"foreground":"#54b9ff"}},{"scope":"text.html.laravel-blade source.php.embedded.line.html support.constant.laravel-blade","settings":{"foreground":"#54b9ff"}},{"scope":"support.other.namespace.use.php,support.other.namespace.use-as.php,support.other.namespace.php,entity.other.alias.php,meta.interface.php","settings":{"foreground":"#acafff"}},{"scope":"keyword.operator.error-control.php","settings":{"foreground":"#54b9ff"}},{"scope":"keyword.operator.type.php","settings":{"foreground":"#54b9ff"}},{"scope":"punctuation.section.array.begin.php","settings":{"foreground":"#eef0f9"}},{"scope":"punctuation.section.array.end.php","settings":{"foreground":"#eef0f9"}},{"scope":"invalid.illegal.non-null-typehinted.php","settings":{"foreground":"#f44747"}},{"scope":"storage.type.php,meta.other.type.phpdoc.php,keyword.other.type.php,keyword.other.array.phpdoc.php","settings":{"foreground":"#acafff"}},{"scope":"meta.function-call.php,meta.function-call.object.php,meta.function-call.static.php","settings":{"foreground":"#00daef"}},{"scope":"punctuation.definition.parameters.begin.bracket.round.php,punctuation.definition.parameters.end.bracket.round.php,punctuation.separator.delimiter.php,punctuation.section.scope.begin.php,punctuation.section.scope.end.php,punctuation.terminator.expression.php,punctuation.definition.arguments.begin.bracket.round.php,punctuation.definition.arguments.end.bracket.round.php,punctuation.definition.storage-type.begin.bracket.round.php,punctuation.definition.storage-type.end.bracket.round.php,punctuation.definition.array.begin.bracket.round.php,punctuation.definition.array.end.bracket.round.php,punctuation.definition.begin.bracket.round.php,punctuation.definition.end.bracket.round.php,punctuation.definition.begin.bracket.curly.php,punctuation.definition.end.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php,punctuation.definition.section.switch-block.start.bracket.curly.php,punctuation.definition.section.switch-block.begin.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php","settings":{"foreground":"#eef0f9"}},{"scope":"support.constant.core.rust","settings":{"foreground":"#ffd493"}},{"scope":"support.constant.ext.php,support.constant.std.php,support.constant.core.php,support.constant.parser-token.php","settings":{"foreground":"#ffd493"}},{"scope":"entity.name.goto-label.php,support.other.php","settings":{"foreground":"#00daef"}},{"scope":"keyword.operator.logical.php,keyword.operator.bitwise.php,keyword.operator.arithmetic.php","settings":{"foreground":"#eef0f9"}},{"scope":"keyword.operator.regexp.php","settings":{"foreground":"#54b9ff"}},{"scope":"keyword.operator.comparison.php","settings":{"foreground":"#eef0f9"}},{"scope":"keyword.operator.heredoc.php,keyword.operator.nowdoc.php","settings":{"foreground":"#54b9ff"}},{"scope":"meta.function.decorator.python","settings":{"foreground":"#00daef"}},{"scope":"support.token.decorator.python,meta.function.decorator.identifier.python","settings":{"foreground":"#eef0f9"}},{"scope":"function.parameter","settings":{"foreground":"#eef0f9"}},{"scope":"function.brace","settings":{"foreground":"#eef0f9"}},{"scope":"function.parameter.ruby, function.parameter.cs","settings":{"foreground":"#eef0f9"}},{"scope":"constant.language.symbol.ruby","settings":{"foreground":"#eef0f9"}},{"scope":"rgb-value","settings":{"foreground":"#eef0f9"}},{"scope":"inline-color-decoration rgb-value","settings":{"foreground":"#ffd493"}},{"scope":"less rgb-value","settings":{"foreground":"#ffd493"}},{"scope":"selector.sass","settings":{"foreground":"#4bf3c8"}},{"scope":"support.type.primitive.ts,support.type.builtin.ts,support.type.primitive.tsx,support.type.builtin.tsx","settings":{"foreground":"#acafff"}},{"scope":"block.scope.end,block.scope.begin","settings":{"foreground":"#eef0f9"}},{"scope":"storage.type.cs","settings":{"foreground":"#acafff"}},{"scope":"entity.name.variable.local.cs","settings":{"foreground":"#4bf3c8"}},{"scope":"token.info-token","settings":{"foreground":"#00daef"}},{"scope":"token.warn-token","settings":{"foreground":"#ffd493"}},{"scope":"token.error-token","settings":{"foreground":"#f44747"}},{"scope":"token.debug-token","settings":{"foreground":"#54b9ff"}},{"scope":["punctuation.definition.template-expression.begin","punctuation.definition.template-expression.end","punctuation.section.embedded"],"settings":{"foreground":"#54b9ff"}},{"scope":["meta.template.expression"],"settings":{"foreground":"#eef0f9"}},{"scope":["keyword.operator.module"],"settings":{"foreground":"#54b9ff"}},{"scope":["support.type.type.flowtype"],"settings":{"foreground":"#00daef"}},{"scope":["support.type.primitive"],"settings":{"foreground":"#acafff"}},{"scope":["meta.property.object"],"settings":{"foreground":"#4bf3c8"}},{"scope":["variable.parameter.function.js"],"settings":{"foreground":"#4bf3c8"}},{"scope":["keyword.other.template.begin"],"settings":{"foreground":"#ffd493"}},{"scope":["keyword.other.template.end"],"settings":{"foreground":"#ffd493"}},{"scope":["keyword.other.substitution.begin"],"settings":{"foreground":"#ffd493"}},{"scope":["keyword.other.substitution.end"],"settings":{"foreground":"#ffd493"}},{"scope":["keyword.operator.assignment"],"settings":{"foreground":"#eef0f9"}},{"scope":["keyword.operator.assignment.go"],"settings":{"foreground":"#acafff"}},{"scope":["keyword.operator.arithmetic.go","keyword.operator.address.go"],"settings":{"foreground":"#54b9ff"}},{"scope":["entity.name.package.go"],"settings":{"foreground":"#acafff"}},{"scope":["support.type.prelude.elm"],"settings":{"foreground":"#eef0f9"}},{"scope":["support.constant.elm"],"settings":{"foreground":"#ffd493"}},{"scope":["punctuation.quasi.element"],"settings":{"foreground":"#54b9ff"}},{"scope":["constant.character.entity"],"settings":{"foreground":"#4bf3c8"}},{"scope":["entity.other.attribute-name.pseudo-element","entity.other.attribute-name.pseudo-class"],"settings":{"foreground":"#eef0f9"}},{"scope":["entity.global.clojure"],"settings":{"foreground":"#acafff"}},{"scope":["meta.symbol.clojure"],"settings":{"foreground":"#4bf3c8"}},{"scope":["constant.keyword.clojure"],"settings":{"foreground":"#eef0f9"}},{"scope":["meta.arguments.coffee","variable.parameter.function.coffee"],"settings":{"foreground":"#4bf3c8"}},{"scope":["source.ini"],"settings":{"foreground":"#ffd493"}},{"scope":["meta.scope.prerequisites.makefile"],"settings":{"foreground":"#4bf3c8"}},{"scope":["source.makefile"],"settings":{"foreground":"#acafff"}},{"scope":["storage.modifier.import.groovy"],"settings":{"foreground":"#acafff"}},{"scope":["meta.method.groovy"],"settings":{"foreground":"#00daef"}},{"scope":["meta.definition.variable.name.groovy"],"settings":{"foreground":"#4bf3c8"}},{"scope":["meta.definition.class.inherited.classes.groovy"],"settings":{"foreground":"#ffd493"}},{"scope":["support.variable.semantic.hlsl"],"settings":{"foreground":"#acafff"}},{"scope":["support.type.texture.hlsl","support.type.sampler.hlsl","support.type.object.hlsl","support.type.object.rw.hlsl","support.type.fx.hlsl","support.type.object.hlsl"],"settings":{"foreground":"#54b9ff"}},{"scope":["text.variable","text.bracketed"],"settings":{"foreground":"#4bf3c8"}},{"scope":["support.type.swift","support.type.vb.asp"],"settings":{"foreground":"#acafff"}},{"scope":["entity.name.function.xi"],"settings":{"foreground":"#acafff"}},{"scope":["entity.name.class.xi"],"settings":{"foreground":"#eef0f9"}},{"scope":["constant.character.character-class.regexp.xi"],"settings":{"foreground":"#4bf3c8"}},{"scope":["constant.regexp.xi"],"settings":{"foreground":"#54b9ff"}},{"scope":["keyword.control.xi"],"settings":{"foreground":"#eef0f9"}},{"scope":["invalid.xi"],"settings":{"foreground":"#eef0f9"}},{"scope":["beginning.punctuation.definition.quote.markdown.xi"],"settings":{"foreground":"#ffd493"}},{"scope":["beginning.punctuation.definition.list.markdown.xi"],"settings":{"foreground":"#eef0f98f"}},{"scope":["constant.character.xi"],"settings":{"foreground":"#00daef"}},{"scope":["accent.xi"],"settings":{"foreground":"#00daef"}},{"scope":["wikiword.xi"],"settings":{"foreground":"#ffd493"}},{"scope":["constant.other.color.rgb-value.xi"],"settings":{"foreground":"#ffffff"}},{"scope":["punctuation.definition.tag.xi"],"settings":{"foreground":"#545864"}},{"scope":["entity.name.label.cs","entity.name.scope-resolution.function.call","entity.name.scope-resolution.function.definition"],"settings":{"foreground":"#acafff"}},{"scope":["entity.name.label.cs","markup.heading.setext.1.markdown","markup.heading.setext.2.markdown"],"settings":{"foreground":"#4bf3c8"}},{"scope":[" meta.brace.square"],"settings":{"foreground":"#eef0f9"}},{"scope":"comment, punctuation.definition.comment","settings":{"fontStyle":"italic","foreground":"#eef0f98f"}},{"scope":"markup.quote.markdown","settings":{"foreground":"#eef0f98f"}},{"scope":"punctuation.definition.block.sequence.item.yaml","settings":{"foreground":"#eef0f9"}},{"scope":["constant.language.symbol.elixir"],"settings":{"foreground":"#eef0f9"}},{"scope":"entity.other.attribute-name.js,entity.other.attribute-name.ts,entity.other.attribute-name.jsx,entity.other.attribute-name.tsx,variable.parameter,variable.language.super","settings":{"fontStyle":"italic"}},{"scope":"comment.line.double-slash,comment.block.documentation","settings":{"fontStyle":"italic"}},{"scope":"keyword.control.import.python,keyword.control.flow.python","settings":{"fontStyle":"italic"}},{"scope":"markup.italic.markdown","settings":{"fontStyle":"italic"}}],"type":"dark"}'))});var QM={};x(QM,{default:()=>cce});var cce,IM=_(()=>{cce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#282727","activityBar.foreground":"#C5C9C5","activityBarBadge.background":"#658594","activityBarBadge.foreground":"#C5C9C5","badge.background":"#282727","button.background":"#282727","button.foreground":"#C8C093","button.secondaryBackground":"#223249","button.secondaryForeground":"#C5C9C5","checkbox.border":"#223249","debugToolBar.background":"#0D0C0C","descriptionForeground":"#C5C9C5","diffEditor.insertedTextBackground":"#2B332880","dropdown.background":"#0D0C0C","dropdown.border":"#0D0C0C","editor.background":"#181616","editor.findMatchBackground":"#2D4F67","editor.findMatchBorder":"#FF9E3B","editor.findMatchHighlightBackground":"#2D4F6780","editor.foreground":"#C5C9C5","editor.lineHighlightBackground":"#393836","editor.selectionBackground":"#223249","editor.selectionHighlightBackground":"#39383680","editor.selectionHighlightBorder":"#625E5A","editor.wordHighlightBackground":"#3938364D","editor.wordHighlightBorder":"#625E5A","editor.wordHighlightStrongBackground":"#3938364D","editor.wordHighlightStrongBorder":"#625E5A","editorBracketHighlight.foreground1":"#8992A7","editorBracketHighlight.foreground2":"#B6927B","editorBracketHighlight.foreground3":"#8BA4B0","editorBracketHighlight.foreground4":"#A292A3","editorBracketHighlight.foreground5":"#C4B28A","editorBracketHighlight.foreground6":"#8EA4A2","editorBracketHighlight.unexpectedBracket.foreground":"#C4746E","editorBracketMatch.background":"#0D0C0C","editorBracketMatch.border":"#625E5A","editorBracketPairGuide.activeBackground1":"#8992A7","editorBracketPairGuide.activeBackground2":"#B6927B","editorBracketPairGuide.activeBackground3":"#8BA4B0","editorBracketPairGuide.activeBackground4":"#A292A3","editorBracketPairGuide.activeBackground5":"#C4B28A","editorBracketPairGuide.activeBackground6":"#8EA4A2","editorCursor.background":"#181616","editorCursor.foreground":"#C5C9C5","editorError.foreground":"#E82424","editorGroup.border":"#0D0C0C","editorGroupHeader.tabsBackground":"#0D0C0C","editorGutter.addedBackground":"#76946A","editorGutter.deletedBackground":"#C34043","editorGutter.modifiedBackground":"#DCA561","editorHoverWidget.background":"#181616","editorHoverWidget.border":"#282727","editorHoverWidget.highlightForeground":"#658594","editorIndentGuide.activeBackground1":"#393836","editorIndentGuide.background1":"#282727","editorInlayHint.background":"#181616","editorInlayHint.foreground":"#737C73","editorLineNumber.activeForeground":"#FFA066","editorLineNumber.foreground":"#625E5A","editorMarkerNavigation.background":"#393836","editorRuler.foreground":"#393836","editorSuggestWidget.background":"#223249","editorSuggestWidget.border":"#223249","editorSuggestWidget.selectedBackground":"#2D4F67","editorWarning.foreground":"#FF9E3B","editorWhitespace.foreground":"#181616","editorWidget.background":"#181616","focusBorder":"#223249","foreground":"#C5C9C5","gitDecoration.ignoredResourceForeground":"#737C73","input.background":"#0D0C0C","list.activeSelectionBackground":"#393836","list.activeSelectionForeground":"#C5C9C5","list.focusBackground":"#282727","list.focusForeground":"#C5C9C5","list.highlightForeground":"#8BA4B0","list.hoverBackground":"#393836","list.hoverForeground":"#C5C9C5","list.inactiveSelectionBackground":"#282727","list.inactiveSelectionForeground":"#C5C9C5","list.warningForeground":"#FF9E3B","menu.background":"#393836","menu.border":"#0D0C0C","menu.foreground":"#C5C9C5","menu.selectionBackground":"#0D0C0C","menu.selectionForeground":"#C5C9C5","menu.separatorBackground":"#625E5A","menubar.selectionBackground":"#0D0C0C","menubar.selectionForeground":"#C5C9C5","minimapGutter.addedBackground":"#76946A","minimapGutter.deletedBackground":"#C34043","minimapGutter.modifiedBackground":"#DCA561","panel.border":"#0D0C0C","panelSectionHeader.background":"#181616","peekView.border":"#625E5A","peekViewEditor.background":"#282727","peekViewEditor.matchHighlightBackground":"#2D4F67","peekViewResult.background":"#393836","scrollbar.shadow":"#393836","scrollbarSlider.activeBackground":"#28272780","scrollbarSlider.background":"#625E5A66","scrollbarSlider.hoverBackground":"#625E5A80","settings.focusedRowBackground":"#393836","settings.headerForeground":"#C5C9C5","sideBar.background":"#181616","sideBar.border":"#0D0C0C","sideBar.foreground":"#C5C9C5","sideBarSectionHeader.background":"#393836","sideBarSectionHeader.foreground":"#C5C9C5","statusBar.background":"#0D0C0C","statusBar.debuggingBackground":"#E82424","statusBar.debuggingBorder":"#8992A7","statusBar.debuggingForeground":"#C5C9C5","statusBar.foreground":"#C8C093","statusBar.noFolderBackground":"#181616","statusBarItem.hoverBackground":"#393836","statusBarItem.remoteBackground":"#2D4F67","statusBarItem.remoteForeground":"#C5C9C5","tab.activeBackground":"#282727","tab.activeForeground":"#8BA4B0","tab.border":"#282727","tab.hoverBackground":"#393836","tab.inactiveBackground":"#1D1C19","tab.unfocusedHoverBackground":"#181616","terminal.ansiBlack":"#0D0C0C","terminal.ansiBlue":"#8BA4B0","terminal.ansiBrightBlack":"#A6A69C","terminal.ansiBrightBlue":"#7FB4CA","terminal.ansiBrightCyan":"#7AA89F","terminal.ansiBrightGreen":"#87A987","terminal.ansiBrightMagenta":"#938AA9","terminal.ansiBrightRed":"#E46876","terminal.ansiBrightWhite":"#C5C9C5","terminal.ansiBrightYellow":"#E6C384","terminal.ansiCyan":"#8EA4A2","terminal.ansiGreen":"#8A9A7B","terminal.ansiMagenta":"#A292A3","terminal.ansiRed":"#C4746E","terminal.ansiWhite":"#C8C093","terminal.ansiYellow":"#C4B28A","terminal.background":"#181616","terminal.border":"#0D0C0C","terminal.foreground":"#C5C9C5","terminal.selectionBackground":"#223249","textBlockQuote.background":"#181616","textBlockQuote.border":"#0D0C0C","textLink.foreground":"#6A9589","textPreformat.foreground":"#FF9E3B","titleBar.activeBackground":"#393836","titleBar.activeForeground":"#C5C9C5","titleBar.inactiveBackground":"#181616","titleBar.inactiveForeground":"#C5C9C5","walkThrough.embeddedEditorBackground":"#181616"},"displayName":"Kanagawa Dragon","name":"kanagawa-dragon","semanticHighlighting":true,"semanticTokenColors":{"arithmetic":"#B98D7B","function":"#8BA4B0","keyword.controlFlow":{"fontStyle":"bold","foreground":"#8992A7"},"macro":"#C4746E","method":"#949FB5","operator":"#B98D7B","parameter":"#A6A69C","parameter.declaration":"#A6A69C","parameter.definition":"#A6A69C","variable":"#C5C9C5","variable.readonly":"#C5C9C5","variable.readonly.defaultLibrary":"#C5C9C5","variable.readonly.local":"#C5C9C5"},"tokenColors":[{"scope":["comment","punctuation.definition.comment"],"settings":{"foreground":"#737C73"}},{"scope":["variable","string constant.other.placeholder"],"settings":{"foreground":"#C5C9C5"}},{"scope":["constant.other.color"],"settings":{"foreground":"#B6927B"}},{"scope":["invalid","invalid.illegal"],"settings":{"foreground":"#E82424"}},{"scope":["storage.type"],"settings":{"foreground":"#8992A7"}},{"scope":["storage.modifier"],"settings":{"foreground":"#8992A7"}},{"scope":["keyword.control.flow","keyword.control.conditional","keyword.control.loop"],"settings":{"fontStyle":"bold","foreground":"#8992A7"}},{"scope":["keyword.control","constant.other.color","meta.tag","keyword.other.template","keyword.other.substitution","keyword.other"],"settings":{"foreground":"#8992A7"}},{"scope":["keyword.other.definition.ini"],"settings":{"foreground":"#B6927B"}},{"scope":["keyword.control.trycatch"],"settings":{"fontStyle":"bold","foreground":"#C4746E"}},{"scope":["keyword.other.unit","keyword.operator"],"settings":{"foreground":"#C4B28A"}},{"scope":["punctuation","punctuation.definition.tag","punctuation.separator.inheritance.php","punctuation.definition.tag.html","punctuation.definition.tag.begin.html","punctuation.definition.tag.end.html","punctuation.section.embedded","meta.brace","keyword.operator.type.annotation","keyword.operator.namespace"],"settings":{"foreground":"#9E9B93"}},{"scope":["entity.name.tag","meta.tag.sgml"],"settings":{"foreground":"#C4B28A"}},{"scope":["entity.name.function","meta.function-call","variable.function","support.function"],"settings":{"foreground":"#8BA4B0"}},{"scope":["keyword.other.special-method"],"settings":{"foreground":"#949FB5"}},{"scope":["entity.name.function.macro"],"settings":{"foreground":"#C4746E"}},{"scope":["meta.block variable.other"],"settings":{"foreground":"#C5C9C5"}},{"scope":["variable.other.enummember"],"settings":{"foreground":"#B6927B"}},{"scope":["support.other.variable"],"settings":{"foreground":"#C5C9C5"}},{"scope":["string.other.link"],"settings":{"foreground":"#949FB5"}},{"scope":["constant.numeric","constant.language","support.constant","constant.character","constant.escape"],"settings":{"foreground":"#B6927B"}},{"scope":["constant.language.boolean"],"settings":{"foreground":"#B6927B"}},{"scope":["constant.numeric"],"settings":{"foreground":"#A292A3"}},{"scope":["string","punctuation.definition.string","constant.other.symbol","constant.other.key","entity.other.inherited-class","markup.heading","markup.inserted.git_gutter","meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js","markup.inline.raw.string"],"settings":{"foreground":"#8A9A7B"}},{"scope":["entity.name","support.type","support.class","support.other.namespace.use.php","meta.use.php","support.other.namespace.php","support.type.sys-types"],"settings":{"foreground":"#8EA4A2"}},{"scope":["entity.name.type.module","entity.name.namespace"],"settings":{"foreground":"#C4B28A"}},{"scope":["entity.name.import.go"],"settings":{"foreground":"#8A9A7B"}},{"scope":["keyword.blade"],"settings":{"foreground":"#8992A7"}},{"scope":["variable.other.property"],"settings":{"foreground":"#C4B28A"}},{"scope":["keyword.control.import","keyword.import","meta.import"],"settings":{"foreground":"#B6927B"}},{"scope":["source.css support.type.property-name","source.sass support.type.property-name","source.scss support.type.property-name","source.less support.type.property-name","source.stylus support.type.property-name","source.postcss support.type.property-name"],"settings":{"foreground":"#8EA4A2"}},{"scope":["entity.name.module.js","variable.import.parameter.js","variable.other.class.js"],"settings":{"foreground":"#C4746E"}},{"scope":["variable.language"],"settings":{"foreground":"#C4746E"}},{"scope":["entity.name.method.js"],"settings":{"foreground":"#949FB5"}},{"scope":["meta.class-method.js entity.name.function.js","variable.function.constructor"],"settings":{"foreground":"#949FB5"}},{"scope":["entity.other.attribute-name"],"settings":{"foreground":"#8992A7"}},{"scope":["entity.other.attribute-name.class"],"settings":{"foreground":"#C4B28A"}},{"scope":["source.sass keyword.control"],"settings":{"foreground":"#949FB5"}},{"scope":["markup.inserted"],"settings":{"foreground":"#76946A"}},{"scope":["markup.deleted"],"settings":{"foreground":"#C34043"}},{"scope":["markup.changed"],"settings":{"foreground":"#DCA561"}},{"scope":["string.regexp"],"settings":{"foreground":"#B98D7B"}},{"scope":["constant.character.escape"],"settings":{"foreground":"#949FB5"}},{"scope":["*url*","*link*","*uri*"],"settings":{"fontStyle":"underline"}},{"scope":["tag.decorator.js entity.name.tag.js","tag.decorator.js punctuation.definition.tag.js"],"settings":{"foreground":"#8992A7"}},{"scope":["source.js constant.other.object.key.js string.unquoted.label.js"],"settings":{"foreground":"#C4746E"}},{"scope":["source.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#A292A3"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C4B28A"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#B6927B"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C4746E"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#B6927B"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#8BA4B0"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#A292A3"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#8992A7"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#8A9A7B"}},{"scope":["meta.tag JSXNested","meta.jsx.children","text.html","text.log"],"settings":{"foreground":"#C5C9C5"}},{"scope":["text.html.markdown","punctuation.definition.list_item.markdown"],"settings":{"foreground":"#C5C9C5"}},{"scope":["text.html.markdown markup.inline.raw.markdown"],"settings":{"foreground":"#8992A7"}},{"scope":["text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown"],"settings":{"foreground":"#8992A7"}},{"scope":["markdown.heading","entity.name.section.markdown","markup.heading.markdown"],"settings":{"foreground":"#8BA4B0"}},{"scope":["markup.italic"],"settings":{"fontStyle":"italic","foreground":"#C4746E"}},{"scope":["markup.bold","markup.bold string"],"settings":{"fontStyle":"bold"}},{"scope":["markup.bold markup.italic","markup.italic markup.bold","markup.quote markup.bold","markup.bold markup.italic string","markup.italic markup.bold string","markup.quote markup.bold string"],"settings":{"fontStyle":"bold","foreground":"#C4746E"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline","foreground":"#949FB5"}},{"scope":["markup.quote punctuation.definition.blockquote.markdown"],"settings":{"foreground":"#737C73"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic"}},{"scope":["string.other.link.title.markdown"],"settings":{"foreground":"#B6927B"}},{"scope":["string.other.link.description.title.markdown"],"settings":{"foreground":"#8992A7"}},{"scope":["constant.other.reference.link.markdown"],"settings":{"foreground":"#C4B28A"}},{"scope":["markup.raw.block"],"settings":{"foreground":"#8992A7"}},{"scope":["markup.raw.block.fenced.markdown"],"settings":{"foreground":"#737C73"}},{"scope":["punctuation.definition.fenced.markdown"],"settings":{"foreground":"#737C73"}},{"scope":["markup.raw.block.fenced.markdown","variable.language.fenced.markdown","punctuation.section.class.end"],"settings":{"foreground":"#C5C9C5"}},{"scope":["variable.language.fenced.markdown"],"settings":{"foreground":"#737C73"}},{"scope":["meta.separator"],"settings":{"fontStyle":"bold","foreground":"#9E9B93"}},{"scope":["markup.table"],"settings":{"foreground":"#C5C9C5"}}],"type":"dark"}'))});var DM={};x(DM,{default:()=>lce});var lce,FM=_(()=>{lce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#E7DBA0","activityBar.foreground":"#545464","activityBarBadge.background":"#5A7785","activityBarBadge.foreground":"#545464","badge.background":"#E7DBA0","button.background":"#E7DBA0","button.foreground":"#43436C","button.secondaryBackground":"#C7D7E0","button.secondaryForeground":"#545464","checkbox.border":"#C7D7E0","debugToolBar.background":"#D5CEA3","descriptionForeground":"#545464","diffEditor.insertedTextBackground":"#B7D0AE80","dropdown.background":"#D5CEA3","dropdown.border":"#D5CEA3","editor.background":"#F2ECBC","editor.findMatchBackground":"#B5CBD2","editor.findMatchBorder":"#E98A00","editor.findMatchHighlightBackground":"#B5CBD280","editor.foreground":"#545464","editor.lineHighlightBackground":"#E4D794","editor.selectionBackground":"#C7D7E0","editor.selectionHighlightBackground":"#E4D79480","editor.selectionHighlightBorder":"#766B90","editor.wordHighlightBackground":"#E4D7944D","editor.wordHighlightBorder":"#766B90","editor.wordHighlightStrongBackground":"#E4D7944D","editor.wordHighlightStrongBorder":"#766B90","editorBracketHighlight.foreground1":"#624C83","editorBracketHighlight.foreground2":"#CC6D00","editorBracketHighlight.foreground3":"#4D699B","editorBracketHighlight.foreground4":"#B35B79","editorBracketHighlight.foreground5":"#77713F","editorBracketHighlight.foreground6":"#597B75","editorBracketHighlight.unexpectedBracket.foreground":"#D9A594","editorBracketMatch.background":"#D5CEA3","editorBracketMatch.border":"#766B90","editorBracketPairGuide.activeBackground1":"#624C83","editorBracketPairGuide.activeBackground2":"#CC6D00","editorBracketPairGuide.activeBackground3":"#4D699B","editorBracketPairGuide.activeBackground4":"#B35B79","editorBracketPairGuide.activeBackground5":"#77713F","editorBracketPairGuide.activeBackground6":"#597B75","editorCursor.background":"#F2ECBC","editorCursor.foreground":"#545464","editorError.foreground":"#E82424","editorGroup.border":"#D5CEA3","editorGroupHeader.tabsBackground":"#D5CEA3","editorGutter.addedBackground":"#6E915F","editorGutter.deletedBackground":"#D7474B","editorGutter.modifiedBackground":"#DE9800","editorHoverWidget.background":"#F2ECBC","editorHoverWidget.border":"#E7DBA0","editorHoverWidget.highlightForeground":"#5A7785","editorIndentGuide.activeBackground1":"#E4D794","editorIndentGuide.background1":"#E7DBA0","editorInlayHint.background":"#F2ECBC","editorInlayHint.foreground":"#716E61","editorLineNumber.activeForeground":"#CC6D00","editorLineNumber.foreground":"#766B90","editorMarkerNavigation.background":"#E4D794","editorRuler.foreground":"#ff0000","editorSuggestWidget.background":"#C7D7E0","editorSuggestWidget.border":"#C7D7E0","editorSuggestWidget.selectedBackground":"#B5CBD2","editorWarning.foreground":"#E98A00","editorWhitespace.foreground":"#F2ECBC","editorWidget.background":"#F2ECBC","focusBorder":"#C7D7E0","foreground":"#545464","gitDecoration.ignoredResourceForeground":"#716E61","input.background":"#D5CEA3","list.activeSelectionBackground":"#E4D794","list.activeSelectionForeground":"#545464","list.focusBackground":"#E7DBA0","list.focusForeground":"#545464","list.highlightForeground":"#4D699B","list.hoverBackground":"#E4D794","list.hoverForeground":"#545464","list.inactiveSelectionBackground":"#E7DBA0","list.inactiveSelectionForeground":"#545464","list.warningForeground":"#E98A00","menu.background":"#E4D794","menu.border":"#D5CEA3","menu.foreground":"#545464","menu.selectionBackground":"#D5CEA3","menu.selectionForeground":"#545464","menu.separatorBackground":"#766B90","menubar.selectionBackground":"#D5CEA3","menubar.selectionForeground":"#545464","minimapGutter.addedBackground":"#6E915F","minimapGutter.deletedBackground":"#D7474B","minimapGutter.modifiedBackground":"#DE9800","panel.border":"#D5CEA3","panelSectionHeader.background":"#F2ECBC","peekView.border":"#766B90","peekViewEditor.background":"#E7DBA0","peekViewEditor.matchHighlightBackground":"#B5CBD2","peekViewResult.background":"#E4D794","scrollbar.shadow":"#E4D794","scrollbarSlider.activeBackground":"#E7DBA080","scrollbarSlider.background":"#766B9066","scrollbarSlider.hoverBackground":"#766B9080","settings.focusedRowBackground":"#E4D794","settings.headerForeground":"#545464","sideBar.background":"#F2ECBC","sideBar.border":"#D5CEA3","sideBar.foreground":"#545464","sideBarSectionHeader.background":"#E4D794","sideBarSectionHeader.foreground":"#545464","statusBar.background":"#D5CEA3","statusBar.debuggingBackground":"#E82424","statusBar.debuggingBorder":"#624C83","statusBar.debuggingForeground":"#545464","statusBar.foreground":"#43436C","statusBar.noFolderBackground":"#F2ECBC","statusBarItem.hoverBackground":"#E4D794","statusBarItem.remoteBackground":"#B5CBD2","statusBarItem.remoteForeground":"#545464","tab.activeBackground":"#E7DBA0","tab.activeForeground":"#4D699B","tab.border":"#E7DBA0","tab.hoverBackground":"#E4D794","tab.inactiveBackground":"#E5DDB0","tab.unfocusedHoverBackground":"#F2ECBC","terminal.ansiBlack":"#1F1F28","terminal.ansiBlue":"#4D699B","terminal.ansiBrightBlack":"#8A8980","terminal.ansiBrightBlue":"#6693BF","terminal.ansiBrightCyan":"#5E857A","terminal.ansiBrightGreen":"#6E915F","terminal.ansiBrightMagenta":"#624C83","terminal.ansiBrightRed":"#D7474B","terminal.ansiBrightWhite":"#43436C","terminal.ansiBrightYellow":"#836F4A","terminal.ansiCyan":"#597B75","terminal.ansiGreen":"#6F894E","terminal.ansiMagenta":"#B35B79","terminal.ansiRed":"#C84053","terminal.ansiWhite":"#545464","terminal.ansiYellow":"#77713F","terminal.background":"#F2ECBC","terminal.border":"#D5CEA3","terminal.foreground":"#545464","terminal.selectionBackground":"#C7D7E0","textBlockQuote.background":"#F2ECBC","textBlockQuote.border":"#D5CEA3","textLink.foreground":"#5E857A","textPreformat.foreground":"#E98A00","titleBar.activeBackground":"#E4D794","titleBar.activeForeground":"#545464","titleBar.inactiveBackground":"#F2ECBC","titleBar.inactiveForeground":"#545464","walkThrough.embeddedEditorBackground":"#F2ECBC"},"displayName":"Kanagawa Lotus","name":"kanagawa-lotus","semanticHighlighting":true,"semanticTokenColors":{"arithmetic":"#836F4A","function":"#4D699B","keyword.controlFlow":{"fontStyle":"bold","foreground":"#624C83"},"macro":"#C84053","method":"#6693BF","operator":"#836F4A","parameter":"#5D57A3","parameter.declaration":"#5D57A3","parameter.definition":"#5D57A3","variable":"#545464","variable.readonly":"#545464","variable.readonly.defaultLibrary":"#545464","variable.readonly.local":"#545464"},"tokenColors":[{"scope":["comment","punctuation.definition.comment"],"settings":{"foreground":"#716E61"}},{"scope":["variable","string constant.other.placeholder"],"settings":{"foreground":"#545464"}},{"scope":["constant.other.color"],"settings":{"foreground":"#CC6D00"}},{"scope":["invalid","invalid.illegal"],"settings":{"foreground":"#E82424"}},{"scope":["storage.type"],"settings":{"foreground":"#624C83"}},{"scope":["storage.modifier"],"settings":{"foreground":"#624C83"}},{"scope":["keyword.control.flow","keyword.control.conditional","keyword.control.loop"],"settings":{"fontStyle":"bold","foreground":"#624C83"}},{"scope":["keyword.control","constant.other.color","meta.tag","keyword.other.template","keyword.other.substitution","keyword.other"],"settings":{"foreground":"#624C83"}},{"scope":["keyword.other.definition.ini"],"settings":{"foreground":"#CC6D00"}},{"scope":["keyword.control.trycatch"],"settings":{"fontStyle":"bold","foreground":"#D9A594"}},{"scope":["keyword.other.unit","keyword.operator"],"settings":{"foreground":"#77713F"}},{"scope":["punctuation","punctuation.definition.tag","punctuation.separator.inheritance.php","punctuation.definition.tag.html","punctuation.definition.tag.begin.html","punctuation.definition.tag.end.html","punctuation.section.embedded","meta.brace","keyword.operator.type.annotation","keyword.operator.namespace"],"settings":{"foreground":"#4E8CA2"}},{"scope":["entity.name.tag","meta.tag.sgml"],"settings":{"foreground":"#77713F"}},{"scope":["entity.name.function","meta.function-call","variable.function","support.function"],"settings":{"foreground":"#4D699B"}},{"scope":["keyword.other.special-method"],"settings":{"foreground":"#6693BF"}},{"scope":["entity.name.function.macro"],"settings":{"foreground":"#C84053"}},{"scope":["meta.block variable.other"],"settings":{"foreground":"#545464"}},{"scope":["variable.other.enummember"],"settings":{"foreground":"#CC6D00"}},{"scope":["support.other.variable"],"settings":{"foreground":"#545464"}},{"scope":["string.other.link"],"settings":{"foreground":"#6693BF"}},{"scope":["constant.numeric","constant.language","support.constant","constant.character","constant.escape"],"settings":{"foreground":"#CC6D00"}},{"scope":["constant.language.boolean"],"settings":{"foreground":"#CC6D00"}},{"scope":["constant.numeric"],"settings":{"foreground":"#B35B79"}},{"scope":["string","punctuation.definition.string","constant.other.symbol","constant.other.key","entity.other.inherited-class","markup.heading","markup.inserted.git_gutter","meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js","markup.inline.raw.string"],"settings":{"foreground":"#6F894E"}},{"scope":["entity.name","support.type","support.class","support.other.namespace.use.php","meta.use.php","support.other.namespace.php","support.type.sys-types"],"settings":{"foreground":"#597B75"}},{"scope":["entity.name.type.module","entity.name.namespace"],"settings":{"foreground":"#77713F"}},{"scope":["entity.name.import.go"],"settings":{"foreground":"#6F894E"}},{"scope":["keyword.blade"],"settings":{"foreground":"#624C83"}},{"scope":["variable.other.property"],"settings":{"foreground":"#77713F"}},{"scope":["keyword.control.import","keyword.import","meta.import"],"settings":{"foreground":"#CC6D00"}},{"scope":["source.css support.type.property-name","source.sass support.type.property-name","source.scss support.type.property-name","source.less support.type.property-name","source.stylus support.type.property-name","source.postcss support.type.property-name"],"settings":{"foreground":"#597B75"}},{"scope":["entity.name.module.js","variable.import.parameter.js","variable.other.class.js"],"settings":{"foreground":"#D9A594"}},{"scope":["variable.language"],"settings":{"foreground":"#D9A594"}},{"scope":["entity.name.method.js"],"settings":{"foreground":"#6693BF"}},{"scope":["meta.class-method.js entity.name.function.js","variable.function.constructor"],"settings":{"foreground":"#6693BF"}},{"scope":["entity.other.attribute-name"],"settings":{"foreground":"#624C83"}},{"scope":["entity.other.attribute-name.class"],"settings":{"foreground":"#77713F"}},{"scope":["source.sass keyword.control"],"settings":{"foreground":"#6693BF"}},{"scope":["markup.inserted"],"settings":{"foreground":"#6E915F"}},{"scope":["markup.deleted"],"settings":{"foreground":"#D7474B"}},{"scope":["markup.changed"],"settings":{"foreground":"#DE9800"}},{"scope":["string.regexp"],"settings":{"foreground":"#836F4A"}},{"scope":["constant.character.escape"],"settings":{"foreground":"#6693BF"}},{"scope":["*url*","*link*","*uri*"],"settings":{"fontStyle":"underline"}},{"scope":["tag.decorator.js entity.name.tag.js","tag.decorator.js punctuation.definition.tag.js"],"settings":{"foreground":"#624C83"}},{"scope":["source.js constant.other.object.key.js string.unquoted.label.js"],"settings":{"foreground":"#D9A594"}},{"scope":["source.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#B35B79"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#77713F"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#CC6D00"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#D9A594"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#CC6D00"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#4D699B"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#B35B79"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#624C83"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#6F894E"}},{"scope":["meta.tag JSXNested","meta.jsx.children","text.html","text.log"],"settings":{"foreground":"#545464"}},{"scope":["text.html.markdown","punctuation.definition.list_item.markdown"],"settings":{"foreground":"#545464"}},{"scope":["text.html.markdown markup.inline.raw.markdown"],"settings":{"foreground":"#624C83"}},{"scope":["text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown"],"settings":{"foreground":"#624C83"}},{"scope":["markdown.heading","entity.name.section.markdown","markup.heading.markdown"],"settings":{"foreground":"#4D699B"}},{"scope":["markup.italic"],"settings":{"fontStyle":"italic","foreground":"#C84053"}},{"scope":["markup.bold","markup.bold string"],"settings":{"fontStyle":"bold"}},{"scope":["markup.bold markup.italic","markup.italic markup.bold","markup.quote markup.bold","markup.bold markup.italic string","markup.italic markup.bold string","markup.quote markup.bold string"],"settings":{"fontStyle":"bold","foreground":"#C84053"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline","foreground":"#6693BF"}},{"scope":["markup.quote punctuation.definition.blockquote.markdown"],"settings":{"foreground":"#716E61"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic"}},{"scope":["string.other.link.title.markdown"],"settings":{"foreground":"#CC6D00"}},{"scope":["string.other.link.description.title.markdown"],"settings":{"foreground":"#624C83"}},{"scope":["constant.other.reference.link.markdown"],"settings":{"foreground":"#77713F"}},{"scope":["markup.raw.block"],"settings":{"foreground":"#624C83"}},{"scope":["markup.raw.block.fenced.markdown"],"settings":{"foreground":"#716E61"}},{"scope":["punctuation.definition.fenced.markdown"],"settings":{"foreground":"#716E61"}},{"scope":["markup.raw.block.fenced.markdown","variable.language.fenced.markdown","punctuation.section.class.end"],"settings":{"foreground":"#545464"}},{"scope":["variable.language.fenced.markdown"],"settings":{"foreground":"#716E61"}},{"scope":["meta.separator"],"settings":{"fontStyle":"bold","foreground":"#4E8CA2"}},{"scope":["markup.table"],"settings":{"foreground":"#545464"}}],"type":"light"}'))});var SM={};x(SM,{default:()=>Ace});var Ace,OM=_(()=>{Ace=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#2A2A37","activityBar.foreground":"#DCD7BA","activityBarBadge.background":"#658594","activityBarBadge.foreground":"#DCD7BA","badge.background":"#2A2A37","button.background":"#2A2A37","button.foreground":"#C8C093","button.secondaryBackground":"#223249","button.secondaryForeground":"#DCD7BA","checkbox.border":"#223249","debugToolBar.background":"#16161D","descriptionForeground":"#DCD7BA","diffEditor.insertedTextBackground":"#2B332880","dropdown.background":"#16161D","dropdown.border":"#16161D","editor.background":"#1F1F28","editor.findMatchBackground":"#2D4F67","editor.findMatchBorder":"#FF9E3B","editor.findMatchHighlightBackground":"#2D4F6780","editor.foreground":"#DCD7BA","editor.lineHighlightBackground":"#363646","editor.selectionBackground":"#223249","editor.selectionHighlightBackground":"#36364680","editor.selectionHighlightBorder":"#54546D","editor.wordHighlightBackground":"#3636464D","editor.wordHighlightBorder":"#54546D","editor.wordHighlightStrongBackground":"#3636464D","editor.wordHighlightStrongBorder":"#54546D","editorBracketHighlight.foreground1":"#957FB8","editorBracketHighlight.foreground2":"#FFA066","editorBracketHighlight.foreground3":"#7E9CD8","editorBracketHighlight.foreground4":"#D27E99","editorBracketHighlight.foreground5":"#E6C384","editorBracketHighlight.foreground6":"#7AA89F","editorBracketHighlight.unexpectedBracket.foreground":"#FF5D62","editorBracketMatch.background":"#16161D","editorBracketMatch.border":"#54546D","editorBracketPairGuide.activeBackground1":"#957FB8","editorBracketPairGuide.activeBackground2":"#FFA066","editorBracketPairGuide.activeBackground3":"#7E9CD8","editorBracketPairGuide.activeBackground4":"#D27E99","editorBracketPairGuide.activeBackground5":"#E6C384","editorBracketPairGuide.activeBackground6":"#7AA89F","editorCursor.background":"#1F1F28","editorCursor.foreground":"#DCD7BA","editorError.foreground":"#E82424","editorGroup.border":"#16161D","editorGroupHeader.tabsBackground":"#16161D","editorGutter.addedBackground":"#76946A","editorGutter.deletedBackground":"#C34043","editorGutter.modifiedBackground":"#DCA561","editorHoverWidget.background":"#1F1F28","editorHoverWidget.border":"#2A2A37","editorHoverWidget.highlightForeground":"#658594","editorIndentGuide.activeBackground1":"#363646","editorIndentGuide.background1":"#2A2A37","editorInlayHint.background":"#1F1F28","editorInlayHint.foreground":"#727169","editorLineNumber.activeForeground":"#FFA066","editorLineNumber.foreground":"#54546D","editorMarkerNavigation.background":"#363646","editorRuler.foreground":"#363646","editorSuggestWidget.background":"#223249","editorSuggestWidget.border":"#223249","editorSuggestWidget.selectedBackground":"#2D4F67","editorWarning.foreground":"#FF9E3B","editorWhitespace.foreground":"#1F1F28","editorWidget.background":"#1F1F28","focusBorder":"#223249","foreground":"#DCD7BA","gitDecoration.ignoredResourceForeground":"#727169","input.background":"#16161D","list.activeSelectionBackground":"#363646","list.activeSelectionForeground":"#DCD7BA","list.focusBackground":"#2A2A37","list.focusForeground":"#DCD7BA","list.highlightForeground":"#7E9CD8","list.hoverBackground":"#363646","list.hoverForeground":"#DCD7BA","list.inactiveSelectionBackground":"#2A2A37","list.inactiveSelectionForeground":"#DCD7BA","list.warningForeground":"#FF9E3B","menu.background":"#363646","menu.border":"#16161D","menu.foreground":"#DCD7BA","menu.selectionBackground":"#16161D","menu.selectionForeground":"#DCD7BA","menu.separatorBackground":"#54546D","menubar.selectionBackground":"#16161D","menubar.selectionForeground":"#DCD7BA","minimapGutter.addedBackground":"#76946A","minimapGutter.deletedBackground":"#C34043","minimapGutter.modifiedBackground":"#DCA561","panel.border":"#16161D","panelSectionHeader.background":"#1F1F28","peekView.border":"#54546D","peekViewEditor.background":"#2A2A37","peekViewEditor.matchHighlightBackground":"#2D4F67","peekViewResult.background":"#363646","scrollbar.shadow":"#363646","scrollbarSlider.activeBackground":"#2A2A3780","scrollbarSlider.background":"#54546D66","scrollbarSlider.hoverBackground":"#54546D80","settings.focusedRowBackground":"#363646","settings.headerForeground":"#DCD7BA","sideBar.background":"#1F1F28","sideBar.border":"#16161D","sideBar.foreground":"#DCD7BA","sideBarSectionHeader.background":"#363646","sideBarSectionHeader.foreground":"#DCD7BA","statusBar.background":"#16161D","statusBar.debuggingBackground":"#E82424","statusBar.debuggingBorder":"#957FB8","statusBar.debuggingForeground":"#DCD7BA","statusBar.foreground":"#C8C093","statusBar.noFolderBackground":"#1F1F28","statusBarItem.hoverBackground":"#363646","statusBarItem.remoteBackground":"#2D4F67","statusBarItem.remoteForeground":"#DCD7BA","tab.activeBackground":"#2A2A37","tab.activeForeground":"#7E9CD8","tab.border":"#2A2A37","tab.hoverBackground":"#363646","tab.inactiveBackground":"#1A1A22","tab.unfocusedHoverBackground":"#1F1F28","terminal.ansiBlack":"#16161D","terminal.ansiBlue":"#7E9CD8","terminal.ansiBrightBlack":"#727169","terminal.ansiBrightBlue":"#7FB4CA","terminal.ansiBrightCyan":"#7AA89F","terminal.ansiBrightGreen":"#98BB6C","terminal.ansiBrightMagenta":"#938AA9","terminal.ansiBrightRed":"#E82424","terminal.ansiBrightWhite":"#DCD7BA","terminal.ansiBrightYellow":"#E6C384","terminal.ansiCyan":"#6A9589","terminal.ansiGreen":"#76946A","terminal.ansiMagenta":"#957FB8","terminal.ansiRed":"#C34043","terminal.ansiWhite":"#C8C093","terminal.ansiYellow":"#C0A36E","terminal.background":"#1F1F28","terminal.border":"#16161D","terminal.foreground":"#DCD7BA","terminal.selectionBackground":"#223249","textBlockQuote.background":"#1F1F28","textBlockQuote.border":"#16161D","textLink.foreground":"#6A9589","textPreformat.foreground":"#FF9E3B","titleBar.activeBackground":"#363646","titleBar.activeForeground":"#DCD7BA","titleBar.inactiveBackground":"#1F1F28","titleBar.inactiveForeground":"#DCD7BA","walkThrough.embeddedEditorBackground":"#1F1F28"},"displayName":"Kanagawa Wave","name":"kanagawa-wave","semanticHighlighting":true,"semanticTokenColors":{"arithmetic":"#C0A36E","function":"#7E9CD8","keyword.controlFlow":{"fontStyle":"bold","foreground":"#957FB8"},"macro":"#E46876","method":"#7FB4CA","operator":"#C0A36E","parameter":"#B8B4D0","parameter.declaration":"#B8B4D0","parameter.definition":"#B8B4D0","variable":"#DCD7BA","variable.readonly":"#DCD7BA","variable.readonly.defaultLibrary":"#DCD7BA","variable.readonly.local":"#DCD7BA"},"tokenColors":[{"scope":["comment","punctuation.definition.comment"],"settings":{"foreground":"#727169"}},{"scope":["variable","string constant.other.placeholder"],"settings":{"foreground":"#DCD7BA"}},{"scope":["constant.other.color"],"settings":{"foreground":"#FFA066"}},{"scope":["invalid","invalid.illegal"],"settings":{"foreground":"#E82424"}},{"scope":["storage.type"],"settings":{"foreground":"#957FB8"}},{"scope":["storage.modifier"],"settings":{"foreground":"#957FB8"}},{"scope":["keyword.control.flow","keyword.control.conditional","keyword.control.loop"],"settings":{"fontStyle":"bold","foreground":"#957FB8"}},{"scope":["keyword.control","constant.other.color","meta.tag","keyword.other.template","keyword.other.substitution","keyword.other"],"settings":{"foreground":"#957FB8"}},{"scope":["keyword.other.definition.ini"],"settings":{"foreground":"#FFA066"}},{"scope":["keyword.control.trycatch"],"settings":{"fontStyle":"bold","foreground":"#FF5D62"}},{"scope":["keyword.other.unit","keyword.operator"],"settings":{"foreground":"#E6C384"}},{"scope":["punctuation","punctuation.definition.tag","punctuation.separator.inheritance.php","punctuation.definition.tag.html","punctuation.definition.tag.begin.html","punctuation.definition.tag.end.html","punctuation.section.embedded","meta.brace","keyword.operator.type.annotation","keyword.operator.namespace"],"settings":{"foreground":"#9CABCA"}},{"scope":["entity.name.tag","meta.tag.sgml"],"settings":{"foreground":"#E6C384"}},{"scope":["entity.name.function","meta.function-call","variable.function","support.function"],"settings":{"foreground":"#7E9CD8"}},{"scope":["keyword.other.special-method"],"settings":{"foreground":"#7FB4CA"}},{"scope":["entity.name.function.macro"],"settings":{"foreground":"#E46876"}},{"scope":["meta.block variable.other"],"settings":{"foreground":"#DCD7BA"}},{"scope":["variable.other.enummember"],"settings":{"foreground":"#FFA066"}},{"scope":["support.other.variable"],"settings":{"foreground":"#DCD7BA"}},{"scope":["string.other.link"],"settings":{"foreground":"#7FB4CA"}},{"scope":["constant.numeric","constant.language","support.constant","constant.character","constant.escape"],"settings":{"foreground":"#FFA066"}},{"scope":["constant.language.boolean"],"settings":{"foreground":"#FFA066"}},{"scope":["constant.numeric"],"settings":{"foreground":"#D27E99"}},{"scope":["string","punctuation.definition.string","constant.other.symbol","constant.other.key","entity.other.inherited-class","markup.heading","markup.inserted.git_gutter","meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js","markup.inline.raw.string"],"settings":{"foreground":"#98BB6C"}},{"scope":["entity.name","support.type","support.class","support.other.namespace.use.php","meta.use.php","support.other.namespace.php","support.type.sys-types"],"settings":{"foreground":"#7AA89F"}},{"scope":["entity.name.type.module","entity.name.namespace"],"settings":{"foreground":"#E6C384"}},{"scope":["entity.name.import.go"],"settings":{"foreground":"#98BB6C"}},{"scope":["keyword.blade"],"settings":{"foreground":"#957FB8"}},{"scope":["variable.other.property"],"settings":{"foreground":"#E6C384"}},{"scope":["keyword.control.import","keyword.import","meta.import"],"settings":{"foreground":"#FFA066"}},{"scope":["source.css support.type.property-name","source.sass support.type.property-name","source.scss support.type.property-name","source.less support.type.property-name","source.stylus support.type.property-name","source.postcss support.type.property-name"],"settings":{"foreground":"#7AA89F"}},{"scope":["entity.name.module.js","variable.import.parameter.js","variable.other.class.js"],"settings":{"foreground":"#FF5D62"}},{"scope":["variable.language"],"settings":{"foreground":"#FF5D62"}},{"scope":["entity.name.method.js"],"settings":{"foreground":"#7FB4CA"}},{"scope":["meta.class-method.js entity.name.function.js","variable.function.constructor"],"settings":{"foreground":"#7FB4CA"}},{"scope":["entity.other.attribute-name"],"settings":{"foreground":"#957FB8"}},{"scope":["entity.other.attribute-name.class"],"settings":{"foreground":"#E6C384"}},{"scope":["source.sass keyword.control"],"settings":{"foreground":"#7FB4CA"}},{"scope":["markup.inserted"],"settings":{"foreground":"#76946A"}},{"scope":["markup.deleted"],"settings":{"foreground":"#C34043"}},{"scope":["markup.changed"],"settings":{"foreground":"#DCA561"}},{"scope":["string.regexp"],"settings":{"foreground":"#C0A36E"}},{"scope":["constant.character.escape"],"settings":{"foreground":"#7FB4CA"}},{"scope":["*url*","*link*","*uri*"],"settings":{"fontStyle":"underline"}},{"scope":["tag.decorator.js entity.name.tag.js","tag.decorator.js punctuation.definition.tag.js"],"settings":{"foreground":"#957FB8"}},{"scope":["source.js constant.other.object.key.js string.unquoted.label.js"],"settings":{"foreground":"#FF5D62"}},{"scope":["source.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#D27E99"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#E6C384"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFA066"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FF5D62"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFA066"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#7E9CD8"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#D27E99"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#957FB8"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#98BB6C"}},{"scope":["meta.tag JSXNested","meta.jsx.children","text.html","text.log"],"settings":{"foreground":"#DCD7BA"}},{"scope":["text.html.markdown","punctuation.definition.list_item.markdown"],"settings":{"foreground":"#DCD7BA"}},{"scope":["text.html.markdown markup.inline.raw.markdown"],"settings":{"foreground":"#957FB8"}},{"scope":["text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown"],"settings":{"foreground":"#957FB8"}},{"scope":["markdown.heading","entity.name.section.markdown","markup.heading.markdown"],"settings":{"foreground":"#7E9CD8"}},{"scope":["markup.italic"],"settings":{"fontStyle":"italic","foreground":"#E46876"}},{"scope":["markup.bold","markup.bold string"],"settings":{"fontStyle":"bold"}},{"scope":["markup.bold markup.italic","markup.italic markup.bold","markup.quote markup.bold","markup.bold markup.italic string","markup.italic markup.bold string","markup.quote markup.bold string"],"settings":{"fontStyle":"bold","foreground":"#E46876"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline","foreground":"#7FB4CA"}},{"scope":["markup.quote punctuation.definition.blockquote.markdown"],"settings":{"foreground":"#727169"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic"}},{"scope":["string.other.link.title.markdown"],"settings":{"foreground":"#FFA066"}},{"scope":["string.other.link.description.title.markdown"],"settings":{"foreground":"#957FB8"}},{"scope":["constant.other.reference.link.markdown"],"settings":{"foreground":"#E6C384"}},{"scope":["markup.raw.block"],"settings":{"foreground":"#957FB8"}},{"scope":["markup.raw.block.fenced.markdown"],"settings":{"foreground":"#727169"}},{"scope":["punctuation.definition.fenced.markdown"],"settings":{"foreground":"#727169"}},{"scope":["markup.raw.block.fenced.markdown","variable.language.fenced.markdown","punctuation.section.class.end"],"settings":{"foreground":"#DCD7BA"}},{"scope":["variable.language.fenced.markdown"],"settings":{"foreground":"#727169"}},{"scope":["meta.separator"],"settings":{"fontStyle":"bold","foreground":"#9CABCA"}},{"scope":["markup.table"],"settings":{"foreground":"#DCD7BA"}}],"type":"dark"}'))});var NM={};x(NM,{default:()=>dce});var dce,LM=_(()=>{dce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#EB64B9","activityBar.background":"#27212e","activityBar.foreground":"#ddd","activityBarBadge.background":"#EB64B9","button.background":"#EB64B9","diffEditor.border":"#b4dce7","diffEditor.insertedTextBackground":"#74dfc423","diffEditor.removedTextBackground":"#eb64b940","editor.background":"#27212e","editor.findMatchBackground":"#40b4c48c","editor.findMatchHighlightBackground":"#40b4c460","editor.foreground":"#ffffff","editor.selectionBackground":"#eb64b927","editor.selectionHighlightBackground":"#eb64b927","editor.wordHighlightBackground":"#eb64b927","editorError.foreground":"#ff3e7b","editorGroupHeader.tabsBackground":"#242029","editorGutter.addedBackground":"#74dfc4","editorGutter.deletedBackground":"#eb64B9","editorGutter.modifiedBackground":"#40b4c4","editorSuggestWidget.border":"#b4dce7","focusBorder":"#EB64B9","gitDecoration.conflictingResourceForeground":"#EB64B9","gitDecoration.deletedResourceForeground":"#b381c5","gitDecoration.ignoredResourceForeground":"#92889d","gitDecoration.modifiedResourceForeground":"#74dfc4","gitDecoration.untrackedResourceForeground":"#40b4c4","input.background":"#3a3242","input.border":"#964c7b","inputOption.activeBorder":"#EB64B9","list.activeSelectionBackground":"#eb64b98f","list.activeSelectionForeground":"#eee","list.dropBackground":"#74dfc466","list.errorForeground":"#ff3e7b","list.focusBackground":"#eb64ba60","list.highlightForeground":"#eb64b9","list.hoverBackground":"#91889b80","list.hoverForeground":"#eee","list.inactiveSelectionBackground":"#eb64b98f","list.inactiveSelectionForeground":"#ddd","list.invalidItemForeground":"#fff","menu.background":"#27212e","merge.currentContentBackground":"#74dfc433","merge.currentHeaderBackground":"#74dfc4cc","merge.incomingContentBackground":"#40b4c433","merge.incomingHeaderBackground":"#40b4c4cc","notifications.background":"#3e3549","peekView.border":"#40b4c4","peekViewEditor.background":"#40b5c449","peekViewEditor.matchHighlightBackground":"#40b5c460","peekViewResult.matchHighlightBackground":"#27212e","peekViewResult.selectionBackground":"#40b4c43f","progressBar.background":"#40b4c4","sideBar.background":"#27212e","sideBar.foreground":"#ddd","sideBarSectionHeader.background":"#27212e","sideBarTitle.foreground":"#EB64B9","statusBar.background":"#EB64B9","statusBar.debuggingBackground":"#74dfc4","statusBar.foreground":"#27212e","statusBar.noFolderBackground":"#EB64B9","tab.activeBorder":"#EB64B9","tab.inactiveBackground":"#242029","terminal.ansiBlue":"#40b4c4","terminal.ansiCyan":"#b4dce7","terminal.ansiGreen":"#74dfc4","terminal.ansiMagenta":"#b381c5","terminal.ansiRed":"#EB64B9","terminal.ansiYellow":"#ffe261","titleBar.activeBackground":"#27212e","titleBar.inactiveBackground":"#27212e","tree.indentGuidesStroke":"#ffffff33"},"displayName":"LaserWave","name":"laserwave","tokenColors":[{"scope":["keyword.other","keyword.control","storage.type.class.js","keyword.control.module.js","storage.type.extends.js","variable.language.this.js","keyword.control.switch.js","keyword.control.loop.js","keyword.control.conditional.js","keyword.control.flow.js","keyword.operator.accessor.js","keyword.other.important.css","keyword.control.at-rule.media.scss","entity.name.tag.reference.scss","meta.class.python","storage.type.function.python","keyword.control.flow.python","storage.type.function.js","keyword.control.export.ts","keyword.control.flow.ts","keyword.control.from.ts","keyword.control.import.ts","storage.type.class.ts","keyword.control.loop.ts","keyword.control.ruby","keyword.control.module.ruby","keyword.control.class.ruby","keyword.other.special-method.ruby","keyword.control.def.ruby","markup.heading","keyword.other.import.java","keyword.other.package.java","storage.modifier.java","storage.modifier.extends.java","storage.modifier.implements.java","storage.modifier.cs","storage.modifier.js","storage.modifier.dart","keyword.declaration.dart","keyword.package.go","keyword.import.go","keyword.fsharp","variable.parameter.function-call.python"],"settings":{"foreground":"#40b4c4"}},{"scope":["binding.fsharp","support.function","meta.function-call","entity.name.function","support.function.misc.scss","meta.method.declaration.ts","entity.name.function.method.js"],"settings":{"foreground":"#EB64B9"}},{"scope":["string","string.quoted","string.unquoted","string.other.link.title.markdown"],"settings":{"foreground":"#b4dce7"}},{"scope":["constant.numeric"],"settings":{"foreground":"#b381c5"}},{"scope":["meta.brace","punctuation","punctuation.bracket","punctuation.section","punctuation.separator","punctuation.comma.dart","punctuation.terminator","punctuation.definition","punctuation.parenthesis","meta.delimiter.comma.js","meta.brace.curly.litobj.js","punctuation.definition.tag","puncatuation.other.comma.go","punctuation.section.embedded","punctuation.definition.string","punctuation.definition.tag.jsx","punctuation.definition.tag.end","punctuation.definition.markdown","punctuation.terminator.rule.css","punctuation.definition.block.ts","punctuation.definition.tag.html","punctuation.section.class.end.js","punctuation.definition.tag.begin","punctuation.squarebracket.open.cs","punctuation.separator.dict.python","punctuation.section.function.scss","punctuation.section.class.begin.js","punctuation.section.array.end.ruby","punctuation.separator.key-value.js","meta.method-call.with-arguments.js","punctuation.section.scope.end.ruby","punctuation.squarebracket.close.cs","punctuation.separator.key-value.css","punctuation.definition.constant.css","punctuation.section.array.begin.ruby","punctuation.section.scope.begin.ruby","punctuation.definition.string.end.js","punctuation.definition.parameters.ruby","punctuation.definition.string.begin.js","punctuation.section.class.begin.python","storage.modifier.array.bracket.square.c","punctuation.separator.parameters.python","punctuation.section.group.end.powershell","punctuation.definition.parameters.end.ts","punctuation.section.braces.end.powershell","punctuation.section.function.begin.python","punctuation.definition.parameters.begin.ts","punctuation.section.bracket.end.powershell","punctuation.section.group.begin.powershell","punctuation.section.braces.begin.powershell","punctuation.definition.parameters.end.python","punctuation.definition.typeparameters.end.cs","punctuation.section.bracket.begin.powershell","punctuation.definition.arguments.begin.python","punctuation.definition.parameters.begin.python","punctuation.definition.typeparameters.begin.cs","punctuation.section.block.begin.bracket.curly.c","punctuation.definition.map.begin.bracket.round.scss","punctuation.section.property-list.end.bracket.curly.css","punctuation.definition.parameters.end.bracket.round.java","punctuation.section.property-list.begin.bracket.curly.css","punctuation.definition.parameters.begin.bracket.round.java"],"settings":{"foreground":"#7b6995"}},{"scope":["keyword.operator","meta.decorator.ts","entity.name.type.ts","punctuation.dot.dart","keyword.symbol.fsharp","punctuation.accessor.ts","punctuation.accessor.cs","keyword.operator.logical","meta.tag.inline.any.html","punctuation.separator.java","keyword.operator.comparison","keyword.operator.arithmetic","keyword.operator.assignment","keyword.operator.ternary.js","keyword.operator.other.ruby","keyword.operator.logical.js","punctuation.other.period.go","keyword.operator.increment.ts","keyword.operator.increment.js","storage.type.function.arrow.js","storage.type.function.arrow.ts","keyword.operator.relational.js","keyword.operator.relational.ts","keyword.operator.arithmetic.js","keyword.operator.assignment.js","storage.type.function.arrow.tsx","keyword.operator.logical.python","punctuation.separator.period.java","punctuation.separator.method.ruby","keyword.operator.assignment.python","keyword.operator.arithmetic.python","keyword.operator.increment-decrement.java"],"settings":{"foreground":"#74dfc4"}},{"scope":["comment","punctuation.definition.comment"],"settings":{"foreground":"#91889b"}},{"scope":["meta.tag.sgml","entity.name.tag","entity.name.tag.open.jsx","entity.name.tag.close.jsx","entity.name.tag.inline.any.html","entity.name.tag.structure.any.html"],"settings":{"foreground":"#74dfc4"}},{"scope":["variable.other.enummember","entity.other.attribute-name","entity.other.attribute-name.jsx","entity.other.attribute-name.html","entity.other.attribute-name.id.css","entity.other.attribute-name.id.html","entity.other.attribute-name.class.css"],"settings":{"foreground":"#EB64B9"}},{"scope":["variable.other.property","variable.parameter.fsharp","support.variable.property.js","support.type.property-name.css","support.type.property-name.json","support.variable.property.dom.js"],"settings":{"foreground":"#40b4c4"}},{"scope":["constant.language","constant.other.elm","constant.language.c","variable.language.dart","variable.language.this","support.class.builtin.js","support.constant.json.ts","support.class.console.ts","support.class.console.js","variable.language.this.js","variable.language.this.ts","entity.name.section.fsharp","support.type.object.dom.js","variable.other.constant.js","variable.language.self.ruby","variable.other.constant.ruby","support.type.object.console.js","constant.language.undefined.js","support.function.builtin.python","constant.language.boolean.true.js","constant.language.boolean.false.js","variable.language.special.self.python","support.constant.automatic.powershell"],"settings":{"foreground":"#ffe261"}},{"scope":["variable.other","variable.scss","meta.function-call.c","variable.parameter.ts","variable.parameter.dart","variable.other.class.js","variable.other.object.js","variable.other.object.ts","support.function.json.ts","variable.name.source.dart","variable.other.source.dart","variable.other.readwrite.js","variable.other.readwrite.ts","support.function.console.ts","entity.name.type.instance.js","meta.function-call.arguments","variable.other.property.dom.ts","support.variable.property.dom.ts","variable.other.readwrite.powershell"],"settings":{"foreground":"#fff"}},{"scope":["storage.type.annotation","punctuation.definition.annotation","support.function.attribute.fsharp"],"settings":{"foreground":"#74dfc4"}},{"scope":["entity.name.type","storage.type","keyword.var.go","keyword.type.go","keyword.type.js","storage.type.js","storage.type.ts","keyword.type.cs","keyword.const.go","keyword.struct.go","support.class.dart","storage.modifier.c","storage.modifier.ts","keyword.function.go","keyword.operator.new.ts","meta.type.annotation.ts","entity.name.type.fsharp","meta.type.annotation.tsx","storage.modifier.async.js","punctuation.definition.variable.ruby","punctuation.definition.constant.ruby"],"settings":{"foreground":"#a96bc0"}},{"scope":["markup.bold","markup.italic"],"settings":{"foreground":"#EB64B9"}},{"scope":["meta.object-literal.key.js","constant.other.object.key.js"],"settings":{"foreground":"#40b4c4"}},{"scope":[],"settings":{"foreground":"#ffb85b"}},{"scope":["meta.diff","meta.diff.header"],"settings":{"foreground":"#40b4c4"}},{"scope":["meta.diff.range.unified"],"settings":{"foreground":"#b381c5"}},{"scope":["markup.deleted","punctuation.definition.deleted.diff","punctuation.definition.from-file.diff","meta.diff.header.from-file"],"settings":{"foreground":"#eb64b9"}},{"scope":["markup.inserted","punctuation.definition.inserted.diff","punctuation.definition.to-file.diff","meta.diff.header.to-file"],"settings":{"foreground":"#74dfc4"}}],"type":"dark"}'))});var $M={};x($M,{default:()=>uce});var uce,RM=_(()=>{uce=Object.freeze(JSON.parse('{"colors":{"actionBar.toggledBackground":"#dddddd","activityBarBadge.background":"#007ACC","checkbox.border":"#919191","diffEditor.unchangedRegionBackground":"#f8f8f8","editor.background":"#FFFFFF","editor.foreground":"#000000","editor.inactiveSelectionBackground":"#E5EBF1","editor.selectionHighlightBackground":"#ADD6FF80","editorIndentGuide.activeBackground1":"#939393","editorIndentGuide.background1":"#D3D3D3","editorSuggestWidget.background":"#F3F3F3","input.placeholderForeground":"#767676","list.activeSelectionIconForeground":"#FFF","list.focusAndSelectionOutline":"#90C2F9","list.hoverBackground":"#E8E8E8","menu.border":"#D4D4D4","notebook.cellBorderColor":"#E8E8E8","notebook.selectedCellBackground":"#c8ddf150","ports.iconRunningProcessForeground":"#369432","searchEditor.textInputBorder":"#CECECE","settings.numberInputBorder":"#CECECE","settings.textInputBorder":"#CECECE","sideBarSectionHeader.background":"#0000","sideBarSectionHeader.border":"#61616130","sideBarTitle.foreground":"#6F6F6F","statusBarItem.errorBackground":"#c72e0f","statusBarItem.remoteBackground":"#16825D","statusBarItem.remoteForeground":"#FFF","tab.lastPinnedBorder":"#61616130","tab.selectedBackground":"#ffffffa5","tab.selectedForeground":"#333333b3","terminal.inactiveSelectionBackground":"#E5EBF1","widget.border":"#d4d4d4"},"displayName":"Light Plus","name":"light-plus","semanticHighlighting":true,"semanticTokenColors":{"customLiteral":"#795E26","newOperator":"#AF00DB","numberLiteral":"#098658","stringLiteral":"#a31515"},"tokenColors":[{"scope":["meta.embedded","source.groovy.embedded","string meta.image.inline.markdown","variable.legacy.builtin.python"],"settings":{"foreground":"#000000ff"}},{"scope":"emphasis","settings":{"fontStyle":"italic"}},{"scope":"strong","settings":{"fontStyle":"bold"}},{"scope":"meta.diff.header","settings":{"foreground":"#000080"}},{"scope":"comment","settings":{"foreground":"#008000"}},{"scope":"constant.language","settings":{"foreground":"#0000ff"}},{"scope":["constant.numeric","variable.other.enummember","keyword.operator.plus.exponent","keyword.operator.minus.exponent"],"settings":{"foreground":"#098658"}},{"scope":"constant.regexp","settings":{"foreground":"#811f3f"}},{"scope":"entity.name.tag","settings":{"foreground":"#800000"}},{"scope":"entity.name.selector","settings":{"foreground":"#800000"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#e50000"}},{"scope":["entity.other.attribute-name.class.css","source.css entity.other.attribute-name.class","entity.other.attribute-name.id.css","entity.other.attribute-name.parent-selector.css","entity.other.attribute-name.parent.less","source.css entity.other.attribute-name.pseudo-class","entity.other.attribute-name.pseudo-element.css","source.css.less entity.other.attribute-name.id","entity.other.attribute-name.scss"],"settings":{"foreground":"#800000"}},{"scope":"invalid","settings":{"foreground":"#cd3131"}},{"scope":"markup.underline","settings":{"fontStyle":"underline"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#000080"}},{"scope":"markup.heading","settings":{"fontStyle":"bold","foreground":"#800000"}},{"scope":"markup.italic","settings":{"fontStyle":"italic"}},{"scope":"markup.strikethrough","settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inserted","settings":{"foreground":"#098658"}},{"scope":"markup.deleted","settings":{"foreground":"#a31515"}},{"scope":"markup.changed","settings":{"foreground":"#0451a5"}},{"scope":["punctuation.definition.quote.begin.markdown","punctuation.definition.list.begin.markdown"],"settings":{"foreground":"#0451a5"}},{"scope":"markup.inline.raw","settings":{"foreground":"#800000"}},{"scope":"punctuation.definition.tag","settings":{"foreground":"#800000"}},{"scope":["meta.preprocessor","entity.name.function.preprocessor"],"settings":{"foreground":"#0000ff"}},{"scope":"meta.preprocessor.string","settings":{"foreground":"#a31515"}},{"scope":"meta.preprocessor.numeric","settings":{"foreground":"#098658"}},{"scope":"meta.structure.dictionary.key.python","settings":{"foreground":"#0451a5"}},{"scope":"storage","settings":{"foreground":"#0000ff"}},{"scope":"storage.type","settings":{"foreground":"#0000ff"}},{"scope":["storage.modifier","keyword.operator.noexcept"],"settings":{"foreground":"#0000ff"}},{"scope":["string","meta.embedded.assembly"],"settings":{"foreground":"#a31515"}},{"scope":["string.comment.buffered.block.pug","string.quoted.pug","string.interpolated.pug","string.unquoted.plain.in.yaml","string.unquoted.plain.out.yaml","string.unquoted.block.yaml","string.quoted.single.yaml","string.quoted.double.xml","string.quoted.single.xml","string.unquoted.cdata.xml","string.quoted.double.html","string.quoted.single.html","string.unquoted.html","string.quoted.single.handlebars","string.quoted.double.handlebars"],"settings":{"foreground":"#0000ff"}},{"scope":"string.regexp","settings":{"foreground":"#811f3f"}},{"scope":["punctuation.definition.template-expression.begin","punctuation.definition.template-expression.end","punctuation.section.embedded"],"settings":{"foreground":"#0000ff"}},{"scope":["meta.template.expression"],"settings":{"foreground":"#000000"}},{"scope":["support.constant.property-value","support.constant.font-name","support.constant.media-type","support.constant.media","constant.other.color.rgb-value","constant.other.rgb-value","support.constant.color"],"settings":{"foreground":"#0451a5"}},{"scope":["support.type.vendored.property-name","support.type.property-name","source.css variable","source.coffee.embedded"],"settings":{"foreground":"#e50000"}},{"scope":["support.type.property-name.json"],"settings":{"foreground":"#0451a5"}},{"scope":"keyword","settings":{"foreground":"#0000ff"}},{"scope":"keyword.control","settings":{"foreground":"#0000ff"}},{"scope":"keyword.operator","settings":{"foreground":"#000000"}},{"scope":["keyword.operator.new","keyword.operator.expression","keyword.operator.cast","keyword.operator.sizeof","keyword.operator.alignof","keyword.operator.typeid","keyword.operator.alignas","keyword.operator.instanceof","keyword.operator.logical.python","keyword.operator.wordlike"],"settings":{"foreground":"#0000ff"}},{"scope":"keyword.other.unit","settings":{"foreground":"#098658"}},{"scope":["punctuation.section.embedded.begin.php","punctuation.section.embedded.end.php"],"settings":{"foreground":"#800000"}},{"scope":"support.function.git-rebase","settings":{"foreground":"#0451a5"}},{"scope":"constant.sha.git-rebase","settings":{"foreground":"#098658"}},{"scope":["storage.modifier.import.java","variable.language.wildcard.java","storage.modifier.package.java"],"settings":{"foreground":"#000000"}},{"scope":"variable.language","settings":{"foreground":"#0000ff"}},{"scope":["entity.name.function","support.function","support.constant.handlebars","source.powershell variable.other.member","entity.name.operator.custom-literal"],"settings":{"foreground":"#795E26"}},{"scope":["support.class","support.type","entity.name.type","entity.name.namespace","entity.other.attribute","entity.name.scope-resolution","entity.name.class","storage.type.numeric.go","storage.type.byte.go","storage.type.boolean.go","storage.type.string.go","storage.type.uintptr.go","storage.type.error.go","storage.type.rune.go","storage.type.cs","storage.type.generic.cs","storage.type.modifier.cs","storage.type.variable.cs","storage.type.annotation.java","storage.type.generic.java","storage.type.java","storage.type.object.array.java","storage.type.primitive.array.java","storage.type.primitive.java","storage.type.token.java","storage.type.groovy","storage.type.annotation.groovy","storage.type.parameters.groovy","storage.type.generic.groovy","storage.type.object.array.groovy","storage.type.primitive.array.groovy","storage.type.primitive.groovy"],"settings":{"foreground":"#267f99"}},{"scope":["meta.type.cast.expr","meta.type.new.expr","support.constant.math","support.constant.dom","support.constant.json","entity.other.inherited-class","punctuation.separator.namespace.ruby"],"settings":{"foreground":"#267f99"}},{"scope":["keyword.control","source.cpp keyword.operator.new","source.cpp keyword.operator.delete","keyword.other.using","keyword.other.directive.using","keyword.other.operator","entity.name.operator"],"settings":{"foreground":"#AF00DB"}},{"scope":["variable","meta.definition.variable.name","support.variable","entity.name.variable","constant.other.placeholder"],"settings":{"foreground":"#001080"}},{"scope":["variable.other.constant","variable.other.enummember"],"settings":{"foreground":"#0070C1"}},{"scope":["meta.object-literal.key"],"settings":{"foreground":"#001080"}},{"scope":["support.constant.property-value","support.constant.font-name","support.constant.media-type","support.constant.media","constant.other.color.rgb-value","constant.other.rgb-value","support.constant.color"],"settings":{"foreground":"#0451a5"}},{"scope":["punctuation.definition.group.regexp","punctuation.definition.group.assertion.regexp","punctuation.definition.character-class.regexp","punctuation.character.set.begin.regexp","punctuation.character.set.end.regexp","keyword.operator.negation.regexp","support.other.parenthesis.regexp"],"settings":{"foreground":"#d16969"}},{"scope":["constant.character.character-class.regexp","constant.other.character-class.set.regexp","constant.other.character-class.regexp","constant.character.set.regexp"],"settings":{"foreground":"#811f3f"}},{"scope":"keyword.operator.quantifier.regexp","settings":{"foreground":"#000000"}},{"scope":["keyword.operator.or.regexp","keyword.control.anchor.regexp"],"settings":{"foreground":"#EE0000"}},{"scope":["constant.character","constant.other.option"],"settings":{"foreground":"#0000ff"}},{"scope":"constant.character.escape","settings":{"foreground":"#EE0000"}},{"scope":"entity.name.label","settings":{"foreground":"#000000"}}],"type":"light"}'))});var jM={};x(jM,{default:()=>pce});var pce,PM=_(()=>{pce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#80CBC4","activityBar.background":"#263238","activityBar.border":"#26323860","activityBar.dropBackground":"#f0717880","activityBar.foreground":"#EEFFFF","activityBarBadge.background":"#80CBC4","activityBarBadge.foreground":"#000000","badge.background":"#00000030","badge.foreground":"#546E7A","breadcrumb.activeSelectionForeground":"#80CBC4","breadcrumb.background":"#263238","breadcrumb.focusForeground":"#EEFFFF","breadcrumb.foreground":"#6c8692","breadcrumbPicker.background":"#263238","button.background":"#80CBC420","button.foreground":"#ffffff","debugConsole.errorForeground":"#f07178","debugConsole.infoForeground":"#89DDFF","debugConsole.warningForeground":"#FFCB6B","debugToolBar.background":"#263238","diffEditor.insertedTextBackground":"#89DDFF20","diffEditor.removedTextBackground":"#ff9cac20","dropdown.background":"#263238","dropdown.border":"#FFFFFF10","editor.background":"#263238","editor.findMatchBackground":"#000000","editor.findMatchBorder":"#80CBC4","editor.findMatchHighlight":"#EEFFFF","editor.findMatchHighlightBackground":"#00000050","editor.findMatchHighlightBorder":"#ffffff30","editor.findRangeHighlightBackground":"#FFCB6B30","editor.foreground":"#EEFFFF","editor.lineHighlightBackground":"#00000050","editor.lineHighlightBorder":"#00000000","editor.rangeHighlightBackground":"#FFFFFF0d","editor.selectionBackground":"#80CBC420","editor.selectionHighlightBackground":"#FFCC0020","editor.wordHighlightBackground":"#ff9cac30","editor.wordHighlightStrongBackground":"#C3E88D30","editorBracketMatch.background":"#263238","editorBracketMatch.border":"#FFCC0050","editorCursor.foreground":"#FFCC00","editorError.foreground":"#f0717870","editorGroup.border":"#00000030","editorGroup.dropBackground":"#f0717880","editorGroup.focusedEmptyBorder":"#f07178","editorGroupHeader.tabsBackground":"#263238","editorGutter.addedBackground":"#C3E88D60","editorGutter.deletedBackground":"#f0717860","editorGutter.modifiedBackground":"#82AAFF60","editorHoverWidget.background":"#263238","editorHoverWidget.border":"#FFFFFF10","editorIndentGuide.activeBackground":"#37474F","editorIndentGuide.background":"#37474F70","editorInfo.foreground":"#82AAFF70","editorLineNumber.activeForeground":"#6c8692","editorLineNumber.foreground":"#465A64","editorLink.activeForeground":"#EEFFFF","editorMarkerNavigation.background":"#EEFFFF05","editorOverviewRuler.border":"#263238","editorOverviewRuler.errorForeground":"#f0717840","editorOverviewRuler.findMatchForeground":"#80CBC4","editorOverviewRuler.infoForeground":"#82AAFF40","editorOverviewRuler.warningForeground":"#FFCB6B40","editorRuler.foreground":"#37474F","editorSuggestWidget.background":"#263238","editorSuggestWidget.border":"#FFFFFF10","editorSuggestWidget.foreground":"#EEFFFF","editorSuggestWidget.highlightForeground":"#80CBC4","editorSuggestWidget.selectedBackground":"#00000050","editorWarning.foreground":"#FFCB6B70","editorWhitespace.foreground":"#EEFFFF40","editorWidget.background":"#263238","editorWidget.border":"#80CBC4","editorWidget.resizeBorder":"#80CBC4","extensionBadge.remoteForeground":"#EEFFFF","extensionButton.prominentBackground":"#C3E88D90","extensionButton.prominentForeground":"#EEFFFF","extensionButton.prominentHoverBackground":"#C3E88D","focusBorder":"#FFFFFF00","foreground":"#EEFFFF","gitDecoration.conflictingResourceForeground":"#FFCB6B90","gitDecoration.deletedResourceForeground":"#f0717890","gitDecoration.ignoredResourceForeground":"#6c869290","gitDecoration.modifiedResourceForeground":"#82AAFF90","gitDecoration.untrackedResourceForeground":"#C3E88D90","input.background":"#303C41","input.border":"#FFFFFF10","input.foreground":"#EEFFFF","input.placeholderForeground":"#EEFFFF60","inputOption.activeBackground":"#EEFFFF30","inputOption.activeBorder":"#EEFFFF30","inputValidation.errorBorder":"#f07178","inputValidation.infoBorder":"#82AAFF","inputValidation.warningBorder":"#FFCB6B","list.activeSelectionBackground":"#263238","list.activeSelectionForeground":"#80CBC4","list.dropBackground":"#f0717880","list.focusBackground":"#EEFFFF20","list.focusForeground":"#EEFFFF","list.highlightForeground":"#80CBC4","list.hoverBackground":"#263238","list.hoverForeground":"#FFFFFF","list.inactiveSelectionBackground":"#00000030","list.inactiveSelectionForeground":"#80CBC4","listFilterWidget.background":"#00000030","listFilterWidget.noMatchesOutline":"#00000030","listFilterWidget.outline":"#00000030","menu.background":"#263238","menu.foreground":"#EEFFFF","menu.selectionBackground":"#00000050","menu.selectionBorder":"#00000030","menu.selectionForeground":"#80CBC4","menu.separatorBackground":"#EEFFFF","menubar.selectionBackground":"#00000030","menubar.selectionBorder":"#00000030","menubar.selectionForeground":"#80CBC4","notebook.focusedCellBorder":"#80CBC4","notebook.inactiveFocusedCellBorder":"#80CBC450","notificationLink.foreground":"#80CBC4","notifications.background":"#263238","notifications.foreground":"#EEFFFF","panel.background":"#263238","panel.border":"#26323860","panel.dropBackground":"#EEFFFF","panelTitle.activeBorder":"#80CBC4","panelTitle.activeForeground":"#FFFFFF","panelTitle.inactiveForeground":"#EEFFFF","peekView.border":"#00000030","peekViewEditor.background":"#303C41","peekViewEditor.matchHighlightBackground":"#80CBC420","peekViewEditorGutter.background":"#303C41","peekViewResult.background":"#303C41","peekViewResult.matchHighlightBackground":"#80CBC420","peekViewResult.selectionBackground":"#6c869270","peekViewTitle.background":"#303C41","peekViewTitleDescription.foreground":"#EEFFFF60","pickerGroup.border":"#FFFFFF1a","pickerGroup.foreground":"#80CBC4","progressBar.background":"#80CBC4","quickInput.background":"#263238","quickInput.foreground":"#6c8692","quickInput.list.focusBackground":"#EEFFFF20","sash.hoverBorder":"#80CBC450","scrollbar.shadow":"#00000030","scrollbarSlider.activeBackground":"#80CBC4","scrollbarSlider.background":"#EEFFFF20","scrollbarSlider.hoverBackground":"#EEFFFF10","selection.background":"#00000080","settings.checkboxBackground":"#263238","settings.checkboxForeground":"#EEFFFF","settings.dropdownBackground":"#263238","settings.dropdownForeground":"#EEFFFF","settings.headerForeground":"#80CBC4","settings.modifiedItemIndicator":"#80CBC4","settings.numberInputBackground":"#263238","settings.numberInputForeground":"#EEFFFF","settings.textInputBackground":"#263238","settings.textInputForeground":"#EEFFFF","sideBar.background":"#263238","sideBar.border":"#26323860","sideBar.foreground":"#6c8692","sideBarSectionHeader.background":"#263238","sideBarSectionHeader.border":"#26323860","sideBarTitle.foreground":"#EEFFFF","statusBar.background":"#263238","statusBar.border":"#26323860","statusBar.debuggingBackground":"#C792EA","statusBar.debuggingForeground":"#ffffff","statusBar.foreground":"#546E7A","statusBar.noFolderBackground":"#263238","statusBarItem.activeBackground":"#f0717880","statusBarItem.hoverBackground":"#546E7A20","statusBarItem.remoteBackground":"#80CBC4","statusBarItem.remoteForeground":"#000000","tab.activeBackground":"#263238","tab.activeBorder":"#80CBC4","tab.activeForeground":"#FFFFFF","tab.activeModifiedBorder":"#6c8692","tab.border":"#263238","tab.inactiveBackground":"#263238","tab.inactiveForeground":"#6c8692","tab.inactiveModifiedBorder":"#904348","tab.unfocusedActiveBorder":"#546E7A","tab.unfocusedActiveForeground":"#EEFFFF","tab.unfocusedActiveModifiedBorder":"#c05a60","tab.unfocusedInactiveModifiedBorder":"#904348","terminal.ansiBlack":"#000000","terminal.ansiBlue":"#82AAFF","terminal.ansiBrightBlack":"#546E7A","terminal.ansiBrightBlue":"#82AAFF","terminal.ansiBrightCyan":"#89DDFF","terminal.ansiBrightGreen":"#C3E88D","terminal.ansiBrightMagenta":"#C792EA","terminal.ansiBrightRed":"#f07178","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#FFCB6B","terminal.ansiCyan":"#89DDFF","terminal.ansiGreen":"#C3E88D","terminal.ansiMagenta":"#C792EA","terminal.ansiRed":"#f07178","terminal.ansiWhite":"#ffffff","terminal.ansiYellow":"#FFCB6B","terminalCursor.background":"#000000","terminalCursor.foreground":"#FFCB6B","textLink.activeForeground":"#EEFFFF","textLink.foreground":"#80CBC4","titleBar.activeBackground":"#263238","titleBar.activeForeground":"#EEFFFF","titleBar.border":"#26323860","titleBar.inactiveBackground":"#263238","titleBar.inactiveForeground":"#6c8692","tree.indentGuidesStroke":"#37474F","widget.shadow":"#00000030"},"displayName":"Material Theme","name":"material-theme","semanticHighlighting":true,"tokenColors":[{"settings":{"background":"#263238","foreground":"#EEFFFF"}},{"scope":"string","settings":{"foreground":"#C3E88D"}},{"scope":"punctuation, constant.other.symbol","settings":{"foreground":"#89DDFF"}},{"scope":"constant.character.escape, text.html constant.character.entity.named","settings":{"foreground":"#EEFFFF"}},{"scope":"constant.language.boolean","settings":{"foreground":"#ff9cac"}},{"scope":"constant.numeric","settings":{"foreground":"#F78C6C"}},{"scope":"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments","settings":{"foreground":"#EEFFFF"}},{"scope":"keyword.other","settings":{"foreground":"#F78C6C"}},{"scope":"keyword, modifier, variable.language.this, support.type.object, constant.language","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.function, support.function","settings":{"foreground":"#82AAFF"}},{"scope":"storage.type, storage.modifier, storage.control","settings":{"foreground":"#C792EA"}},{"scope":"support.module, support.node","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"support.type, constant.other.key","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.name.type, entity.other.inherited-class, entity.other","settings":{"foreground":"#FFCB6B"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#546E7A"}},{"scope":"comment punctuation.definition.comment, string.quoted.docstring","settings":{"fontStyle":"italic","foreground":"#546E7A"}},{"scope":"punctuation","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name, entity.name.type.class, support.type, support.class, meta.use","settings":{"foreground":"#FFCB6B"}},{"scope":"variable.object.property, meta.field.declaration entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.definition.method entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.function entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end","settings":{"foreground":"#89DDFF"}},{"scope":"meta.embedded, source.groovy.embedded, meta.template.expression","settings":{"foreground":"#EEFFFF"}},{"scope":"entity.name.tag.yaml","settings":{"foreground":"#f07178"}},{"scope":"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json","settings":{"foreground":"#f07178"}},{"scope":"constant.language.json","settings":{"foreground":"#89DDFF"}},{"scope":"entity.other.attribute-name.class","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#F78C6C"}},{"scope":"source.css entity.name.tag","settings":{"foreground":"#FFCB6B"}},{"scope":"support.type.property-name.css","settings":{"foreground":"#B2CCD6"}},{"scope":"meta.tag, punctuation.definition.tag","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.tag","settings":{"foreground":"#f07178"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#C792EA"}},{"scope":"punctuation.definition.entity.html","settings":{"foreground":"#EEFFFF"}},{"scope":"markup.heading","settings":{"foreground":"#89DDFF"}},{"scope":"text.html.markdown meta.link.inline, meta.link.reference","settings":{"foreground":"#f07178"}},{"scope":"text.html.markdown beginning.punctuation.definition.list","settings":{"foreground":"#89DDFF"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#f07178"}},{"scope":"markup.bold markup.italic, markup.italic markup.bold","settings":{"fontStyle":"italic bold","foreground":"#f07178"}},{"scope":"markup.fenced_code.block.markdown punctuation.definition.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"keyword.other.definition.ini","settings":{"foreground":"#f07178"}},{"scope":"entity.name.section.group-title.ini","settings":{"foreground":"#89DDFF"}},{"scope":"source.cs meta.class.identifier storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.identifier entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"source.cs meta.method-call meta.method, source.cs entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"source.cs storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.return-type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.preprocessor","settings":{"foreground":"#546E7A"}},{"scope":"source.cs entity.name.type.namespace","settings":{"foreground":"#EEFFFF"}},{"scope":"meta.jsx.children, SXNested","settings":{"foreground":"#EEFFFF"}},{"scope":"support.class.component","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cpp meta.block variable.other","settings":{"foreground":"#EEFFFF"}},{"scope":"source.python meta.member.access.python","settings":{"foreground":"#f07178"}},{"scope":"source.python meta.function-call.python, meta.function-call.arguments","settings":{"foreground":"#82AAFF"}},{"scope":"meta.block","settings":{"foreground":"#f07178"}},{"scope":"entity.name.function.call","settings":{"foreground":"#82AAFF"}},{"scope":"source.php support.other.namespace, source.php meta.use support.class","settings":{"foreground":"#EEFFFF"}},{"scope":"constant.keyword","settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":"entity.name.function","settings":{"foreground":"#82AAFF"}},{"settings":{"background":"#263238","foreground":"#EEFFFF"}},{"scope":["constant.other.placeholder"],"settings":{"foreground":"#f07178"}},{"scope":["markup.deleted"],"settings":{"foreground":"#f07178"}},{"scope":["markup.inserted"],"settings":{"foreground":"#C3E88D"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["keyword.control"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["variable.parameter"],"settings":{"fontStyle":"italic"}},{"scope":["variable.parameter.function.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":["constant.character.format.placeholder.other.python"],"settings":{"foreground":"#F78C6C"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["markup.fenced_code.block"],"settings":{"foreground":"#EEFFFF90"}},{"scope":["punctuation.definition.quote"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFCB6B"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#F78C6C"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#f07178"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#916b53"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#82AAFF"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C3E88D"}}],"type":"dark"}'))});var MM={};x(MM,{default:()=>mce});var mce,TM=_(()=>{mce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#80CBC4","activityBar.background":"#212121","activityBar.border":"#21212160","activityBar.dropBackground":"#f0717880","activityBar.foreground":"#EEFFFF","activityBarBadge.background":"#80CBC4","activityBarBadge.foreground":"#000000","badge.background":"#00000030","badge.foreground":"#545454","breadcrumb.activeSelectionForeground":"#80CBC4","breadcrumb.background":"#212121","breadcrumb.focusForeground":"#EEFFFF","breadcrumb.foreground":"#676767","breadcrumbPicker.background":"#212121","button.background":"#61616150","button.foreground":"#ffffff","debugConsole.errorForeground":"#f07178","debugConsole.infoForeground":"#89DDFF","debugConsole.warningForeground":"#FFCB6B","debugToolBar.background":"#212121","diffEditor.insertedTextBackground":"#89DDFF20","diffEditor.removedTextBackground":"#ff9cac20","dropdown.background":"#212121","dropdown.border":"#FFFFFF10","editor.background":"#212121","editor.findMatchBackground":"#000000","editor.findMatchBorder":"#80CBC4","editor.findMatchHighlight":"#EEFFFF","editor.findMatchHighlightBackground":"#00000050","editor.findMatchHighlightBorder":"#ffffff30","editor.findRangeHighlightBackground":"#FFCB6B30","editor.foreground":"#EEFFFF","editor.lineHighlightBackground":"#00000050","editor.lineHighlightBorder":"#00000000","editor.rangeHighlightBackground":"#FFFFFF0d","editor.selectionBackground":"#61616150","editor.selectionHighlightBackground":"#FFCC0020","editor.wordHighlightBackground":"#ff9cac30","editor.wordHighlightStrongBackground":"#C3E88D30","editorBracketMatch.background":"#212121","editorBracketMatch.border":"#FFCC0050","editorCursor.foreground":"#FFCC00","editorError.foreground":"#f0717870","editorGroup.border":"#00000030","editorGroup.dropBackground":"#f0717880","editorGroup.focusedEmptyBorder":"#f07178","editorGroupHeader.tabsBackground":"#212121","editorGutter.addedBackground":"#C3E88D60","editorGutter.deletedBackground":"#f0717860","editorGutter.modifiedBackground":"#82AAFF60","editorHoverWidget.background":"#212121","editorHoverWidget.border":"#FFFFFF10","editorIndentGuide.activeBackground":"#424242","editorIndentGuide.background":"#42424270","editorInfo.foreground":"#82AAFF70","editorLineNumber.activeForeground":"#676767","editorLineNumber.foreground":"#424242","editorLink.activeForeground":"#EEFFFF","editorMarkerNavigation.background":"#EEFFFF05","editorOverviewRuler.border":"#212121","editorOverviewRuler.errorForeground":"#f0717840","editorOverviewRuler.findMatchForeground":"#80CBC4","editorOverviewRuler.infoForeground":"#82AAFF40","editorOverviewRuler.warningForeground":"#FFCB6B40","editorRuler.foreground":"#424242","editorSuggestWidget.background":"#212121","editorSuggestWidget.border":"#FFFFFF10","editorSuggestWidget.foreground":"#EEFFFF","editorSuggestWidget.highlightForeground":"#80CBC4","editorSuggestWidget.selectedBackground":"#00000050","editorWarning.foreground":"#FFCB6B70","editorWhitespace.foreground":"#EEFFFF40","editorWidget.background":"#212121","editorWidget.border":"#80CBC4","editorWidget.resizeBorder":"#80CBC4","extensionBadge.remoteForeground":"#EEFFFF","extensionButton.prominentBackground":"#C3E88D90","extensionButton.prominentForeground":"#EEFFFF","extensionButton.prominentHoverBackground":"#C3E88D","focusBorder":"#FFFFFF00","foreground":"#EEFFFF","gitDecoration.conflictingResourceForeground":"#FFCB6B90","gitDecoration.deletedResourceForeground":"#f0717890","gitDecoration.ignoredResourceForeground":"#67676790","gitDecoration.modifiedResourceForeground":"#82AAFF90","gitDecoration.untrackedResourceForeground":"#C3E88D90","input.background":"#2B2B2B","input.border":"#FFFFFF10","input.foreground":"#EEFFFF","input.placeholderForeground":"#EEFFFF60","inputOption.activeBackground":"#EEFFFF30","inputOption.activeBorder":"#EEFFFF30","inputValidation.errorBorder":"#f07178","inputValidation.infoBorder":"#82AAFF","inputValidation.warningBorder":"#FFCB6B","list.activeSelectionBackground":"#212121","list.activeSelectionForeground":"#80CBC4","list.dropBackground":"#f0717880","list.focusBackground":"#EEFFFF20","list.focusForeground":"#EEFFFF","list.highlightForeground":"#80CBC4","list.hoverBackground":"#212121","list.hoverForeground":"#FFFFFF","list.inactiveSelectionBackground":"#00000030","list.inactiveSelectionForeground":"#80CBC4","listFilterWidget.background":"#00000030","listFilterWidget.noMatchesOutline":"#00000030","listFilterWidget.outline":"#00000030","menu.background":"#212121","menu.foreground":"#EEFFFF","menu.selectionBackground":"#00000050","menu.selectionBorder":"#00000030","menu.selectionForeground":"#80CBC4","menu.separatorBackground":"#EEFFFF","menubar.selectionBackground":"#00000030","menubar.selectionBorder":"#00000030","menubar.selectionForeground":"#80CBC4","notebook.focusedCellBorder":"#80CBC4","notebook.inactiveFocusedCellBorder":"#80CBC450","notificationLink.foreground":"#80CBC4","notifications.background":"#212121","notifications.foreground":"#EEFFFF","panel.background":"#212121","panel.border":"#21212160","panel.dropBackground":"#EEFFFF","panelTitle.activeBorder":"#80CBC4","panelTitle.activeForeground":"#FFFFFF","panelTitle.inactiveForeground":"#EEFFFF","peekView.border":"#00000030","peekViewEditor.background":"#2B2B2B","peekViewEditor.matchHighlightBackground":"#61616150","peekViewEditorGutter.background":"#2B2B2B","peekViewResult.background":"#2B2B2B","peekViewResult.matchHighlightBackground":"#61616150","peekViewResult.selectionBackground":"#67676770","peekViewTitle.background":"#2B2B2B","peekViewTitleDescription.foreground":"#EEFFFF60","pickerGroup.border":"#FFFFFF1a","pickerGroup.foreground":"#80CBC4","progressBar.background":"#80CBC4","quickInput.background":"#212121","quickInput.foreground":"#676767","quickInput.list.focusBackground":"#EEFFFF20","sash.hoverBorder":"#80CBC450","scrollbar.shadow":"#00000030","scrollbarSlider.activeBackground":"#80CBC4","scrollbarSlider.background":"#EEFFFF20","scrollbarSlider.hoverBackground":"#EEFFFF10","selection.background":"#00000080","settings.checkboxBackground":"#212121","settings.checkboxForeground":"#EEFFFF","settings.dropdownBackground":"#212121","settings.dropdownForeground":"#EEFFFF","settings.headerForeground":"#80CBC4","settings.modifiedItemIndicator":"#80CBC4","settings.numberInputBackground":"#212121","settings.numberInputForeground":"#EEFFFF","settings.textInputBackground":"#212121","settings.textInputForeground":"#EEFFFF","sideBar.background":"#212121","sideBar.border":"#21212160","sideBar.foreground":"#676767","sideBarSectionHeader.background":"#212121","sideBarSectionHeader.border":"#21212160","sideBarTitle.foreground":"#EEFFFF","statusBar.background":"#212121","statusBar.border":"#21212160","statusBar.debuggingBackground":"#C792EA","statusBar.debuggingForeground":"#ffffff","statusBar.foreground":"#616161","statusBar.noFolderBackground":"#212121","statusBarItem.activeBackground":"#f0717880","statusBarItem.hoverBackground":"#54545420","statusBarItem.remoteBackground":"#80CBC4","statusBarItem.remoteForeground":"#000000","tab.activeBackground":"#212121","tab.activeBorder":"#80CBC4","tab.activeForeground":"#FFFFFF","tab.activeModifiedBorder":"#676767","tab.border":"#212121","tab.inactiveBackground":"#212121","tab.inactiveForeground":"#676767","tab.inactiveModifiedBorder":"#904348","tab.unfocusedActiveBorder":"#545454","tab.unfocusedActiveForeground":"#EEFFFF","tab.unfocusedActiveModifiedBorder":"#c05a60","tab.unfocusedInactiveModifiedBorder":"#904348","terminal.ansiBlack":"#000000","terminal.ansiBlue":"#82AAFF","terminal.ansiBrightBlack":"#545454","terminal.ansiBrightBlue":"#82AAFF","terminal.ansiBrightCyan":"#89DDFF","terminal.ansiBrightGreen":"#C3E88D","terminal.ansiBrightMagenta":"#C792EA","terminal.ansiBrightRed":"#f07178","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#FFCB6B","terminal.ansiCyan":"#89DDFF","terminal.ansiGreen":"#C3E88D","terminal.ansiMagenta":"#C792EA","terminal.ansiRed":"#f07178","terminal.ansiWhite":"#ffffff","terminal.ansiYellow":"#FFCB6B","terminalCursor.background":"#000000","terminalCursor.foreground":"#FFCB6B","textLink.activeForeground":"#EEFFFF","textLink.foreground":"#80CBC4","titleBar.activeBackground":"#212121","titleBar.activeForeground":"#EEFFFF","titleBar.border":"#21212160","titleBar.inactiveBackground":"#212121","titleBar.inactiveForeground":"#676767","tree.indentGuidesStroke":"#424242","widget.shadow":"#00000030"},"displayName":"Material Theme Darker","name":"material-theme-darker","semanticHighlighting":true,"tokenColors":[{"settings":{"background":"#212121","foreground":"#EEFFFF"}},{"scope":"string","settings":{"foreground":"#C3E88D"}},{"scope":"punctuation, constant.other.symbol","settings":{"foreground":"#89DDFF"}},{"scope":"constant.character.escape, text.html constant.character.entity.named","settings":{"foreground":"#EEFFFF"}},{"scope":"constant.language.boolean","settings":{"foreground":"#ff9cac"}},{"scope":"constant.numeric","settings":{"foreground":"#F78C6C"}},{"scope":"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments","settings":{"foreground":"#EEFFFF"}},{"scope":"keyword.other","settings":{"foreground":"#F78C6C"}},{"scope":"keyword, modifier, variable.language.this, support.type.object, constant.language","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.function, support.function","settings":{"foreground":"#82AAFF"}},{"scope":"storage.type, storage.modifier, storage.control","settings":{"foreground":"#C792EA"}},{"scope":"support.module, support.node","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"support.type, constant.other.key","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.name.type, entity.other.inherited-class, entity.other","settings":{"foreground":"#FFCB6B"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#545454"}},{"scope":"comment punctuation.definition.comment, string.quoted.docstring","settings":{"fontStyle":"italic","foreground":"#545454"}},{"scope":"punctuation","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name, entity.name.type.class, support.type, support.class, meta.use","settings":{"foreground":"#FFCB6B"}},{"scope":"variable.object.property, meta.field.declaration entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.definition.method entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.function entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end","settings":{"foreground":"#89DDFF"}},{"scope":"meta.embedded, source.groovy.embedded, meta.template.expression","settings":{"foreground":"#EEFFFF"}},{"scope":"entity.name.tag.yaml","settings":{"foreground":"#f07178"}},{"scope":"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json","settings":{"foreground":"#f07178"}},{"scope":"constant.language.json","settings":{"foreground":"#89DDFF"}},{"scope":"entity.other.attribute-name.class","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#F78C6C"}},{"scope":"source.css entity.name.tag","settings":{"foreground":"#FFCB6B"}},{"scope":"support.type.property-name.css","settings":{"foreground":"#B2CCD6"}},{"scope":"meta.tag, punctuation.definition.tag","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.tag","settings":{"foreground":"#f07178"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#C792EA"}},{"scope":"punctuation.definition.entity.html","settings":{"foreground":"#EEFFFF"}},{"scope":"markup.heading","settings":{"foreground":"#89DDFF"}},{"scope":"text.html.markdown meta.link.inline, meta.link.reference","settings":{"foreground":"#f07178"}},{"scope":"text.html.markdown beginning.punctuation.definition.list","settings":{"foreground":"#89DDFF"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#f07178"}},{"scope":"markup.bold markup.italic, markup.italic markup.bold","settings":{"fontStyle":"italic bold","foreground":"#f07178"}},{"scope":"markup.fenced_code.block.markdown punctuation.definition.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"keyword.other.definition.ini","settings":{"foreground":"#f07178"}},{"scope":"entity.name.section.group-title.ini","settings":{"foreground":"#89DDFF"}},{"scope":"source.cs meta.class.identifier storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.identifier entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"source.cs meta.method-call meta.method, source.cs entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"source.cs storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.return-type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.preprocessor","settings":{"foreground":"#545454"}},{"scope":"source.cs entity.name.type.namespace","settings":{"foreground":"#EEFFFF"}},{"scope":"meta.jsx.children, SXNested","settings":{"foreground":"#EEFFFF"}},{"scope":"support.class.component","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cpp meta.block variable.other","settings":{"foreground":"#EEFFFF"}},{"scope":"source.python meta.member.access.python","settings":{"foreground":"#f07178"}},{"scope":"source.python meta.function-call.python, meta.function-call.arguments","settings":{"foreground":"#82AAFF"}},{"scope":"meta.block","settings":{"foreground":"#f07178"}},{"scope":"entity.name.function.call","settings":{"foreground":"#82AAFF"}},{"scope":"source.php support.other.namespace, source.php meta.use support.class","settings":{"foreground":"#EEFFFF"}},{"scope":"constant.keyword","settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":"entity.name.function","settings":{"foreground":"#82AAFF"}},{"settings":{"background":"#212121","foreground":"#EEFFFF"}},{"scope":["constant.other.placeholder"],"settings":{"foreground":"#f07178"}},{"scope":["markup.deleted"],"settings":{"foreground":"#f07178"}},{"scope":["markup.inserted"],"settings":{"foreground":"#C3E88D"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["keyword.control"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["variable.parameter"],"settings":{"fontStyle":"italic"}},{"scope":["variable.parameter.function.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":["constant.character.format.placeholder.other.python"],"settings":{"foreground":"#F78C6C"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["markup.fenced_code.block"],"settings":{"foreground":"#EEFFFF90"}},{"scope":["punctuation.definition.quote"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFCB6B"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#F78C6C"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#f07178"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#916b53"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#82AAFF"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C3E88D"}}],"type":"dark"}'))});var qM={};x(qM,{default:()=>gce});var gce,GM=_(()=>{gce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#80CBC4","activityBar.background":"#FAFAFA","activityBar.border":"#FAFAFA60","activityBar.dropBackground":"#E5393580","activityBar.foreground":"#90A4AE","activityBarBadge.background":"#80CBC4","activityBarBadge.foreground":"#000000","badge.background":"#CCD7DA30","badge.foreground":"#90A4AE","breadcrumb.activeSelectionForeground":"#80CBC4","breadcrumb.background":"#FAFAFA","breadcrumb.focusForeground":"#90A4AE","breadcrumb.foreground":"#758a95","breadcrumbPicker.background":"#FAFAFA","button.background":"#80CBC440","button.foreground":"#ffffff","debugConsole.errorForeground":"#E53935","debugConsole.infoForeground":"#39ADB5","debugConsole.warningForeground":"#E2931D","debugToolBar.background":"#FAFAFA","diffEditor.insertedTextBackground":"#39ADB520","diffEditor.removedTextBackground":"#FF537020","dropdown.background":"#FAFAFA","dropdown.border":"#00000010","editor.background":"#FAFAFA","editor.findMatchBackground":"#00000020","editor.findMatchBorder":"#80CBC4","editor.findMatchHighlight":"#90A4AE","editor.findMatchHighlightBackground":"#00000010","editor.findMatchHighlightBorder":"#00000030","editor.findRangeHighlightBackground":"#E2931D30","editor.foreground":"#90A4AE","editor.lineHighlightBackground":"#CCD7DA50","editor.lineHighlightBorder":"#CCD7DA00","editor.rangeHighlightBackground":"#FFFFFF0d","editor.selectionBackground":"#80CBC440","editor.selectionHighlightBackground":"#27272720","editor.wordHighlightBackground":"#FF537030","editor.wordHighlightStrongBackground":"#91B85930","editorBracketMatch.background":"#FAFAFA","editorBracketMatch.border":"#27272750","editorCursor.foreground":"#272727","editorError.foreground":"#E5393570","editorGroup.border":"#00000020","editorGroup.dropBackground":"#E5393580","editorGroup.focusedEmptyBorder":"#E53935","editorGroupHeader.tabsBackground":"#FAFAFA","editorGutter.addedBackground":"#91B85960","editorGutter.deletedBackground":"#E5393560","editorGutter.modifiedBackground":"#6182B860","editorHoverWidget.background":"#FAFAFA","editorHoverWidget.border":"#00000010","editorIndentGuide.activeBackground":"#B0BEC5","editorIndentGuide.background":"#B0BEC570","editorInfo.foreground":"#6182B870","editorLineNumber.activeForeground":"#758a95","editorLineNumber.foreground":"#CFD8DC","editorLink.activeForeground":"#90A4AE","editorMarkerNavigation.background":"#90A4AE05","editorOverviewRuler.border":"#FAFAFA","editorOverviewRuler.errorForeground":"#E5393540","editorOverviewRuler.findMatchForeground":"#80CBC4","editorOverviewRuler.infoForeground":"#6182B840","editorOverviewRuler.warningForeground":"#E2931D40","editorRuler.foreground":"#B0BEC5","editorSuggestWidget.background":"#FAFAFA","editorSuggestWidget.border":"#00000010","editorSuggestWidget.foreground":"#90A4AE","editorSuggestWidget.highlightForeground":"#80CBC4","editorSuggestWidget.selectedBackground":"#CCD7DA50","editorWarning.foreground":"#E2931D70","editorWhitespace.foreground":"#90A4AE40","editorWidget.background":"#FAFAFA","editorWidget.border":"#80CBC4","editorWidget.resizeBorder":"#80CBC4","extensionBadge.remoteForeground":"#90A4AE","extensionButton.prominentBackground":"#91B85990","extensionButton.prominentForeground":"#90A4AE","extensionButton.prominentHoverBackground":"#91B859","focusBorder":"#FFFFFF00","foreground":"#90A4AE","gitDecoration.conflictingResourceForeground":"#E2931D90","gitDecoration.deletedResourceForeground":"#E5393590","gitDecoration.ignoredResourceForeground":"#758a9590","gitDecoration.modifiedResourceForeground":"#6182B890","gitDecoration.untrackedResourceForeground":"#91B85990","input.background":"#EEEEEE","input.border":"#00000010","input.foreground":"#90A4AE","input.placeholderForeground":"#90A4AE60","inputOption.activeBackground":"#90A4AE30","inputOption.activeBorder":"#90A4AE30","inputValidation.errorBorder":"#E53935","inputValidation.infoBorder":"#6182B8","inputValidation.warningBorder":"#E2931D","list.activeSelectionBackground":"#FAFAFA","list.activeSelectionForeground":"#80CBC4","list.dropBackground":"#E5393580","list.focusBackground":"#90A4AE20","list.focusForeground":"#90A4AE","list.highlightForeground":"#80CBC4","list.hoverBackground":"#FAFAFA","list.hoverForeground":"#B1C7D3","list.inactiveSelectionBackground":"#CCD7DA50","list.inactiveSelectionForeground":"#80CBC4","listFilterWidget.background":"#CCD7DA50","listFilterWidget.noMatchesOutline":"#CCD7DA50","listFilterWidget.outline":"#CCD7DA50","menu.background":"#FAFAFA","menu.foreground":"#90A4AE","menu.selectionBackground":"#CCD7DA50","menu.selectionBorder":"#CCD7DA50","menu.selectionForeground":"#80CBC4","menu.separatorBackground":"#90A4AE","menubar.selectionBackground":"#CCD7DA50","menubar.selectionBorder":"#CCD7DA50","menubar.selectionForeground":"#80CBC4","notebook.focusedCellBorder":"#80CBC4","notebook.inactiveFocusedCellBorder":"#80CBC450","notificationLink.foreground":"#80CBC4","notifications.background":"#FAFAFA","notifications.foreground":"#90A4AE","panel.background":"#FAFAFA","panel.border":"#FAFAFA60","panel.dropBackground":"#90A4AE","panelTitle.activeBorder":"#80CBC4","panelTitle.activeForeground":"#000000","panelTitle.inactiveForeground":"#90A4AE","peekView.border":"#00000020","peekViewEditor.background":"#EEEEEE","peekViewEditor.matchHighlightBackground":"#80CBC440","peekViewEditorGutter.background":"#EEEEEE","peekViewResult.background":"#EEEEEE","peekViewResult.matchHighlightBackground":"#80CBC440","peekViewResult.selectionBackground":"#758a9570","peekViewTitle.background":"#EEEEEE","peekViewTitleDescription.foreground":"#90A4AE60","pickerGroup.border":"#FFFFFF1a","pickerGroup.foreground":"#80CBC4","progressBar.background":"#80CBC4","quickInput.background":"#FAFAFA","quickInput.foreground":"#758a95","quickInput.list.focusBackground":"#90A4AE20","sash.hoverBorder":"#80CBC450","scrollbar.shadow":"#00000020","scrollbarSlider.activeBackground":"#80CBC4","scrollbarSlider.background":"#90A4AE20","scrollbarSlider.hoverBackground":"#90A4AE10","selection.background":"#CCD7DA80","settings.checkboxBackground":"#FAFAFA","settings.checkboxForeground":"#90A4AE","settings.dropdownBackground":"#FAFAFA","settings.dropdownForeground":"#90A4AE","settings.headerForeground":"#80CBC4","settings.modifiedItemIndicator":"#80CBC4","settings.numberInputBackground":"#FAFAFA","settings.numberInputForeground":"#90A4AE","settings.textInputBackground":"#FAFAFA","settings.textInputForeground":"#90A4AE","sideBar.background":"#FAFAFA","sideBar.border":"#FAFAFA60","sideBar.foreground":"#758a95","sideBarSectionHeader.background":"#FAFAFA","sideBarSectionHeader.border":"#FAFAFA60","sideBarTitle.foreground":"#90A4AE","statusBar.background":"#FAFAFA","statusBar.border":"#FAFAFA60","statusBar.debuggingBackground":"#9C3EDA","statusBar.debuggingForeground":"#FFFFFF","statusBar.foreground":"#7E939E","statusBar.noFolderBackground":"#FAFAFA","statusBarItem.activeBackground":"#E5393580","statusBarItem.hoverBackground":"#90A4AE20","statusBarItem.remoteBackground":"#80CBC4","statusBarItem.remoteForeground":"#000000","tab.activeBackground":"#FAFAFA","tab.activeBorder":"#80CBC4","tab.activeForeground":"#000000","tab.activeModifiedBorder":"#758a95","tab.border":"#FAFAFA","tab.inactiveBackground":"#FAFAFA","tab.inactiveForeground":"#758a95","tab.inactiveModifiedBorder":"#89221f","tab.unfocusedActiveBorder":"#90A4AE","tab.unfocusedActiveForeground":"#90A4AE","tab.unfocusedActiveModifiedBorder":"#b72d2a","tab.unfocusedInactiveModifiedBorder":"#89221f","terminal.ansiBlack":"#000000","terminal.ansiBlue":"#6182B8","terminal.ansiBrightBlack":"#90A4AE","terminal.ansiBrightBlue":"#6182B8","terminal.ansiBrightCyan":"#39ADB5","terminal.ansiBrightGreen":"#91B859","terminal.ansiBrightMagenta":"#9C3EDA","terminal.ansiBrightRed":"#E53935","terminal.ansiBrightWhite":"#FFFFFF","terminal.ansiBrightYellow":"#E2931D","terminal.ansiCyan":"#39ADB5","terminal.ansiGreen":"#91B859","terminal.ansiMagenta":"#9C3EDA","terminal.ansiRed":"#E53935","terminal.ansiWhite":"#FFFFFF","terminal.ansiYellow":"#E2931D","terminalCursor.background":"#000000","terminalCursor.foreground":"#E2931D","textLink.activeForeground":"#90A4AE","textLink.foreground":"#80CBC4","titleBar.activeBackground":"#FAFAFA","titleBar.activeForeground":"#90A4AE","titleBar.border":"#FAFAFA60","titleBar.inactiveBackground":"#FAFAFA","titleBar.inactiveForeground":"#758a95","tree.indentGuidesStroke":"#B0BEC5","widget.shadow":"#00000020"},"displayName":"Material Theme Lighter","name":"material-theme-lighter","semanticHighlighting":true,"tokenColors":[{"settings":{"background":"#FAFAFA","foreground":"#90A4AE"}},{"scope":"string","settings":{"foreground":"#91B859"}},{"scope":"punctuation, constant.other.symbol","settings":{"foreground":"#39ADB5"}},{"scope":"constant.character.escape, text.html constant.character.entity.named","settings":{"foreground":"#90A4AE"}},{"scope":"constant.language.boolean","settings":{"foreground":"#FF5370"}},{"scope":"constant.numeric","settings":{"foreground":"#F76D47"}},{"scope":"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments","settings":{"foreground":"#90A4AE"}},{"scope":"keyword.other","settings":{"foreground":"#F76D47"}},{"scope":"keyword, modifier, variable.language.this, support.type.object, constant.language","settings":{"foreground":"#39ADB5"}},{"scope":"entity.name.function, support.function","settings":{"foreground":"#6182B8"}},{"scope":"storage.type, storage.modifier, storage.control","settings":{"foreground":"#9C3EDA"}},{"scope":"support.module, support.node","settings":{"fontStyle":"italic","foreground":"#E53935"}},{"scope":"support.type, constant.other.key","settings":{"foreground":"#E2931D"}},{"scope":"entity.name.type, entity.other.inherited-class, entity.other","settings":{"foreground":"#E2931D"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#90A4AE"}},{"scope":"comment punctuation.definition.comment, string.quoted.docstring","settings":{"fontStyle":"italic","foreground":"#90A4AE"}},{"scope":"punctuation","settings":{"foreground":"#39ADB5"}},{"scope":"entity.name, entity.name.type.class, support.type, support.class, meta.use","settings":{"foreground":"#E2931D"}},{"scope":"variable.object.property, meta.field.declaration entity.name.function","settings":{"foreground":"#E53935"}},{"scope":"meta.definition.method entity.name.function","settings":{"foreground":"#E53935"}},{"scope":"meta.function entity.name.function","settings":{"foreground":"#6182B8"}},{"scope":"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end","settings":{"foreground":"#39ADB5"}},{"scope":"meta.embedded, source.groovy.embedded, meta.template.expression","settings":{"foreground":"#90A4AE"}},{"scope":"entity.name.tag.yaml","settings":{"foreground":"#E53935"}},{"scope":"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json","settings":{"foreground":"#E53935"}},{"scope":"constant.language.json","settings":{"foreground":"#39ADB5"}},{"scope":"entity.other.attribute-name.class","settings":{"foreground":"#E2931D"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#F76D47"}},{"scope":"source.css entity.name.tag","settings":{"foreground":"#E2931D"}},{"scope":"support.type.property-name.css","settings":{"foreground":"#8796B0"}},{"scope":"meta.tag, punctuation.definition.tag","settings":{"foreground":"#39ADB5"}},{"scope":"entity.name.tag","settings":{"foreground":"#E53935"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#9C3EDA"}},{"scope":"punctuation.definition.entity.html","settings":{"foreground":"#90A4AE"}},{"scope":"markup.heading","settings":{"foreground":"#39ADB5"}},{"scope":"text.html.markdown meta.link.inline, meta.link.reference","settings":{"foreground":"#E53935"}},{"scope":"text.html.markdown beginning.punctuation.definition.list","settings":{"foreground":"#39ADB5"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#E53935"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#E53935"}},{"scope":"markup.bold markup.italic, markup.italic markup.bold","settings":{"fontStyle":"italic bold","foreground":"#E53935"}},{"scope":"markup.fenced_code.block.markdown punctuation.definition.markdown","settings":{"foreground":"#91B859"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#91B859"}},{"scope":"keyword.other.definition.ini","settings":{"foreground":"#E53935"}},{"scope":"entity.name.section.group-title.ini","settings":{"foreground":"#39ADB5"}},{"scope":"source.cs meta.class.identifier storage.type","settings":{"foreground":"#E2931D"}},{"scope":"source.cs meta.method.identifier entity.name.function","settings":{"foreground":"#E53935"}},{"scope":"source.cs meta.method-call meta.method, source.cs entity.name.function","settings":{"foreground":"#6182B8"}},{"scope":"source.cs storage.type","settings":{"foreground":"#E2931D"}},{"scope":"source.cs meta.method.return-type","settings":{"foreground":"#E2931D"}},{"scope":"source.cs meta.preprocessor","settings":{"foreground":"#90A4AE"}},{"scope":"source.cs entity.name.type.namespace","settings":{"foreground":"#90A4AE"}},{"scope":"meta.jsx.children, SXNested","settings":{"foreground":"#90A4AE"}},{"scope":"support.class.component","settings":{"foreground":"#E2931D"}},{"scope":"source.cpp meta.block variable.other","settings":{"foreground":"#90A4AE"}},{"scope":"source.python meta.member.access.python","settings":{"foreground":"#E53935"}},{"scope":"source.python meta.function-call.python, meta.function-call.arguments","settings":{"foreground":"#6182B8"}},{"scope":"meta.block","settings":{"foreground":"#E53935"}},{"scope":"entity.name.function.call","settings":{"foreground":"#6182B8"}},{"scope":"source.php support.other.namespace, source.php meta.use support.class","settings":{"foreground":"#90A4AE"}},{"scope":"constant.keyword","settings":{"fontStyle":"italic","foreground":"#39ADB5"}},{"scope":"entity.name.function","settings":{"foreground":"#6182B8"}},{"settings":{"background":"#FAFAFA","foreground":"#90A4AE"}},{"scope":["constant.other.placeholder"],"settings":{"foreground":"#E53935"}},{"scope":["markup.deleted"],"settings":{"foreground":"#E53935"}},{"scope":["markup.inserted"],"settings":{"foreground":"#91B859"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["keyword.control"],"settings":{"fontStyle":"italic","foreground":"#39ADB5"}},{"scope":["variable.parameter"],"settings":{"fontStyle":"italic"}},{"scope":["variable.parameter.function.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#E53935"}},{"scope":["constant.character.format.placeholder.other.python"],"settings":{"foreground":"#F76D47"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic","foreground":"#39ADB5"}},{"scope":["markup.fenced_code.block"],"settings":{"foreground":"#90A4AE90"}},{"scope":["punctuation.definition.quote"],"settings":{"foreground":"#FF5370"}},{"scope":["meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#9C3EDA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#E2931D"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#F76D47"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#E53935"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#916b53"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#6182B8"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FF5370"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#9C3EDA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#91B859"}}],"type":"light"}'))});var zM={};x(zM,{default:()=>fce});var fce,UM=_(()=>{fce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#80CBC4","activityBar.background":"#0F111A","activityBar.border":"#0F111A60","activityBar.dropBackground":"#f0717880","activityBar.foreground":"#babed8","activityBarBadge.background":"#80CBC4","activityBarBadge.foreground":"#000000","badge.background":"#00000030","badge.foreground":"#464B5D","breadcrumb.activeSelectionForeground":"#80CBC4","breadcrumb.background":"#0F111A","breadcrumb.focusForeground":"#babed8","breadcrumb.foreground":"#525975","breadcrumbPicker.background":"#0F111A","button.background":"#717CB450","button.foreground":"#ffffff","debugConsole.errorForeground":"#f07178","debugConsole.infoForeground":"#89DDFF","debugConsole.warningForeground":"#FFCB6B","debugToolBar.background":"#0F111A","diffEditor.insertedTextBackground":"#89DDFF20","diffEditor.removedTextBackground":"#ff9cac20","dropdown.background":"#0F111A","dropdown.border":"#FFFFFF10","editor.background":"#0F111A","editor.findMatchBackground":"#000000","editor.findMatchBorder":"#80CBC4","editor.findMatchHighlight":"#babed8","editor.findMatchHighlightBackground":"#00000050","editor.findMatchHighlightBorder":"#ffffff30","editor.findRangeHighlightBackground":"#FFCB6B30","editor.foreground":"#babed8","editor.lineHighlightBackground":"#00000050","editor.lineHighlightBorder":"#00000000","editor.rangeHighlightBackground":"#FFFFFF0d","editor.selectionBackground":"#717CB450","editor.selectionHighlightBackground":"#FFCC0020","editor.wordHighlightBackground":"#ff9cac30","editor.wordHighlightStrongBackground":"#C3E88D30","editorBracketMatch.background":"#0F111A","editorBracketMatch.border":"#FFCC0050","editorCursor.foreground":"#FFCC00","editorError.foreground":"#f0717870","editorGroup.border":"#00000030","editorGroup.dropBackground":"#f0717880","editorGroup.focusedEmptyBorder":"#f07178","editorGroupHeader.tabsBackground":"#0F111A","editorGutter.addedBackground":"#C3E88D60","editorGutter.deletedBackground":"#f0717860","editorGutter.modifiedBackground":"#82AAFF60","editorHoverWidget.background":"#0F111A","editorHoverWidget.border":"#FFFFFF10","editorIndentGuide.activeBackground":"#3B3F51","editorIndentGuide.background":"#3B3F5170","editorInfo.foreground":"#82AAFF70","editorLineNumber.activeForeground":"#525975","editorLineNumber.foreground":"#3B3F5180","editorLink.activeForeground":"#babed8","editorMarkerNavigation.background":"#babed805","editorOverviewRuler.border":"#0F111A","editorOverviewRuler.errorForeground":"#f0717840","editorOverviewRuler.findMatchForeground":"#80CBC4","editorOverviewRuler.infoForeground":"#82AAFF40","editorOverviewRuler.warningForeground":"#FFCB6B40","editorRuler.foreground":"#3B3F51","editorSuggestWidget.background":"#0F111A","editorSuggestWidget.border":"#FFFFFF10","editorSuggestWidget.foreground":"#babed8","editorSuggestWidget.highlightForeground":"#80CBC4","editorSuggestWidget.selectedBackground":"#00000050","editorWarning.foreground":"#FFCB6B70","editorWhitespace.foreground":"#babed840","editorWidget.background":"#0F111A","editorWidget.border":"#80CBC4","editorWidget.resizeBorder":"#80CBC4","extensionBadge.remoteForeground":"#babed8","extensionButton.prominentBackground":"#C3E88D90","extensionButton.prominentForeground":"#babed8","extensionButton.prominentHoverBackground":"#C3E88D","focusBorder":"#FFFFFF00","foreground":"#babed8","gitDecoration.conflictingResourceForeground":"#FFCB6B90","gitDecoration.deletedResourceForeground":"#f0717890","gitDecoration.ignoredResourceForeground":"#52597590","gitDecoration.modifiedResourceForeground":"#82AAFF90","gitDecoration.untrackedResourceForeground":"#C3E88D90","input.background":"#1A1C25","input.border":"#FFFFFF10","input.foreground":"#babed8","input.placeholderForeground":"#babed860","inputOption.activeBackground":"#babed830","inputOption.activeBorder":"#babed830","inputValidation.errorBorder":"#f07178","inputValidation.infoBorder":"#82AAFF","inputValidation.warningBorder":"#FFCB6B","list.activeSelectionBackground":"#0F111A","list.activeSelectionForeground":"#80CBC4","list.dropBackground":"#f0717880","list.focusBackground":"#babed820","list.focusForeground":"#babed8","list.highlightForeground":"#80CBC4","list.hoverBackground":"#0F111A","list.hoverForeground":"#FFFFFF","list.inactiveSelectionBackground":"#00000030","list.inactiveSelectionForeground":"#80CBC4","listFilterWidget.background":"#00000030","listFilterWidget.noMatchesOutline":"#00000030","listFilterWidget.outline":"#00000030","menu.background":"#0F111A","menu.foreground":"#babed8","menu.selectionBackground":"#00000050","menu.selectionBorder":"#00000030","menu.selectionForeground":"#80CBC4","menu.separatorBackground":"#babed8","menubar.selectionBackground":"#00000030","menubar.selectionBorder":"#00000030","menubar.selectionForeground":"#80CBC4","notebook.focusedCellBorder":"#80CBC4","notebook.inactiveFocusedCellBorder":"#80CBC450","notificationLink.foreground":"#80CBC4","notifications.background":"#0F111A","notifications.foreground":"#babed8","panel.background":"#0F111A","panel.border":"#0F111A60","panel.dropBackground":"#babed8","panelTitle.activeBorder":"#80CBC4","panelTitle.activeForeground":"#FFFFFF","panelTitle.inactiveForeground":"#babed8","peekView.border":"#00000030","peekViewEditor.background":"#1A1C25","peekViewEditor.matchHighlightBackground":"#717CB450","peekViewEditorGutter.background":"#1A1C25","peekViewResult.background":"#1A1C25","peekViewResult.matchHighlightBackground":"#717CB450","peekViewResult.selectionBackground":"#52597570","peekViewTitle.background":"#1A1C25","peekViewTitleDescription.foreground":"#babed860","pickerGroup.border":"#FFFFFF1a","pickerGroup.foreground":"#80CBC4","progressBar.background":"#80CBC4","quickInput.background":"#0F111A","quickInput.foreground":"#525975","quickInput.list.focusBackground":"#babed820","sash.hoverBorder":"#80CBC450","scrollbar.shadow":"#00000030","scrollbarSlider.activeBackground":"#80CBC4","scrollbarSlider.background":"#8F93A220","scrollbarSlider.hoverBackground":"#8F93A210","selection.background":"#00000080","settings.checkboxBackground":"#0F111A","settings.checkboxForeground":"#babed8","settings.dropdownBackground":"#0F111A","settings.dropdownForeground":"#babed8","settings.headerForeground":"#80CBC4","settings.modifiedItemIndicator":"#80CBC4","settings.numberInputBackground":"#0F111A","settings.numberInputForeground":"#babed8","settings.textInputBackground":"#0F111A","settings.textInputForeground":"#babed8","sideBar.background":"#0F111A","sideBar.border":"#0F111A60","sideBar.foreground":"#525975","sideBarSectionHeader.background":"#0F111A","sideBarSectionHeader.border":"#0F111A60","sideBarTitle.foreground":"#babed8","statusBar.background":"#0F111A","statusBar.border":"#0F111A60","statusBar.debuggingBackground":"#C792EA","statusBar.debuggingForeground":"#ffffff","statusBar.foreground":"#4B526D","statusBar.noFolderBackground":"#0F111A","statusBarItem.activeBackground":"#f0717880","statusBarItem.hoverBackground":"#464B5D20","statusBarItem.remoteBackground":"#80CBC4","statusBarItem.remoteForeground":"#000000","tab.activeBackground":"#0F111A","tab.activeBorder":"#80CBC4","tab.activeForeground":"#FFFFFF","tab.activeModifiedBorder":"#525975","tab.border":"#0F111A","tab.inactiveBackground":"#0F111A","tab.inactiveForeground":"#525975","tab.inactiveModifiedBorder":"#904348","tab.unfocusedActiveBorder":"#464B5D","tab.unfocusedActiveForeground":"#babed8","tab.unfocusedActiveModifiedBorder":"#c05a60","tab.unfocusedInactiveModifiedBorder":"#904348","terminal.ansiBlack":"#000000","terminal.ansiBlue":"#82AAFF","terminal.ansiBrightBlack":"#464B5D","terminal.ansiBrightBlue":"#82AAFF","terminal.ansiBrightCyan":"#89DDFF","terminal.ansiBrightGreen":"#C3E88D","terminal.ansiBrightMagenta":"#C792EA","terminal.ansiBrightRed":"#f07178","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#FFCB6B","terminal.ansiCyan":"#89DDFF","terminal.ansiGreen":"#C3E88D","terminal.ansiMagenta":"#C792EA","terminal.ansiRed":"#f07178","terminal.ansiWhite":"#ffffff","terminal.ansiYellow":"#FFCB6B","terminalCursor.background":"#000000","terminalCursor.foreground":"#FFCB6B","textLink.activeForeground":"#babed8","textLink.foreground":"#80CBC4","titleBar.activeBackground":"#0F111A","titleBar.activeForeground":"#babed8","titleBar.border":"#0F111A60","titleBar.inactiveBackground":"#0F111A","titleBar.inactiveForeground":"#525975","tree.indentGuidesStroke":"#3B3F51","widget.shadow":"#00000030"},"displayName":"Material Theme Ocean","name":"material-theme-ocean","semanticHighlighting":true,"tokenColors":[{"settings":{"background":"#0F111A","foreground":"#babed8"}},{"scope":"string","settings":{"foreground":"#C3E88D"}},{"scope":"punctuation, constant.other.symbol","settings":{"foreground":"#89DDFF"}},{"scope":"constant.character.escape, text.html constant.character.entity.named","settings":{"foreground":"#babed8"}},{"scope":"constant.language.boolean","settings":{"foreground":"#ff9cac"}},{"scope":"constant.numeric","settings":{"foreground":"#F78C6C"}},{"scope":"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments","settings":{"foreground":"#babed8"}},{"scope":"keyword.other","settings":{"foreground":"#F78C6C"}},{"scope":"keyword, modifier, variable.language.this, support.type.object, constant.language","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.function, support.function","settings":{"foreground":"#82AAFF"}},{"scope":"storage.type, storage.modifier, storage.control","settings":{"foreground":"#C792EA"}},{"scope":"support.module, support.node","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"support.type, constant.other.key","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.name.type, entity.other.inherited-class, entity.other","settings":{"foreground":"#FFCB6B"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#464B5D"}},{"scope":"comment punctuation.definition.comment, string.quoted.docstring","settings":{"fontStyle":"italic","foreground":"#464B5D"}},{"scope":"punctuation","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name, entity.name.type.class, support.type, support.class, meta.use","settings":{"foreground":"#FFCB6B"}},{"scope":"variable.object.property, meta.field.declaration entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.definition.method entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.function entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end","settings":{"foreground":"#89DDFF"}},{"scope":"meta.embedded, source.groovy.embedded, meta.template.expression","settings":{"foreground":"#babed8"}},{"scope":"entity.name.tag.yaml","settings":{"foreground":"#f07178"}},{"scope":"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json","settings":{"foreground":"#f07178"}},{"scope":"constant.language.json","settings":{"foreground":"#89DDFF"}},{"scope":"entity.other.attribute-name.class","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#F78C6C"}},{"scope":"source.css entity.name.tag","settings":{"foreground":"#FFCB6B"}},{"scope":"support.type.property-name.css","settings":{"foreground":"#B2CCD6"}},{"scope":"meta.tag, punctuation.definition.tag","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.tag","settings":{"foreground":"#f07178"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#C792EA"}},{"scope":"punctuation.definition.entity.html","settings":{"foreground":"#babed8"}},{"scope":"markup.heading","settings":{"foreground":"#89DDFF"}},{"scope":"text.html.markdown meta.link.inline, meta.link.reference","settings":{"foreground":"#f07178"}},{"scope":"text.html.markdown beginning.punctuation.definition.list","settings":{"foreground":"#89DDFF"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#f07178"}},{"scope":"markup.bold markup.italic, markup.italic markup.bold","settings":{"fontStyle":"italic bold","foreground":"#f07178"}},{"scope":"markup.fenced_code.block.markdown punctuation.definition.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"keyword.other.definition.ini","settings":{"foreground":"#f07178"}},{"scope":"entity.name.section.group-title.ini","settings":{"foreground":"#89DDFF"}},{"scope":"source.cs meta.class.identifier storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.identifier entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"source.cs meta.method-call meta.method, source.cs entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"source.cs storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.return-type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.preprocessor","settings":{"foreground":"#464B5D"}},{"scope":"source.cs entity.name.type.namespace","settings":{"foreground":"#babed8"}},{"scope":"meta.jsx.children, SXNested","settings":{"foreground":"#babed8"}},{"scope":"support.class.component","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cpp meta.block variable.other","settings":{"foreground":"#babed8"}},{"scope":"source.python meta.member.access.python","settings":{"foreground":"#f07178"}},{"scope":"source.python meta.function-call.python, meta.function-call.arguments","settings":{"foreground":"#82AAFF"}},{"scope":"meta.block","settings":{"foreground":"#f07178"}},{"scope":"entity.name.function.call","settings":{"foreground":"#82AAFF"}},{"scope":"source.php support.other.namespace, source.php meta.use support.class","settings":{"foreground":"#babed8"}},{"scope":"constant.keyword","settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":"entity.name.function","settings":{"foreground":"#82AAFF"}},{"settings":{"background":"#0F111A","foreground":"#babed8"}},{"scope":["constant.other.placeholder"],"settings":{"foreground":"#f07178"}},{"scope":["markup.deleted"],"settings":{"foreground":"#f07178"}},{"scope":["markup.inserted"],"settings":{"foreground":"#C3E88D"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["keyword.control"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["variable.parameter"],"settings":{"fontStyle":"italic"}},{"scope":["variable.parameter.function.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":["constant.character.format.placeholder.other.python"],"settings":{"foreground":"#F78C6C"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["markup.fenced_code.block"],"settings":{"foreground":"#babed890"}},{"scope":["punctuation.definition.quote"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFCB6B"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#F78C6C"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#f07178"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#916b53"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#82AAFF"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C3E88D"}}],"type":"dark"}'))});var HM={};x(HM,{default:()=>bce});var bce,ZM=_(()=>{bce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#80CBC4","activityBar.background":"#292D3E","activityBar.border":"#292D3E60","activityBar.dropBackground":"#f0717880","activityBar.foreground":"#babed8","activityBarBadge.background":"#80CBC4","activityBarBadge.foreground":"#000000","badge.background":"#00000030","badge.foreground":"#676E95","breadcrumb.activeSelectionForeground":"#80CBC4","breadcrumb.background":"#292D3E","breadcrumb.focusForeground":"#babed8","breadcrumb.foreground":"#676E95","breadcrumbPicker.background":"#292D3E","button.background":"#717CB450","button.foreground":"#ffffff","debugConsole.errorForeground":"#f07178","debugConsole.infoForeground":"#89DDFF","debugConsole.warningForeground":"#FFCB6B","debugToolBar.background":"#292D3E","diffEditor.insertedTextBackground":"#89DDFF20","diffEditor.removedTextBackground":"#ff9cac20","dropdown.background":"#292D3E","dropdown.border":"#FFFFFF10","editor.background":"#292D3E","editor.findMatchBackground":"#000000","editor.findMatchBorder":"#80CBC4","editor.findMatchHighlight":"#babed8","editor.findMatchHighlightBackground":"#00000050","editor.findMatchHighlightBorder":"#ffffff30","editor.findRangeHighlightBackground":"#FFCB6B30","editor.foreground":"#babed8","editor.lineHighlightBackground":"#00000050","editor.lineHighlightBorder":"#00000000","editor.rangeHighlightBackground":"#FFFFFF0d","editor.selectionBackground":"#717CB450","editor.selectionHighlightBackground":"#FFCC0020","editor.wordHighlightBackground":"#ff9cac30","editor.wordHighlightStrongBackground":"#C3E88D30","editorBracketMatch.background":"#292D3E","editorBracketMatch.border":"#FFCC0050","editorCursor.foreground":"#FFCC00","editorError.foreground":"#f0717870","editorGroup.border":"#00000030","editorGroup.dropBackground":"#f0717880","editorGroup.focusedEmptyBorder":"#f07178","editorGroupHeader.tabsBackground":"#292D3E","editorGutter.addedBackground":"#C3E88D60","editorGutter.deletedBackground":"#f0717860","editorGutter.modifiedBackground":"#82AAFF60","editorHoverWidget.background":"#292D3E","editorHoverWidget.border":"#FFFFFF10","editorIndentGuide.activeBackground":"#4E5579","editorIndentGuide.background":"#4E557970","editorInfo.foreground":"#82AAFF70","editorLineNumber.activeForeground":"#676E95","editorLineNumber.foreground":"#3A3F58","editorLink.activeForeground":"#babed8","editorMarkerNavigation.background":"#babed805","editorOverviewRuler.border":"#292D3E","editorOverviewRuler.errorForeground":"#f0717840","editorOverviewRuler.findMatchForeground":"#80CBC4","editorOverviewRuler.infoForeground":"#82AAFF40","editorOverviewRuler.warningForeground":"#FFCB6B40","editorRuler.foreground":"#4E5579","editorSuggestWidget.background":"#292D3E","editorSuggestWidget.border":"#FFFFFF10","editorSuggestWidget.foreground":"#babed8","editorSuggestWidget.highlightForeground":"#80CBC4","editorSuggestWidget.selectedBackground":"#00000050","editorWarning.foreground":"#FFCB6B70","editorWhitespace.foreground":"#babed840","editorWidget.background":"#292D3E","editorWidget.border":"#80CBC4","editorWidget.resizeBorder":"#80CBC4","extensionBadge.remoteForeground":"#babed8","extensionButton.prominentBackground":"#C3E88D90","extensionButton.prominentForeground":"#babed8","extensionButton.prominentHoverBackground":"#C3E88D","focusBorder":"#FFFFFF00","foreground":"#babed8","gitDecoration.conflictingResourceForeground":"#FFCB6B90","gitDecoration.deletedResourceForeground":"#f0717890","gitDecoration.ignoredResourceForeground":"#676E9590","gitDecoration.modifiedResourceForeground":"#82AAFF90","gitDecoration.untrackedResourceForeground":"#C3E88D90","input.background":"#333747","input.border":"#FFFFFF10","input.foreground":"#babed8","input.placeholderForeground":"#babed860","inputOption.activeBackground":"#babed830","inputOption.activeBorder":"#babed830","inputValidation.errorBorder":"#f07178","inputValidation.infoBorder":"#82AAFF","inputValidation.warningBorder":"#FFCB6B","list.activeSelectionBackground":"#292D3E","list.activeSelectionForeground":"#80CBC4","list.dropBackground":"#f0717880","list.focusBackground":"#babed820","list.focusForeground":"#babed8","list.highlightForeground":"#80CBC4","list.hoverBackground":"#292D3E","list.hoverForeground":"#FFFFFF","list.inactiveSelectionBackground":"#00000030","list.inactiveSelectionForeground":"#80CBC4","listFilterWidget.background":"#00000030","listFilterWidget.noMatchesOutline":"#00000030","listFilterWidget.outline":"#00000030","menu.background":"#292D3E","menu.foreground":"#babed8","menu.selectionBackground":"#00000050","menu.selectionBorder":"#00000030","menu.selectionForeground":"#80CBC4","menu.separatorBackground":"#babed8","menubar.selectionBackground":"#00000030","menubar.selectionBorder":"#00000030","menubar.selectionForeground":"#80CBC4","notebook.focusedCellBorder":"#80CBC4","notebook.inactiveFocusedCellBorder":"#80CBC450","notificationLink.foreground":"#80CBC4","notifications.background":"#292D3E","notifications.foreground":"#babed8","panel.background":"#292D3E","panel.border":"#292D3E60","panel.dropBackground":"#babed8","panelTitle.activeBorder":"#80CBC4","panelTitle.activeForeground":"#FFFFFF","panelTitle.inactiveForeground":"#babed8","peekView.border":"#00000030","peekViewEditor.background":"#333747","peekViewEditor.matchHighlightBackground":"#717CB450","peekViewEditorGutter.background":"#333747","peekViewResult.background":"#333747","peekViewResult.matchHighlightBackground":"#717CB450","peekViewResult.selectionBackground":"#676E9570","peekViewTitle.background":"#333747","peekViewTitleDescription.foreground":"#babed860","pickerGroup.border":"#FFFFFF1a","pickerGroup.foreground":"#80CBC4","progressBar.background":"#80CBC4","quickInput.background":"#292D3E","quickInput.foreground":"#676E95","quickInput.list.focusBackground":"#babed820","sash.hoverBorder":"#80CBC450","scrollbar.shadow":"#00000030","scrollbarSlider.activeBackground":"#80CBC4","scrollbarSlider.background":"#A6ACCD20","scrollbarSlider.hoverBackground":"#A6ACCD10","selection.background":"#00000080","settings.checkboxBackground":"#292D3E","settings.checkboxForeground":"#babed8","settings.dropdownBackground":"#292D3E","settings.dropdownForeground":"#babed8","settings.headerForeground":"#80CBC4","settings.modifiedItemIndicator":"#80CBC4","settings.numberInputBackground":"#292D3E","settings.numberInputForeground":"#babed8","settings.textInputBackground":"#292D3E","settings.textInputForeground":"#babed8","sideBar.background":"#292D3E","sideBar.border":"#292D3E60","sideBar.foreground":"#676E95","sideBarSectionHeader.background":"#292D3E","sideBarSectionHeader.border":"#292D3E60","sideBarTitle.foreground":"#babed8","statusBar.background":"#292D3E","statusBar.border":"#292D3E60","statusBar.debuggingBackground":"#C792EA","statusBar.debuggingForeground":"#ffffff","statusBar.foreground":"#676E95","statusBar.noFolderBackground":"#292D3E","statusBarItem.activeBackground":"#f0717880","statusBarItem.hoverBackground":"#676E9520","statusBarItem.remoteBackground":"#80CBC4","statusBarItem.remoteForeground":"#000000","tab.activeBackground":"#292D3E","tab.activeBorder":"#80CBC4","tab.activeForeground":"#FFFFFF","tab.activeModifiedBorder":"#676E95","tab.border":"#292D3E","tab.inactiveBackground":"#292D3E","tab.inactiveForeground":"#676E95","tab.inactiveModifiedBorder":"#904348","tab.unfocusedActiveBorder":"#676E95","tab.unfocusedActiveForeground":"#babed8","tab.unfocusedActiveModifiedBorder":"#c05a60","tab.unfocusedInactiveModifiedBorder":"#904348","terminal.ansiBlack":"#000000","terminal.ansiBlue":"#82AAFF","terminal.ansiBrightBlack":"#676E95","terminal.ansiBrightBlue":"#82AAFF","terminal.ansiBrightCyan":"#89DDFF","terminal.ansiBrightGreen":"#C3E88D","terminal.ansiBrightMagenta":"#C792EA","terminal.ansiBrightRed":"#f07178","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#FFCB6B","terminal.ansiCyan":"#89DDFF","terminal.ansiGreen":"#C3E88D","terminal.ansiMagenta":"#C792EA","terminal.ansiRed":"#f07178","terminal.ansiWhite":"#ffffff","terminal.ansiYellow":"#FFCB6B","terminalCursor.background":"#000000","terminalCursor.foreground":"#FFCB6B","textLink.activeForeground":"#babed8","textLink.foreground":"#80CBC4","titleBar.activeBackground":"#292D3E","titleBar.activeForeground":"#babed8","titleBar.border":"#292D3E60","titleBar.inactiveBackground":"#292D3E","titleBar.inactiveForeground":"#676E95","tree.indentGuidesStroke":"#4E5579","widget.shadow":"#00000030"},"displayName":"Material Theme Palenight","name":"material-theme-palenight","semanticHighlighting":true,"tokenColors":[{"settings":{"background":"#292D3E","foreground":"#babed8"}},{"scope":"string","settings":{"foreground":"#C3E88D"}},{"scope":"punctuation, constant.other.symbol","settings":{"foreground":"#89DDFF"}},{"scope":"constant.character.escape, text.html constant.character.entity.named","settings":{"foreground":"#babed8"}},{"scope":"constant.language.boolean","settings":{"foreground":"#ff9cac"}},{"scope":"constant.numeric","settings":{"foreground":"#F78C6C"}},{"scope":"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments","settings":{"foreground":"#babed8"}},{"scope":"keyword.other","settings":{"foreground":"#F78C6C"}},{"scope":"keyword, modifier, variable.language.this, support.type.object, constant.language","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.function, support.function","settings":{"foreground":"#82AAFF"}},{"scope":"storage.type, storage.modifier, storage.control","settings":{"foreground":"#C792EA"}},{"scope":"support.module, support.node","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"support.type, constant.other.key","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.name.type, entity.other.inherited-class, entity.other","settings":{"foreground":"#FFCB6B"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#676E95"}},{"scope":"comment punctuation.definition.comment, string.quoted.docstring","settings":{"fontStyle":"italic","foreground":"#676E95"}},{"scope":"punctuation","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name, entity.name.type.class, support.type, support.class, meta.use","settings":{"foreground":"#FFCB6B"}},{"scope":"variable.object.property, meta.field.declaration entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.definition.method entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.function entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end","settings":{"foreground":"#89DDFF"}},{"scope":"meta.embedded, source.groovy.embedded, meta.template.expression","settings":{"foreground":"#babed8"}},{"scope":"entity.name.tag.yaml","settings":{"foreground":"#f07178"}},{"scope":"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json","settings":{"foreground":"#f07178"}},{"scope":"constant.language.json","settings":{"foreground":"#89DDFF"}},{"scope":"entity.other.attribute-name.class","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#F78C6C"}},{"scope":"source.css entity.name.tag","settings":{"foreground":"#FFCB6B"}},{"scope":"support.type.property-name.css","settings":{"foreground":"#B2CCD6"}},{"scope":"meta.tag, punctuation.definition.tag","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.tag","settings":{"foreground":"#f07178"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#C792EA"}},{"scope":"punctuation.definition.entity.html","settings":{"foreground":"#babed8"}},{"scope":"markup.heading","settings":{"foreground":"#89DDFF"}},{"scope":"text.html.markdown meta.link.inline, meta.link.reference","settings":{"foreground":"#f07178"}},{"scope":"text.html.markdown beginning.punctuation.definition.list","settings":{"foreground":"#89DDFF"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#f07178"}},{"scope":"markup.bold markup.italic, markup.italic markup.bold","settings":{"fontStyle":"italic bold","foreground":"#f07178"}},{"scope":"markup.fenced_code.block.markdown punctuation.definition.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"keyword.other.definition.ini","settings":{"foreground":"#f07178"}},{"scope":"entity.name.section.group-title.ini","settings":{"foreground":"#89DDFF"}},{"scope":"source.cs meta.class.identifier storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.identifier entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"source.cs meta.method-call meta.method, source.cs entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"source.cs storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.return-type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.preprocessor","settings":{"foreground":"#676E95"}},{"scope":"source.cs entity.name.type.namespace","settings":{"foreground":"#babed8"}},{"scope":"meta.jsx.children, SXNested","settings":{"foreground":"#babed8"}},{"scope":"support.class.component","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cpp meta.block variable.other","settings":{"foreground":"#babed8"}},{"scope":"source.python meta.member.access.python","settings":{"foreground":"#f07178"}},{"scope":"source.python meta.function-call.python, meta.function-call.arguments","settings":{"foreground":"#82AAFF"}},{"scope":"meta.block","settings":{"foreground":"#f07178"}},{"scope":"entity.name.function.call","settings":{"foreground":"#82AAFF"}},{"scope":"source.php support.other.namespace, source.php meta.use support.class","settings":{"foreground":"#babed8"}},{"scope":"constant.keyword","settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":"entity.name.function","settings":{"foreground":"#82AAFF"}},{"settings":{"background":"#292D3E","foreground":"#babed8"}},{"scope":["constant.other.placeholder"],"settings":{"foreground":"#f07178"}},{"scope":["markup.deleted"],"settings":{"foreground":"#f07178"}},{"scope":["markup.inserted"],"settings":{"foreground":"#C3E88D"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["keyword.control"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["variable.parameter"],"settings":{"fontStyle":"italic"}},{"scope":["variable.parameter.function.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":["constant.character.format.placeholder.other.python"],"settings":{"foreground":"#F78C6C"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["markup.fenced_code.block"],"settings":{"foreground":"#babed890"}},{"scope":["punctuation.definition.quote"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFCB6B"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#F78C6C"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#f07178"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#916b53"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#82AAFF"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C3E88D"}}],"type":"dark"}'))});var YM={};x(YM,{default:()=>hce});var hce,WM=_(()=>{hce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#1A1A1A","activityBar.foreground":"#7D7D7D","activityBarBadge.background":"#383838","badge.background":"#383838","badge.foreground":"#C1C1C1","button.background":"#333","debugIcon.breakpointCurrentStackframeForeground":"#79b8ff","debugIcon.breakpointDisabledForeground":"#848484","debugIcon.breakpointForeground":"#FF7A84","debugIcon.breakpointStackframeForeground":"#79b8ff","debugIcon.breakpointUnverifiedForeground":"#848484","debugIcon.continueForeground":"#FF7A84","debugIcon.disconnectForeground":"#FF7A84","debugIcon.pauseForeground":"#FF7A84","debugIcon.restartForeground":"#79b8ff","debugIcon.startForeground":"#79b8ff","debugIcon.stepBackForeground":"#FF7A84","debugIcon.stepIntoForeground":"#FF7A84","debugIcon.stepOutForeground":"#FF7A84","debugIcon.stepOverForeground":"#FF7A84","debugIcon.stopForeground":"#79b8ff","diffEditor.insertedTextBackground":"#3a632a4b","diffEditor.removedTextBackground":"#88063852","editor.background":"#1f1f1f","editor.lineHighlightBorder":"#303030","editorGroupHeader.tabsBackground":"#1A1A1A","editorGroupHeader.tabsBorder":"#1A1A1A","editorIndentGuide.activeBackground":"#383838","editorIndentGuide.background":"#2A2A2A","editorLineNumber.foreground":"#727272","editorRuler.foreground":"#2A2A2A","editorSuggestWidget.background":"#1A1A1A","focusBorder":"#444","foreground":"#888888","gitDecoration.ignoredResourceForeground":"#444444","input.background":"#2A2A2A","input.foreground":"#E0E0E0","inputOption.activeBackground":"#3a3a3a","list.activeSelectionBackground":"#212121","list.activeSelectionForeground":"#F5F5F5","list.focusBackground":"#292929","list.highlightForeground":"#EAEAEA","list.hoverBackground":"#262626","list.hoverForeground":"#9E9E9E","list.inactiveSelectionBackground":"#212121","list.inactiveSelectionForeground":"#F5F5F5","panelTitle.activeBorder":"#1f1f1f","panelTitle.activeForeground":"#FAFAFA","panelTitle.inactiveForeground":"#484848","peekView.border":"#444","peekViewEditor.background":"#242424","pickerGroup.border":"#363636","pickerGroup.foreground":"#EAEAEA","progressBar.background":"#FAFAFA","scrollbar.shadow":"#1f1f1f","sideBar.background":"#1A1A1A","sideBarSectionHeader.background":"#202020","statusBar.background":"#1A1A1A","statusBar.debuggingBackground":"#1A1A1A","statusBar.foreground":"#7E7E7E","statusBar.noFolderBackground":"#1A1A1A","statusBarItem.prominentBackground":"#fafafa1a","statusBarItem.remoteBackground":"#1a1a1a00","statusBarItem.remoteForeground":"#7E7E7E","symbolIcon.classForeground":"#FF9800","symbolIcon.constructorForeground":"#b392f0","symbolIcon.enumeratorForeground":"#FF9800","symbolIcon.enumeratorMemberForeground":"#79b8ff","symbolIcon.eventForeground":"#FF9800","symbolIcon.fieldForeground":"#79b8ff","symbolIcon.functionForeground":"#b392f0","symbolIcon.interfaceForeground":"#79b8ff","symbolIcon.methodForeground":"#b392f0","symbolIcon.variableForeground":"#79b8ff","tab.activeBorder":"#1e1e1e","tab.activeForeground":"#FAFAFA","tab.border":"#1A1A1A","tab.inactiveBackground":"#1A1A1A","tab.inactiveForeground":"#727272","terminal.ansiBrightBlack":"#5c5c5c","textLink.activeForeground":"#fafafa","textLink.foreground":"#CCC","titleBar.activeBackground":"#1A1A1A","titleBar.border":"#00000000"},"displayName":"Min Dark","name":"min-dark","semanticHighlighting":true,"tokenColors":[{"settings":{"foreground":"#b392f0"}},{"scope":["support.function","keyword.operator.accessor","meta.group.braces.round.function.arguments","meta.template.expression","markup.fenced_code meta.embedded.block"],"settings":{"foreground":"#b392f0"}},{"scope":"emphasis","settings":{"fontStyle":"italic"}},{"scope":["strong","markup.heading.markdown","markup.bold.markdown"],"settings":{"fontStyle":"bold","foreground":"#FF7A84"}},{"scope":["markup.italic.markdown"],"settings":{"fontStyle":"italic"}},{"scope":"meta.link.inline.markdown","settings":{"fontStyle":"underline","foreground":"#1976D2"}},{"scope":["string","markup.fenced_code","markup.inline"],"settings":{"foreground":"#9db1c5"}},{"scope":["comment","string.quoted.docstring.multi"],"settings":{"foreground":"#6b737c"}},{"scope":["constant.language","variable.language.this","variable.other.object","variable.other.class","variable.other.constant","meta.property-name","support","string.other.link.title.markdown"],"settings":{"foreground":"#79b8ff"}},{"scope":["constant.numeric","constant.other.placeholder","constant.character.format.placeholder","meta.property-value","keyword.other.unit","keyword.other.template","entity.name.tag.yaml","entity.other.attribute-name","support.type.property-name.json"],"settings":{"foreground":"#f8f8f8"}},{"scope":["keyword","storage.modifier","storage.type","storage.control.clojure","entity.name.function.clojure","support.function.node","punctuation.separator.key-value","punctuation.definition.template-expression"],"settings":{"foreground":"#f97583"}},{"scope":"variable.parameter.function","settings":{"foreground":"#FF9800"}},{"scope":["entity.name.type","entity.other.inherited-class","meta.function-call","meta.instance.constructor","entity.other.attribute-name","entity.name.function","constant.keyword.clojure"],"settings":{"foreground":"#b392f0"}},{"scope":["entity.name.tag","string.quoted","string.regexp","string.interpolated","string.template","string.unquoted.plain.out.yaml","keyword.other.template"],"settings":{"foreground":"#ffab70"}},{"scope":"token.info-token","settings":{"foreground":"#316bcd"}},{"scope":"token.warn-token","settings":{"foreground":"#cd9731"}},{"scope":"token.error-token","settings":{"foreground":"#cd3131"}},{"scope":"token.debug-token","settings":{"foreground":"#800080"}},{"scope":["punctuation.definition.arguments","punctuation.definition.dict","punctuation.separator","meta.function-call.arguments"],"settings":{"foreground":"#bbbbbb"}},{"scope":"markup.underline.link","settings":{"foreground":"#ffab70"}},{"scope":["beginning.punctuation.definition.list.markdown"],"settings":{"foreground":"#FF7A84"}},{"scope":"punctuation.definition.metadata.markdown","settings":{"foreground":"#ffab70"}},{"scope":["punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown"],"settings":{"foreground":"#79b8ff"}}],"type":"dark"}'))});var KM={};x(KM,{default:()=>yce});var yce,JM=_(()=>{yce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#f6f6f6","activityBar.foreground":"#9E9E9E","activityBarBadge.background":"#616161","badge.background":"#E0E0E0","badge.foreground":"#616161","button.background":"#757575","button.hoverBackground":"#616161","debugIcon.breakpointCurrentStackframeForeground":"#1976D2","debugIcon.breakpointDisabledForeground":"#848484","debugIcon.breakpointForeground":"#D32F2F","debugIcon.breakpointStackframeForeground":"#1976D2","debugIcon.continueForeground":"#6f42c1","debugIcon.disconnectForeground":"#6f42c1","debugIcon.pauseForeground":"#6f42c1","debugIcon.restartForeground":"#1976D2","debugIcon.startForeground":"#1976D2","debugIcon.stepBackForeground":"#6f42c1","debugIcon.stepIntoForeground":"#6f42c1","debugIcon.stepOutForeground":"#6f42c1","debugIcon.stepOverForeground":"#6f42c1","debugIcon.stopForeground":"#1976D2","diffEditor.insertedTextBackground":"#b7e7a44b","diffEditor.removedTextBackground":"#e597af52","editor.background":"#ffffff","editor.foreground":"#212121","editor.lineHighlightBorder":"#f2f2f2","editorBracketMatch.background":"#E7F3FF","editorBracketMatch.border":"#c8e1ff","editorGroupHeader.tabsBackground":"#f6f6f6","editorGroupHeader.tabsBorder":"#fff","editorIndentGuide.background":"#EEE","editorLineNumber.activeForeground":"#757575","editorLineNumber.foreground":"#CCC","editorSuggestWidget.background":"#F3F3F3","extensionButton.prominentBackground":"#000000AA","extensionButton.prominentHoverBackground":"#000000BB","focusBorder":"#D0D0D0","foreground":"#757575","gitDecoration.ignoredResourceForeground":"#AAAAAA","input.border":"#E9E9E9","inputOption.activeBackground":"#EDEDED","list.activeSelectionBackground":"#EEE","list.activeSelectionForeground":"#212121","list.focusBackground":"#ddd","list.focusForeground":"#212121","list.highlightForeground":"#212121","list.inactiveSelectionBackground":"#E0E0E0","list.inactiveSelectionForeground":"#212121","panel.background":"#fff","panel.border":"#f4f4f4","panelTitle.activeBorder":"#fff","panelTitle.inactiveForeground":"#BDBDBD","peekView.border":"#E0E0E0","peekViewEditor.background":"#f8f8f8","pickerGroup.foreground":"#000","progressBar.background":"#000","scrollbar.shadow":"#FFF","sideBar.background":"#f6f6f6","sideBar.border":"#f6f6f6","sideBarSectionHeader.background":"#EEE","sideBarTitle.foreground":"#999","statusBar.background":"#f6f6f6","statusBar.border":"#f6f6f6","statusBar.debuggingBackground":"#f6f6f6","statusBar.foreground":"#7E7E7E","statusBar.noFolderBackground":"#f6f6f6","statusBarItem.prominentBackground":"#0000001a","statusBarItem.remoteBackground":"#f6f6f600","statusBarItem.remoteForeground":"#7E7E7E","symbolIcon.classForeground":"#dd8500","symbolIcon.constructorForeground":"#6f42c1","symbolIcon.enumeratorForeground":"#dd8500","symbolIcon.enumeratorMemberForeground":"#1976D2","symbolIcon.eventForeground":"#dd8500","symbolIcon.fieldForeground":"#1976D2","symbolIcon.functionForeground":"#6f42c1","symbolIcon.interfaceForeground":"#1976D2","symbolIcon.methodForeground":"#6f42c1","symbolIcon.variableForeground":"#1976D2","tab.activeBorder":"#FFF","tab.activeForeground":"#424242","tab.border":"#f6f6f6","tab.inactiveBackground":"#f6f6f6","tab.inactiveForeground":"#BDBDBD","tab.unfocusedActiveBorder":"#fff","terminal.ansiBlack":"#333","terminal.ansiBlue":"#e0e0e0","terminal.ansiBrightBlack":"#a1a1a1","terminal.ansiBrightBlue":"#6871ff","terminal.ansiBrightCyan":"#57d9ad","terminal.ansiBrightGreen":"#a3d900","terminal.ansiBrightMagenta":"#a37acc","terminal.ansiBrightRed":"#d6656a","terminal.ansiBrightWhite":"#7E7E7E","terminal.ansiBrightYellow":"#e7c547","terminal.ansiCyan":"#4dbf99","terminal.ansiGreen":"#77cc00","terminal.ansiMagenta":"#9966cc","terminal.ansiRed":"#D32F2F","terminal.ansiWhite":"#c7c7c7","terminal.ansiYellow":"#f29718","terminal.background":"#fff","textLink.activeForeground":"#000","textLink.foreground":"#000","titleBar.activeBackground":"#f6f6f6","titleBar.border":"#FFFFFF00","titleBar.inactiveBackground":"#f6f6f6"},"displayName":"Min Light","name":"min-light","tokenColors":[{"settings":{"foreground":"#24292eff"}},{"scope":["keyword.operator.accessor","meta.group.braces.round.function.arguments","meta.template.expression","markup.fenced_code meta.embedded.block"],"settings":{"foreground":"#24292eff"}},{"scope":"emphasis","settings":{"fontStyle":"italic"}},{"scope":["strong","markup.heading.markdown","markup.bold.markdown"],"settings":{"fontStyle":"bold"}},{"scope":["markup.italic.markdown"],"settings":{"fontStyle":"italic"}},{"scope":"meta.link.inline.markdown","settings":{"fontStyle":"underline","foreground":"#1976D2"}},{"scope":["string","markup.fenced_code","markup.inline"],"settings":{"foreground":"#2b5581"}},{"scope":["comment","string.quoted.docstring.multi"],"settings":{"foreground":"#c2c3c5"}},{"scope":["constant.numeric","constant.language","constant.other.placeholder","constant.character.format.placeholder","variable.language.this","variable.other.object","variable.other.class","variable.other.constant","meta.property-name","meta.property-value","support"],"settings":{"foreground":"#1976D2"}},{"scope":["keyword","storage.modifier","storage.type","storage.control.clojure","entity.name.function.clojure","entity.name.tag.yaml","support.function.node","support.type.property-name.json","punctuation.separator.key-value","punctuation.definition.template-expression"],"settings":{"foreground":"#D32F2F"}},{"scope":"variable.parameter.function","settings":{"foreground":"#FF9800"}},{"scope":["support.function","entity.name.type","entity.other.inherited-class","meta.function-call","meta.instance.constructor","entity.other.attribute-name","entity.name.function","constant.keyword.clojure"],"settings":{"foreground":"#6f42c1"}},{"scope":["entity.name.tag","string.quoted","string.regexp","string.interpolated","string.template","string.unquoted.plain.out.yaml","keyword.other.template"],"settings":{"foreground":"#22863a"}},{"scope":"token.info-token","settings":{"foreground":"#316bcd"}},{"scope":"token.warn-token","settings":{"foreground":"#cd9731"}},{"scope":"token.error-token","settings":{"foreground":"#cd3131"}},{"scope":"token.debug-token","settings":{"foreground":"#800080"}},{"scope":["strong","markup.heading.markdown","markup.bold.markdown"],"settings":{"foreground":"#6f42c1"}},{"scope":["punctuation.definition.arguments","punctuation.definition.dict","punctuation.separator","meta.function-call.arguments"],"settings":{"foreground":"#212121"}},{"scope":["markup.underline.link","punctuation.definition.metadata.markdown"],"settings":{"foreground":"#22863a"}},{"scope":["beginning.punctuation.definition.list.markdown"],"settings":{"foreground":"#6f42c1"}},{"scope":["punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown","string.other.link.title.markdown","string.other.link.description.markdown"],"settings":{"foreground":"#d32f2f"}}],"type":"light"}'))});var VM={};x(VM,{default:()=>wce});var wce,XM=_(()=>{wce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#272822","activityBar.foreground":"#f8f8f2","badge.background":"#75715E","badge.foreground":"#f8f8f2","button.background":"#75715E","debugToolBar.background":"#1e1f1c","diffEditor.insertedTextBackground":"#4b661680","diffEditor.removedTextBackground":"#90274A70","dropdown.background":"#414339","dropdown.listBackground":"#1e1f1c","editor.background":"#272822","editor.foreground":"#f8f8f2","editor.lineHighlightBackground":"#3e3d32","editor.selectionBackground":"#878b9180","editor.selectionHighlightBackground":"#575b6180","editor.wordHighlightBackground":"#4a4a7680","editor.wordHighlightStrongBackground":"#6a6a9680","editorCursor.foreground":"#f8f8f0","editorGroup.border":"#34352f","editorGroup.dropBackground":"#41433980","editorGroupHeader.tabsBackground":"#1e1f1c","editorHoverWidget.background":"#414339","editorHoverWidget.border":"#75715E","editorIndentGuide.activeBackground":"#767771","editorIndentGuide.background":"#464741","editorLineNumber.activeForeground":"#c2c2bf","editorLineNumber.foreground":"#90908a","editorSuggestWidget.background":"#272822","editorSuggestWidget.border":"#75715E","editorWhitespace.foreground":"#464741","editorWidget.background":"#1e1f1c","focusBorder":"#99947c","input.background":"#414339","inputOption.activeBorder":"#75715E","inputValidation.errorBackground":"#90274A","inputValidation.errorBorder":"#f92672","inputValidation.infoBackground":"#546190","inputValidation.infoBorder":"#819aff","inputValidation.warningBackground":"#848528","inputValidation.warningBorder":"#e2e22e","list.activeSelectionBackground":"#75715E","list.dropBackground":"#414339","list.highlightForeground":"#f8f8f2","list.hoverBackground":"#3e3d32","list.inactiveSelectionBackground":"#414339","menu.background":"#1e1f1c","menu.foreground":"#cccccc","minimap.selectionHighlight":"#878b9180","panel.border":"#414339","panelTitle.activeBorder":"#75715E","panelTitle.activeForeground":"#f8f8f2","panelTitle.inactiveForeground":"#75715E","peekView.border":"#75715E","peekViewEditor.background":"#272822","peekViewEditor.matchHighlightBackground":"#75715E","peekViewResult.background":"#1e1f1c","peekViewResult.matchHighlightBackground":"#75715E","peekViewResult.selectionBackground":"#414339","peekViewTitle.background":"#1e1f1c","pickerGroup.foreground":"#75715E","ports.iconRunningProcessForeground":"#ccccc7","progressBar.background":"#75715E","quickInputList.focusBackground":"#414339","selection.background":"#878b9180","settings.focusedRowBackground":"#4143395A","sideBar.background":"#1e1f1c","sideBarSectionHeader.background":"#272822","statusBar.background":"#414339","statusBar.debuggingBackground":"#75715E","statusBar.noFolderBackground":"#414339","statusBarItem.remoteBackground":"#AC6218","tab.border":"#1e1f1c","tab.inactiveBackground":"#34352f","tab.inactiveForeground":"#ccccc7","tab.lastPinnedBorder":"#414339","terminal.ansiBlack":"#333333","terminal.ansiBlue":"#6A7EC8","terminal.ansiBrightBlack":"#666666","terminal.ansiBrightBlue":"#819aff","terminal.ansiBrightCyan":"#66D9EF","terminal.ansiBrightGreen":"#A6E22E","terminal.ansiBrightMagenta":"#AE81FF","terminal.ansiBrightRed":"#f92672","terminal.ansiBrightWhite":"#f8f8f2","terminal.ansiBrightYellow":"#e2e22e","terminal.ansiCyan":"#56ADBC","terminal.ansiGreen":"#86B42B","terminal.ansiMagenta":"#8C6BC8","terminal.ansiRed":"#C4265E","terminal.ansiWhite":"#e3e3dd","terminal.ansiYellow":"#B3B42B","titleBar.activeBackground":"#1e1f1c","widget.shadow":"#00000098"},"displayName":"Monokai","name":"monokai","semanticHighlighting":true,"tokenColors":[{"settings":{"foreground":"#F8F8F2"}},{"scope":["meta.embedded","source.groovy.embedded","string meta.image.inline.markdown","variable.legacy.builtin.python"],"settings":{"foreground":"#F8F8F2"}},{"scope":"comment","settings":{"foreground":"#88846f"}},{"scope":"string","settings":{"foreground":"#E6DB74"}},{"scope":["punctuation.definition.template-expression","punctuation.section.embedded"],"settings":{"foreground":"#F92672"}},{"scope":["meta.template.expression"],"settings":{"foreground":"#F8F8F2"}},{"scope":"constant.numeric","settings":{"foreground":"#AE81FF"}},{"scope":"constant.language","settings":{"foreground":"#AE81FF"}},{"scope":"constant.character, constant.other","settings":{"foreground":"#AE81FF"}},{"scope":"variable","settings":{"fontStyle":"","foreground":"#F8F8F2"}},{"scope":"keyword","settings":{"foreground":"#F92672"}},{"scope":"storage","settings":{"fontStyle":"","foreground":"#F92672"}},{"scope":"storage.type","settings":{"fontStyle":"italic","foreground":"#66D9EF"}},{"scope":"entity.name.type, entity.name.class, entity.name.namespace, entity.name.scope-resolution","settings":{"fontStyle":"underline","foreground":"#A6E22E"}},{"scope":["entity.other.inherited-class","punctuation.separator.namespace.ruby"],"settings":{"fontStyle":"italic underline","foreground":"#A6E22E"}},{"scope":"entity.name.function","settings":{"fontStyle":"","foreground":"#A6E22E"}},{"scope":"variable.parameter","settings":{"fontStyle":"italic","foreground":"#FD971F"}},{"scope":"entity.name.tag","settings":{"fontStyle":"","foreground":"#F92672"}},{"scope":"entity.other.attribute-name","settings":{"fontStyle":"","foreground":"#A6E22E"}},{"scope":"support.function","settings":{"fontStyle":"","foreground":"#66D9EF"}},{"scope":"support.constant","settings":{"fontStyle":"","foreground":"#66D9EF"}},{"scope":"support.type, support.class","settings":{"fontStyle":"italic","foreground":"#66D9EF"}},{"scope":"support.other.variable","settings":{"fontStyle":""}},{"scope":"invalid","settings":{"fontStyle":"","foreground":"#F44747"}},{"scope":"invalid.deprecated","settings":{"foreground":"#F44747"}},{"scope":"meta.structure.dictionary.json string.quoted.double.json","settings":{"foreground":"#CFCFC2"}},{"scope":"meta.diff, meta.diff.header","settings":{"foreground":"#75715E"}},{"scope":"markup.deleted","settings":{"foreground":"#F92672"}},{"scope":"markup.inserted","settings":{"foreground":"#A6E22E"}},{"scope":"markup.changed","settings":{"foreground":"#E6DB74"}},{"scope":"constant.numeric.line-number.find-in-files - match","settings":{"foreground":"#AE81FFA0"}},{"scope":"entity.name.filename.find-in-files","settings":{"foreground":"#E6DB74"}},{"scope":"markup.quote","settings":{"foreground":"#F92672"}},{"scope":"markup.list","settings":{"foreground":"#E6DB74"}},{"scope":"markup.bold, markup.italic","settings":{"foreground":"#66D9EF"}},{"scope":"markup.inline.raw","settings":{"fontStyle":"","foreground":"#FD971F"}},{"scope":"markup.heading","settings":{"foreground":"#A6E22E"}},{"scope":"markup.heading.setext","settings":{"fontStyle":"bold","foreground":"#A6E22E"}},{"scope":"markup.heading.markdown","settings":{"fontStyle":"bold"}},{"scope":"markup.quote.markdown","settings":{"fontStyle":"italic","foreground":"#75715E"}},{"scope":"markup.bold.markdown","settings":{"fontStyle":"bold"}},{"scope":"string.other.link.title.markdown,string.other.link.description.markdown","settings":{"foreground":"#AE81FF"}},{"scope":"markup.underline.link.markdown,markup.underline.link.image.markdown","settings":{"foreground":"#E6DB74"}},{"scope":"markup.italic.markdown","settings":{"fontStyle":"italic"}},{"scope":"markup.strikethrough","settings":{"fontStyle":"strikethrough"}},{"scope":"markup.list.unnumbered.markdown, markup.list.numbered.markdown","settings":{"foreground":"#f8f8f2"}},{"scope":["punctuation.definition.list.begin.markdown"],"settings":{"foreground":"#A6E22E"}},{"scope":"token.info-token","settings":{"foreground":"#6796e6"}},{"scope":"token.warn-token","settings":{"foreground":"#cd9731"}},{"scope":"token.error-token","settings":{"foreground":"#f44747"}},{"scope":"token.debug-token","settings":{"foreground":"#b267e6"}},{"scope":"variable.language","settings":{"foreground":"#FD971F"}}],"type":"dark"}'))});var e3={};x(e3,{default:()=>kce});var kce,t3=_(()=>{kce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#011627","activityBar.border":"#011627","activityBar.dropBackground":"#5f7e97","activityBar.foreground":"#5f7e97","activityBarBadge.background":"#44596b","activityBarBadge.foreground":"#ffffff","badge.background":"#5f7e97","badge.foreground":"#ffffff","breadcrumb.activeSelectionForeground":"#FFFFFF","breadcrumb.focusForeground":"#ffffff","breadcrumb.foreground":"#A599E9","breadcrumbPicker.background":"#001122","button.background":"#7e57c2cc","button.foreground":"#ffffffcc","button.hoverBackground":"#7e57c2","contrastBorder":"#122d42","debugExceptionWidget.background":"#011627","debugExceptionWidget.border":"#5f7e97","debugToolBar.background":"#011627","diffEditor.insertedTextBackground":"#99b76d23","diffEditor.removedTextBackground":"#ef535033","dropdown.background":"#011627","dropdown.border":"#5f7e97","dropdown.foreground":"#ffffffcc","editor.background":"#011627","editor.findMatchBackground":"#5f7e9779","editor.findMatchHighlightBackground":"#1085bb5d","editor.findRangeHighlightBackground":null,"editor.foreground":"#d6deeb","editor.hoverHighlightBackground":"#7e57c25a","editor.inactiveSelectionBackground":"#7e57c25a","editor.lineHighlightBackground":"#28707d29","editor.lineHighlightBorder":null,"editor.rangeHighlightBackground":"#7e57c25a","editor.selectionBackground":"#1d3b53","editor.selectionHighlightBackground":"#5f7e9779","editor.wordHighlightBackground":"#f6bbe533","editor.wordHighlightStrongBackground":"#e2a2f433","editorCodeLens.foreground":"#5e82ceb4","editorCursor.foreground":"#80a4c2","editorError.border":null,"editorError.foreground":"#EF5350","editorGroup.border":"#011627","editorGroup.dropBackground":"#7e57c273","editorGroup.emptyBackground":"#011627","editorGroupHeader.noTabsBackground":"#011627","editorGroupHeader.tabsBackground":"#011627","editorGroupHeader.tabsBorder":"#262A39","editorGutter.addedBackground":"#9CCC65","editorGutter.background":"#011627","editorGutter.deletedBackground":"#EF5350","editorGutter.modifiedBackground":"#e2b93d","editorHoverWidget.background":"#011627","editorHoverWidget.border":"#5f7e97","editorIndentGuide.activeBackground":"#7E97AC","editorIndentGuide.background":"#5e81ce52","editorInlayHint.background":"#0000","editorInlayHint.foreground":"#829D9D","editorLineNumber.activeForeground":"#C5E4FD","editorLineNumber.foreground":"#4b6479","editorLink.activeForeground":null,"editorMarkerNavigation.background":"#0b2942","editorMarkerNavigationError.background":"#EF5350","editorMarkerNavigationWarning.background":"#FFCA28","editorOverviewRuler.commonContentForeground":"#7e57c2","editorOverviewRuler.currentContentForeground":"#7e57c2","editorOverviewRuler.incomingContentForeground":"#7e57c2","editorRuler.foreground":"#5e81ce52","editorSuggestWidget.background":"#2C3043","editorSuggestWidget.border":"#2B2F40","editorSuggestWidget.foreground":"#d6deeb","editorSuggestWidget.highlightForeground":"#ffffff","editorSuggestWidget.selectedBackground":"#5f7e97","editorWarning.border":null,"editorWarning.foreground":"#b39554","editorWhitespace.foreground":null,"editorWidget.background":"#021320","editorWidget.border":"#5f7e97","errorForeground":"#EF5350","extensionButton.prominentBackground":"#7e57c2cc","extensionButton.prominentForeground":"#ffffffcc","extensionButton.prominentHoverBackground":"#7e57c2","focusBorder":"#122d42","foreground":"#d6deeb","gitDecoration.conflictingResourceForeground":"#ffeb95cc","gitDecoration.deletedResourceForeground":"#EF535090","gitDecoration.ignoredResourceForeground":"#395a75","gitDecoration.modifiedResourceForeground":"#a2bffc","gitDecoration.untrackedResourceForeground":"#c5e478ff","input.background":"#0b253a","input.border":"#5f7e97","input.foreground":"#ffffffcc","input.placeholderForeground":"#5f7e97","inputOption.activeBorder":"#ffffffcc","inputValidation.errorBackground":"#AB0300F2","inputValidation.errorBorder":"#EF5350","inputValidation.infoBackground":"#00589EF2","inputValidation.infoBorder":"#64B5F6","inputValidation.warningBackground":"#675700F2","inputValidation.warningBorder":"#FFCA28","list.activeSelectionBackground":"#234d708c","list.activeSelectionForeground":"#ffffff","list.dropBackground":"#011627","list.focusBackground":"#010d18","list.focusForeground":"#ffffff","list.highlightForeground":"#ffffff","list.hoverBackground":"#011627","list.hoverForeground":"#ffffff","list.inactiveSelectionBackground":"#0e293f","list.inactiveSelectionForeground":"#5f7e97","list.invalidItemForeground":"#975f94","merge.border":null,"merge.currentContentBackground":null,"merge.currentHeaderBackground":"#5f7e97","merge.incomingContentBackground":null,"merge.incomingHeaderBackground":"#7e57c25a","meta.objectliteral.js":"#82AAFF","notificationCenter.border":"#262a39","notificationLink.foreground":"#80CBC4","notificationToast.border":"#262a39","notifications.background":"#01111d","notifications.border":"#262a39","notifications.foreground":"#ffffffcc","panel.background":"#011627","panel.border":"#5f7e97","panelTitle.activeBorder":"#5f7e97","panelTitle.activeForeground":"#ffffffcc","panelTitle.inactiveForeground":"#d6deeb80","peekView.border":"#5f7e97","peekViewEditor.background":"#011627","peekViewEditor.matchHighlightBackground":"#7e57c25a","peekViewResult.background":"#011627","peekViewResult.fileForeground":"#5f7e97","peekViewResult.lineForeground":"#5f7e97","peekViewResult.matchHighlightBackground":"#ffffffcc","peekViewResult.selectionBackground":"#2E3250","peekViewResult.selectionForeground":"#5f7e97","peekViewTitle.background":"#011627","peekViewTitleDescription.foreground":"#697098","peekViewTitleLabel.foreground":"#5f7e97","pickerGroup.border":"#011627","pickerGroup.foreground":"#d1aaff","progress.background":"#7e57c2","punctuation.definition.generic.begin.html":"#ef5350f2","scrollbar.shadow":"#010b14","scrollbarSlider.activeBackground":"#084d8180","scrollbarSlider.background":"#084d8180","scrollbarSlider.hoverBackground":"#084d8180","selection.background":"#4373c2","sideBar.background":"#011627","sideBar.border":"#011627","sideBar.foreground":"#89a4bb","sideBarSectionHeader.background":"#011627","sideBarSectionHeader.foreground":"#5f7e97","sideBarTitle.foreground":"#5f7e97","source.elm":"#5f7e97","statusBar.background":"#011627","statusBar.border":"#262A39","statusBar.debuggingBackground":"#202431","statusBar.debuggingBorder":"#1F2330","statusBar.debuggingForeground":null,"statusBar.foreground":"#5f7e97","statusBar.noFolderBackground":"#011627","statusBar.noFolderBorder":"#25293A","statusBar.noFolderForeground":null,"statusBarItem.activeBackground":"#202431","statusBarItem.hoverBackground":"#202431","statusBarItem.prominentBackground":"#202431","statusBarItem.prominentHoverBackground":"#202431","string.quoted.single.js":"#ffffff","tab.activeBackground":"#0b2942","tab.activeBorder":"#262A39","tab.activeForeground":"#d2dee7","tab.border":"#272B3B","tab.inactiveBackground":"#01111d","tab.inactiveForeground":"#5f7e97","tab.unfocusedActiveBorder":"#262A39","tab.unfocusedActiveForeground":"#5f7e97","tab.unfocusedInactiveForeground":"#5f7e97","terminal.ansiBlack":"#011627","terminal.ansiBlue":"#82AAFF","terminal.ansiBrightBlack":"#575656","terminal.ansiBrightBlue":"#82AAFF","terminal.ansiBrightCyan":"#7fdbca","terminal.ansiBrightGreen":"#22da6e","terminal.ansiBrightMagenta":"#C792EA","terminal.ansiBrightRed":"#EF5350","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#ffeb95","terminal.ansiCyan":"#21c7a8","terminal.ansiGreen":"#22da6e","terminal.ansiMagenta":"#C792EA","terminal.ansiRed":"#EF5350","terminal.ansiWhite":"#ffffff","terminal.ansiYellow":"#c5e478","terminal.selectionBackground":"#1b90dd4d","terminalCursor.background":"#234d70","textCodeBlock.background":"#4f4f4f","titleBar.activeBackground":"#011627","titleBar.activeForeground":"#eeefff","titleBar.inactiveBackground":"#010e1a","titleBar.inactiveForeground":null,"walkThrough.embeddedEditorBackground":"#011627","welcomePage.buttonBackground":"#011627","welcomePage.buttonHoverBackground":"#011627","widget.shadow":"#011627"},"displayName":"Night Owl","name":"night-owl","semanticHighlighting":false,"tokenColors":[{"scope":["markup.changed","meta.diff.header.git","meta.diff.header.from-file","meta.diff.header.to-file"],"settings":{"fontStyle":"italic","foreground":"#a2bffc"}},{"scope":"markup.deleted.diff","settings":{"fontStyle":"italic","foreground":"#EF535090"}},{"scope":"markup.inserted.diff","settings":{"fontStyle":"italic","foreground":"#c5e478ff"}},{"settings":{"background":"#011627","foreground":"#d6deeb"}},{"scope":["comment","punctuation.definition.comment"],"settings":{"fontStyle":"italic","foreground":"#637777"}},{"scope":"string","settings":{"foreground":"#ecc48d"}},{"scope":["string.quoted","variable.other.readwrite.js"],"settings":{"foreground":"#ecc48d"}},{"scope":"support.constant.math","settings":{"foreground":"#c5e478"}},{"scope":["constant.numeric","constant.character.numeric"],"settings":{"fontStyle":"","foreground":"#F78C6C"}},{"scope":["constant.language","punctuation.definition.constant","variable.other.constant"],"settings":{"foreground":"#82AAFF"}},{"scope":["constant.character","constant.other"],"settings":{"foreground":"#82AAFF"}},{"scope":"constant.character.escape","settings":{"foreground":"#F78C6C"}},{"scope":["string.regexp","string.regexp keyword.other"],"settings":{"foreground":"#5ca7e4"}},{"scope":"meta.function punctuation.separator.comma","settings":{"foreground":"#5f7e97"}},{"scope":"variable","settings":{"foreground":"#c5e478"}},{"scope":["punctuation.accessor","keyword"],"settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":["storage","meta.var.expr","meta.class meta.method.declaration meta.var.expr storage.type.js","storage.type.property.js","storage.type.property.ts","storage.type.property.tsx"],"settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":"storage.type","settings":{"foreground":"#c792ea"}},{"scope":"storage.type.function.arrow.js","settings":{"fontStyle":""}},{"scope":["entity.name.class","meta.class entity.name.type.class"],"settings":{"foreground":"#ffcb8b"}},{"scope":"entity.other.inherited-class","settings":{"foreground":"#c5e478"}},{"scope":"entity.name.function","settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":["punctuation.definition.tag","meta.tag"],"settings":{"foreground":"#7fdbca"}},{"scope":["entity.name.tag","meta.tag.other.html","meta.tag.other.js","meta.tag.other.tsx","entity.name.tag.tsx","entity.name.tag.js","entity.name.tag","meta.tag.js","meta.tag.tsx","meta.tag.html"],"settings":{"fontStyle":"","foreground":"#caece6"}},{"scope":"entity.other.attribute-name","settings":{"fontStyle":"italic","foreground":"#c5e478"}},{"scope":"entity.name.tag.custom","settings":{"foreground":"#f78c6c"}},{"scope":["support.function","support.constant"],"settings":{"foreground":"#82AAFF"}},{"scope":"support.constant.meta.property-value","settings":{"foreground":"#7fdbca"}},{"scope":["support.type","support.class"],"settings":{"foreground":"#c5e478"}},{"scope":"support.variable.dom","settings":{"foreground":"#c5e478"}},{"scope":"invalid","settings":{"background":"#ff2c83","foreground":"#ffffff"}},{"scope":"invalid.deprecated","settings":{"background":"#d3423e","foreground":"#ffffff"}},{"scope":"keyword.operator","settings":{"fontStyle":"","foreground":"#7fdbca"}},{"scope":"keyword.operator.relational","settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":"keyword.operator.assignment","settings":{"foreground":"#c792ea"}},{"scope":"keyword.operator.arithmetic","settings":{"foreground":"#c792ea"}},{"scope":"keyword.operator.bitwise","settings":{"foreground":"#c792ea"}},{"scope":"keyword.operator.increment","settings":{"foreground":"#c792ea"}},{"scope":"keyword.operator.ternary","settings":{"foreground":"#c792ea"}},{"scope":"comment.line.double-slash","settings":{"foreground":"#637777"}},{"scope":"object","settings":{"foreground":"#cdebf7"}},{"scope":"constant.language.null","settings":{"foreground":"#ff5874"}},{"scope":"meta.brace","settings":{"foreground":"#d6deeb"}},{"scope":"meta.delimiter.period","settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":"punctuation.definition.string","settings":{"foreground":"#d9f5dd"}},{"scope":"punctuation.definition.string.begin.markdown","settings":{"foreground":"#ff5874"}},{"scope":"constant.language.boolean","settings":{"foreground":"#ff5874"}},{"scope":"object.comma","settings":{"foreground":"#ffffff"}},{"scope":"variable.parameter.function","settings":{"fontStyle":"","foreground":"#7fdbca"}},{"scope":["support.type.vendor.property-name","support.constant.vendor.property-value","support.type.property-name","meta.property-list entity.name.tag"],"settings":{"fontStyle":"","foreground":"#80CBC4"}},{"scope":"meta.property-list entity.name.tag.reference","settings":{"foreground":"#57eaf1"}},{"scope":"constant.other.color.rgb-value punctuation.definition.constant","settings":{"foreground":"#F78C6C"}},{"scope":"constant.other.color","settings":{"foreground":"#FFEB95"}},{"scope":"keyword.other.unit","settings":{"foreground":"#FFEB95"}},{"scope":"meta.selector","settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#FAD430"}},{"scope":"meta.property-name","settings":{"foreground":"#80CBC4"}},{"scope":["entity.name.tag.doctype","meta.tag.sgml.doctype"],"settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":"punctuation.definition.parameters","settings":{"foreground":"#d9f5dd"}},{"scope":"keyword.control.operator","settings":{"foreground":"#7fdbca"}},{"scope":"keyword.operator.logical","settings":{"fontStyle":"","foreground":"#c792ea"}},{"scope":["variable.instance","variable.other.instance","variable.readwrite.instance","variable.other.readwrite.instance","variable.other.property"],"settings":{"foreground":"#baebe2"}},{"scope":["variable.other.object.property"],"settings":{"fontStyle":"italic","foreground":"#faf39f"}},{"scope":["variable.other.object.js"],"settings":{"fontStyle":""}},{"scope":["entity.name.function"],"settings":{"fontStyle":"italic","foreground":"#82AAFF"}},{"scope":["variable.language.this.js"],"settings":{"fontStyle":"italic","foreground":"#41eec6"}},{"scope":["keyword.operator.comparison","keyword.control.flow.js","keyword.control.flow.ts","keyword.control.flow.tsx","keyword.control.ruby","keyword.control.module.ruby","keyword.control.class.ruby","keyword.control.def.ruby","keyword.control.loop.js","keyword.control.loop.ts","keyword.control.import.js","keyword.control.import.ts","keyword.control.import.tsx","keyword.control.from.js","keyword.control.from.ts","keyword.control.from.tsx","keyword.operator.instanceof.js","keyword.operator.expression.instanceof.ts","keyword.operator.expression.instanceof.tsx"],"settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":["keyword.control.conditional.js","keyword.control.conditional.ts","keyword.control.switch.js","keyword.control.switch.ts"],"settings":{"fontStyle":"","foreground":"#c792ea"}},{"scope":["support.constant","keyword.other.special-method","keyword.other.new","keyword.other.debugger","keyword.control"],"settings":{"foreground":"#7fdbca"}},{"scope":"support.function","settings":{"foreground":"#c5e478"}},{"scope":"invalid.broken","settings":{"background":"#F78C6C","foreground":"#020e14"}},{"scope":"invalid.unimplemented","settings":{"background":"#8BD649","foreground":"#ffffff"}},{"scope":"invalid.illegal","settings":{"background":"#ec5f67","foreground":"#ffffff"}},{"scope":"variable.language","settings":{"foreground":"#7fdbca"}},{"scope":"support.variable.property","settings":{"foreground":"#7fdbca"}},{"scope":"variable.function","settings":{"foreground":"#82AAFF"}},{"scope":"variable.interpolation","settings":{"foreground":"#ec5f67"}},{"scope":"meta.function-call","settings":{"foreground":"#82AAFF"}},{"scope":"punctuation.section.embedded","settings":{"foreground":"#d3423e"}},{"scope":["punctuation.terminator.expression","punctuation.definition.arguments","punctuation.definition.array","punctuation.section.array","meta.array"],"settings":{"foreground":"#d6deeb"}},{"scope":["punctuation.definition.list.begin","punctuation.definition.list.end","punctuation.separator.arguments","punctuation.definition.list"],"settings":{"foreground":"#d9f5dd"}},{"scope":"string.template meta.template.expression","settings":{"foreground":"#d3423e"}},{"scope":"string.template punctuation.definition.string","settings":{"foreground":"#d6deeb"}},{"scope":"italic","settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":"bold","settings":{"fontStyle":"bold","foreground":"#c5e478"}},{"scope":"quote","settings":{"fontStyle":"italic","foreground":"#697098"}},{"scope":"raw","settings":{"foreground":"#80CBC4"}},{"scope":"variable.assignment.coffee","settings":{"foreground":"#31e1eb"}},{"scope":"variable.parameter.function.coffee","settings":{"foreground":"#d6deeb"}},{"scope":"variable.assignment.coffee","settings":{"foreground":"#7fdbca"}},{"scope":"variable.other.readwrite.cs","settings":{"foreground":"#d6deeb"}},{"scope":["entity.name.type.class.cs","storage.type.cs"],"settings":{"foreground":"#ffcb8b"}},{"scope":"entity.name.type.namespace.cs","settings":{"foreground":"#B2CCD6"}},{"scope":"string.unquoted.preprocessor.message.cs","settings":{"foreground":"#d6deeb"}},{"scope":["punctuation.separator.hash.cs","keyword.preprocessor.region.cs","keyword.preprocessor.endregion.cs"],"settings":{"fontStyle":"bold","foreground":"#ffcb8b"}},{"scope":"variable.other.object.cs","settings":{"foreground":"#B2CCD6"}},{"scope":"entity.name.type.enum.cs","settings":{"foreground":"#c5e478"}},{"scope":["string.interpolated.single.dart","string.interpolated.double.dart"],"settings":{"foreground":"#FFCB8B"}},{"scope":"support.class.dart","settings":{"foreground":"#FFCB8B"}},{"scope":["entity.name.tag.css","entity.name.tag.less","entity.name.tag.custom.css","support.constant.property-value.css"],"settings":{"fontStyle":"","foreground":"#ff6363"}},{"scope":["entity.name.tag.wildcard.css","entity.name.tag.wildcard.less","entity.name.tag.wildcard.scss","entity.name.tag.wildcard.sass"],"settings":{"foreground":"#7fdbca"}},{"scope":"keyword.other.unit.css","settings":{"foreground":"#FFEB95"}},{"scope":["meta.attribute-selector.css entity.other.attribute-name.attribute","variable.other.readwrite.js"],"settings":{"foreground":"#F78C6C"}},{"scope":["source.elixir support.type.elixir","source.elixir meta.module.elixir entity.name.class.elixir"],"settings":{"foreground":"#82AAFF"}},{"scope":"source.elixir entity.name.function","settings":{"foreground":"#c5e478"}},{"scope":["source.elixir constant.other.symbol.elixir","source.elixir constant.other.keywords.elixir"],"settings":{"foreground":"#82AAFF"}},{"scope":"source.elixir punctuation.definition.string","settings":{"foreground":"#c5e478"}},{"scope":["source.elixir variable.other.readwrite.module.elixir","source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir"],"settings":{"foreground":"#c5e478"}},{"scope":"source.elixir .punctuation.binary.elixir","settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":"constant.keyword.clojure","settings":{"foreground":"#7fdbca"}},{"scope":"source.go meta.function-call.go","settings":{"foreground":"#DDDDDD"}},{"scope":["source.go keyword.package.go","source.go keyword.import.go","source.go keyword.function.go","source.go keyword.type.go","source.go keyword.struct.go","source.go keyword.interface.go","source.go keyword.const.go","source.go keyword.var.go","source.go keyword.map.go","source.go keyword.channel.go","source.go keyword.control.go"],"settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":["source.go constant.language.go","source.go constant.other.placeholder.go"],"settings":{"foreground":"#ff5874"}},{"scope":["entity.name.function.preprocessor.cpp","entity.scope.name.cpp"],"settings":{"foreground":"#7fdbcaff"}},{"scope":["meta.namespace-block.cpp"],"settings":{"foreground":"#e0dec6"}},{"scope":["storage.type.language.primitive.cpp"],"settings":{"foreground":"#ff5874"}},{"scope":["meta.preprocessor.macro.cpp"],"settings":{"foreground":"#d6deeb"}},{"scope":["variable.parameter"],"settings":{"foreground":"#ffcb8b"}},{"scope":["variable.other.readwrite.powershell"],"settings":{"foreground":"#82AAFF"}},{"scope":["support.function.powershell"],"settings":{"foreground":"#7fdbcaff"}},{"scope":"entity.other.attribute-name.id.html","settings":{"foreground":"#c5e478"}},{"scope":"punctuation.definition.tag.html","settings":{"foreground":"#6ae9f0"}},{"scope":"meta.tag.sgml.doctype.html","settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":"meta.class entity.name.type.class.js","settings":{"foreground":"#ffcb8b"}},{"scope":"meta.method.declaration storage.type.js","settings":{"foreground":"#82AAFF"}},{"scope":"terminator.js","settings":{"foreground":"#d6deeb"}},{"scope":"meta.js punctuation.definition.js","settings":{"foreground":"#d6deeb"}},{"scope":["entity.name.type.instance.jsdoc","entity.name.type.instance.phpdoc"],"settings":{"foreground":"#5f7e97"}},{"scope":["variable.other.jsdoc","variable.other.phpdoc"],"settings":{"foreground":"#78ccf0"}},{"scope":["variable.other.meta.import.js","meta.import.js variable.other","variable.other.meta.export.js","meta.export.js variable.other"],"settings":{"foreground":"#d6deeb"}},{"scope":"variable.parameter.function.js","settings":{"foreground":"#7986E7"}},{"scope":["variable.other.object.js","variable.other.object.jsx","variable.object.property.js","variable.object.property.jsx"],"settings":{"foreground":"#d6deeb"}},{"scope":["variable.js","variable.other.js"],"settings":{"foreground":"#d6deeb"}},{"scope":["entity.name.type.js","entity.name.type.module.js"],"settings":{"fontStyle":"","foreground":"#ffcb8b"}},{"scope":"support.class.js","settings":{"foreground":"#d6deeb"}},{"scope":"support.type.property-name.json","settings":{"foreground":"#7fdbca"}},{"scope":"support.constant.json","settings":{"foreground":"#c5e478"}},{"scope":"meta.structure.dictionary.value.json string.quoted.double","settings":{"foreground":"#c789d6"}},{"scope":"string.quoted.double.json punctuation.definition.string.json","settings":{"foreground":"#80CBC4"}},{"scope":"meta.structure.dictionary.json meta.structure.dictionary.value constant.language","settings":{"foreground":"#ff5874"}},{"scope":"variable.other.object.js","settings":{"fontStyle":"italic","foreground":"#7fdbca"}},{"scope":["variable.other.ruby"],"settings":{"foreground":"#d6deeb"}},{"scope":["entity.name.type.class.ruby"],"settings":{"foreground":"#ecc48d"}},{"scope":"constant.language.symbol.hashkey.ruby","settings":{"foreground":"#7fdbca"}},{"scope":"constant.language.symbol.ruby","settings":{"foreground":"#7fdbca"}},{"scope":"entity.name.tag.less","settings":{"foreground":"#7fdbca"}},{"scope":"keyword.other.unit.css","settings":{"foreground":"#FFEB95"}},{"scope":"meta.attribute-selector.less entity.other.attribute-name.attribute","settings":{"foreground":"#F78C6C"}},{"scope":["markup.heading","markup.heading.setext.1","markup.heading.setext.2"],"settings":{"foreground":"#82b1ff"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#c5e478"}},{"scope":"markup.quote","settings":{"fontStyle":"italic","foreground":"#697098"}},{"scope":"markup.inline.raw","settings":{"foreground":"#80CBC4"}},{"scope":["markup.underline.link","markup.underline.link.image"],"settings":{"foreground":"#ff869a"}},{"scope":["string.other.link.title.markdown","string.other.link.description.markdown"],"settings":{"foreground":"#d6deeb"}},{"scope":["punctuation.definition.string.markdown","punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown","meta.link.inline.markdown punctuation.definition.string"],"settings":{"foreground":"#82b1ff"}},{"scope":["punctuation.definition.metadata.markdown"],"settings":{"foreground":"#7fdbca"}},{"scope":["beginning.punctuation.definition.list.markdown"],"settings":{"foreground":"#82b1ff"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#c5e478"}},{"scope":["variable.other.php","variable.other.property.php"],"settings":{"foreground":"#bec5d4"}},{"scope":"support.class.php","settings":{"foreground":"#ffcb8b"}},{"scope":"meta.function-call.php punctuation","settings":{"foreground":"#d6deeb"}},{"scope":"variable.other.global.php","settings":{"foreground":"#c5e478"}},{"scope":"variable.other.global.php punctuation.definition.variable","settings":{"foreground":"#c5e478"}},{"scope":"constant.language.python","settings":{"foreground":"#ff5874"}},{"scope":["variable.parameter.function.python","meta.function-call.arguments.python"],"settings":{"foreground":"#82AAFF"}},{"scope":["meta.function-call.python","meta.function-call.generic.python"],"settings":{"foreground":"#B2CCD6"}},{"scope":"punctuation.python","settings":{"foreground":"#d6deeb"}},{"scope":"entity.name.function.decorator.python","settings":{"foreground":"#c5e478"}},{"scope":"source.python variable.language.special","settings":{"foreground":"#8EACE3"}},{"scope":"keyword.control","settings":{"fontStyle":"italic","foreground":"#c792ea"}},{"scope":["variable.scss","variable.sass","variable.parameter.url.scss","variable.parameter.url.sass"],"settings":{"foreground":"#c5e478"}},{"scope":["source.css.scss meta.at-rule variable","source.css.sass meta.at-rule variable"],"settings":{"foreground":"#82AAFF"}},{"scope":["source.css.scss meta.at-rule variable","source.css.sass meta.at-rule variable"],"settings":{"foreground":"#bec5d4"}},{"scope":["meta.attribute-selector.scss entity.other.attribute-name.attribute","meta.attribute-selector.sass entity.other.attribute-name.attribute"],"settings":{"foreground":"#F78C6C"}},{"scope":["entity.name.tag.scss","entity.name.tag.sass"],"settings":{"foreground":"#7fdbca"}},{"scope":["keyword.other.unit.scss","keyword.other.unit.sass"],"settings":{"foreground":"#FFEB95"}},{"scope":["variable.other.readwrite.alias.ts","variable.other.readwrite.alias.tsx","variable.other.readwrite.ts","variable.other.readwrite.tsx","variable.other.object.ts","variable.other.object.tsx","variable.object.property.ts","variable.object.property.tsx","variable.other.ts","variable.other.tsx","variable.tsx","variable.ts"],"settings":{"foreground":"#d6deeb"}},{"scope":["entity.name.type.ts","entity.name.type.tsx"],"settings":{"foreground":"#ffcb8b"}},{"scope":["support.class.node.ts","support.class.node.tsx"],"settings":{"foreground":"#82AAFF"}},{"scope":["meta.type.parameters.ts entity.name.type","meta.type.parameters.tsx entity.name.type"],"settings":{"foreground":"#5f7e97"}},{"scope":["meta.import.ts punctuation.definition.block","meta.import.tsx punctuation.definition.block","meta.export.ts punctuation.definition.block","meta.export.tsx punctuation.definition.block"],"settings":{"foreground":"#d6deeb"}},{"scope":["meta.decorator punctuation.decorator.ts","meta.decorator punctuation.decorator.tsx"],"settings":{"foreground":"#82AAFF"}},{"scope":"meta.tag.js meta.jsx.children.tsx","settings":{"foreground":"#82AAFF"}},{"scope":"entity.name.tag.yaml","settings":{"foreground":"#7fdbca"}},{"scope":["variable.other.readwrite.js","variable.parameter"],"settings":{"foreground":"#d7dbe0"}},{"scope":["support.class.component.js","support.class.component.tsx"],"settings":{"fontStyle":"","foreground":"#f78c6c"}},{"scope":["meta.jsx.children","meta.jsx.children.js","meta.jsx.children.tsx"],"settings":{"foreground":"#d6deeb"}},{"scope":"meta.class entity.name.type.class.tsx","settings":{"foreground":"#ffcb8b"}},{"scope":["entity.name.type.tsx","entity.name.type.module.tsx"],"settings":{"foreground":"#ffcb8b"}},{"scope":["meta.class.ts meta.var.expr.ts storage.type.ts","meta.class.tsx meta.var.expr.tsx storage.type.tsx"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.method.declaration storage.type.ts","meta.method.declaration storage.type.tsx"],"settings":{"foreground":"#82AAFF"}},{"scope":"markup.deleted","settings":{"foreground":"#ff0000"}},{"scope":"markup.inserted","settings":{"foreground":"#036A07"}},{"scope":"markup.underline","settings":{"fontStyle":"underline"}},{"scope":["meta.property-list.css meta.property-value.css variable.other.less","meta.property-list.scss variable.scss","meta.property-list.sass variable.sass","meta.brace","keyword.operator.operator","keyword.operator.or.regexp","keyword.operator.expression.in","keyword.operator.relational","keyword.operator.assignment","keyword.operator.comparison","keyword.operator.type","keyword.operator","keyword","punctuation.definintion.string","punctuation","variable.other.readwrite.js","storage.type","source.css","string.quoted"],"settings":{"fontStyle":""}}],"type":"dark"}'))});var n3={};x(n3,{default:()=>Cce});var Cce,a3=_(()=>{Cce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBackground":"#3b4252","activityBar.activeBorder":"#88c0d0","activityBar.background":"#2e3440","activityBar.dropBackground":"#3b4252","activityBar.foreground":"#d8dee9","activityBarBadge.background":"#88c0d0","activityBarBadge.foreground":"#2e3440","badge.background":"#88c0d0","badge.foreground":"#2e3440","button.background":"#88c0d0ee","button.foreground":"#2e3440","button.hoverBackground":"#88c0d0","button.secondaryBackground":"#434c5e","button.secondaryForeground":"#d8dee9","button.secondaryHoverBackground":"#4c566a","charts.blue":"#81a1c1","charts.foreground":"#d8dee9","charts.green":"#a3be8c","charts.lines":"#88c0d0","charts.orange":"#d08770","charts.purple":"#b48ead","charts.red":"#bf616a","charts.yellow":"#ebcb8b","debugConsole.errorForeground":"#bf616a","debugConsole.infoForeground":"#88c0d0","debugConsole.sourceForeground":"#616e88","debugConsole.warningForeground":"#ebcb8b","debugConsoleInputIcon.foreground":"#81a1c1","debugExceptionWidget.background":"#4c566a","debugExceptionWidget.border":"#2e3440","debugToolBar.background":"#3b4252","descriptionForeground":"#d8dee9e6","diffEditor.insertedTextBackground":"#81a1c133","diffEditor.removedTextBackground":"#bf616a4d","dropdown.background":"#3b4252","dropdown.border":"#3b4252","dropdown.foreground":"#d8dee9","editor.background":"#2e3440","editor.findMatchBackground":"#88c0d066","editor.findMatchHighlightBackground":"#88c0d033","editor.findRangeHighlightBackground":"#88c0d033","editor.focusedStackFrameHighlightBackground":"#5e81ac","editor.foreground":"#d8dee9","editor.hoverHighlightBackground":"#3b4252","editor.inactiveSelectionBackground":"#434c5ecc","editor.inlineValuesBackground":"#4c566a","editor.inlineValuesForeground":"#eceff4","editor.lineHighlightBackground":"#3b4252","editor.lineHighlightBorder":"#3b4252","editor.rangeHighlightBackground":"#434c5e52","editor.selectionBackground":"#434c5ecc","editor.selectionHighlightBackground":"#434c5ecc","editor.stackFrameHighlightBackground":"#5e81ac","editor.wordHighlightBackground":"#81a1c166","editor.wordHighlightStrongBackground":"#81a1c199","editorActiveLineNumber.foreground":"#d8dee9cc","editorBracketHighlight.foreground1":"#8fbcbb","editorBracketHighlight.foreground2":"#88c0d0","editorBracketHighlight.foreground3":"#81a1c1","editorBracketHighlight.foreground4":"#5e81ac","editorBracketHighlight.foreground5":"#8fbcbb","editorBracketHighlight.foreground6":"#88c0d0","editorBracketHighlight.unexpectedBracket.foreground":"#bf616a","editorBracketMatch.background":"#2e344000","editorBracketMatch.border":"#88c0d0","editorCodeLens.foreground":"#4c566a","editorCursor.foreground":"#d8dee9","editorError.border":"#bf616a00","editorError.foreground":"#bf616a","editorGroup.background":"#2e3440","editorGroup.border":"#3b425201","editorGroup.dropBackground":"#3b425299","editorGroupHeader.border":"#3b425200","editorGroupHeader.noTabsBackground":"#2e3440","editorGroupHeader.tabsBackground":"#2e3440","editorGroupHeader.tabsBorder":"#3b425200","editorGutter.addedBackground":"#a3be8c","editorGutter.background":"#2e3440","editorGutter.deletedBackground":"#bf616a","editorGutter.modifiedBackground":"#ebcb8b","editorHint.border":"#ebcb8b00","editorHint.foreground":"#ebcb8b","editorHoverWidget.background":"#3b4252","editorHoverWidget.border":"#3b4252","editorIndentGuide.activeBackground":"#4c566a","editorIndentGuide.background":"#434c5eb3","editorInlayHint.background":"#434c5e","editorInlayHint.foreground":"#d8dee9","editorLineNumber.activeForeground":"#d8dee9","editorLineNumber.foreground":"#4c566a","editorLink.activeForeground":"#88c0d0","editorMarkerNavigation.background":"#5e81acc0","editorMarkerNavigationError.background":"#bf616ac0","editorMarkerNavigationWarning.background":"#ebcb8bc0","editorOverviewRuler.addedForeground":"#a3be8c","editorOverviewRuler.border":"#3b4252","editorOverviewRuler.currentContentForeground":"#3b4252","editorOverviewRuler.deletedForeground":"#bf616a","editorOverviewRuler.errorForeground":"#bf616a","editorOverviewRuler.findMatchForeground":"#88c0d066","editorOverviewRuler.incomingContentForeground":"#3b4252","editorOverviewRuler.infoForeground":"#81a1c1","editorOverviewRuler.modifiedForeground":"#ebcb8b","editorOverviewRuler.rangeHighlightForeground":"#88c0d066","editorOverviewRuler.selectionHighlightForeground":"#88c0d066","editorOverviewRuler.warningForeground":"#ebcb8b","editorOverviewRuler.wordHighlightForeground":"#88c0d066","editorOverviewRuler.wordHighlightStrongForeground":"#88c0d066","editorRuler.foreground":"#434c5e","editorSuggestWidget.background":"#2e3440","editorSuggestWidget.border":"#3b4252","editorSuggestWidget.focusHighlightForeground":"#88c0d0","editorSuggestWidget.foreground":"#d8dee9","editorSuggestWidget.highlightForeground":"#88c0d0","editorSuggestWidget.selectedBackground":"#434c5e","editorSuggestWidget.selectedForeground":"#d8dee9","editorWarning.border":"#ebcb8b00","editorWarning.foreground":"#ebcb8b","editorWhitespace.foreground":"#4c566ab3","editorWidget.background":"#2e3440","editorWidget.border":"#3b4252","errorForeground":"#bf616a","extensionButton.prominentBackground":"#434c5e","extensionButton.prominentForeground":"#d8dee9","extensionButton.prominentHoverBackground":"#4c566a","focusBorder":"#3b4252","foreground":"#d8dee9","gitDecoration.conflictingResourceForeground":"#5e81ac","gitDecoration.deletedResourceForeground":"#bf616a","gitDecoration.ignoredResourceForeground":"#d8dee966","gitDecoration.modifiedResourceForeground":"#ebcb8b","gitDecoration.stageDeletedResourceForeground":"#bf616a","gitDecoration.stageModifiedResourceForeground":"#ebcb8b","gitDecoration.submoduleResourceForeground":"#8fbcbb","gitDecoration.untrackedResourceForeground":"#a3be8c","input.background":"#3b4252","input.border":"#3b4252","input.foreground":"#d8dee9","input.placeholderForeground":"#d8dee999","inputOption.activeBackground":"#5e81ac","inputOption.activeBorder":"#5e81ac","inputOption.activeForeground":"#eceff4","inputValidation.errorBackground":"#bf616a","inputValidation.errorBorder":"#bf616a","inputValidation.infoBackground":"#81a1c1","inputValidation.infoBorder":"#81a1c1","inputValidation.warningBackground":"#d08770","inputValidation.warningBorder":"#d08770","keybindingLabel.background":"#4c566a","keybindingLabel.border":"#4c566a","keybindingLabel.bottomBorder":"#4c566a","keybindingLabel.foreground":"#d8dee9","list.activeSelectionBackground":"#88c0d0","list.activeSelectionForeground":"#2e3440","list.dropBackground":"#88c0d099","list.errorForeground":"#bf616a","list.focusBackground":"#88c0d099","list.focusForeground":"#d8dee9","list.focusHighlightForeground":"#eceff4","list.highlightForeground":"#88c0d0","list.hoverBackground":"#3b4252","list.hoverForeground":"#eceff4","list.inactiveFocusBackground":"#434c5ecc","list.inactiveSelectionBackground":"#434c5e","list.inactiveSelectionForeground":"#d8dee9","list.warningForeground":"#ebcb8b","merge.border":"#3b425200","merge.currentContentBackground":"#81a1c14d","merge.currentHeaderBackground":"#81a1c166","merge.incomingContentBackground":"#8fbcbb4d","merge.incomingHeaderBackground":"#8fbcbb66","minimap.background":"#2e3440","minimap.errorHighlight":"#bf616acc","minimap.findMatchHighlight":"#88c0d0","minimap.selectionHighlight":"#88c0d0cc","minimap.warningHighlight":"#ebcb8bcc","minimapGutter.addedBackground":"#a3be8c","minimapGutter.deletedBackground":"#bf616a","minimapGutter.modifiedBackground":"#ebcb8b","minimapSlider.activeBackground":"#434c5eaa","minimapSlider.background":"#434c5e99","minimapSlider.hoverBackground":"#434c5eaa","notification.background":"#3b4252","notification.buttonBackground":"#434c5e","notification.buttonForeground":"#d8dee9","notification.buttonHoverBackground":"#4c566a","notification.errorBackground":"#bf616a","notification.errorForeground":"#2e3440","notification.foreground":"#d8dee9","notification.infoBackground":"#88c0d0","notification.infoForeground":"#2e3440","notification.warningBackground":"#ebcb8b","notification.warningForeground":"#2e3440","notificationCenter.border":"#3b425200","notificationCenterHeader.background":"#2e3440","notificationCenterHeader.foreground":"#88c0d0","notificationLink.foreground":"#88c0d0","notificationToast.border":"#3b425200","notifications.background":"#3b4252","notifications.border":"#2e3440","notifications.foreground":"#d8dee9","panel.background":"#2e3440","panel.border":"#3b4252","panelTitle.activeBorder":"#88c0d000","panelTitle.activeForeground":"#88c0d0","panelTitle.inactiveForeground":"#d8dee9","peekView.border":"#4c566a","peekViewEditor.background":"#2e3440","peekViewEditor.matchHighlightBackground":"#88c0d04d","peekViewEditorGutter.background":"#2e3440","peekViewResult.background":"#2e3440","peekViewResult.fileForeground":"#88c0d0","peekViewResult.lineForeground":"#d8dee966","peekViewResult.matchHighlightBackground":"#88c0d0cc","peekViewResult.selectionBackground":"#434c5e","peekViewResult.selectionForeground":"#d8dee9","peekViewTitle.background":"#3b4252","peekViewTitleDescription.foreground":"#d8dee9","peekViewTitleLabel.foreground":"#88c0d0","pickerGroup.border":"#3b4252","pickerGroup.foreground":"#88c0d0","progressBar.background":"#88c0d0","quickInputList.focusBackground":"#88c0d0","quickInputList.focusForeground":"#2e3440","sash.hoverBorder":"#88c0d0","scrollbar.shadow":"#00000066","scrollbarSlider.activeBackground":"#434c5eaa","scrollbarSlider.background":"#434c5e99","scrollbarSlider.hoverBackground":"#434c5eaa","selection.background":"#88c0d099","sideBar.background":"#2e3440","sideBar.border":"#3b4252","sideBar.foreground":"#d8dee9","sideBarSectionHeader.background":"#3b4252","sideBarSectionHeader.foreground":"#d8dee9","sideBarTitle.foreground":"#d8dee9","statusBar.background":"#3b4252","statusBar.border":"#3b425200","statusBar.debuggingBackground":"#5e81ac","statusBar.debuggingForeground":"#d8dee9","statusBar.foreground":"#d8dee9","statusBar.noFolderBackground":"#3b4252","statusBar.noFolderForeground":"#d8dee9","statusBarItem.activeBackground":"#4c566a","statusBarItem.errorBackground":"#3b4252","statusBarItem.errorForeground":"#bf616a","statusBarItem.hoverBackground":"#434c5e","statusBarItem.prominentBackground":"#3b4252","statusBarItem.prominentHoverBackground":"#434c5e","statusBarItem.warningBackground":"#ebcb8b","statusBarItem.warningForeground":"#2e3440","tab.activeBackground":"#3b4252","tab.activeBorder":"#88c0d000","tab.activeBorderTop":"#88c0d000","tab.activeForeground":"#d8dee9","tab.border":"#3b425200","tab.hoverBackground":"#3b4252cc","tab.hoverBorder":"#88c0d000","tab.inactiveBackground":"#2e3440","tab.inactiveForeground":"#d8dee966","tab.lastPinnedBorder":"#4c566a","tab.unfocusedActiveBorder":"#88c0d000","tab.unfocusedActiveBorderTop":"#88c0d000","tab.unfocusedActiveForeground":"#d8dee999","tab.unfocusedHoverBackground":"#3b4252b3","tab.unfocusedHoverBorder":"#88c0d000","tab.unfocusedInactiveForeground":"#d8dee966","terminal.ansiBlack":"#3b4252","terminal.ansiBlue":"#81a1c1","terminal.ansiBrightBlack":"#4c566a","terminal.ansiBrightBlue":"#81a1c1","terminal.ansiBrightCyan":"#8fbcbb","terminal.ansiBrightGreen":"#a3be8c","terminal.ansiBrightMagenta":"#b48ead","terminal.ansiBrightRed":"#bf616a","terminal.ansiBrightWhite":"#eceff4","terminal.ansiBrightYellow":"#ebcb8b","terminal.ansiCyan":"#88c0d0","terminal.ansiGreen":"#a3be8c","terminal.ansiMagenta":"#b48ead","terminal.ansiRed":"#bf616a","terminal.ansiWhite":"#e5e9f0","terminal.ansiYellow":"#ebcb8b","terminal.background":"#2e3440","terminal.foreground":"#d8dee9","terminal.tab.activeBorder":"#88c0d0","textBlockQuote.background":"#3b4252","textBlockQuote.border":"#81a1c1","textCodeBlock.background":"#4c566a","textLink.activeForeground":"#88c0d0","textLink.foreground":"#88c0d0","textPreformat.foreground":"#8fbcbb","textSeparator.foreground":"#eceff4","titleBar.activeBackground":"#2e3440","titleBar.activeForeground":"#d8dee9","titleBar.border":"#2e344000","titleBar.inactiveBackground":"#2e3440","titleBar.inactiveForeground":"#d8dee966","tree.indentGuidesStroke":"#616e88","walkThrough.embeddedEditorBackground":"#2e3440","welcomePage.buttonBackground":"#434c5e","welcomePage.buttonHoverBackground":"#4c566a","widget.shadow":"#00000066"},"displayName":"Nord","name":"nord","semanticHighlighting":true,"tokenColors":[{"settings":{"background":"#2e3440ff","foreground":"#d8dee9ff"}},{"scope":"emphasis","settings":{"fontStyle":"italic"}},{"scope":"strong","settings":{"fontStyle":"bold"}},{"scope":"comment","settings":{"foreground":"#616E88"}},{"scope":"constant.character","settings":{"foreground":"#EBCB8B"}},{"scope":"constant.character.escape","settings":{"foreground":"#EBCB8B"}},{"scope":"constant.language","settings":{"foreground":"#81A1C1"}},{"scope":"constant.numeric","settings":{"foreground":"#B48EAD"}},{"scope":"constant.regexp","settings":{"foreground":"#EBCB8B"}},{"scope":["entity.name.class","entity.name.type.class"],"settings":{"foreground":"#8FBCBB"}},{"scope":"entity.name.function","settings":{"foreground":"#88C0D0"}},{"scope":"entity.name.tag","settings":{"foreground":"#81A1C1"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#8FBCBB"}},{"scope":"entity.other.inherited-class","settings":{"fontStyle":"bold","foreground":"#8FBCBB"}},{"scope":"invalid.deprecated","settings":{"background":"#EBCB8B","foreground":"#D8DEE9"}},{"scope":"invalid.illegal","settings":{"background":"#BF616A","foreground":"#D8DEE9"}},{"scope":"keyword","settings":{"foreground":"#81A1C1"}},{"scope":"keyword.operator","settings":{"foreground":"#81A1C1"}},{"scope":"keyword.other.new","settings":{"foreground":"#81A1C1"}},{"scope":"markup.bold","settings":{"fontStyle":"bold"}},{"scope":"markup.changed","settings":{"foreground":"#EBCB8B"}},{"scope":"markup.deleted","settings":{"foreground":"#BF616A"}},{"scope":"markup.inserted","settings":{"foreground":"#A3BE8C"}},{"scope":"meta.preprocessor","settings":{"foreground":"#5E81AC"}},{"scope":"punctuation","settings":{"foreground":"#ECEFF4"}},{"scope":["punctuation.definition.method-parameters","punctuation.definition.function-parameters","punctuation.definition.parameters"],"settings":{"foreground":"#ECEFF4"}},{"scope":"punctuation.definition.tag","settings":{"foreground":"#81A1C1"}},{"scope":["punctuation.definition.comment","punctuation.end.definition.comment","punctuation.start.definition.comment"],"settings":{"foreground":"#616E88"}},{"scope":"punctuation.section","settings":{"foreground":"#ECEFF4"}},{"scope":["punctuation.section.embedded.begin","punctuation.section.embedded.end"],"settings":{"foreground":"#81A1C1"}},{"scope":"punctuation.terminator","settings":{"foreground":"#81A1C1"}},{"scope":"punctuation.definition.variable","settings":{"foreground":"#81A1C1"}},{"scope":"storage","settings":{"foreground":"#81A1C1"}},{"scope":"string","settings":{"foreground":"#A3BE8C"}},{"scope":"string.regexp","settings":{"foreground":"#EBCB8B"}},{"scope":"support.class","settings":{"foreground":"#8FBCBB"}},{"scope":"support.constant","settings":{"foreground":"#81A1C1"}},{"scope":"support.function","settings":{"foreground":"#88C0D0"}},{"scope":"support.function.construct","settings":{"foreground":"#81A1C1"}},{"scope":"support.type","settings":{"foreground":"#8FBCBB"}},{"scope":"support.type.exception","settings":{"foreground":"#8FBCBB"}},{"scope":"token.debug-token","settings":{"foreground":"#b48ead"}},{"scope":"token.error-token","settings":{"foreground":"#bf616a"}},{"scope":"token.info-token","settings":{"foreground":"#88c0d0"}},{"scope":"token.warn-token","settings":{"foreground":"#ebcb8b"}},{"scope":"variable.other","settings":{"foreground":"#D8DEE9"}},{"scope":"variable.language","settings":{"foreground":"#81A1C1"}},{"scope":"variable.parameter","settings":{"foreground":"#D8DEE9"}},{"scope":"punctuation.separator.pointer-access.c","settings":{"foreground":"#81A1C1"}},{"scope":["source.c meta.preprocessor.include","source.c string.quoted.other.lt-gt.include"],"settings":{"foreground":"#8FBCBB"}},{"scope":["source.cpp keyword.control.directive.conditional","source.cpp punctuation.definition.directive","source.c keyword.control.directive.conditional","source.c punctuation.definition.directive"],"settings":{"fontStyle":"bold","foreground":"#5E81AC"}},{"scope":"source.css constant.other.color.rgb-value","settings":{"foreground":"#B48EAD"}},{"scope":"source.css meta.property-value","settings":{"foreground":"#88C0D0"}},{"scope":["source.css keyword.control.at-rule.media","source.css keyword.control.at-rule.media punctuation.definition.keyword"],"settings":{"foreground":"#D08770"}},{"scope":"source.css punctuation.definition.keyword","settings":{"foreground":"#81A1C1"}},{"scope":"source.css support.type.property-name","settings":{"foreground":"#D8DEE9"}},{"scope":"source.diff meta.diff.range.context","settings":{"foreground":"#8FBCBB"}},{"scope":"source.diff meta.diff.header.from-file","settings":{"foreground":"#8FBCBB"}},{"scope":"source.diff punctuation.definition.from-file","settings":{"foreground":"#8FBCBB"}},{"scope":"source.diff punctuation.definition.range","settings":{"foreground":"#8FBCBB"}},{"scope":"source.diff punctuation.definition.separator","settings":{"foreground":"#81A1C1"}},{"scope":"entity.name.type.module.elixir","settings":{"foreground":"#8FBCBB"}},{"scope":"variable.other.readwrite.module.elixir","settings":{"fontStyle":"bold","foreground":"#D8DEE9"}},{"scope":"constant.other.symbol.elixir","settings":{"fontStyle":"bold","foreground":"#D8DEE9"}},{"scope":"variable.other.constant.elixir","settings":{"foreground":"#8FBCBB"}},{"scope":"source.go constant.other.placeholder.go","settings":{"foreground":"#EBCB8B"}},{"scope":"source.java comment.block.documentation.javadoc punctuation.definition.entity.html","settings":{"foreground":"#81A1C1"}},{"scope":"source.java constant.other","settings":{"foreground":"#D8DEE9"}},{"scope":"source.java keyword.other.documentation","settings":{"foreground":"#8FBCBB"}},{"scope":"source.java keyword.other.documentation.author.javadoc","settings":{"foreground":"#8FBCBB"}},{"scope":["source.java keyword.other.documentation.directive","source.java keyword.other.documentation.custom"],"settings":{"foreground":"#8FBCBB"}},{"scope":"source.java keyword.other.documentation.see.javadoc","settings":{"foreground":"#8FBCBB"}},{"scope":"source.java meta.method-call meta.method","settings":{"foreground":"#88C0D0"}},{"scope":["source.java meta.tag.template.link.javadoc","source.java string.other.link.title.javadoc"],"settings":{"foreground":"#8FBCBB"}},{"scope":"source.java meta.tag.template.value.javadoc","settings":{"foreground":"#88C0D0"}},{"scope":"source.java punctuation.definition.keyword.javadoc","settings":{"foreground":"#8FBCBB"}},{"scope":["source.java punctuation.definition.tag.begin.javadoc","source.java punctuation.definition.tag.end.javadoc"],"settings":{"foreground":"#616E88"}},{"scope":"source.java storage.modifier.import","settings":{"foreground":"#8FBCBB"}},{"scope":"source.java storage.modifier.package","settings":{"foreground":"#8FBCBB"}},{"scope":"source.java storage.type","settings":{"foreground":"#8FBCBB"}},{"scope":"source.java storage.type.annotation","settings":{"foreground":"#D08770"}},{"scope":"source.java storage.type.generic","settings":{"foreground":"#8FBCBB"}},{"scope":"source.java storage.type.primitive","settings":{"foreground":"#81A1C1"}},{"scope":["source.js punctuation.decorator","source.js meta.decorator variable.other.readwrite","source.js meta.decorator entity.name.function"],"settings":{"foreground":"#D08770"}},{"scope":"source.js meta.object-literal.key","settings":{"foreground":"#88C0D0"}},{"scope":"source.js storage.type.class.jsdoc","settings":{"foreground":"#8FBCBB"}},{"scope":["source.js string.quoted.template punctuation.quasi.element.begin","source.js string.quoted.template punctuation.quasi.element.end","source.js string.template punctuation.definition.template-expression"],"settings":{"foreground":"#81A1C1"}},{"scope":"source.js string.quoted.template meta.method-call.with-arguments","settings":{"foreground":"#ECEFF4"}},{"scope":["source.js string.template meta.template.expression support.variable.property","source.js string.template meta.template.expression variable.other.object"],"settings":{"foreground":"#D8DEE9"}},{"scope":"source.js support.type.primitive","settings":{"foreground":"#81A1C1"}},{"scope":"source.js variable.other.object","settings":{"foreground":"#D8DEE9"}},{"scope":"source.js variable.other.readwrite.alias","settings":{"foreground":"#8FBCBB"}},{"scope":["source.js meta.embedded.line meta.brace.square","source.js meta.embedded.line meta.brace.round","source.js string.quoted.template meta.brace.square","source.js string.quoted.template meta.brace.round"],"settings":{"foreground":"#ECEFF4"}},{"scope":"text.html.basic constant.character.entity.html","settings":{"foreground":"#EBCB8B"}},{"scope":"text.html.basic constant.other.inline-data","settings":{"fontStyle":"italic","foreground":"#D08770"}},{"scope":"text.html.basic meta.tag.sgml.doctype","settings":{"foreground":"#5E81AC"}},{"scope":"text.html.basic punctuation.definition.entity","settings":{"foreground":"#81A1C1"}},{"scope":"source.properties entity.name.section.group-title.ini","settings":{"foreground":"#88C0D0"}},{"scope":"source.properties punctuation.separator.key-value.ini","settings":{"foreground":"#81A1C1"}},{"scope":["text.html.markdown markup.fenced_code.block","text.html.markdown markup.fenced_code.block punctuation.definition"],"settings":{"foreground":"#8FBCBB"}},{"scope":"markup.heading","settings":{"foreground":"#88C0D0"}},{"scope":["text.html.markdown markup.inline.raw","text.html.markdown markup.inline.raw punctuation.definition.raw"],"settings":{"foreground":"#8FBCBB"}},{"scope":"text.html.markdown markup.italic","settings":{"fontStyle":"italic"}},{"scope":"text.html.markdown markup.underline.link","settings":{"fontStyle":"underline"}},{"scope":"text.html.markdown beginning.punctuation.definition.list","settings":{"foreground":"#81A1C1"}},{"scope":"text.html.markdown beginning.punctuation.definition.quote","settings":{"foreground":"#8FBCBB"}},{"scope":"text.html.markdown markup.quote","settings":{"foreground":"#616E88"}},{"scope":"text.html.markdown constant.character.math.tex","settings":{"foreground":"#81A1C1"}},{"scope":["text.html.markdown punctuation.definition.math.begin","text.html.markdown punctuation.definition.math.end"],"settings":{"foreground":"#5E81AC"}},{"scope":"text.html.markdown punctuation.definition.function.math.tex","settings":{"foreground":"#88C0D0"}},{"scope":"text.html.markdown punctuation.math.operator.latex","settings":{"foreground":"#81A1C1"}},{"scope":"text.html.markdown punctuation.definition.heading","settings":{"foreground":"#81A1C1"}},{"scope":["text.html.markdown punctuation.definition.constant","text.html.markdown punctuation.definition.string"],"settings":{"foreground":"#81A1C1"}},{"scope":["text.html.markdown constant.other.reference.link","text.html.markdown string.other.link.description","text.html.markdown string.other.link.title"],"settings":{"foreground":"#88C0D0"}},{"scope":"source.perl punctuation.definition.variable","settings":{"foreground":"#D8DEE9"}},{"scope":["source.php meta.function-call","source.php meta.function-call.object"],"settings":{"foreground":"#88C0D0"}},{"scope":["source.python entity.name.function.decorator","source.python meta.function.decorator support.type"],"settings":{"foreground":"#D08770"}},{"scope":"source.python meta.function-call.generic","settings":{"foreground":"#88C0D0"}},{"scope":"source.python support.type","settings":{"foreground":"#88C0D0"}},{"scope":["source.python variable.parameter.function.language"],"settings":{"foreground":"#D8DEE9"}},{"scope":["source.python meta.function.parameters variable.parameter.function.language.special.self"],"settings":{"foreground":"#81A1C1"}},{"scope":"source.rust entity.name.type","settings":{"foreground":"#8FBCBB"}},{"scope":"source.rust meta.macro entity.name.function","settings":{"fontStyle":"bold","foreground":"#88C0D0"}},{"scope":["source.rust meta.attribute","source.rust meta.attribute punctuation","source.rust meta.attribute keyword.operator"],"settings":{"foreground":"#5E81AC"}},{"scope":"source.rust entity.name.type.trait","settings":{"fontStyle":"bold"}},{"scope":"source.rust punctuation.definition.interpolation","settings":{"foreground":"#EBCB8B"}},{"scope":["source.css.scss punctuation.definition.interpolation.begin.bracket.curly","source.css.scss punctuation.definition.interpolation.end.bracket.curly"],"settings":{"foreground":"#81A1C1"}},{"scope":"source.css.scss variable.interpolation","settings":{"fontStyle":"italic","foreground":"#D8DEE9"}},{"scope":["source.ts punctuation.decorator","source.ts meta.decorator variable.other.readwrite","source.ts meta.decorator entity.name.function","source.tsx punctuation.decorator","source.tsx meta.decorator variable.other.readwrite","source.tsx meta.decorator entity.name.function"],"settings":{"foreground":"#D08770"}},{"scope":["source.ts meta.object-literal.key","source.tsx meta.object-literal.key"],"settings":{"foreground":"#D8DEE9"}},{"scope":["source.ts meta.object-literal.key entity.name.function","source.tsx meta.object-literal.key entity.name.function"],"settings":{"foreground":"#88C0D0"}},{"scope":["source.ts support.class","source.ts support.type","source.ts entity.name.type","source.ts entity.name.class","source.tsx support.class","source.tsx support.type","source.tsx entity.name.type","source.tsx entity.name.class"],"settings":{"foreground":"#8FBCBB"}},{"scope":["source.ts support.constant.math","source.ts support.constant.dom","source.ts support.constant.json","source.tsx support.constant.math","source.tsx support.constant.dom","source.tsx support.constant.json"],"settings":{"foreground":"#8FBCBB"}},{"scope":["source.ts support.variable","source.tsx support.variable"],"settings":{"foreground":"#D8DEE9"}},{"scope":["source.ts meta.embedded.line meta.brace.square","source.ts meta.embedded.line meta.brace.round","source.tsx meta.embedded.line meta.brace.square","source.tsx meta.embedded.line meta.brace.round"],"settings":{"foreground":"#ECEFF4"}},{"scope":"text.xml entity.name.tag.namespace","settings":{"foreground":"#8FBCBB"}},{"scope":"text.xml keyword.other.doctype","settings":{"foreground":"#5E81AC"}},{"scope":"text.xml meta.tag.preprocessor entity.name.tag","settings":{"foreground":"#5E81AC"}},{"scope":["text.xml string.unquoted.cdata","text.xml string.unquoted.cdata punctuation.definition.string"],"settings":{"fontStyle":"italic","foreground":"#D08770"}},{"scope":"source.yaml entity.name.tag","settings":{"foreground":"#8FBCBB"}}],"type":"dark"}'))});var r3={};x(r3,{default:()=>_ce});var _ce,i3=_(()=>{_ce=Object.freeze(JSON.parse('{"colors":{"actionBar.toggledBackground":"#525761","activityBar.background":"#282c34","activityBar.foreground":"#d7dae0","activityBarBadge.background":"#4d78cc","activityBarBadge.foreground":"#f8fafd","badge.background":"#282c34","button.background":"#404754","button.secondaryBackground":"#30333d","button.secondaryForeground":"#c0bdbd","checkbox.border":"#404754","debugToolBar.background":"#21252b","descriptionForeground":"#abb2bf","diffEditor.insertedTextBackground":"#00809b33","dropdown.background":"#21252b","dropdown.border":"#21252b","editor.background":"#282c34","editor.findMatchBackground":"#d19a6644","editor.findMatchBorder":"#ffffff5a","editor.findMatchHighlightBackground":"#ffffff22","editor.foreground":"#abb2bf","editor.lineHighlightBackground":"#2c313c","editor.selectionBackground":"#67769660","editor.selectionHighlightBackground":"#ffd33d44","editor.selectionHighlightBorder":"#dddddd","editor.wordHighlightBackground":"#d2e0ff2f","editor.wordHighlightBorder":"#7f848e","editor.wordHighlightStrongBackground":"#abb2bf26","editor.wordHighlightStrongBorder":"#7f848e","editorBracketHighlight.foreground1":"#d19a66","editorBracketHighlight.foreground2":"#c678dd","editorBracketHighlight.foreground3":"#56b6c2","editorBracketMatch.background":"#515a6b","editorBracketMatch.border":"#515a6b","editorCursor.background":"#ffffffc9","editorCursor.foreground":"#528bff","editorError.foreground":"#c24038","editorGroup.background":"#181a1f","editorGroup.border":"#181a1f","editorGroupHeader.tabsBackground":"#21252b","editorGutter.addedBackground":"#109868","editorGutter.deletedBackground":"#9A353D","editorGutter.modifiedBackground":"#948B60","editorHoverWidget.background":"#21252b","editorHoverWidget.border":"#181a1f","editorHoverWidget.highlightForeground":"#61afef","editorIndentGuide.activeBackground1":"#c8c8c859","editorIndentGuide.background1":"#3b4048","editorInlayHint.background":"#2c313c","editorInlayHint.foreground":"#abb2bf","editorLineNumber.activeForeground":"#abb2bf","editorLineNumber.foreground":"#495162","editorMarkerNavigation.background":"#21252b","editorOverviewRuler.addedBackground":"#109868","editorOverviewRuler.deletedBackground":"#9A353D","editorOverviewRuler.modifiedBackground":"#948B60","editorRuler.foreground":"#abb2bf26","editorSuggestWidget.background":"#21252b","editorSuggestWidget.border":"#181a1f","editorSuggestWidget.selectedBackground":"#2c313a","editorWarning.foreground":"#d19a66","editorWhitespace.foreground":"#ffffff1d","editorWidget.background":"#21252b","focusBorder":"#3e4452","gitDecoration.ignoredResourceForeground":"#636b78","input.background":"#1d1f23","input.foreground":"#abb2bf","list.activeSelectionBackground":"#2c313a","list.activeSelectionForeground":"#d7dae0","list.focusBackground":"#323842","list.focusForeground":"#f0f0f0","list.highlightForeground":"#ecebeb","list.hoverBackground":"#2c313a","list.hoverForeground":"#abb2bf","list.inactiveSelectionBackground":"#323842","list.inactiveSelectionForeground":"#d7dae0","list.warningForeground":"#d19a66","menu.foreground":"#abb2bf","menu.separatorBackground":"#343a45","minimapGutter.addedBackground":"#109868","minimapGutter.deletedBackground":"#9A353D","minimapGutter.modifiedBackground":"#948B60","panel.border":"#3e4452","panelSectionHeader.background":"#21252b","peekViewEditor.background":"#1b1d23","peekViewEditor.matchHighlightBackground":"#29244b","peekViewResult.background":"#22262b","scrollbar.shadow":"#23252c","scrollbarSlider.activeBackground":"#747d9180","scrollbarSlider.background":"#4e566660","scrollbarSlider.hoverBackground":"#5a637580","settings.focusedRowBackground":"#282c34","settings.headerForeground":"#fff","sideBar.background":"#21252b","sideBar.foreground":"#abb2bf","sideBarSectionHeader.background":"#282c34","sideBarSectionHeader.foreground":"#abb2bf","statusBar.background":"#21252b","statusBar.debuggingBackground":"#cc6633","statusBar.debuggingBorder":"#ff000000","statusBar.debuggingForeground":"#ffffff","statusBar.foreground":"#9da5b4","statusBar.noFolderBackground":"#21252b","statusBarItem.remoteBackground":"#4d78cc","statusBarItem.remoteForeground":"#f8fafd","tab.activeBackground":"#282c34","tab.activeBorder":"#b4b4b4","tab.activeForeground":"#dcdcdc","tab.border":"#181a1f","tab.hoverBackground":"#323842","tab.inactiveBackground":"#21252b","tab.unfocusedHoverBackground":"#323842","terminal.ansiBlack":"#3f4451","terminal.ansiBlue":"#4aa5f0","terminal.ansiBrightBlack":"#4f5666","terminal.ansiBrightBlue":"#4dc4ff","terminal.ansiBrightCyan":"#4cd1e0","terminal.ansiBrightGreen":"#a5e075","terminal.ansiBrightMagenta":"#de73ff","terminal.ansiBrightRed":"#ff616e","terminal.ansiBrightWhite":"#e6e6e6","terminal.ansiBrightYellow":"#f0a45d","terminal.ansiCyan":"#42b3c2","terminal.ansiGreen":"#8cc265","terminal.ansiMagenta":"#c162de","terminal.ansiRed":"#e05561","terminal.ansiWhite":"#d7dae0","terminal.ansiYellow":"#d18f52","terminal.background":"#282c34","terminal.border":"#3e4452","terminal.foreground":"#abb2bf","terminal.selectionBackground":"#abb2bf30","textBlockQuote.background":"#2e3440","textBlockQuote.border":"#4b5362","textLink.foreground":"#61afef","textPreformat.foreground":"#d19a66","titleBar.activeBackground":"#282c34","titleBar.activeForeground":"#9da5b4","titleBar.inactiveBackground":"#282c34","titleBar.inactiveForeground":"#6b717d","tree.indentGuidesStroke":"#ffffff1d","walkThrough.embeddedEditorBackground":"#2e3440","welcomePage.buttonHoverBackground":"#404754"},"displayName":"One Dark Pro","name":"one-dark-pro","semanticHighlighting":true,"semanticTokenColors":{"annotation:dart":{"foreground":"#d19a66"},"enumMember":{"foreground":"#56b6c2"},"macro":{"foreground":"#d19a66"},"memberOperatorOverload":{"foreground":"#c678dd"},"parameter.label:dart":{"foreground":"#abb2bf"},"property:dart":{"foreground":"#d19a66"},"tomlArrayKey":{"foreground":"#e5c07b"},"variable.constant":{"foreground":"#d19a66"},"variable.defaultLibrary":{"foreground":"#e5c07b"},"variable:dart":{"foreground":"#d19a66"}},"tokenColors":[{"scope":"meta.embedded","settings":{"foreground":"#abb2bf"}},{"scope":"punctuation.definition.delayed.unison,punctuation.definition.list.begin.unison,punctuation.definition.list.end.unison,punctuation.definition.ability.begin.unison,punctuation.definition.ability.end.unison,punctuation.operator.assignment.as.unison,punctuation.separator.pipe.unison,punctuation.separator.delimiter.unison,punctuation.definition.hash.unison","settings":{"foreground":"#e06c75"}},{"scope":"variable.other.generic-type.haskell","settings":{"foreground":"#c678dd"}},{"scope":"storage.type.haskell","settings":{"foreground":"#d19a66"}},{"scope":"support.variable.magic.python","settings":{"foreground":"#e06c75"}},{"scope":"punctuation.separator.period.python,punctuation.separator.element.python,punctuation.parenthesis.begin.python,punctuation.parenthesis.end.python","settings":{"foreground":"#abb2bf"}},{"scope":"variable.parameter.function.language.special.self.python","settings":{"foreground":"#e5c07b"}},{"scope":"variable.parameter.function.language.special.cls.python","settings":{"foreground":"#e5c07b"}},{"scope":"storage.modifier.lifetime.rust","settings":{"foreground":"#abb2bf"}},{"scope":"support.function.std.rust","settings":{"foreground":"#61afef"}},{"scope":"entity.name.lifetime.rust","settings":{"foreground":"#e5c07b"}},{"scope":"variable.language.rust","settings":{"foreground":"#e06c75"}},{"scope":"support.constant.edge","settings":{"foreground":"#c678dd"}},{"scope":"constant.other.character-class.regexp","settings":{"foreground":"#e06c75"}},{"scope":["keyword.operator.word"],"settings":{"foreground":"#c678dd"}},{"scope":"keyword.operator.quantifier.regexp","settings":{"foreground":"#d19a66"}},{"scope":"variable.parameter.function","settings":{"foreground":"#abb2bf"}},{"scope":"comment markup.link","settings":{"foreground":"#5c6370"}},{"scope":"markup.changed.diff","settings":{"foreground":"#e5c07b"}},{"scope":"meta.diff.header.from-file,meta.diff.header.to-file,punctuation.definition.from-file.diff,punctuation.definition.to-file.diff","settings":{"foreground":"#61afef"}},{"scope":"markup.inserted.diff","settings":{"foreground":"#98c379"}},{"scope":"markup.deleted.diff","settings":{"foreground":"#e06c75"}},{"scope":"meta.function.c,meta.function.cpp","settings":{"foreground":"#e06c75"}},{"scope":"punctuation.section.block.begin.bracket.curly.cpp,punctuation.section.block.end.bracket.curly.cpp,punctuation.terminator.statement.c,punctuation.section.block.begin.bracket.curly.c,punctuation.section.block.end.bracket.curly.c,punctuation.section.parens.begin.bracket.round.c,punctuation.section.parens.end.bracket.round.c,punctuation.section.parameters.begin.bracket.round.c,punctuation.section.parameters.end.bracket.round.c","settings":{"foreground":"#abb2bf"}},{"scope":"punctuation.separator.key-value","settings":{"foreground":"#abb2bf"}},{"scope":"keyword.operator.expression.import","settings":{"foreground":"#61afef"}},{"scope":"support.constant.math","settings":{"foreground":"#e5c07b"}},{"scope":"support.constant.property.math","settings":{"foreground":"#d19a66"}},{"scope":"variable.other.constant","settings":{"foreground":"#e5c07b"}},{"scope":["storage.type.annotation.java","storage.type.object.array.java"],"settings":{"foreground":"#e5c07b"}},{"scope":"source.java","settings":{"foreground":"#e06c75"}},{"scope":"punctuation.section.block.begin.java,punctuation.section.block.end.java,punctuation.definition.method-parameters.begin.java,punctuation.definition.method-parameters.end.java,meta.method.identifier.java,punctuation.section.method.begin.java,punctuation.section.method.end.java,punctuation.terminator.java,punctuation.section.class.begin.java,punctuation.section.class.end.java,punctuation.section.inner-class.begin.java,punctuation.section.inner-class.end.java,meta.method-call.java,punctuation.section.class.begin.bracket.curly.java,punctuation.section.class.end.bracket.curly.java,punctuation.section.method.begin.bracket.curly.java,punctuation.section.method.end.bracket.curly.java,punctuation.separator.period.java,punctuation.bracket.angle.java,punctuation.definition.annotation.java,meta.method.body.java","settings":{"foreground":"#abb2bf"}},{"scope":"meta.method.java","settings":{"foreground":"#61afef"}},{"scope":"storage.modifier.import.java,storage.type.java,storage.type.generic.java","settings":{"foreground":"#e5c07b"}},{"scope":"keyword.operator.instanceof.java","settings":{"foreground":"#c678dd"}},{"scope":"meta.definition.variable.name.java","settings":{"foreground":"#e06c75"}},{"scope":"keyword.operator.logical","settings":{"foreground":"#56b6c2"}},{"scope":"keyword.operator.bitwise","settings":{"foreground":"#56b6c2"}},{"scope":"keyword.operator.channel","settings":{"foreground":"#56b6c2"}},{"scope":"support.constant.property-value.scss,support.constant.property-value.css","settings":{"foreground":"#d19a66"}},{"scope":"keyword.operator.css,keyword.operator.scss,keyword.operator.less","settings":{"foreground":"#56b6c2"}},{"scope":"support.constant.color.w3c-standard-color-name.css,support.constant.color.w3c-standard-color-name.scss","settings":{"foreground":"#d19a66"}},{"scope":"punctuation.separator.list.comma.css","settings":{"foreground":"#abb2bf"}},{"scope":"support.constant.color.w3c-standard-color-name.css","settings":{"foreground":"#d19a66"}},{"scope":"support.type.vendored.property-name.css","settings":{"foreground":"#56b6c2"}},{"scope":"support.module.node,support.type.object.module,support.module.node","settings":{"foreground":"#e5c07b"}},{"scope":"entity.name.type.module","settings":{"foreground":"#e5c07b"}},{"scope":"variable.other.readwrite,meta.object-literal.key,support.variable.property,support.variable.object.process,support.variable.object.node","settings":{"foreground":"#e06c75"}},{"scope":"support.constant.json","settings":{"foreground":"#d19a66"}},{"scope":["keyword.operator.expression.instanceof","keyword.operator.new","keyword.operator.ternary","keyword.operator.optional","keyword.operator.expression.keyof"],"settings":{"foreground":"#c678dd"}},{"scope":"support.type.object.console","settings":{"foreground":"#e06c75"}},{"scope":"support.variable.property.process","settings":{"foreground":"#d19a66"}},{"scope":"entity.name.function,support.function.console","settings":{"foreground":"#61afef"}},{"scope":"keyword.operator.misc.rust","settings":{"foreground":"#abb2bf"}},{"scope":"keyword.operator.sigil.rust","settings":{"foreground":"#c678dd"}},{"scope":"keyword.operator.delete","settings":{"foreground":"#c678dd"}},{"scope":"support.type.object.dom","settings":{"foreground":"#56b6c2"}},{"scope":"support.variable.dom,support.variable.property.dom","settings":{"foreground":"#e06c75"}},{"scope":"keyword.operator.arithmetic,keyword.operator.comparison,keyword.operator.decrement,keyword.operator.increment,keyword.operator.relational","settings":{"foreground":"#56b6c2"}},{"scope":"keyword.operator.assignment.c,keyword.operator.comparison.c,keyword.operator.c,keyword.operator.increment.c,keyword.operator.decrement.c,keyword.operator.bitwise.shift.c,keyword.operator.assignment.cpp,keyword.operator.comparison.cpp,keyword.operator.cpp,keyword.operator.increment.cpp,keyword.operator.decrement.cpp,keyword.operator.bitwise.shift.cpp","settings":{"foreground":"#c678dd"}},{"scope":"punctuation.separator.delimiter","settings":{"foreground":"#abb2bf"}},{"scope":"punctuation.separator.c,punctuation.separator.cpp","settings":{"foreground":"#c678dd"}},{"scope":"support.type.posix-reserved.c,support.type.posix-reserved.cpp","settings":{"foreground":"#56b6c2"}},{"scope":"keyword.operator.sizeof.c,keyword.operator.sizeof.cpp","settings":{"foreground":"#c678dd"}},{"scope":"variable.parameter.function.language.python","settings":{"foreground":"#d19a66"}},{"scope":"support.type.python","settings":{"foreground":"#56b6c2"}},{"scope":"keyword.operator.logical.python","settings":{"foreground":"#c678dd"}},{"scope":"variable.parameter.function.python","settings":{"foreground":"#d19a66"}},{"scope":"punctuation.definition.arguments.begin.python,punctuation.definition.arguments.end.python,punctuation.separator.arguments.python,punctuation.definition.list.begin.python,punctuation.definition.list.end.python","settings":{"foreground":"#abb2bf"}},{"scope":"meta.function-call.generic.python","settings":{"foreground":"#61afef"}},{"scope":"constant.character.format.placeholder.other.python","settings":{"foreground":"#d19a66"}},{"scope":"keyword.operator","settings":{"foreground":"#abb2bf"}},{"scope":"keyword.operator.assignment.compound","settings":{"foreground":"#c678dd"}},{"scope":"keyword.operator.assignment.compound.js,keyword.operator.assignment.compound.ts","settings":{"foreground":"#56b6c2"}},{"scope":"keyword","settings":{"foreground":"#c678dd"}},{"scope":"entity.name.namespace","settings":{"foreground":"#e5c07b"}},{"scope":"variable","settings":{"foreground":"#e06c75"}},{"scope":"variable.c","settings":{"foreground":"#abb2bf"}},{"scope":"variable.language","settings":{"foreground":"#e5c07b"}},{"scope":"token.variable.parameter.java","settings":{"foreground":"#abb2bf"}},{"scope":"import.storage.java","settings":{"foreground":"#e5c07b"}},{"scope":"token.package.keyword","settings":{"foreground":"#c678dd"}},{"scope":"token.package","settings":{"foreground":"#abb2bf"}},{"scope":["entity.name.function","meta.require","support.function.any-method","variable.function"],"settings":{"foreground":"#61afef"}},{"scope":"entity.name.type.namespace","settings":{"foreground":"#e5c07b"}},{"scope":"support.class, entity.name.type.class","settings":{"foreground":"#e5c07b"}},{"scope":"entity.name.class.identifier.namespace.type","settings":{"foreground":"#e5c07b"}},{"scope":["entity.name.class","variable.other.class.js","variable.other.class.ts"],"settings":{"foreground":"#e5c07b"}},{"scope":"variable.other.class.php","settings":{"foreground":"#e06c75"}},{"scope":"entity.name.type","settings":{"foreground":"#e5c07b"}},{"scope":"keyword.control","settings":{"foreground":"#c678dd"}},{"scope":"control.elements, keyword.operator.less","settings":{"foreground":"#d19a66"}},{"scope":"keyword.other.special-method","settings":{"foreground":"#61afef"}},{"scope":"storage","settings":{"foreground":"#c678dd"}},{"scope":"token.storage","settings":{"foreground":"#c678dd"}},{"scope":"keyword.operator.expression.delete,keyword.operator.expression.in,keyword.operator.expression.of,keyword.operator.expression.instanceof,keyword.operator.new,keyword.operator.expression.typeof,keyword.operator.expression.void","settings":{"foreground":"#c678dd"}},{"scope":"token.storage.type.java","settings":{"foreground":"#e5c07b"}},{"scope":"support.function","settings":{"foreground":"#56b6c2"}},{"scope":"support.type.property-name","settings":{"foreground":"#abb2bf"}},{"scope":"support.type.property-name.toml, support.type.property-name.table.toml, support.type.property-name.array.toml","settings":{"foreground":"#e06c75"}},{"scope":"support.constant.property-value","settings":{"foreground":"#abb2bf"}},{"scope":"support.constant.font-name","settings":{"foreground":"#d19a66"}},{"scope":"meta.tag","settings":{"foreground":"#abb2bf"}},{"scope":"string","settings":{"foreground":"#98c379"}},{"scope":"constant.other.symbol","settings":{"foreground":"#56b6c2"}},{"scope":"constant.numeric","settings":{"foreground":"#d19a66"}},{"scope":"constant","settings":{"foreground":"#d19a66"}},{"scope":"punctuation.definition.constant","settings":{"foreground":"#d19a66"}},{"scope":"entity.name.tag","settings":{"foreground":"#e06c75"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#d19a66"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#61afef"}},{"scope":"entity.other.attribute-name.class.css","settings":{"foreground":"#d19a66"}},{"scope":"meta.selector","settings":{"foreground":"#c678dd"}},{"scope":"markup.heading","settings":{"foreground":"#e06c75"}},{"scope":"markup.heading punctuation.definition.heading, entity.name.section","settings":{"foreground":"#61afef"}},{"scope":"keyword.other.unit","settings":{"foreground":"#e06c75"}},{"scope":"markup.bold,todo.bold","settings":{"foreground":"#d19a66"}},{"scope":"punctuation.definition.bold","settings":{"foreground":"#e5c07b"}},{"scope":"markup.italic, punctuation.definition.italic,todo.emphasis","settings":{"foreground":"#c678dd"}},{"scope":"emphasis md","settings":{"foreground":"#c678dd"}},{"scope":"entity.name.section.markdown","settings":{"foreground":"#e06c75"}},{"scope":"punctuation.definition.heading.markdown","settings":{"foreground":"#e06c75"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#e5c07b"}},{"scope":"markup.heading.setext","settings":{"foreground":"#abb2bf"}},{"scope":"punctuation.definition.bold.markdown","settings":{"foreground":"#d19a66"}},{"scope":"markup.inline.raw.markdown","settings":{"foreground":"#98c379"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#98c379"}},{"scope":"punctuation.definition.raw.markdown","settings":{"foreground":"#e5c07b"}},{"scope":"punctuation.definition.list.markdown","settings":{"foreground":"#e5c07b"}},{"scope":["punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown","punctuation.definition.metadata.markdown"],"settings":{"foreground":"#e06c75"}},{"scope":["beginning.punctuation.definition.list.markdown"],"settings":{"foreground":"#e06c75"}},{"scope":"punctuation.definition.metadata.markdown","settings":{"foreground":"#e06c75"}},{"scope":"markup.underline.link.markdown,markup.underline.link.image.markdown","settings":{"foreground":"#c678dd"}},{"scope":"string.other.link.title.markdown,string.other.link.description.markdown","settings":{"foreground":"#61afef"}},{"scope":"markup.raw.monospace.asciidoc","settings":{"foreground":"#98c379"}},{"scope":"punctuation.definition.asciidoc","settings":{"foreground":"#e5c07b"}},{"scope":"markup.list.asciidoc","settings":{"foreground":"#e5c07b"}},{"scope":"markup.link.asciidoc,markup.other.url.asciidoc","settings":{"foreground":"#c678dd"}},{"scope":"string.unquoted.asciidoc,markup.other.url.asciidoc","settings":{"foreground":"#61afef"}},{"scope":"string.regexp","settings":{"foreground":"#56b6c2"}},{"scope":"punctuation.section.embedded, variable.interpolation","settings":{"foreground":"#e06c75"}},{"scope":"punctuation.section.embedded.begin,punctuation.section.embedded.end","settings":{"foreground":"#c678dd"}},{"scope":"invalid.illegal","settings":{"foreground":"#ffffff"}},{"scope":"invalid.illegal.bad-ampersand.html","settings":{"foreground":"#abb2bf"}},{"scope":"invalid.illegal.unrecognized-tag.html","settings":{"foreground":"#e06c75"}},{"scope":"invalid.broken","settings":{"foreground":"#ffffff"}},{"scope":"invalid.deprecated","settings":{"foreground":"#ffffff"}},{"scope":"invalid.deprecated.entity.other.attribute-name.html","settings":{"foreground":"#d19a66"}},{"scope":"invalid.unimplemented","settings":{"foreground":"#ffffff"}},{"scope":"source.json meta.structure.dictionary.json > string.quoted.json","settings":{"foreground":"#e06c75"}},{"scope":"source.json meta.structure.dictionary.json > string.quoted.json > punctuation.string","settings":{"foreground":"#e06c75"}},{"scope":"source.json meta.structure.dictionary.json > value.json > string.quoted.json,source.json meta.structure.array.json > value.json > string.quoted.json,source.json meta.structure.dictionary.json > value.json > string.quoted.json > punctuation,source.json meta.structure.array.json > value.json > string.quoted.json > punctuation","settings":{"foreground":"#98c379"}},{"scope":"source.json meta.structure.dictionary.json > constant.language.json,source.json meta.structure.array.json > constant.language.json","settings":{"foreground":"#56b6c2"}},{"scope":"support.type.property-name.json","settings":{"foreground":"#e06c75"}},{"scope":"support.type.property-name.json punctuation","settings":{"foreground":"#e06c75"}},{"scope":"text.html.laravel-blade source.php.embedded.line.html entity.name.tag.laravel-blade","settings":{"foreground":"#c678dd"}},{"scope":"text.html.laravel-blade source.php.embedded.line.html support.constant.laravel-blade","settings":{"foreground":"#c678dd"}},{"scope":"support.other.namespace.use.php,support.other.namespace.use-as.php,entity.other.alias.php,meta.interface.php","settings":{"foreground":"#e5c07b"}},{"scope":"keyword.operator.error-control.php","settings":{"foreground":"#c678dd"}},{"scope":"keyword.operator.type.php","settings":{"foreground":"#c678dd"}},{"scope":"punctuation.section.array.begin.php","settings":{"foreground":"#abb2bf"}},{"scope":"punctuation.section.array.end.php","settings":{"foreground":"#abb2bf"}},{"scope":"invalid.illegal.non-null-typehinted.php","settings":{"foreground":"#f44747"}},{"scope":"storage.type.php,meta.other.type.phpdoc.php,keyword.other.type.php,keyword.other.array.phpdoc.php","settings":{"foreground":"#e5c07b"}},{"scope":"meta.function-call.php,meta.function-call.object.php,meta.function-call.static.php","settings":{"foreground":"#61afef"}},{"scope":"punctuation.definition.parameters.begin.bracket.round.php,punctuation.definition.parameters.end.bracket.round.php,punctuation.separator.delimiter.php,punctuation.section.scope.begin.php,punctuation.section.scope.end.php,punctuation.terminator.expression.php,punctuation.definition.arguments.begin.bracket.round.php,punctuation.definition.arguments.end.bracket.round.php,punctuation.definition.storage-type.begin.bracket.round.php,punctuation.definition.storage-type.end.bracket.round.php,punctuation.definition.array.begin.bracket.round.php,punctuation.definition.array.end.bracket.round.php,punctuation.definition.begin.bracket.round.php,punctuation.definition.end.bracket.round.php,punctuation.definition.begin.bracket.curly.php,punctuation.definition.end.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php,punctuation.definition.section.switch-block.start.bracket.curly.php,punctuation.definition.section.switch-block.begin.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php","settings":{"foreground":"#abb2bf"}},{"scope":"support.constant.core.rust","settings":{"foreground":"#d19a66"}},{"scope":"support.constant.ext.php,support.constant.std.php,support.constant.core.php,support.constant.parser-token.php","settings":{"foreground":"#d19a66"}},{"scope":"entity.name.goto-label.php,support.other.php","settings":{"foreground":"#61afef"}},{"scope":"keyword.operator.logical.php,keyword.operator.bitwise.php,keyword.operator.arithmetic.php","settings":{"foreground":"#56b6c2"}},{"scope":"keyword.operator.regexp.php","settings":{"foreground":"#c678dd"}},{"scope":"keyword.operator.comparison.php","settings":{"foreground":"#56b6c2"}},{"scope":"keyword.operator.heredoc.php,keyword.operator.nowdoc.php","settings":{"foreground":"#c678dd"}},{"scope":"meta.function.decorator.python","settings":{"foreground":"#61afef"}},{"scope":"support.token.decorator.python,meta.function.decorator.identifier.python","settings":{"foreground":"#56b6c2"}},{"scope":"function.parameter","settings":{"foreground":"#abb2bf"}},{"scope":"function.brace","settings":{"foreground":"#abb2bf"}},{"scope":"function.parameter.ruby, function.parameter.cs","settings":{"foreground":"#abb2bf"}},{"scope":"constant.language.symbol.ruby","settings":{"foreground":"#56b6c2"}},{"scope":"constant.language.symbol.hashkey.ruby","settings":{"foreground":"#56b6c2"}},{"scope":"rgb-value","settings":{"foreground":"#56b6c2"}},{"scope":"inline-color-decoration rgb-value","settings":{"foreground":"#d19a66"}},{"scope":"less rgb-value","settings":{"foreground":"#d19a66"}},{"scope":"selector.sass","settings":{"foreground":"#e06c75"}},{"scope":"support.type.primitive.ts,support.type.builtin.ts,support.type.primitive.tsx,support.type.builtin.tsx","settings":{"foreground":"#e5c07b"}},{"scope":"block.scope.end,block.scope.begin","settings":{"foreground":"#abb2bf"}},{"scope":"storage.type.cs","settings":{"foreground":"#e5c07b"}},{"scope":"entity.name.variable.local.cs","settings":{"foreground":"#e06c75"}},{"scope":"token.info-token","settings":{"foreground":"#61afef"}},{"scope":"token.warn-token","settings":{"foreground":"#d19a66"}},{"scope":"token.error-token","settings":{"foreground":"#f44747"}},{"scope":"token.debug-token","settings":{"foreground":"#c678dd"}},{"scope":["punctuation.definition.template-expression.begin","punctuation.definition.template-expression.end","punctuation.section.embedded"],"settings":{"foreground":"#c678dd"}},{"scope":["meta.template.expression"],"settings":{"foreground":"#abb2bf"}},{"scope":["keyword.operator.module"],"settings":{"foreground":"#c678dd"}},{"scope":["support.type.type.flowtype"],"settings":{"foreground":"#61afef"}},{"scope":["support.type.primitive"],"settings":{"foreground":"#e5c07b"}},{"scope":["meta.property.object"],"settings":{"foreground":"#e06c75"}},{"scope":["variable.parameter.function.js"],"settings":{"foreground":"#e06c75"}},{"scope":["keyword.other.template.begin"],"settings":{"foreground":"#98c379"}},{"scope":["keyword.other.template.end"],"settings":{"foreground":"#98c379"}},{"scope":["keyword.other.substitution.begin"],"settings":{"foreground":"#98c379"}},{"scope":["keyword.other.substitution.end"],"settings":{"foreground":"#98c379"}},{"scope":["keyword.operator.assignment"],"settings":{"foreground":"#56b6c2"}},{"scope":["keyword.operator.assignment.go"],"settings":{"foreground":"#e5c07b"}},{"scope":["keyword.operator.arithmetic.go","keyword.operator.address.go"],"settings":{"foreground":"#c678dd"}},{"scope":["keyword.operator.arithmetic.c","keyword.operator.arithmetic.cpp"],"settings":{"foreground":"#c678dd"}},{"scope":["entity.name.package.go"],"settings":{"foreground":"#e5c07b"}},{"scope":["support.type.prelude.elm"],"settings":{"foreground":"#56b6c2"}},{"scope":["support.constant.elm"],"settings":{"foreground":"#d19a66"}},{"scope":["punctuation.quasi.element"],"settings":{"foreground":"#c678dd"}},{"scope":["constant.character.entity"],"settings":{"foreground":"#e06c75"}},{"scope":["entity.other.attribute-name.pseudo-element","entity.other.attribute-name.pseudo-class"],"settings":{"foreground":"#56b6c2"}},{"scope":["entity.global.clojure"],"settings":{"foreground":"#e5c07b"}},{"scope":["meta.symbol.clojure"],"settings":{"foreground":"#e06c75"}},{"scope":["constant.keyword.clojure"],"settings":{"foreground":"#56b6c2"}},{"scope":["meta.arguments.coffee","variable.parameter.function.coffee"],"settings":{"foreground":"#e06c75"}},{"scope":["source.ini"],"settings":{"foreground":"#98c379"}},{"scope":["meta.scope.prerequisites.makefile"],"settings":{"foreground":"#e06c75"}},{"scope":["source.makefile"],"settings":{"foreground":"#e5c07b"}},{"scope":["storage.modifier.import.groovy"],"settings":{"foreground":"#e5c07b"}},{"scope":["meta.method.groovy"],"settings":{"foreground":"#61afef"}},{"scope":["meta.definition.variable.name.groovy"],"settings":{"foreground":"#e06c75"}},{"scope":["meta.definition.class.inherited.classes.groovy"],"settings":{"foreground":"#98c379"}},{"scope":["support.variable.semantic.hlsl"],"settings":{"foreground":"#e5c07b"}},{"scope":["support.type.texture.hlsl","support.type.sampler.hlsl","support.type.object.hlsl","support.type.object.rw.hlsl","support.type.fx.hlsl","support.type.object.hlsl"],"settings":{"foreground":"#c678dd"}},{"scope":["text.variable","text.bracketed"],"settings":{"foreground":"#e06c75"}},{"scope":["support.type.swift","support.type.vb.asp"],"settings":{"foreground":"#e5c07b"}},{"scope":["entity.name.function.xi"],"settings":{"foreground":"#e5c07b"}},{"scope":["entity.name.class.xi"],"settings":{"foreground":"#56b6c2"}},{"scope":["constant.character.character-class.regexp.xi"],"settings":{"foreground":"#e06c75"}},{"scope":["constant.regexp.xi"],"settings":{"foreground":"#c678dd"}},{"scope":["keyword.control.xi"],"settings":{"foreground":"#56b6c2"}},{"scope":["invalid.xi"],"settings":{"foreground":"#abb2bf"}},{"scope":["beginning.punctuation.definition.quote.markdown.xi"],"settings":{"foreground":"#98c379"}},{"scope":["beginning.punctuation.definition.list.markdown.xi"],"settings":{"foreground":"#7f848e"}},{"scope":["constant.character.xi"],"settings":{"foreground":"#61afef"}},{"scope":["accent.xi"],"settings":{"foreground":"#61afef"}},{"scope":["wikiword.xi"],"settings":{"foreground":"#d19a66"}},{"scope":["constant.other.color.rgb-value.xi"],"settings":{"foreground":"#ffffff"}},{"scope":["punctuation.definition.tag.xi"],"settings":{"foreground":"#5c6370"}},{"scope":["entity.name.label.cs","entity.name.scope-resolution.function.call","entity.name.scope-resolution.function.definition"],"settings":{"foreground":"#e5c07b"}},{"scope":["entity.name.label.cs","markup.heading.setext.1.markdown","markup.heading.setext.2.markdown"],"settings":{"foreground":"#e06c75"}},{"scope":[" meta.brace.square"],"settings":{"foreground":"#abb2bf"}},{"scope":"comment, punctuation.definition.comment","settings":{"fontStyle":"italic","foreground":"#7f848e"}},{"scope":"markup.quote.markdown","settings":{"foreground":"#5c6370"}},{"scope":"punctuation.definition.block.sequence.item.yaml","settings":{"foreground":"#abb2bf"}},{"scope":["constant.language.symbol.elixir","constant.language.symbol.double-quoted.elixir"],"settings":{"foreground":"#56b6c2"}},{"scope":["entity.name.variable.parameter.cs"],"settings":{"foreground":"#e5c07b"}},{"scope":["entity.name.variable.field.cs"],"settings":{"foreground":"#e06c75"}},{"scope":"markup.deleted","settings":{"foreground":"#e06c75"}},{"scope":"markup.inserted","settings":{"foreground":"#98c379"}},{"scope":"markup.underline","settings":{"fontStyle":"underline"}},{"scope":["punctuation.section.embedded.begin.php","punctuation.section.embedded.end.php"],"settings":{"foreground":"#BE5046"}},{"scope":["support.other.namespace.php"],"settings":{"foreground":"#abb2bf"}},{"scope":["variable.parameter.function.latex"],"settings":{"foreground":"#e06c75"}},{"scope":["variable.other.object"],"settings":{"foreground":"#e5c07b"}},{"scope":["variable.other.constant.property"],"settings":{"foreground":"#e06c75"}},{"scope":["entity.other.inherited-class"],"settings":{"foreground":"#e5c07b"}},{"scope":"variable.other.readwrite.c","settings":{"foreground":"#e06c75"}},{"scope":"entity.name.variable.parameter.php,punctuation.separator.colon.php,constant.other.php","settings":{"foreground":"#abb2bf"}},{"scope":["constant.numeric.decimal.asm.x86_64"],"settings":{"foreground":"#c678dd"}},{"scope":["support.other.parenthesis.regexp"],"settings":{"foreground":"#d19a66"}},{"scope":["constant.character.escape"],"settings":{"foreground":"#56b6c2"}},{"scope":["string.regexp"],"settings":{"foreground":"#e06c75"}},{"scope":["log.info"],"settings":{"foreground":"#98c379"}},{"scope":["log.warning"],"settings":{"foreground":"#e5c07b"}},{"scope":["log.error"],"settings":{"foreground":"#e06c75"}},{"scope":"keyword.operator.expression.is","settings":{"foreground":"#c678dd"}},{"scope":"entity.name.label","settings":{"foreground":"#e06c75"}},{"scope":["support.class.math.block.environment.latex","constant.other.general.math.tex"],"settings":{"foreground":"#61afef"}},{"scope":["constant.character.math.tex"],"settings":{"foreground":"#98c379"}},{"scope":"entity.other.attribute-name.js,entity.other.attribute-name.ts,entity.other.attribute-name.jsx,entity.other.attribute-name.tsx,variable.parameter,variable.language.super","settings":{"fontStyle":"italic"}},{"scope":"comment.line.double-slash,comment.block.documentation","settings":{"fontStyle":"italic"}},{"scope":"markup.italic.markdown","settings":{"fontStyle":"italic"}}],"type":"dark"}'))});var o3={};x(o3,{default:()=>Bce});var Bce,s3=_(()=>{Bce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#FAFAFA","activityBar.foreground":"#121417","activityBarBadge.background":"#526FFF","activityBarBadge.foreground":"#FFFFFF","badge.background":"#526FFF","badge.foreground":"#FFFFFF","button.background":"#5871EF","button.foreground":"#FFFFFF","button.hoverBackground":"#6B83ED","diffEditor.insertedTextBackground":"#00809B33","dropdown.background":"#FFFFFF","dropdown.border":"#DBDBDC","editor.background":"#FAFAFA","editor.findMatchHighlightBackground":"#526FFF33","editor.foreground":"#383A42","editor.lineHighlightBackground":"#383A420C","editor.selectionBackground":"#E5E5E6","editorCursor.foreground":"#526FFF","editorGroup.background":"#EAEAEB","editorGroup.border":"#DBDBDC","editorGroupHeader.tabsBackground":"#EAEAEB","editorHoverWidget.background":"#EAEAEB","editorHoverWidget.border":"#DBDBDC","editorIndentGuide.activeBackground":"#626772","editorIndentGuide.background":"#383A4233","editorInlayHint.background":"#F5F5F5","editorInlayHint.foreground":"#AFB2BB","editorLineNumber.activeForeground":"#383A42","editorLineNumber.foreground":"#9D9D9F","editorRuler.foreground":"#383A4233","editorSuggestWidget.background":"#EAEAEB","editorSuggestWidget.border":"#DBDBDC","editorSuggestWidget.selectedBackground":"#FFFFFF","editorWhitespace.foreground":"#383A4233","editorWidget.background":"#EAEAEB","editorWidget.border":"#E5E5E6","extensionButton.prominentBackground":"#3BBA54","extensionButton.prominentHoverBackground":"#4CC263","focusBorder":"#526FFF","input.background":"#FFFFFF","input.border":"#DBDBDC","list.activeSelectionBackground":"#DBDBDC","list.activeSelectionForeground":"#232324","list.focusBackground":"#DBDBDC","list.highlightForeground":"#121417","list.hoverBackground":"#DBDBDC66","list.inactiveSelectionBackground":"#DBDBDC","list.inactiveSelectionForeground":"#232324","notebook.cellEditorBackground":"#F5F5F5","notification.background":"#333333","peekView.border":"#526FFF","peekViewEditor.background":"#FFFFFF","peekViewResult.background":"#EAEAEB","peekViewResult.selectionBackground":"#DBDBDC","peekViewTitle.background":"#FFFFFF","pickerGroup.border":"#526FFF","scrollbarSlider.activeBackground":"#747D9180","scrollbarSlider.background":"#4E566680","scrollbarSlider.hoverBackground":"#5A637580","sideBar.background":"#EAEAEB","sideBarSectionHeader.background":"#FAFAFA","statusBar.background":"#EAEAEB","statusBar.debuggingForeground":"#FFFFFF","statusBar.foreground":"#424243","statusBar.noFolderBackground":"#EAEAEB","statusBarItem.hoverBackground":"#DBDBDC","tab.activeBackground":"#FAFAFA","tab.activeForeground":"#121417","tab.border":"#DBDBDC","tab.inactiveBackground":"#EAEAEB","titleBar.activeBackground":"#EAEAEB","titleBar.activeForeground":"#424243","titleBar.inactiveBackground":"#EAEAEB","titleBar.inactiveForeground":"#424243"},"displayName":"One Light","name":"one-light","tokenColors":[{"scope":["comment"],"settings":{"fontStyle":"italic","foreground":"#A0A1A7"}},{"scope":["comment markup.link"],"settings":{"foreground":"#A0A1A7"}},{"scope":["entity.name.type"],"settings":{"foreground":"#C18401"}},{"scope":["entity.other.inherited-class"],"settings":{"foreground":"#C18401"}},{"scope":["keyword"],"settings":{"foreground":"#A626A4"}},{"scope":["keyword.control"],"settings":{"foreground":"#A626A4"}},{"scope":["keyword.operator"],"settings":{"foreground":"#383A42"}},{"scope":["keyword.other.special-method"],"settings":{"foreground":"#4078F2"}},{"scope":["keyword.other.unit"],"settings":{"foreground":"#986801"}},{"scope":["storage"],"settings":{"foreground":"#A626A4"}},{"scope":["storage.type.annotation","storage.type.primitive"],"settings":{"foreground":"#A626A4"}},{"scope":["storage.modifier.package","storage.modifier.import"],"settings":{"foreground":"#383A42"}},{"scope":["constant"],"settings":{"foreground":"#986801"}},{"scope":["constant.variable"],"settings":{"foreground":"#986801"}},{"scope":["constant.character.escape"],"settings":{"foreground":"#0184BC"}},{"scope":["constant.numeric"],"settings":{"foreground":"#986801"}},{"scope":["constant.other.color"],"settings":{"foreground":"#0184BC"}},{"scope":["constant.other.symbol"],"settings":{"foreground":"#0184BC"}},{"scope":["variable"],"settings":{"foreground":"#E45649"}},{"scope":["variable.interpolation"],"settings":{"foreground":"#CA1243"}},{"scope":["variable.parameter"],"settings":{"foreground":"#383A42"}},{"scope":["string"],"settings":{"foreground":"#50A14F"}},{"scope":["string > source","string embedded"],"settings":{"foreground":"#383A42"}},{"scope":["string.regexp"],"settings":{"foreground":"#0184BC"}},{"scope":["string.regexp source.ruby.embedded"],"settings":{"foreground":"#C18401"}},{"scope":["string.other.link"],"settings":{"foreground":"#E45649"}},{"scope":["punctuation.definition.comment"],"settings":{"foreground":"#A0A1A7"}},{"scope":["punctuation.definition.method-parameters","punctuation.definition.function-parameters","punctuation.definition.parameters","punctuation.definition.separator","punctuation.definition.seperator","punctuation.definition.array"],"settings":{"foreground":"#383A42"}},{"scope":["punctuation.definition.heading","punctuation.definition.identity"],"settings":{"foreground":"#4078F2"}},{"scope":["punctuation.definition.bold"],"settings":{"fontStyle":"bold","foreground":"#C18401"}},{"scope":["punctuation.definition.italic"],"settings":{"fontStyle":"italic","foreground":"#A626A4"}},{"scope":["punctuation.section.embedded"],"settings":{"foreground":"#CA1243"}},{"scope":["punctuation.section.method","punctuation.section.class","punctuation.section.inner-class"],"settings":{"foreground":"#383A42"}},{"scope":["support.class"],"settings":{"foreground":"#C18401"}},{"scope":["support.type"],"settings":{"foreground":"#0184BC"}},{"scope":["support.function"],"settings":{"foreground":"#0184BC"}},{"scope":["support.function.any-method"],"settings":{"foreground":"#4078F2"}},{"scope":["entity.name.function"],"settings":{"foreground":"#4078F2"}},{"scope":["entity.name.class","entity.name.type.class"],"settings":{"foreground":"#C18401"}},{"scope":["entity.name.section"],"settings":{"foreground":"#4078F2"}},{"scope":["entity.name.tag"],"settings":{"foreground":"#E45649"}},{"scope":["entity.other.attribute-name"],"settings":{"foreground":"#986801"}},{"scope":["entity.other.attribute-name.id"],"settings":{"foreground":"#4078F2"}},{"scope":["meta.class"],"settings":{"foreground":"#C18401"}},{"scope":["meta.class.body"],"settings":{"foreground":"#383A42"}},{"scope":["meta.method-call","meta.method"],"settings":{"foreground":"#383A42"}},{"scope":["meta.definition.variable"],"settings":{"foreground":"#E45649"}},{"scope":["meta.link"],"settings":{"foreground":"#986801"}},{"scope":["meta.require"],"settings":{"foreground":"#4078F2"}},{"scope":["meta.selector"],"settings":{"foreground":"#A626A4"}},{"scope":["meta.separator"],"settings":{"foreground":"#383A42"}},{"scope":["meta.tag"],"settings":{"foreground":"#383A42"}},{"scope":["underline"],"settings":{"text-decoration":"underline"}},{"scope":["none"],"settings":{"foreground":"#383A42"}},{"scope":["invalid.deprecated"],"settings":{"background":"#F2A60D","foreground":"#000000"}},{"scope":["invalid.illegal"],"settings":{"background":"#FF1414","foreground":"white"}},{"scope":["markup.bold"],"settings":{"fontStyle":"bold","foreground":"#986801"}},{"scope":["markup.changed"],"settings":{"foreground":"#A626A4"}},{"scope":["markup.deleted"],"settings":{"foreground":"#E45649"}},{"scope":["markup.italic"],"settings":{"fontStyle":"italic","foreground":"#A626A4"}},{"scope":["markup.heading"],"settings":{"foreground":"#E45649"}},{"scope":["markup.heading punctuation.definition.heading"],"settings":{"foreground":"#4078F2"}},{"scope":["markup.link"],"settings":{"foreground":"#0184BC"}},{"scope":["markup.inserted"],"settings":{"foreground":"#50A14F"}},{"scope":["markup.quote"],"settings":{"foreground":"#986801"}},{"scope":["markup.raw"],"settings":{"foreground":"#50A14F"}},{"scope":["source.c keyword.operator"],"settings":{"foreground":"#A626A4"}},{"scope":["source.cpp keyword.operator"],"settings":{"foreground":"#A626A4"}},{"scope":["source.cs keyword.operator"],"settings":{"foreground":"#A626A4"}},{"scope":["source.css property-name","source.css property-value"],"settings":{"foreground":"#696C77"}},{"scope":["source.css property-name.support","source.css property-value.support"],"settings":{"foreground":"#383A42"}},{"scope":["source.elixir source.embedded.source"],"settings":{"foreground":"#383A42"}},{"scope":["source.elixir constant.language","source.elixir constant.numeric","source.elixir constant.definition"],"settings":{"foreground":"#4078F2"}},{"scope":["source.elixir variable.definition","source.elixir variable.anonymous"],"settings":{"foreground":"#A626A4"}},{"scope":["source.elixir parameter.variable.function"],"settings":{"fontStyle":"italic","foreground":"#986801"}},{"scope":["source.elixir quoted"],"settings":{"foreground":"#50A14F"}},{"scope":["source.elixir keyword.special-method","source.elixir embedded.section","source.elixir embedded.source.empty"],"settings":{"foreground":"#E45649"}},{"scope":["source.elixir readwrite.module punctuation"],"settings":{"foreground":"#E45649"}},{"scope":["source.elixir regexp.section","source.elixir regexp.string"],"settings":{"foreground":"#CA1243"}},{"scope":["source.elixir separator","source.elixir keyword.operator"],"settings":{"foreground":"#986801"}},{"scope":["source.elixir variable.constant"],"settings":{"foreground":"#C18401"}},{"scope":["source.elixir array","source.elixir scope","source.elixir section"],"settings":{"foreground":"#696C77"}},{"scope":["source.gfm markup"],"settings":{"-webkit-font-smoothing":"auto"}},{"scope":["source.gfm link entity"],"settings":{"foreground":"#4078F2"}},{"scope":["source.go storage.type.string"],"settings":{"foreground":"#A626A4"}},{"scope":["source.ini keyword.other.definition.ini"],"settings":{"foreground":"#E45649"}},{"scope":["source.java storage.modifier.import"],"settings":{"foreground":"#C18401"}},{"scope":["source.java storage.type"],"settings":{"foreground":"#C18401"}},{"scope":["source.java keyword.operator.instanceof"],"settings":{"foreground":"#A626A4"}},{"scope":["source.java-properties meta.key-pair"],"settings":{"foreground":"#E45649"}},{"scope":["source.java-properties meta.key-pair > punctuation"],"settings":{"foreground":"#383A42"}},{"scope":["source.js keyword.operator"],"settings":{"foreground":"#0184BC"}},{"scope":["source.js keyword.operator.delete","source.js keyword.operator.in","source.js keyword.operator.of","source.js keyword.operator.instanceof","source.js keyword.operator.new","source.js keyword.operator.typeof","source.js keyword.operator.void"],"settings":{"foreground":"#A626A4"}},{"scope":["source.ts keyword.operator"],"settings":{"foreground":"#0184BC"}},{"scope":["source.flow keyword.operator"],"settings":{"foreground":"#0184BC"}},{"scope":["source.json meta.structure.dictionary.json > string.quoted.json"],"settings":{"foreground":"#E45649"}},{"scope":["source.json meta.structure.dictionary.json > string.quoted.json > punctuation.string"],"settings":{"foreground":"#E45649"}},{"scope":["source.json meta.structure.dictionary.json > value.json > string.quoted.json","source.json meta.structure.array.json > value.json > string.quoted.json","source.json meta.structure.dictionary.json > value.json > string.quoted.json > punctuation","source.json meta.structure.array.json > value.json > string.quoted.json > punctuation"],"settings":{"foreground":"#50A14F"}},{"scope":["source.json meta.structure.dictionary.json > constant.language.json","source.json meta.structure.array.json > constant.language.json"],"settings":{"foreground":"#0184BC"}},{"scope":["ng.interpolation"],"settings":{"foreground":"#E45649"}},{"scope":["ng.interpolation.begin","ng.interpolation.end"],"settings":{"foreground":"#4078F2"}},{"scope":["ng.interpolation function"],"settings":{"foreground":"#E45649"}},{"scope":["ng.interpolation function.begin","ng.interpolation function.end"],"settings":{"foreground":"#4078F2"}},{"scope":["ng.interpolation bool"],"settings":{"foreground":"#986801"}},{"scope":["ng.interpolation bracket"],"settings":{"foreground":"#383A42"}},{"scope":["ng.pipe","ng.operator"],"settings":{"foreground":"#383A42"}},{"scope":["ng.tag"],"settings":{"foreground":"#0184BC"}},{"scope":["ng.attribute-with-value attribute-name"],"settings":{"foreground":"#C18401"}},{"scope":["ng.attribute-with-value string"],"settings":{"foreground":"#A626A4"}},{"scope":["ng.attribute-with-value string.begin","ng.attribute-with-value string.end"],"settings":{"foreground":"#383A42"}},{"scope":["source.ruby constant.other.symbol > punctuation"],"settings":{"foreground":"inherit"}},{"scope":["source.php class.bracket"],"settings":{"foreground":"#383A42"}},{"scope":["source.python keyword.operator.logical.python"],"settings":{"foreground":"#A626A4"}},{"scope":["source.python variable.parameter"],"settings":{"foreground":"#986801"}},{"scope":"customrule","settings":{"foreground":"#383A42"}},{"scope":"support.type.property-name","settings":{"foreground":"#383A42"}},{"scope":"string.quoted.double punctuation","settings":{"foreground":"#50A14F"}},{"scope":"support.constant","settings":{"foreground":"#986801"}},{"scope":"support.type.property-name.json","settings":{"foreground":"#E45649"}},{"scope":"support.type.property-name.json punctuation","settings":{"foreground":"#E45649"}},{"scope":["punctuation.separator.key-value.ts","punctuation.separator.key-value.js","punctuation.separator.key-value.tsx"],"settings":{"foreground":"#0184BC"}},{"scope":["source.js.embedded.html keyword.operator","source.ts.embedded.html keyword.operator"],"settings":{"foreground":"#0184BC"}},{"scope":["variable.other.readwrite.js","variable.other.readwrite.ts","variable.other.readwrite.tsx"],"settings":{"foreground":"#383A42"}},{"scope":["support.variable.dom.js","support.variable.dom.ts"],"settings":{"foreground":"#E45649"}},{"scope":["support.variable.property.dom.js","support.variable.property.dom.ts"],"settings":{"foreground":"#E45649"}},{"scope":["meta.template.expression.js punctuation.definition","meta.template.expression.ts punctuation.definition"],"settings":{"foreground":"#CA1243"}},{"scope":["source.ts punctuation.definition.typeparameters","source.js punctuation.definition.typeparameters","source.tsx punctuation.definition.typeparameters"],"settings":{"foreground":"#383A42"}},{"scope":["source.ts punctuation.definition.block","source.js punctuation.definition.block","source.tsx punctuation.definition.block"],"settings":{"foreground":"#383A42"}},{"scope":["source.ts punctuation.separator.comma","source.js punctuation.separator.comma","source.tsx punctuation.separator.comma"],"settings":{"foreground":"#383A42"}},{"scope":["support.variable.property.js","support.variable.property.ts","support.variable.property.tsx"],"settings":{"foreground":"#E45649"}},{"scope":["keyword.control.default.js","keyword.control.default.ts","keyword.control.default.tsx"],"settings":{"foreground":"#E45649"}},{"scope":["keyword.operator.expression.instanceof.js","keyword.operator.expression.instanceof.ts","keyword.operator.expression.instanceof.tsx"],"settings":{"foreground":"#A626A4"}},{"scope":["keyword.operator.expression.of.js","keyword.operator.expression.of.ts","keyword.operator.expression.of.tsx"],"settings":{"foreground":"#A626A4"}},{"scope":["meta.brace.round.js","meta.array-binding-pattern-variable.js","meta.brace.square.js","meta.brace.round.ts","meta.array-binding-pattern-variable.ts","meta.brace.square.ts","meta.brace.round.tsx","meta.array-binding-pattern-variable.tsx","meta.brace.square.tsx"],"settings":{"foreground":"#383A42"}},{"scope":["source.js punctuation.accessor","source.ts punctuation.accessor","source.tsx punctuation.accessor"],"settings":{"foreground":"#383A42"}},{"scope":["punctuation.terminator.statement.js","punctuation.terminator.statement.ts","punctuation.terminator.statement.tsx"],"settings":{"foreground":"#383A42"}},{"scope":["meta.array-binding-pattern-variable.js variable.other.readwrite.js","meta.array-binding-pattern-variable.ts variable.other.readwrite.ts","meta.array-binding-pattern-variable.tsx variable.other.readwrite.tsx"],"settings":{"foreground":"#986801"}},{"scope":["source.js support.variable","source.ts support.variable","source.tsx support.variable"],"settings":{"foreground":"#E45649"}},{"scope":["variable.other.constant.property.js","variable.other.constant.property.ts","variable.other.constant.property.tsx"],"settings":{"foreground":"#986801"}},{"scope":["keyword.operator.new.ts","keyword.operator.new.j","keyword.operator.new.tsx"],"settings":{"foreground":"#A626A4"}},{"scope":["source.ts keyword.operator","source.tsx keyword.operator"],"settings":{"foreground":"#0184BC"}},{"scope":["punctuation.separator.parameter.js","punctuation.separator.parameter.ts","punctuation.separator.parameter.tsx "],"settings":{"foreground":"#383A42"}},{"scope":["constant.language.import-export-all.js","constant.language.import-export-all.ts"],"settings":{"foreground":"#E45649"}},{"scope":["constant.language.import-export-all.jsx","constant.language.import-export-all.tsx"],"settings":{"foreground":"#0184BC"}},{"scope":["keyword.control.as.js","keyword.control.as.ts","keyword.control.as.jsx","keyword.control.as.tsx"],"settings":{"foreground":"#383A42"}},{"scope":["variable.other.readwrite.alias.js","variable.other.readwrite.alias.ts","variable.other.readwrite.alias.jsx","variable.other.readwrite.alias.tsx"],"settings":{"foreground":"#E45649"}},{"scope":["variable.other.constant.js","variable.other.constant.ts","variable.other.constant.jsx","variable.other.constant.tsx"],"settings":{"foreground":"#986801"}},{"scope":["meta.export.default.js variable.other.readwrite.js","meta.export.default.ts variable.other.readwrite.ts"],"settings":{"foreground":"#E45649"}},{"scope":["source.js meta.template.expression.js punctuation.accessor","source.ts meta.template.expression.ts punctuation.accessor","source.tsx meta.template.expression.tsx punctuation.accessor"],"settings":{"foreground":"#50A14F"}},{"scope":["source.js meta.import-equals.external.js keyword.operator","source.jsx meta.import-equals.external.jsx keyword.operator","source.ts meta.import-equals.external.ts keyword.operator","source.tsx meta.import-equals.external.tsx keyword.operator"],"settings":{"foreground":"#383A42"}},{"scope":"entity.name.type.module.js,entity.name.type.module.ts,entity.name.type.module.jsx,entity.name.type.module.tsx","settings":{"foreground":"#50A14F"}},{"scope":"meta.class.js,meta.class.ts,meta.class.jsx,meta.class.tsx","settings":{"foreground":"#383A42"}},{"scope":["meta.definition.property.js variable","meta.definition.property.ts variable","meta.definition.property.jsx variable","meta.definition.property.tsx variable"],"settings":{"foreground":"#383A42"}},{"scope":["meta.type.parameters.js support.type","meta.type.parameters.jsx support.type","meta.type.parameters.ts support.type","meta.type.parameters.tsx support.type"],"settings":{"foreground":"#383A42"}},{"scope":["source.js meta.tag.js keyword.operator","source.jsx meta.tag.jsx keyword.operator","source.ts meta.tag.ts keyword.operator","source.tsx meta.tag.tsx keyword.operator"],"settings":{"foreground":"#383A42"}},{"scope":["meta.tag.js punctuation.section.embedded","meta.tag.jsx punctuation.section.embedded","meta.tag.ts punctuation.section.embedded","meta.tag.tsx punctuation.section.embedded"],"settings":{"foreground":"#383A42"}},{"scope":["meta.array.literal.js variable","meta.array.literal.jsx variable","meta.array.literal.ts variable","meta.array.literal.tsx variable"],"settings":{"foreground":"#C18401"}},{"scope":["support.type.object.module.js","support.type.object.module.jsx","support.type.object.module.ts","support.type.object.module.tsx"],"settings":{"foreground":"#E45649"}},{"scope":["constant.language.json"],"settings":{"foreground":"#0184BC"}},{"scope":["variable.other.constant.object.js","variable.other.constant.object.jsx","variable.other.constant.object.ts","variable.other.constant.object.tsx"],"settings":{"foreground":"#986801"}},{"scope":["storage.type.property.js","storage.type.property.jsx","storage.type.property.ts","storage.type.property.tsx"],"settings":{"foreground":"#0184BC"}},{"scope":["meta.template.expression.js string.quoted punctuation.definition","meta.template.expression.jsx string.quoted punctuation.definition","meta.template.expression.ts string.quoted punctuation.definition","meta.template.expression.tsx string.quoted punctuation.definition"],"settings":{"foreground":"#50A14F"}},{"scope":["meta.template.expression.js string.template punctuation.definition.string.template","meta.template.expression.jsx string.template punctuation.definition.string.template","meta.template.expression.ts string.template punctuation.definition.string.template","meta.template.expression.tsx string.template punctuation.definition.string.template"],"settings":{"foreground":"#50A14F"}},{"scope":["keyword.operator.expression.in.js","keyword.operator.expression.in.jsx","keyword.operator.expression.in.ts","keyword.operator.expression.in.tsx"],"settings":{"foreground":"#A626A4"}},{"scope":["variable.other.object.js","variable.other.object.ts"],"settings":{"foreground":"#383A42"}},{"scope":["meta.object-literal.key.js","meta.object-literal.key.ts"],"settings":{"foreground":"#E45649"}},{"scope":"source.python constant.other","settings":{"foreground":"#383A42"}},{"scope":"source.python constant","settings":{"foreground":"#986801"}},{"scope":"constant.character.format.placeholder.other.python storage","settings":{"foreground":"#986801"}},{"scope":"support.variable.magic.python","settings":{"foreground":"#E45649"}},{"scope":"meta.function.parameters.python","settings":{"foreground":"#986801"}},{"scope":"punctuation.separator.annotation.python","settings":{"foreground":"#383A42"}},{"scope":"punctuation.separator.parameters.python","settings":{"foreground":"#383A42"}},{"scope":"entity.name.variable.field.cs","settings":{"foreground":"#E45649"}},{"scope":"source.cs keyword.operator","settings":{"foreground":"#383A42"}},{"scope":"variable.other.readwrite.cs","settings":{"foreground":"#383A42"}},{"scope":"variable.other.object.cs","settings":{"foreground":"#383A42"}},{"scope":"variable.other.object.property.cs","settings":{"foreground":"#383A42"}},{"scope":"entity.name.variable.property.cs","settings":{"foreground":"#4078F2"}},{"scope":"storage.type.cs","settings":{"foreground":"#C18401"}},{"scope":"keyword.other.unsafe.rust","settings":{"foreground":"#A626A4"}},{"scope":"entity.name.type.rust","settings":{"foreground":"#0184BC"}},{"scope":"storage.modifier.lifetime.rust","settings":{"foreground":"#383A42"}},{"scope":"entity.name.lifetime.rust","settings":{"foreground":"#986801"}},{"scope":"storage.type.core.rust","settings":{"foreground":"#0184BC"}},{"scope":"meta.attribute.rust","settings":{"foreground":"#986801"}},{"scope":"storage.class.std.rust","settings":{"foreground":"#0184BC"}},{"scope":"markup.raw.block.markdown","settings":{"foreground":"#383A42"}},{"scope":"punctuation.definition.variable.shell","settings":{"foreground":"#E45649"}},{"scope":"support.constant.property-value.css","settings":{"foreground":"#383A42"}},{"scope":"punctuation.definition.constant.css","settings":{"foreground":"#986801"}},{"scope":"punctuation.separator.key-value.scss","settings":{"foreground":"#E45649"}},{"scope":"punctuation.definition.constant.scss","settings":{"foreground":"#986801"}},{"scope":"meta.property-list.scss punctuation.separator.key-value.scss","settings":{"foreground":"#383A42"}},{"scope":"storage.type.primitive.array.java","settings":{"foreground":"#C18401"}},{"scope":"entity.name.section.markdown","settings":{"foreground":"#E45649"}},{"scope":"punctuation.definition.heading.markdown","settings":{"foreground":"#E45649"}},{"scope":"markup.heading.setext","settings":{"foreground":"#383A42"}},{"scope":"punctuation.definition.bold.markdown","settings":{"foreground":"#986801"}},{"scope":"markup.inline.raw.markdown","settings":{"foreground":"#50A14F"}},{"scope":"beginning.punctuation.definition.list.markdown","settings":{"foreground":"#E45649"}},{"scope":"markup.quote.markdown","settings":{"fontStyle":"italic","foreground":"#A0A1A7"}},{"scope":["punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown","punctuation.definition.metadata.markdown"],"settings":{"foreground":"#383A42"}},{"scope":"punctuation.definition.metadata.markdown","settings":{"foreground":"#A626A4"}},{"scope":["markup.underline.link.markdown","markup.underline.link.image.markdown"],"settings":{"foreground":"#A626A4"}},{"scope":["string.other.link.title.markdown","string.other.link.description.markdown"],"settings":{"foreground":"#4078F2"}},{"scope":"punctuation.separator.variable.ruby","settings":{"foreground":"#E45649"}},{"scope":"variable.other.constant.ruby","settings":{"foreground":"#986801"}},{"scope":"keyword.operator.other.ruby","settings":{"foreground":"#50A14F"}},{"scope":"punctuation.definition.variable.php","settings":{"foreground":"#E45649"}},{"scope":"meta.class.php","settings":{"foreground":"#383A42"}}],"type":"light"}'))});var c3={};x(c3,{default:()=>xce});var xce,l3=_(()=>{xce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#1085FF","activityBar.background":"#21252B","activityBar.border":"#0D1117","activityBar.foreground":"#C6CCD7","activityBar.inactiveForeground":"#5F6672","activityBarBadge.background":"#E06C75","activityBarBadge.foreground":"#ffffff","breadcrumb.focusForeground":"#C6CCD7","breadcrumb.foreground":"#5F6672","button.background":"#E06C75","button.foreground":"#ffffff","button.hoverBackground":"#E48189","button.secondaryBackground":"#0D1117","button.secondaryForeground":"#ffffff","checkbox.background":"#61AFEF","checkbox.foreground":"#ffffff","contrastBorder":"#0D1117","debugToolBar.background":"#181A1F","diffEditor.border":"#0D1117","diffEditor.diagonalFill":"#0D1117","diffEditor.insertedLineBackground":"#CBF6AC0D","diffEditor.insertedTextBackground":"#CBF6AC1A","diffEditor.removedLineBackground":"#FF9FA80D","diffEditor.removedTextBackground":"#FF9FA81A","dropdown.background":"#181A1F","dropdown.border":"#0D1117","editor.background":"#21252B","editor.findMatchBackground":"#00000000","editor.findMatchBorder":"#1085FF","editor.findMatchHighlightBackground":"#00000000","editor.findMatchHighlightBorder":"#C6CCD7","editor.foreground":"#A9B2C3","editor.lineHighlightBackground":"#A9B2C31A","editor.lineHighlightBorder":"#00000000","editor.linkedEditingBackground":"#0D1117","editor.rangeHighlightBorder":"#C6CCD7","editor.selectionBackground":"#A9B2C333","editor.selectionHighlightBackground":"#A9B2C31A","editor.selectionHighlightBorder":"#C6CCD7","editor.wordHighlightBackground":"#00000000","editor.wordHighlightBorder":"#1085FF","editor.wordHighlightStrongBackground":"#00000000","editor.wordHighlightStrongBorder":"#1085FF","editorBracketHighlight.foreground1":"#A9B2C3","editorBracketHighlight.foreground2":"#61AFEF","editorBracketHighlight.foreground3":"#E5C07B","editorBracketHighlight.foreground4":"#E06C75","editorBracketHighlight.foreground5":"#98C379","editorBracketHighlight.foreground6":"#B57EDC","editorBracketHighlight.unexpectedBracket.foreground":"#D74E42","editorBracketMatch.background":"#00000000","editorBracketMatch.border":"#1085FF","editorCursor.foreground":"#A9B2C3","editorError.foreground":"#D74E42","editorGroup.border":"#0D1117","editorGroup.emptyBackground":"#181A1F","editorGroupHeader.tabsBackground":"#181A1F","editorGutter.addedBackground":"#98C379","editorGutter.deletedBackground":"#E06C75","editorGutter.modifiedBackground":"#D19A66","editorHoverWidget.background":"#181A1F","editorHoverWidget.border":"#1085FF","editorIndentGuide.activeBackground":"#A9B2C333","editorIndentGuide.background":"#0D1117","editorInfo.foreground":"#1085FF","editorInlayHint.background":"#00000000","editorInlayHint.foreground":"#5F6672","editorLightBulb.foreground":"#E9D16C","editorLightBulbAutoFix.foreground":"#1085FF","editorLineNumber.activeForeground":"#C6CCD7","editorLineNumber.foreground":"#5F6672","editorOverviewRuler.addedForeground":"#98C379","editorOverviewRuler.border":"#0D1117","editorOverviewRuler.deletedForeground":"#E06C75","editorOverviewRuler.errorForeground":"#D74E42","editorOverviewRuler.findMatchForeground":"#1085FF","editorOverviewRuler.infoForeground":"#1085FF","editorOverviewRuler.modifiedForeground":"#D19A66","editorOverviewRuler.warningForeground":"#E9D16C","editorRuler.foreground":"#0D1117","editorStickyScroll.background":"#181A1F","editorStickyScrollHover.background":"#21252B","editorSuggestWidget.background":"#181A1F","editorSuggestWidget.border":"#1085FF","editorSuggestWidget.selectedBackground":"#A9B2C31A","editorWarning.foreground":"#E9D16C","editorWhitespace.foreground":"#A9B2C31A","editorWidget.background":"#181A1F","errorForeground":"#D74E42","focusBorder":"#1085FF","gitDecoration.deletedResourceForeground":"#E06C75","gitDecoration.ignoredResourceForeground":"#5F6672","gitDecoration.modifiedResourceForeground":"#D19A66","gitDecoration.untrackedResourceForeground":"#98C379","input.background":"#0D1117","inputOption.activeBorder":"#1085FF","inputValidation.errorBackground":"#D74E42","inputValidation.errorBorder":"#D74E42","inputValidation.infoBackground":"#1085FF","inputValidation.infoBorder":"#1085FF","inputValidation.infoForeground":"#0D1117","inputValidation.warningBackground":"#E9D16C","inputValidation.warningBorder":"#E9D16C","inputValidation.warningForeground":"#0D1117","list.activeSelectionBackground":"#A9B2C333","list.activeSelectionForeground":"#ffffff","list.errorForeground":"#D74E42","list.focusBackground":"#A9B2C333","list.hoverBackground":"#A9B2C31A","list.inactiveFocusOutline":"#5F6672","list.inactiveSelectionBackground":"#A9B2C333","list.inactiveSelectionForeground":"#C6CCD7","list.warningForeground":"#E9D16C","minimap.findMatchHighlight":"#1085FF","minimap.selectionHighlight":"#C6CCD7","minimapGutter.addedBackground":"#98C379","minimapGutter.deletedBackground":"#E06C75","minimapGutter.modifiedBackground":"#D19A66","notificationCenter.border":"#0D1117","notificationCenterHeader.background":"#181A1F","notificationToast.border":"#0D1117","notifications.background":"#181A1F","notifications.border":"#0D1117","panel.background":"#181A1F","panel.border":"#0D1117","panelTitle.inactiveForeground":"#5F6672","peekView.border":"#1085FF","peekViewEditor.background":"#181A1F","peekViewEditor.matchHighlightBackground":"#A9B2C333","peekViewResult.background":"#181A1F","peekViewResult.matchHighlightBackground":"#A9B2C333","peekViewResult.selectionBackground":"#A9B2C31A","peekViewResult.selectionForeground":"#C6CCD7","peekViewTitle.background":"#181A1F","sash.hoverBorder":"#A9B2C333","scrollbar.shadow":"#00000000","scrollbarSlider.activeBackground":"#A9B2C333","scrollbarSlider.background":"#A9B2C31A","scrollbarSlider.hoverBackground":"#A9B2C333","sideBar.background":"#181A1F","sideBar.border":"#0D1117","sideBar.foreground":"#C6CCD7","sideBarSectionHeader.background":"#21252B","statusBar.background":"#21252B","statusBar.border":"#0D1117","statusBar.debuggingBackground":"#21252B","statusBar.debuggingBorder":"#56B6C2","statusBar.debuggingForeground":"#A9B2C3","statusBar.focusBorder":"#A9B2C3","statusBar.foreground":"#A9B2C3","statusBar.noFolderBackground":"#181A1F","statusBarItem.activeBackground":"#0D1117","statusBarItem.errorBackground":"#21252B","statusBarItem.errorForeground":"#D74E42","statusBarItem.focusBorder":"#A9B2C3","statusBarItem.hoverBackground":"#181A1F","statusBarItem.hoverForeground":"#A9B2C3","statusBarItem.remoteBackground":"#21252B","statusBarItem.remoteForeground":"#B57EDC","statusBarItem.warningBackground":"#21252B","statusBarItem.warningForeground":"#E9D16C","tab.activeBackground":"#21252B","tab.activeBorderTop":"#1085FF","tab.activeForeground":"#C6CCD7","tab.border":"#0D1117","tab.inactiveBackground":"#181A1F","tab.inactiveForeground":"#5F6672","tab.lastPinnedBorder":"#A9B2C333","terminal.ansiBlack":"#5F6672","terminal.ansiBlue":"#61AFEF","terminal.ansiBrightBlack":"#5F6672","terminal.ansiBrightBlue":"#61AFEF","terminal.ansiBrightCyan":"#56B6C2","terminal.ansiBrightGreen":"#98C379","terminal.ansiBrightMagenta":"#B57EDC","terminal.ansiBrightRed":"#E06C75","terminal.ansiBrightWhite":"#A9B2C3","terminal.ansiBrightYellow":"#E5C07B","terminal.ansiCyan":"#56B6C2","terminal.ansiGreen":"#98C379","terminal.ansiMagenta":"#B57EDC","terminal.ansiRed":"#E06C75","terminal.ansiWhite":"#A9B2C3","terminal.ansiYellow":"#E5C07B","terminal.foreground":"#A9B2C3","titleBar.activeBackground":"#21252B","titleBar.activeForeground":"#C6CCD7","titleBar.border":"#0D1117","titleBar.inactiveBackground":"#21252B","titleBar.inactiveForeground":"#5F6672","toolbar.hoverBackground":"#A9B2C333","widget.shadow":"#00000000"},"displayName":"Plastic","name":"plastic","semanticHighlighting":true,"semanticTokenColors":{},"tokenColors":[{"scope":["comment","punctuation.definition.comment","source.diff"],"settings":{"foreground":"#5F6672"}},{"scope":["entity.name.function","support.function","meta.diff.range","punctuation.definition.range.diff"],"settings":{"foreground":"#B57EDC"}},{"scope":["keyword","punctuation.definition.keyword","variable.language","markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted","punctuation.definition.from-file.diff"],"settings":{"foreground":"#E06C75"}},{"scope":["constant","support.constant"],"settings":{"foreground":"#56B6C2"}},{"scope":["storage","support.class","entity.name.namespace","meta.diff.header"],"settings":{"foreground":"#61AFEF"}},{"scope":["markup.inline.raw.string","string","markup.inserted","punctuation.definition.inserted","meta.diff.header.to-file","punctuation.definition.to-file.diff"],"settings":{"foreground":"#98C379"}},{"scope":["entity.name.section","entity.name.tag","entity.name.type","support.type"],"settings":{"foreground":"#E5C07B"}},{"scope":["support.type.property-name","support.variable","variable"],"settings":{"foreground":"#C6CCD7"}},{"scope":["entity.other","punctuation.definition.entity","support.other"],"settings":{"foreground":"#D19A66"}},{"scope":["meta.brace","punctuation"],"settings":{"foreground":"#A9B2C3"}},{"scope":["markup.bold","punctuation.definition.bold","entity.other.attribute-name.id"],"settings":{"fontStyle":"bold"}},{"scope":["comment","markup.italic","punctuation.definition.italic"],"settings":{"fontStyle":"italic"}}],"type":"dark"}'))});var A3={};x(A3,{default:()=>vce});var vce,d3=_(()=>{vce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#a6accd","activityBar.background":"#1b1e28","activityBar.dropBorder":"#a6accd","activityBar.foreground":"#a6accd","activityBar.inactiveForeground":"#a6accd66","activityBarBadge.background":"#303340","activityBarBadge.foreground":"#e4f0fb","badge.background":"#303340","badge.foreground":"#e4f0fb","breadcrumb.activeSelectionForeground":"#e4f0fb","breadcrumb.background":"#00000000","breadcrumb.focusForeground":"#e4f0fb","breadcrumb.foreground":"#767c9dcc","breadcrumbPicker.background":"#1b1e28","button.background":"#303340","button.foreground":"#ffffff","button.hoverBackground":"#50647750","button.secondaryBackground":"#a6accd","button.secondaryForeground":"#ffffff","button.secondaryHoverBackground":"#a6accd","charts.blue":"#ADD7FF","charts.foreground":"#a6accd","charts.green":"#5DE4c7","charts.lines":"#a6accd80","charts.orange":"#89ddff","charts.purple":"#f087bd","charts.red":"#d0679d","charts.yellow":"#fffac2","checkbox.background":"#1b1e28","checkbox.border":"#ffffff10","checkbox.foreground":"#e4f0fb","debugConsole.errorForeground":"#d0679d","debugConsole.infoForeground":"#ADD7FF","debugConsole.sourceForeground":"#a6accd","debugConsole.warningForeground":"#fffac2","debugConsoleInputIcon.foreground":"#a6accd","debugExceptionWidget.background":"#d0679d","debugExceptionWidget.border":"#d0679d","debugIcon.breakpointCurrentStackframeForeground":"#fffac2","debugIcon.breakpointDisabledForeground":"#7390AA","debugIcon.breakpointForeground":"#d0679d","debugIcon.breakpointStackframeForeground":"#5fb3a1","debugIcon.breakpointUnverifiedForeground":"#7390AA","debugIcon.continueForeground":"#ADD7FF","debugIcon.disconnectForeground":"#d0679d","debugIcon.pauseForeground":"#ADD7FF","debugIcon.restartForeground":"#5fb3a1","debugIcon.startForeground":"#5fb3a1","debugIcon.stepBackForeground":"#ADD7FF","debugIcon.stepIntoForeground":"#ADD7FF","debugIcon.stepOutForeground":"#ADD7FF","debugIcon.stepOverForeground":"#ADD7FF","debugIcon.stopForeground":"#d0679d","debugTokenExpression.boolean":"#89ddff","debugTokenExpression.error":"#d0679d","debugTokenExpression.name":"#e4f0fb","debugTokenExpression.number":"#5fb3a1","debugTokenExpression.string":"#89ddff","debugTokenExpression.value":"#a6accd99","debugToolBar.background":"#303340","debugView.exceptionLabelBackground":"#d0679d","debugView.exceptionLabelForeground":"#e4f0fb","debugView.stateLabelBackground":"#303340","debugView.stateLabelForeground":"#a6accd","debugView.valueChangedHighlight":"#89ddff","descriptionForeground":"#a6accdb3","diffEditor.diagonalFill":"#a6accd33","diffEditor.insertedTextBackground":"#50647715","diffEditor.removedTextBackground":"#d0679d20","dropdown.background":"#1b1e28","dropdown.border":"#ffffff10","dropdown.foreground":"#e4f0fb","editor.background":"#1b1e28","editor.findMatchBackground":"#ADD7FF40","editor.findMatchBorder":"#ADD7FF","editor.findMatchHighlightBackground":"#ADD7FF40","editor.findRangeHighlightBackground":"#ADD7FF40","editor.focusedStackFrameHighlightBackground":"#7abd7a4d","editor.foldBackground":"#717cb40b","editor.foreground":"#a6accd","editor.hoverHighlightBackground":"#264f7840","editor.inactiveSelectionBackground":"#717cb425","editor.lineHighlightBackground":"#717cb425","editor.lineHighlightBorder":"#00000000","editor.linkedEditingBackground":"#d0679d4d","editor.rangeHighlightBackground":"#ffffff0b","editor.selectionBackground":"#717cb425","editor.selectionHighlightBackground":"#00000000","editor.selectionHighlightBorder":"#ADD7FF80","editor.snippetFinalTabstopHighlightBorder":"#525252","editor.snippetTabstopHighlightBackground":"#7c7c7c4d","editor.stackFrameHighlightBackground":"#ffff0033","editor.symbolHighlightBackground":"#89ddff60","editor.wordHighlightBackground":"#ADD7FF20","editor.wordHighlightStrongBackground":"#ADD7FF40","editorBracketMatch.background":"#00000000","editorBracketMatch.border":"#e4f0fb40","editorCodeLens.foreground":"#a6accd","editorCursor.foreground":"#a6accd","editorError.foreground":"#d0679d","editorGroup.border":"#00000030","editorGroup.dropBackground":"#7390AA80","editorGroupHeader.noTabsBackground":"#1b1e28","editorGroupHeader.tabsBackground":"#1b1e28","editorGutter.addedBackground":"#5fb3a140","editorGutter.background":"#1b1e28","editorGutter.commentRangeForeground":"#a6accd","editorGutter.deletedBackground":"#d0679d40","editorGutter.foldingControlForeground":"#a6accd","editorGutter.modifiedBackground":"#ADD7FF20","editorHint.foreground":"#7390AAb3","editorHoverWidget.background":"#1b1e28","editorHoverWidget.border":"#ffffff10","editorHoverWidget.foreground":"#a6accd","editorHoverWidget.statusBarBackground":"#202430","editorIndentGuide.activeBackground":"#e3e4e229","editorIndentGuide.background":"#303340","editorInfo.foreground":"#ADD7FF","editorInlineHint.background":"#a6accd","editorInlineHint.foreground":"#1b1e28","editorLightBulb.foreground":"#fffac2","editorLightBulbAutoFix.foreground":"#ADD7FF","editorLineNumber.activeForeground":"#a6accd","editorLineNumber.foreground":"#767c9d50","editorLink.activeForeground":"#ADD7FF","editorMarkerNavigation.background":"#2d2d30","editorMarkerNavigationError.background":"#d0679d","editorMarkerNavigationInfo.background":"#ADD7FF","editorMarkerNavigationWarning.background":"#fffac2","editorOverviewRuler.addedForeground":"#5fb3a199","editorOverviewRuler.border":"#00000000","editorOverviewRuler.bracketMatchForeground":"#a0a0a0","editorOverviewRuler.commonContentForeground":"#a6accd66","editorOverviewRuler.currentContentForeground":"#5fb3a180","editorOverviewRuler.deletedForeground":"#d0679d99","editorOverviewRuler.errorForeground":"#d0679db3","editorOverviewRuler.findMatchForeground":"#e4f0fb20","editorOverviewRuler.incomingContentForeground":"#89ddff80","editorOverviewRuler.infoForeground":"#ADD7FF","editorOverviewRuler.modifiedForeground":"#89ddff99","editorOverviewRuler.rangeHighlightForeground":"#89ddff99","editorOverviewRuler.selectionHighlightForeground":"#a0a0a0cc","editorOverviewRuler.warningForeground":"#fffac2","editorOverviewRuler.wordHighlightForeground":"#a0a0a0cc","editorOverviewRuler.wordHighlightStrongForeground":"#89ddffcc","editorPane.background":"#1b1e28","editorRuler.foreground":"#e4f0fb10","editorSuggestWidget.background":"#1b1e28","editorSuggestWidget.border":"#ffffff10","editorSuggestWidget.foreground":"#a6accd","editorSuggestWidget.highlightForeground":"#5DE4c7","editorSuggestWidget.selectedBackground":"#00000050","editorUnnecessaryCode.opacity":"#000000aa","editorWarning.foreground":"#fffac2","editorWhitespace.foreground":"#303340","editorWidget.background":"#1b1e28","editorWidget.border":"#a6accd","editorWidget.foreground":"#a6accd","errorForeground":"#d0679d","extensionBadge.remoteBackground":"#303340","extensionBadge.remoteForeground":"#e4f0fb","extensionButton.prominentBackground":"#30334090","extensionButton.prominentForeground":"#ffffff","extensionButton.prominentHoverBackground":"#303340","extensionIcon.starForeground":"#fffac2","focusBorder":"#00000000","foreground":"#a6accd","gitDecoration.addedResourceForeground":"#5fb3a1","gitDecoration.conflictingResourceForeground":"#d0679d","gitDecoration.deletedResourceForeground":"#d0679d","gitDecoration.ignoredResourceForeground":"#767c9d70","gitDecoration.modifiedResourceForeground":"#ADD7FF","gitDecoration.renamedResourceForeground":"#5DE4c7","gitDecoration.stageDeletedResourceForeground":"#d0679d","gitDecoration.stageModifiedResourceForeground":"#ADD7FF","gitDecoration.submoduleResourceForeground":"#89ddff","gitDecoration.untrackedResourceForeground":"#5DE4c7","icon.foreground":"#a6accd","imagePreview.border":"#303340","input.background":"#ffffff05","input.border":"#ffffff10","input.foreground":"#e4f0fb","input.placeholderForeground":"#a6accd60","inputOption.activeBackground":"#00000000","inputOption.activeBorder":"#00000000","inputOption.activeForeground":"#ffffff","inputValidation.errorBackground":"#1b1e28","inputValidation.errorBorder":"#d0679d","inputValidation.errorForeground":"#d0679d","inputValidation.infoBackground":"#506477","inputValidation.infoBorder":"#89ddff","inputValidation.warningBackground":"#506477","inputValidation.warningBorder":"#fffac2","list.activeSelectionBackground":"#30334080","list.activeSelectionForeground":"#e4f0fb","list.deemphasizedForeground":"#767c9d","list.dropBackground":"#506477","list.errorForeground":"#d0679d","list.filterMatchBackground":"#89ddff60","list.focusBackground":"#30334080","list.focusForeground":"#a6accd","list.focusOutline":"#00000000","list.highlightForeground":"#5fb3a1","list.hoverBackground":"#30334080","list.hoverForeground":"#e4f0fb","list.inactiveSelectionBackground":"#30334080","list.inactiveSelectionForeground":"#e4f0fb","list.invalidItemForeground":"#fffac2","list.warningForeground":"#fffac2","listFilterWidget.background":"#303340","listFilterWidget.noMatchesOutline":"#d0679d","listFilterWidget.outline":"#00000000","menu.background":"#1b1e28","menu.foreground":"#e4f0fb","menu.selectionBackground":"#303340","menu.selectionForeground":"#7390AA","menu.separatorBackground":"#767c9d","menubar.selectionBackground":"#717cb425","menubar.selectionForeground":"#a6accd","merge.commonContentBackground":"#a6accd29","merge.commonHeaderBackground":"#a6accd66","merge.currentContentBackground":"#5fb3a133","merge.currentHeaderBackground":"#5fb3a180","merge.incomingContentBackground":"#89ddff33","merge.incomingHeaderBackground":"#89ddff80","minimap.errorHighlight":"#d0679d","minimap.findMatchHighlight":"#ADD7FF","minimap.selectionHighlight":"#e4f0fb40","minimap.warningHighlight":"#fffac2","minimapGutter.addedBackground":"#5fb3a180","minimapGutter.deletedBackground":"#d0679d80","minimapGutter.modifiedBackground":"#ADD7FF80","minimapSlider.activeBackground":"#a6accd30","minimapSlider.background":"#a6accd20","minimapSlider.hoverBackground":"#a6accd30","notebook.cellBorderColor":"#1b1e28","notebook.cellInsertionIndicator":"#00000000","notebook.cellStatusBarItemHoverBackground":"#ffffff26","notebook.cellToolbarSeparator":"#303340","notebook.focusedCellBorder":"#00000000","notebook.focusedEditorBorder":"#00000000","notebook.focusedRowBorder":"#00000000","notebook.inactiveFocusedCellBorder":"#00000000","notebook.outputContainerBackgroundColor":"#1b1e28","notebook.rowHoverBackground":"#30334000","notebook.selectedCellBackground":"#303340","notebook.selectedCellBorder":"#1b1e28","notebook.symbolHighlightBackground":"#ffffff0b","notebookScrollbarSlider.activeBackground":"#a6accd25","notebookScrollbarSlider.background":"#00000050","notebookScrollbarSlider.hoverBackground":"#a6accd25","notebookStatusErrorIcon.foreground":"#d0679d","notebookStatusRunningIcon.foreground":"#a6accd","notebookStatusSuccessIcon.foreground":"#5fb3a1","notificationCenterHeader.background":"#303340","notificationLink.foreground":"#ADD7FF","notifications.background":"#1b1e28","notifications.border":"#303340","notifications.foreground":"#e4f0fb","notificationsErrorIcon.foreground":"#d0679d","notificationsInfoIcon.foreground":"#ADD7FF","notificationsWarningIcon.foreground":"#fffac2","panel.background":"#1b1e28","panel.border":"#00000030","panel.dropBorder":"#a6accd","panelSection.border":"#1b1e28","panelSection.dropBackground":"#7390AA80","panelSectionHeader.background":"#303340","panelTitle.activeBorder":"#a6accd","panelTitle.activeForeground":"#a6accd","panelTitle.inactiveForeground":"#a6accd99","peekView.border":"#00000030","peekViewEditor.background":"#a6accd05","peekViewEditor.matchHighlightBackground":"#303340","peekViewEditorGutter.background":"#a6accd05","peekViewResult.background":"#a6accd05","peekViewResult.fileForeground":"#ffffff","peekViewResult.lineForeground":"#a6accd","peekViewResult.matchHighlightBackground":"#303340","peekViewResult.selectionBackground":"#717cb425","peekViewResult.selectionForeground":"#ffffff","peekViewTitle.background":"#a6accd05","peekViewTitleDescription.foreground":"#a6accd60","peekViewTitleLabel.foreground":"#ffffff","pickerGroup.border":"#a6accd","pickerGroup.foreground":"#89ddff","problemsErrorIcon.foreground":"#d0679d","problemsInfoIcon.foreground":"#ADD7FF","problemsWarningIcon.foreground":"#fffac2","progressBar.background":"#89ddff","quickInput.background":"#1b1e28","quickInput.foreground":"#a6accd","quickInputList.focusBackground":"#a6accd10","quickInputTitle.background":"#ffffff1b","sash.hoverBorder":"#00000000","scm.providerBorder":"#e4f0fb10","scrollbar.shadow":"#00000000","scrollbarSlider.activeBackground":"#a6accd25","scrollbarSlider.background":"#00000080","scrollbarSlider.hoverBackground":"#a6accd25","searchEditor.findMatchBackground":"#ADD7FF50","searchEditor.textInputBorder":"#ffffff10","selection.background":"#a6accd","settings.checkboxBackground":"#1b1e28","settings.checkboxBorder":"#ffffff10","settings.checkboxForeground":"#e4f0fb","settings.dropdownBackground":"#1b1e28","settings.dropdownBorder":"#ffffff10","settings.dropdownForeground":"#e4f0fb","settings.dropdownListBorder":"#e4f0fb10","settings.focusedRowBackground":"#00000000","settings.headerForeground":"#e4f0fb","settings.modifiedItemIndicator":"#ADD7FF","settings.numberInputBackground":"#ffffff05","settings.numberInputBorder":"#ffffff10","settings.numberInputForeground":"#e4f0fb","settings.textInputBackground":"#ffffff05","settings.textInputBorder":"#ffffff10","settings.textInputForeground":"#e4f0fb","sideBar.background":"#1b1e28","sideBar.dropBackground":"#7390AA80","sideBar.foreground":"#767c9d","sideBarSectionHeader.background":"#1b1e28","sideBarSectionHeader.foreground":"#a6accd","sideBarTitle.foreground":"#a6accd","statusBar.background":"#1b1e28","statusBar.debuggingBackground":"#303340","statusBar.debuggingForeground":"#ffffff","statusBar.foreground":"#a6accd","statusBar.noFolderBackground":"#1b1e28","statusBar.noFolderForeground":"#a6accd","statusBarItem.activeBackground":"#ffffff2e","statusBarItem.errorBackground":"#d0679d","statusBarItem.errorForeground":"#ffffff","statusBarItem.hoverBackground":"#ffffff1f","statusBarItem.prominentBackground":"#00000080","statusBarItem.prominentForeground":"#a6accd","statusBarItem.prominentHoverBackground":"#0000004d","statusBarItem.remoteBackground":"#303340","statusBarItem.remoteForeground":"#e4f0fb","symbolIcon.arrayForeground":"#a6accd","symbolIcon.booleanForeground":"#a6accd","symbolIcon.classForeground":"#fffac2","symbolIcon.colorForeground":"#a6accd","symbolIcon.constantForeground":"#a6accd","symbolIcon.constructorForeground":"#f087bd","symbolIcon.enumeratorForeground":"#fffac2","symbolIcon.enumeratorMemberForeground":"#ADD7FF","symbolIcon.eventForeground":"#fffac2","symbolIcon.fieldForeground":"#ADD7FF","symbolIcon.fileForeground":"#a6accd","symbolIcon.folderForeground":"#a6accd","symbolIcon.functionForeground":"#f087bd","symbolIcon.interfaceForeground":"#ADD7FF","symbolIcon.keyForeground":"#a6accd","symbolIcon.keywordForeground":"#a6accd","symbolIcon.methodForeground":"#f087bd","symbolIcon.moduleForeground":"#a6accd","symbolIcon.namespaceForeground":"#a6accd","symbolIcon.nullForeground":"#a6accd","symbolIcon.numberForeground":"#a6accd","symbolIcon.objectForeground":"#a6accd","symbolIcon.operatorForeground":"#a6accd","symbolIcon.packageForeground":"#a6accd","symbolIcon.propertyForeground":"#a6accd","symbolIcon.referenceForeground":"#a6accd","symbolIcon.snippetForeground":"#a6accd","symbolIcon.stringForeground":"#a6accd","symbolIcon.structForeground":"#a6accd","symbolIcon.textForeground":"#a6accd","symbolIcon.typeParameterForeground":"#a6accd","symbolIcon.unitForeground":"#a6accd","symbolIcon.variableForeground":"#ADD7FF","tab.activeBackground":"#30334080","tab.activeForeground":"#e4f0fb","tab.activeModifiedBorder":"#ADD7FF","tab.border":"#00000000","tab.inactiveBackground":"#1b1e28","tab.inactiveForeground":"#767c9d","tab.inactiveModifiedBorder":"#ADD7FF80","tab.lastPinnedBorder":"#00000000","tab.unfocusedActiveBackground":"#1b1e28","tab.unfocusedActiveForeground":"#a6accd","tab.unfocusedActiveModifiedBorder":"#ADD7FF40","tab.unfocusedInactiveBackground":"#1b1e28","tab.unfocusedInactiveForeground":"#a6accd80","tab.unfocusedInactiveModifiedBorder":"#ADD7FF40","terminal.ansiBlack":"#1b1e28","terminal.ansiBlue":"#89ddff","terminal.ansiBrightBlack":"#a6accd","terminal.ansiBrightBlue":"#ADD7FF","terminal.ansiBrightCyan":"#ADD7FF","terminal.ansiBrightGreen":"#5DE4c7","terminal.ansiBrightMagenta":"#f087bd","terminal.ansiBrightRed":"#d0679d","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#fffac2","terminal.ansiCyan":"#89ddff","terminal.ansiGreen":"#5DE4c7","terminal.ansiMagenta":"#f087bd","terminal.ansiRed":"#d0679d","terminal.ansiWhite":"#ffffff","terminal.ansiYellow":"#fffac2","terminal.border":"#00000000","terminal.foreground":"#a6accd","terminal.selectionBackground":"#717cb425","terminalCommandDecoration.defaultBackground":"#767c9d","terminalCommandDecoration.errorBackground":"#d0679d","terminalCommandDecoration.successBackground":"#5DE4c7","testing.iconErrored":"#d0679d","testing.iconFailed":"#d0679d","testing.iconPassed":"#5DE4c7","testing.iconQueued":"#fffac2","testing.iconSkipped":"#7390AA","testing.iconUnset":"#7390AA","testing.message.error.decorationForeground":"#d0679d","testing.message.error.lineBackground":"#d0679d33","testing.message.hint.decorationForeground":"#7390AAb3","testing.message.info.decorationForeground":"#ADD7FF","testing.message.info.lineBackground":"#89ddff33","testing.message.warning.decorationForeground":"#fffac2","testing.message.warning.lineBackground":"#fffac233","testing.peekBorder":"#d0679d","testing.runAction":"#5DE4c7","textBlockQuote.background":"#7390AA1a","textBlockQuote.border":"#89ddff80","textCodeBlock.background":"#00000050","textLink.activeForeground":"#ADD7FF","textLink.foreground":"#ADD7FF","textPreformat.foreground":"#e4f0fb","textSeparator.foreground":"#ffffff2e","titleBar.activeBackground":"#1b1e28","titleBar.activeForeground":"#a6accd","titleBar.inactiveBackground":"#1b1e28","titleBar.inactiveForeground":"#767c9d","tree.indentGuidesStroke":"#303340","tree.tableColumnsBorder":"#a6accd20","welcomePage.progress.background":"#ffffff05","welcomePage.progress.foreground":"#5fb3a1","welcomePage.tileBackground":"#1b1e28","welcomePage.tileHoverBackground":"#303340","widget.shadow":"#00000030"},"displayName":"Poimandres","name":"poimandres","tokenColors":[{"scope":["comment","punctuation.definition.comment"],"settings":{"fontStyle":"italic","foreground":"#767c9dB0"}},{"scope":"meta.parameters comment.block","settings":{"fontStyle":"italic","foreground":"#a6accd"}},{"scope":["variable.other.constant.object","variable.other.readwrite.alias","meta.import variable.other.readwrite"],"settings":{"foreground":"#ADD7FF"}},{"scope":["variable.other","support.type.object"],"settings":{"foreground":"#e4f0fb"}},{"scope":["variable.other.object.property","variable.other.property","support.variable.property"],"settings":{"foreground":"#e4f0fb"}},{"scope":["entity.name.function.method","string.unquoted","meta.object.member"],"settings":{"foreground":"#ADD7FF"}},{"scope":["variable - meta.import","constant.other.placeholder","meta.object-literal.key-meta.object.member"],"settings":{"foreground":"#e4f0fb"}},{"scope":["keyword.control.flow"],"settings":{"foreground":"#5DE4c7c0"}},{"scope":["keyword.operator.new","keyword.control.new"],"settings":{"foreground":"#5DE4c7"}},{"scope":["variable.language.this","storage.modifier.async","storage.modifier","variable.language.super"],"settings":{"foreground":"#5DE4c7"}},{"scope":["support.class.error","keyword.control.trycatch","keyword.operator.expression.delete","keyword.operator.expression.void","keyword.operator.void","keyword.operator.delete","constant.language.null","constant.language.boolean.false","constant.language.undefined"],"settings":{"foreground":"#d0679d"}},{"scope":["variable.parameter","variable.other.readwrite.js","meta.definition.variable variable.other.constant","meta.definition.variable variable.other.readwrite"],"settings":{"foreground":"#e4f0fb"}},{"scope":["constant.other.color"],"settings":{"foreground":"#ffffff"}},{"scope":["invalid","invalid.illegal"],"settings":{"foreground":"#d0679d"}},{"scope":["invalid.deprecated"],"settings":{"foreground":"#d0679d"}},{"scope":["keyword.control","keyword"],"settings":{"foreground":"#a6accd"}},{"scope":["keyword.operator","storage.type"],"settings":{"foreground":"#91B4D5"}},{"scope":["keyword.control.module","keyword.control.import","keyword.control.export","keyword.control.default","meta.import","meta.export"],"settings":{"foreground":"#5DE4c7"}},{"scope":["Keyword","Storage"],"settings":{"fontStyle":"italic"}},{"scope":["keyword-meta.export"],"settings":{"foreground":"#ADD7FF"}},{"scope":["meta.brace","punctuation","keyword.operator.existential"],"settings":{"foreground":"#a6accd"}},{"scope":["constant.other.color","meta.tag","punctuation.definition.tag","punctuation.separator.inheritance.php","punctuation.definition.tag.html","punctuation.definition.tag.begin.html","punctuation.definition.tag.end.html","punctuation.section.embedded","keyword.other.template","keyword.other.substitution","meta.objectliteral"],"settings":{"foreground":"#e4f0fb"}},{"scope":["support.class.component"],"settings":{"foreground":"#5DE4c7"}},{"scope":["entity.name.tag","entity.name.tag","meta.tag.sgml","markup.deleted.git_gutter"],"settings":{"foreground":"#5DE4c7"}},{"scope":"variable.function, source meta.function-call entity.name.function, source meta.function-call entity.name.function, source meta.method-call entity.name.function, meta.class meta.group.braces.curly meta.function-call variable.function, meta.class meta.field.declaration meta.function-call entity.name.function, variable.function.constructor, meta.block meta.var.expr meta.function-call entity.name.function, support.function.console, meta.function-call support.function, meta.property.class variable.other.class, punctuation.definition.entity.css","settings":{"foreground":"#e4f0fbd0"}},{"scope":"entity.name.function, meta.class entity.name.class, meta.class entity.name.type.class, meta.class meta.function-call variable.function, keyword.other.important","settings":{"foreground":"#ADD7FF"}},{"scope":["source.cpp meta.block variable.other"],"settings":{"foreground":"#ADD7FF"}},{"scope":["support.other.variable","string.other.link"],"settings":{"foreground":"#5DE4c7"}},{"scope":["constant.numeric","support.constant","constant.character","constant.escape","keyword.other.unit","keyword.other","string","constant.language","constant.other.symbol","constant.other.key","markup.heading","markup.inserted.git_gutter","meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js","text.html.derivative"],"settings":{"foreground":"#5DE4c7"}},{"scope":["entity.other.inherited-class"],"settings":{"foreground":"#ADD7FF"}},{"scope":["meta.type.declaration"],"settings":{"foreground":"#ADD7FF"}},{"scope":["entity.name.type.alias"],"settings":{"foreground":"#a6accd"}},{"scope":["keyword.control.as","entity.name.type","support.type"],"settings":{"foreground":"#a6accdC0"}},{"scope":["entity.name","support.orther.namespace.use.php","meta.use.php","support.other.namespace.php","markup.changed.git_gutter","support.type.sys-types"],"settings":{"foreground":"#91B4D5"}},{"scope":["support.class","support.constant","variable.other.constant.object"],"settings":{"foreground":"#ADD7FF"}},{"scope":["source.css support.type.property-name","source.sass support.type.property-name","source.scss support.type.property-name","source.less support.type.property-name","source.stylus support.type.property-name","source.postcss support.type.property-name"],"settings":{"foreground":"#ADD7FF"}},{"scope":["entity.name.module.js","variable.import.parameter.js","variable.other.class.js"],"settings":{"foreground":"#e4f0fb"}},{"scope":["variable.language"],"settings":{"fontStyle":"italic","foreground":"#ADD7FF"}},{"scope":["entity.name.method.js"],"settings":{"fontStyle":"italic","foreground":"#91B4D5"}},{"scope":["meta.class-method.js entity.name.function.js","variable.function.constructor"],"settings":{"foreground":"#91B4D5"}},{"scope":["entity.other.attribute-name"],"settings":{"fontStyle":"italic","foreground":"#91B4D5"}},{"scope":["text.html.basic entity.other.attribute-name.html","text.html.basic entity.other.attribute-name"],"settings":{"fontStyle":"italic","foreground":"#5fb3a1"}},{"scope":["entity.other.attribute-name.class"],"settings":{"foreground":"#5fb3a1"}},{"scope":["source.sass keyword.control"],"settings":{"foreground":"#42675A"}},{"scope":["markup.inserted"],"settings":{"foreground":"#ADD7FF"}},{"scope":["markup.deleted"],"settings":{"foreground":"#506477"}},{"scope":["markup.changed"],"settings":{"foreground":"#91B4D5"}},{"scope":["string.regexp"],"settings":{"foreground":"#5fb3a1"}},{"scope":["constant.character.escape"],"settings":{"foreground":"#5fb3a1"}},{"scope":["*url*","*link*","*uri*"],"settings":{"fontStyle":"underline","foreground":"#ADD7FF"}},{"scope":["tag.decorator.js entity.name.tag.js","tag.decorator.js punctuation.definition.tag.js"],"settings":{"fontStyle":"italic","foreground":"#42675A"}},{"scope":["source.js constant.other.object.key.js string.unquoted.label.js"],"settings":{"fontStyle":"italic","foreground":"#5fb3a1"}},{"scope":["source.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#e4f0fb"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#ADD7FF"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#91B4D5"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#7390AA"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#e4f0fb"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#ADD7FF"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#91B4D5"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#7390AA"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#e4f0fb"}},{"scope":["text.html.markdown","punctuation.definition.list_item.markdown"],"settings":{"foreground":"#e4f0fb"}},{"scope":["text.html.markdown markup.inline.raw.markdown"],"settings":{"foreground":"#ADD7FF"}},{"scope":["text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown"],"settings":{"foreground":"#91B4D5"}},{"scope":["markdown.heading","markup.heading | markup.heading entity.name","markup.heading.markdown punctuation.definition.heading.markdown"],"settings":{"foreground":"#e4f0fb"}},{"scope":["markup.italic"],"settings":{"fontStyle":"italic","foreground":"#7390AA"}},{"scope":["markup.bold","markup.bold string"],"settings":{"fontStyle":"bold","foreground":"#7390AA"}},{"scope":["markup.bold markup.italic","markup.italic markup.bold","markup.quote markup.bold","markup.bold markup.italic string","markup.italic markup.bold string","markup.quote markup.bold string"],"settings":{"fontStyle":"bold","foreground":"#7390AA"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline","foreground":"#7390AA"}},{"scope":["markup.strike"],"settings":{"fontStyle":"italic"}},{"scope":["markup.quote punctuation.definition.blockquote.markdown"],"settings":{"foreground":"#5DE4c7"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic"}},{"scope":["string.other.link.title.markdown"],"settings":{"foreground":"#ADD7FF"}},{"scope":["string.other.link.description.title.markdown"],"settings":{"foreground":"#ADD7FF"}},{"scope":["constant.other.reference.link.markdown"],"settings":{"foreground":"#ADD7FF"}},{"scope":["markup.raw.block"],"settings":{"foreground":"#ADD7FF"}},{"scope":["markup.raw.block.fenced.markdown"],"settings":{"foreground":"#50647750"}},{"scope":["punctuation.definition.fenced.markdown"],"settings":{"foreground":"#50647750"}},{"scope":["markup.raw.block.fenced.markdown","variable.language.fenced.markdown","punctuation.section.class.end"],"settings":{"foreground":"#91B4D5"}},{"scope":["variable.language.fenced.markdown"],"settings":{"foreground":"#91B4D5"}},{"scope":["meta.separator"],"settings":{"fontStyle":"bold","foreground":"#7390AA"}},{"scope":["markup.table"],"settings":{"foreground":"#ADD7FF"}},{"scope":"token.info-token","settings":{"foreground":"#89ddff"}},{"scope":"token.warn-token","settings":{"foreground":"#fffac2"}},{"scope":"token.error-token","settings":{"foreground":"#d0679d"}},{"scope":"token.debug-token","settings":{"foreground":"#e4f0fb"}},{"scope":["entity.name.section.markdown","markup.heading.setext.1.markdown","markup.heading.setext.2.markdown"],"settings":{"fontStyle":"bold","foreground":"#e4f0fb"}},{"scope":"meta.paragraph.markdown","settings":{"foreground":"#e4f0fbd0"}},{"scope":["punctuation.definition.from-file.diff","meta.diff.header.from-file"],"settings":{"foreground":"#506477"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#7390AA"}},{"scope":"meta.separator.markdown","settings":{"foreground":"#767c9d"}},{"scope":"markup.bold.markdown","settings":{"fontStyle":"bold"}},{"scope":"markup.italic.markdown","settings":{"fontStyle":"italic"}},{"scope":["beginning.punctuation.definition.list.markdown","punctuation.definition.list.begin.markdown","markup.list.unnumbered.markdown"],"settings":{"foreground":"#ADD7FF"}},{"scope":["string.other.link.description.title.markdown punctuation.definition.string.markdown","meta.link.inline.markdown string.other.link.description.title.markdown","string.other.link.description.title.markdown punctuation.definition.string.begin.markdown","string.other.link.description.title.markdown punctuation.definition.string.end.markdown","meta.image.inline.markdown string.other.link.description.title.markdown"],"settings":{"fontStyle":"","foreground":"#ADD7FF"}},{"scope":["meta.link.inline.markdown string.other.link.title.markdown","meta.link.reference.markdown string.other.link.title.markdown","meta.link.reference.def.markdown markup.underline.link.markdown"],"settings":{"fontStyle":"underline","foreground":"#ADD7FF"}},{"scope":["markup.underline.link.markdown","string.other.link.description.title.markdown"],"settings":{"foreground":"#5DE4c7"}},{"scope":["fenced_code.block.language","markup.inline.raw.markdown"],"settings":{"foreground":"#ADD7FF"}},{"scope":["punctuation.definition.markdown","punctuation.definition.raw.markdown","punctuation.definition.heading.markdown","punctuation.definition.bold.markdown","punctuation.definition.italic.markdown"],"settings":{"foreground":"#ADD7FF"}},{"scope":["source.ignore","log.error","log.exception"],"settings":{"foreground":"#d0679d"}},{"scope":["log.verbose"],"settings":{"foreground":"#a6accd"}}],"type":"dark"}'))});var u3={};x(u3,{default:()=>Ece});var Ece,p3=_(()=>{Ece=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#580000","badge.background":"#cc3333","button.background":"#833","debugToolBar.background":"#660000","dropdown.background":"#580000","editor.background":"#390000","editor.foreground":"#F8F8F8","editor.hoverHighlightBackground":"#ff000044","editor.lineHighlightBackground":"#ff000033","editor.selectionBackground":"#750000","editor.selectionHighlightBackground":"#f5500039","editorCursor.foreground":"#970000","editorGroup.border":"#ff666633","editorGroupHeader.tabsBackground":"#330000","editorHoverWidget.background":"#300000","editorLineNumber.activeForeground":"#ffbbbb88","editorLineNumber.foreground":"#ff777788","editorLink.activeForeground":"#FFD0AA","editorSuggestWidget.background":"#300000","editorSuggestWidget.border":"#220000","editorWhitespace.foreground":"#c10000","editorWidget.background":"#300000","errorForeground":"#ffeaea","extensionButton.prominentBackground":"#cc3333","extensionButton.prominentHoverBackground":"#cc333388","focusBorder":"#ff6666aa","input.background":"#580000","inputOption.activeBorder":"#cc0000","inputValidation.infoBackground":"#550000","inputValidation.infoBorder":"#DB7E58","list.activeSelectionBackground":"#880000","list.dropBackground":"#662222","list.highlightForeground":"#ff4444","list.hoverBackground":"#800000","list.inactiveSelectionBackground":"#770000","minimap.selectionHighlight":"#750000","peekView.border":"#ff000044","peekViewEditor.background":"#300000","peekViewResult.background":"#400000","peekViewTitle.background":"#550000","pickerGroup.border":"#ff000033","pickerGroup.foreground":"#cc9999","ports.iconRunningProcessForeground":"#DB7E58","progressBar.background":"#cc3333","quickInputList.focusBackground":"#660000","selection.background":"#ff777788","sideBar.background":"#330000","statusBar.background":"#700000","statusBar.noFolderBackground":"#700000","statusBarItem.remoteBackground":"#c33","tab.activeBackground":"#490000","tab.inactiveBackground":"#300a0a","tab.lastPinnedBorder":"#ff000044","titleBar.activeBackground":"#770000","titleBar.inactiveBackground":"#772222"},"displayName":"Red","name":"red","semanticHighlighting":true,"tokenColors":[{"settings":{"foreground":"#F8F8F8"}},{"scope":["meta.embedded","source.groovy.embedded","string meta.image.inline.markdown","variable.legacy.builtin.python"],"settings":{"foreground":"#F8F8F8"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#e7c0c0ff"}},{"scope":"constant","settings":{"fontStyle":"","foreground":"#994646ff"}},{"scope":"keyword","settings":{"fontStyle":"","foreground":"#f12727ff"}},{"scope":"entity","settings":{"fontStyle":"","foreground":"#fec758ff"}},{"scope":"storage","settings":{"fontStyle":"bold","foreground":"#ff6262ff"}},{"scope":"string","settings":{"fontStyle":"","foreground":"#cd8d8dff"}},{"scope":"support","settings":{"fontStyle":"","foreground":"#9df39fff"}},{"scope":"variable","settings":{"fontStyle":"italic","foreground":"#fb9a4bff"}},{"scope":"invalid","settings":{"foreground":"#ffffffff"}},{"scope":["entity.other.inherited-class","punctuation.separator.namespace.ruby"],"settings":{"fontStyle":"underline","foreground":"#aa5507ff"}},{"scope":"constant.character","settings":{"foreground":"#ec0d1e"}},{"scope":["string constant","constant.character.escape"],"settings":{"fontStyle":"","foreground":"#ffe862ff"}},{"scope":"string.regexp","settings":{"foreground":"#ffb454ff"}},{"scope":"string variable","settings":{"foreground":"#edef7dff"}},{"scope":"support.function","settings":{"fontStyle":"","foreground":"#ffb454ff"}},{"scope":["support.constant","support.variable"],"settings":{"fontStyle":"","foreground":"#eb939aff"}},{"scope":["declaration.sgml.html declaration.doctype","declaration.sgml.html declaration.doctype entity","declaration.sgml.html declaration.doctype string","declaration.xml-processing","declaration.xml-processing entity","declaration.xml-processing string"],"settings":{"fontStyle":"","foreground":"#73817dff"}},{"scope":["declaration.tag","declaration.tag entity","meta.tag","meta.tag entity"],"settings":{"fontStyle":"","foreground":"#ec0d1eff"}},{"scope":"meta.selector.css entity.name.tag","settings":{"fontStyle":"","foreground":"#aa5507ff"}},{"scope":"meta.selector.css entity.other.attribute-name.id","settings":{"foreground":"#fec758ff"}},{"scope":"meta.selector.css entity.other.attribute-name.class","settings":{"fontStyle":"","foreground":"#41a83eff"}},{"scope":"support.type.property-name.css","settings":{"fontStyle":"","foreground":"#96dd3bff"}},{"scope":["meta.property-group support.constant.property-value.css","meta.property-value support.constant.property-value.css"],"settings":{"fontStyle":"italic","foreground":"#ffe862ff"}},{"scope":["meta.property-value support.constant.named-color.css","meta.property-value constant"],"settings":{"fontStyle":"","foreground":"#ffe862ff"}},{"scope":"meta.preprocessor.at-rule keyword.control.at-rule","settings":{"foreground":"#fd6209ff"}},{"scope":"meta.constructor.argument.css","settings":{"fontStyle":"","foreground":"#ec9799ff"}},{"scope":["meta.diff","meta.diff.header"],"settings":{"fontStyle":"italic","foreground":"#f8f8f8ff"}},{"scope":"markup.deleted","settings":{"foreground":"#ec9799ff"}},{"scope":"markup.changed","settings":{"foreground":"#f8f8f8ff"}},{"scope":"markup.inserted","settings":{"foreground":"#41a83eff"}},{"scope":"markup.quote","settings":{"foreground":"#f12727ff"}},{"scope":"markup.list","settings":{"foreground":"#ff6262ff"}},{"scope":["markup.bold","markup.italic"],"settings":{"foreground":"#fb9a4bff"}},{"scope":"markup.bold","settings":{"fontStyle":"bold"}},{"scope":"markup.italic","settings":{"fontStyle":"italic"}},{"scope":"markup.strikethrough","settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"fontStyle":"","foreground":"#cd8d8dff"}},{"scope":["markup.heading","markup.heading.setext","punctuation.definition.heading","entity.name.section"],"settings":{"fontStyle":"bold","foreground":"#fec758ff"}},{"scope":["punctuation.definition.template-expression.begin","punctuation.definition.template-expression.end","punctuation.section.embedded",".format.placeholder"],"settings":{"foreground":"#ec0d1e"}}],"type":"dark"}'))});var m3={};x(m3,{default:()=>Qce});var Qce,g3=_(()=>{Qce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#e0def4","activityBar.background":"#191724","activityBar.dropBorder":"#26233a","activityBar.foreground":"#e0def4","activityBar.inactiveForeground":"#908caa","activityBarBadge.background":"#ebbcba","activityBarBadge.foreground":"#191724","badge.background":"#ebbcba","badge.foreground":"#191724","banner.background":"#1f1d2e","banner.foreground":"#e0def4","banner.iconForeground":"#908caa","breadcrumb.activeSelectionForeground":"#ebbcba","breadcrumb.background":"#191724","breadcrumb.focusForeground":"#908caa","breadcrumb.foreground":"#6e6a86","breadcrumbPicker.background":"#1f1d2e","button.background":"#ebbcba","button.foreground":"#191724","button.hoverBackground":"#ebbcbae6","button.secondaryBackground":"#1f1d2e","button.secondaryForeground":"#e0def4","button.secondaryHoverBackground":"#26233a","charts.blue":"#9ccfd8","charts.foreground":"#e0def4","charts.green":"#31748f","charts.lines":"#908caa","charts.orange":"#ebbcba","charts.purple":"#c4a7e7","charts.red":"#eb6f92","charts.yellow":"#f6c177","checkbox.background":"#1f1d2e","checkbox.border":"#6e6a8633","checkbox.foreground":"#e0def4","debugExceptionWidget.background":"#1f1d2e","debugExceptionWidget.border":"#6e6a8633","debugIcon.breakpointCurrentStackframeForeground":"#908caa","debugIcon.breakpointDisabledForeground":"#908caa","debugIcon.breakpointForeground":"#908caa","debugIcon.breakpointStackframeForeground":"#908caa","debugIcon.breakpointUnverifiedForeground":"#908caa","debugIcon.continueForeground":"#908caa","debugIcon.disconnectForeground":"#908caa","debugIcon.pauseForeground":"#908caa","debugIcon.restartForeground":"#908caa","debugIcon.startForeground":"#908caa","debugIcon.stepBackForeground":"#908caa","debugIcon.stepIntoForeground":"#908caa","debugIcon.stepOutForeground":"#908caa","debugIcon.stepOverForeground":"#908caa","debugIcon.stopForeground":"#eb6f92","debugToolBar.background":"#1f1d2e","debugToolBar.border":"#26233a","descriptionForeground":"#908caa","diffEditor.border":"#26233a","diffEditor.diagonalFill":"#6e6a8666","diffEditor.insertedLineBackground":"#9ccfd826","diffEditor.insertedTextBackground":"#9ccfd826","diffEditor.removedLineBackground":"#eb6f9226","diffEditor.removedTextBackground":"#eb6f9226","diffEditorOverview.insertedForeground":"#9ccfd880","diffEditorOverview.removedForeground":"#eb6f9280","dropdown.background":"#1f1d2e","dropdown.border":"#6e6a8633","dropdown.foreground":"#e0def4","dropdown.listBackground":"#1f1d2e","editor.background":"#191724","editor.findMatchBackground":"#f6c17733","editor.findMatchBorder":"#f6c17780","editor.findMatchForeground":"#e0def4","editor.findMatchHighlightBackground":"#6e6a8666","editor.findMatchHighlightForeground":"#e0def4","editor.findRangeHighlightBackground":"#6e6a8666","editor.findRangeHighlightBorder":"#0000","editor.focusedStackFrameHighlightBackground":"#6e6a8633","editor.foldBackground":"#1f1d2e","editor.foreground":"#e0def4","editor.hoverHighlightBackground":"#0000","editor.inactiveSelectionBackground":"#6e6a861a","editor.inlineValuesBackground":"#0000","editor.inlineValuesForeground":"#908caa","editor.lineHighlightBackground":"#6e6a861a","editor.lineHighlightBorder":"#0000","editor.linkedEditingBackground":"#1f1d2e","editor.rangeHighlightBackground":"#6e6a861a","editor.selectionBackground":"#6e6a8633","editor.selectionForeground":"#e0def4","editor.selectionHighlightBackground":"#6e6a8633","editor.selectionHighlightBorder":"#191724","editor.snippetFinalTabstopHighlightBackground":"#6e6a8633","editor.snippetFinalTabstopHighlightBorder":"#1f1d2e","editor.snippetTabstopHighlightBackground":"#6e6a8633","editor.snippetTabstopHighlightBorder":"#1f1d2e","editor.stackFrameHighlightBackground":"#6e6a8633","editor.symbolHighlightBackground":"#6e6a8633","editor.symbolHighlightBorder":"#0000","editor.wordHighlightBackground":"#6e6a8633","editor.wordHighlightBorder":"#0000","editor.wordHighlightStrongBackground":"#6e6a8633","editor.wordHighlightStrongBorder":"#6e6a8633","editorBracketHighlight.foreground1":"#eb6f9280","editorBracketHighlight.foreground2":"#31748f80","editorBracketHighlight.foreground3":"#f6c17780","editorBracketHighlight.foreground4":"#9ccfd880","editorBracketHighlight.foreground5":"#ebbcba80","editorBracketHighlight.foreground6":"#c4a7e780","editorBracketMatch.background":"#0000","editorBracketMatch.border":"#908caa","editorBracketPairGuide.activeBackground1":"#31748f","editorBracketPairGuide.activeBackground2":"#ebbcba","editorBracketPairGuide.activeBackground3":"#c4a7e7","editorBracketPairGuide.activeBackground4":"#9ccfd8","editorBracketPairGuide.activeBackground5":"#f6c177","editorBracketPairGuide.activeBackground6":"#eb6f92","editorBracketPairGuide.background1":"#31748f80","editorBracketPairGuide.background2":"#ebbcba80","editorBracketPairGuide.background3":"#c4a7e780","editorBracketPairGuide.background4":"#9ccfd880","editorBracketPairGuide.background5":"#f6c17780","editorBracketPairGuide.background6":"#eb6f9280","editorCodeLens.foreground":"#ebbcba","editorCursor.background":"#e0def4","editorCursor.foreground":"#6e6a86","editorError.border":"#0000","editorError.foreground":"#eb6f92","editorGhostText.foreground":"#908caa","editorGroup.border":"#0000","editorGroup.dropBackground":"#1f1d2e","editorGroup.emptyBackground":"#0000","editorGroup.focusedEmptyBorder":"#0000","editorGroupHeader.noTabsBackground":"#0000","editorGroupHeader.tabsBackground":"#0000","editorGroupHeader.tabsBorder":"#0000","editorGutter.addedBackground":"#9ccfd8","editorGutter.background":"#191724","editorGutter.commentRangeForeground":"#26233a","editorGutter.deletedBackground":"#eb6f92","editorGutter.foldingControlForeground":"#c4a7e7","editorGutter.modifiedBackground":"#ebbcba","editorHint.border":"#0000","editorHint.foreground":"#908caa","editorHoverWidget.background":"#1f1d2e","editorHoverWidget.border":"#6e6a8680","editorHoverWidget.foreground":"#908caa","editorHoverWidget.highlightForeground":"#e0def4","editorHoverWidget.statusBarBackground":"#0000","editorIndentGuide.activeBackground":"#6e6a86","editorIndentGuide.background":"#6e6a8666","editorInfo.border":"#26233a","editorInfo.foreground":"#9ccfd8","editorInlayHint.background":"#26233a","editorInlayHint.foreground":"#908caa","editorInlayHint.parameterBackground":"#26233a","editorInlayHint.parameterForeground":"#c4a7e7","editorInlayHint.typeBackground":"#26233a","editorInlayHint.typeForeground":"#9ccfd8","editorLightBulb.foreground":"#31748f","editorLightBulbAutoFix.foreground":"#ebbcba","editorLineNumber.activeForeground":"#e0def4","editorLineNumber.foreground":"#908caa","editorLink.activeForeground":"#ebbcba","editorMarkerNavigation.background":"#1f1d2e","editorMarkerNavigationError.background":"#1f1d2e","editorMarkerNavigationInfo.background":"#1f1d2e","editorMarkerNavigationWarning.background":"#1f1d2e","editorOverviewRuler.addedForeground":"#9ccfd880","editorOverviewRuler.background":"#191724","editorOverviewRuler.border":"#6e6a8666","editorOverviewRuler.bracketMatchForeground":"#908caa","editorOverviewRuler.commentForeground":"#908caa80","editorOverviewRuler.commentUnresolvedForeground":"#f6c17780","editorOverviewRuler.commonContentForeground":"#6e6a861a","editorOverviewRuler.currentContentForeground":"#6e6a8633","editorOverviewRuler.deletedForeground":"#eb6f9280","editorOverviewRuler.errorForeground":"#eb6f9280","editorOverviewRuler.findMatchForeground":"#6e6a8666","editorOverviewRuler.incomingContentForeground":"#c4a7e780","editorOverviewRuler.infoForeground":"#9ccfd880","editorOverviewRuler.modifiedForeground":"#ebbcba80","editorOverviewRuler.rangeHighlightForeground":"#6e6a8666","editorOverviewRuler.selectionHighlightForeground":"#6e6a8666","editorOverviewRuler.warningForeground":"#f6c17780","editorOverviewRuler.wordHighlightForeground":"#6e6a8633","editorOverviewRuler.wordHighlightStrongForeground":"#6e6a8666","editorPane.background":"#0000","editorRuler.foreground":"#6e6a8666","editorSuggestWidget.background":"#1f1d2e","editorSuggestWidget.border":"#0000","editorSuggestWidget.focusHighlightForeground":"#ebbcba","editorSuggestWidget.foreground":"#908caa","editorSuggestWidget.highlightForeground":"#ebbcba","editorSuggestWidget.selectedBackground":"#6e6a8633","editorSuggestWidget.selectedForeground":"#e0def4","editorSuggestWidget.selectedIconForeground":"#e0def4","editorUnnecessaryCode.border":"#0000","editorUnnecessaryCode.opacity":"#e0def480","editorWarning.border":"#0000","editorWarning.foreground":"#f6c177","editorWhitespace.foreground":"#6e6a86","editorWidget.background":"#1f1d2e","editorWidget.border":"#26233a","editorWidget.foreground":"#908caa","editorWidget.resizeBorder":"#6e6a86","errorForeground":"#eb6f92","extensionBadge.remoteBackground":"#c4a7e7","extensionBadge.remoteForeground":"#191724","extensionButton.prominentBackground":"#ebbcba","extensionButton.prominentForeground":"#191724","extensionButton.prominentHoverBackground":"#ebbcbae6","extensionIcon.preReleaseForeground":"#31748f","extensionIcon.starForeground":"#ebbcba","extensionIcon.verifiedForeground":"#c4a7e7","focusBorder":"#6e6a8633","foreground":"#e0def4","gitDecoration.addedResourceForeground":"#9ccfd8","gitDecoration.conflictingResourceForeground":"#eb6f92","gitDecoration.deletedResourceForeground":"#908caa","gitDecoration.ignoredResourceForeground":"#6e6a86","gitDecoration.modifiedResourceForeground":"#ebbcba","gitDecoration.renamedResourceForeground":"#31748f","gitDecoration.stageDeletedResourceForeground":"#eb6f92","gitDecoration.stageModifiedResourceForeground":"#c4a7e7","gitDecoration.submoduleResourceForeground":"#f6c177","gitDecoration.untrackedResourceForeground":"#f6c177","icon.foreground":"#908caa","input.background":"#26233a80","input.border":"#6e6a8633","input.foreground":"#e0def4","input.placeholderForeground":"#908caa","inputOption.activeBackground":"#ebbcba26","inputOption.activeBorder":"#0000","inputOption.activeForeground":"#ebbcba","inputValidation.errorBackground":"#1f1d2e","inputValidation.errorBorder":"#6e6a8666","inputValidation.errorForeground":"#eb6f92","inputValidation.infoBackground":"#1f1d2e","inputValidation.infoBorder":"#6e6a8666","inputValidation.infoForeground":"#9ccfd8","inputValidation.warningBackground":"#1f1d2e","inputValidation.warningBorder":"#6e6a8666","inputValidation.warningForeground":"#9ccfd880","keybindingLabel.background":"#26233a","keybindingLabel.border":"#6e6a8666","keybindingLabel.bottomBorder":"#6e6a8666","keybindingLabel.foreground":"#c4a7e7","keybindingTable.headerBackground":"#26233a","keybindingTable.rowsBackground":"#1f1d2e","list.activeSelectionBackground":"#6e6a8633","list.activeSelectionForeground":"#e0def4","list.deemphasizedForeground":"#908caa","list.dropBackground":"#1f1d2e","list.errorForeground":"#eb6f92","list.filterMatchBackground":"#1f1d2e","list.filterMatchBorder":"#ebbcba","list.focusBackground":"#6e6a8666","list.focusForeground":"#e0def4","list.focusOutline":"#6e6a8633","list.highlightForeground":"#ebbcba","list.hoverBackground":"#6e6a861a","list.hoverForeground":"#e0def4","list.inactiveFocusBackground":"#6e6a861a","list.inactiveSelectionBackground":"#1f1d2e","list.inactiveSelectionForeground":"#e0def4","list.invalidItemForeground":"#eb6f92","list.warningForeground":"#f6c177","listFilterWidget.background":"#1f1d2e","listFilterWidget.noMatchesOutline":"#eb6f92","listFilterWidget.outline":"#26233a","menu.background":"#1f1d2e","menu.border":"#6e6a861a","menu.foreground":"#e0def4","menu.selectionBackground":"#6e6a8633","menu.selectionBorder":"#26233a","menu.selectionForeground":"#e0def4","menu.separatorBackground":"#6e6a8666","menubar.selectionBackground":"#6e6a8633","menubar.selectionBorder":"#6e6a861a","menubar.selectionForeground":"#e0def4","merge.border":"#26233a","merge.commonContentBackground":"#6e6a8633","merge.commonHeaderBackground":"#6e6a8633","merge.currentContentBackground":"#f6c17780","merge.currentHeaderBackground":"#f6c17780","merge.incomingContentBackground":"#9ccfd880","merge.incomingHeaderBackground":"#9ccfd880","minimap.background":"#1f1d2e","minimap.errorHighlight":"#eb6f9280","minimap.findMatchHighlight":"#6e6a8633","minimap.selectionHighlight":"#6e6a8633","minimap.warningHighlight":"#f6c17780","minimapGutter.addedBackground":"#9ccfd8","minimapGutter.deletedBackground":"#eb6f92","minimapGutter.modifiedBackground":"#ebbcba","minimapSlider.activeBackground":"#6e6a8666","minimapSlider.background":"#6e6a8633","minimapSlider.hoverBackground":"#6e6a8633","notebook.cellBorderColor":"#9ccfd880","notebook.cellEditorBackground":"#1f1d2e","notebook.cellHoverBackground":"#26233a80","notebook.focusedCellBackground":"#6e6a861a","notebook.focusedCellBorder":"#9ccfd8","notebook.outputContainerBackgroundColor":"#6e6a861a","notificationCenter.border":"#6e6a8633","notificationCenterHeader.background":"#1f1d2e","notificationCenterHeader.foreground":"#908caa","notificationLink.foreground":"#c4a7e7","notificationToast.border":"#6e6a8633","notifications.background":"#1f1d2e","notifications.border":"#6e6a8633","notifications.foreground":"#e0def4","notificationsErrorIcon.foreground":"#eb6f92","notificationsInfoIcon.foreground":"#9ccfd8","notificationsWarningIcon.foreground":"#f6c177","panel.background":"#1f1d2e","panel.border":"#0000","panel.dropBorder":"#26233a","panelInput.border":"#1f1d2e","panelSection.dropBackground":"#6e6a8633","panelSectionHeader.background":"#1f1d2e","panelSectionHeader.foreground":"#e0def4","panelTitle.activeBorder":"#6e6a8666","panelTitle.activeForeground":"#e0def4","panelTitle.inactiveForeground":"#908caa","peekView.border":"#26233a","peekViewEditor.background":"#1f1d2e","peekViewEditor.matchHighlightBackground":"#6e6a8666","peekViewResult.background":"#1f1d2e","peekViewResult.fileForeground":"#908caa","peekViewResult.lineForeground":"#908caa","peekViewResult.matchHighlightBackground":"#6e6a8666","peekViewResult.selectionBackground":"#6e6a8633","peekViewResult.selectionForeground":"#e0def4","peekViewTitle.background":"#26233a","peekViewTitleDescription.foreground":"#908caa","pickerGroup.border":"#6e6a8666","pickerGroup.foreground":"#c4a7e7","ports.iconRunningProcessForeground":"#ebbcba","problemsErrorIcon.foreground":"#eb6f92","problemsInfoIcon.foreground":"#9ccfd8","problemsWarningIcon.foreground":"#f6c177","progressBar.background":"#ebbcba","quickInput.background":"#1f1d2e","quickInput.foreground":"#908caa","quickInputList.focusBackground":"#6e6a8633","quickInputList.focusForeground":"#e0def4","quickInputList.focusIconForeground":"#e0def4","scrollbar.shadow":"#1f1d2e4d","scrollbarSlider.activeBackground":"#31748f80","scrollbarSlider.background":"#6e6a8633","scrollbarSlider.hoverBackground":"#6e6a8666","searchEditor.findMatchBackground":"#6e6a8633","selection.background":"#6e6a8666","settings.focusedRowBackground":"#1f1d2e","settings.focusedRowBorder":"#6e6a8633","settings.headerForeground":"#e0def4","settings.modifiedItemIndicator":"#ebbcba","settings.rowHoverBackground":"#1f1d2e","sideBar.background":"#191724","sideBar.dropBackground":"#1f1d2e","sideBar.foreground":"#908caa","sideBarSectionHeader.background":"#0000","sideBarSectionHeader.border":"#6e6a8633","statusBar.background":"#191724","statusBar.debuggingBackground":"#c4a7e7","statusBar.debuggingForeground":"#191724","statusBar.foreground":"#908caa","statusBar.noFolderBackground":"#191724","statusBar.noFolderForeground":"#908caa","statusBarItem.activeBackground":"#6e6a8666","statusBarItem.errorBackground":"#191724","statusBarItem.errorForeground":"#eb6f92","statusBarItem.hoverBackground":"#6e6a8633","statusBarItem.prominentBackground":"#26233a","statusBarItem.prominentForeground":"#e0def4","statusBarItem.prominentHoverBackground":"#6e6a8633","statusBarItem.remoteBackground":"#191724","statusBarItem.remoteForeground":"#f6c177","symbolIcon.arrayForeground":"#908caa","symbolIcon.classForeground":"#908caa","symbolIcon.colorForeground":"#908caa","symbolIcon.constantForeground":"#908caa","symbolIcon.constructorForeground":"#908caa","symbolIcon.enumeratorForeground":"#908caa","symbolIcon.enumeratorMemberForeground":"#908caa","symbolIcon.eventForeground":"#908caa","symbolIcon.fieldForeground":"#908caa","symbolIcon.fileForeground":"#908caa","symbolIcon.folderForeground":"#908caa","symbolIcon.functionForeground":"#908caa","symbolIcon.interfaceForeground":"#908caa","symbolIcon.keyForeground":"#908caa","symbolIcon.keywordForeground":"#908caa","symbolIcon.methodForeground":"#908caa","symbolIcon.moduleForeground":"#908caa","symbolIcon.namespaceForeground":"#908caa","symbolIcon.nullForeground":"#908caa","symbolIcon.numberForeground":"#908caa","symbolIcon.objectForeground":"#908caa","symbolIcon.operatorForeground":"#908caa","symbolIcon.packageForeground":"#908caa","symbolIcon.propertyForeground":"#908caa","symbolIcon.referenceForeground":"#908caa","symbolIcon.snippetForeground":"#908caa","symbolIcon.stringForeground":"#908caa","symbolIcon.structForeground":"#908caa","symbolIcon.textForeground":"#908caa","symbolIcon.typeParameterForeground":"#908caa","symbolIcon.unitForeground":"#908caa","symbolIcon.variableForeground":"#908caa","tab.activeBackground":"#6e6a861a","tab.activeForeground":"#e0def4","tab.activeModifiedBorder":"#9ccfd8","tab.border":"#0000","tab.hoverBackground":"#6e6a8633","tab.inactiveBackground":"#0000","tab.inactiveForeground":"#908caa","tab.inactiveModifiedBorder":"#9ccfd880","tab.lastPinnedBorder":"#6e6a86","tab.unfocusedActiveBackground":"#0000","tab.unfocusedHoverBackground":"#0000","tab.unfocusedInactiveBackground":"#0000","tab.unfocusedInactiveModifiedBorder":"#9ccfd880","terminal.ansiBlack":"#26233a","terminal.ansiBlue":"#9ccfd8","terminal.ansiBrightBlack":"#908caa","terminal.ansiBrightBlue":"#9ccfd8","terminal.ansiBrightCyan":"#ebbcba","terminal.ansiBrightGreen":"#31748f","terminal.ansiBrightMagenta":"#c4a7e7","terminal.ansiBrightRed":"#eb6f92","terminal.ansiBrightWhite":"#e0def4","terminal.ansiBrightYellow":"#f6c177","terminal.ansiCyan":"#ebbcba","terminal.ansiGreen":"#31748f","terminal.ansiMagenta":"#c4a7e7","terminal.ansiRed":"#eb6f92","terminal.ansiWhite":"#e0def4","terminal.ansiYellow":"#f6c177","terminal.dropBackground":"#6e6a8633","terminal.foreground":"#e0def4","terminal.selectionBackground":"#6e6a8633","terminal.tab.activeBorder":"#e0def4","terminalCursor.background":"#e0def4","terminalCursor.foreground":"#6e6a86","textBlockQuote.background":"#1f1d2e","textBlockQuote.border":"#6e6a8633","textCodeBlock.background":"#1f1d2e","textLink.activeForeground":"#c4a7e7e6","textLink.foreground":"#c4a7e7","textPreformat.foreground":"#f6c177","textSeparator.foreground":"#908caa","titleBar.activeBackground":"#191724","titleBar.activeForeground":"#908caa","titleBar.inactiveBackground":"#1f1d2e","titleBar.inactiveForeground":"#908caa","toolbar.activeBackground":"#6e6a8666","toolbar.hoverBackground":"#6e6a8633","tree.indentGuidesStroke":"#908caa","walkThrough.embeddedEditorBackground":"#191724","welcomePage.background":"#191724","welcomePage.buttonBackground":"#1f1d2e","welcomePage.buttonHoverBackground":"#26233a","widget.shadow":"#1f1d2e4d","window.activeBorder":"#1f1d2e","window.inactiveBorder":"#1f1d2e"},"displayName":"Ros\xE9 Pine","name":"rose-pine","tokenColors":[{"scope":["comment"],"settings":{"fontStyle":"italic","foreground":"#6e6a86"}},{"scope":["constant"],"settings":{"foreground":"#31748f"}},{"scope":["constant.numeric","constant.language"],"settings":{"foreground":"#ebbcba"}},{"scope":["entity.name"],"settings":{"foreground":"#ebbcba"}},{"scope":["entity.name.section","entity.name.tag","entity.name.namespace","entity.name.type"],"settings":{"foreground":"#9ccfd8"}},{"scope":["entity.other.attribute-name","entity.other.inherited-class"],"settings":{"fontStyle":"italic","foreground":"#c4a7e7"}},{"scope":["invalid"],"settings":{"foreground":"#eb6f92"}},{"scope":["invalid.deprecated"],"settings":{"foreground":"#908caa"}},{"scope":["keyword","variable.language.this"],"settings":{"foreground":"#31748f"}},{"scope":["markup.inserted.diff"],"settings":{"foreground":"#9ccfd8"}},{"scope":["markup.deleted.diff"],"settings":{"foreground":"#eb6f92"}},{"scope":"markup.heading","settings":{"fontStyle":"bold"}},{"scope":"markup.bold.markdown","settings":{"fontStyle":"bold"}},{"scope":"markup.italic.markdown","settings":{"fontStyle":"italic"}},{"scope":["meta.diff.range"],"settings":{"foreground":"#c4a7e7"}},{"scope":["meta.tag","meta.brace"],"settings":{"foreground":"#e0def4"}},{"scope":["meta.import","meta.export"],"settings":{"foreground":"#31748f"}},{"scope":"meta.directive.vue","settings":{"fontStyle":"italic","foreground":"#c4a7e7"}},{"scope":"meta.property-name.css","settings":{"foreground":"#9ccfd8"}},{"scope":"meta.property-value.css","settings":{"foreground":"#f6c177"}},{"scope":"meta.tag.other.html","settings":{"foreground":"#908caa"}},{"scope":["punctuation"],"settings":{"foreground":"#908caa"}},{"scope":["punctuation.accessor"],"settings":{"foreground":"#31748f"}},{"scope":["punctuation.definition.string"],"settings":{"foreground":"#f6c177"}},{"scope":["punctuation.definition.tag"],"settings":{"foreground":"#6e6a86"}},{"scope":["storage.type","storage.modifier"],"settings":{"foreground":"#31748f"}},{"scope":["string"],"settings":{"foreground":"#f6c177"}},{"scope":["support"],"settings":{"foreground":"#9ccfd8"}},{"scope":["support.constant"],"settings":{"foreground":"#f6c177"}},{"scope":["support.function"],"settings":{"fontStyle":"italic","foreground":"#eb6f92"}},{"scope":["variable"],"settings":{"fontStyle":"italic","foreground":"#ebbcba"}},{"scope":["variable.other","variable.language","variable.function","variable.argument"],"settings":{"foreground":"#e0def4"}},{"scope":["variable.parameter"],"settings":{"foreground":"#c4a7e7"}}],"type":"dark"}'))});var f3={};x(f3,{default:()=>Ice});var Ice,b3=_(()=>{Ice=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#575279","activityBar.background":"#faf4ed","activityBar.dropBorder":"#f2e9e1","activityBar.foreground":"#575279","activityBar.inactiveForeground":"#797593","activityBarBadge.background":"#d7827e","activityBarBadge.foreground":"#faf4ed","badge.background":"#d7827e","badge.foreground":"#faf4ed","banner.background":"#fffaf3","banner.foreground":"#575279","banner.iconForeground":"#797593","breadcrumb.activeSelectionForeground":"#d7827e","breadcrumb.background":"#faf4ed","breadcrumb.focusForeground":"#797593","breadcrumb.foreground":"#9893a5","breadcrumbPicker.background":"#fffaf3","button.background":"#d7827e","button.foreground":"#faf4ed","button.hoverBackground":"#d7827ee6","button.secondaryBackground":"#fffaf3","button.secondaryForeground":"#575279","button.secondaryHoverBackground":"#f2e9e1","charts.blue":"#56949f","charts.foreground":"#575279","charts.green":"#286983","charts.lines":"#797593","charts.orange":"#d7827e","charts.purple":"#907aa9","charts.red":"#b4637a","charts.yellow":"#ea9d34","checkbox.background":"#fffaf3","checkbox.border":"#6e6a8614","checkbox.foreground":"#575279","debugExceptionWidget.background":"#fffaf3","debugExceptionWidget.border":"#6e6a8614","debugIcon.breakpointCurrentStackframeForeground":"#797593","debugIcon.breakpointDisabledForeground":"#797593","debugIcon.breakpointForeground":"#797593","debugIcon.breakpointStackframeForeground":"#797593","debugIcon.breakpointUnverifiedForeground":"#797593","debugIcon.continueForeground":"#797593","debugIcon.disconnectForeground":"#797593","debugIcon.pauseForeground":"#797593","debugIcon.restartForeground":"#797593","debugIcon.startForeground":"#797593","debugIcon.stepBackForeground":"#797593","debugIcon.stepIntoForeground":"#797593","debugIcon.stepOutForeground":"#797593","debugIcon.stepOverForeground":"#797593","debugIcon.stopForeground":"#b4637a","debugToolBar.background":"#fffaf3","debugToolBar.border":"#f2e9e1","descriptionForeground":"#797593","diffEditor.border":"#f2e9e1","diffEditor.diagonalFill":"#6e6a8626","diffEditor.insertedLineBackground":"#56949f26","diffEditor.insertedTextBackground":"#56949f26","diffEditor.removedLineBackground":"#b4637a26","diffEditor.removedTextBackground":"#b4637a26","diffEditorOverview.insertedForeground":"#56949f80","diffEditorOverview.removedForeground":"#b4637a80","dropdown.background":"#fffaf3","dropdown.border":"#6e6a8614","dropdown.foreground":"#575279","dropdown.listBackground":"#fffaf3","editor.background":"#faf4ed","editor.findMatchBackground":"#ea9d3433","editor.findMatchBorder":"#ea9d3480","editor.findMatchForeground":"#575279","editor.findMatchHighlightBackground":"#6e6a8626","editor.findMatchHighlightForeground":"#575279","editor.findRangeHighlightBackground":"#6e6a8626","editor.findRangeHighlightBorder":"#0000","editor.focusedStackFrameHighlightBackground":"#6e6a8614","editor.foldBackground":"#fffaf3","editor.foreground":"#575279","editor.hoverHighlightBackground":"#0000","editor.inactiveSelectionBackground":"#6e6a860d","editor.inlineValuesBackground":"#0000","editor.inlineValuesForeground":"#797593","editor.lineHighlightBackground":"#6e6a860d","editor.lineHighlightBorder":"#0000","editor.linkedEditingBackground":"#fffaf3","editor.rangeHighlightBackground":"#6e6a860d","editor.selectionBackground":"#6e6a8614","editor.selectionForeground":"#575279","editor.selectionHighlightBackground":"#6e6a8614","editor.selectionHighlightBorder":"#faf4ed","editor.snippetFinalTabstopHighlightBackground":"#6e6a8614","editor.snippetFinalTabstopHighlightBorder":"#fffaf3","editor.snippetTabstopHighlightBackground":"#6e6a8614","editor.snippetTabstopHighlightBorder":"#fffaf3","editor.stackFrameHighlightBackground":"#6e6a8614","editor.symbolHighlightBackground":"#6e6a8614","editor.symbolHighlightBorder":"#0000","editor.wordHighlightBackground":"#6e6a8614","editor.wordHighlightBorder":"#0000","editor.wordHighlightStrongBackground":"#6e6a8614","editor.wordHighlightStrongBorder":"#6e6a8614","editorBracketHighlight.foreground1":"#b4637a80","editorBracketHighlight.foreground2":"#28698380","editorBracketHighlight.foreground3":"#ea9d3480","editorBracketHighlight.foreground4":"#56949f80","editorBracketHighlight.foreground5":"#d7827e80","editorBracketHighlight.foreground6":"#907aa980","editorBracketMatch.background":"#0000","editorBracketMatch.border":"#797593","editorBracketPairGuide.activeBackground1":"#286983","editorBracketPairGuide.activeBackground2":"#d7827e","editorBracketPairGuide.activeBackground3":"#907aa9","editorBracketPairGuide.activeBackground4":"#56949f","editorBracketPairGuide.activeBackground5":"#ea9d34","editorBracketPairGuide.activeBackground6":"#b4637a","editorBracketPairGuide.background1":"#28698380","editorBracketPairGuide.background2":"#d7827e80","editorBracketPairGuide.background3":"#907aa980","editorBracketPairGuide.background4":"#56949f80","editorBracketPairGuide.background5":"#ea9d3480","editorBracketPairGuide.background6":"#b4637a80","editorCodeLens.foreground":"#d7827e","editorCursor.background":"#575279","editorCursor.foreground":"#9893a5","editorError.border":"#0000","editorError.foreground":"#b4637a","editorGhostText.foreground":"#797593","editorGroup.border":"#0000","editorGroup.dropBackground":"#fffaf3","editorGroup.emptyBackground":"#0000","editorGroup.focusedEmptyBorder":"#0000","editorGroupHeader.noTabsBackground":"#0000","editorGroupHeader.tabsBackground":"#0000","editorGroupHeader.tabsBorder":"#0000","editorGutter.addedBackground":"#56949f","editorGutter.background":"#faf4ed","editorGutter.commentRangeForeground":"#f2e9e1","editorGutter.deletedBackground":"#b4637a","editorGutter.foldingControlForeground":"#907aa9","editorGutter.modifiedBackground":"#d7827e","editorHint.border":"#0000","editorHint.foreground":"#797593","editorHoverWidget.background":"#fffaf3","editorHoverWidget.border":"#9893a580","editorHoverWidget.foreground":"#797593","editorHoverWidget.highlightForeground":"#575279","editorHoverWidget.statusBarBackground":"#0000","editorIndentGuide.activeBackground":"#9893a5","editorIndentGuide.background":"#6e6a8626","editorInfo.border":"#f2e9e1","editorInfo.foreground":"#56949f","editorInlayHint.background":"#f2e9e1","editorInlayHint.foreground":"#797593","editorInlayHint.parameterBackground":"#f2e9e1","editorInlayHint.parameterForeground":"#907aa9","editorInlayHint.typeBackground":"#f2e9e1","editorInlayHint.typeForeground":"#56949f","editorLightBulb.foreground":"#286983","editorLightBulbAutoFix.foreground":"#d7827e","editorLineNumber.activeForeground":"#575279","editorLineNumber.foreground":"#797593","editorLink.activeForeground":"#d7827e","editorMarkerNavigation.background":"#fffaf3","editorMarkerNavigationError.background":"#fffaf3","editorMarkerNavigationInfo.background":"#fffaf3","editorMarkerNavigationWarning.background":"#fffaf3","editorOverviewRuler.addedForeground":"#56949f80","editorOverviewRuler.background":"#faf4ed","editorOverviewRuler.border":"#6e6a8626","editorOverviewRuler.bracketMatchForeground":"#797593","editorOverviewRuler.commentForeground":"#79759380","editorOverviewRuler.commentUnresolvedForeground":"#ea9d3480","editorOverviewRuler.commonContentForeground":"#6e6a860d","editorOverviewRuler.currentContentForeground":"#6e6a8614","editorOverviewRuler.deletedForeground":"#b4637a80","editorOverviewRuler.errorForeground":"#b4637a80","editorOverviewRuler.findMatchForeground":"#6e6a8626","editorOverviewRuler.incomingContentForeground":"#907aa980","editorOverviewRuler.infoForeground":"#56949f80","editorOverviewRuler.modifiedForeground":"#d7827e80","editorOverviewRuler.rangeHighlightForeground":"#6e6a8626","editorOverviewRuler.selectionHighlightForeground":"#6e6a8626","editorOverviewRuler.warningForeground":"#ea9d3480","editorOverviewRuler.wordHighlightForeground":"#6e6a8614","editorOverviewRuler.wordHighlightStrongForeground":"#6e6a8626","editorPane.background":"#0000","editorRuler.foreground":"#6e6a8626","editorSuggestWidget.background":"#fffaf3","editorSuggestWidget.border":"#0000","editorSuggestWidget.focusHighlightForeground":"#d7827e","editorSuggestWidget.foreground":"#797593","editorSuggestWidget.highlightForeground":"#d7827e","editorSuggestWidget.selectedBackground":"#6e6a8614","editorSuggestWidget.selectedForeground":"#575279","editorSuggestWidget.selectedIconForeground":"#575279","editorUnnecessaryCode.border":"#0000","editorUnnecessaryCode.opacity":"#57527980","editorWarning.border":"#0000","editorWarning.foreground":"#ea9d34","editorWhitespace.foreground":"#9893a5","editorWidget.background":"#fffaf3","editorWidget.border":"#f2e9e1","editorWidget.foreground":"#797593","editorWidget.resizeBorder":"#9893a5","errorForeground":"#b4637a","extensionBadge.remoteBackground":"#907aa9","extensionBadge.remoteForeground":"#faf4ed","extensionButton.prominentBackground":"#d7827e","extensionButton.prominentForeground":"#faf4ed","extensionButton.prominentHoverBackground":"#d7827ee6","extensionIcon.preReleaseForeground":"#286983","extensionIcon.starForeground":"#d7827e","extensionIcon.verifiedForeground":"#907aa9","focusBorder":"#6e6a8614","foreground":"#575279","gitDecoration.addedResourceForeground":"#56949f","gitDecoration.conflictingResourceForeground":"#b4637a","gitDecoration.deletedResourceForeground":"#797593","gitDecoration.ignoredResourceForeground":"#9893a5","gitDecoration.modifiedResourceForeground":"#d7827e","gitDecoration.renamedResourceForeground":"#286983","gitDecoration.stageDeletedResourceForeground":"#b4637a","gitDecoration.stageModifiedResourceForeground":"#907aa9","gitDecoration.submoduleResourceForeground":"#ea9d34","gitDecoration.untrackedResourceForeground":"#ea9d34","icon.foreground":"#797593","input.background":"#f2e9e180","input.border":"#6e6a8614","input.foreground":"#575279","input.placeholderForeground":"#797593","inputOption.activeBackground":"#d7827e26","inputOption.activeBorder":"#0000","inputOption.activeForeground":"#d7827e","inputValidation.errorBackground":"#fffaf3","inputValidation.errorBorder":"#6e6a8626","inputValidation.errorForeground":"#b4637a","inputValidation.infoBackground":"#fffaf3","inputValidation.infoBorder":"#6e6a8626","inputValidation.infoForeground":"#56949f","inputValidation.warningBackground":"#fffaf3","inputValidation.warningBorder":"#6e6a8626","inputValidation.warningForeground":"#56949f80","keybindingLabel.background":"#f2e9e1","keybindingLabel.border":"#6e6a8626","keybindingLabel.bottomBorder":"#6e6a8626","keybindingLabel.foreground":"#907aa9","keybindingTable.headerBackground":"#f2e9e1","keybindingTable.rowsBackground":"#fffaf3","list.activeSelectionBackground":"#6e6a8614","list.activeSelectionForeground":"#575279","list.deemphasizedForeground":"#797593","list.dropBackground":"#fffaf3","list.errorForeground":"#b4637a","list.filterMatchBackground":"#fffaf3","list.filterMatchBorder":"#d7827e","list.focusBackground":"#6e6a8626","list.focusForeground":"#575279","list.focusOutline":"#6e6a8614","list.highlightForeground":"#d7827e","list.hoverBackground":"#6e6a860d","list.hoverForeground":"#575279","list.inactiveFocusBackground":"#6e6a860d","list.inactiveSelectionBackground":"#fffaf3","list.inactiveSelectionForeground":"#575279","list.invalidItemForeground":"#b4637a","list.warningForeground":"#ea9d34","listFilterWidget.background":"#fffaf3","listFilterWidget.noMatchesOutline":"#b4637a","listFilterWidget.outline":"#f2e9e1","menu.background":"#fffaf3","menu.border":"#6e6a860d","menu.foreground":"#575279","menu.selectionBackground":"#6e6a8614","menu.selectionBorder":"#f2e9e1","menu.selectionForeground":"#575279","menu.separatorBackground":"#6e6a8626","menubar.selectionBackground":"#6e6a8614","menubar.selectionBorder":"#6e6a860d","menubar.selectionForeground":"#575279","merge.border":"#f2e9e1","merge.commonContentBackground":"#6e6a8614","merge.commonHeaderBackground":"#6e6a8614","merge.currentContentBackground":"#ea9d3480","merge.currentHeaderBackground":"#ea9d3480","merge.incomingContentBackground":"#56949f80","merge.incomingHeaderBackground":"#56949f80","minimap.background":"#fffaf3","minimap.errorHighlight":"#b4637a80","minimap.findMatchHighlight":"#6e6a8614","minimap.selectionHighlight":"#6e6a8614","minimap.warningHighlight":"#ea9d3480","minimapGutter.addedBackground":"#56949f","minimapGutter.deletedBackground":"#b4637a","minimapGutter.modifiedBackground":"#d7827e","minimapSlider.activeBackground":"#6e6a8626","minimapSlider.background":"#6e6a8614","minimapSlider.hoverBackground":"#6e6a8614","notebook.cellBorderColor":"#56949f80","notebook.cellEditorBackground":"#fffaf3","notebook.cellHoverBackground":"#f2e9e180","notebook.focusedCellBackground":"#6e6a860d","notebook.focusedCellBorder":"#56949f","notebook.outputContainerBackgroundColor":"#6e6a860d","notificationCenter.border":"#6e6a8614","notificationCenterHeader.background":"#fffaf3","notificationCenterHeader.foreground":"#797593","notificationLink.foreground":"#907aa9","notificationToast.border":"#6e6a8614","notifications.background":"#fffaf3","notifications.border":"#6e6a8614","notifications.foreground":"#575279","notificationsErrorIcon.foreground":"#b4637a","notificationsInfoIcon.foreground":"#56949f","notificationsWarningIcon.foreground":"#ea9d34","panel.background":"#fffaf3","panel.border":"#0000","panel.dropBorder":"#f2e9e1","panelInput.border":"#fffaf3","panelSection.dropBackground":"#6e6a8614","panelSectionHeader.background":"#fffaf3","panelSectionHeader.foreground":"#575279","panelTitle.activeBorder":"#6e6a8626","panelTitle.activeForeground":"#575279","panelTitle.inactiveForeground":"#797593","peekView.border":"#f2e9e1","peekViewEditor.background":"#fffaf3","peekViewEditor.matchHighlightBackground":"#6e6a8626","peekViewResult.background":"#fffaf3","peekViewResult.fileForeground":"#797593","peekViewResult.lineForeground":"#797593","peekViewResult.matchHighlightBackground":"#6e6a8626","peekViewResult.selectionBackground":"#6e6a8614","peekViewResult.selectionForeground":"#575279","peekViewTitle.background":"#f2e9e1","peekViewTitleDescription.foreground":"#797593","pickerGroup.border":"#6e6a8626","pickerGroup.foreground":"#907aa9","ports.iconRunningProcessForeground":"#d7827e","problemsErrorIcon.foreground":"#b4637a","problemsInfoIcon.foreground":"#56949f","problemsWarningIcon.foreground":"#ea9d34","progressBar.background":"#d7827e","quickInput.background":"#fffaf3","quickInput.foreground":"#797593","quickInputList.focusBackground":"#6e6a8614","quickInputList.focusForeground":"#575279","quickInputList.focusIconForeground":"#575279","scrollbar.shadow":"#fffaf34d","scrollbarSlider.activeBackground":"#28698380","scrollbarSlider.background":"#6e6a8614","scrollbarSlider.hoverBackground":"#6e6a8626","searchEditor.findMatchBackground":"#6e6a8614","selection.background":"#6e6a8626","settings.focusedRowBackground":"#fffaf3","settings.focusedRowBorder":"#6e6a8614","settings.headerForeground":"#575279","settings.modifiedItemIndicator":"#d7827e","settings.rowHoverBackground":"#fffaf3","sideBar.background":"#faf4ed","sideBar.dropBackground":"#fffaf3","sideBar.foreground":"#797593","sideBarSectionHeader.background":"#0000","sideBarSectionHeader.border":"#6e6a8614","statusBar.background":"#faf4ed","statusBar.debuggingBackground":"#907aa9","statusBar.debuggingForeground":"#faf4ed","statusBar.foreground":"#797593","statusBar.noFolderBackground":"#faf4ed","statusBar.noFolderForeground":"#797593","statusBarItem.activeBackground":"#6e6a8626","statusBarItem.errorBackground":"#faf4ed","statusBarItem.errorForeground":"#b4637a","statusBarItem.hoverBackground":"#6e6a8614","statusBarItem.prominentBackground":"#f2e9e1","statusBarItem.prominentForeground":"#575279","statusBarItem.prominentHoverBackground":"#6e6a8614","statusBarItem.remoteBackground":"#faf4ed","statusBarItem.remoteForeground":"#ea9d34","symbolIcon.arrayForeground":"#797593","symbolIcon.classForeground":"#797593","symbolIcon.colorForeground":"#797593","symbolIcon.constantForeground":"#797593","symbolIcon.constructorForeground":"#797593","symbolIcon.enumeratorForeground":"#797593","symbolIcon.enumeratorMemberForeground":"#797593","symbolIcon.eventForeground":"#797593","symbolIcon.fieldForeground":"#797593","symbolIcon.fileForeground":"#797593","symbolIcon.folderForeground":"#797593","symbolIcon.functionForeground":"#797593","symbolIcon.interfaceForeground":"#797593","symbolIcon.keyForeground":"#797593","symbolIcon.keywordForeground":"#797593","symbolIcon.methodForeground":"#797593","symbolIcon.moduleForeground":"#797593","symbolIcon.namespaceForeground":"#797593","symbolIcon.nullForeground":"#797593","symbolIcon.numberForeground":"#797593","symbolIcon.objectForeground":"#797593","symbolIcon.operatorForeground":"#797593","symbolIcon.packageForeground":"#797593","symbolIcon.propertyForeground":"#797593","symbolIcon.referenceForeground":"#797593","symbolIcon.snippetForeground":"#797593","symbolIcon.stringForeground":"#797593","symbolIcon.structForeground":"#797593","symbolIcon.textForeground":"#797593","symbolIcon.typeParameterForeground":"#797593","symbolIcon.unitForeground":"#797593","symbolIcon.variableForeground":"#797593","tab.activeBackground":"#6e6a860d","tab.activeForeground":"#575279","tab.activeModifiedBorder":"#56949f","tab.border":"#0000","tab.hoverBackground":"#6e6a8614","tab.inactiveBackground":"#0000","tab.inactiveForeground":"#797593","tab.inactiveModifiedBorder":"#56949f80","tab.lastPinnedBorder":"#9893a5","tab.unfocusedActiveBackground":"#0000","tab.unfocusedHoverBackground":"#0000","tab.unfocusedInactiveBackground":"#0000","tab.unfocusedInactiveModifiedBorder":"#56949f80","terminal.ansiBlack":"#f2e9e1","terminal.ansiBlue":"#56949f","terminal.ansiBrightBlack":"#797593","terminal.ansiBrightBlue":"#56949f","terminal.ansiBrightCyan":"#d7827e","terminal.ansiBrightGreen":"#286983","terminal.ansiBrightMagenta":"#907aa9","terminal.ansiBrightRed":"#b4637a","terminal.ansiBrightWhite":"#575279","terminal.ansiBrightYellow":"#ea9d34","terminal.ansiCyan":"#d7827e","terminal.ansiGreen":"#286983","terminal.ansiMagenta":"#907aa9","terminal.ansiRed":"#b4637a","terminal.ansiWhite":"#575279","terminal.ansiYellow":"#ea9d34","terminal.dropBackground":"#6e6a8614","terminal.foreground":"#575279","terminal.selectionBackground":"#6e6a8614","terminal.tab.activeBorder":"#575279","terminalCursor.background":"#575279","terminalCursor.foreground":"#9893a5","textBlockQuote.background":"#fffaf3","textBlockQuote.border":"#6e6a8614","textCodeBlock.background":"#fffaf3","textLink.activeForeground":"#907aa9e6","textLink.foreground":"#907aa9","textPreformat.foreground":"#ea9d34","textSeparator.foreground":"#797593","titleBar.activeBackground":"#faf4ed","titleBar.activeForeground":"#797593","titleBar.inactiveBackground":"#fffaf3","titleBar.inactiveForeground":"#797593","toolbar.activeBackground":"#6e6a8626","toolbar.hoverBackground":"#6e6a8614","tree.indentGuidesStroke":"#797593","walkThrough.embeddedEditorBackground":"#faf4ed","welcomePage.background":"#faf4ed","welcomePage.buttonBackground":"#fffaf3","welcomePage.buttonHoverBackground":"#f2e9e1","widget.shadow":"#fffaf34d","window.activeBorder":"#fffaf3","window.inactiveBorder":"#fffaf3"},"displayName":"Ros\xE9 Pine Dawn","name":"rose-pine-dawn","tokenColors":[{"scope":["comment"],"settings":{"fontStyle":"italic","foreground":"#9893a5"}},{"scope":["constant"],"settings":{"foreground":"#286983"}},{"scope":["constant.numeric","constant.language"],"settings":{"foreground":"#d7827e"}},{"scope":["entity.name"],"settings":{"foreground":"#d7827e"}},{"scope":["entity.name.section","entity.name.tag","entity.name.namespace","entity.name.type"],"settings":{"foreground":"#56949f"}},{"scope":["entity.other.attribute-name","entity.other.inherited-class"],"settings":{"fontStyle":"italic","foreground":"#907aa9"}},{"scope":["invalid"],"settings":{"foreground":"#b4637a"}},{"scope":["invalid.deprecated"],"settings":{"foreground":"#797593"}},{"scope":["keyword","variable.language.this"],"settings":{"foreground":"#286983"}},{"scope":["markup.inserted.diff"],"settings":{"foreground":"#56949f"}},{"scope":["markup.deleted.diff"],"settings":{"foreground":"#b4637a"}},{"scope":"markup.heading","settings":{"fontStyle":"bold"}},{"scope":"markup.bold.markdown","settings":{"fontStyle":"bold"}},{"scope":"markup.italic.markdown","settings":{"fontStyle":"italic"}},{"scope":["meta.diff.range"],"settings":{"foreground":"#907aa9"}},{"scope":["meta.tag","meta.brace"],"settings":{"foreground":"#575279"}},{"scope":["meta.import","meta.export"],"settings":{"foreground":"#286983"}},{"scope":"meta.directive.vue","settings":{"fontStyle":"italic","foreground":"#907aa9"}},{"scope":"meta.property-name.css","settings":{"foreground":"#56949f"}},{"scope":"meta.property-value.css","settings":{"foreground":"#ea9d34"}},{"scope":"meta.tag.other.html","settings":{"foreground":"#797593"}},{"scope":["punctuation"],"settings":{"foreground":"#797593"}},{"scope":["punctuation.accessor"],"settings":{"foreground":"#286983"}},{"scope":["punctuation.definition.string"],"settings":{"foreground":"#ea9d34"}},{"scope":["punctuation.definition.tag"],"settings":{"foreground":"#9893a5"}},{"scope":["storage.type","storage.modifier"],"settings":{"foreground":"#286983"}},{"scope":["string"],"settings":{"foreground":"#ea9d34"}},{"scope":["support"],"settings":{"foreground":"#56949f"}},{"scope":["support.constant"],"settings":{"foreground":"#ea9d34"}},{"scope":["support.function"],"settings":{"fontStyle":"italic","foreground":"#b4637a"}},{"scope":["variable"],"settings":{"fontStyle":"italic","foreground":"#d7827e"}},{"scope":["variable.other","variable.language","variable.function","variable.argument"],"settings":{"foreground":"#575279"}},{"scope":["variable.parameter"],"settings":{"foreground":"#907aa9"}}],"type":"light"}'))});var h3={};x(h3,{default:()=>Dce});var Dce,y3=_(()=>{Dce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#e0def4","activityBar.background":"#232136","activityBar.dropBorder":"#393552","activityBar.foreground":"#e0def4","activityBar.inactiveForeground":"#908caa","activityBarBadge.background":"#ea9a97","activityBarBadge.foreground":"#232136","badge.background":"#ea9a97","badge.foreground":"#232136","banner.background":"#2a273f","banner.foreground":"#e0def4","banner.iconForeground":"#908caa","breadcrumb.activeSelectionForeground":"#ea9a97","breadcrumb.background":"#232136","breadcrumb.focusForeground":"#908caa","breadcrumb.foreground":"#6e6a86","breadcrumbPicker.background":"#2a273f","button.background":"#ea9a97","button.foreground":"#232136","button.hoverBackground":"#ea9a97e6","button.secondaryBackground":"#2a273f","button.secondaryForeground":"#e0def4","button.secondaryHoverBackground":"#393552","charts.blue":"#9ccfd8","charts.foreground":"#e0def4","charts.green":"#3e8fb0","charts.lines":"#908caa","charts.orange":"#ea9a97","charts.purple":"#c4a7e7","charts.red":"#eb6f92","charts.yellow":"#f6c177","checkbox.background":"#2a273f","checkbox.border":"#817c9c26","checkbox.foreground":"#e0def4","debugExceptionWidget.background":"#2a273f","debugExceptionWidget.border":"#817c9c26","debugIcon.breakpointCurrentStackframeForeground":"#908caa","debugIcon.breakpointDisabledForeground":"#908caa","debugIcon.breakpointForeground":"#908caa","debugIcon.breakpointStackframeForeground":"#908caa","debugIcon.breakpointUnverifiedForeground":"#908caa","debugIcon.continueForeground":"#908caa","debugIcon.disconnectForeground":"#908caa","debugIcon.pauseForeground":"#908caa","debugIcon.restartForeground":"#908caa","debugIcon.startForeground":"#908caa","debugIcon.stepBackForeground":"#908caa","debugIcon.stepIntoForeground":"#908caa","debugIcon.stepOutForeground":"#908caa","debugIcon.stepOverForeground":"#908caa","debugIcon.stopForeground":"#eb6f92","debugToolBar.background":"#2a273f","debugToolBar.border":"#393552","descriptionForeground":"#908caa","diffEditor.border":"#393552","diffEditor.diagonalFill":"#817c9c4d","diffEditor.insertedLineBackground":"#9ccfd826","diffEditor.insertedTextBackground":"#9ccfd826","diffEditor.removedLineBackground":"#eb6f9226","diffEditor.removedTextBackground":"#eb6f9226","diffEditorOverview.insertedForeground":"#9ccfd880","diffEditorOverview.removedForeground":"#eb6f9280","dropdown.background":"#2a273f","dropdown.border":"#817c9c26","dropdown.foreground":"#e0def4","dropdown.listBackground":"#2a273f","editor.background":"#232136","editor.findMatchBackground":"#f6c17733","editor.findMatchBorder":"#f6c17780","editor.findMatchForeground":"#e0def4","editor.findMatchHighlightBackground":"#817c9c4d","editor.findMatchHighlightForeground":"#e0def4","editor.findRangeHighlightBackground":"#817c9c4d","editor.findRangeHighlightBorder":"#0000","editor.focusedStackFrameHighlightBackground":"#817c9c26","editor.foldBackground":"#2a273f","editor.foreground":"#e0def4","editor.hoverHighlightBackground":"#0000","editor.inactiveSelectionBackground":"#817c9c14","editor.inlineValuesBackground":"#0000","editor.inlineValuesForeground":"#908caa","editor.lineHighlightBackground":"#817c9c14","editor.lineHighlightBorder":"#0000","editor.linkedEditingBackground":"#2a273f","editor.rangeHighlightBackground":"#817c9c14","editor.selectionBackground":"#817c9c26","editor.selectionForeground":"#e0def4","editor.selectionHighlightBackground":"#817c9c26","editor.selectionHighlightBorder":"#232136","editor.snippetFinalTabstopHighlightBackground":"#817c9c26","editor.snippetFinalTabstopHighlightBorder":"#2a273f","editor.snippetTabstopHighlightBackground":"#817c9c26","editor.snippetTabstopHighlightBorder":"#2a273f","editor.stackFrameHighlightBackground":"#817c9c26","editor.symbolHighlightBackground":"#817c9c26","editor.symbolHighlightBorder":"#0000","editor.wordHighlightBackground":"#817c9c26","editor.wordHighlightBorder":"#0000","editor.wordHighlightStrongBackground":"#817c9c26","editor.wordHighlightStrongBorder":"#817c9c26","editorBracketHighlight.foreground1":"#eb6f9280","editorBracketHighlight.foreground2":"#3e8fb080","editorBracketHighlight.foreground3":"#f6c17780","editorBracketHighlight.foreground4":"#9ccfd880","editorBracketHighlight.foreground5":"#ea9a9780","editorBracketHighlight.foreground6":"#c4a7e780","editorBracketMatch.background":"#0000","editorBracketMatch.border":"#908caa","editorBracketPairGuide.activeBackground1":"#3e8fb0","editorBracketPairGuide.activeBackground2":"#ea9a97","editorBracketPairGuide.activeBackground3":"#c4a7e7","editorBracketPairGuide.activeBackground4":"#9ccfd8","editorBracketPairGuide.activeBackground5":"#f6c177","editorBracketPairGuide.activeBackground6":"#eb6f92","editorBracketPairGuide.background1":"#3e8fb080","editorBracketPairGuide.background2":"#ea9a9780","editorBracketPairGuide.background3":"#c4a7e780","editorBracketPairGuide.background4":"#9ccfd880","editorBracketPairGuide.background5":"#f6c17780","editorBracketPairGuide.background6":"#eb6f9280","editorCodeLens.foreground":"#ea9a97","editorCursor.background":"#e0def4","editorCursor.foreground":"#6e6a86","editorError.border":"#0000","editorError.foreground":"#eb6f92","editorGhostText.foreground":"#908caa","editorGroup.border":"#0000","editorGroup.dropBackground":"#2a273f","editorGroup.emptyBackground":"#0000","editorGroup.focusedEmptyBorder":"#0000","editorGroupHeader.noTabsBackground":"#0000","editorGroupHeader.tabsBackground":"#0000","editorGroupHeader.tabsBorder":"#0000","editorGutter.addedBackground":"#9ccfd8","editorGutter.background":"#232136","editorGutter.commentRangeForeground":"#393552","editorGutter.deletedBackground":"#eb6f92","editorGutter.foldingControlForeground":"#c4a7e7","editorGutter.modifiedBackground":"#ea9a97","editorHint.border":"#0000","editorHint.foreground":"#908caa","editorHoverWidget.background":"#2a273f","editorHoverWidget.border":"#6e6a8680","editorHoverWidget.foreground":"#908caa","editorHoverWidget.highlightForeground":"#e0def4","editorHoverWidget.statusBarBackground":"#0000","editorIndentGuide.activeBackground":"#6e6a86","editorIndentGuide.background":"#817c9c4d","editorInfo.border":"#393552","editorInfo.foreground":"#9ccfd8","editorInlayHint.background":"#393552","editorInlayHint.foreground":"#908caa","editorInlayHint.parameterBackground":"#393552","editorInlayHint.parameterForeground":"#c4a7e7","editorInlayHint.typeBackground":"#393552","editorInlayHint.typeForeground":"#9ccfd8","editorLightBulb.foreground":"#3e8fb0","editorLightBulbAutoFix.foreground":"#ea9a97","editorLineNumber.activeForeground":"#e0def4","editorLineNumber.foreground":"#908caa","editorLink.activeForeground":"#ea9a97","editorMarkerNavigation.background":"#2a273f","editorMarkerNavigationError.background":"#2a273f","editorMarkerNavigationInfo.background":"#2a273f","editorMarkerNavigationWarning.background":"#2a273f","editorOverviewRuler.addedForeground":"#9ccfd880","editorOverviewRuler.background":"#232136","editorOverviewRuler.border":"#817c9c4d","editorOverviewRuler.bracketMatchForeground":"#908caa","editorOverviewRuler.commentForeground":"#908caa80","editorOverviewRuler.commentUnresolvedForeground":"#f6c17780","editorOverviewRuler.commonContentForeground":"#817c9c14","editorOverviewRuler.currentContentForeground":"#817c9c26","editorOverviewRuler.deletedForeground":"#eb6f9280","editorOverviewRuler.errorForeground":"#eb6f9280","editorOverviewRuler.findMatchForeground":"#817c9c4d","editorOverviewRuler.incomingContentForeground":"#c4a7e780","editorOverviewRuler.infoForeground":"#9ccfd880","editorOverviewRuler.modifiedForeground":"#ea9a9780","editorOverviewRuler.rangeHighlightForeground":"#817c9c4d","editorOverviewRuler.selectionHighlightForeground":"#817c9c4d","editorOverviewRuler.warningForeground":"#f6c17780","editorOverviewRuler.wordHighlightForeground":"#817c9c26","editorOverviewRuler.wordHighlightStrongForeground":"#817c9c4d","editorPane.background":"#0000","editorRuler.foreground":"#817c9c4d","editorSuggestWidget.background":"#2a273f","editorSuggestWidget.border":"#0000","editorSuggestWidget.focusHighlightForeground":"#ea9a97","editorSuggestWidget.foreground":"#908caa","editorSuggestWidget.highlightForeground":"#ea9a97","editorSuggestWidget.selectedBackground":"#817c9c26","editorSuggestWidget.selectedForeground":"#e0def4","editorSuggestWidget.selectedIconForeground":"#e0def4","editorUnnecessaryCode.border":"#0000","editorUnnecessaryCode.opacity":"#e0def480","editorWarning.border":"#0000","editorWarning.foreground":"#f6c177","editorWhitespace.foreground":"#6e6a86","editorWidget.background":"#2a273f","editorWidget.border":"#393552","editorWidget.foreground":"#908caa","editorWidget.resizeBorder":"#6e6a86","errorForeground":"#eb6f92","extensionBadge.remoteBackground":"#c4a7e7","extensionBadge.remoteForeground":"#232136","extensionButton.prominentBackground":"#ea9a97","extensionButton.prominentForeground":"#232136","extensionButton.prominentHoverBackground":"#ea9a97e6","extensionIcon.preReleaseForeground":"#3e8fb0","extensionIcon.starForeground":"#ea9a97","extensionIcon.verifiedForeground":"#c4a7e7","focusBorder":"#817c9c26","foreground":"#e0def4","gitDecoration.addedResourceForeground":"#9ccfd8","gitDecoration.conflictingResourceForeground":"#eb6f92","gitDecoration.deletedResourceForeground":"#908caa","gitDecoration.ignoredResourceForeground":"#6e6a86","gitDecoration.modifiedResourceForeground":"#ea9a97","gitDecoration.renamedResourceForeground":"#3e8fb0","gitDecoration.stageDeletedResourceForeground":"#eb6f92","gitDecoration.stageModifiedResourceForeground":"#c4a7e7","gitDecoration.submoduleResourceForeground":"#f6c177","gitDecoration.untrackedResourceForeground":"#f6c177","icon.foreground":"#908caa","input.background":"#39355280","input.border":"#817c9c26","input.foreground":"#e0def4","input.placeholderForeground":"#908caa","inputOption.activeBackground":"#ea9a9726","inputOption.activeBorder":"#0000","inputOption.activeForeground":"#ea9a97","inputValidation.errorBackground":"#2a273f","inputValidation.errorBorder":"#817c9c4d","inputValidation.errorForeground":"#eb6f92","inputValidation.infoBackground":"#2a273f","inputValidation.infoBorder":"#817c9c4d","inputValidation.infoForeground":"#9ccfd8","inputValidation.warningBackground":"#2a273f","inputValidation.warningBorder":"#817c9c4d","inputValidation.warningForeground":"#9ccfd880","keybindingLabel.background":"#393552","keybindingLabel.border":"#817c9c4d","keybindingLabel.bottomBorder":"#817c9c4d","keybindingLabel.foreground":"#c4a7e7","keybindingTable.headerBackground":"#393552","keybindingTable.rowsBackground":"#2a273f","list.activeSelectionBackground":"#817c9c26","list.activeSelectionForeground":"#e0def4","list.deemphasizedForeground":"#908caa","list.dropBackground":"#2a273f","list.errorForeground":"#eb6f92","list.filterMatchBackground":"#2a273f","list.filterMatchBorder":"#ea9a97","list.focusBackground":"#817c9c4d","list.focusForeground":"#e0def4","list.focusOutline":"#817c9c26","list.highlightForeground":"#ea9a97","list.hoverBackground":"#817c9c14","list.hoverForeground":"#e0def4","list.inactiveFocusBackground":"#817c9c14","list.inactiveSelectionBackground":"#2a273f","list.inactiveSelectionForeground":"#e0def4","list.invalidItemForeground":"#eb6f92","list.warningForeground":"#f6c177","listFilterWidget.background":"#2a273f","listFilterWidget.noMatchesOutline":"#eb6f92","listFilterWidget.outline":"#393552","menu.background":"#2a273f","menu.border":"#817c9c14","menu.foreground":"#e0def4","menu.selectionBackground":"#817c9c26","menu.selectionBorder":"#393552","menu.selectionForeground":"#e0def4","menu.separatorBackground":"#817c9c4d","menubar.selectionBackground":"#817c9c26","menubar.selectionBorder":"#817c9c14","menubar.selectionForeground":"#e0def4","merge.border":"#393552","merge.commonContentBackground":"#817c9c26","merge.commonHeaderBackground":"#817c9c26","merge.currentContentBackground":"#f6c17780","merge.currentHeaderBackground":"#f6c17780","merge.incomingContentBackground":"#9ccfd880","merge.incomingHeaderBackground":"#9ccfd880","minimap.background":"#2a273f","minimap.errorHighlight":"#eb6f9280","minimap.findMatchHighlight":"#817c9c26","minimap.selectionHighlight":"#817c9c26","minimap.warningHighlight":"#f6c17780","minimapGutter.addedBackground":"#9ccfd8","minimapGutter.deletedBackground":"#eb6f92","minimapGutter.modifiedBackground":"#ea9a97","minimapSlider.activeBackground":"#817c9c4d","minimapSlider.background":"#817c9c26","minimapSlider.hoverBackground":"#817c9c26","notebook.cellBorderColor":"#9ccfd880","notebook.cellEditorBackground":"#2a273f","notebook.cellHoverBackground":"#39355280","notebook.focusedCellBackground":"#817c9c14","notebook.focusedCellBorder":"#9ccfd8","notebook.outputContainerBackgroundColor":"#817c9c14","notificationCenter.border":"#817c9c26","notificationCenterHeader.background":"#2a273f","notificationCenterHeader.foreground":"#908caa","notificationLink.foreground":"#c4a7e7","notificationToast.border":"#817c9c26","notifications.background":"#2a273f","notifications.border":"#817c9c26","notifications.foreground":"#e0def4","notificationsErrorIcon.foreground":"#eb6f92","notificationsInfoIcon.foreground":"#9ccfd8","notificationsWarningIcon.foreground":"#f6c177","panel.background":"#2a273f","panel.border":"#0000","panel.dropBorder":"#393552","panelInput.border":"#2a273f","panelSection.dropBackground":"#817c9c26","panelSectionHeader.background":"#2a273f","panelSectionHeader.foreground":"#e0def4","panelTitle.activeBorder":"#817c9c4d","panelTitle.activeForeground":"#e0def4","panelTitle.inactiveForeground":"#908caa","peekView.border":"#393552","peekViewEditor.background":"#2a273f","peekViewEditor.matchHighlightBackground":"#817c9c4d","peekViewResult.background":"#2a273f","peekViewResult.fileForeground":"#908caa","peekViewResult.lineForeground":"#908caa","peekViewResult.matchHighlightBackground":"#817c9c4d","peekViewResult.selectionBackground":"#817c9c26","peekViewResult.selectionForeground":"#e0def4","peekViewTitle.background":"#393552","peekViewTitleDescription.foreground":"#908caa","pickerGroup.border":"#817c9c4d","pickerGroup.foreground":"#c4a7e7","ports.iconRunningProcessForeground":"#ea9a97","problemsErrorIcon.foreground":"#eb6f92","problemsInfoIcon.foreground":"#9ccfd8","problemsWarningIcon.foreground":"#f6c177","progressBar.background":"#ea9a97","quickInput.background":"#2a273f","quickInput.foreground":"#908caa","quickInputList.focusBackground":"#817c9c26","quickInputList.focusForeground":"#e0def4","quickInputList.focusIconForeground":"#e0def4","scrollbar.shadow":"#2a273f4d","scrollbarSlider.activeBackground":"#3e8fb080","scrollbarSlider.background":"#817c9c26","scrollbarSlider.hoverBackground":"#817c9c4d","searchEditor.findMatchBackground":"#817c9c26","selection.background":"#817c9c4d","settings.focusedRowBackground":"#2a273f","settings.focusedRowBorder":"#817c9c26","settings.headerForeground":"#e0def4","settings.modifiedItemIndicator":"#ea9a97","settings.rowHoverBackground":"#2a273f","sideBar.background":"#232136","sideBar.dropBackground":"#2a273f","sideBar.foreground":"#908caa","sideBarSectionHeader.background":"#0000","sideBarSectionHeader.border":"#817c9c26","statusBar.background":"#232136","statusBar.debuggingBackground":"#c4a7e7","statusBar.debuggingForeground":"#232136","statusBar.foreground":"#908caa","statusBar.noFolderBackground":"#232136","statusBar.noFolderForeground":"#908caa","statusBarItem.activeBackground":"#817c9c4d","statusBarItem.errorBackground":"#232136","statusBarItem.errorForeground":"#eb6f92","statusBarItem.hoverBackground":"#817c9c26","statusBarItem.prominentBackground":"#393552","statusBarItem.prominentForeground":"#e0def4","statusBarItem.prominentHoverBackground":"#817c9c26","statusBarItem.remoteBackground":"#232136","statusBarItem.remoteForeground":"#f6c177","symbolIcon.arrayForeground":"#908caa","symbolIcon.classForeground":"#908caa","symbolIcon.colorForeground":"#908caa","symbolIcon.constantForeground":"#908caa","symbolIcon.constructorForeground":"#908caa","symbolIcon.enumeratorForeground":"#908caa","symbolIcon.enumeratorMemberForeground":"#908caa","symbolIcon.eventForeground":"#908caa","symbolIcon.fieldForeground":"#908caa","symbolIcon.fileForeground":"#908caa","symbolIcon.folderForeground":"#908caa","symbolIcon.functionForeground":"#908caa","symbolIcon.interfaceForeground":"#908caa","symbolIcon.keyForeground":"#908caa","symbolIcon.keywordForeground":"#908caa","symbolIcon.methodForeground":"#908caa","symbolIcon.moduleForeground":"#908caa","symbolIcon.namespaceForeground":"#908caa","symbolIcon.nullForeground":"#908caa","symbolIcon.numberForeground":"#908caa","symbolIcon.objectForeground":"#908caa","symbolIcon.operatorForeground":"#908caa","symbolIcon.packageForeground":"#908caa","symbolIcon.propertyForeground":"#908caa","symbolIcon.referenceForeground":"#908caa","symbolIcon.snippetForeground":"#908caa","symbolIcon.stringForeground":"#908caa","symbolIcon.structForeground":"#908caa","symbolIcon.textForeground":"#908caa","symbolIcon.typeParameterForeground":"#908caa","symbolIcon.unitForeground":"#908caa","symbolIcon.variableForeground":"#908caa","tab.activeBackground":"#817c9c14","tab.activeForeground":"#e0def4","tab.activeModifiedBorder":"#9ccfd8","tab.border":"#0000","tab.hoverBackground":"#817c9c26","tab.inactiveBackground":"#0000","tab.inactiveForeground":"#908caa","tab.inactiveModifiedBorder":"#9ccfd880","tab.lastPinnedBorder":"#6e6a86","tab.unfocusedActiveBackground":"#0000","tab.unfocusedHoverBackground":"#0000","tab.unfocusedInactiveBackground":"#0000","tab.unfocusedInactiveModifiedBorder":"#9ccfd880","terminal.ansiBlack":"#393552","terminal.ansiBlue":"#9ccfd8","terminal.ansiBrightBlack":"#908caa","terminal.ansiBrightBlue":"#9ccfd8","terminal.ansiBrightCyan":"#ea9a97","terminal.ansiBrightGreen":"#3e8fb0","terminal.ansiBrightMagenta":"#c4a7e7","terminal.ansiBrightRed":"#eb6f92","terminal.ansiBrightWhite":"#e0def4","terminal.ansiBrightYellow":"#f6c177","terminal.ansiCyan":"#ea9a97","terminal.ansiGreen":"#3e8fb0","terminal.ansiMagenta":"#c4a7e7","terminal.ansiRed":"#eb6f92","terminal.ansiWhite":"#e0def4","terminal.ansiYellow":"#f6c177","terminal.dropBackground":"#817c9c26","terminal.foreground":"#e0def4","terminal.selectionBackground":"#817c9c26","terminal.tab.activeBorder":"#e0def4","terminalCursor.background":"#e0def4","terminalCursor.foreground":"#6e6a86","textBlockQuote.background":"#2a273f","textBlockQuote.border":"#817c9c26","textCodeBlock.background":"#2a273f","textLink.activeForeground":"#c4a7e7e6","textLink.foreground":"#c4a7e7","textPreformat.foreground":"#f6c177","textSeparator.foreground":"#908caa","titleBar.activeBackground":"#232136","titleBar.activeForeground":"#908caa","titleBar.inactiveBackground":"#2a273f","titleBar.inactiveForeground":"#908caa","toolbar.activeBackground":"#817c9c4d","toolbar.hoverBackground":"#817c9c26","tree.indentGuidesStroke":"#908caa","walkThrough.embeddedEditorBackground":"#232136","welcomePage.background":"#232136","welcomePage.buttonBackground":"#2a273f","welcomePage.buttonHoverBackground":"#393552","widget.shadow":"#2a273f4d","window.activeBorder":"#2a273f","window.inactiveBorder":"#2a273f"},"displayName":"Ros\xE9 Pine Moon","name":"rose-pine-moon","tokenColors":[{"scope":["comment"],"settings":{"fontStyle":"italic","foreground":"#6e6a86"}},{"scope":["constant"],"settings":{"foreground":"#3e8fb0"}},{"scope":["constant.numeric","constant.language"],"settings":{"foreground":"#ea9a97"}},{"scope":["entity.name"],"settings":{"foreground":"#ea9a97"}},{"scope":["entity.name.section","entity.name.tag","entity.name.namespace","entity.name.type"],"settings":{"foreground":"#9ccfd8"}},{"scope":["entity.other.attribute-name","entity.other.inherited-class"],"settings":{"fontStyle":"italic","foreground":"#c4a7e7"}},{"scope":["invalid"],"settings":{"foreground":"#eb6f92"}},{"scope":["invalid.deprecated"],"settings":{"foreground":"#908caa"}},{"scope":["keyword","variable.language.this"],"settings":{"foreground":"#3e8fb0"}},{"scope":["markup.inserted.diff"],"settings":{"foreground":"#9ccfd8"}},{"scope":["markup.deleted.diff"],"settings":{"foreground":"#eb6f92"}},{"scope":"markup.heading","settings":{"fontStyle":"bold"}},{"scope":"markup.bold.markdown","settings":{"fontStyle":"bold"}},{"scope":"markup.italic.markdown","settings":{"fontStyle":"italic"}},{"scope":["meta.diff.range"],"settings":{"foreground":"#c4a7e7"}},{"scope":["meta.tag","meta.brace"],"settings":{"foreground":"#e0def4"}},{"scope":["meta.import","meta.export"],"settings":{"foreground":"#3e8fb0"}},{"scope":"meta.directive.vue","settings":{"fontStyle":"italic","foreground":"#c4a7e7"}},{"scope":"meta.property-name.css","settings":{"foreground":"#9ccfd8"}},{"scope":"meta.property-value.css","settings":{"foreground":"#f6c177"}},{"scope":"meta.tag.other.html","settings":{"foreground":"#908caa"}},{"scope":["punctuation"],"settings":{"foreground":"#908caa"}},{"scope":["punctuation.accessor"],"settings":{"foreground":"#3e8fb0"}},{"scope":["punctuation.definition.string"],"settings":{"foreground":"#f6c177"}},{"scope":["punctuation.definition.tag"],"settings":{"foreground":"#6e6a86"}},{"scope":["storage.type","storage.modifier"],"settings":{"foreground":"#3e8fb0"}},{"scope":["string"],"settings":{"foreground":"#f6c177"}},{"scope":["support"],"settings":{"foreground":"#9ccfd8"}},{"scope":["support.constant"],"settings":{"foreground":"#f6c177"}},{"scope":["support.function"],"settings":{"fontStyle":"italic","foreground":"#eb6f92"}},{"scope":["variable"],"settings":{"fontStyle":"italic","foreground":"#ea9a97"}},{"scope":["variable.other","variable.language","variable.function","variable.argument"],"settings":{"foreground":"#e0def4"}},{"scope":["variable.parameter"],"settings":{"foreground":"#c4a7e7"}}],"type":"dark"}'))});var w3={};x(w3,{default:()=>Fce});var Fce,k3=_(()=>{Fce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#222222","activityBarBadge.background":"#1D978D","button.background":"#0077B5","button.foreground":"#FFF","button.hoverBackground":"#005076","debugExceptionWidget.background":"#141414","debugExceptionWidget.border":"#FFF","debugToolBar.background":"#141414","editor.background":"#222222","editor.foreground":"#E6E6E6","editor.inactiveSelectionBackground":"#3a3d41","editor.lineHighlightBackground":"#141414","editor.lineHighlightBorder":"#141414","editor.selectionHighlightBackground":"#add6ff26","editorIndentGuide.activeBackground":"#707070","editorIndentGuide.background":"#404040","editorLink.activeForeground":"#0077B5","editorSuggestWidget.selectedBackground":"#0077B5","extensionButton.prominentBackground":"#0077B5","extensionButton.prominentForeground":"#FFF","extensionButton.prominentHoverBackground":"#005076","focusBorder":"#0077B5","gitDecoration.addedResourceForeground":"#ECB22E","gitDecoration.conflictingResourceForeground":"#FFF","gitDecoration.deletedResourceForeground":"#FFF","gitDecoration.ignoredResourceForeground":"#877583","gitDecoration.modifiedResourceForeground":"#ECB22E","gitDecoration.untrackedResourceForeground":"#ECB22E","input.placeholderForeground":"#7A7A7A","list.activeSelectionBackground":"#222222","list.dropBackground":"#383b3d","list.focusBackground":"#0077B5","list.hoverBackground":"#222222","menu.background":"#252526","menu.foreground":"#E6E6E6","notificationLink.foreground":"#0077B5","settings.numberInputBackground":"#292929","settings.textInputBackground":"#292929","sideBarSectionHeader.background":"#222222","sideBarTitle.foreground":"#E6E6E6","statusBar.background":"#222222","statusBar.debuggingBackground":"#1D978D","statusBar.noFolderBackground":"#141414","textLink.activeForeground":"#0077B5","textLink.foreground":"#0077B5","titleBar.activeBackground":"#222222","titleBar.activeForeground":"#E6E6E6","titleBar.inactiveBackground":"#222222","titleBar.inactiveForeground":"#7A7A7A"},"displayName":"Slack Dark","name":"slack-dark","tokenColors":[{"scope":["meta.embedded","source.groovy.embedded"],"settings":{"foreground":"#D4D4D4"}},{"scope":"emphasis","settings":{"fontStyle":"italic"}},{"scope":"strong","settings":{"fontStyle":"bold"}},{"scope":"header","settings":{"foreground":"#000080"}},{"scope":"comment","settings":{"foreground":"#6A9955"}},{"scope":"constant.language","settings":{"foreground":"#569cd6"}},{"scope":["constant.numeric"],"settings":{"foreground":"#b5cea8"}},{"scope":"constant.regexp","settings":{"foreground":"#646695"}},{"scope":"entity.name.tag","settings":{"foreground":"#569cd6"}},{"scope":"entity.name.tag.css","settings":{"foreground":"#d7ba7d"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#9cdcfe"}},{"scope":["entity.other.attribute-name.class.css","entity.other.attribute-name.class.mixin.css","entity.other.attribute-name.id.css","entity.other.attribute-name.parent-selector.css","entity.other.attribute-name.pseudo-class.css","entity.other.attribute-name.pseudo-element.css","source.css.less entity.other.attribute-name.id","entity.other.attribute-name.attribute.scss","entity.other.attribute-name.scss"],"settings":{"foreground":"#d7ba7d"}},{"scope":"invalid","settings":{"foreground":"#f44747"}},{"scope":"markup.underline","settings":{"fontStyle":"underline"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#569cd6"}},{"scope":"markup.heading","settings":{"fontStyle":"bold","foreground":"#569cd6"}},{"scope":"markup.italic","settings":{"fontStyle":"italic"}},{"scope":"markup.inserted","settings":{"foreground":"#b5cea8"}},{"scope":"markup.deleted","settings":{"foreground":"#ce9178"}},{"scope":"markup.changed","settings":{"foreground":"#569cd6"}},{"scope":"punctuation.definition.quote.begin.markdown","settings":{"foreground":"#6A9955"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#6796e6"}},{"scope":"markup.inline.raw","settings":{"foreground":"#ce9178"}},{"scope":"punctuation.definition.tag","settings":{"foreground":"#808080"}},{"scope":"meta.preprocessor","settings":{"foreground":"#569cd6"}},{"scope":"meta.preprocessor.string","settings":{"foreground":"#ce9178"}},{"scope":"meta.preprocessor.numeric","settings":{"foreground":"#b5cea8"}},{"scope":"meta.structure.dictionary.key.python","settings":{"foreground":"#9cdcfe"}},{"scope":"meta.diff.header","settings":{"foreground":"#569cd6"}},{"scope":"storage","settings":{"foreground":"#569cd6"}},{"scope":"storage.type","settings":{"foreground":"#569cd6"}},{"scope":"storage.modifier","settings":{"foreground":"#569cd6"}},{"scope":"string","settings":{"foreground":"#ce9178"}},{"scope":"string.tag","settings":{"foreground":"#ce9178"}},{"scope":"string.value","settings":{"foreground":"#ce9178"}},{"scope":"string.regexp","settings":{"foreground":"#d16969"}},{"scope":["punctuation.definition.template-expression.begin","punctuation.definition.template-expression.end","punctuation.section.embedded"],"settings":{"foreground":"#569cd6"}},{"scope":["meta.template.expression"],"settings":{"foreground":"#d4d4d4"}},{"scope":["support.type.vendored.property-name","support.type.property-name","variable.css","variable.scss","variable.other.less","source.coffee.embedded"],"settings":{"foreground":"#9cdcfe"}},{"scope":"keyword","settings":{"foreground":"#569cd6"}},{"scope":"keyword.control","settings":{"foreground":"#569cd6"}},{"scope":"keyword.operator","settings":{"foreground":"#d4d4d4"}},{"scope":["keyword.operator.new","keyword.operator.expression","keyword.operator.cast","keyword.operator.sizeof","keyword.operator.instanceof","keyword.operator.logical.python"],"settings":{"foreground":"#569cd6"}},{"scope":"keyword.other.unit","settings":{"foreground":"#b5cea8"}},{"scope":["punctuation.section.embedded.begin.php","punctuation.section.embedded.end.php"],"settings":{"foreground":"#569cd6"}},{"scope":"support.function.git-rebase","settings":{"foreground":"#9cdcfe"}},{"scope":"constant.sha.git-rebase","settings":{"foreground":"#b5cea8"}},{"scope":["storage.modifier.import.java","variable.language.wildcard.java","storage.modifier.package.java"],"settings":{"foreground":"#d4d4d4"}},{"scope":"variable.language","settings":{"foreground":"#569cd6"}},{"scope":["entity.name.function","support.function","support.constant.handlebars"],"settings":{"foreground":"#DCDCAA"}},{"scope":["meta.return-type","support.class","support.type","entity.name.type","entity.name.class","storage.type.numeric.go","storage.type.byte.go","storage.type.boolean.go","storage.type.string.go","storage.type.uintptr.go","storage.type.error.go","storage.type.rune.go","storage.type.cs","storage.type.generic.cs","storage.type.modifier.cs","storage.type.variable.cs","storage.type.annotation.java","storage.type.generic.java","storage.type.java","storage.type.object.array.java","storage.type.primitive.array.java","storage.type.primitive.java","storage.type.token.java","storage.type.groovy","storage.type.annotation.groovy","storage.type.parameters.groovy","storage.type.generic.groovy","storage.type.object.array.groovy","storage.type.primitive.array.groovy","storage.type.primitive.groovy"],"settings":{"foreground":"#4EC9B0"}},{"scope":["meta.type.cast.expr","meta.type.new.expr","support.constant.math","support.constant.dom","support.constant.json","entity.other.inherited-class"],"settings":{"foreground":"#4EC9B0"}},{"scope":"keyword.control","settings":{"foreground":"#C586C0"}},{"scope":["variable","meta.definition.variable.name","support.variable","entity.name.variable"],"settings":{"foreground":"#9CDCFE"}},{"scope":["meta.object-literal.key"],"settings":{"foreground":"#9CDCFE"}},{"scope":["support.constant.property-value","support.constant.font-name","support.constant.media-type","support.constant.media","constant.other.color.rgb-value","constant.other.rgb-value","support.constant.color"],"settings":{"foreground":"#CE9178"}},{"scope":["punctuation.definition.group.regexp","punctuation.definition.group.assertion.regexp","punctuation.definition.character-class.regexp","punctuation.character.set.begin.regexp","punctuation.character.set.end.regexp","keyword.operator.negation.regexp","support.other.parenthesis.regexp"],"settings":{"foreground":"#CE9178"}},{"scope":["constant.character.character-class.regexp","constant.other.character-class.set.regexp","constant.other.character-class.regexp","constant.character.set.regexp"],"settings":{"foreground":"#d16969"}},{"scope":["keyword.operator.or.regexp","keyword.control.anchor.regexp"],"settings":{"foreground":"#DCDCAA"}},{"scope":"keyword.operator.quantifier.regexp","settings":{"foreground":"#d7ba7d"}},{"scope":"constant.character","settings":{"foreground":"#569cd6"}},{"scope":"constant.character.escape","settings":{"foreground":"#d7ba7d"}},{"scope":"token.info-token","settings":{"foreground":"#6796e6"}},{"scope":"token.warn-token","settings":{"foreground":"#cd9731"}},{"scope":"token.error-token","settings":{"foreground":"#f44747"}},{"scope":"token.debug-token","settings":{"foreground":"#b267e6"}}],"type":"dark"}'))});var C3={};x(C3,{default:()=>Sce});var Sce,_3=_(()=>{Sce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#161F26","activityBar.dropBackground":"#FFF","activityBar.foreground":"#FFF","activityBarBadge.background":"#8AE773","activityBarBadge.foreground":"#FFF","badge.background":"#8AE773","breadcrumb.focusForeground":"#475663","breadcrumb.foreground":"#161F26","button.background":"#475663","button.foreground":"#FFF","button.hoverBackground":"#161F26","debugExceptionWidget.background":"#AED4FB","debugExceptionWidget.border":"#161F26","debugToolBar.background":"#161F26","dropdown.background":"#FFF","dropdown.border":"#DCDEDF","dropdown.foreground":"#DCDEDF","dropdown.listBackground":"#FFF","editor.background":"#FFF","editor.findMatchBackground":"#AED4FB","editor.foreground":"#000","editor.lineHighlightBackground":"#EEEEEE","editor.selectionBackground":"#AED4FB","editor.wordHighlightBackground":"#AED4FB","editor.wordHighlightStrongBackground":"#EEEEEE","editorActiveLineNumber.foreground":"#475663","editorGroup.emptyBackground":"#2D3E4C","editorGroup.focusedEmptyBorder":"#2D3E4C","editorGroupHeader.tabsBackground":"#2D3E4C","editorHint.border":"#F9F9F9","editorHint.foreground":"#F9F9F9","editorIndentGuide.activeBackground":"#dbdbdb","editorIndentGuide.background":"#F3F3F3","editorLineNumber.foreground":"#b9b9b9","editorMarkerNavigation.background":"#F9F9F9","editorMarkerNavigationError.background":"#F44C5E","editorMarkerNavigationInfo.background":"#6182b8","editorMarkerNavigationWarning.background":"#F6B555","editorPane.background":"#2D3E4C","editorSuggestWidget.foreground":"#2D3E4C","editorSuggestWidget.highlightForeground":"#2D3E4C","editorSuggestWidget.selectedBackground":"#b9b9b9","editorWidget.background":"#F9F9F9","editorWidget.border":"#dbdbdb","extensionButton.prominentBackground":"#475663","extensionButton.prominentForeground":"#F6F6F6","extensionButton.prominentHoverBackground":"#161F26","focusBorder":"#161F26","foreground":"#616161","gitDecoration.addedResourceForeground":"#ECB22E","gitDecoration.conflictingResourceForeground":"#FFF","gitDecoration.deletedResourceForeground":"#FFF","gitDecoration.ignoredResourceForeground":"#877583","gitDecoration.modifiedResourceForeground":"#ECB22E","gitDecoration.untrackedResourceForeground":"#ECB22E","input.background":"#FFF","input.border":"#161F26","input.foreground":"#000","input.placeholderForeground":"#a0a0a0","inputOption.activeBorder":"#3E313C","inputValidation.errorBackground":"#F44C5E","inputValidation.errorForeground":"#FFF","inputValidation.infoBackground":"#6182b8","inputValidation.infoForeground":"#FFF","inputValidation.warningBackground":"#F6B555","inputValidation.warningForeground":"#000","list.activeSelectionBackground":"#5899C5","list.activeSelectionForeground":"#fff","list.focusBackground":"#d5e1ea","list.focusForeground":"#fff","list.highlightForeground":"#2D3E4C","list.hoverBackground":"#d5e1ea","list.hoverForeground":"#fff","list.inactiveFocusBackground":"#161F26","list.inactiveSelectionBackground":"#5899C5","list.inactiveSelectionForeground":"#fff","list.invalidItemForeground":"#fff","menu.background":"#161F26","menu.foreground":"#F9FAFA","menu.separatorBackground":"#F9FAFA","notificationCenter.border":"#161F26","notificationCenterHeader.foreground":"#FFF","notificationLink.foreground":"#FFF","notificationToast.border":"#161F26","notifications.background":"#161F26","notifications.border":"#161F26","notifications.foreground":"#FFF","panel.border":"#2D3E4C","panelTitle.activeForeground":"#161F26","progressBar.background":"#8AE773","scrollbar.shadow":"#ffffff00","scrollbarSlider.activeBackground":"#161F267e","scrollbarSlider.background":"#161F267e","scrollbarSlider.hoverBackground":"#161F267e","settings.dropdownBorder":"#161F26","settings.dropdownForeground":"#161F26","settings.headerForeground":"#161F26","sideBar.background":"#2D3E4C","sideBar.foreground":"#DCDEDF","sideBarSectionHeader.background":"#161F26","sideBarSectionHeader.foreground":"#FFF","sideBarTitle.foreground":"#FFF","statusBar.background":"#5899C5","statusBar.debuggingBackground":"#8AE773","statusBar.foreground":"#FFF","statusBar.noFolderBackground":"#161F26","tab.activeBackground":"#FFF","tab.activeForeground":"#000","tab.border":"#F3F3F3","tab.inactiveBackground":"#F3F3F3","tab.inactiveForeground":"#686868","terminal.ansiBlack":"#000000","terminal.ansiBlue":"#6182b8","terminal.ansiBrightBlack":"#90a4ae","terminal.ansiBrightBlue":"#6182b8","terminal.ansiBrightCyan":"#39adb5","terminal.ansiBrightGreen":"#91b859","terminal.ansiBrightMagenta":"#7c4dff","terminal.ansiBrightRed":"#e53935","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#ffb62c","terminal.ansiCyan":"#39adb5","terminal.ansiGreen":"#91b859","terminal.ansiMagenta":"#7c4dff","terminal.ansiRed":"#e53935","terminal.ansiWhite":"#ffffff","terminal.ansiYellow":"#ffb62c","terminal.border":"#2D3E4C","terminal.foreground":"#161F26","terminal.selectionBackground":"#0006","textPreformat.foreground":"#161F26","titleBar.activeBackground":"#2D3E4C","titleBar.activeForeground":"#FFF","titleBar.border":"#2D3E4C","titleBar.inactiveBackground":"#161F26","titleBar.inactiveForeground":"#685C66","welcomePage.buttonBackground":"#F3F3F3","welcomePage.buttonHoverBackground":"#ECECEC","widget.shadow":"#161F2694"},"displayName":"Slack Ochin","name":"slack-ochin","tokenColors":[{"settings":{"foreground":"#002339"}},{"scope":["meta.paragraph.markdown","string.other.link.description.title.markdown"],"settings":{"foreground":"#110000"}},{"scope":["entity.name.section.markdown","punctuation.definition.heading.markdown"],"settings":{"foreground":"#034c7c"}},{"scope":["punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown","markup.quote.markdown"],"settings":{"foreground":"#00AC8F"}},{"scope":["markup.quote.markdown"],"settings":{"fontStyle":"italic","foreground":"#003494"}},{"scope":["markup.bold.markdown","punctuation.definition.bold.markdown"],"settings":{"fontStyle":"bold","foreground":"#4e76b5"}},{"scope":["markup.italic.markdown","punctuation.definition.italic.markdown"],"settings":{"fontStyle":"italic","foreground":"#C792EA"}},{"scope":["markup.inline.raw.string.markdown","markup.fenced_code.block.markdown"],"settings":{"fontStyle":"italic","foreground":"#0460b1"}},{"scope":["punctuation.definition.metadata.markdown"],"settings":{"foreground":"#00AC8F"}},{"scope":["markup.underline.link.image.markdown","markup.underline.link.markdown"],"settings":{"foreground":"#924205"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#357b42"}},{"scope":"string","settings":{"foreground":"#a44185"}},{"scope":"constant.numeric","settings":{"foreground":"#174781"}},{"scope":"constant","settings":{"foreground":"#174781"}},{"scope":"language.method","settings":{"foreground":"#174781"}},{"scope":["constant.character","constant.other"],"settings":{"foreground":"#174781"}},{"scope":"variable","settings":{"fontStyle":"","foreground":"#2f86d2"}},{"scope":"variable.language.this","settings":{"fontStyle":"","foreground":"#000000"}},{"scope":"keyword","settings":{"fontStyle":"","foreground":"#7b30d0"}},{"scope":"storage","settings":{"fontStyle":"","foreground":"#da5221"}},{"scope":"storage.type","settings":{"fontStyle":"","foreground":"#0991b6"}},{"scope":"entity.name.class","settings":{"foreground":"#1172c7"}},{"scope":"entity.other.inherited-class","settings":{"fontStyle":"","foreground":"#b02767"}},{"scope":"entity.name.function","settings":{"fontStyle":"","foreground":"#7eb233"}},{"scope":"variable.parameter","settings":{"fontStyle":"","foreground":"#b1108e"}},{"scope":"entity.name.tag","settings":{"fontStyle":"","foreground":"#0444ac"}},{"scope":"text.html.basic","settings":{"fontStyle":"","foreground":"#0071ce"}},{"scope":"entity.name.type","settings":{"foreground":"#0444ac"}},{"scope":"entity.other.attribute-name","settings":{"fontStyle":"italic","foreground":"#df8618"}},{"scope":"support.function","settings":{"fontStyle":"","foreground":"#1ab394"}},{"scope":"support.constant","settings":{"fontStyle":"","foreground":"#174781"}},{"scope":["support.type","support.class"],"settings":{"foreground":"#dc3eb7"}},{"scope":"support.other.variable","settings":{"foreground":"#224555"}},{"scope":"invalid","settings":{"fontStyle":" italic bold underline","foreground":"#207bb8"}},{"scope":"invalid.deprecated","settings":{"fontStyle":" bold italic underline","foreground":"#207bb8"}},{"scope":"source.json support","settings":{"foreground":"#6dbdfa"}},{"scope":["source.json string","source.json punctuation.definition.string"],"settings":{"foreground":"#00820f"}},{"scope":"markup.list","settings":{"foreground":"#207bb8"}},{"scope":["markup.heading punctuation.definition.heading","entity.name.section"],"settings":{"fontStyle":"","foreground":"#4FB4D8"}},{"scope":["text.html.markdown meta.paragraph meta.link.inline","text.html.markdown meta.paragraph meta.link.inline punctuation.definition.string.begin.markdown","text.html.markdown meta.paragraph meta.link.inline punctuation.definition.string.end.markdown"],"settings":{"foreground":"#87429A"}},{"scope":"markup.quote","settings":{"foreground":"#87429A"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#08134A"}},{"scope":["markup.italic","punctuation.definition.italic"],"settings":{"fontStyle":"italic","foreground":"#174781"}},{"scope":"meta.link","settings":{"foreground":"#87429A"}}],"type":"light"}'))});var B3={};x(B3,{default:()=>Oce});var Oce,x3=_(()=>{Oce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#E7E8E6","activityBar.foreground":"#2DAE58","activityBar.inactiveForeground":"#68696888","activityBarBadge.background":"#09A1ED","badge.background":"#09A1ED","badge.foreground":"#ffffff","button.background":"#2DAE58","debugExceptionWidget.background":"#FFAEAC33","debugExceptionWidget.border":"#FF5C57","debugToolBar.border":"#E9EAEB","diffEditor.insertedTextBackground":"#2DAE5824","diffEditor.removedTextBackground":"#FFAEAC44","dropdown.border":"#E9EAEB","editor.background":"#FAFBFC","editor.findMatchBackground":"#00E6E06A","editor.findMatchHighlightBackground":"#00E6E02A","editor.findRangeHighlightBackground":"#F5B90011","editor.focusedStackFrameHighlightBackground":"#2DAE5822","editor.foreground":"#565869","editor.hoverHighlightBackground":"#00E6E018","editor.rangeHighlightBackground":"#F5B90033","editor.selectionBackground":"#2DAE5822","editor.snippetTabstopHighlightBackground":"#ADB1C23A","editor.stackFrameHighlightBackground":"#F5B90033","editor.wordHighlightBackground":"#ADB1C23A","editorError.foreground":"#FF5C56","editorGroup.emptyBackground":"#F3F4F5","editorGutter.addedBackground":"#2DAE58","editorGutter.deletedBackground":"#FF5C57","editorGutter.modifiedBackground":"#00A39FAA","editorInlayHint.background":"#E9EAEB","editorInlayHint.foreground":"#565869","editorLineNumber.activeForeground":"#35CF68","editorLineNumber.foreground":"#9194A2aa","editorLink.activeForeground":"#35CF68","editorOverviewRuler.addedForeground":"#2DAE58","editorOverviewRuler.deletedForeground":"#FF5C57","editorOverviewRuler.errorForeground":"#FF5C56","editorOverviewRuler.findMatchForeground":"#13BBB7AA","editorOverviewRuler.modifiedForeground":"#00A39FAA","editorOverviewRuler.warningForeground":"#CF9C00","editorOverviewRuler.wordHighlightForeground":"#ADB1C288","editorOverviewRuler.wordHighlightStrongForeground":"#35CF68","editorWarning.foreground":"#CF9C00","editorWhitespace.foreground":"#ADB1C255","extensionButton.prominentBackground":"#2DAE58","extensionButton.prominentHoverBackground":"#238744","focusBorder":"#09A1ED","foreground":"#686968","gitDecoration.modifiedResourceForeground":"#00A39F","gitDecoration.untrackedResourceForeground":"#2DAE58","input.border":"#E9EAEB","list.activeSelectionBackground":"#09A1ED","list.activeSelectionForeground":"#ffffff","list.errorForeground":"#FF5C56","list.focusBackground":"#BCE7FC99","list.focusForeground":"#11658F","list.hoverBackground":"#E9EAEB","list.inactiveSelectionBackground":"#89B5CB33","list.warningForeground":"#B38700","menu.background":"#FAFBFC","menu.selectionBackground":"#E9EAEB","menu.selectionForeground":"#686968","menubar.selectionBackground":"#E9EAEB","menubar.selectionForeground":"#686968","merge.currentContentBackground":"#35CF6833","merge.currentHeaderBackground":"#35CF6866","merge.incomingContentBackground":"#14B1FF33","merge.incomingHeaderBackground":"#14B1FF77","peekView.border":"#09A1ED","peekViewEditor.background":"#14B1FF08","peekViewEditor.matchHighlightBackground":"#F5B90088","peekViewEditor.matchHighlightBorder":"#F5B900","peekViewEditorStickyScroll.background":"#EDF4FB","peekViewResult.matchHighlightBackground":"#F5B90088","peekViewResult.selectionBackground":"#09A1ED","peekViewResult.selectionForeground":"#FFFFFF","peekViewTitle.background":"#09A1ED11","selection.background":"#2DAE5844","settings.modifiedItemIndicator":"#13BBB7","sideBar.background":"#F3F4F5","sideBar.border":"#DEDFE0","sideBarSectionHeader.background":"#E9EAEB","sideBarSectionHeader.border":"#DEDFE0","statusBar.background":"#2DAE58","statusBar.debuggingBackground":"#13BBB7","statusBar.debuggingBorder":"#00A39F","statusBar.noFolderBackground":"#565869","statusBarItem.remoteBackground":"#238744","tab.activeBorderTop":"#2DAE58","terminal.ansiBlack":"#565869","terminal.ansiBlue":"#09A1ED","terminal.ansiBrightBlack":"#75798F","terminal.ansiBrightBlue":"#14B1FF","terminal.ansiBrightCyan":"#13BBB7","terminal.ansiBrightGreen":"#35CF68","terminal.ansiBrightMagenta":"#FF94D2","terminal.ansiBrightRed":"#FFAEAC","terminal.ansiBrightWhite":"#FFFFFF","terminal.ansiBrightYellow":"#F5B900","terminal.ansiCyan":"#13BBB7","terminal.ansiGreen":"#2DAE58","terminal.ansiMagenta":"#F767BB","terminal.ansiRed":"#FF5C57","terminal.ansiWhite":"#FAFBF9","terminal.ansiYellow":"#CF9C00","titleBar.activeBackground":"#F3F4F5"},"displayName":"Snazzy Light","name":"snazzy-light","tokenColors":[{"scope":"invalid.illegal","settings":{"foreground":"#FF5C56"}},{"scope":["meta.object-literal.key","meta.object-literal.key constant.character.escape","meta.object-literal string","meta.object-literal string constant.character.escape","support.type.property-name","support.type.property-name constant.character.escape"],"settings":{"foreground":"#11658F"}},{"scope":["keyword","storage","meta.class storage.type","keyword.operator.expression.import","keyword.operator.new","keyword.operator.expression.delete"],"settings":{"foreground":"#F767BB"}},{"scope":["support.type","meta.type.annotation entity.name.type","new.expr meta.type.parameters entity.name.type","storage.type.primitive","storage.type.built-in.primitive","meta.function.parameter storage.type"],"settings":{"foreground":"#2DAE58"}},{"scope":["storage.type.annotation"],"settings":{"foreground":"#C25193"}},{"scope":"keyword.other.unit","settings":{"foreground":"#FF5C57CC"}},{"scope":["constant.language","support.constant","variable.language"],"settings":{"foreground":"#2DAE58"}},{"scope":["variable","support.variable"],"settings":{"foreground":"#565869"}},{"scope":"variable.language.this","settings":{"foreground":"#13BBB7"}},{"scope":["entity.name.function","support.function"],"settings":{"foreground":"#09A1ED"}},{"scope":["entity.name.function.decorator"],"settings":{"foreground":"#11658F"}},{"scope":["meta.class entity.name.type","new.expr entity.name.type","entity.other.inherited-class","support.class"],"settings":{"foreground":"#13BBB7"}},{"scope":["keyword.preprocessor.pragma","keyword.control.directive.include","keyword.other.preprocessor"],"settings":{"foreground":"#11658F"}},{"scope":"entity.name.exception","settings":{"foreground":"#FF5C56"}},{"scope":"entity.name.section","settings":{}},{"scope":["constant.numeric"],"settings":{"foreground":"#FF5C57"}},{"scope":["constant","constant.character"],"settings":{"foreground":"#2DAE58"}},{"scope":"string","settings":{"foreground":"#CF9C00"}},{"scope":"string","settings":{"foreground":"#CF9C00"}},{"scope":"constant.character.escape","settings":{"foreground":"#F5B900"}},{"scope":["string.regexp","string.regexp constant.character.escape"],"settings":{"foreground":"#13BBB7"}},{"scope":["keyword.operator.quantifier.regexp","keyword.operator.negation.regexp","keyword.operator.or.regexp","string.regexp punctuation","string.regexp keyword","string.regexp keyword.control","string.regexp constant","variable.other.regexp"],"settings":{"foreground":"#00A39F"}},{"scope":["string.regexp keyword.other"],"settings":{"foreground":"#00A39F88"}},{"scope":"constant.other.symbol","settings":{"foreground":"#CF9C00"}},{"scope":["comment","punctuation.definition.comment"],"settings":{"foreground":"#ADB1C2"}},{"scope":"comment.block.preprocessor","settings":{"fontStyle":"","foreground":"#9194A2"}},{"scope":"comment.block.documentation entity.name.type","settings":{"foreground":"#2DAE58"}},{"scope":["comment.block.documentation storage","comment.block.documentation keyword.other","meta.class comment.block.documentation storage.type"],"settings":{"foreground":"#9194A2"}},{"scope":["comment.block.documentation variable"],"settings":{"foreground":"#C25193"}},{"scope":["punctuation"],"settings":{"foreground":"#ADB1C2"}},{"scope":["keyword.operator","keyword.other.arrow","keyword.control.@"],"settings":{"foreground":"#ADB1C2"}},{"scope":["meta.tag.metadata.doctype.html entity.name.tag","meta.tag.metadata.doctype.html entity.other.attribute-name.html","meta.tag.sgml.doctype","meta.tag.sgml.doctype string","meta.tag.sgml.doctype entity.name.tag","meta.tag.sgml punctuation.definition.tag.html"],"settings":{"foreground":"#9194A2"}},{"scope":["meta.tag","punctuation.definition.tag.html","punctuation.definition.tag.begin.html","punctuation.definition.tag.end.html"],"settings":{"foreground":"#ADB1C2"}},{"scope":["entity.name.tag"],"settings":{"foreground":"#13BBB7"}},{"scope":["meta.tag entity.other.attribute-name","entity.other.attribute-name.html"],"settings":{"foreground":"#FF8380"}},{"scope":["constant.character.entity","punctuation.definition.entity"],"settings":{"foreground":"#CF9C00"}},{"scope":["source.css"],"settings":{"foreground":"#ADB1C2"}},{"scope":["meta.selector","meta.selector entity","meta.selector entity punctuation","source.css entity.name.tag"],"settings":{"foreground":"#F767BB"}},{"scope":["keyword.control.at-rule","keyword.control.at-rule punctuation.definition.keyword"],"settings":{"foreground":"#C25193"}},{"scope":"source.css variable","settings":{"foreground":"#11658F"}},{"scope":["source.css meta.property-name","source.css support.type.property-name"],"settings":{"foreground":"#565869"}},{"scope":["source.css support.type.vendored.property-name"],"settings":{"foreground":"#565869AA"}},{"scope":["meta.property-value","support.constant.property-value"],"settings":{"foreground":"#13BBB7"}},{"scope":["source.css support.constant"],"settings":{"foreground":"#2DAE58"}},{"scope":["punctuation.definition.entity.css","keyword.operator.combinator.css"],"settings":{"foreground":"#FF82CBBB"}},{"scope":["source.css support.function"],"settings":{"foreground":"#09A1ED"}},{"scope":"keyword.other.important","settings":{"foreground":"#238744"}},{"scope":["source.css.scss"],"settings":{"foreground":"#F767BB"}},{"scope":["source.css.scss entity.other.attribute-name.class.css","source.css.scss entity.other.attribute-name.id.css"],"settings":{"foreground":"#F767BB"}},{"scope":["entity.name.tag.reference.scss"],"settings":{"foreground":"#C25193"}},{"scope":["source.css.scss meta.at-rule keyword","source.css.scss meta.at-rule keyword punctuation","source.css.scss meta.at-rule operator.logical","keyword.control.content.scss","keyword.control.return.scss","keyword.control.return.scss punctuation.definition.keyword"],"settings":{"foreground":"#C25193"}},{"scope":["meta.at-rule.mixin.scss","meta.at-rule.include.scss","source.css.scss meta.at-rule.if","source.css.scss meta.at-rule.else","source.css.scss meta.at-rule.each","source.css.scss meta.at-rule variable.parameter"],"settings":{"foreground":"#ADB1C2"}},{"scope":["source.css.less entity.other.attribute-name.class.css"],"settings":{"foreground":"#F767BB"}},{"scope":"source.stylus meta.brace.curly.css","settings":{"foreground":"#ADB1C2"}},{"scope":["source.stylus entity.other.attribute-name.class","source.stylus entity.other.attribute-name.id","source.stylus entity.name.tag"],"settings":{"foreground":"#F767BB"}},{"scope":["source.stylus support.type.property-name"],"settings":{"foreground":"#565869"}},{"scope":["source.stylus variable"],"settings":{"foreground":"#11658F"}},{"scope":"markup.changed","settings":{"foreground":"#888888"}},{"scope":"markup.deleted","settings":{"foreground":"#888888"}},{"scope":"markup.italic","settings":{"fontStyle":"italic"}},{"scope":"markup.error","settings":{"foreground":"#FF5C56"}},{"scope":"markup.inserted","settings":{"foreground":"#888888"}},{"scope":"meta.link","settings":{"foreground":"#CF9C00"}},{"scope":"string.other.link.title.markdown","settings":{"foreground":"#09A1ED"}},{"scope":["markup.output","markup.raw"],"settings":{"foreground":"#999999"}},{"scope":"markup.prompt","settings":{"foreground":"#999999"}},{"scope":"markup.heading","settings":{"foreground":"#2DAE58"}},{"scope":"markup.bold","settings":{"fontStyle":"bold"}},{"scope":"markup.traceback","settings":{"foreground":"#FF5C56"}},{"scope":"markup.underline","settings":{"fontStyle":"underline"}},{"scope":"markup.quote","settings":{"foreground":"#777985"}},{"scope":["markup.bold","markup.italic"],"settings":{"foreground":"#13BBB7"}},{"scope":"markup.inline.raw","settings":{"fontStyle":"","foreground":"#F767BB"}},{"scope":["meta.brace.round","meta.brace.square","storage.type.function.arrow"],"settings":{"foreground":"#ADB1C2"}},{"scope":["constant.language.import-export-all","meta.import keyword.control.default"],"settings":{"foreground":"#C25193"}},{"scope":["support.function.js"],"settings":{"foreground":"#11658F"}},{"scope":"string.regexp.js","settings":{"foreground":"#13BBB7"}},{"scope":["variable.language.super","support.type.object.module.js"],"settings":{"foreground":"#F767BB"}},{"scope":"meta.jsx.children","settings":{"foreground":"#686968"}},{"scope":"entity.name.tag.yaml","settings":{"foreground":"#11658F"}},{"scope":"variable.other.alias.yaml","settings":{"foreground":"#2DAE58"}},{"scope":["punctuation.section.embedded.begin.php","punctuation.section.embedded.end.php"],"settings":{"foreground":"#75798F"}},{"scope":["meta.use.php entity.other.alias.php"],"settings":{"foreground":"#13BBB7"}},{"scope":["source.php support.function.construct","source.php support.function.var"],"settings":{"foreground":"#11658F"}},{"scope":["storage.modifier.extends.php","source.php keyword.other","storage.modifier.php"],"settings":{"foreground":"#F767BB"}},{"scope":["meta.class.body.php storage.type.php"],"settings":{"foreground":"#F767BB"}},{"scope":["storage.type.php","meta.class.body.php meta.function-call.php storage.type.php","meta.class.body.php meta.function.php storage.type.php"],"settings":{"foreground":"#2DAE58"}},{"scope":["source.php keyword.other.DML"],"settings":{"foreground":"#D94E4A"}},{"scope":["source.sql.embedded.php keyword.operator"],"settings":{"foreground":"#2DAE58"}},{"scope":["source.ini keyword","source.toml keyword","source.env variable"],"settings":{"foreground":"#11658F"}},{"scope":["source.ini entity.name.section","source.toml entity.other.attribute-name"],"settings":{"foreground":"#F767BB"}},{"scope":["source.go storage.type"],"settings":{"foreground":"#2DAE58"}},{"scope":["keyword.import.go","keyword.package.go"],"settings":{"foreground":"#FF5C56"}},{"scope":["source.reason variable.language string"],"settings":{"foreground":"#565869"}},{"scope":["source.reason support.type","source.reason constant.language","source.reason constant.language constant.numeric","source.reason support.type string.regexp"],"settings":{"foreground":"#2DAE58"}},{"scope":["source.reason keyword.operator keyword.control","source.reason keyword.control.less","source.reason keyword.control.flow"],"settings":{"foreground":"#ADB1C2"}},{"scope":["source.reason string.regexp"],"settings":{"foreground":"#CF9C00"}},{"scope":["source.reason support.property-value"],"settings":{"foreground":"#11658F"}},{"scope":["source.rust support.function.core.rust"],"settings":{"foreground":"#11658F"}},{"scope":["source.rust storage.type.core.rust","source.rust storage.class.std"],"settings":{"foreground":"#2DAE58"}},{"scope":["source.rust entity.name.type.rust"],"settings":{"foreground":"#13BBB7"}},{"scope":["storage.type.function.coffee"],"settings":{"foreground":"#ADB1C2"}},{"scope":["keyword.type.cs","storage.type.cs"],"settings":{"foreground":"#2DAE58"}},{"scope":["entity.name.type.namespace.cs"],"settings":{"foreground":"#13BBB7"}},{"scope":"meta.diff.header","settings":{"foreground":"#11658F"}},{"scope":["markup.inserted.diff"],"settings":{"foreground":"#2DAE58"}},{"scope":["markup.deleted.diff"],"settings":{"foreground":"#FF5C56"}},{"scope":["meta.diff.range","meta.diff.index","meta.separator"],"settings":{"foreground":"#09A1ED"}},{"scope":"source.makefile variable","settings":{"foreground":"#11658F"}},{"scope":["keyword.control.protocol-specification.objc"],"settings":{"foreground":"#F767BB"}},{"scope":["meta.parens storage.type.objc","meta.return-type.objc support.class","meta.return-type.objc storage.type.objc"],"settings":{"foreground":"#2DAE58"}},{"scope":["source.sql keyword"],"settings":{"foreground":"#11658F"}},{"scope":["keyword.other.special-method.dockerfile"],"settings":{"foreground":"#09A1ED"}},{"scope":"constant.other.symbol.elixir","settings":{"foreground":"#11658F"}},{"scope":["storage.type.elm","support.module.elm"],"settings":{"foreground":"#13BBB7"}},{"scope":["source.elm keyword.other"],"settings":{"foreground":"#ADB1C2"}},{"scope":["source.erlang entity.name.type.class"],"settings":{"foreground":"#13BBB7"}},{"scope":["variable.other.field.erlang"],"settings":{"foreground":"#11658F"}},{"scope":["source.erlang constant.other.symbol"],"settings":{"foreground":"#2DAE58"}},{"scope":["storage.type.haskell"],"settings":{"foreground":"#2DAE58"}},{"scope":["meta.declaration.class.haskell storage.type.haskell","meta.declaration.instance.haskell storage.type.haskell"],"settings":{"foreground":"#13BBB7"}},{"scope":["meta.preprocessor.haskell"],"settings":{"foreground":"#75798F"}},{"scope":["source.haskell keyword.control"],"settings":{"foreground":"#F767BB"}},{"scope":["tag.end.latte","tag.begin.latte"],"settings":{"foreground":"#ADB1C2"}},{"scope":"source.po keyword.control","settings":{"foreground":"#11658F"}},{"scope":"source.po storage.type","settings":{"foreground":"#9194A2"}},{"scope":"constant.language.po","settings":{"foreground":"#13BBB7"}},{"scope":"meta.header.po string","settings":{"foreground":"#FF8380"}},{"scope":"source.po meta.header.po","settings":{"foreground":"#ADB1C2"}},{"scope":["source.ocaml markup.underline"],"settings":{"fontStyle":""}},{"scope":["source.ocaml punctuation.definition.tag emphasis","source.ocaml entity.name.class constant.numeric","source.ocaml support.type"],"settings":{"foreground":"#F767BB"}},{"scope":["source.ocaml constant.numeric entity.other.attribute-name"],"settings":{"foreground":"#13BBB7"}},{"scope":["source.ocaml comment meta.separator"],"settings":{"foreground":"#ADB1C2"}},{"scope":["source.ocaml support.type strong","source.ocaml keyword.control strong"],"settings":{"foreground":"#ADB1C2"}},{"scope":["source.ocaml support.constant.property-value"],"settings":{"foreground":"#11658F"}},{"scope":["source.scala entity.name.class"],"settings":{"foreground":"#13BBB7"}},{"scope":["storage.type.scala"],"settings":{"foreground":"#2DAE58"}},{"scope":["variable.parameter.scala"],"settings":{"foreground":"#11658F"}},{"scope":["meta.bracket.scala","meta.colon.scala"],"settings":{"foreground":"#ADB1C2"}},{"scope":["meta.metadata.simple.clojure"],"settings":{"foreground":"#ADB1C2"}},{"scope":["meta.metadata.simple.clojure meta.symbol"],"settings":{"foreground":"#13BBB7"}},{"scope":["source.r keyword.other"],"settings":{"foreground":"#ADB1C2"}},{"scope":["source.svelte meta.block.ts entity.name.label"],"settings":{"foreground":"#11658F"}},{"scope":["keyword.operator.word.applescript"],"settings":{"foreground":"#F767BB"}},{"scope":["meta.function-call.livescript"],"settings":{"foreground":"#09A1ED"}},{"scope":["variable.language.self.lua"],"settings":{"foreground":"#13BBB7"}},{"scope":["entity.name.type.class.swift","meta.inheritance-clause.swift","meta.import.swift entity.name.type"],"settings":{"foreground":"#13BBB7"}},{"scope":["source.swift punctuation.section.embedded"],"settings":{"foreground":"#B38700"}},{"scope":["variable.parameter.function.swift entity.name.function.swift"],"settings":{"foreground":"#565869"}},{"scope":"meta.function-call.twig","settings":{"foreground":"#565869"}},{"scope":"string.unquoted.tag-string.django","settings":{"foreground":"#565869"}},{"scope":["entity.tag.tagbraces.django","entity.tag.filter-pipe.django"],"settings":{"foreground":"#ADB1C2"}},{"scope":["meta.section.attributes.haml constant.language","meta.section.attributes.plain.haml constant.other.symbol"],"settings":{"foreground":"#FF8380"}},{"scope":["meta.prolog.haml"],"settings":{"foreground":"#9194A2"}},{"scope":["support.constant.handlebars"],"settings":{"foreground":"#ADB1C2"}},{"scope":"text.log log.constant","settings":{"foreground":"#C25193"}},{"scope":["source.c string constant.other.placeholder","source.cpp string constant.other.placeholder"],"settings":{"foreground":"#B38700"}},{"scope":"constant.other.key.groovy","settings":{"foreground":"#11658F"}},{"scope":"storage.type.groovy","settings":{"foreground":"#13BBB7"}},{"scope":"meta.definition.variable.groovy storage.type.groovy","settings":{"foreground":"#2DAE58"}},{"scope":"storage.modifier.import.groovy","settings":{"foreground":"#CF9C00"}},{"scope":["entity.other.attribute-name.class.pug","entity.other.attribute-name.id.pug"],"settings":{"foreground":"#13BBB7"}},{"scope":["constant.name.attribute.tag.pug"],"settings":{"foreground":"#ADB1C2"}},{"scope":"entity.name.tag.style.html","settings":{"foreground":"#13BBB7"}},{"scope":"entity.name.type.wasm","settings":{"foreground":"#2DAE58"}}],"type":"light"}'))});var v3={};x(v3,{default:()=>Nce});var Nce,E3=_(()=>{Nce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#003847","badge.background":"#047aa6","button.background":"#2AA19899","debugExceptionWidget.background":"#00212B","debugExceptionWidget.border":"#AB395B","debugToolBar.background":"#00212B","dropdown.background":"#00212B","dropdown.border":"#2AA19899","editor.background":"#002B36","editor.foreground":"#839496","editor.lineHighlightBackground":"#073642","editor.selectionBackground":"#274642","editor.selectionHighlightBackground":"#005A6FAA","editor.wordHighlightBackground":"#004454AA","editor.wordHighlightStrongBackground":"#005A6FAA","editorBracketHighlight.foreground1":"#cdcdcdff","editorBracketHighlight.foreground2":"#b58900ff","editorBracketHighlight.foreground3":"#d33682ff","editorCursor.foreground":"#D30102","editorGroup.border":"#00212B","editorGroup.dropBackground":"#2AA19844","editorGroupHeader.tabsBackground":"#004052","editorHoverWidget.background":"#004052","editorIndentGuide.activeBackground":"#C3E1E180","editorIndentGuide.background":"#93A1A180","editorLineNumber.activeForeground":"#949494","editorMarkerNavigationError.background":"#AB395B","editorMarkerNavigationWarning.background":"#5B7E7A","editorWhitespace.foreground":"#93A1A180","editorWidget.background":"#00212B","errorForeground":"#ffeaea","focusBorder":"#2AA19899","input.background":"#003847","input.foreground":"#93A1A1","input.placeholderForeground":"#93A1A1AA","inputOption.activeBorder":"#2AA19899","inputValidation.errorBackground":"#571b26","inputValidation.errorBorder":"#a92049","inputValidation.infoBackground":"#052730","inputValidation.infoBorder":"#363b5f","inputValidation.warningBackground":"#5d5938","inputValidation.warningBorder":"#9d8a5e","list.activeSelectionBackground":"#005A6F","list.dropBackground":"#00445488","list.highlightForeground":"#1ebcc5","list.hoverBackground":"#004454AA","list.inactiveSelectionBackground":"#00445488","minimap.selectionHighlight":"#274642","panel.border":"#2b2b4a","peekView.border":"#2b2b4a","peekViewEditor.background":"#10192c","peekViewEditor.matchHighlightBackground":"#7744AA40","peekViewResult.background":"#00212B","peekViewTitle.background":"#00212B","pickerGroup.border":"#2AA19899","pickerGroup.foreground":"#2AA19899","ports.iconRunningProcessForeground":"#369432","progressBar.background":"#047aa6","quickInputList.focusBackground":"#005A6F","selection.background":"#2AA19899","sideBar.background":"#00212B","sideBarTitle.foreground":"#93A1A1","statusBar.background":"#00212B","statusBar.debuggingBackground":"#00212B","statusBar.foreground":"#93A1A1","statusBar.noFolderBackground":"#00212B","statusBarItem.prominentBackground":"#003847","statusBarItem.prominentHoverBackground":"#003847","statusBarItem.remoteBackground":"#2AA19899","tab.activeBackground":"#002B37","tab.activeForeground":"#d6dbdb","tab.border":"#003847","tab.inactiveBackground":"#004052","tab.inactiveForeground":"#93A1A1","tab.lastPinnedBorder":"#2AA19844","terminal.ansiBlack":"#073642","terminal.ansiBlue":"#268bd2","terminal.ansiBrightBlack":"#002b36","terminal.ansiBrightBlue":"#839496","terminal.ansiBrightCyan":"#93a1a1","terminal.ansiBrightGreen":"#586e75","terminal.ansiBrightMagenta":"#6c71c4","terminal.ansiBrightRed":"#cb4b16","terminal.ansiBrightWhite":"#fdf6e3","terminal.ansiBrightYellow":"#657b83","terminal.ansiCyan":"#2aa198","terminal.ansiGreen":"#859900","terminal.ansiMagenta":"#d33682","terminal.ansiRed":"#dc322f","terminal.ansiWhite":"#eee8d5","terminal.ansiYellow":"#b58900","titleBar.activeBackground":"#002C39"},"displayName":"Solarized Dark","name":"solarized-dark","semanticHighlighting":true,"tokenColors":[{"settings":{"foreground":"#839496"}},{"scope":["meta.embedded","source.groovy.embedded","string meta.image.inline.markdown","variable.legacy.builtin.python"],"settings":{"foreground":"#839496"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#586E75"}},{"scope":"string","settings":{"foreground":"#2AA198"}},{"scope":"string.regexp","settings":{"foreground":"#DC322F"}},{"scope":"constant.numeric","settings":{"foreground":"#D33682"}},{"scope":["variable.language","variable.other"],"settings":{"foreground":"#268BD2"}},{"scope":"keyword","settings":{"foreground":"#859900"}},{"scope":"storage","settings":{"fontStyle":"bold","foreground":"#93A1A1"}},{"scope":["entity.name.class","entity.name.type","entity.name.namespace","entity.name.scope-resolution"],"settings":{"fontStyle":"","foreground":"#CB4B16"}},{"scope":"entity.name.function","settings":{"foreground":"#268BD2"}},{"scope":"punctuation.definition.variable","settings":{"foreground":"#859900"}},{"scope":["punctuation.section.embedded.begin","punctuation.section.embedded.end"],"settings":{"foreground":"#DC322F"}},{"scope":["constant.language","meta.preprocessor"],"settings":{"foreground":"#B58900"}},{"scope":["support.function.construct","keyword.other.new"],"settings":{"foreground":"#CB4B16"}},{"scope":["constant.character","constant.other"],"settings":{"foreground":"#CB4B16"}},{"scope":["entity.other.inherited-class","punctuation.separator.namespace.ruby"],"settings":{"foreground":"#6C71C4"}},{"scope":"variable.parameter","settings":{}},{"scope":"entity.name.tag","settings":{"foreground":"#268BD2"}},{"scope":"punctuation.definition.tag","settings":{"foreground":"#586E75"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#93A1A1"}},{"scope":"support.function","settings":{"foreground":"#268BD2"}},{"scope":"punctuation.separator.continuation","settings":{"foreground":"#DC322F"}},{"scope":["support.constant","support.variable"],"settings":{}},{"scope":["support.type","support.class"],"settings":{"foreground":"#859900"}},{"scope":"support.type.exception","settings":{"foreground":"#CB4B16"}},{"scope":"support.other.variable","settings":{}},{"scope":"invalid","settings":{"foreground":"#DC322F"}},{"scope":["meta.diff","meta.diff.header"],"settings":{"fontStyle":"italic","foreground":"#268BD2"}},{"scope":"markup.deleted","settings":{"fontStyle":"","foreground":"#DC322F"}},{"scope":"markup.changed","settings":{"fontStyle":"","foreground":"#CB4B16"}},{"scope":"markup.inserted","settings":{"foreground":"#859900"}},{"scope":"markup.quote","settings":{"foreground":"#859900"}},{"scope":"markup.list","settings":{"foreground":"#B58900"}},{"scope":["markup.bold","markup.italic"],"settings":{"foreground":"#D33682"}},{"scope":"markup.bold","settings":{"fontStyle":"bold"}},{"scope":"markup.italic","settings":{"fontStyle":"italic"}},{"scope":"markup.strikethrough","settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"fontStyle":"","foreground":"#2AA198"}},{"scope":"markup.heading","settings":{"fontStyle":"bold","foreground":"#268BD2"}},{"scope":"markup.heading.setext","settings":{"fontStyle":"","foreground":"#268BD2"}}],"type":"dark"}'))});var Q3={};x(Q3,{default:()=>Lce});var Lce,I3=_(()=>{Lce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#DDD6C1","activityBar.foreground":"#584c27","activityBarBadge.background":"#B58900","badge.background":"#B58900AA","button.background":"#AC9D57","debugExceptionWidget.background":"#DDD6C1","debugExceptionWidget.border":"#AB395B","debugToolBar.background":"#DDD6C1","dropdown.background":"#EEE8D5","dropdown.border":"#D3AF86","editor.background":"#FDF6E3","editor.foreground":"#657B83","editor.lineHighlightBackground":"#EEE8D5","editor.selectionBackground":"#EEE8D5","editorCursor.foreground":"#657B83","editorGroup.border":"#DDD6C1","editorGroup.dropBackground":"#DDD6C1AA","editorGroupHeader.tabsBackground":"#D9D2C2","editorHoverWidget.background":"#CCC4B0","editorIndentGuide.activeBackground":"#081E2580","editorIndentGuide.background":"#586E7580","editorLineNumber.activeForeground":"#567983","editorWhitespace.foreground":"#586E7580","editorWidget.background":"#EEE8D5","extensionButton.prominentBackground":"#b58900","extensionButton.prominentHoverBackground":"#584c27aa","focusBorder":"#b49471","input.background":"#DDD6C1","input.foreground":"#586E75","input.placeholderForeground":"#586E75AA","inputOption.activeBorder":"#D3AF86","list.activeSelectionBackground":"#DFCA88","list.activeSelectionForeground":"#6C6C6C","list.highlightForeground":"#B58900","list.hoverBackground":"#DFCA8844","list.inactiveSelectionBackground":"#D1CBB8","minimap.selectionHighlight":"#EEE8D5","notebook.cellEditorBackground":"#F7F0E0","panel.border":"#DDD6C1","peekView.border":"#B58900","peekViewEditor.background":"#FFFBF2","peekViewEditor.matchHighlightBackground":"#7744AA40","peekViewResult.background":"#EEE8D5","peekViewTitle.background":"#EEE8D5","pickerGroup.border":"#2AA19899","pickerGroup.foreground":"#2AA19899","ports.iconRunningProcessForeground":"#2AA19899","progressBar.background":"#B58900","quickInputList.focusBackground":"#DFCA8866","selection.background":"#878b9180","sideBar.background":"#EEE8D5","sideBarTitle.foreground":"#586E75","statusBar.background":"#EEE8D5","statusBar.debuggingBackground":"#EEE8D5","statusBar.foreground":"#586E75","statusBar.noFolderBackground":"#EEE8D5","statusBarItem.prominentBackground":"#DDD6C1","statusBarItem.prominentHoverBackground":"#DDD6C199","statusBarItem.remoteBackground":"#AC9D57","tab.activeBackground":"#FDF6E3","tab.activeModifiedBorder":"#cb4b16","tab.border":"#DDD6C1","tab.inactiveBackground":"#D3CBB7","tab.inactiveForeground":"#586E75","tab.lastPinnedBorder":"#FDF6E3","terminal.ansiBlack":"#073642","terminal.ansiBlue":"#268bd2","terminal.ansiBrightBlack":"#002b36","terminal.ansiBrightBlue":"#839496","terminal.ansiBrightCyan":"#93a1a1","terminal.ansiBrightGreen":"#586e75","terminal.ansiBrightMagenta":"#6c71c4","terminal.ansiBrightRed":"#cb4b16","terminal.ansiBrightWhite":"#fdf6e3","terminal.ansiBrightYellow":"#657b83","terminal.ansiCyan":"#2aa198","terminal.ansiGreen":"#859900","terminal.ansiMagenta":"#d33682","terminal.ansiRed":"#dc322f","terminal.ansiWhite":"#eee8d5","terminal.ansiYellow":"#b58900","terminal.background":"#FDF6E3","titleBar.activeBackground":"#EEE8D5","walkThrough.embeddedEditorBackground":"#00000014"},"displayName":"Solarized Light","name":"solarized-light","semanticHighlighting":true,"tokenColors":[{"settings":{"foreground":"#657B83"}},{"scope":["meta.embedded","source.groovy.embedded","string meta.image.inline.markdown","variable.legacy.builtin.python"],"settings":{"foreground":"#657B83"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#93A1A1"}},{"scope":"string","settings":{"foreground":"#2AA198"}},{"scope":"string.regexp","settings":{"foreground":"#DC322F"}},{"scope":"constant.numeric","settings":{"foreground":"#D33682"}},{"scope":["variable.language","variable.other"],"settings":{"foreground":"#268BD2"}},{"scope":"keyword","settings":{"foreground":"#859900"}},{"scope":"storage","settings":{"fontStyle":"bold","foreground":"#586E75"}},{"scope":["entity.name.class","entity.name.type","entity.name.namespace","entity.name.scope-resolution"],"settings":{"fontStyle":"","foreground":"#CB4B16"}},{"scope":"entity.name.function","settings":{"foreground":"#268BD2"}},{"scope":"punctuation.definition.variable","settings":{"foreground":"#859900"}},{"scope":["punctuation.section.embedded.begin","punctuation.section.embedded.end"],"settings":{"foreground":"#DC322F"}},{"scope":["constant.language","meta.preprocessor"],"settings":{"foreground":"#B58900"}},{"scope":["support.function.construct","keyword.other.new"],"settings":{"foreground":"#CB4B16"}},{"scope":["constant.character","constant.other"],"settings":{"foreground":"#CB4B16"}},{"scope":["entity.other.inherited-class","punctuation.separator.namespace.ruby"],"settings":{"foreground":"#6C71C4"}},{"scope":"variable.parameter","settings":{}},{"scope":"entity.name.tag","settings":{"foreground":"#268BD2"}},{"scope":"punctuation.definition.tag","settings":{"foreground":"#93A1A1"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#93A1A1"}},{"scope":"support.function","settings":{"foreground":"#268BD2"}},{"scope":"punctuation.separator.continuation","settings":{"foreground":"#DC322F"}},{"scope":["support.constant","support.variable"],"settings":{}},{"scope":["support.type","support.class"],"settings":{"foreground":"#859900"}},{"scope":"support.type.exception","settings":{"foreground":"#CB4B16"}},{"scope":"support.other.variable","settings":{}},{"scope":"invalid","settings":{"foreground":"#DC322F"}},{"scope":["meta.diff","meta.diff.header"],"settings":{"fontStyle":"italic","foreground":"#268BD2"}},{"scope":"markup.deleted","settings":{"fontStyle":"","foreground":"#DC322F"}},{"scope":"markup.changed","settings":{"fontStyle":"","foreground":"#CB4B16"}},{"scope":"markup.inserted","settings":{"foreground":"#859900"}},{"scope":"markup.quote","settings":{"foreground":"#859900"}},{"scope":"markup.list","settings":{"foreground":"#B58900"}},{"scope":["markup.bold","markup.italic"],"settings":{"foreground":"#D33682"}},{"scope":"markup.bold","settings":{"fontStyle":"bold"}},{"scope":"markup.italic","settings":{"fontStyle":"italic"}},{"scope":"markup.strikethrough","settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"fontStyle":"","foreground":"#2AA198"}},{"scope":"markup.heading","settings":{"fontStyle":"bold","foreground":"#268BD2"}},{"scope":"markup.heading.setext","settings":{"fontStyle":"","foreground":"#268BD2"}}],"type":"light"}'))});var D3={};x(D3,{default:()=>$ce});var $ce,F3=_(()=>{$ce=Object.freeze(JSON.parse(`{"colors":{"activityBar.background":"#171520","activityBar.dropBackground":"#34294f66","activityBar.foreground":"#ffffffCC","activityBarBadge.background":"#f97e72","activityBarBadge.foreground":"#2a2139","badge.background":"#2a2139","badge.foreground":"#ffffff","breadcrumbPicker.background":"#232530","button.background":"#614D85","debugToolBar.background":"#463465","diffEditor.insertedTextBackground":"#0beb9935","diffEditor.removedTextBackground":"#fe445035","dropdown.background":"#232530","dropdown.listBackground":"#2a2139","editor.background":"#262335","editor.findMatchBackground":"#D18616bb","editor.findMatchHighlightBackground":"#D1861655","editor.findRangeHighlightBackground":"#34294f1a","editor.hoverHighlightBackground":"#463564","editor.lineHighlightBorder":"#7059AB66","editor.rangeHighlightBackground":"#49549539","editor.selectionBackground":"#ffffff20","editor.selectionHighlightBackground":"#ffffff20","editor.wordHighlightBackground":"#34294f88","editor.wordHighlightStrongBackground":"#34294f88","editorBracketMatch.background":"#34294f66","editorBracketMatch.border":"#495495","editorCodeLens.foreground":"#ffffff7c","editorCursor.background":"#241b2f","editorCursor.foreground":"#f97e72","editorError.foreground":"#fe4450","editorGroup.border":"#495495","editorGroup.dropBackground":"#4954954a","editorGroupHeader.tabsBackground":"#241b2f","editorGutter.addedBackground":"#206d4bd6","editorGutter.deletedBackground":"#fa2e46a4","editorGutter.modifiedBackground":"#b893ce8f","editorIndentGuide.activeBackground":"#A148AB80","editorIndentGuide.background":"#444251","editorLineNumber.activeForeground":"#ffffffcc","editorLineNumber.foreground":"#ffffff73","editorOverviewRuler.addedForeground":"#09f7a099","editorOverviewRuler.border":"#34294fb3","editorOverviewRuler.deletedForeground":"#fe445099","editorOverviewRuler.errorForeground":"#fe4450dd","editorOverviewRuler.findMatchForeground":"#D1861699","editorOverviewRuler.modifiedForeground":"#b893ce99","editorOverviewRuler.warningForeground":"#72f1b8cc","editorRuler.foreground":"#A148AB80","editorSuggestWidget.highlightForeground":"#f97e72","editorSuggestWidget.selectedBackground":"#ffffff36","editorWarning.foreground":"#72f1b8cc","editorWidget.background":"#171520DC","editorWidget.border":"#ffffff22","editorWidget.resizeBorder":"#ffffff44","errorForeground":"#fe4450","extensionButton.prominentBackground":"#f97e72","extensionButton.prominentHoverBackground":"#ff7edb","focusBorder":"#1f212b","foreground":"#ffffff","gitDecoration.addedResourceForeground":"#72f1b8cc","gitDecoration.deletedResourceForeground":"#fe4450","gitDecoration.ignoredResourceForeground":"#ffffff59","gitDecoration.modifiedResourceForeground":"#b893ceee","gitDecoration.untrackedResourceForeground":"#72f1b8","input.background":"#2a2139","inputOption.activeBorder":"#ff7edb99","inputValidation.errorBackground":"#fe445080","inputValidation.errorBorder":"#fe445000","list.activeSelectionBackground":"#ffffff20","list.activeSelectionForeground":"#ffffff","list.dropBackground":"#34294f66","list.errorForeground":"#fe4450E6","list.focusBackground":"#ffffff20","list.focusForeground":"#ffffff","list.highlightForeground":"#f97e72","list.hoverBackground":"#37294d99","list.hoverForeground":"#ffffff","list.inactiveFocusBackground":"#2a213999","list.inactiveSelectionBackground":"#ffffff20","list.inactiveSelectionForeground":"#ffffff","list.warningForeground":"#72f1b8bb","menu.background":"#463465","minimapGutter.addedBackground":"#09f7a099","minimapGutter.deletedBackground":"#fe4450","minimapGutter.modifiedBackground":"#b893ce","panelTitle.activeBorder":"#f97e72","peekView.border":"#495495","peekViewEditor.background":"#232530","peekViewEditor.matchHighlightBackground":"#D18616bb","peekViewResult.background":"#232530","peekViewResult.matchHighlightBackground":"#D1861655","peekViewResult.selectionBackground":"#2a213980","peekViewTitle.background":"#232530","pickerGroup.foreground":"#f97e72ea","progressBar.background":"#f97e72","scrollbar.shadow":"#2a2139","scrollbarSlider.activeBackground":"#9d8bca20","scrollbarSlider.background":"#9d8bca30","scrollbarSlider.hoverBackground":"#9d8bca50","selection.background":"#ffffff20","sideBar.background":"#241b2f","sideBar.dropBackground":"#34294f4c","sideBar.foreground":"#ffffff99","sideBarSectionHeader.background":"#241b2f","sideBarSectionHeader.foreground":"#ffffffca","statusBar.background":"#241b2f","statusBar.debuggingBackground":"#f97e72","statusBar.debuggingForeground":"#08080f","statusBar.foreground":"#ffffff80","statusBar.noFolderBackground":"#241b2f","statusBarItem.prominentBackground":"#2a2139","statusBarItem.prominentHoverBackground":"#34294f","tab.activeBorder":"#880088","tab.border":"#241b2f00","tab.inactiveBackground":"#262335","terminal.ansiBlue":"#03edf9","terminal.ansiBrightBlue":"#03edf9","terminal.ansiBrightCyan":"#03edf9","terminal.ansiBrightGreen":"#72f1b8","terminal.ansiBrightMagenta":"#ff7edb","terminal.ansiBrightRed":"#fe4450","terminal.ansiBrightYellow":"#fede5d","terminal.ansiCyan":"#03edf9","terminal.ansiGreen":"#72f1b8","terminal.ansiMagenta":"#ff7edb","terminal.ansiRed":"#fe4450","terminal.ansiYellow":"#f3e70f","terminal.foreground":"#ffffff","terminal.selectionBackground":"#ffffff20","terminalCursor.background":"#ffffff","terminalCursor.foreground":"#03edf9","textLink.activeForeground":"#ff7edb","textLink.foreground":"#f97e72","titleBar.activeBackground":"#241b2f","titleBar.inactiveBackground":"#241b2f","walkThrough.embeddedEditorBackground":"#232530","widget.shadow":"#2a2139"},"displayName":"Synthwave '84","name":"synthwave-84","semanticHighlighting":true,"tokenColors":[{"scope":["comment","string.quoted.docstring.multi.python","string.quoted.docstring.multi.python punctuation.definition.string.begin.python","string.quoted.docstring.multi.python punctuation.definition.string.end.python"],"settings":{"fontStyle":"italic","foreground":"#848bbd"}},{"scope":["string.quoted","string.template","punctuation.definition.string"],"settings":{"foreground":"#ff8b39"}},{"scope":"string.template meta.embedded.line","settings":{"foreground":"#b6b1b1"}},{"scope":["variable","entity.name.variable"],"settings":{"foreground":"#ff7edb"}},{"scope":"variable.language","settings":{"fontStyle":"bold","foreground":"#fe4450"}},{"scope":"variable.parameter","settings":{"fontStyle":"italic"}},{"scope":["storage.type","storage.modifier"],"settings":{"foreground":"#fede5d"}},{"scope":"constant","settings":{"foreground":"#f97e72"}},{"scope":"string.regexp","settings":{"foreground":"#f97e72"}},{"scope":"constant.numeric","settings":{"foreground":"#f97e72"}},{"scope":"constant.language","settings":{"foreground":"#f97e72"}},{"scope":"constant.character.escape","settings":{"foreground":"#36f9f6"}},{"scope":"entity.name","settings":{"foreground":"#fe4450"}},{"scope":"entity.name.tag","settings":{"foreground":"#72f1b8"}},{"scope":["punctuation.definition.tag"],"settings":{"foreground":"#36f9f6"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#fede5d"}},{"scope":"entity.other.attribute-name.html","settings":{"fontStyle":"italic","foreground":"#fede5d"}},{"scope":["entity.name.type","meta.attribute.class.html"],"settings":{"foreground":"#fe4450"}},{"scope":"entity.other.inherited-class","settings":{"foreground":"#D50"}},{"scope":["entity.name.function","variable.function"],"settings":{"foreground":"#36f9f6"}},{"scope":["keyword.control.export.js","keyword.control.import.js"],"settings":{"foreground":"#72f1b8"}},{"scope":["constant.numeric.decimal.js"],"settings":{"foreground":"#2EE2FA"}},{"scope":"keyword","settings":{"foreground":"#fede5d"}},{"scope":"keyword.control","settings":{"foreground":"#fede5d"}},{"scope":"keyword.operator","settings":{"foreground":"#fede5d"}},{"scope":["keyword.operator.new","keyword.operator.expression","keyword.operator.logical"],"settings":{"foreground":"#fede5d"}},{"scope":"keyword.other.unit","settings":{"foreground":"#f97e72"}},{"scope":"support","settings":{"foreground":"#fe4450"}},{"scope":"support.function","settings":{"foreground":"#36f9f6"}},{"scope":"support.variable","settings":{"foreground":"#ff7edb"}},{"scope":["meta.object-literal.key","support.type.property-name"],"settings":{"foreground":"#ff7edb"}},{"scope":"punctuation.separator.key-value","settings":{"foreground":"#b6b1b1"}},{"scope":"punctuation.section.embedded","settings":{"foreground":"#fede5d"}},{"scope":["punctuation.definition.template-expression.begin","punctuation.definition.template-expression.end"],"settings":{"foreground":"#72f1b8"}},{"scope":["support.type.property-name.css","support.type.property-name.json"],"settings":{"foreground":"#72f1b8"}},{"scope":"switch-block.expr.js","settings":{"foreground":"#72f1b8"}},{"scope":"variable.other.constant.property.js, variable.other.property.js","settings":{"foreground":"#2ee2fa"}},{"scope":"constant.other.color","settings":{"foreground":"#f97e72"}},{"scope":"support.constant.font-name","settings":{"foreground":"#f97e72"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#36f9f6"}},{"scope":["entity.other.attribute-name.pseudo-element","entity.other.attribute-name.pseudo-class"],"settings":{"foreground":"#D50"}},{"scope":"support.function.misc.css","settings":{"foreground":"#fe4450"}},{"scope":["markup.heading","entity.name.section"],"settings":{"foreground":"#ff7edb"}},{"scope":["text.html","keyword.operator.assignment"],"settings":{"foreground":"#ffffffee"}},{"scope":"markup.quote","settings":{"fontStyle":"italic","foreground":"#b6b1b1cc"}},{"scope":"beginning.punctuation.definition.list","settings":{"foreground":"#ff7edb"}},{"scope":"markup.underline.link","settings":{"foreground":"#D50"}},{"scope":"string.other.link.description","settings":{"foreground":"#f97e72"}},{"scope":"meta.function-call.generic.python","settings":{"foreground":"#36f9f6"}},{"scope":"variable.parameter.function-call.python","settings":{"foreground":"#72f1b8"}},{"scope":"storage.type.cs","settings":{"foreground":"#fe4450"}},{"scope":"entity.name.variable.local.cs","settings":{"foreground":"#ff7edb"}},{"scope":["entity.name.variable.field.cs","entity.name.variable.property.cs"],"settings":{"foreground":"#ff7edb"}},{"scope":"constant.other.placeholder.c","settings":{"fontStyle":"italic","foreground":"#72f1b8"}},{"scope":["keyword.control.directive.include.c","keyword.control.directive.define.c"],"settings":{"foreground":"#72f1b8"}},{"scope":"storage.modifier.c","settings":{"foreground":"#fe4450"}},{"scope":"source.cpp keyword.operator","settings":{"foreground":"#fede5d"}},{"scope":"constant.other.placeholder.cpp","settings":{"fontStyle":"italic","foreground":"#72f1b8"}},{"scope":["keyword.control.directive.include.cpp","keyword.control.directive.define.cpp"],"settings":{"foreground":"#72f1b8"}},{"scope":"storage.modifier.specifier.const.cpp","settings":{"foreground":"#fe4450"}},{"scope":["source.elixir support.type.elixir","source.elixir meta.module.elixir entity.name.class.elixir"],"settings":{"foreground":"#36f9f6"}},{"scope":"source.elixir entity.name.function","settings":{"foreground":"#72f1b8"}},{"scope":["source.elixir constant.other.symbol.elixir","source.elixir constant.other.keywords.elixir"],"settings":{"foreground":"#36f9f6"}},{"scope":"source.elixir punctuation.definition.string","settings":{"foreground":"#72f1b8"}},{"scope":["source.elixir variable.other.readwrite.module.elixir","source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir"],"settings":{"foreground":"#72f1b8"}},{"scope":"source.elixir .punctuation.binary.elixir","settings":{"fontStyle":"italic","foreground":"#ff7edb"}},{"scope":["entity.global.clojure"],"settings":{"fontStyle":"bold","foreground":"#36f9f6"}},{"scope":["storage.control.clojure"],"settings":{"fontStyle":"italic","foreground":"#36f9f6"}},{"scope":["meta.metadata.simple.clojure","meta.metadata.map.clojure"],"settings":{"fontStyle":"italic","foreground":"#fe4450"}},{"scope":["meta.quoted-expression.clojure"],"settings":{"fontStyle":"italic"}},{"scope":["meta.symbol.clojure"],"settings":{"foreground":"#ff7edbff"}},{"scope":"source.go","settings":{"foreground":"#ff7edbff"}},{"scope":"source.go meta.function-call.go","settings":{"foreground":"#36f9f6"}},{"scope":["source.go keyword.package.go","source.go keyword.import.go","source.go keyword.function.go","source.go keyword.type.go","source.go keyword.const.go","source.go keyword.var.go","source.go keyword.map.go","source.go keyword.channel.go","source.go keyword.control.go"],"settings":{"foreground":"#fede5d"}},{"scope":["source.go storage.type","source.go keyword.struct.go","source.go keyword.interface.go"],"settings":{"foreground":"#72f1b8"}},{"scope":["source.go constant.language.go","source.go constant.other.placeholder.go","source.go variable"],"settings":{"foreground":"#2EE2FA"}},{"scope":["markup.underline.link.markdown","markup.inline.raw.string.markdown"],"settings":{"fontStyle":"italic","foreground":"#72f1b8"}},{"scope":["string.other.link.title.markdown"],"settings":{"foreground":"#fede5d"}},{"scope":["markup.heading.markdown","entity.name.section.markdown"],"settings":{"fontStyle":"bold","foreground":"#ff7edb"}},{"scope":["markup.italic.markdown"],"settings":{"fontStyle":"italic","foreground":"#2EE2FA"}},{"scope":["markup.bold.markdown"],"settings":{"fontStyle":"bold","foreground":"#2EE2FA"}},{"scope":["punctuation.definition.quote.begin.markdown","markup.quote.markdown"],"settings":{"foreground":"#72f1b8"}},{"scope":["source.dart","source.python","source.scala"],"settings":{"foreground":"#ff7edbff"}},{"scope":["string.interpolated.single.dart"],"settings":{"foreground":"#f97e72"}},{"scope":["variable.parameter.dart"],"settings":{"foreground":"#72f1b8"}},{"scope":["constant.numeric.dart"],"settings":{"foreground":"#2EE2FA"}},{"scope":["variable.parameter.scala"],"settings":{"foreground":"#2EE2FA"}},{"scope":["meta.template.expression.scala"],"settings":{"foreground":"#72f1b8"}}],"type":"dark"}`))});var S3={};x(S3,{default:()=>Rce});var Rce,O3=_(()=>{Rce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#16161e","activityBar.border":"#16161e","activityBar.foreground":"#787c99","activityBar.inactiveForeground":"#3b3e52","activityBarBadge.background":"#3d59a1","activityBarBadge.foreground":"#fff","activityBarTop.foreground":"#787c99","activityBarTop.inactiveForeground":"#3b3e52","badge.background":"#7e83b230","badge.foreground":"#acb0d0","breadcrumb.activeSelectionForeground":"#a9b1d6","breadcrumb.background":"#16161e","breadcrumb.focusForeground":"#a9b1d6","breadcrumb.foreground":"#515670","breadcrumbPicker.background":"#16161e","button.background":"#3d59a1dd","button.foreground":"#ffffff","button.hoverBackground":"#3d59a1AA","button.secondaryBackground":"#3b3e52","charts.blue":"#7aa2f7","charts.foreground":"#9AA5CE","charts.green":"#41a6b5","charts.lines":"#16161e","charts.orange":"#ff9e64","charts.purple":"#9d7cd8","charts.red":"#f7768e","charts.yellow":"#e0af68","debugConsole.errorForeground":"#bb616b","debugConsole.infoForeground":"#787c99","debugConsole.sourceForeground":"#787c99","debugConsole.warningForeground":"#c49a5a","debugConsoleInputIcon.foreground":"#73daca","debugExceptionWidget.background":"#101014","debugExceptionWidget.border":"#963c47","debugIcon.breakpointDisabledForeground":"#414761","debugIcon.breakpointForeground":"#db4b4b","debugIcon.breakpointUnverifiedForeground":"#c24242","debugTokenExpression.boolean":"#ff9e64","debugTokenExpression.error":"#bb616b","debugTokenExpression.name":"#7dcfff","debugTokenExpression.number":"#ff9e64","debugTokenExpression.string":"#9ece6a","debugTokenExpression.value":"#9aa5ce","debugToolBar.background":"#101014","debugView.stateLabelBackground":"#14141b","debugView.stateLabelForeground":"#787c99","debugView.valueChangedHighlight":"#3d59a1aa","descriptionForeground":"#515670","diffEditor.diagonalFill":"#292e42","diffEditor.insertedLineBackground":"#41a6b520","diffEditor.insertedTextBackground":"#41a6b520","diffEditor.removedLineBackground":"#db4b4b22","diffEditor.removedTextBackground":"#db4b4b22","diffEditor.unchangedCodeBackground":"#282a3b66","diffEditorGutter.insertedLineBackground":"#41a6b525","diffEditorGutter.removedLineBackground":"#db4b4b22","diffEditorOverview.insertedForeground":"#41a6b525","diffEditorOverview.removedForeground":"#db4b4b22","dropdown.background":"#14141b","dropdown.foreground":"#787c99","dropdown.listBackground":"#14141b","editor.background":"#1a1b26","editor.findMatchBackground":"#3d59a166","editor.findMatchBorder":"#e0af68","editor.findMatchHighlightBackground":"#3d59a166","editor.findRangeHighlightBackground":"#515c7e33","editor.focusedStackFrameHighlightBackground":"#73daca20","editor.foldBackground":"#1111174a","editor.foreground":"#a9b1d6","editor.inactiveSelectionBackground":"#515c7e25","editor.lineHighlightBackground":"#1e202e","editor.rangeHighlightBackground":"#515c7e20","editor.selectionBackground":"#515c7e4d","editor.selectionHighlightBackground":"#515c7e44","editor.stackFrameHighlightBackground":"#E2BD3A20","editor.wordHighlightBackground":"#515c7e44","editor.wordHighlightStrongBackground":"#515c7e55","editorBracketHighlight.foreground1":"#698cd6","editorBracketHighlight.foreground2":"#68b3de","editorBracketHighlight.foreground3":"#9a7ecc","editorBracketHighlight.foreground4":"#25aac2","editorBracketHighlight.foreground5":"#80a856","editorBracketHighlight.foreground6":"#c49a5a","editorBracketHighlight.unexpectedBracket.foreground":"#db4b4b","editorBracketMatch.background":"#16161e","editorBracketMatch.border":"#42465d","editorBracketPairGuide.activeBackground1":"#698cd6","editorBracketPairGuide.activeBackground2":"#68b3de","editorBracketPairGuide.activeBackground3":"#9a7ecc","editorBracketPairGuide.activeBackground4":"#25aac2","editorBracketPairGuide.activeBackground5":"#80a856","editorBracketPairGuide.activeBackground6":"#c49a5a","editorCodeLens.foreground":"#51597d","editorCursor.foreground":"#c0caf5","editorError.foreground":"#db4b4b","editorGhostText.foreground":"#646e9c","editorGroup.border":"#101014","editorGroup.dropBackground":"#1e202e","editorGroupHeader.border":"#101014","editorGroupHeader.noTabsBackground":"#16161e","editorGroupHeader.tabsBackground":"#16161e","editorGroupHeader.tabsBorder":"#101014","editorGutter.addedBackground":"#164846","editorGutter.deletedBackground":"#823c41","editorGutter.modifiedBackground":"#394b70","editorHint.foreground":"#0da0ba","editorHoverWidget.background":"#16161e","editorHoverWidget.border":"#101014","editorIndentGuide.activeBackground1":"#363b54","editorIndentGuide.background1":"#232433","editorInfo.foreground":"#0da0ba","editorLightBulb.foreground":"#e0af68","editorLightBulbAutoFix.foreground":"#e0af68","editorLineNumber.activeForeground":"#737aa2","editorLineNumber.foreground":"#363b54","editorLink.activeForeground":"#acb0d0","editorMarkerNavigation.background":"#16161e","editorOverviewRuler.addedForeground":"#164846","editorOverviewRuler.border":"#101014","editorOverviewRuler.bracketMatchForeground":"#101014","editorOverviewRuler.deletedForeground":"#703438","editorOverviewRuler.errorForeground":"#db4b4b","editorOverviewRuler.findMatchForeground":"#a9b1d644","editorOverviewRuler.infoForeground":"#1abc9c","editorOverviewRuler.modifiedForeground":"#394b70","editorOverviewRuler.rangeHighlightForeground":"#a9b1d644","editorOverviewRuler.selectionHighlightForeground":"#a9b1d622","editorOverviewRuler.warningForeground":"#e0af68","editorOverviewRuler.wordHighlightForeground":"#bb9af755","editorOverviewRuler.wordHighlightStrongForeground":"#bb9af766","editorPane.background":"#16161e","editorRuler.foreground":"#101014","editorSuggestWidget.background":"#16161e","editorSuggestWidget.border":"#101014","editorSuggestWidget.highlightForeground":"#6183bb","editorSuggestWidget.selectedBackground":"#20222c","editorWarning.foreground":"#e0af68","editorWhitespace.foreground":"#363b54","editorWidget.background":"#16161e","editorWidget.foreground":"#787c99","editorWidget.resizeBorder":"#545c7e33","errorForeground":"#515670","extensionBadge.remoteBackground":"#3d59a1","extensionBadge.remoteForeground":"#ffffff","extensionButton.prominentBackground":"#3d59a1DD","extensionButton.prominentForeground":"#ffffff","extensionButton.prominentHoverBackground":"#3d59a1AA","focusBorder":"#545c7e33","foreground":"#787c99","gitDecoration.addedResourceForeground":"#449dab","gitDecoration.conflictingResourceForeground":"#e0af68cc","gitDecoration.deletedResourceForeground":"#914c54","gitDecoration.ignoredResourceForeground":"#515670","gitDecoration.modifiedResourceForeground":"#6183bb","gitDecoration.renamedResourceForeground":"#449dab","gitDecoration.stageDeletedResourceForeground":"#914c54","gitDecoration.stageModifiedResourceForeground":"#6183bb","gitDecoration.untrackedResourceForeground":"#449dab","gitlens.gutterBackgroundColor":"#16161e","gitlens.gutterForegroundColor":"#787c99","gitlens.gutterUncommittedForegroundColor":"#7aa2f7","gitlens.trailingLineForegroundColor":"#646e9c","icon.foreground":"#787c99","input.background":"#14141b","input.border":"#0f0f14","input.foreground":"#a9b1d6","input.placeholderForeground":"#787c998A","inputOption.activeBackground":"#3d59a144","inputOption.activeForeground":"#c0caf5","inputValidation.errorBackground":"#85353e","inputValidation.errorBorder":"#963c47","inputValidation.errorForeground":"#bbc2e0","inputValidation.infoBackground":"#3d59a15c","inputValidation.infoBorder":"#3d59a1","inputValidation.infoForeground":"#bbc2e0","inputValidation.warningBackground":"#c2985b","inputValidation.warningBorder":"#e0af68","inputValidation.warningForeground":"#000000","list.activeSelectionBackground":"#202330","list.activeSelectionForeground":"#a9b1d6","list.deemphasizedForeground":"#787c99","list.dropBackground":"#1e202e","list.errorForeground":"#bb616b","list.focusBackground":"#1c1d29","list.focusForeground":"#a9b1d6","list.highlightForeground":"#668ac4","list.hoverBackground":"#13131a","list.hoverForeground":"#a9b1d6","list.inactiveSelectionBackground":"#1c1d29","list.inactiveSelectionForeground":"#a9b1d6","list.invalidItemForeground":"#c97018","list.warningForeground":"#c49a5a","listFilterWidget.background":"#101014","listFilterWidget.noMatchesOutline":"#a6333f","listFilterWidget.outline":"#3d59a1","menu.background":"#16161e","menu.border":"#101014","menu.foreground":"#787c99","menu.selectionBackground":"#1e202e","menu.selectionForeground":"#a9b1d6","menu.separatorBackground":"#101014","menubar.selectionBackground":"#1e202e","menubar.selectionBorder":"#1b1e2e","menubar.selectionForeground":"#a9b1d6","merge.currentContentBackground":"#007a7544","merge.currentHeaderBackground":"#41a6b525","merge.incomingContentBackground":"#3d59a144","merge.incomingHeaderBackground":"#3d59a1aa","mergeEditor.change.background":"#41a6b525","mergeEditor.change.word.background":"#41a6b540","mergeEditor.conflict.handled.minimapOverViewRuler":"#449dab","mergeEditor.conflict.handledFocused.border":"#41a6b565","mergeEditor.conflict.handledUnfocused.border":"#41a6b525","mergeEditor.conflict.unhandled.minimapOverViewRuler":"#e0af68","mergeEditor.conflict.unhandledFocused.border":"#e0af68b0","mergeEditor.conflict.unhandledUnfocused.border":"#e0af6888","minimapGutter.addedBackground":"#1C5957","minimapGutter.deletedBackground":"#944449","minimapGutter.modifiedBackground":"#425882","multiDiffEditor.border":"#1a1b26","multiDiffEditor.headerBackground":"#1a1b26","notebook.cellBorderColor":"#101014","notebook.cellEditorBackground":"#16161e","notebook.cellStatusBarItemHoverBackground":"#1c1d29","notebook.editorBackground":"#1a1b26","notebook.focusedCellBorder":"#29355a","notificationCenterHeader.background":"#101014","notificationLink.foreground":"#6183bb","notifications.background":"#101014","notificationsErrorIcon.foreground":"#bb616b","notificationsInfoIcon.foreground":"#0da0ba","notificationsWarningIcon.foreground":"#bba461","panel.background":"#16161e","panel.border":"#101014","panelInput.border":"#16161e","panelTitle.activeBorder":"#16161e","panelTitle.activeForeground":"#787c99","panelTitle.inactiveForeground":"#42465d","peekView.border":"#101014","peekViewEditor.background":"#16161e","peekViewEditor.matchHighlightBackground":"#3d59a166","peekViewResult.background":"#101014","peekViewResult.fileForeground":"#787c99","peekViewResult.lineForeground":"#a9b1d6","peekViewResult.matchHighlightBackground":"#3d59a166","peekViewResult.selectionBackground":"#3d59a133","peekViewResult.selectionForeground":"#a9b1d6","peekViewTitle.background":"#101014","peekViewTitleDescription.foreground":"#787c99","peekViewTitleLabel.foreground":"#a9b1d6","pickerGroup.border":"#101014","pickerGroup.foreground":"#a9b1d6","progressBar.background":"#3d59a1","sash.hoverBorder":"#29355a","scrollbar.shadow":"#00000033","scrollbarSlider.activeBackground":"#868bc422","scrollbarSlider.background":"#868bc415","scrollbarSlider.hoverBackground":"#868bc410","selection.background":"#515c7e40","settings.headerForeground":"#6183bb","sideBar.background":"#16161e","sideBar.border":"#101014","sideBar.dropBackground":"#1e202e","sideBar.foreground":"#787c99","sideBarSectionHeader.background":"#16161e","sideBarSectionHeader.border":"#101014","sideBarSectionHeader.foreground":"#a9b1d6","sideBarTitle.foreground":"#787c99","statusBar.background":"#16161e","statusBar.border":"#101014","statusBar.debuggingBackground":"#16161e","statusBar.debuggingForeground":"#787c99","statusBar.foreground":"#787c99","statusBar.noFolderBackground":"#16161e","statusBarItem.activeBackground":"#101014","statusBarItem.hoverBackground":"#20222c","statusBarItem.prominentBackground":"#101014","statusBarItem.prominentHoverBackground":"#20222c","tab.activeBackground":"#16161e","tab.activeBorder":"#3d59a1","tab.activeForeground":"#a9b1d6","tab.activeModifiedBorder":"#1a1b26","tab.border":"#101014","tab.hoverForeground":"#a9b1d6","tab.inactiveBackground":"#16161e","tab.inactiveForeground":"#787c99","tab.inactiveModifiedBorder":"#1f202e","tab.lastPinnedBorder":"#222333","tab.unfocusedActiveBorder":"#1f202e","tab.unfocusedActiveForeground":"#a9b1d6","tab.unfocusedHoverForeground":"#a9b1d6","tab.unfocusedInactiveForeground":"#787c99","terminal.ansiBlack":"#363b54","terminal.ansiBlue":"#7aa2f7","terminal.ansiBrightBlack":"#363b54","terminal.ansiBrightBlue":"#7aa2f7","terminal.ansiBrightCyan":"#7dcfff","terminal.ansiBrightGreen":"#41a6b5","terminal.ansiBrightMagenta":"#bb9af7","terminal.ansiBrightRed":"#f7768e","terminal.ansiBrightWhite":"#acb0d0","terminal.ansiBrightYellow":"#e0af68","terminal.ansiCyan":"#7dcfff","terminal.ansiGreen":"#73daca","terminal.ansiMagenta":"#bb9af7","terminal.ansiRed":"#f7768e","terminal.ansiWhite":"#787c99","terminal.ansiYellow":"#e0af68","terminal.background":"#16161e","terminal.foreground":"#787c99","terminal.selectionBackground":"#515c7e4d","textBlockQuote.background":"#16161e","textCodeBlock.background":"#16161e","textLink.activeForeground":"#7dcfff","textLink.foreground":"#6183bb","textPreformat.foreground":"#9699a8","textSeparator.foreground":"#363b54","titleBar.activeBackground":"#16161e","titleBar.activeForeground":"#787c99","titleBar.border":"#101014","titleBar.inactiveBackground":"#16161e","titleBar.inactiveForeground":"#787c99","toolbar.activeBackground":"#202330","toolbar.hoverBackground":"#202330","tree.indentGuidesStroke":"#2b2b3b","walkThrough.embeddedEditorBackground":"#16161e","widget.shadow":"#ffffff00","window.activeBorder":"#0d0f17","window.inactiveBorder":"#0d0f17"},"displayName":"Tokyo Night","name":"tokyo-night","semanticTokenColors":{"*.defaultLibrary":{"foreground":"#2ac3de"},"parameter":{"foreground":"#d9d4cd"},"parameter.declaration":{"foreground":"#e0af68"},"property.declaration":{"foreground":"#73daca"},"property.defaultLibrary":{"foreground":"#2ac3de"},"variable":{"foreground":"#c0caf5"},"variable.declaration":{"foreground":"#bb9af7"},"variable.defaultLibrary":{"foreground":"#2ac3de"}},"tokenColors":[{"scope":["comment","meta.var.expr storage.type","keyword.control.flow","keyword.control.return","meta.directive.vue punctuation.separator.key-value.html","meta.directive.vue entity.other.attribute-name.html","tag.decorator.js entity.name.tag.js","tag.decorator.js punctuation.definition.tag.js","storage.modifier","string.quoted.docstring.multi","string.quoted.docstring.multi.python punctuation.definition.string.begin","string.quoted.docstring.multi.python punctuation.definition.string.end","string.quoted.docstring.multi.python constant.character.escape"],"settings":{"fontStyle":"italic"}},{"scope":["keyword.control.flow.block-scalar.literal","keyword.control.flow.python"],"settings":{"fontStyle":""}},{"scope":["comment","comment.block.documentation","punctuation.definition.comment","comment.block.documentation punctuation","string.quoted.docstring.multi","string.quoted.docstring.multi.python punctuation.definition.string.begin","string.quoted.docstring.multi.python punctuation.definition.string.end","string.quoted.docstring.multi.python constant.character.escape"],"settings":{"foreground":"#51597d"}},{"scope":["keyword.operator.assignment.jsdoc","comment.block.documentation variable","comment.block.documentation storage","comment.block.documentation keyword","comment.block.documentation support","comment.block.documentation markup","comment.block.documentation markup.inline.raw.string.markdown","meta.other.type.phpdoc.php keyword.other.type.php","meta.other.type.phpdoc.php support.other.namespace.php","meta.other.type.phpdoc.php punctuation.separator.inheritance.php","meta.other.type.phpdoc.php support.class","keyword.other.phpdoc.php","log.date"],"settings":{"foreground":"#5a638c"}},{"scope":["meta.other.type.phpdoc.php support.class","comment.block.documentation storage.type","comment.block.documentation punctuation.definition.block.tag","comment.block.documentation entity.name.type.instance"],"settings":{"foreground":"#646e9c"}},{"scope":["variable.other.constant","punctuation.definition.constant","constant.language","constant.numeric","support.constant","constant.other.caps"],"settings":{"foreground":"#ff9e64"}},{"scope":["string","constant.other.symbol","constant.other.key","meta.attribute-selector","string constant.character"],"settings":{"fontStyle":"","foreground":"#9ece6a"}},{"scope":["constant.other.color","constant.other.color.rgb-value.hex punctuation.definition.constant"],"settings":{"foreground":"#9aa5ce"}},{"scope":["invalid","invalid.illegal"],"settings":{"foreground":"#ff5370"}},{"scope":"invalid.deprecated","settings":{"foreground":"#bb9af7"}},{"scope":"storage.type","settings":{"foreground":"#bb9af7"}},{"scope":["meta.var.expr storage.type","storage.modifier"],"settings":{"foreground":"#9d7cd8"}},{"scope":["punctuation.definition.template-expression","punctuation.section.embedded","meta.embedded.line.tag.smarty","support.constant.handlebars","punctuation.section.tag.twig"],"settings":{"foreground":"#7dcfff"}},{"scope":["keyword.control.smarty","keyword.control.twig","support.constant.handlebars keyword.control","keyword.operator.comparison.twig","keyword.blade","entity.name.function.blade"],"settings":{"foreground":"#0db9d7"}},{"scope":["keyword.operator.spread","keyword.operator.rest"],"settings":{"fontStyle":"bold","foreground":"#f7768e"}},{"scope":["keyword.operator","keyword.control.as","keyword.other","keyword.operator.bitwise.shift","punctuation","expression.embbeded.vue punctuation.definition.tag","text.html.twig meta.tag.inline.any.html","meta.tag.template.value.twig meta.function.arguments.twig","meta.directive.vue punctuation.separator.key-value.html","punctuation.definition.constant.markdown","punctuation.definition.string","punctuation.support.type.property-name","text.html.vue-html meta.tag","meta.attribute.directive","punctuation.definition.keyword","punctuation.terminator.rule","punctuation.definition.entity","punctuation.separator.inheritance.php","keyword.other.template","keyword.other.substitution","entity.name.operator","meta.property-list punctuation.separator.key-value","meta.at-rule.mixin punctuation.separator.key-value","meta.at-rule.function variable.parameter.url"],"settings":{"foreground":"#89ddff"}},{"scope":["keyword.control.module.js","keyword.control.import","keyword.control.export","keyword.control.from","keyword.control.default","meta.import keyword.other"],"settings":{"foreground":"#7dcfff"}},{"scope":["keyword","keyword.control","keyword.other.important"],"settings":{"foreground":"#bb9af7"}},{"scope":"keyword.other.DML","settings":{"foreground":"#7dcfff"}},{"scope":["keyword.operator.logical","storage.type.function","keyword.operator.bitwise","keyword.operator.ternary","keyword.operator.comparison","keyword.operator.relational","keyword.operator.or.regexp"],"settings":{"foreground":"#bb9af7"}},{"scope":"entity.name.tag","settings":{"foreground":"#f7768e"}},{"scope":["entity.name.tag support.class.component","meta.tag.custom entity.name.tag","meta.tag.other.unrecognized.html.derivative entity.name.tag","meta.tag"],"settings":{"foreground":"#de5971"}},{"scope":"punctuation.definition.tag","settings":{"foreground":"#ba3c97"}},{"scope":["constant.other.php","variable.other.global.safer","variable.other.global.safer punctuation.definition.variable","variable.other.global","variable.other.global punctuation.definition.variable","constant.other"],"settings":{"foreground":"#e0af68"}},{"scope":["variable","support.variable","string constant.other.placeholder","variable.parameter.handlebars","variable.other.object","meta.fstring","meta.function-call meta.function-call.arguments"],"settings":{"foreground":"#c0caf5"}},{"scope":"meta.array.literal variable","settings":{"foreground":"#7dcfff"}},{"scope":["meta.object-literal.key","entity.name.type.hcl","string.alias.graphql","string.unquoted.graphql","string.unquoted.alias.graphql","meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js","meta.field.declaration.ts variable.object.property","meta.block entity.name.label"],"settings":{"foreground":"#73daca"}},{"scope":["variable.other.property","support.variable.property","support.variable.property.dom","meta.function-call variable.other.object.property"],"settings":{"foreground":"#7dcfff"}},{"scope":"variable.other.object.property","settings":{"foreground":"#c0caf5"}},{"scope":"meta.objectliteral meta.object.member meta.objectliteral meta.object.member meta.objectliteral meta.object.member meta.object-literal.key","settings":{"foreground":"#41a6b5"}},{"scope":"source.cpp meta.block variable.other","settings":{"foreground":"#f7768e"}},{"scope":"support.other.variable","settings":{"foreground":"#f7768e"}},{"scope":["meta.class-method.js entity.name.function.js","entity.name.method.js","variable.function.constructor","keyword.other.special-method","storage.type.cs"],"settings":{"foreground":"#7aa2f7"}},{"scope":["entity.name.function","variable.other.enummember","meta.function-call","meta.function-call entity.name.function","variable.function","meta.definition.method entity.name.function","meta.object-literal entity.name.function"],"settings":{"foreground":"#7aa2f7"}},{"scope":["variable.parameter.function.language.special","variable.parameter","meta.function.parameters punctuation.definition.variable","meta.function.parameter variable"],"settings":{"foreground":"#e0af68"}},{"scope":["keyword.other.type.php","storage.type.php","constant.character","constant.escape","keyword.other.unit"],"settings":{"foreground":"#bb9af7"}},{"scope":["meta.definition.variable variable.other.constant","meta.definition.variable variable.other.readwrite","variable.declaration.hcl variable.other.readwrite.hcl","meta.mapping.key.hcl variable.other.readwrite.hcl","variable.other.declaration"],"settings":{"foreground":"#bb9af7"}},{"scope":"entity.other.inherited-class","settings":{"fontStyle":"","foreground":"#bb9af7"}},{"scope":["support.class","support.type","variable.other.readwrite.alias","support.orther.namespace.use.php","meta.use.php","support.other.namespace.php","support.type.sys-types","support.variable.dom","support.constant.math","support.type.object.module","support.constant.json","entity.name.namespace","meta.import.qualifier","variable.other.constant.object"],"settings":{"foreground":"#0db9d7"}},{"scope":"entity.name","settings":{"foreground":"#c0caf5"}},{"scope":"support.function","settings":{"foreground":"#0db9d7"}},{"scope":["source.css support.type.property-name","source.sass support.type.property-name","source.scss support.type.property-name","source.less support.type.property-name","source.stylus support.type.property-name","source.postcss support.type.property-name","support.type.property-name.css","support.type.vendored.property-name","support.type.map.key"],"settings":{"foreground":"#7aa2f7"}},{"scope":["support.constant.font-name","meta.definition.variable"],"settings":{"foreground":"#9ece6a"}},{"scope":["entity.other.attribute-name.class","meta.at-rule.mixin.scss entity.name.function.scss"],"settings":{"foreground":"#9ece6a"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#fc7b7b"}},{"scope":"entity.name.tag.css","settings":{"foreground":"#0db9d7"}},{"scope":["entity.other.attribute-name.pseudo-class punctuation.definition.entity","entity.other.attribute-name.pseudo-element punctuation.definition.entity","entity.other.attribute-name.class punctuation.definition.entity","entity.name.tag.reference"],"settings":{"foreground":"#e0af68"}},{"scope":"meta.property-list","settings":{"foreground":"#9abdf5"}},{"scope":["meta.property-list meta.at-rule.if","meta.at-rule.return variable.parameter.url","meta.property-list meta.at-rule.else"],"settings":{"foreground":"#ff9e64"}},{"scope":["entity.other.attribute-name.parent-selector-suffix punctuation.definition.entity.css"],"settings":{"foreground":"#73daca"}},{"scope":"meta.property-list meta.property-list","settings":{"foreground":"#9abdf5"}},{"scope":["meta.at-rule.mixin keyword.control.at-rule.mixin","meta.at-rule.include entity.name.function.scss","meta.at-rule.include keyword.control.at-rule.include"],"settings":{"foreground":"#bb9af7"}},{"scope":["keyword.control.at-rule.include punctuation.definition.keyword","keyword.control.at-rule.mixin punctuation.definition.keyword","meta.at-rule.include keyword.control.at-rule.include","keyword.control.at-rule.extend punctuation.definition.keyword","meta.at-rule.extend keyword.control.at-rule.extend","entity.other.attribute-name.placeholder.css punctuation.definition.entity.css","meta.at-rule.media keyword.control.at-rule.media","meta.at-rule.mixin keyword.control.at-rule.mixin","meta.at-rule.function keyword.control.at-rule.function","keyword.control punctuation.definition.keyword"],"settings":{"foreground":"#9d7cd8"}},{"scope":"meta.property-list meta.at-rule.include","settings":{"foreground":"#c0caf5"}},{"scope":"support.constant.property-value","settings":{"foreground":"#ff9e64"}},{"scope":["entity.name.module.js","variable.import.parameter.js","variable.other.class.js"],"settings":{"foreground":"#c0caf5"}},{"scope":"variable.language","settings":{"foreground":"#f7768e"}},{"scope":"variable.other punctuation.definition.variable","settings":{"foreground":"#c0caf5"}},{"scope":["source.js constant.other.object.key.js string.unquoted.label.js","variable.language.this punctuation.definition.variable","keyword.other.this"],"settings":{"foreground":"#f7768e"}},{"scope":["entity.other.attribute-name","text.html.basic entity.other.attribute-name.html","text.html.basic entity.other.attribute-name"],"settings":{"foreground":"#bb9af7"}},{"scope":"text.html constant.character.entity","settings":{"foreground":"#0DB9D7"}},{"scope":["entity.other.attribute-name.id.html","meta.directive.vue entity.other.attribute-name.html"],"settings":{"foreground":"#bb9af7"}},{"scope":"source.sass keyword.control","settings":{"foreground":"#7aa2f7"}},{"scope":["entity.other.attribute-name.pseudo-class","entity.other.attribute-name.pseudo-element","entity.other.attribute-name.placeholder","meta.property-list meta.property-value"],"settings":{"foreground":"#bb9af7"}},{"scope":"markup.inserted","settings":{"foreground":"#449dab"}},{"scope":"markup.deleted","settings":{"foreground":"#914c54"}},{"scope":"markup.changed","settings":{"foreground":"#6183bb"}},{"scope":"string.regexp","settings":{"foreground":"#b4f9f8"}},{"scope":"punctuation.definition.group","settings":{"foreground":"#f7768e"}},{"scope":["constant.other.character-class.regexp"],"settings":{"foreground":"#bb9af7"}},{"scope":["constant.other.character-class.set.regexp","punctuation.definition.character-class.regexp"],"settings":{"foreground":"#e0af68"}},{"scope":"keyword.operator.quantifier.regexp","settings":{"foreground":"#89ddff"}},{"scope":"constant.character.escape.backslash","settings":{"foreground":"#c0caf5"}},{"scope":"constant.character.escape","settings":{"foreground":"#89ddff"}},{"scope":["tag.decorator.js entity.name.tag.js","tag.decorator.js punctuation.definition.tag.js"],"settings":{"foreground":"#7aa2f7"}},{"scope":"keyword.other.unit","settings":{"foreground":"#f7768e"}},{"scope":["source.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#7aa2f7"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#0db9d7"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#7dcfff"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#bb9af7"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#e0af68"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#0db9d7"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#73daca"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#f7768e"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#9ece6a"}},{"scope":"punctuation.definition.list_item.markdown","settings":{"foreground":"#9abdf5"}},{"scope":["meta.block","meta.brace","punctuation.definition.block","punctuation.definition.use","punctuation.definition.class","punctuation.definition.begin.bracket","punctuation.definition.end.bracket","punctuation.definition.switch-expression.begin.bracket","punctuation.definition.switch-expression.end.bracket","punctuation.definition.section.switch-block.begin.bracket","punctuation.definition.section.switch-block.end.bracket","punctuation.definition.group.shell","punctuation.definition.parameters","punctuation.definition.arguments","punctuation.definition.dictionary","punctuation.definition.array","punctuation.section"],"settings":{"foreground":"#9abdf5"}},{"scope":["meta.embedded.block"],"settings":{"foreground":"#c0caf5"}},{"scope":["meta.tag JSXNested","meta.jsx.children","text.html","text.log"],"settings":{"foreground":"#9aa5ce"}},{"scope":"text.html.markdown markup.inline.raw.markdown","settings":{"foreground":"#bb9af7"}},{"scope":"text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown","settings":{"foreground":"#4E5579"}},{"scope":["heading.1.markdown entity.name","heading.1.markdown punctuation.definition.heading.markdown"],"settings":{"fontStyle":"bold","foreground":"#89ddff"}},{"scope":["heading.2.markdown entity.name","heading.2.markdown punctuation.definition.heading.markdown"],"settings":{"fontStyle":"bold","foreground":"#61bdf2"}},{"scope":["heading.3.markdown entity.name","heading.3.markdown punctuation.definition.heading.markdown"],"settings":{"fontStyle":"bold","foreground":"#7aa2f7"}},{"scope":["heading.4.markdown entity.name","heading.4.markdown punctuation.definition.heading.markdown"],"settings":{"fontStyle":"bold","foreground":"#6d91de"}},{"scope":["heading.5.markdown entity.name","heading.5.markdown punctuation.definition.heading.markdown"],"settings":{"fontStyle":"bold","foreground":"#9aa5ce"}},{"scope":["heading.6.markdown entity.name","heading.6.markdown punctuation.definition.heading.markdown"],"settings":{"fontStyle":"bold","foreground":"#747ca1"}},{"scope":["markup.italic","markup.italic punctuation"],"settings":{"fontStyle":"italic","foreground":"#c0caf5"}},{"scope":["markup.bold","markup.bold punctuation"],"settings":{"fontStyle":"bold","foreground":"#c0caf5"}},{"scope":["markup.bold markup.italic","markup.bold markup.italic punctuation"],"settings":{"fontStyle":"bold italic","foreground":"#c0caf5"}},{"scope":["markup.underline","markup.underline punctuation"],"settings":{"fontStyle":"underline"}},{"scope":"markup.quote punctuation.definition.blockquote.markdown","settings":{"foreground":"#4e5579"}},{"scope":"markup.quote","settings":{"fontStyle":"italic"}},{"scope":["string.other.link","markup.underline.link","constant.other.reference.link.markdown","string.other.link.description.title.markdown"],"settings":{"foreground":"#73daca"}},{"scope":["markup.fenced_code.block.markdown","markup.inline.raw.string.markdown","variable.language.fenced.markdown"],"settings":{"foreground":"#89ddff"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#51597d"}},{"scope":"markup.table","settings":{"foreground":"#c0cefc"}},{"scope":"token.info-token","settings":{"foreground":"#0db9d7"}},{"scope":"token.warn-token","settings":{"foreground":"#ffdb69"}},{"scope":"token.error-token","settings":{"foreground":"#db4b4b"}},{"scope":"token.debug-token","settings":{"foreground":"#b267e6"}},{"scope":"entity.tag.apacheconf","settings":{"foreground":"#f7768e"}},{"scope":["meta.preprocessor"],"settings":{"foreground":"#73daca"}},{"scope":"source.env","settings":{"foreground":"#7aa2f7"}}],"type":"dark"}'))});var N3={};x(N3,{default:()=>jce});var jce,L3=_(()=>{jce=Object.freeze(JSON.parse('{"colors":{"activityBar.background":"#101010","activityBar.foreground":"#A0A0A0","activityBarBadge.background":"#FFC799","activityBarBadge.foreground":"#000","badge.background":"#FFC799","badge.foreground":"#000","button.background":"#FFC799","button.foreground":"#000","button.hoverBackground":"#FFCFA8","diffEditor.insertedLineBackground":"#99FFE415","diffEditor.insertedTextBackground":"#99FFE415","diffEditor.removedLineBackground":"#FF808015","diffEditor.removedTextBackground":"#FF808015","editor.background":"#101010","editor.foreground":"#FFF","editor.selectionBackground":"#FFFFFF25","editor.selectionHighlightBackground":"#FFFFFF25","editorBracketHighlight.foreground1":"#A0A0A0","editorBracketHighlight.foreground2":"#A0A0A0","editorBracketHighlight.foreground3":"#A0A0A0","editorBracketHighlight.foreground4":"#A0A0A0","editorBracketHighlight.foreground5":"#A0A0A0","editorBracketHighlight.foreground6":"#A0A0A0","editorBracketHighlight.unexpectedBracket.foreground":"#FF8080","editorError.foreground":"#FF8080","editorGroupHeader.tabsBackground":"#101010","editorGutter.addedBackground":"#99FFE4","editorGutter.deletedBackground":"#FF8080","editorGutter.modifiedBackground":"#FFC799","editorHoverWidget.background":"#161616","editorHoverWidget.border":"#282828","editorInlayHint.background":"#1C1C1C","editorInlayHint.foreground":"#A0A0A0","editorLineNumber.foreground":"#505050","editorOverviewRuler.border":"#101010","editorWarning.foreground":"#FFC799","editorWidget.background":"#101010","focusBorder":"#FFC799","icon.foreground":"#A0A0A0","input.background":"#1C1C1C","list.activeSelectionBackground":"#232323","list.activeSelectionForeground":"#FFC799","list.errorForeground":"#FF8080","list.highlightForeground":"#FFC799","list.hoverBackground":"#282828","list.inactiveSelectionBackground":"#232323","scrollbarSlider.background":"#34343480","scrollbarSlider.hoverBackground":"#343434","selection.background":"#666","settings.modifiedItemIndicator":"#FFC799","sideBar.background":"#101010","sideBarSectionHeader.background":"#101010","sideBarSectionHeader.foreground":"#A0A0A0","sideBarTitle.foreground":"#A0A0A0","statusBar.background":"#101010","statusBar.debuggingBackground":"#FF7300","statusBar.debuggingForeground":"#FFF","statusBar.foreground":"#A0A0A0","statusBarItem.remoteBackground":"#FFC799","statusBarItem.remoteForeground":"#000","tab.activeBackground":"#161616","tab.border":"#101010","tab.inactiveBackground":"#101010","textLink.activeForeground":"#FFCFA8","textLink.foreground":"#FFC799","titleBar.activeBackground":"#101010","titleBar.activeForeground":"#7E7E7E","titleBar.inactiveBackground":"#101010","titleBar.inactiveForeground":"#707070"},"displayName":"Vesper","name":"vesper","tokenColors":[{"scope":["comment","punctuation.definition.comment"],"settings":{"foreground":"#8b8b8b94"}},{"scope":["variable","string constant.other.placeholder","entity.name.tag"],"settings":{"foreground":"#FFF"}},{"scope":["constant.other.color"],"settings":{"foreground":"#FFF"}},{"scope":["invalid","invalid.illegal"],"settings":{"foreground":"#FF8080"}},{"scope":["keyword","storage.type","storage.modifier"],"settings":{"foreground":"#A0A0A0"}},{"scope":["keyword.control","constant.other.color","punctuation.definition.tag","punctuation.separator.inheritance.php","punctuation.definition.tag.html","punctuation.definition.tag.begin.html","punctuation.definition.tag.end.html","punctuation.section.embedded","keyword.other.template","keyword.other.substitution"],"settings":{"foreground":"#A0A0A0"}},{"scope":["entity.name.tag","meta.tag.sgml","markup.deleted.git_gutter"],"settings":{"foreground":"#FFC799"}},{"scope":["entity.name.function","variable.function","support.function","keyword.other.special-method"],"settings":{"foreground":"#FFC799"}},{"scope":["meta.block variable.other"],"settings":{"foreground":"#FFF"}},{"scope":["support.other.variable","string.other.link"],"settings":{"foreground":"#FFF"}},{"scope":["constant.numeric","support.constant","constant.character","constant.escape","keyword.other.unit","keyword.other","constant.language.boolean"],"settings":{"foreground":"#FFC799"}},{"scope":["string","constant.other.symbol","constant.other.key","meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js"],"settings":{"foreground":"#99FFE4"}},{"scope":["entity.name","support.type","support.class","support.other.namespace.use.php","meta.use.php","support.other.namespace.php","markup.changed.git_gutter","support.type.sys-types"],"settings":{"foreground":"#FFC799"}},{"scope":["source.css support.type.property-name","source.sass support.type.property-name","source.scss support.type.property-name","source.less support.type.property-name","source.stylus support.type.property-name","source.postcss support.type.property-name","source.postcss support.type.property-name","support.type.vendored.property-name.css","source.css.scss entity.name.tag","variable.parameter.keyframe-list.css","meta.property-name.css","variable.parameter.url.scss","meta.property-value.scss","meta.property-value.css"],"settings":{"foreground":"#FFF"}},{"scope":["entity.name.module.js","variable.import.parameter.js","variable.other.class.js"],"settings":{"foreground":"#FF8080"}},{"scope":["variable.language"],"settings":{"foreground":"#A0A0A0"}},{"scope":["entity.name.method.js"],"settings":{"foreground":"#FFFF"}},{"scope":["meta.class-method.js entity.name.function.js","variable.function.constructor"],"settings":{"foreground":"#FFFF"}},{"scope":["entity.other.attribute-name","meta.property-list.scss","meta.attribute-selector.scss","meta.property-value.css","entity.other.keyframe-offset.css","meta.selector.css","entity.name.tag.reference.scss","entity.name.tag.nesting.css","punctuation.separator.key-value.css"],"settings":{"foreground":"#A0A0A0"}},{"scope":["text.html.basic entity.other.attribute-name.html","text.html.basic entity.other.attribute-name"],"settings":{"foreground":"#FFC799"}},{"scope":["entity.other.attribute-name.class","entity.other.attribute-name.id","meta.attribute-selector.scss","variable.parameter.misc.css"],"settings":{"foreground":"#FFC799"}},{"scope":["source.sass keyword.control","meta.attribute-selector.scss"],"settings":{"foreground":"#99FFE4"}},{"scope":["markup.inserted"],"settings":{"foreground":"#99FFE4"}},{"scope":["markup.deleted"],"settings":{"foreground":"#FF8080"}},{"scope":["markup.changed"],"settings":{"foreground":"#A0A0A0"}},{"scope":["string.regexp"],"settings":{"foreground":"#A0A0A0"}},{"scope":["constant.character.escape"],"settings":{"foreground":"#A0A0A0"}},{"scope":["*url*","*link*","*uri*"],"settings":{"fontStyle":"underline"}},{"scope":["tag.decorator.js entity.name.tag.js","tag.decorator.js punctuation.definition.tag.js"],"settings":{"foreground":"#FFFF"}},{"scope":["source.js constant.other.object.key.js string.unquoted.label.js"],"settings":{"fontStyle":"italic","foreground":"#FF8080"}},{"scope":["source.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFC799"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFC799"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFC799"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFC799"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFC799"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFC799"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFC799"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFC799"}},{"scope":["source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFC799"}},{"scope":["text.html.markdown","punctuation.definition.list_item.markdown"],"settings":{"foreground":"#FFF"}},{"scope":["text.html.markdown markup.inline.raw.markdown"],"settings":{"foreground":"#A0A0A0"}},{"scope":["text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown"],"settings":{"foreground":"#FFF"}},{"scope":["markdown.heading","markup.heading | markup.heading entity.name","markup.heading.markdown punctuation.definition.heading.markdown","markup.heading","markup.inserted.git_gutter"],"settings":{"foreground":"#FFC799"}},{"scope":["markup.italic"],"settings":{"fontStyle":"italic","foreground":"#FFF"}},{"scope":["markup.bold","markup.bold string"],"settings":{"fontStyle":"bold","foreground":"#FFF"}},{"scope":["markup.bold markup.italic","markup.italic markup.bold","markup.quote markup.bold","markup.bold markup.italic string","markup.italic markup.bold string","markup.quote markup.bold string"],"settings":{"fontStyle":"bold","foreground":"#FFF"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline","foreground":"#FFC799"}},{"scope":["markup.quote punctuation.definition.blockquote.markdown"],"settings":{"foreground":"#FFF"}},{"scope":["markup.quote"]},{"scope":["string.other.link.title.markdown"],"settings":{"foreground":"#FFFF"}},{"scope":["string.other.link.description.title.markdown"],"settings":{"foreground":"#A0A0A0"}},{"scope":["constant.other.reference.link.markdown"],"settings":{"foreground":"#FFC799"}},{"scope":["markup.raw.block"],"settings":{"foreground":"#A0A0A0"}},{"scope":["markup.raw.block.fenced.markdown"],"settings":{"foreground":"#00000050"}},{"scope":["punctuation.definition.fenced.markdown"],"settings":{"foreground":"#00000050"}},{"scope":["markup.raw.block.fenced.markdown","variable.language.fenced.markdown","punctuation.section.class.end"],"settings":{"foreground":"#FFF"}},{"scope":["variable.language.fenced.markdown"],"settings":{"foreground":"#FFF"}},{"scope":["meta.separator"],"settings":{"fontStyle":"bold","foreground":"#65737E"}},{"scope":["markup.table"],"settings":{"foreground":"#FFF"}}],"type":"dark"}'))});var $3={};x($3,{default:()=>Pce});var Pce,R3=_(()=>{Pce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#4d9375","activityBar.background":"#000","activityBar.border":"#191919","activityBar.foreground":"#dbd7cacc","activityBar.inactiveForeground":"#dedcd550","activityBarBadge.background":"#bfbaaa","activityBarBadge.foreground":"#000","badge.background":"#dedcd590","badge.foreground":"#000","breadcrumb.activeSelectionForeground":"#eeeeee18","breadcrumb.background":"#121212","breadcrumb.focusForeground":"#dbd7cacc","breadcrumb.foreground":"#959da5","breadcrumbPicker.background":"#000","button.background":"#4d9375","button.foreground":"#000","button.hoverBackground":"#4d9375","checkbox.background":"#121212","checkbox.border":"#2f363d","debugToolBar.background":"#000","descriptionForeground":"#dedcd590","diffEditor.insertedTextBackground":"#4d937550","diffEditor.removedTextBackground":"#ab595950","dropdown.background":"#000","dropdown.border":"#191919","dropdown.foreground":"#dbd7cacc","dropdown.listBackground":"#121212","editor.background":"#000","editor.findMatchBackground":"#e6cc7722","editor.findMatchHighlightBackground":"#e6cc7744","editor.focusedStackFrameHighlightBackground":"#b808","editor.foldBackground":"#eeeeee10","editor.foreground":"#dbd7cacc","editor.inactiveSelectionBackground":"#eeeeee10","editor.lineHighlightBackground":"#121212","editor.selectionBackground":"#eeeeee18","editor.selectionHighlightBackground":"#eeeeee10","editor.stackFrameHighlightBackground":"#a707","editor.wordHighlightBackground":"#1c6b4805","editor.wordHighlightStrongBackground":"#1c6b4810","editorBracketHighlight.foreground1":"#5eaab5","editorBracketHighlight.foreground2":"#4d9375","editorBracketHighlight.foreground3":"#d4976c","editorBracketHighlight.foreground4":"#d9739f","editorBracketHighlight.foreground5":"#e6cc77","editorBracketHighlight.foreground6":"#6394bf","editorBracketMatch.background":"#4d937520","editorError.foreground":"#cb7676","editorGroup.border":"#191919","editorGroupHeader.tabsBackground":"#000","editorGroupHeader.tabsBorder":"#191919","editorGutter.addedBackground":"#4d9375","editorGutter.commentRangeForeground":"#dedcd550","editorGutter.deletedBackground":"#cb7676","editorGutter.foldingControlForeground":"#dedcd590","editorGutter.modifiedBackground":"#6394bf","editorHint.foreground":"#4d9375","editorIndentGuide.activeBackground":"#ffffff30","editorIndentGuide.background":"#ffffff15","editorInfo.foreground":"#6394bf","editorInlayHint.background":"#121212","editorInlayHint.foreground":"#444444","editorLineNumber.activeForeground":"#bfbaaa","editorLineNumber.foreground":"#dedcd550","editorOverviewRuler.border":"#111","editorStickyScroll.background":"#121212","editorStickyScrollHover.background":"#121212","editorWarning.foreground":"#d4976c","editorWhitespace.foreground":"#ffffff15","editorWidget.background":"#000","errorForeground":"#cb7676","focusBorder":"#00000000","foreground":"#dbd7cacc","gitDecoration.addedResourceForeground":"#4d9375","gitDecoration.conflictingResourceForeground":"#d4976c","gitDecoration.deletedResourceForeground":"#cb7676","gitDecoration.ignoredResourceForeground":"#dedcd550","gitDecoration.modifiedResourceForeground":"#6394bf","gitDecoration.submoduleResourceForeground":"#dedcd590","gitDecoration.untrackedResourceForeground":"#5eaab5","input.background":"#121212","input.border":"#191919","input.foreground":"#dbd7cacc","input.placeholderForeground":"#dedcd590","inputOption.activeBackground":"#dedcd550","list.activeSelectionBackground":"#121212","list.activeSelectionForeground":"#dbd7cacc","list.focusBackground":"#121212","list.highlightForeground":"#4d9375","list.hoverBackground":"#121212","list.hoverForeground":"#dbd7cacc","list.inactiveFocusBackground":"#000","list.inactiveSelectionBackground":"#121212","list.inactiveSelectionForeground":"#dbd7cacc","menu.separatorBackground":"#191919","notificationCenterHeader.background":"#000","notificationCenterHeader.foreground":"#959da5","notifications.background":"#000","notifications.border":"#191919","notifications.foreground":"#dbd7cacc","notificationsErrorIcon.foreground":"#cb7676","notificationsInfoIcon.foreground":"#6394bf","notificationsWarningIcon.foreground":"#d4976c","panel.background":"#000","panel.border":"#191919","panelInput.border":"#2f363d","panelTitle.activeBorder":"#4d9375","panelTitle.activeForeground":"#dbd7cacc","panelTitle.inactiveForeground":"#959da5","peekViewEditor.background":"#000","peekViewEditor.matchHighlightBackground":"#ffd33d33","peekViewResult.background":"#000","peekViewResult.matchHighlightBackground":"#ffd33d33","pickerGroup.border":"#191919","pickerGroup.foreground":"#dbd7cacc","problemsErrorIcon.foreground":"#cb7676","problemsInfoIcon.foreground":"#6394bf","problemsWarningIcon.foreground":"#d4976c","progressBar.background":"#4d9375","quickInput.background":"#000","quickInput.foreground":"#dbd7cacc","quickInputList.focusBackground":"#121212","scrollbar.shadow":"#0000","scrollbarSlider.activeBackground":"#dedcd550","scrollbarSlider.background":"#dedcd510","scrollbarSlider.hoverBackground":"#dedcd550","settings.headerForeground":"#dbd7cacc","settings.modifiedItemIndicator":"#4d9375","sideBar.background":"#000","sideBar.border":"#191919","sideBar.foreground":"#bfbaaa","sideBarSectionHeader.background":"#000","sideBarSectionHeader.border":"#191919","sideBarSectionHeader.foreground":"#dbd7cacc","sideBarTitle.foreground":"#dbd7cacc","statusBar.background":"#000","statusBar.border":"#191919","statusBar.debuggingBackground":"#121212","statusBar.debuggingForeground":"#bfbaaa","statusBar.foreground":"#bfbaaa","statusBar.noFolderBackground":"#000","statusBarItem.prominentBackground":"#121212","tab.activeBackground":"#000","tab.activeBorder":"#191919","tab.activeBorderTop":"#dedcd590","tab.activeForeground":"#dbd7cacc","tab.border":"#191919","tab.hoverBackground":"#121212","tab.inactiveBackground":"#000","tab.inactiveForeground":"#959da5","tab.unfocusedActiveBorder":"#191919","tab.unfocusedActiveBorderTop":"#191919","tab.unfocusedHoverBackground":"#000","terminal.ansiBlack":"#393a34","terminal.ansiBlue":"#6394bf","terminal.ansiBrightBlack":"#777777","terminal.ansiBrightBlue":"#6394bf","terminal.ansiBrightCyan":"#5eaab5","terminal.ansiBrightGreen":"#4d9375","terminal.ansiBrightMagenta":"#d9739f","terminal.ansiBrightRed":"#cb7676","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#e6cc77","terminal.ansiCyan":"#5eaab5","terminal.ansiGreen":"#4d9375","terminal.ansiMagenta":"#d9739f","terminal.ansiRed":"#cb7676","terminal.ansiWhite":"#dbd7ca","terminal.ansiYellow":"#e6cc77","terminal.foreground":"#dbd7cacc","terminal.selectionBackground":"#eeeeee18","textBlockQuote.background":"#000","textBlockQuote.border":"#191919","textCodeBlock.background":"#000","textLink.activeForeground":"#4d9375","textLink.foreground":"#4d9375","textPreformat.foreground":"#d1d5da","textSeparator.foreground":"#586069","titleBar.activeBackground":"#000","titleBar.activeForeground":"#bfbaaa","titleBar.border":"#121212","titleBar.inactiveBackground":"#000","titleBar.inactiveForeground":"#959da5","tree.indentGuidesStroke":"#2f363d","welcomePage.buttonBackground":"#2f363d","welcomePage.buttonHoverBackground":"#444d56"},"displayName":"Vitesse Black","name":"vitesse-black","semanticHighlighting":true,"semanticTokenColors":{"class":"#6872ab","interface":"#5d99a9","namespace":"#db889a","property":"#b8a965","type":"#5d99a9"},"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#758575dd"}},{"scope":["delimiter.bracket","delimiter","invalid.illegal.character-not-allowed-here.html","keyword.operator.rest","keyword.operator.spread","keyword.operator.type.annotation","keyword.operator.relational","keyword.operator.assignment","keyword.operator.type","meta.brace","meta.tag.block.any.html","meta.tag.inline.any.html","meta.tag.structure.input.void.html","meta.type.annotation","meta.embedded.block.github-actions-expression","storage.type.function.arrow","meta.objectliteral.ts","punctuation","punctuation.definition.string.begin.html.vue","punctuation.definition.string.end.html.vue"],"settings":{"foreground":"#444444"}},{"scope":["constant","entity.name.constant","variable.language","meta.definition.variable"],"settings":{"foreground":"#c99076"}},{"scope":["entity","entity.name"],"settings":{"foreground":"#80a665"}},{"scope":"variable.parameter.function","settings":{"foreground":"#dbd7cacc"}},{"scope":["entity.name.tag","tag.html"],"settings":{"foreground":"#4d9375"}},{"scope":"entity.name.function","settings":{"foreground":"#80a665"}},{"scope":["keyword","storage.type.class.jsdoc","punctuation.definition.template-expression"],"settings":{"foreground":"#4d9375"}},{"scope":["storage","storage.type","support.type.builtin","constant.language.undefined","constant.language.null","constant.language.import-export-all.ts"],"settings":{"foreground":"#cb7676"}},{"scope":["text.html.derivative","storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#dbd7cacc"}},{"scope":["string","string punctuation.section.embedded source","attribute.value"],"settings":{"foreground":"#c98a7d"}},{"scope":["punctuation.definition.string"],"settings":{"foreground":"#c98a7d77"}},{"scope":["punctuation.support.type.property-name"],"settings":{"foreground":"#b8a96577"}},{"scope":"support","settings":{"foreground":"#b8a965"}},{"scope":["property","meta.property-name","meta.object-literal.key","entity.name.tag.yaml","attribute.name"],"settings":{"foreground":"#b8a965"}},{"scope":["entity.other.attribute-name","invalid.deprecated.entity.other.attribute-name.html"],"settings":{"foreground":"#bd976a"}},{"scope":["variable","identifier"],"settings":{"foreground":"#bd976a"}},{"scope":["support.type.primitive","entity.name.type"],"settings":{"foreground":"#5DA994"}},{"scope":"namespace","settings":{"foreground":"#db889a"}},{"scope":["keyword.operator","keyword.operator.assignment.compound","meta.var.expr.ts"],"settings":{"foreground":"#cb7676"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"carriage-return","settings":{"background":"#f97583","content":"^M","fontStyle":"italic underline","foreground":"#24292e"}},{"scope":"message.error","settings":{"foreground":"#fdaeb7"}},{"scope":"string variable","settings":{"foreground":"#c98a7d"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#c4704f"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#c98a7d"}},{"scope":"string.regexp constant.character.escape","settings":{"foreground":"#e6cc77"}},{"scope":["support.constant"],"settings":{"foreground":"#c99076"}},{"scope":["keyword.operator.quantifier.regexp","constant.numeric","number"],"settings":{"foreground":"#4C9A91"}},{"scope":["keyword.other.unit"],"settings":{"foreground":"#cb7676"}},{"scope":["constant.language.boolean","constant.language"],"settings":{"foreground":"#4d9375"}},{"scope":"meta.module-reference","settings":{"foreground":"#4d9375"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#d4976c"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#4d9375"}},{"scope":"markup.quote","settings":{"foreground":"#5d99a9"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#dbd7cacc"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#dbd7cacc"}},{"scope":"markup.raw","settings":{"foreground":"#4d9375"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#86181d","foreground":"#fdaeb7"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#144620","foreground":"#85e89d"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#c24e00","foreground":"#ffab70"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#79b8ff","foreground":"#2f363d"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#b392f0"}},{"scope":"meta.diff.header","settings":{"foreground":"#79b8ff"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#79b8ff"}},{"scope":"meta.output","settings":{"foreground":"#79b8ff"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#d1d5da"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#fdaeb7"}},{"scope":["constant.other.reference.link","string.other.link","punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown"],"settings":{"foreground":"#c98a7d"}},{"scope":["markup.underline.link.markdown","markup.underline.link.image.markdown"],"settings":{"fontStyle":"underline","foreground":"#dedcd590"}},{"scope":["type.identifier","constant.other.character-class.regexp"],"settings":{"foreground":"#6872ab"}},{"scope":["entity.other.attribute-name.html.vue"],"settings":{"foreground":"#80a665"}},{"scope":["invalid.illegal.unrecognized-tag.html"],"settings":{"fontStyle":"normal"}}],"type":"dark"}'))});var j3={};x(j3,{default:()=>Mce});var Mce,P3=_(()=>{Mce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#4d9375","activityBar.background":"#121212","activityBar.border":"#191919","activityBar.foreground":"#dbd7caee","activityBar.inactiveForeground":"#dedcd550","activityBarBadge.background":"#bfbaaa","activityBarBadge.foreground":"#121212","badge.background":"#dedcd590","badge.foreground":"#121212","breadcrumb.activeSelectionForeground":"#eeeeee18","breadcrumb.background":"#181818","breadcrumb.focusForeground":"#dbd7caee","breadcrumb.foreground":"#959da5","breadcrumbPicker.background":"#121212","button.background":"#4d9375","button.foreground":"#121212","button.hoverBackground":"#4d9375","checkbox.background":"#181818","checkbox.border":"#2f363d","debugToolBar.background":"#121212","descriptionForeground":"#dedcd590","diffEditor.insertedTextBackground":"#4d937550","diffEditor.removedTextBackground":"#ab595950","dropdown.background":"#121212","dropdown.border":"#191919","dropdown.foreground":"#dbd7caee","dropdown.listBackground":"#181818","editor.background":"#121212","editor.findMatchBackground":"#e6cc7722","editor.findMatchHighlightBackground":"#e6cc7744","editor.focusedStackFrameHighlightBackground":"#b808","editor.foldBackground":"#eeeeee10","editor.foreground":"#dbd7caee","editor.inactiveSelectionBackground":"#eeeeee10","editor.lineHighlightBackground":"#181818","editor.selectionBackground":"#eeeeee18","editor.selectionHighlightBackground":"#eeeeee10","editor.stackFrameHighlightBackground":"#a707","editor.wordHighlightBackground":"#1c6b4805","editor.wordHighlightStrongBackground":"#1c6b4810","editorBracketHighlight.foreground1":"#5eaab5","editorBracketHighlight.foreground2":"#4d9375","editorBracketHighlight.foreground3":"#d4976c","editorBracketHighlight.foreground4":"#d9739f","editorBracketHighlight.foreground5":"#e6cc77","editorBracketHighlight.foreground6":"#6394bf","editorBracketMatch.background":"#4d937520","editorError.foreground":"#cb7676","editorGroup.border":"#191919","editorGroupHeader.tabsBackground":"#121212","editorGroupHeader.tabsBorder":"#191919","editorGutter.addedBackground":"#4d9375","editorGutter.commentRangeForeground":"#dedcd550","editorGutter.deletedBackground":"#cb7676","editorGutter.foldingControlForeground":"#dedcd590","editorGutter.modifiedBackground":"#6394bf","editorHint.foreground":"#4d9375","editorIndentGuide.activeBackground":"#ffffff30","editorIndentGuide.background":"#ffffff15","editorInfo.foreground":"#6394bf","editorInlayHint.background":"#181818","editorInlayHint.foreground":"#666666","editorLineNumber.activeForeground":"#bfbaaa","editorLineNumber.foreground":"#dedcd550","editorOverviewRuler.border":"#111","editorStickyScroll.background":"#181818","editorStickyScrollHover.background":"#181818","editorWarning.foreground":"#d4976c","editorWhitespace.foreground":"#ffffff15","editorWidget.background":"#121212","errorForeground":"#cb7676","focusBorder":"#00000000","foreground":"#dbd7caee","gitDecoration.addedResourceForeground":"#4d9375","gitDecoration.conflictingResourceForeground":"#d4976c","gitDecoration.deletedResourceForeground":"#cb7676","gitDecoration.ignoredResourceForeground":"#dedcd550","gitDecoration.modifiedResourceForeground":"#6394bf","gitDecoration.submoduleResourceForeground":"#dedcd590","gitDecoration.untrackedResourceForeground":"#5eaab5","input.background":"#181818","input.border":"#191919","input.foreground":"#dbd7caee","input.placeholderForeground":"#dedcd590","inputOption.activeBackground":"#dedcd550","list.activeSelectionBackground":"#181818","list.activeSelectionForeground":"#dbd7caee","list.focusBackground":"#181818","list.highlightForeground":"#4d9375","list.hoverBackground":"#181818","list.hoverForeground":"#dbd7caee","list.inactiveFocusBackground":"#121212","list.inactiveSelectionBackground":"#181818","list.inactiveSelectionForeground":"#dbd7caee","menu.separatorBackground":"#191919","notificationCenterHeader.background":"#121212","notificationCenterHeader.foreground":"#959da5","notifications.background":"#121212","notifications.border":"#191919","notifications.foreground":"#dbd7caee","notificationsErrorIcon.foreground":"#cb7676","notificationsInfoIcon.foreground":"#6394bf","notificationsWarningIcon.foreground":"#d4976c","panel.background":"#121212","panel.border":"#191919","panelInput.border":"#2f363d","panelTitle.activeBorder":"#4d9375","panelTitle.activeForeground":"#dbd7caee","panelTitle.inactiveForeground":"#959da5","peekViewEditor.background":"#121212","peekViewEditor.matchHighlightBackground":"#ffd33d33","peekViewResult.background":"#121212","peekViewResult.matchHighlightBackground":"#ffd33d33","pickerGroup.border":"#191919","pickerGroup.foreground":"#dbd7caee","problemsErrorIcon.foreground":"#cb7676","problemsInfoIcon.foreground":"#6394bf","problemsWarningIcon.foreground":"#d4976c","progressBar.background":"#4d9375","quickInput.background":"#121212","quickInput.foreground":"#dbd7caee","quickInputList.focusBackground":"#181818","scrollbar.shadow":"#0000","scrollbarSlider.activeBackground":"#dedcd550","scrollbarSlider.background":"#dedcd510","scrollbarSlider.hoverBackground":"#dedcd550","settings.headerForeground":"#dbd7caee","settings.modifiedItemIndicator":"#4d9375","sideBar.background":"#121212","sideBar.border":"#191919","sideBar.foreground":"#bfbaaa","sideBarSectionHeader.background":"#121212","sideBarSectionHeader.border":"#191919","sideBarSectionHeader.foreground":"#dbd7caee","sideBarTitle.foreground":"#dbd7caee","statusBar.background":"#121212","statusBar.border":"#191919","statusBar.debuggingBackground":"#181818","statusBar.debuggingForeground":"#bfbaaa","statusBar.foreground":"#bfbaaa","statusBar.noFolderBackground":"#121212","statusBarItem.prominentBackground":"#181818","tab.activeBackground":"#121212","tab.activeBorder":"#191919","tab.activeBorderTop":"#dedcd590","tab.activeForeground":"#dbd7caee","tab.border":"#191919","tab.hoverBackground":"#181818","tab.inactiveBackground":"#121212","tab.inactiveForeground":"#959da5","tab.unfocusedActiveBorder":"#191919","tab.unfocusedActiveBorderTop":"#191919","tab.unfocusedHoverBackground":"#121212","terminal.ansiBlack":"#393a34","terminal.ansiBlue":"#6394bf","terminal.ansiBrightBlack":"#777777","terminal.ansiBrightBlue":"#6394bf","terminal.ansiBrightCyan":"#5eaab5","terminal.ansiBrightGreen":"#4d9375","terminal.ansiBrightMagenta":"#d9739f","terminal.ansiBrightRed":"#cb7676","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#e6cc77","terminal.ansiCyan":"#5eaab5","terminal.ansiGreen":"#4d9375","terminal.ansiMagenta":"#d9739f","terminal.ansiRed":"#cb7676","terminal.ansiWhite":"#dbd7ca","terminal.ansiYellow":"#e6cc77","terminal.foreground":"#dbd7caee","terminal.selectionBackground":"#eeeeee18","textBlockQuote.background":"#121212","textBlockQuote.border":"#191919","textCodeBlock.background":"#121212","textLink.activeForeground":"#4d9375","textLink.foreground":"#4d9375","textPreformat.foreground":"#d1d5da","textSeparator.foreground":"#586069","titleBar.activeBackground":"#121212","titleBar.activeForeground":"#bfbaaa","titleBar.border":"#181818","titleBar.inactiveBackground":"#121212","titleBar.inactiveForeground":"#959da5","tree.indentGuidesStroke":"#2f363d","welcomePage.buttonBackground":"#2f363d","welcomePage.buttonHoverBackground":"#444d56"},"displayName":"Vitesse Dark","name":"vitesse-dark","semanticHighlighting":true,"semanticTokenColors":{"class":"#6872ab","interface":"#5d99a9","namespace":"#db889a","property":"#b8a965","type":"#5d99a9"},"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#758575dd"}},{"scope":["delimiter.bracket","delimiter","invalid.illegal.character-not-allowed-here.html","keyword.operator.rest","keyword.operator.spread","keyword.operator.type.annotation","keyword.operator.relational","keyword.operator.assignment","keyword.operator.type","meta.brace","meta.tag.block.any.html","meta.tag.inline.any.html","meta.tag.structure.input.void.html","meta.type.annotation","meta.embedded.block.github-actions-expression","storage.type.function.arrow","meta.objectliteral.ts","punctuation","punctuation.definition.string.begin.html.vue","punctuation.definition.string.end.html.vue"],"settings":{"foreground":"#666666"}},{"scope":["constant","entity.name.constant","variable.language","meta.definition.variable"],"settings":{"foreground":"#c99076"}},{"scope":["entity","entity.name"],"settings":{"foreground":"#80a665"}},{"scope":"variable.parameter.function","settings":{"foreground":"#dbd7caee"}},{"scope":["entity.name.tag","tag.html"],"settings":{"foreground":"#4d9375"}},{"scope":"entity.name.function","settings":{"foreground":"#80a665"}},{"scope":["keyword","storage.type.class.jsdoc","punctuation.definition.template-expression"],"settings":{"foreground":"#4d9375"}},{"scope":["storage","storage.type","support.type.builtin","constant.language.undefined","constant.language.null","constant.language.import-export-all.ts"],"settings":{"foreground":"#cb7676"}},{"scope":["text.html.derivative","storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#dbd7caee"}},{"scope":["string","string punctuation.section.embedded source","attribute.value"],"settings":{"foreground":"#c98a7d"}},{"scope":["punctuation.definition.string"],"settings":{"foreground":"#c98a7d77"}},{"scope":["punctuation.support.type.property-name"],"settings":{"foreground":"#b8a96577"}},{"scope":"support","settings":{"foreground":"#b8a965"}},{"scope":["property","meta.property-name","meta.object-literal.key","entity.name.tag.yaml","attribute.name"],"settings":{"foreground":"#b8a965"}},{"scope":["entity.other.attribute-name","invalid.deprecated.entity.other.attribute-name.html"],"settings":{"foreground":"#bd976a"}},{"scope":["variable","identifier"],"settings":{"foreground":"#bd976a"}},{"scope":["support.type.primitive","entity.name.type"],"settings":{"foreground":"#5DA994"}},{"scope":"namespace","settings":{"foreground":"#db889a"}},{"scope":["keyword.operator","keyword.operator.assignment.compound","meta.var.expr.ts"],"settings":{"foreground":"#cb7676"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"carriage-return","settings":{"background":"#f97583","content":"^M","fontStyle":"italic underline","foreground":"#24292e"}},{"scope":"message.error","settings":{"foreground":"#fdaeb7"}},{"scope":"string variable","settings":{"foreground":"#c98a7d"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#c4704f"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#c98a7d"}},{"scope":"string.regexp constant.character.escape","settings":{"foreground":"#e6cc77"}},{"scope":["support.constant"],"settings":{"foreground":"#c99076"}},{"scope":["keyword.operator.quantifier.regexp","constant.numeric","number"],"settings":{"foreground":"#4C9A91"}},{"scope":["keyword.other.unit"],"settings":{"foreground":"#cb7676"}},{"scope":["constant.language.boolean","constant.language"],"settings":{"foreground":"#4d9375"}},{"scope":"meta.module-reference","settings":{"foreground":"#4d9375"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#d4976c"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#4d9375"}},{"scope":"markup.quote","settings":{"foreground":"#5d99a9"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#dbd7caee"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#dbd7caee"}},{"scope":"markup.raw","settings":{"foreground":"#4d9375"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#86181d","foreground":"#fdaeb7"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#144620","foreground":"#85e89d"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#c24e00","foreground":"#ffab70"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#79b8ff","foreground":"#2f363d"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#b392f0"}},{"scope":"meta.diff.header","settings":{"foreground":"#79b8ff"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#79b8ff"}},{"scope":"meta.output","settings":{"foreground":"#79b8ff"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#d1d5da"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#fdaeb7"}},{"scope":["constant.other.reference.link","string.other.link","punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown"],"settings":{"foreground":"#c98a7d"}},{"scope":["markup.underline.link.markdown","markup.underline.link.image.markdown"],"settings":{"fontStyle":"underline","foreground":"#dedcd590"}},{"scope":["type.identifier","constant.other.character-class.regexp"],"settings":{"foreground":"#6872ab"}},{"scope":["entity.other.attribute-name.html.vue"],"settings":{"foreground":"#80a665"}},{"scope":["invalid.illegal.unrecognized-tag.html"],"settings":{"fontStyle":"normal"}}],"type":"dark"}'))});var M3={};x(M3,{default:()=>Tce});var Tce,T3=_(()=>{Tce=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#1c6b48","activityBar.background":"#ffffff","activityBar.border":"#f0f0f0","activityBar.foreground":"#393a34","activityBar.inactiveForeground":"#393a3450","activityBarBadge.background":"#4e4f47","activityBarBadge.foreground":"#ffffff","badge.background":"#393a3490","badge.foreground":"#ffffff","breadcrumb.activeSelectionForeground":"#22222218","breadcrumb.background":"#f7f7f7","breadcrumb.focusForeground":"#393a34","breadcrumb.foreground":"#6a737d","breadcrumbPicker.background":"#ffffff","button.background":"#1c6b48","button.foreground":"#ffffff","button.hoverBackground":"#1c6b48","checkbox.background":"#f7f7f7","checkbox.border":"#d1d5da","debugToolBar.background":"#ffffff","descriptionForeground":"#393a3490","diffEditor.insertedTextBackground":"#1c6b4830","diffEditor.removedTextBackground":"#ab595940","dropdown.background":"#ffffff","dropdown.border":"#f0f0f0","dropdown.foreground":"#393a34","dropdown.listBackground":"#f7f7f7","editor.background":"#ffffff","editor.findMatchBackground":"#e6cc7744","editor.findMatchHighlightBackground":"#e6cc7766","editor.focusedStackFrameHighlightBackground":"#fff5b1","editor.foldBackground":"#22222210","editor.foreground":"#393a34","editor.inactiveSelectionBackground":"#22222210","editor.lineHighlightBackground":"#f7f7f7","editor.selectionBackground":"#22222218","editor.selectionHighlightBackground":"#22222210","editor.stackFrameHighlightBackground":"#fffbdd","editor.wordHighlightBackground":"#1c6b4805","editor.wordHighlightStrongBackground":"#1c6b4810","editorBracketHighlight.foreground1":"#2993a3","editorBracketHighlight.foreground2":"#1e754f","editorBracketHighlight.foreground3":"#a65e2b","editorBracketHighlight.foreground4":"#a13865","editorBracketHighlight.foreground5":"#bda437","editorBracketHighlight.foreground6":"#296aa3","editorBracketMatch.background":"#1c6b4820","editorError.foreground":"#ab5959","editorGroup.border":"#f0f0f0","editorGroupHeader.tabsBackground":"#ffffff","editorGroupHeader.tabsBorder":"#f0f0f0","editorGutter.addedBackground":"#1e754f","editorGutter.commentRangeForeground":"#393a3450","editorGutter.deletedBackground":"#ab5959","editorGutter.foldingControlForeground":"#393a3490","editorGutter.modifiedBackground":"#296aa3","editorHint.foreground":"#1e754f","editorIndentGuide.activeBackground":"#00000030","editorIndentGuide.background":"#00000015","editorInfo.foreground":"#296aa3","editorInlayHint.background":"#f7f7f7","editorInlayHint.foreground":"#999999","editorLineNumber.activeForeground":"#4e4f47","editorLineNumber.foreground":"#393a3450","editorOverviewRuler.border":"#fff","editorStickyScroll.background":"#f7f7f7","editorStickyScrollHover.background":"#f7f7f7","editorWarning.foreground":"#a65e2b","editorWhitespace.foreground":"#00000015","editorWidget.background":"#ffffff","errorForeground":"#ab5959","focusBorder":"#00000000","foreground":"#393a34","gitDecoration.addedResourceForeground":"#1e754f","gitDecoration.conflictingResourceForeground":"#a65e2b","gitDecoration.deletedResourceForeground":"#ab5959","gitDecoration.ignoredResourceForeground":"#393a3450","gitDecoration.modifiedResourceForeground":"#296aa3","gitDecoration.submoduleResourceForeground":"#393a3490","gitDecoration.untrackedResourceForeground":"#2993a3","input.background":"#f7f7f7","input.border":"#f0f0f0","input.foreground":"#393a34","input.placeholderForeground":"#393a3490","inputOption.activeBackground":"#393a3450","list.activeSelectionBackground":"#f7f7f7","list.activeSelectionForeground":"#393a34","list.focusBackground":"#f7f7f7","list.highlightForeground":"#1c6b48","list.hoverBackground":"#f7f7f7","list.hoverForeground":"#393a34","list.inactiveFocusBackground":"#ffffff","list.inactiveSelectionBackground":"#f7f7f7","list.inactiveSelectionForeground":"#393a34","menu.separatorBackground":"#f0f0f0","notificationCenterHeader.background":"#ffffff","notificationCenterHeader.foreground":"#6a737d","notifications.background":"#ffffff","notifications.border":"#f0f0f0","notifications.foreground":"#393a34","notificationsErrorIcon.foreground":"#ab5959","notificationsInfoIcon.foreground":"#296aa3","notificationsWarningIcon.foreground":"#a65e2b","panel.background":"#ffffff","panel.border":"#f0f0f0","panelInput.border":"#e1e4e8","panelTitle.activeBorder":"#1c6b48","panelTitle.activeForeground":"#393a34","panelTitle.inactiveForeground":"#6a737d","peekViewEditor.background":"#ffffff","peekViewResult.background":"#ffffff","pickerGroup.border":"#f0f0f0","pickerGroup.foreground":"#393a34","problemsErrorIcon.foreground":"#ab5959","problemsInfoIcon.foreground":"#296aa3","problemsWarningIcon.foreground":"#a65e2b","progressBar.background":"#1c6b48","quickInput.background":"#ffffff","quickInput.foreground":"#393a34","quickInputList.focusBackground":"#f7f7f7","scrollbar.shadow":"#6a737d33","scrollbarSlider.activeBackground":"#393a3450","scrollbarSlider.background":"#393a3410","scrollbarSlider.hoverBackground":"#393a3450","settings.headerForeground":"#393a34","settings.modifiedItemIndicator":"#1c6b48","sideBar.background":"#ffffff","sideBar.border":"#f0f0f0","sideBar.foreground":"#4e4f47","sideBarSectionHeader.background":"#ffffff","sideBarSectionHeader.border":"#f0f0f0","sideBarSectionHeader.foreground":"#393a34","sideBarTitle.foreground":"#393a34","statusBar.background":"#ffffff","statusBar.border":"#f0f0f0","statusBar.debuggingBackground":"#f7f7f7","statusBar.debuggingForeground":"#4e4f47","statusBar.foreground":"#4e4f47","statusBar.noFolderBackground":"#ffffff","statusBarItem.prominentBackground":"#f7f7f7","tab.activeBackground":"#ffffff","tab.activeBorder":"#f0f0f0","tab.activeBorderTop":"#393a3490","tab.activeForeground":"#393a34","tab.border":"#f0f0f0","tab.hoverBackground":"#f7f7f7","tab.inactiveBackground":"#ffffff","tab.inactiveForeground":"#6a737d","tab.unfocusedActiveBorder":"#f0f0f0","tab.unfocusedActiveBorderTop":"#f0f0f0","tab.unfocusedHoverBackground":"#ffffff","terminal.ansiBlack":"#121212","terminal.ansiBlue":"#296aa3","terminal.ansiBrightBlack":"#aaaaaa","terminal.ansiBrightBlue":"#296aa3","terminal.ansiBrightCyan":"#2993a3","terminal.ansiBrightGreen":"#1e754f","terminal.ansiBrightMagenta":"#a13865","terminal.ansiBrightRed":"#ab5959","terminal.ansiBrightWhite":"#dddddd","terminal.ansiBrightYellow":"#bda437","terminal.ansiCyan":"#2993a3","terminal.ansiGreen":"#1e754f","terminal.ansiMagenta":"#a13865","terminal.ansiRed":"#ab5959","terminal.ansiWhite":"#dbd7ca","terminal.ansiYellow":"#bda437","terminal.foreground":"#393a34","terminal.selectionBackground":"#22222218","textBlockQuote.background":"#ffffff","textBlockQuote.border":"#f0f0f0","textCodeBlock.background":"#ffffff","textLink.activeForeground":"#1c6b48","textLink.foreground":"#1c6b48","textPreformat.foreground":"#586069","textSeparator.foreground":"#d1d5da","titleBar.activeBackground":"#ffffff","titleBar.activeForeground":"#4e4f47","titleBar.border":"#f7f7f7","titleBar.inactiveBackground":"#ffffff","titleBar.inactiveForeground":"#6a737d","tree.indentGuidesStroke":"#e1e4e8","welcomePage.buttonBackground":"#f6f8fa","welcomePage.buttonHoverBackground":"#e1e4e8"},"displayName":"Vitesse Light","name":"vitesse-light","semanticHighlighting":true,"semanticTokenColors":{"class":"#5a6aa6","interface":"#2e808f","namespace":"#b05a78","property":"#998418","type":"#2e808f"},"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#a0ada0"}},{"scope":["delimiter.bracket","delimiter","invalid.illegal.character-not-allowed-here.html","keyword.operator.rest","keyword.operator.spread","keyword.operator.type.annotation","keyword.operator.relational","keyword.operator.assignment","keyword.operator.type","meta.brace","meta.tag.block.any.html","meta.tag.inline.any.html","meta.tag.structure.input.void.html","meta.type.annotation","meta.embedded.block.github-actions-expression","storage.type.function.arrow","meta.objectliteral.ts","punctuation","punctuation.definition.string.begin.html.vue","punctuation.definition.string.end.html.vue"],"settings":{"foreground":"#999999"}},{"scope":["constant","entity.name.constant","variable.language","meta.definition.variable"],"settings":{"foreground":"#a65e2b"}},{"scope":["entity","entity.name"],"settings":{"foreground":"#59873a"}},{"scope":"variable.parameter.function","settings":{"foreground":"#393a34"}},{"scope":["entity.name.tag","tag.html"],"settings":{"foreground":"#1e754f"}},{"scope":"entity.name.function","settings":{"foreground":"#59873a"}},{"scope":["keyword","storage.type.class.jsdoc","punctuation.definition.template-expression"],"settings":{"foreground":"#1e754f"}},{"scope":["storage","storage.type","support.type.builtin","constant.language.undefined","constant.language.null","constant.language.import-export-all.ts"],"settings":{"foreground":"#ab5959"}},{"scope":["text.html.derivative","storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#393a34"}},{"scope":["string","string punctuation.section.embedded source","attribute.value"],"settings":{"foreground":"#b56959"}},{"scope":["punctuation.definition.string"],"settings":{"foreground":"#b5695977"}},{"scope":["punctuation.support.type.property-name"],"settings":{"foreground":"#99841877"}},{"scope":"support","settings":{"foreground":"#998418"}},{"scope":["property","meta.property-name","meta.object-literal.key","entity.name.tag.yaml","attribute.name"],"settings":{"foreground":"#998418"}},{"scope":["entity.other.attribute-name","invalid.deprecated.entity.other.attribute-name.html"],"settings":{"foreground":"#b07d48"}},{"scope":["variable","identifier"],"settings":{"foreground":"#b07d48"}},{"scope":["support.type.primitive","entity.name.type"],"settings":{"foreground":"#2e8f82"}},{"scope":"namespace","settings":{"foreground":"#b05a78"}},{"scope":["keyword.operator","keyword.operator.assignment.compound","meta.var.expr.ts"],"settings":{"foreground":"#ab5959"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"carriage-return","settings":{"background":"#d73a49","content":"^M","fontStyle":"italic underline","foreground":"#fafbfc"}},{"scope":"message.error","settings":{"foreground":"#b31d28"}},{"scope":"string variable","settings":{"foreground":"#b56959"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#ab5e3f"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#b56959"}},{"scope":"string.regexp constant.character.escape","settings":{"foreground":"#bda437"}},{"scope":["support.constant"],"settings":{"foreground":"#a65e2b"}},{"scope":["keyword.operator.quantifier.regexp","constant.numeric","number"],"settings":{"foreground":"#2f798a"}},{"scope":["keyword.other.unit"],"settings":{"foreground":"#ab5959"}},{"scope":["constant.language.boolean","constant.language"],"settings":{"foreground":"#1e754f"}},{"scope":"meta.module-reference","settings":{"foreground":"#1c6b48"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#a65e2b"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#1c6b48"}},{"scope":"markup.quote","settings":{"foreground":"#2e808f"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#393a34"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#393a34"}},{"scope":"markup.raw","settings":{"foreground":"#1c6b48"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#ffeef0","foreground":"#b31d28"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#f0fff4","foreground":"#22863a"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#ffebda","foreground":"#e36209"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#005cc5","foreground":"#f6f8fa"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#6f42c1"}},{"scope":"meta.diff.header","settings":{"foreground":"#005cc5"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#005cc5"}},{"scope":"meta.output","settings":{"foreground":"#005cc5"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#586069"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#b31d28"}},{"scope":["constant.other.reference.link","string.other.link","punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown"],"settings":{"foreground":"#b56959"}},{"scope":["markup.underline.link.markdown","markup.underline.link.image.markdown"],"settings":{"fontStyle":"underline","foreground":"#393a3490"}},{"scope":["type.identifier","constant.other.character-class.regexp"],"settings":{"foreground":"#5a6aa6"}},{"scope":["entity.other.attribute-name.html.vue"],"settings":{"foreground":"#59873a"}},{"scope":["invalid.illegal.unrecognized-tag.html"],"settings":{"fontStyle":"normal"}}],"type":"light"}'))});var fde,dq,uq,Mx=_(()=>{fde=Uint8Array.from(atob("AGFzbQEAAAABoQEWYAJ/fwF/YAF/AX9gA39/fwF/YAR/f39/AX9gAX8AYAV/f39/fwF/YAN/f38AYAJ/fwBgBn9/f39/fwF/YAd/f39/f39/AX9gAAF/YAl/f39/f39/f38Bf2AIf39/f39/f38Bf2AAAGAEf39/fwBgA39+fwF+YAZ/fH9/f38Bf2AAAXxgBn9/f39/fwBgAnx/AXxgAn5/AX9gBX9/f39/AAJ1BANlbnYVZW1zY3JpcHRlbl9tZW1jcHlfYmlnAAYDZW52EmVtc2NyaXB0ZW5fZ2V0X25vdwARFndhc2lfc25hcHNob3RfcHJldmlldzEIZmRfd3JpdGUAAwNlbnYWZW1zY3JpcHRlbl9yZXNpemVfaGVhcAABA9MB0QENBAABAAECAgsCAAIEBAACAQEAAQMCAwkCBgUDBQgCAwwMAwkJAwgDAQIFAwMEAQUHCwgCAgsABQUBAgQCBgIAAQACBAIABwMHBgcAAwACAAICAAQBAgcAAgUCAAEBBgYABgQACAUICQsJDAAAAAAAAAACAgIDAAIDAgADAQABAAACBQICAAESAQEEAgIGAgUDAQUAAgEBAAoBAAEAAwMCAAACBgIOAgEPAQEBChMCBQkGAQ4UFRAHAwIBAAEECggCAQgIBwcNAQQABwABCgQBBQQFAXABMzMFBwEBgAKAgAIGDgJ/AUHQj9MCC38BQQALB5QCDwZtZW1vcnkCABFfX3dhc21fY2FsbF9jdG9ycwAEGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBABBfX2Vycm5vX2xvY2F0aW9uALABB29tYWxsb2MAwAEFb2ZyZWUAwQEQZ2V0TGFzdE9uaWdFcnJvcgDCARFjcmVhdGVPbmlnU2Nhbm5lcgDEAQ9mcmVlT25pZ1NjYW5uZXIAxQEYZmluZE5leHRPbmlnU2Nhbm5lck1hdGNoAMYBG2ZpbmROZXh0T25pZ1NjYW5uZXJNYXRjaERiZwDHAQlzdGFja1NhdmUA0QEMc3RhY2tSZXN0b3JlANIBCnN0YWNrQWxsb2MA0wEMZHluQ2FsbF9qaWppANQBCVIBAEEBCzIFCgsPHC9vcHRxcnN1ugG7Ab0BBgcICYABfoEBggGDAX97fIUBmwF9hAFvnAFvnQGeAZ8BoAGhAZIBogGYAZcBowGkAaUBqwGqAawB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ACADNgIEIA0oAgBBATYCCEEADwsgACgCDCABEE8iA0EASARAIAMPCyACIAIoAowBIgVBAWo2AowBIAFBOxBRIgQNCyABKAIIIANBBWo2AgQgAUHNABBRIgQNCyABKAIIIAU2AgQgASgCCEEANgIIIAAoAgwgASACEEIiBA0LIAFBPhBRIgAhBCAADQsgASgCCCAFNgIEIAFBPRBRIgAhBCAADQsgAUE5EFEPCyMAQRBrIgkkAAJAIAAoAhQgACgCGEYEQCACIAIoAowBIgdBAWo2AowBAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBkEATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIgVFDQIgASAFNgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBjYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHNADYCACABKAIIIAc2AgQgASgCCEEANgIIAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBkEATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIgVFDQIgASAFNgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBjYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHKADYCACABKAIIIAAoAhQ2AgQgASgCCEEANgIIIAEoAghBATYCDCAAKAIMIAEgAhBCIgMNAQJAIAEoAgwiACABKAIQIgJJDQAgAkUNACACQQF0IgBBAEwEQEF1IQMMAwtBeyEDIAEoAgAgAkEobBDNASIERQ0CIAEgBDYCACABKAIEIAJBA3QQzQEiAkUNAiABIAA2AhAgASACNgIEIAEoAgwhAAsgASAAQQFqNgIMIAEgASgCACAAQRRsaiIANgIIQQAhAyAAQQA2AhAgAEIANwIIIABCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQcwANgIAIAEoAgggBzYCBCABKAIIQQA2AggMAQsgACgCICIDBEAgAyABIAkgAkEAEF0iA0EASA0BAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiB0EATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIgZFDQIgASAGNgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBzYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHJADYCACABKAIIQQAgCSgCAGs2AgQgACgCICABIAIQQiIDDQELIAIgAigCjAEiB0EBajYCjAECQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIGQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiBUUNASABIAU2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAGNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc4ANgIAIAEoAghBAjYCBCABKAIIIAc2AggCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIGQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiBUUNASABIAU2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAGNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc8ANgIAIAEoAghBBDYCBCACIAIoAowBIgZBAWo2AowBAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHNADYCACABKAIIIAY2AgQgASgCCEEANgIIAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akE7NgIAIAEoAghBAjYCBAJAIAEoAgwiAyABKAIQIgRJDQAgBEUNACAEQQF0IgVBAEwEQEF1IQMMAgtBeyEDIAEoAgAgBEEobBDNASIIRQ0BIAEgCDYCACABKAIEIARBA3QQzQEiBEUNASABIAU2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBOjYCACABKAIIQQM2AgQCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIFQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiCEUNASABIAg2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAFNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc8ANgIAIAEoAghBAjYCBCABKAIIIAc2AgggASgCCEEANgIMAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akE5NgIAIAFBygAQUSIDDQAgACgCGCEDIAEoAgggACgCFCIENgIEIAEoAghBfyADIARrIANBf0YbNgIIIAEoAghBAjYCDCABQcsAEFEiAw0AIAAoAgwgASACEEIiAw0AIAFBKBBRIgMNACABKAIIQQE2AgQgAUHMABBRIgMNACABKAIIIAY2AgQgASgCCEEANgIIIAFBzwAQUSIDDQAgASgCCEECNgIEIAEoAgggBzYCCCABKAIIQQE2AgxBACEDCyAJQRBqJAAgAw8LIwBBEGsiCiQAIAAoAgwgARBPIQggACgCGCEGIAAoAhQhBSACIAIoAowBIgdBAWo2AowBIAEoAhAhBCABKAIMIQMCQCAFIAZGBEACQCADIARJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAwtBeyEDIAEoAgAgBEEobBDNASIFRQ0CIAEgBTYCACABKAIEIARBA3QQzQEiBEUNAiABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBzQA2AgAgASgCCCAHNgIEIAEoAghBADYCCAJAIAEoAgwiAyABKAIQIgRJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAwtBeyEDIAEoAgAgBEEobBDNASIFRQ0CIAEgBTYCACABKAIEIARBA3QQzQEiBEUNAiABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBOzYCACABKAIIIAhBBGo2AgQCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIGQQBMBEBBdSEDDAMLQXshAyABKAIAIARBKGwQzQEiBUUNAiABIAU2AgAgASgCBCAEQQN0EM0BIgRFDQIgASAGNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQcoANgIAIAEoAgggACgCFDYCBCABKAIIQQA2AgggASgCCEEBNgIMIAAoAgwgASACEEIiAw0BAkAgASgCDCIAIAEoAhAiAkkNACACRQ0AIAJBAXQiAEEATARAQXUhAwwDC0F7IQMgASgCACACQShsEM0BIgRFDQIgASAENgIAIAEoAgQgAkEDdBDNASICRQ0CIAEgADYCECABIAI2AgQgASgCDCEACyABIABBAWo2AgwgASABKAIAIABBFGxqIgA2AgggAEEANgIQIABCADcCCCAAQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akE+NgIAIAEoAgggBzYCBAJAIAEoAgwiACABKAIQIgJJDQAgAkUNACACQQF0IgBBAEwEQEF1IQMMAwtBeyEDIAEoAgAgAkEobBDNASIERQ0CIAEgBDYCACABKAIEIAJBA3QQzQEiAkUNAiABIAA2AhAgASACNgIEIAEoAgwhAAsgASAAQQFqNgIMIAEgASgCACAAQRRsaiIANgIIIABBADYCECAAQgA3AgggAEIANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBOTYCAAJAIAEoAgwiACABKAIQIgJJDQAgAkUNACACQQF0IgBBAEwEQEF1IQMMAwtBeyEDIAEoAgAgAkEobBDNASIERQ0CIAEgBDYCACABKAIEIAJBA3QQzQEiAkUNAiABIAA2AhAgASACNgIEIAEoAgwhAAsgASAAQQFqNgIMIAEgASgCACAAQRRsaiIANgIIQQAhAyAAQQA2AhAgAEIANwIIIABCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQT02AgAMAQsCQCADIARJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAgtBeyEDIAEoAgAgBEEobBDNASIFRQ0BIAEgBTYCACABKAIEIARBA3QQzQEiBEUNASABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBzgA2AgAgASgCCEECNgIEIAEoAgggBzYCCAJAIAEoAgwiAyABKAIQIgRJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAgtBeyEDIAEoAgAgBEEobBDNASIFRQ0BIAEgBTYCACABKAIEIARBA3QQzQEiBEUNASABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBzwA2AgAgASgCCEEENgIEIAIgAigCjAEiBkEBajYCjAECQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIFQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiCUUNASABIAk2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAFNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc0ANgIAIAEoAgggBjYCBCABKAIIQQA2AggCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIFQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiCUUNASABIAk2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAFNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQTs2AgAgASgCCCAIQQhqNgIEIAAoAiAiAwRAIAMgARBPIQMgASgCCCIEIAMgBCgCBGpBAWo2AgQgACgCICABIAogAkEAEF0iA0EASA0BAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIghFDQIgASAINgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHJADYCACABKAIIQQAgCigCAGs2AgQgACgCICABIAIQQiIDDQELAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHKADYCACAAKAIYIQMgASgCCCAA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AgANACAAKAIwDQAgACgCDCECIAAgAEEYaiIENgIMIAAgBCAAKAIQIAJrajYCEAsgBSgCAA0BIAUoAjANASAFKAIMIQAgBSAFQRhqIgI2AgwgBSACIAUoAhAgAGtqNgIQIAMQEAwGCyAGQcACaiIFIABBMGoiAikCADcDACAGQbgCaiIEIABBKGoiASkCADcDACAGQbACaiIJIABBIGoiCykCADcDACAGQagCaiIHIABBGGoiCikCADcDACAGQaACaiIOIABBEGoiDSkCADcDACAGQZgCaiIQIABBCGoiDCkCADcDACAGIAApAgA3A5ACIAIgA0EwaiIVKQIANwIAIAEgA0EoaiICKQIANwIAIAsgA0EgaiIBKQIANwIAIAogA0EYaiILKQIANwIAIA0gA0EQaiIKKQIANwIAIAwgA0EIaiINKQIANwIAIAAgAykCADcCACAVIAUpAwA3AgAgAiAEKQMANwIAIAEgCSkDADcCACALIAcpAwA3AgAgCiAOKQMANwIAIA0gECkDADcCACADIAYpA5ACNwIAAkAgACgCAA0AIAAoAjANACAAKAIMIQUgACAAQRhqIgI2AgwgACACIAAoAhAgBWtqNgIQCyADKAIADQAgAygCMA0AIAMoAgwhBSADIANBGGoiADYCDCADIAAgAygCECAFa2o2AhALIAMQEAwECyAGQcACaiIFIABBMGoiAikCADcDACAGQbgCaiIEIABBKGoiAykCADcDACAGQbACaiIBIABBIGoiCSkCADcDACAGQagCaiILIABBGGoiBykCADcDACAGQaACaiIKIABBEGoiDikCADcDACAGQZgCaiINIABBCGoiECkCADcDACAGIAApAgA3A5ACIAIgCEEwaiIMKQIANwIAIAMgCEEoaiICKQIANwIAIAkgCEEgaiIDKQIANwIAIAcgCEEYaiIJKQIANwIAIA4gCEEQaiIHKQIANwIAIBAgCEEIaiIOKQIANwIAIAAgCCkCADcCACAMIAUpAwA3AgAgAiAEKQMANwIAIAMgASkDADcCACAJIAspAwA3AgAgByAKKQMANwIAIA4gDSkDADcCACAIIAYpA5ACNwIAAkAgACgCAA0AIAAoAjANACAAKAIMIQUgACAAQRhqIgI2AgwgACACIAAoAhAgBWtqNgIQCwJAIAgoAgANACAIKAIwDQAgCCgC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QQFrQQZ0aiIBKAIAIAUoAhhHBEAgAUIANwIAIAFCADcCOCABQgA3AjAgAUIANwIoIAFCADcCICABQgA3AhggAUIANwIQIAFCADcCCCABIAUoAhg2AgALIAEoAghBACABKAIEGyECCyAAKAIIIgFBAEwNACAAKAIoKAIoIgUoAhwiBiABQQFrIghBBnRqIgEoAgAgBSgCGEcEQCABQgA3AgAgAUIANwI4IAFCADcCMCABQgA3AiggAUIANwIgIAFCADcCGCABQgA3AhAgAUIANwIIIAEgBSgCGDYCAAsCQCABKAIERQRAIAAoAgwgACgCCBAOIgFFDQIgASgCBEEBRw0CIAEoAkQiAyABKAJIIgUgBygCRCgCFBEAACEIQQAhBiAFIAMgBygCRCgCABEBACADaiIBSwRAIAEgBSAHKAJEKAIUEQAAIQZBmH4hAyABIAcoAkQoAgARAQAgAWogBUcNAwtBmH4hAwJ/AkACQAJAAkAgCEEhaw4eAQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHAgADBwtBACAGQT1GDQMaDAYLQQEgBkE9Rg0CGgwFC0EEIAZBPUYNARogBg0EQQIMAQtBBSAGQT1GDQAaIAYNA0EDCyEBQWIhAyAAKAIIIgdBAEwNAiAAKAIoKAIoIgMoAhwgB0EGdGpBQGoiAEEBNgIEIAAgBTYCDCAAIAE2AgggACADKAIYNgIADAELIAYgCEEGdGooAgghAQtBACEAAkACQAJAAkACQAJAAkAgAQ4GAAECAwQFBgsgAiAERiEADAULIAIgBEchAAwECyACIARKIQAMAwsgAiAESCEADAILIAIgBE4hAAwBCyACIARMIQALIABBAXMhAwsgAws/AQF/AkAgACgCDCIAIAIgAWsiA2oQywEiAkUNACACIAEgAxCmASEBIABBAEwNACABIANqQQAgABCoARoLIAILJgAgAiABIAIgACgCOBEAACIBSwR/IAEgACgCABEBACABagUgAQsLHgEBfyABIAJJBH8gASACQQFrIAAoAjgRAAAFIAMLCzsAAkAgAkUNAANAIANBAEwEQCACDwsgASACTw0BIANBAWshAyABIAJBAWsgACgCOBEAACICDQALC0EAC2gBBH8gASECA0ACQCACLQAADQAgACgCDCIDQQFHBEAgAiEEIANBAkgNAQNAIAQtAAENAiAEQQFqIQQgA0ECSiEFIANBAWshAyAFDQALCyACIAFrDwsgAiAAKAIAEQEAIAJqIQIMAAsAC3UBBH8jAEEQayIAJAACQANAIAAgBEEDdEHQJWoiAygCBCIFNgIMIAMoAgAiBiAAQQxqQQEgAiABEQMAIgMNASAAIAY2AgwgBSAAQQxqQQEgAiABEQMAIgMNASAEQQFqIgRBGkcNAAtBACEDCyAAQRBqJAAgAwtOAEEgIQACfyABLQAAIgJBwQBrQf8BcUEaTwRAQWAhAEEAIAJB4QBrQf8BcUEZSw0BGgsgA0KBgICAEDcCACADIAAgAS0AAGo2AghBAQsLBABBfgscAAJ/IAAgAUkEQEEBIAAtAABBCkYNARoLQQALCyUAIAMgASgCAC0AAEHQH2otAAA6AAAgASABKAIAQQFqNgIAQQELBABBAQsHACAALQAACw4AQQFB8HwgAEGAAkkbCwsAIAEgADoAAEEBCwQAIAELzgEBBn8gASACSQRAIAEhAwNAIAVBAWohBSADIAAoAgARAQAgA2oiAyACSQ0ACwtBAEHAmhFqIQMgBEHHCWohBANAAkAgBSADIgYuAQgiB0cNACAFIQggASEDAkAgB0EATA0AA0AgAiADSwRAIAMgAiAAKAIUEQAAIAQtAABHDQMgBEEBaiEEIAMgACgCABEBACADaiEDIAhBAUshByAIQQFrIQggBw0BDAILCyAELQAADQELIAYoAgQPCyAGQQxqIQMgBigCDCIEDQALQaF+C2gBAX8CQCAEQQBKBEADQCABIAJPBEAgAy0AAA8LIAEgAiAAKAIUEQAAIQUgAy0AACAFayIFDQIgA0EBaiEDIAEgACgCABEBACABaiEBIARBAUshBSAEQQFrIQQgBQ0ACwtBACEFCyAFCy4BAX8gASACIAAoAhQRAAAiAEH/AE0EfyAAQQF0QdAhai8BAEEMdkEBcQUgAwsLPgEDfwJAIAJBAEwNAANAIAAgA0ECdCIFaigCACABIAVqKAIARgRAIAIgA0EBaiIDRw0BDAILC0F/IQQLIAQLJwEBfyAAIAFBA20iAkECdGooAgBBECABIAJBA2xrQQN0a3ZB/wFxC7YIAQF/Qc0JIQECQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB9ANqDvQDTU5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTkxOTktKMzZOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTklIR0ZFRENCQUA/Pj08Ozo5ODc1NE4yMTAvLi0sKyopKE5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk4nJiUkIyIhIB8eHRwbGhkYThcWFRQTEhFOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk4QTk5OTk5ODw4NTgcGBQQDDAsKCU5OTk4IAk4BAE9OC0GzDA8LQbMNDwtBjQ4PC0GEDw8LQfAPDwtByRAPC0G+EQ8LQf8RDwtBwBIPC0HnEg8LQZYTDwtBuhMPC0HkEw8LQf4TDwtBvBQPC0GEFQ8LQZcVDwtBrhUPC0HNFQ8LQewVDwtBnhYPC0HyFg8LQYoXDwtBoBcPC0G5Fw8LQdUXDwtB9BcPC0GYGA8LQbsYDwtB7BgPC0GgJw8LQcUnDwtB3CcPC0H4Jw8LQZ8oDwtBtCgPC0HLKA8LQeAoDwtB+ygPC0GaKQ8LQb0pDwtBzCkPC0HsKQ8LQZgqDwtBsioPC0HlKg8LQZIrDwtBsisPC0HJKw8LQeUrDwtBliwPC0GoLA8LQcAsDwtB2SwPC0HsLA8LQYUtDwtBmS0P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AUYNAQsLIAILoQEBBH9BASEEAkAgACABTw0AA0BBACEEIAAtAAAiAkHAAXFBgAFGDQEgAEEBaiEDAkAgAkHAAWtBNEsEQCADIQAMAQsgAEECIAJBAnRBkIoRaigCACICIAJBAkwbIgVqIQBBASECA0AgASADRg0DIAMtAABBwAFxQYABRw0DIANBAWohAyACQQFqIgIgBUcNAAsLIAAgAUkNAAtBASEECyAEC4AEAQN/IAJBgARPBEAgACABIAIQACAADwsgACACaiEDAkAgACABc0EDcUUEQAJAIABBA3FFBEAgACECDAELIAJFBEAgACECDAELIAAhAgNAIAIgAS0AADoAACABQQFqIQEgAkEBaiICQQNxRQ0BIAIgA0kNAAsLAkAgA0F8cSIEQcAASQ0AIAIgBEFAaiIFSw0AA0AgAiABKAIANgIAIAIgASgCBDYCBCACIAEoAgg2AgggAiABKAIMNgIMIAIgASgCEDYCECACIAEoAhQ2AhQgAiABKAIYNgIYIAIgASgCHDYCHCACIAEoAiA2AiAgAiABKAIkNgIkIAIgASgCKDYCKCACIAEoAiw2AiwgAiABKAIwNgIwIAIgASgCNDYCNCACIAEoAjg2AjggAiABKAI8NgI8IAFBQGshASACQUBrIgIgBU0NAAsLIAIgBE8NAQNAIAIgASgCADYCACABQQRqIQEgAkEEaiICIARJDQALDAELIANBBEkEQCAAIQIMAQsgACADQQRrIgRLBEAgACECDAELIAAhAgNAIAIgAS0AADoAACACIAEtAAE6AAEgAiABLQACOgACIAIgAS0AAzoAAyABQQRqIQEgAkEEaiICIARNDQALCyACIANJBEADQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADRw0ACwsgAAvoAgECfwJAIAAgAUYNACABIAAgAmoiA2tBACACQQF0a00EQCAAIAEgAhCmARoPCyAAIAFzQQNxIQQCQAJAIAAgAUkEQCAEBEAgACEDDAMLIABBA3FFBEAgACEDDAILIAAhAwNAIAJFDQQgAyABLQAAOgAAIAFBAWohASACQQFrIQIgA0EBaiIDQQNxDQALDAELAkAgBA0AIANBA3EEQANAIAJFDQUgACACQQFrIgJqIgMgASACai0AADoAACADQQNxDQALCyACQQNNDQADQCAAIAJBBGsi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AmogASACQf////8Hc0obIQELIAAgA0EBajYCACABIQIgAywAARCvAQ0ACyABC7YEAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAFBCWsOEgABAgUDBAYHCAkKCwwNDg8QERILIAIgAigCACIBQQRqNgIAIAAgASgCADYCAA8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASsDADkDAA8LIAAgAiADEQcACwuDAQIDfwF+AkAgAEKAgICAEFQEQCAAIQUMAQsDQCABQQFrIgEgACAAQgqAIgVCCn59p0EwcjoAACAAQv////+fAVYhAiAFIQAgAg0ACwsgBaciAgRAA0AgAUEBayIBIAIgAkEKbiIDQQpsa0EwcjoAACACQQlLIQQgAyECIAQNAAsLIAELcgEBfyMAQYACayIFJAACQCACIANMDQAgBEGAwARxDQAgBSABQf8BcSACIANrIgNBgAIgA0GAAkkiAhsQqAEaIAJFBEADQCAAIAVBgAIQtQEgA0GAAmsiA0H/AUsNAAsLIAAgBSADELUBCyAFQYACaiQAC8kYAxJ/AXwCfiMAQbAEayIKJAAgCkEANgIsAkAgAb0iGUIAUwRA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IQsgBUEgcSEIIAooAiwhByAGQQJrIg0gBUEPajoAACAGQQFrQS1BKyAHQQBIGzoAACAEQQhxIQkgCkEQaiEHA0AgByIGAn8gAZlEAAAAAAAA4EFjBEAgAaoMAQtBgICAgHgLIgdB4JURai0AACAIcjoAACABIAe3oUQAAAAAAAAwQKIhAQJAIAZBAWoiByAKQRBqa0EBRw0AAkAgCQ0AIANBAEoNACABRAAAAAAAAAAAYQ0BCyAGQS46AAEgBkECaiEHCyABRAAAAAAAAAAAYg0AC0F/IQlB/f///wcgCyASIA1rIhBqIgZrIANIDQAgAEEgIAICfwJAIANFDQAgByAKQRBqayIIQQJrIANODQAgA0ECagwBCyAHIApBEGprIggLIgcgBmoiBiAEELkBIAAgDiALELUBIABBMCACIAYgBEGAgARzELkBIAAgCkEQaiAIELUBIABBMCAHIAhrQQBBABC5ASAAIA0gEBC1ASAAQSAgAiAGIARBgMAAcxC5ASAGIAIgAiAGSBshCQsgCkGwBGokACAJC40FAgZ+An8gASABKAIAQQdqQXhxIgFBEGo2AgAgACABKQMAIQQgASkDCCEFIwBBIGsiACQAAkAgBUL///////////8AgyIDQoCAgICAgMCAPH0gA0KAgICAgIDA/8MAfVQEQCAFQgSGIARCPIiEIQMgBEL//////////w+DIgRCgYCAgICAgIAIWgRAIANCgYCAgICAgIDAAHwhAgwCCyADQoCAgICAgICAQH0hAiAEQoCAgICAgICACFINASACIANCAYN8IQIMAQsgBFAgA0KAgICAgIDA//8AVCADQoCAgICAgMD//wBRG0UEQCAFQgSGIARCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiADQv///////7//wwBWDQBCACECIANCMIinIgFBkfcASQ0AIABBEGohCSAEIQIgBUL///////8/g0KAgICAgIDAAIQiAyEGAkAgAUGB9wBrIghBwABxBEAgAiAIQUBqrYYhBkIAIQIMAQsgCEUNACAGIAitIgeGIAJBwAAgCGutiIQhBiACIAeGIQILIAkgAjcDACAJIAY3AwgCQEGB+AAgAWsiAUHAAHEEQCADIAFBQGqtiCEEQgAhAwwBCyABRQ0AIANBwAAgAWuthiAEIAGtIgKIhCEEIAMgAoghAwsgACAENwMAIAAgAzcDCCAAKQMIQgSGIAApAwAiA0I8iIQhAiAAKQMQIAApAxiEQgBSrSADQv//////////D4OEIgNCgYCAgICAgIAIWgRAIAJCAXwhAgwBCyADQoCAgICAgICACFINACACQgGDIAJ8IQILIABBIGokACACIAVCgICAgICAgICAf4OEvzkDAAugAQECfyMAQaABayIEJABBfyEFIAQgAUEBa0EAIAEbNgKUASAEIAAgBEGeAWogARsiADYCkAEgBEEAQZABEKgBIgRBfzYCTCAEQRA2AiQgBEF/NgJQIAQgBEGfAWo2AiwgBCAEQZABajYCVAJAIAFBAEgEQEHoyhJBPTYCAAwBCyAAQQA6AAAgBCACIANBDkEPELMBIQULIARBoAFqJAAgBQurAQEEfyAAKAJUIgMoAgQiBSAAKAIUIAAoAhwiBmsiBCAEIAVLGyIEBEAgAygCACAGIAQQpgEaIAMgAygCACAEajYCACADIAMoAgQgBGsiBTYCBAsgAygCACEEIAUgAiACIAVLGyIFBEAgBCABIAUQpgEaIAMgAygCACAFaiIENgIAIAMgAygCBCAFazYCBAsgBEEAOgAAIAAgACgCLCIDNgIcIAAgAzYCFCACCxYAIABFBEBBAA8LQejKEiAANgIAQX8LogIAIABFBEBBAA8LAn8CQCAABH8gAUH/AE0NAQJAQfzLEigCACgCAEUEQCABQYB/cUGAvwNGDQNB6MoSQRk2AgAMAQsgAUH/D00EQCAAIAFBP3FBgAFyOgABIAAgAUEGdkHAAXI6AABBAgwECyABQYBAcUGAwANHIAFBgLADT3FFBEAgACABQT9xQYABcjoAAiAAIAFBDHZB4AFyOgAAIAAgAUEGdkE/cUGAAXI6AAFBAwwECyABQYCABGtB//8/TQRAIAAgAUE/cUGAAXI6AAMgACABQRJ2QfABcjoAACAAIAFBBnZBP3FBgAFyOgACIAAgAUEMdkE/cUGAAXI6AAFBBAwEC0HoyhJBGTYCAAtBfwVBAQsMAQsgACABOgAAQQELCwcAIAAQywELBwAgABDMAQu9BQEJfyMAQRBrIggkACAIQZjMEjYCAEGUzBIoAgAhByMAQYABayIBJAAgASAINgJcAkAgB0GhfkcgB0HcAWpBBk9xRQRAIAEgASgCXCICQQRqNgJcAn9BACACKAIAIgAoAgQiAkUNABogACgCCCEEIAAoAgAiBigCDEECTgRAA0ACQCACIARPDQACfyACIAQgBigCFBEAACIAQYABTwRAAkAgAEGAgARJDQAgA0ERSg0AIAEgAEEYdjYCMCABQeAAaiADaiIFQQVBqzIgAUEwahCpASABIABBEHZB/wFxNgIgIAVBBGpBA0GmMiABQSBqEKkBIAEgAEEIdkH/AXE2AhAgBUEGakEDQaYyIAFBEGoQqQEgASAAQf8BcTYCACAFQQhqQQNBpjIgARCpASADQQpqDAILIANBFUoNAiABIABBCHZB/wFxNgJQIAFB4ABqIANqIgVBBUGrMiABQdAAahCpASABIABB/wFxNgJAIAVBBGpBA0GmMiABQUBrEKkBIANBBmoMAQsgAUHgAGogA2ogADoAACADQQFqCyEDIAIgBigCABEBACACaiECIANBG0gNAQsLIAIgBEkMAQsgAUHgAGogAkEbIAQgAmsiACAAQRtOGyIDEKYBGiAAQRtKCyEFIAcQigEhAkGwzBIhAANAAkACQCACLQAAIgRBJUcEQCAERQ0BDAILIAJBAWohBiACLQABIgRB7gBHBEAgBiECDAILIAAgAUHgAGogAxCmASADaiEAIAUEQCAAQaIyLwAAOwAAIABBpDItAAA6AAIgAEEDaiEACyAGQQFqIQIMAgsgAEEAOgAADAMLIAAgBDoAACAAQQFqIQAgAkEBaiECDAALAAtBlL0SIAcQigEiABB6IQJBsMwSIAAgAhCmASACakEAOgAACyABQYABaiQAIAhBEGokAEGwzBIL4wEBAX8CQAJAAkACfyAALQAQBEBBACEBIABBDGogACgCCCACIAIgA2oiBiACIARqIAYgACgCDCAFEG1BAE4NARpBACEGDAMLAkAgACgCFCABRw0AIAAoAhwgBUcNACAAKAIYIARKDQAgAC0AIEUEQEEADwsgACgCDCIGKAIIKAIAIARODQQLIAAgBTYCHCAAIAQ2AhggACABNgIUQQAhASAAKAIIIAIgAiADaiIGIAIgBGogBiAAKAIMIAUQbUEASA0BIABBDGoLKAIAIQZBASEBDAELQQAhBgsgACABOgAgCyAGC7gzARp/IwBBEGsiGCQAIAJBAnQiChDLASEbIAoQywEhGSACQQBK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JyB3aXRob3V0IGVzY2FwZQBXb3JkAEFscGhhAEVVQy1DTgBGQUlMAChudWxsKQAARgBBAEkATAAAAEYAQQBJAEwAAAAAYWJvcnQAQmxhbmsAIyVkAEFscGhhAFsATUlTTUFUQ0gAAE0ASQBTAE0AQQBUAEMASAAAAE0ASQBTAE0AQQBUAEMASAAAAAAtMFgrMFggMFgtMHgrMHggMHgAZmFpbCB0byBtZW1vcnkgYWxsb2NhdGlvbgBDbnRybABIaXJhZ2FuYQBNQVgALQBPTklHLU1PTklUT1I6ICUtNHMgJXMgYXQ6ICVkIFslZCAtICVkXSBsZW46ICVkCgAATQBBAFgAAABNAEEAWAAAAABEaWdpdABtYXRjaC1zdGFjayBsaW1pdCBvdmVyAEFsbnVtAGluZgBjaGFyYWN0ZXIgY2xhc3MgaGFzICclcycgd2l0aG91dCBlc2NhcGUARVJST1IAPT4AAEUAUgBSAE8AUgAAAEUAUgBSAE8AUgAAAABwYXJzZSBkZXB0aCBsaW1pdCBvdmVyAGFsbnVtAEdyYXBoAEthdGFrYW5hAENPVU5UAElORgA8PQAAQwBPAFUATgBUAAAAQwBPAFUATgBUAAAAAExvd2VyAHJldHJ5LWxpbWl0LWluLW1hdGNoIG92ZXIAbmFuAGFscGhhAFRPVEFMX0NPVU5UAEFTQ0lJAABUAE8AVABBAEwAXwBDAE8AVQBOAFQAAABUAE8AVABBAEwAXwBDAE8AVQBOAFQAAAAAUHJpbnQAWERpZ2l0AHJldHJ5LWxpbWl0LWluLXNlYXJjaCBvdmVyAGJsYW5rAENNUABOQU4AAEMATQBQAAAAQwBNAFAAAAAAUHVuY3QAc3ViZXhwLWNhbGwtbGltaXQtaW4tc2VhcmNoIG92ZXIAY250cmwAQ250cmwALgBkaWdpdABCbGFuawBTcGFjZQB1bmRlZmluZWQgdHlwZSAoYnVnKQBQdW5jdABVcHBlcgBncmFwaABpbnRlcm5hbCBwYXJzZXIgZXJyb3IgKGJ1ZykAUHJpbnQAWERpZ2l0AGxvd2VyAHN0YWNrIGVycm9yIChidWcpAHByaW50AFVwcGVyAEFTQ0lJAHVuZGVmaW5lZCBieXRlY29kZSAoYnVnKQBwdW5jdABTcGFjZQBXb3JkAHVuZXhwZWN0ZWQgYnl0ZWNvZGUgKGJ1ZykAZGVmYXVsdCBtdWx0aWJ5dGUtZW5jb2RpbmcgaXMgbm90IHNldABMb3dlcgBzcGFjZQB1cHBlcgBHcmFwaABjYW4ndCBjb252ZXJ0IHRvIHdpZGUtY2hhciBvbiBzcGVjaWZpZWQgbXVsdGlieXRlLWVuY29kaW5nAHhkaWdpdABEaWdpdABmYWlsIHRvIGluaXRpYWxpemUAaW52YWxpZCBhcmd1bWVudABhc2NpaQBlbmQgcGF0dGVybiBhdCBsZWZ0IGJyYWNlAHdvcmQAZW5kIHBhdHRlcm4gYXQgbGVmdCBicmFja2V0ADpdAGVtcHR5IGNoYXItY2xhc3MAcmVkdW5kYW50IG5lc3RlZCByZXBlYXQgb3BlcmF0b3IAcHJlbWF0dXJlIGVuZCBvZiBjaGFyLWNsYXNzAG5lc3RlZCByZXBlYXQgb3BlcmF0b3IgJXMgYW5kICVzIHdhcyByZXBsYWNlZCB3aXRoICclcycAZW5kIHBhdHRlcm4gYXQgZXNjYXBlAD8AZW5kIHBhdHRlcm4gYXQgbWV0YQAqAGVuZCBwYXR0ZXJuIGF0IGNvbnRyb2wAKwBpbnZhbGlkIG1ldGEtY29kZSBzeW50YXgAPz8AaW52YWxpZCBjb250cm9sLWNvZGUgc3ludGF4ACo/AGNoYXItY2xhc3MgdmFsdWUgYXQgZW5kIG9mIHJhbmdlACs/AGNoYXItY2xhc3MgdmFsdWUgYXQgc3RhcnQgb2YgcmFuZ2UAdW5tYXRjaGVkIHJhbmdlIHNwZWNpZmllciBpbiBjaGFyLWNsYXNzACsgYW5kID8/AHRhcmdldCBvZiByZXBlYXQgb3BlcmF0b3IgaXMgbm90IHNwZWNpZmllZAArPyBhbmQgPwAPAAAADgAAAHQ+AwB8PgMA6AP0AU0B+gDIAKcAjwB9AG8AZABbAFMATQBHAEMAPwA7ADgANQAyADAALQArACoAKAAmACUAJAAiACEAIAAfAB4AHQAdABwAGwAaABoAGQAYABgAFwAXABYAFgAVABUAFAAUABQAEwATABMAEgASABIAEQARABEAEAAQABAAEAAPAA8ADwAPAA4ADgAOAA4ADgAOAA0ADQANAA0ADQANAAwADAAMAAwADAAMAAsACwALAAsACwALAAsACwALAAoACgAKAAoA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b2RlIHJhbmdlcyBhcmUgc3BlY2lmaWVkAHRvbyBzaG9ydCBtdWx0aWJ5dGUgY29kZSBzdHJpbmcAdG9vIGJpZyBiYWNrcmVmIG51bWJlcgBpbnZhbGlkIGJhY2tyZWYgbnVtYmVyL25hbWUAbnVtYmVyZWQgYmFja3JlZi9jYWxsIGlzIG5vdCBhbGxvd2VkLiAodXNlIG5hbWUpAHRvbyBtYW55IGNhcHR1cmVzAHRvbyBiaWcgd2lkZS1jaGFyIHZhbHVlAHRvbyBsb25nIHdpZGUtY2hhciB2YWx1ZQB1bmRlZmluZWQgb3BlcmF0b3IAaW52YWxpZCBjb2RlIHBvaW50IHZhbHVlAGdyb3VwIG5hbWUgaXMgZW1wdHkAaW52YWxpZCBncm91cCBuYW1lIDwlbj4AaW52YWxpZCBjaGFyIGluIGdyb3VwIG5hbWUgPCVuPgB1bmRlZmluZWQgbmFtZSA8JW4+IHJlZmVyZW5jZQB1bmRlZmluZWQgZ3JvdXAgPCVuPiByZWZlcmVuY2UAbXVsdGlwbGV4IGRlZmluZWQgbmFtZSA8JW4+AG11bHRpcGxleCBkZWZpbml0aW9uIG5hbWUgPCVuPiBjYWxsAG5ldmVyIGVuZGluZyByZWN1cnNpb24AZ3JvdXAgbnVtYmVyIGlzIHRvbyBiaWcgZm9yIGNhcHR1cmUgaGlzdG9yeQBpbnZhbGlkIGNoYXJhY3RlciBwcm9wZXJ0eSBuYW1lIHslbn0AaW52YWxpZCBpZi1lbHNlIHN5bnRheABpbnZhbGlkIGFic2VudCBncm91cCBwYXR0ZXJuAGludmFsaWQgYWJzZW50IGdyb3VwIGdlbmVyYXRvciBwYXR0ZXJuAGludmFsaWQgY2FsbG91dCBwYXR0ZXJuAGludmFsaWQgY2FsbG91dCBuYW1lAHVuZGVmaW5lZCBjYWxsb3V0IG5hbWUAaW52YWxpZCBjYWxsb3V0IGJvZHkAaW52YWxpZCBjYWxsb3V0IHRhZyBuYW1lAGludmFsaWQgY2FsbG91dCBhcmcAbm90IHN1cHBvcnRlZCBlbmNvZGluZyBjb21iaW5hdGlvbgBpbnZhbGlkIGNvbWJpbmF0aW9uIG9mIG9wdGlvbnMAdmVyeSBpbmVmZmljaWVudCBwYXR0ZXJuAGxpYnJhcnkgaXMg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ALYJAAC5CQAAvAkAAMQJAADHCQAAyAkAAMsJAADOCQAA1wkAANcJAADcCQAA3QkAAN8JAADjCQAA5gkAAP4JAAABCgAAAwoAAAUKAAAKCgAADwoAABAKAAATCgAAKAoAACoKAAAwCgAAMgoAADMKAAA1CgAANgoAADgKAAA5CgAAPAoAADwKAAA+CgAAQgoAAEcKAABICgAASwoAAE0KAABRCgAAUQoAAFkKAABcCgAAXgoAAF4KAABmCgAAdgoAAIEKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvAoAAMUKAADHCgAAyQoAAMsKAADNCgAA0AoAANAKAADgCgAA4woAAOYKAADxCgAA+QoAAP8KAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAAB3CwAAggsAAIMLAACFCwAAigsAAI4LAACQCwAAkgsAAJULAACZCwAAmgsAAJwLAACcCwAAngsAAJ8LAACjCwAApAsAAKgLAACqCwAArgsAALkLAAC+CwAAwgsAAMYLAADICwAAygsAAM0LAADQCwAA0AsAANcLAADXCwAA5gsAAPoLAAAADAAADAwAAA4MAAAQDAAAEgwAACgMAAAqDAAAOQwAADwMAABEDAAARgwAAEgMAABKDAAATQwAAFUMAABWDAAAWAwAAFoMAABdDAAAXQwAAGAMAABjDAAAZgwAAG8MAAB3DAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvAwAAMQMAADGDAAAyAwAAMoMAADNDAAA1QwAANYMAADdDAAA3gwAAOAMAADjDAAA5gwAAO8MAADxDAAA8gwAAAANAAAMDQAADg0AABANAAASDQAARA0AAEYNAABIDQAASg0AAE8NAABUDQAAYw0AAGYNAAB/DQAAgQ0AAIMNAACFDQAAlg0AAJoNAACxDQAAsw0AALsNAAC9DQAAvQ0AAMANAADGDQAAyg0AAMoNAADPDQAA1A0AANYNAADWDQAA2A0AAN8NAADmDQAA7w0AAPINAAD0DQAAAQ4A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AKoAAACqAAAAtQAAALUAAAC6AAAAugAAAN8AAAD2AAAA+AAAAP8AAAABAQAAAQEAAAMBAAADAQAABQEAAAUBAAAHAQAABwEAAAkBAAAJAQAACwEAAAsBAAANAQAADQEAAA8BAAAPAQAAEQEAABEBAAATAQAAEwEAABUBAAAVAQAAFwEAABcBAAAZAQAAGQEAABsBAAAbAQAAHQEAAB0BAAAfAQAAHwEAACEBAAAhAQAAIwEAACMBAAAlAQAAJQEAACcBAAAnAQAAKQEAACkBAAArAQAAKwEAAC0BAAAtAQAALwEAAC8BAAAxAQAAMQEAADMBAAAzAQAANQEAADUBAAA3AQAAOAEAADoBAAA6AQAAPAEAADwBAAA+AQAAPgEAAEABAABAAQAAQgEAAEIBAABEAQAARAEAAEYBAABGAQAASAEAAEkBAABLAQAASwEAAE0BAABNAQAATwEAAE8BAABRAQAAUQEAAFMBAABTAQAAVQEAAFUBAABXAQAAVwEAAFkBAABZAQAAWwEAAFsBAABdAQAAXQEAAF8BAABfAQAAYQEAAGEBAABjAQAAYwEAAGUBAABlAQAAZwEAAGcBAABpAQAAaQEAAGsBAABrAQAAbQEAAG0BAABvAQAAbwEAAHEBAABxAQAAcwEAAHMBAAB1AQAAdQEAAHcBAAB3AQAAegEAAHoBAAB8AQAAfAEAAH4BAACAAQAAgwEAAIMBAACFAQAAhQEAAIgBAACIAQAAjAEAAI0BAACSAQAAkgEAAJUBAACVAQAAmQEAAJsBAACeAQAAngEAAKEBAAChAQAAowEAAKMBAAClAQAApQEAAKgBAACoAQAAqgEAAKsBAACtAQAArQEAALABAACwAQAAtAEAALQBAAC2AQAAtgEAALkBAAC6AQAAvQEAAL8BAADGAQAAxgEAAMkBAADJAQAAzAEAAMwBAADOAQAAzgEAANABAADQAQAA0gEAANIBAADUAQAA1AEAANYBAADWAQAA2AEAANgBAADaAQAA2gEAANwBAADdAQAA3wEAAN8BAADhAQAA4QEAAOMBAADjAQAA5QEAAOUBAADnAQAA5wEAAOkBAADpAQAA6wEAAOsBAADtAQAA7QEAAO8BAADwAQAA8wEAAPMBAAD1AQAA9QEAAPkBAAD5AQAA+wEAAPsBAAD9AQAA/QEAAP8BAAD/AQAAAQIAAAECAAADAgAAAwIAAAUCAAAFAgAABwIAAAcCAAAJAgAACQIAAAsCAAALAgAADQIAAA0CAAAPAgAADwIAABECAAARAgAAEwIAABMCAAAVAgAAFQIAABcCAAAXAgAAGQIAABkCAAAbAgAAGwIAAB0CAAAdAgAAHwIAAB8CAAAhAgAAIQIAACMCAAAjAgAAJQIAACUCAAAnAgAAJwIAACkCAAApAgAAKwIAACsCAAAtAgAALQIAAC8CAAAvAgAAMQIAADECAAAzAgAAOQIAADwCAAA8AgAAPwIAAEACAABCAgAAQgIAAEcCAABHAgAASQIAAEkCAABLAgAASwIAAE0CAABNAgAATwIAAJMCAACVAgAAuAIAAMACAADBAgAA4AIAAOQCAABFAwAARQMAAHEDAABxAwAAcwMAAHMDAAB3AwAAdwMAAHoDAAB9AwAAkAMAAJADAACsAwAAzgMAANADAADRAwAA1QMAANcDAADZAwAA2QMAANsDAADbAwAA3QMAAN0DAADfAwAA3wMAAOEDAADhAwAA4wMAAOMDAADlAwAA5QMAAOcDAADnAwAA6QMAAOkDAADrAwAA6wMAAO0DAADtAwAA7wMAAPMDAAD1AwAA9QMAAPgDAAD4AwAA+wMAAPwDAAAwBAAAXwQAAGEEAABhBAAAYwQAAGMEAABlBAAAZQQAAGcEAABnBAAAaQQAAGkEAABrBAAAawQAAG0EAABtBAAAbwQAAG8EAABxBAAAcQQAAHMEAABzBAAAdQQAAHUEAAB3BAAAdwQAAHkEAAB5BAAAewQAAHsEAAB9BAAAfQQAAH8EAAB/BAAAgQQAAIEEAACLBAAAiwQAAI0EAACNBAAAjwQAAI8EAACRBAAAkQQAAJMEAACTBAAAlQQAAJUEAACXBAAAlwQAAJkEAACZBAAAmwQAAJsEAACdBAAAnQQAAJ8EAACfBAAAoQQAAKEEAACjBAAAowQAAKUEAAClBAAApwQAAKcEAACpBAAAqQQAAKsEAACrBAAArQQAAK0EAACvBAAArwQAALEEAACxBAAAswQAALMEAAC1BAAAtQQAALcEAAC3BAAAuQQAALkEAAC7BAAAuwQAAL0EAAC9BAAAvwQAAL8EAADCBAAAwgQAAMQEAADEBAAAxgQAAMYEAADIBAAAyAQAAMoEAADKBAAAzAQAAMwEAADOBAAAzwQAANEEAADRBAAA0wQAANMEAADVBAAA1QQAANcEAADXBAAA2QQAANkEAADbBAAA2wQAAN0EAADdBAAA3wQAAN8EAADhBAAA4QQAAOMEAADjBAAA5QQAAOUEAADnBAAA5wQAAOkEAADpBAAA6wQAAOsEAADtBAAA7QQAAO8EAADvBAAA8QQAAPEEAADzBAAA8wQAAPUEAAD1BAAA9wQAAPcEAAD5BAAA+QQAAPsEAAD7BAAA/QQAAP0EAAD/BAAA/wQAAAEFAAABBQAAAwUAAAMFAAAFBQAABQUAAAcFAAAHBQAACQUAAAkFAAALBQAACwUAAA0FAAANBQAADwUAAA8FAAARBQAAEQUAABMFAAATBQAAFQUAABUFAAAXBQAAFwUAABkFAAAZBQAAGwUAABsFAAAdBQAAHQUAAB8FAAAfBQAAIQUAACEFAAAjBQAAIwUAACUFAAAlBQAAJwUAACcFAAApBQAAKQUAACsFAAArBQAALQUAAC0FAAAvBQAALwUAAGAFAACIBQAA0BAAAPoQAAD9EAAA/xAAAPgTAAD9EwAAgBwAAIgcAAAAHQAAvx0AAAEeAAABHgAAAx4AAAMeAAAFHgAABR4AAAceAAAHHgAACR4AAAkeAAALHgAACx4AAA0eAAANHgAADx4AAA8eAAARHgAAER4AABMeAAATHgAAFR4AABUeAAAXHgAAFx4AABkeAAAZHgAAGx4AABseAAAdHgAAHR4AAB8eAAAfHgAAIR4AACEeAAAjHgAAIx4AACUeAAAlHgAAJx4AACceAAApHgAAKR4AACseAAArHgAALR4AAC0eAAAvHgAALx4AADEeAAAxHgAAMx4AADMeAAA1HgAANR4AADceAAA3HgAAOR4AADkeAAA7HgAAOx4AAD0eAAA9HgAAPx4AAD8eAABBHgAAQR4AAEMeAABDHgAARR4AAEUeAABHHgAARx4AAEkeAABJHgAASx4AAEseAABNHgAATR4AAE8eAABPHgAAUR4AAFEeAABTHgAAUx4AAFUeAABVHgAAVx4AAFceAABZHgAAWR4AAFseAABbHgAAXR4AAF0eAABfHgAAXx4AAGEeAABhHgAAYx4AAGMeAABlHgAAZR4AAGceAABnHgAAaR4AAGkeAABrHgAAax4AAG0eAABtHgAAbx4AAG8eAABxHgAAcR4AAHMeAABzHgAAdR4AAHUeAAB3HgAAdx4AAHkeAAB5HgAAex4AAHseAAB9HgAAfR4AAH8eAAB/HgAAgR4AAIEeAACDHgAAgx4AAIUeAACFHgAAhx4AAIceAACJHgAAiR4AAIseAACLHgAAjR4AAI0eAACPHgAAjx4AAJEeAACRHgAAkx4AAJMeAACVHgAAnR4AAJ8eAACfHgAAoR4AAKEeAACjHgAAox4AAKUeAAClHgAApx4AAKceAACpHgAAqR4AAKseAACrHgAArR4AAK0eAACvHgAArx4AALEeAACxHgAAsx4AALMeAAC1HgAAtR4AALceAAC3HgAAuR4AALkeAAC7HgAAux4AAL0eAAC9HgAAvx4AAL8eAADBHgAAwR4AAMMeAADDHgAAxR4AAMUeAADHHgAAxx4AAMkeAADJHgAAyx4AAMseAADNHgAAzR4AAM8eAADPHgAA0R4AANEeAADTHgAA0x4AANUeAADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAhx8AAJAfAACXHwAAoB8AAKcfAACwHwAAtB8AALYfAAC3HwAAvh8AAL4fAADCHwAAxB8AAMYfAADHHwAA0B8AANMfAADWHwAA1x8AAOAfAADnHwAA8h8AAPQfAAD2HwAA9x8AAHEgAABxIAAAfyAAAH8gAACQIAAAnCAAAAohAAAKIQAADiEAAA8hAAATIQAAEyEAAC8hAAAvIQAANCEAADQhAAA5IQAAOSEAADwhAAA9IQAARiEAAEkhAABOIQAATiEAAHAhAAB/IQAAhCEAAIQhAADQJAAA6SQAADAsAABfLAAAYSwAAGEsAABlLAAAZiwAAGgsAABoLAAAaiwAAGosAABsLAAAbCwAAHEsAABxLAAAcywAAHQsAAB2LAAAfSwAAIEsAACBLAAAgywAAIMsAACFLAAAhSwAAIcsAACHLAAAiSwAAIksAACLLAAAiywAAI0sAACNLAAAjywAAI8sAACRLAAAkSwAAJMsAACTLAAAlSwAAJUsAACXLAAAlywAAJksAACZLAAAmywAAJssAACdLAAAnSwAAJ8sAACfLAAAoSwAAKEsAACjLAAAoywAAKUsAAClLAAApywAAKcsAACpLAAAqSwAAKssAACrLAAArSwAAK0sAACvLAAArywAALEsAACxLAAAsywAALMsAAC1LAAAtSwAALcsAAC3LAAAuSwAALksAAC7LAAAuywAAL0sAAC9LAAAvywAAL8sAADBLAAAwSwAAMMsAADDLAAAxSwAAMUsAADHLAAAxywAAMksAADJLAAAyywAAMssAADNLAAAzSwAAM8sAADPLAAA0SwAANEsAADTLAAA0ywAANUsAADVLAAA1ywAANcsAADZLAAA2SwAANssAADbLAAA3SwAAN0sAADfLAAA3ywAAOEsAADhLAAA4ywAAOQsAADsLAAA7CwAAO4sAADuLAAA8ywAAPMsAAAALQAAJS0AACctAAAnLQAALS0AAC0tAABBpgAAQaYAAEOmAABDpgAARaYAAEWmAABHpgAAR6YAAEmmAABJpgAAS6YAAEumAABNpgAATaYAAE+mAABPpgAAUaYAAFGmAABTpgAAU6YAAFWmAABVpgAAV6YAAFemAABZpgAAWaYAAFumAABbpgAAXaYAAF2mAABfpgAAX6YAAGGmAABhpgAAY6YAAGOmAABlpgAAZaYAAGemAABnpgAAaaYAAGmmAABrpgAAa6YAAG2mAABtpgAAgaYAAIGmAACDpgAAg6YAAIWmAACFpgAAh6YAAIemAACJpgAAiaYAAIumAACLpgAAjaYAAI2mAACPpgAAj6YAAJGmAACRpgAAk6YAAJOmAACVpgAAlaYAAJemAACXpgAAmaYAAJmmAACbpgAAnaYAACOnAAAjpwAAJacAACWnAAAnpwAAJ6cAACmnAAAppwAAK6cAACunAAAtpwAALacAAC+nAAAxpwAAM6cAADOnAAA1pwAANacAADenAAA3pwAAOacAADmnAAA7pwAAO6cAAD2nAAA9pwAAP6cAAD+nAABBpwAAQacAAEOnAABDpwAARacAAEWnAABHpwAAR6cAAEmnAABJpwAAS6cAAEunAABNpwAATacAAE+nAABPpwAAUacA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XR8AAF8fAAB9HwAAgB8AALQfAAC2HwAAxB8AAMYfAADTHwAA1h8AANsfAADdHwAA7x8AAPIfAAD0HwAA9h8AAP4fAAAAIAAAJyAAACogAABkIAAAZiAAAHEgAAB0IAAAjiAAAJAgAACcIAAAoCAAAMAgAADQIAAA8CAAAAAhAACLIQAAkCEAACYkAABAJAAASiQAAGAkAABzKwAAdisAAJUrAACXKwAA8ywAAPksAAAlLQAAJy0AACctAAAtLQAALS0AADAtAABnLQAAby0AAHAtAAB/LQAAli0AAKAtAACmLQAAqC0AAK4tAACwLQAAti0AALgtAAC+LQAAwC0AAMYtAADILQAAzi0AANAtAADWLQAA2C0AAN4tAADgLQAAXS4AAIAuAACZLgAAmy4AAPMuAAAALwAA1S8AAPAvAAD7LwAAADAAAD8wAABBMAAAljAAAJkwAAD/MAAABTEAAC8xAAAxMQAAjjEAAJAxAADjMQAA8DEAAB4yAAAgMgAAjKQAAJCkAADGpAAA0KQAACumAABApgAA96YAAACnAADKpwAA0KcAANGnAADTpwAA06cAANWnAADZpwAA8qcAACyoAAAwqAAAOagAAECoAAB3qAAAgKgAAMWoAADOqAAA2agAAOCoAABTqQAAX6kAAHypAACAqQAAzakAAM+pAADZqQAA3qkAAP6pAAAAqgAANqoAAECqAABNqgAAUKoAAFmqAABcqgAAwqoAANuqAAD2qgAAAasAAAarAAAJqwAADqsAABGrAAAWqwAAIKsAACarAAAoqwAALqsAADCrAABrqwAAcKsAAO2rAADwqwAA+asAAACsAACj1wAAsNcAAMbXAADL1wAA+9cAAADgAABt+gAAcPoAANn6AAAA+wAABvsAABP7AAAX+wAAHfsAADb7AAA4+wAAPPsAAD77AAA++wAAQPsAAEH7AABD+wAARPsAAEb7AADC+wAA0/sAAI/9AACS/QAAx/0AAM/9AADP/QAA8P0AABn+AAAg/gAAUv4AAFT+AABm/gAAaP4AAGv+AABw/gAAdP4AAHb+AAD8/gAA//4AAP/+AAAB/wAAvv8AAML/AADH/wAAyv8AAM//AADS/wAA1/8AANr/AADc/wAA4P8AAOb/AADo/wAA7v8AAPn/AAD9/wAAAAABAAsAAQANAAEAJgABACgAAQA6AAEA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AAIBAAACAQAABAEAAAQBAAAGAQAABgEAAAgBAAAIAQAACgEAAAoBAAAMAQAADAEAAA4BAAAOAQAAEAEAABABAAASAQAAEgEAABQBAAAUAQAAFgEAABYBAAAYAQAAGAEAABoBAAAaAQAAHAEAABwBAAAeAQAAHgEAACABAAAgAQAAIgEAACIBAAAkAQAAJAEAACYBAAAmAQAAKAEAACgBAAAqAQAAKgEAACwBAAAsAQAALgEAAC4BAAAwAQAAMAEAADIBAAAyAQAANAEAADQBAAA2AQAANgEAADkBAAA5AQAAOwEAADsBAAA9AQAAPQEAAD8BAAA/AQAAQQEAAEEBAABDAQAAQwEAAEUBAABFAQAARwEAAEcBAABKAQAASgEAAEwBAABMAQAATgEAAE4BAABQAQAAUAEAAFIBAABSAQAAVAEAAFQBAABWAQAAVgEAAFgBAABYAQAAWgEAAFoBAABcAQAAXAEAAF4BAABeAQAAYAEAAGABAABiAQAAYgEAAGQBAABkAQAAZgEAAGYBAABoAQAAaAEAAGoBAABqAQAAbAEAAGwBAABuAQAAbgEAAHABAABwAQAAcgEAAHIBAAB0AQAAdAEAAHYBAAB2AQAAeAEAAHkBAAB7AQAAewEAAH0BAAB9AQAAgQEAAIIBAACEAQAAhAEAAIYBAACHAQAAiQEAAIsBAACOAQAAkQEAAJMBAACUAQAAlgEAAJgBAACcAQAAnQEAAJ8BAACgAQAAogEAAKIBAACkAQAApAEAAKYBAACnAQAAqQEAAKkBAACsAQAArAEAAK4BAACvAQAAsQEAALMBAAC1AQAAtQEAALcBAAC4AQAAvAEAALwBAADEAQAAxAEAAMcBAADHAQAAygEAAMoBAADNAQAAzQEAAM8BAADPAQAA0QEAANEBAADTAQAA0wEAANUBAADVAQAA1wEAANcBAADZAQAA2QEAANsBAADbAQAA3gEAAN4BAADgAQAA4AEAAOIBAADiAQAA5AEAAOQBAADmAQAA5gEAAOgBAADoAQAA6gEAAOoBAADsAQAA7AEAAO4BAADuAQAA8QEAAPEBAAD0AQAA9AEAAPYBAAD4AQAA+gEAAPoBAAD8AQAA/AEAAP4BAAD+AQAAAAIAAAACAAACAgAAAgIAAAQCAAAEAgAABgIAAAYCAAAIAgAACAIAAAoCAAAKAgAADAIAAAwCAAAOAgAADgIAABACAAAQAgAAEgIAABICAAAUAgAAFAIAABYCAAAWAgAAGAIAABgCAAAaAgAAGgIAABwCAAAcAgAAHgIAAB4CAAAgAgAAIAIAACICAAAiAgAAJAIAACQCAAAmAgAAJgIAACgCAAAoAgAAKgIAACoCAAAsAgAALAIAAC4CAAAuAgAAMAIAADACAAAyAgAAMgIAADoCAAA7AgAAPQIAAD4CAABBAgAAQQIAAEMCAABGAgAASAIAAEgCAABKAgAASgIAAEwCAABMAgAATgIAAE4CAABwAwAAcAMAAHIDAAByAwAAdgMAAHYDAAB/AwAAfwMAAIYDAACGAwAAiAMAAIoDAACMAwAAjAMAAI4DAACPAwAAkQMAAKEDAACjAwAAqwMAAM8DAADPAwAA0gMAANQDAADYAwAA2AMAANoDAADaAwAA3AMAANwDAADeAwAA3gMAAOADAADgAwAA4gMAAOIDAADkAwAA5AMAAOYDAADmAwAA6AMAAOgDAADqAwAA6gMAAOwDAADsAwAA7gMAAO4DAAD0AwAA9AMAAPcDAAD3AwAA+QMAAPoDAAD9AwAALwQAAGAEAABgBAAAYgQAAGIEAABkBAAAZAQAAGYEAABmBAAAaAQAAGgEAABqBAAAagQAAGwEAABsBAAAbgQAAG4EAABwBAAAcAQAAHIEAAByBAAAdAQAAHQEAAB2BAAAdgQAAHgEAAB4BAAAegQAAHoEAAB8BAAAfAQAAH4EAAB+BAAAgAQAAIAEAACKBAAAigQAAIwEAACMBAAAjgQAAI4EAACQBAAAkAQAAJIEAACSBAAAlAQAAJQEAACWBAAAlgQAAJgEAACYBAAAmgQAAJoEAACcBAAAnAQAAJ4EAACeBAAAoAQAAKAEAACiBAAAogQAAKQEAACkBAAApgQAAKYEAACoBAAAqAQAAKoEAACqBAAArAQAAKwEAACuBAAArgQAALAEAACwBAAAsgQAALIEAAC0BAAAtAQAALYEAAC2BAAAuAQAALgEAAC6BAAAugQAALwEAAC8BAAAvgQAAL4EAADABAAAwQQAAMMEAADDBAAAxQQAAMUEAADHBAAAxwQAAMkEAADJBAAAywQAAMsEAADNBAAAzQQAANAEAADQBAAA0gQAANIEAADUBAAA1AQAANYEAADWBAAA2AQAANgEAADaBAAA2gQAANwEAADcBAAA3gQAAN4EAADgBAAA4AQAAOIEAADiBAAA5AQAAOQEAADmBAAA5gQAAOgEAADoBAAA6gQAAOoEAADsBAAA7AQAAO4EAADuBAAA8AQAAPAEAADyBAAA8gQAAPQEAAD0BAAA9gQAAPYEAAD4BAAA+AQAAPoEAAD6BAAA/AQAAPwEAAD+BAAA/gQAAAAFAAAABQAAAgUAAAIFAAAEBQAABAUAAAYFAAAGBQAACAUAAAgFAAAKBQAACgUAAAwFAAAMBQAADgUAAA4FAAAQBQAAEAUAABIFAAASBQAAFAUAABQFAAAWBQAAFgUAABgFAAAYBQAAGgUAABoFAAAcBQAAHAUAAB4FAAAeBQAAIAUAACAFAAAiBQAAIgUAACQFAAAkBQAAJgUAACYFAAAoBQAAKAUAACoFAAAqBQAALAUAACwFAAAuBQAALgUAADEFAABWBQAAoBAAAMUQAADHEAAAxxAAAM0QAADNEAAAoBMAAPUTAACQHAAAuhwAAL0cAAC/HAAAAB4AAAAeAAACHgAAAh4AAAQeAAAEHgAABh4AAAYeAAAIHgAACB4AAAoeAAAKHgAADB4AAAweAAAOHgAADh4AABAeAAAQHgAAEh4AABIeAAAUHgAAFB4AABYeAAAWHgAAGB4AABgeAAAaHgAAGh4AABweAAAcHgAAHh4AAB4eAAAgHgAAIB4AACIeAAAiHgAAJB4AACQeAAAmHgAAJh4AACgeAAAoHgAAKh4AACoeAAAsHgAALB4AAC4eAAAuHgAAMB4AADAeAAAyHgAAMh4AADQeAAA0HgAANh4AADYeAAA4HgAAOB4AADoeAAA6HgAAPB4AADweAAA+HgAAPh4AAEAeAABAHgAAQh4AAEIeAABEHgAARB4AAEYeAABGHgAASB4AAEgeAABKHgAASh4AAEweAABMHgAATh4AAE4eAABQHgAAUB4AAFIeAABSHgAAVB4AAFQeAABWHgAAVh4AAFgeAABYHgAAWh4AAFoeAABcHgAAXB4AAF4eAABeHgAAYB4AAGAeAABiHgAAYh4AAGQeAABkHgAAZh4AAGYeAABoHgAAaB4AAGoeAABqHgAAbB4AAGweAABuHgAAbh4AAHAeAABwHgAAch4AAHIeAAB0HgAAdB4AAHYeAAB2HgAAeB4AAHgeAAB6HgAAeh4AAHweAAB8HgAAfh4AAH4eAACAHgAAgB4AAIIeAACCHgAAhB4AAIQeAACGHgAAhh4AAIgeAACIHgAAih4AAIoeAACMHgAAjB4AAI4eAACOHgAAkB4AAJAeAACSHgAAkh4AAJQeAACUHgAAnh4AAJ4eAACgHgAAoB4AAKIeAACiHgAApB4AAKQeAACmHgAAph4AAKgeAACoHgAAqh4AAKoeAACsHgAArB4AAK4eAACuHgAAsB4AALAeAACyHgAAsh4AALQeAAC0HgAAth4AALYeAAC4HgAAuB4AALoeAAC6HgAAvB4AALweAAC+HgAAvh4AAMAeAADAHgAAwh4AAMIeAADEHgAAxB4AAMYeAADGHgAAyB4AAMgeAADKHgAAyh4AAMweAADMHgAAzh4AAM4eAADQHgAA0B4AANIeAADSHgAA1B4AANQeAADWHgAA1h4AANgeAADYHgAA2h4AANoeAADcHgAA3B4AAN4eAADeHgAA4B4AAOAeAADiHgAA4h4AAOQeAADkHgAA5h4AAOYeAADoHgAA6B4AAOoeAADqHgAA7B4AAOweAADuHgAA7h4AAPAeAADwHgAA8h4AAPIeAAD0HgAA9B4AAPYeAAD2HgAA+B4AAPgeAAD6HgAA+h4AAPweAAD8HgAA/h4AAP4eAAAIHwAADx8AABgfAAAdHwAAKB8AAC8fAAA4HwAAPx8AAEgfAABNHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAF8fAABoHwAAbx8AALgfAAC7HwAAyB8AAMsfAADYHwAA2x8AAOgfAADsHwAA+B8AAPsfAAACIQAAAiEAAAchAAAHIQAACyEAAA0hAAAQIQAAEiEAABUhAAAVIQAAGSEAAB0hAAAkIQAAJCEAACYhAAAmIQAAKCEAACghAAAqIQAALSEAADAhAAAzIQAAPiEAAD8hAABFIQAARSEAAGAhAABvIQAAgyEAAIMhAAC2JAAAzyQAAAAsAAAvLAAAYCwAAGAsAABiLAAAZCwAAGcsAABnLAAAaSwAAGksAABrLAAAaywAAG0sAABwLAAAciwAAHIsAAB1LAAAdSwAAH4sAACALAAAgiwAAIIsAACELAAAhCwAAIYsAACGLAAAiCwAAIgsAACKLAAAiiwAAIwsAACMLAAAjiwAAI4sAACQLAAAkCwAAJIsAACSLAAAlCwAAJQsAACWLAAAliwAAJgsAACYLAAAmiwAAJosAACcLAAAnCwAAJ4sAACeLAAAoCwAAKAsAACiLAAAoiwAAKQsAACkLAAApiwAAKYsAACoLAAAqCwAAKosAACqLAAArCwAAKwsAACuLAAAriwAALAsAACwLAAAsiwAALIsAAC0LAAAtCwAALYsAAC2LAAAuCwAALgsAAC6LAAAuiwAALwsAAC8LAAAviwAAL4sAADALAAAwCwAAMIsAADCLAAAxCwAAMQsAADGLAAAxiwAAMgsAADILAAAyiwAAMosAADMLAAAzCwAAM4sAADOLAAA0CwAANAsAADSLAAA0iwAANQsAADULAAA1iwAANYsAADYLAAA2CwAANosAADaLAAA3CwAANwsAADeLAAA3iwAAOAsAADgLAAA4iwAAOIsAADrLAAA6ywAAO0sAADtLAAA8iwAAPIsAABApgAAQKYAAEKmAABCpgAARKYAAESmAABGpgAARqYAAEimAABIpgAASqYAAEqmAABMpgAATKYAAE6mAABOpgAAUKYAAFCmAABSpgAAUqYAAFSmAABUpgAAVqYAAFamAABYpgAAWKYAAFqmAABapgAAXKYAAFymAABepgAAXqYAAGCmAABgpgAAYqYAAGKmAABkpgAAZKYAAGamAABmpgAAaKYAAGimAABqpgAAaqYAAGymAABspgAAgKYAAICmAACCpgAAgqYAAISmAACEpgAAhqYAAIamAACIpgAAiKYAAIqmAACKpgAAjKYAAIymAACOpgAAjqYAAJCmAACQpgAAkqYAAJKmAACUpgAAlKYAAJamAACWpgAAmKYAAJimAACapgAAmqYAACKnAAAipwAAJKcAACSnAAAmpwAAJqcAACinAAAopwAAKqcAACqnAAAspwAALKcAAC6nAAAupwAAMqcAADKnAAA0pwAANKcAADanAAA2pwAAOKcAADinAAA6pwAAOqcAADynAAA8pwAAPqcAAD6nAABApwAAQKcAAEKnAABCpwAARKcAAESnAABGpwAARqcAAEinAABIpwAASqcAAEqnAABMpwAATKcAAE6nAABOpwAAUKcAAFCnAABSpwAAUqcAAFSnAABUpwAAVqcAAFanAABYpwAAWKcAAFqnAABapwAAXKcAAFynAABepwAAXqcAAGCnAABgpwAAYqcAAGKnAABkpwAAZKcAAGanAABmpwAAaKcAAGinAABqpwAAaqcAAGynAABspwAAbqcAAG6nAAB5pwAAeacAAHunAAB7pwAAfacAAH6nAACApwAAgKcAAIKnAACCpwAAhKcAAISnAACGpwAAhqcAAIunAACLpwAAjacAAI2nAACQpwAAkKcAAJKnAACSpwAAlqcAAJanAACYpwAAmKcAAJqnAACapwAAnKcAAJynAACepwAAnqcAAKCnAACgpwAAoqcAAKKnAACkpwAApKcAAKanAACmpwAAqKcAAKinAACqpwAArqcAALCnAAC0pwAAtqcAALanAAC4pwAAuKcAALqnAAC6pwAAvKcAALynAAC+pwAAvqcAAMCnAADApwAAwqcAAMKnAADEpwAAx6cAAMmnAADJpwAA0KcAANCnAADWpwAA1qcAANinAADYpwAA9acAAPWnAAAh/wAAOv8AAAAEAQAnBAEAsAQBANMEAQBwBQEAegUBAHwFAQCKBQEAjAUBAJIFAQCUBQEAlQUBAIAMAQCyDAEAoBgBAL8YAQBAbgEAX24BAADUAQAZ1AEANNQBAE3UAQBo1AEAgdQBAJzUAQCc1AEAntQBAJ/UAQCi1AEAotQBAKXUAQCm1AEAqdQBAKzUAQCu1AEAtdQBANDUAQDp1AEABNUBAAXVAQAH1QEACtUBAA3VAQAU1QEAFtUBABzVAQA41QEAOdUBADvVAQA+1QEAQNUBAETVAQBG1QEARtUBAErVAQBQ1QEAbNUBAIXVAQCg1QEAudUBANTVAQDt1QEACNYBACHWAQA81gEAVdYBAHDWAQCJ1gEAqNYBAMDWAQDi1gEA+tYBABzXAQA01wEAVtcBAG7XAQCQ1wEAqNcBAMrXAQDK1wEAAOkBACHpAQAw8QEASfEBAFDxAQBp8QEAcPEBAInxAQAAAAAAAwAAADAAAAA5AAAAQQAAAEYAAABhAAAAZgAAAAAAAAD2AgAAMAAAADkAAABBAAAAWgAAAF8AAABfAAAAYQAAAHoAAACqAAAAqgAAALUAAAC1AAAAugAAALoAAADAAAAA1gAAANgAAAD2AAAA+AAAAMECAADGAgAA0QIAAOACAADkAgAA7AIAAOwCAADuAgAA7gIAAAADAAB0AwAAdgMAAHcDAAB6AwAAfQMAAH8DAAB/AwAAhgMAAIYDAACIAwAAigMAAIwDAACMAwAAjgMAAKEDAACjAwAA9QMAAPcDAACBBAAAgwQAAC8FAAAxBQAAVgUAAFkFAABZBQAAYAUAAIgFAACRBQAAvQUAAL8FAAC/BQAAwQUAAMIFAADEBQAAxQUAAMcFAADHBQAA0AUAAOoFAADvBQAA8gUAABAGAAAaBgAAIAYAAGkGAABuBgAA0wYAANUGAADcBgAA3wYAAOgGAADqBgAA/AYAAP8GAAD/BgAAEAcAAEoHAABNBwAAsQcAAMAHAAD1BwAA+gcAAPoHAAD9BwAA/QcAAAAIAAAtCAAAQAgAAFsIAABgCAAAaggAAHAIAACHCAAAiQgAAI4IAACYCAAA4QgAAOMIAABjCQAAZgkAAG8JAABxCQAAgwkAAIUJAACMCQAAjwkAAJAJAACTCQAAqAkAAKoJAACwCQAAsgkAALIJAAC2CQAAuQkAALwJAADECQAAxwkAAMgJAADLCQAAzgkAANcJAADXCQAA3AkAAN0JAADfCQAA4wkAAOYJAADxCQAA/AkAAPwJAAD+CQAA/gkAAAEKAAADCgAABQoAAAoKAAAPCgAAEAoAABMKAAAoCgAAKgoAADAKAAAyCgAAMwoAADUKAAA2CgAAOAoAADkKAAA8CgAAPAoAAD4KAABCCgAARwoAAEgKAABLCgAATQoAAFEKAABRCgAAWQoAAFwKAABeCgAAXgoAAGYKAAB1CgAAgQoAAIMKAACFCgAAjQoAAI8KAACRCgAAkwoAAKgKAACqCgAAsAoAALIKAACzCgAAtQoAALkKAAC8CgAAxQoAAMcKAADJCgAAywoAAM0KAADQCgAA0AoAAOAKAADjCgAA5goAAO8KAAD5CgAA/woAAAELAAADCwAABQsAAAwLAAAPCwAAEAsAABMLAAAoCwAAKgsAADALAAAyCwAAMwsAADULAAA5CwAAPAsAAEQLAABHCwAASAsAAEsLAABNCwAAVQsAAFcLAABcCwAAXQsAAF8LAABjCwAAZgsAAG8LAABxCwAAcQsAAIILAACDCwAAhQsAAIoLAACOCwAAkAsAAJILAACVCwAAmQsAAJoLAACcCwAAnAsAAJ4LAACfCwAAowsAAKQLAACoCwAAqgsAAK4LAAC5CwAAvgsAAMILAADGCwAAyAsAAMoLAADNCwAA0AsAANALAADXCwAA1wsAAOYLAADvCwAAAAwAAAwMAAAODAAAEAwAABIMAAAoDAAAKgwAADkMAAA8DAAARAwAAEYMAABIDAAASgwAAE0MAABVDAAAVgwAAFgMAABaDAAAXQwAAF0MAABgDAAAYwwAAGYMAABvDAAAgAwAAIMMAACFDAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvAwAAMQMAADGDAAAyAwAAMoMAADNDAAA1QwAANYMAADdDAAA3gwAAOAMAADjDAAA5gwAAO8MAADxDAAA8gwAAAANAAAMDQAADg0AABANAAASDQAARA0AAEYNAABIDQAASg0AAE4NAABUDQAAVw0AAF8NAABjDQAAZg0AAG8NAAB6DQAAfw0AAIENAACDDQAAhQ0AAJYNAACaDQAAsQ0AALMNAAC7DQAAvQ0AAL0NAADADQAAxg0AAMoNAADKDQAAzw0AANQNAADWDQAA1g0AANgNAADfDQAA5g0AAO8NAADyDQAA8w0AAAEOAAA6DgAAQA4AAE4OAABQDgAAWQ4AAIEOAACCDgAAhA4AAIQOAACGDgAAig4AAIwOAACjDgAApQ4AAKUOAACnDgAAvQ4AAMAOAADEDgAAxg4AAMYOAADIDgAAzQ4AANAOAADZDgAA3A4AAN8OAAAADwAAAA8AABgPAAAZDwAAIA8AACkPAAA1DwAANQ8AADcPAAA3DwAAOQ8AADkPAAA+DwAARw8AAEkPAABsDwAAcQ8AAIQPAACGDwAAlw8AAJkPAAC8DwAAxg8AAMYPAAAAEAAASRAAAFAQAACdEAAAoBAAAMUQAADHEAAAxxAAAM0QAADNEAAA0BAAAPoQAAD8EAAASBIAAEoSAABNEgAAUBIAAFYSAABYEgAAWBIAAFoSAABdEgAAYBIAAIgSAACKEgAAjRIAAJASAACwEgAAshIAALUSAAC4EgAAvhIAAMASAADAEgAAwhIAAMUSAADIEgAA1hIAANgSAAAQEwAAEhMAABUTAAAYEwAAWhMAAF0TAABfEwAAgBMAAI8TAACgEwAA9RMAAPgTAAD9EwAAARQAAGwWAABvFgAAfxYAAIEWAACaFgAAoBYAAOoWAADuFgAA+BYAAAAXAAAVFwAAHxcAADQXAABAFwAAUxcAAGAXAABsFwAAbhcAAHAXAAByFwAAcxcAAIAXAADTFwAA1xcAANcXAADcFwAA3RcAAOAXAADpFwAACxgAAA0YAAAPGAAAGRgAACAYAAB4GAAAgBgAAKoYAACwGAAA9RgAAAAZAAAeGQAAIBkAACsZAAAwGQAAOxkAAEYZAABtGQAAcBkAAHQZAACAGQAAqxkAALAZAADJGQAA0BkAANkZAAAAGgAAGxoAACAaAABeGgAAYBoAAHwaAAB/GgAAiRoAAJAaAACZGgAApxoAAKcaAACwGgAAzhoAAAAbAABMGwAAUBsAAFkbAABrGwAAcxsAAIAbAADzGwAAABwAADccAABAHAAASRwAAE0cAAB9HAAAgBwAAIgcAACQHAAAuhwAAL0cAAC/HAAA0BwAANIcAADUHAAA+hwAAAAdAAAVHwAAGB8AAB0fAAAgHwAARR8AAEgfAABNHwAAUB8AAFcfAABZHwAAWR8AAFsfAABbHwAAXR8AAF0fAABfHwAAfR8AAIAfAAC0HwAAth8AALwfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMwfAADQHwAA0x8AANYfAADbHwAA4B8AAOwfAADyHwAA9B8AAPYfAAD8HwAAPyAAAEAgAABUIAAAVCAAAHEgAABxIAAAfyAAAH8gAACQIAAAnCAAANAgAADwIAAAAiEAAAIhAAAHIQAAByEAAAohAAATIQAAFSEAABUhAAAZIQAAHSEAACQhAAAkIQAAJiEAACYhAAAoIQAAKCEAACohAAAtIQAALyEAADkhAAA8IQAAPyEAAEUhAABJIQAATiEAAE4hAABgIQAAiCEAALYkAADpJAAAACwAAOQsAADrLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AADAtAABnLQAAby0AAG8tAAB/LQAAli0AAKAtAACmLQAAqC0AAK4tAACwLQAAti0AALgtAAC+LQAAwC0AAMYtAADILQAAzi0AANAtAADWLQAA2C0AAN4tAADgLQAA/y0AAC8uAAAvLgAABTAAAAcwAAAhMAAALzAAADEwAAA1MAAAODAAADwwAABBMAAAljAAAJkwAACaMAAAnTAAAJ8wAAChMAAA+jAAAPwwAAD/MAAABTEAAC8xAAAxMQAAjjEAAKAxAAC/MQAA8DEAAP8xAAAANAAAv00AAABOAACMpAAA0KQAAP2kAAAApQAADKYAABCmAAArpgAAQKYAAHKmAAB0pgAAfaYAAH+mAADxpgAAF6cAAB+nAAAipwAAiKcAAIunAADKpwAA0KcAANGnAADTpwAA06cAANWnAADZpwAA8qcAACeoAAAsqAAALKgAAECoAABzqAAAgKgAAMWoAADQqAAA2agAAOCoAAD3qAAA+6gAAPuoAAD9qAAALakAADCpAABTqQAAYKkAAHypAACAqQAAwKkAAM+pAADZqQAA4KkAAP6pAAAAqgAANqoAAECqAABNqgAAUKoAAFmqAABgqgAAdqoAAHqqAADCqgAA26oAAN2qAADgqgAA76oAAPKqAAD2qgAAAasAAAarAAAJqwAADqsAABGrAAAWqwAAIKsAACarAAAoqwAALqsAADCrAABaqwAAXKsAAGmrAABwqwAA6qsAAOyrAADtqwAA8KsAAPmrAAAArAAAo9cAALDXAADG1wAAy9cAAPvXAAAA+QAAbfoAAHD6AADZ+gAAAPsAAAb7AAAT+wAAF/sAAB37AAAo+wAAKvsAADb7AAA4+wAAPPsAAD77AAA++wAAQPsAAEH7AABD+wAARPsAAEb7AACx+wAA0/sAAD39AABQ/QAAj/0AAJL9AADH/QAA8P0AAPv9AAAA/gAAD/4AACD+AAAv/gAAM/4AADT+AABN/gAAT/4AAHD+AAB0/gAAdv4AAPz+AAAQ/wAAGf8AACH/AAA6/wAAP/8AAD//AABB/wAAWv8AAGb/AAC+/wAAwv8AAMf/AADK/wAAz/8AANL/AADX/wAA2v8AANz/AAAAAAEACwABAA0AAQAmAAEAKAABADoAAQA8AAEAPQABAD8AAQBNAAEAUAABAF0AAQCAAAEA+gABAEABAQB0AQEA/QEBAP0BAQCAAgEAnAIBAKACAQDQAgEA4AIBAOACAQAAAwEAHwMBAC0DAQBKAwEAUAMBAHoDAQCAAwEAnQMBAKADAQDDAwEAyAMBAM8DAQDRAwEA1QMBAAAEAQCdBAEAoAQBAKkEAQCwBAEA0wQBANgEAQD7BAEAAAUBACcFAQAwBQEAYwUBAHAFAQB6BQEAfAUBAIoFAQCMBQEAkgUBAJQFAQCVBQEAlwUBAKEFAQCjBQEAsQUBALMFAQC5BQEAuwUBALwFAQAABgEANgcBAEAHAQBVBwEAYAcBAGcHAQCABwEAhQcBAIcHAQCwBwEAsgcBALoHAQAACAEABQgBAAgIAQAICAEACggBADUIAQA3CAEAOAgBADwIAQA8CAEAPwgBAFUIAQBgCAEAdggBAIAIAQCeCAEA4AgBAPIIAQD0CAEA9QgBAAAJAQAVCQEAIAkBADkJAQCACQEAtwkBAL4JAQC/CQEAAAoBAAMKAQAFCgEABgoBAAwKAQATCgEAFQoBABcKAQAZCgEANQoBADgKAQA6CgEAPwoBAD8KAQBgCgEAfAoBAIAKAQCcCgEAwAoBAMcKAQDJCgEA5goBAAALAQA1CwEAQAsBAFULAQBgCwEAcgsBAIALAQCRCwEAAAwBAEgMAQCADAEAsgwBAMAMAQDyDAEAAA0BACcNAQAwDQEAOQ0BAIAOAQCpDgEAqw4BAKwOAQCwDgEAsQ4BAAAPAQAcDwEAJw8BACcPAQAwDwEAUA8BAHAPAQCFDwEAsA8BAMQPAQDgDwEA9g8BAAAQAQBGEAEAZhABAHUQAQB/EAEAuhABAMIQAQDCEAEA0BABAOgQAQDwEAEA+RABAAARAQA0EQEANhEBAD8RAQBEEQEARxEBAFARAQBzEQEAdhEBAHYRAQCAEQEAxBEBAMkRAQDMEQEAzhEBANoRAQDcEQEA3BEBAAASAQAREgEAExIBADcSAQA+EgEAPhIBAIASAQCGEgEAiBIBAIgSAQCKEgEAjRIBAI8SAQCdEgEAnxIBAKgSAQCwEgEA6hIBAPASAQD5EgEAABMBAAMTAQAFEwEADBMBAA8TAQAQEwEAExMBACgTAQAqEwEAMBMBADITAQAzEwEANRMBADkTAQA7EwEARBMBAEcTAQBIEwEASxMBAE0TAQBQEwEAUBMBAFcTAQBXEwEAXRMBAGMTAQBmEwEAbBMBAHATAQB0EwEAABQBAEoUAQBQFAEAWRQBAF4UAQBhFAEAgBQBAMUUAQDHFAEAxxQBANAUAQDZFAEAgBUBALUVAQC4FQEAwBUBANgVAQDdFQEAABYBAEAWAQBEFgEARBYBAFAWAQBZFgEAgBYBALgWAQDAFgEAyRYBAAAXAQAaFwEAHRcBACsXAQAwFwEAORcBAEAXAQBGFwEAABgBADoYAQCgGAEA6RgBAP8YAQAGGQEACRkBAAkZAQAMGQEAExkBABUZAQAWGQEAGBkBADUZAQA3GQEAOBkBADsZAQBDGQEAUBkBAFkZAQCgGQEApxkBAKoZAQDXGQEA2hkBAOEZAQDjGQEA5BkBAAAaAQA+GgEARxoBAEcaAQBQGgEAmRoBAJ0aAQCdGgEAsBoBAPgaAQAAHAEACBwBAAocAQA2HAEAOBwBAEAcAQBQHAEAWRwBAHIcAQCPHAEAkhwBAKccAQCpHAEAthwBAAAdAQAGHQEACB0BAAkdAQALHQEANh0BADodAQA6HQEAPB0BAD0dAQA/HQEARx0BAFAdAQBZHQEAYB0BAGUdAQBnHQEAaB0BAGodAQCOHQEAkB0BAJEdAQCTHQEAmB0BAKAdAQCpHQEA4B4BAPYeAQCwHwEAsB8BAAAgAQCZIwEAACQBAG4kAQCAJAEAQyUBAJAvAQDwLwEAADABAC40AQAARAEARkYBAABoAQA4agEAQGoBAF5qAQBgagEAaWoBAHBqAQC+agEAwGoBAMlqAQDQagEA7WoBAPBqAQD0agEAAGsBADZrAQBAawEAQ2sBAFBrAQBZawEAY2sBAHdrAQB9awEAj2sBAEBuAQB/bgEAAG8BAEpvAQBPbwEAh28BAI9vAQCfbwEA4G8BAOFvAQDjbwEA5G8BAPBvAQDxbwEAAHABAPeHAQAAiAEA1YwBAACNAQAIjQEA8K8BAPOvAQD1rwEA+68BAP2vAQD+rwEAALABACKxAQBQsQEAUrEBAGSxAQBnsQEAcLEBAPuyAQAAvAEAarwBAHC8AQB8vAEAgLwBAIi8AQCQvAEAmbwBAJ28AQCevAEAAM8BAC3PAQAwzwEARs8BAGXRAQBp0QEAbdEBAHLRAQB70QEAgtEBAIXRAQCL0QEAqtEBAK3RAQBC0gEARNIBAADUAQBU1AEAVtQBAJzUAQCe1AEAn9QBAKLUAQCi1AEApdQBAKbUAQCp1AEArNQBAK7UAQC51AEAu9QBALvUAQC91AEAw9QBAMXUAQAF1QEAB9UBAArVAQAN1QEAFNUBABbVAQAc1QEAHtUBADnVAQA71QEAPtUBAEDVAQBE1QEARtUBAEbVAQBK1QEAUNUBAFLVAQCl1gEAqNYBAMDWAQDC1gEA2tYBANzWAQD61gEA/NYBABTXAQAW1wEANNcBADbXAQBO1wEAUNcBAG7XAQBw1wEAiNcBAIrXAQCo1wEAqtcBAMLXAQDE1wEAy9cBAM7XAQD/1wEAANoBADbaAQA72gEAbNoBAHXaAQB12gEAhNoBAITaAQCb2gEAn9oBAKHaAQCv2gEAAN8BAB7fAQAA4AEABuABAAjgAQAY4AEAG+ABACHgAQAj4AEAJOABACbgAQAq4AEAAOEBACzhAQAw4QEAPeEBAEDhAQBJ4QEATuEBAE7hAQCQ4gEAruIBAMDiAQD54gEA4OcBAObnAQDo5wEA6+cBAO3nAQDu5wEA8OcBAP7nAQAA6AEAxOgBANDoAQDW6AEAAOkBAEvpAQBQ6QEAWekBAADuAQAD7gEABe4BAB/uAQAh7gEAIu4BACTuAQAk7gEAJ+4BACfuAQAp7gEAMu4BADTuAQA37gEAOe4BADnuAQA77gEAO+4BAELuAQBC7gEAR+4BAEfuAQBJ7gEASe4BAEvuAQBL7gEATe4BAE/uAQBR7gEAUu4BAFTuAQBU7gEAV+4BAFfuAQBZ7gEAWe4BAFvuAQBb7gEAXe4BAF3uAQBf7gEAX+4BAGHuAQBi7gEAZO4BAGTuAQBn7gEAau4BAGzuAQBy7gEAdO4BAHfuAQB57gEAfO4BAH7uAQB+7gEAgO4BAInuAQCL7gEAm+4BAKHuAQCj7gEApe4BAKnuAQCr7gEAu+4BADDxAQBJ8QEAUPEBAGnxAQBw8QEAifEBAPD7AQD5+wEAAAACAN+mAgAApwIAOLcCAEC3AgAduAIAILgCAKHOAgCwzgIA4OsCAAD4AgAd+gIAAAADAEoTAwAAAQ4A7wEOAEHQsAQLozD4AgAAMAAAADkAAABBAAAAWgAAAGEAAAB6AAAAqgAAAKoAAAC1AAAAtQAAALoAAAC6AAAAwAAAANYAAADYAAAA9gAAAPgAAADBAgAAxgIAANECAADgAgAA5AIAAOwCAADsAgAA7gIAAO4CAABFAwAARQMAAHADAAB0AwAAdgMAAHcDAAB6AwAAfQMAAH8DAAB/AwAAhgMAAIYDAACIAwAAigMAAIwDAACMAwAAjgMAAKEDAACjAwAA9QMAAPcDAACBBAAAigQAAC8FAAAxBQAAVgUAAFkFAABZBQAAYAUAAIgFAACwBQAAvQUAAL8FAAC/BQAAwQUAAMIFAADEBQAAxQUAAMcFAADHBQAA0AUAAOoFAADvBQAA8gUAABAGAAAaBgAAIAYAAFcGAABZBgAAaQYAAG4GAADTBgAA1QYAANwGAADhBgAA6AYAAO0GAAD8BgAA/wYAAP8GAAAQBwAAPwcAAE0HAACxBwAAwAcAAOoHAAD0BwAA9QcAAPoHAAD6BwAAAAgAABcIAAAaCAAALAgAAEAIAABYCAAAYAgAAGoIAABwCAAAhwgAAIkIAACOCAAAoAgAAMkIAADUCAAA3wgAAOMIAADpCAAA8AgAADsJAAA9CQAATAkAAE4JAABQCQAAVQkAAGMJAABmCQAAbwkAAHEJAACDCQAAhQkAAIwJAACPCQAAkAkAAJMJAACoCQAAqgkAALAJAACyCQAAsgkAALYJAAC5CQAAvQkAAMQJAADHCQAAyAkAAMsJAADMCQAAzgkAAM4JAADXCQAA1wkAANwJAADdCQAA3wkAAOMJAADmCQAA8QkAAPwJAAD8CQAAAQoAAAMKAAAFCgAACgoAAA8KAAAQCgAAEwoAACgKAAAqCgAAMAoAADIKAAAzCgAANQoAADYKAAA4CgAAOQoAAD4KAABCCgAARwoAAEgKAABLCgAATAoAAFEKAABRCgAAWQoAAFwKAABeCgAAXgoAAGYKAAB1CgAAgQoAAIMKAACFCgAAjQoAAI8KAACRCgAAkwoAAKgKAACqCgAAsAoAALIKAACzCgAAtQoAALkKAAC9CgAAxQoAAMcKAADJCgAAywoAAMwKAADQCgAA0AoAAOAKAADjCgAA5goAAO8KAAD5CgAA/AoAAAELAAADCwAABQsAAAwLAAAPCwAAEAsAABMLAAAoCwAAKgsAADALAAAyCwAAMwsAADULAAA5CwAAPQsAAEQLAABHCwAASAsAAEsLAABMCwAAVgsAAFcLAABcCwAAXQsAAF8LAABjCwAAZgsAAG8LAABxCwAAcQsAAIILAACDCwAAhQsAAIoLAACOCwAAkAsAAJILAACVCwAAmQsAAJoLAACcCwAAnAsAAJ4LAACfCwAAowsAAKQLAACoCwAAqgsAAK4LAAC5CwAAvgsAAMILAADGCwAAyAsAAMoLAADMCwAA0AsAANALAADXCwAA1wsAAOYLAADvCwAAAAwAAAMMAAAFDAAADAwAAA4MAAAQDAAAEgwAACgMAAAqDAAAOQwAAD0MAABEDAAARgwAAEgMAABKDAAATAwAAFUMAABWDAAAWAwAAFoMAABdDAAAXQwAAGAMAABjDAAAZgwAAG8MAACADAAAgwwAAIUMAACMDAAAjgwAAJAMAACSDAAAqAwAAKoMAACzDAAAtQwAALkMAAC9DAAAxAwAAMYMAADIDAAAygwAAMwMAADVDAAA1gwAAN0MAADeDAAA4AwAAOMMAADmDAAA7wwAAPEMAADyDAAAAA0AAAwNAAAODQAAEA0AABINAAA6DQAAPQ0AAEQNAABGDQAASA0AAEoNAABMDQAATg0AAE4NAABUDQAAVw0AAF8NAABjDQAAZg0AAG8NAAB6DQAAfw0AAIENAACDDQAAhQ0AAJYNAACaDQAAsQ0AALMNAAC7DQAAvQ0AAL0NAADADQAAxg0AAM8NAADUDQAA1g0AANYNAADYDQAA3w0AAOYNAADvDQAA8g0AAPMNAAABDgAAOg4AAEAOAABGDgAATQ4AAE0OAABQDgAAWQ4AAIEOAACCDgAAhA4AAIQOAACGDgAAig4AAIwOAACjDgAApQ4AAKUOAACnDgAAuQ4AALsOAAC9DgAAwA4AAMQOAADGDgAAxg4AAM0OAADNDgAA0A4AANkOAADcDgAA3w4AAAAPAAAADwAAIA8AACkPAABADwAARw8AAEkPAABsDwAAcQ8AAIEPAACIDwAAlw8AAJkPAAC8DwAAABAAADYQAAA4EAAAOBAAADsQAABJEAAAUBAAAJ0QAACgEAAAxRAAAMcQAADHEAAAzRAAAM0QAADQEAAA+hAAAPwQAABIEgAAShIAAE0SAABQEgAAVhIAAFgSAABYEgAAWhIAAF0SAABgEgAAiBIAAIoSAACNEgAAkBIAALASAACyEgAAtRIAALgSAAC+EgAAwBIAAMASAADCEgAAxRIAAMgSAADWEgAA2BIAABATAAASEwAAFRMAABgTAABaEwAAgBMAAI8TAACgEwAA9RMAAPgTAAD9EwAAARQAAGwWAABvFgAAfxYAAIEWAACaFgAAoBYAAOoWAADuFgAA+BYAAAAXAAATFwAAHxcAADMXAABAFwAAUxcAAGAXAABsFwAAbhcAAHAXAAByFwAAcxcAAIAXAACzFwAAthcAAMgXAADXFwAA1xcAANwXAADcFwAA4BcAAOkXAAAQGAAAGRgAACAYAAB4GAAAgBgAAKoYAACwGAAA9RgAAAAZAAAeGQAAIBkAACsZAAAwGQAAOBkAAEYZAABtGQAAcBkAAHQZAACAGQAAqxkAALAZAADJGQAA0BkAANkZAAAAGgAAGxoAACAaAABeGgAAYRoAAHQaAACAGgAAiRoAAJAaAACZGgAApxoAAKcaAAC/GgAAwBoAAMwaAADOGgAAABsAADMbAAA1GwAAQxsAAEUbAABMGwAAUBsAAFkbAACAGwAAqRsAAKwbAADlGwAA5xsAAPEbAAAAHAAANhwAAEAcAABJHAAATRwAAH0cAACAHAAAiBwAAJAcAAC6HAAAvRwAAL8cAADpHAAA7BwAAO4cAADzHAAA9RwAAPYcAAD6HAAA+hwAAAAdAAC/HQAA5x0AAPQdAAAAHgAAFR8AABgfAAAdHwAAIB8AAEUfAABIHwAATR8AAFAfAABXHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAH0fAACAHwAAtB8AALYfAAC8HwAAvh8AAL4fAADCHwAAxB8AAMYfAADMHwAA0B8AANMfAADWHwAA2x8AAOAfAADsHwAA8h8AAPQfAAD2HwAA/B8AAHEgAABxIAAAfyAAAH8gAACQIAAAnCAAAAIhAAACIQAAByEAAAchAAAKIQAAEyEAABUhAAAVIQAAGSEAAB0hAAAkIQAAJCEAACYhAAAmIQAAKCEAACghAAAqIQAALSEAAC8hAAA5IQAAPCEAAD8hAABFIQAASSEAAE4hAABOIQAAYCEAAIghAAC2JAAA6SQAAAAsAADkLAAA6ywAAO4sAADyLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AADAtAABnLQAAby0AAG8tAACALQAAli0AAKAtAACmLQAAqC0AAK4tAACwLQAAti0AALgtAAC+LQAAwC0AAMYtAADILQAAzi0AANAtAADWLQAA2C0AAN4tAADgLQAA/y0AAC8uAAAvLgAABTAAAAcwAAAhMAAAKTAAADEwAAA1MAAAODAAADwwAABBMAAAljAAAJ0wAACfMAAAoTAAAPowAAD8MAAA/zAAAAUxAAAvMQAAMTEAAI4xAACgMQAAvzEAAPAxAAD/MQAAADQAAL9NAAAATgAAjKQAANCkAAD9pAAAAKUAAAymAAAQpgAAK6YAAECmAABupgAAdKYAAHumAAB/pgAA76YAABenAAAfpwAAIqcAAIinAACLpwAAyqcAANCnAADRpwAA06cAANOnAADVpwAA2acAAPKnAAAFqAAAB6gAACeoAABAqAAAc6gAAICoAADDqAAAxagAAMWoAADQqAAA2agAAPKoAAD3qAAA+6gAAPuoAAD9qAAAKqkAADCpAABSqQAAYKkAAHypAACAqQAAsqkAALSpAAC/qQAAz6kAANmpAADgqQAA/qkAAACqAAA2qgAAQKoAAE2qAABQqgAAWaoAAGCqAAB2qgAAeqoAAL6qAADAqgAAwKoAAMKqAADCqgAA26oAAN2qAADgqgAA76oAAPKqAAD1qgAAAasAAAarAAAJqwAADqsAABGrAAAWqwAAIKsAACarAAAoqwAALqsAADCrAABaqwAAXKsAAGmrAABwqwAA6qsAAPCrAAD5qwAAAKwAAKPXAACw1wAAxtcAAMvXAAD71wAAAPkAAG36AABw+gAA2foAAAD7AAAG+wAAE/sAABf7AAAd+wAAKPsAACr7AAA2+wAAOPsAADz7AAA++wAAPvsAAED7AABB+wAAQ/sAAET7AABG+wAAsfsAANP7AAA9/QAAUP0AAI/9AACS/QAAx/0AAPD9AAD7/QAAcP4AAHT+AAB2/gAA/P4AABD/AAAZ/wAAIf8AADr/AABB/wAAWv8AAGb/AAC+/wAAwv8AAMf/AADK/wAAz/8AANL/AADX/wAA2v8AANz/AAAAAAEACwABAA0AAQAmAAEAKAABADoAAQA8AAEAPQABAD8AAQBNAAEAUAABAF0AAQCAAAEA+gABAEABAQB0AQEAgAIBAJwCAQCgAgEA0AIBAAADAQAfAwEALQMBAEoDAQBQAwEAegMBAIADAQCdAwEAoAMBAMMDAQDIAwEAzwMBANEDAQDVAwEAAAQBAJ0EAQCgBAEAqQQBALAEAQDTBAEA2AQBAPsEAQAABQEAJwUBADAFAQBjBQEAcAUBAHoFAQB8BQEAigUBAIwFAQCSBQEAlAUBAJUFAQCXBQEAoQUBAKMFAQCxBQEAswUBALkFAQC7BQEAvAUBAAAGAQA2BwEAQAcBAFUHAQBgBwEAZwcBAIAHAQCFBwEAhwcBALAHAQCyBwEAugcBAAAIAQAFCAEACAgBAAgIAQAKCAEANQgBADcIAQA4CAEAPAgBADwIAQA/CAEAVQgBAGAIAQB2CAEAgAgBAJ4IAQDgCAEA8ggBAPQIAQD1CAEAAAkBABUJAQAgCQEAOQkBAIAJAQC3CQEAvgkBAL8JAQAACgEAAwoBAAUKAQAGCgEADAoBABMKAQAVCgEAFwoBABkKAQA1CgEAYAoBAHwKAQCACgEAnAoBAMAKAQDHCgEAyQoBAOQKAQAACwEANQsBAEALAQBVCwEAYAsBAHILAQCACwEAkQsBAAAMAQBIDAEAgAwBALIMAQDADAEA8gwBAAANAQAnDQEAMA0BADkNAQCADgEAqQ4BAKsOAQCsDgEAsA4BALEOAQAADwEAHA8BACcPAQAnDwEAMA8BAEUPAQBwDwEAgQ8BALAPAQDEDwEA4A8BAPYPAQAAEAEARRABAGYQAQBvEAEAcRABAHUQAQCCEAEAuBABAMIQAQDCEAEA0BABAOgQAQDwEAEA+RABAAARAQAyEQEANhEBAD8RAQBEEQEARxEBAFARAQByEQEAdhEBAHYRAQCAEQEAvxEBAMERAQDEEQEAzhEBANoRAQDcEQEA3BEBAAASAQAREgEAExIBADQSAQA3EgEANxIBAD4SAQA+EgEAgBIBAIYSAQCIEgEAiBIBAIoSAQCNEgEAjxIBAJ0SAQCfEgEAqBIBALASAQDoEgEA8BIBAPkSAQAAEwEAAxMBAAUTAQAMEwEADxMBABATAQATEwEAKBMBACoTAQAwEwEAMhMBADMTAQA1EwEAORMBAD0TAQBEEwEARxMBAEgTAQBLEwEATBMBAFATAQBQEwEAVxMBAFcTAQBdEwEAYxMBAAAUAQBBFAEAQxQBAEUUAQBHFAEAShQBAFAUAQBZFAEAXxQBAGEUAQCAFAEAwRQBAMQUAQDFFAEAxxQBAMcUAQDQFAEA2RQBAIAVAQC1FQEAuBUBAL4VAQDYFQEA3RUBAAAWAQA+FgEAQBYBAEAWAQBEFgEARBYBAFAWAQBZFgEAgBYBALUWAQC4FgEAuBYBAMAWAQDJFgEAABcBABoXAQAdFwEAKhcBADAXAQA5FwEAQBcBAEYXAQAAGAEAOBgBAKAYAQDpGAEA/xgBAAYZAQAJGQEACRkBAAwZAQATGQEAFRkBABYZAQAYGQEANRkBADcZAQA4GQEAOxkBADwZAQA/GQEAQhkBAFAZAQBZGQEAoBkBAKcZAQCqGQEA1xkBANoZAQDfGQEA4RkBAOEZAQDjGQEA5BkBAAAaAQAyGgEANRoBAD4aAQBQGgEAlxoBAJ0aAQCdGgEAsBoBAPgaAQAAHAEACBwBAAocAQA2HAEAOBwBAD4cAQBAHAEAQBwBAFAcAQBZHAEAchwBAI8cAQCSHAEApxwBAKkcAQC2HAEAAB0BAAYdAQAIHQEACR0BAAsdAQA2HQEAOh0BADodAQA8HQEAPR0BAD8dAQBBHQEAQx0BAEMdAQBGHQEARx0BAFAdAQBZHQEAYB0BAGUdAQBnHQEAaB0BAGodAQCOHQEAkB0BAJEdAQCTHQEAlh0BAJgdAQCYHQEAoB0BAKkdAQDgHgEA9h4BALAfAQCwHwEAACABAJkjAQAAJAEAbiQBAIAkAQBDJQEAkC8BAPAvAQAAMAEALjQBAABEAQBGRgEAAGgBADhqAQBAagEAXmoBAGBqAQBpagEAcGoBAL5qAQDAagEAyWoBANBqAQDtagEAAGsBAC9rAQBAawEAQ2sBAFBrAQBZawEAY2sBAHdrAQB9awEAj2sBAEBuAQB/bgEAAG8BAEpvAQBPbwEAh28BAI9vAQCfbwEA4G8BAOFvAQDjbwEA428BAPBvAQDxbwEAAHABAPeHAQAAiAEA1YwBAACNAQAIjQEA8K8BAPOvAQD1rwEA+68BAP2vAQD+rwEAALABACKxAQBQsQEAUrEBAGSxAQBnsQEAcLEBAPuyAQAAvAEAarwBAHC8AQB8vAEAgLwBAIi8AQCQvAEAmbwBAJ68AQCevAEAANQBAFTUAQBW1AEAnNQBAJ7UAQCf1AEAotQBAKLUAQCl1AEAptQBAKnUAQCs1AEArtQBALnUAQC71AEAu9QBAL3UAQDD1AEAxdQBAAXVAQAH1QEACtUBAA3VAQAU1QEAFtUBABzVAQAe1QEAOdUBADvVAQA+1QEAQNUBAETVAQBG1QEARtUBAErVAQBQ1QEAUtUBAKXWAQCo1gEAwNYBAMLWAQDa1gEA3NYBAPrWAQD81gEAFNcBABbXAQA01wEANtcBAE7XAQBQ1wEAbtcBAHDXAQCI1wEAitcBAKjXAQCq1wEAwtcBAMTXAQDL1wEAztcBAP/XAQAA3wEAHt8BAADgAQAG4AEACOABABjgAQAb4AEAIeABACPgAQAk4AEAJuABACrgAQAA4QEALOEBADfhAQA94QEAQOEBAEnhAQBO4QEATuEBAJDiAQCt4gEAwOIBAOviAQDw4gEA+eIBAODnAQDm5wEA6OcBAOvnAQDt5wEA7ucBAPDnAQD+5wEAAOgBAMToAQAA6QEAQ+kBAEfpAQBH6QEAS+kBAEvpAQBQ6QEAWekBAADuAQAD7gEABe4BAB/uAQAh7gEAIu4BACTuAQAk7gEAJ+4BACfuAQAp7gEAMu4BADTuAQA37gEAOe4BADnuAQA77gEAO+4BAELuAQBC7gEAR+4BAEfuAQBJ7gEASe4BAEvuAQBL7gEATe4BAE/uAQBR7gEAUu4BAFTuAQBU7gEAV+4BAFfuAQBZ7gEAWe4BAFvuAQBb7gEAXe4BAF3uAQBf7gEAX+4BAGHuAQBi7gEAZO4BAGTuAQBn7gEAau4BAGzuAQBy7gEAdO4BAHfuAQB57gEAfO4BAH7uAQB+7gEAgO4BAInuAQCL7gEAm+4BAKHuAQCj7gEApe4BAKnuAQCr7gEAu+4BADDxAQBJ8QEAUPEBAGnxAQBw8QEAifEBAPD7AQD5+wEAAAACAN+mAgAApwIAOLcCAEC3AgAduAIAILgCAKHOAgCwzgIA4OsCAAD4AgAd+gIAAAADAEoTAwABAAAAAAAAAH8AAAADAAAAAOkBAEvpAQBQ6QEAWekBAF7pAQBf6QEAAAAAAAMAAAAAFwEAGhcBAB0XAQArFwEAMBcBAEYXAQABAAAAAEQBAEZGAQABAAAAAAAAAP//EABBgOEEC/IDOQAAAAAGAAAEBgAABgYAAAsGAAANBgAAGgYAABwGAAAeBgAAIAYAAD8GAABBBgAASgYAAFYGAABvBgAAcQYAANwGAADeBgAA/wYAAFAHAAB/BwAAcAgAAI4IAACQCAAAkQgAAJgIAADhCAAA4wgAAP8IAABQ+wAAwvsAANP7AAA9/QAAQP0AAI/9AACS/QAAx/0AAM/9AADP/QAA8P0AAP/9AABw/gAAdP4AAHb+AAD8/gAAYA4BAH4OAQAA7gEAA+4BAAXuAQAf7gEAIe4BACLuAQAk7gEAJO4BACfuAQAn7gEAKe4BADLuAQA07gEAN+4BADnuAQA57gEAO+4BADvuAQBC7gEAQu4BAEfuAQBH7gEASe4BAEnuAQBL7gEAS+4BAE3uAQBP7gEAUe4BAFLuAQBU7gEAVO4BAFfuAQBX7gEAWe4BAFnuAQBb7gEAW+4BAF3uAQBd7gEAX+4BAF/uAQBh7gEAYu4BAGTuAQBk7gEAZ+4BAGruAQBs7gEAcu4BAHTuAQB37gEAee4BAHzuAQB+7gEAfu4BAIDuAQCJ7gEAi+4BAJvuAQCh7gEAo+4BAKXuAQCp7gEAq+4BALvuAQDw7gEA8e4BAAAAAAAEAAAAMQUAAFYFAABZBQAAigUAAI0FAACPBQAAE/sAABf7AEGA5QQL0yu6AgAAAAAAAHcDAAB6AwAAfwMAAIQDAACKAwAAjAMAAIwDAACOAwAAoQMAAKMDAAAvBQAAMQUAAFYFAABZBQAAigUAAI0FAACPBQAAkQUAAMcFAADQBQAA6gUAAO8FAAD0BQAAAAYAAA0HAAAPBwAASgcAAE0HAACxBwAAwAcAAPoHAAD9BwAALQgAADAIAAA+CAAAQAgAAFsIAABeCAAAXggAAGAIAABqCAAAcAgAAI4IAACQCAAAkQgAAJgIAACDCQAAhQkAAIwJAACPCQAAkAkAAJMJAACoCQAAqgkAALAJAACyCQAAsgkAALYJAAC5CQAAvAkAAMQJAADHCQAAyAkAAMsJAADOCQAA1wkAANcJAADcCQAA3QkAAN8JAADjCQAA5gkAAP4JAAABCgAAAwoAAAUKAAAKCgAADwoAABAKAAATCgAAKAoAACoKAAAwCgAAMgoAADMKAAA1CgAANgoAADgKAAA5CgAAPAoAADwKAAA+CgAAQgoAAEcKAABICgAASwoAAE0KAABRCgAAUQoAAFkKAABcCgAAXgoAAF4KAABmCgAAdgoAAIEKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvAoAAMUKAADHCgAAyQoAAMsKAADNCgAA0AoAANAKAADgCgAA4woAAOYKAADxCgAA+QoAAP8KAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAAB3CwAAggsAAIMLAACFCwAAigsAAI4LAACQCwAAkgsAAJULAACZCwAAmgsAAJwLAACcCwAAngsAAJ8LAACjCwAApAsAAKgLAACqCwAArgsAALkLAAC+CwAAwgsAAMYLAADICwAAygsAAM0LAADQCwAA0AsAANcLAADXCwAA5gsAAPoLAAAADAAADAwAAA4MAAAQDAAAEgwAACgMAAAqDAAAOQwAADwMAABEDAAARgwAAEgMAABKDAAATQwAAFUMAABWDAAAWAwAAFoMAABdDAAAXQwAAGAMAABjDAAAZgwAAG8MAAB3DAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvAwA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AMUJAADGCQAAyQkAAMoJAADPCQAA1gkAANgJAADbCQAA3gkAAN4JAADkCQAA5QkAAP8JAAAACgAABAoAAAQKAAALCgAADgoAABEKAAASCgAAKQoAACkKAAAxCgAAMQoAADQKAAA0CgAANwoAADcKAAA6CgAAOwoAAD0KAAA9CgAAQwoAAEYKAABJCgAASgoAAE4KAABQCgAAUgoAAFgKAABdCgAAXQoAAF8KAABlCgAAdwoAAIAKAACECgAAhAoAAI4KAACOCgAAkgoAAJIKAACpCgAAqQoAALEKAACxCgAAtAoAALQKAAC6CgAAuwoAAMYKAADGCgAAygoAAMoKAADOCgAAzwoAANEKAADfCgAA5AoAAOUKAADyCgAA+AoAAAALAAAACwAABAsAAAQLAAANCwAADgsAABELAAASCwAAKQsAACkLAAAxCwAAMQsAADQLAAA0CwAAOgsAADsLAABFCwAARgsAAEkLAABKCwAATgsAAFQLAABYCwAAWwsAAF4LAABeCwAAZAsAAGULAAB4CwAAgQsAAIQLAACECwAAiwsAAI0LAACRCwAAkQsAAJYLAACYCwAAmwsAAJsLAACdCwAAnQsAAKALAACiCwAApQsAAKcLAACrCwAArQsAALoLAAC9CwAAwwsAAMULAADJCwAAyQsAAM4LAADPCwAA0QsAANYLAADYCwAA5QsAAPsLAAD/CwAADQwAAA0MAAARDAAAEQwAACkMAAApDAAAOgwAADsMAABFDAAARQwAAEkMAABJDAAATgwAAFQMAABXDAAAVwwAAFsMAABcDAAAXgwAAF8MAABkDAAAZQwAAHAMAAB2DAAAjQwAAI0MAACRDAAAkQwAAKkMAACpDAAAtAwAALQMAAC6DAAAuwwAAMUMAADFDAAAyQwAAMkMAADODAAA1AwAANcMAADcDAAA3wwAAN8MAADkDAAA5QwAAPAMAADwDAAA8wwAAP8MAAANDQAADQ0AABENAAARDQAARQ0AAEUNAABJDQAASQ0AAFANAABTDQAAZA0AAGUNAACADQAAgA0AAIQNAACEDQAAlw0AAJkNAACyDQAAsg0AALwNAAC8DQAAvg0AAL8NAADHDQAAyQ0AAMsNAADODQAA1Q0AANUNAADXDQAA1w0AAOANAADlDQAA8A0AAPENAAD1DQAAAA4AADsOAAA+DgAAXA4A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AQAAcAEAAHIBAAByAQAAdAEAAHQBAAB2AQAAdgEAAHgBAAB5AQAAewEAAHsBAAB9AQAAfQEAAH8BAAB/AQAAgQEAAIIBAACEAQAAhAEAAIYBAACHAQAAiQEAAIsBAACOAQAAkQEAAJMBAACUAQAAlgEAAJgBAACcAQAAnQEAAJ8BAACgAQAAogEAAKIBAACkAQAApAEAAKYBAACnAQAAqQEAAKkBAACsAQAArAEAAK4BAACvAQAAsQEAALMBAAC1AQAAtQEAALcBAAC4AQAAvAEAALwBAADEAQAAxQEAAMcBAADIAQAAygEAAMsBAADNAQAAzQEAAM8BAADPAQAA0QEAANEBAADTAQAA0wEAANUBAADVAQAA1wEAANcBAADZAQAA2QEAANsBAADbAQAA3gEAAN4BAADgAQAA4AEAAOIBAADiAQAA5AEAAOQBAADmAQAA5gEAAOgBAADoAQAA6gEAAOoBAADsAQAA7AEAAO4BAADuAQAA8QEAAPIBAAD0AQAA9AEAAPYBAAD4AQAA+gEAAPoBAAD8AQAA/AEAAP4BAAD+AQAAAAIAAAACAAACAgAAAgIAAAQCAAAEAgAABgIAAAYCAAAIAgAACAIAAAoCAAAKAgAADAIAAAwCAAAOAgAADgIAABACAAAQAgAAEgIAABICAAAUAgAAFAIAABYCAAAWAgAAGAIAABgCAAAaAgAAGgIAABwCAAAcAgAAHgIAAB4CAAAgAgAAIAIAACICAAAiAgAAJAIAACQCAAAmAgAAJgIAACgCAAAoAgAAKgIAACoCAAAsAgAALAIAAC4CAAAuAgAAMAIAADACAAAyAgAAMgIAADoCAAA7AgAAPQIAAD4CAABBAgAAQQIAAEMCAABGAgAASAIAAEgCAABKAgAASgIAAEwCAABMAgAATgIAAE4CAABFAwAARQMAAHADAABwAwAAcgMAAHIDAAB2AwAAdgMAAH8DAAB/AwAAhgMAAIYDAACIAwAAigMAAIwDAACMAwAAjgMAAI8DAACRAwAAoQMAAKMDAACrAwAAwgMAAMIDAADPAwAA0QMAANUDAADWAwAA2AMAANgDAADaAwAA2gMAANwDAADcAwAA3gMAAN4DAADgAwAA4AMAAOIDAADiAwAA5AMAAOQDAADmAwAA5gMAAOgDAADoAwAA6gMAAOoDAADsAwAA7AMAAO4DAADuAwAA8AMAAPEDAAD0AwAA9QMAAPcDAAD3AwAA+QMAAPoDAAD9AwAALwQAAGAEAABgBAAAYgQAAGIEAABkBAAAZAQAAGYEAABmBAAAaAQAAGgEAABqBAAAagQAAGwEAABsBAAAbgQAAG4EAABwBAAAcAQAAHIEAAByBAAAdAQAAHQEAAB2BAAAdgQAAHgEAAB4BAAAegQAAHoEAAB8BAAAfAQAAH4EAAB+BAAAgAQAAIAEAACKBAAAigQAAIwEAACMBAAAjgQAAI4EAACQBAAAkAQAAJIEAACSBAAAlAQAAJQEAACWBAAAlgQAAJgEAACYBAAAmgQAAJoEAACcBAAAnAQAAJ4EAACeBAAAoAQAAKAEAACiBAAAogQAAKQEAACkBAAApgQAAKYEAACoBAAAqAQAAKoEAACqBAAArAQAAKwEAACuBAAArgQAALAEAACwBAAAsgQAALIEAAC0BAAAtAQAALYEAAC2BAAAuAQAALgEAAC6BAAAugQAALwEAAC8BAAAvgQAAL4EAADABAAAwQQAAMMEAADDBAAAxQQAAMUEAADHBAAAxwQAAMkEAADJBAAAywQAAMsEAADNBAAAzQQAANAEAADQBAAA0gQAANIEAADUBAAA1AQAANYEAADWBAAA2AQAANgEAADaBAAA2gQAANwEAADcBAAA3gQAAN4EAADgBAAA4AQAAOIEAADiBAAA5AQAAOQEAADmBAAA5gQAAOgEAADoBAAA6gQAAOoEAADsBAAA7AQAAO4EAADuBAAA8AQAAPAEAADyBAAA8gQAAPQEAAD0BAAA9gQAAPYEAAD4BAAA+AQAAPoEAAD6BAAA/AQAAPwEAAD+BAAA/gQAAAAFAAAABQAAAgUAAAIFAAAEBQAABAUAAAYFAAAGBQAACAUAAAgFAAAKBQAACgUAAAwFAAAMBQAADgUAAA4FAAAQBQAAEAUAABIFAAASBQAAFAUAABQFAAAWBQAAFgUAABgFAAAYBQAAGgUAABoFAAAcBQAAHAUAAB4FAAAeBQAAIAUAACAFAAAiBQAAIgUAACQFAAAkBQAAJgUAACYFAAAoBQAAKAUAACoFAAAqBQAALAUAACwFAAAuBQAALgUAADEFAABWBQAAhwUAAIcFAACgEAAAxRAAAMcQAADHEAAAzRAAAM0QAAD4EwAA/RMAAIAcAACIHAAAkBwAALocAAC9HAAAvxwAAAAeAAAAHgAAAh4AAAIeAAAEHgAABB4AAAYeAAAGHgAACB4AAAgeAAAKHgAACh4AAAweAAAMHgAADh4AAA4eAAAQHgAAEB4AABIeAAASHgAAFB4AABQeAAAWHgAAFh4AABgeAAAYHgAAGh4AABoeAAAcHgAAHB4AAB4eAAAeHgAAIB4AACAeAAAiHgAAIh4AACQeAAAkHgAAJh4AACYeAAAoHgAAKB4AACoeAAAqHgAALB4AACweAAAuHgAALh4AADAeAAAwHgAAMh4AADIeAAA0HgAANB4AADYeAAA2HgAAOB4AADgeAAA6HgAAOh4AADweAAA8HgAAPh4AAD4eAABAHgAAQB4AAEIeAABCHgAARB4AAEQeAABGHgAARh4AAEgeAABIHgAASh4AAEoeAABMHgAATB4AAE4eAABOHgAAUB4AAFAeAABSHgAAUh4AAFQeAABUHgAAVh4AAFYeAABYHgAAWB4AAFoeAABaHgAAXB4AAFweAABeHgAAXh4AAGAeAABgHgAAYh4AAGIeAABkHgAAZB4AAGYeAABmHgAAaB4AAGgeAABqHgAAah4AAGweAABsHgAAbh4AAG4eAABwHgAAcB4AAHIeAAByHgAAdB4AAHQeAAB2HgAAdh4AAHgeAAB4HgAAeh4AAHoeAAB8HgAAfB4AAH4eAAB+HgAAgB4AAIAeAACCHgAAgh4AAIQeAACEHgAAhh4AAIYeAACIHgAAiB4AAIoeAACKHgAAjB4AAIweAACOHgAAjh4AAJAeAACQHgAAkh4AAJIeAACUHgAAlB4AAJoeAACbHgAAnh4AAJ4eAACgHgAAoB4AAKIeAACiHgAApB4AAKQeAACmHgAAph4AAKgeAACoHgAAqh4AAKoeAACsHgAArB4AAK4eAACuHgAAsB4AALAeAACyHgAAsh4AALQeAAC0HgAAth4AALYeAAC4HgAAuB4AALoeAAC6HgAAvB4AALweAAC+HgAAvh4AAMAeAADAHgAAwh4AAMIeAADEHgAAxB4AAMYeAADGHgAAyB4AAMgeAADKHgAAyh4AAMweAADMHgAAzh4AAM4eAADQHgAA0B4AANIeAADSHgAA1B4AANQeAADWHgAA1h4AANgeAADYHgAA2h4AANoeAADcHgAA3B4AAN4eAADeHgAA4B4AAOAeAADiHgAA4h4AAOQeAADkHgAA5h4AAOYeAADoHgAA6B4AAOoeAADqHgAA7B4AAOweAADuHgAA7h4AAPAeAADwHgAA8h4AAPIeAAD0HgAA9B4AAPYeAAD2HgAA+B4AAPgeAAD6HgAA+h4AAPweAAD8HgAA/h4AAP4eAAAIHwAADx8AABgfAAAdHwAAKB8AAC8fAAA4HwAAPx8AAEgfAABNHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAF8fAABoHwAAbx8AAIAfAACvHwAAsh8AALQfAAC3HwAAvB8AAMIfAADEHwAAxx8AAMwfAADYHwAA2x8AAOgfAADsHwAA8h8AAPQfAAD3HwAA/B8AACYhAAAmIQAAKiEAACshAAAyIQAAMiEAAGAhAABvIQAAgyEAAIMhAAC2JAAAzyQAAAAsAAAvLAAAYCwAAGAsAABiLAAAZCwAAGcsAABnLAAAaSwAAGksAABrLAAAaywAAG0sAABwLAAAciwAAHIsAAB1LAAAdSwAAH4sAACALAAAgiwAAIIsAACELAAAhCwAAIYsAACGLAAAiCwAAIgsAACKLAAAiiwAAIwsAACMLAAAjiwAAI4sAACQLAAAkCwAAJIsAACSLAAAlCwAAJQsAACWLAAAliwAAJgsAACYLAAAmiwAAJosAACcLAAAnCwAAJ4sAACeLAAAoCwAAKAsAACiLAAAoiwAAKQsAACkLAAApiwAAKYsAACoLAAAqCwAAKosAACqLAAArCwAAKwsAACuLAAAriwAALAsAACwLAAAsiwAALIsAAC0LAAAtCwAALYsAAC2LAAAuCwAALgsAAC6LAAAuiwAALwsAAC8LAAAviwAAL4sAADALAAAwCwAAMIsAADCLAAAxCwAAMQsAADGLAAAxiwAAMgsAADILAAAyiwAAMosAADMLAAAzCwAAM4sAADOLAAA0CwAANAsAADSLAAA0iwAANQsAADULAAA1iwAANYsAADYLAAA2CwAANosAADaLAAA3CwAANwsAADeLAAA3iwAAOAsAADgLAAA4iwAAOIsAADrLAAA6ywAAO0sAADtLAAA8iwAAPIsAABApgAAQKYAAEKmAABCpgAARKYAAESmAABGpgAARqYAAEimAABIpgAASqYAAEqmAABMpgAATKYAAE6mAABOpgAAUKYAAFCmAABSpgAAUqYAAFSmAABUpgAAVqYAAFamAABYpgAAWKYAAFqmAABapgAAXKYAAFymAABepgAAXqYAAGCmAABgpgAAYqYAAGKmAABkpgAAZKYAAGamAABmpgAAaKYAAGimAABqpgAAaqYAAGymAABspgAAgKYAAICmAACCpgAAgqYAAISmAACEpgAAhqYAAIamAACIpgAAiKYAAIqmAACKpgAAjKYAAIymAACOpgAAjqYAAJCmAACQpgAAkqYAAJKmAACUpgAAlKYAAJamAACWpgAAmKYAAJimAACapgAAmqYAACKnAAAipwAAJKcAACSnAAAmpwAAJqcAACinAAAopwAAKqcAACqnAAAspwAALKcAAC6nAAAupwAAMqcAADKnAAA0pwAANKcAADanAAA2pwAAOKcAADinAAA6pwAAOqcAADynAAA8pwAAPqcAAD6nAABApwAAQKcAAEKnAABCpwAARKcAAESnAABGpwAARqcAAEinAABIpwAASqcAAEqnAABMpwAATKcAAE6nAABOpwAAUKcAAFCnAABSpwAAUqcAAFSnAABUpwAAVqcAAFanAABYpwAAWKcAAFqnAABapwAAXKcAAFynAABepwAAXqcAAGCnAABgpwAAYqcAAGKnAABkpwAAZKcAAGanAABmpwAAaKcAAGinAABqpwAAaqcAAGynAABspwAAbqcAAG6nAAB5pwAAeacAAHunAAB7pwAAfacAAH6nAACApwAAgKcAAIKnAACCpwAAhKcAAISnAACGpwAAhqcAAIunAACLpwAAjacAAI2nAACQpwAAkKcAAJKnAACSpwAAlqcAAJanAACYpwAAmKcAAJqnAACapwAAnKcAAJynAACepwAAnqcAAKCnAACgpwAAoqcAAKKnAACkpwAApKcAAKanAACmpwAAqKcAAKinAACqpwAArqcAALCnAAC0pwAAtqcAALanAAC4pwAAuKcAALqnAAC6pwAAvKcAALynAAC+pwAAvqcAAMCnAADApwAAwqcAAMKnAADEpwAAx6cAAMmnAADJpwAA0KcAANCnAADWpwAA1qcAANinAADYpwAA9acAAPWnAABwqwAAv6sAAAD7AAAG+wAAE/sAABf7AAAh/wAAOv8AAAAEAQAnBAEAsAQBANMEAQBwBQEAegUBAHwFAQCKBQEAjAUBAJIFAQCUBQEAlQUBAIAMAQCyDAEAoBgBAL8YAQBAbgEAX24BAADpAQAh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AABOHgAAUB4AAFAeAABSHgAAUh4AAFQeAABUHgAAVh4AAFYeAABYHgAAWB4AAFoeAABaHgAAXB4AAFweAABeHgAAXh4AAGAeAABgHgAAYh4AAGIeAABkHgAAZB4AAGYeAABmHgAAaB4AAGgeAABqHgAAah4AAGweAABsHgAAbh4AAG4eAABwHgAAcB4AAHIeAAByHgAAdB4AAHQeAAB2HgAAdh4AAHgeAAB4HgAAeh4AAHoeAAB8HgAAfB4AAH4eAAB+HgAAgB4AAIAeAACCHgAAgh4AAIQeAACEHgAAhh4AAIYeAACIHgAAiB4AAIoeAACKHgAAjB4AAIweAACOHgAAjh4AAJAeAACQHgAAkh4AAJIeAACUHgAAlB4AAJ4eAACeHgAAoB4AAKAeAACiHgAAoh4AAKQeAACkHgAAph4AAKYeAACoHgAAqB4AAKoeAACqHgAArB4AAKweAACuHgAArh4AALAeAACwHgAAsh4AALIeAAC0HgAAtB4AALYeAAC2HgAAuB4AALgeAAC6HgAAuh4AALweAAC8HgAAvh4AAL4eAADAHgAAwB4AAMIeAADCHgAAxB4AAMQeAADGHgAAxh4AAMgeAADIHgAAyh4AAMoeAADMHgAAzB4AAM4eAADOHgAA0B4AANAeAADSHgAA0h4AANQeAADUHgAA1h4AANYeAADYHgAA2B4AANoeAADaHgAA3B4AANweAADeHgAA3h4AAOAeAADgHgAA4h4AAOIeAADkHgAA5B4AAOYeAADmHgAA6B4AAOgeAADqHgAA6h4AAOweAADsHgAA7h4AAO4eAADwHgAA8B4AAPIeAADyHgAA9B4AAPQeAAD2HgAA9h4AAPgeAAD4HgAA+h4AAPoeAAD8HgAA/B4AAP4eAAD+HgAACB8AAA8fAAAYHwAAHR8AACgfAAAvHwAAOB8AAD8fAABIHwAATR8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAABfHwAAaB8AAG8fAACIHwAAjx8AAJgfAACfHwAAqB8AAK8fAAC4HwAAvB8AAMgfAADMHwAA2B8AANsfAADoHwAA7B8AAPgfAAD8HwAAJiEAACYhAAAqIQAAKyEAADIhAAAyIQAAYCEAAG8hAACDIQAAgyEAALYkAADPJAAAACwAAC8sAABgLAAAYCwAAGIsAABkLAAAZywAAGcsAABpLAAAaSwAAGssAABrLAAAbSwAAHAsAAByLAAAciwAAHUsAAB1LAAAfiwAAIAsAACCLAAAgiwAAIQsAACELAAAhiwAAIYsAACILAAAiCwAAIosAACKLAAAjCwAAIwsAACOLAAAjiwAAJAsAACQLAAAkiwAAJIsAACULAAAlCwAAJYsAACWLAAAmCwAAJgsAACaLAAAmiwAAJwsAACcLAAAniwAAJ4sAACgLAAAoCwAAKIsAACiLAAApCwAAKQsAACmLAAApiwAAKgsAACoLAAAqiwAAKosAACsLAAArCwAAK4sAACuLAAAsCwAALAsAACyLAAAsiwAALQsAAC0LAAAtiwAALYsAAC4LAAAuCwAALosAAC6LAAAvCwAALwsAAC+LAAAviwAAMAsAADALAAAwiwAAMIsAADELAAAxCwAAMYsAADGLAAAyCwAAMgsAADKLAAAyiwAAMwsAADMLAAAziwAAM4sAADQLAAA0CwAANIsAADSLAAA1CwAANQsAADWLAAA1iwAANgsAADYLAAA2iwAANosAADcLAAA3CwAAN4sAADeLAAA4CwAAOAsAADiLAAA4iwAAOssAADrLAAA7SwAAO0sAADyLAAA8iwAAECmAABApgAAQqYAAEKmAABEpgAARKYAAEamAABGpgAASKYAAEimAABKpgAASqYAAEymAABMpgAATqYAAE6mAABQpgAAUKYAAFKmAABSpgAAVKYAAFSmAABWpgAAVqYAAFimAABYpgAAWqYAAFqmAABcpgAAXKYAAF6mAABepgAAYKYAAGCmAABipgAAYqYAAGSmAABkpgAAZqYAAGamAABopgAAaKYAAGqmAABqpgAAbKYAAGymAACApgAAgKYAAIKmAACCpgAAhKYAAISmAACGpgAAhqYAAIimAACIpgAAiqYAAIqmAACMpgAAjKYAAI6mAACOpgAAkKYAAJCmAACSpgAAkqYAAJSmAACUpgAAlqYAAJamAACYpgAAmKYAAJqmAACapgAAIqcAACKnAAAkpwAAJKcAACanAAAmpwAAKKcAACinAAAqpwAAKqcAACynAAAspwAALqcAAC6nAAAypwAAMqcAADSnAAA0pwAANqcAADanAAA4pwAAOKcAADqnAAA6pwAAPKcAADynAAA+pwAAPqcAAECnAABApwAAQqcAAEKnAABEpwAARKcAAEan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AAC/HgAAwR4AAMEeAADDHgAAwx4AAMUeAADFHgAAxx4AAMceAADJHgAAyR4AAMseAADLHgAAzR4AAM0eAADPHgAAzx4AANEeAADRHgAA0x4AANMeAADVHgAA1R4AANceAADXHgAA2R4AANkeAADbHgAA2x4AAN0eAADdHgAA3x4AAN8eAADhHgAA4R4AAOMeAADjHgAA5R4AAOUeAADnHgAA5x4AAOkeAADpHgAA6x4AAOseAADtHgAA7R4AAO8eAADvHgAA8R4AAPEeAADzHgAA8x4AAPUeAAD1HgAA9x4AAPceAAD5HgAA+R4AAPseAAD7HgAA/R4AAP0eAAD/HgAABx8AABAfAAAVHwAAIB8AACcfAAAwHwAANx8AAEAfAABFHwAAUB8AAFcfAABgHwAAZx8AAHAfAAB9HwAAgB8AAIcfAACQHwAAlx8AAKAfAACnHwAAsB8AALQfAAC2HwAAtx8AAL4fAAC+HwAAwh8AAMQfAADGHwAAxx8AANAfAADTHwAA1h8AANcfAADgHwAA5x8AAPIfAAD0HwAA9h8AAPcfAABOIQAATiEAAHAhAAB/IQAAhCEAAIQhAADQJAAA6SQAADAsAABfLAAAYSwAAGEsAABlLAAAZiwAAGgsAABoLAAAaiwAAGosAABsLAAAbCwAAHMsAABzLAAAdiwAAHYsAACBLAAAgSwAAIMsAACDLAAAhSwAAIUsAACHLAAAhywAAIksAACJLAAAiywAAIssAACNLAAAjSwAAI8sAACPLAAAkSwAAJEsAACTLAAAkywAAJUsAACVLAAAlywAAJcsAACZLAAAmSwAAJssAACbLAAAnSwAAJ0sAACfLAAAnywAAKEsAAChLAAAoywAAKMsAAClLAAApSwAAKcsAACnLAAAqSwAAKksAACrLAAAqywAAK0sAACtLAAArywAAK8sAACxLAAAsSwAALMsAACzLAAAtSwAALUsAAC3LAAAtywAALksAAC5LAAAuywAALssAAC9LAAAvSwAAL8sAAC/LAAAwSwAAMEsAADDLAAAwywAAMUsAADFLAAAxywAAMcsAADJLAAAySwAAMssAADLLAAAzSwAAM0sAADPLAAAzywAANEsAADRLAAA0ywAANMsAADVLAAA1SwAANcsAADXLAAA2SwAANksAADbLAAA2ywAAN0sAADdLAAA3ywAAN8sAADhLAAA4SwAAOMsAADjLAAA7CwAAOwsAADuLAAA7iwAAPMsAADzLAAAAC0AACUtAAAnLQAAJy0AAC0tAAAtLQAAQaYAAEGmAABDpgAAQ6YAAEWmAABFpgAAR6YAAEemAABJpgAASaYAAEumAABLpgAATaYAAE2mAABPpgAAT6YAAFGmAABRpgAAU6YAAFOmAABVpgAAVaYAAFemAABXpgAAWaYAAFmmAABbpgAAW6YAAF2mAABdpgAAX6YAAF+mAABhpgAAYaYAAGOmAABjpgAAZaYAAGWmAABnpgAAZ6YAAGmmAABppgAAa6YAAGumAABtpgAAbaYAAIGmAACBpgAAg6YAAIOmAACFpgAAhaYAAIemAACHpgAAiaYAAImmAACLpgAAi6YAAI2mAACNpgAAj6YAAI+mAACRpgAAkaYAAJOmAACTpgAAlaYAAJWmAACXpgAAl6YAAJmmAACZpgAAm6YAAJumAAAjpwAAI6cAACWnAAAlpwAAJ6cAACenAAAppwAAKacAACunAAArpwAALacAAC2nAAAvpwAAL6cAADOnAAAzpwAANacAADWnAAA3pwAAN6cAADmnAAA5pwAAO6cAADunAAA9pwAAPacAAD+nAAA/pwAAQacAAEGnAABDpwAAQ6cAAEWnAABFpwAAR6cAAEenAABJpwAASacAAEunAABLpwAATacAAE2nAABPpwAAT6cAAFGnAABRpwAAU6cAAFOnAABVpwAAVacAAFenAABXpwAAWacAAFmnAABbpwAAW6cAAF2nAABdpwAAX6cAAF+nAABhpwAAYacAAGOnAABjpwAAZacAAGWnAABnpwAAZ6cAAGmnAABppwAAa6cAAGunAABtpwAAbacAAG+nAABvpwAAeqcAAHqnAAB8pwAAfKcAAH+nAAB/pwAAgacAAIGnAACDpwAAg6cAAIWnAACFpwAAh6cAAIenAACMpwAAjKcAAJGnAACRpwAAk6cAAJSnAACXpwAAl6cAAJmnAACZpwAAm6cAAJunAACdpwAAnacAAJ+nAACfpwAAoacAAKGnAACjpwAAo6cAAKWnAAClpwAAp6cAAKenAACppwAAqacAALWnAAC1pwAAt6cAALenAAC5pwAAuacAALunAAC7pwAAvacAAL2nAAC/pwAAv6cAAMGnAADBpwAAw6cAAMOnAADIpwAAyKcAAMqnAADKpwAA0acAANGnAADXpwAA16cAANmnAADZpwAA9qcAAPanAABTqwAAU6sAAHCrAAC/qwAAAPsAAAb7AAAT+wAAF/sAAEH/AABa/wAAKAQBAE8EAQDYBAEA+wQBAJcFAQChBQEAowUBALEFAQCzBQEAuQUBALsFAQC8BQEAwAwBAPIMAQDAGAEA3xgBAGBuAQB/bgEAIukBAEPpAQBBoOQGC8cncwIAAGEAAAB6AAAAtQAAALUAAADfAAAA9gAAAPgAAAD/AAAAAQEAAAEBAAADAQAAAwEAAAUBAAAFAQAABwEAAAcBAAAJAQAACQEAAAsBAAALAQAADQEAAA0BAAAPAQAADwEAABEBAAARAQAAEwEAABMBAAAVAQAAFQEAABcBAAAXAQAAGQEAABkBAAAbAQAAGwEAAB0BAAAdAQAAHwEAAB8BAAAhAQAAIQEAACMBAAAjAQAAJQEAACUBAAAnAQAAJwEAACkBAAApAQAAKwEAACsBAAAtAQAALQEAAC8BAAAvAQAAMQEAADEBAAAzAQAAMwEAADUBAAA1AQAANwEAADcBAAA6AQAAOgEAADwBAAA8AQAAPgEAAD4BAABAAQAAQAEAAEIBAABCAQAARAEAAEQBAABGAQAARgEAAEgBAABJAQAASwEAAEsBAABNAQAATQEAAE8BAABPAQAAUQEAAFEBAABTAQAAUwEAAFUBAABVAQAAVwEAAFcBAABZAQAAWQEAAFsBAABbAQAAXQEAAF0BAABfAQAAXwEAAGEBAABhAQAAYwEAAGMBAABlAQAAZQEAAGcBAABnAQAAaQEAAGkBAABrAQAAawEAAG0BAABtAQAAbwEAAG8BAABxAQAAcQEAAHMBAABzAQAAdQEAAHUBAAB3AQAAdwEAAHoBAAB6AQAAfAEAAHwBAAB+AQAAgAEAAIMBAACDAQAAhQEAAIUBAACIAQAAiAEAAIwBAACMAQAAkgEAAJIBAACVAQAAlQEAAJkBAACaAQAAngEAAJ4BAAChAQAAoQEAAKMBAACjAQAApQEAAKUBAACoAQAAqAEAAK0BAACtAQAAsAEAALABAAC0AQAAtAEAALYBAAC2AQAAuQEAALkBAAC9AQAAvQEAAL8BAAC/AQAAxQEAAMYBAADIAQAAyQEAAMsBAADMAQAAzgEAAM4BAADQAQAA0AEAANIBAADSAQAA1AEAANQBAADWAQAA1gEAANgBAADYAQAA2gEAANoBAADcAQAA3QEAAN8BAADfAQAA4QEAAOEBAADjAQAA4wEAAOUBAADlAQAA5wEAAOcBAADpAQAA6QEAAOsBAADrAQAA7QEAAO0BAADvAQAA8AEAAPIBAADzAQAA9QEAAPUBAAD5AQAA+QEAAPsBAAD7AQAA/QEAAP0BAAD/AQAA/wEAAAECAAABAgAAAwIAAAMCAAAFAgAABQIAAAcCAAAHAgAACQIAAAkCAAALAgAACwIAAA0CAAANAgAADwIAAA8CAAARAgAAEQIAABMCAAATAgAAFQIAABUCAAAXAgAAFwIAABkCAAAZAgAAGwIAABsCAAAdAgAAHQIAAB8CAAAfAgAAIwIAACMCAAAlAgAAJQIAACcCAAAnAgAAKQIAACkCAAArAgAAKwIAAC0CAAAtAgAALwIAAC8CAAAxAgAAMQIAADMCAAAzAgAAPAIAADwCAAA/AgAAQAIAAEICAABCAgAARwIAAEcCAABJAgAASQIAAEsCAABLAgAATQIAAE0CAABPAgAAVAIAAFYCAABXAgAAWQIAAFkCAABbAgAAXAIAAGACAABhAgAAYwIAAGMCAABlAgAAZgIAAGgCAABsAgAAbwIAAG8CAABxAgAAcgIAAHUCAAB1AgAAfQIAAH0CAACAAgAAgAIAAIICAACDAgAAhwIAAIwCAACSAgAAkgIAAJ0CAACeAgAARQMAAEUDAABxAwAAcQMAAHMDAABzAwAAdwMAAHcDAAB7AwAAfQMAAJADAACQAwAArAMAAM4DAADQAwAA0QMAANUDAADXAwAA2QMAANkDAADbAwAA2wMAAN0DAADdAwAA3wMAAN8DAADhAwAA4QMAAOMDAADjAwAA5QMAAOUDAADnAwAA5wMAAOkDAADpAwAA6wMAAOsDAADtAwAA7QMAAO8DAADzAwAA9QMAAPUDAAD4AwAA+AMAAPsDAAD7AwAAMAQAAF8EAABhBAAAYQQAAGMEAABjBAAAZQQAAGUEAABnBAAAZwQAAGkEAABpBAAAawQAAGsEAABtBAAAbQQAAG8EAABvBAAAcQQAAHEEAABzBAAAcwQAAHUEAAB1BAAAdwQAAHcEAAB5BAAAeQQAAHsEAAB7BAAAfQQAAH0EAAB/BAAAfwQAAIEEAACBBAAAiwQAAIsEAACNBAAAjQQAAI8EAACPBAAAkQQAAJEEAACTBAAAkwQAAJUEAACVBAAAlwQAAJcEAACZBAAAmQQAAJsEAACbBAAAnQQAAJ0EAACfBAAAnwQAAKEEAAChBAAAowQAAKMEAAClBAAApQQAAKcEAACnBAAAqQQAAKkEAACrBAAAqwQAAK0EAACtBAAArwQAAK8EAACxBAAAsQQAALMEAACzBAAAtQQAALUEAAC3BAAAtwQAALkEAAC5BAAAuwQAALsEAAC9BAAAvQQAAL8EAAC/BAAAwgQAAMIEAADEBAAAxAQAAMYEAADGBAAAyAQAAMgEAADKBAAAygQAAMwEAADMBAAAzgQAAM8EAADRBAAA0QQAANMEAADTBAAA1QQAANUEAADXBAAA1wQAANkEAADZBAAA2wQAANsEAADdBAAA3QQAAN8EAADfBAAA4QQAAOEEAADjBAAA4wQAAOUEAADlBAAA5wQAAOcEAADpBAAA6QQAAOsEAADrBAAA7QQAAO0EAADvBAAA7wQAAPEEAADxBAAA8wQAAPMEAAD1BAAA9QQAAPcEAAD3BAAA+QQAAPkEAAD7BAAA+wQAAP0EAAD9BAAA/wQAAP8EAAABBQAAAQUAAAMFAAADBQAABQUAAAUFAAAHBQAABwUAAAkFAAAJBQAACwUAAAsFAAANBQAADQUAAA8FAAAPBQAAEQUAABEFAAATBQAAEwUAABUFAAAVBQAAFwUAABcFAAAZBQAAGQUAABsFAAAbBQAAHQUAAB0FAAAfBQAAHwUAACEFAAAhBQAAIwUAACMFAAAlBQAAJQUAACcFAAAnBQAAKQUAACkFAAArBQAAKwUAAC0FAAAtBQAALwUAAC8FAABhBQAAhwUAANAQAAD6EAAA/RAAAP8QAAD4EwAA/RMAAIAcAACIHAAAeR0AAHkdAAB9HQAAfR0AAI4dAACOHQAAAR4AAAEeAAADHgAAAx4AAAUeAAAFHgAABx4AAAceAAAJHgAACR4AAAseAAALHgAADR4AAA0eAAAPHgAADx4AABEeAAARHgAAEx4AABMeAAAVHgAAFR4AABceAAAXHgAAGR4AABkeAAAbHgAAGx4AAB0eAAAdHgAAHx4AAB8eAAAhHgAAIR4AACMeAAAjHgAAJR4AACUeAAAnHgAAJx4AACkeAAApHgAAKx4AACseAAAtHgAALR4AAC8eAAAvHgAAMR4AADEeAAAzHgAAMx4AADUeAAA1HgAANx4AADceAAA5HgAAOR4AADseAAA7HgAAPR4AAD0eAAA/HgAAPx4AAEEeAABBHgAAQx4AAEMeAABFHgAARR4AAEceAABHHgAASR4AAEkeAABLHgAASx4AAE0eAABNHgAATx4AAE8eAABRHgAAUR4AAFMeAABTHgAAVR4AAFUeAABXHgAAVx4AAFkeAABZHgAAWx4AAFseAABdHgAAXR4AAF8eAABfHgAAYR4AAGEeAABjHgAAYx4AAGUeAABlHgAAZx4AAGceAABpHgAAaR4AAGseAABrHgAAbR4AAG0eAABvHgAAbx4AAHEeAABxHgAAcx4AAHMeAAB1HgAAdR4AAHceAAB3HgAAeR4AAHkeAAB7HgAAex4AAH0eAAB9HgAAfx4AAH8eAACBHgAAgR4AAIMeAACDHgAAhR4AAIUeAACHHgAAhx4AAIkeAACJHgAAix4AAIseAACNHgAAjR4AAI8eAACPHgAAkR4AAJEeAACTHgAAkx4AAJUeAACbHgAAoR4AAKEeAACjHgAAox4AAKUeAAClHgAApx4AAKceAACpHgAAqR4AAKseAACrHgAArR4AAK0eAACvHgAArx4AALEeAACxHgAAsx4AALMeAAC1HgAAtR4AALceAAC3HgAAuR4AALkeAAC7HgAAux4AAL0eAAC9HgAAvx4AAL8eAADBHgAAwR4AAMMeAADDHgAAxR4AAMUeAADHHgAAxx4AAMkeAADJHgAAyx4AAMseAADNHgAAzR4AAM8eAADPHgAA0R4AANEeAADTHgAA0x4AANUeAADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAtB8AALYfAAC3HwAAvB8AALwfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADMHwAAzB8AANAfAADTHwAA1h8AANcfAADgHwAA5x8AAPIfAAD0HwAA9h8AAPcfAAD8HwAA/B8AAE4hAABOIQAAcCEAAH8hAACEIQAAhCEAANAkAADpJAAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcywAAHMsAAB2LAAAdiwAAIEsAACBLAAAgywAAIMsAACFLAAAhSwAAIcsAACHLAAAiSwAAIksAACLLAAAiywAAI0sAACNLAAAjywAAI8sAACRLAAAkSwAAJMsAACTLAAAlSwAAJUsAACXLAAAlywAAJksAACZLAAAmywAAJssAACdLAAAnSwAAJ8sAACfLAAAoSwAAKEsAACjLAAAoywAAKUsAAClLAAApywAAKcsAACpLAAAqSwAAKssAACrLAAArSwAAK0sAACvLAAArywAALEsAACxLAAAsywAALMsAAC1LAAAtSwAALcsAAC3LAAAuSwAALksAAC7LAAAuywAAL0sAAC9LAAAvywAAL8sAADBLAAAwSwAAMMsAADDLAAAxSwAAMUsAADHLAAAxywAAMksAADJLAAAyywAAMssAADNLAAAzSwAAM8sAADPLAAA0SwAANEsAADTLAAA0ywAANUsAADVLAAA1ywAANcsAADZLAAA2SwAANssAADbLAAA3SwAAN0sAADfLAAA3ywAAOEsAADhLAAA4ywAAOMsAADsLAAA7CwAAO4sAADuLAAA8ywAAPMsAAAALQAAJS0AACctAAAnLQAALS0AAC0tAABBpgAAQaYAAEOmAABDpgAARaYAAEWmAABHpgAAR6YAAEmmAABJpgAAS6YAAEumAABNpgAATaYAAE+mAABPpgAAUaYAAFGmAABTpgAAU6YAAFWmAABVpgAAV6YAAFemAABZpgAAWaYAAFumAABbpgAAXaYAAF2mAABfpgAAX6YAAGGmAABhpgAAY6YAAGOmAABlpgAAZaYAAGemAABnpgAAaaYAAGmmAABrpgAAa6YAAG2mAABtpgAAgaYAAIGmAACDpgAAg6YAAIWmAACFpgAAh6YAAIemAACJpgAAiaYAAIumAACLpgAAjaYAAI2mAACPpgAAj6YAAJGmAACRpgAAk6YAAJOmAACVpgAAlaYAAJemAACXpgAAmaYAAJmmAACbpgAAm6YAACOnAAAjpwAAJacAACWnAAAnpwAAJ6cAACmnAAAppwAAK6cAACunAAAtpwAALacAAC+nAAAvpwAAM6cAADOnAAA1pwAANacAADenAAA3pwAAOacAADmnAAA7pwAAO6cAAD2nAAA9pwAAP6cAAD+nAABBpwAAQacAAEOnAABDpwAARacAAEWnAABHpwAAR6cAAEmnAABJpwAAS6cAAEunAABNpwAATacAAE+nAABPpwAAUacAAFGnAABTpwAAU6cAAFWnAABVpwAAV6cAAFenAABZpwAAWacAAFunAABbpwAAXacAAF2nAABfpwAAX6cAAGGnAABhpwAAY6cAAGOnAABlpwAAZacAAGenAABnpwAAaacAAGmnAABrpwAAa6cAAG2nAABtpwAAb6cAAG+nAAB6pwAAeqcAAHynAAB8pwAAf6cAAH+nAACBpwAAgacAAIOnAACDpwAAhacAAIWnAACHpwAAh6cAAIynAACMpwAAkacAAJGnAACTpwAAlKcAAJenAACXpwAAmacAAJmnAACbpwAAm6cAAJ2nAACdpwAAn6cAAJ+nAAChpwAAoacAAKOnAACjpwAApacAAKWnAACnpwAAp6cAAKmnAACppwAAtacAALWnAAC3pwAAt6cAALmnAAC5pwAAu6cAALunAAC9pwAAvacAAL+nAAC/pwAAwacAAMGnAADDpwAAw6cAAMinAADIpwAAyqcAAMqnAADRpwAA0acAANenAADXpwAA2acAANmnAAD2pwAA9qcAAFOrAABTqwAAcKsAAL+rAAAA+wAABvsAABP7AAAX+wAAQf8AAFr/AAAoBAEATwQBANgEAQD7BAEAlwUBAKEFAQCjBQEAsQUBALMFAQC5BQEAuwUBALwFAQDADAEA8gwBAMAYAQDfGAEAYG4BAH9uAQAi6QEAQ+kBAAAAAAADAAAAoBMAAPUTAAD4EwAA/RMAAHCrAAC/qwAAAQAAALAPAQDLDwEAQfCLBwvTK7oCAAB4AwAAeQMAAIADAACDAwAAiwMAAIsDAACNAwAAjQMAAKIDAACiAwAAMAUAADAFAABXBQAAWAUAAIsFAACMBQAAkAUAAJAFAADIBQAAzwUAAOsFAADuBQAA9QUAAP8FAAAOBwAADgcAAEsHAABMBwAAsgcAAL8HAAD7BwAA/AcAAC4IAAAvCAAAPwgAAD8IAABcCAAAXQgAAF8IAABfCAAA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CQAAggkAAIMJAACFCQAAjAkAAI8JAACQCQAAkwkAAKgJAACqCQAAsAkAALIJAACyCQAAtgkAALkJAAC9CQAAvQkAAL8JAADACQAAxwkAAMgJAADLCQAAzAkAAM4JAADOCQAA3AkAAN0JAADfCQAA4QkAAOYJAAD9CQAAAwoAAAMKAAAFCgAACgoAAA8KAAAQCgAAEwoAACgKAAAqCgAAMAoAADIKAAAzCgAANQoAADYKAAA4CgAAOQoAAD4KAABACgAAWQoAAFwKAABeCgAAXgoAAGYKAABvCgAAcgoAAHQKAAB2CgAAdgoAAIMKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvQoAAMAKAADJCgAAyQoAAMsKAADMCgAA0AoAANAKAADgCgAA4QoAAOYKAADxCgAA+QoAAPkKAAACCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAAD0LAAA9CwAAQAsAAEALAABHCwAASAsAAEsLAABMCwAAXAsAAF0LAABfCwAAYQsAAGYLAAB3CwAAgwsAAIMLAACFCwAAigsAAI4LAACQCwAAkgsAAJULAACZCwAAmgsAAJwLAACcCwAAngsAAJ8LAACjCwAApAsAAKgLAACqCwAArgsAALkLAAC/CwAAvwsAAMELAADCCwAAxgsAAMgLAADKCwAAzAsAANALAADQCwAA5gsAAPoLAAABDAAAAwwAAAUMAAAMDAAADgwAABAMAAASDAAAKAwAACoMAAA5DAAAPQwAAD0MAABBDAAARAwAAFgMAABaDAAAXQwAAF0MAABgDAAAYQwAAGYMAABvDAAAdwwAAIAMAACCDAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvQwAAL4MAADADAAAwQwAAMMMAADEDAAAxwwAAMgMAADKDAAAywwAAN0MAADeDAAA4AwAAOEMAADmDAAA7wwAAPEMAADyDAAAAg0AAAwNAAAODQAAEA0AABINAAA6DQAAPQ0AAD0NAAA/DQAAQA0AAEYNAABIDQAASg0AAEwNAABODQAATw0AAFQNAABWDQAAWA0AAGENAABmDQAAfw0AAIINAACDDQAAhQ0AAJYNAACa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CgAANgoAADgKAAA5CgAAPAoAADwKAAA+CgAAQgoAAEcKAABICgAASwoAAE0KAABRCgAAUQoAAFkKAABcCgAAXgoAAF4KAABmCgAAdQoAAIEKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvAoAAMUKAADHCgAAyQoAAMsKAADNCgAA0AoAANAKAADgCgAA4woAAOYKAADvCgAA+QoAAP8KAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAABvCwAAcQsAAHELAACCCwAAgwsAAIULAACKCwAAjgsAAJALAACSCwAAlQsAAJkLAACaCwAAnAsAAJwLAACeCwAAnwsAAKMLAACkCwAAqAsAAKoLAACuCwAAuQsAAL4LAADCCwAAxgsAAMgLAADKCwAAzQsAANALAADQCwAA1wsAANcLAADmCwAA7wsAAAAMAAAMDAAADgwAABAMAAASDAAAKAwAACoMAAA5DAAAPAwAAEQMAABGDAAASAwAAEoMAABNDAAAVQwAAFYMAABYDAAAWgwAAF0MAABdDAAAYAwAAGMMAABmDAAAbwwAAIAMAACDDAAAhQwAAIwMAACODAAAkAwAAJIMAACoDAAAqgwAALMMAAC1DAAAuQwAALwMAADEDAAAxgwAAMgMAADKDAAAzQwAANUMAADWDAAA3QwAAN4MAADgDAAA4wwAAOYMAADvDAAA8QwAAPIMAAAADQAADA0AAA4NAAAQDQAAEg0AAEQNAABGDQAASA0AAEoNAABODQAAVA0AAFcNAABfDQAAYw0AAGYNAABvDQAAeg0AAH8NAACBDQAAgw0AAIUNAACWDQAAmg0AALENAACzDQAAuw0AAL0NAAC9DQAAwA0AAMYNAADKDQAAyg0AAM8NAADUDQAA1g0AANYNAADYDQAA3w0AAOYNAADvDQAA8g0AAPMNAAABDgAAOg4AAEAOAABODgAAUA4AAFkOAACBDgAAgg4AAIQOAACEDgAAhg4AAIoOAACMDgAAow4AAKUOAAClDgAApw4AAL0OAADADgAAxA4AAMYOAADG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vx4AAMEeAADBHgAAwx4AAMMeAADFHgAAxR4AAMceAADHHgAAyR4AAMkeAADLHgAAyx4AAM0eAADNHgAAzx4AAM8eAADRHgAA0R4AANMeAADTHgAA1R4AANUeAADXHgAA1x4AANkeAADZHgAA2x4AANseAADdHgAA3R4AAN8eAADfHgAA4R4AAOEeAADjHgAA4x4AAOUeAADlHgAA5x4AAOceAADpHgAA6R4AAOseAADrHgAA7R4AAO0eAADvHgAA7x4AAPEeAADxHgAA8x4AAPMeAAD1HgAA9R4AAPceAAD3HgAA+R4AAPkeAAD7HgAA+x4AAP0eAAD9HgAA/x4AAAcfAAAQHwAAFR8AACAfAAAnHwAAMB8AADcfAABAHwAARR8AAFAfAABXHwAAYB8AAGcfAABwHwAAfR8AAIAfAACHHwAAkB8AAJcfAACgHwAApx8AALAfAAC0HwAAth8AALcfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADQHwAA0x8AANYfAADXHwAA4B8AAOcfAADyHwAA9B8AAPYfAAD3HwAACiEAAAohAAAOIQAADyEAABMhAAATIQAALyEAAC8hAAA0IQAANCEAADkhAAA5IQAAPCEAAD0hAABGIQAASSEAAE4hAABOIQAAhCEAAIQhAAAwLAAAXywAAGEsAABhLAAAZSwAAGYsAABoLAAAaCwAAGosAABqLAAAbCwAAGwsAABxLAAAcSwAAHMsAAB0LAAAdiwAAHssAACBLAAAgSwAAIMsAACDLAAAhSwAAIUsAACHLAAAhywAAIksAACJLAAAiywAAIssAACNLAAAjSwAAI8sAACPLAAAkSwAAJEsAACTLAAAkywAAJUsAACVLAAAlywAAJcsAACZLAAAmSwAAJssAACbLAAAnSwAAJ0sAACfLAAAnywAAKEsAAChLAAAoywAAKMsAAClLAAApSwAAKcsAACnLAAAqSwAAKksAACrLAAAqywAAK0sAACtLAAArywAAK8sAACxLAAAsSwAALMsAACzLAAAtSwAALUsAAC3LAAAtywAALksAAC5LAAAuywAALssAAC9LAAAvSwAAL8sAAC/LAAAwSwAAMEsAADDLAAAwywAAMUsAADFLAAAxywAAMcsAADJLAAAySwAAMssAADLLAAAzSwAAM0sAADPLAAAzywAANEsAADRLAAA0ywAANMsAADVLAAA1SwAANcsAADXLAAA2SwAANksAADbLAAA2ywAAN0sAADdLAAA3ywAAN8sAADhLAAA4SwAAOMsAADkLAAA7CwAAOwsAADuLAAA7iwAAPMsAADzLAAAAC0AACUtAAAnLQAAJy0AAC0tAAAtLQAAQaYAAEGmAABDpgAAQ6YAAEWmAABFpgAAR6YAAEemAABJpgAASaYAAEumAABLpgAATaYAAE2mAABPpgAAT6YAAFGmAABRpgAAU6YAAFOmAABVpgAAVaYAAFemAABXpgAAWaYAAFmmAABbpgAAW6YAAF2mAABdpgAAX6YAAF+mAABhpgAAYaYAAGOmAABjpgAAZaYAAGWmAABnpgAAZ6YAAGmmAABppgAAa6YAAGumAABtpgAAbaYAAIGmAACBpgAAg6YAAIOmAACFpgAAhaYAAIemAACHpgAAiaYAAImmAACLpgAAi6YAAI2mAACNpgAAj6YAAI+mAACRpgAAkaYAAJOmAACTpgAAlaYAAJWmAACXpgAAl6YAAJmmAACZpgAAm6YAAJumAAAjpwAAI6cAACWnAAAlpwAAJ6cAACenAAAppwAAKacAACunAAArpwAALacAAC2nAAAvpwAAMacAADOnAAAzpwAANacAADWnAAA3pwAAN6cAADmnAAA5pwAAO6cAADunAAA9pwAAPacAAD+nAAA/pwAAQacAAEGnAABDpwAAQ6cAAEWnAABFpwAAR6cAAEenAABJpwAASacAAEunAABLpwAATacAAE2nAABPpwAAT6cAAFGnAABRpwAAU6cAAFOnAABVpwAAVacAAFenAABXpwAAWacAAFmnAABbpwAAW6cAAF2nAABdpwAAX6cAAF+nAABhpwAAYacAAGOnAABjpwAAZacAAGWnAABnpwAAZ6cAAGmnAABppwAAa6cAAGunAABtpwAAbacAAG+nAABvpwAAcacAAHinAAB6pwAAeqcAAHynAAB8pwAAf6cAAH+nAACBpwAAgacAAIOnAACDpwAAhacAAIWnAACHpwAAh6cAAIynAACMpwAAjqcAAI6nAACRpwAAkacAAJOnAACVpwAAl6cAAJenAACZpwAAmacAAJunAACbpwAAnacAAJ2nAACfpwAAn6cAAKGnAAChpwAAo6cAAKOnAAClpwAApacAAKenAACnpwAAqacAAKmnAACvpwAA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AACmHgAAph4AAKgeAACoHgAAqh4AAKoeAACsHgAArB4AAK4eAACuHgAAsB4AALAeAACyHgAAsh4AALQeAAC0HgAAth4AALYeAAC4HgAAuB4AALoeAAC6HgAAvB4AALweAAC+HgAAvh4AAMAeAADAHgAAwh4AAMIeAADEHgAAxB4AAMYeAADGHgAAyB4AAMgeAADKHgAAyh4AAMweAADMHgAAzh4AAM4eAADQHgAA0B4AANIeAADSHgAA1B4AANQeAADWHgAA1h4AANgeAADYHgAA2h4AANoeAADcHgAA3B4AAN4eAADeHgAA4B4AAOAeAADiHgAA4h4AAOQeAADkHgAA5h4AAOYeAADoHgAA6B4AAOoeAADqHgAA7B4AAOweAADuHgAA7h4AAPAeAADwHgAA8h4AAPIeAAD0HgAA9B4AAPYeAAD2HgAA+B4AAPgeAAD6HgAA+h4AAPweAAD8HgAA/h4AAP4eAAAIHwAADx8AABgfAAAdHwAAKB8AAC8fAAA4HwAAPx8AAEgfAABNHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAF8fAABoHwAAbx8AALgfAAC7HwAAyB8AAMsfAADYHwAA2x8AAOgfAADsHwAA+B8AAPsfAAACIQAAAiEAAAchAAAHIQAACyEAAA0hAAAQIQAAEiEAABUhAAAVIQAAGSEAAB0hAAAkIQAAJCEAACYhAAAmIQAAKCEAACghAAAqIQAALSEAADAhAAAzIQAAPiEAAD8hAABFIQAARSEAAIMhAACDIQAAACwAAC8sAABgLAAAYCwAAGIsAABkLAAAZywAAGcsAABpLAAAaSwAAGssAABrLAAAbSwAAHAsAAByLAAAciwAAHUsAAB1LAAAfiwAAIAsAACCLAAAgiwAAIQsAACELAAAhiwAAIYsAACILAAAiCwAAIosAACKLAAAjCwAAIwsAACOLAAAjiwAAJAsAACQLAAAkiwAAJIsAACULAAAlCwAAJYsAACWLAAAmCwAAJgsAACaLAAAmiwAAJwsAACcLAAAniwAAJ4sAACgLAAAoCwAAKIsAACiLAAApCwAAKQsAACmLAAApiwAAKgsAACoLAAAqiwAAKosAACsLAAArCwAAK4sAACuLAAAsCwAALAsAACyLAAAsiwAALQsAAC0LAAAtiwAALYsAAC4LAAAuCwAALosAAC6LAAAvCwAALwsAAC+LAAAviwAAMAsAADALAAAwiwAAMIsAADELAAAxCwAAMYsAADGLAAAyCwAAMgsAADKLAAAyiwAAMwsAADMLAAAziwAAM4sAADQLAAA0CwAANIsAADSLAAA1CwAANQsAADWLAAA1iwAANgsAADYLAAA2iwAANosAADcLAAA3CwAAN4sAADeLAAA4CwAAOAsAADiLAAA4iwAAOssAADrLAAA7SwAAO0sAADyLAAA8iwAAECmAABApgAAQqYAAEKmAABEpgAARKYAAEamAABGpgAASKYAAEimAABKpgAASqYAAEymAABMpgAATqYAAE6mAABQpgAAUKYAAFKmAABSpgAAVKYAAFSmAABWpgAAVqYAAFimAABYpgAAWqYAAFqmAABcpgAAXKYAAF6mAABepgAAYKYAAGCmAABipgAAYqYAAGSmAABkpgAAZqYAAGamAABopgAAaKYAAGqmAABqpgAAbKYAAGymAACApgAAgKYAAIKmAACCpgAAhKYAAISmAACGpgAAhqYAAIimAACIpgAAiqYAAIqmAACMpgAAjKYAAI6mAACOpgAAkKYAAJCmAACSpgAAkqYAAJSmAACUpgAAlqYAAJamAACYpgAAmKYAAJqmAACapgAAIqcAACKnAAAkpwAAJKcAACanAAAmpwAAKKcAACinAAAqpwAAKqcAACynAAAspwAALqcAAC6nAAAypwAAMqcAADSnAAA0pwAANqcAADanAAA4pwAAOKcAADqnAAA6pwAAPKcAADynAAA+pwAAPqcAAECnAABApwAAQqcAAEKnAABEpwAARKcAAEanAABGpwAASKcAAEinAABKpwAASqcAAEynAABMpwAATqcAAE6nAABQpwAAUKcAAFKnAABSpwAAVKcAAFSnAABWpwAAVqcAAFinAABYpwAAWqcAAFqnAABcpwAAXKcAAF6nAABepwAAYKcAAGCnAABipwAAYqcAAGSnAABkpwAAZqcAAGanAABopwAAaKcAAGqnAABqpwAAbKcAAGynAABupwAAbqcAAHmnAAB5pwAAe6cAAHunAAB9pwAAfqcAAICnAACApwAAgqcAAIKnAACEpwAAhKcAAIanAACGpwAAi6cAAIunAACNpwAAjacAAJCnAACQpwAAkqcAAJKnAACWpwAAlqcAAJinAACYpwAAmqcAAJqn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ADAFAABXBQAAWAUAAIsFAACMBQAAkAUAAJAFAADIBQAAzwUAAOsFAADuBQAA9QUAAP8FAAAOBwAADgcAAEsHAABMBwAAsgcAAL8HAAD7BwAA/AcAAC4IAAAvCAAAPwgAAD8IAABcCAAAXQgAAF8IAABfCAAAawgAAG8IAACPCAAAjwgAAJIIAACXCAAAhAkAAIQJAACNCQAAjgkAAJEJAACSCQAAqQkAAKkJAACxCQAAsQkAALMJAAC1CQAAugkAALsJAADFCQAAxgkAAMkJAADKCQAAzwkAANYJAADYCQAA2wkAAN4JAADeCQAA5AkAAOUJAAD/CQAAAAoAAAQKAAAECgAACwoAAA4KAAARCgAAEgoAACkKAAApCgAAMQoAADEKAAA0CgAANAoAADcKAAA3CgAAOgoAADsKAAA9CgAAPQoAAEMKAABGCgAASQoAAEoKAABOCgAAUAoAAFIKAABYCgAAXQoAAF0KAABfCgAAZQoAAHcKAACACgAAhAoAAIQKAACOCgAAjgoAAJIKAACSCgAAqQoAAKkKAACxCgAAsQoAALQKAAC0CgAAugoAALsKAADGCgAAxgoAAMoKAADKCgAAzgoAAM8KAADRCgAA3woAAOQKAADlCgAA8goAAPgKAAAACwAAAAsAAAQLAAAECwAADQsAAA4LAAARCwAAEgsAACkLAAApCwAAMQsAADELAAA0CwAANAsAADoLAAA7CwAARQsAAEYLAABJCwAASgsAAE4LAABUCwAAWAsAAFsLAABeCwAAXgsAAGQLAABlCwAAeAsAAIELAACECwAAhAsAAIsLAACNCwAAkQsAAJELAACWCwAAmAsAAJsLAACbCwAAnQsAAJ0LAACgCwAAogsAAKULAACnCwAAqwsAAK0LAAC6CwAAvQsAAMMLAADFCwAAyQsAAMkLAADOCwAAzwsAANELAADWCwAA2AsAAOULAAD7CwAA/wsAAA0MAAANDAAAEQwAABEMAAApDAAAKQwAADoMAAA7DAAARQwAAEUMAABJDAAASQwAAE4MAABUDAAAVwwAAFcMAABbDAAAXAwAAF4MAABfDAAAZAwAAGUMAABwDAAAdgwAAI0MAACNDAAAkQwAAJEMAACpDAAAqQwAALQMAAC0DAAAugwAALsMAADFDAAAxQwAAMkMAADJDAAAzgwAANQMAADXDAAA3AwA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AD0AAwH//wAAQgCdAEcADQH//wAA//8AAP//AAD//wAA//8AAP//AABMACQB//8AAFIANwD//wAA//8AAFUAlwD//wAA//8AAP//AABYAIcA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAXABWAP//AABhANIA//8AAP//AAD//wAAZACBAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABsAI0A//8AAHEAJwB2ACcA//8AAP//AAB9ANMAgACaAP//AAD//wAAjQBaAP//AACSAM4A//8AAP//AACVAJkA//8AAKEA2AGuAFMAswBaAP//AAD//wAA//8AALkAoQC9AKEA//8AAMIAdADHAJwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADMAI0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAzgCUANMALQD//wAA//8AAP//AAD//wAA2ADIAf//AAD//wAA4gDbAf//AAD//wAA//8AAO8AHgH//wAA//8AAP//AAD//wAA+gATAgABGAL//wAA//8AAP//AAAHASUA//8AAP//AAD//wAA//8AAP//AAD//wAACQHtAf//AAD//wAAEgE4AP//AAD//wAAGQGRAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AACEBNwH//wAA//8AAP//AAD//wAAKwEIAv//AAD//wAA//8AAP//AAA1AW0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADoBGQL//wAA//8AAP//AABdAUQB//8AAP//AABlASYA//8AAGoB1AD//wAAhQGFAIgBkwD//wAA//8AAP//AAD//wAA//8AAP//AACNAcwAogE/AaoBvwH//wAAswHcAf//AAC9AY0AywEMAv//AAD//wAA//8AAP//AADsAZsA//8AAP//AAD//wAA//8AAP//AADxAegB/gG1AAMC+wEKAhgB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AABoCPAH//wAA//8AAP//AAD//wAA//8AACUC7wH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALwKPAP//AAD//wAA//8AADcCYgH//wAA//8AAP//AAD//wAAQAJ8AP//AABDApQA//8AAP//AAD//wAAUAILAv//AAD//wAA//8AAP//AAD//wAA//8AAFwClgD//wAA//8AAF8CKwD//wAA//8AAP//AABiAgACdAIRAf//AAD//wAA//8AAIICFgD//wAA//8AAIcC1wCNAmwA//8AAP//AACSAiUB//8AAP//AAD//wAA//8AAP//AAD//wAAngIWAP//AACnAgUCsQIGAv//AADAAjkA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADFAswA//8AAP//AAD//wAA//8AAMgCbwDeAn4A//8AAP//AAD//wAA4wJ+AP//AADpAtkA//8AAP//AADsAiMB//8AAP//AAD//wAA//8AAP//AAD//wAA9QJKAf//AAD//wAABAOBAQ8DHAEaAzQB//8AACEDnwH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAKAPrAf//AAD//wAA//8AADEDEwE0A5kA//8AAP//AAD//wAA//8AAP//AAD//wAAOQPSAP//AAD//wAA//8AAEwDOgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABPAyEB//8AAFgD1AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAXAP6Af//AAD//wAA//8AAP//AABkA9UA//8AAP//AABnA5EA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGwDIAL//wAA//8AAP//AAD//wAAfAOaAIEDnwD//wAAhgN0AP//AACPA2sA//8AAJQDbwD//wAA//8AAP//AACZAw0B//8AAP//AACgA34B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAwwMLAc8DIgD//wAA//8AAP//AAD//wAA1AMOAP//AADaAzcA//8AAP//AADlAxUA//8AAP//AADsA6AB/wPjAf//AAD//wAA//8AABQEewD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAGwT/Af//AAD//wAA//8AAP//AAD//wAAKQSmAf//AAD//wAA//8AAP//AAD//wAA//8AADcE2gH//wAA//8AAEkEswFhBHMA//8AAP//AABmBHMAbgStAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAiwR7AP//AACNBPgB//8AAP//AAD//wAAlAS3Af//AAD//wAA//8AAP//AAD//wAA//8AAJ8EQQK4BDQCxwSrAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA1AQXAuIECwHnBEYC//8AAP//AAD//wAA//8AAP//AAD2BD8C//8AAP//AAD//wAA//8AAP//AAACBc0B//8AAP//AAD//wAA//8AAP//AAAMBTUB//8AAP//AAASBSEA//8AABkFwQH//wAA//8AAP//AAD//wAA//8AAP//AAAlBW0B//8AAP//AABJBaAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFMFDAFYBdYA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAZwVZAP//AAD//wAA//8AAP//AABuBXcA//8AAP//AAD//wAAcwVPAX8F5QH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAjAVVAJMFvAH//wAA//8AAP//AACkBZsA//8AAP//AAC0BXUA//8AAP//AAC5BSsA//8AAP//AADBBcoA0wU1Av//AAD//wAA//8AAP//AAD//wAA2wXmAP//AADeBYkA//8AAP//AAD//wAA//8AAOEFJgH//wAA//8AAP//AAD//wAA//8AAOsFlgEEBk4C//8AACsG6AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAC4GaQAyBtkB//8AAP//AAD//wAA//8AAP//AAD//wAARAbIAP//AABJBr4B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFIGMQL//wAA//8AAP//AAD//wAA//8AAFkGZwD//wAAawYfAnwGhgH//wAA//8AAIkG6wCOBhoA//8AAP//AAD//wAAlAZmAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AALIGOgL//wAA//8AAP//AADABhwAxQZYAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADLBhwA//8AANEGygD//wAA//8AAP//AAD//wAA//8AAP//AADXBjIB//8AAOMGkwH//wAA//8AAP//AAD//wAA//8AAP//AAD5BiECDgcbAP//AAD//wAA//8AAP//AAD//wAA//8AABMHagD//wAA//8AABcHBwD//wAA//8AAB0HuQH//wAA//8AADAHTAE6BycC//8AAP//AAD//wAA//8AAP//AABLByUC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGUH3QD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGoHlQH//wAAeAf1AX8H3QD//wAA//8AAP//AACJB9wA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACLB3EAkQdlAf//AAD//wAAoweDAKgHywCtB2sB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMQHKALiB3MB//8AAAII5wD//wAA//8AAAUIPgL//wAAKgjEAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA1CM0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADgIswD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAD0IDQD//wAA//8AAP//AAD//wAA//8AAP//AABDCG0A//8AAEgI/QH//wAA//8AAP//AABVCBYB//8AAP//AAD//wAA//8AAP//AABmCJgBcwhIAf//AAB7COAB//8AAIcIaQD//wAA//8AAP//AAD//wAA//8AAJII4gH//wAA//8AAKMI3wD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAApghoAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKsIpAG8CAYA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADCCBkA//8AAMcIgAH//wAA//8AAP//AADSCMsB5gjGAf//AAD//wAA8AgCAP//AAD//wAA9ggZAQ8JNAD//wAA//8AAP//AAAYCdUB//8AACEJ0QD//wAA//8AACwJNAD//wAAMQkdADkJkwD//wAA//8AAEEJMgL//wAA//8AAP//AAD//wAA//8AAEoJWQD//wAA//8AAFcJGQBgCWoA//8AAP//AAD//wAAaAkvAf//AABwCfIB//8AAP//AAD//wAA//8AAP//AAB6CS4A//8AAH8JLQD//wAAhglyAI0J7gGYCVcA//8AAP//AAD//wAA//8AAKUJPgH//wAA//8AAP//AACtCSkA//8AAP//AACzCaIB//8AAP//AADLCXkA0gm7Af//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADoCdsA7Ql2AP//AAD//wAA//8AAP//AADyCZIA/QmIAAcKJgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AABoKUgEkCp0A//8AAP//AAApCjoB//8AAP//AAD//wAANAp6AP//AAD//wAA//8AAP//AAA5CjAA//8AAD4KDQL//wAA//8AAFcKhAD//wAA//8AAP//AABaChEB//8AAP//AABdCjMB//8AAP//AAD//wAA//8AAP//AABnCvMB//8AAP//AABzCgwB//8AAP//AAD//wAA//8AAHwKCwD//wAAgwofAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAiQo1AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACUCvcB//8AAP//AAD//wAAngorAv//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAtAoRALkKNQD//wAA//8AAP//AAD//wAA//8AAL4KeADDCucB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAM8K9AH//wAA2QoaAP//AADeCm4A//8AAP//AADzClwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD4CqAA//8AAP//AAD//wAA//8AAP0KdQEOC0kB//8AAP//AAD//wAA//8AAP//AAD//wAAGgsQAB8LyQH//wAA//8AAP//AAD//wAA//8AACcLXAE8C1MA//8AAEULdgBQC+UA//8AAP//AAD//wAA//8AAFgLeAD//wAA//8AAP//AAD//wAA//8AAF4L4AD//wAAZAt8AP//AAD//wAAcAuiAP//AAD//wAAeAtcAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAhQuVAP//AACKCx0B//8AAP//AACfCzgB//8AAKoLVQD//wAA//8AAP//AAD//wAA//8AAP//AACvC6UBxAtUAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAzwvXAN0LAgH//wAA4wuKAf//AAAEDHEAEAzbAP//AAD//wAA//8AAP//AAD//wAA//8AABYMRQH//wAA//8AAP//AAD//wAA//8AAP//AAAiDEsA//8AACgMTAJJDFYA//8AAP//AAD//wAA//8AAP//AABRDPYB//8AAFsM0wH//wAA//8AAP//AAD//wAA//8AAP//AABkDBAA//8AAP//AAD//wAAagyKAP//AABtDBwC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAIEMcgD//wAAhgwsAf//AACRDO0A//8AAP//AAD//wAA//8AAP//AAD//wAAmwzhAf//AAD//wAA//8AAP//AACqDPUAsAwKAsIMuwDIDJABzgwhAP//AAD//wAA//8AANMMZAH//wAA7AwFAfAMBQH//wAA//8AAPUM3gD//wAA//8AAP//AAD//wAA//8AAP//AAD6DF0A//8AAP8M8gD//wAA//8AAP//AAAFDW0A//8AAA8NywD//wAA//8AABkNEAEeDQgA//8AACQNggD//wAA//8AAP//AAD//wAAKQ1dADIN9QD//wAA//8AAP//AAD//wAANw3SAf//AAD//wAA//8AAP//AABDDYQB//8AAEwNhwBiDQQC//8AAG4NSgL//wAA//8AAI8NWACeDcoB//8AAP//AACoDewB//8AAP//AAC2DV4A//8AAP//AAD//wAA//8AALoNXgC/DYAA//8AAP//AADFDTYA//8AANAN2AD//wAA//8AANgNYQD//wAA3Q2EAP//AAD//wAA//8AAP//AAD//wAA//8AAO0NAwD//wAA8w2MAf//AAD//wAACg6CAP//AAD//wAA//8AAP//AAD//wAAEg4RAv//AAApDmEA//8AAP//AAD//wAA//8AADEO8QE6DloBVA5nAf//AABsDhMA//8AAP//AACBDqQA//8AAIMOTQD//wAA//8AAJEO6QD//wAA//8AAP//AAD//wAAlA5lAP//AAD//wAA//8AAJkO4wD//wAA//8AAP//AAD//wAA//8AAP//AACeDoAA//8AAKMOHgD//wAAqA5uAP//AACtDqYA//8AAP//AAC5DqwAvA7eAP//AADHDhQC0A4yANQOHgD//wAA//8AAN4OGwHvDqoA8w6qAPgO+gD//wAA//8AAP0OvAADD7YA//8AAAgP9wD//wAADQ/3ABQPmgH//wAA//8AAB4PxgD//wAA//8AACAPLgH//wAAKA/kATEPIAE6D9QB//8AAP//AABHD8cBUQ8fAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAXQ89Av//AAB9DwkB//8AAIIPogD//wAA//8AAIcP1gGdD+UA//8AAP//AACiD+IA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKoPfQH//wAA//8AAP//AAD//wAA//8AALsPlwD//wAAyQ8VAM4P8AH//wAA//8AAOYPIgD//wAA7g9BAf//AAD4D70A//8AAP//AAD9Dx0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAAhAUAQ8QrwH//wAA//8AACoQPQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALxDZAP//AAD//wAA//8AAEEQPAJiEE4A//8AAHQQWwH//wAA//8AAP//AAD//wAA//8AAIQQfwCJEPwBkRAsAP//AAD//wAA//8AAP//AACYEIsAnRCLAP//AAD//wAApBBEAP//AACoEL0B//8AAP//AAD//wAAtxBAAP//AAD//wAAuhBFAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAL8QAwHHEFcA//8AAM4QowD//wAA//8AANMQowD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AANsQSwL//wAA/BBNAP//AAD//wAA//8AAP//AAABEWoB//8AABMRDgL//wAAIRFVAf//AAD//wAA//8AADcRAAH//wAA//8AADwRVABBEfQA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEkRDwBXEb8A//8AAFsRxgD//wAA//8AAP//AABnEQYB//8AAP//AAD//wAAahHtAG8RAQJ5EdAB//8AAP//AAD//wAA//8AAP//AAD//wAAixFQAZMRlAH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKQRIgL//wAA//8AAKwRNgH//wAA//8AAP//AAC2EasB//8AAP//AAD//wAA//8AAMYRYgDNEWkB//8AAP//AAD//wAA//8AAP//AAD//wAA3RHmAecRbAH//wAA//8AAPIR6QH//wAA//8AAPwRKgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAJEkwA//8AAP//AAD//wAAGBKHAf//AAD//wAA//8AAP//AAA1EmsAQRI5AP//AABIEmEB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFYSYgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFsSiQH//wAA//8AAG4SHgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAfhLJAIwSGACUEikB//8AAP//AAD//wAAphLqAP//AAD//wAArhK3ALMSGgL//wAAvBI5AMESBQD//wAA//8AAP//AAD//wAAxxLBAP//AAD//wAAzBImAv//AAD//wAA5hLdAf4SRAD//wAACBPeAf//AAD//wAA//8AAP//AAAfEykC//8AAP//AAAvE54B//8AAP//AAD//wAA//8AAP//AABCE1ACSRNwAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAE4TPAD//wAAUxOmAP//AAD//wAA//8AAP//AAD//wAAWBPJAF8T8gD//wAAZBPCAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGkT4AD//wAAehNsAP//AAD//wAA//8AAIoT+gCeE4wAoxOMAP//AACqEyAA//8AAP//AAD//wAArxNwAP//AAC4EzEA//8AALwTQwLWE8UB//8AAP//AADjE0AC//8AAP//AAD//wAA//8AAPgTbwH//wAAChSwAR8UKAD//wAA//8AAP//AAAtFI4B//8AAP//AAD//wAA//8AAP//AAD//wAAOhRUAkQUsQH//wAA//8AAP//AAD//wAAVBQ7Af//AAD//wAA//8AAP//AABpFOEA//8AAP//AAD//wAA//8AAHEUTgH//wAAfBRWAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAI4UDACTFHEB//8AALcU9gD//wAAvBSxAMEUZwD//wAA//8AAP//AADGFMMA//8AAP//AAD//wAAzRSnANsUGAD//wAA4BR6Af//AAD//wAA//8AAP//AAD0FLEA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAPwU4QD//wAA//8AAAEVKgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAFhWhASAVAQH//wAA//8AACUVfwH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABAFSAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEkVjwH//wAA//8AAP//AABQFcMB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFwV4wBkFRAB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAB0FRcA//8AAP//AAD//wAAfRWYAP//AACCFc4AkxW4AJgV6wD//wAA//8AAP//AACkFVECwxU5AdAVmADcFdAA4RUJAv//AAD//wAA8hV2AfsVJwH//wAA//8AAP//AAD//wAADhacAf//AAD//wAAJBY+AP//AAD//wAA//8AAP//AAD//wAA//8AACkWJAL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEMWUwH//wAA//8AAFcWWwD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFwWMwD//wAAYBZbAP//AAD//wAA//8AAGkWlgD//wAA//8AAHUWAQB7FpAA//8AAIAW0QH//wAA//8AAIwWkAD//wAA//8AAP//AAD//wAAlhYJAP//AAD//wAAnBZRAf//AAD//wAA//8AAKUWyAD//wAA//8AAP//AAD//wAArxbsAP//AAD//wAA//8AAP//AAD//wAA//8AALQWnAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADIFjsA//8AAM0WMAH//wAA//8AANYWmQH//wAA6xbXAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD9FkIAAhf7AP//AAD//wAA//8AAP//AAAHF/sADhcjABMX/AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAGBfqAP//AAAdF4kA//8AAP//AAD//wAALRcsAv//AAD//wAA//8AAE8XuQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFQXKgD//wAA//8AAP//AABmF5IB//8AAG4XQgD//wAA//8AAHYXdwGLFyMA//8AAJQXDwH//wAA//8AAP//AAD//wAA//8AAJ4XtAH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAshf/AP//AAD//wAA//8AALcX6gH//wAA//8AAP//AADAF6cA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMMX0QD//wAA//8AAP//AAD//wAA//8AAP//AADIF6kA//8AAP//AAD//wAA//8AAM0XGgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAOkXjgDuF18B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AABQYtgD//wAAHxiOAP//AAAoGPMA//8AAP//AAD//wAAMBioADoYAAD//wAA//8AAEIY7wD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABHGPkB//8AAP//AAD//wAAXRgCAv//AAD//wAAixjiAP//AAD//wAA//8AAP//AAD//wAAkBgkAJUYBwGeGKQA//8AAP//AAD//wAApRgtArkYBgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAyxhQAP//AADQGH8A//8AAP//AAD//wAA1xj/AP//AAD//wAA3xhgAP//AAD//wAA//8AAP//AAD//wAA//8AAOQYDwD//wAA//8AAP//AAD//wAA//8AAP//AADpGMAB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP4YCAH//wAA//8AAP//AAD//wAABRlPAv//AAD//wAA//8AAP//AAAmGXkA//8AAP//AAD//wAA//8AAP//AAD//wAAKxk7AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA1GSMC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEAZAQFJGUcC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGoZtQD//wAA//8AAP//AAD//wAAdBlZAf//AAD//wAA//8AAP//AAD//wAA//8AAJoZegD//wAA//8AAP//AAD//wAApBn4AKkZ7wD//wAA//8AALAZ8QD//wAA//8AAP//AAD//wAAuRmFAP//AAD//wAA//8AAP//AAD//wAAyBleAf//AADaGTAC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADxGfYA//8AAP//AAD//wAA//8AAPcZqAD//wAA/BnCAf//AAD//wAA//8AAAUaPQEqGggB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALxpNAVMasABYGvkAXRpoAP//AAD//wAA//8AAP//AABwGisBehqrAP//AAD//wAA//8AAP//AAB9GjoA//8AAP//AAD//wAA//8AAP//AAD//wAAhxpOAP//AAD//wAAjRpfAJIaSwH//wAA//8AAP//AAD//wAA//8AAJ0a5wCoGswB//8AAP//AACzGgcB//8AAP//AAD//wAAuBp8Af//AAD//wAA//8AAP//AAD//wAA0BotAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA2xp0AegaBwL//wAA//8AAP//AAD3GtAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP8aLwAEG60AChvBABobCgH//wAA//8AAP//AAD//wAA//8AAP//AAAlG7gBOBvkAP//AAD//wAA//8AAD0bJQD//wAA//8AAP//AAD//wAA//8AAEMbZQD//wAATBuXAVYbrABiG5sB//8AAP//AAD//wAA//8AAP//AABrG7wAcBtJAv//AAD//wAA//8AAP//AAD//wAAkRtAAZsbFQL//wAA//8AAP//AAD//wAA//8AAKYb+AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAK0bxwCyG4gB//8AAP//AAD//wAA//8AAP//AAD//wAA0BvfAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAN8bRwH//wAA//8AAOcbQgH//wAA//8AAP//AAD//wAA//8AAO8bowEDHO4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAAgcPwD//wAADRwJAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAYHL4AHxyzAP//AAD//wAA//8AACkcNwL//wAA//8AAP//AAD//wAA//8AAD8cEwH//wAAThwVAf//AAD//wAA//8AAP//AABhHL4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAHEcMAD//wAAhxy6Af//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAlxxGAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADEHCQA//8AAP//AAD//wAAyhydAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADVHD4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADeHEYA//8AAOQcrQD//wAA//8AAP//AAD//wAA//8AAP//AAD6HKcB//8AAP//AAD//wAADB0bAP//AAAVHWAB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AACkdsgE+HTgC//8AAP//AAD//wAA//8AAP//AABkHbsA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAaR2sAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAB6HTIAkB1GAP//AAD//wAA//8AAP//AAD//wAAlR1jAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAJodQwH//wAA//8AAP//AAD//wAA//8AAP//AAClHXgB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAsB2CAf//AAD//wAA//8AAP//AAD//wAA//8AALsdtADAHdoA//8AAP//AADFHa4B4x1NAv//AAAEHkgC//8AAP//AAD//wAA//8AACAesgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALR7PAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA+HgMCSh7fAf//AAD//wAA//8AAP//AAD//wAAWx4SAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAF4e1gD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGMetQH//wAA//8AAP//AAD//wAA//8AAP//AAB+Hp4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAI0eQwD//wAA//8AAP//AAD//wAA//8AAP//AACSHvQAlx6vAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACcHkMA//8AAP//AAD//wAA//8AAP//AACnHncA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAC5HnUA//8AAP//AAD//wAA//8AAMEeEgL//wAA0x7uAP//AAD//wAA3x79AP//AAD//wAA//8AAOQeTwD//wAA6h79AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA8h5JAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD3Hr0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD/Hv4B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAAwfuQD//wAA//8AAP//AAD//wAA//8AABYfMQD//wAA//8AAP//AAD//wAALB89ADgfeQH//wAA//8AAP//AAD//wAASx9PAP//AAD//wAAXR8UAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAYR/DAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAcB+6AHUfHwF+H+kA//8AAIkfYwH//wAA//8AAKEfQgK1HzkCxB9fAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADLH1IA//8AAP//AADPH8QA1R8bAv//AAD//wAA//8AAOgfhgD//wAA//8AAPQfpQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA+R+lAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAAMgrgAIIBIB//8AAP//AAD//wAA//8AAP//AAAbICgB//8AAP//AAD//wAA//8AAP//AAAtIC4C//8AAP//AAD//wAA//8AAP//AAA+IDMA//8AAP//AAD//wAA//8AAFQgsgBZIDsCaCAiAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAeyCLAf//AAD//wAA//8AAJMgVwH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKggxQC3IMIA//8AAP//AAD//wAA//8AAMQgSQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMwgSgD//wAA//8AAP//AADRICwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA1CA2Av//AAD//wAA6CDoAP//AAD//wAA//8AAP//AAD0IFIA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD9IFEA//8AAP//AAD//wAA//8AAP//AAAFIQoB//8AAP//AAD//wAADCHPAP//AAAPIUoA//8AAP//AAD//wAA//8AAP//AAAXIR0C//8AACohPAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAyIdwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAOSGRAf//AABNIV0B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABpIY0B//8AAP//AAD//wAA//8AAP//AAD//wAAdyFYAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACWIbcA//8AAP//AAChIVQB//8AAP//AAD//wAA//8AAP//AAD//wAAtCETAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAuSEEAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAvyGoAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AANUhqgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAPAhFgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA/iGwAP//AAD//wAA//8AAP//AAD//wAA//8AAAQibgH//wAA//8AABoixQD//wAA//8AACEiKgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AACYixAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADAirgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADYi7AA+IhcB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAE8iEgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABaIkQC//8AAP//AABwInIB//8AAP//AAD//wAAlCK/AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAsyJBAP//AAD//wAAviK0AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAziLPAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA4SJRAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD2IgIB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAHI8cA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAEyNFAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAB4j5AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAKiPxAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAvI/4A//8AAP//AAA4IwoA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAD4jtgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAWyMEAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGUjUAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABuI+YA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAfSPTAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACOI9oA//8AAJUjMwL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAqSP+AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAK4jZAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AALIjewH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAzCPwAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADRI84B//8AAP//AAD//wAA//8AAOIj8AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADqI2AA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAPkjTAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP8jLwL//wAA//8AAP//AAD//wAA//8AABYkZAD//wAAHyQvAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA1JM0A//8AAP//AAD//wAA//8AAP//AABFJLgAVSRHAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAWiQPAv//AABwJPkA//8AAP//AAD//wAAdySKAP//AAD//wAA//8AAP//AAD//wAA//8AAIckEAL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACqJGYA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACxJGMA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AALgkqQH//wAA//8AAMkkOAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAM4kwAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADVJMAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAOkkQQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAO0kcAH//wAA//8AAAMlQAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAdJYMB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA3JboA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEElUgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABgJYUB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABzJUUC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACXJa8A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKwl1QD//wAA//8AAP//AAD//wAA//8AAP//AAC8JUgA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADBJUcA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMolaAH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA1yVIAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAOslUwJsYW5hAGxpbmEAegB5aQBtbgBjbgBtYWthAHlpaWkAbWFuaQBpbmthbm5hZGEAY2kAbG8AbGFvAGxhb28Aenp6egBtaWFvAHllemkAaW5ua28AY28AbWUAbG9lAGdyYW4AcGkAbGluZWFyYQBtYXJrAGNhcmkAY2FyaWFuAHBvAG1lbmRla2lrYWt1aQBncmVrAHBlAG1lZXRlaW1heWVrAGlua2hhcm9zaHRoaQBnZW9yAGdyZWVrAG1ybwBtcm9vAGthbmEAbWVybwBtAGdvbm0AY2FrbQBpbm9zbWFueWEAaW5tYW5pY2hhZWFuAGluYXJtZW5pYW4AaW5tcm8AaW5taWFvAGMAaW5jaGFrbWEAY29tbW9uAG1hbmRhaWMAaW5teWFubWFyAGlubWFrYXNhcgBxYWFpAGluaWRlb2dyYXBoaWNzeW1ib2xzYW5kcHVuY3R1YXRpb24AaW5raG1lcgBjYW5zAHByZXBlbmRlZGNvbmNhdGVuYXRpb25tYXJrAGxtAG1hcmMAY29ubmVjdG9ycHVuY3R1YXRpb24AaW5ydW5pYwBpbmNhcmlhbgBpbmF2ZXN0YW4AY29tYmluaW5nbWFyawBpbmN1bmVpZm9ybW51bWJlcnNhbmRwdW5jdHVhdGlvbgBtZXJjAGluY2hvcmFzbWlhbgBwZXJtAGluYWhvbQBpbmlwYWV4dGVuc2lvbnMAaW5jaGVyb2tlZQBpbnNoYXJhZGEAbWFrYXNhcgBpbmFycm93cwBsYwBtYXNhcmFtZ29uZGkAaW5jdW5laWZvcm0AbWMAY2MAaW56YW5hYmF6YXJzcXVhcmUAbGluZXNlcGFyYXRvcgBhcm1uAHFtYXJrAGFybWkAaW5zYW1hcml0YW4AYXJtZW5pYW4AaW5tYXJjaGVuAGlubWFzYXJhbWdvbmRpAHFhYWMAcGMAaW5zY3JpcHRpb25hbHBhcnRoaWFuAGxhdG4AbGF0aW4AcmkAaW50aGFhbmEAaW5raG1lcnN5bWJvbHMAaW5rYXRha2FuYQBpbmN5cmlsbGljAGludGhhaQBpbmNoYW0AaW5rYWl0aGkAenMAbXRlaQBpbml0aWFscHVuY3R1YXRpb24AY3MAaW5zeXJpYWMAcGNtAGludGFrcmkAcHMAbWFuZABpbmthbmFleHRlbmRlZGEAbWVuZABtb2RpAGthdGFrYW5hAGlkZW8AcHJ0aQB5ZXppZGkAaW5pZGVvZ3JhcGhpY2Rlc2NyaXB0aW9uY2hhcmFjdGVycwB4aWRjb250aW51ZQBicmFpAGFzY2lpAHByaXZhdGV1c2UAYXJhYmljAGlubXlhbm1hcmV4dGVuZGVkYQBpbnJ1bWludW1lcmFsc3ltYm9scwBsZXR0ZXIAaW5uYW5kaW5hZ2FyaQBpbm1lZXRlaW1heWVrAGlub2xkbm9ydGhhcmFiaWFuAGluY2prY29tcGF0aWJpbGl0eWZvcm1zAGtuZGEAa2FubmFkYQBpbmNqa2NvbXBhdGliaWxpdHlpZGVvZ3JhcGhzAGwAaW5tb2RpAGluc3BlY2lhbHMAaW50cmFuc3BvcnRhbmRtYXBzeW1ib2xzAGlubWVuZGVraWtha3VpAGxldHRlcm51bWJlcgBpbm1lZGVmYWlkcmluAHhpZGMAaW5jaGVzc3N5bWJvbHMAaW5lbW90aWNvbnMAaW5saW5lYXJhAGlubGFvAGJyYWhtaQBpbm9sZGl0YWxpYwBpbm1pc2NlbGxhbmVvdXNtYXRoZW1hdGljYWxzeW1ib2xzYQBtb25nb2xpYW4AeGlkcwBwc2FsdGVycGFobGF2aQBncmxpbmsAa2l0cwBpbnN1bmRhbmVzZQBpbm9sZHNvZ2RpYW4AZ290aGljAGluYW5jaWVudHN5bWJvbHMAbWVyb2l0aWNjdXJzaXZlAGthbGkAY29udHJvbABwYXR0ZXJud2hpdGVzcGFjZQBpbmFkbGFtAHNrAGx0AGlubWFuZGFpYwBpbmNvbW1vbmluZGljbnVtYmVyZm9ybXMAaW5jamtjb21wYXRpYmlsaXR5aWRlb2dyYXBoc3N1cHBsZW1lbnQAc28AaWRjAGlub2xkc291dGhhcmFiaWFuAHBhbG0AaW5seWNpYW4AaW50b3RvAGlkc2JpbmFyeW9wZXJhdG9yAGlua2FuYXN1cHBsZW1lbnQAaW5jamtzdHJva2VzAHNvcmEAYmFtdW0AaW5vcHRpY2FsY2hhcmFjdGVycmVjb2duaXRpb24AaW5kb21pbm90aWxlcwBiYXRrAGdyZXh0AGJhdGFrAHBhdHdzAGlubWFsYXlhbGFtAGlubW9kaWZpZXJ0b25lbGV0dGVycwBpbnNtYWxsa2FuYWV4dGVuc2lvbgBiYXNzAGlkcwBwcmludABpbmxpbmVhcmJpZGVvZ3JhbXMAaW50YWl0aGFtAGlubXVzaWNhbHN5bWJvbHMAaW56bmFtZW5ueW11c2ljYWxub3RhdGlvbgBzYW1yAGluc3lsb3RpbmFncmkAaW5uZXdhAHNhbWFyaXRhbgBzAGpvaW5jAGluY29udHJvbHBpY3R1cmVzAGxpc3UAcGF1YwBpbm1pc2NlbGxhbmVvdXNzeW1ib2xzAGluYW5jaWVudGdyZWVrbXVzaWNhbG5vdGF0aW9uAGlubWlzY2VsbGFuZW91c3N5bWJvbHNhbmRhcnJvd3MAc20AaW5taXNjZWxsYW5lb3Vzc3ltYm9sc2FuZHBpY3RvZ3JhcGhzAGludWdhcml0aWMAcGQAaXRhbABhbG51bQB6aW5oAGlud2FyYW5nY2l0aQBpbmxhdGluZXh0ZW5kZWRhAGluc2F1cmFzaHRyYQBpbnRhaWxlAGlub2xkdHVya2ljAGlkY29udGludWUAaW5oYW5pZmlyb2hpbmd5YQBzYwBpZHN0AGlubGF0aW5leHRlbmRlZGUAbG93ZXIAYmFsaQBpbmhpcmFnYW5hAGluY2F1Y2FzaWFuYWxiYW5pYW4AaW5kZXNlcmV0AGJsYW5rAGluc3BhY2luZ21vZGlmaWVybGV0dGVycwBjaGVyb2tlZQBpbmx5ZGlhbgBwaG9lbmljaWFuAGNoZXIAYmVuZ2FsaQBtYXJjaGVuAGlud2FuY2hvAGdyYXBoZW1lbGluawBiYWxpbmVzZQBpZHN0YXJ0AGludGFtaWwAaW5tdWx0YW5pAGNoYW0AY2hha21hAGthaXRoaQBpbm1haGFqYW5pAGdyYXBoZW1lYmFzZQBpbm9naGFtAGNhc2VkAGlubWVldGVpbWF5ZWtleHRlbnNpb25zAGtob2praQBpbmFuY2llbnRncmVla251bWJlcnMAcnVucgBraGFyAG1hbmljaGFlYW4AbG93ZXJjYXNlAGNhbmFkaWFuYWJvcmlnaW5hbABpbm9sY2hpa2kAcGxyZABpbmV0aGlvcGljAHNpbmQAY3djbQBpbmVhcmx5ZHluYXN0aWNjdW5laWZvcm0AbGwAemwAaW5zaW5oYWxhAGlua2h1ZGF3YWRpAHhpZHN0YXJ0AHhkaWdpdABiaWRpYwBjaG9yYXNtaWFuAGluc2lkZGhhbQBpbmNvdW50aW5ncm9kbnVtZXJhbHMAYWhvbQBjaHJzAGtobXIAaW5vbGR1eWdodXIAaW5ncmFudGhhAGJhbXUAaW5zY3JpcHRpb25hbHBhaGxhdmkAZ29uZwBtb25nAGlubGF0aW5leHRlbmRlZGMAaW5uZXd0YWlsdWUAYWRsbQBpbm9zYWdlAGluZ2VuZXJhbHB1bmN0dWF0aW9uAGdlb3JnaWFuAGtoYXJvc2h0aGkAc2luaGFsYQBraG1lcgBzdGVybQBjYXNlZGxldHRlcgBtdWx0YW5pAGd1bmphbGFnb25kaQBtYXRoAGluY3lyaWxsaWNzdXBwbGVtZW50AGluZ2VvcmdpYW4AZ290aABpbmNoZXJva2Vlc3VwcGxlbWVudABnbGFnb2xpdGljAHF1b3RhdGlvbm1hcmsAdWlkZW8AaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmEAam9pbmNvbnRyb2wAcnVuaWMAaW5tb25nb2xpYW4AZW1vamkAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmUAZ3JhbnRoYQBpbnRpcmh1dGEAaW5oYXRyYW4AYWRsYW0AbHUAaW5raGl0YW5zbWFsbHNjcmlwdABrdGhpAGluZ3VybXVraGkAc3VuZGFuZXNlAGlub2xkaHVuZ2FyaWFuAHRha3JpAGludGFtaWxzdXBwbGVtZW50AG9yaXlhAGludmFpAGJyYWgAaW5taXNjZWxsYW5lb3VzdGVjaG5pY2FsAHZhaQB2YWlpAHNhdXIAZ3VydQB0YWlsZQBpbmhlcml0ZWQAcGF1Y2luaGF1AHphbmIAcHVuY3QAbGluYgBndXJtdWtoaQB0YWtyAGlubmFiYXRhZWFuAGlua2FuYnVuAGxvZ2ljYWxvcmRlcmV4Y2VwdGlvbgBpbmJoYWlrc3VraQBpbmNqa3VuaWZpZWRpZGVvZ3JhcGhzZXh0ZW5zaW9uYwBncmFwaGVtZWV4dGVuZABpbmVsYmFzYW4AaW5zb3Jhc29tcGVuZwBoYW4AaGFuaQBsaW1idQB1bmFzc2lnbmVkAHJhZGljYWwAaGFubwBsb3dlcmNhc2VsZXR0ZXIAY250cmwAaW5jamt1bmlmaWVkaWRlb2dyYXBocwBsaW5lYXJiAGluYW5hdG9saWFuaGllcm9nbHlwaHMAaGFudW5vbwBpbmtob2praQBpbmxhdGluZXh0ZW5kZWRhZGRpdGlvbmFsAGluZW5jbG9zZWRhbHBoYW51bWVyaWNzAGFuYXRvbGlhbmhpZXJvZ2x5cGhzAG4AZW1vamltb2RpZmllcgBzZABoaXJhAHNpZGQAbGltYgBiaGtzAHBobGkAbmFuZGluYWdhcmkAbm8Ac2F1cmFzaHRyYQBpbnRhbmdzYQBjd3QAYmhhaWtzdWtpAGluZ3JlZWthbmRjb3B0aWMAbmtvAG5rb28AdGVybQBvc2FnZQB4cGVvAHRuc2EAdGFuZ3NhAGlua2F5YWhsaQBwAGlub3JpeWEAaW55ZXppZGkAaW5hcmFiaWMAaW5waG9lbmljaWFuAGluc2hhdmlhbgBiaWRpY29udHJvbABpbmVuY2xvc2VkaWRlb2dyYXBoaWNzdXBwbGVtZW50AHdhcmEAbXVsdABpbm1lcm9pdGljaGllcm9nbHlwaHMAc2luaABzaGF2aWFuAGlua2FuZ3hpcmFkaWNhbHMAZW5jbG9zaW5nbWFyawBhcmFiAGluc2luaGFsYWFyY2hhaWNudW1iZXJzAGJyYWlsbGUAaW5oYW51bm9vAG9zbWEAYmVuZwBpbmJhc2ljbGF0aW4AaW5hcmFiaWNwcmVzZW50YXRpb25mb3Jtc2EAY3BtbgByZWdpb25hbGluZGljYXRvcgBpbmVuY2xvc2VkYWxwaGFudW1lcmljc3VwcGxlbWVudABlbW9qaW1vZGlmaWVyYmFzZQBpbmdyZWVrZXh0ZW5kZWQAbGVwYwBpbmRvZ3JhAGZvcm1hdABseWNpAGx5Y2lhbgBkaWEAaW5waGFpc3Rvc2Rpc2MAZGkAZGlhawB1bmtub3duAGdyYmFzZQBteW1yAG15YW5tYXIAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmQAZW1vZABpbmdlb21ldHJpY3NoYXBlcwBpbmN5cHJvbWlub2FuAGluc3VuZGFuZXNlc3VwcGxlbWVudAB0b3RvAGdsYWcAdGFpdmlldABhc2NpaWhleGRpZ2l0AG9kaQBwdW5jdHVhdGlvbgB2cwBzdW5kAGluc295b21ibwBpbmltcGVyaWFsYXJhbWFpYwBpbmJhdGFrAGlubGF0aW5leHRlbmRlZGQAaW5udXNodQBpbnRpYmV0YW4AaW5sb3dzdXJyb2dhdGVzAGhhdHJhbgBpbmJsb2NrZWxlbWVudHMAaW5zb2dkaWFuAGluZGluZ2JhdHMAaW5lbHltYWljAGluZGV2YW5hZ2FyaQBlbW9qaWNvbXBvbmVudABpbmthdGFrYW5hcGhvbmV0aWNleHRlbnNpb25zAGlkZW9ncmFwaGljAGNvcHRpYwBpbm51bWJlcmZvcm1zAGhhdHIAaW5jamtjb21wYXRpYmlsaXR5AGlua2FuYWV4dGVuZGVkYgBwYXR0ZXJuc3ludGF4AGF2ZXN0YW4AaW5hcmFiaWNleHRlbmRlZGEAc29nZGlhbgBzb2dvAGludGFuZ3V0AGNvcHQAZ3JhcGgAb2lkYwBpbmJ5emFudGluZW11c2ljYWxzeW1ib2xzAGluaW5zY3JpcHRpb25hbHBhcnRoaWFuAGRpYWNyaXRpYwBpbmluc2NyaXB0aW9uYWxwYWhsYXZpAGlubWF5YW5udW1lcmFscwBpbm15YW5tYXJleHRlbmRlZGIAaW50YWdzAGphdmEAY3BydABuYW5kAHBhdHN5bgB0YWxlAG9pZHMAc2VudGVuY2V0ZXJtaW5hbABpbXBlcmlhbGFyYW1haWMAdGVybWluYWxwdW5jdHVhdGlvbgBseWRpAGx5ZGlhbgBib3BvAGphdmFuZXNlAGN3bABpbmdlb21ldHJpY3NoYXBlc2V4dGVuZGVkAGlub2xkcGVyc2lhbgBpbm9ybmFtZW50YWxkaW5nYmF0cwBpbmJyYWlsbGVwYXR0ZXJucwBpbnZhcmlhdGlvbnNlbGVjdG9ycwBjYXNlaWdub3JhYmxlAGlueWlyYWRpY2FscwBpbm5vYmxvY2sAaW52ZXJ0aWNhbGZvcm1zAGluZXRoaW9waWNzdXBwbGVtZW50AHNoYXJhZGEAaW5iYWxpbmVzZQBpbnZlZGljZXh0ZW5zaW9ucwB3b3JkAGlubWlzY2VsbGFuZW91c21hdGhlbWF0aWNhbHN5bWJvbHNiAHRhbWwAb2xjawBpZHNiAG9sb3dlcgBkZWNpbWFsbnVtYmVyAGF2c3QAaW5jeXJpbGxpY2V4dGVuZGVkYQBvbGNoaWtpAHNocmQAaW50YWl4dWFuamluZ3N5bWJvbHMAaW50YWl2aWV0AHVnYXIAaW5jamtzeW1ib2xzYW5kcHVuY3R1YXRpb24AYm9wb21vZm8AaW5saXN1AGlub2xkcGVybWljAHNpZGRoYW0AemFuYWJhemFyc3F1YXJlAGFzc2lnbmVkAG1lZGYAY2xvc2VwdW5jdHVhdGlvbgBzYXJiAHNvcmFzb21wZW5nAGludmFyaWF0aW9uc2VsZWN0b3Jzc3VwcGxlbWVudABpbmhhbmd1bGphbW8AbWVkZWZhaWRyaW4AcGhhZwBpbmxpc3VzdXBwbGVtZW50AGluY29wdGljAGluc3lyaWFjc3VwcGxlbWVudABpbmhhbmd1bGphbW9leHRlbmRlZGEAY3lybABpbnNob3J0aGFuZGZvcm1hdGNvbnRyb2xzAGluY3lyaWxsaWNleHRlbmRlZGMAZ3VqcgBjd3UAZ3VqYXJhdGkAc3BhY2luZ21hcmsAYWxwaGEAbWx5bQBpbnBhbG15cmVuZQBtYWxheWFsYW0Ac3BhY2UAaW5sZXBjaGEAcGFsbXlyZW5lAHNveW8AbWVyb2l0aWNoaWVyb2dseXBocwB4c3V4AGludGVsdWd1AGluZGV2YW5hZ2FyaWV4dGVuZGVkAGlubWVyb2l0aWNjdXJzaXZlAGRzcnQAdGhhYQB0aGFhbmEAYnVnaQB0aGFpAHNvZ2QAdGl0bGVjYXNlbGV0dGVyAGlubWF0aGVtYXRpY2FsYWxwaGFudW1lcmljc3ltYm9scwBvcmtoAGNhdWNhc2lhbmFsYmFuaWFuAGluYmFtdW0AZGVzZXJldABpbmdlb3JnaWFuc3VwcGxlbWVudABidWdpbmVzZQBzZXBhcmF0b3IAaW5zbWFsbGZvcm12YXJpYW50cwB0aXJoAGluYnJhaG1pAG5kAHBobngAbmV3YQBpbmNvbWJpbmluZ2RpYWNyaXRpY2FsbWFya3MAbWFoagBpbmNvbWJpbmluZ2RpYWNyaXRpY2FsbWFya3Nmb3JzeW1ib2xzAG9sZHBlcnNpYW4AbWFoYWphbmkAdGFpdGhhbQBuZXd0YWlsdWUAbmV3bGluZQBzeXJjAGlubW9uZ29saWFuc3VwcGxlbWVudABpbnVuaWZpZWRjYW5hZGlhbmFib3JpZ2luYWxzeWxsYWJpY3NleHRlbmRlZGEAc2hhdwBidWhkAHZpdGhrdXFpAG51bWJlcgBpbnN1dHRvbnNpZ253cml0aW5nAHZhcmlhdGlvbnNlbGVjdG9yAGV0aGkAbGVwY2hhAHRpcmh1dGEAcm9oZwBhaGV4AGluY29wdGljZXBhY3RudW1iZXJzAHdhbmNobwBpbmNqa3VuaWZpZWRpZGVvZ3JhcGhzZXh0ZW5zaW9uZwBraG9qAGN1bmVpZm9ybQBpbmR1cGxveWFuAHVnYXJpdGljAGluc3ltYm9sc2FuZHBpY3RvZ3JhcGhzZXh0ZW5kZWRhAG9sZHBlcm1pYwBpbmNvbWJpbmluZ2RpYWNyaXRpY2FsbWFya3NzdXBwbGVtZW50AGtodWRhd2FkaQB0YW5nAHN5cmlhYwB0YWdiYW53YQBtb2RpZmllcmxldHRlcgBpbmN1cnJlbmN5c3ltYm9scwBpbm55aWFrZW5ncHVhY2h1ZWhtb25nAHRhbWlsAHRhbHUAaW5nb3RoaWMAaW51bmlmaWVkY2FuYWRpYW5hYm9yaWdpbmFsc3lsbGFiaWNzAHdjaG8AaW5jb21iaW5pbmdkaWFjcml0aWNhbG1hcmtzZXh0ZW5kZWQAb2dhbQB0ZWx1AGlkc3RyaW5hcnlvcGVyYXRvcgBpbmJlbmdhbGkAbmwAc3Vycm9nYXRlAGViYXNlAGhhbmcAaW5idWdpbmVzZQBtYXRoc3ltYm9sAGludml0aGt1cWkAdml0aABpbmNqa3JhZGljYWxzc3VwcGxlbWVudABpbmd1amFyYXRpAGluZ2xhZ29saXRpYwBpbmd1bmphbGFnb25kaQBwaGFnc3BhAGN3Y2YAbmNoYXIAb3RoZXJpZGNvbnRpbnVlAHdoaXRlc3BhY2UAaW5saW5lYXJic3lsbGFiYXJ5AHNnbncAb3RoZXIAaGlyYWdhbmEAaW5waGFnc3BhAG90aGVybnVtYmVyAGlucmVqYW5nAG9zZ2UAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmIAaW50YWdhbG9nAGluYmFzc2F2YWgAdGFuZ3V0AGhtbmcAaW5lbmNsb3NlZGNqa2xldHRlcnNhbmRtb250aHMAY3VycmVuY3lzeW1ib2wAaW5saW1idQBpbmJ1aGlkAGluZXRoaW9waWNleHRlbmRlZGEAc3lsbwBkYXNoAHdhcmFuZ2NpdGkAb2FscGhhAG9sZGl0YWxpYwBpbm90dG9tYW5zaXlhcW51bWJlcnMAc3BhY2VzZXBhcmF0b3IAaW5sYXRpbjFzdXBwbGVtZW50AG90aGVyYWxwaGFiZXRpYwBjaGFuZ2Vzd2hlbmNhc2VtYXBwZWQAaW5hZWdlYW5udW1iZXJzAGludW5pZmllZGNhbmFkaWFuYWJvcmlnaW5hbHN5bGxhYmljc2V4dGVuZGVkAGJ1aGlkAGluamF2YW5lc2UAY3lyaWxsaWMAZG9ncmEAbm9uY2hhcmFjdGVyY29kZXBvaW50AGluaGFuZ3Vsc3lsbGFibGVzAGJhc3NhdmFoAGlubGV0dGVybGlrZXN5bWJvbHMAaW5jb21iaW5pbmdoYWxmbWFya3MAaW5hcmFiaWNtYXRoZW1hdGljYWxhbHBoYWJldGljc3ltYm9scwBvcnlhAGlucHJpdmF0ZXVzZWFyZWEAY2hhbmdlc3doZW50aXRsZWNhc2VkAGRvZ3IAaGVicgBpbnRhZ2JhbndhAGludGlmaW5hZ2gAaW5ib3BvbW9mbwBuYXJiAHJqbmcAaW5hbHBoYWJldGljcHJlc2VudGF0aW9uZm9ybXMAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmYAaW5zeW1ib2xzZm9ybGVnYWN5Y29tcHV0aW5nAG9sZGh1bmdhcmlhbgBmaW5hbHB1bmN0dWF0aW9uAGlucGF1Y2luaGF1AGlucHNhbHRlcnBhaGxhdmkAenAAcGhscABpbmFyYWJpY3ByZXNlbnRhdGlvbmZvcm1zYgBub25zcGFjaW5nbWFyawBkZXZhAHRhdnQAaG1ucABkZXZhbmFnYXJpAGtoaXRhbnNtYWxsc2NyaXB0AGtheWFobGkAaW5iYW11bXN1cHBsZW1lbnQAc3lsb3RpbmFncmkAdGlidABlcHJlcwB0aWJldGFuAGVsYmEAb3NtYW55YQBpbmRpdmVzYWt1cnUAb2xkdHVya2ljAGNoYW5nZXN3aGVubG93ZXJjYXNlZABjeXByb21pbm9hbgBpbmV0aGlvcGljZXh0ZW5kZWQAZW1vamlwcmVzZW50YXRpb24AYW55AG90aGVybG93ZXJjYXNlAG91Z3IAaW5oZWJyZXcAc29mdGRvdHRlZABpbm1hdGhlbWF0aWNhbG9wZXJhdG9ycwBpbmFsY2hlbWljYWxzeW1ib2xzAGlubWFoam9uZ3RpbGVzAGhhbmd1bABleHQAb21hdGgAaW50YW5ndXRjb21wb25lbnRzAG90aGVybGV0dGVyAG5iYXQAbmFiYXRhZWFuAG5zaHUAcGFyYWdyYXBoc2VwYXJhdG9yAGluYXJhYmljZXh0ZW5kZWRiAGlubGF0aW5leHRlbmRlZGcAY2hhbmdlc3doZW51cHBlcmNhc2VkAGh1bmcAaW5wbGF5aW5nY2FyZHMAaW5hcmFiaWNzdXBwbGVtZW50AGlueWlqaW5naGV4YWdyYW1zeW1ib2xzAGlucGhvbmV0aWNleHRlbnNpb25zAG90aGVydXBwZXJjYXNlAG90aGVyaWRzdGFydABlbGJhc2FuAGVseW0AY2YAaW5pbmRpY3NpeWFxbnVtYmVycwBvdGhlcnN5bWJvbABleHRlbmRlcgBleHRwaWN0AHdzcGFjZQBwZgBlbHltYWljAGludGFuZ3V0c3VwcGxlbWVudABjeXByaW90AHN5bWJvbABpbmN5cmlsbGljZXh0ZW5kZWRiAGluc3VwZXJzY3JpcHRzYW5kc3Vic2NyaXB0cwBpbnlpc3lsbGFibGVzAGlucGhvbmV0aWNleHRlbnNpb25zc3VwcGxlbWVudABvbGRzb2dkaWFuAGluZ2VvcmdpYW5leHRlbmRlZABobHV3AGRpZ2l0AGluaGFuZ3VsamFtb2V4dGVuZGVkYgBpbmhpZ2hwcml2YXRldXNlc3Vycm9nYXRlcwBpbnBhaGF3aGhtb25nAG9naGFtAGluc3VwcGxlbWVudGFsYXJyb3dzYQBvdXBwZXIAYWdoYgBvdGhlcm1hdGgAbnVzaHUAc295b21ibwBpbmxhdGluZXh0ZW5kZWRiAGFscGhhYmV0aWMAaW5zdXBwbGVtZW50YWxhcnJvd3NjAGluc3VwcGxlbWVudGFsbWF0aGVtYXRpY2Fsb3BlcmF0b3JzAG90aGVyZGVmYXVsdGlnbm9yYWJsZWNvZGVwb2ludABkZXByZWNhdGVkAG9sZG5vcnRoYXJhYmlhbgBpbmN5cHJpb3RzeWxsYWJhcnkAZXh0ZW5kZWRwaWN0b2dyYXBoaWMAdW5pZmllZGlkZW9ncmFwaABwYWhhd2hobW9uZwBkaXZlc2FrdXJ1AHNpZ253cml0aW5nAHRhZ2IAdGlmaW5hZ2gAdXBwZXIAaW5oYWxmd2lkdGhhbmRmdWxsd2lkdGhmb3JtcwB1cHBlcmNhc2UAZXRoaW9waWMAbW9kaWZpZXJzeW1ib2wAb3RoZXJwdW5jdHVhdGlvbgByZWphbmcAaW5ldGhpb3BpY2V4dGVuZGVkYgB0Zm5nAGhleABpbnN1cHBsZW1lbnRhbHB1bmN0dWF0aW9uAHRnbGcAaW5sYXRpbmV4dGVuZGVkZgB0YWdhbG9nAGhhbmlmaXJvaGluZ3lhAGVjb21wAGluZ2xhZ29saXRpY3N1cHBsZW1lbnQAaGV4ZGlnaXQAY2hhbmdlc3doZW5jYXNlZm9sZGVkAGRhc2hwdW5jdHVhdGlvbgBvbGRzb3V0aGFyYWJpYW4AZHVwbABpbmVneXB0aWFuaGllcm9nbHlwaHMAdGVsdWd1AHVwcGVyY2FzZWxldHRlcgBpbmVneXB0aWFuaGllcm9nbHlwaGZvcm1hdGNvbnRyb2xzAGh5cGhlbgBoZWJyZXcAaW5oaWdoc3Vycm9nYXRlcwB6eXl5AG9ncmV4dABvdGhlcmdyYXBoZW1lZXh0ZW5kAGRlcABpbnN1cHBsZW1lbnRhbGFycm93c2IAZGVmYXVsdGlnbm9yYWJsZWNvZGVwb2ludABpbmhhbmd1bGNvbXBhdGliaWxpdHlqYW1vAG9sZHV5Z2h1cgBpbnN1cHBsZW1lbnRhcnlwcml2YXRldXNlYXJlYWEAaW5ib3BvbW9mb2V4dGVuZGVkAGluc3VwcGxlbWVudGFsc3ltYm9sc2FuZHBpY3RvZ3JhcGhzAG55aWFrZW5ncHVhY2h1ZWhtb25nAG9wZW5wdW5jdHVh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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7KBQnJiUOBSQUBxkiHSAQOx87OwIBOxkPOw47Oxw7Ajs7Ows7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Oxg7Fjs7Czs7Ozs7BzsAOzsQOwE7OxA7OzsPOzs7Bjs7OzsAOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OwYDDg4ODg4OAQ4ODg4ODg4ODg4ADg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgAODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgQODgUODgQODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgoODg4ODgkOAQ4ODg4ODg4ODg4OAA4ODggODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg44ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4OAADChk4OB4AODgAFDg4OA84OBQ4HjgAADg4ODg4ODg4Dzg4ODg4GTgKODg4OAU4ADgAOAU4OBQ4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgAAwoZODgeADg4ABQ4ODgPODgUOB44AAA4ODg4ODg4OA84ODg4OBk4Cjg4ODgFOAA4ADgFODgUODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4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AGwHAQBKbgEAzw8BABYBAADMAAEA2iwAAD8LAQDaBAAAwwQBANoeAACECAEA2h8AAF8JAQC8JAAA1AkBAJoDAAAKAwEAxBAAAMMLAQDaAAAAmQABABQEAQCnDQEAFCwAAEwKAQAUBAAAjQMBABQeAABpBwEAuiQAAM4JAQAUAQAAyQABAP///////wAAwhAAAL0LAQCOAwAARwMBABoEAQC5DQEAGiwAAF4KAQAaBAAAoAMBABoeAAByBwEAGh8AANsIAQAaAQAA0gABAP///////wAAtiQAAMIJAQD///////8AAP///////wAAigMAAOYCAQAYBAEAsw0BABgsAABYCgEAGAQAAJoDAQAYHgAAbwcBABgfAADVCAEAGAEAAM8AAQAOBAEAlQ0BAA4sAAA6CgEADgQAABEEAQAOHgAAYAcBAA4fAADPCAEADgEAAMAAAQAC6QEAFxABAP///////wAAxyQAAPUJAQAMBAEAjw0BAAwsAAA0CgEADAQAAAsEAQAMHgAAXQcBAAwfAADJCAEADAEAAL0AAQAIBAEAgw0BAAgsAAAoCgEACAQAAP8DAQAIHgAAVwcBAAgfAAC9CAEACAEAALcAAQAGBAEAfQ0BAAYsAAAiCgEABgQAAPkDAQAGHgAAVAcBAP///////wAABgEAALQAAQD///////8AAAIFAAD/BAEABAQBAHcNAQAELAAAHAoBAAQEAADzAwEABB4AAFEHAQD///////8AAAQBAACxAAEAAAQBAGsNAQAALAAAEAoBAAAEAADnAwEAAB4AAEsHAQD///////8AAAABAACrAAEA////////AAB1BQEAXg4BAJQFAQCyDgEAKiwAAI4KAQAqBAAA1AMBACoeAACKBwEAKh8AAO0IAQAqAQAA6gABACqnAABLDAEAwgMAACYDAQAmBAEA3Q0BACYsAACCCgEAJgQAAMgDAQAmHgAAhAcBALcEAQD4DQEAJgEAAOQAAQAmpwAARQwBAJ4DAAAYAwEAtx8AAAoAAwC3AQAAwgIBAJIFAQCvDgEAt6sAABUHAQD///////8AALccAAArBgEAewEAAFwBAQB7pwAAtAwBAHurAABhBgEAjAMAAEQDAQAuLAAAmgoBAC4EAADhAwEALh4AAJAHAQAuHwAA+QgBAC4BAADwAAEALqcAAFEMAQCPHwAApAACAI8BAABxAgEA////////AACPqwAAnQYBAAL7AAAMAAIAiAMAAOACAQCPDAEA5Q4BAP///////wAALCwAAJQKAQAsBAAA2wMBACweAACNBwEALB8AAPMIAQAsAQAA7QABACynAABODAEAKCwAAIgKAQAoBAAAzgMBACgeAACHBwEAKB8AAOcIAQAoAQAA5wABACinAABIDAEA////////AAD///////8AAIYFAQCODgEAJAQBANcNAQAkLAAAfAoBACQEAADCAwEAJB4AAIEHAQBHBQAAhgUBACQBAADhAAEAJKcAAEIMAQAiBAEA0Q0BACIsAAB2CgEAIgQAALoDAQAiHgAAfgcBADP/AABTDQEAIgEAAN4AAQAipwAAPwwBANoDAABTAwEAwAQBABMOAQDALAAAGAsBAMAEAACxBAEAwB4AAF0IAQAx/wAATQ0BADsCAABBAgEAwKcAAAINAQCzBAEA7A0BAMAAAABNAAEA////////AAAqIQAAGwABALMfAAA+AAIAswEAAJIBAQCzpwAAGg0BALOrAAAJBwEA////////AACzHAAAHwYBAP///////wAAJiEAADoDAQA1BQAAUAUBALcQAACcCwEAsQQBAOYNAQD///////8AALcYAQCWDwEASgIAAFMCAQCOBQEAow4BALEBAAC5AgEAsacAALACAQCxqwAAAwcBAP///////wAAsRwAABkGAQCxDAEASw8BADwFAABlBQEA////////AAAcAgAAIAIBAE4eAADABwEAigUBAJoOAQBOAQAAGgEBAE6nAAB+DAEAqx8AAOAAAgBOAAAAJQABAKunAAB3AgEAq6sAAPEGAQAWAgAAFwIBAKscAAAHBgEAqwwBADkPAQCXHgAAIgACAJcfAADMAAIAlwEAAIkCAQBOpgAA5QsBAJerAAC1BgEAggUBAIIOAQCXHAAAywUBAJcMAQD9DgEA////////AABObgEA2w8BAHEFAQBSDgEAFAIAABQCAQDEJAAA7AkBAH4sAABEAgEAfgQAAEUEAQB+HgAACQgBACr/AAA4DQEAgAUBAHwOAQB+pwAAtwwBAH6rAABqBgEAGgIAAB0CAQDCJAAA5gkBAKkfAADWAAIAqQEAAK0CAQAm/wAALA0BAKmrAADrBgEAjQUBAKAOAQCpHAAAAQYBAKkMAQAzDwEA////////AAD///////8AABgCAAAaAgEAwBAAALcLAQAgBAEAyw0BACAsAABwCgEAIAQAALMDAQAgHgAAewcBAA4CAAALAgEAIAEAANsAAQCzEAAAkAsBAP///////wAALv8AAEQNAQCzGAEAig8BAP///////wAAkR8AAK4AAgCRAQAAcQEBAAwCAAAIAgEAkasAAKMGAQD///////8AAJEcAAC5BQEAkQwBAOsOAQD///////8AAAgCAAACAgEAsRAAAIoLAQDVAQAAuQEBACz/AAA+DQEAsRgBAIQPAQDVAAAAjQABAAYCAAD/AQEAjwMAAEoDAQD///////8AACj/AAAyDQEA1CwAADYLAQDUBAAAugQBANQeAAB7CAEAjAUBAJ0OAQAEAgAA/AEBAKsQAAB4CwEAOwUAAGIFAQDUAAAAigABAKsYAQByDwEAJP8AACYNAQAAAgAA9gEBAP///////wAA////////AAAc6QEAZRABAP///////wAAiAUBAJQOAQAi/wAAIA0BAP///////wAAKgIAADICAQD///////8AAP4EAAD5BAEA/h4AALoIAQAW6QEAUxABAP4BAADzAQEA////////AABKBQAAjwUBACYCAAAsAgEAHgQBAMUNAQAeLAAAagoBAB4EAACsAwEAHh4AAHgHAQD///////8AAB4BAADYAAEA////////AACpEAAAcgsBABwFAAAmBQEAFOkBAE0QAQCpGAEAbA8BANIEAQBJDgEA0iwAADMLAQDSBAAAtwQBANIeAAB4CAEA0h8AABQAAwAuAgAAOAIBABYFAAAdBQEAGukBAF8QAQDSAAAAhAABAKcfAAD0AAIApwEAAIkBAQD///////8AAKerAADlBgEA////////AACnHAAA+wUBAKcMAQAtDwEA////////AAD///////8AABjpAQBZEAEALAIAADUCAQAUBQAAGgUBAHwEAABCBAEAfB4AAAYIAQAzBQAASgUBAA7pAQA7EAEAKAIAAC8CAQB8qwAAZAYBAEgeAAC3BwEASB8AABcJAQAaBQAAIwUBAEinAAB1DAEAMQUAAEQFAQBIAAAAFQABAAzpAQA1EAEAaywAAK8KAQAkAgAAKQIBAKsDAABBAwEAax8AAD4JAQD///////8AAAjpAQApEAEAGAUAACAFAQBIpgAA2wsBACICAAAmAgEA////////AACXAwAA/QIBAAbpAQAjEAEADgUAABEFAQBIbgEAyQ8BAP///////wAAVh4AAMwHAQBWHwAAPgADAFYBAAAmAQEAVqcAAIoMAQAE6QEAHRABAFYAAAA+AAEADAUAAA4FAQD///////8AABb7AAB9AAIA////////AAAA6QEAERABAP///////wAACAUAAAgFAQD///////8AAFamAADxCwEA////////AACpAwAAOgMBAP///////wAABgUAAAUFAQD///////8AAFZuAQDzDwEA////////AAAU+wAAbQACAP///////wAAtyQAAMUJAQD///////8AAAQFAAACBQEA4iwAAEsLAQDiBAAAzwQBAOIeAACQCAEA4h8AACQAAwDiAQAAzgEBAAAFAAD8BAEATgIAAFkCAQCnEAAAbAsBAP///////wAA////////AACnGAEAZg8BAJEDAADpAgEA////////AAAqBQAAOwUBAFQeAADJBwEAVB8AADkAAwBUAQAAIwEBAFSnAACHDAEA////////AABUAAAAOAABANUDAAAwAwEAJgUAADUFAQA5HwAAAgkBADkBAAD8AAEAEgQBAKENAQASLAAARgoBABIEAACGAwEAEh4AAGYHAQBUpgAA7gsBABIBAADGAAEAEAQBAJsNAQAQLAAAQAoBABAEAACAAwEAEB4AAGMHAQBUbgEA7Q8BABABAADDAAEA////////AABrIQAAsAkBAC4FAABBBQEAjwUBAKYOAQA/HwAAFAkBAD8BAAAFAQEABvsAAB0AAgBSHgAAxgcBAFIfAAA0AAMAUgEAACABAQBSpwAAhAwBAP///////wAAUgAAADEAAQD///////8AAAT7AAAFAAMA/gMAANcCAQAsBQAAPgUBACACAAB9AQEA////////AADAJAAA4AkBAAD7AAAEAAIAUqYAAOsLAQAoBQAAOAUBAFAeAADDBwEAUB8AAFQAAgBQAQAAHQEBAFCnAACBDAEAUm4BAOcPAQBQAAAAKwABAP///////wAAygQBADEOAQDKLAAAJwsBACQFAAAyBQEAyh4AAGwIAQDKHwAAWQkBAMoBAACpAQEA////////AABQpgAA6AsBAMoAAABsAAEAIgUAAC8FAQCnAwAANAMBAPAEAADkBAEA8B4AAKUIAQBQbgEA4Q8BAPABAAAUAAIA2CwAADwLAQDYBAAAwAQBANgeAACBCAEA2B8AAH0JAQD///////8AANinAAAUDQEA////////AADYAAAAkwABANYsAAA5CwEA1gQAAL0EAQDWHgAAfggBANYfAABMAAIA////////AADWpwAAEQ0BAP///////wAA1gAAAJAAAQDIBAEAKw4BAMgsAAAkCwEAuQQBAP4NAQDIHgAAaQgBAMgfAABTCQEAyAEAAKUBAQC5HwAAegkBAP///////wAAyAAAAGYAAQC5qwAAGwcBAP///////wAAuRwAADEGAQAeAgAAIwIBAMYEAQAlDgEAxiwAACELAQD///////8AAMYeAABmCAEAxh8AAEMAAgBOBQAAmwUBAManAABIBwEAxQQBACIOAQDGAAAAYAABAMUEAACiBAEAuwQBAAQOAQC1BAEA8g0BAMUBAAChAQEAxacAAKoCAQC7HwAAUAkBAMUAAABcAAEAtQEAAJUBAQC7qwAAIQcBALWrAAAPBwEAtQAAABEDAQC1HAAAJQYBAK8fAAD0AAIArwEAAI8BAQD///////8AAK+rAAD9BgEAaSwAAKwKAQCvHAAAEwYBAK8MAQBFDwEAaR8AADgJAQB+BQEAdg4BACDpAQBxEAEA////////AAClHwAA6gACAP///////wAASAIAAFACAQClqwAA3wYBAOIDAABfAwEApRwAAPUFAQClDAEAJw8BAP///////wAAOf8AAGUNAQCjHwAA4AACAP///////wAA////////AACjqwAA2QYBAKEfAADWAAIAoxwAAO8FAQCjDAEAIQ8BAKGrAADTBgEA////////AAChHAAA6QUBAKEMAQAbDwEAIAUAACwFAQCHHwAApAACAIcBAABrAQEA////////AACHqwAAhQYBAJEFAQCsDgEAhxwAABoEAQCHDAEAzQ4BAP///////wAA////////AAByLAAAsgoBAHIEAAAzBAEAch4AAPcHAQBNHwAAJgkBAHIBAABQAQEAuRAAAKILAQByqwAARgYBAE0AAAAiAAEAuRgBAJwPAQBwLAAAYgIBAHAEAAAwBAEAcB4AAPQHAQD///////8AAHABAABNAQEA////////AABwqwAAQAYBAG4sAACbAgEAbgQAAC0EAQBuHgAA8QcBAG4fAABHCQEAbgEAAEoBAQBupwAArgwBAE1uAQDYDwEAxRAAAMYLAQAe6QEAaxABAEUBAAAOAQEAuxAAAKgLAQC1EAAAlgsBAEUAAAAMAAEAuxgBAKIPAQC1GAEAkA8BAO4EAADhBAEA7h4AAKIIAQCvEAAAhAsBAO4BAADgAQEA////////AACvGAEAfg8BAGwEAAAqBAEAbB4AAO4HAQBsHwAAQQkBAGwBAABHAQEAbKcAAKsMAQBpIQAAqgkBAEVuAQDADwEApRAAAGYLAQD///////8AAB4FAAApBQEApRgBAGAPAQASAgAAEQIBAP///////wAA8AMAAAoDAQD///////8AAGymAAASDAEAoxAAAGALAQAQAgAADgIBANgDAABQAwEAoxgBAFoPAQChEAAAWgsBAP///////wAA////////AAChGAEAVA8BAP///////wAA////////AADWAwAAHgMBAGoEAAAnBAEAah4AAOsHAQBqHwAAOwkBAGoBAABEAQEAaqcAAKgMAQBoBAAAJAQBAGgeAADoBwEAaB8AADUJAQBoAQAAQQEBAGinAAClDAEAfAUBAHAOAQD///////8AAP///////wAARh4AALQHAQD///////8AAGqmAAAPDAEARqcAAHIMAQBIBQAAiQUBAEYAAAAPAAEA////////AABopgAADAwBAGQsAACkAgEAZAQAAB4EAQBkHgAA4gcBAP///////wAAZAEAADsBAQBkpwAAnwwBAEamAADYCwEA3iwAAEULAQDeBAAAyQQBAN4eAACKCAEAbiEAALkJAQDeAQAAyAEBAEZuAQDDDwEA////////AADeAAAApQABADAeAACTBwEAZKYAAAYMAQAwAQAABQECAFYFAACzBQEAYiwAAJICAQBiBAAAGgQBAGIeAADfBwEA////////AABiAQAAOAEBAGKnAACcDAEA////////AAD///////8AAP///////wAApQMAAC0DAQD///////8AAGwhAACzCQEARB4AALEHAQD///////8AAP///////wAARKcAAG8MAQBipgAAAwwBAEQAAAAJAAEAowMAACYDAQB5AQAAWQEBAHmnAACxDAEAeasAAFsGAQChAwAAIgMBAGAsAACgCgEAYAQAABcEAQBgHgAA2wcBAESmAADVCwEAYAEAADUBAQBgpwAAmQwBAP///////wAA////////AAAS6QEARxABAERuAQC9DwEAMh4AAJYHAQD///////8AADIBAADzAAEAMqcAAFQMAQAQ6QEAQRABAGohAACtCQEAYKYAAAAMAQBUBQAArQUBAP///////wAAcgMAAM4CAQBoIQAApwkBAM0EAQA6DgEA////////AADNBAAArgQBADkFAABcBQEA////////AADNAQAArQEBAP///////wAAcAMAAMsCAQDNAAAAdQABABIFAAAXBQEAzAQBADcOAQDMLAAAKgsBAM8EAQBADgEAzB4AAG8IAQDMHwAARwACABAFAAAUBQEAZCEAAJsJAQDPAQAAsAEBAMwAAAByAAEARQMAAAUDAQDPAAAAewABAD8FAABuBQEAywQBADQOAQDKJAAA/gkBAMsEAACrBAEAUgUAAKcFAQDLHwAAXAkBAMsBAACpAQEA7gMAAHEDAQDDBAEAHA4BAMsAAABvAAEAwwQAAJ8EAQDJBAEALg4BAMMfAABHAAIAyQQAAKgEAQBiIQAAlQkBAMkfAABWCQEAwwAAAFYAAQDJpwAACw0BAL8EAQAQDgEAyQAAAGkAAQBQBQAAoQUBAFUAAAA7AAEAvQQBAAoOAQB2BAAAOQQBAHYeAAD9BwEAv6sAAC0HAQB2AQAAVgEBAL8cAAA9BgEAdqsAAFIGAQC9qwAAJwcBAP///////wAAvRwAADcGAQD///////8AAMgkAAD4CQEA////////AAC5JAAAywkBAFVuAQDwDwEAYCEAAI8JAQCfHwAAzAACAJ8BAAChAgEAwQQBABYOAQCfqwAAzQYBAMEEAACcBAEAnxwAAOMFAQCfDAEAFQ8BADIhAACMCQEAxiQAAPIJAQBFAgAAvwIBAMEAAABQAAEAnR8AAMIAAgCdAQAAngIBAP///////wAAnasAAMcGAQDFJAAA7wkBAJ0cAADdBQEAnQwBAA8PAQC7JAAA0QkBAM0QAADMCwEAmx4AANsHAQCbHwAAuAACADD/AABKDQEA////////AACbqwAAwQYBAEMBAAALAQEAmxwAANcFAQCbDAEACQ8BAEMAAAAGAAEAmR4AACoAAgCZHwAArgACAN4DAABZAwEA////////AACZqwAAuwYBAJUfAADCAAIAmRwAANEFAQCZDAEAAw8B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ANEAAACBAAEA////////AAD0AwAAAAMBABUEAQCqDQEAFSwAAE8KAQAVBAAAkQMBABMEAQCkDQEAEywAAEkKAQATBAAAigMBAOwDAABuAwEAIf8AAB0NAQAPBAEAmA0BAA8sAAA9CgEADwQAABQEAQD///////8AAA8fAADSCAEA////////AADBJAAA4wkBAFUFAACwBQEA6gMAAGsDAQD///////8AAA0EAQCSDQEADSwAADcKAQANBAAADgQBAHYFAQBhDgEADR8AAMwIAQD///////8AAOgDAABoAwEA////////AAD///////8AADb/AABcDQEACwQBAIwNAQALLAAAMQoBAAsEAAAIBAEA////////AAALHwAAxggBAP///////wAA////////AADmAwAAZQMBAAkEAQCGDQEACSwAACsKAQAJBAAAAgQBAOQDAABiAwEACR8AAMAIAQAFBAEAeg0BAAUsAAAfCgEABQQAAPYDAQADBAEAdA0BAAMsAAAZCgEAAwQAAPADAQD///////8AANwDAABWAwEA////////AAArIQAAXAABAAEEAQBuDQEAASwAABMKAQABBAAA6gMBAPwEAAD2BAEA/B4AALcIAQD8HwAAYAACAPwBAADwAQEA////////AAD///////8AAEMFAAB6BQEA+AQAAPAEAQD4HgAAsQgBAPgfAABlCQEA+AEAAOoBAQAnBAEA4A0BACcsAACFCgEAJwQAAMsDAQCVBQEAtQ4BAPYEAADtBAEA9h4AAK4IAQD2HwAAXAACAPYBAAB0AQEAegQAAD8EAQB6HgAAAwgBAEsfAAAgCQEA////////AAA+AgAApgoBAHqrAABeBgEASwAAABsAAQAfBAEAyA0BAB8sAABtCgEAHwQAALADAQCDBQEAhQ4BAP///////wAAOP8AAGINAQD///////8AADoFAABfBQEALywAAJ0KAQAvBAAA5AMBAP///////wAALx8AAPwIAQBJBQAAjAUBAP///////wAAS24BANIPAQA0/wAAVg0BAC0sAACXCgEALQQAAN4DAQD///////8AAC0fAAD2CAEAgQUBAH8OAQB/BQEAeQ4BACv/AAA7DQEAKSwAAIsKAQApBAAA0QMBAP///////wAAKR8AAOoIAQAlBAEA2g0BACUsAAB/CgEAJQQAAMUDAQAjBAEA1A0BACMsAAB5CgEAIwQAAL8DAQARBAEAng0BABEsAABDCgEAEQQAAIMDAQAHBAEAgA0BAAcsAAAlCgEABwQAAPwDAQD///////8AAP///////wAAziQAAAoKAQD///////8AAEECAABKAgEA////////AAD///////8AAPwTAAA8BwEA////////AABCBQAAdwUBAP///////wAA////////AAD///////8AAP///////wAA+BMAADAHAQD///////8AAP///////wAA0QMAAAADAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAh6QEAdBABAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAD4FAABrBQEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAn/wAALw0BAP///////wAA////////AAA2BQAAUwUBAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAUwUAAKoFAQD///////8AAP///////wAA////////AABABQAAcQUBAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAC//AABHDQEA////////AAD///////8AAP///////wAAeAUBAGcOAQD///////8AABfpAQBWEAEA////////AAAt/wAAQQ0BAP///////wAAdAUBAFsOAQD///////8AAP///////wAAQQUAAHQFAQD///////8AACn/AAA1DQEA////////AAD///////8AAP///////wAA////////AAAl/wAAKQ0BAP///////wAA////////AAAj/wAAIw0BAB3pAQBoEAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAFEFAACkBQEA////////AAD///////8AAP///////wAA////////AAD///////8AADgFAABZBQEA////////AAD///////8AAP///////wAAG+kBAGIQAQD///////8AAP///////wAA////////AAD///////8AAP///////wAANAUAAE0FAQAZ6QEAXBABAP///////wAA////////AAD///////8AAE8FAACeBQEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAFekBAFAQAQD///////8AAP///////wAAE+kBAEoQAQD///////8AAP///////wAA////////AAD///////8AAA/pAQA+EAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAF/sAAHUAAgD///////8AAP///////wAADekBADgQAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAL6QEAMhABAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAACekBACwQAQD///////8AAP///////wAA////////AAD///////8AAAXpAQAgEAEA////////AAD///////8AAAPpAQAaEAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAAekBABQQAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAV+wAAcQACAP///////wAA////////AAAT+wAAeQACAP///////wAA////////AAD///////8AAB/pAQBuEAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAB6BQEAbQ4BAP///////wAASwUAAJIFAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AABHpAQBEEAEABfsAAB0AAgD///////8AAAfpAQAmEAEAA/sAAAAAAwD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAB+wAACAACAP//////////cgdLB9IAqwBuDYcHzwznAG4BIwX8BEgMxgxzDjgFHQL2ATAIbwSDAS8CvwLrCuQMcA7rBycERAHACBsA8wioDEwGMQBiBZUNwwiUA3cFnwCSAiIKDwxJBp4C4gceBDsB0g8MAKMKnwznD9UIUAVGBlMJQA6uCO0EgwKVCQYMEQleDtsHFwQ1AcAPAACgCpkMRAlSDkQF+A2KCMkEyAEFBH0CRQsADI4K/g2NCMwEywG0D1AASAtXBzgJtwBxDagLWgtxAcMLXQcIBb0A/QYRBF0L+QMCApoKDgWCCsICAweGCWgNCAIKDpMI0gTRAWsCXACHC6sLBA6QCM8EzgGxC1YASwuFDnsHawHbALkC8g2HCMYExQFcDSwFQgsPB4kJaQezAskACQB9DV4GCQe9CE0FGgXmDYEIwAQrBuoIFAI8CxQN9wZgBHcBFQ+9D9wK1QxVDkEJ5Ah+CL0EGw/jBacFOQsRDTkMegHrBqoCswXpBVgOcgsWDpkI2ATXAbUOaQC/DX4LwgMLAXcN5QZMClkDEA6WCNUE1AEnD2MA7wkLBFwDlAaaBpQKIQ8bB/UF9QmfC64PVwtcASMJdwLvBbQMDw+6C5UFFQcmDewNhAjDBAMA+QjdBT8LjgZHBZYLYgMFEAAIPAQDD3EJRwABCl8DrQWzCYwFtw+lANEF+wk7CfEGdQi0BFYD/Q6ZCzALDg38D4EL6QmoBGgJfQHLBb8JCw2qCWQOYwQzD6gPUAPfCtgMWw7IAtMGgAndCQEGvA2uB78DLQ88DL4GSQpsDE0DnA/fBxoEOAH7BQYA1wmcDEMO0gtKBREDGAOTAHsLaAOAApYPAwwgCScIVwQNCgkPug/TCswMIw0+CWUD9wczBFAB1wU0ALIKBwowDAoDegX0BzAETQF1Cy4A1wJvCz0O//90BesOOgaQAOoPFw2bAnkOVglTA9YOuQVvCJgJ5A///+MJKgtQCTQOqAjnBOMBkgmHAFQLUgaiDygOogjhBOABag57ACIOnwjeBN0BxwZ1ALoI+QTzAcUJqAA+AzkHHA6cCNsE2gFABm8A//+EDy0H6AckBEEBLgZ3ECcHpQxvD5UBXAXlByEEPgGmDhIAjAKiDAwMIQdWBQ0ONw4XEMwPJhBgAIoACQx6A8YH8AMgAYIGxg95CoQM7QhKCToOqwjqBOcBKAaNAGUC3w7rCxIHPAfOAv/////MB/wDJgFNECwJhQqKDMsCaw3//0UPHwZTDT8HoAZuAj8P8QuuBK0BEwb9BzkEVgHnCEEADQYyCUcDOQ+GBT0GwwfqAx0BXw13A3MKgQwHBv//sAH//8oG9g9xA3gPXwJiCegL//9uA70LpAngDcAH5AMaASoPKQltCn4MKRD//2sD0AZ9CU0N+AUiBlkC///lC9oNvQfeAxcBuA76AmcKewzUDboH2AMUAf//JQZhCngMVgJHDeILtwtMDrQI8wTtAVMCnADeCwQKtg2rB7YDXwElAOIOQwppDEENawWbBR4Dewi6BP//NRA7DTYLzwuMDZYHigPzANsPCxAZClQM6A4aCVEP+gc2BFMBuQk7AD4CHQ22Bd8GgAVKA3gItwT//9ECoQIzCwgJ//9RCJAEmAGsDvAPDAv2DK8OXAl7D/EHLQRKAZ4JKAAvEK4M///ZBm4FwgndDYgG4QMdEJgCiwZqCu4HKgRHAYEPIgDeD6sMdgb//2gFzwcCBCkB//9mBIsKjQwSDOIK2wxhDv/////YD/cOcQKMCfQLxQJEDckH9gMjAf//xQV/CocMhAf//+QAfQP/////RQxpBGUNNQXuC+UK3gxnDv//LALxDs4NtwfRAy8J/////1sKdQz//78F/AhZDdEJyA20B8sDUAL//9sLVQpyDPMDegKQD3QQfArCDbEHxQNNArEP2AtPCm8MNQloAjUNuQ0AA7oDCAHLCQUDRgrVCy4OpQjkBP//Lw2BAOwCig9KAiYJVg2PAZgNnAeXA/kAlw4pDSUKWgwdCUgH//+SDZkHkQP2ADMHIA0fClcMeg2NB8kL7QBwBncJgQdODOEAFAk+Bf//QgwGCEIEMgU1An4H///eAA4JKQKYBT8M+w3//y8F7w2kAk0AwgHpDSYC9gi/AeMNCBBpCLwBpQF0CWAIJAtiAfAItgkbCwUNRQiEBKEFAAeDCQAL9AaaDqcC/wPuBksPXQiICugGuwb//xgLAg2pBv//GQYREFoImQSeAXMGegkVC/8MpQtXCJYEmwFUCJMEEgv8DKMGDwv5DLIO//9iDeEITgiNBP//zAudBgkL8wypDsYLPwh+BIwBlwbtA/oKkQaODnYKWQHAC0oAGA+xDP//DA+PBYUGYgIGDyMQ///mBQAP0w7aBWcGSQ7BDtQF/w///5kAzgVrCdoCSwiKBFANrQn//wYL8AyjDrANqAewA7sO2wj//z0KZgznA///8gn//3AK5gmTCzoDRALgCX8GJgP//9oJXAL//6UP///pAs8Inw8zCHIEhgGZD2wP7grnDHYOWg8iAy0IbASAAUoN///oCuEMbQ7JCF0EGwMDCD8E2QrSDE8OTwZUDxUD//+SBQ4DDwiRDmUBNgxDBrsKvQz//24QqgX9Ao0LAhC5Af//rQJuCRgMQgfgAmoGsAk0BtIHCAQsATEORBCRCpAMsw2EALMDBQFpC///QAriBnQCJQ73C4YNkweDA3gAUQtHAhMK//+ADZAH///wADYHYwv2AlEMOwIXCUEFdA2KB/UN6gD//zgCKgdLDP//Agk7Bf//Rg6xCPAE6gEyApYAHw7//xMOBw62AXIATgtmAFkAAQ6zAfoG/////1MAcgixBKsEqQFsCC0LZgj6Dv//Jwv//yELJAfcBhgHDAebDcgFmgPWBtQCBgcoCk4P///jAs0GxAYgEKUEwQb//7UGHAYIDacNQg+mA/8A/////zQK//+iBKEBYwgQBgwISATUCR4LQQK4CroMuAaLDqQF//90AxIPkw///x8ArwoVDEgIhwRlBbIG4AUDC68GnQ6VAmQGPA/0DjAPJA8xBv//1Q/uDnEQHg8KBsIF/gXyBeUO3A55BrwF2Q7sBc0O//9CCIEE/////+wJ/QpQEJQO////////iQGqDaUHqQOrD38OShA3CmMM0A7OCQoK/gn//zIQbQbICUQD+AkaEEEDjQ80A8oOWAb//8cOhw8bCEsEFBD//ysOxwp+D3UP//9+AHIP//9mDzkIeAS8AjcDJAz0Cu0Mgg42CHUECQhFBP//8QrqDHwOtwwwAzAHngUtA2kPEgjdAmgB//9bBr4KwAz/////sAX//w4QVQZjDz4AtQpgDxsM8AKDBbwJDwCmCrcI9gTwAVMFogD//9gHFAQyAYYC8w+dCpYMZgdfCcYA///DD///oQn//0cJFwX9C9UHDgQvAeYCEQKXCpMMpA2iB6MD/////0gPMQpgDJ8E3gj6C54NnwedA2MHFgbDACsKXQxUBxkOtABRBxQFsQBsAP////8FBQ4CTgcCBa4ArAb/ATwIewT8Af///wT3CtgIiA5oEP//+QHSCB4H///MCCoIWgR0ASQIVATWCv//xgjQCskM//9hBv//////////FQgzDDcGRAAtDMEKwwz//4kFOADLDZALzgMRAX0FsAJYCh4M//8rAP//jw35D40DcQX//2UJHArtD///xA6nCVkJ//8YAKwK//+bCeEPXwX/////TQmKCzYPjwIyDY8JbAsLCf//ZgucBM8PBAYVAKkK/////2ALWQXFDf//yAMOASoDiQJSCmsQrQ3//6wDAgH//8kPOgr//6YGoQ0+EKAD/AD//10PLgoYCIkNOBCGA4MNxAqAAxYK//94BxAK2AAsDSwQ//+2Av//IQwpBXUH1w3VANsD//8jApIBZAr//yYFBQmgDm8H/wjPACACbAdgB8wAwABaByAFugAhCFEEHQURBRoCzQoLBXwGFwILAh4ITgQFAr4OPg3KCtENKgzUA///UxD//14K//////////8nDP////////////////////////////9fEEUH/////////////////////////////zgN////////////////////////tAv///////9XD/////////////+uC/////////////////////////////+iC////////5wLhAv/////eAv////////////////////////////////zAv//////////////////YhD/////////////Gg3//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1wQ//////////////////////////9WEP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////0cQ/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////2UQ/////////////////////1kQ//////////////////9BEP////87EAAAAAAAAGUA/QBMAB0AGADvAGAARwBcAEMABAA+AAgAOgDqAG0ApABYAFQAUADWAAAANgAFATIAaQB5AH0AAQEqACYA+QAuAHUADABxAPQA5QDgANsA0QAQAMwAxwDCAL0AuACzAK4AqQAUACIAnwCaAJUAkACLAIYAgQBB8IkRC+EIPgAvAB8AOQApABkANAAkABQAQwAPAAoABQAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAMAAAADAAAAAwAAAAMA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AAAABAUAAAcFAAABAAAABgUAAAkFAAABAAAACAUAAAsFAAABAAAACgUAAA0FAAABAAAADAUAAA8FAAABAAAADgUAABEFAAABAAAAEAUAABMFAAABAAAAEgUAABUFAAABAAAAFAUAABcFAAABAAAAFgUAABkFAAABAAAAGAUAABsFAAABAAAAGgUAAB0FAAABAAAAHAUAAB8FAAABAAAAHgUAACEFAAABAAAAIAUAACMFAAABAAAAIgUAACUFAAABAAAAJAUAACcFAAABAAAAJgUAACkFAAABAAAAKAUAACsFAAABAAAAKgUAAC0FAAABAAAALAUAAC8FAAABAAAALgUAAGEFAAABAAAAMQUAAGIFAAABAAAAMgUAAGMFAAABAAAAMwUAAGQFAAABAAAANAUAAGUFAAABAAAANQUAAGYFAAABAAAANgUAAGcFAAABAAAANwUAAGgFAAABAAAAOAUAAGkFAAABAAAAOQUAAGoFAAABAAAAOgUAAGsFAAABAAAAOwUAAGwFAAABAAAAPAUAAG0FAAABAAAAPQUAAG4FAAABAAAAPgUAAG8FAAABAAAAPwUAAHAFAAABAAAAQAUAAHEFAAABAAAAQQUAAHIFAAABAAAAQgUAAHMFAAABAAAAQwUAAHQFAAABAAAARAUAAHUFAAABAAAARQUAAHYFAAABAAAARgUAAHcFAAABAAAARwUAAHgFAAABAAAASAUAAHkFAAABAAAASQUAAHoFAAABAAAASgUAAHsFAAABAAAASwUAAHwFAAABAAAATAUAAH0FAAABAAAATQUAAH4FAAABAAAATgUAAH8FAAABAAAATwUAAIAFAAABAAAAUAUAAIEFAAABAAAAUQUAAIIFAAABAAAAUgUAAIMFAAABAAAAUwUAAIQFAAABAAAAVAUAAIUFAAABAAAAVQUAAIYFAAABAAAAVgUAANAQAAABAAAAkBwAANEQAAABAAAAkRwAANIQAAABAAAAkhwAANMQAAABAAAAkxwAANQQAAABAAAAlBwAANUQAAABAAAAlRwAANYQAAABAAAAlhwAANcQAAABAAAAlxwAANgQAAABAAAAmBwAANkQAAABAAAAmRwAANoQAAABAAAAmhwAANsQAAABAAAAmxwAANwQAAABAAAAnBwAAN0QAAABAAAAnRwAAN4QAAABAAAAnhwAAN8QAAABAAAAnxwAAOAQAAABAAAAoBwAAOEQAAABAAAAoRwAAOIQAAABAAAAohwAAOMQAAABAAAAoxwAAOQQAAABAAAApBwAAOUQAAABAAAApRwAAOYQAAABAAAAphwAAOcQAAABAAAApxwAAOgQAAABAAAAqBwAAOkQAAABAAAAqRwAAOoQAAABAAAAqhwAAOsQAAABAAAAqxwAAOwQAAABAAAArBwAAO0QAAABAAAArRwAAO4QAAABAAAArhwAAO8QAAABAAAArxwAAPAQAAABAAAAsBwAAPEQAAABAAAAsRwAAPIQAAABAAAAshwAAPMQAAABAAAAsxwAAPQQAAABAAAAtBwAAPUQAAABAAAAtRwAAPYQAAABAAAAthwAAPcQAAABAAAAtxwAAPgQAAABAAAAuBwAAPkQAAABAAAAuRwAAPoQAAABAAAAuhwAAP0QAAABAAAAvRwAAP4QAAABAAAAvhwAAP8QAAABAAAAvxwAAKATAAABAAAAcKsAAKETAAABAAAAcasAAKITAAABAAAAcqsAAKMTAAABAAAAc6sAAKQTAAABAAAAdKsAAKUTAAABAAAAdasAAKYTAAABAAAAdqsAAKcTAAABAAAAd6sAAKgTAAABAAAAeKsAAKkTAAABAAAAeasAAKoTAAABAAAAeqsAAKsTAAABAAAAe6sAAKwTAAABAAAAfKsAAK0TAAABAAAAfasAAK4TAAABAAAAfqsAAK8TAAABAAAAf6sAALATAAABAAAAgKsAALETAAABAAAAgasAALITAAABAAAAgqsAALMTAAABAAAAg6sAALQTAAABAAAAhKsAALUTAAABAAAAhasAALYTAAABAAAAhqsAALcTAAABAAAAh6sAALgTAAABAAAAiKsAALkTAAABAAAAiasAALoTAAABAAAAiqsAALsTAAABAAAAi6sAALwTAAABAAAAjKsAAL0TAAABAAAAjasAAL4TAAABAAAAjqsAAL8TAAABAAAAj6sAAMATAAABAAAAkKsAAMETAAABAAAAkasAAMITAAABAAAAkqsAAMMTAAABAAAAk6sAAMQTAAABAAAAlKsAAMUTAAABAAAAlasAAMYTAAABAAAAlqsAAMcTAAABAAAAl6sAAMgTAAABAAAAmKsAAMkTAAABAAAAmasAAMoTAAABAAAAmqsAAMsTAAABAAAAm6sAAMwTAAABAAAAnKsAAM0TAAABAAAAnasAAM4TAAABAAAAnqsAAM8TAAABAAAAn6sAANATAAABAAAAoKsAANETAAABAAAAoasAANITAAABAAAAoqsAANMTAAABAAAAo6sAANQTAAABAAAApKsAANUTAAABAAAApasAANYTAAABAAAApqsAANcTAAABAAAAp6sAANgTAAABAAAAqKsAANkTAAABAAAAqasAANoTAAABAAAAqqsAANsTAAABAAAAq6sAANwTAAABAAAArKsAAN0TAAABAAAArasAAN4TAAABAAAArqsAAN8TAAABAAAAr6sAAOATAAABAAAAsKsAAOETAAABAAAAsasAAOITAAABAAAAsqsAAOMTAAABAAAAs6sAAOQTAAABAAAAtKsAAOUTAAABAAAAtasAAOYTAAABAAAAtqsAAOcTAAABAAAAt6sAAOgTAAABAAAAuKsAAOkTAAABAAAAuasAAOoTAAABAAAAuqsAAOsTAAABAAAAu6sAAOwTAAABAAAAvKsAAO0TAAABAAAAvasAAO4TAAABAAAAvqsAAO8TAAABAAAAv6sAAPATAAABAAAA+BMAAPETAAABAAAA+RMAAPITAAABAAAA+hMAAPMTAAABAAAA+xMAAPQTAAABAAAA/BMAAPUTAAABAAAA/RMAAHkdAAABAAAAfacAAH0dAAABAAAAYywAAI4dAAABAAAAxqcAAAEeAAABAAAAAB4AAAMeAAABAAAAAh4AAAUeAAABAAAABB4AAAceAAABAAAABh4AAAkeAAABAAAACB4AAAseAAABAAAACh4AAA0eAAABAAAADB4AAA8eAAABAAAADh4AABEeAAABAAAAEB4AABMeAAABAAAAEh4AABUeAAABAAAAFB4AABceAAABAAAAFh4AABkeAAABAAAAGB4AABseAAABAAAAGh4AAB0eAAABAAAAHB4AAB8eAAABAAAAHh4AACEeAAABAAAAIB4AACMeAAABAAAAIh4AACUeAAABAAAAJB4AACceAAABAAAAJh4AACkeAAABAAAAKB4AACseAAABAAAAKh4AAC0eAAABAAAALB4AAC8eAAABAAAALh4AADEeAAABAAAAMB4AADMeAAABAAAAMh4AADUeAAABAAAANB4AADceAAABAAAANh4AADkeAAABAAAAOB4AADseAAABAAAAOh4AAD0eAAABAAAAPB4AAD8eAAABAAAAPh4AAEEeAAABAAAAQB4AAEMeAAABAAAAQh4AAEUeAAABAAAARB4AAEceAAABAAAARh4AAEkeAAABAAAASB4AAEseAAABAAAASh4AAE0eAAABAAAATB4AAE8eAAABAAAATh4AAFEeAAABAAAAUB4AAFMeAAABAAAAUh4AAFUeAAABAAAAVB4AAFceAAABAAAAVh4AAFkeAAABAAAAWB4AAFseAAABAAAAWh4AAF0eAAABAAAAXB4AAF8eAAABAAAAXh4AAGEeAAACAAAAYB4AAJseAABjHgAAAQAAAGIeAABlHgAAAQAAAGQeAABnHgAAAQAAAGYeAABpHgAAAQAAAGgeAABrHgAAAQAAAGoeAABtHgAAAQAAAGweAABvHgAAAQAAAG4eAABxHgAAAQAAAHAeAABzHgAAAQAAAHIeAAB1HgAAAQAAAHQeAAB3HgAAAQAAAHYeAAB5HgAAAQAAAHgeAAB7HgAAAQAAAHoeAAB9HgAAAQAAAHweAAB/HgAAAQAAAH4eAACBHgAAAQAAAIAeAACDHgAAAQAAAIIeAACFHgAAAQAAAIQeAACHHgAAAQAAAIYeAACJHgAAAQAAAIgeAACLHgAAAQAAAIoeAACNHgAAAQAAAIweAACPHgAAAQAAAI4eAACRHgAAAQAAAJAeAACTHgAAAQAAAJIeAACVHgAAAQAAAJQeAAChHgAAAQAAAKAeAACjHgAAAQAAAKIeAAClHgAAAQAAAKQeAACnHgAAAQAAAKYeAACpHgAAAQAAAKgeAACrHgAAAQAAAKoeAACtHgAAAQAAAKweAACvHgAAAQAAAK4eAACxHgAAAQAAALAeAACzHgAAAQAAALIeAAC1HgAAAQAAALQeAAC3HgAAAQAAALYeAAC5HgAAAQAAALgeAAC7HgAAAQAAALoeAAC9HgAAAQAAALweAAC/HgAAAQAAAL4eAADBHgAAAQAAAMAeAADDHgAAAQAAAMIeAADFHgAAAQAAAMQeAADHHgAAAQAAAMYeAADJHgAAAQAAAMgeAADLHgAAAQAAAMoeAADNHgAAAQAAAMweAADPHgAAAQAAAM4eAADRHgAAAQAAANAeAADTHgAAAQAAANIeAADVHgAAAQAAANQeAADXHgAAAQAAANYeAADZHgAAAQAAANgeAADbHgAAAQAAANoeAADdHgAAAQAAANweAADfHgAAAQAAAN4eAADhHgAAAQAAAOAeAADjHgAAAQAAAOIeAADlHgAAAQAAAOQeAADnHgAAAQAAAOYeAADpHgAAAQAAAOgeAADrHgAAAQAAAOoeAADtHgAAAQAAAOweAADvHgAAAQAAAO4eAADxHgAAAQAAAPAeAADzHgAAAQAAAPIeAAD1HgAAAQAAAPQeAAD3HgAAAQAAAPYeAAD5HgAAAQAAAPgeAAD7HgAAAQAAAPoeAAD9HgAAAQAAAPweAAD/HgAAAQAAAP4eAAAAHwAAAQAAAAgfAAABHwAAAQAAAAkfAAACHwAAAQAAAAofAAADHwAAAQAAAAsfAAAEHwAAAQAAAAwfAAAFHwAAAQAAAA0fAAAGHwAAAQAAAA4fAAAHHwAAAQAAAA8fAAAQHwAAAQAAABgfAAARHwAAAQAAABkfAAASHwAAAQAAABofAAATHwAAAQAAABsfAAAUHwAAAQAAABwfAAAVHwAAAQAAAB0fAAAgHwAAAQAAACgfAAAhHwAAAQAAACkfAAAiHwAAAQAAACofAAAjHwAAAQAAACsfAAAkHwAAAQAAACwfAAAlHwAAAQAAAC0fAAAmHwAAAQAAAC4fAAAnHwAAAQAAAC8fAAAwHwAAAQAAADgfAAAxHwAAAQAAADkfAAAyHwAAAQAAADofAAAzHwAAAQAAADsfAAA0HwAAAQAAADwfAAA1HwAAAQAAAD0fAAA2HwAAAQAAAD4fAAA3HwAAAQAAAD8fAABAHwAAAQAAAEgfAABBHwAAAQAAAEkfAABCHwAAAQAAAEofAABDHwAAAQAAAEsfAABEHwAAAQAAAEwfAABFHwAAAQAAAE0fAABRHwAAAQAAAFkfAABTHwAAAQAAAFsfAABVHwAAAQAAAF0fAABXHwAAAQAAAF8fAABgHwAAAQAAAGgfAABhHwAAAQAAAGkfAABiHwAAAQAAAGofAABjHwAAAQAAAGsfAABkHwAAAQAAAGwfAABlHwAAAQAAAG0fAABmHwAAAQAAAG4fAABnHwAAAQAAAG8fAABwHwAAAQAAALofAABxHwAAAQAAALsfAAByHwAAAQAAAMgfAABzHwAAAQAAAMkfAAB0HwAAAQAAAMofAAB1HwAAAQAAAMsfAAB2HwAAAQAAANofAAB3HwAAAQAAANsfAAB4HwAAAQAAAPgfAAB5HwAAAQAAAPkfAAB6HwAAAQAAAOofAAB7HwAAAQAAAOsfAAB8HwAAAQAAAPofAAB9HwAAAQAAAPsfAACwHwAAAQAAALgfAACxHwAAAQAAALkfAADQHwAAAQAAANgfAADRHwAAAQAAANkfAADgHwAAAQAAAOgfAADhHwAAAQAAAOkfAADlHwAAAQAAAOwfAABOIQAAAQAAADIhAABwIQAAAQAAAGAhAABxIQAAAQAAAGEhAAByIQAAAQAAAGIhAABzIQAAAQAAAGMhAAB0IQAAAQAAAGQhAAB1IQAAAQAAAGUhAAB2IQAAAQAAAGYhAAB3IQAAAQAAAGchAAB4IQAAAQAAAGghAAB5IQAAAQAAAGkhAAB6IQAAAQAAAGohAAB7IQAAAQAAAGshAAB8IQAAAQAAAGwhAAB9IQAAAQAAAG0hAAB+IQAAAQAAAG4hAAB/IQAAAQAAAG8hAACEIQAAAQAAAIMhAADQJAAAAQAAALYkAADRJAAAAQAAALckAADSJAAAAQAAALgkAADTJAAAAQAAALkkAADUJAAAAQAAALokAADVJAAAAQAAALskAADWJAAAAQAAALwkAADXJAAAAQAAAL0kAADYJAAAAQAAAL4kAADZJAAAAQAAAL8kAADaJAAAAQAAAMAkAADbJAAAAQAAAMEkAADcJAAAAQAAAMIkAADdJAAAAQAAAMMkAADeJAAAAQAAAMQkAADfJAAAAQAAAMUkAADgJAAAAQAAAMYkAADhJAAAAQAAAMckAADiJAAAAQAAAMgkAADjJAAAAQAAAMkkAADkJAAAAQAAAMokAADlJAAAAQAAAMskAADmJAAAAQAAAMwkAADnJAAAAQAAAM0kAADoJAAAAQAAAM4kAADpJAAAAQAAAM8kAAAwLAAAAQAAAAAsAAAxLAAAAQAAAAEsAAAyLAAAAQAAAAIsAAAzLAAAAQAAAAMsAAA0LAAAAQAAAAQsAAA1LAAAAQAAAAUsAAA2LAAAAQAAAAYsAAA3LAAAAQAAAAcsAAA4LAAAAQAAAAgsAAA5LAAAAQAAAAksAAA6LAAAAQAAAAosAAA7LAAAAQAAAAssAAA8LAAAAQAAAAwsAAA9LAAAAQAAAA0sAAA+LAAAAQAAAA4sAAA/LAAAAQAAAA8sAABALAAAAQAAABAsAABBLAAAAQAAABEsAABCLAAAAQAAABIsAABDLAAAAQAAABMsAABELAAAAQAAABQsAABFLAAAAQAAABUsAABGLAAAAQAAABYsAABHLAAAAQAAABcsAABILAAAAQAAABgsAABJLAAAAQAAABksAABKLAAAAQAAABosAABLLAAAAQAAABssAABMLAAAAQAAABwsAABNLAAAAQAAAB0sAABOLAAAAQAAAB4sAABPLAAAAQAAAB8sAABQLAAAAQAAACAsAABRLAAAAQAAACEsAABSLAAAAQAAACIsAABTLAAAAQAAACMsAABULAAAAQAAACQsAABVLAAAAQAAACUsAABWLAAAAQAAACYsAABXLAAAAQAAACcsAABYLAAAAQAAACgsAABZLAAAAQAAACksAABaLAAAAQAAACosAABbLAAAAQAAACssAABcLAAAAQAAACwsAABdLAAAAQAAAC0sAABeLAAAAQAAAC4sAABfLAAAAQAAAC8sAABhLAAAAQAAAGAsAABlLAAAAQAAADoCAABmLAAAAQAAAD4CAABoLAAAAQAAAGcsAABqLAAAAQAAAGksAABsLAAAAQAAAGssAABzLAAAAQAAAHIsAAB2LAAAAQAAAHUsAACBLAAAAQAAAIAsAACDLAAAAQAAAIIsAACFLAAAAQAAAIQsAACHLAAAAQAAAIYsAACJLAAAAQAAAIgsAACLLAAAAQAAAIosAACNLAAAAQAAAIwsAACPLAAAAQAAAI4sAACRLAAAAQAAAJAsAACTLAAAAQAAAJIsAACVLAAAAQAAAJQsAACXLAAAAQAAAJYsAACZLAAAAQAAAJgsAACbLAAAAQAAAJosAACdLAAAAQAAAJwsAACfLAAAAQAAAJ4sAAChLAAAAQAAAKAsAACjLAAAAQAAAKIsAAClLAAAAQAAAKQsAACnLAAAAQAAAKYsAACpLAAAAQAAAKgsAACrLAAAAQAAAKosAACtLAAAAQAAAKwsAACvLAAAAQAAAK4sAACxLAAAAQAAALAsAACzLAAAAQAAALIsAAC1LAAAAQAAALQsAAC3LAAAAQAAALYsAAC5LAAAAQAAALgsAAC7LAAAAQAAALosAAC9LAAAAQAAALwsAAC/LAAAAQAAAL4sAADBLAAAAQAAAMAsAADDLAAAAQAAAMIsAADFLAAAAQAAAMQsAADHLAAAAQAAAMYsAADJLAAAAQAAAMgsAADLLAAAAQAAAMosAADN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AgAwJgIAgCYCAOAmAgD0JgIAACcCALA+AgAAUwIAoFMCAMBTAgCwVAIA0FQCAPBUAgAMVQIAIFUCAEBVAgCwVQIAcFYCAJBWAgDgVgIAAFcCADBXAgBQVwIAcFcCAMBrAgBAcAIAoHACAOBxAgAAcgIAMHICAFByAgCQcgIAsHICAECHAgBwiQIAIJkCAOC6AABgmQIAwJkCAPStAgAArgIAIK4CAHy3AgCItwIAoLcCAOC3AgAAuAIAILgCAEC4AgCAuAIA4LwCAHDCAgCcwgIAsMICANDCAgDwwgIADMMCACDDAgBAwwIA0M0CAPDNAgAwzgIAUM4CAIDOAgCgzgIA4NICAADTAgDgogAAINMCAFDTAgBw0wIAkNMCAADUAgBA1gIA4NYCAADXAgAk1wIAMNcCAEDXAgBg1wIAdNcCAIDXAgCQ1wIApNcCALDXAgC81wIAyNcCAODXAgBg2AIAgNgCAKDYAgDw3wIAUOACACDhAgBQ4QIAgOECAFDiAgCQ5gIAwOUAAMDmAgDs5gIAAOcCAPDnAgAc6AIAMOgCAHDoAgAQ6QIAgOsCANTrAgDg6wIAAOwCAGDsAgAw8gIAcPICAPD0AgAQ9QIAgPUCAJz1AgCw9QIA0PUCAPD1AgBQ/QIAcP0CAJD9AgBA/gIAvAADAMgAAwDgAAMAAAEDACABAwCQAQMAkAIDAKAEAwCACgMAhAsDAJALAwCkCwMAsAsDAMQLAwDQCwMAAAwDACAMAwBADAMAYAwDAJAMAwCwDAMA0AwDAHANAwCQDQMAwA0DADAOAwCMEQMAoBEDAMARAwAAEgMAIBIDADQSAwBAEgMAYBIDAOASAwAQ7AAApCgDALAoAwDgKAMAMCkDAFApAwCw6wAAcCkDAFBBAwDQVQMA8FUDABBWAwBUVgMAYFYDAGxWAwCAVgMAFDABALxWAwDIVgMA1FYDAOBWAwDsVgMA+FYDAARXAwAQVwMAHFcDAChXAwA0VwMAQFcDAExXAwBYVwMAZFcDAHBXAwB8VwMAiFcDAJRXAwCgVwMArFcDALhXAwDEVwMA0FcDANxXAwDoVwMA9FcDAABYAwAMWAMAGFgDACRYAwAwWAMAPFgDAEhYAwBUWAMAYFgDAGxYAwB4WAMAhFgDAJBYAwCcWAMAqFgDALRYAwDAWAMAzFgDANhYAwDkWAMA8FgDAPxYAwAIWQMAFFkDACBZAwAsWQMAOFkDAERZAwBQWQMAXFkDAGhZAwB0WQMAgFkDAIxZAwAw1wIAmFkDAKRZAwCwWQMAvFkDAMhZAwDUWQMA4FkDAOxZAwD4WQMABFoDABBaAwAcWgMAKFoDADRaAwBAWgMATFoDAFhaAwBkWgMAcFoDAHxaAwCIWgMAlFoDAKBaAwCsWgMAuFoDAMRaAwDQWgMA3FoDABxKAQDoWgMA9FoDAABbAwAMWwMAGFsDACRbAwAwWwMAPFsDAEhbAwBUWwMAYFsDAGxbAwB4WwMAhFsDAJBbAwCcWwMAqFsDALRbAwDAWwMAzFsDANhbAwDkWwMA8FsDAPxbAwAIXAMAFFwDACBcAwAsXAMAOFwDAERcAwBQXAMAXFwDAGhcAwB0XAMAgFwDAIxcAwCYXAMApFwDALBcAwC8XAMAyFwDANRcAwDgXAMA7FwDAPhcAwAEXQMAEF0DABxdAwAoXQMANF0DAEBdAwBMXQMAWF0DAGRdAwBwXQMAfF0DAIhdAwCUXQMAoF0DAKxdAwC4XQMAxF0DANBdAwDcXQMA6F0DAPRdAwAAXgMADF4DABheAwAkXgMAMF4DADxeAwBIXgMAVF4DAGBeAwBsXgMAeF4DAIReAwCQXgMAnF4DAKheAwC0XgMAwF4DAMxeAwDYXgMA5F4DAPTjAQDIAAMA8F4DAPxeAwAIXwMAFF8DACBfAwAsXwMAOF8DAERfAwBQXwMA7OYCAFxfAwBoXwMAdF8DAIBfAwAMwwIAjF8DAJhfAwCw1wIAdNcCAKRfAwCwXwMAvF8DAMhfAwDUXwMA4F8DAOxfAwD4XwMABGADABBgAwAcYAMAKGADADRgAwBAYAMATGADAFhgAwBkYAMAcGADAHxgAwCIYAMAvAADAJRgAwCgYAMArGADALhgAwDEYAMA0GADANxgAwDoYAMA9GADAABhAwAMYQMAGGEDACRhAwAwYQMAPGEDAEhhAwBUYQMAYGEDAGxhAwB4YQMAhGEDAJBhAwCcYQMAqGEDALRhAwDAYQMAzGEDANhhAwDkYQMA8GEDAPxhAwAIYgMAFGIDACBiAwAsYgMAOGIDAERiAwBQYgMAXGIDAGhiAwB0YgMAgGIDAIxiAwCYYgMApGIDALBiAwC8YgMAyGIDANRiAwDgYgMA7GIDAPhiAwAEYwMAEGMDABxjAwAoYwMANGMDAEBjAwBMYwMAWGMDAGRjAwBwYwMAfGMDAIhjAwCUYwMAoGMDAKxjAwC4YwMAxGMDANBjAwDcYwMA6GMDAPRjAwAAZAMADGQDABhkAwAkZAMAMGQDADxkAwBIZAMAVGQDAGBkAwBsZAMAeGQDAIRkAwCQZAMAnGQDAKhkAwC0ZAMAwGQDAMxkAwDYZAMA5GQDAPBkAwD8ZAMACGUDABRlAwAgZQMALGUDADhlAwBQZQMAFQAAAAsFAAABAAAAAQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAAAAAAIwAAAAUAQey9Egs9JAAAAEMFAAAEAAAAAQAAABYAAAAlAAAAJgAAACcAAAAoAAAAKQAAACoAAAArAAAALAAAAC0AAAAuAAAAIQBBtL4SCwUvAAAAHwBByL4SCwEFAEHUvhILATAAQey+EgsOMQAAADIAAABooQQAAAQAQYS/EgsBAQBBlL8SCwX/////CgBB2L8SCwPQx1Q="),t=>t.charCodeAt(0)),dq=fde,uq=async t=>WebAssembly.instantiate(dq,t).then(e=>e.instance.exports)});var pq={};x(pq,{default:()=>uq,getWasmInstance:()=>uq,wasmBinary:()=>dq});var mq=_(()=>{Mx();Mx()});var jq=Cn((l0,A0)=>{(function(t,e){typeof l0=="object"&&typeof A0<"u"?A0.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self,t.resolveURI=e())})(l0,function(){"use strict";let t=/^[\w+.-]+:\/\//,e=/^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/,n=/^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;function a(w){return t.test(w)}function r(w){return w.startsWith("//")}function i(w){return w.startsWith("/")}function o(w){return w.startsWith("file:")}function s(w){return/^[.?#]/.test(w)}function c(w){let b=e.exec(w);return d(b[1],b[2]||"",b[3],b[4]||"",b[5]||"/",b[6]||"",b[7]||"")}function A(w){let b=n.exec(w),y=b[2];return d("file:","",b[1]||"","",i(y)?y:"/"+y,b[3]||"",b[4]||"")}function d(w,b,y,k,E,Q,D){return{scheme:w,user:b,host:y,port:k,path:E,query:Q,hash:D,type:7}}function u(w){if(r(w)){let y=c("http:"+w);return y.scheme="",y.type=6,y}if(i(w)){let y=c("http://foo.com"+w);return y.scheme="",y.host="",y.type=5,y}if(o(w))return A(w);if(a(w))return c(w);let b=c("http://foo.com/"+w);return b.scheme="",b.host="",b.type=w?w.startsWith("?")?3:w.startsWith("#")?2:4:1,b}function p(w){if(w.endsWith("/.."))return w;let b=w.lastIndexOf("/");return w.slice(0,b+1)}function m(w,b){f(b,b.type),w.path==="/"?w.path=b.path:w.path=p(b.path)+w.path}function f(w,b){let y=b<=4,k=w.path.split("/"),E=1,Q=0,D=!1;for(let $=1;$<k.length;$++){let z=k[$];if(!z){D=!0;continue}if(D=!1,z!=="."){if(z===".."){Q?(D=!0,Q--,E--):y&&(k[E++]=z);continue}k[E++]=z,Q++}}let F="";for(let $=1;$<E;$++)F+="/"+k[$];(!F||D&&!F.endsWith("/.."))&&(F+="/"),w.path=F}function h(w,b){if(!w&&!b)return"";let y=u(w),k=y.type;if(b&&k!==7){let Q=u(b),D=Q.type;switch(k){case 1:y.hash=Q.hash;case 2:y.query=Q.query;case 3:case 4:m(y,Q);case 5:y.user=Q.user,y.host=Q.host,y.port=Q.port;case 6:y.scheme=Q.scheme}D>k&&(k=D)}f(y,k);let E=y.query+y.hash;switch(k){case 2:case 3:return E;case 4:{let Q=y.path.slice(1);return Q?s(b||w)&&!s(Q)?"./"+Q+E:Q+E:E||"."}case 5:return y.path+E;default:return y.scheme+"//"+y.user+y.host+y.port+y.path+E}}return h})});var hf=Cn(kr=>{"use strict";var bue=kr&&kr.__extends||function(){var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,r){a.__proto__=r}||function(a,r){for(var i in r)r.hasOwnProperty(i)&&(a[i]=r[i])},t(e,n)};return function(e,n){t(e,n);function a(){this.constructor=e}e.prototype=n===null?Object.create(n):(a.prototype=n.prototype,new a)}}();Object.defineProperty(kr,"__esModule",{value:!0});kr.DetailContext=kr.NoopContext=kr.VError=void 0;var Uq=function(t){bue(e,t);function e(n,a){var r=t.call(this,a)||this;return r.path=n,Object.setPrototypeOf(r,e.prototype),r}return e}(Error);kr.VError=Uq;var hue=function(){function t(){}return t.prototype.fail=function(e,n,a){return!1},t.prototype.unionResolver=function(){return this},t.prototype.createContext=function(){return this},t.prototype.resolveUnion=function(e){},t}();kr.NoopContext=hue;var Hq=function(){function t(){this._propNames=[""],this._messages=[null],this._score=0}return t.prototype.fail=function(e,n,a){return this._propNames.push(e),this._messages.push(n),this._score+=a,!1},t.prototype.unionResolver=function(){return new yue},t.prototype.resolveUnion=function(e){for(var n,a,r=e,i=null,o=0,s=r.contexts;o<s.length;o++){var c=s[o];(!i||c._score>=i._score)&&(i=c)}i&&i._score>0&&((n=this._propNames).push.apply(n,i._propNames),(a=this._messages).push.apply(a,i._messages))},t.prototype.getError=function(e){for(var n=[],a=this._propNames.length-1;a>=0;a--){var r=this._propNames[a];e+=typeof r=="number"?"["+r+"]":r?"."+r:"";var i=this._messages[a];i&&n.push(e+" "+i)}return new Uq(e,n.join("; "))},t.prototype.getErrorDetail=function(e){for(var n=[],a=this._propNames.length-1;a>=0;a--){var r=this._propNames[a];e+=typeof r=="number"?"["+r+"]":r?"."+r:"";var i=this._messages[a];i&&n.push({path:e,message:i})}for(var o=null,a=n.length-1;a>=0;a--)o&&(n[a].nested=[o]),o=n[a];return o},t}();kr.DetailContext=Hq;var yue=function(){function t(){this.contexts=[]}return t.prototype.createContext=function(){var e=new Hq;return this.contexts.push(e),e},t}()});var k0=Cn(K=>{"use strict";var sa=K&&K.__extends||function(){var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,r){a.__proto__=r}||function(a,r){for(var i in r)r.hasOwnProperty(i)&&(a[i]=r[i])},t(e,n)};return function(e,n){t(e,n);function a(){this.constructor=e}e.prototype=n===null?Object.create(n):(a.prototype=n.prototype,new a)}}();Object.defineProperty(K,"__esModule",{value:!0});K.basicTypes=K.BasicType=K.TParamList=K.TParam=K.param=K.TFunc=K.func=K.TProp=K.TOptional=K.opt=K.TIface=K.iface=K.TEnumLiteral=K.enumlit=K.TEnumType=K.enumtype=K.TIntersection=K.intersection=K.TUnion=K.union=K.TTuple=K.tuple=K.TArray=K.array=K.TLiteral=K.lit=K.TName=K.name=K.TType=void 0;var Wq=hf(),Rn=function(){function t(){}return t}();K.TType=Rn;function eo(t){return typeof t=="string"?Kq(t):t}function f0(t,e){var n=t[e];if(!n)throw new Error("Unknown type "+e);return n}function Kq(t){return new b0(t)}K.name=Kq;var b0=function(t){sa(e,t);function e(n){var a=t.call(this)||this;return a.name=n,a._failMsg="is not a "+n,a}return e.prototype.getChecker=function(n,a,r){var i=this,o=f0(n,this.name),s=o.getChecker(n,a,r);return o instanceof rn||o instanceof e?s:function(c,A){return s(c,A)?!0:A.fail(null,i._failMsg,0)}},e}(Rn);K.TName=b0;function wue(t){return new h0(t)}K.lit=wue;var h0=function(t){sa(e,t);function e(n){var a=t.call(this)||this;return a.value=n,a.name=JSON.stringify(n),a._failMsg="is not "+a.name,a}return e.prototype.getChecker=function(n,a){var r=this;return function(i,o){return i===r.value?!0:o.fail(null,r._failMsg,-1)}},e}(Rn);K.TLiteral=h0;function kue(t){return new Jq(eo(t))}K.array=kue;var Jq=function(t){sa(e,t);function e(n){var a=t.call(this)||this;return a.ttype=n,a}return e.prototype.getChecker=function(n,a){var r=this.ttype.getChecker(n,a);return function(i,o){if(!Array.isArray(i))return o.fail(null,"is not an array",0);for(var s=0;s<i.length;s++){var c=r(i[s],o);if(!c)return o.fail(s,null,1)}return!0}},e}(Rn);K.TArray=Jq;function Cue(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new Vq(t.map(function(n){return eo(n)}))}K.tuple=Cue;var Vq=function(t){sa(e,t);function e(n){var a=t.call(this)||this;return a.ttypes=n,a}return e.prototype.getChecker=function(n,a){var r=this.ttypes.map(function(o){return o.getChecker(n,a)}),i=function(o,s){if(!Array.isArray(o))return s.fail(null,"is not an array",0);for(var c=0;c<r.length;c++){var A=r[c](o[c],s);if(!A)return s.fail(c,null,1)}return!0};return a?function(o,s){return i(o,s)?o.length<=r.length?!0:s.fail(r.length,"is extraneous",2):!1}:i},e}(Rn);K.TTuple=Vq;function _ue(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new Xq(t.map(function(n){return eo(n)}))}K.union=_ue;var Xq=function(t){sa(e,t);function e(n){var a=t.call(this)||this;a.ttypes=n;var r=n.map(function(o){return o instanceof b0||o instanceof h0?o.name:null}).filter(function(o){return o}),i=n.length-r.length;return r.length?(i>0&&r.push(i+" more"),a._failMsg="is none of "+r.join(", ")):a._failMsg="is none of "+i+" types",a}return e.prototype.getChecker=function(n,a){var r=this,i=this.ttypes.map(function(o){return o.getChecker(n,a)});return function(o,s){for(var c=s.unionResolver(),A=0;A<i.length;A++){var d=i[A](o,c.createContext());if(d)return!0}return s.resolveUnion(c),s.fail(null,r._failMsg,0)}},e}(Rn);K.TUnion=Xq;function Bue(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new e6(t.map(function(n){return eo(n)}))}K.intersection=Bue;var e6=function(t){sa(e,t);function e(n){var a=t.call(this)||this;return a.ttypes=n,a}return e.prototype.getChecker=function(n,a){var r=new Set,i=this.ttypes.map(function(o){return o.getChecker(n,a,r)});return function(o,s){var c=i.every(function(A){return A(o,s)});return c?!0:s.fail(null,null,0)}},e}(Rn);K.TIntersection=e6;function xue(t){return new y0(t)}K.enumtype=xue;var y0=function(t){sa(e,t);function e(n){var a=t.call(this)||this;return a.members=n,a.validValues=new Set,a._failMsg="is not a valid enum value",a.validValues=new Set(Object.keys(n).map(function(r){return n[r]})),a}return e.prototype.getChecker=function(n,a){var r=this;return function(i,o){return r.validValues.has(i)?!0:o.fail(null,r._failMsg,0)}},e}(Rn);K.TEnumType=y0;function vue(t,e){return new t6(t,e)}K.enumlit=vue;var t6=function(t){sa(e,t);function e(n,a){var r=t.call(this)||this;return r.enumName=n,r.prop=a,r._failMsg="is not "+n+"."+a,r}return e.prototype.getChecker=function(n,a){var r=this,i=f0(n,this.enumName);if(!(i instanceof y0))throw new Error("Type "+this.enumName+" used in enumlit is not an enum type");var o=i.members[this.prop];if(!i.members.hasOwnProperty(this.prop))throw new Error("Unknown value "+this.enumName+"."+this.prop+" used in enumlit");return function(s,c){return s===o?!0:c.fail(null,r._failMsg,-1)}},e}(Rn);K.TEnumLiteral=t6;function Eue(t){return Object.keys(t).map(function(e){return Que(e,t[e])})}function Que(t,e){return e instanceof w0?new g0(t,e.ttype,!0):new g0(t,eo(e),!1)}function Iue(t,e){return new n6(t,Eue(e))}K.iface=Iue;var n6=function(t){sa(e,t);function e(n,a){var r=t.call(this)||this;return r.bases=n,r.props=a,r.propSet=new Set(a.map(function(i){return i.name})),r}return e.prototype.getChecker=function(n,a,r){var i=this,o=this.bases.map(function(p){return f0(n,p).getChecker(n,a)}),s=this.props.map(function(p){return p.ttype.getChecker(n,a)}),c=new Wq.NoopContext,A=this.props.map(function(p,m){return!p.isOpt&&!s[m](void 0,c)}),d=function(p,m){if(typeof p!="object"||p===null)return m.fail(null,"is not an object",0);for(var f=0;f<o.length;f++)if(!o[f](p,m))return!1;for(var f=0;f<s.length;f++){var h=i.props[f].name,w=p[h];if(w===void 0){if(A[f])return m.fail(h,"is missing",1)}else{var b=s[f](w,m);if(!b)return m.fail(h,null,1)}}return!0};if(!a)return d;var u=this.propSet;return r&&(this.propSet.forEach(function(p){return r.add(p)}),u=r),function(p,m){if(!d(p,m))return!1;for(var f in p)if(!u.has(f))return m.fail(f,"is extraneous",2);return!0}},e}(Rn);K.TIface=n6;function Due(t){return new w0(eo(t))}K.opt=Due;var w0=function(t){sa(e,t);function e(n){var a=t.call(this)||this;return a.ttype=n,a}return e.prototype.getChecker=function(n,a){var r=this.ttype.getChecker(n,a);return function(i,o){return i===void 0||r(i,o)}},e}(Rn);K.TOptional=w0;var g0=function(){function t(e,n,a){this.name=e,this.ttype=n,this.isOpt=a}return t}();K.TProp=g0;function Fue(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return new a6(new i6(e),eo(t))}K.func=Fue;var a6=function(t){sa(e,t);function e(n,a){var r=t.call(this)||this;return r.paramList=n,r.result=a,r}return e.prototype.getChecker=function(n,a){return function(r,i){return typeof r=="function"?!0:i.fail(null,"is not a function",0)}},e}(Rn);K.TFunc=a6;function Sue(t,e,n){return new r6(t,eo(e),!!n)}K.param=Sue;var r6=function(){function t(e,n,a){this.name=e,this.ttype=n,this.isOpt=a}return t}();K.TParam=r6;var i6=function(t){sa(e,t);function e(n){var a=t.call(this)||this;return a.params=n,a}return e.prototype.getChecker=function(n,a){var r=this,i=this.params.map(function(A){return A.ttype.getChecker(n,a)}),o=new Wq.NoopContext,s=this.params.map(function(A,d){return!A.isOpt&&!i[d](void 0,o)}),c=function(A,d){if(!Array.isArray(A))return d.fail(null,"is not an array",0);for(var u=0;u<i.length;u++){var p=r.params[u];if(A[u]===void 0){if(s[u])return d.fail(p.name,"is missing",1)}else{var m=i[u](A[u],d);if(!m)return d.fail(p.name,null,1)}}return!0};return a?function(A,d){return c(A,d)?A.length<=i.length?!0:d.fail(i.length,"is extraneous",2):!1}:c},e}(Rn);K.TParamList=i6;var rn=function(t){sa(e,t);function e(n,a){var r=t.call(this)||this;return r.validator=n,r.message=a,r}return e.prototype.getChecker=function(n,a){var r=this;return function(i,o){return r.validator(i)?!0:o.fail(null,r.message,0)}},e}(Rn);K.BasicType=rn;K.basicTypes={any:new rn(function(t){return!0},"is invalid"),number:new rn(function(t){return typeof t=="number"},"is not a number"),object:new rn(function(t){return typeof t=="object"&&t},"is not an object"),boolean:new rn(function(t){return typeof t=="boolean"},"is not a boolean"),string:new rn(function(t){return typeof t=="string"},"is not a string"),symbol:new rn(function(t){return typeof t=="symbol"},"is not a symbol"),void:new rn(function(t){return t==null},"is not void"),undefined:new rn(function(t){return t===void 0},"is not undefined"),null:new rn(function(t){return t===null},"is not null"),never:new rn(function(t){return!1},"is unexpected"),Date:new rn(Zq("[object Date]"),"is not a Date"),RegExp:new rn(Zq("[object RegExp]"),"is not a RegExp")};var Oue=Object.prototype.toString;function Zq(t){return function(e){return typeof e=="object"&&e&&Oue.call(e)===t}}typeof Buffer<"u"&&(K.basicTypes.Buffer=new rn(function(t){return Buffer.isBuffer(t)},"is not a Buffer"));var Nue=function(t){K.basicTypes[t.name]=new rn(function(e){return e instanceof t},"is not a "+t.name)};for(yf=0,m0=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,ArrayBuffer];yf<m0.length;yf++)Yq=m0[yf],Nue(Yq);var Yq,yf,m0});var C0=Cn(we=>{"use strict";var Lue=we&&we.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;for(var a=Array(t),r=0,e=0;e<n;e++)for(var i=arguments[e],o=0,s=i.length;o<s;o++,r++)a[r]=i[o];return a};Object.defineProperty(we,"__esModule",{value:!0});we.Checker=we.createCheckers=void 0;var Ed=k0(),Oc=hf(),Te=k0();Object.defineProperty(we,"TArray",{enumerable:!0,get:function(){return Te.TArray}});Object.defineProperty(we,"TEnumType",{enumerable:!0,get:function(){return Te.TEnumType}});Object.defineProperty(we,"TEnumLiteral",{enumerable:!0,get:function(){return Te.TEnumLiteral}});Object.defineProperty(we,"TFunc",{enumerable:!0,get:function(){return Te.TFunc}});Object.defineProperty(we,"TIface",{enumerable:!0,get:function(){return Te.TIface}});Object.defineProperty(we,"TLiteral",{enumerable:!0,get:function(){return Te.TLiteral}});Object.defineProperty(we,"TName",{enumerable:!0,get:function(){return Te.TName}});Object.defineProperty(we,"TOptional",{enumerable:!0,get:function(){return Te.TOptional}});Object.defineProperty(we,"TParam",{enumerable:!0,get:function(){return Te.TParam}});Object.defineProperty(we,"TParamList",{enumerable:!0,get:function(){return Te.TParamList}});Object.defineProperty(we,"TProp",{enumerable:!0,get:function(){return Te.TProp}});Object.defineProperty(we,"TTuple",{enumerable:!0,get:function(){return Te.TTuple}});Object.defineProperty(we,"TType",{enumerable:!0,get:function(){return Te.TType}});Object.defineProperty(we,"TUnion",{enumerable:!0,get:function(){return Te.TUnion}});Object.defineProperty(we,"TIntersection",{enumerable:!0,get:function(){return Te.TIntersection}});Object.defineProperty(we,"array",{enumerable:!0,get:function(){return Te.array}});Object.defineProperty(we,"enumlit",{enumerable:!0,get:function(){return Te.enumlit}});Object.defineProperty(we,"enumtype",{enumerable:!0,get:function(){return Te.enumtype}});Object.defineProperty(we,"func",{enumerable:!0,get:function(){return Te.func}});Object.defineProperty(we,"iface",{enumerable:!0,get:function(){return Te.iface}});Object.defineProperty(we,"lit",{enumerable:!0,get:function(){return Te.lit}});Object.defineProperty(we,"name",{enumerable:!0,get:function(){return Te.name}});Object.defineProperty(we,"opt",{enumerable:!0,get:function(){return Te.opt}});Object.defineProperty(we,"param",{enumerable:!0,get:function(){return Te.param}});Object.defineProperty(we,"tuple",{enumerable:!0,get:function(){return Te.tuple}});Object.defineProperty(we,"union",{enumerable:!0,get:function(){return Te.union}});Object.defineProperty(we,"intersection",{enumerable:!0,get:function(){return Te.intersection}});Object.defineProperty(we,"BasicType",{enumerable:!0,get:function(){return Te.BasicType}});var $ue=hf();Object.defineProperty(we,"VError",{enumerable:!0,get:function(){return $ue.VError}});function Rue(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var n=Object.assign.apply(Object,Lue([{},Ed.basicTypes],t)),a={},r=0,i=t;r<i.length;r++)for(var o=i[r],s=0,c=Object.keys(o);s<c.length;s++){var A=c[s];a[A]=new o6(n,o[A])}return a}we.createCheckers=Rue;var o6=function(){function t(e,n,a){if(a===void 0&&(a="value"),this.suite=e,this.ttype=n,this._path=a,this.props=new Map,n instanceof Ed.TIface)for(var r=0,i=n.props;r<i.length;r++){var o=i[r];this.props.set(o.name,o.ttype)}this.checkerPlain=this.ttype.getChecker(e,!1),this.checkerStrict=this.ttype.getChecker(e,!0)}return t.prototype.setReportedPath=function(e){this._path=e},t.prototype.check=function(e){return this._doCheck(this.checkerPlain,e)},t.prototype.test=function(e){return this.checkerPlain(e,new Oc.NoopContext)},t.prototype.validate=function(e){return this._doValidate(this.checkerPlain,e)},t.prototype.strictCheck=function(e){return this._doCheck(this.checkerStrict,e)},t.prototype.strictTest=function(e){return this.checkerStrict(e,new Oc.NoopContext)},t.prototype.strictValidate=function(e){return this._doValidate(this.checkerStrict,e)},t.prototype.getProp=function(e){var n=this.props.get(e);if(!n)throw new Error("Type has no property "+e);return new t(this.suite,n,this._path+"."+e)},t.prototype.methodArgs=function(e){var n=this._getMethod(e);return new t(this.suite,n.paramList)},t.prototype.methodResult=function(e){var n=this._getMethod(e);return new t(this.suite,n.result)},t.prototype.getArgs=function(){if(!(this.ttype instanceof Ed.TFunc))throw new Error("getArgs() applied to non-function");return new t(this.suite,this.ttype.paramList)},t.prototype.getResult=function(){if(!(this.ttype instanceof Ed.TFunc))throw new Error("getResult() applied to non-function");return new t(this.suite,this.ttype.result)},t.prototype.getType=function(){return this.ttype},t.prototype._doCheck=function(e,n){var a=new Oc.NoopContext;if(!e(n,a)){var r=new Oc.DetailContext;throw e(n,r),r.getError(this._path)}},t.prototype._doValidate=function(e,n){var a=new Oc.NoopContext;if(e(n,a))return null;var r=new Oc.DetailContext;return e(n,r),r.getErrorDetail(this._path)},t.prototype._getMethod=function(e){var n=this.props.get(e);if(!n)throw new Error("Type has no property "+e);if(!(n instanceof Ed.TFunc))throw new Error("Property "+e+" is not a method");return n},t}();we.Checker=o6});var zG=Cn(nu=>{"use strict";nu.__esModule=!0;nu.LinesAndColumns=void 0;var zf=` +`,qG="\r",GG=function(){function t(e){this.string=e;for(var n=[0],a=0;a<e.length;)switch(e[a]){case zf:a+=zf.length,n.push(a);break;case qG:a+=qG.length,e[a]===zf&&(a+=zf.length),n.push(a);break;default:a++;break}this.offsets=n}return t.prototype.locationForIndex=function(e){if(e<0||e>this.string.length)return null;for(var n=0,a=this.offsets;a[n+1]<=e;)n++;var r=e-a[n];return{line:n,column:r}},t.prototype.indexForLocation=function(e){var n=e.line,a=e.column;return n<0||n>=this.offsets.length||a<0||a>this.lengthOfLine(n)?null:this.offsets[n]+a},t.prototype.lengthOfLine=function(e){var n=this.offsets[e],a=e===this.offsets.length-1?this.string.length:this.offsets[e+1];return a-n},t}();nu.LinesAndColumns=GG;nu.default=GG});var VG=Pn(As(),1),XG=Pn(U1(),1);var au=Pn(As(),1);var Ae=Pn(As(),1),he=Pn(Ms(),1);var yw=[],V1=[];(()=>{let t="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(e=>e?parseInt(e,36):1);for(let e=0,n=0;e<t.length;e++)(e%2?V1:yw).push(n=n+t[e])})();function UU(t){if(t<768)return!1;for(let e=0,n=yw.length;;){let a=e+n>>1;if(t<yw[a])n=a;else if(t>=V1[a])e=a+1;else return!0;if(e==n)return!1}}function W1(t){return t>=127462&&t<=127487}var K1=8205;function X1(t,e,n=!0,a=!0){return(n?eI:HU)(t,e,a)}function eI(t,e,n){if(e==t.length)return e;e&&tI(t.charCodeAt(e))&&nI(t.charCodeAt(e-1))&&e--;let a=hw(t,e);for(e+=J1(a);e<t.length;){let r=hw(t,e);if(a==K1||r==K1||n&&UU(r))e+=J1(r),a=r;else if(W1(r)){let i=0,o=e-2;for(;o>=0&&W1(hw(t,o));)i++,o-=2;if(i%2==0)break;e+=2}else break}return e}function HU(t,e,n){for(;e>0;){let a=eI(t,e-2,n);if(a<e)return a;e--}return 0}function hw(t,e){let n=t.charCodeAt(e);if(!nI(n)||e+1==t.length)return n;let a=t.charCodeAt(e+1);return tI(a)?(n-55296<<10)+(a-56320)+65536:n}function tI(t){return t>=56320&&t<57344}function nI(t){return t>=55296&&t<56320}function J1(t){return t<65536?1:2}var ke=class t{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,n,a){[e,n]=Us(this,e,n);let r=[];return this.decompose(0,e,r,2),a.length&&a.decompose(0,a.length,r,3),this.decompose(n,this.length,r,1),qs.from(r,this.length-(n-e)+a.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,n=this.length){[e,n]=Us(this,e,n);let a=[];return this.decompose(e,n,a,0),qs.from(a,n-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let n=this.scanIdentical(e,1),a=this.length-this.scanIdentical(e,-1),r=new Co(this),i=new Co(e);for(let o=n,s=n;;){if(r.next(o),i.next(o),o=0,r.lineBreak!=i.lineBreak||r.done!=i.done||r.value!=i.value)return!1;if(s+=r.value.length,r.done||s>=a)return!0}}iter(e=1){return new Co(this,e)}iterRange(e,n=this.length){return new Fp(this,e,n)}iterLines(e,n){let a;if(e==null)a=this.iter();else{n==null&&(n=this.lines+1);let r=this.line(e).from;a=this.iterRange(r,Math.max(r,n==this.lines+1?this.length:n<=1?0:this.line(n-1).to))}return new Sp(a)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?t.empty:e.length<=32?new Hn(e):qs.from(Hn.split(e,[]))}},Hn=class t extends ke{constructor(e,n=ZU(e)){super(),this.text=e,this.length=n}get lines(){return this.text.length}get children(){return null}lineInner(e,n,a,r){for(let i=0;;i++){let o=this.text[i],s=r+o.length;if((n?a:s)>=e)return new kw(r,s,a,o);r=s+1,a++}}decompose(e,n,a,r){let i=e<=0&&n>=this.length?this:new t(aI(this.text,e,n),Math.min(n,this.length)-Math.max(0,e));if(r&1){let o=a.pop(),s=Dp(i.text,o.text.slice(),0,i.length);if(s.length<=32)a.push(new t(s,o.length+i.length));else{let c=s.length>>1;a.push(new t(s.slice(0,c)),new t(s.slice(c)))}}else a.push(i)}replace(e,n,a){if(!(a instanceof t))return super.replace(e,n,a);[e,n]=Us(this,e,n);let r=Dp(this.text,Dp(a.text,aI(this.text,0,e)),n),i=this.length+a.length-(n-e);return r.length<=32?new t(r,i):qs.from(t.split(r,[]),i)}sliceString(e,n=this.length,a=` +`){[e,n]=Us(this,e,n);let r="";for(let i=0,o=0;i<=n&&o<this.text.length;o++){let s=this.text[o],c=i+s.length;i>e&&o&&(r+=a),e<c&&n>i&&(r+=s.slice(Math.max(0,e-i),n-i)),i=c+1}return r}flatten(e){for(let n of this.text)e.push(n)}scanIdentical(){return 0}static split(e,n){let a=[],r=-1;for(let i of e)a.push(i),r+=i.length+1,a.length==32&&(n.push(new t(a,r)),a=[],r=-1);return r>-1&&n.push(new t(a,r)),n}},qs=class t extends ke{constructor(e,n){super(),this.children=e,this.length=n,this.lines=0;for(let a of e)this.lines+=a.lines}lineInner(e,n,a,r){for(let i=0;;i++){let o=this.children[i],s=r+o.length,c=a+o.lines-1;if((n?c:s)>=e)return o.lineInner(e,n,a,r);r=s+1,a=c+1}}decompose(e,n,a,r){for(let i=0,o=0;o<=n&&i<this.children.length;i++){let s=this.children[i],c=o+s.length;if(e<=c&&n>=o){let A=r&((o<=e?1:0)|(c>=n?2:0));o>=e&&c<=n&&!A?a.push(s):s.decompose(e-o,n-o,a,A)}o=c+1}}replace(e,n,a){if([e,n]=Us(this,e,n),a.lines<this.lines)for(let r=0,i=0;r<this.children.length;r++){let o=this.children[r],s=i+o.length;if(e>=i&&n<=s){let c=o.replace(e-i,n-i,a),A=this.lines-o.lines+c.lines;if(c.lines<A>>4&&c.lines>A>>6){let d=this.children.slice();return d[r]=c,new t(d,this.length-(n-e)+a.length)}return super.replace(i,s,c)}i=s+1}return super.replace(e,n,a)}sliceString(e,n=this.length,a=` +`){[e,n]=Us(this,e,n);let r="";for(let i=0,o=0;i<this.children.length&&o<=n;i++){let s=this.children[i],c=o+s.length;o>e&&i&&(r+=a),e<c&&n>o&&(r+=s.sliceString(e-o,n-o,a)),o=c+1}return r}flatten(e){for(let n of this.children)n.flatten(e)}scanIdentical(e,n){if(!(e instanceof t))return 0;let a=0,[r,i,o,s]=n>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;r+=n,i+=n){if(r==o||i==s)return a;let c=this.children[r],A=e.children[i];if(c!=A)return a+c.scanIdentical(A,n);a+=c.length+1}}static from(e,n=e.reduce((a,r)=>a+r.length+1,-1)){let a=0;for(let m of e)a+=m.lines;if(a<32){let m=[];for(let f of e)f.flatten(m);return new Hn(m,n)}let r=Math.max(32,a>>5),i=r<<1,o=r>>1,s=[],c=0,A=-1,d=[];function u(m){let f;if(m.lines>i&&m instanceof t)for(let h of m.children)u(h);else m.lines>o&&(c>o||!c)?(p(),s.push(m)):m instanceof Hn&&c&&(f=d[d.length-1])instanceof Hn&&m.lines+f.lines<=32?(c+=m.lines,A+=m.length+1,d[d.length-1]=new Hn(f.text.concat(m.text),f.length+1+m.length)):(c+m.lines>r&&p(),c+=m.lines,A+=m.length+1,d.push(m))}function p(){c!=0&&(s.push(d.length==1?d[0]:t.from(d,A)),A=-1,c=d.length=0)}for(let m of e)u(m);return p(),s.length==1?s[0]:new t(s,n)}};ke.empty=new Hn([""],0);function ZU(t){let e=-1;for(let n of t)e+=n.length+1;return e}function Dp(t,e,n=0,a=1e9){for(let r=0,i=0,o=!0;i<t.length&&r<=a;i++){let s=t[i],c=r+s.length;c>=n&&(c>a&&(s=s.slice(0,a-r)),r<n&&(s=s.slice(n-r)),o?(e[e.length-1]+=s,o=!1):e.push(s)),r=c+1}return e}function aI(t,e,n){return Dp(t,[""],e,n)}var Co=class{constructor(e,n=1){this.dir=n,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[n>0?1:(e instanceof Hn?e.text.length:e.children.length)<<1]}nextInner(e,n){for(this.done=this.lineBreak=!1;;){let a=this.nodes.length-1,r=this.nodes[a],i=this.offsets[a],o=i>>1,s=r instanceof Hn?r.text.length:r.children.length;if(o==(n>0?s:0)){if(a==0)return this.done=!0,this.value="",this;n>0&&this.offsets[a-1]++,this.nodes.pop(),this.offsets.pop()}else if((i&1)==(n>0?0:1)){if(this.offsets[a]+=n,e==0)return this.lineBreak=!0,this.value=` +`,this;e--}else if(r instanceof Hn){let c=r.text[o+(n<0?-1:0)];if(this.offsets[a]+=n,c.length>Math.max(0,e))return this.value=e==0?c:n>0?c.slice(e):c.slice(0,c.length-e),this;e-=c.length}else{let c=r.children[o+(n<0?-1:0)];e>c.length?(e-=c.length,this.offsets[a]+=n):(n<0&&this.offsets[a]--,this.nodes.push(c),this.offsets.push(n>0?1:(c instanceof Hn?c.text.length:c.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}},Fp=class{constructor(e,n,a){this.value="",this.done=!1,this.cursor=new Co(e,n>a?-1:1),this.pos=n>a?e.length:0,this.from=Math.min(n,a),this.to=Math.max(n,a)}nextInner(e,n){if(n<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,n<0?this.pos-this.to:this.from-this.pos);let a=n<0?this.pos-this.from:this.to-this.pos;e>a&&(e=a),a-=e;let{value:r}=this.cursor.next(e);return this.pos+=(r.length+e)*n,this.value=r.length<=a?r:n<0?r.slice(r.length-a):r.slice(0,a),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}},Sp=class{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:n,lineBreak:a,value:r}=this.inner.next(e);return n&&this.afterBreak?(this.value="",this.afterBreak=!1):n?(this.done=!0,this.value=""):a?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=r,this.afterBreak=!1),this}get lineBreak(){return!1}};typeof Symbol<"u"&&(ke.prototype[Symbol.iterator]=function(){return this.iter()},Co.prototype[Symbol.iterator]=Fp.prototype[Symbol.iterator]=Sp.prototype[Symbol.iterator]=function(){return this});var kw=class{constructor(e,n,a,r){this.from=e,this.to=n,this.number=a,this.text=r}get length(){return this.to-this.from}};function Us(t,e,n){return e=Math.max(0,Math.min(t.length,e)),[e,Math.max(e,Math.min(t.length,n))]}function dt(t,e,n=!0,a=!0){return X1(t,e,n,a)}function YU(t){return t>=56320&&t<57344}function WU(t){return t>=55296&&t<56320}function Gt(t,e){let n=t.charCodeAt(e);if(!WU(n)||e+1==t.length)return n;let a=t.charCodeAt(e+1);return YU(a)?(n-55296<<10)+(a-56320)+65536:n}function Ml(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode((t>>10)+55296,(t&1023)+56320))}function Yn(t){return t<65536?1:2}var Cw=/\r\n?|\n/,Et=function(t){return t[t.Simple=0]="Simple",t[t.TrackDel=1]="TrackDel",t[t.TrackBefore=2]="TrackBefore",t[t.TrackAfter=3]="TrackAfter",t}(Et||(Et={})),Or=class t{constructor(e){this.sections=e}get length(){let e=0;for(let n=0;n<this.sections.length;n+=2)e+=this.sections[n];return e}get newLength(){let e=0;for(let n=0;n<this.sections.length;n+=2){let a=this.sections[n+1];e+=a<0?this.sections[n]:a}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let n=0,a=0,r=0;n<this.sections.length;){let i=this.sections[n++],o=this.sections[n++];o<0?(e(a,r,i),r+=i):r+=o,a+=i}}iterChangedRanges(e,n=!1){_w(this,e,n)}get invertedDesc(){let e=[];for(let n=0;n<this.sections.length;){let a=this.sections[n++],r=this.sections[n++];r<0?e.push(a,r):e.push(r,a)}return new t(e)}composeDesc(e){return this.empty?e:e.empty?this:cI(this,e)}mapDesc(e,n=!1){return e.empty?this:Bw(this,e,n)}mapPos(e,n=-1,a=Et.Simple){let r=0,i=0;for(let o=0;o<this.sections.length;){let s=this.sections[o++],c=this.sections[o++],A=r+s;if(c<0){if(A>e)return i+(e-r);i+=s}else{if(a!=Et.Simple&&A>=e&&(a==Et.TrackDel&&r<e&&A>e||a==Et.TrackBefore&&r<e||a==Et.TrackAfter&&A>e))return null;if(A>e||A==e&&n<0&&!s)return e==r||n<0?i:i+c;i+=c}r=A}if(e>r)throw new RangeError(`Position ${e} is out of range for changeset of length ${r}`);return i}touchesRange(e,n=e){for(let a=0,r=0;a<this.sections.length&&r<=n;){let i=this.sections[a++],o=this.sections[a++],s=r+i;if(o>=0&&r<=n&&s>=e)return r<e&&s>n?"cover":!0;r=s}return!1}toString(){let e="";for(let n=0;n<this.sections.length;){let a=this.sections[n++],r=this.sections[n++];e+=(e?" ":"")+a+(r>=0?":"+r:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(n=>typeof n!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new t(e)}static create(e){return new t(e)}},An=class t extends Or{constructor(e,n){super(e),this.inserted=n}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return _w(this,(n,a,r,i,o)=>e=e.replace(r,r+(a-n),o),!1),e}mapDesc(e,n=!1){return Bw(this,e,n,!0)}invert(e){let n=this.sections.slice(),a=[];for(let r=0,i=0;r<n.length;r+=2){let o=n[r],s=n[r+1];if(s>=0){n[r]=s,n[r+1]=o;let c=r>>1;for(;a.length<c;)a.push(ke.empty);a.push(o?e.slice(i,i+o):ke.empty)}i+=o}return new t(n,a)}compose(e){return this.empty?e:e.empty?this:cI(this,e,!0)}map(e,n=!1){return e.empty?this:Bw(this,e,n,!0)}iterChanges(e,n=!1){_w(this,e,n)}get desc(){return Or.create(this.sections)}filter(e){let n=[],a=[],r=[],i=new _o(this);e:for(let o=0,s=0;;){let c=o==e.length?1e9:e[o++];for(;s<c||s==c&&i.len==0;){if(i.done)break e;let d=Math.min(i.len,c-s);en(r,d,-1);let u=i.ins==-1?-1:i.off==0?i.ins:0;en(n,d,u),u>0&&vi(a,n,i.text),i.forward(d),s+=d}let A=e[o++];for(;s<A;){if(i.done)break e;let d=Math.min(i.len,A-s);en(n,d,-1),en(r,d,i.ins==-1?-1:i.off==0?i.ins:0),i.forward(d),s+=d}}return{changes:new t(n,a),filtered:Or.create(r)}}toJSON(){let e=[];for(let n=0;n<this.sections.length;n+=2){let a=this.sections[n],r=this.sections[n+1];r<0?e.push(a):r==0?e.push([a]):e.push([a].concat(this.inserted[n>>1].toJSON()))}return e}static of(e,n,a){let r=[],i=[],o=0,s=null;function c(d=!1){if(!d&&!r.length)return;o<n&&en(r,n-o,-1);let u=new t(r,i);s=s?s.compose(u.map(s)):u,r=[],i=[],o=0}function A(d){if(Array.isArray(d))for(let u of d)A(u);else if(d instanceof t){if(d.length!=n)throw new RangeError(`Mismatched change set length (got ${d.length}, expected ${n})`);c(),s=s?s.compose(d.map(s)):d}else{let{from:u,to:p=u,insert:m}=d;if(u>p||u<0||p>n)throw new RangeError(`Invalid change range ${u} to ${p} (in doc of length ${n})`);let f=m?typeof m=="string"?ke.of(m.split(a||Cw)):m:ke.empty,h=f.length;if(u==p&&h==0)return;u<o&&c(),u>o&&en(r,u-o,-1),en(r,p-u,h),vi(i,r,f),o=p}}return A(e),c(!s),s}static empty(e){return new t(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let n=[],a=[];for(let r=0;r<e.length;r++){let i=e[r];if(typeof i=="number")n.push(i,-1);else{if(!Array.isArray(i)||typeof i[0]!="number"||i.some((o,s)=>s&&typeof o!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(i.length==1)n.push(i[0],0);else{for(;a.length<r;)a.push(ke.empty);a[r]=ke.of(i.slice(1)),n.push(i[0],a[r].length)}}}return new t(n,a)}static createSet(e,n){return new t(e,n)}};function en(t,e,n,a=!1){if(e==0&&n<=0)return;let r=t.length-2;r>=0&&n<=0&&n==t[r+1]?t[r]+=e:r>=0&&e==0&&t[r]==0?t[r+1]+=n:a?(t[r]+=e,t[r+1]+=n):t.push(e,n)}function vi(t,e,n){if(n.length==0)return;let a=e.length-2>>1;if(a<t.length)t[t.length-1]=t[t.length-1].append(n);else{for(;t.length<a;)t.push(ke.empty);t.push(n)}}function _w(t,e,n){let a=t.inserted;for(let r=0,i=0,o=0;o<t.sections.length;){let s=t.sections[o++],c=t.sections[o++];if(c<0)r+=s,i+=s;else{let A=r,d=i,u=ke.empty;for(;A+=s,d+=c,c&&a&&(u=u.append(a[o-2>>1])),!(n||o==t.sections.length||t.sections[o+1]<0);)s=t.sections[o++],c=t.sections[o++];e(r,A,i,d,u),r=A,i=d}}}function Bw(t,e,n,a=!1){let r=[],i=a?[]:null,o=new _o(t),s=new _o(e);for(let c=-1;;){if(o.done&&s.len||s.done&&o.len)throw new Error("Mismatched change set lengths");if(o.ins==-1&&s.ins==-1){let A=Math.min(o.len,s.len);en(r,A,-1),o.forward(A),s.forward(A)}else if(s.ins>=0&&(o.ins<0||c==o.i||o.off==0&&(s.len<o.len||s.len==o.len&&!n))){let A=s.len;for(en(r,s.ins,-1);A;){let d=Math.min(o.len,A);o.ins>=0&&c<o.i&&o.len<=d&&(en(r,0,o.ins),i&&vi(i,r,o.text),c=o.i),o.forward(d),A-=d}s.next()}else if(o.ins>=0){let A=0,d=o.len;for(;d;)if(s.ins==-1){let u=Math.min(d,s.len);A+=u,d-=u,s.forward(u)}else if(s.ins==0&&s.len<d)d-=s.len,s.next();else break;en(r,A,c<o.i?o.ins:0),i&&c<o.i&&vi(i,r,o.text),c=o.i,o.forward(o.len-d)}else{if(o.done&&s.done)return i?An.createSet(r,i):Or.create(r);throw new Error("Mismatched change set lengths")}}}function cI(t,e,n=!1){let a=[],r=n?[]:null,i=new _o(t),o=new _o(e);for(let s=!1;;){if(i.done&&o.done)return r?An.createSet(a,r):Or.create(a);if(i.ins==0)en(a,i.len,0,s),i.next();else if(o.len==0&&!o.done)en(a,0,o.ins,s),r&&vi(r,a,o.text),o.next();else{if(i.done||o.done)throw new Error("Mismatched change set lengths");{let c=Math.min(i.len2,o.len),A=a.length;if(i.ins==-1){let d=o.ins==-1?-1:o.off?0:o.ins;en(a,c,d,s),r&&d&&vi(r,a,o.text)}else o.ins==-1?(en(a,i.off?0:i.len,c,s),r&&vi(r,a,i.textBit(c))):(en(a,i.off?0:i.len,o.off?0:o.ins,s),r&&!o.off&&vi(r,a,o.text));s=(i.ins>c||o.ins>=0&&o.len>c)&&(s||a.length>A),i.forward2(c),o.forward(c)}}}}var _o=class{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i<e.length?(this.len=e[this.i++],this.ins=e[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return this.ins==-2}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:e}=this.set,n=this.i-2>>1;return n>=e.length?ke.empty:e[n]}textBit(e){let{inserted:n}=this.set,a=this.i-2>>1;return a>=n.length&&!e?ke.empty:n[a].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}},Ts=class t{constructor(e,n,a){this.from=e,this.to=n,this.flags=a}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get bidiLevel(){let e=this.flags&7;return e==7?null:e}get goalColumn(){let e=this.flags>>6;return e==16777215?void 0:e}map(e,n=-1){let a,r;return this.empty?a=r=e.mapPos(this.from,n):(a=e.mapPos(this.from,1),r=e.mapPos(this.to,-1)),a==this.from&&r==this.to?this:new t(a,r,this.flags)}extend(e,n=e){if(e<=this.anchor&&n>=this.anchor)return L.range(e,n);let a=Math.abs(e-this.anchor)>Math.abs(n-this.anchor)?e:n;return L.range(this.anchor,a)}eq(e,n=!1){return this.anchor==e.anchor&&this.head==e.head&&(!n||!this.empty||this.assoc==e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return L.range(e.anchor,e.head)}static create(e,n,a){return new t(e,n,a)}},L=class t{constructor(e,n){this.ranges=e,this.mainIndex=n}map(e,n=-1){return e.empty?this:t.create(this.ranges.map(a=>a.map(e,n)),this.mainIndex)}eq(e,n=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let a=0;a<this.ranges.length;a++)if(!this.ranges[a].eq(e.ranges[a],n))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return this.ranges.length==1?this:new t([this.main],0)}addRange(e,n=!0){return t.create([e].concat(this.ranges),n?0:this.mainIndex+1)}replaceRange(e,n=this.mainIndex){let a=this.ranges.slice();return a[n]=e,t.create(a,this.mainIndex)}toJSON(){return{ranges:this.ranges.map(e=>e.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||typeof e.main!="number"||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new t(e.ranges.map(n=>Ts.fromJSON(n)),e.main)}static single(e,n=e){return new t([t.range(e,n)],0)}static create(e,n=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let a=0,r=0;r<e.length;r++){let i=e[r];if(i.empty?i.from<=a:i.from<a)return t.normalized(e.slice(),n);a=i.to}return new t(e,n)}static cursor(e,n=0,a,r){return Ts.create(e,e,(n==0?0:n<0?8:16)|(a==null?7:Math.min(6,a))|(r??16777215)<<6)}static range(e,n,a,r){let i=(a??16777215)<<6|(r==null?7:Math.min(6,r));return n<e?Ts.create(n,e,48|i):Ts.create(e,n,(n>e?8:0)|i)}static normalized(e,n=0){let a=e[n];e.sort((r,i)=>r.from-i.from),n=e.indexOf(a);for(let r=1;r<e.length;r++){let i=e[r],o=e[r-1];if(i.empty?i.from<=o.to:i.from<o.to){let s=o.from,c=Math.max(i.to,o.to);r<=n&&n--,e.splice(--r,2,i.anchor>i.head?t.range(c,s):t.range(s,c))}}return new t(e,n)}};function lI(t,e){for(let n of t.ranges)if(n.to>e)throw new RangeError("Selection points outside of document")}var Nw=0,G=class t{constructor(e,n,a,r,i){this.combine=e,this.compareInput=n,this.compare=a,this.isStatic=r,this.id=Nw++,this.default=e([]),this.extensions=typeof i=="function"?i(this):i}get reader(){return this}static define(e={}){return new t(e.combine||(n=>n),e.compareInput||((n,a)=>n===a),e.compare||(e.combine?(n,a)=>n===a:Lw),!!e.static,e.enables)}of(e){return new Gs([],this,0,e)}compute(e,n){if(this.isStatic)throw new Error("Can't compute a static facet");return new Gs(e,this,1,n)}computeN(e,n){if(this.isStatic)throw new Error("Can't compute a static facet");return new Gs(e,this,2,n)}from(e,n){return n||(n=a=>a),this.compute([e],a=>n(a.field(e)))}};function Lw(t,e){return t==e||t.length==e.length&&t.every((n,a)=>n===e[a])}var Gs=class{constructor(e,n,a,r){this.dependencies=e,this.facet=n,this.type=a,this.value=r,this.id=Nw++}dynamicSlot(e){var n;let a=this.value,r=this.facet.compareInput,i=this.id,o=e[i]>>1,s=this.type==2,c=!1,A=!1,d=[];for(let u of this.dependencies)u=="doc"?c=!0:u=="selection"?A=!0:((n=e[u.id])!==null&&n!==void 0?n:1)&1||d.push(e[u.id]);return{create(u){return u.values[o]=a(u),1},update(u,p){if(c&&p.docChanged||A&&(p.docChanged||p.selection)||xw(u,d)){let m=a(u);if(s?!rI(m,u.values[o],r):!r(m,u.values[o]))return u.values[o]=m,1}return 0},reconfigure:(u,p)=>{let m,f=p.config.address[i];if(f!=null){let h=$p(p,f);if(this.dependencies.every(w=>w instanceof G?p.facet(w)===u.facet(w):w instanceof at?p.field(w,!1)==u.field(w,!1):!0)||(s?rI(m=a(u),h,r):r(m=a(u),h)))return u.values[o]=h,0}else m=a(u);return u.values[o]=m,1}}}};function rI(t,e,n){if(t.length!=e.length)return!1;for(let a=0;a<t.length;a++)if(!n(t[a],e[a]))return!1;return!0}function xw(t,e){let n=!1;for(let a of e)$l(t,a)&1&&(n=!0);return n}function KU(t,e,n){let a=n.map(c=>t[c.id]),r=n.map(c=>c.type),i=a.filter(c=>!(c&1)),o=t[e.id]>>1;function s(c){let A=[];for(let d=0;d<a.length;d++){let u=$p(c,a[d]);if(r[d]==2)for(let p of u)A.push(p);else A.push(u)}return e.combine(A)}return{create(c){for(let A of a)$l(c,A);return c.values[o]=s(c),1},update(c,A){if(!xw(c,i))return 0;let d=s(c);return e.compare(d,c.values[o])?0:(c.values[o]=d,1)},reconfigure(c,A){let d=xw(c,a),u=A.config.facets[e.id],p=A.facet(e);if(u&&!d&&Lw(n,u))return c.values[o]=p,0;let m=s(c);return e.compare(m,p)?(c.values[o]=p,0):(c.values[o]=m,1)}}}var Ep=G.define({static:!0}),at=class t{constructor(e,n,a,r,i){this.id=e,this.createF=n,this.updateF=a,this.compareF=r,this.spec=i,this.provides=void 0}static define(e){let n=new t(Nw++,e.create,e.update,e.compare||((a,r)=>a===r),e);return e.provide&&(n.provides=e.provide(n)),n}create(e){let n=e.facet(Ep).find(a=>a.field==this);return(n?.create||this.createF)(e)}slot(e){let n=e[this.id]>>1;return{create:a=>(a.values[n]=this.create(a),1),update:(a,r)=>{let i=a.values[n],o=this.updateF(i,r);return this.compareF(i,o)?0:(a.values[n]=o,1)},reconfigure:(a,r)=>{let i=a.facet(Ep),o=r.facet(Ep),s;return(s=i.find(c=>c.field==this))&&s!=o.find(c=>c.field==this)?(a.values[n]=s.create(a),1):r.config.address[this.id]!=null?(a.values[n]=r.field(this),0):(a.values[n]=this.create(a),1)}}}init(e){return[this,Ep.of({field:this,create:e})]}get extension(){return this}},wo={lowest:4,low:3,default:2,high:1,highest:0};function Ll(t){return e=>new Op(e,t)}var In={highest:Ll(wo.highest),high:Ll(wo.high),default:Ll(wo.default),low:Ll(wo.low),lowest:Ll(wo.lowest)},Op=class{constructor(e,n){this.inner=e,this.prec=n}},Np=class t{of(e){return new Rl(this,e)}reconfigure(e){return t.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}},Rl=class{constructor(e,n){this.compartment=e,this.inner=n}},Lp=class t{constructor(e,n,a,r,i,o){for(this.base=e,this.compartments=n,this.dynamicSlots=a,this.address=r,this.staticValues=i,this.facets=o,this.statusTemplate=[];this.statusTemplate.length<a.length;)this.statusTemplate.push(0)}staticFacet(e){let n=this.address[e.id];return n==null?e.default:this.staticValues[n>>1]}static resolve(e,n,a){let r=[],i=Object.create(null),o=new Map;for(let p of JU(e,n,o))p instanceof at?r.push(p):(i[p.facet.id]||(i[p.facet.id]=[])).push(p);let s=Object.create(null),c=[],A=[];for(let p of r)s[p.id]=A.length<<1,A.push(m=>p.slot(m));let d=a?.config.facets;for(let p in i){let m=i[p],f=m[0].facet,h=d&&d[p]||[];if(m.every(w=>w.type==0))if(s[f.id]=c.length<<1|1,Lw(h,m))c.push(a.facet(f));else{let w=f.combine(m.map(b=>b.value));c.push(a&&f.compare(w,a.facet(f))?a.facet(f):w)}else{for(let w of m)w.type==0?(s[w.id]=c.length<<1|1,c.push(w.value)):(s[w.id]=A.length<<1,A.push(b=>w.dynamicSlot(b)));s[f.id]=A.length<<1,A.push(w=>KU(w,f,m))}}let u=A.map(p=>p(s));return new t(e,o,u,s,c,i)}};function JU(t,e,n){let a=[[],[],[],[],[]],r=new Map;function i(o,s){let c=r.get(o);if(c!=null){if(c<=s)return;let A=a[c].indexOf(o);A>-1&&a[c].splice(A,1),o instanceof Rl&&n.delete(o.compartment)}if(r.set(o,s),Array.isArray(o))for(let A of o)i(A,s);else if(o instanceof Rl){if(n.has(o.compartment))throw new RangeError("Duplicate use of compartment in extensions");let A=e.get(o.compartment)||o.inner;n.set(o.compartment,A),i(A,s)}else if(o instanceof Op)i(o.inner,o.prec);else if(o instanceof at)a[s].push(o),o.provides&&i(o.provides,s);else if(o instanceof Gs)a[s].push(o),o.facet.extensions&&i(o.facet.extensions,wo.default);else{let A=o.extension;if(!A)throw new Error(`Unrecognized extension value in extension set (${o}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);i(A,s)}}return i(t,wo.default),a.reduce((o,s)=>o.concat(s))}function $l(t,e){if(e&1)return 2;let n=e>>1,a=t.status[n];if(a==4)throw new Error("Cyclic dependency between fields and/or facets");if(a&2)return a;t.status[n]=4;let r=t.computeSlot(t,t.config.dynamicSlots[n]);return t.status[n]=2|r}function $p(t,e){return e&1?t.config.staticValues[e>>1]:t.values[e>>1]}var AI=G.define(),vw=G.define({combine:t=>t.some(e=>e),static:!0}),dI=G.define({combine:t=>t.length?t[0]:void 0,static:!0}),uI=G.define(),pI=G.define(),mI=G.define(),gI=G.define({combine:t=>t.length?t[0]:!1}),Qn=class{constructor(e,n){this.type=e,this.value=n}static define(){return new Ew}},Ew=class{of(e){return new Qn(this,e)}},Qw=class{constructor(e){this.map=e}of(e){return new ie(this,e)}},ie=class t{constructor(e,n){this.type=e,this.value=n}map(e){let n=this.type.map(this.value,e);return n===void 0?void 0:n==this.value?this:new t(this.type,n)}is(e){return this.type==e}static define(e={}){return new Qw(e.map||(n=>n))}static mapEffects(e,n){if(!e.length)return e;let a=[];for(let r of e){let i=r.map(n);i&&a.push(i)}return a}};ie.reconfigure=ie.define();ie.appendConfig=ie.define();var kt=class t{constructor(e,n,a,r,i,o){this.startState=e,this.changes=n,this.selection=a,this.effects=r,this.annotations=i,this.scrollIntoView=o,this._doc=null,this._state=null,a&&lI(a,n.newLength),i.some(s=>s.type==t.time)||(this.annotations=i.concat(t.time.of(Date.now())))}static create(e,n,a,r,i,o){return new t(e,n,a,r,i,o)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let n of this.annotations)if(n.type==e)return n.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let n=this.annotation(t.userEvent);return!!(n&&(n==e||n.length>e.length&&n.slice(0,e.length)==e&&n[e.length]=="."))}};kt.time=Qn.define();kt.userEvent=Qn.define();kt.addToHistory=Qn.define();kt.remote=Qn.define();function VU(t,e){let n=[];for(let a=0,r=0;;){let i,o;if(a<t.length&&(r==e.length||e[r]>=t[a]))i=t[a++],o=t[a++];else if(r<e.length)i=e[r++],o=e[r++];else return n;!n.length||n[n.length-1]<i?n.push(i,o):n[n.length-1]<o&&(n[n.length-1]=o)}}function fI(t,e,n){var a;let r,i,o;return n?(r=e.changes,i=An.empty(e.changes.length),o=t.changes.compose(e.changes)):(r=e.changes.map(t.changes),i=t.changes.mapDesc(e.changes,!0),o=t.changes.compose(r)),{changes:o,selection:e.selection?e.selection.map(i):(a=t.selection)===null||a===void 0?void 0:a.map(r),effects:ie.mapEffects(t.effects,r).concat(ie.mapEffects(e.effects,i)),annotations:t.annotations.length?t.annotations.concat(e.annotations):e.annotations,scrollIntoView:t.scrollIntoView||e.scrollIntoView}}function Iw(t,e,n){let a=e.selection,r=zs(e.annotations);return e.userEvent&&(r=r.concat(kt.userEvent.of(e.userEvent))),{changes:e.changes instanceof An?e.changes:An.of(e.changes||[],n,t.facet(dI)),selection:a&&(a instanceof L?a:L.single(a.anchor,a.head)),effects:zs(e.effects),annotations:r,scrollIntoView:!!e.scrollIntoView}}function bI(t,e,n){let a=Iw(t,e.length?e[0]:{},t.doc.length);e.length&&e[0].filter===!1&&(n=!1);for(let i=1;i<e.length;i++){e[i].filter===!1&&(n=!1);let o=!!e[i].sequential;a=fI(a,Iw(t,e[i],o?a.changes.newLength:t.doc.length),o)}let r=kt.create(t,a.changes,a.selection,a.effects,a.annotations,a.scrollIntoView);return eH(n?XU(r):r)}function XU(t){let e=t.startState,n=!0;for(let r of e.facet(uI)){let i=r(t);if(i===!1){n=!1;break}Array.isArray(i)&&(n=n===!0?i:VU(n,i))}if(n!==!0){let r,i;if(n===!1)i=t.changes.invertedDesc,r=An.empty(e.doc.length);else{let o=t.changes.filter(n);r=o.changes,i=o.filtered.mapDesc(o.changes).invertedDesc}t=kt.create(e,r,t.selection&&t.selection.map(i),ie.mapEffects(t.effects,i),t.annotations,t.scrollIntoView)}let a=e.facet(pI);for(let r=a.length-1;r>=0;r--){let i=a[r](t);i instanceof kt?t=i:Array.isArray(i)&&i.length==1&&i[0]instanceof kt?t=i[0]:t=bI(e,zs(i),!1)}return t}function eH(t){let e=t.startState,n=e.facet(mI),a=t;for(let r=n.length-1;r>=0;r--){let i=n[r](t);i&&Object.keys(i).length&&(a=fI(a,Iw(e,i,t.changes.newLength),!0))}return a==t?t:kt.create(e,t.changes,t.selection,a.effects,a.annotations,a.scrollIntoView)}var tH=[];function zs(t){return t==null?tH:Array.isArray(t)?t:[t]}var Pe=function(t){return t[t.Word=0]="Word",t[t.Space=1]="Space",t[t.Other=2]="Other",t}(Pe||(Pe={})),nH=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,Dw;try{Dw=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function aH(t){if(Dw)return Dw.test(t);for(let e=0;e<t.length;e++){let n=t[e];if(/\w/.test(n)||n>"\x80"&&(n.toUpperCase()!=n.toLowerCase()||nH.test(n)))return!0}return!1}function rH(t){return e=>{if(!/\S/.test(e))return Pe.Space;if(aH(e))return Pe.Word;for(let n=0;n<t.length;n++)if(e.indexOf(t[n])>-1)return Pe.Word;return Pe.Other}}var Fe=class t{constructor(e,n,a,r,i,o){this.config=e,this.doc=n,this.selection=a,this.values=r,this.status=e.statusTemplate.slice(),this.computeSlot=i,o&&(o._state=this);for(let s=0;s<this.config.dynamicSlots.length;s++)$l(this,s<<1);this.computeSlot=null}field(e,n=!0){let a=this.config.address[e.id];if(a==null){if(n)throw new RangeError("Field is not present in this state");return}return $l(this,a),$p(this,a)}update(...e){return bI(this,e,!0)}applyTransaction(e){let n=this.config,{base:a,compartments:r}=n;for(let s of e.effects)s.is(Np.reconfigure)?(n&&(r=new Map,n.compartments.forEach((c,A)=>r.set(A,c)),n=null),r.set(s.value.compartment,s.value.extension)):s.is(ie.reconfigure)?(n=null,a=s.value):s.is(ie.appendConfig)&&(n=null,a=zs(a).concat(s.value));let i;n?i=e.startState.values.slice():(n=Lp.resolve(a,r,this),i=new t(n,this.doc,this.selection,n.dynamicSlots.map(()=>null),(c,A)=>A.reconfigure(c,this),null).values);let o=e.startState.facet(vw)?e.newSelection:e.newSelection.asSingle();new t(n,e.newDoc,o,i,(s,c)=>c.update(s,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(n=>({changes:{from:n.from,to:n.to,insert:e},range:L.cursor(n.from+e.length)}))}changeByRange(e){let n=this.selection,a=e(n.ranges[0]),r=this.changes(a.changes),i=[a.range],o=zs(a.effects);for(let s=1;s<n.ranges.length;s++){let c=e(n.ranges[s]),A=this.changes(c.changes),d=A.map(r);for(let p=0;p<s;p++)i[p]=i[p].map(d);let u=r.mapDesc(A,!0);i.push(c.range.map(u)),r=r.compose(d),o=ie.mapEffects(o,d).concat(ie.mapEffects(zs(c.effects),u))}return{changes:r,selection:L.create(i,n.mainIndex),effects:o}}changes(e=[]){return e instanceof An?e:An.of(e,this.doc.length,this.facet(t.lineSeparator))}toText(e){return ke.of(e.split(this.facet(t.lineSeparator)||Cw))}sliceDoc(e=0,n=this.doc.length){return this.doc.sliceString(e,n,this.lineBreak)}facet(e){let n=this.config.address[e.id];return n==null?e.default:($l(this,n),$p(this,n))}toJSON(e){let n={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(e)for(let a in e){let r=e[a];r instanceof at&&this.config.address[r.id]!=null&&(n[a]=r.spec.toJSON(this.field(e[a]),this))}return n}static fromJSON(e,n={},a){if(!e||typeof e.doc!="string")throw new RangeError("Invalid JSON representation for EditorState");let r=[];if(a){for(let i in a)if(Object.prototype.hasOwnProperty.call(e,i)){let o=a[i],s=e[i];r.push(o.init(c=>o.spec.fromJSON(s,c)))}}return t.create({doc:e.doc,selection:L.fromJSON(e.selection),extensions:n.extensions?r.concat([n.extensions]):r})}static create(e={}){let n=Lp.resolve(e.extensions||[],new Map),a=e.doc instanceof ke?e.doc:ke.of((e.doc||"").split(n.staticFacet(t.lineSeparator)||Cw)),r=e.selection?e.selection instanceof L?e.selection:L.single(e.selection.anchor,e.selection.head):L.single(0);return lI(r,a.length),n.staticFacet(vw)||(r=r.asSingle()),new t(n,a,r,n.dynamicSlots.map(()=>null),(i,o)=>o.create(i),null)}get tabSize(){return this.facet(t.tabSize)}get lineBreak(){return this.facet(t.lineSeparator)||` +`}get readOnly(){return this.facet(gI)}phrase(e,...n){for(let a of this.facet(t.phrases))if(Object.prototype.hasOwnProperty.call(a,e)){e=a[e];break}return n.length&&(e=e.replace(/\$(\$|\d*)/g,(a,r)=>{if(r=="$")return"$";let i=+(r||1);return!i||i>n.length?a:n[i-1]})),e}languageDataAt(e,n,a=-1){let r=[];for(let i of this.facet(AI))for(let o of i(this,n,a))Object.prototype.hasOwnProperty.call(o,e)&&r.push(o[e]);return r}charCategorizer(e){let n=this.languageDataAt("wordChars",e);return rH(n.length?n[0]:"")}wordAt(e){let{text:n,from:a,length:r}=this.doc.lineAt(e),i=this.charCategorizer(e),o=e-a,s=e-a;for(;o>0;){let c=dt(n,o,!1);if(i(n.slice(c,o))!=Pe.Word)break;o=c}for(;s<r;){let c=dt(n,s);if(i(n.slice(s,c))!=Pe.Word)break;s=c}return o==s?null:L.range(o+a,s+a)}};Fe.allowMultipleSelections=vw;Fe.tabSize=G.define({combine:t=>t.length?t[0]:4});Fe.lineSeparator=dI;Fe.readOnly=gI;Fe.phrases=G.define({compare(t,e){let n=Object.keys(t),a=Object.keys(e);return n.length==a.length&&n.every(r=>t[r]==e[r])}});Fe.languageData=AI;Fe.changeFilter=uI;Fe.transactionFilter=pI;Fe.transactionExtender=mI;Np.reconfigure=ie.define();function tn(t,e,n={}){let a={};for(let r of t)for(let i of Object.keys(r)){let o=r[i],s=a[i];if(s===void 0)a[i]=o;else if(!(s===o||o===void 0))if(Object.hasOwnProperty.call(n,i))a[i]=n[i](s,o);else throw new Error("Config merge conflict for field "+i)}for(let r in e)a[r]===void 0&&(a[r]=e[r]);return a}var ba=class{eq(e){return this==e}range(e,n=e){return jl.create(e,n,this)}};ba.prototype.startSide=ba.prototype.endSide=0;ba.prototype.point=!1;ba.prototype.mapMode=Et.TrackDel;function $w(t,e){return t==e||t.constructor==e.constructor&&t.eq(e)}var jl=class t{constructor(e,n,a){this.from=e,this.to=n,this.value=a}static create(e,n,a){return new t(e,n,a)}};function Fw(t,e){return t.from-e.from||t.value.startSide-e.value.startSide}var Sw=class t{constructor(e,n,a,r){this.from=e,this.to=n,this.value=a,this.maxPoint=r}get length(){return this.to[this.to.length-1]}findIndex(e,n,a,r=0){let i=a?this.to:this.from;for(let o=r,s=i.length;;){if(o==s)return o;let c=o+s>>1,A=i[c]-e||(a?this.value[c].endSide:this.value[c].startSide)-n;if(c==o)return A>=0?o:s;A>=0?s=c:o=c+1}}between(e,n,a,r){for(let i=this.findIndex(n,-1e9,!0),o=this.findIndex(a,1e9,!1,i);i<o;i++)if(r(this.from[i]+e,this.to[i]+e,this.value[i])===!1)return!1}map(e,n){let a=[],r=[],i=[],o=-1,s=-1;for(let c=0;c<this.value.length;c++){let A=this.value[c],d=this.from[c]+e,u=this.to[c]+e,p,m;if(d==u){let f=n.mapPos(d,A.startSide,A.mapMode);if(f==null||(p=m=f,A.startSide!=A.endSide&&(m=n.mapPos(d,A.endSide),m<p)))continue}else if(p=n.mapPos(d,A.startSide),m=n.mapPos(u,A.endSide),p>m||p==m&&A.startSide>0&&A.endSide<=0)continue;(m-p||A.endSide-A.startSide)<0||(o<0&&(o=p),A.point&&(s=Math.max(s,m-p)),a.push(A),r.push(p-o),i.push(m-o))}return{mapped:a.length?new t(r,i,a,s):null,pos:o}}},xe=class t{constructor(e,n,a,r){this.chunkPos=e,this.chunk=n,this.nextLayer=a,this.maxPoint=r}static create(e,n,a,r){return new t(e,n,a,r)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let n of this.chunk)e+=n.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:n=[],sort:a=!1,filterFrom:r=0,filterTo:i=this.length}=e,o=e.filter;if(n.length==0&&!o)return this;if(a&&(n=n.slice().sort(Fw)),this.isEmpty)return n.length?t.of(n):this;let s=new Rp(this,null,-1).goto(0),c=0,A=[],d=new Zn;for(;s.value||c<n.length;)if(c<n.length&&(s.from-n[c].from||s.startSide-n[c].value.startSide)>=0){let u=n[c++];d.addInner(u.from,u.to,u.value)||A.push(u)}else s.rangeIndex==1&&s.chunkIndex<this.chunk.length&&(c==n.length||this.chunkEnd(s.chunkIndex)<n[c].from)&&(!o||r>this.chunkEnd(s.chunkIndex)||i<this.chunkPos[s.chunkIndex])&&d.addChunk(this.chunkPos[s.chunkIndex],this.chunk[s.chunkIndex])?s.nextChunk():((!o||r>s.to||i<s.from||o(s.from,s.to,s.value))&&(d.addInner(s.from,s.to,s.value)||A.push(jl.create(s.from,s.to,s.value))),s.next());return d.finishInner(this.nextLayer.isEmpty&&!A.length?t.empty:this.nextLayer.update({add:A,filter:o,filterFrom:r,filterTo:i}))}map(e){if(e.empty||this.isEmpty)return this;let n=[],a=[],r=-1;for(let o=0;o<this.chunk.length;o++){let s=this.chunkPos[o],c=this.chunk[o],A=e.touchesRange(s,s+c.length);if(A===!1)r=Math.max(r,c.maxPoint),n.push(c),a.push(e.mapPos(s));else if(A===!0){let{mapped:d,pos:u}=c.map(s,e);d&&(r=Math.max(r,d.maxPoint),n.push(d),a.push(u))}}let i=this.nextLayer.map(e);return n.length==0?i:new t(a,n,i||t.empty,r)}between(e,n,a){if(!this.isEmpty){for(let r=0;r<this.chunk.length;r++){let i=this.chunkPos[r],o=this.chunk[r];if(n>=i&&e<=i+o.length&&o.between(i,e-i,n-i,a)===!1)return}this.nextLayer.between(e,n,a)}}iter(e=0){return Pl.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,n=0){return Pl.from(e).goto(n)}static compare(e,n,a,r,i=-1){let o=e.filter(u=>u.maxPoint>0||!u.isEmpty&&u.maxPoint>=i),s=n.filter(u=>u.maxPoint>0||!u.isEmpty&&u.maxPoint>=i),c=iI(o,s,a),A=new ko(o,c,i),d=new ko(s,c,i);a.iterGaps((u,p,m)=>oI(A,u,d,p,m,r)),a.empty&&a.length==0&&oI(A,0,d,0,0,r)}static eq(e,n,a=0,r){r==null&&(r=999999999);let i=e.filter(d=>!d.isEmpty&&n.indexOf(d)<0),o=n.filter(d=>!d.isEmpty&&e.indexOf(d)<0);if(i.length!=o.length)return!1;if(!i.length)return!0;let s=iI(i,o),c=new ko(i,s,0).goto(a),A=new ko(o,s,0).goto(a);for(;;){if(c.to!=A.to||!Ow(c.active,A.active)||c.point&&(!A.point||!$w(c.point,A.point)))return!1;if(c.to>r)return!0;c.next(),A.next()}}static spans(e,n,a,r,i=-1){let o=new ko(e,null,i).goto(n),s=n,c=o.openStart;for(;;){let A=Math.min(o.to,a);if(o.point){let d=o.activeForPoint(o.to),u=o.pointFrom<n?d.length+1:o.point.startSide<0?d.length:Math.min(d.length,c);r.point(s,A,o.point,d,u,o.pointRank),c=Math.min(o.openEnd(A),d.length)}else A>s&&(r.span(s,A,o.active,c),c=o.openEnd(A));if(o.to>a)return c+(o.point&&o.to>a?1:0);s=o.to,o.next()}}static of(e,n=!1){let a=new Zn;for(let r of e instanceof jl?[e]:n?iH(e):e)a.add(r.from,r.to,r.value);return a.finish()}static join(e){if(!e.length)return t.empty;let n=e[e.length-1];for(let a=e.length-2;a>=0;a--)for(let r=e[a];r!=t.empty;r=r.nextLayer)n=new t(r.chunkPos,r.chunk,n,Math.max(r.maxPoint,n.maxPoint));return n}};xe.empty=new xe([],[],null,-1);function iH(t){if(t.length>1)for(let e=t[0],n=1;n<t.length;n++){let a=t[n];if(Fw(e,a)>0)return t.slice().sort(Fw);e=a}return t}xe.empty.nextLayer=xe.empty;var Zn=class t{finishChunk(e){this.chunks.push(new Sw(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,e&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(e,n,a){this.addInner(e,n,a)||(this.nextLayer||(this.nextLayer=new t)).add(e,n,a)}addInner(e,n,a){let r=e-this.lastTo||a.startSide-this.last.endSide;if(r<=0&&(e-this.lastFrom||a.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return r<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(n-this.chunkStart),this.last=a,this.lastFrom=e,this.lastTo=n,this.value.push(a),a.point&&(this.maxPoint=Math.max(this.maxPoint,n-e)),!0)}addChunk(e,n){if((e-this.lastTo||n.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,n.maxPoint),this.chunks.push(n),this.chunkPos.push(e);let a=n.value.length-1;return this.last=n.value[a],this.lastFrom=n.from[a]+e,this.lastTo=n.to[a]+e,!0}finish(){return this.finishInner(xe.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let n=xe.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,n}};function iI(t,e,n){let a=new Map;for(let i of t)for(let o=0;o<i.chunk.length;o++)i.chunk[o].maxPoint<=0&&a.set(i.chunk[o],i.chunkPos[o]);let r=new Set;for(let i of e)for(let o=0;o<i.chunk.length;o++){let s=a.get(i.chunk[o]);s!=null&&(n?n.mapPos(s):s)==i.chunkPos[o]&&!n?.touchesRange(s,s+i.chunk[o].length)&&r.add(i.chunk[o])}return r}var Rp=class{constructor(e,n,a,r=0){this.layer=e,this.skip=n,this.minPoint=a,this.rank=r}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(e,n=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(e,n,!1),this}gotoInner(e,n,a){for(;this.chunkIndex<this.layer.chunk.length;){let r=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(r)||this.layer.chunkEnd(this.chunkIndex)<e||r.maxPoint<this.minPoint))break;this.chunkIndex++,a=!1}if(this.chunkIndex<this.layer.chunk.length){let r=this.layer.chunk[this.chunkIndex].findIndex(e-this.layer.chunkPos[this.chunkIndex],n,!0);(!a||this.rangeIndex<r)&&this.setRangeIndex(r)}this.next()}forward(e,n){(this.to-e||this.endSide-n)<0&&this.gotoInner(e,n,!0)}next(){for(;;)if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}else{let e=this.layer.chunkPos[this.chunkIndex],n=this.layer.chunk[this.chunkIndex],a=e+n.from[this.rangeIndex];if(this.from=a,this.to=e+n.to[this.rangeIndex],this.value=n.value[this.rangeIndex],this.setRangeIndex(this.rangeIndex+1),this.minPoint<0||this.value.point&&this.to-this.from>=this.minPoint)break}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex<this.layer.chunk.length&&this.skip.has(this.layer.chunk[this.chunkIndex]);)this.chunkIndex++;this.rangeIndex=0}else this.rangeIndex=e}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(e){return this.from-e.from||this.startSide-e.startSide||this.rank-e.rank||this.to-e.to||this.endSide-e.endSide}},Pl=class t{constructor(e){this.heap=e}static from(e,n=null,a=-1){let r=[];for(let i=0;i<e.length;i++)for(let o=e[i];!o.isEmpty;o=o.nextLayer)o.maxPoint>=a&&r.push(new Rp(o,n,a,i));return r.length==1?r[0]:new t(r)}get startSide(){return this.value?this.value.startSide:0}goto(e,n=-1e9){for(let a of this.heap)a.goto(e,n);for(let a=this.heap.length>>1;a>=0;a--)ww(this.heap,a);return this.next(),this}forward(e,n){for(let a of this.heap)a.forward(e,n);for(let a=this.heap.length>>1;a>=0;a--)ww(this.heap,a);(this.to-e||this.value.endSide-n)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),ww(this.heap,0)}}};function ww(t,e){for(let n=t[e];;){let a=(e<<1)+1;if(a>=t.length)break;let r=t[a];if(a+1<t.length&&r.compare(t[a+1])>=0&&(r=t[a+1],a++),n.compare(r)<0)break;t[a]=n,t[e]=r,e=a}}var ko=class{constructor(e,n,a){this.minPoint=a,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=Pl.from(e,n,a)}goto(e,n=-1e9){return this.cursor.goto(e,n),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=n,this.openStart=-1,this.next(),this}forward(e,n){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-n)<0;)this.removeActive(this.minActive);this.cursor.forward(e,n)}removeActive(e){Qp(this.active,e),Qp(this.activeTo,e),Qp(this.activeRank,e),this.minActive=sI(this.active,this.activeTo)}addActive(e){let n=0,{value:a,to:r,rank:i}=this.cursor;for(;n<this.activeRank.length&&(i-this.activeRank[n]||r-this.activeTo[n])>0;)n++;Ip(this.active,n,a),Ip(this.activeTo,n,r),Ip(this.activeRank,n,i),e&&Ip(e,n,this.cursor.from),this.minActive=sI(this.active,this.activeTo)}next(){let e=this.to,n=this.point;this.point=null;let a=this.openStart<0?[]:null;for(;;){let r=this.minActive;if(r>-1&&(this.activeTo[r]-this.cursor.from||this.active[r].endSide-this.cursor.startSide)<0){if(this.activeTo[r]>e){this.to=this.activeTo[r],this.endSide=this.active[r].endSide;break}this.removeActive(r),a&&Qp(a,r)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let i=this.cursor.value;if(!i.point)this.addActive(a),this.cursor.next();else if(n&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)this.cursor.next();else{this.point=i,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=i.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}}else{this.to=this.endSide=1e9;break}}if(a){this.openStart=0;for(let r=a.length-1;r>=0&&a[r]<e;r--)this.openStart++}}activeForPoint(e){if(!this.active.length)return this.active;let n=[];for(let a=this.active.length-1;a>=0&&!(this.activeRank[a]<this.pointRank);a--)(this.activeTo[a]>e||this.activeTo[a]==e&&this.active[a].endSide>=this.point.endSide)&&n.push(this.active[a]);return n.reverse()}openEnd(e){let n=0;for(let a=this.activeTo.length-1;a>=0&&this.activeTo[a]>e;a--)n++;return n}};function oI(t,e,n,a,r,i){t.goto(e),n.goto(a);let o=a+r,s=a,c=a-e,A=!!i.boundChange;for(let d=!1;;){let u=t.to+c-n.to,p=u||t.endSide-n.endSide,m=p<0?t.to+c:n.to,f=Math.min(m,o);if(t.point||n.point?(t.point&&n.point&&$w(t.point,n.point)&&Ow(t.activeForPoint(t.to),n.activeForPoint(n.to))||i.comparePoint(s,f,t.point,n.point),d=!1):(d&&i.boundChange(s),f>s&&!Ow(t.active,n.active)&&i.compareRange(s,f,t.active,n.active),A&&f<o&&(u||t.openEnd(m)!=n.openEnd(m))&&(d=!0)),m>o)break;s=m,p<=0&&t.next(),p>=0&&n.next()}}function Ow(t,e){if(t.length!=e.length)return!1;for(let n=0;n<t.length;n++)if(t[n]!=e[n]&&!$w(t[n],e[n]))return!1;return!0}function Qp(t,e){for(let n=e,a=t.length-1;n<a;n++)t[n]=t[n+1];t.pop()}function Ip(t,e,n){for(let a=t.length-1;a>=e;a--)t[a+1]=t[a];t[e]=n}function sI(t,e){let n=-1,a=1e9;for(let r=0;r<e.length;r++)(e[r]-a||t[r].endSide-t[n].endSide)<0&&(n=r,a=e[r]);return n}function dn(t,e,n=t.length){let a=0;for(let r=0;r<n&&r<t.length;)t.charCodeAt(r)==9?(a+=e-a%e,r++):(a++,r=dt(t,r));return a}function jp(t,e,n,a){for(let r=0,i=0;;){if(i>=e)return r;if(r==t.length)break;i+=t.charCodeAt(r)==9?n-i%n:1,r=dt(t,r)}return a===!0?-1:t.length}var Rw="\u037C",hI=typeof Symbol>"u"?"__"+Rw:Symbol.for(Rw),jw=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),yI=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{},ha=class{constructor(e,n){this.rules=[];let{finish:a}=n||{};function r(o){return/^@/.test(o)?[o]:o.split(/,\s*/)}function i(o,s,c,A){let d=[],u=/^@(\w+)\b/.exec(o[0]),p=u&&u[1]=="keyframes";if(u&&s==null)return c.push(o[0]+";");for(let m in s){let f=s[m];if(/&/.test(m))i(m.split(/,\s*/).map(h=>o.map(w=>h.replace(/&/,w))).reduce((h,w)=>h.concat(w)),f,c);else if(f&&typeof f=="object"){if(!u)throw new RangeError("The value of a property ("+m+") should be a primitive value.");i(r(m),f,d,p)}else f!=null&&d.push(m.replace(/_.*/,"").replace(/[A-Z]/g,h=>"-"+h.toLowerCase())+": "+f+";")}(d.length||p)&&c.push((a&&!u&&!A?o.map(a):o).join(", ")+" {"+d.join(" ")+"}")}for(let o in e)i(r(o),e[o],this.rules)}getRules(){return this.rules.join(` +`)}static newName(){let e=yI[hI]||1;return yI[hI]=e+1,Rw+e.toString(36)}static mount(e,n,a){let r=e[jw],i=a&&a.nonce;r?i&&r.setNonce(i):r=new Pw(e,i),r.mount(Array.isArray(n)?n:[n],e)}},wI=new Map,Pw=class{constructor(e,n){let a=e.ownerDocument||e,r=a.defaultView;if(!e.head&&e.adoptedStyleSheets&&r.CSSStyleSheet){let i=wI.get(a);if(i)return e[jw]=i;this.sheet=new r.CSSStyleSheet,wI.set(a,this)}else this.styleTag=a.createElement("style"),n&&this.styleTag.setAttribute("nonce",n);this.modules=[],e[jw]=this}mount(e,n){let a=this.sheet,r=0,i=0;for(let o=0;o<e.length;o++){let s=e[o],c=this.modules.indexOf(s);if(c<i&&c>-1&&(this.modules.splice(c,1),i--,c=-1),c==-1){if(this.modules.splice(i++,0,s),a)for(let A=0;A<s.rules.length;A++)a.insertRule(s.rules[A],r++)}else{for(;i<c;)r+=this.modules[i++].rules.length;r+=s.rules.length,i++}}if(a)n.adoptedStyleSheets.indexOf(this.sheet)<0&&(n.adoptedStyleSheets=[this.sheet,...n.adoptedStyleSheets]);else{let o="";for(let c=0;c<this.modules.length;c++)o+=this.modules[c].getRules()+` +`;this.styleTag.textContent=o;let s=n.head||n;this.styleTag.parentNode!=s&&s.insertBefore(this.styleTag,s.firstChild)}}setNonce(e){this.styleTag&&this.styleTag.getAttribute("nonce")!=e&&this.styleTag.setAttribute("nonce",e)}};var Nr={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},Hs={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},oH=typeof navigator<"u"&&/Mac/.test(navigator.platform),sH=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(Ct=0;Ct<10;Ct++)Nr[48+Ct]=Nr[96+Ct]=String(Ct);var Ct;for(Ct=1;Ct<=24;Ct++)Nr[Ct+111]="F"+Ct;var Ct;for(Ct=65;Ct<=90;Ct++)Nr[Ct]=String.fromCharCode(Ct+32),Hs[Ct]=String.fromCharCode(Ct);var Ct;for(Pp in Nr)Hs.hasOwnProperty(Pp)||(Hs[Pp]=Nr[Pp]);var Pp;function kI(t){var e=oH&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||sH&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified",n=!e&&t.key||(t.shiftKey?Hs:Nr)[t.keyCode]||t.key||"Unidentified";return n=="Esc"&&(n="Escape"),n=="Del"&&(n="Delete"),n=="Left"&&(n="ArrowLeft"),n=="Up"&&(n="ArrowUp"),n=="Right"&&(n="ArrowRight"),n=="Down"&&(n="ArrowDown"),n}function Se(){var t=arguments[0];typeof t=="string"&&(t=document.createElement(t));var e=1,n=arguments[1];if(n&&typeof n=="object"&&n.nodeType==null&&!Array.isArray(n)){for(var a in n)if(Object.prototype.hasOwnProperty.call(n,a)){var r=n[a];typeof r=="string"?t.setAttribute(a,r):r!=null&&(t[a]=r)}e++}for(;e<arguments.length;e++)CI(t,arguments[e]);return t}function CI(t,e){if(typeof e=="string")t.appendChild(document.createTextNode(e));else if(e!=null)if(e.nodeType!=null)t.appendChild(e);else if(Array.isArray(e))for(var n=0;n<e.length;n++)CI(t,e[n]);else throw new RangeError("Unsupported child node: "+e)}var un=typeof navigator<"u"?navigator:{userAgent:"",vendor:"",platform:""},Yw=typeof document<"u"?document:{documentElement:{style:{}}},Ww=/Edge\/(\d+)/.exec(un.userAgent),sD=/MSIE \d/.test(un.userAgent),Kw=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(un.userAgent),hm=!!(sD||Kw||Ww),_I=!hm&&/gecko\/(\d+)/i.test(un.userAgent),Mw=!hm&&/Chrome\/(\d+)/.exec(un.userAgent),BI="webkitFontSmoothing"in Yw.documentElement.style,Jw=!hm&&/Apple Computer/.test(un.vendor),xI=Jw&&(/Mobile\/\w+/.test(un.userAgent)||un.maxTouchPoints>2),H={mac:xI||/Mac/.test(un.platform),windows:/Win/.test(un.platform),linux:/Linux|X11/.test(un.platform),ie:hm,ie_version:sD?Yw.documentMode||6:Kw?+Kw[1]:Ww?+Ww[1]:0,gecko:_I,gecko_version:_I?+(/Firefox\/(\d+)/.exec(un.userAgent)||[0,0])[1]:0,chrome:!!Mw,chrome_version:Mw?+Mw[1]:0,ios:xI,android:/Android\b/.test(un.userAgent),webkit:BI,webkit_version:BI?+(/\bAppleWebKit\/(\d+)/.exec(un.userAgent)||[0,0])[1]:0,safari:Jw,safari_version:Jw?+(/\bVersion\/(\d+(\.\d+)?)/.exec(un.userAgent)||[0,0])[1]:0,tabSize:Yw.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function qk(t,e){for(let n in t)n=="class"&&e.class?e.class+=" "+t.class:n=="style"&&e.style?e.style+=";"+t.style:e[n]=t[n];return e}var tm=Object.create(null);function Gk(t,e,n){if(t==e)return!0;t||(t=tm),e||(e=tm);let a=Object.keys(t),r=Object.keys(e);if(a.length-(n&&a.indexOf(n)>-1?1:0)!=r.length-(n&&r.indexOf(n)>-1?1:0))return!1;for(let i of a)if(i!=n&&(r.indexOf(i)==-1||t[i]!==e[i]))return!1;return!0}function cH(t,e){for(let n=t.attributes.length-1;n>=0;n--){let a=t.attributes[n].name;e[a]==null&&t.removeAttribute(a)}for(let n in e){let a=e[n];n=="style"?t.style.cssText=a:t.getAttribute(n)!=a&&t.setAttribute(n,a)}}function vI(t,e,n){let a=!1;if(e)for(let r in e)n&&r in n||(a=!0,r=="style"?t.style.cssText="":t.removeAttribute(r));if(n)for(let r in n)e&&e[r]==n[r]||(a=!0,r=="style"?t.style.cssText=n[r]:t.setAttribute(r,n[r]));return a}function lH(t){let e=Object.create(null);for(let n=0;n<t.attributes.length;n++){let a=t.attributes[n];e[a.name]=a.value}return e}var pn=class{eq(e){return!1}updateDOM(e,n){return!1}compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}get estimatedHeight(){return-1}get lineBreaks(){return 0}ignoreEvent(e){return!0}coordsAt(e,n,a){return null}get isHidden(){return!1}get editable(){return!1}destroy(e){}},Ut=function(t){return t[t.Text=0]="Text",t[t.WidgetBefore=1]="WidgetBefore",t[t.WidgetAfter=2]="WidgetAfter",t[t.WidgetRange=3]="WidgetRange",t}(Ut||(Ut={})),X=class extends ba{constructor(e,n,a,r){super(),this.startSide=e,this.endSide=n,this.widget=a,this.spec=r}get heightRelevant(){return!1}static mark(e){return new Xl(e)}static widget(e){let n=Math.max(-1e4,Math.min(1e4,e.side||0)),a=!!e.block;return n+=a&&!e.inlineOrder?n>0?3e8:-4e8:n>0?1e8:-1e8,new vo(e,n,n,a,e.widget||null,!1)}static replace(e){let n=!!e.block,a,r;if(e.isBlockGap)a=-5e8,r=4e8;else{let{start:i,end:o}=cD(e,n);a=(i?n?-3e8:-1:5e8)-1,r=(o?n?2e8:1:-6e8)+1}return new vo(e,a,r,n,e.widget||null,!0)}static line(e){return new eA(e)}static set(e,n=!1){return xe.of(e,n)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}};X.none=xe.empty;var Xl=class t extends X{constructor(e){let{start:n,end:a}=cD(e);super(n?-1:5e8,a?1:-6e8,null,e),this.tagName=e.tagName||"span",this.attrs=e.class&&e.attributes?qk(e.attributes,{class:e.class}):e.class?{class:e.class}:e.attributes||tm}eq(e){return this==e||e instanceof t&&this.tagName==e.tagName&&Gk(this.attrs,e.attrs)}range(e,n=e){if(e>=n)throw new RangeError("Mark decorations may not be empty");return super.range(e,n)}};Xl.prototype.point=!1;var eA=class t extends X{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof t&&this.spec.class==e.spec.class&&Gk(this.spec.attributes,e.spec.attributes)}range(e,n=e){if(n!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,n)}};eA.prototype.mapMode=Et.TrackBefore;eA.prototype.point=!0;var vo=class t extends X{constructor(e,n,a,r,i,o){super(n,a,i,e),this.block=r,this.isReplace=o,this.mapMode=r?n<=0?Et.TrackBefore:Et.TrackAfter:Et.TrackDel}get type(){return this.startSide!=this.endSide?Ut.WidgetRange:this.startSide<=0?Ut.WidgetBefore:Ut.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof t&&AH(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,n=e){if(this.isReplace&&(e>n||e==n&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&n!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,n)}};vo.prototype.point=!0;function cD(t,e=!1){let{inclusiveStart:n,inclusiveEnd:a}=t;return n==null&&(n=t.inclusive),a==null&&(a=t.inclusive),{start:n??e,end:a??e}}function AH(t,e){return t==e||!!(t&&e&&t.compare(e))}function Js(t,e,n,a=0){let r=n.length-1;r>=0&&n[r]+a>=t?n[r]=Math.max(n[r],e):n.push(t,e)}var nm=class t extends ba{constructor(e,n){super(),this.tagName=e,this.attributes=n}eq(e){return e==this||e instanceof t&&this.tagName==e.tagName&&Gk(this.attributes,e.attributes)}static create(e){return new t(e.tagName,e.attributes||tm)}static set(e,n=!1){return xe.of(e,n)}};nm.prototype.startSide=nm.prototype.endSide=-1;function tA(t){let e;return t.nodeType==11?e=t.getSelection?t:t.ownerDocument:e=t,e.getSelection()}function Vw(t,e){return e?t==e||t.contains(e.nodeType!=1?e.parentNode:e):!1}function Wp(t,e){if(!e.anchorNode)return!1;try{return Vw(t,e.anchorNode)}catch{return!1}}function Kp(t){return t.nodeType==3?nA(t,0,t.nodeValue.length).getClientRects():t.nodeType==1?t.getClientRects():[]}function Ul(t,e,n,a){return n?EI(t,e,n,a,-1)||EI(t,e,n,a,1):!1}function Di(t){for(var e=0;;e++)if(t=t.previousSibling,!t)return e}function am(t){return t.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(t.nodeName)}function EI(t,e,n,a,r){for(;;){if(t==n&&e==a)return!0;if(e==(r<0?0:$r(t))){if(t.nodeName=="DIV")return!1;let i=t.parentNode;if(!i||i.nodeType!=1)return!1;e=Di(t)+(r<0?0:1),t=i}else if(t.nodeType==1){if(t=t.childNodes[e+(r<0?-1:0)],t.nodeType==1&&t.contentEditable=="false")return!1;e=r<0?$r(t):0}else return!1}}function $r(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function rm(t,e){let n=e?t.left:t.right;return{left:n,right:n,top:t.top,bottom:t.bottom}}function dH(t){let e=t.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:t.innerWidth,top:0,bottom:t.innerHeight}}function lD(t,e){let n=e.width/t.offsetWidth,a=e.height/t.offsetHeight;return(n>.995&&n<1.005||!isFinite(n)||Math.abs(e.width-t.offsetWidth)<1)&&(n=1),(a>.995&&a<1.005||!isFinite(a)||Math.abs(e.height-t.offsetHeight)<1)&&(a=1),{scaleX:n,scaleY:a}}function uH(t,e,n,a,r,i,o,s){let c=t.ownerDocument,A=c.defaultView||window;for(let d=t,u=!1;d&&!u;)if(d.nodeType==1){let p,m=d==c.body,f=1,h=1;if(m)p=dH(A);else{if(/^(fixed|sticky)$/.test(getComputedStyle(d).position)&&(u=!0),d.scrollHeight<=d.clientHeight&&d.scrollWidth<=d.clientWidth){d=d.assignedSlot||d.parentNode;continue}let y=d.getBoundingClientRect();({scaleX:f,scaleY:h}=lD(d,y)),p={left:y.left,right:y.left+d.clientWidth*f,top:y.top,bottom:y.top+d.clientHeight*h}}let w=0,b=0;if(r=="nearest")e.top<p.top?(b=e.top-(p.top+o),n>0&&e.bottom>p.bottom+b&&(b=e.bottom-p.bottom+o)):e.bottom>p.bottom&&(b=e.bottom-p.bottom+o,n<0&&e.top-b<p.top&&(b=e.top-(p.top+o)));else{let y=e.bottom-e.top,k=p.bottom-p.top;b=(r=="center"&&y<=k?e.top+y/2-k/2:r=="start"||r=="center"&&n<0?e.top-o:e.bottom-k+o)-p.top}if(a=="nearest"?e.left<p.left?(w=e.left-(p.left+i),n>0&&e.right>p.right+w&&(w=e.right-p.right+i)):e.right>p.right&&(w=e.right-p.right+i,n<0&&e.left<p.left+w&&(w=e.left-(p.left+i))):w=(a=="center"?e.left+(e.right-e.left)/2-(p.right-p.left)/2:a=="start"==s?e.left-i:e.right-(p.right-p.left)+i)-p.left,w||b)if(m)A.scrollBy(w,b);else{let y=0,k=0;if(b){let E=d.scrollTop;d.scrollTop+=b/h,k=(d.scrollTop-E)*h}if(w){let E=d.scrollLeft;d.scrollLeft+=w/f,y=(d.scrollLeft-E)*f}e={left:e.left-y,top:e.top-k,right:e.right-y,bottom:e.bottom-k},y&&Math.abs(y-w)<1&&(a="nearest"),k&&Math.abs(k-b)<1&&(r="nearest")}if(m)break;(e.top<p.top||e.bottom>p.bottom||e.left<p.left||e.right>p.right)&&(e={left:Math.max(e.left,p.left),right:Math.min(e.right,p.right),top:Math.max(e.top,p.top),bottom:Math.min(e.bottom,p.bottom)}),d=d.assignedSlot||d.parentNode}else if(d.nodeType==11)d=d.host;else break}function pH(t){let e=t.ownerDocument,n,a;for(let r=t.parentNode;r&&!(r==e.body||n&&a);)if(r.nodeType==1)!a&&r.scrollHeight>r.clientHeight&&(a=r),!n&&r.scrollWidth>r.clientWidth&&(n=r),r=r.assignedSlot||r.parentNode;else if(r.nodeType==11)r=r.host;else break;return{x:n,y:a}}var Xw=class{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}setRange(e){let{anchorNode:n,focusNode:a}=e;this.set(n,Math.min(e.anchorOffset,n?$r(n):0),a,Math.min(e.focusOffset,a?$r(a):0))}set(e,n,a,r){this.anchorNode=e,this.anchorOffset=n,this.focusNode=a,this.focusOffset=r}},Bo=null;H.safari&&H.safari_version>=26&&(Bo=!1);function AD(t){if(t.setActive)return t.setActive();if(Bo)return t.focus(Bo);let e=[];for(let n=t;n&&(e.push(n,n.scrollTop,n.scrollLeft),n!=n.ownerDocument);n=n.parentNode);if(t.focus(Bo==null?{get preventScroll(){return Bo={preventScroll:!0},!0}}:void 0),!Bo){Bo=!1;for(let n=0;n<e.length;){let a=e[n++],r=e[n++],i=e[n++];a.scrollTop!=r&&(a.scrollTop=r),a.scrollLeft!=i&&(a.scrollLeft=i)}}}var QI;function nA(t,e,n=e){let a=QI||(QI=document.createRange());return a.setEnd(t,n),a.setStart(t,e),a}function Vs(t,e,n,a){let r={key:e,code:e,keyCode:n,which:n,cancelable:!0};a&&({altKey:r.altKey,ctrlKey:r.ctrlKey,shiftKey:r.shiftKey,metaKey:r.metaKey}=a);let i=new KeyboardEvent("keydown",r);i.synthetic=!0,t.dispatchEvent(i);let o=new KeyboardEvent("keyup",r);return o.synthetic=!0,t.dispatchEvent(o),i.defaultPrevented||o.defaultPrevented}function mH(t){for(;t;){if(t&&(t.nodeType==9||t.nodeType==11&&t.host))return t;t=t.assignedSlot||t.parentNode}return null}function gH(t,e){let n=e.focusNode,a=e.focusOffset;if(!n||e.anchorNode!=n||e.anchorOffset!=a)return!1;for(a=Math.min(a,$r(n));;)if(a){if(n.nodeType!=1)return!1;let r=n.childNodes[a-1];r.contentEditable=="false"?a--:(n=r,a=$r(n))}else{if(n==t)return!0;a=Di(n),n=n.parentNode}}function dD(t){return t.scrollTop>Math.max(1,t.scrollHeight-t.clientHeight-4)}function uD(t,e){for(let n=t,a=e;;){if(n.nodeType==3&&a>0)return{node:n,offset:a};if(n.nodeType==1&&a>0){if(n.contentEditable=="false")return null;n=n.childNodes[a-1],a=$r(n)}else if(n.parentNode&&!am(n))a=Di(n),n=n.parentNode;else return null}}function pD(t,e){for(let n=t,a=e;;){if(n.nodeType==3&&a<n.nodeValue.length)return{node:n,offset:a};if(n.nodeType==1&&a<n.childNodes.length){if(n.contentEditable=="false")return null;n=n.childNodes[a],a=0}else if(n.parentNode&&!am(n))a=Di(n)+1,n=n.parentNode;else return null}}var Ar=class t{constructor(e,n,a=!0){this.node=e,this.offset=n,this.precise=a}static before(e,n){return new t(e.parentNode,Di(e),n)}static after(e,n){return new t(e.parentNode,Di(e)+1,n)}},Oe=function(t){return t[t.LTR=0]="LTR",t[t.RTL=1]="RTL",t}(Oe||(Oe={})),Eo=Oe.LTR,zk=Oe.RTL;function mD(t){let e=[];for(let n=0;n<t.length;n++)e.push(1<<+t[n]);return e}var fH=mD("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),bH=mD("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),ek=Object.create(null),lr=[];for(let t of["()","[]","{}"]){let e=t.charCodeAt(0),n=t.charCodeAt(1);ek[e]=n,ek[n]=-e}function gD(t){return t<=247?fH[t]:1424<=t&&t<=1524?2:1536<=t&&t<=1785?bH[t-1536]:1774<=t&&t<=2220?4:8192<=t&&t<=8204?256:64336<=t&&t<=65023?4:1}var hH=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/,qa=class{get dir(){return this.level%2?zk:Eo}constructor(e,n,a){this.from=e,this.to=n,this.level=a}side(e,n){return this.dir==n==e?this.to:this.from}forward(e,n){return e==(this.dir==n)}static find(e,n,a,r){let i=-1;for(let o=0;o<e.length;o++){let s=e[o];if(s.from<=n&&s.to>=n){if(s.level==a)return o;(i<0||(r!=0?r<0?s.from<n:s.to>n:e[i].level>s.level))&&(i=o)}}if(i<0)throw new RangeError("Index out of range");return i}};function fD(t,e){if(t.length!=e.length)return!1;for(let n=0;n<t.length;n++){let a=t[n],r=e[n];if(a.from!=r.from||a.to!=r.to||a.direction!=r.direction||!fD(a.inner,r.inner))return!1}return!0}var qe=[];function yH(t,e,n,a,r){for(let i=0;i<=a.length;i++){let o=i?a[i-1].to:e,s=i<a.length?a[i].from:n,c=i?256:r;for(let A=o,d=c,u=c;A<s;A++){let p=gD(t.charCodeAt(A));p==512?p=d:p==8&&u==4&&(p=16),qe[A]=p==4?2:p,p&7&&(u=p),d=p}for(let A=o,d=c,u=c;A<s;A++){let p=qe[A];if(p==128)A<s-1&&d==qe[A+1]&&d&24?p=qe[A]=d:qe[A]=256;else if(p==64){let m=A+1;for(;m<s&&qe[m]==64;)m++;let f=A&&d==8||m<n&&qe[m]==8?u==1?1:8:256;for(let h=A;h<m;h++)qe[h]=f;A=m-1}else p==8&&u==1&&(qe[A]=1);d=p,p&7&&(u=p)}}}function wH(t,e,n,a,r){let i=r==1?2:1;for(let o=0,s=0,c=0;o<=a.length;o++){let A=o?a[o-1].to:e,d=o<a.length?a[o].from:n;for(let u=A,p,m,f;u<d;u++)if(m=ek[p=t.charCodeAt(u)])if(m<0){for(let h=s-3;h>=0;h-=3)if(lr[h+1]==-m){let w=lr[h+2],b=w&2?r:w&4?w&1?i:r:0;b&&(qe[u]=qe[lr[h]]=b),s=h;break}}else{if(lr.length==189)break;lr[s++]=u,lr[s++]=p,lr[s++]=c}else if((f=qe[u])==2||f==1){let h=f==r;c=h?0:1;for(let w=s-3;w>=0;w-=3){let b=lr[w+2];if(b&2)break;if(h)lr[w+2]|=2;else{if(b&4)break;lr[w+2]|=4}}}}}function kH(t,e,n,a){for(let r=0,i=a;r<=n.length;r++){let o=r?n[r-1].to:t,s=r<n.length?n[r].from:e;for(let c=o;c<s;){let A=qe[c];if(A==256){let d=c+1;for(;;)if(d==s){if(r==n.length)break;d=n[r++].to,s=r<n.length?n[r].from:e}else if(qe[d]==256)d++;else break;let u=i==1,p=(d<e?qe[d]:a)==1,m=u==p?u?1:2:a;for(let f=d,h=r,w=h?n[h-1].to:t;f>c;)f==w&&(f=n[--h].from,w=h?n[h-1].to:t),qe[--f]=m;c=d}else i=A,c++}}}function tk(t,e,n,a,r,i,o){let s=a%2?2:1;if(a%2==r%2)for(let c=e,A=0;c<n;){let d=!0,u=!1;if(A==i.length||c<i[A].from){let h=qe[c];h!=s&&(d=!1,u=h==16)}let p=!d&&s==1?[]:null,m=d?a:a+1,f=c;e:for(;;)if(A<i.length&&f==i[A].from){if(u)break e;let h=i[A];if(!d)for(let w=h.to,b=A+1;;){if(w==n)break e;if(b<i.length&&i[b].from==w)w=i[b++].to;else{if(qe[w]==s)break e;break}}if(A++,p)p.push(h);else{h.from>c&&o.push(new qa(c,h.from,m));let w=h.direction==Eo!=!(m%2);nk(t,w?a+1:a,r,h.inner,h.from,h.to,o),c=h.to}f=h.to}else{if(f==n||(d?qe[f]!=s:qe[f]==s))break;f++}p?tk(t,c,f,a+1,r,p,o):c<f&&o.push(new qa(c,f,m)),c=f}else for(let c=n,A=i.length;c>e;){let d=!0,u=!1;if(!A||c>i[A-1].to){let h=qe[c-1];h!=s&&(d=!1,u=h==16)}let p=!d&&s==1?[]:null,m=d?a:a+1,f=c;e:for(;;)if(A&&f==i[A-1].to){if(u)break e;let h=i[--A];if(!d)for(let w=h.from,b=A;;){if(w==e)break e;if(b&&i[b-1].to==w)w=i[--b].from;else{if(qe[w-1]==s)break e;break}}if(p)p.push(h);else{h.to<c&&o.push(new qa(h.to,c,m));let w=h.direction==Eo!=!(m%2);nk(t,w?a+1:a,r,h.inner,h.from,h.to,o),c=h.from}f=h.from}else{if(f==e||(d?qe[f-1]!=s:qe[f-1]==s))break;f--}p?tk(t,f,c,a+1,r,p,o):f<c&&o.push(new qa(f,c,m)),c=f}}function nk(t,e,n,a,r,i,o){let s=e%2?2:1;yH(t,r,i,a,s),wH(t,r,i,a,s),kH(r,i,a,s),tk(t,r,i,e,n,a,o)}function CH(t,e,n){if(!t)return[new qa(0,0,e==zk?1:0)];if(e==Eo&&!n.length&&!hH.test(t))return bD(t.length);if(n.length)for(;t.length>qe.length;)qe[qe.length]=256;let a=[],r=e==Eo?0:1;return nk(t,r,r,n,0,t.length,a),a}function bD(t){return[new qa(0,t,0)]}var hD="";function _H(t,e,n,a,r){var i;let o=a.head-t.from,s=qa.find(e,o,(i=a.bidiLevel)!==null&&i!==void 0?i:-1,a.assoc),c=e[s],A=c.side(r,n);if(o==A){let p=s+=r?1:-1;if(p<0||p>=e.length)return null;c=e[s=p],o=c.side(!r,n),A=c.side(r,n)}let d=dt(t.text,o,c.forward(r,n));(d<c.from||d>c.to)&&(d=A),hD=t.text.slice(Math.min(o,d),Math.max(o,d));let u=s==(r?e.length-1:0)?null:e[s+(r?1:-1)];return u&&d==A&&u.level+(r?0:1)<c.level?L.cursor(u.side(!r,n)+t.from,u.forward(r,n)?1:-1,u.level):L.cursor(d+t.from,c.forward(r,n)?-1:1,c.level)}function BH(t,e,n){for(let a=e;a<n;a++){let r=gD(t.charCodeAt(a));if(r==1)return Eo;if(r==2||r==4)return zk}return Eo}var yD=G.define(),wD=G.define(),kD=G.define(),CD=G.define(),ak=G.define(),_D=G.define(),BD=G.define(),Uk=G.define(),Hk=G.define(),xD=G.define({combine:t=>t.some(e=>e)}),vD=G.define({combine:t=>t.some(e=>e)}),ED=G.define(),Hl=class t{constructor(e,n="nearest",a="nearest",r=5,i=5,o=!1){this.range=e,this.y=n,this.x=a,this.yMargin=r,this.xMargin=i,this.isSnapshot=o}map(e){return e.empty?this:new t(this.range.map(e),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(e){return this.range.to<=e.doc.length?this:new t(L.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}},Mp=ie.define({map:(t,e)=>t.map(e)}),QD=ie.define();function zt(t,e,n){let a=t.facet(CD);a.length?a[0](e):window.onerror&&window.onerror(String(e),n,void 0,void 0,e)||(n?console.error(n+":",e):console.error(e))}var Lr=G.define({combine:t=>t.length?t[0]:!0}),xH=0,Zs=G.define({combine(t){return t.filter((e,n)=>{for(let a=0;a<n;a++)if(t[a].plugin==e.plugin)return!1;return!0})}}),lt=class t{constructor(e,n,a,r,i){this.id=e,this.create=n,this.domEventHandlers=a,this.domEventObservers=r,this.baseExtensions=i(this),this.extension=this.baseExtensions.concat(Zs.of({plugin:this,arg:void 0}))}of(e){return this.baseExtensions.concat(Zs.of({plugin:this,arg:e}))}static define(e,n){let{eventHandlers:a,eventObservers:r,provide:i,decorations:o}=n||{};return new t(xH++,e,a,r,s=>{let c=[];return o&&c.push(aA.of(A=>{let d=A.plugin(s);return d?o(d):X.none})),i&&c.push(i(s)),c})}static fromClass(e,n){return t.define((a,r)=>new e(a,r),n)}},Zl=class{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(e){if(this.value){if(this.mustUpdate){let n=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(n)}catch(a){if(zt(n.state,a,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch{}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(e,this.spec.arg)}catch(n){zt(e.state,n,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var n;if(!((n=this.value)===null||n===void 0)&&n.destroy)try{this.value.destroy()}catch(a){zt(e.state,a,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}},ID=G.define(),Zk=G.define(),aA=G.define(),DD=G.define(),FD=G.define(),oA=G.define(),SD=G.define();function II(t,e){let n=t.state.facet(SD);if(!n.length)return n;let a=n.map(i=>i instanceof Function?i(t):i),r=[];return xe.spans(a,e.from,e.to,{point(){},span(i,o,s,c){let A=i-e.from,d=o-e.from,u=r;for(let p=s.length-1;p>=0;p--,c--){let m=s[p].spec.bidiIsolate,f;if(m==null&&(m=BH(e.text,A,d)),c>0&&u.length&&(f=u[u.length-1]).to==A&&f.direction==m)f.to=d,u=f.inner;else{let h={from:A,to:d,direction:m,inner:[]};u.push(h),u=h.inner}}}}),r}var OD=G.define();function Yk(t){let e=0,n=0,a=0,r=0;for(let i of t.state.facet(OD)){let o=i(t);o&&(o.left!=null&&(e=Math.max(e,o.left)),o.right!=null&&(n=Math.max(n,o.right)),o.top!=null&&(a=Math.max(a,o.top)),o.bottom!=null&&(r=Math.max(r,o.bottom)))}return{left:e,right:n,top:a,bottom:r}}var Tl=G.define(),Ga=class t{constructor(e,n,a,r){this.fromA=e,this.toA=n,this.fromB=a,this.toB=r}join(e){return new t(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let n=e.length,a=this;for(;n>0;n--){let r=e[n-1];if(!(r.fromA>a.toA)){if(r.toA<a.fromA)break;a=a.join(r),e.splice(n-1,1)}}return e.splice(n,0,a),e}static extendWithRanges(e,n){if(n.length==0)return e;let a=[];for(let r=0,i=0,o=0;;){let s=r<e.length?e[r].fromB:1e9,c=i<n.length?n[i]:1e9,A=Math.min(s,c);if(A==1e9)break;let d=A+o,u=A,p=d;for(;;)if(i<n.length&&n[i]<=u){let m=n[i+1];i+=2,u=Math.max(u,m);for(let f=r;f<e.length&&e[f].fromB<=u;f++)o=e[f].toA-e[f].toB;p=Math.max(p,m+o)}else if(r<e.length&&e[r].fromB<=u){let m=e[r++];u=Math.max(u,m.toB),p=Math.max(p,m.toA),o=m.toA-m.toB}else break;a.push(new t(d,p,A,u))}return a}},im=class t{constructor(e,n,a){this.view=e,this.state=n,this.transactions=a,this.flags=0,this.startState=e.state,this.changes=An.empty(this.startState.doc.length);for(let i of a)this.changes=this.changes.compose(i.changes);let r=[];this.changes.iterChangedRanges((i,o,s,c)=>r.push(new Ga(i,o,s,c))),this.changedRanges=r}static create(e,n,a){return new t(e,n,a)}get viewportChanged(){return(this.flags&4)>0}get viewportMoved(){return(this.flags&8)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&18)>0}get focusChanged(){return(this.flags&1)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(e=>e.selection)}get empty(){return this.flags==0&&this.transactions.length==0}},vH=[],ut=class{constructor(e,n,a=0){this.dom=e,this.length=n,this.flags=a,this.parent=null,e.cmTile=this}get breakAfter(){return this.flags&1}get children(){return vH}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(e){if(this.flags|=2,this.flags&4){this.flags&=-5;let n=this.domAttrs;n&&cH(this.dom,n)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(e){this.dom=e,e.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e,n=this.posAtStart){let a=n;for(let r of this.children){if(r==e)return a;a+=r.length+r.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}covers(e){return!0}coordsIn(e,n){return null}domPosFor(e,n){let a=Di(this.dom),r=this.length?e>0:n>0;return new Ar(this.parent.dom,a+(r?1:0),e==0||e==this.length)}markDirty(e){this.flags&=-3,e&&(this.flags|=4),this.parent&&this.parent.flags&2&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let e=this;e;e=e.parent)if(e instanceof ec)return e;return null}static get(e){return e.cmTile}},Xs=class extends ut{constructor(e){super(e,0),this._children=[]}isComposite(){return!0}get children(){return this._children}get lastChild(){return this.children.length?this.children[this.children.length-1]:null}append(e){this.children.push(e),e.parent=this}sync(e){if(this.flags&2)return;super.sync(e);let n=this.dom,a=null,r,i=e?.node==n?e:null,o=0;for(let s of this.children){if(s.sync(e),o+=s.length+s.breakAfter,r=a?a.nextSibling:n.firstChild,i&&r!=s.dom&&(i.written=!0),s.dom.parentNode==n)for(;r&&r!=s.dom;)r=DI(r);else n.insertBefore(s.dom,r);a=s.dom}for(r=a?a.nextSibling:n.firstChild,i&&r&&(i.written=!0);r;)r=DI(r);this.length=o}};function DI(t){let e=t.nextSibling;return t.parentNode.removeChild(t),e}var ec=class extends Xs{constructor(e,n){super(n),this.view=e}owns(e){for(;e;e=e.parent)if(e==this)return!0;return!1}isBlock(){return!0}nearest(e){for(;;){if(!e)return null;let n=ut.get(e);if(n&&this.owns(n))return n;e=e.parentNode}}blockTiles(e){for(let n=[],a=this,r=0,i=0;;)if(r==a.children.length){if(!n.length)return;a=a.parent,a.breakAfter&&i++,r=n.pop()}else{let o=a.children[r++];if(o instanceof Qi)n.push(r),a=o,r=0;else{let s=i+o.length,c=e(o,i);if(c!==void 0)return c;i=s+o.breakAfter}}}resolveBlock(e,n){let a,r=-1,i,o=-1;if(this.blockTiles((s,c)=>{let A=c+s.length;if(e>=c&&e<=A){if(s.isWidget()&&n>=-1&&n<=1){if(s.flags&32)return!0;s.flags&16&&(a=void 0)}(c<e||e==A&&(n<-1?s.length:s.covers(1)))&&(!a||!s.isWidget()&&a.isWidget())&&(a=s,r=e-c),(A>e||e==c&&(n>1?s.length:s.covers(-1)))&&(!i||!s.isWidget()&&i.isWidget())&&(i=s,o=e-c)}}),!a&&!i)throw new Error("No tile at position "+e);return a&&n<0||!i?{tile:a,offset:r}:{tile:i,offset:o}}},Qi=class t extends Xs{constructor(e,n){super(e),this.wrapper=n}isBlock(){return!0}covers(e){return this.children.length?e<0?this.children[0].covers(-1):this.lastChild.covers(1):!1}get domAttrs(){return this.wrapper.attributes}static of(e,n){let a=new t(n||document.createElement(e.tagName),e);return n||(a.flags|=4),a}},tc=class t extends Xs{constructor(e,n){super(e),this.attrs=n}isLine(){return!0}static start(e,n,a){let r=new t(n||document.createElement("div"),e);return(!n||!a)&&(r.flags|=4),r}get domAttrs(){return this.attrs}resolveInline(e,n,a){let r=null,i=-1,o=null,s=-1;function c(d,u){for(let p=0,m=0;p<d.children.length&&m<=u;p++){let f=d.children[p],h=m+f.length;h>=u&&(f.isComposite()?c(f,u-m):(!o||o.isHidden&&(n>0||a&&QH(o,f)))&&(h>u||f.flags&32)?(o=f,s=u-m):(m<u||f.flags&16&&!f.isHidden)&&(r=f,i=u-m)),m=h}}c(this,e);let A=(n<0?r:o)||r||o;return A?{tile:A,offset:A==r?i:s}:null}coordsIn(e,n){let a=this.resolveInline(e,n,!0);return a?a.tile.coordsIn(Math.max(0,a.offset),n):EH(this)}domIn(e,n){let a=this.resolveInline(e,n);if(a){let{tile:r,offset:i}=a;if(this.dom.contains(r.dom))return r.isText()?new Ar(r.dom,Math.min(r.dom.nodeValue.length,i)):r.domPosFor(i,r.flags&16?1:r.flags&32?-1:n);let o=a.tile.parent,s=!1;for(let c of o.children){if(s)return new Ar(c.dom,0);c==a.tile&&(s=!0)}}return new Ar(this.dom,0)}};function EH(t){let e=t.dom.lastChild;if(!e)return t.dom.getBoundingClientRect();let n=Kp(e);return n[n.length-1]||null}function QH(t,e){let n=t.coordsIn(0,1),a=e.coordsIn(0,1);return n&&a&&a.top<n.bottom}var Dn=class t extends Xs{constructor(e,n){super(e),this.mark=n}get domAttrs(){return this.mark.attrs}static of(e,n){let a=new t(n||document.createElement(e.tagName),e);return n||(a.flags|=4),a}},xo=class t extends ut{constructor(e,n){super(e,n.length),this.text=n}sync(e){this.flags&2||(super.sync(e),this.dom.nodeValue!=this.text&&(e&&e.node==this.dom&&(e.written=!0),this.dom.nodeValue=this.text))}isText(){return!0}toString(){return JSON.stringify(this.text)}coordsIn(e,n){let a=this.dom.nodeValue.length;e>a&&(e=a);let r=e,i=e,o=0;e==0&&n<0||e==a&&n>=0?H.chrome||H.gecko||(e?(r--,o=1):i<a&&(i++,o=-1)):n<0?r--:i<a&&i++;let s=nA(this.dom,r,i).getClientRects();if(!s.length)return null;let c=s[(o?o<0:n>=0)?0:s.length-1];return H.safari&&!o&&c.width==0&&(c=Array.prototype.find.call(s,A=>A.width)||c),o?rm(c,o<0):c||null}static of(e,n){let a=new t(n||document.createTextNode(e),e);return n||(a.flags|=2),a}},nc=class t extends ut{constructor(e,n,a,r){super(e,n,r),this.widget=a}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(e){return this.flags&48?!1:(this.flags&(e<0?64:128))>0}coordsIn(e,n){return this.coordsInWidget(e,n,!1)}coordsInWidget(e,n,a){let r=this.widget.coordsAt(this.dom,e,n);if(r)return r;if(a)return rm(this.dom.getBoundingClientRect(),this.length?e==0:n<=0);{let i=this.dom.getClientRects(),o=null;if(!i.length)return null;let s=this.flags&16?!0:this.flags&32?!1:e>0;for(let c=s?i.length-1:0;o=i[c],!(e>0?c==0:c==i.length-1||o.top<o.bottom);c+=s?-1:1);return rm(o,!s)}}get overrideDOMText(){if(!this.length)return ke.empty;let{root:e}=this;if(!e)return ke.empty;let n=this.posAtStart;return e.view.state.doc.slice(n,n+this.length)}destroy(){super.destroy(),this.widget.destroy(this.dom)}static of(e,n,a,r,i){return i||(i=e.toDOM(n),e.editable||(i.contentEditable="false")),new t(i,a,e,r)}},ac=class extends ut{constructor(e){let n=document.createElement("img");n.className="cm-widgetBuffer",n.setAttribute("aria-hidden","true"),super(n,0,e)}get isHidden(){return!1}get overrideDOMText(){return ke.empty}coordsIn(e){return this.dom.getBoundingClientRect()}},rk=class{constructor(e){this.index=0,this.beforeBreak=!1,this.parents=[],this.tile=e}advance(e,n,a){let{tile:r,index:i,beforeBreak:o,parents:s}=this;for(;e||n>0;)if(r.isComposite())if(o){if(!e)break;a&&a.break(),e--,o=!1}else if(i==r.children.length){if(!e&&!s.length)break;a&&a.leave(r),o=!!r.breakAfter,{tile:r,index:i}=s.pop(),i++}else{let c=r.children[i],A=c.breakAfter;(n>0?c.length<=e:c.length<e)&&(!a||a.skip(c,0,c.length)!==!1||!c.isComposite)?(o=!!A,i++,e-=c.length):(s.push({tile:r,index:i}),r=c,i=0,a&&c.isComposite()&&a.enter(c))}else if(i==r.length)o=!!r.breakAfter,{tile:r,index:i}=s.pop(),i++;else if(e){let c=Math.min(e,r.length-i);a&&a.skip(r,i,i+c),e-=c,i+=c}else break;return this.tile=r,this.index=i,this.beforeBreak=o,this}get root(){return this.parents.length?this.parents[0].tile:this.tile}},ik=class{constructor(e,n,a,r){this.from=e,this.to=n,this.wrapper=a,this.rank=r}},ok=class{constructor(e,n,a){this.cache=e,this.root=n,this.blockWrappers=a,this.curLine=null,this.lastBlock=null,this.afterWidget=null,this.pos=0,this.wrappers=[],this.wrapperPos=0}addText(e,n,a,r){var i;this.flushBuffer();let o=this.ensureMarks(n,a),s=o.lastChild;if(s&&s.isText()&&!(s.flags&8)){this.cache.reused.set(s,2);let c=o.children[o.children.length-1]=new xo(s.dom,s.text+e);c.parent=o}else o.append(r||xo.of(e,(i=this.cache.find(xo))===null||i===void 0?void 0:i.dom));this.pos+=e.length,this.afterWidget=null}addComposition(e,n){let a=this.curLine;a.dom!=n.line.dom&&(a.setDOM(this.cache.reused.has(n.line)?Tw(n.line.dom):n.line.dom),this.cache.reused.set(n.line,2));let r=a;for(let s=n.marks.length-1;s>=0;s--){let c=n.marks[s],A=r.lastChild;if(A instanceof Dn&&A.mark.eq(c.mark))A.dom!=c.dom&&A.setDOM(Tw(c.dom)),r=A;else{if(this.cache.reused.get(c)){let u=ut.get(c.dom);u&&u.setDOM(Tw(c.dom))}let d=Dn.of(c.mark,c.dom);r.append(d),r=d}this.cache.reused.set(c,2)}let i=ut.get(e.text);i&&this.cache.reused.set(i,2);let o=new xo(e.text,e.text.nodeValue);o.flags|=8,r.append(o)}addInlineWidget(e,n,a){let r=this.afterWidget&&e.flags&48&&(this.afterWidget.flags&48)==(e.flags&48);r||this.flushBuffer();let i=this.ensureMarks(n,a);!r&&!(e.flags&16)&&i.append(this.getBuffer(1)),i.append(e),this.pos+=e.length,this.afterWidget=e}addMark(e,n,a){this.flushBuffer(),this.ensureMarks(n,a).append(e),this.pos+=e.length,this.afterWidget=null}addBlockWidget(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}continueWidget(e){let n=this.afterWidget||this.lastBlock;n.length+=e,this.pos+=e}addLineStart(e,n){var a;e||(e=ND);let r=tc.start(e,n||((a=this.cache.find(tc))===null||a===void 0?void 0:a.dom),!!n);this.getBlockPos().append(this.lastBlock=this.curLine=r)}addLine(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(e){this.blockPosCovered()||this.addLineStart(e)}ensureLine(e){this.curLine||this.addLineStart(e)}ensureMarks(e,n){var a;let r=this.curLine;for(let i=e.length-1;i>=0;i--){let o=e[i],s;if(n>0&&(s=r.lastChild)&&s instanceof Dn&&s.mark.eq(o))r=s,n--;else{let c=Dn.of(o,(a=this.cache.find(Dn,A=>A.mark.eq(o)))===null||a===void 0?void 0:a.dom);r.append(c),r=c,n=0}}return r}endLine(){if(this.curLine){this.flushBuffer();let e=this.curLine.lastChild;(!e||!FI(this.curLine,!1)||e.dom.nodeName!="BR"&&e.isWidget()&&!(H.ios&&FI(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(qw,0,32)||new nc(qw.toDOM(),0,qw,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let e=this.wrappers.length-1;e>=0;e--)this.wrappers[e].to<this.pos&&this.wrappers.splice(e,1);for(let e=this.blockWrappers;e.value&&e.from<=this.pos;e.next())if(e.to>=this.pos){let n=new ik(e.from,e.to,e.value,e.rank),a=this.wrappers.length;for(;a>0&&(this.wrappers[a-1].rank-n.rank||this.wrappers[a-1].to-n.to)<0;)a--;this.wrappers.splice(a,0,n)}this.wrapperPos=this.pos}getBlockPos(){var e;this.updateBlockWrappers();let n=this.root;for(let a of this.wrappers){let r=n.lastChild;if(a.from<this.pos&&r instanceof Qi&&r.wrapper.eq(a.wrapper))n=r;else{let i=Qi.of(a.wrapper,(e=this.cache.find(Qi,o=>o.wrapper.eq(a.wrapper)))===null||e===void 0?void 0:e.dom);n.append(i),n=i}}return n}blockPosCovered(){let e=this.lastBlock;return e!=null&&!e.breakAfter&&(!e.isWidget()||(e.flags&160)>0)}getBuffer(e){let n=2|(e<0?16:32),a=this.cache.find(ac,void 0,1);return a&&(a.flags=n),a||new ac(n)}flushBuffer(){this.afterWidget&&!(this.afterWidget.flags&32)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}},sk=class{constructor(e){this.skipCount=0,this.text="",this.textOff=0,this.cursor=e.iter()}skip(e){this.textOff+e<=this.text.length?this.textOff+=e:(this.skipCount+=e-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(e){if(this.textOff==this.text.length){let{value:r,lineBreak:i,done:o}=this.cursor.next(this.skipCount);if(this.skipCount=0,o)throw new Error("Ran out of text content when drawing inline views");this.text=r;let s=this.textOff=Math.min(e,r.length);return i?null:r.slice(0,s)}let n=Math.min(this.text.length,this.textOff+e),a=this.text.slice(this.textOff,n);return this.textOff=n,a}},om=[nc,tc,xo,Dn,ac,Qi,ec];for(let t=0;t<om.length;t++)om[t].bucket=t;var ck=class{constructor(e){this.view=e,this.buckets=om.map(()=>[]),this.index=om.map(()=>0),this.reused=new Map}add(e){let n=e.constructor.bucket,a=this.buckets[n];a.length<6?a.push(e):a[this.index[n]=(this.index[n]+1)%6]=e}find(e,n,a=2){let r=e.bucket,i=this.buckets[r],o=this.index[r];for(let s=i.length-1;s>=0;s--){let c=(s+o)%i.length,A=i[c];if((!n||n(A))&&!this.reused.has(A))return i.splice(c,1),c<o&&this.index[r]--,this.reused.set(A,a),A}return null}findWidget(e,n,a){let r=this.buckets[0];if(r.length)for(let i=0,o=0;;i++){if(i==r.length){if(o)return null;o=1,i=0}let s=r[i];if(!this.reused.has(s)&&(o==0?s.widget.compare(e):s.widget.constructor==e.constructor&&e.updateDOM(s.dom,this.view)))return r.splice(i,1),i<this.index[0]&&this.index[0]--,this.reused.set(s,1),s.length=n,s.flags=s.flags&-498|a,s}}reuse(e){return this.reused.set(e,1),e}maybeReuse(e,n=2){if(!this.reused.has(e))return this.reused.set(e,n),e.dom}},lk=class{constructor(e,n,a,r,i){this.view=e,this.decorations=r,this.disallowBlockEffectsFor=i,this.openWidget=!1,this.openMarks=0,this.cache=new ck(e),this.text=new sk(e.state.doc),this.builder=new ok(this.cache,new ec(e,e.contentDOM),xe.iter(a)),this.cache.reused.set(n,2),this.old=new rk(n),this.reuseWalker={skip:(o,s,c)=>{if(this.cache.add(o),o.isComposite())return!1},enter:o=>this.cache.add(o),leave:()=>{},break:()=>{}}}run(e,n){let a=n&&this.getCompositionContext(n.text);for(let r=0,i=0,o=0;;){let s=o<e.length?e[o++]:null,c=s?s.fromA:this.old.root.length;if(c>r){let A=c-r;this.preserve(A,!o,!s),r=c,i+=A}if(!s)break;this.forward(s.fromA,s.toA),n&&s.fromA<=n.range.fromA&&s.toA>=n.range.toA?(this.emit(i,n.range.fromB),this.builder.addComposition(n,a),this.text.skip(n.range.toB-n.range.fromB),this.emit(n.range.toB,s.toB)):this.emit(i,s.toB),i=s.toB,r=s.toA}return this.builder.curLine&&this.builder.endLine(),this.builder.root}preserve(e,n,a){let r=FH(this.old),i=this.openMarks;this.old.advance(e,a?1:-1,{skip:(o,s,c)=>{if(o.isWidget())if(this.openWidget)this.builder.continueWidget(c-s);else{let A=c>0||s<o.length?nc.of(o.widget,this.view,c-s,o.flags&496,this.cache.maybeReuse(o)):this.cache.reuse(o);A.flags&256?(A.flags&=-2,this.builder.addBlockWidget(A)):(this.builder.ensureLine(null),this.builder.addInlineWidget(A,r,i),i=r.length)}else if(o.isText())this.builder.ensureLine(null),!s&&c==o.length?this.builder.addText(o.text,r,i,this.cache.reuse(o)):(this.cache.add(o),this.builder.addText(o.text.slice(s,c),r,i)),i=r.length;else if(o.isLine())o.flags&=-2,this.cache.reused.set(o,1),this.builder.addLine(o);else if(o instanceof ac)this.cache.add(o);else if(o instanceof Dn)this.builder.ensureLine(null),this.builder.addMark(o,r,i),this.cache.reused.set(o,1),i=r.length;else return!1;this.openWidget=!1},enter:o=>{o.isLine()?this.builder.addLineStart(o.attrs,this.cache.maybeReuse(o)):(this.cache.add(o),o instanceof Dn&&r.unshift(o.mark)),this.openWidget=!1},leave:o=>{o.isLine()?r.length&&(r.length=i=0):o instanceof Dn&&(r.shift(),i=Math.min(i,r.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(e)}emit(e,n){let a=null,r=this.builder,i=0,o=xe.spans(this.decorations,e,n,{point:(s,c,A,d,u,p)=>{if(A instanceof vo){if(this.disallowBlockEffectsFor[p]){if(A.block)throw new RangeError("Block decorations may not be specified via plugins");if(c>this.view.state.doc.lineAt(s).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}if(i=d.length,u>d.length)r.continueWidget(c-s);else{let m=A.widget||(A.block?Fi.block:Fi.inline),f=IH(A),h=this.cache.findWidget(m,c-s,f)||nc.of(m,this.view,c-s,f);A.block?(A.startSide>0&&r.addLineStartIfNotCovered(a),r.addBlockWidget(h)):(r.ensureLine(a),r.addInlineWidget(h,d,u))}a=null}else a=DH(a,A);c>s&&this.text.skip(c-s)},span:(s,c,A,d)=>{for(let u=s;u<c;){let p=this.text.next(Math.min(512,c-u));p==null?(r.addLineStartIfNotCovered(a),r.addBreak(),u++):(r.ensureLine(a),r.addText(p,A,d),u+=p.length),a=null}}});r.addLineStartIfNotCovered(a),this.openWidget=o>i,this.openMarks=o}forward(e,n){n-e<=10?this.old.advance(n-e,1,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(n-e-10,-1),this.old.advance(5,1,this.reuseWalker))}getCompositionContext(e){let n=[],a=null;for(let r=e.parentNode;;r=r.parentNode){let i=ut.get(r);if(r==this.view.contentDOM)break;i instanceof Dn?n.push(i):i?.isLine()?a=i:r.nodeName=="DIV"&&!a&&r!=this.view.contentDOM?a=new tc(r,ND):n.push(Dn.of(new Xl({tagName:r.nodeName.toLowerCase(),attributes:lH(r)}),r))}return{line:a,marks:n}}};function FI(t,e){let n=a=>{for(let r of a.children)if((e?r.isText():r.length)||n(r))return!0;return!1};return n(t)}function IH(t){let e=t.isReplace?(t.startSide<0?64:0)|(t.endSide>0?128:0):t.startSide>0?32:16;return t.block&&(e|=256),e}var ND={class:"cm-line"};function DH(t,e){let n=e.spec.attributes,a=e.spec.class;return!n&&!a||(t||(t={class:"cm-line"}),n&&qk(n,t),a&&(t.class+=" "+a)),t}function FH(t){let e=[];for(let n=t.parents.length;n>1;n--){let a=n==t.parents.length?t.tile:t.parents[n].tile;a instanceof Dn&&e.push(a.mark)}return e}function Tw(t){let e=ut.get(t);return e&&e.setDOM(t.cloneNode()),t}var Fi=class extends pn{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}};Fi.inline=new Fi("span");Fi.block=new Fi("div");var qw=new class extends pn{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}},sm=class{constructor(e){this.view=e,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=X.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.updateDeco(),this.tile=new ec(e,e.contentDOM),this.updateInner([new Ga(0,0,0,e.state.doc.length)],null)}update(e){var n;let a=e.changedRanges;this.minWidth>0&&a.length&&(a.every(({fromA:d,toA:u})=>u<this.minWidthFrom||d>this.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(e);let r=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((n=this.domChanged)===null||n===void 0)&&n.newSel?r=this.domChanged.newSel.head:!PH(e.changes,this.hasComposition)&&!e.selectionSet&&(r=e.state.selection.main.head));let i=r>-1?OH(this.view,e.changes,r):null;if(this.domChanged=null,this.hasComposition){let{from:d,to:u}=this.hasComposition;a=new Ga(d,u,e.changes.mapPos(d,-1),e.changes.mapPos(u,1)).addToSet(a.slice())}this.hasComposition=i?{from:i.range.fromB,to:i.range.toB}:null,(H.ie||H.chrome)&&!i&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let o=this.decorations,s=this.blockWrappers;this.updateDeco();let c=$H(o,this.decorations,e.changes);c.length&&(a=Ga.extendWithRanges(a,c));let A=RH(s,this.blockWrappers,e.changes);return A.length&&(a=Ga.extendWithRanges(a,A)),i&&!a.some(d=>d.fromA<=i.range.fromA&&d.toA>=i.range.toA)&&(a=i.range.addToSet(a.slice())),this.tile.flags&2&&a.length==0?!1:(this.updateInner(a,i),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,n){this.view.viewState.mustMeasureContent=!0;let{observer:a}=this.view;a.ignore(()=>{if(n||e.length){let o=this.tile,s=new lk(this.view,o,this.blockWrappers,this.decorations,this.dynamicDecorationMap);this.tile=s.run(e,n),Ak(o,s.cache.reused)}this.tile.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.tile.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let i=H.chrome||H.ios?{node:a.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(i),i&&(i.written||a.selectionRange.focusNode!=i.node||!this.tile.dom.contains(i.node))&&(this.forceSelection=!0),this.tile.dom.style.height=""});let r=[];if(this.view.viewport.from||this.view.viewport.to<this.view.state.doc.length)for(let i of this.tile.children)i.isWidget()&&i.widget instanceof Yl&&r.push(i.dom);a.updateGaps(r)}updateEditContextFormatting(e){this.editContextFormatting=this.editContextFormatting.map(e.changes);for(let n of e.transactions)for(let a of n.effects)a.is(QD)&&(this.editContextFormatting=a.value)}updateSelection(e=!1,n=!1){(e||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let{dom:a}=this.tile,r=this.view.root.activeElement,i=r==a,o=!i&&!(this.view.state.facet(Lr)||a.tabIndex>-1)&&Wp(a,this.view.observer.selectionRange)&&!(r&&a.contains(r));if(!(i||n||o))return;let s=this.forceSelection;this.forceSelection=!1;let c=this.view.state.selection.main,A,d;if(c.empty?d=A=this.inlineDOMNearPos(c.anchor,c.assoc||1):(d=this.inlineDOMNearPos(c.head,c.head==c.from?1:-1),A=this.inlineDOMNearPos(c.anchor,c.anchor==c.from?1:-1)),H.gecko&&c.empty&&!this.hasComposition&&SH(A)){let p=document.createTextNode("");this.view.observer.ignore(()=>A.node.insertBefore(p,A.node.childNodes[A.offset]||null)),A=d=new Ar(p,0),s=!0}let u=this.view.observer.selectionRange;(s||!u.focusNode||(!Ul(A.node,A.offset,u.anchorNode,u.anchorOffset)||!Ul(d.node,d.offset,u.focusNode,u.focusOffset))&&!this.suppressWidgetCursorChange(u,c))&&(this.view.observer.ignore(()=>{H.android&&H.chrome&&a.contains(u.focusNode)&&jH(u.focusNode,a)&&(a.blur(),a.focus({preventScroll:!0}));let p=tA(this.view.root);if(p)if(c.empty){if(H.gecko){let m=NH(A.node,A.offset);if(m&&m!=3){let f=(m==1?uD:pD)(A.node,A.offset);f&&(A=new Ar(f.node,f.offset))}}p.collapse(A.node,A.offset),c.bidiLevel!=null&&p.caretBidiLevel!==void 0&&(p.caretBidiLevel=c.bidiLevel)}else if(p.extend){p.collapse(A.node,A.offset);try{p.extend(d.node,d.offset)}catch{}}else{let m=document.createRange();c.anchor>c.head&&([A,d]=[d,A]),m.setEnd(d.node,d.offset),m.setStart(A.node,A.offset),p.removeAllRanges(),p.addRange(m)}o&&this.view.root.activeElement==a&&(a.blur(),r&&r.focus())}),this.view.observer.setSelectionRange(A,d)),this.impreciseAnchor=A.precise?null:new Ar(u.anchorNode,u.anchorOffset),this.impreciseHead=d.precise?null:new Ar(u.focusNode,u.focusOffset)}suppressWidgetCursorChange(e,n){return this.hasComposition&&n.empty&&Ul(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)&&this.posFromDOM(e.focusNode,e.focusOffset)==n.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,n=e.state.selection.main,a=tA(e.root),{anchorNode:r,anchorOffset:i}=e.observer.selectionRange;if(!a||!n.empty||!n.assoc||!a.modify)return;let o=this.lineAt(n.head,n.assoc);if(!o)return;let s=o.posAtStart;if(n.head==s||n.head==s+o.length)return;let c=this.coordsAt(n.head,-1),A=this.coordsAt(n.head,1);if(!c||!A||c.bottom>A.top)return;let d=this.domAtPos(n.head+n.assoc,n.assoc);a.collapse(d.node,d.offset),a.modify("move",n.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let u=e.observer.selectionRange;e.docView.posFromDOM(u.anchorNode,u.anchorOffset)!=n.from&&a.collapse(r,i)}posFromDOM(e,n){let a=this.tile.nearest(e);if(!a)return this.tile.dom.compareDocumentPosition(e)&2?0:this.view.state.doc.length;let r=a.posAtStart;if(a.isComposite()){let i;if(e==a.dom)i=a.dom.childNodes[n];else{let o=$r(e)==0?0:n==0?-1:1;for(;;){let s=e.parentNode;if(s==a.dom)break;o==0&&s.firstChild!=s.lastChild&&(e==s.firstChild?o=-1:o=1),e=s}o<0?i=e:i=e.nextSibling}if(i==a.dom.firstChild)return r;for(;i&&!ut.get(i);)i=i.nextSibling;if(!i)return r+a.length;for(let o=0,s=r;;o++){let c=a.children[o];if(c.dom==i)return s;s+=c.length+c.breakAfter}}else return a.isText()?e==a.dom?r+n:r+(n?a.length:0):r}domAtPos(e,n){let{tile:a,offset:r}=this.tile.resolveBlock(e,n);return a.isWidget()?a.domPosFor(e,n):a.domIn(r,n)}inlineDOMNearPos(e,n){let a,r=-1,i=!1,o,s=-1,c=!1;return this.tile.blockTiles((A,d)=>{if(A.isWidget()){if(A.flags&32&&d>=e)return!0;A.flags&16&&(i=!0)}else{let u=d+A.length;if(d<=e&&(a=A,r=e-d,i=u<e),u>=e&&!o&&(o=A,s=e-d,c=d>e),d>e&&o)return!0}}),!a&&!o?this.domAtPos(e,n):(i&&o?a=null:c&&a&&(o=null),a&&n<0||!o?a.domIn(r,n):o.domIn(s,n))}coordsAt(e,n){let{tile:a,offset:r}=this.tile.resolveBlock(e,n);return a.isWidget()?a.widget instanceof Yl?null:a.coordsInWidget(r,n,!0):a.coordsIn(r,n)}lineAt(e,n){let{tile:a}=this.tile.resolveBlock(e,n);return a.isLine()?a:null}coordsForChar(e){let{tile:n,offset:a}=this.tile.resolveBlock(e,1);if(!n.isLine())return null;function r(i,o){if(i.isComposite())for(let s of i.children){if(s.length>=o){let c=r(s,o);if(c)return c}if(o-=s.length,o<0)break}else if(i.isText()&&o<i.length){let s=dt(i.text,o);if(s==o)return null;let c=nA(i.dom,o,s).getClientRects();for(let A=0;A<c.length;A++){let d=c[A];if(A==c.length-1||d.top<d.bottom&&d.left<d.right)return d}}return null}return r(n,a)}measureVisibleLineHeights(e){let n=[],{from:a,to:r}=e,i=this.view.contentDOM.clientWidth,o=i>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,s=-1,c=this.view.textDirection==Oe.LTR,A=0,d=(u,p,m)=>{for(let f=0;f<u.children.length&&!(p>r);f++){let h=u.children[f],w=p+h.length,b=h.dom.getBoundingClientRect(),{height:y}=b;if(m&&!f&&(A+=b.top-m.top),h instanceof Qi)w>a&&d(h,p,b);else if(p>=a&&(A>0&&n.push(-A),n.push(y+A),A=0,o)){let k=h.dom.lastChild,E=k?Kp(k):[];if(E.length){let Q=E[E.length-1],D=c?Q.right-b.left:b.right-Q.left;D>s&&(s=D,this.minWidth=i,this.minWidthFrom=p,this.minWidthTo=w)}}m&&f==u.children.length-1&&(A+=m.bottom-b.bottom),p=w+h.breakAfter}};return d(this.tile,0,null),n}textDirectionAt(e){let{tile:n}=this.tile.resolveBlock(e,1);return getComputedStyle(n.dom).direction=="rtl"?Oe.RTL:Oe.LTR}measureTextSize(){let e=this.tile.blockTiles(o=>{if(o.isLine()&&o.children.length&&o.length<=20){let s=0,c;for(let A of o.children){if(!A.isText()||/[^ -~]/.test(A.text))return;let d=Kp(A.dom);if(d.length!=1)return;s+=d[0].width,c=d[0].height}if(s)return{lineHeight:o.dom.getBoundingClientRect().height,charWidth:s/o.length,textHeight:c}}});if(e)return e;let n=document.createElement("div"),a,r,i;return n.className="cm-line",n.style.width="99999px",n.style.position="absolute",n.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(n);let o=Kp(n.firstChild)[0];a=n.getBoundingClientRect().height,r=o&&o.width?o.width/27:7,i=o&&o.height?o.height:a,n.remove()}),{lineHeight:a,charWidth:r,textHeight:i}}computeBlockGapDeco(){let e=[],n=this.view.viewState;for(let a=0,r=0;;r++){let i=r==n.viewports.length?null:n.viewports[r],o=i?i.from-1:this.view.state.doc.length;if(o>a){let s=(n.lineBlockAt(o).bottom-n.lineBlockAt(a).top)/this.view.scaleY;e.push(X.replace({widget:new Yl(s),block:!0,inclusive:!0,isBlockGap:!0}).range(a,o))}if(!i)break;a=i.to+1}return X.set(e)}updateDeco(){let e=1,n=this.view.state.facet(aA).map(i=>(this.dynamicDecorationMap[e++]=typeof i=="function")?i(this.view):i),a=!1,r=this.view.state.facet(FD).map((i,o)=>{let s=typeof i=="function";return s&&(a=!0),s?i(this.view):i});for(r.length&&(this.dynamicDecorationMap[e++]=a,n.push(xe.join(r))),this.decorations=[this.editContextFormatting,...n,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];e<this.decorations.length;)this.dynamicDecorationMap[e++]=!1;this.blockWrappers=this.view.state.facet(DD).map(i=>typeof i=="function"?i(this.view):i)}scrollIntoView(e){if(e.isSnapshot){let A=this.view.viewState.lineBlockAt(e.range.head);this.view.scrollDOM.scrollTop=A.top-e.yMargin,this.view.scrollDOM.scrollLeft=e.xMargin;return}for(let A of this.view.state.facet(ED))try{if(A(this.view,e.range,e))return!0}catch(d){zt(this.view.state,d,"scroll handler")}let{range:n}=e,a=this.coordsAt(n.head,n.empty?n.assoc:n.head>n.anchor?-1:1),r;if(!a)return;!n.empty&&(r=this.coordsAt(n.anchor,n.anchor>n.head?-1:1))&&(a={left:Math.min(a.left,r.left),top:Math.min(a.top,r.top),right:Math.max(a.right,r.right),bottom:Math.max(a.bottom,r.bottom)});let i=Yk(this.view),o={left:a.left-i.left,top:a.top-i.top,right:a.right+i.right,bottom:a.bottom+i.bottom},{offsetWidth:s,offsetHeight:c}=this.view.scrollDOM;uH(this.view.scrollDOM,o,n.head<n.anchor?-1:1,e.x,e.y,Math.max(Math.min(e.xMargin,s),-s),Math.max(Math.min(e.yMargin,c),-c),this.view.textDirection==Oe.LTR)}lineHasWidget(e){let n=a=>a.isWidget()||a.children.some(n);return n(this.tile.resolveBlock(e,1).tile)}destroy(){Ak(this.tile)}};function Ak(t,e){let n=e?.get(t);if(n!=1){n==null&&t.destroy();for(let a of t.children)Ak(a,e)}}function SH(t){return t.node.nodeType==1&&t.node.firstChild&&(t.offset==0||t.node.childNodes[t.offset-1].contentEditable=="false")&&(t.offset==t.node.childNodes.length||t.node.childNodes[t.offset].contentEditable=="false")}function LD(t,e){let n=t.observer.selectionRange;if(!n.focusNode)return null;let a=uD(n.focusNode,n.focusOffset),r=pD(n.focusNode,n.focusOffset),i=a||r;if(r&&a&&r.node!=a.node){let s=ut.get(r.node);if(!s||s.isText()&&s.text!=r.node.nodeValue)i=r;else if(t.docView.lastCompositionAfterCursor){let c=ut.get(a.node);!c||c.isText()&&c.text!=a.node.nodeValue||(i=r)}}if(t.docView.lastCompositionAfterCursor=i!=a,!i)return null;let o=e-i.offset;return{from:o,to:o+i.node.nodeValue.length,node:i.node}}function OH(t,e,n){let a=LD(t,n);if(!a)return null;let{node:r,from:i,to:o}=a,s=r.nodeValue;if(/[\n\r]/.test(s)||t.state.doc.sliceString(a.from,a.to)!=s)return null;let c=e.invertedDesc;return{range:new Ga(c.mapPos(i),c.mapPos(o),i,o),text:r}}function NH(t,e){return t.nodeType!=1?0:(e&&t.childNodes[e-1].contentEditable=="false"?1:0)|(e<t.childNodes.length&&t.childNodes[e].contentEditable=="false"?2:0)}var LH=class{constructor(){this.changes=[]}compareRange(e,n){Js(e,n,this.changes)}comparePoint(e,n){Js(e,n,this.changes)}boundChange(e){Js(e,e,this.changes)}};function $H(t,e,n){let a=new LH;return xe.compare(t,e,n,a),a.changes}var dk=class{constructor(){this.changes=[]}compareRange(e,n){Js(e,n,this.changes)}comparePoint(){}boundChange(e){Js(e,e,this.changes)}};function RH(t,e,n){let a=new dk;return xe.compare(t,e,n,a),a.changes}function jH(t,e){for(let n=t;n&&n!=e;n=n.assignedSlot||n.parentNode)if(n.nodeType==1&&n.contentEditable=="false")return!0;return!1}function PH(t,e){let n=!1;return e&&t.iterChangedRanges((a,r)=>{a<e.to&&r>e.from&&(n=!0)}),n}var Yl=class extends pn{constructor(e){super(),this.height=e}toDOM(){let e=document.createElement("div");return e.className="cm-gap",this.updateDOM(e),e}eq(e){return e.height==this.height}updateDOM(e){return e.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}};function MH(t,e,n=1){let a=t.charCategorizer(e),r=t.doc.lineAt(e),i=e-r.from;if(r.length==0)return L.cursor(e);i==0?n=1:i==r.length&&(n=-1);let o=i,s=i;n<0?o=dt(r.text,i,!1):s=dt(r.text,i);let c=a(r.text.slice(o,s));for(;o>0;){let A=dt(r.text,o,!1);if(a(r.text.slice(A,o))!=c)break;o=A}for(;s<r.length;){let A=dt(r.text,s);if(a(r.text.slice(s,A))!=c)break;s=A}return L.range(o+r.from,s+r.from)}function TH(t,e,n,a,r){let i=Math.round((a-e.left)*t.defaultCharacterWidth);if(t.lineWrapping&&n.height>t.defaultLineHeight*1.5){let s=t.viewState.heightOracle.textHeight,c=Math.floor((r-n.top-(t.defaultLineHeight-s)*.5)/s);i+=c*t.viewState.heightOracle.lineLength}let o=t.state.sliceDoc(n.from,n.to);return n.from+jp(o,i,t.state.tabSize)}function uk(t,e,n){let a=t.lineBlockAt(e);if(Array.isArray(a.type)){let r;for(let i of a.type){if(i.from>e)break;if(!(i.to<e)){if(i.from<e&&i.to>e)return i;(!r||i.type==Ut.Text&&(r.type!=i.type||(n<0?i.from<e:i.to>e)))&&(r=i)}}return r||a}return a}function qH(t,e,n,a){let r=uk(t,e.head,e.assoc||-1),i=!a||r.type!=Ut.Text||!(t.lineWrapping||r.widgetLineBreaks)?null:t.coordsAtPos(e.assoc<0&&e.head>r.from?e.head-1:e.head);if(i){let o=t.dom.getBoundingClientRect(),s=t.textDirectionAt(r.from),c=t.posAtCoords({x:n==(s==Oe.LTR)?o.right-1:o.left+1,y:(i.top+i.bottom)/2});if(c!=null)return L.cursor(c,n?-1:1)}return L.cursor(n?r.to:r.from,n?-1:1)}function SI(t,e,n,a){let r=t.state.doc.lineAt(e.head),i=t.bidiSpans(r),o=t.textDirectionAt(r.from);for(let s=e,c=null;;){let A=_H(r,i,o,s,n),d=hD;if(!A){if(r.number==(n?t.state.doc.lines:1))return s;d=` +`,r=t.state.doc.line(r.number+(n?1:-1)),i=t.bidiSpans(r),A=t.visualLineSide(r,!n)}if(c){if(!c(d))return s}else{if(!a)return A;c=a(d)}s=A}}function GH(t,e,n){let a=t.state.charCategorizer(e),r=a(n);return i=>{let o=a(i);return r==Pe.Space&&(r=o),r==o}}function zH(t,e,n,a){let r=e.head,i=n?1:-1;if(r==(n?t.state.doc.length:0))return L.cursor(r,e.assoc);let o=e.goalColumn,s,c=t.contentDOM.getBoundingClientRect(),A=t.coordsAtPos(r,e.assoc||-1),d=t.documentTop;if(A)o==null&&(o=A.left-c.left),s=i<0?A.top:A.bottom;else{let m=t.viewState.lineBlockAt(r);o==null&&(o=Math.min(c.right-c.left,t.defaultCharacterWidth*(r-m.from))),s=(i<0?m.top:m.bottom)+d}let u=c.left+o,p=a??t.viewState.heightOracle.textHeight>>1;for(let m=0;;m+=10){let f=s+(p+m)*i,h=pk(t,{x:u,y:f},!1,i);return L.cursor(h.pos,h.assoc,void 0,o)}}function Wl(t,e,n){for(;;){let a=0;for(let r of t)r.between(e-1,e+1,(i,o,s)=>{if(e>i&&e<o){let c=a||n||(e-i<o-e?-1:1);e=c<0?i:o,a=c}});if(!a)return e}}function $D(t,e){let n=null;for(let a=0;a<e.ranges.length;a++){let r=e.ranges[a],i=null;if(r.empty){let o=Wl(t,r.from,0);o!=r.from&&(i=L.cursor(o,-1))}else{let o=Wl(t,r.from,-1),s=Wl(t,r.to,1);(o!=r.from||s!=r.to)&&(i=L.range(r.from==r.anchor?o:s,r.from==r.head?o:s))}i&&(n||(n=e.ranges.slice()),n[a]=i)}return n?L.create(n,e.mainIndex):e}function Gw(t,e,n){let a=Wl(t.state.facet(oA).map(r=>r(t)),n.from,e.head>n.from?-1:1);return a==n.from?n:L.cursor(a,a<n.from?1:-1)}var wa=class{constructor(e,n){this.pos=e,this.assoc=n}};function pk(t,e,n,a){let r=t.contentDOM.getBoundingClientRect(),i=r.top+t.viewState.paddingTop,{x:o,y:s}=e,c=s-i,A;for(;;){if(c<0)return new wa(0,1);if(c>t.viewState.docHeight)return new wa(t.state.doc.length,-1);if(A=t.elementAtHeight(c),a==null)break;if(A.type==Ut.Text){let p=t.docView.coordsAt(a<0?A.from:A.to,a);if(p&&(a<0?p.top<=c+i:p.bottom>=c+i))break}let u=t.viewState.heightOracle.textHeight/2;c=a>0?A.bottom+u:A.top-u}if(t.viewport.from>=A.to||t.viewport.to<=A.from){if(n)return null;if(A.type==Ut.Text){let u=TH(t,r,A,o,s);return new wa(u,u==A.from?1:-1)}}if(A.type!=Ut.Text)return c<(A.top+A.bottom)/2?new wa(A.from,1):new wa(A.to,-1);let d=t.docView.lineAt(A.from,2);return(!d||d.length!=A.length)&&(d=t.docView.lineAt(A.from,-2)),RD(t,d,A.from,o,s)}function RD(t,e,n,a,r){let i=-1,o=null,s=1e9,c=1e9,A=r,d=r,u=(p,m)=>{for(let f=0;f<p.length;f++){let h=p[f];if(h.top==h.bottom)continue;let w=h.left>a?h.left-a:h.right<a?a-h.right:0,b=h.top>r?h.top-r:h.bottom<r?r-h.bottom:0;h.top<=d&&h.bottom>=A&&(A=Math.min(h.top,A),d=Math.max(h.bottom,d),b=0),(i<0||(b-c||w-s)<0)&&(i>=0&&c&&s<w&&o.top<=d-2&&o.bottom>=A+2?c=0:(i=m,s=w,c=b,o=h))}};if(e.isText()){for(let m=0;m<e.length;){let f=dt(e.text,m);if(u(nA(e.dom,m,f).getClientRects(),m),!s&&!c)break;m=f}return a>(o.left+o.right)/2==(OI(t,i+n)==Oe.LTR)?new wa(n+dt(e.text,i),-1):new wa(n+i,1)}else{if(!e.length)return new wa(n,1);for(let h=0;h<e.children.length;h++){let w=e.children[h];if(w.flags&48)continue;let b=(w.dom.nodeType==1?w.dom:nA(w.dom,0,w.length)).getClientRects();if(u(b,h),!s&&!c)break}let p=e.children[i],m=e.posBefore(p,n);return p.isComposite()||p.isText()?RD(t,p,m,Math.max(o.left,Math.min(o.right,a)),r):a>(o.left+o.right)/2==(OI(t,i+n)==Oe.LTR)?new wa(m+p.length,-1):new wa(m,1)}}function OI(t,e){let n=t.state.doc.lineAt(e);return t.bidiSpans(n)[qa.find(t.bidiSpans(n),e-n.from,-1,1)].dir}var ql="\uFFFF",mk=class{constructor(e,n){this.points=e,this.view=n,this.text="",this.lineSeparator=n.state.facet(Fe.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=ql}readRange(e,n){if(!e)return this;let a=e.parentNode;for(let r=e;;){this.findPointBefore(a,r);let i=this.text.length;this.readNode(r);let o=ut.get(r),s=r.nextSibling;if(s==n){o?.breakAfter&&!s&&a!=this.view.contentDOM&&this.lineBreak();break}let c=ut.get(s);(o&&c?o.breakAfter:(o?o.breakAfter:am(r))||am(s)&&(r.nodeName!="BR"||o?.isWidget())&&this.text.length>i)&&!HH(s,n)&&this.lineBreak(),r=s}return this.findPointBefore(a,n),this}readTextNode(e){let n=e.nodeValue;for(let a of this.points)a.node==e&&(a.pos=this.text.length+Math.min(a.offset,n.length));for(let a=0,r=this.lineSeparator?null:/\r\n?|\n/g;;){let i=-1,o=1,s;if(this.lineSeparator?(i=n.indexOf(this.lineSeparator,a),o=this.lineSeparator.length):(s=r.exec(n))&&(i=s.index,o=s[0].length),this.append(n.slice(a,i<0?n.length:i)),i<0)break;if(this.lineBreak(),o>1)for(let c of this.points)c.node==e&&c.pos>this.text.length&&(c.pos-=o-1);a=i+o}}readNode(e){let n=ut.get(e),a=n&&n.overrideDOMText;if(a!=null){this.findPointInside(e,a.length);for(let r=a.iter();!r.next().done;)r.lineBreak?this.lineBreak():this.append(r.value)}else e.nodeType==3?this.readTextNode(e):e.nodeName=="BR"?e.nextSibling&&this.lineBreak():e.nodeType==1&&this.readRange(e.firstChild,null)}findPointBefore(e,n){for(let a of this.points)a.node==e&&e.childNodes[a.offset]==n&&(a.pos=this.text.length)}findPointInside(e,n){for(let a of this.points)(e.nodeType==3?a.node==e:e.contains(a.node))&&(a.pos=this.text.length+(UH(e,a.node,a.offset)?n:0))}};function UH(t,e,n){for(;;){if(!e||n<$r(e))return!1;if(e==t)return!0;n=Di(e)+1,e=e.parentNode}}function HH(t,e){let n;for(;!(t==e||!t);t=t.nextSibling){let a=ut.get(t);if(!a?.isWidget())return!1;a&&(n||(n=[])).push(a)}if(n)for(let a of n){let r=a.overrideDOMText;if(r?.length)return!1}return!0}var cm=class{constructor(e,n){this.node=e,this.offset=n,this.pos=-1}},gk=class{constructor(e,n,a,r){this.typeOver=r,this.bounds=null,this.text="",this.domChanged=n>-1;let{impreciseHead:i,impreciseAnchor:o}=e.docView;if(e.state.readOnly&&n>-1)this.newSel=null;else if(n>-1&&(this.bounds=jD(e.docView.tile,n,a,0))){let s=i||o?[]:YH(e),c=new mk(s,e);c.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=c.text,this.newSel=WH(s,this.bounds.from)}else{let s=e.observer.selectionRange,c=i&&i.node==s.focusNode&&i.offset==s.focusOffset||!Vw(e.contentDOM,s.focusNode)?e.state.selection.main.head:e.docView.posFromDOM(s.focusNode,s.focusOffset),A=o&&o.node==s.anchorNode&&o.offset==s.anchorOffset||!Vw(e.contentDOM,s.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(s.anchorNode,s.anchorOffset),d=e.viewport;if((H.ios||H.chrome)&&e.state.selection.main.empty&&c!=A&&(d.from>0||d.to<e.state.doc.length)){let u=Math.min(c,A),p=Math.max(c,A),m=d.from-u,f=d.to-p;(m==0||m==1||u==0)&&(f==0||f==-1||p==e.state.doc.length)&&(c=0,A=e.state.doc.length)}e.inputState.composing>-1&&e.state.selection.ranges.length>1?this.newSel=e.state.selection.replaceRange(L.range(A,c)):this.newSel=L.single(A,c)}}};function jD(t,e,n,a){if(t.isComposite()){let r=-1,i=-1,o=-1,s=-1;for(let c=0,A=a,d=a;c<t.children.length;c++){let u=t.children[c],p=A+u.length;if(A<e&&p>n)return jD(u,e,n,A);if(p>=e&&r==-1&&(r=c,i=A),A>n&&u.dom.parentNode==t.dom){o=c,s=d;break}d=p,A=p+u.breakAfter}return{from:i,to:s<0?a+t.length:s,startDOM:(r?t.children[r-1].dom.nextSibling:null)||t.dom.firstChild,endDOM:o<t.children.length&&o>=0?t.children[o].dom:null}}else return t.isText()?{from:a,to:a+t.length,startDOM:t.dom,endDOM:t.dom.nextSibling}:null}function PD(t,e){let n,{newSel:a}=e,r=t.state.selection.main,i=t.inputState.lastKeyTime>Date.now()-100?t.inputState.lastKeyCode:-1;if(e.bounds){let{from:o,to:s}=e.bounds,c=r.from,A=null;(i===8||H.android&&e.text.length<s-o)&&(c=r.to,A="end");let d=MD(t.state.doc.sliceString(o,s,ql),e.text,c-o,A);d&&(H.chrome&&i==13&&d.toB==d.from+2&&e.text.slice(d.from,d.toB)==ql+ql&&d.toB--,n={from:o+d.from,to:o+d.toA,insert:ke.of(e.text.slice(d.from,d.toB).split(ql))})}else a&&(!t.hasFocus&&t.state.facet(Lr)||a.main.eq(r))&&(a=null);if(!n&&!a)return!1;if(!n&&e.typeOver&&!r.empty&&a&&a.main.empty?n={from:r.from,to:r.to,insert:t.state.doc.slice(r.from,r.to)}:(H.mac||H.android)&&n&&n.from==n.to&&n.from==r.head-1&&/^\. ?$/.test(n.insert.toString())&&t.contentDOM.getAttribute("autocorrect")=="off"?(a&&n.insert.length==2&&(a=L.single(a.main.anchor-1,a.main.head-1)),n={from:n.from,to:n.to,insert:ke.of([n.insert.toString().replace("."," ")])}):n&&n.from>=r.from&&n.to<=r.to&&(n.from!=r.from||n.to!=r.to)&&r.to-r.from-(n.to-n.from)<=4?n={from:r.from,to:r.to,insert:t.state.doc.slice(r.from,n.from).append(n.insert).append(t.state.doc.slice(n.to,r.to))}:t.state.doc.lineAt(r.from).to<r.to&&t.docView.lineHasWidget(r.to)&&t.inputState.insertingTextAt>Date.now()-50?n={from:r.from,to:r.to,insert:t.state.toText(t.inputState.insertingText)}:H.chrome&&n&&n.from==n.to&&n.from==r.head&&n.insert.toString()==` + `&&t.lineWrapping&&(a&&(a=L.single(a.main.anchor-1,a.main.head-1)),n={from:r.from,to:r.to,insert:ke.of([" "])}),n)return Wk(t,n,a,i);if(a&&!a.main.eq(r)){let o=!1,s="select";return t.inputState.lastSelectionTime>Date.now()-50&&(t.inputState.lastSelectionOrigin=="select"&&(o=!0),s=t.inputState.lastSelectionOrigin,s=="select.pointer"&&(a=$D(t.state.facet(oA).map(c=>c(t)),a))),t.dispatch({selection:a,scrollIntoView:o,userEvent:s}),!0}else return!1}function Wk(t,e,n,a=-1){if(H.ios&&t.inputState.flushIOSKey(e))return!0;let r=t.state.selection.main;if(H.android&&(e.to==r.to&&(e.from==r.from||e.from==r.from-1&&t.state.sliceDoc(e.from,r.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&Vs(t.contentDOM,"Enter",13)||(e.from==r.from-1&&e.to==r.to&&e.insert.length==0||a==8&&e.insert.length<e.to-e.from&&e.to>r.head)&&Vs(t.contentDOM,"Backspace",8)||e.from==r.from&&e.to==r.to+1&&e.insert.length==0&&Vs(t.contentDOM,"Delete",46)))return!0;let i=e.insert.toString();t.inputState.composing>=0&&t.inputState.composing++;let o,s=()=>o||(o=ZH(t,e,n));return t.state.facet(_D).some(c=>c(t,e.from,e.to,i,s))||t.dispatch(s()),!0}function ZH(t,e,n){let a,r=t.state,i=r.selection.main,o=-1;if(e.from==e.to&&e.from<i.from||e.from>i.to){let c=e.from<i.from?-1:1,A=c<0?i.from:i.to,d=Wl(r.facet(oA).map(u=>u(t)),A,c);e.from==d&&(o=d)}if(o>-1)a={changes:e,selection:L.cursor(e.from+e.insert.length,-1)};else if(e.from>=i.from&&e.to<=i.to&&e.to-e.from>=(i.to-i.from)/3&&(!n||n.main.empty&&n.main.from==e.from+e.insert.length)&&t.inputState.composing<0){let c=i.from<e.from?r.sliceDoc(i.from,e.from):"",A=i.to>e.to?r.sliceDoc(e.to,i.to):"";a=r.replaceSelection(t.state.toText(c+e.insert.sliceString(0,void 0,t.state.lineBreak)+A))}else{let c=r.changes(e),A=n&&n.main.to<=c.newLength?n.main:void 0;if(r.selection.ranges.length>1&&(t.inputState.composing>=0||t.inputState.compositionPendingChange)&&e.to<=i.to+10&&e.to>=i.to-10){let d=t.state.sliceDoc(e.from,e.to),u,p=n&&LD(t,n.main.head);if(p){let f=e.insert.length-(e.to-e.from);u={from:p.from,to:p.to-f}}else u=t.state.doc.lineAt(i.head);let m=i.to-e.to;a=r.changeByRange(f=>{if(f.from==i.from&&f.to==i.to)return{changes:c,range:A||f.map(c)};let h=f.to-m,w=h-d.length;if(t.state.sliceDoc(w,h)!=d||h>=u.from&&w<=u.to)return{range:f};let b=r.changes({from:w,to:h,insert:e.insert}),y=f.to-i.to;return{changes:b,range:A?L.range(Math.max(0,A.anchor+y),Math.max(0,A.head+y)):f.map(b)}})}else a={changes:c,selection:A&&r.selection.replaceRange(A)}}let s="input.type";return(t.composing||t.inputState.compositionPendingChange&&t.inputState.compositionEndedAt>Date.now()-50)&&(t.inputState.compositionPendingChange=!1,s+=".compose",t.inputState.compositionFirstChange&&(s+=".start",t.inputState.compositionFirstChange=!1)),r.update(a,{userEvent:s,scrollIntoView:!0})}function MD(t,e,n,a){let r=Math.min(t.length,e.length),i=0;for(;i<r&&t.charCodeAt(i)==e.charCodeAt(i);)i++;if(i==r&&t.length==e.length)return null;let o=t.length,s=e.length;for(;o>0&&s>0&&t.charCodeAt(o-1)==e.charCodeAt(s-1);)o--,s--;if(a=="end"){let c=Math.max(0,i-Math.min(o,s));n-=o+c-i}if(o<i&&t.length<e.length){let c=n<=i&&n>=o?i-n:0;i-=c,s=i+(s-o),o=i}else if(s<i){let c=n<=i&&n>=s?i-n:0;i-=c,o=i+(o-s),s=i}return{from:i,toA:o,toB:s}}function YH(t){let e=[];if(t.root.activeElement!=t.contentDOM)return e;let{anchorNode:n,anchorOffset:a,focusNode:r,focusOffset:i}=t.observer.selectionRange;return n&&(e.push(new cm(n,a)),(r!=n||i!=a)&&e.push(new cm(r,i))),e}function WH(t,e){if(t.length==0)return null;let n=t[0].pos,a=t.length==2?t[1].pos:n;return n>-1&&a>-1?L.single(n+e,a+e):null}var fk=class{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=e.hasFocus,H.safari&&e.contentDOM.addEventListener("input",()=>null),H.gecko&&l5(e.contentDOM.ownerDocument)}handleEvent(e){!n5(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(e.type,e)):this.runHandlers(e.type,e))}runHandlers(e,n){let a=this.handlers[e];if(a){for(let r of a.observers)r(this.view,n);for(let r of a.handlers){if(n.defaultPrevented)break;if(r(this.view,n)){n.preventDefault();break}}}}ensureHandlers(e){let n=KH(e),a=this.handlers,r=this.view.contentDOM;for(let i in n)if(i!="scroll"){let o=!n[i].handlers.length,s=a[i];s&&o!=!s.handlers.length&&(r.removeEventListener(i,this.handleEvent),s=null),s||r.addEventListener(i,this.handleEvent,{passive:o})}for(let i in a)i!="scroll"&&!n[i]&&r.removeEventListener(i,this.handleEvent);this.handlers=n}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),e.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&e.keyCode!=27&&qD.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),H.android&&H.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;let n;return H.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&((n=TD.find(a=>a.keyCode==e.keyCode))&&!e.ctrlKey||JH.indexOf(e.key)>-1&&e.ctrlKey&&!e.shiftKey)?(this.pendingIOSKey=n||e,setTimeout(()=>this.flushIOSKey(),250),!0):(e.keyCode!=229&&this.view.observer.forceFlush(),!1)}flushIOSKey(e){let n=this.pendingIOSKey;return!n||n.key=="Enter"&&e&&e.from<e.to&&/^\S+$/.test(e.insert.toString())?!1:(this.pendingIOSKey=void 0,Vs(this.view.contentDOM,n.key,n.keyCode,n instanceof KeyboardEvent?n:void 0))}ignoreDuringComposition(e){return!/^key/.test(e.type)||e.synthetic?!1:this.composing>0?!0:H.safari&&!H.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.view.observer.update(e),this.mouseSelection&&this.mouseSelection.update(e),this.draggedContent&&e.docChanged&&(this.draggedContent=this.draggedContent.map(e.changes)),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}};function NI(t,e){return(n,a)=>{try{return e.call(t,a,n)}catch(r){zt(n.state,r)}}}function KH(t){let e=Object.create(null);function n(a){return e[a]||(e[a]={observers:[],handlers:[]})}for(let a of t){let r=a.spec,i=r&&r.plugin.domEventHandlers,o=r&&r.plugin.domEventObservers;if(i)for(let s in i){let c=i[s];c&&n(s).handlers.push(NI(a.value,c))}if(o)for(let s in o){let c=o[s];c&&n(s).observers.push(NI(a.value,c))}}for(let a in za)n(a).handlers.push(za[a]);for(let a in ka)n(a).observers.push(ka[a]);return e}var TD=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],JH="dthko",qD=[16,17,18,20,91,92,224,225],Tp=6;function qp(t){return Math.max(0,t)*.7+8}function VH(t,e){return Math.max(Math.abs(t.clientX-e.clientX),Math.abs(t.clientY-e.clientY))}var bk=class{constructor(e,n,a,r){this.view=e,this.startEvent=n,this.style=a,this.mustSelect=r,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=n,this.scrollParents=pH(e.contentDOM),this.atoms=e.state.facet(oA).map(o=>o(e));let i=e.contentDOM.ownerDocument;i.addEventListener("mousemove",this.move=this.move.bind(this)),i.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=n.shiftKey,this.multiple=e.state.facet(Fe.allowMultipleSelections)&&XH(e,n),this.dragging=t5(e,n)&&UD(n)==1?null:!1}start(e){this.dragging===!1&&this.select(e)}move(e){if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&VH(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let n=0,a=0,r=0,i=0,o=this.view.win.innerWidth,s=this.view.win.innerHeight;this.scrollParents.x&&({left:r,right:o}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:i,bottom:s}=this.scrollParents.y.getBoundingClientRect());let c=Yk(this.view);e.clientX-c.left<=r+Tp?n=-qp(r-e.clientX):e.clientX+c.right>=o-Tp&&(n=qp(e.clientX-o)),e.clientY-c.top<=i+Tp?a=-qp(i-e.clientY):e.clientY+c.bottom>=s-Tp&&(a=qp(e.clientY-s)),this.setScrollSpeed(n,a)}up(e){this.dragging==null&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(e,n){this.scrollSpeed={x:e,y:n},e||n?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:e,y:n}=this.scrollSpeed;e&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=e,e=0),n&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=n,n=0),(e||n)&&this.view.win.scrollBy(e,n),this.dragging===!1&&this.select(this.lastEvent)}select(e){let{view:n}=this,a=$D(this.atoms,this.style.get(e,this.extend,this.multiple));(this.mustSelect||!a.eq(n.state.selection,this.dragging===!1))&&this.view.dispatch({selection:a,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.transactions.some(n=>n.isUserEvent("input.type"))?this.destroy():this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}};function XH(t,e){let n=t.state.facet(yD);return n.length?n[0](e):H.mac?e.metaKey:e.ctrlKey}function e5(t,e){let n=t.state.facet(wD);return n.length?n[0](e):H.mac?!e.altKey:!e.ctrlKey}function t5(t,e){let{main:n}=t.state.selection;if(n.empty)return!1;let a=tA(t.root);if(!a||a.rangeCount==0)return!0;let r=a.getRangeAt(0).getClientRects();for(let i=0;i<r.length;i++){let o=r[i];if(o.left<=e.clientX&&o.right>=e.clientX&&o.top<=e.clientY&&o.bottom>=e.clientY)return!0}return!1}function n5(t,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let n=e.target,a;n!=t.contentDOM;n=n.parentNode)if(!n||n.nodeType==11||(a=ut.get(n))&&a.isWidget()&&!a.isHidden&&a.widget.ignoreEvent(e))return!1;return!0}var za=Object.create(null),ka=Object.create(null),GD=H.ie&&H.ie_version<15||H.ios&&H.webkit_version<604;function a5(t){let e=t.dom.parentNode;if(!e)return;let n=e.appendChild(document.createElement("textarea"));n.style.cssText="position: fixed; left: -10000px; top: 10px",n.focus(),setTimeout(()=>{t.focus(),n.remove(),zD(t,n.value)},50)}function ym(t,e,n){for(let a of t.facet(e))n=a(n,t);return n}function zD(t,e){e=ym(t.state,Uk,e);let{state:n}=t,a,r=1,i=n.toText(e),o=i.lines==n.selection.ranges.length;if(hk!=null&&n.selection.ranges.every(c=>c.empty)&&hk==i.toString()){let c=-1;a=n.changeByRange(A=>{let d=n.doc.lineAt(A.from);if(d.from==c)return{range:A};c=d.from;let u=n.toText((o?i.line(r++).text:e)+n.lineBreak);return{changes:{from:d.from,insert:u},range:L.cursor(A.from+u.length)}})}else o?a=n.changeByRange(c=>{let A=i.line(r++);return{changes:{from:c.from,to:c.to,insert:A.text},range:L.cursor(c.from+A.length)}}):a=n.replaceSelection(i);t.dispatch(a,{userEvent:"input.paste",scrollIntoView:!0})}ka.scroll=t=>{t.inputState.lastScrollTop=t.scrollDOM.scrollTop,t.inputState.lastScrollLeft=t.scrollDOM.scrollLeft};za.keydown=(t,e)=>(t.inputState.setSelectionOrigin("select"),e.keyCode==27&&t.inputState.tabFocusMode!=0&&(t.inputState.tabFocusMode=Date.now()+2e3),!1);ka.touchstart=(t,e)=>{t.inputState.lastTouchTime=Date.now(),t.inputState.setSelectionOrigin("select.pointer")};ka.touchmove=t=>{t.inputState.setSelectionOrigin("select.pointer")};za.mousedown=(t,e)=>{if(t.observer.flush(),t.inputState.lastTouchTime>Date.now()-2e3)return!1;let n=null;for(let a of t.state.facet(kD))if(n=a(t,e),n)break;if(!n&&e.button==0&&(n=i5(t,e)),n){let a=!t.hasFocus;t.inputState.startMouseSelection(new bk(t,e,n,a)),a&&t.observer.ignore(()=>{AD(t.contentDOM);let i=t.root.activeElement;i&&!i.contains(t.contentDOM)&&i.blur()});let r=t.inputState.mouseSelection;if(r)return r.start(e),r.dragging===!1}else t.inputState.setSelectionOrigin("select.pointer");return!1};function LI(t,e,n,a){if(a==1)return L.cursor(e,n);if(a==2)return MH(t.state,e,n);{let r=t.docView.lineAt(e,n),i=t.state.doc.lineAt(r?r.posAtEnd:e),o=r?r.posAtStart:i.from,s=r?r.posAtEnd:i.to;return s<t.state.doc.length&&s==i.to&&s++,L.range(o,s)}}var r5=H.ie&&H.ie_version<=11,$I=null,RI=0,jI=0;function UD(t){if(!r5)return t.detail;let e=$I,n=jI;return $I=t,jI=Date.now(),RI=!e||n>Date.now()-400&&Math.abs(e.clientX-t.clientX)<2&&Math.abs(e.clientY-t.clientY)<2?(RI+1)%3:1}function i5(t,e){let n=t.posAndSideAtCoords({x:e.clientX,y:e.clientY},!1),a=UD(e),r=t.state.selection;return{update(i){i.docChanged&&(n.pos=i.changes.mapPos(n.pos),r=r.map(i.changes))},get(i,o,s){let c=t.posAndSideAtCoords({x:i.clientX,y:i.clientY},!1),A,d=LI(t,c.pos,c.assoc,a);if(n.pos!=c.pos&&!o){let u=LI(t,n.pos,n.assoc,a),p=Math.min(u.from,d.from),m=Math.max(u.to,d.to);d=p<d.from?L.range(p,m):L.range(m,p)}return o?r.replaceRange(r.main.extend(d.from,d.to)):s&&a==1&&r.ranges.length>1&&(A=o5(r,c.pos))?A:s?r.addRange(d):L.create([d])}}}function o5(t,e){for(let n=0;n<t.ranges.length;n++){let{from:a,to:r}=t.ranges[n];if(a<=e&&r>=e)return L.create(t.ranges.slice(0,n).concat(t.ranges.slice(n+1)),t.mainIndex==n?0:t.mainIndex-(t.mainIndex>n?1:0))}return null}za.dragstart=(t,e)=>{let{selection:{main:n}}=t.state;if(e.target.draggable){let r=t.docView.tile.nearest(e.target);if(r&&r.isWidget()){let i=r.posAtStart,o=i+r.length;(i>=n.to||o<=n.from)&&(n=L.range(i,o))}}let{inputState:a}=t;return a.mouseSelection&&(a.mouseSelection.dragging=!0),a.draggedContent=n,e.dataTransfer&&(e.dataTransfer.setData("Text",ym(t.state,Hk,t.state.sliceDoc(n.from,n.to))),e.dataTransfer.effectAllowed="copyMove"),!1};za.dragend=t=>(t.inputState.draggedContent=null,!1);function PI(t,e,n,a){if(n=ym(t.state,Uk,n),!n)return;let r=t.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:i}=t.inputState,o=a&&i&&e5(t,e)?{from:i.from,to:i.to}:null,s={from:r,insert:n},c=t.state.changes(o?[o,s]:s);t.focus(),t.dispatch({changes:c,selection:{anchor:c.mapPos(r,-1),head:c.mapPos(r,1)},userEvent:o?"move.drop":"input.drop"}),t.inputState.draggedContent=null}za.drop=(t,e)=>{if(!e.dataTransfer)return!1;if(t.state.readOnly)return!0;let n=e.dataTransfer.files;if(n&&n.length){let a=Array(n.length),r=0,i=()=>{++r==n.length&&PI(t,e,a.filter(o=>o!=null).join(t.state.lineBreak),!1)};for(let o=0;o<n.length;o++){let s=new FileReader;s.onerror=i,s.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(s.result)||(a[o]=s.result),i()},s.readAsText(n[o])}return!0}else{let a=e.dataTransfer.getData("Text");if(a)return PI(t,e,a,!0),!0}return!1};za.paste=(t,e)=>{if(t.state.readOnly)return!0;t.observer.flush();let n=GD?null:e.clipboardData;return n?(zD(t,n.getData("text/plain")||n.getData("text/uri-list")),!0):(a5(t),!1)};function s5(t,e){let n=t.dom.parentNode;if(!n)return;let a=n.appendChild(document.createElement("textarea"));a.style.cssText="position: fixed; left: -10000px; top: 10px",a.value=e,a.focus(),a.selectionEnd=e.length,a.selectionStart=0,setTimeout(()=>{a.remove(),t.focus()},50)}function c5(t){let e=[],n=[],a=!1;for(let r of t.selection.ranges)r.empty||(e.push(t.sliceDoc(r.from,r.to)),n.push(r));if(!e.length){let r=-1;for(let{from:i}of t.selection.ranges){let o=t.doc.lineAt(i);o.number>r&&(e.push(o.text),n.push({from:o.from,to:Math.min(t.doc.length,o.to+1)})),r=o.number}a=!0}return{text:ym(t,Hk,e.join(t.lineBreak)),ranges:n,linewise:a}}var hk=null;za.copy=za.cut=(t,e)=>{let{text:n,ranges:a,linewise:r}=c5(t.state);if(!n&&!r)return!1;hk=r?n:null,e.type=="cut"&&!t.state.readOnly&&t.dispatch({changes:a,scrollIntoView:!0,userEvent:"delete.cut"});let i=GD?null:e.clipboardData;return i?(i.clearData(),i.setData("text/plain",n),!0):(s5(t,n),!1)};var HD=Qn.define();function ZD(t,e){let n=[];for(let a of t.facet(BD)){let r=a(t,e);r&&n.push(r)}return n.length?t.update({effects:n,annotations:HD.of(!0)}):null}function YD(t){setTimeout(()=>{let e=t.hasFocus;if(e!=t.inputState.notifiedFocused){let n=ZD(t.state,e);n?t.dispatch(n):t.update([])}},10)}ka.focus=t=>{t.inputState.lastFocusTime=Date.now(),!t.scrollDOM.scrollTop&&(t.inputState.lastScrollTop||t.inputState.lastScrollLeft)&&(t.scrollDOM.scrollTop=t.inputState.lastScrollTop,t.scrollDOM.scrollLeft=t.inputState.lastScrollLeft),YD(t)};ka.blur=t=>{t.observer.clearSelectionRange(),YD(t)};ka.compositionstart=ka.compositionupdate=t=>{t.observer.editContext||(t.inputState.compositionFirstChange==null&&(t.inputState.compositionFirstChange=!0),t.inputState.composing<0&&(t.inputState.composing=0))};ka.compositionend=t=>{t.observer.editContext||(t.inputState.composing=-1,t.inputState.compositionEndedAt=Date.now(),t.inputState.compositionPendingKey=!0,t.inputState.compositionPendingChange=t.observer.pendingRecords().length>0,t.inputState.compositionFirstChange=null,H.chrome&&H.android?t.observer.flushSoon():t.inputState.compositionPendingChange?Promise.resolve().then(()=>t.observer.flush()):setTimeout(()=>{t.inputState.composing<0&&t.docView.hasComposition&&t.update([])},50))};ka.contextmenu=t=>{t.inputState.lastContextMenu=Date.now()};za.beforeinput=(t,e)=>{var n,a;if((e.inputType=="insertText"||e.inputType=="insertCompositionText")&&(t.inputState.insertingText=e.data,t.inputState.insertingTextAt=Date.now()),e.inputType=="insertReplacementText"&&t.observer.editContext){let i=(n=e.dataTransfer)===null||n===void 0?void 0:n.getData("text/plain"),o=e.getTargetRanges();if(i&&o.length){let s=o[0],c=t.posAtDOM(s.startContainer,s.startOffset),A=t.posAtDOM(s.endContainer,s.endOffset);return Wk(t,{from:c,to:A,insert:t.state.toText(i)},null),!0}}let r;if(H.chrome&&H.android&&(r=TD.find(i=>i.inputType==e.inputType))&&(t.observer.delayAndroidKey(r.key,r.keyCode),r.key=="Backspace"||r.key=="Delete")){let i=((a=window.visualViewport)===null||a===void 0?void 0:a.height)||0;setTimeout(()=>{var o;(((o=window.visualViewport)===null||o===void 0?void 0:o.height)||0)>i+10&&t.hasFocus&&(t.contentDOM.blur(),t.focus())},100)}return H.ios&&e.inputType=="deleteContentForward"&&t.observer.flushSoon(),H.safari&&e.inputType=="insertText"&&t.inputState.composing>=0&&setTimeout(()=>ka.compositionend(t,e),20),!1};var MI=new Set;function l5(t){MI.has(t)||(MI.add(t),t.addEventListener("copy",()=>{}),t.addEventListener("cut",()=>{}))}var TI=["pre-wrap","normal","pre-line","break-spaces"],rc=!1;function qI(){rc=!1}var yk=class{constructor(e){this.lineWrapping=e,this.doc=ke.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,n){let a=this.doc.lineAt(n).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(a+=Math.max(0,Math.ceil((n-e-a*this.lineLength*.5)/this.lineLength))),this.lineHeight*a}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return TI.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let n=!1;for(let a=0;a<e.length;a++){let r=e[a];r<0?a++:this.heightSamples[Math.floor(r*10)]||(n=!0,this.heightSamples[Math.floor(r*10)]=!0)}return n}refresh(e,n,a,r,i,o){let s=TI.indexOf(e)>-1,c=Math.round(n)!=Math.round(this.lineHeight)||this.lineWrapping!=s;if(this.lineWrapping=s,this.lineHeight=n,this.charWidth=a,this.textHeight=r,this.lineLength=i,c){this.heightSamples={};for(let A=0;A<o.length;A++){let d=o[A];d<0?A++:this.heightSamples[Math.floor(d*10)]=!0}}return c}},wk=class{constructor(e,n){this.from=e,this.heights=n,this.index=0}get more(){return this.index<this.heights.length}},Ta=class t{constructor(e,n,a,r,i){this.from=e,this.length=n,this.top=a,this.height=r,this._content=i}get type(){return typeof this._content=="number"?Ut.Text:Array.isArray(this._content)?this._content:this._content.type}get to(){return this.from+this.length}get bottom(){return this.top+this.height}get widget(){return this._content instanceof vo?this._content.widget:null}get widgetLineBreaks(){return typeof this._content=="number"?this._content:0}join(e){let n=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(e._content)?e._content:[e]);return new t(this.from,this.length+e.length,this.top,this.height+e.height,n)}},Ze=function(t){return t[t.ByPos=0]="ByPos",t[t.ByHeight=1]="ByHeight",t[t.ByPosNoHeight=2]="ByPosNoHeight",t}(Ze||(Ze={})),Jp=.001,Wn=class t{constructor(e,n,a=2){this.length=e,this.height=n,this.flags=a}get outdated(){return(this.flags&2)>0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e){this.height!=e&&(Math.abs(this.height-e)>Jp&&(rc=!0),this.height=e)}replace(e,n,a){return t.of(a)}decomposeLeft(e,n){n.push(this)}decomposeRight(e,n){n.push(this)}applyChanges(e,n,a,r){let i=this,o=a.doc;for(let s=r.length-1;s>=0;s--){let{fromA:c,toA:A,fromB:d,toB:u}=r[s],p=i.lineAt(c,Ze.ByPosNoHeight,a.setDoc(n),0,0),m=p.to>=A?p:i.lineAt(A,Ze.ByPosNoHeight,a,0,0);for(u+=m.to-A,A=m.to;s>0&&p.from<=r[s-1].toA;)c=r[s-1].fromA,d=r[s-1].fromB,s--,c<p.from&&(p=i.lineAt(c,Ze.ByPosNoHeight,a,0,0));d+=p.from-c,c=p.from;let f=Ck.build(a.setDoc(o),e,d,u);i=lm(i,i.replace(c,A,f))}return i.updateHeight(a,0)}static empty(){return new ya(0,0,0)}static of(e){if(e.length==1)return e[0];let n=0,a=e.length,r=0,i=0;for(;;)if(n==a)if(r>i*2){let s=e[n-1];s.break?e.splice(--n,1,s.left,null,s.right):e.splice(--n,1,s.left,s.right),a+=1+s.break,r-=s.size}else if(i>r*2){let s=e[a];s.break?e.splice(a,1,s.left,null,s.right):e.splice(a,1,s.left,s.right),a+=2+s.break,i-=s.size}else break;else if(r<i){let s=e[n++];s&&(r+=s.size)}else{let s=e[--a];s&&(i+=s.size)}let o=0;return e[n-1]==null?(o=1,n--):e[n]==null&&(o=1,a++),new kk(t.of(e.slice(0,n)),o,t.of(e.slice(a)))}};function lm(t,e){return t==e?t:(t.constructor!=e.constructor&&(rc=!0),e)}Wn.prototype.size=1;var A5=X.replace({}),Am=class extends Wn{constructor(e,n,a){super(e,n),this.deco=a,this.spaceAbove=0}mainBlock(e,n){return new Ta(n,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.deco||0)}blockAt(e,n,a,r){return this.spaceAbove&&e<a+this.spaceAbove?new Ta(r,0,a,this.spaceAbove,A5):this.mainBlock(a,r)}lineAt(e,n,a,r,i){let o=this.mainBlock(r,i);return this.spaceAbove?this.blockAt(0,a,r,i).join(o):o}forEachLine(e,n,a,r,i,o){e<=i+this.length&&n>=i&&o(this.lineAt(0,Ze.ByPos,a,r,i))}setMeasuredHeight(e){let n=e.heights[e.index++];n<0?(this.spaceAbove=-n,n=e.heights[e.index++]):this.spaceAbove=0,this.setHeight(n)}updateHeight(e,n=0,a=!1,r){return r&&r.from<=n&&r.more&&this.setMeasuredHeight(r),this.outdated=!1,this}toString(){return`block(${this.length})`}},ya=class t extends Am{constructor(e,n,a){super(e,n,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=a}mainBlock(e,n){return new Ta(n,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(e,n,a){let r=a[0];return a.length==1&&(r instanceof t||r instanceof Ii&&r.flags&4)&&Math.abs(this.length-r.length)<10?(r instanceof Ii?r=new t(r.length,this.height,this.spaceAbove):r.height=this.height,this.outdated||(r.outdated=!1),r):Wn.of(a)}updateHeight(e,n=0,a=!1,r){return r&&r.from<=n&&r.more?this.setMeasuredHeight(r):(a||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}},Ii=class t extends Wn{constructor(e){super(e,0)}heightMetrics(e,n){let a=e.doc.lineAt(n).number,r=e.doc.lineAt(n+this.length).number,i=r-a+1,o,s=0;if(e.lineWrapping){let c=Math.min(this.height,e.lineHeight*i);o=c/i,this.length>i+1&&(s=(this.height-c)/(this.length-i-1))}else o=this.height/i;return{firstLine:a,lastLine:r,perLine:o,perChar:s}}blockAt(e,n,a,r){let{firstLine:i,lastLine:o,perLine:s,perChar:c}=this.heightMetrics(n,r);if(n.lineWrapping){let A=r+(e<n.lineHeight?0:Math.round(Math.max(0,Math.min(1,(e-a)/this.height))*this.length)),d=n.doc.lineAt(A),u=s+d.length*c,p=Math.max(a,e-u/2);return new Ta(d.from,d.length,p,u,0)}else{let A=Math.max(0,Math.min(o-i,Math.floor((e-a)/s))),{from:d,length:u}=n.doc.line(i+A);return new Ta(d,u,a+s*A,s,0)}}lineAt(e,n,a,r,i){if(n==Ze.ByHeight)return this.blockAt(e,a,r,i);if(n==Ze.ByPosNoHeight){let{from:m,to:f}=a.doc.lineAt(e);return new Ta(m,f-m,0,0,0)}let{firstLine:o,perLine:s,perChar:c}=this.heightMetrics(a,i),A=a.doc.lineAt(e),d=s+A.length*c,u=A.number-o,p=r+s*u+c*(A.from-i-u);return new Ta(A.from,A.length,Math.max(r,Math.min(p,r+this.height-d)),d,0)}forEachLine(e,n,a,r,i,o){e=Math.max(e,i),n=Math.min(n,i+this.length);let{firstLine:s,perLine:c,perChar:A}=this.heightMetrics(a,i);for(let d=e,u=r;d<=n;){let p=a.doc.lineAt(d);if(d==e){let f=p.number-s;u+=c*f+A*(e-i-f)}let m=c+A*p.length;o(new Ta(p.from,p.length,u,m,0)),u+=m,d=p.to+1}}replace(e,n,a){let r=this.length-n;if(r>0){let i=a[a.length-1];i instanceof t?a[a.length-1]=new t(i.length+r):a.push(null,new t(r-1))}if(e>0){let i=a[0];i instanceof t?a[0]=new t(e+i.length):a.unshift(new t(e-1),null)}return Wn.of(a)}decomposeLeft(e,n){n.push(new t(e-1),null)}decomposeRight(e,n){n.push(null,new t(this.length-e-1))}updateHeight(e,n=0,a=!1,r){let i=n+this.length;if(r&&r.from<=n+this.length&&r.more){let o=[],s=Math.max(n,r.from),c=-1;for(r.from>n&&o.push(new t(r.from-n-1).updateHeight(e,n));s<=i&&r.more;){let d=e.doc.lineAt(s).length;o.length&&o.push(null);let u=r.heights[r.index++],p=0;u<0&&(p=-u,u=r.heights[r.index++]),c==-1?c=u:Math.abs(u-c)>=Jp&&(c=-2);let m=new ya(d,u,p);m.outdated=!1,o.push(m),s+=d+1}s<=i&&o.push(null,new t(i-s).updateHeight(e,s));let A=Wn.of(o);return(c<0||Math.abs(A.height-this.height)>=Jp||Math.abs(c-this.heightMetrics(e,n).perLine)>=Jp)&&(rc=!0),lm(this,A)}else(a||this.outdated)&&(this.setHeight(e.heightForGap(n,n+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}},kk=class extends Wn{constructor(e,n,a){super(e.length+n+a.length,e.height+a.height,n|(e.outdated||a.outdated?2:0)),this.left=e,this.right=a,this.size=e.size+a.size}get break(){return this.flags&1}blockAt(e,n,a,r){let i=a+this.left.height;return e<i?this.left.blockAt(e,n,a,r):this.right.blockAt(e,n,i,r+this.left.length+this.break)}lineAt(e,n,a,r,i){let o=r+this.left.height,s=i+this.left.length+this.break,c=n==Ze.ByHeight?e<o:e<s,A=c?this.left.lineAt(e,n,a,r,i):this.right.lineAt(e,n,a,o,s);if(this.break||(c?A.to<s:A.from>s))return A;let d=n==Ze.ByPosNoHeight?Ze.ByPosNoHeight:Ze.ByPos;return c?A.join(this.right.lineAt(s,d,a,o,s)):this.left.lineAt(s,d,a,r,i).join(A)}forEachLine(e,n,a,r,i,o){let s=r+this.left.height,c=i+this.left.length+this.break;if(this.break)e<c&&this.left.forEachLine(e,n,a,r,i,o),n>=c&&this.right.forEachLine(e,n,a,s,c,o);else{let A=this.lineAt(c,Ze.ByPos,a,r,i);e<A.from&&this.left.forEachLine(e,A.from-1,a,r,i,o),A.to>=e&&A.from<=n&&o(A),n>A.to&&this.right.forEachLine(A.to+1,n,a,s,c,o)}}replace(e,n,a){let r=this.left.length+this.break;if(n<r)return this.balanced(this.left.replace(e,n,a),this.right);if(e>this.left.length)return this.balanced(this.left,this.right.replace(e-r,n-r,a));let i=[];e>0&&this.decomposeLeft(e,i);let o=i.length;for(let s of a)i.push(s);if(e>0&&GI(i,o-1),n<this.length){let s=i.length;this.decomposeRight(n,i),GI(i,s)}return Wn.of(i)}decomposeLeft(e,n){let a=this.left.length;if(e<=a)return this.left.decomposeLeft(e,n);n.push(this.left),this.break&&(a++,e>=a&&n.push(null)),e>a&&this.right.decomposeLeft(e-a,n)}decomposeRight(e,n){let a=this.left.length,r=a+this.break;if(e>=r)return this.right.decomposeRight(e-r,n);e<a&&this.left.decomposeRight(e,n),this.break&&e<r&&n.push(null),n.push(this.right)}balanced(e,n){return e.size>2*n.size||n.size>2*e.size?Wn.of(this.break?[e,null,n]:[e,n]):(this.left=lm(this.left,e),this.right=lm(this.right,n),this.setHeight(e.height+n.height),this.outdated=e.outdated||n.outdated,this.size=e.size+n.size,this.length=e.length+this.break+n.length,this)}updateHeight(e,n=0,a=!1,r){let{left:i,right:o}=this,s=n+i.length+this.break,c=null;return r&&r.from<=n+i.length&&r.more?c=i=i.updateHeight(e,n,a,r):i.updateHeight(e,n,a),r&&r.from<=s+o.length&&r.more?c=o=o.updateHeight(e,s,a,r):o.updateHeight(e,s,a),c?this.balanced(i,o):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}};function GI(t,e){let n,a;t[e]==null&&(n=t[e-1])instanceof Ii&&(a=t[e+1])instanceof Ii&&t.splice(e-1,3,new Ii(n.length+1+a.length))}var d5=5,Ck=class t{constructor(e,n){this.pos=e,this.oracle=n,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,n){if(this.lineStart>-1){let a=Math.min(n,this.lineEnd),r=this.nodes[this.nodes.length-1];r instanceof ya?r.length+=a-this.pos:(a>this.pos||!this.isCovered)&&this.nodes.push(new ya(a-this.pos,-1,0)),this.writtenTo=a,n>a&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=n}point(e,n,a){if(e<n||a.heightRelevant){let r=a.widget?a.widget.estimatedHeight:0,i=a.widget?a.widget.lineBreaks:0;r<0&&(r=this.oracle.lineHeight);let o=n-e;a.block?this.addBlock(new Am(o,r,a)):(o||i||r>=d5)&&this.addLineDeco(r,i,o)}else n>e&&this.span(e,n);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:e,to:n}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=n,this.writtenTo<e&&((this.writtenTo<e-1||this.nodes[this.nodes.length-1]==null)&&this.nodes.push(this.blankContent(this.writtenTo,e-1)),this.nodes.push(null)),this.pos>e&&this.nodes.push(new ya(this.pos-e,-1,0)),this.writtenTo=this.pos}blankContent(e,n){let a=new Ii(n-e);return this.oracle.doc.lineAt(e).to==n&&(a.flags|=4),a}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof ya)return e;let n=new ya(0,-1,0);return this.nodes.push(n),n}addBlock(e){this.enterLine();let n=e.deco;n&&n.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,n&&n.endSide>0&&(this.covering=e)}addLineDeco(e,n,a){let r=this.ensureLine();r.length+=a,r.collapsed+=a,r.widgetHeight=Math.max(r.widgetHeight,e),r.breaks+=n,this.writtenTo=this.pos=this.pos+a}finish(e){let n=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(n instanceof ya)&&!this.isCovered?this.nodes.push(new ya(0,-1,0)):(this.writtenTo<this.pos||n==null)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos));let a=e;for(let r of this.nodes)r instanceof ya&&r.updateHeight(this.oracle,a),a+=r?r.length:1;return this.nodes}static build(e,n,a,r){let i=new t(a,e);return xe.spans(n,a,r,i,0),i.finish(a)}};function u5(t,e,n){let a=new _k;return xe.compare(t,e,n,a,0),a.changes}var _k=class{constructor(){this.changes=[]}compareRange(){}comparePoint(e,n,a,r){(e<n||a&&a.heightRelevant||r&&r.heightRelevant)&&Js(e,n,this.changes,5)}};function p5(t,e){let n=t.getBoundingClientRect(),a=t.ownerDocument,r=a.defaultView||window,i=Math.max(0,n.left),o=Math.min(r.innerWidth,n.right),s=Math.max(0,n.top),c=Math.min(r.innerHeight,n.bottom);for(let A=t.parentNode;A&&A!=a.body;)if(A.nodeType==1){let d=A,u=window.getComputedStyle(d);if((d.scrollHeight>d.clientHeight||d.scrollWidth>d.clientWidth)&&u.overflow!="visible"){let p=d.getBoundingClientRect();i=Math.max(i,p.left),o=Math.min(o,p.right),s=Math.max(s,p.top),c=Math.min(A==t.parentNode?r.innerHeight:c,p.bottom)}A=u.position=="absolute"||u.position=="fixed"?d.offsetParent:d.parentNode}else if(A.nodeType==11)A=A.host;else break;return{left:i-n.left,right:Math.max(i,o)-n.left,top:s-(n.top+e),bottom:Math.max(s,c)-(n.top+e)}}function m5(t){let e=t.getBoundingClientRect(),n=t.ownerDocument.defaultView||window;return e.left<n.innerWidth&&e.right>0&&e.top<n.innerHeight&&e.bottom>0}function g5(t,e){let n=t.getBoundingClientRect();return{left:0,right:n.right-n.left,top:e,bottom:n.bottom-(n.top+e)}}var Kl=class{constructor(e,n,a,r){this.from=e,this.to=n,this.size=a,this.displaySize=r}static same(e,n){if(e.length!=n.length)return!1;for(let a=0;a<e.length;a++){let r=e[a],i=n[a];if(r.from!=i.from||r.to!=i.to||r.size!=i.size)return!1}return!0}draw(e,n){return X.replace({widget:new Bk(this.displaySize*(n?e.scaleY:e.scaleX),n)}).range(this.from,this.to)}},Bk=class extends pn{constructor(e,n){super(),this.size=e,this.vertical=n}eq(e){return e.size==this.size&&e.vertical==this.vertical}toDOM(){let e=document.createElement("div");return this.vertical?e.style.height=this.size+"px":(e.style.width=this.size+"px",e.style.height="2px",e.style.display="inline-block"),e}get estimatedHeight(){return this.vertical?this.size:-1}},dm=class{constructor(e){this.state=e,this.pixelViewport={left:0,right:window.innerWidth,top:0,bottom:0},this.inView=!0,this.paddingTop=0,this.paddingBottom=0,this.contentDOMWidth=0,this.contentDOMHeight=0,this.editorHeight=0,this.editorWidth=0,this.scrollTop=0,this.scrolledToBottom=!1,this.scaleX=1,this.scaleY=1,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=zI,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=Oe.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let n=e.facet(Zk).some(a=>typeof a!="function"&&a.class=="cm-lineWrapping");this.heightOracle=new yk(n),this.stateDeco=e.facet(aA).filter(a=>typeof a!="function"),this.heightMap=Wn.empty().applyChanges(this.stateDeco,ke.empty,this.heightOracle.setDoc(e.doc),[new Ga(0,0,0,e.doc.length)]);for(let a=0;a<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());a++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=X.set(this.lineGaps.map(a=>a.draw(this,!1))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:n}=this.state.selection;for(let a=0;a<=1;a++){let r=a?n.head:n.anchor;if(!e.some(({from:i,to:o})=>r>=i&&r<=o)){let{from:i,to:o}=this.lineBlockAt(r);e.push(new Ys(i,o))}}return this.viewports=e.sort((a,r)=>a.from-r.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?zI:new xk(this.heightOracle,this.heightMap,this.viewports),e.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(Gl(e,this.scaler))})}update(e,n=null){this.state=e.state;let a=this.stateDeco;this.stateDeco=this.state.facet(aA).filter(d=>typeof d!="function");let r=e.changedRanges,i=Ga.extendWithRanges(r,u5(a,this.stateDeco,e?e.changes:An.empty(this.state.doc.length))),o=this.heightMap.height,s=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);qI(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),i),(this.heightMap.height!=o||rc)&&(e.flags|=2),s?(this.scrollAnchorPos=e.changes.mapPos(s.from,-1),this.scrollAnchorHeight=s.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=o);let c=i.length?this.mapViewport(this.viewport,e.changes):this.viewport;(n&&(n.range.head<c.from||n.range.head>c.to)||!this.viewportIsAppropriate(c))&&(c=this.getViewport(0,n));let A=c.from!=this.viewport.from||c.to!=this.viewport.to;this.viewport=c,e.flags|=this.updateForViewport(),(A||!e.changes.empty||e.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(e.changes),n&&(this.scrollTarget=n),!this.mustEnforceCursorAssoc&&e.selectionSet&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(vD)&&(this.mustEnforceCursorAssoc=!0)}measure(e){let n=e.contentDOM,a=window.getComputedStyle(n),r=this.heightOracle,i=a.whiteSpace;this.defaultTextDirection=a.direction=="rtl"?Oe.RTL:Oe.LTR;let o=this.heightOracle.mustRefreshForWrapping(i),s=n.getBoundingClientRect(),c=o||this.mustMeasureContent||this.contentDOMHeight!=s.height;this.contentDOMHeight=s.height,this.mustMeasureContent=!1;let A=0,d=0;if(s.width&&s.height){let{scaleX:E,scaleY:Q}=lD(n,s);(E>.005&&Math.abs(this.scaleX-E)>.005||Q>.005&&Math.abs(this.scaleY-Q)>.005)&&(this.scaleX=E,this.scaleY=Q,A|=16,o=c=!0)}let u=(parseInt(a.paddingTop)||0)*this.scaleY,p=(parseInt(a.paddingBottom)||0)*this.scaleY;(this.paddingTop!=u||this.paddingBottom!=p)&&(this.paddingTop=u,this.paddingBottom=p,A|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(r.lineWrapping&&(c=!0),this.editorWidth=e.scrollDOM.clientWidth,A|=16);let m=e.scrollDOM.scrollTop*this.scaleY;this.scrollTop!=m&&(this.scrollAnchorHeight=-1,this.scrollTop=m),this.scrolledToBottom=dD(e.scrollDOM);let f=(this.printing?g5:p5)(n,this.paddingTop),h=f.top-this.pixelViewport.top,w=f.bottom-this.pixelViewport.bottom;this.pixelViewport=f;let b=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(b!=this.inView&&(this.inView=b,b&&(c=!0)),!this.inView&&!this.scrollTarget&&!m5(e.dom))return 0;let y=s.width;if((this.contentDOMWidth!=y||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=s.width,this.editorHeight=e.scrollDOM.clientHeight,A|=16),c){let E=e.docView.measureVisibleLineHeights(this.viewport);if(r.mustRefreshForHeights(E)&&(o=!0),o||r.lineWrapping&&Math.abs(y-this.contentDOMWidth)>r.charWidth){let{lineHeight:Q,charWidth:D,textHeight:F}=e.docView.measureTextSize();o=Q>0&&r.refresh(i,Q,D,F,Math.max(5,y/D),E),o&&(e.docView.minWidth=0,A|=16)}h>0&&w>0?d=Math.max(h,w):h<0&&w<0&&(d=Math.min(h,w)),qI();for(let Q of this.viewports){let D=Q.from==this.viewport.from?E:e.docView.measureVisibleLineHeights(Q);this.heightMap=(o?Wn.empty().applyChanges(this.stateDeco,ke.empty,this.heightOracle,[new Ga(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(r,0,o,new wk(Q.from,D))}rc&&(A|=2)}let k=!this.viewportIsAppropriate(this.viewport,d)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return k&&(A&2&&(A|=this.updateScaler()),this.viewport=this.getViewport(d,this.scrollTarget),A|=this.updateForViewport()),(A&2||k)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(o?[]:this.lineGaps,e)),A|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),A}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,n){let a=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),r=this.heightMap,i=this.heightOracle,{visibleTop:o,visibleBottom:s}=this,c=new Ys(r.lineAt(o-a*1e3,Ze.ByHeight,i,0,0).from,r.lineAt(s+(1-a)*1e3,Ze.ByHeight,i,0,0).to);if(n){let{head:A}=n.range;if(A<c.from||A>c.to){let d=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),u=r.lineAt(A,Ze.ByPos,i,0,0),p;n.y=="center"?p=(u.top+u.bottom)/2-d/2:n.y=="start"||n.y=="nearest"&&A<c.from?p=u.top:p=u.bottom-d,c=new Ys(r.lineAt(p-1e3/2,Ze.ByHeight,i,0,0).from,r.lineAt(p+d+1e3/2,Ze.ByHeight,i,0,0).to)}}return c}mapViewport(e,n){let a=n.mapPos(e.from,-1),r=n.mapPos(e.to,1);return new Ys(this.heightMap.lineAt(a,Ze.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(r,Ze.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:e,to:n},a=0){if(!this.inView)return!0;let{top:r}=this.heightMap.lineAt(e,Ze.ByPos,this.heightOracle,0,0),{bottom:i}=this.heightMap.lineAt(n,Ze.ByPos,this.heightOracle,0,0),{visibleTop:o,visibleBottom:s}=this;return(e==0||r<=o-Math.max(10,Math.min(-a,250)))&&(n==this.state.doc.length||i>=s+Math.max(10,Math.min(a,250)))&&r>o-2*1e3&&i<s+2*1e3}mapLineGaps(e,n){if(!e.length||n.empty)return e;let a=[];for(let r of e)n.touchesRange(r.from,r.to)||a.push(new Kl(n.mapPos(r.from),n.mapPos(r.to),r.size,r.displaySize));return a}ensureLineGaps(e,n){let a=this.heightOracle.lineWrapping,r=a?1e4:2e3,i=r>>1,o=r<<1;if(this.defaultTextDirection!=Oe.LTR&&!a)return[];let s=[],c=(d,u,p,m)=>{if(u-d<i)return;let f=this.state.selection.main,h=[f.from];f.empty||h.push(f.to);for(let b of h)if(b>d&&b<u){c(d,b-10,p,m),c(b+10,u,p,m);return}let w=b5(e,b=>b.from>=p.from&&b.to<=p.to&&Math.abs(b.from-d)<i&&Math.abs(b.to-u)<i&&!h.some(y=>b.from<y&&b.to>y));if(!w){if(u<p.to&&n&&a&&n.visibleRanges.some(k=>k.from<=u&&k.to>=u)){let k=n.moveToLineBoundary(L.cursor(u),!1,!0).head;k>d&&(u=k)}let b=this.gapSize(p,d,u,m),y=a||b<2e6?b:2e6;w=new Kl(d,u,b,y)}s.push(w)},A=d=>{if(d.length<o||d.type!=Ut.Text)return;let u=f5(d.from,d.to,this.stateDeco);if(u.total<o)return;let p=this.scrollTarget?this.scrollTarget.range.head:null,m,f;if(a){let h=r/this.heightOracle.lineLength*this.heightOracle.lineHeight,w,b;if(p!=null){let y=zp(u,p),k=((this.visibleBottom-this.visibleTop)/2+h)/d.height;w=y-k,b=y+k}else w=(this.visibleTop-d.top-h)/d.height,b=(this.visibleBottom-d.top+h)/d.height;m=Gp(u,w),f=Gp(u,b)}else{let h=u.total*this.heightOracle.charWidth,w=r*this.heightOracle.charWidth,b=0;if(h>2e6)for(let D of e)D.from>=d.from&&D.from<d.to&&D.size!=D.displaySize&&D.from*this.heightOracle.charWidth+b<this.pixelViewport.left&&(b=D.size-D.displaySize);let y=this.pixelViewport.left+b,k=this.pixelViewport.right+b,E,Q;if(p!=null){let D=zp(u,p),F=((k-y)/2+w)/h;E=D-F,Q=D+F}else E=(y-w)/h,Q=(k+w)/h;m=Gp(u,E),f=Gp(u,Q)}m>d.from&&c(d.from,m,d,u),f<d.to&&c(f,d.to,d,u)};for(let d of this.viewportLines)Array.isArray(d.type)?d.type.forEach(A):A(d);return s}gapSize(e,n,a,r){let i=zp(r,a)-zp(r,n);return this.heightOracle.lineWrapping?e.height*i:r.total*this.heightOracle.charWidth*i}updateLineGaps(e){Kl.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=X.set(e.map(n=>n.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(e){let n=this.stateDeco;this.lineGaps.length&&(n=n.concat(this.lineGapDeco));let a=[];xe.spans(n,this.viewport.from,this.viewport.to,{span(i,o){a.push({from:i,to:o})},point(){}},20);let r=0;if(a.length!=this.visibleRanges.length)r=12;else for(let i=0;i<a.length&&!(r&8);i++){let o=this.visibleRanges[i],s=a[i];(o.from!=s.from||o.to!=s.to)&&(r|=4,e&&e.mapPos(o.from,-1)==s.from&&e.mapPos(o.to,1)==s.to||(r|=8))}return this.visibleRanges=a,r}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(n=>n.from<=e&&n.to>=e)||Gl(this.heightMap.lineAt(e,Ze.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return e>=this.viewportLines[0].top&&e<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(n=>n.top<=e&&n.bottom>=e)||Gl(this.heightMap.lineAt(this.scaler.fromDOM(e),Ze.ByHeight,this.heightOracle,0,0),this.scaler)}scrollAnchorAt(e){let n=this.lineBlockAtHeight(e+8);return n.from>=this.viewport.from||this.viewportLines[0].top-e>200?n:this.viewportLines[0]}elementAtHeight(e){return Gl(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}},Ys=class{constructor(e,n){this.from=e,this.to=n}};function f5(t,e,n){let a=[],r=t,i=0;return xe.spans(n,t,e,{span(){},point(o,s){o>r&&(a.push({from:r,to:o}),i+=o-r),r=s}},20),r<e&&(a.push({from:r,to:e}),i+=e-r),{total:i,ranges:a}}function Gp({total:t,ranges:e},n){if(n<=0)return e[0].from;if(n>=1)return e[e.length-1].to;let a=Math.floor(t*n);for(let r=0;;r++){let{from:i,to:o}=e[r],s=o-i;if(a<=s)return i+a;a-=s}}function zp(t,e){let n=0;for(let{from:a,to:r}of t.ranges){if(e<=r){n+=e-a;break}n+=r-a}return n/t.total}function b5(t,e){for(let n of t)if(e(n))return n}var zI={toDOM(t){return t},fromDOM(t){return t},scale:1,eq(t){return t==this}},xk=class t{constructor(e,n,a){let r=0,i=0,o=0;this.viewports=a.map(({from:s,to:c})=>{let A=n.lineAt(s,Ze.ByPos,e,0,0).top,d=n.lineAt(c,Ze.ByPos,e,0,0).bottom;return r+=d-A,{from:s,to:c,top:A,bottom:d,domTop:0,domBottom:0}}),this.scale=(7e6-r)/(n.height-r);for(let s of this.viewports)s.domTop=o+(s.top-i)*this.scale,o=s.domBottom=s.domTop+(s.bottom-s.top),i=s.bottom}toDOM(e){for(let n=0,a=0,r=0;;n++){let i=n<this.viewports.length?this.viewports[n]:null;if(!i||e<i.top)return r+(e-a)*this.scale;if(e<=i.bottom)return i.domTop+(e-i.top);a=i.bottom,r=i.domBottom}}fromDOM(e){for(let n=0,a=0,r=0;;n++){let i=n<this.viewports.length?this.viewports[n]:null;if(!i||e<i.domTop)return a+(e-r)/this.scale;if(e<=i.domBottom)return i.top+(e-i.domTop);a=i.bottom,r=i.domBottom}}eq(e){return e instanceof t?this.scale==e.scale&&this.viewports.length==e.viewports.length&&this.viewports.every((n,a)=>n.from==e.viewports[a].from&&n.to==e.viewports[a].to):!1}};function Gl(t,e){if(e.scale==1)return t;let n=e.toDOM(t.top),a=e.toDOM(t.bottom);return new Ta(t.from,t.length,n,a-n,Array.isArray(t._content)?t._content.map(r=>Gl(r,e)):t._content)}var Up=G.define({combine:t=>t.join(" ")}),vk=G.define({combine:t=>t.indexOf(!0)>-1}),Ek=ha.newName(),WD=ha.newName(),KD=ha.newName(),JD={"&light":"."+WD,"&dark":"."+KD};function Qk(t,e,n){return new ha(e,{finish(a){return/&/.test(a)?a.replace(/&\w*/,r=>{if(r=="&")return t;if(!n||!n[r])throw new RangeError(`Unsupported selector: ${r}`);return n[r]}):t+" "+a}})}var h5=Qk("."+Ek,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#ddd"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",zIndex:200},".cm-gutters-before":{insetInlineStart:0},".cm-gutters-after":{insetInlineEnd:0},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",border:"0px solid #ddd","&.cm-gutters-before":{borderRightWidth:"1px"},"&.cm-gutters-after":{borderLeftWidth:"1px"}},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-dialog":{padding:"2px 19px 4px 6px",position:"relative","& label":{fontSize:"80%"}},".cm-dialog-close":{position:"absolute",top:"3px",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",fontSize:"14px",padding:"0"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top",userSelect:"none"},".cm-highlightSpace":{backgroundImage:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)",backgroundPosition:"center"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>')`,backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},JD),y5={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},zw=H.ie&&H.ie_version<=11,Ik=class{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new Xw,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver(n=>{for(let a of n)this.queue.push(a);(H.ie&&H.ie_version<=11||H.ios&&e.composing)&&n.some(a=>a.type=="childList"&&a.removedNodes.length||a.type=="characterData"&&a.oldValue.length>a.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&H.android&&e.constructor.EDIT_CONTEXT!==!1&&!(H.chrome&&H.chrome_version<126)&&(this.editContext=new Dk(e),e.state.facet(Lr)&&(e.contentDOM.editContext=this.editContext.editContext)),zw&&(this.onCharData=n=>{this.queue.push({target:n.target,type:"characterData",oldValue:n.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var n;((n=this.view.docView)===null||n===void 0?void 0:n.lastUpdate)<Date.now()-75&&this.onResize()}),this.resizeScroll.observe(e.scrollDOM)),this.addWindowListeners(this.win=e.win),this.start(),typeof IntersectionObserver=="function"&&(this.intersection=new IntersectionObserver(n=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),n.length>0&&n[n.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(n=>{n.length>0&&n[n.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runHandlers("scroll",e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(e){(e.type=="change"||!e.type)&&!e.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((n,a)=>n!=e[a]))){this.gapIntersection.disconnect();for(let n of e)this.gapIntersection.observe(n);this.gaps=e}}onSelectionChange(e){let n=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:a}=this,r=this.selectionRange;if(a.state.facet(Lr)?a.root.activeElement!=this.dom:!Wp(this.dom,r))return;let i=r.anchorNode&&a.docView.tile.nearest(r.anchorNode);if(i&&i.isWidget()&&i.widget.ignoreEvent(e)){n||(this.selectionChanged=!1);return}(H.ie&&H.ie_version<=11||H.android&&H.chrome)&&!a.state.selection.main.empty&&r.focusNode&&Ul(r.focusNode,r.focusOffset,r.anchorNode,r.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,n=tA(e.root);if(!n)return!1;let a=H.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&w5(this.view,n)||n;if(!a||this.selectionRange.eq(a))return!1;let r=Wp(this.dom,a);return r&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&gH(this.dom,a)?(this.view.inputState.lastFocusTime=0,e.docView.updateSelection(),!1):(this.selectionRange.setRange(a),r&&(this.selectionChanged=!0),!0)}setSelectionRange(e,n){this.selectionRange.set(e.node,e.offset,n.node,n.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let e=0,n=null;for(let a=this.dom;a;)if(a.nodeType==1)!n&&e<this.scrollTargets.length&&this.scrollTargets[e]==a?e++:n||(n=this.scrollTargets.slice(0,e)),n&&n.push(a),a=a.assignedSlot||a.parentNode;else if(a.nodeType==11)a=a.host;else break;if(e<this.scrollTargets.length&&!n&&(n=this.scrollTargets.slice(0,e)),n){for(let a of this.scrollTargets)a.removeEventListener("scroll",this.onScroll);for(let a of this.scrollTargets=n)a.addEventListener("scroll",this.onScroll)}}ignore(e){if(!this.active)return e();try{return this.stop(),e()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,y5),zw&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),zw&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(e,n){var a;if(!this.delayedAndroidKey){let r=()=>{let i=this.delayedAndroidKey;i&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=i.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&i.force&&Vs(this.dom,i.key,i.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(r)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:n,force:this.lastChange<Date.now()-50||!!(!((a=this.delayedAndroidKey)===null||a===void 0)&&a.force)})}clearDelayedAndroidKey(){this.win.cancelAnimationFrame(this.flushingAndroidKey),this.delayedAndroidKey=null,this.flushingAndroidKey=-1}flushSoon(){this.delayedFlush<0&&(this.delayedFlush=this.view.win.requestAnimationFrame(()=>{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let n=-1,a=-1,r=!1;for(let i of e){let o=this.readMutation(i);o&&(o.typeOver&&(r=!0),n==-1?{from:n,to:a}=o:(n=Math.min(o.from,n),a=Math.max(o.to,a)))}return{from:n,to:a,typeOver:r}}readChange(){let{from:e,to:n,typeOver:a}=this.processRecords(),r=this.selectionChanged&&Wp(this.dom,this.selectionRange);if(e<0&&!r)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let i=new gk(this.view,e,n,a);return this.view.docView.domChanged={newSel:i.newSel?i.newSel.main:null},i}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let n=this.readChange();if(!n)return this.view.requestMeasure(),!1;let a=this.view.state,r=PD(this.view,n);return this.view.state==a&&(n.domChanged||n.newSel&&!n.newSel.main.eq(this.view.state.selection.main))&&this.view.update([]),r}readMutation(e){let n=this.view.docView.tile.nearest(e.target);if(!n||n.isWidget())return null;if(n.markDirty(e.type=="attributes"),e.type=="childList"){let a=UI(n,e.previousSibling||e.target.previousSibling,-1),r=UI(n,e.nextSibling||e.target.nextSibling,1);return{from:a?n.posAfter(a):n.posAtStart,to:r?n.posBefore(r):n.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:n.posAtStart,to:n.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}update(e){this.editContext&&(this.editContext.update(e),e.startState.facet(Lr)!=e.state.facet(Lr)&&(e.view.contentDOM.editContext=e.state.facet(Lr)?this.editContext.editContext:null))}destroy(){var e,n,a;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(n=this.gapIntersection)===null||n===void 0||n.disconnect(),(a=this.resizeScroll)===null||a===void 0||a.disconnect();for(let r of this.scrollTargets)r.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}};function UI(t,e,n){for(;e;){let a=ut.get(e);if(a&&a.parent==t)return a;let r=e.parentNode;e=r!=t.dom?r:n>0?e.nextSibling:e.previousSibling}return null}function HI(t,e){let n=e.startContainer,a=e.startOffset,r=e.endContainer,i=e.endOffset,o=t.docView.domAtPos(t.state.selection.main.anchor,1);return Ul(o.node,o.offset,r,i)&&([n,a,r,i]=[r,i,n,a]),{anchorNode:n,anchorOffset:a,focusNode:r,focusOffset:i}}function w5(t,e){if(e.getComposedRanges){let r=e.getComposedRanges(t.root)[0];if(r)return HI(t,r)}let n=null;function a(r){r.preventDefault(),r.stopImmediatePropagation(),n=r.getTargetRanges()[0]}return t.contentDOM.addEventListener("beforeinput",a,!0),t.dom.ownerDocument.execCommand("indent"),t.contentDOM.removeEventListener("beforeinput",a,!0),n?HI(t,n):null}var Dk=class{constructor(e){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(e.state);let n=this.editContext=new window.EditContext({text:e.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,e.state.selection.main.anchor))),selectionEnd:this.toContextPos(e.state.selection.main.head)});this.handlers.textupdate=a=>{let r=e.state.selection.main,{anchor:i,head:o}=r,s=this.toEditorPos(a.updateRangeStart),c=this.toEditorPos(a.updateRangeEnd);e.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:a.updateRangeStart,editorBase:s,drifted:!1});let A=c-s>a.text.length;s==this.from&&i<this.from?s=i:c==this.to&&i>this.to&&(c=i);let d=MD(e.state.sliceDoc(s,c),a.text,(A?r.from:r.to)-s,A?"end":null);if(!d){let p=L.single(this.toEditorPos(a.selectionStart),this.toEditorPos(a.selectionEnd));p.main.eq(r)||e.dispatch({selection:p,userEvent:"select"});return}let u={from:d.from+s,to:d.toA+s,insert:ke.of(a.text.slice(d.from,d.toB).split(` +`))};if((H.mac||H.android)&&u.from==o-1&&/^\. ?$/.test(a.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(u={from:s,to:c,insert:ke.of([a.text.replace("."," ")])}),this.pendingContextChange=u,!e.state.readOnly){let p=this.to-this.from+(u.to-u.from+u.insert.length);Wk(e,u,L.single(this.toEditorPos(a.selectionStart,p),this.toEditorPos(a.selectionEnd,p)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)),u.from<u.to&&!u.insert.length&&e.inputState.composing>=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(n.text.slice(Math.max(0,a.updateRangeStart-1),Math.min(n.text.length,a.updateRangeStart+1)))&&this.handlers.compositionend(a)},this.handlers.characterboundsupdate=a=>{let r=[],i=null;for(let o=this.toEditorPos(a.rangeStart),s=this.toEditorPos(a.rangeEnd);o<s;o++){let c=e.coordsForChar(o);i=c&&new DOMRect(c.left,c.top,c.right-c.left,c.bottom-c.top)||i||new DOMRect,r.push(i)}n.updateCharacterBounds(a.rangeStart,r)},this.handlers.textformatupdate=a=>{let r=[];for(let i of a.getTextFormats()){let o=i.underlineStyle,s=i.underlineThickness;if(!/none/i.test(o)&&!/none/i.test(s)){let c=this.toEditorPos(i.rangeStart),A=this.toEditorPos(i.rangeEnd);if(c<A){let d=`text-decoration: underline ${/^[a-z]/.test(o)?o+" ":o=="Dashed"?"dashed ":o=="Squiggle"?"wavy ":""}${/thin/i.test(s)?1:2}px`;r.push(X.mark({attributes:{style:d}}).range(c,A))}}}e.dispatch({effects:QD.of(X.set(r))})},this.handlers.compositionstart=()=>{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(e.inputState.composing=-1,e.inputState.compositionFirstChange=null,this.composing){let{drifted:a}=this.composing;this.composing=null,a&&this.reset(e.state)}};for(let a in this.handlers)n.addEventListener(a,this.handlers[a]);this.measureReq={read:a=>{this.editContext.updateControlBounds(a.contentDOM.getBoundingClientRect());let r=tA(a.root);r&&r.rangeCount&&this.editContext.updateSelectionBounds(r.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let n=0,a=!1,r=this.pendingContextChange;return e.changes.iterChanges((i,o,s,c,A)=>{if(a)return;let d=A.length-(o-i);if(r&&o>=r.to)if(r.from==i&&r.to==o&&r.insert.eq(A)){r=this.pendingContextChange=null,n+=d,this.to+=d;return}else r=null,this.revertPending(e.state);if(i+=n,o+=n,o<=this.from)this.from+=d,this.to+=d;else if(i<this.to){if(i<this.from||o>this.to||this.to-this.from+A.length>3e4){a=!0;return}this.editContext.updateText(this.toContextPos(i),this.toContextPos(o),A.toString()),this.to+=d}n+=d}),r&&!a&&this.revertPending(e.state),!a}update(e){let n=this.pendingContextChange,a=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(a.from,a.to)&&e.transactions.some(r=>!r.isUserEvent("input.type")&&r.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=e.changes.mapPos(this.composing.editorBase)):!this.applyEdits(e)||!this.rangeIsValid(e.state)?(this.pendingContextChange=null,this.reset(e.state)):(e.docChanged||e.selectionSet||n)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:n}=e.selection.main;this.from=Math.max(0,n-1e4),this.to=Math.min(e.doc.length,n+1e4)}reset(e){this.resetRange(e),this.editContext.updateText(0,this.editContext.text.length,e.doc.sliceString(this.from,this.to)),this.setSelection(e)}revertPending(e){let n=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(n.from),this.toContextPos(n.from+n.insert.length),e.doc.sliceString(n.from,n.to))}setSelection(e){let{main:n}=e.selection,a=this.toContextPos(Math.max(this.from,Math.min(this.to,n.anchor))),r=this.toContextPos(n.head);(this.editContext.selectionStart!=a||this.editContext.selectionEnd!=r)&&this.editContext.updateSelection(a,r)}rangeIsValid(e){let{head:n}=e.selection.main;return!(this.from>0&&n-this.from<500||this.to<e.doc.length&&this.to-n<500||this.to-this.from>1e4*3)}toEditorPos(e,n=this.to-this.from){e=Math.min(e,n);let a=this.composing;return a&&a.drifted?a.editorBase+(e-a.contextBase):e+this.from}toContextPos(e){let n=this.composing;return n&&n.drifted?n.contextBase+(e-n.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}},T=class t{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){var n;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),e.parent&&e.parent.appendChild(this.dom);let{dispatch:a}=e;this.dispatchTransactions=e.dispatchTransactions||a&&(r=>r.forEach(i=>a(i,this)))||(r=>this.update(r)),this.dispatch=this.dispatch.bind(this),this._root=e.root||mH(e.parent)||document,this.viewState=new dm(e.state||Fe.create(e)),e.scrollTo&&e.scrollTo.is(Mp)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(Zs).map(r=>new Zl(r));for(let r of this.plugins)r.update(this);this.observer=new Ik(this),this.inputState=new fk(this),this.inputState.ensureHandlers(this.plugins),this.docView=new sm(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((n=document.fonts)===null||n===void 0)&&n.ready&&document.fonts.ready.then(()=>this.requestMeasure())}dispatch(...e){let n=e.length==1&&e[0]instanceof kt?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(n,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let n=!1,a=!1,r,i=this.state;for(let p of e){if(p.startState!=i)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");i=p.state}if(this.destroyed){this.viewState.state=i;return}let o=this.hasFocus,s=0,c=null;e.some(p=>p.annotation(HD))?(this.inputState.notifiedFocused=o,s=1):o!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=o,c=ZD(i,o),c||(s=1));let A=this.observer.delayedAndroidKey,d=null;if(A?(this.observer.clearDelayedAndroidKey(),d=this.observer.readChange(),(d&&!this.state.doc.eq(i.doc)||!this.state.selection.eq(i.selection))&&(d=null)):this.observer.clear(),i.facet(Fe.phrases)!=this.state.facet(Fe.phrases))return this.setState(i);r=im.create(this,i,e),r.flags|=s;let u=this.viewState.scrollTarget;try{this.updateState=2;for(let p of e){if(u&&(u=u.map(p.changes)),p.scrollIntoView){let{main:m}=p.state.selection;u=new Hl(m.empty?m:L.cursor(m.head,m.head>m.anchor?-1:1))}for(let m of p.effects)m.is(Mp)&&(u=m.value.clip(this.state))}this.viewState.update(r,u),this.bidiCache=um.update(this.bidiCache,r.changes),r.empty||(this.updatePlugins(r),this.inputState.update(r)),n=this.docView.update(r),this.state.facet(Tl)!=this.styleModules&&this.mountStyles(),a=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(n,e.some(p=>p.isUserEvent("select.pointer")))}finally{this.updateState=0}if(r.startState.facet(Up)!=r.state.facet(Up)&&(this.viewState.mustMeasureContent=!0),(n||a||u||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),n&&this.docViewUpdate(),!r.empty)for(let p of this.state.facet(ak))try{p(r)}catch(m){zt(this.state,m,"update listener")}(c||d)&&Promise.resolve().then(()=>{c&&this.state==c.startState&&this.dispatch(c),d&&!PD(this,d)&&A.force&&Vs(this.contentDOM,A.key,A.keyCode)})}setState(e){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=e;return}this.updateState=2;let n=this.hasFocus;try{for(let a of this.plugins)a.destroy(this);this.viewState=new dm(e),this.plugins=e.facet(Zs).map(a=>new Zl(a)),this.pluginMap.clear();for(let a of this.plugins)a.update(this);this.docView.destroy(),this.docView=new sm(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}n&&this.focus(),this.requestMeasure()}updatePlugins(e){let n=e.startState.facet(Zs),a=e.state.facet(Zs);if(n!=a){let r=[];for(let i of a){let o=n.indexOf(i);if(o<0)r.push(new Zl(i));else{let s=this.plugins[o];s.mustUpdate=e,r.push(s)}}for(let i of this.plugins)i.mustUpdate!=e&&i.destroy(this);this.plugins=r,this.pluginMap.clear()}else for(let r of this.plugins)r.mustUpdate=e;for(let r=0;r<this.plugins.length;r++)this.plugins[r].update(this);n!=a&&this.inputState.ensureHandlers(this.plugins)}docViewUpdate(){for(let e of this.plugins){let n=e.value;if(n&&n.docViewUpdate)try{n.docViewUpdate(this)}catch(a){zt(this.state,a,"doc view update listener")}}}measure(e=!0){if(this.destroyed)return;if(this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey){this.measureScheduled=-1,this.requestMeasure();return}this.measureScheduled=0,e&&this.observer.forceFlush();let n=null,a=this.scrollDOM,r=a.scrollTop*this.scaleY,{scrollAnchorPos:i,scrollAnchorHeight:o}=this.viewState;Math.abs(r-this.viewState.scrollTop)>1&&(o=-1),this.viewState.scrollAnchorHeight=-1;try{for(let s=0;;s++){if(o<0)if(dD(a))i=-1,o=this.viewState.heightMap.height;else{let m=this.viewState.scrollAnchorAt(r);i=m.from,o=m.top}this.updateState=1;let c=this.viewState.measure(this);if(!c&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(s>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let A=[];c&4||([this.measureRequests,A]=[A,this.measureRequests]);let d=A.map(m=>{try{return m.read(this)}catch(f){return zt(this.state,f),ZI}}),u=im.create(this,this.state,[]),p=!1;u.flags|=c,n?n.flags|=c:n=u,this.updateState=2,u.empty||(this.updatePlugins(u),this.inputState.update(u),this.updateAttrs(),p=this.docView.update(u),p&&this.docViewUpdate());for(let m=0;m<A.length;m++)if(d[m]!=ZI)try{let f=A[m];f.write&&f.write(d[m],this)}catch(f){zt(this.state,f)}if(p&&this.docView.updateSelection(!0),!u.viewportChanged&&this.measureRequests.length==0){if(this.viewState.editorHeight)if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null,o=-1;continue}else{let f=(i<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(i).top)-o;if(f>1||f<-1){r=r+f,a.scrollTop=r/this.scaleY,o=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(n&&!n.empty)for(let s of this.state.facet(ak))s(n)}get themeClasses(){return Ek+" "+(this.state.facet(vk)?KD:WD)+" "+this.state.facet(Up)}updateAttrs(){let e=YI(this,ID,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),n={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(Lr)?"true":"false",class:"cm-content",style:`${H.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(n["aria-readonly"]="true"),YI(this,Zk,n);let a=this.observer.ignore(()=>{let r=vI(this.contentDOM,this.contentAttrs,n),i=vI(this.dom,this.editorAttrs,e);return r||i});return this.editorAttrs=e,this.contentAttrs=n,a}showAnnouncements(e){let n=!0;for(let a of e)for(let r of a.effects)if(r.is(t.announce)){n&&(this.announceDOM.textContent=""),n=!1;let i=this.announceDOM.appendChild(document.createElement("div"));i.textContent=r.value}}mountStyles(){this.styleModules=this.state.facet(Tl);let e=this.state.facet(t.cspNonce);ha.mount(this.root,this.styleModules.concat(h5).reverse(),e?{nonce:e}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(e.key!=null){for(let n=0;n<this.measureRequests.length;n++)if(this.measureRequests[n].key===e.key){this.measureRequests[n]=e;return}}this.measureRequests.push(e)}}plugin(e){let n=this.pluginMap.get(e);return(n===void 0||n&&n.plugin!=e)&&this.pluginMap.set(e,n=this.plugins.find(a=>a.plugin==e)||null),n&&n.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,n,a){return Gw(this,e,SI(this,e,n,a))}moveByGroup(e,n){return Gw(this,e,SI(this,e,n,a=>GH(this,e.head,a)))}visualLineSide(e,n){let a=this.bidiSpans(e),r=this.textDirectionAt(e.from),i=a[n?a.length-1:0];return L.cursor(i.side(n,r)+e.from,i.forward(!n,r)?1:-1)}moveToLineBoundary(e,n,a=!0){return qH(this,e,n,a)}moveVertically(e,n,a){return Gw(this,e,zH(this,e,n,a))}domAtPos(e,n=1){return this.docView.domAtPos(e,n)}posAtDOM(e,n=0){return this.docView.posFromDOM(e,n)}posAtCoords(e,n=!0){this.readMeasured();let a=pk(this,e,n);return a&&a.pos}posAndSideAtCoords(e,n=!0){return this.readMeasured(),pk(this,e,n)}coordsAtPos(e,n=1){this.readMeasured();let a=this.docView.coordsAt(e,n);if(!a||a.left==a.right)return a;let r=this.state.doc.lineAt(e),i=this.bidiSpans(r),o=i[qa.find(i,e-r.from,-1,n)];return rm(a,o.dir==Oe.LTR==n>0)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(xD)||e<this.viewport.from||e>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>k5)return bD(e.length);let n=this.textDirectionAt(e.from),a;for(let i of this.bidiCache)if(i.from==e.from&&i.dir==n&&(i.fresh||fD(i.isolates,a=II(this,e))))return i.order;a||(a=II(this,e));let r=CH(e.text,n,a);return this.bidiCache.push(new um(e.from,e.to,n,a,!0,r)),r}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||H.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{AD(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((e.nodeType==9?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,n={}){return Mp.of(new Hl(typeof e=="number"?L.cursor(e):e,n.y,n.x,n.yMargin,n.xMargin))}scrollSnapshot(){let{scrollTop:e,scrollLeft:n}=this.scrollDOM,a=this.viewState.scrollAnchorAt(e);return Mp.of(new Hl(L.cursor(a.from),"start","start",a.top-e,n,!0))}setTabFocusMode(e){e==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof e=="boolean"?this.inputState.tabFocusMode=e?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+e)}static domEventHandlers(e){return lt.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return lt.define(()=>({}),{eventObservers:e})}static theme(e,n){let a=ha.newName(),r=[Up.of(a),Tl.of(Qk(`.${a}`,e))];return n&&n.dark&&r.push(vk.of(!0)),r}static baseTheme(e){return In.lowest(Tl.of(Qk("."+Ek,e,JD)))}static findFromDOM(e){var n;let a=e.querySelector(".cm-content"),r=a&&ut.get(a)||ut.get(e);return((n=r?.root)===null||n===void 0?void 0:n.view)||null}};T.styleModule=Tl;T.inputHandler=_D;T.clipboardInputFilter=Uk;T.clipboardOutputFilter=Hk;T.scrollHandler=ED;T.focusChangeEffect=BD;T.perLineTextDirection=xD;T.exceptionSink=CD;T.updateListener=ak;T.editable=Lr;T.mouseSelectionStyle=kD;T.dragMovesSelection=wD;T.clickAddsSelectionRange=yD;T.decorations=aA;T.blockWrappers=DD;T.outerDecorations=FD;T.atomicRanges=oA;T.bidiIsolatedRanges=SD;T.scrollMargins=OD;T.darkTheme=vk;T.cspNonce=G.define({combine:t=>t.length?t[0]:""});T.contentAttributes=Zk;T.editorAttributes=ID;T.lineWrapping=T.contentAttributes.of({class:"cm-lineWrapping"});T.announce=ie.define();var k5=4096,ZI={},um=class t{constructor(e,n,a,r,i,o){this.from=e,this.to=n,this.dir=a,this.isolates=r,this.fresh=i,this.order=o}static update(e,n){if(n.empty&&!e.some(i=>i.fresh))return e;let a=[],r=e.length?e[e.length-1].dir:Oe.LTR;for(let i=Math.max(0,e.length-10);i<e.length;i++){let o=e[i];o.dir==r&&!n.touchesRange(o.from,o.to)&&a.push(new t(n.mapPos(o.from,1),n.mapPos(o.to,-1),o.dir,o.isolates,!1,o.order))}return a}};function YI(t,e,n){for(let a=t.state.facet(e),r=a.length-1;r>=0;r--){let i=a[r],o=typeof i=="function"?i(t):i;o&&qk(o,n)}return n}var C5=H.mac?"mac":H.windows?"win":H.linux?"linux":"key";function _5(t,e){let n=t.split(/-(?!$)/),a=n[n.length-1];a=="Space"&&(a=" ");let r,i,o,s;for(let c=0;c<n.length-1;++c){let A=n[c];if(/^(cmd|meta|m)$/i.test(A))s=!0;else if(/^a(lt)?$/i.test(A))r=!0;else if(/^(c|ctrl|control)$/i.test(A))i=!0;else if(/^s(hift)?$/i.test(A))o=!0;else if(/^mod$/i.test(A))e=="mac"?s=!0:i=!0;else throw new Error("Unrecognized modifier name: "+A)}return r&&(a="Alt-"+a),i&&(a="Ctrl-"+a),s&&(a="Meta-"+a),o&&(a="Shift-"+a),a}function Hp(t,e,n){return e.altKey&&(t="Alt-"+t),e.ctrlKey&&(t="Ctrl-"+t),e.metaKey&&(t="Meta-"+t),n!==!1&&e.shiftKey&&(t="Shift-"+t),t}var B5=In.default(T.domEventHandlers({keydown(t,e){return eF(VD(e.state),t,e,"editor")}})),Si=G.define({enables:B5}),WI=new WeakMap;function VD(t){let e=t.facet(Si),n=WI.get(e);return n||WI.set(e,n=v5(e.reduce((a,r)=>a.concat(r),[]))),n}function XD(t,e,n){return eF(VD(t.state),e,t,n)}var Ei=null,x5=4e3;function v5(t,e=C5){let n=Object.create(null),a=Object.create(null),r=(o,s)=>{let c=a[o];if(c==null)a[o]=s;else if(c!=s)throw new Error("Key binding "+o+" is used both as a regular binding and as a multi-stroke prefix")},i=(o,s,c,A,d)=>{var u,p;let m=n[o]||(n[o]=Object.create(null)),f=s.split(/ (?!$)/).map(b=>_5(b,e));for(let b=1;b<f.length;b++){let y=f.slice(0,b).join(" ");r(y,!0),m[y]||(m[y]={preventDefault:!0,stopPropagation:!1,run:[k=>{let E=Ei={view:k,prefix:y,scope:o};return setTimeout(()=>{Ei==E&&(Ei=null)},x5),!0}]})}let h=f.join(" ");r(h,!1);let w=m[h]||(m[h]={preventDefault:!1,stopPropagation:!1,run:((p=(u=m._any)===null||u===void 0?void 0:u.run)===null||p===void 0?void 0:p.slice())||[]});c&&w.run.push(c),A&&(w.preventDefault=!0),d&&(w.stopPropagation=!0)};for(let o of t){let s=o.scope?o.scope.split(" "):["editor"];if(o.any)for(let A of s){let d=n[A]||(n[A]=Object.create(null));d._any||(d._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:u}=o;for(let p in d)d[p].run.push(m=>u(m,Fk))}let c=o[e]||o.key;if(c)for(let A of s)i(A,c,o.run,o.preventDefault,o.stopPropagation),o.shift&&i(A,"Shift-"+c,o.shift,o.preventDefault,o.stopPropagation)}return n}var Fk=null;function eF(t,e,n,a){Fk=e;let r=kI(e),i=Gt(r,0),o=Yn(i)==r.length&&r!=" ",s="",c=!1,A=!1,d=!1;Ei&&Ei.view==n&&Ei.scope==a&&(s=Ei.prefix+" ",qD.indexOf(e.keyCode)<0&&(A=!0,Ei=null));let u=new Set,p=w=>{if(w){for(let b of w.run)if(!u.has(b)&&(u.add(b),b(n)))return w.stopPropagation&&(d=!0),!0;w.preventDefault&&(w.stopPropagation&&(d=!0),A=!0)}return!1},m=t[a],f,h;return m&&(p(m[s+Hp(r,e,!o)])?c=!0:o&&(e.altKey||e.metaKey||e.ctrlKey)&&!(H.windows&&e.ctrlKey&&e.altKey)&&!(H.mac&&e.altKey&&!(e.ctrlKey||e.metaKey))&&(f=Nr[e.keyCode])&&f!=r?(p(m[s+Hp(f,e,!0)])||e.shiftKey&&(h=Hs[e.keyCode])!=r&&h!=f&&p(m[s+Hp(h,e,!1)]))&&(c=!0):o&&e.shiftKey&&p(m[s+Hp(r,e,!0)])&&(c=!0),!c&&p(m._any)&&(c=!0)),A&&(c=!0),c&&d&&e.stopPropagation(),Fk=null,c}var rA=class t{constructor(e,n,a,r,i){this.className=e,this.left=n,this.top=a,this.width=r,this.height=i}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,n){return n.className!=this.className?!1:(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width!=null&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,n,a){if(a.empty){let r=e.coordsAtPos(a.head,a.assoc||1);if(!r)return[];let i=tF(e);return[new t(n,r.left-i.left,r.top-i.top,null,r.bottom-r.top)]}else return E5(e,n,a)}};function tF(t){let e=t.scrollDOM.getBoundingClientRect();return{left:(t.textDirection==Oe.LTR?e.left:e.right-t.scrollDOM.clientWidth*t.scaleX)-t.scrollDOM.scrollLeft*t.scaleX,top:e.top-t.scrollDOM.scrollTop*t.scaleY}}function KI(t,e,n,a){let r=t.coordsAtPos(e,n*2);if(!r)return a;let i=t.dom.getBoundingClientRect(),o=(r.top+r.bottom)/2,s=t.posAtCoords({x:i.left+1,y:o}),c=t.posAtCoords({x:i.right-1,y:o});return s==null||c==null?a:{from:Math.max(a.from,Math.min(s,c)),to:Math.min(a.to,Math.max(s,c))}}function E5(t,e,n){if(n.to<=t.viewport.from||n.from>=t.viewport.to)return[];let a=Math.max(n.from,t.viewport.from),r=Math.min(n.to,t.viewport.to),i=t.textDirection==Oe.LTR,o=t.contentDOM,s=o.getBoundingClientRect(),c=tF(t),A=o.querySelector(".cm-line"),d=A&&window.getComputedStyle(A),u=s.left+(d?parseInt(d.paddingLeft)+Math.min(0,parseInt(d.textIndent)):0),p=s.right-(d?parseInt(d.paddingRight):0),m=uk(t,a,1),f=uk(t,r,-1),h=m.type==Ut.Text?m:null,w=f.type==Ut.Text?f:null;if(h&&(t.lineWrapping||m.widgetLineBreaks)&&(h=KI(t,a,1,h)),w&&(t.lineWrapping||f.widgetLineBreaks)&&(w=KI(t,r,-1,w)),h&&w&&h.from==w.from&&h.to==w.to)return y(k(n.from,n.to,h));{let Q=h?k(n.from,null,h):E(m,!1),D=w?k(null,n.to,w):E(f,!0),F=[];return(h||m).to<(w||f).from-(h&&w?1:0)||m.widgetLineBreaks>1&&Q.bottom+t.defaultLineHeight/2<D.top?F.push(b(u,Q.bottom,p,D.top)):Q.bottom<D.top&&t.elementAtHeight((Q.bottom+D.top)/2).type==Ut.Text&&(Q.bottom=D.top=(Q.bottom+D.top)/2),y(Q).concat(F).concat(y(D))}function b(Q,D,F,$){return new rA(e,Q-c.left,D-c.top,F-Q,$-D)}function y({top:Q,bottom:D,horizontal:F}){let $=[];for(let z=0;z<F.length;z+=2)$.push(b(F[z],Q,F[z+1],D));return $}function k(Q,D,F){let $=1e9,z=-1e9,U=[];function te(de,ge,ze,yt,jt){let tt=t.coordsAtPos(de,de==F.to?-2:2),_t=t.coordsAtPos(ze,ze==F.from?2:-2);!tt||!_t||($=Math.min(tt.top,_t.top,$),z=Math.max(tt.bottom,_t.bottom,z),jt==Oe.LTR?U.push(i&&ge?u:tt.left,i&&yt?p:_t.right):U.push(!i&&yt?u:_t.left,!i&&ge?p:tt.right))}let V=Q??F.from,fe=D??F.to;for(let de of t.visibleRanges)if(de.to>V&&de.from<fe)for(let ge=Math.max(de.from,V),ze=Math.min(de.to,fe);;){let yt=t.state.doc.lineAt(ge);for(let jt of t.bidiSpans(yt)){let tt=jt.from+yt.from,_t=jt.to+yt.from;if(tt>=ze)break;_t>ge&&te(Math.max(tt,ge),Q==null&&tt<=V,Math.min(_t,ze),D==null&&_t>=fe,jt.dir)}if(ge=yt.to+1,ge>=ze)break}return U.length==0&&te(V,Q==null,fe,D==null,t.textDirection),{top:$,bottom:z,horizontal:U}}function E(Q,D){let F=s.top+(D?Q.top:Q.bottom);return{top:F,bottom:F,horizontal:[]}}}function Q5(t,e){return t.constructor==e.constructor&&t.eq(e)}var Sk=class{constructor(e,n){this.view=e,this.layer=n,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),n.above&&this.dom.classList.add("cm-layer-above"),n.class&&this.dom.classList.add(n.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),n.mount&&n.mount(this.dom,e)}update(e){e.startState.facet(Vp)!=e.state.facet(Vp)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&(this.scale(),e.view.requestMeasure(this.measureReq))}docViewUpdate(e){this.layer.updateOnDocViewUpdate!==!1&&e.requestMeasure(this.measureReq)}setOrder(e){let n=0,a=e.facet(Vp);for(;n<a.length&&a[n]!=this.layer;)n++;this.dom.style.zIndex=String((this.layer.above?150:-1)-n)}measure(){return this.layer.markers(this.view)}scale(){let{scaleX:e,scaleY:n}=this.view;(e!=this.scaleX||n!=this.scaleY)&&(this.scaleX=e,this.scaleY=n,this.dom.style.transform=`scale(${1/e}, ${1/n})`)}draw(e){if(e.length!=this.drawn.length||e.some((n,a)=>!Q5(n,this.drawn[a]))){let n=this.dom.firstChild,a=0;for(let r of e)r.update&&n&&r.constructor&&this.drawn[a].constructor&&r.update(n,this.drawn[a])?(n=n.nextSibling,a++):this.dom.insertBefore(r.draw(),n);for(;n;){let r=n.nextSibling;n.remove(),n=r}this.drawn=e,H.safari&&H.safari_version>=26&&(this.dom.style.display=this.dom.firstChild?"":"none")}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}},Vp=G.define();function nF(t){return[lt.define(e=>new Sk(e,t)),Vp.of(t)]}var iA=G.define({combine(t){return tn(t,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,n)=>Math.min(e,n),drawRangeCursor:(e,n)=>e||n})}});function aF(t={}){return[iA.of(t),I5,D5,F5,vD.of(!0)]}function rF(t){return t.startState.facet(iA)!=t.state.facet(iA)}var I5=nF({above:!0,markers(t){let{state:e}=t,n=e.facet(iA),a=[];for(let r of e.selection.ranges){let i=r==e.selection.main;if(r.empty||n.drawRangeCursor){let o=i?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",s=r.empty?r:L.cursor(r.head,r.head>r.anchor?-1:1);for(let c of rA.forRange(t,o,s))a.push(c)}}return a},update(t,e){t.transactions.some(a=>a.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let n=rF(t);return n&&JI(t.state,e),t.docChanged||t.selectionSet||n},mount(t,e){JI(e.state,t)},class:"cm-cursorLayer"});function JI(t,e){e.style.animationDuration=t.facet(iA).cursorBlinkRate+"ms"}var D5=nF({above:!1,markers(t){return t.state.selection.ranges.map(e=>e.empty?[]:rA.forRange(t,"cm-selectionBackground",e)).reduce((e,n)=>e.concat(n))},update(t,e){return t.docChanged||t.selectionSet||t.viewportChanged||rF(t)},class:"cm-selectionLayer"}),F5=In.highest(T.theme({".cm-line":{"& ::selection, &::selection":{backgroundColor:"transparent !important"},caretColor:"transparent !important"},".cm-content":{caretColor:"transparent !important","& :focus":{caretColor:"initial !important","&::selection, & ::selection":{backgroundColor:"Highlight !important"}}}})),iF=ie.define({map(t,e){return t==null?null:e.mapPos(t)}}),zl=at.define({create(){return null},update(t,e){return t!=null&&(t=e.changes.mapPos(t)),e.effects.reduce((n,a)=>a.is(iF)?a.value:n,t)}}),S5=lt.fromClass(class{constructor(t){this.view=t,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(t){var e;let n=t.state.field(zl);n==null?this.cursor!=null&&((e=this.cursor)===null||e===void 0||e.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(t.startState.field(zl)!=n||t.docChanged||t.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:t}=this,e=t.state.field(zl),n=e!=null&&t.coordsAtPos(e);if(!n)return null;let a=t.scrollDOM.getBoundingClientRect();return{left:n.left-a.left+t.scrollDOM.scrollLeft*t.scaleX,top:n.top-a.top+t.scrollDOM.scrollTop*t.scaleY,height:n.bottom-n.top}}drawCursor(t){if(this.cursor){let{scaleX:e,scaleY:n}=this.view;t?(this.cursor.style.left=t.left/e+"px",this.cursor.style.top=t.top/n+"px",this.cursor.style.height=t.height/n+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(t){this.view.state.field(zl)!=t&&this.view.dispatch({effects:iF.of(t)})}},{eventObservers:{dragover(t){this.setDropPos(this.view.posAtCoords({x:t.clientX,y:t.clientY}))},dragleave(t){(t.target==this.view.contentDOM||!this.view.contentDOM.contains(t.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function oF(){return[zl,S5]}function VI(t,e,n,a,r){e.lastIndex=0;for(let i=t.iterRange(n,a),o=n,s;!i.next().done;o+=i.value.length)if(!i.lineBreak)for(;s=e.exec(i.value);)r(o+s.index,s)}function O5(t,e){let n=t.visibleRanges;if(n.length==1&&n[0].from==t.viewport.from&&n[0].to==t.viewport.to)return n;let a=[];for(let{from:r,to:i}of n)r=Math.max(t.state.doc.lineAt(r).from,r-e),i=Math.min(t.state.doc.lineAt(i).to,i+e),a.length&&a[a.length-1].to>=r?a[a.length-1].to=i:a.push({from:r,to:i});return a}var Ok=class{constructor(e){let{regexp:n,decoration:a,decorate:r,boundary:i,maxLength:o=1e3}=e;if(!n.global)throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set");if(this.regexp=n,r)this.addMatch=(s,c,A,d)=>r(d,A,A+s[0].length,s,c);else if(typeof a=="function")this.addMatch=(s,c,A,d)=>{let u=a(s,c,A);u&&d(A,A+s[0].length,u)};else if(a)this.addMatch=(s,c,A,d)=>d(A,A+s[0].length,a);else throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.boundary=i,this.maxLength=o}createDeco(e){let n=new Zn,a=n.add.bind(n);for(let{from:r,to:i}of O5(e,this.maxLength))VI(e.state.doc,this.regexp,r,i,(o,s)=>this.addMatch(s,e,o,a));return n.finish()}updateDeco(e,n){let a=1e9,r=-1;return e.docChanged&&e.changes.iterChanges((i,o,s,c)=>{c>=e.view.viewport.from&&s<=e.view.viewport.to&&(a=Math.min(s,a),r=Math.max(c,r))}),e.viewportMoved||r-a>1e3?this.createDeco(e.view):r>-1?this.updateRange(e.view,n.map(e.changes),a,r):n}updateRange(e,n,a,r){for(let i of e.visibleRanges){let o=Math.max(i.from,a),s=Math.min(i.to,r);if(s>=o){let c=e.state.doc.lineAt(o),A=c.to<s?e.state.doc.lineAt(s):c,d=Math.max(i.from,c.from),u=Math.min(i.to,A.to);if(this.boundary){for(;o>c.from;o--)if(this.boundary.test(c.text[o-1-c.from])){d=o;break}for(;s<A.to;s++)if(this.boundary.test(A.text[s-A.from])){u=s;break}}let p=[],m,f=(h,w,b)=>p.push(b.range(h,w));if(c==A)for(this.regexp.lastIndex=d-c.from;(m=this.regexp.exec(c.text))&&m.index<u-c.from;)this.addMatch(m,e,m.index+c.from,f);else VI(e.state.doc,this.regexp,d,u,(h,w)=>this.addMatch(w,e,h,f));n=n.update({filterFrom:d,filterTo:u,filter:(h,w)=>h<d||w>u,add:p})}}return n}},Nk=/x/.unicode!=null?"gu":"g",N5=new RegExp(`[\0-\b +-\x7F-\x9F\xAD\u061C\u200B\u200E\u200F\u2028\u2029\u202D\u202E\u2066\u2067\u2069\uFEFF\uFFF9-\uFFFC]`,Nk),L5={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"},Uw=null;function $5(){var t;if(Uw==null&&typeof document<"u"&&document.body){let e=document.body.style;Uw=((t=e.tabSize)!==null&&t!==void 0?t:e.MozTabSize)!=null}return Uw||!1}var Xp=G.define({combine(t){let e=tn(t,{render:null,specialChars:N5,addSpecialChars:null});return(e.replaceTabs=!$5())&&(e.specialChars=new RegExp(" |"+e.specialChars.source,Nk)),e.addSpecialChars&&(e.specialChars=new RegExp(e.specialChars.source+"|"+e.addSpecialChars.source,Nk)),e}});function sF(t={}){return[Xp.of(t),R5()]}var XI=null;function R5(){return XI||(XI=lt.fromClass(class{constructor(t){this.view=t,this.decorations=X.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(t.state.facet(Xp)),this.decorations=this.decorator.createDeco(t)}makeDecorator(t){return new Ok({regexp:t.specialChars,decoration:(e,n,a)=>{let{doc:r}=n.state,i=Gt(e[0],0);if(i==9){let o=r.lineAt(a),s=n.state.tabSize,c=dn(o.text,s,a-o.from);return X.replace({widget:new $k((s-c%s)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[i]||(this.decorationCache[i]=X.replace({widget:new Lk(t,i)}))},boundary:t.replaceTabs?void 0:/[^]/})}update(t){let e=t.state.facet(Xp);t.startState.facet(Xp)!=e?(this.decorator=this.makeDecorator(e),this.decorations=this.decorator.createDeco(t.view)):this.decorations=this.decorator.updateDeco(t,this.decorations)}},{decorations:t=>t.decorations}))}var j5="\u2022";function P5(t){return t>=32?j5:t==10?"\u2424":String.fromCharCode(9216+t)}var Lk=class extends pn{constructor(e,n){super(),this.options=e,this.code=n}eq(e){return e.code==this.code}toDOM(e){let n=P5(this.code),a=e.state.phrase("Control character")+" "+(L5[this.code]||"0x"+this.code.toString(16)),r=this.options.render&&this.options.render(this.code,a,n);if(r)return r;let i=document.createElement("span");return i.textContent=n,i.title=a,i.setAttribute("aria-label",a),i.className="cm-specialChar",i}ignoreEvent(){return!1}},$k=class extends pn{constructor(e){super(),this.width=e}eq(e){return e.width==this.width}toDOM(){let e=document.createElement("span");return e.textContent=" ",e.className="cm-tab",e.style.width=this.width+"px",e}ignoreEvent(){return!1}};function cF(){return T5}var M5=X.line({class:"cm-activeLine"}),T5=lt.fromClass(class{constructor(t){this.decorations=this.getDeco(t)}update(t){(t.docChanged||t.selectionSet)&&(this.decorations=this.getDeco(t.view))}getDeco(t){let e=-1,n=[];for(let a of t.state.selection.ranges){let r=t.lineBlockAt(a.head);r.from>e&&(n.push(M5.range(r.from)),e=r.from)}return X.set(n)}},{decorations:t=>t.decorations});var Rk=2e3;function q5(t,e,n){let a=Math.min(e.line,n.line),r=Math.max(e.line,n.line),i=[];if(e.off>Rk||n.off>Rk||e.col<0||n.col<0){let o=Math.min(e.off,n.off),s=Math.max(e.off,n.off);for(let c=a;c<=r;c++){let A=t.doc.line(c);A.length<=s&&i.push(L.range(A.from+o,A.to+s))}}else{let o=Math.min(e.col,n.col),s=Math.max(e.col,n.col);for(let c=a;c<=r;c++){let A=t.doc.line(c),d=jp(A.text,o,t.tabSize,!0);if(d<0)i.push(L.cursor(A.to));else{let u=jp(A.text,s,t.tabSize);i.push(L.range(A.from+d,A.from+u))}}}return i}function G5(t,e){let n=t.coordsAtPos(t.viewport.from);return n?Math.round(Math.abs((n.left-e)/t.defaultCharacterWidth)):-1}function eD(t,e){let n=t.posAtCoords({x:e.clientX,y:e.clientY},!1),a=t.state.doc.lineAt(n),r=n-a.from,i=r>Rk?-1:r==a.length?G5(t,e.clientX):dn(a.text,t.state.tabSize,n-a.from);return{line:a.number,col:i,off:r}}function z5(t,e){let n=eD(t,e),a=t.state.selection;return n?{update(r){if(r.docChanged){let i=r.changes.mapPos(r.startState.doc.line(n.line).from),o=r.state.doc.lineAt(i);n={line:o.number,col:n.col,off:Math.min(n.off,o.length)},a=a.map(r.changes)}},get(r,i,o){let s=eD(t,r);if(!s)return a;let c=q5(t.state,n,s);return c.length?o?L.create(c.concat(a.ranges)):L.create(c):a}}:null}function lF(t){let e=t?.eventFilter||(n=>n.altKey&&n.button==0);return T.mouseSelectionStyle.of((n,a)=>e(a)?z5(n,a):null)}var U5={Alt:[18,t=>!!t.altKey],Control:[17,t=>!!t.ctrlKey],Shift:[16,t=>!!t.shiftKey],Meta:[91,t=>!!t.metaKey]},H5={style:"cursor: crosshair"};function AF(t={}){let[e,n]=U5[t.key||"Alt"],a=lt.fromClass(class{constructor(r){this.view=r,this.isDown=!1}set(r){this.isDown!=r&&(this.isDown=r,this.view.update([]))}},{eventObservers:{keydown(r){this.set(r.keyCode==e||n(r))},keyup(r){(r.keyCode==e||!n(r))&&this.set(!1)},mousemove(r){this.set(n(r))}}});return[a,T.contentAttributes.of(r=>{var i;return!((i=r.plugin(a))===null||i===void 0)&&i.isDown?H5:null})]}var Zp="-10000px",pm=class{constructor(e,n,a,r){this.facet=n,this.createTooltipView=a,this.removeTooltipView=r,this.input=e.state.facet(n),this.tooltips=this.input.filter(o=>o);let i=null;this.tooltipViews=this.tooltips.map(o=>i=a(o,i))}update(e,n){var a;let r=e.state.facet(this.facet),i=r.filter(c=>c);if(r===this.input){for(let c of this.tooltipViews)c.update&&c.update(e);return!1}let o=[],s=n?[]:null;for(let c=0;c<i.length;c++){let A=i[c],d=-1;if(A){for(let u=0;u<this.tooltips.length;u++){let p=this.tooltips[u];p&&p.create==A.create&&(d=u)}if(d<0)o[c]=this.createTooltipView(A,c?o[c-1]:null),s&&(s[c]=!!A.above);else{let u=o[c]=this.tooltipViews[d];s&&(s[c]=n[d]),u.update&&u.update(e)}}}for(let c of this.tooltipViews)o.indexOf(c)<0&&(this.removeTooltipView(c),(a=c.destroy)===null||a===void 0||a.call(c));return n&&(s.forEach((c,A)=>n[A]=c),n.length=s.length),this.input=r,this.tooltips=i,this.tooltipViews=o,!0}};function Z5(t){let e=t.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:e.clientHeight,right:e.clientWidth}}var Hw=G.define({combine:t=>{var e,n,a;return{position:H.ios?"absolute":((e=t.find(r=>r.position))===null||e===void 0?void 0:e.position)||"fixed",parent:((n=t.find(r=>r.parent))===null||n===void 0?void 0:n.parent)||null,tooltipSpace:((a=t.find(r=>r.tooltipSpace))===null||a===void 0?void 0:a.tooltipSpace)||Z5}}}),tD=new WeakMap,Kk=lt.fromClass(class{constructor(t){this.view=t,this.above=[],this.inView=!0,this.madeAbsolute=!1,this.lastTransaction=0,this.measureTimeout=-1;let e=t.state.facet(Hw);this.position=e.position,this.parent=e.parent,this.classes=t.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.resizeObserver=typeof ResizeObserver=="function"?new ResizeObserver(()=>this.measureSoon()):null,this.manager=new pm(t,sA,(n,a)=>this.createTooltip(n,a),n=>{this.resizeObserver&&this.resizeObserver.unobserve(n.dom),n.dom.remove()}),this.above=this.manager.tooltips.map(n=>!!n.above),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(n=>{Date.now()>this.lastTransaction-50&&n.length>0&&n[n.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),t.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let t of this.manager.tooltipViews)this.intersectionObserver.observe(t.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(t){t.transactions.length&&(this.lastTransaction=Date.now());let e=this.manager.update(t,this.above);e&&this.observeIntersection();let n=e||t.geometryChanged,a=t.state.facet(Hw);if(a.position!=this.position&&!this.madeAbsolute){this.position=a.position;for(let r of this.manager.tooltipViews)r.dom.style.position=this.position;n=!0}if(a.parent!=this.parent){this.parent&&this.container.remove(),this.parent=a.parent,this.createContainer();for(let r of this.manager.tooltipViews)this.container.appendChild(r.dom);n=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);n&&this.maybeMeasure()}createTooltip(t,e){let n=t.create(this.view),a=e?e.dom:null;if(n.dom.classList.add("cm-tooltip"),t.arrow&&!n.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let r=document.createElement("div");r.className="cm-tooltip-arrow",n.dom.appendChild(r)}return n.dom.style.position=this.position,n.dom.style.top=Zp,n.dom.style.left="0px",this.container.insertBefore(n.dom,a),n.mount&&n.mount(this.view),this.resizeObserver&&this.resizeObserver.observe(n.dom),n}destroy(){var t,e,n;this.view.win.removeEventListener("resize",this.measureSoon);for(let a of this.manager.tooltipViews)a.dom.remove(),(t=a.destroy)===null||t===void 0||t.call(a);this.parent&&this.container.remove(),(e=this.resizeObserver)===null||e===void 0||e.disconnect(),(n=this.intersectionObserver)===null||n===void 0||n.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let t=1,e=1,n=!1;if(this.position=="fixed"&&this.manager.tooltipViews.length){let{dom:i}=this.manager.tooltipViews[0];if(H.safari){let o=i.getBoundingClientRect();n=Math.abs(o.top+1e4)>1||Math.abs(o.left)>1}else n=!!i.offsetParent&&i.offsetParent!=this.container.ownerDocument.body}if(n||this.position=="absolute")if(this.parent){let i=this.parent.getBoundingClientRect();i.width&&i.height&&(t=i.width/this.parent.offsetWidth,e=i.height/this.parent.offsetHeight)}else({scaleX:t,scaleY:e}=this.view.viewState);let a=this.view.scrollDOM.getBoundingClientRect(),r=Yk(this.view);return{visible:{left:a.left+r.left,top:a.top+r.top,right:a.right-r.right,bottom:a.bottom-r.bottom},parent:this.parent?this.container.getBoundingClientRect():this.view.dom.getBoundingClientRect(),pos:this.manager.tooltips.map((i,o)=>{let s=this.manager.tooltipViews[o];return s.getCoords?s.getCoords(i.pos):this.view.coordsAtPos(i.pos)}),size:this.manager.tooltipViews.map(({dom:i})=>i.getBoundingClientRect()),space:this.view.state.facet(Hw).tooltipSpace(this.view),scaleX:t,scaleY:e,makeAbsolute:n}}writeMeasure(t){var e;if(t.makeAbsolute){this.madeAbsolute=!0,this.position="absolute";for(let s of this.manager.tooltipViews)s.dom.style.position="absolute"}let{visible:n,space:a,scaleX:r,scaleY:i}=t,o=[];for(let s=0;s<this.manager.tooltips.length;s++){let c=this.manager.tooltips[s],A=this.manager.tooltipViews[s],{dom:d}=A,u=t.pos[s],p=t.size[s];if(!u||c.clip!==!1&&(u.bottom<=Math.max(n.top,a.top)||u.top>=Math.min(n.bottom,a.bottom)||u.right<Math.max(n.left,a.left)-.1||u.left>Math.min(n.right,a.right)+.1)){d.style.top=Zp;continue}let m=c.arrow?A.dom.querySelector(".cm-tooltip-arrow"):null,f=m?7:0,h=p.right-p.left,w=(e=tD.get(A))!==null&&e!==void 0?e:p.bottom-p.top,b=A.offset||W5,y=this.view.textDirection==Oe.LTR,k=p.width>a.right-a.left?y?a.left:a.right-p.width:y?Math.max(a.left,Math.min(u.left-(m?14:0)+b.x,a.right-h)):Math.min(Math.max(a.left,u.left-h+(m?14:0)-b.x),a.right-h),E=this.above[s];!c.strictSide&&(E?u.top-w-f-b.y<a.top:u.bottom+w+f+b.y>a.bottom)&&E==a.bottom-u.bottom>u.top-a.top&&(E=this.above[s]=!E);let Q=(E?u.top-a.top:a.bottom-u.bottom)-f;if(Q<w&&A.resize!==!1){if(Q<this.view.defaultLineHeight){d.style.top=Zp;continue}tD.set(A,w),d.style.height=(w=Q)/i+"px"}else d.style.height&&(d.style.height="");let D=E?u.top-w-f-b.y:u.bottom+f+b.y,F=k+h;if(A.overlap!==!0)for(let $ of o)$.left<F&&$.right>k&&$.top<D+w&&$.bottom>D&&(D=E?$.top-w-2-f:$.bottom+f+2);if(this.position=="absolute"?(d.style.top=(D-t.parent.top)/i+"px",nD(d,(k-t.parent.left)/r)):(d.style.top=D/i+"px",nD(d,k/r)),m){let $=u.left+(y?b.x:-b.x)-(k+14-7);m.style.left=$/r+"px"}A.overlap!==!0&&o.push({left:k,top:D,right:F,bottom:D+w}),d.classList.toggle("cm-tooltip-above",E),d.classList.toggle("cm-tooltip-below",!E),A.positioned&&A.positioned(t.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let t of this.manager.tooltipViews)t.dom.style.top=Zp}},{eventObservers:{scroll(){this.maybeMeasure()}}});function nD(t,e){let n=parseInt(t.style.left,10);(isNaN(n)||Math.abs(e-n)>1)&&(t.style.left=e+"px")}var Y5=T.baseTheme({".cm-tooltip":{zIndex:500,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:`${7*2}px`,position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),W5={x:0,y:0},sA=G.define({enables:[Kk,Y5]}),mm=G.define({combine:t=>t.reduce((e,n)=>e.concat(n),[])}),gm=class t{static create(e){return new t(e)}constructor(e){this.view=e,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new pm(e,mm,(n,a)=>this.createHostedView(n,a),n=>n.dom.remove())}createHostedView(e,n){let a=e.create(this.view);return a.dom.classList.add("cm-tooltip-section"),this.dom.insertBefore(a.dom,n?n.dom.nextSibling:this.dom.firstChild),this.mounted&&a.mount&&a.mount(this.view),a}mount(e){for(let n of this.manager.tooltipViews)n.mount&&n.mount(e);this.mounted=!0}positioned(e){for(let n of this.manager.tooltipViews)n.positioned&&n.positioned(e)}update(e){this.manager.update(e)}destroy(){var e;for(let n of this.manager.tooltipViews)(e=n.destroy)===null||e===void 0||e.call(n)}passProp(e){let n;for(let a of this.manager.tooltipViews){let r=a[e];if(r!==void 0){if(n===void 0)n=r;else if(n!==r)return}}return n}get offset(){return this.passProp("offset")}get getCoords(){return this.passProp("getCoords")}get overlap(){return this.passProp("overlap")}get resize(){return this.passProp("resize")}},K5=sA.compute([mm],t=>{let e=t.facet(mm);return e.length===0?null:{pos:Math.min(...e.map(n=>n.pos)),end:Math.max(...e.map(n=>{var a;return(a=n.end)!==null&&a!==void 0?a:n.pos})),create:gm.create,above:e[0].above,arrow:e.some(n=>n.arrow)}}),jk=class{constructor(e,n,a,r,i){this.view=e,this.source=n,this.field=a,this.setHover=r,this.hoverTime=i,this.hoverTimeout=-1,this.restartTimeout=-1,this.pending=null,this.lastMove={x:0,y:0,target:e.dom,time:0},this.checkHover=this.checkHover.bind(this),e.dom.addEventListener("mouseleave",this.mouseleave=this.mouseleave.bind(this)),e.dom.addEventListener("mousemove",this.mousemove=this.mousemove.bind(this))}update(){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout(()=>this.startHover(),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active.length)return;let e=Date.now()-this.lastMove.time;e<this.hoverTime?this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime-e):this.startHover()}startHover(){clearTimeout(this.restartTimeout);let{view:e,lastMove:n}=this,a=e.docView.tile.nearest(n.target);if(!a)return;let r,i=1;if(a.isWidget())r=a.posAtStart;else{if(r=e.posAtCoords(n),r==null)return;let s=e.coordsAtPos(r);if(!s||n.y<s.top||n.y>s.bottom||n.x<s.left-e.defaultCharacterWidth||n.x>s.right+e.defaultCharacterWidth)return;let c=e.bidiSpans(e.state.doc.lineAt(r)).find(d=>d.from<=r&&d.to>=r),A=c&&c.dir==Oe.RTL?-1:1;i=n.x<s.left?-A:A}let o=this.source(e,r,i);if(o?.then){let s=this.pending={pos:r};o.then(c=>{this.pending==s&&(this.pending=null,c&&!(Array.isArray(c)&&!c.length)&&e.dispatch({effects:this.setHover.of(Array.isArray(c)?c:[c])}))},c=>zt(e.state,c,"hover tooltip"))}else o&&!(Array.isArray(o)&&!o.length)&&e.dispatch({effects:this.setHover.of(Array.isArray(o)?o:[o])})}get tooltip(){let e=this.view.plugin(Kk),n=e?e.manager.tooltips.findIndex(a=>a.create==gm.create):-1;return n>-1?e.manager.tooltipViews[n]:null}mousemove(e){var n,a;this.lastMove={x:e.clientX,y:e.clientY,target:e.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let{active:r,tooltip:i}=this;if(r.length&&i&&!J5(i.dom,e)||this.pending){let{pos:o}=r[0]||this.pending,s=(a=(n=r[0])===null||n===void 0?void 0:n.end)!==null&&a!==void 0?a:o;(o==s?this.view.posAtCoords(this.lastMove)!=o:!V5(this.view,o,s,e.clientX,e.clientY))&&(this.view.dispatch({effects:this.setHover.of([])}),this.pending=null)}}mouseleave(e){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1;let{active:n}=this;if(n.length){let{tooltip:a}=this;a&&a.dom.contains(e.relatedTarget)?this.watchTooltipLeave(a.dom):this.view.dispatch({effects:this.setHover.of([])})}}watchTooltipLeave(e){let n=a=>{e.removeEventListener("mouseleave",n),this.active.length&&!this.view.dom.contains(a.relatedTarget)&&this.view.dispatch({effects:this.setHover.of([])})};e.addEventListener("mouseleave",n)}destroy(){clearTimeout(this.hoverTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}},Yp=4;function J5(t,e){let{left:n,right:a,top:r,bottom:i}=t.getBoundingClientRect(),o;if(o=t.querySelector(".cm-tooltip-arrow")){let s=o.getBoundingClientRect();r=Math.min(s.top,r),i=Math.max(s.bottom,i)}return e.clientX>=n-Yp&&e.clientX<=a+Yp&&e.clientY>=r-Yp&&e.clientY<=i+Yp}function V5(t,e,n,a,r,i){let o=t.scrollDOM.getBoundingClientRect(),s=t.documentTop+t.documentPadding.top+t.contentHeight;if(o.left>a||o.right<a||o.top>r||Math.min(o.bottom,s)<r)return!1;let c=t.posAtCoords({x:a,y:r},!1);return c>=e&&c<=n}function dF(t,e={}){let n=ie.define(),a=at.define({create(){return[]},update(r,i){if(r.length&&(e.hideOnChange&&(i.docChanged||i.selection)?r=[]:e.hideOn&&(r=r.filter(o=>!e.hideOn(i,o))),i.docChanged)){let o=[];for(let s of r){let c=i.changes.mapPos(s.pos,-1,Et.TrackDel);if(c!=null){let A=Object.assign(Object.create(null),s);A.pos=c,A.end!=null&&(A.end=i.changes.mapPos(A.end)),o.push(A)}}r=o}for(let o of i.effects)o.is(n)&&(r=o.value),o.is(X5)&&(r=[]);return r},provide:r=>mm.from(r)});return{active:a,extension:[a,lt.define(r=>new jk(r,t,a,n,e.hoverTime||300)),K5]}}function Jk(t,e){let n=t.plugin(Kk);if(!n)return null;let a=n.manager.tooltips.indexOf(e);return a<0?null:n.manager.tooltipViews[a]}var X5=ie.define();var aD=G.define({combine(t){let e,n;for(let a of t)e=e||a.topContainer,n=n||a.bottomContainer;return{topContainer:e,bottomContainer:n}}});function Io(t,e){let n=t.plugin(uF),a=n?n.specs.indexOf(e):-1;return a>-1?n.panels[a]:null}var uF=lt.fromClass(class{constructor(t){this.input=t.state.facet(Qo),this.specs=this.input.filter(n=>n),this.panels=this.specs.map(n=>n(t));let e=t.state.facet(aD);this.top=new Ws(t,!0,e.topContainer),this.bottom=new Ws(t,!1,e.bottomContainer),this.top.sync(this.panels.filter(n=>n.top)),this.bottom.sync(this.panels.filter(n=>!n.top));for(let n of this.panels)n.dom.classList.add("cm-panel"),n.mount&&n.mount()}update(t){let e=t.state.facet(aD);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new Ws(t.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new Ws(t.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let n=t.state.facet(Qo);if(n!=this.input){let a=n.filter(c=>c),r=[],i=[],o=[],s=[];for(let c of a){let A=this.specs.indexOf(c),d;A<0?(d=c(t.view),s.push(d)):(d=this.panels[A],d.update&&d.update(t)),r.push(d),(d.top?i:o).push(d)}this.specs=a,this.panels=r,this.top.sync(i),this.bottom.sync(o);for(let c of s)c.dom.classList.add("cm-panel"),c.mount&&c.mount()}else for(let a of this.panels)a.update&&a.update(t)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:t=>T.scrollMargins.of(e=>{let n=e.plugin(t);return n&&{top:n.top.scrollMargin(),bottom:n.bottom.scrollMargin()}})}),Ws=class{constructor(e,n,a){this.view=e,this.top=n,this.container=a,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(e){for(let n of this.panels)n.destroy&&e.indexOf(n)<0&&n.destroy();this.panels=e,this.syncDOM()}syncDOM(){if(this.panels.length==0){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let n=this.container||this.view.dom;n.insertBefore(this.dom,this.top?n.firstChild:null)}let e=this.dom.firstChild;for(let n of this.panels)if(n.dom.parentNode==this.dom){for(;e!=n.dom;)e=rD(e);e=e.nextSibling}else this.dom.insertBefore(n.dom,e);for(;e;)e=rD(e)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(!(!this.container||this.classes==this.view.themeClasses)){for(let e of this.classes.split(" "))e&&this.container.classList.remove(e);for(let e of(this.classes=this.view.themeClasses).split(" "))e&&this.container.classList.add(e)}}};function rD(t){let e=t.nextSibling;return t.remove(),e}var Qo=G.define({enables:uF});var Kn=class extends ba{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}};Kn.prototype.elementClass="";Kn.prototype.toDOM=void 0;Kn.prototype.mapMode=Et.TrackBefore;Kn.prototype.startSide=Kn.prototype.endSide=-1;Kn.prototype.point=!0;var em=G.define(),eZ=G.define(),tZ={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>xe.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{},side:"before"},Jl=G.define();function Vk(t){return[pF(),Jl.of({...tZ,...t})]}var Pk=G.define({combine:t=>t.some(e=>e)});function pF(t){let e=[nZ];return t&&t.fixed===!1&&e.push(Pk.of(!0)),e}var nZ=lt.fromClass(class{constructor(t){this.view=t,this.domAfter=null,this.prevViewport=t.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters cm-gutters-before",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=t.state.facet(Jl).map(e=>new fm(t,e)),this.fixed=!t.state.facet(Pk);for(let e of this.gutters)e.config.side=="after"?this.getDOMAfter().appendChild(e.dom):this.dom.appendChild(e.dom);this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),t.scrollDOM.insertBefore(this.dom,t.contentDOM)}getDOMAfter(){return this.domAfter||(this.domAfter=document.createElement("div"),this.domAfter.className="cm-gutters cm-gutters-after",this.domAfter.setAttribute("aria-hidden","true"),this.domAfter.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.domAfter.style.position=this.fixed?"sticky":"",this.view.scrollDOM.appendChild(this.domAfter)),this.domAfter}update(t){if(this.updateGutters(t)){let e=this.prevViewport,n=t.view.viewport,a=Math.min(e.to,n.to)-Math.max(e.from,n.from);this.syncGutters(a<(n.to-n.from)*.8)}if(t.geometryChanged){let e=this.view.contentHeight/this.view.scaleY+"px";this.dom.style.minHeight=e,this.domAfter&&(this.domAfter.style.minHeight=e)}this.view.state.facet(Pk)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"",this.domAfter&&(this.domAfter.style.position=this.fixed?"sticky":"")),this.prevViewport=t.view.viewport}syncGutters(t){let e=this.dom.nextSibling;t&&(this.dom.remove(),this.domAfter&&this.domAfter.remove());let n=xe.iter(this.view.state.facet(em),this.view.viewport.from),a=[],r=this.gutters.map(i=>new Tk(i,this.view.viewport,-this.view.documentPadding.top));for(let i of this.view.viewportLineBlocks)if(a.length&&(a=[]),Array.isArray(i.type)){let o=!0;for(let s of i.type)if(s.type==Ut.Text&&o){Mk(n,a,s.from);for(let c of r)c.line(this.view,s,a);o=!1}else if(s.widget)for(let c of r)c.widget(this.view,s)}else if(i.type==Ut.Text){Mk(n,a,i.from);for(let o of r)o.line(this.view,i,a)}else if(i.widget)for(let o of r)o.widget(this.view,i);for(let i of r)i.finish();t&&(this.view.scrollDOM.insertBefore(this.dom,e),this.domAfter&&this.view.scrollDOM.appendChild(this.domAfter))}updateGutters(t){let e=t.startState.facet(Jl),n=t.state.facet(Jl),a=t.docChanged||t.heightChanged||t.viewportChanged||!xe.eq(t.startState.facet(em),t.state.facet(em),t.view.viewport.from,t.view.viewport.to);if(e==n)for(let r of this.gutters)r.update(t)&&(a=!0);else{a=!0;let r=[];for(let i of n){let o=e.indexOf(i);o<0?r.push(new fm(this.view,i)):(this.gutters[o].update(t),r.push(this.gutters[o]))}for(let i of this.gutters)i.dom.remove(),r.indexOf(i)<0&&i.destroy();for(let i of r)i.config.side=="after"?this.getDOMAfter().appendChild(i.dom):this.dom.appendChild(i.dom);this.gutters=r}return a}destroy(){for(let t of this.gutters)t.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:t=>T.scrollMargins.of(e=>{let n=e.plugin(t);if(!n||n.gutters.length==0||!n.fixed)return null;let a=n.dom.offsetWidth*e.scaleX,r=n.domAfter?n.domAfter.offsetWidth*e.scaleX:0;return e.textDirection==Oe.LTR?{left:a,right:r}:{right:a,left:r}})});function iD(t){return Array.isArray(t)?t:[t]}function Mk(t,e,n){for(;t.value&&t.from<=n;)t.from==n&&e.push(t.value),t.next()}var Tk=class{constructor(e,n,a){this.gutter=e,this.height=a,this.i=0,this.cursor=xe.iter(e.markers,n.from)}addElement(e,n,a){let{gutter:r}=this,i=(n.top-this.height)/e.scaleY,o=n.height/e.scaleY;if(this.i==r.elements.length){let s=new bm(e,o,i,a);r.elements.push(s),r.dom.appendChild(s.dom)}else r.elements[this.i].update(e,o,i,a);this.height=n.bottom,this.i++}line(e,n,a){let r=[];Mk(this.cursor,r,n.from),a.length&&(r=r.concat(a));let i=this.gutter.config.lineMarker(e,n,r);i&&r.unshift(i);let o=this.gutter;r.length==0&&!o.config.renderEmptyElements||this.addElement(e,n,r)}widget(e,n){let a=this.gutter.config.widgetMarker(e,n.widget,n),r=a?[a]:null;for(let i of e.state.facet(eZ)){let o=i(e,n.widget,n);o&&(r||(r=[])).push(o)}r&&this.addElement(e,n,r)}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let n=e.elements.pop();e.dom.removeChild(n.dom),n.destroy()}}},fm=class{constructor(e,n){this.view=e,this.config=n,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let a in n.domEventHandlers)this.dom.addEventListener(a,r=>{let i=r.target,o;if(i!=this.dom&&this.dom.contains(i)){for(;i.parentNode!=this.dom;)i=i.parentNode;let c=i.getBoundingClientRect();o=(c.top+c.bottom)/2}else o=r.clientY;let s=e.lineBlockAtHeight(o-e.documentTop);n.domEventHandlers[a](e,s,r)&&r.preventDefault()});this.markers=iD(n.markers(e)),n.initialSpacer&&(this.spacer=new bm(e,0,0,[n.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let n=this.markers;if(this.markers=iD(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let r=this.config.updateSpacer(this.spacer.markers[0],e);r!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[r])}let a=e.view.viewport;return!xe.eq(this.markers,n,a.from,a.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}},bm=class{constructor(e,n,a,r){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,n,a,r)}update(e,n,a,r){this.height!=n&&(this.height=n,this.dom.style.height=n+"px"),this.above!=a&&(this.dom.style.marginTop=(this.above=a)?a+"px":""),aZ(this.markers,r)||this.setMarkers(e,r)}setMarkers(e,n){let a="cm-gutterElement",r=this.dom.firstChild;for(let i=0,o=0;;){let s=o,c=i<n.length?n[i++]:null,A=!1;if(c){let d=c.elementClass;d&&(a+=" "+d);for(let u=o;u<this.markers.length;u++)if(this.markers[u].compare(c)){s=u,A=!0;break}}else s=this.markers.length;for(;o<s;){let d=this.markers[o++];if(d.toDOM){d.destroy(r);let u=r.nextSibling;r.remove(),r=u}}if(!c)break;c.toDOM&&(A?r=r.nextSibling:this.dom.insertBefore(c.toDOM(e),r)),A&&o++}this.dom.className=a,this.markers=n}destroy(){this.setMarkers(null,[])}};function aZ(t,e){if(t.length!=e.length)return!1;for(let n=0;n<t.length;n++)if(!t[n].compare(e[n]))return!1;return!0}var rZ=G.define(),iZ=G.define(),Ks=G.define({combine(t){return tn(t,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,n){let a=Object.assign({},e);for(let r in n){let i=a[r],o=n[r];a[r]=i?(s,c,A)=>i(s,c,A)||o(s,c,A):o}return a}})}}),Vl=class extends Kn{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}};function Zw(t,e){return t.state.facet(Ks).formatNumber(e,t.state)}var oZ=Jl.compute([Ks],t=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(rZ)},lineMarker(e,n,a){return a.some(r=>r.toDOM)?null:new Vl(Zw(e,e.state.doc.lineAt(n.from).number))},widgetMarker:(e,n,a)=>{for(let r of e.state.facet(iZ)){let i=r(e,n,a);if(i)return i}return null},lineMarkerChange:e=>e.startState.facet(Ks)!=e.state.facet(Ks),initialSpacer(e){return new Vl(Zw(e,oD(e.state.doc.lines)))},updateSpacer(e,n){let a=Zw(n.view,oD(n.view.state.doc.lines));return a==e.number?e:new Vl(a)},domEventHandlers:t.facet(Ks).domEventHandlers,side:"before"}));function mF(t={}){return[Ks.of(t),pF(),oZ]}function oD(t){let e=9;for(;e<t;)e=e*10+9;return e}var sZ=new class extends Kn{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},cZ=em.compute(["selection"],t=>{let e=[],n=-1;for(let a of t.selection.ranges){let r=t.doc.lineAt(a.head).from;r>n&&(n=r,e.push(sZ.range(r)))}return xe.of(e)});function gF(){return cZ}var lZ=0,Fn=class{constructor(e,n){this.from=e,this.to=n}},ae=class{constructor(e={}){this.id=lZ++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=e.combine||null}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=pt.match(e)),n=>{let a=e(n);return a===void 0?null:[this,a]}}};ae.closedBy=new ae({deserialize:t=>t.split(" ")});ae.openedBy=new ae({deserialize:t=>t.split(" ")});ae.group=new ae({deserialize:t=>t.split(" ")});ae.isolate=new ae({deserialize:t=>{if(t&&t!="rtl"&&t!="ltr"&&t!="auto")throw new RangeError("Invalid value for isolate: "+t);return t||"auto"}});ae.contextHash=new ae({perNode:!0});ae.lookAhead=new ae({perNode:!0});ae.mounted=new ae({perNode:!0});var Oi=class{constructor(e,n,a,r=!1){this.tree=e,this.overlay=n,this.parser=a,this.bracketed=r}static get(e){return e&&e.props&&e.props[ae.mounted.id]}},AZ=Object.create(null),pt=class t{constructor(e,n,a,r=0){this.name=e,this.props=n,this.id=a,this.flags=r}static define(e){let n=e.props&&e.props.length?Object.create(null):AZ,a=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),r=new t(e.name||"",n,e.id,a);if(e.props){for(let i of e.props)if(Array.isArray(i)||(i=i(r)),i){if(i[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");n[i[0].id]=i[1]}}return r}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let n=this.prop(ae.group);return n?n.indexOf(e)>-1:!1}return this.id==e}static match(e){let n=Object.create(null);for(let a in e)for(let r of a.split(" "))n[r]=e[a];return a=>{for(let r=a.prop(ae.group),i=-1;i<(r?r.length:0);i++){let o=n[i<0?a.name:r[i]];if(o)return o}}}};pt.none=new pt("",Object.create(null),0,8);var Ni=class t{constructor(e){this.types=e;for(let n=0;n<e.length;n++)if(e[n].id!=n)throw new RangeError("Node type ids should correspond to array positions when creating a node set")}extend(...e){let n=[];for(let a of this.types){let r=null;for(let i of e){let o=i(a);if(o){r||(r=Object.assign({},a.props));let s=o[1],c=o[0];c.combine&&c.id in r&&(s=c.combine(r[c.id],s)),r[c.id]=s}}n.push(r?new pt(a.name,r,a.id,a.flags):a)}return new t(n)}},wm=new WeakMap,fF=new WeakMap,Ce;(function(t){t[t.ExcludeBuffers=1]="ExcludeBuffers",t[t.IncludeAnonymous=2]="IncludeAnonymous",t[t.IgnoreMounts=4]="IgnoreMounts",t[t.IgnoreOverlays=8]="IgnoreOverlays",t[t.EnterBracketed=16]="EnterBracketed"})(Ce||(Ce={}));var ve=class t{constructor(e,n,a,r,i){if(this.type=e,this.children=n,this.positions=a,this.length=r,this.props=null,i&&i.length){this.props=Object.create(null);for(let[o,s]of i)this.props[typeof o=="number"?o:o.id]=s}}toString(){let e=Oi.get(this);if(e&&!e.overlay)return e.tree.toString();let n="";for(let a of this.children){let r=a.toString();r&&(n&&(n+=","),n+=r)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(n.length?"("+n+")":""):n}cursor(e=0){return new ic(this.topNode,e)}cursorAt(e,n=0,a=0){let r=wm.get(this)||this.topNode,i=new ic(r);return i.moveTo(e,n),wm.set(this,i._tree),i}get topNode(){return new Sn(this,0,0,null)}resolve(e,n=0){let a=cA(wm.get(this)||this.topNode,e,n,!1);return wm.set(this,a),a}resolveInner(e,n=0){let a=cA(fF.get(this)||this.topNode,e,n,!0);return fF.set(this,a),a}resolveStack(e,n=0){return dZ(this,e,n)}iterate(e){let{enter:n,leave:a,from:r=0,to:i=this.length}=e,o=e.mode||0,s=(o&Ce.IncludeAnonymous)>0;for(let c=this.cursor(o|Ce.IncludeAnonymous);;){let A=!1;if(c.from<=i&&c.to>=r&&(!s&&c.type.isAnonymous||n(c)!==!1)){if(c.firstChild())continue;A=!0}for(;A&&a&&(s||!c.type.isAnonymous)&&a(c),!c.nextSibling();){if(!c.parent())return;A=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let n in this.props)e.push([+n,this.props[n]]);return e}balance(e={}){return this.children.length<=8?this:lC(pt.none,this.children,this.positions,0,this.children.length,0,this.length,(n,a,r)=>new t(this.type,n,a,r,this.propValues),e.makeTree||((n,a,r)=>new t(pt.none,n,a,r)))}static build(e){return uZ(e)}};ve.empty=new ve(pt.none,[],[],0);var Xk=class t{constructor(e,n){this.buffer=e,this.index=n}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new t(this.buffer,this.index)}},Li=class t{constructor(e,n,a){this.buffer=e,this.length=n,this.set=a}get type(){return pt.none}toString(){let e=[];for(let n=0;n<this.buffer.length;)e.push(this.childString(n)),n=this.buffer[n+3];return e.join(",")}childString(e){let n=this.buffer[e],a=this.buffer[e+3],r=this.set.types[n],i=r.name;if(/\W/.test(i)&&!r.isError&&(i=JSON.stringify(i)),e+=4,a==e)return i;let o=[];for(;e<a;)o.push(this.childString(e)),e=this.buffer[e+3];return i+"("+o.join(",")+")"}findChild(e,n,a,r,i){let{buffer:o}=this,s=-1;for(let c=e;c!=n&&!(_F(i,r,o[c+1],o[c+2])&&(s=c,a>0));c=o[c+3]);return s}slice(e,n,a){let r=this.buffer,i=new Uint16Array(n-e),o=0;for(let s=e,c=0;s<n;){i[c++]=r[s++],i[c++]=r[s++]-a;let A=i[c++]=r[s++]-a;i[c++]=r[s++]-e,o=Math.max(o,A)}return new t(i,o,this.set)}};function _F(t,e,n,a){switch(t){case-2:return n<e;case-1:return a>=e&&n<e;case 0:return n<e&&a>e;case 1:return n<=e&&a>e;case 2:return a>e;case 4:return!0}}function cA(t,e,n,a){for(var r;t.from==t.to||(n<1?t.from>=e:t.from>e)||(n>-1?t.to<=e:t.to<e);){let o=!a&&t instanceof Sn&&t.index<0?null:t.parent;if(!o)return t;t=o}let i=a?0:Ce.IgnoreOverlays;if(a)for(let o=t,s=o.parent;s;o=s,s=o.parent)o instanceof Sn&&o.index<0&&((r=s.enter(e,n,i))===null||r===void 0?void 0:r.from)!=o.from&&(t=s);for(;;){let o=t.enter(e,n,i);if(!o)return t;t=o}}var Cm=class{cursor(e=0){return new ic(this,e)}getChild(e,n=null,a=null){let r=bF(this,e,n,a);return r.length?r[0]:null}getChildren(e,n=null,a=null){return bF(this,e,n,a)}resolve(e,n=0){return cA(this,e,n,!1)}resolveInner(e,n=0){return cA(this,e,n,!0)}matchContext(e){return eC(this.parent,e)}enterUnfinishedNodesBefore(e){let n=this.childBefore(e),a=this;for(;n;){let r=n.lastChild;if(!r||r.to!=n.to)break;r.type.isError&&r.from==r.to?(a=n,n=r.prevSibling):n=r}return a}get node(){return this}get next(){return this.parent}},Sn=class t extends Cm{constructor(e,n,a,r){super(),this._tree=e,this.from=n,this.index=a,this._parent=r}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(e,n,a,r,i=0){var o;for(let s=this;;){for(let{children:c,positions:A}=s._tree,d=n>0?c.length:-1;e!=d;e+=n){let u=c[e],p=A[e]+s.from;if(!(!(i&Ce.EnterBracketed&&u instanceof ve&&((o=Oi.get(u))===null||o===void 0?void 0:o.overlay)===null&&(p>=a||p+u.length<=a))&&!_F(r,a,p,p+u.length))){if(u instanceof Li){if(i&Ce.ExcludeBuffers)continue;let m=u.findChild(0,u.buffer.length,n,a-p,r);if(m>-1)return new Do(new tC(s,u,e,p),null,m)}else if(i&Ce.IncludeAnonymous||!u.type.isAnonymous||cC(u)){let m;if(!(i&Ce.IgnoreMounts)&&(m=Oi.get(u))&&!m.overlay)return new t(m.tree,p,e,s);let f=new t(u,p,e,s);return i&Ce.IncludeAnonymous||!f.type.isAnonymous?f:f.nextChild(n<0?u.children.length-1:0,n,a,r,i)}}}if(i&Ce.IncludeAnonymous||!s.type.isAnonymous||(s.index>=0?e=s.index+n:e=n<0?-1:s._parent._tree.children.length,s=s._parent,!s))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}prop(e){return this._tree.prop(e)}enter(e,n,a=0){let r;if(!(a&Ce.IgnoreOverlays)&&(r=Oi.get(this._tree))&&r.overlay){let i=e-this.from,o=a&Ce.EnterBracketed&&r.bracketed;for(let{from:s,to:c}of r.overlay)if((n>0||o?s<=i:s<i)&&(n<0||o?c>=i:c>i))return new t(r.tree,r.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,n,a)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}};function bF(t,e,n,a){let r=t.cursor(),i=[];if(!r.firstChild())return i;if(n!=null){for(let o=!1;!o;)if(o=r.type.is(n),!r.nextSibling())return i}for(;;){if(a!=null&&r.type.is(a))return i;if(r.type.is(e)&&i.push(r.node),!r.nextSibling())return a==null?i:[]}}function eC(t,e,n=e.length-1){for(let a=t;n>=0;a=a.parent){if(!a)return!1;if(!a.type.isAnonymous){if(e[n]&&e[n]!=a.name)return!1;n--}}return!0}var tC=class{constructor(e,n,a,r){this.parent=e,this.buffer=n,this.index=a,this.start=r}},Do=class t extends Cm{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,n,a){super(),this.context=e,this._parent=n,this.index=a,this.type=e.buffer.set.types[e.buffer.buffer[a]]}child(e,n,a){let{buffer:r}=this.context,i=r.findChild(this.index+4,r.buffer[this.index+3],e,n-this.context.start,a);return i<0?null:new t(this.context,this,i)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}prop(e){return this.type.prop(e)}enter(e,n,a=0){if(a&Ce.ExcludeBuffers)return null;let{buffer:r}=this.context,i=r.findChild(this.index+4,r.buffer[this.index+3],n>0?1:-1,e-this.context.start,n);return i<0?null:new t(this.context,this,i)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,n=e.buffer[this.index+3];return n<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new t(this.context,this._parent,n):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,n=this._parent?this._parent.index+4:0;return this.index==n?this.externalSibling(-1):new t(this.context,this._parent,e.findChild(n,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],n=[],{buffer:a}=this.context,r=this.index+4,i=a.buffer[this.index+3];if(i>r){let o=a.buffer[this.index+1];e.push(a.slice(r,i,o)),n.push(0)}return new ve(this.type,e,n,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}};function BF(t){if(!t.length)return null;let e=0,n=t[0];for(let i=1;i<t.length;i++){let o=t[i];(o.from>n.from||o.to<n.to)&&(n=o,e=i)}let a=n instanceof Sn&&n.index<0?null:n.parent,r=t.slice();return a?r[e]=a:r.splice(e,1),new nC(r,n)}var nC=class{constructor(e,n){this.heads=e,this.node=n}get next(){return BF(this.heads)}};function dZ(t,e,n){let a=t.resolveInner(e,n),r=null;for(let i=a instanceof Sn?a:a.context.parent;i;i=i.parent)if(i.index<0){let o=i.parent;(r||(r=[a])).push(o.resolve(e,n)),i=o}else{let o=Oi.get(i.tree);if(o&&o.overlay&&o.overlay[0].from<=e&&o.overlay[o.overlay.length-1].to>=e){let s=new Sn(o.tree,o.overlay[0].from+i.from,-1,i);(r||(r=[a])).push(cA(s,e,n,!1))}}return r?BF(r):a}var ic=class{get name(){return this.type.name}constructor(e,n=0){if(this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,this.mode=n&~Ce.EnterBracketed,e instanceof Sn)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let a=e._parent;a;a=a._parent)this.stack.unshift(a.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,n){this.index=e;let{start:a,buffer:r}=this.buffer;return this.type=n||r.set.types[r.buffer[e]],this.from=a+r.buffer[e+1],this.to=a+r.buffer[e+2],!0}yield(e){return e?e instanceof Sn?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,n,a){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,n,a,this.mode));let{buffer:r}=this.buffer,i=r.findChild(this.index+4,r.buffer[this.index+3],e,n-this.buffer.start,a);return i<0?!1:(this.stack.push(this.index),this.yieldBuf(i))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,n,a=this.mode){return this.buffer?a&Ce.ExcludeBuffers?!1:this.enterChild(1,e,n):this.yield(this._tree.enter(e,n,a))}parent(){if(!this.buffer)return this.yieldNode(this.mode&Ce.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&Ce.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:n}=this.buffer,a=this.stack.length-1;if(e<0){let r=a<0?0:this.stack[a]+4;if(this.index!=r)return this.yieldBuf(n.findChild(r,this.index,-1,0,4))}else{let r=n.buffer[this.index+3];if(r<(a<0?n.buffer.length:n.buffer[this.stack[a]+3]))return this.yieldBuf(r)}return a<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let n,a,{buffer:r}=this;if(r){if(e>0){if(this.index<r.buffer.buffer.length)return!1}else for(let i=0;i<this.index;i++)if(r.buffer.buffer[i+3]<this.index)return!1;({index:n,parent:a}=r)}else({index:n,_parent:a}=this._tree);for(;a;{index:n,_parent:a}=a)if(n>-1)for(let i=n+e,o=e<0?-1:a._tree.children.length;i!=o;i+=e){let s=a._tree.children[i];if(this.mode&Ce.IncludeAnonymous||s instanceof Li||!s.type.isAnonymous||cC(s))return!1}return!0}move(e,n){if(n&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,n=0){for(;(this.from==this.to||(n<1?this.from>=e:this.from>e)||(n>-1?this.to<=e:this.to<e))&&this.parent(););for(;this.enterChild(1,e,n););return this}get node(){if(!this.buffer)return this._tree;let e=this.bufferNode,n=null,a=0;if(e&&e.context==this.buffer)e:for(let r=this.index,i=this.stack.length;i>=0;){for(let o=e;o;o=o._parent)if(o.index==r){if(r==this.index)return o;n=o,a=i+1;break e}r=this.stack[--i]}for(let r=a;r<this.stack.length;r++)n=new Do(this.buffer,n,this.stack[r]);return this.bufferNode=new Do(this.buffer,n,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(e,n){for(let a=0;;){let r=!1;if(this.type.isAnonymous||e(this)!==!1){if(this.firstChild()){a++;continue}this.type.isAnonymous||(r=!0)}for(;;){if(r&&n&&n(this),r=this.type.isAnonymous,!a)return;if(this.nextSibling())break;this.parent(),a--,r=!0}}}matchContext(e){if(!this.buffer)return eC(this.node.parent,e);let{buffer:n}=this.buffer,{types:a}=n.set;for(let r=e.length-1,i=this.stack.length-1;r>=0;i--){if(i<0)return eC(this._tree,e,r);let o=a[n.buffer[this.stack[i]]];if(!o.isAnonymous){if(e[r]&&e[r]!=o.name)return!1;r--}}return!0}};function cC(t){return t.children.some(e=>e instanceof Li||!e.type.isAnonymous||cC(e))}function uZ(t){var e;let{buffer:n,nodeSet:a,maxBufferLength:r=1024,reused:i=[],minRepeatType:o=a.types.length}=t,s=Array.isArray(n)?new Xk(n,n.length):n,c=a.types,A=0,d=0;function u(Q,D,F,$,z,U){let{id:te,start:V,end:fe,size:de}=s,ge=d,ze=A;if(de<0)if(s.next(),de==-1){let Yt=i[te];F.push(Yt),$.push(V-Q);return}else if(de==-3){A=te;return}else if(de==-4){d=te;return}else throw new RangeError(`Unrecognized record size: ${de}`);let yt=c[te],jt,tt,_t=V-Q;if(fe-V<=r&&(tt=w(s.pos-D,z))){let Yt=new Uint16Array(tt.size-tt.skip),Bt=s.pos-tt.size,Pt=Yt.length;for(;s.pos>Bt;)Pt=b(tt.start,Yt,Pt);jt=new Li(Yt,fe-tt.start,a),_t=tt.start-Q}else{let Yt=s.pos-de;s.next();let Bt=[],Pt=[],kn=te>=o?te:-1,la=0,ri=fe;for(;s.pos>Yt;)kn>=0&&s.id==kn&&s.size>=0?(s.end<=ri-r&&(f(Bt,Pt,V,la,s.end,ri,kn,ge,ze),la=Bt.length,ri=s.end),s.next()):U>2500?p(V,Yt,Bt,Pt):u(V,Yt,Bt,Pt,kn,U+1);if(kn>=0&&la>0&&la<Bt.length&&f(Bt,Pt,V,la,V,ri,kn,ge,ze),Bt.reverse(),Pt.reverse(),kn>-1&&la>0){let cs=m(yt,ze);jt=lC(yt,Bt,Pt,0,Bt.length,0,fe-V,cs,cs)}else jt=h(yt,Bt,Pt,fe-V,ge-fe,ze)}F.push(jt),$.push(_t)}function p(Q,D,F,$){let z=[],U=0,te=-1;for(;s.pos>D;){let{id:V,start:fe,end:de,size:ge}=s;if(ge>4)s.next();else{if(te>-1&&fe<te)break;te<0&&(te=de-r),z.push(V,fe,de),U++,s.next()}}if(U){let V=new Uint16Array(U*4),fe=z[z.length-2];for(let de=z.length-3,ge=0;de>=0;de-=3)V[ge++]=z[de],V[ge++]=z[de+1]-fe,V[ge++]=z[de+2]-fe,V[ge++]=ge;F.push(new Li(V,z[2]-fe,a)),$.push(fe-Q)}}function m(Q,D){return(F,$,z)=>{let U=0,te=F.length-1,V,fe;if(te>=0&&(V=F[te])instanceof ve){if(!te&&V.type==Q&&V.length==z)return V;(fe=V.prop(ae.lookAhead))&&(U=$[te]+V.length+fe)}return h(Q,F,$,z,U,D)}}function f(Q,D,F,$,z,U,te,V,fe){let de=[],ge=[];for(;Q.length>$;)de.push(Q.pop()),ge.push(D.pop()+F-z);Q.push(h(a.types[te],de,ge,U-z,V-U,fe)),D.push(z-F)}function h(Q,D,F,$,z,U,te){if(U){let V=[ae.contextHash,U];te=te?[V].concat(te):[V]}if(z>25){let V=[ae.lookAhead,z];te=te?[V].concat(te):[V]}return new ve(Q,D,F,$,te)}function w(Q,D){let F=s.fork(),$=0,z=0,U=0,te=F.end-r,V={size:0,start:0,skip:0};e:for(let fe=F.pos-Q;F.pos>fe;){let de=F.size;if(F.id==D&&de>=0){V.size=$,V.start=z,V.skip=U,U+=4,$+=4,F.next();continue}let ge=F.pos-de;if(de<0||ge<fe||F.start<te)break;let ze=F.id>=o?4:0,yt=F.start;for(F.next();F.pos>ge;){if(F.size<0)if(F.size==-3||F.size==-4)ze+=4;else break e;else F.id>=o&&(ze+=4);F.next()}z=yt,$+=de,U+=ze}return(D<0||$==Q)&&(V.size=$,V.start=z,V.skip=U),V.size>4?V:void 0}function b(Q,D,F){let{id:$,start:z,end:U,size:te}=s;if(s.next(),te>=0&&$<o){let V=F;if(te>4){let fe=s.pos-(te-4);for(;s.pos>fe;)F=b(Q,D,F)}D[--F]=V,D[--F]=U-Q,D[--F]=z-Q,D[--F]=$}else te==-3?A=$:te==-4&&(d=$);return F}let y=[],k=[];for(;s.pos>0;)u(t.start||0,t.bufferStart||0,y,k,-1,0);let E=(e=t.length)!==null&&e!==void 0?e:y.length?k[0]+y[0].length:0;return new ve(c[t.topID],y.reverse(),k.reverse(),E)}var hF=new WeakMap;function km(t,e){if(!t.isAnonymous||e instanceof Li||e.type!=t)return 1;let n=hF.get(e);if(n==null){n=1;for(let a of e.children){if(a.type!=t||!(a instanceof ve)){n=1;break}n+=km(t,a)}hF.set(e,n)}return n}function lC(t,e,n,a,r,i,o,s,c){let A=0;for(let f=a;f<r;f++)A+=km(t,e[f]);let d=Math.ceil(A*1.5/8),u=[],p=[];function m(f,h,w,b,y){for(let k=w;k<b;){let E=k,Q=h[k],D=km(t,f[k]);for(k++;k<b;k++){let F=km(t,f[k]);if(D+F>=d)break;D+=F}if(k==E+1){if(D>d){let F=f[E];m(F.children,F.positions,0,F.children.length,h[E]+y);continue}u.push(f[E])}else{let F=h[k-1]+f[k-1].length-Q;u.push(lC(t,f,h,E,k,Q,F,null,c))}p.push(Q+y-i)}}return m(e,n,a,r,0),(s||c)(u,p,o)}var oc=class{constructor(){this.map=new WeakMap}setBuffer(e,n,a){let r=this.map.get(e);r||this.map.set(e,r=new Map),r.set(n,a)}getBuffer(e,n){let a=this.map.get(e);return a&&a.get(n)}set(e,n){e instanceof Do?this.setBuffer(e.context.buffer,e.index,n):e instanceof Sn&&this.map.set(e.tree,n)}get(e){return e instanceof Do?this.getBuffer(e.context.buffer,e.index):e instanceof Sn?this.map.get(e.tree):void 0}cursorSet(e,n){e.buffer?this.setBuffer(e.buffer.buffer,e.index,n):this.map.set(e.tree,n)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}},Rr=class t{constructor(e,n,a,r,i=!1,o=!1){this.from=e,this.to=n,this.tree=a,this.offset=r,this.open=(i?1:0)|(o?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,n=[],a=!1){let r=[new t(0,e.length,e,0,!1,a)];for(let i of n)i.to>e.length&&r.push(i);return r}static applyChanges(e,n,a=128){if(!n.length)return e;let r=[],i=1,o=e.length?e[0]:null;for(let s=0,c=0,A=0;;s++){let d=s<n.length?n[s]:null,u=d?d.fromA:1e9;if(u-c>=a)for(;o&&o.from<u;){let p=o;if(c>=p.from||u<=p.to||A){let m=Math.max(p.from,c)-A,f=Math.min(p.to,u)-A;p=m>=f?null:new t(m,f,p.tree,p.offset+A,s>0,!!d)}if(p&&r.push(p),o.to>u)break;o=i<e.length?e[i++]:null}if(!d)break;c=d.toA,A=d.toA-d.toB}return r}},$i=class{startParse(e,n,a){return typeof e=="string"&&(e=new aC(e)),a=a?a.length?a.map(r=>new Fn(r.from,r.to)):[new Fn(0,0)]:[new Fn(0,e.length)],this.createParse(e,n||[],a)}parse(e,n,a){let r=this.startParse(e,n,a);for(;;){let i=r.advance();if(i)return i}}},aC=class{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,n){return this.string.slice(e,n)}};function xm(t){return(e,n,a,r)=>new oC(e,t,n,a,r)}var _m=class{constructor(e,n,a,r,i,o){this.parser=e,this.parse=n,this.overlay=a,this.bracketed=r,this.target=i,this.from=o}};function yF(t){if(!t.length||t.some(e=>e.from>=e.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(t))}var rC=class{constructor(e,n,a,r,i,o,s,c){this.parser=e,this.predicate=n,this.mounts=a,this.index=r,this.start=i,this.bracketed=o,this.target=s,this.prev=c,this.depth=0,this.ranges=[]}},iC=new ae({perNode:!0}),oC=class{constructor(e,n,a,r,i){this.nest=n,this.input=a,this.fragments=r,this.ranges=i,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let a=this.baseParse.advance();if(!a)return null;if(this.baseParse=null,this.baseTree=a,this.startInner(),this.stoppedAt!=null)for(let r of this.inner)r.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let a=this.baseTree;return this.stoppedAt!=null&&(a=new ve(a.type,a.children,a.positions,a.length,a.propValues.concat([[iC,this.stoppedAt]]))),a}let e=this.inner[this.innerDone],n=e.parse.advance();if(n){this.innerDone++;let a=Object.assign(Object.create(null),e.target.props);a[ae.mounted.id]=new Oi(n,e.overlay,e.parser,e.bracketed),e.target.props=a}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.input.length;for(let n=this.innerDone;n<this.inner.length;n++)this.inner[n].from<e&&(e=Math.min(e,this.inner[n].parse.parsedPos));return e}stopAt(e){if(this.stoppedAt=e,this.baseParse)this.baseParse.stopAt(e);else for(let n=this.innerDone;n<this.inner.length;n++)this.inner[n].parse.stopAt(e)}startInner(){let e=new sC(this.fragments),n=null,a=null,r=new ic(new Sn(this.baseTree,this.ranges[0].from,0,null),Ce.IncludeAnonymous|Ce.IgnoreMounts);e:for(let i,o;;){let s=!0,c;if(this.stoppedAt!=null&&r.from>=this.stoppedAt)s=!1;else if(e.hasNode(r)){if(n){let A=n.mounts.find(d=>d.frag.from<=r.from&&d.frag.to>=r.to&&d.mount.overlay);if(A)for(let d of A.mount.overlay){let u=d.from+A.pos,p=d.to+A.pos;u>=r.from&&p<=r.to&&!n.ranges.some(m=>m.from<p&&m.to>u)&&n.ranges.push({from:u,to:p})}}s=!1}else if(a&&(o=pZ(a.ranges,r.from,r.to)))s=o!=2;else if(!r.type.isAnonymous&&(i=this.nest(r,this.input))&&(r.from<r.to||!i.overlay)){r.tree||(mZ(r),n&&n.depth++,a&&a.depth++);let A=e.findMounts(r.from,i.parser);if(typeof i.overlay=="function")n=new rC(i.parser,i.overlay,A,this.inner.length,r.from,!!i.bracketed,r.tree,n);else{let d=kF(this.ranges,i.overlay||(r.from<r.to?[new Fn(r.from,r.to)]:[]));d.length&&yF(d),(d.length||!i.overlay)&&this.inner.push(new _m(i.parser,d.length?i.parser.startParse(this.input,CF(A,d),d):i.parser.startParse(""),i.overlay?i.overlay.map(u=>new Fn(u.from-r.from,u.to-r.from)):null,!!i.bracketed,r.tree,d.length?d[0].from:r.from)),i.overlay?d.length&&(a={ranges:d,depth:0,prev:a}):s=!1}}else if(n&&(c=n.predicate(r))&&(c===!0&&(c=new Fn(r.from,r.to)),c.from<c.to)){let A=n.ranges.length-1;A>=0&&n.ranges[A].to==c.from?n.ranges[A]={from:n.ranges[A].from,to:c.to}:n.ranges.push(c)}if(s&&r.firstChild())n&&n.depth++,a&&a.depth++;else for(;!r.nextSibling();){if(!r.parent())break e;if(n&&!--n.depth){let A=kF(this.ranges,n.ranges);A.length&&(yF(A),this.inner.splice(n.index,0,new _m(n.parser,n.parser.startParse(this.input,CF(n.mounts,A),A),n.ranges.map(d=>new Fn(d.from-n.start,d.to-n.start)),n.bracketed,n.target,A[0].from))),n=n.prev}a&&!--a.depth&&(a=a.prev)}}}};function pZ(t,e,n){for(let a of t){if(a.from>=n)break;if(a.to>e)return a.from<=e&&a.to>=n?2:1}return 0}function wF(t,e,n,a,r,i){if(e<n){let o=t.buffer[e+1];a.push(t.slice(e,n,o)),r.push(o-i)}}function mZ(t){let{node:e}=t,n=[],a=e.context.buffer;do n.push(t.index),t.parent();while(!t.tree);let r=t.tree,i=r.children.indexOf(a),o=r.children[i],s=o.buffer,c=[i];function A(d,u,p,m,f,h){let w=n[h],b=[],y=[];wF(o,d,w,b,y,m);let k=s[w+1],E=s[w+2];c.push(b.length);let Q=h?A(w+4,s[w+3],o.set.types[s[w]],k,E-k,h-1):e.toTree();return b.push(Q),y.push(k-m),wF(o,s[w+3],u,b,y,m),new ve(p,b,y,f)}r.children[i]=A(0,s.length,pt.none,0,o.length,n.length-1);for(let d of c){let u=t.tree.children[d],p=t.tree.positions[d];t.yield(new Sn(u,p+t.from,d,t._tree))}}var Bm=class{constructor(e,n){this.offset=n,this.done=!1,this.cursor=e.cursor(Ce.IncludeAnonymous|Ce.IgnoreMounts)}moveTo(e){let{cursor:n}=this,a=e-this.offset;for(;!this.done&&n.from<a;)n.to>=e&&n.enter(a,1,Ce.IgnoreOverlays|Ce.ExcludeBuffers)||n.next(!1)||(this.done=!0)}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from&&this.cursor.tree)for(let n=this.cursor.tree;;){if(n==e.tree)return!0;if(n.children.length&&n.positions[0]==0&&n.children[0]instanceof ve)n=n.children[0];else break}return!1}},sC=class{constructor(e){var n;if(this.fragments=e,this.curTo=0,this.fragI=0,e.length){let a=this.curFrag=e[0];this.curTo=(n=a.tree.prop(iC))!==null&&n!==void 0?n:a.to,this.inner=new Bm(a.tree,-a.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curTo>=e.to&&this.inner.hasNode(e)}nextFrag(){var e;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let n=this.curFrag=this.fragments[this.fragI];this.curTo=(e=n.tree.prop(iC))!==null&&e!==void 0?e:n.to,this.inner=new Bm(n.tree,-n.offset)}}findMounts(e,n){var a;let r=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let i=this.inner.cursor.node;i;i=i.parent){let o=(a=i.tree)===null||a===void 0?void 0:a.prop(ae.mounted);if(o&&o.parser==n)for(let s=this.fragI;s<this.fragments.length;s++){let c=this.fragments[s];if(c.from>=i.to)break;c.tree==this.curFrag.tree&&r.push({frag:c,pos:i.from-c.offset,mount:o})}}}return r}};function kF(t,e){let n=null,a=e;for(let r=1,i=0;r<t.length;r++){let o=t[r-1].to,s=t[r].from;for(;i<a.length;i++){let c=a[i];if(c.from>=s)break;c.to<=o||(n||(a=n=e.slice()),c.from<o?(n[i]=new Fn(c.from,o),c.to>s&&n.splice(i+1,0,new Fn(s,c.to))):c.to>s?n[i--]=new Fn(s,c.to):n.splice(i--,1))}}return a}function gZ(t,e,n,a){let r=0,i=0,o=!1,s=!1,c=-1e9,A=[];for(;;){let d=r==t.length?1e9:o?t[r].to:t[r].from,u=i==e.length?1e9:s?e[i].to:e[i].from;if(o!=s){let p=Math.max(c,n),m=Math.min(d,u,a);p<m&&A.push(new Fn(p,m))}if(c=Math.min(d,u),c==1e9)break;d==c&&(o?(o=!1,r++):o=!0),u==c&&(s?(s=!1,i++):s=!0)}return A}function CF(t,e){let n=[];for(let{pos:a,mount:r,frag:i}of t){let o=a+(r.overlay?r.overlay[0].from:0),s=o+r.tree.length,c=Math.max(i.from,o),A=Math.min(i.to,s);if(r.overlay){let d=r.overlay.map(p=>new Fn(p.from+a,p.to+a)),u=gZ(e,d,c,A);for(let p=0,m=c;;p++){let f=p==u.length,h=f?A:u[p].from;if(h>m&&n.push(new Rr(m,h,r.tree,-o,i.from>=m||i.openStart,i.to<=h||i.openEnd)),f)break;m=u[p].to}}else n.push(new Rr(c,A,r.tree,-o,i.from>=o||i.openStart,i.to<=s||i.openEnd))}return n}var fZ=0,Jn=class t{constructor(e,n,a,r){this.name=e,this.set=n,this.base=a,this.modified=r,this.id=fZ++}toString(){let{name:e}=this;for(let n of this.modified)n.name&&(e=`${n.name}(${e})`);return e}static define(e,n){let a=typeof e=="string"?e:"?";if(e instanceof t&&(n=e),n?.base)throw new Error("Can not derive from a modified tag");let r=new t(a,[],null,[]);if(r.set.push(r),n)for(let i of n.set)r.set.push(i);return r}static defineModifier(e){let n=new Im(e);return a=>a.modified.indexOf(n)>-1?a:Im.get(a.base||a,a.modified.concat(n).sort((r,i)=>r.id-i.id))}},bZ=0,Im=class t{constructor(e){this.name=e,this.instances=[],this.id=bZ++}static get(e,n){if(!n.length)return e;let a=n[0].instances.find(s=>s.base==e&&hZ(n,s.modified));if(a)return a;let r=[],i=new Jn(e.name,r,e,n);for(let s of n)s.instances.push(i);let o=yZ(n);for(let s of e.set)if(!s.modified.length)for(let c of o)r.push(t.get(s,c));return i}};function hZ(t,e){return t.length==e.length&&t.every((n,a)=>n==e[a])}function yZ(t){let e=[[]];for(let n=0;n<t.length;n++)for(let a=0,r=e.length;a<r;a++)e.push(e[a].concat(t[n]));return e.sort((n,a)=>a.length-n.length)}function Vn(t){let e=Object.create(null);for(let n in t){let a=t[n];Array.isArray(a)||(a=[a]);for(let r of n.split(" "))if(r){let i=[],o=2,s=r;for(let u=0;;){if(s=="..."&&u>0&&u+3==r.length){o=1;break}let p=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(s);if(!p)throw new RangeError("Invalid path: "+r);if(i.push(p[0]=="*"?"":p[0][0]=='"'?JSON.parse(p[0]):p[0]),u+=p[0].length,u==r.length)break;let m=r[u++];if(u==r.length&&m=="!"){o=0;break}if(m!="/")throw new RangeError("Invalid path: "+r);s=r.slice(u)}let c=i.length-1,A=i[c];if(!A)throw new RangeError("Invalid path: "+r);let d=new So(a,o,c>0?i.slice(0,c):null);e[A]=d.sort(e[A])}}return EF.add(e)}var EF=new ae({combine(t,e){let n,a,r;for(;t||e;){if(!t||e&&t.depth>=e.depth?(r=e,e=e.next):(r=t,t=t.next),n&&n.mode==r.mode&&!r.context&&!n.context)continue;let i=new So(r.tags,r.mode,r.context);n?n.next=i:a=i,n=i}return a}}),So=class{constructor(e,n,a,r){this.tags=e,this.mode=n,this.context=a,this.next=r}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth<this.depth?(this.next=e,this):(e.next=this.sort(e.next),e)}get depth(){return this.context?this.context.length:0}};So.empty=new So([],2,null);function pC(t,e){let n=Object.create(null);for(let i of t)if(!Array.isArray(i.tag))n[i.tag.id]=i.class;else for(let o of i.tag)n[o.id]=i.class;let{scope:a,all:r=null}=e||{};return{style:i=>{let o=r;for(let s of i)for(let c of s.set){let A=n[c.id];if(A){o=o?o+" "+A:A;break}}return o},scope:a}}function wZ(t,e){let n=null;for(let a of t){let r=a.style(e);r&&(n=n?n+" "+r:r)}return n}function QF(t,e,n,a=0,r=t.length){let i=new dC(a,Array.isArray(e)?e:[e],n);i.highlightRange(t.cursor(),a,r,"",i.highlighters),i.flush(r)}var dC=class{constructor(e,n,a){this.at=e,this.highlighters=n,this.span=a,this.class=""}startSpan(e,n){n!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=n)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,n,a,r,i){let{type:o,from:s,to:c}=e;if(s>=a||c<=n)return;o.isTop&&(i=this.highlighters.filter(m=>!m.scope||m.scope(o)));let A=r,d=kZ(e)||So.empty,u=wZ(i,d.tags);if(u&&(A&&(A+=" "),A+=u,d.mode==1&&(r+=(r?" ":"")+u)),this.startSpan(Math.max(n,s),A),d.opaque)return;let p=e.tree&&e.tree.prop(ae.mounted);if(p&&p.overlay){let m=e.node.enter(p.overlay[0].from+s,1),f=this.highlighters.filter(w=>!w.scope||w.scope(p.tree.type)),h=e.firstChild();for(let w=0,b=s;;w++){let y=w<p.overlay.length?p.overlay[w]:null,k=y?y.from+s:c,E=Math.max(n,b),Q=Math.min(a,k);if(E<Q&&h)for(;e.from<Q&&(this.highlightRange(e,E,Q,r,i),this.startSpan(Math.min(Q,e.to),A),!(e.to>=k||!e.nextSibling())););if(!y||k>a)break;b=y.to+s,b>n&&(this.highlightRange(m.cursor(),Math.max(n,y.from+s),Math.min(a,b),"",f),this.startSpan(Math.min(a,b),A))}h&&e.parent()}else if(e.firstChild()){p&&(r="");do if(!(e.to<=n)){if(e.from>=a)break;this.highlightRange(e,n,a,r,i),this.startSpan(Math.min(a,e.to),A)}while(e.nextSibling());e.parent()}}};function kZ(t){let e=t.type.prop(EF);for(;e&&e.context&&!t.matchContext(e.context);)e=e.next;return e||null}var q=Jn.define,vm=q(),Ri=q(),xF=q(Ri),vF=q(Ri),ji=q(),Em=q(ji),AC=q(ji),pr=q(),Fo=q(pr),dr=q(),ur=q(),uC=q(),lA=q(uC),Qm=q(),B={comment:vm,lineComment:q(vm),blockComment:q(vm),docComment:q(vm),name:Ri,variableName:q(Ri),typeName:xF,tagName:q(xF),propertyName:vF,attributeName:q(vF),className:q(Ri),labelName:q(Ri),namespace:q(Ri),macroName:q(Ri),literal:ji,string:Em,docString:q(Em),character:q(Em),attributeValue:q(Em),number:AC,integer:q(AC),float:q(AC),bool:q(ji),regexp:q(ji),escape:q(ji),color:q(ji),url:q(ji),keyword:dr,self:q(dr),null:q(dr),atom:q(dr),unit:q(dr),modifier:q(dr),operatorKeyword:q(dr),controlKeyword:q(dr),definitionKeyword:q(dr),moduleKeyword:q(dr),operator:ur,derefOperator:q(ur),arithmeticOperator:q(ur),logicOperator:q(ur),bitwiseOperator:q(ur),compareOperator:q(ur),updateOperator:q(ur),definitionOperator:q(ur),typeOperator:q(ur),controlOperator:q(ur),punctuation:uC,separator:q(uC),bracket:lA,angleBracket:q(lA),squareBracket:q(lA),paren:q(lA),brace:q(lA),content:pr,heading:Fo,heading1:q(Fo),heading2:q(Fo),heading3:q(Fo),heading4:q(Fo),heading5:q(Fo),heading6:q(Fo),contentSeparator:q(pr),list:q(pr),quote:q(pr),emphasis:q(pr),strong:q(pr),link:q(pr),monospace:q(pr),strikethrough:q(pr),inserted:q(),deleted:q(),changed:q(),invalid:q(),meta:Qm,documentMeta:q(Qm),annotation:q(Qm),processingInstruction:q(Qm),definition:Jn.defineModifier("definition"),constant:Jn.defineModifier("constant"),function:Jn.defineModifier("function"),standard:Jn.defineModifier("standard"),local:Jn.defineModifier("local"),special:Jn.defineModifier("special")};for(let t in B){let e=B[t];e instanceof Jn&&(e.name=t)}var dfe=pC([{tag:B.link,class:"tok-link"},{tag:B.heading,class:"tok-heading"},{tag:B.emphasis,class:"tok-emphasis"},{tag:B.strong,class:"tok-strong"},{tag:B.keyword,class:"tok-keyword"},{tag:B.atom,class:"tok-atom"},{tag:B.bool,class:"tok-bool"},{tag:B.url,class:"tok-url"},{tag:B.labelName,class:"tok-labelName"},{tag:B.inserted,class:"tok-inserted"},{tag:B.deleted,class:"tok-deleted"},{tag:B.literal,class:"tok-literal"},{tag:B.string,class:"tok-string"},{tag:B.number,class:"tok-number"},{tag:[B.regexp,B.escape,B.special(B.string)],class:"tok-string2"},{tag:B.variableName,class:"tok-variableName"},{tag:B.local(B.variableName),class:"tok-variableName tok-local"},{tag:B.definition(B.variableName),class:"tok-variableName tok-definition"},{tag:B.special(B.variableName),class:"tok-variableName2"},{tag:B.definition(B.propertyName),class:"tok-propertyName tok-definition"},{tag:B.typeName,class:"tok-typeName"},{tag:B.namespace,class:"tok-namespace"},{tag:B.className,class:"tok-className"},{tag:B.macroName,class:"tok-macroName"},{tag:B.propertyName,class:"tok-propertyName"},{tag:B.operator,class:"tok-operator"},{tag:B.comment,class:"tok-comment"},{tag:B.meta,class:"tok-meta"},{tag:B.invalid,class:"tok-invalid"},{tag:B.punctuation,class:"tok-punctuation"}]);var mC,Pi=new ae;function gA(t){return G.define({combine:t?e=>e.concat(t):void 0})}var Sm=new ae,mn=class{constructor(e,n,a=[],r=""){this.data=e,this.name=r,Fe.prototype.hasOwnProperty("tree")||Object.defineProperty(Fe.prototype,"tree",{get(){return Ee(this)}}),this.parser=n,this.extension=[Mi.of(this),Fe.languageData.of((i,o,s)=>{let c=IF(i,o,s),A=c.type.prop(Pi);if(!A)return[];let d=i.facet(A),u=c.type.prop(Sm);if(u){let p=c.resolve(o-c.from,s);for(let m of u)if(m.test(p,i)){let f=i.facet(m.facet);return m.type=="replace"?f:f.concat(d)}}return d})].concat(a)}isActiveAt(e,n,a=-1){return IF(e,n,a).type.prop(Pi)==this.data}findRegions(e){let n=e.facet(Mi);if(n?.data==this.data)return[{from:0,to:e.doc.length}];if(!n||!n.allowsNesting)return[];let a=[],r=(i,o)=>{if(i.prop(Pi)==this.data){a.push({from:o,to:o+i.length});return}let s=i.prop(ae.mounted);if(s){if(s.tree.prop(Pi)==this.data){if(s.overlay)for(let c of s.overlay)a.push({from:c.from+o,to:c.to+o});else a.push({from:o,to:o+i.length});return}else if(s.overlay){let c=a.length;if(r(s.tree,s.overlay[0].from+o),a.length>c)return}}for(let c=0;c<i.children.length;c++){let A=i.children[c];A instanceof ve&&r(A,i.positions[c]+o)}};return r(Ee(e),0),a}get allowsNesting(){return!0}};mn.setState=ie.define();function IF(t,e,n){let a=t.facet(Mi),r=Ee(t).topNode;if(!a||a.allowsNesting)for(let i=r;i;i=i.enter(e,n,Ce.ExcludeBuffers|Ce.EnterBracketed))i.type.isTop&&(r=i);return r}var mr=class t extends mn{constructor(e,n,a){super(e,n,[],a),this.parser=n}static define(e){let n=gA(e.languageData);return new t(n,e.parser.configure({props:[Pi.add(a=>a.isTop?n:void 0)]}),e.name)}configure(e,n){return new t(this.data,this.parser.configure(e),n||this.name)}get allowsNesting(){return this.parser.hasWrappers()}};function Ee(t){let e=t.field(mn.state,!1);return e?e.tree:ve.empty}var hC=class{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,n){let a=this.cursorPos-this.string.length;return e<a||n>=this.cursorPos?this.doc.sliceString(e,n):this.string.slice(e-a,n-a)}},AA=null,uA=class t{constructor(e,n,a=[],r,i,o,s,c){this.parser=e,this.state=n,this.fragments=a,this.tree=r,this.treeLen=i,this.viewport=o,this.skipped=s,this.scheduleOn=c,this.parse=null,this.tempSkipped=[]}static create(e,n,a){return new t(e,n,[],ve.empty,0,a,[],null)}startParse(){return this.parser.startParse(new hC(this.state.doc),this.fragments)}work(e,n){return n!=null&&n>=this.state.doc.length&&(n=void 0),this.tree!=ve.empty&&this.isDone(n??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var a;if(typeof e=="number"){let r=Date.now()+e;e=()=>Date.now()>r}for(this.parse||(this.parse=this.startParse()),n!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>n)&&n<this.state.doc.length&&this.parse.stopAt(n);;){let r=this.parse.advance();if(r)if(this.fragments=this.withoutTempSkipped(Rr.addTree(r,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(a=this.parse.stoppedAt)!==null&&a!==void 0?a:this.state.doc.length,this.tree=r,this.parse=null,this.treeLen<(n??this.state.doc.length))this.parse=this.startParse();else return!0;if(e())return!1}})}takeTree(){let e,n;this.parse&&(e=this.parse.parsedPos)>=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(n=this.parse.advance()););}),this.treeLen=e,this.tree=n,this.fragments=this.withoutTempSkipped(Rr.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let n=AA;AA=this;try{return e()}finally{AA=n}}withoutTempSkipped(e){for(let n;n=this.tempSkipped.pop();)e=DF(e,n.from,n.to);return e}changes(e,n){let{fragments:a,tree:r,treeLen:i,viewport:o,skipped:s}=this;if(this.takeTree(),!e.empty){let c=[];if(e.iterChangedRanges((A,d,u,p)=>c.push({fromA:A,toA:d,fromB:u,toB:p})),a=Rr.applyChanges(a,c),r=ve.empty,i=0,o={from:e.mapPos(o.from,-1),to:e.mapPos(o.to,1)},this.skipped.length){s=[];for(let A of this.skipped){let d=e.mapPos(A.from,1),u=e.mapPos(A.to,-1);d<u&&s.push({from:d,to:u})}}}return new t(this.parser,n,a,r,i,o,s,this.scheduleOn)}updateViewport(e){if(this.viewport.from==e.from&&this.viewport.to==e.to)return!1;this.viewport=e;let n=this.skipped.length;for(let a=0;a<this.skipped.length;a++){let{from:r,to:i}=this.skipped[a];r<e.to&&i>e.from&&(this.fragments=DF(this.fragments,r,i),this.skipped.splice(a--,1))}return this.skipped.length>=n?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,n){this.skipped.push({from:e,to:n})}static getSkippingParser(e){return new class extends $i{createParse(n,a,r){let i=r[0].from,o=r[r.length-1].to;return{parsedPos:i,advance(){let c=AA;if(c){for(let A of r)c.tempSkipped.push(A);e&&(c.scheduleOn=c.scheduleOn?Promise.all([c.scheduleOn,e]):e)}return this.parsedPos=o,new ve(pt.none,[],[],o-i)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let n=this.fragments;return this.treeLen>=e&&n.length&&n[0].from==0&&n[0].to>=e}static get(){return AA}};function DF(t,e,n){return Rr.applyChanges(t,[{fromA:e,toA:n,fromB:e,toB:n}])}var pA=class t{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let n=this.context.changes(e.changes,e.state),a=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),n.viewport.to);return n.work(20,a)||n.takeTree(),new t(n)}static init(e){let n=Math.min(3e3,e.doc.length),a=uA.create(e.facet(Mi).parser,e,{from:0,to:n});return a.work(20,n)||a.takeTree(),new t(a)}};mn.state=at.define({create:pA.init,update(t,e){for(let n of e.effects)if(n.is(mn.setState))return n.value;return e.startState.facet(Mi)!=e.state.facet(Mi)?pA.init(e.state):t.apply(e)}});var $F=t=>{let e=setTimeout(()=>t(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&($F=t=>{let e=-1,n=setTimeout(()=>{e=requestIdleCallback(t,{timeout:400})},100);return()=>e<0?clearTimeout(n):cancelIdleCallback(e)});var gC=typeof navigator<"u"&&(!((mC=navigator.scheduling)===null||mC===void 0)&&mC.isInputPending)?()=>navigator.scheduling.isInputPending():null,CZ=lt.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let n=this.view.state.field(mn.state).context;(n.updateViewport(e.view.viewport)||this.view.viewport.to>n.treeLen)&&this.scheduleWork(),(e.docChanged||e.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(n)}scheduleWork(){if(this.working)return;let{state:e}=this.view,n=e.field(mn.state);(n.tree!=n.context.tree||!n.context.isDone(e.doc.length))&&(this.working=$F(this.work))}work(e){this.working=null;let n=Date.now();if(this.chunkEnd<n&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=n+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:a,viewport:{to:r}}=this.view,i=a.field(mn.state);if(i.tree==i.context.tree&&i.context.isDone(r+1e5))return;let o=Date.now()+Math.min(this.chunkBudget,100,e&&!gC?Math.max(25,e.timeRemaining()-5):1e9),s=i.context.treeLen<r&&a.doc.length>r+1e3,c=i.context.work(()=>gC&&gC()||Date.now()>o,r+(s?0:1e5));this.chunkBudget-=Date.now()-n,(c||this.chunkBudget<=0)&&(i.context.takeTree(),this.view.dispatch({effects:mn.setState.of(new pA(i.context))})),this.chunkBudget>0&&!(c&&!s)&&this.scheduleWork(),this.checkAsyncSchedule(i.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(n=>zt(this.view.state,n)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Mi=G.define({combine(t){return t.length?t[0]:null},enables:t=>[mn.state,CZ,T.contentAttributes.compute([t],e=>{let n=e.facet(t);return n&&n.name?{"data-language":n.name}:{}})]}),Xn=class{constructor(e,n=[]){this.language=e,this.support=n,this.extension=[e,n]}},mA=class t{constructor(e,n,a,r,i,o=void 0){this.name=e,this.alias=n,this.extensions=a,this.filename=r,this.loadFunc=i,this.support=o,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then(e=>this.support=e,e=>{throw this.loading=null,e}))}static of(e){let{load:n,support:a}=e;if(!n){if(!a)throw new RangeError("Must pass either 'load' or 'support' to LanguageDescription.of");n=()=>Promise.resolve(a)}return new t(e.name,(e.alias||[]).concat(e.name).map(r=>r.toLowerCase()),e.extensions||[],e.filename,n,a)}static matchFilename(e,n){for(let r of e)if(r.filename&&r.filename.test(n))return r;let a=/\.([^.]+)$/.exec(n);if(a){for(let r of e)if(r.extensions.indexOf(a[1])>-1)return r}return null}static matchLanguageName(e,n,a=!0){n=n.toLowerCase();for(let r of e)if(r.alias.some(i=>i==n))return r;if(a)for(let r of e)for(let i of r.alias){let o=n.indexOf(i);if(o>-1&&(i.length>2||!/\w/.test(n[o-1])&&!/\w/.test(n[o+i.length])))return r}return null}},_Z=G.define(),Ti=G.define({combine:t=>{if(!t.length)return" ";let e=t[0];if(!e||/\S/.test(e)||Array.from(e).some(n=>n!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(t[0]));return e}});function fA(t){let e=t.facet(Ti);return e.charCodeAt(0)==9?t.tabSize*e.length:e.length}function cc(t,e){let n="",a=t.tabSize,r=t.facet(Ti)[0];if(r==" "){for(;e>=a;)n+=" ",e-=a;r=" "}for(let i=0;i<e;i++)n+=r;return n}function Om(t,e){t instanceof Fe&&(t=new Oo(t));for(let a of t.state.facet(_Z)){let r=a(t,e);if(r!==void 0)return r}let n=Ee(t.state);return n.length>=e?BZ(t,n,e):null}var Oo=class{constructor(e,n={}){this.state=e,this.options=n,this.unit=fA(e)}lineAt(e,n=1){let a=this.state.doc.lineAt(e),{simulateBreak:r,simulateDoubleBreak:i}=this.options;return r!=null&&r>=a.from&&r<=a.to?i&&r==e?{text:"",from:e}:(n<0?r<e:r<=e)?{text:a.text.slice(r-a.from),from:r}:{text:a.text.slice(0,r-a.from),from:a.from}:a}textAfterPos(e,n=1){if(this.options.simulateDoubleBreak&&e==this.options.simulateBreak)return"";let{text:a,from:r}=this.lineAt(e,n);return a.slice(e-r,Math.min(a.length,e+100-r))}column(e,n=1){let{text:a,from:r}=this.lineAt(e,n),i=this.countColumn(a,e-r),o=this.options.overrideIndentation?this.options.overrideIndentation(r):-1;return o>-1&&(i+=o-this.countColumn(a,a.search(/\S|$/))),i}countColumn(e,n=e.length){return dn(e,this.state.tabSize,n)}lineIndent(e,n=1){let{text:a,from:r}=this.lineAt(e,n),i=this.options.overrideIndentation;if(i){let o=i(r);if(o>-1)return o}return this.countColumn(a,a.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}},Ha=new ae;function BZ(t,e,n){let a=e.resolveStack(n),r=e.resolveInner(n,-1).resolve(n,0).enterUnfinishedNodesBefore(n);if(r!=a.node){let i=[];for(let o=r;o&&!(o.from<a.node.from||o.to>a.node.to||o.from==a.node.from&&o.type==a.node.type);o=o.parent)i.push(o);for(let o=i.length-1;o>=0;o--)a={node:i[o],next:a}}return RF(a,t,n)}function RF(t,e,n){for(let a=t;a;a=a.next){let r=vZ(a.node);if(r)return r(yC.create(e,n,a))}return 0}function xZ(t){return t.pos==t.options.simulateBreak&&t.options.simulateDoubleBreak}function vZ(t){let e=t.type.prop(Ha);if(e)return e;let n=t.firstChild,a;if(n&&(a=n.type.prop(ae.closedBy))){let r=t.lastChild,i=r&&a.indexOf(r.name)>-1;return o=>PF(o,!0,1,void 0,i&&!xZ(o)?r.from:void 0)}return t.parent==null?EZ:null}function EZ(){return 0}var yC=class t extends Oo{constructor(e,n,a){super(e.state,e.options),this.base=e,this.pos=n,this.context=a}get node(){return this.context.node}static create(e,n,a){return new t(e,n,a)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let n=this.state.doc.lineAt(e.from);for(;;){let a=e.resolve(n.from);for(;a.parent&&a.parent.from==a.from;)a=a.parent;if(QZ(a,e))break;n=this.state.doc.lineAt(a.from)}return this.lineIndent(n.from)}continue(){return RF(this.context.next,this.base,this.pos)}};function QZ(t,e){for(let n=e;n;n=n.parent)if(t==n)return!0;return!1}function IZ(t){let e=t.node,n=e.childAfter(e.from),a=e.lastChild;if(!n)return null;let r=t.options.simulateBreak,i=t.state.doc.lineAt(n.from),o=r==null||r<=i.from?i.to:Math.min(i.to,r);for(let s=n.to;;){let c=e.childAfter(s);if(!c||c==a)return null;if(!c.type.isSkipped){if(c.from>=o)return null;let A=/^ */.exec(i.text.slice(n.to-i.from))[0].length;return{from:n.from,to:n.to+A}}s=c.to}}function jF({closing:t,align:e=!0,units:n=1}){return a=>PF(a,e,n,t)}function PF(t,e,n,a,r){let i=t.textAfter,o=i.match(/^\s*/)[0].length,s=a&&i.slice(o,o+a.length)==a||r==t.pos+o,c=e?IZ(t):null;return c?s?t.column(c.from):t.column(c.to):t.baseIndent+(s?0:t.unit*n)}var MF=t=>t.baseIndent;function jr({except:t,units:e=1}={}){return n=>{let a=t&&t.test(n.textAfter);return n.baseIndent+(a?0:e*n.unit)}}var DZ=200;function TF(){return Fe.transactionFilter.of(t=>{if(!t.docChanged||!t.isUserEvent("input.type")&&!t.isUserEvent("input.complete"))return t;let e=t.startState.languageDataAt("indentOnInput",t.startState.selection.main.head);if(!e.length)return t;let n=t.newDoc,{head:a}=t.newSelection.main,r=n.lineAt(a);if(a>r.from+DZ)return t;let i=n.sliceString(r.from,a);if(!e.some(A=>A.test(i)))return t;let{state:o}=t,s=-1,c=[];for(let{head:A}of o.selection.ranges){let d=o.doc.lineAt(A);if(d.from==s)continue;s=d.from;let u=Om(o,d.from);if(u==null)continue;let p=/^\s*/.exec(d.text)[0],m=cc(o,u);p!=m&&c.push({from:d.from,to:d.from+p.length,insert:m})}return c.length?[t,{changes:c,sequential:!0}]:t})}var xC=G.define(),Ca=new ae;function lc(t){let e=t.firstChild,n=t.lastChild;return e&&e.to<n.from?{from:e.to,to:n.type.isError?t.to:n.from}:null}function FZ(t,e,n){let a=Ee(t);if(a.length<n)return null;let r=a.resolveStack(n,1),i=null;for(let o=r;o;o=o.next){let s=o.node;if(s.to<=n||s.from>n)continue;if(i&&s.from<e)break;let c=s.type.prop(Ca);if(c&&(s.to<a.length-50||a.length==t.doc.length||!SZ(s))){let A=c(s,t);A&&A.from<=n&&A.from>=e&&A.to>n&&(i=A)}}return i}function SZ(t){let e=t.lastChild;return e&&e.to==t.to&&e.type.isError}function Dm(t,e,n){for(let a of t.facet(xC)){let r=a(t,e,n);if(r)return r}return FZ(t,e,n)}function qF(t,e){let n=e.mapPos(t.from,1),a=e.mapPos(t.to,-1);return n>=a?void 0:{from:n,to:a}}var Nm=ie.define({map:qF}),bA=ie.define({map:qF});function GF(t){let e=[];for(let{head:n}of t.state.selection.ranges)e.some(a=>a.from<=n&&a.to>=n)||e.push(t.lineBlockAt(n));return e}var No=at.define({create(){return X.none},update(t,e){e.isUserEvent("delete")&&e.changes.iterChangedRanges((n,a)=>t=FF(t,n,a)),t=t.map(e.changes);for(let n of e.effects)if(n.is(Nm)&&!OZ(t,n.value.from,n.value.to)){let{preparePlaceholder:a}=e.state.facet(vC),r=a?X.replace({widget:new wC(a(e.state,n.value))}):SF;t=t.update({add:[r.range(n.value.from,n.value.to)]})}else n.is(bA)&&(t=t.update({filter:(a,r)=>n.value.from!=a||n.value.to!=r,filterFrom:n.value.from,filterTo:n.value.to}));return e.selection&&(t=FF(t,e.selection.main.head)),t},provide:t=>T.decorations.from(t),toJSON(t,e){let n=[];return t.between(0,e.doc.length,(a,r)=>{n.push(a,r)}),n},fromJSON(t){if(!Array.isArray(t)||t.length%2)throw new RangeError("Invalid JSON for fold state");let e=[];for(let n=0;n<t.length;){let a=t[n++],r=t[n++];if(typeof a!="number"||typeof r!="number")throw new RangeError("Invalid JSON for fold state");e.push(SF.range(a,r))}return X.set(e,!0)}});function FF(t,e,n=e){let a=!1;return t.between(e,n,(r,i)=>{r<n&&i>e&&(a=!0)}),a?t.update({filterFrom:e,filterTo:n,filter:(r,i)=>r>=n||i<=e}):t}function Fm(t,e,n){var a;let r=null;return(a=t.field(No,!1))===null||a===void 0||a.between(e,n,(i,o)=>{(!r||r.from>i)&&(r={from:i,to:o})}),r}function OZ(t,e,n){let a=!1;return t.between(e,e,(r,i)=>{r==e&&i==n&&(a=!0)}),a}function zF(t,e){return t.field(No,!1)?e:e.concat(ie.appendConfig.of(ZF()))}var NZ=t=>{for(let e of GF(t)){let n=Dm(t.state,e.from,e.to);if(n)return t.dispatch({effects:zF(t.state,[Nm.of(n),UF(t,n)])}),!0}return!1},LZ=t=>{if(!t.state.field(No,!1))return!1;let e=[];for(let n of GF(t)){let a=Fm(t.state,n.from,n.to);a&&e.push(bA.of(a),UF(t,a,!1))}return e.length&&t.dispatch({effects:e}),e.length>0};function UF(t,e,n=!0){let a=t.state.doc.lineAt(e.from).number,r=t.state.doc.lineAt(e.to).number;return T.announce.of(`${t.state.phrase(n?"Folded lines":"Unfolded lines")} ${a} ${t.state.phrase("to")} ${r}.`)}var $Z=t=>{let{state:e}=t,n=[];for(let a=0;a<e.doc.length;){let r=t.lineBlockAt(a),i=Dm(e,r.from,r.to);i&&n.push(Nm.of(i)),a=(i?t.lineBlockAt(i.to):r).to+1}return n.length&&t.dispatch({effects:zF(t.state,n)}),!!n.length},RZ=t=>{let e=t.state.field(No,!1);if(!e||!e.size)return!1;let n=[];return e.between(0,t.state.doc.length,(a,r)=>{n.push(bA.of({from:a,to:r}))}),t.dispatch({effects:n}),!0};var HF=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:NZ},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:LZ},{key:"Ctrl-Alt-[",run:$Z},{key:"Ctrl-Alt-]",run:RZ}],jZ={placeholderDOM:null,preparePlaceholder:null,placeholderText:"\u2026"},vC=G.define({combine(t){return tn(t,jZ)}});function ZF(t){let e=[No,MZ];return t&&e.push(vC.of(t)),e}function YF(t,e){let{state:n}=t,a=n.facet(vC),r=o=>{let s=t.lineBlockAt(t.posAtDOM(o.target)),c=Fm(t.state,s.from,s.to);c&&t.dispatch({effects:bA.of(c)}),o.preventDefault()};if(a.placeholderDOM)return a.placeholderDOM(t,r,e);let i=document.createElement("span");return i.textContent=a.placeholderText,i.setAttribute("aria-label",n.phrase("folded code")),i.title=n.phrase("unfold"),i.className="cm-foldPlaceholder",i.onclick=r,i}var SF=X.replace({widget:new class extends pn{toDOM(t){return YF(t,null)}}}),wC=class extends pn{constructor(e){super(),this.value=e}eq(e){return this.value==e.value}toDOM(e){return YF(e,this.value)}},PZ={openText:"\u2304",closedText:"\u203A",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1},dA=class extends Kn{constructor(e,n){super(),this.config=e,this.open=n}eq(e){return this.config==e.config&&this.open==e.open}toDOM(e){if(this.config.markerDOM)return this.config.markerDOM(this.open);let n=document.createElement("span");return n.textContent=this.open?this.config.openText:this.config.closedText,n.title=e.state.phrase(this.open?"Fold line":"Unfold line"),n}};function WF(t={}){let e={...PZ,...t},n=new dA(e,!0),a=new dA(e,!1),r=lt.fromClass(class{constructor(o){this.from=o.viewport.from,this.markers=this.buildMarkers(o)}update(o){(o.docChanged||o.viewportChanged||o.startState.facet(Mi)!=o.state.facet(Mi)||o.startState.field(No,!1)!=o.state.field(No,!1)||Ee(o.startState)!=Ee(o.state)||e.foldingChanged(o))&&(this.markers=this.buildMarkers(o.view))}buildMarkers(o){let s=new Zn;for(let c of o.viewportLineBlocks){let A=Fm(o.state,c.from,c.to)?a:Dm(o.state,c.from,c.to)?n:null;A&&s.add(c.from,c.from,A)}return s.finish()}}),{domEventHandlers:i}=e;return[r,Vk({class:"cm-foldGutter",markers(o){var s;return((s=o.plugin(r))===null||s===void 0?void 0:s.markers)||xe.empty},initialSpacer(){return new dA(e,!1)},domEventHandlers:{...i,click:(o,s,c)=>{if(i.click&&i.click(o,s,c))return!0;let A=Fm(o.state,s.from,s.to);if(A)return o.dispatch({effects:bA.of(A)}),!0;let d=Dm(o.state,s.from,s.to);return d?(o.dispatch({effects:Nm.of(d)}),!0):!1}}}),ZF()]}var MZ=T.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}}),sc=class t{constructor(e,n){this.specs=e;let a;function r(s){let c=ha.newName();return(a||(a=Object.create(null)))["."+c]=s,c}let i=typeof n.all=="string"?n.all:n.all?r(n.all):void 0,o=n.scope;this.scope=o instanceof mn?s=>s.prop(Pi)==o.data:o?s=>s==o:void 0,this.style=pC(e.map(s=>({tag:s.tag,class:s.class||r(Object.assign({},s,{tag:null}))})),{all:i}).style,this.module=a?new ha(a):null,this.themeType=n.themeType}static define(e,n){return new t(e,n||{})}},kC=G.define(),KF=G.define({combine(t){return t.length?[t[0]]:null}});function fC(t){let e=t.facet(kC);return e.length?e:t.facet(KF)}function Lm(t,e){let n=[TZ],a;return t instanceof sc&&(t.module&&n.push(T.styleModule.of(t.module)),a=t.themeType),e?.fallback?n.push(KF.of(t)):a?n.push(kC.computeN([T.darkTheme],r=>r.facet(T.darkTheme)==(a=="dark")?[t]:[])):n.push(kC.of(t)),n}var CC=class{constructor(e){this.markCache=Object.create(null),this.tree=Ee(e.state),this.decorations=this.buildDeco(e,fC(e.state)),this.decoratedTo=e.viewport.to}update(e){let n=Ee(e.state),a=fC(e.state),r=a!=fC(e.startState),{viewport:i}=e.view,o=e.changes.mapPos(this.decoratedTo,1);n.length<i.to&&!r&&n.type==this.tree.type&&o>=i.to?(this.decorations=this.decorations.map(e.changes),this.decoratedTo=o):(n!=this.tree||e.viewportChanged||r)&&(this.tree=n,this.decorations=this.buildDeco(e.view,a),this.decoratedTo=i.to)}buildDeco(e,n){if(!n||!this.tree.length)return X.none;let a=new Zn;for(let{from:r,to:i}of e.visibleRanges)QF(this.tree,n,(o,s,c)=>{a.add(o,s,this.markCache[c]||(this.markCache[c]=X.mark({class:c})))},r,i);return a.finish()}},TZ=In.high(lt.fromClass(CC,{decorations:t=>t.decorations})),JF=sc.define([{tag:B.meta,color:"#404740"},{tag:B.link,textDecoration:"underline"},{tag:B.heading,textDecoration:"underline",fontWeight:"bold"},{tag:B.emphasis,fontStyle:"italic"},{tag:B.strong,fontWeight:"bold"},{tag:B.strikethrough,textDecoration:"line-through"},{tag:B.keyword,color:"#708"},{tag:[B.atom,B.bool,B.url,B.contentSeparator,B.labelName],color:"#219"},{tag:[B.literal,B.inserted],color:"#164"},{tag:[B.string,B.deleted],color:"#a11"},{tag:[B.regexp,B.escape,B.special(B.string)],color:"#e40"},{tag:B.definition(B.variableName),color:"#00f"},{tag:B.local(B.variableName),color:"#30a"},{tag:[B.typeName,B.namespace],color:"#085"},{tag:B.className,color:"#167"},{tag:[B.special(B.variableName),B.macroName],color:"#256"},{tag:B.definition(B.propertyName),color:"#00c"},{tag:B.comment,color:"#940"},{tag:B.invalid,color:"#f00"}]),qZ=T.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),VF=1e4,XF="()[]{}",eS=G.define({combine(t){return tn(t,{afterCursor:!0,brackets:XF,maxScanDistance:VF,renderMatch:UZ})}}),GZ=X.mark({class:"cm-matchingBracket"}),zZ=X.mark({class:"cm-nonmatchingBracket"});function UZ(t){let e=[],n=t.matched?GZ:zZ;return e.push(n.range(t.start.from,t.start.to)),t.end&&e.push(n.range(t.end.from,t.end.to)),e}var HZ=at.define({create(){return X.none},update(t,e){if(!e.docChanged&&!e.selection)return t;let n=[],a=e.state.facet(eS);for(let r of e.state.selection.ranges){if(!r.empty)continue;let i=Ua(e.state,r.head,-1,a)||r.head>0&&Ua(e.state,r.head-1,1,a)||a.afterCursor&&(Ua(e.state,r.head,1,a)||r.head<e.state.doc.length&&Ua(e.state,r.head+1,-1,a));i&&(n=n.concat(a.renderMatch(i,e.state)))}return X.set(n,!0)},provide:t=>T.decorations.from(t)}),ZZ=[HZ,qZ];function tS(t={}){return[eS.of(t),ZZ]}var EC=new ae;function _C(t,e,n){let a=t.prop(e<0?ae.openedBy:ae.closedBy);if(a)return a;if(t.name.length==1){let r=n.indexOf(t.name);if(r>-1&&r%2==(e<0?1:0))return[n[r+e]]}return null}function BC(t){let e=t.type.prop(EC);return e?e(t.node):t}function Ua(t,e,n,a={}){let r=a.maxScanDistance||VF,i=a.brackets||XF,o=Ee(t),s=o.resolveInner(e,n);for(let c=s;c;c=c.parent){let A=_C(c.type,n,i);if(A&&c.from<c.to){let d=BC(c);if(d&&(n>0?e>=d.from&&e<d.to:e>d.from&&e<=d.to))return YZ(t,e,n,c,d,A,i)}}return WZ(t,e,n,o,s.type,r,i)}function YZ(t,e,n,a,r,i,o){let s=a.parent,c={from:r.from,to:r.to},A=0,d=s?.cursor();if(d&&(n<0?d.childBefore(a.from):d.childAfter(a.to)))do if(n<0?d.to<=a.from:d.from>=a.to){if(A==0&&i.indexOf(d.type.name)>-1&&d.from<d.to){let u=BC(d);return{start:c,end:u?{from:u.from,to:u.to}:void 0,matched:!0}}else if(_C(d.type,n,o))A++;else if(_C(d.type,-n,o)){if(A==0){let u=BC(d);return{start:c,end:u&&u.from<u.to?{from:u.from,to:u.to}:void 0,matched:!1}}A--}}while(n<0?d.prevSibling():d.nextSibling());return{start:c,matched:!1}}function WZ(t,e,n,a,r,i,o){let s=n<0?t.sliceDoc(e-1,e):t.sliceDoc(e,e+1),c=o.indexOf(s);if(c<0||c%2==0!=n>0)return null;let A={from:n<0?e-1:e,to:n>0?e+1:e},d=t.doc.iterRange(e,n>0?t.doc.length:0),u=0;for(let p=0;!d.next().done&&p<=i;){let m=d.value;n<0&&(p+=m.length);let f=e+p*n;for(let h=n>0?0:m.length-1,w=n>0?m.length:-1;h!=w;h+=n){let b=o.indexOf(m[h]);if(!(b<0||a.resolveInner(f+h,1).type!=r))if(b%2==0==n>0)u++;else{if(u==1)return{start:A,end:{from:f+h,to:f+h+1},matched:b>>1==c>>1};u--}}n>0&&(p+=m.length)}return d.done?{start:A,matched:!1}:null}var KZ=Object.create(null),OF=[pt.none];var NF=[],LF=Object.create(null),JZ=Object.create(null);for(let[t,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])JZ[t]=VZ(KZ,e);function bC(t,e){NF.indexOf(t)>-1||(NF.push(t),console.warn(e))}function VZ(t,e){let n=[];for(let s of e.split(" ")){let c=[];for(let A of s.split(".")){let d=t[A]||B[A];d?typeof d=="function"?c.length?c=c.map(d):bC(A,`Modifier ${A} used at start of tag`):c.length?bC(A,`Tag ${A} used as modifier`):c=Array.isArray(d)?d:[d]:bC(A,`Unknown highlighting tag ${A}`)}for(let A of c)n.push(A)}if(!n.length)return 0;let a=e.replace(/ /g,"_"),r=a+" "+n.map(s=>s.id),i=LF[r];if(i)return i.id;let o=LF[r]=pt.define({id:OF.length,name:a,props:[Vn({[a]:n})]});return OF.push(o),o.id}var yfe={rtl:X.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"rtl"},bidiIsolate:Oe.RTL}),ltr:X.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"ltr"},bidiIsolate:Oe.LTR}),auto:X.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"auto"},bidiIsolate:null})};var XZ=t=>{let{state:e}=t,n=e.doc.lineAt(e.selection.main.from),a=NC(t.state,n.from);return a.line?eY(t):a.block?nY(t):!1};function OC(t,e){return({state:n,dispatch:a})=>{if(n.readOnly)return!1;let r=t(e,n);return r?(a(n.update(r)),!0):!1}}var eY=OC(iY,0);var tY=OC(AS,0);var nY=OC((t,e)=>AS(t,e,rY(e)),0);function NC(t,e){let n=t.languageDataAt("commentTokens",e,1);return n.length?n[0]:{}}var hA=50;function aY(t,{open:e,close:n},a,r){let i=t.sliceDoc(a-hA,a),o=t.sliceDoc(r,r+hA),s=/\s*$/.exec(i)[0].length,c=/^\s*/.exec(o)[0].length,A=i.length-s;if(i.slice(A-e.length,A)==e&&o.slice(c,c+n.length)==n)return{open:{pos:a-s,margin:s&&1},close:{pos:r+c,margin:c&&1}};let d,u;r-a<=2*hA?d=u=t.sliceDoc(a,r):(d=t.sliceDoc(a,a+hA),u=t.sliceDoc(r-hA,r));let p=/^\s*/.exec(d)[0].length,m=/\s*$/.exec(u)[0].length,f=u.length-m-n.length;return d.slice(p,p+e.length)==e&&u.slice(f,f+n.length)==n?{open:{pos:a+p+e.length,margin:/\s/.test(d.charAt(p+e.length))?1:0},close:{pos:r-m-n.length,margin:/\s/.test(u.charAt(f-1))?1:0}}:null}function rY(t){let e=[];for(let n of t.selection.ranges){let a=t.doc.lineAt(n.from),r=n.to<=a.to?a:t.doc.lineAt(n.to);r.from>a.from&&r.from==n.to&&(r=n.to==a.to+1?a:t.doc.lineAt(n.to-1));let i=e.length-1;i>=0&&e[i].to>a.from?e[i].to=r.to:e.push({from:a.from+/^\s*/.exec(a.text)[0].length,to:r.to})}return e}function AS(t,e,n=e.selection.ranges){let a=n.map(i=>NC(e,i.from).block);if(!a.every(i=>i))return null;let r=n.map((i,o)=>aY(e,a[o],i.from,i.to));if(t!=2&&!r.every(i=>i))return{changes:e.changes(n.map((i,o)=>r[o]?[]:[{from:i.from,insert:a[o].open+" "},{from:i.to,insert:" "+a[o].close}]))};if(t!=1&&r.some(i=>i)){let i=[];for(let o=0,s;o<r.length;o++)if(s=r[o]){let c=a[o],{open:A,close:d}=s;i.push({from:A.pos-c.open.length,to:A.pos+A.margin},{from:d.pos-d.margin,to:d.pos+c.close.length})}return{changes:i}}return null}function iY(t,e,n=e.selection.ranges){let a=[],r=-1;for(let{from:i,to:o}of n){let s=a.length,c=1e9,A=NC(e,i).line;if(A){for(let d=i;d<=o;){let u=e.doc.lineAt(d);if(u.from>r&&(i==o||o>u.from)){r=u.from;let p=/^\s*/.exec(u.text)[0].length,m=p==u.length,f=u.text.slice(p,p+A.length)==A?p:-1;p<u.text.length&&p<c&&(c=p),a.push({line:u,comment:f,token:A,indent:p,empty:m,single:!1})}d=u.to+1}if(c<1e9)for(let d=s;d<a.length;d++)a[d].indent<a[d].line.text.length&&(a[d].indent=c);a.length==s+1&&(a[s].single=!0)}}if(t!=2&&a.some(i=>i.comment<0&&(!i.empty||i.single))){let i=[];for(let{line:s,token:c,indent:A,empty:d,single:u}of a)(u||!d)&&i.push({from:s.from+A,insert:c+" "});let o=e.changes(i);return{changes:o,selection:e.selection.map(o,1)}}else if(t!=1&&a.some(i=>i.comment>=0)){let i=[];for(let{line:o,comment:s,token:c}of a)if(s>=0){let A=o.from+s,d=A+c.length;o.text[d-o.from]==" "&&d++,i.push({from:A,to:d})}return{changes:i}}return null}var IC=Qn.define(),oY=Qn.define(),sY=G.define(),dS=G.define({combine(t){return tn(t,{minDepth:100,newGroupDelay:500,joinToEvent:(e,n)=>n},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,n)=>(a,r)=>e(a,r)||n(a,r)})}}),uS=at.define({create(){return Lo.empty},update(t,e){let n=e.state.facet(dS),a=e.annotation(IC);if(a){let c=Za.fromTransaction(e,a.selection),A=a.side,d=A==0?t.undone:t.done;return c?d=Rm(d,d.length,n.minDepth,c):d=fS(d,e.startState.selection),new Lo(A==0?a.rest:d,A==0?d:a.rest)}let r=e.annotation(oY);if((r=="full"||r=="before")&&(t=t.isolate()),e.annotation(kt.addToHistory)===!1)return e.changes.empty?t:t.addMapping(e.changes.desc);let i=Za.fromTransaction(e),o=e.annotation(kt.time),s=e.annotation(kt.userEvent);return i?t=t.addChanges(i,o,s,n,e):e.selection&&(t=t.addSelection(e.startState.selection,o,s,n.newGroupDelay)),(r=="full"||r=="after")&&(t=t.isolate()),t},toJSON(t){return{done:t.done.map(e=>e.toJSON()),undone:t.undone.map(e=>e.toJSON())}},fromJSON(t){return new Lo(t.done.map(Za.fromJSON),t.undone.map(Za.fromJSON))}});function pS(t={}){return[uS,dS.of(t),T.domEventHandlers({beforeinput(e,n){let a=e.inputType=="historyUndo"?mS:e.inputType=="historyRedo"?DC:null;return a?(e.preventDefault(),a(n)):!1}})]}function jm(t,e){return function({state:n,dispatch:a}){if(!e&&n.readOnly)return!1;let r=n.field(uS,!1);if(!r)return!1;let i=r.pop(t,n,e);return i?(a(i),!0):!1}}var mS=jm(0,!1),DC=jm(1,!1),cY=jm(0,!0),lY=jm(1,!0);var Za=class t{constructor(e,n,a,r,i){this.changes=e,this.effects=n,this.mapped=a,this.startSelection=r,this.selectionsAfter=i}setSelAfter(e){return new t(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,n,a;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(n=this.mapped)===null||n===void 0?void 0:n.toJSON(),startSelection:(a=this.startSelection)===null||a===void 0?void 0:a.toJSON(),selectionsAfter:this.selectionsAfter.map(r=>r.toJSON())}}static fromJSON(e){return new t(e.changes&&An.fromJSON(e.changes),[],e.mapped&&Or.fromJSON(e.mapped),e.startSelection&&L.fromJSON(e.startSelection),e.selectionsAfter.map(L.fromJSON))}static fromTransaction(e,n){let a=_a;for(let r of e.startState.facet(sY)){let i=r(e);i.length&&(a=a.concat(i))}return!a.length&&e.changes.empty?null:new t(e.changes.invert(e.startState.doc),a,void 0,n||e.startState.selection,_a)}static selection(e){return new t(void 0,_a,void 0,void 0,e)}};function Rm(t,e,n,a){let r=e+1>n+20?e-n-1:0,i=t.slice(r,e);return i.push(a),i}function AY(t,e){let n=[],a=!1;return t.iterChangedRanges((r,i)=>n.push(r,i)),e.iterChangedRanges((r,i,o,s)=>{for(let c=0;c<n.length;){let A=n[c++],d=n[c++];s>=A&&o<=d&&(a=!0)}}),a}function dY(t,e){return t.ranges.length==e.ranges.length&&t.ranges.filter((n,a)=>n.empty!=e.ranges[a].empty).length===0}function gS(t,e){return t.length?e.length?t.concat(e):t:e}var _a=[],uY=200;function fS(t,e){if(t.length){let n=t[t.length-1],a=n.selectionsAfter.slice(Math.max(0,n.selectionsAfter.length-uY));return a.length&&a[a.length-1].eq(e)?t:(a.push(e),Rm(t,t.length-1,1e9,n.setSelAfter(a)))}else return[Za.selection([e])]}function pY(t){let e=t[t.length-1],n=t.slice();return n[t.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),n}function QC(t,e){if(!t.length)return t;let n=t.length,a=_a;for(;n;){let r=mY(t[n-1],e,a);if(r.changes&&!r.changes.empty||r.effects.length){let i=t.slice(0,n);return i[n-1]=r,i}else e=r.mapped,n--,a=r.selectionsAfter}return a.length?[Za.selection(a)]:_a}function mY(t,e,n){let a=gS(t.selectionsAfter.length?t.selectionsAfter.map(s=>s.map(e)):_a,n);if(!t.changes)return Za.selection(a);let r=t.changes.map(e),i=e.mapDesc(t.changes,!0),o=t.mapped?t.mapped.composeDesc(i):i;return new Za(r,ie.mapEffects(t.effects,e),o,t.startSelection.map(i),a)}var gY=/^(input\.type|delete)($|\.)/,Lo=class t{constructor(e,n,a=0,r=void 0){this.done=e,this.undone=n,this.prevTime=a,this.prevUserEvent=r}isolate(){return this.prevTime?new t(this.done,this.undone):this}addChanges(e,n,a,r,i){let o=this.done,s=o[o.length-1];return s&&s.changes&&!s.changes.empty&&e.changes&&(!a||gY.test(a))&&(!s.selectionsAfter.length&&n-this.prevTime<r.newGroupDelay&&r.joinToEvent(i,AY(s.changes,e.changes))||a=="input.type.compose")?o=Rm(o,o.length-1,r.minDepth,new Za(e.changes.compose(s.changes),gS(ie.mapEffects(e.effects,s.changes),s.effects),s.mapped,s.startSelection,_a)):o=Rm(o,o.length,r.minDepth,e),new t(o,_a,n,a)}addSelection(e,n,a,r){let i=this.done.length?this.done[this.done.length-1].selectionsAfter:_a;return i.length>0&&n-this.prevTime<r&&a==this.prevUserEvent&&a&&/^select($|\.)/.test(a)&&dY(i[i.length-1],e)?this:new t(fS(this.done,e),this.undone,n,a)}addMapping(e){return new t(QC(this.done,e),QC(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,n,a){let r=e==0?this.done:this.undone;if(r.length==0)return null;let i=r[r.length-1],o=i.selectionsAfter[0]||n.selection;if(a&&i.selectionsAfter.length)return n.update({selection:i.selectionsAfter[i.selectionsAfter.length-1],annotations:IC.of({side:e,rest:pY(r),selection:o}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(i.changes){let s=r.length==1?_a:r.slice(0,r.length-1);return i.mapped&&(s=QC(s,i.mapped)),n.update({changes:i.changes,selection:i.startSelection,effects:i.effects,annotations:IC.of({side:e,rest:s,selection:o}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}};Lo.empty=new Lo(_a,_a);var bS=[{key:"Mod-z",run:mS,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:DC,preventDefault:!0},{linux:"Ctrl-Shift-z",run:DC,preventDefault:!0},{key:"Mod-u",run:cY,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:lY,preventDefault:!0}];function Ac(t,e){return L.create(t.ranges.map(e),t.mainIndex)}function Ya(t,e){return t.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function Wa({state:t,dispatch:e},n){let a=Ac(t.selection,n);return a.eq(t.selection,!0)?!1:(e(Ya(t,a)),!0)}function Pm(t,e){return L.cursor(e?t.to:t.from)}function hS(t,e){return Wa(t,n=>n.empty?t.moveByChar(n,e):Pm(n,e))}function nn(t){return t.textDirectionAt(t.state.selection.main.head)==Oe.LTR}var yS=t=>hS(t,!nn(t)),wS=t=>hS(t,nn(t));function kS(t,e){return Wa(t,n=>n.empty?t.moveByGroup(n,e):Pm(n,e))}var fY=t=>kS(t,!nn(t)),bY=t=>kS(t,nn(t));var Qfe=typeof Intl<"u"&&Intl.Segmenter?new Intl.Segmenter(void 0,{granularity:"word"}):null;function hY(t,e,n){if(e.type.prop(n))return!0;let a=e.to-e.from;return a&&(a>2||/[^\s,.;:]/.test(t.sliceDoc(e.from,e.to)))||e.firstChild}function Mm(t,e,n){let a=Ee(t).resolveInner(e.head),r=n?ae.closedBy:ae.openedBy;for(let c=e.head;;){let A=n?a.childAfter(c):a.childBefore(c);if(!A)break;hY(t,A,r)?a=A:c=n?A.to:A.from}let i=a.type.prop(r),o,s;return i&&(o=n?Ua(t,a.from,1):Ua(t,a.to,-1))&&o.matched?s=n?o.end.to:o.end.from:s=n?a.to:a.from,L.cursor(s,n?-1:1)}var yY=t=>Wa(t,e=>Mm(t.state,e,!nn(t))),wY=t=>Wa(t,e=>Mm(t.state,e,nn(t)));function CS(t,e){return Wa(t,n=>{if(!n.empty)return Pm(n,e);let a=t.moveVertically(n,e);return a.head!=n.head?a:t.moveToLineBoundary(n,e)})}var _S=t=>CS(t,!1),BS=t=>CS(t,!0);function xS(t){let e=t.scrollDOM.clientHeight<t.scrollDOM.scrollHeight-2,n=0,a=0,r;if(e){for(let i of t.state.facet(T.scrollMargins)){let o=i(t);o?.top&&(n=Math.max(o?.top,n)),o?.bottom&&(a=Math.max(o?.bottom,a))}r=t.scrollDOM.clientHeight-n-a}else r=(t.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:n,marginBottom:a,selfScroll:e,height:Math.max(t.defaultLineHeight,r-5)}}function vS(t,e){let n=xS(t),{state:a}=t,r=Ac(a.selection,o=>o.empty?t.moveVertically(o,e,n.height):Pm(o,e));if(r.eq(a.selection))return!1;let i;if(n.selfScroll){let o=t.coordsAtPos(a.selection.main.head),s=t.scrollDOM.getBoundingClientRect(),c=s.top+n.marginTop,A=s.bottom-n.marginBottom;o&&o.top>c&&o.bottom<A&&(i=T.scrollIntoView(r.main.head,{y:"start",yMargin:o.top-c}))}return t.dispatch(Ya(a,r),{effects:i}),!0}var nS=t=>vS(t,!1),FC=t=>vS(t,!0);function qi(t,e,n){let a=t.lineBlockAt(e.head),r=t.moveToLineBoundary(e,n);if(r.head==e.head&&r.head!=(n?a.to:a.from)&&(r=t.moveToLineBoundary(e,n,!1)),!n&&r.head==a.from&&a.length){let i=/^\s*/.exec(t.state.sliceDoc(a.from,Math.min(a.from+100,a.to)))[0].length;i&&e.head!=a.from+i&&(r=L.cursor(a.from+i))}return r}var kY=t=>Wa(t,e=>qi(t,e,!0)),CY=t=>Wa(t,e=>qi(t,e,!1)),_Y=t=>Wa(t,e=>qi(t,e,!nn(t))),BY=t=>Wa(t,e=>qi(t,e,nn(t))),xY=t=>Wa(t,e=>L.cursor(t.lineBlockAt(e.head).from,1)),vY=t=>Wa(t,e=>L.cursor(t.lineBlockAt(e.head).to,-1));function EY(t,e,n){let a=!1,r=Ac(t.selection,i=>{let o=Ua(t,i.head,-1)||Ua(t,i.head,1)||i.head>0&&Ua(t,i.head-1,1)||i.head<t.doc.length&&Ua(t,i.head+1,-1);if(!o||!o.end)return i;a=!0;let s=o.start.from==i.head?o.end.to:o.end.from;return n?L.range(i.anchor,s):L.cursor(s)});return a?(e(Ya(t,r)),!0):!1}var QY=({state:t,dispatch:e})=>EY(t,e,!1);function Ba(t,e){let n=Ac(t.state.selection,a=>{let r=e(a);return L.range(a.anchor,r.head,r.goalColumn,r.bidiLevel||void 0)});return n.eq(t.state.selection)?!1:(t.dispatch(Ya(t.state,n)),!0)}function ES(t,e){return Ba(t,n=>t.moveByChar(n,e))}var QS=t=>ES(t,!nn(t)),IS=t=>ES(t,nn(t));function DS(t,e){return Ba(t,n=>t.moveByGroup(n,e))}var IY=t=>DS(t,!nn(t)),DY=t=>DS(t,nn(t));var FY=t=>Ba(t,e=>Mm(t.state,e,!nn(t))),SY=t=>Ba(t,e=>Mm(t.state,e,nn(t)));function FS(t,e){return Ba(t,n=>t.moveVertically(n,e))}var SS=t=>FS(t,!1),OS=t=>FS(t,!0);function NS(t,e){return Ba(t,n=>t.moveVertically(n,e,xS(t).height))}var aS=t=>NS(t,!1),rS=t=>NS(t,!0),OY=t=>Ba(t,e=>qi(t,e,!0)),NY=t=>Ba(t,e=>qi(t,e,!1)),LY=t=>Ba(t,e=>qi(t,e,!nn(t))),$Y=t=>Ba(t,e=>qi(t,e,nn(t))),RY=t=>Ba(t,e=>L.cursor(t.lineBlockAt(e.head).from)),jY=t=>Ba(t,e=>L.cursor(t.lineBlockAt(e.head).to)),iS=({state:t,dispatch:e})=>(e(Ya(t,{anchor:0})),!0),oS=({state:t,dispatch:e})=>(e(Ya(t,{anchor:t.doc.length})),!0),sS=({state:t,dispatch:e})=>(e(Ya(t,{anchor:t.selection.main.anchor,head:0})),!0),cS=({state:t,dispatch:e})=>(e(Ya(t,{anchor:t.selection.main.anchor,head:t.doc.length})),!0),PY=({state:t,dispatch:e})=>(e(t.update({selection:{anchor:0,head:t.doc.length},userEvent:"select"})),!0),MY=({state:t,dispatch:e})=>{let n=Tm(t).map(({from:a,to:r})=>L.range(a,Math.min(r+1,t.doc.length)));return e(t.update({selection:L.create(n),userEvent:"select"})),!0},TY=({state:t,dispatch:e})=>{let n=Ac(t.selection,a=>{let r=Ee(t),i=r.resolveStack(a.from,1);if(a.empty){let o=r.resolveStack(a.from,-1);o.node.from>=i.node.from&&o.node.to<=i.node.to&&(i=o)}for(let o=i;o;o=o.next){let{node:s}=o;if((s.from<a.from&&s.to>=a.to||s.to>a.to&&s.from<=a.from)&&o.next)return L.range(s.to,s.from)}return a});return n.eq(t.selection)?!1:(e(Ya(t,n)),!0)};function LS(t,e){let{state:n}=t,a=n.selection,r=n.selection.ranges.slice();for(let i of n.selection.ranges){let o=n.doc.lineAt(i.head);if(e?o.to<t.state.doc.length:o.from>0)for(let s=i;;){let c=t.moveVertically(s,e);if(c.head<o.from||c.head>o.to){r.some(A=>A.head==c.head)||r.push(c);break}else{if(c.head==s.head)break;s=c}}}return r.length==a.ranges.length?!1:(t.dispatch(Ya(n,L.create(r,r.length-1))),!0)}var qY=t=>LS(t,!1),GY=t=>LS(t,!0),zY=({state:t,dispatch:e})=>{let n=t.selection,a=null;return n.ranges.length>1?a=L.create([n.main]):n.main.empty||(a=L.create([L.cursor(n.main.head)])),a?(e(Ya(t,a)),!0):!1};function yA(t,e){if(t.state.readOnly)return!1;let n="delete.selection",{state:a}=t,r=a.changeByRange(i=>{let{from:o,to:s}=i;if(o==s){let c=e(i);c<o?(n="delete.backward",c=$m(t,c,!1)):c>o&&(n="delete.forward",c=$m(t,c,!0)),o=Math.min(o,c),s=Math.max(s,c)}else o=$m(t,o,!1),s=$m(t,s,!0);return o==s?{range:i}:{changes:{from:o,to:s},range:L.cursor(o,o<i.head?-1:1)}});return r.changes.empty?!1:(t.dispatch(a.update(r,{scrollIntoView:!0,userEvent:n,effects:n=="delete.selection"?T.announce.of(a.phrase("Selection deleted")):void 0})),!0)}function $m(t,e,n){if(t instanceof T)for(let a of t.state.facet(T.atomicRanges).map(r=>r(t)))a.between(e,e,(r,i)=>{r<e&&i>e&&(e=n?i:r)});return e}var $S=(t,e,n)=>yA(t,a=>{let r=a.from,{state:i}=t,o=i.doc.lineAt(r),s,c;if(n&&!e&&r>o.from&&r<o.from+200&&!/[^ \t]/.test(s=o.text.slice(0,r-o.from))){if(s[s.length-1]==" ")return r-1;let A=dn(s,i.tabSize),d=A%fA(i)||fA(i);for(let u=0;u<d&&s[s.length-1-u]==" ";u++)r--;c=r}else c=dt(o.text,r-o.from,e,e)+o.from,c==r&&o.number!=(e?i.doc.lines:1)?c+=e?1:-1:!e&&/[\ufe00-\ufe0f]/.test(o.text.slice(c-o.from,r-o.from))&&(c=dt(o.text,c-o.from,!1,!1)+o.from);return c}),SC=t=>$S(t,!1,!0);var RS=t=>$S(t,!0,!1),jS=(t,e)=>yA(t,n=>{let a=n.head,{state:r}=t,i=r.doc.lineAt(a),o=r.charCategorizer(a);for(let s=null;;){if(a==(e?i.to:i.from)){a==n.head&&i.number!=(e?r.doc.lines:1)&&(a+=e?1:-1);break}let c=dt(i.text,a-i.from,e)+i.from,A=i.text.slice(Math.min(a,c)-i.from,Math.max(a,c)-i.from),d=o(A);if(s!=null&&d!=s)break;(A!=" "||a!=n.head)&&(s=d),a=c}return a}),PS=t=>jS(t,!1),UY=t=>jS(t,!0);var HY=t=>yA(t,e=>{let n=t.lineBlockAt(e.head).to;return e.head<n?n:Math.min(t.state.doc.length,e.head+1)});var ZY=t=>yA(t,e=>{let n=t.moveToLineBoundary(e,!1).head;return e.head>n?n:Math.max(0,e.head-1)}),YY=t=>yA(t,e=>{let n=t.moveToLineBoundary(e,!0).head;return e.head<n?n:Math.min(t.state.doc.length,e.head+1)});var WY=({state:t,dispatch:e})=>{if(t.readOnly)return!1;let n=t.changeByRange(a=>({changes:{from:a.from,to:a.to,insert:ke.of(["",""])},range:L.cursor(a.from)}));return e(t.update(n,{scrollIntoView:!0,userEvent:"input"})),!0},KY=({state:t,dispatch:e})=>{if(t.readOnly)return!1;let n=t.changeByRange(a=>{if(!a.empty||a.from==0||a.from==t.doc.length)return{range:a};let r=a.from,i=t.doc.lineAt(r),o=r==i.from?r-1:dt(i.text,r-i.from,!1)+i.from,s=r==i.to?r+1:dt(i.text,r-i.from,!0)+i.from;return{changes:{from:o,to:s,insert:t.doc.slice(r,s).append(t.doc.slice(o,r))},range:L.cursor(s)}});return n.changes.empty?!1:(e(t.update(n,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function Tm(t){let e=[],n=-1;for(let a of t.selection.ranges){let r=t.doc.lineAt(a.from),i=t.doc.lineAt(a.to);if(!a.empty&&a.to==i.from&&(i=t.doc.lineAt(a.to-1)),n>=r.number){let o=e[e.length-1];o.to=i.to,o.ranges.push(a)}else e.push({from:r.from,to:i.to,ranges:[a]});n=i.number+1}return e}function MS(t,e,n){if(t.readOnly)return!1;let a=[],r=[];for(let i of Tm(t)){if(n?i.to==t.doc.length:i.from==0)continue;let o=t.doc.lineAt(n?i.to+1:i.from-1),s=o.length+1;if(n){a.push({from:i.to,to:o.to},{from:i.from,insert:o.text+t.lineBreak});for(let c of i.ranges)r.push(L.range(Math.min(t.doc.length,c.anchor+s),Math.min(t.doc.length,c.head+s)))}else{a.push({from:o.from,to:i.from},{from:i.to,insert:t.lineBreak+o.text});for(let c of i.ranges)r.push(L.range(c.anchor-s,c.head-s))}}return a.length?(e(t.update({changes:a,scrollIntoView:!0,selection:L.create(r,t.selection.mainIndex),userEvent:"move.line"})),!0):!1}var JY=({state:t,dispatch:e})=>MS(t,e,!1),VY=({state:t,dispatch:e})=>MS(t,e,!0);function TS(t,e,n){if(t.readOnly)return!1;let a=[];for(let i of Tm(t))n?a.push({from:i.from,insert:t.doc.slice(i.from,i.to)+t.lineBreak}):a.push({from:i.to,insert:t.lineBreak+t.doc.slice(i.from,i.to)});let r=t.changes(a);return e(t.update({changes:r,selection:t.selection.map(r,n?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}var XY=({state:t,dispatch:e})=>TS(t,e,!1),eW=({state:t,dispatch:e})=>TS(t,e,!0),tW=t=>{if(t.state.readOnly)return!1;let{state:e}=t,n=e.changes(Tm(e).map(({from:r,to:i})=>(r>0?r--:i<e.doc.length&&i++,{from:r,to:i}))),a=Ac(e.selection,r=>{let i;if(t.lineWrapping){let o=t.lineBlockAt(r.head),s=t.coordsAtPos(r.head,r.assoc||1);s&&(i=o.bottom+t.documentTop-s.bottom+t.defaultLineHeight/2)}return t.moveVertically(r,!0,i)}).map(n);return t.dispatch({changes:n,selection:a,scrollIntoView:!0,userEvent:"delete.line"}),!0};function nW(t,e){if(/\(\)|\[\]|\{\}/.test(t.sliceDoc(e-1,e+1)))return{from:e,to:e};let n=Ee(t).resolveInner(e),a=n.childBefore(e),r=n.childAfter(e),i;return a&&r&&a.to<=e&&r.from>=e&&(i=a.type.prop(ae.closedBy))&&i.indexOf(r.name)>-1&&t.doc.lineAt(a.to).from==t.doc.lineAt(r.from).from&&!/\S/.test(t.sliceDoc(a.to,r.from))?{from:a.to,to:r.from}:null}var lS=qS(!1),aW=qS(!0);function qS(t){return({state:e,dispatch:n})=>{if(e.readOnly)return!1;let a=e.changeByRange(r=>{let{from:i,to:o}=r,s=e.doc.lineAt(i),c=!t&&i==o&&nW(e,i);t&&(i=o=(o<=s.to?s:e.doc.lineAt(o)).to);let A=new Oo(e,{simulateBreak:i,simulateDoubleBreak:!!c}),d=Om(A,i);for(d==null&&(d=dn(/^\s*/.exec(e.doc.lineAt(i).text)[0],e.tabSize));o<s.to&&/\s/.test(s.text[o-s.from]);)o++;c?{from:i,to:o}=c:i>s.from&&i<s.from+100&&!/\S/.test(s.text.slice(0,i))&&(i=s.from);let u=["",cc(e,d)];return c&&u.push(cc(e,A.lineIndent(s.from,-1))),{changes:{from:i,to:o,insert:ke.of(u)},range:L.cursor(i+1+u[1].length)}});return n(e.update(a,{scrollIntoView:!0,userEvent:"input"})),!0}}function LC(t,e){let n=-1;return t.changeByRange(a=>{let r=[];for(let o=a.from;o<=a.to;){let s=t.doc.lineAt(o);s.number>n&&(a.empty||a.to>s.from)&&(e(s,r,a),n=s.number),o=s.to+1}let i=t.changes(r);return{changes:r,range:L.range(i.mapPos(a.anchor,1),i.mapPos(a.head,1))}})}var rW=({state:t,dispatch:e})=>{if(t.readOnly)return!1;let n=Object.create(null),a=new Oo(t,{overrideIndentation:i=>{let o=n[i];return o??-1}}),r=LC(t,(i,o,s)=>{let c=Om(a,i.from);if(c==null)return;/\S/.test(i.text)||(c=0);let A=/^\s*/.exec(i.text)[0],d=cc(t,c);(A!=d||s.from<i.from+A.length)&&(n[i.from]=c,o.push({from:i.from,to:i.from+A.length,insert:d}))});return r.changes.empty||e(t.update(r,{userEvent:"indent"})),!0},iW=({state:t,dispatch:e})=>t.readOnly?!1:(e(t.update(LC(t,(n,a)=>{a.push({from:n.from,insert:t.facet(Ti)})}),{userEvent:"input.indent"})),!0),oW=({state:t,dispatch:e})=>t.readOnly?!1:(e(t.update(LC(t,(n,a)=>{let r=/^\s*/.exec(n.text)[0];if(!r)return;let i=dn(r,t.tabSize),o=0,s=cc(t,Math.max(0,i-fA(t)));for(;o<r.length&&o<s.length&&r.charCodeAt(o)==s.charCodeAt(o);)o++;a.push({from:n.from+o,to:n.from+r.length,insert:s.slice(o)})}),{userEvent:"delete.dedent"})),!0),sW=t=>(t.setTabFocusMode(),!0);var cW=[{key:"Ctrl-b",run:yS,shift:QS,preventDefault:!0},{key:"Ctrl-f",run:wS,shift:IS},{key:"Ctrl-p",run:_S,shift:SS},{key:"Ctrl-n",run:BS,shift:OS},{key:"Ctrl-a",run:xY,shift:RY},{key:"Ctrl-e",run:vY,shift:jY},{key:"Ctrl-d",run:RS},{key:"Ctrl-h",run:SC},{key:"Ctrl-k",run:HY},{key:"Ctrl-Alt-h",run:PS},{key:"Ctrl-o",run:WY},{key:"Ctrl-t",run:KY},{key:"Ctrl-v",run:FC}],lW=[{key:"ArrowLeft",run:yS,shift:QS,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:fY,shift:IY,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:_Y,shift:LY,preventDefault:!0},{key:"ArrowRight",run:wS,shift:IS,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:bY,shift:DY,preventDefault:!0},{mac:"Cmd-ArrowRight",run:BY,shift:$Y,preventDefault:!0},{key:"ArrowUp",run:_S,shift:SS,preventDefault:!0},{mac:"Cmd-ArrowUp",run:iS,shift:sS},{mac:"Ctrl-ArrowUp",run:nS,shift:aS},{key:"ArrowDown",run:BS,shift:OS,preventDefault:!0},{mac:"Cmd-ArrowDown",run:oS,shift:cS},{mac:"Ctrl-ArrowDown",run:FC,shift:rS},{key:"PageUp",run:nS,shift:aS},{key:"PageDown",run:FC,shift:rS},{key:"Home",run:CY,shift:NY,preventDefault:!0},{key:"Mod-Home",run:iS,shift:sS},{key:"End",run:kY,shift:OY,preventDefault:!0},{key:"Mod-End",run:oS,shift:cS},{key:"Enter",run:lS,shift:lS},{key:"Mod-a",run:PY},{key:"Backspace",run:SC,shift:SC,preventDefault:!0},{key:"Delete",run:RS,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:PS,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:UY,preventDefault:!0},{mac:"Mod-Backspace",run:ZY,preventDefault:!0},{mac:"Mod-Delete",run:YY,preventDefault:!0}].concat(cW.map(t=>({mac:t.key,run:t.run,shift:t.shift}))),GS=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:yY,shift:FY},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:wY,shift:SY},{key:"Alt-ArrowUp",run:JY},{key:"Shift-Alt-ArrowUp",run:XY},{key:"Alt-ArrowDown",run:VY},{key:"Shift-Alt-ArrowDown",run:eW},{key:"Mod-Alt-ArrowUp",run:qY},{key:"Mod-Alt-ArrowDown",run:GY},{key:"Escape",run:zY},{key:"Mod-Enter",run:aW},{key:"Alt-l",mac:"Ctrl-l",run:MY},{key:"Mod-i",run:TY,preventDefault:!0},{key:"Mod-[",run:oW},{key:"Mod-]",run:iW},{key:"Mod-Alt-\\",run:rW},{key:"Shift-Mod-k",run:tW},{key:"Shift-Mod-\\",run:QY},{key:"Mod-/",run:XZ},{key:"Alt-A",run:tY},{key:"Ctrl-m",mac:"Shift-Alt-m",run:sW}].concat(lW);var zS=typeof String.prototype.normalize=="function"?t=>t.normalize("NFKD"):t=>t,zi=class{constructor(e,n,a=0,r=e.length,i,o){this.test=o,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(a,r),this.bufferStart=a,this.normalize=i?s=>i(zS(s)):zS,this.query=this.normalize(n)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return Gt(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let n=Ml(e),a=this.bufferStart+this.bufferPos;this.bufferPos+=Yn(e);let r=this.normalize(n);if(r.length)for(let i=0,o=a;;i++){let s=r.charCodeAt(i),c=this.match(s,o,this.bufferPos+this.bufferStart);if(i==r.length-1){if(c)return this.value=c,this;break}o==a&&i<n.length&&n.charCodeAt(i)==s&&o++}}}match(e,n,a){let r=null;for(let i=0;i<this.matches.length;i+=2){let o=this.matches[i],s=!1;this.query.charCodeAt(o)==e&&(o==this.query.length-1?r={from:this.matches[i+1],to:a}:(this.matches[i]++,s=!0)),s||(this.matches.splice(i,2),i-=2)}return this.query.charCodeAt(0)==e&&(this.query.length==1?r={from:n,to:a}:this.matches.push(1,n)),r&&this.test&&!this.test(r.from,r.to,this.buffer,this.bufferStart)&&(r=null),r}};typeof Symbol<"u"&&(zi.prototype[Symbol.iterator]=function(){return this});var YS={from:-1,to:-1,match:/.*/.exec("")},qC="gm"+(/x/.unicode==null?"":"u"),zm=class{constructor(e,n,a,r=0,i=e.length){if(this.text=e,this.to=i,this.curLine="",this.done=!1,this.value=YS,/\\[sWDnr]|\n|\r|\[\^/.test(n))return new Hm(e,n,a,r,i);this.re=new RegExp(n,qC+(a?.ignoreCase?"i":"")),this.test=a?.test,this.iter=e.iter();let o=e.lineAt(r);this.curLineStart=o.from,this.matchPos=Zm(e,r),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine="":(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let n=this.matchPos<=this.to&&this.re.exec(this.curLine);if(n){let a=this.curLineStart+n.index,r=a+n[0].length;if(this.matchPos=Zm(this.text,r+(a==r?1:0)),a==this.curLineStart+this.curLine.length&&this.nextLine(),(a<r||a>this.value.to)&&(!this.test||this.test(a,r,n)))return this.value={from:a,to:r,match:n},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}},$C=new WeakMap,Um=class t{constructor(e,n){this.from=e,this.text=n}get to(){return this.from+this.text.length}static get(e,n,a){let r=$C.get(e);if(!r||r.from>=a||r.to<=n){let s=new t(n,e.sliceString(n,a));return $C.set(e,s),s}if(r.from==n&&r.to==a)return r;let{text:i,from:o}=r;return o>n&&(i=e.sliceString(n,o)+i,o=n),r.to<a&&(i+=e.sliceString(r.to,a)),$C.set(e,new t(o,i)),new t(n,i.slice(n-o,a-o))}},Hm=class{constructor(e,n,a,r,i){this.text=e,this.to=i,this.done=!1,this.value=YS,this.matchPos=Zm(e,r),this.re=new RegExp(n,qC+(a?.ignoreCase?"i":"")),this.test=a?.test,this.flat=Um.get(e,r,this.chunkEnd(r+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,n=this.re.exec(this.flat.text);if(n&&!n[0]&&n.index==e&&(this.re.lastIndex=e+1,n=this.re.exec(this.flat.text)),n){let a=this.flat.from+n.index,r=a+n[0].length;if((this.flat.to>=this.to||n.index+n[0].length<=this.flat.text.length-10)&&(!this.test||this.test(a,r,n)))return this.value={from:a,to:r,match:n},this.matchPos=Zm(this.text,r+(a==r?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=Um.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}};typeof Symbol<"u"&&(zm.prototype[Symbol.iterator]=Hm.prototype[Symbol.iterator]=function(){return this});function AW(t){try{return new RegExp(t,qC),!0}catch{return!1}}function Zm(t,e){if(e>=t.length)return e;let n=t.lineAt(e),a;for(;e<n.to&&(a=n.text.charCodeAt(e-n.from))>=56320&&a<57344;)e++;return e}function RC(t){let e=String(t.state.doc.lineAt(t.state.selection.main.head).number),n=Se("input",{class:"cm-textfield",name:"line",value:e}),a=Se("form",{class:"cm-gotoLine",onkeydown:i=>{i.keyCode==27?(i.preventDefault(),t.dispatch({effects:wA.of(!1)}),t.focus()):i.keyCode==13&&(i.preventDefault(),r())},onsubmit:i=>{i.preventDefault(),r()}},Se("label",t.state.phrase("Go to line"),": ",n)," ",Se("button",{class:"cm-button",type:"submit"},t.state.phrase("go")),Se("button",{name:"close",onclick:()=>{t.dispatch({effects:wA.of(!1)}),t.focus()},"aria-label":t.state.phrase("close"),type:"button"},["\xD7"]));function r(){let i=/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(n.value);if(!i)return;let{state:o}=t,s=o.doc.lineAt(o.selection.main.head),[,c,A,d,u]=i,p=d?+d.slice(1):0,m=A?+A:s.number;if(A&&u){let w=m/100;c&&(w=w*(c=="-"?-1:1)+s.number/o.doc.lines),m=Math.round(o.doc.lines*w)}else A&&c&&(m=m*(c=="-"?-1:1)+s.number);let f=o.doc.line(Math.max(1,Math.min(o.doc.lines,m))),h=L.cursor(f.from+Math.max(0,Math.min(p,f.length)));t.dispatch({effects:[wA.of(!1),T.scrollIntoView(h.from,{y:"center"})],selection:h}),t.focus()}return{dom:a}}var wA=ie.define(),US=at.define({create(){return!0},update(t,e){for(let n of e.effects)n.is(wA)&&(t=n.value);return t},provide:t=>Qo.from(t,e=>e?RC:null)}),dW=t=>{let e=Io(t,RC);if(!e){let n=[wA.of(!0)];t.state.field(US,!1)==null&&n.push(ie.appendConfig.of([US,uW])),t.dispatch({effects:n}),e=Io(t,RC)}return e&&e.dom.querySelector("input").select(),!0},uW=T.baseTheme({".cm-panel.cm-gotoLine":{padding:"2px 6px 4px",position:"relative","& label":{fontSize:"80%"},"& [name=close]":{position:"absolute",top:"0",bottom:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:"0"}}}),pW={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},WS=G.define({combine(t){return tn(t,pW,{highlightWordAroundCursor:(e,n)=>e||n,minSelectionLength:Math.min,maxMatches:Math.min})}});function KS(t){let e=[hW,bW];return t&&e.push(WS.of(t)),e}var mW=X.mark({class:"cm-selectionMatch"}),gW=X.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function HS(t,e,n,a){return(n==0||t(e.sliceDoc(n-1,n))!=Pe.Word)&&(a==e.doc.length||t(e.sliceDoc(a,a+1))!=Pe.Word)}function fW(t,e,n,a){return t(e.sliceDoc(n,n+1))==Pe.Word&&t(e.sliceDoc(a-1,a))==Pe.Word}var bW=lt.fromClass(class{constructor(t){this.decorations=this.getDeco(t)}update(t){(t.selectionSet||t.docChanged||t.viewportChanged)&&(this.decorations=this.getDeco(t.view))}getDeco(t){let e=t.state.facet(WS),{state:n}=t,a=n.selection;if(a.ranges.length>1)return X.none;let r=a.main,i,o=null;if(r.empty){if(!e.highlightWordAroundCursor)return X.none;let c=n.wordAt(r.head);if(!c)return X.none;o=n.charCategorizer(r.head),i=n.sliceDoc(c.from,c.to)}else{let c=r.to-r.from;if(c<e.minSelectionLength||c>200)return X.none;if(e.wholeWords){if(i=n.sliceDoc(r.from,r.to),o=n.charCategorizer(r.head),!(HS(o,n,r.from,r.to)&&fW(o,n,r.from,r.to)))return X.none}else if(i=n.sliceDoc(r.from,r.to),!i)return X.none}let s=[];for(let c of t.visibleRanges){let A=new zi(n.doc,i,c.from,c.to);for(;!A.next().done;){let{from:d,to:u}=A.value;if((!o||HS(o,n,d,u))&&(r.empty&&d<=r.from&&u>=r.to?s.push(gW.range(d,u)):(d>=r.to||u<=r.from)&&s.push(mW.range(d,u)),s.length>e.maxMatches))return X.none}}return X.set(s)}},{decorations:t=>t.decorations}),hW=T.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),yW=({state:t,dispatch:e})=>{let{selection:n}=t,a=L.create(n.ranges.map(r=>t.wordAt(r.head)||L.cursor(r.head)),n.mainIndex);return a.eq(n)?!1:(e(t.update({selection:a})),!0)};function wW(t,e){let{main:n,ranges:a}=t.selection,r=t.wordAt(n.head),i=r&&r.from==n.from&&r.to==n.to;for(let o=!1,s=new zi(t.doc,e,a[a.length-1].to);;)if(s.next(),s.done){if(o)return null;s=new zi(t.doc,e,0,Math.max(0,a[a.length-1].from-1)),o=!0}else{if(o&&a.some(c=>c.from==s.value.from))continue;if(i){let c=t.wordAt(s.value.from);if(!c||c.from!=s.value.from||c.to!=s.value.to)continue}return s.value}}var kW=({state:t,dispatch:e})=>{let{ranges:n}=t.selection;if(n.some(i=>i.from===i.to))return yW({state:t,dispatch:e});let a=t.sliceDoc(n[0].from,n[0].to);if(t.selection.ranges.some(i=>t.sliceDoc(i.from,i.to)!=a))return!1;let r=wW(t,a);return r?(e(t.update({selection:t.selection.addRange(L.range(r.from,r.to),!1),effects:T.scrollIntoView(r.to)})),!0):!1},pc=G.define({combine(t){return tn(t,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new TC(e),scrollToMatch:e=>T.scrollIntoView(e)})}});var Ym=class{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||AW(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(n,a)=>a=="n"?` +`:a=="r"?"\r":a=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord}create(){return this.regexp?new PC(this):new jC(this)}getCursor(e,n=0,a){let r=e.doc?e:Fe.create({doc:e});return a==null&&(a=r.doc.length),this.regexp?uc(this,r,n,a):dc(this,r,n,a)}},Wm=class{constructor(e){this.spec=e}};function dc(t,e,n,a){return new zi(e.doc,t.unquoted,n,a,t.caseSensitive?void 0:r=>r.toLowerCase(),t.wholeWord?CW(e.doc,e.charCategorizer(e.selection.main.head)):void 0)}function CW(t,e){return(n,a,r,i)=>((i>n||i+r.length<a)&&(i=Math.max(0,n-2),r=t.sliceString(i,Math.min(t.length,a+2))),(e(Km(r,n-i))!=Pe.Word||e(Jm(r,n-i))!=Pe.Word)&&(e(Jm(r,a-i))!=Pe.Word||e(Km(r,a-i))!=Pe.Word))}var jC=class extends Wm{constructor(e){super(e)}nextMatch(e,n,a){let r=dc(this.spec,e,a,e.doc.length).nextOverlapping();if(r.done){let i=Math.min(e.doc.length,n+this.spec.unquoted.length);r=dc(this.spec,e,0,i).nextOverlapping()}return r.done||r.value.from==n&&r.value.to==a?null:r.value}prevMatchInRange(e,n,a){for(let r=a;;){let i=Math.max(n,r-1e4-this.spec.unquoted.length),o=dc(this.spec,e,i,r),s=null;for(;!o.nextOverlapping().done;)s=o.value;if(s)return s;if(i==n)return null;r-=1e4}}prevMatch(e,n,a){let r=this.prevMatchInRange(e,0,n);return r||(r=this.prevMatchInRange(e,Math.max(0,a-this.spec.unquoted.length),e.doc.length)),r&&(r.from!=n||r.to!=a)?r:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,n){let a=dc(this.spec,e,0,e.doc.length),r=[];for(;!a.next().done;){if(r.length>=n)return null;r.push(a.value)}return r}highlight(e,n,a,r){let i=dc(this.spec,e,Math.max(0,n-this.spec.unquoted.length),Math.min(a+this.spec.unquoted.length,e.doc.length));for(;!i.next().done;)r(i.value.from,i.value.to)}};function uc(t,e,n,a){return new zm(e.doc,t.search,{ignoreCase:!t.caseSensitive,test:t.wholeWord?_W(e.charCategorizer(e.selection.main.head)):void 0},n,a)}function Km(t,e){return t.slice(dt(t,e,!1),e)}function Jm(t,e){return t.slice(e,dt(t,e))}function _W(t){return(e,n,a)=>!a[0].length||(t(Km(a.input,a.index))!=Pe.Word||t(Jm(a.input,a.index))!=Pe.Word)&&(t(Jm(a.input,a.index+a[0].length))!=Pe.Word||t(Km(a.input,a.index+a[0].length))!=Pe.Word)}var PC=class extends Wm{nextMatch(e,n,a){let r=uc(this.spec,e,a,e.doc.length).next();return r.done&&(r=uc(this.spec,e,0,n).next()),r.done?null:r.value}prevMatchInRange(e,n,a){for(let r=1;;r++){let i=Math.max(n,a-r*1e4),o=uc(this.spec,e,i,a),s=null;for(;!o.next().done;)s=o.value;if(s&&(i==n||s.from>i+10))return s;if(i==n)return null}}prevMatch(e,n,a){return this.prevMatchInRange(e,0,n)||this.prevMatchInRange(e,a,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(n,a)=>{if(a=="&")return e.match[0];if(a=="$")return"$";for(let r=a.length;r>0;r--){let i=+a.slice(0,r);if(i>0&&i<e.match.length)return e.match[i]+a.slice(r)}return n})}matchAll(e,n){let a=uc(this.spec,e,0,e.doc.length),r=[];for(;!a.next().done;){if(r.length>=n)return null;r.push(a.value)}return r}highlight(e,n,a,r){let i=uc(this.spec,e,Math.max(0,n-250),Math.min(a+250,e.doc.length));for(;!i.next().done;)r(i.value.from,i.value.to)}},CA=ie.define(),GC=ie.define(),Gi=at.define({create(t){return new kA(MC(t).create(),null)},update(t,e){for(let n of e.effects)n.is(CA)?t=new kA(n.value.create(),t.panel):n.is(GC)&&(t=new kA(t.query,n.value?zC:null));return t},provide:t=>Qo.from(t,e=>e.panel)});var kA=class{constructor(e,n){this.query=e,this.panel=n}},BW=X.mark({class:"cm-searchMatch"}),xW=X.mark({class:"cm-searchMatch cm-searchMatch-selected"}),vW=lt.fromClass(class{constructor(t){this.view=t,this.decorations=this.highlight(t.state.field(Gi))}update(t){let e=t.state.field(Gi);(e!=t.startState.field(Gi)||t.docChanged||t.selectionSet||t.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:t,panel:e}){if(!e||!t.spec.valid)return X.none;let{view:n}=this,a=new Zn;for(let r=0,i=n.visibleRanges,o=i.length;r<o;r++){let{from:s,to:c}=i[r];for(;r<o-1&&c>i[r+1].from-2*250;)c=i[++r].to;t.highlight(n.state,s,c,(A,d)=>{let u=n.state.selection.ranges.some(p=>p.from==A&&p.to==d);a.add(A,d,u?xW:BW)})}return a.finish()}},{decorations:t=>t.decorations});function _A(t){return e=>{let n=e.state.field(Gi,!1);return n&&n.query.spec.valid?t(e,n):XS(e)}}var Vm=_A((t,{query:e})=>{let{to:n}=t.state.selection.main,a=e.nextMatch(t.state,n,n);if(!a)return!1;let r=L.single(a.from,a.to),i=t.state.facet(pc);return t.dispatch({selection:r,effects:[UC(t,a),i.scrollToMatch(r.main,t)],userEvent:"select.search"}),VS(t),!0}),Xm=_A((t,{query:e})=>{let{state:n}=t,{from:a}=n.selection.main,r=e.prevMatch(n,a,a);if(!r)return!1;let i=L.single(r.from,r.to),o=t.state.facet(pc);return t.dispatch({selection:i,effects:[UC(t,r),o.scrollToMatch(i.main,t)],userEvent:"select.search"}),VS(t),!0}),EW=_A((t,{query:e})=>{let n=e.matchAll(t.state,1e3);return!n||!n.length?!1:(t.dispatch({selection:L.create(n.map(a=>L.range(a.from,a.to))),userEvent:"select.search.matches"}),!0)}),QW=({state:t,dispatch:e})=>{let n=t.selection;if(n.ranges.length>1||n.main.empty)return!1;let{from:a,to:r}=n.main,i=[],o=0;for(let s=new zi(t.doc,t.sliceDoc(a,r));!s.next().done;){if(i.length>1e3)return!1;s.value.from==a&&(o=i.length),i.push(L.range(s.value.from,s.value.to))}return e(t.update({selection:L.create(i,o),userEvent:"select.search.matches"})),!0},ZS=_A((t,{query:e})=>{let{state:n}=t,{from:a,to:r}=n.selection.main;if(n.readOnly)return!1;let i=e.nextMatch(n,a,a);if(!i)return!1;let o=i,s=[],c,A,d=[];o.from==a&&o.to==r&&(A=n.toText(e.getReplacement(o)),s.push({from:o.from,to:o.to,insert:A}),o=e.nextMatch(n,o.from,o.to),d.push(T.announce.of(n.phrase("replaced match on line $",n.doc.lineAt(a).number)+".")));let u=t.state.changes(s);return o&&(c=L.single(o.from,o.to).map(u),d.push(UC(t,o)),d.push(n.facet(pc).scrollToMatch(c.main,t))),t.dispatch({changes:u,selection:c,effects:d,userEvent:"input.replace"}),!0}),IW=_A((t,{query:e})=>{if(t.state.readOnly)return!1;let n=e.matchAll(t.state,1e9).map(r=>{let{from:i,to:o}=r;return{from:i,to:o,insert:e.getReplacement(r)}});if(!n.length)return!1;let a=t.state.phrase("replaced $ matches",n.length)+".";return t.dispatch({changes:n,effects:T.announce.of(a),userEvent:"input.replace.all"}),!0});function zC(t){return t.state.facet(pc).createPanel(t)}function MC(t,e){var n,a,r,i,o;let s=t.selection.main,c=s.empty||s.to>s.from+100?"":t.sliceDoc(s.from,s.to);if(e&&!c)return e;let A=t.facet(pc);return new Ym({search:((n=e?.literal)!==null&&n!==void 0?n:A.literal)?c:c.replace(/\n/g,"\\n"),caseSensitive:(a=e?.caseSensitive)!==null&&a!==void 0?a:A.caseSensitive,literal:(r=e?.literal)!==null&&r!==void 0?r:A.literal,regexp:(i=e?.regexp)!==null&&i!==void 0?i:A.regexp,wholeWord:(o=e?.wholeWord)!==null&&o!==void 0?o:A.wholeWord})}function JS(t){let e=Io(t,zC);return e&&e.dom.querySelector("[main-field]")}function VS(t){let e=JS(t);e&&e==t.root.activeElement&&e.select()}var XS=t=>{let e=t.state.field(Gi,!1);if(e&&e.panel){let n=JS(t);if(n&&n!=t.root.activeElement){let a=MC(t.state,e.query.spec);a.valid&&t.dispatch({effects:CA.of(a)}),n.focus(),n.select()}}else t.dispatch({effects:[GC.of(!0),e?CA.of(MC(t.state,e.query.spec)):ie.appendConfig.of(FW)]});return!0},e2=t=>{let e=t.state.field(Gi,!1);if(!e||!e.panel)return!1;let n=Io(t,zC);return n&&n.dom.contains(t.root.activeElement)&&t.focus(),t.dispatch({effects:GC.of(!1)}),!0},t2=[{key:"Mod-f",run:XS,scope:"editor search-panel"},{key:"F3",run:Vm,shift:Xm,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:Vm,shift:Xm,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:e2,scope:"editor search-panel"},{key:"Mod-Shift-l",run:QW},{key:"Mod-Alt-g",run:dW},{key:"Mod-d",run:kW,preventDefault:!0}],TC=class{constructor(e){this.view=e;let n=this.query=e.state.field(Gi).query.spec;this.commit=this.commit.bind(this),this.searchField=Se("input",{value:n.search,placeholder:ea(e,"Find"),"aria-label":ea(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=Se("input",{value:n.replace,placeholder:ea(e,"Replace"),"aria-label":ea(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=Se("input",{type:"checkbox",name:"case",form:"",checked:n.caseSensitive,onchange:this.commit}),this.reField=Se("input",{type:"checkbox",name:"re",form:"",checked:n.regexp,onchange:this.commit}),this.wordField=Se("input",{type:"checkbox",name:"word",form:"",checked:n.wholeWord,onchange:this.commit});function a(r,i,o){return Se("button",{class:"cm-button",name:r,onclick:i,type:"button"},o)}this.dom=Se("div",{onkeydown:r=>this.keydown(r),class:"cm-search"},[this.searchField,a("next",()=>Vm(e),[ea(e,"next")]),a("prev",()=>Xm(e),[ea(e,"previous")]),a("select",()=>EW(e),[ea(e,"all")]),Se("label",null,[this.caseField,ea(e,"match case")]),Se("label",null,[this.reField,ea(e,"regexp")]),Se("label",null,[this.wordField,ea(e,"by word")]),...e.state.readOnly?[]:[Se("br"),this.replaceField,a("replace",()=>ZS(e),[ea(e,"replace")]),a("replaceAll",()=>IW(e),[ea(e,"replace all")])],Se("button",{name:"close",onclick:()=>e2(e),"aria-label":ea(e,"close"),type:"button"},["\xD7"])])}commit(){let e=new Ym({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:CA.of(e)}))}keydown(e){XD(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?Xm:Vm)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),ZS(this.view))}update(e){for(let n of e.transactions)for(let a of n.effects)a.is(CA)&&!a.value.eq(this.query)&&this.setQuery(a.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(pc).top}};function ea(t,e){return t.state.phrase(e)}var qm=30,Gm=/[\s\.,:;?!]/;function UC(t,{from:e,to:n}){let a=t.state.doc.lineAt(e),r=t.state.doc.lineAt(n).to,i=Math.max(a.from,e-qm),o=Math.min(r,n+qm),s=t.state.sliceDoc(i,o);if(i!=a.from){for(let c=0;c<qm;c++)if(!Gm.test(s[c+1])&&Gm.test(s[c])){s=s.slice(c);break}}if(o!=r){for(let c=s.length-1;c>s.length-qm;c--)if(!Gm.test(s[c-1])&&Gm.test(s[c])){s=s.slice(0,c);break}}return T.announce.of(`${t.state.phrase("current match")}. ${s} ${t.state.phrase("on line")} ${a.number}.`)}var DW=T.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),FW=[Gi,In.low(vW),DW];var mc=class{constructor(e,n,a,r){this.state=e,this.pos=n,this.explicit=a,this.view=r,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(e){let n=Ee(this.state).resolveInner(this.pos,-1);for(;n&&e.indexOf(n.name)<0;)n=n.parent;return n?{from:n.from,to:this.pos,text:this.state.sliceDoc(n.from,this.pos),type:n.type}:null}matchBefore(e){let n=this.state.doc.lineAt(this.pos),a=Math.max(n.from,this.pos-250),r=n.text.slice(a-n.from,this.pos-n.from),i=r.search(d2(e,!1));return i<0?null:{from:a+i,to:this.pos,text:r.slice(i)}}get aborted(){return this.abortListeners==null}addEventListener(e,n,a){e=="abort"&&this.abortListeners&&(this.abortListeners.push(n),a&&a.onDocChange&&(this.abortOnDocChange=!0))}};function n2(t){let e=Object.keys(t).join(""),n=/\w/.test(e);return n&&(e=e.replace(/\w/g,"")),`[${n?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function SW(t){let e=Object.create(null),n=Object.create(null);for(let{label:r}of t){e[r[0]]=!0;for(let i=1;i<r.length;i++)n[r[i]]=!0}let a=n2(e)+n2(n)+"*$";return[new RegExp("^"+a),new RegExp(a)]}function r_(t){let e=t.map(r=>typeof r=="string"?{label:r}:r),[n,a]=e.every(r=>/^\w+$/.test(r.label))?[/\w*$/,/\w+$/]:SW(e);return r=>{let i=r.matchBefore(a);return i||r.explicit?{from:i?i.from:r.pos,options:e,validFor:n}:null}}function A2(t,e){return n=>{for(let a=Ee(n.state).resolveInner(n.pos,-1);a;a=a.parent){if(t.indexOf(a.name)>-1)return null;if(a.type.isTop)break}return e(n)}}var tg=class{constructor(e,n,a,r){this.completion=e,this.source=n,this.match=a,this.score=r}};function Ro(t){return t.selection.main.from}function d2(t,e){var n;let{source:a}=t,r=e&&a[0]!="^",i=a[a.length-1]!="$";return!r&&!i?t:new RegExp(`${r?"^":""}(?:${a})${i?"$":""}`,(n=t.flags)!==null&&n!==void 0?n:t.ignoreCase?"i":"")}var i_=Qn.define();function OW(t,e,n,a){let{main:r}=t.selection,i=n-r.from,o=a-r.from;return{...t.changeByRange(s=>{if(s!=r&&n!=a&&t.sliceDoc(s.from+i,s.from+o)!=t.sliceDoc(n,a))return{range:s};let c=t.toText(e);return{changes:{from:s.from+i,to:a==r.from?s.to:s.from+o,insert:c},range:L.cursor(s.from+i+c.length)}}),scrollIntoView:!0,userEvent:"input.complete"}}var a2=new WeakMap;function NW(t){if(!Array.isArray(t))return t;let e=a2.get(t);return e||a2.set(t,e=r_(t)),e}var ng=ie.define(),BA=ie.define(),WC=class{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let n=0;n<e.length;){let a=Gt(e,n),r=Yn(a);this.chars.push(a);let i=e.slice(n,n+r),o=i.toUpperCase();this.folded.push(Gt(o==i?i.toLowerCase():o,0)),n+=r}this.astral=e.length!=this.chars.length}ret(e,n){return this.score=e,this.matched=n,this}match(e){if(this.pattern.length==0)return this.ret(-100,[]);if(e.length<this.pattern.length)return null;let{chars:n,folded:a,any:r,precise:i,byWord:o}=this;if(n.length==1){let y=Gt(e,0),k=Yn(y),E=k==e.length?0:-100;if(y!=n[0])if(y==a[0])E+=-200;else return null;return this.ret(E,[0,k])}let s=e.indexOf(this.pattern);if(s==0)return this.ret(e.length==this.pattern.length?0:-100,[0,this.pattern.length]);let c=n.length,A=0;if(s<0){for(let y=0,k=Math.min(e.length,200);y<k&&A<c;){let E=Gt(e,y);(E==n[A]||E==a[A])&&(r[A++]=y),y+=Yn(E)}if(A<c)return null}let d=0,u=0,p=!1,m=0,f=-1,h=-1,w=/[a-z]/.test(e),b=!0;for(let y=0,k=Math.min(e.length,200),E=0;y<k&&u<c;){let Q=Gt(e,y);s<0&&(d<c&&Q==n[d]&&(i[d++]=y),m<c&&(Q==n[m]||Q==a[m]?(m==0&&(f=y),h=y+1,m++):m=0));let D,F=Q<255?Q>=48&&Q<=57||Q>=97&&Q<=122?2:Q>=65&&Q<=90?1:0:(D=Ml(Q))!=D.toLowerCase()?1:D!=D.toUpperCase()?2:0;(!y||F==1&&w||E==0&&F!=0)&&(n[u]==Q||a[u]==Q&&(p=!0)?o[u++]=y:o.length&&(b=!1)),E=F,y+=Yn(Q)}return u==c&&o[0]==0&&b?this.result(-100+(p?-200:0),o,e):m==c&&f==0?this.ret(-200-e.length+(h==e.length?0:-100),[0,h]):s>-1?this.ret(-700-e.length,[s,s+this.pattern.length]):m==c?this.ret(-900-e.length,[f,h]):u==c?this.result(-100+(p?-200:0)+-700+(b?0:-1100),o,e):n.length==2?null:this.result((r[0]?-700:0)+-200+-1100,r,e)}result(e,n,a){let r=[],i=0;for(let o of n){let s=o+(this.astral?Yn(Gt(a,o)):1);i&&r[i-1]==o?r[i-1]=s:(r[i++]=o,r[i++]=s)}return this.ret(e-a.length,r)}},KC=class{constructor(e){this.pattern=e,this.matched=[],this.score=0,this.folded=e.toLowerCase()}match(e){if(e.length<this.pattern.length)return null;let n=e.slice(0,this.pattern.length),a=n==this.pattern?0:n.toLowerCase()==this.folded?-200:null;return a==null?null:(this.matched=[0,n.length],this.score=a+(e.length==this.pattern.length?0:-100),this)}},St=G.define({combine(t){return tn(t,{activateOnTyping:!0,activateOnCompletion:()=>!1,activateOnTypingDelay:100,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:LW,filterStrict:!1,compareCompletions:(e,n)=>(e.sortText||e.label).localeCompare(n.sortText||n.label),interactionDelay:75,updateSyncTime:100},{defaultKeymap:(e,n)=>e&&n,closeOnBlur:(e,n)=>e&&n,icons:(e,n)=>e&&n,tooltipClass:(e,n)=>a=>r2(e(a),n(a)),optionClass:(e,n)=>a=>r2(e(a),n(a)),addToOptions:(e,n)=>e.concat(n),filterStrict:(e,n)=>e||n})}});function r2(t,e){return t?e?t+" "+e:t:e}function LW(t,e,n,a,r,i){let o=t.textDirection==Oe.RTL,s=o,c=!1,A="top",d,u,p=e.left-r.left,m=r.right-e.right,f=a.right-a.left,h=a.bottom-a.top;if(s&&p<Math.min(f,m)?s=!1:!s&&m<Math.min(f,p)&&(s=!0),f<=(s?p:m))d=Math.max(r.top,Math.min(n.top,r.bottom-h))-e.top,u=Math.min(400,s?p:m);else{c=!0,u=Math.min(400,(o?e.right:r.right-e.left)-30);let y=r.bottom-e.bottom;y>=h||y>e.top?d=n.bottom-e.top:(A="bottom",d=e.bottom-n.top)}let w=(e.bottom-e.top)/i.offsetHeight,b=(e.right-e.left)/i.offsetWidth;return{style:`${A}: ${d/w}px; max-width: ${u/b}px`,class:"cm-completionInfo-"+(c?o?"left-narrow":"right-narrow":s?"left":"right")}}function $W(t){let e=t.addToOptions.slice();return t.icons&&e.push({render(n){let a=document.createElement("div");return a.classList.add("cm-completionIcon"),n.type&&a.classList.add(...n.type.split(/\s+/g).map(r=>"cm-completionIcon-"+r)),a.setAttribute("aria-hidden","true"),a},position:20}),e.push({render(n,a,r,i){let o=document.createElement("span");o.className="cm-completionLabel";let s=n.displayLabel||n.label,c=0;for(let A=0;A<i.length;){let d=i[A++],u=i[A++];d>c&&o.appendChild(document.createTextNode(s.slice(c,d)));let p=o.appendChild(document.createElement("span"));p.appendChild(document.createTextNode(s.slice(d,u))),p.className="cm-completionMatchedText",c=u}return c<s.length&&o.appendChild(document.createTextNode(s.slice(c))),o},position:50},{render(n){if(!n.detail)return null;let a=document.createElement("span");return a.className="cm-completionDetail",a.textContent=n.detail,a},position:80}),e.sort((n,a)=>n.position-a.position).map(n=>n.render)}function HC(t,e,n){if(t<=n)return{from:0,to:t};if(e<0&&(e=0),e<=t>>1){let r=Math.floor(e/n);return{from:r*n,to:(r+1)*n}}let a=Math.floor((t-e)/n);return{from:t-(a+1)*n,to:t-a*n}}var JC=class{constructor(e,n,a){this.view=e,this.stateField=n,this.applyCompletion=a,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:c=>this.placeInfo(c),key:this},this.space=null,this.currentClass="";let r=e.state.field(n),{options:i,selected:o}=r.open,s=e.state.facet(St);this.optionContent=$W(s),this.optionClass=s.optionClass,this.tooltipClass=s.tooltipClass,this.range=HC(i.length,o,s.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",c=>{let{options:A}=e.state.field(n).open;for(let d=c.target,u;d&&d!=this.dom;d=d.parentNode)if(d.nodeName=="LI"&&(u=/-(\d+)$/.exec(d.id))&&+u[1]<A.length){this.applyCompletion(e,A[+u[1]]),c.preventDefault();return}}),this.dom.addEventListener("focusout",c=>{let A=e.state.field(this.stateField,!1);A&&A.tooltip&&e.state.facet(St).closeOnBlur&&c.relatedTarget!=e.contentDOM&&e.dispatch({effects:BA.of(null)})}),this.showOptions(i,r.id)}mount(){this.updateSel()}showOptions(e,n){this.list&&this.list.remove(),this.list=this.dom.appendChild(this.createListBox(e,n,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}update(e){var n;let a=e.state.field(this.stateField),r=e.startState.field(this.stateField);if(this.updateTooltipClass(e.state),a!=r){let{options:i,selected:o,disabled:s}=a.open;(!r.open||r.open.options!=i)&&(this.range=HC(i.length,o,e.state.facet(St).maxRenderedOptions),this.showOptions(i,a.id)),this.updateSel(),s!=((n=r.open)===null||n===void 0?void 0:n.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!s)}}updateTooltipClass(e){let n=this.tooltipClass(e);if(n!=this.currentClass){for(let a of this.currentClass.split(" "))a&&this.dom.classList.remove(a);for(let a of n.split(" "))a&&this.dom.classList.add(a);this.currentClass=n}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let e=this.view.state.field(this.stateField),n=e.open;(n.selected>-1&&n.selected<this.range.from||n.selected>=this.range.to)&&(this.range=HC(n.options.length,n.selected,this.view.state.facet(St).maxRenderedOptions),this.showOptions(n.options,e.id));let a=this.updateSelectedOption(n.selected);if(a){this.destroyInfo();let{completion:r}=n.options[n.selected],{info:i}=r;if(!i)return;let o=typeof i=="string"?document.createTextNode(i):i(r);if(!o)return;"then"in o?o.then(s=>{s&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(s,r)}).catch(s=>zt(this.view.state,s,"completion info")):(this.addInfoPane(o,r),a.setAttribute("aria-describedby",this.info.id))}}addInfoPane(e,n){this.destroyInfo();let a=this.info=document.createElement("div");if(a.className="cm-tooltip cm-completionInfo",a.id="cm-completionInfo-"+Math.floor(Math.random()*65535).toString(16),e.nodeType!=null)a.appendChild(e),this.infoDestroy=null;else{let{dom:r,destroy:i}=e;a.appendChild(r),this.infoDestroy=i||null}this.dom.appendChild(a),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let n=null;for(let a=this.list.firstChild,r=this.range.from;a;a=a.nextSibling,r++)a.nodeName!="LI"||!a.id?r--:r==e?a.hasAttribute("aria-selected")||(a.setAttribute("aria-selected","true"),n=a):a.hasAttribute("aria-selected")&&(a.removeAttribute("aria-selected"),a.removeAttribute("aria-describedby"));return n&&jW(this.list,n),n}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let n=this.dom.getBoundingClientRect(),a=this.info.getBoundingClientRect(),r=e.getBoundingClientRect(),i=this.space;if(!i){let o=this.dom.ownerDocument.documentElement;i={left:0,top:0,right:o.clientWidth,bottom:o.clientHeight}}return r.top>Math.min(i.bottom,n.bottom)-10||r.bottom<Math.max(i.top,n.top)+10?null:this.view.state.facet(St).positionInfo(this.view,n,r,a,i,this.dom)}placeInfo(e){this.info&&(e?(e.style&&(this.info.style.cssText=e.style),this.info.className="cm-tooltip cm-completionInfo "+(e.class||"")):this.info.style.cssText="top: -1e6px")}createListBox(e,n,a){let r=document.createElement("ul");r.id=n,r.setAttribute("role","listbox"),r.setAttribute("aria-expanded","true"),r.setAttribute("aria-label",this.view.state.phrase("Completions")),r.addEventListener("mousedown",o=>{o.target==r&&o.preventDefault()});let i=null;for(let o=a.from;o<a.to;o++){let{completion:s,match:c}=e[o],{section:A}=s;if(A){let p=typeof A=="string"?A:A.name;if(p!=i&&(o>a.from||a.from==0))if(i=p,typeof A!="string"&&A.header)r.appendChild(A.header(A));else{let m=r.appendChild(document.createElement("completion-section"));m.textContent=p}}let d=r.appendChild(document.createElement("li"));d.id=n+"-"+o,d.setAttribute("role","option");let u=this.optionClass(s);u&&(d.className=u);for(let p of this.optionContent){let m=p(s,this.view.state,this.view,c);m&&d.appendChild(m)}}return a.from&&r.classList.add("cm-completionListIncompleteTop"),a.to<e.length&&r.classList.add("cm-completionListIncompleteBottom"),r}destroyInfo(){this.info&&(this.infoDestroy&&this.infoDestroy(),this.info.remove(),this.info=null)}destroy(){this.destroyInfo()}};function RW(t,e){return n=>new JC(n,t,e)}function jW(t,e){let n=t.getBoundingClientRect(),a=e.getBoundingClientRect(),r=n.height/t.offsetHeight;a.top<n.top?t.scrollTop-=(n.top-a.top)/r:a.bottom>n.bottom&&(t.scrollTop+=(a.bottom-n.bottom)/r)}function i2(t){return(t.boost||0)*100+(t.apply?10:0)+(t.info?5:0)+(t.type?1:0)}function PW(t,e){let n=[],a=null,r=null,i=d=>{n.push(d);let{section:u}=d.completion;if(u){a||(a=[]);let p=typeof u=="string"?u:u.name;a.some(m=>m.name==p)||a.push(typeof u=="string"?{name:p}:u)}},o=e.facet(St);for(let d of t)if(d.hasResult()){let u=d.result.getMatch;if(d.result.filter===!1)for(let p of d.result.options)i(new tg(p,d.source,u?u(p):[],1e9-n.length));else{let p=e.sliceDoc(d.from,d.to),m,f=o.filterStrict?new KC(p):new WC(p);for(let h of d.result.options)if(m=f.match(h.label)){let w=h.displayLabel?u?u(h,m.matched):[]:m.matched,b=m.score+(h.boost||0);if(i(new tg(h,d.source,w,b)),typeof h.section=="object"&&h.section.rank==="dynamic"){let{name:y}=h.section;r||(r=Object.create(null)),r[y]=Math.max(b,r[y]||-1e9)}}}}if(a){let d=Object.create(null),u=0,p=(m,f)=>(m.rank==="dynamic"&&f.rank==="dynamic"?r[f.name]-r[m.name]:0)||(typeof m.rank=="number"?m.rank:1e9)-(typeof f.rank=="number"?f.rank:1e9)||(m.name<f.name?-1:1);for(let m of a.sort(p))u-=1e5,d[m.name]=u;for(let m of n){let{section:f}=m.completion;f&&(m.score+=d[typeof f=="string"?f:f.name])}}let s=[],c=null,A=o.compareCompletions;for(let d of n.sort((u,p)=>p.score-u.score||A(u.completion,p.completion))){let u=d.completion;!c||c.label!=u.label||c.detail!=u.detail||c.type!=null&&u.type!=null&&c.type!=u.type||c.apply!=u.apply||c.boost!=u.boost?s.push(d):i2(d.completion)>i2(c)&&(s[s.length-1]=d),c=d.completion}return s}var VC=class t{constructor(e,n,a,r,i,o){this.options=e,this.attrs=n,this.tooltip=a,this.timestamp=r,this.selected=i,this.disabled=o}setSelected(e,n){return e==this.selected||e>=this.options.length?this:new t(this.options,o2(n,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,n,a,r,i,o){if(r&&!o&&e.some(A=>A.isPending))return r.setDisabled();let s=PW(e,n);if(!s.length)return r&&e.some(A=>A.isPending)?r.setDisabled():null;let c=n.facet(St).selectOnOpen?0:-1;if(r&&r.selected!=c&&r.selected!=-1){let A=r.options[r.selected].completion;for(let d=0;d<s.length;d++)if(s[d].completion==A){c=d;break}}return new t(s,o2(a,c),{pos:e.reduce((A,d)=>d.hasResult()?Math.min(A,d.from):A,1e8),create:UW,above:i.aboveCursor},r?r.timestamp:Date.now(),c,!1)}map(e){return new t(this.options,this.attrs,{...this.tooltip,pos:e.mapPos(this.tooltip.pos)},this.timestamp,this.selected,this.disabled)}setDisabled(){return new t(this.options,this.attrs,this.tooltip,this.timestamp,this.selected,!0)}},XC=class t{constructor(e,n,a){this.active=e,this.id=n,this.open=a}static start(){return new t(GW,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:n}=e,a=n.facet(St),i=(a.override||n.languageDataAt("autocomplete",Ro(n)).map(NW)).map(c=>(this.active.find(d=>d.source==c)||new Pr(c,this.active.some(d=>d.state!=0)?1:0)).update(e,a));i.length==this.active.length&&i.every((c,A)=>c==this.active[A])&&(i=this.active);let o=this.open,s=e.effects.some(c=>c.is(o_));o&&e.docChanged&&(o=o.map(e.changes)),e.selection||i.some(c=>c.hasResult()&&e.changes.touchesRange(c.from,c.to))||!MW(i,this.active)||s?o=VC.build(i,n,this.id,o,a,s):o&&o.disabled&&!i.some(c=>c.isPending)&&(o=null),!o&&i.every(c=>!c.isPending)&&i.some(c=>c.hasResult())&&(i=i.map(c=>c.hasResult()?new Pr(c.source,0):c));for(let c of e.effects)c.is(p2)&&(o=o&&o.setSelected(c.value,this.id));return i==this.active&&o==this.open?this:new t(i,this.id,o)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?TW:qW}};function MW(t,e){if(t==e)return!0;for(let n=0,a=0;;){for(;n<t.length&&!t[n].hasResult();)n++;for(;a<e.length&&!e[a].hasResult();)a++;let r=n==t.length,i=a==e.length;if(r||i)return r==i;if(t[n++].result!=e[a++].result)return!1}}var TW={"aria-autocomplete":"list"},qW={};function o2(t,e){let n={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":t};return e>-1&&(n["aria-activedescendant"]=t+"-"+e),n}var GW=[];function u2(t,e){if(t.isUserEvent("input.complete")){let a=t.annotation(i_);if(a&&e.activateOnCompletion(a))return 12}let n=t.isUserEvent("input.type");return n&&e.activateOnTyping?5:n?1:t.isUserEvent("delete.backward")?2:t.selection?8:t.docChanged?16:0}var Pr=class t{constructor(e,n,a=!1){this.source=e,this.state=n,this.explicit=a}hasResult(){return!1}get isPending(){return this.state==1}update(e,n){let a=u2(e,n),r=this;(a&8||a&16&&this.touches(e))&&(r=new t(r.source,0)),a&4&&r.state==0&&(r=new t(this.source,1)),r=r.updateFor(e,a);for(let i of e.effects)if(i.is(ng))r=new t(r.source,1,i.value);else if(i.is(BA))r=new t(r.source,0);else if(i.is(o_))for(let o of i.value)o.source==r.source&&(r=o);return r}updateFor(e,n){return this.map(e.changes)}map(e){return this}touches(e){return e.changes.touchesRange(Ro(e.state))}},ag=class t extends Pr{constructor(e,n,a,r,i,o){super(e,3,n),this.limit=a,this.result=r,this.from=i,this.to=o}hasResult(){return!0}updateFor(e,n){var a;if(!(n&3))return this.map(e.changes);let r=this.result;r.map&&!e.changes.empty&&(r=r.map(r,e.changes));let i=e.changes.mapPos(this.from),o=e.changes.mapPos(this.to,1),s=Ro(e.state);if(s>o||!r||n&2&&(Ro(e.startState)==this.from||s<this.limit))return new Pr(this.source,n&4?1:0);let c=e.changes.mapPos(this.limit);return zW(r.validFor,e.state,i,o)?new t(this.source,this.explicit,c,r,i,o):r.update&&(r=r.update(r,i,o,new mc(e.state,s,!1)))?new t(this.source,this.explicit,c,r,r.from,(a=r.to)!==null&&a!==void 0?a:Ro(e.state)):new Pr(this.source,1,this.explicit)}map(e){return e.empty?this:(this.result.map?this.result.map(this.result,e):this.result)?new t(this.source,this.explicit,e.mapPos(this.limit),this.result,e.mapPos(this.from),e.mapPos(this.to,1)):new Pr(this.source,0)}touches(e){return e.changes.touchesRange(this.from,this.to)}};function zW(t,e,n,a){if(!t)return!1;let r=e.sliceDoc(n,a);return typeof t=="function"?t(r,n,a,e):d2(t,!0).test(r)}var o_=ie.define({map(t,e){return t.map(n=>n.map(e))}}),p2=ie.define(),On=at.define({create(){return XC.start()},update(t,e){return t.update(e)},provide:t=>[sA.from(t,e=>e.tooltip),T.contentAttributes.from(t,e=>e.attrs)]});function s_(t,e){let n=e.completion.apply||e.completion.label,a=t.state.field(On).active.find(r=>r.source==e.source);return a instanceof ag?(typeof n=="string"?t.dispatch({...OW(t.state,n,a.from,a.to),annotations:i_.of(e.completion)}):n(t,e.completion,a.from,a.to),!0):!1}var UW=RW(On,s_);function eg(t,e="option"){return n=>{let a=n.state.field(On,!1);if(!a||!a.open||a.open.disabled||Date.now()-a.open.timestamp<n.state.facet(St).interactionDelay)return!1;let r=1,i;e=="page"&&(i=Jk(n,a.open.tooltip))&&(r=Math.max(2,Math.floor(i.dom.offsetHeight/i.dom.querySelector("li").offsetHeight)-1));let{length:o}=a.open.options,s=a.open.selected>-1?a.open.selected+r*(t?1:-1):t?0:o-1;return s<0?s=e=="page"?0:o-1:s>=o&&(s=e=="page"?o-1:0),n.dispatch({effects:p2.of(s)}),!0}}var HW=t=>{let e=t.state.field(On,!1);return t.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestamp<t.state.facet(St).interactionDelay?!1:s_(t,e.open.options[e.open.selected])},ZC=t=>t.state.field(On,!1)?(t.dispatch({effects:ng.of(!0)}),!0):!1,ZW=t=>{let e=t.state.field(On,!1);return!e||!e.active.some(n=>n.state!=0)?!1:(t.dispatch({effects:BA.of(null)}),!0)},e_=class{constructor(e,n){this.active=e,this.context=n,this.time=Date.now(),this.updates=[],this.done=void 0}},YW=50,WW=1e3,KW=lt.fromClass(class{constructor(t){this.view=t,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.pendingStart=!1,this.composing=0;for(let e of t.state.field(On).active)e.isPending&&this.startQuery(e)}update(t){let e=t.state.field(On),n=t.state.facet(St);if(!t.selectionSet&&!t.docChanged&&t.startState.field(On)==e)return;let a=t.transactions.some(i=>{let o=u2(i,n);return o&8||(i.selection||i.docChanged)&&!(o&3)});for(let i=0;i<this.running.length;i++){let o=this.running[i];if(a||o.context.abortOnDocChange&&t.docChanged||o.updates.length+t.transactions.length>YW&&Date.now()-o.time>WW){for(let s of o.context.abortListeners)try{s()}catch(c){zt(this.view.state,c)}o.context.abortListeners=null,this.running.splice(i--,1)}else o.updates.push(...t.transactions)}this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),t.transactions.some(i=>i.effects.some(o=>o.is(ng)))&&(this.pendingStart=!0);let r=this.pendingStart?50:n.activateOnTypingDelay;if(this.debounceUpdate=e.active.some(i=>i.isPending&&!this.running.some(o=>o.active.source==i.source))?setTimeout(()=>this.startUpdate(),r):-1,this.composing!=0)for(let i of t.transactions)i.isUserEvent("input.type")?this.composing=2:this.composing==2&&i.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1,this.pendingStart=!1;let{state:t}=this.view,e=t.field(On);for(let n of e.active)n.isPending&&!this.running.some(a=>a.active.source==n.source)&&this.startQuery(n);this.running.length&&e.open&&e.open.disabled&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(St).updateSyncTime))}startQuery(t){let{state:e}=this.view,n=Ro(e),a=new mc(e,n,t.explicit,this.view),r=new e_(t,a);this.running.push(r),Promise.resolve(t.source(a)).then(i=>{r.context.aborted||(r.done=i||null,this.scheduleAccept())},i=>{this.view.dispatch({effects:BA.of(null)}),zt(this.view.state,i)})}scheduleAccept(){this.running.every(t=>t.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(St).updateSyncTime))}accept(){var t;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],n=this.view.state.facet(St),a=this.view.state.field(On);for(let r=0;r<this.running.length;r++){let i=this.running[r];if(i.done===void 0)continue;if(this.running.splice(r--,1),i.done){let s=Ro(i.updates.length?i.updates[0].startState:this.view.state),c=Math.min(s,i.done.from+(i.active.explicit?0:1)),A=new ag(i.active.source,i.active.explicit,c,i.done,i.done.from,(t=i.done.to)!==null&&t!==void 0?t:s);for(let d of i.updates)A=A.update(d,n);if(A.hasResult()){e.push(A);continue}}let o=a.active.find(s=>s.source==i.active.source);if(o&&o.isPending)if(i.done==null){let s=new Pr(i.active.source,0);for(let c of i.updates)s=s.update(c,n);s.isPending||e.push(s)}else this.startQuery(o)}(e.length||a.open&&a.open.disabled)&&this.view.dispatch({effects:o_.of(e)})}},{eventHandlers:{blur(t){let e=this.view.state.field(On,!1);if(e&&e.tooltip&&this.view.state.facet(St).closeOnBlur){let n=e.open&&Jk(this.view,e.open.tooltip);(!n||!n.dom.contains(t.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:BA.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:ng.of(!1)}),20),this.composing=0}}}),JW=typeof navigator=="object"&&/Win/.test(navigator.platform),VW=In.highest(T.domEventHandlers({keydown(t,e){let n=e.state.field(On,!1);if(!n||!n.open||n.open.disabled||n.open.selected<0||t.key.length>1||t.ctrlKey&&!(JW&&t.altKey)||t.metaKey)return!1;let a=n.open.options[n.open.selected],r=n.active.find(o=>o.source==a.source),i=a.completion.commitCharacters||r.result.commitCharacters;return i&&i.indexOf(t.key)>-1&&s_(e,a),!1}})),m2=T.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"\xB7\xB7\xB7"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box",whiteSpace:"pre-line"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'\u0192'"}},".cm-completionIcon-class":{"&:after":{content:"'\u25CB'"}},".cm-completionIcon-interface":{"&:after":{content:"'\u25CC'"}},".cm-completionIcon-variable":{"&:after":{content:"'\u{1D465}'"}},".cm-completionIcon-constant":{"&:after":{content:"'\u{1D436}'"}},".cm-completionIcon-type":{"&:after":{content:"'\u{1D461}'"}},".cm-completionIcon-enum":{"&:after":{content:"'\u222A'"}},".cm-completionIcon-property":{"&:after":{content:"'\u25A1'"}},".cm-completionIcon-keyword":{"&:after":{content:"'\u{1F511}\uFE0E'"}},".cm-completionIcon-namespace":{"&:after":{content:"'\u25A2'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}}),t_=class{constructor(e,n,a,r){this.field=e,this.line=n,this.from=a,this.to=r}},n_=class t{constructor(e,n,a){this.field=e,this.from=n,this.to=a}map(e){let n=e.mapPos(this.from,-1,Et.TrackDel),a=e.mapPos(this.to,1,Et.TrackDel);return n==null||a==null?null:new t(this.field,n,a)}},a_=class t{constructor(e,n){this.lines=e,this.fieldPositions=n}instantiate(e,n){let a=[],r=[n],i=e.doc.lineAt(n),o=/^\s*/.exec(i.text)[0];for(let c of this.lines){if(a.length){let A=o,d=/^\t*/.exec(c)[0].length;for(let u=0;u<d;u++)A+=e.facet(Ti);r.push(n+A.length-d),c=A+c.slice(d)}a.push(c),n+=c.length+1}let s=this.fieldPositions.map(c=>new n_(c.field,r[c.line]+c.from,r[c.line]+c.to));return{text:a,ranges:s}}static parse(e){let n=[],a=[],r=[],i;for(let o of e.split(/\r\n?|\n/)){for(;i=/[#$]\{(?:(\d+)(?::([^{}]*))?|((?:\\[{}]|[^{}])*))\}/.exec(o);){let s=i[1]?+i[1]:null,c=i[2]||i[3]||"",A=-1,d=c.replace(/\\[{}]/g,u=>u[1]);for(let u=0;u<n.length;u++)(s!=null?n[u].seq==s:d&&n[u].name==d)&&(A=u);if(A<0){let u=0;for(;u<n.length&&(s==null||n[u].seq!=null&&n[u].seq<s);)u++;n.splice(u,0,{seq:s,name:d}),A=u;for(let p of r)p.field>=A&&p.field++}for(let u of r)if(u.line==a.length&&u.from>i.index){let p=i[2]?3+(i[1]||"").length:2;u.from-=p,u.to-=p}r.push(new t_(A,a.length,i.index,i.index+d.length)),o=o.slice(0,i.index)+c+o.slice(i.index+i[0].length)}o=o.replace(/\\([{}])/g,(s,c,A)=>{for(let d of r)d.line==a.length&&d.from>A&&(d.from--,d.to--);return c}),a.push(o)}return new t(a,r)}},XW=X.widget({widget:new class extends pn{toDOM(){let t=document.createElement("span");return t.className="cm-snippetFieldPosition",t}ignoreEvent(){return!1}}}),eK=X.mark({class:"cm-snippetField"}),gc=class t{constructor(e,n){this.ranges=e,this.active=n,this.deco=X.set(e.map(a=>(a.from==a.to?XW:eK).range(a.from,a.to)),!0)}map(e){let n=[];for(let a of this.ranges){let r=a.map(e);if(!r)return null;n.push(r)}return new t(n,this.active)}selectionInsideField(e){return e.ranges.every(n=>this.ranges.some(a=>a.field==this.active&&a.from<=n.from&&a.to>=n.to))}},EA=ie.define({map(t,e){return t&&t.map(e)}}),tK=ie.define(),xA=at.define({create(){return null},update(t,e){for(let n of e.effects){if(n.is(EA))return n.value;if(n.is(tK)&&t)return new gc(t.ranges,n.value)}return t&&e.docChanged&&(t=t.map(e.changes)),t&&e.selection&&!t.selectionInsideField(e.selection)&&(t=null),t},provide:t=>T.decorations.from(t,e=>e?e.deco:X.none)});function c_(t,e){return L.create(t.filter(n=>n.field==e).map(n=>L.range(n.from,n.to)))}function nK(t){let e=a_.parse(t);return(n,a,r,i)=>{let{text:o,ranges:s}=e.instantiate(n.state,r),{main:c}=n.state.selection,A={changes:{from:r,to:i==c.from?c.to:i,insert:ke.of(o)},scrollIntoView:!0,annotations:a?[i_.of(a),kt.userEvent.of("input.complete")]:void 0};if(s.length&&(A.selection=c_(s,0)),s.some(d=>d.field>0)){let d=new gc(s,0),u=A.effects=[EA.of(d)];n.state.field(xA,!1)===void 0&&u.push(ie.appendConfig.of([xA,sK,cK,m2]))}n.dispatch(n.state.update(A))}}function g2(t){return({state:e,dispatch:n})=>{let a=e.field(xA,!1);if(!a||t<0&&a.active==0)return!1;let r=a.active+t,i=t>0&&!a.ranges.some(o=>o.field==r+t);return n(e.update({selection:c_(a.ranges,r),effects:EA.of(i?null:new gc(a.ranges,r)),scrollIntoView:!0})),!0}}var aK=({state:t,dispatch:e})=>t.field(xA,!1)?(e(t.update({effects:EA.of(null)})),!0):!1,rK=g2(1),iK=g2(-1);var oK=[{key:"Tab",run:rK,shift:iK},{key:"Escape",run:aK}],s2=G.define({combine(t){return t.length?t[0]:oK}}),sK=In.highest(Si.compute([s2],t=>t.facet(s2)));function gn(t,e){return{...e,apply:nK(t)}}var cK=T.domEventHandlers({mousedown(t,e){let n=e.state.field(xA,!1),a;if(!n||(a=e.posAtCoords({x:t.clientX,y:t.clientY}))==null)return!1;let r=n.ranges.find(i=>i.from<=a&&i.to>=a);return!r||r.field==n.active?!1:(e.dispatch({selection:c_(n.ranges,r.field),effects:EA.of(n.ranges.some(i=>i.field>r.field)?new gc(n.ranges,r.field):null),scrollIntoView:!0}),!0)}});var vA={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},$o=ie.define({map(t,e){let n=e.mapPos(t,-1,Et.TrackAfter);return n??void 0}}),l_=new class extends ba{};l_.startSide=1;l_.endSide=-1;var f2=at.define({create(){return xe.empty},update(t,e){if(t=t.map(e.changes),e.selection){let n=e.state.doc.lineAt(e.selection.main.head);t=t.update({filter:a=>a>=n.from&&a<=n.to})}for(let n of e.effects)n.is($o)&&(t=t.update({add:[l_.range(n.value,n.value+1)]}));return t}});function b2(){return[AK,f2]}var YC="()[]{}<>\xAB\xBB\xBB\xAB\uFF3B\uFF3D\uFF5B\uFF5D";function h2(t){for(let e=0;e<YC.length;e+=2)if(YC.charCodeAt(e)==t)return YC.charAt(e+1);return Ml(t<128?t:t+1)}function y2(t,e){return t.languageDataAt("closeBrackets",e)[0]||vA}var lK=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),AK=T.inputHandler.of((t,e,n,a)=>{if((lK?t.composing:t.compositionStarted)||t.state.readOnly)return!1;let r=t.state.selection.main;if(a.length>2||a.length==2&&Yn(Gt(a,0))==1||e!=r.from||n!=r.to)return!1;let i=uK(t.state,a);return i?(t.dispatch(i),!0):!1}),dK=({state:t,dispatch:e})=>{if(t.readOnly)return!1;let a=y2(t,t.selection.main.head).brackets||vA.brackets,r=null,i=t.changeByRange(o=>{if(o.empty){let s=pK(t.doc,o.head);for(let c of a)if(c==s&&rg(t.doc,o.head)==h2(Gt(c,0)))return{changes:{from:o.head-c.length,to:o.head+c.length},range:L.cursor(o.head-c.length)}}return{range:r=o}});return r||e(t.update(i,{scrollIntoView:!0,userEvent:"delete.backward"})),!r},w2=[{key:"Backspace",run:dK}];function uK(t,e){let n=y2(t,t.selection.main.head),a=n.brackets||vA.brackets;for(let r of a){let i=h2(Gt(r,0));if(e==r)return i==r?fK(t,r,a.indexOf(r+r+r)>-1,n):mK(t,r,i,n.before||vA.before);if(e==i&&k2(t,t.selection.main.from))return gK(t,r,i)}return null}function k2(t,e){let n=!1;return t.field(f2).between(0,t.doc.length,a=>{a==e&&(n=!0)}),n}function rg(t,e){let n=t.sliceString(e,e+2);return n.slice(0,Yn(Gt(n,0)))}function pK(t,e){let n=t.sliceString(e-2,e);return Yn(Gt(n,0))==n.length?n:n.slice(1)}function mK(t,e,n,a){let r=null,i=t.changeByRange(o=>{if(!o.empty)return{changes:[{insert:e,from:o.from},{insert:n,from:o.to}],effects:$o.of(o.to+e.length),range:L.range(o.anchor+e.length,o.head+e.length)};let s=rg(t.doc,o.head);return!s||/\s/.test(s)||a.indexOf(s)>-1?{changes:{insert:e+n,from:o.head},effects:$o.of(o.head+e.length),range:L.cursor(o.head+e.length)}:{range:r=o}});return r?null:t.update(i,{scrollIntoView:!0,userEvent:"input.type"})}function gK(t,e,n){let a=null,r=t.changeByRange(i=>i.empty&&rg(t.doc,i.head)==n?{changes:{from:i.head,to:i.head+n.length,insert:n},range:L.cursor(i.head+n.length)}:a={range:i});return a?null:t.update(r,{scrollIntoView:!0,userEvent:"input.type"})}function fK(t,e,n,a){let r=a.stringPrefixes||vA.stringPrefixes,i=null,o=t.changeByRange(s=>{if(!s.empty)return{changes:[{insert:e,from:s.from},{insert:e,from:s.to}],effects:$o.of(s.to+e.length),range:L.range(s.anchor+e.length,s.head+e.length)};let c=s.head,A=rg(t.doc,c),d;if(A==e){if(c2(t,c))return{changes:{insert:e+e,from:c},effects:$o.of(c+e.length),range:L.cursor(c+e.length)};if(k2(t,c)){let p=n&&t.sliceDoc(c,c+e.length*3)==e+e+e?e+e+e:e;return{changes:{from:c,to:c+p.length,insert:p},range:L.cursor(c+p.length)}}}else{if(n&&t.sliceDoc(c-2*e.length,c)==e+e&&(d=l2(t,c-2*e.length,r))>-1&&c2(t,d))return{changes:{insert:e+e+e+e,from:c},effects:$o.of(c+e.length),range:L.cursor(c+e.length)};if(t.charCategorizer(c)(A)!=Pe.Word&&l2(t,c,r)>-1&&!bK(t,c,e,r))return{changes:{insert:e+e,from:c},effects:$o.of(c+e.length),range:L.cursor(c+e.length)}}return{range:i=s}});return i?null:t.update(o,{scrollIntoView:!0,userEvent:"input.type"})}function c2(t,e){let n=Ee(t).resolveInner(e+1);return n.parent&&n.from==e}function bK(t,e,n,a){let r=Ee(t).resolveInner(e,-1),i=a.reduce((o,s)=>Math.max(o,s.length),0);for(let o=0;o<5;o++){let s=t.sliceDoc(r.from,Math.min(r.to,r.from+n.length+i)),c=s.indexOf(n);if(!c||c>-1&&a.indexOf(s.slice(0,c))>-1){let d=r.firstChild;for(;d&&d.from==r.from&&d.to-d.from>n.length+c;){if(t.sliceDoc(d.to-n.length,d.to)==n)return!1;d=d.firstChild}return!0}let A=r.to==e&&r.parent;if(!A)break;r=A}return!1}function l2(t,e,n){let a=t.charCategorizer(e);if(a(t.sliceDoc(e-1,e))!=Pe.Word)return e;for(let r of n){let i=e-r.length;if(t.sliceDoc(i,e)==r&&a(t.sliceDoc(i-1,i))!=Pe.Word)return i}return-1}function C2(t={}){return[VW,On,St.of(t),KW,hK,m2]}var A_=[{key:"Ctrl-Space",run:ZC},{mac:"Alt-`",run:ZC},{mac:"Alt-i",run:ZC},{key:"Escape",run:ZW},{key:"ArrowDown",run:eg(!0)},{key:"ArrowUp",run:eg(!1)},{key:"PageDown",run:eg(!0,"page")},{key:"PageUp",run:eg(!1,"page")},{key:"Enter",run:HW}],hK=In.highest(Si.computeN([St],t=>t.facet(St).defaultKeymap?[A_]:[]));var og=class{constructor(e,n,a){this.from=e,this.to=n,this.diagnostic=a}},jo=class t{constructor(e,n,a){this.diagnostics=e,this.panel=n,this.selected=a}static init(e,n,a){let r=a.facet(QA).markerFilter;r&&(e=r(e,a));let i=e.slice().sort((m,f)=>m.from-f.from||m.to-f.to),o=new Zn,s=[],c=0,A=a.doc.iter(),d=0,u=a.doc.length;for(let m=0;;){let f=m==i.length?null:i[m];if(!f&&!s.length)break;let h,w;if(s.length)h=c,w=s.reduce((k,E)=>Math.min(k,E.to),f&&f.from>h?f.from:1e8);else{if(h=f.from,h>u)break;w=f.to,s.push(f),m++}for(;m<i.length;){let k=i[m];if(k.from==h&&(k.to>k.from||k.to==h))s.push(k),m++,w=Math.min(k.to,w);else{w=Math.min(k.from,w);break}}w=Math.min(w,u);let b=!1;if(s.some(k=>k.from==h&&(k.to==w||w==u))&&(b=h==w,!b&&w-h<10)){let k=h-(d+A.value.length);k>0&&(A.next(k),d=h);for(let E=h;;){if(E>=w){b=!0;break}if(!A.lineBreak&&d+A.value.length>E)break;E=d+A.value.length,d+=A.value.length,A.next()}}let y=IK(s);if(b)o.add(h,h,X.widget({widget:new d_(y),diagnostics:s.slice()}));else{let k=s.reduce((E,Q)=>Q.markClass?E+" "+Q.markClass:E,"");o.add(h,w,X.mark({class:"cm-lintRange cm-lintRange-"+y+k,diagnostics:s.slice(),inclusiveEnd:s.some(E=>E.to>w)}))}if(c=w,c==u)break;for(let k=0;k<s.length;k++)s[k].to<=c&&s.splice(k--,1)}let p=o.finish();return new t(p,n,fc(p))}};function fc(t,e=null,n=0){let a=null;return t.between(n,1e9,(r,i,{spec:o})=>{if(!(e&&o.diagnostics.indexOf(e)<0))if(!a)a=new og(r,i,e||o.diagnostics[0]);else{if(o.diagnostics.indexOf(a.diagnostic)<0)return!1;a=new og(a.from,i,a.diagnostic)}}),a}function yK(t,e){let n=e.pos,a=e.end||n,r=t.state.facet(QA).hideOn(t,n,a);if(r!=null)return r;let i=t.startState.doc.lineAt(e.pos);return!!(t.effects.some(o=>o.is(x2))||t.changes.touchesRange(i.from,Math.max(i.to,a)))}function wK(t,e){return t.field(ta,!1)?e:e.concat(ie.appendConfig.of(DK))}var x2=ie.define(),u_=ie.define(),v2=ie.define(),ta=at.define({create(){return new jo(X.none,null,null)},update(t,e){if(e.docChanged&&t.diagnostics.size){let n=t.diagnostics.map(e.changes),a=null,r=t.panel;if(t.selected){let i=e.changes.mapPos(t.selected.from,1);a=fc(n,t.selected.diagnostic,i)||fc(n,null,i)}!n.size&&r&&e.state.facet(QA).autoPanel&&(r=null),t=new jo(n,r,a)}for(let n of e.effects)if(n.is(x2)){let a=e.state.facet(QA).autoPanel?n.value.length?IA.open:null:t.panel;t=jo.init(n.value,a,e.state)}else n.is(u_)?t=new jo(t.diagnostics,n.value?IA.open:null,t.selected):n.is(v2)&&(t=new jo(t.diagnostics,t.panel,n.value));return t},provide:t=>[Qo.from(t,e=>e.panel),T.decorations.from(t,e=>e.diagnostics)]});var kK=X.mark({class:"cm-lintRange cm-lintRange-active"});function CK(t,e,n){let{diagnostics:a}=t.state.field(ta),r,i=-1,o=-1;a.between(e-(n<0?1:0),e+(n>0?1:0),(c,A,{spec:d})=>{if(e>=c&&e<=A&&(c==A||(e>c||n>0)&&(e<A||n<0)))return r=d.diagnostics,i=c,o=A,!1});let s=t.state.facet(QA).tooltipFilter;return r&&s&&(r=s(r,t.state)),r?{pos:i,end:o,above:t.state.doc.lineAt(i).to<o,create(){return{dom:_K(t,r)}}}:null}function _K(t,e){return Se("ul",{class:"cm-tooltip-lint"},e.map(n=>I2(t,n,!1)))}var BK=t=>{let e=t.state.field(ta,!1);(!e||!e.panel)&&t.dispatch({effects:wK(t.state,[u_.of(!0)])});let n=Io(t,IA.open);return n&&n.dom.querySelector(".cm-panel-lint ul").focus(),!0},_2=t=>{let e=t.state.field(ta,!1);return!e||!e.panel?!1:(t.dispatch({effects:u_.of(!1)}),!0)},xK=t=>{let e=t.state.field(ta,!1);if(!e)return!1;let n=t.state.selection.main,a=e.diagnostics.iter(n.to+1);return!a.value&&(a=e.diagnostics.iter(0),!a.value||a.from==n.from&&a.to==n.to)?!1:(t.dispatch({selection:{anchor:a.from,head:a.to},scrollIntoView:!0}),!0)};var E2=[{key:"Mod-Shift-m",run:BK,preventDefault:!0},{key:"F8",run:xK}];var QA=G.define({combine(t){return{sources:t.map(e=>e.source).filter(e=>e!=null),...tn(t.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:B2,tooltipFilter:B2,needsRefresh:(e,n)=>e?n?a=>e(a)||n(a):e:n,hideOn:(e,n)=>e?n?(a,r,i)=>e(a,r,i)||n(a,r,i):e:n,autoPanel:(e,n)=>e||n})}}});function B2(t,e){return t?e?(n,a)=>e(t(n,a),a):t:e}function Q2(t){let e=[];if(t)e:for(let{name:n}of t){for(let a=0;a<n.length;a++){let r=n[a];if(/[a-zA-Z]/.test(r)&&!e.some(i=>i.toLowerCase()==r.toLowerCase())){e.push(r);continue e}}e.push("")}return e}function I2(t,e,n){var a;let r=n?Q2(e.actions):[];return Se("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},Se("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage(t):e.message),(a=e.actions)===null||a===void 0?void 0:a.map((i,o)=>{let s=!1,c=m=>{if(m.preventDefault(),s)return;s=!0;let f=fc(t.state.field(ta).diagnostics,e);f&&i.apply(t,f.from,f.to)},{name:A}=i,d=r[o]?A.indexOf(r[o]):-1,u=d<0?A:[A.slice(0,d),Se("u",A.slice(d,d+1)),A.slice(d+1)],p=i.markClass?" "+i.markClass:"";return Se("button",{type:"button",class:"cm-diagnosticAction"+p,onclick:c,onmousedown:c,"aria-label":` Action: ${A}${d<0?"":` (access key "${r[o]})"`}.`},u)}),e.source&&Se("div",{class:"cm-diagnosticSource"},e.source))}var d_=class extends pn{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return Se("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}},sg=class{constructor(e,n){this.diagnostic=n,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=I2(e,n,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}},IA=class t{constructor(e){this.view=e,this.items=[];let n=r=>{if(r.keyCode==27)_2(this.view),this.view.focus();else if(r.keyCode==38||r.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(r.keyCode==40||r.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(r.keyCode==36)this.moveSelection(0);else if(r.keyCode==35)this.moveSelection(this.items.length-1);else if(r.keyCode==13)this.view.focus();else if(r.keyCode>=65&&r.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:i}=this.items[this.selectedIndex],o=Q2(i.actions);for(let s=0;s<o.length;s++)if(o[s].toUpperCase().charCodeAt(0)==r.keyCode){let c=fc(this.view.state.field(ta).diagnostics,i);c&&i.actions[s].apply(e,c.from,c.to)}}else return;r.preventDefault()},a=r=>{for(let i=0;i<this.items.length;i++)this.items[i].dom.contains(r.target)&&this.moveSelection(i)};this.list=Se("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:n,onclick:a}),this.dom=Se("div",{class:"cm-panel-lint"},this.list,Se("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>_2(this.view)},"\xD7")),this.update()}get selectedIndex(){let e=this.view.state.field(ta).selected;if(!e)return-1;for(let n=0;n<this.items.length;n++)if(this.items[n].diagnostic==e.diagnostic)return n;return-1}update(){let{diagnostics:e,selected:n}=this.view.state.field(ta),a=0,r=!1,i=null,o=new Set;for(e.between(0,this.view.state.doc.length,(s,c,{spec:A})=>{for(let d of A.diagnostics){if(o.has(d))continue;o.add(d);let u=-1,p;for(let m=a;m<this.items.length;m++)if(this.items[m].diagnostic==d){u=m;break}u<0?(p=new sg(this.view,d),this.items.splice(a,0,p),r=!0):(p=this.items[u],u>a&&(this.items.splice(a,u-a),r=!0)),n&&p.diagnostic==n.diagnostic?p.dom.hasAttribute("aria-selected")||(p.dom.setAttribute("aria-selected","true"),i=p):p.dom.hasAttribute("aria-selected")&&p.dom.removeAttribute("aria-selected"),a++}});a<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)r=!0,this.items.pop();this.items.length==0&&(this.items.push(new sg(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),r=!0),i?(this.list.setAttribute("aria-activedescendant",i.id),this.view.requestMeasure({key:this,read:()=>({sel:i.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:s,panel:c})=>{let A=c.height/this.list.offsetHeight;s.top<c.top?this.list.scrollTop-=(c.top-s.top)/A:s.bottom>c.bottom&&(this.list.scrollTop+=(s.bottom-c.bottom)/A)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),r&&this.sync()}sync(){let e=this.list.firstChild;function n(){let a=e;e=a.nextSibling,a.remove()}for(let a of this.items)if(a.dom.parentNode==this.list){for(;e!=a.dom;)n();e=a.dom.nextSibling}else this.list.insertBefore(a.dom,e);for(;e;)n()}moveSelection(e){if(this.selectedIndex<0)return;let n=this.view.state.field(ta),a=fc(n.diagnostics,this.items[e].diagnostic);a&&this.view.dispatch({selection:{anchor:a.from,head:a.to},scrollIntoView:!0,effects:v2.of(a)})}static open(e){return new t(e)}};function vK(t,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${e}>${encodeURIComponent(t)}</svg>')`}function ig(t){return vK(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${t}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}var EK=T.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:ig("#d11")},".cm-lintRange-warning":{backgroundImage:ig("orange")},".cm-lintRange-info":{backgroundImage:ig("#999")},".cm-lintRange-hint":{backgroundImage:ig("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}}});function QK(t){return t=="error"?4:t=="warning"?3:t=="info"?2:1}function IK(t){let e="hint",n=1;for(let a of t){let r=QK(a.severity);r>n&&(n=r,e=a.severity)}return e}var DK=[ta,T.decorations.compute([ta],t=>{let{selected:e,panel:n}=t.field(ta);return!e||!n||e.from==e.to?X.none:X.set([kK.range(e.from,e.to)])}),dF(CK,{hideOn:yK}),EK];var g_=class t{constructor(e,n,a,r,i,o,s,c,A,d=0,u){this.p=e,this.stack=n,this.state=a,this.reducePos=r,this.pos=i,this.score=o,this.buffer=s,this.bufferBase=c,this.curContext=A,this.lookAhead=d,this.parent=u}toString(){return`[${this.stack.filter((e,n)=>n%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,n,a=0){let r=e.parser.context;return new t(e,[],n,a,a,0,[],0,r?new cg(r,r.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,n){this.stack.push(this.state,n,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var n;let a=e>>19,r=e&65535,{parser:i}=this.p,o=this.reducePos<this.pos-25&&this.setLookAhead(this.pos),s=i.dynamicPrecedence(r);if(s&&(this.score+=s),a==0){this.pushState(i.getGoto(this.state,r,!0),this.reducePos),r<i.minRepeatTerm&&this.storeNode(r,this.reducePos,this.reducePos,o?8:4,!0),this.reduceContext(r,this.reducePos);return}let c=this.stack.length-(a-1)*3-(e&262144?6:0),A=c?this.stack[c-2]:this.p.ranges[0].from,d=this.reducePos-A;d>=2e3&&!(!((n=this.p.parser.nodeSet.types[r])===null||n===void 0)&&n.isAnonymous)&&(A==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=d):this.p.lastBigReductionSize<d&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=A,this.p.lastBigReductionSize=d));let u=c?this.stack[c-1]:0,p=this.bufferBase+this.buffer.length-u;if(r<i.minRepeatTerm||e&131072){let m=i.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(r,A,m,p+4,!0)}if(e&262144)this.state=this.stack[c];else{let m=this.stack[c-3];this.state=i.getGoto(m,r,!0)}for(;this.stack.length>c;)this.stack.pop();this.reduceContext(r,A)}storeNode(e,n,a,r=4,i=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]<this.buffer.length+this.bufferBase)){let o=this,s=this.buffer.length;if(s==0&&o.parent&&(s=o.bufferBase-o.parent.bufferBase,o=o.parent),s>0&&o.buffer[s-4]==0&&o.buffer[s-1]>-1){if(n==a)return;if(o.buffer[s-2]>=n){o.buffer[s-2]=a;return}}}if(!i||this.pos==a)this.buffer.push(e,n,a,r);else{let o=this.buffer.length;if(o>0&&(this.buffer[o-4]!=0||this.buffer[o-1]<0)){let s=!1;for(let c=o;c>0&&this.buffer[c-2]>a;c-=4)if(this.buffer[c-1]>=0){s=!0;break}if(s)for(;o>0&&this.buffer[o-2]>a;)this.buffer[o]=this.buffer[o-4],this.buffer[o+1]=this.buffer[o-3],this.buffer[o+2]=this.buffer[o-2],this.buffer[o+3]=this.buffer[o-1],o-=4,r>4&&(r-=4)}this.buffer[o]=e,this.buffer[o+1]=n,this.buffer[o+2]=a,this.buffer[o+3]=r}}shift(e,n,a,r){if(e&131072)this.pushState(e&65535,this.pos);else if(e&262144)this.pos=r,this.shiftContext(n,a),n<=this.p.parser.maxNode&&this.buffer.push(n,a,r,4);else{let i=e,{parser:o}=this.p;(r>this.pos||n<=o.maxNode)&&(this.pos=r,o.stateFlag(i,1)||(this.reducePos=r)),this.pushState(i,a),this.shiftContext(n,a),n<=o.maxNode&&this.buffer.push(n,a,r,4)}}apply(e,n,a,r){e&65536?this.reduce(e):this.shift(e,n,a,r)}useNode(e,n){let a=this.p.reused.length-1;(a<0||this.p.reused[a]!=e)&&(this.p.reused.push(e),a++);let r=this.pos;this.reducePos=this.pos=r+e.length,this.pushState(n,r),this.buffer.push(a,r,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let e=this,n=e.buffer.length;for(;n>0&&e.buffer[n-2]>e.reducePos;)n-=4;let a=e.buffer.slice(n),r=e.bufferBase+n;for(;e&&r==e.bufferBase;)e=e.parent;return new t(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,a,r,this.curContext,this.lookAhead,e)}recoverByDelete(e,n){let a=e<=this.p.parser.maxNode;a&&this.storeNode(e,this.pos,n,4),this.storeNode(0,this.pos,n,a?8:4),this.pos=this.reducePos=n,this.score-=190}canShift(e){for(let n=new f_(this);;){let a=this.p.parser.stateSlot(n.state,4)||this.p.parser.hasAction(n.state,e);if(a==0)return!1;if(!(a&65536))return!0;n.reduce(a)}}recoverByInsert(e){if(this.stack.length>=300)return[];let n=this.p.parser.nextStates(this.state);if(n.length>8||this.stack.length>=120){let r=[];for(let i=0,o;i<n.length;i+=2)(o=n[i+1])!=this.state&&this.p.parser.hasAction(o,e)&&r.push(n[i],o);if(this.stack.length<120)for(let i=0;r.length<8&&i<n.length;i+=2){let o=n[i+1];r.some((s,c)=>c&1&&s==o)||r.push(n[i],o)}n=r}let a=[];for(let r=0;r<n.length&&a.length<4;r+=2){let i=n[r+1];if(i==this.state)continue;let o=this.split();o.pushState(i,this.pos),o.storeNode(0,o.pos,o.pos,4,!0),o.shiftContext(n[r],this.pos),o.reducePos=this.pos,o.score-=200,a.push(o)}return a}forceReduce(){let{parser:e}=this.p,n=e.stateSlot(this.state,5);if(!(n&65536))return!1;if(!e.validAction(this.state,n)){let a=n>>19,r=n&65535,i=this.stack.length-a*3;if(i<0||e.getGoto(this.stack[i],r,!1)<0){let o=this.findForcedReduction();if(o==null)return!1;n=o}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(n),!0}findForcedReduction(){let{parser:e}=this.p,n=[],a=(r,i)=>{if(!n.includes(r))return n.push(r),e.allActions(r,o=>{if(!(o&393216))if(o&65536){let s=(o>>19)-i;if(s>1){let c=o&65535,A=this.stack.length-s*3;if(A>=0&&e.getGoto(this.stack[A],c,!1)>=0)return s<<19|65536|c}}else{let s=a(o,i+1);if(s!=null)return s}})};return a(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:e}=this.p;return e.data[e.stateSlot(this.state,1)]==65535&&!e.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let n=0;n<this.stack.length;n+=3)if(this.stack[n]!=e.stack[n])return!1;return!0}get parser(){return this.p.parser}dialectEnabled(e){return this.p.parser.dialect.flags[e]}shiftContext(e,n){this.curContext&&this.updateContext(this.curContext.tracker.shift(this.curContext.context,e,this,this.p.stream.reset(n)))}reduceContext(e,n){this.curContext&&this.updateContext(this.curContext.tracker.reduce(this.curContext.context,e,this,this.p.stream.reset(n)))}emitContext(){let e=this.buffer.length-1;(e<0||this.buffer[e]!=-3)&&this.buffer.push(this.curContext.hash,this.pos,this.pos,-3)}emitLookAhead(){let e=this.buffer.length-1;(e<0||this.buffer[e]!=-4)&&this.buffer.push(this.lookAhead,this.pos,this.pos,-4)}updateContext(e){if(e!=this.curContext.context){let n=new cg(this.curContext.tracker,e);n.hash!=this.curContext.hash&&this.emitContext(),this.curContext=n}}setLookAhead(e){return e<=this.lookAhead?!1:(this.emitLookAhead(),this.lookAhead=e,!0)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}},cg=class{constructor(e,n){this.tracker=e,this.context=n,this.hash=e.strict?e.hash(n):0}},f_=class{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let n=e&65535,a=e>>19;a==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(a-1)*3;let r=this.start.p.parser.getGoto(this.stack[this.base-3],n,!0);this.state=r}},b_=class t{constructor(e,n,a){this.stack=e,this.pos=n,this.index=a,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(e,n=e.bufferBase+e.buffer.length){return new t(e,n,n-e.bufferBase)}maybeNext(){let e=this.stack.parent;e!=null&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new t(this.stack,this.pos,this.index)}};function DA(t,e=Uint16Array){if(typeof t!="string")return t;let n=null;for(let a=0,r=0;a<t.length;){let i=0;for(;;){let o=t.charCodeAt(a++),s=!1;if(o==126){i=65535;break}o>=92&&o--,o>=34&&o--;let c=o-32;if(c>=46&&(c-=46,s=!0),i+=c,s)break;i*=46}n?n[r++]=i:n=new e(i)}return n}var bc=class{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}},D2=new bc,h_=class{constructor(e,n){this.input=e,this.ranges=n,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=D2,this.rangeIndex=0,this.pos=this.chunkPos=n[0].from,this.range=n[0],this.end=n[n.length-1].to,this.readNext()}resolveOffset(e,n){let a=this.range,r=this.rangeIndex,i=this.pos+e;for(;i<a.from;){if(!r)return null;let o=this.ranges[--r];i-=a.from-o.to,a=o}for(;n<0?i>a.to:i>=a.to;){if(r==this.ranges.length-1)return null;let o=this.ranges[++r];i+=o.from-a.to,a=o}return i}clipPos(e){if(e>=this.range.from&&e<this.range.to)return e;for(let n of this.ranges)if(n.to>e)return Math.max(e,n.from);return this.end}peek(e){let n=this.chunkOff+e,a,r;if(n>=0&&n<this.chunk.length)a=this.pos+e,r=this.chunk.charCodeAt(n);else{let i=this.resolveOffset(e,1);if(i==null)return-1;if(a=i,a>=this.chunk2Pos&&a<this.chunk2Pos+this.chunk2.length)r=this.chunk2.charCodeAt(a-this.chunk2Pos);else{let o=this.rangeIndex,s=this.range;for(;s.to<=a;)s=this.ranges[++o];this.chunk2=this.input.chunk(this.chunk2Pos=a),a+this.chunk2.length>s.to&&(this.chunk2=this.chunk2.slice(0,s.to-a)),r=this.chunk2.charCodeAt(0)}}return a>=this.token.lookAhead&&(this.token.lookAhead=a+1),r}acceptToken(e,n=0){let a=n?this.resolveOffset(n,-1):this.pos;if(a==null||a<this.token.start)throw new RangeError("Token end out of bounds");this.token.value=e,this.token.end=a}acceptTokenTo(e,n){this.token.value=e,this.token.end=n}getChunk(){if(this.pos>=this.chunk2Pos&&this.pos<this.chunk2Pos+this.chunk2.length){let{chunk:e,chunkPos:n}=this;this.chunk=this.chunk2,this.chunkPos=this.chunk2Pos,this.chunk2=e,this.chunk2Pos=n,this.chunkOff=this.pos-this.chunkPos}else{this.chunk2=this.chunk,this.chunk2Pos=this.chunkPos;let e=this.input.chunk(this.pos),n=this.pos+e.length;this.chunk=n>this.range.to?e.slice(0,this.range.to-this.pos):e,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(e,n){if(n?(this.token=n,n.start=e,n.lookAhead=e+1,n.value=n.extended=-1):this.token=D2,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e<this.range.from;)this.range=this.ranges[--this.rangeIndex];for(;e>=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e<this.chunkPos+this.chunk.length?this.chunkOff=e-this.chunkPos:(this.chunk="",this.chunkOff=0),this.readNext()}return this}read(e,n){if(e>=this.chunkPos&&n<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,n-this.chunkPos);if(e>=this.chunk2Pos&&n<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(e-this.chunk2Pos,n-this.chunk2Pos);if(e>=this.range.from&&n<=this.range.to)return this.input.read(e,n);let a="";for(let r of this.ranges){if(r.from>=n)break;r.to>e&&(a+=this.input.read(Math.max(r.from,e),Math.min(r.to,n)))}return a}},Ui=class{constructor(e,n){this.data=e,this.id=n}token(e,n){let{parser:a}=n.p;L2(this.data,e,n,this.id,a.data,a.tokenPrecTable)}};Ui.prototype.contextual=Ui.prototype.fallback=Ui.prototype.extend=!1;var Hi=class{constructor(e,n,a){this.precTable=n,this.elseToken=a,this.data=typeof e=="string"?DA(e):e}token(e,n){let a=e.pos,r=0;for(;;){let i=e.next<0,o=e.resolveOffset(1,1);if(L2(this.data,e,n,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(i||r++,o==null)break;e.reset(o,e.token)}r&&(e.reset(a,e.token),e.acceptToken(this.elseToken,r))}};Hi.prototype.contextual=Ui.prototype.fallback=Ui.prototype.extend=!1;var Ot=class{constructor(e,n={}){this.token=e,this.contextual=!!n.contextual,this.fallback=!!n.fallback,this.extend=!!n.extend}};function L2(t,e,n,a,r,i){let o=0,s=1<<a,{dialect:c}=n.p.parser;e:for(;s&t[o];){let A=t[o+1];for(let m=o+3;m<A;m+=2)if((t[m+1]&s)>0){let f=t[m];if(c.allows(f)&&(e.token.value==-1||e.token.value==f||SK(f,e.token.value,r,i))){e.acceptToken(f);break}}let d=e.next,u=0,p=t[o+2];if(e.next<0&&p>u&&t[A+p*3-3]==65535){o=t[A+p*3-1];continue e}for(;u<p;){let m=u+p>>1,f=A+m+(m<<1),h=t[f],w=t[f+1]||65536;if(d<h)p=m;else if(d>=w)u=m+1;else{o=t[f+2],e.advance();continue e}}break}}function F2(t,e,n){for(let a=e,r;(r=t[a])!=65535;a++)if(r==n)return a-e;return-1}function SK(t,e,n,a){let r=F2(n,a,e);return r<0||F2(n,a,t)<r}var na=typeof process<"u"&&process.env&&/\bparse\b/.test(process.env.LOG),p_=null;function S2(t,e,n){let a=t.cursor(Ce.IncludeAnonymous);for(a.moveTo(e);;)if(!(n<0?a.childBefore(e):a.childAfter(e)))for(;;){if((n<0?a.to<e:a.from>e)&&!a.type.isError)return n<0?Math.max(0,Math.min(a.to-1,e-25)):Math.min(t.length,Math.max(a.from+1,e+25));if(n<0?a.prevSibling():a.nextSibling())break;if(!a.parent())return n<0?0:t.length}}var y_=class{constructor(e,n){this.fragments=e,this.nodeSet=n,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?S2(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?S2(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(e<this.nextStart)return null;for(;this.fragment&&this.safeTo<=e;)this.nextFragment();if(!this.fragment)return null;for(;;){let n=this.trees.length-1;if(n<0)return this.nextFragment(),null;let a=this.trees[n],r=this.index[n];if(r==a.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let i=a.children[r],o=this.start[n]+a.positions[r];if(o>e)return this.nextStart=o,null;if(i instanceof ve){if(o==e){if(o<this.safeFrom)return null;let s=o+i.length;if(s<=this.safeTo){let c=i.prop(ae.lookAhead);if(!c||s+c<this.fragment.to)return i}}this.index[n]++,o+i.length>=Math.max(this.safeFrom,e)&&(this.trees.push(i),this.start.push(o),this.index.push(0))}else this.index[n]++,this.nextStart=o+i.length}}},w_=class{constructor(e,n){this.stream=n,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(a=>new bc)}getActions(e){let n=0,a=null,{parser:r}=e.p,{tokenizers:i}=r,o=r.stateSlot(e.state,3),s=e.curContext?e.curContext.hash:0,c=0;for(let A=0;A<i.length;A++){if(!(1<<A&o))continue;let d=i[A],u=this.tokens[A];if(!(a&&!d.fallback)&&((d.contextual||u.start!=e.pos||u.mask!=o||u.context!=s)&&(this.updateCachedToken(u,d,e),u.mask=o,u.context=s),u.lookAhead>u.end+25&&(c=Math.max(u.lookAhead,c)),u.value!=0)){let p=n;if(u.extended>-1&&(n=this.addActions(e,u.extended,u.end,n)),n=this.addActions(e,u.value,u.end,n),!d.extend&&(a=u,n>p))break}}for(;this.actions.length>n;)this.actions.pop();return c&&e.setLookAhead(c),!a&&e.pos==this.stream.end&&(a=new bc,a.value=e.p.parser.eofTerm,a.start=a.end=e.pos,n=this.addActions(e,a.value,a.end,n)),this.mainToken=a,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let n=new bc,{pos:a,p:r}=e;return n.start=a,n.end=Math.min(a+1,r.stream.end),n.value=a==r.stream.end?r.parser.eofTerm:0,n}updateCachedToken(e,n,a){let r=this.stream.clipPos(a.pos);if(n.token(this.stream.reset(r,e),a),e.value>-1){let{parser:i}=a.p;for(let o=0;o<i.specialized.length;o++)if(i.specialized[o]==e.value){let s=i.specializers[o](this.stream.read(e.start,e.end),a);if(s>=0&&a.p.parser.dialect.allows(s>>1)){s&1?e.extended=s>>1:e.value=s>>1;break}}}else e.value=0,e.end=this.stream.clipPos(r+1)}putAction(e,n,a,r){for(let i=0;i<r;i+=3)if(this.actions[i]==e)return r;return this.actions[r++]=e,this.actions[r++]=n,this.actions[r++]=a,r}addActions(e,n,a,r){let{state:i}=e,{parser:o}=e.p,{data:s}=o;for(let c=0;c<2;c++)for(let A=o.stateSlot(i,c?2:1);;A+=3){if(s[A]==65535)if(s[A+1]==1)A=Mr(s,A+2);else{r==0&&s[A+1]==2&&(r=this.putAction(Mr(s,A+2),n,a,r));break}s[A]==n&&(r=this.putAction(Mr(s,A+1),n,a,r))}return r}},k_=class{constructor(e,n,a,r){this.parser=e,this.input=n,this.ranges=r,this.recovering=0,this.nextStackID=9812,this.minStackPos=0,this.reused=[],this.stoppedAt=null,this.lastBigReductionStart=-1,this.lastBigReductionSize=0,this.bigReductionCount=0,this.stream=new h_(n,r),this.tokens=new w_(e,this.stream),this.topTerm=e.top[1];let{from:i}=r[0];this.stacks=[g_.start(this,e.top[0],i)],this.fragments=a.length&&this.stream.end-i>e.bufferLength*4?new y_(a,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,n=this.minStackPos,a=this.stacks=[],r,i;if(this.bigReductionCount>300&&e.length==1){let[o]=e;for(;o.forceReduce()&&o.stack.length&&o.stack[o.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let o=0;o<e.length;o++){let s=e[o];for(;;){if(this.tokens.mainToken=null,s.pos>n)a.push(s);else{if(this.advanceStack(s,a,e))continue;{r||(r=[],i=[]),r.push(s);let c=this.tokens.getMainToken(s);i.push(c.value,c.end)}}break}}if(!a.length){let o=r&&OK(r);if(o)return na&&console.log("Finish with "+this.stackID(o)),this.stackToTree(o);if(this.parser.strict)throw na&&r&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+n);this.recovering||(this.recovering=5)}if(this.recovering&&r){let o=this.stoppedAt!=null&&r[0].pos>this.stoppedAt?r[0]:this.runRecovery(r,i,a);if(o)return na&&console.log("Force-finish "+this.stackID(o)),this.stackToTree(o.forceAll())}if(this.recovering){let o=this.recovering==1?1:this.recovering*3;if(a.length>o)for(a.sort((s,c)=>c.score-s.score);a.length>o;)a.pop();a.some(s=>s.reducePos>n)&&this.recovering--}else if(a.length>1){e:for(let o=0;o<a.length-1;o++){let s=a[o];for(let c=o+1;c<a.length;c++){let A=a[c];if(s.sameState(A)||s.buffer.length>500&&A.buffer.length>500)if((s.score-A.score||s.buffer.length-A.buffer.length)>0)a.splice(c--,1);else{a.splice(o--,1);continue e}}}a.length>12&&(a.sort((o,s)=>s.score-o.score),a.splice(12,a.length-12))}this.minStackPos=a[0].pos;for(let o=1;o<a.length;o++)a[o].pos<this.minStackPos&&(this.minStackPos=a[o].pos);return null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=e}advanceStack(e,n,a){let r=e.pos,{parser:i}=this,o=na?this.stackID(e)+" -> ":"";if(this.stoppedAt!=null&&r>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let A=e.curContext&&e.curContext.tracker.strict,d=A?e.curContext.hash:0;for(let u=this.fragments.nodeAt(r);u;){let p=this.parser.nodeSet.types[u.type.id]==u.type?i.getGoto(e.state,u.type.id):-1;if(p>-1&&u.length&&(!A||(u.prop(ae.contextHash)||0)==d))return e.useNode(u,p),na&&console.log(o+this.stackID(e)+` (via reuse of ${i.getName(u.type.id)})`),!0;if(!(u instanceof ve)||u.children.length==0||u.positions[0]>0)break;let m=u.children[0];if(m instanceof ve&&u.positions[0]==0)u=m;else break}}let s=i.stateSlot(e.state,4);if(s>0)return e.reduce(s),na&&console.log(o+this.stackID(e)+` (via always-reduce ${i.getName(s&65535)})`),!0;if(e.stack.length>=8400)for(;e.stack.length>6e3&&e.forceReduce(););let c=this.tokens.getActions(e);for(let A=0;A<c.length;){let d=c[A++],u=c[A++],p=c[A++],m=A==c.length||!a,f=m?e:e.split(),h=this.tokens.mainToken;if(f.apply(d,u,h?h.start:f.pos,p),na&&console.log(o+this.stackID(f)+` (via ${d&65536?`reduce of ${i.getName(d&65535)}`:"shift"} for ${i.getName(u)} @ ${r}${f==e?"":", split"})`),m)return!0;f.pos>r?n.push(f):a.push(f)}return!1}advanceFully(e,n){let a=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>a)return O2(e,n),!0}}runRecovery(e,n,a){let r=null,i=!1;for(let o=0;o<e.length;o++){let s=e[o],c=n[o<<1],A=n[(o<<1)+1],d=na?this.stackID(s)+" -> ":"";if(s.deadEnd&&(i||(i=!0,s.restart(),na&&console.log(d+this.stackID(s)+" (restarted)"),this.advanceFully(s,a))))continue;let u=s.split(),p=d;for(let m=0;m<10&&u.forceReduce()&&(na&&console.log(p+this.stackID(u)+" (via force-reduce)"),!this.advanceFully(u,a));m++)na&&(p=this.stackID(u)+" -> ");for(let m of s.recoverByInsert(c))na&&console.log(d+this.stackID(m)+" (via recover-insert)"),this.advanceFully(m,a);this.stream.end>s.pos?(A==s.pos&&(A++,c=0),s.recoverByDelete(c,A),na&&console.log(d+this.stackID(s)+` (via recover-delete ${this.parser.getName(c)})`),O2(s,a)):(!r||r.score<s.score)&&(r=s)}return r}stackToTree(e){return e.close(),ve.build({buffer:b_.create(e),nodeSet:this.parser.nodeSet,topID:this.topTerm,maxBufferLength:this.parser.bufferLength,reused:this.reused,start:this.ranges[0].from,length:e.pos-this.ranges[0].from,minRepeatType:this.parser.minRepeatTerm})}stackID(e){let n=(p_||(p_=new WeakMap)).get(e);return n||p_.set(e,n=String.fromCodePoint(this.nextStackID++)),n+e}};function O2(t,e){for(let n=0;n<e.length;n++){let a=e[n];if(a.pos==t.pos&&a.sameState(t)){e[n].score<t.score&&(e[n]=t);return}}e.push(t)}var C_=class{constructor(e,n,a){this.source=e,this.flags=n,this.disabled=a}allows(e){return!this.disabled||this.disabled[e]==0}},m_=t=>t,hc=class{constructor(e){this.start=e.start,this.shift=e.shift||m_,this.reduce=e.reduce||m_,this.reuse=e.reuse||m_,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}},gr=class t extends $i{constructor(e){if(super(),this.wrappers=[],e.version!=14)throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (14)`);let n=e.nodeNames.split(" ");this.minRepeatTerm=n.length;for(let s=0;s<e.repeatNodeCount;s++)n.push("");let a=Object.keys(e.topRules).map(s=>e.topRules[s][1]),r=[];for(let s=0;s<n.length;s++)r.push([]);function i(s,c,A){r[s].push([c,c.deserialize(String(A))])}if(e.nodeProps)for(let s of e.nodeProps){let c=s[0];typeof c=="string"&&(c=ae[c]);for(let A=1;A<s.length;){let d=s[A++];if(d>=0)i(d,c,s[A++]);else{let u=s[A+-d];for(let p=-d;p>0;p--)i(s[A++],c,u);A++}}}this.nodeSet=new Ni(n.map((s,c)=>pt.define({name:c>=this.minRepeatTerm?void 0:s,id:c,props:r[c],top:a.indexOf(c)>-1,error:c==0,skipped:e.skippedNodes&&e.skippedNodes.indexOf(c)>-1}))),e.propSources&&(this.nodeSet=this.nodeSet.extend(...e.propSources)),this.strict=!1,this.bufferLength=1024;let o=DA(e.tokenData);this.context=e.context,this.specializerSpecs=e.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let s=0;s<this.specializerSpecs.length;s++)this.specialized[s]=this.specializerSpecs[s].term;this.specializers=this.specializerSpecs.map(N2),this.states=DA(e.states,Uint32Array),this.data=DA(e.stateData),this.goto=DA(e.goto),this.maxTerm=e.maxTerm,this.tokenizers=e.tokenizers.map(s=>typeof s=="number"?new Ui(o,s):s),this.topRules=e.topRules,this.dialects=e.dialects||{},this.dynamicPrecedences=e.dynamicPrecedences||null,this.tokenPrecTable=e.tokenPrec,this.termNames=e.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,n,a){let r=new k_(this,e,n,a);for(let i of this.wrappers)r=i(r,e,n,a);return r}getGoto(e,n,a=!1){let r=this.goto;if(n>=r[0])return-1;for(let i=r[n+1];;){let o=r[i++],s=o&1,c=r[i++];if(s&&a)return c;for(let A=i+(o>>1);i<A;i++)if(r[i]==e)return c;if(s)return-1}}hasAction(e,n){let a=this.data;for(let r=0;r<2;r++)for(let i=this.stateSlot(e,r?2:1),o;;i+=3){if((o=a[i])==65535)if(a[i+1]==1)o=a[i=Mr(a,i+2)];else{if(a[i+1]==2)return Mr(a,i+2);break}if(o==n||o==0)return Mr(a,i+1)}return 0}stateSlot(e,n){return this.states[e*6+n]}stateFlag(e,n){return(this.stateSlot(e,0)&n)>0}validAction(e,n){return!!this.allActions(e,a=>a==n?!0:null)}allActions(e,n){let a=this.stateSlot(e,4),r=a?n(a):void 0;for(let i=this.stateSlot(e,1);r==null;i+=3){if(this.data[i]==65535)if(this.data[i+1]==1)i=Mr(this.data,i+2);else break;r=n(Mr(this.data,i+1))}return r}nextStates(e){let n=[];for(let a=this.stateSlot(e,1);;a+=3){if(this.data[a]==65535)if(this.data[a+1]==1)a=Mr(this.data,a+2);else break;if(!(this.data[a+2]&1)){let r=this.data[a+1];n.some((i,o)=>o&1&&i==r)||n.push(this.data[a],r)}}return n}configure(e){let n=Object.assign(Object.create(t.prototype),this);if(e.props&&(n.nodeSet=this.nodeSet.extend(...e.props)),e.top){let a=this.topRules[e.top];if(!a)throw new RangeError(`Invalid top rule name ${e.top}`);n.top=a}return e.tokenizers&&(n.tokenizers=this.tokenizers.map(a=>{let r=e.tokenizers.find(i=>i.from==a);return r?r.to:a})),e.specializers&&(n.specializers=this.specializers.slice(),n.specializerSpecs=this.specializerSpecs.map((a,r)=>{let i=e.specializers.find(s=>s.from==a.external);if(!i)return a;let o=Object.assign(Object.assign({},a),{external:i.to});return n.specializers[r]=N2(o),o})),e.contextTracker&&(n.context=e.contextTracker),e.dialect&&(n.dialect=this.parseDialect(e.dialect)),e.strict!=null&&(n.strict=e.strict),e.wrap&&(n.wrappers=n.wrappers.concat(e.wrap)),e.bufferLength!=null&&(n.bufferLength=e.bufferLength),n}hasWrappers(){return this.wrappers.length>0}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let n=this.dynamicPrecedences;return n==null?0:n[e]||0}parseDialect(e){let n=Object.keys(this.dialects),a=n.map(()=>!1);if(e)for(let i of e.split(" ")){let o=n.indexOf(i);o>=0&&(a[o]=!0)}let r=null;for(let i=0;i<n.length;i++)if(!a[i])for(let o=this.dialects[n[i]],s;(s=this.data[o++])!=65535;)(r||(r=new Uint8Array(this.maxTerm+1)))[s]=1;return new C_(e,a,r)}static deserialize(e){return new t(e)}};function Mr(t,e){return t[e]|t[e+1]<<16}function OK(t){let e=null;for(let n of t){let a=n.p.stoppedAt;(n.pos==n.p.stream.end||a!=null&&n.pos>a)&&n.p.parser.stateFlag(n.state,2)&&(!e||e.score<n.score)&&(e=n)}return e}function N2(t){if(t.external){let e=t.extend?1:0;return(n,a)=>t.external(n,a)<<1|e}return t.get}var NK=316,LK=317,$2=1,$K=2,RK=3,jK=4,PK=318,MK=320,TK=321,qK=5,GK=6,zK=0,B_=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],R2=125,UK=59,x_=47,HK=42,ZK=43,YK=45,WK=60,KK=44,JK=63,VK=46,XK=91,eJ=new hc({start:!1,shift(t,e){return e==qK||e==GK||e==MK?t:e==TK},strict:!1}),tJ=new Ot((t,e)=>{let{next:n}=t;(n==R2||n==-1||e.context)&&t.acceptToken(PK)},{contextual:!0,fallback:!0}),nJ=new Ot((t,e)=>{let{next:n}=t,a;B_.indexOf(n)>-1||n==x_&&((a=t.peek(1))==x_||a==HK)||n!=R2&&n!=UK&&n!=-1&&!e.context&&t.acceptToken(NK)},{contextual:!0}),aJ=new Ot((t,e)=>{t.next==XK&&!e.context&&t.acceptToken(LK)},{contextual:!0}),rJ=new Ot((t,e)=>{let{next:n}=t;if(n==ZK||n==YK){if(t.advance(),n==t.next){t.advance();let a=!e.context&&e.canShift($2);t.acceptToken(a?$2:$K)}}else n==JK&&t.peek(1)==VK&&(t.advance(),t.advance(),(t.next<48||t.next>57)&&t.acceptToken(RK))},{contextual:!0});function __(t,e){return t>=65&&t<=90||t>=97&&t<=122||t==95||t>=192||!e&&t>=48&&t<=57}var iJ=new Ot((t,e)=>{if(t.next!=WK||!e.dialectEnabled(zK)||(t.advance(),t.next==x_))return;let n=0;for(;B_.indexOf(t.next)>-1;)t.advance(),n++;if(__(t.next,!0)){for(t.advance(),n++;__(t.next,!1);)t.advance(),n++;for(;B_.indexOf(t.next)>-1;)t.advance(),n++;if(t.next==KK)return;for(let a=0;;a++){if(a==7){if(!__(t.next,!0))return;break}if(t.next!="extends".charCodeAt(a))break;t.advance(),n++}}t.acceptToken(jK,-n)}),oJ=Vn({"get set async static":B.modifier,"for while do if else switch try catch finally return throw break continue default case defer":B.controlKeyword,"in of await yield void typeof delete instanceof as satisfies":B.operatorKeyword,"let var const using function class extends":B.definitionKeyword,"import export from":B.moduleKeyword,"with debugger new":B.keyword,TemplateString:B.special(B.string),super:B.atom,BooleanLiteral:B.bool,this:B.self,null:B.null,Star:B.modifier,VariableName:B.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":B.function(B.variableName),VariableDefinition:B.definition(B.variableName),Label:B.labelName,PropertyName:B.propertyName,PrivatePropertyName:B.special(B.propertyName),"CallExpression/MemberExpression/PropertyName":B.function(B.propertyName),"FunctionDeclaration/VariableDefinition":B.function(B.definition(B.variableName)),"ClassDeclaration/VariableDefinition":B.definition(B.className),"NewExpression/VariableName":B.className,PropertyDefinition:B.definition(B.propertyName),PrivatePropertyDefinition:B.definition(B.special(B.propertyName)),UpdateOp:B.updateOperator,"LineComment Hashbang":B.lineComment,BlockComment:B.blockComment,Number:B.number,String:B.string,Escape:B.escape,ArithOp:B.arithmeticOperator,LogicOp:B.logicOperator,BitOp:B.bitwiseOperator,CompareOp:B.compareOperator,RegExp:B.regexp,Equals:B.definitionOperator,Arrow:B.function(B.punctuation),": Spread":B.punctuation,"( )":B.paren,"[ ]":B.squareBracket,"{ }":B.brace,"InterpolationStart InterpolationEnd":B.special(B.brace),".":B.derefOperator,", ;":B.separator,"@":B.meta,TypeName:B.typeName,TypeDefinition:B.definition(B.typeName),"type enum interface implements namespace module declare":B.definitionKeyword,"abstract global Privacy readonly override":B.modifier,"is keyof unique infer asserts":B.operatorKeyword,JSXAttributeValue:B.attributeValue,JSXText:B.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":B.angleBracket,"JSXIdentifier JSXNameSpacedName":B.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":B.attributeName,"JSXBuiltin/JSXIdentifier":B.standard(B.tagName)}),sJ={__proto__:null,export:20,as:25,from:33,default:36,async:41,function:42,in:52,out:55,const:56,extends:60,this:64,true:72,false:72,null:84,void:88,typeof:92,super:108,new:142,delete:154,yield:163,await:167,class:172,public:235,private:235,protected:235,readonly:237,instanceof:256,satisfies:259,import:292,keyof:349,unique:353,infer:359,asserts:395,is:397,abstract:417,implements:419,type:421,let:424,var:426,using:429,interface:435,enum:439,namespace:445,module:447,declare:451,global:455,defer:471,for:476,of:485,while:488,with:492,do:496,if:500,else:502,switch:506,case:512,try:518,catch:522,finally:526,return:530,throw:534,break:538,continue:542,debugger:546},cJ={__proto__:null,async:129,get:131,set:133,declare:195,public:197,private:197,protected:197,static:199,abstract:201,override:203,readonly:209,accessor:211,new:401},lJ={__proto__:null,"<":193},j2=gr.deserialize({version:14,states:"$F|Q%TQlOOO%[QlOOO'_QpOOP(lO`OOO*zQ!0MxO'#CiO+RO#tO'#CjO+aO&jO'#CjO+oO#@ItO'#DaO.QQlO'#DgO.bQlO'#DrO%[QlO'#DzO0fQlO'#ESOOQ!0Lf'#E['#E[O1PQ`O'#EXOOQO'#Ep'#EpOOQO'#Il'#IlO1XQ`O'#GsO1dQ`O'#EoO1iQ`O'#EoO3hQ!0MxO'#JrO6[Q!0MxO'#JsO6uQ`O'#F]O6zQ,UO'#FtOOQ!0Lf'#Ff'#FfO7VO7dO'#FfO9XQMhO'#F|O9`Q`O'#F{OOQ!0Lf'#Js'#JsOOQ!0Lb'#Jr'#JrO9eQ`O'#GwOOQ['#K_'#K_O9pQ`O'#IYO9uQ!0LrO'#IZOOQ['#J`'#J`OOQ['#I_'#I_Q`QlOOQ`QlOOO9}Q!L^O'#DvO:UQlO'#EOO:]QlO'#EQO9kQ`O'#GsO:dQMhO'#CoO:rQ`O'#EnO:}Q`O'#EyO;hQMhO'#FeO;xQ`O'#GsOOQO'#K`'#K`O;}Q`O'#K`O<]Q`O'#G{O<]Q`O'#G|O<]Q`O'#HOO9kQ`O'#HRO=SQ`O'#HUO>kQ`O'#CeO>{Q`O'#HcO?TQ`O'#HiO?TQ`O'#HkO`QlO'#HmO?TQ`O'#HoO?TQ`O'#HrO?YQ`O'#HxO?_Q!0LsO'#IOO%[QlO'#IQO?jQ!0LsO'#ISO?uQ!0LsO'#IUO9uQ!0LrO'#IWO@QQ!0MxO'#CiOASQpO'#DlQOQ`OOO%[QlO'#EQOAjQ`O'#ETO:dQMhO'#EnOAuQ`O'#EnOBQQ!bO'#FeOOQ['#Cg'#CgOOQ!0Lb'#Dq'#DqOOQ!0Lb'#Jv'#JvO%[QlO'#JvOOQO'#Jy'#JyOOQO'#Ih'#IhOCQQpO'#EgOOQ!0Lb'#Ef'#EfOOQ!0Lb'#J}'#J}OC|Q!0MSO'#EgODWQpO'#EWOOQO'#Jx'#JxODlQpO'#JyOEyQpO'#EWODWQpO'#EgPFWO&2DjO'#CbPOOO)CD})CD}OOOO'#I`'#I`OFcO#tO,59UOOQ!0Lh,59U,59UOOOO'#Ia'#IaOFqO&jO,59UOGPQ!L^O'#DcOOOO'#Ic'#IcOGWO#@ItO,59{OOQ!0Lf,59{,59{OGfQlO'#IdOGyQ`O'#JtOIxQ!fO'#JtO+}QlO'#JtOJPQ`O,5:ROJgQ`O'#EpOJtQ`O'#KTOKPQ`O'#KSOKPQ`O'#KSOKXQ`O,5;^OK^Q`O'#KROOQ!0Ln,5:^,5:^OKeQlO,5:^OMcQ!0MxO,5:fONSQ`O,5:nONmQ!0LrO'#KQONtQ`O'#KPO9eQ`O'#KPO! YQ`O'#KPO! bQ`O,5;]O! gQ`O'#KPO!#lQ!fO'#JsOOQ!0Lh'#Ci'#CiO%[QlO'#ESO!$[Q!fO,5:sOOQS'#Jz'#JzOOQO-E<j-E<jO9kQ`O,5=_O!$rQ`O,5=_O!$wQlO,5;ZO!&zQMhO'#EkO!(eQ`O,5;ZO!(jQlO'#DyO!(tQpO,5;dO!(|QpO,5;dO%[QlO,5;dOOQ['#FT'#FTOOQ['#FV'#FVO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eOOQ['#FZ'#FZO!)[QlO,5;tOOQ!0Lf,5;y,5;yOOQ!0Lf,5;z,5;zOOQ!0Lf,5;|,5;|O%[QlO'#IpO!+_Q!0LrO,5<iO%[QlO,5;eO!&zQMhO,5;eO!+|QMhO,5;eO!-nQMhO'#E^O%[QlO,5;wOOQ!0Lf,5;{,5;{O!-uQ,UO'#FjO!.rQ,UO'#KXO!.^Q,UO'#KXO!.yQ,UO'#KXOOQO'#KX'#KXO!/_Q,UO,5<SOOOW,5<`,5<`O!/pQlO'#FvOOOW'#Io'#IoO7VO7dO,5<QO!/wQ,UO'#FxOOQ!0Lf,5<Q,5<QO!0hQ$IUO'#CyOOQ!0Lh'#C}'#C}O!0{O#@ItO'#DRO!1iQMjO,5<eO!1pQ`O,5<hO!3YQ(CWO'#GXO!3jQ`O'#GYO!3oQ`O'#GYO!5_Q(CWO'#G^O!6dQpO'#GbOOQO'#Gn'#GnO!,TQMhO'#GmOOQO'#Gp'#GpO!,TQMhO'#GoO!7VQ$IUO'#JlOOQ!0Lh'#Jl'#JlO!7aQ`O'#JkO!7oQ`O'#JjO!7wQ`O'#CuOOQ!0Lh'#C{'#C{O!8YQ`O'#C}OOQ!0Lh'#DV'#DVOOQ!0Lh'#DX'#DXO!8_Q`O,5<eO1SQ`O'#DZO!,TQMhO'#GPO!,TQMhO'#GRO!8gQ`O'#GTO!8lQ`O'#GUO!3oQ`O'#G[O!,TQMhO'#GaO<]Q`O'#JkO!8qQ`O'#EqO!9`Q`O,5<gOOQ!0Lb'#Cr'#CrO!9hQ`O'#ErO!:bQpO'#EsOOQ!0Lb'#KR'#KRO!:iQ!0LrO'#KaO9uQ!0LrO,5=cO`QlO,5>tOOQ['#Jh'#JhOOQ[,5>u,5>uOOQ[-E<]-E<]O!<hQ!0MxO,5:bO!:]QpO,5:`O!?RQ!0MxO,5:jO%[QlO,5:jO!AiQ!0MxO,5:lOOQO,5@z,5@zO!BYQMhO,5=_O!BhQ!0LrO'#JiO9`Q`O'#JiO!ByQ!0LrO,59ZO!CUQpO,59ZO!C^QMhO,59ZO:dQMhO,59ZO!CiQ`O,5;ZO!CqQ`O'#HbO!DVQ`O'#KdO%[QlO,5;}O!:]QpO,5<PO!D_Q`O,5=zO!DdQ`O,5=zO!DiQ`O,5=zO!DwQ`O,5=zO9uQ!0LrO,5=zO<]Q`O,5=jOOQO'#Cy'#CyO!EOQpO,5=gO!EWQMhO,5=hO!EcQ`O,5=jO!EhQ!bO,5=mO!EpQ`O'#K`O?YQ`O'#HWO9kQ`O'#HYO!EuQ`O'#HYO:dQMhO'#H[O!EzQ`O'#H[OOQ[,5=p,5=pO!FPQ`O'#H]O!FbQ`O'#CoO!FgQ`O,59PO!FqQ`O,59PO!HvQlO,59POOQ[,59P,59PO!IWQ!0LrO,59PO%[QlO,59PO!KcQlO'#HeOOQ['#Hf'#HfOOQ['#Hg'#HgO`QlO,5=}O!KyQ`O,5=}O`QlO,5>TO`QlO,5>VO!LOQ`O,5>XO`QlO,5>ZO!LTQ`O,5>^O!LYQlO,5>dOOQ[,5>j,5>jO%[QlO,5>jO9uQ!0LrO,5>lOOQ[,5>n,5>nO#!dQ`O,5>nOOQ[,5>p,5>pO#!dQ`O,5>pOOQ[,5>r,5>rO##QQpO'#D_O%[QlO'#JvO##sQpO'#JvO##}QpO'#DmO#$`QpO'#DmO#&qQlO'#DmO#&xQ`O'#JuO#'QQ`O,5:WO#'VQ`O'#EtO#'eQ`O'#KUO#'mQ`O,5;_O#'rQpO'#DmO#(PQpO'#EVOOQ!0Lf,5:o,5:oO%[QlO,5:oO#(WQ`O,5:oO?YQ`O,5;YO!CUQpO,5;YO!C^QMhO,5;YO:dQMhO,5;YO#(`Q`O,5@bO#(eQ07dO,5:sOOQO-E<f-E<fO#)kQ!0MSO,5;RODWQpO,5:rO#)uQpO,5:rODWQpO,5;RO!ByQ!0LrO,5:rOOQ!0Lb'#Ej'#EjOOQO,5;R,5;RO%[QlO,5;RO#*SQ!0LrO,5;RO#*_Q!0LrO,5;RO!CUQpO,5:rOOQO,5;X,5;XO#*mQ!0LrO,5;RPOOO'#I^'#I^P#+RO&2DjO,58|POOO,58|,58|OOOO-E<^-E<^OOQ!0Lh1G.p1G.pOOOO-E<_-E<_OOOO,59},59}O#+^Q!bO,59}OOOO-E<a-E<aOOQ!0Lf1G/g1G/gO#+cQ!fO,5?OO+}QlO,5?OOOQO,5?U,5?UO#+mQlO'#IdOOQO-E<b-E<bO#+zQ`O,5@`O#,SQ!fO,5@`O#,ZQ`O,5@nOOQ!0Lf1G/m1G/mO%[QlO,5@oO#,cQ`O'#IjOOQO-E<h-E<hO#,ZQ`O,5@nOOQ!0Lb1G0x1G0xOOQ!0Ln1G/x1G/xOOQ!0Ln1G0Y1G0YO%[QlO,5@lO#,wQ!0LrO,5@lO#-YQ!0LrO,5@lO#-aQ`O,5@kO9eQ`O,5@kO#-iQ`O,5@kO#-wQ`O'#ImO#-aQ`O,5@kOOQ!0Lb1G0w1G0wO!(tQpO,5:uO!)PQpO,5:uOOQS,5:w,5:wO#.iQdO,5:wO#.qQMhO1G2yO9kQ`O1G2yOOQ!0Lf1G0u1G0uO#/PQ!0MxO1G0uO#0UQ!0MvO,5;VOOQ!0Lh'#GW'#GWO#0rQ!0MzO'#JlO!$wQlO1G0uO#2}Q!fO'#JwO%[QlO'#JwO#3XQ`O,5:eOOQ!0Lh'#D_'#D_OOQ!0Lf1G1O1G1OO%[QlO1G1OOOQ!0Lf1G1f1G1fO#3^Q`O1G1OO#5rQ!0MxO1G1PO#5yQ!0MxO1G1PO#8aQ!0MxO1G1PO#8hQ!0MxO1G1PO#;OQ!0MxO1G1PO#=fQ!0MxO1G1PO#=mQ!0MxO1G1PO#=tQ!0MxO1G1PO#@[Q!0MxO1G1PO#@cQ!0MxO1G1PO#BpQ?MtO'#CiO#DkQ?MtO1G1`O#DrQ?MtO'#JsO#EVQ!0MxO,5?[OOQ!0Lb-E<n-E<nO#GdQ!0MxO1G1PO#HaQ!0MzO1G1POOQ!0Lf1G1P1G1PO#IdQMjO'#J|O#InQ`O,5:xO#IsQ!0MxO1G1cO#JgQ,UO,5<WO#JoQ,UO,5<XO#JwQ,UO'#FoO#K`Q`O'#FnOOQO'#KY'#KYOOQO'#In'#InO#KeQ,UO1G1nOOQ!0Lf1G1n1G1nOOOW1G1y1G1yO#KvQ?MtO'#JrO#LQQ`O,5<bO!)[QlO,5<bOOOW-E<m-E<mOOQ!0Lf1G1l1G1lO#LVQpO'#KXOOQ!0Lf,5<d,5<dO#L_QpO,5<dO#LdQMhO'#DTOOOO'#Ib'#IbO#LkO#@ItO,59mOOQ!0Lh,59m,59mO%[QlO1G2PO!8lQ`O'#IrO#LvQ`O,5<zOOQ!0Lh,5<w,5<wO!,TQMhO'#IuO#MdQMjO,5=XO!,TQMhO'#IwO#NVQMjO,5=ZO!&zQMhO,5=]OOQO1G2S1G2SO#NaQ!dO'#CrO#NtQ(CWO'#ErO$ |QpO'#GbO$!dQ!dO,5<sO$!kQ`O'#K[O9eQ`O'#K[O$!yQ`O,5<uO$#aQ!dO'#C{O!,TQMhO,5<tO$#kQ`O'#GZO$$PQ`O,5<tO$$UQ!dO'#GWO$$cQ!dO'#K]O$$mQ`O'#K]O!&zQMhO'#K]O$$rQ`O,5<xO$$wQlO'#JvO$%RQpO'#GcO#$`QpO'#GcO$%dQ`O'#GgO!3oQ`O'#GkO$%iQ!0LrO'#ItO$%tQpO,5<|OOQ!0Lp,5<|,5<|O$%{QpO'#GcO$&YQpO'#GdO$&kQpO'#GdO$&pQMjO,5=XO$'QQMjO,5=ZOOQ!0Lh,5=^,5=^O!,TQMhO,5@VO!,TQMhO,5@VO$'bQ`O'#IyO$'vQ`O,5@UO$(OQ`O,59aOOQ!0Lh,59i,59iO$(TQ`O,5@VO$)TQ$IYO,59uOOQ!0Lh'#Jp'#JpO$)vQMjO,5<kO$*iQMjO,5<mO@zQ`O,5<oOOQ!0Lh,5<p,5<pO$*sQ`O,5<vO$*xQMjO,5<{O$+YQ`O'#KPO!$wQlO1G2RO$+_Q`O1G2RO9eQ`O'#KSO9eQ`O'#EtO%[QlO'#EtO9eQ`O'#I{O$+dQ!0LrO,5@{OOQ[1G2}1G2}OOQ[1G4`1G4`OOQ!0Lf1G/|1G/|OOQ!0Lf1G/z1G/zO$-fQ!0MxO1G0UOOQ[1G2y1G2yO!&zQMhO1G2yO%[QlO1G2yO#.tQ`O1G2yO$/jQMhO'#EkOOQ!0Lb,5@T,5@TO$/wQ!0LrO,5@TOOQ[1G.u1G.uO!ByQ!0LrO1G.uO!CUQpO1G.uO!C^QMhO1G.uO$0YQ`O1G0uO$0_Q`O'#CiO$0jQ`O'#KeO$0rQ`O,5=|O$0wQ`O'#KeO$0|Q`O'#KeO$1[Q`O'#JRO$1jQ`O,5AOO$1rQ!fO1G1iOOQ!0Lf1G1k1G1kO9kQ`O1G3fO@zQ`O1G3fO$1yQ`O1G3fO$2OQ`O1G3fO!DiQ`O1G3fO9uQ!0LrO1G3fOOQ[1G3f1G3fO!EcQ`O1G3UO!&zQMhO1G3RO$2TQ`O1G3ROOQ[1G3S1G3SO!&zQMhO1G3SO$2YQ`O1G3SO$2bQpO'#HQOOQ[1G3U1G3UO!6_QpO'#I}O!EhQ!bO1G3XOOQ[1G3X1G3XOOQ[,5=r,5=rO$2jQMhO,5=tO9kQ`O,5=tO$%dQ`O,5=vO9`Q`O,5=vO!CUQpO,5=vO!C^QMhO,5=vO:dQMhO,5=vO$2xQ`O'#KcO$3TQ`O,5=wOOQ[1G.k1G.kO$3YQ!0LrO1G.kO@zQ`O1G.kO$3eQ`O1G.kO9uQ!0LrO1G.kO$5mQ!fO,5AQO$5zQ`O,5AQO9eQ`O,5AQO$6VQlO,5>PO$6^Q`O,5>POOQ[1G3i1G3iO`QlO1G3iOOQ[1G3o1G3oOOQ[1G3q1G3qO?TQ`O1G3sO$6cQlO1G3uO$:gQlO'#HtOOQ[1G3x1G3xO$:tQ`O'#HzO?YQ`O'#H|OOQ[1G4O1G4OO$:|QlO1G4OO9uQ!0LrO1G4UOOQ[1G4W1G4WOOQ!0Lb'#G_'#G_O9uQ!0LrO1G4YO9uQ!0LrO1G4[O$?TQ`O,5@bO!)[QlO,5;`O9eQ`O,5;`O?YQ`O,5:XO!)[QlO,5:XO!CUQpO,5:XO$?YQ?MtO,5:XOOQO,5;`,5;`O$?dQpO'#IeO$?zQ`O,5@aOOQ!0Lf1G/r1G/rO$@SQpO'#IkO$@^Q`O,5@pOOQ!0Lb1G0y1G0yO#$`QpO,5:XOOQO'#Ig'#IgO$@fQpO,5:qOOQ!0Ln,5:q,5:qO#(ZQ`O1G0ZOOQ!0Lf1G0Z1G0ZO%[QlO1G0ZOOQ!0Lf1G0t1G0tO?YQ`O1G0tO!CUQpO1G0tO!C^QMhO1G0tOOQ!0Lb1G5|1G5|O!ByQ!0LrO1G0^OOQO1G0m1G0mO%[QlO1G0mO$@mQ!0LrO1G0mO$@xQ!0LrO1G0mO!CUQpO1G0^ODWQpO1G0^O$AWQ!0LrO1G0mOOQO1G0^1G0^O$AlQ!0MxO1G0mPOOO-E<[-E<[POOO1G.h1G.hOOOO1G/i1G/iO$AvQ!bO,5<iO$BOQ!fO1G4jOOQO1G4p1G4pO%[QlO,5?OO$BYQ`O1G5zO$BbQ`O1G6YO$BjQ!fO1G6ZO9eQ`O,5?UO$BtQ!0MxO1G6WO%[QlO1G6WO$CUQ!0LrO1G6WO$CgQ`O1G6VO$CgQ`O1G6VO9eQ`O1G6VO$CoQ`O,5?XO9eQ`O,5?XOOQO,5?X,5?XO$DTQ`O,5?XO$+YQ`O,5?XOOQO-E<k-E<kOOQS1G0a1G0aOOQS1G0c1G0cO#.lQ`O1G0cOOQ[7+(e7+(eO!&zQMhO7+(eO%[QlO7+(eO$DcQ`O7+(eO$DnQMhO7+(eO$D|Q!0MzO,5=XO$GXQ!0MzO,5=ZO$IdQ!0MzO,5=XO$KuQ!0MzO,5=ZO$NWQ!0MzO,59uO%!]Q!0MzO,5<kO%$hQ!0MzO,5<mO%&sQ!0MzO,5<{OOQ!0Lf7+&a7+&aO%)UQ!0MxO7+&aO%)xQlO'#IfO%*VQ`O,5@cO%*_Q!fO,5@cOOQ!0Lf1G0P1G0PO%*iQ`O7+&jOOQ!0Lf7+&j7+&jO%*nQ?MtO,5:fO%[QlO7+&zO%*xQ?MtO,5:bO%+VQ?MtO,5:jO%+aQ?MtO,5:lO%+kQMhO'#IiO%+uQ`O,5@hOOQ!0Lh1G0d1G0dOOQO1G1r1G1rOOQO1G1s1G1sO%+}Q!jO,5<ZO!)[QlO,5<YOOQO-E<l-E<lOOQ!0Lf7+'Y7+'YOOOW7+'e7+'eOOOW1G1|1G1|O%,YQ`O1G1|OOQ!0Lf1G2O1G2OOOOO,59o,59oO%,_Q!dO,59oOOOO-E<`-E<`OOQ!0Lh1G/X1G/XO%,fQ!0MxO7+'kOOQ!0Lh,5?^,5?^O%-YQMhO1G2fP%-aQ`O'#IrPOQ!0Lh-E<p-E<pO%-}QMjO,5?aOOQ!0Lh-E<s-E<sO%.pQMjO,5?cOOQ!0Lh-E<u-E<uO%.zQ!dO1G2wO%/RQ!dO'#CrO%/iQMhO'#KSO$$wQlO'#JvOOQ!0Lh1G2_1G2_O%/sQ`O'#IqO%0[Q`O,5@vO%0[Q`O,5@vO%0dQ`O,5@vO%0oQ`O,5@vOOQO1G2a1G2aO%0}QMjO1G2`O$+YQ`O'#K[O!,TQMhO1G2`O%1_Q(CWO'#IsO%1lQ`O,5@wO!&zQMhO,5@wO%1tQ!dO,5@wOOQ!0Lh1G2d1G2dO%4UQ!fO'#CiO%4`Q`O,5=POOQ!0Lb,5<},5<}O%4hQpO,5<}OOQ!0Lb,5=O,5=OOCwQ`O,5<}O%4sQpO,5<}OOQ!0Lb,5=R,5=RO$+YQ`O,5=VOOQO,5?`,5?`OOQO-E<r-E<rOOQ!0Lp1G2h1G2hO#$`QpO,5<}O$$wQlO,5=PO%5RQ`O,5=OO%5^QpO,5=OO!,TQMhO'#IuO%6WQMjO1G2sO!,TQMhO'#IwO%6yQMjO1G2uO%7TQMjO1G5qO%7_QMjO1G5qOOQO,5?e,5?eOOQO-E<w-E<wOOQO1G.{1G.{O!,TQMhO1G5qO!,TQMhO1G5qO!:]QpO,59wO%[QlO,59wOOQ!0Lh,5<j,5<jO%7lQ`O1G2ZO!,TQMhO1G2bO%7qQ!0MxO7+'mOOQ!0Lf7+'m7+'mO!$wQlO7+'mO%8eQ`O,5;`OOQ!0Lb,5?g,5?gOOQ!0Lb-E<y-E<yO%8jQ!dO'#K^O#(ZQ`O7+(eO4UQ!fO7+(eO$DfQ`O7+(eO%8tQ!0MvO'#CiO%9XQ!0MvO,5=SO%9lQ`O,5=SO%9tQ`O,5=SOOQ!0Lb1G5o1G5oOOQ[7+$a7+$aO!ByQ!0LrO7+$aO!CUQpO7+$aO!$wQlO7+&aO%9yQ`O'#JQO%:bQ`O,5APOOQO1G3h1G3hO9kQ`O,5APO%:bQ`O,5APO%:jQ`O,5APOOQO,5?m,5?mOOQO-E=P-E=POOQ!0Lf7+'T7+'TO%:oQ`O7+)QO9uQ!0LrO7+)QO9kQ`O7+)QO@zQ`O7+)QO%:tQ`O7+)QOOQ[7+)Q7+)QOOQ[7+(p7+(pO%:yQ!0MvO7+(mO!&zQMhO7+(mO!E^Q`O7+(nOOQ[7+(n7+(nO!&zQMhO7+(nO%;TQ`O'#KbO%;`Q`O,5=lOOQO,5?i,5?iOOQO-E<{-E<{OOQ[7+(s7+(sO%<rQpO'#HZOOQ[1G3`1G3`O!&zQMhO1G3`O%[QlO1G3`O%<yQ`O1G3`O%=UQMhO1G3`O9uQ!0LrO1G3bO$%dQ`O1G3bO9`Q`O1G3bO!CUQpO1G3bO!C^QMhO1G3bO%=dQ`O'#JPO%=xQ`O,5@}O%>QQpO,5@}OOQ!0Lb1G3c1G3cOOQ[7+$V7+$VO@zQ`O7+$VO9uQ!0LrO7+$VO%>]Q`O7+$VO%[QlO1G6lO%[QlO1G6mO%>bQ!0LrO1G6lO%>lQlO1G3kO%>sQ`O1G3kO%>xQlO1G3kOOQ[7+)T7+)TO9uQ!0LrO7+)_O`QlO7+)aOOQ['#Kh'#KhOOQ['#JS'#JSO%?PQlO,5>`OOQ[,5>`,5>`O%[QlO'#HuO%?^Q`O'#HwOOQ[,5>f,5>fO9eQ`O,5>fOOQ[,5>h,5>hOOQ[7+)j7+)jOOQ[7+)p7+)pOOQ[7+)t7+)tOOQ[7+)v7+)vO%?cQpO1G5|O%?}Q?MtO1G0zO%@XQ`O1G0zOOQO1G/s1G/sO%@dQ?MtO1G/sO?YQ`O1G/sO!)[QlO'#DmOOQO,5?P,5?POOQO-E<c-E<cOOQO,5?V,5?VOOQO-E<i-E<iO!CUQpO1G/sOOQO-E<e-E<eOOQ!0Ln1G0]1G0]OOQ!0Lf7+%u7+%uO#(ZQ`O7+%uOOQ!0Lf7+&`7+&`O?YQ`O7+&`O!CUQpO7+&`OOQO7+%x7+%xO$AlQ!0MxO7+&XOOQO7+&X7+&XO%[QlO7+&XO%@nQ!0LrO7+&XO!ByQ!0LrO7+%xO!CUQpO7+%xO%@yQ!0LrO7+&XO%AXQ!0MxO7++rO%[QlO7++rO%AiQ`O7++qO%AiQ`O7++qOOQO1G4s1G4sO9eQ`O1G4sO%AqQ`O1G4sOOQS7+%}7+%}O#(ZQ`O<<LPO4UQ!fO<<LPO%BPQ`O<<LPOOQ[<<LP<<LPO!&zQMhO<<LPO%[QlO<<LPO%BXQ`O<<LPO%BdQ!0MzO,5?aO%DoQ!0MzO,5?cO%FzQ!0MzO1G2`O%I]Q!0MzO1G2sO%KhQ!0MzO1G2uO%MsQ!fO,5?QO%[QlO,5?QOOQO-E<d-E<dO%M}Q`O1G5}OOQ!0Lf<<JU<<JUO%NVQ?MtO1G0uO&!^Q?MtO1G1PO&!eQ?MtO1G1PO&$fQ?MtO1G1PO&$mQ?MtO1G1PO&&nQ?MtO1G1PO&(oQ?MtO1G1PO&(vQ?MtO1G1PO&(}Q?MtO1G1PO&+OQ?MtO1G1PO&+VQ?MtO1G1PO&+^Q!0MxO<<JfO&-UQ?MtO1G1PO&.RQ?MvO1G1PO&/UQ?MvO'#JlO&1[Q?MtO1G1cO&1iQ?MtO1G0UO&1sQMjO,5?TOOQO-E<g-E<gO!)[QlO'#FqOOQO'#KZ'#KZOOQO1G1u1G1uO&1}Q`O1G1tO&2SQ?MtO,5?[OOOW7+'h7+'hOOOO1G/Z1G/ZO&2^Q!dO1G4xOOQ!0Lh7+(Q7+(QP!&zQMhO,5?^O!,TQMhO7+(cO&2eQ`O,5?]O9eQ`O,5?]O$+YQ`O,5?]OOQO-E<o-E<oO&2sQ`O1G6bO&2sQ`O1G6bO&2{Q`O1G6bO&3WQMjO7+'zO&3hQ!dO,5?_O&3rQ`O,5?_O!&zQMhO,5?_OOQO-E<q-E<qO&3wQ!dO1G6cO&4RQ`O1G6cO&4ZQ`O1G2kO!&zQMhO1G2kOOQ!0Lb1G2i1G2iOOQ!0Lb1G2j1G2jO%4hQpO1G2iO!CUQpO1G2iOCwQ`O1G2iOOQ!0Lb1G2q1G2qO&4`QpO1G2iO&4nQ`O1G2kO$+YQ`O1G2jOCwQ`O1G2jO$$wQlO1G2kO&4vQ`O1G2jO&5jQMjO,5?aOOQ!0Lh-E<t-E<tO&6]QMjO,5?cOOQ!0Lh-E<v-E<vO!,TQMhO7++]O&6gQMjO7++]O&6qQMjO7++]OOQ!0Lh1G/c1G/cO&7OQ`O1G/cOOQ!0Lh7+'u7+'uO&7TQMjO7+'|O&7eQ!0MxO<<KXOOQ!0Lf<<KX<<KXO&8XQ`O1G0zO!&zQMhO'#IzO&8^Q`O,5@xO&:`Q!fO<<LPO!&zQMhO1G2nO&:gQ!0LrO1G2nOOQ[<<G{<<G{O!ByQ!0LrO<<G{O&:xQ!0MxO<<I{OOQ!0Lf<<I{<<I{OOQO,5?l,5?lO&;lQ`O,5?lO&;qQ`O,5?lOOQO-E=O-E=OO&<PQ`O1G6kO&<PQ`O1G6kO9kQ`O1G6kO@zQ`O<<LlOOQ[<<Ll<<LlO&<XQ`O<<LlO9uQ!0LrO<<LlO9kQ`O<<LlOOQ[<<LX<<LXO%:yQ!0MvO<<LXOOQ[<<LY<<LYO!E^Q`O<<LYO&<^QpO'#I|O&<iQ`O,5@|O!)[QlO,5@|OOQ[1G3W1G3WOOQO'#JO'#JOO9uQ!0LrO'#JOO&<qQpO,5=uOOQ[,5=u,5=uO&<xQpO'#EgO&=PQpO'#GeO&=UQ`O7+(zO&=ZQ`O7+(zOOQ[7+(z7+(zO!&zQMhO7+(zO%[QlO7+(zO&=cQ`O7+(zOOQ[7+(|7+(|O9uQ!0LrO7+(|O$%dQ`O7+(|O9`Q`O7+(|O!CUQpO7+(|O&=nQ`O,5?kOOQO-E<}-E<}OOQO'#H^'#H^O&=yQ`O1G6iO9uQ!0LrO<<GqOOQ[<<Gq<<GqO@zQ`O<<GqO&>RQ`O7+,WO&>WQ`O7+,XO%[QlO7+,WO%[QlO7+,XOOQ[7+)V7+)VO&>]Q`O7+)VO&>bQlO7+)VO&>iQ`O7+)VOOQ[<<Ly<<LyOOQ[<<L{<<L{OOQ[-E=Q-E=QOOQ[1G3z1G3zO&>nQ`O,5>aOOQ[,5>c,5>cO&>sQ`O1G4QO9eQ`O7+&fO!)[QlO7+&fOOQO7+%_7+%_O&>xQ?MtO1G6ZO?YQ`O7+%_OOQ!0Lf<<Ia<<IaOOQ!0Lf<<Iz<<IzO?YQ`O<<IzOOQO<<Is<<IsO$AlQ!0MxO<<IsO%[QlO<<IsOOQO<<Id<<IdO!ByQ!0LrO<<IdO&?SQ!0LrO<<IsO&?_Q!0MxO<= ^O&?oQ`O<= ]OOQO7+*_7+*_O9eQ`O7+*_OOQ[ANAkANAkO&?wQ!fOANAkO!&zQMhOANAkO#(ZQ`OANAkO4UQ!fOANAkO&@OQ`OANAkO%[QlOANAkO&@WQ!0MzO7+'zO&BiQ!0MzO,5?aO&DtQ!0MzO,5?cO&GPQ!0MzO7+'|O&IbQ!fO1G4lO&IlQ?MtO7+&aO&KpQ?MvO,5=XO&MwQ?MvO,5=ZO&NXQ?MvO,5=XO&NiQ?MvO,5=ZO&NyQ?MvO,59uO'#PQ?MvO,5<kO'%SQ?MvO,5<mO''hQ?MvO,5<{O')^Q?MtO7+'kO')kQ?MtO7+'mO')xQ`O,5<]OOQO7+'`7+'`OOQ!0Lh7+*d7+*dO')}QMjO<<K}OOQO1G4w1G4wO'*UQ`O1G4wO'*aQ`O1G4wO'*oQ`O7++|O'*oQ`O7++|O!&zQMhO1G4yO'*wQ!dO1G4yO'+RQ`O7++}O'+ZQ`O7+(VO'+fQ!dO7+(VOOQ!0Lb7+(T7+(TOOQ!0Lb7+(U7+(UO!CUQpO7+(TOCwQ`O7+(TO'+pQ`O7+(VO!&zQMhO7+(VO$+YQ`O7+(UO'+uQ`O7+(VOCwQ`O7+(UO'+}QMjO<<NwO!,TQMhO<<NwOOQ!0Lh7+$}7+$}O',XQ!dO,5?fOOQO-E<x-E<xO',cQ!0MvO7+(YO!&zQMhO7+(YOOQ[AN=gAN=gO9kQ`O1G5WOOQO1G5W1G5WO',sQ`O1G5WO',xQ`O7+,VO',xQ`O7+,VO9uQ!0LrOANBWO@zQ`OANBWOOQ[ANBWANBWO'-QQ`OANBWOOQ[ANAsANAsOOQ[ANAtANAtO'-VQ`O,5?hOOQO-E<z-E<zO'-bQ?MtO1G6hOOQO,5?j,5?jOOQO-E<|-E<|OOQ[1G3a1G3aO'-lQ`O,5=POOQ[<<Lf<<LfO!&zQMhO<<LfO&=UQ`O<<LfO'-qQ`O<<LfO%[QlO<<LfOOQ[<<Lh<<LhO9uQ!0LrO<<LhO$%dQ`O<<LhO9`Q`O<<LhO'-yQpO1G5VO'.UQ`O7+,TOOQ[AN=]AN=]O9uQ!0LrOAN=]OOQ[<= r<= rOOQ[<= s<= sO'.^Q`O<= rO'.cQ`O<= sOOQ[<<Lq<<LqO'.hQ`O<<LqO'.mQlO<<LqOOQ[1G3{1G3{O?YQ`O7+)lO'.tQ`O<<JQO'/PQ?MtO<<JQOOQO<<Hy<<HyOOQ!0LfAN?fAN?fOOQOAN?_AN?_O$AlQ!0MxOAN?_OOQOAN?OAN?OO%[QlOAN?_OOQO<<My<<MyOOQ[G27VG27VO!&zQMhOG27VO#(ZQ`OG27VO'/ZQ!fOG27VO4UQ!fOG27VO'/bQ`OG27VO'/jQ?MtO<<JfO'/wQ?MvO1G2`O'1mQ?MvO,5?aO'3pQ?MvO,5?cO'5sQ?MvO1G2sO'7vQ?MvO1G2uO'9yQ?MtO<<KXO':WQ?MtO<<I{OOQO1G1w1G1wO!,TQMhOANAiOOQO7+*c7+*cO':eQ`O7+*cO':pQ`O<= hO':xQ!dO7+*eOOQ!0Lb<<Kq<<KqO$+YQ`O<<KqOCwQ`O<<KqO';SQ`O<<KqO!&zQMhO<<KqOOQ!0Lb<<Ko<<KoO!CUQpO<<KoO';_Q!dO<<KqOOQ!0Lb<<Kp<<KpO';iQ`O<<KqO!&zQMhO<<KqO$+YQ`O<<KpO';nQMjOANDcO';xQ!0MvO<<KtOOQO7+*r7+*rO9kQ`O7+*rO'<YQ`O<= qOOQ[G27rG27rO9uQ!0LrOG27rO@zQ`OG27rO!)[QlO1G5SO'<bQ`O7+,SO'<jQ`O1G2kO&=UQ`OANBQOOQ[ANBQANBQO!&zQMhOANBQO'<oQ`OANBQOOQ[ANBSANBSO9uQ!0LrOANBSO$%dQ`OANBSOOQO'#H_'#H_OOQO7+*q7+*qOOQ[G22wG22wOOQ[ANE^ANE^OOQ[ANE_ANE_OOQ[ANB]ANB]O'<wQ`OANB]OOQ[<<MW<<MWO!)[QlOAN?lOOQOG24yG24yO$AlQ!0MxOG24yO#(ZQ`OLD,qOOQ[LD,qLD,qO!&zQMhOLD,qO'<|Q!fOLD,qO'=TQ?MvO7+'zO'>yQ?MvO,5?aO'@|Q?MvO,5?cO'CPQ?MvO7+'|O'DuQMjOG27TOOQO<<M}<<M}OOQ!0LbANA]ANA]O$+YQ`OANA]OCwQ`OANA]O'EVQ!dOANA]OOQ!0LbANAZANAZO'E^Q`OANA]O!&zQMhOANA]O'EiQ!dOANA]OOQ!0LbANA[ANA[OOQO<<N^<<N^OOQ[LD-^LD-^O9uQ!0LrOLD-^O'EsQ?MtO7+*nOOQO'#Gf'#GfOOQ[G27lG27lO&=UQ`OG27lO!&zQMhOG27lOOQ[G27nG27nO9uQ!0LrOG27nOOQ[G27wG27wO'E}Q?MtOG25WOOQOLD*eLD*eOOQ[!$(!]!$(!]O#(ZQ`O!$(!]O!&zQMhO!$(!]O'FXQ!0MzOG27TOOQ!0LbG26wG26wO$+YQ`OG26wO'HjQ`OG26wOCwQ`OG26wO'HuQ!dOG26wO!&zQMhOG26wOOQ[!$(!x!$(!xOOQ[LD-WLD-WO&=UQ`OLD-WOOQ[LD-YLD-YOOQ[!)9Ew!)9EwO#(ZQ`O!)9EwOOQ!0LbLD,cLD,cO$+YQ`OLD,cOCwQ`OLD,cO'H|Q`OLD,cO'IXQ!dOLD,cOOQ[!$(!r!$(!rOOQ[!.K;c!.K;cO'I`Q?MvOG27TOOQ!0Lb!$( }!$( }O$+YQ`O!$( }OCwQ`O!$( }O'KUQ`O!$( }OOQ!0Lb!)9Ei!)9EiO$+YQ`O!)9EiOCwQ`O!)9EiOOQ!0Lb!.K;T!.K;TO$+YQ`O!.K;TOOQ!0Lb!4/0o!4/0oO!)[QlO'#DzO1PQ`O'#EXO'KaQ!fO'#JrO'KhQ!L^O'#DvO'KoQlO'#EOO'KvQ!fO'#CiO'N^Q!fO'#CiO!)[QlO'#EQO'NnQlO,5;ZO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO'#IpO(!qQ`O,5<iO!)[QlO,5;eO(!yQMhO,5;eO($dQMhO,5;eO!)[QlO,5;wO!&zQMhO'#GmO(!yQMhO'#GmO!&zQMhO'#GoO(!yQMhO'#GoO1SQ`O'#DZO1SQ`O'#DZO!&zQMhO'#GPO(!yQMhO'#GPO!&zQMhO'#GRO(!yQMhO'#GRO!&zQMhO'#GaO(!yQMhO'#GaO!)[QlO,5:jO($kQpO'#D_O($uQpO'#JvO!)[QlO,5@oO'NnQlO1G0uO(%PQ?MtO'#CiO!)[QlO1G2PO!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO(%ZQ!dO'#CrO!&zQMhO,5<tO(!yQMhO,5<tO'NnQlO1G2RO!)[QlO7+&zO!&zQMhO1G2`O(!yQMhO1G2`O!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO!&zQMhO1G2bO(!yQMhO1G2bO'NnQlO7+'mO'NnQlO7+&aO!&zQMhOANAiO(!yQMhOANAiO(%nQ`O'#EoO(%sQ`O'#EoO(%{Q`O'#F]O(&QQ`O'#EyO(&VQ`O'#KTO(&bQ`O'#KRO(&mQ`O,5;ZO(&rQMjO,5<eO(&yQ`O'#GYO('OQ`O'#GYO('TQ`O,5<eO(']Q`O,5<gO('eQ`O,5;ZO('mQ?MtO1G1`O('tQ`O,5<tO('yQ`O,5<tO((OQ`O,5<vO((TQ`O,5<vO((YQ`O1G2RO((_Q`O1G0uO((dQMjO<<K}O((kQMjO<<K}O((rQMhO'#F|O9`Q`O'#F{OAuQ`O'#EnO!)[QlO,5;tO!3oQ`O'#GYO!3oQ`O'#GYO!3oQ`O'#G[O!3oQ`O'#G[O!,TQMhO7+(cO!,TQMhO7+(cO%.zQ!dO1G2wO%.zQ!dO1G2wO!&zQMhO,5=]O!&zQMhO,5=]",stateData:"()x~O'|OS'}OSTOS(ORQ~OPYOQYOSfOY!VOaqOdzOeyOl!POpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!uwO!xxO!|]O$W|O$niO%h}O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO&W!WO&^!XO&`!YO&b!ZO&d![O&g!]O&m!^O&s!_O&u!`O&w!aO&y!bO&{!cO(TSO(VTO(YUO(aVO(o[O~OWtO~P`OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa!wOs!nO!S!oO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!xO#W!pO#X!pO#[!zO#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O(O!{O~OP]XR]X[]Xa]Xj]Xr]X!Q]X!S]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X'z]X(a]X(r]X(y]X(z]X~O!g%RX~P(qO_!}O(V#PO(W!}O(X#PO~O_#QO(X#PO(Y#PO(Z#QO~Ox#SO!U#TO(b#TO(c#VO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T<ZO(VTO(YUO(aVO(o[O~O![#ZO!]#WO!Y(hP!Y(vP~P+}O!^#cO~P`OPYOQYOSfOd!jOe!iOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(VTO(YUO(aVO(o[O~Op#mO![#iO!|]O#i#lO#j#iO(T<[O!k(sP~P.iO!l#oO(T#nO~O!x#sO!|]O%h#tO~O#k#uO~O!g#vO#k#uO~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!]$_O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa(fX'z(fX'w(fX!k(fX!Y(fX!_(fX%i(fX!g(fX~P1qO#S$dO#`$eO$Q$eOP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX!_(gX%i(gX~Oa(gX'z(gX'w(gX!Y(gX!k(gXv(gX!g(gX~P4UO#`$eO~O$]$hO$_$gO$f$mO~OSfO!_$nO$i$oO$k$qO~Oh%VOj%dOk%dOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T$sO(VTO(YUO(a$uO(y$}O(z%POg(^P~Ol%[O~P7eO!l%eO~O!S%hO!_%iO(T%gO~O!g%mO~Oa%nO'z%nO~O!Q%rO~P%[O(U!lO~P%[O%n%vO~P%[Oh%VO!l%eO(T%gO(U!lO~Oe%}O!l%eO(T%gO~Oj$RO~O!_&PO(T%gO(U!lO(VTO(YUO`)WP~O!Q&SO!l&RO%j&VO&T&WO~P;SO!x#sO~O%s&YO!S)SX!_)SX(T)SX~O(T&ZO~Ol!PO!u&`O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO~Od&eOe&dO!x&bO%h&cO%{&aO~P<bOd&hOeyOl!PO!_&gO!u&`O!xxO!|]O%h}O%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO~Ob&kO#`&nO%j&iO(U!lO~P=gO!l&oO!u&sO~O!l#oO~O!_XO~Oa%nO'x&{O'z%nO~Oa%nO'x'OO'z%nO~Oa%nO'x'QO'z%nO~O'w]X!Y]Xv]X!k]X&[]X!_]X%i]X!g]X~P(qO!b'_O!c'WO!d'WO(U!lO(VTO(YUO~Os'UO!S'TO!['XO(e'SO!^(iP!^(xP~P@nOn'bO!_'`O(T%gO~Oe'gO!l%eO(T%gO~O!Q&SO!l&RO~Os!nO!S!oO!|<VO#T!pO#U!pO#W!pO#X!pO(U!lO(VTO(YUO(e!mO(o!sO~O!b'mO!c'lO!d'lO#V!pO#['nO#]'nO~PBYOa%nOh%VO!g#vO!l%eO'z%nO(r'pO~O!p'tO#`'rO~PChOs!nO!S!oO(VTO(YUO(e!mO(o!sO~O!_XOs(mX!S(mX!b(mX!c(mX!d(mX!|(mX#T(mX#U(mX#V(mX#W(mX#X(mX#[(mX#](mX(U(mX(V(mX(Y(mX(e(mX(o(mX~O!c'lO!d'lO(U!lO~PDWO(P'xO(Q'xO(R'zO~O_!}O(V'|O(W!}O(X'|O~O_#QO(X'|O(Y'|O(Z#QO~Ov(OO~P%[Ox#SO!U#TO(b#TO(c(RO~O![(TO!Y'WX!Y'^X!]'WX!]'^X~P+}O!](VO!Y(hX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!](VO!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~O!Y(hX~PHRO!Y([O~O!Y(uX!](uX!g(uX!k(uX(r(uX~O#`(uX#k#dX!^(uX~PJUO#`(]O!Y(wX!](wX~O!](^O!Y(vX~O!Y(aO~O#`$eO~PJUO!^(bO~P`OR#zO!Q#yO!S#{O!l#xO(aVOP!na[!naj!nar!na!]!na!p!na#R!na#n!na#o!na#p!na#q!na#r!na#s!na#t!na#u!na#v!na#x!na#z!na#{!na(r!na(y!na(z!na~Oa!na'z!na'w!na!Y!na!k!nav!na!_!na%i!na!g!na~PKlO!k(cO~O!g#vO#`(dO(r'pO!](tXa(tX'z(tX~O!k(tX~PNXO!S%hO!_%iO!|]O#i(iO#j(hO(T%gO~O!](jO!k(sX~O!k(lO~O!S%hO!_%iO#j(hO(T%gO~OP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~O!g#vO!k(gX~P! uOR(nO!Q(mO!l#xO#S$dO!|!{a!S!{a~O!x!{a%h!{a!_!{a#i!{a#j!{a(T!{a~P!#vO!x(rO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~O#k(xO~O![(zO!k(kP~P%[O(e(|O(o[O~O!S)OO!l#xO(e(|O(o[O~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]$_Oa$qa'z$qa'w$qa!k$qa!Y$qa!_$qa%i$qa!g$qa~Ol)dO~P!&zOh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Og(pP~P!,TO!Q)iO!g)hO!_$^X$Z$^X$]$^X$_$^X$f$^X~O!g)hO!_({X$Z({X$]({X$_({X$f({X~O!Q)iO~P!.^O!Q)iO!_({X$Z({X$]({X$_({X$f({X~O!_)kO$Z)oO$])jO$_)jO$f)pO~O![)sO~P!)[O$]$hO$_$gO$f)wO~On$zX!Q$zX#S$zX'y$zX(y$zX(z$zX~OgmXg$zXnmX!]mX#`mX~P!0SOx)yO(b)zO(c)|O~On*VO!Q*OO'y*PO(y$}O(z%PO~Og)}O~P!1WOg*WO~Oh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S*YO!_*ZO!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op*`O![*^O(T*XO!k)OP~P!1uO#k*aO~O!l*bO~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(T*dO(VTO(YUO(a$uO(y$}O(z%PO~O![*gO!Y)PP~P!3tOr*sOs!nO!S*iO!b*qO!c*kO!d*kO!l*bO#[*rO%`*mO(U!lO(VTO(YUO(e!mO~O!^*pO~P!5iO#S$dOn(`X!Q(`X'y(`X(y(`X(z(`X!](`X#`(`X~Og(`X$O(`X~P!6kOn*xO#`*wOg(_X!](_X~O!]*yOg(^X~Oj%dOk%dOl%dO(T&ZOg(^P~Os*|O~Og)}O(T&ZO~O!l+SO~O(T(vO~Op+WO!S%hO![#iO!_%iO!|]O#i#lO#j#iO(T%gO!k(sP~O!g#vO#k+XO~O!S%hO![+ZO!](^O!_%iO(T%gO!Y(vP~Os'[O!S+]O![+[O(VTO(YUO(e(|O~O!^(xP~P!9|O!]+^Oa)TX'z)TX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa!ja!]!ja'z!ja'w!ja!Y!ja!k!jav!ja!_!ja%i!ja!g!ja~P!:tOR#zO!Q#yO!S#{O!l#xO(aVOP!ra[!raj!rar!ra!]!ra!p!ra#R!ra#n!ra#o!ra#p!ra#q!ra#r!ra#s!ra#t!ra#u!ra#v!ra#x!ra#z!ra#{!ra(r!ra(y!ra(z!ra~Oa!ra'z!ra'w!ra!Y!ra!k!rav!ra!_!ra%i!ra!g!ra~P!=[OR#zO!Q#yO!S#{O!l#xO(aVOP!ta[!taj!tar!ta!]!ta!p!ta#R!ta#n!ta#o!ta#p!ta#q!ta#r!ta#s!ta#t!ta#u!ta#v!ta#x!ta#z!ta#{!ta(r!ta(y!ta(z!ta~Oa!ta'z!ta'w!ta!Y!ta!k!tav!ta!_!ta%i!ta!g!ta~P!?rOh%VOn+gO!_'`O%i+fO~O!g+iOa(]X!_(]X'z(]X!](]X~Oa%nO!_XO'z%nO~Oh%VO!l%eO~Oh%VO!l%eO(T%gO~O!g#vO#k(xO~Ob+tO%j+uO(T+qO(VTO(YUO!^)XP~O!]+vO`)WX~O[+zO~O`+{O~O!_&PO(T%gO(U!lO`)WP~O%j,OO~P;SOh%VO#`,SO~Oh%VOn,VO!_$|O~O!_,XO~O!Q,ZO!_XO~O%n%vO~O!x,`O~Oe,eO~Ob,fO(T#nO(VTO(YUO!^)VP~Oe%}O~O%j!QO(T&ZO~P=gO[,kO`,jO~OPYOQYOSfOdzOeyOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!iuO!lZO!oYO!pYO!qYO!svO!xxO!|]O$niO%h}O(VTO(YUO(aVO(o[O~O!_!eO!u!gO$W!kO(T!dO~P!FyO`,jOa%nO'z%nO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa,pOl!OO!uwO%l!OO%m!OO%n!OO~P!IcO!l&oO~O&^,vO~O!_,xO~O&o,zO&q,{OP&laQ&laS&laY&laa&lad&lae&lal&lap&lar&las&lat&laz&la|&la!O&la!S&la!W&la!X&la!_&la!i&la!l&la!o&la!p&la!q&la!s&la!u&la!x&la!|&la$W&la$n&la%h&la%j&la%l&la%m&la%n&la%q&la%s&la%v&la%w&la%y&la&W&la&^&la&`&la&b&la&d&la&g&la&m&la&s&la&u&la&w&la&y&la&{&la'w&la(T&la(V&la(Y&la(a&la(o&la!^&la&e&lab&la&j&la~O(T-QO~Oh!eX!]!RX!^!RX!g!RX!g!eX!l!eX#`!RX~O!]!eX!^!eX~P#!iO!g-VO#`-UOh(jX!]#hX!^#hX!g(jX!l(jX~O!](jX!^(jX~P##[Oh%VO!g-XO!l%eO!]!aX!^!aX~Os!nO!S!oO(VTO(YUO(e!mO~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(VTO(YUO(aVO(o[O~O(T=QO~P#$qO!]-]O!^(iX~O!^-_O~O!g-VO#`-UO!]#hX!^#hX~O!]-`O!^(xX~O!^-bO~O!c-cO!d-cO(U!lO~P#$`O!^-fO~P'_On-iO!_'`O~O!Y-nO~Os!{a!b!{a!c!{a!d!{a#T!{a#U!{a#V!{a#W!{a#X!{a#[!{a#]!{a(U!{a(V!{a(Y!{a(e!{a(o!{a~P!#vO!p-sO#`-qO~PChO!c-uO!d-uO(U!lO~PDWOa%nO#`-qO'z%nO~Oa%nO!g#vO#`-qO'z%nO~Oa%nO!g#vO!p-sO#`-qO'z%nO(r'pO~O(P'xO(Q'xO(R-zO~Ov-{O~O!Y'Wa!]'Wa~P!:tO![.PO!Y'WX!]'WX~P%[O!](VO!Y(ha~O!Y(ha~PHRO!](^O!Y(va~O!S%hO![.TO!_%iO(T%gO!Y'^X!]'^X~O#`.VO!](ta!k(taa(ta'z(ta~O!g#vO~P#,wO!](jO!k(sa~O!S%hO!_%iO#j.ZO(T%gO~Op.`O!S%hO![.]O!_%iO!|]O#i._O#j.]O(T%gO!]'aX!k'aX~OR.dO!l#xO~Oh%VOn.gO!_'`O%i.fO~Oa#ci!]#ci'z#ci'w#ci!Y#ci!k#civ#ci!_#ci%i#ci!g#ci~P!:tOn>]O!Q*OO'y*PO(y$}O(z%PO~O#k#_aa#_a#`#_a'z#_a!]#_a!k#_a!_#_a!Y#_a~P#/sO#k(`XP(`XR(`X[(`Xa(`Xj(`Xr(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X'z(`X(a(`X(r(`X!k(`X!Y(`X'w(`Xv(`X!_(`X%i(`X!g(`X~P!6kO!].tO!k(kX~P!:tO!k.wO~O!Y.yO~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mia#mij#mir#mi!]#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#n#mi~P#3cO#n$OO~P#3cOP$[OR#zOr$aO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO[#mia#mij#mi!]#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#r#mi~P#6QO#r$QO~P#6QOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO(aVOa#mi!]#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#v#mi~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO(aVO(z#}Oa#mi!]#mi#z#mi#{#mi'z#mi(r#mi(y#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#x$UO~P#;VO#x#mi~P#;VO#v$SO~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO(aVO(y#|O(z#}Oa#mi!]#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#z#mi~P#={O#z$WO~P#={OP]XR]X[]Xj]Xr]X!Q]X!S]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X!]]X!^]X~O$O]X~P#@jOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO#z<gO#{<hO(aVO(r$YO(y#|O(z#}O~O$O.{O~P#BwO#S$dO#`<nO$Q<nO$O(gX!^(gX~P! uOa'da!]'da'z'da'w'da!k'da!Y'dav'da!_'da%i'da!g'da~P!:tO[#mia#mij#mir#mi!]#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO(y#mi(z#mi~P#EyOn>]O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P#EyO!]/POg(pX~P!1WOg/RO~Oa$Pi!]$Pi'z$Pi'w$Pi!Y$Pi!k$Piv$Pi!_$Pi%i$Pi!g$Pi~P!:tO$]/SO$_/SO~O$]/TO$_/TO~O!g)hO#`/UO!_$cX$Z$cX$]$cX$_$cX$f$cX~O![/VO~O!_)kO$Z/XO$])jO$_)jO$f/YO~O!]<iO!^(fX~P#BwO!^/ZO~O!g)hO$f({X~O$f/]O~Ov/^O~P!&zOx)yO(b)zO(c/aO~O!S/dO~O(y$}On%aa!Q%aa'y%aa(z%aa!]%aa#`%aa~Og%aa$O%aa~P#L{O(z%POn%ca!Q%ca'y%ca(y%ca!]%ca#`%ca~Og%ca$O%ca~P#MnO!]fX!gfX!kfX!k$zX(rfX~P!0SOp%WO![/mO!](^O(T/lO!Y(vP!Y)PP~P!1uOr*sO!b*qO!c*kO!d*kO!l*bO#[*rO%`*mO(U!lO(VTO(YUO~Os<}O!S/nO![+[O!^*pO(e<|O!^(xP~P$ [O!k/oO~P#/sO!]/pO!g#vO(r'pO!k)OX~O!k/uO~OnoX!QoX'yoX(yoX(zoX~O!g#vO!koX~P$#OOp/wO!S%hO![*^O!_%iO(T%gO!k)OP~O#k/xO~O!Y$zX!]$zX!g%RX~P!0SO!]/yO!Y)PX~P#/sO!g/{O~O!Y/}O~OpkO(T0OO~P.iOh%VOr0TO!g#vO!l%eO(r'pO~O!g+iO~Oa%nO!]0XO'z%nO~O!^0ZO~P!5iO!c0[O!d0[O(U!lO~P#$`Os!nO!S0]O(VTO(YUO(e!mO~O#[0_O~Og%aa!]%aa#`%aa$O%aa~P!1WOg%ca!]%ca#`%ca$O%ca~P!1WOj%dOk%dOl%dO(T&ZOg'mX!]'mX~O!]*yOg(^a~Og0hO~On0jO#`0iOg(_a!](_a~OR0kO!Q0kO!S0lO#S$dOn}a'y}a(y}a(z}a!]}a#`}a~Og}a$O}a~P$(cO!Q*OO'y*POn$sa(y$sa(z$sa!]$sa#`$sa~Og$sa$O$sa~P$)_O!Q*OO'y*POn$ua(y$ua(z$ua!]$ua#`$ua~Og$ua$O$ua~P$*QO#k0oO~Og%Ta!]%Ta#`%Ta$O%Ta~P!1WO!g#vO~O#k0rO~O!]+^Oa)Ta'z)Ta~OR#zO!Q#yO!S#{O!l#xO(aVOP!ri[!rij!rir!ri!]!ri!p!ri#R!ri#n!ri#o!ri#p!ri#q!ri#r!ri#s!ri#t!ri#u!ri#v!ri#x!ri#z!ri#{!ri(r!ri(y!ri(z!ri~Oa!ri'z!ri'w!ri!Y!ri!k!riv!ri!_!ri%i!ri!g!ri~P$+oOh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op0{O%]0|O(T0zO~P$.VO!g+iOa(]a!_(]a'z(]a!](]a~O#k1SO~O[]X!]fX!^fX~O!]1TO!^)XX~O!^1VO~O[1WO~Ob1YO(T+qO(VTO(YUO~O!_&PO(T%gO`'uX!]'uX~O!]+vO`)Wa~O!k1]O~P!:tO[1`O~O`1aO~O#`1fO~On1iO!_$|O~O(e(|O!^)UP~Oh%VOn1rO!_1oO%i1qO~O[1|O!]1zO!^)VX~O!^1}O~O`2POa%nO'z%nO~O(T#nO(VTO(YUO~O#S$dO#`$eO$Q$eOP(gXR(gX[(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~Oj2SO&[2TOa(gX~P$3pOj2SO#`$eO&[2TO~Oa2VO~P%[Oa2XO~O&e2[OP&ciQ&ciS&ciY&cia&cid&cie&cil&cip&cir&cis&cit&ciz&ci|&ci!O&ci!S&ci!W&ci!X&ci!_&ci!i&ci!l&ci!o&ci!p&ci!q&ci!s&ci!u&ci!x&ci!|&ci$W&ci$n&ci%h&ci%j&ci%l&ci%m&ci%n&ci%q&ci%s&ci%v&ci%w&ci%y&ci&W&ci&^&ci&`&ci&b&ci&d&ci&g&ci&m&ci&s&ci&u&ci&w&ci&y&ci&{&ci'w&ci(T&ci(V&ci(Y&ci(a&ci(o&ci!^&cib&ci&j&ci~Ob2bO!^2`O&j2aO~P`O!_XO!l2dO~O&q,{OP&liQ&liS&liY&lia&lid&lie&lil&lip&lir&lis&lit&liz&li|&li!O&li!S&li!W&li!X&li!_&li!i&li!l&li!o&li!p&li!q&li!s&li!u&li!x&li!|&li$W&li$n&li%h&li%j&li%l&li%m&li%n&li%q&li%s&li%v&li%w&li%y&li&W&li&^&li&`&li&b&li&d&li&g&li&m&li&s&li&u&li&w&li&y&li&{&li'w&li(T&li(V&li(Y&li(a&li(o&li!^&li&e&lib&li&j&li~O!Y2jO~O!]!aa!^!aa~P#BwOs!nO!S!oO![2pO(e!mO!]'XX!^'XX~P@nO!]-]O!^(ia~O!]'_X!^'_X~P!9|O!]-`O!^(xa~O!^2wO~P'_Oa%nO#`3QO'z%nO~Oa%nO!g#vO#`3QO'z%nO~Oa%nO!g#vO!p3UO#`3QO'z%nO(r'pO~Oa%nO'z%nO~P!:tO!]$_Ov$qa~O!Y'Wi!]'Wi~P!:tO!](VO!Y(hi~O!](^O!Y(vi~O!Y(wi!](wi~P!:tO!](ti!k(tia(ti'z(ti~P!:tO#`3WO!](ti!k(tia(ti'z(ti~O!](jO!k(si~O!S%hO!_%iO!|]O#i3]O#j3[O(T%gO~O!S%hO!_%iO#j3[O(T%gO~On3dO!_'`O%i3cO~Oh%VOn3dO!_'`O%i3cO~O#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aav%aa!_%aa%i%aa!g%aa~P#L{O#k%caP%caR%ca[%caa%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%cav%ca!_%ca%i%ca!g%ca~P#MnO#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!]%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aa#`%aav%aa!_%aa%i%aa!g%aa~P#/sO#k%caP%caR%ca[%caa%caj%car%ca!S%ca!]%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%ca#`%cav%ca!_%ca%i%ca!g%ca~P#/sO#k}aP}a[}aa}aj}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a'z}a(a}a(r}a!k}a!Y}a'w}av}a!_}a%i}a!g}a~P$(cO#k$saP$saR$sa[$saa$saj$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa'z$sa(a$sa(r$sa!k$sa!Y$sa'w$sav$sa!_$sa%i$sa!g$sa~P$)_O#k$uaP$uaR$ua[$uaa$uaj$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua'z$ua(a$ua(r$ua!k$ua!Y$ua'w$uav$ua!_$ua%i$ua!g$ua~P$*QO#k%TaP%TaR%Ta[%Taa%Taj%Tar%Ta!S%Ta!]%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta'z%Ta(a%Ta(r%Ta!k%Ta!Y%Ta'w%Ta#`%Tav%Ta!_%Ta%i%Ta!g%Ta~P#/sOa#cq!]#cq'z#cq'w#cq!Y#cq!k#cqv#cq!_#cq%i#cq!g#cq~P!:tO![3lO!]'YX!k'YX~P%[O!].tO!k(ka~O!].tO!k(ka~P!:tO!Y3oO~O$O!na!^!na~PKlO$O!ja!]!ja!^!ja~P#BwO$O!ra!^!ra~P!=[O$O!ta!^!ta~P!?rOg']X!]']X~P!,TO!]/POg(pa~OSfO!_4TO$d4UO~O!^4YO~Ov4ZO~P#/sOa$mq!]$mq'z$mq'w$mq!Y$mq!k$mqv$mq!_$mq%i$mq!g$mq~P!:tO!Y4]O~P!&zO!S4^O~O!Q*OO'y*PO(z%POn'ia(y'ia!]'ia#`'ia~Og'ia$O'ia~P%-fO!Q*OO'y*POn'ka(y'ka(z'ka!]'ka#`'ka~Og'ka$O'ka~P%.XO(r$YO~P#/sO!YfX!Y$zX!]fX!]$zX!g%RX#`fX~P!0SOp%WO(T=WO~P!1uOp4bO!S%hO![4aO!_%iO(T%gO!]'eX!k'eX~O!]/pO!k)Oa~O!]/pO!g#vO!k)Oa~O!]/pO!g#vO(r'pO!k)Oa~Og$|i!]$|i#`$|i$O$|i~P!1WO![4jO!Y'gX!]'gX~P!3tO!]/yO!Y)Pa~O!]/yO!Y)Pa~P#/sOP]XR]X[]Xj]Xr]X!Q]X!S]X!Y]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~Oj%YX!g%YX~P%2OOj4oO!g#vO~Oh%VO!g#vO!l%eO~Oh%VOr4tO!l%eO(r'pO~Or4yO!g#vO(r'pO~Os!nO!S4zO(VTO(YUO(e!mO~O(y$}On%ai!Q%ai'y%ai(z%ai!]%ai#`%ai~Og%ai$O%ai~P%5oO(z%POn%ci!Q%ci'y%ci(y%ci!]%ci#`%ci~Og%ci$O%ci~P%6bOg(_i!](_i~P!1WO#`5QOg(_i!](_i~P!1WO!k5VO~Oa$oq!]$oq'z$oq'w$oq!Y$oq!k$oqv$oq!_$oq%i$oq!g$oq~P!:tO!Y5ZO~O!]5[O!_)QX~P#/sOa$zX!_$zX%^]X'z$zX!]$zX~P!0SO%^5_OaoX!_oX'zoX!]oX~P$#OOp5`O(T#nO~O%^5_O~Ob5fO%j5gO(T+qO(VTO(YUO!]'tX!^'tX~O!]1TO!^)Xa~O[5kO~O`5lO~O[5pO~Oa%nO'z%nO~P#/sO!]5uO#`5wO!^)UX~O!^5xO~Or6OOs!nO!S*iO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!pO#W!pO#X!pO#[5}O#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O!^5|O~P%;eOn6TO!_1oO%i6SO~Oh%VOn6TO!_1oO%i6SO~Ob6[O(T#nO(VTO(YUO!]'sX!^'sX~O!]1zO!^)Va~O(VTO(YUO(e6^O~O`6bO~Oj6eO&[6fO~PNXO!k6gO~P%[Oa6iO~Oa6iO~P%[Ob2bO!^6nO&j2aO~P`O!g6pO~O!g6rOh(ji!](ji!^(ji!g(ji!l(jir(ji(r(ji~O!]#hi!^#hi~P#BwO#`6sO!]#hi!^#hi~O!]!ai!^!ai~P#BwOa%nO#`6|O'z%nO~Oa%nO!g#vO#`6|O'z%nO~O!](tq!k(tqa(tq'z(tq~P!:tO!](jO!k(sq~O!S%hO!_%iO#j7TO(T%gO~O!_'`O%i7WO~On7[O!_'`O%i7WO~O#k'iaP'iaR'ia['iaa'iaj'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia'z'ia(a'ia(r'ia!k'ia!Y'ia'w'iav'ia!_'ia%i'ia!g'ia~P%-fO#k'kaP'kaR'ka['kaa'kaj'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka'z'ka(a'ka(r'ka!k'ka!Y'ka'w'kav'ka!_'ka%i'ka!g'ka~P%.XO#k$|iP$|iR$|i[$|ia$|ij$|ir$|i!S$|i!]$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i'z$|i(a$|i(r$|i!k$|i!Y$|i'w$|i#`$|iv$|i!_$|i%i$|i!g$|i~P#/sO#k%aiP%aiR%ai[%aia%aij%air%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai'z%ai(a%ai(r%ai!k%ai!Y%ai'w%aiv%ai!_%ai%i%ai!g%ai~P%5oO#k%ciP%ciR%ci[%cia%cij%cir%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci'z%ci(a%ci(r%ci!k%ci!Y%ci'w%civ%ci!_%ci%i%ci!g%ci~P%6bO!]'Ya!k'Ya~P!:tO!].tO!k(ki~O$O#ci!]#ci!^#ci~P#BwOP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mij#mir#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#n#mi~P%NdO#n<_O~P%NdOP$[OR#zOr<kO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO[#mij#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#r#mi~P&!lO#r<aO~P&!lOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO(aVO#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#v#mi~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO(aVO(z#}O#z#mi#{#mi$O#mi(r#mi(y#mi!]#mi!^#mi~O#x<eO~P&&uO#x#mi~P&&uO#v<cO~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO(aVO(y#|O(z#}O#{#mi$O#mi(r#mi!]#mi!^#mi~O#z#mi~P&)UO#z<gO~P&)UOa#|y!]#|y'z#|y'w#|y!Y#|y!k#|yv#|y!_#|y%i#|y!g#|y~P!:tO[#mij#mir#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi!]#mi!^#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO(y#mi(z#mi~P&,QOn>^O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P&,QO#S$dOP(`XR(`X[(`Xj(`Xn(`Xr(`X!Q(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X$O(`X'y(`X(a(`X(r(`X(y(`X(z(`X!](`X!^(`X~O$O$Pi!]$Pi!^$Pi~P#BwO$O!ri!^!ri~P$+oOg']a!]']a~P!1WO!^7nO~O!]'da!^'da~P#BwO!Y7oO~P#/sO!g#vO(r'pO!]'ea!k'ea~O!]/pO!k)Oi~O!]/pO!g#vO!k)Oi~Og$|q!]$|q#`$|q$O$|q~P!1WO!Y'ga!]'ga~P#/sO!g7vO~O!]/yO!Y)Pi~P#/sO!]/yO!Y)Pi~O!Y7yO~Oh%VOr8OO!l%eO(r'pO~Oj8QO!g#vO~Or8TO!g#vO(r'pO~O!Q*OO'y*PO(z%POn'ja(y'ja!]'ja#`'ja~Og'ja$O'ja~P&5RO!Q*OO'y*POn'la(y'la(z'la!]'la#`'la~Og'la$O'la~P&5tOg(_q!](_q~P!1WO#`8VOg(_q!](_q~P!1WO!Y8WO~Og%Oq!]%Oq#`%Oq$O%Oq~P!1WOa$oy!]$oy'z$oy'w$oy!Y$oy!k$oyv$oy!_$oy%i$oy!g$oy~P!:tO!g6rO~O!]5[O!_)Qa~O!_'`OP$TaR$Ta[$Taj$Tar$Ta!Q$Ta!S$Ta!]$Ta!l$Ta!p$Ta#R$Ta#n$Ta#o$Ta#p$Ta#q$Ta#r$Ta#s$Ta#t$Ta#u$Ta#v$Ta#x$Ta#z$Ta#{$Ta(a$Ta(r$Ta(y$Ta(z$Ta~O%i7WO~P&8fO%^8[Oa%[i!_%[i'z%[i!]%[i~Oa#cy!]#cy'z#cy'w#cy!Y#cy!k#cyv#cy!_#cy%i#cy!g#cy~P!:tO[8^O~Ob8`O(T+qO(VTO(YUO~O!]1TO!^)Xi~O`8dO~O(e(|O!]'pX!^'pX~O!]5uO!^)Ua~O!^8nO~P%;eO(o!sO~P$&YO#[8oO~O!_1oO~O!_1oO%i8qO~On8tO!_1oO%i8qO~O[8yO!]'sa!^'sa~O!]1zO!^)Vi~O!k8}O~O!k9OO~O!k9RO~O!k9RO~P%[Oa9TO~O!g9UO~O!k9VO~O!](wi!^(wi~P#BwOa%nO#`9_O'z%nO~O!](ty!k(tya(ty'z(ty~P!:tO!](jO!k(sy~O%i9bO~P&8fO!_'`O%i9bO~O#k$|qP$|qR$|q[$|qa$|qj$|qr$|q!S$|q!]$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q'z$|q(a$|q(r$|q!k$|q!Y$|q'w$|q#`$|qv$|q!_$|q%i$|q!g$|q~P#/sO#k'jaP'jaR'ja['jaa'jaj'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja'z'ja(a'ja(r'ja!k'ja!Y'ja'w'jav'ja!_'ja%i'ja!g'ja~P&5RO#k'laP'laR'la['laa'laj'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la'z'la(a'la(r'la!k'la!Y'la'w'lav'la!_'la%i'la!g'la~P&5tO#k%OqP%OqR%Oq[%Oqa%Oqj%Oqr%Oq!S%Oq!]%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq'z%Oq(a%Oq(r%Oq!k%Oq!Y%Oq'w%Oq#`%Oqv%Oq!_%Oq%i%Oq!g%Oq~P#/sO!]'Yi!k'Yi~P!:tO$O#cq!]#cq!^#cq~P#BwO(y$}OP%aaR%aa[%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa$O%aa(a%aa(r%aa!]%aa!^%aa~On%aa!Q%aa'y%aa(z%aa~P&IyO(z%POP%caR%ca[%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca$O%ca(a%ca(r%ca!]%ca!^%ca~On%ca!Q%ca'y%ca(y%ca~P&LQOn>^O!Q*OO'y*PO(z%PO~P&IyOn>^O!Q*OO'y*PO(y$}O~P&LQOR0kO!Q0kO!S0lO#S$dOP}a[}aj}an}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a$O}a'y}a(a}a(r}a(y}a(z}a!]}a!^}a~O!Q*OO'y*POP$saR$sa[$saj$san$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa$O$sa(a$sa(r$sa(y$sa(z$sa!]$sa!^$sa~O!Q*OO'y*POP$uaR$ua[$uaj$uan$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua$O$ua(a$ua(r$ua(y$ua(z$ua!]$ua!^$ua~On>^O!Q*OO'y*PO(y$}O(z%PO~OP%TaR%Ta[%Taj%Tar%Ta!S%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta$O%Ta(a%Ta(r%Ta!]%Ta!^%Ta~P''VO$O$mq!]$mq!^$mq~P#BwO$O$oq!]$oq!^$oq~P#BwO!^9oO~O$O9pO~P!1WO!g#vO!]'ei!k'ei~O!g#vO(r'pO!]'ei!k'ei~O!]/pO!k)Oq~O!Y'gi!]'gi~P#/sO!]/yO!Y)Pq~Or9wO!g#vO(r'pO~O[9yO!Y9xO~P#/sO!Y9xO~Oj:PO!g#vO~Og(_y!](_y~P!1WO!]'na!_'na~P#/sOa%[q!_%[q'z%[q!]%[q~P#/sO[:UO~O!]1TO!^)Xq~O`:YO~O#`:ZO!]'pa!^'pa~O!]5uO!^)Ui~P#BwO!S:]O~O!_1oO%i:`O~O(VTO(YUO(e:eO~O!]1zO!^)Vq~O!k:hO~O!k:iO~O!k:jO~O!k:jO~P%[O#`:mO!]#hy!^#hy~O!]#hy!^#hy~P#BwO%i:rO~P&8fO!_'`O%i:rO~O$O#|y!]#|y!^#|y~P#BwOP$|iR$|i[$|ij$|ir$|i!S$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i$O$|i(a$|i(r$|i!]$|i!^$|i~P''VO!Q*OO'y*PO(z%POP'iaR'ia['iaj'ian'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia$O'ia(a'ia(r'ia(y'ia!]'ia!^'ia~O!Q*OO'y*POP'kaR'ka['kaj'kan'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka$O'ka(a'ka(r'ka(y'ka(z'ka!]'ka!^'ka~O(y$}OP%aiR%ai[%aij%ain%air%ai!Q%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai$O%ai'y%ai(a%ai(r%ai(z%ai!]%ai!^%ai~O(z%POP%ciR%ci[%cij%cin%cir%ci!Q%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci$O%ci'y%ci(a%ci(r%ci(y%ci!]%ci!^%ci~O$O$oy!]$oy!^$oy~P#BwO$O#cy!]#cy!^#cy~P#BwO!g#vO!]'eq!k'eq~O!]/pO!k)Oy~O!Y'gq!]'gq~P#/sOr:|O!g#vO(r'pO~O[;QO!Y;PO~P#/sO!Y;PO~Og(_!R!](_!R~P!1WOa%[y!_%[y'z%[y!]%[y~P#/sO!]1TO!^)Xy~O!]5uO!^)Uq~O(T;XO~O!_1oO%i;[O~O!k;_O~O%i;dO~P&8fOP$|qR$|q[$|qj$|qr$|q!S$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q$O$|q(a$|q(r$|q!]$|q!^$|q~P''VO!Q*OO'y*PO(z%POP'jaR'ja['jaj'jan'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja$O'ja(a'ja(r'ja(y'ja!]'ja!^'ja~O!Q*OO'y*POP'laR'la['laj'lan'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la$O'la(a'la(r'la(y'la(z'la!]'la!^'la~OP%OqR%Oq[%Oqj%Oqr%Oq!S%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq$O%Oq(a%Oq(r%Oq!]%Oq!^%Oq~P''VOg%e!Z!]%e!Z#`%e!Z$O%e!Z~P!1WO!Y;hO~P#/sOr;iO!g#vO(r'pO~O[;kO!Y;hO~P#/sO!]'pq!^'pq~P#BwO!]#h!Z!^#h!Z~P#BwO#k%e!ZP%e!ZR%e!Z[%e!Za%e!Zj%e!Zr%e!Z!S%e!Z!]%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z'z%e!Z(a%e!Z(r%e!Z!k%e!Z!Y%e!Z'w%e!Z#`%e!Zv%e!Z!_%e!Z%i%e!Z!g%e!Z~P#/sOr;tO!g#vO(r'pO~O!Y;uO~P#/sOr;|O!g#vO(r'pO~O!Y;}O~P#/sOP%e!ZR%e!Z[%e!Zj%e!Zr%e!Z!S%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z$O%e!Z(a%e!Z(r%e!Z!]%e!Z!^%e!Z~P''VOr<QO!g#vO(r'pO~Ov(fX~P1qO!Q%rO~P!)[O(U!lO~P!)[O!YfX!]fX#`fX~P%2OOP]XR]X[]Xj]Xr]X!Q]X!S]X!]]X!]fX!l]X!p]X#R]X#S]X#`]X#`fX#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~O!gfX!k]X!kfX(rfX~P'LTOP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_XO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]<iO!^$qa~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<tO!S${O!_$|O!i>WO!l$xO#j<zO$W%`O$t<vO$v<xO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Ol)dO~P(!yOr!eX(r!eX~P#!iOr(jX(r(jX~P##[O!^]X!^fX~P'LTO!YfX!Y$zX!]fX!]$zX#`fX~P!0SO#k<^O~O!g#vO#k<^O~O#`<nO~Oj<bO~O#`=OO!](wX!^(wX~O#`<nO!](uX!^(uX~O#k=PO~Og=RO~P!1WO#k=XO~O#k=YO~Og=RO(T&ZO~O!g#vO#k=ZO~O!g#vO#k=PO~O$O=[O~P#BwO#k=]O~O#k=^O~O#k=cO~O#k=dO~O#k=eO~O#k=fO~O$O=gO~P!1WO$O=hO~P!1WOl=sO~P7eOk#S#T#U#W#X#[#i#j#u$n$t$v$y%]%^%h%i%j%q%s%v%w%y%{~(OT#o!X'|(U#ps#n#qr!Q'}$]'}(T$_(e~",goto:"$9Y)]PPPPPP)^PP)aP)rP+W/]PPPP6mPP7TPP=QPPP@tPA^PA^PPPA^PCfPA^PA^PA^PCjPCoPD^PIWPPPI[PPPPI[L_PPPLeMVPI[PI[PP! eI[PPPI[PI[P!#lI[P!'S!(X!(bP!)U!)Y!)U!,gPPPPPPP!-W!(XPP!-h!/YP!2iI[I[!2n!5z!:h!:h!>gPPP!>oI[PPPPPPPPP!BOP!C]PPI[!DnPI[PI[I[I[I[I[PI[!FQP!I[P!LbP!Lf!Lp!Lt!LtP!IXP!Lx!LxP#!OP#!SI[PI[#!Y#%_CjA^PA^PA^A^P#&lA^A^#)OA^#+vA^#.SA^A^#.r#1W#1W#1]#1f#1W#1qPP#1WPA^#2ZA^#6YA^A^6mPPP#:_PPP#:x#:xP#:xP#;`#:xPP#;fP#;]P#;]#;y#;]#<e#<k#<n)aP#<q)aP#<z#<z#<zP)aP)aP)aP)aPP)aP#=Q#=TP#=T)aP#=XP#=[P)aP)aP)aP)aP)aP)a)aPP#=b#=h#=s#=y#>P#>V#>]#>k#>q#>{#?R#?]#?c#?s#?y#@k#@}#AT#AZ#Ai#BO#Cs#DR#DY#Et#FS#Gt#HS#HY#H`#Hf#Hp#Hv#H|#IW#Ij#IpPPPPPPPPPPP#IvPPPPPPP#Jk#Mx$ b$ i$ qPPP$']P$'f$*_$0x$0{$1O$1}$2Q$2X$2aP$2g$2jP$3W$3[$4S$5b$5g$5}PP$6S$6Y$6^$6a$6e$6i$7e$7|$8e$8i$8l$8o$8y$8|$9Q$9UR!|RoqOXst!Z#d%m&r&t&u&w,s,x2[2_Y!vQ'`-e1o5{Q%tvQ%|yQ&T|Q&j!VS'W!e-]Q'f!iS'l!r!yU*k$|*Z*oQ+o%}S+|&V&WQ,d&dQ-c'_Q-m'gQ-u'mQ0[*qQ1b,OQ1y,eR<{<Y%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_S#q]<V!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU+P%]<s<tQ+t&PQ,f&gQ,m&oQ0x+gQ0}+iQ1Y+uQ2R,kQ3`.gQ5`0|Q5f1TQ6[1zQ7Y3dQ8`5gR9e7['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S!S!nQ!r!v!y!z$|'W'_'`'l'm'n*k*o*q*r-]-c-e-u0[0_1o5{5}%[$ti#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q&X|Q'U!eS'[%i-`Q+t&PQ,P&WQ,f&gQ0n+SQ1Y+uQ1_+{Q2Q,jQ2R,kQ5f1TQ5o1aQ6[1zQ6_1|Q6`2PQ8`5gQ8c5lQ8|6bQ:X8dQ:f8yQ;V:YR<}*ZrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R,h&k&z^OPXYstuvwz!Z!`!g!j!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'b'r(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>R>S[#]WZ#W#Z'X(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ%wxQ%{yW&Q|&V&W,OQ&_!TQ'c!hQ'e!iQ(q#sS+n%|%}Q+r&PQ,_&bQ,c&dS-l'f'gQ.i(rQ1R+oQ1X+uQ1Z+vQ1^+zQ1t,`S1x,d,eQ2|-mQ5e1TQ5i1WQ5n1`Q6Z1yQ8_5gQ8b5kQ8f5pQ:T8^R;T:U!U$zi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y!^%yy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{Q+h%wQ,T&[Q,W&]Q,b&dQ.h(qQ1s,_U1w,c,d,eQ3e.iQ6U1tS6Y1x1yQ8x6Z#f>T#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o>U<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hW%Ti%V*y>PS&[!Q&iQ&]!RQ&^!SU*}%[%d=sR,R&Y%]%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^T)z$u){V+P%]<s<tW'[!e%i*Z-`S(}#y#zQ+c%rQ+y&SS.b(m(nQ1j,XQ5T0kR8i5u'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S$i$^c#Y#e%q%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.|.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vT#TV#U'RkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ'Y!eR2q-]!W!nQ!e!r!v!y!z$|'W'_'`'l'm'n*Z*k*o*q*r-]-c-e-u0[0_1o5{5}R1l,ZnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&y!^Q'v!xS(s#u<^Q+l%zQ,]&_Q,^&aQ-j'dQ-w'oS.r(x=PS0q+X=ZQ1P+mQ1n,[Q2c,zQ2e,{Q2m-WQ2z-kQ2}-oS5Y0r=eQ5a1QS5d1S=fQ6t2oQ6x2{Q6}3SQ8]5bQ9Y6vQ9Z6yQ9^7OR:l9V$d$]c#Y#e%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vS(o#p'iQ)P#zS+b%q.|S.c(n(pR3^.d'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS#q]<VQ&t!XQ&u!YQ&w![Q&x!]R2Z,vQ'a!hQ+e%wQ-h'cS.e(q+hQ2x-gW3b.h.i0w0yQ6w2yW7U3_3a3e5^U9a7V7X7ZU:q9c9d9fS;b:p:sQ;p;cR;x;qU!wQ'`-eT5y1o5{!Q_OXZ`st!V!Z#d#h%e%m&i&k&r&t&u&w(j,s,x.[2[2_]!pQ!r'`-e1o5{T#q]<V%^{OPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S(}#y#zS.b(m(n!s=l$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU$fd)_,mS(p#p'iU*v%R(w4OU0m+O.n7gQ5^0xQ7V3`Q9d7YR:s9em!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}Q't!uS(f#g2US-s'k'wQ/s*]Q0R*jQ3U-vQ4f/tQ4r0TQ4s0UQ4x0^Q7r4`S7}4t4vS8R4y4{Q9r7sQ9v7yQ9{8OQ:Q8TS:{9w9xS;g:|;PS;s;h;iS;{;t;uS<P;|;}R<S<QQ#wbQ's!uS(e#g2US(g#m+WQ+Y%fQ+j%xQ+p&OU-r'k't'wQ.W(fU/r*]*`/wQ0S*jQ0V*lQ1O+kQ1u,aS3R-s-vQ3Z.`S4e/s/tQ4n0PS4q0R0^Q4u0WQ6W1vQ7P3US7q4`4bQ7u4fU7|4r4x4{Q8P4wQ8v6XS9q7r7sQ9u7yQ9}8RQ:O8SQ:c8wQ:y9rS:z9v9xQ;S:QQ;^:dS;f:{;PS;r;g;hS;z;s;uS<O;{;}Q<R<PQ<T<SQ=o=jQ={=tR=|=uV!wQ'`-e%^aOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S#wz!j!r=i$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=o>R%^bOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Q%fj!^%xy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{S&Oz!jQ+k%yQ,a&dW1v,b,c,d,eU6X1w1x1yS8w6Y6ZQ:d8x!r=j$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ=t>QR=u>R%QeOPXYstuvw!Z!`!g!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Y#bWZ#W#Z(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ,n&o!p=k$Z$n)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=n'XU']!e%i*ZR2s-`%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ,m&oQ0x+gQ3`.gQ7Y3dR9e7[!b$Tc#Y%q(S(Y(t(y)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!P<d)^)q-Z.|2k2n3p3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!f$Vc#Y%q(S(Y(t(y)W)X)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!T<f)^)q-Z.|2k2n3p3v3w3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!^$Zc#Y%q(S(Y(t(y)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<WQ4_/kz>S)^)q-Z.|2k2n3p4P4X6u7b7k7l8k9X9g9m9n;W;`=vQ>X>ZR>Y>['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS$oh$pR4U/U'XgOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$kf$qQ$ifS)j$l)nR)v$qT$jf$qT)l$l)n'XhOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$oh$pQ$rhR)u$p%^jOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_!s>Q$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S#glOPXZst!Z!`!o#S#d#o#{$n%m&k&n&o&r&t&u&w&{'T'b)O)s*i+]+g,p,s,x-i.g/V/n0]0l1r2S2T2V2X2[2_2a3d4T4z6T6e6f6i7[8t9T!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^Q+T%aQ/c*Oo4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!U$yi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>YQ*c$zU*l$|*Z*oQ+U%bQ0W*m#f=q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n=r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hQ=w>TQ=x>UQ=y>VR=z>W!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hnoOXst!Z#d%m&r&t&u&w,s,x2[2_S*f${*YQ-R'OQ-S'QR4i/y%[%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q,U&]Q1h,WQ5s1gR8h5tV*n$|*Z*oU*n$|*Z*oT5z1o5{S0P*i/nQ4w0]T8S4z:]Q+j%xQ0V*lQ1O+kQ1u,aQ6W1vQ8v6XQ:c8wR;^:d!U%Oi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Yx*R$v)e*S*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>OS0`*t0a#f<o#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<p<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!d=S(u)c*[*e.j.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[`=T3}7c7f7j9h:t:w;yS=_.l3iT=`7e9k!U%Qi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y|*T$v)e*U*t+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>OS0b*u0c#f<q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!h=U(u)c*[*e.k.l.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[d=V3}7d7e7j9h9i:t:u:w;yS=a.m3jT=b7f9lrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q&f!UR,p&ornOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R&f!UQ,Y&^R1d,RsnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q1p,_S6R1s1tU8p6P6Q6US:_8r8sS;Y:^:aQ;m;ZR;w;nQ&m!VR,i&iR6_1|R:f8yW&Q|&V&W,OR1Z+vQ&r!WR,s&sR,y&xT2],x2_R,}&yQ,|&yR2f,}Q'y!{R-y'ySsOtQ#dXT%ps#dQ#OTR'{#OQ#RUR'}#RQ){$uR/`){Q#UVR(Q#UQ#XWU(W#X(X.QQ(X#YR.Q(YQ-^'YR2r-^Q.u(yS3m.u3nR3n.vQ-e'`R2v-eY!rQ'`-e1o5{R'j!rQ/Q)eR4S/QU#_W%h*YU(_#_(`.RQ(`#`R.R(ZQ-a']R2t-at`OXst!V!Z#d%m&i&k&r&t&u&w,s,x2[2_S#hZ%eU#r`#h.[R.[(jQ(k#jQ.X(gW.a(k.X3X7RQ3X.YR7R3YQ)n$lR/W)nQ$phR)t$pQ$`cU)a$`-|<jQ-|<WR<j)qQ/q*]W4c/q4d7t9sU4d/r/s/tS7t4e4fR9s7u$e*Q$v(u)c)e*[*e*t*u+Q+R+V.l.m.o.p.q/_/g/i/k/v/|0d0e0v1e3f3g3h3}4R4[4g4h4l4|5O5R5S5W5r7]7^7_7`7e7f7h7i7j7p7w7z8U8X8Z9h9i9j9t9|:R:S:t:u:v:w:x:};R;e;j;v;y=p=}>O>Z>[Q/z*eU4k/z4m7xQ4m/|R7x4lS*o$|*ZR0Y*ox*S$v)e*t*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>O!d.j(u)c*[*e.l.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/h*S.j7ca7c3}7e7f7j9h:t:w;yQ0a*tQ3i.lU4}0a3i9kR9k7e|*U$v)e*t*u+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>O!h.k(u)c*[*e.l.m.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/j*U.k7de7d3}7e7f7j9h9i:t:u:w;yQ0c*uQ3j.mU5P0c3j9lR9l7fQ*z%UR0g*zQ5]0vR8Y5]Q+_%kR0u+_Q5v1jS8j5v:[R:[8kQ,[&_R1m,[Q5{1oR8m5{Q1{,fS6]1{8zR8z6_Q1U+rW5h1U5j8a:VQ5j1XQ8a5iR:V8bQ+w&QR1[+wQ2_,xR6m2_YrOXst#dQ&v!ZQ+a%mQ,r&rQ,t&tQ,u&uQ,w&wQ2Y,sS2],x2_R6l2[Q%opQ&z!_Q&}!aQ'P!bQ'R!cQ'q!uQ+`%lQ+l%zQ,Q&XQ,h&mQ-P&|W-p'k's't'wQ-w'oQ0X*nQ1P+mQ1c,PS2O,i,lQ2g-OQ2h-RQ2i-SQ2}-oW3P-r-s-v-xQ5a1QQ5m1_Q5q1eQ6V1uQ6a2QQ6k2ZU6z3O3R3UQ6}3SQ8]5bQ8e5oQ8g5rQ8l5zQ8u6WQ8{6`S9[6{7PQ9^7OQ:W8cQ:b8vQ:g8|Q:n9]Q;U:XQ;]:cQ;a:oQ;l;VR;o;^Q%zyQ'd!iQ'o!uU+m%{%|%}Q-W'VU-k'e'f'gS-o'k'uQ0Q*jS1Q+n+oQ2o-YS2{-l-mQ3S-tS4p0R0UQ5b1RQ6v2uQ6y2|Q7O3TU7{4r4s4vQ9z7}R;O9{S$wi>PR*{%VU%Ui%V>PR0f*yQ$viS(u#v+iS)c$b$cQ)e$dQ*[$xS*e${*YQ*t%OQ*u%QQ+Q%^Q+R%_Q+V%cQ.l<oQ.m<qQ.o<uQ.p<wQ.q<yQ/_)yQ/g*RQ/i*TQ/k*VQ/v*aS/|*g/mQ0d*wQ0e*xl0v+f,V.f1i1q3c6S7W8q9b:`:r;[;dQ1e,SQ3f=SQ3g=UQ3h=XS3}<l<mQ4R/PS4[/d4^Q4g/xQ4h/yQ4l/{Q4|0`Q5O0bQ5R0iQ5S0jQ5W0oQ5r1fQ7]=]Q7^=_Q7_=aQ7`=cQ7e<pQ7f<rQ7h<vQ7i<xQ7j<zQ7p4_Q7w4jQ7z4oQ8U5QQ8X5[Q8Z5_Q9h=YQ9i=TQ9j=VQ9t7vQ9|8QQ:R8VQ:S8[Q:t=^Q:u=`Q:v=bQ:w=dQ:x9pQ:}9yQ;R:PQ;e=gQ;j;QQ;v;kQ;y=hQ=p>PQ=}>XQ>O>YQ>Z>]R>[>^Q+O%]Q.n<sR7g<tnpOXst!Z#d%m&r&t&u&w,s,x2[2_Q!fPS#fZ#oQ&|!`W'h!o*i0]4zQ(P#SQ)Q#{Q)r$nS,l&k&nQ,q&oQ-O&{S-T'T/nQ-g'bQ.x)OQ/[)sQ0s+]Q0y+gQ2W,pQ2y-iQ3a.gQ4W/VQ5U0lQ6Q1rQ6c2SQ6d2TQ6h2VQ6j2XQ6o2aQ7Z3dQ7m4TQ8s6TQ9P6eQ9Q6fQ9S6iQ9f7[Q:a8tR:k9T#[cOPXZst!Z!`!o#d#o#{%m&k&n&o&r&t&u&w&{'T'b)O*i+]+g,p,s,x-i.g/n0]0l1r2S2T2V2X2[2_2a3d4z6T6e6f6i7[8t9TQ#YWQ#eYQ%quQ%svS%uw!gS(S#W(VQ(Y#ZQ(t#uQ(y#xQ)R$OQ)S$PQ)T$QQ)U$RQ)V$SQ)W$TQ)X$UQ)Y$VQ)Z$WQ)[$XQ)^$ZQ)`$_Q)b$aQ)g$eW)q$n)s/V4TQ+d%tQ+x&RS-Z'X2pQ-x'rS-}(T.PQ.S(]Q.U(dQ.s(xQ.v(zQ.z<UQ.|<XQ.}<YQ/O<]Q/b)}Q0p+XQ2k-UQ2n-XQ3O-qQ3V.VQ3k.tQ3p<^Q3q<_Q3r<`Q3s<aQ3t<bQ3u<cQ3v<dQ3w<eQ3x<fQ3y<gQ3z<hQ3{.{Q3|<kQ4P<nQ4Q<{Q4X<iQ5X0rQ5c1SQ6u=OQ6{3QQ7Q3WQ7a3lQ7b=PQ7k=RQ7l=ZQ8k5wQ9X6sQ9]6|Q9g=[Q9m=eQ9n=fQ:o9_Q;W:ZQ;`:mQ<W#SR=v>SR#[WR'Z!el!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}S'V!e-]U*j$|*Z*oS-Y'W'_S0U*k*qQ0^*rQ2u-cQ4v0[R4{0_R({#xQ!fQT-d'`-e]!qQ!r'`-e1o5{Q#p]R'i<VR)f$dY!uQ'`-e1o5{Q'k!rS'u!v!yS'w!z5}S-t'l'mQ-v'nR3T-uT#kZ%eS#jZ%eS%km,oU(g#h#i#lS.Y(h(iQ.^(jQ0t+^Q3Y.ZU3Z.[.]._S7S3[3]R9`7Td#^W#W#Z%h(T(^*Y+Z.T/mr#gZm#h#i#l%e(h(i(j+^.Z.[.]._3[3]7TS*]$x*bQ/t*^Q2U,oQ2l-VQ4`/pQ6q2dQ7s4aQ9W6rT=m'X+[V#aW%h*YU#`W%h*YS(U#W(^U(Z#Z+Z/mS-['X+[T.O(T.TV'^!e%i*ZQ$lfR)x$qT)m$l)nR4V/UT*_$x*bT*h${*YQ0w+fQ1g,VQ3_.fQ5t1iQ6P1qQ7X3cQ8r6SQ9c7WQ:^8qQ:p9bQ;Z:`Q;c:rQ;n;[R;q;dnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&l!VR,h&itmOXst!U!V!Z#d%m&i&r&t&u&w,s,x2[2_R,o&oT%lm,oR1k,XR,g&gQ&U|S+}&V&WR1^,OR+s&PT&p!W&sT&q!W&sT2^,x2_",nodeNames:"\u26A0 ArithOp ArithOp ?. JSXStartTag LineComment BlockComment Script Hashbang ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > < TypeParamList in out const TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast < ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate asserts is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration defer ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:380,context:eJ,nodeProps:[["isolate",-8,5,6,14,37,39,51,53,55,""],["group",-26,9,17,19,68,207,211,215,216,218,221,224,234,237,243,245,247,249,252,258,264,266,268,270,272,274,275,"Statement",-34,13,14,32,35,36,42,51,54,55,57,62,70,72,76,80,82,84,85,110,111,120,121,136,139,141,142,143,144,145,147,148,167,169,171,"Expression",-23,31,33,37,41,43,45,173,175,177,178,180,181,182,184,185,186,188,189,190,201,203,205,206,"Type",-3,88,103,109,"ClassItem"],["openedBy",23,"<",38,"InterpolationStart",56,"[",60,"{",73,"(",160,"JSXStartCloseTag"],["closedBy",-2,24,168,">",40,"InterpolationEnd",50,"]",61,"}",74,")",165,"JSXEndTag"]],propSources:[oJ],skippedNodes:[0,5,6,278],repeatNodeCount:37,tokenData:"$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$<r#p#q$=h#q#r$>x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$i&j(Wp(Z!b'|0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(X#S$i&j'}0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$i&j(Wp(Z!b'}0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$i&j!p),Q(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(V':f$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$i&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$d`$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$d``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$d`$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(Z!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$d`(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$i&j(Wp(Z!bOY%ZYZ&cZq%Zqr<Srs&}st%ZtuCruw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr(r<__WS$i&j(Wp(Z!bOY<SYZ&cZr<Srs=^sw<Swx@nx!^<S!^!_Bm!_#O<S#O#P>`#P#o<S#o#pBm#p;'S<S;'S;=`Cl<%lO<S(Q=g]WS$i&j(Z!bOY=^YZ&cZw=^wx>`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$i&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(Z!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$i&j(WpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(WpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Wp(Z!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l<S%9[C}i$i&j(o%1l(Wp(Z!bOY%ZYZ&cZr%Zrs&}st%ZtuCruw%Zwx(rx!Q%Z!Q![Cr![!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr%9[EoP;=`<%lCr07[FRk$i&j(Wp(Z!b$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr+dHRk$i&j(Wp(Z!b$]#tOY%ZYZ&cZr%Zrs&}st%ZtuGvuw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Gv![!^%Z!^!_*g!_!c%Z!c!}Gv!}#O%Z#O#P&c#P#R%Z#R#SGv#S#T%Z#T#oGv#o#p*g#p$g%Z$g;'SGv;'S;=`Iv<%lOGv+dIyP;=`<%lGv07[JPP;=`<%lEr(KWJ_`$i&j(Wp(Z!b#p(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWKl_$i&j$Q(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,#xLva(z+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sv%ZvwM{wx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWNW`$i&j#z(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At! c_(Y';W$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b'l!!i_$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b&z!#mX$i&jOw!#hwx6cx!^!#h!^!_!$Y!_#o!#h#o#p!$Y#p;'S!#h;'S;=`!$r<%lO!#h`!$]TOw!$Ywx7]x;'S!$Y;'S;=`!$l<%lO!$Y`!$oP;=`<%l!$Y&z!$uP;=`<%l!#h'l!%R]$d`$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r!Q!&PZ(WpOY!%zYZ!$YZr!%zrs!$Ysw!%zwx!&rx#O!%z#O#P!$Y#P;'S!%z;'S;=`!']<%lO!%z!Q!&yU$d`(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r!Q!'`P;=`<%l!%z'l!'fP;=`<%l!!b/5|!'t_!l/.^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&U!)O_!k!Lf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z-!n!*[b$i&j(Wp(Z!b(U%&f#q(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!+d{!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW!+o`$i&j(Wp(Z!b#n(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;x!,|`$i&j(Wp(Z!br+4YOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,$U!.Z_!]+Jf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!/ec$i&j(Wp(Z!b!Q.2^OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!0p!P!Q%Z!Q![!3Y![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!0ya$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!2O!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!2Z_![!L^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!3eg$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!3Y![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S!3Y#S#X%Z#X#Y!4|#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!5Vg$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!6n|}%Z}!O!6n!O!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!6wc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!8_c$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!9uf$i&j(Wp(Z!b#o(ChOY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcxz!;Zz{#-}{!P!;Z!P!Q#/d!Q!^!;Z!^!_#(i!_!`#7S!`!a#8i!a!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z?O!;fb$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z>^!<w`$i&j(Z!b!X7`OY!<nYZ&cZw!<nwx!=yx!P!<n!P!Q!Eq!Q!^!<n!^!_!Gr!_!}!<n!}#O!KS#O#P!Dy#P#o!<n#o#p!Gr#p;'S!<n;'S;=`!L]<%lO!<n<z!>Q^$i&j!X7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!?Td$i&j!X7`O!^&c!_#W&c#W#X!>|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!X7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!X7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c<z!C][$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#O!CW#O#P!DR#P#Q!=y#Q#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DWX$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DvP;=`<%l!CW<z!EOX$i&jOY!=yYZ&cZ!^!=y!^!_!@c!_#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!EnP;=`<%l!=y>^!Ezl$i&j(Z!b!X7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(Z!b!X7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(Z!b!X7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(Z!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$i&j(Z!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!<n#Q#o!KS#o#p!JU#p;'S!KS;'S;=`!LV<%lO!KS>^!LYP;=`<%l!KS>^!L`P;=`<%l!<n=l!Ll`$i&j(Wp!X7`OY!LcYZ&cZr!Lcrs!=ys!P!Lc!P!Q!Mn!Q!^!Lc!^!_# o!_!}!Lc!}#O#%P#O#P!Dy#P#o!Lc#o#p# o#p;'S!Lc;'S;=`#&Y<%lO!Lc=l!Mwl$i&j(Wp!X7`OY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#W(r#W#X!Mn#X#Z(r#Z#[!Mn#[#](r#]#^!Mn#^#a(r#a#b!Mn#b#g(r#g#h!Mn#h#i(r#i#j!Mn#j#k!Mn#k#m(r#m#n!Mn#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r8Q# vZ(Wp!X7`OY# oZr# ors!@cs!P# o!P!Q#!i!Q!}# o!}#O#$R#O#P!Bq#P;'S# o;'S;=`#$y<%lO# o8Q#!pe(Wp!X7`OY)rZr)rs#O)r#P#W)r#W#X#!i#X#Z)r#Z#[#!i#[#])r#]#^#!i#^#a)r#a#b#!i#b#g)r#g#h#!i#h#i)r#i#j#!i#j#k#!i#k#m)r#m#n#!i#n;'S)r;'S;=`*Z<%lO)r8Q#$WX(WpOY#$RZr#$Rrs!Ars#O#$R#O#P!B[#P#Q# o#Q;'S#$R;'S;=`#$s<%lO#$R8Q#$vP;=`<%l#$R8Q#$|P;=`<%l# o=l#%W^$i&j(WpOY#%PYZ&cZr#%Prs!CWs!^#%P!^!_#$R!_#O#%P#O#P!DR#P#Q!Lc#Q#o#%P#o#p#$R#p;'S#%P;'S;=`#&S<%lO#%P=l#&VP;=`<%l#%P=l#&]P;=`<%l!Lc?O#&kn$i&j(Wp(Z!b!X7`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#W%Z#W#X#&`#X#Z%Z#Z#[#&`#[#]%Z#]#^#&`#^#a%Z#a#b#&`#b#g%Z#g#h#&`#h#i%Z#i#j#&`#j#k#&`#k#m%Z#m#n#&`#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z9d#(r](Wp(Z!b!X7`OY#(iZr#(irs!Grsw#(iwx# ox!P#(i!P!Q#)k!Q!}#(i!}#O#+`#O#P!Bq#P;'S#(i;'S;=`#,`<%lO#(i9d#)th(Wp(Z!b!X7`OY*gZr*grs'}sw*gwx)rx#O*g#P#W*g#W#X#)k#X#Z*g#Z#[#)k#[#]*g#]#^#)k#^#a*g#a#b#)k#b#g*g#g#h#)k#h#i*g#i#j#)k#j#k#)k#k#m*g#m#n#)k#n;'S*g;'S;=`+Z<%lO*g9d#+gZ(Wp(Z!bOY#+`Zr#+`rs!JUsw#+`wx#$Rx#O#+`#O#P!B[#P#Q#(i#Q;'S#+`;'S;=`#,Y<%lO#+`9d#,]P;=`<%l#+`9d#,cP;=`<%l#(i?O#,o`$i&j(Wp(Z!bOY#,fYZ&cZr#,frs!KSsw#,fwx#%Px!^#,f!^!_#+`!_#O#,f#O#P!DR#P#Q!;Z#Q#o#,f#o#p#+`#p;'S#,f;'S;=`#-q<%lO#,f?O#-tP;=`<%l#,f?O#-zP;=`<%l!;Z07[#.[b$i&j(Wp(Z!b(O0/l!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z07[#/o_$i&j(Wp(Z!bT0/lOY#/dYZ&cZr#/drs#0nsw#/dwx#4Ox!^#/d!^!_#5}!_#O#/d#O#P#1p#P#o#/d#o#p#5}#p;'S#/d;'S;=`#6|<%lO#/d06j#0w]$i&j(Z!bT0/lOY#0nYZ&cZw#0nwx#1px!^#0n!^!_#3R!_#O#0n#O#P#1p#P#o#0n#o#p#3R#p;'S#0n;'S;=`#3x<%lO#0n05W#1wX$i&jT0/lOY#1pYZ&cZ!^#1p!^!_#2d!_#o#1p#o#p#2d#p;'S#1p;'S;=`#2{<%lO#1p0/l#2iST0/lOY#2dZ;'S#2d;'S;=`#2u<%lO#2d0/l#2xP;=`<%l#2d05W#3OP;=`<%l#1p01O#3YW(Z!bT0/lOY#3RZw#3Rwx#2dx#O#3R#O#P#2d#P;'S#3R;'S;=`#3r<%lO#3R01O#3uP;=`<%l#3R06j#3{P;=`<%l#0n05x#4X]$i&j(WpT0/lOY#4OYZ&cZr#4Ors#1ps!^#4O!^!_#5Q!_#O#4O#O#P#1p#P#o#4O#o#p#5Q#p;'S#4O;'S;=`#5w<%lO#4O00^#5XW(WpT0/lOY#5QZr#5Qrs#2ds#O#5Q#O#P#2d#P;'S#5Q;'S;=`#5q<%lO#5Q00^#5tP;=`<%l#5Q05x#5zP;=`<%l#4O01p#6WY(Wp(Z!bT0/lOY#5}Zr#5}rs#3Rsw#5}wx#5Qx#O#5}#O#P#2d#P;'S#5};'S;=`#6v<%lO#5}01p#6yP;=`<%l#5}07[#7PP;=`<%l#/d)3h#7ab$i&j$Q(Ch(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;ZAt#8vb$Z#t$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z'Ad#:Zp$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#U%Z#U#V#?i#V#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#<jk$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!g$b$i&j$O)Lv(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#R-<U(Wp(Z!b$n7`OY*gZr*grs'}sw*gwx)rx!P*g!P!Q#MO!Q!^*g!^!_#Mt!_!`$ f!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#MXX$k&j(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El#M}Z#r(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Np!`#O*g#P;'S*g;'S;=`+Z<%lO*g(El#NyX$Q(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El$ oX#s(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g*)x$!ga#`*!Y$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a$#l!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(K[$#w_#k(Cl$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x$%Vag!*r#s(Ch$f#|$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`$&[!`!a$'f!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$&g_#s(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$'qa#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`!a$(v!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$)R`#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(Kd$*`a(r(Ct$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!a%Z!a!b$+e!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$+p`$i&j#{(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`$,}_!|$Ip$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f$.X_!S0,v$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(n$/]Z$i&jO!^$0O!^!_$0f!_#i$0O#i#j$0k#j#l$0O#l#m$2^#m#o$0O#o#p$0f#p;'S$0O;'S;=`$4i<%lO$0O(n$0VT_#S$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$0kO_#S(n$0p[$i&jO!Q&c!Q![$1f![!^&c!_!c&c!c!i$1f!i#T&c#T#Z$1f#Z#o&c#o#p$3|#p;'S&c;'S;=`&w<%lO&c(n$1kZ$i&jO!Q&c!Q![$2^![!^&c!_!c&c!c!i$2^!i#T&c#T#Z$2^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$2cZ$i&jO!Q&c!Q![$3U![!^&c!_!c&c!c!i$3U!i#T&c#T#Z$3U#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$3ZZ$i&jO!Q&c!Q![$0O![!^&c!_!c&c!c!i$0O!i#T&c#T#Z$0O#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$4PR!Q![$4Y!c!i$4Y#T#Z$4Y#S$4]S!Q![$4Y!c!i$4Y#T#Z$4Y#q#r$0f(n$4lP;=`<%l$0O#1[$4z_!Y#)l$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$6U`#x(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;p$7c_$i&j(Wp(Z!b(a+4QOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$8qk$i&j(Wp(Z!b(T,2j$_#t(e$I[OY%ZYZ&cZr%Zrs&}st%Ztu$8buw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$8b![!^%Z!^!_*g!_!c%Z!c!}$8b!}#O%Z#O#P&c#P#R%Z#R#S$8b#S#T%Z#T#o$8b#o#p*g#p$g%Z$g;'S$8b;'S;=`$<l<%lO$8b+d$:qk$i&j(Wp(Z!b$_#tOY%ZYZ&cZr%Zrs&}st%Ztu$:fuw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$:f![!^%Z!^!_*g!_!c%Z!c!}$:f!}#O%Z#O#P&c#P#R%Z#R#S$:f#S#T%Z#T#o$:f#o#p*g#p$g%Z$g;'S$:f;'S;=`$<f<%lO$:f+d$<iP;=`<%l$:f07[$<oP;=`<%l$8b#Jf$<{X!_#Hb(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g,#x$=sa(y+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$+e#q;'S%Z;'S;=`+a<%lO%Z)>v$?V_!^(CdvBr$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z?O$@a_!q7`$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$Aq|$i&j(Wp(Z!b'|0/l$]#t(T,2j(e$I[OX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr07[$D|k$i&j(Wp(Z!b'}0/l$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr",tokenizers:[nJ,aJ,rJ,iJ,2,3,4,5,6,7,8,9,10,11,12,13,14,tJ,new Hi("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOx~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!U~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(c~~",141,340),new Hi("j~RQYZXz{^~^O(Q~~aP!P!Qd~iO(R~~",25,323)],topRules:{Script:[0,7],SingleExpression:[1,276],SingleClassItem:[2,277]},dialects:{jsx:0,ts:15175},dynamicPrecedences:{80:1,82:1,94:1,169:1,199:1},specialized:[{term:327,get:t=>sJ[t]||-1},{term:343,get:t=>cJ[t]||-1},{term:95,get:t=>lJ[t]||-1}],tokenPrec:15201});var q2=[gn("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),gn("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),gn("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),gn("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),gn("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),gn(`try { + \${} +} catch (\${error}) { + \${} +}`,{label:"try",detail:"/ catch block",type:"keyword"}),gn("if (${}) {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),gn(`if (\${}) { + \${} +} else { + \${} +}`,{label:"if",detail:"/ else block",type:"keyword"}),gn(`class \${name} { + constructor(\${params}) { + \${} + } +}`,{label:"class",detail:"definition",type:"keyword"}),gn('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),gn('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],AJ=q2.concat([gn("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),gn("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),gn("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),P2=new oc,G2=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function FA(t){return(e,n)=>{let a=e.node.getChild("VariableDefinition");return a&&n(a,t),!0}}var dJ=["FunctionDeclaration"],uJ={FunctionDeclaration:FA("function"),ClassDeclaration:FA("class"),ClassExpression:()=>!0,EnumDeclaration:FA("constant"),TypeAliasDeclaration:FA("type"),NamespaceDeclaration:FA("namespace"),VariableDefinition(t,e){t.matchContext(dJ)||e(t,"variable")},TypeDefinition(t,e){e(t,"type")},__proto__:null};function z2(t,e){let n=P2.get(e);if(n)return n;let a=[],r=!0;function i(o,s){let c=t.sliceString(o.from,o.to);a.push({label:c,type:s})}return e.cursor(Ce.IncludeAnonymous).iterate(o=>{if(r)r=!1;else if(o.name){let s=uJ[o.name];if(s&&s(o,i)||G2.has(o.name))return!1}else if(o.to-o.from>8192){for(let s of z2(t,o.node))a.push(s);return!1}}),P2.set(e,a),a}var M2=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,U2=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function pJ(t){let e=Ee(t.state).resolveInner(t.pos,-1);if(U2.indexOf(e.name)>-1)return null;let n=e.name=="VariableName"||e.to-e.from<20&&M2.test(t.state.sliceDoc(e.from,e.to));if(!n&&!t.explicit)return null;let a=[];for(let r=e;r;r=r.parent)G2.has(r.name)&&(a=a.concat(z2(t.state.doc,r)));return{options:a,from:n?e.from:t.pos,validFor:M2}}var Ka=mr.define({name:"javascript",parser:j2.configure({props:[Ha.add({IfStatement:jr({except:/^\s*({|else\b)/}),TryStatement:jr({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:MF,SwitchBody:t=>{let e=t.textAfter,n=/^\s*\}/.test(e),a=/^\s*(case|default)\b/.test(e);return t.baseIndent+(n?0:a?1:2)*t.unit},Block:jF({closing:"}"}),ArrowFunction:t=>t.baseIndent+t.unit,"TemplateString BlockComment":()=>null,"Statement Property":jr({except:/^\s*{/}),JSXElement(t){let e=/^\s*<\//.test(t.textAfter);return t.lineIndent(t.node.from)+(e?0:t.unit)},JSXEscape(t){let e=/\s*\}/.test(t.textAfter);return t.lineIndent(t.node.from)+(e?0:t.unit)},"JSXOpenTag JSXSelfClosingTag"(t){return t.column(t.node.from)+t.unit}}),Ca.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":lc,BlockComment(t){return{from:t.from+2,to:t.to-2}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),H2={test:t=>/^JSX/.test(t.name),facet:gA({commentTokens:{block:{open:"{/*",close:"*/}"}}})},v_=Ka.configure({dialect:"ts"},"typescript"),E_=Ka.configure({dialect:"jsx",props:[Sm.add(t=>t.isTop?[H2]:void 0)]}),Q_=Ka.configure({dialect:"jsx ts",props:[Sm.add(t=>t.isTop?[H2]:void 0)]},"typescript"),Z2=t=>({label:t,type:"keyword"}),Y2="break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(Z2),mJ=Y2.concat(["declare","implements","private","protected","public"].map(Z2));function yc(t={}){let e=t.jsx?t.typescript?Q_:E_:t.typescript?v_:Ka,n=t.typescript?AJ.concat(mJ):q2.concat(Y2);return new Xn(e,[Ka.data.of({autocomplete:A2(U2,r_(n))}),Ka.data.of({autocomplete:pJ}),t.jsx?bJ:[]])}function gJ(t){for(;;){if(t.name=="JSXOpenTag"||t.name=="JSXSelfClosingTag"||t.name=="JSXFragmentTag")return t;if(t.name=="JSXEscape"||!t.parent)return null;t=t.parent}}function T2(t,e,n=t.length){for(let a=e?.firstChild;a;a=a.nextSibling)if(a.name=="JSXIdentifier"||a.name=="JSXBuiltin"||a.name=="JSXNamespacedName"||a.name=="JSXMemberExpression")return t.sliceString(a.from,Math.min(a.to,n));return""}var fJ=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),bJ=T.inputHandler.of((t,e,n,a,r)=>{if((fJ?t.composing:t.compositionStarted)||t.state.readOnly||e!=n||a!=">"&&a!="/"||!Ka.isActiveAt(t.state,e,-1))return!1;let i=r(),{state:o}=i,s=o.changeByRange(c=>{var A;let{head:d}=c,u=Ee(o).resolveInner(d-1,-1),p;if(u.name=="JSXStartTag"&&(u=u.parent),!(o.doc.sliceString(d-1,d)!=a||u.name=="JSXAttributeValue"&&u.to>d)){if(a==">"&&u.name=="JSXFragmentTag")return{range:c,changes:{from:d,insert:"</>"}};if(a=="/"&&u.name=="JSXStartCloseTag"){let m=u.parent,f=m.parent;if(f&&m.from==d-2&&((p=T2(o.doc,f.firstChild,d))||((A=f.firstChild)===null||A===void 0?void 0:A.name)=="JSXFragmentTag")){let h=`${p}>`;return{range:L.cursor(d+h.length,-1),changes:{from:d,insert:h}}}}else if(a==">"){let m=gJ(u);if(m&&m.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(o.doc.sliceString(d,d+2))&&(p=T2(o.doc,m,d)))return{range:c,changes:{from:d,insert:`</${p}>`}}}}return{range:c}});return s.changes.empty?!1:(t.dispatch([i,o.update(s,{userEvent:"input.complete",scrollIntoView:!0})]),!0)});var hJ=122,W2=1,yJ=123,wJ=124,J2=2,kJ=125,CJ=3,_J=4,V2=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],BJ=58,xJ=40,X2=95,vJ=91,lg=45,EJ=46,QJ=35,IJ=37,DJ=38,FJ=92,SJ=10,OJ=42;function SA(t){return t>=65&&t<=90||t>=97&&t<=122||t>=161}function I_(t){return t>=48&&t<=57}function K2(t){return I_(t)||t>=97&&t<=102||t>=65&&t<=70}var eO=(t,e,n)=>(a,r)=>{for(let i=!1,o=0,s=0;;s++){let{next:c}=a;if(SA(c)||c==lg||c==X2||i&&I_(c))!i&&(c!=lg||s>0)&&(i=!0),o===s&&c==lg&&o++,a.advance();else if(c==FJ&&a.peek(1)!=SJ){if(a.advance(),K2(a.next)){do a.advance();while(K2(a.next));a.next==32&&a.advance()}else a.next>-1&&a.advance();i=!0}else{i&&a.acceptToken(o==2&&r.canShift(J2)?e:c==xJ?n:t);break}}},NJ=new Ot(eO(yJ,J2,wJ)),LJ=new Ot(eO(kJ,CJ,_J)),$J=new Ot(t=>{if(V2.includes(t.peek(-1))){let{next:e}=t;(SA(e)||e==X2||e==QJ||e==EJ||e==OJ||e==vJ||e==BJ&&SA(t.peek(1))||e==lg||e==DJ)&&t.acceptToken(hJ)}}),RJ=new Ot(t=>{if(!V2.includes(t.peek(-1))){let{next:e}=t;if(e==IJ&&(t.advance(),t.acceptToken(W2)),SA(e)){do t.advance();while(SA(t.next)||I_(t.next));t.acceptToken(W2)}}}),jJ=Vn({"AtKeyword import charset namespace keyframes media supports":B.definitionKeyword,"from to selector":B.keyword,NamespaceName:B.namespace,KeyframeName:B.labelName,KeyframeRangeName:B.operatorKeyword,TagName:B.tagName,ClassName:B.className,PseudoClassName:B.constant(B.className),IdName:B.labelName,"FeatureName PropertyName":B.propertyName,AttributeName:B.attributeName,NumberLiteral:B.number,KeywordQuery:B.keyword,UnaryQueryOp:B.operatorKeyword,"CallTag ValueName":B.atom,VariableName:B.variableName,Callee:B.operatorKeyword,Unit:B.unit,"UniversalSelector NestingSelector":B.definitionOperator,"MatchOp CompareOp":B.compareOperator,"ChildOp SiblingOp, LogicOp":B.logicOperator,BinOp:B.arithmeticOperator,Important:B.modifier,Comment:B.blockComment,ColorLiteral:B.color,"ParenthesizedContent StringLiteral":B.string,":":B.punctuation,"PseudoOp #":B.derefOperator,"; ,":B.separator,"( )":B.paren,"[ ]":B.squareBracket,"{ }":B.brace}),PJ={__proto__:null,lang:38,"nth-child":38,"nth-last-child":38,"nth-of-type":38,"nth-last-of-type":38,dir:38,"host-context":38,if:84,url:124,"url-prefix":124,domain:124,regexp:124},MJ={__proto__:null,or:98,and:98,not:106,only:106,layer:170},TJ={__proto__:null,selector:112,layer:166},qJ={__proto__:null,"@import":162,"@media":174,"@charset":178,"@namespace":182,"@keyframes":188,"@supports":200,"@scope":204},GJ={__proto__:null,to:207},tO=gr.deserialize({version:14,states:"EbQYQdOOO#qQdOOP#xO`OOOOQP'#Cf'#CfOOQP'#Ce'#CeO#}QdO'#ChO$nQaO'#CcO$xQdO'#CkO%TQdO'#DpO%YQdO'#DrO%_QdO'#DuO%_QdO'#DxOOQP'#FV'#FVO&eQhO'#EhOOQS'#FU'#FUOOQS'#Ek'#EkQYQdOOO&lQdO'#EOO&PQhO'#EUO&lQdO'#EWO'aQdO'#EYO'lQdO'#E]O'tQhO'#EcO(VQdO'#EeO(bQaO'#CfO)VQ`O'#D{O)[Q`O'#F`O)gQdO'#F`QOQ`OOP)qO&jO'#CaPOOO)C@t)C@tOOQP'#Cj'#CjOOQP,59S,59SO#}QdO,59SO)|QdO,59VO%TQdO,5:[O%YQdO,5:^O%_QdO,5:aO%_QdO,5:cO%_QdO,5:dO%_QdO'#ErO*XQ`O,58}O*aQdO'#DzOOQS,58},58}OOQP'#Cn'#CnOOQO'#Dn'#DnOOQP,59V,59VO*hQ`O,59VO*mQ`O,59VOOQP'#Dq'#DqOOQP,5:[,5:[OOQO'#Ds'#DsO*rQpO,5:^O+]QaO,5:aO+sQaO,5:dOOQW'#DZ'#DZO,ZQhO'#DdO,xQhO'#FaO'tQhO'#DbO-WQ`O'#DhOOQW'#F['#F[O-]Q`O,5;SO-eQ`O'#DeOOQS-E8i-E8iOOQ['#Cs'#CsO-jQdO'#CtO.QQdO'#CzO.hQdO'#C}O/OQ!pO'#DPO1RQ!jO,5:jOOQO'#DU'#DUO*mQ`O'#DTO1cQ!nO'#FXO3`Q`O'#DVO3eQ`O'#DkOOQ['#FX'#FXO-`Q`O,5:pO3jQ!bO,5:rOOQS'#E['#E[O3rQ`O,5:tO3wQdO,5:tOOQO'#E_'#E_O4PQ`O,5:wO4UQhO,5:}O%_QdO'#DgOOQS,5;P,5;PO-eQ`O,5;PO4^QdO,5;PO4fQdO,5:gO4vQdO'#EtO5TQ`O,5;zO5TQ`O,5;zPOOO'#Ej'#EjP5`O&jO,58{POOO,58{,58{OOQP1G.n1G.nOOQP1G.q1G.qO*hQ`O1G.qO*mQ`O1G.qOOQP1G/v1G/vO5kQpO1G/xO5sQaO1G/{O6ZQaO1G/}O6qQaO1G0OO7XQaO,5;^OOQO-E8p-E8pOOQS1G.i1G.iO7cQ`O,5:fO7hQdO'#DoO7oQdO'#CrOOQP1G/x1G/xO&lQdO1G/xO7vQ!jO'#DZO8UQ!bO,59vO8^QhO,5:OOOQO'#F]'#F]O8XQ!bO,59zO'tQhO,59xO8fQhO'#EvO8sQ`O,5;{O9OQhO,59|O9uQhO'#DiOOQW,5:S,5:SOOQS1G0n1G0nOOQW,5:P,5:PO9|Q!fO'#FYOOQS'#FY'#FYOOQS'#Em'#EmO;^QdO,59`OOQ[,59`,59`O;tQdO,59fOOQ[,59f,59fO<[QdO,59iOOQ[,59i,59iOOQ[,59k,59kO&lQdO,59mO<rQhO'#EQOOQW'#EQ'#EQO=WQ`O1G0UO1[QhO1G0UOOQ[,59o,59oO'tQhO'#DXOOQ[,59q,59qO=]Q#tO,5:VOOQS1G0[1G0[OOQS1G0^1G0^OOQS1G0`1G0`O=hQ`O1G0`O=mQdO'#E`OOQS1G0c1G0cOOQS1G0i1G0iO=xQaO,5:RO-`Q`O1G0kOOQS1G0k1G0kO-eQ`O1G0kO>PQ!fO1G0ROOQO1G0R1G0ROOQO,5;`,5;`O>gQdO,5;`OOQO-E8r-E8rO>tQ`O1G1fPOOO-E8h-E8hPOOO1G.g1G.gOOQP7+$]7+$]OOQP7+%d7+%dO&lQdO7+%dOOQS1G0Q1G0QO?PQaO'#F_O?ZQ`O,5:ZO?`Q!fO'#ElO@^QdO'#FWO@hQ`O,59^O@mQ!bO7+%dO&lQdO1G/bO@uQhO1G/fOOQW1G/j1G/jOOQW1G/d1G/dOAWQhO,5;bOOQO-E8t-E8tOAfQhO'#DZOAtQhO'#F^OBPQ`O'#F^OBUQ`O,5:TOOQS-E8k-E8kOOQ[1G.z1G.zOOQ[1G/Q1G/QOOQ[1G/T1G/TOOQ[1G/X1G/XOBZQdO,5:lOOQS7+%p7+%pOB`Q`O7+%pOBeQhO'#DYOBmQ`O,59sO'tQhO,59sOOQ[1G/q1G/qOBuQ`O1G/qOOQS7+%z7+%zOBzQbO'#DPOOQO'#Eb'#EbOCYQ`O'#EaOOQO'#Ea'#EaOCeQ`O'#EwOCmQdO,5:zOOQS,5:z,5:zOOQ[1G/m1G/mOOQS7+&V7+&VO-`Q`O7+&VOCxQ!fO'#EsO&lQdO'#EsOEPQdO7+%mOOQO7+%m7+%mOOQO1G0z1G0zOEdQ!bO<<IOOElQdO'#EqOEvQ`O,5;yOOQP1G/u1G/uOOQS-E8j-E8jOFOQdO'#EpOFYQ`O,5;rOOQ]1G.x1G.xOOQP<<IO<<IOOFbQdO7+$|OOQO'#D]'#D]OFiQ!bO7+%QOFqQhO'#EoOF{Q`O,5;xO&lQdO,5;xOOQW1G/o1G/oOOQO'#ES'#ESOGTQ`O1G0WOOQS<<I[<<I[O&lQdO,59tOGnQhO1G/_OOQ[1G/_1G/_OGuQ`O1G/_OOQW-E8l-E8lOOQ[7+%]7+%]OOQO,5:{,5:{O=pQdO'#ExOCeQ`O,5;cOOQS,5;c,5;cOOQS-E8u-E8uOOQS1G0f1G0fOOQS<<Iq<<IqOG}Q!fO,5;_OOQS-E8q-E8qOOQO<<IX<<IXOOQPAN>jAN>jOIUQaO,5;]OOQO-E8o-E8oOI`QdO,5;[OOQO-E8n-E8nOOQW<<Hh<<HhOOQW<<Hl<<HlOIjQhO<<HlOI{QhO,5;ZOJWQ`O,5;ZOOQO-E8m-E8mOJ]QdO1G1dOBZQdO'#EuOJgQ`O7+%rOOQW7+%r7+%rOJoQ!bO1G/`OOQ[7+$y7+$yOJzQhO7+$yPKRQ`O'#EnOOQO,5;d,5;dOOQO-E8v-E8vOOQS1G0}1G0}OKWQ`OAN>WO&lQdO1G0uOK]Q`O7+'OOOQO,5;a,5;aOOQO-E8s-E8sOOQW<<I^<<I^OOQ[<<He<<HePOQW,5;Y,5;YOOQWG23rG23rOKeQdO7+&a",stateData:"Kx~O#sOS#tQQ~OW[OZ[O]TO`VOaVOi]OjWOmXO!jYO!mZO!saO!ybO!{cO!}dO#QeO#WfO#YgO#oRO~OQiOW[OZ[O]TO`VOaVOi]OjWOmXO!jYO!mZO!saO!ybO!{cO!}dO#QeO#WfO#YgO#ohO~O#m$SP~P!dO#tmO~O#ooO~O]qO`rOarOjsOmtO!juO!mwO#nvO~OpzO!^xO~P$SOc!QO#o|O#p}O~O#o!RO~O#o!TO~OW[OZ[O]TO`VOaVOjWOmXO!jYO!mZO#oRO~OS!]Oe!YO!V![O!Y!`O#q!XOp$TP~Ok$TP~P&POQ!jOe!cOm!dOp!eOr!mOt!mOz!kO!`!lO#o!bO#p!hO#}!fO~Ot!qO!`!lO#o!pO~Ot!sO#o!sO~OS!]Oe!YO!V![O!Y!`O#q!XO~Oe!vOpzO#Z!xO~O]YX`YX`!pXaYXjYXmYXpYX!^YX!jYX!mYX#nYX~O`!zO~Ok!{O#m$SXo$SX~O#m$SXo$SX~P!dO#u#OO#v#OO#w#QO~Oc#UO#o|O#p}O~OpzO!^xO~Oo$SP~P!dOe#`O~Oe#aO~Ol#bO!h#cO~O]qO`rOarOjsOmtO~Op!ia!^!ia!j!ia!m!ia#n!iad!ia~P*zOp!la!^!la!j!la!m!la#n!lad!la~P*zOR#gOS!]Oe!YOr#gOt#gO!V![O!Y!`O#q#dO#}!fO~O!R#iO!^#jOk$TXp$TX~Oe#mO~Ok#oOpzO~Oe!vO~O]#rO`#rOd#uOi#rOj#rOk#rO~P&lO]#rO`#rOi#rOj#rOk#rOl#wO~P&lO]#rO`#rOi#rOj#rOk#rOo#yO~P&lOP#zOSsXesXksXvsX!VsX!YsX!usX!wsX#qsX!TsXQsX]sX`sXdsXisXjsXmsXpsXrsXtsXzsX!`sX#osX#psX#}sXlsXosX!^sX!qsX#msX~Ov#{O!u#|O!w#}Ok$TP~P'tOe#aOS#{Xk#{Xv#{X!V#{X!Y#{X!u#{X!w#{X#q#{XQ#{X]#{X`#{Xd#{Xi#{Xj#{Xm#{Xp#{Xr#{Xt#{Xz#{X!`#{X#o#{X#p#{X#}#{Xl#{Xo#{X!^#{X!q#{X#m#{X~Oe$RO~Oe$TO~Ok$VOv#{O~Ok$WO~Ot$XO!`!lO~Op$YO~OpzO!R#iO~OpzO#Z$`O~O!q$bOk!oa#m!oao!oa~P&lOk#hX#m#hXo#hX~P!dOk!{O#m$Sao$Sa~O#u#OO#v#OO#w$hO~Ol$jO!h$kO~Op!ii!^!ii!j!ii!m!ii#n!iid!ii~P*zOp!ki!^!ki!j!ki!m!ki#n!kid!ki~P*zOp!li!^!li!j!li!m!li#n!lid!li~P*zOp#fa!^#fa~P$SOo$lO~Od$RP~P%_Od#zP~P&lO`!PXd}X!R}X!T!PX~O`$sO!T$tO~Od$uO!R#iO~Ok#jXp#jX!^#jX~P'tO!^#jOk$Tap$Ta~O!R#iOk!Uap!Ua!^!Uad!Ua`!Ua~OS!]Oe!YO!V![O!Y!`O#q$yO~Od$QP~P9dOv#{OQ#|X]#|X`#|Xd#|Xe#|Xi#|Xj#|Xk#|Xm#|Xp#|Xr#|Xt#|Xz#|X!`#|X#o#|X#p#|X#}#|Xl#|Xo#|X~O]#rO`#rOd%OOi#rOj#rOk#rO~P&lO]#rO`#rOi#rOj#rOk#rOl%PO~P&lO]#rO`#rOi#rOj#rOk#rOo%QO~P&lOe%SOS!tXk!tX!V!tX!Y!tX#q!tX~Ok%TO~Od%YOt%ZO!a%ZO~Ok%[O~Oo%cO#o%^O#}%]O~Od%dO~P$SOv#{O!^%hO!q%jOk!oi#m!oio!oi~P&lOk#ha#m#hao#ha~P!dOk!{O#m$Sio$Si~O!^%mOd$RX~P$SOd%oO~Ov#{OQ#`Xd#`Xe#`Xm#`Xp#`Xr#`Xt#`Xz#`X!^#`X!`#`X#o#`X#p#`X#}#`X~O!^%qOd#zX~P&lOd%sO~Ol%tOv#{O~OR#gOr#gOt#gO#q%vO#}!fO~O!R#iOk#jap#ja!^#ja~O`!PXd}X!R}X!^}X~O!R#iO!^%xOd$QX~O`%zO~Od%{O~O#o%|O~Ok&OO~O`&PO!R#iO~Od&ROk&QO~Od&UO~OP#zOpsX!^sXdsX~O#}%]Op#TX!^#TX~OpzO!^&WO~Oo&[O#o%^O#}%]O~Ov#{OQ#gXe#gXk#gXm#gXp#gXr#gXt#gXz#gX!^#gX!`#gX!q#gX#m#gX#o#gX#p#gX#}#gXo#gX~O!^%hO!q&`Ok!oq#m!oqo!oq~P&lOl&aOv#{O~Od#eX!^#eX~P%_O!^%mOd$Ra~Od#dX!^#dX~P&lO!^%qOd#za~Od&fO~P&lOd&gO!T&hO~Od#cX!^#cX~P9dO!^%xOd$Qa~O]&mOd&oO~OS#bae#ba!V#ba!Y#ba#q#ba~Od&qO~PG]Od&qOk&rO~Ov#{OQ#gae#gak#gam#gap#gar#gat#gaz#ga!^#ga!`#ga!q#ga#m#ga#o#ga#p#ga#}#gao#ga~Od#ea!^#ea~P$SOd#da!^#da~P&lOR#gOr#gOt#gO#q%vO#}%]O~O!R#iOd#ca!^#ca~O`&xO~O!^%xOd$Qi~P&lO]&mOd&|O~Ov#{Od|ik|i~Od&}O~PG]Ok'OO~Od'PO~O!^%xOd$Qq~Od#cq!^#cq~P&lO#s!a#t#}]#}v!m~",goto:"2h$UPPPPP$VP$YP$c$uP$cP%X$cPP%_PPP%e%o%oPPPPP%oPP%oP&]P%oP%o'W%oP't'w'}'}(^'}P'}P'}P'}'}P(m'}(yP(|PP)p)v$c)|$c*SP$cP$c$cP*Y*{+YP$YP+aP+dP$YP$YP$YP+j$YP+m+p+s+z$YP$YPP$YP,P,V,f,|-[-b-l-r-x.O.U.`.f.l.rPPPPPPPPPPP.x/R/w/z0|P1U1u2O2R2U2[RnQ_^OP`kz!{$dq[OPYZ`kuvwxz!v!{#`$d%mqSOPYZ`kuvwxz!v!{#`$d%mQpTR#RqQ!OVR#SrQ#S!QS$Q!i!jR$i#U!V!mac!c!d!e!z#a#c#t#v#x#{$a$k$p$s%h%i%q%u%z&P&d&l&x'Q!U!mac!c!d!e!z#a#c#t#v#x#{$a$k$p$s%h%i%q%u%z&P&d&l&x'QU#g!Y$t&hU%`$Y%b&WR&V%_!V!iac!c!d!e!z#a#c#t#v#x#{$a$k$p$s%h%i%q%u%z&P&d&l&x'QR$S!kQ%W$RR&S%Xk!^]bf!Y![!g#i#j#m$P$R%X%xQ#e!YQ${#mQ%w$tQ&j%xR&w&hQ!ygQ#p!`Q$^!xR%f$`R#n!]!U!mac!c!d!e!z#a#c#t#v#x#{$a$k$p$s%h%i%q%u%z&P&d&l&x'QQ!qdR$X!rQ!PVR#TrQ#S!PR$i#TQ!SWR#VsQ!UXR#WtQ{UQ!wgQ#^yQ#o!_Q$U!nQ$[!uQ$_!yQ%e$^Q&Y%aQ&]%fR&v&XSjPzQ!}kQ$c!{R%k$dZiPkz!{$dR$P!gQ%}%SR&z&mR!rdR!teR$Z!tS%a$Y%bR&t&WV%_$Y%b&WQ#PmR$g#PQ`OSkPzU!a`k$dR$d!{Q$p#aY%p$p%u&d&l'QQ%u$sQ&d%qQ&l%zR'Q&xQ#t!cQ#v!dQ#x!eV$}#t#v#xQ%X$RR&T%XQ%y$zS&k%y&yR&y&lQ%r$pR&e%rQ%n$mR&c%nQyUR#]yQ%i$aR&_%iQ!|jS$e!|$fR$f!}Q&n%}R&{&nQ#k!ZR$x#kQ%b$YR&Z%bQ&X%aR&u&X__OP`kz!{$d^UOP`kz!{$dQ!VYQ!WZQ#XuQ#YvQ#ZwQ#[xQ$]!vQ$m#`R&b%mR$q#aQ!gaQ!oc[#q!c!d!e#t#v#xQ$a!zd$o#a$p$s%q%u%z&d&l&x'QQ$r#cQ%R#{S%g$a%iQ%l$kQ&^%hR&p&P]#s!c!d!e#t#v#xW!Z]b!g$PQ!ufQ#f!YQ#l![Q$v#iQ$w#jQ$z#mS%V$R%XR&i%xQ#h!YQ%w$tR&w&hR$|#mR$n#`QlPR#_zQ!_]Q!nbQ$O!gR%U$P",nodeNames:"\u26A0 Unit VariableName VariableName QueryCallee Comment StyleSheet RuleSet UniversalSelector TagSelector TagName NestingSelector ClassSelector . ClassName PseudoClassSelector : :: PseudoClassName PseudoClassName ) ( ArgList ValueName ParenthesizedValue AtKeyword # ; ] [ BracketedValue } { BracedValue ColorLiteral NumberLiteral StringLiteral BinaryExpression BinOp CallExpression Callee IfExpression if ArgList IfBranch KeywordQuery FeatureQuery FeatureName BinaryQuery LogicOp ComparisonQuery CompareOp UnaryQuery UnaryQueryOp ParenthesizedQuery SelectorQuery selector ParenthesizedSelector CallQuery ArgList , CallLiteral CallTag ParenthesizedContent PseudoClassName ArgList IdSelector IdName AttributeSelector AttributeName MatchOp ChildSelector ChildOp DescendantSelector SiblingSelector SiblingOp Block Declaration PropertyName Important ImportStatement import Layer layer LayerName layer MediaStatement media CharsetStatement charset NamespaceStatement namespace NamespaceName KeyframesStatement keyframes KeyframeName KeyframeList KeyframeSelector KeyframeRangeName SupportsStatement supports ScopeStatement scope to AtRule Styles",maxTerm:143,nodeProps:[["isolate",-2,5,36,""],["openedBy",20,"(",28,"[",31,"{"],["closedBy",21,")",29,"]",32,"}"]],propSources:[jJ],skippedNodes:[0,5,106],repeatNodeCount:15,tokenData:"JQ~R!YOX$qX^%i^p$qpq%iqr({rs-ust/itu6Wuv$qvw7Qwx7cxy9Qyz9cz{9h{|:R|}>t}!O?V!O!P?t!P!Q@]!Q![AU![!]BP!]!^B{!^!_C^!_!`DY!`!aDm!a!b$q!b!cEn!c!}$q!}#OG{#O#P$q#P#QH^#Q#R6W#R#o$q#o#pHo#p#q6W#q#rIQ#r#sIc#s#y$q#y#z%i#z$f$q$f$g%i$g#BY$q#BY#BZ%i#BZ$IS$q$IS$I_%i$I_$I|$q$I|$JO%i$JO$JT$q$JT$JU%i$JU$KV$q$KV$KW%i$KW&FU$q&FU&FV%i&FV;'S$q;'S;=`Iz<%lO$q`$tSOy%Qz;'S%Q;'S;=`%c<%lO%Q`%VS!a`Oy%Qz;'S%Q;'S;=`%c<%lO%Q`%fP;=`<%l%Q~%nh#s~OX%QX^'Y^p%Qpq'Yqy%Qz#y%Q#y#z'Y#z$f%Q$f$g'Y$g#BY%Q#BY#BZ'Y#BZ$IS%Q$IS$I_'Y$I_$I|%Q$I|$JO'Y$JO$JT%Q$JT$JU'Y$JU$KV%Q$KV$KW'Y$KW&FU%Q&FU&FV'Y&FV;'S%Q;'S;=`%c<%lO%Q~'ah#s~!a`OX%QX^'Y^p%Qpq'Yqy%Qz#y%Q#y#z'Y#z$f%Q$f$g'Y$g#BY%Q#BY#BZ'Y#BZ$IS%Q$IS$I_'Y$I_$I|%Q$I|$JO'Y$JO$JT%Q$JT$JU'Y$JU$KV%Q$KV$KW'Y$KW&FU%Q&FU&FV'Y&FV;'S%Q;'S;=`%c<%lO%Qj)OUOy%Qz#]%Q#]#^)b#^;'S%Q;'S;=`%c<%lO%Qj)gU!a`Oy%Qz#a%Q#a#b)y#b;'S%Q;'S;=`%c<%lO%Qj*OU!a`Oy%Qz#d%Q#d#e*b#e;'S%Q;'S;=`%c<%lO%Qj*gU!a`Oy%Qz#c%Q#c#d*y#d;'S%Q;'S;=`%c<%lO%Qj+OU!a`Oy%Qz#f%Q#f#g+b#g;'S%Q;'S;=`%c<%lO%Qj+gU!a`Oy%Qz#h%Q#h#i+y#i;'S%Q;'S;=`%c<%lO%Qj,OU!a`Oy%Qz#T%Q#T#U,b#U;'S%Q;'S;=`%c<%lO%Qj,gU!a`Oy%Qz#b%Q#b#c,y#c;'S%Q;'S;=`%c<%lO%Qj-OU!a`Oy%Qz#h%Q#h#i-b#i;'S%Q;'S;=`%c<%lO%Qj-iS!qY!a`Oy%Qz;'S%Q;'S;=`%c<%lO%Q~-xWOY-uZr-urs.bs#O-u#O#P.g#P;'S-u;'S;=`/c<%lO-u~.gOt~~.jRO;'S-u;'S;=`.s;=`O-u~.vXOY-uZr-urs.bs#O-u#O#P.g#P;'S-u;'S;=`/c;=`<%l-u<%lO-u~/fP;=`<%l-uj/nYjYOy%Qz!Q%Q!Q![0^![!c%Q!c!i0^!i#T%Q#T#Z0^#Z;'S%Q;'S;=`%c<%lO%Qj0cY!a`Oy%Qz!Q%Q!Q![1R![!c%Q!c!i1R!i#T%Q#T#Z1R#Z;'S%Q;'S;=`%c<%lO%Qj1WY!a`Oy%Qz!Q%Q!Q![1v![!c%Q!c!i1v!i#T%Q#T#Z1v#Z;'S%Q;'S;=`%c<%lO%Qj1}YrY!a`Oy%Qz!Q%Q!Q![2m![!c%Q!c!i2m!i#T%Q#T#Z2m#Z;'S%Q;'S;=`%c<%lO%Qj2tYrY!a`Oy%Qz!Q%Q!Q![3d![!c%Q!c!i3d!i#T%Q#T#Z3d#Z;'S%Q;'S;=`%c<%lO%Qj3iY!a`Oy%Qz!Q%Q!Q![4X![!c%Q!c!i4X!i#T%Q#T#Z4X#Z;'S%Q;'S;=`%c<%lO%Qj4`YrY!a`Oy%Qz!Q%Q!Q![5O![!c%Q!c!i5O!i#T%Q#T#Z5O#Z;'S%Q;'S;=`%c<%lO%Qj5TY!a`Oy%Qz!Q%Q!Q![5s![!c%Q!c!i5s!i#T%Q#T#Z5s#Z;'S%Q;'S;=`%c<%lO%Qj5zSrY!a`Oy%Qz;'S%Q;'S;=`%c<%lO%Qd6ZUOy%Qz!_%Q!_!`6m!`;'S%Q;'S;=`%c<%lO%Qd6tS!hS!a`Oy%Qz;'S%Q;'S;=`%c<%lO%Qb7VSZQOy%Qz;'S%Q;'S;=`%c<%lO%Q~7fWOY7cZw7cwx.bx#O7c#O#P8O#P;'S7c;'S;=`8z<%lO7c~8RRO;'S7c;'S;=`8[;=`O7c~8_XOY7cZw7cwx.bx#O7c#O#P8O#P;'S7c;'S;=`8z;=`<%l7c<%lO7c~8}P;=`<%l7cj9VSeYOy%Qz;'S%Q;'S;=`%c<%lO%Q~9hOd~n9oUWQvWOy%Qz!_%Q!_!`6m!`;'S%Q;'S;=`%c<%lO%Qj:YWvW!mQOy%Qz!O%Q!O!P:r!P!Q%Q!Q![=w![;'S%Q;'S;=`%c<%lO%Qj:wU!a`Oy%Qz!Q%Q!Q![;Z![;'S%Q;'S;=`%c<%lO%Qj;bY!a`#}YOy%Qz!Q%Q!Q![;Z![!g%Q!g!h<Q!h#X%Q#X#Y<Q#Y;'S%Q;'S;=`%c<%lO%Qj<VY!a`Oy%Qz{%Q{|<u|}%Q}!O<u!O!Q%Q!Q![=^![;'S%Q;'S;=`%c<%lO%Qj<zU!a`Oy%Qz!Q%Q!Q![=^![;'S%Q;'S;=`%c<%lO%Qj=eU!a`#}YOy%Qz!Q%Q!Q![=^![;'S%Q;'S;=`%c<%lO%Qj>O[!a`#}YOy%Qz!O%Q!O!P;Z!P!Q%Q!Q![=w![!g%Q!g!h<Q!h#X%Q#X#Y<Q#Y;'S%Q;'S;=`%c<%lO%Qj>yS!^YOy%Qz;'S%Q;'S;=`%c<%lO%Qj?[WvWOy%Qz!O%Q!O!P:r!P!Q%Q!Q![=w![;'S%Q;'S;=`%c<%lO%Qj?yU]YOy%Qz!Q%Q!Q![;Z![;'S%Q;'S;=`%c<%lO%Q~@bTvWOy%Qz{@q{;'S%Q;'S;=`%c<%lO%Q~@xS!a`#t~Oy%Qz;'S%Q;'S;=`%c<%lO%QjAZ[#}YOy%Qz!O%Q!O!P;Z!P!Q%Q!Q![=w![!g%Q!g!h<Q!h#X%Q#X#Y<Q#Y;'S%Q;'S;=`%c<%lO%QjBUU`YOy%Qz![%Q![!]Bh!];'S%Q;'S;=`%c<%lO%QbBoSaQ!a`Oy%Qz;'S%Q;'S;=`%c<%lO%QjCQSkYOy%Qz;'S%Q;'S;=`%c<%lO%QhCcU!TWOy%Qz!_%Q!_!`Cu!`;'S%Q;'S;=`%c<%lO%QhC|S!TW!a`Oy%Qz;'S%Q;'S;=`%c<%lO%QlDaS!TW!hSOy%Qz;'S%Q;'S;=`%c<%lO%QjDtV!jQ!TWOy%Qz!_%Q!_!`Cu!`!aEZ!a;'S%Q;'S;=`%c<%lO%QbEbS!jQ!a`Oy%Qz;'S%Q;'S;=`%c<%lO%QjEqYOy%Qz}%Q}!OFa!O!c%Q!c!}GO!}#T%Q#T#oGO#o;'S%Q;'S;=`%c<%lO%QjFfW!a`Oy%Qz!c%Q!c!}GO!}#T%Q#T#oGO#o;'S%Q;'S;=`%c<%lO%QjGV[iY!a`Oy%Qz}%Q}!OGO!O!Q%Q!Q![GO![!c%Q!c!}GO!}#T%Q#T#oGO#o;'S%Q;'S;=`%c<%lO%QjHQSmYOy%Qz;'S%Q;'S;=`%c<%lO%QnHcSl^Oy%Qz;'S%Q;'S;=`%c<%lO%QjHtSpYOy%Qz;'S%Q;'S;=`%c<%lO%QjIVSoYOy%Qz;'S%Q;'S;=`%c<%lO%QfIhU!mQOy%Qz!_%Q!_!`6m!`;'S%Q;'S;=`%c<%lO%Q`I}P;=`<%l$q",tokenizers:[$J,RJ,NJ,LJ,1,2,3,4,new Hi("m~RRYZ[z{a~~g~aO#v~~dP!P!Qg~lO#w~~",28,129)],topRules:{StyleSheet:[0,6],Styles:[1,105]},specialized:[{term:124,get:t=>PJ[t]||-1},{term:125,get:t=>MJ[t]||-1},{term:4,get:t=>TJ[t]||-1},{term:25,get:t=>qJ[t]||-1},{term:123,get:t=>GJ[t]||-1}],tokenPrec:1963});var D_=null;function F_(){if(!D_&&typeof document=="object"&&document.body){let{style:t}=document.body,e=[],n=new Set;for(let a in t)a!="cssText"&&a!="cssFloat"&&typeof t[a]=="string"&&(/[A-Z]/.test(a)&&(a=a.replace(/[A-Z]/g,r=>"-"+r.toLowerCase())),n.has(a)||(e.push(a),n.add(a)));D_=e.sort().map(a=>({type:"property",label:a,apply:a+": "}))}return D_||[]}var nO=["active","after","any-link","autofill","backdrop","before","checked","cue","default","defined","disabled","empty","enabled","file-selector-button","first","first-child","first-letter","first-line","first-of-type","focus","focus-visible","focus-within","fullscreen","has","host","host-context","hover","in-range","indeterminate","invalid","is","lang","last-child","last-of-type","left","link","marker","modal","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","part","placeholder","placeholder-shown","read-only","read-write","required","right","root","scope","selection","slotted","target","target-text","valid","visited","where"].map(t=>({type:"class",label:t})),aO=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map(t=>({type:"keyword",label:t})).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map(t=>({type:"constant",label:t}))),zJ=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map(t=>({type:"type",label:t})),UJ=["@charset","@color-profile","@container","@counter-style","@font-face","@font-feature-values","@font-palette-values","@import","@keyframes","@layer","@media","@namespace","@page","@position-try","@property","@scope","@starting-style","@supports","@view-transition"].map(t=>({type:"keyword",label:t})),Tr=/^(\w[\w-]*|-\w[\w-]*|)$/,HJ=/^-(-[\w-]*)?$/;function ZJ(t,e){var n;if((t.name=="("||t.type.isError)&&(t=t.parent||t),t.name!="ArgList")return!1;let a=(n=t.parent)===null||n===void 0?void 0:n.firstChild;return a?.name!="Callee"?!1:e.sliceString(a.from,a.to)=="var"}var rO=new oc,YJ=["Declaration"];function WJ(t){for(let e=t;;){if(e.type.isTop)return e;if(!(e=e.parent))return t}}function iO(t,e,n){if(e.to-e.from>4096){let a=rO.get(e);if(a)return a;let r=[],i=new Set,o=e.cursor(Ce.IncludeAnonymous);if(o.firstChild())do for(let s of iO(t,o.node,n))i.has(s.label)||(i.add(s.label),r.push(s));while(o.nextSibling());return rO.set(e,r),r}else{let a=[],r=new Set;return e.cursor().iterate(i=>{var o;if(n(i)&&i.matchContext(YJ)&&((o=i.node.nextSibling)===null||o===void 0?void 0:o.name)==":"){let s=t.sliceString(i.from,i.to);r.has(s)||(r.add(s),a.push({label:s,type:"variable"}))}}),a}}var KJ=t=>e=>{let{state:n,pos:a}=e,r=Ee(n).resolveInner(a,-1),i=r.type.isError&&r.from==r.to-1&&n.doc.sliceString(r.from,r.to)=="-";if(r.name=="PropertyName"||(i||r.name=="TagName")&&/^(Block|Styles)$/.test(r.resolve(r.to).name))return{from:r.from,options:F_(),validFor:Tr};if(r.name=="ValueName")return{from:r.from,options:aO,validFor:Tr};if(r.name=="PseudoClassName")return{from:r.from,options:nO,validFor:Tr};if(t(r)||(e.explicit||i)&&ZJ(r,n.doc))return{from:t(r)||i?r.from:a,options:iO(n.doc,WJ(r),t),validFor:HJ};if(r.name=="TagName"){for(let{parent:c}=r;c;c=c.parent)if(c.name=="Block")return{from:r.from,options:F_(),validFor:Tr};return{from:r.from,options:zJ,validFor:Tr}}if(r.name=="AtKeyword")return{from:r.from,options:UJ,validFor:Tr};if(!e.explicit)return null;let o=r.resolve(a),s=o.childBefore(a);return s&&s.name==":"&&o.name=="PseudoClassSelector"?{from:a,options:nO,validFor:Tr}:s&&s.name==":"&&o.name=="Declaration"||o.name=="ArgList"?{from:a,options:aO,validFor:Tr}:o.name=="Block"||o.name=="Styles"?{from:a,options:F_(),validFor:Tr}:null},JJ=KJ(t=>t.name=="VariableName"),OA=mr.define({name:"css",parser:tO.configure({props:[Ha.add({Declaration:jr()}),Ca.add({"Block KeyframeList":lc})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function Ag(){return new Xn(OA,OA.data.of({autocomplete:JJ}))}var VJ=55,XJ=1,eV=56,tV=2,nV=57,aV=3,oO=4,rV=5,$_=6,mO=7,gO=8,fO=9,bO=10,iV=11,oV=12,sV=13,S_=58,cV=14,lV=15,sO=59,hO=21,AV=23,yO=24,dV=25,N_=27,wO=28,uV=29,pV=32,mV=35,gV=37,fV=38,bV=0,hV=1,yV={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},wV={dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},cO={dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}};function kV(t){return t==45||t==46||t==58||t>=65&&t<=90||t==95||t>=97&&t<=122||t>=161}var lO=null,AO=null,dO=0;function L_(t,e){let n=t.pos+e;if(dO==n&&AO==t)return lO;let a=t.peek(e),r="";for(;kV(a);)r+=String.fromCharCode(a),a=t.peek(++e);return AO=t,dO=n,lO=r?r.toLowerCase():a==CV||a==_V?void 0:null}var kO=60,dg=62,R_=47,CV=63,_V=33,BV=45;function uO(t,e){this.name=t,this.parent=e}var xV=[$_,bO,mO,gO,fO],vV=new hc({start:null,shift(t,e,n,a){return xV.indexOf(e)>-1?new uO(L_(a,1)||"",t):t},reduce(t,e){return e==hO&&t?t.parent:t},reuse(t,e,n,a){let r=e.type.id;return r==$_||r==gV?new uO(L_(a,1)||"",t):t},strict:!1}),EV=new Ot((t,e)=>{if(t.next!=kO){t.next<0&&e.context&&t.acceptToken(S_);return}t.advance();let n=t.next==R_;n&&t.advance();let a=L_(t,0);if(a===void 0)return;if(!a)return t.acceptToken(n?lV:cV);let r=e.context?e.context.name:null;if(n){if(a==r)return t.acceptToken(iV);if(r&&wV[r])return t.acceptToken(S_,-2);if(e.dialectEnabled(bV))return t.acceptToken(oV);for(let i=e.context;i;i=i.parent)if(i.name==a)return;t.acceptToken(sV)}else{if(a=="script")return t.acceptToken(mO);if(a=="style")return t.acceptToken(gO);if(a=="textarea")return t.acceptToken(fO);if(yV.hasOwnProperty(a))return t.acceptToken(bO);r&&cO[r]&&cO[r][a]?t.acceptToken(S_,-1):t.acceptToken($_)}},{contextual:!0}),QV=new Ot(t=>{for(let e=0,n=0;;n++){if(t.next<0){n&&t.acceptToken(sO);break}if(t.next==BV)e++;else if(t.next==dg&&e>=2){n>=3&&t.acceptToken(sO,-2);break}else e=0;t.advance()}});function IV(t){for(;t;t=t.parent)if(t.name=="svg"||t.name=="math")return!0;return!1}var DV=new Ot((t,e)=>{if(t.next==R_&&t.peek(1)==dg){let n=e.dialectEnabled(hV)||IV(e.context);t.acceptToken(n?rV:oO,2)}else t.next==dg&&t.acceptToken(oO,1)});function j_(t,e,n){let a=2+t.length;return new Ot(r=>{for(let i=0,o=0,s=0;;s++){if(r.next<0){s&&r.acceptToken(e);break}if(i==0&&r.next==kO||i==1&&r.next==R_||i>=2&&i<a&&r.next==t.charCodeAt(i-2))i++,o++;else if(i==a&&r.next==dg){s>o?r.acceptToken(e,-o):r.acceptToken(n,-(o-2));break}else if((r.next==10||r.next==13)&&s){r.acceptToken(e,1);break}else i=o=0;r.advance()}})}var FV=j_("script",VJ,XJ),SV=j_("style",eV,tV),OV=j_("textarea",nV,aV),NV=Vn({"Text RawText IncompleteTag IncompleteCloseTag":B.content,"StartTag StartCloseTag SelfClosingEndTag EndTag":B.angleBracket,TagName:B.tagName,"MismatchedCloseTag/TagName":[B.tagName,B.invalid],AttributeName:B.attributeName,"AttributeValue UnquotedAttributeValue":B.attributeValue,Is:B.definitionOperator,"EntityReference CharacterReference":B.character,Comment:B.blockComment,ProcessingInst:B.processingInstruction,DoctypeDecl:B.documentMeta}),CO=gr.deserialize({version:14,states:",xOVO!rOOO!ZQ#tO'#CrO!`Q#tO'#C{O!eQ#tO'#DOO!jQ#tO'#DRO!oQ#tO'#DTO!tOaO'#CqO#PObO'#CqO#[OdO'#CqO$kO!rO'#CqOOO`'#Cq'#CqO$rO$fO'#DUO$zQ#tO'#DWO%PQ#tO'#DXOOO`'#Dl'#DlOOO`'#DZ'#DZQVO!rOOO%UQ&rO,59^O%aQ&rO,59gO%lQ&rO,59jO%wQ&rO,59mO&SQ&rO,59oOOOa'#D_'#D_O&_OaO'#CyO&jOaO,59]OOOb'#D`'#D`O&rObO'#C|O&}ObO,59]OOOd'#Da'#DaO'VOdO'#DPO'bOdO,59]OOO`'#Db'#DbO'jO!rO,59]O'qQ#tO'#DSOOO`,59],59]OOOp'#Dc'#DcO'vO$fO,59pOOO`,59p,59pO(OQ#|O,59rO(TQ#|O,59sOOO`-E7X-E7XO(YQ&rO'#CtOOQW'#D['#D[O(hQ&rO1G.xOOOa1G.x1G.xOOO`1G/Z1G/ZO(sQ&rO1G/ROOOb1G/R1G/RO)OQ&rO1G/UOOOd1G/U1G/UO)ZQ&rO1G/XOOO`1G/X1G/XO)fQ&rO1G/ZOOOa-E7]-E7]O)qQ#tO'#CzOOO`1G.w1G.wOOOb-E7^-E7^O)vQ#tO'#C}OOOd-E7_-E7_O){Q#tO'#DQOOO`-E7`-E7`O*QQ#|O,59nOOOp-E7a-E7aOOO`1G/[1G/[OOO`1G/^1G/^OOO`1G/_1G/_O*VQ,UO,59`OOQW-E7Y-E7YOOOa7+$d7+$dOOO`7+$u7+$uOOOb7+$m7+$mOOOd7+$p7+$pOOO`7+$s7+$sO*bQ#|O,59fO*gQ#|O,59iO*lQ#|O,59lOOO`1G/Y1G/YO*qO7[O'#CwO+SOMhO'#CwOOQW1G.z1G.zOOO`1G/Q1G/QOOO`1G/T1G/TOOO`1G/W1G/WOOOO'#D]'#D]O+eO7[O,59cOOQW,59c,59cOOOO'#D^'#D^O+vOMhO,59cOOOO-E7Z-E7ZOOQW1G.}1G.}OOOO-E7[-E7[",stateData:",c~O!_OS~OUSOVPOWQOXROYTO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O|_O!eZO~OgaO~OgbO~OgcO~OgdO~OgeO~O!XfOPmP![mP~O!YiOQpP![pP~O!ZlORsP![sP~OUSOVPOWQOXROYTOZqO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O!eZO~O![rO~P#gO!]sO!fuO~OgvO~OgwO~OS|OT}OiyO~OS!POT}OiyO~OS!ROT}OiyO~OS!TOT}OiyO~OS}OT}OiyO~O!XfOPmX![mX~OP!WO![!XO~O!YiOQpX![pX~OQ!ZO![!XO~O!ZlORsX![sX~OR!]O![!XO~O![!XO~P#gOg!_O~O!]sO!f!aO~OS!bO~OS!cO~Oj!dOShXThXihX~OS!fOT!gOiyO~OS!hOT!gOiyO~OS!iOT!gOiyO~OS!jOT!gOiyO~OS!gOT!gOiyO~Og!kO~Og!lO~Og!mO~OS!nO~Ol!qO!a!oO!c!pO~OS!rO~OS!sO~OS!tO~Ob!uOc!uOd!uO!a!wO!b!uO~Ob!xOc!xOd!xO!c!wO!d!xO~Ob!uOc!uOd!uO!a!{O!b!uO~Ob!xOc!xOd!xO!c!{O!d!xO~OT~cbd!ey|!e~",goto:"%q!aPPPPPPPPPPPPPPPPPPPPP!b!hP!nPP!zP!}#Q#T#Z#^#a#g#j#m#s#y!bP!b!bP$P$V$m$s$y%P%V%]%cPPPPPPPP%iX^OX`pXUOX`pezabcde{!O!Q!S!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ!ObQ!QcQ!SdQ!UeZ!e{!O!Q!S!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp",nodeNames:"\u26A0 StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl",maxTerm:68,context:vV,nodeProps:[["closedBy",-10,1,2,3,7,8,9,10,11,12,13,"EndTag",6,"EndTag SelfClosingEndTag",-4,22,31,34,37,"CloseTag"],["openedBy",4,"StartTag StartCloseTag",5,"StartTag",-4,30,33,36,38,"OpenTag"],["group",-10,14,15,18,19,20,21,40,41,42,43,"Entity",17,"Entity TextContent",-3,29,32,35,"TextContent Entity"],["isolate",-11,22,30,31,33,34,36,37,38,39,42,43,"ltr",-3,27,28,40,""]],propSources:[NV],skippedNodes:[0],repeatNodeCount:9,tokenData:"!<p!aR!YOX$qXY,QYZ,QZ[$q[]&X]^,Q^p$qpq,Qqr-_rs3_sv-_vw3}wxHYx}-_}!OH{!O!P-_!P!Q$q!Q![-_![!]Mz!]!^-_!^!_!$S!_!`!;x!`!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4U-_4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!Z$|caPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr$qrs&}sv$qvw+Pwx(tx!^$q!^!_*V!_!a&X!a#S$q#S#T&X#T;'S$q;'S;=`+z<%lO$q!R&bXaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&Xq'UVaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}P'pTaPOv'kw!^'k!_;'S'k;'S;=`(P<%lO'kP(SP;=`<%l'kp([S!dpOv(Vx;'S(V;'S;=`(h<%lO(Vp(kP;=`<%l(Vq(qP;=`<%l&}a({WaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t`)jT!b`Or)esv)ew;'S)e;'S;=`)y<%lO)e`)|P;=`<%l)ea*SP;=`<%l(t!Q*^V!b`!dpOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!Q*vP;=`<%l*V!R*|P;=`<%l&XW+UYlWOX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+PW+wP;=`<%l+P!Z+}P;=`<%l$q!a,]`aP!b`!dp!_^OX&XXY,QYZ,QZ]&X]^,Q^p&Xpq,Qqr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!_-ljiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q[/ebiSlWOX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+PS0rXiSqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0mS1bP;=`<%l0m[1hP;=`<%l/^!V1vciSaP!b`!dpOq&Xqr1krs&}sv1kvw0mwx(tx!P1k!P!Q&X!Q!^1k!^!_*V!_!a&X!a#s1k#s$f&X$f;'S1k;'S;=`3R<%l?Ah1k?Ah?BY&X?BY?Mn1k?MnO&X!V3UP;=`<%l1k!_3[P;=`<%l-_!Z3hV!ahaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}!_4WiiSlWd!ROX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst>]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zblWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOb!R!R7tP;=`<%l7S!Z8OYlWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{iiSlWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbiSlWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!V<QciSOp7Sqr;{rs7Sst0mtw;{wx7Sx!P;{!P!Q7S!Q!];{!]!^=]!^!a7S!a#s;{#s$f7S$f;'S;{;'S;=`>P<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXiSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TalWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOc!R!RAwP;=`<%lAY!ZBRYlWc!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbiSlWc!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbiSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXiSc!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!cxaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYliSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_kiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_XaP!b`!dp!fQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZiSgQaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!b`!dpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!b`!dp!ePOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!b`!dpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!b`!dpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!b`!dpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!b`!dpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!b`!dpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!b`!dpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!b`!dpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!dpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO|PP!-nP;=`<%l!-Sq!-xS!dp|POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!b`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!b`|POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!b`!dp|POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!b`!dpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!b`!dpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!b`!dpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!b`!dpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!b`!dpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!b`!dpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!dpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOyPP!7TP;=`<%l!6Vq!7]V!dpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!dpyPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!b`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!b`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!b`yPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!b`!dpyPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!<TXjSaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X",tokenizers:[FV,SV,OV,DV,EV,QV,0,1,2,3,4,5],topRules:{Document:[0,16]},dialects:{noMatch:0,selfClosing:515},tokenPrec:517});function _O(t,e){let n=Object.create(null);for(let a of t.getChildren(yO)){let r=a.getChild(dV),i=a.getChild(N_)||a.getChild(wO);r&&(n[e.read(r.from,r.to)]=i?i.type.id==N_?e.read(i.from+1,i.to-1):e.read(i.from,i.to):"")}return n}function pO(t,e){let n=t.getChild(AV);return n?e.read(n.from,n.to):" "}function O_(t,e,n){let a;for(let r of n)if(!r.attrs||r.attrs(a||(a=_O(t.node.parent.firstChild,e))))return{parser:r.parser,bracketed:!0};return null}function P_(t=[],e=[]){let n=[],a=[],r=[],i=[];for(let s of t)(s.tag=="script"?n:s.tag=="style"?a:s.tag=="textarea"?r:i).push(s);let o=e.length?Object.create(null):null;for(let s of e)(o[s.name]||(o[s.name]=[])).push(s);return xm((s,c)=>{let A=s.type.id;if(A==uV)return O_(s,c,n);if(A==pV)return O_(s,c,a);if(A==mV)return O_(s,c,r);if(A==hO&&i.length){let d=s.node,u=d.firstChild,p=u&&pO(u,c),m;if(p){for(let f of i)if(f.tag==p&&(!f.attrs||f.attrs(m||(m=_O(u,c))))){let h=d.lastChild,w=h.type.id==fV?h.from:d.to;if(w>u.to)return{parser:f.parser,overlay:[{from:u.to,to:w}]}}}}if(o&&A==yO){let d=s.node,u;if(u=d.firstChild){let p=o[c.read(u.from,u.to)];if(p)for(let m of p){if(m.tagName&&m.tagName!=pO(d.parent,c))continue;let f=d.lastChild;if(f.type.id==N_){let h=f.from+1,w=f.lastChild,b=f.to-(w&&w.isError?0:1);if(b>h)return{parser:m.parser,overlay:[{from:h,to:b}],bracketed:!0}}else if(f.type.id==wO)return{parser:m.parser,overlay:[{from:f.from,to:f.to}]}}}}return null})}var NA=["_blank","_self","_top","_parent"],M_=["ascii","utf-8","utf-16","latin1","latin1"],T_=["get","post","put","delete"],q_=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],aa=["true","false"],ee={},LV={a:{attrs:{href:null,ping:null,type:null,media:null,target:NA,hreflang:null}},abbr:ee,address:ee,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:ee,aside:ee,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:ee,base:{attrs:{href:null,target:NA}},bdi:ee,bdo:ee,blockquote:{attrs:{cite:null}},body:ee,br:ee,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:q_,formmethod:T_,formnovalidate:["novalidate"],formtarget:NA,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:ee,center:ee,cite:ee,code:ee,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:["command","checkbox","radio"],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:["disabled"],checked:["checked"]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:["disabled"],multiple:["multiple"]}},datalist:{attrs:{data:null}},dd:ee,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:ee,div:ee,dl:ee,dt:ee,em:ee,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:ee,figure:ee,footer:ee,form:{attrs:{action:null,name:null,"accept-charset":M_,autocomplete:["on","off"],enctype:q_,method:T_,novalidate:["novalidate"],target:NA}},h1:ee,h2:ee,h3:ee,h4:ee,h5:ee,h6:ee,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:ee,hgroup:ee,hr:ee,html:{attrs:{manifest:null}},i:ee,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:["allow-top-navigation","allow-same-origin","allow-forms","allow-scripts"],seamless:["seamless"]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:["anonymous","use-credentials"]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:["audio/*","video/*","image/*"],autocomplete:["on","off"],autofocus:["autofocus"],checked:["checked"],disabled:["disabled"],formenctype:q_,formmethod:T_,formnovalidate:["novalidate"],formtarget:NA,multiple:["multiple"],readonly:["readonly"],required:["required"],type:["hidden","text","search","tel","url","email","password","datetime","date","month","week","time","datetime-local","number","range","color","checkbox","radio","file","submit","image","reset","button"]}},ins:{attrs:{cite:null,datetime:null}},kbd:ee,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:ee,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:["all","16x16","16x16 32x32","16x16 32x32 64x64"]}},map:{attrs:{name:null}},mark:ee,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:M_,name:["viewport","application-name","author","description","generator","keywords"],"http-equiv":["content-language","content-type","default-style","refresh"]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:ee,noscript:ee,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:["typemustmatch"]}},ol:{attrs:{reversed:["reversed"],start:null,type:["1","a","A","i","I"]},children:["li","script","template","ul","ol"]},optgroup:{attrs:{disabled:["disabled"],label:null}},option:{attrs:{disabled:["disabled"],label:null,selected:["selected"],value:null}},output:{attrs:{for:null,form:null,name:null}},p:ee,param:{attrs:{name:null,value:null}},pre:ee,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:ee,rt:ee,ruby:ee,samp:ee,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:M_}},section:ee,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},slot:{attrs:{name:null}},small:ee,source:{attrs:{src:null,type:null,media:null}},span:ee,strong:ee,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:ee,summary:ee,sup:ee,table:ee,tbody:ee,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:ee,textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:["autofocus"],disabled:["disabled"],readonly:["readonly"],required:["required"],wrap:["soft","hard"]}},tfoot:ee,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:ee,time:{attrs:{datetime:null}},title:ee,tr:ee,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},ul:{children:["li","script","template","ul","ol"]},var:ee,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:["anonymous","use-credentials"],preload:["auto","metadata","none"],autoplay:["autoplay"],mediagroup:["movie"],muted:["muted"],controls:["controls"]}},wbr:ee},EO={accesskey:null,class:null,contenteditable:aa,contextmenu:null,dir:["ltr","rtl","auto"],draggable:["true","false","auto"],dropzone:["copy","move","link","string:","file:"],hidden:["hidden"],id:null,inert:["inert"],itemid:null,itemprop:null,itemref:null,itemscope:["itemscope"],itemtype:null,lang:["ar","bn","de","en-GB","en-US","es","fr","hi","id","ja","pa","pt","ru","tr","zh"],spellcheck:aa,autocorrect:aa,autocapitalize:aa,style:null,tabindex:null,title:null,translate:["yes","no"],rel:["stylesheet","alternate","author","bookmark","help","license","next","nofollow","noreferrer","prefetch","prev","search","tag"],role:"alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "),"aria-activedescendant":null,"aria-atomic":aa,"aria-autocomplete":["inline","list","both","none"],"aria-busy":aa,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":aa,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":aa,"aria-hidden":aa,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":aa,"aria-multiselectable":aa,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":aa,"aria-relevant":null,"aria-required":aa,"aria-selected":["true","false","undefined"],"aria-setsize":null,"aria-sort":["ascending","descending","none","other"],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},QO="beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload".split(" ").map(t=>"on"+t);for(let t of QO)EO[t]=null;var Po=class{constructor(e,n){this.tags={...LV,...e},this.globalAttrs={...EO,...n},this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}};Po.default=new Po;function wc(t,e,n=t.length){if(!e)return"";let a=e.firstChild,r=a&&a.getChild("TagName");return r?t.sliceString(r.from,Math.min(r.to,n)):""}function kc(t,e=!1){for(;t;t=t.parent)if(t.name=="Element")if(e)e=!1;else return t;return null}function IO(t,e,n){let a=n.tags[wc(t,kc(e))];return a?.children||n.allTags}function G_(t,e){let n=[];for(let a=kc(e);a&&!a.type.isTop;a=kc(a.parent)){let r=wc(t,a);if(r&&a.lastChild.name=="CloseTag")break;r&&n.indexOf(r)<0&&(e.name=="EndTag"||e.from>=a.firstChild.to)&&n.push(r)}return n}var DO=/^[:\-\.\w\u00b7-\uffff]*$/;function BO(t,e,n,a,r){let i=/\s*>/.test(t.sliceDoc(r,r+5))?"":">",o=kc(n,n.name=="StartTag"||n.name=="TagName");return{from:a,to:r,options:IO(t.doc,o,e).map(s=>({label:s,type:"type"})).concat(G_(t.doc,n).map((s,c)=>({label:"/"+s,apply:"/"+s+i,type:"type",boost:99-c}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function xO(t,e,n,a){let r=/\s*>/.test(t.sliceDoc(a,a+5))?"":">";return{from:n,to:a,options:G_(t.doc,e).map((i,o)=>({label:i,apply:i+r,type:"type",boost:99-o})),validFor:DO}}function $V(t,e,n,a){let r=[],i=0;for(let o of IO(t.doc,n,e))r.push({label:"<"+o,type:"type"});for(let o of G_(t.doc,n))r.push({label:"</"+o+">",type:"type",boost:99-i++});return{from:a,to:a,options:r,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function RV(t,e,n,a,r){let i=kc(n),o=i?e.tags[wc(t.doc,i)]:null,s=o&&o.attrs?Object.keys(o.attrs):[],c=o&&o.globalAttrs===!1?s:s.length?s.concat(e.globalAttrNames):e.globalAttrNames;return{from:a,to:r,options:c.map(A=>({label:A,type:"property"})),validFor:DO}}function jV(t,e,n,a,r){var i;let o=(i=n.parent)===null||i===void 0?void 0:i.getChild("AttributeName"),s=[],c;if(o){let A=t.sliceDoc(o.from,o.to),d=e.globalAttrs[A];if(!d){let u=kc(n),p=u?e.tags[wc(t.doc,u)]:null;d=p?.attrs&&p.attrs[A]}if(d){let u=t.sliceDoc(a,r).toLowerCase(),p='"',m='"';/^['"]/.test(u)?(c=u[0]=='"'?/^[^"]*$/:/^[^']*$/,p="",m=t.sliceDoc(r,r+1)==u[0]?"":u[0],u=u.slice(1),a++):c=/^[^\s<>='"]*$/;for(let f of d)s.push({label:f,apply:p+f+m,type:"constant"})}}return{from:a,to:r,options:s,validFor:c}}function FO(t,e){let{state:n,pos:a}=e,r=Ee(n).resolveInner(a,-1),i=r.resolve(a);for(let o=a,s;i==r&&(s=r.childBefore(o));){let c=s.lastChild;if(!c||!c.type.isError||c.from<c.to)break;i=r=s,o=c.from}return r.name=="TagName"?r.parent&&/CloseTag$/.test(r.parent.name)?xO(n,r,r.from,a):BO(n,t,r,r.from,a):r.name=="StartTag"||r.name=="IncompleteTag"?BO(n,t,r,a,a):r.name=="StartCloseTag"||r.name=="IncompleteCloseTag"?xO(n,r,a,a):r.name=="OpenTag"||r.name=="SelfClosingTag"||r.name=="AttributeName"?RV(n,t,r,r.name=="AttributeName"?r.from:a,a):r.name=="Is"||r.name=="AttributeValue"||r.name=="UnquotedAttributeValue"?jV(n,t,r,r.name=="Is"?a:r.from,a):e.explicit&&(i.name=="Element"||i.name=="Text"||i.name=="Document")?$V(n,t,r,a):null}function SO(t){return FO(Po.default,t)}function PV(t){let{extraTags:e,extraGlobalAttributes:n}=t,a=n||e?new Po(e,n):Po.default;return r=>FO(a,r)}var MV=Ka.parser.configure({top:"SingleExpression"}),OO=[{tag:"script",attrs:t=>t.type=="text/typescript"||t.lang=="ts",parser:v_.parser},{tag:"script",attrs:t=>t.type=="text/babel"||t.type=="text/jsx",parser:E_.parser},{tag:"script",attrs:t=>t.type=="text/typescript-jsx",parser:Q_.parser},{tag:"script",attrs(t){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(t.type)},parser:MV},{tag:"script",attrs(t){return!t.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(t.type)},parser:Ka.parser},{tag:"style",attrs(t){return(!t.lang||t.lang=="css")&&(!t.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(t.type))},parser:OA.parser}],NO=[{name:"style",parser:OA.parser.configure({top:"Styles"})}].concat(QO.map(t=>({name:t,parser:Ka.parser}))),LO=mr.define({name:"html",parser:CO.configure({props:[Ha.add({Element(t){let e=/^(\s*)(<\/)?/.exec(t.textAfter);return t.node.to<=t.pos+e[0].length?t.continue():t.lineIndent(t.node.from)+(e[2]?0:t.unit)},"OpenTag CloseTag SelfClosingTag"(t){return t.column(t.node.from)+t.unit},Document(t){if(t.pos+/\s*/.exec(t.textAfter)[0].length<t.node.to)return t.continue();let e=null,n;for(let a=t.node;;){let r=a.lastChild;if(!r||r.name!="Element"||r.to!=a.to)break;e=a=r}return e&&!((n=e.lastChild)&&(n.name=="CloseTag"||n.name=="SelfClosingTag"))?t.lineIndent(e.from)+t.unit:null}}),Ca.add({Element(t){let e=t.firstChild,n=t.lastChild;return!e||e.name!="OpenTag"?null:{from:e.to,to:n.name=="CloseTag"?n.from:t.to}}}),EC.add({"OpenTag CloseTag":t=>t.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:"<!--",close:"-->"}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-_"}}),ug=LO.configure({wrap:P_(OO,NO)});function pg(t={}){let e="",n;t.matchClosingTags===!1&&(e="noMatch"),t.selfClosingTags===!0&&(e=(e?e+" ":"")+"selfClosing"),(t.nestedLanguages&&t.nestedLanguages.length||t.nestedAttributes&&t.nestedAttributes.length)&&(n=P_((t.nestedLanguages||[]).concat(OO),(t.nestedAttributes||[]).concat(NO)));let a=n?LO.configure({wrap:n,dialect:e}):e?ug.configure({dialect:e}):ug;return new Xn(a,[ug.data.of({autocomplete:PV(t)}),t.autoCloseTags!==!1?TV:[],yc().support,Ag().support])}var vO=new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")),TV=T.inputHandler.of((t,e,n,a,r)=>{if(t.composing||t.state.readOnly||e!=n||a!=">"&&a!="/"||!ug.isActiveAt(t.state,e,-1))return!1;let i=r(),{state:o}=i,s=o.changeByRange(c=>{var A,d,u;let p=o.doc.sliceString(c.from-1,c.to)==a,{head:m}=c,f=Ee(o).resolveInner(m,-1),h;if(p&&a==">"&&f.name=="EndTag"){let w=f.parent;if(((d=(A=w.parent)===null||A===void 0?void 0:A.lastChild)===null||d===void 0?void 0:d.name)!="CloseTag"&&(h=wc(o.doc,w.parent,m))&&!vO.has(h)){let b=m+(o.doc.sliceString(m,m+1)===">"?1:0),y=`</${h}>`;return{range:c,changes:{from:m,to:b,insert:y}}}}else if(p&&a=="/"&&f.name=="IncompleteCloseTag"){let w=f.parent;if(f.from==m-2&&((u=w.lastChild)===null||u===void 0?void 0:u.name)!="CloseTag"&&(h=wc(o.doc,w,m))&&!vO.has(h)){let b=m+(o.doc.sliceString(m,m+1)===">"?1:0),y=`${h}>`;return{range:L.cursor(m+y.length,-1),changes:{from:m,to:b,insert:y}}}}return{range:c}});return s.changes.empty?!1:(t.dispatch([i,o.update(s,{userEvent:"input.complete",scrollIntoView:!0})]),!0)});var qV=Vn({String:B.string,Number:B.number,"True False":B.bool,PropertyName:B.propertyName,Null:B.null,", :":B.separator,"[ ]":B.squareBracket,"{ }":B.brace}),$O=gr.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l",stateData:"#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O",goto:"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"\u26A0 JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",14,"["],["closedBy",8,"}",15,"]"]],propSources:[qV],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0});var GV=mr.define({name:"json",parser:$O.configure({props:[Ha.add({Object:jr({except:/^\s*\}/}),Array:jr({except:/^\s*\]/})}),Ca.add({"Object Array":lc})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function RO(){return new Xn(GV)}var fg=class t{static create(e,n,a,r,i){let o=r+(r<<8)+e+(n<<4)|0;return new t(e,n,a,o,i,[],[])}constructor(e,n,a,r,i,o,s){this.type=e,this.value=n,this.from=a,this.hash=r,this.end=i,this.children=o,this.positions=s,this.hashProp=[[ae.contextHash,r]]}addChild(e,n){e.prop(ae.contextHash)!=this.hash&&(e=new ve(e.type,e.children,e.positions,e.length,this.hashProp)),this.children.push(e),this.positions.push(n)}toTree(e,n=this.end){let a=this.children.length-1;return a>=0&&(n=Math.max(n,this.positions[a]+this.children[a].length+this.from)),new ve(e.types[this.type],this.children,this.positions,n-this.from).balance({makeTree:(r,i,o)=>new ve(pt.none,r,i,o,this.hashProp)})}},M;(function(t){t[t.Document=1]="Document",t[t.CodeBlock=2]="CodeBlock",t[t.FencedCode=3]="FencedCode",t[t.Blockquote=4]="Blockquote",t[t.HorizontalRule=5]="HorizontalRule",t[t.BulletList=6]="BulletList",t[t.OrderedList=7]="OrderedList",t[t.ListItem=8]="ListItem",t[t.ATXHeading1=9]="ATXHeading1",t[t.ATXHeading2=10]="ATXHeading2",t[t.ATXHeading3=11]="ATXHeading3",t[t.ATXHeading4=12]="ATXHeading4",t[t.ATXHeading5=13]="ATXHeading5",t[t.ATXHeading6=14]="ATXHeading6",t[t.SetextHeading1=15]="SetextHeading1",t[t.SetextHeading2=16]="SetextHeading2",t[t.HTMLBlock=17]="HTMLBlock",t[t.LinkReference=18]="LinkReference",t[t.Paragraph=19]="Paragraph",t[t.CommentBlock=20]="CommentBlock",t[t.ProcessingInstructionBlock=21]="ProcessingInstructionBlock",t[t.Escape=22]="Escape",t[t.Entity=23]="Entity",t[t.HardBreak=24]="HardBreak",t[t.Emphasis=25]="Emphasis",t[t.StrongEmphasis=26]="StrongEmphasis",t[t.Link=27]="Link",t[t.Image=28]="Image",t[t.InlineCode=29]="InlineCode",t[t.HTMLTag=30]="HTMLTag",t[t.Comment=31]="Comment",t[t.ProcessingInstruction=32]="ProcessingInstruction",t[t.Autolink=33]="Autolink",t[t.HeaderMark=34]="HeaderMark",t[t.QuoteMark=35]="QuoteMark",t[t.ListMark=36]="ListMark",t[t.LinkMark=37]="LinkMark",t[t.EmphasisMark=38]="EmphasisMark",t[t.CodeMark=39]="CodeMark",t[t.CodeText=40]="CodeText",t[t.CodeInfo=41]="CodeInfo",t[t.LinkTitle=42]="LinkTitle",t[t.LinkLabel=43]="LinkLabel",t[t.URL=44]="URL"})(M||(M={}));var H_=class{constructor(e,n){this.start=e,this.content=n,this.marks=[],this.parsers=[]}},Z_=class{constructor(){this.text="",this.baseIndent=0,this.basePos=0,this.depth=0,this.markers=[],this.pos=0,this.indent=0,this.next=-1}forward(){this.basePos>this.pos&&this.forwardInner()}forwardInner(){let e=this.skipSpace(this.basePos);this.indent=this.countIndent(e,this.pos,this.indent),this.pos=e,this.next=e==this.text.length?-1:this.text.charCodeAt(e)}skipSpace(e){return $A(this.text,e)}reset(e){for(this.text=e,this.baseIndent=this.basePos=this.pos=this.indent=0,this.forwardInner(),this.depth=1;this.markers.length;)this.markers.pop()}moveBase(e){this.basePos=e,this.baseIndent=this.countIndent(e,this.pos,this.indent)}moveBaseColumn(e){this.baseIndent=e,this.basePos=this.findColumn(e)}addMarker(e){this.markers.push(e)}countIndent(e,n=0,a=0){for(let r=n;r<e;r++)a+=this.text.charCodeAt(r)==9?4-a%4:1;return a}findColumn(e){let n=0;for(let a=0;n<this.text.length&&a<e;n++)a+=this.text.charCodeAt(n)==9?4-a%4:1;return n}scrub(){if(!this.baseIndent)return this.text;let e="";for(let n=0;n<this.basePos;n++)e+=" ";return e+this.text.slice(this.basePos)}};function jO(t,e,n){if(n.pos==n.text.length||t!=e.block&&n.indent>=e.stack[n.depth+1].value+n.baseIndent)return!0;if(n.indent>=n.baseIndent+4)return!1;let a=(t.type==M.OrderedList?iB:rB)(n,e,!1);return a>0&&(t.type!=M.BulletList||aB(n,e,!1)<0)&&n.text.charCodeAt(n.pos+a-1)==t.value}var WO={[M.Blockquote](t,e,n){return n.next!=62?!1:(n.markers.push(_e(M.QuoteMark,e.lineStart+n.pos,e.lineStart+n.pos+1)),n.moveBase(n.pos+(xa(n.text.charCodeAt(n.pos+1))?2:1)),t.end=e.lineStart+n.text.length,!0)},[M.ListItem](t,e,n){return n.indent<n.baseIndent+t.value&&n.next>-1?!1:(n.moveBaseColumn(n.baseIndent+t.value),!0)},[M.OrderedList]:jO,[M.BulletList]:jO,[M.Document](){return!0}};function xa(t){return t==32||t==9||t==10||t==13}function $A(t,e=0){for(;e<t.length&&xa(t.charCodeAt(e));)e++;return e}function PO(t,e,n){for(;e>n&&xa(t.charCodeAt(e-1));)e--;return e}function KO(t){if(t.next!=96&&t.next!=126)return-1;let e=t.pos+1;for(;e<t.text.length&&t.text.charCodeAt(e)==t.next;)e++;if(e<t.pos+3)return-1;if(t.next==96){for(let n=e;n<t.text.length;n++)if(t.text.charCodeAt(n)==96)return-1}return e}function JO(t){return t.next!=62?-1:t.text.charCodeAt(t.pos+1)==32?2:1}function aB(t,e,n){if(t.next!=42&&t.next!=45&&t.next!=95)return-1;let a=1;for(let r=t.pos+1;r<t.text.length;r++){let i=t.text.charCodeAt(r);if(i==t.next)a++;else if(!xa(i))return-1}return n&&t.next==45&&e9(t)>-1&&t.depth==e.stack.length&&e.parser.leafBlockParsers.indexOf(r9.SetextHeading)>-1||a<3?-1:1}function VO(t,e){for(let n=t.stack.length-1;n>=0;n--)if(t.stack[n].type==e)return!0;return!1}function rB(t,e,n){return(t.next==45||t.next==43||t.next==42)&&(t.pos==t.text.length-1||xa(t.text.charCodeAt(t.pos+1)))&&(!n||VO(e,M.BulletList)||t.skipSpace(t.pos+2)<t.text.length)?1:-1}function iB(t,e,n){let a=t.pos,r=t.next;for(;r>=48&&r<=57;){a++;if(a==t.text.length)return-1;r=t.text.charCodeAt(a)}return a==t.pos||a>t.pos+9||r!=46&&r!=41||a<t.text.length-1&&!xa(t.text.charCodeAt(a+1))||n&&!VO(e,M.OrderedList)&&(t.skipSpace(a+1)==t.text.length||a>t.pos+1||t.next!=49)?-1:a+1-t.pos}function XO(t){if(t.next!=35)return-1;let e=t.pos+1;for(;e<t.text.length&&t.text.charCodeAt(e)==35;)e++;if(e<t.text.length&&t.text.charCodeAt(e)!=32)return-1;let n=e-t.pos;return n>6?-1:n}function e9(t){if(t.next!=45&&t.next!=61||t.indent>=t.baseIndent+4)return-1;let e=t.pos+1;for(;e<t.text.length&&t.text.charCodeAt(e)==t.next;)e++;let n=e;for(;e<t.text.length&&xa(t.text.charCodeAt(e));)e++;return e==t.text.length?n:-1}var Y_=/^[ \t]*$/,t9=/-->/,n9=/\?>/,W_=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*<!--/,t9],[/^\s*<\?/,n9],[/^\s*<![A-Z]/,/>/],[/^\s*<!\[CDATA\[/,/\]\]>/],[/^\s*<\/?(?:address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h1|h2|h3|h4|h5|h6|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul)(?:\s|\/?>|$)/i,Y_],[/^\s*(?:<\/[a-z][\w-]*\s*>|<[a-z][\w-]*(\s+[a-z:_][\w-.]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*>)\s*$/i,Y_]];function a9(t,e,n){if(t.next!=60)return-1;let a=t.text.slice(t.pos);for(let r=0,i=W_.length-(n?1:0);r<i;r++)if(W_[r][0].test(a))return r;return-1}function MO(t,e){let n=t.countIndent(e,t.pos,t.indent),a=t.countIndent(t.skipSpace(e),e,n);return a>=n+5?n+1:a}function Zi(t,e,n){let a=t.length-1;a>=0&&t[a].to==e&&t[a].type==M.CodeText?t[a].to=n:t.push(_e(M.CodeText,e,n))}var mg={LinkReference:void 0,IndentedCode(t,e){let n=e.baseIndent+4;if(e.indent<n)return!1;let a=e.findColumn(n),r=t.lineStart+a,i=t.lineStart+e.text.length,o=[],s=[];for(Zi(o,r,i);t.nextLine()&&e.depth>=t.stack.length;)if(e.pos==e.text.length){Zi(s,t.lineStart-1,t.lineStart);for(let c of e.markers)s.push(c)}else{if(e.indent<n)break;{if(s.length){for(let A of s)A.type==M.CodeText?Zi(o,A.from,A.to):o.push(A);s=[]}Zi(o,t.lineStart-1,t.lineStart);for(let A of e.markers)o.push(A);i=t.lineStart+e.text.length;let c=t.lineStart+e.findColumn(e.baseIndent+4);c<i&&Zi(o,c,i)}}return s.length&&(s=s.filter(c=>c.type!=M.CodeText),s.length&&(e.markers=s.concat(e.markers))),t.addNode(t.buffer.writeElements(o,-r).finish(M.CodeBlock,i-r),r),!0},FencedCode(t,e){let n=KO(e);if(n<0)return!1;let a=t.lineStart+e.pos,r=e.next,i=n-e.pos,o=e.skipSpace(n),s=PO(e.text,e.text.length,o),c=[_e(M.CodeMark,a,a+i)];o<s&&c.push(_e(M.CodeInfo,t.lineStart+o,t.lineStart+s));for(let A=!0,d=!0,u=!1;t.nextLine()&&e.depth>=t.stack.length;A=!1){let p=e.pos;if(e.indent-e.baseIndent<4)for(;p<e.text.length&&e.text.charCodeAt(p)==r;)p++;if(p-e.pos>=i&&e.skipSpace(p)==e.text.length){for(let m of e.markers)c.push(m);d&&u&&Zi(c,t.lineStart-1,t.lineStart),c.push(_e(M.CodeMark,t.lineStart+e.pos,t.lineStart+p)),t.nextLine();break}else{u=!0,A||(Zi(c,t.lineStart-1,t.lineStart),d=!1);for(let h of e.markers)c.push(h);let m=t.lineStart+e.basePos,f=t.lineStart+e.text.length;m<f&&(Zi(c,m,f),d=!1)}}return t.addNode(t.buffer.writeElements(c,-a).finish(M.FencedCode,t.prevLineEnd()-a),a),!0},Blockquote(t,e){let n=JO(e);return n<0?!1:(t.startContext(M.Blockquote,e.pos),t.addNode(M.QuoteMark,t.lineStart+e.pos,t.lineStart+e.pos+1),e.moveBase(e.pos+n),null)},HorizontalRule(t,e){if(aB(e,t,!1)<0)return!1;let n=t.lineStart+e.pos;return t.nextLine(),t.addNode(M.HorizontalRule,n),!0},BulletList(t,e){let n=rB(e,t,!1);if(n<0)return!1;t.block.type!=M.BulletList&&t.startContext(M.BulletList,e.basePos,e.next);let a=MO(e,e.pos+1);return t.startContext(M.ListItem,e.basePos,a-e.baseIndent),t.addNode(M.ListMark,t.lineStart+e.pos,t.lineStart+e.pos+n),e.moveBaseColumn(a),null},OrderedList(t,e){let n=iB(e,t,!1);if(n<0)return!1;t.block.type!=M.OrderedList&&t.startContext(M.OrderedList,e.basePos,e.text.charCodeAt(e.pos+n-1));let a=MO(e,e.pos+n);return t.startContext(M.ListItem,e.basePos,a-e.baseIndent),t.addNode(M.ListMark,t.lineStart+e.pos,t.lineStart+e.pos+n),e.moveBaseColumn(a),null},ATXHeading(t,e){let n=XO(e);if(n<0)return!1;let a=e.pos,r=t.lineStart+a,i=PO(e.text,e.text.length,a),o=i;for(;o>a&&e.text.charCodeAt(o-1)==e.next;)o--;(o==i||o==a||!xa(e.text.charCodeAt(o-1)))&&(o=e.text.length);let s=t.buffer.write(M.HeaderMark,0,n).writeElements(t.parser.parseInline(e.text.slice(a+n+1,o),r+n+1),-r);o<e.text.length&&s.write(M.HeaderMark,o-a,i-a);let c=s.finish(M.ATXHeading1-1+n,e.text.length-a);return t.nextLine(),t.addNode(c,r),!0},HTMLBlock(t,e){let n=a9(e,t,!1);if(n<0)return!1;let a=t.lineStart+e.pos,r=W_[n][1],i=[],o=r!=Y_;for(;!r.test(e.text)&&t.nextLine();){if(e.depth<t.stack.length){o=!1;break}for(let A of e.markers)i.push(A)}o&&t.nextLine();let s=r==t9?M.CommentBlock:r==n9?M.ProcessingInstructionBlock:M.HTMLBlock,c=t.prevLineEnd();return t.addNode(t.buffer.writeElements(i,-a).finish(s,c-a),a),!0},SetextHeading:void 0},K_=class{constructor(e){this.stage=0,this.elts=[],this.pos=0,this.start=e.start,this.advance(e.content)}nextLine(e,n,a){if(this.stage==-1)return!1;let r=a.content+` +`+n.scrub(),i=this.advance(r);return i>-1&&i<r.length?this.complete(e,a,i):!1}finish(e,n){return(this.stage==2||this.stage==3)&&$A(n.content,this.pos)==n.content.length?this.complete(e,n,n.content.length):!1}complete(e,n,a){return e.addLeafElement(n,_e(M.LinkReference,this.start,this.start+a,this.elts)),!0}nextStage(e){return e?(this.pos=e.to-this.start,this.elts.push(e),this.stage++,!0):(e===!1&&(this.stage=-1),!1)}advance(e){for(;;){if(this.stage==-1)return-1;if(this.stage==0){if(!this.nextStage(d9(e,this.pos,this.start,!0)))return-1;if(e.charCodeAt(this.pos)!=58)return this.stage=-1;this.elts.push(_e(M.LinkMark,this.pos+this.start,this.pos+this.start+1)),this.pos++}else if(this.stage==1){if(!this.nextStage(l9(e,$A(e,this.pos),this.start)))return-1}else if(this.stage==2){let n=$A(e,this.pos),a=0;if(n>this.pos){let r=A9(e,n,this.start);if(r){let i=z_(e,r.to-this.start);i>0&&(this.nextStage(r),a=i)}}return a||(a=z_(e,this.pos)),a>0&&a<e.length?a:-1}else return z_(e,this.pos)}}};function z_(t,e){for(;e<t.length;e++){let n=t.charCodeAt(e);if(n==10)break;if(!xa(n))return-1}return e}var J_=class{nextLine(e,n,a){let r=n.depth<e.stack.length?-1:e9(n),i=n.next;if(r<0)return!1;let o=_e(M.HeaderMark,e.lineStart+n.pos,e.lineStart+r);return e.nextLine(),e.addLeafElement(a,_e(i==61?M.SetextHeading1:M.SetextHeading2,a.start,e.prevLineEnd(),[...e.parser.parseInline(a.content,a.start),o])),!0}finish(){return!1}},r9={LinkReference(t,e){return e.content.charCodeAt(0)==91?new K_(e):null},SetextHeading(){return new J_}},zV=[(t,e)=>XO(e)>=0,(t,e)=>KO(e)>=0,(t,e)=>JO(e)>=0,(t,e)=>rB(e,t,!0)>=0,(t,e)=>iB(e,t,!0)>=0,(t,e)=>aB(e,t,!0)>=0,(t,e)=>a9(e,t,!0)>=0],UV={text:"",end:0},V_=class{constructor(e,n,a,r){this.parser=e,this.input=n,this.ranges=r,this.line=new Z_,this.atEnd=!1,this.reusePlaceholders=new Map,this.stoppedAt=null,this.rangeI=0,this.to=r[r.length-1].to,this.lineStart=this.absoluteLineStart=this.absoluteLineEnd=r[0].from,this.block=fg.create(M.Document,0,this.lineStart,0,0),this.stack=[this.block],this.fragments=a.length?new tB(a,n):null,this.readLine()}get parsedPos(){return this.absoluteLineStart}advance(){if(this.stoppedAt!=null&&this.absoluteLineStart>this.stoppedAt)return this.finish();let{line:e}=this;for(;;){for(let a=0;;){let r=e.depth<this.stack.length?this.stack[this.stack.length-1]:null;for(;a<e.markers.length&&(!r||e.markers[a].from<r.end);){let i=e.markers[a++];this.addNode(i.type,i.from,i.to)}if(!r)break;this.finishContext()}if(e.pos<e.text.length)break;if(!this.nextLine())return this.finish()}if(this.fragments&&this.reuseFragment(e.basePos))return null;e:for(;;){for(let a of this.parser.blockParsers)if(a){let r=a(this,e);if(r!=!1){if(r==!0)return null;e.forward();continue e}}break}let n=new H_(this.lineStart+e.pos,e.text.slice(e.pos));for(let a of this.parser.leafBlockParsers)if(a){let r=a(this,n);r&&n.parsers.push(r)}e:for(;this.nextLine()&&e.pos!=e.text.length;){if(e.indent<e.baseIndent+4){for(let a of this.parser.endLeafBlock)if(a(this,e,n))break e}for(let a of n.parsers)if(a.nextLine(this,e,n))return null;n.content+=` +`+e.scrub();for(let a of e.markers)n.marks.push(a)}return this.finishLeaf(n),null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=e}reuseFragment(e){if(!this.fragments.moveTo(this.absoluteLineStart+e,this.absoluteLineStart)||!this.fragments.matches(this.block.hash))return!1;let n=this.fragments.takeNodes(this);return n?(this.absoluteLineStart+=n,this.lineStart=u9(this.absoluteLineStart,this.ranges),this.moveRangeI(),this.absoluteLineStart<this.to?(this.lineStart++,this.absoluteLineStart++,this.readLine()):(this.atEnd=!0,this.readLine()),!0):!1}get depth(){return this.stack.length}parentType(e=this.depth-1){return this.parser.nodeSet.types[this.stack[e].type]}nextLine(){return this.lineStart+=this.line.text.length,this.absoluteLineEnd>=this.to?(this.absoluteLineStart=this.absoluteLineEnd,this.atEnd=!0,this.readLine(),!1):(this.lineStart++,this.absoluteLineStart=this.absoluteLineEnd+1,this.moveRangeI(),this.readLine(),!0)}peekLine(){return this.scanLine(this.absoluteLineEnd+1).text}moveRangeI(){for(;this.rangeI<this.ranges.length-1&&this.absoluteLineStart>=this.ranges[this.rangeI].to;)this.rangeI++,this.absoluteLineStart=Math.max(this.absoluteLineStart,this.ranges[this.rangeI].from)}scanLine(e){let n=UV;if(n.end=e,e>=this.to)n.text="";else if(n.text=this.lineChunkAt(e),n.end+=n.text.length,this.ranges.length>1){let a=this.absoluteLineStart,r=this.rangeI;for(;this.ranges[r].to<n.end;){r++;let i=this.ranges[r].from,o=this.lineChunkAt(i);n.end=i+o.length,n.text=n.text.slice(0,this.ranges[r-1].to-a)+o,a=n.end-n.text.length}}return n}readLine(){let{line:e}=this,{text:n,end:a}=this.scanLine(this.absoluteLineStart);for(this.absoluteLineEnd=a,e.reset(n);e.depth<this.stack.length;e.depth++){let r=this.stack[e.depth],i=this.parser.skipContextMarkup[r.type];if(!i)throw new Error("Unhandled block context "+M[r.type]);let o=this.line.markers.length;if(!i(r,this,e)){this.line.markers.length>o&&(r.end=this.line.markers[this.line.markers.length-1].to),e.forward();break}e.forward()}}lineChunkAt(e){let n=this.input.chunk(e),a;if(this.input.lineChunks)a=n==` +`?"":n;else{let r=n.indexOf(` +`);a=r<0?n:n.slice(0,r)}return e+a.length>this.to?a.slice(0,this.to-e):a}prevLineEnd(){return this.atEnd?this.lineStart:this.lineStart-1}startContext(e,n,a=0){this.block=fg.create(e,a,this.lineStart+n,this.block.hash,this.lineStart+this.line.text.length),this.stack.push(this.block)}startComposite(e,n,a=0){this.startContext(this.parser.getNodeType(e),n,a)}addNode(e,n,a){typeof e=="number"&&(e=new ve(this.parser.nodeSet.types[e],Cc,Cc,(a??this.prevLineEnd())-n)),this.block.addChild(e,n-this.block.from)}addElement(e){this.block.addChild(e.toTree(this.parser.nodeSet),e.from-this.block.from)}addLeafElement(e,n){this.addNode(this.buffer.writeElements(eB(n.children,e.marks),-n.from).finish(n.type,n.to-n.from),n.from)}finishContext(){let e=this.stack.pop(),n=this.stack[this.stack.length-1];n.addChild(e.toTree(this.parser.nodeSet),e.from-n.from),this.block=n}finish(){for(;this.stack.length>1;)this.finishContext();return this.addGaps(this.block.toTree(this.parser.nodeSet,this.lineStart))}addGaps(e){return this.ranges.length>1?i9(this.ranges,0,e.topNode,this.ranges[0].from,this.reusePlaceholders):e}finishLeaf(e){for(let a of e.parsers)if(a.finish(this,e))return;let n=eB(this.parser.parseInline(e.content,e.start),e.marks);this.addNode(this.buffer.writeElements(n,-e.start).finish(M.Paragraph,e.content.length),e.start)}elt(e,n,a,r){return typeof e=="string"?_e(this.parser.getNodeType(e),n,a,r):new hg(e,n)}get buffer(){return new bg(this.parser.nodeSet)}};function i9(t,e,n,a,r){let i=t[e].to,o=[],s=[],c=n.from+a;function A(d,u){for(;u?d>=i:d>i;){let p=t[e+1].from-i;a+=p,d+=p,e++,i=t[e].to}}for(let d=n.firstChild;d;d=d.nextSibling){A(d.from+a,!0);let u=d.from+a,p,m=r.get(d.tree);m?p=m:d.to+a>i?(p=i9(t,e,d,a,r),A(d.to+a,!1)):p=d.toTree(),o.push(p),s.push(u-c)}return A(n.to+a,!1),new ve(n.type,o,s,n.to+a-c,n.tree?n.tree.propValues:void 0)}var jA=class t extends $i{constructor(e,n,a,r,i,o,s,c,A){super(),this.nodeSet=e,this.blockParsers=n,this.leafBlockParsers=a,this.blockNames=r,this.endLeafBlock=i,this.skipContextMarkup=o,this.inlineParsers=s,this.inlineNames=c,this.wrappers=A,this.nodeTypes=Object.create(null);for(let d of e.types)this.nodeTypes[d.name]=d.id}createParse(e,n,a){let r=new V_(this,e,n,a);for(let i of this.wrappers)r=i(r,e,n,a);return r}configure(e){let n=X_(e);if(!n)return this;let{nodeSet:a,skipContextMarkup:r}=this,i=this.blockParsers.slice(),o=this.leafBlockParsers.slice(),s=this.blockNames.slice(),c=this.inlineParsers.slice(),A=this.inlineNames.slice(),d=this.endLeafBlock.slice(),u=this.wrappers;if(LA(n.defineNodes)){r=Object.assign({},r);let p=a.types.slice(),m;for(let f of n.defineNodes){let{name:h,block:w,composite:b,style:y}=typeof f=="string"?{name:f}:f;if(p.some(Q=>Q.name==h))continue;b&&(r[p.length]=(Q,D,F)=>b(D,F,Q.value));let k=p.length,E=b?["Block","BlockContext"]:w?k>=M.ATXHeading1&&k<=M.SetextHeading2?["Block","LeafBlock","Heading"]:["Block","LeafBlock"]:void 0;p.push(pt.define({id:k,name:h,props:E&&[[ae.group,E]]})),y&&(m||(m={}),Array.isArray(y)||y instanceof Jn?m[h]=y:Object.assign(m,y))}a=new Ni(p),m&&(a=a.extend(Vn(m)))}if(LA(n.props)&&(a=a.extend(...n.props)),LA(n.remove))for(let p of n.remove){let m=this.blockNames.indexOf(p),f=this.inlineNames.indexOf(p);m>-1&&(i[m]=o[m]=void 0),f>-1&&(c[f]=void 0)}if(LA(n.parseBlock))for(let p of n.parseBlock){let m=s.indexOf(p.name);if(m>-1)i[m]=p.parse,o[m]=p.leaf;else{let f=p.before?gg(s,p.before):p.after?gg(s,p.after)+1:s.length-1;i.splice(f,0,p.parse),o.splice(f,0,p.leaf),s.splice(f,0,p.name)}p.endLeaf&&d.push(p.endLeaf)}if(LA(n.parseInline))for(let p of n.parseInline){let m=A.indexOf(p.name);if(m>-1)c[m]=p.parse;else{let f=p.before?gg(A,p.before):p.after?gg(A,p.after)+1:A.length-1;c.splice(f,0,p.parse),A.splice(f,0,p.name)}}return n.wrap&&(u=u.concat(n.wrap)),new t(a,i,o,s,d,r,c,A,u)}getNodeType(e){let n=this.nodeTypes[e];if(n==null)throw new RangeError(`Unknown node type '${e}'`);return n}parseInline(e,n){let a=new MA(this,e,n);e:for(let r=n;r<a.end;){let i=a.char(r);for(let o of this.inlineParsers)if(o){let s=o(a,i,r);if(s>=0){r=s;continue e}}r++}return a.resolveMarkers(0)}};function LA(t){return t!=null&&t.length>0}function X_(t){if(!Array.isArray(t))return t;if(t.length==0)return null;let e=X_(t[0]);if(t.length==1)return e;let n=X_(t.slice(1));if(!n||!e)return e||n;let a=(o,s)=>(o||Cc).concat(s||Cc),r=e.wrap,i=n.wrap;return{props:a(e.props,n.props),defineNodes:a(e.defineNodes,n.defineNodes),parseBlock:a(e.parseBlock,n.parseBlock),parseInline:a(e.parseInline,n.parseInline),remove:a(e.remove,n.remove),wrap:r?i?(o,s,c,A)=>r(i(o,s,c,A),s,c,A):r:i}}function gg(t,e){let n=t.indexOf(e);if(n<0)throw new RangeError(`Position specified relative to unknown parser ${e}`);return n}var o9=[pt.none];for(let t=1,e;e=M[t];t++)o9[t]=pt.define({id:t,name:e,props:t>=M.Escape?[]:[[ae.group,t in WO?["Block","BlockContext"]:["Block","LeafBlock"]]],top:e=="Document"});var Cc=[],bg=class{constructor(e){this.nodeSet=e,this.content=[],this.nodes=[]}write(e,n,a,r=0){return this.content.push(e,n,a,4+r*4),this}writeElements(e,n=0){for(let a of e)a.writeTo(this,n);return this}finish(e,n){return ve.build({buffer:this.content,nodeSet:this.nodeSet,reused:this.nodes,topID:e,length:n})}},To=class{constructor(e,n,a,r=Cc){this.type=e,this.from=n,this.to=a,this.children=r}writeTo(e,n){let a=e.content.length;e.writeElements(this.children,n),e.content.push(this.type,this.from+n,this.to+n,e.content.length+4-a)}toTree(e){return new bg(e).writeElements(this.children,-this.from).finish(this.type,this.to-this.from)}},hg=class{constructor(e,n){this.tree=e,this.from=n}get to(){return this.from+this.tree.length}get type(){return this.tree.type.id}get children(){return Cc}writeTo(e,n){e.nodes.push(this.tree),e.content.push(e.nodes.length-1,this.from+n,this.to+n,-1)}toTree(){return this.tree}};function _e(t,e,n,a){return new To(t,e,n,a)}var s9={resolve:"Emphasis",mark:"EmphasisMark"},c9={resolve:"Emphasis",mark:"EmphasisMark"},Mo={},yg={},fn=class{constructor(e,n,a,r){this.type=e,this.from=n,this.to=a,this.side=r}},TO="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",PA=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\u2010-\u2027]/;try{PA=new RegExp("[\\p{S}|\\p{P}]","u")}catch{}var U_={Escape(t,e,n){if(e!=92||n==t.end-1)return-1;let a=t.char(n+1);for(let r=0;r<TO.length;r++)if(TO.charCodeAt(r)==a)return t.append(_e(M.Escape,n,n+2));return-1},Entity(t,e,n){if(e!=38)return-1;let a=/^(?:#\d+|#x[a-f\d]+|\w+);/i.exec(t.slice(n+1,n+31));return a?t.append(_e(M.Entity,n,n+1+a[0].length)):-1},InlineCode(t,e,n){if(e!=96||n&&t.char(n-1)==96)return-1;let a=n+1;for(;a<t.end&&t.char(a)==96;)a++;let r=a-n,i=0;for(;a<t.end;a++)if(t.char(a)==96){if(i++,i==r&&t.char(a+1)!=96)return t.append(_e(M.InlineCode,n,a+1,[_e(M.CodeMark,n,n+r),_e(M.CodeMark,a+1-r,a+1)]))}else i=0;return-1},HTMLTag(t,e,n){if(e!=60||n==t.end-1)return-1;let a=t.slice(n+1,t.end),r=/^(?:[a-z][-\w+.]+:[^\s>]+|[a-z\d.!#$%&'*+/=?^_`{|}~-]+@[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?(?:\.[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?)*)>/i.exec(a);if(r)return t.append(_e(M.Autolink,n,n+1+r[0].length,[_e(M.LinkMark,n,n+1),_e(M.URL,n+1,n+r[0].length),_e(M.LinkMark,n+r[0].length,n+1+r[0].length)]));let i=/^!--[^>](?:-[^-]|[^-])*?-->/i.exec(a);if(i)return t.append(_e(M.Comment,n,n+1+i[0].length));let o=/^\?[^]*?\?>/.exec(a);if(o)return t.append(_e(M.ProcessingInstruction,n,n+1+o[0].length));let s=/^(?:![A-Z][^]*?>|!\[CDATA\[[^]*?\]\]>|\/\s*[a-zA-Z][\w-]*\s*>|\s*[a-zA-Z][\w-]*(\s+[a-zA-Z:_][\w-.:]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*(\/\s*)?>)/.exec(a);return s?t.append(_e(M.HTMLTag,n,n+1+s[0].length)):-1},Emphasis(t,e,n){if(e!=95&&e!=42)return-1;let a=n+1;for(;t.char(a)==e;)a++;let r=t.slice(n-1,n),i=t.slice(a,a+1),o=PA.test(r),s=PA.test(i),c=/\s|^$/.test(r),A=/\s|^$/.test(i),d=!A&&(!s||c||o),u=!c&&(!o||A||s),p=d&&(e==42||!u||o),m=u&&(e==42||!d||s);return t.append(new fn(e==95?s9:c9,n,a,(p?1:0)|(m?2:0)))},HardBreak(t,e,n){if(e==92&&t.char(n+1)==10)return t.append(_e(M.HardBreak,n,n+2));if(e==32){let a=n+1;for(;t.char(a)==32;)a++;if(t.char(a)==10&&a>=n+2)return t.append(_e(M.HardBreak,n,a+1))}return-1},Link(t,e,n){return e==91?t.append(new fn(Mo,n,n+1,1)):-1},Image(t,e,n){return e==33&&t.char(n+1)==91?t.append(new fn(yg,n,n+2,1)):-1},LinkEnd(t,e,n){if(e!=93)return-1;for(let a=t.parts.length-1;a>=0;a--){let r=t.parts[a];if(r instanceof fn&&(r.type==Mo||r.type==yg)){if(!r.side||t.skipSpace(r.to)==n&&!/[(\[]/.test(t.slice(n+1,n+2)))return t.parts[a]=null,-1;let i=t.takeContent(a),o=t.parts[a]=HV(t,i,r.type==Mo?M.Link:M.Image,r.from,n+1);if(r.type==Mo)for(let s=0;s<a;s++){let c=t.parts[s];c instanceof fn&&c.type==Mo&&(c.side=0)}return o.to}}return-1}};function HV(t,e,n,a,r){let{text:i}=t,o=t.char(r),s=r;if(e.unshift(_e(M.LinkMark,a,a+(n==M.Image?2:1))),e.push(_e(M.LinkMark,r-1,r)),o==40){let c=t.skipSpace(r+1),A=l9(i,c-t.offset,t.offset),d;A&&(c=t.skipSpace(A.to),c!=A.to&&(d=A9(i,c-t.offset,t.offset),d&&(c=t.skipSpace(d.to)))),t.char(c)==41&&(e.push(_e(M.LinkMark,r,r+1)),s=c+1,A&&e.push(A),d&&e.push(d),e.push(_e(M.LinkMark,c,s)))}else if(o==91){let c=d9(i,r-t.offset,t.offset,!1);c&&(e.push(c),s=c.to)}return _e(n,a,s,e)}function l9(t,e,n){if(t.charCodeAt(e)==60){for(let r=e+1;r<t.length;r++){let i=t.charCodeAt(r);if(i==62)return _e(M.URL,e+n,r+1+n);if(i==60||i==10)return!1}return null}else{let r=0,i=e;for(let o=!1;i<t.length;i++){let s=t.charCodeAt(i);if(xa(s))break;if(o)o=!1;else if(s==40)r++;else if(s==41){if(!r)break;r--}else s==92&&(o=!0)}return i>e?_e(M.URL,e+n,i+n):i==t.length?null:!1}}function A9(t,e,n){let a=t.charCodeAt(e);if(a!=39&&a!=34&&a!=40)return!1;let r=a==40?41:a;for(let i=e+1,o=!1;i<t.length;i++){let s=t.charCodeAt(i);if(o)o=!1;else{if(s==r)return _e(M.LinkTitle,e+n,i+1+n);s==92&&(o=!0)}}return null}function d9(t,e,n,a){for(let r=!1,i=e+1,o=Math.min(t.length,i+999);i<o;i++){let s=t.charCodeAt(i);if(r)r=!1;else{if(s==93)return a?!1:_e(M.LinkLabel,e+n,i+1+n);if(a&&!xa(s)&&(a=!1),s==91)return!1;s==92&&(r=!0)}}return null}var MA=class{constructor(e,n,a){this.parser=e,this.text=n,this.offset=a,this.parts=[]}char(e){return e>=this.end?-1:this.text.charCodeAt(e-this.offset)}get end(){return this.offset+this.text.length}slice(e,n){return this.text.slice(e-this.offset,n-this.offset)}append(e){return this.parts.push(e),e.to}addDelimiter(e,n,a,r,i){return this.append(new fn(e,n,a,(r?1:0)|(i?2:0)))}get hasOpenLink(){for(let e=this.parts.length-1;e>=0;e--){let n=this.parts[e];if(n instanceof fn&&(n.type==Mo||n.type==yg))return!0}return!1}addElement(e){return this.append(e)}resolveMarkers(e){for(let a=e;a<this.parts.length;a++){let r=this.parts[a];if(!(r instanceof fn&&r.type.resolve&&r.side&2))continue;let i=r.type==s9||r.type==c9,o=r.to-r.from,s,c=a-1;for(;c>=e;c--){let h=this.parts[c];if(h instanceof fn&&h.side&1&&h.type==r.type&&!(i&&(r.side&1||h.side&2)&&(h.to-h.from+o)%3==0&&((h.to-h.from)%3||o%3))){s=h;break}}if(!s)continue;let A=r.type.resolve,d=[],u=s.from,p=r.to;if(i){let h=Math.min(2,s.to-s.from,o);u=s.to-h,p=r.from+h,A=h==1?"Emphasis":"StrongEmphasis"}s.type.mark&&d.push(this.elt(s.type.mark,u,s.to));for(let h=c+1;h<a;h++)this.parts[h]instanceof To&&d.push(this.parts[h]),this.parts[h]=null;r.type.mark&&d.push(this.elt(r.type.mark,r.from,p));let m=this.elt(A,u,p,d);this.parts[c]=i&&s.from!=u?new fn(s.type,s.from,u,s.side):null,(this.parts[a]=i&&r.to!=p?new fn(r.type,p,r.to,r.side):null)?this.parts.splice(a,0,m):this.parts[a]=m}let n=[];for(let a=e;a<this.parts.length;a++){let r=this.parts[a];r instanceof To&&n.push(r)}return n}findOpeningDelimiter(e){for(let n=this.parts.length-1;n>=0;n--){let a=this.parts[n];if(a instanceof fn&&a.type==e&&a.side&1)return n}return null}takeContent(e){let n=this.resolveMarkers(e);return this.parts.length=e,n}getDelimiterAt(e){let n=this.parts[e];return n instanceof fn?n:null}skipSpace(e){return $A(this.text,e-this.offset)+this.offset}elt(e,n,a,r){return typeof e=="string"?_e(this.parser.getNodeType(e),n,a,r):new hg(e,n)}};MA.linkStart=Mo;MA.imageStart=yg;function eB(t,e){if(!e.length)return t;if(!t.length)return e;let n=t.slice(),a=0;for(let r of e){for(;a<n.length&&n[a].to<r.to;)a++;if(a<n.length&&n[a].from<r.from){let i=n[a];i instanceof To&&(n[a]=new To(i.type,i.from,i.to,eB(i.children,[r])))}else n.splice(a++,0,r)}return n}var ZV=[M.CodeBlock,M.ListItem,M.OrderedList,M.BulletList],tB=class{constructor(e,n){this.fragments=e,this.input=n,this.i=0,this.fragment=null,this.fragmentEnd=-1,this.cursor=null,e.length&&(this.fragment=e[this.i++])}nextFragment(){this.fragment=this.i<this.fragments.length?this.fragments[this.i++]:null,this.cursor=null,this.fragmentEnd=-1}moveTo(e,n){for(;this.fragment&&this.fragment.to<=e;)this.nextFragment();if(!this.fragment||this.fragment.from>(e?e-1:0))return!1;if(this.fragmentEnd<0){let i=this.fragment.to;for(;i>0&&this.input.read(i-1,i)!=` +`;)i--;this.fragmentEnd=i?i-1:0}let a=this.cursor;a||(a=this.cursor=this.fragment.tree.cursor(),a.firstChild());let r=e+this.fragment.offset;for(;a.to<=r;)if(!a.parent())return!1;for(;;){if(a.from>=r)return this.fragment.from<=n;if(!a.childAfter(r))return!1}}matches(e){let n=this.cursor.tree;return n&&n.prop(ae.contextHash)==e}takeNodes(e){let n=this.cursor,a=this.fragment.offset,r=this.fragmentEnd-(this.fragment.openEnd?1:0),i=e.absoluteLineStart,o=i,s=e.block.children.length,c=o,A=s;for(;;){if(n.to-a>r){if(n.type.isAnonymous&&n.firstChild())continue;break}let d=u9(n.from-a,e.ranges);if(n.to-a<=e.ranges[e.rangeI].to)e.addNode(n.tree,d);else{let u=new ve(e.parser.nodeSet.types[M.Paragraph],[],[],0,e.block.hashProp);e.reusePlaceholders.set(u,n.tree),e.addNode(u,d)}if(n.type.is("Block")&&(ZV.indexOf(n.type.id)<0?(o=n.to-a,s=e.block.children.length):(o=c,s=A,c=n.to-a,A=e.block.children.length)),!n.nextSibling())break}for(;e.block.children.length>s;)e.block.children.pop(),e.block.positions.pop();return o-i}};function u9(t,e){let n=t;for(let a=1;a<e.length;a++){let r=e[a-1].to,i=e[a].from;r<t&&(n-=i-r)}return n}var YV=Vn({"Blockquote/...":B.quote,HorizontalRule:B.contentSeparator,"ATXHeading1/... SetextHeading1/...":B.heading1,"ATXHeading2/... SetextHeading2/...":B.heading2,"ATXHeading3/...":B.heading3,"ATXHeading4/...":B.heading4,"ATXHeading5/...":B.heading5,"ATXHeading6/...":B.heading6,"Comment CommentBlock":B.comment,Escape:B.escape,Entity:B.character,"Emphasis/...":B.emphasis,"StrongEmphasis/...":B.strong,"Link/... Image/...":B.link,"OrderedList/... BulletList/...":B.list,"BlockQuote/...":B.quote,"InlineCode CodeText":B.monospace,"URL Autolink":B.url,"HeaderMark HardBreak QuoteMark ListMark LinkMark EmphasisMark CodeMark":B.processingInstruction,"CodeInfo LinkLabel":B.labelName,LinkTitle:B.string,Paragraph:B.content}),p9=new jA(new Ni(o9).extend(YV),Object.keys(mg).map(t=>mg[t]),Object.keys(mg).map(t=>r9[t]),Object.keys(mg),zV,WO,Object.keys(U_).map(t=>U_[t]),Object.keys(U_),[]);function WV(t,e,n){let a=[];for(let r=t.firstChild,i=e;;r=r.nextSibling){let o=r?r.from:n;if(o>i&&a.push({from:i,to:o}),!r)break;i=r.to}return a}function m9(t){let{codeParser:e,htmlParser:n}=t;return{wrap:xm((r,i)=>{let o=r.type.id;if(e&&(o==M.CodeBlock||o==M.FencedCode)){let s="";if(o==M.FencedCode){let A=r.node.getChild(M.CodeInfo);A&&(s=i.read(A.from,A.to))}let c=e(s);if(c)return{parser:c,overlay:A=>A.type.id==M.CodeText,bracketed:o==M.FencedCode}}else if(n&&(o==M.HTMLBlock||o==M.HTMLTag||o==M.CommentBlock))return{parser:n,overlay:WV(r.node,r.from,r.to)};return null})}}var KV={resolve:"Strikethrough",mark:"StrikethroughMark"},JV={defineNodes:[{name:"Strikethrough",style:{"Strikethrough/...":B.strikethrough}},{name:"StrikethroughMark",style:B.processingInstruction}],parseInline:[{name:"Strikethrough",parse(t,e,n){if(e!=126||t.char(n+1)!=126||t.char(n+2)==126)return-1;let a=t.slice(n-1,n),r=t.slice(n+2,n+3),i=/\s|^$/.test(a),o=/\s|^$/.test(r),s=PA.test(a),c=PA.test(r);return t.addDelimiter(KV,n,n+2,!o&&(!c||i||s),!i&&(!s||o||c))},after:"Emphasis"}]};function RA(t,e,n=0,a,r=0){let i=0,o=!0,s=-1,c=-1,A=!1,d=()=>{a.push(t.elt("TableCell",r+s,r+c,t.parser.parseInline(e.slice(s,c),r+s)))};for(let u=n;u<e.length;u++){let p=e.charCodeAt(u);p==124&&!A?((!o||s>-1)&&i++,o=!1,a&&(s>-1&&d(),a.push(t.elt("TableDelimiter",u+r,u+r+1))),s=c=-1):(A||p!=32&&p!=9)&&(s<0&&(s=u),c=u+1),A=!A&&p==92}return s>-1&&(i++,a&&d()),i}function qO(t,e){for(let n=e;n<t.length;n++){let a=t.charCodeAt(n);if(a==124)return!0;a==92&&n++}return!1}var g9=/^\|?(\s*:?-+:?\s*\|)+(\s*:?-+:?\s*)?$/,wg=class{constructor(){this.rows=null}nextLine(e,n,a){if(this.rows==null){this.rows=!1;let r;if((n.next==45||n.next==58||n.next==124)&&g9.test(r=n.text.slice(n.pos))){let i=[];RA(e,a.content,0,i,a.start)==RA(e,r,n.pos)&&(this.rows=[e.elt("TableHeader",a.start,a.start+a.content.length,i),e.elt("TableDelimiter",e.lineStart+n.pos,e.lineStart+n.text.length)])}}else if(this.rows){let r=[];RA(e,n.text,n.pos,r,e.lineStart),this.rows.push(e.elt("TableRow",e.lineStart+n.pos,e.lineStart+n.text.length,r))}return!1}finish(e,n){return this.rows?(e.addLeafElement(n,e.elt("Table",n.start,n.start+n.content.length,this.rows)),!0):!1}},VV={defineNodes:[{name:"Table",block:!0},{name:"TableHeader",style:{"TableHeader/...":B.heading}},"TableRow",{name:"TableCell",style:B.content},{name:"TableDelimiter",style:B.processingInstruction}],parseBlock:[{name:"Table",leaf(t,e){return qO(e.content,0)?new wg:null},endLeaf(t,e,n){if(n.parsers.some(r=>r instanceof wg)||!qO(e.text,e.basePos))return!1;let a=t.peekLine();return g9.test(a)&&RA(t,e.text,e.basePos)==RA(t,a,e.basePos)},before:"SetextHeading"}]},nB=class{nextLine(){return!1}finish(e,n){return e.addLeafElement(n,e.elt("Task",n.start,n.start+n.content.length,[e.elt("TaskMarker",n.start,n.start+3),...e.parser.parseInline(n.content.slice(3),n.start+3)])),!0}},XV={defineNodes:[{name:"Task",block:!0,style:B.list},{name:"TaskMarker",style:B.atom}],parseBlock:[{name:"TaskList",leaf(t,e){return/^\[[ xX]\][ \t]/.test(e.content)&&t.parentType().name=="ListItem"?new nB:null},after:"SetextHeading"}]},GO=/(www\.)|(https?:\/\/)|([\w.+-]{1,100}@)|(mailto:|xmpp:)/gy,zO=/[\w-]+(\.[\w-]+)+(\/[^\s<]*)?/gy,eX=/[\w-]+\.[\w-]+($|\/)/,UO=/[\w.+-]+@[\w-]+(\.[\w.-]+)+/gy,HO=/\/[a-zA-Z\d@.]+/gy;function ZO(t,e,n,a){let r=0;for(let i=e;i<n;i++)t[i]==a&&r++;return r}function tX(t,e){zO.lastIndex=e;let n=zO.exec(t);if(!n||eX.exec(n[0])[0].indexOf("_")>-1)return-1;let a=e+n[0].length;for(;;){let r=t[a-1],i;if(/[?!.,:*_~]/.test(r)||r==")"&&ZO(t,e,a,")")>ZO(t,e,a,"("))a--;else if(r==";"&&(i=/&(?:#\d+|#x[a-f\d]+|\w+);$/.exec(t.slice(e,a))))a=e+i.index;else break}return a}function YO(t,e){UO.lastIndex=e;let n=UO.exec(t);if(!n)return-1;let a=n[0][n[0].length-1];return a=="_"||a=="-"?-1:e+n[0].length-(a=="."?1:0)}var nX={parseInline:[{name:"Autolink",parse(t,e,n){let a=n-t.offset;if(a&&/\w/.test(t.text[a-1]))return-1;GO.lastIndex=a;let r=GO.exec(t.text),i=-1;if(!r)return-1;if(r[1]||r[2]){if(i=tX(t.text,a+r[0].length),i>-1&&t.hasOpenLink){let o=/([^\[\]]|\[[^\]]*\])*/.exec(t.text.slice(a,i));i=a+o[0].length}}else r[3]?i=YO(t.text,a):(i=YO(t.text,a+r[0].length),i>-1&&r[0]=="xmpp:"&&(HO.lastIndex=i,r=HO.exec(t.text),r&&(i=r.index+r[0].length)));return i<0?-1:(t.addElement(t.elt("URL",n,i+t.offset)),i+t.offset)}}]},f9=[VV,XV,JV,nX];function b9(t,e,n){return(a,r,i)=>{if(r!=t||a.char(i+1)==t)return-1;let o=[a.elt(n,i,i+1)];for(let s=i+1;s<a.end;s++){let c=a.char(s);if(c==t)return a.addElement(a.elt(e,i,s+1,o.concat(a.elt(n,s,s+1))));if(c==92&&o.push(a.elt("Escape",s,s+++2)),xa(c))break}return-1}}var h9={defineNodes:[{name:"Superscript",style:B.special(B.content)},{name:"SuperscriptMark",style:B.processingInstruction}],parseInline:[{name:"Superscript",parse:b9(94,"Superscript","SuperscriptMark")}]},y9={defineNodes:[{name:"Subscript",style:B.special(B.content)},{name:"SubscriptMark",style:B.processingInstruction}],parseInline:[{name:"Subscript",parse:b9(126,"Subscript","SubscriptMark")}]},w9={defineNodes:[{name:"Emoji",style:B.character}],parseInline:[{name:"Emoji",parse(t,e,n){let a;return e!=58||!(a=/^[a-zA-Z_0-9]+:/.exec(t.slice(n+1,t.end)))?-1:t.addElement(t.elt("Emoji",n,n+1+a[0].length))}}]};var _9=gA({commentTokens:{block:{open:"<!--",close:"-->"}}}),B9=new ae,x9=p9.configure({props:[Ca.add(t=>!t.is("Block")||t.is("Document")||cB(t)!=null||aX(t)?void 0:(e,n)=>({from:n.doc.lineAt(e.from).to,to:e.to})),B9.add(cB),Ha.add({Document:()=>null}),Pi.add({Document:_9})]});function cB(t){let e=/^(?:ATX|Setext)Heading(\d)$/.exec(t.name);return e?+e[1]:void 0}function aX(t){return t.name=="OrderedList"||t.name=="BulletList"}function rX(t,e){let n=t;for(;;){let a=n.nextSibling,r;if(!a||(r=cB(a.type))!=null&&r<=e)break;n=a}return n.to}var iX=xC.of((t,e,n)=>{for(let a=Ee(t).resolveInner(n,-1);a&&!(a.from<e);a=a.parent){let r=a.type.prop(B9);if(r==null)continue;let i=rX(a,r);if(i>n)return{from:n,to:i}}return null});function lB(t){return new mn(_9,t,[],"markdown")}var oX=lB(x9),sX=x9.configure([f9,y9,h9,w9,{props:[Ca.add({Table:(t,e)=>({from:e.doc.lineAt(t.from).to,to:t.to})})]}]),kg=lB(sX);function cX(t,e){return n=>{if(n&&t){let a=null;if(n=/\S*/.exec(n)[0],typeof t=="function"?a=t(n):a=mA.matchLanguageName(t,n,!0),a instanceof mA)return a.support?a.support.language.parser:uA.getSkippingParser(a.load());if(a)return a.parser}return e?e.parser:null}}var TA=class{constructor(e,n,a,r,i,o,s){this.node=e,this.from=n,this.to=a,this.spaceBefore=r,this.spaceAfter=i,this.type=o,this.item=s}blank(e,n=!0){let a=this.spaceBefore+(this.node.name=="Blockquote"?">":"");if(e!=null){for(;a.length<e;)a+=" ";return a}else{for(let r=this.to-this.from-a.length-this.spaceAfter.length;r>0;r--)a+=" ";return a+(n?this.spaceAfter:"")}}marker(e,n){let a=this.node.name=="OrderedList"?String(+E9(this.item,e)[2]+n):"";return this.spaceBefore+a+this.type+this.spaceAfter}};function v9(t,e){let n=[],a=[];for(let r=t;r;r=r.parent){if(r.name=="FencedCode")return a;(r.name=="ListItem"||r.name=="Blockquote")&&n.push(r)}for(let r=n.length-1;r>=0;r--){let i=n[r],o,s=e.lineAt(i.from),c=i.from-s.from;if(i.name=="Blockquote"&&(o=/^ *>( ?)/.exec(s.text.slice(c))))a.push(new TA(i,c,c+o[0].length,"",o[1],">",null));else if(i.name=="ListItem"&&i.parent.name=="OrderedList"&&(o=/^( *)\d+([.)])( *)/.exec(s.text.slice(c)))){let A=o[3],d=o[0].length;A.length>=4&&(A=A.slice(0,A.length-4),d-=4),a.push(new TA(i.parent,c,c+d,o[1],A,o[2],i))}else if(i.name=="ListItem"&&i.parent.name=="BulletList"&&(o=/^( *)([-+*])( {1,4}\[[ xX]\])?( +)/.exec(s.text.slice(c)))){let A=o[4],d=o[0].length;A.length>4&&(A=A.slice(0,A.length-4),d-=4);let u=o[2];o[3]&&(u+=o[3].replace(/[xX]/," ")),a.push(new TA(i.parent,c,c+d,o[1],A,u,i))}}return a}function E9(t,e){return/^(\s*)(\d+)(?=[.)])/.exec(e.sliceString(t.from,t.from+10))}function oB(t,e,n,a=0){for(let r=-1,i=t;;){if(i.name=="ListItem"){let s=E9(i,e),c=+s[2];if(r>=0){if(c!=r+1)return;n.push({from:i.from+s[1].length,to:i.from+s[0].length,insert:String(r+2+a)})}r=c}let o=i.nextSibling;if(!o)break;i=o}}function AB(t,e){let n=/^[ \t]*/.exec(t)[0].length;if(!n||e.facet(Ti)!=" ")return t;let a=dn(t,4,n),r="";for(let i=a;i>0;)i>=4?(r+=" ",i-=4):(r+=" ",i--);return r+t.slice(n)}var lX=(t={})=>({state:e,dispatch:n})=>{let a=Ee(e),{doc:r}=e,i=null,o=e.changeByRange(s=>{if(!s.empty||!kg.isActiveAt(e,s.from,-1)&&!kg.isActiveAt(e,s.from,1))return i={range:s};let c=s.from,A=r.lineAt(c),d=v9(a.resolveInner(c,-1),r);for(;d.length&&d[d.length-1].from>c-A.from;)d.pop();if(!d.length)return i={range:s};let u=d[d.length-1];if(u.to-u.spaceAfter.length>c-A.from)return i={range:s};let p=c>=u.to-u.spaceAfter.length&&!/\S/.test(A.text.slice(u.to));if(u.item&&p){let b=u.node.firstChild,y=u.node.getChild("ListItem","ListItem");if(b.to>=c||y&&y.to<c||A.from>0&&!/[^\s>]/.test(r.lineAt(A.from-1).text)||t.nonTightLists===!1){let k=d.length>1?d[d.length-2]:null,E,Q="";k&&k.item?(E=A.from+k.from,Q=k.marker(r,1)):E=A.from+(k?k.to:0);let D=[{from:E,to:c,insert:Q}];return u.node.name=="OrderedList"&&oB(u.item,r,D,-2),k&&k.node.name=="OrderedList"&&oB(k.item,r,D),{range:L.cursor(E+Q.length),changes:D}}else{let k=C9(d,e,A);return{range:L.cursor(c+k.length+1),changes:{from:A.from,insert:k+e.lineBreak}}}}if(u.node.name=="Blockquote"&&p&&A.from){let b=r.lineAt(A.from-1),y=/>\s*$/.exec(b.text);if(y&&y.index==u.from){let k=e.changes([{from:b.from+y.index,to:b.to},{from:A.from+u.from,to:A.to}]);return{range:s.map(k),changes:k}}}let m=[];u.node.name=="OrderedList"&&oB(u.item,r,m);let f=u.item&&u.item.from<A.from,h="";if(!f||/^[\s\d.)\-+*>]*/.exec(A.text)[0].length>=u.to)for(let b=0,y=d.length-1;b<=y;b++)h+=b==y&&!f?d[b].marker(r,1):d[b].blank(b<y?dn(A.text,4,d[b+1].from)-h.length:null);let w=c;for(;w>A.from&&/\s/.test(A.text.charAt(w-A.from-1));)w--;return h=AB(h,e),dX(u.node,e.doc)&&(h=C9(d,e,A)+e.lineBreak+h),m.push({from:w,to:c,insert:e.lineBreak+h}),{range:L.cursor(w+h.length+1),changes:m}});return i?!1:(n(e.update(o,{scrollIntoView:!0,userEvent:"input"})),!0)},AX=lX();function k9(t){return t.name=="QuoteMark"||t.name=="ListMark"}function dX(t,e){if(t.name!="OrderedList"&&t.name!="BulletList")return!1;let n=t.firstChild,a=t.getChild("ListItem","ListItem");if(!a)return!1;let r=e.lineAt(n.to),i=e.lineAt(a.from),o=/^[\s>]*$/.test(r.text);return r.number+(o?0:1)<i.number}function C9(t,e,n){let a="";for(let r=0,i=t.length-2;r<=i;r++)a+=t[r].blank(r<i?dn(n.text,4,t[r+1].from)-a.length:null,r<i);return AB(a,e)}function uX(t,e){let n=t.resolveInner(e,-1),a=e;k9(n)&&(a=n.from,n=n.parent);for(let r;r=n.childBefore(a);)if(k9(r))a=r.from;else if(r.name=="OrderedList"||r.name=="BulletList")n=r.lastChild,a=n.to;else break;return n}var pX=({state:t,dispatch:e})=>{let n=Ee(t),a=null,r=t.changeByRange(i=>{let o=i.from,{doc:s}=t;if(i.empty&&kg.isActiveAt(t,i.from)){let c=s.lineAt(o),A=v9(uX(n,o),s);if(A.length){let d=A[A.length-1],u=d.to-d.spaceAfter.length+(d.spaceAfter?1:0);if(o-c.from>u&&!/\S/.test(c.text.slice(u,o-c.from)))return{range:L.cursor(c.from+u),changes:{from:c.from+u,to:o}};if(o-c.from==u&&(!d.item||c.from<=d.item.from||!/\S/.test(c.text.slice(0,d.to)))){let p=c.from+d.from;if(d.item&&d.node.from<d.item.from&&/\S/.test(c.text.slice(d.from,d.to))){let m=d.blank(dn(c.text,4,d.to)-dn(c.text,4,d.from));return p==c.from&&(m=AB(m,t)),{range:L.cursor(p+m.length),changes:{from:p,to:c.from+d.to,insert:m}}}if(p<o)return{range:L.cursor(p),changes:{from:p,to:o}}}}}return a={range:i}});return a?!1:(e(t.update(r,{scrollIntoView:!0,userEvent:"delete"})),!0)},mX=[{key:"Enter",run:AX},{key:"Backspace",run:pX}],Q9=pg({matchClosingTags:!1});function I9(t={}){let{codeLanguages:e,defaultCodeLanguage:n,addKeymap:a=!0,base:{parser:r}=oX,completeHTMLTags:i=!0,pasteURLAsLink:o=!0,htmlTagLanguage:s=Q9}=t;if(!(r instanceof jA))throw new RangeError("Base parser provided to `markdown` should be a Markdown parser");let c=t.extensions?[t.extensions]:[],A=[s.support,iX],d;o&&A.push(hX),n instanceof Xn?(A.push(n.support),d=n.language):n&&(d=n);let u=e||d?cX(e,d):void 0;c.push(m9({codeParser:u,htmlParser:s.language.parser})),a&&A.push(In.high(Si.of(mX)));let p=lB(r.configure(c));return i&&A.push(p.data.of({autocomplete:gX})),new Xn(p,A)}function gX(t){let{state:e,pos:n}=t,a=/<[:\-\.\w\u00b7-\uffff]*$/.exec(e.sliceDoc(n-25,n));if(!a)return null;let r=Ee(e).resolveInner(n,-1);for(;r&&!r.type.isTop;){if(r.name=="CodeBlock"||r.name=="FencedCode"||r.name=="ProcessingInstructionBlock"||r.name=="CommentBlock"||r.name=="Link"||r.name=="Image")return null;r=r.parent}return{from:n-a[0].length,to:n,options:fX(),validFor:/^<[:\-\.\w\u00b7-\uffff]*$/}}var sB=null;function fX(){if(sB)return sB;let t=SO(new mc(Fe.create({extensions:Q9}),0,!0));return sB=t?t.options:[]}var bX=/code|horizontalrule|html|link|comment|processing|escape|entity|image|mark|url/i,hX=T.domEventHandlers({paste:(t,e)=>{var n;let{main:a}=e.state.selection;if(a.empty)return!1;let r=(n=t.clipboardData)===null||n===void 0?void 0:n.getData("text/plain");if(!r||!/^(https?:\/\/|mailto:|xmpp:|www\.)/.test(r)||(/^www\./.test(r)&&(r="https://"+r),!kg.isActiveAt(e.state,a.from,1)))return!1;let i=Ee(e.state),o=!1;return i.iterate({from:a.from,to:a.to,enter:s=>{(s.from>a.from||bX.test(s.name))&&(o=!0)},leave:s=>{s.to<a.to&&(o=!0)}}),o?!1:(e.dispatch({changes:[{from:a.from,insert:"["},{from:a.to,insert:`](${r})`}],userEvent:"input.paste",scrollIntoView:!0}),!0)}});var yX="#e5c07b",D9="#e06c75",wX="#56b6c2",kX="#ffffff",Cg="#abb2bf",uB="#7d8799",CX="#61afef",_X="#98c379",F9="#d19a66",BX="#c678dd",xX="#21252b",S9="#2c313a",O9="#282c34",dB="#353a42",vX="#3E4451",N9="#528bff";var EX=T.theme({"&":{color:Cg,backgroundColor:O9},".cm-content":{caretColor:N9},".cm-cursor, .cm-dropCursor":{borderLeftColor:N9},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:vX},".cm-panels":{backgroundColor:xX,color:Cg},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:O9,color:uB,border:"none"},".cm-activeLineGutter":{backgroundColor:S9},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:dB},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:dB,borderBottomColor:dB},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:S9,color:Cg}}},{dark:!0}),QX=sc.define([{tag:B.keyword,color:BX},{tag:[B.name,B.deleted,B.character,B.propertyName,B.macroName],color:D9},{tag:[B.function(B.variableName),B.labelName],color:CX},{tag:[B.color,B.constant(B.name),B.standard(B.name)],color:F9},{tag:[B.definition(B.name),B.separator],color:Cg},{tag:[B.typeName,B.className,B.number,B.changed,B.annotation,B.modifier,B.self,B.namespace],color:yX},{tag:[B.operator,B.operatorKeyword,B.url,B.escape,B.regexp,B.link,B.special(B.string)],color:wX},{tag:[B.meta,B.comment],color:uB},{tag:B.strong,fontWeight:"bold"},{tag:B.emphasis,fontStyle:"italic"},{tag:B.strikethrough,textDecoration:"line-through"},{tag:B.link,color:uB,textDecoration:"underline"},{tag:B.heading,fontWeight:"bold",color:D9},{tag:[B.atom,B.bool,B.special(B.variableName)],color:F9},{tag:[B.processingInstruction,B.string,B.inserted],color:_X},{tag:B.invalid,color:kX}]),L9=[EX,Lm(QX)];function gB(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var Go=gB();function T9(t){Go=t}var q9=/[&<>"']/,IX=new RegExp(q9.source,"g"),G9=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,DX=new RegExp(G9.source,"g"),FX={"&":"&","<":"<",">":">",'"':""","'":"'"},$9=t=>FX[t];function ra(t,e){if(e){if(q9.test(t))return t.replace(IX,$9)}else if(G9.test(t))return t.replace(DX,$9);return t}var SX=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function OX(t){return t.replace(SX,(e,n)=>(n=n.toLowerCase(),n==="colon"?":":n.charAt(0)==="#"?n.charAt(1)==="x"?String.fromCharCode(parseInt(n.substring(2),16)):String.fromCharCode(+n.substring(1)):""))}var NX=/(^|[^\[])\^/g;function Me(t,e){let n=typeof t=="string"?t:t.source;e=e||"";let a={replace:(r,i)=>{let o=typeof i=="string"?i:i.source;return o=o.replace(NX,"$1"),n=n.replace(r,o),a},getRegex:()=>new RegExp(n,e)};return a}function R9(t){try{t=encodeURI(t).replace(/%25/g,"%")}catch{return null}return t}var GA={exec:()=>null};function j9(t,e){let n=t.replace(/\|/g,(i,o,s)=>{let c=!1,A=o;for(;--A>=0&&s[A]==="\\";)c=!c;return c?"|":" |"}),a=n.split(/ \|/),r=0;if(a[0].trim()||a.shift(),a.length>0&&!a[a.length-1].trim()&&a.pop(),e)if(a.length>e)a.splice(e);else for(;a.length<e;)a.push("");for(;r<a.length;r++)a[r]=a[r].trim().replace(/\\\|/g,"|");return a}function _g(t,e,n){let a=t.length;if(a===0)return"";let r=0;for(;r<a;){let i=t.charAt(a-r-1);if(i===e&&!n)r++;else if(i!==e&&n)r++;else break}return t.slice(0,a-r)}function LX(t,e){if(t.indexOf(e[1])===-1)return-1;let n=0;for(let a=0;a<t.length;a++)if(t[a]==="\\")a++;else if(t[a]===e[0])n++;else if(t[a]===e[1]&&(n--,n<0))return a;return-1}function P9(t,e,n,a){let r=e.href,i=e.title?ra(e.title):null,o=t[1].replace(/\\([\[\]])/g,"$1");if(t[0].charAt(0)!=="!"){a.state.inLink=!0;let s={type:"link",raw:n,href:r,title:i,text:o,tokens:a.inlineTokens(o)};return a.state.inLink=!1,s}return{type:"image",raw:n,href:r,title:i,text:ra(o)}}function $X(t,e){let n=t.match(/^(\s+)(?:```)/);if(n===null)return e;let a=n[1];return e.split(` +`).map(r=>{let i=r.match(/^\s+/);if(i===null)return r;let[o]=i;return o.length>=a.length?r.slice(a.length):r}).join(` +`)}var Bc=class{options;rules;lexer;constructor(e){this.options=e||Go}space(e){let n=this.rules.block.newline.exec(e);if(n&&n[0].length>0)return{type:"space",raw:n[0]}}code(e){let n=this.rules.block.code.exec(e);if(n){let a=n[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:n[0],codeBlockStyle:"indented",text:this.options.pedantic?a:_g(a,` +`)}}}fences(e){let n=this.rules.block.fences.exec(e);if(n){let a=n[0],r=$X(a,n[3]||"");return{type:"code",raw:a,lang:n[2]?n[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):n[2],text:r}}}heading(e){let n=this.rules.block.heading.exec(e);if(n){let a=n[2].trim();if(/#$/.test(a)){let r=_g(a,"#");(this.options.pedantic||!r||/ $/.test(r))&&(a=r.trim())}return{type:"heading",raw:n[0],depth:n[1].length,text:a,tokens:this.lexer.inline(a)}}}hr(e){let n=this.rules.block.hr.exec(e);if(n)return{type:"hr",raw:n[0]}}blockquote(e){let n=this.rules.block.blockquote.exec(e);if(n){let a=n[0].replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` + $1`);a=_g(a.replace(/^ *>[ \t]?/gm,""),` +`);let r=this.lexer.state.top;this.lexer.state.top=!0;let i=this.lexer.blockTokens(a);return this.lexer.state.top=r,{type:"blockquote",raw:n[0],tokens:i,text:a}}}list(e){let n=this.rules.block.list.exec(e);if(n){let a=n[1].trim(),r=a.length>1,i={type:"list",raw:"",ordered:r,start:r?+a.slice(0,-1):"",loose:!1,items:[]};a=r?`\\d{1,9}\\${a.slice(-1)}`:`\\${a}`,this.options.pedantic&&(a=r?a:"[*+-]");let o=new RegExp(`^( {0,3}${a})((?:[ ][^\\n]*)?(?:\\n|$))`),s="",c="",A=!1;for(;e;){let d=!1;if(!(n=o.exec(e))||this.rules.block.hr.test(e))break;s=n[0],e=e.substring(s.length);let u=n[2].split(` +`,1)[0].replace(/^\t+/,b=>" ".repeat(3*b.length)),p=e.split(` +`,1)[0],m=0;this.options.pedantic?(m=2,c=u.trimStart()):(m=n[2].search(/[^ ]/),m=m>4?1:m,c=u.slice(m),m+=n[1].length);let f=!1;if(!u&&/^ *$/.test(p)&&(s+=p+` +`,e=e.substring(p.length+1),d=!0),!d){let b=new RegExp(`^ {0,${Math.min(3,m-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),y=new RegExp(`^ {0,${Math.min(3,m-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),k=new RegExp(`^ {0,${Math.min(3,m-1)}}(?:\`\`\`|~~~)`),E=new RegExp(`^ {0,${Math.min(3,m-1)}}#`);for(;e;){let Q=e.split(` +`,1)[0];if(p=Q,this.options.pedantic&&(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),k.test(p)||E.test(p)||b.test(p)||y.test(e))break;if(p.search(/[^ ]/)>=m||!p.trim())c+=` +`+p.slice(m);else{if(f||u.search(/[^ ]/)>=4||k.test(u)||E.test(u)||y.test(u))break;c+=` +`+p}!f&&!p.trim()&&(f=!0),s+=Q+` +`,e=e.substring(Q.length+1),u=p.slice(m)}}i.loose||(A?i.loose=!0:/\n *\n *$/.test(s)&&(A=!0));let h=null,w;this.options.gfm&&(h=/^\[[ xX]\] /.exec(c),h&&(w=h[0]!=="[ ] ",c=c.replace(/^\[[ xX]\] +/,""))),i.items.push({type:"list_item",raw:s,task:!!h,checked:w,loose:!1,text:c,tokens:[]}),i.raw+=s}i.items[i.items.length-1].raw=s.trimEnd(),i.items[i.items.length-1].text=c.trimEnd(),i.raw=i.raw.trimEnd();for(let d=0;d<i.items.length;d++)if(this.lexer.state.top=!1,i.items[d].tokens=this.lexer.blockTokens(i.items[d].text,[]),!i.loose){let u=i.items[d].tokens.filter(m=>m.type==="space"),p=u.length>0&&u.some(m=>/\n.*\n/.test(m.raw));i.loose=p}if(i.loose)for(let d=0;d<i.items.length;d++)i.items[d].loose=!0;return i}}html(e){let n=this.rules.block.html.exec(e);if(n)return{type:"html",block:!0,raw:n[0],pre:n[1]==="pre"||n[1]==="script"||n[1]==="style",text:n[0]}}def(e){let n=this.rules.block.def.exec(e);if(n){let a=n[1].toLowerCase().replace(/\s+/g," "),r=n[2]?n[2].replace(/^<(.*)>$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=n[3]?n[3].substring(1,n[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):n[3];return{type:"def",tag:a,raw:n[0],href:r,title:i}}}table(e){let n=this.rules.block.table.exec(e);if(!n||!/[:|]/.test(n[2]))return;let a=j9(n[1]),r=n[2].replace(/^\||\| *$/g,"").split("|"),i=n[3]&&n[3].trim()?n[3].replace(/\n[ \t]*$/,"").split(` +`):[],o={type:"table",raw:n[0],header:[],align:[],rows:[]};if(a.length===r.length){for(let s of r)/^ *-+: *$/.test(s)?o.align.push("right"):/^ *:-+: *$/.test(s)?o.align.push("center"):/^ *:-+ *$/.test(s)?o.align.push("left"):o.align.push(null);for(let s of a)o.header.push({text:s,tokens:this.lexer.inline(s)});for(let s of i)o.rows.push(j9(s,o.header.length).map(c=>({text:c,tokens:this.lexer.inline(c)})));return o}}lheading(e){let n=this.rules.block.lheading.exec(e);if(n)return{type:"heading",raw:n[0],depth:n[2].charAt(0)==="="?1:2,text:n[1],tokens:this.lexer.inline(n[1])}}paragraph(e){let n=this.rules.block.paragraph.exec(e);if(n){let a=n[1].charAt(n[1].length-1)===` +`?n[1].slice(0,-1):n[1];return{type:"paragraph",raw:n[0],text:a,tokens:this.lexer.inline(a)}}}text(e){let n=this.rules.block.text.exec(e);if(n)return{type:"text",raw:n[0],text:n[0],tokens:this.lexer.inline(n[0])}}escape(e){let n=this.rules.inline.escape.exec(e);if(n)return{type:"escape",raw:n[0],text:ra(n[1])}}tag(e){let n=this.rules.inline.tag.exec(e);if(n)return!this.lexer.state.inLink&&/^<a /i.test(n[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&/^<\/a>/i.test(n[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(n[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(n[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:n[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:n[0]}}link(e){let n=this.rules.inline.link.exec(e);if(n){let a=n[2].trim();if(!this.options.pedantic&&/^</.test(a)){if(!/>$/.test(a))return;let o=_g(a.slice(0,-1),"\\");if((a.length-o.length)%2===0)return}else{let o=LX(n[2],"()");if(o>-1){let c=(n[0].indexOf("!")===0?5:4)+n[1].length+o;n[2]=n[2].substring(0,o),n[0]=n[0].substring(0,c).trim(),n[3]=""}}let r=n[2],i="";if(this.options.pedantic){let o=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);o&&(r=o[1],i=o[3])}else i=n[3]?n[3].slice(1,-1):"";return r=r.trim(),/^</.test(r)&&(this.options.pedantic&&!/>$/.test(a)?r=r.slice(1):r=r.slice(1,-1)),P9(n,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},n[0],this.lexer)}}reflink(e,n){let a;if((a=this.rules.inline.reflink.exec(e))||(a=this.rules.inline.nolink.exec(e))){let r=(a[2]||a[1]).replace(/\s+/g," "),i=n[r.toLowerCase()];if(!i){let o=a[0].charAt(0);return{type:"text",raw:o,text:o}}return P9(a,i,a[0],this.lexer)}}emStrong(e,n,a=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r||r[3]&&a.match(/[\p{L}\p{N}]/u))return;if(!(r[1]||r[2]||"")||!a||this.rules.inline.punctuation.exec(a)){let o=[...r[0]].length-1,s,c,A=o,d=0,u=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(u.lastIndex=0,n=n.slice(-1*e.length+o);(r=u.exec(n))!=null;){if(s=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!s)continue;if(c=[...s].length,r[3]||r[4]){A+=c;continue}else if((r[5]||r[6])&&o%3&&!((o+c)%3)){d+=c;continue}if(A-=c,A>0)continue;c=Math.min(c,c+A+d);let p=[...r[0]][0].length,m=e.slice(0,o+r.index+p+c);if(Math.min(o,c)%2){let h=m.slice(1,-1);return{type:"em",raw:m,text:h,tokens:this.lexer.inlineTokens(h)}}let f=m.slice(2,-2);return{type:"strong",raw:m,text:f,tokens:this.lexer.inlineTokens(f)}}}}codespan(e){let n=this.rules.inline.code.exec(e);if(n){let a=n[2].replace(/\n/g," "),r=/[^ ]/.test(a),i=/^ /.test(a)&&/ $/.test(a);return r&&i&&(a=a.substring(1,a.length-1)),a=ra(a,!0),{type:"codespan",raw:n[0],text:a}}}br(e){let n=this.rules.inline.br.exec(e);if(n)return{type:"br",raw:n[0]}}del(e){let n=this.rules.inline.del.exec(e);if(n)return{type:"del",raw:n[0],text:n[2],tokens:this.lexer.inlineTokens(n[2])}}autolink(e){let n=this.rules.inline.autolink.exec(e);if(n){let a,r;return n[2]==="@"?(a=ra(n[1]),r="mailto:"+a):(a=ra(n[1]),r=a),{type:"link",raw:n[0],text:a,href:r,tokens:[{type:"text",raw:a,text:a}]}}}url(e){let n;if(n=this.rules.inline.url.exec(e)){let a,r;if(n[2]==="@")a=ra(n[0]),r="mailto:"+a;else{let i;do i=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])?.[0]??"";while(i!==n[0]);a=ra(n[0]),n[1]==="www."?r="http://"+n[0]:r=n[0]}return{type:"link",raw:n[0],text:a,href:r,tokens:[{type:"text",raw:a,text:a}]}}}inlineText(e){let n=this.rules.inline.text.exec(e);if(n){let a;return this.lexer.state.inRawBlock?a=n[0]:a=ra(n[0]),{type:"text",raw:n[0],text:a}}}},RX=/^(?: *(?:\n|$))+/,jX=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,PX=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,UA=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,MX=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,z9=/(?:[*+-]|\d{1,9}[.)])/,U9=Me(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,z9).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),fB=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,TX=/^[^\n]+/,bB=/(?!\s*\])(?:\\.|[^\[\]\\])+/,qX=Me(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",bB).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),GX=Me(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,z9).getRegex(),vg="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",hB=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,zX=Me("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",hB).replace("tag",vg).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),H9=Me(fB).replace("hr",UA).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",vg).getRegex(),UX=Me(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",H9).getRegex(),yB={blockquote:UX,code:jX,def:qX,fences:PX,heading:MX,hr:UA,html:zX,lheading:U9,list:GX,newline:RX,paragraph:H9,table:GA,text:TX},M9=Me("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",UA).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",vg).getRegex(),HX={...yB,table:M9,paragraph:Me(fB).replace("hr",UA).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",M9).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",vg).getRegex()},ZX={...yB,html:Me(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",hB).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:GA,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Me(fB).replace("hr",UA).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",U9).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Z9=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,YX=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Y9=/^( {2,}|\\)\n(?!\s*$)/,WX=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,HA="\\p{P}\\p{S}",KX=Me(/^((?![*_])[\spunctuation])/,"u").replace(/punctuation/g,HA).getRegex(),JX=/\[[^[\]]*?\]\([^\(\)]*?\)|`[^`]*?`|<[^<>]*?>/g,VX=Me(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,HA).getRegex(),XX=Me("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,HA).getRegex(),eee=Me("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,HA).getRegex(),tee=Me(/\\([punct])/,"gu").replace(/punct/g,HA).getRegex(),nee=Me(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),aee=Me(hB).replace("(?:-->|$)","-->").getRegex(),ree=Me("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",aee).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),xg=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,iee=Me(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",xg).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),W9=Me(/^!?\[(label)\]\[(ref)\]/).replace("label",xg).replace("ref",bB).getRegex(),K9=Me(/^!?\[(ref)\](?:\[\])?/).replace("ref",bB).getRegex(),oee=Me("reflink|nolink(?!\\()","g").replace("reflink",W9).replace("nolink",K9).getRegex(),wB={_backpedal:GA,anyPunctuation:tee,autolink:nee,blockSkip:JX,br:Y9,code:YX,del:GA,emStrongLDelim:VX,emStrongRDelimAst:XX,emStrongRDelimUnd:eee,escape:Z9,link:iee,nolink:K9,punctuation:KX,reflink:W9,reflinkSearch:oee,tag:ree,text:WX,url:GA},see={...wB,link:Me(/^!?\[(label)\]\((.*?)\)/).replace("label",xg).getRegex(),reflink:Me(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",xg).getRegex()},pB={...wB,escape:Me(Z9).replace("])","~|])").getRegex(),url:Me(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},cee={...pB,br:Me(Y9).replace("{2,}","*").getRegex(),text:Me(pB.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Bg={normal:yB,gfm:HX,pedantic:ZX},qA={normal:wB,gfm:pB,breaks:cee,pedantic:see},qr=class t{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||Go,this.options.tokenizer=this.options.tokenizer||new Bc,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let n={block:Bg.normal,inline:qA.normal};this.options.pedantic?(n.block=Bg.pedantic,n.inline=qA.pedantic):this.options.gfm&&(n.block=Bg.gfm,this.options.breaks?n.inline=qA.breaks:n.inline=qA.gfm),this.tokenizer.rules=n}static get rules(){return{block:Bg,inline:qA}}static lex(e,n){return new t(n).lex(e)}static lexInline(e,n){return new t(n).inlineTokens(e)}lex(e){e=e.replace(/\r\n|\r/g,` +`),this.blockTokens(e,this.tokens);for(let n=0;n<this.inlineQueue.length;n++){let a=this.inlineQueue[n];this.inlineTokens(a.src,a.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,n=[]){this.options.pedantic?e=e.replace(/\t/g," ").replace(/^ +$/gm,""):e=e.replace(/^( *)(\t+)/gm,(s,c,A)=>c+" ".repeat(A.length));let a,r,i,o;for(;e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(s=>(a=s.call({lexer:this},e,n))?(e=e.substring(a.raw.length),n.push(a),!0):!1))){if(a=this.tokenizer.space(e)){e=e.substring(a.raw.length),a.raw.length===1&&n.length>0?n[n.length-1].raw+=` +`:n.push(a);continue}if(a=this.tokenizer.code(e)){e=e.substring(a.raw.length),r=n[n.length-1],r&&(r.type==="paragraph"||r.type==="text")?(r.raw+=` +`+a.raw,r.text+=` +`+a.text,this.inlineQueue[this.inlineQueue.length-1].src=r.text):n.push(a);continue}if(a=this.tokenizer.fences(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.heading(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.hr(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.blockquote(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.list(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.html(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.def(e)){e=e.substring(a.raw.length),r=n[n.length-1],r&&(r.type==="paragraph"||r.type==="text")?(r.raw+=` +`+a.raw,r.text+=` +`+a.raw,this.inlineQueue[this.inlineQueue.length-1].src=r.text):this.tokens.links[a.tag]||(this.tokens.links[a.tag]={href:a.href,title:a.title});continue}if(a=this.tokenizer.table(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.lheading(e)){e=e.substring(a.raw.length),n.push(a);continue}if(i=e,this.options.extensions&&this.options.extensions.startBlock){let s=1/0,c=e.slice(1),A;this.options.extensions.startBlock.forEach(d=>{A=d.call({lexer:this},c),typeof A=="number"&&A>=0&&(s=Math.min(s,A))}),s<1/0&&s>=0&&(i=e.substring(0,s+1))}if(this.state.top&&(a=this.tokenizer.paragraph(i))){r=n[n.length-1],o&&r.type==="paragraph"?(r.raw+=` +`+a.raw,r.text+=` +`+a.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):n.push(a),o=i.length!==e.length,e=e.substring(a.raw.length);continue}if(a=this.tokenizer.text(e)){e=e.substring(a.raw.length),r=n[n.length-1],r&&r.type==="text"?(r.raw+=` +`+a.raw,r.text+=` +`+a.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):n.push(a);continue}if(e){let s="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(s);break}else throw new Error(s)}}return this.state.top=!0,n}inline(e,n=[]){return this.inlineQueue.push({src:e,tokens:n}),n}inlineTokens(e,n=[]){let a,r,i,o=e,s,c,A;if(this.tokens.links){let d=Object.keys(this.tokens.links);if(d.length>0)for(;(s=this.tokenizer.rules.inline.reflinkSearch.exec(o))!=null;)d.includes(s[0].slice(s[0].lastIndexOf("[")+1,-1))&&(o=o.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+o.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(s=this.tokenizer.rules.inline.blockSkip.exec(o))!=null;)o=o.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+o.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(s=this.tokenizer.rules.inline.anyPunctuation.exec(o))!=null;)o=o.slice(0,s.index)+"++"+o.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(c||(A=""),c=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(d=>(a=d.call({lexer:this},e,n))?(e=e.substring(a.raw.length),n.push(a),!0):!1))){if(a=this.tokenizer.escape(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.tag(e)){e=e.substring(a.raw.length),r=n[n.length-1],r&&a.type==="text"&&r.type==="text"?(r.raw+=a.raw,r.text+=a.text):n.push(a);continue}if(a=this.tokenizer.link(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(a.raw.length),r=n[n.length-1],r&&a.type==="text"&&r.type==="text"?(r.raw+=a.raw,r.text+=a.text):n.push(a);continue}if(a=this.tokenizer.emStrong(e,o,A)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.codespan(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.br(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.del(e)){e=e.substring(a.raw.length),n.push(a);continue}if(a=this.tokenizer.autolink(e)){e=e.substring(a.raw.length),n.push(a);continue}if(!this.state.inLink&&(a=this.tokenizer.url(e))){e=e.substring(a.raw.length),n.push(a);continue}if(i=e,this.options.extensions&&this.options.extensions.startInline){let d=1/0,u=e.slice(1),p;this.options.extensions.startInline.forEach(m=>{p=m.call({lexer:this},u),typeof p=="number"&&p>=0&&(d=Math.min(d,p))}),d<1/0&&d>=0&&(i=e.substring(0,d+1))}if(a=this.tokenizer.inlineText(i)){e=e.substring(a.raw.length),a.raw.slice(-1)!=="_"&&(A=a.raw.slice(-1)),c=!0,r=n[n.length-1],r&&r.type==="text"?(r.raw+=a.raw,r.text+=a.text):n.push(a);continue}if(e){let d="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(d);break}else throw new Error(d)}}return n}},Yi=class{options;constructor(e){this.options=e||Go}code(e,n,a){let r=(n||"").match(/^\S*/)?.[0];return e=e.replace(/\n$/,"")+` +`,r?'<pre><code class="language-'+ra(r)+'">'+(a?e:ra(e,!0))+`</code></pre> +`:"<pre><code>"+(a?e:ra(e,!0))+`</code></pre> +`}blockquote(e){return`<blockquote> +${e}</blockquote> +`}html(e,n){return e}heading(e,n,a){return`<h${n}>${e}</h${n}> +`}hr(){return`<hr> +`}list(e,n,a){let r=n?"ol":"ul",i=n&&a!==1?' start="'+a+'"':"";return"<"+r+i+`> +`+e+"</"+r+`> +`}listitem(e,n,a){return`<li>${e}</li> +`}checkbox(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph(e){return`<p>${e}</p> +`}table(e,n){return n&&(n=`<tbody>${n}</tbody>`),`<table> +<thead> +`+e+`</thead> +`+n+`</table> +`}tablerow(e){return`<tr> +${e}</tr> +`}tablecell(e,n){let a=n.header?"th":"td";return(n.align?`<${a} align="${n.align}">`:`<${a}>`)+e+`</${a}> +`}strong(e){return`<strong>${e}</strong>`}em(e){return`<em>${e}</em>`}codespan(e){return`<code>${e}</code>`}br(){return"<br>"}del(e){return`<del>${e}</del>`}link(e,n,a){let r=R9(e);if(r===null)return a;e=r;let i='<a href="'+e+'"';return n&&(i+=' title="'+n+'"'),i+=">"+a+"</a>",i}image(e,n,a){let r=R9(e);if(r===null)return a;e=r;let i=`<img src="${e}" alt="${a}"`;return n&&(i+=` title="${n}"`),i+=">",i}text(e){return e}},zA=class{strong(e){return e}em(e){return e}codespan(e){return e}del(e){return e}html(e){return e}text(e){return e}link(e,n,a){return""+a}image(e,n,a){return""+a}br(){return""}},Gr=class t{options;renderer;textRenderer;constructor(e){this.options=e||Go,this.options.renderer=this.options.renderer||new Yi,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new zA}static parse(e,n){return new t(n).parse(e)}static parseInline(e,n){return new t(n).parseInline(e)}parse(e,n=!0){let a="";for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[i.type]){let o=i,s=this.options.extensions.renderers[o.type].call({parser:this},o);if(s!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(o.type)){a+=s||"";continue}}switch(i.type){case"space":continue;case"hr":{a+=this.renderer.hr();continue}case"heading":{let o=i;a+=this.renderer.heading(this.parseInline(o.tokens),o.depth,OX(this.parseInline(o.tokens,this.textRenderer)));continue}case"code":{let o=i;a+=this.renderer.code(o.text,o.lang,!!o.escaped);continue}case"table":{let o=i,s="",c="";for(let d=0;d<o.header.length;d++)c+=this.renderer.tablecell(this.parseInline(o.header[d].tokens),{header:!0,align:o.align[d]});s+=this.renderer.tablerow(c);let A="";for(let d=0;d<o.rows.length;d++){let u=o.rows[d];c="";for(let p=0;p<u.length;p++)c+=this.renderer.tablecell(this.parseInline(u[p].tokens),{header:!1,align:o.align[p]});A+=this.renderer.tablerow(c)}a+=this.renderer.table(s,A);continue}case"blockquote":{let o=i,s=this.parse(o.tokens);a+=this.renderer.blockquote(s);continue}case"list":{let o=i,s=o.ordered,c=o.start,A=o.loose,d="";for(let u=0;u<o.items.length;u++){let p=o.items[u],m=p.checked,f=p.task,h="";if(p.task){let w=this.renderer.checkbox(!!m);A?p.tokens.length>0&&p.tokens[0].type==="paragraph"?(p.tokens[0].text=w+" "+p.tokens[0].text,p.tokens[0].tokens&&p.tokens[0].tokens.length>0&&p.tokens[0].tokens[0].type==="text"&&(p.tokens[0].tokens[0].text=w+" "+p.tokens[0].tokens[0].text)):p.tokens.unshift({type:"text",text:w+" "}):h+=w+" "}h+=this.parse(p.tokens,A),d+=this.renderer.listitem(h,f,!!m)}a+=this.renderer.list(d,s,c);continue}case"html":{let o=i;a+=this.renderer.html(o.text,o.block);continue}case"paragraph":{let o=i;a+=this.renderer.paragraph(this.parseInline(o.tokens));continue}case"text":{let o=i,s=o.tokens?this.parseInline(o.tokens):o.text;for(;r+1<e.length&&e[r+1].type==="text";)o=e[++r],s+=` +`+(o.tokens?this.parseInline(o.tokens):o.text);a+=n?this.renderer.paragraph(s):s;continue}default:{let o='Token with "'+i.type+'" type was not found.';if(this.options.silent)return console.error(o),"";throw new Error(o)}}}return a}parseInline(e,n){n=n||this.renderer;let a="";for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[i.type]){let o=this.options.extensions.renderers[i.type].call({parser:this},i);if(o!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(i.type)){a+=o||"";continue}}switch(i.type){case"escape":{let o=i;a+=n.text(o.text);break}case"html":{let o=i;a+=n.html(o.text);break}case"link":{let o=i;a+=n.link(o.href,o.title,this.parseInline(o.tokens,n));break}case"image":{let o=i;a+=n.image(o.href,o.title,o.text);break}case"strong":{let o=i;a+=n.strong(this.parseInline(o.tokens,n));break}case"em":{let o=i;a+=n.em(this.parseInline(o.tokens,n));break}case"codespan":{let o=i;a+=n.codespan(o.text);break}case"br":{a+=n.br();break}case"del":{let o=i;a+=n.del(this.parseInline(o.tokens,n));break}case"text":{let o=i;a+=n.text(o.text);break}default:{let o='Token with "'+i.type+'" type was not found.';if(this.options.silent)return console.error(o),"";throw new Error(o)}}}return a}},_c=class{options;constructor(e){this.options=e||Go}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}},mB=class{defaults=gB();options=this.setOptions;parse=this.#e(qr.lex,Gr.parse);parseInline=this.#e(qr.lexInline,Gr.parseInline);Parser=Gr;Renderer=Yi;TextRenderer=zA;Lexer=qr;Tokenizer=Bc;Hooks=_c;constructor(...e){this.use(...e)}walkTokens(e,n){let a=[];for(let r of e)switch(a=a.concat(n.call(this,r)),r.type){case"table":{let i=r;for(let o of i.header)a=a.concat(this.walkTokens(o.tokens,n));for(let o of i.rows)for(let s of o)a=a.concat(this.walkTokens(s.tokens,n));break}case"list":{let i=r;a=a.concat(this.walkTokens(i.items,n));break}default:{let i=r;this.defaults.extensions?.childTokens?.[i.type]?this.defaults.extensions.childTokens[i.type].forEach(o=>{let s=i[o].flat(1/0);a=a.concat(this.walkTokens(s,n))}):i.tokens&&(a=a.concat(this.walkTokens(i.tokens,n)))}}return a}use(...e){let n=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(a=>{let r={...a};if(r.async=this.defaults.async||r.async||!1,a.extensions&&(a.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){let o=n.renderers[i.name];o?n.renderers[i.name]=function(...s){let c=i.renderer.apply(this,s);return c===!1&&(c=o.apply(this,s)),c}:n.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let o=n[i.level];o?o.unshift(i.tokenizer):n[i.level]=[i.tokenizer],i.start&&(i.level==="block"?n.startBlock?n.startBlock.push(i.start):n.startBlock=[i.start]:i.level==="inline"&&(n.startInline?n.startInline.push(i.start):n.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(n.childTokens[i.name]=i.childTokens)}),r.extensions=n),a.renderer){let i=this.defaults.renderer||new Yi(this.defaults);for(let o in a.renderer){if(!(o in i))throw new Error(`renderer '${o}' does not exist`);if(o==="options")continue;let s=o,c=a.renderer[s],A=i[s];i[s]=(...d)=>{let u=c.apply(i,d);return u===!1&&(u=A.apply(i,d)),u||""}}r.renderer=i}if(a.tokenizer){let i=this.defaults.tokenizer||new Bc(this.defaults);for(let o in a.tokenizer){if(!(o in i))throw new Error(`tokenizer '${o}' does not exist`);if(["options","rules","lexer"].includes(o))continue;let s=o,c=a.tokenizer[s],A=i[s];i[s]=(...d)=>{let u=c.apply(i,d);return u===!1&&(u=A.apply(i,d)),u}}r.tokenizer=i}if(a.hooks){let i=this.defaults.hooks||new _c;for(let o in a.hooks){if(!(o in i))throw new Error(`hook '${o}' does not exist`);if(o==="options")continue;let s=o,c=a.hooks[s],A=i[s];_c.passThroughHooks.has(o)?i[s]=d=>{if(this.defaults.async)return Promise.resolve(c.call(i,d)).then(p=>A.call(i,p));let u=c.call(i,d);return A.call(i,u)}:i[s]=(...d)=>{let u=c.apply(i,d);return u===!1&&(u=A.apply(i,d)),u}}r.hooks=i}if(a.walkTokens){let i=this.defaults.walkTokens,o=a.walkTokens;r.walkTokens=function(s){let c=[];return c.push(o.call(this,s)),i&&(c=c.concat(i.call(this,s))),c}}this.defaults={...this.defaults,...r}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,n){return qr.lex(e,n??this.defaults)}parser(e,n){return Gr.parse(e,n??this.defaults)}#e(e,n){return(a,r)=>{let i={...r},o={...this.defaults,...i};this.defaults.async===!0&&i.async===!1&&(o.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),o.async=!0);let s=this.#t(!!o.silent,!!o.async);if(typeof a>"u"||a===null)return s(new Error("marked(): input parameter is undefined or null"));if(typeof a!="string")return s(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(a)+", string expected"));if(o.hooks&&(o.hooks.options=o),o.async)return Promise.resolve(o.hooks?o.hooks.preprocess(a):a).then(c=>e(c,o)).then(c=>o.hooks?o.hooks.processAllTokens(c):c).then(c=>o.walkTokens?Promise.all(this.walkTokens(c,o.walkTokens)).then(()=>c):c).then(c=>n(c,o)).then(c=>o.hooks?o.hooks.postprocess(c):c).catch(s);try{o.hooks&&(a=o.hooks.preprocess(a));let c=e(a,o);o.hooks&&(c=o.hooks.processAllTokens(c)),o.walkTokens&&this.walkTokens(c,o.walkTokens);let A=n(c,o);return o.hooks&&(A=o.hooks.postprocess(A)),A}catch(c){return s(c)}}}#t(e,n){return a=>{if(a.message+=` +Please report this to https://github.com/markedjs/marked.`,e){let r="<p>An error occurred:</p><pre>"+ra(a.message+"",!0)+"</pre>";return n?Promise.resolve(r):r}if(n)return Promise.reject(a);throw a}}},qo=new mB;function Le(t,e){return qo.parse(t,e)}Le.options=Le.setOptions=function(t){return qo.setOptions(t),Le.defaults=qo.defaults,T9(Le.defaults),Le};Le.getDefaults=gB;Le.defaults=Go;Le.use=function(...t){return qo.use(...t),Le.defaults=qo.defaults,T9(Le.defaults),Le};Le.walkTokens=function(t,e){return qo.walkTokens(t,e)};Le.parseInline=qo.parseInline;Le.Parser=Gr;Le.parser=Gr.parse;Le.Renderer=Yi;Le.TextRenderer=zA;Le.Lexer=qr;Le.lexer=qr.lex;Le.Tokenizer=Bc;Le.Hooks=_c;Le.parse=Le;var zbe=Le.options,Ube=Le.setOptions,Hbe=Le.use,Zbe=Le.walkTokens,Ybe=Le.parseInline,J9=Le,Wbe=Gr.parse,Kbe=qr.lex;var sx=[{id:"abap",name:"ABAP",import:()=>Promise.resolve().then(()=>(X9(),V9))},{id:"actionscript-3",name:"ActionScript",import:()=>Promise.resolve().then(()=>(t8(),e8))},{id:"ada",name:"Ada",import:()=>Promise.resolve().then(()=>(a8(),n8))},{id:"angular-html",name:"Angular HTML",import:()=>Promise.resolve().then(()=>(BB(),s8))},{id:"angular-ts",name:"Angular TypeScript",import:()=>Promise.resolve().then(()=>(m8(),p8))},{id:"apache",name:"Apache Conf",import:()=>Promise.resolve().then(()=>(f8(),g8))},{id:"apex",name:"Apex",import:()=>Promise.resolve().then(()=>(h8(),b8))},{id:"apl",name:"APL",import:()=>Promise.resolve().then(()=>(_8(),C8))},{id:"applescript",name:"AppleScript",import:()=>Promise.resolve().then(()=>(x8(),B8))},{id:"ara",name:"Ara",import:()=>Promise.resolve().then(()=>(E8(),v8))},{id:"asciidoc",name:"AsciiDoc",aliases:["adoc"],import:()=>Promise.resolve().then(()=>(I8(),Q8))},{id:"asm",name:"Assembly",import:()=>Promise.resolve().then(()=>(F8(),D8))},{id:"astro",name:"Astro",import:()=>Promise.resolve().then(()=>(L8(),N8))},{id:"awk",name:"AWK",import:()=>Promise.resolve().then(()=>(R8(),$8))},{id:"ballerina",name:"Ballerina",import:()=>Promise.resolve().then(()=>(P8(),j8))},{id:"bat",name:"Batch File",aliases:["batch"],import:()=>Promise.resolve().then(()=>(T8(),M8))},{id:"beancount",name:"Beancount",import:()=>Promise.resolve().then(()=>(G8(),q8))},{id:"berry",name:"Berry",aliases:["be"],import:()=>Promise.resolve().then(()=>(U8(),z8))},{id:"bibtex",name:"BibTeX",import:()=>Promise.resolve().then(()=>(Z8(),H8))},{id:"bicep",name:"Bicep",import:()=>Promise.resolve().then(()=>(W8(),Y8))},{id:"blade",name:"Blade",import:()=>Promise.resolve().then(()=>(V8(),J8))},{id:"bsl",name:"1C (Enterprise)",aliases:["1c"],import:()=>Promise.resolve().then(()=>(tN(),eN))},{id:"c",name:"C",import:()=>Promise.resolve().then(()=>(Uo(),nN))},{id:"cadence",name:"Cadence",aliases:["cdc"],import:()=>Promise.resolve().then(()=>(rN(),aN))},{id:"cairo",name:"Cairo",import:()=>Promise.resolve().then(()=>(sN(),oN))},{id:"clarity",name:"Clarity",import:()=>Promise.resolve().then(()=>(lN(),cN))},{id:"clojure",name:"Clojure",aliases:["clj"],import:()=>Promise.resolve().then(()=>(dN(),AN))},{id:"cmake",name:"CMake",import:()=>Promise.resolve().then(()=>(QB(),uN))},{id:"cobol",name:"COBOL",import:()=>Promise.resolve().then(()=>(mN(),pN))},{id:"codeowners",name:"CODEOWNERS",import:()=>Promise.resolve().then(()=>(fN(),gN))},{id:"codeql",name:"CodeQL",aliases:["ql"],import:()=>Promise.resolve().then(()=>(hN(),bN))},{id:"coffee",name:"CoffeeScript",aliases:["coffeescript"],import:()=>Promise.resolve().then(()=>(wN(),yN))},{id:"common-lisp",name:"Common Lisp",aliases:["lisp"],import:()=>Promise.resolve().then(()=>(CN(),kN))},{id:"coq",name:"Coq",import:()=>Promise.resolve().then(()=>(BN(),_N))},{id:"cpp",name:"C++",aliases:["c++"],import:()=>Promise.resolve().then(()=>(VA(),IN))},{id:"crystal",name:"Crystal",import:()=>Promise.resolve().then(()=>(SN(),FN))},{id:"csharp",name:"C#",aliases:["c#","cs"],import:()=>Promise.resolve().then(()=>(DB(),ON))},{id:"css",name:"CSS",import:()=>Promise.resolve().then(()=>(rt(),i8))},{id:"csv",name:"CSV",import:()=>Promise.resolve().then(()=>(LN(),NN))},{id:"cue",name:"CUE",import:()=>Promise.resolve().then(()=>(RN(),$N))},{id:"cypher",name:"Cypher",aliases:["cql"],import:()=>Promise.resolve().then(()=>(PN(),jN))},{id:"d",name:"D",import:()=>Promise.resolve().then(()=>(TN(),MN))},{id:"dart",name:"Dart",import:()=>Promise.resolve().then(()=>(GN(),qN))},{id:"dax",name:"DAX",import:()=>Promise.resolve().then(()=>(UN(),zN))},{id:"desktop",name:"Desktop",import:()=>Promise.resolve().then(()=>(ZN(),HN))},{id:"diff",name:"Diff",import:()=>Promise.resolve().then(()=>(SB(),YN))},{id:"docker",name:"Dockerfile",aliases:["dockerfile"],import:()=>Promise.resolve().then(()=>(KN(),WN))},{id:"dotenv",name:"dotEnv",import:()=>Promise.resolve().then(()=>(VN(),JN))},{id:"dream-maker",name:"Dream Maker",import:()=>Promise.resolve().then(()=>(eL(),XN))},{id:"edge",name:"Edge",import:()=>Promise.resolve().then(()=>(aL(),nL))},{id:"elixir",name:"Elixir",import:()=>Promise.resolve().then(()=>(iL(),rL))},{id:"elm",name:"Elm",import:()=>Promise.resolve().then(()=>(sL(),oL))},{id:"emacs-lisp",name:"Emacs Lisp",aliases:["elisp"],import:()=>Promise.resolve().then(()=>(lL(),cL))},{id:"erb",name:"ERB",import:()=>Promise.resolve().then(()=>(hL(),bL))},{id:"erlang",name:"Erlang",aliases:["erl"],import:()=>Promise.resolve().then(()=>(wL(),yL))},{id:"fennel",name:"Fennel",import:()=>Promise.resolve().then(()=>(CL(),kL))},{id:"fish",name:"Fish",import:()=>Promise.resolve().then(()=>(BL(),_L))},{id:"fluent",name:"Fluent",aliases:["ftl"],import:()=>Promise.resolve().then(()=>(vL(),xL))},{id:"fortran-fixed-form",name:"Fortran (Fixed Form)",aliases:["f","for","f77"],import:()=>Promise.resolve().then(()=>(IL(),QL))},{id:"fortran-free-form",name:"Fortran (Free Form)",aliases:["f90","f95","f03","f08","f18"],import:()=>Promise.resolve().then(()=>(MB(),EL))},{id:"fsharp",name:"F#",aliases:["f#","fs"],import:()=>Promise.resolve().then(()=>(SL(),FL))},{id:"gdresource",name:"GDResource",import:()=>Promise.resolve().then(()=>($L(),LL))},{id:"gdscript",name:"GDScript",import:()=>Promise.resolve().then(()=>(zB(),NL))},{id:"gdshader",name:"GDShader",import:()=>Promise.resolve().then(()=>(qB(),OL))},{id:"genie",name:"Genie",import:()=>Promise.resolve().then(()=>(jL(),RL))},{id:"gherkin",name:"Gherkin",import:()=>Promise.resolve().then(()=>(ML(),PL))},{id:"git-commit",name:"Git Commit Message",import:()=>Promise.resolve().then(()=>(qL(),TL))},{id:"git-rebase",name:"Git Rebase Message",import:()=>Promise.resolve().then(()=>(zL(),GL))},{id:"gleam",name:"Gleam",import:()=>Promise.resolve().then(()=>(HL(),UL))},{id:"glimmer-js",name:"Glimmer JS",aliases:["gjs"],import:()=>Promise.resolve().then(()=>(YL(),ZL))},{id:"glimmer-ts",name:"Glimmer TS",aliases:["gts"],import:()=>Promise.resolve().then(()=>(KL(),WL))},{id:"glsl",name:"GLSL",import:()=>Promise.resolve().then(()=>(Ho(),vN))},{id:"gnuplot",name:"Gnuplot",import:()=>Promise.resolve().then(()=>(VL(),JL))},{id:"go",name:"Go",import:()=>Promise.resolve().then(()=>(HB(),XL))},{id:"graphql",name:"GraphQL",aliases:["gql"],import:()=>Promise.resolve().then(()=>(Sg(),pL))},{id:"groovy",name:"Groovy",import:()=>Promise.resolve().then(()=>(t$(),e$))},{id:"hack",name:"Hack",import:()=>Promise.resolve().then(()=>(a$(),n$))},{id:"haml",name:"Ruby Haml",import:()=>Promise.resolve().then(()=>(NB(),AL))},{id:"handlebars",name:"Handlebars",aliases:["hbs"],import:()=>Promise.resolve().then(()=>(i$(),r$))},{id:"haskell",name:"Haskell",aliases:["hs"],import:()=>Promise.resolve().then(()=>(s$(),o$))},{id:"haxe",name:"Haxe",import:()=>Promise.resolve().then(()=>(YB(),c$))},{id:"hcl",name:"HashiCorp HCL",import:()=>Promise.resolve().then(()=>(A$(),l$))},{id:"hjson",name:"Hjson",import:()=>Promise.resolve().then(()=>(u$(),d$))},{id:"hlsl",name:"HLSL",import:()=>Promise.resolve().then(()=>(KB(),p$))},{id:"html",name:"HTML",import:()=>Promise.resolve().then(()=>(Ye(),o8))},{id:"html-derivative",name:"HTML (Derivative)",import:()=>Promise.resolve().then(()=>(Ec(),tL))},{id:"http",name:"HTTP",import:()=>Promise.resolve().then(()=>(g$(),m$))},{id:"hxml",name:"HXML",import:()=>Promise.resolve().then(()=>(b$(),f$))},{id:"hy",name:"Hy",import:()=>Promise.resolve().then(()=>(y$(),h$))},{id:"imba",name:"Imba",import:()=>Promise.resolve().then(()=>(k$(),w$))},{id:"ini",name:"INI",aliases:["properties"],import:()=>Promise.resolve().then(()=>(_$(),C$))},{id:"java",name:"Java",import:()=>Promise.resolve().then(()=>(Ig(),y8))},{id:"javascript",name:"JavaScript",aliases:["js"],import:()=>Promise.resolve().then(()=>(Qe(),r8))},{id:"jinja",name:"Jinja",import:()=>Promise.resolve().then(()=>(E$(),v$))},{id:"jison",name:"Jison",import:()=>Promise.resolve().then(()=>(I$(),Q$))},{id:"json",name:"JSON",import:()=>Promise.resolve().then(()=>(zr(),k8))},{id:"json5",name:"JSON5",import:()=>Promise.resolve().then(()=>(F$(),D$))},{id:"jsonc",name:"JSON with Comments",import:()=>Promise.resolve().then(()=>(O$(),S$))},{id:"jsonl",name:"JSON Lines",import:()=>Promise.resolve().then(()=>(L$(),N$))},{id:"jsonnet",name:"Jsonnet",import:()=>Promise.resolve().then(()=>(R$(),$$))},{id:"jssm",name:"JSSM",aliases:["fsl"],import:()=>Promise.resolve().then(()=>(P$(),j$))},{id:"jsx",name:"JSX",import:()=>Promise.resolve().then(()=>($B(),dL))},{id:"julia",name:"Julia",aliases:["jl"],import:()=>Promise.resolve().then(()=>(q$(),T$))},{id:"kotlin",name:"Kotlin",aliases:["kt","kts"],import:()=>Promise.resolve().then(()=>(z$(),G$))},{id:"kusto",name:"Kusto",aliases:["kql"],import:()=>Promise.resolve().then(()=>(H$(),U$))},{id:"latex",name:"LaTeX",import:()=>Promise.resolve().then(()=>(W$(),Y$))},{id:"lean",name:"Lean 4",aliases:["lean4"],import:()=>Promise.resolve().then(()=>(J$(),K$))},{id:"less",name:"Less",import:()=>Promise.resolve().then(()=>(ex(),V$))},{id:"liquid",name:"Liquid",import:()=>Promise.resolve().then(()=>(eR(),X$))},{id:"log",name:"Log file",import:()=>Promise.resolve().then(()=>(nR(),tR))},{id:"logo",name:"Logo",import:()=>Promise.resolve().then(()=>(rR(),aR))},{id:"lua",name:"Lua",import:()=>Promise.resolve().then(()=>(Og(),mL))},{id:"luau",name:"Luau",import:()=>Promise.resolve().then(()=>(oR(),iR))},{id:"make",name:"Makefile",aliases:["makefile"],import:()=>Promise.resolve().then(()=>(cR(),sR))},{id:"markdown",name:"Markdown",aliases:["md"],import:()=>Promise.resolve().then(()=>(nd(),DL))},{id:"marko",name:"Marko",import:()=>Promise.resolve().then(()=>(AR(),lR))},{id:"matlab",name:"MATLAB",import:()=>Promise.resolve().then(()=>(uR(),dR))},{id:"mdc",name:"MDC",import:()=>Promise.resolve().then(()=>(mR(),pR))},{id:"mdx",name:"MDX",import:()=>Promise.resolve().then(()=>(fR(),gR))},{id:"mermaid",name:"Mermaid",aliases:["mmd"],import:()=>Promise.resolve().then(()=>(hR(),bR))},{id:"mipsasm",name:"MIPS Assembly",aliases:["mips"],import:()=>Promise.resolve().then(()=>(wR(),yR))},{id:"mojo",name:"Mojo",import:()=>Promise.resolve().then(()=>(CR(),kR))},{id:"move",name:"Move",import:()=>Promise.resolve().then(()=>(BR(),_R))},{id:"narrat",name:"Narrat Language",aliases:["nar"],import:()=>Promise.resolve().then(()=>(vR(),xR))},{id:"nextflow",name:"Nextflow",aliases:["nf"],import:()=>Promise.resolve().then(()=>(QR(),ER))},{id:"nginx",name:"Nginx",import:()=>Promise.resolve().then(()=>(DR(),IR))},{id:"nim",name:"Nim",import:()=>Promise.resolve().then(()=>(SR(),FR))},{id:"nix",name:"Nix",import:()=>Promise.resolve().then(()=>(NR(),OR))},{id:"nushell",name:"nushell",aliases:["nu"],import:()=>Promise.resolve().then(()=>($R(),LR))},{id:"objective-c",name:"Objective-C",aliases:["objc"],import:()=>Promise.resolve().then(()=>(jR(),RR))},{id:"objective-cpp",name:"Objective-C++",import:()=>Promise.resolve().then(()=>(MR(),PR))},{id:"ocaml",name:"OCaml",import:()=>Promise.resolve().then(()=>(qR(),TR))},{id:"pascal",name:"Pascal",import:()=>Promise.resolve().then(()=>(zR(),GR))},{id:"perl",name:"Perl",import:()=>Promise.resolve().then(()=>(HR(),UR))},{id:"php",name:"PHP",import:()=>Promise.resolve().then(()=>(nx(),ZR))},{id:"plsql",name:"PL/SQL",import:()=>Promise.resolve().then(()=>(WR(),YR))},{id:"po",name:"Gettext PO",aliases:["pot","potx"],import:()=>Promise.resolve().then(()=>(JR(),KR))},{id:"polar",name:"Polar",import:()=>Promise.resolve().then(()=>(XR(),VR))},{id:"postcss",name:"PostCSS",import:()=>Promise.resolve().then(()=>(Dg(),O8))},{id:"powerquery",name:"PowerQuery",import:()=>Promise.resolve().then(()=>(t4(),e4))},{id:"powershell",name:"PowerShell",aliases:["ps","ps1"],import:()=>Promise.resolve().then(()=>(a4(),n4))},{id:"prisma",name:"Prisma",import:()=>Promise.resolve().then(()=>(i4(),r4))},{id:"prolog",name:"Prolog",import:()=>Promise.resolve().then(()=>(s4(),o4))},{id:"proto",name:"Protocol Buffer 3",aliases:["protobuf"],import:()=>Promise.resolve().then(()=>(l4(),c4))},{id:"pug",name:"Pug",aliases:["jade"],import:()=>Promise.resolve().then(()=>(d4(),A4))},{id:"puppet",name:"Puppet",import:()=>Promise.resolve().then(()=>(p4(),u4))},{id:"purescript",name:"PureScript",import:()=>Promise.resolve().then(()=>(g4(),m4))},{id:"python",name:"Python",aliases:["py"],import:()=>Promise.resolve().then(()=>(vc(),iN))},{id:"qml",name:"QML",import:()=>Promise.resolve().then(()=>(b4(),f4))},{id:"qmldir",name:"QML Directory",import:()=>Promise.resolve().then(()=>(y4(),h4))},{id:"qss",name:"Qt Style Sheets",import:()=>Promise.resolve().then(()=>(k4(),w4))},{id:"r",name:"R",import:()=>Promise.resolve().then(()=>(Ng(),M$))},{id:"racket",name:"Racket",import:()=>Promise.resolve().then(()=>(_4(),C4))},{id:"raku",name:"Raku",aliases:["perl6"],import:()=>Promise.resolve().then(()=>(x4(),B4))},{id:"razor",name:"ASP.NET Razor",import:()=>Promise.resolve().then(()=>(E4(),v4))},{id:"reg",name:"Windows Registry Script",import:()=>Promise.resolve().then(()=>(I4(),Q4))},{id:"regexp",name:"RegExp",aliases:["regex"],import:()=>Promise.resolve().then(()=>(Fg(),xN))},{id:"rel",name:"Rel",import:()=>Promise.resolve().then(()=>(F4(),D4))},{id:"riscv",name:"RISC-V",import:()=>Promise.resolve().then(()=>(O4(),S4))},{id:"rst",name:"reStructuredText",import:()=>Promise.resolve().then(()=>(L4(),N4))},{id:"ruby",name:"Ruby",aliases:["rb"],import:()=>Promise.resolve().then(()=>(td(),fL))},{id:"rust",name:"Rust",aliases:["rs"],import:()=>Promise.resolve().then(()=>(R4(),$4))},{id:"sas",name:"SAS",import:()=>Promise.resolve().then(()=>(P4(),j4))},{id:"sass",name:"Sass",import:()=>Promise.resolve().then(()=>(T4(),M4))},{id:"scala",name:"Scala",import:()=>Promise.resolve().then(()=>(G4(),q4))},{id:"scheme",name:"Scheme",import:()=>Promise.resolve().then(()=>(U4(),z4))},{id:"scss",name:"SCSS",import:()=>Promise.resolve().then(()=>(YA(),c8))},{id:"sdbl",name:"1C (Query)",aliases:["1c-query"],import:()=>Promise.resolve().then(()=>(vB(),X8))},{id:"shaderlab",name:"ShaderLab",aliases:["shader"],import:()=>Promise.resolve().then(()=>(Z4(),H4))},{id:"shellscript",name:"Shell",aliases:["bash","sh","shell","zsh"],import:()=>Promise.resolve().then(()=>(Ki(),DN))},{id:"shellsession",name:"Shell Session",aliases:["console"],import:()=>Promise.resolve().then(()=>(W4(),Y4))},{id:"smalltalk",name:"Smalltalk",import:()=>Promise.resolve().then(()=>(J4(),K4))},{id:"solidity",name:"Solidity",import:()=>Promise.resolve().then(()=>(X4(),V4))},{id:"soy",name:"Closure Templates",aliases:["closure-templates"],import:()=>Promise.resolve().then(()=>(tj(),ej))},{id:"sparql",name:"SPARQL",import:()=>Promise.resolve().then(()=>(rj(),aj))},{id:"splunk",name:"Splunk Query Language",aliases:["spl"],import:()=>Promise.resolve().then(()=>(oj(),ij))},{id:"sql",name:"SQL",import:()=>Promise.resolve().then(()=>(Nn(),K8))},{id:"ssh-config",name:"SSH Config",import:()=>Promise.resolve().then(()=>(cj(),sj))},{id:"stata",name:"Stata",import:()=>Promise.resolve().then(()=>(Aj(),lj))},{id:"stylus",name:"Stylus",aliases:["styl"],import:()=>Promise.resolve().then(()=>(uj(),dj))},{id:"svelte",name:"Svelte",import:()=>Promise.resolve().then(()=>(mj(),pj))},{id:"swift",name:"Swift",import:()=>Promise.resolve().then(()=>(fj(),gj))},{id:"system-verilog",name:"SystemVerilog",import:()=>Promise.resolve().then(()=>(hj(),bj))},{id:"systemd",name:"Systemd Units",import:()=>Promise.resolve().then(()=>(wj(),yj))},{id:"talonscript",name:"TalonScript",aliases:["talon"],import:()=>Promise.resolve().then(()=>(Cj(),kj))},{id:"tasl",name:"Tasl",import:()=>Promise.resolve().then(()=>(Bj(),_j))},{id:"tcl",name:"Tcl",import:()=>Promise.resolve().then(()=>(vj(),xj))},{id:"templ",name:"Templ",import:()=>Promise.resolve().then(()=>(Qj(),Ej))},{id:"terraform",name:"Terraform",aliases:["tf","tfvars"],import:()=>Promise.resolve().then(()=>(Dj(),Ij))},{id:"tex",name:"TeX",import:()=>Promise.resolve().then(()=>(VB(),Z$))},{id:"toml",name:"TOML",import:()=>Promise.resolve().then(()=>(Sj(),Fj))},{id:"ts-tags",name:"TypeScript with Tags",aliases:["lit"],import:()=>Promise.resolve().then(()=>(zj(),Gj))},{id:"tsv",name:"TSV",import:()=>Promise.resolve().then(()=>(Hj(),Uj))},{id:"tsx",name:"TSX",import:()=>Promise.resolve().then(()=>(jB(),uL))},{id:"turtle",name:"Turtle",import:()=>Promise.resolve().then(()=>(rx(),nj))},{id:"twig",name:"Twig",import:()=>Promise.resolve().then(()=>(Yj(),Zj))},{id:"typescript",name:"TypeScript",aliases:["ts"],import:()=>Promise.resolve().then(()=>(hn(),S8))},{id:"typespec",name:"TypeSpec",aliases:["tsp"],import:()=>Promise.resolve().then(()=>(Kj(),Wj))},{id:"typst",name:"Typst",aliases:["typ"],import:()=>Promise.resolve().then(()=>(Vj(),Jj))},{id:"v",name:"V",import:()=>Promise.resolve().then(()=>(eP(),Xj))},{id:"vala",name:"Vala",import:()=>Promise.resolve().then(()=>(nP(),tP))},{id:"vb",name:"Visual Basic",aliases:["cmd"],import:()=>Promise.resolve().then(()=>(rP(),aP))},{id:"verilog",name:"Verilog",import:()=>Promise.resolve().then(()=>(oP(),iP))},{id:"vhdl",name:"VHDL",import:()=>Promise.resolve().then(()=>(cP(),sP))},{id:"viml",name:"Vim Script",aliases:["vim","vimscript"],import:()=>Promise.resolve().then(()=>(AP(),lP))},{id:"vue",name:"Vue",import:()=>Promise.resolve().then(()=>(ox(),yP))},{id:"vue-html",name:"Vue HTML",import:()=>Promise.resolve().then(()=>(kP(),wP))},{id:"vyper",name:"Vyper",aliases:["vy"],import:()=>Promise.resolve().then(()=>(_P(),CP))},{id:"wasm",name:"WebAssembly",import:()=>Promise.resolve().then(()=>(xP(),BP))},{id:"wenyan",name:"Wenyan",aliases:["\u6587\u8A00"],import:()=>Promise.resolve().then(()=>(EP(),vP))},{id:"wgsl",name:"WGSL",import:()=>Promise.resolve().then(()=>(IP(),QP))},{id:"wikitext",name:"Wikitext",aliases:["mediawiki","wiki"],import:()=>Promise.resolve().then(()=>(FP(),DP))},{id:"wolfram",name:"Wolfram",aliases:["wl"],import:()=>Promise.resolve().then(()=>(OP(),SP))},{id:"xml",name:"XML",import:()=>Promise.resolve().then(()=>(Ja(),w8))},{id:"xsl",name:"XSL",import:()=>Promise.resolve().then(()=>(LP(),NP))},{id:"yaml",name:"YAML",aliases:["yml"],import:()=>Promise.resolve().then(()=>(Qc(),gL))},{id:"zenscript",name:"ZenScript",import:()=>Promise.resolve().then(()=>(RP(),$P))},{id:"zig",name:"Zig",import:()=>Promise.resolve().then(()=>(PP(),jP))}],MP=Object.fromEntries(sx.map(t=>[t.id,t.import])),TP=Object.fromEntries(sx.flatMap(t=>t.aliases?.map(e=>[e,t.import])||[])),rd={...MP,...TP};var qce=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:()=>Promise.resolve().then(()=>(GP(),qP))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:()=>Promise.resolve().then(()=>(UP(),zP))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:()=>Promise.resolve().then(()=>(ZP(),HP))},{id:"catppuccin-frappe",displayName:"Catppuccin Frapp\xE9",type:"dark",import:()=>Promise.resolve().then(()=>(WP(),YP))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:()=>Promise.resolve().then(()=>(JP(),KP))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:()=>Promise.resolve().then(()=>(XP(),VP))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:()=>Promise.resolve().then(()=>(tM(),eM))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:()=>Promise.resolve().then(()=>(aM(),nM))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:()=>Promise.resolve().then(()=>(iM(),rM))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:()=>Promise.resolve().then(()=>(sM(),oM))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:()=>Promise.resolve().then(()=>(lM(),cM))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:()=>Promise.resolve().then(()=>(dM(),AM))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:()=>Promise.resolve().then(()=>(pM(),uM))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:()=>Promise.resolve().then(()=>(gM(),mM))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:()=>Promise.resolve().then(()=>(bM(),fM))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:()=>Promise.resolve().then(()=>(yM(),hM))},{id:"github-light",displayName:"GitHub Light",type:"light",import:()=>Promise.resolve().then(()=>(kM(),wM))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:()=>Promise.resolve().then(()=>(_M(),CM))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:()=>Promise.resolve().then(()=>(xM(),BM))},{id:"houston",displayName:"Houston",type:"dark",import:()=>Promise.resolve().then(()=>(EM(),vM))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:()=>Promise.resolve().then(()=>(IM(),QM))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:()=>Promise.resolve().then(()=>(FM(),DM))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:()=>Promise.resolve().then(()=>(OM(),SM))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:()=>Promise.resolve().then(()=>(LM(),NM))},{id:"light-plus",displayName:"Light Plus",type:"light",import:()=>Promise.resolve().then(()=>(RM(),$M))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:()=>Promise.resolve().then(()=>(PM(),jM))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:()=>Promise.resolve().then(()=>(TM(),MM))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:()=>Promise.resolve().then(()=>(GM(),qM))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:()=>Promise.resolve().then(()=>(UM(),zM))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:()=>Promise.resolve().then(()=>(ZM(),HM))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:()=>Promise.resolve().then(()=>(WM(),YM))},{id:"min-light",displayName:"Min Light",type:"light",import:()=>Promise.resolve().then(()=>(JM(),KM))},{id:"monokai",displayName:"Monokai",type:"dark",import:()=>Promise.resolve().then(()=>(XM(),VM))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:()=>Promise.resolve().then(()=>(t3(),e3))},{id:"nord",displayName:"Nord",type:"dark",import:()=>Promise.resolve().then(()=>(a3(),n3))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:()=>Promise.resolve().then(()=>(i3(),r3))},{id:"one-light",displayName:"One Light",type:"light",import:()=>Promise.resolve().then(()=>(s3(),o3))},{id:"plastic",displayName:"Plastic",type:"dark",import:()=>Promise.resolve().then(()=>(l3(),c3))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:()=>Promise.resolve().then(()=>(d3(),A3))},{id:"red",displayName:"Red",type:"dark",import:()=>Promise.resolve().then(()=>(p3(),u3))},{id:"rose-pine",displayName:"Ros\xE9 Pine",type:"dark",import:()=>Promise.resolve().then(()=>(g3(),m3))},{id:"rose-pine-dawn",displayName:"Ros\xE9 Pine Dawn",type:"light",import:()=>Promise.resolve().then(()=>(b3(),f3))},{id:"rose-pine-moon",displayName:"Ros\xE9 Pine Moon",type:"dark",import:()=>Promise.resolve().then(()=>(y3(),h3))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:()=>Promise.resolve().then(()=>(k3(),w3))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:()=>Promise.resolve().then(()=>(_3(),C3))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:()=>Promise.resolve().then(()=>(x3(),B3))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:()=>Promise.resolve().then(()=>(E3(),v3))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:()=>Promise.resolve().then(()=>(I3(),Q3))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:()=>Promise.resolve().then(()=>(F3(),D3))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:()=>Promise.resolve().then(()=>(O3(),S3))},{id:"vesper",displayName:"Vesper",type:"dark",import:()=>Promise.resolve().then(()=>(L3(),N3))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:()=>Promise.resolve().then(()=>(R3(),$3))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:()=>Promise.resolve().then(()=>(P3(),j3))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:()=>Promise.resolve().then(()=>(T3(),M3))}],q3=Object.fromEntries(qce.map(t=>[t.id,t.import]));var va=class extends Error{constructor(e){super(e),this.name="ShikiError"}};var id=class extends Error{constructor(e){super(e),this.name="ShikiError"}};function Gce(){return 2147483648}function zce(){return typeof performance<"u"?performance.now():Date.now()}var Uce=(t,e)=>t+(e-t%e)%e;async function Hce(t){let e,n,a={};function r(m){n=m,a.HEAPU8=new Uint8Array(m),a.HEAPU32=new Uint32Array(m)}function i(m,f,h){a.HEAPU8.copyWithin(m,f,f+h)}function o(m){try{return e.grow(m-n.byteLength+65535>>>16),r(e.buffer),1}catch{}}function s(m){let f=a.HEAPU8.length;m=m>>>0;let h=Gce();if(m>h)return!1;for(let w=1;w<=4;w*=2){let b=f*(1+.2/w);b=Math.min(b,m+100663296);let y=Math.min(h,Uce(Math.max(m,b),65536));if(o(y))return!0}return!1}let c=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function A(m,f,h=1024){let w=f+h,b=f;for(;m[b]&&!(b>=w);)++b;if(b-f>16&&m.buffer&&c)return c.decode(m.subarray(f,b));let y="";for(;f<b;){let k=m[f++];if(!(k&128)){y+=String.fromCharCode(k);continue}let E=m[f++]&63;if((k&224)===192){y+=String.fromCharCode((k&31)<<6|E);continue}let Q=m[f++]&63;if((k&240)===224?k=(k&15)<<12|E<<6|Q:k=(k&7)<<18|E<<12|Q<<6|m[f++]&63,k<65536)y+=String.fromCharCode(k);else{let D=k-65536;y+=String.fromCharCode(55296|D>>10,56320|D&1023)}}return y}function d(m,f){return m?A(a.HEAPU8,m,f):""}let u={emscripten_get_now:zce,emscripten_memcpy_big:i,emscripten_resize_heap:s,fd_write:()=>0};async function p(){let f=await t({env:u,wasi_snapshot_preview1:u});e=f.memory,r(e.buffer),Object.assign(a,f),a.UTF8ToString=d}return await p(),a}var Zce=Object.defineProperty,Yce=(t,e,n)=>e in t?Zce(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,It=(t,e,n)=>(Yce(t,typeof e!="symbol"?e+"":e,n),n),Nt=null;function Wce(t){throw new id(t.UTF8ToString(t.getLastOnigError()))}var $g=class t{constructor(e){It(this,"utf16Length"),It(this,"utf8Length"),It(this,"utf16Value"),It(this,"utf8Value"),It(this,"utf16OffsetToUtf8"),It(this,"utf8OffsetToUtf16");let n=e.length,a=t._utf8ByteLength(e),r=a!==n,i=r?new Uint32Array(n+1):null;r&&(i[n]=a);let o=r?new Uint32Array(a+1):null;r&&(o[a]=n);let s=new Uint8Array(a),c=0;for(let A=0;A<n;A++){let d=e.charCodeAt(A),u=d,p=!1;if(d>=55296&&d<=56319&&A+1<n){let m=e.charCodeAt(A+1);m>=56320&&m<=57343&&(u=(d-55296<<10)+65536|m-56320,p=!0)}r&&(i[A]=c,p&&(i[A+1]=c),u<=127?o[c+0]=A:u<=2047?(o[c+0]=A,o[c+1]=A):u<=65535?(o[c+0]=A,o[c+1]=A,o[c+2]=A):(o[c+0]=A,o[c+1]=A,o[c+2]=A,o[c+3]=A)),u<=127?s[c++]=u:u<=2047?(s[c++]=192|(u&1984)>>>6,s[c++]=128|(u&63)>>>0):u<=65535?(s[c++]=224|(u&61440)>>>12,s[c++]=128|(u&4032)>>>6,s[c++]=128|(u&63)>>>0):(s[c++]=240|(u&1835008)>>>18,s[c++]=128|(u&258048)>>>12,s[c++]=128|(u&4032)>>>6,s[c++]=128|(u&63)>>>0),p&&A++}this.utf16Length=n,this.utf8Length=a,this.utf16Value=e,this.utf8Value=s,this.utf16OffsetToUtf8=i,this.utf8OffsetToUtf16=o}static _utf8ByteLength(e){let n=0;for(let a=0,r=e.length;a<r;a++){let i=e.charCodeAt(a),o=i,s=!1;if(i>=55296&&i<=56319&&a+1<r){let c=e.charCodeAt(a+1);c>=56320&&c<=57343&&(o=(i-55296<<10)+65536|c-56320,s=!0)}o<=127?n+=1:o<=2047?n+=2:o<=65535?n+=3:n+=4,s&&a++}return n}createString(e){let n=e.omalloc(this.utf8Length);return e.HEAPU8.set(this.utf8Value,n),n}},br=class{constructor(t){if(It(this,"id",++br.LAST_ID),It(this,"_onigBinding"),It(this,"content"),It(this,"utf16Length"),It(this,"utf8Length"),It(this,"utf16OffsetToUtf8"),It(this,"utf8OffsetToUtf16"),It(this,"ptr"),!Nt)throw new id("Must invoke loadWasm first.");this._onigBinding=Nt,this.content=t;let e=new $g(t);this.utf16Length=e.utf16Length,this.utf8Length=e.utf8Length,this.utf16OffsetToUtf8=e.utf16OffsetToUtf8,this.utf8OffsetToUtf16=e.utf8OffsetToUtf16,this.utf8Length<1e4&&!br._sharedPtrInUse?(br._sharedPtr||(br._sharedPtr=Nt.omalloc(1e4)),br._sharedPtrInUse=!0,Nt.HEAPU8.set(e.utf8Value,br._sharedPtr),this.ptr=br._sharedPtr):this.ptr=e.createString(Nt)}convertUtf8OffsetToUtf16(t){return this.utf8OffsetToUtf16?t<0?0:t>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[t]:t}convertUtf16OffsetToUtf8(t){return this.utf16OffsetToUtf8?t<0?0:t>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[t]:t}dispose(){this.ptr===br._sharedPtr?br._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}},od=br;It(od,"LAST_ID",0);It(od,"_sharedPtr",0);It(od,"_sharedPtrInUse",!1);var lx=class{constructor(e){if(It(this,"_onigBinding"),It(this,"_ptr"),!Nt)throw new id("Must invoke loadWasm first.");let n=[],a=[];for(let s=0,c=e.length;s<c;s++){let A=new $g(e[s]);n[s]=A.createString(Nt),a[s]=A.utf8Length}let r=Nt.omalloc(4*e.length);Nt.HEAPU32.set(n,r/4);let i=Nt.omalloc(4*e.length);Nt.HEAPU32.set(a,i/4);let o=Nt.createOnigScanner(r,i,e.length);for(let s=0,c=e.length;s<c;s++)Nt.ofree(n[s]);Nt.ofree(i),Nt.ofree(r),o===0&&Wce(Nt),this._onigBinding=Nt,this._ptr=o}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(e,n,a){let r=0;if(typeof a=="number"&&(r=a),typeof e=="string"){e=new od(e);let i=this._findNextMatchSync(e,n,!1,r);return e.dispose(),i}return this._findNextMatchSync(e,n,!1,r)}_findNextMatchSync(e,n,a,r){let i=this._onigBinding,o=i.findNextOnigScannerMatch(this._ptr,e.id,e.ptr,e.utf8Length,e.convertUtf16OffsetToUtf8(n),r);if(o===0)return null;let s=i.HEAPU32,c=o/4,A=s[c++],d=s[c++],u=[];for(let p=0;p<d;p++){let m=e.convertUtf8OffsetToUtf16(s[c++]),f=e.convertUtf8OffsetToUtf16(s[c++]);u[p]={start:m,end:f,length:f-m}}return{index:A,captureIndices:u}}};function Kce(t){return typeof t.instantiator=="function"}function Jce(t){return typeof t.default=="function"}function Vce(t){return typeof t.data<"u"}function Xce(t){return typeof Response<"u"&&t instanceof Response}function ele(t){return typeof ArrayBuffer<"u"&&(t instanceof ArrayBuffer||ArrayBuffer.isView(t))||typeof Buffer<"u"&&Buffer.isBuffer?.(t)||typeof SharedArrayBuffer<"u"&&t instanceof SharedArrayBuffer||typeof Uint32Array<"u"&&t instanceof Uint32Array}var Lg;function G3(t){if(Lg)return Lg;async function e(){Nt=await Hce(async n=>{let a=t;return a=await a,typeof a=="function"&&(a=await a(n)),typeof a=="function"&&(a=await a(n)),Kce(a)?a=await a.instantiator(n):Jce(a)?a=await a.default(n):(Vce(a)&&(a=a.data),Xce(a)?typeof WebAssembly.instantiateStreaming=="function"?a=await tle(a)(n):a=await nle(a)(n):ele(a)?a=await cx(a)(n):a instanceof WebAssembly.Module?a=await cx(a)(n):"default"in a&&a.default instanceof WebAssembly.Module&&(a=await cx(a.default)(n))),"instance"in a&&(a=a.instance),"exports"in a&&(a=a.exports),a})}return Lg=e(),Lg}function cx(t){return e=>WebAssembly.instantiate(t,e)}function tle(t){return e=>WebAssembly.instantiateStreaming(t,e)}function nle(t){return async e=>{let n=await t.arrayBuffer();return WebAssembly.instantiate(n,e)}}var ale;function z3(){return ale}async function sd(t){return t&&await G3(t),{createScanner(e){return new lx(e.map(n=>typeof n=="string"?n:n.source))},createString(e){return new od(e)}}}var Ax=!1,rle=!1;function Ji(t,e=3){if(Ax&&!(typeof Ax=="number"&&e>Ax)){if(rle)throw new Error(`[SHIKI DEPRECATE]: ${t}`);console.trace(`[SHIKI DEPRECATE]: ${t}`)}}function ile(t){return wx(t)}function wx(t){return Array.isArray(t)?ole(t):t instanceof RegExp?t:typeof t=="object"?sle(t):t}function ole(t){let e=[];for(let n=0,a=t.length;n<a;n++)e[n]=wx(t[n]);return e}function sle(t){let e={};for(let n in t)e[n]=wx(t[n]);return e}function X3(t,...e){return e.forEach(n=>{for(let a in n)t[a]=n[a]}),t}function eT(t){let e=~t.lastIndexOf("/")||~t.lastIndexOf("\\");return e===0?t:~e===t.length-1?eT(t.substring(0,t.length-1)):t.substr(~e+1)}var dx=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,Rg=class{static hasCaptures(t){return t===null?!1:(dx.lastIndex=0,dx.test(t))}static replaceCaptures(t,e,n){return t.replace(dx,(a,r,i,o)=>{let s=n[parseInt(r||i,10)];if(s){let c=e.substring(s.start,s.end);for(;c[0]===".";)c=c.substring(1);switch(o){case"downcase":return c.toLowerCase();case"upcase":return c.toUpperCase();default:return c}}else return a})}};function tT(t,e){return t<e?-1:t>e?1:0}function nT(t,e){if(t===null&&e===null)return 0;if(!t)return-1;if(!e)return 1;let n=t.length,a=e.length;if(n===a){for(let r=0;r<n;r++){let i=tT(t[r],e[r]);if(i!==0)return i}return 0}return n-a}function U3(t){return!!(/^#[0-9a-f]{6}$/i.test(t)||/^#[0-9a-f]{8}$/i.test(t)||/^#[0-9a-f]{3}$/i.test(t)||/^#[0-9a-f]{4}$/i.test(t))}function aT(t){return t.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var rT=class{constructor(t){this.fn=t}cache=new Map;get(t){if(this.cache.has(t))return this.cache.get(t);let e=this.fn(t);return this.cache.set(t,e),e}},Ad=class{constructor(t,e,n){this._colorMap=t,this._defaults=e,this._root=n}static createFromRawTheme(t,e){return this.createFromParsedTheme(Ale(t),e)}static createFromParsedTheme(t,e){return ule(t,e)}_cachedMatchRoot=new rT(t=>this._root.match(t));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(t){if(t===null)return this._defaults;let e=t.scopeName,a=this._cachedMatchRoot.get(e).find(r=>cle(t.parent,r.parentScopes));return a?new iT(a.fontStyle,a.foreground,a.background):null}},ux=class jg{constructor(e,n){this.parent=e,this.scopeName=n}static push(e,n){for(let a of n)e=new jg(e,a);return e}static from(...e){let n=null;for(let a=0;a<e.length;a++)n=new jg(n,e[a]);return n}push(e){return new jg(this,e)}getSegments(){let e=this,n=[];for(;e;)n.push(e.scopeName),e=e.parent;return n.reverse(),n}toString(){return this.getSegments().join(" ")}extends(e){return this===e?!0:this.parent===null?!1:this.parent.extends(e)}getExtensionIfDefined(e){let n=[],a=this;for(;a&&a!==e;)n.push(a.scopeName),a=a.parent;return a===e?n.reverse():void 0}};function cle(t,e){if(e.length===0)return!0;for(let n=0;n<e.length;n++){let a=e[n],r=!1;if(a===">"){if(n===e.length-1)return!1;a=e[++n],r=!0}for(;t&&!lle(t.scopeName,a);){if(r)return!1;t=t.parent}if(!t)return!1;t=t.parent}return!0}function lle(t,e){return e===t||t.startsWith(e)&&t[e.length]==="."}var iT=class{constructor(t,e,n){this.fontStyle=t,this.foregroundId=e,this.backgroundId=n}};function Ale(t){if(!t)return[];if(!t.settings||!Array.isArray(t.settings))return[];let e=t.settings,n=[],a=0;for(let r=0,i=e.length;r<i;r++){let o=e[r];if(!o.settings)continue;let s;if(typeof o.scope=="string"){let u=o.scope;u=u.replace(/^[,]+/,""),u=u.replace(/[,]+$/,""),s=u.split(",")}else Array.isArray(o.scope)?s=o.scope:s=[""];let c=-1;if(typeof o.settings.fontStyle=="string"){c=0;let u=o.settings.fontStyle.split(" ");for(let p=0,m=u.length;p<m;p++)switch(u[p]){case"italic":c=c|1;break;case"bold":c=c|2;break;case"underline":c=c|4;break;case"strikethrough":c=c|8;break}}let A=null;typeof o.settings.foreground=="string"&&U3(o.settings.foreground)&&(A=o.settings.foreground);let d=null;typeof o.settings.background=="string"&&U3(o.settings.background)&&(d=o.settings.background);for(let u=0,p=s.length;u<p;u++){let f=s[u].trim().split(" "),h=f[f.length-1],w=null;f.length>1&&(w=f.slice(0,f.length-1),w.reverse()),n[a++]=new dle(h,w,r,c,A,d)}}return n}var dle=class{constructor(t,e,n,a,r,i){this.scope=t,this.parentScopes=e,this.index=n,this.fontStyle=a,this.foreground=r,this.background=i}},er=(t=>(t[t.NotSet=-1]="NotSet",t[t.None=0]="None",t[t.Italic=1]="Italic",t[t.Bold=2]="Bold",t[t.Underline=4]="Underline",t[t.Strikethrough=8]="Strikethrough",t))(er||{});function ule(t,e){t.sort((c,A)=>{let d=tT(c.scope,A.scope);return d!==0||(d=nT(c.parentScopes,A.parentScopes),d!==0)?d:c.index-A.index});let n=0,a="#000000",r="#ffffff";for(;t.length>=1&&t[0].scope==="";){let c=t.shift();c.fontStyle!==-1&&(n=c.fontStyle),c.foreground!==null&&(a=c.foreground),c.background!==null&&(r=c.background)}let i=new ple(e),o=new iT(n,i.getId(a),i.getId(r)),s=new gle(new mx(0,null,-1,0,0),[]);for(let c=0,A=t.length;c<A;c++){let d=t[c];s.insert(0,d.scope,d.parentScopes,d.fontStyle,i.getId(d.foreground),i.getId(d.background))}return new Ad(i,o,s)}var ple=class{_isFrozen;_lastColorId;_id2color;_color2id;constructor(t){if(this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null),Array.isArray(t)){this._isFrozen=!0;for(let e=0,n=t.length;e<n;e++)this._color2id[t[e]]=e,this._id2color[e]=t[e]}else this._isFrozen=!1}getId(t){if(t===null)return 0;t=t.toUpperCase();let e=this._color2id[t];if(e)return e;if(this._isFrozen)throw new Error(`Missing color in color map - ${t}`);return e=++this._lastColorId,this._color2id[t]=e,this._id2color[e]=t,e}getColorMap(){return this._id2color.slice(0)}},mle=Object.freeze([]),mx=class oT{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(e,n,a,r,i){this.scopeDepth=e,this.parentScopes=n||mle,this.fontStyle=a,this.foreground=r,this.background=i}clone(){return new oT(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(e){let n=[];for(let a=0,r=e.length;a<r;a++)n[a]=e[a].clone();return n}acceptOverwrite(e,n,a,r){this.scopeDepth>e?console.log("how did this happen?"):this.scopeDepth=e,n!==-1&&(this.fontStyle=n),a!==0&&(this.foreground=a),r!==0&&(this.background=r)}},gle=class gx{constructor(e,n=[],a={}){this._mainRule=e,this._children=a,this._rulesWithParentScopes=n}_rulesWithParentScopes;static _cmpBySpecificity(e,n){if(e.scopeDepth!==n.scopeDepth)return n.scopeDepth-e.scopeDepth;let a=0,r=0;for(;e.parentScopes[a]===">"&&a++,n.parentScopes[r]===">"&&r++,!(a>=e.parentScopes.length||r>=n.parentScopes.length);){let i=n.parentScopes[r].length-e.parentScopes[a].length;if(i!==0)return i;a++,r++}return n.parentScopes.length-e.parentScopes.length}match(e){if(e!==""){let a=e.indexOf("."),r,i;if(a===-1?(r=e,i=""):(r=e.substring(0,a),i=e.substring(a+1)),this._children.hasOwnProperty(r))return this._children[r].match(i)}let n=this._rulesWithParentScopes.concat(this._mainRule);return n.sort(gx._cmpBySpecificity),n}insert(e,n,a,r,i,o){if(n===""){this._doInsertHere(e,a,r,i,o);return}let s=n.indexOf("."),c,A;s===-1?(c=n,A=""):(c=n.substring(0,s),A=n.substring(s+1));let d;this._children.hasOwnProperty(c)?d=this._children[c]:(d=new gx(this._mainRule.clone(),mx.cloneArr(this._rulesWithParentScopes)),this._children[c]=d),d.insert(e+1,A,a,r,i,o)}_doInsertHere(e,n,a,r,i){if(n===null){this._mainRule.acceptOverwrite(e,a,r,i);return}for(let o=0,s=this._rulesWithParentScopes.length;o<s;o++){let c=this._rulesWithParentScopes[o];if(nT(c.parentScopes,n)===0){c.acceptOverwrite(e,a,r,i);return}}a===-1&&(a=this._mainRule.fontStyle),r===0&&(r=this._mainRule.foreground),i===0&&(i=this._mainRule.background),this._rulesWithParentScopes.push(new mx(e,n,a,r,i))}},Vi=class Ea{static toBinaryStr(e){return e.toString(2).padStart(32,"0")}static print(e){let n=Ea.getLanguageId(e),a=Ea.getTokenType(e),r=Ea.getFontStyle(e),i=Ea.getForeground(e),o=Ea.getBackground(e);console.log({languageId:n,tokenType:a,fontStyle:r,foreground:i,background:o})}static getLanguageId(e){return(e&255)>>>0}static getTokenType(e){return(e&768)>>>8}static containsBalancedBrackets(e){return(e&1024)!==0}static getFontStyle(e){return(e&30720)>>>11}static getForeground(e){return(e&16744448)>>>15}static getBackground(e){return(e&4278190080)>>>24}static set(e,n,a,r,i,o,s){let c=Ea.getLanguageId(e),A=Ea.getTokenType(e),d=Ea.containsBalancedBrackets(e)?1:0,u=Ea.getFontStyle(e),p=Ea.getForeground(e),m=Ea.getBackground(e);return n!==0&&(c=n),a!==8&&(A=a),r!==null&&(d=r?1:0),i!==-1&&(u=i),o!==0&&(p=o),s!==0&&(m=s),(c<<0|A<<8|d<<10|u<<11|p<<15|m<<24)>>>0}};function Mg(t,e){let n=[],a=fle(t),r=a.next();for(;r!==null;){let c=0;if(r.length===2&&r.charAt(1)===":"){switch(r.charAt(0)){case"R":c=1;break;case"L":c=-1;break;default:console.log(`Unknown priority ${r} in scope selector`)}r=a.next()}let A=o();if(n.push({matcher:A,priority:c}),r!==",")break;r=a.next()}return n;function i(){if(r==="-"){r=a.next();let c=i();return A=>!!c&&!c(A)}if(r==="("){r=a.next();let c=s();return r===")"&&(r=a.next()),c}if(H3(r)){let c=[];do c.push(r),r=a.next();while(H3(r));return A=>e(c,A)}return null}function o(){let c=[],A=i();for(;A;)c.push(A),A=i();return d=>c.every(u=>u(d))}function s(){let c=[],A=o();for(;A&&(c.push(A),r==="|"||r===",");){do r=a.next();while(r==="|"||r===",");A=o()}return d=>c.some(u=>u(d))}}function H3(t){return!!t&&!!t.match(/[\w\.:]+/)}function fle(t){let e=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,n=e.exec(t);return{next:()=>{if(!n)return null;let a=n[0];return n=e.exec(t),a}}}function sT(t){typeof t.dispose=="function"&&t.dispose()}var dd=class{constructor(t){this.scopeName=t}toKey(){return this.scopeName}},ble=class{constructor(t,e){this.scopeName=t,this.ruleName=e}toKey(){return`${this.scopeName}#${this.ruleName}`}},hle=class{_references=[];_seenReferenceKeys=new Set;get references(){return this._references}visitedRule=new Set;add(t){let e=t.toKey();this._seenReferenceKeys.has(e)||(this._seenReferenceKeys.add(e),this._references.push(t))}},yle=class{constructor(t,e){this.repo=t,this.initialScopeName=e,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new dd(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let t=this.Q;this.Q=[];let e=new hle;for(let n of t)wle(n,this.initialScopeName,this.repo,e);for(let n of e.references)if(n instanceof dd){if(this.seenFullScopeRequests.has(n.scopeName))continue;this.seenFullScopeRequests.add(n.scopeName),this.Q.push(n)}else{if(this.seenFullScopeRequests.has(n.scopeName)||this.seenPartialScopeRequests.has(n.toKey()))continue;this.seenPartialScopeRequests.add(n.toKey()),this.Q.push(n)}}};function wle(t,e,n,a){let r=n.lookup(t.scopeName);if(!r){if(t.scopeName===e)throw new Error(`No grammar provided for <${e}>`);return}let i=n.lookup(e);t instanceof dd?Pg({baseGrammar:i,selfGrammar:r},a):fx(t.ruleName,{baseGrammar:i,selfGrammar:r,repository:r.repository},a);let o=n.injections(t.scopeName);if(o)for(let s of o)a.add(new dd(s))}function fx(t,e,n){if(e.repository&&e.repository[t]){let a=e.repository[t];Tg([a],e,n)}}function Pg(t,e){t.selfGrammar.patterns&&Array.isArray(t.selfGrammar.patterns)&&Tg(t.selfGrammar.patterns,{...t,repository:t.selfGrammar.repository},e),t.selfGrammar.injections&&Tg(Object.values(t.selfGrammar.injections),{...t,repository:t.selfGrammar.repository},e)}function Tg(t,e,n){for(let a of t){if(n.visitedRule.has(a))continue;n.visitedRule.add(a);let r=a.repository?X3({},e.repository,a.repository):e.repository;Array.isArray(a.patterns)&&Tg(a.patterns,{...e,repository:r},n);let i=a.include;if(!i)continue;let o=cT(i);switch(o.kind){case 0:Pg({...e,selfGrammar:e.baseGrammar},n);break;case 1:Pg(e,n);break;case 2:fx(o.ruleName,{...e,repository:r},n);break;case 3:case 4:let s=o.scopeName===e.selfGrammar.scopeName?e.selfGrammar:o.scopeName===e.baseGrammar.scopeName?e.baseGrammar:void 0;if(s){let c={baseGrammar:e.baseGrammar,selfGrammar:s,repository:r};o.kind===4?fx(o.ruleName,c,n):Pg(c,n)}else o.kind===4?n.add(new ble(o.scopeName,o.ruleName)):n.add(new dd(o.scopeName));break}}}var kle=class{kind=0},Cle=class{kind=1},_le=class{constructor(t){this.ruleName=t}kind=2},Ble=class{constructor(t){this.scopeName=t}kind=3},xle=class{constructor(t,e){this.scopeName=t,this.ruleName=e}kind=4};function cT(t){if(t==="$base")return new kle;if(t==="$self")return new Cle;let e=t.indexOf("#");if(e===-1)return new Ble(t);if(e===0)return new _le(t.substring(1));{let n=t.substring(0,e),a=t.substring(e+1);return new xle(n,a)}}var vle=/\\(\d+)/,Z3=/\\(\d+)/g,wCe=Symbol("RuleId"),Ele=-1,lT=-2;var md=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(t,e,n,a){this.$location=t,this.id=e,this._name=n||null,this._nameIsCapturing=Rg.hasCaptures(this._name),this._contentName=a||null,this._contentNameIsCapturing=Rg.hasCaptures(this._contentName)}get debugName(){let t=this.$location?`${eT(this.$location.filename)}:${this.$location.line}`:"unknown";return`${this.constructor.name}#${this.id} @ ${t}`}getName(t,e){return!this._nameIsCapturing||this._name===null||t===null||e===null?this._name:Rg.replaceCaptures(this._name,t,e)}getContentName(t,e){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:Rg.replaceCaptures(this._contentName,t,e)}},Qle=class extends md{retokenizeCapturedWithRuleId;constructor(t,e,n,a,r){super(t,e,n,a),this.retokenizeCapturedWithRuleId=r}dispose(){}collectPatterns(t,e){throw new Error("Not supported!")}compile(t,e){throw new Error("Not supported!")}compileAG(t,e,n,a){throw new Error("Not supported!")}},Ile=class extends md{_match;captures;_cachedCompiledPatterns;constructor(t,e,n,a,r){super(t,e,n,null),this._match=new ud(a,this.id),this.captures=r,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(t,e){e.push(this._match)}compile(t,e){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,e,n,a){return this._getCachedCompiledPatterns(t).compileAG(t,n,a)}_getCachedCompiledPatterns(t){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new pd,this.collectPatterns(t,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Y3=class extends md{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(t,e,n,a,r){super(t,e,n,a),this.patterns=r.patterns,this.hasMissingPatterns=r.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(t,e){for(let n of this.patterns)t.getRule(n).collectPatterns(t,e)}compile(t,e){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,e,n,a){return this._getCachedCompiledPatterns(t).compileAG(t,n,a)}_getCachedCompiledPatterns(t){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new pd,this.collectPatterns(t,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},bx=class extends md{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(t,e,n,a,r,i,o,s,c,A){super(t,e,n,a),this._begin=new ud(r,this.id),this.beginCaptures=i,this._end=new ud(o||"\uFFFF",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=s,this.applyEndPatternLast=c||!1,this.patterns=A.patterns,this.hasMissingPatterns=A.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(t,e){return this._end.resolveBackReferences(t,e)}collectPatterns(t,e){e.push(this._begin)}compile(t,e){return this._getCachedCompiledPatterns(t,e).compile(t)}compileAG(t,e,n,a){return this._getCachedCompiledPatterns(t,e).compileAG(t,n,a)}_getCachedCompiledPatterns(t,e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new pd;for(let n of this.patterns)t.getRule(n).collectPatterns(t,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,e):this._cachedCompiledPatterns.setSource(0,e)),this._cachedCompiledPatterns}},qg=class extends md{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(t,e,n,a,r,i,o,s,c){super(t,e,n,a),this._begin=new ud(r,this.id),this.beginCaptures=i,this.whileCaptures=s,this._while=new ud(o,lT),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=c.patterns,this.hasMissingPatterns=c.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(t,e){return this._while.resolveBackReferences(t,e)}collectPatterns(t,e){e.push(this._begin)}compile(t,e){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,e,n,a){return this._getCachedCompiledPatterns(t).compileAG(t,n,a)}_getCachedCompiledPatterns(t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new pd;for(let e of this.patterns)t.getRule(e).collectPatterns(t,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(t,e){return this._getCachedCompiledWhilePatterns(t,e).compile(t)}compileWhileAG(t,e,n,a){return this._getCachedCompiledWhilePatterns(t,e).compileAG(t,n,a)}_getCachedCompiledWhilePatterns(t,e){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new pd,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,e||"\uFFFF"),this._cachedCompiledWhilePatterns}},AT=class an{static createCaptureRule(e,n,a,r,i){return e.registerRule(o=>new Qle(n,o,a,r,i))}static getCompiledRuleId(e,n,a){return e.id||n.registerRule(r=>{if(e.id=r,e.match)return new Ile(e.$vscodeTextmateLocation,e.id,e.name,e.match,an._compileCaptures(e.captures,n,a));if(typeof e.begin>"u"){e.repository&&(a=X3({},a,e.repository));let i=e.patterns;return typeof i>"u"&&e.include&&(i=[{include:e.include}]),new Y3(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,an._compilePatterns(i,n,a))}return e.while?new qg(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,e.begin,an._compileCaptures(e.beginCaptures||e.captures,n,a),e.while,an._compileCaptures(e.whileCaptures||e.captures,n,a),an._compilePatterns(e.patterns,n,a)):new bx(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,e.begin,an._compileCaptures(e.beginCaptures||e.captures,n,a),e.end,an._compileCaptures(e.endCaptures||e.captures,n,a),e.applyEndPatternLast,an._compilePatterns(e.patterns,n,a))}),e.id}static _compileCaptures(e,n,a){let r=[];if(e){let i=0;for(let o in e){if(o==="$vscodeTextmateLocation")continue;let s=parseInt(o,10);s>i&&(i=s)}for(let o=0;o<=i;o++)r[o]=null;for(let o in e){if(o==="$vscodeTextmateLocation")continue;let s=parseInt(o,10),c=0;e[o].patterns&&(c=an.getCompiledRuleId(e[o],n,a)),r[s]=an.createCaptureRule(n,e[o].$vscodeTextmateLocation,e[o].name,e[o].contentName,c)}}return r}static _compilePatterns(e,n,a){let r=[];if(e)for(let i=0,o=e.length;i<o;i++){let s=e[i],c=-1;if(s.include){let A=cT(s.include);switch(A.kind){case 0:case 1:c=an.getCompiledRuleId(a[s.include],n,a);break;case 2:let d=a[A.ruleName];d&&(c=an.getCompiledRuleId(d,n,a));break;case 3:case 4:let u=A.scopeName,p=A.kind===4?A.ruleName:null,m=n.getExternalGrammar(u,a);if(m)if(p){let f=m.repository[p];f&&(c=an.getCompiledRuleId(f,n,m.repository))}else c=an.getCompiledRuleId(m.repository.$self,n,m.repository);break}}else c=an.getCompiledRuleId(s,n,a);if(c!==-1){let A=n.getRule(c),d=!1;if((A instanceof Y3||A instanceof bx||A instanceof qg)&&A.hasMissingPatterns&&A.patterns.length===0&&(d=!0),d)continue;r.push(c)}}return{patterns:r,hasMissingPatterns:(e?e.length:0)!==r.length}}},ud=class dT{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(e,n){if(e&&typeof e=="string"){let a=e.length,r=0,i=[],o=!1;for(let s=0;s<a;s++)if(e.charAt(s)==="\\"&&s+1<a){let A=e.charAt(s+1);A==="z"?(i.push(e.substring(r,s)),i.push("$(?!\\n)(?<!\\n)"),r=s+2):(A==="A"||A==="G")&&(o=!0),s++}this.hasAnchor=o,r===0?this.source=e:(i.push(e.substring(r,a)),this.source=i.join(""))}else this.hasAnchor=!1,this.source=e;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=n,typeof this.source=="string"?this.hasBackReferences=vle.test(this.source):this.hasBackReferences=!1}clone(){return new dT(this.source,this.ruleId)}setSource(e){this.source!==e&&(this.source=e,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(e,n){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let a=n.map(r=>e.substring(r.start,r.end));return Z3.lastIndex=0,this.source.replace(Z3,(r,i)=>aT(a[parseInt(i,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let e=[],n=[],a=[],r=[],i,o,s,c;for(i=0,o=this.source.length;i<o;i++)s=this.source.charAt(i),e[i]=s,n[i]=s,a[i]=s,r[i]=s,s==="\\"&&i+1<o&&(c=this.source.charAt(i+1),c==="A"?(e[i+1]="\uFFFF",n[i+1]="\uFFFF",a[i+1]="A",r[i+1]="A"):c==="G"?(e[i+1]="\uFFFF",n[i+1]="G",a[i+1]="\uFFFF",r[i+1]="G"):(e[i+1]=c,n[i+1]=c,a[i+1]=c,r[i+1]=c),i++);return{A0_G0:e.join(""),A0_G1:n.join(""),A1_G0:a.join(""),A1_G1:r.join("")}}resolveAnchors(e,n){return!this.hasAnchor||!this._anchorCache||typeof this.source!="string"?this.source:e?n?this._anchorCache.A1_G1:this._anchorCache.A1_G0:n?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},pd=class{_items;_hasAnchors;_cached;_anchorCache;constructor(){this._items=[],this._hasAnchors=!1,this._cached=null,this._anchorCache={A0_G0:null,A0_G1:null,A1_G0:null,A1_G1:null}}dispose(){this._disposeCaches()}_disposeCaches(){this._cached&&(this._cached.dispose(),this._cached=null),this._anchorCache.A0_G0&&(this._anchorCache.A0_G0.dispose(),this._anchorCache.A0_G0=null),this._anchorCache.A0_G1&&(this._anchorCache.A0_G1.dispose(),this._anchorCache.A0_G1=null),this._anchorCache.A1_G0&&(this._anchorCache.A1_G0.dispose(),this._anchorCache.A1_G0=null),this._anchorCache.A1_G1&&(this._anchorCache.A1_G1.dispose(),this._anchorCache.A1_G1=null)}push(t){this._items.push(t),this._hasAnchors=this._hasAnchors||t.hasAnchor}unshift(t){this._items.unshift(t),this._hasAnchors=this._hasAnchors||t.hasAnchor}length(){return this._items.length}setSource(t,e){this._items[t].source!==e&&(this._disposeCaches(),this._items[t].setSource(e))}compile(t){if(!this._cached){let e=this._items.map(n=>n.source);this._cached=new W3(t,e,this._items.map(n=>n.ruleId))}return this._cached}compileAG(t,e,n){return this._hasAnchors?e?n?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(t,e,n)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(t,e,n)),this._anchorCache.A1_G0):n?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(t,e,n)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(t,e,n)),this._anchorCache.A0_G0):this.compile(t)}_resolveAnchors(t,e,n){let a=this._items.map(r=>r.resolveAnchors(e,n));return new W3(t,a,this._items.map(r=>r.ruleId))}},W3=class{constructor(t,e,n){this.regExps=e,this.rules=n,this.scanner=t.createOnigScanner(e)}scanner;dispose(){typeof this.scanner.dispose=="function"&&this.scanner.dispose()}toString(){let t=[];for(let e=0,n=this.rules.length;e<n;e++)t.push(" - "+this.rules[e]+": "+this.regExps[e]);return t.join(` +`)}findNextMatchSync(t,e,n){let a=this.scanner.findNextMatchSync(t,e,n);return a?{ruleId:this.rules[a.index],captureIndices:a.captureIndices}:null}},px=class{constructor(t,e){this.languageId=t,this.tokenType=e}},Dle=class hx{_defaultAttributes;_embeddedLanguagesMatcher;constructor(e,n){this._defaultAttributes=new px(e,8),this._embeddedLanguagesMatcher=new Fle(Object.entries(n||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(e){return e===null?hx._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(e)}static _NULL_SCOPE_METADATA=new px(0,0);_getBasicScopeAttributes=new rT(e=>{let n=this._scopeToLanguage(e),a=this._toStandardTokenType(e);return new px(n,a)});_scopeToLanguage(e){return this._embeddedLanguagesMatcher.match(e)||0}_toStandardTokenType(e){let n=e.match(hx.STANDARD_TOKEN_TYPE_REGEXP);if(!n)return 8;switch(n[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"meta.embedded":return 0}throw new Error("Unexpected match for standard token type!")}static STANDARD_TOKEN_TYPE_REGEXP=/\b(comment|string|regex|meta\.embedded)\b/},Fle=class{values;scopesRegExp;constructor(t){if(t.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(t);let e=t.map(([n,a])=>aT(n));e.sort(),e.reverse(),this.scopesRegExp=new RegExp(`^((${e.join(")|(")}))($|\\.)`,"")}}match(t){if(!this.scopesRegExp)return;let e=t.match(this.scopesRegExp);if(e)return this.values.get(e[1])}},kCe={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},uT=!1,K3=class{constructor(t,e){this.stack=t,this.stoppedEarly=e}};function pT(t,e,n,a,r,i,o,s){let c=e.content.length,A=!1,d=-1;if(o){let m=Sle(t,e,n,a,r,i);r=m.stack,a=m.linePos,n=m.isFirstLine,d=m.anchorPosition}let u=Date.now();for(;!A;){if(s!==0&&Date.now()-u>s)return new K3(r,!0);p()}return new K3(r,!1);function p(){let m=Ole(t,e,n,a,r,d);if(!m){i.produce(r,c),A=!0;return}let f=m.captureIndices,h=m.matchedRuleId,w=f&&f.length>0?f[0].end>a:!1;if(h===Ele){let b=r.getRule(t);i.produce(r,f[0].start),r=r.withContentNameScopesList(r.nameScopesList),cd(t,e,n,r,i,b.endCaptures,f),i.produce(r,f[0].end);let y=r;if(r=r.parent,d=y.getAnchorPos(),!w&&y.getEnterPos()===a){r=y,i.produce(r,c),A=!0;return}}else{let b=t.getRule(h);i.produce(r,f[0].start);let y=r,k=b.getName(e.content,f),E=r.contentNameScopesList.pushAttributed(k,t);if(r=r.push(h,a,d,f[0].end===c,null,E,E),b instanceof bx){let Q=b;cd(t,e,n,r,i,Q.beginCaptures,f),i.produce(r,f[0].end),d=f[0].end;let D=Q.getContentName(e.content,f),F=E.pushAttributed(D,t);if(r=r.withContentNameScopesList(F),Q.endHasBackReferences&&(r=r.withEndRule(Q.getEndWithResolvedBackReferences(e.content,f))),!w&&y.hasSameRuleAs(r)){r=r.pop(),i.produce(r,c),A=!0;return}}else if(b instanceof qg){let Q=b;cd(t,e,n,r,i,Q.beginCaptures,f),i.produce(r,f[0].end),d=f[0].end;let D=Q.getContentName(e.content,f),F=E.pushAttributed(D,t);if(r=r.withContentNameScopesList(F),Q.whileHasBackReferences&&(r=r.withEndRule(Q.getWhileWithResolvedBackReferences(e.content,f))),!w&&y.hasSameRuleAs(r)){r=r.pop(),i.produce(r,c),A=!0;return}}else if(cd(t,e,n,r,i,b.captures,f),i.produce(r,f[0].end),r=r.pop(),!w){r=r.safePop(),i.produce(r,c),A=!0;return}}f[0].end>a&&(a=f[0].end,n=!1)}}function Sle(t,e,n,a,r,i){let o=r.beginRuleCapturedEOL?0:-1,s=[];for(let c=r;c;c=c.pop()){let A=c.getRule(t);A instanceof qg&&s.push({rule:A,stack:c})}for(let c=s.pop();c;c=s.pop()){let{ruleScanner:A,findOptions:d}=$le(c.rule,t,c.stack.endRule,n,a===o),u=A.findNextMatchSync(e,a,d);if(u){if(u.ruleId!==lT){r=c.stack.pop();break}u.captureIndices&&u.captureIndices.length&&(i.produce(c.stack,u.captureIndices[0].start),cd(t,e,n,c.stack,i,c.rule.whileCaptures,u.captureIndices),i.produce(c.stack,u.captureIndices[0].end),o=u.captureIndices[0].end,u.captureIndices[0].end>a&&(a=u.captureIndices[0].end,n=!1))}else{r=c.stack.pop();break}}return{stack:r,linePos:a,anchorPosition:o,isFirstLine:n}}function Ole(t,e,n,a,r,i){let o=Nle(t,e,n,a,r,i),s=t.getInjections();if(s.length===0)return o;let c=Lle(s,t,e,n,a,r,i);if(!c)return o;if(!o)return c;let A=o.captureIndices[0].start,d=c.captureIndices[0].start;return d<A||c.priorityMatch&&d===A?c:o}function Nle(t,e,n,a,r,i){let o=r.getRule(t),{ruleScanner:s,findOptions:c}=mT(o,t,r.endRule,n,a===i),A=s.findNextMatchSync(e,a,c);return A?{captureIndices:A.captureIndices,matchedRuleId:A.ruleId}:null}function Lle(t,e,n,a,r,i,o){let s=Number.MAX_VALUE,c=null,A,d=0,u=i.contentNameScopesList.getScopeNames();for(let p=0,m=t.length;p<m;p++){let f=t[p];if(!f.matcher(u))continue;let h=e.getRule(f.ruleId),{ruleScanner:w,findOptions:b}=mT(h,e,null,a,r===o),y=w.findNextMatchSync(n,r,b);if(!y)continue;let k=y.captureIndices[0].start;if(!(k>=s)&&(s=k,c=y.captureIndices,A=y.ruleId,d=f.priority,s===r))break}return c?{priorityMatch:d===-1,captureIndices:c,matchedRuleId:A}:null}function mT(t,e,n,a,r){if(uT){let o=t.compile(e,n),s=gT(a,r);return{ruleScanner:o,findOptions:s}}return{ruleScanner:t.compileAG(e,n,a,r),findOptions:0}}function $le(t,e,n,a,r){if(uT){let o=t.compileWhile(e,n),s=gT(a,r);return{ruleScanner:o,findOptions:s}}return{ruleScanner:t.compileWhileAG(e,n,a,r),findOptions:0}}function gT(t,e){let n=0;return t||(n|=1),e||(n|=4),n}function cd(t,e,n,a,r,i,o){if(i.length===0)return;let s=e.content,c=Math.min(i.length,o.length),A=[],d=o[0].end;for(let u=0;u<c;u++){let p=i[u];if(p===null)continue;let m=o[u];if(m.length===0)continue;if(m.start>d)break;for(;A.length>0&&A[A.length-1].endPos<=m.start;)r.produceFromScopes(A[A.length-1].scopes,A[A.length-1].endPos),A.pop();if(A.length>0?r.produceFromScopes(A[A.length-1].scopes,m.start):r.produce(a,m.start),p.retokenizeCapturedWithRuleId){let h=p.getName(s,o),w=a.contentNameScopesList.pushAttributed(h,t),b=p.getContentName(s,o),y=w.pushAttributed(b,t),k=a.push(p.retokenizeCapturedWithRuleId,m.start,-1,!1,null,w,y),E=t.createOnigString(s.substring(0,m.end));pT(t,E,n&&m.start===0,m.start,k,r,!1,0),sT(E);continue}let f=p.getName(s,o);if(f!==null){let w=(A.length>0?A[A.length-1].scopes:a.contentNameScopesList).pushAttributed(f,t);A.push(new Rle(w,m.end))}}for(;A.length>0;)r.produceFromScopes(A[A.length-1].scopes,A[A.length-1].endPos),A.pop()}var Rle=class{scopes;endPos;constructor(t,e){this.scopes=t,this.endPos=e}};function jle(t,e,n,a,r,i,o,s){return new Mle(t,e,n,a,r,i,o,s)}function J3(t,e,n,a,r){let i=Mg(e,Gg),o=AT.getCompiledRuleId(n,a,r.repository);for(let s of i)t.push({debugSelector:e,matcher:s.matcher,ruleId:o,grammar:r,priority:s.priority})}function Gg(t,e){if(e.length<t.length)return!1;let n=0;return t.every(a=>{for(let r=n;r<e.length;r++)if(Ple(e[r],a))return n=r+1,!0;return!1})}function Ple(t,e){if(!t)return!1;if(t===e)return!0;let n=e.length;return t.length>n&&t.substr(0,n)===e&&t[n]==="."}var Mle=class{constructor(t,e,n,a,r,i,o,s){if(this._rootScopeName=t,this.balancedBracketSelectors=i,this._onigLib=s,this._basicScopeAttributesProvider=new Dle(n,a),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=o,this._grammar=V3(e,null),this._injections=null,this._tokenTypeMatchers=[],r)for(let c of Object.keys(r)){let A=Mg(c,Gg);for(let d of A)this._tokenTypeMatchers.push({matcher:d.matcher,type:r[c]})}}_rootId;_lastRuleId;_ruleId2desc;_includedGrammars;_grammarRepository;_grammar;_injections;_basicScopeAttributesProvider;_tokenTypeMatchers;get themeProvider(){return this._grammarRepository}dispose(){for(let t of this._ruleId2desc)t&&t.dispose()}createOnigScanner(t){return this._onigLib.createOnigScanner(t)}createOnigString(t){return this._onigLib.createOnigString(t)}getMetadataForScope(t){return this._basicScopeAttributesProvider.getBasicScopeAttributes(t)}_collectInjections(){let t={lookup:r=>r===this._rootScopeName?this._grammar:this.getExternalGrammar(r),injections:r=>this._grammarRepository.injections(r)},e=[],n=this._rootScopeName,a=t.lookup(n);if(a){let r=a.injections;if(r)for(let o in r)J3(e,o,r[o],this,a);let i=this._grammarRepository.injections(n);i&&i.forEach(o=>{let s=this.getExternalGrammar(o);if(s){let c=s.injectionSelector;c&&J3(e,c,s,this,s)}})}return e.sort((r,i)=>r.priority-i.priority),e}getInjections(){return this._injections===null&&(this._injections=this._collectInjections()),this._injections}registerRule(t){let e=++this._lastRuleId,n=t(e);return this._ruleId2desc[e]=n,n}getRule(t){return this._ruleId2desc[t]}getExternalGrammar(t,e){if(this._includedGrammars[t])return this._includedGrammars[t];if(this._grammarRepository){let n=this._grammarRepository.lookup(t);if(n)return this._includedGrammars[t]=V3(n,e&&e.$base),this._includedGrammars[t]}}tokenizeLine(t,e,n=0){let a=this._tokenize(t,e,!1,n);return{tokens:a.lineTokens.getResult(a.ruleStack,a.lineLength),ruleStack:a.ruleStack,stoppedEarly:a.stoppedEarly}}tokenizeLine2(t,e,n=0){let a=this._tokenize(t,e,!0,n);return{tokens:a.lineTokens.getBinaryResult(a.ruleStack,a.lineLength),ruleStack:a.ruleStack,stoppedEarly:a.stoppedEarly}}_tokenize(t,e,n,a){this._rootId===-1&&(this._rootId=AT.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let r;if(!e||e===yx.NULL){r=!0;let A=this._basicScopeAttributesProvider.getDefaultAttributes(),d=this.themeProvider.getDefaults(),u=Vi.set(0,A.languageId,A.tokenType,null,d.fontStyle,d.foregroundId,d.backgroundId),p=this.getRule(this._rootId).getName(null,null),m;p?m=ld.createRootAndLookUpScopeName(p,u,this):m=ld.createRoot("unknown",u),e=new yx(null,this._rootId,-1,-1,!1,null,m,m)}else r=!1,e.reset();t=t+` +`;let i=this.createOnigString(t),o=i.content.length,s=new qle(n,t,this._tokenTypeMatchers,this.balancedBracketSelectors),c=pT(this,i,r,0,e,s,!0,a);return sT(i),{lineLength:o,lineTokens:s,ruleStack:c.stack,stoppedEarly:c.stoppedEarly}}};function V3(t,e){return t=ile(t),t.repository=t.repository||{},t.repository.$self={$vscodeTextmateLocation:t.$vscodeTextmateLocation,patterns:t.patterns,name:t.scopeName},t.repository.$base=e||t.repository.$self,t}var ld=class hr{constructor(e,n,a){this.parent=e,this.scopePath=n,this.tokenAttributes=a}static fromExtension(e,n){let a=e,r=e?.scopePath??null;for(let i of n)r=ux.push(r,i.scopeNames),a=new hr(a,r,i.encodedTokenAttributes);return a}static createRoot(e,n){return new hr(null,new ux(null,e),n)}static createRootAndLookUpScopeName(e,n,a){let r=a.getMetadataForScope(e),i=new ux(null,e),o=a.themeProvider.themeMatch(i),s=hr.mergeAttributes(n,r,o);return new hr(null,i,s)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(e){return hr.equals(this,e)}static equals(e,n){do{if(e===n||!e&&!n)return!0;if(!e||!n||e.scopeName!==n.scopeName||e.tokenAttributes!==n.tokenAttributes)return!1;e=e.parent,n=n.parent}while(!0)}static mergeAttributes(e,n,a){let r=-1,i=0,o=0;return a!==null&&(r=a.fontStyle,i=a.foregroundId,o=a.backgroundId),Vi.set(e,n.languageId,n.tokenType,null,r,i,o)}pushAttributed(e,n){if(e===null)return this;if(e.indexOf(" ")===-1)return hr._pushAttributed(this,e,n);let a=e.split(/ /g),r=this;for(let i of a)r=hr._pushAttributed(r,i,n);return r}static _pushAttributed(e,n,a){let r=a.getMetadataForScope(n),i=e.scopePath.push(n),o=a.themeProvider.themeMatch(i),s=hr.mergeAttributes(e.tokenAttributes,r,o);return new hr(e,i,s)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(e){let n=[],a=this;for(;a&&a!==e;)n.push({encodedTokenAttributes:a.tokenAttributes,scopeNames:a.scopePath.getExtensionIfDefined(a.parent?.scopePath??null)}),a=a.parent;return a===e?n.reverse():void 0}},yx=class Ko{constructor(e,n,a,r,i,o,s,c){this.parent=e,this.ruleId=n,this.beginRuleCapturedEOL=i,this.endRule=o,this.nameScopesList=s,this.contentNameScopesList=c,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=a,this._anchorPos=r}_stackElementBrand=void 0;static NULL=new Ko(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(e){return e===null?!1:Ko._equals(this,e)}static _equals(e,n){return e===n?!0:this._structuralEquals(e,n)?ld.equals(e.contentNameScopesList,n.contentNameScopesList):!1}static _structuralEquals(e,n){do{if(e===n||!e&&!n)return!0;if(!e||!n||e.depth!==n.depth||e.ruleId!==n.ruleId||e.endRule!==n.endRule)return!1;e=e.parent,n=n.parent}while(!0)}clone(){return this}static _reset(e){for(;e;)e._enterPos=-1,e._anchorPos=-1,e=e.parent}reset(){Ko._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(e,n,a,r,i,o,s){return new Ko(this,e,n,a,r,i,o,s)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(e){return e.getRule(this.ruleId)}toString(){let e=[];return this._writeString(e,0),"["+e.join(",")+"]"}_writeString(e,n){return this.parent&&(n=this.parent._writeString(e,n)),e[n++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,n}withContentNameScopesList(e){return this.contentNameScopesList===e?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,e)}withEndRule(e){return this.endRule===e?this:new Ko(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,e,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(e){let n=this;for(;n&&n._enterPos===e._enterPos;){if(n.ruleId===e.ruleId)return!0;n=n.parent}return!1}toStateStackFrame(){return{ruleId:this.ruleId,beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList??null)??[],contentNameScopesList:this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList)??[]}}static pushFrame(e,n){let a=ld.fromExtension(e?.nameScopesList??null,n.nameScopesList);return new Ko(e,n.ruleId,n.enterPos??-1,n.anchorPos??-1,n.beginRuleCapturedEOL,n.endRule,a,ld.fromExtension(a,n.contentNameScopesList))}},Tle=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(t,e){this.balancedBracketScopes=t.flatMap(n=>n==="*"?(this.allowAny=!0,[]):Mg(n,Gg).map(a=>a.matcher)),this.unbalancedBracketScopes=e.flatMap(n=>Mg(n,Gg).map(a=>a.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(t){for(let e of this.unbalancedBracketScopes)if(e(t))return!1;for(let e of this.balancedBracketScopes)if(e(t))return!0;return this.allowAny}},qle=class{constructor(t,e,n,a){this.balancedBracketSelectors=a,this._emitBinaryTokens=t,this._tokenTypeOverrides=n,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(t,e){this.produceFromScopes(t.contentNameScopesList,e)}produceFromScopes(t,e){if(this._lastTokenEndIndex>=e)return;if(this._emitBinaryTokens){let a=t?.tokenAttributes??0,r=!1;if(this.balancedBracketSelectors?.matchesAlways&&(r=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let i=t?.getScopeNames()??[];for(let o of this._tokenTypeOverrides)o.matcher(i)&&(a=Vi.set(a,0,o.type,null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(i))}if(r&&(a=Vi.set(a,0,8,r,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===a){this._lastTokenEndIndex=e;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(a),this._lastTokenEndIndex=e;return}let n=t?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:e,scopes:n}),this._lastTokenEndIndex=e}getResult(t,e){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===e-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(t,e),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(t,e){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===e-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(t,e),this._binaryTokens[this._binaryTokens.length-2]=0);let n=new Uint32Array(this._binaryTokens.length);for(let a=0,r=this._binaryTokens.length;a<r;a++)n[a]=this._binaryTokens[a];return n}},Gle=class{constructor(t,e){this._onigLib=e,this._theme=t}_grammars=new Map;_rawGrammars=new Map;_injectionGrammars=new Map;_theme;dispose(){for(let t of this._grammars.values())t.dispose()}setTheme(t){this._theme=t}getColorMap(){return this._theme.getColorMap()}addGrammar(t,e){this._rawGrammars.set(t.scopeName,t),e&&this._injectionGrammars.set(t.scopeName,e)}lookup(t){return this._rawGrammars.get(t)}injections(t){return this._injectionGrammars.get(t)}getDefaults(){return this._theme.getDefaults()}themeMatch(t){return this._theme.match(t)}grammarForScopeName(t,e,n,a,r){if(!this._grammars.has(t)){let i=this._rawGrammars.get(t);if(!i)return null;this._grammars.set(t,jle(t,i,e,n,a,r,this,this._onigLib))}return this._grammars.get(t)}},fT=class{_options;_syncRegistry;_ensureGrammarCache;constructor(t){this._options=t,this._syncRegistry=new Gle(Ad.createFromRawTheme(t.theme,t.colorMap),t.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(t,e){this._syncRegistry.setTheme(Ad.createFromRawTheme(t,e))}getColorMap(){return this._syncRegistry.getColorMap()}loadGrammarWithEmbeddedLanguages(t,e,n){return this.loadGrammarWithConfiguration(t,e,{embeddedLanguages:n})}loadGrammarWithConfiguration(t,e,n){return this._loadGrammar(t,e,n.embeddedLanguages,n.tokenTypes,new Tle(n.balancedBracketSelectors||[],n.unbalancedBracketSelectors||[]))}loadGrammar(t){return this._loadGrammar(t,0,null,null,null)}_loadGrammar(t,e,n,a,r){let i=new yle(this._syncRegistry,t);for(;i.Q.length>0;)i.Q.map(o=>this._loadSingleGrammar(o.scopeName)),i.processQueue();return this._grammarForScopeName(t,e,n,a,r)}_loadSingleGrammar(t){this._ensureGrammarCache.has(t)||(this._doLoadSingleGrammar(t),this._ensureGrammarCache.set(t,!0))}_doLoadSingleGrammar(t){let e=this._options.loadGrammar(t);if(e){let n=typeof this._options.getInjections=="function"?this._options.getInjections(t):void 0;this._syncRegistry.addGrammar(e,n)}}addGrammar(t,e=[],n=0,a=null){return this._syncRegistry.addGrammar(t,e),this._grammarForScopeName(t.scopeName,n,a)}_grammarForScopeName(t,e=0,n=null,a=null,r=null){return this._syncRegistry.grammarForScopeName(t,e,n,a,r)}},zg=yx.NULL;var bT=["area","base","basefont","bgsound","br","col","command","embed","frame","hr","image","img","input","keygen","link","meta","param","source","track","wbr"];var Yr=class{constructor(e,n,a){this.normal=n,this.property=e,a&&(this.space=a)}};Yr.prototype.normal={};Yr.prototype.property={};Yr.prototype.space=void 0;function kx(t,e){let n={},a={};for(let r of t)Object.assign(n,r.property),Object.assign(a,r.normal);return new Yr(n,a,e)}function gd(t){return t.toLowerCase()}var Lt=class{constructor(e,n){this.attribute=n,this.property=e}};Lt.prototype.attribute="";Lt.prototype.booleanish=!1;Lt.prototype.boolean=!1;Lt.prototype.commaOrSpaceSeparated=!1;Lt.prototype.commaSeparated=!1;Lt.prototype.defined=!1;Lt.prototype.mustUseProperty=!1;Lt.prototype.number=!1;Lt.prototype.overloadedBoolean=!1;Lt.prototype.property="";Lt.prototype.spaceSeparated=!1;Lt.prototype.space=void 0;var fd={};x(fd,{boolean:()=>pe,booleanish:()=>mt,commaOrSpaceSeparated:()=>Ln,commaSeparated:()=>Xi,number:()=>R,overloadedBoolean:()=>Ug,spaceSeparated:()=>$e});var zle=0,pe=Jo(),mt=Jo(),Ug=Jo(),R=Jo(),$e=Jo(),Xi=Jo(),Ln=Jo();function Jo(){return 2**++zle}var Cx=Object.keys(fd),Vo=class extends Lt{constructor(e,n,a,r){let i=-1;if(super(e,n),hT(this,"space",r),typeof a=="number")for(;++i<Cx.length;){let o=Cx[i];hT(this,Cx[i],(a&fd[o])===fd[o])}}};Vo.prototype.defined=!0;function hT(t,e,n){n&&(t[e]=n)}function Qa(t){let e={},n={};for(let[a,r]of Object.entries(t.properties)){let i=new Vo(a,t.transform(t.attributes||{},a),r,t.space);t.mustUseProperty&&t.mustUseProperty.includes(a)&&(i.mustUseProperty=!0),e[a]=i,n[gd(a)]=a,n[gd(i.attribute)]=a}return new Yr(e,n,t.space)}var _x=Qa({properties:{ariaActiveDescendant:null,ariaAtomic:mt,ariaAutoComplete:null,ariaBusy:mt,ariaChecked:mt,ariaColCount:R,ariaColIndex:R,ariaColSpan:R,ariaControls:$e,ariaCurrent:null,ariaDescribedBy:$e,ariaDetails:null,ariaDisabled:mt,ariaDropEffect:$e,ariaErrorMessage:null,ariaExpanded:mt,ariaFlowTo:$e,ariaGrabbed:mt,ariaHasPopup:null,ariaHidden:mt,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:$e,ariaLevel:R,ariaLive:null,ariaModal:mt,ariaMultiLine:mt,ariaMultiSelectable:mt,ariaOrientation:null,ariaOwns:$e,ariaPlaceholder:null,ariaPosInSet:R,ariaPressed:mt,ariaReadOnly:mt,ariaRelevant:null,ariaRequired:mt,ariaRoleDescription:$e,ariaRowCount:R,ariaRowIndex:R,ariaRowSpan:R,ariaSelected:mt,ariaSetSize:R,ariaSort:null,ariaValueMax:R,ariaValueMin:R,ariaValueNow:R,ariaValueText:null,role:null},transform(t,e){return e==="role"?e:"aria-"+e.slice(4).toLowerCase()}});function Hg(t,e){return e in t?t[e]:e}function Zg(t,e){return Hg(t,e.toLowerCase())}var yT=Qa({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:Xi,acceptCharset:$e,accessKey:$e,action:null,allow:null,allowFullScreen:pe,allowPaymentRequest:pe,allowUserMedia:pe,alt:null,as:null,async:pe,autoCapitalize:null,autoComplete:$e,autoFocus:pe,autoPlay:pe,blocking:$e,capture:null,charSet:null,checked:pe,cite:null,className:$e,cols:R,colSpan:null,content:null,contentEditable:mt,controls:pe,controlsList:$e,coords:R|Xi,crossOrigin:null,data:null,dateTime:null,decoding:null,default:pe,defer:pe,dir:null,dirName:null,disabled:pe,download:Ug,draggable:mt,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:pe,formTarget:null,headers:$e,height:R,hidden:Ug,high:R,href:null,hrefLang:null,htmlFor:$e,httpEquiv:$e,id:null,imageSizes:null,imageSrcSet:null,inert:pe,inputMode:null,integrity:null,is:null,isMap:pe,itemId:null,itemProp:$e,itemRef:$e,itemScope:pe,itemType:$e,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:pe,low:R,manifest:null,max:null,maxLength:R,media:null,method:null,min:null,minLength:R,multiple:pe,muted:pe,name:null,nonce:null,noModule:pe,noValidate:pe,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:pe,optimum:R,pattern:null,ping:$e,placeholder:null,playsInline:pe,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:pe,referrerPolicy:null,rel:$e,required:pe,reversed:pe,rows:R,rowSpan:R,sandbox:$e,scope:null,scoped:pe,seamless:pe,selected:pe,shadowRootClonable:pe,shadowRootDelegatesFocus:pe,shadowRootMode:null,shape:null,size:R,sizes:null,slot:null,span:R,spellCheck:mt,src:null,srcDoc:null,srcLang:null,srcSet:null,start:R,step:null,style:null,tabIndex:R,target:null,title:null,translate:null,type:null,typeMustMatch:pe,useMap:null,value:mt,width:R,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:$e,axis:null,background:null,bgColor:null,border:R,borderColor:null,bottomMargin:R,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:pe,declare:pe,event:null,face:null,frame:null,frameBorder:null,hSpace:R,leftMargin:R,link:null,longDesc:null,lowSrc:null,marginHeight:R,marginWidth:R,noResize:pe,noHref:pe,noShade:pe,noWrap:pe,object:null,profile:null,prompt:null,rev:null,rightMargin:R,rules:null,scheme:null,scrolling:mt,standby:null,summary:null,text:null,topMargin:R,valueType:null,version:null,vAlign:null,vLink:null,vSpace:R,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:pe,disableRemotePlayback:pe,prefix:null,property:null,results:R,security:null,unselectable:null},space:"html",transform:Zg});var wT=Qa({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:Ln,accentHeight:R,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:R,amplitude:R,arabicForm:null,ascent:R,attributeName:null,attributeType:null,azimuth:R,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:R,by:null,calcMode:null,capHeight:R,className:$e,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:R,diffuseConstant:R,direction:null,display:null,dur:null,divisor:R,dominantBaseline:null,download:pe,dx:null,dy:null,edgeMode:null,editable:null,elevation:R,enableBackground:null,end:null,event:null,exponent:R,externalResourcesRequired:null,fill:null,fillOpacity:R,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Xi,g2:Xi,glyphName:Xi,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:R,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:R,horizOriginX:R,horizOriginY:R,id:null,ideographic:R,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:R,k:R,k1:R,k2:R,k3:R,k4:R,kernelMatrix:Ln,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:R,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:R,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:R,overlineThickness:R,paintOrder:null,panose1:null,path:null,pathLength:R,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:$e,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:R,pointsAtY:R,pointsAtZ:R,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Ln,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Ln,rev:Ln,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Ln,requiredFeatures:Ln,requiredFonts:Ln,requiredFormats:Ln,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:R,specularExponent:R,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:R,strikethroughThickness:R,string:null,stroke:null,strokeDashArray:Ln,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:R,strokeOpacity:R,strokeWidth:null,style:null,surfaceScale:R,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Ln,tabIndex:R,tableValues:null,target:null,targetX:R,targetY:R,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Ln,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:R,underlineThickness:R,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:R,values:null,vAlphabetic:R,vMathematical:R,vectorEffect:null,vHanging:R,vIdeographic:R,version:null,vertAdvY:R,vertOriginX:R,vertOriginY:R,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:R,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:Hg});var Bx=Qa({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(t,e){return"xlink:"+e.slice(5).toLowerCase()}});var xx=Qa({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:Zg});var vx=Qa({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(t,e){return"xml:"+e.slice(3).toLowerCase()}});var Ule=/[A-Z]/g,kT=/-[a-z]/g,Hle=/^data[-\w.:]+$/i;function Ex(t,e){let n=gd(e),a=e,r=Lt;if(n in t.normal)return t.property[t.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&Hle.test(e)){if(e.charAt(4)==="-"){let i=e.slice(5).replace(kT,Yle);a="data"+i.charAt(0).toUpperCase()+i.slice(1)}else{let i=e.slice(4);if(!kT.test(i)){let o=i.replace(Ule,Zle);o.charAt(0)!=="-"&&(o="-"+o),e="data"+o}}r=Vo}return new r(a,e)}function Zle(t){return"-"+t.toLowerCase()}function Yle(t){return t.charAt(1).toUpperCase()}var CT=kx([_x,yT,Bx,xx,vx],"html"),Yg=kx([_x,wT,Bx,xx,vx],"svg");var _T={}.hasOwnProperty;function BT(t,e){let n=e||{};function a(r,...i){let o=a.invalid,s=a.handlers;if(r&&_T.call(r,t)){let c=String(r[t]);o=_T.call(s,c)?s[c]:a.unknown}if(o)return o.call(this,r,...i)}return a.handlers=n.handlers||{},a.invalid=n.invalid,a.unknown=n.unknown,a}var Wle=/["&'<>`]/g,Kle=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Jle=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,Vle=/[|\\{}()[\]^$+*?.]/g,xT=new WeakMap;function vT(t,e){if(t=t.replace(e.subset?Xle(e.subset):Wle,a),e.subset||e.escapeOnly)return t;return t.replace(Kle,n).replace(Jle,a);function n(r,i,o){return e.format((r.charCodeAt(0)-55296)*1024+r.charCodeAt(1)-56320+65536,o.charCodeAt(i+2),e)}function a(r,i,o){return e.format(r.charCodeAt(0),o.charCodeAt(i+1),e)}}function Xle(t){let e=xT.get(t);return e||(e=eAe(t),xT.set(t,e)),e}function eAe(t){let e=[],n=-1;for(;++n<t.length;)e.push(t[n].replace(Vle,"\\$&"));return new RegExp("(?:"+e.join("|")+")","g")}var tAe=/[\dA-Fa-f]/;function ET(t,e,n){let a="&#x"+t.toString(16).toUpperCase();return n&&e&&!tAe.test(String.fromCharCode(e))?a:a+";"}var nAe=/\d/;function QT(t,e,n){let a="&#"+String(t);return n&&e&&!nAe.test(String.fromCharCode(e))?a:a+";"}var IT=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"];var Wg={nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",fnof:"\u0192",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",bull:"\u2022",hellip:"\u2026",prime:"\u2032",Prime:"\u2033",oline:"\u203E",frasl:"\u2044",weierp:"\u2118",image:"\u2111",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666",quot:'"',amp:"&",lt:"<",gt:">",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",circ:"\u02C6",tilde:"\u02DC",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",permil:"\u2030",lsaquo:"\u2039",rsaquo:"\u203A",euro:"\u20AC"};var DT=["cent","copy","divide","gt","lt","not","para","times"];var FT={}.hasOwnProperty,Qx={},Kg;for(Kg in Wg)FT.call(Wg,Kg)&&(Qx[Wg[Kg]]=Kg);var aAe=/[^\dA-Za-z]/;function ST(t,e,n,a){let r=String.fromCharCode(t);if(FT.call(Qx,r)){let i=Qx[r],o="&"+i;return n&&IT.includes(i)&&!DT.includes(i)&&(!a||e&&e!==61&&aAe.test(String.fromCharCode(e)))?o:o+";"}return""}function OT(t,e,n){let a=ET(t,e,n.omitOptionalSemicolons),r;if((n.useNamedReferences||n.useShortestReferences)&&(r=ST(t,e,n.omitOptionalSemicolons,n.attribute)),(n.useShortestReferences||!r)&&n.useShortestReferences){let i=QT(t,e,n.omitOptionalSemicolons);i.length<a.length&&(a=i)}return r&&(!n.useShortestReferences||r.length<a.length)?r:a}function Wr(t,e){return vT(t,Object.assign({format:OT},e))}var rAe=/^>|^->|<!--|-->|--!>|<!-$/g,iAe=[">"],oAe=["<",">"];function NT(t,e,n,a){return a.settings.bogusComments?"<?"+Wr(t.value,Object.assign({},a.settings.characterReferences,{subset:iAe}))+">":"<!--"+t.value.replace(rAe,r)+"-->";function r(i){return Wr(i,Object.assign({},a.settings.characterReferences,{subset:oAe}))}}function LT(t,e,n,a){return"<!"+(a.settings.upperDoctype?"DOCTYPE":"doctype")+(a.settings.tightDoctype?"":" ")+"html>"}function Ix(t,e){let n=String(t);if(typeof e!="string")throw new TypeError("Expected character");let a=0,r=n.indexOf(e);for(;r!==-1;)a++,r=n.indexOf(e,r+e.length);return a}function $T(t,e){let n=e||{};return(t[t.length-1]===""?[...t,""]:t).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}function RT(t){return t.join(" ").trim()}var sAe=/[ \t\n\f\r]/g;function Xo(t){return typeof t=="object"?t.type==="text"?jT(t.value):!1:jT(t)}function jT(t){return t.replace(sAe,"")===""}var ht=PT(1),Dx=PT(-1),cAe=[];function PT(t){return e;function e(n,a,r){let i=n?n.children:cAe,o=(a||0)+t,s=i[o];if(!r)for(;s&&Xo(s);)o+=t,s=i[o];return s}}var lAe={}.hasOwnProperty;function Jg(t){return e;function e(n,a,r){return lAe.call(t,n.tagName)&&t[n.tagName](n,a,r)}}var bd=Jg({body:dAe,caption:Fx,colgroup:Fx,dd:gAe,dt:mAe,head:Fx,html:AAe,li:pAe,optgroup:fAe,option:bAe,p:uAe,rp:MT,rt:MT,tbody:yAe,td:TT,tfoot:wAe,th:TT,thead:hAe,tr:kAe});function Fx(t,e,n){let a=ht(n,e,!0);return!a||a.type!=="comment"&&!(a.type==="text"&&Xo(a.value.charAt(0)))}function AAe(t,e,n){let a=ht(n,e);return!a||a.type!=="comment"}function dAe(t,e,n){let a=ht(n,e);return!a||a.type!=="comment"}function uAe(t,e,n){let a=ht(n,e);return a?a.type==="element"&&(a.tagName==="address"||a.tagName==="article"||a.tagName==="aside"||a.tagName==="blockquote"||a.tagName==="details"||a.tagName==="div"||a.tagName==="dl"||a.tagName==="fieldset"||a.tagName==="figcaption"||a.tagName==="figure"||a.tagName==="footer"||a.tagName==="form"||a.tagName==="h1"||a.tagName==="h2"||a.tagName==="h3"||a.tagName==="h4"||a.tagName==="h5"||a.tagName==="h6"||a.tagName==="header"||a.tagName==="hgroup"||a.tagName==="hr"||a.tagName==="main"||a.tagName==="menu"||a.tagName==="nav"||a.tagName==="ol"||a.tagName==="p"||a.tagName==="pre"||a.tagName==="section"||a.tagName==="table"||a.tagName==="ul"):!n||!(n.type==="element"&&(n.tagName==="a"||n.tagName==="audio"||n.tagName==="del"||n.tagName==="ins"||n.tagName==="map"||n.tagName==="noscript"||n.tagName==="video"))}function pAe(t,e,n){let a=ht(n,e);return!a||a.type==="element"&&a.tagName==="li"}function mAe(t,e,n){let a=ht(n,e);return!!(a&&a.type==="element"&&(a.tagName==="dt"||a.tagName==="dd"))}function gAe(t,e,n){let a=ht(n,e);return!a||a.type==="element"&&(a.tagName==="dt"||a.tagName==="dd")}function MT(t,e,n){let a=ht(n,e);return!a||a.type==="element"&&(a.tagName==="rp"||a.tagName==="rt")}function fAe(t,e,n){let a=ht(n,e);return!a||a.type==="element"&&a.tagName==="optgroup"}function bAe(t,e,n){let a=ht(n,e);return!a||a.type==="element"&&(a.tagName==="option"||a.tagName==="optgroup")}function hAe(t,e,n){let a=ht(n,e);return!!(a&&a.type==="element"&&(a.tagName==="tbody"||a.tagName==="tfoot"))}function yAe(t,e,n){let a=ht(n,e);return!a||a.type==="element"&&(a.tagName==="tbody"||a.tagName==="tfoot")}function wAe(t,e,n){return!ht(n,e)}function kAe(t,e,n){let a=ht(n,e);return!a||a.type==="element"&&a.tagName==="tr"}function TT(t,e,n){let a=ht(n,e);return!a||a.type==="element"&&(a.tagName==="td"||a.tagName==="th")}var qT=Jg({body:BAe,colgroup:xAe,head:_Ae,html:CAe,tbody:vAe});function CAe(t){let e=ht(t,-1);return!e||e.type!=="comment"}function _Ae(t){let e=new Set;for(let a of t.children)if(a.type==="element"&&(a.tagName==="base"||a.tagName==="title")){if(e.has(a.tagName))return!1;e.add(a.tagName)}let n=t.children[0];return!n||n.type==="element"}function BAe(t){let e=ht(t,-1,!0);return!e||e.type!=="comment"&&!(e.type==="text"&&Xo(e.value.charAt(0)))&&!(e.type==="element"&&(e.tagName==="meta"||e.tagName==="link"||e.tagName==="script"||e.tagName==="style"||e.tagName==="template"))}function xAe(t,e,n){let a=Dx(n,e),r=ht(t,-1,!0);return n&&a&&a.type==="element"&&a.tagName==="colgroup"&&bd(a,n.children.indexOf(a),n)?!1:!!(r&&r.type==="element"&&r.tagName==="col")}function vAe(t,e,n){let a=Dx(n,e),r=ht(t,-1);return n&&a&&a.type==="element"&&(a.tagName==="thead"||a.tagName==="tbody")&&bd(a,n.children.indexOf(a),n)?!1:!!(r&&r.type==="element"&&r.tagName==="tr")}var Vg={name:[[` +\f\r &/=>`.split(""),` +\f\r "&'/=>\``.split("")],[`\0 +\f\r "&'/<=>`.split(""),`\0 +\f\r "&'/<=>\``.split("")]],unquoted:[[` +\f\r &>`.split(""),`\0 +\f\r "&'<=>\``.split("")],[`\0 +\f\r "&'<=>\``.split(""),`\0 +\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function GT(t,e,n,a){let r=a.schema,i=r.space==="svg"?!1:a.settings.omitOptionalTags,o=r.space==="svg"?a.settings.closeEmptyElements:a.settings.voids.includes(t.tagName.toLowerCase()),s=[],c;r.space==="html"&&t.tagName==="svg"&&(a.schema=Yg);let A=EAe(a,t.properties),d=a.all(r.space==="html"&&t.tagName==="template"?t.content:t);return a.schema=r,d&&(o=!1),(A||!i||!qT(t,e,n))&&(s.push("<",t.tagName,A?" "+A:""),o&&(r.space==="svg"||a.settings.closeSelfClosing)&&(c=A.charAt(A.length-1),(!a.settings.tightSelfClosing||c==="/"||c&&c!=='"'&&c!=="'")&&s.push(" "),s.push("/")),s.push(">")),s.push(d),!o&&(!i||!bd(t,e,n))&&s.push("</"+t.tagName+">"),s.join("")}function EAe(t,e){let n=[],a=-1,r;if(e){for(r in e)if(e[r]!==null&&e[r]!==void 0){let i=QAe(t,r,e[r]);i&&n.push(i)}}for(;++a<n.length;){let i=t.settings.tightAttributes?n[a].charAt(n[a].length-1):void 0;a!==n.length-1&&i!=='"'&&i!=="'"&&(n[a]+=" ")}return n.join("")}function QAe(t,e,n){let a=Ex(t.schema,e),r=t.settings.allowParseErrors&&t.schema.space==="html"?0:1,i=t.settings.allowDangerousCharacters?0:1,o=t.quote,s;if(a.overloadedBoolean&&(n===a.attribute||n==="")?n=!0:(a.boolean||a.overloadedBoolean)&&(typeof n!="string"||n===a.attribute||n==="")&&(n=!!n),n==null||n===!1||typeof n=="number"&&Number.isNaN(n))return"";let c=Wr(a.attribute,Object.assign({},t.settings.characterReferences,{subset:Vg.name[r][i]}));return n===!0||(n=Array.isArray(n)?(a.commaSeparated?$T:RT)(n,{padLeft:!t.settings.tightCommaSeparatedLists}):String(n),t.settings.collapseEmptyAttributes&&!n)?c:(t.settings.preferUnquoted&&(s=Wr(n,Object.assign({},t.settings.characterReferences,{attribute:!0,subset:Vg.unquoted[r][i]}))),s!==n&&(t.settings.quoteSmart&&Ix(n,o)>Ix(n,t.alternative)&&(o=t.alternative),s=o+Wr(n,Object.assign({},t.settings.characterReferences,{subset:(o==="'"?Vg.single:Vg.double)[r][i],attribute:!0}))+o),c+(s&&"="+s))}var IAe=["<","&"];function Xg(t,e,n,a){return n&&n.type==="element"&&(n.tagName==="script"||n.tagName==="style")?t.value:Wr(t.value,Object.assign({},a.settings.characterReferences,{subset:IAe}))}function zT(t,e,n,a){return a.settings.allowDangerousHtml?t.value:Xg(t,e,n,a)}function UT(t,e,n,a){return a.all(t)}var HT=BT("type",{invalid:DAe,unknown:FAe,handlers:{comment:NT,doctype:LT,element:GT,raw:zT,root:UT,text:Xg}});function DAe(t){throw new Error("Expected node, not `"+t+"`")}function FAe(t){let e=t;throw new Error("Cannot compile unknown node `"+e.type+"`")}var SAe={},OAe={},NAe=[];function Sx(t,e){let n=e||SAe,a=n.quote||'"',r=a==='"'?"'":'"';if(a!=='"'&&a!=="'")throw new Error("Invalid quote `"+a+"`, expected `'` or `\"`");return{one:LAe,all:$Ae,settings:{omitOptionalTags:n.omitOptionalTags||!1,allowParseErrors:n.allowParseErrors||!1,allowDangerousCharacters:n.allowDangerousCharacters||!1,quoteSmart:n.quoteSmart||!1,preferUnquoted:n.preferUnquoted||!1,tightAttributes:n.tightAttributes||!1,upperDoctype:n.upperDoctype||!1,tightDoctype:n.tightDoctype||!1,bogusComments:n.bogusComments||!1,tightCommaSeparatedLists:n.tightCommaSeparatedLists||!1,tightSelfClosing:n.tightSelfClosing||!1,collapseEmptyAttributes:n.collapseEmptyAttributes||!1,allowDangerousHtml:n.allowDangerousHtml||!1,voids:n.voids||bT,characterReferences:n.characterReferences||OAe,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space==="svg"?Yg:CT,quote:a,alternative:r}.one(Array.isArray(t)?{type:"root",children:t}:t,void 0,void 0)}function LAe(t,e,n){return HT(t,e,n,this)}function $Ae(t){let e=[],n=t&&t.children||NAe,a=-1;for(;++a<n.length;)e[a]=this.one(n[a],a,t);return e.join("")}function RAe(t){return Ji("import `createOnigurumaEngine` from `@shikijs/engine-oniguruma` or `shiki/engine/oniguruma` instead"),sd(t)}function jAe(t){return Array.isArray(t)?t:[t]}function of(t,e=!1){let n=t.split(/(\r?\n)/g),a=0,r=[];for(let i=0;i<n.length;i+=2){let o=e?n[i]+(n[i+1]||""):n[i];r.push([o,a]),a+=n[i].length,a+=n[i+1]?.length||0}return r}function $x(t){return!t||["plaintext","txt","text","plain"].includes(t)}function XT(t){return t==="ansi"||$x(t)}function Rx(t){return t==="none"}function eq(t){return Rx(t)}function tq(t,e){if(!e)return t;t.properties||={},t.properties.class||=[],typeof t.properties.class=="string"&&(t.properties.class=t.properties.class.split(/\s+/g)),Array.isArray(t.properties.class)||(t.properties.class=[]);let n=Array.isArray(e)?e:e.split(/\s+/g);for(let a of n)a&&!t.properties.class.includes(a)&&t.properties.class.push(a);return t}function PAe(t,e){let n=0,a=[];for(let r of e)r>n&&a.push({...t,content:t.content.slice(n,r),offset:t.offset+n}),n=r;return n<t.content.length&&a.push({...t,content:t.content.slice(n),offset:t.offset+n}),a}function MAe(t,e){let n=Array.from(e instanceof Set?e:new Set(e)).sort((a,r)=>a-r);return n.length?t.map(a=>a.flatMap(r=>{let i=n.filter(o=>r.offset<o&&o<r.offset+r.content.length).map(o=>o-r.offset).sort((o,s)=>o-s);return i.length?PAe(r,i):r})):t}async function nq(t){return Promise.resolve(typeof t=="function"?t():t).then(e=>e.default||e)}function ef(t,e){let n=typeof t=="string"?{}:{...t.colorReplacements},a=typeof t=="string"?t:t.name;for(let[r,i]of Object.entries(e?.colorReplacements||{}))typeof i=="string"?n[r]=i:r===a&&Object.assign(n,i);return n}function es(t,e){return t&&(e?.[t?.toLowerCase()]||t)}function aq(t){let e={};return t.color&&(e.color=t.color),t.bgColor&&(e["background-color"]=t.bgColor),t.fontStyle&&(t.fontStyle&er.Italic&&(e["font-style"]="italic"),t.fontStyle&er.Bold&&(e["font-weight"]="bold"),t.fontStyle&er.Underline&&(e["text-decoration"]="underline")),e}function TAe(t){return typeof t=="string"?t:Object.entries(t).map(([e,n])=>`${e}:${n}`).join(";")}function qAe(t){let e=of(t,!0).map(([r])=>r);function n(r){if(r===t.length)return{line:e.length-1,character:e[e.length-1].length};let i=r,o=0;for(let s of e){if(i<s.length)break;i-=s.length,o++}return{line:o,character:i}}function a(r,i){let o=0;for(let s=0;s<r;s++)o+=e[s].length;return o+=i,o}return{lines:e,indexToPos:n,posToIndex:a}}var Ht=class extends Error{constructor(e){super(e),this.name="ShikiError"}},rq=new WeakMap;function sf(t,e){rq.set(t,e)}function yd(t){return rq.get(t)}var Ic=class t{_stacks={};lang;get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(e,n){return new t(Object.fromEntries(jAe(n).map(a=>[a,zg])),e)}constructor(...e){if(e.length===2){let[n,a]=e;this.lang=a,this._stacks=n}else{let[n,a,r]=e;this.lang=a,this._stacks={[r]:n}}}getInternalStack(e=this.theme){return this._stacks[e]}get scopes(){return Ji("GrammarState.scopes is deprecated, use GrammarState.getScopes() instead"),ZT(this._stacks[this.theme])}getScopes(e=this.theme){return ZT(this._stacks[e])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.scopes}}};function ZT(t){let e=[],n=new Set;function a(r){if(n.has(r))return;n.add(r);let i=r?.nameScopesList?.scopeName;i&&e.push(i),r.parent&&a(r.parent)}return a(t),e}function GAe(t,e){if(!(t instanceof Ic))throw new Ht("Invalid grammar state");return t.getInternalStack(e)}function zAe(){let t=new WeakMap;function e(n){if(!t.has(n.meta)){let a=function(o){if(typeof o=="number"){if(o<0||o>n.source.length)throw new Ht(`Invalid decoration offset: ${o}. Code length: ${n.source.length}`);return{...r.indexToPos(o),offset:o}}else{let s=r.lines[o.line];if(s===void 0)throw new Ht(`Invalid decoration position ${JSON.stringify(o)}. Lines length: ${r.lines.length}`);if(o.character<0||o.character>s.length)throw new Ht(`Invalid decoration position ${JSON.stringify(o)}. Line ${o.line} length: ${s.length}`);return{...o,offset:r.posToIndex(o.line,o.character)}}},r=qAe(n.source),i=(n.options.decorations||[]).map(o=>({...o,start:a(o.start),end:a(o.end)}));UAe(i),t.set(n.meta,{decorations:i,converter:r,source:n.source})}return t.get(n.meta)}return{name:"shiki:decorations",tokens(n){if(!this.options.decorations?.length)return;let r=e(this).decorations.flatMap(o=>[o.start.offset,o.end.offset]);return MAe(n,r)},code(n){if(!this.options.decorations?.length)return;let a=e(this),r=Array.from(n.children).filter(d=>d.type==="element"&&d.tagName==="span");if(r.length!==a.converter.lines.length)throw new Ht(`Number of lines in code element (${r.length}) does not match the number of lines in the source (${a.converter.lines.length}). Failed to apply decorations.`);function i(d,u,p,m){let f=r[d],h="",w=-1,b=-1;if(u===0&&(w=0),p===0&&(b=0),p===Number.POSITIVE_INFINITY&&(b=f.children.length),w===-1||b===-1)for(let k=0;k<f.children.length;k++)h+=iq(f.children[k]),w===-1&&h.length===u&&(w=k+1),b===-1&&h.length===p&&(b=k+1);if(w===-1)throw new Ht(`Failed to find start index for decoration ${JSON.stringify(m.start)}`);if(b===-1)throw new Ht(`Failed to find end index for decoration ${JSON.stringify(m.end)}`);let y=f.children.slice(w,b);if(!m.alwaysWrap&&y.length===f.children.length)s(f,m,"line");else if(!m.alwaysWrap&&y.length===1&&y[0].type==="element")s(y[0],m,"token");else{let k={type:"element",tagName:"span",properties:{},children:y};s(k,m,"wrapper"),f.children.splice(w,y.length,k)}}function o(d,u){r[d]=s(r[d],u,"line")}function s(d,u,p){let m=u.properties||{},f=u.transform||(h=>h);return d.tagName=u.tagName||"span",d.properties={...d.properties,...m,class:d.properties.class},u.properties?.class&&tq(d,u.properties.class),d=f(d,p)||d,d}let c=[],A=a.decorations.sort((d,u)=>u.start.offset-d.start.offset);for(let d of A){let{start:u,end:p}=d;if(u.line===p.line)i(u.line,u.character,p.character,d);else if(u.line<p.line){i(u.line,u.character,Number.POSITIVE_INFINITY,d);for(let m=u.line+1;m<p.line;m++)c.unshift(()=>o(m,d));i(p.line,0,p.character,d)}}c.forEach(d=>d())}}}function UAe(t){for(let e=0;e<t.length;e++){let n=t[e];if(n.start.offset>n.end.offset)throw new Ht(`Invalid decoration range: ${JSON.stringify(n.start)} - ${JSON.stringify(n.end)}`);for(let a=e+1;a<t.length;a++){let r=t[a],i=n.start.offset<r.start.offset&&r.start.offset<n.end.offset,o=n.start.offset<r.end.offset&&r.end.offset<n.end.offset,s=r.start.offset<n.start.offset&&n.start.offset<r.end.offset,c=r.start.offset<n.end.offset&&n.end.offset<r.end.offset;if(i||o||s||c){if(o&&o||s&&c)continue;throw new Ht(`Decorations ${JSON.stringify(n.start)} and ${JSON.stringify(r.start)} intersect.`)}}}}function iq(t){return t.type==="text"?t.value:t.type==="element"?t.children.map(iq).join(""):""}var HAe=[zAe()];function tf(t){return[...t.transformers||[],...HAe]}var ts=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],Ox={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",9:"strikethrough"};function ZAe(t,e){let n=t.indexOf("\x1B[",e);if(n!==-1){let a=t.indexOf("m",n);return{sequence:t.substring(n+2,a).split(";"),startPosition:n,position:a+1}}return{position:t.length}}function YT(t,e){let n=1,a=t[e+n++],r;if(a==="2"){let i=[t[e+n++],t[e+n++],t[e+n]].map(o=>Number.parseInt(o));i.length===3&&!i.some(o=>Number.isNaN(o))&&(r={type:"rgb",rgb:i})}else if(a==="5"){let i=Number.parseInt(t[e+n]);Number.isNaN(i)||(r={type:"table",index:Number(i)})}return[n,r]}function YAe(t){let e=[];for(let n=0;n<t.length;n++){let a=t[n],r=Number.parseInt(a);if(!Number.isNaN(r))if(r===0)e.push({type:"resetAll"});else if(r<=9)Ox[r]&&e.push({type:"setDecoration",value:Ox[r]});else if(r<=29){let i=Ox[r-20];i&&e.push({type:"resetDecoration",value:i})}else if(r<=37)e.push({type:"setForegroundColor",value:{type:"named",name:ts[r-30]}});else if(r===38){let[i,o]=YT(t,n);o&&e.push({type:"setForegroundColor",value:o}),n+=i}else if(r===39)e.push({type:"resetForegroundColor"});else if(r<=47)e.push({type:"setBackgroundColor",value:{type:"named",name:ts[r-40]}});else if(r===48){let[i,o]=YT(t,n);o&&e.push({type:"setBackgroundColor",value:o}),n+=i}else r===49?e.push({type:"resetBackgroundColor"}):r>=90&&r<=97?e.push({type:"setForegroundColor",value:{type:"named",name:ts[r-90+8]}}):r>=100&&r<=107&&e.push({type:"setBackgroundColor",value:{type:"named",name:ts[r-100+8]}})}return e}function WAe(){let t=null,e=null,n=new Set;return{parse(a){let r=[],i=0;do{let o=ZAe(a,i),s=o.sequence?a.substring(i,o.startPosition):a.substring(i);if(s.length>0&&r.push({value:s,foreground:t,background:e,decorations:new Set(n)}),o.sequence){let c=YAe(o.sequence);for(let A of c)A.type==="resetAll"?(t=null,e=null,n.clear()):A.type==="resetForegroundColor"?t=null:A.type==="resetBackgroundColor"?e=null:A.type==="resetDecoration"&&n.delete(A.value);for(let A of c)A.type==="setForegroundColor"?t=A.value:A.type==="setBackgroundColor"?e=A.value:A.type==="setDecoration"&&n.add(A.value)}i=o.position}while(i<a.length);return r}}}var KAe={black:"#000000",red:"#bb0000",green:"#00bb00",yellow:"#bbbb00",blue:"#0000bb",magenta:"#ff00ff",cyan:"#00bbbb",white:"#eeeeee",brightBlack:"#555555",brightRed:"#ff5555",brightGreen:"#00ff00",brightYellow:"#ffff55",brightBlue:"#5555ff",brightMagenta:"#ff55ff",brightCyan:"#55ffff",brightWhite:"#ffffff"};function JAe(t=KAe){function e(s){return t[s]}function n(s){return`#${s.map(c=>Math.max(0,Math.min(c,255)).toString(16).padStart(2,"0")).join("")}`}let a;function r(){if(a)return a;a=[];for(let A=0;A<ts.length;A++)a.push(e(ts[A]));let s=[0,95,135,175,215,255];for(let A=0;A<6;A++)for(let d=0;d<6;d++)for(let u=0;u<6;u++)a.push(n([s[A],s[d],s[u]]));let c=8;for(let A=0;A<24;A++,c+=10)a.push(n([c,c,c]));return a}function i(s){return r()[s]}function o(s){switch(s.type){case"named":return e(s.name);case"rgb":return n(s.rgb);case"table":return i(s.index)}}return{value:o}}function VAe(t,e,n){let a=ef(t,n),r=of(e),i=JAe(Object.fromEntries(ts.map(s=>[s,t.colors?.[`terminal.ansi${s[0].toUpperCase()}${s.substring(1)}`]]))),o=WAe();return r.map(s=>o.parse(s[0]).map(c=>{let A,d;c.decorations.has("reverse")?(A=c.background?i.value(c.background):t.bg,d=c.foreground?i.value(c.foreground):t.fg):(A=c.foreground?i.value(c.foreground):t.fg,d=c.background?i.value(c.background):void 0),A=es(A,a),d=es(d,a),c.decorations.has("dim")&&(A=XAe(A));let u=er.None;return c.decorations.has("bold")&&(u|=er.Bold),c.decorations.has("italic")&&(u|=er.Italic),c.decorations.has("underline")&&(u|=er.Underline),{content:c.value,offset:s[1],color:A,bgColor:d,fontStyle:u}}))}function XAe(t){let e=t.match(/#([0-9a-f]{3})([0-9a-f]{3})?([0-9a-f]{2})?/);if(e)if(e[3]){let a=Math.round(Number.parseInt(e[3],16)/2).toString(16).padStart(2,"0");return`#${e[1]}${e[2]}${a}`}else return e[2]?`#${e[1]}${e[2]}80`:`#${Array.from(e[1]).map(a=>`${a}${a}`).join("")}80`;let n=t.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return n?`var(${n[1]}-dim)`:t}function jx(t,e,n={}){let{lang:a="text",theme:r=t.getLoadedThemes()[0]}=n;if($x(a)||Rx(r))return of(e).map(c=>[{content:c[0],offset:c[1]}]);let{theme:i,colorMap:o}=t.setTheme(r);if(a==="ansi")return VAe(i,e,n);let s=t.getLanguage(a);if(n.grammarState){if(n.grammarState.lang!==s.name)throw new va(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${s.name}"`);if(!n.grammarState.themes.includes(i.name))throw new va(`Grammar state themes "${n.grammarState.themes}" do not contain highlight theme "${i.name}"`)}return tde(e,s,i,o,n)}function ede(...t){if(t.length===2)return yd(t[1]);let[e,n,a={}]=t,{lang:r="text",theme:i=e.getLoadedThemes()[0]}=a;if($x(r)||Rx(i))throw new va("Plain language does not have grammar state");if(r==="ansi")throw new va("ANSI language does not have grammar state");let{theme:o,colorMap:s}=e.setTheme(i),c=e.getLanguage(r);return new Ic(nf(n,c,o,s,a).stateStack,c.name,o.name)}function tde(t,e,n,a,r){let i=nf(t,e,n,a,r),o=new Ic(nf(t,e,n,a,r).stateStack,e.name,n.name);return sf(i.tokens,o),i.tokens}function nf(t,e,n,a,r){let i=ef(n,r),{tokenizeMaxLineLength:o=0,tokenizeTimeLimit:s=500}=r,c=of(t),A=r.grammarState?GAe(r.grammarState,n.name)??zg:r.grammarContextCode!=null?nf(r.grammarContextCode,e,n,a,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:zg,d=[],u=[];for(let p=0,m=c.length;p<m;p++){let[f,h]=c[p];if(f===""){d=[],u.push([]);continue}if(o>0&&f.length>=o){d=[],u.push([{content:f,offset:h,color:"",fontStyle:0}]);continue}let w,b,y;r.includeExplanation&&(w=e.tokenizeLine(f,A),b=w.tokens,y=0);let k=e.tokenizeLine2(f,A,s),E=k.tokens.length/2;for(let Q=0;Q<E;Q++){let D=k.tokens[2*Q],F=Q+1<E?k.tokens[2*Q+2]:f.length;if(D===F)continue;let $=k.tokens[2*Q+1],z=es(a[Vi.getForeground($)],i),U=Vi.getFontStyle($),te={content:f.substring(D,F),offset:h+D,color:z,fontStyle:U};if(r.includeExplanation){let V=[];if(r.includeExplanation!=="scopeName")for(let de of n.settings){let ge;switch(typeof de.scope){case"string":ge=de.scope.split(/,/).map(ze=>ze.trim());break;case"object":ge=de.scope;break;default:continue}V.push({settings:de,selectors:ge.map(ze=>ze.split(/ /))})}te.explanation=[];let fe=0;for(;D+fe<F;){let de=b[y],ge=f.substring(de.startIndex,de.endIndex);fe+=ge.length,te.explanation.push({content:ge,scopes:r.includeExplanation==="scopeName"?nde(de.scopes):ade(V,de.scopes)}),y+=1}}d.push(te)}u.push(d),d=[],A=k.ruleStack}return{tokens:u,stateStack:A}}function nde(t){return t.map(e=>({scopeName:e}))}function ade(t,e){let n=[];for(let a=0,r=e.length;a<r;a++){let i=e[a];n[a]={scopeName:i,themeMatches:ide(t,i,e.slice(0,a))}}return n}function WT(t,e){return t===e||e.substring(0,t.length)===t&&e[t.length]==="."}function rde(t,e,n){if(!WT(t[t.length-1],e))return!1;let a=t.length-2,r=n.length-1;for(;a>=0&&r>=0;)WT(t[a],n[r])&&(a-=1),r-=1;return a===-1}function ide(t,e,n){let a=[];for(let{selectors:r,settings:i}of t)for(let o of r)if(rde(o,e,n)){a.push(i);break}return a}function oq(t,e,n){let a=Object.entries(n.themes).filter(c=>c[1]).map(c=>({color:c[0],theme:c[1]})),r=a.map(c=>{let A=jx(t,e,{...n,theme:c.theme}),d=yd(A),u=typeof c.theme=="string"?c.theme:c.theme.name;return{tokens:A,state:d,theme:u}}),i=ode(...r.map(c=>c.tokens)),o=i[0].map((c,A)=>c.map((d,u)=>{let p={content:d.content,variants:{},offset:d.offset};return"includeExplanation"in n&&n.includeExplanation&&(p.explanation=d.explanation),i.forEach((m,f)=>{let{content:h,explanation:w,offset:b,...y}=m[A][u];p.variants[a[f].color]=y}),p})),s=r[0].state?new Ic(Object.fromEntries(r.map(c=>[c.theme,c.state?.getInternalStack(c.theme)])),r[0].state.lang):void 0;return s&&sf(o,s),o}function ode(...t){let e=t.map(()=>[]),n=t.length;for(let a=0;a<t[0].length;a++){let r=t.map(c=>c[a]),i=e.map(()=>[]);e.forEach((c,A)=>c.push(i[A]));let o=r.map(()=>0),s=r.map(c=>c[0]);for(;s.every(c=>c);){let c=Math.min(...s.map(A=>A.content.length));for(let A=0;A<n;A++){let d=s[A];d.content.length===c?(i[A].push(d),o[A]+=1,s[A]=r[A][o[A]]):(i[A].push({...d,content:d.content.slice(0,c)}),s[A]={...d,content:d.content.slice(c),offset:d.offset+c})}}}return e}function af(t,e,n){let a,r,i,o,s,c;if("themes"in n){let{defaultColor:A="light",cssVariablePrefix:d="--shiki-"}=n,u=Object.entries(n.themes).filter(w=>w[1]).map(w=>({color:w[0],theme:w[1]})).sort((w,b)=>w.color===A?-1:b.color===A?1:0);if(u.length===0)throw new va("`themes` option must not be empty");let p=oq(t,e,n);if(c=yd(p),A&&!u.find(w=>w.color===A))throw new va(`\`themes\` option must contain the defaultColor key \`${A}\``);let m=u.map(w=>t.getTheme(w.theme)),f=u.map(w=>w.color);i=p.map(w=>w.map(b=>sde(b,f,d,A))),c&&sf(i,c);let h=u.map(w=>ef(w.theme,n));r=u.map((w,b)=>(b===0&&A?"":`${d+w.color}:`)+(es(m[b].fg,h[b])||"inherit")).join(";"),a=u.map((w,b)=>(b===0&&A?"":`${d+w.color}-bg:`)+(es(m[b].bg,h[b])||"inherit")).join(";"),o=`shiki-themes ${m.map(w=>w.name).join(" ")}`,s=A?void 0:[r,a].join(";")}else if("theme"in n){let A=ef(n.theme,n);i=jx(t,e,n);let d=t.getTheme(n.theme);a=es(d.bg,A),r=es(d.fg,A),o=d.name,c=yd(i)}else throw new va("Invalid options, either `theme` or `themes` must be provided");return{tokens:i,fg:r,bg:a,themeName:o,rootStyle:s,grammarState:c}}function sde(t,e,n,a){let r={content:t.content,explanation:t.explanation,offset:t.offset},i=e.map(c=>aq(t.variants[c])),o=new Set(i.flatMap(c=>Object.keys(c))),s={};return i.forEach((c,A)=>{for(let d of o){let u=c[d]||"inherit";if(A===0&&a)s[d]=u;else{let p=d==="color"?"":d==="background-color"?"-bg":`-${d}`,m=n+e[A]+(d==="color"?"":p);s[m]=u}}}),r.htmlStyle=s,r}function rf(t,e,n,a={meta:{},options:n,codeToHast:(r,i)=>rf(t,r,i),codeToTokens:(r,i)=>af(t,r,i)}){let r=e;for(let m of tf(n))r=m.preprocess?.call(a,r,n)||r;let{tokens:i,fg:o,bg:s,themeName:c,rootStyle:A,grammarState:d}=af(t,r,n),{mergeWhitespaces:u=!0}=n;u===!0?i=lde(i):u==="never"&&(i=Ade(i));let p={...a,get source(){return r}};for(let m of tf(n))i=m.tokens?.call(p,i)||i;return cde(i,{...n,fg:o,bg:s,themeName:c,rootStyle:A},p,d)}function cde(t,e,n,a=yd(t)){let r=tf(e),i=[],o={type:"root",children:[]},{structure:s="classic",tabindex:c="0"}=e,A={type:"element",tagName:"pre",properties:{class:`shiki ${e.themeName||""}`,style:e.rootStyle||`background-color:${e.bg};color:${e.fg}`,...c!==!1&&c!=null?{tabindex:c.toString()}:{},...Object.fromEntries(Array.from(Object.entries(e.meta||{})).filter(([f])=>!f.startsWith("_")))},children:[]},d={type:"element",tagName:"code",properties:{},children:i},u=[],p={...n,structure:s,addClassToHast:tq,get source(){return n.source},get tokens(){return t},get options(){return e},get root(){return o},get pre(){return A},get code(){return d},get lines(){return u}};if(t.forEach((f,h)=>{h&&(s==="inline"?o.children.push({type:"element",tagName:"br",properties:{},children:[]}):s==="classic"&&i.push({type:"text",value:` +`}));let w={type:"element",tagName:"span",properties:{class:"line"},children:[]},b=0;for(let y of f){let k={type:"element",tagName:"span",properties:{...y.htmlAttrs},children:[{type:"text",value:y.content}]};typeof y.htmlStyle=="string"&&Ji("`htmlStyle` as a string is deprecated. Use an object instead.");let E=TAe(y.htmlStyle||aq(y));E&&(k.properties.style=E);for(let Q of r)k=Q?.span?.call(p,k,h+1,b,w,y)||k;s==="inline"?o.children.push(k):s==="classic"&&w.children.push(k),b+=y.content.length}if(s==="classic"){for(let y of r)w=y?.line?.call(p,w,h+1)||w;u.push(w),i.push(w)}}),s==="classic"){for(let f of r)d=f?.code?.call(p,d)||d;A.children.push(d);for(let f of r)A=f?.pre?.call(p,A)||A;o.children.push(A)}let m=o;for(let f of r)m=f?.root?.call(p,m)||m;return a&&sf(m,a),m}function lde(t){return t.map(e=>{let n=[],a="",r=0;return e.forEach((i,o)=>{let c=!(i.fontStyle&&i.fontStyle&er.Underline);c&&i.content.match(/^\s+$/)&&e[o+1]?(r||(r=i.offset),a+=i.content):a?(c?n.push({...i,offset:r,content:a+i.content}):n.push({content:a,offset:r},i),r=0,a=""):n.push(i)}),n})}function Ade(t){return t.map(e=>e.flatMap(n=>{if(n.content.match(/^\s+$/))return n;let a=n.content.match(/^(\s*)(.*?)(\s*)$/);if(!a)return n;let[,r,i,o]=a;if(!r&&!o)return n;let s=[{...n,offset:n.offset+r.length,content:i}];return r&&s.unshift({content:r,offset:n.offset}),o&&s.push({content:o,offset:n.offset+r.length+i.length}),s}))}function dde(t,e,n){let a={meta:{},options:n,codeToHast:(i,o)=>rf(t,i,o),codeToTokens:(i,o)=>af(t,i,o)},r=Sx(rf(t,e,n,a));for(let i of tf(n))r=i.postprocess?.call(a,r,n)||r;return r}var KT={light:"#333333",dark:"#bbbbbb"},JT={light:"#fffffe",dark:"#1e1e1e"},VT="__shiki_resolved";function Px(t){if(t?.[VT])return t;let e={...t};e.tokenColors&&!e.settings&&(e.settings=e.tokenColors,delete e.tokenColors),e.type||="dark",e.colorReplacements={...e.colorReplacements},e.settings||=[];let{bg:n,fg:a}=e;if(!n||!a){let s=e.settings?e.settings.find(c=>!c.name&&!c.scope):void 0;s?.settings?.foreground&&(a=s.settings.foreground),s?.settings?.background&&(n=s.settings.background),!a&&e?.colors?.["editor.foreground"]&&(a=e.colors["editor.foreground"]),!n&&e?.colors?.["editor.background"]&&(n=e.colors["editor.background"]),a||(a=e.type==="light"?KT.light:KT.dark),n||(n=e.type==="light"?JT.light:JT.dark),e.fg=a,e.bg=n}e.settings[0]&&e.settings[0].settings&&!e.settings[0].scope||e.settings.unshift({settings:{foreground:e.fg,background:e.bg}});let r=0,i=new Map;function o(s){if(i.has(s))return i.get(s);r+=1;let c=`#${r.toString(16).padStart(8,"0").toLowerCase()}`;return e.colorReplacements?.[`#${c}`]?o(s):(i.set(s,c),c)}e.settings=e.settings.map(s=>{let c=s.settings?.foreground&&!s.settings.foreground.startsWith("#"),A=s.settings?.background&&!s.settings.background.startsWith("#");if(!c&&!A)return s;let d={...s,settings:{...s.settings}};if(c){let u=o(s.settings.foreground);e.colorReplacements[u]=s.settings.foreground,d.settings.foreground=u}if(A){let u=o(s.settings.background);e.colorReplacements[u]=s.settings.background,d.settings.background=u}return d});for(let s of Object.keys(e.colors||{}))if((s==="editor.foreground"||s==="editor.background"||s.startsWith("terminal.ansi"))&&!e.colors[s]?.startsWith("#")){let c=o(e.colors[s]);e.colorReplacements[c]=e.colors[s],e.colors[s]=c}return Object.defineProperty(e,VT,{enumerable:!1,writable:!1,value:!0}),e}async function sq(t){return Array.from(new Set((await Promise.all(t.filter(e=>!XT(e)).map(async e=>await nq(e).then(n=>Array.isArray(n)?n:[n])))).flat()))}async function cq(t){return(await Promise.all(t.map(async n=>eq(n)?null:Px(await nq(n))))).filter(n=>!!n)}var Nx=class extends fT{constructor(e,n,a,r={}){super(e),this._resolver=e,this._themes=n,this._langs=a,this._alias=r,this._themes.map(i=>this.loadTheme(i)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(e){return typeof e=="string"?this._resolvedThemes.get(e):this.loadTheme(e)}loadTheme(e){let n=Px(e);return n.name&&(this._resolvedThemes.set(n.name,n),this._loadedThemesCache=null),n}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(e){let n=this._textmateThemeCache.get(e);n||(n=Ad.createFromRawTheme(e),this._textmateThemeCache.set(e,n)),this._syncRegistry.setTheme(n)}getGrammar(e){if(this._alias[e]){let n=new Set([e]);for(;this._alias[e];){if(e=this._alias[e],n.has(e))throw new Ht(`Circular alias \`${Array.from(n).join(" -> ")} -> ${e}\``);n.add(e)}}return this._resolvedGrammars.get(e)}loadLanguage(e){if(this.getGrammar(e.name))return;let n=new Set([...this._langMap.values()].filter(i=>i.embeddedLangsLazy?.includes(e.name)));this._resolver.addLanguage(e);let a={balancedBracketSelectors:e.balancedBracketSelectors||["*"],unbalancedBracketSelectors:e.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(e.scopeName,e);let r=this.loadGrammarWithConfiguration(e.scopeName,1,a);if(r.name=e.name,this._resolvedGrammars.set(e.name,r),e.aliases&&e.aliases.forEach(i=>{this._alias[i]=e.name}),this._loadedLanguagesCache=null,n.size)for(let i of n)this._resolvedGrammars.delete(i.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(i.scopeName),this._syncRegistry?._grammars?.delete(i.scopeName),this.loadLanguage(this._langMap.get(i.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(e){for(let r of e)this.resolveEmbeddedLanguages(r);let n=Array.from(this._langGraph.entries()),a=n.filter(([r,i])=>!i);if(a.length){let r=n.filter(([i,o])=>o&&o.embeddedLangs?.some(s=>a.map(([c])=>c).includes(s))).filter(i=>!a.includes(i));throw new Ht(`Missing languages ${a.map(([i])=>`\`${i}\``).join(", ")}, required by ${r.map(([i])=>`\`${i}\``).join(", ")}`)}for(let[r,i]of n)this._resolver.addLanguage(i);for(let[r,i]of n)this.loadLanguage(i)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(e){if(this._langMap.set(e.name,e),this._langGraph.set(e.name,e),e.embeddedLangs)for(let n of e.embeddedLangs)this._langGraph.set(n,this._langMap.get(n))}},Lx=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(e,n){this._onigLib={createOnigScanner:a=>e.createScanner(a),createOnigString:a=>e.createString(a)},n.forEach(a=>this.addLanguage(a))}get onigLib(){return this._onigLib}getLangRegistration(e){return this._langs.get(e)}loadGrammar(e){return this._scopeToLang.get(e)}addLanguage(e){this._langs.set(e.name,e),e.aliases&&e.aliases.forEach(n=>{this._langs.set(n,e)}),this._scopeToLang.set(e.scopeName,e),e.injectTo&&e.injectTo.forEach(n=>{this._injections.get(n)||this._injections.set(n,[]),this._injections.get(n).push(e.scopeName)})}getInjections(e){let n=e.split("."),a=[];for(let r=1;r<=n.length;r++){let i=n.slice(0,r).join(".");a=[...a,...this._injections.get(i)||[]]}return a}},hd=0;function ude(t){hd+=1,t.warnings!==!1&&hd>=10&&hd%10===0&&console.warn(`[Shiki] ${hd} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let e=!1;if(!t.engine)throw new Ht("`engine` option is required for synchronous mode");let n=(t.langs||[]).flat(1),a=(t.themes||[]).flat(1).map(Px),r=new Lx(t.engine,n),i=new Nx(r,a,n,t.langAlias),o;function s(y){w();let k=i.getGrammar(typeof y=="string"?y:y.name);if(!k)throw new Ht(`Language \`${y}\` not found, you may need to load it first`);return k}function c(y){if(y==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};w();let k=i.getTheme(y);if(!k)throw new Ht(`Theme \`${y}\` not found, you may need to load it first`);return k}function A(y){w();let k=c(y);o!==y&&(i.setTheme(k),o=y);let E=i.getColorMap();return{theme:k,colorMap:E}}function d(){return w(),i.getLoadedThemes()}function u(){return w(),i.getLoadedLanguages()}function p(...y){w(),i.loadLanguages(y.flat(1))}async function m(...y){return p(await sq(y))}function f(...y){w();for(let k of y.flat(1))i.loadTheme(k)}async function h(...y){return w(),f(await cq(y))}function w(){if(e)throw new Ht("Shiki instance has been disposed")}function b(){e||(e=!0,i.dispose(),hd-=1)}return{setTheme:A,getTheme:c,getLanguage:s,getLoadedThemes:d,getLoadedLanguages:u,loadLanguage:m,loadLanguageSync:p,loadTheme:h,loadThemeSync:f,dispose:b,[Symbol.dispose]:b}}async function pde(t={}){t.loadWasm&&Ji("`loadWasm` option is deprecated. Use `engine: createOnigurumaEngine(loadWasm)` instead.");let[e,n,a]=await Promise.all([cq(t.themes||[]),sq(t.langs||[]),t.engine||sd(t.loadWasm||z3())]);return ude({...t,loadWasm:void 0,themes:e,langs:n,engine:a})}async function mde(t={}){let e=await pde(t);return{getLastGrammarState:(...n)=>ede(e,...n),codeToTokensBase:(n,a)=>jx(e,n,a),codeToTokensWithThemes:(n,a)=>oq(e,n,a),codeToTokens:(n,a)=>af(e,n,a),codeToHast:(n,a)=>rf(e,n,a),codeToHtml:(n,a)=>dde(e,n,a),...e,getInternalContext:()=>e}}function lq(t,e,n){let a,r,i;if(e)Ji("`createdBundledHighlighter` signature with `bundledLanguages` and `bundledThemes` is deprecated. Use the options object signature instead."),a=t,r=e,i=()=>RAe(n);else{let s=t;a=s.langs,r=s.themes,i=s.engine}async function o(s){function c(m){if(typeof m=="string"){if(XT(m))return[];let f=a[m];if(!f)throw new va(`Language \`${m}\` is not included in this bundle. You may want to load it from external source.`);return f}return m}function A(m){if(eq(m))return"none";if(typeof m=="string"){let f=r[m];if(!f)throw new va(`Theme \`${m}\` is not included in this bundle. You may want to load it from external source.`);return f}return m}let d=(s.themes??[]).map(m=>A(m)),u=(s.langs??[]).map(m=>c(m)),p=await mde({engine:s.engine??i(),...s,themes:d,langs:u});return{...p,loadLanguage(...m){return p.loadLanguage(...m.map(c))},loadTheme(...m){return p.loadTheme(...m.map(A))}}}return o}function gde(t){let e;async function n(a={}){if(e){let r=await e;return await Promise.all([r.loadTheme(...a.themes||[]),r.loadLanguage(...a.langs||[])]),r}else return e=t({...a,themes:a.themes||[],langs:a.langs||[]}),e}return n}function Aq(t){let e=gde(t);return{getSingletonHighlighter(n){return e(n)},async codeToHtml(n,a){return(await e({langs:[a.lang],themes:"theme"in a?[a.theme]:Object.values(a.themes)})).codeToHtml(n,a)},async codeToHast(n,a){return(await e({langs:[a.lang],themes:"theme"in a?[a.theme]:Object.values(a.themes)})).codeToHast(n,a)},async codeToTokens(n,a){return(await e({langs:[a.lang],themes:"theme"in a?[a.theme]:Object.values(a.themes)})).codeToTokens(n,a)},async codeToTokensBase(n,a){return(await e({langs:[a.lang],themes:[a.theme]})).codeToTokensBase(n,a)},async codeToTokensWithThemes(n,a){return(await e({langs:[a.lang],themes:Object.values(a.themes).filter(Boolean)})).codeToTokensWithThemes(n,a)},async getLastGrammarState(n,a){return(await e({langs:[a.lang],themes:[a.theme]})).getLastGrammarState(n,a)}}}var Tx=lq({langs:rd,themes:q3,engine:()=>sd(Promise.resolve().then(()=>(mq(),pq)))}),{codeToHtml:bde,codeToHast:hde,codeToTokens:yde,codeToTokensBase:wde,codeToTokensWithThemes:kde,getSingletonHighlighter:Cde,getLastGrammarState:_de}=Aq(Tx),qx=t=>(Ji("`getHighlighter` is deprecated. Use `createHighlighter` or `getSingletonHighlighter` instead."),Tx(t));var Dc=null,Gx=null,gq={js:"javascript",jsx:"jsx",ts:"typescript",tsx:"tsx",html:"html",css:"css",json:"json",md:"markdown",markdown:"markdown",bash:"bash",sh:"bash",shell:"bash",xml:"xml"};async function fq(){return Dc||(Gx||(Gx=qx({themes:["github-light","github-dark"],langs:Object.keys(rd)})),Dc=await Gx,Dc)}async function bq(t,e={}){let{language:n="plaintext",theme:a="github-light"}=e;try{let r=await fq(),i=gq[n.toLowerCase()]||n;return r.codeToHtml(t,{lang:i,theme:a})}catch(r){return console.warn("[react-code-view/core] Failed to highlight code:",r),`<pre><code>${zx(t)}</code></pre>`}}function Bde(t,e={}){let{language:n="plaintext",theme:a="github-light"}=e;if(!Dc)return`<pre class="shiki"><code class="language-${n}">${zx(t)}</code></pre>`;try{let r=gq[n.toLowerCase()]||n;return Dc.codeToHtml(t,{lang:r,theme:a})}catch(r){return console.warn("[react-code-view/core] Failed to highlight code synchronously:",r),`<pre class="shiki"><code class="language-${n}">${zx(t)}</code></pre>`}}function zx(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}async function hq(){await fq()}function xde(t={}){let{codeBlockClassName:e="rcv-code-block",theme:n="github-light"}=t,a=new Yi;return a.code=function(r,i){let s=Bde(r,{language:i||"plaintext",theme:n});return`<div class="${e}">${s}</div>`},a}function vde(t){return t.replace(/\\/g,"\\\\").replace(/`/g,"\\`").replace(/\$/g,"\\$")}function yq(t,e={}){let{markedOptions:n={},codeBlockClassName:a,theme:r}=e,i=xde({codeBlockClassName:a,theme:r}),o=J9(t,{renderer:i,...n}),s=typeof o=="string"?vde(o):"",c=typeof o=="string"?o:"";return{code:`export default \`${s}\`;`,html:c,map:null}}var v;(function(t){t[t.NONE=0]="NONE";let n=1;t[t._abstract=n]="_abstract";let a=n+1;t[t._accessor=a]="_accessor";let r=a+1;t[t._as=r]="_as";let i=r+1;t[t._assert=i]="_assert";let o=i+1;t[t._asserts=o]="_asserts";let s=o+1;t[t._async=s]="_async";let c=s+1;t[t._await=c]="_await";let A=c+1;t[t._checks=A]="_checks";let d=A+1;t[t._constructor=d]="_constructor";let u=d+1;t[t._declare=u]="_declare";let p=u+1;t[t._enum=p]="_enum";let m=p+1;t[t._exports=m]="_exports";let f=m+1;t[t._from=f]="_from";let h=f+1;t[t._get=h]="_get";let w=h+1;t[t._global=w]="_global";let b=w+1;t[t._implements=b]="_implements";let y=b+1;t[t._infer=y]="_infer";let k=y+1;t[t._interface=k]="_interface";let E=k+1;t[t._is=E]="_is";let Q=E+1;t[t._keyof=Q]="_keyof";let D=Q+1;t[t._mixins=D]="_mixins";let F=D+1;t[t._module=F]="_module";let $=F+1;t[t._namespace=$]="_namespace";let z=$+1;t[t._of=z]="_of";let U=z+1;t[t._opaque=U]="_opaque";let te=U+1;t[t._out=te]="_out";let V=te+1;t[t._override=V]="_override";let fe=V+1;t[t._private=fe]="_private";let de=fe+1;t[t._protected=de]="_protected";let ge=de+1;t[t._proto=ge]="_proto";let ze=ge+1;t[t._public=ze]="_public";let yt=ze+1;t[t._readonly=yt]="_readonly";let jt=yt+1;t[t._require=jt]="_require";let tt=jt+1;t[t._satisfies=tt]="_satisfies";let _t=tt+1;t[t._set=_t]="_set";let Yt=_t+1;t[t._static=Yt]="_static";let Bt=Yt+1;t[t._symbol=Bt]="_symbol";let Pt=Bt+1;t[t._type=Pt]="_type";let kn=Pt+1;t[t._unique=kn]="_unique";let la=kn+1;t[t._using=la]="_using"})(v||(v={}));var l;(function(t){t[t.PRECEDENCE_MASK=15]="PRECEDENCE_MASK";let n=16;t[t.IS_KEYWORD=n]="IS_KEYWORD";let a=32;t[t.IS_ASSIGN=a]="IS_ASSIGN";let r=64;t[t.IS_RIGHT_ASSOCIATIVE=r]="IS_RIGHT_ASSOCIATIVE";let i=128;t[t.IS_PREFIX=i]="IS_PREFIX";let o=256;t[t.IS_POSTFIX=o]="IS_POSTFIX";let s=512;t[t.IS_EXPRESSION_START=s]="IS_EXPRESSION_START";let c=512;t[t.num=c]="num";let A=1536;t[t.bigint=A]="bigint";let d=2560;t[t.decimal=d]="decimal";let u=3584;t[t.regexp=u]="regexp";let p=4608;t[t.string=p]="string";let m=5632;t[t.name=m]="name";let f=6144;t[t.eof=f]="eof";let h=7680;t[t.bracketL=h]="bracketL";let w=8192;t[t.bracketR=w]="bracketR";let b=9728;t[t.braceL=b]="braceL";let y=10752;t[t.braceBarL=y]="braceBarL";let k=11264;t[t.braceR=k]="braceR";let E=12288;t[t.braceBarR=E]="braceBarR";let Q=13824;t[t.parenL=Q]="parenL";let D=14336;t[t.parenR=D]="parenR";let F=15360;t[t.comma=F]="comma";let $=16384;t[t.semi=$]="semi";let z=17408;t[t.colon=z]="colon";let U=18432;t[t.doubleColon=U]="doubleColon";let te=19456;t[t.dot=te]="dot";let V=20480;t[t.question=V]="question";let fe=21504;t[t.questionDot=fe]="questionDot";let de=22528;t[t.arrow=de]="arrow";let ge=23552;t[t.template=ge]="template";let ze=24576;t[t.ellipsis=ze]="ellipsis";let yt=25600;t[t.backQuote=yt]="backQuote";let jt=27136;t[t.dollarBraceL=jt]="dollarBraceL";let tt=27648;t[t.at=tt]="at";let _t=29184;t[t.hash=_t]="hash";let Yt=29728;t[t.eq=Yt]="eq";let Bt=30752;t[t.assign=Bt]="assign";let Pt=32640;t[t.preIncDec=Pt]="preIncDec";let kn=33664;t[t.postIncDec=kn]="postIncDec";let la=34432;t[t.bang=la]="bang";let ri=35456;t[t.tilde=ri]="tilde";let cs=35841;t[t.pipeline=cs]="pipeline";let Uf=36866;t[t.nullishCoalescing=Uf]="nullishCoalescing";let Hf=37890;t[t.logicalOR=Hf]="logicalOR";let Zf=38915;t[t.logicalAND=Zf]="logicalAND";let Yf=39940;t[t.bitwiseOR=Yf]="bitwiseOR";let Wf=40965;t[t.bitwiseXOR=Wf]="bitwiseXOR";let Kf=41990;t[t.bitwiseAND=Kf]="bitwiseAND";let Jf=43015;t[t.equality=Jf]="equality";let Vf=44040;t[t.lessThan=Vf]="lessThan";let Xf=45064;t[t.greaterThan=Xf]="greaterThan";let eb=46088;t[t.relationalOrEqual=eb]="relationalOrEqual";let tb=47113;t[t.bitShiftL=tb]="bitShiftL";let nb=48137;t[t.bitShiftR=nb]="bitShiftR";let ab=49802;t[t.plus=ab]="plus";let rb=50826;t[t.minus=rb]="minus";let ib=51723;t[t.modulo=ib]="modulo";let ob=52235;t[t.star=ob]="star";let sb=53259;t[t.slash=sb]="slash";let cb=54348;t[t.exponent=cb]="exponent";let lb=55296;t[t.jsxName=lb]="jsxName";let Ab=56320;t[t.jsxText=Ab]="jsxText";let db=57344;t[t.jsxEmptyText=db]="jsxEmptyText";let ub=58880;t[t.jsxTagStart=ub]="jsxTagStart";let pb=59392;t[t.jsxTagEnd=pb]="jsxTagEnd";let mb=60928;t[t.typeParameterStart=mb]="typeParameterStart";let gb=61440;t[t.nonNullAssertion=gb]="nonNullAssertion";let fb=62480;t[t._break=fb]="_break";let bb=63504;t[t._case=bb]="_case";let hb=64528;t[t._catch=hb]="_catch";let yb=65552;t[t._continue=yb]="_continue";let wb=66576;t[t._debugger=wb]="_debugger";let kb=67600;t[t._default=kb]="_default";let Cb=68624;t[t._do=Cb]="_do";let _b=69648;t[t._else=_b]="_else";let Bb=70672;t[t._finally=Bb]="_finally";let xb=71696;t[t._for=xb]="_for";let vb=73232;t[t._function=vb]="_function";let Eb=73744;t[t._if=Eb]="_if";let Qb=74768;t[t._return=Qb]="_return";let Ib=75792;t[t._switch=Ib]="_switch";let Db=77456;t[t._throw=Db]="_throw";let Fb=77840;t[t._try=Fb]="_try";let Sb=78864;t[t._var=Sb]="_var";let Ob=79888;t[t._let=Ob]="_let";let Nb=80912;t[t._const=Nb]="_const";let Lb=81936;t[t._while=Lb]="_while";let $b=82960;t[t._with=$b]="_with";let Rb=84496;t[t._new=Rb]="_new";let jb=85520;t[t._this=jb]="_this";let Pb=86544;t[t._super=Pb]="_super";let Mb=87568;t[t._class=Mb]="_class";let Tb=88080;t[t._extends=Tb]="_extends";let qb=89104;t[t._export=qb]="_export";let Gb=90640;t[t._import=Gb]="_import";let zb=91664;t[t._yield=zb]="_yield";let Ub=92688;t[t._null=Ub]="_null";let Hb=93712;t[t._true=Hb]="_true";let Zb=94736;t[t._false=Zb]="_false";let Yb=95256;t[t._in=Yb]="_in";let Wb=96280;t[t._instanceof=Wb]="_instanceof";let Kb=97936;t[t._typeof=Kb]="_typeof";let Jb=98960;t[t._void=Jb]="_void";let ez=99984;t[t._delete=ez]="_delete";let tz=100880;t[t._async=tz]="_async";let nz=101904;t[t._get=nz]="_get";let az=102928;t[t._set=az]="_set";let rz=103952;t[t._declare=rz]="_declare";let iz=104976;t[t._readonly=iz]="_readonly";let oz=106e3;t[t._abstract=oz]="_abstract";let sz=107024;t[t._static=sz]="_static";let cz=107536;t[t._public=cz]="_public";let lz=108560;t[t._private=lz]="_private";let Az=109584;t[t._protected=Az]="_protected";let dz=110608;t[t._override=dz]="_override";let uz=112144;t[t._as=uz]="_as";let pz=113168;t[t._enum=pz]="_enum";let mz=114192;t[t._type=mz]="_type";let gz=115216;t[t._implements=gz]="_implements"})(l||(l={}));function Ux(t){switch(t){case l.num:return"num";case l.bigint:return"bigint";case l.decimal:return"decimal";case l.regexp:return"regexp";case l.string:return"string";case l.name:return"name";case l.eof:return"eof";case l.bracketL:return"[";case l.bracketR:return"]";case l.braceL:return"{";case l.braceBarL:return"{|";case l.braceR:return"}";case l.braceBarR:return"|}";case l.parenL:return"(";case l.parenR:return")";case l.comma:return",";case l.semi:return";";case l.colon:return":";case l.doubleColon:return"::";case l.dot:return".";case l.question:return"?";case l.questionDot:return"?.";case l.arrow:return"=>";case l.template:return"template";case l.ellipsis:return"...";case l.backQuote:return"`";case l.dollarBraceL:return"${";case l.at:return"@";case l.hash:return"#";case l.eq:return"=";case l.assign:return"_=";case l.preIncDec:return"++/--";case l.postIncDec:return"++/--";case l.bang:return"!";case l.tilde:return"~";case l.pipeline:return"|>";case l.nullishCoalescing:return"??";case l.logicalOR:return"||";case l.logicalAND:return"&&";case l.bitwiseOR:return"|";case l.bitwiseXOR:return"^";case l.bitwiseAND:return"&";case l.equality:return"==/!=";case l.lessThan:return"<";case l.greaterThan:return">";case l.relationalOrEqual:return"<=/>=";case l.bitShiftL:return"<<";case l.bitShiftR:return">>/>>>";case l.plus:return"+";case l.minus:return"-";case l.modulo:return"%";case l.star:return"*";case l.slash:return"/";case l.exponent:return"**";case l.jsxName:return"jsxName";case l.jsxText:return"jsxText";case l.jsxEmptyText:return"jsxEmptyText";case l.jsxTagStart:return"jsxTagStart";case l.jsxTagEnd:return"jsxTagEnd";case l.typeParameterStart:return"typeParameterStart";case l.nonNullAssertion:return"nonNullAssertion";case l._break:return"break";case l._case:return"case";case l._catch:return"catch";case l._continue:return"continue";case l._debugger:return"debugger";case l._default:return"default";case l._do:return"do";case l._else:return"else";case l._finally:return"finally";case l._for:return"for";case l._function:return"function";case l._if:return"if";case l._return:return"return";case l._switch:return"switch";case l._throw:return"throw";case l._try:return"try";case l._var:return"var";case l._let:return"let";case l._const:return"const";case l._while:return"while";case l._with:return"with";case l._new:return"new";case l._this:return"this";case l._super:return"super";case l._class:return"class";case l._extends:return"extends";case l._export:return"export";case l._import:return"import";case l._yield:return"yield";case l._null:return"null";case l._true:return"true";case l._false:return"false";case l._in:return"in";case l._instanceof:return"instanceof";case l._typeof:return"typeof";case l._void:return"void";case l._delete:return"delete";case l._async:return"async";case l._get:return"get";case l._set:return"set";case l._declare:return"declare";case l._readonly:return"readonly";case l._abstract:return"abstract";case l._static:return"static";case l._public:return"public";case l._private:return"private";case l._protected:return"protected";case l._override:return"override";case l._as:return"as";case l._enum:return"enum";case l._type:return"type";case l._implements:return"implements";default:return""}}var $n=class{constructor(e,n,a){this.startTokenIndex=e,this.endTokenIndex=n,this.isFunctionScope=a}},Hx=class{constructor(e,n,a,r,i,o,s,c,A,d,u,p,m){this.potentialArrowAt=e,this.noAnonFunctionType=n,this.inDisallowConditionalTypesContext=a,this.tokensLength=r,this.scopesLength=i,this.pos=o,this.type=s,this.contextualKeyword=c,this.start=A,this.end=d,this.isType=u,this.scopeDepth=p,this.error=m}},wd=class t{constructor(){t.prototype.__init.call(this),t.prototype.__init2.call(this),t.prototype.__init3.call(this),t.prototype.__init4.call(this),t.prototype.__init5.call(this),t.prototype.__init6.call(this),t.prototype.__init7.call(this),t.prototype.__init8.call(this),t.prototype.__init9.call(this),t.prototype.__init10.call(this),t.prototype.__init11.call(this),t.prototype.__init12.call(this),t.prototype.__init13.call(this)}__init(){this.potentialArrowAt=-1}__init2(){this.noAnonFunctionType=!1}__init3(){this.inDisallowConditionalTypesContext=!1}__init4(){this.tokens=[]}__init5(){this.scopes=[]}__init6(){this.pos=0}__init7(){this.type=l.eof}__init8(){this.contextualKeyword=v.NONE}__init9(){this.start=0}__init10(){this.end=0}__init11(){this.isType=!1}__init12(){this.scopeDepth=0}__init13(){this.error=null}snapshot(){return new Hx(this.potentialArrowAt,this.noAnonFunctionType,this.inDisallowConditionalTypesContext,this.tokens.length,this.scopes.length,this.pos,this.type,this.contextualKeyword,this.start,this.end,this.isType,this.scopeDepth,this.error)}restoreFromSnapshot(e){this.potentialArrowAt=e.potentialArrowAt,this.noAnonFunctionType=e.noAnonFunctionType,this.inDisallowConditionalTypesContext=e.inDisallowConditionalTypesContext,this.tokens.length=e.tokensLength,this.scopes.length=e.scopesLength,this.pos=e.pos,this.type=e.type,this.contextualKeyword=e.contextualKeyword,this.start=e.start,this.end=e.end,this.isType=e.isType,this.scopeDepth=e.scopeDepth,this.error=e.error}};var I;(function(t){t[t.backSpace=8]="backSpace";let n=10;t[t.lineFeed=n]="lineFeed";let a=9;t[t.tab=a]="tab";let r=13;t[t.carriageReturn=r]="carriageReturn";let i=14;t[t.shiftOut=i]="shiftOut";let o=32;t[t.space=o]="space";let s=33;t[t.exclamationMark=s]="exclamationMark";let c=34;t[t.quotationMark=c]="quotationMark";let A=35;t[t.numberSign=A]="numberSign";let d=36;t[t.dollarSign=d]="dollarSign";let u=37;t[t.percentSign=u]="percentSign";let p=38;t[t.ampersand=p]="ampersand";let m=39;t[t.apostrophe=m]="apostrophe";let f=40;t[t.leftParenthesis=f]="leftParenthesis";let h=41;t[t.rightParenthesis=h]="rightParenthesis";let w=42;t[t.asterisk=w]="asterisk";let b=43;t[t.plusSign=b]="plusSign";let y=44;t[t.comma=y]="comma";let k=45;t[t.dash=k]="dash";let E=46;t[t.dot=E]="dot";let Q=47;t[t.slash=Q]="slash";let D=48;t[t.digit0=D]="digit0";let F=49;t[t.digit1=F]="digit1";let $=50;t[t.digit2=$]="digit2";let z=51;t[t.digit3=z]="digit3";let U=52;t[t.digit4=U]="digit4";let te=53;t[t.digit5=te]="digit5";let V=54;t[t.digit6=V]="digit6";let fe=55;t[t.digit7=fe]="digit7";let de=56;t[t.digit8=de]="digit8";let ge=57;t[t.digit9=ge]="digit9";let ze=58;t[t.colon=ze]="colon";let yt=59;t[t.semicolon=yt]="semicolon";let jt=60;t[t.lessThan=jt]="lessThan";let tt=61;t[t.equalsTo=tt]="equalsTo";let _t=62;t[t.greaterThan=_t]="greaterThan";let Yt=63;t[t.questionMark=Yt]="questionMark";let Bt=64;t[t.atSign=Bt]="atSign";let Pt=65;t[t.uppercaseA=Pt]="uppercaseA";let kn=66;t[t.uppercaseB=kn]="uppercaseB";let la=67;t[t.uppercaseC=la]="uppercaseC";let ri=68;t[t.uppercaseD=ri]="uppercaseD";let cs=69;t[t.uppercaseE=cs]="uppercaseE";let Uf=70;t[t.uppercaseF=Uf]="uppercaseF";let Hf=71;t[t.uppercaseG=Hf]="uppercaseG";let Zf=72;t[t.uppercaseH=Zf]="uppercaseH";let Yf=73;t[t.uppercaseI=Yf]="uppercaseI";let Wf=74;t[t.uppercaseJ=Wf]="uppercaseJ";let Kf=75;t[t.uppercaseK=Kf]="uppercaseK";let Jf=76;t[t.uppercaseL=Jf]="uppercaseL";let Vf=77;t[t.uppercaseM=Vf]="uppercaseM";let Xf=78;t[t.uppercaseN=Xf]="uppercaseN";let eb=79;t[t.uppercaseO=eb]="uppercaseO";let tb=80;t[t.uppercaseP=tb]="uppercaseP";let nb=81;t[t.uppercaseQ=nb]="uppercaseQ";let ab=82;t[t.uppercaseR=ab]="uppercaseR";let rb=83;t[t.uppercaseS=rb]="uppercaseS";let ib=84;t[t.uppercaseT=ib]="uppercaseT";let ob=85;t[t.uppercaseU=ob]="uppercaseU";let sb=86;t[t.uppercaseV=sb]="uppercaseV";let cb=87;t[t.uppercaseW=cb]="uppercaseW";let lb=88;t[t.uppercaseX=lb]="uppercaseX";let Ab=89;t[t.uppercaseY=Ab]="uppercaseY";let db=90;t[t.uppercaseZ=db]="uppercaseZ";let ub=91;t[t.leftSquareBracket=ub]="leftSquareBracket";let pb=92;t[t.backslash=pb]="backslash";let mb=93;t[t.rightSquareBracket=mb]="rightSquareBracket";let gb=94;t[t.caret=gb]="caret";let fb=95;t[t.underscore=fb]="underscore";let bb=96;t[t.graveAccent=bb]="graveAccent";let hb=97;t[t.lowercaseA=hb]="lowercaseA";let yb=98;t[t.lowercaseB=yb]="lowercaseB";let wb=99;t[t.lowercaseC=wb]="lowercaseC";let kb=100;t[t.lowercaseD=kb]="lowercaseD";let Cb=101;t[t.lowercaseE=Cb]="lowercaseE";let _b=102;t[t.lowercaseF=_b]="lowercaseF";let Bb=103;t[t.lowercaseG=Bb]="lowercaseG";let xb=104;t[t.lowercaseH=xb]="lowercaseH";let vb=105;t[t.lowercaseI=vb]="lowercaseI";let Eb=106;t[t.lowercaseJ=Eb]="lowercaseJ";let Qb=107;t[t.lowercaseK=Qb]="lowercaseK";let Ib=108;t[t.lowercaseL=Ib]="lowercaseL";let Db=109;t[t.lowercaseM=Db]="lowercaseM";let Fb=110;t[t.lowercaseN=Fb]="lowercaseN";let Sb=111;t[t.lowercaseO=Sb]="lowercaseO";let Ob=112;t[t.lowercaseP=Ob]="lowercaseP";let Nb=113;t[t.lowercaseQ=Nb]="lowercaseQ";let Lb=114;t[t.lowercaseR=Lb]="lowercaseR";let $b=115;t[t.lowercaseS=$b]="lowercaseS";let Rb=116;t[t.lowercaseT=Rb]="lowercaseT";let jb=117;t[t.lowercaseU=jb]="lowercaseU";let Pb=118;t[t.lowercaseV=Pb]="lowercaseV";let Mb=119;t[t.lowercaseW=Mb]="lowercaseW";let Tb=120;t[t.lowercaseX=Tb]="lowercaseX";let qb=121;t[t.lowercaseY=qb]="lowercaseY";let Gb=122;t[t.lowercaseZ=Gb]="lowercaseZ";let zb=123;t[t.leftCurlyBrace=zb]="leftCurlyBrace";let Ub=124;t[t.verticalBar=Ub]="verticalBar";let Hb=125;t[t.rightCurlyBrace=Hb]="rightCurlyBrace";let Zb=126;t[t.tilde=Zb]="tilde";let Yb=160;t[t.nonBreakingSpace=Yb]="nonBreakingSpace";let Wb=5760;t[t.oghamSpaceMark=Wb]="oghamSpaceMark";let Kb=8232;t[t.lineSeparator=Kb]="lineSeparator";let Jb=8233;t[t.paragraphSeparator=Jb]="paragraphSeparator"})(I||(I={}));var Fc,me,be,g,j,wq;function ns(){return wq++}function kq(t){if("pos"in t){let e=Ede(t.pos);t.message+=` (${e.line}:${e.column})`,t.loc=e}return t}var Zx=class{constructor(e,n){this.line=e,this.column=n}};function Ede(t){let e=1,n=1;for(let a=0;a<t;a++)j.charCodeAt(a)===I.lineFeed?(e++,n=1):n++;return new Zx(e,n)}function Cq(t,e,n,a){j=t,g=new wd,wq=1,Fc=e,me=n,be=a}function Y(t){return g.contextualKeyword===t}function Sc(t){let e=Kr();return e.type===l.name&&e.contextualKeyword===t}function it(t){return g.contextualKeyword===t&&S(l.name)}function We(t){it(t)||re()}function Zt(){return C(l.eof)||C(l.braceR)||$t()}function $t(){let t=g.tokens[g.tokens.length-1],e=t?t.end:0;for(let n=e;n<g.start;n++){let a=j.charCodeAt(n);if(a===I.lineFeed||a===I.carriageReturn||a===8232||a===8233)return!0}return!1}function cf(){let t=kd();for(let e=g.end;e<t;e++){let n=j.charCodeAt(e);if(n===I.lineFeed||n===I.carriageReturn||n===8232||n===8233)return!0}return!1}function Ia(){return S(l.semi)||Zt()}function Re(){Ia()||re('Unexpected token, expected ";"')}function O(t){S(t)||re(`Unexpected token, expected "${Ux(t)}"`)}function re(t="Unexpected token",e=g.start){if(g.error)return;let n=new SyntaxError(t);n.pos=e,g.error=n,g.pos=j.length,oe(l.eof)}var Yx=[9,11,12,I.space,I.nonBreakingSpace,I.oghamSpaceMark,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279],Wx=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,Kx=new Uint8Array(65536);for(let t of Yx)Kx[t]=1;function Qde(t){if(t<48)return t===36;if(t<58)return!0;if(t<65)return!1;if(t<91)return!0;if(t<97)return t===95;if(t<123)return!0;if(t<128)return!1;throw new Error("Should not be called with non-ASCII char code.")}var yn=new Uint8Array(65536);for(let t=0;t<128;t++)yn[t]=Qde(t)?1:0;for(let t=128;t<65536;t++)yn[t]=1;for(let t of Yx)yn[t]=0;yn[8232]=0;yn[8233]=0;var Jr=yn.slice();for(let t=I.digit0;t<=I.digit9;t++)Jr[t]=0;var Jx=new Int32Array([-1,27,783,918,1755,2376,2862,3483,-1,3699,-1,4617,4752,4833,5130,5508,5940,-1,6480,6939,7749,8181,8451,8613,-1,8829,-1,-1,-1,54,243,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,432,-1,-1,-1,675,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,81,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,108,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,135,-1,-1,-1,-1,-1,-1,-1,-1,-1,162,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,189,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,216,-1,-1,-1,-1,-1,-1,v._abstract<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,270,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,297,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,324,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,351,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,378,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,405,-1,-1,-1,-1,-1,-1,-1,-1,v._accessor<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._as<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,459,-1,-1,-1,-1,-1,594,-1,-1,-1,-1,-1,-1,486,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,513,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,540,-1,-1,-1,-1,-1,-1,v._assert<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,567,-1,-1,-1,-1,-1,-1,-1,v._asserts<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,621,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,648,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._async<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,702,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,729,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,756,-1,-1,-1,-1,-1,-1,v._await<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,810,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,837,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,864,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,891,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._break<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,945,-1,-1,-1,-1,-1,-1,1107,-1,-1,-1,1242,-1,-1,1350,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,972,1026,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,999,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._case<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1053,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1080,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._catch<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1134,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1161,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1188,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1215,-1,-1,-1,-1,-1,-1,-1,v._checks<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1269,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1296,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1323,-1,-1,-1,-1,-1,-1,-1,(l._class<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1377,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1404,1620,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1431,-1,-1,-1,-1,-1,-1,(l._const<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1458,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1485,-1,-1,-1,-1,-1,-1,-1,-1,1512,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1539,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1566,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1593,-1,-1,-1,-1,-1,-1,-1,-1,v._constructor<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1647,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1674,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1701,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1728,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._continue<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1782,-1,-1,-1,-1,-1,-1,-1,-1,-1,2349,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1809,1971,-1,-1,2106,-1,-1,-1,-1,-1,2241,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1836,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1863,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1890,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1917,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1944,-1,-1,-1,-1,-1,-1,-1,-1,(l._debugger<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1998,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2025,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2052,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2079,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._declare<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2133,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2160,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2187,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2214,-1,-1,-1,-1,-1,-1,(l._default<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2268,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2295,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2322,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._delete<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._do<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2403,-1,2484,-1,-1,-1,-1,-1,-1,-1,-1,-1,2565,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2430,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2457,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._else<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2511,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2538,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._enum<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2592,-1,-1,-1,2727,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2619,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2646,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2673,-1,-1,-1,-1,-1,-1,(l._export<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2700,-1,-1,-1,-1,-1,-1,-1,v._exports<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2754,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2781,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2808,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2835,-1,-1,-1,-1,-1,-1,-1,(l._extends<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2889,-1,-1,-1,-1,-1,-1,-1,2997,-1,-1,-1,-1,-1,3159,-1,-1,3213,-1,-1,3294,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2916,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2943,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2970,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._false<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3024,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3051,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3078,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3105,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3132,-1,(l._finally<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3186,-1,-1,-1,-1,-1,-1,-1,-1,(l._for<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3240,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3267,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._from<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3321,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3348,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3375,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3402,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3429,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3456,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._function<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3510,-1,-1,-1,-1,-1,-1,3564,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3537,-1,-1,-1,-1,-1,-1,v._get<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3591,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3618,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3645,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3672,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._global<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3726,-1,-1,-1,-1,-1,-1,3753,4077,-1,-1,-1,-1,4590,-1,-1,-1,-1,-1,-1,-1,(l._if<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3780,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3807,-1,-1,3996,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3834,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3861,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3888,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3915,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3942,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3969,-1,-1,-1,-1,-1,-1,-1,v._implements<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4023,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4050,-1,-1,-1,-1,-1,-1,(l._import<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._in<<1)+1,-1,-1,-1,-1,-1,4104,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4185,4401,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4131,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4158,-1,-1,-1,-1,-1,-1,-1,-1,v._infer<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4212,-1,-1,-1,-1,-1,-1,-1,4239,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4266,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4293,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4320,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4347,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4374,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._instanceof<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4428,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4455,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4482,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4509,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4536,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4563,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._interface<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._is<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4644,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4671,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4698,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4725,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._keyof<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4779,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4806,-1,-1,-1,-1,-1,-1,(l._let<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4860,-1,-1,-1,-1,-1,4995,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4887,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4914,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4941,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4968,-1,-1,-1,-1,-1,-1,-1,v._mixins<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5022,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5049,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5076,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5103,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._module<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5157,-1,-1,-1,5373,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5427,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5184,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5211,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5238,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5265,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5292,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5319,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5346,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._namespace<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5400,-1,-1,-1,(l._new<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5454,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5481,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._null<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5535,-1,-1,-1,-1,-1,-1,-1,-1,-1,5562,-1,-1,-1,-1,5697,5751,-1,-1,-1,-1,v._of<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5589,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5616,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5643,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5670,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._opaque<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5724,-1,-1,-1,-1,-1,-1,v._out<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5778,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5805,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5832,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5859,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5886,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5913,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._override<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5967,-1,-1,6345,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5994,-1,-1,-1,-1,-1,6129,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6021,-1,-1,-1,-1,-1,6048,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6075,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6102,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._private<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6156,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6183,-1,-1,-1,-1,-1,-1,-1,-1,-1,6318,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6210,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6237,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6264,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6291,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._protected<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._proto<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6372,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6399,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6426,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6453,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._public<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6507,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6534,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6696,-1,-1,6831,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6561,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6588,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6615,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6642,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6669,-1,v._readonly<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6723,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6750,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6777,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6804,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._require<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6858,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6885,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6912,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._return<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6966,-1,-1,-1,7182,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7236,7371,-1,7479,-1,7614,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6993,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7020,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7047,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7074,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7101,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7128,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7155,-1,-1,-1,-1,-1,-1,-1,v._satisfies<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7209,-1,-1,-1,-1,-1,-1,v._set<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7263,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7290,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7317,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7344,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._static<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7398,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7425,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7452,-1,-1,-1,-1,-1,-1,-1,-1,(l._super<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7506,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7533,-1,-1,-1,-1,-1,-1,-1,-1,-1,7560,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7587,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._switch<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7641,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7668,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7695,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7722,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._symbol<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7776,-1,-1,-1,-1,-1,-1,-1,-1,-1,7938,-1,-1,-1,-1,-1,-1,8046,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7803,-1,-1,-1,-1,-1,-1,-1,-1,7857,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7830,-1,-1,-1,-1,-1,-1,-1,(l._this<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7884,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7911,-1,-1,-1,(l._throw<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7965,-1,-1,-1,8019,-1,-1,-1,-1,-1,-1,7992,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._true<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._try<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8073,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8100,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._type<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8127,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8154,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._typeof<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8208,-1,-1,-1,-1,8343,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8235,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8262,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8289,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8316,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._unique<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8370,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8397,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8424,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,v._using<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8478,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8532,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8505,-1,-1,-1,-1,-1,-1,-1,-1,(l._var<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8559,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8586,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._void<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8640,8748,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8667,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8694,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8721,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._while<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8775,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8802,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._with<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8856,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8883,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8910,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8937,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,(l._yield<<1)+1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1]);function Vx(){let t=0,e=0,n=g.pos;for(;n<j.length&&(e=j.charCodeAt(n),!(e<I.lowercaseA||e>I.lowercaseZ));){let r=Jx[t+(e-I.lowercaseA)+1];if(r===-1)break;t=r,n++}let a=Jx[t];if(a>-1&&!yn[e]){g.pos=n,a&1?oe(a>>>1):oe(l.name,a>>>1);return}for(;n<j.length;){let r=j.charCodeAt(n);if(yn[r])n++;else if(r===I.backslash){if(n+=2,j.charCodeAt(n)===I.leftCurlyBrace){for(;n<j.length&&j.charCodeAt(n)!==I.rightCurlyBrace;)n++;n++}}else if(r===I.atSign&&j.charCodeAt(n+1)===I.atSign)n+=2;else break}g.pos=n,oe(l.name)}var W;(function(t){t[t.Access=0]="Access";let n=1;t[t.ExportAccess=n]="ExportAccess";let a=n+1;t[t.TopLevelDeclaration=a]="TopLevelDeclaration";let r=a+1;t[t.FunctionScopedDeclaration=r]="FunctionScopedDeclaration";let i=r+1;t[t.BlockScopedDeclaration=i]="BlockScopedDeclaration";let o=i+1;t[t.ObjectShorthandTopLevelDeclaration=o]="ObjectShorthandTopLevelDeclaration";let s=o+1;t[t.ObjectShorthandFunctionScopedDeclaration=s]="ObjectShorthandFunctionScopedDeclaration";let c=s+1;t[t.ObjectShorthandBlockScopedDeclaration=c]="ObjectShorthandBlockScopedDeclaration";let A=c+1;t[t.ObjectShorthand=A]="ObjectShorthand";let d=A+1;t[t.ImportDeclaration=d]="ImportDeclaration";let u=d+1;t[t.ObjectKey=u]="ObjectKey";let p=u+1;t[t.ImportAccess=p]="ImportAccess"})(W||(W={}));var oa;(function(t){t[t.NoChildren=0]="NoChildren";let n=1;t[t.OneChild=n]="OneChild";let a=n+1;t[t.StaticChildren=a]="StaticChildren";let r=a+1;t[t.KeyAfterPropSpread=r]="KeyAfterPropSpread"})(oa||(oa={}));function lf(t){let e=t.identifierRole;return e===W.TopLevelDeclaration||e===W.FunctionScopedDeclaration||e===W.BlockScopedDeclaration||e===W.ObjectShorthandTopLevelDeclaration||e===W.ObjectShorthandFunctionScopedDeclaration||e===W.ObjectShorthandBlockScopedDeclaration}function _q(t){let e=t.identifierRole;return e===W.FunctionScopedDeclaration||e===W.BlockScopedDeclaration||e===W.ObjectShorthandFunctionScopedDeclaration||e===W.ObjectShorthandBlockScopedDeclaration}function Af(t){let e=t.identifierRole;return e===W.TopLevelDeclaration||e===W.ObjectShorthandTopLevelDeclaration||e===W.ImportDeclaration}function Bq(t){let e=t.identifierRole;return e===W.TopLevelDeclaration||e===W.BlockScopedDeclaration||e===W.ObjectShorthandTopLevelDeclaration||e===W.ObjectShorthandBlockScopedDeclaration}function xq(t){let e=t.identifierRole;return e===W.FunctionScopedDeclaration||e===W.ObjectShorthandFunctionScopedDeclaration}function vq(t){return t.identifierRole===W.ObjectShorthandTopLevelDeclaration||t.identifierRole===W.ObjectShorthandBlockScopedDeclaration||t.identifierRole===W.ObjectShorthandFunctionScopedDeclaration}var as=class{constructor(){this.type=g.type,this.contextualKeyword=g.contextualKeyword,this.start=g.start,this.end=g.end,this.scopeDepth=g.scopeDepth,this.isType=g.isType,this.identifierRole=null,this.jsxRole=null,this.shadowsGlobal=!1,this.isAsyncOperation=!1,this.contextId=null,this.rhsEndIndex=null,this.isExpression=!1,this.numNullishCoalesceStarts=0,this.numNullishCoalesceEnds=0,this.isOptionalChainStart=!1,this.isOptionalChainEnd=!1,this.subscriptStartIndex=null,this.nullishStartIndex=null}};function N(){g.tokens.push(new as),a0()}function yr(){g.tokens.push(new as),g.start=g.pos,Gde()}function Eq(){g.type===l.assign&&--g.pos,Mde()}function le(t){for(let n=g.tokens.length-t;n<g.tokens.length;n++)g.tokens[n].isType=!0;let e=g.isType;return g.isType=!0,e}function se(t){g.isType=t}function S(t){return C(t)?(N(),!0):!1}function df(t){let e=g.isType;g.isType=!0,S(t),g.isType=e}function C(t){return g.type===t}function je(){let t=g.snapshot();N();let e=g.type;return g.restoreFromSnapshot(t),e}var e0=class{constructor(e,n){this.type=e,this.contextualKeyword=n}};function Kr(){let t=g.snapshot();N();let e=g.type,n=g.contextualKeyword;return g.restoreFromSnapshot(t),new e0(e,n)}function kd(){return t0(g.pos)}function t0(t){Wx.lastIndex=t;let e=Wx.exec(j);return t+e[0].length}function n0(){return j.charCodeAt(kd())}function a0(){if(i0(),g.start=g.pos,g.pos>=j.length){let t=g.tokens;t.length>=2&&t[t.length-1].start>=j.length&&t[t.length-2].start>=j.length&&re("Unexpectedly reached the end of input."),oe(l.eof);return}Ide(j.charCodeAt(g.pos))}function Ide(t){Jr[t]||t===I.backslash||t===I.atSign&&j.charCodeAt(g.pos+1)===I.atSign?Vx():o0(t)}function Dde(){for(;j.charCodeAt(g.pos)!==I.asterisk||j.charCodeAt(g.pos+1)!==I.slash;)if(g.pos++,g.pos>j.length){re("Unterminated comment",g.pos-2);return}g.pos+=2}function r0(t){let e=j.charCodeAt(g.pos+=t);if(g.pos<j.length)for(;e!==I.lineFeed&&e!==I.carriageReturn&&e!==I.lineSeparator&&e!==I.paragraphSeparator&&++g.pos<j.length;)e=j.charCodeAt(g.pos)}function i0(){for(;g.pos<j.length;){let t=j.charCodeAt(g.pos);switch(t){case I.carriageReturn:j.charCodeAt(g.pos+1)===I.lineFeed&&++g.pos;case I.lineFeed:case I.lineSeparator:case I.paragraphSeparator:++g.pos;break;case I.slash:switch(j.charCodeAt(g.pos+1)){case I.asterisk:g.pos+=2,Dde();break;case I.slash:r0(2);break;default:return}break;default:if(Kx[t])++g.pos;else return}}}function oe(t,e=v.NONE){g.end=g.pos,g.type=t,g.contextualKeyword=e}function Fde(){let t=j.charCodeAt(g.pos+1);if(t>=I.digit0&&t<=I.digit9){Iq(!0);return}t===I.dot&&j.charCodeAt(g.pos+2)===I.dot?(g.pos+=3,oe(l.ellipsis)):(++g.pos,oe(l.dot))}function Sde(){j.charCodeAt(g.pos+1)===I.equalsTo?Ie(l.assign,2):Ie(l.slash,1)}function Ode(t){let e=t===I.asterisk?l.star:l.modulo,n=1,a=j.charCodeAt(g.pos+1);t===I.asterisk&&a===I.asterisk&&(n++,a=j.charCodeAt(g.pos+2),e=l.exponent),a===I.equalsTo&&j.charCodeAt(g.pos+2)!==I.greaterThan&&(n++,e=l.assign),Ie(e,n)}function Nde(t){let e=j.charCodeAt(g.pos+1);if(e===t){j.charCodeAt(g.pos+2)===I.equalsTo?Ie(l.assign,3):Ie(t===I.verticalBar?l.logicalOR:l.logicalAND,2);return}if(t===I.verticalBar){if(e===I.greaterThan){Ie(l.pipeline,2);return}else if(e===I.rightCurlyBrace&&be){Ie(l.braceBarR,2);return}}if(e===I.equalsTo){Ie(l.assign,2);return}Ie(t===I.verticalBar?l.bitwiseOR:l.bitwiseAND,1)}function Lde(){j.charCodeAt(g.pos+1)===I.equalsTo?Ie(l.assign,2):Ie(l.bitwiseXOR,1)}function $de(t){let e=j.charCodeAt(g.pos+1);if(e===t){Ie(l.preIncDec,2);return}e===I.equalsTo?Ie(l.assign,2):t===I.plusSign?Ie(l.plus,1):Ie(l.minus,1)}function Rde(){let t=j.charCodeAt(g.pos+1);if(t===I.lessThan){if(j.charCodeAt(g.pos+2)===I.equalsTo){Ie(l.assign,3);return}g.isType?Ie(l.lessThan,1):Ie(l.bitShiftL,2);return}t===I.equalsTo?Ie(l.relationalOrEqual,2):Ie(l.lessThan,1)}function Qq(){if(g.isType){Ie(l.greaterThan,1);return}let t=j.charCodeAt(g.pos+1);if(t===I.greaterThan){let e=j.charCodeAt(g.pos+2)===I.greaterThan?3:2;if(j.charCodeAt(g.pos+e)===I.equalsTo){Ie(l.assign,e+1);return}Ie(l.bitShiftR,e);return}t===I.equalsTo?Ie(l.relationalOrEqual,2):Ie(l.greaterThan,1)}function uf(){g.type===l.greaterThan&&(g.pos-=1,Qq())}function jde(t){let e=j.charCodeAt(g.pos+1);if(e===I.equalsTo){Ie(l.equality,j.charCodeAt(g.pos+2)===I.equalsTo?3:2);return}if(t===I.equalsTo&&e===I.greaterThan){g.pos+=2,oe(l.arrow);return}Ie(t===I.equalsTo?l.eq:l.bang,1)}function Pde(){let t=j.charCodeAt(g.pos+1),e=j.charCodeAt(g.pos+2);t===I.questionMark&&!(be&&g.isType)?e===I.equalsTo?Ie(l.assign,3):Ie(l.nullishCoalescing,2):t===I.dot&&!(e>=I.digit0&&e<=I.digit9)?(g.pos+=2,oe(l.questionDot)):(++g.pos,oe(l.question))}function o0(t){switch(t){case I.numberSign:++g.pos,oe(l.hash);return;case I.dot:Fde();return;case I.leftParenthesis:++g.pos,oe(l.parenL);return;case I.rightParenthesis:++g.pos,oe(l.parenR);return;case I.semicolon:++g.pos,oe(l.semi);return;case I.comma:++g.pos,oe(l.comma);return;case I.leftSquareBracket:++g.pos,oe(l.bracketL);return;case I.rightSquareBracket:++g.pos,oe(l.bracketR);return;case I.leftCurlyBrace:be&&j.charCodeAt(g.pos+1)===I.verticalBar?Ie(l.braceBarL,2):(++g.pos,oe(l.braceL));return;case I.rightCurlyBrace:++g.pos,oe(l.braceR);return;case I.colon:j.charCodeAt(g.pos+1)===I.colon?Ie(l.doubleColon,2):(++g.pos,oe(l.colon));return;case I.questionMark:Pde();return;case I.atSign:++g.pos,oe(l.at);return;case I.graveAccent:++g.pos,oe(l.backQuote);return;case I.digit0:{let e=j.charCodeAt(g.pos+1);if(e===I.lowercaseX||e===I.uppercaseX||e===I.lowercaseO||e===I.uppercaseO||e===I.lowercaseB||e===I.uppercaseB){Tde();return}}case I.digit1:case I.digit2:case I.digit3:case I.digit4:case I.digit5:case I.digit6:case I.digit7:case I.digit8:case I.digit9:Iq(!1);return;case I.quotationMark:case I.apostrophe:qde(t);return;case I.slash:Sde();return;case I.percentSign:case I.asterisk:Ode(t);return;case I.verticalBar:case I.ampersand:Nde(t);return;case I.caret:Lde();return;case I.plusSign:case I.dash:$de(t);return;case I.lessThan:Rde();return;case I.greaterThan:Qq();return;case I.equalsTo:case I.exclamationMark:jde(t);return;case I.tilde:Ie(l.tilde,1);return;default:break}re(`Unexpected character '${String.fromCharCode(t)}'`,g.pos)}function Ie(t,e){g.pos+=e,oe(t)}function Mde(){let t=g.pos,e=!1,n=!1;for(;;){if(g.pos>=j.length){re("Unterminated regular expression",t);return}let a=j.charCodeAt(g.pos);if(e)e=!1;else{if(a===I.leftSquareBracket)n=!0;else if(a===I.rightSquareBracket&&n)n=!1;else if(a===I.slash&&!n)break;e=a===I.backslash}++g.pos}++g.pos,zde(),oe(l.regexp)}function Xx(){for(;;){let t=j.charCodeAt(g.pos);if(t>=I.digit0&&t<=I.digit9||t===I.underscore)g.pos++;else break}}function Tde(){for(g.pos+=2;;){let e=j.charCodeAt(g.pos);if(e>=I.digit0&&e<=I.digit9||e>=I.lowercaseA&&e<=I.lowercaseF||e>=I.uppercaseA&&e<=I.uppercaseF||e===I.underscore)g.pos++;else break}j.charCodeAt(g.pos)===I.lowercaseN?(++g.pos,oe(l.bigint)):oe(l.num)}function Iq(t){let e=!1,n=!1;t||Xx();let a=j.charCodeAt(g.pos);if(a===I.dot&&(++g.pos,Xx(),a=j.charCodeAt(g.pos)),(a===I.uppercaseE||a===I.lowercaseE)&&(a=j.charCodeAt(++g.pos),(a===I.plusSign||a===I.dash)&&++g.pos,Xx(),a=j.charCodeAt(g.pos)),a===I.lowercaseN?(++g.pos,e=!0):a===I.lowercaseM&&(++g.pos,n=!0),e){oe(l.bigint);return}if(n){oe(l.decimal);return}oe(l.num)}function qde(t){for(g.pos++;;){if(g.pos>=j.length){re("Unterminated string constant");return}let e=j.charCodeAt(g.pos);if(e===I.backslash)g.pos++;else if(e===t)break;g.pos++}g.pos++,oe(l.string)}function Gde(){for(;;){if(g.pos>=j.length){re("Unterminated template");return}let t=j.charCodeAt(g.pos);if(t===I.graveAccent||t===I.dollarSign&&j.charCodeAt(g.pos+1)===I.leftCurlyBrace){if(g.pos===g.start&&C(l.template))if(t===I.dollarSign){g.pos+=2,oe(l.dollarBraceL);return}else{++g.pos,oe(l.backQuote);return}oe(l.template);return}t===I.backslash&&g.pos++,g.pos++}}function zde(){for(;g.pos<j.length;){let t=j.charCodeAt(g.pos);if(yn[t])g.pos++;else if(t===I.backslash){if(g.pos+=2,j.charCodeAt(g.pos)===I.leftCurlyBrace){for(;g.pos<j.length&&j.charCodeAt(g.pos)!==I.rightCurlyBrace;)g.pos++;g.pos++}}else break}}function wr(t,e=t.currentIndex()){let n=e+1;if(pf(t,n)){let a=t.identifierNameAtIndex(e);return{isType:!1,leftName:a,rightName:a,endIndex:n}}if(n++,pf(t,n))return{isType:!0,leftName:null,rightName:null,endIndex:n};if(n++,pf(t,n))return{isType:!1,leftName:t.identifierNameAtIndex(e),rightName:t.identifierNameAtIndex(e+2),endIndex:n};if(n++,pf(t,n))return{isType:!0,leftName:null,rightName:null,endIndex:n};throw new Error(`Unexpected import/export specifier at ${e}`)}function pf(t,e){let n=t.tokens[e];return n.type===l.braceR||n.type===l.comma}var Dq=new Map([["quot",'"'],["amp","&"],["apos","'"],["lt","<"],["gt",">"],["nbsp","\xA0"],["iexcl","\xA1"],["cent","\xA2"],["pound","\xA3"],["curren","\xA4"],["yen","\xA5"],["brvbar","\xA6"],["sect","\xA7"],["uml","\xA8"],["copy","\xA9"],["ordf","\xAA"],["laquo","\xAB"],["not","\xAC"],["shy","\xAD"],["reg","\xAE"],["macr","\xAF"],["deg","\xB0"],["plusmn","\xB1"],["sup2","\xB2"],["sup3","\xB3"],["acute","\xB4"],["micro","\xB5"],["para","\xB6"],["middot","\xB7"],["cedil","\xB8"],["sup1","\xB9"],["ordm","\xBA"],["raquo","\xBB"],["frac14","\xBC"],["frac12","\xBD"],["frac34","\xBE"],["iquest","\xBF"],["Agrave","\xC0"],["Aacute","\xC1"],["Acirc","\xC2"],["Atilde","\xC3"],["Auml","\xC4"],["Aring","\xC5"],["AElig","\xC6"],["Ccedil","\xC7"],["Egrave","\xC8"],["Eacute","\xC9"],["Ecirc","\xCA"],["Euml","\xCB"],["Igrave","\xCC"],["Iacute","\xCD"],["Icirc","\xCE"],["Iuml","\xCF"],["ETH","\xD0"],["Ntilde","\xD1"],["Ograve","\xD2"],["Oacute","\xD3"],["Ocirc","\xD4"],["Otilde","\xD5"],["Ouml","\xD6"],["times","\xD7"],["Oslash","\xD8"],["Ugrave","\xD9"],["Uacute","\xDA"],["Ucirc","\xDB"],["Uuml","\xDC"],["Yacute","\xDD"],["THORN","\xDE"],["szlig","\xDF"],["agrave","\xE0"],["aacute","\xE1"],["acirc","\xE2"],["atilde","\xE3"],["auml","\xE4"],["aring","\xE5"],["aelig","\xE6"],["ccedil","\xE7"],["egrave","\xE8"],["eacute","\xE9"],["ecirc","\xEA"],["euml","\xEB"],["igrave","\xEC"],["iacute","\xED"],["icirc","\xEE"],["iuml","\xEF"],["eth","\xF0"],["ntilde","\xF1"],["ograve","\xF2"],["oacute","\xF3"],["ocirc","\xF4"],["otilde","\xF5"],["ouml","\xF6"],["divide","\xF7"],["oslash","\xF8"],["ugrave","\xF9"],["uacute","\xFA"],["ucirc","\xFB"],["uuml","\xFC"],["yacute","\xFD"],["thorn","\xFE"],["yuml","\xFF"],["OElig","\u0152"],["oelig","\u0153"],["Scaron","\u0160"],["scaron","\u0161"],["Yuml","\u0178"],["fnof","\u0192"],["circ","\u02C6"],["tilde","\u02DC"],["Alpha","\u0391"],["Beta","\u0392"],["Gamma","\u0393"],["Delta","\u0394"],["Epsilon","\u0395"],["Zeta","\u0396"],["Eta","\u0397"],["Theta","\u0398"],["Iota","\u0399"],["Kappa","\u039A"],["Lambda","\u039B"],["Mu","\u039C"],["Nu","\u039D"],["Xi","\u039E"],["Omicron","\u039F"],["Pi","\u03A0"],["Rho","\u03A1"],["Sigma","\u03A3"],["Tau","\u03A4"],["Upsilon","\u03A5"],["Phi","\u03A6"],["Chi","\u03A7"],["Psi","\u03A8"],["Omega","\u03A9"],["alpha","\u03B1"],["beta","\u03B2"],["gamma","\u03B3"],["delta","\u03B4"],["epsilon","\u03B5"],["zeta","\u03B6"],["eta","\u03B7"],["theta","\u03B8"],["iota","\u03B9"],["kappa","\u03BA"],["lambda","\u03BB"],["mu","\u03BC"],["nu","\u03BD"],["xi","\u03BE"],["omicron","\u03BF"],["pi","\u03C0"],["rho","\u03C1"],["sigmaf","\u03C2"],["sigma","\u03C3"],["tau","\u03C4"],["upsilon","\u03C5"],["phi","\u03C6"],["chi","\u03C7"],["psi","\u03C8"],["omega","\u03C9"],["thetasym","\u03D1"],["upsih","\u03D2"],["piv","\u03D6"],["ensp","\u2002"],["emsp","\u2003"],["thinsp","\u2009"],["zwnj","\u200C"],["zwj","\u200D"],["lrm","\u200E"],["rlm","\u200F"],["ndash","\u2013"],["mdash","\u2014"],["lsquo","\u2018"],["rsquo","\u2019"],["sbquo","\u201A"],["ldquo","\u201C"],["rdquo","\u201D"],["bdquo","\u201E"],["dagger","\u2020"],["Dagger","\u2021"],["bull","\u2022"],["hellip","\u2026"],["permil","\u2030"],["prime","\u2032"],["Prime","\u2033"],["lsaquo","\u2039"],["rsaquo","\u203A"],["oline","\u203E"],["frasl","\u2044"],["euro","\u20AC"],["image","\u2111"],["weierp","\u2118"],["real","\u211C"],["trade","\u2122"],["alefsym","\u2135"],["larr","\u2190"],["uarr","\u2191"],["rarr","\u2192"],["darr","\u2193"],["harr","\u2194"],["crarr","\u21B5"],["lArr","\u21D0"],["uArr","\u21D1"],["rArr","\u21D2"],["dArr","\u21D3"],["hArr","\u21D4"],["forall","\u2200"],["part","\u2202"],["exist","\u2203"],["empty","\u2205"],["nabla","\u2207"],["isin","\u2208"],["notin","\u2209"],["ni","\u220B"],["prod","\u220F"],["sum","\u2211"],["minus","\u2212"],["lowast","\u2217"],["radic","\u221A"],["prop","\u221D"],["infin","\u221E"],["ang","\u2220"],["and","\u2227"],["or","\u2228"],["cap","\u2229"],["cup","\u222A"],["int","\u222B"],["there4","\u2234"],["sim","\u223C"],["cong","\u2245"],["asymp","\u2248"],["ne","\u2260"],["equiv","\u2261"],["le","\u2264"],["ge","\u2265"],["sub","\u2282"],["sup","\u2283"],["nsub","\u2284"],["sube","\u2286"],["supe","\u2287"],["oplus","\u2295"],["otimes","\u2297"],["perp","\u22A5"],["sdot","\u22C5"],["lceil","\u2308"],["rceil","\u2309"],["lfloor","\u230A"],["rfloor","\u230B"],["lang","\u2329"],["rang","\u232A"],["loz","\u25CA"],["spades","\u2660"],["clubs","\u2663"],["hearts","\u2665"],["diams","\u2666"]]);function Cd(t){let[e,n]=Fq(t.jsxPragma||"React.createElement"),[a,r]=Fq(t.jsxFragmentPragma||"React.Fragment");return{base:e,suffix:n,fragmentBase:a,fragmentSuffix:r}}function Fq(t){let e=t.indexOf(".");return e===-1&&(e=t.length),[t.slice(0,e),t.slice(e)]}var Xe=class{getPrefixCode(){return""}getHoistedCode(){return""}getSuffixCode(){return""}};var _d=class t extends Xe{__init(){this.lastLineNumber=1}__init2(){this.lastIndex=0}__init3(){this.filenameVarName=null}__init4(){this.esmAutomaticImportNameResolutions={}}__init5(){this.cjsAutomaticModuleNameResolutions={}}constructor(e,n,a,r,i){super(),this.rootTransformer=e,this.tokens=n,this.importProcessor=a,this.nameManager=r,this.options=i,t.prototype.__init.call(this),t.prototype.__init2.call(this),t.prototype.__init3.call(this),t.prototype.__init4.call(this),t.prototype.__init5.call(this),this.jsxPragmaInfo=Cd(i),this.isAutomaticRuntime=i.jsxRuntime==="automatic",this.jsxImportSource=i.jsxImportSource||"react"}process(){return this.tokens.matches1(l.jsxTagStart)?(this.processJSXTag(),!0):!1}getPrefixCode(){let e="";if(this.filenameVarName&&(e+=`const ${this.filenameVarName} = ${JSON.stringify(this.options.filePath||"")};`),this.isAutomaticRuntime)if(this.importProcessor)for(let[n,a]of Object.entries(this.cjsAutomaticModuleNameResolutions))e+=`var ${a} = require("${n}");`;else{let{createElement:n,...a}=this.esmAutomaticImportNameResolutions;n&&(e+=`import {createElement as ${n}} from "${this.jsxImportSource}";`);let r=Object.entries(a).map(([i,o])=>`${i} as ${o}`).join(", ");if(r){let i=this.jsxImportSource+(this.options.production?"/jsx-runtime":"/jsx-dev-runtime");e+=`import {${r}} from "${i}";`}}return e}processJSXTag(){let{jsxRole:e,start:n}=this.tokens.currentToken(),a=this.options.production?null:this.getElementLocationCode(n);this.isAutomaticRuntime&&e!==oa.KeyAfterPropSpread?this.transformTagToJSXFunc(a,e):this.transformTagToCreateElement(a)}getElementLocationCode(e){return`lineNumber: ${this.getLineNumberForIndex(e)}`}getLineNumberForIndex(e){let n=this.tokens.code;for(;this.lastIndex<e&&this.lastIndex<n.length;)n[this.lastIndex]===` +`&&this.lastLineNumber++,this.lastIndex++;return this.lastLineNumber}transformTagToJSXFunc(e,n){let a=n===oa.StaticChildren;this.tokens.replaceToken(this.getJSXFuncInvocationCode(a));let r=null;if(this.tokens.matches1(l.jsxTagEnd))this.tokens.replaceToken(`${this.getFragmentCode()}, {`),this.processAutomaticChildrenAndEndProps(n);else{if(this.processTagIntro(),this.tokens.appendCode(", {"),r=this.processProps(!0),this.tokens.matches2(l.slash,l.jsxTagEnd))this.tokens.appendCode("}");else if(this.tokens.matches1(l.jsxTagEnd))this.tokens.removeToken(),this.processAutomaticChildrenAndEndProps(n);else throw new Error("Expected either /> or > at the end of the tag.");r&&this.tokens.appendCode(`, ${r}`)}for(this.options.production||(r===null&&this.tokens.appendCode(", void 0"),this.tokens.appendCode(`, ${a}, ${this.getDevSource(e)}, this`)),this.tokens.removeInitialToken();!this.tokens.matches1(l.jsxTagEnd);)this.tokens.removeToken();this.tokens.replaceToken(")")}transformTagToCreateElement(e){if(this.tokens.replaceToken(this.getCreateElementInvocationCode()),this.tokens.matches1(l.jsxTagEnd))this.tokens.replaceToken(`${this.getFragmentCode()}, null`),this.processChildren(!0);else if(this.processTagIntro(),this.processPropsObjectWithDevInfo(e),!this.tokens.matches2(l.slash,l.jsxTagEnd))if(this.tokens.matches1(l.jsxTagEnd))this.tokens.removeToken(),this.processChildren(!0);else throw new Error("Expected either /> or > at the end of the tag.");for(this.tokens.removeInitialToken();!this.tokens.matches1(l.jsxTagEnd);)this.tokens.removeToken();this.tokens.replaceToken(")")}getJSXFuncInvocationCode(e){return this.options.production?e?this.claimAutoImportedFuncInvocation("jsxs","/jsx-runtime"):this.claimAutoImportedFuncInvocation("jsx","/jsx-runtime"):this.claimAutoImportedFuncInvocation("jsxDEV","/jsx-dev-runtime")}getCreateElementInvocationCode(){if(this.isAutomaticRuntime)return this.claimAutoImportedFuncInvocation("createElement","");{let{jsxPragmaInfo:e}=this;return`${this.importProcessor&&this.importProcessor.getIdentifierReplacement(e.base)||e.base}${e.suffix}(`}}getFragmentCode(){if(this.isAutomaticRuntime)return this.claimAutoImportedName("Fragment",this.options.production?"/jsx-runtime":"/jsx-dev-runtime");{let{jsxPragmaInfo:e}=this;return(this.importProcessor&&this.importProcessor.getIdentifierReplacement(e.fragmentBase)||e.fragmentBase)+e.fragmentSuffix}}claimAutoImportedFuncInvocation(e,n){let a=this.claimAutoImportedName(e,n);return this.importProcessor?`${a}.call(void 0, `:`${a}(`}claimAutoImportedName(e,n){if(this.importProcessor){let a=this.jsxImportSource+n;return this.cjsAutomaticModuleNameResolutions[a]||(this.cjsAutomaticModuleNameResolutions[a]=this.importProcessor.getFreeIdentifierForPath(a)),`${this.cjsAutomaticModuleNameResolutions[a]}.${e}`}else return this.esmAutomaticImportNameResolutions[e]||(this.esmAutomaticImportNameResolutions[e]=this.nameManager.claimFreeName(`_${e}`)),this.esmAutomaticImportNameResolutions[e]}processTagIntro(){let e=this.tokens.currentIndex()+1;for(;this.tokens.tokens[e].isType||!this.tokens.matches2AtIndex(e-1,l.jsxName,l.jsxName)&&!this.tokens.matches2AtIndex(e-1,l.greaterThan,l.jsxName)&&!this.tokens.matches1AtIndex(e,l.braceL)&&!this.tokens.matches1AtIndex(e,l.jsxTagEnd)&&!this.tokens.matches2AtIndex(e,l.slash,l.jsxTagEnd);)e++;if(e===this.tokens.currentIndex()+1){let n=this.tokens.identifierName();s0(n)&&this.tokens.replaceToken(`'${n}'`)}for(;this.tokens.currentIndex()<e;)this.rootTransformer.processToken()}processPropsObjectWithDevInfo(e){let n=this.options.production?"":`__self: this, __source: ${this.getDevSource(e)}`;if(!this.tokens.matches1(l.jsxName)&&!this.tokens.matches1(l.braceL)){n?this.tokens.appendCode(`, {${n}}`):this.tokens.appendCode(", null");return}this.tokens.appendCode(", {"),this.processProps(!1),n?this.tokens.appendCode(` ${n}}`):this.tokens.appendCode("}")}processProps(e){let n=null;for(;;){if(this.tokens.matches2(l.jsxName,l.eq)){let a=this.tokens.identifierName();if(e&&a==="key"){n!==null&&this.tokens.appendCode(n.replace(/[^\n]/g,"")),this.tokens.removeToken(),this.tokens.removeToken();let r=this.tokens.snapshot();this.processPropValue(),n=this.tokens.dangerouslyGetAndRemoveCodeSinceSnapshot(r);continue}else this.processPropName(a),this.tokens.replaceToken(": "),this.processPropValue()}else if(this.tokens.matches1(l.jsxName)){let a=this.tokens.identifierName();this.processPropName(a),this.tokens.appendCode(": true")}else if(this.tokens.matches1(l.braceL))this.tokens.replaceToken(""),this.rootTransformer.processBalancedCode(),this.tokens.replaceToken("");else break;this.tokens.appendCode(",")}return n}processPropName(e){e.includes("-")?this.tokens.replaceToken(`'${e}'`):this.tokens.copyToken()}processPropValue(){this.tokens.matches1(l.braceL)?(this.tokens.replaceToken(""),this.rootTransformer.processBalancedCode(),this.tokens.replaceToken("")):this.tokens.matches1(l.jsxTagStart)?this.processJSXTag():this.processStringPropValue()}processStringPropValue(){let e=this.tokens.currentToken(),n=this.tokens.code.slice(e.start+1,e.end-1),a=Sq(n),r=Hde(n);this.tokens.replaceToken(r+a)}processAutomaticChildrenAndEndProps(e){e===oa.StaticChildren?(this.tokens.appendCode(" children: ["),this.processChildren(!1),this.tokens.appendCode("]}")):(e===oa.OneChild&&this.tokens.appendCode(" children: "),this.processChildren(!1),this.tokens.appendCode("}"))}processChildren(e){let n=e;for(;;){if(this.tokens.matches2(l.jsxTagStart,l.slash))return;let a=!1;if(this.tokens.matches1(l.braceL))this.tokens.matches2(l.braceL,l.braceR)?(this.tokens.replaceToken(""),this.tokens.replaceToken("")):(this.tokens.replaceToken(n?", ":""),this.rootTransformer.processBalancedCode(),this.tokens.replaceToken(""),a=!0);else if(this.tokens.matches1(l.jsxTagStart))this.tokens.appendCode(n?", ":""),this.processJSXTag(),a=!0;else if(this.tokens.matches1(l.jsxText)||this.tokens.matches1(l.jsxEmptyText))a=this.processChildTextElement(n);else throw new Error("Unexpected token when processing JSX children.");a&&(n=!0)}}processChildTextElement(e){let n=this.tokens.currentToken(),a=this.tokens.code.slice(n.start,n.end),r=Sq(a),i=Ude(a);return i==='""'?(this.tokens.replaceToken(r),!1):(this.tokens.replaceToken(`${e?", ":""}${i}${r}`),!0)}getDevSource(e){return`{fileName: ${this.getFilenameVarName()}, ${e}}`}getFilenameVarName(){return this.filenameVarName||(this.filenameVarName=this.nameManager.claimFreeName("_jsxFileName")),this.filenameVarName}};function s0(t){let e=t.charCodeAt(0);return e>=I.lowercaseA&&e<=I.lowercaseZ}function Ude(t){let e="",n="",a=!1,r=!1;for(let i=0;i<t.length;i++){let o=t[i];if(o===" "||o===" "||o==="\r")a||(n+=o);else if(o===` +`)n="",a=!0;else{if(r&&a&&(e+=" "),e+=n,n="",o==="&"){let{entity:s,newI:c}=Oq(t,i+1);i=c-1,e+=s}else e+=o;r=!0,a=!1}}return a||(e+=n),JSON.stringify(e)}function Sq(t){let e=0,n=0;for(let a of t)a===` +`?(e++,n=0):a===" "&&n++;return` +`.repeat(e)+" ".repeat(n)}function Hde(t){let e="";for(let n=0;n<t.length;n++){let a=t[n];if(a===` +`)if(/\s/.test(t[n+1]))for(e+=" ";n<t.length&&/\s/.test(t[n+1]);)n++;else e+=` +`;else if(a==="&"){let{entity:r,newI:i}=Oq(t,n+1);e+=r,n=i-1}else e+=a}return JSON.stringify(e)}function Oq(t,e){let n="",a=0,r,i=e;if(t[i]==="#"){let o=10;i++;let s;if(t[i]==="x")for(o=16,i++,s=i;i<t.length&&Yde(t.charCodeAt(i));)i++;else for(s=i;i<t.length&&Zde(t.charCodeAt(i));)i++;if(t[i]===";"){let c=t.slice(s,i);c&&(i++,r=String.fromCodePoint(parseInt(c,o)))}}else for(;i<t.length&&a++<10;){let o=t[i];if(i++,o===";"){r=Dq.get(n);break}n+=o}return r?{entity:r,newI:i}:{entity:"&",newI:e}}function Zde(t){return t>=I.digit0&&t<=I.digit9}function Yde(t){return t>=I.digit0&&t<=I.digit9||t>=I.lowercaseA&&t<=I.lowercaseF||t>=I.uppercaseA&&t<=I.uppercaseF}function mf(t,e){let n=Cd(e),a=new Set;for(let r=0;r<t.tokens.length;r++){let i=t.tokens[r];if(i.type===l.name&&!i.isType&&(i.identifierRole===W.Access||i.identifierRole===W.ObjectShorthand||i.identifierRole===W.ExportAccess)&&!i.shadowsGlobal&&a.add(t.identifierNameForToken(i)),i.type===l.jsxTagStart&&a.add(n.base),i.type===l.jsxTagStart&&r+1<t.tokens.length&&t.tokens[r+1].type===l.jsxTagEnd&&(a.add(n.base),a.add(n.fragmentBase)),i.type===l.jsxName&&i.identifierRole===W.Access){let o=t.identifierNameForToken(i);(!s0(o)||t.tokens[r+1].type===l.dot)&&a.add(t.identifierNameForToken(i))}}return a}var Bd=class t{__init(){this.nonTypeIdentifiers=new Set}__init2(){this.importInfoByPath=new Map}__init3(){this.importsToReplace=new Map}__init4(){this.identifierReplacements=new Map}__init5(){this.exportBindingsByLocalName=new Map}constructor(e,n,a,r,i,o,s){this.nameManager=e,this.tokens=n,this.enableLegacyTypeScriptModuleInterop=a,this.options=r,this.isTypeScriptTransformEnabled=i,this.keepUnusedImports=o,this.helperManager=s,t.prototype.__init.call(this),t.prototype.__init2.call(this),t.prototype.__init3.call(this),t.prototype.__init4.call(this),t.prototype.__init5.call(this)}preprocessTokens(){for(let e=0;e<this.tokens.tokens.length;e++)this.tokens.matches1AtIndex(e,l._import)&&!this.tokens.matches3AtIndex(e,l._import,l.name,l.eq)&&this.preprocessImportAtIndex(e),this.tokens.matches1AtIndex(e,l._export)&&!this.tokens.matches2AtIndex(e,l._export,l.eq)&&this.preprocessExportAtIndex(e);this.generateImportReplacements()}pruneTypeOnlyImports(){this.nonTypeIdentifiers=mf(this.tokens,this.options);for(let[e,n]of this.importInfoByPath.entries()){if(n.hasBareImport||n.hasStarExport||n.exportStarNames.length>0||n.namedExports.length>0)continue;[...n.defaultNames,...n.wildcardNames,...n.namedImports.map(({localName:r})=>r)].every(r=>this.shouldAutomaticallyElideImportedName(r))&&this.importsToReplace.set(e,"")}}shouldAutomaticallyElideImportedName(e){return this.isTypeScriptTransformEnabled&&!this.keepUnusedImports&&!this.nonTypeIdentifiers.has(e)}generateImportReplacements(){for(let[e,n]of this.importInfoByPath.entries()){let{defaultNames:a,wildcardNames:r,namedImports:i,namedExports:o,exportStarNames:s,hasStarExport:c}=n;if(a.length===0&&r.length===0&&i.length===0&&o.length===0&&s.length===0&&!c){this.importsToReplace.set(e,`require('${e}');`);continue}let A=this.getFreeIdentifierForPath(e),d;this.enableLegacyTypeScriptModuleInterop?d=A:d=r.length>0?r[0]:this.getFreeIdentifierForPath(e);let u=`var ${A} = require('${e}');`;if(r.length>0)for(let p of r){let m=this.enableLegacyTypeScriptModuleInterop?A:`${this.helperManager.getHelperName("interopRequireWildcard")}(${A})`;u+=` var ${p} = ${m};`}else s.length>0&&d!==A?u+=` var ${d} = ${this.helperManager.getHelperName("interopRequireWildcard")}(${A});`:a.length>0&&d!==A&&(u+=` var ${d} = ${this.helperManager.getHelperName("interopRequireDefault")}(${A});`);for(let{importedName:p,localName:m}of o)u+=` ${this.helperManager.getHelperName("createNamedExportFrom")}(${A}, '${m}', '${p}');`;for(let p of s)u+=` exports.${p} = ${d};`;c&&(u+=` ${this.helperManager.getHelperName("createStarExport")}(${A});`),this.importsToReplace.set(e,u);for(let p of a)this.identifierReplacements.set(p,`${d}.default`);for(let{importedName:p,localName:m}of i)this.identifierReplacements.set(m,`${A}.${p}`)}}getFreeIdentifierForPath(e){let n=e.split("/"),r=n[n.length-1].replace(/\W/g,"");return this.nameManager.claimFreeName(`_${r}`)}preprocessImportAtIndex(e){let n=[],a=[],r=[];if(e++,(this.tokens.matchesContextualAtIndex(e,v._type)||this.tokens.matches1AtIndex(e,l._typeof))&&!this.tokens.matches1AtIndex(e+1,l.comma)&&!this.tokens.matchesContextualAtIndex(e+1,v._from)||this.tokens.matches1AtIndex(e,l.parenL))return;if(this.tokens.matches1AtIndex(e,l.name)&&(n.push(this.tokens.identifierNameAtIndex(e)),e++,this.tokens.matches1AtIndex(e,l.comma)&&e++),this.tokens.matches1AtIndex(e,l.star)&&(e+=2,a.push(this.tokens.identifierNameAtIndex(e)),e++),this.tokens.matches1AtIndex(e,l.braceL)){let s=this.getNamedImports(e+1);e=s.newIndex;for(let c of s.namedImports)c.importedName==="default"?n.push(c.localName):r.push(c)}if(this.tokens.matchesContextualAtIndex(e,v._from)&&e++,!this.tokens.matches1AtIndex(e,l.string))throw new Error("Expected string token at the end of import statement.");let i=this.tokens.stringValueAtIndex(e),o=this.getImportInfo(i);o.defaultNames.push(...n),o.wildcardNames.push(...a),o.namedImports.push(...r),n.length===0&&a.length===0&&r.length===0&&(o.hasBareImport=!0)}preprocessExportAtIndex(e){if(this.tokens.matches2AtIndex(e,l._export,l._var)||this.tokens.matches2AtIndex(e,l._export,l._let)||this.tokens.matches2AtIndex(e,l._export,l._const))this.preprocessVarExportAtIndex(e);else if(this.tokens.matches2AtIndex(e,l._export,l._function)||this.tokens.matches2AtIndex(e,l._export,l._class)){let n=this.tokens.identifierNameAtIndex(e+2);this.addExportBinding(n,n)}else if(this.tokens.matches3AtIndex(e,l._export,l.name,l._function)){let n=this.tokens.identifierNameAtIndex(e+3);this.addExportBinding(n,n)}else this.tokens.matches2AtIndex(e,l._export,l.braceL)?this.preprocessNamedExportAtIndex(e):this.tokens.matches2AtIndex(e,l._export,l.star)&&this.preprocessExportStarAtIndex(e)}preprocessVarExportAtIndex(e){let n=0;for(let a=e+2;;a++)if(this.tokens.matches1AtIndex(a,l.braceL)||this.tokens.matches1AtIndex(a,l.dollarBraceL)||this.tokens.matches1AtIndex(a,l.bracketL))n++;else if(this.tokens.matches1AtIndex(a,l.braceR)||this.tokens.matches1AtIndex(a,l.bracketR))n--;else{if(n===0&&!this.tokens.matches1AtIndex(a,l.name))break;if(this.tokens.matches1AtIndex(1,l.eq)){let r=this.tokens.currentToken().rhsEndIndex;if(r==null)throw new Error("Expected = token with an end index.");a=r-1}else{let r=this.tokens.tokens[a];if(lf(r)){let i=this.tokens.identifierNameAtIndex(a);this.identifierReplacements.set(i,`exports.${i}`)}}}}preprocessNamedExportAtIndex(e){e+=2;let{newIndex:n,namedImports:a}=this.getNamedImports(e);if(e=n,this.tokens.matchesContextualAtIndex(e,v._from))e++;else{for(let{importedName:o,localName:s}of a)this.addExportBinding(o,s);return}if(!this.tokens.matches1AtIndex(e,l.string))throw new Error("Expected string token at the end of import statement.");let r=this.tokens.stringValueAtIndex(e);this.getImportInfo(r).namedExports.push(...a)}preprocessExportStarAtIndex(e){let n=null;if(this.tokens.matches3AtIndex(e,l._export,l.star,l._as)?(e+=3,n=this.tokens.identifierNameAtIndex(e),e+=2):e+=3,!this.tokens.matches1AtIndex(e,l.string))throw new Error("Expected string token at the end of star export statement.");let a=this.tokens.stringValueAtIndex(e),r=this.getImportInfo(a);n!==null?r.exportStarNames.push(n):r.hasStarExport=!0}getNamedImports(e){let n=[];for(;;){if(this.tokens.matches1AtIndex(e,l.braceR)){e++;break}let a=wr(this.tokens,e);if(e=a.endIndex,a.isType||n.push({importedName:a.leftName,localName:a.rightName}),this.tokens.matches2AtIndex(e,l.comma,l.braceR)){e+=2;break}else if(this.tokens.matches1AtIndex(e,l.braceR)){e++;break}else if(this.tokens.matches1AtIndex(e,l.comma))e++;else throw new Error(`Unexpected token: ${JSON.stringify(this.tokens.tokens[e])}`)}return{newIndex:e,namedImports:n}}getImportInfo(e){let n=this.importInfoByPath.get(e);if(n)return n;let a={defaultNames:[],wildcardNames:[],namedImports:[],namedExports:[],hasBareImport:!1,exportStarNames:[],hasStarExport:!1};return this.importInfoByPath.set(e,a),a}addExportBinding(e,n){this.exportBindingsByLocalName.has(e)||this.exportBindingsByLocalName.set(e,[]),this.exportBindingsByLocalName.get(e).push(n)}claimImportCode(e){let n=this.importsToReplace.get(e);return this.importsToReplace.set(e,""),n||""}getIdentifierReplacement(e){return this.identifierReplacements.get(e)||null}resolveExportBinding(e){let n=this.exportBindingsByLocalName.get(e);return!n||n.length===0?null:n.map(a=>`exports.${a}`).join(" = ")}getGlobalNames(){return new Set([...this.identifierReplacements.keys(),...this.exportBindingsByLocalName.keys()])}};var Wde=44,Kde=59,Nq="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Rq=new Uint8Array(64),Jde=new Uint8Array(128);for(let t=0;t<Nq.length;t++){let e=Nq.charCodeAt(t);Rq[t]=e,Jde[e]=t}function xd(t,e,n){let a=e-n;a=a<0?-a<<1|1:a<<1;do{let r=a&31;a>>>=5,a>0&&(r|=32),t.write(Rq[r])}while(a>0);return e}var Lq=1024*16,$q=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(t){return Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString()}}:{decode(t){let e="";for(let n=0;n<t.length;n++)e+=String.fromCharCode(t[n]);return e}},Vde=class{constructor(){this.pos=0,this.out="",this.buffer=new Uint8Array(Lq)}write(t){let{buffer:e}=this;e[this.pos++]=t,this.pos===Lq&&(this.out+=$q.decode(e),this.pos=0)}flush(){let{buffer:t,out:e,pos:n}=this;return n>0?e+$q.decode(t.subarray(0,n)):e}};function c0(t){let e=new Vde,n=0,a=0,r=0,i=0;for(let o=0;o<t.length;o++){let s=t[o];if(o>0&&e.write(Kde),s.length===0)continue;let c=0;for(let A=0;A<s.length;A++){let d=s[A];A>0&&e.write(Wde),c=xd(e,d[0],c),d.length!==1&&(n=xd(e,d[1],n),a=xd(e,d[2],a),r=xd(e,d[3],r),d.length!==4&&(i=xd(e,d[4],i)))}}return e.flush()}var Xde=Pn(jq(),1);var d0=class{constructor(){this._indexes={__proto__:null},this.array=[]}};function eue(t,e){return t._indexes[e]}function Pq(t,e){let n=eue(t,e);if(n!==void 0)return n;let{array:a,_indexes:r}=t,i=a.push(e);return r[e]=i-1}var tue=0,nue=1,aue=2,rue=3,iue=4,Tq=-1,qq=class{constructor({file:t,sourceRoot:e}={}){this._names=new d0,this._sources=new d0,this._sourcesContent=[],this._mappings=[],this.file=t,this.sourceRoot=e,this._ignoreList=new d0}};var gf=(t,e,n,a,r,i,o,s)=>sue(!0,t,e,n,a,r,i,o,s);function oue(t){let{_mappings:e,_sources:n,_sourcesContent:a,_names:r,_ignoreList:i}=t;return Aue(e),{version:3,file:t.file||void 0,names:r.array,sourceRoot:t.sourceRoot||void 0,sources:n.array,sourcesContent:a,mappings:e,ignoreList:i.array}}function Gq(t){let e=oue(t);return Object.assign({},e,{mappings:c0(e.mappings)})}function sue(t,e,n,a,r,i,o,s,c){let{_mappings:A,_sources:d,_sourcesContent:u,_names:p}=e,m=cue(A,n),f=lue(m,a);if(!r)return t&&due(m,f)?void 0:Mq(m,f,[a]);let h=Pq(d,r),w=s?Pq(p,s):Tq;if(h===u.length&&(u[h]=c??null),!(t&&uue(m,f,h,i,o,w)))return Mq(m,f,s?[a,h,i,o,w]:[a,h,i,o])}function cue(t,e){for(let n=t.length;n<=e;n++)t[n]=[];return t[e]}function lue(t,e){let n=t.length;for(let a=n-1;a>=0;n=a--){let r=t[a];if(e>=r[tue])break}return n}function Mq(t,e,n){for(let a=t.length;a>e;a--)t[a]=t[a-1];t[e]=n}function Aue(t){let{length:e}=t,n=e;for(let a=n-1;a>=0&&!(t[a].length>0);n=a,a--);n<e&&(t.length=n)}function due(t,e){return e===0?!0:t[e-1].length===1}function uue(t,e,n,a,r,i){if(e===0)return!1;let o=t[e-1];return o.length===1?!1:n===o[nue]&&a===o[aue]&&r===o[rue]&&i===(o.length===5?o[iue]:Tq)}function u0({code:t,mappings:e},n,a,r,i){let o=pue(r,i),s=new qq({file:a.compiledFilename}),c=0,A=e[0];for(;A===void 0&&c<e.length-1;)c++,A=e[c];let d=0,u=0;A!==u&&gf(s,d,0,n,d,0);for(let h=0;h<t.length;h++){if(h===A){let w=A-u,b=o[c];for(gf(s,d,w,n,d,b);(A===h||A===void 0)&&c<e.length-1;)c++,A=e[c]}t.charCodeAt(h)===I.lineFeed&&(d++,u=h+1,A!==u&&gf(s,d,0,n,d,0))}let{sourceRoot:p,sourcesContent:m,...f}=Gq(s);return f}function pue(t,e){let n=new Array(e.length),a=0,r=e[a].start,i=0;for(let o=0;o<t.length;o++)o===r&&(n[a]=r-i,a++,r=e[a].start),t.charCodeAt(o)===I.lineFeed&&(i=o+1);return n}var mue={require:` + import {createRequire as CREATE_REQUIRE_NAME} from "module"; + const require = CREATE_REQUIRE_NAME(import.meta.url); + `,interopRequireWildcard:` + function interopRequireWildcard(obj) { + if (obj && obj.__esModule) { + return obj; + } else { + var newObj = {}; + if (obj != null) { + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) { + newObj[key] = obj[key]; + } + } + } + newObj.default = obj; + return newObj; + } + } + `,interopRequireDefault:` + function interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { default: obj }; + } + `,createNamedExportFrom:` + function createNamedExportFrom(obj, localName, importedName) { + Object.defineProperty(exports, localName, {enumerable: true, configurable: true, get: () => obj[importedName]}); + } + `,createStarExport:` + function createStarExport(obj) { + Object.keys(obj) + .filter((key) => key !== "default" && key !== "__esModule") + .forEach((key) => { + if (exports.hasOwnProperty(key)) { + return; + } + Object.defineProperty(exports, key, {enumerable: true, configurable: true, get: () => obj[key]}); + }); + } + `,nullishCoalesce:` + function nullishCoalesce(lhs, rhsFn) { + if (lhs != null) { + return lhs; + } else { + return rhsFn(); + } + } + `,asyncNullishCoalesce:` + async function asyncNullishCoalesce(lhs, rhsFn) { + if (lhs != null) { + return lhs; + } else { + return await rhsFn(); + } + } + `,optionalChain:` + function optionalChain(ops) { + let lastAccessLHS = undefined; + let value = ops[0]; + let i = 1; + while (i < ops.length) { + const op = ops[i]; + const fn = ops[i + 1]; + i += 2; + if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { + return undefined; + } + if (op === 'access' || op === 'optionalAccess') { + lastAccessLHS = value; + value = fn(value); + } else if (op === 'call' || op === 'optionalCall') { + value = fn((...args) => value.call(lastAccessLHS, ...args)); + lastAccessLHS = undefined; + } + } + return value; + } + `,asyncOptionalChain:` + async function asyncOptionalChain(ops) { + let lastAccessLHS = undefined; + let value = ops[0]; + let i = 1; + while (i < ops.length) { + const op = ops[i]; + const fn = ops[i + 1]; + i += 2; + if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { + return undefined; + } + if (op === 'access' || op === 'optionalAccess') { + lastAccessLHS = value; + value = await fn(value); + } else if (op === 'call' || op === 'optionalCall') { + value = await fn((...args) => value.call(lastAccessLHS, ...args)); + lastAccessLHS = undefined; + } + } + return value; + } + `,optionalChainDelete:` + function optionalChainDelete(ops) { + const result = OPTIONAL_CHAIN_NAME(ops); + return result == null ? true : result; + } + `,asyncOptionalChainDelete:` + async function asyncOptionalChainDelete(ops) { + const result = await ASYNC_OPTIONAL_CHAIN_NAME(ops); + return result == null ? true : result; + } + `},ff=class t{__init(){this.helperNames={}}__init2(){this.createRequireName=null}constructor(e){this.nameManager=e,t.prototype.__init.call(this),t.prototype.__init2.call(this)}getHelperName(e){let n=this.helperNames[e];return n||(n=this.nameManager.claimFreeName(`_${e}`),this.helperNames[e]=n,n)}emitHelpers(){let e="";this.helperNames.optionalChainDelete&&this.getHelperName("optionalChain"),this.helperNames.asyncOptionalChainDelete&&this.getHelperName("asyncOptionalChain");for(let[n,a]of Object.entries(mue)){let r=this.helperNames[n],i=a;n==="optionalChainDelete"?i=i.replace("OPTIONAL_CHAIN_NAME",this.helperNames.optionalChain):n==="asyncOptionalChainDelete"?i=i.replace("ASYNC_OPTIONAL_CHAIN_NAME",this.helperNames.asyncOptionalChain):n==="require"&&(this.createRequireName===null&&(this.createRequireName=this.nameManager.claimFreeName("_createRequire")),i=i.replace(/CREATE_REQUIRE_NAME/g,this.createRequireName)),r&&(e+=" ",e+=i.replace(n,r).replace(/\s+/g," ").trim())}return e}};function bf(t,e,n){gue(t,n)&&fue(t,e,n)}function gue(t,e){for(let n of t.tokens)if(n.type===l.name&&!n.isType&&_q(n)&&e.has(t.identifierNameForToken(n)))return!0;return!1}function fue(t,e,n){let a=[],r=e.length-1;for(let i=t.tokens.length-1;;i--){for(;a.length>0&&a[a.length-1].startTokenIndex===i+1;)a.pop();for(;r>=0&&e[r].endTokenIndex===i+1;)a.push(e[r]),r--;if(i<0)break;let o=t.tokens[i],s=t.identifierNameForToken(o);if(a.length>1&&!o.isType&&o.type===l.name&&n.has(s)){if(Bq(o))zq(a[a.length-1],t,s);else if(xq(o)){let c=a.length-1;for(;c>0&&!a[c].isFunctionScope;)c--;if(c<0)throw new Error("Did not find parent function scope.");zq(a[c],t,s)}}}if(a.length>0)throw new Error("Expected empty scope stack after processing file.")}function zq(t,e,n){for(let a=t.startTokenIndex;a<t.endTokenIndex;a++){let r=e.tokens[a];(r.type===l.name||r.type===l.jsxName)&&e.identifierNameForToken(r)===n&&(r.shadowsGlobal=!0)}}function p0(t,e){let n=[];for(let a of e)a.type===l.name&&n.push(t.slice(a.start,a.end));return n}var vd=class t{__init(){this.usedNames=new Set}constructor(e,n){t.prototype.__init.call(this),this.usedNames=new Set(p0(e,n))}claimFreeName(e){let n=this.findFreeName(e);return this.usedNames.add(n),n}findFreeName(e){if(!this.usedNames.has(e))return e;let n=2;for(;this.usedNames.has(e+String(n));)n++;return e+String(n)}};var c6=Pn(C0());var De=Pn(C0()),jue=De.union(De.lit("jsx"),De.lit("typescript"),De.lit("flow"),De.lit("imports"),De.lit("react-hot-loader"),De.lit("jest")),Pue=De.iface([],{compiledFilename:"string"}),Mue=De.iface([],{transforms:De.array("Transform"),disableESTransforms:De.opt("boolean"),jsxRuntime:De.opt(De.union(De.lit("classic"),De.lit("automatic"),De.lit("preserve"))),production:De.opt("boolean"),jsxImportSource:De.opt("string"),jsxPragma:De.opt("string"),jsxFragmentPragma:De.opt("string"),keepUnusedImports:De.opt("boolean"),preserveDynamicImport:De.opt("boolean"),injectCreateRequireForImportRequire:De.opt("boolean"),enableLegacyTypeScriptModuleInterop:De.opt("boolean"),enableLegacyBabel5ModuleInterop:De.opt("boolean"),sourceMapOptions:De.opt("SourceMapOptions"),filePath:De.opt("string")}),Tue={Transform:jue,SourceMapOptions:Pue,Options:Mue},s6=Tue;var{Options:que}=(0,c6.createCheckers)(s6);function l6(t){que.strictCheck(t)}function _0(){N(),gt(!1)}function B0(t){N(),Id(t)}function tr(t){ne(),wf(t)}function Nc(){ne(),g.tokens[g.tokens.length-1].identifierRole=W.ImportDeclaration}function wf(t){let e;g.scopeDepth===0?e=W.TopLevelDeclaration:t?e=W.BlockScopedDeclaration:e=W.FunctionScopedDeclaration,g.tokens[g.tokens.length-1].identifierRole=e}function Id(t){switch(g.type){case l._this:{let e=le(0);N(),se(e);return}case l._yield:case l.name:{g.type=l.name,tr(t);return}case l.bracketL:{N(),Dd(l.bracketR,t,!0);return}case l.braceL:Sd(!0,t);return;default:re()}}function Dd(t,e,n=!1,a=!1,r=0){let i=!0,o=!1,s=g.tokens.length;for(;!S(t)&&!g.error;)if(i?i=!1:(O(l.comma),g.tokens[g.tokens.length-1].contextId=r,!o&&g.tokens[s].isType&&(g.tokens[g.tokens.length-1].isType=!0,o=!0)),!(n&&C(l.comma))){if(S(t))break;if(C(l.ellipsis)){B0(e),A6(),S(l.comma),O(t);break}else Gue(a,e)}}function Gue(t,e){t&&Fd([v._public,v._protected,v._private,v._readonly,v._override]),Qd(e),A6(),Qd(e,!0)}function A6(){be?u6():me&&d6()}function Qd(t,e=!1){if(e||Id(t),!S(l.eq))return;let n=g.tokens.length-1;gt(),g.tokens[n].rhsEndIndex=g.tokens.length}function v0(){return C(l.name)}function zue(){return C(l.name)||!!(g.type&l.IS_KEYWORD)||C(l.string)||C(l.num)||C(l.bigint)||C(l.decimal)}function h6(){let t=g.snapshot();return N(),(C(l.bracketL)||C(l.braceL)||C(l.star)||C(l.ellipsis)||C(l.hash)||zue())&&!$t()?!0:(g.restoreFromSnapshot(t),!1)}function Fd(t){for(;y6(t)!==null;);}function y6(t){if(!C(l.name))return null;let e=g.contextualKeyword;if(t.indexOf(e)!==-1&&h6()){switch(e){case v._readonly:g.tokens[g.tokens.length-1].type=l._readonly;break;case v._abstract:g.tokens[g.tokens.length-1].type=l._abstract;break;case v._static:g.tokens[g.tokens.length-1].type=l._static;break;case v._public:g.tokens[g.tokens.length-1].type=l._public;break;case v._private:g.tokens[g.tokens.length-1].type=l._private;break;case v._protected:g.tokens[g.tokens.length-1].type=l._protected;break;case v._override:g.tokens[g.tokens.length-1].type=l._override;break;case v._declare:g.tokens[g.tokens.length-1].type=l._declare;break;default:break}return e}return null}function Nd(){for(ne();S(l.dot);)ne()}function Uue(){Nd(),!$t()&&C(l.lessThan)&&Rc()}function Hue(){N(),$c()}function Zue(){N()}function Yue(){O(l._typeof),C(l._import)?w6():Nd(),!$t()&&C(l.lessThan)&&Rc()}function w6(){O(l._import),O(l.parenL),O(l.string),O(l.parenR),S(l.dot)&&Nd(),C(l.lessThan)&&Rc()}function Wue(){S(l._const);let t=S(l._in),e=it(v._out);S(l._const),(t||e)&&!C(l.name)?g.tokens[g.tokens.length-1].type=l.name:ne(),S(l._extends)&&et(),S(l.eq)&&et()}function ao(){C(l.lessThan)&&Cf()}function Cf(){let t=le(0);for(C(l.lessThan)||C(l.typeParameterStart)?N():re();!S(l.greaterThan)&&!g.error;)Wue(),S(l.comma);se(t)}function I0(t){let e=t===l.arrow;ao(),O(l.parenL),g.scopeDepth++,Kue(!1),g.scopeDepth--,(e||C(t))&&Od(t)}function Kue(t){Dd(l.parenR,t)}function kf(){S(l.comma)||Re()}function p6(){I0(l.colon),kf()}function Jue(){let t=g.snapshot();N();let e=S(l.name)&&C(l.colon);return g.restoreFromSnapshot(t),e}function k6(){if(!(C(l.bracketL)&&Jue()))return!1;let t=le(0);return O(l.bracketL),ne(),$c(),O(l.bracketR),rs(),kf(),se(t),!0}function m6(t){S(l.question),!t&&(C(l.parenL)||C(l.lessThan))?(I0(l.colon),kf()):(rs(),kf())}function Vue(){if(C(l.parenL)||C(l.lessThan)){p6();return}if(C(l._new)){N(),C(l.parenL)||C(l.lessThan)?p6():m6(!1);return}let t=!!y6([v._readonly]);k6()||((Y(v._get)||Y(v._set))&&h6(),is(-1),m6(t))}function Xue(){C6()}function C6(){for(O(l.braceL);!S(l.braceR)&&!g.error;)Vue()}function epe(){let t=g.snapshot(),e=tpe();return g.restoreFromSnapshot(t),e}function tpe(){return N(),S(l.plus)||S(l.minus)?Y(v._readonly):(Y(v._readonly)&&N(),!C(l.bracketL)||(N(),!v0())?!1:(N(),C(l._in)))}function npe(){ne(),O(l._in),et()}function ape(){O(l.braceL),C(l.plus)||C(l.minus)?(N(),We(v._readonly)):it(v._readonly),O(l.bracketL),npe(),it(v._as)&&et(),O(l.bracketR),C(l.plus)||C(l.minus)?(N(),O(l.question)):S(l.question),bpe(),Re(),O(l.braceR)}function rpe(){for(O(l.bracketL);!S(l.bracketR)&&!g.error;)ipe(),S(l.comma)}function ipe(){S(l.ellipsis)?et():(et(),S(l.question)),S(l.colon)&&et()}function ope(){O(l.parenL),et(),O(l.parenR)}function spe(){for(yr(),yr();!C(l.backQuote)&&!g.error;)O(l.dollarBraceL),et(),yr(),yr();N()}var to;(function(t){t[t.TSFunctionType=0]="TSFunctionType";let n=1;t[t.TSConstructorType=n]="TSConstructorType";let a=n+1;t[t.TSAbstractConstructorType=a]="TSAbstractConstructorType"})(to||(to={}));function x0(t){t===to.TSAbstractConstructorType&&We(v._abstract),(t===to.TSConstructorType||t===to.TSAbstractConstructorType)&&O(l._new);let e=g.inDisallowConditionalTypesContext;g.inDisallowConditionalTypesContext=!1,I0(l.arrow),g.inDisallowConditionalTypesContext=e}function cpe(){switch(g.type){case l.name:Uue();return;case l._void:case l._null:N();return;case l.string:case l.num:case l.bigint:case l.decimal:case l._true:case l._false:no();return;case l.minus:N(),no();return;case l._this:{Zue(),Y(v._is)&&!$t()&&Hue();return}case l._typeof:Yue();return;case l._import:w6();return;case l.braceL:epe()?ape():Xue();return;case l.bracketL:rpe();return;case l.parenL:ope();return;case l.backQuote:spe();return;default:if(g.type&l.IS_KEYWORD){N(),g.tokens[g.tokens.length-1].type=l.name;return}break}re()}function lpe(){for(cpe();!$t()&&S(l.bracketL);)S(l.bracketR)||(et(),O(l.bracketR))}function Ape(){if(We(v._infer),ne(),C(l._extends)){let t=g.snapshot();O(l._extends);let e=g.inDisallowConditionalTypesContext;g.inDisallowConditionalTypesContext=!0,et(),g.inDisallowConditionalTypesContext=e,(g.error||!g.inDisallowConditionalTypesContext&&C(l.question))&&g.restoreFromSnapshot(t)}}function E0(){if(Y(v._keyof)||Y(v._unique)||Y(v._readonly))N(),E0();else if(Y(v._infer))Ape();else{let t=g.inDisallowConditionalTypesContext;g.inDisallowConditionalTypesContext=!1,lpe(),g.inDisallowConditionalTypesContext=t}}function g6(){if(S(l.bitwiseAND),E0(),C(l.bitwiseAND))for(;S(l.bitwiseAND);)E0()}function dpe(){if(S(l.bitwiseOR),g6(),C(l.bitwiseOR))for(;S(l.bitwiseOR);)g6()}function upe(){return C(l.lessThan)?!0:C(l.parenL)&&mpe()}function ppe(){if(C(l.name)||C(l._this))return N(),!0;if(C(l.braceL)||C(l.bracketL)){let t=1;for(N();t>0&&!g.error;)C(l.braceL)||C(l.bracketL)?t++:(C(l.braceR)||C(l.bracketR))&&t--,N();return!0}return!1}function mpe(){let t=g.snapshot(),e=gpe();return g.restoreFromSnapshot(t),e}function gpe(){return N(),!!(C(l.parenR)||C(l.ellipsis)||ppe()&&(C(l.colon)||C(l.comma)||C(l.question)||C(l.eq)||C(l.parenR)&&(N(),C(l.arrow))))}function Od(t){let e=le(0);O(t),hpe()||et(),se(e)}function fpe(){C(l.colon)&&Od(l.colon)}function rs(){C(l.colon)&&$c()}function bpe(){S(l.colon)&&et()}function hpe(){let t=g.snapshot();return Y(v._asserts)?(N(),it(v._is)?(et(),!0):v0()||C(l._this)?(N(),it(v._is)&&et(),!0):(g.restoreFromSnapshot(t),!1)):v0()||C(l._this)?(N(),Y(v._is)&&!$t()?(N(),et(),!0):(g.restoreFromSnapshot(t),!1)):!1}function $c(){let t=le(0);O(l.colon),et(),se(t)}function et(){if(f6(),g.inDisallowConditionalTypesContext||$t()||!S(l._extends))return;let t=g.inDisallowConditionalTypesContext;g.inDisallowConditionalTypesContext=!0,f6(),g.inDisallowConditionalTypesContext=t,O(l.question),et(),O(l.colon),et()}function ype(){return Y(v._abstract)&&je()===l._new}function f6(){if(upe()){x0(to.TSFunctionType);return}if(C(l._new)){x0(to.TSConstructorType);return}else if(ype()){x0(to.TSAbstractConstructorType);return}dpe()}function _6(){let t=le(1);et(),O(l.greaterThan),se(t),jc()}function B6(){if(S(l.jsxTagStart)){g.tokens[g.tokens.length-1].type=l.typeParameterStart;let t=le(1);for(;!C(l.greaterThan)&&!g.error;)et(),S(l.comma);ca(),se(t)}}function x6(){for(;!C(l.braceL)&&!g.error;)wpe(),S(l.comma)}function wpe(){Nd(),C(l.lessThan)&&Rc()}function kpe(){tr(!1),ao(),S(l._extends)&&x6(),C6()}function Cpe(){tr(!1),ao(),O(l.eq),et(),Re()}function _pe(){if(C(l.string)?no():ne(),S(l.eq)){let t=g.tokens.length-1;gt(),g.tokens[t].rhsEndIndex=g.tokens.length}}function D0(){for(tr(!1),O(l.braceL);!S(l.braceR)&&!g.error;)_pe(),S(l.comma)}function F0(){O(l.braceL),Pc(l.braceR)}function Q0(){tr(!1),S(l.dot)?Q0():F0()}function v6(){Y(v._global)?ne():C(l.string)?Fa():re(),C(l.braceL)?F0():Re()}function _f(){Nc(),O(l.eq),xpe(),Re()}function Bpe(){return Y(v._require)&&je()===l.parenL}function xpe(){Bpe()?vpe():Nd()}function vpe(){We(v._require),O(l.parenL),C(l.string)||re(),no(),O(l.parenR)}function Epe(){if(Ia())return!1;switch(g.type){case l._function:{let t=le(1);N();let e=g.start;return Vr(e,!0),se(t),!0}case l._class:{let t=le(1);return ei(!0,!1),se(t),!0}case l._const:if(C(l._const)&&Sc(v._enum)){let t=le(1);return O(l._const),We(v._enum),g.tokens[g.tokens.length-1].type=l._enum,D0(),se(t),!0}case l._var:case l._let:{let t=le(1);return $d(g.type!==l._var),se(t),!0}case l.name:{let t=le(1),e=g.contextualKeyword,n=!1;return e===v._global?(v6(),n=!0):n=Bf(e,!0),se(t),n}default:return!1}}function b6(){return Bf(g.contextualKeyword,!0)}function Qpe(t){switch(t){case v._declare:{let e=g.tokens.length-1;if(Epe())return g.tokens[e].type=l._declare,!0;break}case v._global:if(C(l.braceL))return F0(),!0;break;default:return Bf(t,!1)}return!1}function Bf(t,e){switch(t){case v._abstract:if(Lc(e)&&C(l._class))return g.tokens[g.tokens.length-1].type=l._abstract,ei(!0,!1),!0;break;case v._enum:if(Lc(e)&&C(l.name))return g.tokens[g.tokens.length-1].type=l._enum,D0(),!0;break;case v._interface:if(Lc(e)&&C(l.name)){let n=le(e?2:1);return kpe(),se(n),!0}break;case v._module:if(Lc(e)){if(C(l.string)){let n=le(e?2:1);return v6(),se(n),!0}else if(C(l.name)){let n=le(e?2:1);return Q0(),se(n),!0}}break;case v._namespace:if(Lc(e)&&C(l.name)){let n=le(e?2:1);return Q0(),se(n),!0}break;case v._type:if(Lc(e)&&C(l.name)){let n=le(e?2:1);return Cpe(),se(n),!0}break;default:break}return!1}function Lc(t){return t?(N(),!0):!Ia()}function Ipe(){let t=g.snapshot();return Cf(),Xr(),fpe(),O(l.arrow),g.error?(g.restoreFromSnapshot(t),!1):(os(!0),!0)}function S0(){g.type===l.bitShiftL&&(g.pos-=1,oe(l.lessThan)),Rc()}function Rc(){let t=le(0);for(O(l.lessThan);!C(l.greaterThan)&&!g.error;)et(),S(l.comma);t?(O(l.greaterThan),se(t)):(se(t),uf(),O(l.greaterThan),g.tokens[g.tokens.length-1].isType=!0)}function O0(){if(C(l.name))switch(g.contextualKeyword){case v._abstract:case v._declare:case v._enum:case v._interface:case v._module:case v._namespace:case v._type:return!0;default:break}return!1}function E6(t,e){if(C(l.colon)&&Od(l.colon),!C(l.braceL)&&Ia()){let n=g.tokens.length-1;for(;n>=0&&(g.tokens[n].start>=t||g.tokens[n].type===l._default||g.tokens[n].type===l._export);)g.tokens[n].isType=!0,n--;return}os(!1,e)}function Q6(t,e,n){if(!$t()&&S(l.bang)){g.tokens[g.tokens.length-1].type=l.nonNullAssertion;return}if(C(l.lessThan)||C(l.bitShiftL)){let a=g.snapshot();if(!e&&N0()&&Ipe())return;if(S0(),!e&&S(l.parenL)?(g.tokens[g.tokens.length-1].subscriptStartIndex=t,nr()):C(l.backQuote)?xf():(g.type===l.greaterThan||g.type!==l.parenL&&g.type&l.IS_EXPRESSION_START&&!$t())&&re(),g.error)g.restoreFromSnapshot(a);else return}else!e&&C(l.questionDot)&&je()===l.lessThan&&(N(),g.tokens[t].isOptionalChainStart=!0,g.tokens[g.tokens.length-1].subscriptStartIndex=t,Rc(),O(l.parenL),nr());Ld(t,e,n)}function I6(){if(S(l._import))return Y(v._type)&&je()!==l.eq&&We(v._type),_f(),!0;if(S(l.eq))return ft(),Re(),!0;if(it(v._as))return We(v._namespace),ne(),Re(),!0;if(Y(v._type)){let t=je();(t===l.braceL||t===l.star)&&N()}return!1}function D6(){if(ne(),C(l.comma)||C(l.braceR)){g.tokens[g.tokens.length-1].identifierRole=W.ImportDeclaration;return}if(ne(),C(l.comma)||C(l.braceR)){g.tokens[g.tokens.length-1].identifierRole=W.ImportDeclaration,g.tokens[g.tokens.length-2].isType=!0,g.tokens[g.tokens.length-1].isType=!0;return}if(ne(),C(l.comma)||C(l.braceR)){g.tokens[g.tokens.length-3].identifierRole=W.ImportAccess,g.tokens[g.tokens.length-1].identifierRole=W.ImportDeclaration;return}ne(),g.tokens[g.tokens.length-3].identifierRole=W.ImportAccess,g.tokens[g.tokens.length-1].identifierRole=W.ImportDeclaration,g.tokens[g.tokens.length-4].isType=!0,g.tokens[g.tokens.length-3].isType=!0,g.tokens[g.tokens.length-2].isType=!0,g.tokens[g.tokens.length-1].isType=!0}function F6(){if(ne(),C(l.comma)||C(l.braceR)){g.tokens[g.tokens.length-1].identifierRole=W.ExportAccess;return}if(ne(),C(l.comma)||C(l.braceR)){g.tokens[g.tokens.length-1].identifierRole=W.ExportAccess,g.tokens[g.tokens.length-2].isType=!0,g.tokens[g.tokens.length-1].isType=!0;return}if(ne(),C(l.comma)||C(l.braceR)){g.tokens[g.tokens.length-3].identifierRole=W.ExportAccess;return}ne(),g.tokens[g.tokens.length-3].identifierRole=W.ExportAccess,g.tokens[g.tokens.length-4].isType=!0,g.tokens[g.tokens.length-3].isType=!0,g.tokens[g.tokens.length-2].isType=!0,g.tokens[g.tokens.length-1].isType=!0}function S6(){if(Y(v._abstract)&&je()===l._class)return g.type=l._abstract,N(),ei(!0,!0),!0;if(Y(v._interface)){let t=le(2);return Bf(v._interface,!0),se(t),!0}return!1}function O6(){if(g.type===l._const){let t=Kr();if(t.type===l.name&&t.contextualKeyword===v._enum)return O(l._const),We(v._enum),g.tokens[g.tokens.length-1].type=l._enum,D0(),!0}return!1}function N6(t){let e=g.tokens.length;Fd([v._abstract,v._readonly,v._declare,v._static,v._override]);let n=g.tokens.length;if(k6()){let r=t?e-1:e;for(let i=r;i<n;i++)g.tokens[i].isType=!0;return!0}return!1}function L6(t){Qpe(t)||Re()}function $6(){let t=it(v._declare);t&&(g.tokens[g.tokens.length-1].type=l._declare);let e=!1;if(C(l.name))if(t){let n=le(2);e=b6(),se(n)}else e=b6();if(!e)if(t){let n=le(2);wn(!0),se(n)}else wn(!0)}function R6(t){if(t&&(C(l.lessThan)||C(l.bitShiftL))&&S0(),it(v._implements)){g.tokens[g.tokens.length-1].type=l._implements;let e=le(1);x6(),se(e)}}function j6(){ao()}function P6(){ao()}function M6(){let t=le(0);$t()||S(l.bang),rs(),se(t)}function T6(){C(l.colon)&&$c()}function q6(t,e){return Fc?Dpe(t,e):Fpe(t,e)}function Dpe(t,e){if(!C(l.lessThan))return Da(t,e);let n=g.snapshot(),a=Da(t,e);if(g.error)g.restoreFromSnapshot(n);else return a;return g.type=l.typeParameterStart,Cf(),a=Da(t,e),a||re(),a}function Fpe(t,e){if(!C(l.lessThan))return Da(t,e);let n=g.snapshot();Cf();let a=Da(t,e);if(a||re(),g.error)g.restoreFromSnapshot(n);else return a;return Da(t,e)}function G6(){if(C(l.colon)){let t=g.snapshot();Od(l.colon),Zt()&&re(),C(l.arrow)||re(),g.error&&g.restoreFromSnapshot(t)}return S(l.arrow)}function d6(){let t=le(0);S(l.question),rs(),se(t)}function z6(){(C(l.lessThan)||C(l.bitShiftL))&&S0(),L0()}function Spe(){let t=!1,e=!1;for(;;){if(g.pos>=j.length){re("Unterminated JSX contents");return}let n=j.charCodeAt(g.pos);if(n===I.lessThan||n===I.leftCurlyBrace){if(g.pos===g.start){if(n===I.lessThan){g.pos++,oe(l.jsxTagStart);return}o0(n);return}t&&!e?oe(l.jsxEmptyText):oe(l.jsxText);return}n===I.lineFeed?t=!0:n!==I.space&&n!==I.carriageReturn&&n!==I.tab&&(e=!0),g.pos++}}function Ope(t){for(g.pos++;;){if(g.pos>=j.length){re("Unterminated string constant");return}if(j.charCodeAt(g.pos)===t){g.pos++;break}g.pos++}oe(l.string)}function Npe(){let t;do{if(g.pos>j.length){re("Unexpectedly reached the end of input.");return}t=j.charCodeAt(++g.pos)}while(yn[t]||t===I.dash);oe(l.jsxName)}function $0(){ca()}function U6(t){if($0(),!S(l.colon)){g.tokens[g.tokens.length-1].identifierRole=t;return}$0()}function H6(){let t=g.tokens.length;U6(W.Access);let e=!1;for(;C(l.dot);)e=!0,ca(),$0();if(!e){let n=g.tokens[t],a=j.charCodeAt(n.start);a>=I.lowercaseA&&a<=I.lowercaseZ&&(n.identifierRole=null)}}function Lpe(){switch(g.type){case l.braceL:N(),ft(),ca();return;case l.jsxTagStart:R0(),ca();return;case l.string:ca();return;default:re("JSX value should be either an expression or a quoted JSX text")}}function $pe(){O(l.ellipsis),ft()}function Rpe(t){if(C(l.jsxTagEnd))return!1;H6(),me&&B6();let e=!1;for(;!C(l.slash)&&!C(l.jsxTagEnd)&&!g.error;){if(S(l.braceL)){e=!0,O(l.ellipsis),gt(),ca();continue}e&&g.end-g.start===3&&j.charCodeAt(g.start)===I.lowercaseK&&j.charCodeAt(g.start+1)===I.lowercaseE&&j.charCodeAt(g.start+2)===I.lowercaseY&&(g.tokens[t].jsxRole=oa.KeyAfterPropSpread),U6(W.ObjectKey),C(l.eq)&&(ca(),Lpe())}let n=C(l.slash);return n&&ca(),n}function jpe(){C(l.jsxTagEnd)||H6()}function Z6(){let t=g.tokens.length-1;g.tokens[t].jsxRole=oa.NoChildren;let e=0;if(!Rpe(t))for(Mc();;)switch(g.type){case l.jsxTagStart:if(ca(),C(l.slash)){ca(),jpe(),g.tokens[t].jsxRole!==oa.KeyAfterPropSpread&&(e===1?g.tokens[t].jsxRole=oa.OneChild:e>1&&(g.tokens[t].jsxRole=oa.StaticChildren));return}e++,Z6(),Mc();break;case l.jsxText:e++,Mc();break;case l.jsxEmptyText:Mc();break;case l.braceL:N(),C(l.ellipsis)?($pe(),Mc(),e+=2):(C(l.braceR)||(e++,ft()),Mc());break;default:re();return}}function R0(){ca(),Z6()}function ca(){g.tokens.push(new as),i0(),g.start=g.pos;let t=j.charCodeAt(g.pos);if(Jr[t])Npe();else if(t===I.quotationMark||t===I.apostrophe)Ope(t);else switch(++g.pos,t){case I.greaterThan:oe(l.jsxTagEnd);break;case I.lessThan:oe(l.jsxTagStart);break;case I.slash:oe(l.slash);break;case I.equalsTo:oe(l.eq);break;case I.leftCurlyBrace:oe(l.braceL);break;case I.dot:oe(l.dot);break;case I.colon:oe(l.colon);break;default:re()}}function Mc(){g.tokens.push(new as),g.start=g.pos,Spe()}function Y6(t){if(C(l.question)){let e=je();if(e===l.colon||e===l.comma||e===l.parenR)return}j0(t)}function W6(){df(l.question),C(l.colon)&&(me?$c():be&&ti())}var P0=class{constructor(e){this.stop=e}};function ft(t=!1){if(gt(t),C(l.comma))for(;S(l.comma);)gt(t)}function gt(t=!1,e=!1){return me?q6(t,e):be?rG(t,e):Da(t,e)}function Da(t,e){if(C(l._yield))return eme(),!1;(C(l.parenL)||C(l.name)||C(l._yield))&&(g.potentialArrowAt=g.start);let n=Ppe(t);return e&&z0(),g.type&l.IS_ASSIGN?(N(),gt(t),!1):n}function Ppe(t){return Tpe(t)?!0:(Mpe(t),!1)}function Mpe(t){me||be?Y6(t):j0(t)}function j0(t){S(l.question)&&(gt(),O(l.colon),gt(t))}function Tpe(t){let e=g.tokens.length;return jc()?!0:(vf(e,-1,t),!1)}function vf(t,e,n){if(me&&(l._in&l.PRECEDENCE_MASK)>e&&!$t()&&(it(v._as)||it(v._satisfies))){let r=le(1);et(),se(r),uf(),vf(t,e,n);return}let a=g.type&l.PRECEDENCE_MASK;if(a>0&&(!n||!C(l._in))&&a>e){let r=g.type;N(),r===l.nullishCoalescing&&(g.tokens[g.tokens.length-1].nullishStartIndex=t);let i=g.tokens.length;jc(),vf(i,r&l.IS_RIGHT_ASSOCIATIVE?a-1:a,n),r===l.nullishCoalescing&&(g.tokens[t].numNullishCoalesceStarts++,g.tokens[g.tokens.length-1].numNullishCoalesceEnds++),vf(t,e,n)}}function jc(){if(me&&!Fc&&S(l.lessThan))return _6(),!1;if(Y(v._module)&&n0()===I.leftCurlyBrace&&!cf())return tme(),!1;if(g.type&l.IS_PREFIX)return N(),jc(),!1;if(M0())return!0;for(;g.type&l.IS_POSTFIX&&!Zt();)g.type===l.preIncDec&&(g.type=l.postIncDec),N();return!1}function M0(){let t=g.tokens.length;return Fa()?!0:(T0(t),g.tokens.length>t&&g.tokens[t].isOptionalChainStart&&(g.tokens[g.tokens.length-1].isOptionalChainEnd=!0),!1)}function T0(t,e=!1){be?oG(t,e):q0(t,e)}function q0(t,e=!1){let n=new P0(!1);do qpe(t,e,n);while(!n.stop&&!g.error)}function qpe(t,e,n){me?Q6(t,e,n):be?eG(t,e,n):Ld(t,e,n)}function Ld(t,e,n){if(!e&&S(l.doubleColon))G0(),n.stop=!0,T0(t,e);else if(C(l.questionDot)){if(g.tokens[t].isOptionalChainStart=!0,e&&je()===l.parenL){n.stop=!0;return}N(),g.tokens[g.tokens.length-1].subscriptStartIndex=t,S(l.bracketL)?(ft(),O(l.bracketR)):S(l.parenL)?nr():Ef()}else if(S(l.dot))g.tokens[g.tokens.length-1].subscriptStartIndex=t,Ef();else if(S(l.bracketL))g.tokens[g.tokens.length-1].subscriptStartIndex=t,ft(),O(l.bracketR);else if(!e&&C(l.parenL))if(N0()){let a=g.snapshot(),r=g.tokens.length;N(),g.tokens[g.tokens.length-1].subscriptStartIndex=t;let i=ns();g.tokens[g.tokens.length-1].contextId=i,nr(),g.tokens[g.tokens.length-1].contextId=i,Gpe()&&(g.restoreFromSnapshot(a),n.stop=!0,g.scopeDepth++,Xr(),zpe(r))}else{N(),g.tokens[g.tokens.length-1].subscriptStartIndex=t;let a=ns();g.tokens[g.tokens.length-1].contextId=a,nr(),g.tokens[g.tokens.length-1].contextId=a}else C(l.backQuote)?xf():n.stop=!0}function N0(){return g.tokens[g.tokens.length-1].contextualKeyword===v._async&&!Zt()}function nr(){let t=!0;for(;!S(l.parenR)&&!g.error;){if(t)t=!1;else if(O(l.comma),S(l.parenR))break;V6(!1)}}function Gpe(){return C(l.colon)||C(l.arrow)}function zpe(t){me?T6():be&&aG(),O(l.arrow),Tc(t)}function G0(){let t=g.tokens.length;Fa(),T0(t,!0)}function Fa(){if(S(l.modulo))return ne(),!1;if(C(l.jsxText)||C(l.jsxEmptyText))return no(),!1;if(C(l.lessThan)&&Fc)return g.type=l.jsxTagStart,R0(),N(),!1;let t=g.potentialArrowAt===g.start;switch(g.type){case l.slash:case l.assign:Eq();case l._super:case l._this:case l.regexp:case l.num:case l.bigint:case l.decimal:case l.string:case l._null:case l._true:case l._false:return N(),!1;case l._import:return N(),C(l.dot)&&(g.tokens[g.tokens.length-1].type=l.name,N(),ne()),!1;case l.name:{let e=g.tokens.length,n=g.start,a=g.contextualKeyword;return ne(),a===v._await?(Xpe(),!1):a===v._async&&C(l._function)&&!Zt()?(N(),Vr(n,!1),!1):t&&a===v._async&&!Zt()&&C(l.name)?(g.scopeDepth++,tr(!1),O(l.arrow),Tc(e),!0):C(l._do)&&!Zt()?(N(),ni(),!1):t&&!Zt()&&C(l.arrow)?(g.scopeDepth++,wf(!1),O(l.arrow),Tc(e),!0):(g.tokens[g.tokens.length-1].identifierRole=W.Access,!1)}case l._do:return N(),ni(),!1;case l.parenL:return K6(t);case l.bracketL:return N(),J6(l.bracketR,!0),!1;case l.braceL:return Sd(!1,!1),!1;case l._function:return Upe(),!1;case l.at:Ff();case l._class:return ei(!1),!1;case l._new:return Zpe(),!1;case l.backQuote:return xf(),!1;case l.doubleColon:return N(),G0(),!1;case l.hash:{let e=n0();return Jr[e]||e===I.backslash?Ef():N(),!1}default:return re(),!1}}function Ef(){S(l.hash),ne()}function Upe(){let t=g.start;ne(),S(l.dot)&&ne(),Vr(t,!1)}function no(){N()}function Rd(){O(l.parenL),ft(),O(l.parenR)}function K6(t){let e=g.snapshot(),n=g.tokens.length;O(l.parenL);let a=!0;for(;!C(l.parenR)&&!g.error;){if(a)a=!1;else if(O(l.comma),C(l.parenR))break;if(C(l.ellipsis)){B0(!1),z0();break}else gt(!1,!0)}return O(l.parenR),t&&Hpe()&&Qf()?(g.restoreFromSnapshot(e),g.scopeDepth++,Xr(),Qf(),Tc(n),g.error?(g.restoreFromSnapshot(e),K6(!1),!1):!0):!1}function Hpe(){return C(l.colon)||!Zt()}function Qf(){return me?G6():be?iG():S(l.arrow)}function z0(){(me||be)&&W6()}function Zpe(){if(O(l._new),S(l.dot)){ne();return}Ype(),be&&tG(),S(l.parenL)&&J6(l.parenR)}function Ype(){G0(),S(l.questionDot)}function xf(){for(yr(),yr();!C(l.backQuote)&&!g.error;)O(l.dollarBraceL),ft(),yr(),yr();N()}function Sd(t,e){let n=ns(),a=!0;for(N(),g.tokens[g.tokens.length-1].contextId=n;!S(l.braceR)&&!g.error;){if(a)a=!1;else if(O(l.comma),S(l.braceR))break;let r=!1;if(C(l.ellipsis)){let i=g.tokens.length;if(_0(),t&&(g.tokens.length===i+2&&wf(e),S(l.braceR)))break;continue}t||(r=S(l.star)),!t&&Y(v._async)?(r&&re(),ne(),C(l.colon)||C(l.parenL)||C(l.braceR)||C(l.eq)||C(l.comma)||(C(l.star)&&(N(),r=!0),is(n))):is(n),Vpe(t,e,n)}g.tokens[g.tokens.length-1].contextId=n}function Wpe(t){return!t&&(C(l.string)||C(l.num)||C(l.bracketL)||C(l.name)||!!(g.type&l.IS_KEYWORD))}function Kpe(t,e){let n=g.start;return C(l.parenL)?(t&&re(),If(n,!1),!0):Wpe(t)?(is(e),If(n,!1),!0):!1}function Jpe(t,e){if(S(l.colon)){t?Qd(e):gt(!1);return}let n;t?g.scopeDepth===0?n=W.ObjectShorthandTopLevelDeclaration:e?n=W.ObjectShorthandBlockScopedDeclaration:n=W.ObjectShorthandFunctionScopedDeclaration:n=W.ObjectShorthand,g.tokens[g.tokens.length-1].identifierRole=n,Qd(e,!0)}function Vpe(t,e,n){me?j6():be&&nG(),Kpe(t,n)||Jpe(t,e)}function is(t){be&&Df(),S(l.bracketL)?(g.tokens[g.tokens.length-1].contextId=t,gt(),O(l.bracketR),g.tokens[g.tokens.length-1].contextId=t):(C(l.num)||C(l.string)||C(l.bigint)||C(l.decimal)?Fa():Ef(),g.tokens[g.tokens.length-1].identifierRole=W.ObjectKey,g.tokens[g.tokens.length-1].contextId=t)}function If(t,e){let n=ns();g.scopeDepth++;let a=g.tokens.length;Xr(e,n),U0(t,n);let i=g.tokens.length;g.scopes.push(new $n(a,i,!0)),g.scopeDepth--}function Tc(t){os(!0);let e=g.tokens.length;g.scopes.push(new $n(t,e,!0)),g.scopeDepth--}function U0(t,e=0){me?E6(t,e):be?X6(e):os(!1,e)}function os(t,e=0){t&&!C(l.braceL)?gt():ni(!0,e)}function J6(t,e=!1){let n=!0;for(;!S(t)&&!g.error;){if(n)n=!1;else if(O(l.comma),S(t))break;V6(e)}}function V6(t){t&&C(l.comma)||(C(l.ellipsis)?(_0(),z0()):C(l.question)?N():gt(!1,!0))}function ne(){N(),g.tokens[g.tokens.length-1].type=l.name}function Xpe(){jc()}function eme(){N(),!C(l.semi)&&!Zt()&&(S(l.star),gt())}function tme(){We(v._module),O(l.braceL),Pc(l.braceR)}function nme(t){return(t.type===l.name||!!(t.type&l.IS_KEYWORD))&&t.contextualKeyword!==v._from}function Cr(t){let e=le(0);O(t||l.colon),jn(),se(e)}function sG(){O(l.modulo),We(v._checks),S(l.parenL)&&(ft(),O(l.parenR))}function Y0(){let t=le(0);O(l.colon),C(l.modulo)?sG():(jn(),C(l.modulo)&&sG()),se(t)}function ame(){N(),W0(!0)}function rme(){N(),ne(),C(l.lessThan)&&Sa(),O(l.parenL),Z0(),O(l.parenR),Y0(),Re()}function H0(){C(l._class)?ame():C(l._function)?rme():C(l._var)?ime():it(v._module)?S(l.dot)?cme():ome():Y(v._type)?lme():Y(v._opaque)?Ame():Y(v._interface)?dme():C(l._export)?sme():re()}function ime(){N(),pG(),Re()}function ome(){for(C(l.string)?Fa():ne(),O(l.braceL);!C(l.braceR)&&!g.error;)C(l._import)?(N(),nv()):re();O(l.braceR)}function sme(){O(l._export),S(l._default)?C(l._function)||C(l._class)?H0():(jn(),Re()):C(l._var)||C(l._function)||C(l._class)||Y(v._opaque)?H0():C(l.star)||C(l.braceL)||Y(v._interface)||Y(v._type)||Y(v._opaque)?tv():re()}function cme(){We(v._exports),ti(),Re()}function lme(){N(),J0()}function Ame(){N(),V0(!0)}function dme(){N(),W0()}function W0(t=!1){if($f(),C(l.lessThan)&&Sa(),S(l._extends))do Sf();while(!t&&S(l.comma));if(Y(v._mixins)){N();do Sf();while(S(l.comma))}if(Y(v._implements)){N();do Sf();while(S(l.comma))}Of(t,!1,t)}function Sf(){AG(!1),C(l.lessThan)&&ss()}function K0(){W0()}function $f(){ne()}function J0(){$f(),C(l.lessThan)&&Sa(),Cr(l.eq),Re()}function V0(t){We(v._type),$f(),C(l.lessThan)&&Sa(),C(l.colon)&&Cr(l.colon),t||Cr(l.eq),Re()}function ume(){Df(),pG(),S(l.eq)&&jn()}function Sa(){let t=le(0);C(l.lessThan)||C(l.typeParameterStart)?N():re();do ume(),C(l.greaterThan)||O(l.comma);while(!C(l.greaterThan)&&!g.error);O(l.greaterThan),se(t)}function ss(){let t=le(0);for(O(l.lessThan);!C(l.greaterThan)&&!g.error;)jn(),C(l.greaterThan)||O(l.comma);O(l.greaterThan),se(t)}function pme(){if(We(v._interface),S(l._extends))do Sf();while(S(l.comma));Of(!1,!1,!1)}function X0(){C(l.num)||C(l.string)?Fa():ne()}function mme(){je()===l.colon?(X0(),Cr()):jn(),O(l.bracketR),Cr()}function gme(){X0(),O(l.bracketR),O(l.bracketR),C(l.lessThan)||C(l.parenL)?ev():(S(l.question),Cr())}function ev(){for(C(l.lessThan)&&Sa(),O(l.parenL);!C(l.parenR)&&!C(l.ellipsis)&&!g.error;)Nf(),C(l.parenR)||O(l.comma);S(l.ellipsis)&&Nf(),O(l.parenR),Cr()}function fme(){ev()}function Of(t,e,n){let a;for(e&&C(l.braceBarL)?(O(l.braceBarL),a=l.braceBarR):(O(l.braceL),a=l.braceR);!C(a)&&!g.error;){if(n&&Y(v._proto)){let r=je();r!==l.colon&&r!==l.question&&(N(),t=!1)}if(t&&Y(v._static)){let r=je();r!==l.colon&&r!==l.question&&N()}if(Df(),S(l.bracketL))S(l.bracketL)?gme():mme();else if(C(l.parenL)||C(l.lessThan))fme();else{if(Y(v._get)||Y(v._set)){let r=je();(r===l.name||r===l.string||r===l.num)&&N()}bme()}hme()}O(a)}function bme(){if(C(l.ellipsis)){if(O(l.ellipsis),S(l.comma)||S(l.semi),C(l.braceR))return;jn()}else X0(),C(l.lessThan)||C(l.parenL)?ev():(S(l.question),Cr())}function hme(){!S(l.semi)&&!S(l.comma)&&!C(l.braceR)&&!C(l.braceBarR)&&re()}function AG(t){for(t||ne();S(l.dot);)ne()}function yme(){AG(!0),C(l.lessThan)&&ss()}function wme(){O(l._typeof),dG()}function kme(){for(O(l.bracketL);g.pos<j.length&&!C(l.bracketR)&&(jn(),!C(l.bracketR));)O(l.comma);O(l.bracketR)}function Nf(){let t=je();t===l.colon||t===l.question?(ne(),S(l.question),Cr()):jn()}function Z0(){for(;!C(l.parenR)&&!C(l.ellipsis)&&!g.error;)Nf(),C(l.parenR)||O(l.comma);S(l.ellipsis)&&Nf()}function dG(){let t=!1,e=g.noAnonFunctionType;switch(g.type){case l.name:{if(Y(v._interface)){pme();return}ne(),yme();return}case l.braceL:Of(!1,!1,!1);return;case l.braceBarL:Of(!1,!0,!1);return;case l.bracketL:kme();return;case l.lessThan:Sa(),O(l.parenL),Z0(),O(l.parenR),O(l.arrow),jn();return;case l.parenL:if(N(),!C(l.parenR)&&!C(l.ellipsis))if(C(l.name)){let n=je();t=n!==l.question&&n!==l.colon}else t=!0;if(t)if(g.noAnonFunctionType=!1,jn(),g.noAnonFunctionType=e,g.noAnonFunctionType||!(C(l.comma)||C(l.parenR)&&je()===l.arrow)){O(l.parenR);return}else S(l.comma);Z0(),O(l.parenR),O(l.arrow),jn();return;case l.minus:N(),no();return;case l.string:case l.num:case l._true:case l._false:case l._null:case l._this:case l._void:case l.star:N();return;default:if(g.type===l._typeof){wme();return}else if(g.type&l.IS_KEYWORD){N(),g.tokens[g.tokens.length-1].type=l.name;return}}re()}function Cme(){for(dG();!Zt()&&(C(l.bracketL)||C(l.questionDot));)S(l.questionDot),O(l.bracketL),S(l.bracketR)||(jn(),O(l.bracketR))}function uG(){S(l.question)?uG():Cme()}function cG(){uG(),!g.noAnonFunctionType&&S(l.arrow)&&jn()}function lG(){for(S(l.bitwiseAND),cG();S(l.bitwiseAND);)cG()}function _me(){for(S(l.bitwiseOR),lG();S(l.bitwiseOR);)lG()}function jn(){_me()}function ti(){Cr()}function pG(){ne(),C(l.colon)&&ti()}function Df(){(C(l.plus)||C(l.minus))&&(N(),g.tokens[g.tokens.length-1].isType=!0)}function X6(t){C(l.colon)&&Y0(),os(!1,t)}function eG(t,e,n){if(C(l.questionDot)&&je()===l.lessThan){if(e){n.stop=!0;return}N(),ss(),O(l.parenL),nr();return}else if(!e&&C(l.lessThan)){let a=g.snapshot();if(ss(),O(l.parenL),nr(),g.error)g.restoreFromSnapshot(a);else return}Ld(t,e,n)}function tG(){if(C(l.lessThan)){let t=g.snapshot();ss(),g.error&&g.restoreFromSnapshot(t)}}function mG(){if(C(l.name)&&g.contextualKeyword===v._interface){let t=le(0);return N(),K0(),se(t),!0}else if(Y(v._enum))return EG(),!0;return!1}function gG(){return Y(v._enum)?(EG(),!0):!1}function fG(t){if(t===v._declare){if(C(l._class)||C(l.name)||C(l._function)||C(l._var)||C(l._export)){let e=le(1);H0(),se(e)}}else if(C(l.name)){if(t===v._interface){let e=le(1);K0(),se(e)}else if(t===v._type){let e=le(1);J0(),se(e)}else if(t===v._opaque){let e=le(1);V0(!1),se(e)}}Re()}function bG(){return Y(v._type)||Y(v._interface)||Y(v._opaque)||Y(v._enum)}function hG(){return C(l.name)&&(g.contextualKeyword===v._type||g.contextualKeyword===v._interface||g.contextualKeyword===v._opaque||g.contextualKeyword===v._enum)}function yG(){if(Y(v._type)){let t=le(1);N(),C(l.braceL)?(Rf(),qc()):J0(),se(t)}else if(Y(v._opaque)){let t=le(1);N(),V0(!1),se(t)}else if(Y(v._interface)){let t=le(1);N(),K0(),se(t)}else wn(!0)}function wG(){return C(l.star)||Y(v._type)&&je()===l.star}function kG(){if(it(v._type)){let t=le(2);Lf(),se(t)}else Lf()}function CG(t){if(t&&C(l.lessThan)&&ss(),Y(v._implements)){let e=le(0);N(),g.tokens[g.tokens.length-1].type=l._implements;do $f(),C(l.lessThan)&&ss();while(S(l.comma));se(e)}}function nG(){C(l.lessThan)&&(Sa(),C(l.parenL)||re())}function u6(){let t=le(0);S(l.question),C(l.colon)&&ti(),se(t)}function _G(){if(C(l._typeof)||Y(v._type)){let t=Kr();(nme(t)||t.type===l.braceL||t.type===l.star)&&N()}}function BG(){let t=g.contextualKeyword===v._type||g.type===l._typeof;t?N():ne(),Y(v._as)&&!Sc(v._as)?(ne(),t&&!C(l.name)&&!(g.type&l.IS_KEYWORD)||ne()):(t&&(C(l.name)||g.type&l.IS_KEYWORD)&&ne(),it(v._as)&&ne())}function xG(){if(C(l.lessThan)){let t=le(0);Sa(),se(t)}}function vG(){C(l.colon)&&ti()}function aG(){if(C(l.colon)){let t=g.noAnonFunctionType;g.noAnonFunctionType=!0,ti(),g.noAnonFunctionType=t}}function rG(t,e){if(C(l.lessThan)){let n=g.snapshot(),a=Da(t,e);if(g.error)g.restoreFromSnapshot(n),g.type=l.typeParameterStart;else return a;let r=le(0);if(Sa(),se(r),a=Da(t,e),a)return!0;re()}return Da(t,e)}function iG(){if(C(l.colon)){let t=le(0),e=g.snapshot(),n=g.noAnonFunctionType;g.noAnonFunctionType=!0,Y0(),g.noAnonFunctionType=n,Zt()&&re(),C(l.arrow)||re(),g.error&&g.restoreFromSnapshot(e),se(t)}return S(l.arrow)}function oG(t,e=!1){if(g.tokens[g.tokens.length-1].contextualKeyword===v._async&&C(l.lessThan)){let n=g.snapshot();if(Bme()&&!g.error)return;g.restoreFromSnapshot(n)}q0(t,e)}function Bme(){g.scopeDepth++;let t=g.tokens.length;return Xr(),Qf()?(Tc(t),!0):!1}function EG(){We(v._enum),g.tokens[g.tokens.length-1].type=l._enum,ne(),xme()}function xme(){it(v._of)&&N(),O(l.braceL),vme(),O(l.braceR)}function vme(){for(;!C(l.braceR)&&!g.error&&!S(l.ellipsis);)Eme(),C(l.braceR)||O(l.comma)}function Eme(){ne(),S(l.eq)&&N()}function FG(){if(Pc(l.eof),g.scopes.push(new $n(0,g.tokens.length,!0)),g.scopeDepth!==0)throw new Error(`Invalid scope depth at end of file: ${g.scopeDepth}`);return new Pf(g.tokens,g.scopes)}function wn(t){be&&mG()||(C(l.at)&&Ff(),Qme(t))}function Qme(t){if(me&&O6())return;let e=g.type;switch(e){case l._break:case l._continue:Dme();return;case l._debugger:Fme();return;case l._do:Sme();return;case l._for:Ome();return;case l._function:if(je()===l.dot)break;t||re(),$me();return;case l._class:t||re(),ei(!0);return;case l._if:Rme();return;case l._return:jme();return;case l._switch:Pme();return;case l._throw:Mme();return;case l._try:qme();return;case l._let:case l._const:t||re();case l._var:$d(e!==l._var);return;case l._while:Gme();return;case l.braceL:ni();return;case l.semi:zme();return;case l._export:case l._import:{let r=je();if(r===l.parenL||r===l.dot)break;N(),e===l._import?nv():tv();return}case l.name:if(g.contextualKeyword===v._async){let r=g.start,i=g.snapshot();if(N(),C(l._function)&&!Zt()){O(l._function),Vr(r,!0);return}else g.restoreFromSnapshot(i)}else if(g.contextualKeyword===v._using&&!cf()&&je()===l.name){$d(!0);return}else if(SG()){We(v._await),$d(!0);return}default:break}let n=g.tokens.length;ft();let a=null;if(g.tokens.length===n+1){let r=g.tokens[g.tokens.length-1];r.type===l.name&&(a=r.contextualKeyword)}if(a==null){Re();return}S(l.colon)?Ume():Hme(a)}function SG(){if(!Y(v._await))return!1;let t=g.snapshot();return N(),!Y(v._using)||$t()?(g.restoreFromSnapshot(t),!1):(N(),!C(l.name)||$t()?(g.restoreFromSnapshot(t),!1):(g.restoreFromSnapshot(t),!0))}function Ff(){for(;C(l.at);)OG()}function OG(){if(N(),S(l.parenL))ft(),O(l.parenR);else{for(ne();S(l.dot);)ne();Ime()}}function Ime(){me?z6():L0()}function L0(){S(l.parenL)&&nr()}function Dme(){N(),Ia()||(ne(),Re())}function Fme(){N(),Re()}function Sme(){N(),wn(!1),O(l._while),Rd(),S(l.semi)}function Ome(){g.scopeDepth++;let t=g.tokens.length;Lme();let e=g.tokens.length;g.scopes.push(new $n(t,e,!1)),g.scopeDepth--}function Nme(){return!(!Y(v._using)||Sc(v._of))}function Lme(){N();let t=!1;if(Y(v._await)&&(t=!0,N()),O(l.parenL),C(l.semi)){t&&re(),av();return}let e=SG();if(e||C(l._var)||C(l._let)||C(l._const)||Nme()){if(e&&We(v._await),N(),NG(!0,g.type!==l._var),C(l._in)||Y(v._of)){QG(t);return}av();return}if(ft(!0),C(l._in)||Y(v._of)){QG(t);return}t&&re(),av()}function $me(){let t=g.start;N(),Vr(t,!0)}function Rme(){N(),Rd(),wn(!1),S(l._else)&&wn(!1)}function jme(){N(),Ia()||(ft(),Re())}function Pme(){N(),Rd(),g.scopeDepth++;let t=g.tokens.length;for(O(l.braceL);!C(l.braceR)&&!g.error;)if(C(l._case)||C(l._default)){let n=C(l._case);N(),n&&ft(),O(l.colon)}else wn(!0);N();let e=g.tokens.length;g.scopes.push(new $n(t,e,!1)),g.scopeDepth--}function Mme(){N(),ft(),Re()}function Tme(){Id(!0),me&&rs()}function qme(){if(N(),ni(),C(l._catch)){N();let t=null;if(C(l.parenL)&&(g.scopeDepth++,t=g.tokens.length,O(l.parenL),Tme(),O(l.parenR)),ni(),t!=null){let e=g.tokens.length;g.scopes.push(new $n(t,e,!1)),g.scopeDepth--}}S(l._finally)&&ni()}function $d(t){N(),NG(!1,t),Re()}function Gme(){N(),Rd(),wn(!1)}function zme(){N()}function Ume(){wn(!0)}function Hme(t){me?L6(t):be?fG(t):Re()}function ni(t=!1,e=0){let n=g.tokens.length;g.scopeDepth++,O(l.braceL),e&&(g.tokens[g.tokens.length-1].contextId=e),Pc(l.braceR),e&&(g.tokens[g.tokens.length-1].contextId=e);let a=g.tokens.length;g.scopes.push(new $n(n,a,t)),g.scopeDepth--}function Pc(t){for(;!S(t)&&!g.error;)wn(!0)}function av(){O(l.semi),C(l.semi)||ft(),O(l.semi),C(l.parenR)||ft(),O(l.parenR),wn(!1)}function QG(t){t?it(v._of):N(),ft(),O(l.parenR),wn(!1)}function NG(t,e){for(;;){if(Zme(e),S(l.eq)){let n=g.tokens.length-1;gt(t),g.tokens[n].rhsEndIndex=g.tokens.length}if(!S(l.comma))break}}function Zme(t){Id(t),me?M6():be&&vG()}function Vr(t,e,n=!1){C(l.star)&&N(),e&&!n&&!C(l.name)&&!C(l._yield)&&re();let a=null;C(l.name)&&(e||(a=g.tokens.length,g.scopeDepth++),tr(!1));let r=g.tokens.length;g.scopeDepth++,Xr(),U0(t);let i=g.tokens.length;g.scopes.push(new $n(r,i,!0)),g.scopeDepth--,a!==null&&(g.scopes.push(new $n(a,i,!0)),g.scopeDepth--)}function Xr(t=!1,e=0){me?P6():be&&xG(),O(l.parenL),e&&(g.tokens[g.tokens.length-1].contextId=e),Dd(l.parenR,!1,!1,t,e),e&&(g.tokens[g.tokens.length-1].contextId=e)}function ei(t,e=!1){let n=ns();N(),g.tokens[g.tokens.length-1].contextId=n,g.tokens[g.tokens.length-1].isExpression=!t;let a=null;t||(a=g.tokens.length,g.scopeDepth++),Jme(t,e),Vme();let r=g.tokens.length;if(Yme(n),!g.error&&(g.tokens[r].contextId=n,g.tokens[g.tokens.length-1].contextId=n,a!==null)){let i=g.tokens.length;g.scopes.push(new $n(a,i,!1)),g.scopeDepth--}}function LG(){return C(l.eq)||C(l.semi)||C(l.braceR)||C(l.bang)||C(l.colon)}function $G(){return C(l.parenL)||C(l.lessThan)}function Yme(t){for(O(l.braceL);!S(l.braceR)&&!g.error;){if(S(l.semi))continue;if(C(l.at)){OG();continue}let e=g.start;Wme(e,t)}}function Wme(t,e){me&&Fd([v._declare,v._public,v._protected,v._private,v._override]);let n=!1;if(C(l.name)&&g.contextualKeyword===v._static){if(ne(),$G()){Pd(t,!1);return}else if(LG()){jf();return}if(g.tokens[g.tokens.length-1].type=l._static,n=!0,C(l.braceL)){g.tokens[g.tokens.length-1].contextId=e,ni();return}}Kme(t,n,e)}function Kme(t,e,n){if(me&&N6(e))return;if(S(l.star)){jd(n),Pd(t,!1);return}jd(n);let a=!1,r=g.tokens[g.tokens.length-1];r.contextualKeyword===v._constructor&&(a=!0),IG(),$G()?Pd(t,a):LG()?jf():r.contextualKeyword===v._async&&!Ia()?(g.tokens[g.tokens.length-1].type=l._async,C(l.star)&&N(),jd(n),IG(),Pd(t,!1)):(r.contextualKeyword===v._get||r.contextualKeyword===v._set)&&!(Ia()&&C(l.star))?(r.contextualKeyword===v._get?g.tokens[g.tokens.length-1].type=l._get:g.tokens[g.tokens.length-1].type=l._set,jd(n),Pd(t,!1)):r.contextualKeyword===v._accessor&&!Ia()?(jd(n),jf()):Ia()?jf():re()}function Pd(t,e){me?ao():be&&C(l.lessThan)&&Sa(),If(t,e)}function jd(t){is(t)}function IG(){if(me){let t=le(0);S(l.question),se(t)}}function jf(){if(me?(df(l.bang),rs()):be&&C(l.colon)&&ti(),C(l.eq)){let t=g.tokens.length;N(),gt(),g.tokens[t].rhsEndIndex=g.tokens.length}Re()}function Jme(t,e=!1){me&&(!t||e)&&Y(v._implements)||(C(l.name)&&tr(!0),me?ao():be&&C(l.lessThan)&&Sa())}function Vme(){let t=!1;S(l._extends)?(M0(),t=!0):t=!1,me?R6(t):be&&CG(t)}function tv(){let t=g.tokens.length-1;me&&I6()||(nge()?age():tge()?(ne(),C(l.comma)&&je()===l.star?(O(l.comma),O(l.star),We(v._as),ne()):RG(),qc()):S(l._default)?Xme():ige()?ege():(Rf(),qc()),g.tokens[t].rhsEndIndex=g.tokens.length)}function Xme(){if(me&&S6()||be&&gG())return;let t=g.start;S(l._function)?Vr(t,!0,!0):Y(v._async)&&je()===l._function?(it(v._async),S(l._function),Vr(t,!0,!0)):C(l._class)?ei(!0,!0):C(l.at)?(Ff(),ei(!0,!0)):(gt(),Re())}function ege(){me?$6():be?yG():wn(!0)}function tge(){if(me&&O0())return!1;if(be&&hG())return!1;if(C(l.name))return g.contextualKeyword!==v._async;if(!C(l._default))return!1;let t=kd(),e=Kr(),n=e.type===l.name&&e.contextualKeyword===v._from;if(e.type===l.comma)return!0;if(n){let a=j.charCodeAt(t0(t+4));return a===I.quotationMark||a===I.apostrophe}return!1}function RG(){S(l.comma)&&Rf()}function qc(){it(v._from)&&(Fa(),jG()),Re()}function nge(){return be?wG():C(l.star)}function age(){be?kG():Lf()}function Lf(){O(l.star),Y(v._as)?rge():qc()}function rge(){N(),g.tokens[g.tokens.length-1].type=l._as,ne(),RG(),qc()}function ige(){return me&&O0()||be&&bG()||g.type===l._var||g.type===l._const||g.type===l._let||g.type===l._function||g.type===l._class||Y(v._async)||C(l.at)}function Rf(){let t=!0;for(O(l.braceL);!S(l.braceR)&&!g.error;){if(t)t=!1;else if(O(l.comma),S(l.braceR))break;oge()}}function oge(){if(me){F6();return}ne(),g.tokens[g.tokens.length-1].identifierRole=W.ExportAccess,it(v._as)&&ne()}function sge(){let t=g.snapshot();return We(v._module),it(v._from)?Y(v._from)?(g.restoreFromSnapshot(t),!0):(g.restoreFromSnapshot(t),!1):C(l.comma)?(g.restoreFromSnapshot(t),!1):(g.restoreFromSnapshot(t),!0)}function cge(){Y(v._module)&&sge()&&N()}function nv(){if(me&&C(l.name)&&je()===l.eq){_f();return}if(me&&Y(v._type)){let t=Kr();if(t.type===l.name&&t.contextualKeyword!==v._from){if(We(v._type),je()===l.eq){_f();return}}else(t.type===l.star||t.type===l.braceL)&&We(v._type)}C(l.string)?Fa():(cge(),Age(),We(v._from),Fa()),jG(),Re()}function lge(){return C(l.name)}function DG(){Nc()}function Age(){be&&_G();let t=!0;if(!(lge()&&(DG(),!S(l.comma)))){if(C(l.star)){N(),We(v._as),DG();return}for(O(l.braceL);!S(l.braceR)&&!g.error;){if(t)t=!1;else if(S(l.colon)&&re("ES2015 named imports do not destructure. Use another statement for destructuring after the import."),O(l.comma),S(l.braceR))break;dge()}}}function dge(){if(me){D6();return}if(be){BG();return}Nc(),Y(v._as)&&(g.tokens[g.tokens.length-1].identifierRole=W.ImportAccess,N(),Nc())}function jG(){(C(l._with)||Y(v._assert)&&!$t())&&(N(),Sd(!1,!1))}function PG(){return g.pos===0&&j.charCodeAt(0)===I.numberSign&&j.charCodeAt(1)===I.exclamationMark&&r0(2),a0(),FG()}var Pf=class{constructor(e,n){this.tokens=e,this.scopes=n}};function MG(t,e,n,a){if(a&&n)throw new Error("Cannot combine flow and typescript plugins.");Cq(t,e,n,a);let r=PG();if(g.error)throw kq(g.error);return r}function rv(t){let e=t.currentIndex(),n=0,a=t.currentToken();do{let r=t.tokens[e];if(r.isOptionalChainStart&&n++,r.isOptionalChainEnd&&n--,n+=r.numNullishCoalesceStarts,n-=r.numNullishCoalesceEnds,r.contextualKeyword===v._await&&r.identifierRole==null&&r.scopeDepth===a.scopeDepth)return!0;e+=1}while(n>0&&e<t.tokens.length);return!1}var Md=class t{__init(){this.resultCode=""}__init2(){this.resultMappings=new Array(this.tokens.length)}__init3(){this.tokenIndex=0}constructor(e,n,a,r,i){this.code=e,this.tokens=n,this.isFlowEnabled=a,this.disableESTransforms=r,this.helperManager=i,t.prototype.__init.call(this),t.prototype.__init2.call(this),t.prototype.__init3.call(this)}snapshot(){return{resultCode:this.resultCode,tokenIndex:this.tokenIndex}}restoreToSnapshot(e){this.resultCode=e.resultCode,this.tokenIndex=e.tokenIndex}dangerouslyGetAndRemoveCodeSinceSnapshot(e){let n=this.resultCode.slice(e.resultCode.length);return this.resultCode=e.resultCode,n}reset(){this.resultCode="",this.resultMappings=new Array(this.tokens.length),this.tokenIndex=0}matchesContextualAtIndex(e,n){return this.matches1AtIndex(e,l.name)&&this.tokens[e].contextualKeyword===n}identifierNameAtIndex(e){return this.identifierNameForToken(this.tokens[e])}identifierNameAtRelativeIndex(e){return this.identifierNameForToken(this.tokenAtRelativeIndex(e))}identifierName(){return this.identifierNameForToken(this.currentToken())}identifierNameForToken(e){return this.code.slice(e.start,e.end)}rawCodeForToken(e){return this.code.slice(e.start,e.end)}stringValueAtIndex(e){return this.stringValueForToken(this.tokens[e])}stringValue(){return this.stringValueForToken(this.currentToken())}stringValueForToken(e){return this.code.slice(e.start+1,e.end-1)}matches1AtIndex(e,n){return this.tokens[e].type===n}matches2AtIndex(e,n,a){return this.tokens[e].type===n&&this.tokens[e+1].type===a}matches3AtIndex(e,n,a,r){return this.tokens[e].type===n&&this.tokens[e+1].type===a&&this.tokens[e+2].type===r}matches1(e){return this.tokens[this.tokenIndex].type===e}matches2(e,n){return this.tokens[this.tokenIndex].type===e&&this.tokens[this.tokenIndex+1].type===n}matches3(e,n,a){return this.tokens[this.tokenIndex].type===e&&this.tokens[this.tokenIndex+1].type===n&&this.tokens[this.tokenIndex+2].type===a}matches4(e,n,a,r){return this.tokens[this.tokenIndex].type===e&&this.tokens[this.tokenIndex+1].type===n&&this.tokens[this.tokenIndex+2].type===a&&this.tokens[this.tokenIndex+3].type===r}matches5(e,n,a,r,i){return this.tokens[this.tokenIndex].type===e&&this.tokens[this.tokenIndex+1].type===n&&this.tokens[this.tokenIndex+2].type===a&&this.tokens[this.tokenIndex+3].type===r&&this.tokens[this.tokenIndex+4].type===i}matchesContextual(e){return this.matchesContextualAtIndex(this.tokenIndex,e)}matchesContextIdAndLabel(e,n){return this.matches1(e)&&this.currentToken().contextId===n}previousWhitespaceAndComments(){let e=this.code.slice(this.tokenIndex>0?this.tokens[this.tokenIndex-1].end:0,this.tokenIndex<this.tokens.length?this.tokens[this.tokenIndex].start:this.code.length);return this.isFlowEnabled&&(e=e.replace(/@flow/g,"")),e}replaceToken(e){this.resultCode+=this.previousWhitespaceAndComments(),this.appendTokenPrefix(),this.resultMappings[this.tokenIndex]=this.resultCode.length,this.resultCode+=e,this.appendTokenSuffix(),this.tokenIndex++}replaceTokenTrimmingLeftWhitespace(e){this.resultCode+=this.previousWhitespaceAndComments().replace(/[^\r\n]/g,""),this.appendTokenPrefix(),this.resultMappings[this.tokenIndex]=this.resultCode.length,this.resultCode+=e,this.appendTokenSuffix(),this.tokenIndex++}removeInitialToken(){this.replaceToken("")}removeToken(){this.replaceTokenTrimmingLeftWhitespace("")}removeBalancedCode(){let e=0;for(;!this.isAtEnd();){if(this.matches1(l.braceL))e++;else if(this.matches1(l.braceR)){if(e===0)return;e--}this.removeToken()}}copyExpectedToken(e){if(this.tokens[this.tokenIndex].type!==e)throw new Error(`Expected token ${e}`);this.copyToken()}copyToken(){this.resultCode+=this.previousWhitespaceAndComments(),this.appendTokenPrefix(),this.resultMappings[this.tokenIndex]=this.resultCode.length,this.resultCode+=this.code.slice(this.tokens[this.tokenIndex].start,this.tokens[this.tokenIndex].end),this.appendTokenSuffix(),this.tokenIndex++}copyTokenWithPrefix(e){this.resultCode+=this.previousWhitespaceAndComments(),this.appendTokenPrefix(),this.resultCode+=e,this.resultMappings[this.tokenIndex]=this.resultCode.length,this.resultCode+=this.code.slice(this.tokens[this.tokenIndex].start,this.tokens[this.tokenIndex].end),this.appendTokenSuffix(),this.tokenIndex++}appendTokenPrefix(){let e=this.currentToken();if((e.numNullishCoalesceStarts||e.isOptionalChainStart)&&(e.isAsyncOperation=rv(this)),!this.disableESTransforms){if(e.numNullishCoalesceStarts)for(let n=0;n<e.numNullishCoalesceStarts;n++)e.isAsyncOperation?(this.resultCode+="await ",this.resultCode+=this.helperManager.getHelperName("asyncNullishCoalesce")):this.resultCode+=this.helperManager.getHelperName("nullishCoalesce"),this.resultCode+="(";e.isOptionalChainStart&&(e.isAsyncOperation&&(this.resultCode+="await "),this.tokenIndex>0&&this.tokenAtRelativeIndex(-1).type===l._delete?e.isAsyncOperation?this.resultCode+=this.helperManager.getHelperName("asyncOptionalChainDelete"):this.resultCode+=this.helperManager.getHelperName("optionalChainDelete"):e.isAsyncOperation?this.resultCode+=this.helperManager.getHelperName("asyncOptionalChain"):this.resultCode+=this.helperManager.getHelperName("optionalChain"),this.resultCode+="([")}}appendTokenSuffix(){let e=this.currentToken();if(e.isOptionalChainEnd&&!this.disableESTransforms&&(this.resultCode+="])"),e.numNullishCoalesceEnds&&!this.disableESTransforms)for(let n=0;n<e.numNullishCoalesceEnds;n++)this.resultCode+="))"}appendCode(e){this.resultCode+=e}currentToken(){return this.tokens[this.tokenIndex]}currentTokenCode(){let e=this.currentToken();return this.code.slice(e.start,e.end)}tokenAtRelativeIndex(e){return this.tokens[this.tokenIndex+e]}currentIndex(){return this.tokenIndex}nextToken(){if(this.tokenIndex===this.tokens.length)throw new Error("Unexpectedly reached end of input.");this.tokenIndex++}previousToken(){this.tokenIndex--}finish(){if(this.tokenIndex!==this.tokens.length)throw new Error("Tried to finish processing tokens before reaching the end.");return this.resultCode+=this.previousWhitespaceAndComments(),{code:this.resultCode,mappings:this.resultMappings}}isAtEnd(){return this.tokenIndex===this.tokens.length}};function ov(t,e,n,a){let r=e.snapshot(),i=uge(e),o=[],s=[],c=[],A=null,d=[],u=[],p=e.currentToken().contextId;if(p==null)throw new Error("Expected non-null class context ID on class open-brace.");for(e.nextToken();!e.matchesContextIdAndLabel(l.braceR,p);)if(e.matchesContextual(v._constructor)&&!e.currentToken().isType)({constructorInitializerStatements:o,constructorInsertPos:A}=TG(e));else if(e.matches1(l.semi))a||u.push({start:e.currentIndex(),end:e.currentIndex()+1}),e.nextToken();else if(e.currentToken().isType)e.nextToken();else{let m=e.currentIndex(),f=!1,h=!1,w=!1;for(;Mf(e.currentToken());)e.matches1(l._static)&&(f=!0),e.matches1(l.hash)&&(h=!0),(e.matches1(l._declare)||e.matches1(l._abstract))&&(w=!0),e.nextToken();if(f&&e.matches1(l.braceL)){iv(e,p);continue}if(h){iv(e,p);continue}if(e.matchesContextual(v._constructor)&&!e.currentToken().isType){({constructorInitializerStatements:o,constructorInsertPos:A}=TG(e));continue}let b=e.currentIndex();if(pge(e),e.matches1(l.lessThan)||e.matches1(l.parenL)){iv(e,p);continue}for(;e.currentToken().isType;)e.nextToken();if(e.matches1(l.eq)){let y=e.currentIndex(),k=e.currentToken().rhsEndIndex;if(k==null)throw new Error("Expected rhsEndIndex on class field assignment.");for(e.nextToken();e.currentIndex()<k;)t.processToken();let E;f?(E=n.claimFreeName("__initStatic"),c.push(E)):(E=n.claimFreeName("__init"),s.push(E)),d.push({initializerName:E,equalsIndex:y,start:b,end:e.currentIndex()})}else(!a||w)&&u.push({start:m,end:e.currentIndex()})}return e.restoreToSnapshot(r),a?{headerInfo:i,constructorInitializerStatements:o,instanceInitializerNames:[],staticInitializerNames:[],constructorInsertPos:A,fields:[],rangesToRemove:u}:{headerInfo:i,constructorInitializerStatements:o,instanceInitializerNames:s,staticInitializerNames:c,constructorInsertPos:A,fields:d,rangesToRemove:u}}function iv(t,e){for(t.nextToken();t.currentToken().contextId!==e;)t.nextToken();for(;Mf(t.tokenAtRelativeIndex(-1));)t.previousToken()}function uge(t){let e=t.currentToken(),n=e.contextId;if(n==null)throw new Error("Expected context ID on class token.");let a=e.isExpression;if(a==null)throw new Error("Expected isExpression on class token.");let r=null,i=!1;for(t.nextToken(),t.matches1(l.name)&&(r=t.identifierName());!t.matchesContextIdAndLabel(l.braceL,n);)t.matches1(l._extends)&&!t.currentToken().isType&&(i=!0),t.nextToken();return{isExpression:a,className:r,hasSuperclass:i}}function TG(t){let e=[];t.nextToken();let n=t.currentToken().contextId;if(n==null)throw new Error("Expected context ID on open-paren starting constructor params.");for(;!t.matchesContextIdAndLabel(l.parenR,n);)if(t.currentToken().contextId===n){if(t.nextToken(),Mf(t.currentToken())){for(t.nextToken();Mf(t.currentToken());)t.nextToken();let i=t.currentToken();if(i.type!==l.name)throw new Error("Expected identifier after access modifiers in constructor arg.");let o=t.identifierNameForToken(i);e.push(`this.${o} = ${o}`)}}else t.nextToken();for(t.nextToken();t.currentToken().isType;)t.nextToken();let a=t.currentIndex(),r=!1;for(;!t.matchesContextIdAndLabel(l.braceR,n);){if(!r&&t.matches2(l._super,l.parenL)){t.nextToken();let i=t.currentToken().contextId;if(i==null)throw new Error("Expected a context ID on the super call");for(;!t.matchesContextIdAndLabel(l.parenR,i);)t.nextToken();a=t.currentIndex(),r=!0}t.nextToken()}return t.nextToken(),{constructorInitializerStatements:e,constructorInsertPos:a}}function Mf(t){return[l._async,l._get,l._set,l.plus,l.minus,l._readonly,l._static,l._public,l._private,l._protected,l._override,l._abstract,l.star,l._declare,l.hash].includes(t.type)}function pge(t){if(t.matches1(l.bracketL)){let n=t.currentToken().contextId;if(n==null)throw new Error("Expected class context ID on computed name open bracket.");for(;!t.matchesContextIdAndLabel(l.bracketR,n);)t.nextToken();t.nextToken()}else t.nextToken()}function Td(t){if(t.removeInitialToken(),t.removeToken(),t.removeToken(),t.removeToken(),t.matches1(l.parenL))t.removeToken(),t.removeToken(),t.removeToken();else for(;t.matches1(l.dot);)t.removeToken(),t.removeToken()}var Tf={typeDeclarations:new Set,valueDeclarations:new Set};function qd(t){let e=new Set,n=new Set;for(let a=0;a<t.tokens.length;a++){let r=t.tokens[a];r.type===l.name&&Af(r)&&(r.isType?e.add(t.identifierNameForToken(r)):n.add(t.identifierNameForToken(r)))}return{typeDeclarations:e,valueDeclarations:n}}function Gd(t){let e=t.currentIndex();for(;!t.matches1AtIndex(e,l.braceR);)e++;return t.matchesContextualAtIndex(e+1,v._from)&&t.matches1AtIndex(e+2,l.string)}function ai(t){(t.matches2(l._with,l.braceL)||t.matches2(l.name,l.braceL)&&t.matchesContextual(v._assert))&&(t.removeToken(),t.removeToken(),t.removeBalancedCode(),t.removeToken())}function zd(t,e,n,a){if(!t||e)return!1;let r=n.currentToken();if(r.rhsEndIndex==null)throw new Error("Expected non-null rhsEndIndex on export token.");let i=r.rhsEndIndex-n.currentIndex();if(i!==3&&!(i===4&&n.matches1AtIndex(r.rhsEndIndex-1,l.semi)))return!1;let o=n.tokenAtRelativeIndex(2);if(o.type!==l.name)return!1;let s=n.identifierNameForToken(o);return a.typeDeclarations.has(s)&&!a.valueDeclarations.has(s)}var Ud=class t extends Xe{__init(){this.hadExport=!1}__init2(){this.hadNamedExport=!1}__init3(){this.hadDefaultExport=!1}constructor(e,n,a,r,i,o,s,c,A,d,u,p){super(),this.rootTransformer=e,this.tokens=n,this.importProcessor=a,this.nameManager=r,this.helperManager=i,this.reactHotLoaderTransformer=o,this.enableLegacyBabel5ModuleInterop=s,this.enableLegacyTypeScriptModuleInterop=c,this.isTypeScriptTransformEnabled=A,this.isFlowTransformEnabled=d,this.preserveDynamicImport=u,this.keepUnusedImports=p,t.prototype.__init.call(this),t.prototype.__init2.call(this),t.prototype.__init3.call(this),this.declarationInfo=A?qd(n):Tf}getPrefixCode(){let e="";return this.hadExport&&(e+='Object.defineProperty(exports, "__esModule", {value: true});'),e}getSuffixCode(){return this.enableLegacyBabel5ModuleInterop&&this.hadDefaultExport&&!this.hadNamedExport?` +module.exports = exports.default; +`:""}process(){return this.tokens.matches3(l._import,l.name,l.eq)?this.processImportEquals():this.tokens.matches1(l._import)?(this.processImport(),!0):this.tokens.matches2(l._export,l.eq)?(this.tokens.replaceToken("module.exports"),!0):this.tokens.matches1(l._export)&&!this.tokens.currentToken().isType?(this.hadExport=!0,this.processExport()):this.tokens.matches2(l.name,l.postIncDec)&&this.processPostIncDec()?!0:this.tokens.matches1(l.name)||this.tokens.matches1(l.jsxName)?this.processIdentifier():this.tokens.matches1(l.eq)?this.processAssignment():this.tokens.matches1(l.assign)?this.processComplexAssignment():this.tokens.matches1(l.preIncDec)?this.processPreIncDec():!1}processImportEquals(){let e=this.tokens.identifierNameAtIndex(this.tokens.currentIndex()+1);return this.importProcessor.shouldAutomaticallyElideImportedName(e)?Td(this.tokens):this.tokens.replaceToken("const"),!0}processImport(){if(this.tokens.matches2(l._import,l.parenL)){if(this.preserveDynamicImport){this.tokens.copyToken();return}let n=this.enableLegacyTypeScriptModuleInterop?"":`${this.helperManager.getHelperName("interopRequireWildcard")}(`;this.tokens.replaceToken(`Promise.resolve().then(() => ${n}require`);let a=this.tokens.currentToken().contextId;if(a==null)throw new Error("Expected context ID on dynamic import invocation.");for(this.tokens.copyToken();!this.tokens.matchesContextIdAndLabel(l.parenR,a);)this.rootTransformer.processToken();this.tokens.replaceToken(n?")))":"))");return}if(this.removeImportAndDetectIfShouldElide())this.tokens.removeToken();else{let n=this.tokens.stringValue();this.tokens.replaceTokenTrimmingLeftWhitespace(this.importProcessor.claimImportCode(n)),this.tokens.appendCode(this.importProcessor.claimImportCode(n))}ai(this.tokens),this.tokens.matches1(l.semi)&&this.tokens.removeToken()}removeImportAndDetectIfShouldElide(){if(this.tokens.removeInitialToken(),this.tokens.matchesContextual(v._type)&&!this.tokens.matches1AtIndex(this.tokens.currentIndex()+1,l.comma)&&!this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+1,v._from))return this.removeRemainingImport(),!0;if(this.tokens.matches1(l.name)||this.tokens.matches1(l.star))return this.removeRemainingImport(),!1;if(this.tokens.matches1(l.string))return!1;let e=!1,n=!1;for(;!this.tokens.matches1(l.string);)(!e&&this.tokens.matches1(l.braceL)||this.tokens.matches1(l.comma))&&(this.tokens.removeToken(),this.tokens.matches1(l.braceR)||(n=!0),(this.tokens.matches2(l.name,l.comma)||this.tokens.matches2(l.name,l.braceR)||this.tokens.matches4(l.name,l.name,l.name,l.comma)||this.tokens.matches4(l.name,l.name,l.name,l.braceR))&&(e=!0)),this.tokens.removeToken();return this.keepUnusedImports?!1:this.isTypeScriptTransformEnabled?!e:this.isFlowTransformEnabled?n&&!e:!1}removeRemainingImport(){for(;!this.tokens.matches1(l.string);)this.tokens.removeToken()}processIdentifier(){let e=this.tokens.currentToken();if(e.shadowsGlobal)return!1;if(e.identifierRole===W.ObjectShorthand)return this.processObjectShorthand();if(e.identifierRole!==W.Access)return!1;let n=this.importProcessor.getIdentifierReplacement(this.tokens.identifierNameForToken(e));if(!n)return!1;let a=this.tokens.currentIndex()+1;for(;a<this.tokens.tokens.length&&this.tokens.tokens[a].type===l.parenR;)a++;return this.tokens.tokens[a].type===l.parenL?this.tokens.tokenAtRelativeIndex(1).type===l.parenL&&this.tokens.tokenAtRelativeIndex(-1).type!==l._new?(this.tokens.replaceToken(`${n}.call(void 0, `),this.tokens.removeToken(),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(l.parenR)):this.tokens.replaceToken(`(0, ${n})`):this.tokens.replaceToken(n),!0}processObjectShorthand(){let e=this.tokens.identifierName(),n=this.importProcessor.getIdentifierReplacement(e);return n?(this.tokens.replaceToken(`${e}: ${n}`),!0):!1}processExport(){if(this.tokens.matches2(l._export,l._enum)||this.tokens.matches3(l._export,l._const,l._enum))return this.hadNamedExport=!0,!1;if(this.tokens.matches2(l._export,l._default))return this.tokens.matches3(l._export,l._default,l._enum)?(this.hadDefaultExport=!0,!1):(this.processExportDefault(),!0);if(this.tokens.matches2(l._export,l.braceL))return this.processExportBindings(),!0;if(this.tokens.matches2(l._export,l.name)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+1,v._type)){if(this.tokens.removeInitialToken(),this.tokens.removeToken(),this.tokens.matches1(l.braceL)){for(;!this.tokens.matches1(l.braceR);)this.tokens.removeToken();this.tokens.removeToken()}else this.tokens.removeToken(),this.tokens.matches1(l._as)&&(this.tokens.removeToken(),this.tokens.removeToken());return this.tokens.matchesContextual(v._from)&&this.tokens.matches1AtIndex(this.tokens.currentIndex()+1,l.string)&&(this.tokens.removeToken(),this.tokens.removeToken(),ai(this.tokens)),!0}if(this.hadNamedExport=!0,this.tokens.matches2(l._export,l._var)||this.tokens.matches2(l._export,l._let)||this.tokens.matches2(l._export,l._const))return this.processExportVar(),!0;if(this.tokens.matches2(l._export,l._function)||this.tokens.matches3(l._export,l.name,l._function))return this.processExportFunction(),!0;if(this.tokens.matches2(l._export,l._class)||this.tokens.matches3(l._export,l._abstract,l._class)||this.tokens.matches2(l._export,l.at))return this.processExportClass(),!0;if(this.tokens.matches2(l._export,l.star))return this.processExportStar(),!0;throw new Error("Unrecognized export syntax.")}processAssignment(){let e=this.tokens.currentIndex(),n=this.tokens.tokens[e-1];if(n.isType||n.type!==l.name||n.shadowsGlobal||e>=2&&this.tokens.matches1AtIndex(e-2,l.dot)||e>=2&&[l._var,l._let,l._const].includes(this.tokens.tokens[e-2].type))return!1;let a=this.importProcessor.resolveExportBinding(this.tokens.identifierNameForToken(n));return a?(this.tokens.copyToken(),this.tokens.appendCode(` ${a} =`),!0):!1}processComplexAssignment(){let e=this.tokens.currentIndex(),n=this.tokens.tokens[e-1];if(n.type!==l.name||n.shadowsGlobal||e>=2&&this.tokens.matches1AtIndex(e-2,l.dot))return!1;let a=this.importProcessor.resolveExportBinding(this.tokens.identifierNameForToken(n));return a?(this.tokens.appendCode(` = ${a}`),this.tokens.copyToken(),!0):!1}processPreIncDec(){let e=this.tokens.currentIndex(),n=this.tokens.tokens[e+1];if(n.type!==l.name||n.shadowsGlobal||e+2<this.tokens.tokens.length&&(this.tokens.matches1AtIndex(e+2,l.dot)||this.tokens.matches1AtIndex(e+2,l.bracketL)||this.tokens.matches1AtIndex(e+2,l.parenL)))return!1;let a=this.tokens.identifierNameForToken(n),r=this.importProcessor.resolveExportBinding(a);return r?(this.tokens.appendCode(`${r} = `),this.tokens.copyToken(),!0):!1}processPostIncDec(){let e=this.tokens.currentIndex(),n=this.tokens.tokens[e],a=this.tokens.tokens[e+1];if(n.type!==l.name||n.shadowsGlobal||e>=1&&this.tokens.matches1AtIndex(e-1,l.dot))return!1;let r=this.tokens.identifierNameForToken(n),i=this.importProcessor.resolveExportBinding(r);if(!i)return!1;let o=this.tokens.rawCodeForToken(a),s=this.importProcessor.getIdentifierReplacement(r)||r;if(o==="++")this.tokens.replaceToken(`(${s} = ${i} = ${s} + 1, ${s} - 1)`);else if(o==="--")this.tokens.replaceToken(`(${s} = ${i} = ${s} - 1, ${s} + 1)`);else throw new Error(`Unexpected operator: ${o}`);return this.tokens.removeToken(),!0}processExportDefault(){let e=!0;if(this.tokens.matches4(l._export,l._default,l._function,l.name)||this.tokens.matches5(l._export,l._default,l.name,l._function,l.name)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+2,v._async)){this.tokens.removeInitialToken(),this.tokens.removeToken();let n=this.processNamedFunction();this.tokens.appendCode(` exports.default = ${n};`)}else if(this.tokens.matches4(l._export,l._default,l._class,l.name)||this.tokens.matches5(l._export,l._default,l._abstract,l._class,l.name)||this.tokens.matches3(l._export,l._default,l.at)){this.tokens.removeInitialToken(),this.tokens.removeToken(),this.copyDecorators(),this.tokens.matches1(l._abstract)&&this.tokens.removeToken();let n=this.rootTransformer.processNamedClass();this.tokens.appendCode(` exports.default = ${n};`)}else if(zd(this.isTypeScriptTransformEnabled,this.keepUnusedImports,this.tokens,this.declarationInfo))e=!1,this.tokens.removeInitialToken(),this.tokens.removeToken(),this.tokens.removeToken();else if(this.reactHotLoaderTransformer){let n=this.nameManager.claimFreeName("_default");this.tokens.replaceToken(`let ${n}; exports.`),this.tokens.copyToken(),this.tokens.appendCode(` = ${n} =`),this.reactHotLoaderTransformer.setExtractedDefaultExportName(n)}else this.tokens.replaceToken("exports."),this.tokens.copyToken(),this.tokens.appendCode(" =");e&&(this.hadDefaultExport=!0)}copyDecorators(){for(;this.tokens.matches1(l.at);)if(this.tokens.copyToken(),this.tokens.matches1(l.parenL))this.tokens.copyExpectedToken(l.parenL),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(l.parenR);else{for(this.tokens.copyExpectedToken(l.name);this.tokens.matches1(l.dot);)this.tokens.copyExpectedToken(l.dot),this.tokens.copyExpectedToken(l.name);this.tokens.matches1(l.parenL)&&(this.tokens.copyExpectedToken(l.parenL),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(l.parenR))}}processExportVar(){this.isSimpleExportVar()?this.processSimpleExportVar():this.processComplexExportVar()}isSimpleExportVar(){let e=this.tokens.currentIndex();if(e++,e++,!this.tokens.matches1AtIndex(e,l.name))return!1;for(e++;e<this.tokens.tokens.length&&this.tokens.tokens[e].isType;)e++;return!!this.tokens.matches1AtIndex(e,l.eq)}processSimpleExportVar(){this.tokens.removeInitialToken(),this.tokens.copyToken();let e=this.tokens.identifierName();for(;!this.tokens.matches1(l.eq);)this.rootTransformer.processToken();let n=this.tokens.currentToken().rhsEndIndex;if(n==null)throw new Error("Expected = token with an end index.");for(;this.tokens.currentIndex()<n;)this.rootTransformer.processToken();this.tokens.appendCode(`; exports.${e} = ${e}`)}processComplexExportVar(){this.tokens.removeInitialToken(),this.tokens.removeToken();let e=this.tokens.matches1(l.braceL);e&&this.tokens.appendCode("(");let n=0;for(;;)if(this.tokens.matches1(l.braceL)||this.tokens.matches1(l.dollarBraceL)||this.tokens.matches1(l.bracketL))n++,this.tokens.copyToken();else if(this.tokens.matches1(l.braceR)||this.tokens.matches1(l.bracketR))n--,this.tokens.copyToken();else{if(n===0&&!this.tokens.matches1(l.name)&&!this.tokens.currentToken().isType)break;if(this.tokens.matches1(l.eq)){let a=this.tokens.currentToken().rhsEndIndex;if(a==null)throw new Error("Expected = token with an end index.");for(;this.tokens.currentIndex()<a;)this.rootTransformer.processToken()}else{let a=this.tokens.currentToken();if(lf(a)){let r=this.tokens.identifierName(),i=this.importProcessor.getIdentifierReplacement(r);if(i===null)throw new Error(`Expected a replacement for ${r} in \`export var\` syntax.`);vq(a)&&(i=`${r}: ${i}`),this.tokens.replaceToken(i)}else this.rootTransformer.processToken()}}if(e){let a=this.tokens.currentToken().rhsEndIndex;if(a==null)throw new Error("Expected = token with an end index.");for(;this.tokens.currentIndex()<a;)this.rootTransformer.processToken();this.tokens.appendCode(")")}}processExportFunction(){this.tokens.replaceToken("");let e=this.processNamedFunction();this.tokens.appendCode(` exports.${e} = ${e};`)}processNamedFunction(){if(this.tokens.matches1(l._function))this.tokens.copyToken();else if(this.tokens.matches2(l.name,l._function)){if(!this.tokens.matchesContextual(v._async))throw new Error("Expected async keyword in function export.");this.tokens.copyToken(),this.tokens.copyToken()}if(this.tokens.matches1(l.star)&&this.tokens.copyToken(),!this.tokens.matches1(l.name))throw new Error("Expected identifier for exported function name.");let e=this.tokens.identifierName();if(this.tokens.copyToken(),this.tokens.currentToken().isType)for(this.tokens.removeInitialToken();this.tokens.currentToken().isType;)this.tokens.removeToken();return this.tokens.copyExpectedToken(l.parenL),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(l.parenR),this.rootTransformer.processPossibleTypeRange(),this.tokens.copyExpectedToken(l.braceL),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(l.braceR),e}processExportClass(){this.tokens.removeInitialToken(),this.copyDecorators(),this.tokens.matches1(l._abstract)&&this.tokens.removeToken();let e=this.rootTransformer.processNamedClass();this.tokens.appendCode(` exports.${e} = ${e};`)}processExportBindings(){this.tokens.removeInitialToken(),this.tokens.removeToken();let e=Gd(this.tokens),n=[];for(;;){if(this.tokens.matches1(l.braceR)){this.tokens.removeToken();break}let a=wr(this.tokens);for(;this.tokens.currentIndex()<a.endIndex;)this.tokens.removeToken();if(!(a.isType||!e&&this.shouldElideExportedIdentifier(a.leftName))){let i=a.rightName;i==="default"?this.hadDefaultExport=!0:this.hadNamedExport=!0;let o=a.leftName,s=this.importProcessor.getIdentifierReplacement(o);n.push(`exports.${i} = ${s||o};`)}if(this.tokens.matches1(l.braceR)){this.tokens.removeToken();break}if(this.tokens.matches2(l.comma,l.braceR)){this.tokens.removeToken(),this.tokens.removeToken();break}else if(this.tokens.matches1(l.comma))this.tokens.removeToken();else throw new Error(`Unexpected token: ${JSON.stringify(this.tokens.currentToken())}`)}if(this.tokens.matchesContextual(v._from)){this.tokens.removeToken();let a=this.tokens.stringValue();this.tokens.replaceTokenTrimmingLeftWhitespace(this.importProcessor.claimImportCode(a)),ai(this.tokens)}else this.tokens.appendCode(n.join(" "));this.tokens.matches1(l.semi)&&this.tokens.removeToken()}processExportStar(){for(this.tokens.removeInitialToken();!this.tokens.matches1(l.string);)this.tokens.removeToken();let e=this.tokens.stringValue();this.tokens.replaceTokenTrimmingLeftWhitespace(this.importProcessor.claimImportCode(e)),ai(this.tokens),this.tokens.matches1(l.semi)&&this.tokens.removeToken()}shouldElideExportedIdentifier(e){return this.isTypeScriptTransformEnabled&&!this.keepUnusedImports&&!this.declarationInfo.valueDeclarations.has(e)}};var Hd=class extends Xe{constructor(e,n,a,r,i,o,s,c){super(),this.tokens=e,this.nameManager=n,this.helperManager=a,this.reactHotLoaderTransformer=r,this.isTypeScriptTransformEnabled=i,this.isFlowTransformEnabled=o,this.keepUnusedImports=s,this.nonTypeIdentifiers=i&&!s?mf(e,c):new Set,this.declarationInfo=i&&!s?qd(e):Tf,this.injectCreateRequireForImportRequire=!!c.injectCreateRequireForImportRequire}process(){if(this.tokens.matches3(l._import,l.name,l.eq))return this.processImportEquals();if(this.tokens.matches4(l._import,l.name,l.name,l.eq)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+1,v._type)){this.tokens.removeInitialToken();for(let e=0;e<7;e++)this.tokens.removeToken();return!0}if(this.tokens.matches2(l._export,l.eq))return this.tokens.replaceToken("module.exports"),!0;if(this.tokens.matches5(l._export,l._import,l.name,l.name,l.eq)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+2,v._type)){this.tokens.removeInitialToken();for(let e=0;e<8;e++)this.tokens.removeToken();return!0}if(this.tokens.matches1(l._import))return this.processImport();if(this.tokens.matches2(l._export,l._default))return this.processExportDefault();if(this.tokens.matches2(l._export,l.braceL))return this.processNamedExports();if(this.tokens.matches2(l._export,l.name)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+1,v._type)){if(this.tokens.removeInitialToken(),this.tokens.removeToken(),this.tokens.matches1(l.braceL)){for(;!this.tokens.matches1(l.braceR);)this.tokens.removeToken();this.tokens.removeToken()}else this.tokens.removeToken(),this.tokens.matches1(l._as)&&(this.tokens.removeToken(),this.tokens.removeToken());return this.tokens.matchesContextual(v._from)&&this.tokens.matches1AtIndex(this.tokens.currentIndex()+1,l.string)&&(this.tokens.removeToken(),this.tokens.removeToken(),ai(this.tokens)),!0}return!1}processImportEquals(){let e=this.tokens.identifierNameAtIndex(this.tokens.currentIndex()+1);return this.shouldAutomaticallyElideImportedName(e)?Td(this.tokens):this.injectCreateRequireForImportRequire?(this.tokens.replaceToken("const"),this.tokens.copyToken(),this.tokens.copyToken(),this.tokens.replaceToken(this.helperManager.getHelperName("require"))):this.tokens.replaceToken("const"),!0}processImport(){if(this.tokens.matches2(l._import,l.parenL))return!1;let e=this.tokens.snapshot();if(this.removeImportTypeBindings()){for(this.tokens.restoreToSnapshot(e);!this.tokens.matches1(l.string);)this.tokens.removeToken();this.tokens.removeToken(),ai(this.tokens),this.tokens.matches1(l.semi)&&this.tokens.removeToken()}return!0}removeImportTypeBindings(){if(this.tokens.copyExpectedToken(l._import),this.tokens.matchesContextual(v._type)&&!this.tokens.matches1AtIndex(this.tokens.currentIndex()+1,l.comma)&&!this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+1,v._from))return!0;if(this.tokens.matches1(l.string))return this.tokens.copyToken(),!1;this.tokens.matchesContextual(v._module)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+2,v._from)&&this.tokens.copyToken();let e=!1,n=!1,a=!1;if(this.tokens.matches1(l.name)&&(this.shouldAutomaticallyElideImportedName(this.tokens.identifierName())?(this.tokens.removeToken(),this.tokens.matches1(l.comma)&&this.tokens.removeToken()):(e=!0,this.tokens.copyToken(),this.tokens.matches1(l.comma)&&(a=!0,this.tokens.removeToken()))),this.tokens.matches1(l.star))this.shouldAutomaticallyElideImportedName(this.tokens.identifierNameAtRelativeIndex(2))?(this.tokens.removeToken(),this.tokens.removeToken(),this.tokens.removeToken()):(a&&this.tokens.appendCode(","),e=!0,this.tokens.copyExpectedToken(l.star),this.tokens.copyExpectedToken(l.name),this.tokens.copyExpectedToken(l.name));else if(this.tokens.matches1(l.braceL)){for(a&&this.tokens.appendCode(","),this.tokens.copyToken();!this.tokens.matches1(l.braceR);){n=!0;let r=wr(this.tokens);if(r.isType||this.shouldAutomaticallyElideImportedName(r.rightName)){for(;this.tokens.currentIndex()<r.endIndex;)this.tokens.removeToken();this.tokens.matches1(l.comma)&&this.tokens.removeToken()}else{for(e=!0;this.tokens.currentIndex()<r.endIndex;)this.tokens.copyToken();this.tokens.matches1(l.comma)&&this.tokens.copyToken()}}this.tokens.copyExpectedToken(l.braceR)}return this.keepUnusedImports?!1:this.isTypeScriptTransformEnabled?!e:this.isFlowTransformEnabled?n&&!e:!1}shouldAutomaticallyElideImportedName(e){return this.isTypeScriptTransformEnabled&&!this.keepUnusedImports&&!this.nonTypeIdentifiers.has(e)}processExportDefault(){if(zd(this.isTypeScriptTransformEnabled,this.keepUnusedImports,this.tokens,this.declarationInfo))return this.tokens.removeInitialToken(),this.tokens.removeToken(),this.tokens.removeToken(),!0;if(!(this.tokens.matches4(l._export,l._default,l._function,l.name)||this.tokens.matches5(l._export,l._default,l.name,l._function,l.name)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+2,v._async)||this.tokens.matches4(l._export,l._default,l._class,l.name)||this.tokens.matches5(l._export,l._default,l._abstract,l._class,l.name))&&this.reactHotLoaderTransformer){let n=this.nameManager.claimFreeName("_default");return this.tokens.replaceToken(`let ${n}; export`),this.tokens.copyToken(),this.tokens.appendCode(` ${n} =`),this.reactHotLoaderTransformer.setExtractedDefaultExportName(n),!0}return!1}processNamedExports(){if(!this.isTypeScriptTransformEnabled)return!1;this.tokens.copyExpectedToken(l._export),this.tokens.copyExpectedToken(l.braceL);let e=Gd(this.tokens),n=!1;for(;!this.tokens.matches1(l.braceR);){let a=wr(this.tokens);if(a.isType||!e&&this.shouldElideExportedName(a.leftName)){for(;this.tokens.currentIndex()<a.endIndex;)this.tokens.removeToken();this.tokens.matches1(l.comma)&&this.tokens.removeToken()}else{for(n=!0;this.tokens.currentIndex()<a.endIndex;)this.tokens.copyToken();this.tokens.matches1(l.comma)&&this.tokens.copyToken()}}return this.tokens.copyExpectedToken(l.braceR),!this.keepUnusedImports&&e&&!n&&(this.tokens.removeToken(),this.tokens.removeToken(),ai(this.tokens)),!0}shouldElideExportedName(e){return this.isTypeScriptTransformEnabled&&!this.keepUnusedImports&&this.declarationInfo.typeDeclarations.has(e)&&!this.declarationInfo.valueDeclarations.has(e)}};var Zd=class extends Xe{constructor(e,n,a){super(),this.rootTransformer=e,this.tokens=n,this.isImportsTransformEnabled=a}process(){return this.rootTransformer.processPossibleArrowParamEnd()||this.rootTransformer.processPossibleAsyncArrowWithTypeParams()||this.rootTransformer.processPossibleTypeRange()?!0:this.tokens.matches1(l._enum)?(this.processEnum(),!0):this.tokens.matches2(l._export,l._enum)?(this.processNamedExportEnum(),!0):this.tokens.matches3(l._export,l._default,l._enum)?(this.processDefaultExportEnum(),!0):!1}processNamedExportEnum(){if(this.isImportsTransformEnabled){this.tokens.removeInitialToken();let e=this.tokens.identifierNameAtRelativeIndex(1);this.processEnum(),this.tokens.appendCode(` exports.${e} = ${e};`)}else this.tokens.copyToken(),this.processEnum()}processDefaultExportEnum(){this.tokens.removeInitialToken(),this.tokens.removeToken();let e=this.tokens.identifierNameAtRelativeIndex(1);this.processEnum(),this.isImportsTransformEnabled?this.tokens.appendCode(` exports.default = ${e};`):this.tokens.appendCode(` export default ${e};`)}processEnum(){this.tokens.replaceToken("const"),this.tokens.copyExpectedToken(l.name);let e=!1;this.tokens.matchesContextual(v._of)&&(this.tokens.removeToken(),e=this.tokens.matchesContextual(v._symbol),this.tokens.removeToken());let n=this.tokens.matches3(l.braceL,l.name,l.eq);this.tokens.appendCode(' = require("flow-enums-runtime")');let a=!e&&!n;for(this.tokens.replaceTokenTrimmingLeftWhitespace(a?".Mirrored([":"({");!this.tokens.matches1(l.braceR);){if(this.tokens.matches1(l.ellipsis)){this.tokens.removeToken();break}this.processEnumElement(e,n),this.tokens.matches1(l.comma)&&this.tokens.copyToken()}this.tokens.replaceToken(a?"]);":"});")}processEnumElement(e,n){if(e){let a=this.tokens.identifierName();this.tokens.copyToken(),this.tokens.appendCode(`: Symbol("${a}")`)}else n?(this.tokens.copyToken(),this.tokens.replaceTokenTrimmingLeftWhitespace(":"),this.tokens.copyToken()):this.tokens.replaceToken(`"${this.tokens.identifierName()}"`)}};function mge(t){let e,n=t[0],a=1;for(;a<t.length;){let r=t[a],i=t[a+1];if(a+=2,(r==="optionalAccess"||r==="optionalCall")&&n==null)return;r==="access"||r==="optionalAccess"?(e=n,n=i(n)):(r==="call"||r==="optionalCall")&&(n=i((...o)=>n.call(e,...o)),e=void 0)}return n}var qf="jest",gge=["mock","unmock","enableAutomock","disableAutomock"],Yd=class t extends Xe{__init(){this.hoistedFunctionNames=[]}constructor(e,n,a,r){super(),this.rootTransformer=e,this.tokens=n,this.nameManager=a,this.importProcessor=r,t.prototype.__init.call(this)}process(){return this.tokens.currentToken().scopeDepth===0&&this.tokens.matches4(l.name,l.dot,l.name,l.parenL)&&this.tokens.identifierName()===qf?mge([this,"access",e=>e.importProcessor,"optionalAccess",e=>e.getGlobalNames,"call",e=>e(),"optionalAccess",e=>e.has,"call",e=>e(qf)])?!1:this.extractHoistedCalls():!1}getHoistedCode(){return this.hoistedFunctionNames.length>0?this.hoistedFunctionNames.map(e=>`${e}();`).join(""):""}extractHoistedCalls(){this.tokens.removeToken();let e=!1;for(;this.tokens.matches3(l.dot,l.name,l.parenL);){let n=this.tokens.identifierNameAtIndex(this.tokens.currentIndex()+1);if(gge.includes(n)){let r=this.nameManager.claimFreeName("__jestHoist");this.hoistedFunctionNames.push(r),this.tokens.replaceToken(`function ${r}(){${qf}.`),this.tokens.copyToken(),this.tokens.copyToken(),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(l.parenR),this.tokens.appendCode(";}"),e=!1}else e?this.tokens.copyToken():this.tokens.replaceToken(`${qf}.`),this.tokens.copyToken(),this.tokens.copyToken(),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(l.parenR),e=!0}return!0}};var Wd=class extends Xe{constructor(e){super(),this.tokens=e}process(){if(this.tokens.matches1(l.num)){let e=this.tokens.currentTokenCode();if(e.includes("_"))return this.tokens.replaceToken(e.replace(/_/g,"")),!0}return!1}};var Kd=class extends Xe{constructor(e,n){super(),this.tokens=e,this.nameManager=n}process(){return this.tokens.matches2(l._catch,l.braceL)?(this.tokens.copyToken(),this.tokens.appendCode(` (${this.nameManager.claimFreeName("e")})`),!0):!1}};var Jd=class extends Xe{constructor(e,n){super(),this.tokens=e,this.nameManager=n}process(){if(this.tokens.matches1(l.nullishCoalescing)){let a=this.tokens.currentToken();return this.tokens.tokens[a.nullishStartIndex].isAsyncOperation?this.tokens.replaceTokenTrimmingLeftWhitespace(", async () => ("):this.tokens.replaceTokenTrimmingLeftWhitespace(", () => ("),!0}if(this.tokens.matches1(l._delete)&&this.tokens.tokenAtRelativeIndex(1).isOptionalChainStart)return this.tokens.removeInitialToken(),!0;let n=this.tokens.currentToken().subscriptStartIndex;if(n!=null&&this.tokens.tokens[n].isOptionalChainStart&&this.tokens.tokenAtRelativeIndex(-1).type!==l._super){let a=this.nameManager.claimFreeName("_"),r;if(n>0&&this.tokens.matches1AtIndex(n-1,l._delete)&&this.isLastSubscriptInChain()?r=`${a} => delete ${a}`:r=`${a} => ${a}`,this.tokens.tokens[n].isAsyncOperation&&(r=`async ${r}`),this.tokens.matches2(l.questionDot,l.parenL)||this.tokens.matches2(l.questionDot,l.lessThan))this.justSkippedSuper()&&this.tokens.appendCode(".bind(this)"),this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'optionalCall', ${r}`);else if(this.tokens.matches2(l.questionDot,l.bracketL))this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'optionalAccess', ${r}`);else if(this.tokens.matches1(l.questionDot))this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'optionalAccess', ${r}.`);else if(this.tokens.matches1(l.dot))this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'access', ${r}.`);else if(this.tokens.matches1(l.bracketL))this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'access', ${r}[`);else if(this.tokens.matches1(l.parenL))this.justSkippedSuper()&&this.tokens.appendCode(".bind(this)"),this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'call', ${r}(`);else throw new Error("Unexpected subscript operator in optional chain.");return!0}return!1}isLastSubscriptInChain(){let e=0;for(let n=this.tokens.currentIndex()+1;;n++){if(n>=this.tokens.tokens.length)throw new Error("Reached the end of the code while finding the end of the access chain.");if(this.tokens.tokens[n].isOptionalChainStart?e++:this.tokens.tokens[n].isOptionalChainEnd&&e--,e<0)return!0;if(e===0&&this.tokens.tokens[n].subscriptStartIndex!=null)return!1}}justSkippedSuper(){let e=0,n=this.tokens.currentIndex()-1;for(;;){if(n<0)throw new Error("Reached the start of the code while finding the start of the access chain.");if(this.tokens.tokens[n].isOptionalChainStart?e--:this.tokens.tokens[n].isOptionalChainEnd&&e++,e<0)return!1;if(e===0&&this.tokens.tokens[n].subscriptStartIndex!=null)return this.tokens.tokens[n-1].type===l._super;n--}}};var Vd=class extends Xe{constructor(e,n,a,r){super(),this.rootTransformer=e,this.tokens=n,this.importProcessor=a,this.options=r}process(){let e=this.tokens.currentIndex();if(this.tokens.identifierName()==="createReactClass"){let n=this.importProcessor&&this.importProcessor.getIdentifierReplacement("createReactClass");return n?this.tokens.replaceToken(`(0, ${n})`):this.tokens.copyToken(),this.tryProcessCreateClassCall(e),!0}if(this.tokens.matches3(l.name,l.dot,l.name)&&this.tokens.identifierName()==="React"&&this.tokens.identifierNameAtIndex(this.tokens.currentIndex()+2)==="createClass"){let n=this.importProcessor&&this.importProcessor.getIdentifierReplacement("React")||"React";return n?(this.tokens.replaceToken(n),this.tokens.copyToken(),this.tokens.copyToken()):(this.tokens.copyToken(),this.tokens.copyToken(),this.tokens.copyToken()),this.tryProcessCreateClassCall(e),!0}return!1}tryProcessCreateClassCall(e){let n=this.findDisplayName(e);n&&this.classNeedsDisplayName()&&(this.tokens.copyExpectedToken(l.parenL),this.tokens.copyExpectedToken(l.braceL),this.tokens.appendCode(`displayName: '${n}',`),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(l.braceR),this.tokens.copyExpectedToken(l.parenR))}findDisplayName(e){return e<2?null:this.tokens.matches2AtIndex(e-2,l.name,l.eq)?this.tokens.identifierNameAtIndex(e-2):e>=2&&this.tokens.tokens[e-2].identifierRole===W.ObjectKey?this.tokens.identifierNameAtIndex(e-2):this.tokens.matches2AtIndex(e-2,l._export,l._default)?this.getDisplayNameFromFilename():null}getDisplayNameFromFilename(){let n=(this.options.filePath||"unknown").split("/"),a=n[n.length-1],r=a.lastIndexOf("."),i=r===-1?a:a.slice(0,r);return i==="index"&&n[n.length-2]?n[n.length-2]:i}classNeedsDisplayName(){let e=this.tokens.currentIndex();if(!this.tokens.matches2(l.parenL,l.braceL))return!1;let n=e+1,a=this.tokens.tokens[n].contextId;if(a==null)throw new Error("Expected non-null context ID on object open-brace.");for(;e<this.tokens.tokens.length;e++){let r=this.tokens.tokens[e];if(r.type===l.braceR&&r.contextId===a){e++;break}if(this.tokens.identifierNameAtIndex(e)==="displayName"&&this.tokens.tokens[e].identifierRole===W.ObjectKey&&r.contextId===a)return!1}if(e===this.tokens.tokens.length)throw new Error("Unexpected end of input when processing React class.");return this.tokens.matches1AtIndex(e,l.parenR)||this.tokens.matches2AtIndex(e,l.comma,l.parenR)}};var Xd=class t extends Xe{__init(){this.extractedDefaultExportName=null}constructor(e,n){super(),this.tokens=e,this.filePath=n,t.prototype.__init.call(this)}setExtractedDefaultExportName(e){this.extractedDefaultExportName=e}getPrefixCode(){return` + (function () { + var enterModule = require('react-hot-loader').enterModule; + enterModule && enterModule(module); + })();`.replace(/\s+/g," ").trim()}getSuffixCode(){let e=new Set;for(let a of this.tokens.tokens)!a.isType&&Af(a)&&a.identifierRole!==W.ImportDeclaration&&e.add(this.tokens.identifierNameForToken(a));let n=Array.from(e).map(a=>({variableName:a,uniqueLocalName:a}));return this.extractedDefaultExportName&&n.push({variableName:this.extractedDefaultExportName,uniqueLocalName:"default"}),` +;(function () { + var reactHotLoader = require('react-hot-loader').default; + var leaveModule = require('react-hot-loader').leaveModule; + if (!reactHotLoader) { + return; + } +${n.map(({variableName:a,uniqueLocalName:r})=>` reactHotLoader.register(${a}, "${r}", ${JSON.stringify(this.filePath||"")});`).join(` +`)} + leaveModule(module); +})();`}process(){return!1}};var fge=new Set(["break","case","catch","class","const","continue","debugger","default","delete","do","else","export","extends","finally","for","function","if","import","in","instanceof","new","return","super","switch","this","throw","try","typeof","var","void","while","with","yield","enum","implements","interface","let","package","private","protected","public","static","await","false","null","true"]);function Gf(t){if(t.length===0||!Jr[t.charCodeAt(0)])return!1;for(let e=1;e<t.length;e++)if(!yn[t.charCodeAt(e)])return!1;return!fge.has(t)}var eu=class extends Xe{constructor(e,n,a){super(),this.rootTransformer=e,this.tokens=n,this.isImportsTransformEnabled=a}process(){return this.rootTransformer.processPossibleArrowParamEnd()||this.rootTransformer.processPossibleAsyncArrowWithTypeParams()||this.rootTransformer.processPossibleTypeRange()?!0:this.tokens.matches1(l._public)||this.tokens.matches1(l._protected)||this.tokens.matches1(l._private)||this.tokens.matches1(l._abstract)||this.tokens.matches1(l._readonly)||this.tokens.matches1(l._override)||this.tokens.matches1(l.nonNullAssertion)?(this.tokens.removeInitialToken(),!0):this.tokens.matches1(l._enum)||this.tokens.matches2(l._const,l._enum)?(this.processEnum(),!0):this.tokens.matches2(l._export,l._enum)||this.tokens.matches3(l._export,l._const,l._enum)?(this.processEnum(!0),!0):!1}processEnum(e=!1){for(this.tokens.removeInitialToken();this.tokens.matches1(l._const)||this.tokens.matches1(l._enum);)this.tokens.removeToken();let n=this.tokens.identifierName();this.tokens.removeToken(),e&&!this.isImportsTransformEnabled&&this.tokens.appendCode("export "),this.tokens.appendCode(`var ${n}; (function (${n})`),this.tokens.copyExpectedToken(l.braceL),this.processEnumBody(n),this.tokens.copyExpectedToken(l.braceR),e&&this.isImportsTransformEnabled?this.tokens.appendCode(`)(${n} || (exports.${n} = ${n} = {}));`):this.tokens.appendCode(`)(${n} || (${n} = {}));`)}processEnumBody(e){let n=null;for(;!this.tokens.matches1(l.braceR);){let{nameStringCode:a,variableName:r}=this.extractEnumKeyInfo(this.tokens.currentToken());this.tokens.removeInitialToken(),this.tokens.matches3(l.eq,l.string,l.comma)||this.tokens.matches3(l.eq,l.string,l.braceR)?this.processStringLiteralEnumMember(e,a,r):this.tokens.matches1(l.eq)?this.processExplicitValueEnumMember(e,a,r):this.processImplicitValueEnumMember(e,a,r,n),this.tokens.matches1(l.comma)&&this.tokens.removeToken(),r!=null?n=r:n=`${e}[${a}]`}}extractEnumKeyInfo(e){if(e.type===l.name){let n=this.tokens.identifierNameForToken(e);return{nameStringCode:`"${n}"`,variableName:Gf(n)?n:null}}else if(e.type===l.string){let n=this.tokens.stringValueForToken(e);return{nameStringCode:this.tokens.code.slice(e.start,e.end),variableName:Gf(n)?n:null}}else throw new Error("Expected name or string at beginning of enum element.")}processStringLiteralEnumMember(e,n,a){a!=null?(this.tokens.appendCode(`const ${a}`),this.tokens.copyToken(),this.tokens.copyToken(),this.tokens.appendCode(`; ${e}[${n}] = ${a};`)):(this.tokens.appendCode(`${e}[${n}]`),this.tokens.copyToken(),this.tokens.copyToken(),this.tokens.appendCode(";"))}processExplicitValueEnumMember(e,n,a){let r=this.tokens.currentToken().rhsEndIndex;if(r==null)throw new Error("Expected rhsEndIndex on enum assign.");if(a!=null){for(this.tokens.appendCode(`const ${a}`),this.tokens.copyToken();this.tokens.currentIndex()<r;)this.rootTransformer.processToken();this.tokens.appendCode(`; ${e}[${e}[${n}] = ${a}] = ${n};`)}else{for(this.tokens.appendCode(`${e}[${e}[${n}]`),this.tokens.copyToken();this.tokens.currentIndex()<r;)this.rootTransformer.processToken();this.tokens.appendCode(`] = ${n};`)}}processImplicitValueEnumMember(e,n,a,r){let i=r!=null?`${r} + 1`:"0";a!=null&&(this.tokens.appendCode(`const ${a} = ${i}; `),i=a),this.tokens.appendCode(`${e}[${e}[${n}] = ${i}] = ${n};`)}};var tu=class t{__init(){this.transformers=[]}__init2(){this.generatedVariables=[]}constructor(e,n,a,r){t.prototype.__init.call(this),t.prototype.__init2.call(this),this.nameManager=e.nameManager,this.helperManager=e.helperManager;let{tokenProcessor:i,importProcessor:o}=e;this.tokens=i,this.isImportsTransformEnabled=n.includes("imports"),this.isReactHotLoaderTransformEnabled=n.includes("react-hot-loader"),this.disableESTransforms=!!r.disableESTransforms,r.disableESTransforms||(this.transformers.push(new Jd(i,this.nameManager)),this.transformers.push(new Wd(i)),this.transformers.push(new Kd(i,this.nameManager))),n.includes("jsx")&&(r.jsxRuntime!=="preserve"&&this.transformers.push(new _d(this,i,o,this.nameManager,r)),this.transformers.push(new Vd(this,i,o,r)));let s=null;if(n.includes("react-hot-loader")){if(!r.filePath)throw new Error("filePath is required when using the react-hot-loader transform.");s=new Xd(i,r.filePath),this.transformers.push(s)}if(n.includes("imports")){if(o===null)throw new Error("Expected non-null importProcessor with imports transform enabled.");this.transformers.push(new Ud(this,i,o,this.nameManager,this.helperManager,s,a,!!r.enableLegacyTypeScriptModuleInterop,n.includes("typescript"),n.includes("flow"),!!r.preserveDynamicImport,!!r.keepUnusedImports))}else this.transformers.push(new Hd(i,this.nameManager,this.helperManager,s,n.includes("typescript"),n.includes("flow"),!!r.keepUnusedImports,r));n.includes("flow")&&this.transformers.push(new Zd(this,i,n.includes("imports"))),n.includes("typescript")&&this.transformers.push(new eu(this,i,n.includes("imports"))),n.includes("jest")&&this.transformers.push(new Yd(this,i,this.nameManager,o))}transform(){this.tokens.reset(),this.processBalancedCode();let n=this.isImportsTransformEnabled?'"use strict";':"";for(let o of this.transformers)n+=o.getPrefixCode();n+=this.helperManager.emitHelpers(),n+=this.generatedVariables.map(o=>` var ${o};`).join("");for(let o of this.transformers)n+=o.getHoistedCode();let a="";for(let o of this.transformers)a+=o.getSuffixCode();let r=this.tokens.finish(),{code:i}=r;if(i.startsWith("#!")){let o=i.indexOf(` +`);return o===-1&&(o=i.length,i+=` +`),{code:i.slice(0,o+1)+n+i.slice(o+1)+a,mappings:this.shiftMappings(r.mappings,n.length)}}else return{code:n+i+a,mappings:this.shiftMappings(r.mappings,n.length)}}processBalancedCode(){let e=0,n=0;for(;!this.tokens.isAtEnd();){if(this.tokens.matches1(l.braceL)||this.tokens.matches1(l.dollarBraceL))e++;else if(this.tokens.matches1(l.braceR)){if(e===0)return;e--}if(this.tokens.matches1(l.parenL))n++;else if(this.tokens.matches1(l.parenR)){if(n===0)return;n--}this.processToken()}}processToken(){if(this.tokens.matches1(l._class)){this.processClass();return}for(let e of this.transformers)if(e.process())return;this.tokens.copyToken()}processNamedClass(){if(!this.tokens.matches2(l._class,l.name))throw new Error("Expected identifier for exported class name.");let e=this.tokens.identifierNameAtIndex(this.tokens.currentIndex()+1);return this.processClass(),e}processClass(){let e=ov(this,this.tokens,this.nameManager,this.disableESTransforms),n=(e.headerInfo.isExpression||!e.headerInfo.className)&&e.staticInitializerNames.length+e.instanceInitializerNames.length>0,a=e.headerInfo.className;n&&(a=this.nameManager.claimFreeName("_class"),this.generatedVariables.push(a),this.tokens.appendCode(` (${a} =`));let i=this.tokens.currentToken().contextId;if(i==null)throw new Error("Expected class to have a context ID.");for(this.tokens.copyExpectedToken(l._class);!this.tokens.matchesContextIdAndLabel(l.braceL,i);)this.processToken();this.processClassBody(e,a);let o=e.staticInitializerNames.map(s=>`${a}.${s}()`);n?this.tokens.appendCode(`, ${o.map(s=>`${s}, `).join("")}${a})`):e.staticInitializerNames.length>0&&this.tokens.appendCode(` ${o.map(s=>`${s};`).join(" ")}`)}processClassBody(e,n){let{headerInfo:a,constructorInsertPos:r,constructorInitializerStatements:i,fields:o,instanceInitializerNames:s,rangesToRemove:c}=e,A=0,d=0,u=this.tokens.currentToken().contextId;if(u==null)throw new Error("Expected non-null context ID on class.");this.tokens.copyExpectedToken(l.braceL),this.isReactHotLoaderTransformEnabled&&this.tokens.appendCode("__reactstandin__regenerateByEval(key, code) {this[key] = eval(code);}");let p=i.length+s.length>0;if(r===null&&p){let m=this.makeConstructorInitCode(i,s,n);if(a.hasSuperclass){let f=this.nameManager.claimFreeName("args");this.tokens.appendCode(`constructor(...${f}) { super(...${f}); ${m}; }`)}else this.tokens.appendCode(`constructor() { ${m}; }`)}for(;!this.tokens.matchesContextIdAndLabel(l.braceR,u);)if(A<o.length&&this.tokens.currentIndex()===o[A].start){let m=!1;for(this.tokens.matches1(l.bracketL)?this.tokens.copyTokenWithPrefix(`${o[A].initializerName}() {this`):this.tokens.matches1(l.string)||this.tokens.matches1(l.num)?(this.tokens.copyTokenWithPrefix(`${o[A].initializerName}() {this[`),m=!0):this.tokens.copyTokenWithPrefix(`${o[A].initializerName}() {this.`);this.tokens.currentIndex()<o[A].end;)m&&this.tokens.currentIndex()===o[A].equalsIndex&&this.tokens.appendCode("]"),this.processToken();this.tokens.appendCode("}"),A++}else if(d<c.length&&this.tokens.currentIndex()>=c[d].start){for(this.tokens.currentIndex()<c[d].end&&this.tokens.removeInitialToken();this.tokens.currentIndex()<c[d].end;)this.tokens.removeToken();d++}else this.tokens.currentIndex()===r?(this.tokens.copyToken(),p&&this.tokens.appendCode(`;${this.makeConstructorInitCode(i,s,n)};`),this.processToken()):this.processToken();this.tokens.copyExpectedToken(l.braceR)}makeConstructorInitCode(e,n,a){return[...e,...n.map(r=>`${a}.prototype.${r}.call(this)`)].join(";")}processPossibleArrowParamEnd(){if(this.tokens.matches2(l.parenR,l.colon)&&this.tokens.tokenAtRelativeIndex(1).isType){let e=this.tokens.currentIndex()+1;for(;this.tokens.tokens[e].isType;)e++;if(this.tokens.matches1AtIndex(e,l.arrow)){for(this.tokens.removeInitialToken();this.tokens.currentIndex()<e;)this.tokens.removeToken();return this.tokens.replaceTokenTrimmingLeftWhitespace(") =>"),!0}}return!1}processPossibleAsyncArrowWithTypeParams(){if(!this.tokens.matchesContextual(v._async)&&!this.tokens.matches1(l._async))return!1;let e=this.tokens.tokenAtRelativeIndex(1);if(e.type!==l.lessThan||!e.isType)return!1;let n=this.tokens.currentIndex()+1;for(;this.tokens.tokens[n].isType;)n++;if(this.tokens.matches1AtIndex(n,l.parenL)){for(this.tokens.replaceToken("async ("),this.tokens.removeInitialToken();this.tokens.currentIndex()<n;)this.tokens.removeToken();return this.tokens.removeToken(),this.processBalancedCode(),this.processToken(),!0}return!1}processPossibleTypeRange(){if(this.tokens.currentToken().isType){for(this.tokens.removeInitialToken();this.tokens.currentToken().isType;)this.tokens.removeToken();return!0}return!1}shiftMappings(e,n){for(let a=0;a<e.length;a++){let r=e[a];r!==void 0&&(e[a]=r+n)}return e}};var bge=Pn(zG());function sv(t){let e=new Set;for(let n=0;n<t.tokens.length;n++)t.matches1AtIndex(n,l._import)&&!t.matches3AtIndex(n,l._import,l.name,l.eq)&&hge(t,n,e);return e}function hge(t,e,n){e++,!t.matches1AtIndex(e,l.parenL)&&(t.matches1AtIndex(e,l.name)&&(n.add(t.identifierNameAtIndex(e)),e++,t.matches1AtIndex(e,l.comma)&&e++),t.matches1AtIndex(e,l.star)&&(e+=2,n.add(t.identifierNameAtIndex(e)),e++),t.matches1AtIndex(e,l.braceL)&&(e++,yge(t,e,n)))}function yge(t,e,n){for(;;){if(t.matches1AtIndex(e,l.braceR))return;let a=wr(t,e);if(e=a.endIndex,a.isType||n.add(a.rightName),t.matches2AtIndex(e,l.comma,l.braceR))return;if(t.matches1AtIndex(e,l.braceR))return;if(t.matches1AtIndex(e,l.comma))e++;else throw new Error(`Unexpected token: ${JSON.stringify(t.tokens[e])}`)}}function UG(t,e){l6(e);try{let n=wge(t,e),r=new tu(n,e.transforms,!!e.enableLegacyBabel5ModuleInterop,e).transform(),i={code:r.code};if(e.sourceMapOptions){if(!e.filePath)throw new Error("filePath must be specified when generating a source map.");i={...i,sourceMap:u0(r,e.filePath,e.sourceMapOptions,t,n.tokenProcessor.tokens)}}return i}catch(n){throw e.filePath&&(n.message=`Error transforming ${e.filePath}: ${n.message}`),n}}function wge(t,e){let n=e.transforms.includes("jsx"),a=e.transforms.includes("typescript"),r=e.transforms.includes("flow"),i=e.disableESTransforms===!0,o=MG(t,n,a,r),s=o.tokens,c=o.scopes,A=new vd(t,s),d=new ff(A),u=new Md(t,s,r,i,d),p=!!e.enableLegacyTypeScriptModuleInterop,m=null;return e.transforms.includes("imports")?(m=new Bd(A,u,p,e,e.transforms.includes("typescript"),!!e.keepUnusedImports,d),m.preprocessTokens(),bf(u,c,m.getGlobalNames()),e.transforms.includes("typescript")&&!e.keepUnusedImports&&m.pruneTypeOnlyImports()):e.transforms.includes("typescript")&&!e.keepUnusedImports&&bf(u,c,sv(u)),{tokenProcessor:u,scopes:c,nameManager:A,importProcessor:m,helperManager:d}}var cv=class extends Ae.Component{constructor(t){super(t),this.state={hasError:!1,error:null}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,e){this.props.onError?.(t,e),console.error("[react-code-view] Error caught by ErrorBoundary:",t,e)}render(){let{hasError:t,error:e}=this.state,{fallback:n,children:a}=this.props;return t?n||(0,he.jsx)("div",{className:"rcv-error",role:"alert","aria-live":"polite",children:(0,he.jsx)("pre",{className:"rcv-error__message",children:e?.message||"An error occurred"})}):a}};cv.displayName="ErrorBoundary";var HG=Ae.default.memo(({children:t,error:e,className:n="",emptyContent:a})=>e?(0,he.jsx)("div",{className:`rcv-preview rcv-preview--error ${n}`,role:"alert",children:(0,he.jsx)("pre",{className:"rcv-preview__error",children:e.message})}):!t&&a?(0,he.jsx)("div",{className:`rcv-preview rcv-preview--empty ${n}`,children:a}):(0,he.jsx)(cv,{children:(0,he.jsx)("div",{className:`rcv-preview ${n}`,children:t})}));HG.displayName="Preview";var ZG=Ae.default.memo(({code:t,onChange:e,readOnly:n=!1,placeholder:a,className:r="",language:i="javascript",theme:o="light"})=>{let s=(0,Ae.useRef)(null),c=(0,Ae.useRef)(null);return(0,Ae.useEffect)(()=>{if(!s.current)return;let A=f=>{switch(f.toLowerCase()){case"javascript":case"js":case"jsx":return yc({jsx:!0});case"typescript":case"ts":case"tsx":return yc({typescript:!0,jsx:!0});case"css":case"less":case"scss":return Ag();case"html":case"xml":return pg();case"json":return RO();case"markdown":case"md":return I9();default:return yc()}},u=[...[mF(),gF(),sF(),pS(),WF(),aF(),oF(),Fe.allowMultipleSelections.of(!0),TF(),Lm(JF,{fallback:!0}),tS(),b2(),C2(),lF(),AF(),cF(),KS(),Si.of([...w2,...GS,...t2,...bS,...HF,...A_,...E2])],A(i),T.lineWrapping,Fe.readOnly.of(n),T.updateListener.of(f=>{f.docChanged&&e&&e(f.state.doc.toString())})];o==="dark"&&u.push(L9),a&&u.push(T.theme({".cm-content":{minHeight:"100px"}}));let p=Fe.create({doc:t,extensions:u}),m=new T({state:p,parent:s.current});return c.current=m,()=>{m.destroy(),c.current=null}},[i,n,o,a]),(0,Ae.useEffect)(()=>{let A=c.current;if(!A)return;let d=A.state.doc.toString();d!==t&&A.dispatch({changes:{from:0,to:d.length,insert:t}})},[t]),(0,he.jsx)("div",{className:`rcv-code-editor ${r}`,ref:s})});ZG.displayName="CodeEditor";var YG=Ae.default.memo(({code:t,language:e="plaintext",theme:n,highlightOptions:a={},className:r=""})=>{let[i,o]=(0,Ae.useState)("");return(0,Ae.useEffect)(()=>{let s=!1;return(async()=>{let A=await bq(t,{language:e,theme:n||(r.includes("dark")?"github-dark":"github-light"),...a});s||o(A)})(),()=>{s=!0}},[t,e,n,r,a]),i?(0,he.jsx)("div",{className:`rcv-renderer ${r}`,dangerouslySetInnerHTML:{__html:i}}):(0,he.jsx)("div",{className:`rcv-renderer ${r}`,children:(0,he.jsx)("pre",{className:"rcv-renderer__pre",children:(0,he.jsx)("code",{className:`language-${e}`,children:t})})})});YG.displayName="Renderer";var kge=t=>(0,he.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...t,children:(0,he.jsx)("polyline",{points:"20 6 9 17 4 12"})}),Cge=t=>(0,he.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...t,children:[(0,he.jsx)("polyline",{points:"16 18 22 12 16 6"}),(0,he.jsx)("polyline",{points:"8 6 2 12 8 18"})]}),_ge=t=>(0,he.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...t,children:[(0,he.jsx)("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),(0,he.jsx)("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})]}),lv=!!(typeof window<"u"&&window.document&&window.document.createElement);function Bge(t,e){let n=Object.keys(e),a=n.map(r=>e[r]);return new Function(...n,t)(...a)}var WG=Ae.default.memo(({code:t,successDuration:e=2e3,className:n="",...a})=>{let[r,i]=(0,Ae.useState)(!1),o=(0,Ae.useRef)(null),s=(0,Ae.useCallback)(async()=>{if(!(!lv||!navigator.clipboard))try{await navigator.clipboard.writeText(t),i(!0),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>{i(!1)},e)}catch(c){console.error("[react-code-view] Failed to copy code:",c)}},[t,e]);return(0,Ae.useEffect)(()=>()=>{o.current&&clearTimeout(o.current)},[]),(0,he.jsx)("button",{type:"button",className:`rcv-copy-button ${r?"rcv-copy-button--copied":""} ${n}`,onClick:s,"aria-label":a["aria-label"]||(r?"Copied!":"Copy code"),children:r?(0,he.jsx)(kge,{}):(0,he.jsx)(_ge,{})})});WG.displayName="CopyCodeButton";var xge=Ae.default,vge={transforms:["jsx"]};function Ege(t,e={}){let{dependencies:n={},transformOptions:a=vge,beforeCompile:r,afterCompile:i,onError:o}=e,[s,c]=(0,Ae.useState)(null),[A,d]=(0,Ae.useState)(null),[u,p]=(0,Ae.useState)(t),m=(0,Ae.useRef)(n),f=(0,Ae.useRef)(a),h=(0,Ae.useRef)(r),w=(0,Ae.useRef)(i),b=(0,Ae.useRef)(o);(0,Ae.useEffect)(()=>{m.current=n},[n]),(0,Ae.useEffect)(()=>{f.current=a},[a]),(0,Ae.useEffect)(()=>{h.current=r},[r]),(0,Ae.useEffect)(()=>{w.current=i},[i]),(0,Ae.useEffect)(()=>{b.current=o},[o]);let y=(0,Ae.useCallback)(k=>{if(lv){d(null);try{let E=h.current?.(k)||k,{code:Q}=UG(E,f.current),D=w.current?.(Q)||Q,F=null,$=z=>(F=z,z);Bge(D,{React:xge,ReactDOM:{render:$},render:$,...m.current}),F!==null&&c(F)}catch(E){let Q=E instanceof Error?E:new Error(String(E));d(Q),b.current?.(Q),console.error("[react-code-view] Code execution error:",Q)}}},[]);return(0,Ae.useEffect)(()=>{y(u)},[u,y]),{element:s,error:A,code:u,setCode:p,updateCode:p,execute:y}}var Av=Ae.default.memo(({children:t="",dependencies:e={},language:n="jsx",editable:a=!0,renderPreview:r=!0,showCopyButton:i=!0,defaultShowCode:o=!1,theme:s="rcv-theme-default",beforeCompile:c,afterCompile:A,compilerOptions:d,onChange:u,onError:p,className:m="",style:f,emptyPreviewContent:h})=>{let[w,b]=(0,Ae.useState)(o),{element:y,error:k,code:E,setCode:Q,execute:D}=Ege(t,{dependencies:e,transformOptions:d,beforeCompile:c,afterCompile:A,onError:p}),F=(0,Ae.useCallback)(U=>{Q(U),u?.(U)},[Q,u]),$=(0,Ae.useCallback)(()=>{b(U=>!U)},[]);(0,Ae.useEffect)(()=>{lv&&E&&D(E)},[E,D]);let z=(0,Ae.useMemo)(()=>["rcv-code-view",s,w&&"rcv-code-view--code-visible",k&&"rcv-code-view--has-error",m].filter(Boolean).join(" "),[s,w,k,m]);return(0,he.jsx)(cv,{onError:p,children:(0,he.jsxs)("div",{className:z,style:f,children:[r&&(0,he.jsx)("div",{className:"rcv-code-view__preview",children:(0,he.jsx)(HG,{error:k,emptyContent:h,children:y})}),(0,he.jsxs)("div",{className:"rcv-code-view__toolbar",children:[(0,he.jsxs)("button",{type:"button",className:"rcv-code-view__toggle-btn",onClick:$,"aria-expanded":w,"aria-label":w?"Hide code":"Show code",children:[(0,he.jsx)(Cge,{}),(0,he.jsx)("span",{children:w?"Hide Code":"Show Code"})]}),i&&(0,he.jsx)(WG,{code:E,"aria-label":"Copy code to clipboard"})]}),w&&(0,he.jsx)("div",{className:"rcv-code-view__code",children:a?(0,he.jsx)(ZG,{code:E,onChange:F,language:n}):(0,he.jsx)(YG,{code:E,language:n,theme:s})})]})})});Av.displayName="CodeView";var Qge=Ae.default.memo(({children:t,rendererOptions:e={},transformOptions:n={},className:a="",theme:r="github-light"})=>{let[i,o]=(0,Ae.useState)(""),[s,c]=(0,Ae.useState)(!1);return(0,Ae.useEffect)(()=>{hq().then(()=>{c(!0)})},[]),(0,Ae.useEffect)(()=>{if(!s||!t){o("");return}let A=yq(t,{...n,...e,theme:r});o(A.html)},[t,e,n,r,s]),(0,he.jsx)("div",{className:`rcv-markdown ${a}`,dangerouslySetInnerHTML:{__html:i}})});Qge.displayName="MarkdownRenderer";var Rt=Pn(Ms(),1),Ige={toast:`const App = () => { + const [toasts, setToasts] = React.useState([]); + + const showToast = (message, type = 'info') => { + const id = Date.now(); + setToasts(prev => [...prev, { id, message, type }]); + setTimeout(() => { + setToasts(prev => prev.filter(t => t.id !== id)); + }, 3000); + }; + + const colors = { + info: { bg: '#007bff', text: 'white' }, + success: { bg: '#28a745', text: 'white' }, + warning: { bg: '#ffc107', text: '#333' }, + error: { bg: '#dc3545', text: 'white' }, + }; + + return ( + <div style={{ padding: '20px', fontFamily: 'sans-serif' }}> + <div style={{ marginBottom: '20px' }}> + <button onClick={() => showToast('Info message', 'info')} style={{ margin: '5px', padding: '8px 16px', cursor: 'pointer' }}> + Show Info + </button> + <button onClick={() => showToast('Success!', 'success')} style={{ margin: '5px', padding: '8px 16px', cursor: 'pointer' }}> + Show Success + </button> + <button onClick={() => showToast('Warning!', 'warning')} style={{ margin: '5px', padding: '8px 16px', cursor: 'pointer' }}> + Show Warning + </button> + <button onClick={() => showToast('Error!', 'error')} style={{ margin: '5px', padding: '8px 16px', cursor: 'pointer' }}> + Show Error + </button> + </div> + + <div style={{ position: 'fixed', top: '20px', right: '20px', zIndex: 9999 }}> + {toasts.map(toast => ( + <div + key={toast.id} + style={{ + marginBottom: '10px', + padding: '12px 20px', + backgroundColor: colors[toast.type].bg, + color: colors[toast.type].text, + borderRadius: '4px', + boxShadow: '0 2px 8px rgba(0,0,0,0.2)', + minWidth: '250px', + animation: 'slideIn 0.3s ease-out' + }} + > + {toast.message} + </div> + ))} + </div> + </div> + ); +}; + +render(<App />);`,progress:`const App = () => { + const [progress, setProgress] = React.useState(0); + const [isRunning, setIsRunning] = React.useState(false); + + React.useEffect(() => { + let interval; + if (isRunning && progress < 100) { + interval = setInterval(() => { + setProgress(prev => { + const next = prev + 1; + if (next >= 100) { + setIsRunning(false); + return 100; + } + return next; + }); + }, 50); + } + return () => clearInterval(interval); + }, [isRunning, progress]); + + const start = () => { + setProgress(0); + setIsRunning(true); + }; + + return ( + <div style={{ padding: '40px', fontFamily: 'sans-serif' }}> + <h3>Progress Bar Demo</h3> + + <div style={{ marginTop: '20px', marginBottom: '10px' }}> + <div style={{ + width: '100%', + height: '30px', + backgroundColor: '#e0e0e0', + borderRadius: '15px', + overflow: 'hidden', + position: 'relative' + }}> + <div style={{ + width: progress + '%', + height: '100%', + backgroundColor: progress === 100 ? '#28a745' : '#007bff', + transition: 'width 0.1s ease, background-color 0.3s ease', + display: 'flex', + alignItems: 'center', + justifyContent: 'center', + color: 'white', + fontWeight: 'bold', + fontSize: '14px' + }}> + {progress > 10 && progress + '%'} + </div> + </div> + </div> + + <button + onClick={start} + disabled={isRunning} + style={{ + marginTop: '20px', + padding: '10px 20px', + cursor: isRunning ? 'not-allowed' : 'pointer', + backgroundColor: isRunning ? '#ccc' : '#007bff', + color: 'white', + border: 'none', + borderRadius: '4px' + }} + > + {isRunning ? 'Running...' : progress === 100 ? 'Restart' : 'Start'} + </button> + </div> + ); +}; + +render(<App />);`,slider:`const App = () => { + const [value, setValue] = React.useState(50); + const [color, setColor] = React.useState({ r: 128, g: 128, b: 128 }); + + const handleSliderChange = (e) => { + setValue(Number(e.target.value)); + }; + + const handleColorChange = (channel, val) => { + setColor(prev => ({ ...prev, [channel]: Number(val) })); + }; + + const rgbString = \`rgb(\${color.r}, \${color.g}, \${color.b})\`; + + return ( + <div style={{ padding: '40px', fontFamily: 'sans-serif', maxWidth: '600px' }}> + <h3>Interactive Sliders</h3> + + <div style={{ marginTop: '30px' }}> + <label style={{ display: 'block', marginBottom: '10px', fontWeight: 'bold' }}> + Value: {value} + </label> + <input + type="range" + min="0" + max="100" + value={value} + onChange={handleSliderChange} + style={{ width: '100%', height: '8px', cursor: 'pointer' }} + /> + <div style={{ + marginTop: '15px', + padding: '20px', + backgroundColor: '#f0f0f0', + borderRadius: '8px', + textAlign: 'center', + fontSize: '24px', + fontWeight: 'bold' + }}> + {value} + </div> + </div> + + <div style={{ marginTop: '40px' }}> + <h4>RGB Color Mixer</h4> + {['r', 'g', 'b'].map(channel => ( + <div key={channel} style={{ marginTop: '15px' }}> + <label style={{ display: 'block', marginBottom: '5px', textTransform: 'uppercase' }}> + {channel}: {color[channel]} + </label> + <input + type="range" + min="0" + max="255" + value={color[channel]} + onChange={(e) => handleColorChange(channel, e.target.value)} + style={{ width: '100%', height: '6px', cursor: 'pointer' }} + /> + </div> + ))} + <div style={{ + marginTop: '20px', + height: '100px', + backgroundColor: rgbString, + borderRadius: '8px', + border: '2px solid #ddd' + }} /> + <p style={{ marginTop: '10px', textAlign: 'center', color: '#666' }}> + {rgbString} + </p> + </div> + </div> + ); +}; + +render(<App />);`};function Dge(){let[t,e]=(0,au.useState)("rcv-theme-default"),[n,a]=(0,au.useState)("toast");return(0,Rt.jsxs)("div",{style:{minHeight:"100vh",backgroundColor:t==="rcv-theme-dark"?"#0d1117":"#ffffff",color:t==="rcv-theme-dark"?"#e6edf3":"#1f2937",padding:"20px"},children:[(0,Rt.jsxs)("header",{style:{maxWidth:"1200px",margin:"0 auto 40px",borderBottom:t==="rcv-theme-dark"?"1px solid #30363d":"1px solid #e5e7eb",paddingBottom:"20px"},children:[(0,Rt.jsx)("h1",{children:"React Code View - esbuild Example"}),(0,Rt.jsx)("p",{style:{color:t==="rcv-theme-dark"?"#8b949e":"#6b7280"},children:"\u26A1 Lightning fast builds with esbuild"}),(0,Rt.jsxs)("div",{style:{marginTop:"20px",display:"flex",gap:"10px",alignItems:"center"},children:[(0,Rt.jsx)("button",{onClick:()=>e(t==="rcv-theme-dark"?"rcv-theme-default":"rcv-theme-dark"),style:{padding:"8px 16px",cursor:"pointer",backgroundColor:t==="rcv-theme-dark"?"#21262d":"#f6f8fa",color:t==="rcv-theme-dark"?"#e6edf3":"#1f2937",border:t==="rcv-theme-dark"?"1px solid #30363d":"1px solid #d0d7de",borderRadius:"6px"},children:t==="rcv-theme-dark"?"\u2600\uFE0F Light":"\u{1F319} Dark"}),(0,Rt.jsxs)("select",{value:n,onChange:r=>a(r.target.value),style:{padding:"8px 12px",cursor:"pointer",backgroundColor:t==="rcv-theme-dark"?"#21262d":"#f6f8fa",color:t==="rcv-theme-dark"?"#e6edf3":"#1f2937",border:t==="rcv-theme-dark"?"1px solid #30363d":"1px solid #d0d7de",borderRadius:"6px"},children:[(0,Rt.jsx)("option",{value:"toast",children:"Toast Notifications"}),(0,Rt.jsx)("option",{value:"progress",children:"Progress Bar"}),(0,Rt.jsx)("option",{value:"slider",children:"Interactive Sliders"})]})]})]}),(0,Rt.jsx)("main",{style:{maxWidth:"1200px",margin:"0 auto"},children:(0,Rt.jsx)(Av,{language:"jsx",theme:t,dependencies:{React:au.default},editable:!0,showCopyButton:!0,defaultShowCode:!0,children:Ige[n]},n)}),(0,Rt.jsx)("footer",{style:{maxWidth:"1200px",margin:"40px auto 0",paddingTop:"20px",borderTop:t==="rcv-theme-dark"?"1px solid #30363d":"1px solid #e5e7eb",textAlign:"center",color:t==="rcv-theme-dark"?"#8b949e":"#6b7280"},children:(0,Rt.jsxs)("p",{children:["Built with"," ",(0,Rt.jsx)("a",{href:"https://esbuild.github.io",target:"_blank",rel:"noopener noreferrer",style:{color:t==="rcv-theme-dark"?"#58a6ff":"#0969da"},children:"esbuild"})," ","and"," ",(0,Rt.jsx)("a",{href:"https://github.com/simonguo/react-code-view",target:"_blank",rel:"noopener noreferrer",style:{color:t==="rcv-theme-dark"?"#58a6ff":"#0969da"},children:"React Code View"})]})})]})}var KG=Dge;var dv=Pn(Ms(),1),JG=document.getElementById("root");JG&&(0,XG.createRoot)(JG).render((0,dv.jsx)(VG.default.StrictMode,{children:(0,dv.jsx)(KG,{})}));})(); +/*! Bundled license information: + +react/cjs/react.production.min.js: + (** + * @license React + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + *) + +scheduler/cjs/scheduler.production.min.js: + (** + * @license React + * scheduler.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + *) + +react-dom/cjs/react-dom.production.min.js: + (** + * @license React + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + *) + +react/cjs/react-jsx-runtime.production.min.js: + (** + * @license React + * react-jsx-runtime.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + *) +*/ diff --git a/examples/esbuild/public/bundle.js.map b/examples/esbuild/public/bundle.js.map new file mode 100644 index 0000000..963257a --- /dev/null +++ b/examples/esbuild/public/bundle.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../../node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.development.js", "../../../node_modules/.pnpm/react@18.3.1/node_modules/react/index.js", "../../../node_modules/.pnpm/scheduler@0.23.2/node_modules/scheduler/cjs/scheduler.development.js", "../../../node_modules/.pnpm/scheduler@0.23.2/node_modules/scheduler/index.js", "../../../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/cjs/react-dom.development.js", "../../../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/index.js", "../../../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/client.js", "../../../node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.development.js", "../../../node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/abap.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/actionscript-3.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/ada.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/javascript.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/css.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/html.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/angular-expression.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/angular-let-declaration.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/angular-template.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/angular-template-blocks.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/angular-html.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/scss.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/angular-inline-style.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/angular-inline-template.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/angular-ts.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/apache.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/apex.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/java.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/xml.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/json.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/apl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/applescript.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/ara.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/asciidoc.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/asm.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/typescript.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/postcss.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/astro.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/awk.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/ballerina.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/bat.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/beancount.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/berry.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/bibtex.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/bicep.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/sql.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/blade.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/sdbl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/bsl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/c.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/cadence.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/python.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/cairo.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/clarity.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/clojure.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/cmake.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/cobol.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/codeowners.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/codeql.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/coffee.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/common-lisp.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/coq.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/regexp.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/glsl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/cpp-macro.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/cpp.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/shellscript.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/crystal.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/csharp.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/csv.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/cue.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/cypher.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/d.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/dart.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/dax.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/desktop.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/diff.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/docker.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/dotenv.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/dream-maker.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/html-derivative.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/edge.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/elixir.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/elm.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/emacs-lisp.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/haml.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/jsx.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/tsx.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/graphql.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/lua.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/yaml.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/ruby.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/erb.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/erlang.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/fennel.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/fish.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/fluent.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/fortran-free-form.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/markdown.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/fsharp.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/gdshader.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/gdscript.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/gdresource.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/genie.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/gherkin.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/git-commit.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/git-rebase.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/gleam.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/glimmer-js.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/glimmer-ts.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/gnuplot.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/go.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/groovy.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/hack.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/handlebars.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/haskell.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/haxe.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/hcl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/hjson.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/hlsl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/http.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/hxml.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/hy.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/imba.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/ini.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/jinja-html.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/jinja.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/jison.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/json5.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/jsonc.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/jsonl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/jsonnet.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/jssm.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/r.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/julia.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/kotlin.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/kusto.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/tex.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/latex.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/lean.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/less.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/liquid.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/log.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/logo.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/luau.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/make.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/marko.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/matlab.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/mdc.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/mdx.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/mermaid.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/mipsasm.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/mojo.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/move.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/narrat.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/nextflow.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/nginx.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/nim.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/nix.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/nushell.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/objective-c.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/objective-cpp.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/ocaml.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/pascal.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/perl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/php.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/plsql.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/po.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/polar.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/powerquery.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/powershell.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/prisma.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/prolog.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/proto.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/pug.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/puppet.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/purescript.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/qml.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/qmldir.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/qss.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/racket.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/raku.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/razor.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/reg.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/rel.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/riscv.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/rst.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/rust.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/sas.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/sass.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/scala.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/scheme.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/shaderlab.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/shellsession.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/smalltalk.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/solidity.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/soy.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/turtle.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/sparql.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/splunk.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/ssh-config.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/stata.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/stylus.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/svelte.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/swift.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/system-verilog.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/systemd.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/talonscript.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/tasl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/tcl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/templ.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/terraform.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/toml.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/es-tag-css.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/es-tag-glsl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/es-tag-html.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/es-tag-sql.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/es-tag-xml.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/ts-tags.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/tsv.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/twig.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/typespec.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/typst.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/v.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/vala.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/vb.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/verilog.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/vhdl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/viml.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/markdown-vue.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/vue-directives.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/vue-interpolations.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/vue.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/vue-html.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/vyper.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/wasm.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/wenyan.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/wgsl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/wikitext.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/wolfram.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/xsl.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/zenscript.mjs", "../../../node_modules/.pnpm/@shikijs+langs@1.29.2/node_modules/@shikijs/langs/dist/zig.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/andromeeda.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/aurora-x.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/ayu-dark.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/catppuccin-latte.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/dark-plus.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/dracula.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/dracula-soft.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/everforest-dark.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/everforest-light.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/github-dark.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/github-dark-default.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/github-light.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/github-light-default.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/houston.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/kanagawa-wave.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/laserwave.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/light-plus.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/material-theme.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/material-theme-darker.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/material-theme-lighter.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/material-theme-ocean.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/material-theme-palenight.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/min-dark.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/min-light.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/monokai.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/night-owl.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/nord.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/one-dark-pro.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/one-light.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/plastic.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/poimandres.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/red.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/rose-pine.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/rose-pine-moon.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/slack-dark.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/slack-ochin.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/snazzy-light.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/solarized-dark.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/solarized-light.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/synthwave-84.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/tokyo-night.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/vesper.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/vitesse-black.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/vitesse-dark.mjs", "../../../node_modules/.pnpm/@shikijs+themes@1.29.2/node_modules/@shikijs/themes/dist/vitesse-light.mjs", "../../../node_modules/.pnpm/@shikijs+engine-oniguruma@1.29.2/node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs", "../../../node_modules/.pnpm/shiki@1.29.2/node_modules/shiki/dist/wasm.mjs", "../../../node_modules/.pnpm/@jridgewell+resolve-uri@3.1.2/node_modules/@jridgewell/resolve-uri/src/resolve-uri.ts", "../../../node_modules/.pnpm/ts-interface-checker@0.1.13/node_modules/ts-interface-checker/dist/util.js", "../../../node_modules/.pnpm/ts-interface-checker@0.1.13/node_modules/ts-interface-checker/dist/types.js", "../../../node_modules/.pnpm/ts-interface-checker@0.1.13/node_modules/ts-interface-checker/dist/index.js", "../../../node_modules/.pnpm/lines-and-columns@1.2.4/node_modules/lines-and-columns/build/index.js", "../src/index.tsx", "../src/App.tsx", "../../../node_modules/.pnpm/@marijn+find-cluster-break@1.0.2/node_modules/@marijn/find-cluster-break/src/index.js", "../../../node_modules/.pnpm/@codemirror+state@6.5.3/node_modules/@codemirror/state/dist/index.js", "../../../node_modules/.pnpm/style-mod@4.1.3/node_modules/style-mod/src/style-mod.js", "../../../node_modules/.pnpm/w3c-keyname@2.2.8/node_modules/w3c-keyname/index.js", "../../../node_modules/.pnpm/crelt@1.0.6/node_modules/crelt/index.js", "../../../node_modules/.pnpm/@codemirror+view@6.39.7/node_modules/@codemirror/view/dist/index.js", "../../../node_modules/.pnpm/@lezer+common@1.5.0/node_modules/@lezer/common/dist/index.js", "../../../node_modules/.pnpm/@lezer+highlight@1.2.3/node_modules/@lezer/highlight/dist/index.js", "../../../node_modules/.pnpm/@codemirror+language@6.12.1/node_modules/@codemirror/language/dist/index.js", "../../../node_modules/.pnpm/@codemirror+commands@6.10.1/node_modules/@codemirror/commands/dist/index.js", "../../../node_modules/.pnpm/@codemirror+search@6.5.11/node_modules/@codemirror/search/dist/index.js", "../../../node_modules/.pnpm/@codemirror+autocomplete@6.20.0/node_modules/@codemirror/autocomplete/dist/index.js", "../../../node_modules/.pnpm/@codemirror+lint@6.9.2/node_modules/@codemirror/lint/dist/index.js", "../../../node_modules/.pnpm/@lezer+lr@1.4.5/node_modules/@lezer/lr/dist/index.js", "../../../node_modules/.pnpm/@lezer+javascript@1.5.4/node_modules/@lezer/javascript/dist/index.js", "../../../node_modules/.pnpm/@codemirror+lang-javascript@6.2.4/node_modules/@codemirror/lang-javascript/dist/index.js", "../../../node_modules/.pnpm/@lezer+css@1.3.0/node_modules/@lezer/css/dist/index.js", "../../../node_modules/.pnpm/@codemirror+lang-css@6.3.1/node_modules/@codemirror/lang-css/dist/index.js", "../../../node_modules/.pnpm/@lezer+html@1.3.13/node_modules/@lezer/html/dist/index.js", "../../../node_modules/.pnpm/@codemirror+lang-html@6.4.11/node_modules/@codemirror/lang-html/dist/index.js", "../../../node_modules/.pnpm/@lezer+json@1.0.3/node_modules/@lezer/json/dist/index.js", "../../../node_modules/.pnpm/@codemirror+lang-json@6.0.2/node_modules/@codemirror/lang-json/dist/index.js", "../../../node_modules/.pnpm/@lezer+markdown@1.6.2/node_modules/@lezer/markdown/dist/index.js", "../../../node_modules/.pnpm/@codemirror+lang-markdown@6.5.0/node_modules/@codemirror/lang-markdown/dist/index.js", "../../../node_modules/.pnpm/@codemirror+theme-one-dark@6.1.3/node_modules/@codemirror/theme-one-dark/dist/index.js", "../../../node_modules/.pnpm/marked@12.0.2/node_modules/marked/src/defaults.ts", "../../../node_modules/.pnpm/marked@12.0.2/node_modules/marked/src/helpers.ts", "../../../node_modules/.pnpm/marked@12.0.2/node_modules/marked/src/Tokenizer.ts", "../../../node_modules/.pnpm/marked@12.0.2/node_modules/marked/src/rules.ts", "../../../node_modules/.pnpm/marked@12.0.2/node_modules/marked/src/Lexer.ts", "../../../node_modules/.pnpm/marked@12.0.2/node_modules/marked/src/Renderer.ts", "../../../node_modules/.pnpm/marked@12.0.2/node_modules/marked/src/TextRenderer.ts", "../../../node_modules/.pnpm/marked@12.0.2/node_modules/marked/src/Parser.ts", "../../../node_modules/.pnpm/marked@12.0.2/node_modules/marked/src/Hooks.ts", "../../../node_modules/.pnpm/marked@12.0.2/node_modules/marked/src/Instance.ts", "../../../node_modules/.pnpm/marked@12.0.2/node_modules/marked/src/marked.ts", "../../../node_modules/.pnpm/shiki@1.29.2/node_modules/shiki/dist/langs.mjs", "../../../node_modules/.pnpm/shiki@1.29.2/node_modules/shiki/dist/themes.mjs", "../../../node_modules/.pnpm/@shikijs+types@1.29.2/node_modules/@shikijs/types/dist/index.mjs", "../../../node_modules/.pnpm/@shikijs+engine-oniguruma@1.29.2/node_modules/@shikijs/engine-oniguruma/dist/index.mjs", "../../../node_modules/.pnpm/@shikijs+core@1.29.2/node_modules/@shikijs/core/dist/shared/core.Bn_XU0Iv.mjs", "../../../node_modules/.pnpm/@shikijs+vscode-textmate@10.0.2/node_modules/@shikijs/vscode-textmate/dist/index.js", "../../../node_modules/.pnpm/html-void-elements@3.0.0/node_modules/html-void-elements/index.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/util/schema.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/util/merge.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/normalize.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/util/info.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/util/types.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/util/defined-info.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/util/create.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/aria.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/util/case-sensitive-transform.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/util/case-insensitive-transform.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/html.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/svg.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/xlink.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/xmlns.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/xml.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/find.js", "../../../node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/index.js", "../../../node_modules/.pnpm/zwitch@2.0.4/node_modules/zwitch/index.js", "../../../node_modules/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/core.js", "../../../node_modules/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/util/to-hexadecimal.js", "../../../node_modules/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/util/to-decimal.js", "../../../node_modules/.pnpm/character-entities-legacy@3.0.0/node_modules/character-entities-legacy/index.js", "../../../node_modules/.pnpm/character-entities-html4@2.1.0/node_modules/character-entities-html4/index.js", "../../../node_modules/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/constant/dangerous.js", "../../../node_modules/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/util/to-named.js", "../../../node_modules/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/util/format-smart.js", "../../../node_modules/.pnpm/stringify-entities@4.0.4/node_modules/stringify-entities/lib/index.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/comment.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/doctype.js", "../../../node_modules/.pnpm/ccount@2.0.1/node_modules/ccount/index.js", "../../../node_modules/.pnpm/comma-separated-tokens@2.0.3/node_modules/comma-separated-tokens/index.js", "../../../node_modules/.pnpm/space-separated-tokens@2.0.2/node_modules/space-separated-tokens/index.js", "../../../node_modules/.pnpm/hast-util-whitespace@3.0.0/node_modules/hast-util-whitespace/lib/index.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/omission/util/siblings.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/omission/omission.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/omission/closing.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/omission/opening.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/element.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/text.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/raw.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/root.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/handle/index.js", "../../../node_modules/.pnpm/hast-util-to-html@9.0.5/node_modules/hast-util-to-html/lib/index.js", "../../../node_modules/.pnpm/@shikijs+core@1.29.2/node_modules/@shikijs/core/dist/index.mjs", "../../../node_modules/.pnpm/shiki@1.29.2/node_modules/shiki/dist/bundle-full.mjs", "../../../packages/core/src/highlighter.ts", "../../../packages/core/src/renderer.ts", "../../../packages/core/src/transform.ts", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/tokenizer/keywords.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/tokenizer/types.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/tokenizer/state.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/util/charcodes.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/traverser/base.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/traverser/util.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/util/whitespace.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/util/identifier.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/tokenizer/readWordTree.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/tokenizer/readWord.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/tokenizer/index.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/getImportExportSpecifierInfo.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/plugins/jsx/xhtml.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/getJSXPragmaInfo.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/Transformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/JSXTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/getNonTypeIdentifiers.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/CJSImportProcessor.js", "../../../node_modules/.pnpm/@jridgewell+sourcemap-codec@1.5.5/node_modules/@jridgewell/sourcemap-codec/src/vlq.ts", "../../../node_modules/.pnpm/@jridgewell+sourcemap-codec@1.5.5/node_modules/@jridgewell/sourcemap-codec/src/strings.ts", "../../../node_modules/.pnpm/@jridgewell+sourcemap-codec@1.5.5/node_modules/@jridgewell/sourcemap-codec/src/scopes.ts", "../../../node_modules/.pnpm/@jridgewell+sourcemap-codec@1.5.5/node_modules/@jridgewell/sourcemap-codec/src/sourcemap-codec.ts", "../../../node_modules/.pnpm/@jridgewell+trace-mapping@0.3.31/node_modules/@jridgewell/trace-mapping/src/trace-mapping.ts", "../../../node_modules/.pnpm/@jridgewell+trace-mapping@0.3.31/node_modules/@jridgewell/trace-mapping/src/resolve.ts", "../../../node_modules/.pnpm/@jridgewell+trace-mapping@0.3.31/node_modules/@jridgewell/trace-mapping/src/strip-filename.ts", "../../../node_modules/.pnpm/@jridgewell+trace-mapping@0.3.31/node_modules/@jridgewell/trace-mapping/src/sourcemap-segment.ts", "../../../node_modules/.pnpm/@jridgewell+trace-mapping@0.3.31/node_modules/@jridgewell/trace-mapping/src/sort.ts", "../../../node_modules/.pnpm/@jridgewell+trace-mapping@0.3.31/node_modules/@jridgewell/trace-mapping/src/by-source.ts", "../../../node_modules/.pnpm/@jridgewell+trace-mapping@0.3.31/node_modules/@jridgewell/trace-mapping/src/binary-search.ts", "../../../node_modules/.pnpm/@jridgewell+trace-mapping@0.3.31/node_modules/@jridgewell/trace-mapping/src/types.ts", "../../../node_modules/.pnpm/@jridgewell+trace-mapping@0.3.31/node_modules/@jridgewell/trace-mapping/src/flatten-map.ts", "../../../node_modules/.pnpm/@jridgewell+gen-mapping@0.3.13/node_modules/@jridgewell/gen-mapping/src/set-array.ts", "../../../node_modules/.pnpm/@jridgewell+gen-mapping@0.3.13/node_modules/@jridgewell/gen-mapping/src/gen-mapping.ts", "../../../node_modules/.pnpm/@jridgewell+gen-mapping@0.3.13/node_modules/@jridgewell/gen-mapping/src/sourcemap-segment.ts", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/computeSourceMap.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/HelperManager.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/identifyShadowedGlobals.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/getIdentifierNames.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/NameManager.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/Options.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/Options-gen-types.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/traverser/lval.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/plugins/typescript.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/plugins/jsx/index.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/plugins/types.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/traverser/expression.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/plugins/flow.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/traverser/statement.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/traverser/index.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/parser/index.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/isAsyncOperation.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/TokenProcessor.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/getClassInfo.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/elideImportEquals.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/getDeclarationInfo.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/isExportFrom.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/removeMaybeImportAttributes.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/shouldElideDefaultExport.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/CJSImportTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/ESMImportTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/FlowTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/JestHoistTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/NumericSeparatorTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/OptionalCatchBindingTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/OptionalChainingNullishTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/ReactDisplayNameTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/ReactHotLoaderTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/isIdentifier.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/TypeScriptTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/transformers/RootTransformer.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/formatTokens.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/util/getTSImportedNames.js", "../../../node_modules/.pnpm/sucrase@3.35.1/node_modules/sucrase/dist/esm/index.js", "../../../packages/react/src/components/ErrorBoundary.tsx", "../../../packages/react/src/components/Preview.tsx", "../../../packages/react/src/components/CodeEditor.tsx", "../../../packages/react/src/components/Renderer.tsx", "../../../packages/react/src/icons/Check.tsx", "../../../packages/react/src/icons/Code.tsx", "../../../packages/react/src/icons/Copy.tsx", "../../../packages/react/src/utils/canUseDOM.ts", "../../../packages/react/src/utils/evalCode.ts", "../../../packages/react/src/utils/mergeRefs.ts", "../../../packages/react/src/utils/parseDom.ts", "../../../packages/react/src/utils/parseHTML.ts", "../../../packages/react/src/components/CopyCodeButton.tsx", "../../../packages/react/src/hooks/useCodeExecution.ts", "../../../packages/react/src/components/CodeView.tsx", "../../../packages/react/src/components/MarkdownRenderer.tsx"], + "sourcesContent": ["/**\n * @license React\n * react.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n\n 'use strict';\n\n/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());\n}\n var ReactVersion = '18.3.1';\n\n// ATTENTION\n// When adding new symbols to this file,\n// Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'\n// The Symbol used to tag the ReactElement-like types.\nvar REACT_ELEMENT_TYPE = Symbol.for('react.element');\nvar REACT_PORTAL_TYPE = Symbol.for('react.portal');\nvar REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');\nvar REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');\nvar REACT_PROFILER_TYPE = Symbol.for('react.profiler');\nvar REACT_PROVIDER_TYPE = Symbol.for('react.provider');\nvar REACT_CONTEXT_TYPE = Symbol.for('react.context');\nvar REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');\nvar REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');\nvar REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');\nvar REACT_MEMO_TYPE = Symbol.for('react.memo');\nvar REACT_LAZY_TYPE = Symbol.for('react.lazy');\nvar REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');\nvar MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nvar FAUX_ITERATOR_SYMBOL = '@@iterator';\nfunction getIteratorFn(maybeIterable) {\n if (maybeIterable === null || typeof maybeIterable !== 'object') {\n return null;\n }\n\n var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL];\n\n if (typeof maybeIterator === 'function') {\n return maybeIterator;\n }\n\n return null;\n}\n\n/**\n * Keeps track of the current dispatcher.\n */\nvar ReactCurrentDispatcher = {\n /**\n * @internal\n * @type {ReactComponent}\n */\n current: null\n};\n\n/**\n * Keeps track of the current batch's configuration such as how long an update\n * should suspend for if it needs to.\n */\nvar ReactCurrentBatchConfig = {\n transition: null\n};\n\nvar ReactCurrentActQueue = {\n current: null,\n // Used to reproduce behavior of `batchedUpdates` in legacy mode.\n isBatchingLegacy: false,\n didScheduleLegacyUpdate: false\n};\n\n/**\n * Keeps track of the current owner.\n *\n * The current owner is the component who should own any components that are\n * currently being constructed.\n */\nvar ReactCurrentOwner = {\n /**\n * @internal\n * @type {ReactComponent}\n */\n current: null\n};\n\nvar ReactDebugCurrentFrame = {};\nvar currentExtraStackFrame = null;\nfunction setExtraStackFrame(stack) {\n {\n currentExtraStackFrame = stack;\n }\n}\n\n{\n ReactDebugCurrentFrame.setExtraStackFrame = function (stack) {\n {\n currentExtraStackFrame = stack;\n }\n }; // Stack implementation injected by the current renderer.\n\n\n ReactDebugCurrentFrame.getCurrentStack = null;\n\n ReactDebugCurrentFrame.getStackAddendum = function () {\n var stack = ''; // Add an extra top frame while an element is being validated\n\n if (currentExtraStackFrame) {\n stack += currentExtraStackFrame;\n } // Delegate to the injected renderer-specific implementation\n\n\n var impl = ReactDebugCurrentFrame.getCurrentStack;\n\n if (impl) {\n stack += impl() || '';\n }\n\n return stack;\n };\n}\n\n// -----------------------------------------------------------------------------\n\nvar enableScopeAPI = false; // Experimental Create Event Handle API.\nvar enableCacheElement = false;\nvar enableTransitionTracing = false; // No known bugs, but needs performance testing\n\nvar enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber\n// stuff. Intended to enable React core members to more easily debug scheduling\n// issues in DEV builds.\n\nvar enableDebugTracing = false; // Track which Fiber(s) schedule render work.\n\nvar ReactSharedInternals = {\n ReactCurrentDispatcher: ReactCurrentDispatcher,\n ReactCurrentBatchConfig: ReactCurrentBatchConfig,\n ReactCurrentOwner: ReactCurrentOwner\n};\n\n{\n ReactSharedInternals.ReactDebugCurrentFrame = ReactDebugCurrentFrame;\n ReactSharedInternals.ReactCurrentActQueue = ReactCurrentActQueue;\n}\n\n// by calls to these methods by a Babel plugin.\n//\n// In PROD (or in packages without access to React internals),\n// they are left as they are instead.\n\nfunction warn(format) {\n {\n {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n printWarning('warn', format, args);\n }\n }\n}\nfunction error(format) {\n {\n {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n printWarning('error', format, args);\n }\n }\n}\n\nfunction printWarning(level, format, args) {\n // When changing this logic, you might want to also\n // update consoleWithStackDev.www.js as well.\n {\n var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n var stack = ReactDebugCurrentFrame.getStackAddendum();\n\n if (stack !== '') {\n format += '%s';\n args = args.concat([stack]);\n } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n var argsWithFormat = args.map(function (item) {\n return String(item);\n }); // Careful: RN currently depends on this prefix\n\n argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it\n // breaks IE9: https://github.com/facebook/react/issues/13610\n // eslint-disable-next-line react-internal/no-production-logging\n\n Function.prototype.apply.call(console[level], console, argsWithFormat);\n }\n}\n\nvar didWarnStateUpdateForUnmountedComponent = {};\n\nfunction warnNoop(publicInstance, callerName) {\n {\n var _constructor = publicInstance.constructor;\n var componentName = _constructor && (_constructor.displayName || _constructor.name) || 'ReactClass';\n var warningKey = componentName + \".\" + callerName;\n\n if (didWarnStateUpdateForUnmountedComponent[warningKey]) {\n return;\n }\n\n error(\"Can't call %s on a component that is not yet mounted. \" + 'This is a no-op, but it might indicate a bug in your application. ' + 'Instead, assign to `this.state` directly or define a `state = {};` ' + 'class property with the desired state in the %s component.', callerName, componentName);\n\n didWarnStateUpdateForUnmountedComponent[warningKey] = true;\n }\n}\n/**\n * This is the abstract API for an update queue.\n */\n\n\nvar ReactNoopUpdateQueue = {\n /**\n * Checks whether or not this composite component is mounted.\n * @param {ReactClass} publicInstance The instance we want to test.\n * @return {boolean} True if mounted, false otherwise.\n * @protected\n * @final\n */\n isMounted: function (publicInstance) {\n return false;\n },\n\n /**\n * Forces an update. This should only be invoked when it is known with\n * certainty that we are **not** in a DOM transaction.\n *\n * You may want to call this when you know that some deeper aspect of the\n * component's state has changed but `setState` was not called.\n *\n * This will not invoke `shouldComponentUpdate`, but it will invoke\n * `componentWillUpdate` and `componentDidUpdate`.\n *\n * @param {ReactClass} publicInstance The instance that should rerender.\n * @param {?function} callback Called after component is updated.\n * @param {?string} callerName name of the calling function in the public API.\n * @internal\n */\n enqueueForceUpdate: function (publicInstance, callback, callerName) {\n warnNoop(publicInstance, 'forceUpdate');\n },\n\n /**\n * Replaces all of the state. Always use this or `setState` to mutate state.\n * You should treat `this.state` as immutable.\n *\n * There is no guarantee that `this.state` will be immediately updated, so\n * accessing `this.state` after calling this method may return the old value.\n *\n * @param {ReactClass} publicInstance The instance that should rerender.\n * @param {object} completeState Next state.\n * @param {?function} callback Called after component is updated.\n * @param {?string} callerName name of the calling function in the public API.\n * @internal\n */\n enqueueReplaceState: function (publicInstance, completeState, callback, callerName) {\n warnNoop(publicInstance, 'replaceState');\n },\n\n /**\n * Sets a subset of the state. This only exists because _pendingState is\n * internal. This provides a merging strategy that is not available to deep\n * properties which is confusing. TODO: Expose pendingState or don't use it\n * during the merge.\n *\n * @param {ReactClass} publicInstance The instance that should rerender.\n * @param {object} partialState Next partial state to be merged with state.\n * @param {?function} callback Called after component is updated.\n * @param {?string} Name of the calling function in the public API.\n * @internal\n */\n enqueueSetState: function (publicInstance, partialState, callback, callerName) {\n warnNoop(publicInstance, 'setState');\n }\n};\n\nvar assign = Object.assign;\n\nvar emptyObject = {};\n\n{\n Object.freeze(emptyObject);\n}\n/**\n * Base class helpers for the updating state of a component.\n */\n\n\nfunction Component(props, context, updater) {\n this.props = props;\n this.context = context; // If a component has string refs, we will assign a different object later.\n\n this.refs = emptyObject; // We initialize the default updater but the real one gets injected by the\n // renderer.\n\n this.updater = updater || ReactNoopUpdateQueue;\n}\n\nComponent.prototype.isReactComponent = {};\n/**\n * Sets a subset of the state. Always use this to mutate\n * state. You should treat `this.state` as immutable.\n *\n * There is no guarantee that `this.state` will be immediately updated, so\n * accessing `this.state` after calling this method may return the old value.\n *\n * There is no guarantee that calls to `setState` will run synchronously,\n * as they may eventually be batched together. You can provide an optional\n * callback that will be executed when the call to setState is actually\n * completed.\n *\n * When a function is provided to setState, it will be called at some point in\n * the future (not synchronously). It will be called with the up to date\n * component arguments (state, props, context). These values can be different\n * from this.* because your function may be called after receiveProps but before\n * shouldComponentUpdate, and this new state, props, and context will not yet be\n * assigned to this.\n *\n * @param {object|function} partialState Next partial state or function to\n * produce next partial state to be merged with current state.\n * @param {?function} callback Called after state is updated.\n * @final\n * @protected\n */\n\nComponent.prototype.setState = function (partialState, callback) {\n if (typeof partialState !== 'object' && typeof partialState !== 'function' && partialState != null) {\n throw new Error('setState(...): takes an object of state variables to update or a ' + 'function which returns an object of state variables.');\n }\n\n this.updater.enqueueSetState(this, partialState, callback, 'setState');\n};\n/**\n * Forces an update. This should only be invoked when it is known with\n * certainty that we are **not** in a DOM transaction.\n *\n * You may want to call this when you know that some deeper aspect of the\n * component's state has changed but `setState` was not called.\n *\n * This will not invoke `shouldComponentUpdate`, but it will invoke\n * `componentWillUpdate` and `componentDidUpdate`.\n *\n * @param {?function} callback Called after update is complete.\n * @final\n * @protected\n */\n\n\nComponent.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, 'forceUpdate');\n};\n/**\n * Deprecated APIs. These APIs used to exist on classic React classes but since\n * we would like to deprecate them, we're not going to move them over to this\n * modern base class. Instead, we define a getter that warns if it's accessed.\n */\n\n\n{\n var deprecatedAPIs = {\n isMounted: ['isMounted', 'Instead, make sure to clean up subscriptions and pending requests in ' + 'componentWillUnmount to prevent memory leaks.'],\n replaceState: ['replaceState', 'Refactor your code to use setState instead (see ' + 'https://github.com/facebook/react/issues/3236).']\n };\n\n var defineDeprecationWarning = function (methodName, info) {\n Object.defineProperty(Component.prototype, methodName, {\n get: function () {\n warn('%s(...) is deprecated in plain JavaScript React classes. %s', info[0], info[1]);\n\n return undefined;\n }\n });\n };\n\n for (var fnName in deprecatedAPIs) {\n if (deprecatedAPIs.hasOwnProperty(fnName)) {\n defineDeprecationWarning(fnName, deprecatedAPIs[fnName]);\n }\n }\n}\n\nfunction ComponentDummy() {}\n\nComponentDummy.prototype = Component.prototype;\n/**\n * Convenience component with default shallow equality check for sCU.\n */\n\nfunction PureComponent(props, context, updater) {\n this.props = props;\n this.context = context; // If a component has string refs, we will assign a different object later.\n\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\n\nvar pureComponentPrototype = PureComponent.prototype = new ComponentDummy();\npureComponentPrototype.constructor = PureComponent; // Avoid an extra prototype jump for these methods.\n\nassign(pureComponentPrototype, Component.prototype);\npureComponentPrototype.isPureReactComponent = true;\n\n// an immutable object with a single mutable value\nfunction createRef() {\n var refObject = {\n current: null\n };\n\n {\n Object.seal(refObject);\n }\n\n return refObject;\n}\n\nvar isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare\n\nfunction isArray(a) {\n return isArrayImpl(a);\n}\n\n/*\n * The `'' + value` pattern (used in in perf-sensitive code) throws for Symbol\n * and Temporal.* types. See https://github.com/facebook/react/pull/22064.\n *\n * The functions in this module will throw an easier-to-understand,\n * easier-to-debug exception with a clear errors message message explaining the\n * problem. (Instead of a confusing exception thrown inside the implementation\n * of the `value` object).\n */\n// $FlowFixMe only called in DEV, so void return is not possible.\nfunction typeName(value) {\n {\n // toStringTag is needed for namespaced types like Temporal.Instant\n var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag;\n var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object';\n return type;\n }\n} // $FlowFixMe only called in DEV, so void return is not possible.\n\n\nfunction willCoercionThrow(value) {\n {\n try {\n testStringCoercion(value);\n return false;\n } catch (e) {\n return true;\n }\n }\n}\n\nfunction testStringCoercion(value) {\n // If you ended up here by following an exception call stack, here's what's\n // happened: you supplied an object or symbol value to React (as a prop, key,\n // DOM attribute, CSS property, string ref, etc.) and when React tried to\n // coerce it to a string using `'' + value`, an exception was thrown.\n //\n // The most common types that will cause this exception are `Symbol` instances\n // and Temporal objects like `Temporal.Instant`. But any object that has a\n // `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this\n // exception. (Library authors do this to prevent users from using built-in\n // numeric operators like `+` or comparison operators like `>=` because custom\n // methods are needed to perform accurate arithmetic or comparison.)\n //\n // To fix the problem, coerce this object or symbol value to a string before\n // passing it to React. The most reliable way is usually `String(value)`.\n //\n // To find which value is throwing, check the browser or debugger console.\n // Before this exception was thrown, there should be `console.error` output\n // that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the\n // problem and how that type was used: key, atrribute, input value prop, etc.\n // In most cases, this console output also shows the component and its\n // ancestor components where the exception happened.\n //\n // eslint-disable-next-line react-internal/safe-string-coercion\n return '' + value;\n}\nfunction checkKeyStringCoercion(value) {\n {\n if (willCoercionThrow(value)) {\n error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\n\nfunction getWrappedName(outerType, innerType, wrapperName) {\n var displayName = outerType.displayName;\n\n if (displayName) {\n return displayName;\n }\n\n var functionName = innerType.displayName || innerType.name || '';\n return functionName !== '' ? wrapperName + \"(\" + functionName + \")\" : wrapperName;\n} // Keep in sync with react-reconciler/getComponentNameFromFiber\n\n\nfunction getContextName(type) {\n return type.displayName || 'Context';\n} // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead.\n\n\nfunction getComponentNameFromType(type) {\n if (type == null) {\n // Host root, text node or just invalid type.\n return null;\n }\n\n {\n if (typeof type.tag === 'number') {\n error('Received an unexpected object in getComponentNameFromType(). ' + 'This is likely a bug in React. Please file an issue.');\n }\n }\n\n if (typeof type === 'function') {\n return type.displayName || type.name || null;\n }\n\n if (typeof type === 'string') {\n return type;\n }\n\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return 'Fragment';\n\n case REACT_PORTAL_TYPE:\n return 'Portal';\n\n case REACT_PROFILER_TYPE:\n return 'Profiler';\n\n case REACT_STRICT_MODE_TYPE:\n return 'StrictMode';\n\n case REACT_SUSPENSE_TYPE:\n return 'Suspense';\n\n case REACT_SUSPENSE_LIST_TYPE:\n return 'SuspenseList';\n\n }\n\n if (typeof type === 'object') {\n switch (type.$$typeof) {\n case REACT_CONTEXT_TYPE:\n var context = type;\n return getContextName(context) + '.Consumer';\n\n case REACT_PROVIDER_TYPE:\n var provider = type;\n return getContextName(provider._context) + '.Provider';\n\n case REACT_FORWARD_REF_TYPE:\n return getWrappedName(type, type.render, 'ForwardRef');\n\n case REACT_MEMO_TYPE:\n var outerName = type.displayName || null;\n\n if (outerName !== null) {\n return outerName;\n }\n\n return getComponentNameFromType(type.type) || 'Memo';\n\n case REACT_LAZY_TYPE:\n {\n var lazyComponent = type;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n\n try {\n return getComponentNameFromType(init(payload));\n } catch (x) {\n return null;\n }\n }\n\n // eslint-disable-next-line no-fallthrough\n }\n }\n\n return null;\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar RESERVED_PROPS = {\n key: true,\n ref: true,\n __self: true,\n __source: true\n};\nvar specialPropKeyWarningShown, specialPropRefWarningShown, didWarnAboutStringRefs;\n\n{\n didWarnAboutStringRefs = {};\n}\n\nfunction hasValidRef(config) {\n {\n if (hasOwnProperty.call(config, 'ref')) {\n var getter = Object.getOwnPropertyDescriptor(config, 'ref').get;\n\n if (getter && getter.isReactWarning) {\n return false;\n }\n }\n }\n\n return config.ref !== undefined;\n}\n\nfunction hasValidKey(config) {\n {\n if (hasOwnProperty.call(config, 'key')) {\n var getter = Object.getOwnPropertyDescriptor(config, 'key').get;\n\n if (getter && getter.isReactWarning) {\n return false;\n }\n }\n }\n\n return config.key !== undefined;\n}\n\nfunction defineKeyPropWarningGetter(props, displayName) {\n var warnAboutAccessingKey = function () {\n {\n if (!specialPropKeyWarningShown) {\n specialPropKeyWarningShown = true;\n\n error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n }\n }\n };\n\n warnAboutAccessingKey.isReactWarning = true;\n Object.defineProperty(props, 'key', {\n get: warnAboutAccessingKey,\n configurable: true\n });\n}\n\nfunction defineRefPropWarningGetter(props, displayName) {\n var warnAboutAccessingRef = function () {\n {\n if (!specialPropRefWarningShown) {\n specialPropRefWarningShown = true;\n\n error('%s: `ref` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n }\n }\n };\n\n warnAboutAccessingRef.isReactWarning = true;\n Object.defineProperty(props, 'ref', {\n get: warnAboutAccessingRef,\n configurable: true\n });\n}\n\nfunction warnIfStringRefCannotBeAutoConverted(config) {\n {\n if (typeof config.ref === 'string' && ReactCurrentOwner.current && config.__self && ReactCurrentOwner.current.stateNode !== config.__self) {\n var componentName = getComponentNameFromType(ReactCurrentOwner.current.type);\n\n if (!didWarnAboutStringRefs[componentName]) {\n error('Component \"%s\" contains the string ref \"%s\". ' + 'Support for string refs will be removed in a future major release. ' + 'This case cannot be automatically converted to an arrow function. ' + 'We ask you to manually fix this case by using useRef() or createRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref', componentName, config.ref);\n\n didWarnAboutStringRefs[componentName] = true;\n }\n }\n }\n}\n/**\n * Factory method to create a new React element. This no longer adheres to\n * the class pattern, so do not use new to call it. Also, instanceof check\n * will not work. Instead test $$typeof field against Symbol.for('react.element') to check\n * if something is a React Element.\n *\n * @param {*} type\n * @param {*} props\n * @param {*} key\n * @param {string|object} ref\n * @param {*} owner\n * @param {*} self A *temporary* helper to detect places where `this` is\n * different from the `owner` when React.createElement is called, so that we\n * can warn. We want to get rid of owner and replace string `ref`s with arrow\n * functions, and as long as `this` and owner are the same, there will be no\n * change in behavior.\n * @param {*} source An annotation object (added by a transpiler or otherwise)\n * indicating filename, line number, and/or other information.\n * @internal\n */\n\n\nvar ReactElement = function (type, key, ref, self, source, owner, props) {\n var element = {\n // This tag allows us to uniquely identify this as a React Element\n $$typeof: REACT_ELEMENT_TYPE,\n // Built-in properties that belong on the element\n type: type,\n key: key,\n ref: ref,\n props: props,\n // Record the component responsible for creating this element.\n _owner: owner\n };\n\n {\n // The validation flag is currently mutative. We put it on\n // an external backing store so that we can freeze the whole object.\n // This can be replaced with a WeakMap once they are implemented in\n // commonly used development environments.\n element._store = {}; // To make comparing ReactElements easier for testing purposes, we make\n // the validation flag non-enumerable (where possible, which should\n // include every environment we run tests in), so the test framework\n // ignores it.\n\n Object.defineProperty(element._store, 'validated', {\n configurable: false,\n enumerable: false,\n writable: true,\n value: false\n }); // self and source are DEV only properties.\n\n Object.defineProperty(element, '_self', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: self\n }); // Two elements created in two different places should be considered\n // equal for testing purposes and therefore we hide it from enumeration.\n\n Object.defineProperty(element, '_source', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: source\n });\n\n if (Object.freeze) {\n Object.freeze(element.props);\n Object.freeze(element);\n }\n }\n\n return element;\n};\n/**\n * Create and return a new ReactElement of the given type.\n * See https://reactjs.org/docs/react-api.html#createelement\n */\n\nfunction createElement(type, config, children) {\n var propName; // Reserved names are extracted\n\n var props = {};\n var key = null;\n var ref = null;\n var self = null;\n var source = null;\n\n if (config != null) {\n if (hasValidRef(config)) {\n ref = config.ref;\n\n {\n warnIfStringRefCannotBeAutoConverted(config);\n }\n }\n\n if (hasValidKey(config)) {\n {\n checkKeyStringCoercion(config.key);\n }\n\n key = '' + config.key;\n }\n\n self = config.__self === undefined ? null : config.__self;\n source = config.__source === undefined ? null : config.__source; // Remaining properties are added to a new props object\n\n for (propName in config) {\n if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) {\n props[propName] = config[propName];\n }\n }\n } // Children can be more than one argument, and those are transferred onto\n // the newly allocated props object.\n\n\n var childrenLength = arguments.length - 2;\n\n if (childrenLength === 1) {\n props.children = children;\n } else if (childrenLength > 1) {\n var childArray = Array(childrenLength);\n\n for (var i = 0; i < childrenLength; i++) {\n childArray[i] = arguments[i + 2];\n }\n\n {\n if (Object.freeze) {\n Object.freeze(childArray);\n }\n }\n\n props.children = childArray;\n } // Resolve default props\n\n\n if (type && type.defaultProps) {\n var defaultProps = type.defaultProps;\n\n for (propName in defaultProps) {\n if (props[propName] === undefined) {\n props[propName] = defaultProps[propName];\n }\n }\n }\n\n {\n if (key || ref) {\n var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type;\n\n if (key) {\n defineKeyPropWarningGetter(props, displayName);\n }\n\n if (ref) {\n defineRefPropWarningGetter(props, displayName);\n }\n }\n }\n\n return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props);\n}\nfunction cloneAndReplaceKey(oldElement, newKey) {\n var newElement = ReactElement(oldElement.type, newKey, oldElement.ref, oldElement._self, oldElement._source, oldElement._owner, oldElement.props);\n return newElement;\n}\n/**\n * Clone and return a new ReactElement using element as the starting point.\n * See https://reactjs.org/docs/react-api.html#cloneelement\n */\n\nfunction cloneElement(element, config, children) {\n if (element === null || element === undefined) {\n throw new Error(\"React.cloneElement(...): The argument must be a React element, but you passed \" + element + \".\");\n }\n\n var propName; // Original props are copied\n\n var props = assign({}, element.props); // Reserved names are extracted\n\n var key = element.key;\n var ref = element.ref; // Self is preserved since the owner is preserved.\n\n var self = element._self; // Source is preserved since cloneElement is unlikely to be targeted by a\n // transpiler, and the original source is probably a better indicator of the\n // true owner.\n\n var source = element._source; // Owner will be preserved, unless ref is overridden\n\n var owner = element._owner;\n\n if (config != null) {\n if (hasValidRef(config)) {\n // Silently steal the ref from the parent.\n ref = config.ref;\n owner = ReactCurrentOwner.current;\n }\n\n if (hasValidKey(config)) {\n {\n checkKeyStringCoercion(config.key);\n }\n\n key = '' + config.key;\n } // Remaining properties override existing props\n\n\n var defaultProps;\n\n if (element.type && element.type.defaultProps) {\n defaultProps = element.type.defaultProps;\n }\n\n for (propName in config) {\n if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) {\n if (config[propName] === undefined && defaultProps !== undefined) {\n // Resolve default props\n props[propName] = defaultProps[propName];\n } else {\n props[propName] = config[propName];\n }\n }\n }\n } // Children can be more than one argument, and those are transferred onto\n // the newly allocated props object.\n\n\n var childrenLength = arguments.length - 2;\n\n if (childrenLength === 1) {\n props.children = children;\n } else if (childrenLength > 1) {\n var childArray = Array(childrenLength);\n\n for (var i = 0; i < childrenLength; i++) {\n childArray[i] = arguments[i + 2];\n }\n\n props.children = childArray;\n }\n\n return ReactElement(element.type, key, ref, self, source, owner, props);\n}\n/**\n * Verifies the object is a ReactElement.\n * See https://reactjs.org/docs/react-api.html#isvalidelement\n * @param {?object} object\n * @return {boolean} True if `object` is a ReactElement.\n * @final\n */\n\nfunction isValidElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\n\nvar SEPARATOR = '.';\nvar SUBSEPARATOR = ':';\n/**\n * Escape and wrap key so it is safe to use as a reactid\n *\n * @param {string} key to be escaped.\n * @return {string} the escaped key.\n */\n\nfunction escape(key) {\n var escapeRegex = /[=:]/g;\n var escaperLookup = {\n '=': '=0',\n ':': '=2'\n };\n var escapedString = key.replace(escapeRegex, function (match) {\n return escaperLookup[match];\n });\n return '$' + escapedString;\n}\n/**\n * TODO: Test that a single child and an array with one item have the same key\n * pattern.\n */\n\n\nvar didWarnAboutMaps = false;\nvar userProvidedKeyEscapeRegex = /\\/+/g;\n\nfunction escapeUserProvidedKey(text) {\n return text.replace(userProvidedKeyEscapeRegex, '$&/');\n}\n/**\n * Generate a key string that identifies a element within a set.\n *\n * @param {*} element A element that could contain a manual key.\n * @param {number} index Index that is used if a manual key is not provided.\n * @return {string}\n */\n\n\nfunction getElementKey(element, index) {\n // Do some typechecking here since we call this blindly. We want to ensure\n // that we don't block potential future ES APIs.\n if (typeof element === 'object' && element !== null && element.key != null) {\n // Explicit key\n {\n checkKeyStringCoercion(element.key);\n }\n\n return escape('' + element.key);\n } // Implicit key determined by the index in the set\n\n\n return index.toString(36);\n}\n\nfunction mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n\n if (type === 'undefined' || type === 'boolean') {\n // All of the above are perceived as null.\n children = null;\n }\n\n var invokeCallback = false;\n\n if (children === null) {\n invokeCallback = true;\n } else {\n switch (type) {\n case 'string':\n case 'number':\n invokeCallback = true;\n break;\n\n case 'object':\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = true;\n }\n\n }\n }\n\n if (invokeCallback) {\n var _child = children;\n var mappedChild = callback(_child); // If it's the only child, treat the name as if it was wrapped in an array\n // so that it's consistent if the number of children grows:\n\n var childKey = nameSoFar === '' ? SEPARATOR + getElementKey(_child, 0) : nameSoFar;\n\n if (isArray(mappedChild)) {\n var escapedChildKey = '';\n\n if (childKey != null) {\n escapedChildKey = escapeUserProvidedKey(childKey) + '/';\n }\n\n mapIntoArray(mappedChild, array, escapedChildKey, '', function (c) {\n return c;\n });\n } else if (mappedChild != null) {\n if (isValidElement(mappedChild)) {\n {\n // The `if` statement here prevents auto-disabling of the safe\n // coercion ESLint rule, so we must manually disable it below.\n // $FlowFixMe Flow incorrectly thinks React.Portal doesn't have a key\n if (mappedChild.key && (!_child || _child.key !== mappedChild.key)) {\n checkKeyStringCoercion(mappedChild.key);\n }\n }\n\n mappedChild = cloneAndReplaceKey(mappedChild, // Keep both the (mapped) and old keys if they differ, just as\n // traverseAllChildren used to do for objects as children\n escapedPrefix + ( // $FlowFixMe Flow incorrectly thinks React.Portal doesn't have a key\n mappedChild.key && (!_child || _child.key !== mappedChild.key) ? // $FlowFixMe Flow incorrectly thinks existing element's key can be a number\n // eslint-disable-next-line react-internal/safe-string-coercion\n escapeUserProvidedKey('' + mappedChild.key) + '/' : '') + childKey);\n }\n\n array.push(mappedChild);\n }\n\n return 1;\n }\n\n var child;\n var nextName;\n var subtreeCount = 0; // Count of children found in the current subtree.\n\n var nextNamePrefix = nameSoFar === '' ? SEPARATOR : nameSoFar + SUBSEPARATOR;\n\n if (isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n child = children[i];\n nextName = nextNamePrefix + getElementKey(child, i);\n subtreeCount += mapIntoArray(child, array, escapedPrefix, nextName, callback);\n }\n } else {\n var iteratorFn = getIteratorFn(children);\n\n if (typeof iteratorFn === 'function') {\n var iterableChildren = children;\n\n {\n // Warn about using Maps as children\n if (iteratorFn === iterableChildren.entries) {\n if (!didWarnAboutMaps) {\n warn('Using Maps as children is not supported. ' + 'Use an array of keyed ReactElements instead.');\n }\n\n didWarnAboutMaps = true;\n }\n }\n\n var iterator = iteratorFn.call(iterableChildren);\n var step;\n var ii = 0;\n\n while (!(step = iterator.next()).done) {\n child = step.value;\n nextName = nextNamePrefix + getElementKey(child, ii++);\n subtreeCount += mapIntoArray(child, array, escapedPrefix, nextName, callback);\n }\n } else if (type === 'object') {\n // eslint-disable-next-line react-internal/safe-string-coercion\n var childrenString = String(children);\n throw new Error(\"Objects are not valid as a React child (found: \" + (childrenString === '[object Object]' ? 'object with keys {' + Object.keys(children).join(', ') + '}' : childrenString) + \"). \" + 'If you meant to render a collection of children, use an array ' + 'instead.');\n }\n }\n\n return subtreeCount;\n}\n\n/**\n * Maps children that are typically specified as `props.children`.\n *\n * See https://reactjs.org/docs/react-api.html#reactchildrenmap\n *\n * The provided mapFunction(child, index) will be called for each\n * leaf child.\n *\n * @param {?*} children Children tree container.\n * @param {function(*, int)} func The map function.\n * @param {*} context Context for mapFunction.\n * @return {object} Object containing the ordered map of results.\n */\nfunction mapChildren(children, func, context) {\n if (children == null) {\n return children;\n }\n\n var result = [];\n var count = 0;\n mapIntoArray(children, result, '', '', function (child) {\n return func.call(context, child, count++);\n });\n return result;\n}\n/**\n * Count the number of children that are typically specified as\n * `props.children`.\n *\n * See https://reactjs.org/docs/react-api.html#reactchildrencount\n *\n * @param {?*} children Children tree container.\n * @return {number} The number of children.\n */\n\n\nfunction countChildren(children) {\n var n = 0;\n mapChildren(children, function () {\n n++; // Don't return anything\n });\n return n;\n}\n\n/**\n * Iterates through children that are typically specified as `props.children`.\n *\n * See https://reactjs.org/docs/react-api.html#reactchildrenforeach\n *\n * The provided forEachFunc(child, index) will be called for each\n * leaf child.\n *\n * @param {?*} children Children tree container.\n * @param {function(*, int)} forEachFunc\n * @param {*} forEachContext Context for forEachContext.\n */\nfunction forEachChildren(children, forEachFunc, forEachContext) {\n mapChildren(children, function () {\n forEachFunc.apply(this, arguments); // Don't return anything.\n }, forEachContext);\n}\n/**\n * Flatten a children object (typically specified as `props.children`) and\n * return an array with appropriately re-keyed children.\n *\n * See https://reactjs.org/docs/react-api.html#reactchildrentoarray\n */\n\n\nfunction toArray(children) {\n return mapChildren(children, function (child) {\n return child;\n }) || [];\n}\n/**\n * Returns the first child in a collection of children and verifies that there\n * is only one child in the collection.\n *\n * See https://reactjs.org/docs/react-api.html#reactchildrenonly\n *\n * The current implementation of this function assumes that a single child gets\n * passed without a wrapper, but the purpose of this helper function is to\n * abstract away the particular structure of children.\n *\n * @param {?object} children Child collection structure.\n * @return {ReactElement} The first and only `ReactElement` contained in the\n * structure.\n */\n\n\nfunction onlyChild(children) {\n if (!isValidElement(children)) {\n throw new Error('React.Children.only expected to receive a single React element child.');\n }\n\n return children;\n}\n\nfunction createContext(defaultValue) {\n // TODO: Second argument used to be an optional `calculateChangedBits`\n // function. Warn to reserve for future use?\n var context = {\n $$typeof: REACT_CONTEXT_TYPE,\n // As a workaround to support multiple concurrent renderers, we categorize\n // some renderers as primary and others as secondary. We only expect\n // there to be two concurrent renderers at most: React Native (primary) and\n // Fabric (secondary); React DOM (primary) and React ART (secondary).\n // Secondary renderers store their context values on separate fields.\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n // Used to track how many concurrent renderers this context currently\n // supports within in a single renderer. Such as parallel server rendering.\n _threadCount: 0,\n // These are circular\n Provider: null,\n Consumer: null,\n // Add these to use same hidden class in VM as ServerContext\n _defaultValue: null,\n _globalName: null\n };\n context.Provider = {\n $$typeof: REACT_PROVIDER_TYPE,\n _context: context\n };\n var hasWarnedAboutUsingNestedContextConsumers = false;\n var hasWarnedAboutUsingConsumerProvider = false;\n var hasWarnedAboutDisplayNameOnConsumer = false;\n\n {\n // A separate object, but proxies back to the original context object for\n // backwards compatibility. It has a different $$typeof, so we can properly\n // warn for the incorrect usage of Context as a Consumer.\n var Consumer = {\n $$typeof: REACT_CONTEXT_TYPE,\n _context: context\n }; // $FlowFixMe: Flow complains about not setting a value, which is intentional here\n\n Object.defineProperties(Consumer, {\n Provider: {\n get: function () {\n if (!hasWarnedAboutUsingConsumerProvider) {\n hasWarnedAboutUsingConsumerProvider = true;\n\n error('Rendering <Context.Consumer.Provider> is not supported and will be removed in ' + 'a future major release. Did you mean to render <Context.Provider> instead?');\n }\n\n return context.Provider;\n },\n set: function (_Provider) {\n context.Provider = _Provider;\n }\n },\n _currentValue: {\n get: function () {\n return context._currentValue;\n },\n set: function (_currentValue) {\n context._currentValue = _currentValue;\n }\n },\n _currentValue2: {\n get: function () {\n return context._currentValue2;\n },\n set: function (_currentValue2) {\n context._currentValue2 = _currentValue2;\n }\n },\n _threadCount: {\n get: function () {\n return context._threadCount;\n },\n set: function (_threadCount) {\n context._threadCount = _threadCount;\n }\n },\n Consumer: {\n get: function () {\n if (!hasWarnedAboutUsingNestedContextConsumers) {\n hasWarnedAboutUsingNestedContextConsumers = true;\n\n error('Rendering <Context.Consumer.Consumer> is not supported and will be removed in ' + 'a future major release. Did you mean to render <Context.Consumer> instead?');\n }\n\n return context.Consumer;\n }\n },\n displayName: {\n get: function () {\n return context.displayName;\n },\n set: function (displayName) {\n if (!hasWarnedAboutDisplayNameOnConsumer) {\n warn('Setting `displayName` on Context.Consumer has no effect. ' + \"You should set it directly on the context with Context.displayName = '%s'.\", displayName);\n\n hasWarnedAboutDisplayNameOnConsumer = true;\n }\n }\n }\n }); // $FlowFixMe: Flow complains about missing properties because it doesn't understand defineProperty\n\n context.Consumer = Consumer;\n }\n\n {\n context._currentRenderer = null;\n context._currentRenderer2 = null;\n }\n\n return context;\n}\n\nvar Uninitialized = -1;\nvar Pending = 0;\nvar Resolved = 1;\nvar Rejected = 2;\n\nfunction lazyInitializer(payload) {\n if (payload._status === Uninitialized) {\n var ctor = payload._result;\n var thenable = ctor(); // Transition to the next state.\n // This might throw either because it's missing or throws. If so, we treat it\n // as still uninitialized and try again next time. Which is the same as what\n // happens if the ctor or any wrappers processing the ctor throws. This might\n // end up fixing it if the resolution was a concurrency bug.\n\n thenable.then(function (moduleObject) {\n if (payload._status === Pending || payload._status === Uninitialized) {\n // Transition to the next state.\n var resolved = payload;\n resolved._status = Resolved;\n resolved._result = moduleObject;\n }\n }, function (error) {\n if (payload._status === Pending || payload._status === Uninitialized) {\n // Transition to the next state.\n var rejected = payload;\n rejected._status = Rejected;\n rejected._result = error;\n }\n });\n\n if (payload._status === Uninitialized) {\n // In case, we're still uninitialized, then we're waiting for the thenable\n // to resolve. Set it as pending in the meantime.\n var pending = payload;\n pending._status = Pending;\n pending._result = thenable;\n }\n }\n\n if (payload._status === Resolved) {\n var moduleObject = payload._result;\n\n {\n if (moduleObject === undefined) {\n error('lazy: Expected the result of a dynamic imp' + 'ort() call. ' + 'Instead received: %s\\n\\nYour code should look like: \\n ' + // Break up imports to avoid accidentally parsing them as dependencies.\n 'const MyComponent = lazy(() => imp' + \"ort('./MyComponent'))\\n\\n\" + 'Did you accidentally put curly braces around the import?', moduleObject);\n }\n }\n\n {\n if (!('default' in moduleObject)) {\n error('lazy: Expected the result of a dynamic imp' + 'ort() call. ' + 'Instead received: %s\\n\\nYour code should look like: \\n ' + // Break up imports to avoid accidentally parsing them as dependencies.\n 'const MyComponent = lazy(() => imp' + \"ort('./MyComponent'))\", moduleObject);\n }\n }\n\n return moduleObject.default;\n } else {\n throw payload._result;\n }\n}\n\nfunction lazy(ctor) {\n var payload = {\n // We use these fields to store the result.\n _status: Uninitialized,\n _result: ctor\n };\n var lazyType = {\n $$typeof: REACT_LAZY_TYPE,\n _payload: payload,\n _init: lazyInitializer\n };\n\n {\n // In production, this would just set it on the object.\n var defaultProps;\n var propTypes; // $FlowFixMe\n\n Object.defineProperties(lazyType, {\n defaultProps: {\n configurable: true,\n get: function () {\n return defaultProps;\n },\n set: function (newDefaultProps) {\n error('React.lazy(...): It is not supported to assign `defaultProps` to ' + 'a lazy component import. Either specify them where the component ' + 'is defined, or create a wrapping component around it.');\n\n defaultProps = newDefaultProps; // Match production behavior more closely:\n // $FlowFixMe\n\n Object.defineProperty(lazyType, 'defaultProps', {\n enumerable: true\n });\n }\n },\n propTypes: {\n configurable: true,\n get: function () {\n return propTypes;\n },\n set: function (newPropTypes) {\n error('React.lazy(...): It is not supported to assign `propTypes` to ' + 'a lazy component import. Either specify them where the component ' + 'is defined, or create a wrapping component around it.');\n\n propTypes = newPropTypes; // Match production behavior more closely:\n // $FlowFixMe\n\n Object.defineProperty(lazyType, 'propTypes', {\n enumerable: true\n });\n }\n }\n });\n }\n\n return lazyType;\n}\n\nfunction forwardRef(render) {\n {\n if (render != null && render.$$typeof === REACT_MEMO_TYPE) {\n error('forwardRef requires a render function but received a `memo` ' + 'component. Instead of forwardRef(memo(...)), use ' + 'memo(forwardRef(...)).');\n } else if (typeof render !== 'function') {\n error('forwardRef requires a render function but was given %s.', render === null ? 'null' : typeof render);\n } else {\n if (render.length !== 0 && render.length !== 2) {\n error('forwardRef render functions accept exactly two parameters: props and ref. %s', render.length === 1 ? 'Did you forget to use the ref parameter?' : 'Any additional parameter will be undefined.');\n }\n }\n\n if (render != null) {\n if (render.defaultProps != null || render.propTypes != null) {\n error('forwardRef render functions do not support propTypes or defaultProps. ' + 'Did you accidentally pass a React component?');\n }\n }\n }\n\n var elementType = {\n $$typeof: REACT_FORWARD_REF_TYPE,\n render: render\n };\n\n {\n var ownName;\n Object.defineProperty(elementType, 'displayName', {\n enumerable: false,\n configurable: true,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name; // The inner component shouldn't inherit this display name in most cases,\n // because the component may be used elsewhere.\n // But it's nice for anonymous functions to inherit the name,\n // so that our component-stack generation logic will display their frames.\n // An anonymous function generally suggests a pattern like:\n // React.forwardRef((props, ref) => {...});\n // This kind of inner function is not used elsewhere so the side effect is okay.\n\n if (!render.name && !render.displayName) {\n render.displayName = name;\n }\n }\n });\n }\n\n return elementType;\n}\n\nvar REACT_MODULE_REFERENCE;\n\n{\n REACT_MODULE_REFERENCE = Symbol.for('react.module.reference');\n}\n\nfunction isValidElementType(type) {\n if (typeof type === 'string' || typeof type === 'function') {\n return true;\n } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).\n\n\n if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || enableCacheElement || enableTransitionTracing ) {\n return true;\n }\n\n if (typeof type === 'object' && type !== null) {\n if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object\n // types supported by any Flight configuration anywhere since\n // we don't know which Flight build this will end up being used\n // with.\n type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) {\n return true;\n }\n }\n\n return false;\n}\n\nfunction memo(type, compare) {\n {\n if (!isValidElementType(type)) {\n error('memo: The first argument must be a component. Instead ' + 'received: %s', type === null ? 'null' : typeof type);\n }\n }\n\n var elementType = {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: compare === undefined ? null : compare\n };\n\n {\n var ownName;\n Object.defineProperty(elementType, 'displayName', {\n enumerable: false,\n configurable: true,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name; // The inner component shouldn't inherit this display name in most cases,\n // because the component may be used elsewhere.\n // But it's nice for anonymous functions to inherit the name,\n // so that our component-stack generation logic will display their frames.\n // An anonymous function generally suggests a pattern like:\n // React.memo((props) => {...});\n // This kind of inner function is not used elsewhere so the side effect is okay.\n\n if (!type.name && !type.displayName) {\n type.displayName = name;\n }\n }\n });\n }\n\n return elementType;\n}\n\nfunction resolveDispatcher() {\n var dispatcher = ReactCurrentDispatcher.current;\n\n {\n if (dispatcher === null) {\n error('Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for' + ' one of the following reasons:\\n' + '1. You might have mismatching versions of React and the renderer (such as React DOM)\\n' + '2. You might be breaking the Rules of Hooks\\n' + '3. You might have more than one copy of React in the same app\\n' + 'See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.');\n }\n } // Will result in a null access error if accessed outside render phase. We\n // intentionally don't throw our own error because this is in a hot path.\n // Also helps ensure this is inlined.\n\n\n return dispatcher;\n}\nfunction useContext(Context) {\n var dispatcher = resolveDispatcher();\n\n {\n // TODO: add a more generic warning for invalid values.\n if (Context._context !== undefined) {\n var realContext = Context._context; // Don't deduplicate because this legitimately causes bugs\n // and nobody should be using this in existing code.\n\n if (realContext.Consumer === Context) {\n error('Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be ' + 'removed in a future major release. Did you mean to call useContext(Context) instead?');\n } else if (realContext.Provider === Context) {\n error('Calling useContext(Context.Provider) is not supported. ' + 'Did you mean to call useContext(Context) instead?');\n }\n }\n }\n\n return dispatcher.useContext(Context);\n}\nfunction useState(initialState) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useState(initialState);\n}\nfunction useReducer(reducer, initialArg, init) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useReducer(reducer, initialArg, init);\n}\nfunction useRef(initialValue) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useRef(initialValue);\n}\nfunction useEffect(create, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useEffect(create, deps);\n}\nfunction useInsertionEffect(create, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useInsertionEffect(create, deps);\n}\nfunction useLayoutEffect(create, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useLayoutEffect(create, deps);\n}\nfunction useCallback(callback, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useCallback(callback, deps);\n}\nfunction useMemo(create, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useMemo(create, deps);\n}\nfunction useImperativeHandle(ref, create, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useImperativeHandle(ref, create, deps);\n}\nfunction useDebugValue(value, formatterFn) {\n {\n var dispatcher = resolveDispatcher();\n return dispatcher.useDebugValue(value, formatterFn);\n }\n}\nfunction useTransition() {\n var dispatcher = resolveDispatcher();\n return dispatcher.useTransition();\n}\nfunction useDeferredValue(value) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useDeferredValue(value);\n}\nfunction useId() {\n var dispatcher = resolveDispatcher();\n return dispatcher.useId();\n}\nfunction useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n}\n\n// Helpers to patch console.logs to avoid logging during side-effect free\n// replaying on render function. This currently only patches the object\n// lazily which won't cover if the log function was extracted eagerly.\n// We could also eagerly patch the method.\nvar disabledDepth = 0;\nvar prevLog;\nvar prevInfo;\nvar prevWarn;\nvar prevError;\nvar prevGroup;\nvar prevGroupCollapsed;\nvar prevGroupEnd;\n\nfunction disabledLog() {}\n\ndisabledLog.__reactDisabledLog = true;\nfunction disableLogs() {\n {\n if (disabledDepth === 0) {\n /* eslint-disable react-internal/no-production-logging */\n prevLog = console.log;\n prevInfo = console.info;\n prevWarn = console.warn;\n prevError = console.error;\n prevGroup = console.group;\n prevGroupCollapsed = console.groupCollapsed;\n prevGroupEnd = console.groupEnd; // https://github.com/facebook/react/issues/19099\n\n var props = {\n configurable: true,\n enumerable: true,\n value: disabledLog,\n writable: true\n }; // $FlowFixMe Flow thinks console is immutable.\n\n Object.defineProperties(console, {\n info: props,\n log: props,\n warn: props,\n error: props,\n group: props,\n groupCollapsed: props,\n groupEnd: props\n });\n /* eslint-enable react-internal/no-production-logging */\n }\n\n disabledDepth++;\n }\n}\nfunction reenableLogs() {\n {\n disabledDepth--;\n\n if (disabledDepth === 0) {\n /* eslint-disable react-internal/no-production-logging */\n var props = {\n configurable: true,\n enumerable: true,\n writable: true\n }; // $FlowFixMe Flow thinks console is immutable.\n\n Object.defineProperties(console, {\n log: assign({}, props, {\n value: prevLog\n }),\n info: assign({}, props, {\n value: prevInfo\n }),\n warn: assign({}, props, {\n value: prevWarn\n }),\n error: assign({}, props, {\n value: prevError\n }),\n group: assign({}, props, {\n value: prevGroup\n }),\n groupCollapsed: assign({}, props, {\n value: prevGroupCollapsed\n }),\n groupEnd: assign({}, props, {\n value: prevGroupEnd\n })\n });\n /* eslint-enable react-internal/no-production-logging */\n }\n\n if (disabledDepth < 0) {\n error('disabledDepth fell below zero. ' + 'This is a bug in React. Please file an issue.');\n }\n }\n}\n\nvar ReactCurrentDispatcher$1 = ReactSharedInternals.ReactCurrentDispatcher;\nvar prefix;\nfunction describeBuiltInComponentFrame(name, source, ownerFn) {\n {\n if (prefix === undefined) {\n // Extract the VM specific prefix used by each line.\n try {\n throw Error();\n } catch (x) {\n var match = x.stack.trim().match(/\\n( *(at )?)/);\n prefix = match && match[1] || '';\n }\n } // We use the prefix to ensure our stacks line up with native stack frames.\n\n\n return '\\n' + prefix + name;\n }\n}\nvar reentry = false;\nvar componentFrameCache;\n\n{\n var PossiblyWeakMap = typeof WeakMap === 'function' ? WeakMap : Map;\n componentFrameCache = new PossiblyWeakMap();\n}\n\nfunction describeNativeComponentFrame(fn, construct) {\n // If something asked for a stack inside a fake render, it should get ignored.\n if ( !fn || reentry) {\n return '';\n }\n\n {\n var frame = componentFrameCache.get(fn);\n\n if (frame !== undefined) {\n return frame;\n }\n }\n\n var control;\n reentry = true;\n var previousPrepareStackTrace = Error.prepareStackTrace; // $FlowFixMe It does accept undefined.\n\n Error.prepareStackTrace = undefined;\n var previousDispatcher;\n\n {\n previousDispatcher = ReactCurrentDispatcher$1.current; // Set the dispatcher in DEV because this might be call in the render function\n // for warnings.\n\n ReactCurrentDispatcher$1.current = null;\n disableLogs();\n }\n\n try {\n // This should throw.\n if (construct) {\n // Something should be setting the props in the constructor.\n var Fake = function () {\n throw Error();\n }; // $FlowFixMe\n\n\n Object.defineProperty(Fake.prototype, 'props', {\n set: function () {\n // We use a throwing setter instead of frozen or non-writable props\n // because that won't throw in a non-strict mode function.\n throw Error();\n }\n });\n\n if (typeof Reflect === 'object' && Reflect.construct) {\n // We construct a different control for this case to include any extra\n // frames added by the construct call.\n try {\n Reflect.construct(Fake, []);\n } catch (x) {\n control = x;\n }\n\n Reflect.construct(fn, [], Fake);\n } else {\n try {\n Fake.call();\n } catch (x) {\n control = x;\n }\n\n fn.call(Fake.prototype);\n }\n } else {\n try {\n throw Error();\n } catch (x) {\n control = x;\n }\n\n fn();\n }\n } catch (sample) {\n // This is inlined manually because closure doesn't do it for us.\n if (sample && control && typeof sample.stack === 'string') {\n // This extracts the first frame from the sample that isn't also in the control.\n // Skipping one frame that we assume is the frame that calls the two.\n var sampleLines = sample.stack.split('\\n');\n var controlLines = control.stack.split('\\n');\n var s = sampleLines.length - 1;\n var c = controlLines.length - 1;\n\n while (s >= 1 && c >= 0 && sampleLines[s] !== controlLines[c]) {\n // We expect at least one stack frame to be shared.\n // Typically this will be the root most one. However, stack frames may be\n // cut off due to maximum stack limits. In this case, one maybe cut off\n // earlier than the other. We assume that the sample is longer or the same\n // and there for cut off earlier. So we should find the root most frame in\n // the sample somewhere in the control.\n c--;\n }\n\n for (; s >= 1 && c >= 0; s--, c--) {\n // Next we find the first one that isn't the same which should be the\n // frame that called our sample function and the control.\n if (sampleLines[s] !== controlLines[c]) {\n // In V8, the first line is describing the message but other VMs don't.\n // If we're about to return the first line, and the control is also on the same\n // line, that's a pretty good indicator that our sample threw at same line as\n // the control. I.e. before we entered the sample frame. So we ignore this result.\n // This can happen if you passed a class to function component, or non-function.\n if (s !== 1 || c !== 1) {\n do {\n s--;\n c--; // We may still have similar intermediate frames from the construct call.\n // The next one that isn't the same should be our match though.\n\n if (c < 0 || sampleLines[s] !== controlLines[c]) {\n // V8 adds a \"new\" prefix for native classes. Let's remove it to make it prettier.\n var _frame = '\\n' + sampleLines[s].replace(' at new ', ' at '); // If our component frame is labeled \"<anonymous>\"\n // but we have a user-provided \"displayName\"\n // splice it in to make the stack more readable.\n\n\n if (fn.displayName && _frame.includes('<anonymous>')) {\n _frame = _frame.replace('<anonymous>', fn.displayName);\n }\n\n {\n if (typeof fn === 'function') {\n componentFrameCache.set(fn, _frame);\n }\n } // Return the line we found.\n\n\n return _frame;\n }\n } while (s >= 1 && c >= 0);\n }\n\n break;\n }\n }\n }\n } finally {\n reentry = false;\n\n {\n ReactCurrentDispatcher$1.current = previousDispatcher;\n reenableLogs();\n }\n\n Error.prepareStackTrace = previousPrepareStackTrace;\n } // Fallback to just using the name if we couldn't make it throw.\n\n\n var name = fn ? fn.displayName || fn.name : '';\n var syntheticFrame = name ? describeBuiltInComponentFrame(name) : '';\n\n {\n if (typeof fn === 'function') {\n componentFrameCache.set(fn, syntheticFrame);\n }\n }\n\n return syntheticFrame;\n}\nfunction describeFunctionComponentFrame(fn, source, ownerFn) {\n {\n return describeNativeComponentFrame(fn, false);\n }\n}\n\nfunction shouldConstruct(Component) {\n var prototype = Component.prototype;\n return !!(prototype && prototype.isReactComponent);\n}\n\nfunction describeUnknownElementTypeFrameInDEV(type, source, ownerFn) {\n\n if (type == null) {\n return '';\n }\n\n if (typeof type === 'function') {\n {\n return describeNativeComponentFrame(type, shouldConstruct(type));\n }\n }\n\n if (typeof type === 'string') {\n return describeBuiltInComponentFrame(type);\n }\n\n switch (type) {\n case REACT_SUSPENSE_TYPE:\n return describeBuiltInComponentFrame('Suspense');\n\n case REACT_SUSPENSE_LIST_TYPE:\n return describeBuiltInComponentFrame('SuspenseList');\n }\n\n if (typeof type === 'object') {\n switch (type.$$typeof) {\n case REACT_FORWARD_REF_TYPE:\n return describeFunctionComponentFrame(type.render);\n\n case REACT_MEMO_TYPE:\n // Memo may contain any component type so we recursively resolve it.\n return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn);\n\n case REACT_LAZY_TYPE:\n {\n var lazyComponent = type;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n\n try {\n // Lazy may contain any component type so we recursively resolve it.\n return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn);\n } catch (x) {}\n }\n }\n }\n\n return '';\n}\n\nvar loggedTypeFailures = {};\nvar ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n ReactDebugCurrentFrame$1.setExtraStackFrame(stack);\n } else {\n ReactDebugCurrentFrame$1.setExtraStackFrame(null);\n }\n }\n}\n\nfunction checkPropTypes(typeSpecs, values, location, componentName, element) {\n {\n // $FlowFixMe This is okay but Flow doesn't know it.\n var has = Function.call.bind(hasOwnProperty);\n\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n // eslint-disable-next-line react-internal/prod-error-codes\n var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.');\n err.name = 'Invariant Violation';\n throw err;\n }\n\n error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED');\n } catch (ex) {\n error$1 = ex;\n }\n\n if (error$1 && !(error$1 instanceof Error)) {\n setCurrentlyValidatingElement(element);\n\n error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1);\n\n setCurrentlyValidatingElement(null);\n }\n\n if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error$1.message] = true;\n setCurrentlyValidatingElement(element);\n\n error('Failed %s type: %s', location, error$1.message);\n\n setCurrentlyValidatingElement(null);\n }\n }\n }\n }\n}\n\nfunction setCurrentlyValidatingElement$1(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n setExtraStackFrame(stack);\n } else {\n setExtraStackFrame(null);\n }\n }\n}\n\nvar propTypesMisspellWarningShown;\n\n{\n propTypesMisspellWarningShown = false;\n}\n\nfunction getDeclarationErrorAddendum() {\n if (ReactCurrentOwner.current) {\n var name = getComponentNameFromType(ReactCurrentOwner.current.type);\n\n if (name) {\n return '\\n\\nCheck the render method of `' + name + '`.';\n }\n }\n\n return '';\n}\n\nfunction getSourceInfoErrorAddendum(source) {\n if (source !== undefined) {\n var fileName = source.fileName.replace(/^.*[\\\\\\/]/, '');\n var lineNumber = source.lineNumber;\n return '\\n\\nCheck your code at ' + fileName + ':' + lineNumber + '.';\n }\n\n return '';\n}\n\nfunction getSourceInfoErrorAddendumForProps(elementProps) {\n if (elementProps !== null && elementProps !== undefined) {\n return getSourceInfoErrorAddendum(elementProps.__source);\n }\n\n return '';\n}\n/**\n * Warn if there's no key explicitly set on dynamic arrays of children or\n * object keys are not valid. This allows us to keep track of children between\n * updates.\n */\n\n\nvar ownerHasKeyUseWarning = {};\n\nfunction getCurrentComponentErrorInfo(parentType) {\n var info = getDeclarationErrorAddendum();\n\n if (!info) {\n var parentName = typeof parentType === 'string' ? parentType : parentType.displayName || parentType.name;\n\n if (parentName) {\n info = \"\\n\\nCheck the top-level render call using <\" + parentName + \">.\";\n }\n }\n\n return info;\n}\n/**\n * Warn if the element doesn't have an explicit key assigned to it.\n * This element is in an array. The array could grow and shrink or be\n * reordered. All children that haven't already been validated are required to\n * have a \"key\" property assigned to it. Error statuses are cached so a warning\n * will only be shown once.\n *\n * @internal\n * @param {ReactElement} element Element that requires a key.\n * @param {*} parentType element's parent's type.\n */\n\n\nfunction validateExplicitKey(element, parentType) {\n if (!element._store || element._store.validated || element.key != null) {\n return;\n }\n\n element._store.validated = true;\n var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType);\n\n if (ownerHasKeyUseWarning[currentComponentErrorInfo]) {\n return;\n }\n\n ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a\n // property, it may be the creator of the child that's responsible for\n // assigning it a key.\n\n var childOwner = '';\n\n if (element && element._owner && element._owner !== ReactCurrentOwner.current) {\n // Give the component that originally created this child.\n childOwner = \" It was passed a child from \" + getComponentNameFromType(element._owner.type) + \".\";\n }\n\n {\n setCurrentlyValidatingElement$1(element);\n\n error('Each child in a list should have a unique \"key\" prop.' + '%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner);\n\n setCurrentlyValidatingElement$1(null);\n }\n}\n/**\n * Ensure that every element either is passed in a static location, in an\n * array with an explicit keys property defined, or in an object literal\n * with valid key property.\n *\n * @internal\n * @param {ReactNode} node Statically passed child of any type.\n * @param {*} parentType node's parent's type.\n */\n\n\nfunction validateChildKeys(node, parentType) {\n if (typeof node !== 'object') {\n return;\n }\n\n if (isArray(node)) {\n for (var i = 0; i < node.length; i++) {\n var child = node[i];\n\n if (isValidElement(child)) {\n validateExplicitKey(child, parentType);\n }\n }\n } else if (isValidElement(node)) {\n // This element was passed in a valid location.\n if (node._store) {\n node._store.validated = true;\n }\n } else if (node) {\n var iteratorFn = getIteratorFn(node);\n\n if (typeof iteratorFn === 'function') {\n // Entry iterators used to provide implicit keys,\n // but now we print a separate warning for them later.\n if (iteratorFn !== node.entries) {\n var iterator = iteratorFn.call(node);\n var step;\n\n while (!(step = iterator.next()).done) {\n if (isValidElement(step.value)) {\n validateExplicitKey(step.value, parentType);\n }\n }\n }\n }\n }\n}\n/**\n * Given an element, validate that its props follow the propTypes definition,\n * provided by the type.\n *\n * @param {ReactElement} element\n */\n\n\nfunction validatePropTypes(element) {\n {\n var type = element.type;\n\n if (type === null || type === undefined || typeof type === 'string') {\n return;\n }\n\n var propTypes;\n\n if (typeof type === 'function') {\n propTypes = type.propTypes;\n } else if (typeof type === 'object' && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here.\n // Inner props are checked in the reconciler.\n type.$$typeof === REACT_MEMO_TYPE)) {\n propTypes = type.propTypes;\n } else {\n return;\n }\n\n if (propTypes) {\n // Intentionally inside to avoid triggering lazy initializers:\n var name = getComponentNameFromType(type);\n checkPropTypes(propTypes, element.props, 'prop', name, element);\n } else if (type.PropTypes !== undefined && !propTypesMisspellWarningShown) {\n propTypesMisspellWarningShown = true; // Intentionally inside to avoid triggering lazy initializers:\n\n var _name = getComponentNameFromType(type);\n\n error('Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?', _name || 'Unknown');\n }\n\n if (typeof type.getDefaultProps === 'function' && !type.getDefaultProps.isReactClassApproved) {\n error('getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.');\n }\n }\n}\n/**\n * Given a fragment, validate that it can only be provided with fragment props\n * @param {ReactElement} fragment\n */\n\n\nfunction validateFragmentProps(fragment) {\n {\n var keys = Object.keys(fragment.props);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n\n if (key !== 'children' && key !== 'key') {\n setCurrentlyValidatingElement$1(fragment);\n\n error('Invalid prop `%s` supplied to `React.Fragment`. ' + 'React.Fragment can only have `key` and `children` props.', key);\n\n setCurrentlyValidatingElement$1(null);\n break;\n }\n }\n\n if (fragment.ref !== null) {\n setCurrentlyValidatingElement$1(fragment);\n\n error('Invalid attribute `ref` supplied to `React.Fragment`.');\n\n setCurrentlyValidatingElement$1(null);\n }\n }\n}\nfunction createElementWithValidation(type, props, children) {\n var validType = isValidElementType(type); // We warn in this case but don't throw. We expect the element creation to\n // succeed and there will likely be errors in render.\n\n if (!validType) {\n var info = '';\n\n if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) {\n info += ' You likely forgot to export your component from the file ' + \"it's defined in, or you might have mixed up default and named imports.\";\n }\n\n var sourceInfo = getSourceInfoErrorAddendumForProps(props);\n\n if (sourceInfo) {\n info += sourceInfo;\n } else {\n info += getDeclarationErrorAddendum();\n }\n\n var typeString;\n\n if (type === null) {\n typeString = 'null';\n } else if (isArray(type)) {\n typeString = 'array';\n } else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) {\n typeString = \"<\" + (getComponentNameFromType(type.type) || 'Unknown') + \" />\";\n info = ' Did you accidentally export a JSX literal instead of a component?';\n } else {\n typeString = typeof type;\n }\n\n {\n error('React.createElement: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info);\n }\n }\n\n var element = createElement.apply(this, arguments); // The result can be nullish if a mock or a custom function is used.\n // TODO: Drop this when these are no longer allowed as the type argument.\n\n if (element == null) {\n return element;\n } // Skip key warning if the type isn't valid since our key validation logic\n // doesn't expect a non-string/function type and can throw confusing errors.\n // We don't want exception behavior to differ between dev and prod.\n // (Rendering will throw with a helpful message and as soon as the type is\n // fixed, the key warnings will appear.)\n\n\n if (validType) {\n for (var i = 2; i < arguments.length; i++) {\n validateChildKeys(arguments[i], type);\n }\n }\n\n if (type === REACT_FRAGMENT_TYPE) {\n validateFragmentProps(element);\n } else {\n validatePropTypes(element);\n }\n\n return element;\n}\nvar didWarnAboutDeprecatedCreateFactory = false;\nfunction createFactoryWithValidation(type) {\n var validatedFactory = createElementWithValidation.bind(null, type);\n validatedFactory.type = type;\n\n {\n if (!didWarnAboutDeprecatedCreateFactory) {\n didWarnAboutDeprecatedCreateFactory = true;\n\n warn('React.createFactory() is deprecated and will be removed in ' + 'a future major release. Consider using JSX ' + 'or use React.createElement() directly instead.');\n } // Legacy hook: remove it\n\n\n Object.defineProperty(validatedFactory, 'type', {\n enumerable: false,\n get: function () {\n warn('Factory.type is deprecated. Access the class directly ' + 'before passing it to createFactory.');\n\n Object.defineProperty(this, 'type', {\n value: type\n });\n return type;\n }\n });\n }\n\n return validatedFactory;\n}\nfunction cloneElementWithValidation(element, props, children) {\n var newElement = cloneElement.apply(this, arguments);\n\n for (var i = 2; i < arguments.length; i++) {\n validateChildKeys(arguments[i], newElement.type);\n }\n\n validatePropTypes(newElement);\n return newElement;\n}\n\nfunction startTransition(scope, options) {\n var prevTransition = ReactCurrentBatchConfig.transition;\n ReactCurrentBatchConfig.transition = {};\n var currentTransition = ReactCurrentBatchConfig.transition;\n\n {\n ReactCurrentBatchConfig.transition._updatedFibers = new Set();\n }\n\n try {\n scope();\n } finally {\n ReactCurrentBatchConfig.transition = prevTransition;\n\n {\n if (prevTransition === null && currentTransition._updatedFibers) {\n var updatedFibersCount = currentTransition._updatedFibers.size;\n\n if (updatedFibersCount > 10) {\n warn('Detected a large number of updates inside startTransition. ' + 'If this is due to a subscription please re-write it to use React provided hooks. ' + 'Otherwise concurrent mode guarantees are off the table.');\n }\n\n currentTransition._updatedFibers.clear();\n }\n }\n }\n}\n\nvar didWarnAboutMessageChannel = false;\nvar enqueueTaskImpl = null;\nfunction enqueueTask(task) {\n if (enqueueTaskImpl === null) {\n try {\n // read require off the module object to get around the bundlers.\n // we don't want them to detect a require and bundle a Node polyfill.\n var requireString = ('require' + Math.random()).slice(0, 7);\n var nodeRequire = module && module[requireString]; // assuming we're in node, let's try to get node's\n // version of setImmediate, bypassing fake timers if any.\n\n enqueueTaskImpl = nodeRequire.call(module, 'timers').setImmediate;\n } catch (_err) {\n // we're in a browser\n // we can't use regular timers because they may still be faked\n // so we try MessageChannel+postMessage instead\n enqueueTaskImpl = function (callback) {\n {\n if (didWarnAboutMessageChannel === false) {\n didWarnAboutMessageChannel = true;\n\n if (typeof MessageChannel === 'undefined') {\n error('This browser does not have a MessageChannel implementation, ' + 'so enqueuing tasks via await act(async () => ...) will fail. ' + 'Please file an issue at https://github.com/facebook/react/issues ' + 'if you encounter this warning.');\n }\n }\n }\n\n var channel = new MessageChannel();\n channel.port1.onmessage = callback;\n channel.port2.postMessage(undefined);\n };\n }\n }\n\n return enqueueTaskImpl(task);\n}\n\nvar actScopeDepth = 0;\nvar didWarnNoAwaitAct = false;\nfunction act(callback) {\n {\n // `act` calls can be nested, so we track the depth. This represents the\n // number of `act` scopes on the stack.\n var prevActScopeDepth = actScopeDepth;\n actScopeDepth++;\n\n if (ReactCurrentActQueue.current === null) {\n // This is the outermost `act` scope. Initialize the queue. The reconciler\n // will detect the queue and use it instead of Scheduler.\n ReactCurrentActQueue.current = [];\n }\n\n var prevIsBatchingLegacy = ReactCurrentActQueue.isBatchingLegacy;\n var result;\n\n try {\n // Used to reproduce behavior of `batchedUpdates` in legacy mode. Only\n // set to `true` while the given callback is executed, not for updates\n // triggered during an async event, because this is how the legacy\n // implementation of `act` behaved.\n ReactCurrentActQueue.isBatchingLegacy = true;\n result = callback(); // Replicate behavior of original `act` implementation in legacy mode,\n // which flushed updates immediately after the scope function exits, even\n // if it's an async function.\n\n if (!prevIsBatchingLegacy && ReactCurrentActQueue.didScheduleLegacyUpdate) {\n var queue = ReactCurrentActQueue.current;\n\n if (queue !== null) {\n ReactCurrentActQueue.didScheduleLegacyUpdate = false;\n flushActQueue(queue);\n }\n }\n } catch (error) {\n popActScope(prevActScopeDepth);\n throw error;\n } finally {\n ReactCurrentActQueue.isBatchingLegacy = prevIsBatchingLegacy;\n }\n\n if (result !== null && typeof result === 'object' && typeof result.then === 'function') {\n var thenableResult = result; // The callback is an async function (i.e. returned a promise). Wait\n // for it to resolve before exiting the current scope.\n\n var wasAwaited = false;\n var thenable = {\n then: function (resolve, reject) {\n wasAwaited = true;\n thenableResult.then(function (returnValue) {\n popActScope(prevActScopeDepth);\n\n if (actScopeDepth === 0) {\n // We've exited the outermost act scope. Recursively flush the\n // queue until there's no remaining work.\n recursivelyFlushAsyncActWork(returnValue, resolve, reject);\n } else {\n resolve(returnValue);\n }\n }, function (error) {\n // The callback threw an error.\n popActScope(prevActScopeDepth);\n reject(error);\n });\n }\n };\n\n {\n if (!didWarnNoAwaitAct && typeof Promise !== 'undefined') {\n // eslint-disable-next-line no-undef\n Promise.resolve().then(function () {}).then(function () {\n if (!wasAwaited) {\n didWarnNoAwaitAct = true;\n\n error('You called act(async () => ...) without await. ' + 'This could lead to unexpected testing behaviour, ' + 'interleaving multiple act calls and mixing their ' + 'scopes. ' + 'You should - await act(async () => ...);');\n }\n });\n }\n }\n\n return thenable;\n } else {\n var returnValue = result; // The callback is not an async function. Exit the current scope\n // immediately, without awaiting.\n\n popActScope(prevActScopeDepth);\n\n if (actScopeDepth === 0) {\n // Exiting the outermost act scope. Flush the queue.\n var _queue = ReactCurrentActQueue.current;\n\n if (_queue !== null) {\n flushActQueue(_queue);\n ReactCurrentActQueue.current = null;\n } // Return a thenable. If the user awaits it, we'll flush again in\n // case additional work was scheduled by a microtask.\n\n\n var _thenable = {\n then: function (resolve, reject) {\n // Confirm we haven't re-entered another `act` scope, in case\n // the user does something weird like await the thenable\n // multiple times.\n if (ReactCurrentActQueue.current === null) {\n // Recursively flush the queue until there's no remaining work.\n ReactCurrentActQueue.current = [];\n recursivelyFlushAsyncActWork(returnValue, resolve, reject);\n } else {\n resolve(returnValue);\n }\n }\n };\n return _thenable;\n } else {\n // Since we're inside a nested `act` scope, the returned thenable\n // immediately resolves. The outer scope will flush the queue.\n var _thenable2 = {\n then: function (resolve, reject) {\n resolve(returnValue);\n }\n };\n return _thenable2;\n }\n }\n }\n}\n\nfunction popActScope(prevActScopeDepth) {\n {\n if (prevActScopeDepth !== actScopeDepth - 1) {\n error('You seem to have overlapping act() calls, this is not supported. ' + 'Be sure to await previous act() calls before making a new one. ');\n }\n\n actScopeDepth = prevActScopeDepth;\n }\n}\n\nfunction recursivelyFlushAsyncActWork(returnValue, resolve, reject) {\n {\n var queue = ReactCurrentActQueue.current;\n\n if (queue !== null) {\n try {\n flushActQueue(queue);\n enqueueTask(function () {\n if (queue.length === 0) {\n // No additional work was scheduled. Finish.\n ReactCurrentActQueue.current = null;\n resolve(returnValue);\n } else {\n // Keep flushing work until there's none left.\n recursivelyFlushAsyncActWork(returnValue, resolve, reject);\n }\n });\n } catch (error) {\n reject(error);\n }\n } else {\n resolve(returnValue);\n }\n }\n}\n\nvar isFlushing = false;\n\nfunction flushActQueue(queue) {\n {\n if (!isFlushing) {\n // Prevent re-entrance.\n isFlushing = true;\n var i = 0;\n\n try {\n for (; i < queue.length; i++) {\n var callback = queue[i];\n\n do {\n callback = callback(true);\n } while (callback !== null);\n }\n\n queue.length = 0;\n } catch (error) {\n // If something throws, leave the remaining callbacks on the queue.\n queue = queue.slice(i + 1);\n throw error;\n } finally {\n isFlushing = false;\n }\n }\n }\n}\n\nvar createElement$1 = createElementWithValidation ;\nvar cloneElement$1 = cloneElementWithValidation ;\nvar createFactory = createFactoryWithValidation ;\nvar Children = {\n map: mapChildren,\n forEach: forEachChildren,\n count: countChildren,\n toArray: toArray,\n only: onlyChild\n};\n\nexports.Children = Children;\nexports.Component = Component;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.PureComponent = PureComponent;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = ReactSharedInternals;\nexports.act = act;\nexports.cloneElement = cloneElement$1;\nexports.createContext = createContext;\nexports.createElement = createElement$1;\nexports.createFactory = createFactory;\nexports.createRef = createRef;\nexports.forwardRef = forwardRef;\nexports.isValidElement = isValidElement;\nexports.lazy = lazy;\nexports.memo = memo;\nexports.startTransition = startTransition;\nexports.unstable_act = act;\nexports.useCallback = useCallback;\nexports.useContext = useContext;\nexports.useDebugValue = useDebugValue;\nexports.useDeferredValue = useDeferredValue;\nexports.useEffect = useEffect;\nexports.useId = useId;\nexports.useImperativeHandle = useImperativeHandle;\nexports.useInsertionEffect = useInsertionEffect;\nexports.useLayoutEffect = useLayoutEffect;\nexports.useMemo = useMemo;\nexports.useReducer = useReducer;\nexports.useRef = useRef;\nexports.useState = useState;\nexports.useSyncExternalStore = useSyncExternalStore;\nexports.useTransition = useTransition;\nexports.version = ReactVersion;\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());\n}\n \n })();\n}\n", "'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n", "/**\n * @license React\n * scheduler.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n\n 'use strict';\n\n/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());\n}\n var enableSchedulerDebugging = false;\nvar enableProfiling = false;\nvar frameYieldMs = 5;\n\nfunction push(heap, node) {\n var index = heap.length;\n heap.push(node);\n siftUp(heap, node, index);\n}\nfunction peek(heap) {\n return heap.length === 0 ? null : heap[0];\n}\nfunction pop(heap) {\n if (heap.length === 0) {\n return null;\n }\n\n var first = heap[0];\n var last = heap.pop();\n\n if (last !== first) {\n heap[0] = last;\n siftDown(heap, last, 0);\n }\n\n return first;\n}\n\nfunction siftUp(heap, node, i) {\n var index = i;\n\n while (index > 0) {\n var parentIndex = index - 1 >>> 1;\n var parent = heap[parentIndex];\n\n if (compare(parent, node) > 0) {\n // The parent is larger. Swap positions.\n heap[parentIndex] = node;\n heap[index] = parent;\n index = parentIndex;\n } else {\n // The parent is smaller. Exit.\n return;\n }\n }\n}\n\nfunction siftDown(heap, node, i) {\n var index = i;\n var length = heap.length;\n var halfLength = length >>> 1;\n\n while (index < halfLength) {\n var leftIndex = (index + 1) * 2 - 1;\n var left = heap[leftIndex];\n var rightIndex = leftIndex + 1;\n var right = heap[rightIndex]; // If the left or right node is smaller, swap with the smaller of those.\n\n if (compare(left, node) < 0) {\n if (rightIndex < length && compare(right, left) < 0) {\n heap[index] = right;\n heap[rightIndex] = node;\n index = rightIndex;\n } else {\n heap[index] = left;\n heap[leftIndex] = node;\n index = leftIndex;\n }\n } else if (rightIndex < length && compare(right, node) < 0) {\n heap[index] = right;\n heap[rightIndex] = node;\n index = rightIndex;\n } else {\n // Neither child is smaller. Exit.\n return;\n }\n }\n}\n\nfunction compare(a, b) {\n // Compare sort index first, then task id.\n var diff = a.sortIndex - b.sortIndex;\n return diff !== 0 ? diff : a.id - b.id;\n}\n\n// TODO: Use symbols?\nvar ImmediatePriority = 1;\nvar UserBlockingPriority = 2;\nvar NormalPriority = 3;\nvar LowPriority = 4;\nvar IdlePriority = 5;\n\nfunction markTaskErrored(task, ms) {\n}\n\n/* eslint-disable no-var */\n\nvar hasPerformanceNow = typeof performance === 'object' && typeof performance.now === 'function';\n\nif (hasPerformanceNow) {\n var localPerformance = performance;\n\n exports.unstable_now = function () {\n return localPerformance.now();\n };\n} else {\n var localDate = Date;\n var initialTime = localDate.now();\n\n exports.unstable_now = function () {\n return localDate.now() - initialTime;\n };\n} // Max 31 bit integer. The max integer size in V8 for 32-bit systems.\n// Math.pow(2, 30) - 1\n// 0b111111111111111111111111111111\n\n\nvar maxSigned31BitInt = 1073741823; // Times out immediately\n\nvar IMMEDIATE_PRIORITY_TIMEOUT = -1; // Eventually times out\n\nvar USER_BLOCKING_PRIORITY_TIMEOUT = 250;\nvar NORMAL_PRIORITY_TIMEOUT = 5000;\nvar LOW_PRIORITY_TIMEOUT = 10000; // Never times out\n\nvar IDLE_PRIORITY_TIMEOUT = maxSigned31BitInt; // Tasks are stored on a min heap\n\nvar taskQueue = [];\nvar timerQueue = []; // Incrementing id counter. Used to maintain insertion order.\n\nvar taskIdCounter = 1; // Pausing the scheduler is useful for debugging.\nvar currentTask = null;\nvar currentPriorityLevel = NormalPriority; // This is set while performing work, to prevent re-entrance.\n\nvar isPerformingWork = false;\nvar isHostCallbackScheduled = false;\nvar isHostTimeoutScheduled = false; // Capture local references to native APIs, in case a polyfill overrides them.\n\nvar localSetTimeout = typeof setTimeout === 'function' ? setTimeout : null;\nvar localClearTimeout = typeof clearTimeout === 'function' ? clearTimeout : null;\nvar localSetImmediate = typeof setImmediate !== 'undefined' ? setImmediate : null; // IE and Node.js + jsdom\n\nvar isInputPending = typeof navigator !== 'undefined' && navigator.scheduling !== undefined && navigator.scheduling.isInputPending !== undefined ? navigator.scheduling.isInputPending.bind(navigator.scheduling) : null;\n\nfunction advanceTimers(currentTime) {\n // Check for tasks that are no longer delayed and add them to the queue.\n var timer = peek(timerQueue);\n\n while (timer !== null) {\n if (timer.callback === null) {\n // Timer was cancelled.\n pop(timerQueue);\n } else if (timer.startTime <= currentTime) {\n // Timer fired. Transfer to the task queue.\n pop(timerQueue);\n timer.sortIndex = timer.expirationTime;\n push(taskQueue, timer);\n } else {\n // Remaining timers are pending.\n return;\n }\n\n timer = peek(timerQueue);\n }\n}\n\nfunction handleTimeout(currentTime) {\n isHostTimeoutScheduled = false;\n advanceTimers(currentTime);\n\n if (!isHostCallbackScheduled) {\n if (peek(taskQueue) !== null) {\n isHostCallbackScheduled = true;\n requestHostCallback(flushWork);\n } else {\n var firstTimer = peek(timerQueue);\n\n if (firstTimer !== null) {\n requestHostTimeout(handleTimeout, firstTimer.startTime - currentTime);\n }\n }\n }\n}\n\nfunction flushWork(hasTimeRemaining, initialTime) {\n\n\n isHostCallbackScheduled = false;\n\n if (isHostTimeoutScheduled) {\n // We scheduled a timeout but it's no longer needed. Cancel it.\n isHostTimeoutScheduled = false;\n cancelHostTimeout();\n }\n\n isPerformingWork = true;\n var previousPriorityLevel = currentPriorityLevel;\n\n try {\n if (enableProfiling) {\n try {\n return workLoop(hasTimeRemaining, initialTime);\n } catch (error) {\n if (currentTask !== null) {\n var currentTime = exports.unstable_now();\n markTaskErrored(currentTask, currentTime);\n currentTask.isQueued = false;\n }\n\n throw error;\n }\n } else {\n // No catch in prod code path.\n return workLoop(hasTimeRemaining, initialTime);\n }\n } finally {\n currentTask = null;\n currentPriorityLevel = previousPriorityLevel;\n isPerformingWork = false;\n }\n}\n\nfunction workLoop(hasTimeRemaining, initialTime) {\n var currentTime = initialTime;\n advanceTimers(currentTime);\n currentTask = peek(taskQueue);\n\n while (currentTask !== null && !(enableSchedulerDebugging )) {\n if (currentTask.expirationTime > currentTime && (!hasTimeRemaining || shouldYieldToHost())) {\n // This currentTask hasn't expired, and we've reached the deadline.\n break;\n }\n\n var callback = currentTask.callback;\n\n if (typeof callback === 'function') {\n currentTask.callback = null;\n currentPriorityLevel = currentTask.priorityLevel;\n var didUserCallbackTimeout = currentTask.expirationTime <= currentTime;\n\n var continuationCallback = callback(didUserCallbackTimeout);\n currentTime = exports.unstable_now();\n\n if (typeof continuationCallback === 'function') {\n currentTask.callback = continuationCallback;\n } else {\n\n if (currentTask === peek(taskQueue)) {\n pop(taskQueue);\n }\n }\n\n advanceTimers(currentTime);\n } else {\n pop(taskQueue);\n }\n\n currentTask = peek(taskQueue);\n } // Return whether there's additional work\n\n\n if (currentTask !== null) {\n return true;\n } else {\n var firstTimer = peek(timerQueue);\n\n if (firstTimer !== null) {\n requestHostTimeout(handleTimeout, firstTimer.startTime - currentTime);\n }\n\n return false;\n }\n}\n\nfunction unstable_runWithPriority(priorityLevel, eventHandler) {\n switch (priorityLevel) {\n case ImmediatePriority:\n case UserBlockingPriority:\n case NormalPriority:\n case LowPriority:\n case IdlePriority:\n break;\n\n default:\n priorityLevel = NormalPriority;\n }\n\n var previousPriorityLevel = currentPriorityLevel;\n currentPriorityLevel = priorityLevel;\n\n try {\n return eventHandler();\n } finally {\n currentPriorityLevel = previousPriorityLevel;\n }\n}\n\nfunction unstable_next(eventHandler) {\n var priorityLevel;\n\n switch (currentPriorityLevel) {\n case ImmediatePriority:\n case UserBlockingPriority:\n case NormalPriority:\n // Shift down to normal priority\n priorityLevel = NormalPriority;\n break;\n\n default:\n // Anything lower than normal priority should remain at the current level.\n priorityLevel = currentPriorityLevel;\n break;\n }\n\n var previousPriorityLevel = currentPriorityLevel;\n currentPriorityLevel = priorityLevel;\n\n try {\n return eventHandler();\n } finally {\n currentPriorityLevel = previousPriorityLevel;\n }\n}\n\nfunction unstable_wrapCallback(callback) {\n var parentPriorityLevel = currentPriorityLevel;\n return function () {\n // This is a fork of runWithPriority, inlined for performance.\n var previousPriorityLevel = currentPriorityLevel;\n currentPriorityLevel = parentPriorityLevel;\n\n try {\n return callback.apply(this, arguments);\n } finally {\n currentPriorityLevel = previousPriorityLevel;\n }\n };\n}\n\nfunction unstable_scheduleCallback(priorityLevel, callback, options) {\n var currentTime = exports.unstable_now();\n var startTime;\n\n if (typeof options === 'object' && options !== null) {\n var delay = options.delay;\n\n if (typeof delay === 'number' && delay > 0) {\n startTime = currentTime + delay;\n } else {\n startTime = currentTime;\n }\n } else {\n startTime = currentTime;\n }\n\n var timeout;\n\n switch (priorityLevel) {\n case ImmediatePriority:\n timeout = IMMEDIATE_PRIORITY_TIMEOUT;\n break;\n\n case UserBlockingPriority:\n timeout = USER_BLOCKING_PRIORITY_TIMEOUT;\n break;\n\n case IdlePriority:\n timeout = IDLE_PRIORITY_TIMEOUT;\n break;\n\n case LowPriority:\n timeout = LOW_PRIORITY_TIMEOUT;\n break;\n\n case NormalPriority:\n default:\n timeout = NORMAL_PRIORITY_TIMEOUT;\n break;\n }\n\n var expirationTime = startTime + timeout;\n var newTask = {\n id: taskIdCounter++,\n callback: callback,\n priorityLevel: priorityLevel,\n startTime: startTime,\n expirationTime: expirationTime,\n sortIndex: -1\n };\n\n if (startTime > currentTime) {\n // This is a delayed task.\n newTask.sortIndex = startTime;\n push(timerQueue, newTask);\n\n if (peek(taskQueue) === null && newTask === peek(timerQueue)) {\n // All tasks are delayed, and this is the task with the earliest delay.\n if (isHostTimeoutScheduled) {\n // Cancel an existing timeout.\n cancelHostTimeout();\n } else {\n isHostTimeoutScheduled = true;\n } // Schedule a timeout.\n\n\n requestHostTimeout(handleTimeout, startTime - currentTime);\n }\n } else {\n newTask.sortIndex = expirationTime;\n push(taskQueue, newTask);\n // wait until the next time we yield.\n\n\n if (!isHostCallbackScheduled && !isPerformingWork) {\n isHostCallbackScheduled = true;\n requestHostCallback(flushWork);\n }\n }\n\n return newTask;\n}\n\nfunction unstable_pauseExecution() {\n}\n\nfunction unstable_continueExecution() {\n\n if (!isHostCallbackScheduled && !isPerformingWork) {\n isHostCallbackScheduled = true;\n requestHostCallback(flushWork);\n }\n}\n\nfunction unstable_getFirstCallbackNode() {\n return peek(taskQueue);\n}\n\nfunction unstable_cancelCallback(task) {\n // remove from the queue because you can't remove arbitrary nodes from an\n // array based heap, only the first one.)\n\n\n task.callback = null;\n}\n\nfunction unstable_getCurrentPriorityLevel() {\n return currentPriorityLevel;\n}\n\nvar isMessageLoopRunning = false;\nvar scheduledHostCallback = null;\nvar taskTimeoutID = -1; // Scheduler periodically yields in case there is other work on the main\n// thread, like user events. By default, it yields multiple times per frame.\n// It does not attempt to align with frame boundaries, since most tasks don't\n// need to be frame aligned; for those that do, use requestAnimationFrame.\n\nvar frameInterval = frameYieldMs;\nvar startTime = -1;\n\nfunction shouldYieldToHost() {\n var timeElapsed = exports.unstable_now() - startTime;\n\n if (timeElapsed < frameInterval) {\n // The main thread has only been blocked for a really short amount of time;\n // smaller than a single frame. Don't yield yet.\n return false;\n } // The main thread has been blocked for a non-negligible amount of time. We\n\n\n return true;\n}\n\nfunction requestPaint() {\n\n}\n\nfunction forceFrameRate(fps) {\n if (fps < 0 || fps > 125) {\n // Using console['error'] to evade Babel and ESLint\n console['error']('forceFrameRate takes a positive int between 0 and 125, ' + 'forcing frame rates higher than 125 fps is not supported');\n return;\n }\n\n if (fps > 0) {\n frameInterval = Math.floor(1000 / fps);\n } else {\n // reset the framerate\n frameInterval = frameYieldMs;\n }\n}\n\nvar performWorkUntilDeadline = function () {\n if (scheduledHostCallback !== null) {\n var currentTime = exports.unstable_now(); // Keep track of the start time so we can measure how long the main thread\n // has been blocked.\n\n startTime = currentTime;\n var hasTimeRemaining = true; // If a scheduler task throws, exit the current browser task so the\n // error can be observed.\n //\n // Intentionally not using a try-catch, since that makes some debugging\n // techniques harder. Instead, if `scheduledHostCallback` errors, then\n // `hasMoreWork` will remain true, and we'll continue the work loop.\n\n var hasMoreWork = true;\n\n try {\n hasMoreWork = scheduledHostCallback(hasTimeRemaining, currentTime);\n } finally {\n if (hasMoreWork) {\n // If there's more work, schedule the next message event at the end\n // of the preceding one.\n schedulePerformWorkUntilDeadline();\n } else {\n isMessageLoopRunning = false;\n scheduledHostCallback = null;\n }\n }\n } else {\n isMessageLoopRunning = false;\n } // Yielding to the browser will give it a chance to paint, so we can\n};\n\nvar schedulePerformWorkUntilDeadline;\n\nif (typeof localSetImmediate === 'function') {\n // Node.js and old IE.\n // There's a few reasons for why we prefer setImmediate.\n //\n // Unlike MessageChannel, it doesn't prevent a Node.js process from exiting.\n // (Even though this is a DOM fork of the Scheduler, you could get here\n // with a mix of Node.js 15+, which has a MessageChannel, and jsdom.)\n // https://github.com/facebook/react/issues/20756\n //\n // But also, it runs earlier which is the semantic we want.\n // If other browsers ever implement it, it's better to use it.\n // Although both of these would be inferior to native scheduling.\n schedulePerformWorkUntilDeadline = function () {\n localSetImmediate(performWorkUntilDeadline);\n };\n} else if (typeof MessageChannel !== 'undefined') {\n // DOM and Worker environments.\n // We prefer MessageChannel because of the 4ms setTimeout clamping.\n var channel = new MessageChannel();\n var port = channel.port2;\n channel.port1.onmessage = performWorkUntilDeadline;\n\n schedulePerformWorkUntilDeadline = function () {\n port.postMessage(null);\n };\n} else {\n // We should only fallback here in non-browser environments.\n schedulePerformWorkUntilDeadline = function () {\n localSetTimeout(performWorkUntilDeadline, 0);\n };\n}\n\nfunction requestHostCallback(callback) {\n scheduledHostCallback = callback;\n\n if (!isMessageLoopRunning) {\n isMessageLoopRunning = true;\n schedulePerformWorkUntilDeadline();\n }\n}\n\nfunction requestHostTimeout(callback, ms) {\n taskTimeoutID = localSetTimeout(function () {\n callback(exports.unstable_now());\n }, ms);\n}\n\nfunction cancelHostTimeout() {\n localClearTimeout(taskTimeoutID);\n taskTimeoutID = -1;\n}\n\nvar unstable_requestPaint = requestPaint;\nvar unstable_Profiling = null;\n\nexports.unstable_IdlePriority = IdlePriority;\nexports.unstable_ImmediatePriority = ImmediatePriority;\nexports.unstable_LowPriority = LowPriority;\nexports.unstable_NormalPriority = NormalPriority;\nexports.unstable_Profiling = unstable_Profiling;\nexports.unstable_UserBlockingPriority = UserBlockingPriority;\nexports.unstable_cancelCallback = unstable_cancelCallback;\nexports.unstable_continueExecution = unstable_continueExecution;\nexports.unstable_forceFrameRate = forceFrameRate;\nexports.unstable_getCurrentPriorityLevel = unstable_getCurrentPriorityLevel;\nexports.unstable_getFirstCallbackNode = unstable_getFirstCallbackNode;\nexports.unstable_next = unstable_next;\nexports.unstable_pauseExecution = unstable_pauseExecution;\nexports.unstable_requestPaint = unstable_requestPaint;\nexports.unstable_runWithPriority = unstable_runWithPriority;\nexports.unstable_scheduleCallback = unstable_scheduleCallback;\nexports.unstable_shouldYield = shouldYieldToHost;\nexports.unstable_wrapCallback = unstable_wrapCallback;\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());\n}\n \n })();\n}\n", "'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n", "/**\n * @license React\n * react-dom.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n\n 'use strict';\n\n/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());\n}\n var React = require('react');\nvar Scheduler = require('scheduler');\n\nvar ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n\nvar suppressWarning = false;\nfunction setSuppressWarning(newSuppressWarning) {\n {\n suppressWarning = newSuppressWarning;\n }\n} // In DEV, calls to console.warn and console.error get replaced\n// by calls to these methods by a Babel plugin.\n//\n// In PROD (or in packages without access to React internals),\n// they are left as they are instead.\n\nfunction warn(format) {\n {\n if (!suppressWarning) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n printWarning('warn', format, args);\n }\n }\n}\nfunction error(format) {\n {\n if (!suppressWarning) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n printWarning('error', format, args);\n }\n }\n}\n\nfunction printWarning(level, format, args) {\n // When changing this logic, you might want to also\n // update consoleWithStackDev.www.js as well.\n {\n var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n var stack = ReactDebugCurrentFrame.getStackAddendum();\n\n if (stack !== '') {\n format += '%s';\n args = args.concat([stack]);\n } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n var argsWithFormat = args.map(function (item) {\n return String(item);\n }); // Careful: RN currently depends on this prefix\n\n argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it\n // breaks IE9: https://github.com/facebook/react/issues/13610\n // eslint-disable-next-line react-internal/no-production-logging\n\n Function.prototype.apply.call(console[level], console, argsWithFormat);\n }\n}\n\nvar FunctionComponent = 0;\nvar ClassComponent = 1;\nvar IndeterminateComponent = 2; // Before we know whether it is function or class\n\nvar HostRoot = 3; // Root of a host tree. Could be nested inside another node.\n\nvar HostPortal = 4; // A subtree. Could be an entry point to a different renderer.\n\nvar HostComponent = 5;\nvar HostText = 6;\nvar Fragment = 7;\nvar Mode = 8;\nvar ContextConsumer = 9;\nvar ContextProvider = 10;\nvar ForwardRef = 11;\nvar Profiler = 12;\nvar SuspenseComponent = 13;\nvar MemoComponent = 14;\nvar SimpleMemoComponent = 15;\nvar LazyComponent = 16;\nvar IncompleteClassComponent = 17;\nvar DehydratedFragment = 18;\nvar SuspenseListComponent = 19;\nvar ScopeComponent = 21;\nvar OffscreenComponent = 22;\nvar LegacyHiddenComponent = 23;\nvar CacheComponent = 24;\nvar TracingMarkerComponent = 25;\n\n// -----------------------------------------------------------------------------\n\nvar enableClientRenderFallbackOnTextMismatch = true; // TODO: Need to review this code one more time before landing\n// the react-reconciler package.\n\nvar enableNewReconciler = false; // Support legacy Primer support on internal FB www\n\nvar enableLazyContextPropagation = false; // FB-only usage. The new API has different semantics.\n\nvar enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber\n\nvar enableSuspenseAvoidThisFallback = false; // Enables unstable_avoidThisFallback feature in Fizz\n// React DOM Chopping Block\n//\n// Similar to main Chopping Block but only flags related to React DOM. These are\n// grouped because we will likely batch all of them into a single major release.\n// -----------------------------------------------------------------------------\n// Disable support for comment nodes as React DOM containers. Already disabled\n// in open source, but www codebase still relies on it. Need to remove.\n\nvar disableCommentsAsDOMContainers = true; // Disable javascript: URL strings in href for XSS protection.\n// and client rendering, mostly to allow JSX attributes to apply to the custom\n// element's object properties instead of only HTML attributes.\n// https://github.com/facebook/react/issues/11347\n\nvar enableCustomElementPropertySupport = false; // Disables children for <textarea> elements\nvar warnAboutStringRefs = true; // -----------------------------------------------------------------------------\n// Debugging and DevTools\n// -----------------------------------------------------------------------------\n// Adds user timing marks for e.g. state updates, suspense, and work loop stuff,\n// for an experimental timeline tool.\n\nvar enableSchedulingProfiler = true; // Helps identify side effects in render-phase lifecycle hooks and setState\n\nvar enableProfilerTimer = true; // Record durations for commit and passive effects phases.\n\nvar enableProfilerCommitHooks = true; // Phase param passed to onRender callback differentiates between an \"update\" and a \"cascading-update\".\n\nvar allNativeEvents = new Set();\n/**\n * Mapping from registration name to event name\n */\n\n\nvar registrationNameDependencies = {};\n/**\n * Mapping from lowercase registration names to the properly cased version,\n * used to warn in the case of missing event handlers. Available\n * only in true.\n * @type {Object}\n */\n\nvar possibleRegistrationNames = {} ; // Trust the developer to only use possibleRegistrationNames in true\n\nfunction registerTwoPhaseEvent(registrationName, dependencies) {\n registerDirectEvent(registrationName, dependencies);\n registerDirectEvent(registrationName + 'Capture', dependencies);\n}\nfunction registerDirectEvent(registrationName, dependencies) {\n {\n if (registrationNameDependencies[registrationName]) {\n error('EventRegistry: More than one plugin attempted to publish the same ' + 'registration name, `%s`.', registrationName);\n }\n }\n\n registrationNameDependencies[registrationName] = dependencies;\n\n {\n var lowerCasedName = registrationName.toLowerCase();\n possibleRegistrationNames[lowerCasedName] = registrationName;\n\n if (registrationName === 'onDoubleClick') {\n possibleRegistrationNames.ondblclick = registrationName;\n }\n }\n\n for (var i = 0; i < dependencies.length; i++) {\n allNativeEvents.add(dependencies[i]);\n }\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined');\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/*\n * The `'' + value` pattern (used in in perf-sensitive code) throws for Symbol\n * and Temporal.* types. See https://github.com/facebook/react/pull/22064.\n *\n * The functions in this module will throw an easier-to-understand,\n * easier-to-debug exception with a clear errors message message explaining the\n * problem. (Instead of a confusing exception thrown inside the implementation\n * of the `value` object).\n */\n// $FlowFixMe only called in DEV, so void return is not possible.\nfunction typeName(value) {\n {\n // toStringTag is needed for namespaced types like Temporal.Instant\n var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag;\n var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object';\n return type;\n }\n} // $FlowFixMe only called in DEV, so void return is not possible.\n\n\nfunction willCoercionThrow(value) {\n {\n try {\n testStringCoercion(value);\n return false;\n } catch (e) {\n return true;\n }\n }\n}\n\nfunction testStringCoercion(value) {\n // If you ended up here by following an exception call stack, here's what's\n // happened: you supplied an object or symbol value to React (as a prop, key,\n // DOM attribute, CSS property, string ref, etc.) and when React tried to\n // coerce it to a string using `'' + value`, an exception was thrown.\n //\n // The most common types that will cause this exception are `Symbol` instances\n // and Temporal objects like `Temporal.Instant`. But any object that has a\n // `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this\n // exception. (Library authors do this to prevent users from using built-in\n // numeric operators like `+` or comparison operators like `>=` because custom\n // methods are needed to perform accurate arithmetic or comparison.)\n //\n // To fix the problem, coerce this object or symbol value to a string before\n // passing it to React. The most reliable way is usually `String(value)`.\n //\n // To find which value is throwing, check the browser or debugger console.\n // Before this exception was thrown, there should be `console.error` output\n // that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the\n // problem and how that type was used: key, atrribute, input value prop, etc.\n // In most cases, this console output also shows the component and its\n // ancestor components where the exception happened.\n //\n // eslint-disable-next-line react-internal/safe-string-coercion\n return '' + value;\n}\n\nfunction checkAttributeStringCoercion(value, attributeName) {\n {\n if (willCoercionThrow(value)) {\n error('The provided `%s` attribute is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', attributeName, typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\nfunction checkKeyStringCoercion(value) {\n {\n if (willCoercionThrow(value)) {\n error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\nfunction checkPropStringCoercion(value, propName) {\n {\n if (willCoercionThrow(value)) {\n error('The provided `%s` prop is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', propName, typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\nfunction checkCSSPropertyStringCoercion(value, propName) {\n {\n if (willCoercionThrow(value)) {\n error('The provided `%s` CSS property is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', propName, typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\nfunction checkHtmlStringCoercion(value) {\n {\n if (willCoercionThrow(value)) {\n error('The provided HTML markup uses a value of unsupported type %s.' + ' This value must be coerced to a string before before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\nfunction checkFormFieldValueStringCoercion(value) {\n {\n if (willCoercionThrow(value)) {\n error('Form field values (value, checked, defaultValue, or defaultChecked props)' + ' must be strings, not %s.' + ' This value must be coerced to a string before before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\n\n// A reserved attribute.\n// It is handled by React separately and shouldn't be written to the DOM.\nvar RESERVED = 0; // A simple string attribute.\n// Attributes that aren't in the filter are presumed to have this type.\n\nvar STRING = 1; // A string attribute that accepts booleans in React. In HTML, these are called\n// \"enumerated\" attributes with \"true\" and \"false\" as possible values.\n// When true, it should be set to a \"true\" string.\n// When false, it should be set to a \"false\" string.\n\nvar BOOLEANISH_STRING = 2; // A real boolean attribute.\n// When true, it should be present (set either to an empty string or its name).\n// When false, it should be omitted.\n\nvar BOOLEAN = 3; // An attribute that can be used as a flag as well as with a value.\n// When true, it should be present (set either to an empty string or its name).\n// When false, it should be omitted.\n// For any other value, should be present with that value.\n\nvar OVERLOADED_BOOLEAN = 4; // An attribute that must be numeric or parse as a numeric.\n// When falsy, it should be removed.\n\nvar NUMERIC = 5; // An attribute that must be positive numeric or parse as a positive numeric.\n// When falsy, it should be removed.\n\nvar POSITIVE_NUMERIC = 6;\n\n/* eslint-disable max-len */\nvar ATTRIBUTE_NAME_START_CHAR = \":A-Z_a-z\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\";\n/* eslint-enable max-len */\n\nvar ATTRIBUTE_NAME_CHAR = ATTRIBUTE_NAME_START_CHAR + \"\\\\-.0-9\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040\";\nvar VALID_ATTRIBUTE_NAME_REGEX = new RegExp('^[' + ATTRIBUTE_NAME_START_CHAR + '][' + ATTRIBUTE_NAME_CHAR + ']*$');\nvar illegalAttributeNameCache = {};\nvar validatedAttributeNameCache = {};\nfunction isAttributeNameSafe(attributeName) {\n if (hasOwnProperty.call(validatedAttributeNameCache, attributeName)) {\n return true;\n }\n\n if (hasOwnProperty.call(illegalAttributeNameCache, attributeName)) {\n return false;\n }\n\n if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName)) {\n validatedAttributeNameCache[attributeName] = true;\n return true;\n }\n\n illegalAttributeNameCache[attributeName] = true;\n\n {\n error('Invalid attribute name: `%s`', attributeName);\n }\n\n return false;\n}\nfunction shouldIgnoreAttribute(name, propertyInfo, isCustomComponentTag) {\n if (propertyInfo !== null) {\n return propertyInfo.type === RESERVED;\n }\n\n if (isCustomComponentTag) {\n return false;\n }\n\n if (name.length > 2 && (name[0] === 'o' || name[0] === 'O') && (name[1] === 'n' || name[1] === 'N')) {\n return true;\n }\n\n return false;\n}\nfunction shouldRemoveAttributeWithWarning(name, value, propertyInfo, isCustomComponentTag) {\n if (propertyInfo !== null && propertyInfo.type === RESERVED) {\n return false;\n }\n\n switch (typeof value) {\n case 'function': // $FlowIssue symbol is perfectly valid here\n\n case 'symbol':\n // eslint-disable-line\n return true;\n\n case 'boolean':\n {\n if (isCustomComponentTag) {\n return false;\n }\n\n if (propertyInfo !== null) {\n return !propertyInfo.acceptsBooleans;\n } else {\n var prefix = name.toLowerCase().slice(0, 5);\n return prefix !== 'data-' && prefix !== 'aria-';\n }\n }\n\n default:\n return false;\n }\n}\nfunction shouldRemoveAttribute(name, value, propertyInfo, isCustomComponentTag) {\n if (value === null || typeof value === 'undefined') {\n return true;\n }\n\n if (shouldRemoveAttributeWithWarning(name, value, propertyInfo, isCustomComponentTag)) {\n return true;\n }\n\n if (isCustomComponentTag) {\n\n return false;\n }\n\n if (propertyInfo !== null) {\n\n switch (propertyInfo.type) {\n case BOOLEAN:\n return !value;\n\n case OVERLOADED_BOOLEAN:\n return value === false;\n\n case NUMERIC:\n return isNaN(value);\n\n case POSITIVE_NUMERIC:\n return isNaN(value) || value < 1;\n }\n }\n\n return false;\n}\nfunction getPropertyInfo(name) {\n return properties.hasOwnProperty(name) ? properties[name] : null;\n}\n\nfunction PropertyInfoRecord(name, type, mustUseProperty, attributeName, attributeNamespace, sanitizeURL, removeEmptyString) {\n this.acceptsBooleans = type === BOOLEANISH_STRING || type === BOOLEAN || type === OVERLOADED_BOOLEAN;\n this.attributeName = attributeName;\n this.attributeNamespace = attributeNamespace;\n this.mustUseProperty = mustUseProperty;\n this.propertyName = name;\n this.type = type;\n this.sanitizeURL = sanitizeURL;\n this.removeEmptyString = removeEmptyString;\n} // When adding attributes to this list, be sure to also add them to\n// the `possibleStandardNames` module to ensure casing and incorrect\n// name warnings.\n\n\nvar properties = {}; // These props are reserved by React. They shouldn't be written to the DOM.\n\nvar reservedProps = ['children', 'dangerouslySetInnerHTML', // TODO: This prevents the assignment of defaultValue to regular\n// elements (not just inputs). Now that ReactDOMInput assigns to the\n// defaultValue property -- do we need this?\n'defaultValue', 'defaultChecked', 'innerHTML', 'suppressContentEditableWarning', 'suppressHydrationWarning', 'style'];\n\nreservedProps.forEach(function (name) {\n properties[name] = new PropertyInfoRecord(name, RESERVED, false, // mustUseProperty\n name, // attributeName\n null, // attributeNamespace\n false, // sanitizeURL\n false);\n}); // A few React string attributes have a different name.\n// This is a mapping from React prop names to the attribute names.\n\n[['acceptCharset', 'accept-charset'], ['className', 'class'], ['htmlFor', 'for'], ['httpEquiv', 'http-equiv']].forEach(function (_ref) {\n var name = _ref[0],\n attributeName = _ref[1];\n properties[name] = new PropertyInfoRecord(name, STRING, false, // mustUseProperty\n attributeName, // attributeName\n null, // attributeNamespace\n false, // sanitizeURL\n false);\n}); // These are \"enumerated\" HTML attributes that accept \"true\" and \"false\".\n// In React, we let users pass `true` and `false` even though technically\n// these aren't boolean attributes (they are coerced to strings).\n\n['contentEditable', 'draggable', 'spellCheck', 'value'].forEach(function (name) {\n properties[name] = new PropertyInfoRecord(name, BOOLEANISH_STRING, false, // mustUseProperty\n name.toLowerCase(), // attributeName\n null, // attributeNamespace\n false, // sanitizeURL\n false);\n}); // These are \"enumerated\" SVG attributes that accept \"true\" and \"false\".\n// In React, we let users pass `true` and `false` even though technically\n// these aren't boolean attributes (they are coerced to strings).\n// Since these are SVG attributes, their attribute names are case-sensitive.\n\n['autoReverse', 'externalResourcesRequired', 'focusable', 'preserveAlpha'].forEach(function (name) {\n properties[name] = new PropertyInfoRecord(name, BOOLEANISH_STRING, false, // mustUseProperty\n name, // attributeName\n null, // attributeNamespace\n false, // sanitizeURL\n false);\n}); // These are HTML boolean attributes.\n\n['allowFullScreen', 'async', // Note: there is a special case that prevents it from being written to the DOM\n// on the client side because the browsers are inconsistent. Instead we call focus().\n'autoFocus', 'autoPlay', 'controls', 'default', 'defer', 'disabled', 'disablePictureInPicture', 'disableRemotePlayback', 'formNoValidate', 'hidden', 'loop', 'noModule', 'noValidate', 'open', 'playsInline', 'readOnly', 'required', 'reversed', 'scoped', 'seamless', // Microdata\n'itemScope'].forEach(function (name) {\n properties[name] = new PropertyInfoRecord(name, BOOLEAN, false, // mustUseProperty\n name.toLowerCase(), // attributeName\n null, // attributeNamespace\n false, // sanitizeURL\n false);\n}); // These are the few React props that we set as DOM properties\n// rather than attributes. These are all booleans.\n\n['checked', // Note: `option.selected` is not updated if `select.multiple` is\n// disabled with `removeAttribute`. We have special logic for handling this.\n'multiple', 'muted', 'selected' // NOTE: if you add a camelCased prop to this list,\n// you'll need to set attributeName to name.toLowerCase()\n// instead in the assignment below.\n].forEach(function (name) {\n properties[name] = new PropertyInfoRecord(name, BOOLEAN, true, // mustUseProperty\n name, // attributeName\n null, // attributeNamespace\n false, // sanitizeURL\n false);\n}); // These are HTML attributes that are \"overloaded booleans\": they behave like\n// booleans, but can also accept a string value.\n\n['capture', 'download' // NOTE: if you add a camelCased prop to this list,\n// you'll need to set attributeName to name.toLowerCase()\n// instead in the assignment below.\n].forEach(function (name) {\n properties[name] = new PropertyInfoRecord(name, OVERLOADED_BOOLEAN, false, // mustUseProperty\n name, // attributeName\n null, // attributeNamespace\n false, // sanitizeURL\n false);\n}); // These are HTML attributes that must be positive numbers.\n\n['cols', 'rows', 'size', 'span' // NOTE: if you add a camelCased prop to this list,\n// you'll need to set attributeName to name.toLowerCase()\n// instead in the assignment below.\n].forEach(function (name) {\n properties[name] = new PropertyInfoRecord(name, POSITIVE_NUMERIC, false, // mustUseProperty\n name, // attributeName\n null, // attributeNamespace\n false, // sanitizeURL\n false);\n}); // These are HTML attributes that must be numbers.\n\n['rowSpan', 'start'].forEach(function (name) {\n properties[name] = new PropertyInfoRecord(name, NUMERIC, false, // mustUseProperty\n name.toLowerCase(), // attributeName\n null, // attributeNamespace\n false, // sanitizeURL\n false);\n});\nvar CAMELIZE = /[\\-\\:]([a-z])/g;\n\nvar capitalize = function (token) {\n return token[1].toUpperCase();\n}; // This is a list of all SVG attributes that need special casing, namespacing,\n// or boolean value assignment. Regular attributes that just accept strings\n// and have the same names are omitted, just like in the HTML attribute filter.\n// Some of these attributes can be hard to find. This list was created by\n// scraping the MDN documentation.\n\n\n['accent-height', 'alignment-baseline', 'arabic-form', 'baseline-shift', 'cap-height', 'clip-path', 'clip-rule', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'dominant-baseline', 'enable-background', 'fill-opacity', 'fill-rule', 'flood-color', 'flood-opacity', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'glyph-name', 'glyph-orientation-horizontal', 'glyph-orientation-vertical', 'horiz-adv-x', 'horiz-origin-x', 'image-rendering', 'letter-spacing', 'lighting-color', 'marker-end', 'marker-mid', 'marker-start', 'overline-position', 'overline-thickness', 'paint-order', 'panose-1', 'pointer-events', 'rendering-intent', 'shape-rendering', 'stop-color', 'stop-opacity', 'strikethrough-position', 'strikethrough-thickness', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke-width', 'text-anchor', 'text-decoration', 'text-rendering', 'underline-position', 'underline-thickness', 'unicode-bidi', 'unicode-range', 'units-per-em', 'v-alphabetic', 'v-hanging', 'v-ideographic', 'v-mathematical', 'vector-effect', 'vert-adv-y', 'vert-origin-x', 'vert-origin-y', 'word-spacing', 'writing-mode', 'xmlns:xlink', 'x-height' // NOTE: if you add a camelCased prop to this list,\n// you'll need to set attributeName to name.toLowerCase()\n// instead in the assignment below.\n].forEach(function (attributeName) {\n var name = attributeName.replace(CAMELIZE, capitalize);\n properties[name] = new PropertyInfoRecord(name, STRING, false, // mustUseProperty\n attributeName, null, // attributeNamespace\n false, // sanitizeURL\n false);\n}); // String SVG attributes with the xlink namespace.\n\n['xlink:actuate', 'xlink:arcrole', 'xlink:role', 'xlink:show', 'xlink:title', 'xlink:type' // NOTE: if you add a camelCased prop to this list,\n// you'll need to set attributeName to name.toLowerCase()\n// instead in the assignment below.\n].forEach(function (attributeName) {\n var name = attributeName.replace(CAMELIZE, capitalize);\n properties[name] = new PropertyInfoRecord(name, STRING, false, // mustUseProperty\n attributeName, 'http://www.w3.org/1999/xlink', false, // sanitizeURL\n false);\n}); // String SVG attributes with the xml namespace.\n\n['xml:base', 'xml:lang', 'xml:space' // NOTE: if you add a camelCased prop to this list,\n// you'll need to set attributeName to name.toLowerCase()\n// instead in the assignment below.\n].forEach(function (attributeName) {\n var name = attributeName.replace(CAMELIZE, capitalize);\n properties[name] = new PropertyInfoRecord(name, STRING, false, // mustUseProperty\n attributeName, 'http://www.w3.org/XML/1998/namespace', false, // sanitizeURL\n false);\n}); // These attribute exists both in HTML and SVG.\n// The attribute name is case-sensitive in SVG so we can't just use\n// the React name like we do for attributes that exist only in HTML.\n\n['tabIndex', 'crossOrigin'].forEach(function (attributeName) {\n properties[attributeName] = new PropertyInfoRecord(attributeName, STRING, false, // mustUseProperty\n attributeName.toLowerCase(), // attributeName\n null, // attributeNamespace\n false, // sanitizeURL\n false);\n}); // These attributes accept URLs. These must not allow javascript: URLS.\n// These will also need to accept Trusted Types object in the future.\n\nvar xlinkHref = 'xlinkHref';\nproperties[xlinkHref] = new PropertyInfoRecord('xlinkHref', STRING, false, // mustUseProperty\n'xlink:href', 'http://www.w3.org/1999/xlink', true, // sanitizeURL\nfalse);\n['src', 'href', 'action', 'formAction'].forEach(function (attributeName) {\n properties[attributeName] = new PropertyInfoRecord(attributeName, STRING, false, // mustUseProperty\n attributeName.toLowerCase(), // attributeName\n null, // attributeNamespace\n true, // sanitizeURL\n true);\n});\n\n// and any newline or tab are filtered out as if they're not part of the URL.\n// https://url.spec.whatwg.org/#url-parsing\n// Tab or newline are defined as \\r\\n\\t:\n// https://infra.spec.whatwg.org/#ascii-tab-or-newline\n// A C0 control is a code point in the range \\u0000 NULL to \\u001F\n// INFORMATION SEPARATOR ONE, inclusive:\n// https://infra.spec.whatwg.org/#c0-control-or-space\n\n/* eslint-disable max-len */\n\nvar isJavaScriptProtocol = /^[\\u0000-\\u001F ]*j[\\r\\n\\t]*a[\\r\\n\\t]*v[\\r\\n\\t]*a[\\r\\n\\t]*s[\\r\\n\\t]*c[\\r\\n\\t]*r[\\r\\n\\t]*i[\\r\\n\\t]*p[\\r\\n\\t]*t[\\r\\n\\t]*\\:/i;\nvar didWarn = false;\n\nfunction sanitizeURL(url) {\n {\n if (!didWarn && isJavaScriptProtocol.test(url)) {\n didWarn = true;\n\n error('A future version of React will block javascript: URLs as a security precaution. ' + 'Use event handlers instead if you can. If you need to generate unsafe HTML try ' + 'using dangerouslySetInnerHTML instead. React was passed %s.', JSON.stringify(url));\n }\n }\n}\n\n/**\n * Get the value for a property on a node. Only used in DEV for SSR validation.\n * The \"expected\" argument is used as a hint of what the expected value is.\n * Some properties have multiple equivalent values.\n */\nfunction getValueForProperty(node, name, expected, propertyInfo) {\n {\n if (propertyInfo.mustUseProperty) {\n var propertyName = propertyInfo.propertyName;\n return node[propertyName];\n } else {\n // This check protects multiple uses of `expected`, which is why the\n // react-internal/safe-string-coercion rule is disabled in several spots\n // below.\n {\n checkAttributeStringCoercion(expected, name);\n }\n\n if ( propertyInfo.sanitizeURL) {\n // If we haven't fully disabled javascript: URLs, and if\n // the hydration is successful of a javascript: URL, we\n // still want to warn on the client.\n // eslint-disable-next-line react-internal/safe-string-coercion\n sanitizeURL('' + expected);\n }\n\n var attributeName = propertyInfo.attributeName;\n var stringValue = null;\n\n if (propertyInfo.type === OVERLOADED_BOOLEAN) {\n if (node.hasAttribute(attributeName)) {\n var value = node.getAttribute(attributeName);\n\n if (value === '') {\n return true;\n }\n\n if (shouldRemoveAttribute(name, expected, propertyInfo, false)) {\n return value;\n } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n if (value === '' + expected) {\n return expected;\n }\n\n return value;\n }\n } else if (node.hasAttribute(attributeName)) {\n if (shouldRemoveAttribute(name, expected, propertyInfo, false)) {\n // We had an attribute but shouldn't have had one, so read it\n // for the error message.\n return node.getAttribute(attributeName);\n }\n\n if (propertyInfo.type === BOOLEAN) {\n // If this was a boolean, it doesn't matter what the value is\n // the fact that we have it is the same as the expected.\n return expected;\n } // Even if this property uses a namespace we use getAttribute\n // because we assume its namespaced name is the same as our config.\n // To use getAttributeNS we need the local name which we don't have\n // in our config atm.\n\n\n stringValue = node.getAttribute(attributeName);\n }\n\n if (shouldRemoveAttribute(name, expected, propertyInfo, false)) {\n return stringValue === null ? expected : stringValue; // eslint-disable-next-line react-internal/safe-string-coercion\n } else if (stringValue === '' + expected) {\n return expected;\n } else {\n return stringValue;\n }\n }\n }\n}\n/**\n * Get the value for a attribute on a node. Only used in DEV for SSR validation.\n * The third argument is used as a hint of what the expected value is. Some\n * attributes have multiple equivalent values.\n */\n\nfunction getValueForAttribute(node, name, expected, isCustomComponentTag) {\n {\n if (!isAttributeNameSafe(name)) {\n return;\n }\n\n if (!node.hasAttribute(name)) {\n return expected === undefined ? undefined : null;\n }\n\n var value = node.getAttribute(name);\n\n {\n checkAttributeStringCoercion(expected, name);\n }\n\n if (value === '' + expected) {\n return expected;\n }\n\n return value;\n }\n}\n/**\n * Sets the value for a property on a node.\n *\n * @param {DOMElement} node\n * @param {string} name\n * @param {*} value\n */\n\nfunction setValueForProperty(node, name, value, isCustomComponentTag) {\n var propertyInfo = getPropertyInfo(name);\n\n if (shouldIgnoreAttribute(name, propertyInfo, isCustomComponentTag)) {\n return;\n }\n\n if (shouldRemoveAttribute(name, value, propertyInfo, isCustomComponentTag)) {\n value = null;\n }\n\n\n if (isCustomComponentTag || propertyInfo === null) {\n if (isAttributeNameSafe(name)) {\n var _attributeName = name;\n\n if (value === null) {\n node.removeAttribute(_attributeName);\n } else {\n {\n checkAttributeStringCoercion(value, name);\n }\n\n node.setAttribute(_attributeName, '' + value);\n }\n }\n\n return;\n }\n\n var mustUseProperty = propertyInfo.mustUseProperty;\n\n if (mustUseProperty) {\n var propertyName = propertyInfo.propertyName;\n\n if (value === null) {\n var type = propertyInfo.type;\n node[propertyName] = type === BOOLEAN ? false : '';\n } else {\n // Contrary to `setAttribute`, object properties are properly\n // `toString`ed by IE8/9.\n node[propertyName] = value;\n }\n\n return;\n } // The rest are treated as attributes with special cases.\n\n\n var attributeName = propertyInfo.attributeName,\n attributeNamespace = propertyInfo.attributeNamespace;\n\n if (value === null) {\n node.removeAttribute(attributeName);\n } else {\n var _type = propertyInfo.type;\n var attributeValue;\n\n if (_type === BOOLEAN || _type === OVERLOADED_BOOLEAN && value === true) {\n // If attribute type is boolean, we know for sure it won't be an execution sink\n // and we won't require Trusted Type here.\n attributeValue = '';\n } else {\n // `setAttribute` with objects becomes only `[object]` in IE8/9,\n // ('' + value) makes it output the correct toString()-value.\n {\n {\n checkAttributeStringCoercion(value, attributeName);\n }\n\n attributeValue = '' + value;\n }\n\n if (propertyInfo.sanitizeURL) {\n sanitizeURL(attributeValue.toString());\n }\n }\n\n if (attributeNamespace) {\n node.setAttributeNS(attributeNamespace, attributeName, attributeValue);\n } else {\n node.setAttribute(attributeName, attributeValue);\n }\n }\n}\n\n// ATTENTION\n// When adding new symbols to this file,\n// Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'\n// The Symbol used to tag the ReactElement-like types.\nvar REACT_ELEMENT_TYPE = Symbol.for('react.element');\nvar REACT_PORTAL_TYPE = Symbol.for('react.portal');\nvar REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');\nvar REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');\nvar REACT_PROFILER_TYPE = Symbol.for('react.profiler');\nvar REACT_PROVIDER_TYPE = Symbol.for('react.provider');\nvar REACT_CONTEXT_TYPE = Symbol.for('react.context');\nvar REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');\nvar REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');\nvar REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');\nvar REACT_MEMO_TYPE = Symbol.for('react.memo');\nvar REACT_LAZY_TYPE = Symbol.for('react.lazy');\nvar REACT_SCOPE_TYPE = Symbol.for('react.scope');\nvar REACT_DEBUG_TRACING_MODE_TYPE = Symbol.for('react.debug_trace_mode');\nvar REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');\nvar REACT_LEGACY_HIDDEN_TYPE = Symbol.for('react.legacy_hidden');\nvar REACT_CACHE_TYPE = Symbol.for('react.cache');\nvar REACT_TRACING_MARKER_TYPE = Symbol.for('react.tracing_marker');\nvar MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nvar FAUX_ITERATOR_SYMBOL = '@@iterator';\nfunction getIteratorFn(maybeIterable) {\n if (maybeIterable === null || typeof maybeIterable !== 'object') {\n return null;\n }\n\n var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL];\n\n if (typeof maybeIterator === 'function') {\n return maybeIterator;\n }\n\n return null;\n}\n\nvar assign = Object.assign;\n\n// Helpers to patch console.logs to avoid logging during side-effect free\n// replaying on render function. This currently only patches the object\n// lazily which won't cover if the log function was extracted eagerly.\n// We could also eagerly patch the method.\nvar disabledDepth = 0;\nvar prevLog;\nvar prevInfo;\nvar prevWarn;\nvar prevError;\nvar prevGroup;\nvar prevGroupCollapsed;\nvar prevGroupEnd;\n\nfunction disabledLog() {}\n\ndisabledLog.__reactDisabledLog = true;\nfunction disableLogs() {\n {\n if (disabledDepth === 0) {\n /* eslint-disable react-internal/no-production-logging */\n prevLog = console.log;\n prevInfo = console.info;\n prevWarn = console.warn;\n prevError = console.error;\n prevGroup = console.group;\n prevGroupCollapsed = console.groupCollapsed;\n prevGroupEnd = console.groupEnd; // https://github.com/facebook/react/issues/19099\n\n var props = {\n configurable: true,\n enumerable: true,\n value: disabledLog,\n writable: true\n }; // $FlowFixMe Flow thinks console is immutable.\n\n Object.defineProperties(console, {\n info: props,\n log: props,\n warn: props,\n error: props,\n group: props,\n groupCollapsed: props,\n groupEnd: props\n });\n /* eslint-enable react-internal/no-production-logging */\n }\n\n disabledDepth++;\n }\n}\nfunction reenableLogs() {\n {\n disabledDepth--;\n\n if (disabledDepth === 0) {\n /* eslint-disable react-internal/no-production-logging */\n var props = {\n configurable: true,\n enumerable: true,\n writable: true\n }; // $FlowFixMe Flow thinks console is immutable.\n\n Object.defineProperties(console, {\n log: assign({}, props, {\n value: prevLog\n }),\n info: assign({}, props, {\n value: prevInfo\n }),\n warn: assign({}, props, {\n value: prevWarn\n }),\n error: assign({}, props, {\n value: prevError\n }),\n group: assign({}, props, {\n value: prevGroup\n }),\n groupCollapsed: assign({}, props, {\n value: prevGroupCollapsed\n }),\n groupEnd: assign({}, props, {\n value: prevGroupEnd\n })\n });\n /* eslint-enable react-internal/no-production-logging */\n }\n\n if (disabledDepth < 0) {\n error('disabledDepth fell below zero. ' + 'This is a bug in React. Please file an issue.');\n }\n }\n}\n\nvar ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher;\nvar prefix;\nfunction describeBuiltInComponentFrame(name, source, ownerFn) {\n {\n if (prefix === undefined) {\n // Extract the VM specific prefix used by each line.\n try {\n throw Error();\n } catch (x) {\n var match = x.stack.trim().match(/\\n( *(at )?)/);\n prefix = match && match[1] || '';\n }\n } // We use the prefix to ensure our stacks line up with native stack frames.\n\n\n return '\\n' + prefix + name;\n }\n}\nvar reentry = false;\nvar componentFrameCache;\n\n{\n var PossiblyWeakMap = typeof WeakMap === 'function' ? WeakMap : Map;\n componentFrameCache = new PossiblyWeakMap();\n}\n\nfunction describeNativeComponentFrame(fn, construct) {\n // If something asked for a stack inside a fake render, it should get ignored.\n if ( !fn || reentry) {\n return '';\n }\n\n {\n var frame = componentFrameCache.get(fn);\n\n if (frame !== undefined) {\n return frame;\n }\n }\n\n var control;\n reentry = true;\n var previousPrepareStackTrace = Error.prepareStackTrace; // $FlowFixMe It does accept undefined.\n\n Error.prepareStackTrace = undefined;\n var previousDispatcher;\n\n {\n previousDispatcher = ReactCurrentDispatcher.current; // Set the dispatcher in DEV because this might be call in the render function\n // for warnings.\n\n ReactCurrentDispatcher.current = null;\n disableLogs();\n }\n\n try {\n // This should throw.\n if (construct) {\n // Something should be setting the props in the constructor.\n var Fake = function () {\n throw Error();\n }; // $FlowFixMe\n\n\n Object.defineProperty(Fake.prototype, 'props', {\n set: function () {\n // We use a throwing setter instead of frozen or non-writable props\n // because that won't throw in a non-strict mode function.\n throw Error();\n }\n });\n\n if (typeof Reflect === 'object' && Reflect.construct) {\n // We construct a different control for this case to include any extra\n // frames added by the construct call.\n try {\n Reflect.construct(Fake, []);\n } catch (x) {\n control = x;\n }\n\n Reflect.construct(fn, [], Fake);\n } else {\n try {\n Fake.call();\n } catch (x) {\n control = x;\n }\n\n fn.call(Fake.prototype);\n }\n } else {\n try {\n throw Error();\n } catch (x) {\n control = x;\n }\n\n fn();\n }\n } catch (sample) {\n // This is inlined manually because closure doesn't do it for us.\n if (sample && control && typeof sample.stack === 'string') {\n // This extracts the first frame from the sample that isn't also in the control.\n // Skipping one frame that we assume is the frame that calls the two.\n var sampleLines = sample.stack.split('\\n');\n var controlLines = control.stack.split('\\n');\n var s = sampleLines.length - 1;\n var c = controlLines.length - 1;\n\n while (s >= 1 && c >= 0 && sampleLines[s] !== controlLines[c]) {\n // We expect at least one stack frame to be shared.\n // Typically this will be the root most one. However, stack frames may be\n // cut off due to maximum stack limits. In this case, one maybe cut off\n // earlier than the other. We assume that the sample is longer or the same\n // and there for cut off earlier. So we should find the root most frame in\n // the sample somewhere in the control.\n c--;\n }\n\n for (; s >= 1 && c >= 0; s--, c--) {\n // Next we find the first one that isn't the same which should be the\n // frame that called our sample function and the control.\n if (sampleLines[s] !== controlLines[c]) {\n // In V8, the first line is describing the message but other VMs don't.\n // If we're about to return the first line, and the control is also on the same\n // line, that's a pretty good indicator that our sample threw at same line as\n // the control. I.e. before we entered the sample frame. So we ignore this result.\n // This can happen if you passed a class to function component, or non-function.\n if (s !== 1 || c !== 1) {\n do {\n s--;\n c--; // We may still have similar intermediate frames from the construct call.\n // The next one that isn't the same should be our match though.\n\n if (c < 0 || sampleLines[s] !== controlLines[c]) {\n // V8 adds a \"new\" prefix for native classes. Let's remove it to make it prettier.\n var _frame = '\\n' + sampleLines[s].replace(' at new ', ' at '); // If our component frame is labeled \"<anonymous>\"\n // but we have a user-provided \"displayName\"\n // splice it in to make the stack more readable.\n\n\n if (fn.displayName && _frame.includes('<anonymous>')) {\n _frame = _frame.replace('<anonymous>', fn.displayName);\n }\n\n {\n if (typeof fn === 'function') {\n componentFrameCache.set(fn, _frame);\n }\n } // Return the line we found.\n\n\n return _frame;\n }\n } while (s >= 1 && c >= 0);\n }\n\n break;\n }\n }\n }\n } finally {\n reentry = false;\n\n {\n ReactCurrentDispatcher.current = previousDispatcher;\n reenableLogs();\n }\n\n Error.prepareStackTrace = previousPrepareStackTrace;\n } // Fallback to just using the name if we couldn't make it throw.\n\n\n var name = fn ? fn.displayName || fn.name : '';\n var syntheticFrame = name ? describeBuiltInComponentFrame(name) : '';\n\n {\n if (typeof fn === 'function') {\n componentFrameCache.set(fn, syntheticFrame);\n }\n }\n\n return syntheticFrame;\n}\n\nfunction describeClassComponentFrame(ctor, source, ownerFn) {\n {\n return describeNativeComponentFrame(ctor, true);\n }\n}\nfunction describeFunctionComponentFrame(fn, source, ownerFn) {\n {\n return describeNativeComponentFrame(fn, false);\n }\n}\n\nfunction shouldConstruct(Component) {\n var prototype = Component.prototype;\n return !!(prototype && prototype.isReactComponent);\n}\n\nfunction describeUnknownElementTypeFrameInDEV(type, source, ownerFn) {\n\n if (type == null) {\n return '';\n }\n\n if (typeof type === 'function') {\n {\n return describeNativeComponentFrame(type, shouldConstruct(type));\n }\n }\n\n if (typeof type === 'string') {\n return describeBuiltInComponentFrame(type);\n }\n\n switch (type) {\n case REACT_SUSPENSE_TYPE:\n return describeBuiltInComponentFrame('Suspense');\n\n case REACT_SUSPENSE_LIST_TYPE:\n return describeBuiltInComponentFrame('SuspenseList');\n }\n\n if (typeof type === 'object') {\n switch (type.$$typeof) {\n case REACT_FORWARD_REF_TYPE:\n return describeFunctionComponentFrame(type.render);\n\n case REACT_MEMO_TYPE:\n // Memo may contain any component type so we recursively resolve it.\n return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn);\n\n case REACT_LAZY_TYPE:\n {\n var lazyComponent = type;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n\n try {\n // Lazy may contain any component type so we recursively resolve it.\n return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn);\n } catch (x) {}\n }\n }\n }\n\n return '';\n}\n\nfunction describeFiber(fiber) {\n var owner = fiber._debugOwner ? fiber._debugOwner.type : null ;\n var source = fiber._debugSource ;\n\n switch (fiber.tag) {\n case HostComponent:\n return describeBuiltInComponentFrame(fiber.type);\n\n case LazyComponent:\n return describeBuiltInComponentFrame('Lazy');\n\n case SuspenseComponent:\n return describeBuiltInComponentFrame('Suspense');\n\n case SuspenseListComponent:\n return describeBuiltInComponentFrame('SuspenseList');\n\n case FunctionComponent:\n case IndeterminateComponent:\n case SimpleMemoComponent:\n return describeFunctionComponentFrame(fiber.type);\n\n case ForwardRef:\n return describeFunctionComponentFrame(fiber.type.render);\n\n case ClassComponent:\n return describeClassComponentFrame(fiber.type);\n\n default:\n return '';\n }\n}\n\nfunction getStackByFiberInDevAndProd(workInProgress) {\n try {\n var info = '';\n var node = workInProgress;\n\n do {\n info += describeFiber(node);\n node = node.return;\n } while (node);\n\n return info;\n } catch (x) {\n return '\\nError generating stack: ' + x.message + '\\n' + x.stack;\n }\n}\n\nfunction getWrappedName(outerType, innerType, wrapperName) {\n var displayName = outerType.displayName;\n\n if (displayName) {\n return displayName;\n }\n\n var functionName = innerType.displayName || innerType.name || '';\n return functionName !== '' ? wrapperName + \"(\" + functionName + \")\" : wrapperName;\n} // Keep in sync with react-reconciler/getComponentNameFromFiber\n\n\nfunction getContextName(type) {\n return type.displayName || 'Context';\n} // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead.\n\n\nfunction getComponentNameFromType(type) {\n if (type == null) {\n // Host root, text node or just invalid type.\n return null;\n }\n\n {\n if (typeof type.tag === 'number') {\n error('Received an unexpected object in getComponentNameFromType(). ' + 'This is likely a bug in React. Please file an issue.');\n }\n }\n\n if (typeof type === 'function') {\n return type.displayName || type.name || null;\n }\n\n if (typeof type === 'string') {\n return type;\n }\n\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return 'Fragment';\n\n case REACT_PORTAL_TYPE:\n return 'Portal';\n\n case REACT_PROFILER_TYPE:\n return 'Profiler';\n\n case REACT_STRICT_MODE_TYPE:\n return 'StrictMode';\n\n case REACT_SUSPENSE_TYPE:\n return 'Suspense';\n\n case REACT_SUSPENSE_LIST_TYPE:\n return 'SuspenseList';\n\n }\n\n if (typeof type === 'object') {\n switch (type.$$typeof) {\n case REACT_CONTEXT_TYPE:\n var context = type;\n return getContextName(context) + '.Consumer';\n\n case REACT_PROVIDER_TYPE:\n var provider = type;\n return getContextName(provider._context) + '.Provider';\n\n case REACT_FORWARD_REF_TYPE:\n return getWrappedName(type, type.render, 'ForwardRef');\n\n case REACT_MEMO_TYPE:\n var outerName = type.displayName || null;\n\n if (outerName !== null) {\n return outerName;\n }\n\n return getComponentNameFromType(type.type) || 'Memo';\n\n case REACT_LAZY_TYPE:\n {\n var lazyComponent = type;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n\n try {\n return getComponentNameFromType(init(payload));\n } catch (x) {\n return null;\n }\n }\n\n // eslint-disable-next-line no-fallthrough\n }\n }\n\n return null;\n}\n\nfunction getWrappedName$1(outerType, innerType, wrapperName) {\n var functionName = innerType.displayName || innerType.name || '';\n return outerType.displayName || (functionName !== '' ? wrapperName + \"(\" + functionName + \")\" : wrapperName);\n} // Keep in sync with shared/getComponentNameFromType\n\n\nfunction getContextName$1(type) {\n return type.displayName || 'Context';\n}\n\nfunction getComponentNameFromFiber(fiber) {\n var tag = fiber.tag,\n type = fiber.type;\n\n switch (tag) {\n case CacheComponent:\n return 'Cache';\n\n case ContextConsumer:\n var context = type;\n return getContextName$1(context) + '.Consumer';\n\n case ContextProvider:\n var provider = type;\n return getContextName$1(provider._context) + '.Provider';\n\n case DehydratedFragment:\n return 'DehydratedFragment';\n\n case ForwardRef:\n return getWrappedName$1(type, type.render, 'ForwardRef');\n\n case Fragment:\n return 'Fragment';\n\n case HostComponent:\n // Host component type is the display name (e.g. \"div\", \"View\")\n return type;\n\n case HostPortal:\n return 'Portal';\n\n case HostRoot:\n return 'Root';\n\n case HostText:\n return 'Text';\n\n case LazyComponent:\n // Name comes from the type in this case; we don't have a tag.\n return getComponentNameFromType(type);\n\n case Mode:\n if (type === REACT_STRICT_MODE_TYPE) {\n // Don't be less specific than shared/getComponentNameFromType\n return 'StrictMode';\n }\n\n return 'Mode';\n\n case OffscreenComponent:\n return 'Offscreen';\n\n case Profiler:\n return 'Profiler';\n\n case ScopeComponent:\n return 'Scope';\n\n case SuspenseComponent:\n return 'Suspense';\n\n case SuspenseListComponent:\n return 'SuspenseList';\n\n case TracingMarkerComponent:\n return 'TracingMarker';\n // The display name for this tags come from the user-provided type:\n\n case ClassComponent:\n case FunctionComponent:\n case IncompleteClassComponent:\n case IndeterminateComponent:\n case MemoComponent:\n case SimpleMemoComponent:\n if (typeof type === 'function') {\n return type.displayName || type.name || null;\n }\n\n if (typeof type === 'string') {\n return type;\n }\n\n break;\n\n }\n\n return null;\n}\n\nvar ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\nvar current = null;\nvar isRendering = false;\nfunction getCurrentFiberOwnerNameInDevOrNull() {\n {\n if (current === null) {\n return null;\n }\n\n var owner = current._debugOwner;\n\n if (owner !== null && typeof owner !== 'undefined') {\n return getComponentNameFromFiber(owner);\n }\n }\n\n return null;\n}\n\nfunction getCurrentFiberStackInDev() {\n {\n if (current === null) {\n return '';\n } // Safe because if current fiber exists, we are reconciling,\n // and it is guaranteed to be the work-in-progress version.\n\n\n return getStackByFiberInDevAndProd(current);\n }\n}\n\nfunction resetCurrentFiber() {\n {\n ReactDebugCurrentFrame.getCurrentStack = null;\n current = null;\n isRendering = false;\n }\n}\nfunction setCurrentFiber(fiber) {\n {\n ReactDebugCurrentFrame.getCurrentStack = fiber === null ? null : getCurrentFiberStackInDev;\n current = fiber;\n isRendering = false;\n }\n}\nfunction getCurrentFiber() {\n {\n return current;\n }\n}\nfunction setIsRendering(rendering) {\n {\n isRendering = rendering;\n }\n}\n\n// Flow does not allow string concatenation of most non-string types. To work\n// around this limitation, we use an opaque type that can only be obtained by\n// passing the value through getToStringValue first.\nfunction toString(value) {\n // The coercion safety check is performed in getToStringValue().\n // eslint-disable-next-line react-internal/safe-string-coercion\n return '' + value;\n}\nfunction getToStringValue(value) {\n switch (typeof value) {\n case 'boolean':\n case 'number':\n case 'string':\n case 'undefined':\n return value;\n\n case 'object':\n {\n checkFormFieldValueStringCoercion(value);\n }\n\n return value;\n\n default:\n // function, symbol are assigned as empty strings\n return '';\n }\n}\n\nvar hasReadOnlyValue = {\n button: true,\n checkbox: true,\n image: true,\n hidden: true,\n radio: true,\n reset: true,\n submit: true\n};\nfunction checkControlledValueProps(tagName, props) {\n {\n if (!(hasReadOnlyValue[props.type] || props.onChange || props.onInput || props.readOnly || props.disabled || props.value == null)) {\n error('You provided a `value` prop to a form field without an ' + '`onChange` handler. This will render a read-only field. If ' + 'the field should be mutable use `defaultValue`. Otherwise, ' + 'set either `onChange` or `readOnly`.');\n }\n\n if (!(props.onChange || props.readOnly || props.disabled || props.checked == null)) {\n error('You provided a `checked` prop to a form field without an ' + '`onChange` handler. This will render a read-only field. If ' + 'the field should be mutable use `defaultChecked`. Otherwise, ' + 'set either `onChange` or `readOnly`.');\n }\n }\n}\n\nfunction isCheckable(elem) {\n var type = elem.type;\n var nodeName = elem.nodeName;\n return nodeName && nodeName.toLowerCase() === 'input' && (type === 'checkbox' || type === 'radio');\n}\n\nfunction getTracker(node) {\n return node._valueTracker;\n}\n\nfunction detachTracker(node) {\n node._valueTracker = null;\n}\n\nfunction getValueFromNode(node) {\n var value = '';\n\n if (!node) {\n return value;\n }\n\n if (isCheckable(node)) {\n value = node.checked ? 'true' : 'false';\n } else {\n value = node.value;\n }\n\n return value;\n}\n\nfunction trackValueOnNode(node) {\n var valueField = isCheckable(node) ? 'checked' : 'value';\n var descriptor = Object.getOwnPropertyDescriptor(node.constructor.prototype, valueField);\n\n {\n checkFormFieldValueStringCoercion(node[valueField]);\n }\n\n var currentValue = '' + node[valueField]; // if someone has already defined a value or Safari, then bail\n // and don't track value will cause over reporting of changes,\n // but it's better then a hard failure\n // (needed for certain tests that spyOn input values and Safari)\n\n if (node.hasOwnProperty(valueField) || typeof descriptor === 'undefined' || typeof descriptor.get !== 'function' || typeof descriptor.set !== 'function') {\n return;\n }\n\n var get = descriptor.get,\n set = descriptor.set;\n Object.defineProperty(node, valueField, {\n configurable: true,\n get: function () {\n return get.call(this);\n },\n set: function (value) {\n {\n checkFormFieldValueStringCoercion(value);\n }\n\n currentValue = '' + value;\n set.call(this, value);\n }\n }); // We could've passed this the first time\n // but it triggers a bug in IE11 and Edge 14/15.\n // Calling defineProperty() again should be equivalent.\n // https://github.com/facebook/react/issues/11768\n\n Object.defineProperty(node, valueField, {\n enumerable: descriptor.enumerable\n });\n var tracker = {\n getValue: function () {\n return currentValue;\n },\n setValue: function (value) {\n {\n checkFormFieldValueStringCoercion(value);\n }\n\n currentValue = '' + value;\n },\n stopTracking: function () {\n detachTracker(node);\n delete node[valueField];\n }\n };\n return tracker;\n}\n\nfunction track(node) {\n if (getTracker(node)) {\n return;\n } // TODO: Once it's just Fiber we can move this to node._wrapperState\n\n\n node._valueTracker = trackValueOnNode(node);\n}\nfunction updateValueIfChanged(node) {\n if (!node) {\n return false;\n }\n\n var tracker = getTracker(node); // if there is no tracker at this point it's unlikely\n // that trying again will succeed\n\n if (!tracker) {\n return true;\n }\n\n var lastValue = tracker.getValue();\n var nextValue = getValueFromNode(node);\n\n if (nextValue !== lastValue) {\n tracker.setValue(nextValue);\n return true;\n }\n\n return false;\n}\n\nfunction getActiveElement(doc) {\n doc = doc || (typeof document !== 'undefined' ? document : undefined);\n\n if (typeof doc === 'undefined') {\n return null;\n }\n\n try {\n return doc.activeElement || doc.body;\n } catch (e) {\n return doc.body;\n }\n}\n\nvar didWarnValueDefaultValue = false;\nvar didWarnCheckedDefaultChecked = false;\nvar didWarnControlledToUncontrolled = false;\nvar didWarnUncontrolledToControlled = false;\n\nfunction isControlled(props) {\n var usesChecked = props.type === 'checkbox' || props.type === 'radio';\n return usesChecked ? props.checked != null : props.value != null;\n}\n/**\n * Implements an <input> host component that allows setting these optional\n * props: `checked`, `value`, `defaultChecked`, and `defaultValue`.\n *\n * If `checked` or `value` are not supplied (or null/undefined), user actions\n * that affect the checked state or value will trigger updates to the element.\n *\n * If they are supplied (and not null/undefined), the rendered element will not\n * trigger updates to the element. Instead, the props must change in order for\n * the rendered element to be updated.\n *\n * The rendered element will be initialized as unchecked (or `defaultChecked`)\n * with an empty value (or `defaultValue`).\n *\n * See http://www.w3.org/TR/2012/WD-html5-20121025/the-input-element.html\n */\n\n\nfunction getHostProps(element, props) {\n var node = element;\n var checked = props.checked;\n var hostProps = assign({}, props, {\n defaultChecked: undefined,\n defaultValue: undefined,\n value: undefined,\n checked: checked != null ? checked : node._wrapperState.initialChecked\n });\n return hostProps;\n}\nfunction initWrapperState(element, props) {\n {\n checkControlledValueProps('input', props);\n\n if (props.checked !== undefined && props.defaultChecked !== undefined && !didWarnCheckedDefaultChecked) {\n error('%s contains an input of type %s with both checked and defaultChecked props. ' + 'Input elements must be either controlled or uncontrolled ' + '(specify either the checked prop, or the defaultChecked prop, but not ' + 'both). Decide between using a controlled or uncontrolled input ' + 'element and remove one of these props. More info: ' + 'https://reactjs.org/link/controlled-components', getCurrentFiberOwnerNameInDevOrNull() || 'A component', props.type);\n\n didWarnCheckedDefaultChecked = true;\n }\n\n if (props.value !== undefined && props.defaultValue !== undefined && !didWarnValueDefaultValue) {\n error('%s contains an input of type %s with both value and defaultValue props. ' + 'Input elements must be either controlled or uncontrolled ' + '(specify either the value prop, or the defaultValue prop, but not ' + 'both). Decide between using a controlled or uncontrolled input ' + 'element and remove one of these props. More info: ' + 'https://reactjs.org/link/controlled-components', getCurrentFiberOwnerNameInDevOrNull() || 'A component', props.type);\n\n didWarnValueDefaultValue = true;\n }\n }\n\n var node = element;\n var defaultValue = props.defaultValue == null ? '' : props.defaultValue;\n node._wrapperState = {\n initialChecked: props.checked != null ? props.checked : props.defaultChecked,\n initialValue: getToStringValue(props.value != null ? props.value : defaultValue),\n controlled: isControlled(props)\n };\n}\nfunction updateChecked(element, props) {\n var node = element;\n var checked = props.checked;\n\n if (checked != null) {\n setValueForProperty(node, 'checked', checked, false);\n }\n}\nfunction updateWrapper(element, props) {\n var node = element;\n\n {\n var controlled = isControlled(props);\n\n if (!node._wrapperState.controlled && controlled && !didWarnUncontrolledToControlled) {\n error('A component is changing an uncontrolled input to be controlled. ' + 'This is likely caused by the value changing from undefined to ' + 'a defined value, which should not happen. ' + 'Decide between using a controlled or uncontrolled input ' + 'element for the lifetime of the component. More info: https://reactjs.org/link/controlled-components');\n\n didWarnUncontrolledToControlled = true;\n }\n\n if (node._wrapperState.controlled && !controlled && !didWarnControlledToUncontrolled) {\n error('A component is changing a controlled input to be uncontrolled. ' + 'This is likely caused by the value changing from a defined to ' + 'undefined, which should not happen. ' + 'Decide between using a controlled or uncontrolled input ' + 'element for the lifetime of the component. More info: https://reactjs.org/link/controlled-components');\n\n didWarnControlledToUncontrolled = true;\n }\n }\n\n updateChecked(element, props);\n var value = getToStringValue(props.value);\n var type = props.type;\n\n if (value != null) {\n if (type === 'number') {\n if (value === 0 && node.value === '' || // We explicitly want to coerce to number here if possible.\n // eslint-disable-next-line\n node.value != value) {\n node.value = toString(value);\n }\n } else if (node.value !== toString(value)) {\n node.value = toString(value);\n }\n } else if (type === 'submit' || type === 'reset') {\n // Submit/reset inputs need the attribute removed completely to avoid\n // blank-text buttons.\n node.removeAttribute('value');\n return;\n }\n\n {\n // When syncing the value attribute, the value comes from a cascade of\n // properties:\n // 1. The value React property\n // 2. The defaultValue React property\n // 3. Otherwise there should be no change\n if (props.hasOwnProperty('value')) {\n setDefaultValue(node, props.type, value);\n } else if (props.hasOwnProperty('defaultValue')) {\n setDefaultValue(node, props.type, getToStringValue(props.defaultValue));\n }\n }\n\n {\n // When syncing the checked attribute, it only changes when it needs\n // to be removed, such as transitioning from a checkbox into a text input\n if (props.checked == null && props.defaultChecked != null) {\n node.defaultChecked = !!props.defaultChecked;\n }\n }\n}\nfunction postMountWrapper(element, props, isHydrating) {\n var node = element; // Do not assign value if it is already set. This prevents user text input\n // from being lost during SSR hydration.\n\n if (props.hasOwnProperty('value') || props.hasOwnProperty('defaultValue')) {\n var type = props.type;\n var isButton = type === 'submit' || type === 'reset'; // Avoid setting value attribute on submit/reset inputs as it overrides the\n // default value provided by the browser. See: #12872\n\n if (isButton && (props.value === undefined || props.value === null)) {\n return;\n }\n\n var initialValue = toString(node._wrapperState.initialValue); // Do not assign value if it is already set. This prevents user text input\n // from being lost during SSR hydration.\n\n if (!isHydrating) {\n {\n // When syncing the value attribute, the value property should use\n // the wrapperState._initialValue property. This uses:\n //\n // 1. The value React property when present\n // 2. The defaultValue React property when present\n // 3. An empty string\n if (initialValue !== node.value) {\n node.value = initialValue;\n }\n }\n }\n\n {\n // Otherwise, the value attribute is synchronized to the property,\n // so we assign defaultValue to the same thing as the value property\n // assignment step above.\n node.defaultValue = initialValue;\n }\n } // Normally, we'd just do `node.checked = node.checked` upon initial mount, less this bug\n // this is needed to work around a chrome bug where setting defaultChecked\n // will sometimes influence the value of checked (even after detachment).\n // Reference: https://bugs.chromium.org/p/chromium/issues/detail?id=608416\n // We need to temporarily unset name to avoid disrupting radio button groups.\n\n\n var name = node.name;\n\n if (name !== '') {\n node.name = '';\n }\n\n {\n // When syncing the checked attribute, both the checked property and\n // attribute are assigned at the same time using defaultChecked. This uses:\n //\n // 1. The checked React property when present\n // 2. The defaultChecked React property when present\n // 3. Otherwise, false\n node.defaultChecked = !node.defaultChecked;\n node.defaultChecked = !!node._wrapperState.initialChecked;\n }\n\n if (name !== '') {\n node.name = name;\n }\n}\nfunction restoreControlledState(element, props) {\n var node = element;\n updateWrapper(node, props);\n updateNamedCousins(node, props);\n}\n\nfunction updateNamedCousins(rootNode, props) {\n var name = props.name;\n\n if (props.type === 'radio' && name != null) {\n var queryRoot = rootNode;\n\n while (queryRoot.parentNode) {\n queryRoot = queryRoot.parentNode;\n } // If `rootNode.form` was non-null, then we could try `form.elements`,\n // but that sometimes behaves strangely in IE8. We could also try using\n // `form.getElementsByName`, but that will only return direct children\n // and won't include inputs that use the HTML5 `form=` attribute. Since\n // the input might not even be in a form. It might not even be in the\n // document. Let's just use the local `querySelectorAll` to ensure we don't\n // miss anything.\n\n\n {\n checkAttributeStringCoercion(name, 'name');\n }\n\n var group = queryRoot.querySelectorAll('input[name=' + JSON.stringify('' + name) + '][type=\"radio\"]');\n\n for (var i = 0; i < group.length; i++) {\n var otherNode = group[i];\n\n if (otherNode === rootNode || otherNode.form !== rootNode.form) {\n continue;\n } // This will throw if radio buttons rendered by different copies of React\n // and the same name are rendered into the same form (same as #1939).\n // That's probably okay; we don't support it just as we don't support\n // mixing React radio buttons with non-React ones.\n\n\n var otherProps = getFiberCurrentPropsFromNode(otherNode);\n\n if (!otherProps) {\n throw new Error('ReactDOMInput: Mixing React and non-React radio inputs with the ' + 'same `name` is not supported.');\n } // We need update the tracked value on the named cousin since the value\n // was changed but the input saw no event or value set\n\n\n updateValueIfChanged(otherNode); // If this is a controlled radio button group, forcing the input that\n // was previously checked to update will cause it to be come re-checked\n // as appropriate.\n\n updateWrapper(otherNode, otherProps);\n }\n }\n} // In Chrome, assigning defaultValue to certain input types triggers input validation.\n// For number inputs, the display value loses trailing decimal points. For email inputs,\n// Chrome raises \"The specified value <x> is not a valid email address\".\n//\n// Here we check to see if the defaultValue has actually changed, avoiding these problems\n// when the user is inputting text\n//\n// https://github.com/facebook/react/issues/7253\n\n\nfunction setDefaultValue(node, type, value) {\n if ( // Focused number inputs synchronize on blur. See ChangeEventPlugin.js\n type !== 'number' || getActiveElement(node.ownerDocument) !== node) {\n if (value == null) {\n node.defaultValue = toString(node._wrapperState.initialValue);\n } else if (node.defaultValue !== toString(value)) {\n node.defaultValue = toString(value);\n }\n }\n}\n\nvar didWarnSelectedSetOnOption = false;\nvar didWarnInvalidChild = false;\nvar didWarnInvalidInnerHTML = false;\n/**\n * Implements an <option> host component that warns when `selected` is set.\n */\n\nfunction validateProps(element, props) {\n {\n // If a value is not provided, then the children must be simple.\n if (props.value == null) {\n if (typeof props.children === 'object' && props.children !== null) {\n React.Children.forEach(props.children, function (child) {\n if (child == null) {\n return;\n }\n\n if (typeof child === 'string' || typeof child === 'number') {\n return;\n }\n\n if (!didWarnInvalidChild) {\n didWarnInvalidChild = true;\n\n error('Cannot infer the option value of complex children. ' + 'Pass a `value` prop or use a plain string as children to <option>.');\n }\n });\n } else if (props.dangerouslySetInnerHTML != null) {\n if (!didWarnInvalidInnerHTML) {\n didWarnInvalidInnerHTML = true;\n\n error('Pass a `value` prop if you set dangerouslyInnerHTML so React knows ' + 'which value should be selected.');\n }\n }\n } // TODO: Remove support for `selected` in <option>.\n\n\n if (props.selected != null && !didWarnSelectedSetOnOption) {\n error('Use the `defaultValue` or `value` props on <select> instead of ' + 'setting `selected` on <option>.');\n\n didWarnSelectedSetOnOption = true;\n }\n }\n}\nfunction postMountWrapper$1(element, props) {\n // value=\"\" should make a value attribute (#6219)\n if (props.value != null) {\n element.setAttribute('value', toString(getToStringValue(props.value)));\n }\n}\n\nvar isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare\n\nfunction isArray(a) {\n return isArrayImpl(a);\n}\n\nvar didWarnValueDefaultValue$1;\n\n{\n didWarnValueDefaultValue$1 = false;\n}\n\nfunction getDeclarationErrorAddendum() {\n var ownerName = getCurrentFiberOwnerNameInDevOrNull();\n\n if (ownerName) {\n return '\\n\\nCheck the render method of `' + ownerName + '`.';\n }\n\n return '';\n}\n\nvar valuePropNames = ['value', 'defaultValue'];\n/**\n * Validation function for `value` and `defaultValue`.\n */\n\nfunction checkSelectPropTypes(props) {\n {\n checkControlledValueProps('select', props);\n\n for (var i = 0; i < valuePropNames.length; i++) {\n var propName = valuePropNames[i];\n\n if (props[propName] == null) {\n continue;\n }\n\n var propNameIsArray = isArray(props[propName]);\n\n if (props.multiple && !propNameIsArray) {\n error('The `%s` prop supplied to <select> must be an array if ' + '`multiple` is true.%s', propName, getDeclarationErrorAddendum());\n } else if (!props.multiple && propNameIsArray) {\n error('The `%s` prop supplied to <select> must be a scalar ' + 'value if `multiple` is false.%s', propName, getDeclarationErrorAddendum());\n }\n }\n }\n}\n\nfunction updateOptions(node, multiple, propValue, setDefaultSelected) {\n var options = node.options;\n\n if (multiple) {\n var selectedValues = propValue;\n var selectedValue = {};\n\n for (var i = 0; i < selectedValues.length; i++) {\n // Prefix to avoid chaos with special keys.\n selectedValue['$' + selectedValues[i]] = true;\n }\n\n for (var _i = 0; _i < options.length; _i++) {\n var selected = selectedValue.hasOwnProperty('$' + options[_i].value);\n\n if (options[_i].selected !== selected) {\n options[_i].selected = selected;\n }\n\n if (selected && setDefaultSelected) {\n options[_i].defaultSelected = true;\n }\n }\n } else {\n // Do not set `select.value` as exact behavior isn't consistent across all\n // browsers for all cases.\n var _selectedValue = toString(getToStringValue(propValue));\n\n var defaultSelected = null;\n\n for (var _i2 = 0; _i2 < options.length; _i2++) {\n if (options[_i2].value === _selectedValue) {\n options[_i2].selected = true;\n\n if (setDefaultSelected) {\n options[_i2].defaultSelected = true;\n }\n\n return;\n }\n\n if (defaultSelected === null && !options[_i2].disabled) {\n defaultSelected = options[_i2];\n }\n }\n\n if (defaultSelected !== null) {\n defaultSelected.selected = true;\n }\n }\n}\n/**\n * Implements a <select> host component that allows optionally setting the\n * props `value` and `defaultValue`. If `multiple` is false, the prop must be a\n * stringable. If `multiple` is true, the prop must be an array of stringables.\n *\n * If `value` is not supplied (or null/undefined), user actions that change the\n * selected option will trigger updates to the rendered options.\n *\n * If it is supplied (and not null/undefined), the rendered options will not\n * update in response to user actions. Instead, the `value` prop must change in\n * order for the rendered options to update.\n *\n * If `defaultValue` is provided, any options with the supplied values will be\n * selected.\n */\n\n\nfunction getHostProps$1(element, props) {\n return assign({}, props, {\n value: undefined\n });\n}\nfunction initWrapperState$1(element, props) {\n var node = element;\n\n {\n checkSelectPropTypes(props);\n }\n\n node._wrapperState = {\n wasMultiple: !!props.multiple\n };\n\n {\n if (props.value !== undefined && props.defaultValue !== undefined && !didWarnValueDefaultValue$1) {\n error('Select elements must be either controlled or uncontrolled ' + '(specify either the value prop, or the defaultValue prop, but not ' + 'both). Decide between using a controlled or uncontrolled select ' + 'element and remove one of these props. More info: ' + 'https://reactjs.org/link/controlled-components');\n\n didWarnValueDefaultValue$1 = true;\n }\n }\n}\nfunction postMountWrapper$2(element, props) {\n var node = element;\n node.multiple = !!props.multiple;\n var value = props.value;\n\n if (value != null) {\n updateOptions(node, !!props.multiple, value, false);\n } else if (props.defaultValue != null) {\n updateOptions(node, !!props.multiple, props.defaultValue, true);\n }\n}\nfunction postUpdateWrapper(element, props) {\n var node = element;\n var wasMultiple = node._wrapperState.wasMultiple;\n node._wrapperState.wasMultiple = !!props.multiple;\n var value = props.value;\n\n if (value != null) {\n updateOptions(node, !!props.multiple, value, false);\n } else if (wasMultiple !== !!props.multiple) {\n // For simplicity, reapply `defaultValue` if `multiple` is toggled.\n if (props.defaultValue != null) {\n updateOptions(node, !!props.multiple, props.defaultValue, true);\n } else {\n // Revert the select back to its default unselected state.\n updateOptions(node, !!props.multiple, props.multiple ? [] : '', false);\n }\n }\n}\nfunction restoreControlledState$1(element, props) {\n var node = element;\n var value = props.value;\n\n if (value != null) {\n updateOptions(node, !!props.multiple, value, false);\n }\n}\n\nvar didWarnValDefaultVal = false;\n\n/**\n * Implements a <textarea> host component that allows setting `value`, and\n * `defaultValue`. This differs from the traditional DOM API because value is\n * usually set as PCDATA children.\n *\n * If `value` is not supplied (or null/undefined), user actions that affect the\n * value will trigger updates to the element.\n *\n * If `value` is supplied (and not null/undefined), the rendered element will\n * not trigger updates to the element. Instead, the `value` prop must change in\n * order for the rendered element to be updated.\n *\n * The rendered element will be initialized with an empty value, the prop\n * `defaultValue` if specified, or the children content (deprecated).\n */\nfunction getHostProps$2(element, props) {\n var node = element;\n\n if (props.dangerouslySetInnerHTML != null) {\n throw new Error('`dangerouslySetInnerHTML` does not make sense on <textarea>.');\n } // Always set children to the same thing. In IE9, the selection range will\n // get reset if `textContent` is mutated. We could add a check in setTextContent\n // to only set the value if/when the value differs from the node value (which would\n // completely solve this IE9 bug), but Sebastian+Sophie seemed to like this\n // solution. The value can be a boolean or object so that's why it's forced\n // to be a string.\n\n\n var hostProps = assign({}, props, {\n value: undefined,\n defaultValue: undefined,\n children: toString(node._wrapperState.initialValue)\n });\n\n return hostProps;\n}\nfunction initWrapperState$2(element, props) {\n var node = element;\n\n {\n checkControlledValueProps('textarea', props);\n\n if (props.value !== undefined && props.defaultValue !== undefined && !didWarnValDefaultVal) {\n error('%s contains a textarea with both value and defaultValue props. ' + 'Textarea elements must be either controlled or uncontrolled ' + '(specify either the value prop, or the defaultValue prop, but not ' + 'both). Decide between using a controlled or uncontrolled textarea ' + 'and remove one of these props. More info: ' + 'https://reactjs.org/link/controlled-components', getCurrentFiberOwnerNameInDevOrNull() || 'A component');\n\n didWarnValDefaultVal = true;\n }\n }\n\n var initialValue = props.value; // Only bother fetching default value if we're going to use it\n\n if (initialValue == null) {\n var children = props.children,\n defaultValue = props.defaultValue;\n\n if (children != null) {\n {\n error('Use the `defaultValue` or `value` props instead of setting ' + 'children on <textarea>.');\n }\n\n {\n if (defaultValue != null) {\n throw new Error('If you supply `defaultValue` on a <textarea>, do not pass children.');\n }\n\n if (isArray(children)) {\n if (children.length > 1) {\n throw new Error('<textarea> can only have at most one child.');\n }\n\n children = children[0];\n }\n\n defaultValue = children;\n }\n }\n\n if (defaultValue == null) {\n defaultValue = '';\n }\n\n initialValue = defaultValue;\n }\n\n node._wrapperState = {\n initialValue: getToStringValue(initialValue)\n };\n}\nfunction updateWrapper$1(element, props) {\n var node = element;\n var value = getToStringValue(props.value);\n var defaultValue = getToStringValue(props.defaultValue);\n\n if (value != null) {\n // Cast `value` to a string to ensure the value is set correctly. While\n // browsers typically do this as necessary, jsdom doesn't.\n var newValue = toString(value); // To avoid side effects (such as losing text selection), only set value if changed\n\n if (newValue !== node.value) {\n node.value = newValue;\n }\n\n if (props.defaultValue == null && node.defaultValue !== newValue) {\n node.defaultValue = newValue;\n }\n }\n\n if (defaultValue != null) {\n node.defaultValue = toString(defaultValue);\n }\n}\nfunction postMountWrapper$3(element, props) {\n var node = element; // This is in postMount because we need access to the DOM node, which is not\n // available until after the component has mounted.\n\n var textContent = node.textContent; // Only set node.value if textContent is equal to the expected\n // initial value. In IE10/IE11 there is a bug where the placeholder attribute\n // will populate textContent as well.\n // https://developer.microsoft.com/microsoft-edge/platform/issues/101525/\n\n if (textContent === node._wrapperState.initialValue) {\n if (textContent !== '' && textContent !== null) {\n node.value = textContent;\n }\n }\n}\nfunction restoreControlledState$2(element, props) {\n // DOM component is still mounted; update\n updateWrapper$1(element, props);\n}\n\nvar HTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';\nvar MATH_NAMESPACE = 'http://www.w3.org/1998/Math/MathML';\nvar SVG_NAMESPACE = 'http://www.w3.org/2000/svg'; // Assumes there is no parent namespace.\n\nfunction getIntrinsicNamespace(type) {\n switch (type) {\n case 'svg':\n return SVG_NAMESPACE;\n\n case 'math':\n return MATH_NAMESPACE;\n\n default:\n return HTML_NAMESPACE;\n }\n}\nfunction getChildNamespace(parentNamespace, type) {\n if (parentNamespace == null || parentNamespace === HTML_NAMESPACE) {\n // No (or default) parent namespace: potential entry point.\n return getIntrinsicNamespace(type);\n }\n\n if (parentNamespace === SVG_NAMESPACE && type === 'foreignObject') {\n // We're leaving SVG.\n return HTML_NAMESPACE;\n } // By default, pass namespace below.\n\n\n return parentNamespace;\n}\n\n/* globals MSApp */\n\n/**\n * Create a function which has 'unsafe' privileges (required by windows8 apps)\n */\nvar createMicrosoftUnsafeLocalFunction = function (func) {\n if (typeof MSApp !== 'undefined' && MSApp.execUnsafeLocalFunction) {\n return function (arg0, arg1, arg2, arg3) {\n MSApp.execUnsafeLocalFunction(function () {\n return func(arg0, arg1, arg2, arg3);\n });\n };\n } else {\n return func;\n }\n};\n\nvar reusableSVGContainer;\n/**\n * Set the innerHTML property of a node\n *\n * @param {DOMElement} node\n * @param {string} html\n * @internal\n */\n\nvar setInnerHTML = createMicrosoftUnsafeLocalFunction(function (node, html) {\n if (node.namespaceURI === SVG_NAMESPACE) {\n\n if (!('innerHTML' in node)) {\n // IE does not have innerHTML for SVG nodes, so instead we inject the\n // new markup in a temp node and then move the child nodes across into\n // the target node\n reusableSVGContainer = reusableSVGContainer || document.createElement('div');\n reusableSVGContainer.innerHTML = '<svg>' + html.valueOf().toString() + '</svg>';\n var svgNode = reusableSVGContainer.firstChild;\n\n while (node.firstChild) {\n node.removeChild(node.firstChild);\n }\n\n while (svgNode.firstChild) {\n node.appendChild(svgNode.firstChild);\n }\n\n return;\n }\n }\n\n node.innerHTML = html;\n});\n\n/**\n * HTML nodeType values that represent the type of the node\n */\nvar ELEMENT_NODE = 1;\nvar TEXT_NODE = 3;\nvar COMMENT_NODE = 8;\nvar DOCUMENT_NODE = 9;\nvar DOCUMENT_FRAGMENT_NODE = 11;\n\n/**\n * Set the textContent property of a node. For text updates, it's faster\n * to set the `nodeValue` of the Text node directly instead of using\n * `.textContent` which will remove the existing node and create a new one.\n *\n * @param {DOMElement} node\n * @param {string} text\n * @internal\n */\n\nvar setTextContent = function (node, text) {\n if (text) {\n var firstChild = node.firstChild;\n\n if (firstChild && firstChild === node.lastChild && firstChild.nodeType === TEXT_NODE) {\n firstChild.nodeValue = text;\n return;\n }\n }\n\n node.textContent = text;\n};\n\n// List derived from Gecko source code:\n// https://github.com/mozilla/gecko-dev/blob/4e638efc71/layout/style/test/property_database.js\nvar shorthandToLonghand = {\n animation: ['animationDelay', 'animationDirection', 'animationDuration', 'animationFillMode', 'animationIterationCount', 'animationName', 'animationPlayState', 'animationTimingFunction'],\n background: ['backgroundAttachment', 'backgroundClip', 'backgroundColor', 'backgroundImage', 'backgroundOrigin', 'backgroundPositionX', 'backgroundPositionY', 'backgroundRepeat', 'backgroundSize'],\n backgroundPosition: ['backgroundPositionX', 'backgroundPositionY'],\n border: ['borderBottomColor', 'borderBottomStyle', 'borderBottomWidth', 'borderImageOutset', 'borderImageRepeat', 'borderImageSlice', 'borderImageSource', 'borderImageWidth', 'borderLeftColor', 'borderLeftStyle', 'borderLeftWidth', 'borderRightColor', 'borderRightStyle', 'borderRightWidth', 'borderTopColor', 'borderTopStyle', 'borderTopWidth'],\n borderBlockEnd: ['borderBlockEndColor', 'borderBlockEndStyle', 'borderBlockEndWidth'],\n borderBlockStart: ['borderBlockStartColor', 'borderBlockStartStyle', 'borderBlockStartWidth'],\n borderBottom: ['borderBottomColor', 'borderBottomStyle', 'borderBottomWidth'],\n borderColor: ['borderBottomColor', 'borderLeftColor', 'borderRightColor', 'borderTopColor'],\n borderImage: ['borderImageOutset', 'borderImageRepeat', 'borderImageSlice', 'borderImageSource', 'borderImageWidth'],\n borderInlineEnd: ['borderInlineEndColor', 'borderInlineEndStyle', 'borderInlineEndWidth'],\n borderInlineStart: ['borderInlineStartColor', 'borderInlineStartStyle', 'borderInlineStartWidth'],\n borderLeft: ['borderLeftColor', 'borderLeftStyle', 'borderLeftWidth'],\n borderRadius: ['borderBottomLeftRadius', 'borderBottomRightRadius', 'borderTopLeftRadius', 'borderTopRightRadius'],\n borderRight: ['borderRightColor', 'borderRightStyle', 'borderRightWidth'],\n borderStyle: ['borderBottomStyle', 'borderLeftStyle', 'borderRightStyle', 'borderTopStyle'],\n borderTop: ['borderTopColor', 'borderTopStyle', 'borderTopWidth'],\n borderWidth: ['borderBottomWidth', 'borderLeftWidth', 'borderRightWidth', 'borderTopWidth'],\n columnRule: ['columnRuleColor', 'columnRuleStyle', 'columnRuleWidth'],\n columns: ['columnCount', 'columnWidth'],\n flex: ['flexBasis', 'flexGrow', 'flexShrink'],\n flexFlow: ['flexDirection', 'flexWrap'],\n font: ['fontFamily', 'fontFeatureSettings', 'fontKerning', 'fontLanguageOverride', 'fontSize', 'fontSizeAdjust', 'fontStretch', 'fontStyle', 'fontVariant', 'fontVariantAlternates', 'fontVariantCaps', 'fontVariantEastAsian', 'fontVariantLigatures', 'fontVariantNumeric', 'fontVariantPosition', 'fontWeight', 'lineHeight'],\n fontVariant: ['fontVariantAlternates', 'fontVariantCaps', 'fontVariantEastAsian', 'fontVariantLigatures', 'fontVariantNumeric', 'fontVariantPosition'],\n gap: ['columnGap', 'rowGap'],\n grid: ['gridAutoColumns', 'gridAutoFlow', 'gridAutoRows', 'gridTemplateAreas', 'gridTemplateColumns', 'gridTemplateRows'],\n gridArea: ['gridColumnEnd', 'gridColumnStart', 'gridRowEnd', 'gridRowStart'],\n gridColumn: ['gridColumnEnd', 'gridColumnStart'],\n gridColumnGap: ['columnGap'],\n gridGap: ['columnGap', 'rowGap'],\n gridRow: ['gridRowEnd', 'gridRowStart'],\n gridRowGap: ['rowGap'],\n gridTemplate: ['gridTemplateAreas', 'gridTemplateColumns', 'gridTemplateRows'],\n listStyle: ['listStyleImage', 'listStylePosition', 'listStyleType'],\n margin: ['marginBottom', 'marginLeft', 'marginRight', 'marginTop'],\n marker: ['markerEnd', 'markerMid', 'markerStart'],\n mask: ['maskClip', 'maskComposite', 'maskImage', 'maskMode', 'maskOrigin', 'maskPositionX', 'maskPositionY', 'maskRepeat', 'maskSize'],\n maskPosition: ['maskPositionX', 'maskPositionY'],\n outline: ['outlineColor', 'outlineStyle', 'outlineWidth'],\n overflow: ['overflowX', 'overflowY'],\n padding: ['paddingBottom', 'paddingLeft', 'paddingRight', 'paddingTop'],\n placeContent: ['alignContent', 'justifyContent'],\n placeItems: ['alignItems', 'justifyItems'],\n placeSelf: ['alignSelf', 'justifySelf'],\n textDecoration: ['textDecorationColor', 'textDecorationLine', 'textDecorationStyle'],\n textEmphasis: ['textEmphasisColor', 'textEmphasisStyle'],\n transition: ['transitionDelay', 'transitionDuration', 'transitionProperty', 'transitionTimingFunction'],\n wordWrap: ['overflowWrap']\n};\n\n/**\n * CSS properties which accept numbers but are not in units of \"px\".\n */\nvar isUnitlessNumber = {\n animationIterationCount: true,\n aspectRatio: true,\n borderImageOutset: true,\n borderImageSlice: true,\n borderImageWidth: true,\n boxFlex: true,\n boxFlexGroup: true,\n boxOrdinalGroup: true,\n columnCount: true,\n columns: true,\n flex: true,\n flexGrow: true,\n flexPositive: true,\n flexShrink: true,\n flexNegative: true,\n flexOrder: true,\n gridArea: true,\n gridRow: true,\n gridRowEnd: true,\n gridRowSpan: true,\n gridRowStart: true,\n gridColumn: true,\n gridColumnEnd: true,\n gridColumnSpan: true,\n gridColumnStart: true,\n fontWeight: true,\n lineClamp: true,\n lineHeight: true,\n opacity: true,\n order: true,\n orphans: true,\n tabSize: true,\n widows: true,\n zIndex: true,\n zoom: true,\n // SVG-related properties\n fillOpacity: true,\n floodOpacity: true,\n stopOpacity: true,\n strokeDasharray: true,\n strokeDashoffset: true,\n strokeMiterlimit: true,\n strokeOpacity: true,\n strokeWidth: true\n};\n/**\n * @param {string} prefix vendor-specific prefix, eg: Webkit\n * @param {string} key style name, eg: transitionDuration\n * @return {string} style name prefixed with `prefix`, properly camelCased, eg:\n * WebkitTransitionDuration\n */\n\nfunction prefixKey(prefix, key) {\n return prefix + key.charAt(0).toUpperCase() + key.substring(1);\n}\n/**\n * Support style names that may come passed in prefixed by adding permutations\n * of vendor prefixes.\n */\n\n\nvar prefixes = ['Webkit', 'ms', 'Moz', 'O']; // Using Object.keys here, or else the vanilla for-in loop makes IE8 go into an\n// infinite loop, because it iterates over the newly added props too.\n\nObject.keys(isUnitlessNumber).forEach(function (prop) {\n prefixes.forEach(function (prefix) {\n isUnitlessNumber[prefixKey(prefix, prop)] = isUnitlessNumber[prop];\n });\n});\n\n/**\n * Convert a value into the proper css writable value. The style name `name`\n * should be logical (no hyphens), as specified\n * in `CSSProperty.isUnitlessNumber`.\n *\n * @param {string} name CSS property name such as `topMargin`.\n * @param {*} value CSS property value such as `10px`.\n * @return {string} Normalized style value with dimensions applied.\n */\n\nfunction dangerousStyleValue(name, value, isCustomProperty) {\n // Note that we've removed escapeTextForBrowser() calls here since the\n // whole string will be escaped when the attribute is injected into\n // the markup. If you provide unsafe user data here they can inject\n // arbitrary CSS which may be problematic (I couldn't repro this):\n // https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet\n // http://www.thespanner.co.uk/2007/11/26/ultimate-xss-css-injection/\n // This is not an XSS hole but instead a potential CSS injection issue\n // which has lead to a greater discussion about how we're going to\n // trust URLs moving forward. See #2115901\n var isEmpty = value == null || typeof value === 'boolean' || value === '';\n\n if (isEmpty) {\n return '';\n }\n\n if (!isCustomProperty && typeof value === 'number' && value !== 0 && !(isUnitlessNumber.hasOwnProperty(name) && isUnitlessNumber[name])) {\n return value + 'px'; // Presumes implicit 'px' suffix for unitless numbers\n }\n\n {\n checkCSSPropertyStringCoercion(value, name);\n }\n\n return ('' + value).trim();\n}\n\nvar uppercasePattern = /([A-Z])/g;\nvar msPattern = /^ms-/;\n/**\n * Hyphenates a camelcased CSS property name, for example:\n *\n * > hyphenateStyleName('backgroundColor')\n * < \"background-color\"\n * > hyphenateStyleName('MozTransition')\n * < \"-moz-transition\"\n * > hyphenateStyleName('msTransition')\n * < \"-ms-transition\"\n *\n * As Modernizr suggests (http://modernizr.com/docs/#prefixed), an `ms` prefix\n * is converted to `-ms-`.\n */\n\nfunction hyphenateStyleName(name) {\n return name.replace(uppercasePattern, '-$1').toLowerCase().replace(msPattern, '-ms-');\n}\n\nvar warnValidStyle = function () {};\n\n{\n // 'msTransform' is correct, but the other prefixes should be capitalized\n var badVendoredStyleNamePattern = /^(?:webkit|moz|o)[A-Z]/;\n var msPattern$1 = /^-ms-/;\n var hyphenPattern = /-(.)/g; // style values shouldn't contain a semicolon\n\n var badStyleValueWithSemicolonPattern = /;\\s*$/;\n var warnedStyleNames = {};\n var warnedStyleValues = {};\n var warnedForNaNValue = false;\n var warnedForInfinityValue = false;\n\n var camelize = function (string) {\n return string.replace(hyphenPattern, function (_, character) {\n return character.toUpperCase();\n });\n };\n\n var warnHyphenatedStyleName = function (name) {\n if (warnedStyleNames.hasOwnProperty(name) && warnedStyleNames[name]) {\n return;\n }\n\n warnedStyleNames[name] = true;\n\n error('Unsupported style property %s. Did you mean %s?', name, // As Andi Smith suggests\n // (http://www.andismith.com/blog/2012/02/modernizr-prefixed/), an `-ms` prefix\n // is converted to lowercase `ms`.\n camelize(name.replace(msPattern$1, 'ms-')));\n };\n\n var warnBadVendoredStyleName = function (name) {\n if (warnedStyleNames.hasOwnProperty(name) && warnedStyleNames[name]) {\n return;\n }\n\n warnedStyleNames[name] = true;\n\n error('Unsupported vendor-prefixed style property %s. Did you mean %s?', name, name.charAt(0).toUpperCase() + name.slice(1));\n };\n\n var warnStyleValueWithSemicolon = function (name, value) {\n if (warnedStyleValues.hasOwnProperty(value) && warnedStyleValues[value]) {\n return;\n }\n\n warnedStyleValues[value] = true;\n\n error(\"Style property values shouldn't contain a semicolon. \" + 'Try \"%s: %s\" instead.', name, value.replace(badStyleValueWithSemicolonPattern, ''));\n };\n\n var warnStyleValueIsNaN = function (name, value) {\n if (warnedForNaNValue) {\n return;\n }\n\n warnedForNaNValue = true;\n\n error('`NaN` is an invalid value for the `%s` css style property.', name);\n };\n\n var warnStyleValueIsInfinity = function (name, value) {\n if (warnedForInfinityValue) {\n return;\n }\n\n warnedForInfinityValue = true;\n\n error('`Infinity` is an invalid value for the `%s` css style property.', name);\n };\n\n warnValidStyle = function (name, value) {\n if (name.indexOf('-') > -1) {\n warnHyphenatedStyleName(name);\n } else if (badVendoredStyleNamePattern.test(name)) {\n warnBadVendoredStyleName(name);\n } else if (badStyleValueWithSemicolonPattern.test(value)) {\n warnStyleValueWithSemicolon(name, value);\n }\n\n if (typeof value === 'number') {\n if (isNaN(value)) {\n warnStyleValueIsNaN(name, value);\n } else if (!isFinite(value)) {\n warnStyleValueIsInfinity(name, value);\n }\n }\n };\n}\n\nvar warnValidStyle$1 = warnValidStyle;\n\n/**\n * Operations for dealing with CSS properties.\n */\n\n/**\n * This creates a string that is expected to be equivalent to the style\n * attribute generated by server-side rendering. It by-passes warnings and\n * security checks so it's not safe to use this value for anything other than\n * comparison. It is only used in DEV for SSR validation.\n */\n\nfunction createDangerousStringForStyles(styles) {\n {\n var serialized = '';\n var delimiter = '';\n\n for (var styleName in styles) {\n if (!styles.hasOwnProperty(styleName)) {\n continue;\n }\n\n var styleValue = styles[styleName];\n\n if (styleValue != null) {\n var isCustomProperty = styleName.indexOf('--') === 0;\n serialized += delimiter + (isCustomProperty ? styleName : hyphenateStyleName(styleName)) + ':';\n serialized += dangerousStyleValue(styleName, styleValue, isCustomProperty);\n delimiter = ';';\n }\n }\n\n return serialized || null;\n }\n}\n/**\n * Sets the value for multiple styles on a node. If a value is specified as\n * '' (empty string), the corresponding style property will be unset.\n *\n * @param {DOMElement} node\n * @param {object} styles\n */\n\nfunction setValueForStyles(node, styles) {\n var style = node.style;\n\n for (var styleName in styles) {\n if (!styles.hasOwnProperty(styleName)) {\n continue;\n }\n\n var isCustomProperty = styleName.indexOf('--') === 0;\n\n {\n if (!isCustomProperty) {\n warnValidStyle$1(styleName, styles[styleName]);\n }\n }\n\n var styleValue = dangerousStyleValue(styleName, styles[styleName], isCustomProperty);\n\n if (styleName === 'float') {\n styleName = 'cssFloat';\n }\n\n if (isCustomProperty) {\n style.setProperty(styleName, styleValue);\n } else {\n style[styleName] = styleValue;\n }\n }\n}\n\nfunction isValueEmpty(value) {\n return value == null || typeof value === 'boolean' || value === '';\n}\n/**\n * Given {color: 'red', overflow: 'hidden'} returns {\n * color: 'color',\n * overflowX: 'overflow',\n * overflowY: 'overflow',\n * }. This can be read as \"the overflowY property was set by the overflow\n * shorthand\". That is, the values are the property that each was derived from.\n */\n\n\nfunction expandShorthandMap(styles) {\n var expanded = {};\n\n for (var key in styles) {\n var longhands = shorthandToLonghand[key] || [key];\n\n for (var i = 0; i < longhands.length; i++) {\n expanded[longhands[i]] = key;\n }\n }\n\n return expanded;\n}\n/**\n * When mixing shorthand and longhand property names, we warn during updates if\n * we expect an incorrect result to occur. In particular, we warn for:\n *\n * Updating a shorthand property (longhand gets overwritten):\n * {font: 'foo', fontVariant: 'bar'} -> {font: 'baz', fontVariant: 'bar'}\n * becomes .style.font = 'baz'\n * Removing a shorthand property (longhand gets lost too):\n * {font: 'foo', fontVariant: 'bar'} -> {fontVariant: 'bar'}\n * becomes .style.font = ''\n * Removing a longhand property (should revert to shorthand; doesn't):\n * {font: 'foo', fontVariant: 'bar'} -> {font: 'foo'}\n * becomes .style.fontVariant = ''\n */\n\n\nfunction validateShorthandPropertyCollisionInDev(styleUpdates, nextStyles) {\n {\n if (!nextStyles) {\n return;\n }\n\n var expandedUpdates = expandShorthandMap(styleUpdates);\n var expandedStyles = expandShorthandMap(nextStyles);\n var warnedAbout = {};\n\n for (var key in expandedUpdates) {\n var originalKey = expandedUpdates[key];\n var correctOriginalKey = expandedStyles[key];\n\n if (correctOriginalKey && originalKey !== correctOriginalKey) {\n var warningKey = originalKey + ',' + correctOriginalKey;\n\n if (warnedAbout[warningKey]) {\n continue;\n }\n\n warnedAbout[warningKey] = true;\n\n error('%s a style property during rerender (%s) when a ' + 'conflicting property is set (%s) can lead to styling bugs. To ' + \"avoid this, don't mix shorthand and non-shorthand properties \" + 'for the same value; instead, replace the shorthand with ' + 'separate values.', isValueEmpty(styleUpdates[originalKey]) ? 'Removing' : 'Updating', originalKey, correctOriginalKey);\n }\n }\n }\n}\n\n// For HTML, certain tags should omit their close tag. We keep a list for\n// those special-case tags.\nvar omittedCloseTags = {\n area: true,\n base: true,\n br: true,\n col: true,\n embed: true,\n hr: true,\n img: true,\n input: true,\n keygen: true,\n link: true,\n meta: true,\n param: true,\n source: true,\n track: true,\n wbr: true // NOTE: menuitem's close tag should be omitted, but that causes problems.\n\n};\n\n// `omittedCloseTags` except that `menuitem` should still have its closing tag.\n\nvar voidElementTags = assign({\n menuitem: true\n}, omittedCloseTags);\n\nvar HTML = '__html';\n\nfunction assertValidProps(tag, props) {\n if (!props) {\n return;\n } // Note the use of `==` which checks for null or undefined.\n\n\n if (voidElementTags[tag]) {\n if (props.children != null || props.dangerouslySetInnerHTML != null) {\n throw new Error(tag + \" is a void element tag and must neither have `children` nor \" + 'use `dangerouslySetInnerHTML`.');\n }\n }\n\n if (props.dangerouslySetInnerHTML != null) {\n if (props.children != null) {\n throw new Error('Can only set one of `children` or `props.dangerouslySetInnerHTML`.');\n }\n\n if (typeof props.dangerouslySetInnerHTML !== 'object' || !(HTML in props.dangerouslySetInnerHTML)) {\n throw new Error('`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. ' + 'Please visit https://reactjs.org/link/dangerously-set-inner-html ' + 'for more information.');\n }\n }\n\n {\n if (!props.suppressContentEditableWarning && props.contentEditable && props.children != null) {\n error('A component is `contentEditable` and contains `children` managed by ' + 'React. It is now your responsibility to guarantee that none of ' + 'those nodes are unexpectedly modified or duplicated. This is ' + 'probably not intentional.');\n }\n }\n\n if (props.style != null && typeof props.style !== 'object') {\n throw new Error('The `style` prop expects a mapping from style properties to values, ' + \"not a string. For example, style={{marginRight: spacing + 'em'}} when \" + 'using JSX.');\n }\n}\n\nfunction isCustomComponent(tagName, props) {\n if (tagName.indexOf('-') === -1) {\n return typeof props.is === 'string';\n }\n\n switch (tagName) {\n // These are reserved SVG and MathML elements.\n // We don't mind this list too much because we expect it to never grow.\n // The alternative is to track the namespace in a few places which is convoluted.\n // https://w3c.github.io/webcomponents/spec/custom/#custom-elements-core-concepts\n case 'annotation-xml':\n case 'color-profile':\n case 'font-face':\n case 'font-face-src':\n case 'font-face-uri':\n case 'font-face-format':\n case 'font-face-name':\n case 'missing-glyph':\n return false;\n\n default:\n return true;\n }\n}\n\n// When adding attributes to the HTML or SVG allowed attribute list, be sure to\n// also add them to this module to ensure casing and incorrect name\n// warnings.\nvar possibleStandardNames = {\n // HTML\n accept: 'accept',\n acceptcharset: 'acceptCharset',\n 'accept-charset': 'acceptCharset',\n accesskey: 'accessKey',\n action: 'action',\n allowfullscreen: 'allowFullScreen',\n alt: 'alt',\n as: 'as',\n async: 'async',\n autocapitalize: 'autoCapitalize',\n autocomplete: 'autoComplete',\n autocorrect: 'autoCorrect',\n autofocus: 'autoFocus',\n autoplay: 'autoPlay',\n autosave: 'autoSave',\n capture: 'capture',\n cellpadding: 'cellPadding',\n cellspacing: 'cellSpacing',\n challenge: 'challenge',\n charset: 'charSet',\n checked: 'checked',\n children: 'children',\n cite: 'cite',\n class: 'className',\n classid: 'classID',\n classname: 'className',\n cols: 'cols',\n colspan: 'colSpan',\n content: 'content',\n contenteditable: 'contentEditable',\n contextmenu: 'contextMenu',\n controls: 'controls',\n controlslist: 'controlsList',\n coords: 'coords',\n crossorigin: 'crossOrigin',\n dangerouslysetinnerhtml: 'dangerouslySetInnerHTML',\n data: 'data',\n datetime: 'dateTime',\n default: 'default',\n defaultchecked: 'defaultChecked',\n defaultvalue: 'defaultValue',\n defer: 'defer',\n dir: 'dir',\n disabled: 'disabled',\n disablepictureinpicture: 'disablePictureInPicture',\n disableremoteplayback: 'disableRemotePlayback',\n download: 'download',\n draggable: 'draggable',\n enctype: 'encType',\n enterkeyhint: 'enterKeyHint',\n for: 'htmlFor',\n form: 'form',\n formmethod: 'formMethod',\n formaction: 'formAction',\n formenctype: 'formEncType',\n formnovalidate: 'formNoValidate',\n formtarget: 'formTarget',\n frameborder: 'frameBorder',\n headers: 'headers',\n height: 'height',\n hidden: 'hidden',\n high: 'high',\n href: 'href',\n hreflang: 'hrefLang',\n htmlfor: 'htmlFor',\n httpequiv: 'httpEquiv',\n 'http-equiv': 'httpEquiv',\n icon: 'icon',\n id: 'id',\n imagesizes: 'imageSizes',\n imagesrcset: 'imageSrcSet',\n innerhtml: 'innerHTML',\n inputmode: 'inputMode',\n integrity: 'integrity',\n is: 'is',\n itemid: 'itemID',\n itemprop: 'itemProp',\n itemref: 'itemRef',\n itemscope: 'itemScope',\n itemtype: 'itemType',\n keyparams: 'keyParams',\n keytype: 'keyType',\n kind: 'kind',\n label: 'label',\n lang: 'lang',\n list: 'list',\n loop: 'loop',\n low: 'low',\n manifest: 'manifest',\n marginwidth: 'marginWidth',\n marginheight: 'marginHeight',\n max: 'max',\n maxlength: 'maxLength',\n media: 'media',\n mediagroup: 'mediaGroup',\n method: 'method',\n min: 'min',\n minlength: 'minLength',\n multiple: 'multiple',\n muted: 'muted',\n name: 'name',\n nomodule: 'noModule',\n nonce: 'nonce',\n novalidate: 'noValidate',\n open: 'open',\n optimum: 'optimum',\n pattern: 'pattern',\n placeholder: 'placeholder',\n playsinline: 'playsInline',\n poster: 'poster',\n preload: 'preload',\n profile: 'profile',\n radiogroup: 'radioGroup',\n readonly: 'readOnly',\n referrerpolicy: 'referrerPolicy',\n rel: 'rel',\n required: 'required',\n reversed: 'reversed',\n role: 'role',\n rows: 'rows',\n rowspan: 'rowSpan',\n sandbox: 'sandbox',\n scope: 'scope',\n scoped: 'scoped',\n scrolling: 'scrolling',\n seamless: 'seamless',\n selected: 'selected',\n shape: 'shape',\n size: 'size',\n sizes: 'sizes',\n span: 'span',\n spellcheck: 'spellCheck',\n src: 'src',\n srcdoc: 'srcDoc',\n srclang: 'srcLang',\n srcset: 'srcSet',\n start: 'start',\n step: 'step',\n style: 'style',\n summary: 'summary',\n tabindex: 'tabIndex',\n target: 'target',\n title: 'title',\n type: 'type',\n usemap: 'useMap',\n value: 'value',\n width: 'width',\n wmode: 'wmode',\n wrap: 'wrap',\n // SVG\n about: 'about',\n accentheight: 'accentHeight',\n 'accent-height': 'accentHeight',\n accumulate: 'accumulate',\n additive: 'additive',\n alignmentbaseline: 'alignmentBaseline',\n 'alignment-baseline': 'alignmentBaseline',\n allowreorder: 'allowReorder',\n alphabetic: 'alphabetic',\n amplitude: 'amplitude',\n arabicform: 'arabicForm',\n 'arabic-form': 'arabicForm',\n ascent: 'ascent',\n attributename: 'attributeName',\n attributetype: 'attributeType',\n autoreverse: 'autoReverse',\n azimuth: 'azimuth',\n basefrequency: 'baseFrequency',\n baselineshift: 'baselineShift',\n 'baseline-shift': 'baselineShift',\n baseprofile: 'baseProfile',\n bbox: 'bbox',\n begin: 'begin',\n bias: 'bias',\n by: 'by',\n calcmode: 'calcMode',\n capheight: 'capHeight',\n 'cap-height': 'capHeight',\n clip: 'clip',\n clippath: 'clipPath',\n 'clip-path': 'clipPath',\n clippathunits: 'clipPathUnits',\n cliprule: 'clipRule',\n 'clip-rule': 'clipRule',\n color: 'color',\n colorinterpolation: 'colorInterpolation',\n 'color-interpolation': 'colorInterpolation',\n colorinterpolationfilters: 'colorInterpolationFilters',\n 'color-interpolation-filters': 'colorInterpolationFilters',\n colorprofile: 'colorProfile',\n 'color-profile': 'colorProfile',\n colorrendering: 'colorRendering',\n 'color-rendering': 'colorRendering',\n contentscripttype: 'contentScriptType',\n contentstyletype: 'contentStyleType',\n cursor: 'cursor',\n cx: 'cx',\n cy: 'cy',\n d: 'd',\n datatype: 'datatype',\n decelerate: 'decelerate',\n descent: 'descent',\n diffuseconstant: 'diffuseConstant',\n direction: 'direction',\n display: 'display',\n divisor: 'divisor',\n dominantbaseline: 'dominantBaseline',\n 'dominant-baseline': 'dominantBaseline',\n dur: 'dur',\n dx: 'dx',\n dy: 'dy',\n edgemode: 'edgeMode',\n elevation: 'elevation',\n enablebackground: 'enableBackground',\n 'enable-background': 'enableBackground',\n end: 'end',\n exponent: 'exponent',\n externalresourcesrequired: 'externalResourcesRequired',\n fill: 'fill',\n fillopacity: 'fillOpacity',\n 'fill-opacity': 'fillOpacity',\n fillrule: 'fillRule',\n 'fill-rule': 'fillRule',\n filter: 'filter',\n filterres: 'filterRes',\n filterunits: 'filterUnits',\n floodopacity: 'floodOpacity',\n 'flood-opacity': 'floodOpacity',\n floodcolor: 'floodColor',\n 'flood-color': 'floodColor',\n focusable: 'focusable',\n fontfamily: 'fontFamily',\n 'font-family': 'fontFamily',\n fontsize: 'fontSize',\n 'font-size': 'fontSize',\n fontsizeadjust: 'fontSizeAdjust',\n 'font-size-adjust': 'fontSizeAdjust',\n fontstretch: 'fontStretch',\n 'font-stretch': 'fontStretch',\n fontstyle: 'fontStyle',\n 'font-style': 'fontStyle',\n fontvariant: 'fontVariant',\n 'font-variant': 'fontVariant',\n fontweight: 'fontWeight',\n 'font-weight': 'fontWeight',\n format: 'format',\n from: 'from',\n fx: 'fx',\n fy: 'fy',\n g1: 'g1',\n g2: 'g2',\n glyphname: 'glyphName',\n 'glyph-name': 'glyphName',\n glyphorientationhorizontal: 'glyphOrientationHorizontal',\n 'glyph-orientation-horizontal': 'glyphOrientationHorizontal',\n glyphorientationvertical: 'glyphOrientationVertical',\n 'glyph-orientation-vertical': 'glyphOrientationVertical',\n glyphref: 'glyphRef',\n gradienttransform: 'gradientTransform',\n gradientunits: 'gradientUnits',\n hanging: 'hanging',\n horizadvx: 'horizAdvX',\n 'horiz-adv-x': 'horizAdvX',\n horizoriginx: 'horizOriginX',\n 'horiz-origin-x': 'horizOriginX',\n ideographic: 'ideographic',\n imagerendering: 'imageRendering',\n 'image-rendering': 'imageRendering',\n in2: 'in2',\n in: 'in',\n inlist: 'inlist',\n intercept: 'intercept',\n k1: 'k1',\n k2: 'k2',\n k3: 'k3',\n k4: 'k4',\n k: 'k',\n kernelmatrix: 'kernelMatrix',\n kernelunitlength: 'kernelUnitLength',\n kerning: 'kerning',\n keypoints: 'keyPoints',\n keysplines: 'keySplines',\n keytimes: 'keyTimes',\n lengthadjust: 'lengthAdjust',\n letterspacing: 'letterSpacing',\n 'letter-spacing': 'letterSpacing',\n lightingcolor: 'lightingColor',\n 'lighting-color': 'lightingColor',\n limitingconeangle: 'limitingConeAngle',\n local: 'local',\n markerend: 'markerEnd',\n 'marker-end': 'markerEnd',\n markerheight: 'markerHeight',\n markermid: 'markerMid',\n 'marker-mid': 'markerMid',\n markerstart: 'markerStart',\n 'marker-start': 'markerStart',\n markerunits: 'markerUnits',\n markerwidth: 'markerWidth',\n mask: 'mask',\n maskcontentunits: 'maskContentUnits',\n maskunits: 'maskUnits',\n mathematical: 'mathematical',\n mode: 'mode',\n numoctaves: 'numOctaves',\n offset: 'offset',\n opacity: 'opacity',\n operator: 'operator',\n order: 'order',\n orient: 'orient',\n orientation: 'orientation',\n origin: 'origin',\n overflow: 'overflow',\n overlineposition: 'overlinePosition',\n 'overline-position': 'overlinePosition',\n overlinethickness: 'overlineThickness',\n 'overline-thickness': 'overlineThickness',\n paintorder: 'paintOrder',\n 'paint-order': 'paintOrder',\n panose1: 'panose1',\n 'panose-1': 'panose1',\n pathlength: 'pathLength',\n patterncontentunits: 'patternContentUnits',\n patterntransform: 'patternTransform',\n patternunits: 'patternUnits',\n pointerevents: 'pointerEvents',\n 'pointer-events': 'pointerEvents',\n points: 'points',\n pointsatx: 'pointsAtX',\n pointsaty: 'pointsAtY',\n pointsatz: 'pointsAtZ',\n prefix: 'prefix',\n preservealpha: 'preserveAlpha',\n preserveaspectratio: 'preserveAspectRatio',\n primitiveunits: 'primitiveUnits',\n property: 'property',\n r: 'r',\n radius: 'radius',\n refx: 'refX',\n refy: 'refY',\n renderingintent: 'renderingIntent',\n 'rendering-intent': 'renderingIntent',\n repeatcount: 'repeatCount',\n repeatdur: 'repeatDur',\n requiredextensions: 'requiredExtensions',\n requiredfeatures: 'requiredFeatures',\n resource: 'resource',\n restart: 'restart',\n result: 'result',\n results: 'results',\n rotate: 'rotate',\n rx: 'rx',\n ry: 'ry',\n scale: 'scale',\n security: 'security',\n seed: 'seed',\n shaperendering: 'shapeRendering',\n 'shape-rendering': 'shapeRendering',\n slope: 'slope',\n spacing: 'spacing',\n specularconstant: 'specularConstant',\n specularexponent: 'specularExponent',\n speed: 'speed',\n spreadmethod: 'spreadMethod',\n startoffset: 'startOffset',\n stddeviation: 'stdDeviation',\n stemh: 'stemh',\n stemv: 'stemv',\n stitchtiles: 'stitchTiles',\n stopcolor: 'stopColor',\n 'stop-color': 'stopColor',\n stopopacity: 'stopOpacity',\n 'stop-opacity': 'stopOpacity',\n strikethroughposition: 'strikethroughPosition',\n 'strikethrough-position': 'strikethroughPosition',\n strikethroughthickness: 'strikethroughThickness',\n 'strikethrough-thickness': 'strikethroughThickness',\n string: 'string',\n stroke: 'stroke',\n strokedasharray: 'strokeDasharray',\n 'stroke-dasharray': 'strokeDasharray',\n strokedashoffset: 'strokeDashoffset',\n 'stroke-dashoffset': 'strokeDashoffset',\n strokelinecap: 'strokeLinecap',\n 'stroke-linecap': 'strokeLinecap',\n strokelinejoin: 'strokeLinejoin',\n 'stroke-linejoin': 'strokeLinejoin',\n strokemiterlimit: 'strokeMiterlimit',\n 'stroke-miterlimit': 'strokeMiterlimit',\n strokewidth: 'strokeWidth',\n 'stroke-width': 'strokeWidth',\n strokeopacity: 'strokeOpacity',\n 'stroke-opacity': 'strokeOpacity',\n suppresscontenteditablewarning: 'suppressContentEditableWarning',\n suppresshydrationwarning: 'suppressHydrationWarning',\n surfacescale: 'surfaceScale',\n systemlanguage: 'systemLanguage',\n tablevalues: 'tableValues',\n targetx: 'targetX',\n targety: 'targetY',\n textanchor: 'textAnchor',\n 'text-anchor': 'textAnchor',\n textdecoration: 'textDecoration',\n 'text-decoration': 'textDecoration',\n textlength: 'textLength',\n textrendering: 'textRendering',\n 'text-rendering': 'textRendering',\n to: 'to',\n transform: 'transform',\n typeof: 'typeof',\n u1: 'u1',\n u2: 'u2',\n underlineposition: 'underlinePosition',\n 'underline-position': 'underlinePosition',\n underlinethickness: 'underlineThickness',\n 'underline-thickness': 'underlineThickness',\n unicode: 'unicode',\n unicodebidi: 'unicodeBidi',\n 'unicode-bidi': 'unicodeBidi',\n unicoderange: 'unicodeRange',\n 'unicode-range': 'unicodeRange',\n unitsperem: 'unitsPerEm',\n 'units-per-em': 'unitsPerEm',\n unselectable: 'unselectable',\n valphabetic: 'vAlphabetic',\n 'v-alphabetic': 'vAlphabetic',\n values: 'values',\n vectoreffect: 'vectorEffect',\n 'vector-effect': 'vectorEffect',\n version: 'version',\n vertadvy: 'vertAdvY',\n 'vert-adv-y': 'vertAdvY',\n vertoriginx: 'vertOriginX',\n 'vert-origin-x': 'vertOriginX',\n vertoriginy: 'vertOriginY',\n 'vert-origin-y': 'vertOriginY',\n vhanging: 'vHanging',\n 'v-hanging': 'vHanging',\n videographic: 'vIdeographic',\n 'v-ideographic': 'vIdeographic',\n viewbox: 'viewBox',\n viewtarget: 'viewTarget',\n visibility: 'visibility',\n vmathematical: 'vMathematical',\n 'v-mathematical': 'vMathematical',\n vocab: 'vocab',\n widths: 'widths',\n wordspacing: 'wordSpacing',\n 'word-spacing': 'wordSpacing',\n writingmode: 'writingMode',\n 'writing-mode': 'writingMode',\n x1: 'x1',\n x2: 'x2',\n x: 'x',\n xchannelselector: 'xChannelSelector',\n xheight: 'xHeight',\n 'x-height': 'xHeight',\n xlinkactuate: 'xlinkActuate',\n 'xlink:actuate': 'xlinkActuate',\n xlinkarcrole: 'xlinkArcrole',\n 'xlink:arcrole': 'xlinkArcrole',\n xlinkhref: 'xlinkHref',\n 'xlink:href': 'xlinkHref',\n xlinkrole: 'xlinkRole',\n 'xlink:role': 'xlinkRole',\n xlinkshow: 'xlinkShow',\n 'xlink:show': 'xlinkShow',\n xlinktitle: 'xlinkTitle',\n 'xlink:title': 'xlinkTitle',\n xlinktype: 'xlinkType',\n 'xlink:type': 'xlinkType',\n xmlbase: 'xmlBase',\n 'xml:base': 'xmlBase',\n xmllang: 'xmlLang',\n 'xml:lang': 'xmlLang',\n xmlns: 'xmlns',\n 'xml:space': 'xmlSpace',\n xmlnsxlink: 'xmlnsXlink',\n 'xmlns:xlink': 'xmlnsXlink',\n xmlspace: 'xmlSpace',\n y1: 'y1',\n y2: 'y2',\n y: 'y',\n ychannelselector: 'yChannelSelector',\n z: 'z',\n zoomandpan: 'zoomAndPan'\n};\n\nvar ariaProperties = {\n 'aria-current': 0,\n // state\n 'aria-description': 0,\n 'aria-details': 0,\n 'aria-disabled': 0,\n // state\n 'aria-hidden': 0,\n // state\n 'aria-invalid': 0,\n // state\n 'aria-keyshortcuts': 0,\n 'aria-label': 0,\n 'aria-roledescription': 0,\n // Widget Attributes\n 'aria-autocomplete': 0,\n 'aria-checked': 0,\n 'aria-expanded': 0,\n 'aria-haspopup': 0,\n 'aria-level': 0,\n 'aria-modal': 0,\n 'aria-multiline': 0,\n 'aria-multiselectable': 0,\n 'aria-orientation': 0,\n 'aria-placeholder': 0,\n 'aria-pressed': 0,\n 'aria-readonly': 0,\n 'aria-required': 0,\n 'aria-selected': 0,\n 'aria-sort': 0,\n 'aria-valuemax': 0,\n 'aria-valuemin': 0,\n 'aria-valuenow': 0,\n 'aria-valuetext': 0,\n // Live Region Attributes\n 'aria-atomic': 0,\n 'aria-busy': 0,\n 'aria-live': 0,\n 'aria-relevant': 0,\n // Drag-and-Drop Attributes\n 'aria-dropeffect': 0,\n 'aria-grabbed': 0,\n // Relationship Attributes\n 'aria-activedescendant': 0,\n 'aria-colcount': 0,\n 'aria-colindex': 0,\n 'aria-colspan': 0,\n 'aria-controls': 0,\n 'aria-describedby': 0,\n 'aria-errormessage': 0,\n 'aria-flowto': 0,\n 'aria-labelledby': 0,\n 'aria-owns': 0,\n 'aria-posinset': 0,\n 'aria-rowcount': 0,\n 'aria-rowindex': 0,\n 'aria-rowspan': 0,\n 'aria-setsize': 0\n};\n\nvar warnedProperties = {};\nvar rARIA = new RegExp('^(aria)-[' + ATTRIBUTE_NAME_CHAR + ']*$');\nvar rARIACamel = new RegExp('^(aria)[A-Z][' + ATTRIBUTE_NAME_CHAR + ']*$');\n\nfunction validateProperty(tagName, name) {\n {\n if (hasOwnProperty.call(warnedProperties, name) && warnedProperties[name]) {\n return true;\n }\n\n if (rARIACamel.test(name)) {\n var ariaName = 'aria-' + name.slice(4).toLowerCase();\n var correctName = ariaProperties.hasOwnProperty(ariaName) ? ariaName : null; // If this is an aria-* attribute, but is not listed in the known DOM\n // DOM properties, then it is an invalid aria-* attribute.\n\n if (correctName == null) {\n error('Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.', name);\n\n warnedProperties[name] = true;\n return true;\n } // aria-* attributes should be lowercase; suggest the lowercase version.\n\n\n if (name !== correctName) {\n error('Invalid ARIA attribute `%s`. Did you mean `%s`?', name, correctName);\n\n warnedProperties[name] = true;\n return true;\n }\n }\n\n if (rARIA.test(name)) {\n var lowerCasedName = name.toLowerCase();\n var standardName = ariaProperties.hasOwnProperty(lowerCasedName) ? lowerCasedName : null; // If this is an aria-* attribute, but is not listed in the known DOM\n // DOM properties, then it is an invalid aria-* attribute.\n\n if (standardName == null) {\n warnedProperties[name] = true;\n return false;\n } // aria-* attributes should be lowercase; suggest the lowercase version.\n\n\n if (name !== standardName) {\n error('Unknown ARIA attribute `%s`. Did you mean `%s`?', name, standardName);\n\n warnedProperties[name] = true;\n return true;\n }\n }\n }\n\n return true;\n}\n\nfunction warnInvalidARIAProps(type, props) {\n {\n var invalidProps = [];\n\n for (var key in props) {\n var isValid = validateProperty(type, key);\n\n if (!isValid) {\n invalidProps.push(key);\n }\n }\n\n var unknownPropString = invalidProps.map(function (prop) {\n return '`' + prop + '`';\n }).join(', ');\n\n if (invalidProps.length === 1) {\n error('Invalid aria prop %s on <%s> tag. ' + 'For details, see https://reactjs.org/link/invalid-aria-props', unknownPropString, type);\n } else if (invalidProps.length > 1) {\n error('Invalid aria props %s on <%s> tag. ' + 'For details, see https://reactjs.org/link/invalid-aria-props', unknownPropString, type);\n }\n }\n}\n\nfunction validateProperties(type, props) {\n if (isCustomComponent(type, props)) {\n return;\n }\n\n warnInvalidARIAProps(type, props);\n}\n\nvar didWarnValueNull = false;\nfunction validateProperties$1(type, props) {\n {\n if (type !== 'input' && type !== 'textarea' && type !== 'select') {\n return;\n }\n\n if (props != null && props.value === null && !didWarnValueNull) {\n didWarnValueNull = true;\n\n if (type === 'select' && props.multiple) {\n error('`value` prop on `%s` should not be null. ' + 'Consider using an empty array when `multiple` is set to `true` ' + 'to clear the component or `undefined` for uncontrolled components.', type);\n } else {\n error('`value` prop on `%s` should not be null. ' + 'Consider using an empty string to clear the component or `undefined` ' + 'for uncontrolled components.', type);\n }\n }\n }\n}\n\nvar validateProperty$1 = function () {};\n\n{\n var warnedProperties$1 = {};\n var EVENT_NAME_REGEX = /^on./;\n var INVALID_EVENT_NAME_REGEX = /^on[^A-Z]/;\n var rARIA$1 = new RegExp('^(aria)-[' + ATTRIBUTE_NAME_CHAR + ']*$');\n var rARIACamel$1 = new RegExp('^(aria)[A-Z][' + ATTRIBUTE_NAME_CHAR + ']*$');\n\n validateProperty$1 = function (tagName, name, value, eventRegistry) {\n if (hasOwnProperty.call(warnedProperties$1, name) && warnedProperties$1[name]) {\n return true;\n }\n\n var lowerCasedName = name.toLowerCase();\n\n if (lowerCasedName === 'onfocusin' || lowerCasedName === 'onfocusout') {\n error('React uses onFocus and onBlur instead of onFocusIn and onFocusOut. ' + 'All React events are normalized to bubble, so onFocusIn and onFocusOut ' + 'are not needed/supported by React.');\n\n warnedProperties$1[name] = true;\n return true;\n } // We can't rely on the event system being injected on the server.\n\n\n if (eventRegistry != null) {\n var registrationNameDependencies = eventRegistry.registrationNameDependencies,\n possibleRegistrationNames = eventRegistry.possibleRegistrationNames;\n\n if (registrationNameDependencies.hasOwnProperty(name)) {\n return true;\n }\n\n var registrationName = possibleRegistrationNames.hasOwnProperty(lowerCasedName) ? possibleRegistrationNames[lowerCasedName] : null;\n\n if (registrationName != null) {\n error('Invalid event handler property `%s`. Did you mean `%s`?', name, registrationName);\n\n warnedProperties$1[name] = true;\n return true;\n }\n\n if (EVENT_NAME_REGEX.test(name)) {\n error('Unknown event handler property `%s`. It will be ignored.', name);\n\n warnedProperties$1[name] = true;\n return true;\n }\n } else if (EVENT_NAME_REGEX.test(name)) {\n // If no event plugins have been injected, we are in a server environment.\n // So we can't tell if the event name is correct for sure, but we can filter\n // out known bad ones like `onclick`. We can't suggest a specific replacement though.\n if (INVALID_EVENT_NAME_REGEX.test(name)) {\n error('Invalid event handler property `%s`. ' + 'React events use the camelCase naming convention, for example `onClick`.', name);\n }\n\n warnedProperties$1[name] = true;\n return true;\n } // Let the ARIA attribute hook validate ARIA attributes\n\n\n if (rARIA$1.test(name) || rARIACamel$1.test(name)) {\n return true;\n }\n\n if (lowerCasedName === 'innerhtml') {\n error('Directly setting property `innerHTML` is not permitted. ' + 'For more information, lookup documentation on `dangerouslySetInnerHTML`.');\n\n warnedProperties$1[name] = true;\n return true;\n }\n\n if (lowerCasedName === 'aria') {\n error('The `aria` attribute is reserved for future use in React. ' + 'Pass individual `aria-` attributes instead.');\n\n warnedProperties$1[name] = true;\n return true;\n }\n\n if (lowerCasedName === 'is' && value !== null && value !== undefined && typeof value !== 'string') {\n error('Received a `%s` for a string attribute `is`. If this is expected, cast ' + 'the value to a string.', typeof value);\n\n warnedProperties$1[name] = true;\n return true;\n }\n\n if (typeof value === 'number' && isNaN(value)) {\n error('Received NaN for the `%s` attribute. If this is expected, cast ' + 'the value to a string.', name);\n\n warnedProperties$1[name] = true;\n return true;\n }\n\n var propertyInfo = getPropertyInfo(name);\n var isReserved = propertyInfo !== null && propertyInfo.type === RESERVED; // Known attributes should match the casing specified in the property config.\n\n if (possibleStandardNames.hasOwnProperty(lowerCasedName)) {\n var standardName = possibleStandardNames[lowerCasedName];\n\n if (standardName !== name) {\n error('Invalid DOM property `%s`. Did you mean `%s`?', name, standardName);\n\n warnedProperties$1[name] = true;\n return true;\n }\n } else if (!isReserved && name !== lowerCasedName) {\n // Unknown attributes should have lowercase casing since that's how they\n // will be cased anyway with server rendering.\n error('React does not recognize the `%s` prop on a DOM element. If you ' + 'intentionally want it to appear in the DOM as a custom ' + 'attribute, spell it as lowercase `%s` instead. ' + 'If you accidentally passed it from a parent component, remove ' + 'it from the DOM element.', name, lowerCasedName);\n\n warnedProperties$1[name] = true;\n return true;\n }\n\n if (typeof value === 'boolean' && shouldRemoveAttributeWithWarning(name, value, propertyInfo, false)) {\n if (value) {\n error('Received `%s` for a non-boolean attribute `%s`.\\n\\n' + 'If you want to write it to the DOM, pass a string instead: ' + '%s=\"%s\" or %s={value.toString()}.', value, name, name, value, name);\n } else {\n error('Received `%s` for a non-boolean attribute `%s`.\\n\\n' + 'If you want to write it to the DOM, pass a string instead: ' + '%s=\"%s\" or %s={value.toString()}.\\n\\n' + 'If you used to conditionally omit it with %s={condition && value}, ' + 'pass %s={condition ? value : undefined} instead.', value, name, name, value, name, name, name);\n }\n\n warnedProperties$1[name] = true;\n return true;\n } // Now that we've validated casing, do not validate\n // data types for reserved props\n\n\n if (isReserved) {\n return true;\n } // Warn when a known attribute is a bad type\n\n\n if (shouldRemoveAttributeWithWarning(name, value, propertyInfo, false)) {\n warnedProperties$1[name] = true;\n return false;\n } // Warn when passing the strings 'false' or 'true' into a boolean prop\n\n\n if ((value === 'false' || value === 'true') && propertyInfo !== null && propertyInfo.type === BOOLEAN) {\n error('Received the string `%s` for the boolean attribute `%s`. ' + '%s ' + 'Did you mean %s={%s}?', value, name, value === 'false' ? 'The browser will interpret it as a truthy value.' : 'Although this works, it will not work as expected if you pass the string \"false\".', name, value);\n\n warnedProperties$1[name] = true;\n return true;\n }\n\n return true;\n };\n}\n\nvar warnUnknownProperties = function (type, props, eventRegistry) {\n {\n var unknownProps = [];\n\n for (var key in props) {\n var isValid = validateProperty$1(type, key, props[key], eventRegistry);\n\n if (!isValid) {\n unknownProps.push(key);\n }\n }\n\n var unknownPropString = unknownProps.map(function (prop) {\n return '`' + prop + '`';\n }).join(', ');\n\n if (unknownProps.length === 1) {\n error('Invalid value for prop %s on <%s> tag. Either remove it from the element, ' + 'or pass a string or number value to keep it in the DOM. ' + 'For details, see https://reactjs.org/link/attribute-behavior ', unknownPropString, type);\n } else if (unknownProps.length > 1) {\n error('Invalid values for props %s on <%s> tag. Either remove them from the element, ' + 'or pass a string or number value to keep them in the DOM. ' + 'For details, see https://reactjs.org/link/attribute-behavior ', unknownPropString, type);\n }\n }\n};\n\nfunction validateProperties$2(type, props, eventRegistry) {\n if (isCustomComponent(type, props)) {\n return;\n }\n\n warnUnknownProperties(type, props, eventRegistry);\n}\n\nvar IS_EVENT_HANDLE_NON_MANAGED_NODE = 1;\nvar IS_NON_DELEGATED = 1 << 1;\nvar IS_CAPTURE_PHASE = 1 << 2;\n// set to LEGACY_FB_SUPPORT. LEGACY_FB_SUPPORT only gets set when\n// we call willDeferLaterForLegacyFBSupport, thus not bailing out\n// will result in endless cycles like an infinite loop.\n// We also don't want to defer during event replaying.\n\nvar SHOULD_NOT_PROCESS_POLYFILL_EVENT_PLUGINS = IS_EVENT_HANDLE_NON_MANAGED_NODE | IS_NON_DELEGATED | IS_CAPTURE_PHASE;\n\n// This exists to avoid circular dependency between ReactDOMEventReplaying\n// and DOMPluginEventSystem.\nvar currentReplayingEvent = null;\nfunction setReplayingEvent(event) {\n {\n if (currentReplayingEvent !== null) {\n error('Expected currently replaying event to be null. This error ' + 'is likely caused by a bug in React. Please file an issue.');\n }\n }\n\n currentReplayingEvent = event;\n}\nfunction resetReplayingEvent() {\n {\n if (currentReplayingEvent === null) {\n error('Expected currently replaying event to not be null. This error ' + 'is likely caused by a bug in React. Please file an issue.');\n }\n }\n\n currentReplayingEvent = null;\n}\nfunction isReplayingEvent(event) {\n return event === currentReplayingEvent;\n}\n\n/**\n * Gets the target node from a native browser event by accounting for\n * inconsistencies in browser DOM APIs.\n *\n * @param {object} nativeEvent Native browser event.\n * @return {DOMEventTarget} Target node.\n */\n\nfunction getEventTarget(nativeEvent) {\n // Fallback to nativeEvent.srcElement for IE9\n // https://github.com/facebook/react/issues/12506\n var target = nativeEvent.target || nativeEvent.srcElement || window; // Normalize SVG <use> element events #4963\n\n if (target.correspondingUseElement) {\n target = target.correspondingUseElement;\n } // Safari may fire events on text nodes (Node.TEXT_NODE is 3).\n // @see http://www.quirksmode.org/js/events_properties.html\n\n\n return target.nodeType === TEXT_NODE ? target.parentNode : target;\n}\n\nvar restoreImpl = null;\nvar restoreTarget = null;\nvar restoreQueue = null;\n\nfunction restoreStateOfTarget(target) {\n // We perform this translation at the end of the event loop so that we\n // always receive the correct fiber here\n var internalInstance = getInstanceFromNode(target);\n\n if (!internalInstance) {\n // Unmounted\n return;\n }\n\n if (typeof restoreImpl !== 'function') {\n throw new Error('setRestoreImplementation() needs to be called to handle a target for controlled ' + 'events. This error is likely caused by a bug in React. Please file an issue.');\n }\n\n var stateNode = internalInstance.stateNode; // Guard against Fiber being unmounted.\n\n if (stateNode) {\n var _props = getFiberCurrentPropsFromNode(stateNode);\n\n restoreImpl(internalInstance.stateNode, internalInstance.type, _props);\n }\n}\n\nfunction setRestoreImplementation(impl) {\n restoreImpl = impl;\n}\nfunction enqueueStateRestore(target) {\n if (restoreTarget) {\n if (restoreQueue) {\n restoreQueue.push(target);\n } else {\n restoreQueue = [target];\n }\n } else {\n restoreTarget = target;\n }\n}\nfunction needsStateRestore() {\n return restoreTarget !== null || restoreQueue !== null;\n}\nfunction restoreStateIfNeeded() {\n if (!restoreTarget) {\n return;\n }\n\n var target = restoreTarget;\n var queuedTargets = restoreQueue;\n restoreTarget = null;\n restoreQueue = null;\n restoreStateOfTarget(target);\n\n if (queuedTargets) {\n for (var i = 0; i < queuedTargets.length; i++) {\n restoreStateOfTarget(queuedTargets[i]);\n }\n }\n}\n\n// the renderer. Such as when we're dispatching events or if third party\n// libraries need to call batchedUpdates. Eventually, this API will go away when\n// everything is batched by default. We'll then have a similar API to opt-out of\n// scheduled work and instead do synchronous work.\n// Defaults\n\nvar batchedUpdatesImpl = function (fn, bookkeeping) {\n return fn(bookkeeping);\n};\n\nvar flushSyncImpl = function () {};\n\nvar isInsideEventHandler = false;\n\nfunction finishEventHandler() {\n // Here we wait until all updates have propagated, which is important\n // when using controlled components within layers:\n // https://github.com/facebook/react/issues/1698\n // Then we restore state of any controlled component.\n var controlledComponentsHavePendingUpdates = needsStateRestore();\n\n if (controlledComponentsHavePendingUpdates) {\n // If a controlled event was fired, we may need to restore the state of\n // the DOM node back to the controlled value. This is necessary when React\n // bails out of the update without touching the DOM.\n // TODO: Restore state in the microtask, after the discrete updates flush,\n // instead of early flushing them here.\n flushSyncImpl();\n restoreStateIfNeeded();\n }\n}\n\nfunction batchedUpdates(fn, a, b) {\n if (isInsideEventHandler) {\n // If we are currently inside another batch, we need to wait until it\n // fully completes before restoring state.\n return fn(a, b);\n }\n\n isInsideEventHandler = true;\n\n try {\n return batchedUpdatesImpl(fn, a, b);\n } finally {\n isInsideEventHandler = false;\n finishEventHandler();\n }\n} // TODO: Replace with flushSync\nfunction setBatchingImplementation(_batchedUpdatesImpl, _discreteUpdatesImpl, _flushSyncImpl) {\n batchedUpdatesImpl = _batchedUpdatesImpl;\n flushSyncImpl = _flushSyncImpl;\n}\n\nfunction isInteractive(tag) {\n return tag === 'button' || tag === 'input' || tag === 'select' || tag === 'textarea';\n}\n\nfunction shouldPreventMouseEvent(name, type, props) {\n switch (name) {\n case 'onClick':\n case 'onClickCapture':\n case 'onDoubleClick':\n case 'onDoubleClickCapture':\n case 'onMouseDown':\n case 'onMouseDownCapture':\n case 'onMouseMove':\n case 'onMouseMoveCapture':\n case 'onMouseUp':\n case 'onMouseUpCapture':\n case 'onMouseEnter':\n return !!(props.disabled && isInteractive(type));\n\n default:\n return false;\n }\n}\n/**\n * @param {object} inst The instance, which is the source of events.\n * @param {string} registrationName Name of listener (e.g. `onClick`).\n * @return {?function} The stored callback.\n */\n\n\nfunction getListener(inst, registrationName) {\n var stateNode = inst.stateNode;\n\n if (stateNode === null) {\n // Work in progress (ex: onload events in incremental mode).\n return null;\n }\n\n var props = getFiberCurrentPropsFromNode(stateNode);\n\n if (props === null) {\n // Work in progress.\n return null;\n }\n\n var listener = props[registrationName];\n\n if (shouldPreventMouseEvent(registrationName, inst.type, props)) {\n return null;\n }\n\n if (listener && typeof listener !== 'function') {\n throw new Error(\"Expected `\" + registrationName + \"` listener to be a function, instead got a value of `\" + typeof listener + \"` type.\");\n }\n\n return listener;\n}\n\nvar passiveBrowserEventsSupported = false; // Check if browser support events with passive listeners\n// https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Safely_detecting_option_support\n\nif (canUseDOM) {\n try {\n var options = {}; // $FlowFixMe: Ignore Flow complaining about needing a value\n\n Object.defineProperty(options, 'passive', {\n get: function () {\n passiveBrowserEventsSupported = true;\n }\n });\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, options);\n } catch (e) {\n passiveBrowserEventsSupported = false;\n }\n}\n\nfunction invokeGuardedCallbackProd(name, func, context, a, b, c, d, e, f) {\n var funcArgs = Array.prototype.slice.call(arguments, 3);\n\n try {\n func.apply(context, funcArgs);\n } catch (error) {\n this.onError(error);\n }\n}\n\nvar invokeGuardedCallbackImpl = invokeGuardedCallbackProd;\n\n{\n // In DEV mode, we swap out invokeGuardedCallback for a special version\n // that plays more nicely with the browser's DevTools. The idea is to preserve\n // \"Pause on exceptions\" behavior. Because React wraps all user-provided\n // functions in invokeGuardedCallback, and the production version of\n // invokeGuardedCallback uses a try-catch, all user exceptions are treated\n // like caught exceptions, and the DevTools won't pause unless the developer\n // takes the extra step of enabling pause on caught exceptions. This is\n // unintuitive, though, because even though React has caught the error, from\n // the developer's perspective, the error is uncaught.\n //\n // To preserve the expected \"Pause on exceptions\" behavior, we don't use a\n // try-catch in DEV. Instead, we synchronously dispatch a fake event to a fake\n // DOM node, and call the user-provided callback from inside an event handler\n // for that fake event. If the callback throws, the error is \"captured\" using\n // a global event handler. But because the error happens in a different\n // event loop context, it does not interrupt the normal program flow.\n // Effectively, this gives us try-catch behavior without actually using\n // try-catch. Neat!\n // Check that the browser supports the APIs we need to implement our special\n // DEV version of invokeGuardedCallback\n if (typeof window !== 'undefined' && typeof window.dispatchEvent === 'function' && typeof document !== 'undefined' && typeof document.createEvent === 'function') {\n var fakeNode = document.createElement('react');\n\n invokeGuardedCallbackImpl = function invokeGuardedCallbackDev(name, func, context, a, b, c, d, e, f) {\n // If document doesn't exist we know for sure we will crash in this method\n // when we call document.createEvent(). However this can cause confusing\n // errors: https://github.com/facebook/create-react-app/issues/3482\n // So we preemptively throw with a better message instead.\n if (typeof document === 'undefined' || document === null) {\n throw new Error('The `document` global was defined when React was initialized, but is not ' + 'defined anymore. This can happen in a test environment if a component ' + 'schedules an update from an asynchronous callback, but the test has already ' + 'finished running. To solve this, you can either unmount the component at ' + 'the end of your test (and ensure that any asynchronous operations get ' + 'canceled in `componentWillUnmount`), or you can change the test itself ' + 'to be asynchronous.');\n }\n\n var evt = document.createEvent('Event');\n var didCall = false; // Keeps track of whether the user-provided callback threw an error. We\n // set this to true at the beginning, then set it to false right after\n // calling the function. If the function errors, `didError` will never be\n // set to false. This strategy works even if the browser is flaky and\n // fails to call our global error handler, because it doesn't rely on\n // the error event at all.\n\n var didError = true; // Keeps track of the value of window.event so that we can reset it\n // during the callback to let user code access window.event in the\n // browsers that support it.\n\n var windowEvent = window.event; // Keeps track of the descriptor of window.event to restore it after event\n // dispatching: https://github.com/facebook/react/issues/13688\n\n var windowEventDescriptor = Object.getOwnPropertyDescriptor(window, 'event');\n\n function restoreAfterDispatch() {\n // We immediately remove the callback from event listeners so that\n // nested `invokeGuardedCallback` calls do not clash. Otherwise, a\n // nested call would trigger the fake event handlers of any call higher\n // in the stack.\n fakeNode.removeEventListener(evtType, callCallback, false); // We check for window.hasOwnProperty('event') to prevent the\n // window.event assignment in both IE <= 10 as they throw an error\n // \"Member not found\" in strict mode, and in Firefox which does not\n // support window.event.\n\n if (typeof window.event !== 'undefined' && window.hasOwnProperty('event')) {\n window.event = windowEvent;\n }\n } // Create an event handler for our fake event. We will synchronously\n // dispatch our fake event using `dispatchEvent`. Inside the handler, we\n // call the user-provided callback.\n\n\n var funcArgs = Array.prototype.slice.call(arguments, 3);\n\n function callCallback() {\n didCall = true;\n restoreAfterDispatch();\n func.apply(context, funcArgs);\n didError = false;\n } // Create a global error event handler. We use this to capture the value\n // that was thrown. It's possible that this error handler will fire more\n // than once; for example, if non-React code also calls `dispatchEvent`\n // and a handler for that event throws. We should be resilient to most of\n // those cases. Even if our error event handler fires more than once, the\n // last error event is always used. If the callback actually does error,\n // we know that the last error event is the correct one, because it's not\n // possible for anything else to have happened in between our callback\n // erroring and the code that follows the `dispatchEvent` call below. If\n // the callback doesn't error, but the error event was fired, we know to\n // ignore it because `didError` will be false, as described above.\n\n\n var error; // Use this to track whether the error event is ever called.\n\n var didSetError = false;\n var isCrossOriginError = false;\n\n function handleWindowError(event) {\n error = event.error;\n didSetError = true;\n\n if (error === null && event.colno === 0 && event.lineno === 0) {\n isCrossOriginError = true;\n }\n\n if (event.defaultPrevented) {\n // Some other error handler has prevented default.\n // Browsers silence the error report if this happens.\n // We'll remember this to later decide whether to log it or not.\n if (error != null && typeof error === 'object') {\n try {\n error._suppressLogging = true;\n } catch (inner) {// Ignore.\n }\n }\n }\n } // Create a fake event type.\n\n\n var evtType = \"react-\" + (name ? name : 'invokeguardedcallback'); // Attach our event handlers\n\n window.addEventListener('error', handleWindowError);\n fakeNode.addEventListener(evtType, callCallback, false); // Synchronously dispatch our fake event. If the user-provided function\n // errors, it will trigger our global error handler.\n\n evt.initEvent(evtType, false, false);\n fakeNode.dispatchEvent(evt);\n\n if (windowEventDescriptor) {\n Object.defineProperty(window, 'event', windowEventDescriptor);\n }\n\n if (didCall && didError) {\n if (!didSetError) {\n // The callback errored, but the error event never fired.\n // eslint-disable-next-line react-internal/prod-error-codes\n error = new Error('An error was thrown inside one of your components, but React ' + \"doesn't know what it was. This is likely due to browser \" + 'flakiness. React does its best to preserve the \"Pause on ' + 'exceptions\" behavior of the DevTools, which requires some ' + \"DEV-mode only tricks. It's possible that these don't work in \" + 'your browser. Try triggering the error in production mode, ' + 'or switching to a modern browser. If you suspect that this is ' + 'actually an issue with React, please file an issue.');\n } else if (isCrossOriginError) {\n // eslint-disable-next-line react-internal/prod-error-codes\n error = new Error(\"A cross-origin error was thrown. React doesn't have access to \" + 'the actual error object in development. ' + 'See https://reactjs.org/link/crossorigin-error for more information.');\n }\n\n this.onError(error);\n } // Remove our event listeners\n\n\n window.removeEventListener('error', handleWindowError);\n\n if (!didCall) {\n // Something went really wrong, and our event was not dispatched.\n // https://github.com/facebook/react/issues/16734\n // https://github.com/facebook/react/issues/16585\n // Fall back to the production implementation.\n restoreAfterDispatch();\n return invokeGuardedCallbackProd.apply(this, arguments);\n }\n };\n }\n}\n\nvar invokeGuardedCallbackImpl$1 = invokeGuardedCallbackImpl;\n\nvar hasError = false;\nvar caughtError = null; // Used by event system to capture/rethrow the first error.\n\nvar hasRethrowError = false;\nvar rethrowError = null;\nvar reporter = {\n onError: function (error) {\n hasError = true;\n caughtError = error;\n }\n};\n/**\n * Call a function while guarding against errors that happens within it.\n * Returns an error if it throws, otherwise null.\n *\n * In production, this is implemented using a try-catch. The reason we don't\n * use a try-catch directly is so that we can swap out a different\n * implementation in DEV mode.\n *\n * @param {String} name of the guard to use for logging or debugging\n * @param {Function} func The function to invoke\n * @param {*} context The context to use when calling the function\n * @param {...*} args Arguments for function\n */\n\nfunction invokeGuardedCallback(name, func, context, a, b, c, d, e, f) {\n hasError = false;\n caughtError = null;\n invokeGuardedCallbackImpl$1.apply(reporter, arguments);\n}\n/**\n * Same as invokeGuardedCallback, but instead of returning an error, it stores\n * it in a global so it can be rethrown by `rethrowCaughtError` later.\n * TODO: See if caughtError and rethrowError can be unified.\n *\n * @param {String} name of the guard to use for logging or debugging\n * @param {Function} func The function to invoke\n * @param {*} context The context to use when calling the function\n * @param {...*} args Arguments for function\n */\n\nfunction invokeGuardedCallbackAndCatchFirstError(name, func, context, a, b, c, d, e, f) {\n invokeGuardedCallback.apply(this, arguments);\n\n if (hasError) {\n var error = clearCaughtError();\n\n if (!hasRethrowError) {\n hasRethrowError = true;\n rethrowError = error;\n }\n }\n}\n/**\n * During execution of guarded functions we will capture the first error which\n * we will rethrow to be handled by the top level error handler.\n */\n\nfunction rethrowCaughtError() {\n if (hasRethrowError) {\n var error = rethrowError;\n hasRethrowError = false;\n rethrowError = null;\n throw error;\n }\n}\nfunction hasCaughtError() {\n return hasError;\n}\nfunction clearCaughtError() {\n if (hasError) {\n var error = caughtError;\n hasError = false;\n caughtError = null;\n return error;\n } else {\n throw new Error('clearCaughtError was called but no error was captured. This error ' + 'is likely caused by a bug in React. Please file an issue.');\n }\n}\n\n/**\n * `ReactInstanceMap` maintains a mapping from a public facing stateful\n * instance (key) and the internal representation (value). This allows public\n * methods to accept the user facing instance as an argument and map them back\n * to internal methods.\n *\n * Note that this module is currently shared and assumed to be stateless.\n * If this becomes an actual Map, that will break.\n */\nfunction get(key) {\n return key._reactInternals;\n}\nfunction has(key) {\n return key._reactInternals !== undefined;\n}\nfunction set(key, value) {\n key._reactInternals = value;\n}\n\n// Don't change these two values. They're used by React Dev Tools.\nvar NoFlags =\n/* */\n0;\nvar PerformedWork =\n/* */\n1; // You can change the rest (and add more).\n\nvar Placement =\n/* */\n2;\nvar Update =\n/* */\n4;\nvar ChildDeletion =\n/* */\n16;\nvar ContentReset =\n/* */\n32;\nvar Callback =\n/* */\n64;\nvar DidCapture =\n/* */\n128;\nvar ForceClientRender =\n/* */\n256;\nvar Ref =\n/* */\n512;\nvar Snapshot =\n/* */\n1024;\nvar Passive =\n/* */\n2048;\nvar Hydrating =\n/* */\n4096;\nvar Visibility =\n/* */\n8192;\nvar StoreConsistency =\n/* */\n16384;\nvar LifecycleEffectMask = Passive | Update | Callback | Ref | Snapshot | StoreConsistency; // Union of all commit flags (flags with the lifetime of a particular commit)\n\nvar HostEffectMask =\n/* */\n32767; // These are not really side effects, but we still reuse this field.\n\nvar Incomplete =\n/* */\n32768;\nvar ShouldCapture =\n/* */\n65536;\nvar ForceUpdateForLegacySuspense =\n/* */\n131072;\nvar Forked =\n/* */\n1048576; // Static tags describe aspects of a fiber that are not specific to a render,\n// e.g. a fiber uses a passive effect (even if there are no updates on this particular render).\n// This enables us to defer more work in the unmount case,\n// since we can defer traversing the tree during layout to look for Passive effects,\n// and instead rely on the static flag as a signal that there may be cleanup work.\n\nvar RefStatic =\n/* */\n2097152;\nvar LayoutStatic =\n/* */\n4194304;\nvar PassiveStatic =\n/* */\n8388608; // These flags allow us to traverse to fibers that have effects on mount\n// without traversing the entire tree after every commit for\n// double invoking\n\nvar MountLayoutDev =\n/* */\n16777216;\nvar MountPassiveDev =\n/* */\n33554432; // Groups of flags that are used in the commit phase to skip over trees that\n// don't contain effects, by checking subtreeFlags.\n\nvar BeforeMutationMask = // TODO: Remove Update flag from before mutation phase by re-landing Visibility\n// flag logic (see #20043)\nUpdate | Snapshot | ( 0);\nvar MutationMask = Placement | Update | ChildDeletion | ContentReset | Ref | Hydrating | Visibility;\nvar LayoutMask = Update | Callback | Ref | Visibility; // TODO: Split into PassiveMountMask and PassiveUnmountMask\n\nvar PassiveMask = Passive | ChildDeletion; // Union of tags that don't get reset on clones.\n// This allows certain concepts to persist without recalculating them,\n// e.g. whether a subtree contains passive effects or portals.\n\nvar StaticMask = LayoutStatic | PassiveStatic | RefStatic;\n\nvar ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;\nfunction getNearestMountedFiber(fiber) {\n var node = fiber;\n var nearestMounted = fiber;\n\n if (!fiber.alternate) {\n // If there is no alternate, this might be a new tree that isn't inserted\n // yet. If it is, then it will have a pending insertion effect on it.\n var nextNode = node;\n\n do {\n node = nextNode;\n\n if ((node.flags & (Placement | Hydrating)) !== NoFlags) {\n // This is an insertion or in-progress hydration. The nearest possible\n // mounted fiber is the parent but we need to continue to figure out\n // if that one is still mounted.\n nearestMounted = node.return;\n }\n\n nextNode = node.return;\n } while (nextNode);\n } else {\n while (node.return) {\n node = node.return;\n }\n }\n\n if (node.tag === HostRoot) {\n // TODO: Check if this was a nested HostRoot when used with\n // renderContainerIntoSubtree.\n return nearestMounted;\n } // If we didn't hit the root, that means that we're in an disconnected tree\n // that has been unmounted.\n\n\n return null;\n}\nfunction getSuspenseInstanceFromFiber(fiber) {\n if (fiber.tag === SuspenseComponent) {\n var suspenseState = fiber.memoizedState;\n\n if (suspenseState === null) {\n var current = fiber.alternate;\n\n if (current !== null) {\n suspenseState = current.memoizedState;\n }\n }\n\n if (suspenseState !== null) {\n return suspenseState.dehydrated;\n }\n }\n\n return null;\n}\nfunction getContainerFromFiber(fiber) {\n return fiber.tag === HostRoot ? fiber.stateNode.containerInfo : null;\n}\nfunction isFiberMounted(fiber) {\n return getNearestMountedFiber(fiber) === fiber;\n}\nfunction isMounted(component) {\n {\n var owner = ReactCurrentOwner.current;\n\n if (owner !== null && owner.tag === ClassComponent) {\n var ownerFiber = owner;\n var instance = ownerFiber.stateNode;\n\n if (!instance._warnedAboutRefsInRender) {\n error('%s is accessing isMounted inside its render() function. ' + 'render() should be a pure function of props and state. It should ' + 'never access something that requires stale data from the previous ' + 'render, such as refs. Move this logic to componentDidMount and ' + 'componentDidUpdate instead.', getComponentNameFromFiber(ownerFiber) || 'A component');\n }\n\n instance._warnedAboutRefsInRender = true;\n }\n }\n\n var fiber = get(component);\n\n if (!fiber) {\n return false;\n }\n\n return getNearestMountedFiber(fiber) === fiber;\n}\n\nfunction assertIsMounted(fiber) {\n if (getNearestMountedFiber(fiber) !== fiber) {\n throw new Error('Unable to find node on an unmounted component.');\n }\n}\n\nfunction findCurrentFiberUsingSlowPath(fiber) {\n var alternate = fiber.alternate;\n\n if (!alternate) {\n // If there is no alternate, then we only need to check if it is mounted.\n var nearestMounted = getNearestMountedFiber(fiber);\n\n if (nearestMounted === null) {\n throw new Error('Unable to find node on an unmounted component.');\n }\n\n if (nearestMounted !== fiber) {\n return null;\n }\n\n return fiber;\n } // If we have two possible branches, we'll walk backwards up to the root\n // to see what path the root points to. On the way we may hit one of the\n // special cases and we'll deal with them.\n\n\n var a = fiber;\n var b = alternate;\n\n while (true) {\n var parentA = a.return;\n\n if (parentA === null) {\n // We're at the root.\n break;\n }\n\n var parentB = parentA.alternate;\n\n if (parentB === null) {\n // There is no alternate. This is an unusual case. Currently, it only\n // happens when a Suspense component is hidden. An extra fragment fiber\n // is inserted in between the Suspense fiber and its children. Skip\n // over this extra fragment fiber and proceed to the next parent.\n var nextParent = parentA.return;\n\n if (nextParent !== null) {\n a = b = nextParent;\n continue;\n } // If there's no parent, we're at the root.\n\n\n break;\n } // If both copies of the parent fiber point to the same child, we can\n // assume that the child is current. This happens when we bailout on low\n // priority: the bailed out fiber's child reuses the current child.\n\n\n if (parentA.child === parentB.child) {\n var child = parentA.child;\n\n while (child) {\n if (child === a) {\n // We've determined that A is the current branch.\n assertIsMounted(parentA);\n return fiber;\n }\n\n if (child === b) {\n // We've determined that B is the current branch.\n assertIsMounted(parentA);\n return alternate;\n }\n\n child = child.sibling;\n } // We should never have an alternate for any mounting node. So the only\n // way this could possibly happen is if this was unmounted, if at all.\n\n\n throw new Error('Unable to find node on an unmounted component.');\n }\n\n if (a.return !== b.return) {\n // The return pointer of A and the return pointer of B point to different\n // fibers. We assume that return pointers never criss-cross, so A must\n // belong to the child set of A.return, and B must belong to the child\n // set of B.return.\n a = parentA;\n b = parentB;\n } else {\n // The return pointers point to the same fiber. We'll have to use the\n // default, slow path: scan the child sets of each parent alternate to see\n // which child belongs to which set.\n //\n // Search parent A's child set\n var didFindChild = false;\n var _child = parentA.child;\n\n while (_child) {\n if (_child === a) {\n didFindChild = true;\n a = parentA;\n b = parentB;\n break;\n }\n\n if (_child === b) {\n didFindChild = true;\n b = parentA;\n a = parentB;\n break;\n }\n\n _child = _child.sibling;\n }\n\n if (!didFindChild) {\n // Search parent B's child set\n _child = parentB.child;\n\n while (_child) {\n if (_child === a) {\n didFindChild = true;\n a = parentB;\n b = parentA;\n break;\n }\n\n if (_child === b) {\n didFindChild = true;\n b = parentB;\n a = parentA;\n break;\n }\n\n _child = _child.sibling;\n }\n\n if (!didFindChild) {\n throw new Error('Child was not found in either parent set. This indicates a bug ' + 'in React related to the return pointer. Please file an issue.');\n }\n }\n }\n\n if (a.alternate !== b) {\n throw new Error(\"Return fibers should always be each others' alternates. \" + 'This error is likely caused by a bug in React. Please file an issue.');\n }\n } // If the root is not a host container, we're in a disconnected tree. I.e.\n // unmounted.\n\n\n if (a.tag !== HostRoot) {\n throw new Error('Unable to find node on an unmounted component.');\n }\n\n if (a.stateNode.current === a) {\n // We've determined that A is the current branch.\n return fiber;\n } // Otherwise B has to be current branch.\n\n\n return alternate;\n}\nfunction findCurrentHostFiber(parent) {\n var currentParent = findCurrentFiberUsingSlowPath(parent);\n return currentParent !== null ? findCurrentHostFiberImpl(currentParent) : null;\n}\n\nfunction findCurrentHostFiberImpl(node) {\n // Next we'll drill down this component to find the first HostComponent/Text.\n if (node.tag === HostComponent || node.tag === HostText) {\n return node;\n }\n\n var child = node.child;\n\n while (child !== null) {\n var match = findCurrentHostFiberImpl(child);\n\n if (match !== null) {\n return match;\n }\n\n child = child.sibling;\n }\n\n return null;\n}\n\nfunction findCurrentHostFiberWithNoPortals(parent) {\n var currentParent = findCurrentFiberUsingSlowPath(parent);\n return currentParent !== null ? findCurrentHostFiberWithNoPortalsImpl(currentParent) : null;\n}\n\nfunction findCurrentHostFiberWithNoPortalsImpl(node) {\n // Next we'll drill down this component to find the first HostComponent/Text.\n if (node.tag === HostComponent || node.tag === HostText) {\n return node;\n }\n\n var child = node.child;\n\n while (child !== null) {\n if (child.tag !== HostPortal) {\n var match = findCurrentHostFiberWithNoPortalsImpl(child);\n\n if (match !== null) {\n return match;\n }\n }\n\n child = child.sibling;\n }\n\n return null;\n}\n\n// This module only exists as an ESM wrapper around the external CommonJS\nvar scheduleCallback = Scheduler.unstable_scheduleCallback;\nvar cancelCallback = Scheduler.unstable_cancelCallback;\nvar shouldYield = Scheduler.unstable_shouldYield;\nvar requestPaint = Scheduler.unstable_requestPaint;\nvar now = Scheduler.unstable_now;\nvar getCurrentPriorityLevel = Scheduler.unstable_getCurrentPriorityLevel;\nvar ImmediatePriority = Scheduler.unstable_ImmediatePriority;\nvar UserBlockingPriority = Scheduler.unstable_UserBlockingPriority;\nvar NormalPriority = Scheduler.unstable_NormalPriority;\nvar LowPriority = Scheduler.unstable_LowPriority;\nvar IdlePriority = Scheduler.unstable_IdlePriority;\n// this doesn't actually exist on the scheduler, but it *does*\n// on scheduler/unstable_mock, which we'll need for internal testing\nvar unstable_yieldValue = Scheduler.unstable_yieldValue;\nvar unstable_setDisableYieldValue = Scheduler.unstable_setDisableYieldValue;\n\nvar rendererID = null;\nvar injectedHook = null;\nvar injectedProfilingHooks = null;\nvar hasLoggedError = false;\nvar isDevToolsPresent = typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined';\nfunction injectInternals(internals) {\n if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined') {\n // No DevTools\n return false;\n }\n\n var hook = __REACT_DEVTOOLS_GLOBAL_HOOK__;\n\n if (hook.isDisabled) {\n // This isn't a real property on the hook, but it can be set to opt out\n // of DevTools integration and associated warnings and logs.\n // https://github.com/facebook/react/issues/3877\n return true;\n }\n\n if (!hook.supportsFiber) {\n {\n error('The installed version of React DevTools is too old and will not work ' + 'with the current version of React. Please update React DevTools. ' + 'https://reactjs.org/link/react-devtools');\n } // DevTools exists, even though it doesn't support Fiber.\n\n\n return true;\n }\n\n try {\n if (enableSchedulingProfiler) {\n // Conditionally inject these hooks only if Timeline profiler is supported by this build.\n // This gives DevTools a way to feature detect that isn't tied to version number\n // (since profiling and timeline are controlled by different feature flags).\n internals = assign({}, internals, {\n getLaneLabelMap: getLaneLabelMap,\n injectProfilingHooks: injectProfilingHooks\n });\n }\n\n rendererID = hook.inject(internals); // We have successfully injected, so now it is safe to set up hooks.\n\n injectedHook = hook;\n } catch (err) {\n // Catch all errors because it is unsafe to throw during initialization.\n {\n error('React instrumentation encountered an error: %s.', err);\n }\n }\n\n if (hook.checkDCE) {\n // This is the real DevTools.\n return true;\n } else {\n // This is likely a hook installed by Fast Refresh runtime.\n return false;\n }\n}\nfunction onScheduleRoot(root, children) {\n {\n if (injectedHook && typeof injectedHook.onScheduleFiberRoot === 'function') {\n try {\n injectedHook.onScheduleFiberRoot(rendererID, root, children);\n } catch (err) {\n if ( !hasLoggedError) {\n hasLoggedError = true;\n\n error('React instrumentation encountered an error: %s', err);\n }\n }\n }\n }\n}\nfunction onCommitRoot(root, eventPriority) {\n if (injectedHook && typeof injectedHook.onCommitFiberRoot === 'function') {\n try {\n var didError = (root.current.flags & DidCapture) === DidCapture;\n\n if (enableProfilerTimer) {\n var schedulerPriority;\n\n switch (eventPriority) {\n case DiscreteEventPriority:\n schedulerPriority = ImmediatePriority;\n break;\n\n case ContinuousEventPriority:\n schedulerPriority = UserBlockingPriority;\n break;\n\n case DefaultEventPriority:\n schedulerPriority = NormalPriority;\n break;\n\n case IdleEventPriority:\n schedulerPriority = IdlePriority;\n break;\n\n default:\n schedulerPriority = NormalPriority;\n break;\n }\n\n injectedHook.onCommitFiberRoot(rendererID, root, schedulerPriority, didError);\n } else {\n injectedHook.onCommitFiberRoot(rendererID, root, undefined, didError);\n }\n } catch (err) {\n {\n if (!hasLoggedError) {\n hasLoggedError = true;\n\n error('React instrumentation encountered an error: %s', err);\n }\n }\n }\n }\n}\nfunction onPostCommitRoot(root) {\n if (injectedHook && typeof injectedHook.onPostCommitFiberRoot === 'function') {\n try {\n injectedHook.onPostCommitFiberRoot(rendererID, root);\n } catch (err) {\n {\n if (!hasLoggedError) {\n hasLoggedError = true;\n\n error('React instrumentation encountered an error: %s', err);\n }\n }\n }\n }\n}\nfunction onCommitUnmount(fiber) {\n if (injectedHook && typeof injectedHook.onCommitFiberUnmount === 'function') {\n try {\n injectedHook.onCommitFiberUnmount(rendererID, fiber);\n } catch (err) {\n {\n if (!hasLoggedError) {\n hasLoggedError = true;\n\n error('React instrumentation encountered an error: %s', err);\n }\n }\n }\n }\n}\nfunction setIsStrictModeForDevtools(newIsStrictMode) {\n {\n if (typeof unstable_yieldValue === 'function') {\n // We're in a test because Scheduler.unstable_yieldValue only exists\n // in SchedulerMock. To reduce the noise in strict mode tests,\n // suppress warnings and disable scheduler yielding during the double render\n unstable_setDisableYieldValue(newIsStrictMode);\n setSuppressWarning(newIsStrictMode);\n }\n\n if (injectedHook && typeof injectedHook.setStrictMode === 'function') {\n try {\n injectedHook.setStrictMode(rendererID, newIsStrictMode);\n } catch (err) {\n {\n if (!hasLoggedError) {\n hasLoggedError = true;\n\n error('React instrumentation encountered an error: %s', err);\n }\n }\n }\n }\n }\n} // Profiler API hooks\n\nfunction injectProfilingHooks(profilingHooks) {\n injectedProfilingHooks = profilingHooks;\n}\n\nfunction getLaneLabelMap() {\n {\n var map = new Map();\n var lane = 1;\n\n for (var index = 0; index < TotalLanes; index++) {\n var label = getLabelForLane(lane);\n map.set(lane, label);\n lane *= 2;\n }\n\n return map;\n }\n}\n\nfunction markCommitStarted(lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markCommitStarted === 'function') {\n injectedProfilingHooks.markCommitStarted(lanes);\n }\n }\n}\nfunction markCommitStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markCommitStopped === 'function') {\n injectedProfilingHooks.markCommitStopped();\n }\n }\n}\nfunction markComponentRenderStarted(fiber) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentRenderStarted === 'function') {\n injectedProfilingHooks.markComponentRenderStarted(fiber);\n }\n }\n}\nfunction markComponentRenderStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentRenderStopped === 'function') {\n injectedProfilingHooks.markComponentRenderStopped();\n }\n }\n}\nfunction markComponentPassiveEffectMountStarted(fiber) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectMountStarted === 'function') {\n injectedProfilingHooks.markComponentPassiveEffectMountStarted(fiber);\n }\n }\n}\nfunction markComponentPassiveEffectMountStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectMountStopped === 'function') {\n injectedProfilingHooks.markComponentPassiveEffectMountStopped();\n }\n }\n}\nfunction markComponentPassiveEffectUnmountStarted(fiber) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectUnmountStarted === 'function') {\n injectedProfilingHooks.markComponentPassiveEffectUnmountStarted(fiber);\n }\n }\n}\nfunction markComponentPassiveEffectUnmountStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectUnmountStopped === 'function') {\n injectedProfilingHooks.markComponentPassiveEffectUnmountStopped();\n }\n }\n}\nfunction markComponentLayoutEffectMountStarted(fiber) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectMountStarted === 'function') {\n injectedProfilingHooks.markComponentLayoutEffectMountStarted(fiber);\n }\n }\n}\nfunction markComponentLayoutEffectMountStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectMountStopped === 'function') {\n injectedProfilingHooks.markComponentLayoutEffectMountStopped();\n }\n }\n}\nfunction markComponentLayoutEffectUnmountStarted(fiber) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectUnmountStarted === 'function') {\n injectedProfilingHooks.markComponentLayoutEffectUnmountStarted(fiber);\n }\n }\n}\nfunction markComponentLayoutEffectUnmountStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectUnmountStopped === 'function') {\n injectedProfilingHooks.markComponentLayoutEffectUnmountStopped();\n }\n }\n}\nfunction markComponentErrored(fiber, thrownValue, lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentErrored === 'function') {\n injectedProfilingHooks.markComponentErrored(fiber, thrownValue, lanes);\n }\n }\n}\nfunction markComponentSuspended(fiber, wakeable, lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentSuspended === 'function') {\n injectedProfilingHooks.markComponentSuspended(fiber, wakeable, lanes);\n }\n }\n}\nfunction markLayoutEffectsStarted(lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markLayoutEffectsStarted === 'function') {\n injectedProfilingHooks.markLayoutEffectsStarted(lanes);\n }\n }\n}\nfunction markLayoutEffectsStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markLayoutEffectsStopped === 'function') {\n injectedProfilingHooks.markLayoutEffectsStopped();\n }\n }\n}\nfunction markPassiveEffectsStarted(lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markPassiveEffectsStarted === 'function') {\n injectedProfilingHooks.markPassiveEffectsStarted(lanes);\n }\n }\n}\nfunction markPassiveEffectsStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markPassiveEffectsStopped === 'function') {\n injectedProfilingHooks.markPassiveEffectsStopped();\n }\n }\n}\nfunction markRenderStarted(lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderStarted === 'function') {\n injectedProfilingHooks.markRenderStarted(lanes);\n }\n }\n}\nfunction markRenderYielded() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderYielded === 'function') {\n injectedProfilingHooks.markRenderYielded();\n }\n }\n}\nfunction markRenderStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderStopped === 'function') {\n injectedProfilingHooks.markRenderStopped();\n }\n }\n}\nfunction markRenderScheduled(lane) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderScheduled === 'function') {\n injectedProfilingHooks.markRenderScheduled(lane);\n }\n }\n}\nfunction markForceUpdateScheduled(fiber, lane) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markForceUpdateScheduled === 'function') {\n injectedProfilingHooks.markForceUpdateScheduled(fiber, lane);\n }\n }\n}\nfunction markStateUpdateScheduled(fiber, lane) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markStateUpdateScheduled === 'function') {\n injectedProfilingHooks.markStateUpdateScheduled(fiber, lane);\n }\n }\n}\n\nvar NoMode =\n/* */\n0; // TODO: Remove ConcurrentMode by reading from the root tag instead\n\nvar ConcurrentMode =\n/* */\n1;\nvar ProfileMode =\n/* */\n2;\nvar StrictLegacyMode =\n/* */\n8;\nvar StrictEffectsMode =\n/* */\n16;\n\n// TODO: This is pretty well supported by browsers. Maybe we can drop it.\nvar clz32 = Math.clz32 ? Math.clz32 : clz32Fallback; // Count leading zeros.\n// Based on:\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/clz32\n\nvar log = Math.log;\nvar LN2 = Math.LN2;\n\nfunction clz32Fallback(x) {\n var asUint = x >>> 0;\n\n if (asUint === 0) {\n return 32;\n }\n\n return 31 - (log(asUint) / LN2 | 0) | 0;\n}\n\n// If those values are changed that package should be rebuilt and redeployed.\n\nvar TotalLanes = 31;\nvar NoLanes =\n/* */\n0;\nvar NoLane =\n/* */\n0;\nvar SyncLane =\n/* */\n1;\nvar InputContinuousHydrationLane =\n/* */\n2;\nvar InputContinuousLane =\n/* */\n4;\nvar DefaultHydrationLane =\n/* */\n8;\nvar DefaultLane =\n/* */\n16;\nvar TransitionHydrationLane =\n/* */\n32;\nvar TransitionLanes =\n/* */\n4194240;\nvar TransitionLane1 =\n/* */\n64;\nvar TransitionLane2 =\n/* */\n128;\nvar TransitionLane3 =\n/* */\n256;\nvar TransitionLane4 =\n/* */\n512;\nvar TransitionLane5 =\n/* */\n1024;\nvar TransitionLane6 =\n/* */\n2048;\nvar TransitionLane7 =\n/* */\n4096;\nvar TransitionLane8 =\n/* */\n8192;\nvar TransitionLane9 =\n/* */\n16384;\nvar TransitionLane10 =\n/* */\n32768;\nvar TransitionLane11 =\n/* */\n65536;\nvar TransitionLane12 =\n/* */\n131072;\nvar TransitionLane13 =\n/* */\n262144;\nvar TransitionLane14 =\n/* */\n524288;\nvar TransitionLane15 =\n/* */\n1048576;\nvar TransitionLane16 =\n/* */\n2097152;\nvar RetryLanes =\n/* */\n130023424;\nvar RetryLane1 =\n/* */\n4194304;\nvar RetryLane2 =\n/* */\n8388608;\nvar RetryLane3 =\n/* */\n16777216;\nvar RetryLane4 =\n/* */\n33554432;\nvar RetryLane5 =\n/* */\n67108864;\nvar SomeRetryLane = RetryLane1;\nvar SelectiveHydrationLane =\n/* */\n134217728;\nvar NonIdleLanes =\n/* */\n268435455;\nvar IdleHydrationLane =\n/* */\n268435456;\nvar IdleLane =\n/* */\n536870912;\nvar OffscreenLane =\n/* */\n1073741824; // This function is used for the experimental timeline (react-devtools-timeline)\n// It should be kept in sync with the Lanes values above.\n\nfunction getLabelForLane(lane) {\n {\n if (lane & SyncLane) {\n return 'Sync';\n }\n\n if (lane & InputContinuousHydrationLane) {\n return 'InputContinuousHydration';\n }\n\n if (lane & InputContinuousLane) {\n return 'InputContinuous';\n }\n\n if (lane & DefaultHydrationLane) {\n return 'DefaultHydration';\n }\n\n if (lane & DefaultLane) {\n return 'Default';\n }\n\n if (lane & TransitionHydrationLane) {\n return 'TransitionHydration';\n }\n\n if (lane & TransitionLanes) {\n return 'Transition';\n }\n\n if (lane & RetryLanes) {\n return 'Retry';\n }\n\n if (lane & SelectiveHydrationLane) {\n return 'SelectiveHydration';\n }\n\n if (lane & IdleHydrationLane) {\n return 'IdleHydration';\n }\n\n if (lane & IdleLane) {\n return 'Idle';\n }\n\n if (lane & OffscreenLane) {\n return 'Offscreen';\n }\n }\n}\nvar NoTimestamp = -1;\nvar nextTransitionLane = TransitionLane1;\nvar nextRetryLane = RetryLane1;\n\nfunction getHighestPriorityLanes(lanes) {\n switch (getHighestPriorityLane(lanes)) {\n case SyncLane:\n return SyncLane;\n\n case InputContinuousHydrationLane:\n return InputContinuousHydrationLane;\n\n case InputContinuousLane:\n return InputContinuousLane;\n\n case DefaultHydrationLane:\n return DefaultHydrationLane;\n\n case DefaultLane:\n return DefaultLane;\n\n case TransitionHydrationLane:\n return TransitionHydrationLane;\n\n case TransitionLane1:\n case TransitionLane2:\n case TransitionLane3:\n case TransitionLane4:\n case TransitionLane5:\n case TransitionLane6:\n case TransitionLane7:\n case TransitionLane8:\n case TransitionLane9:\n case TransitionLane10:\n case TransitionLane11:\n case TransitionLane12:\n case TransitionLane13:\n case TransitionLane14:\n case TransitionLane15:\n case TransitionLane16:\n return lanes & TransitionLanes;\n\n case RetryLane1:\n case RetryLane2:\n case RetryLane3:\n case RetryLane4:\n case RetryLane5:\n return lanes & RetryLanes;\n\n case SelectiveHydrationLane:\n return SelectiveHydrationLane;\n\n case IdleHydrationLane:\n return IdleHydrationLane;\n\n case IdleLane:\n return IdleLane;\n\n case OffscreenLane:\n return OffscreenLane;\n\n default:\n {\n error('Should have found matching lanes. This is a bug in React.');\n } // This shouldn't be reachable, but as a fallback, return the entire bitmask.\n\n\n return lanes;\n }\n}\n\nfunction getNextLanes(root, wipLanes) {\n // Early bailout if there's no pending work left.\n var pendingLanes = root.pendingLanes;\n\n if (pendingLanes === NoLanes) {\n return NoLanes;\n }\n\n var nextLanes = NoLanes;\n var suspendedLanes = root.suspendedLanes;\n var pingedLanes = root.pingedLanes; // Do not work on any idle work until all the non-idle work has finished,\n // even if the work is suspended.\n\n var nonIdlePendingLanes = pendingLanes & NonIdleLanes;\n\n if (nonIdlePendingLanes !== NoLanes) {\n var nonIdleUnblockedLanes = nonIdlePendingLanes & ~suspendedLanes;\n\n if (nonIdleUnblockedLanes !== NoLanes) {\n nextLanes = getHighestPriorityLanes(nonIdleUnblockedLanes);\n } else {\n var nonIdlePingedLanes = nonIdlePendingLanes & pingedLanes;\n\n if (nonIdlePingedLanes !== NoLanes) {\n nextLanes = getHighestPriorityLanes(nonIdlePingedLanes);\n }\n }\n } else {\n // The only remaining work is Idle.\n var unblockedLanes = pendingLanes & ~suspendedLanes;\n\n if (unblockedLanes !== NoLanes) {\n nextLanes = getHighestPriorityLanes(unblockedLanes);\n } else {\n if (pingedLanes !== NoLanes) {\n nextLanes = getHighestPriorityLanes(pingedLanes);\n }\n }\n }\n\n if (nextLanes === NoLanes) {\n // This should only be reachable if we're suspended\n // TODO: Consider warning in this path if a fallback timer is not scheduled.\n return NoLanes;\n } // If we're already in the middle of a render, switching lanes will interrupt\n // it and we'll lose our progress. We should only do this if the new lanes are\n // higher priority.\n\n\n if (wipLanes !== NoLanes && wipLanes !== nextLanes && // If we already suspended with a delay, then interrupting is fine. Don't\n // bother waiting until the root is complete.\n (wipLanes & suspendedLanes) === NoLanes) {\n var nextLane = getHighestPriorityLane(nextLanes);\n var wipLane = getHighestPriorityLane(wipLanes);\n\n if ( // Tests whether the next lane is equal or lower priority than the wip\n // one. This works because the bits decrease in priority as you go left.\n nextLane >= wipLane || // Default priority updates should not interrupt transition updates. The\n // only difference between default updates and transition updates is that\n // default updates do not support refresh transitions.\n nextLane === DefaultLane && (wipLane & TransitionLanes) !== NoLanes) {\n // Keep working on the existing in-progress tree. Do not interrupt.\n return wipLanes;\n }\n }\n\n if ((nextLanes & InputContinuousLane) !== NoLanes) {\n // When updates are sync by default, we entangle continuous priority updates\n // and default updates, so they render in the same batch. The only reason\n // they use separate lanes is because continuous updates should interrupt\n // transitions, but default updates should not.\n nextLanes |= pendingLanes & DefaultLane;\n } // Check for entangled lanes and add them to the batch.\n //\n // A lane is said to be entangled with another when it's not allowed to render\n // in a batch that does not also include the other lane. Typically we do this\n // when multiple updates have the same source, and we only want to respond to\n // the most recent event from that source.\n //\n // Note that we apply entanglements *after* checking for partial work above.\n // This means that if a lane is entangled during an interleaved event while\n // it's already rendering, we won't interrupt it. This is intentional, since\n // entanglement is usually \"best effort\": we'll try our best to render the\n // lanes in the same batch, but it's not worth throwing out partially\n // completed work in order to do it.\n // TODO: Reconsider this. The counter-argument is that the partial work\n // represents an intermediate state, which we don't want to show to the user.\n // And by spending extra time finishing it, we're increasing the amount of\n // time it takes to show the final state, which is what they are actually\n // waiting for.\n //\n // For those exceptions where entanglement is semantically important, like\n // useMutableSource, we should ensure that there is no partial work at the\n // time we apply the entanglement.\n\n\n var entangledLanes = root.entangledLanes;\n\n if (entangledLanes !== NoLanes) {\n var entanglements = root.entanglements;\n var lanes = nextLanes & entangledLanes;\n\n while (lanes > 0) {\n var index = pickArbitraryLaneIndex(lanes);\n var lane = 1 << index;\n nextLanes |= entanglements[index];\n lanes &= ~lane;\n }\n }\n\n return nextLanes;\n}\nfunction getMostRecentEventTime(root, lanes) {\n var eventTimes = root.eventTimes;\n var mostRecentEventTime = NoTimestamp;\n\n while (lanes > 0) {\n var index = pickArbitraryLaneIndex(lanes);\n var lane = 1 << index;\n var eventTime = eventTimes[index];\n\n if (eventTime > mostRecentEventTime) {\n mostRecentEventTime = eventTime;\n }\n\n lanes &= ~lane;\n }\n\n return mostRecentEventTime;\n}\n\nfunction computeExpirationTime(lane, currentTime) {\n switch (lane) {\n case SyncLane:\n case InputContinuousHydrationLane:\n case InputContinuousLane:\n // User interactions should expire slightly more quickly.\n //\n // NOTE: This is set to the corresponding constant as in Scheduler.js.\n // When we made it larger, a product metric in www regressed, suggesting\n // there's a user interaction that's being starved by a series of\n // synchronous updates. If that theory is correct, the proper solution is\n // to fix the starvation. However, this scenario supports the idea that\n // expiration times are an important safeguard when starvation\n // does happen.\n return currentTime + 250;\n\n case DefaultHydrationLane:\n case DefaultLane:\n case TransitionHydrationLane:\n case TransitionLane1:\n case TransitionLane2:\n case TransitionLane3:\n case TransitionLane4:\n case TransitionLane5:\n case TransitionLane6:\n case TransitionLane7:\n case TransitionLane8:\n case TransitionLane9:\n case TransitionLane10:\n case TransitionLane11:\n case TransitionLane12:\n case TransitionLane13:\n case TransitionLane14:\n case TransitionLane15:\n case TransitionLane16:\n return currentTime + 5000;\n\n case RetryLane1:\n case RetryLane2:\n case RetryLane3:\n case RetryLane4:\n case RetryLane5:\n // TODO: Retries should be allowed to expire if they are CPU bound for\n // too long, but when I made this change it caused a spike in browser\n // crashes. There must be some other underlying bug; not super urgent but\n // ideally should figure out why and fix it. Unfortunately we don't have\n // a repro for the crashes, only detected via production metrics.\n return NoTimestamp;\n\n case SelectiveHydrationLane:\n case IdleHydrationLane:\n case IdleLane:\n case OffscreenLane:\n // Anything idle priority or lower should never expire.\n return NoTimestamp;\n\n default:\n {\n error('Should have found matching lanes. This is a bug in React.');\n }\n\n return NoTimestamp;\n }\n}\n\nfunction markStarvedLanesAsExpired(root, currentTime) {\n // TODO: This gets called every time we yield. We can optimize by storing\n // the earliest expiration time on the root. Then use that to quickly bail out\n // of this function.\n var pendingLanes = root.pendingLanes;\n var suspendedLanes = root.suspendedLanes;\n var pingedLanes = root.pingedLanes;\n var expirationTimes = root.expirationTimes; // Iterate through the pending lanes and check if we've reached their\n // expiration time. If so, we'll assume the update is being starved and mark\n // it as expired to force it to finish.\n\n var lanes = pendingLanes;\n\n while (lanes > 0) {\n var index = pickArbitraryLaneIndex(lanes);\n var lane = 1 << index;\n var expirationTime = expirationTimes[index];\n\n if (expirationTime === NoTimestamp) {\n // Found a pending lane with no expiration time. If it's not suspended, or\n // if it's pinged, assume it's CPU-bound. Compute a new expiration time\n // using the current time.\n if ((lane & suspendedLanes) === NoLanes || (lane & pingedLanes) !== NoLanes) {\n // Assumes timestamps are monotonically increasing.\n expirationTimes[index] = computeExpirationTime(lane, currentTime);\n }\n } else if (expirationTime <= currentTime) {\n // This lane expired\n root.expiredLanes |= lane;\n }\n\n lanes &= ~lane;\n }\n} // This returns the highest priority pending lanes regardless of whether they\n// are suspended.\n\nfunction getHighestPriorityPendingLanes(root) {\n return getHighestPriorityLanes(root.pendingLanes);\n}\nfunction getLanesToRetrySynchronouslyOnError(root) {\n var everythingButOffscreen = root.pendingLanes & ~OffscreenLane;\n\n if (everythingButOffscreen !== NoLanes) {\n return everythingButOffscreen;\n }\n\n if (everythingButOffscreen & OffscreenLane) {\n return OffscreenLane;\n }\n\n return NoLanes;\n}\nfunction includesSyncLane(lanes) {\n return (lanes & SyncLane) !== NoLanes;\n}\nfunction includesNonIdleWork(lanes) {\n return (lanes & NonIdleLanes) !== NoLanes;\n}\nfunction includesOnlyRetries(lanes) {\n return (lanes & RetryLanes) === lanes;\n}\nfunction includesOnlyNonUrgentLanes(lanes) {\n var UrgentLanes = SyncLane | InputContinuousLane | DefaultLane;\n return (lanes & UrgentLanes) === NoLanes;\n}\nfunction includesOnlyTransitions(lanes) {\n return (lanes & TransitionLanes) === lanes;\n}\nfunction includesBlockingLane(root, lanes) {\n\n var SyncDefaultLanes = InputContinuousHydrationLane | InputContinuousLane | DefaultHydrationLane | DefaultLane;\n return (lanes & SyncDefaultLanes) !== NoLanes;\n}\nfunction includesExpiredLane(root, lanes) {\n // This is a separate check from includesBlockingLane because a lane can\n // expire after a render has already started.\n return (lanes & root.expiredLanes) !== NoLanes;\n}\nfunction isTransitionLane(lane) {\n return (lane & TransitionLanes) !== NoLanes;\n}\nfunction claimNextTransitionLane() {\n // Cycle through the lanes, assigning each new transition to the next lane.\n // In most cases, this means every transition gets its own lane, until we\n // run out of lanes and cycle back to the beginning.\n var lane = nextTransitionLane;\n nextTransitionLane <<= 1;\n\n if ((nextTransitionLane & TransitionLanes) === NoLanes) {\n nextTransitionLane = TransitionLane1;\n }\n\n return lane;\n}\nfunction claimNextRetryLane() {\n var lane = nextRetryLane;\n nextRetryLane <<= 1;\n\n if ((nextRetryLane & RetryLanes) === NoLanes) {\n nextRetryLane = RetryLane1;\n }\n\n return lane;\n}\nfunction getHighestPriorityLane(lanes) {\n return lanes & -lanes;\n}\nfunction pickArbitraryLane(lanes) {\n // This wrapper function gets inlined. Only exists so to communicate that it\n // doesn't matter which bit is selected; you can pick any bit without\n // affecting the algorithms where its used. Here I'm using\n // getHighestPriorityLane because it requires the fewest operations.\n return getHighestPriorityLane(lanes);\n}\n\nfunction pickArbitraryLaneIndex(lanes) {\n return 31 - clz32(lanes);\n}\n\nfunction laneToIndex(lane) {\n return pickArbitraryLaneIndex(lane);\n}\n\nfunction includesSomeLane(a, b) {\n return (a & b) !== NoLanes;\n}\nfunction isSubsetOfLanes(set, subset) {\n return (set & subset) === subset;\n}\nfunction mergeLanes(a, b) {\n return a | b;\n}\nfunction removeLanes(set, subset) {\n return set & ~subset;\n}\nfunction intersectLanes(a, b) {\n return a & b;\n} // Seems redundant, but it changes the type from a single lane (used for\n// updates) to a group of lanes (used for flushing work).\n\nfunction laneToLanes(lane) {\n return lane;\n}\nfunction higherPriorityLane(a, b) {\n // This works because the bit ranges decrease in priority as you go left.\n return a !== NoLane && a < b ? a : b;\n}\nfunction createLaneMap(initial) {\n // Intentionally pushing one by one.\n // https://v8.dev/blog/elements-kinds#avoid-creating-holes\n var laneMap = [];\n\n for (var i = 0; i < TotalLanes; i++) {\n laneMap.push(initial);\n }\n\n return laneMap;\n}\nfunction markRootUpdated(root, updateLane, eventTime) {\n root.pendingLanes |= updateLane; // If there are any suspended transitions, it's possible this new update\n // could unblock them. Clear the suspended lanes so that we can try rendering\n // them again.\n //\n // TODO: We really only need to unsuspend only lanes that are in the\n // `subtreeLanes` of the updated fiber, or the update lanes of the return\n // path. This would exclude suspended updates in an unrelated sibling tree,\n // since there's no way for this update to unblock it.\n //\n // We don't do this if the incoming update is idle, because we never process\n // idle updates until after all the regular updates have finished; there's no\n // way it could unblock a transition.\n\n if (updateLane !== IdleLane) {\n root.suspendedLanes = NoLanes;\n root.pingedLanes = NoLanes;\n }\n\n var eventTimes = root.eventTimes;\n var index = laneToIndex(updateLane); // We can always overwrite an existing timestamp because we prefer the most\n // recent event, and we assume time is monotonically increasing.\n\n eventTimes[index] = eventTime;\n}\nfunction markRootSuspended(root, suspendedLanes) {\n root.suspendedLanes |= suspendedLanes;\n root.pingedLanes &= ~suspendedLanes; // The suspended lanes are no longer CPU-bound. Clear their expiration times.\n\n var expirationTimes = root.expirationTimes;\n var lanes = suspendedLanes;\n\n while (lanes > 0) {\n var index = pickArbitraryLaneIndex(lanes);\n var lane = 1 << index;\n expirationTimes[index] = NoTimestamp;\n lanes &= ~lane;\n }\n}\nfunction markRootPinged(root, pingedLanes, eventTime) {\n root.pingedLanes |= root.suspendedLanes & pingedLanes;\n}\nfunction markRootFinished(root, remainingLanes) {\n var noLongerPendingLanes = root.pendingLanes & ~remainingLanes;\n root.pendingLanes = remainingLanes; // Let's try everything again\n\n root.suspendedLanes = NoLanes;\n root.pingedLanes = NoLanes;\n root.expiredLanes &= remainingLanes;\n root.mutableReadLanes &= remainingLanes;\n root.entangledLanes &= remainingLanes;\n var entanglements = root.entanglements;\n var eventTimes = root.eventTimes;\n var expirationTimes = root.expirationTimes; // Clear the lanes that no longer have pending work\n\n var lanes = noLongerPendingLanes;\n\n while (lanes > 0) {\n var index = pickArbitraryLaneIndex(lanes);\n var lane = 1 << index;\n entanglements[index] = NoLanes;\n eventTimes[index] = NoTimestamp;\n expirationTimes[index] = NoTimestamp;\n lanes &= ~lane;\n }\n}\nfunction markRootEntangled(root, entangledLanes) {\n // In addition to entangling each of the given lanes with each other, we also\n // have to consider _transitive_ entanglements. For each lane that is already\n // entangled with *any* of the given lanes, that lane is now transitively\n // entangled with *all* the given lanes.\n //\n // Translated: If C is entangled with A, then entangling A with B also\n // entangles C with B.\n //\n // If this is hard to grasp, it might help to intentionally break this\n // function and look at the tests that fail in ReactTransition-test.js. Try\n // commenting out one of the conditions below.\n var rootEntangledLanes = root.entangledLanes |= entangledLanes;\n var entanglements = root.entanglements;\n var lanes = rootEntangledLanes;\n\n while (lanes) {\n var index = pickArbitraryLaneIndex(lanes);\n var lane = 1 << index;\n\n if ( // Is this one of the newly entangled lanes?\n lane & entangledLanes | // Is this lane transitively entangled with the newly entangled lanes?\n entanglements[index] & entangledLanes) {\n entanglements[index] |= entangledLanes;\n }\n\n lanes &= ~lane;\n }\n}\nfunction getBumpedLaneForHydration(root, renderLanes) {\n var renderLane = getHighestPriorityLane(renderLanes);\n var lane;\n\n switch (renderLane) {\n case InputContinuousLane:\n lane = InputContinuousHydrationLane;\n break;\n\n case DefaultLane:\n lane = DefaultHydrationLane;\n break;\n\n case TransitionLane1:\n case TransitionLane2:\n case TransitionLane3:\n case TransitionLane4:\n case TransitionLane5:\n case TransitionLane6:\n case TransitionLane7:\n case TransitionLane8:\n case TransitionLane9:\n case TransitionLane10:\n case TransitionLane11:\n case TransitionLane12:\n case TransitionLane13:\n case TransitionLane14:\n case TransitionLane15:\n case TransitionLane16:\n case RetryLane1:\n case RetryLane2:\n case RetryLane3:\n case RetryLane4:\n case RetryLane5:\n lane = TransitionHydrationLane;\n break;\n\n case IdleLane:\n lane = IdleHydrationLane;\n break;\n\n default:\n // Everything else is already either a hydration lane, or shouldn't\n // be retried at a hydration lane.\n lane = NoLane;\n break;\n } // Check if the lane we chose is suspended. If so, that indicates that we\n // already attempted and failed to hydrate at that level. Also check if we're\n // already rendering that lane, which is rare but could happen.\n\n\n if ((lane & (root.suspendedLanes | renderLanes)) !== NoLane) {\n // Give up trying to hydrate and fall back to client render.\n return NoLane;\n }\n\n return lane;\n}\nfunction addFiberToLanesMap(root, fiber, lanes) {\n\n if (!isDevToolsPresent) {\n return;\n }\n\n var pendingUpdatersLaneMap = root.pendingUpdatersLaneMap;\n\n while (lanes > 0) {\n var index = laneToIndex(lanes);\n var lane = 1 << index;\n var updaters = pendingUpdatersLaneMap[index];\n updaters.add(fiber);\n lanes &= ~lane;\n }\n}\nfunction movePendingFibersToMemoized(root, lanes) {\n\n if (!isDevToolsPresent) {\n return;\n }\n\n var pendingUpdatersLaneMap = root.pendingUpdatersLaneMap;\n var memoizedUpdaters = root.memoizedUpdaters;\n\n while (lanes > 0) {\n var index = laneToIndex(lanes);\n var lane = 1 << index;\n var updaters = pendingUpdatersLaneMap[index];\n\n if (updaters.size > 0) {\n updaters.forEach(function (fiber) {\n var alternate = fiber.alternate;\n\n if (alternate === null || !memoizedUpdaters.has(alternate)) {\n memoizedUpdaters.add(fiber);\n }\n });\n updaters.clear();\n }\n\n lanes &= ~lane;\n }\n}\nfunction getTransitionsForLanes(root, lanes) {\n {\n return null;\n }\n}\n\nvar DiscreteEventPriority = SyncLane;\nvar ContinuousEventPriority = InputContinuousLane;\nvar DefaultEventPriority = DefaultLane;\nvar IdleEventPriority = IdleLane;\nvar currentUpdatePriority = NoLane;\nfunction getCurrentUpdatePriority() {\n return currentUpdatePriority;\n}\nfunction setCurrentUpdatePriority(newPriority) {\n currentUpdatePriority = newPriority;\n}\nfunction runWithPriority(priority, fn) {\n var previousPriority = currentUpdatePriority;\n\n try {\n currentUpdatePriority = priority;\n return fn();\n } finally {\n currentUpdatePriority = previousPriority;\n }\n}\nfunction higherEventPriority(a, b) {\n return a !== 0 && a < b ? a : b;\n}\nfunction lowerEventPriority(a, b) {\n return a === 0 || a > b ? a : b;\n}\nfunction isHigherEventPriority(a, b) {\n return a !== 0 && a < b;\n}\nfunction lanesToEventPriority(lanes) {\n var lane = getHighestPriorityLane(lanes);\n\n if (!isHigherEventPriority(DiscreteEventPriority, lane)) {\n return DiscreteEventPriority;\n }\n\n if (!isHigherEventPriority(ContinuousEventPriority, lane)) {\n return ContinuousEventPriority;\n }\n\n if (includesNonIdleWork(lane)) {\n return DefaultEventPriority;\n }\n\n return IdleEventPriority;\n}\n\n// This is imported by the event replaying implementation in React DOM. It's\n// in a separate file to break a circular dependency between the renderer and\n// the reconciler.\nfunction isRootDehydrated(root) {\n var currentState = root.current.memoizedState;\n return currentState.isDehydrated;\n}\n\nvar _attemptSynchronousHydration;\n\nfunction setAttemptSynchronousHydration(fn) {\n _attemptSynchronousHydration = fn;\n}\nfunction attemptSynchronousHydration(fiber) {\n _attemptSynchronousHydration(fiber);\n}\nvar attemptContinuousHydration;\nfunction setAttemptContinuousHydration(fn) {\n attemptContinuousHydration = fn;\n}\nvar attemptHydrationAtCurrentPriority;\nfunction setAttemptHydrationAtCurrentPriority(fn) {\n attemptHydrationAtCurrentPriority = fn;\n}\nvar getCurrentUpdatePriority$1;\nfunction setGetCurrentUpdatePriority(fn) {\n getCurrentUpdatePriority$1 = fn;\n}\nvar attemptHydrationAtPriority;\nfunction setAttemptHydrationAtPriority(fn) {\n attemptHydrationAtPriority = fn;\n} // TODO: Upgrade this definition once we're on a newer version of Flow that\n// has this definition built-in.\n\nvar hasScheduledReplayAttempt = false; // The queue of discrete events to be replayed.\n\nvar queuedDiscreteEvents = []; // Indicates if any continuous event targets are non-null for early bailout.\n// if the last target was dehydrated.\n\nvar queuedFocus = null;\nvar queuedDrag = null;\nvar queuedMouse = null; // For pointer events there can be one latest event per pointerId.\n\nvar queuedPointers = new Map();\nvar queuedPointerCaptures = new Map(); // We could consider replaying selectionchange and touchmoves too.\n\nvar queuedExplicitHydrationTargets = [];\nvar discreteReplayableEvents = ['mousedown', 'mouseup', 'touchcancel', 'touchend', 'touchstart', 'auxclick', 'dblclick', 'pointercancel', 'pointerdown', 'pointerup', 'dragend', 'dragstart', 'drop', 'compositionend', 'compositionstart', 'keydown', 'keypress', 'keyup', 'input', 'textInput', // Intentionally camelCase\n'copy', 'cut', 'paste', 'click', 'change', 'contextmenu', 'reset', 'submit'];\nfunction isDiscreteEventThatRequiresHydration(eventType) {\n return discreteReplayableEvents.indexOf(eventType) > -1;\n}\n\nfunction createQueuedReplayableEvent(blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent) {\n return {\n blockedOn: blockedOn,\n domEventName: domEventName,\n eventSystemFlags: eventSystemFlags,\n nativeEvent: nativeEvent,\n targetContainers: [targetContainer]\n };\n}\n\nfunction clearIfContinuousEvent(domEventName, nativeEvent) {\n switch (domEventName) {\n case 'focusin':\n case 'focusout':\n queuedFocus = null;\n break;\n\n case 'dragenter':\n case 'dragleave':\n queuedDrag = null;\n break;\n\n case 'mouseover':\n case 'mouseout':\n queuedMouse = null;\n break;\n\n case 'pointerover':\n case 'pointerout':\n {\n var pointerId = nativeEvent.pointerId;\n queuedPointers.delete(pointerId);\n break;\n }\n\n case 'gotpointercapture':\n case 'lostpointercapture':\n {\n var _pointerId = nativeEvent.pointerId;\n queuedPointerCaptures.delete(_pointerId);\n break;\n }\n }\n}\n\nfunction accumulateOrCreateContinuousQueuedReplayableEvent(existingQueuedEvent, blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent) {\n if (existingQueuedEvent === null || existingQueuedEvent.nativeEvent !== nativeEvent) {\n var queuedEvent = createQueuedReplayableEvent(blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent);\n\n if (blockedOn !== null) {\n var _fiber2 = getInstanceFromNode(blockedOn);\n\n if (_fiber2 !== null) {\n // Attempt to increase the priority of this target.\n attemptContinuousHydration(_fiber2);\n }\n }\n\n return queuedEvent;\n } // If we have already queued this exact event, then it's because\n // the different event systems have different DOM event listeners.\n // We can accumulate the flags, and the targetContainers, and\n // store a single event to be replayed.\n\n\n existingQueuedEvent.eventSystemFlags |= eventSystemFlags;\n var targetContainers = existingQueuedEvent.targetContainers;\n\n if (targetContainer !== null && targetContainers.indexOf(targetContainer) === -1) {\n targetContainers.push(targetContainer);\n }\n\n return existingQueuedEvent;\n}\n\nfunction queueIfContinuousEvent(blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent) {\n // These set relatedTarget to null because the replayed event will be treated as if we\n // moved from outside the window (no target) onto the target once it hydrates.\n // Instead of mutating we could clone the event.\n switch (domEventName) {\n case 'focusin':\n {\n var focusEvent = nativeEvent;\n queuedFocus = accumulateOrCreateContinuousQueuedReplayableEvent(queuedFocus, blockedOn, domEventName, eventSystemFlags, targetContainer, focusEvent);\n return true;\n }\n\n case 'dragenter':\n {\n var dragEvent = nativeEvent;\n queuedDrag = accumulateOrCreateContinuousQueuedReplayableEvent(queuedDrag, blockedOn, domEventName, eventSystemFlags, targetContainer, dragEvent);\n return true;\n }\n\n case 'mouseover':\n {\n var mouseEvent = nativeEvent;\n queuedMouse = accumulateOrCreateContinuousQueuedReplayableEvent(queuedMouse, blockedOn, domEventName, eventSystemFlags, targetContainer, mouseEvent);\n return true;\n }\n\n case 'pointerover':\n {\n var pointerEvent = nativeEvent;\n var pointerId = pointerEvent.pointerId;\n queuedPointers.set(pointerId, accumulateOrCreateContinuousQueuedReplayableEvent(queuedPointers.get(pointerId) || null, blockedOn, domEventName, eventSystemFlags, targetContainer, pointerEvent));\n return true;\n }\n\n case 'gotpointercapture':\n {\n var _pointerEvent = nativeEvent;\n var _pointerId2 = _pointerEvent.pointerId;\n queuedPointerCaptures.set(_pointerId2, accumulateOrCreateContinuousQueuedReplayableEvent(queuedPointerCaptures.get(_pointerId2) || null, blockedOn, domEventName, eventSystemFlags, targetContainer, _pointerEvent));\n return true;\n }\n }\n\n return false;\n} // Check if this target is unblocked. Returns true if it's unblocked.\n\nfunction attemptExplicitHydrationTarget(queuedTarget) {\n // TODO: This function shares a lot of logic with findInstanceBlockingEvent.\n // Try to unify them. It's a bit tricky since it would require two return\n // values.\n var targetInst = getClosestInstanceFromNode(queuedTarget.target);\n\n if (targetInst !== null) {\n var nearestMounted = getNearestMountedFiber(targetInst);\n\n if (nearestMounted !== null) {\n var tag = nearestMounted.tag;\n\n if (tag === SuspenseComponent) {\n var instance = getSuspenseInstanceFromFiber(nearestMounted);\n\n if (instance !== null) {\n // We're blocked on hydrating this boundary.\n // Increase its priority.\n queuedTarget.blockedOn = instance;\n attemptHydrationAtPriority(queuedTarget.priority, function () {\n attemptHydrationAtCurrentPriority(nearestMounted);\n });\n return;\n }\n } else if (tag === HostRoot) {\n var root = nearestMounted.stateNode;\n\n if (isRootDehydrated(root)) {\n queuedTarget.blockedOn = getContainerFromFiber(nearestMounted); // We don't currently have a way to increase the priority of\n // a root other than sync.\n\n return;\n }\n }\n }\n }\n\n queuedTarget.blockedOn = null;\n}\n\nfunction queueExplicitHydrationTarget(target) {\n // TODO: This will read the priority if it's dispatched by the React\n // event system but not native events. Should read window.event.type, like\n // we do for updates (getCurrentEventPriority).\n var updatePriority = getCurrentUpdatePriority$1();\n var queuedTarget = {\n blockedOn: null,\n target: target,\n priority: updatePriority\n };\n var i = 0;\n\n for (; i < queuedExplicitHydrationTargets.length; i++) {\n // Stop once we hit the first target with lower priority than\n if (!isHigherEventPriority(updatePriority, queuedExplicitHydrationTargets[i].priority)) {\n break;\n }\n }\n\n queuedExplicitHydrationTargets.splice(i, 0, queuedTarget);\n\n if (i === 0) {\n attemptExplicitHydrationTarget(queuedTarget);\n }\n}\n\nfunction attemptReplayContinuousQueuedEvent(queuedEvent) {\n if (queuedEvent.blockedOn !== null) {\n return false;\n }\n\n var targetContainers = queuedEvent.targetContainers;\n\n while (targetContainers.length > 0) {\n var targetContainer = targetContainers[0];\n var nextBlockedOn = findInstanceBlockingEvent(queuedEvent.domEventName, queuedEvent.eventSystemFlags, targetContainer, queuedEvent.nativeEvent);\n\n if (nextBlockedOn === null) {\n {\n var nativeEvent = queuedEvent.nativeEvent;\n var nativeEventClone = new nativeEvent.constructor(nativeEvent.type, nativeEvent);\n setReplayingEvent(nativeEventClone);\n nativeEvent.target.dispatchEvent(nativeEventClone);\n resetReplayingEvent();\n }\n } else {\n // We're still blocked. Try again later.\n var _fiber3 = getInstanceFromNode(nextBlockedOn);\n\n if (_fiber3 !== null) {\n attemptContinuousHydration(_fiber3);\n }\n\n queuedEvent.blockedOn = nextBlockedOn;\n return false;\n } // This target container was successfully dispatched. Try the next.\n\n\n targetContainers.shift();\n }\n\n return true;\n}\n\nfunction attemptReplayContinuousQueuedEventInMap(queuedEvent, key, map) {\n if (attemptReplayContinuousQueuedEvent(queuedEvent)) {\n map.delete(key);\n }\n}\n\nfunction replayUnblockedEvents() {\n hasScheduledReplayAttempt = false;\n\n\n if (queuedFocus !== null && attemptReplayContinuousQueuedEvent(queuedFocus)) {\n queuedFocus = null;\n }\n\n if (queuedDrag !== null && attemptReplayContinuousQueuedEvent(queuedDrag)) {\n queuedDrag = null;\n }\n\n if (queuedMouse !== null && attemptReplayContinuousQueuedEvent(queuedMouse)) {\n queuedMouse = null;\n }\n\n queuedPointers.forEach(attemptReplayContinuousQueuedEventInMap);\n queuedPointerCaptures.forEach(attemptReplayContinuousQueuedEventInMap);\n}\n\nfunction scheduleCallbackIfUnblocked(queuedEvent, unblocked) {\n if (queuedEvent.blockedOn === unblocked) {\n queuedEvent.blockedOn = null;\n\n if (!hasScheduledReplayAttempt) {\n hasScheduledReplayAttempt = true; // Schedule a callback to attempt replaying as many events as are\n // now unblocked. This first might not actually be unblocked yet.\n // We could check it early to avoid scheduling an unnecessary callback.\n\n Scheduler.unstable_scheduleCallback(Scheduler.unstable_NormalPriority, replayUnblockedEvents);\n }\n }\n}\n\nfunction retryIfBlockedOn(unblocked) {\n // Mark anything that was blocked on this as no longer blocked\n // and eligible for a replay.\n if (queuedDiscreteEvents.length > 0) {\n scheduleCallbackIfUnblocked(queuedDiscreteEvents[0], unblocked); // This is a exponential search for each boundary that commits. I think it's\n // worth it because we expect very few discrete events to queue up and once\n // we are actually fully unblocked it will be fast to replay them.\n\n for (var i = 1; i < queuedDiscreteEvents.length; i++) {\n var queuedEvent = queuedDiscreteEvents[i];\n\n if (queuedEvent.blockedOn === unblocked) {\n queuedEvent.blockedOn = null;\n }\n }\n }\n\n if (queuedFocus !== null) {\n scheduleCallbackIfUnblocked(queuedFocus, unblocked);\n }\n\n if (queuedDrag !== null) {\n scheduleCallbackIfUnblocked(queuedDrag, unblocked);\n }\n\n if (queuedMouse !== null) {\n scheduleCallbackIfUnblocked(queuedMouse, unblocked);\n }\n\n var unblock = function (queuedEvent) {\n return scheduleCallbackIfUnblocked(queuedEvent, unblocked);\n };\n\n queuedPointers.forEach(unblock);\n queuedPointerCaptures.forEach(unblock);\n\n for (var _i = 0; _i < queuedExplicitHydrationTargets.length; _i++) {\n var queuedTarget = queuedExplicitHydrationTargets[_i];\n\n if (queuedTarget.blockedOn === unblocked) {\n queuedTarget.blockedOn = null;\n }\n }\n\n while (queuedExplicitHydrationTargets.length > 0) {\n var nextExplicitTarget = queuedExplicitHydrationTargets[0];\n\n if (nextExplicitTarget.blockedOn !== null) {\n // We're still blocked.\n break;\n } else {\n attemptExplicitHydrationTarget(nextExplicitTarget);\n\n if (nextExplicitTarget.blockedOn === null) {\n // We're unblocked.\n queuedExplicitHydrationTargets.shift();\n }\n }\n }\n}\n\nvar ReactCurrentBatchConfig = ReactSharedInternals.ReactCurrentBatchConfig; // TODO: can we stop exporting these?\n\nvar _enabled = true; // This is exported in FB builds for use by legacy FB layer infra.\n// We'd like to remove this but it's not clear if this is safe.\n\nfunction setEnabled(enabled) {\n _enabled = !!enabled;\n}\nfunction isEnabled() {\n return _enabled;\n}\nfunction createEventListenerWrapperWithPriority(targetContainer, domEventName, eventSystemFlags) {\n var eventPriority = getEventPriority(domEventName);\n var listenerWrapper;\n\n switch (eventPriority) {\n case DiscreteEventPriority:\n listenerWrapper = dispatchDiscreteEvent;\n break;\n\n case ContinuousEventPriority:\n listenerWrapper = dispatchContinuousEvent;\n break;\n\n case DefaultEventPriority:\n default:\n listenerWrapper = dispatchEvent;\n break;\n }\n\n return listenerWrapper.bind(null, domEventName, eventSystemFlags, targetContainer);\n}\n\nfunction dispatchDiscreteEvent(domEventName, eventSystemFlags, container, nativeEvent) {\n var previousPriority = getCurrentUpdatePriority();\n var prevTransition = ReactCurrentBatchConfig.transition;\n ReactCurrentBatchConfig.transition = null;\n\n try {\n setCurrentUpdatePriority(DiscreteEventPriority);\n dispatchEvent(domEventName, eventSystemFlags, container, nativeEvent);\n } finally {\n setCurrentUpdatePriority(previousPriority);\n ReactCurrentBatchConfig.transition = prevTransition;\n }\n}\n\nfunction dispatchContinuousEvent(domEventName, eventSystemFlags, container, nativeEvent) {\n var previousPriority = getCurrentUpdatePriority();\n var prevTransition = ReactCurrentBatchConfig.transition;\n ReactCurrentBatchConfig.transition = null;\n\n try {\n setCurrentUpdatePriority(ContinuousEventPriority);\n dispatchEvent(domEventName, eventSystemFlags, container, nativeEvent);\n } finally {\n setCurrentUpdatePriority(previousPriority);\n ReactCurrentBatchConfig.transition = prevTransition;\n }\n}\n\nfunction dispatchEvent(domEventName, eventSystemFlags, targetContainer, nativeEvent) {\n if (!_enabled) {\n return;\n }\n\n {\n dispatchEventWithEnableCapturePhaseSelectiveHydrationWithoutDiscreteEventReplay(domEventName, eventSystemFlags, targetContainer, nativeEvent);\n }\n}\n\nfunction dispatchEventWithEnableCapturePhaseSelectiveHydrationWithoutDiscreteEventReplay(domEventName, eventSystemFlags, targetContainer, nativeEvent) {\n var blockedOn = findInstanceBlockingEvent(domEventName, eventSystemFlags, targetContainer, nativeEvent);\n\n if (blockedOn === null) {\n dispatchEventForPluginEventSystem(domEventName, eventSystemFlags, nativeEvent, return_targetInst, targetContainer);\n clearIfContinuousEvent(domEventName, nativeEvent);\n return;\n }\n\n if (queueIfContinuousEvent(blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent)) {\n nativeEvent.stopPropagation();\n return;\n } // We need to clear only if we didn't queue because\n // queueing is accumulative.\n\n\n clearIfContinuousEvent(domEventName, nativeEvent);\n\n if (eventSystemFlags & IS_CAPTURE_PHASE && isDiscreteEventThatRequiresHydration(domEventName)) {\n while (blockedOn !== null) {\n var fiber = getInstanceFromNode(blockedOn);\n\n if (fiber !== null) {\n attemptSynchronousHydration(fiber);\n }\n\n var nextBlockedOn = findInstanceBlockingEvent(domEventName, eventSystemFlags, targetContainer, nativeEvent);\n\n if (nextBlockedOn === null) {\n dispatchEventForPluginEventSystem(domEventName, eventSystemFlags, nativeEvent, return_targetInst, targetContainer);\n }\n\n if (nextBlockedOn === blockedOn) {\n break;\n }\n\n blockedOn = nextBlockedOn;\n }\n\n if (blockedOn !== null) {\n nativeEvent.stopPropagation();\n }\n\n return;\n } // This is not replayable so we'll invoke it but without a target,\n // in case the event system needs to trace it.\n\n\n dispatchEventForPluginEventSystem(domEventName, eventSystemFlags, nativeEvent, null, targetContainer);\n}\n\nvar return_targetInst = null; // Returns a SuspenseInstance or Container if it's blocked.\n// The return_targetInst field above is conceptually part of the return value.\n\nfunction findInstanceBlockingEvent(domEventName, eventSystemFlags, targetContainer, nativeEvent) {\n // TODO: Warn if _enabled is false.\n return_targetInst = null;\n var nativeEventTarget = getEventTarget(nativeEvent);\n var targetInst = getClosestInstanceFromNode(nativeEventTarget);\n\n if (targetInst !== null) {\n var nearestMounted = getNearestMountedFiber(targetInst);\n\n if (nearestMounted === null) {\n // This tree has been unmounted already. Dispatch without a target.\n targetInst = null;\n } else {\n var tag = nearestMounted.tag;\n\n if (tag === SuspenseComponent) {\n var instance = getSuspenseInstanceFromFiber(nearestMounted);\n\n if (instance !== null) {\n // Queue the event to be replayed later. Abort dispatching since we\n // don't want this event dispatched twice through the event system.\n // TODO: If this is the first discrete event in the queue. Schedule an increased\n // priority for this boundary.\n return instance;\n } // This shouldn't happen, something went wrong but to avoid blocking\n // the whole system, dispatch the event without a target.\n // TODO: Warn.\n\n\n targetInst = null;\n } else if (tag === HostRoot) {\n var root = nearestMounted.stateNode;\n\n if (isRootDehydrated(root)) {\n // If this happens during a replay something went wrong and it might block\n // the whole system.\n return getContainerFromFiber(nearestMounted);\n }\n\n targetInst = null;\n } else if (nearestMounted !== targetInst) {\n // If we get an event (ex: img onload) before committing that\n // component's mount, ignore it for now (that is, treat it as if it was an\n // event on a non-React tree). We might also consider queueing events and\n // dispatching them after the mount.\n targetInst = null;\n }\n }\n }\n\n return_targetInst = targetInst; // We're not blocked on anything.\n\n return null;\n}\nfunction getEventPriority(domEventName) {\n switch (domEventName) {\n // Used by SimpleEventPlugin:\n case 'cancel':\n case 'click':\n case 'close':\n case 'contextmenu':\n case 'copy':\n case 'cut':\n case 'auxclick':\n case 'dblclick':\n case 'dragend':\n case 'dragstart':\n case 'drop':\n case 'focusin':\n case 'focusout':\n case 'input':\n case 'invalid':\n case 'keydown':\n case 'keypress':\n case 'keyup':\n case 'mousedown':\n case 'mouseup':\n case 'paste':\n case 'pause':\n case 'play':\n case 'pointercancel':\n case 'pointerdown':\n case 'pointerup':\n case 'ratechange':\n case 'reset':\n case 'resize':\n case 'seeked':\n case 'submit':\n case 'touchcancel':\n case 'touchend':\n case 'touchstart':\n case 'volumechange': // Used by polyfills:\n // eslint-disable-next-line no-fallthrough\n\n case 'change':\n case 'selectionchange':\n case 'textInput':\n case 'compositionstart':\n case 'compositionend':\n case 'compositionupdate': // Only enableCreateEventHandleAPI:\n // eslint-disable-next-line no-fallthrough\n\n case 'beforeblur':\n case 'afterblur': // Not used by React but could be by user code:\n // eslint-disable-next-line no-fallthrough\n\n case 'beforeinput':\n case 'blur':\n case 'fullscreenchange':\n case 'focus':\n case 'hashchange':\n case 'popstate':\n case 'select':\n case 'selectstart':\n return DiscreteEventPriority;\n\n case 'drag':\n case 'dragenter':\n case 'dragexit':\n case 'dragleave':\n case 'dragover':\n case 'mousemove':\n case 'mouseout':\n case 'mouseover':\n case 'pointermove':\n case 'pointerout':\n case 'pointerover':\n case 'scroll':\n case 'toggle':\n case 'touchmove':\n case 'wheel': // Not used by React but could be by user code:\n // eslint-disable-next-line no-fallthrough\n\n case 'mouseenter':\n case 'mouseleave':\n case 'pointerenter':\n case 'pointerleave':\n return ContinuousEventPriority;\n\n case 'message':\n {\n // We might be in the Scheduler callback.\n // Eventually this mechanism will be replaced by a check\n // of the current priority on the native scheduler.\n var schedulerPriority = getCurrentPriorityLevel();\n\n switch (schedulerPriority) {\n case ImmediatePriority:\n return DiscreteEventPriority;\n\n case UserBlockingPriority:\n return ContinuousEventPriority;\n\n case NormalPriority:\n case LowPriority:\n // TODO: Handle LowSchedulerPriority, somehow. Maybe the same lane as hydration.\n return DefaultEventPriority;\n\n case IdlePriority:\n return IdleEventPriority;\n\n default:\n return DefaultEventPriority;\n }\n }\n\n default:\n return DefaultEventPriority;\n }\n}\n\nfunction addEventBubbleListener(target, eventType, listener) {\n target.addEventListener(eventType, listener, false);\n return listener;\n}\nfunction addEventCaptureListener(target, eventType, listener) {\n target.addEventListener(eventType, listener, true);\n return listener;\n}\nfunction addEventCaptureListenerWithPassiveFlag(target, eventType, listener, passive) {\n target.addEventListener(eventType, listener, {\n capture: true,\n passive: passive\n });\n return listener;\n}\nfunction addEventBubbleListenerWithPassiveFlag(target, eventType, listener, passive) {\n target.addEventListener(eventType, listener, {\n passive: passive\n });\n return listener;\n}\n\n/**\n * These variables store information about text content of a target node,\n * allowing comparison of content before and after a given event.\n *\n * Identify the node where selection currently begins, then observe\n * both its text content and its current position in the DOM. Since the\n * browser may natively replace the target node during composition, we can\n * use its position to find its replacement.\n *\n *\n */\nvar root = null;\nvar startText = null;\nvar fallbackText = null;\nfunction initialize(nativeEventTarget) {\n root = nativeEventTarget;\n startText = getText();\n return true;\n}\nfunction reset() {\n root = null;\n startText = null;\n fallbackText = null;\n}\nfunction getData() {\n if (fallbackText) {\n return fallbackText;\n }\n\n var start;\n var startValue = startText;\n var startLength = startValue.length;\n var end;\n var endValue = getText();\n var endLength = endValue.length;\n\n for (start = 0; start < startLength; start++) {\n if (startValue[start] !== endValue[start]) {\n break;\n }\n }\n\n var minEnd = startLength - start;\n\n for (end = 1; end <= minEnd; end++) {\n if (startValue[startLength - end] !== endValue[endLength - end]) {\n break;\n }\n }\n\n var sliceTail = end > 1 ? 1 - end : undefined;\n fallbackText = endValue.slice(start, sliceTail);\n return fallbackText;\n}\nfunction getText() {\n if ('value' in root) {\n return root.value;\n }\n\n return root.textContent;\n}\n\n/**\n * `charCode` represents the actual \"character code\" and is safe to use with\n * `String.fromCharCode`. As such, only keys that correspond to printable\n * characters produce a valid `charCode`, the only exception to this is Enter.\n * The Tab-key is considered non-printable and does not have a `charCode`,\n * presumably because it does not produce a tab-character in browsers.\n *\n * @param {object} nativeEvent Native browser event.\n * @return {number} Normalized `charCode` property.\n */\nfunction getEventCharCode(nativeEvent) {\n var charCode;\n var keyCode = nativeEvent.keyCode;\n\n if ('charCode' in nativeEvent) {\n charCode = nativeEvent.charCode; // FF does not set `charCode` for the Enter-key, check against `keyCode`.\n\n if (charCode === 0 && keyCode === 13) {\n charCode = 13;\n }\n } else {\n // IE8 does not implement `charCode`, but `keyCode` has the correct value.\n charCode = keyCode;\n } // IE and Edge (on Windows) and Chrome / Safari (on Windows and Linux)\n // report Enter as charCode 10 when ctrl is pressed.\n\n\n if (charCode === 10) {\n charCode = 13;\n } // Some non-printable keys are reported in `charCode`/`keyCode`, discard them.\n // Must not discard the (non-)printable Enter-key.\n\n\n if (charCode >= 32 || charCode === 13) {\n return charCode;\n }\n\n return 0;\n}\n\nfunction functionThatReturnsTrue() {\n return true;\n}\n\nfunction functionThatReturnsFalse() {\n return false;\n} // This is intentionally a factory so that we have different returned constructors.\n// If we had a single constructor, it would be megamorphic and engines would deopt.\n\n\nfunction createSyntheticEvent(Interface) {\n /**\n * Synthetic events are dispatched by event plugins, typically in response to a\n * top-level event delegation handler.\n *\n * These systems should generally use pooling to reduce the frequency of garbage\n * collection. The system should check `isPersistent` to determine whether the\n * event should be released into the pool after being dispatched. Users that\n * need a persisted event should invoke `persist`.\n *\n * Synthetic events (and subclasses) implement the DOM Level 3 Events API by\n * normalizing browser quirks. Subclasses do not necessarily have to implement a\n * DOM interface; custom application-specific events can also subclass this.\n */\n function SyntheticBaseEvent(reactName, reactEventType, targetInst, nativeEvent, nativeEventTarget) {\n this._reactName = reactName;\n this._targetInst = targetInst;\n this.type = reactEventType;\n this.nativeEvent = nativeEvent;\n this.target = nativeEventTarget;\n this.currentTarget = null;\n\n for (var _propName in Interface) {\n if (!Interface.hasOwnProperty(_propName)) {\n continue;\n }\n\n var normalize = Interface[_propName];\n\n if (normalize) {\n this[_propName] = normalize(nativeEvent);\n } else {\n this[_propName] = nativeEvent[_propName];\n }\n }\n\n var defaultPrevented = nativeEvent.defaultPrevented != null ? nativeEvent.defaultPrevented : nativeEvent.returnValue === false;\n\n if (defaultPrevented) {\n this.isDefaultPrevented = functionThatReturnsTrue;\n } else {\n this.isDefaultPrevented = functionThatReturnsFalse;\n }\n\n this.isPropagationStopped = functionThatReturnsFalse;\n return this;\n }\n\n assign(SyntheticBaseEvent.prototype, {\n preventDefault: function () {\n this.defaultPrevented = true;\n var event = this.nativeEvent;\n\n if (!event) {\n return;\n }\n\n if (event.preventDefault) {\n event.preventDefault(); // $FlowFixMe - flow is not aware of `unknown` in IE\n } else if (typeof event.returnValue !== 'unknown') {\n event.returnValue = false;\n }\n\n this.isDefaultPrevented = functionThatReturnsTrue;\n },\n stopPropagation: function () {\n var event = this.nativeEvent;\n\n if (!event) {\n return;\n }\n\n if (event.stopPropagation) {\n event.stopPropagation(); // $FlowFixMe - flow is not aware of `unknown` in IE\n } else if (typeof event.cancelBubble !== 'unknown') {\n // The ChangeEventPlugin registers a \"propertychange\" event for\n // IE. This event does not support bubbling or cancelling, and\n // any references to cancelBubble throw \"Member not found\". A\n // typeof check of \"unknown\" circumvents this issue (and is also\n // IE specific).\n event.cancelBubble = true;\n }\n\n this.isPropagationStopped = functionThatReturnsTrue;\n },\n\n /**\n * We release all dispatched `SyntheticEvent`s after each event loop, adding\n * them back into the pool. This allows a way to hold onto a reference that\n * won't be added back into the pool.\n */\n persist: function () {// Modern event system doesn't use pooling.\n },\n\n /**\n * Checks if this event should be released back into the pool.\n *\n * @return {boolean} True if this should not be released, false otherwise.\n */\n isPersistent: functionThatReturnsTrue\n });\n return SyntheticBaseEvent;\n}\n/**\n * @interface Event\n * @see http://www.w3.org/TR/DOM-Level-3-Events/\n */\n\n\nvar EventInterface = {\n eventPhase: 0,\n bubbles: 0,\n cancelable: 0,\n timeStamp: function (event) {\n return event.timeStamp || Date.now();\n },\n defaultPrevented: 0,\n isTrusted: 0\n};\nvar SyntheticEvent = createSyntheticEvent(EventInterface);\n\nvar UIEventInterface = assign({}, EventInterface, {\n view: 0,\n detail: 0\n});\n\nvar SyntheticUIEvent = createSyntheticEvent(UIEventInterface);\nvar lastMovementX;\nvar lastMovementY;\nvar lastMouseEvent;\n\nfunction updateMouseMovementPolyfillState(event) {\n if (event !== lastMouseEvent) {\n if (lastMouseEvent && event.type === 'mousemove') {\n lastMovementX = event.screenX - lastMouseEvent.screenX;\n lastMovementY = event.screenY - lastMouseEvent.screenY;\n } else {\n lastMovementX = 0;\n lastMovementY = 0;\n }\n\n lastMouseEvent = event;\n }\n}\n/**\n * @interface MouseEvent\n * @see http://www.w3.org/TR/DOM-Level-3-Events/\n */\n\n\nvar MouseEventInterface = assign({}, UIEventInterface, {\n screenX: 0,\n screenY: 0,\n clientX: 0,\n clientY: 0,\n pageX: 0,\n pageY: 0,\n ctrlKey: 0,\n shiftKey: 0,\n altKey: 0,\n metaKey: 0,\n getModifierState: getEventModifierState,\n button: 0,\n buttons: 0,\n relatedTarget: function (event) {\n if (event.relatedTarget === undefined) return event.fromElement === event.srcElement ? event.toElement : event.fromElement;\n return event.relatedTarget;\n },\n movementX: function (event) {\n if ('movementX' in event) {\n return event.movementX;\n }\n\n updateMouseMovementPolyfillState(event);\n return lastMovementX;\n },\n movementY: function (event) {\n if ('movementY' in event) {\n return event.movementY;\n } // Don't need to call updateMouseMovementPolyfillState() here\n // because it's guaranteed to have already run when movementX\n // was copied.\n\n\n return lastMovementY;\n }\n});\n\nvar SyntheticMouseEvent = createSyntheticEvent(MouseEventInterface);\n/**\n * @interface DragEvent\n * @see http://www.w3.org/TR/DOM-Level-3-Events/\n */\n\nvar DragEventInterface = assign({}, MouseEventInterface, {\n dataTransfer: 0\n});\n\nvar SyntheticDragEvent = createSyntheticEvent(DragEventInterface);\n/**\n * @interface FocusEvent\n * @see http://www.w3.org/TR/DOM-Level-3-Events/\n */\n\nvar FocusEventInterface = assign({}, UIEventInterface, {\n relatedTarget: 0\n});\n\nvar SyntheticFocusEvent = createSyntheticEvent(FocusEventInterface);\n/**\n * @interface Event\n * @see http://www.w3.org/TR/css3-animations/#AnimationEvent-interface\n * @see https://developer.mozilla.org/en-US/docs/Web/API/AnimationEvent\n */\n\nvar AnimationEventInterface = assign({}, EventInterface, {\n animationName: 0,\n elapsedTime: 0,\n pseudoElement: 0\n});\n\nvar SyntheticAnimationEvent = createSyntheticEvent(AnimationEventInterface);\n/**\n * @interface Event\n * @see http://www.w3.org/TR/clipboard-apis/\n */\n\nvar ClipboardEventInterface = assign({}, EventInterface, {\n clipboardData: function (event) {\n return 'clipboardData' in event ? event.clipboardData : window.clipboardData;\n }\n});\n\nvar SyntheticClipboardEvent = createSyntheticEvent(ClipboardEventInterface);\n/**\n * @interface Event\n * @see http://www.w3.org/TR/DOM-Level-3-Events/#events-compositionevents\n */\n\nvar CompositionEventInterface = assign({}, EventInterface, {\n data: 0\n});\n\nvar SyntheticCompositionEvent = createSyntheticEvent(CompositionEventInterface);\n/**\n * @interface Event\n * @see http://www.w3.org/TR/2013/WD-DOM-Level-3-Events-20131105\n * /#events-inputevents\n */\n// Happens to share the same list for now.\n\nvar SyntheticInputEvent = SyntheticCompositionEvent;\n/**\n * Normalization of deprecated HTML5 `key` values\n * @see https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent#Key_names\n */\n\nvar normalizeKey = {\n Esc: 'Escape',\n Spacebar: ' ',\n Left: 'ArrowLeft',\n Up: 'ArrowUp',\n Right: 'ArrowRight',\n Down: 'ArrowDown',\n Del: 'Delete',\n Win: 'OS',\n Menu: 'ContextMenu',\n Apps: 'ContextMenu',\n Scroll: 'ScrollLock',\n MozPrintableKey: 'Unidentified'\n};\n/**\n * Translation from legacy `keyCode` to HTML5 `key`\n * Only special keys supported, all others depend on keyboard layout or browser\n * @see https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent#Key_names\n */\n\nvar translateToKey = {\n '8': 'Backspace',\n '9': 'Tab',\n '12': 'Clear',\n '13': 'Enter',\n '16': 'Shift',\n '17': 'Control',\n '18': 'Alt',\n '19': 'Pause',\n '20': 'CapsLock',\n '27': 'Escape',\n '32': ' ',\n '33': 'PageUp',\n '34': 'PageDown',\n '35': 'End',\n '36': 'Home',\n '37': 'ArrowLeft',\n '38': 'ArrowUp',\n '39': 'ArrowRight',\n '40': 'ArrowDown',\n '45': 'Insert',\n '46': 'Delete',\n '112': 'F1',\n '113': 'F2',\n '114': 'F3',\n '115': 'F4',\n '116': 'F5',\n '117': 'F6',\n '118': 'F7',\n '119': 'F8',\n '120': 'F9',\n '121': 'F10',\n '122': 'F11',\n '123': 'F12',\n '144': 'NumLock',\n '145': 'ScrollLock',\n '224': 'Meta'\n};\n/**\n * @param {object} nativeEvent Native browser event.\n * @return {string} Normalized `key` property.\n */\n\nfunction getEventKey(nativeEvent) {\n if (nativeEvent.key) {\n // Normalize inconsistent values reported by browsers due to\n // implementations of a working draft specification.\n // FireFox implements `key` but returns `MozPrintableKey` for all\n // printable characters (normalized to `Unidentified`), ignore it.\n var key = normalizeKey[nativeEvent.key] || nativeEvent.key;\n\n if (key !== 'Unidentified') {\n return key;\n }\n } // Browser does not implement `key`, polyfill as much of it as we can.\n\n\n if (nativeEvent.type === 'keypress') {\n var charCode = getEventCharCode(nativeEvent); // The enter-key is technically both printable and non-printable and can\n // thus be captured by `keypress`, no other non-printable key should.\n\n return charCode === 13 ? 'Enter' : String.fromCharCode(charCode);\n }\n\n if (nativeEvent.type === 'keydown' || nativeEvent.type === 'keyup') {\n // While user keyboard layout determines the actual meaning of each\n // `keyCode` value, almost all function keys have a universal value.\n return translateToKey[nativeEvent.keyCode] || 'Unidentified';\n }\n\n return '';\n}\n/**\n * Translation from modifier key to the associated property in the event.\n * @see http://www.w3.org/TR/DOM-Level-3-Events/#keys-Modifiers\n */\n\n\nvar modifierKeyToProp = {\n Alt: 'altKey',\n Control: 'ctrlKey',\n Meta: 'metaKey',\n Shift: 'shiftKey'\n}; // Older browsers (Safari <= 10, iOS Safari <= 10.2) do not support\n// getModifierState. If getModifierState is not supported, we map it to a set of\n// modifier keys exposed by the event. In this case, Lock-keys are not supported.\n\nfunction modifierStateGetter(keyArg) {\n var syntheticEvent = this;\n var nativeEvent = syntheticEvent.nativeEvent;\n\n if (nativeEvent.getModifierState) {\n return nativeEvent.getModifierState(keyArg);\n }\n\n var keyProp = modifierKeyToProp[keyArg];\n return keyProp ? !!nativeEvent[keyProp] : false;\n}\n\nfunction getEventModifierState(nativeEvent) {\n return modifierStateGetter;\n}\n/**\n * @interface KeyboardEvent\n * @see http://www.w3.org/TR/DOM-Level-3-Events/\n */\n\n\nvar KeyboardEventInterface = assign({}, UIEventInterface, {\n key: getEventKey,\n code: 0,\n location: 0,\n ctrlKey: 0,\n shiftKey: 0,\n altKey: 0,\n metaKey: 0,\n repeat: 0,\n locale: 0,\n getModifierState: getEventModifierState,\n // Legacy Interface\n charCode: function (event) {\n // `charCode` is the result of a KeyPress event and represents the value of\n // the actual printable character.\n // KeyPress is deprecated, but its replacement is not yet final and not\n // implemented in any major browser. Only KeyPress has charCode.\n if (event.type === 'keypress') {\n return getEventCharCode(event);\n }\n\n return 0;\n },\n keyCode: function (event) {\n // `keyCode` is the result of a KeyDown/Up event and represents the value of\n // physical keyboard key.\n // The actual meaning of the value depends on the users' keyboard layout\n // which cannot be detected. Assuming that it is a US keyboard layout\n // provides a surprisingly accurate mapping for US and European users.\n // Due to this, it is left to the user to implement at this time.\n if (event.type === 'keydown' || event.type === 'keyup') {\n return event.keyCode;\n }\n\n return 0;\n },\n which: function (event) {\n // `which` is an alias for either `keyCode` or `charCode` depending on the\n // type of the event.\n if (event.type === 'keypress') {\n return getEventCharCode(event);\n }\n\n if (event.type === 'keydown' || event.type === 'keyup') {\n return event.keyCode;\n }\n\n return 0;\n }\n});\n\nvar SyntheticKeyboardEvent = createSyntheticEvent(KeyboardEventInterface);\n/**\n * @interface PointerEvent\n * @see http://www.w3.org/TR/pointerevents/\n */\n\nvar PointerEventInterface = assign({}, MouseEventInterface, {\n pointerId: 0,\n width: 0,\n height: 0,\n pressure: 0,\n tangentialPressure: 0,\n tiltX: 0,\n tiltY: 0,\n twist: 0,\n pointerType: 0,\n isPrimary: 0\n});\n\nvar SyntheticPointerEvent = createSyntheticEvent(PointerEventInterface);\n/**\n * @interface TouchEvent\n * @see http://www.w3.org/TR/touch-events/\n */\n\nvar TouchEventInterface = assign({}, UIEventInterface, {\n touches: 0,\n targetTouches: 0,\n changedTouches: 0,\n altKey: 0,\n metaKey: 0,\n ctrlKey: 0,\n shiftKey: 0,\n getModifierState: getEventModifierState\n});\n\nvar SyntheticTouchEvent = createSyntheticEvent(TouchEventInterface);\n/**\n * @interface Event\n * @see http://www.w3.org/TR/2009/WD-css3-transitions-20090320/#transition-events-\n * @see https://developer.mozilla.org/en-US/docs/Web/API/TransitionEvent\n */\n\nvar TransitionEventInterface = assign({}, EventInterface, {\n propertyName: 0,\n elapsedTime: 0,\n pseudoElement: 0\n});\n\nvar SyntheticTransitionEvent = createSyntheticEvent(TransitionEventInterface);\n/**\n * @interface WheelEvent\n * @see http://www.w3.org/TR/DOM-Level-3-Events/\n */\n\nvar WheelEventInterface = assign({}, MouseEventInterface, {\n deltaX: function (event) {\n return 'deltaX' in event ? event.deltaX : // Fallback to `wheelDeltaX` for Webkit and normalize (right is positive).\n 'wheelDeltaX' in event ? -event.wheelDeltaX : 0;\n },\n deltaY: function (event) {\n return 'deltaY' in event ? event.deltaY : // Fallback to `wheelDeltaY` for Webkit and normalize (down is positive).\n 'wheelDeltaY' in event ? -event.wheelDeltaY : // Fallback to `wheelDelta` for IE<9 and normalize (down is positive).\n 'wheelDelta' in event ? -event.wheelDelta : 0;\n },\n deltaZ: 0,\n // Browsers without \"deltaMode\" is reporting in raw wheel delta where one\n // notch on the scroll is always +/- 120, roughly equivalent to pixels.\n // A good approximation of DOM_DELTA_LINE (1) is 5% of viewport size or\n // ~40 pixels, for DOM_DELTA_SCREEN (2) it is 87.5% of viewport size.\n deltaMode: 0\n});\n\nvar SyntheticWheelEvent = createSyntheticEvent(WheelEventInterface);\n\nvar END_KEYCODES = [9, 13, 27, 32]; // Tab, Return, Esc, Space\n\nvar START_KEYCODE = 229;\nvar canUseCompositionEvent = canUseDOM && 'CompositionEvent' in window;\nvar documentMode = null;\n\nif (canUseDOM && 'documentMode' in document) {\n documentMode = document.documentMode;\n} // Webkit offers a very useful `textInput` event that can be used to\n// directly represent `beforeInput`. The IE `textinput` event is not as\n// useful, so we don't use it.\n\n\nvar canUseTextInputEvent = canUseDOM && 'TextEvent' in window && !documentMode; // In IE9+, we have access to composition events, but the data supplied\n// by the native compositionend event may be incorrect. Japanese ideographic\n// spaces, for instance (\\u3000) are not recorded correctly.\n\nvar useFallbackCompositionData = canUseDOM && (!canUseCompositionEvent || documentMode && documentMode > 8 && documentMode <= 11);\nvar SPACEBAR_CODE = 32;\nvar SPACEBAR_CHAR = String.fromCharCode(SPACEBAR_CODE);\n\nfunction registerEvents() {\n registerTwoPhaseEvent('onBeforeInput', ['compositionend', 'keypress', 'textInput', 'paste']);\n registerTwoPhaseEvent('onCompositionEnd', ['compositionend', 'focusout', 'keydown', 'keypress', 'keyup', 'mousedown']);\n registerTwoPhaseEvent('onCompositionStart', ['compositionstart', 'focusout', 'keydown', 'keypress', 'keyup', 'mousedown']);\n registerTwoPhaseEvent('onCompositionUpdate', ['compositionupdate', 'focusout', 'keydown', 'keypress', 'keyup', 'mousedown']);\n} // Track whether we've ever handled a keypress on the space key.\n\n\nvar hasSpaceKeypress = false;\n/**\n * Return whether a native keypress event is assumed to be a command.\n * This is required because Firefox fires `keypress` events for key commands\n * (cut, copy, select-all, etc.) even though no character is inserted.\n */\n\nfunction isKeypressCommand(nativeEvent) {\n return (nativeEvent.ctrlKey || nativeEvent.altKey || nativeEvent.metaKey) && // ctrlKey && altKey is equivalent to AltGr, and is not a command.\n !(nativeEvent.ctrlKey && nativeEvent.altKey);\n}\n/**\n * Translate native top level events into event types.\n */\n\n\nfunction getCompositionEventType(domEventName) {\n switch (domEventName) {\n case 'compositionstart':\n return 'onCompositionStart';\n\n case 'compositionend':\n return 'onCompositionEnd';\n\n case 'compositionupdate':\n return 'onCompositionUpdate';\n }\n}\n/**\n * Does our fallback best-guess model think this event signifies that\n * composition has begun?\n */\n\n\nfunction isFallbackCompositionStart(domEventName, nativeEvent) {\n return domEventName === 'keydown' && nativeEvent.keyCode === START_KEYCODE;\n}\n/**\n * Does our fallback mode think that this event is the end of composition?\n */\n\n\nfunction isFallbackCompositionEnd(domEventName, nativeEvent) {\n switch (domEventName) {\n case 'keyup':\n // Command keys insert or clear IME input.\n return END_KEYCODES.indexOf(nativeEvent.keyCode) !== -1;\n\n case 'keydown':\n // Expect IME keyCode on each keydown. If we get any other\n // code we must have exited earlier.\n return nativeEvent.keyCode !== START_KEYCODE;\n\n case 'keypress':\n case 'mousedown':\n case 'focusout':\n // Events are not possible without cancelling IME.\n return true;\n\n default:\n return false;\n }\n}\n/**\n * Google Input Tools provides composition data via a CustomEvent,\n * with the `data` property populated in the `detail` object. If this\n * is available on the event object, use it. If not, this is a plain\n * composition event and we have nothing special to extract.\n *\n * @param {object} nativeEvent\n * @return {?string}\n */\n\n\nfunction getDataFromCustomEvent(nativeEvent) {\n var detail = nativeEvent.detail;\n\n if (typeof detail === 'object' && 'data' in detail) {\n return detail.data;\n }\n\n return null;\n}\n/**\n * Check if a composition event was triggered by Korean IME.\n * Our fallback mode does not work well with IE's Korean IME,\n * so just use native composition events when Korean IME is used.\n * Although CompositionEvent.locale property is deprecated,\n * it is available in IE, where our fallback mode is enabled.\n *\n * @param {object} nativeEvent\n * @return {boolean}\n */\n\n\nfunction isUsingKoreanIME(nativeEvent) {\n return nativeEvent.locale === 'ko';\n} // Track the current IME composition status, if any.\n\n\nvar isComposing = false;\n/**\n * @return {?object} A SyntheticCompositionEvent.\n */\n\nfunction extractCompositionEvent(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget) {\n var eventType;\n var fallbackData;\n\n if (canUseCompositionEvent) {\n eventType = getCompositionEventType(domEventName);\n } else if (!isComposing) {\n if (isFallbackCompositionStart(domEventName, nativeEvent)) {\n eventType = 'onCompositionStart';\n }\n } else if (isFallbackCompositionEnd(domEventName, nativeEvent)) {\n eventType = 'onCompositionEnd';\n }\n\n if (!eventType) {\n return null;\n }\n\n if (useFallbackCompositionData && !isUsingKoreanIME(nativeEvent)) {\n // The current composition is stored statically and must not be\n // overwritten while composition continues.\n if (!isComposing && eventType === 'onCompositionStart') {\n isComposing = initialize(nativeEventTarget);\n } else if (eventType === 'onCompositionEnd') {\n if (isComposing) {\n fallbackData = getData();\n }\n }\n }\n\n var listeners = accumulateTwoPhaseListeners(targetInst, eventType);\n\n if (listeners.length > 0) {\n var event = new SyntheticCompositionEvent(eventType, domEventName, null, nativeEvent, nativeEventTarget);\n dispatchQueue.push({\n event: event,\n listeners: listeners\n });\n\n if (fallbackData) {\n // Inject data generated from fallback path into the synthetic event.\n // This matches the property of native CompositionEventInterface.\n event.data = fallbackData;\n } else {\n var customData = getDataFromCustomEvent(nativeEvent);\n\n if (customData !== null) {\n event.data = customData;\n }\n }\n }\n}\n\nfunction getNativeBeforeInputChars(domEventName, nativeEvent) {\n switch (domEventName) {\n case 'compositionend':\n return getDataFromCustomEvent(nativeEvent);\n\n case 'keypress':\n /**\n * If native `textInput` events are available, our goal is to make\n * use of them. However, there is a special case: the spacebar key.\n * In Webkit, preventing default on a spacebar `textInput` event\n * cancels character insertion, but it *also* causes the browser\n * to fall back to its default spacebar behavior of scrolling the\n * page.\n *\n * Tracking at:\n * https://code.google.com/p/chromium/issues/detail?id=355103\n *\n * To avoid this issue, use the keypress event as if no `textInput`\n * event is available.\n */\n var which = nativeEvent.which;\n\n if (which !== SPACEBAR_CODE) {\n return null;\n }\n\n hasSpaceKeypress = true;\n return SPACEBAR_CHAR;\n\n case 'textInput':\n // Record the characters to be added to the DOM.\n var chars = nativeEvent.data; // If it's a spacebar character, assume that we have already handled\n // it at the keypress level and bail immediately. Android Chrome\n // doesn't give us keycodes, so we need to ignore it.\n\n if (chars === SPACEBAR_CHAR && hasSpaceKeypress) {\n return null;\n }\n\n return chars;\n\n default:\n // For other native event types, do nothing.\n return null;\n }\n}\n/**\n * For browsers that do not provide the `textInput` event, extract the\n * appropriate string to use for SyntheticInputEvent.\n */\n\n\nfunction getFallbackBeforeInputChars(domEventName, nativeEvent) {\n // If we are currently composing (IME) and using a fallback to do so,\n // try to extract the composed characters from the fallback object.\n // If composition event is available, we extract a string only at\n // compositionevent, otherwise extract it at fallback events.\n if (isComposing) {\n if (domEventName === 'compositionend' || !canUseCompositionEvent && isFallbackCompositionEnd(domEventName, nativeEvent)) {\n var chars = getData();\n reset();\n isComposing = false;\n return chars;\n }\n\n return null;\n }\n\n switch (domEventName) {\n case 'paste':\n // If a paste event occurs after a keypress, throw out the input\n // chars. Paste events should not lead to BeforeInput events.\n return null;\n\n case 'keypress':\n /**\n * As of v27, Firefox may fire keypress events even when no character\n * will be inserted. A few possibilities:\n *\n * - `which` is `0`. Arrow keys, Esc key, etc.\n *\n * - `which` is the pressed key code, but no char is available.\n * Ex: 'AltGr + d` in Polish. There is no modified character for\n * this key combination and no character is inserted into the\n * document, but FF fires the keypress for char code `100` anyway.\n * No `input` event will occur.\n *\n * - `which` is the pressed key code, but a command combination is\n * being used. Ex: `Cmd+C`. No character is inserted, and no\n * `input` event will occur.\n */\n if (!isKeypressCommand(nativeEvent)) {\n // IE fires the `keypress` event when a user types an emoji via\n // Touch keyboard of Windows. In such a case, the `char` property\n // holds an emoji character like `\\uD83D\\uDE0A`. Because its length\n // is 2, the property `which` does not represent an emoji correctly.\n // In such a case, we directly return the `char` property instead of\n // using `which`.\n if (nativeEvent.char && nativeEvent.char.length > 1) {\n return nativeEvent.char;\n } else if (nativeEvent.which) {\n return String.fromCharCode(nativeEvent.which);\n }\n }\n\n return null;\n\n case 'compositionend':\n return useFallbackCompositionData && !isUsingKoreanIME(nativeEvent) ? null : nativeEvent.data;\n\n default:\n return null;\n }\n}\n/**\n * Extract a SyntheticInputEvent for `beforeInput`, based on either native\n * `textInput` or fallback behavior.\n *\n * @return {?object} A SyntheticInputEvent.\n */\n\n\nfunction extractBeforeInputEvent(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget) {\n var chars;\n\n if (canUseTextInputEvent) {\n chars = getNativeBeforeInputChars(domEventName, nativeEvent);\n } else {\n chars = getFallbackBeforeInputChars(domEventName, nativeEvent);\n } // If no characters are being inserted, no BeforeInput event should\n // be fired.\n\n\n if (!chars) {\n return null;\n }\n\n var listeners = accumulateTwoPhaseListeners(targetInst, 'onBeforeInput');\n\n if (listeners.length > 0) {\n var event = new SyntheticInputEvent('onBeforeInput', 'beforeinput', null, nativeEvent, nativeEventTarget);\n dispatchQueue.push({\n event: event,\n listeners: listeners\n });\n event.data = chars;\n }\n}\n/**\n * Create an `onBeforeInput` event to match\n * http://www.w3.org/TR/2013/WD-DOM-Level-3-Events-20131105/#events-inputevents.\n *\n * This event plugin is based on the native `textInput` event\n * available in Chrome, Safari, Opera, and IE. This event fires after\n * `onKeyPress` and `onCompositionEnd`, but before `onInput`.\n *\n * `beforeInput` is spec'd but not implemented in any browsers, and\n * the `input` event does not provide any useful information about what has\n * actually been added, contrary to the spec. Thus, `textInput` is the best\n * available event to identify the characters that have actually been inserted\n * into the target node.\n *\n * This plugin is also responsible for emitting `composition` events, thus\n * allowing us to share composition fallback code for both `beforeInput` and\n * `composition` event types.\n */\n\n\nfunction extractEvents(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {\n extractCompositionEvent(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);\n extractBeforeInputEvent(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);\n}\n\n/**\n * @see http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#input-type-attr-summary\n */\nvar supportedInputTypes = {\n color: true,\n date: true,\n datetime: true,\n 'datetime-local': true,\n email: true,\n month: true,\n number: true,\n password: true,\n range: true,\n search: true,\n tel: true,\n text: true,\n time: true,\n url: true,\n week: true\n};\n\nfunction isTextInputElement(elem) {\n var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();\n\n if (nodeName === 'input') {\n return !!supportedInputTypes[elem.type];\n }\n\n if (nodeName === 'textarea') {\n return true;\n }\n\n return false;\n}\n\n/**\n * Checks if an event is supported in the current execution environment.\n *\n * NOTE: This will not work correctly for non-generic events such as `change`,\n * `reset`, `load`, `error`, and `select`.\n *\n * Borrows from Modernizr.\n *\n * @param {string} eventNameSuffix Event name, e.g. \"click\".\n * @return {boolean} True if the event is supported.\n * @internal\n * @license Modernizr 3.0.0pre (Custom Build) | MIT\n */\n\nfunction isEventSupported(eventNameSuffix) {\n if (!canUseDOM) {\n return false;\n }\n\n var eventName = 'on' + eventNameSuffix;\n var isSupported = (eventName in document);\n\n if (!isSupported) {\n var element = document.createElement('div');\n element.setAttribute(eventName, 'return;');\n isSupported = typeof element[eventName] === 'function';\n }\n\n return isSupported;\n}\n\nfunction registerEvents$1() {\n registerTwoPhaseEvent('onChange', ['change', 'click', 'focusin', 'focusout', 'input', 'keydown', 'keyup', 'selectionchange']);\n}\n\nfunction createAndAccumulateChangeEvent(dispatchQueue, inst, nativeEvent, target) {\n // Flag this event loop as needing state restore.\n enqueueStateRestore(target);\n var listeners = accumulateTwoPhaseListeners(inst, 'onChange');\n\n if (listeners.length > 0) {\n var event = new SyntheticEvent('onChange', 'change', null, nativeEvent, target);\n dispatchQueue.push({\n event: event,\n listeners: listeners\n });\n }\n}\n/**\n * For IE shims\n */\n\n\nvar activeElement = null;\nvar activeElementInst = null;\n/**\n * SECTION: handle `change` event\n */\n\nfunction shouldUseChangeEvent(elem) {\n var nodeName = elem.nodeName && elem.nodeName.toLowerCase();\n return nodeName === 'select' || nodeName === 'input' && elem.type === 'file';\n}\n\nfunction manualDispatchChangeEvent(nativeEvent) {\n var dispatchQueue = [];\n createAndAccumulateChangeEvent(dispatchQueue, activeElementInst, nativeEvent, getEventTarget(nativeEvent)); // If change and propertychange bubbled, we'd just bind to it like all the\n // other events and have it go through ReactBrowserEventEmitter. Since it\n // doesn't, we manually listen for the events and so we have to enqueue and\n // process the abstract event manually.\n //\n // Batching is necessary here in order to ensure that all event handlers run\n // before the next rerender (including event handlers attached to ancestor\n // elements instead of directly on the input). Without this, controlled\n // components don't work properly in conjunction with event bubbling because\n // the component is rerendered and the value reverted before all the event\n // handlers can run. See https://github.com/facebook/react/issues/708.\n\n batchedUpdates(runEventInBatch, dispatchQueue);\n}\n\nfunction runEventInBatch(dispatchQueue) {\n processDispatchQueue(dispatchQueue, 0);\n}\n\nfunction getInstIfValueChanged(targetInst) {\n var targetNode = getNodeFromInstance(targetInst);\n\n if (updateValueIfChanged(targetNode)) {\n return targetInst;\n }\n}\n\nfunction getTargetInstForChangeEvent(domEventName, targetInst) {\n if (domEventName === 'change') {\n return targetInst;\n }\n}\n/**\n * SECTION: handle `input` event\n */\n\n\nvar isInputEventSupported = false;\n\nif (canUseDOM) {\n // IE9 claims to support the input event but fails to trigger it when\n // deleting text, so we ignore its input events.\n isInputEventSupported = isEventSupported('input') && (!document.documentMode || document.documentMode > 9);\n}\n/**\n * (For IE <=9) Starts tracking propertychange events on the passed-in element\n * and override the value property so that we can distinguish user events from\n * value changes in JS.\n */\n\n\nfunction startWatchingForValueChange(target, targetInst) {\n activeElement = target;\n activeElementInst = targetInst;\n activeElement.attachEvent('onpropertychange', handlePropertyChange);\n}\n/**\n * (For IE <=9) Removes the event listeners from the currently-tracked element,\n * if any exists.\n */\n\n\nfunction stopWatchingForValueChange() {\n if (!activeElement) {\n return;\n }\n\n activeElement.detachEvent('onpropertychange', handlePropertyChange);\n activeElement = null;\n activeElementInst = null;\n}\n/**\n * (For IE <=9) Handles a propertychange event, sending a `change` event if\n * the value of the active element has changed.\n */\n\n\nfunction handlePropertyChange(nativeEvent) {\n if (nativeEvent.propertyName !== 'value') {\n return;\n }\n\n if (getInstIfValueChanged(activeElementInst)) {\n manualDispatchChangeEvent(nativeEvent);\n }\n}\n\nfunction handleEventsForInputEventPolyfill(domEventName, target, targetInst) {\n if (domEventName === 'focusin') {\n // In IE9, propertychange fires for most input events but is buggy and\n // doesn't fire when text is deleted, but conveniently, selectionchange\n // appears to fire in all of the remaining cases so we catch those and\n // forward the event if the value has changed\n // In either case, we don't want to call the event handler if the value\n // is changed from JS so we redefine a setter for `.value` that updates\n // our activeElementValue variable, allowing us to ignore those changes\n //\n // stopWatching() should be a noop here but we call it just in case we\n // missed a blur event somehow.\n stopWatchingForValueChange();\n startWatchingForValueChange(target, targetInst);\n } else if (domEventName === 'focusout') {\n stopWatchingForValueChange();\n }\n} // For IE8 and IE9.\n\n\nfunction getTargetInstForInputEventPolyfill(domEventName, targetInst) {\n if (domEventName === 'selectionchange' || domEventName === 'keyup' || domEventName === 'keydown') {\n // On the selectionchange event, the target is just document which isn't\n // helpful for us so just check activeElement instead.\n //\n // 99% of the time, keydown and keyup aren't necessary. IE8 fails to fire\n // propertychange on the first input event after setting `value` from a\n // script and fires only keydown, keypress, keyup. Catching keyup usually\n // gets it and catching keydown lets us fire an event for the first\n // keystroke if user does a key repeat (it'll be a little delayed: right\n // before the second keystroke). Other input methods (e.g., paste) seem to\n // fire selectionchange normally.\n return getInstIfValueChanged(activeElementInst);\n }\n}\n/**\n * SECTION: handle `click` event\n */\n\n\nfunction shouldUseClickEvent(elem) {\n // Use the `click` event to detect changes to checkbox and radio inputs.\n // This approach works across all browsers, whereas `change` does not fire\n // until `blur` in IE8.\n var nodeName = elem.nodeName;\n return nodeName && nodeName.toLowerCase() === 'input' && (elem.type === 'checkbox' || elem.type === 'radio');\n}\n\nfunction getTargetInstForClickEvent(domEventName, targetInst) {\n if (domEventName === 'click') {\n return getInstIfValueChanged(targetInst);\n }\n}\n\nfunction getTargetInstForInputOrChangeEvent(domEventName, targetInst) {\n if (domEventName === 'input' || domEventName === 'change') {\n return getInstIfValueChanged(targetInst);\n }\n}\n\nfunction handleControlledInputBlur(node) {\n var state = node._wrapperState;\n\n if (!state || !state.controlled || node.type !== 'number') {\n return;\n }\n\n {\n // If controlled, assign the value attribute to the current value on blur\n setDefaultValue(node, 'number', node.value);\n }\n}\n/**\n * This plugin creates an `onChange` event that normalizes change events\n * across form elements. This event fires at a time when it's possible to\n * change the element's value without seeing a flicker.\n *\n * Supported elements are:\n * - input (see `isTextInputElement`)\n * - textarea\n * - select\n */\n\n\nfunction extractEvents$1(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {\n var targetNode = targetInst ? getNodeFromInstance(targetInst) : window;\n var getTargetInstFunc, handleEventFunc;\n\n if (shouldUseChangeEvent(targetNode)) {\n getTargetInstFunc = getTargetInstForChangeEvent;\n } else if (isTextInputElement(targetNode)) {\n if (isInputEventSupported) {\n getTargetInstFunc = getTargetInstForInputOrChangeEvent;\n } else {\n getTargetInstFunc = getTargetInstForInputEventPolyfill;\n handleEventFunc = handleEventsForInputEventPolyfill;\n }\n } else if (shouldUseClickEvent(targetNode)) {\n getTargetInstFunc = getTargetInstForClickEvent;\n }\n\n if (getTargetInstFunc) {\n var inst = getTargetInstFunc(domEventName, targetInst);\n\n if (inst) {\n createAndAccumulateChangeEvent(dispatchQueue, inst, nativeEvent, nativeEventTarget);\n return;\n }\n }\n\n if (handleEventFunc) {\n handleEventFunc(domEventName, targetNode, targetInst);\n } // When blurring, set the value attribute for number inputs\n\n\n if (domEventName === 'focusout') {\n handleControlledInputBlur(targetNode);\n }\n}\n\nfunction registerEvents$2() {\n registerDirectEvent('onMouseEnter', ['mouseout', 'mouseover']);\n registerDirectEvent('onMouseLeave', ['mouseout', 'mouseover']);\n registerDirectEvent('onPointerEnter', ['pointerout', 'pointerover']);\n registerDirectEvent('onPointerLeave', ['pointerout', 'pointerover']);\n}\n/**\n * For almost every interaction we care about, there will be both a top-level\n * `mouseover` and `mouseout` event that occurs. Only use `mouseout` so that\n * we do not extract duplicate events. However, moving the mouse into the\n * browser from outside will not fire a `mouseout` event. In this case, we use\n * the `mouseover` top-level event.\n */\n\n\nfunction extractEvents$2(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {\n var isOverEvent = domEventName === 'mouseover' || domEventName === 'pointerover';\n var isOutEvent = domEventName === 'mouseout' || domEventName === 'pointerout';\n\n if (isOverEvent && !isReplayingEvent(nativeEvent)) {\n // If this is an over event with a target, we might have already dispatched\n // the event in the out event of the other target. If this is replayed,\n // then it's because we couldn't dispatch against this target previously\n // so we have to do it now instead.\n var related = nativeEvent.relatedTarget || nativeEvent.fromElement;\n\n if (related) {\n // If the related node is managed by React, we can assume that we have\n // already dispatched the corresponding events during its mouseout.\n if (getClosestInstanceFromNode(related) || isContainerMarkedAsRoot(related)) {\n return;\n }\n }\n }\n\n if (!isOutEvent && !isOverEvent) {\n // Must not be a mouse or pointer in or out - ignoring.\n return;\n }\n\n var win; // TODO: why is this nullable in the types but we read from it?\n\n if (nativeEventTarget.window === nativeEventTarget) {\n // `nativeEventTarget` is probably a window object.\n win = nativeEventTarget;\n } else {\n // TODO: Figure out why `ownerDocument` is sometimes undefined in IE8.\n var doc = nativeEventTarget.ownerDocument;\n\n if (doc) {\n win = doc.defaultView || doc.parentWindow;\n } else {\n win = window;\n }\n }\n\n var from;\n var to;\n\n if (isOutEvent) {\n var _related = nativeEvent.relatedTarget || nativeEvent.toElement;\n\n from = targetInst;\n to = _related ? getClosestInstanceFromNode(_related) : null;\n\n if (to !== null) {\n var nearestMounted = getNearestMountedFiber(to);\n\n if (to !== nearestMounted || to.tag !== HostComponent && to.tag !== HostText) {\n to = null;\n }\n }\n } else {\n // Moving to a node from outside the window.\n from = null;\n to = targetInst;\n }\n\n if (from === to) {\n // Nothing pertains to our managed components.\n return;\n }\n\n var SyntheticEventCtor = SyntheticMouseEvent;\n var leaveEventType = 'onMouseLeave';\n var enterEventType = 'onMouseEnter';\n var eventTypePrefix = 'mouse';\n\n if (domEventName === 'pointerout' || domEventName === 'pointerover') {\n SyntheticEventCtor = SyntheticPointerEvent;\n leaveEventType = 'onPointerLeave';\n enterEventType = 'onPointerEnter';\n eventTypePrefix = 'pointer';\n }\n\n var fromNode = from == null ? win : getNodeFromInstance(from);\n var toNode = to == null ? win : getNodeFromInstance(to);\n var leave = new SyntheticEventCtor(leaveEventType, eventTypePrefix + 'leave', from, nativeEvent, nativeEventTarget);\n leave.target = fromNode;\n leave.relatedTarget = toNode;\n var enter = null; // We should only process this nativeEvent if we are processing\n // the first ancestor. Next time, we will ignore the event.\n\n var nativeTargetInst = getClosestInstanceFromNode(nativeEventTarget);\n\n if (nativeTargetInst === targetInst) {\n var enterEvent = new SyntheticEventCtor(enterEventType, eventTypePrefix + 'enter', to, nativeEvent, nativeEventTarget);\n enterEvent.target = toNode;\n enterEvent.relatedTarget = fromNode;\n enter = enterEvent;\n }\n\n accumulateEnterLeaveTwoPhaseListeners(dispatchQueue, leave, enter, from, to);\n}\n\n/**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\nfunction is(x, y) {\n return x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y // eslint-disable-line no-self-compare\n ;\n}\n\nvar objectIs = typeof Object.is === 'function' ? Object.is : is;\n\n/**\n * Performs equality by iterating through keys on an object and returning false\n * when any key has values which are not strictly equal between the arguments.\n * Returns true when the values of all keys are strictly equal.\n */\n\nfunction shallowEqual(objA, objB) {\n if (objectIs(objA, objB)) {\n return true;\n }\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n } // Test for A's keys different from B.\n\n\n for (var i = 0; i < keysA.length; i++) {\n var currentKey = keysA[i];\n\n if (!hasOwnProperty.call(objB, currentKey) || !objectIs(objA[currentKey], objB[currentKey])) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * Given any node return the first leaf node without children.\n *\n * @param {DOMElement|DOMTextNode} node\n * @return {DOMElement|DOMTextNode}\n */\n\nfunction getLeafNode(node) {\n while (node && node.firstChild) {\n node = node.firstChild;\n }\n\n return node;\n}\n/**\n * Get the next sibling within a container. This will walk up the\n * DOM if a node's siblings have been exhausted.\n *\n * @param {DOMElement|DOMTextNode} node\n * @return {?DOMElement|DOMTextNode}\n */\n\n\nfunction getSiblingNode(node) {\n while (node) {\n if (node.nextSibling) {\n return node.nextSibling;\n }\n\n node = node.parentNode;\n }\n}\n/**\n * Get object describing the nodes which contain characters at offset.\n *\n * @param {DOMElement|DOMTextNode} root\n * @param {number} offset\n * @return {?object}\n */\n\n\nfunction getNodeForCharacterOffset(root, offset) {\n var node = getLeafNode(root);\n var nodeStart = 0;\n var nodeEnd = 0;\n\n while (node) {\n if (node.nodeType === TEXT_NODE) {\n nodeEnd = nodeStart + node.textContent.length;\n\n if (nodeStart <= offset && nodeEnd >= offset) {\n return {\n node: node,\n offset: offset - nodeStart\n };\n }\n\n nodeStart = nodeEnd;\n }\n\n node = getLeafNode(getSiblingNode(node));\n }\n}\n\n/**\n * @param {DOMElement} outerNode\n * @return {?object}\n */\n\nfunction getOffsets(outerNode) {\n var ownerDocument = outerNode.ownerDocument;\n var win = ownerDocument && ownerDocument.defaultView || window;\n var selection = win.getSelection && win.getSelection();\n\n if (!selection || selection.rangeCount === 0) {\n return null;\n }\n\n var anchorNode = selection.anchorNode,\n anchorOffset = selection.anchorOffset,\n focusNode = selection.focusNode,\n focusOffset = selection.focusOffset; // In Firefox, anchorNode and focusNode can be \"anonymous divs\", e.g. the\n // up/down buttons on an <input type=\"number\">. Anonymous divs do not seem to\n // expose properties, triggering a \"Permission denied error\" if any of its\n // properties are accessed. The only seemingly possible way to avoid erroring\n // is to access a property that typically works for non-anonymous divs and\n // catch any error that may otherwise arise. See\n // https://bugzilla.mozilla.org/show_bug.cgi?id=208427\n\n try {\n /* eslint-disable no-unused-expressions */\n anchorNode.nodeType;\n focusNode.nodeType;\n /* eslint-enable no-unused-expressions */\n } catch (e) {\n return null;\n }\n\n return getModernOffsetsFromPoints(outerNode, anchorNode, anchorOffset, focusNode, focusOffset);\n}\n/**\n * Returns {start, end} where `start` is the character/codepoint index of\n * (anchorNode, anchorOffset) within the textContent of `outerNode`, and\n * `end` is the index of (focusNode, focusOffset).\n *\n * Returns null if you pass in garbage input but we should probably just crash.\n *\n * Exported only for testing.\n */\n\nfunction getModernOffsetsFromPoints(outerNode, anchorNode, anchorOffset, focusNode, focusOffset) {\n var length = 0;\n var start = -1;\n var end = -1;\n var indexWithinAnchor = 0;\n var indexWithinFocus = 0;\n var node = outerNode;\n var parentNode = null;\n\n outer: while (true) {\n var next = null;\n\n while (true) {\n if (node === anchorNode && (anchorOffset === 0 || node.nodeType === TEXT_NODE)) {\n start = length + anchorOffset;\n }\n\n if (node === focusNode && (focusOffset === 0 || node.nodeType === TEXT_NODE)) {\n end = length + focusOffset;\n }\n\n if (node.nodeType === TEXT_NODE) {\n length += node.nodeValue.length;\n }\n\n if ((next = node.firstChild) === null) {\n break;\n } // Moving from `node` to its first child `next`.\n\n\n parentNode = node;\n node = next;\n }\n\n while (true) {\n if (node === outerNode) {\n // If `outerNode` has children, this is always the second time visiting\n // it. If it has no children, this is still the first loop, and the only\n // valid selection is anchorNode and focusNode both equal to this node\n // and both offsets 0, in which case we will have handled above.\n break outer;\n }\n\n if (parentNode === anchorNode && ++indexWithinAnchor === anchorOffset) {\n start = length;\n }\n\n if (parentNode === focusNode && ++indexWithinFocus === focusOffset) {\n end = length;\n }\n\n if ((next = node.nextSibling) !== null) {\n break;\n }\n\n node = parentNode;\n parentNode = node.parentNode;\n } // Moving from `node` to its next sibling `next`.\n\n\n node = next;\n }\n\n if (start === -1 || end === -1) {\n // This should never happen. (Would happen if the anchor/focus nodes aren't\n // actually inside the passed-in node.)\n return null;\n }\n\n return {\n start: start,\n end: end\n };\n}\n/**\n * In modern non-IE browsers, we can support both forward and backward\n * selections.\n *\n * Note: IE10+ supports the Selection object, but it does not support\n * the `extend` method, which means that even in modern IE, it's not possible\n * to programmatically create a backward selection. Thus, for all IE\n * versions, we use the old IE API to create our selections.\n *\n * @param {DOMElement|DOMTextNode} node\n * @param {object} offsets\n */\n\nfunction setOffsets(node, offsets) {\n var doc = node.ownerDocument || document;\n var win = doc && doc.defaultView || window; // Edge fails with \"Object expected\" in some scenarios.\n // (For instance: TinyMCE editor used in a list component that supports pasting to add more,\n // fails when pasting 100+ items)\n\n if (!win.getSelection) {\n return;\n }\n\n var selection = win.getSelection();\n var length = node.textContent.length;\n var start = Math.min(offsets.start, length);\n var end = offsets.end === undefined ? start : Math.min(offsets.end, length); // IE 11 uses modern selection, but doesn't support the extend method.\n // Flip backward selections, so we can set with a single range.\n\n if (!selection.extend && start > end) {\n var temp = end;\n end = start;\n start = temp;\n }\n\n var startMarker = getNodeForCharacterOffset(node, start);\n var endMarker = getNodeForCharacterOffset(node, end);\n\n if (startMarker && endMarker) {\n if (selection.rangeCount === 1 && selection.anchorNode === startMarker.node && selection.anchorOffset === startMarker.offset && selection.focusNode === endMarker.node && selection.focusOffset === endMarker.offset) {\n return;\n }\n\n var range = doc.createRange();\n range.setStart(startMarker.node, startMarker.offset);\n selection.removeAllRanges();\n\n if (start > end) {\n selection.addRange(range);\n selection.extend(endMarker.node, endMarker.offset);\n } else {\n range.setEnd(endMarker.node, endMarker.offset);\n selection.addRange(range);\n }\n }\n}\n\nfunction isTextNode(node) {\n return node && node.nodeType === TEXT_NODE;\n}\n\nfunction containsNode(outerNode, innerNode) {\n if (!outerNode || !innerNode) {\n return false;\n } else if (outerNode === innerNode) {\n return true;\n } else if (isTextNode(outerNode)) {\n return false;\n } else if (isTextNode(innerNode)) {\n return containsNode(outerNode, innerNode.parentNode);\n } else if ('contains' in outerNode) {\n return outerNode.contains(innerNode);\n } else if (outerNode.compareDocumentPosition) {\n return !!(outerNode.compareDocumentPosition(innerNode) & 16);\n } else {\n return false;\n }\n}\n\nfunction isInDocument(node) {\n return node && node.ownerDocument && containsNode(node.ownerDocument.documentElement, node);\n}\n\nfunction isSameOriginFrame(iframe) {\n try {\n // Accessing the contentDocument of a HTMLIframeElement can cause the browser\n // to throw, e.g. if it has a cross-origin src attribute.\n // Safari will show an error in the console when the access results in \"Blocked a frame with origin\". e.g:\n // iframe.contentDocument.defaultView;\n // A safety way is to access one of the cross origin properties: Window or Location\n // Which might result in \"SecurityError\" DOM Exception and it is compatible to Safari.\n // https://html.spec.whatwg.org/multipage/browsers.html#integration-with-idl\n return typeof iframe.contentWindow.location.href === 'string';\n } catch (err) {\n return false;\n }\n}\n\nfunction getActiveElementDeep() {\n var win = window;\n var element = getActiveElement();\n\n while (element instanceof win.HTMLIFrameElement) {\n if (isSameOriginFrame(element)) {\n win = element.contentWindow;\n } else {\n return element;\n }\n\n element = getActiveElement(win.document);\n }\n\n return element;\n}\n/**\n * @ReactInputSelection: React input selection module. Based on Selection.js,\n * but modified to be suitable for react and has a couple of bug fixes (doesn't\n * assume buttons have range selections allowed).\n * Input selection module for React.\n */\n\n/**\n * @hasSelectionCapabilities: we get the element types that support selection\n * from https://html.spec.whatwg.org/#do-not-apply, looking at `selectionStart`\n * and `selectionEnd` rows.\n */\n\n\nfunction hasSelectionCapabilities(elem) {\n var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();\n return nodeName && (nodeName === 'input' && (elem.type === 'text' || elem.type === 'search' || elem.type === 'tel' || elem.type === 'url' || elem.type === 'password') || nodeName === 'textarea' || elem.contentEditable === 'true');\n}\nfunction getSelectionInformation() {\n var focusedElem = getActiveElementDeep();\n return {\n focusedElem: focusedElem,\n selectionRange: hasSelectionCapabilities(focusedElem) ? getSelection(focusedElem) : null\n };\n}\n/**\n * @restoreSelection: If any selection information was potentially lost,\n * restore it. This is useful when performing operations that could remove dom\n * nodes and place them back in, resulting in focus being lost.\n */\n\nfunction restoreSelection(priorSelectionInformation) {\n var curFocusedElem = getActiveElementDeep();\n var priorFocusedElem = priorSelectionInformation.focusedElem;\n var priorSelectionRange = priorSelectionInformation.selectionRange;\n\n if (curFocusedElem !== priorFocusedElem && isInDocument(priorFocusedElem)) {\n if (priorSelectionRange !== null && hasSelectionCapabilities(priorFocusedElem)) {\n setSelection(priorFocusedElem, priorSelectionRange);\n } // Focusing a node can change the scroll position, which is undesirable\n\n\n var ancestors = [];\n var ancestor = priorFocusedElem;\n\n while (ancestor = ancestor.parentNode) {\n if (ancestor.nodeType === ELEMENT_NODE) {\n ancestors.push({\n element: ancestor,\n left: ancestor.scrollLeft,\n top: ancestor.scrollTop\n });\n }\n }\n\n if (typeof priorFocusedElem.focus === 'function') {\n priorFocusedElem.focus();\n }\n\n for (var i = 0; i < ancestors.length; i++) {\n var info = ancestors[i];\n info.element.scrollLeft = info.left;\n info.element.scrollTop = info.top;\n }\n }\n}\n/**\n * @getSelection: Gets the selection bounds of a focused textarea, input or\n * contentEditable node.\n * -@input: Look up selection bounds of this input\n * -@return {start: selectionStart, end: selectionEnd}\n */\n\nfunction getSelection(input) {\n var selection;\n\n if ('selectionStart' in input) {\n // Modern browser with input or textarea.\n selection = {\n start: input.selectionStart,\n end: input.selectionEnd\n };\n } else {\n // Content editable or old IE textarea.\n selection = getOffsets(input);\n }\n\n return selection || {\n start: 0,\n end: 0\n };\n}\n/**\n * @setSelection: Sets the selection bounds of a textarea or input and focuses\n * the input.\n * -@input Set selection bounds of this input or textarea\n * -@offsets Object of same form that is returned from get*\n */\n\nfunction setSelection(input, offsets) {\n var start = offsets.start;\n var end = offsets.end;\n\n if (end === undefined) {\n end = start;\n }\n\n if ('selectionStart' in input) {\n input.selectionStart = start;\n input.selectionEnd = Math.min(end, input.value.length);\n } else {\n setOffsets(input, offsets);\n }\n}\n\nvar skipSelectionChangeEvent = canUseDOM && 'documentMode' in document && document.documentMode <= 11;\n\nfunction registerEvents$3() {\n registerTwoPhaseEvent('onSelect', ['focusout', 'contextmenu', 'dragend', 'focusin', 'keydown', 'keyup', 'mousedown', 'mouseup', 'selectionchange']);\n}\n\nvar activeElement$1 = null;\nvar activeElementInst$1 = null;\nvar lastSelection = null;\nvar mouseDown = false;\n/**\n * Get an object which is a unique representation of the current selection.\n *\n * The return value will not be consistent across nodes or browsers, but\n * two identical selections on the same node will return identical objects.\n */\n\nfunction getSelection$1(node) {\n if ('selectionStart' in node && hasSelectionCapabilities(node)) {\n return {\n start: node.selectionStart,\n end: node.selectionEnd\n };\n } else {\n var win = node.ownerDocument && node.ownerDocument.defaultView || window;\n var selection = win.getSelection();\n return {\n anchorNode: selection.anchorNode,\n anchorOffset: selection.anchorOffset,\n focusNode: selection.focusNode,\n focusOffset: selection.focusOffset\n };\n }\n}\n/**\n * Get document associated with the event target.\n */\n\n\nfunction getEventTargetDocument(eventTarget) {\n return eventTarget.window === eventTarget ? eventTarget.document : eventTarget.nodeType === DOCUMENT_NODE ? eventTarget : eventTarget.ownerDocument;\n}\n/**\n * Poll selection to see whether it's changed.\n *\n * @param {object} nativeEvent\n * @param {object} nativeEventTarget\n * @return {?SyntheticEvent}\n */\n\n\nfunction constructSelectEvent(dispatchQueue, nativeEvent, nativeEventTarget) {\n // Ensure we have the right element, and that the user is not dragging a\n // selection (this matches native `select` event behavior). In HTML5, select\n // fires only on input and textarea thus if there's no focused element we\n // won't dispatch.\n var doc = getEventTargetDocument(nativeEventTarget);\n\n if (mouseDown || activeElement$1 == null || activeElement$1 !== getActiveElement(doc)) {\n return;\n } // Only fire when selection has actually changed.\n\n\n var currentSelection = getSelection$1(activeElement$1);\n\n if (!lastSelection || !shallowEqual(lastSelection, currentSelection)) {\n lastSelection = currentSelection;\n var listeners = accumulateTwoPhaseListeners(activeElementInst$1, 'onSelect');\n\n if (listeners.length > 0) {\n var event = new SyntheticEvent('onSelect', 'select', null, nativeEvent, nativeEventTarget);\n dispatchQueue.push({\n event: event,\n listeners: listeners\n });\n event.target = activeElement$1;\n }\n }\n}\n/**\n * This plugin creates an `onSelect` event that normalizes select events\n * across form elements.\n *\n * Supported elements are:\n * - input (see `isTextInputElement`)\n * - textarea\n * - contentEditable\n *\n * This differs from native browser implementations in the following ways:\n * - Fires on contentEditable fields as well as inputs.\n * - Fires for collapsed selection.\n * - Fires after user input.\n */\n\n\nfunction extractEvents$3(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {\n var targetNode = targetInst ? getNodeFromInstance(targetInst) : window;\n\n switch (domEventName) {\n // Track the input node that has focus.\n case 'focusin':\n if (isTextInputElement(targetNode) || targetNode.contentEditable === 'true') {\n activeElement$1 = targetNode;\n activeElementInst$1 = targetInst;\n lastSelection = null;\n }\n\n break;\n\n case 'focusout':\n activeElement$1 = null;\n activeElementInst$1 = null;\n lastSelection = null;\n break;\n // Don't fire the event while the user is dragging. This matches the\n // semantics of the native select event.\n\n case 'mousedown':\n mouseDown = true;\n break;\n\n case 'contextmenu':\n case 'mouseup':\n case 'dragend':\n mouseDown = false;\n constructSelectEvent(dispatchQueue, nativeEvent, nativeEventTarget);\n break;\n // Chrome and IE fire non-standard event when selection is changed (and\n // sometimes when it hasn't). IE's event fires out of order with respect\n // to key and input events on deletion, so we discard it.\n //\n // Firefox doesn't support selectionchange, so check selection status\n // after each key entry. The selection changes after keydown and before\n // keyup, but we check on keydown as well in the case of holding down a\n // key, when multiple keydown events are fired but only one keyup is.\n // This is also our approach for IE handling, for the reason above.\n\n case 'selectionchange':\n if (skipSelectionChangeEvent) {\n break;\n }\n\n // falls through\n\n case 'keydown':\n case 'keyup':\n constructSelectEvent(dispatchQueue, nativeEvent, nativeEventTarget);\n }\n}\n\n/**\n * Generate a mapping of standard vendor prefixes using the defined style property and event name.\n *\n * @param {string} styleProp\n * @param {string} eventName\n * @returns {object}\n */\n\nfunction makePrefixMap(styleProp, eventName) {\n var prefixes = {};\n prefixes[styleProp.toLowerCase()] = eventName.toLowerCase();\n prefixes['Webkit' + styleProp] = 'webkit' + eventName;\n prefixes['Moz' + styleProp] = 'moz' + eventName;\n return prefixes;\n}\n/**\n * A list of event names to a configurable list of vendor prefixes.\n */\n\n\nvar vendorPrefixes = {\n animationend: makePrefixMap('Animation', 'AnimationEnd'),\n animationiteration: makePrefixMap('Animation', 'AnimationIteration'),\n animationstart: makePrefixMap('Animation', 'AnimationStart'),\n transitionend: makePrefixMap('Transition', 'TransitionEnd')\n};\n/**\n * Event names that have already been detected and prefixed (if applicable).\n */\n\nvar prefixedEventNames = {};\n/**\n * Element to check for prefixes on.\n */\n\nvar style = {};\n/**\n * Bootstrap if a DOM exists.\n */\n\nif (canUseDOM) {\n style = document.createElement('div').style; // On some platforms, in particular some releases of Android 4.x,\n // the un-prefixed \"animation\" and \"transition\" properties are defined on the\n // style object but the events that fire will still be prefixed, so we need\n // to check if the un-prefixed events are usable, and if not remove them from the map.\n\n if (!('AnimationEvent' in window)) {\n delete vendorPrefixes.animationend.animation;\n delete vendorPrefixes.animationiteration.animation;\n delete vendorPrefixes.animationstart.animation;\n } // Same as above\n\n\n if (!('TransitionEvent' in window)) {\n delete vendorPrefixes.transitionend.transition;\n }\n}\n/**\n * Attempts to determine the correct vendor prefixed event name.\n *\n * @param {string} eventName\n * @returns {string}\n */\n\n\nfunction getVendorPrefixedEventName(eventName) {\n if (prefixedEventNames[eventName]) {\n return prefixedEventNames[eventName];\n } else if (!vendorPrefixes[eventName]) {\n return eventName;\n }\n\n var prefixMap = vendorPrefixes[eventName];\n\n for (var styleProp in prefixMap) {\n if (prefixMap.hasOwnProperty(styleProp) && styleProp in style) {\n return prefixedEventNames[eventName] = prefixMap[styleProp];\n }\n }\n\n return eventName;\n}\n\nvar ANIMATION_END = getVendorPrefixedEventName('animationend');\nvar ANIMATION_ITERATION = getVendorPrefixedEventName('animationiteration');\nvar ANIMATION_START = getVendorPrefixedEventName('animationstart');\nvar TRANSITION_END = getVendorPrefixedEventName('transitionend');\n\nvar topLevelEventsToReactNames = new Map(); // NOTE: Capitalization is important in this list!\n//\n// E.g. it needs \"pointerDown\", not \"pointerdown\".\n// This is because we derive both React name (\"onPointerDown\")\n// and DOM name (\"pointerdown\") from the same list.\n//\n// Exceptions that don't match this convention are listed separately.\n//\n// prettier-ignore\n\nvar simpleEventPluginEvents = ['abort', 'auxClick', 'cancel', 'canPlay', 'canPlayThrough', 'click', 'close', 'contextMenu', 'copy', 'cut', 'drag', 'dragEnd', 'dragEnter', 'dragExit', 'dragLeave', 'dragOver', 'dragStart', 'drop', 'durationChange', 'emptied', 'encrypted', 'ended', 'error', 'gotPointerCapture', 'input', 'invalid', 'keyDown', 'keyPress', 'keyUp', 'load', 'loadedData', 'loadedMetadata', 'loadStart', 'lostPointerCapture', 'mouseDown', 'mouseMove', 'mouseOut', 'mouseOver', 'mouseUp', 'paste', 'pause', 'play', 'playing', 'pointerCancel', 'pointerDown', 'pointerMove', 'pointerOut', 'pointerOver', 'pointerUp', 'progress', 'rateChange', 'reset', 'resize', 'seeked', 'seeking', 'stalled', 'submit', 'suspend', 'timeUpdate', 'touchCancel', 'touchEnd', 'touchStart', 'volumeChange', 'scroll', 'toggle', 'touchMove', 'waiting', 'wheel'];\n\nfunction registerSimpleEvent(domEventName, reactName) {\n topLevelEventsToReactNames.set(domEventName, reactName);\n registerTwoPhaseEvent(reactName, [domEventName]);\n}\n\nfunction registerSimpleEvents() {\n for (var i = 0; i < simpleEventPluginEvents.length; i++) {\n var eventName = simpleEventPluginEvents[i];\n var domEventName = eventName.toLowerCase();\n var capitalizedEvent = eventName[0].toUpperCase() + eventName.slice(1);\n registerSimpleEvent(domEventName, 'on' + capitalizedEvent);\n } // Special cases where event names don't match.\n\n\n registerSimpleEvent(ANIMATION_END, 'onAnimationEnd');\n registerSimpleEvent(ANIMATION_ITERATION, 'onAnimationIteration');\n registerSimpleEvent(ANIMATION_START, 'onAnimationStart');\n registerSimpleEvent('dblclick', 'onDoubleClick');\n registerSimpleEvent('focusin', 'onFocus');\n registerSimpleEvent('focusout', 'onBlur');\n registerSimpleEvent(TRANSITION_END, 'onTransitionEnd');\n}\n\nfunction extractEvents$4(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {\n var reactName = topLevelEventsToReactNames.get(domEventName);\n\n if (reactName === undefined) {\n return;\n }\n\n var SyntheticEventCtor = SyntheticEvent;\n var reactEventType = domEventName;\n\n switch (domEventName) {\n case 'keypress':\n // Firefox creates a keypress event for function keys too. This removes\n // the unwanted keypress events. Enter is however both printable and\n // non-printable. One would expect Tab to be as well (but it isn't).\n if (getEventCharCode(nativeEvent) === 0) {\n return;\n }\n\n /* falls through */\n\n case 'keydown':\n case 'keyup':\n SyntheticEventCtor = SyntheticKeyboardEvent;\n break;\n\n case 'focusin':\n reactEventType = 'focus';\n SyntheticEventCtor = SyntheticFocusEvent;\n break;\n\n case 'focusout':\n reactEventType = 'blur';\n SyntheticEventCtor = SyntheticFocusEvent;\n break;\n\n case 'beforeblur':\n case 'afterblur':\n SyntheticEventCtor = SyntheticFocusEvent;\n break;\n\n case 'click':\n // Firefox creates a click event on right mouse clicks. This removes the\n // unwanted click events.\n if (nativeEvent.button === 2) {\n return;\n }\n\n /* falls through */\n\n case 'auxclick':\n case 'dblclick':\n case 'mousedown':\n case 'mousemove':\n case 'mouseup': // TODO: Disabled elements should not respond to mouse events\n\n /* falls through */\n\n case 'mouseout':\n case 'mouseover':\n case 'contextmenu':\n SyntheticEventCtor = SyntheticMouseEvent;\n break;\n\n case 'drag':\n case 'dragend':\n case 'dragenter':\n case 'dragexit':\n case 'dragleave':\n case 'dragover':\n case 'dragstart':\n case 'drop':\n SyntheticEventCtor = SyntheticDragEvent;\n break;\n\n case 'touchcancel':\n case 'touchend':\n case 'touchmove':\n case 'touchstart':\n SyntheticEventCtor = SyntheticTouchEvent;\n break;\n\n case ANIMATION_END:\n case ANIMATION_ITERATION:\n case ANIMATION_START:\n SyntheticEventCtor = SyntheticAnimationEvent;\n break;\n\n case TRANSITION_END:\n SyntheticEventCtor = SyntheticTransitionEvent;\n break;\n\n case 'scroll':\n SyntheticEventCtor = SyntheticUIEvent;\n break;\n\n case 'wheel':\n SyntheticEventCtor = SyntheticWheelEvent;\n break;\n\n case 'copy':\n case 'cut':\n case 'paste':\n SyntheticEventCtor = SyntheticClipboardEvent;\n break;\n\n case 'gotpointercapture':\n case 'lostpointercapture':\n case 'pointercancel':\n case 'pointerdown':\n case 'pointermove':\n case 'pointerout':\n case 'pointerover':\n case 'pointerup':\n SyntheticEventCtor = SyntheticPointerEvent;\n break;\n }\n\n var inCapturePhase = (eventSystemFlags & IS_CAPTURE_PHASE) !== 0;\n\n {\n // Some events don't bubble in the browser.\n // In the past, React has always bubbled them, but this can be surprising.\n // We're going to try aligning closer to the browser behavior by not bubbling\n // them in React either. We'll start by not bubbling onScroll, and then expand.\n var accumulateTargetOnly = !inCapturePhase && // TODO: ideally, we'd eventually add all events from\n // nonDelegatedEvents list in DOMPluginEventSystem.\n // Then we can remove this special list.\n // This is a breaking change that can wait until React 18.\n domEventName === 'scroll';\n\n var _listeners = accumulateSinglePhaseListeners(targetInst, reactName, nativeEvent.type, inCapturePhase, accumulateTargetOnly);\n\n if (_listeners.length > 0) {\n // Intentionally create event lazily.\n var _event = new SyntheticEventCtor(reactName, reactEventType, null, nativeEvent, nativeEventTarget);\n\n dispatchQueue.push({\n event: _event,\n listeners: _listeners\n });\n }\n }\n}\n\n// TODO: remove top-level side effect.\nregisterSimpleEvents();\nregisterEvents$2();\nregisterEvents$1();\nregisterEvents$3();\nregisterEvents();\n\nfunction extractEvents$5(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags, targetContainer) {\n // TODO: we should remove the concept of a \"SimpleEventPlugin\".\n // This is the basic functionality of the event system. All\n // the other plugins are essentially polyfills. So the plugin\n // should probably be inlined somewhere and have its logic\n // be core the to event system. This would potentially allow\n // us to ship builds of React without the polyfilled plugins below.\n extractEvents$4(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags);\n var shouldProcessPolyfillPlugins = (eventSystemFlags & SHOULD_NOT_PROCESS_POLYFILL_EVENT_PLUGINS) === 0; // We don't process these events unless we are in the\n // event's native \"bubble\" phase, which means that we're\n // not in the capture phase. That's because we emulate\n // the capture phase here still. This is a trade-off,\n // because in an ideal world we would not emulate and use\n // the phases properly, like we do with the SimpleEvent\n // plugin. However, the plugins below either expect\n // emulation (EnterLeave) or use state localized to that\n // plugin (BeforeInput, Change, Select). The state in\n // these modules complicates things, as you'll essentially\n // get the case where the capture phase event might change\n // state, only for the following bubble event to come in\n // later and not trigger anything as the state now\n // invalidates the heuristics of the event plugin. We\n // could alter all these plugins to work in such ways, but\n // that might cause other unknown side-effects that we\n // can't foresee right now.\n\n if (shouldProcessPolyfillPlugins) {\n extractEvents$2(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);\n extractEvents$1(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);\n extractEvents$3(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);\n extractEvents(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget);\n }\n} // List of events that need to be individually attached to media elements.\n\n\nvar mediaEventTypes = ['abort', 'canplay', 'canplaythrough', 'durationchange', 'emptied', 'encrypted', 'ended', 'error', 'loadeddata', 'loadedmetadata', 'loadstart', 'pause', 'play', 'playing', 'progress', 'ratechange', 'resize', 'seeked', 'seeking', 'stalled', 'suspend', 'timeupdate', 'volumechange', 'waiting']; // We should not delegate these events to the container, but rather\n// set them on the actual target element itself. This is primarily\n// because these events do not consistently bubble in the DOM.\n\nvar nonDelegatedEvents = new Set(['cancel', 'close', 'invalid', 'load', 'scroll', 'toggle'].concat(mediaEventTypes));\n\nfunction executeDispatch(event, listener, currentTarget) {\n var type = event.type || 'unknown-event';\n event.currentTarget = currentTarget;\n invokeGuardedCallbackAndCatchFirstError(type, listener, undefined, event);\n event.currentTarget = null;\n}\n\nfunction processDispatchQueueItemsInOrder(event, dispatchListeners, inCapturePhase) {\n var previousInstance;\n\n if (inCapturePhase) {\n for (var i = dispatchListeners.length - 1; i >= 0; i--) {\n var _dispatchListeners$i = dispatchListeners[i],\n instance = _dispatchListeners$i.instance,\n currentTarget = _dispatchListeners$i.currentTarget,\n listener = _dispatchListeners$i.listener;\n\n if (instance !== previousInstance && event.isPropagationStopped()) {\n return;\n }\n\n executeDispatch(event, listener, currentTarget);\n previousInstance = instance;\n }\n } else {\n for (var _i = 0; _i < dispatchListeners.length; _i++) {\n var _dispatchListeners$_i = dispatchListeners[_i],\n _instance = _dispatchListeners$_i.instance,\n _currentTarget = _dispatchListeners$_i.currentTarget,\n _listener = _dispatchListeners$_i.listener;\n\n if (_instance !== previousInstance && event.isPropagationStopped()) {\n return;\n }\n\n executeDispatch(event, _listener, _currentTarget);\n previousInstance = _instance;\n }\n }\n}\n\nfunction processDispatchQueue(dispatchQueue, eventSystemFlags) {\n var inCapturePhase = (eventSystemFlags & IS_CAPTURE_PHASE) !== 0;\n\n for (var i = 0; i < dispatchQueue.length; i++) {\n var _dispatchQueue$i = dispatchQueue[i],\n event = _dispatchQueue$i.event,\n listeners = _dispatchQueue$i.listeners;\n processDispatchQueueItemsInOrder(event, listeners, inCapturePhase); // event system doesn't use pooling.\n } // This would be a good time to rethrow if any of the event handlers threw.\n\n\n rethrowCaughtError();\n}\n\nfunction dispatchEventsForPlugins(domEventName, eventSystemFlags, nativeEvent, targetInst, targetContainer) {\n var nativeEventTarget = getEventTarget(nativeEvent);\n var dispatchQueue = [];\n extractEvents$5(dispatchQueue, domEventName, targetInst, nativeEvent, nativeEventTarget, eventSystemFlags);\n processDispatchQueue(dispatchQueue, eventSystemFlags);\n}\n\nfunction listenToNonDelegatedEvent(domEventName, targetElement) {\n {\n if (!nonDelegatedEvents.has(domEventName)) {\n error('Did not expect a listenToNonDelegatedEvent() call for \"%s\". ' + 'This is a bug in React. Please file an issue.', domEventName);\n }\n }\n\n var isCapturePhaseListener = false;\n var listenerSet = getEventListenerSet(targetElement);\n var listenerSetKey = getListenerSetKey(domEventName, isCapturePhaseListener);\n\n if (!listenerSet.has(listenerSetKey)) {\n addTrappedEventListener(targetElement, domEventName, IS_NON_DELEGATED, isCapturePhaseListener);\n listenerSet.add(listenerSetKey);\n }\n}\nfunction listenToNativeEvent(domEventName, isCapturePhaseListener, target) {\n {\n if (nonDelegatedEvents.has(domEventName) && !isCapturePhaseListener) {\n error('Did not expect a listenToNativeEvent() call for \"%s\" in the bubble phase. ' + 'This is a bug in React. Please file an issue.', domEventName);\n }\n }\n\n var eventSystemFlags = 0;\n\n if (isCapturePhaseListener) {\n eventSystemFlags |= IS_CAPTURE_PHASE;\n }\n\n addTrappedEventListener(target, domEventName, eventSystemFlags, isCapturePhaseListener);\n} // This is only used by createEventHandle when the\nvar listeningMarker = '_reactListening' + Math.random().toString(36).slice(2);\nfunction listenToAllSupportedEvents(rootContainerElement) {\n if (!rootContainerElement[listeningMarker]) {\n rootContainerElement[listeningMarker] = true;\n allNativeEvents.forEach(function (domEventName) {\n // We handle selectionchange separately because it\n // doesn't bubble and needs to be on the document.\n if (domEventName !== 'selectionchange') {\n if (!nonDelegatedEvents.has(domEventName)) {\n listenToNativeEvent(domEventName, false, rootContainerElement);\n }\n\n listenToNativeEvent(domEventName, true, rootContainerElement);\n }\n });\n var ownerDocument = rootContainerElement.nodeType === DOCUMENT_NODE ? rootContainerElement : rootContainerElement.ownerDocument;\n\n if (ownerDocument !== null) {\n // The selectionchange event also needs deduplication\n // but it is attached to the document.\n if (!ownerDocument[listeningMarker]) {\n ownerDocument[listeningMarker] = true;\n listenToNativeEvent('selectionchange', false, ownerDocument);\n }\n }\n }\n}\n\nfunction addTrappedEventListener(targetContainer, domEventName, eventSystemFlags, isCapturePhaseListener, isDeferredListenerForLegacyFBSupport) {\n var listener = createEventListenerWrapperWithPriority(targetContainer, domEventName, eventSystemFlags); // If passive option is not supported, then the event will be\n // active and not passive.\n\n var isPassiveListener = undefined;\n\n if (passiveBrowserEventsSupported) {\n // Browsers introduced an intervention, making these events\n // passive by default on document. React doesn't bind them\n // to document anymore, but changing this now would undo\n // the performance wins from the change. So we emulate\n // the existing behavior manually on the roots now.\n // https://github.com/facebook/react/issues/19651\n if (domEventName === 'touchstart' || domEventName === 'touchmove' || domEventName === 'wheel') {\n isPassiveListener = true;\n }\n }\n\n targetContainer = targetContainer;\n var unsubscribeListener; // When legacyFBSupport is enabled, it's for when we\n\n\n if (isCapturePhaseListener) {\n if (isPassiveListener !== undefined) {\n unsubscribeListener = addEventCaptureListenerWithPassiveFlag(targetContainer, domEventName, listener, isPassiveListener);\n } else {\n unsubscribeListener = addEventCaptureListener(targetContainer, domEventName, listener);\n }\n } else {\n if (isPassiveListener !== undefined) {\n unsubscribeListener = addEventBubbleListenerWithPassiveFlag(targetContainer, domEventName, listener, isPassiveListener);\n } else {\n unsubscribeListener = addEventBubbleListener(targetContainer, domEventName, listener);\n }\n }\n}\n\nfunction isMatchingRootContainer(grandContainer, targetContainer) {\n return grandContainer === targetContainer || grandContainer.nodeType === COMMENT_NODE && grandContainer.parentNode === targetContainer;\n}\n\nfunction dispatchEventForPluginEventSystem(domEventName, eventSystemFlags, nativeEvent, targetInst, targetContainer) {\n var ancestorInst = targetInst;\n\n if ((eventSystemFlags & IS_EVENT_HANDLE_NON_MANAGED_NODE) === 0 && (eventSystemFlags & IS_NON_DELEGATED) === 0) {\n var targetContainerNode = targetContainer; // If we are using the legacy FB support flag, we\n\n if (targetInst !== null) {\n // The below logic attempts to work out if we need to change\n // the target fiber to a different ancestor. We had similar logic\n // in the legacy event system, except the big difference between\n // systems is that the modern event system now has an event listener\n // attached to each React Root and React Portal Root. Together,\n // the DOM nodes representing these roots are the \"rootContainer\".\n // To figure out which ancestor instance we should use, we traverse\n // up the fiber tree from the target instance and attempt to find\n // root boundaries that match that of our current \"rootContainer\".\n // If we find that \"rootContainer\", we find the parent fiber\n // sub-tree for that root and make that our ancestor instance.\n var node = targetInst;\n\n mainLoop: while (true) {\n if (node === null) {\n return;\n }\n\n var nodeTag = node.tag;\n\n if (nodeTag === HostRoot || nodeTag === HostPortal) {\n var container = node.stateNode.containerInfo;\n\n if (isMatchingRootContainer(container, targetContainerNode)) {\n break;\n }\n\n if (nodeTag === HostPortal) {\n // The target is a portal, but it's not the rootContainer we're looking for.\n // Normally portals handle their own events all the way down to the root.\n // So we should be able to stop now. However, we don't know if this portal\n // was part of *our* root.\n var grandNode = node.return;\n\n while (grandNode !== null) {\n var grandTag = grandNode.tag;\n\n if (grandTag === HostRoot || grandTag === HostPortal) {\n var grandContainer = grandNode.stateNode.containerInfo;\n\n if (isMatchingRootContainer(grandContainer, targetContainerNode)) {\n // This is the rootContainer we're looking for and we found it as\n // a parent of the Portal. That means we can ignore it because the\n // Portal will bubble through to us.\n return;\n }\n }\n\n grandNode = grandNode.return;\n }\n } // Now we need to find it's corresponding host fiber in the other\n // tree. To do this we can use getClosestInstanceFromNode, but we\n // need to validate that the fiber is a host instance, otherwise\n // we need to traverse up through the DOM till we find the correct\n // node that is from the other tree.\n\n\n while (container !== null) {\n var parentNode = getClosestInstanceFromNode(container);\n\n if (parentNode === null) {\n return;\n }\n\n var parentTag = parentNode.tag;\n\n if (parentTag === HostComponent || parentTag === HostText) {\n node = ancestorInst = parentNode;\n continue mainLoop;\n }\n\n container = container.parentNode;\n }\n }\n\n node = node.return;\n }\n }\n }\n\n batchedUpdates(function () {\n return dispatchEventsForPlugins(domEventName, eventSystemFlags, nativeEvent, ancestorInst);\n });\n}\n\nfunction createDispatchListener(instance, listener, currentTarget) {\n return {\n instance: instance,\n listener: listener,\n currentTarget: currentTarget\n };\n}\n\nfunction accumulateSinglePhaseListeners(targetFiber, reactName, nativeEventType, inCapturePhase, accumulateTargetOnly, nativeEvent) {\n var captureName = reactName !== null ? reactName + 'Capture' : null;\n var reactEventName = inCapturePhase ? captureName : reactName;\n var listeners = [];\n var instance = targetFiber;\n var lastHostComponent = null; // Accumulate all instances and listeners via the target -> root path.\n\n while (instance !== null) {\n var _instance2 = instance,\n stateNode = _instance2.stateNode,\n tag = _instance2.tag; // Handle listeners that are on HostComponents (i.e. <div>)\n\n if (tag === HostComponent && stateNode !== null) {\n lastHostComponent = stateNode; // createEventHandle listeners\n\n\n if (reactEventName !== null) {\n var listener = getListener(instance, reactEventName);\n\n if (listener != null) {\n listeners.push(createDispatchListener(instance, listener, lastHostComponent));\n }\n }\n } // If we are only accumulating events for the target, then we don't\n // continue to propagate through the React fiber tree to find other\n // listeners.\n\n\n if (accumulateTargetOnly) {\n break;\n } // If we are processing the onBeforeBlur event, then we need to take\n\n instance = instance.return;\n }\n\n return listeners;\n} // We should only use this function for:\n// - BeforeInputEventPlugin\n// - ChangeEventPlugin\n// - SelectEventPlugin\n// This is because we only process these plugins\n// in the bubble phase, so we need to accumulate two\n// phase event listeners (via emulation).\n\nfunction accumulateTwoPhaseListeners(targetFiber, reactName) {\n var captureName = reactName + 'Capture';\n var listeners = [];\n var instance = targetFiber; // Accumulate all instances and listeners via the target -> root path.\n\n while (instance !== null) {\n var _instance3 = instance,\n stateNode = _instance3.stateNode,\n tag = _instance3.tag; // Handle listeners that are on HostComponents (i.e. <div>)\n\n if (tag === HostComponent && stateNode !== null) {\n var currentTarget = stateNode;\n var captureListener = getListener(instance, captureName);\n\n if (captureListener != null) {\n listeners.unshift(createDispatchListener(instance, captureListener, currentTarget));\n }\n\n var bubbleListener = getListener(instance, reactName);\n\n if (bubbleListener != null) {\n listeners.push(createDispatchListener(instance, bubbleListener, currentTarget));\n }\n }\n\n instance = instance.return;\n }\n\n return listeners;\n}\n\nfunction getParent(inst) {\n if (inst === null) {\n return null;\n }\n\n do {\n inst = inst.return; // TODO: If this is a HostRoot we might want to bail out.\n // That is depending on if we want nested subtrees (layers) to bubble\n // events to their parent. We could also go through parentNode on the\n // host node but that wouldn't work for React Native and doesn't let us\n // do the portal feature.\n } while (inst && inst.tag !== HostComponent);\n\n if (inst) {\n return inst;\n }\n\n return null;\n}\n/**\n * Return the lowest common ancestor of A and B, or null if they are in\n * different trees.\n */\n\n\nfunction getLowestCommonAncestor(instA, instB) {\n var nodeA = instA;\n var nodeB = instB;\n var depthA = 0;\n\n for (var tempA = nodeA; tempA; tempA = getParent(tempA)) {\n depthA++;\n }\n\n var depthB = 0;\n\n for (var tempB = nodeB; tempB; tempB = getParent(tempB)) {\n depthB++;\n } // If A is deeper, crawl up.\n\n\n while (depthA - depthB > 0) {\n nodeA = getParent(nodeA);\n depthA--;\n } // If B is deeper, crawl up.\n\n\n while (depthB - depthA > 0) {\n nodeB = getParent(nodeB);\n depthB--;\n } // Walk in lockstep until we find a match.\n\n\n var depth = depthA;\n\n while (depth--) {\n if (nodeA === nodeB || nodeB !== null && nodeA === nodeB.alternate) {\n return nodeA;\n }\n\n nodeA = getParent(nodeA);\n nodeB = getParent(nodeB);\n }\n\n return null;\n}\n\nfunction accumulateEnterLeaveListenersForEvent(dispatchQueue, event, target, common, inCapturePhase) {\n var registrationName = event._reactName;\n var listeners = [];\n var instance = target;\n\n while (instance !== null) {\n if (instance === common) {\n break;\n }\n\n var _instance4 = instance,\n alternate = _instance4.alternate,\n stateNode = _instance4.stateNode,\n tag = _instance4.tag;\n\n if (alternate !== null && alternate === common) {\n break;\n }\n\n if (tag === HostComponent && stateNode !== null) {\n var currentTarget = stateNode;\n\n if (inCapturePhase) {\n var captureListener = getListener(instance, registrationName);\n\n if (captureListener != null) {\n listeners.unshift(createDispatchListener(instance, captureListener, currentTarget));\n }\n } else if (!inCapturePhase) {\n var bubbleListener = getListener(instance, registrationName);\n\n if (bubbleListener != null) {\n listeners.push(createDispatchListener(instance, bubbleListener, currentTarget));\n }\n }\n }\n\n instance = instance.return;\n }\n\n if (listeners.length !== 0) {\n dispatchQueue.push({\n event: event,\n listeners: listeners\n });\n }\n} // We should only use this function for:\n// - EnterLeaveEventPlugin\n// This is because we only process this plugin\n// in the bubble phase, so we need to accumulate two\n// phase event listeners.\n\n\nfunction accumulateEnterLeaveTwoPhaseListeners(dispatchQueue, leaveEvent, enterEvent, from, to) {\n var common = from && to ? getLowestCommonAncestor(from, to) : null;\n\n if (from !== null) {\n accumulateEnterLeaveListenersForEvent(dispatchQueue, leaveEvent, from, common, false);\n }\n\n if (to !== null && enterEvent !== null) {\n accumulateEnterLeaveListenersForEvent(dispatchQueue, enterEvent, to, common, true);\n }\n}\nfunction getListenerSetKey(domEventName, capture) {\n return domEventName + \"__\" + (capture ? 'capture' : 'bubble');\n}\n\nvar didWarnInvalidHydration = false;\nvar DANGEROUSLY_SET_INNER_HTML = 'dangerouslySetInnerHTML';\nvar SUPPRESS_CONTENT_EDITABLE_WARNING = 'suppressContentEditableWarning';\nvar SUPPRESS_HYDRATION_WARNING = 'suppressHydrationWarning';\nvar AUTOFOCUS = 'autoFocus';\nvar CHILDREN = 'children';\nvar STYLE = 'style';\nvar HTML$1 = '__html';\nvar warnedUnknownTags;\nvar validatePropertiesInDevelopment;\nvar warnForPropDifference;\nvar warnForExtraAttributes;\nvar warnForInvalidEventListener;\nvar canDiffStyleForHydrationWarning;\nvar normalizeHTML;\n\n{\n warnedUnknownTags = {\n // There are working polyfills for <dialog>. Let people use it.\n dialog: true,\n // Electron ships a custom <webview> tag to display external web content in\n // an isolated frame and process.\n // This tag is not present in non Electron environments such as JSDom which\n // is often used for testing purposes.\n // @see https://electronjs.org/docs/api/webview-tag\n webview: true\n };\n\n validatePropertiesInDevelopment = function (type, props) {\n validateProperties(type, props);\n validateProperties$1(type, props);\n validateProperties$2(type, props, {\n registrationNameDependencies: registrationNameDependencies,\n possibleRegistrationNames: possibleRegistrationNames\n });\n }; // IE 11 parses & normalizes the style attribute as opposed to other\n // browsers. It adds spaces and sorts the properties in some\n // non-alphabetical order. Handling that would require sorting CSS\n // properties in the client & server versions or applying\n // `expectedStyle` to a temporary DOM node to read its `style` attribute\n // normalized. Since it only affects IE, we're skipping style warnings\n // in that browser completely in favor of doing all that work.\n // See https://github.com/facebook/react/issues/11807\n\n\n canDiffStyleForHydrationWarning = canUseDOM && !document.documentMode;\n\n warnForPropDifference = function (propName, serverValue, clientValue) {\n if (didWarnInvalidHydration) {\n return;\n }\n\n var normalizedClientValue = normalizeMarkupForTextOrAttribute(clientValue);\n var normalizedServerValue = normalizeMarkupForTextOrAttribute(serverValue);\n\n if (normalizedServerValue === normalizedClientValue) {\n return;\n }\n\n didWarnInvalidHydration = true;\n\n error('Prop `%s` did not match. Server: %s Client: %s', propName, JSON.stringify(normalizedServerValue), JSON.stringify(normalizedClientValue));\n };\n\n warnForExtraAttributes = function (attributeNames) {\n if (didWarnInvalidHydration) {\n return;\n }\n\n didWarnInvalidHydration = true;\n var names = [];\n attributeNames.forEach(function (name) {\n names.push(name);\n });\n\n error('Extra attributes from the server: %s', names);\n };\n\n warnForInvalidEventListener = function (registrationName, listener) {\n if (listener === false) {\n error('Expected `%s` listener to be a function, instead got `false`.\\n\\n' + 'If you used to conditionally omit it with %s={condition && value}, ' + 'pass %s={condition ? value : undefined} instead.', registrationName, registrationName, registrationName);\n } else {\n error('Expected `%s` listener to be a function, instead got a value of `%s` type.', registrationName, typeof listener);\n }\n }; // Parse the HTML and read it back to normalize the HTML string so that it\n // can be used for comparison.\n\n\n normalizeHTML = function (parent, html) {\n // We could have created a separate document here to avoid\n // re-initializing custom elements if they exist. But this breaks\n // how <noscript> is being handled. So we use the same document.\n // See the discussion in https://github.com/facebook/react/pull/11157.\n var testElement = parent.namespaceURI === HTML_NAMESPACE ? parent.ownerDocument.createElement(parent.tagName) : parent.ownerDocument.createElementNS(parent.namespaceURI, parent.tagName);\n testElement.innerHTML = html;\n return testElement.innerHTML;\n };\n} // HTML parsing normalizes CR and CRLF to LF.\n// It also can turn \\u0000 into \\uFFFD inside attributes.\n// https://www.w3.org/TR/html5/single-page.html#preprocessing-the-input-stream\n// If we have a mismatch, it might be caused by that.\n// We will still patch up in this case but not fire the warning.\n\n\nvar NORMALIZE_NEWLINES_REGEX = /\\r\\n?/g;\nvar NORMALIZE_NULL_AND_REPLACEMENT_REGEX = /\\u0000|\\uFFFD/g;\n\nfunction normalizeMarkupForTextOrAttribute(markup) {\n {\n checkHtmlStringCoercion(markup);\n }\n\n var markupString = typeof markup === 'string' ? markup : '' + markup;\n return markupString.replace(NORMALIZE_NEWLINES_REGEX, '\\n').replace(NORMALIZE_NULL_AND_REPLACEMENT_REGEX, '');\n}\n\nfunction checkForUnmatchedText(serverText, clientText, isConcurrentMode, shouldWarnDev) {\n var normalizedClientText = normalizeMarkupForTextOrAttribute(clientText);\n var normalizedServerText = normalizeMarkupForTextOrAttribute(serverText);\n\n if (normalizedServerText === normalizedClientText) {\n return;\n }\n\n if (shouldWarnDev) {\n {\n if (!didWarnInvalidHydration) {\n didWarnInvalidHydration = true;\n\n error('Text content did not match. Server: \"%s\" Client: \"%s\"', normalizedServerText, normalizedClientText);\n }\n }\n }\n\n if (isConcurrentMode && enableClientRenderFallbackOnTextMismatch) {\n // In concurrent roots, we throw when there's a text mismatch and revert to\n // client rendering, up to the nearest Suspense boundary.\n throw new Error('Text content does not match server-rendered HTML.');\n }\n}\n\nfunction getOwnerDocumentFromRootContainer(rootContainerElement) {\n return rootContainerElement.nodeType === DOCUMENT_NODE ? rootContainerElement : rootContainerElement.ownerDocument;\n}\n\nfunction noop() {}\n\nfunction trapClickOnNonInteractiveElement(node) {\n // Mobile Safari does not fire properly bubble click events on\n // non-interactive elements, which means delegated click listeners do not\n // fire. The workaround for this bug involves attaching an empty click\n // listener on the target node.\n // https://www.quirksmode.org/blog/archives/2010/09/click_event_del.html\n // Just set it using the onclick property so that we don't have to manage any\n // bookkeeping for it. Not sure if we need to clear it when the listener is\n // removed.\n // TODO: Only do this for the relevant Safaris maybe?\n node.onclick = noop;\n}\n\nfunction setInitialDOMProperties(tag, domElement, rootContainerElement, nextProps, isCustomComponentTag) {\n for (var propKey in nextProps) {\n if (!nextProps.hasOwnProperty(propKey)) {\n continue;\n }\n\n var nextProp = nextProps[propKey];\n\n if (propKey === STYLE) {\n {\n if (nextProp) {\n // Freeze the next style object so that we can assume it won't be\n // mutated. We have already warned for this in the past.\n Object.freeze(nextProp);\n }\n } // Relies on `updateStylesByID` not mutating `styleUpdates`.\n\n\n setValueForStyles(domElement, nextProp);\n } else if (propKey === DANGEROUSLY_SET_INNER_HTML) {\n var nextHtml = nextProp ? nextProp[HTML$1] : undefined;\n\n if (nextHtml != null) {\n setInnerHTML(domElement, nextHtml);\n }\n } else if (propKey === CHILDREN) {\n if (typeof nextProp === 'string') {\n // Avoid setting initial textContent when the text is empty. In IE11 setting\n // textContent on a <textarea> will cause the placeholder to not\n // show within the <textarea> until it has been focused and blurred again.\n // https://github.com/facebook/react/issues/6731#issuecomment-254874553\n var canSetTextContent = tag !== 'textarea' || nextProp !== '';\n\n if (canSetTextContent) {\n setTextContent(domElement, nextProp);\n }\n } else if (typeof nextProp === 'number') {\n setTextContent(domElement, '' + nextProp);\n }\n } else if (propKey === SUPPRESS_CONTENT_EDITABLE_WARNING || propKey === SUPPRESS_HYDRATION_WARNING) ; else if (propKey === AUTOFOCUS) ; else if (registrationNameDependencies.hasOwnProperty(propKey)) {\n if (nextProp != null) {\n if ( typeof nextProp !== 'function') {\n warnForInvalidEventListener(propKey, nextProp);\n }\n\n if (propKey === 'onScroll') {\n listenToNonDelegatedEvent('scroll', domElement);\n }\n }\n } else if (nextProp != null) {\n setValueForProperty(domElement, propKey, nextProp, isCustomComponentTag);\n }\n }\n}\n\nfunction updateDOMProperties(domElement, updatePayload, wasCustomComponentTag, isCustomComponentTag) {\n // TODO: Handle wasCustomComponentTag\n for (var i = 0; i < updatePayload.length; i += 2) {\n var propKey = updatePayload[i];\n var propValue = updatePayload[i + 1];\n\n if (propKey === STYLE) {\n setValueForStyles(domElement, propValue);\n } else if (propKey === DANGEROUSLY_SET_INNER_HTML) {\n setInnerHTML(domElement, propValue);\n } else if (propKey === CHILDREN) {\n setTextContent(domElement, propValue);\n } else {\n setValueForProperty(domElement, propKey, propValue, isCustomComponentTag);\n }\n }\n}\n\nfunction createElement(type, props, rootContainerElement, parentNamespace) {\n var isCustomComponentTag; // We create tags in the namespace of their parent container, except HTML\n // tags get no namespace.\n\n var ownerDocument = getOwnerDocumentFromRootContainer(rootContainerElement);\n var domElement;\n var namespaceURI = parentNamespace;\n\n if (namespaceURI === HTML_NAMESPACE) {\n namespaceURI = getIntrinsicNamespace(type);\n }\n\n if (namespaceURI === HTML_NAMESPACE) {\n {\n isCustomComponentTag = isCustomComponent(type, props); // Should this check be gated by parent namespace? Not sure we want to\n // allow <SVG> or <mATH>.\n\n if (!isCustomComponentTag && type !== type.toLowerCase()) {\n error('<%s /> is using incorrect casing. ' + 'Use PascalCase for React components, ' + 'or lowercase for HTML elements.', type);\n }\n }\n\n if (type === 'script') {\n // Create the script via .innerHTML so its \"parser-inserted\" flag is\n // set to true and it does not execute\n var div = ownerDocument.createElement('div');\n\n div.innerHTML = '<script><' + '/script>'; // eslint-disable-line\n // This is guaranteed to yield a script element.\n\n var firstChild = div.firstChild;\n domElement = div.removeChild(firstChild);\n } else if (typeof props.is === 'string') {\n // $FlowIssue `createElement` should be updated for Web Components\n domElement = ownerDocument.createElement(type, {\n is: props.is\n });\n } else {\n // Separate else branch instead of using `props.is || undefined` above because of a Firefox bug.\n // See discussion in https://github.com/facebook/react/pull/6896\n // and discussion in https://bugzilla.mozilla.org/show_bug.cgi?id=1276240\n domElement = ownerDocument.createElement(type); // Normally attributes are assigned in `setInitialDOMProperties`, however the `multiple` and `size`\n // attributes on `select`s needs to be added before `option`s are inserted.\n // This prevents:\n // - a bug where the `select` does not scroll to the correct option because singular\n // `select` elements automatically pick the first item #13222\n // - a bug where the `select` set the first item as selected despite the `size` attribute #14239\n // See https://github.com/facebook/react/issues/13222\n // and https://github.com/facebook/react/issues/14239\n\n if (type === 'select') {\n var node = domElement;\n\n if (props.multiple) {\n node.multiple = true;\n } else if (props.size) {\n // Setting a size greater than 1 causes a select to behave like `multiple=true`, where\n // it is possible that no option is selected.\n //\n // This is only necessary when a select in \"single selection mode\".\n node.size = props.size;\n }\n }\n }\n } else {\n domElement = ownerDocument.createElementNS(namespaceURI, type);\n }\n\n {\n if (namespaceURI === HTML_NAMESPACE) {\n if (!isCustomComponentTag && Object.prototype.toString.call(domElement) === '[object HTMLUnknownElement]' && !hasOwnProperty.call(warnedUnknownTags, type)) {\n warnedUnknownTags[type] = true;\n\n error('The tag <%s> is unrecognized in this browser. ' + 'If you meant to render a React component, start its name with ' + 'an uppercase letter.', type);\n }\n }\n }\n\n return domElement;\n}\nfunction createTextNode(text, rootContainerElement) {\n return getOwnerDocumentFromRootContainer(rootContainerElement).createTextNode(text);\n}\nfunction setInitialProperties(domElement, tag, rawProps, rootContainerElement) {\n var isCustomComponentTag = isCustomComponent(tag, rawProps);\n\n {\n validatePropertiesInDevelopment(tag, rawProps);\n } // TODO: Make sure that we check isMounted before firing any of these events.\n\n\n var props;\n\n switch (tag) {\n case 'dialog':\n listenToNonDelegatedEvent('cancel', domElement);\n listenToNonDelegatedEvent('close', domElement);\n props = rawProps;\n break;\n\n case 'iframe':\n case 'object':\n case 'embed':\n // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the load event.\n listenToNonDelegatedEvent('load', domElement);\n props = rawProps;\n break;\n\n case 'video':\n case 'audio':\n // We listen to these events in case to ensure emulated bubble\n // listeners still fire for all the media events.\n for (var i = 0; i < mediaEventTypes.length; i++) {\n listenToNonDelegatedEvent(mediaEventTypes[i], domElement);\n }\n\n props = rawProps;\n break;\n\n case 'source':\n // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the error event.\n listenToNonDelegatedEvent('error', domElement);\n props = rawProps;\n break;\n\n case 'img':\n case 'image':\n case 'link':\n // We listen to these events in case to ensure emulated bubble\n // listeners still fire for error and load events.\n listenToNonDelegatedEvent('error', domElement);\n listenToNonDelegatedEvent('load', domElement);\n props = rawProps;\n break;\n\n case 'details':\n // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the toggle event.\n listenToNonDelegatedEvent('toggle', domElement);\n props = rawProps;\n break;\n\n case 'input':\n initWrapperState(domElement, rawProps);\n props = getHostProps(domElement, rawProps); // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the invalid event.\n\n listenToNonDelegatedEvent('invalid', domElement);\n break;\n\n case 'option':\n validateProps(domElement, rawProps);\n props = rawProps;\n break;\n\n case 'select':\n initWrapperState$1(domElement, rawProps);\n props = getHostProps$1(domElement, rawProps); // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the invalid event.\n\n listenToNonDelegatedEvent('invalid', domElement);\n break;\n\n case 'textarea':\n initWrapperState$2(domElement, rawProps);\n props = getHostProps$2(domElement, rawProps); // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the invalid event.\n\n listenToNonDelegatedEvent('invalid', domElement);\n break;\n\n default:\n props = rawProps;\n }\n\n assertValidProps(tag, props);\n setInitialDOMProperties(tag, domElement, rootContainerElement, props, isCustomComponentTag);\n\n switch (tag) {\n case 'input':\n // TODO: Make sure we check if this is still unmounted or do any clean\n // up necessary since we never stop tracking anymore.\n track(domElement);\n postMountWrapper(domElement, rawProps, false);\n break;\n\n case 'textarea':\n // TODO: Make sure we check if this is still unmounted or do any clean\n // up necessary since we never stop tracking anymore.\n track(domElement);\n postMountWrapper$3(domElement);\n break;\n\n case 'option':\n postMountWrapper$1(domElement, rawProps);\n break;\n\n case 'select':\n postMountWrapper$2(domElement, rawProps);\n break;\n\n default:\n if (typeof props.onClick === 'function') {\n // TODO: This cast may not be sound for SVG, MathML or custom elements.\n trapClickOnNonInteractiveElement(domElement);\n }\n\n break;\n }\n} // Calculate the diff between the two objects.\n\nfunction diffProperties(domElement, tag, lastRawProps, nextRawProps, rootContainerElement) {\n {\n validatePropertiesInDevelopment(tag, nextRawProps);\n }\n\n var updatePayload = null;\n var lastProps;\n var nextProps;\n\n switch (tag) {\n case 'input':\n lastProps = getHostProps(domElement, lastRawProps);\n nextProps = getHostProps(domElement, nextRawProps);\n updatePayload = [];\n break;\n\n case 'select':\n lastProps = getHostProps$1(domElement, lastRawProps);\n nextProps = getHostProps$1(domElement, nextRawProps);\n updatePayload = [];\n break;\n\n case 'textarea':\n lastProps = getHostProps$2(domElement, lastRawProps);\n nextProps = getHostProps$2(domElement, nextRawProps);\n updatePayload = [];\n break;\n\n default:\n lastProps = lastRawProps;\n nextProps = nextRawProps;\n\n if (typeof lastProps.onClick !== 'function' && typeof nextProps.onClick === 'function') {\n // TODO: This cast may not be sound for SVG, MathML or custom elements.\n trapClickOnNonInteractiveElement(domElement);\n }\n\n break;\n }\n\n assertValidProps(tag, nextProps);\n var propKey;\n var styleName;\n var styleUpdates = null;\n\n for (propKey in lastProps) {\n if (nextProps.hasOwnProperty(propKey) || !lastProps.hasOwnProperty(propKey) || lastProps[propKey] == null) {\n continue;\n }\n\n if (propKey === STYLE) {\n var lastStyle = lastProps[propKey];\n\n for (styleName in lastStyle) {\n if (lastStyle.hasOwnProperty(styleName)) {\n if (!styleUpdates) {\n styleUpdates = {};\n }\n\n styleUpdates[styleName] = '';\n }\n }\n } else if (propKey === DANGEROUSLY_SET_INNER_HTML || propKey === CHILDREN) ; else if (propKey === SUPPRESS_CONTENT_EDITABLE_WARNING || propKey === SUPPRESS_HYDRATION_WARNING) ; else if (propKey === AUTOFOCUS) ; else if (registrationNameDependencies.hasOwnProperty(propKey)) {\n // This is a special case. If any listener updates we need to ensure\n // that the \"current\" fiber pointer gets updated so we need a commit\n // to update this element.\n if (!updatePayload) {\n updatePayload = [];\n }\n } else {\n // For all other deleted properties we add it to the queue. We use\n // the allowed property list in the commit phase instead.\n (updatePayload = updatePayload || []).push(propKey, null);\n }\n }\n\n for (propKey in nextProps) {\n var nextProp = nextProps[propKey];\n var lastProp = lastProps != null ? lastProps[propKey] : undefined;\n\n if (!nextProps.hasOwnProperty(propKey) || nextProp === lastProp || nextProp == null && lastProp == null) {\n continue;\n }\n\n if (propKey === STYLE) {\n {\n if (nextProp) {\n // Freeze the next style object so that we can assume it won't be\n // mutated. We have already warned for this in the past.\n Object.freeze(nextProp);\n }\n }\n\n if (lastProp) {\n // Unset styles on `lastProp` but not on `nextProp`.\n for (styleName in lastProp) {\n if (lastProp.hasOwnProperty(styleName) && (!nextProp || !nextProp.hasOwnProperty(styleName))) {\n if (!styleUpdates) {\n styleUpdates = {};\n }\n\n styleUpdates[styleName] = '';\n }\n } // Update styles that changed since `lastProp`.\n\n\n for (styleName in nextProp) {\n if (nextProp.hasOwnProperty(styleName) && lastProp[styleName] !== nextProp[styleName]) {\n if (!styleUpdates) {\n styleUpdates = {};\n }\n\n styleUpdates[styleName] = nextProp[styleName];\n }\n }\n } else {\n // Relies on `updateStylesByID` not mutating `styleUpdates`.\n if (!styleUpdates) {\n if (!updatePayload) {\n updatePayload = [];\n }\n\n updatePayload.push(propKey, styleUpdates);\n }\n\n styleUpdates = nextProp;\n }\n } else if (propKey === DANGEROUSLY_SET_INNER_HTML) {\n var nextHtml = nextProp ? nextProp[HTML$1] : undefined;\n var lastHtml = lastProp ? lastProp[HTML$1] : undefined;\n\n if (nextHtml != null) {\n if (lastHtml !== nextHtml) {\n (updatePayload = updatePayload || []).push(propKey, nextHtml);\n }\n }\n } else if (propKey === CHILDREN) {\n if (typeof nextProp === 'string' || typeof nextProp === 'number') {\n (updatePayload = updatePayload || []).push(propKey, '' + nextProp);\n }\n } else if (propKey === SUPPRESS_CONTENT_EDITABLE_WARNING || propKey === SUPPRESS_HYDRATION_WARNING) ; else if (registrationNameDependencies.hasOwnProperty(propKey)) {\n if (nextProp != null) {\n // We eagerly listen to this even though we haven't committed yet.\n if ( typeof nextProp !== 'function') {\n warnForInvalidEventListener(propKey, nextProp);\n }\n\n if (propKey === 'onScroll') {\n listenToNonDelegatedEvent('scroll', domElement);\n }\n }\n\n if (!updatePayload && lastProp !== nextProp) {\n // This is a special case. If any listener updates we need to ensure\n // that the \"current\" props pointer gets updated so we need a commit\n // to update this element.\n updatePayload = [];\n }\n } else {\n // For any other property we always add it to the queue and then we\n // filter it out using the allowed property list during the commit.\n (updatePayload = updatePayload || []).push(propKey, nextProp);\n }\n }\n\n if (styleUpdates) {\n {\n validateShorthandPropertyCollisionInDev(styleUpdates, nextProps[STYLE]);\n }\n\n (updatePayload = updatePayload || []).push(STYLE, styleUpdates);\n }\n\n return updatePayload;\n} // Apply the diff.\n\nfunction updateProperties(domElement, updatePayload, tag, lastRawProps, nextRawProps) {\n // Update checked *before* name.\n // In the middle of an update, it is possible to have multiple checked.\n // When a checked radio tries to change name, browser makes another radio's checked false.\n if (tag === 'input' && nextRawProps.type === 'radio' && nextRawProps.name != null) {\n updateChecked(domElement, nextRawProps);\n }\n\n var wasCustomComponentTag = isCustomComponent(tag, lastRawProps);\n var isCustomComponentTag = isCustomComponent(tag, nextRawProps); // Apply the diff.\n\n updateDOMProperties(domElement, updatePayload, wasCustomComponentTag, isCustomComponentTag); // TODO: Ensure that an update gets scheduled if any of the special props\n // changed.\n\n switch (tag) {\n case 'input':\n // Update the wrapper around inputs *after* updating props. This has to\n // happen after `updateDOMProperties`. Otherwise HTML5 input validations\n // raise warnings and prevent the new value from being assigned.\n updateWrapper(domElement, nextRawProps);\n break;\n\n case 'textarea':\n updateWrapper$1(domElement, nextRawProps);\n break;\n\n case 'select':\n // <select> value update needs to occur after <option> children\n // reconciliation\n postUpdateWrapper(domElement, nextRawProps);\n break;\n }\n}\n\nfunction getPossibleStandardName(propName) {\n {\n var lowerCasedName = propName.toLowerCase();\n\n if (!possibleStandardNames.hasOwnProperty(lowerCasedName)) {\n return null;\n }\n\n return possibleStandardNames[lowerCasedName] || null;\n }\n}\n\nfunction diffHydratedProperties(domElement, tag, rawProps, parentNamespace, rootContainerElement, isConcurrentMode, shouldWarnDev) {\n var isCustomComponentTag;\n var extraAttributeNames;\n\n {\n isCustomComponentTag = isCustomComponent(tag, rawProps);\n validatePropertiesInDevelopment(tag, rawProps);\n } // TODO: Make sure that we check isMounted before firing any of these events.\n\n\n switch (tag) {\n case 'dialog':\n listenToNonDelegatedEvent('cancel', domElement);\n listenToNonDelegatedEvent('close', domElement);\n break;\n\n case 'iframe':\n case 'object':\n case 'embed':\n // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the load event.\n listenToNonDelegatedEvent('load', domElement);\n break;\n\n case 'video':\n case 'audio':\n // We listen to these events in case to ensure emulated bubble\n // listeners still fire for all the media events.\n for (var i = 0; i < mediaEventTypes.length; i++) {\n listenToNonDelegatedEvent(mediaEventTypes[i], domElement);\n }\n\n break;\n\n case 'source':\n // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the error event.\n listenToNonDelegatedEvent('error', domElement);\n break;\n\n case 'img':\n case 'image':\n case 'link':\n // We listen to these events in case to ensure emulated bubble\n // listeners still fire for error and load events.\n listenToNonDelegatedEvent('error', domElement);\n listenToNonDelegatedEvent('load', domElement);\n break;\n\n case 'details':\n // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the toggle event.\n listenToNonDelegatedEvent('toggle', domElement);\n break;\n\n case 'input':\n initWrapperState(domElement, rawProps); // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the invalid event.\n\n listenToNonDelegatedEvent('invalid', domElement);\n break;\n\n case 'option':\n validateProps(domElement, rawProps);\n break;\n\n case 'select':\n initWrapperState$1(domElement, rawProps); // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the invalid event.\n\n listenToNonDelegatedEvent('invalid', domElement);\n break;\n\n case 'textarea':\n initWrapperState$2(domElement, rawProps); // We listen to this event in case to ensure emulated bubble\n // listeners still fire for the invalid event.\n\n listenToNonDelegatedEvent('invalid', domElement);\n break;\n }\n\n assertValidProps(tag, rawProps);\n\n {\n extraAttributeNames = new Set();\n var attributes = domElement.attributes;\n\n for (var _i = 0; _i < attributes.length; _i++) {\n var name = attributes[_i].name.toLowerCase();\n\n switch (name) {\n // Controlled attributes are not validated\n // TODO: Only ignore them on controlled tags.\n case 'value':\n break;\n\n case 'checked':\n break;\n\n case 'selected':\n break;\n\n default:\n // Intentionally use the original name.\n // See discussion in https://github.com/facebook/react/pull/10676.\n extraAttributeNames.add(attributes[_i].name);\n }\n }\n }\n\n var updatePayload = null;\n\n for (var propKey in rawProps) {\n if (!rawProps.hasOwnProperty(propKey)) {\n continue;\n }\n\n var nextProp = rawProps[propKey];\n\n if (propKey === CHILDREN) {\n // For text content children we compare against textContent. This\n // might match additional HTML that is hidden when we read it using\n // textContent. E.g. \"foo\" will match \"f<span>oo</span>\" but that still\n // satisfies our requirement. Our requirement is not to produce perfect\n // HTML and attributes. Ideally we should preserve structure but it's\n // ok not to if the visible content is still enough to indicate what\n // even listeners these nodes might be wired up to.\n // TODO: Warn if there is more than a single textNode as a child.\n // TODO: Should we use domElement.firstChild.nodeValue to compare?\n if (typeof nextProp === 'string') {\n if (domElement.textContent !== nextProp) {\n if (rawProps[SUPPRESS_HYDRATION_WARNING] !== true) {\n checkForUnmatchedText(domElement.textContent, nextProp, isConcurrentMode, shouldWarnDev);\n }\n\n updatePayload = [CHILDREN, nextProp];\n }\n } else if (typeof nextProp === 'number') {\n if (domElement.textContent !== '' + nextProp) {\n if (rawProps[SUPPRESS_HYDRATION_WARNING] !== true) {\n checkForUnmatchedText(domElement.textContent, nextProp, isConcurrentMode, shouldWarnDev);\n }\n\n updatePayload = [CHILDREN, '' + nextProp];\n }\n }\n } else if (registrationNameDependencies.hasOwnProperty(propKey)) {\n if (nextProp != null) {\n if ( typeof nextProp !== 'function') {\n warnForInvalidEventListener(propKey, nextProp);\n }\n\n if (propKey === 'onScroll') {\n listenToNonDelegatedEvent('scroll', domElement);\n }\n }\n } else if (shouldWarnDev && true && // Convince Flow we've calculated it (it's DEV-only in this method.)\n typeof isCustomComponentTag === 'boolean') {\n // Validate that the properties correspond to their expected values.\n var serverValue = void 0;\n var propertyInfo = isCustomComponentTag && enableCustomElementPropertySupport ? null : getPropertyInfo(propKey);\n\n if (rawProps[SUPPRESS_HYDRATION_WARNING] === true) ; else if (propKey === SUPPRESS_CONTENT_EDITABLE_WARNING || propKey === SUPPRESS_HYDRATION_WARNING || // Controlled attributes are not validated\n // TODO: Only ignore them on controlled tags.\n propKey === 'value' || propKey === 'checked' || propKey === 'selected') ; else if (propKey === DANGEROUSLY_SET_INNER_HTML) {\n var serverHTML = domElement.innerHTML;\n var nextHtml = nextProp ? nextProp[HTML$1] : undefined;\n\n if (nextHtml != null) {\n var expectedHTML = normalizeHTML(domElement, nextHtml);\n\n if (expectedHTML !== serverHTML) {\n warnForPropDifference(propKey, serverHTML, expectedHTML);\n }\n }\n } else if (propKey === STYLE) {\n // $FlowFixMe - Should be inferred as not undefined.\n extraAttributeNames.delete(propKey);\n\n if (canDiffStyleForHydrationWarning) {\n var expectedStyle = createDangerousStringForStyles(nextProp);\n serverValue = domElement.getAttribute('style');\n\n if (expectedStyle !== serverValue) {\n warnForPropDifference(propKey, serverValue, expectedStyle);\n }\n }\n } else if (isCustomComponentTag && !enableCustomElementPropertySupport) {\n // $FlowFixMe - Should be inferred as not undefined.\n extraAttributeNames.delete(propKey.toLowerCase());\n serverValue = getValueForAttribute(domElement, propKey, nextProp);\n\n if (nextProp !== serverValue) {\n warnForPropDifference(propKey, serverValue, nextProp);\n }\n } else if (!shouldIgnoreAttribute(propKey, propertyInfo, isCustomComponentTag) && !shouldRemoveAttribute(propKey, nextProp, propertyInfo, isCustomComponentTag)) {\n var isMismatchDueToBadCasing = false;\n\n if (propertyInfo !== null) {\n // $FlowFixMe - Should be inferred as not undefined.\n extraAttributeNames.delete(propertyInfo.attributeName);\n serverValue = getValueForProperty(domElement, propKey, nextProp, propertyInfo);\n } else {\n var ownNamespace = parentNamespace;\n\n if (ownNamespace === HTML_NAMESPACE) {\n ownNamespace = getIntrinsicNamespace(tag);\n }\n\n if (ownNamespace === HTML_NAMESPACE) {\n // $FlowFixMe - Should be inferred as not undefined.\n extraAttributeNames.delete(propKey.toLowerCase());\n } else {\n var standardName = getPossibleStandardName(propKey);\n\n if (standardName !== null && standardName !== propKey) {\n // If an SVG prop is supplied with bad casing, it will\n // be successfully parsed from HTML, but will produce a mismatch\n // (and would be incorrectly rendered on the client).\n // However, we already warn about bad casing elsewhere.\n // So we'll skip the misleading extra mismatch warning in this case.\n isMismatchDueToBadCasing = true; // $FlowFixMe - Should be inferred as not undefined.\n\n extraAttributeNames.delete(standardName);\n } // $FlowFixMe - Should be inferred as not undefined.\n\n\n extraAttributeNames.delete(propKey);\n }\n\n serverValue = getValueForAttribute(domElement, propKey, nextProp);\n }\n\n var dontWarnCustomElement = enableCustomElementPropertySupport ;\n\n if (!dontWarnCustomElement && nextProp !== serverValue && !isMismatchDueToBadCasing) {\n warnForPropDifference(propKey, serverValue, nextProp);\n }\n }\n }\n }\n\n {\n if (shouldWarnDev) {\n if ( // $FlowFixMe - Should be inferred as not undefined.\n extraAttributeNames.size > 0 && rawProps[SUPPRESS_HYDRATION_WARNING] !== true) {\n // $FlowFixMe - Should be inferred as not undefined.\n warnForExtraAttributes(extraAttributeNames);\n }\n }\n }\n\n switch (tag) {\n case 'input':\n // TODO: Make sure we check if this is still unmounted or do any clean\n // up necessary since we never stop tracking anymore.\n track(domElement);\n postMountWrapper(domElement, rawProps, true);\n break;\n\n case 'textarea':\n // TODO: Make sure we check if this is still unmounted or do any clean\n // up necessary since we never stop tracking anymore.\n track(domElement);\n postMountWrapper$3(domElement);\n break;\n\n case 'select':\n case 'option':\n // For input and textarea we current always set the value property at\n // post mount to force it to diverge from attributes. However, for\n // option and select we don't quite do the same thing and select\n // is not resilient to the DOM state changing so we don't do that here.\n // TODO: Consider not doing this for input and textarea.\n break;\n\n default:\n if (typeof rawProps.onClick === 'function') {\n // TODO: This cast may not be sound for SVG, MathML or custom elements.\n trapClickOnNonInteractiveElement(domElement);\n }\n\n break;\n }\n\n return updatePayload;\n}\nfunction diffHydratedText(textNode, text, isConcurrentMode) {\n var isDifferent = textNode.nodeValue !== text;\n return isDifferent;\n}\nfunction warnForDeletedHydratableElement(parentNode, child) {\n {\n if (didWarnInvalidHydration) {\n return;\n }\n\n didWarnInvalidHydration = true;\n\n error('Did not expect server HTML to contain a <%s> in <%s>.', child.nodeName.toLowerCase(), parentNode.nodeName.toLowerCase());\n }\n}\nfunction warnForDeletedHydratableText(parentNode, child) {\n {\n if (didWarnInvalidHydration) {\n return;\n }\n\n didWarnInvalidHydration = true;\n\n error('Did not expect server HTML to contain the text node \"%s\" in <%s>.', child.nodeValue, parentNode.nodeName.toLowerCase());\n }\n}\nfunction warnForInsertedHydratedElement(parentNode, tag, props) {\n {\n if (didWarnInvalidHydration) {\n return;\n }\n\n didWarnInvalidHydration = true;\n\n error('Expected server HTML to contain a matching <%s> in <%s>.', tag, parentNode.nodeName.toLowerCase());\n }\n}\nfunction warnForInsertedHydratedText(parentNode, text) {\n {\n if (text === '') {\n // We expect to insert empty text nodes since they're not represented in\n // the HTML.\n // TODO: Remove this special case if we can just avoid inserting empty\n // text nodes.\n return;\n }\n\n if (didWarnInvalidHydration) {\n return;\n }\n\n didWarnInvalidHydration = true;\n\n error('Expected server HTML to contain a matching text node for \"%s\" in <%s>.', text, parentNode.nodeName.toLowerCase());\n }\n}\nfunction restoreControlledState$3(domElement, tag, props) {\n switch (tag) {\n case 'input':\n restoreControlledState(domElement, props);\n return;\n\n case 'textarea':\n restoreControlledState$2(domElement, props);\n return;\n\n case 'select':\n restoreControlledState$1(domElement, props);\n return;\n }\n}\n\nvar validateDOMNesting = function () {};\n\nvar updatedAncestorInfo = function () {};\n\n{\n // This validation code was written based on the HTML5 parsing spec:\n // https://html.spec.whatwg.org/multipage/syntax.html#has-an-element-in-scope\n //\n // Note: this does not catch all invalid nesting, nor does it try to (as it's\n // not clear what practical benefit doing so provides); instead, we warn only\n // for cases where the parser will give a parse tree differing from what React\n // intended. For example, <b><div></div></b> is invalid but we don't warn\n // because it still parses correctly; we do warn for other cases like nested\n // <p> tags where the beginning of the second element implicitly closes the\n // first, causing a confusing mess.\n // https://html.spec.whatwg.org/multipage/syntax.html#special\n var specialTags = ['address', 'applet', 'area', 'article', 'aside', 'base', 'basefont', 'bgsound', 'blockquote', 'body', 'br', 'button', 'caption', 'center', 'col', 'colgroup', 'dd', 'details', 'dir', 'div', 'dl', 'dt', 'embed', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'frame', 'frameset', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'iframe', 'img', 'input', 'isindex', 'li', 'link', 'listing', 'main', 'marquee', 'menu', 'menuitem', 'meta', 'nav', 'noembed', 'noframes', 'noscript', 'object', 'ol', 'p', 'param', 'plaintext', 'pre', 'script', 'section', 'select', 'source', 'style', 'summary', 'table', 'tbody', 'td', 'template', 'textarea', 'tfoot', 'th', 'thead', 'title', 'tr', 'track', 'ul', 'wbr', 'xmp']; // https://html.spec.whatwg.org/multipage/syntax.html#has-an-element-in-scope\n\n var inScopeTags = ['applet', 'caption', 'html', 'table', 'td', 'th', 'marquee', 'object', 'template', // https://html.spec.whatwg.org/multipage/syntax.html#html-integration-point\n // TODO: Distinguish by namespace here -- for <title>, including it here\n // errs on the side of fewer warnings\n 'foreignObject', 'desc', 'title']; // https://html.spec.whatwg.org/multipage/syntax.html#has-an-element-in-button-scope\n\n var buttonScopeTags = inScopeTags.concat(['button']); // https://html.spec.whatwg.org/multipage/syntax.html#generate-implied-end-tags\n\n var impliedEndTags = ['dd', 'dt', 'li', 'option', 'optgroup', 'p', 'rp', 'rt'];\n var emptyAncestorInfo = {\n current: null,\n formTag: null,\n aTagInScope: null,\n buttonTagInScope: null,\n nobrTagInScope: null,\n pTagInButtonScope: null,\n listItemTagAutoclosing: null,\n dlItemTagAutoclosing: null\n };\n\n updatedAncestorInfo = function (oldInfo, tag) {\n var ancestorInfo = assign({}, oldInfo || emptyAncestorInfo);\n\n var info = {\n tag: tag\n };\n\n if (inScopeTags.indexOf(tag) !== -1) {\n ancestorInfo.aTagInScope = null;\n ancestorInfo.buttonTagInScope = null;\n ancestorInfo.nobrTagInScope = null;\n }\n\n if (buttonScopeTags.indexOf(tag) !== -1) {\n ancestorInfo.pTagInButtonScope = null;\n } // See rules for 'li', 'dd', 'dt' start tags in\n // https://html.spec.whatwg.org/multipage/syntax.html#parsing-main-inbody\n\n\n if (specialTags.indexOf(tag) !== -1 && tag !== 'address' && tag !== 'div' && tag !== 'p') {\n ancestorInfo.listItemTagAutoclosing = null;\n ancestorInfo.dlItemTagAutoclosing = null;\n }\n\n ancestorInfo.current = info;\n\n if (tag === 'form') {\n ancestorInfo.formTag = info;\n }\n\n if (tag === 'a') {\n ancestorInfo.aTagInScope = info;\n }\n\n if (tag === 'button') {\n ancestorInfo.buttonTagInScope = info;\n }\n\n if (tag === 'nobr') {\n ancestorInfo.nobrTagInScope = info;\n }\n\n if (tag === 'p') {\n ancestorInfo.pTagInButtonScope = info;\n }\n\n if (tag === 'li') {\n ancestorInfo.listItemTagAutoclosing = info;\n }\n\n if (tag === 'dd' || tag === 'dt') {\n ancestorInfo.dlItemTagAutoclosing = info;\n }\n\n return ancestorInfo;\n };\n /**\n * Returns whether\n */\n\n\n var isTagValidWithParent = function (tag, parentTag) {\n // First, let's check if we're in an unusual parsing mode...\n switch (parentTag) {\n // https://html.spec.whatwg.org/multipage/syntax.html#parsing-main-inselect\n case 'select':\n return tag === 'option' || tag === 'optgroup' || tag === '#text';\n\n case 'optgroup':\n return tag === 'option' || tag === '#text';\n // Strictly speaking, seeing an <option> doesn't mean we're in a <select>\n // but\n\n case 'option':\n return tag === '#text';\n // https://html.spec.whatwg.org/multipage/syntax.html#parsing-main-intd\n // https://html.spec.whatwg.org/multipage/syntax.html#parsing-main-incaption\n // No special behavior since these rules fall back to \"in body\" mode for\n // all except special table nodes which cause bad parsing behavior anyway.\n // https://html.spec.whatwg.org/multipage/syntax.html#parsing-main-intr\n\n case 'tr':\n return tag === 'th' || tag === 'td' || tag === 'style' || tag === 'script' || tag === 'template';\n // https://html.spec.whatwg.org/multipage/syntax.html#parsing-main-intbody\n\n case 'tbody':\n case 'thead':\n case 'tfoot':\n return tag === 'tr' || tag === 'style' || tag === 'script' || tag === 'template';\n // https://html.spec.whatwg.org/multipage/syntax.html#parsing-main-incolgroup\n\n case 'colgroup':\n return tag === 'col' || tag === 'template';\n // https://html.spec.whatwg.org/multipage/syntax.html#parsing-main-intable\n\n case 'table':\n return tag === 'caption' || tag === 'colgroup' || tag === 'tbody' || tag === 'tfoot' || tag === 'thead' || tag === 'style' || tag === 'script' || tag === 'template';\n // https://html.spec.whatwg.org/multipage/syntax.html#parsing-main-inhead\n\n case 'head':\n return tag === 'base' || tag === 'basefont' || tag === 'bgsound' || tag === 'link' || tag === 'meta' || tag === 'title' || tag === 'noscript' || tag === 'noframes' || tag === 'style' || tag === 'script' || tag === 'template';\n // https://html.spec.whatwg.org/multipage/semantics.html#the-html-element\n\n case 'html':\n return tag === 'head' || tag === 'body' || tag === 'frameset';\n\n case 'frameset':\n return tag === 'frame';\n\n case '#document':\n return tag === 'html';\n } // Probably in the \"in body\" parsing mode, so we outlaw only tag combos\n // where the parsing rules cause implicit opens or closes to be added.\n // https://html.spec.whatwg.org/multipage/syntax.html#parsing-main-inbody\n\n\n switch (tag) {\n case 'h1':\n case 'h2':\n case 'h3':\n case 'h4':\n case 'h5':\n case 'h6':\n return parentTag !== 'h1' && parentTag !== 'h2' && parentTag !== 'h3' && parentTag !== 'h4' && parentTag !== 'h5' && parentTag !== 'h6';\n\n case 'rp':\n case 'rt':\n return impliedEndTags.indexOf(parentTag) === -1;\n\n case 'body':\n case 'caption':\n case 'col':\n case 'colgroup':\n case 'frameset':\n case 'frame':\n case 'head':\n case 'html':\n case 'tbody':\n case 'td':\n case 'tfoot':\n case 'th':\n case 'thead':\n case 'tr':\n // These tags are only valid with a few parents that have special child\n // parsing rules -- if we're down here, then none of those matched and\n // so we allow it only if we don't know what the parent is, as all other\n // cases are invalid.\n return parentTag == null;\n }\n\n return true;\n };\n /**\n * Returns whether\n */\n\n\n var findInvalidAncestorForTag = function (tag, ancestorInfo) {\n switch (tag) {\n case 'address':\n case 'article':\n case 'aside':\n case 'blockquote':\n case 'center':\n case 'details':\n case 'dialog':\n case 'dir':\n case 'div':\n case 'dl':\n case 'fieldset':\n case 'figcaption':\n case 'figure':\n case 'footer':\n case 'header':\n case 'hgroup':\n case 'main':\n case 'menu':\n case 'nav':\n case 'ol':\n case 'p':\n case 'section':\n case 'summary':\n case 'ul':\n case 'pre':\n case 'listing':\n case 'table':\n case 'hr':\n case 'xmp':\n case 'h1':\n case 'h2':\n case 'h3':\n case 'h4':\n case 'h5':\n case 'h6':\n return ancestorInfo.pTagInButtonScope;\n\n case 'form':\n return ancestorInfo.formTag || ancestorInfo.pTagInButtonScope;\n\n case 'li':\n return ancestorInfo.listItemTagAutoclosing;\n\n case 'dd':\n case 'dt':\n return ancestorInfo.dlItemTagAutoclosing;\n\n case 'button':\n return ancestorInfo.buttonTagInScope;\n\n case 'a':\n // Spec says something about storing a list of markers, but it sounds\n // equivalent to this check.\n return ancestorInfo.aTagInScope;\n\n case 'nobr':\n return ancestorInfo.nobrTagInScope;\n }\n\n return null;\n };\n\n var didWarn$1 = {};\n\n validateDOMNesting = function (childTag, childText, ancestorInfo) {\n ancestorInfo = ancestorInfo || emptyAncestorInfo;\n var parentInfo = ancestorInfo.current;\n var parentTag = parentInfo && parentInfo.tag;\n\n if (childText != null) {\n if (childTag != null) {\n error('validateDOMNesting: when childText is passed, childTag should be null');\n }\n\n childTag = '#text';\n }\n\n var invalidParent = isTagValidWithParent(childTag, parentTag) ? null : parentInfo;\n var invalidAncestor = invalidParent ? null : findInvalidAncestorForTag(childTag, ancestorInfo);\n var invalidParentOrAncestor = invalidParent || invalidAncestor;\n\n if (!invalidParentOrAncestor) {\n return;\n }\n\n var ancestorTag = invalidParentOrAncestor.tag;\n var warnKey = !!invalidParent + '|' + childTag + '|' + ancestorTag;\n\n if (didWarn$1[warnKey]) {\n return;\n }\n\n didWarn$1[warnKey] = true;\n var tagDisplayName = childTag;\n var whitespaceInfo = '';\n\n if (childTag === '#text') {\n if (/\\S/.test(childText)) {\n tagDisplayName = 'Text nodes';\n } else {\n tagDisplayName = 'Whitespace text nodes';\n whitespaceInfo = \" Make sure you don't have any extra whitespace between tags on \" + 'each line of your source code.';\n }\n } else {\n tagDisplayName = '<' + childTag + '>';\n }\n\n if (invalidParent) {\n var info = '';\n\n if (ancestorTag === 'table' && childTag === 'tr') {\n info += ' Add a <tbody>, <thead> or <tfoot> to your code to match the DOM tree generated by ' + 'the browser.';\n }\n\n error('validateDOMNesting(...): %s cannot appear as a child of <%s>.%s%s', tagDisplayName, ancestorTag, whitespaceInfo, info);\n } else {\n error('validateDOMNesting(...): %s cannot appear as a descendant of ' + '<%s>.', tagDisplayName, ancestorTag);\n }\n };\n}\n\nvar SUPPRESS_HYDRATION_WARNING$1 = 'suppressHydrationWarning';\nvar SUSPENSE_START_DATA = '$';\nvar SUSPENSE_END_DATA = '/$';\nvar SUSPENSE_PENDING_START_DATA = '$?';\nvar SUSPENSE_FALLBACK_START_DATA = '$!';\nvar STYLE$1 = 'style';\nvar eventsEnabled = null;\nvar selectionInformation = null;\nfunction getRootHostContext(rootContainerInstance) {\n var type;\n var namespace;\n var nodeType = rootContainerInstance.nodeType;\n\n switch (nodeType) {\n case DOCUMENT_NODE:\n case DOCUMENT_FRAGMENT_NODE:\n {\n type = nodeType === DOCUMENT_NODE ? '#document' : '#fragment';\n var root = rootContainerInstance.documentElement;\n namespace = root ? root.namespaceURI : getChildNamespace(null, '');\n break;\n }\n\n default:\n {\n var container = nodeType === COMMENT_NODE ? rootContainerInstance.parentNode : rootContainerInstance;\n var ownNamespace = container.namespaceURI || null;\n type = container.tagName;\n namespace = getChildNamespace(ownNamespace, type);\n break;\n }\n }\n\n {\n var validatedTag = type.toLowerCase();\n var ancestorInfo = updatedAncestorInfo(null, validatedTag);\n return {\n namespace: namespace,\n ancestorInfo: ancestorInfo\n };\n }\n}\nfunction getChildHostContext(parentHostContext, type, rootContainerInstance) {\n {\n var parentHostContextDev = parentHostContext;\n var namespace = getChildNamespace(parentHostContextDev.namespace, type);\n var ancestorInfo = updatedAncestorInfo(parentHostContextDev.ancestorInfo, type);\n return {\n namespace: namespace,\n ancestorInfo: ancestorInfo\n };\n }\n}\nfunction getPublicInstance(instance) {\n return instance;\n}\nfunction prepareForCommit(containerInfo) {\n eventsEnabled = isEnabled();\n selectionInformation = getSelectionInformation();\n var activeInstance = null;\n\n setEnabled(false);\n return activeInstance;\n}\nfunction resetAfterCommit(containerInfo) {\n restoreSelection(selectionInformation);\n setEnabled(eventsEnabled);\n eventsEnabled = null;\n selectionInformation = null;\n}\nfunction createInstance(type, props, rootContainerInstance, hostContext, internalInstanceHandle) {\n var parentNamespace;\n\n {\n // TODO: take namespace into account when validating.\n var hostContextDev = hostContext;\n validateDOMNesting(type, null, hostContextDev.ancestorInfo);\n\n if (typeof props.children === 'string' || typeof props.children === 'number') {\n var string = '' + props.children;\n var ownAncestorInfo = updatedAncestorInfo(hostContextDev.ancestorInfo, type);\n validateDOMNesting(null, string, ownAncestorInfo);\n }\n\n parentNamespace = hostContextDev.namespace;\n }\n\n var domElement = createElement(type, props, rootContainerInstance, parentNamespace);\n precacheFiberNode(internalInstanceHandle, domElement);\n updateFiberProps(domElement, props);\n return domElement;\n}\nfunction appendInitialChild(parentInstance, child) {\n parentInstance.appendChild(child);\n}\nfunction finalizeInitialChildren(domElement, type, props, rootContainerInstance, hostContext) {\n setInitialProperties(domElement, type, props, rootContainerInstance);\n\n switch (type) {\n case 'button':\n case 'input':\n case 'select':\n case 'textarea':\n return !!props.autoFocus;\n\n case 'img':\n return true;\n\n default:\n return false;\n }\n}\nfunction prepareUpdate(domElement, type, oldProps, newProps, rootContainerInstance, hostContext) {\n {\n var hostContextDev = hostContext;\n\n if (typeof newProps.children !== typeof oldProps.children && (typeof newProps.children === 'string' || typeof newProps.children === 'number')) {\n var string = '' + newProps.children;\n var ownAncestorInfo = updatedAncestorInfo(hostContextDev.ancestorInfo, type);\n validateDOMNesting(null, string, ownAncestorInfo);\n }\n }\n\n return diffProperties(domElement, type, oldProps, newProps);\n}\nfunction shouldSetTextContent(type, props) {\n return type === 'textarea' || type === 'noscript' || typeof props.children === 'string' || typeof props.children === 'number' || typeof props.dangerouslySetInnerHTML === 'object' && props.dangerouslySetInnerHTML !== null && props.dangerouslySetInnerHTML.__html != null;\n}\nfunction createTextInstance(text, rootContainerInstance, hostContext, internalInstanceHandle) {\n {\n var hostContextDev = hostContext;\n validateDOMNesting(null, text, hostContextDev.ancestorInfo);\n }\n\n var textNode = createTextNode(text, rootContainerInstance);\n precacheFiberNode(internalInstanceHandle, textNode);\n return textNode;\n}\nfunction getCurrentEventPriority() {\n var currentEvent = window.event;\n\n if (currentEvent === undefined) {\n return DefaultEventPriority;\n }\n\n return getEventPriority(currentEvent.type);\n}\n// if a component just imports ReactDOM (e.g. for findDOMNode).\n// Some environments might not have setTimeout or clearTimeout.\n\nvar scheduleTimeout = typeof setTimeout === 'function' ? setTimeout : undefined;\nvar cancelTimeout = typeof clearTimeout === 'function' ? clearTimeout : undefined;\nvar noTimeout = -1;\nvar localPromise = typeof Promise === 'function' ? Promise : undefined; // -------------------\nvar scheduleMicrotask = typeof queueMicrotask === 'function' ? queueMicrotask : typeof localPromise !== 'undefined' ? function (callback) {\n return localPromise.resolve(null).then(callback).catch(handleErrorInNextTick);\n} : scheduleTimeout; // TODO: Determine the best fallback here.\n\nfunction handleErrorInNextTick(error) {\n setTimeout(function () {\n throw error;\n });\n} // -------------------\nfunction commitMount(domElement, type, newProps, internalInstanceHandle) {\n // Despite the naming that might imply otherwise, this method only\n // fires if there is an `Update` effect scheduled during mounting.\n // This happens if `finalizeInitialChildren` returns `true` (which it\n // does to implement the `autoFocus` attribute on the client). But\n // there are also other cases when this might happen (such as patching\n // up text content during hydration mismatch). So we'll check this again.\n switch (type) {\n case 'button':\n case 'input':\n case 'select':\n case 'textarea':\n if (newProps.autoFocus) {\n domElement.focus();\n }\n\n return;\n\n case 'img':\n {\n if (newProps.src) {\n domElement.src = newProps.src;\n }\n\n return;\n }\n }\n}\nfunction commitUpdate(domElement, updatePayload, type, oldProps, newProps, internalInstanceHandle) {\n // Apply the diff to the DOM node.\n updateProperties(domElement, updatePayload, type, oldProps, newProps); // Update the props handle so that we know which props are the ones with\n // with current event handlers.\n\n updateFiberProps(domElement, newProps);\n}\nfunction resetTextContent(domElement) {\n setTextContent(domElement, '');\n}\nfunction commitTextUpdate(textInstance, oldText, newText) {\n textInstance.nodeValue = newText;\n}\nfunction appendChild(parentInstance, child) {\n parentInstance.appendChild(child);\n}\nfunction appendChildToContainer(container, child) {\n var parentNode;\n\n if (container.nodeType === COMMENT_NODE) {\n parentNode = container.parentNode;\n parentNode.insertBefore(child, container);\n } else {\n parentNode = container;\n parentNode.appendChild(child);\n } // This container might be used for a portal.\n // If something inside a portal is clicked, that click should bubble\n // through the React tree. However, on Mobile Safari the click would\n // never bubble through the *DOM* tree unless an ancestor with onclick\n // event exists. So we wouldn't see it and dispatch it.\n // This is why we ensure that non React root containers have inline onclick\n // defined.\n // https://github.com/facebook/react/issues/11918\n\n\n var reactRootContainer = container._reactRootContainer;\n\n if ((reactRootContainer === null || reactRootContainer === undefined) && parentNode.onclick === null) {\n // TODO: This cast may not be sound for SVG, MathML or custom elements.\n trapClickOnNonInteractiveElement(parentNode);\n }\n}\nfunction insertBefore(parentInstance, child, beforeChild) {\n parentInstance.insertBefore(child, beforeChild);\n}\nfunction insertInContainerBefore(container, child, beforeChild) {\n if (container.nodeType === COMMENT_NODE) {\n container.parentNode.insertBefore(child, beforeChild);\n } else {\n container.insertBefore(child, beforeChild);\n }\n}\n\nfunction removeChild(parentInstance, child) {\n parentInstance.removeChild(child);\n}\nfunction removeChildFromContainer(container, child) {\n if (container.nodeType === COMMENT_NODE) {\n container.parentNode.removeChild(child);\n } else {\n container.removeChild(child);\n }\n}\nfunction clearSuspenseBoundary(parentInstance, suspenseInstance) {\n var node = suspenseInstance; // Delete all nodes within this suspense boundary.\n // There might be nested nodes so we need to keep track of how\n // deep we are and only break out when we're back on top.\n\n var depth = 0;\n\n do {\n var nextNode = node.nextSibling;\n parentInstance.removeChild(node);\n\n if (nextNode && nextNode.nodeType === COMMENT_NODE) {\n var data = nextNode.data;\n\n if (data === SUSPENSE_END_DATA) {\n if (depth === 0) {\n parentInstance.removeChild(nextNode); // Retry if any event replaying was blocked on this.\n\n retryIfBlockedOn(suspenseInstance);\n return;\n } else {\n depth--;\n }\n } else if (data === SUSPENSE_START_DATA || data === SUSPENSE_PENDING_START_DATA || data === SUSPENSE_FALLBACK_START_DATA) {\n depth++;\n }\n }\n\n node = nextNode;\n } while (node); // TODO: Warn, we didn't find the end comment boundary.\n // Retry if any event replaying was blocked on this.\n\n\n retryIfBlockedOn(suspenseInstance);\n}\nfunction clearSuspenseBoundaryFromContainer(container, suspenseInstance) {\n if (container.nodeType === COMMENT_NODE) {\n clearSuspenseBoundary(container.parentNode, suspenseInstance);\n } else if (container.nodeType === ELEMENT_NODE) {\n clearSuspenseBoundary(container, suspenseInstance);\n } // Retry if any event replaying was blocked on this.\n\n\n retryIfBlockedOn(container);\n}\nfunction hideInstance(instance) {\n // TODO: Does this work for all element types? What about MathML? Should we\n // pass host context to this method?\n instance = instance;\n var style = instance.style;\n\n if (typeof style.setProperty === 'function') {\n style.setProperty('display', 'none', 'important');\n } else {\n style.display = 'none';\n }\n}\nfunction hideTextInstance(textInstance) {\n textInstance.nodeValue = '';\n}\nfunction unhideInstance(instance, props) {\n instance = instance;\n var styleProp = props[STYLE$1];\n var display = styleProp !== undefined && styleProp !== null && styleProp.hasOwnProperty('display') ? styleProp.display : null;\n instance.style.display = dangerousStyleValue('display', display);\n}\nfunction unhideTextInstance(textInstance, text) {\n textInstance.nodeValue = text;\n}\nfunction clearContainer(container) {\n if (container.nodeType === ELEMENT_NODE) {\n container.textContent = '';\n } else if (container.nodeType === DOCUMENT_NODE) {\n if (container.documentElement) {\n container.removeChild(container.documentElement);\n }\n }\n} // -------------------\nfunction canHydrateInstance(instance, type, props) {\n if (instance.nodeType !== ELEMENT_NODE || type.toLowerCase() !== instance.nodeName.toLowerCase()) {\n return null;\n } // This has now been refined to an element node.\n\n\n return instance;\n}\nfunction canHydrateTextInstance(instance, text) {\n if (text === '' || instance.nodeType !== TEXT_NODE) {\n // Empty strings are not parsed by HTML so there won't be a correct match here.\n return null;\n } // This has now been refined to a text node.\n\n\n return instance;\n}\nfunction canHydrateSuspenseInstance(instance) {\n if (instance.nodeType !== COMMENT_NODE) {\n // Empty strings are not parsed by HTML so there won't be a correct match here.\n return null;\n } // This has now been refined to a suspense node.\n\n\n return instance;\n}\nfunction isSuspenseInstancePending(instance) {\n return instance.data === SUSPENSE_PENDING_START_DATA;\n}\nfunction isSuspenseInstanceFallback(instance) {\n return instance.data === SUSPENSE_FALLBACK_START_DATA;\n}\nfunction getSuspenseInstanceFallbackErrorDetails(instance) {\n var dataset = instance.nextSibling && instance.nextSibling.dataset;\n var digest, message, stack;\n\n if (dataset) {\n digest = dataset.dgst;\n\n {\n message = dataset.msg;\n stack = dataset.stck;\n }\n }\n\n {\n return {\n message: message,\n digest: digest,\n stack: stack\n };\n } // let value = {message: undefined, hash: undefined};\n // const nextSibling = instance.nextSibling;\n // if (nextSibling) {\n // const dataset = ((nextSibling: any): HTMLTemplateElement).dataset;\n // value.message = dataset.msg;\n // value.hash = dataset.hash;\n // if (true) {\n // value.stack = dataset.stack;\n // }\n // }\n // return value;\n\n}\nfunction registerSuspenseInstanceRetry(instance, callback) {\n instance._reactRetry = callback;\n}\n\nfunction getNextHydratable(node) {\n // Skip non-hydratable nodes.\n for (; node != null; node = node.nextSibling) {\n var nodeType = node.nodeType;\n\n if (nodeType === ELEMENT_NODE || nodeType === TEXT_NODE) {\n break;\n }\n\n if (nodeType === COMMENT_NODE) {\n var nodeData = node.data;\n\n if (nodeData === SUSPENSE_START_DATA || nodeData === SUSPENSE_FALLBACK_START_DATA || nodeData === SUSPENSE_PENDING_START_DATA) {\n break;\n }\n\n if (nodeData === SUSPENSE_END_DATA) {\n return null;\n }\n }\n }\n\n return node;\n}\n\nfunction getNextHydratableSibling(instance) {\n return getNextHydratable(instance.nextSibling);\n}\nfunction getFirstHydratableChild(parentInstance) {\n return getNextHydratable(parentInstance.firstChild);\n}\nfunction getFirstHydratableChildWithinContainer(parentContainer) {\n return getNextHydratable(parentContainer.firstChild);\n}\nfunction getFirstHydratableChildWithinSuspenseInstance(parentInstance) {\n return getNextHydratable(parentInstance.nextSibling);\n}\nfunction hydrateInstance(instance, type, props, rootContainerInstance, hostContext, internalInstanceHandle, shouldWarnDev) {\n precacheFiberNode(internalInstanceHandle, instance); // TODO: Possibly defer this until the commit phase where all the events\n // get attached.\n\n updateFiberProps(instance, props);\n var parentNamespace;\n\n {\n var hostContextDev = hostContext;\n parentNamespace = hostContextDev.namespace;\n } // TODO: Temporary hack to check if we're in a concurrent root. We can delete\n // when the legacy root API is removed.\n\n\n var isConcurrentMode = (internalInstanceHandle.mode & ConcurrentMode) !== NoMode;\n return diffHydratedProperties(instance, type, props, parentNamespace, rootContainerInstance, isConcurrentMode, shouldWarnDev);\n}\nfunction hydrateTextInstance(textInstance, text, internalInstanceHandle, shouldWarnDev) {\n precacheFiberNode(internalInstanceHandle, textInstance); // TODO: Temporary hack to check if we're in a concurrent root. We can delete\n // when the legacy root API is removed.\n\n var isConcurrentMode = (internalInstanceHandle.mode & ConcurrentMode) !== NoMode;\n return diffHydratedText(textInstance, text);\n}\nfunction hydrateSuspenseInstance(suspenseInstance, internalInstanceHandle) {\n precacheFiberNode(internalInstanceHandle, suspenseInstance);\n}\nfunction getNextHydratableInstanceAfterSuspenseInstance(suspenseInstance) {\n var node = suspenseInstance.nextSibling; // Skip past all nodes within this suspense boundary.\n // There might be nested nodes so we need to keep track of how\n // deep we are and only break out when we're back on top.\n\n var depth = 0;\n\n while (node) {\n if (node.nodeType === COMMENT_NODE) {\n var data = node.data;\n\n if (data === SUSPENSE_END_DATA) {\n if (depth === 0) {\n return getNextHydratableSibling(node);\n } else {\n depth--;\n }\n } else if (data === SUSPENSE_START_DATA || data === SUSPENSE_FALLBACK_START_DATA || data === SUSPENSE_PENDING_START_DATA) {\n depth++;\n }\n }\n\n node = node.nextSibling;\n } // TODO: Warn, we didn't find the end comment boundary.\n\n\n return null;\n} // Returns the SuspenseInstance if this node is a direct child of a\n// SuspenseInstance. I.e. if its previous sibling is a Comment with\n// SUSPENSE_x_START_DATA. Otherwise, null.\n\nfunction getParentSuspenseInstance(targetInstance) {\n var node = targetInstance.previousSibling; // Skip past all nodes within this suspense boundary.\n // There might be nested nodes so we need to keep track of how\n // deep we are and only break out when we're back on top.\n\n var depth = 0;\n\n while (node) {\n if (node.nodeType === COMMENT_NODE) {\n var data = node.data;\n\n if (data === SUSPENSE_START_DATA || data === SUSPENSE_FALLBACK_START_DATA || data === SUSPENSE_PENDING_START_DATA) {\n if (depth === 0) {\n return node;\n } else {\n depth--;\n }\n } else if (data === SUSPENSE_END_DATA) {\n depth++;\n }\n }\n\n node = node.previousSibling;\n }\n\n return null;\n}\nfunction commitHydratedContainer(container) {\n // Retry if any event replaying was blocked on this.\n retryIfBlockedOn(container);\n}\nfunction commitHydratedSuspenseInstance(suspenseInstance) {\n // Retry if any event replaying was blocked on this.\n retryIfBlockedOn(suspenseInstance);\n}\nfunction shouldDeleteUnhydratedTailInstances(parentType) {\n return parentType !== 'head' && parentType !== 'body';\n}\nfunction didNotMatchHydratedContainerTextInstance(parentContainer, textInstance, text, isConcurrentMode) {\n var shouldWarnDev = true;\n checkForUnmatchedText(textInstance.nodeValue, text, isConcurrentMode, shouldWarnDev);\n}\nfunction didNotMatchHydratedTextInstance(parentType, parentProps, parentInstance, textInstance, text, isConcurrentMode) {\n if (parentProps[SUPPRESS_HYDRATION_WARNING$1] !== true) {\n var shouldWarnDev = true;\n checkForUnmatchedText(textInstance.nodeValue, text, isConcurrentMode, shouldWarnDev);\n }\n}\nfunction didNotHydrateInstanceWithinContainer(parentContainer, instance) {\n {\n if (instance.nodeType === ELEMENT_NODE) {\n warnForDeletedHydratableElement(parentContainer, instance);\n } else if (instance.nodeType === COMMENT_NODE) ; else {\n warnForDeletedHydratableText(parentContainer, instance);\n }\n }\n}\nfunction didNotHydrateInstanceWithinSuspenseInstance(parentInstance, instance) {\n {\n // $FlowFixMe: Only Element or Document can be parent nodes.\n var parentNode = parentInstance.parentNode;\n\n if (parentNode !== null) {\n if (instance.nodeType === ELEMENT_NODE) {\n warnForDeletedHydratableElement(parentNode, instance);\n } else if (instance.nodeType === COMMENT_NODE) ; else {\n warnForDeletedHydratableText(parentNode, instance);\n }\n }\n }\n}\nfunction didNotHydrateInstance(parentType, parentProps, parentInstance, instance, isConcurrentMode) {\n {\n if (isConcurrentMode || parentProps[SUPPRESS_HYDRATION_WARNING$1] !== true) {\n if (instance.nodeType === ELEMENT_NODE) {\n warnForDeletedHydratableElement(parentInstance, instance);\n } else if (instance.nodeType === COMMENT_NODE) ; else {\n warnForDeletedHydratableText(parentInstance, instance);\n }\n }\n }\n}\nfunction didNotFindHydratableInstanceWithinContainer(parentContainer, type, props) {\n {\n warnForInsertedHydratedElement(parentContainer, type);\n }\n}\nfunction didNotFindHydratableTextInstanceWithinContainer(parentContainer, text) {\n {\n warnForInsertedHydratedText(parentContainer, text);\n }\n}\nfunction didNotFindHydratableInstanceWithinSuspenseInstance(parentInstance, type, props) {\n {\n // $FlowFixMe: Only Element or Document can be parent nodes.\n var parentNode = parentInstance.parentNode;\n if (parentNode !== null) warnForInsertedHydratedElement(parentNode, type);\n }\n}\nfunction didNotFindHydratableTextInstanceWithinSuspenseInstance(parentInstance, text) {\n {\n // $FlowFixMe: Only Element or Document can be parent nodes.\n var parentNode = parentInstance.parentNode;\n if (parentNode !== null) warnForInsertedHydratedText(parentNode, text);\n }\n}\nfunction didNotFindHydratableInstance(parentType, parentProps, parentInstance, type, props, isConcurrentMode) {\n {\n if (isConcurrentMode || parentProps[SUPPRESS_HYDRATION_WARNING$1] !== true) {\n warnForInsertedHydratedElement(parentInstance, type);\n }\n }\n}\nfunction didNotFindHydratableTextInstance(parentType, parentProps, parentInstance, text, isConcurrentMode) {\n {\n if (isConcurrentMode || parentProps[SUPPRESS_HYDRATION_WARNING$1] !== true) {\n warnForInsertedHydratedText(parentInstance, text);\n }\n }\n}\nfunction errorHydratingContainer(parentContainer) {\n {\n // TODO: This gets logged by onRecoverableError, too, so we should be\n // able to remove it.\n error('An error occurred during hydration. The server HTML was replaced with client content in <%s>.', parentContainer.nodeName.toLowerCase());\n }\n}\nfunction preparePortalMount(portalInstance) {\n listenToAllSupportedEvents(portalInstance);\n}\n\nvar randomKey = Math.random().toString(36).slice(2);\nvar internalInstanceKey = '__reactFiber$' + randomKey;\nvar internalPropsKey = '__reactProps$' + randomKey;\nvar internalContainerInstanceKey = '__reactContainer$' + randomKey;\nvar internalEventHandlersKey = '__reactEvents$' + randomKey;\nvar internalEventHandlerListenersKey = '__reactListeners$' + randomKey;\nvar internalEventHandlesSetKey = '__reactHandles$' + randomKey;\nfunction detachDeletedInstance(node) {\n // TODO: This function is only called on host components. I don't think all of\n // these fields are relevant.\n delete node[internalInstanceKey];\n delete node[internalPropsKey];\n delete node[internalEventHandlersKey];\n delete node[internalEventHandlerListenersKey];\n delete node[internalEventHandlesSetKey];\n}\nfunction precacheFiberNode(hostInst, node) {\n node[internalInstanceKey] = hostInst;\n}\nfunction markContainerAsRoot(hostRoot, node) {\n node[internalContainerInstanceKey] = hostRoot;\n}\nfunction unmarkContainerAsRoot(node) {\n node[internalContainerInstanceKey] = null;\n}\nfunction isContainerMarkedAsRoot(node) {\n return !!node[internalContainerInstanceKey];\n} // Given a DOM node, return the closest HostComponent or HostText fiber ancestor.\n// If the target node is part of a hydrated or not yet rendered subtree, then\n// this may also return a SuspenseComponent or HostRoot to indicate that.\n// Conceptually the HostRoot fiber is a child of the Container node. So if you\n// pass the Container node as the targetNode, you will not actually get the\n// HostRoot back. To get to the HostRoot, you need to pass a child of it.\n// The same thing applies to Suspense boundaries.\n\nfunction getClosestInstanceFromNode(targetNode) {\n var targetInst = targetNode[internalInstanceKey];\n\n if (targetInst) {\n // Don't return HostRoot or SuspenseComponent here.\n return targetInst;\n } // If the direct event target isn't a React owned DOM node, we need to look\n // to see if one of its parents is a React owned DOM node.\n\n\n var parentNode = targetNode.parentNode;\n\n while (parentNode) {\n // We'll check if this is a container root that could include\n // React nodes in the future. We need to check this first because\n // if we're a child of a dehydrated container, we need to first\n // find that inner container before moving on to finding the parent\n // instance. Note that we don't check this field on the targetNode\n // itself because the fibers are conceptually between the container\n // node and the first child. It isn't surrounding the container node.\n // If it's not a container, we check if it's an instance.\n targetInst = parentNode[internalContainerInstanceKey] || parentNode[internalInstanceKey];\n\n if (targetInst) {\n // Since this wasn't the direct target of the event, we might have\n // stepped past dehydrated DOM nodes to get here. However they could\n // also have been non-React nodes. We need to answer which one.\n // If we the instance doesn't have any children, then there can't be\n // a nested suspense boundary within it. So we can use this as a fast\n // bailout. Most of the time, when people add non-React children to\n // the tree, it is using a ref to a child-less DOM node.\n // Normally we'd only need to check one of the fibers because if it\n // has ever gone from having children to deleting them or vice versa\n // it would have deleted the dehydrated boundary nested inside already.\n // However, since the HostRoot starts out with an alternate it might\n // have one on the alternate so we need to check in case this was a\n // root.\n var alternate = targetInst.alternate;\n\n if (targetInst.child !== null || alternate !== null && alternate.child !== null) {\n // Next we need to figure out if the node that skipped past is\n // nested within a dehydrated boundary and if so, which one.\n var suspenseInstance = getParentSuspenseInstance(targetNode);\n\n while (suspenseInstance !== null) {\n // We found a suspense instance. That means that we haven't\n // hydrated it yet. Even though we leave the comments in the\n // DOM after hydrating, and there are boundaries in the DOM\n // that could already be hydrated, we wouldn't have found them\n // through this pass since if the target is hydrated it would\n // have had an internalInstanceKey on it.\n // Let's get the fiber associated with the SuspenseComponent\n // as the deepest instance.\n var targetSuspenseInst = suspenseInstance[internalInstanceKey];\n\n if (targetSuspenseInst) {\n return targetSuspenseInst;\n } // If we don't find a Fiber on the comment, it might be because\n // we haven't gotten to hydrate it yet. There might still be a\n // parent boundary that hasn't above this one so we need to find\n // the outer most that is known.\n\n\n suspenseInstance = getParentSuspenseInstance(suspenseInstance); // If we don't find one, then that should mean that the parent\n // host component also hasn't hydrated yet. We can return it\n // below since it will bail out on the isMounted check later.\n }\n }\n\n return targetInst;\n }\n\n targetNode = parentNode;\n parentNode = targetNode.parentNode;\n }\n\n return null;\n}\n/**\n * Given a DOM node, return the ReactDOMComponent or ReactDOMTextComponent\n * instance, or null if the node was not rendered by this React.\n */\n\nfunction getInstanceFromNode(node) {\n var inst = node[internalInstanceKey] || node[internalContainerInstanceKey];\n\n if (inst) {\n if (inst.tag === HostComponent || inst.tag === HostText || inst.tag === SuspenseComponent || inst.tag === HostRoot) {\n return inst;\n } else {\n return null;\n }\n }\n\n return null;\n}\n/**\n * Given a ReactDOMComponent or ReactDOMTextComponent, return the corresponding\n * DOM node.\n */\n\nfunction getNodeFromInstance(inst) {\n if (inst.tag === HostComponent || inst.tag === HostText) {\n // In Fiber this, is just the state node right now. We assume it will be\n // a host component or host text.\n return inst.stateNode;\n } // Without this first invariant, passing a non-DOM-component triggers the next\n // invariant for a missing parent, which is super confusing.\n\n\n throw new Error('getNodeFromInstance: Invalid argument.');\n}\nfunction getFiberCurrentPropsFromNode(node) {\n return node[internalPropsKey] || null;\n}\nfunction updateFiberProps(node, props) {\n node[internalPropsKey] = props;\n}\nfunction getEventListenerSet(node) {\n var elementListenerSet = node[internalEventHandlersKey];\n\n if (elementListenerSet === undefined) {\n elementListenerSet = node[internalEventHandlersKey] = new Set();\n }\n\n return elementListenerSet;\n}\n\nvar loggedTypeFailures = {};\nvar ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n ReactDebugCurrentFrame$1.setExtraStackFrame(stack);\n } else {\n ReactDebugCurrentFrame$1.setExtraStackFrame(null);\n }\n }\n}\n\nfunction checkPropTypes(typeSpecs, values, location, componentName, element) {\n {\n // $FlowFixMe This is okay but Flow doesn't know it.\n var has = Function.call.bind(hasOwnProperty);\n\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n // eslint-disable-next-line react-internal/prod-error-codes\n var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.');\n err.name = 'Invariant Violation';\n throw err;\n }\n\n error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED');\n } catch (ex) {\n error$1 = ex;\n }\n\n if (error$1 && !(error$1 instanceof Error)) {\n setCurrentlyValidatingElement(element);\n\n error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1);\n\n setCurrentlyValidatingElement(null);\n }\n\n if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error$1.message] = true;\n setCurrentlyValidatingElement(element);\n\n error('Failed %s type: %s', location, error$1.message);\n\n setCurrentlyValidatingElement(null);\n }\n }\n }\n }\n}\n\nvar valueStack = [];\nvar fiberStack;\n\n{\n fiberStack = [];\n}\n\nvar index = -1;\n\nfunction createCursor(defaultValue) {\n return {\n current: defaultValue\n };\n}\n\nfunction pop(cursor, fiber) {\n if (index < 0) {\n {\n error('Unexpected pop.');\n }\n\n return;\n }\n\n {\n if (fiber !== fiberStack[index]) {\n error('Unexpected Fiber popped.');\n }\n }\n\n cursor.current = valueStack[index];\n valueStack[index] = null;\n\n {\n fiberStack[index] = null;\n }\n\n index--;\n}\n\nfunction push(cursor, value, fiber) {\n index++;\n valueStack[index] = cursor.current;\n\n {\n fiberStack[index] = fiber;\n }\n\n cursor.current = value;\n}\n\nvar warnedAboutMissingGetChildContext;\n\n{\n warnedAboutMissingGetChildContext = {};\n}\n\nvar emptyContextObject = {};\n\n{\n Object.freeze(emptyContextObject);\n} // A cursor to the current merged context object on the stack.\n\n\nvar contextStackCursor = createCursor(emptyContextObject); // A cursor to a boolean indicating whether the context has changed.\n\nvar didPerformWorkStackCursor = createCursor(false); // Keep track of the previous context object that was on the stack.\n// We use this to get access to the parent context after we have already\n// pushed the next context provider, and now need to merge their contexts.\n\nvar previousContext = emptyContextObject;\n\nfunction getUnmaskedContext(workInProgress, Component, didPushOwnContextIfProvider) {\n {\n if (didPushOwnContextIfProvider && isContextProvider(Component)) {\n // If the fiber is a context provider itself, when we read its context\n // we may have already pushed its own child context on the stack. A context\n // provider should not \"see\" its own child context. Therefore we read the\n // previous (parent) context instead for a context provider.\n return previousContext;\n }\n\n return contextStackCursor.current;\n }\n}\n\nfunction cacheContext(workInProgress, unmaskedContext, maskedContext) {\n {\n var instance = workInProgress.stateNode;\n instance.__reactInternalMemoizedUnmaskedChildContext = unmaskedContext;\n instance.__reactInternalMemoizedMaskedChildContext = maskedContext;\n }\n}\n\nfunction getMaskedContext(workInProgress, unmaskedContext) {\n {\n var type = workInProgress.type;\n var contextTypes = type.contextTypes;\n\n if (!contextTypes) {\n return emptyContextObject;\n } // Avoid recreating masked context unless unmasked context has changed.\n // Failing to do this will result in unnecessary calls to componentWillReceiveProps.\n // This may trigger infinite loops if componentWillReceiveProps calls setState.\n\n\n var instance = workInProgress.stateNode;\n\n if (instance && instance.__reactInternalMemoizedUnmaskedChildContext === unmaskedContext) {\n return instance.__reactInternalMemoizedMaskedChildContext;\n }\n\n var context = {};\n\n for (var key in contextTypes) {\n context[key] = unmaskedContext[key];\n }\n\n {\n var name = getComponentNameFromFiber(workInProgress) || 'Unknown';\n checkPropTypes(contextTypes, context, 'context', name);\n } // Cache unmasked context so we can avoid recreating masked context unless necessary.\n // Context is created before the class component is instantiated so check for instance.\n\n\n if (instance) {\n cacheContext(workInProgress, unmaskedContext, context);\n }\n\n return context;\n }\n}\n\nfunction hasContextChanged() {\n {\n return didPerformWorkStackCursor.current;\n }\n}\n\nfunction isContextProvider(type) {\n {\n var childContextTypes = type.childContextTypes;\n return childContextTypes !== null && childContextTypes !== undefined;\n }\n}\n\nfunction popContext(fiber) {\n {\n pop(didPerformWorkStackCursor, fiber);\n pop(contextStackCursor, fiber);\n }\n}\n\nfunction popTopLevelContextObject(fiber) {\n {\n pop(didPerformWorkStackCursor, fiber);\n pop(contextStackCursor, fiber);\n }\n}\n\nfunction pushTopLevelContextObject(fiber, context, didChange) {\n {\n if (contextStackCursor.current !== emptyContextObject) {\n throw new Error('Unexpected context found on stack. ' + 'This error is likely caused by a bug in React. Please file an issue.');\n }\n\n push(contextStackCursor, context, fiber);\n push(didPerformWorkStackCursor, didChange, fiber);\n }\n}\n\nfunction processChildContext(fiber, type, parentContext) {\n {\n var instance = fiber.stateNode;\n var childContextTypes = type.childContextTypes; // TODO (bvaughn) Replace this behavior with an invariant() in the future.\n // It has only been added in Fiber to match the (unintentional) behavior in Stack.\n\n if (typeof instance.getChildContext !== 'function') {\n {\n var componentName = getComponentNameFromFiber(fiber) || 'Unknown';\n\n if (!warnedAboutMissingGetChildContext[componentName]) {\n warnedAboutMissingGetChildContext[componentName] = true;\n\n error('%s.childContextTypes is specified but there is no getChildContext() method ' + 'on the instance. You can either define getChildContext() on %s or remove ' + 'childContextTypes from it.', componentName, componentName);\n }\n }\n\n return parentContext;\n }\n\n var childContext = instance.getChildContext();\n\n for (var contextKey in childContext) {\n if (!(contextKey in childContextTypes)) {\n throw new Error((getComponentNameFromFiber(fiber) || 'Unknown') + \".getChildContext(): key \\\"\" + contextKey + \"\\\" is not defined in childContextTypes.\");\n }\n }\n\n {\n var name = getComponentNameFromFiber(fiber) || 'Unknown';\n checkPropTypes(childContextTypes, childContext, 'child context', name);\n }\n\n return assign({}, parentContext, childContext);\n }\n}\n\nfunction pushContextProvider(workInProgress) {\n {\n var instance = workInProgress.stateNode; // We push the context as early as possible to ensure stack integrity.\n // If the instance does not exist yet, we will push null at first,\n // and replace it on the stack later when invalidating the context.\n\n var memoizedMergedChildContext = instance && instance.__reactInternalMemoizedMergedChildContext || emptyContextObject; // Remember the parent context so we can merge with it later.\n // Inherit the parent's did-perform-work value to avoid inadvertently blocking updates.\n\n previousContext = contextStackCursor.current;\n push(contextStackCursor, memoizedMergedChildContext, workInProgress);\n push(didPerformWorkStackCursor, didPerformWorkStackCursor.current, workInProgress);\n return true;\n }\n}\n\nfunction invalidateContextProvider(workInProgress, type, didChange) {\n {\n var instance = workInProgress.stateNode;\n\n if (!instance) {\n throw new Error('Expected to have an instance by this point. ' + 'This error is likely caused by a bug in React. Please file an issue.');\n }\n\n if (didChange) {\n // Merge parent and own context.\n // Skip this if we're not updating due to sCU.\n // This avoids unnecessarily recomputing memoized values.\n var mergedContext = processChildContext(workInProgress, type, previousContext);\n instance.__reactInternalMemoizedMergedChildContext = mergedContext; // Replace the old (or empty) context with the new one.\n // It is important to unwind the context in the reverse order.\n\n pop(didPerformWorkStackCursor, workInProgress);\n pop(contextStackCursor, workInProgress); // Now push the new context and mark that it has changed.\n\n push(contextStackCursor, mergedContext, workInProgress);\n push(didPerformWorkStackCursor, didChange, workInProgress);\n } else {\n pop(didPerformWorkStackCursor, workInProgress);\n push(didPerformWorkStackCursor, didChange, workInProgress);\n }\n }\n}\n\nfunction findCurrentUnmaskedContext(fiber) {\n {\n // Currently this is only used with renderSubtreeIntoContainer; not sure if it\n // makes sense elsewhere\n if (!isFiberMounted(fiber) || fiber.tag !== ClassComponent) {\n throw new Error('Expected subtree parent to be a mounted class component. ' + 'This error is likely caused by a bug in React. Please file an issue.');\n }\n\n var node = fiber;\n\n do {\n switch (node.tag) {\n case HostRoot:\n return node.stateNode.context;\n\n case ClassComponent:\n {\n var Component = node.type;\n\n if (isContextProvider(Component)) {\n return node.stateNode.__reactInternalMemoizedMergedChildContext;\n }\n\n break;\n }\n }\n\n node = node.return;\n } while (node !== null);\n\n throw new Error('Found unexpected detached subtree parent. ' + 'This error is likely caused by a bug in React. Please file an issue.');\n }\n}\n\nvar LegacyRoot = 0;\nvar ConcurrentRoot = 1;\n\nvar syncQueue = null;\nvar includesLegacySyncCallbacks = false;\nvar isFlushingSyncQueue = false;\nfunction scheduleSyncCallback(callback) {\n // Push this callback into an internal queue. We'll flush these either in\n // the next tick, or earlier if something calls `flushSyncCallbackQueue`.\n if (syncQueue === null) {\n syncQueue = [callback];\n } else {\n // Push onto existing queue. Don't need to schedule a callback because\n // we already scheduled one when we created the queue.\n syncQueue.push(callback);\n }\n}\nfunction scheduleLegacySyncCallback(callback) {\n includesLegacySyncCallbacks = true;\n scheduleSyncCallback(callback);\n}\nfunction flushSyncCallbacksOnlyInLegacyMode() {\n // Only flushes the queue if there's a legacy sync callback scheduled.\n // TODO: There's only a single type of callback: performSyncOnWorkOnRoot. So\n // it might make more sense for the queue to be a list of roots instead of a\n // list of generic callbacks. Then we can have two: one for legacy roots, one\n // for concurrent roots. And this method would only flush the legacy ones.\n if (includesLegacySyncCallbacks) {\n flushSyncCallbacks();\n }\n}\nfunction flushSyncCallbacks() {\n if (!isFlushingSyncQueue && syncQueue !== null) {\n // Prevent re-entrance.\n isFlushingSyncQueue = true;\n var i = 0;\n var previousUpdatePriority = getCurrentUpdatePriority();\n\n try {\n var isSync = true;\n var queue = syncQueue; // TODO: Is this necessary anymore? The only user code that runs in this\n // queue is in the render or commit phases.\n\n setCurrentUpdatePriority(DiscreteEventPriority);\n\n for (; i < queue.length; i++) {\n var callback = queue[i];\n\n do {\n callback = callback(isSync);\n } while (callback !== null);\n }\n\n syncQueue = null;\n includesLegacySyncCallbacks = false;\n } catch (error) {\n // If something throws, leave the remaining callbacks on the queue.\n if (syncQueue !== null) {\n syncQueue = syncQueue.slice(i + 1);\n } // Resume flushing in the next tick\n\n\n scheduleCallback(ImmediatePriority, flushSyncCallbacks);\n throw error;\n } finally {\n setCurrentUpdatePriority(previousUpdatePriority);\n isFlushingSyncQueue = false;\n }\n }\n\n return null;\n}\n\n// TODO: Use the unified fiber stack module instead of this local one?\n// Intentionally not using it yet to derisk the initial implementation, because\n// the way we push/pop these values is a bit unusual. If there's a mistake, I'd\n// rather the ids be wrong than crash the whole reconciler.\nvar forkStack = [];\nvar forkStackIndex = 0;\nvar treeForkProvider = null;\nvar treeForkCount = 0;\nvar idStack = [];\nvar idStackIndex = 0;\nvar treeContextProvider = null;\nvar treeContextId = 1;\nvar treeContextOverflow = '';\nfunction isForkedChild(workInProgress) {\n warnIfNotHydrating();\n return (workInProgress.flags & Forked) !== NoFlags;\n}\nfunction getForksAtLevel(workInProgress) {\n warnIfNotHydrating();\n return treeForkCount;\n}\nfunction getTreeId() {\n var overflow = treeContextOverflow;\n var idWithLeadingBit = treeContextId;\n var id = idWithLeadingBit & ~getLeadingBit(idWithLeadingBit);\n return id.toString(32) + overflow;\n}\nfunction pushTreeFork(workInProgress, totalChildren) {\n // This is called right after we reconcile an array (or iterator) of child\n // fibers, because that's the only place where we know how many children in\n // the whole set without doing extra work later, or storing addtional\n // information on the fiber.\n //\n // That's why this function is separate from pushTreeId \u2014 it's called during\n // the render phase of the fork parent, not the child, which is where we push\n // the other context values.\n //\n // In the Fizz implementation this is much simpler because the child is\n // rendered in the same callstack as the parent.\n //\n // It might be better to just add a `forks` field to the Fiber type. It would\n // make this module simpler.\n warnIfNotHydrating();\n forkStack[forkStackIndex++] = treeForkCount;\n forkStack[forkStackIndex++] = treeForkProvider;\n treeForkProvider = workInProgress;\n treeForkCount = totalChildren;\n}\nfunction pushTreeId(workInProgress, totalChildren, index) {\n warnIfNotHydrating();\n idStack[idStackIndex++] = treeContextId;\n idStack[idStackIndex++] = treeContextOverflow;\n idStack[idStackIndex++] = treeContextProvider;\n treeContextProvider = workInProgress;\n var baseIdWithLeadingBit = treeContextId;\n var baseOverflow = treeContextOverflow; // The leftmost 1 marks the end of the sequence, non-inclusive. It's not part\n // of the id; we use it to account for leading 0s.\n\n var baseLength = getBitLength(baseIdWithLeadingBit) - 1;\n var baseId = baseIdWithLeadingBit & ~(1 << baseLength);\n var slot = index + 1;\n var length = getBitLength(totalChildren) + baseLength; // 30 is the max length we can store without overflowing, taking into\n // consideration the leading 1 we use to mark the end of the sequence.\n\n if (length > 30) {\n // We overflowed the bitwise-safe range. Fall back to slower algorithm.\n // This branch assumes the length of the base id is greater than 5; it won't\n // work for smaller ids, because you need 5 bits per character.\n //\n // We encode the id in multiple steps: first the base id, then the\n // remaining digits.\n //\n // Each 5 bit sequence corresponds to a single base 32 character. So for\n // example, if the current id is 23 bits long, we can convert 20 of those\n // bits into a string of 4 characters, with 3 bits left over.\n //\n // First calculate how many bits in the base id represent a complete\n // sequence of characters.\n var numberOfOverflowBits = baseLength - baseLength % 5; // Then create a bitmask that selects only those bits.\n\n var newOverflowBits = (1 << numberOfOverflowBits) - 1; // Select the bits, and convert them to a base 32 string.\n\n var newOverflow = (baseId & newOverflowBits).toString(32); // Now we can remove those bits from the base id.\n\n var restOfBaseId = baseId >> numberOfOverflowBits;\n var restOfBaseLength = baseLength - numberOfOverflowBits; // Finally, encode the rest of the bits using the normal algorithm. Because\n // we made more room, this time it won't overflow.\n\n var restOfLength = getBitLength(totalChildren) + restOfBaseLength;\n var restOfNewBits = slot << restOfBaseLength;\n var id = restOfNewBits | restOfBaseId;\n var overflow = newOverflow + baseOverflow;\n treeContextId = 1 << restOfLength | id;\n treeContextOverflow = overflow;\n } else {\n // Normal path\n var newBits = slot << baseLength;\n\n var _id = newBits | baseId;\n\n var _overflow = baseOverflow;\n treeContextId = 1 << length | _id;\n treeContextOverflow = _overflow;\n }\n}\nfunction pushMaterializedTreeId(workInProgress) {\n warnIfNotHydrating(); // This component materialized an id. This will affect any ids that appear\n // in its children.\n\n var returnFiber = workInProgress.return;\n\n if (returnFiber !== null) {\n var numberOfForks = 1;\n var slotIndex = 0;\n pushTreeFork(workInProgress, numberOfForks);\n pushTreeId(workInProgress, numberOfForks, slotIndex);\n }\n}\n\nfunction getBitLength(number) {\n return 32 - clz32(number);\n}\n\nfunction getLeadingBit(id) {\n return 1 << getBitLength(id) - 1;\n}\n\nfunction popTreeContext(workInProgress) {\n // Restore the previous values.\n // This is a bit more complicated than other context-like modules in Fiber\n // because the same Fiber may appear on the stack multiple times and for\n // different reasons. We have to keep popping until the work-in-progress is\n // no longer at the top of the stack.\n while (workInProgress === treeForkProvider) {\n treeForkProvider = forkStack[--forkStackIndex];\n forkStack[forkStackIndex] = null;\n treeForkCount = forkStack[--forkStackIndex];\n forkStack[forkStackIndex] = null;\n }\n\n while (workInProgress === treeContextProvider) {\n treeContextProvider = idStack[--idStackIndex];\n idStack[idStackIndex] = null;\n treeContextOverflow = idStack[--idStackIndex];\n idStack[idStackIndex] = null;\n treeContextId = idStack[--idStackIndex];\n idStack[idStackIndex] = null;\n }\n}\nfunction getSuspendedTreeContext() {\n warnIfNotHydrating();\n\n if (treeContextProvider !== null) {\n return {\n id: treeContextId,\n overflow: treeContextOverflow\n };\n } else {\n return null;\n }\n}\nfunction restoreSuspendedTreeContext(workInProgress, suspendedContext) {\n warnIfNotHydrating();\n idStack[idStackIndex++] = treeContextId;\n idStack[idStackIndex++] = treeContextOverflow;\n idStack[idStackIndex++] = treeContextProvider;\n treeContextId = suspendedContext.id;\n treeContextOverflow = suspendedContext.overflow;\n treeContextProvider = workInProgress;\n}\n\nfunction warnIfNotHydrating() {\n {\n if (!getIsHydrating()) {\n error('Expected to be hydrating. This is a bug in React. Please file ' + 'an issue.');\n }\n }\n}\n\n// This may have been an insertion or a hydration.\n\nvar hydrationParentFiber = null;\nvar nextHydratableInstance = null;\nvar isHydrating = false; // This flag allows for warning supression when we expect there to be mismatches\n// due to earlier mismatches or a suspended fiber.\n\nvar didSuspendOrErrorDEV = false; // Hydration errors that were thrown inside this boundary\n\nvar hydrationErrors = null;\n\nfunction warnIfHydrating() {\n {\n if (isHydrating) {\n error('We should not be hydrating here. This is a bug in React. Please file a bug.');\n }\n }\n}\n\nfunction markDidThrowWhileHydratingDEV() {\n {\n didSuspendOrErrorDEV = true;\n }\n}\nfunction didSuspendOrErrorWhileHydratingDEV() {\n {\n return didSuspendOrErrorDEV;\n }\n}\n\nfunction enterHydrationState(fiber) {\n\n var parentInstance = fiber.stateNode.containerInfo;\n nextHydratableInstance = getFirstHydratableChildWithinContainer(parentInstance);\n hydrationParentFiber = fiber;\n isHydrating = true;\n hydrationErrors = null;\n didSuspendOrErrorDEV = false;\n return true;\n}\n\nfunction reenterHydrationStateFromDehydratedSuspenseInstance(fiber, suspenseInstance, treeContext) {\n\n nextHydratableInstance = getFirstHydratableChildWithinSuspenseInstance(suspenseInstance);\n hydrationParentFiber = fiber;\n isHydrating = true;\n hydrationErrors = null;\n didSuspendOrErrorDEV = false;\n\n if (treeContext !== null) {\n restoreSuspendedTreeContext(fiber, treeContext);\n }\n\n return true;\n}\n\nfunction warnUnhydratedInstance(returnFiber, instance) {\n {\n switch (returnFiber.tag) {\n case HostRoot:\n {\n didNotHydrateInstanceWithinContainer(returnFiber.stateNode.containerInfo, instance);\n break;\n }\n\n case HostComponent:\n {\n var isConcurrentMode = (returnFiber.mode & ConcurrentMode) !== NoMode;\n didNotHydrateInstance(returnFiber.type, returnFiber.memoizedProps, returnFiber.stateNode, instance, // TODO: Delete this argument when we remove the legacy root API.\n isConcurrentMode);\n break;\n }\n\n case SuspenseComponent:\n {\n var suspenseState = returnFiber.memoizedState;\n if (suspenseState.dehydrated !== null) didNotHydrateInstanceWithinSuspenseInstance(suspenseState.dehydrated, instance);\n break;\n }\n }\n }\n}\n\nfunction deleteHydratableInstance(returnFiber, instance) {\n warnUnhydratedInstance(returnFiber, instance);\n var childToDelete = createFiberFromHostInstanceForDeletion();\n childToDelete.stateNode = instance;\n childToDelete.return = returnFiber;\n var deletions = returnFiber.deletions;\n\n if (deletions === null) {\n returnFiber.deletions = [childToDelete];\n returnFiber.flags |= ChildDeletion;\n } else {\n deletions.push(childToDelete);\n }\n}\n\nfunction warnNonhydratedInstance(returnFiber, fiber) {\n {\n if (didSuspendOrErrorDEV) {\n // Inside a boundary that already suspended. We're currently rendering the\n // siblings of a suspended node. The mismatch may be due to the missing\n // data, so it's probably a false positive.\n return;\n }\n\n switch (returnFiber.tag) {\n case HostRoot:\n {\n var parentContainer = returnFiber.stateNode.containerInfo;\n\n switch (fiber.tag) {\n case HostComponent:\n var type = fiber.type;\n var props = fiber.pendingProps;\n didNotFindHydratableInstanceWithinContainer(parentContainer, type);\n break;\n\n case HostText:\n var text = fiber.pendingProps;\n didNotFindHydratableTextInstanceWithinContainer(parentContainer, text);\n break;\n }\n\n break;\n }\n\n case HostComponent:\n {\n var parentType = returnFiber.type;\n var parentProps = returnFiber.memoizedProps;\n var parentInstance = returnFiber.stateNode;\n\n switch (fiber.tag) {\n case HostComponent:\n {\n var _type = fiber.type;\n var _props = fiber.pendingProps;\n var isConcurrentMode = (returnFiber.mode & ConcurrentMode) !== NoMode;\n didNotFindHydratableInstance(parentType, parentProps, parentInstance, _type, _props, // TODO: Delete this argument when we remove the legacy root API.\n isConcurrentMode);\n break;\n }\n\n case HostText:\n {\n var _text = fiber.pendingProps;\n\n var _isConcurrentMode = (returnFiber.mode & ConcurrentMode) !== NoMode;\n\n didNotFindHydratableTextInstance(parentType, parentProps, parentInstance, _text, // TODO: Delete this argument when we remove the legacy root API.\n _isConcurrentMode);\n break;\n }\n }\n\n break;\n }\n\n case SuspenseComponent:\n {\n var suspenseState = returnFiber.memoizedState;\n var _parentInstance = suspenseState.dehydrated;\n if (_parentInstance !== null) switch (fiber.tag) {\n case HostComponent:\n var _type2 = fiber.type;\n var _props2 = fiber.pendingProps;\n didNotFindHydratableInstanceWithinSuspenseInstance(_parentInstance, _type2);\n break;\n\n case HostText:\n var _text2 = fiber.pendingProps;\n didNotFindHydratableTextInstanceWithinSuspenseInstance(_parentInstance, _text2);\n break;\n }\n break;\n }\n\n default:\n return;\n }\n }\n}\n\nfunction insertNonHydratedInstance(returnFiber, fiber) {\n fiber.flags = fiber.flags & ~Hydrating | Placement;\n warnNonhydratedInstance(returnFiber, fiber);\n}\n\nfunction tryHydrate(fiber, nextInstance) {\n switch (fiber.tag) {\n case HostComponent:\n {\n var type = fiber.type;\n var props = fiber.pendingProps;\n var instance = canHydrateInstance(nextInstance, type);\n\n if (instance !== null) {\n fiber.stateNode = instance;\n hydrationParentFiber = fiber;\n nextHydratableInstance = getFirstHydratableChild(instance);\n return true;\n }\n\n return false;\n }\n\n case HostText:\n {\n var text = fiber.pendingProps;\n var textInstance = canHydrateTextInstance(nextInstance, text);\n\n if (textInstance !== null) {\n fiber.stateNode = textInstance;\n hydrationParentFiber = fiber; // Text Instances don't have children so there's nothing to hydrate.\n\n nextHydratableInstance = null;\n return true;\n }\n\n return false;\n }\n\n case SuspenseComponent:\n {\n var suspenseInstance = canHydrateSuspenseInstance(nextInstance);\n\n if (suspenseInstance !== null) {\n var suspenseState = {\n dehydrated: suspenseInstance,\n treeContext: getSuspendedTreeContext(),\n retryLane: OffscreenLane\n };\n fiber.memoizedState = suspenseState; // Store the dehydrated fragment as a child fiber.\n // This simplifies the code for getHostSibling and deleting nodes,\n // since it doesn't have to consider all Suspense boundaries and\n // check if they're dehydrated ones or not.\n\n var dehydratedFragment = createFiberFromDehydratedFragment(suspenseInstance);\n dehydratedFragment.return = fiber;\n fiber.child = dehydratedFragment;\n hydrationParentFiber = fiber; // While a Suspense Instance does have children, we won't step into\n // it during the first pass. Instead, we'll reenter it later.\n\n nextHydratableInstance = null;\n return true;\n }\n\n return false;\n }\n\n default:\n return false;\n }\n}\n\nfunction shouldClientRenderOnMismatch(fiber) {\n return (fiber.mode & ConcurrentMode) !== NoMode && (fiber.flags & DidCapture) === NoFlags;\n}\n\nfunction throwOnHydrationMismatch(fiber) {\n throw new Error('Hydration failed because the initial UI does not match what was ' + 'rendered on the server.');\n}\n\nfunction tryToClaimNextHydratableInstance(fiber) {\n if (!isHydrating) {\n return;\n }\n\n var nextInstance = nextHydratableInstance;\n\n if (!nextInstance) {\n if (shouldClientRenderOnMismatch(fiber)) {\n warnNonhydratedInstance(hydrationParentFiber, fiber);\n throwOnHydrationMismatch();\n } // Nothing to hydrate. Make it an insertion.\n\n\n insertNonHydratedInstance(hydrationParentFiber, fiber);\n isHydrating = false;\n hydrationParentFiber = fiber;\n return;\n }\n\n var firstAttemptedInstance = nextInstance;\n\n if (!tryHydrate(fiber, nextInstance)) {\n if (shouldClientRenderOnMismatch(fiber)) {\n warnNonhydratedInstance(hydrationParentFiber, fiber);\n throwOnHydrationMismatch();\n } // If we can't hydrate this instance let's try the next one.\n // We use this as a heuristic. It's based on intuition and not data so it\n // might be flawed or unnecessary.\n\n\n nextInstance = getNextHydratableSibling(firstAttemptedInstance);\n var prevHydrationParentFiber = hydrationParentFiber;\n\n if (!nextInstance || !tryHydrate(fiber, nextInstance)) {\n // Nothing to hydrate. Make it an insertion.\n insertNonHydratedInstance(hydrationParentFiber, fiber);\n isHydrating = false;\n hydrationParentFiber = fiber;\n return;\n } // We matched the next one, we'll now assume that the first one was\n // superfluous and we'll delete it. Since we can't eagerly delete it\n // we'll have to schedule a deletion. To do that, this node needs a dummy\n // fiber associated with it.\n\n\n deleteHydratableInstance(prevHydrationParentFiber, firstAttemptedInstance);\n }\n}\n\nfunction prepareToHydrateHostInstance(fiber, rootContainerInstance, hostContext) {\n\n var instance = fiber.stateNode;\n var shouldWarnIfMismatchDev = !didSuspendOrErrorDEV;\n var updatePayload = hydrateInstance(instance, fiber.type, fiber.memoizedProps, rootContainerInstance, hostContext, fiber, shouldWarnIfMismatchDev); // TODO: Type this specific to this type of component.\n\n fiber.updateQueue = updatePayload; // If the update payload indicates that there is a change or if there\n // is a new ref we mark this as an update.\n\n if (updatePayload !== null) {\n return true;\n }\n\n return false;\n}\n\nfunction prepareToHydrateHostTextInstance(fiber) {\n\n var textInstance = fiber.stateNode;\n var textContent = fiber.memoizedProps;\n var shouldUpdate = hydrateTextInstance(textInstance, textContent, fiber);\n\n if (shouldUpdate) {\n // We assume that prepareToHydrateHostTextInstance is called in a context where the\n // hydration parent is the parent host component of this host text.\n var returnFiber = hydrationParentFiber;\n\n if (returnFiber !== null) {\n switch (returnFiber.tag) {\n case HostRoot:\n {\n var parentContainer = returnFiber.stateNode.containerInfo;\n var isConcurrentMode = (returnFiber.mode & ConcurrentMode) !== NoMode;\n didNotMatchHydratedContainerTextInstance(parentContainer, textInstance, textContent, // TODO: Delete this argument when we remove the legacy root API.\n isConcurrentMode);\n break;\n }\n\n case HostComponent:\n {\n var parentType = returnFiber.type;\n var parentProps = returnFiber.memoizedProps;\n var parentInstance = returnFiber.stateNode;\n\n var _isConcurrentMode2 = (returnFiber.mode & ConcurrentMode) !== NoMode;\n\n didNotMatchHydratedTextInstance(parentType, parentProps, parentInstance, textInstance, textContent, // TODO: Delete this argument when we remove the legacy root API.\n _isConcurrentMode2);\n break;\n }\n }\n }\n }\n\n return shouldUpdate;\n}\n\nfunction prepareToHydrateHostSuspenseInstance(fiber) {\n\n var suspenseState = fiber.memoizedState;\n var suspenseInstance = suspenseState !== null ? suspenseState.dehydrated : null;\n\n if (!suspenseInstance) {\n throw new Error('Expected to have a hydrated suspense instance. ' + 'This error is likely caused by a bug in React. Please file an issue.');\n }\n\n hydrateSuspenseInstance(suspenseInstance, fiber);\n}\n\nfunction skipPastDehydratedSuspenseInstance(fiber) {\n\n var suspenseState = fiber.memoizedState;\n var suspenseInstance = suspenseState !== null ? suspenseState.dehydrated : null;\n\n if (!suspenseInstance) {\n throw new Error('Expected to have a hydrated suspense instance. ' + 'This error is likely caused by a bug in React. Please file an issue.');\n }\n\n return getNextHydratableInstanceAfterSuspenseInstance(suspenseInstance);\n}\n\nfunction popToNextHostParent(fiber) {\n var parent = fiber.return;\n\n while (parent !== null && parent.tag !== HostComponent && parent.tag !== HostRoot && parent.tag !== SuspenseComponent) {\n parent = parent.return;\n }\n\n hydrationParentFiber = parent;\n}\n\nfunction popHydrationState(fiber) {\n\n if (fiber !== hydrationParentFiber) {\n // We're deeper than the current hydration context, inside an inserted\n // tree.\n return false;\n }\n\n if (!isHydrating) {\n // If we're not currently hydrating but we're in a hydration context, then\n // we were an insertion and now need to pop up reenter hydration of our\n // siblings.\n popToNextHostParent(fiber);\n isHydrating = true;\n return false;\n } // If we have any remaining hydratable nodes, we need to delete them now.\n // We only do this deeper than head and body since they tend to have random\n // other nodes in them. We also ignore components with pure text content in\n // side of them. We also don't delete anything inside the root container.\n\n\n if (fiber.tag !== HostRoot && (fiber.tag !== HostComponent || shouldDeleteUnhydratedTailInstances(fiber.type) && !shouldSetTextContent(fiber.type, fiber.memoizedProps))) {\n var nextInstance = nextHydratableInstance;\n\n if (nextInstance) {\n if (shouldClientRenderOnMismatch(fiber)) {\n warnIfUnhydratedTailNodes(fiber);\n throwOnHydrationMismatch();\n } else {\n while (nextInstance) {\n deleteHydratableInstance(fiber, nextInstance);\n nextInstance = getNextHydratableSibling(nextInstance);\n }\n }\n }\n }\n\n popToNextHostParent(fiber);\n\n if (fiber.tag === SuspenseComponent) {\n nextHydratableInstance = skipPastDehydratedSuspenseInstance(fiber);\n } else {\n nextHydratableInstance = hydrationParentFiber ? getNextHydratableSibling(fiber.stateNode) : null;\n }\n\n return true;\n}\n\nfunction hasUnhydratedTailNodes() {\n return isHydrating && nextHydratableInstance !== null;\n}\n\nfunction warnIfUnhydratedTailNodes(fiber) {\n var nextInstance = nextHydratableInstance;\n\n while (nextInstance) {\n warnUnhydratedInstance(fiber, nextInstance);\n nextInstance = getNextHydratableSibling(nextInstance);\n }\n}\n\nfunction resetHydrationState() {\n\n hydrationParentFiber = null;\n nextHydratableInstance = null;\n isHydrating = false;\n didSuspendOrErrorDEV = false;\n}\n\nfunction upgradeHydrationErrorsToRecoverable() {\n if (hydrationErrors !== null) {\n // Successfully completed a forced client render. The errors that occurred\n // during the hydration attempt are now recovered. We will log them in\n // commit phase, once the entire tree has finished.\n queueRecoverableErrors(hydrationErrors);\n hydrationErrors = null;\n }\n}\n\nfunction getIsHydrating() {\n return isHydrating;\n}\n\nfunction queueHydrationError(error) {\n if (hydrationErrors === null) {\n hydrationErrors = [error];\n } else {\n hydrationErrors.push(error);\n }\n}\n\nvar ReactCurrentBatchConfig$1 = ReactSharedInternals.ReactCurrentBatchConfig;\nvar NoTransition = null;\nfunction requestCurrentTransition() {\n return ReactCurrentBatchConfig$1.transition;\n}\n\nvar ReactStrictModeWarnings = {\n recordUnsafeLifecycleWarnings: function (fiber, instance) {},\n flushPendingUnsafeLifecycleWarnings: function () {},\n recordLegacyContextWarning: function (fiber, instance) {},\n flushLegacyContextWarning: function () {},\n discardPendingWarnings: function () {}\n};\n\n{\n var findStrictRoot = function (fiber) {\n var maybeStrictRoot = null;\n var node = fiber;\n\n while (node !== null) {\n if (node.mode & StrictLegacyMode) {\n maybeStrictRoot = node;\n }\n\n node = node.return;\n }\n\n return maybeStrictRoot;\n };\n\n var setToSortedString = function (set) {\n var array = [];\n set.forEach(function (value) {\n array.push(value);\n });\n return array.sort().join(', ');\n };\n\n var pendingComponentWillMountWarnings = [];\n var pendingUNSAFE_ComponentWillMountWarnings = [];\n var pendingComponentWillReceivePropsWarnings = [];\n var pendingUNSAFE_ComponentWillReceivePropsWarnings = [];\n var pendingComponentWillUpdateWarnings = [];\n var pendingUNSAFE_ComponentWillUpdateWarnings = []; // Tracks components we have already warned about.\n\n var didWarnAboutUnsafeLifecycles = new Set();\n\n ReactStrictModeWarnings.recordUnsafeLifecycleWarnings = function (fiber, instance) {\n // Dedupe strategy: Warn once per component.\n if (didWarnAboutUnsafeLifecycles.has(fiber.type)) {\n return;\n }\n\n if (typeof instance.componentWillMount === 'function' && // Don't warn about react-lifecycles-compat polyfilled components.\n instance.componentWillMount.__suppressDeprecationWarning !== true) {\n pendingComponentWillMountWarnings.push(fiber);\n }\n\n if (fiber.mode & StrictLegacyMode && typeof instance.UNSAFE_componentWillMount === 'function') {\n pendingUNSAFE_ComponentWillMountWarnings.push(fiber);\n }\n\n if (typeof instance.componentWillReceiveProps === 'function' && instance.componentWillReceiveProps.__suppressDeprecationWarning !== true) {\n pendingComponentWillReceivePropsWarnings.push(fiber);\n }\n\n if (fiber.mode & StrictLegacyMode && typeof instance.UNSAFE_componentWillReceiveProps === 'function') {\n pendingUNSAFE_ComponentWillReceivePropsWarnings.push(fiber);\n }\n\n if (typeof instance.componentWillUpdate === 'function' && instance.componentWillUpdate.__suppressDeprecationWarning !== true) {\n pendingComponentWillUpdateWarnings.push(fiber);\n }\n\n if (fiber.mode & StrictLegacyMode && typeof instance.UNSAFE_componentWillUpdate === 'function') {\n pendingUNSAFE_ComponentWillUpdateWarnings.push(fiber);\n }\n };\n\n ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings = function () {\n // We do an initial pass to gather component names\n var componentWillMountUniqueNames = new Set();\n\n if (pendingComponentWillMountWarnings.length > 0) {\n pendingComponentWillMountWarnings.forEach(function (fiber) {\n componentWillMountUniqueNames.add(getComponentNameFromFiber(fiber) || 'Component');\n didWarnAboutUnsafeLifecycles.add(fiber.type);\n });\n pendingComponentWillMountWarnings = [];\n }\n\n var UNSAFE_componentWillMountUniqueNames = new Set();\n\n if (pendingUNSAFE_ComponentWillMountWarnings.length > 0) {\n pendingUNSAFE_ComponentWillMountWarnings.forEach(function (fiber) {\n UNSAFE_componentWillMountUniqueNames.add(getComponentNameFromFiber(fiber) || 'Component');\n didWarnAboutUnsafeLifecycles.add(fiber.type);\n });\n pendingUNSAFE_ComponentWillMountWarnings = [];\n }\n\n var componentWillReceivePropsUniqueNames = new Set();\n\n if (pendingComponentWillReceivePropsWarnings.length > 0) {\n pendingComponentWillReceivePropsWarnings.forEach(function (fiber) {\n componentWillReceivePropsUniqueNames.add(getComponentNameFromFiber(fiber) || 'Component');\n didWarnAboutUnsafeLifecycles.add(fiber.type);\n });\n pendingComponentWillReceivePropsWarnings = [];\n }\n\n var UNSAFE_componentWillReceivePropsUniqueNames = new Set();\n\n if (pendingUNSAFE_ComponentWillReceivePropsWarnings.length > 0) {\n pendingUNSAFE_ComponentWillReceivePropsWarnings.forEach(function (fiber) {\n UNSAFE_componentWillReceivePropsUniqueNames.add(getComponentNameFromFiber(fiber) || 'Component');\n didWarnAboutUnsafeLifecycles.add(fiber.type);\n });\n pendingUNSAFE_ComponentWillReceivePropsWarnings = [];\n }\n\n var componentWillUpdateUniqueNames = new Set();\n\n if (pendingComponentWillUpdateWarnings.length > 0) {\n pendingComponentWillUpdateWarnings.forEach(function (fiber) {\n componentWillUpdateUniqueNames.add(getComponentNameFromFiber(fiber) || 'Component');\n didWarnAboutUnsafeLifecycles.add(fiber.type);\n });\n pendingComponentWillUpdateWarnings = [];\n }\n\n var UNSAFE_componentWillUpdateUniqueNames = new Set();\n\n if (pendingUNSAFE_ComponentWillUpdateWarnings.length > 0) {\n pendingUNSAFE_ComponentWillUpdateWarnings.forEach(function (fiber) {\n UNSAFE_componentWillUpdateUniqueNames.add(getComponentNameFromFiber(fiber) || 'Component');\n didWarnAboutUnsafeLifecycles.add(fiber.type);\n });\n pendingUNSAFE_ComponentWillUpdateWarnings = [];\n } // Finally, we flush all the warnings\n // UNSAFE_ ones before the deprecated ones, since they'll be 'louder'\n\n\n if (UNSAFE_componentWillMountUniqueNames.size > 0) {\n var sortedNames = setToSortedString(UNSAFE_componentWillMountUniqueNames);\n\n error('Using UNSAFE_componentWillMount in strict mode is not recommended and may indicate bugs in your code. ' + 'See https://reactjs.org/link/unsafe-component-lifecycles for details.\\n\\n' + '* Move code with side effects to componentDidMount, and set initial state in the constructor.\\n' + '\\nPlease update the following components: %s', sortedNames);\n }\n\n if (UNSAFE_componentWillReceivePropsUniqueNames.size > 0) {\n var _sortedNames = setToSortedString(UNSAFE_componentWillReceivePropsUniqueNames);\n\n error('Using UNSAFE_componentWillReceiveProps in strict mode is not recommended ' + 'and may indicate bugs in your code. ' + 'See https://reactjs.org/link/unsafe-component-lifecycles for details.\\n\\n' + '* Move data fetching code or side effects to componentDidUpdate.\\n' + \"* If you're updating state whenever props change, \" + 'refactor your code to use memoization techniques or move it to ' + 'static getDerivedStateFromProps. Learn more at: https://reactjs.org/link/derived-state\\n' + '\\nPlease update the following components: %s', _sortedNames);\n }\n\n if (UNSAFE_componentWillUpdateUniqueNames.size > 0) {\n var _sortedNames2 = setToSortedString(UNSAFE_componentWillUpdateUniqueNames);\n\n error('Using UNSAFE_componentWillUpdate in strict mode is not recommended ' + 'and may indicate bugs in your code. ' + 'See https://reactjs.org/link/unsafe-component-lifecycles for details.\\n\\n' + '* Move data fetching code or side effects to componentDidUpdate.\\n' + '\\nPlease update the following components: %s', _sortedNames2);\n }\n\n if (componentWillMountUniqueNames.size > 0) {\n var _sortedNames3 = setToSortedString(componentWillMountUniqueNames);\n\n warn('componentWillMount has been renamed, and is not recommended for use. ' + 'See https://reactjs.org/link/unsafe-component-lifecycles for details.\\n\\n' + '* Move code with side effects to componentDidMount, and set initial state in the constructor.\\n' + '* Rename componentWillMount to UNSAFE_componentWillMount to suppress ' + 'this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. ' + 'To rename all deprecated lifecycles to their new names, you can run ' + '`npx react-codemod rename-unsafe-lifecycles` in your project source folder.\\n' + '\\nPlease update the following components: %s', _sortedNames3);\n }\n\n if (componentWillReceivePropsUniqueNames.size > 0) {\n var _sortedNames4 = setToSortedString(componentWillReceivePropsUniqueNames);\n\n warn('componentWillReceiveProps has been renamed, and is not recommended for use. ' + 'See https://reactjs.org/link/unsafe-component-lifecycles for details.\\n\\n' + '* Move data fetching code or side effects to componentDidUpdate.\\n' + \"* If you're updating state whenever props change, refactor your \" + 'code to use memoization techniques or move it to ' + 'static getDerivedStateFromProps. Learn more at: https://reactjs.org/link/derived-state\\n' + '* Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps to suppress ' + 'this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. ' + 'To rename all deprecated lifecycles to their new names, you can run ' + '`npx react-codemod rename-unsafe-lifecycles` in your project source folder.\\n' + '\\nPlease update the following components: %s', _sortedNames4);\n }\n\n if (componentWillUpdateUniqueNames.size > 0) {\n var _sortedNames5 = setToSortedString(componentWillUpdateUniqueNames);\n\n warn('componentWillUpdate has been renamed, and is not recommended for use. ' + 'See https://reactjs.org/link/unsafe-component-lifecycles for details.\\n\\n' + '* Move data fetching code or side effects to componentDidUpdate.\\n' + '* Rename componentWillUpdate to UNSAFE_componentWillUpdate to suppress ' + 'this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. ' + 'To rename all deprecated lifecycles to their new names, you can run ' + '`npx react-codemod rename-unsafe-lifecycles` in your project source folder.\\n' + '\\nPlease update the following components: %s', _sortedNames5);\n }\n };\n\n var pendingLegacyContextWarning = new Map(); // Tracks components we have already warned about.\n\n var didWarnAboutLegacyContext = new Set();\n\n ReactStrictModeWarnings.recordLegacyContextWarning = function (fiber, instance) {\n var strictRoot = findStrictRoot(fiber);\n\n if (strictRoot === null) {\n error('Expected to find a StrictMode component in a strict mode tree. ' + 'This error is likely caused by a bug in React. Please file an issue.');\n\n return;\n } // Dedup strategy: Warn once per component.\n\n\n if (didWarnAboutLegacyContext.has(fiber.type)) {\n return;\n }\n\n var warningsForRoot = pendingLegacyContextWarning.get(strictRoot);\n\n if (fiber.type.contextTypes != null || fiber.type.childContextTypes != null || instance !== null && typeof instance.getChildContext === 'function') {\n if (warningsForRoot === undefined) {\n warningsForRoot = [];\n pendingLegacyContextWarning.set(strictRoot, warningsForRoot);\n }\n\n warningsForRoot.push(fiber);\n }\n };\n\n ReactStrictModeWarnings.flushLegacyContextWarning = function () {\n pendingLegacyContextWarning.forEach(function (fiberArray, strictRoot) {\n if (fiberArray.length === 0) {\n return;\n }\n\n var firstFiber = fiberArray[0];\n var uniqueNames = new Set();\n fiberArray.forEach(function (fiber) {\n uniqueNames.add(getComponentNameFromFiber(fiber) || 'Component');\n didWarnAboutLegacyContext.add(fiber.type);\n });\n var sortedNames = setToSortedString(uniqueNames);\n\n try {\n setCurrentFiber(firstFiber);\n\n error('Legacy context API has been detected within a strict-mode tree.' + '\\n\\nThe old API will be supported in all 16.x releases, but applications ' + 'using it should migrate to the new version.' + '\\n\\nPlease update the following components: %s' + '\\n\\nLearn more about this warning here: https://reactjs.org/link/legacy-context', sortedNames);\n } finally {\n resetCurrentFiber();\n }\n });\n };\n\n ReactStrictModeWarnings.discardPendingWarnings = function () {\n pendingComponentWillMountWarnings = [];\n pendingUNSAFE_ComponentWillMountWarnings = [];\n pendingComponentWillReceivePropsWarnings = [];\n pendingUNSAFE_ComponentWillReceivePropsWarnings = [];\n pendingComponentWillUpdateWarnings = [];\n pendingUNSAFE_ComponentWillUpdateWarnings = [];\n pendingLegacyContextWarning = new Map();\n };\n}\n\nvar didWarnAboutMaps;\nvar didWarnAboutGenerators;\nvar didWarnAboutStringRefs;\nvar ownerHasKeyUseWarning;\nvar ownerHasFunctionTypeWarning;\n\nvar warnForMissingKey = function (child, returnFiber) {};\n\n{\n didWarnAboutMaps = false;\n didWarnAboutGenerators = false;\n didWarnAboutStringRefs = {};\n /**\n * Warn if there's no key explicitly set on dynamic arrays of children or\n * object keys are not valid. This allows us to keep track of children between\n * updates.\n */\n\n ownerHasKeyUseWarning = {};\n ownerHasFunctionTypeWarning = {};\n\n warnForMissingKey = function (child, returnFiber) {\n if (child === null || typeof child !== 'object') {\n return;\n }\n\n if (!child._store || child._store.validated || child.key != null) {\n return;\n }\n\n if (typeof child._store !== 'object') {\n throw new Error('React Component in warnForMissingKey should have a _store. ' + 'This error is likely caused by a bug in React. Please file an issue.');\n }\n\n child._store.validated = true;\n var componentName = getComponentNameFromFiber(returnFiber) || 'Component';\n\n if (ownerHasKeyUseWarning[componentName]) {\n return;\n }\n\n ownerHasKeyUseWarning[componentName] = true;\n\n error('Each child in a list should have a unique ' + '\"key\" prop. See https://reactjs.org/link/warning-keys for ' + 'more information.');\n };\n}\n\nfunction isReactClass(type) {\n return type.prototype && type.prototype.isReactComponent;\n}\n\nfunction coerceRef(returnFiber, current, element) {\n var mixedRef = element.ref;\n\n if (mixedRef !== null && typeof mixedRef !== 'function' && typeof mixedRef !== 'object') {\n {\n // TODO: Clean this up once we turn on the string ref warning for\n // everyone, because the strict mode case will no longer be relevant\n if ((returnFiber.mode & StrictLegacyMode || warnAboutStringRefs) && // We warn in ReactElement.js if owner and self are equal for string refs\n // because these cannot be automatically converted to an arrow function\n // using a codemod. Therefore, we don't have to warn about string refs again.\n !(element._owner && element._self && element._owner.stateNode !== element._self) && // Will already throw with \"Function components cannot have string refs\"\n !(element._owner && element._owner.tag !== ClassComponent) && // Will already warn with \"Function components cannot be given refs\"\n !(typeof element.type === 'function' && !isReactClass(element.type)) && // Will already throw with \"Element ref was specified as a string (someStringRef) but no owner was set\"\n element._owner) {\n var componentName = getComponentNameFromFiber(returnFiber) || 'Component';\n\n if (!didWarnAboutStringRefs[componentName]) {\n {\n error('Component \"%s\" contains the string ref \"%s\". Support for string refs ' + 'will be removed in a future major release. We recommend using ' + 'useRef() or createRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref', componentName, mixedRef);\n }\n\n didWarnAboutStringRefs[componentName] = true;\n }\n }\n }\n\n if (element._owner) {\n var owner = element._owner;\n var inst;\n\n if (owner) {\n var ownerFiber = owner;\n\n if (ownerFiber.tag !== ClassComponent) {\n throw new Error('Function components cannot have string refs. ' + 'We recommend using useRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref');\n }\n\n inst = ownerFiber.stateNode;\n }\n\n if (!inst) {\n throw new Error(\"Missing owner for string ref \" + mixedRef + \". This error is likely caused by a \" + 'bug in React. Please file an issue.');\n } // Assigning this to a const so Flow knows it won't change in the closure\n\n\n var resolvedInst = inst;\n\n {\n checkPropStringCoercion(mixedRef, 'ref');\n }\n\n var stringRef = '' + mixedRef; // Check if previous string ref matches new string ref\n\n if (current !== null && current.ref !== null && typeof current.ref === 'function' && current.ref._stringRef === stringRef) {\n return current.ref;\n }\n\n var ref = function (value) {\n var refs = resolvedInst.refs;\n\n if (value === null) {\n delete refs[stringRef];\n } else {\n refs[stringRef] = value;\n }\n };\n\n ref._stringRef = stringRef;\n return ref;\n } else {\n if (typeof mixedRef !== 'string') {\n throw new Error('Expected ref to be a function, a string, an object returned by React.createRef(), or null.');\n }\n\n if (!element._owner) {\n throw new Error(\"Element ref was specified as a string (\" + mixedRef + \") but no owner was set. This could happen for one of\" + ' the following reasons:\\n' + '1. You may be adding a ref to a function component\\n' + \"2. You may be adding a ref to a component that was not created inside a component's render method\\n\" + '3. You have multiple copies of React loaded\\n' + 'See https://reactjs.org/link/refs-must-have-owner for more information.');\n }\n }\n }\n\n return mixedRef;\n}\n\nfunction throwOnInvalidObjectType(returnFiber, newChild) {\n var childString = Object.prototype.toString.call(newChild);\n throw new Error(\"Objects are not valid as a React child (found: \" + (childString === '[object Object]' ? 'object with keys {' + Object.keys(newChild).join(', ') + '}' : childString) + \"). \" + 'If you meant to render a collection of children, use an array ' + 'instead.');\n}\n\nfunction warnOnFunctionType(returnFiber) {\n {\n var componentName = getComponentNameFromFiber(returnFiber) || 'Component';\n\n if (ownerHasFunctionTypeWarning[componentName]) {\n return;\n }\n\n ownerHasFunctionTypeWarning[componentName] = true;\n\n error('Functions are not valid as a React child. This may happen if ' + 'you return a Component instead of <Component /> from render. ' + 'Or maybe you meant to call this function rather than return it.');\n }\n}\n\nfunction resolveLazy(lazyType) {\n var payload = lazyType._payload;\n var init = lazyType._init;\n return init(payload);\n} // This wrapper function exists because I expect to clone the code in each path\n// to be able to optimize each path individually by branching early. This needs\n// a compiler or we can do it manually. Helpers that don't need this branching\n// live outside of this function.\n\n\nfunction ChildReconciler(shouldTrackSideEffects) {\n function deleteChild(returnFiber, childToDelete) {\n if (!shouldTrackSideEffects) {\n // Noop.\n return;\n }\n\n var deletions = returnFiber.deletions;\n\n if (deletions === null) {\n returnFiber.deletions = [childToDelete];\n returnFiber.flags |= ChildDeletion;\n } else {\n deletions.push(childToDelete);\n }\n }\n\n function deleteRemainingChildren(returnFiber, currentFirstChild) {\n if (!shouldTrackSideEffects) {\n // Noop.\n return null;\n } // TODO: For the shouldClone case, this could be micro-optimized a bit by\n // assuming that after the first child we've already added everything.\n\n\n var childToDelete = currentFirstChild;\n\n while (childToDelete !== null) {\n deleteChild(returnFiber, childToDelete);\n childToDelete = childToDelete.sibling;\n }\n\n return null;\n }\n\n function mapRemainingChildren(returnFiber, currentFirstChild) {\n // Add the remaining children to a temporary map so that we can find them by\n // keys quickly. Implicit (null) keys get added to this set with their index\n // instead.\n var existingChildren = new Map();\n var existingChild = currentFirstChild;\n\n while (existingChild !== null) {\n if (existingChild.key !== null) {\n existingChildren.set(existingChild.key, existingChild);\n } else {\n existingChildren.set(existingChild.index, existingChild);\n }\n\n existingChild = existingChild.sibling;\n }\n\n return existingChildren;\n }\n\n function useFiber(fiber, pendingProps) {\n // We currently set sibling to null and index to 0 here because it is easy\n // to forget to do before returning it. E.g. for the single child case.\n var clone = createWorkInProgress(fiber, pendingProps);\n clone.index = 0;\n clone.sibling = null;\n return clone;\n }\n\n function placeChild(newFiber, lastPlacedIndex, newIndex) {\n newFiber.index = newIndex;\n\n if (!shouldTrackSideEffects) {\n // During hydration, the useId algorithm needs to know which fibers are\n // part of a list of children (arrays, iterators).\n newFiber.flags |= Forked;\n return lastPlacedIndex;\n }\n\n var current = newFiber.alternate;\n\n if (current !== null) {\n var oldIndex = current.index;\n\n if (oldIndex < lastPlacedIndex) {\n // This is a move.\n newFiber.flags |= Placement;\n return lastPlacedIndex;\n } else {\n // This item can stay in place.\n return oldIndex;\n }\n } else {\n // This is an insertion.\n newFiber.flags |= Placement;\n return lastPlacedIndex;\n }\n }\n\n function placeSingleChild(newFiber) {\n // This is simpler for the single child case. We only need to do a\n // placement for inserting new children.\n if (shouldTrackSideEffects && newFiber.alternate === null) {\n newFiber.flags |= Placement;\n }\n\n return newFiber;\n }\n\n function updateTextNode(returnFiber, current, textContent, lanes) {\n if (current === null || current.tag !== HostText) {\n // Insert\n var created = createFiberFromText(textContent, returnFiber.mode, lanes);\n created.return = returnFiber;\n return created;\n } else {\n // Update\n var existing = useFiber(current, textContent);\n existing.return = returnFiber;\n return existing;\n }\n }\n\n function updateElement(returnFiber, current, element, lanes) {\n var elementType = element.type;\n\n if (elementType === REACT_FRAGMENT_TYPE) {\n return updateFragment(returnFiber, current, element.props.children, lanes, element.key);\n }\n\n if (current !== null) {\n if (current.elementType === elementType || ( // Keep this check inline so it only runs on the false path:\n isCompatibleFamilyForHotReloading(current, element) ) || // Lazy types should reconcile their resolved type.\n // We need to do this after the Hot Reloading check above,\n // because hot reloading has different semantics than prod because\n // it doesn't resuspend. So we can't let the call below suspend.\n typeof elementType === 'object' && elementType !== null && elementType.$$typeof === REACT_LAZY_TYPE && resolveLazy(elementType) === current.type) {\n // Move based on index\n var existing = useFiber(current, element.props);\n existing.ref = coerceRef(returnFiber, current, element);\n existing.return = returnFiber;\n\n {\n existing._debugSource = element._source;\n existing._debugOwner = element._owner;\n }\n\n return existing;\n }\n } // Insert\n\n\n var created = createFiberFromElement(element, returnFiber.mode, lanes);\n created.ref = coerceRef(returnFiber, current, element);\n created.return = returnFiber;\n return created;\n }\n\n function updatePortal(returnFiber, current, portal, lanes) {\n if (current === null || current.tag !== HostPortal || current.stateNode.containerInfo !== portal.containerInfo || current.stateNode.implementation !== portal.implementation) {\n // Insert\n var created = createFiberFromPortal(portal, returnFiber.mode, lanes);\n created.return = returnFiber;\n return created;\n } else {\n // Update\n var existing = useFiber(current, portal.children || []);\n existing.return = returnFiber;\n return existing;\n }\n }\n\n function updateFragment(returnFiber, current, fragment, lanes, key) {\n if (current === null || current.tag !== Fragment) {\n // Insert\n var created = createFiberFromFragment(fragment, returnFiber.mode, lanes, key);\n created.return = returnFiber;\n return created;\n } else {\n // Update\n var existing = useFiber(current, fragment);\n existing.return = returnFiber;\n return existing;\n }\n }\n\n function createChild(returnFiber, newChild, lanes) {\n if (typeof newChild === 'string' && newChild !== '' || typeof newChild === 'number') {\n // Text nodes don't have keys. If the previous node is implicitly keyed\n // we can continue to replace it without aborting even if it is not a text\n // node.\n var created = createFiberFromText('' + newChild, returnFiber.mode, lanes);\n created.return = returnFiber;\n return created;\n }\n\n if (typeof newChild === 'object' && newChild !== null) {\n switch (newChild.$$typeof) {\n case REACT_ELEMENT_TYPE:\n {\n var _created = createFiberFromElement(newChild, returnFiber.mode, lanes);\n\n _created.ref = coerceRef(returnFiber, null, newChild);\n _created.return = returnFiber;\n return _created;\n }\n\n case REACT_PORTAL_TYPE:\n {\n var _created2 = createFiberFromPortal(newChild, returnFiber.mode, lanes);\n\n _created2.return = returnFiber;\n return _created2;\n }\n\n case REACT_LAZY_TYPE:\n {\n var payload = newChild._payload;\n var init = newChild._init;\n return createChild(returnFiber, init(payload), lanes);\n }\n }\n\n if (isArray(newChild) || getIteratorFn(newChild)) {\n var _created3 = createFiberFromFragment(newChild, returnFiber.mode, lanes, null);\n\n _created3.return = returnFiber;\n return _created3;\n }\n\n throwOnInvalidObjectType(returnFiber, newChild);\n }\n\n {\n if (typeof newChild === 'function') {\n warnOnFunctionType(returnFiber);\n }\n }\n\n return null;\n }\n\n function updateSlot(returnFiber, oldFiber, newChild, lanes) {\n // Update the fiber if the keys match, otherwise return null.\n var key = oldFiber !== null ? oldFiber.key : null;\n\n if (typeof newChild === 'string' && newChild !== '' || typeof newChild === 'number') {\n // Text nodes don't have keys. If the previous node is implicitly keyed\n // we can continue to replace it without aborting even if it is not a text\n // node.\n if (key !== null) {\n return null;\n }\n\n return updateTextNode(returnFiber, oldFiber, '' + newChild, lanes);\n }\n\n if (typeof newChild === 'object' && newChild !== null) {\n switch (newChild.$$typeof) {\n case REACT_ELEMENT_TYPE:\n {\n if (newChild.key === key) {\n return updateElement(returnFiber, oldFiber, newChild, lanes);\n } else {\n return null;\n }\n }\n\n case REACT_PORTAL_TYPE:\n {\n if (newChild.key === key) {\n return updatePortal(returnFiber, oldFiber, newChild, lanes);\n } else {\n return null;\n }\n }\n\n case REACT_LAZY_TYPE:\n {\n var payload = newChild._payload;\n var init = newChild._init;\n return updateSlot(returnFiber, oldFiber, init(payload), lanes);\n }\n }\n\n if (isArray(newChild) || getIteratorFn(newChild)) {\n if (key !== null) {\n return null;\n }\n\n return updateFragment(returnFiber, oldFiber, newChild, lanes, null);\n }\n\n throwOnInvalidObjectType(returnFiber, newChild);\n }\n\n {\n if (typeof newChild === 'function') {\n warnOnFunctionType(returnFiber);\n }\n }\n\n return null;\n }\n\n function updateFromMap(existingChildren, returnFiber, newIdx, newChild, lanes) {\n if (typeof newChild === 'string' && newChild !== '' || typeof newChild === 'number') {\n // Text nodes don't have keys, so we neither have to check the old nor\n // new node for the key. If both are text nodes, they match.\n var matchedFiber = existingChildren.get(newIdx) || null;\n return updateTextNode(returnFiber, matchedFiber, '' + newChild, lanes);\n }\n\n if (typeof newChild === 'object' && newChild !== null) {\n switch (newChild.$$typeof) {\n case REACT_ELEMENT_TYPE:\n {\n var _matchedFiber = existingChildren.get(newChild.key === null ? newIdx : newChild.key) || null;\n\n return updateElement(returnFiber, _matchedFiber, newChild, lanes);\n }\n\n case REACT_PORTAL_TYPE:\n {\n var _matchedFiber2 = existingChildren.get(newChild.key === null ? newIdx : newChild.key) || null;\n\n return updatePortal(returnFiber, _matchedFiber2, newChild, lanes);\n }\n\n case REACT_LAZY_TYPE:\n var payload = newChild._payload;\n var init = newChild._init;\n return updateFromMap(existingChildren, returnFiber, newIdx, init(payload), lanes);\n }\n\n if (isArray(newChild) || getIteratorFn(newChild)) {\n var _matchedFiber3 = existingChildren.get(newIdx) || null;\n\n return updateFragment(returnFiber, _matchedFiber3, newChild, lanes, null);\n }\n\n throwOnInvalidObjectType(returnFiber, newChild);\n }\n\n {\n if (typeof newChild === 'function') {\n warnOnFunctionType(returnFiber);\n }\n }\n\n return null;\n }\n /**\n * Warns if there is a duplicate or missing key\n */\n\n\n function warnOnInvalidKey(child, knownKeys, returnFiber) {\n {\n if (typeof child !== 'object' || child === null) {\n return knownKeys;\n }\n\n switch (child.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n warnForMissingKey(child, returnFiber);\n var key = child.key;\n\n if (typeof key !== 'string') {\n break;\n }\n\n if (knownKeys === null) {\n knownKeys = new Set();\n knownKeys.add(key);\n break;\n }\n\n if (!knownKeys.has(key)) {\n knownKeys.add(key);\n break;\n }\n\n error('Encountered two children with the same key, `%s`. ' + 'Keys should be unique so that components maintain their identity ' + 'across updates. Non-unique keys may cause children to be ' + 'duplicated and/or omitted \u2014 the behavior is unsupported and ' + 'could change in a future version.', key);\n\n break;\n\n case REACT_LAZY_TYPE:\n var payload = child._payload;\n var init = child._init;\n warnOnInvalidKey(init(payload), knownKeys, returnFiber);\n break;\n }\n }\n\n return knownKeys;\n }\n\n function reconcileChildrenArray(returnFiber, currentFirstChild, newChildren, lanes) {\n // This algorithm can't optimize by searching from both ends since we\n // don't have backpointers on fibers. I'm trying to see how far we can get\n // with that model. If it ends up not being worth the tradeoffs, we can\n // add it later.\n // Even with a two ended optimization, we'd want to optimize for the case\n // where there are few changes and brute force the comparison instead of\n // going for the Map. It'd like to explore hitting that path first in\n // forward-only mode and only go for the Map once we notice that we need\n // lots of look ahead. This doesn't handle reversal as well as two ended\n // search but that's unusual. Besides, for the two ended optimization to\n // work on Iterables, we'd need to copy the whole set.\n // In this first iteration, we'll just live with hitting the bad case\n // (adding everything to a Map) in for every insert/move.\n // If you change this code, also update reconcileChildrenIterator() which\n // uses the same algorithm.\n {\n // First, validate keys.\n var knownKeys = null;\n\n for (var i = 0; i < newChildren.length; i++) {\n var child = newChildren[i];\n knownKeys = warnOnInvalidKey(child, knownKeys, returnFiber);\n }\n }\n\n var resultingFirstChild = null;\n var previousNewFiber = null;\n var oldFiber = currentFirstChild;\n var lastPlacedIndex = 0;\n var newIdx = 0;\n var nextOldFiber = null;\n\n for (; oldFiber !== null && newIdx < newChildren.length; newIdx++) {\n if (oldFiber.index > newIdx) {\n nextOldFiber = oldFiber;\n oldFiber = null;\n } else {\n nextOldFiber = oldFiber.sibling;\n }\n\n var newFiber = updateSlot(returnFiber, oldFiber, newChildren[newIdx], lanes);\n\n if (newFiber === null) {\n // TODO: This breaks on empty slots like null children. That's\n // unfortunate because it triggers the slow path all the time. We need\n // a better way to communicate whether this was a miss or null,\n // boolean, undefined, etc.\n if (oldFiber === null) {\n oldFiber = nextOldFiber;\n }\n\n break;\n }\n\n if (shouldTrackSideEffects) {\n if (oldFiber && newFiber.alternate === null) {\n // We matched the slot, but we didn't reuse the existing fiber, so we\n // need to delete the existing child.\n deleteChild(returnFiber, oldFiber);\n }\n }\n\n lastPlacedIndex = placeChild(newFiber, lastPlacedIndex, newIdx);\n\n if (previousNewFiber === null) {\n // TODO: Move out of the loop. This only happens for the first run.\n resultingFirstChild = newFiber;\n } else {\n // TODO: Defer siblings if we're not at the right index for this slot.\n // I.e. if we had null values before, then we want to defer this\n // for each null value. However, we also don't want to call updateSlot\n // with the previous one.\n previousNewFiber.sibling = newFiber;\n }\n\n previousNewFiber = newFiber;\n oldFiber = nextOldFiber;\n }\n\n if (newIdx === newChildren.length) {\n // We've reached the end of the new children. We can delete the rest.\n deleteRemainingChildren(returnFiber, oldFiber);\n\n if (getIsHydrating()) {\n var numberOfForks = newIdx;\n pushTreeFork(returnFiber, numberOfForks);\n }\n\n return resultingFirstChild;\n }\n\n if (oldFiber === null) {\n // If we don't have any more existing children we can choose a fast path\n // since the rest will all be insertions.\n for (; newIdx < newChildren.length; newIdx++) {\n var _newFiber = createChild(returnFiber, newChildren[newIdx], lanes);\n\n if (_newFiber === null) {\n continue;\n }\n\n lastPlacedIndex = placeChild(_newFiber, lastPlacedIndex, newIdx);\n\n if (previousNewFiber === null) {\n // TODO: Move out of the loop. This only happens for the first run.\n resultingFirstChild = _newFiber;\n } else {\n previousNewFiber.sibling = _newFiber;\n }\n\n previousNewFiber = _newFiber;\n }\n\n if (getIsHydrating()) {\n var _numberOfForks = newIdx;\n pushTreeFork(returnFiber, _numberOfForks);\n }\n\n return resultingFirstChild;\n } // Add all children to a key map for quick lookups.\n\n\n var existingChildren = mapRemainingChildren(returnFiber, oldFiber); // Keep scanning and use the map to restore deleted items as moves.\n\n for (; newIdx < newChildren.length; newIdx++) {\n var _newFiber2 = updateFromMap(existingChildren, returnFiber, newIdx, newChildren[newIdx], lanes);\n\n if (_newFiber2 !== null) {\n if (shouldTrackSideEffects) {\n if (_newFiber2.alternate !== null) {\n // The new fiber is a work in progress, but if there exists a\n // current, that means that we reused the fiber. We need to delete\n // it from the child list so that we don't add it to the deletion\n // list.\n existingChildren.delete(_newFiber2.key === null ? newIdx : _newFiber2.key);\n }\n }\n\n lastPlacedIndex = placeChild(_newFiber2, lastPlacedIndex, newIdx);\n\n if (previousNewFiber === null) {\n resultingFirstChild = _newFiber2;\n } else {\n previousNewFiber.sibling = _newFiber2;\n }\n\n previousNewFiber = _newFiber2;\n }\n }\n\n if (shouldTrackSideEffects) {\n // Any existing children that weren't consumed above were deleted. We need\n // to add them to the deletion list.\n existingChildren.forEach(function (child) {\n return deleteChild(returnFiber, child);\n });\n }\n\n if (getIsHydrating()) {\n var _numberOfForks2 = newIdx;\n pushTreeFork(returnFiber, _numberOfForks2);\n }\n\n return resultingFirstChild;\n }\n\n function reconcileChildrenIterator(returnFiber, currentFirstChild, newChildrenIterable, lanes) {\n // This is the same implementation as reconcileChildrenArray(),\n // but using the iterator instead.\n var iteratorFn = getIteratorFn(newChildrenIterable);\n\n if (typeof iteratorFn !== 'function') {\n throw new Error('An object is not an iterable. This error is likely caused by a bug in ' + 'React. Please file an issue.');\n }\n\n {\n // We don't support rendering Generators because it's a mutation.\n // See https://github.com/facebook/react/issues/12995\n if (typeof Symbol === 'function' && // $FlowFixMe Flow doesn't know about toStringTag\n newChildrenIterable[Symbol.toStringTag] === 'Generator') {\n if (!didWarnAboutGenerators) {\n error('Using Generators as children is unsupported and will likely yield ' + 'unexpected results because enumerating a generator mutates it. ' + 'You may convert it to an array with `Array.from()` or the ' + '`[...spread]` operator before rendering. Keep in mind ' + 'you might need to polyfill these features for older browsers.');\n }\n\n didWarnAboutGenerators = true;\n } // Warn about using Maps as children\n\n\n if (newChildrenIterable.entries === iteratorFn) {\n if (!didWarnAboutMaps) {\n error('Using Maps as children is not supported. ' + 'Use an array of keyed ReactElements instead.');\n }\n\n didWarnAboutMaps = true;\n } // First, validate keys.\n // We'll get a different iterator later for the main pass.\n\n\n var _newChildren = iteratorFn.call(newChildrenIterable);\n\n if (_newChildren) {\n var knownKeys = null;\n\n var _step = _newChildren.next();\n\n for (; !_step.done; _step = _newChildren.next()) {\n var child = _step.value;\n knownKeys = warnOnInvalidKey(child, knownKeys, returnFiber);\n }\n }\n }\n\n var newChildren = iteratorFn.call(newChildrenIterable);\n\n if (newChildren == null) {\n throw new Error('An iterable object provided no iterator.');\n }\n\n var resultingFirstChild = null;\n var previousNewFiber = null;\n var oldFiber = currentFirstChild;\n var lastPlacedIndex = 0;\n var newIdx = 0;\n var nextOldFiber = null;\n var step = newChildren.next();\n\n for (; oldFiber !== null && !step.done; newIdx++, step = newChildren.next()) {\n if (oldFiber.index > newIdx) {\n nextOldFiber = oldFiber;\n oldFiber = null;\n } else {\n nextOldFiber = oldFiber.sibling;\n }\n\n var newFiber = updateSlot(returnFiber, oldFiber, step.value, lanes);\n\n if (newFiber === null) {\n // TODO: This breaks on empty slots like null children. That's\n // unfortunate because it triggers the slow path all the time. We need\n // a better way to communicate whether this was a miss or null,\n // boolean, undefined, etc.\n if (oldFiber === null) {\n oldFiber = nextOldFiber;\n }\n\n break;\n }\n\n if (shouldTrackSideEffects) {\n if (oldFiber && newFiber.alternate === null) {\n // We matched the slot, but we didn't reuse the existing fiber, so we\n // need to delete the existing child.\n deleteChild(returnFiber, oldFiber);\n }\n }\n\n lastPlacedIndex = placeChild(newFiber, lastPlacedIndex, newIdx);\n\n if (previousNewFiber === null) {\n // TODO: Move out of the loop. This only happens for the first run.\n resultingFirstChild = newFiber;\n } else {\n // TODO: Defer siblings if we're not at the right index for this slot.\n // I.e. if we had null values before, then we want to defer this\n // for each null value. However, we also don't want to call updateSlot\n // with the previous one.\n previousNewFiber.sibling = newFiber;\n }\n\n previousNewFiber = newFiber;\n oldFiber = nextOldFiber;\n }\n\n if (step.done) {\n // We've reached the end of the new children. We can delete the rest.\n deleteRemainingChildren(returnFiber, oldFiber);\n\n if (getIsHydrating()) {\n var numberOfForks = newIdx;\n pushTreeFork(returnFiber, numberOfForks);\n }\n\n return resultingFirstChild;\n }\n\n if (oldFiber === null) {\n // If we don't have any more existing children we can choose a fast path\n // since the rest will all be insertions.\n for (; !step.done; newIdx++, step = newChildren.next()) {\n var _newFiber3 = createChild(returnFiber, step.value, lanes);\n\n if (_newFiber3 === null) {\n continue;\n }\n\n lastPlacedIndex = placeChild(_newFiber3, lastPlacedIndex, newIdx);\n\n if (previousNewFiber === null) {\n // TODO: Move out of the loop. This only happens for the first run.\n resultingFirstChild = _newFiber3;\n } else {\n previousNewFiber.sibling = _newFiber3;\n }\n\n previousNewFiber = _newFiber3;\n }\n\n if (getIsHydrating()) {\n var _numberOfForks3 = newIdx;\n pushTreeFork(returnFiber, _numberOfForks3);\n }\n\n return resultingFirstChild;\n } // Add all children to a key map for quick lookups.\n\n\n var existingChildren = mapRemainingChildren(returnFiber, oldFiber); // Keep scanning and use the map to restore deleted items as moves.\n\n for (; !step.done; newIdx++, step = newChildren.next()) {\n var _newFiber4 = updateFromMap(existingChildren, returnFiber, newIdx, step.value, lanes);\n\n if (_newFiber4 !== null) {\n if (shouldTrackSideEffects) {\n if (_newFiber4.alternate !== null) {\n // The new fiber is a work in progress, but if there exists a\n // current, that means that we reused the fiber. We need to delete\n // it from the child list so that we don't add it to the deletion\n // list.\n existingChildren.delete(_newFiber4.key === null ? newIdx : _newFiber4.key);\n }\n }\n\n lastPlacedIndex = placeChild(_newFiber4, lastPlacedIndex, newIdx);\n\n if (previousNewFiber === null) {\n resultingFirstChild = _newFiber4;\n } else {\n previousNewFiber.sibling = _newFiber4;\n }\n\n previousNewFiber = _newFiber4;\n }\n }\n\n if (shouldTrackSideEffects) {\n // Any existing children that weren't consumed above were deleted. We need\n // to add them to the deletion list.\n existingChildren.forEach(function (child) {\n return deleteChild(returnFiber, child);\n });\n }\n\n if (getIsHydrating()) {\n var _numberOfForks4 = newIdx;\n pushTreeFork(returnFiber, _numberOfForks4);\n }\n\n return resultingFirstChild;\n }\n\n function reconcileSingleTextNode(returnFiber, currentFirstChild, textContent, lanes) {\n // There's no need to check for keys on text nodes since we don't have a\n // way to define them.\n if (currentFirstChild !== null && currentFirstChild.tag === HostText) {\n // We already have an existing node so let's just update it and delete\n // the rest.\n deleteRemainingChildren(returnFiber, currentFirstChild.sibling);\n var existing = useFiber(currentFirstChild, textContent);\n existing.return = returnFiber;\n return existing;\n } // The existing first child is not a text node so we need to create one\n // and delete the existing ones.\n\n\n deleteRemainingChildren(returnFiber, currentFirstChild);\n var created = createFiberFromText(textContent, returnFiber.mode, lanes);\n created.return = returnFiber;\n return created;\n }\n\n function reconcileSingleElement(returnFiber, currentFirstChild, element, lanes) {\n var key = element.key;\n var child = currentFirstChild;\n\n while (child !== null) {\n // TODO: If key === null and child.key === null, then this only applies to\n // the first item in the list.\n if (child.key === key) {\n var elementType = element.type;\n\n if (elementType === REACT_FRAGMENT_TYPE) {\n if (child.tag === Fragment) {\n deleteRemainingChildren(returnFiber, child.sibling);\n var existing = useFiber(child, element.props.children);\n existing.return = returnFiber;\n\n {\n existing._debugSource = element._source;\n existing._debugOwner = element._owner;\n }\n\n return existing;\n }\n } else {\n if (child.elementType === elementType || ( // Keep this check inline so it only runs on the false path:\n isCompatibleFamilyForHotReloading(child, element) ) || // Lazy types should reconcile their resolved type.\n // We need to do this after the Hot Reloading check above,\n // because hot reloading has different semantics than prod because\n // it doesn't resuspend. So we can't let the call below suspend.\n typeof elementType === 'object' && elementType !== null && elementType.$$typeof === REACT_LAZY_TYPE && resolveLazy(elementType) === child.type) {\n deleteRemainingChildren(returnFiber, child.sibling);\n\n var _existing = useFiber(child, element.props);\n\n _existing.ref = coerceRef(returnFiber, child, element);\n _existing.return = returnFiber;\n\n {\n _existing._debugSource = element._source;\n _existing._debugOwner = element._owner;\n }\n\n return _existing;\n }\n } // Didn't match.\n\n\n deleteRemainingChildren(returnFiber, child);\n break;\n } else {\n deleteChild(returnFiber, child);\n }\n\n child = child.sibling;\n }\n\n if (element.type === REACT_FRAGMENT_TYPE) {\n var created = createFiberFromFragment(element.props.children, returnFiber.mode, lanes, element.key);\n created.return = returnFiber;\n return created;\n } else {\n var _created4 = createFiberFromElement(element, returnFiber.mode, lanes);\n\n _created4.ref = coerceRef(returnFiber, currentFirstChild, element);\n _created4.return = returnFiber;\n return _created4;\n }\n }\n\n function reconcileSinglePortal(returnFiber, currentFirstChild, portal, lanes) {\n var key = portal.key;\n var child = currentFirstChild;\n\n while (child !== null) {\n // TODO: If key === null and child.key === null, then this only applies to\n // the first item in the list.\n if (child.key === key) {\n if (child.tag === HostPortal && child.stateNode.containerInfo === portal.containerInfo && child.stateNode.implementation === portal.implementation) {\n deleteRemainingChildren(returnFiber, child.sibling);\n var existing = useFiber(child, portal.children || []);\n existing.return = returnFiber;\n return existing;\n } else {\n deleteRemainingChildren(returnFiber, child);\n break;\n }\n } else {\n deleteChild(returnFiber, child);\n }\n\n child = child.sibling;\n }\n\n var created = createFiberFromPortal(portal, returnFiber.mode, lanes);\n created.return = returnFiber;\n return created;\n } // This API will tag the children with the side-effect of the reconciliation\n // itself. They will be added to the side-effect list as we pass through the\n // children and the parent.\n\n\n function reconcileChildFibers(returnFiber, currentFirstChild, newChild, lanes) {\n // This function is not recursive.\n // If the top level item is an array, we treat it as a set of children,\n // not as a fragment. Nested arrays on the other hand will be treated as\n // fragment nodes. Recursion happens at the normal flow.\n // Handle top level unkeyed fragments as if they were arrays.\n // This leads to an ambiguity between <>{[...]}</> and <>...</>.\n // We treat the ambiguous cases above the same.\n var isUnkeyedTopLevelFragment = typeof newChild === 'object' && newChild !== null && newChild.type === REACT_FRAGMENT_TYPE && newChild.key === null;\n\n if (isUnkeyedTopLevelFragment) {\n newChild = newChild.props.children;\n } // Handle object types\n\n\n if (typeof newChild === 'object' && newChild !== null) {\n switch (newChild.$$typeof) {\n case REACT_ELEMENT_TYPE:\n return placeSingleChild(reconcileSingleElement(returnFiber, currentFirstChild, newChild, lanes));\n\n case REACT_PORTAL_TYPE:\n return placeSingleChild(reconcileSinglePortal(returnFiber, currentFirstChild, newChild, lanes));\n\n case REACT_LAZY_TYPE:\n var payload = newChild._payload;\n var init = newChild._init; // TODO: This function is supposed to be non-recursive.\n\n return reconcileChildFibers(returnFiber, currentFirstChild, init(payload), lanes);\n }\n\n if (isArray(newChild)) {\n return reconcileChildrenArray(returnFiber, currentFirstChild, newChild, lanes);\n }\n\n if (getIteratorFn(newChild)) {\n return reconcileChildrenIterator(returnFiber, currentFirstChild, newChild, lanes);\n }\n\n throwOnInvalidObjectType(returnFiber, newChild);\n }\n\n if (typeof newChild === 'string' && newChild !== '' || typeof newChild === 'number') {\n return placeSingleChild(reconcileSingleTextNode(returnFiber, currentFirstChild, '' + newChild, lanes));\n }\n\n {\n if (typeof newChild === 'function') {\n warnOnFunctionType(returnFiber);\n }\n } // Remaining cases are all treated as empty.\n\n\n return deleteRemainingChildren(returnFiber, currentFirstChild);\n }\n\n return reconcileChildFibers;\n}\n\nvar reconcileChildFibers = ChildReconciler(true);\nvar mountChildFibers = ChildReconciler(false);\nfunction cloneChildFibers(current, workInProgress) {\n if (current !== null && workInProgress.child !== current.child) {\n throw new Error('Resuming work not yet implemented.');\n }\n\n if (workInProgress.child === null) {\n return;\n }\n\n var currentChild = workInProgress.child;\n var newChild = createWorkInProgress(currentChild, currentChild.pendingProps);\n workInProgress.child = newChild;\n newChild.return = workInProgress;\n\n while (currentChild.sibling !== null) {\n currentChild = currentChild.sibling;\n newChild = newChild.sibling = createWorkInProgress(currentChild, currentChild.pendingProps);\n newChild.return = workInProgress;\n }\n\n newChild.sibling = null;\n} // Reset a workInProgress child set to prepare it for a second pass.\n\nfunction resetChildFibers(workInProgress, lanes) {\n var child = workInProgress.child;\n\n while (child !== null) {\n resetWorkInProgress(child, lanes);\n child = child.sibling;\n }\n}\n\nvar valueCursor = createCursor(null);\nvar rendererSigil;\n\n{\n // Use this to detect multiple renderers using the same context\n rendererSigil = {};\n}\n\nvar currentlyRenderingFiber = null;\nvar lastContextDependency = null;\nvar lastFullyObservedContext = null;\nvar isDisallowedContextReadInDEV = false;\nfunction resetContextDependencies() {\n // This is called right before React yields execution, to ensure `readContext`\n // cannot be called outside the render phase.\n currentlyRenderingFiber = null;\n lastContextDependency = null;\n lastFullyObservedContext = null;\n\n {\n isDisallowedContextReadInDEV = false;\n }\n}\nfunction enterDisallowedContextReadInDEV() {\n {\n isDisallowedContextReadInDEV = true;\n }\n}\nfunction exitDisallowedContextReadInDEV() {\n {\n isDisallowedContextReadInDEV = false;\n }\n}\nfunction pushProvider(providerFiber, context, nextValue) {\n {\n push(valueCursor, context._currentValue, providerFiber);\n context._currentValue = nextValue;\n\n {\n if (context._currentRenderer !== undefined && context._currentRenderer !== null && context._currentRenderer !== rendererSigil) {\n error('Detected multiple renderers concurrently rendering the ' + 'same context provider. This is currently unsupported.');\n }\n\n context._currentRenderer = rendererSigil;\n }\n }\n}\nfunction popProvider(context, providerFiber) {\n var currentValue = valueCursor.current;\n pop(valueCursor, providerFiber);\n\n {\n {\n context._currentValue = currentValue;\n }\n }\n}\nfunction scheduleContextWorkOnParentPath(parent, renderLanes, propagationRoot) {\n // Update the child lanes of all the ancestors, including the alternates.\n var node = parent;\n\n while (node !== null) {\n var alternate = node.alternate;\n\n if (!isSubsetOfLanes(node.childLanes, renderLanes)) {\n node.childLanes = mergeLanes(node.childLanes, renderLanes);\n\n if (alternate !== null) {\n alternate.childLanes = mergeLanes(alternate.childLanes, renderLanes);\n }\n } else if (alternate !== null && !isSubsetOfLanes(alternate.childLanes, renderLanes)) {\n alternate.childLanes = mergeLanes(alternate.childLanes, renderLanes);\n }\n\n if (node === propagationRoot) {\n break;\n }\n\n node = node.return;\n }\n\n {\n if (node !== propagationRoot) {\n error('Expected to find the propagation root when scheduling context work. ' + 'This error is likely caused by a bug in React. Please file an issue.');\n }\n }\n}\nfunction propagateContextChange(workInProgress, context, renderLanes) {\n {\n propagateContextChange_eager(workInProgress, context, renderLanes);\n }\n}\n\nfunction propagateContextChange_eager(workInProgress, context, renderLanes) {\n\n var fiber = workInProgress.child;\n\n if (fiber !== null) {\n // Set the return pointer of the child to the work-in-progress fiber.\n fiber.return = workInProgress;\n }\n\n while (fiber !== null) {\n var nextFiber = void 0; // Visit this fiber.\n\n var list = fiber.dependencies;\n\n if (list !== null) {\n nextFiber = fiber.child;\n var dependency = list.firstContext;\n\n while (dependency !== null) {\n // Check if the context matches.\n if (dependency.context === context) {\n // Match! Schedule an update on this fiber.\n if (fiber.tag === ClassComponent) {\n // Schedule a force update on the work-in-progress.\n var lane = pickArbitraryLane(renderLanes);\n var update = createUpdate(NoTimestamp, lane);\n update.tag = ForceUpdate; // TODO: Because we don't have a work-in-progress, this will add the\n // update to the current fiber, too, which means it will persist even if\n // this render is thrown away. Since it's a race condition, not sure it's\n // worth fixing.\n // Inlined `enqueueUpdate` to remove interleaved update check\n\n var updateQueue = fiber.updateQueue;\n\n if (updateQueue === null) ; else {\n var sharedQueue = updateQueue.shared;\n var pending = sharedQueue.pending;\n\n if (pending === null) {\n // This is the first update. Create a circular list.\n update.next = update;\n } else {\n update.next = pending.next;\n pending.next = update;\n }\n\n sharedQueue.pending = update;\n }\n }\n\n fiber.lanes = mergeLanes(fiber.lanes, renderLanes);\n var alternate = fiber.alternate;\n\n if (alternate !== null) {\n alternate.lanes = mergeLanes(alternate.lanes, renderLanes);\n }\n\n scheduleContextWorkOnParentPath(fiber.return, renderLanes, workInProgress); // Mark the updated lanes on the list, too.\n\n list.lanes = mergeLanes(list.lanes, renderLanes); // Since we already found a match, we can stop traversing the\n // dependency list.\n\n break;\n }\n\n dependency = dependency.next;\n }\n } else if (fiber.tag === ContextProvider) {\n // Don't scan deeper if this is a matching provider\n nextFiber = fiber.type === workInProgress.type ? null : fiber.child;\n } else if (fiber.tag === DehydratedFragment) {\n // If a dehydrated suspense boundary is in this subtree, we don't know\n // if it will have any context consumers in it. The best we can do is\n // mark it as having updates.\n var parentSuspense = fiber.return;\n\n if (parentSuspense === null) {\n throw new Error('We just came from a parent so we must have had a parent. This is a bug in React.');\n }\n\n parentSuspense.lanes = mergeLanes(parentSuspense.lanes, renderLanes);\n var _alternate = parentSuspense.alternate;\n\n if (_alternate !== null) {\n _alternate.lanes = mergeLanes(_alternate.lanes, renderLanes);\n } // This is intentionally passing this fiber as the parent\n // because we want to schedule this fiber as having work\n // on its children. We'll use the childLanes on\n // this fiber to indicate that a context has changed.\n\n\n scheduleContextWorkOnParentPath(parentSuspense, renderLanes, workInProgress);\n nextFiber = fiber.sibling;\n } else {\n // Traverse down.\n nextFiber = fiber.child;\n }\n\n if (nextFiber !== null) {\n // Set the return pointer of the child to the work-in-progress fiber.\n nextFiber.return = fiber;\n } else {\n // No child. Traverse to next sibling.\n nextFiber = fiber;\n\n while (nextFiber !== null) {\n if (nextFiber === workInProgress) {\n // We're back to the root of this subtree. Exit.\n nextFiber = null;\n break;\n }\n\n var sibling = nextFiber.sibling;\n\n if (sibling !== null) {\n // Set the return pointer of the sibling to the work-in-progress fiber.\n sibling.return = nextFiber.return;\n nextFiber = sibling;\n break;\n } // No more siblings. Traverse up.\n\n\n nextFiber = nextFiber.return;\n }\n }\n\n fiber = nextFiber;\n }\n}\nfunction prepareToReadContext(workInProgress, renderLanes) {\n currentlyRenderingFiber = workInProgress;\n lastContextDependency = null;\n lastFullyObservedContext = null;\n var dependencies = workInProgress.dependencies;\n\n if (dependencies !== null) {\n {\n var firstContext = dependencies.firstContext;\n\n if (firstContext !== null) {\n if (includesSomeLane(dependencies.lanes, renderLanes)) {\n // Context list has a pending update. Mark that this fiber performed work.\n markWorkInProgressReceivedUpdate();\n } // Reset the work-in-progress list\n\n\n dependencies.firstContext = null;\n }\n }\n }\n}\nfunction readContext(context) {\n {\n // This warning would fire if you read context inside a Hook like useMemo.\n // Unlike the class check below, it's not enforced in production for perf.\n if (isDisallowedContextReadInDEV) {\n error('Context can only be read while React is rendering. ' + 'In classes, you can read it in the render method or getDerivedStateFromProps. ' + 'In function components, you can read it directly in the function body, but not ' + 'inside Hooks like useReducer() or useMemo().');\n }\n }\n\n var value = context._currentValue ;\n\n if (lastFullyObservedContext === context) ; else {\n var contextItem = {\n context: context,\n memoizedValue: value,\n next: null\n };\n\n if (lastContextDependency === null) {\n if (currentlyRenderingFiber === null) {\n throw new Error('Context can only be read while React is rendering. ' + 'In classes, you can read it in the render method or getDerivedStateFromProps. ' + 'In function components, you can read it directly in the function body, but not ' + 'inside Hooks like useReducer() or useMemo().');\n } // This is the first dependency for this component. Create a new list.\n\n\n lastContextDependency = contextItem;\n currentlyRenderingFiber.dependencies = {\n lanes: NoLanes,\n firstContext: contextItem\n };\n } else {\n // Append a new context item.\n lastContextDependency = lastContextDependency.next = contextItem;\n }\n }\n\n return value;\n}\n\n// render. When this render exits, either because it finishes or because it is\n// interrupted, the interleaved updates will be transferred onto the main part\n// of the queue.\n\nvar concurrentQueues = null;\nfunction pushConcurrentUpdateQueue(queue) {\n if (concurrentQueues === null) {\n concurrentQueues = [queue];\n } else {\n concurrentQueues.push(queue);\n }\n}\nfunction finishQueueingConcurrentUpdates() {\n // Transfer the interleaved updates onto the main queue. Each queue has a\n // `pending` field and an `interleaved` field. When they are not null, they\n // point to the last node in a circular linked list. We need to append the\n // interleaved list to the end of the pending list by joining them into a\n // single, circular list.\n if (concurrentQueues !== null) {\n for (var i = 0; i < concurrentQueues.length; i++) {\n var queue = concurrentQueues[i];\n var lastInterleavedUpdate = queue.interleaved;\n\n if (lastInterleavedUpdate !== null) {\n queue.interleaved = null;\n var firstInterleavedUpdate = lastInterleavedUpdate.next;\n var lastPendingUpdate = queue.pending;\n\n if (lastPendingUpdate !== null) {\n var firstPendingUpdate = lastPendingUpdate.next;\n lastPendingUpdate.next = firstInterleavedUpdate;\n lastInterleavedUpdate.next = firstPendingUpdate;\n }\n\n queue.pending = lastInterleavedUpdate;\n }\n }\n\n concurrentQueues = null;\n }\n}\nfunction enqueueConcurrentHookUpdate(fiber, queue, update, lane) {\n var interleaved = queue.interleaved;\n\n if (interleaved === null) {\n // This is the first update. Create a circular list.\n update.next = update; // At the end of the current render, this queue's interleaved updates will\n // be transferred to the pending queue.\n\n pushConcurrentUpdateQueue(queue);\n } else {\n update.next = interleaved.next;\n interleaved.next = update;\n }\n\n queue.interleaved = update;\n return markUpdateLaneFromFiberToRoot(fiber, lane);\n}\nfunction enqueueConcurrentHookUpdateAndEagerlyBailout(fiber, queue, update, lane) {\n var interleaved = queue.interleaved;\n\n if (interleaved === null) {\n // This is the first update. Create a circular list.\n update.next = update; // At the end of the current render, this queue's interleaved updates will\n // be transferred to the pending queue.\n\n pushConcurrentUpdateQueue(queue);\n } else {\n update.next = interleaved.next;\n interleaved.next = update;\n }\n\n queue.interleaved = update;\n}\nfunction enqueueConcurrentClassUpdate(fiber, queue, update, lane) {\n var interleaved = queue.interleaved;\n\n if (interleaved === null) {\n // This is the first update. Create a circular list.\n update.next = update; // At the end of the current render, this queue's interleaved updates will\n // be transferred to the pending queue.\n\n pushConcurrentUpdateQueue(queue);\n } else {\n update.next = interleaved.next;\n interleaved.next = update;\n }\n\n queue.interleaved = update;\n return markUpdateLaneFromFiberToRoot(fiber, lane);\n}\nfunction enqueueConcurrentRenderForLane(fiber, lane) {\n return markUpdateLaneFromFiberToRoot(fiber, lane);\n} // Calling this function outside this module should only be done for backwards\n// compatibility and should always be accompanied by a warning.\n\nvar unsafe_markUpdateLaneFromFiberToRoot = markUpdateLaneFromFiberToRoot;\n\nfunction markUpdateLaneFromFiberToRoot(sourceFiber, lane) {\n // Update the source fiber's lanes\n sourceFiber.lanes = mergeLanes(sourceFiber.lanes, lane);\n var alternate = sourceFiber.alternate;\n\n if (alternate !== null) {\n alternate.lanes = mergeLanes(alternate.lanes, lane);\n }\n\n {\n if (alternate === null && (sourceFiber.flags & (Placement | Hydrating)) !== NoFlags) {\n warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber);\n }\n } // Walk the parent path to the root and update the child lanes.\n\n\n var node = sourceFiber;\n var parent = sourceFiber.return;\n\n while (parent !== null) {\n parent.childLanes = mergeLanes(parent.childLanes, lane);\n alternate = parent.alternate;\n\n if (alternate !== null) {\n alternate.childLanes = mergeLanes(alternate.childLanes, lane);\n } else {\n {\n if ((parent.flags & (Placement | Hydrating)) !== NoFlags) {\n warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber);\n }\n }\n }\n\n node = parent;\n parent = parent.return;\n }\n\n if (node.tag === HostRoot) {\n var root = node.stateNode;\n return root;\n } else {\n return null;\n }\n}\n\nvar UpdateState = 0;\nvar ReplaceState = 1;\nvar ForceUpdate = 2;\nvar CaptureUpdate = 3; // Global state that is reset at the beginning of calling `processUpdateQueue`.\n// It should only be read right after calling `processUpdateQueue`, via\n// `checkHasForceUpdateAfterProcessing`.\n\nvar hasForceUpdate = false;\nvar didWarnUpdateInsideUpdate;\nvar currentlyProcessingQueue;\n\n{\n didWarnUpdateInsideUpdate = false;\n currentlyProcessingQueue = null;\n}\n\nfunction initializeUpdateQueue(fiber) {\n var queue = {\n baseState: fiber.memoizedState,\n firstBaseUpdate: null,\n lastBaseUpdate: null,\n shared: {\n pending: null,\n interleaved: null,\n lanes: NoLanes\n },\n effects: null\n };\n fiber.updateQueue = queue;\n}\nfunction cloneUpdateQueue(current, workInProgress) {\n // Clone the update queue from current. Unless it's already a clone.\n var queue = workInProgress.updateQueue;\n var currentQueue = current.updateQueue;\n\n if (queue === currentQueue) {\n var clone = {\n baseState: currentQueue.baseState,\n firstBaseUpdate: currentQueue.firstBaseUpdate,\n lastBaseUpdate: currentQueue.lastBaseUpdate,\n shared: currentQueue.shared,\n effects: currentQueue.effects\n };\n workInProgress.updateQueue = clone;\n }\n}\nfunction createUpdate(eventTime, lane) {\n var update = {\n eventTime: eventTime,\n lane: lane,\n tag: UpdateState,\n payload: null,\n callback: null,\n next: null\n };\n return update;\n}\nfunction enqueueUpdate(fiber, update, lane) {\n var updateQueue = fiber.updateQueue;\n\n if (updateQueue === null) {\n // Only occurs if the fiber has been unmounted.\n return null;\n }\n\n var sharedQueue = updateQueue.shared;\n\n {\n if (currentlyProcessingQueue === sharedQueue && !didWarnUpdateInsideUpdate) {\n error('An update (setState, replaceState, or forceUpdate) was scheduled ' + 'from inside an update function. Update functions should be pure, ' + 'with zero side-effects. Consider using componentDidUpdate or a ' + 'callback.');\n\n didWarnUpdateInsideUpdate = true;\n }\n }\n\n if (isUnsafeClassRenderPhaseUpdate()) {\n // This is an unsafe render phase update. Add directly to the update\n // queue so we can process it immediately during the current render.\n var pending = sharedQueue.pending;\n\n if (pending === null) {\n // This is the first update. Create a circular list.\n update.next = update;\n } else {\n update.next = pending.next;\n pending.next = update;\n }\n\n sharedQueue.pending = update; // Update the childLanes even though we're most likely already rendering\n // this fiber. This is for backwards compatibility in the case where you\n // update a different component during render phase than the one that is\n // currently renderings (a pattern that is accompanied by a warning).\n\n return unsafe_markUpdateLaneFromFiberToRoot(fiber, lane);\n } else {\n return enqueueConcurrentClassUpdate(fiber, sharedQueue, update, lane);\n }\n}\nfunction entangleTransitions(root, fiber, lane) {\n var updateQueue = fiber.updateQueue;\n\n if (updateQueue === null) {\n // Only occurs if the fiber has been unmounted.\n return;\n }\n\n var sharedQueue = updateQueue.shared;\n\n if (isTransitionLane(lane)) {\n var queueLanes = sharedQueue.lanes; // If any entangled lanes are no longer pending on the root, then they must\n // have finished. We can remove them from the shared queue, which represents\n // a superset of the actually pending lanes. In some cases we may entangle\n // more than we need to, but that's OK. In fact it's worse if we *don't*\n // entangle when we should.\n\n queueLanes = intersectLanes(queueLanes, root.pendingLanes); // Entangle the new transition lane with the other transition lanes.\n\n var newQueueLanes = mergeLanes(queueLanes, lane);\n sharedQueue.lanes = newQueueLanes; // Even if queue.lanes already include lane, we don't know for certain if\n // the lane finished since the last time we entangled it. So we need to\n // entangle it again, just to be sure.\n\n markRootEntangled(root, newQueueLanes);\n }\n}\nfunction enqueueCapturedUpdate(workInProgress, capturedUpdate) {\n // Captured updates are updates that are thrown by a child during the render\n // phase. They should be discarded if the render is aborted. Therefore,\n // we should only put them on the work-in-progress queue, not the current one.\n var queue = workInProgress.updateQueue; // Check if the work-in-progress queue is a clone.\n\n var current = workInProgress.alternate;\n\n if (current !== null) {\n var currentQueue = current.updateQueue;\n\n if (queue === currentQueue) {\n // The work-in-progress queue is the same as current. This happens when\n // we bail out on a parent fiber that then captures an error thrown by\n // a child. Since we want to append the update only to the work-in\n // -progress queue, we need to clone the updates. We usually clone during\n // processUpdateQueue, but that didn't happen in this case because we\n // skipped over the parent when we bailed out.\n var newFirst = null;\n var newLast = null;\n var firstBaseUpdate = queue.firstBaseUpdate;\n\n if (firstBaseUpdate !== null) {\n // Loop through the updates and clone them.\n var update = firstBaseUpdate;\n\n do {\n var clone = {\n eventTime: update.eventTime,\n lane: update.lane,\n tag: update.tag,\n payload: update.payload,\n callback: update.callback,\n next: null\n };\n\n if (newLast === null) {\n newFirst = newLast = clone;\n } else {\n newLast.next = clone;\n newLast = clone;\n }\n\n update = update.next;\n } while (update !== null); // Append the captured update the end of the cloned list.\n\n\n if (newLast === null) {\n newFirst = newLast = capturedUpdate;\n } else {\n newLast.next = capturedUpdate;\n newLast = capturedUpdate;\n }\n } else {\n // There are no base updates.\n newFirst = newLast = capturedUpdate;\n }\n\n queue = {\n baseState: currentQueue.baseState,\n firstBaseUpdate: newFirst,\n lastBaseUpdate: newLast,\n shared: currentQueue.shared,\n effects: currentQueue.effects\n };\n workInProgress.updateQueue = queue;\n return;\n }\n } // Append the update to the end of the list.\n\n\n var lastBaseUpdate = queue.lastBaseUpdate;\n\n if (lastBaseUpdate === null) {\n queue.firstBaseUpdate = capturedUpdate;\n } else {\n lastBaseUpdate.next = capturedUpdate;\n }\n\n queue.lastBaseUpdate = capturedUpdate;\n}\n\nfunction getStateFromUpdate(workInProgress, queue, update, prevState, nextProps, instance) {\n switch (update.tag) {\n case ReplaceState:\n {\n var payload = update.payload;\n\n if (typeof payload === 'function') {\n // Updater function\n {\n enterDisallowedContextReadInDEV();\n }\n\n var nextState = payload.call(instance, prevState, nextProps);\n\n {\n if ( workInProgress.mode & StrictLegacyMode) {\n setIsStrictModeForDevtools(true);\n\n try {\n payload.call(instance, prevState, nextProps);\n } finally {\n setIsStrictModeForDevtools(false);\n }\n }\n\n exitDisallowedContextReadInDEV();\n }\n\n return nextState;\n } // State object\n\n\n return payload;\n }\n\n case CaptureUpdate:\n {\n workInProgress.flags = workInProgress.flags & ~ShouldCapture | DidCapture;\n }\n // Intentional fallthrough\n\n case UpdateState:\n {\n var _payload = update.payload;\n var partialState;\n\n if (typeof _payload === 'function') {\n // Updater function\n {\n enterDisallowedContextReadInDEV();\n }\n\n partialState = _payload.call(instance, prevState, nextProps);\n\n {\n if ( workInProgress.mode & StrictLegacyMode) {\n setIsStrictModeForDevtools(true);\n\n try {\n _payload.call(instance, prevState, nextProps);\n } finally {\n setIsStrictModeForDevtools(false);\n }\n }\n\n exitDisallowedContextReadInDEV();\n }\n } else {\n // Partial state object\n partialState = _payload;\n }\n\n if (partialState === null || partialState === undefined) {\n // Null and undefined are treated as no-ops.\n return prevState;\n } // Merge the partial state and the previous state.\n\n\n return assign({}, prevState, partialState);\n }\n\n case ForceUpdate:\n {\n hasForceUpdate = true;\n return prevState;\n }\n }\n\n return prevState;\n}\n\nfunction processUpdateQueue(workInProgress, props, instance, renderLanes) {\n // This is always non-null on a ClassComponent or HostRoot\n var queue = workInProgress.updateQueue;\n hasForceUpdate = false;\n\n {\n currentlyProcessingQueue = queue.shared;\n }\n\n var firstBaseUpdate = queue.firstBaseUpdate;\n var lastBaseUpdate = queue.lastBaseUpdate; // Check if there are pending updates. If so, transfer them to the base queue.\n\n var pendingQueue = queue.shared.pending;\n\n if (pendingQueue !== null) {\n queue.shared.pending = null; // The pending queue is circular. Disconnect the pointer between first\n // and last so that it's non-circular.\n\n var lastPendingUpdate = pendingQueue;\n var firstPendingUpdate = lastPendingUpdate.next;\n lastPendingUpdate.next = null; // Append pending updates to base queue\n\n if (lastBaseUpdate === null) {\n firstBaseUpdate = firstPendingUpdate;\n } else {\n lastBaseUpdate.next = firstPendingUpdate;\n }\n\n lastBaseUpdate = lastPendingUpdate; // If there's a current queue, and it's different from the base queue, then\n // we need to transfer the updates to that queue, too. Because the base\n // queue is a singly-linked list with no cycles, we can append to both\n // lists and take advantage of structural sharing.\n // TODO: Pass `current` as argument\n\n var current = workInProgress.alternate;\n\n if (current !== null) {\n // This is always non-null on a ClassComponent or HostRoot\n var currentQueue = current.updateQueue;\n var currentLastBaseUpdate = currentQueue.lastBaseUpdate;\n\n if (currentLastBaseUpdate !== lastBaseUpdate) {\n if (currentLastBaseUpdate === null) {\n currentQueue.firstBaseUpdate = firstPendingUpdate;\n } else {\n currentLastBaseUpdate.next = firstPendingUpdate;\n }\n\n currentQueue.lastBaseUpdate = lastPendingUpdate;\n }\n }\n } // These values may change as we process the queue.\n\n\n if (firstBaseUpdate !== null) {\n // Iterate through the list of updates to compute the result.\n var newState = queue.baseState; // TODO: Don't need to accumulate this. Instead, we can remove renderLanes\n // from the original lanes.\n\n var newLanes = NoLanes;\n var newBaseState = null;\n var newFirstBaseUpdate = null;\n var newLastBaseUpdate = null;\n var update = firstBaseUpdate;\n\n do {\n var updateLane = update.lane;\n var updateEventTime = update.eventTime;\n\n if (!isSubsetOfLanes(renderLanes, updateLane)) {\n // Priority is insufficient. Skip this update. If this is the first\n // skipped update, the previous update/state is the new base\n // update/state.\n var clone = {\n eventTime: updateEventTime,\n lane: updateLane,\n tag: update.tag,\n payload: update.payload,\n callback: update.callback,\n next: null\n };\n\n if (newLastBaseUpdate === null) {\n newFirstBaseUpdate = newLastBaseUpdate = clone;\n newBaseState = newState;\n } else {\n newLastBaseUpdate = newLastBaseUpdate.next = clone;\n } // Update the remaining priority in the queue.\n\n\n newLanes = mergeLanes(newLanes, updateLane);\n } else {\n // This update does have sufficient priority.\n if (newLastBaseUpdate !== null) {\n var _clone = {\n eventTime: updateEventTime,\n // This update is going to be committed so we never want uncommit\n // it. Using NoLane works because 0 is a subset of all bitmasks, so\n // this will never be skipped by the check above.\n lane: NoLane,\n tag: update.tag,\n payload: update.payload,\n callback: update.callback,\n next: null\n };\n newLastBaseUpdate = newLastBaseUpdate.next = _clone;\n } // Process this update.\n\n\n newState = getStateFromUpdate(workInProgress, queue, update, newState, props, instance);\n var callback = update.callback;\n\n if (callback !== null && // If the update was already committed, we should not queue its\n // callback again.\n update.lane !== NoLane) {\n workInProgress.flags |= Callback;\n var effects = queue.effects;\n\n if (effects === null) {\n queue.effects = [update];\n } else {\n effects.push(update);\n }\n }\n }\n\n update = update.next;\n\n if (update === null) {\n pendingQueue = queue.shared.pending;\n\n if (pendingQueue === null) {\n break;\n } else {\n // An update was scheduled from inside a reducer. Add the new\n // pending updates to the end of the list and keep processing.\n var _lastPendingUpdate = pendingQueue; // Intentionally unsound. Pending updates form a circular list, but we\n // unravel them when transferring them to the base queue.\n\n var _firstPendingUpdate = _lastPendingUpdate.next;\n _lastPendingUpdate.next = null;\n update = _firstPendingUpdate;\n queue.lastBaseUpdate = _lastPendingUpdate;\n queue.shared.pending = null;\n }\n }\n } while (true);\n\n if (newLastBaseUpdate === null) {\n newBaseState = newState;\n }\n\n queue.baseState = newBaseState;\n queue.firstBaseUpdate = newFirstBaseUpdate;\n queue.lastBaseUpdate = newLastBaseUpdate; // Interleaved updates are stored on a separate queue. We aren't going to\n // process them during this render, but we do need to track which lanes\n // are remaining.\n\n var lastInterleaved = queue.shared.interleaved;\n\n if (lastInterleaved !== null) {\n var interleaved = lastInterleaved;\n\n do {\n newLanes = mergeLanes(newLanes, interleaved.lane);\n interleaved = interleaved.next;\n } while (interleaved !== lastInterleaved);\n } else if (firstBaseUpdate === null) {\n // `queue.lanes` is used for entangling transitions. We can set it back to\n // zero once the queue is empty.\n queue.shared.lanes = NoLanes;\n } // Set the remaining expiration time to be whatever is remaining in the queue.\n // This should be fine because the only two other things that contribute to\n // expiration time are props and context. We're already in the middle of the\n // begin phase by the time we start processing the queue, so we've already\n // dealt with the props. Context in components that specify\n // shouldComponentUpdate is tricky; but we'll have to account for\n // that regardless.\n\n\n markSkippedUpdateLanes(newLanes);\n workInProgress.lanes = newLanes;\n workInProgress.memoizedState = newState;\n }\n\n {\n currentlyProcessingQueue = null;\n }\n}\n\nfunction callCallback(callback, context) {\n if (typeof callback !== 'function') {\n throw new Error('Invalid argument passed as callback. Expected a function. Instead ' + (\"received: \" + callback));\n }\n\n callback.call(context);\n}\n\nfunction resetHasForceUpdateBeforeProcessing() {\n hasForceUpdate = false;\n}\nfunction checkHasForceUpdateAfterProcessing() {\n return hasForceUpdate;\n}\nfunction commitUpdateQueue(finishedWork, finishedQueue, instance) {\n // Commit the effects\n var effects = finishedQueue.effects;\n finishedQueue.effects = null;\n\n if (effects !== null) {\n for (var i = 0; i < effects.length; i++) {\n var effect = effects[i];\n var callback = effect.callback;\n\n if (callback !== null) {\n effect.callback = null;\n callCallback(callback, instance);\n }\n }\n }\n}\n\nvar NO_CONTEXT = {};\nvar contextStackCursor$1 = createCursor(NO_CONTEXT);\nvar contextFiberStackCursor = createCursor(NO_CONTEXT);\nvar rootInstanceStackCursor = createCursor(NO_CONTEXT);\n\nfunction requiredContext(c) {\n if (c === NO_CONTEXT) {\n throw new Error('Expected host context to exist. This error is likely caused by a bug ' + 'in React. Please file an issue.');\n }\n\n return c;\n}\n\nfunction getRootHostContainer() {\n var rootInstance = requiredContext(rootInstanceStackCursor.current);\n return rootInstance;\n}\n\nfunction pushHostContainer(fiber, nextRootInstance) {\n // Push current root instance onto the stack;\n // This allows us to reset root when portals are popped.\n push(rootInstanceStackCursor, nextRootInstance, fiber); // Track the context and the Fiber that provided it.\n // This enables us to pop only Fibers that provide unique contexts.\n\n push(contextFiberStackCursor, fiber, fiber); // Finally, we need to push the host context to the stack.\n // However, we can't just call getRootHostContext() and push it because\n // we'd have a different number of entries on the stack depending on\n // whether getRootHostContext() throws somewhere in renderer code or not.\n // So we push an empty value first. This lets us safely unwind on errors.\n\n push(contextStackCursor$1, NO_CONTEXT, fiber);\n var nextRootContext = getRootHostContext(nextRootInstance); // Now that we know this function doesn't throw, replace it.\n\n pop(contextStackCursor$1, fiber);\n push(contextStackCursor$1, nextRootContext, fiber);\n}\n\nfunction popHostContainer(fiber) {\n pop(contextStackCursor$1, fiber);\n pop(contextFiberStackCursor, fiber);\n pop(rootInstanceStackCursor, fiber);\n}\n\nfunction getHostContext() {\n var context = requiredContext(contextStackCursor$1.current);\n return context;\n}\n\nfunction pushHostContext(fiber) {\n var rootInstance = requiredContext(rootInstanceStackCursor.current);\n var context = requiredContext(contextStackCursor$1.current);\n var nextContext = getChildHostContext(context, fiber.type); // Don't push this Fiber's context unless it's unique.\n\n if (context === nextContext) {\n return;\n } // Track the context and the Fiber that provided it.\n // This enables us to pop only Fibers that provide unique contexts.\n\n\n push(contextFiberStackCursor, fiber, fiber);\n push(contextStackCursor$1, nextContext, fiber);\n}\n\nfunction popHostContext(fiber) {\n // Do not pop unless this Fiber provided the current context.\n // pushHostContext() only pushes Fibers that provide unique contexts.\n if (contextFiberStackCursor.current !== fiber) {\n return;\n }\n\n pop(contextStackCursor$1, fiber);\n pop(contextFiberStackCursor, fiber);\n}\n\nvar DefaultSuspenseContext = 0; // The Suspense Context is split into two parts. The lower bits is\n// inherited deeply down the subtree. The upper bits only affect\n// this immediate suspense boundary and gets reset each new\n// boundary or suspense list.\n\nvar SubtreeSuspenseContextMask = 1; // Subtree Flags:\n// InvisibleParentSuspenseContext indicates that one of our parent Suspense\n// boundaries is not currently showing visible main content.\n// Either because it is already showing a fallback or is not mounted at all.\n// We can use this to determine if it is desirable to trigger a fallback at\n// the parent. If not, then we might need to trigger undesirable boundaries\n// and/or suspend the commit to avoid hiding the parent content.\n\nvar InvisibleParentSuspenseContext = 1; // Shallow Flags:\n// ForceSuspenseFallback can be used by SuspenseList to force newly added\n// items into their fallback state during one of the render passes.\n\nvar ForceSuspenseFallback = 2;\nvar suspenseStackCursor = createCursor(DefaultSuspenseContext);\nfunction hasSuspenseContext(parentContext, flag) {\n return (parentContext & flag) !== 0;\n}\nfunction setDefaultShallowSuspenseContext(parentContext) {\n return parentContext & SubtreeSuspenseContextMask;\n}\nfunction setShallowSuspenseContext(parentContext, shallowContext) {\n return parentContext & SubtreeSuspenseContextMask | shallowContext;\n}\nfunction addSubtreeSuspenseContext(parentContext, subtreeContext) {\n return parentContext | subtreeContext;\n}\nfunction pushSuspenseContext(fiber, newContext) {\n push(suspenseStackCursor, newContext, fiber);\n}\nfunction popSuspenseContext(fiber) {\n pop(suspenseStackCursor, fiber);\n}\n\nfunction shouldCaptureSuspense(workInProgress, hasInvisibleParent) {\n // If it was the primary children that just suspended, capture and render the\n // fallback. Otherwise, don't capture and bubble to the next boundary.\n var nextState = workInProgress.memoizedState;\n\n if (nextState !== null) {\n if (nextState.dehydrated !== null) {\n // A dehydrated boundary always captures.\n return true;\n }\n\n return false;\n }\n\n var props = workInProgress.memoizedProps; // Regular boundaries always capture.\n\n {\n return true;\n } // If it's a boundary we should avoid, then we prefer to bubble up to the\n}\nfunction findFirstSuspended(row) {\n var node = row;\n\n while (node !== null) {\n if (node.tag === SuspenseComponent) {\n var state = node.memoizedState;\n\n if (state !== null) {\n var dehydrated = state.dehydrated;\n\n if (dehydrated === null || isSuspenseInstancePending(dehydrated) || isSuspenseInstanceFallback(dehydrated)) {\n return node;\n }\n }\n } else if (node.tag === SuspenseListComponent && // revealOrder undefined can't be trusted because it don't\n // keep track of whether it suspended or not.\n node.memoizedProps.revealOrder !== undefined) {\n var didSuspend = (node.flags & DidCapture) !== NoFlags;\n\n if (didSuspend) {\n return node;\n }\n } else if (node.child !== null) {\n node.child.return = node;\n node = node.child;\n continue;\n }\n\n if (node === row) {\n return null;\n }\n\n while (node.sibling === null) {\n if (node.return === null || node.return === row) {\n return null;\n }\n\n node = node.return;\n }\n\n node.sibling.return = node.return;\n node = node.sibling;\n }\n\n return null;\n}\n\nvar NoFlags$1 =\n/* */\n0; // Represents whether effect should fire.\n\nvar HasEffect =\n/* */\n1; // Represents the phase in which the effect (not the clean-up) fires.\n\nvar Insertion =\n/* */\n2;\nvar Layout =\n/* */\n4;\nvar Passive$1 =\n/* */\n8;\n\n// and should be reset before starting a new render.\n// This tracks which mutable sources need to be reset after a render.\n\nvar workInProgressSources = [];\nfunction resetWorkInProgressVersions() {\n for (var i = 0; i < workInProgressSources.length; i++) {\n var mutableSource = workInProgressSources[i];\n\n {\n mutableSource._workInProgressVersionPrimary = null;\n }\n }\n\n workInProgressSources.length = 0;\n}\n// This ensures that the version used for server rendering matches the one\n// that is eventually read during hydration.\n// If they don't match there's a potential tear and a full deopt render is required.\n\nfunction registerMutableSourceForHydration(root, mutableSource) {\n var getVersion = mutableSource._getVersion;\n var version = getVersion(mutableSource._source); // TODO Clear this data once all pending hydration work is finished.\n // Retaining it forever may interfere with GC.\n\n if (root.mutableSourceEagerHydrationData == null) {\n root.mutableSourceEagerHydrationData = [mutableSource, version];\n } else {\n root.mutableSourceEagerHydrationData.push(mutableSource, version);\n }\n}\n\nvar ReactCurrentDispatcher$1 = ReactSharedInternals.ReactCurrentDispatcher,\n ReactCurrentBatchConfig$2 = ReactSharedInternals.ReactCurrentBatchConfig;\nvar didWarnAboutMismatchedHooksForComponent;\nvar didWarnUncachedGetSnapshot;\n\n{\n didWarnAboutMismatchedHooksForComponent = new Set();\n}\n\n// These are set right before calling the component.\nvar renderLanes = NoLanes; // The work-in-progress fiber. I've named it differently to distinguish it from\n// the work-in-progress hook.\n\nvar currentlyRenderingFiber$1 = null; // Hooks are stored as a linked list on the fiber's memoizedState field. The\n// current hook list is the list that belongs to the current fiber. The\n// work-in-progress hook list is a new list that will be added to the\n// work-in-progress fiber.\n\nvar currentHook = null;\nvar workInProgressHook = null; // Whether an update was scheduled at any point during the render phase. This\n// does not get reset if we do another render pass; only when we're completely\n// finished evaluating this component. This is an optimization so we know\n// whether we need to clear render phase updates after a throw.\n\nvar didScheduleRenderPhaseUpdate = false; // Where an update was scheduled only during the current render pass. This\n// gets reset after each attempt.\n// TODO: Maybe there's some way to consolidate this with\n// `didScheduleRenderPhaseUpdate`. Or with `numberOfReRenders`.\n\nvar didScheduleRenderPhaseUpdateDuringThisPass = false; // Counts the number of useId hooks in this component.\n\nvar localIdCounter = 0; // Used for ids that are generated completely client-side (i.e. not during\n// hydration). This counter is global, so client ids are not stable across\n// render attempts.\n\nvar globalClientIdCounter = 0;\nvar RE_RENDER_LIMIT = 25; // In DEV, this is the name of the currently executing primitive hook\n\nvar currentHookNameInDev = null; // In DEV, this list ensures that hooks are called in the same order between renders.\n// The list stores the order of hooks used during the initial render (mount).\n// Subsequent renders (updates) reference this list.\n\nvar hookTypesDev = null;\nvar hookTypesUpdateIndexDev = -1; // In DEV, this tracks whether currently rendering component needs to ignore\n// the dependencies for Hooks that need them (e.g. useEffect or useMemo).\n// When true, such Hooks will always be \"remounted\". Only used during hot reload.\n\nvar ignorePreviousDependencies = false;\n\nfunction mountHookTypesDev() {\n {\n var hookName = currentHookNameInDev;\n\n if (hookTypesDev === null) {\n hookTypesDev = [hookName];\n } else {\n hookTypesDev.push(hookName);\n }\n }\n}\n\nfunction updateHookTypesDev() {\n {\n var hookName = currentHookNameInDev;\n\n if (hookTypesDev !== null) {\n hookTypesUpdateIndexDev++;\n\n if (hookTypesDev[hookTypesUpdateIndexDev] !== hookName) {\n warnOnHookMismatchInDev(hookName);\n }\n }\n }\n}\n\nfunction checkDepsAreArrayDev(deps) {\n {\n if (deps !== undefined && deps !== null && !isArray(deps)) {\n // Verify deps, but only on mount to avoid extra checks.\n // It's unlikely their type would change as usually you define them inline.\n error('%s received a final argument that is not an array (instead, received `%s`). When ' + 'specified, the final argument must be an array.', currentHookNameInDev, typeof deps);\n }\n }\n}\n\nfunction warnOnHookMismatchInDev(currentHookName) {\n {\n var componentName = getComponentNameFromFiber(currentlyRenderingFiber$1);\n\n if (!didWarnAboutMismatchedHooksForComponent.has(componentName)) {\n didWarnAboutMismatchedHooksForComponent.add(componentName);\n\n if (hookTypesDev !== null) {\n var table = '';\n var secondColumnStart = 30;\n\n for (var i = 0; i <= hookTypesUpdateIndexDev; i++) {\n var oldHookName = hookTypesDev[i];\n var newHookName = i === hookTypesUpdateIndexDev ? currentHookName : oldHookName;\n var row = i + 1 + \". \" + oldHookName; // Extra space so second column lines up\n // lol @ IE not supporting String#repeat\n\n while (row.length < secondColumnStart) {\n row += ' ';\n }\n\n row += newHookName + '\\n';\n table += row;\n }\n\n error('React has detected a change in the order of Hooks called by %s. ' + 'This will lead to bugs and errors if not fixed. ' + 'For more information, read the Rules of Hooks: https://reactjs.org/link/rules-of-hooks\\n\\n' + ' Previous render Next render\\n' + ' ------------------------------------------------------\\n' + '%s' + ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\\n', componentName, table);\n }\n }\n }\n}\n\nfunction throwInvalidHookError() {\n throw new Error('Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for' + ' one of the following reasons:\\n' + '1. You might have mismatching versions of React and the renderer (such as React DOM)\\n' + '2. You might be breaking the Rules of Hooks\\n' + '3. You might have more than one copy of React in the same app\\n' + 'See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.');\n}\n\nfunction areHookInputsEqual(nextDeps, prevDeps) {\n {\n if (ignorePreviousDependencies) {\n // Only true when this component is being hot reloaded.\n return false;\n }\n }\n\n if (prevDeps === null) {\n {\n error('%s received a final argument during this render, but not during ' + 'the previous render. Even though the final argument is optional, ' + 'its type cannot change between renders.', currentHookNameInDev);\n }\n\n return false;\n }\n\n {\n // Don't bother comparing lengths in prod because these arrays should be\n // passed inline.\n if (nextDeps.length !== prevDeps.length) {\n error('The final argument passed to %s changed size between renders. The ' + 'order and size of this array must remain constant.\\n\\n' + 'Previous: %s\\n' + 'Incoming: %s', currentHookNameInDev, \"[\" + prevDeps.join(', ') + \"]\", \"[\" + nextDeps.join(', ') + \"]\");\n }\n }\n\n for (var i = 0; i < prevDeps.length && i < nextDeps.length; i++) {\n if (objectIs(nextDeps[i], prevDeps[i])) {\n continue;\n }\n\n return false;\n }\n\n return true;\n}\n\nfunction renderWithHooks(current, workInProgress, Component, props, secondArg, nextRenderLanes) {\n renderLanes = nextRenderLanes;\n currentlyRenderingFiber$1 = workInProgress;\n\n {\n hookTypesDev = current !== null ? current._debugHookTypes : null;\n hookTypesUpdateIndexDev = -1; // Used for hot reloading:\n\n ignorePreviousDependencies = current !== null && current.type !== workInProgress.type;\n }\n\n workInProgress.memoizedState = null;\n workInProgress.updateQueue = null;\n workInProgress.lanes = NoLanes; // The following should have already been reset\n // currentHook = null;\n // workInProgressHook = null;\n // didScheduleRenderPhaseUpdate = false;\n // localIdCounter = 0;\n // TODO Warn if no hooks are used at all during mount, then some are used during update.\n // Currently we will identify the update render as a mount because memoizedState === null.\n // This is tricky because it's valid for certain types of components (e.g. React.lazy)\n // Using memoizedState to differentiate between mount/update only works if at least one stateful hook is used.\n // Non-stateful hooks (e.g. context) don't get added to memoizedState,\n // so memoizedState would be null during updates and mounts.\n\n {\n if (current !== null && current.memoizedState !== null) {\n ReactCurrentDispatcher$1.current = HooksDispatcherOnUpdateInDEV;\n } else if (hookTypesDev !== null) {\n // This dispatcher handles an edge case where a component is updating,\n // but no stateful hooks have been used.\n // We want to match the production code behavior (which will use HooksDispatcherOnMount),\n // but with the extra DEV validation to ensure hooks ordering hasn't changed.\n // This dispatcher does that.\n ReactCurrentDispatcher$1.current = HooksDispatcherOnMountWithHookTypesInDEV;\n } else {\n ReactCurrentDispatcher$1.current = HooksDispatcherOnMountInDEV;\n }\n }\n\n var children = Component(props, secondArg); // Check if there was a render phase update\n\n if (didScheduleRenderPhaseUpdateDuringThisPass) {\n // Keep rendering in a loop for as long as render phase updates continue to\n // be scheduled. Use a counter to prevent infinite loops.\n var numberOfReRenders = 0;\n\n do {\n didScheduleRenderPhaseUpdateDuringThisPass = false;\n localIdCounter = 0;\n\n if (numberOfReRenders >= RE_RENDER_LIMIT) {\n throw new Error('Too many re-renders. React limits the number of renders to prevent ' + 'an infinite loop.');\n }\n\n numberOfReRenders += 1;\n\n {\n // Even when hot reloading, allow dependencies to stabilize\n // after first render to prevent infinite render phase updates.\n ignorePreviousDependencies = false;\n } // Start over from the beginning of the list\n\n\n currentHook = null;\n workInProgressHook = null;\n workInProgress.updateQueue = null;\n\n {\n // Also validate hook order for cascading updates.\n hookTypesUpdateIndexDev = -1;\n }\n\n ReactCurrentDispatcher$1.current = HooksDispatcherOnRerenderInDEV ;\n children = Component(props, secondArg);\n } while (didScheduleRenderPhaseUpdateDuringThisPass);\n } // We can assume the previous dispatcher is always this one, since we set it\n // at the beginning of the render phase and there's no re-entrance.\n\n\n ReactCurrentDispatcher$1.current = ContextOnlyDispatcher;\n\n {\n workInProgress._debugHookTypes = hookTypesDev;\n } // This check uses currentHook so that it works the same in DEV and prod bundles.\n // hookTypesDev could catch more cases (e.g. context) but only in DEV bundles.\n\n\n var didRenderTooFewHooks = currentHook !== null && currentHook.next !== null;\n renderLanes = NoLanes;\n currentlyRenderingFiber$1 = null;\n currentHook = null;\n workInProgressHook = null;\n\n {\n currentHookNameInDev = null;\n hookTypesDev = null;\n hookTypesUpdateIndexDev = -1; // Confirm that a static flag was not added or removed since the last\n // render. If this fires, it suggests that we incorrectly reset the static\n // flags in some other part of the codebase. This has happened before, for\n // example, in the SuspenseList implementation.\n\n if (current !== null && (current.flags & StaticMask) !== (workInProgress.flags & StaticMask) && // Disable this warning in legacy mode, because legacy Suspense is weird\n // and creates false positives. To make this work in legacy mode, we'd\n // need to mark fibers that commit in an incomplete state, somehow. For\n // now I'll disable the warning that most of the bugs that would trigger\n // it are either exclusive to concurrent mode or exist in both.\n (current.mode & ConcurrentMode) !== NoMode) {\n error('Internal React error: Expected static flag was missing. Please ' + 'notify the React team.');\n }\n }\n\n didScheduleRenderPhaseUpdate = false; // This is reset by checkDidRenderIdHook\n // localIdCounter = 0;\n\n if (didRenderTooFewHooks) {\n throw new Error('Rendered fewer hooks than expected. This may be caused by an accidental ' + 'early return statement.');\n }\n\n return children;\n}\nfunction checkDidRenderIdHook() {\n // This should be called immediately after every renderWithHooks call.\n // Conceptually, it's part of the return value of renderWithHooks; it's only a\n // separate function to avoid using an array tuple.\n var didRenderIdHook = localIdCounter !== 0;\n localIdCounter = 0;\n return didRenderIdHook;\n}\nfunction bailoutHooks(current, workInProgress, lanes) {\n workInProgress.updateQueue = current.updateQueue; // TODO: Don't need to reset the flags here, because they're reset in the\n // complete phase (bubbleProperties).\n\n if ( (workInProgress.mode & StrictEffectsMode) !== NoMode) {\n workInProgress.flags &= ~(MountPassiveDev | MountLayoutDev | Passive | Update);\n } else {\n workInProgress.flags &= ~(Passive | Update);\n }\n\n current.lanes = removeLanes(current.lanes, lanes);\n}\nfunction resetHooksAfterThrow() {\n // We can assume the previous dispatcher is always this one, since we set it\n // at the beginning of the render phase and there's no re-entrance.\n ReactCurrentDispatcher$1.current = ContextOnlyDispatcher;\n\n if (didScheduleRenderPhaseUpdate) {\n // There were render phase updates. These are only valid for this render\n // phase, which we are now aborting. Remove the updates from the queues so\n // they do not persist to the next render. Do not remove updates from hooks\n // that weren't processed.\n //\n // Only reset the updates from the queue if it has a clone. If it does\n // not have a clone, that means it wasn't processed, and the updates were\n // scheduled before we entered the render phase.\n var hook = currentlyRenderingFiber$1.memoizedState;\n\n while (hook !== null) {\n var queue = hook.queue;\n\n if (queue !== null) {\n queue.pending = null;\n }\n\n hook = hook.next;\n }\n\n didScheduleRenderPhaseUpdate = false;\n }\n\n renderLanes = NoLanes;\n currentlyRenderingFiber$1 = null;\n currentHook = null;\n workInProgressHook = null;\n\n {\n hookTypesDev = null;\n hookTypesUpdateIndexDev = -1;\n currentHookNameInDev = null;\n isUpdatingOpaqueValueInRenderPhase = false;\n }\n\n didScheduleRenderPhaseUpdateDuringThisPass = false;\n localIdCounter = 0;\n}\n\nfunction mountWorkInProgressHook() {\n var hook = {\n memoizedState: null,\n baseState: null,\n baseQueue: null,\n queue: null,\n next: null\n };\n\n if (workInProgressHook === null) {\n // This is the first hook in the list\n currentlyRenderingFiber$1.memoizedState = workInProgressHook = hook;\n } else {\n // Append to the end of the list\n workInProgressHook = workInProgressHook.next = hook;\n }\n\n return workInProgressHook;\n}\n\nfunction updateWorkInProgressHook() {\n // This function is used both for updates and for re-renders triggered by a\n // render phase update. It assumes there is either a current hook we can\n // clone, or a work-in-progress hook from a previous render pass that we can\n // use as a base. When we reach the end of the base list, we must switch to\n // the dispatcher used for mounts.\n var nextCurrentHook;\n\n if (currentHook === null) {\n var current = currentlyRenderingFiber$1.alternate;\n\n if (current !== null) {\n nextCurrentHook = current.memoizedState;\n } else {\n nextCurrentHook = null;\n }\n } else {\n nextCurrentHook = currentHook.next;\n }\n\n var nextWorkInProgressHook;\n\n if (workInProgressHook === null) {\n nextWorkInProgressHook = currentlyRenderingFiber$1.memoizedState;\n } else {\n nextWorkInProgressHook = workInProgressHook.next;\n }\n\n if (nextWorkInProgressHook !== null) {\n // There's already a work-in-progress. Reuse it.\n workInProgressHook = nextWorkInProgressHook;\n nextWorkInProgressHook = workInProgressHook.next;\n currentHook = nextCurrentHook;\n } else {\n // Clone from the current hook.\n if (nextCurrentHook === null) {\n throw new Error('Rendered more hooks than during the previous render.');\n }\n\n currentHook = nextCurrentHook;\n var newHook = {\n memoizedState: currentHook.memoizedState,\n baseState: currentHook.baseState,\n baseQueue: currentHook.baseQueue,\n queue: currentHook.queue,\n next: null\n };\n\n if (workInProgressHook === null) {\n // This is the first hook in the list.\n currentlyRenderingFiber$1.memoizedState = workInProgressHook = newHook;\n } else {\n // Append to the end of the list.\n workInProgressHook = workInProgressHook.next = newHook;\n }\n }\n\n return workInProgressHook;\n}\n\nfunction createFunctionComponentUpdateQueue() {\n return {\n lastEffect: null,\n stores: null\n };\n}\n\nfunction basicStateReducer(state, action) {\n // $FlowFixMe: Flow doesn't like mixed types\n return typeof action === 'function' ? action(state) : action;\n}\n\nfunction mountReducer(reducer, initialArg, init) {\n var hook = mountWorkInProgressHook();\n var initialState;\n\n if (init !== undefined) {\n initialState = init(initialArg);\n } else {\n initialState = initialArg;\n }\n\n hook.memoizedState = hook.baseState = initialState;\n var queue = {\n pending: null,\n interleaved: null,\n lanes: NoLanes,\n dispatch: null,\n lastRenderedReducer: reducer,\n lastRenderedState: initialState\n };\n hook.queue = queue;\n var dispatch = queue.dispatch = dispatchReducerAction.bind(null, currentlyRenderingFiber$1, queue);\n return [hook.memoizedState, dispatch];\n}\n\nfunction updateReducer(reducer, initialArg, init) {\n var hook = updateWorkInProgressHook();\n var queue = hook.queue;\n\n if (queue === null) {\n throw new Error('Should have a queue. This is likely a bug in React. Please file an issue.');\n }\n\n queue.lastRenderedReducer = reducer;\n var current = currentHook; // The last rebase update that is NOT part of the base state.\n\n var baseQueue = current.baseQueue; // The last pending update that hasn't been processed yet.\n\n var pendingQueue = queue.pending;\n\n if (pendingQueue !== null) {\n // We have new updates that haven't been processed yet.\n // We'll add them to the base queue.\n if (baseQueue !== null) {\n // Merge the pending queue and the base queue.\n var baseFirst = baseQueue.next;\n var pendingFirst = pendingQueue.next;\n baseQueue.next = pendingFirst;\n pendingQueue.next = baseFirst;\n }\n\n {\n if (current.baseQueue !== baseQueue) {\n // Internal invariant that should never happen, but feasibly could in\n // the future if we implement resuming, or some form of that.\n error('Internal error: Expected work-in-progress queue to be a clone. ' + 'This is a bug in React.');\n }\n }\n\n current.baseQueue = baseQueue = pendingQueue;\n queue.pending = null;\n }\n\n if (baseQueue !== null) {\n // We have a queue to process.\n var first = baseQueue.next;\n var newState = current.baseState;\n var newBaseState = null;\n var newBaseQueueFirst = null;\n var newBaseQueueLast = null;\n var update = first;\n\n do {\n var updateLane = update.lane;\n\n if (!isSubsetOfLanes(renderLanes, updateLane)) {\n // Priority is insufficient. Skip this update. If this is the first\n // skipped update, the previous update/state is the new base\n // update/state.\n var clone = {\n lane: updateLane,\n action: update.action,\n hasEagerState: update.hasEagerState,\n eagerState: update.eagerState,\n next: null\n };\n\n if (newBaseQueueLast === null) {\n newBaseQueueFirst = newBaseQueueLast = clone;\n newBaseState = newState;\n } else {\n newBaseQueueLast = newBaseQueueLast.next = clone;\n } // Update the remaining priority in the queue.\n // TODO: Don't need to accumulate this. Instead, we can remove\n // renderLanes from the original lanes.\n\n\n currentlyRenderingFiber$1.lanes = mergeLanes(currentlyRenderingFiber$1.lanes, updateLane);\n markSkippedUpdateLanes(updateLane);\n } else {\n // This update does have sufficient priority.\n if (newBaseQueueLast !== null) {\n var _clone = {\n // This update is going to be committed so we never want uncommit\n // it. Using NoLane works because 0 is a subset of all bitmasks, so\n // this will never be skipped by the check above.\n lane: NoLane,\n action: update.action,\n hasEagerState: update.hasEagerState,\n eagerState: update.eagerState,\n next: null\n };\n newBaseQueueLast = newBaseQueueLast.next = _clone;\n } // Process this update.\n\n\n if (update.hasEagerState) {\n // If this update is a state update (not a reducer) and was processed eagerly,\n // we can use the eagerly computed state\n newState = update.eagerState;\n } else {\n var action = update.action;\n newState = reducer(newState, action);\n }\n }\n\n update = update.next;\n } while (update !== null && update !== first);\n\n if (newBaseQueueLast === null) {\n newBaseState = newState;\n } else {\n newBaseQueueLast.next = newBaseQueueFirst;\n } // Mark that the fiber performed work, but only if the new state is\n // different from the current state.\n\n\n if (!objectIs(newState, hook.memoizedState)) {\n markWorkInProgressReceivedUpdate();\n }\n\n hook.memoizedState = newState;\n hook.baseState = newBaseState;\n hook.baseQueue = newBaseQueueLast;\n queue.lastRenderedState = newState;\n } // Interleaved updates are stored on a separate queue. We aren't going to\n // process them during this render, but we do need to track which lanes\n // are remaining.\n\n\n var lastInterleaved = queue.interleaved;\n\n if (lastInterleaved !== null) {\n var interleaved = lastInterleaved;\n\n do {\n var interleavedLane = interleaved.lane;\n currentlyRenderingFiber$1.lanes = mergeLanes(currentlyRenderingFiber$1.lanes, interleavedLane);\n markSkippedUpdateLanes(interleavedLane);\n interleaved = interleaved.next;\n } while (interleaved !== lastInterleaved);\n } else if (baseQueue === null) {\n // `queue.lanes` is used for entangling transitions. We can set it back to\n // zero once the queue is empty.\n queue.lanes = NoLanes;\n }\n\n var dispatch = queue.dispatch;\n return [hook.memoizedState, dispatch];\n}\n\nfunction rerenderReducer(reducer, initialArg, init) {\n var hook = updateWorkInProgressHook();\n var queue = hook.queue;\n\n if (queue === null) {\n throw new Error('Should have a queue. This is likely a bug in React. Please file an issue.');\n }\n\n queue.lastRenderedReducer = reducer; // This is a re-render. Apply the new render phase updates to the previous\n // work-in-progress hook.\n\n var dispatch = queue.dispatch;\n var lastRenderPhaseUpdate = queue.pending;\n var newState = hook.memoizedState;\n\n if (lastRenderPhaseUpdate !== null) {\n // The queue doesn't persist past this render pass.\n queue.pending = null;\n var firstRenderPhaseUpdate = lastRenderPhaseUpdate.next;\n var update = firstRenderPhaseUpdate;\n\n do {\n // Process this render phase update. We don't have to check the\n // priority because it will always be the same as the current\n // render's.\n var action = update.action;\n newState = reducer(newState, action);\n update = update.next;\n } while (update !== firstRenderPhaseUpdate); // Mark that the fiber performed work, but only if the new state is\n // different from the current state.\n\n\n if (!objectIs(newState, hook.memoizedState)) {\n markWorkInProgressReceivedUpdate();\n }\n\n hook.memoizedState = newState; // Don't persist the state accumulated from the render phase updates to\n // the base state unless the queue is empty.\n // TODO: Not sure if this is the desired semantics, but it's what we\n // do for gDSFP. I can't remember why.\n\n if (hook.baseQueue === null) {\n hook.baseState = newState;\n }\n\n queue.lastRenderedState = newState;\n }\n\n return [newState, dispatch];\n}\n\nfunction mountMutableSource(source, getSnapshot, subscribe) {\n {\n return undefined;\n }\n}\n\nfunction updateMutableSource(source, getSnapshot, subscribe) {\n {\n return undefined;\n }\n}\n\nfunction mountSyncExternalStore(subscribe, getSnapshot, getServerSnapshot) {\n var fiber = currentlyRenderingFiber$1;\n var hook = mountWorkInProgressHook();\n var nextSnapshot;\n var isHydrating = getIsHydrating();\n\n if (isHydrating) {\n if (getServerSnapshot === undefined) {\n throw new Error('Missing getServerSnapshot, which is required for ' + 'server-rendered content. Will revert to client rendering.');\n }\n\n nextSnapshot = getServerSnapshot();\n\n {\n if (!didWarnUncachedGetSnapshot) {\n if (nextSnapshot !== getServerSnapshot()) {\n error('The result of getServerSnapshot should be cached to avoid an infinite loop');\n\n didWarnUncachedGetSnapshot = true;\n }\n }\n }\n } else {\n nextSnapshot = getSnapshot();\n\n {\n if (!didWarnUncachedGetSnapshot) {\n var cachedSnapshot = getSnapshot();\n\n if (!objectIs(nextSnapshot, cachedSnapshot)) {\n error('The result of getSnapshot should be cached to avoid an infinite loop');\n\n didWarnUncachedGetSnapshot = true;\n }\n }\n } // Unless we're rendering a blocking lane, schedule a consistency check.\n // Right before committing, we will walk the tree and check if any of the\n // stores were mutated.\n //\n // We won't do this if we're hydrating server-rendered content, because if\n // the content is stale, it's already visible anyway. Instead we'll patch\n // it up in a passive effect.\n\n\n var root = getWorkInProgressRoot();\n\n if (root === null) {\n throw new Error('Expected a work-in-progress root. This is a bug in React. Please file an issue.');\n }\n\n if (!includesBlockingLane(root, renderLanes)) {\n pushStoreConsistencyCheck(fiber, getSnapshot, nextSnapshot);\n }\n } // Read the current snapshot from the store on every render. This breaks the\n // normal rules of React, and only works because store updates are\n // always synchronous.\n\n\n hook.memoizedState = nextSnapshot;\n var inst = {\n value: nextSnapshot,\n getSnapshot: getSnapshot\n };\n hook.queue = inst; // Schedule an effect to subscribe to the store.\n\n mountEffect(subscribeToStore.bind(null, fiber, inst, subscribe), [subscribe]); // Schedule an effect to update the mutable instance fields. We will update\n // this whenever subscribe, getSnapshot, or value changes. Because there's no\n // clean-up function, and we track the deps correctly, we can call pushEffect\n // directly, without storing any additional state. For the same reason, we\n // don't need to set a static flag, either.\n // TODO: We can move this to the passive phase once we add a pre-commit\n // consistency check. See the next comment.\n\n fiber.flags |= Passive;\n pushEffect(HasEffect | Passive$1, updateStoreInstance.bind(null, fiber, inst, nextSnapshot, getSnapshot), undefined, null);\n return nextSnapshot;\n}\n\nfunction updateSyncExternalStore(subscribe, getSnapshot, getServerSnapshot) {\n var fiber = currentlyRenderingFiber$1;\n var hook = updateWorkInProgressHook(); // Read the current snapshot from the store on every render. This breaks the\n // normal rules of React, and only works because store updates are\n // always synchronous.\n\n var nextSnapshot = getSnapshot();\n\n {\n if (!didWarnUncachedGetSnapshot) {\n var cachedSnapshot = getSnapshot();\n\n if (!objectIs(nextSnapshot, cachedSnapshot)) {\n error('The result of getSnapshot should be cached to avoid an infinite loop');\n\n didWarnUncachedGetSnapshot = true;\n }\n }\n }\n\n var prevSnapshot = hook.memoizedState;\n var snapshotChanged = !objectIs(prevSnapshot, nextSnapshot);\n\n if (snapshotChanged) {\n hook.memoizedState = nextSnapshot;\n markWorkInProgressReceivedUpdate();\n }\n\n var inst = hook.queue;\n updateEffect(subscribeToStore.bind(null, fiber, inst, subscribe), [subscribe]); // Whenever getSnapshot or subscribe changes, we need to check in the\n // commit phase if there was an interleaved mutation. In concurrent mode\n // this can happen all the time, but even in synchronous mode, an earlier\n // effect may have mutated the store.\n\n if (inst.getSnapshot !== getSnapshot || snapshotChanged || // Check if the susbcribe function changed. We can save some memory by\n // checking whether we scheduled a subscription effect above.\n workInProgressHook !== null && workInProgressHook.memoizedState.tag & HasEffect) {\n fiber.flags |= Passive;\n pushEffect(HasEffect | Passive$1, updateStoreInstance.bind(null, fiber, inst, nextSnapshot, getSnapshot), undefined, null); // Unless we're rendering a blocking lane, schedule a consistency check.\n // Right before committing, we will walk the tree and check if any of the\n // stores were mutated.\n\n var root = getWorkInProgressRoot();\n\n if (root === null) {\n throw new Error('Expected a work-in-progress root. This is a bug in React. Please file an issue.');\n }\n\n if (!includesBlockingLane(root, renderLanes)) {\n pushStoreConsistencyCheck(fiber, getSnapshot, nextSnapshot);\n }\n }\n\n return nextSnapshot;\n}\n\nfunction pushStoreConsistencyCheck(fiber, getSnapshot, renderedSnapshot) {\n fiber.flags |= StoreConsistency;\n var check = {\n getSnapshot: getSnapshot,\n value: renderedSnapshot\n };\n var componentUpdateQueue = currentlyRenderingFiber$1.updateQueue;\n\n if (componentUpdateQueue === null) {\n componentUpdateQueue = createFunctionComponentUpdateQueue();\n currentlyRenderingFiber$1.updateQueue = componentUpdateQueue;\n componentUpdateQueue.stores = [check];\n } else {\n var stores = componentUpdateQueue.stores;\n\n if (stores === null) {\n componentUpdateQueue.stores = [check];\n } else {\n stores.push(check);\n }\n }\n}\n\nfunction updateStoreInstance(fiber, inst, nextSnapshot, getSnapshot) {\n // These are updated in the passive phase\n inst.value = nextSnapshot;\n inst.getSnapshot = getSnapshot; // Something may have been mutated in between render and commit. This could\n // have been in an event that fired before the passive effects, or it could\n // have been in a layout effect. In that case, we would have used the old\n // snapsho and getSnapshot values to bail out. We need to check one more time.\n\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceStoreRerender(fiber);\n }\n}\n\nfunction subscribeToStore(fiber, inst, subscribe) {\n var handleStoreChange = function () {\n // The store changed. Check if the snapshot changed since the last time we\n // read from the store.\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceStoreRerender(fiber);\n }\n }; // Subscribe to the store and return a clean-up function.\n\n\n return subscribe(handleStoreChange);\n}\n\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n var prevValue = inst.value;\n\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(prevValue, nextValue);\n } catch (error) {\n return true;\n }\n}\n\nfunction forceStoreRerender(fiber) {\n var root = enqueueConcurrentRenderForLane(fiber, SyncLane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, fiber, SyncLane, NoTimestamp);\n }\n}\n\nfunction mountState(initialState) {\n var hook = mountWorkInProgressHook();\n\n if (typeof initialState === 'function') {\n // $FlowFixMe: Flow doesn't like mixed types\n initialState = initialState();\n }\n\n hook.memoizedState = hook.baseState = initialState;\n var queue = {\n pending: null,\n interleaved: null,\n lanes: NoLanes,\n dispatch: null,\n lastRenderedReducer: basicStateReducer,\n lastRenderedState: initialState\n };\n hook.queue = queue;\n var dispatch = queue.dispatch = dispatchSetState.bind(null, currentlyRenderingFiber$1, queue);\n return [hook.memoizedState, dispatch];\n}\n\nfunction updateState(initialState) {\n return updateReducer(basicStateReducer);\n}\n\nfunction rerenderState(initialState) {\n return rerenderReducer(basicStateReducer);\n}\n\nfunction pushEffect(tag, create, destroy, deps) {\n var effect = {\n tag: tag,\n create: create,\n destroy: destroy,\n deps: deps,\n // Circular\n next: null\n };\n var componentUpdateQueue = currentlyRenderingFiber$1.updateQueue;\n\n if (componentUpdateQueue === null) {\n componentUpdateQueue = createFunctionComponentUpdateQueue();\n currentlyRenderingFiber$1.updateQueue = componentUpdateQueue;\n componentUpdateQueue.lastEffect = effect.next = effect;\n } else {\n var lastEffect = componentUpdateQueue.lastEffect;\n\n if (lastEffect === null) {\n componentUpdateQueue.lastEffect = effect.next = effect;\n } else {\n var firstEffect = lastEffect.next;\n lastEffect.next = effect;\n effect.next = firstEffect;\n componentUpdateQueue.lastEffect = effect;\n }\n }\n\n return effect;\n}\n\nfunction mountRef(initialValue) {\n var hook = mountWorkInProgressHook();\n\n {\n var _ref2 = {\n current: initialValue\n };\n hook.memoizedState = _ref2;\n return _ref2;\n }\n}\n\nfunction updateRef(initialValue) {\n var hook = updateWorkInProgressHook();\n return hook.memoizedState;\n}\n\nfunction mountEffectImpl(fiberFlags, hookFlags, create, deps) {\n var hook = mountWorkInProgressHook();\n var nextDeps = deps === undefined ? null : deps;\n currentlyRenderingFiber$1.flags |= fiberFlags;\n hook.memoizedState = pushEffect(HasEffect | hookFlags, create, undefined, nextDeps);\n}\n\nfunction updateEffectImpl(fiberFlags, hookFlags, create, deps) {\n var hook = updateWorkInProgressHook();\n var nextDeps = deps === undefined ? null : deps;\n var destroy = undefined;\n\n if (currentHook !== null) {\n var prevEffect = currentHook.memoizedState;\n destroy = prevEffect.destroy;\n\n if (nextDeps !== null) {\n var prevDeps = prevEffect.deps;\n\n if (areHookInputsEqual(nextDeps, prevDeps)) {\n hook.memoizedState = pushEffect(hookFlags, create, destroy, nextDeps);\n return;\n }\n }\n }\n\n currentlyRenderingFiber$1.flags |= fiberFlags;\n hook.memoizedState = pushEffect(HasEffect | hookFlags, create, destroy, nextDeps);\n}\n\nfunction mountEffect(create, deps) {\n if ( (currentlyRenderingFiber$1.mode & StrictEffectsMode) !== NoMode) {\n return mountEffectImpl(MountPassiveDev | Passive | PassiveStatic, Passive$1, create, deps);\n } else {\n return mountEffectImpl(Passive | PassiveStatic, Passive$1, create, deps);\n }\n}\n\nfunction updateEffect(create, deps) {\n return updateEffectImpl(Passive, Passive$1, create, deps);\n}\n\nfunction mountInsertionEffect(create, deps) {\n return mountEffectImpl(Update, Insertion, create, deps);\n}\n\nfunction updateInsertionEffect(create, deps) {\n return updateEffectImpl(Update, Insertion, create, deps);\n}\n\nfunction mountLayoutEffect(create, deps) {\n var fiberFlags = Update;\n\n {\n fiberFlags |= LayoutStatic;\n }\n\n if ( (currentlyRenderingFiber$1.mode & StrictEffectsMode) !== NoMode) {\n fiberFlags |= MountLayoutDev;\n }\n\n return mountEffectImpl(fiberFlags, Layout, create, deps);\n}\n\nfunction updateLayoutEffect(create, deps) {\n return updateEffectImpl(Update, Layout, create, deps);\n}\n\nfunction imperativeHandleEffect(create, ref) {\n if (typeof ref === 'function') {\n var refCallback = ref;\n\n var _inst = create();\n\n refCallback(_inst);\n return function () {\n refCallback(null);\n };\n } else if (ref !== null && ref !== undefined) {\n var refObject = ref;\n\n {\n if (!refObject.hasOwnProperty('current')) {\n error('Expected useImperativeHandle() first argument to either be a ' + 'ref callback or React.createRef() object. Instead received: %s.', 'an object with keys {' + Object.keys(refObject).join(', ') + '}');\n }\n }\n\n var _inst2 = create();\n\n refObject.current = _inst2;\n return function () {\n refObject.current = null;\n };\n }\n}\n\nfunction mountImperativeHandle(ref, create, deps) {\n {\n if (typeof create !== 'function') {\n error('Expected useImperativeHandle() second argument to be a function ' + 'that creates a handle. Instead received: %s.', create !== null ? typeof create : 'null');\n }\n } // TODO: If deps are provided, should we skip comparing the ref itself?\n\n\n var effectDeps = deps !== null && deps !== undefined ? deps.concat([ref]) : null;\n var fiberFlags = Update;\n\n {\n fiberFlags |= LayoutStatic;\n }\n\n if ( (currentlyRenderingFiber$1.mode & StrictEffectsMode) !== NoMode) {\n fiberFlags |= MountLayoutDev;\n }\n\n return mountEffectImpl(fiberFlags, Layout, imperativeHandleEffect.bind(null, create, ref), effectDeps);\n}\n\nfunction updateImperativeHandle(ref, create, deps) {\n {\n if (typeof create !== 'function') {\n error('Expected useImperativeHandle() second argument to be a function ' + 'that creates a handle. Instead received: %s.', create !== null ? typeof create : 'null');\n }\n } // TODO: If deps are provided, should we skip comparing the ref itself?\n\n\n var effectDeps = deps !== null && deps !== undefined ? deps.concat([ref]) : null;\n return updateEffectImpl(Update, Layout, imperativeHandleEffect.bind(null, create, ref), effectDeps);\n}\n\nfunction mountDebugValue(value, formatterFn) {// This hook is normally a no-op.\n // The react-debug-hooks package injects its own implementation\n // so that e.g. DevTools can display custom hook values.\n}\n\nvar updateDebugValue = mountDebugValue;\n\nfunction mountCallback(callback, deps) {\n var hook = mountWorkInProgressHook();\n var nextDeps = deps === undefined ? null : deps;\n hook.memoizedState = [callback, nextDeps];\n return callback;\n}\n\nfunction updateCallback(callback, deps) {\n var hook = updateWorkInProgressHook();\n var nextDeps = deps === undefined ? null : deps;\n var prevState = hook.memoizedState;\n\n if (prevState !== null) {\n if (nextDeps !== null) {\n var prevDeps = prevState[1];\n\n if (areHookInputsEqual(nextDeps, prevDeps)) {\n return prevState[0];\n }\n }\n }\n\n hook.memoizedState = [callback, nextDeps];\n return callback;\n}\n\nfunction mountMemo(nextCreate, deps) {\n var hook = mountWorkInProgressHook();\n var nextDeps = deps === undefined ? null : deps;\n var nextValue = nextCreate();\n hook.memoizedState = [nextValue, nextDeps];\n return nextValue;\n}\n\nfunction updateMemo(nextCreate, deps) {\n var hook = updateWorkInProgressHook();\n var nextDeps = deps === undefined ? null : deps;\n var prevState = hook.memoizedState;\n\n if (prevState !== null) {\n // Assume these are defined. If they're not, areHookInputsEqual will warn.\n if (nextDeps !== null) {\n var prevDeps = prevState[1];\n\n if (areHookInputsEqual(nextDeps, prevDeps)) {\n return prevState[0];\n }\n }\n }\n\n var nextValue = nextCreate();\n hook.memoizedState = [nextValue, nextDeps];\n return nextValue;\n}\n\nfunction mountDeferredValue(value) {\n var hook = mountWorkInProgressHook();\n hook.memoizedState = value;\n return value;\n}\n\nfunction updateDeferredValue(value) {\n var hook = updateWorkInProgressHook();\n var resolvedCurrentHook = currentHook;\n var prevValue = resolvedCurrentHook.memoizedState;\n return updateDeferredValueImpl(hook, prevValue, value);\n}\n\nfunction rerenderDeferredValue(value) {\n var hook = updateWorkInProgressHook();\n\n if (currentHook === null) {\n // This is a rerender during a mount.\n hook.memoizedState = value;\n return value;\n } else {\n // This is a rerender during an update.\n var prevValue = currentHook.memoizedState;\n return updateDeferredValueImpl(hook, prevValue, value);\n }\n}\n\nfunction updateDeferredValueImpl(hook, prevValue, value) {\n var shouldDeferValue = !includesOnlyNonUrgentLanes(renderLanes);\n\n if (shouldDeferValue) {\n // This is an urgent update. If the value has changed, keep using the\n // previous value and spawn a deferred render to update it later.\n if (!objectIs(value, prevValue)) {\n // Schedule a deferred render\n var deferredLane = claimNextTransitionLane();\n currentlyRenderingFiber$1.lanes = mergeLanes(currentlyRenderingFiber$1.lanes, deferredLane);\n markSkippedUpdateLanes(deferredLane); // Set this to true to indicate that the rendered value is inconsistent\n // from the latest value. The name \"baseState\" doesn't really match how we\n // use it because we're reusing a state hook field instead of creating a\n // new one.\n\n hook.baseState = true;\n } // Reuse the previous value\n\n\n return prevValue;\n } else {\n // This is not an urgent update, so we can use the latest value regardless\n // of what it is. No need to defer it.\n // However, if we're currently inside a spawned render, then we need to mark\n // this as an update to prevent the fiber from bailing out.\n //\n // `baseState` is true when the current value is different from the rendered\n // value. The name doesn't really match how we use it because we're reusing\n // a state hook field instead of creating a new one.\n if (hook.baseState) {\n // Flip this back to false.\n hook.baseState = false;\n markWorkInProgressReceivedUpdate();\n }\n\n hook.memoizedState = value;\n return value;\n }\n}\n\nfunction startTransition(setPending, callback, options) {\n var previousPriority = getCurrentUpdatePriority();\n setCurrentUpdatePriority(higherEventPriority(previousPriority, ContinuousEventPriority));\n setPending(true);\n var prevTransition = ReactCurrentBatchConfig$2.transition;\n ReactCurrentBatchConfig$2.transition = {};\n var currentTransition = ReactCurrentBatchConfig$2.transition;\n\n {\n ReactCurrentBatchConfig$2.transition._updatedFibers = new Set();\n }\n\n try {\n setPending(false);\n callback();\n } finally {\n setCurrentUpdatePriority(previousPriority);\n ReactCurrentBatchConfig$2.transition = prevTransition;\n\n {\n if (prevTransition === null && currentTransition._updatedFibers) {\n var updatedFibersCount = currentTransition._updatedFibers.size;\n\n if (updatedFibersCount > 10) {\n warn('Detected a large number of updates inside startTransition. ' + 'If this is due to a subscription please re-write it to use React provided hooks. ' + 'Otherwise concurrent mode guarantees are off the table.');\n }\n\n currentTransition._updatedFibers.clear();\n }\n }\n }\n}\n\nfunction mountTransition() {\n var _mountState = mountState(false),\n isPending = _mountState[0],\n setPending = _mountState[1]; // The `start` method never changes.\n\n\n var start = startTransition.bind(null, setPending);\n var hook = mountWorkInProgressHook();\n hook.memoizedState = start;\n return [isPending, start];\n}\n\nfunction updateTransition() {\n var _updateState = updateState(),\n isPending = _updateState[0];\n\n var hook = updateWorkInProgressHook();\n var start = hook.memoizedState;\n return [isPending, start];\n}\n\nfunction rerenderTransition() {\n var _rerenderState = rerenderState(),\n isPending = _rerenderState[0];\n\n var hook = updateWorkInProgressHook();\n var start = hook.memoizedState;\n return [isPending, start];\n}\n\nvar isUpdatingOpaqueValueInRenderPhase = false;\nfunction getIsUpdatingOpaqueValueInRenderPhaseInDEV() {\n {\n return isUpdatingOpaqueValueInRenderPhase;\n }\n}\n\nfunction mountId() {\n var hook = mountWorkInProgressHook();\n var root = getWorkInProgressRoot(); // TODO: In Fizz, id generation is specific to each server config. Maybe we\n // should do this in Fiber, too? Deferring this decision for now because\n // there's no other place to store the prefix except for an internal field on\n // the public createRoot object, which the fiber tree does not currently have\n // a reference to.\n\n var identifierPrefix = root.identifierPrefix;\n var id;\n\n if (getIsHydrating()) {\n var treeId = getTreeId(); // Use a captial R prefix for server-generated ids.\n\n id = ':' + identifierPrefix + 'R' + treeId; // Unless this is the first id at this level, append a number at the end\n // that represents the position of this useId hook among all the useId\n // hooks for this fiber.\n\n var localId = localIdCounter++;\n\n if (localId > 0) {\n id += 'H' + localId.toString(32);\n }\n\n id += ':';\n } else {\n // Use a lowercase r prefix for client-generated ids.\n var globalClientId = globalClientIdCounter++;\n id = ':' + identifierPrefix + 'r' + globalClientId.toString(32) + ':';\n }\n\n hook.memoizedState = id;\n return id;\n}\n\nfunction updateId() {\n var hook = updateWorkInProgressHook();\n var id = hook.memoizedState;\n return id;\n}\n\nfunction dispatchReducerAction(fiber, queue, action) {\n {\n if (typeof arguments[3] === 'function') {\n error(\"State updates from the useState() and useReducer() Hooks don't support the \" + 'second callback argument. To execute a side effect after ' + 'rendering, declare it in the component body with useEffect().');\n }\n }\n\n var lane = requestUpdateLane(fiber);\n var update = {\n lane: lane,\n action: action,\n hasEagerState: false,\n eagerState: null,\n next: null\n };\n\n if (isRenderPhaseUpdate(fiber)) {\n enqueueRenderPhaseUpdate(queue, update);\n } else {\n var root = enqueueConcurrentHookUpdate(fiber, queue, update, lane);\n\n if (root !== null) {\n var eventTime = requestEventTime();\n scheduleUpdateOnFiber(root, fiber, lane, eventTime);\n entangleTransitionUpdate(root, queue, lane);\n }\n }\n\n markUpdateInDevTools(fiber, lane);\n}\n\nfunction dispatchSetState(fiber, queue, action) {\n {\n if (typeof arguments[3] === 'function') {\n error(\"State updates from the useState() and useReducer() Hooks don't support the \" + 'second callback argument. To execute a side effect after ' + 'rendering, declare it in the component body with useEffect().');\n }\n }\n\n var lane = requestUpdateLane(fiber);\n var update = {\n lane: lane,\n action: action,\n hasEagerState: false,\n eagerState: null,\n next: null\n };\n\n if (isRenderPhaseUpdate(fiber)) {\n enqueueRenderPhaseUpdate(queue, update);\n } else {\n var alternate = fiber.alternate;\n\n if (fiber.lanes === NoLanes && (alternate === null || alternate.lanes === NoLanes)) {\n // The queue is currently empty, which means we can eagerly compute the\n // next state before entering the render phase. If the new state is the\n // same as the current state, we may be able to bail out entirely.\n var lastRenderedReducer = queue.lastRenderedReducer;\n\n if (lastRenderedReducer !== null) {\n var prevDispatcher;\n\n {\n prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;\n }\n\n try {\n var currentState = queue.lastRenderedState;\n var eagerState = lastRenderedReducer(currentState, action); // Stash the eagerly computed state, and the reducer used to compute\n // it, on the update object. If the reducer hasn't changed by the\n // time we enter the render phase, then the eager state can be used\n // without calling the reducer again.\n\n update.hasEagerState = true;\n update.eagerState = eagerState;\n\n if (objectIs(eagerState, currentState)) {\n // Fast path. We can bail out without scheduling React to re-render.\n // It's still possible that we'll need to rebase this update later,\n // if the component re-renders for a different reason and by that\n // time the reducer has changed.\n // TODO: Do we still need to entangle transitions in this case?\n enqueueConcurrentHookUpdateAndEagerlyBailout(fiber, queue, update, lane);\n return;\n }\n } catch (error) {// Suppress the error. It will throw again in the render phase.\n } finally {\n {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n }\n }\n }\n\n var root = enqueueConcurrentHookUpdate(fiber, queue, update, lane);\n\n if (root !== null) {\n var eventTime = requestEventTime();\n scheduleUpdateOnFiber(root, fiber, lane, eventTime);\n entangleTransitionUpdate(root, queue, lane);\n }\n }\n\n markUpdateInDevTools(fiber, lane);\n}\n\nfunction isRenderPhaseUpdate(fiber) {\n var alternate = fiber.alternate;\n return fiber === currentlyRenderingFiber$1 || alternate !== null && alternate === currentlyRenderingFiber$1;\n}\n\nfunction enqueueRenderPhaseUpdate(queue, update) {\n // This is a render phase update. Stash it in a lazily-created map of\n // queue -> linked list of updates. After this render pass, we'll restart\n // and apply the stashed updates on top of the work-in-progress hook.\n didScheduleRenderPhaseUpdateDuringThisPass = didScheduleRenderPhaseUpdate = true;\n var pending = queue.pending;\n\n if (pending === null) {\n // This is the first update. Create a circular list.\n update.next = update;\n } else {\n update.next = pending.next;\n pending.next = update;\n }\n\n queue.pending = update;\n} // TODO: Move to ReactFiberConcurrentUpdates?\n\n\nfunction entangleTransitionUpdate(root, queue, lane) {\n if (isTransitionLane(lane)) {\n var queueLanes = queue.lanes; // If any entangled lanes are no longer pending on the root, then they\n // must have finished. We can remove them from the shared queue, which\n // represents a superset of the actually pending lanes. In some cases we\n // may entangle more than we need to, but that's OK. In fact it's worse if\n // we *don't* entangle when we should.\n\n queueLanes = intersectLanes(queueLanes, root.pendingLanes); // Entangle the new transition lane with the other transition lanes.\n\n var newQueueLanes = mergeLanes(queueLanes, lane);\n queue.lanes = newQueueLanes; // Even if queue.lanes already include lane, we don't know for certain if\n // the lane finished since the last time we entangled it. So we need to\n // entangle it again, just to be sure.\n\n markRootEntangled(root, newQueueLanes);\n }\n}\n\nfunction markUpdateInDevTools(fiber, lane, action) {\n\n {\n markStateUpdateScheduled(fiber, lane);\n }\n}\n\nvar ContextOnlyDispatcher = {\n readContext: readContext,\n useCallback: throwInvalidHookError,\n useContext: throwInvalidHookError,\n useEffect: throwInvalidHookError,\n useImperativeHandle: throwInvalidHookError,\n useInsertionEffect: throwInvalidHookError,\n useLayoutEffect: throwInvalidHookError,\n useMemo: throwInvalidHookError,\n useReducer: throwInvalidHookError,\n useRef: throwInvalidHookError,\n useState: throwInvalidHookError,\n useDebugValue: throwInvalidHookError,\n useDeferredValue: throwInvalidHookError,\n useTransition: throwInvalidHookError,\n useMutableSource: throwInvalidHookError,\n useSyncExternalStore: throwInvalidHookError,\n useId: throwInvalidHookError,\n unstable_isNewReconciler: enableNewReconciler\n};\n\nvar HooksDispatcherOnMountInDEV = null;\nvar HooksDispatcherOnMountWithHookTypesInDEV = null;\nvar HooksDispatcherOnUpdateInDEV = null;\nvar HooksDispatcherOnRerenderInDEV = null;\nvar InvalidNestedHooksDispatcherOnMountInDEV = null;\nvar InvalidNestedHooksDispatcherOnUpdateInDEV = null;\nvar InvalidNestedHooksDispatcherOnRerenderInDEV = null;\n\n{\n var warnInvalidContextAccess = function () {\n error('Context can only be read while React is rendering. ' + 'In classes, you can read it in the render method or getDerivedStateFromProps. ' + 'In function components, you can read it directly in the function body, but not ' + 'inside Hooks like useReducer() or useMemo().');\n };\n\n var warnInvalidHookAccess = function () {\n error('Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. ' + 'You can only call Hooks at the top level of your React function. ' + 'For more information, see ' + 'https://reactjs.org/link/rules-of-hooks');\n };\n\n HooksDispatcherOnMountInDEV = {\n readContext: function (context) {\n return readContext(context);\n },\n useCallback: function (callback, deps) {\n currentHookNameInDev = 'useCallback';\n mountHookTypesDev();\n checkDepsAreArrayDev(deps);\n return mountCallback(callback, deps);\n },\n useContext: function (context) {\n currentHookNameInDev = 'useContext';\n mountHookTypesDev();\n return readContext(context);\n },\n useEffect: function (create, deps) {\n currentHookNameInDev = 'useEffect';\n mountHookTypesDev();\n checkDepsAreArrayDev(deps);\n return mountEffect(create, deps);\n },\n useImperativeHandle: function (ref, create, deps) {\n currentHookNameInDev = 'useImperativeHandle';\n mountHookTypesDev();\n checkDepsAreArrayDev(deps);\n return mountImperativeHandle(ref, create, deps);\n },\n useInsertionEffect: function (create, deps) {\n currentHookNameInDev = 'useInsertionEffect';\n mountHookTypesDev();\n checkDepsAreArrayDev(deps);\n return mountInsertionEffect(create, deps);\n },\n useLayoutEffect: function (create, deps) {\n currentHookNameInDev = 'useLayoutEffect';\n mountHookTypesDev();\n checkDepsAreArrayDev(deps);\n return mountLayoutEffect(create, deps);\n },\n useMemo: function (create, deps) {\n currentHookNameInDev = 'useMemo';\n mountHookTypesDev();\n checkDepsAreArrayDev(deps);\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;\n\n try {\n return mountMemo(create, deps);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useReducer: function (reducer, initialArg, init) {\n currentHookNameInDev = 'useReducer';\n mountHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;\n\n try {\n return mountReducer(reducer, initialArg, init);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useRef: function (initialValue) {\n currentHookNameInDev = 'useRef';\n mountHookTypesDev();\n return mountRef(initialValue);\n },\n useState: function (initialState) {\n currentHookNameInDev = 'useState';\n mountHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;\n\n try {\n return mountState(initialState);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useDebugValue: function (value, formatterFn) {\n currentHookNameInDev = 'useDebugValue';\n mountHookTypesDev();\n return mountDebugValue();\n },\n useDeferredValue: function (value) {\n currentHookNameInDev = 'useDeferredValue';\n mountHookTypesDev();\n return mountDeferredValue(value);\n },\n useTransition: function () {\n currentHookNameInDev = 'useTransition';\n mountHookTypesDev();\n return mountTransition();\n },\n useMutableSource: function (source, getSnapshot, subscribe) {\n currentHookNameInDev = 'useMutableSource';\n mountHookTypesDev();\n return mountMutableSource();\n },\n useSyncExternalStore: function (subscribe, getSnapshot, getServerSnapshot) {\n currentHookNameInDev = 'useSyncExternalStore';\n mountHookTypesDev();\n return mountSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n },\n useId: function () {\n currentHookNameInDev = 'useId';\n mountHookTypesDev();\n return mountId();\n },\n unstable_isNewReconciler: enableNewReconciler\n };\n\n HooksDispatcherOnMountWithHookTypesInDEV = {\n readContext: function (context) {\n return readContext(context);\n },\n useCallback: function (callback, deps) {\n currentHookNameInDev = 'useCallback';\n updateHookTypesDev();\n return mountCallback(callback, deps);\n },\n useContext: function (context) {\n currentHookNameInDev = 'useContext';\n updateHookTypesDev();\n return readContext(context);\n },\n useEffect: function (create, deps) {\n currentHookNameInDev = 'useEffect';\n updateHookTypesDev();\n return mountEffect(create, deps);\n },\n useImperativeHandle: function (ref, create, deps) {\n currentHookNameInDev = 'useImperativeHandle';\n updateHookTypesDev();\n return mountImperativeHandle(ref, create, deps);\n },\n useInsertionEffect: function (create, deps) {\n currentHookNameInDev = 'useInsertionEffect';\n updateHookTypesDev();\n return mountInsertionEffect(create, deps);\n },\n useLayoutEffect: function (create, deps) {\n currentHookNameInDev = 'useLayoutEffect';\n updateHookTypesDev();\n return mountLayoutEffect(create, deps);\n },\n useMemo: function (create, deps) {\n currentHookNameInDev = 'useMemo';\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;\n\n try {\n return mountMemo(create, deps);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useReducer: function (reducer, initialArg, init) {\n currentHookNameInDev = 'useReducer';\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;\n\n try {\n return mountReducer(reducer, initialArg, init);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useRef: function (initialValue) {\n currentHookNameInDev = 'useRef';\n updateHookTypesDev();\n return mountRef(initialValue);\n },\n useState: function (initialState) {\n currentHookNameInDev = 'useState';\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;\n\n try {\n return mountState(initialState);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useDebugValue: function (value, formatterFn) {\n currentHookNameInDev = 'useDebugValue';\n updateHookTypesDev();\n return mountDebugValue();\n },\n useDeferredValue: function (value) {\n currentHookNameInDev = 'useDeferredValue';\n updateHookTypesDev();\n return mountDeferredValue(value);\n },\n useTransition: function () {\n currentHookNameInDev = 'useTransition';\n updateHookTypesDev();\n return mountTransition();\n },\n useMutableSource: function (source, getSnapshot, subscribe) {\n currentHookNameInDev = 'useMutableSource';\n updateHookTypesDev();\n return mountMutableSource();\n },\n useSyncExternalStore: function (subscribe, getSnapshot, getServerSnapshot) {\n currentHookNameInDev = 'useSyncExternalStore';\n updateHookTypesDev();\n return mountSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n },\n useId: function () {\n currentHookNameInDev = 'useId';\n updateHookTypesDev();\n return mountId();\n },\n unstable_isNewReconciler: enableNewReconciler\n };\n\n HooksDispatcherOnUpdateInDEV = {\n readContext: function (context) {\n return readContext(context);\n },\n useCallback: function (callback, deps) {\n currentHookNameInDev = 'useCallback';\n updateHookTypesDev();\n return updateCallback(callback, deps);\n },\n useContext: function (context) {\n currentHookNameInDev = 'useContext';\n updateHookTypesDev();\n return readContext(context);\n },\n useEffect: function (create, deps) {\n currentHookNameInDev = 'useEffect';\n updateHookTypesDev();\n return updateEffect(create, deps);\n },\n useImperativeHandle: function (ref, create, deps) {\n currentHookNameInDev = 'useImperativeHandle';\n updateHookTypesDev();\n return updateImperativeHandle(ref, create, deps);\n },\n useInsertionEffect: function (create, deps) {\n currentHookNameInDev = 'useInsertionEffect';\n updateHookTypesDev();\n return updateInsertionEffect(create, deps);\n },\n useLayoutEffect: function (create, deps) {\n currentHookNameInDev = 'useLayoutEffect';\n updateHookTypesDev();\n return updateLayoutEffect(create, deps);\n },\n useMemo: function (create, deps) {\n currentHookNameInDev = 'useMemo';\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;\n\n try {\n return updateMemo(create, deps);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useReducer: function (reducer, initialArg, init) {\n currentHookNameInDev = 'useReducer';\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;\n\n try {\n return updateReducer(reducer, initialArg, init);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useRef: function (initialValue) {\n currentHookNameInDev = 'useRef';\n updateHookTypesDev();\n return updateRef();\n },\n useState: function (initialState) {\n currentHookNameInDev = 'useState';\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;\n\n try {\n return updateState(initialState);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useDebugValue: function (value, formatterFn) {\n currentHookNameInDev = 'useDebugValue';\n updateHookTypesDev();\n return updateDebugValue();\n },\n useDeferredValue: function (value) {\n currentHookNameInDev = 'useDeferredValue';\n updateHookTypesDev();\n return updateDeferredValue(value);\n },\n useTransition: function () {\n currentHookNameInDev = 'useTransition';\n updateHookTypesDev();\n return updateTransition();\n },\n useMutableSource: function (source, getSnapshot, subscribe) {\n currentHookNameInDev = 'useMutableSource';\n updateHookTypesDev();\n return updateMutableSource();\n },\n useSyncExternalStore: function (subscribe, getSnapshot, getServerSnapshot) {\n currentHookNameInDev = 'useSyncExternalStore';\n updateHookTypesDev();\n return updateSyncExternalStore(subscribe, getSnapshot);\n },\n useId: function () {\n currentHookNameInDev = 'useId';\n updateHookTypesDev();\n return updateId();\n },\n unstable_isNewReconciler: enableNewReconciler\n };\n\n HooksDispatcherOnRerenderInDEV = {\n readContext: function (context) {\n return readContext(context);\n },\n useCallback: function (callback, deps) {\n currentHookNameInDev = 'useCallback';\n updateHookTypesDev();\n return updateCallback(callback, deps);\n },\n useContext: function (context) {\n currentHookNameInDev = 'useContext';\n updateHookTypesDev();\n return readContext(context);\n },\n useEffect: function (create, deps) {\n currentHookNameInDev = 'useEffect';\n updateHookTypesDev();\n return updateEffect(create, deps);\n },\n useImperativeHandle: function (ref, create, deps) {\n currentHookNameInDev = 'useImperativeHandle';\n updateHookTypesDev();\n return updateImperativeHandle(ref, create, deps);\n },\n useInsertionEffect: function (create, deps) {\n currentHookNameInDev = 'useInsertionEffect';\n updateHookTypesDev();\n return updateInsertionEffect(create, deps);\n },\n useLayoutEffect: function (create, deps) {\n currentHookNameInDev = 'useLayoutEffect';\n updateHookTypesDev();\n return updateLayoutEffect(create, deps);\n },\n useMemo: function (create, deps) {\n currentHookNameInDev = 'useMemo';\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnRerenderInDEV;\n\n try {\n return updateMemo(create, deps);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useReducer: function (reducer, initialArg, init) {\n currentHookNameInDev = 'useReducer';\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnRerenderInDEV;\n\n try {\n return rerenderReducer(reducer, initialArg, init);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useRef: function (initialValue) {\n currentHookNameInDev = 'useRef';\n updateHookTypesDev();\n return updateRef();\n },\n useState: function (initialState) {\n currentHookNameInDev = 'useState';\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnRerenderInDEV;\n\n try {\n return rerenderState(initialState);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useDebugValue: function (value, formatterFn) {\n currentHookNameInDev = 'useDebugValue';\n updateHookTypesDev();\n return updateDebugValue();\n },\n useDeferredValue: function (value) {\n currentHookNameInDev = 'useDeferredValue';\n updateHookTypesDev();\n return rerenderDeferredValue(value);\n },\n useTransition: function () {\n currentHookNameInDev = 'useTransition';\n updateHookTypesDev();\n return rerenderTransition();\n },\n useMutableSource: function (source, getSnapshot, subscribe) {\n currentHookNameInDev = 'useMutableSource';\n updateHookTypesDev();\n return updateMutableSource();\n },\n useSyncExternalStore: function (subscribe, getSnapshot, getServerSnapshot) {\n currentHookNameInDev = 'useSyncExternalStore';\n updateHookTypesDev();\n return updateSyncExternalStore(subscribe, getSnapshot);\n },\n useId: function () {\n currentHookNameInDev = 'useId';\n updateHookTypesDev();\n return updateId();\n },\n unstable_isNewReconciler: enableNewReconciler\n };\n\n InvalidNestedHooksDispatcherOnMountInDEV = {\n readContext: function (context) {\n warnInvalidContextAccess();\n return readContext(context);\n },\n useCallback: function (callback, deps) {\n currentHookNameInDev = 'useCallback';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountCallback(callback, deps);\n },\n useContext: function (context) {\n currentHookNameInDev = 'useContext';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return readContext(context);\n },\n useEffect: function (create, deps) {\n currentHookNameInDev = 'useEffect';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountEffect(create, deps);\n },\n useImperativeHandle: function (ref, create, deps) {\n currentHookNameInDev = 'useImperativeHandle';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountImperativeHandle(ref, create, deps);\n },\n useInsertionEffect: function (create, deps) {\n currentHookNameInDev = 'useInsertionEffect';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountInsertionEffect(create, deps);\n },\n useLayoutEffect: function (create, deps) {\n currentHookNameInDev = 'useLayoutEffect';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountLayoutEffect(create, deps);\n },\n useMemo: function (create, deps) {\n currentHookNameInDev = 'useMemo';\n warnInvalidHookAccess();\n mountHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;\n\n try {\n return mountMemo(create, deps);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useReducer: function (reducer, initialArg, init) {\n currentHookNameInDev = 'useReducer';\n warnInvalidHookAccess();\n mountHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;\n\n try {\n return mountReducer(reducer, initialArg, init);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useRef: function (initialValue) {\n currentHookNameInDev = 'useRef';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountRef(initialValue);\n },\n useState: function (initialState) {\n currentHookNameInDev = 'useState';\n warnInvalidHookAccess();\n mountHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnMountInDEV;\n\n try {\n return mountState(initialState);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useDebugValue: function (value, formatterFn) {\n currentHookNameInDev = 'useDebugValue';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountDebugValue();\n },\n useDeferredValue: function (value) {\n currentHookNameInDev = 'useDeferredValue';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountDeferredValue(value);\n },\n useTransition: function () {\n currentHookNameInDev = 'useTransition';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountTransition();\n },\n useMutableSource: function (source, getSnapshot, subscribe) {\n currentHookNameInDev = 'useMutableSource';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountMutableSource();\n },\n useSyncExternalStore: function (subscribe, getSnapshot, getServerSnapshot) {\n currentHookNameInDev = 'useSyncExternalStore';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n },\n useId: function () {\n currentHookNameInDev = 'useId';\n warnInvalidHookAccess();\n mountHookTypesDev();\n return mountId();\n },\n unstable_isNewReconciler: enableNewReconciler\n };\n\n InvalidNestedHooksDispatcherOnUpdateInDEV = {\n readContext: function (context) {\n warnInvalidContextAccess();\n return readContext(context);\n },\n useCallback: function (callback, deps) {\n currentHookNameInDev = 'useCallback';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateCallback(callback, deps);\n },\n useContext: function (context) {\n currentHookNameInDev = 'useContext';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return readContext(context);\n },\n useEffect: function (create, deps) {\n currentHookNameInDev = 'useEffect';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateEffect(create, deps);\n },\n useImperativeHandle: function (ref, create, deps) {\n currentHookNameInDev = 'useImperativeHandle';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateImperativeHandle(ref, create, deps);\n },\n useInsertionEffect: function (create, deps) {\n currentHookNameInDev = 'useInsertionEffect';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateInsertionEffect(create, deps);\n },\n useLayoutEffect: function (create, deps) {\n currentHookNameInDev = 'useLayoutEffect';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateLayoutEffect(create, deps);\n },\n useMemo: function (create, deps) {\n currentHookNameInDev = 'useMemo';\n warnInvalidHookAccess();\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;\n\n try {\n return updateMemo(create, deps);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useReducer: function (reducer, initialArg, init) {\n currentHookNameInDev = 'useReducer';\n warnInvalidHookAccess();\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;\n\n try {\n return updateReducer(reducer, initialArg, init);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useRef: function (initialValue) {\n currentHookNameInDev = 'useRef';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateRef();\n },\n useState: function (initialState) {\n currentHookNameInDev = 'useState';\n warnInvalidHookAccess();\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;\n\n try {\n return updateState(initialState);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useDebugValue: function (value, formatterFn) {\n currentHookNameInDev = 'useDebugValue';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateDebugValue();\n },\n useDeferredValue: function (value) {\n currentHookNameInDev = 'useDeferredValue';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateDeferredValue(value);\n },\n useTransition: function () {\n currentHookNameInDev = 'useTransition';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateTransition();\n },\n useMutableSource: function (source, getSnapshot, subscribe) {\n currentHookNameInDev = 'useMutableSource';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateMutableSource();\n },\n useSyncExternalStore: function (subscribe, getSnapshot, getServerSnapshot) {\n currentHookNameInDev = 'useSyncExternalStore';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateSyncExternalStore(subscribe, getSnapshot);\n },\n useId: function () {\n currentHookNameInDev = 'useId';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateId();\n },\n unstable_isNewReconciler: enableNewReconciler\n };\n\n InvalidNestedHooksDispatcherOnRerenderInDEV = {\n readContext: function (context) {\n warnInvalidContextAccess();\n return readContext(context);\n },\n useCallback: function (callback, deps) {\n currentHookNameInDev = 'useCallback';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateCallback(callback, deps);\n },\n useContext: function (context) {\n currentHookNameInDev = 'useContext';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return readContext(context);\n },\n useEffect: function (create, deps) {\n currentHookNameInDev = 'useEffect';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateEffect(create, deps);\n },\n useImperativeHandle: function (ref, create, deps) {\n currentHookNameInDev = 'useImperativeHandle';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateImperativeHandle(ref, create, deps);\n },\n useInsertionEffect: function (create, deps) {\n currentHookNameInDev = 'useInsertionEffect';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateInsertionEffect(create, deps);\n },\n useLayoutEffect: function (create, deps) {\n currentHookNameInDev = 'useLayoutEffect';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateLayoutEffect(create, deps);\n },\n useMemo: function (create, deps) {\n currentHookNameInDev = 'useMemo';\n warnInvalidHookAccess();\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;\n\n try {\n return updateMemo(create, deps);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useReducer: function (reducer, initialArg, init) {\n currentHookNameInDev = 'useReducer';\n warnInvalidHookAccess();\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;\n\n try {\n return rerenderReducer(reducer, initialArg, init);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useRef: function (initialValue) {\n currentHookNameInDev = 'useRef';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateRef();\n },\n useState: function (initialState) {\n currentHookNameInDev = 'useState';\n warnInvalidHookAccess();\n updateHookTypesDev();\n var prevDispatcher = ReactCurrentDispatcher$1.current;\n ReactCurrentDispatcher$1.current = InvalidNestedHooksDispatcherOnUpdateInDEV;\n\n try {\n return rerenderState(initialState);\n } finally {\n ReactCurrentDispatcher$1.current = prevDispatcher;\n }\n },\n useDebugValue: function (value, formatterFn) {\n currentHookNameInDev = 'useDebugValue';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateDebugValue();\n },\n useDeferredValue: function (value) {\n currentHookNameInDev = 'useDeferredValue';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return rerenderDeferredValue(value);\n },\n useTransition: function () {\n currentHookNameInDev = 'useTransition';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return rerenderTransition();\n },\n useMutableSource: function (source, getSnapshot, subscribe) {\n currentHookNameInDev = 'useMutableSource';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateMutableSource();\n },\n useSyncExternalStore: function (subscribe, getSnapshot, getServerSnapshot) {\n currentHookNameInDev = 'useSyncExternalStore';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateSyncExternalStore(subscribe, getSnapshot);\n },\n useId: function () {\n currentHookNameInDev = 'useId';\n warnInvalidHookAccess();\n updateHookTypesDev();\n return updateId();\n },\n unstable_isNewReconciler: enableNewReconciler\n };\n}\n\nvar now$1 = Scheduler.unstable_now;\nvar commitTime = 0;\nvar layoutEffectStartTime = -1;\nvar profilerStartTime = -1;\nvar passiveEffectStartTime = -1;\n/**\n * Tracks whether the current update was a nested/cascading update (scheduled from a layout effect).\n *\n * The overall sequence is:\n * 1. render\n * 2. commit (and call `onRender`, `onCommit`)\n * 3. check for nested updates\n * 4. flush passive effects (and call `onPostCommit`)\n *\n * Nested updates are identified in step 3 above,\n * but step 4 still applies to the work that was just committed.\n * We use two flags to track nested updates then:\n * one tracks whether the upcoming update is a nested update,\n * and the other tracks whether the current update was a nested update.\n * The first value gets synced to the second at the start of the render phase.\n */\n\nvar currentUpdateIsNested = false;\nvar nestedUpdateScheduled = false;\n\nfunction isCurrentUpdateNested() {\n return currentUpdateIsNested;\n}\n\nfunction markNestedUpdateScheduled() {\n {\n nestedUpdateScheduled = true;\n }\n}\n\nfunction resetNestedUpdateFlag() {\n {\n currentUpdateIsNested = false;\n nestedUpdateScheduled = false;\n }\n}\n\nfunction syncNestedUpdateFlag() {\n {\n currentUpdateIsNested = nestedUpdateScheduled;\n nestedUpdateScheduled = false;\n }\n}\n\nfunction getCommitTime() {\n return commitTime;\n}\n\nfunction recordCommitTime() {\n\n commitTime = now$1();\n}\n\nfunction startProfilerTimer(fiber) {\n\n profilerStartTime = now$1();\n\n if (fiber.actualStartTime < 0) {\n fiber.actualStartTime = now$1();\n }\n}\n\nfunction stopProfilerTimerIfRunning(fiber) {\n\n profilerStartTime = -1;\n}\n\nfunction stopProfilerTimerIfRunningAndRecordDelta(fiber, overrideBaseTime) {\n\n if (profilerStartTime >= 0) {\n var elapsedTime = now$1() - profilerStartTime;\n fiber.actualDuration += elapsedTime;\n\n if (overrideBaseTime) {\n fiber.selfBaseDuration = elapsedTime;\n }\n\n profilerStartTime = -1;\n }\n}\n\nfunction recordLayoutEffectDuration(fiber) {\n\n if (layoutEffectStartTime >= 0) {\n var elapsedTime = now$1() - layoutEffectStartTime;\n layoutEffectStartTime = -1; // Store duration on the next nearest Profiler ancestor\n // Or the root (for the DevTools Profiler to read)\n\n var parentFiber = fiber.return;\n\n while (parentFiber !== null) {\n switch (parentFiber.tag) {\n case HostRoot:\n var root = parentFiber.stateNode;\n root.effectDuration += elapsedTime;\n return;\n\n case Profiler:\n var parentStateNode = parentFiber.stateNode;\n parentStateNode.effectDuration += elapsedTime;\n return;\n }\n\n parentFiber = parentFiber.return;\n }\n }\n}\n\nfunction recordPassiveEffectDuration(fiber) {\n\n if (passiveEffectStartTime >= 0) {\n var elapsedTime = now$1() - passiveEffectStartTime;\n passiveEffectStartTime = -1; // Store duration on the next nearest Profiler ancestor\n // Or the root (for the DevTools Profiler to read)\n\n var parentFiber = fiber.return;\n\n while (parentFiber !== null) {\n switch (parentFiber.tag) {\n case HostRoot:\n var root = parentFiber.stateNode;\n\n if (root !== null) {\n root.passiveEffectDuration += elapsedTime;\n }\n\n return;\n\n case Profiler:\n var parentStateNode = parentFiber.stateNode;\n\n if (parentStateNode !== null) {\n // Detached fibers have their state node cleared out.\n // In this case, the return pointer is also cleared out,\n // so we won't be able to report the time spent in this Profiler's subtree.\n parentStateNode.passiveEffectDuration += elapsedTime;\n }\n\n return;\n }\n\n parentFiber = parentFiber.return;\n }\n }\n}\n\nfunction startLayoutEffectTimer() {\n\n layoutEffectStartTime = now$1();\n}\n\nfunction startPassiveEffectTimer() {\n\n passiveEffectStartTime = now$1();\n}\n\nfunction transferActualDuration(fiber) {\n // Transfer time spent rendering these children so we don't lose it\n // after we rerender. This is used as a helper in special cases\n // where we should count the work of multiple passes.\n var child = fiber.child;\n\n while (child) {\n fiber.actualDuration += child.actualDuration;\n child = child.sibling;\n }\n}\n\nfunction resolveDefaultProps(Component, baseProps) {\n if (Component && Component.defaultProps) {\n // Resolve default props. Taken from ReactElement\n var props = assign({}, baseProps);\n var defaultProps = Component.defaultProps;\n\n for (var propName in defaultProps) {\n if (props[propName] === undefined) {\n props[propName] = defaultProps[propName];\n }\n }\n\n return props;\n }\n\n return baseProps;\n}\n\nvar fakeInternalInstance = {};\nvar didWarnAboutStateAssignmentForComponent;\nvar didWarnAboutUninitializedState;\nvar didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate;\nvar didWarnAboutLegacyLifecyclesAndDerivedState;\nvar didWarnAboutUndefinedDerivedState;\nvar warnOnUndefinedDerivedState;\nvar warnOnInvalidCallback;\nvar didWarnAboutDirectlyAssigningPropsToState;\nvar didWarnAboutContextTypeAndContextTypes;\nvar didWarnAboutInvalidateContextType;\nvar didWarnAboutLegacyContext$1;\n\n{\n didWarnAboutStateAssignmentForComponent = new Set();\n didWarnAboutUninitializedState = new Set();\n didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate = new Set();\n didWarnAboutLegacyLifecyclesAndDerivedState = new Set();\n didWarnAboutDirectlyAssigningPropsToState = new Set();\n didWarnAboutUndefinedDerivedState = new Set();\n didWarnAboutContextTypeAndContextTypes = new Set();\n didWarnAboutInvalidateContextType = new Set();\n didWarnAboutLegacyContext$1 = new Set();\n var didWarnOnInvalidCallback = new Set();\n\n warnOnInvalidCallback = function (callback, callerName) {\n if (callback === null || typeof callback === 'function') {\n return;\n }\n\n var key = callerName + '_' + callback;\n\n if (!didWarnOnInvalidCallback.has(key)) {\n didWarnOnInvalidCallback.add(key);\n\n error('%s(...): Expected the last optional `callback` argument to be a ' + 'function. Instead received: %s.', callerName, callback);\n }\n };\n\n warnOnUndefinedDerivedState = function (type, partialState) {\n if (partialState === undefined) {\n var componentName = getComponentNameFromType(type) || 'Component';\n\n if (!didWarnAboutUndefinedDerivedState.has(componentName)) {\n didWarnAboutUndefinedDerivedState.add(componentName);\n\n error('%s.getDerivedStateFromProps(): A valid state object (or null) must be returned. ' + 'You have returned undefined.', componentName);\n }\n }\n }; // This is so gross but it's at least non-critical and can be removed if\n // it causes problems. This is meant to give a nicer error message for\n // ReactDOM15.unstable_renderSubtreeIntoContainer(reactDOM16Component,\n // ...)) which otherwise throws a \"_processChildContext is not a function\"\n // exception.\n\n\n Object.defineProperty(fakeInternalInstance, '_processChildContext', {\n enumerable: false,\n value: function () {\n throw new Error('_processChildContext is not available in React 16+. This likely ' + 'means you have multiple copies of React and are attempting to nest ' + 'a React 15 tree inside a React 16 tree using ' + \"unstable_renderSubtreeIntoContainer, which isn't supported. Try \" + 'to make sure you have only one copy of React (and ideally, switch ' + 'to ReactDOM.createPortal).');\n }\n });\n Object.freeze(fakeInternalInstance);\n}\n\nfunction applyDerivedStateFromProps(workInProgress, ctor, getDerivedStateFromProps, nextProps) {\n var prevState = workInProgress.memoizedState;\n var partialState = getDerivedStateFromProps(nextProps, prevState);\n\n {\n if ( workInProgress.mode & StrictLegacyMode) {\n setIsStrictModeForDevtools(true);\n\n try {\n // Invoke the function an extra time to help detect side-effects.\n partialState = getDerivedStateFromProps(nextProps, prevState);\n } finally {\n setIsStrictModeForDevtools(false);\n }\n }\n\n warnOnUndefinedDerivedState(ctor, partialState);\n } // Merge the partial state and the previous state.\n\n\n var memoizedState = partialState === null || partialState === undefined ? prevState : assign({}, prevState, partialState);\n workInProgress.memoizedState = memoizedState; // Once the update queue is empty, persist the derived state onto the\n // base state.\n\n if (workInProgress.lanes === NoLanes) {\n // Queue is always non-null for classes\n var updateQueue = workInProgress.updateQueue;\n updateQueue.baseState = memoizedState;\n }\n}\n\nvar classComponentUpdater = {\n isMounted: isMounted,\n enqueueSetState: function (inst, payload, callback) {\n var fiber = get(inst);\n var eventTime = requestEventTime();\n var lane = requestUpdateLane(fiber);\n var update = createUpdate(eventTime, lane);\n update.payload = payload;\n\n if (callback !== undefined && callback !== null) {\n {\n warnOnInvalidCallback(callback, 'setState');\n }\n\n update.callback = callback;\n }\n\n var root = enqueueUpdate(fiber, update, lane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, fiber, lane, eventTime);\n entangleTransitions(root, fiber, lane);\n }\n\n {\n markStateUpdateScheduled(fiber, lane);\n }\n },\n enqueueReplaceState: function (inst, payload, callback) {\n var fiber = get(inst);\n var eventTime = requestEventTime();\n var lane = requestUpdateLane(fiber);\n var update = createUpdate(eventTime, lane);\n update.tag = ReplaceState;\n update.payload = payload;\n\n if (callback !== undefined && callback !== null) {\n {\n warnOnInvalidCallback(callback, 'replaceState');\n }\n\n update.callback = callback;\n }\n\n var root = enqueueUpdate(fiber, update, lane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, fiber, lane, eventTime);\n entangleTransitions(root, fiber, lane);\n }\n\n {\n markStateUpdateScheduled(fiber, lane);\n }\n },\n enqueueForceUpdate: function (inst, callback) {\n var fiber = get(inst);\n var eventTime = requestEventTime();\n var lane = requestUpdateLane(fiber);\n var update = createUpdate(eventTime, lane);\n update.tag = ForceUpdate;\n\n if (callback !== undefined && callback !== null) {\n {\n warnOnInvalidCallback(callback, 'forceUpdate');\n }\n\n update.callback = callback;\n }\n\n var root = enqueueUpdate(fiber, update, lane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, fiber, lane, eventTime);\n entangleTransitions(root, fiber, lane);\n }\n\n {\n markForceUpdateScheduled(fiber, lane);\n }\n }\n};\n\nfunction checkShouldComponentUpdate(workInProgress, ctor, oldProps, newProps, oldState, newState, nextContext) {\n var instance = workInProgress.stateNode;\n\n if (typeof instance.shouldComponentUpdate === 'function') {\n var shouldUpdate = instance.shouldComponentUpdate(newProps, newState, nextContext);\n\n {\n if ( workInProgress.mode & StrictLegacyMode) {\n setIsStrictModeForDevtools(true);\n\n try {\n // Invoke the function an extra time to help detect side-effects.\n shouldUpdate = instance.shouldComponentUpdate(newProps, newState, nextContext);\n } finally {\n setIsStrictModeForDevtools(false);\n }\n }\n\n if (shouldUpdate === undefined) {\n error('%s.shouldComponentUpdate(): Returned undefined instead of a ' + 'boolean value. Make sure to return true or false.', getComponentNameFromType(ctor) || 'Component');\n }\n }\n\n return shouldUpdate;\n }\n\n if (ctor.prototype && ctor.prototype.isPureReactComponent) {\n return !shallowEqual(oldProps, newProps) || !shallowEqual(oldState, newState);\n }\n\n return true;\n}\n\nfunction checkClassInstance(workInProgress, ctor, newProps) {\n var instance = workInProgress.stateNode;\n\n {\n var name = getComponentNameFromType(ctor) || 'Component';\n var renderPresent = instance.render;\n\n if (!renderPresent) {\n if (ctor.prototype && typeof ctor.prototype.render === 'function') {\n error('%s(...): No `render` method found on the returned component ' + 'instance: did you accidentally return an object from the constructor?', name);\n } else {\n error('%s(...): No `render` method found on the returned component ' + 'instance: you may have forgotten to define `render`.', name);\n }\n }\n\n if (instance.getInitialState && !instance.getInitialState.isReactClassApproved && !instance.state) {\n error('getInitialState was defined on %s, a plain JavaScript class. ' + 'This is only supported for classes created using React.createClass. ' + 'Did you mean to define a state property instead?', name);\n }\n\n if (instance.getDefaultProps && !instance.getDefaultProps.isReactClassApproved) {\n error('getDefaultProps was defined on %s, a plain JavaScript class. ' + 'This is only supported for classes created using React.createClass. ' + 'Use a static property to define defaultProps instead.', name);\n }\n\n if (instance.propTypes) {\n error('propTypes was defined as an instance property on %s. Use a static ' + 'property to define propTypes instead.', name);\n }\n\n if (instance.contextType) {\n error('contextType was defined as an instance property on %s. Use a static ' + 'property to define contextType instead.', name);\n }\n\n {\n if (ctor.childContextTypes && !didWarnAboutLegacyContext$1.has(ctor) && // Strict Mode has its own warning for legacy context, so we can skip\n // this one.\n (workInProgress.mode & StrictLegacyMode) === NoMode) {\n didWarnAboutLegacyContext$1.add(ctor);\n\n error('%s uses the legacy childContextTypes API which is no longer ' + 'supported and will be removed in the next major release. Use ' + 'React.createContext() instead\\n\\n.' + 'Learn more about this warning here: https://reactjs.org/link/legacy-context', name);\n }\n\n if (ctor.contextTypes && !didWarnAboutLegacyContext$1.has(ctor) && // Strict Mode has its own warning for legacy context, so we can skip\n // this one.\n (workInProgress.mode & StrictLegacyMode) === NoMode) {\n didWarnAboutLegacyContext$1.add(ctor);\n\n error('%s uses the legacy contextTypes API which is no longer supported ' + 'and will be removed in the next major release. Use ' + 'React.createContext() with static contextType instead.\\n\\n' + 'Learn more about this warning here: https://reactjs.org/link/legacy-context', name);\n }\n\n if (instance.contextTypes) {\n error('contextTypes was defined as an instance property on %s. Use a static ' + 'property to define contextTypes instead.', name);\n }\n\n if (ctor.contextType && ctor.contextTypes && !didWarnAboutContextTypeAndContextTypes.has(ctor)) {\n didWarnAboutContextTypeAndContextTypes.add(ctor);\n\n error('%s declares both contextTypes and contextType static properties. ' + 'The legacy contextTypes property will be ignored.', name);\n }\n }\n\n if (typeof instance.componentShouldUpdate === 'function') {\n error('%s has a method called ' + 'componentShouldUpdate(). Did you mean shouldComponentUpdate()? ' + 'The name is phrased as a question because the function is ' + 'expected to return a value.', name);\n }\n\n if (ctor.prototype && ctor.prototype.isPureReactComponent && typeof instance.shouldComponentUpdate !== 'undefined') {\n error('%s has a method called shouldComponentUpdate(). ' + 'shouldComponentUpdate should not be used when extending React.PureComponent. ' + 'Please extend React.Component if shouldComponentUpdate is used.', getComponentNameFromType(ctor) || 'A pure component');\n }\n\n if (typeof instance.componentDidUnmount === 'function') {\n error('%s has a method called ' + 'componentDidUnmount(). But there is no such lifecycle method. ' + 'Did you mean componentWillUnmount()?', name);\n }\n\n if (typeof instance.componentDidReceiveProps === 'function') {\n error('%s has a method called ' + 'componentDidReceiveProps(). But there is no such lifecycle method. ' + 'If you meant to update the state in response to changing props, ' + 'use componentWillReceiveProps(). If you meant to fetch data or ' + 'run side-effects or mutations after React has updated the UI, use componentDidUpdate().', name);\n }\n\n if (typeof instance.componentWillRecieveProps === 'function') {\n error('%s has a method called ' + 'componentWillRecieveProps(). Did you mean componentWillReceiveProps()?', name);\n }\n\n if (typeof instance.UNSAFE_componentWillRecieveProps === 'function') {\n error('%s has a method called ' + 'UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?', name);\n }\n\n var hasMutatedProps = instance.props !== newProps;\n\n if (instance.props !== undefined && hasMutatedProps) {\n error('%s(...): When calling super() in `%s`, make sure to pass ' + \"up the same props that your component's constructor was passed.\", name, name);\n }\n\n if (instance.defaultProps) {\n error('Setting defaultProps as an instance property on %s is not supported and will be ignored.' + ' Instead, define defaultProps as a static property on %s.', name, name);\n }\n\n if (typeof instance.getSnapshotBeforeUpdate === 'function' && typeof instance.componentDidUpdate !== 'function' && !didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate.has(ctor)) {\n didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate.add(ctor);\n\n error('%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). ' + 'This component defines getSnapshotBeforeUpdate() only.', getComponentNameFromType(ctor));\n }\n\n if (typeof instance.getDerivedStateFromProps === 'function') {\n error('%s: getDerivedStateFromProps() is defined as an instance method ' + 'and will be ignored. Instead, declare it as a static method.', name);\n }\n\n if (typeof instance.getDerivedStateFromError === 'function') {\n error('%s: getDerivedStateFromError() is defined as an instance method ' + 'and will be ignored. Instead, declare it as a static method.', name);\n }\n\n if (typeof ctor.getSnapshotBeforeUpdate === 'function') {\n error('%s: getSnapshotBeforeUpdate() is defined as a static method ' + 'and will be ignored. Instead, declare it as an instance method.', name);\n }\n\n var _state = instance.state;\n\n if (_state && (typeof _state !== 'object' || isArray(_state))) {\n error('%s.state: must be set to an object or null', name);\n }\n\n if (typeof instance.getChildContext === 'function' && typeof ctor.childContextTypes !== 'object') {\n error('%s.getChildContext(): childContextTypes must be defined in order to ' + 'use getChildContext().', name);\n }\n }\n}\n\nfunction adoptClassInstance(workInProgress, instance) {\n instance.updater = classComponentUpdater;\n workInProgress.stateNode = instance; // The instance needs access to the fiber so that it can schedule updates\n\n set(instance, workInProgress);\n\n {\n instance._reactInternalInstance = fakeInternalInstance;\n }\n}\n\nfunction constructClassInstance(workInProgress, ctor, props) {\n var isLegacyContextConsumer = false;\n var unmaskedContext = emptyContextObject;\n var context = emptyContextObject;\n var contextType = ctor.contextType;\n\n {\n if ('contextType' in ctor) {\n var isValid = // Allow null for conditional declaration\n contextType === null || contextType !== undefined && contextType.$$typeof === REACT_CONTEXT_TYPE && contextType._context === undefined; // Not a <Context.Consumer>\n\n if (!isValid && !didWarnAboutInvalidateContextType.has(ctor)) {\n didWarnAboutInvalidateContextType.add(ctor);\n var addendum = '';\n\n if (contextType === undefined) {\n addendum = ' However, it is set to undefined. ' + 'This can be caused by a typo or by mixing up named and default imports. ' + 'This can also happen due to a circular dependency, so ' + 'try moving the createContext() call to a separate file.';\n } else if (typeof contextType !== 'object') {\n addendum = ' However, it is set to a ' + typeof contextType + '.';\n } else if (contextType.$$typeof === REACT_PROVIDER_TYPE) {\n addendum = ' Did you accidentally pass the Context.Provider instead?';\n } else if (contextType._context !== undefined) {\n // <Context.Consumer>\n addendum = ' Did you accidentally pass the Context.Consumer instead?';\n } else {\n addendum = ' However, it is set to an object with keys {' + Object.keys(contextType).join(', ') + '}.';\n }\n\n error('%s defines an invalid contextType. ' + 'contextType should point to the Context object returned by React.createContext().%s', getComponentNameFromType(ctor) || 'Component', addendum);\n }\n }\n }\n\n if (typeof contextType === 'object' && contextType !== null) {\n context = readContext(contextType);\n } else {\n unmaskedContext = getUnmaskedContext(workInProgress, ctor, true);\n var contextTypes = ctor.contextTypes;\n isLegacyContextConsumer = contextTypes !== null && contextTypes !== undefined;\n context = isLegacyContextConsumer ? getMaskedContext(workInProgress, unmaskedContext) : emptyContextObject;\n }\n\n var instance = new ctor(props, context); // Instantiate twice to help detect side-effects.\n\n {\n if ( workInProgress.mode & StrictLegacyMode) {\n setIsStrictModeForDevtools(true);\n\n try {\n instance = new ctor(props, context); // eslint-disable-line no-new\n } finally {\n setIsStrictModeForDevtools(false);\n }\n }\n }\n\n var state = workInProgress.memoizedState = instance.state !== null && instance.state !== undefined ? instance.state : null;\n adoptClassInstance(workInProgress, instance);\n\n {\n if (typeof ctor.getDerivedStateFromProps === 'function' && state === null) {\n var componentName = getComponentNameFromType(ctor) || 'Component';\n\n if (!didWarnAboutUninitializedState.has(componentName)) {\n didWarnAboutUninitializedState.add(componentName);\n\n error('`%s` uses `getDerivedStateFromProps` but its initial state is ' + '%s. This is not recommended. Instead, define the initial state by ' + 'assigning an object to `this.state` in the constructor of `%s`. ' + 'This ensures that `getDerivedStateFromProps` arguments have a consistent shape.', componentName, instance.state === null ? 'null' : 'undefined', componentName);\n }\n } // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Warn about these lifecycles if they are present.\n // Don't warn about react-lifecycles-compat polyfilled methods though.\n\n\n if (typeof ctor.getDerivedStateFromProps === 'function' || typeof instance.getSnapshotBeforeUpdate === 'function') {\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n\n if (typeof instance.componentWillMount === 'function' && instance.componentWillMount.__suppressDeprecationWarning !== true) {\n foundWillMountName = 'componentWillMount';\n } else if (typeof instance.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n\n if (typeof instance.componentWillReceiveProps === 'function' && instance.componentWillReceiveProps.__suppressDeprecationWarning !== true) {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof instance.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n\n if (typeof instance.componentWillUpdate === 'function' && instance.componentWillUpdate.__suppressDeprecationWarning !== true) {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof instance.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n\n if (foundWillMountName !== null || foundWillReceivePropsName !== null || foundWillUpdateName !== null) {\n var _componentName = getComponentNameFromType(ctor) || 'Component';\n\n var newApiName = typeof ctor.getDerivedStateFromProps === 'function' ? 'getDerivedStateFromProps()' : 'getSnapshotBeforeUpdate()';\n\n if (!didWarnAboutLegacyLifecyclesAndDerivedState.has(_componentName)) {\n didWarnAboutLegacyLifecyclesAndDerivedState.add(_componentName);\n\n error('Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' + '%s uses %s but also contains the following legacy lifecycles:%s%s%s\\n\\n' + 'The above lifecycles should be removed. Learn more about this warning here:\\n' + 'https://reactjs.org/link/unsafe-component-lifecycles', _componentName, newApiName, foundWillMountName !== null ? \"\\n \" + foundWillMountName : '', foundWillReceivePropsName !== null ? \"\\n \" + foundWillReceivePropsName : '', foundWillUpdateName !== null ? \"\\n \" + foundWillUpdateName : '');\n }\n }\n }\n } // Cache unmasked context so we can avoid recreating masked context unless necessary.\n // ReactFiberContext usually updates this cache but can't for newly-created instances.\n\n\n if (isLegacyContextConsumer) {\n cacheContext(workInProgress, unmaskedContext, context);\n }\n\n return instance;\n}\n\nfunction callComponentWillMount(workInProgress, instance) {\n var oldState = instance.state;\n\n if (typeof instance.componentWillMount === 'function') {\n instance.componentWillMount();\n }\n\n if (typeof instance.UNSAFE_componentWillMount === 'function') {\n instance.UNSAFE_componentWillMount();\n }\n\n if (oldState !== instance.state) {\n {\n error('%s.componentWillMount(): Assigning directly to this.state is ' + \"deprecated (except inside a component's \" + 'constructor). Use setState instead.', getComponentNameFromFiber(workInProgress) || 'Component');\n }\n\n classComponentUpdater.enqueueReplaceState(instance, instance.state, null);\n }\n}\n\nfunction callComponentWillReceiveProps(workInProgress, instance, newProps, nextContext) {\n var oldState = instance.state;\n\n if (typeof instance.componentWillReceiveProps === 'function') {\n instance.componentWillReceiveProps(newProps, nextContext);\n }\n\n if (typeof instance.UNSAFE_componentWillReceiveProps === 'function') {\n instance.UNSAFE_componentWillReceiveProps(newProps, nextContext);\n }\n\n if (instance.state !== oldState) {\n {\n var componentName = getComponentNameFromFiber(workInProgress) || 'Component';\n\n if (!didWarnAboutStateAssignmentForComponent.has(componentName)) {\n didWarnAboutStateAssignmentForComponent.add(componentName);\n\n error('%s.componentWillReceiveProps(): Assigning directly to ' + \"this.state is deprecated (except inside a component's \" + 'constructor). Use setState instead.', componentName);\n }\n }\n\n classComponentUpdater.enqueueReplaceState(instance, instance.state, null);\n }\n} // Invokes the mount life-cycles on a previously never rendered instance.\n\n\nfunction mountClassInstance(workInProgress, ctor, newProps, renderLanes) {\n {\n checkClassInstance(workInProgress, ctor, newProps);\n }\n\n var instance = workInProgress.stateNode;\n instance.props = newProps;\n instance.state = workInProgress.memoizedState;\n instance.refs = {};\n initializeUpdateQueue(workInProgress);\n var contextType = ctor.contextType;\n\n if (typeof contextType === 'object' && contextType !== null) {\n instance.context = readContext(contextType);\n } else {\n var unmaskedContext = getUnmaskedContext(workInProgress, ctor, true);\n instance.context = getMaskedContext(workInProgress, unmaskedContext);\n }\n\n {\n if (instance.state === newProps) {\n var componentName = getComponentNameFromType(ctor) || 'Component';\n\n if (!didWarnAboutDirectlyAssigningPropsToState.has(componentName)) {\n didWarnAboutDirectlyAssigningPropsToState.add(componentName);\n\n error('%s: It is not recommended to assign props directly to state ' + \"because updates to props won't be reflected in state. \" + 'In most cases, it is better to use props directly.', componentName);\n }\n }\n\n if (workInProgress.mode & StrictLegacyMode) {\n ReactStrictModeWarnings.recordLegacyContextWarning(workInProgress, instance);\n }\n\n {\n ReactStrictModeWarnings.recordUnsafeLifecycleWarnings(workInProgress, instance);\n }\n }\n\n instance.state = workInProgress.memoizedState;\n var getDerivedStateFromProps = ctor.getDerivedStateFromProps;\n\n if (typeof getDerivedStateFromProps === 'function') {\n applyDerivedStateFromProps(workInProgress, ctor, getDerivedStateFromProps, newProps);\n instance.state = workInProgress.memoizedState;\n } // In order to support react-lifecycles-compat polyfilled components,\n // Unsafe lifecycles should not be invoked for components using the new APIs.\n\n\n if (typeof ctor.getDerivedStateFromProps !== 'function' && typeof instance.getSnapshotBeforeUpdate !== 'function' && (typeof instance.UNSAFE_componentWillMount === 'function' || typeof instance.componentWillMount === 'function')) {\n callComponentWillMount(workInProgress, instance); // If we had additional state updates during this life-cycle, let's\n // process them now.\n\n processUpdateQueue(workInProgress, newProps, instance, renderLanes);\n instance.state = workInProgress.memoizedState;\n }\n\n if (typeof instance.componentDidMount === 'function') {\n var fiberFlags = Update;\n\n {\n fiberFlags |= LayoutStatic;\n }\n\n if ( (workInProgress.mode & StrictEffectsMode) !== NoMode) {\n fiberFlags |= MountLayoutDev;\n }\n\n workInProgress.flags |= fiberFlags;\n }\n}\n\nfunction resumeMountClassInstance(workInProgress, ctor, newProps, renderLanes) {\n var instance = workInProgress.stateNode;\n var oldProps = workInProgress.memoizedProps;\n instance.props = oldProps;\n var oldContext = instance.context;\n var contextType = ctor.contextType;\n var nextContext = emptyContextObject;\n\n if (typeof contextType === 'object' && contextType !== null) {\n nextContext = readContext(contextType);\n } else {\n var nextLegacyUnmaskedContext = getUnmaskedContext(workInProgress, ctor, true);\n nextContext = getMaskedContext(workInProgress, nextLegacyUnmaskedContext);\n }\n\n var getDerivedStateFromProps = ctor.getDerivedStateFromProps;\n var hasNewLifecycles = typeof getDerivedStateFromProps === 'function' || typeof instance.getSnapshotBeforeUpdate === 'function'; // Note: During these life-cycles, instance.props/instance.state are what\n // ever the previously attempted to render - not the \"current\". However,\n // during componentDidUpdate we pass the \"current\" props.\n // In order to support react-lifecycles-compat polyfilled components,\n // Unsafe lifecycles should not be invoked for components using the new APIs.\n\n if (!hasNewLifecycles && (typeof instance.UNSAFE_componentWillReceiveProps === 'function' || typeof instance.componentWillReceiveProps === 'function')) {\n if (oldProps !== newProps || oldContext !== nextContext) {\n callComponentWillReceiveProps(workInProgress, instance, newProps, nextContext);\n }\n }\n\n resetHasForceUpdateBeforeProcessing();\n var oldState = workInProgress.memoizedState;\n var newState = instance.state = oldState;\n processUpdateQueue(workInProgress, newProps, instance, renderLanes);\n newState = workInProgress.memoizedState;\n\n if (oldProps === newProps && oldState === newState && !hasContextChanged() && !checkHasForceUpdateAfterProcessing()) {\n // If an update was already in progress, we should schedule an Update\n // effect even though we're bailing out, so that cWU/cDU are called.\n if (typeof instance.componentDidMount === 'function') {\n var fiberFlags = Update;\n\n {\n fiberFlags |= LayoutStatic;\n }\n\n if ( (workInProgress.mode & StrictEffectsMode) !== NoMode) {\n fiberFlags |= MountLayoutDev;\n }\n\n workInProgress.flags |= fiberFlags;\n }\n\n return false;\n }\n\n if (typeof getDerivedStateFromProps === 'function') {\n applyDerivedStateFromProps(workInProgress, ctor, getDerivedStateFromProps, newProps);\n newState = workInProgress.memoizedState;\n }\n\n var shouldUpdate = checkHasForceUpdateAfterProcessing() || checkShouldComponentUpdate(workInProgress, ctor, oldProps, newProps, oldState, newState, nextContext);\n\n if (shouldUpdate) {\n // In order to support react-lifecycles-compat polyfilled components,\n // Unsafe lifecycles should not be invoked for components using the new APIs.\n if (!hasNewLifecycles && (typeof instance.UNSAFE_componentWillMount === 'function' || typeof instance.componentWillMount === 'function')) {\n if (typeof instance.componentWillMount === 'function') {\n instance.componentWillMount();\n }\n\n if (typeof instance.UNSAFE_componentWillMount === 'function') {\n instance.UNSAFE_componentWillMount();\n }\n }\n\n if (typeof instance.componentDidMount === 'function') {\n var _fiberFlags = Update;\n\n {\n _fiberFlags |= LayoutStatic;\n }\n\n if ( (workInProgress.mode & StrictEffectsMode) !== NoMode) {\n _fiberFlags |= MountLayoutDev;\n }\n\n workInProgress.flags |= _fiberFlags;\n }\n } else {\n // If an update was already in progress, we should schedule an Update\n // effect even though we're bailing out, so that cWU/cDU are called.\n if (typeof instance.componentDidMount === 'function') {\n var _fiberFlags2 = Update;\n\n {\n _fiberFlags2 |= LayoutStatic;\n }\n\n if ( (workInProgress.mode & StrictEffectsMode) !== NoMode) {\n _fiberFlags2 |= MountLayoutDev;\n }\n\n workInProgress.flags |= _fiberFlags2;\n } // If shouldComponentUpdate returned false, we should still update the\n // memoized state to indicate that this work can be reused.\n\n\n workInProgress.memoizedProps = newProps;\n workInProgress.memoizedState = newState;\n } // Update the existing instance's state, props, and context pointers even\n // if shouldComponentUpdate returns false.\n\n\n instance.props = newProps;\n instance.state = newState;\n instance.context = nextContext;\n return shouldUpdate;\n} // Invokes the update life-cycles and returns false if it shouldn't rerender.\n\n\nfunction updateClassInstance(current, workInProgress, ctor, newProps, renderLanes) {\n var instance = workInProgress.stateNode;\n cloneUpdateQueue(current, workInProgress);\n var unresolvedOldProps = workInProgress.memoizedProps;\n var oldProps = workInProgress.type === workInProgress.elementType ? unresolvedOldProps : resolveDefaultProps(workInProgress.type, unresolvedOldProps);\n instance.props = oldProps;\n var unresolvedNewProps = workInProgress.pendingProps;\n var oldContext = instance.context;\n var contextType = ctor.contextType;\n var nextContext = emptyContextObject;\n\n if (typeof contextType === 'object' && contextType !== null) {\n nextContext = readContext(contextType);\n } else {\n var nextUnmaskedContext = getUnmaskedContext(workInProgress, ctor, true);\n nextContext = getMaskedContext(workInProgress, nextUnmaskedContext);\n }\n\n var getDerivedStateFromProps = ctor.getDerivedStateFromProps;\n var hasNewLifecycles = typeof getDerivedStateFromProps === 'function' || typeof instance.getSnapshotBeforeUpdate === 'function'; // Note: During these life-cycles, instance.props/instance.state are what\n // ever the previously attempted to render - not the \"current\". However,\n // during componentDidUpdate we pass the \"current\" props.\n // In order to support react-lifecycles-compat polyfilled components,\n // Unsafe lifecycles should not be invoked for components using the new APIs.\n\n if (!hasNewLifecycles && (typeof instance.UNSAFE_componentWillReceiveProps === 'function' || typeof instance.componentWillReceiveProps === 'function')) {\n if (unresolvedOldProps !== unresolvedNewProps || oldContext !== nextContext) {\n callComponentWillReceiveProps(workInProgress, instance, newProps, nextContext);\n }\n }\n\n resetHasForceUpdateBeforeProcessing();\n var oldState = workInProgress.memoizedState;\n var newState = instance.state = oldState;\n processUpdateQueue(workInProgress, newProps, instance, renderLanes);\n newState = workInProgress.memoizedState;\n\n if (unresolvedOldProps === unresolvedNewProps && oldState === newState && !hasContextChanged() && !checkHasForceUpdateAfterProcessing() && !(enableLazyContextPropagation )) {\n // If an update was already in progress, we should schedule an Update\n // effect even though we're bailing out, so that cWU/cDU are called.\n if (typeof instance.componentDidUpdate === 'function') {\n if (unresolvedOldProps !== current.memoizedProps || oldState !== current.memoizedState) {\n workInProgress.flags |= Update;\n }\n }\n\n if (typeof instance.getSnapshotBeforeUpdate === 'function') {\n if (unresolvedOldProps !== current.memoizedProps || oldState !== current.memoizedState) {\n workInProgress.flags |= Snapshot;\n }\n }\n\n return false;\n }\n\n if (typeof getDerivedStateFromProps === 'function') {\n applyDerivedStateFromProps(workInProgress, ctor, getDerivedStateFromProps, newProps);\n newState = workInProgress.memoizedState;\n }\n\n var shouldUpdate = checkHasForceUpdateAfterProcessing() || checkShouldComponentUpdate(workInProgress, ctor, oldProps, newProps, oldState, newState, nextContext) || // TODO: In some cases, we'll end up checking if context has changed twice,\n // both before and after `shouldComponentUpdate` has been called. Not ideal,\n // but I'm loath to refactor this function. This only happens for memoized\n // components so it's not that common.\n enableLazyContextPropagation ;\n\n if (shouldUpdate) {\n // In order to support react-lifecycles-compat polyfilled components,\n // Unsafe lifecycles should not be invoked for components using the new APIs.\n if (!hasNewLifecycles && (typeof instance.UNSAFE_componentWillUpdate === 'function' || typeof instance.componentWillUpdate === 'function')) {\n if (typeof instance.componentWillUpdate === 'function') {\n instance.componentWillUpdate(newProps, newState, nextContext);\n }\n\n if (typeof instance.UNSAFE_componentWillUpdate === 'function') {\n instance.UNSAFE_componentWillUpdate(newProps, newState, nextContext);\n }\n }\n\n if (typeof instance.componentDidUpdate === 'function') {\n workInProgress.flags |= Update;\n }\n\n if (typeof instance.getSnapshotBeforeUpdate === 'function') {\n workInProgress.flags |= Snapshot;\n }\n } else {\n // If an update was already in progress, we should schedule an Update\n // effect even though we're bailing out, so that cWU/cDU are called.\n if (typeof instance.componentDidUpdate === 'function') {\n if (unresolvedOldProps !== current.memoizedProps || oldState !== current.memoizedState) {\n workInProgress.flags |= Update;\n }\n }\n\n if (typeof instance.getSnapshotBeforeUpdate === 'function') {\n if (unresolvedOldProps !== current.memoizedProps || oldState !== current.memoizedState) {\n workInProgress.flags |= Snapshot;\n }\n } // If shouldComponentUpdate returned false, we should still update the\n // memoized props/state to indicate that this work can be reused.\n\n\n workInProgress.memoizedProps = newProps;\n workInProgress.memoizedState = newState;\n } // Update the existing instance's state, props, and context pointers even\n // if shouldComponentUpdate returns false.\n\n\n instance.props = newProps;\n instance.state = newState;\n instance.context = nextContext;\n return shouldUpdate;\n}\n\nfunction createCapturedValueAtFiber(value, source) {\n // If the value is an error, call this function immediately after it is thrown\n // so the stack is accurate.\n return {\n value: value,\n source: source,\n stack: getStackByFiberInDevAndProd(source),\n digest: null\n };\n}\nfunction createCapturedValue(value, digest, stack) {\n return {\n value: value,\n source: null,\n stack: stack != null ? stack : null,\n digest: digest != null ? digest : null\n };\n}\n\n// This module is forked in different environments.\n// By default, return `true` to log errors to the console.\n// Forks can return `false` if this isn't desirable.\nfunction showErrorDialog(boundary, errorInfo) {\n return true;\n}\n\nfunction logCapturedError(boundary, errorInfo) {\n try {\n var logError = showErrorDialog(boundary, errorInfo); // Allow injected showErrorDialog() to prevent default console.error logging.\n // This enables renderers like ReactNative to better manage redbox behavior.\n\n if (logError === false) {\n return;\n }\n\n var error = errorInfo.value;\n\n if (true) {\n var source = errorInfo.source;\n var stack = errorInfo.stack;\n var componentStack = stack !== null ? stack : ''; // Browsers support silencing uncaught errors by calling\n // `preventDefault()` in window `error` handler.\n // We record this information as an expando on the error.\n\n if (error != null && error._suppressLogging) {\n if (boundary.tag === ClassComponent) {\n // The error is recoverable and was silenced.\n // Ignore it and don't print the stack addendum.\n // This is handy for testing error boundaries without noise.\n return;\n } // The error is fatal. Since the silencing might have\n // been accidental, we'll surface it anyway.\n // However, the browser would have silenced the original error\n // so we'll print it first, and then print the stack addendum.\n\n\n console['error'](error); // Don't transform to our wrapper\n // For a more detailed description of this block, see:\n // https://github.com/facebook/react/pull/13384\n }\n\n var componentName = source ? getComponentNameFromFiber(source) : null;\n var componentNameMessage = componentName ? \"The above error occurred in the <\" + componentName + \"> component:\" : 'The above error occurred in one of your React components:';\n var errorBoundaryMessage;\n\n if (boundary.tag === HostRoot) {\n errorBoundaryMessage = 'Consider adding an error boundary to your tree to customize error handling behavior.\\n' + 'Visit https://reactjs.org/link/error-boundaries to learn more about error boundaries.';\n } else {\n var errorBoundaryName = getComponentNameFromFiber(boundary) || 'Anonymous';\n errorBoundaryMessage = \"React will try to recreate this component tree from scratch \" + (\"using the error boundary you provided, \" + errorBoundaryName + \".\");\n }\n\n var combinedMessage = componentNameMessage + \"\\n\" + componentStack + \"\\n\\n\" + (\"\" + errorBoundaryMessage); // In development, we provide our own message with just the component stack.\n // We don't include the original error message and JS stack because the browser\n // has already printed it. Even if the application swallows the error, it is still\n // displayed by the browser thanks to the DEV-only fake event trick in ReactErrorUtils.\n\n console['error'](combinedMessage); // Don't transform to our wrapper\n } else {\n // In production, we print the error directly.\n // This will include the message, the JS stack, and anything the browser wants to show.\n // We pass the error object instead of custom message so that the browser displays the error natively.\n console['error'](error); // Don't transform to our wrapper\n }\n } catch (e) {\n // This method must not throw, or React internal state will get messed up.\n // If console.error is overridden, or logCapturedError() shows a dialog that throws,\n // we want to report this error outside of the normal stack as a last resort.\n // https://github.com/facebook/react/issues/13188\n setTimeout(function () {\n throw e;\n });\n }\n}\n\nvar PossiblyWeakMap$1 = typeof WeakMap === 'function' ? WeakMap : Map;\n\nfunction createRootErrorUpdate(fiber, errorInfo, lane) {\n var update = createUpdate(NoTimestamp, lane); // Unmount the root by rendering null.\n\n update.tag = CaptureUpdate; // Caution: React DevTools currently depends on this property\n // being called \"element\".\n\n update.payload = {\n element: null\n };\n var error = errorInfo.value;\n\n update.callback = function () {\n onUncaughtError(error);\n logCapturedError(fiber, errorInfo);\n };\n\n return update;\n}\n\nfunction createClassErrorUpdate(fiber, errorInfo, lane) {\n var update = createUpdate(NoTimestamp, lane);\n update.tag = CaptureUpdate;\n var getDerivedStateFromError = fiber.type.getDerivedStateFromError;\n\n if (typeof getDerivedStateFromError === 'function') {\n var error$1 = errorInfo.value;\n\n update.payload = function () {\n return getDerivedStateFromError(error$1);\n };\n\n update.callback = function () {\n {\n markFailedErrorBoundaryForHotReloading(fiber);\n }\n\n logCapturedError(fiber, errorInfo);\n };\n }\n\n var inst = fiber.stateNode;\n\n if (inst !== null && typeof inst.componentDidCatch === 'function') {\n update.callback = function callback() {\n {\n markFailedErrorBoundaryForHotReloading(fiber);\n }\n\n logCapturedError(fiber, errorInfo);\n\n if (typeof getDerivedStateFromError !== 'function') {\n // To preserve the preexisting retry behavior of error boundaries,\n // we keep track of which ones already failed during this batch.\n // This gets reset before we yield back to the browser.\n // TODO: Warn in strict mode if getDerivedStateFromError is\n // not defined.\n markLegacyErrorBoundaryAsFailed(this);\n }\n\n var error$1 = errorInfo.value;\n var stack = errorInfo.stack;\n this.componentDidCatch(error$1, {\n componentStack: stack !== null ? stack : ''\n });\n\n {\n if (typeof getDerivedStateFromError !== 'function') {\n // If componentDidCatch is the only error boundary method defined,\n // then it needs to call setState to recover from errors.\n // If no state update is scheduled then the boundary will swallow the error.\n if (!includesSomeLane(fiber.lanes, SyncLane)) {\n error('%s: Error boundaries should implement getDerivedStateFromError(). ' + 'In that method, return a state update to display an error message or fallback UI.', getComponentNameFromFiber(fiber) || 'Unknown');\n }\n }\n }\n };\n }\n\n return update;\n}\n\nfunction attachPingListener(root, wakeable, lanes) {\n // Attach a ping listener\n //\n // The data might resolve before we have a chance to commit the fallback. Or,\n // in the case of a refresh, we'll never commit a fallback. So we need to\n // attach a listener now. When it resolves (\"pings\"), we can decide whether to\n // try rendering the tree again.\n //\n // Only attach a listener if one does not already exist for the lanes\n // we're currently rendering (which acts like a \"thread ID\" here).\n //\n // We only need to do this in concurrent mode. Legacy Suspense always\n // commits fallbacks synchronously, so there are no pings.\n var pingCache = root.pingCache;\n var threadIDs;\n\n if (pingCache === null) {\n pingCache = root.pingCache = new PossiblyWeakMap$1();\n threadIDs = new Set();\n pingCache.set(wakeable, threadIDs);\n } else {\n threadIDs = pingCache.get(wakeable);\n\n if (threadIDs === undefined) {\n threadIDs = new Set();\n pingCache.set(wakeable, threadIDs);\n }\n }\n\n if (!threadIDs.has(lanes)) {\n // Memoize using the thread ID to prevent redundant listeners.\n threadIDs.add(lanes);\n var ping = pingSuspendedRoot.bind(null, root, wakeable, lanes);\n\n {\n if (isDevToolsPresent) {\n // If we have pending work still, restore the original updaters\n restorePendingUpdaters(root, lanes);\n }\n }\n\n wakeable.then(ping, ping);\n }\n}\n\nfunction attachRetryListener(suspenseBoundary, root, wakeable, lanes) {\n // Retry listener\n //\n // If the fallback does commit, we need to attach a different type of\n // listener. This one schedules an update on the Suspense boundary to turn\n // the fallback state off.\n //\n // Stash the wakeable on the boundary fiber so we can access it in the\n // commit phase.\n //\n // When the wakeable resolves, we'll attempt to render the boundary\n // again (\"retry\").\n var wakeables = suspenseBoundary.updateQueue;\n\n if (wakeables === null) {\n var updateQueue = new Set();\n updateQueue.add(wakeable);\n suspenseBoundary.updateQueue = updateQueue;\n } else {\n wakeables.add(wakeable);\n }\n}\n\nfunction resetSuspendedComponent(sourceFiber, rootRenderLanes) {\n // A legacy mode Suspense quirk, only relevant to hook components.\n\n\n var tag = sourceFiber.tag;\n\n if ((sourceFiber.mode & ConcurrentMode) === NoMode && (tag === FunctionComponent || tag === ForwardRef || tag === SimpleMemoComponent)) {\n var currentSource = sourceFiber.alternate;\n\n if (currentSource) {\n sourceFiber.updateQueue = currentSource.updateQueue;\n sourceFiber.memoizedState = currentSource.memoizedState;\n sourceFiber.lanes = currentSource.lanes;\n } else {\n sourceFiber.updateQueue = null;\n sourceFiber.memoizedState = null;\n }\n }\n}\n\nfunction getNearestSuspenseBoundaryToCapture(returnFiber) {\n var node = returnFiber;\n\n do {\n if (node.tag === SuspenseComponent && shouldCaptureSuspense(node)) {\n return node;\n } // This boundary already captured during this render. Continue to the next\n // boundary.\n\n\n node = node.return;\n } while (node !== null);\n\n return null;\n}\n\nfunction markSuspenseBoundaryShouldCapture(suspenseBoundary, returnFiber, sourceFiber, root, rootRenderLanes) {\n // This marks a Suspense boundary so that when we're unwinding the stack,\n // it captures the suspended \"exception\" and does a second (fallback) pass.\n if ((suspenseBoundary.mode & ConcurrentMode) === NoMode) {\n // Legacy Mode Suspense\n //\n // If the boundary is in legacy mode, we should *not*\n // suspend the commit. Pretend as if the suspended component rendered\n // null and keep rendering. When the Suspense boundary completes,\n // we'll do a second pass to render the fallback.\n if (suspenseBoundary === returnFiber) {\n // Special case where we suspended while reconciling the children of\n // a Suspense boundary's inner Offscreen wrapper fiber. This happens\n // when a React.lazy component is a direct child of a\n // Suspense boundary.\n //\n // Suspense boundaries are implemented as multiple fibers, but they\n // are a single conceptual unit. The legacy mode behavior where we\n // pretend the suspended fiber committed as `null` won't work,\n // because in this case the \"suspended\" fiber is the inner\n // Offscreen wrapper.\n //\n // Because the contents of the boundary haven't started rendering\n // yet (i.e. nothing in the tree has partially rendered) we can\n // switch to the regular, concurrent mode behavior: mark the\n // boundary with ShouldCapture and enter the unwind phase.\n suspenseBoundary.flags |= ShouldCapture;\n } else {\n suspenseBoundary.flags |= DidCapture;\n sourceFiber.flags |= ForceUpdateForLegacySuspense; // We're going to commit this fiber even though it didn't complete.\n // But we shouldn't call any lifecycle methods or callbacks. Remove\n // all lifecycle effect tags.\n\n sourceFiber.flags &= ~(LifecycleEffectMask | Incomplete);\n\n if (sourceFiber.tag === ClassComponent) {\n var currentSourceFiber = sourceFiber.alternate;\n\n if (currentSourceFiber === null) {\n // This is a new mount. Change the tag so it's not mistaken for a\n // completed class component. For example, we should not call\n // componentWillUnmount if it is deleted.\n sourceFiber.tag = IncompleteClassComponent;\n } else {\n // When we try rendering again, we should not reuse the current fiber,\n // since it's known to be in an inconsistent state. Use a force update to\n // prevent a bail out.\n var update = createUpdate(NoTimestamp, SyncLane);\n update.tag = ForceUpdate;\n enqueueUpdate(sourceFiber, update, SyncLane);\n }\n } // The source fiber did not complete. Mark it with Sync priority to\n // indicate that it still has pending work.\n\n\n sourceFiber.lanes = mergeLanes(sourceFiber.lanes, SyncLane);\n }\n\n return suspenseBoundary;\n } // Confirmed that the boundary is in a concurrent mode tree. Continue\n // with the normal suspend path.\n //\n // After this we'll use a set of heuristics to determine whether this\n // render pass will run to completion or restart or \"suspend\" the commit.\n // The actual logic for this is spread out in different places.\n //\n // This first principle is that if we're going to suspend when we complete\n // a root, then we should also restart if we get an update or ping that\n // might unsuspend it, and vice versa. The only reason to suspend is\n // because you think you might want to restart before committing. However,\n // it doesn't make sense to restart only while in the period we're suspended.\n //\n // Restarting too aggressively is also not good because it starves out any\n // intermediate loading state. So we use heuristics to determine when.\n // Suspense Heuristics\n //\n // If nothing threw a Promise or all the same fallbacks are already showing,\n // then don't suspend/restart.\n //\n // If this is an initial render of a new tree of Suspense boundaries and\n // those trigger a fallback, then don't suspend/restart. We want to ensure\n // that we can show the initial loading state as quickly as possible.\n //\n // If we hit a \"Delayed\" case, such as when we'd switch from content back into\n // a fallback, then we should always suspend/restart. Transitions apply\n // to this case. If none is defined, JND is used instead.\n //\n // If we're already showing a fallback and it gets \"retried\", allowing us to show\n // another level, but there's still an inner boundary that would show a fallback,\n // then we suspend/restart for 500ms since the last time we showed a fallback\n // anywhere in the tree. This effectively throttles progressive loading into a\n // consistent train of commits. This also gives us an opportunity to restart to\n // get to the completed state slightly earlier.\n //\n // If there's ambiguity due to batching it's resolved in preference of:\n // 1) \"delayed\", 2) \"initial render\", 3) \"retry\".\n //\n // We want to ensure that a \"busy\" state doesn't get force committed. We want to\n // ensure that new initial loading states can commit as soon as possible.\n\n\n suspenseBoundary.flags |= ShouldCapture; // TODO: I think we can remove this, since we now use `DidCapture` in\n // the begin phase to prevent an early bailout.\n\n suspenseBoundary.lanes = rootRenderLanes;\n return suspenseBoundary;\n}\n\nfunction throwException(root, returnFiber, sourceFiber, value, rootRenderLanes) {\n // The source fiber did not complete.\n sourceFiber.flags |= Incomplete;\n\n {\n if (isDevToolsPresent) {\n // If we have pending work still, restore the original updaters\n restorePendingUpdaters(root, rootRenderLanes);\n }\n }\n\n if (value !== null && typeof value === 'object' && typeof value.then === 'function') {\n // This is a wakeable. The component suspended.\n var wakeable = value;\n resetSuspendedComponent(sourceFiber);\n\n {\n if (getIsHydrating() && sourceFiber.mode & ConcurrentMode) {\n markDidThrowWhileHydratingDEV();\n }\n }\n\n\n var suspenseBoundary = getNearestSuspenseBoundaryToCapture(returnFiber);\n\n if (suspenseBoundary !== null) {\n suspenseBoundary.flags &= ~ForceClientRender;\n markSuspenseBoundaryShouldCapture(suspenseBoundary, returnFiber, sourceFiber, root, rootRenderLanes); // We only attach ping listeners in concurrent mode. Legacy Suspense always\n // commits fallbacks synchronously, so there are no pings.\n\n if (suspenseBoundary.mode & ConcurrentMode) {\n attachPingListener(root, wakeable, rootRenderLanes);\n }\n\n attachRetryListener(suspenseBoundary, root, wakeable);\n return;\n } else {\n // No boundary was found. Unless this is a sync update, this is OK.\n // We can suspend and wait for more data to arrive.\n if (!includesSyncLane(rootRenderLanes)) {\n // This is not a sync update. Suspend. Since we're not activating a\n // Suspense boundary, this will unwind all the way to the root without\n // performing a second pass to render a fallback. (This is arguably how\n // refresh transitions should work, too, since we're not going to commit\n // the fallbacks anyway.)\n //\n // This case also applies to initial hydration.\n attachPingListener(root, wakeable, rootRenderLanes);\n renderDidSuspendDelayIfPossible();\n return;\n } // This is a sync/discrete update. We treat this case like an error\n // because discrete renders are expected to produce a complete tree\n // synchronously to maintain consistency with external state.\n\n\n var uncaughtSuspenseError = new Error('A component suspended while responding to synchronous input. This ' + 'will cause the UI to be replaced with a loading indicator. To ' + 'fix, updates that suspend should be wrapped ' + 'with startTransition.'); // If we're outside a transition, fall through to the regular error path.\n // The error will be caught by the nearest suspense boundary.\n\n value = uncaughtSuspenseError;\n }\n } else {\n // This is a regular error, not a Suspense wakeable.\n if (getIsHydrating() && sourceFiber.mode & ConcurrentMode) {\n markDidThrowWhileHydratingDEV();\n\n var _suspenseBoundary = getNearestSuspenseBoundaryToCapture(returnFiber); // If the error was thrown during hydration, we may be able to recover by\n // discarding the dehydrated content and switching to a client render.\n // Instead of surfacing the error, find the nearest Suspense boundary\n // and render it again without hydration.\n\n\n if (_suspenseBoundary !== null) {\n if ((_suspenseBoundary.flags & ShouldCapture) === NoFlags) {\n // Set a flag to indicate that we should try rendering the normal\n // children again, not the fallback.\n _suspenseBoundary.flags |= ForceClientRender;\n }\n\n markSuspenseBoundaryShouldCapture(_suspenseBoundary, returnFiber, sourceFiber, root, rootRenderLanes); // Even though the user may not be affected by this error, we should\n // still log it so it can be fixed.\n\n queueHydrationError(createCapturedValueAtFiber(value, sourceFiber));\n return;\n }\n }\n }\n\n value = createCapturedValueAtFiber(value, sourceFiber);\n renderDidError(value); // We didn't find a boundary that could handle this type of exception. Start\n // over and traverse parent path again, this time treating the exception\n // as an error.\n\n var workInProgress = returnFiber;\n\n do {\n switch (workInProgress.tag) {\n case HostRoot:\n {\n var _errorInfo = value;\n workInProgress.flags |= ShouldCapture;\n var lane = pickArbitraryLane(rootRenderLanes);\n workInProgress.lanes = mergeLanes(workInProgress.lanes, lane);\n var update = createRootErrorUpdate(workInProgress, _errorInfo, lane);\n enqueueCapturedUpdate(workInProgress, update);\n return;\n }\n\n case ClassComponent:\n // Capture and retry\n var errorInfo = value;\n var ctor = workInProgress.type;\n var instance = workInProgress.stateNode;\n\n if ((workInProgress.flags & DidCapture) === NoFlags && (typeof ctor.getDerivedStateFromError === 'function' || instance !== null && typeof instance.componentDidCatch === 'function' && !isAlreadyFailedLegacyErrorBoundary(instance))) {\n workInProgress.flags |= ShouldCapture;\n\n var _lane = pickArbitraryLane(rootRenderLanes);\n\n workInProgress.lanes = mergeLanes(workInProgress.lanes, _lane); // Schedule the error boundary to re-render using updated state\n\n var _update = createClassErrorUpdate(workInProgress, errorInfo, _lane);\n\n enqueueCapturedUpdate(workInProgress, _update);\n return;\n }\n\n break;\n }\n\n workInProgress = workInProgress.return;\n } while (workInProgress !== null);\n}\n\nfunction getSuspendedCache() {\n {\n return null;\n } // This function is called when a Suspense boundary suspends. It returns the\n}\n\nvar ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner;\nvar didReceiveUpdate = false;\nvar didWarnAboutBadClass;\nvar didWarnAboutModulePatternComponent;\nvar didWarnAboutContextTypeOnFunctionComponent;\nvar didWarnAboutGetDerivedStateOnFunctionComponent;\nvar didWarnAboutFunctionRefs;\nvar didWarnAboutReassigningProps;\nvar didWarnAboutRevealOrder;\nvar didWarnAboutTailOptions;\nvar didWarnAboutDefaultPropsOnFunctionComponent;\n\n{\n didWarnAboutBadClass = {};\n didWarnAboutModulePatternComponent = {};\n didWarnAboutContextTypeOnFunctionComponent = {};\n didWarnAboutGetDerivedStateOnFunctionComponent = {};\n didWarnAboutFunctionRefs = {};\n didWarnAboutReassigningProps = false;\n didWarnAboutRevealOrder = {};\n didWarnAboutTailOptions = {};\n didWarnAboutDefaultPropsOnFunctionComponent = {};\n}\n\nfunction reconcileChildren(current, workInProgress, nextChildren, renderLanes) {\n if (current === null) {\n // If this is a fresh new component that hasn't been rendered yet, we\n // won't update its child set by applying minimal side-effects. Instead,\n // we will add them all to the child before it gets rendered. That means\n // we can optimize this reconciliation pass by not tracking side-effects.\n workInProgress.child = mountChildFibers(workInProgress, null, nextChildren, renderLanes);\n } else {\n // If the current child is the same as the work in progress, it means that\n // we haven't yet started any work on these children. Therefore, we use\n // the clone algorithm to create a copy of all the current children.\n // If we had any progressed work already, that is invalid at this point so\n // let's throw it out.\n workInProgress.child = reconcileChildFibers(workInProgress, current.child, nextChildren, renderLanes);\n }\n}\n\nfunction forceUnmountCurrentAndReconcile(current, workInProgress, nextChildren, renderLanes) {\n // This function is fork of reconcileChildren. It's used in cases where we\n // want to reconcile without matching against the existing set. This has the\n // effect of all current children being unmounted; even if the type and key\n // are the same, the old child is unmounted and a new child is created.\n //\n // To do this, we're going to go through the reconcile algorithm twice. In\n // the first pass, we schedule a deletion for all the current children by\n // passing null.\n workInProgress.child = reconcileChildFibers(workInProgress, current.child, null, renderLanes); // In the second pass, we mount the new children. The trick here is that we\n // pass null in place of where we usually pass the current child set. This has\n // the effect of remounting all children regardless of whether their\n // identities match.\n\n workInProgress.child = reconcileChildFibers(workInProgress, null, nextChildren, renderLanes);\n}\n\nfunction updateForwardRef(current, workInProgress, Component, nextProps, renderLanes) {\n // TODO: current can be non-null here even if the component\n // hasn't yet mounted. This happens after the first render suspends.\n // We'll need to figure out if this is fine or can cause issues.\n {\n if (workInProgress.type !== workInProgress.elementType) {\n // Lazy component props can't be validated in createElement\n // because they're only guaranteed to be resolved here.\n var innerPropTypes = Component.propTypes;\n\n if (innerPropTypes) {\n checkPropTypes(innerPropTypes, nextProps, // Resolved props\n 'prop', getComponentNameFromType(Component));\n }\n }\n }\n\n var render = Component.render;\n var ref = workInProgress.ref; // The rest is a fork of updateFunctionComponent\n\n var nextChildren;\n var hasId;\n prepareToReadContext(workInProgress, renderLanes);\n\n {\n markComponentRenderStarted(workInProgress);\n }\n\n {\n ReactCurrentOwner$1.current = workInProgress;\n setIsRendering(true);\n nextChildren = renderWithHooks(current, workInProgress, render, nextProps, ref, renderLanes);\n hasId = checkDidRenderIdHook();\n\n if ( workInProgress.mode & StrictLegacyMode) {\n setIsStrictModeForDevtools(true);\n\n try {\n nextChildren = renderWithHooks(current, workInProgress, render, nextProps, ref, renderLanes);\n hasId = checkDidRenderIdHook();\n } finally {\n setIsStrictModeForDevtools(false);\n }\n }\n\n setIsRendering(false);\n }\n\n {\n markComponentRenderStopped();\n }\n\n if (current !== null && !didReceiveUpdate) {\n bailoutHooks(current, workInProgress, renderLanes);\n return bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);\n }\n\n if (getIsHydrating() && hasId) {\n pushMaterializedTreeId(workInProgress);\n } // React DevTools reads this flag.\n\n\n workInProgress.flags |= PerformedWork;\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n return workInProgress.child;\n}\n\nfunction updateMemoComponent(current, workInProgress, Component, nextProps, renderLanes) {\n if (current === null) {\n var type = Component.type;\n\n if (isSimpleFunctionComponent(type) && Component.compare === null && // SimpleMemoComponent codepath doesn't resolve outer props either.\n Component.defaultProps === undefined) {\n var resolvedType = type;\n\n {\n resolvedType = resolveFunctionForHotReloading(type);\n } // If this is a plain function component without default props,\n // and with only the default shallow comparison, we upgrade it\n // to a SimpleMemoComponent to allow fast path updates.\n\n\n workInProgress.tag = SimpleMemoComponent;\n workInProgress.type = resolvedType;\n\n {\n validateFunctionComponentInDev(workInProgress, type);\n }\n\n return updateSimpleMemoComponent(current, workInProgress, resolvedType, nextProps, renderLanes);\n }\n\n {\n var innerPropTypes = type.propTypes;\n\n if (innerPropTypes) {\n // Inner memo component props aren't currently validated in createElement.\n // We could move it there, but we'd still need this for lazy code path.\n checkPropTypes(innerPropTypes, nextProps, // Resolved props\n 'prop', getComponentNameFromType(type));\n }\n\n if ( Component.defaultProps !== undefined) {\n var componentName = getComponentNameFromType(type) || 'Unknown';\n\n if (!didWarnAboutDefaultPropsOnFunctionComponent[componentName]) {\n error('%s: Support for defaultProps will be removed from memo components ' + 'in a future major release. Use JavaScript default parameters instead.', componentName);\n\n didWarnAboutDefaultPropsOnFunctionComponent[componentName] = true;\n }\n }\n }\n\n var child = createFiberFromTypeAndProps(Component.type, null, nextProps, workInProgress, workInProgress.mode, renderLanes);\n child.ref = workInProgress.ref;\n child.return = workInProgress;\n workInProgress.child = child;\n return child;\n }\n\n {\n var _type = Component.type;\n var _innerPropTypes = _type.propTypes;\n\n if (_innerPropTypes) {\n // Inner memo component props aren't currently validated in createElement.\n // We could move it there, but we'd still need this for lazy code path.\n checkPropTypes(_innerPropTypes, nextProps, // Resolved props\n 'prop', getComponentNameFromType(_type));\n }\n }\n\n var currentChild = current.child; // This is always exactly one child\n\n var hasScheduledUpdateOrContext = checkScheduledUpdateOrContext(current, renderLanes);\n\n if (!hasScheduledUpdateOrContext) {\n // This will be the props with resolved defaultProps,\n // unlike current.memoizedProps which will be the unresolved ones.\n var prevProps = currentChild.memoizedProps; // Default to shallow comparison\n\n var compare = Component.compare;\n compare = compare !== null ? compare : shallowEqual;\n\n if (compare(prevProps, nextProps) && current.ref === workInProgress.ref) {\n return bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);\n }\n } // React DevTools reads this flag.\n\n\n workInProgress.flags |= PerformedWork;\n var newChild = createWorkInProgress(currentChild, nextProps);\n newChild.ref = workInProgress.ref;\n newChild.return = workInProgress;\n workInProgress.child = newChild;\n return newChild;\n}\n\nfunction updateSimpleMemoComponent(current, workInProgress, Component, nextProps, renderLanes) {\n // TODO: current can be non-null here even if the component\n // hasn't yet mounted. This happens when the inner render suspends.\n // We'll need to figure out if this is fine or can cause issues.\n {\n if (workInProgress.type !== workInProgress.elementType) {\n // Lazy component props can't be validated in createElement\n // because they're only guaranteed to be resolved here.\n var outerMemoType = workInProgress.elementType;\n\n if (outerMemoType.$$typeof === REACT_LAZY_TYPE) {\n // We warn when you define propTypes on lazy()\n // so let's just skip over it to find memo() outer wrapper.\n // Inner props for memo are validated later.\n var lazyComponent = outerMemoType;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n\n try {\n outerMemoType = init(payload);\n } catch (x) {\n outerMemoType = null;\n } // Inner propTypes will be validated in the function component path.\n\n\n var outerPropTypes = outerMemoType && outerMemoType.propTypes;\n\n if (outerPropTypes) {\n checkPropTypes(outerPropTypes, nextProps, // Resolved (SimpleMemoComponent has no defaultProps)\n 'prop', getComponentNameFromType(outerMemoType));\n }\n }\n }\n }\n\n if (current !== null) {\n var prevProps = current.memoizedProps;\n\n if (shallowEqual(prevProps, nextProps) && current.ref === workInProgress.ref && ( // Prevent bailout if the implementation changed due to hot reload.\n workInProgress.type === current.type )) {\n didReceiveUpdate = false; // The props are shallowly equal. Reuse the previous props object, like we\n // would during a normal fiber bailout.\n //\n // We don't have strong guarantees that the props object is referentially\n // equal during updates where we can't bail out anyway \u2014 like if the props\n // are shallowly equal, but there's a local state or context update in the\n // same batch.\n //\n // However, as a principle, we should aim to make the behavior consistent\n // across different ways of memoizing a component. For example, React.memo\n // has a different internal Fiber layout if you pass a normal function\n // component (SimpleMemoComponent) versus if you pass a different type\n // like forwardRef (MemoComponent). But this is an implementation detail.\n // Wrapping a component in forwardRef (or React.lazy, etc) shouldn't\n // affect whether the props object is reused during a bailout.\n\n workInProgress.pendingProps = nextProps = prevProps;\n\n if (!checkScheduledUpdateOrContext(current, renderLanes)) {\n // The pending lanes were cleared at the beginning of beginWork. We're\n // about to bail out, but there might be other lanes that weren't\n // included in the current render. Usually, the priority level of the\n // remaining updates is accumulated during the evaluation of the\n // component (i.e. when processing the update queue). But since since\n // we're bailing out early *without* evaluating the component, we need\n // to account for it here, too. Reset to the value of the current fiber.\n // NOTE: This only applies to SimpleMemoComponent, not MemoComponent,\n // because a MemoComponent fiber does not have hooks or an update queue;\n // rather, it wraps around an inner component, which may or may not\n // contains hooks.\n // TODO: Move the reset at in beginWork out of the common path so that\n // this is no longer necessary.\n workInProgress.lanes = current.lanes;\n return bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);\n } else if ((current.flags & ForceUpdateForLegacySuspense) !== NoFlags) {\n // This is a special case that only exists for legacy mode.\n // See https://github.com/facebook/react/pull/19216.\n didReceiveUpdate = true;\n }\n }\n }\n\n return updateFunctionComponent(current, workInProgress, Component, nextProps, renderLanes);\n}\n\nfunction updateOffscreenComponent(current, workInProgress, renderLanes) {\n var nextProps = workInProgress.pendingProps;\n var nextChildren = nextProps.children;\n var prevState = current !== null ? current.memoizedState : null;\n\n if (nextProps.mode === 'hidden' || enableLegacyHidden ) {\n // Rendering a hidden tree.\n if ((workInProgress.mode & ConcurrentMode) === NoMode) {\n // In legacy sync mode, don't defer the subtree. Render it now.\n // TODO: Consider how Offscreen should work with transitions in the future\n var nextState = {\n baseLanes: NoLanes,\n cachePool: null,\n transitions: null\n };\n workInProgress.memoizedState = nextState;\n\n pushRenderLanes(workInProgress, renderLanes);\n } else if (!includesSomeLane(renderLanes, OffscreenLane)) {\n var spawnedCachePool = null; // We're hidden, and we're not rendering at Offscreen. We will bail out\n // and resume this tree later.\n\n var nextBaseLanes;\n\n if (prevState !== null) {\n var prevBaseLanes = prevState.baseLanes;\n nextBaseLanes = mergeLanes(prevBaseLanes, renderLanes);\n } else {\n nextBaseLanes = renderLanes;\n } // Schedule this fiber to re-render at offscreen priority. Then bailout.\n\n\n workInProgress.lanes = workInProgress.childLanes = laneToLanes(OffscreenLane);\n var _nextState = {\n baseLanes: nextBaseLanes,\n cachePool: spawnedCachePool,\n transitions: null\n };\n workInProgress.memoizedState = _nextState;\n workInProgress.updateQueue = null;\n // to avoid a push/pop misalignment.\n\n\n pushRenderLanes(workInProgress, nextBaseLanes);\n\n return null;\n } else {\n // This is the second render. The surrounding visible content has already\n // committed. Now we resume rendering the hidden tree.\n // Rendering at offscreen, so we can clear the base lanes.\n var _nextState2 = {\n baseLanes: NoLanes,\n cachePool: null,\n transitions: null\n };\n workInProgress.memoizedState = _nextState2; // Push the lanes that were skipped when we bailed out.\n\n var subtreeRenderLanes = prevState !== null ? prevState.baseLanes : renderLanes;\n\n pushRenderLanes(workInProgress, subtreeRenderLanes);\n }\n } else {\n // Rendering a visible tree.\n var _subtreeRenderLanes;\n\n if (prevState !== null) {\n // We're going from hidden -> visible.\n _subtreeRenderLanes = mergeLanes(prevState.baseLanes, renderLanes);\n\n workInProgress.memoizedState = null;\n } else {\n // We weren't previously hidden, and we still aren't, so there's nothing\n // special to do. Need to push to the stack regardless, though, to avoid\n // a push/pop misalignment.\n _subtreeRenderLanes = renderLanes;\n }\n\n pushRenderLanes(workInProgress, _subtreeRenderLanes);\n }\n\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n return workInProgress.child;\n} // Note: These happen to have identical begin phases, for now. We shouldn't hold\n\nfunction updateFragment(current, workInProgress, renderLanes) {\n var nextChildren = workInProgress.pendingProps;\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n return workInProgress.child;\n}\n\nfunction updateMode(current, workInProgress, renderLanes) {\n var nextChildren = workInProgress.pendingProps.children;\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n return workInProgress.child;\n}\n\nfunction updateProfiler(current, workInProgress, renderLanes) {\n {\n workInProgress.flags |= Update;\n\n {\n // Reset effect durations for the next eventual effect phase.\n // These are reset during render to allow the DevTools commit hook a chance to read them,\n var stateNode = workInProgress.stateNode;\n stateNode.effectDuration = 0;\n stateNode.passiveEffectDuration = 0;\n }\n }\n\n var nextProps = workInProgress.pendingProps;\n var nextChildren = nextProps.children;\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n return workInProgress.child;\n}\n\nfunction markRef(current, workInProgress) {\n var ref = workInProgress.ref;\n\n if (current === null && ref !== null || current !== null && current.ref !== ref) {\n // Schedule a Ref effect\n workInProgress.flags |= Ref;\n\n {\n workInProgress.flags |= RefStatic;\n }\n }\n}\n\nfunction updateFunctionComponent(current, workInProgress, Component, nextProps, renderLanes) {\n {\n if (workInProgress.type !== workInProgress.elementType) {\n // Lazy component props can't be validated in createElement\n // because they're only guaranteed to be resolved here.\n var innerPropTypes = Component.propTypes;\n\n if (innerPropTypes) {\n checkPropTypes(innerPropTypes, nextProps, // Resolved props\n 'prop', getComponentNameFromType(Component));\n }\n }\n }\n\n var context;\n\n {\n var unmaskedContext = getUnmaskedContext(workInProgress, Component, true);\n context = getMaskedContext(workInProgress, unmaskedContext);\n }\n\n var nextChildren;\n var hasId;\n prepareToReadContext(workInProgress, renderLanes);\n\n {\n markComponentRenderStarted(workInProgress);\n }\n\n {\n ReactCurrentOwner$1.current = workInProgress;\n setIsRendering(true);\n nextChildren = renderWithHooks(current, workInProgress, Component, nextProps, context, renderLanes);\n hasId = checkDidRenderIdHook();\n\n if ( workInProgress.mode & StrictLegacyMode) {\n setIsStrictModeForDevtools(true);\n\n try {\n nextChildren = renderWithHooks(current, workInProgress, Component, nextProps, context, renderLanes);\n hasId = checkDidRenderIdHook();\n } finally {\n setIsStrictModeForDevtools(false);\n }\n }\n\n setIsRendering(false);\n }\n\n {\n markComponentRenderStopped();\n }\n\n if (current !== null && !didReceiveUpdate) {\n bailoutHooks(current, workInProgress, renderLanes);\n return bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);\n }\n\n if (getIsHydrating() && hasId) {\n pushMaterializedTreeId(workInProgress);\n } // React DevTools reads this flag.\n\n\n workInProgress.flags |= PerformedWork;\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n return workInProgress.child;\n}\n\nfunction updateClassComponent(current, workInProgress, Component, nextProps, renderLanes) {\n {\n // This is used by DevTools to force a boundary to error.\n switch (shouldError(workInProgress)) {\n case false:\n {\n var _instance = workInProgress.stateNode;\n var ctor = workInProgress.type; // TODO This way of resetting the error boundary state is a hack.\n // Is there a better way to do this?\n\n var tempInstance = new ctor(workInProgress.memoizedProps, _instance.context);\n var state = tempInstance.state;\n\n _instance.updater.enqueueSetState(_instance, state, null);\n\n break;\n }\n\n case true:\n {\n workInProgress.flags |= DidCapture;\n workInProgress.flags |= ShouldCapture; // eslint-disable-next-line react-internal/prod-error-codes\n\n var error$1 = new Error('Simulated error coming from DevTools');\n var lane = pickArbitraryLane(renderLanes);\n workInProgress.lanes = mergeLanes(workInProgress.lanes, lane); // Schedule the error boundary to re-render using updated state\n\n var update = createClassErrorUpdate(workInProgress, createCapturedValueAtFiber(error$1, workInProgress), lane);\n enqueueCapturedUpdate(workInProgress, update);\n break;\n }\n }\n\n if (workInProgress.type !== workInProgress.elementType) {\n // Lazy component props can't be validated in createElement\n // because they're only guaranteed to be resolved here.\n var innerPropTypes = Component.propTypes;\n\n if (innerPropTypes) {\n checkPropTypes(innerPropTypes, nextProps, // Resolved props\n 'prop', getComponentNameFromType(Component));\n }\n }\n } // Push context providers early to prevent context stack mismatches.\n // During mounting we don't know the child context yet as the instance doesn't exist.\n // We will invalidate the child context in finishClassComponent() right after rendering.\n\n\n var hasContext;\n\n if (isContextProvider(Component)) {\n hasContext = true;\n pushContextProvider(workInProgress);\n } else {\n hasContext = false;\n }\n\n prepareToReadContext(workInProgress, renderLanes);\n var instance = workInProgress.stateNode;\n var shouldUpdate;\n\n if (instance === null) {\n resetSuspendedCurrentOnMountInLegacyMode(current, workInProgress); // In the initial pass we might need to construct the instance.\n\n constructClassInstance(workInProgress, Component, nextProps);\n mountClassInstance(workInProgress, Component, nextProps, renderLanes);\n shouldUpdate = true;\n } else if (current === null) {\n // In a resume, we'll already have an instance we can reuse.\n shouldUpdate = resumeMountClassInstance(workInProgress, Component, nextProps, renderLanes);\n } else {\n shouldUpdate = updateClassInstance(current, workInProgress, Component, nextProps, renderLanes);\n }\n\n var nextUnitOfWork = finishClassComponent(current, workInProgress, Component, shouldUpdate, hasContext, renderLanes);\n\n {\n var inst = workInProgress.stateNode;\n\n if (shouldUpdate && inst.props !== nextProps) {\n if (!didWarnAboutReassigningProps) {\n error('It looks like %s is reassigning its own `this.props` while rendering. ' + 'This is not supported and can lead to confusing bugs.', getComponentNameFromFiber(workInProgress) || 'a component');\n }\n\n didWarnAboutReassigningProps = true;\n }\n }\n\n return nextUnitOfWork;\n}\n\nfunction finishClassComponent(current, workInProgress, Component, shouldUpdate, hasContext, renderLanes) {\n // Refs should update even if shouldComponentUpdate returns false\n markRef(current, workInProgress);\n var didCaptureError = (workInProgress.flags & DidCapture) !== NoFlags;\n\n if (!shouldUpdate && !didCaptureError) {\n // Context providers should defer to sCU for rendering\n if (hasContext) {\n invalidateContextProvider(workInProgress, Component, false);\n }\n\n return bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);\n }\n\n var instance = workInProgress.stateNode; // Rerender\n\n ReactCurrentOwner$1.current = workInProgress;\n var nextChildren;\n\n if (didCaptureError && typeof Component.getDerivedStateFromError !== 'function') {\n // If we captured an error, but getDerivedStateFromError is not defined,\n // unmount all the children. componentDidCatch will schedule an update to\n // re-render a fallback. This is temporary until we migrate everyone to\n // the new API.\n // TODO: Warn in a future release.\n nextChildren = null;\n\n {\n stopProfilerTimerIfRunning();\n }\n } else {\n {\n markComponentRenderStarted(workInProgress);\n }\n\n {\n setIsRendering(true);\n nextChildren = instance.render();\n\n if ( workInProgress.mode & StrictLegacyMode) {\n setIsStrictModeForDevtools(true);\n\n try {\n instance.render();\n } finally {\n setIsStrictModeForDevtools(false);\n }\n }\n\n setIsRendering(false);\n }\n\n {\n markComponentRenderStopped();\n }\n } // React DevTools reads this flag.\n\n\n workInProgress.flags |= PerformedWork;\n\n if (current !== null && didCaptureError) {\n // If we're recovering from an error, reconcile without reusing any of\n // the existing children. Conceptually, the normal children and the children\n // that are shown on error are two different sets, so we shouldn't reuse\n // normal children even if their identities match.\n forceUnmountCurrentAndReconcile(current, workInProgress, nextChildren, renderLanes);\n } else {\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n } // Memoize state using the values we just used to render.\n // TODO: Restructure so we never read values from the instance.\n\n\n workInProgress.memoizedState = instance.state; // The context might have changed so we need to recalculate it.\n\n if (hasContext) {\n invalidateContextProvider(workInProgress, Component, true);\n }\n\n return workInProgress.child;\n}\n\nfunction pushHostRootContext(workInProgress) {\n var root = workInProgress.stateNode;\n\n if (root.pendingContext) {\n pushTopLevelContextObject(workInProgress, root.pendingContext, root.pendingContext !== root.context);\n } else if (root.context) {\n // Should always be set\n pushTopLevelContextObject(workInProgress, root.context, false);\n }\n\n pushHostContainer(workInProgress, root.containerInfo);\n}\n\nfunction updateHostRoot(current, workInProgress, renderLanes) {\n pushHostRootContext(workInProgress);\n\n if (current === null) {\n throw new Error('Should have a current fiber. This is a bug in React.');\n }\n\n var nextProps = workInProgress.pendingProps;\n var prevState = workInProgress.memoizedState;\n var prevChildren = prevState.element;\n cloneUpdateQueue(current, workInProgress);\n processUpdateQueue(workInProgress, nextProps, null, renderLanes);\n var nextState = workInProgress.memoizedState;\n var root = workInProgress.stateNode;\n // being called \"element\".\n\n\n var nextChildren = nextState.element;\n\n if ( prevState.isDehydrated) {\n // This is a hydration root whose shell has not yet hydrated. We should\n // attempt to hydrate.\n // Flip isDehydrated to false to indicate that when this render\n // finishes, the root will no longer be dehydrated.\n var overrideState = {\n element: nextChildren,\n isDehydrated: false,\n cache: nextState.cache,\n pendingSuspenseBoundaries: nextState.pendingSuspenseBoundaries,\n transitions: nextState.transitions\n };\n var updateQueue = workInProgress.updateQueue; // `baseState` can always be the last state because the root doesn't\n // have reducer functions so it doesn't need rebasing.\n\n updateQueue.baseState = overrideState;\n workInProgress.memoizedState = overrideState;\n\n if (workInProgress.flags & ForceClientRender) {\n // Something errored during a previous attempt to hydrate the shell, so we\n // forced a client render.\n var recoverableError = createCapturedValueAtFiber(new Error('There was an error while hydrating. Because the error happened outside ' + 'of a Suspense boundary, the entire root will switch to ' + 'client rendering.'), workInProgress);\n return mountHostRootWithoutHydrating(current, workInProgress, nextChildren, renderLanes, recoverableError);\n } else if (nextChildren !== prevChildren) {\n var _recoverableError = createCapturedValueAtFiber(new Error('This root received an early update, before anything was able ' + 'hydrate. Switched the entire root to client rendering.'), workInProgress);\n\n return mountHostRootWithoutHydrating(current, workInProgress, nextChildren, renderLanes, _recoverableError);\n } else {\n // The outermost shell has not hydrated yet. Start hydrating.\n enterHydrationState(workInProgress);\n\n var child = mountChildFibers(workInProgress, null, nextChildren, renderLanes);\n workInProgress.child = child;\n var node = child;\n\n while (node) {\n // Mark each child as hydrating. This is a fast path to know whether this\n // tree is part of a hydrating tree. This is used to determine if a child\n // node has fully mounted yet, and for scheduling event replaying.\n // Conceptually this is similar to Placement in that a new subtree is\n // inserted into the React tree here. It just happens to not need DOM\n // mutations because it already exists.\n node.flags = node.flags & ~Placement | Hydrating;\n node = node.sibling;\n }\n }\n } else {\n // Root is not dehydrated. Either this is a client-only root, or it\n // already hydrated.\n resetHydrationState();\n\n if (nextChildren === prevChildren) {\n return bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);\n }\n\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n }\n\n return workInProgress.child;\n}\n\nfunction mountHostRootWithoutHydrating(current, workInProgress, nextChildren, renderLanes, recoverableError) {\n // Revert to client rendering.\n resetHydrationState();\n queueHydrationError(recoverableError);\n workInProgress.flags |= ForceClientRender;\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n return workInProgress.child;\n}\n\nfunction updateHostComponent(current, workInProgress, renderLanes) {\n pushHostContext(workInProgress);\n\n if (current === null) {\n tryToClaimNextHydratableInstance(workInProgress);\n }\n\n var type = workInProgress.type;\n var nextProps = workInProgress.pendingProps;\n var prevProps = current !== null ? current.memoizedProps : null;\n var nextChildren = nextProps.children;\n var isDirectTextChild = shouldSetTextContent(type, nextProps);\n\n if (isDirectTextChild) {\n // We special case a direct text child of a host node. This is a common\n // case. We won't handle it as a reified child. We will instead handle\n // this in the host environment that also has access to this prop. That\n // avoids allocating another HostText fiber and traversing it.\n nextChildren = null;\n } else if (prevProps !== null && shouldSetTextContent(type, prevProps)) {\n // If we're switching from a direct text child to a normal child, or to\n // empty, we need to schedule the text content to be reset.\n workInProgress.flags |= ContentReset;\n }\n\n markRef(current, workInProgress);\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n return workInProgress.child;\n}\n\nfunction updateHostText(current, workInProgress) {\n if (current === null) {\n tryToClaimNextHydratableInstance(workInProgress);\n } // Nothing to do here. This is terminal. We'll do the completion step\n // immediately after.\n\n\n return null;\n}\n\nfunction mountLazyComponent(_current, workInProgress, elementType, renderLanes) {\n resetSuspendedCurrentOnMountInLegacyMode(_current, workInProgress);\n var props = workInProgress.pendingProps;\n var lazyComponent = elementType;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n var Component = init(payload); // Store the unwrapped component in the type.\n\n workInProgress.type = Component;\n var resolvedTag = workInProgress.tag = resolveLazyComponentTag(Component);\n var resolvedProps = resolveDefaultProps(Component, props);\n var child;\n\n switch (resolvedTag) {\n case FunctionComponent:\n {\n {\n validateFunctionComponentInDev(workInProgress, Component);\n workInProgress.type = Component = resolveFunctionForHotReloading(Component);\n }\n\n child = updateFunctionComponent(null, workInProgress, Component, resolvedProps, renderLanes);\n return child;\n }\n\n case ClassComponent:\n {\n {\n workInProgress.type = Component = resolveClassForHotReloading(Component);\n }\n\n child = updateClassComponent(null, workInProgress, Component, resolvedProps, renderLanes);\n return child;\n }\n\n case ForwardRef:\n {\n {\n workInProgress.type = Component = resolveForwardRefForHotReloading(Component);\n }\n\n child = updateForwardRef(null, workInProgress, Component, resolvedProps, renderLanes);\n return child;\n }\n\n case MemoComponent:\n {\n {\n if (workInProgress.type !== workInProgress.elementType) {\n var outerPropTypes = Component.propTypes;\n\n if (outerPropTypes) {\n checkPropTypes(outerPropTypes, resolvedProps, // Resolved for outer only\n 'prop', getComponentNameFromType(Component));\n }\n }\n }\n\n child = updateMemoComponent(null, workInProgress, Component, resolveDefaultProps(Component.type, resolvedProps), // The inner type can have defaults too\n renderLanes);\n return child;\n }\n }\n\n var hint = '';\n\n {\n if (Component !== null && typeof Component === 'object' && Component.$$typeof === REACT_LAZY_TYPE) {\n hint = ' Did you wrap a component in React.lazy() more than once?';\n }\n } // This message intentionally doesn't mention ForwardRef or MemoComponent\n // because the fact that it's a separate type of work is an\n // implementation detail.\n\n\n throw new Error(\"Element type is invalid. Received a promise that resolves to: \" + Component + \". \" + (\"Lazy element type must resolve to a class or function.\" + hint));\n}\n\nfunction mountIncompleteClassComponent(_current, workInProgress, Component, nextProps, renderLanes) {\n resetSuspendedCurrentOnMountInLegacyMode(_current, workInProgress); // Promote the fiber to a class and try rendering again.\n\n workInProgress.tag = ClassComponent; // The rest of this function is a fork of `updateClassComponent`\n // Push context providers early to prevent context stack mismatches.\n // During mounting we don't know the child context yet as the instance doesn't exist.\n // We will invalidate the child context in finishClassComponent() right after rendering.\n\n var hasContext;\n\n if (isContextProvider(Component)) {\n hasContext = true;\n pushContextProvider(workInProgress);\n } else {\n hasContext = false;\n }\n\n prepareToReadContext(workInProgress, renderLanes);\n constructClassInstance(workInProgress, Component, nextProps);\n mountClassInstance(workInProgress, Component, nextProps, renderLanes);\n return finishClassComponent(null, workInProgress, Component, true, hasContext, renderLanes);\n}\n\nfunction mountIndeterminateComponent(_current, workInProgress, Component, renderLanes) {\n resetSuspendedCurrentOnMountInLegacyMode(_current, workInProgress);\n var props = workInProgress.pendingProps;\n var context;\n\n {\n var unmaskedContext = getUnmaskedContext(workInProgress, Component, false);\n context = getMaskedContext(workInProgress, unmaskedContext);\n }\n\n prepareToReadContext(workInProgress, renderLanes);\n var value;\n var hasId;\n\n {\n markComponentRenderStarted(workInProgress);\n }\n\n {\n if (Component.prototype && typeof Component.prototype.render === 'function') {\n var componentName = getComponentNameFromType(Component) || 'Unknown';\n\n if (!didWarnAboutBadClass[componentName]) {\n error(\"The <%s /> component appears to have a render method, but doesn't extend React.Component. \" + 'This is likely to cause errors. Change %s to extend React.Component instead.', componentName, componentName);\n\n didWarnAboutBadClass[componentName] = true;\n }\n }\n\n if (workInProgress.mode & StrictLegacyMode) {\n ReactStrictModeWarnings.recordLegacyContextWarning(workInProgress, null);\n }\n\n setIsRendering(true);\n ReactCurrentOwner$1.current = workInProgress;\n value = renderWithHooks(null, workInProgress, Component, props, context, renderLanes);\n hasId = checkDidRenderIdHook();\n setIsRendering(false);\n }\n\n {\n markComponentRenderStopped();\n } // React DevTools reads this flag.\n\n\n workInProgress.flags |= PerformedWork;\n\n {\n // Support for module components is deprecated and is removed behind a flag.\n // Whether or not it would crash later, we want to show a good message in DEV first.\n if (typeof value === 'object' && value !== null && typeof value.render === 'function' && value.$$typeof === undefined) {\n var _componentName = getComponentNameFromType(Component) || 'Unknown';\n\n if (!didWarnAboutModulePatternComponent[_componentName]) {\n error('The <%s /> component appears to be a function component that returns a class instance. ' + 'Change %s to a class that extends React.Component instead. ' + \"If you can't use a class try assigning the prototype on the function as a workaround. \" + \"`%s.prototype = React.Component.prototype`. Don't use an arrow function since it \" + 'cannot be called with `new` by React.', _componentName, _componentName, _componentName);\n\n didWarnAboutModulePatternComponent[_componentName] = true;\n }\n }\n }\n\n if ( // Run these checks in production only if the flag is off.\n // Eventually we'll delete this branch altogether.\n typeof value === 'object' && value !== null && typeof value.render === 'function' && value.$$typeof === undefined) {\n {\n var _componentName2 = getComponentNameFromType(Component) || 'Unknown';\n\n if (!didWarnAboutModulePatternComponent[_componentName2]) {\n error('The <%s /> component appears to be a function component that returns a class instance. ' + 'Change %s to a class that extends React.Component instead. ' + \"If you can't use a class try assigning the prototype on the function as a workaround. \" + \"`%s.prototype = React.Component.prototype`. Don't use an arrow function since it \" + 'cannot be called with `new` by React.', _componentName2, _componentName2, _componentName2);\n\n didWarnAboutModulePatternComponent[_componentName2] = true;\n }\n } // Proceed under the assumption that this is a class instance\n\n\n workInProgress.tag = ClassComponent; // Throw out any hooks that were used.\n\n workInProgress.memoizedState = null;\n workInProgress.updateQueue = null; // Push context providers early to prevent context stack mismatches.\n // During mounting we don't know the child context yet as the instance doesn't exist.\n // We will invalidate the child context in finishClassComponent() right after rendering.\n\n var hasContext = false;\n\n if (isContextProvider(Component)) {\n hasContext = true;\n pushContextProvider(workInProgress);\n } else {\n hasContext = false;\n }\n\n workInProgress.memoizedState = value.state !== null && value.state !== undefined ? value.state : null;\n initializeUpdateQueue(workInProgress);\n adoptClassInstance(workInProgress, value);\n mountClassInstance(workInProgress, Component, props, renderLanes);\n return finishClassComponent(null, workInProgress, Component, true, hasContext, renderLanes);\n } else {\n // Proceed under the assumption that this is a function component\n workInProgress.tag = FunctionComponent;\n\n {\n\n if ( workInProgress.mode & StrictLegacyMode) {\n setIsStrictModeForDevtools(true);\n\n try {\n value = renderWithHooks(null, workInProgress, Component, props, context, renderLanes);\n hasId = checkDidRenderIdHook();\n } finally {\n setIsStrictModeForDevtools(false);\n }\n }\n }\n\n if (getIsHydrating() && hasId) {\n pushMaterializedTreeId(workInProgress);\n }\n\n reconcileChildren(null, workInProgress, value, renderLanes);\n\n {\n validateFunctionComponentInDev(workInProgress, Component);\n }\n\n return workInProgress.child;\n }\n}\n\nfunction validateFunctionComponentInDev(workInProgress, Component) {\n {\n if (Component) {\n if (Component.childContextTypes) {\n error('%s(...): childContextTypes cannot be defined on a function component.', Component.displayName || Component.name || 'Component');\n }\n }\n\n if (workInProgress.ref !== null) {\n var info = '';\n var ownerName = getCurrentFiberOwnerNameInDevOrNull();\n\n if (ownerName) {\n info += '\\n\\nCheck the render method of `' + ownerName + '`.';\n }\n\n var warningKey = ownerName || '';\n var debugSource = workInProgress._debugSource;\n\n if (debugSource) {\n warningKey = debugSource.fileName + ':' + debugSource.lineNumber;\n }\n\n if (!didWarnAboutFunctionRefs[warningKey]) {\n didWarnAboutFunctionRefs[warningKey] = true;\n\n error('Function components cannot be given refs. ' + 'Attempts to access this ref will fail. ' + 'Did you mean to use React.forwardRef()?%s', info);\n }\n }\n\n if ( Component.defaultProps !== undefined) {\n var componentName = getComponentNameFromType(Component) || 'Unknown';\n\n if (!didWarnAboutDefaultPropsOnFunctionComponent[componentName]) {\n error('%s: Support for defaultProps will be removed from function components ' + 'in a future major release. Use JavaScript default parameters instead.', componentName);\n\n didWarnAboutDefaultPropsOnFunctionComponent[componentName] = true;\n }\n }\n\n if (typeof Component.getDerivedStateFromProps === 'function') {\n var _componentName3 = getComponentNameFromType(Component) || 'Unknown';\n\n if (!didWarnAboutGetDerivedStateOnFunctionComponent[_componentName3]) {\n error('%s: Function components do not support getDerivedStateFromProps.', _componentName3);\n\n didWarnAboutGetDerivedStateOnFunctionComponent[_componentName3] = true;\n }\n }\n\n if (typeof Component.contextType === 'object' && Component.contextType !== null) {\n var _componentName4 = getComponentNameFromType(Component) || 'Unknown';\n\n if (!didWarnAboutContextTypeOnFunctionComponent[_componentName4]) {\n error('%s: Function components do not support contextType.', _componentName4);\n\n didWarnAboutContextTypeOnFunctionComponent[_componentName4] = true;\n }\n }\n }\n}\n\nvar SUSPENDED_MARKER = {\n dehydrated: null,\n treeContext: null,\n retryLane: NoLane\n};\n\nfunction mountSuspenseOffscreenState(renderLanes) {\n return {\n baseLanes: renderLanes,\n cachePool: getSuspendedCache(),\n transitions: null\n };\n}\n\nfunction updateSuspenseOffscreenState(prevOffscreenState, renderLanes) {\n var cachePool = null;\n\n return {\n baseLanes: mergeLanes(prevOffscreenState.baseLanes, renderLanes),\n cachePool: cachePool,\n transitions: prevOffscreenState.transitions\n };\n} // TODO: Probably should inline this back\n\n\nfunction shouldRemainOnFallback(suspenseContext, current, workInProgress, renderLanes) {\n // If we're already showing a fallback, there are cases where we need to\n // remain on that fallback regardless of whether the content has resolved.\n // For example, SuspenseList coordinates when nested content appears.\n if (current !== null) {\n var suspenseState = current.memoizedState;\n\n if (suspenseState === null) {\n // Currently showing content. Don't hide it, even if ForceSuspenseFallback\n // is true. More precise name might be \"ForceRemainSuspenseFallback\".\n // Note: This is a factoring smell. Can't remain on a fallback if there's\n // no fallback to remain on.\n return false;\n }\n } // Not currently showing content. Consult the Suspense context.\n\n\n return hasSuspenseContext(suspenseContext, ForceSuspenseFallback);\n}\n\nfunction getRemainingWorkInPrimaryTree(current, renderLanes) {\n // TODO: Should not remove render lanes that were pinged during this render\n return removeLanes(current.childLanes, renderLanes);\n}\n\nfunction updateSuspenseComponent(current, workInProgress, renderLanes) {\n var nextProps = workInProgress.pendingProps; // This is used by DevTools to force a boundary to suspend.\n\n {\n if (shouldSuspend(workInProgress)) {\n workInProgress.flags |= DidCapture;\n }\n }\n\n var suspenseContext = suspenseStackCursor.current;\n var showFallback = false;\n var didSuspend = (workInProgress.flags & DidCapture) !== NoFlags;\n\n if (didSuspend || shouldRemainOnFallback(suspenseContext, current)) {\n // Something in this boundary's subtree already suspended. Switch to\n // rendering the fallback children.\n showFallback = true;\n workInProgress.flags &= ~DidCapture;\n } else {\n // Attempting the main content\n if (current === null || current.memoizedState !== null) {\n // This is a new mount or this boundary is already showing a fallback state.\n // Mark this subtree context as having at least one invisible parent that could\n // handle the fallback state.\n // Avoided boundaries are not considered since they cannot handle preferred fallback states.\n {\n suspenseContext = addSubtreeSuspenseContext(suspenseContext, InvisibleParentSuspenseContext);\n }\n }\n }\n\n suspenseContext = setDefaultShallowSuspenseContext(suspenseContext);\n pushSuspenseContext(workInProgress, suspenseContext); // OK, the next part is confusing. We're about to reconcile the Suspense\n // boundary's children. This involves some custom reconciliation logic. Two\n // main reasons this is so complicated.\n //\n // First, Legacy Mode has different semantics for backwards compatibility. The\n // primary tree will commit in an inconsistent state, so when we do the\n // second pass to render the fallback, we do some exceedingly, uh, clever\n // hacks to make that not totally break. Like transferring effects and\n // deletions from hidden tree. In Concurrent Mode, it's much simpler,\n // because we bailout on the primary tree completely and leave it in its old\n // state, no effects. Same as what we do for Offscreen (except that\n // Offscreen doesn't have the first render pass).\n //\n // Second is hydration. During hydration, the Suspense fiber has a slightly\n // different layout, where the child points to a dehydrated fragment, which\n // contains the DOM rendered by the server.\n //\n // Third, even if you set all that aside, Suspense is like error boundaries in\n // that we first we try to render one tree, and if that fails, we render again\n // and switch to a different tree. Like a try/catch block. So we have to track\n // which branch we're currently rendering. Ideally we would model this using\n // a stack.\n\n if (current === null) {\n // Initial mount\n // Special path for hydration\n // If we're currently hydrating, try to hydrate this boundary.\n tryToClaimNextHydratableInstance(workInProgress); // This could've been a dehydrated suspense component.\n\n var suspenseState = workInProgress.memoizedState;\n\n if (suspenseState !== null) {\n var dehydrated = suspenseState.dehydrated;\n\n if (dehydrated !== null) {\n return mountDehydratedSuspenseComponent(workInProgress, dehydrated);\n }\n }\n\n var nextPrimaryChildren = nextProps.children;\n var nextFallbackChildren = nextProps.fallback;\n\n if (showFallback) {\n var fallbackFragment = mountSuspenseFallbackChildren(workInProgress, nextPrimaryChildren, nextFallbackChildren, renderLanes);\n var primaryChildFragment = workInProgress.child;\n primaryChildFragment.memoizedState = mountSuspenseOffscreenState(renderLanes);\n workInProgress.memoizedState = SUSPENDED_MARKER;\n\n return fallbackFragment;\n } else {\n return mountSuspensePrimaryChildren(workInProgress, nextPrimaryChildren);\n }\n } else {\n // This is an update.\n // Special path for hydration\n var prevState = current.memoizedState;\n\n if (prevState !== null) {\n var _dehydrated = prevState.dehydrated;\n\n if (_dehydrated !== null) {\n return updateDehydratedSuspenseComponent(current, workInProgress, didSuspend, nextProps, _dehydrated, prevState, renderLanes);\n }\n }\n\n if (showFallback) {\n var _nextFallbackChildren = nextProps.fallback;\n var _nextPrimaryChildren = nextProps.children;\n var fallbackChildFragment = updateSuspenseFallbackChildren(current, workInProgress, _nextPrimaryChildren, _nextFallbackChildren, renderLanes);\n var _primaryChildFragment2 = workInProgress.child;\n var prevOffscreenState = current.child.memoizedState;\n _primaryChildFragment2.memoizedState = prevOffscreenState === null ? mountSuspenseOffscreenState(renderLanes) : updateSuspenseOffscreenState(prevOffscreenState, renderLanes);\n\n _primaryChildFragment2.childLanes = getRemainingWorkInPrimaryTree(current, renderLanes);\n workInProgress.memoizedState = SUSPENDED_MARKER;\n return fallbackChildFragment;\n } else {\n var _nextPrimaryChildren2 = nextProps.children;\n\n var _primaryChildFragment3 = updateSuspensePrimaryChildren(current, workInProgress, _nextPrimaryChildren2, renderLanes);\n\n workInProgress.memoizedState = null;\n return _primaryChildFragment3;\n }\n }\n}\n\nfunction mountSuspensePrimaryChildren(workInProgress, primaryChildren, renderLanes) {\n var mode = workInProgress.mode;\n var primaryChildProps = {\n mode: 'visible',\n children: primaryChildren\n };\n var primaryChildFragment = mountWorkInProgressOffscreenFiber(primaryChildProps, mode);\n primaryChildFragment.return = workInProgress;\n workInProgress.child = primaryChildFragment;\n return primaryChildFragment;\n}\n\nfunction mountSuspenseFallbackChildren(workInProgress, primaryChildren, fallbackChildren, renderLanes) {\n var mode = workInProgress.mode;\n var progressedPrimaryFragment = workInProgress.child;\n var primaryChildProps = {\n mode: 'hidden',\n children: primaryChildren\n };\n var primaryChildFragment;\n var fallbackChildFragment;\n\n if ((mode & ConcurrentMode) === NoMode && progressedPrimaryFragment !== null) {\n // In legacy mode, we commit the primary tree as if it successfully\n // completed, even though it's in an inconsistent state.\n primaryChildFragment = progressedPrimaryFragment;\n primaryChildFragment.childLanes = NoLanes;\n primaryChildFragment.pendingProps = primaryChildProps;\n\n if ( workInProgress.mode & ProfileMode) {\n // Reset the durations from the first pass so they aren't included in the\n // final amounts. This seems counterintuitive, since we're intentionally\n // not measuring part of the render phase, but this makes it match what we\n // do in Concurrent Mode.\n primaryChildFragment.actualDuration = 0;\n primaryChildFragment.actualStartTime = -1;\n primaryChildFragment.selfBaseDuration = 0;\n primaryChildFragment.treeBaseDuration = 0;\n }\n\n fallbackChildFragment = createFiberFromFragment(fallbackChildren, mode, renderLanes, null);\n } else {\n primaryChildFragment = mountWorkInProgressOffscreenFiber(primaryChildProps, mode);\n fallbackChildFragment = createFiberFromFragment(fallbackChildren, mode, renderLanes, null);\n }\n\n primaryChildFragment.return = workInProgress;\n fallbackChildFragment.return = workInProgress;\n primaryChildFragment.sibling = fallbackChildFragment;\n workInProgress.child = primaryChildFragment;\n return fallbackChildFragment;\n}\n\nfunction mountWorkInProgressOffscreenFiber(offscreenProps, mode, renderLanes) {\n // The props argument to `createFiberFromOffscreen` is `any` typed, so we use\n // this wrapper function to constrain it.\n return createFiberFromOffscreen(offscreenProps, mode, NoLanes, null);\n}\n\nfunction updateWorkInProgressOffscreenFiber(current, offscreenProps) {\n // The props argument to `createWorkInProgress` is `any` typed, so we use this\n // wrapper function to constrain it.\n return createWorkInProgress(current, offscreenProps);\n}\n\nfunction updateSuspensePrimaryChildren(current, workInProgress, primaryChildren, renderLanes) {\n var currentPrimaryChildFragment = current.child;\n var currentFallbackChildFragment = currentPrimaryChildFragment.sibling;\n var primaryChildFragment = updateWorkInProgressOffscreenFiber(currentPrimaryChildFragment, {\n mode: 'visible',\n children: primaryChildren\n });\n\n if ((workInProgress.mode & ConcurrentMode) === NoMode) {\n primaryChildFragment.lanes = renderLanes;\n }\n\n primaryChildFragment.return = workInProgress;\n primaryChildFragment.sibling = null;\n\n if (currentFallbackChildFragment !== null) {\n // Delete the fallback child fragment\n var deletions = workInProgress.deletions;\n\n if (deletions === null) {\n workInProgress.deletions = [currentFallbackChildFragment];\n workInProgress.flags |= ChildDeletion;\n } else {\n deletions.push(currentFallbackChildFragment);\n }\n }\n\n workInProgress.child = primaryChildFragment;\n return primaryChildFragment;\n}\n\nfunction updateSuspenseFallbackChildren(current, workInProgress, primaryChildren, fallbackChildren, renderLanes) {\n var mode = workInProgress.mode;\n var currentPrimaryChildFragment = current.child;\n var currentFallbackChildFragment = currentPrimaryChildFragment.sibling;\n var primaryChildProps = {\n mode: 'hidden',\n children: primaryChildren\n };\n var primaryChildFragment;\n\n if ( // In legacy mode, we commit the primary tree as if it successfully\n // completed, even though it's in an inconsistent state.\n (mode & ConcurrentMode) === NoMode && // Make sure we're on the second pass, i.e. the primary child fragment was\n // already cloned. In legacy mode, the only case where this isn't true is\n // when DevTools forces us to display a fallback; we skip the first render\n // pass entirely and go straight to rendering the fallback. (In Concurrent\n // Mode, SuspenseList can also trigger this scenario, but this is a legacy-\n // only codepath.)\n workInProgress.child !== currentPrimaryChildFragment) {\n var progressedPrimaryFragment = workInProgress.child;\n primaryChildFragment = progressedPrimaryFragment;\n primaryChildFragment.childLanes = NoLanes;\n primaryChildFragment.pendingProps = primaryChildProps;\n\n if ( workInProgress.mode & ProfileMode) {\n // Reset the durations from the first pass so they aren't included in the\n // final amounts. This seems counterintuitive, since we're intentionally\n // not measuring part of the render phase, but this makes it match what we\n // do in Concurrent Mode.\n primaryChildFragment.actualDuration = 0;\n primaryChildFragment.actualStartTime = -1;\n primaryChildFragment.selfBaseDuration = currentPrimaryChildFragment.selfBaseDuration;\n primaryChildFragment.treeBaseDuration = currentPrimaryChildFragment.treeBaseDuration;\n } // The fallback fiber was added as a deletion during the first pass.\n // However, since we're going to remain on the fallback, we no longer want\n // to delete it.\n\n\n workInProgress.deletions = null;\n } else {\n primaryChildFragment = updateWorkInProgressOffscreenFiber(currentPrimaryChildFragment, primaryChildProps); // Since we're reusing a current tree, we need to reuse the flags, too.\n // (We don't do this in legacy mode, because in legacy mode we don't re-use\n // the current tree; see previous branch.)\n\n primaryChildFragment.subtreeFlags = currentPrimaryChildFragment.subtreeFlags & StaticMask;\n }\n\n var fallbackChildFragment;\n\n if (currentFallbackChildFragment !== null) {\n fallbackChildFragment = createWorkInProgress(currentFallbackChildFragment, fallbackChildren);\n } else {\n fallbackChildFragment = createFiberFromFragment(fallbackChildren, mode, renderLanes, null); // Needs a placement effect because the parent (the Suspense boundary) already\n // mounted but this is a new fiber.\n\n fallbackChildFragment.flags |= Placement;\n }\n\n fallbackChildFragment.return = workInProgress;\n primaryChildFragment.return = workInProgress;\n primaryChildFragment.sibling = fallbackChildFragment;\n workInProgress.child = primaryChildFragment;\n return fallbackChildFragment;\n}\n\nfunction retrySuspenseComponentWithoutHydrating(current, workInProgress, renderLanes, recoverableError) {\n // Falling back to client rendering. Because this has performance\n // implications, it's considered a recoverable error, even though the user\n // likely won't observe anything wrong with the UI.\n //\n // The error is passed in as an argument to enforce that every caller provide\n // a custom message, or explicitly opt out (currently the only path that opts\n // out is legacy mode; every concurrent path provides an error).\n if (recoverableError !== null) {\n queueHydrationError(recoverableError);\n } // This will add the old fiber to the deletion list\n\n\n reconcileChildFibers(workInProgress, current.child, null, renderLanes); // We're now not suspended nor dehydrated.\n\n var nextProps = workInProgress.pendingProps;\n var primaryChildren = nextProps.children;\n var primaryChildFragment = mountSuspensePrimaryChildren(workInProgress, primaryChildren); // Needs a placement effect because the parent (the Suspense boundary) already\n // mounted but this is a new fiber.\n\n primaryChildFragment.flags |= Placement;\n workInProgress.memoizedState = null;\n return primaryChildFragment;\n}\n\nfunction mountSuspenseFallbackAfterRetryWithoutHydrating(current, workInProgress, primaryChildren, fallbackChildren, renderLanes) {\n var fiberMode = workInProgress.mode;\n var primaryChildProps = {\n mode: 'visible',\n children: primaryChildren\n };\n var primaryChildFragment = mountWorkInProgressOffscreenFiber(primaryChildProps, fiberMode);\n var fallbackChildFragment = createFiberFromFragment(fallbackChildren, fiberMode, renderLanes, null); // Needs a placement effect because the parent (the Suspense\n // boundary) already mounted but this is a new fiber.\n\n fallbackChildFragment.flags |= Placement;\n primaryChildFragment.return = workInProgress;\n fallbackChildFragment.return = workInProgress;\n primaryChildFragment.sibling = fallbackChildFragment;\n workInProgress.child = primaryChildFragment;\n\n if ((workInProgress.mode & ConcurrentMode) !== NoMode) {\n // We will have dropped the effect list which contains the\n // deletion. We need to reconcile to delete the current child.\n reconcileChildFibers(workInProgress, current.child, null, renderLanes);\n }\n\n return fallbackChildFragment;\n}\n\nfunction mountDehydratedSuspenseComponent(workInProgress, suspenseInstance, renderLanes) {\n // During the first pass, we'll bail out and not drill into the children.\n // Instead, we'll leave the content in place and try to hydrate it later.\n if ((workInProgress.mode & ConcurrentMode) === NoMode) {\n {\n error('Cannot hydrate Suspense in legacy mode. Switch from ' + 'ReactDOM.hydrate(element, container) to ' + 'ReactDOMClient.hydrateRoot(container, <App />)' + '.render(element) or remove the Suspense components from ' + 'the server rendered components.');\n }\n\n workInProgress.lanes = laneToLanes(SyncLane);\n } else if (isSuspenseInstanceFallback(suspenseInstance)) {\n // This is a client-only boundary. Since we won't get any content from the server\n // for this, we need to schedule that at a higher priority based on when it would\n // have timed out. In theory we could render it in this pass but it would have the\n // wrong priority associated with it and will prevent hydration of parent path.\n // Instead, we'll leave work left on it to render it in a separate commit.\n // TODO This time should be the time at which the server rendered response that is\n // a parent to this boundary was displayed. However, since we currently don't have\n // a protocol to transfer that time, we'll just estimate it by using the current\n // time. This will mean that Suspense timeouts are slightly shifted to later than\n // they should be.\n // Schedule a normal pri update to render this content.\n workInProgress.lanes = laneToLanes(DefaultHydrationLane);\n } else {\n // We'll continue hydrating the rest at offscreen priority since we'll already\n // be showing the right content coming from the server, it is no rush.\n workInProgress.lanes = laneToLanes(OffscreenLane);\n }\n\n return null;\n}\n\nfunction updateDehydratedSuspenseComponent(current, workInProgress, didSuspend, nextProps, suspenseInstance, suspenseState, renderLanes) {\n if (!didSuspend) {\n // This is the first render pass. Attempt to hydrate.\n // We should never be hydrating at this point because it is the first pass,\n // but after we've already committed once.\n warnIfHydrating();\n\n if ((workInProgress.mode & ConcurrentMode) === NoMode) {\n return retrySuspenseComponentWithoutHydrating(current, workInProgress, renderLanes, // TODO: When we delete legacy mode, we should make this error argument\n // required \u2014 every concurrent mode path that causes hydration to\n // de-opt to client rendering should have an error message.\n null);\n }\n\n if (isSuspenseInstanceFallback(suspenseInstance)) {\n // This boundary is in a permanent fallback state. In this case, we'll never\n // get an update and we'll never be able to hydrate the final content. Let's just try the\n // client side render instead.\n var digest, message, stack;\n\n {\n var _getSuspenseInstanceF = getSuspenseInstanceFallbackErrorDetails(suspenseInstance);\n\n digest = _getSuspenseInstanceF.digest;\n message = _getSuspenseInstanceF.message;\n stack = _getSuspenseInstanceF.stack;\n }\n\n var error;\n\n if (message) {\n // eslint-disable-next-line react-internal/prod-error-codes\n error = new Error(message);\n } else {\n error = new Error('The server could not finish this Suspense boundary, likely ' + 'due to an error during server rendering. Switched to ' + 'client rendering.');\n }\n\n var capturedValue = createCapturedValue(error, digest, stack);\n return retrySuspenseComponentWithoutHydrating(current, workInProgress, renderLanes, capturedValue);\n }\n // any context has changed, we need to treat is as if the input might have changed.\n\n\n var hasContextChanged = includesSomeLane(renderLanes, current.childLanes);\n\n if (didReceiveUpdate || hasContextChanged) {\n // This boundary has changed since the first render. This means that we are now unable to\n // hydrate it. We might still be able to hydrate it using a higher priority lane.\n var root = getWorkInProgressRoot();\n\n if (root !== null) {\n var attemptHydrationAtLane = getBumpedLaneForHydration(root, renderLanes);\n\n if (attemptHydrationAtLane !== NoLane && attemptHydrationAtLane !== suspenseState.retryLane) {\n // Intentionally mutating since this render will get interrupted. This\n // is one of the very rare times where we mutate the current tree\n // during the render phase.\n suspenseState.retryLane = attemptHydrationAtLane; // TODO: Ideally this would inherit the event time of the current render\n\n var eventTime = NoTimestamp;\n enqueueConcurrentRenderForLane(current, attemptHydrationAtLane);\n scheduleUpdateOnFiber(root, current, attemptHydrationAtLane, eventTime);\n }\n } // If we have scheduled higher pri work above, this will probably just abort the render\n // since we now have higher priority work, but in case it doesn't, we need to prepare to\n // render something, if we time out. Even if that requires us to delete everything and\n // skip hydration.\n // Delay having to do this as long as the suspense timeout allows us.\n\n\n renderDidSuspendDelayIfPossible();\n\n var _capturedValue = createCapturedValue(new Error('This Suspense boundary received an update before it finished ' + 'hydrating. This caused the boundary to switch to client rendering. ' + 'The usual way to fix this is to wrap the original update ' + 'in startTransition.'));\n\n return retrySuspenseComponentWithoutHydrating(current, workInProgress, renderLanes, _capturedValue);\n } else if (isSuspenseInstancePending(suspenseInstance)) {\n // This component is still pending more data from the server, so we can't hydrate its\n // content. We treat it as if this component suspended itself. It might seem as if\n // we could just try to render it client-side instead. However, this will perform a\n // lot of unnecessary work and is unlikely to complete since it often will suspend\n // on missing data anyway. Additionally, the server might be able to render more\n // than we can on the client yet. In that case we'd end up with more fallback states\n // on the client than if we just leave it alone. If the server times out or errors\n // these should update this boundary to the permanent Fallback state instead.\n // Mark it as having captured (i.e. suspended).\n workInProgress.flags |= DidCapture; // Leave the child in place. I.e. the dehydrated fragment.\n\n workInProgress.child = current.child; // Register a callback to retry this boundary once the server has sent the result.\n\n var retry = retryDehydratedSuspenseBoundary.bind(null, current);\n registerSuspenseInstanceRetry(suspenseInstance, retry);\n return null;\n } else {\n // This is the first attempt.\n reenterHydrationStateFromDehydratedSuspenseInstance(workInProgress, suspenseInstance, suspenseState.treeContext);\n var primaryChildren = nextProps.children;\n var primaryChildFragment = mountSuspensePrimaryChildren(workInProgress, primaryChildren); // Mark the children as hydrating. This is a fast path to know whether this\n // tree is part of a hydrating tree. This is used to determine if a child\n // node has fully mounted yet, and for scheduling event replaying.\n // Conceptually this is similar to Placement in that a new subtree is\n // inserted into the React tree here. It just happens to not need DOM\n // mutations because it already exists.\n\n primaryChildFragment.flags |= Hydrating;\n return primaryChildFragment;\n }\n } else {\n // This is the second render pass. We already attempted to hydrated, but\n // something either suspended or errored.\n if (workInProgress.flags & ForceClientRender) {\n // Something errored during hydration. Try again without hydrating.\n workInProgress.flags &= ~ForceClientRender;\n\n var _capturedValue2 = createCapturedValue(new Error('There was an error while hydrating this Suspense boundary. ' + 'Switched to client rendering.'));\n\n return retrySuspenseComponentWithoutHydrating(current, workInProgress, renderLanes, _capturedValue2);\n } else if (workInProgress.memoizedState !== null) {\n // Something suspended and we should still be in dehydrated mode.\n // Leave the existing child in place.\n workInProgress.child = current.child; // The dehydrated completion pass expects this flag to be there\n // but the normal suspense pass doesn't.\n\n workInProgress.flags |= DidCapture;\n return null;\n } else {\n // Suspended but we should no longer be in dehydrated mode.\n // Therefore we now have to render the fallback.\n var nextPrimaryChildren = nextProps.children;\n var nextFallbackChildren = nextProps.fallback;\n var fallbackChildFragment = mountSuspenseFallbackAfterRetryWithoutHydrating(current, workInProgress, nextPrimaryChildren, nextFallbackChildren, renderLanes);\n var _primaryChildFragment4 = workInProgress.child;\n _primaryChildFragment4.memoizedState = mountSuspenseOffscreenState(renderLanes);\n workInProgress.memoizedState = SUSPENDED_MARKER;\n return fallbackChildFragment;\n }\n }\n}\n\nfunction scheduleSuspenseWorkOnFiber(fiber, renderLanes, propagationRoot) {\n fiber.lanes = mergeLanes(fiber.lanes, renderLanes);\n var alternate = fiber.alternate;\n\n if (alternate !== null) {\n alternate.lanes = mergeLanes(alternate.lanes, renderLanes);\n }\n\n scheduleContextWorkOnParentPath(fiber.return, renderLanes, propagationRoot);\n}\n\nfunction propagateSuspenseContextChange(workInProgress, firstChild, renderLanes) {\n // Mark any Suspense boundaries with fallbacks as having work to do.\n // If they were previously forced into fallbacks, they may now be able\n // to unblock.\n var node = firstChild;\n\n while (node !== null) {\n if (node.tag === SuspenseComponent) {\n var state = node.memoizedState;\n\n if (state !== null) {\n scheduleSuspenseWorkOnFiber(node, renderLanes, workInProgress);\n }\n } else if (node.tag === SuspenseListComponent) {\n // If the tail is hidden there might not be an Suspense boundaries\n // to schedule work on. In this case we have to schedule it on the\n // list itself.\n // We don't have to traverse to the children of the list since\n // the list will propagate the change when it rerenders.\n scheduleSuspenseWorkOnFiber(node, renderLanes, workInProgress);\n } else if (node.child !== null) {\n node.child.return = node;\n node = node.child;\n continue;\n }\n\n if (node === workInProgress) {\n return;\n }\n\n while (node.sibling === null) {\n if (node.return === null || node.return === workInProgress) {\n return;\n }\n\n node = node.return;\n }\n\n node.sibling.return = node.return;\n node = node.sibling;\n }\n}\n\nfunction findLastContentRow(firstChild) {\n // This is going to find the last row among these children that is already\n // showing content on the screen, as opposed to being in fallback state or\n // new. If a row has multiple Suspense boundaries, any of them being in the\n // fallback state, counts as the whole row being in a fallback state.\n // Note that the \"rows\" will be workInProgress, but any nested children\n // will still be current since we haven't rendered them yet. The mounted\n // order may not be the same as the new order. We use the new order.\n var row = firstChild;\n var lastContentRow = null;\n\n while (row !== null) {\n var currentRow = row.alternate; // New rows can't be content rows.\n\n if (currentRow !== null && findFirstSuspended(currentRow) === null) {\n lastContentRow = row;\n }\n\n row = row.sibling;\n }\n\n return lastContentRow;\n}\n\nfunction validateRevealOrder(revealOrder) {\n {\n if (revealOrder !== undefined && revealOrder !== 'forwards' && revealOrder !== 'backwards' && revealOrder !== 'together' && !didWarnAboutRevealOrder[revealOrder]) {\n didWarnAboutRevealOrder[revealOrder] = true;\n\n if (typeof revealOrder === 'string') {\n switch (revealOrder.toLowerCase()) {\n case 'together':\n case 'forwards':\n case 'backwards':\n {\n error('\"%s\" is not a valid value for revealOrder on <SuspenseList />. ' + 'Use lowercase \"%s\" instead.', revealOrder, revealOrder.toLowerCase());\n\n break;\n }\n\n case 'forward':\n case 'backward':\n {\n error('\"%s\" is not a valid value for revealOrder on <SuspenseList />. ' + 'React uses the -s suffix in the spelling. Use \"%ss\" instead.', revealOrder, revealOrder.toLowerCase());\n\n break;\n }\n\n default:\n error('\"%s\" is not a supported revealOrder on <SuspenseList />. ' + 'Did you mean \"together\", \"forwards\" or \"backwards\"?', revealOrder);\n\n break;\n }\n } else {\n error('%s is not a supported value for revealOrder on <SuspenseList />. ' + 'Did you mean \"together\", \"forwards\" or \"backwards\"?', revealOrder);\n }\n }\n }\n}\n\nfunction validateTailOptions(tailMode, revealOrder) {\n {\n if (tailMode !== undefined && !didWarnAboutTailOptions[tailMode]) {\n if (tailMode !== 'collapsed' && tailMode !== 'hidden') {\n didWarnAboutTailOptions[tailMode] = true;\n\n error('\"%s\" is not a supported value for tail on <SuspenseList />. ' + 'Did you mean \"collapsed\" or \"hidden\"?', tailMode);\n } else if (revealOrder !== 'forwards' && revealOrder !== 'backwards') {\n didWarnAboutTailOptions[tailMode] = true;\n\n error('<SuspenseList tail=\"%s\" /> is only valid if revealOrder is ' + '\"forwards\" or \"backwards\". ' + 'Did you mean to specify revealOrder=\"forwards\"?', tailMode);\n }\n }\n }\n}\n\nfunction validateSuspenseListNestedChild(childSlot, index) {\n {\n var isAnArray = isArray(childSlot);\n var isIterable = !isAnArray && typeof getIteratorFn(childSlot) === 'function';\n\n if (isAnArray || isIterable) {\n var type = isAnArray ? 'array' : 'iterable';\n\n error('A nested %s was passed to row #%s in <SuspenseList />. Wrap it in ' + 'an additional SuspenseList to configure its revealOrder: ' + '<SuspenseList revealOrder=...> ... ' + '<SuspenseList revealOrder=...>{%s}</SuspenseList> ... ' + '</SuspenseList>', type, index, type);\n\n return false;\n }\n }\n\n return true;\n}\n\nfunction validateSuspenseListChildren(children, revealOrder) {\n {\n if ((revealOrder === 'forwards' || revealOrder === 'backwards') && children !== undefined && children !== null && children !== false) {\n if (isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n if (!validateSuspenseListNestedChild(children[i], i)) {\n return;\n }\n }\n } else {\n var iteratorFn = getIteratorFn(children);\n\n if (typeof iteratorFn === 'function') {\n var childrenIterator = iteratorFn.call(children);\n\n if (childrenIterator) {\n var step = childrenIterator.next();\n var _i = 0;\n\n for (; !step.done; step = childrenIterator.next()) {\n if (!validateSuspenseListNestedChild(step.value, _i)) {\n return;\n }\n\n _i++;\n }\n }\n } else {\n error('A single row was passed to a <SuspenseList revealOrder=\"%s\" />. ' + 'This is not useful since it needs multiple rows. ' + 'Did you mean to pass multiple children or an array?', revealOrder);\n }\n }\n }\n }\n}\n\nfunction initSuspenseListRenderState(workInProgress, isBackwards, tail, lastContentRow, tailMode) {\n var renderState = workInProgress.memoizedState;\n\n if (renderState === null) {\n workInProgress.memoizedState = {\n isBackwards: isBackwards,\n rendering: null,\n renderingStartTime: 0,\n last: lastContentRow,\n tail: tail,\n tailMode: tailMode\n };\n } else {\n // We can reuse the existing object from previous renders.\n renderState.isBackwards = isBackwards;\n renderState.rendering = null;\n renderState.renderingStartTime = 0;\n renderState.last = lastContentRow;\n renderState.tail = tail;\n renderState.tailMode = tailMode;\n }\n} // This can end up rendering this component multiple passes.\n// The first pass splits the children fibers into two sets. A head and tail.\n// We first render the head. If anything is in fallback state, we do another\n// pass through beginWork to rerender all children (including the tail) with\n// the force suspend context. If the first render didn't have anything in\n// in fallback state. Then we render each row in the tail one-by-one.\n// That happens in the completeWork phase without going back to beginWork.\n\n\nfunction updateSuspenseListComponent(current, workInProgress, renderLanes) {\n var nextProps = workInProgress.pendingProps;\n var revealOrder = nextProps.revealOrder;\n var tailMode = nextProps.tail;\n var newChildren = nextProps.children;\n validateRevealOrder(revealOrder);\n validateTailOptions(tailMode, revealOrder);\n validateSuspenseListChildren(newChildren, revealOrder);\n reconcileChildren(current, workInProgress, newChildren, renderLanes);\n var suspenseContext = suspenseStackCursor.current;\n var shouldForceFallback = hasSuspenseContext(suspenseContext, ForceSuspenseFallback);\n\n if (shouldForceFallback) {\n suspenseContext = setShallowSuspenseContext(suspenseContext, ForceSuspenseFallback);\n workInProgress.flags |= DidCapture;\n } else {\n var didSuspendBefore = current !== null && (current.flags & DidCapture) !== NoFlags;\n\n if (didSuspendBefore) {\n // If we previously forced a fallback, we need to schedule work\n // on any nested boundaries to let them know to try to render\n // again. This is the same as context updating.\n propagateSuspenseContextChange(workInProgress, workInProgress.child, renderLanes);\n }\n\n suspenseContext = setDefaultShallowSuspenseContext(suspenseContext);\n }\n\n pushSuspenseContext(workInProgress, suspenseContext);\n\n if ((workInProgress.mode & ConcurrentMode) === NoMode) {\n // In legacy mode, SuspenseList doesn't work so we just\n // use make it a noop by treating it as the default revealOrder.\n workInProgress.memoizedState = null;\n } else {\n switch (revealOrder) {\n case 'forwards':\n {\n var lastContentRow = findLastContentRow(workInProgress.child);\n var tail;\n\n if (lastContentRow === null) {\n // The whole list is part of the tail.\n // TODO: We could fast path by just rendering the tail now.\n tail = workInProgress.child;\n workInProgress.child = null;\n } else {\n // Disconnect the tail rows after the content row.\n // We're going to render them separately later.\n tail = lastContentRow.sibling;\n lastContentRow.sibling = null;\n }\n\n initSuspenseListRenderState(workInProgress, false, // isBackwards\n tail, lastContentRow, tailMode);\n break;\n }\n\n case 'backwards':\n {\n // We're going to find the first row that has existing content.\n // At the same time we're going to reverse the list of everything\n // we pass in the meantime. That's going to be our tail in reverse\n // order.\n var _tail = null;\n var row = workInProgress.child;\n workInProgress.child = null;\n\n while (row !== null) {\n var currentRow = row.alternate; // New rows can't be content rows.\n\n if (currentRow !== null && findFirstSuspended(currentRow) === null) {\n // This is the beginning of the main content.\n workInProgress.child = row;\n break;\n }\n\n var nextRow = row.sibling;\n row.sibling = _tail;\n _tail = row;\n row = nextRow;\n } // TODO: If workInProgress.child is null, we can continue on the tail immediately.\n\n\n initSuspenseListRenderState(workInProgress, true, // isBackwards\n _tail, null, // last\n tailMode);\n break;\n }\n\n case 'together':\n {\n initSuspenseListRenderState(workInProgress, false, // isBackwards\n null, // tail\n null, // last\n undefined);\n break;\n }\n\n default:\n {\n // The default reveal order is the same as not having\n // a boundary.\n workInProgress.memoizedState = null;\n }\n }\n }\n\n return workInProgress.child;\n}\n\nfunction updatePortalComponent(current, workInProgress, renderLanes) {\n pushHostContainer(workInProgress, workInProgress.stateNode.containerInfo);\n var nextChildren = workInProgress.pendingProps;\n\n if (current === null) {\n // Portals are special because we don't append the children during mount\n // but at commit. Therefore we need to track insertions which the normal\n // flow doesn't do during mount. This doesn't happen at the root because\n // the root always starts with a \"current\" with a null child.\n // TODO: Consider unifying this with how the root works.\n workInProgress.child = reconcileChildFibers(workInProgress, null, nextChildren, renderLanes);\n } else {\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n }\n\n return workInProgress.child;\n}\n\nvar hasWarnedAboutUsingNoValuePropOnContextProvider = false;\n\nfunction updateContextProvider(current, workInProgress, renderLanes) {\n var providerType = workInProgress.type;\n var context = providerType._context;\n var newProps = workInProgress.pendingProps;\n var oldProps = workInProgress.memoizedProps;\n var newValue = newProps.value;\n\n {\n if (!('value' in newProps)) {\n if (!hasWarnedAboutUsingNoValuePropOnContextProvider) {\n hasWarnedAboutUsingNoValuePropOnContextProvider = true;\n\n error('The `value` prop is required for the `<Context.Provider>`. Did you misspell it or forget to pass it?');\n }\n }\n\n var providerPropTypes = workInProgress.type.propTypes;\n\n if (providerPropTypes) {\n checkPropTypes(providerPropTypes, newProps, 'prop', 'Context.Provider');\n }\n }\n\n pushProvider(workInProgress, context, newValue);\n\n {\n if (oldProps !== null) {\n var oldValue = oldProps.value;\n\n if (objectIs(oldValue, newValue)) {\n // No change. Bailout early if children are the same.\n if (oldProps.children === newProps.children && !hasContextChanged()) {\n return bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);\n }\n } else {\n // The context value changed. Search for matching consumers and schedule\n // them to update.\n propagateContextChange(workInProgress, context, renderLanes);\n }\n }\n }\n\n var newChildren = newProps.children;\n reconcileChildren(current, workInProgress, newChildren, renderLanes);\n return workInProgress.child;\n}\n\nvar hasWarnedAboutUsingContextAsConsumer = false;\n\nfunction updateContextConsumer(current, workInProgress, renderLanes) {\n var context = workInProgress.type; // The logic below for Context differs depending on PROD or DEV mode. In\n // DEV mode, we create a separate object for Context.Consumer that acts\n // like a proxy to Context. This proxy object adds unnecessary code in PROD\n // so we use the old behaviour (Context.Consumer references Context) to\n // reduce size and overhead. The separate object references context via\n // a property called \"_context\", which also gives us the ability to check\n // in DEV mode if this property exists or not and warn if it does not.\n\n {\n if (context._context === undefined) {\n // This may be because it's a Context (rather than a Consumer).\n // Or it may be because it's older React where they're the same thing.\n // We only want to warn if we're sure it's a new React.\n if (context !== context.Consumer) {\n if (!hasWarnedAboutUsingContextAsConsumer) {\n hasWarnedAboutUsingContextAsConsumer = true;\n\n error('Rendering <Context> directly is not supported and will be removed in ' + 'a future major release. Did you mean to render <Context.Consumer> instead?');\n }\n }\n } else {\n context = context._context;\n }\n }\n\n var newProps = workInProgress.pendingProps;\n var render = newProps.children;\n\n {\n if (typeof render !== 'function') {\n error('A context consumer was rendered with multiple children, or a child ' + \"that isn't a function. A context consumer expects a single child \" + 'that is a function. If you did pass a function, make sure there ' + 'is no trailing or leading whitespace around it.');\n }\n }\n\n prepareToReadContext(workInProgress, renderLanes);\n var newValue = readContext(context);\n\n {\n markComponentRenderStarted(workInProgress);\n }\n\n var newChildren;\n\n {\n ReactCurrentOwner$1.current = workInProgress;\n setIsRendering(true);\n newChildren = render(newValue);\n setIsRendering(false);\n }\n\n {\n markComponentRenderStopped();\n } // React DevTools reads this flag.\n\n\n workInProgress.flags |= PerformedWork;\n reconcileChildren(current, workInProgress, newChildren, renderLanes);\n return workInProgress.child;\n}\n\nfunction markWorkInProgressReceivedUpdate() {\n didReceiveUpdate = true;\n}\n\nfunction resetSuspendedCurrentOnMountInLegacyMode(current, workInProgress) {\n if ((workInProgress.mode & ConcurrentMode) === NoMode) {\n if (current !== null) {\n // A lazy component only mounts if it suspended inside a non-\n // concurrent tree, in an inconsistent state. We want to treat it like\n // a new mount, even though an empty version of it already committed.\n // Disconnect the alternate pointers.\n current.alternate = null;\n workInProgress.alternate = null; // Since this is conceptually a new fiber, schedule a Placement effect\n\n workInProgress.flags |= Placement;\n }\n }\n}\n\nfunction bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes) {\n if (current !== null) {\n // Reuse previous dependencies\n workInProgress.dependencies = current.dependencies;\n }\n\n {\n // Don't update \"base\" render times for bailouts.\n stopProfilerTimerIfRunning();\n }\n\n markSkippedUpdateLanes(workInProgress.lanes); // Check if the children have any pending work.\n\n if (!includesSomeLane(renderLanes, workInProgress.childLanes)) {\n // The children don't have any work either. We can skip them.\n // TODO: Once we add back resuming, we should check if the children are\n // a work-in-progress set. If so, we need to transfer their effects.\n {\n return null;\n }\n } // This fiber doesn't have work, but its subtree does. Clone the child\n // fibers and continue.\n\n\n cloneChildFibers(current, workInProgress);\n return workInProgress.child;\n}\n\nfunction remountFiber(current, oldWorkInProgress, newWorkInProgress) {\n {\n var returnFiber = oldWorkInProgress.return;\n\n if (returnFiber === null) {\n // eslint-disable-next-line react-internal/prod-error-codes\n throw new Error('Cannot swap the root fiber.');\n } // Disconnect from the old current.\n // It will get deleted.\n\n\n current.alternate = null;\n oldWorkInProgress.alternate = null; // Connect to the new tree.\n\n newWorkInProgress.index = oldWorkInProgress.index;\n newWorkInProgress.sibling = oldWorkInProgress.sibling;\n newWorkInProgress.return = oldWorkInProgress.return;\n newWorkInProgress.ref = oldWorkInProgress.ref; // Replace the child/sibling pointers above it.\n\n if (oldWorkInProgress === returnFiber.child) {\n returnFiber.child = newWorkInProgress;\n } else {\n var prevSibling = returnFiber.child;\n\n if (prevSibling === null) {\n // eslint-disable-next-line react-internal/prod-error-codes\n throw new Error('Expected parent to have a child.');\n }\n\n while (prevSibling.sibling !== oldWorkInProgress) {\n prevSibling = prevSibling.sibling;\n\n if (prevSibling === null) {\n // eslint-disable-next-line react-internal/prod-error-codes\n throw new Error('Expected to find the previous sibling.');\n }\n }\n\n prevSibling.sibling = newWorkInProgress;\n } // Delete the old fiber and place the new one.\n // Since the old fiber is disconnected, we have to schedule it manually.\n\n\n var deletions = returnFiber.deletions;\n\n if (deletions === null) {\n returnFiber.deletions = [current];\n returnFiber.flags |= ChildDeletion;\n } else {\n deletions.push(current);\n }\n\n newWorkInProgress.flags |= Placement; // Restart work from the new fiber.\n\n return newWorkInProgress;\n }\n}\n\nfunction checkScheduledUpdateOrContext(current, renderLanes) {\n // Before performing an early bailout, we must check if there are pending\n // updates or context.\n var updateLanes = current.lanes;\n\n if (includesSomeLane(updateLanes, renderLanes)) {\n return true;\n } // No pending update, but because context is propagated lazily, we need\n\n return false;\n}\n\nfunction attemptEarlyBailoutIfNoScheduledUpdate(current, workInProgress, renderLanes) {\n // This fiber does not have any pending work. Bailout without entering\n // the begin phase. There's still some bookkeeping we that needs to be done\n // in this optimized path, mostly pushing stuff onto the stack.\n switch (workInProgress.tag) {\n case HostRoot:\n pushHostRootContext(workInProgress);\n var root = workInProgress.stateNode;\n\n resetHydrationState();\n break;\n\n case HostComponent:\n pushHostContext(workInProgress);\n break;\n\n case ClassComponent:\n {\n var Component = workInProgress.type;\n\n if (isContextProvider(Component)) {\n pushContextProvider(workInProgress);\n }\n\n break;\n }\n\n case HostPortal:\n pushHostContainer(workInProgress, workInProgress.stateNode.containerInfo);\n break;\n\n case ContextProvider:\n {\n var newValue = workInProgress.memoizedProps.value;\n var context = workInProgress.type._context;\n pushProvider(workInProgress, context, newValue);\n break;\n }\n\n case Profiler:\n {\n // Profiler should only call onRender when one of its descendants actually rendered.\n var hasChildWork = includesSomeLane(renderLanes, workInProgress.childLanes);\n\n if (hasChildWork) {\n workInProgress.flags |= Update;\n }\n\n {\n // Reset effect durations for the next eventual effect phase.\n // These are reset during render to allow the DevTools commit hook a chance to read them,\n var stateNode = workInProgress.stateNode;\n stateNode.effectDuration = 0;\n stateNode.passiveEffectDuration = 0;\n }\n }\n\n break;\n\n case SuspenseComponent:\n {\n var state = workInProgress.memoizedState;\n\n if (state !== null) {\n if (state.dehydrated !== null) {\n pushSuspenseContext(workInProgress, setDefaultShallowSuspenseContext(suspenseStackCursor.current)); // We know that this component will suspend again because if it has\n // been unsuspended it has committed as a resolved Suspense component.\n // If it needs to be retried, it should have work scheduled on it.\n\n workInProgress.flags |= DidCapture; // We should never render the children of a dehydrated boundary until we\n // upgrade it. We return null instead of bailoutOnAlreadyFinishedWork.\n\n return null;\n } // If this boundary is currently timed out, we need to decide\n // whether to retry the primary children, or to skip over it and\n // go straight to the fallback. Check the priority of the primary\n // child fragment.\n\n\n var primaryChildFragment = workInProgress.child;\n var primaryChildLanes = primaryChildFragment.childLanes;\n\n if (includesSomeLane(renderLanes, primaryChildLanes)) {\n // The primary children have pending work. Use the normal path\n // to attempt to render the primary children again.\n return updateSuspenseComponent(current, workInProgress, renderLanes);\n } else {\n // The primary child fragment does not have pending work marked\n // on it\n pushSuspenseContext(workInProgress, setDefaultShallowSuspenseContext(suspenseStackCursor.current)); // The primary children do not have pending work with sufficient\n // priority. Bailout.\n\n var child = bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);\n\n if (child !== null) {\n // The fallback children have pending work. Skip over the\n // primary children and work on the fallback.\n return child.sibling;\n } else {\n // Note: We can return `null` here because we already checked\n // whether there were nested context consumers, via the call to\n // `bailoutOnAlreadyFinishedWork` above.\n return null;\n }\n }\n } else {\n pushSuspenseContext(workInProgress, setDefaultShallowSuspenseContext(suspenseStackCursor.current));\n }\n\n break;\n }\n\n case SuspenseListComponent:\n {\n var didSuspendBefore = (current.flags & DidCapture) !== NoFlags;\n\n var _hasChildWork = includesSomeLane(renderLanes, workInProgress.childLanes);\n\n if (didSuspendBefore) {\n if (_hasChildWork) {\n // If something was in fallback state last time, and we have all the\n // same children then we're still in progressive loading state.\n // Something might get unblocked by state updates or retries in the\n // tree which will affect the tail. So we need to use the normal\n // path to compute the correct tail.\n return updateSuspenseListComponent(current, workInProgress, renderLanes);\n } // If none of the children had any work, that means that none of\n // them got retried so they'll still be blocked in the same way\n // as before. We can fast bail out.\n\n\n workInProgress.flags |= DidCapture;\n } // If nothing suspended before and we're rendering the same children,\n // then the tail doesn't matter. Anything new that suspends will work\n // in the \"together\" mode, so we can continue from the state we had.\n\n\n var renderState = workInProgress.memoizedState;\n\n if (renderState !== null) {\n // Reset to the \"together\" mode in case we've started a different\n // update in the past but didn't complete it.\n renderState.rendering = null;\n renderState.tail = null;\n renderState.lastEffect = null;\n }\n\n pushSuspenseContext(workInProgress, suspenseStackCursor.current);\n\n if (_hasChildWork) {\n break;\n } else {\n // If none of the children had any work, that means that none of\n // them got retried so they'll still be blocked in the same way\n // as before. We can fast bail out.\n return null;\n }\n }\n\n case OffscreenComponent:\n case LegacyHiddenComponent:\n {\n // Need to check if the tree still needs to be deferred. This is\n // almost identical to the logic used in the normal update path,\n // so we'll just enter that. The only difference is we'll bail out\n // at the next level instead of this one, because the child props\n // have not changed. Which is fine.\n // TODO: Probably should refactor `beginWork` to split the bailout\n // path from the normal path. I'm tempted to do a labeled break here\n // but I won't :)\n workInProgress.lanes = NoLanes;\n return updateOffscreenComponent(current, workInProgress, renderLanes);\n }\n }\n\n return bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);\n}\n\nfunction beginWork(current, workInProgress, renderLanes) {\n {\n if (workInProgress._debugNeedsRemount && current !== null) {\n // This will restart the begin phase with a new fiber.\n return remountFiber(current, workInProgress, createFiberFromTypeAndProps(workInProgress.type, workInProgress.key, workInProgress.pendingProps, workInProgress._debugOwner || null, workInProgress.mode, workInProgress.lanes));\n }\n }\n\n if (current !== null) {\n var oldProps = current.memoizedProps;\n var newProps = workInProgress.pendingProps;\n\n if (oldProps !== newProps || hasContextChanged() || ( // Force a re-render if the implementation changed due to hot reload:\n workInProgress.type !== current.type )) {\n // If props or context changed, mark the fiber as having performed work.\n // This may be unset if the props are determined to be equal later (memo).\n didReceiveUpdate = true;\n } else {\n // Neither props nor legacy context changes. Check if there's a pending\n // update or context change.\n var hasScheduledUpdateOrContext = checkScheduledUpdateOrContext(current, renderLanes);\n\n if (!hasScheduledUpdateOrContext && // If this is the second pass of an error or suspense boundary, there\n // may not be work scheduled on `current`, so we check for this flag.\n (workInProgress.flags & DidCapture) === NoFlags) {\n // No pending updates or context. Bail out now.\n didReceiveUpdate = false;\n return attemptEarlyBailoutIfNoScheduledUpdate(current, workInProgress, renderLanes);\n }\n\n if ((current.flags & ForceUpdateForLegacySuspense) !== NoFlags) {\n // This is a special case that only exists for legacy mode.\n // See https://github.com/facebook/react/pull/19216.\n didReceiveUpdate = true;\n } else {\n // An update was scheduled on this fiber, but there are no new props\n // nor legacy context. Set this to false. If an update queue or context\n // consumer produces a changed value, it will set this to true. Otherwise,\n // the component will assume the children have not changed and bail out.\n didReceiveUpdate = false;\n }\n }\n } else {\n didReceiveUpdate = false;\n\n if (getIsHydrating() && isForkedChild(workInProgress)) {\n // Check if this child belongs to a list of muliple children in\n // its parent.\n //\n // In a true multi-threaded implementation, we would render children on\n // parallel threads. This would represent the beginning of a new render\n // thread for this subtree.\n //\n // We only use this for id generation during hydration, which is why the\n // logic is located in this special branch.\n var slotIndex = workInProgress.index;\n var numberOfForks = getForksAtLevel();\n pushTreeId(workInProgress, numberOfForks, slotIndex);\n }\n } // Before entering the begin phase, clear pending update priority.\n // TODO: This assumes that we're about to evaluate the component and process\n // the update queue. However, there's an exception: SimpleMemoComponent\n // sometimes bails out later in the begin phase. This indicates that we should\n // move this assignment out of the common path and into each branch.\n\n\n workInProgress.lanes = NoLanes;\n\n switch (workInProgress.tag) {\n case IndeterminateComponent:\n {\n return mountIndeterminateComponent(current, workInProgress, workInProgress.type, renderLanes);\n }\n\n case LazyComponent:\n {\n var elementType = workInProgress.elementType;\n return mountLazyComponent(current, workInProgress, elementType, renderLanes);\n }\n\n case FunctionComponent:\n {\n var Component = workInProgress.type;\n var unresolvedProps = workInProgress.pendingProps;\n var resolvedProps = workInProgress.elementType === Component ? unresolvedProps : resolveDefaultProps(Component, unresolvedProps);\n return updateFunctionComponent(current, workInProgress, Component, resolvedProps, renderLanes);\n }\n\n case ClassComponent:\n {\n var _Component = workInProgress.type;\n var _unresolvedProps = workInProgress.pendingProps;\n\n var _resolvedProps = workInProgress.elementType === _Component ? _unresolvedProps : resolveDefaultProps(_Component, _unresolvedProps);\n\n return updateClassComponent(current, workInProgress, _Component, _resolvedProps, renderLanes);\n }\n\n case HostRoot:\n return updateHostRoot(current, workInProgress, renderLanes);\n\n case HostComponent:\n return updateHostComponent(current, workInProgress, renderLanes);\n\n case HostText:\n return updateHostText(current, workInProgress);\n\n case SuspenseComponent:\n return updateSuspenseComponent(current, workInProgress, renderLanes);\n\n case HostPortal:\n return updatePortalComponent(current, workInProgress, renderLanes);\n\n case ForwardRef:\n {\n var type = workInProgress.type;\n var _unresolvedProps2 = workInProgress.pendingProps;\n\n var _resolvedProps2 = workInProgress.elementType === type ? _unresolvedProps2 : resolveDefaultProps(type, _unresolvedProps2);\n\n return updateForwardRef(current, workInProgress, type, _resolvedProps2, renderLanes);\n }\n\n case Fragment:\n return updateFragment(current, workInProgress, renderLanes);\n\n case Mode:\n return updateMode(current, workInProgress, renderLanes);\n\n case Profiler:\n return updateProfiler(current, workInProgress, renderLanes);\n\n case ContextProvider:\n return updateContextProvider(current, workInProgress, renderLanes);\n\n case ContextConsumer:\n return updateContextConsumer(current, workInProgress, renderLanes);\n\n case MemoComponent:\n {\n var _type2 = workInProgress.type;\n var _unresolvedProps3 = workInProgress.pendingProps; // Resolve outer props first, then resolve inner props.\n\n var _resolvedProps3 = resolveDefaultProps(_type2, _unresolvedProps3);\n\n {\n if (workInProgress.type !== workInProgress.elementType) {\n var outerPropTypes = _type2.propTypes;\n\n if (outerPropTypes) {\n checkPropTypes(outerPropTypes, _resolvedProps3, // Resolved for outer only\n 'prop', getComponentNameFromType(_type2));\n }\n }\n }\n\n _resolvedProps3 = resolveDefaultProps(_type2.type, _resolvedProps3);\n return updateMemoComponent(current, workInProgress, _type2, _resolvedProps3, renderLanes);\n }\n\n case SimpleMemoComponent:\n {\n return updateSimpleMemoComponent(current, workInProgress, workInProgress.type, workInProgress.pendingProps, renderLanes);\n }\n\n case IncompleteClassComponent:\n {\n var _Component2 = workInProgress.type;\n var _unresolvedProps4 = workInProgress.pendingProps;\n\n var _resolvedProps4 = workInProgress.elementType === _Component2 ? _unresolvedProps4 : resolveDefaultProps(_Component2, _unresolvedProps4);\n\n return mountIncompleteClassComponent(current, workInProgress, _Component2, _resolvedProps4, renderLanes);\n }\n\n case SuspenseListComponent:\n {\n return updateSuspenseListComponent(current, workInProgress, renderLanes);\n }\n\n case ScopeComponent:\n {\n\n break;\n }\n\n case OffscreenComponent:\n {\n return updateOffscreenComponent(current, workInProgress, renderLanes);\n }\n }\n\n throw new Error(\"Unknown unit of work tag (\" + workInProgress.tag + \"). This error is likely caused by a bug in \" + 'React. Please file an issue.');\n}\n\nfunction markUpdate(workInProgress) {\n // Tag the fiber with an update effect. This turns a Placement into\n // a PlacementAndUpdate.\n workInProgress.flags |= Update;\n}\n\nfunction markRef$1(workInProgress) {\n workInProgress.flags |= Ref;\n\n {\n workInProgress.flags |= RefStatic;\n }\n}\n\nvar appendAllChildren;\nvar updateHostContainer;\nvar updateHostComponent$1;\nvar updateHostText$1;\n\n{\n // Mutation mode\n appendAllChildren = function (parent, workInProgress, needsVisibilityToggle, isHidden) {\n // We only have the top Fiber that was created but we need recurse down its\n // children to find all the terminal nodes.\n var node = workInProgress.child;\n\n while (node !== null) {\n if (node.tag === HostComponent || node.tag === HostText) {\n appendInitialChild(parent, node.stateNode);\n } else if (node.tag === HostPortal) ; else if (node.child !== null) {\n node.child.return = node;\n node = node.child;\n continue;\n }\n\n if (node === workInProgress) {\n return;\n }\n\n while (node.sibling === null) {\n if (node.return === null || node.return === workInProgress) {\n return;\n }\n\n node = node.return;\n }\n\n node.sibling.return = node.return;\n node = node.sibling;\n }\n };\n\n updateHostContainer = function (current, workInProgress) {// Noop\n };\n\n updateHostComponent$1 = function (current, workInProgress, type, newProps, rootContainerInstance) {\n // If we have an alternate, that means this is an update and we need to\n // schedule a side-effect to do the updates.\n var oldProps = current.memoizedProps;\n\n if (oldProps === newProps) {\n // In mutation mode, this is sufficient for a bailout because\n // we won't touch this node even if children changed.\n return;\n } // If we get updated because one of our children updated, we don't\n // have newProps so we'll have to reuse them.\n // TODO: Split the update API as separate for the props vs. children.\n // Even better would be if children weren't special cased at all tho.\n\n\n var instance = workInProgress.stateNode;\n var currentHostContext = getHostContext(); // TODO: Experiencing an error where oldProps is null. Suggests a host\n // component is hitting the resume path. Figure out why. Possibly\n // related to `hidden`.\n\n var updatePayload = prepareUpdate(instance, type, oldProps, newProps, rootContainerInstance, currentHostContext); // TODO: Type this specific to this type of component.\n\n workInProgress.updateQueue = updatePayload; // If the update payload indicates that there is a change or if there\n // is a new ref we mark this as an update. All the work is done in commitWork.\n\n if (updatePayload) {\n markUpdate(workInProgress);\n }\n };\n\n updateHostText$1 = function (current, workInProgress, oldText, newText) {\n // If the text differs, mark it as an update. All the work in done in commitWork.\n if (oldText !== newText) {\n markUpdate(workInProgress);\n }\n };\n}\n\nfunction cutOffTailIfNeeded(renderState, hasRenderedATailFallback) {\n if (getIsHydrating()) {\n // If we're hydrating, we should consume as many items as we can\n // so we don't leave any behind.\n return;\n }\n\n switch (renderState.tailMode) {\n case 'hidden':\n {\n // Any insertions at the end of the tail list after this point\n // should be invisible. If there are already mounted boundaries\n // anything before them are not considered for collapsing.\n // Therefore we need to go through the whole tail to find if\n // there are any.\n var tailNode = renderState.tail;\n var lastTailNode = null;\n\n while (tailNode !== null) {\n if (tailNode.alternate !== null) {\n lastTailNode = tailNode;\n }\n\n tailNode = tailNode.sibling;\n } // Next we're simply going to delete all insertions after the\n // last rendered item.\n\n\n if (lastTailNode === null) {\n // All remaining items in the tail are insertions.\n renderState.tail = null;\n } else {\n // Detach the insertion after the last node that was already\n // inserted.\n lastTailNode.sibling = null;\n }\n\n break;\n }\n\n case 'collapsed':\n {\n // Any insertions at the end of the tail list after this point\n // should be invisible. If there are already mounted boundaries\n // anything before them are not considered for collapsing.\n // Therefore we need to go through the whole tail to find if\n // there are any.\n var _tailNode = renderState.tail;\n var _lastTailNode = null;\n\n while (_tailNode !== null) {\n if (_tailNode.alternate !== null) {\n _lastTailNode = _tailNode;\n }\n\n _tailNode = _tailNode.sibling;\n } // Next we're simply going to delete all insertions after the\n // last rendered item.\n\n\n if (_lastTailNode === null) {\n // All remaining items in the tail are insertions.\n if (!hasRenderedATailFallback && renderState.tail !== null) {\n // We suspended during the head. We want to show at least one\n // row at the tail. So we'll keep on and cut off the rest.\n renderState.tail.sibling = null;\n } else {\n renderState.tail = null;\n }\n } else {\n // Detach the insertion after the last node that was already\n // inserted.\n _lastTailNode.sibling = null;\n }\n\n break;\n }\n }\n}\n\nfunction bubbleProperties(completedWork) {\n var didBailout = completedWork.alternate !== null && completedWork.alternate.child === completedWork.child;\n var newChildLanes = NoLanes;\n var subtreeFlags = NoFlags;\n\n if (!didBailout) {\n // Bubble up the earliest expiration time.\n if ( (completedWork.mode & ProfileMode) !== NoMode) {\n // In profiling mode, resetChildExpirationTime is also used to reset\n // profiler durations.\n var actualDuration = completedWork.actualDuration;\n var treeBaseDuration = completedWork.selfBaseDuration;\n var child = completedWork.child;\n\n while (child !== null) {\n newChildLanes = mergeLanes(newChildLanes, mergeLanes(child.lanes, child.childLanes));\n subtreeFlags |= child.subtreeFlags;\n subtreeFlags |= child.flags; // When a fiber is cloned, its actualDuration is reset to 0. This value will\n // only be updated if work is done on the fiber (i.e. it doesn't bailout).\n // When work is done, it should bubble to the parent's actualDuration. If\n // the fiber has not been cloned though, (meaning no work was done), then\n // this value will reflect the amount of time spent working on a previous\n // render. In that case it should not bubble. We determine whether it was\n // cloned by comparing the child pointer.\n\n actualDuration += child.actualDuration;\n treeBaseDuration += child.treeBaseDuration;\n child = child.sibling;\n }\n\n completedWork.actualDuration = actualDuration;\n completedWork.treeBaseDuration = treeBaseDuration;\n } else {\n var _child = completedWork.child;\n\n while (_child !== null) {\n newChildLanes = mergeLanes(newChildLanes, mergeLanes(_child.lanes, _child.childLanes));\n subtreeFlags |= _child.subtreeFlags;\n subtreeFlags |= _child.flags; // Update the return pointer so the tree is consistent. This is a code\n // smell because it assumes the commit phase is never concurrent with\n // the render phase. Will address during refactor to alternate model.\n\n _child.return = completedWork;\n _child = _child.sibling;\n }\n }\n\n completedWork.subtreeFlags |= subtreeFlags;\n } else {\n // Bubble up the earliest expiration time.\n if ( (completedWork.mode & ProfileMode) !== NoMode) {\n // In profiling mode, resetChildExpirationTime is also used to reset\n // profiler durations.\n var _treeBaseDuration = completedWork.selfBaseDuration;\n var _child2 = completedWork.child;\n\n while (_child2 !== null) {\n newChildLanes = mergeLanes(newChildLanes, mergeLanes(_child2.lanes, _child2.childLanes)); // \"Static\" flags share the lifetime of the fiber/hook they belong to,\n // so we should bubble those up even during a bailout. All the other\n // flags have a lifetime only of a single render + commit, so we should\n // ignore them.\n\n subtreeFlags |= _child2.subtreeFlags & StaticMask;\n subtreeFlags |= _child2.flags & StaticMask;\n _treeBaseDuration += _child2.treeBaseDuration;\n _child2 = _child2.sibling;\n }\n\n completedWork.treeBaseDuration = _treeBaseDuration;\n } else {\n var _child3 = completedWork.child;\n\n while (_child3 !== null) {\n newChildLanes = mergeLanes(newChildLanes, mergeLanes(_child3.lanes, _child3.childLanes)); // \"Static\" flags share the lifetime of the fiber/hook they belong to,\n // so we should bubble those up even during a bailout. All the other\n // flags have a lifetime only of a single render + commit, so we should\n // ignore them.\n\n subtreeFlags |= _child3.subtreeFlags & StaticMask;\n subtreeFlags |= _child3.flags & StaticMask; // Update the return pointer so the tree is consistent. This is a code\n // smell because it assumes the commit phase is never concurrent with\n // the render phase. Will address during refactor to alternate model.\n\n _child3.return = completedWork;\n _child3 = _child3.sibling;\n }\n }\n\n completedWork.subtreeFlags |= subtreeFlags;\n }\n\n completedWork.childLanes = newChildLanes;\n return didBailout;\n}\n\nfunction completeDehydratedSuspenseBoundary(current, workInProgress, nextState) {\n if (hasUnhydratedTailNodes() && (workInProgress.mode & ConcurrentMode) !== NoMode && (workInProgress.flags & DidCapture) === NoFlags) {\n warnIfUnhydratedTailNodes(workInProgress);\n resetHydrationState();\n workInProgress.flags |= ForceClientRender | Incomplete | ShouldCapture;\n return false;\n }\n\n var wasHydrated = popHydrationState(workInProgress);\n\n if (nextState !== null && nextState.dehydrated !== null) {\n // We might be inside a hydration state the first time we're picking up this\n // Suspense boundary, and also after we've reentered it for further hydration.\n if (current === null) {\n if (!wasHydrated) {\n throw new Error('A dehydrated suspense component was completed without a hydrated node. ' + 'This is probably a bug in React.');\n }\n\n prepareToHydrateHostSuspenseInstance(workInProgress);\n bubbleProperties(workInProgress);\n\n {\n if ((workInProgress.mode & ProfileMode) !== NoMode) {\n var isTimedOutSuspense = nextState !== null;\n\n if (isTimedOutSuspense) {\n // Don't count time spent in a timed out Suspense subtree as part of the base duration.\n var primaryChildFragment = workInProgress.child;\n\n if (primaryChildFragment !== null) {\n // $FlowFixMe Flow doesn't support type casting in combination with the -= operator\n workInProgress.treeBaseDuration -= primaryChildFragment.treeBaseDuration;\n }\n }\n }\n }\n\n return false;\n } else {\n // We might have reentered this boundary to hydrate it. If so, we need to reset the hydration\n // state since we're now exiting out of it. popHydrationState doesn't do that for us.\n resetHydrationState();\n\n if ((workInProgress.flags & DidCapture) === NoFlags) {\n // This boundary did not suspend so it's now hydrated and unsuspended.\n workInProgress.memoizedState = null;\n } // If nothing suspended, we need to schedule an effect to mark this boundary\n // as having hydrated so events know that they're free to be invoked.\n // It's also a signal to replay events and the suspense callback.\n // If something suspended, schedule an effect to attach retry listeners.\n // So we might as well always mark this.\n\n\n workInProgress.flags |= Update;\n bubbleProperties(workInProgress);\n\n {\n if ((workInProgress.mode & ProfileMode) !== NoMode) {\n var _isTimedOutSuspense = nextState !== null;\n\n if (_isTimedOutSuspense) {\n // Don't count time spent in a timed out Suspense subtree as part of the base duration.\n var _primaryChildFragment = workInProgress.child;\n\n if (_primaryChildFragment !== null) {\n // $FlowFixMe Flow doesn't support type casting in combination with the -= operator\n workInProgress.treeBaseDuration -= _primaryChildFragment.treeBaseDuration;\n }\n }\n }\n }\n\n return false;\n }\n } else {\n // Successfully completed this tree. If this was a forced client render,\n // there may have been recoverable errors during first hydration\n // attempt. If so, add them to a queue so we can log them in the\n // commit phase.\n upgradeHydrationErrorsToRecoverable(); // Fall through to normal Suspense path\n\n return true;\n }\n}\n\nfunction completeWork(current, workInProgress, renderLanes) {\n var newProps = workInProgress.pendingProps; // Note: This intentionally doesn't check if we're hydrating because comparing\n // to the current tree provider fiber is just as fast and less error-prone.\n // Ideally we would have a special version of the work loop only\n // for hydration.\n\n popTreeContext(workInProgress);\n\n switch (workInProgress.tag) {\n case IndeterminateComponent:\n case LazyComponent:\n case SimpleMemoComponent:\n case FunctionComponent:\n case ForwardRef:\n case Fragment:\n case Mode:\n case Profiler:\n case ContextConsumer:\n case MemoComponent:\n bubbleProperties(workInProgress);\n return null;\n\n case ClassComponent:\n {\n var Component = workInProgress.type;\n\n if (isContextProvider(Component)) {\n popContext(workInProgress);\n }\n\n bubbleProperties(workInProgress);\n return null;\n }\n\n case HostRoot:\n {\n var fiberRoot = workInProgress.stateNode;\n popHostContainer(workInProgress);\n popTopLevelContextObject(workInProgress);\n resetWorkInProgressVersions();\n\n if (fiberRoot.pendingContext) {\n fiberRoot.context = fiberRoot.pendingContext;\n fiberRoot.pendingContext = null;\n }\n\n if (current === null || current.child === null) {\n // If we hydrated, pop so that we can delete any remaining children\n // that weren't hydrated.\n var wasHydrated = popHydrationState(workInProgress);\n\n if (wasHydrated) {\n // If we hydrated, then we'll need to schedule an update for\n // the commit side-effects on the root.\n markUpdate(workInProgress);\n } else {\n if (current !== null) {\n var prevState = current.memoizedState;\n\n if ( // Check if this is a client root\n !prevState.isDehydrated || // Check if we reverted to client rendering (e.g. due to an error)\n (workInProgress.flags & ForceClientRender) !== NoFlags) {\n // Schedule an effect to clear this container at the start of the\n // next commit. This handles the case of React rendering into a\n // container with previous children. It's also safe to do for\n // updates too, because current.child would only be null if the\n // previous render was null (so the container would already\n // be empty).\n workInProgress.flags |= Snapshot; // If this was a forced client render, there may have been\n // recoverable errors during first hydration attempt. If so, add\n // them to a queue so we can log them in the commit phase.\n\n upgradeHydrationErrorsToRecoverable();\n }\n }\n }\n }\n\n updateHostContainer(current, workInProgress);\n bubbleProperties(workInProgress);\n\n return null;\n }\n\n case HostComponent:\n {\n popHostContext(workInProgress);\n var rootContainerInstance = getRootHostContainer();\n var type = workInProgress.type;\n\n if (current !== null && workInProgress.stateNode != null) {\n updateHostComponent$1(current, workInProgress, type, newProps, rootContainerInstance);\n\n if (current.ref !== workInProgress.ref) {\n markRef$1(workInProgress);\n }\n } else {\n if (!newProps) {\n if (workInProgress.stateNode === null) {\n throw new Error('We must have new props for new mounts. This error is likely ' + 'caused by a bug in React. Please file an issue.');\n } // This can happen when we abort work.\n\n\n bubbleProperties(workInProgress);\n return null;\n }\n\n var currentHostContext = getHostContext(); // TODO: Move createInstance to beginWork and keep it on a context\n // \"stack\" as the parent. Then append children as we go in beginWork\n // or completeWork depending on whether we want to add them top->down or\n // bottom->up. Top->down is faster in IE11.\n\n var _wasHydrated = popHydrationState(workInProgress);\n\n if (_wasHydrated) {\n // TODO: Move this and createInstance step into the beginPhase\n // to consolidate.\n if (prepareToHydrateHostInstance(workInProgress, rootContainerInstance, currentHostContext)) {\n // If changes to the hydrated node need to be applied at the\n // commit-phase we mark this as such.\n markUpdate(workInProgress);\n }\n } else {\n var instance = createInstance(type, newProps, rootContainerInstance, currentHostContext, workInProgress);\n appendAllChildren(instance, workInProgress, false, false);\n workInProgress.stateNode = instance; // Certain renderers require commit-time effects for initial mount.\n // (eg DOM renderer supports auto-focus for certain elements).\n // Make sure such renderers get scheduled for later work.\n\n if (finalizeInitialChildren(instance, type, newProps, rootContainerInstance)) {\n markUpdate(workInProgress);\n }\n }\n\n if (workInProgress.ref !== null) {\n // If there is a ref on a host node we need to schedule a callback\n markRef$1(workInProgress);\n }\n }\n\n bubbleProperties(workInProgress);\n return null;\n }\n\n case HostText:\n {\n var newText = newProps;\n\n if (current && workInProgress.stateNode != null) {\n var oldText = current.memoizedProps; // If we have an alternate, that means this is an update and we need\n // to schedule a side-effect to do the updates.\n\n updateHostText$1(current, workInProgress, oldText, newText);\n } else {\n if (typeof newText !== 'string') {\n if (workInProgress.stateNode === null) {\n throw new Error('We must have new props for new mounts. This error is likely ' + 'caused by a bug in React. Please file an issue.');\n } // This can happen when we abort work.\n\n }\n\n var _rootContainerInstance = getRootHostContainer();\n\n var _currentHostContext = getHostContext();\n\n var _wasHydrated2 = popHydrationState(workInProgress);\n\n if (_wasHydrated2) {\n if (prepareToHydrateHostTextInstance(workInProgress)) {\n markUpdate(workInProgress);\n }\n } else {\n workInProgress.stateNode = createTextInstance(newText, _rootContainerInstance, _currentHostContext, workInProgress);\n }\n }\n\n bubbleProperties(workInProgress);\n return null;\n }\n\n case SuspenseComponent:\n {\n popSuspenseContext(workInProgress);\n var nextState = workInProgress.memoizedState; // Special path for dehydrated boundaries. We may eventually move this\n // to its own fiber type so that we can add other kinds of hydration\n // boundaries that aren't associated with a Suspense tree. In anticipation\n // of such a refactor, all the hydration logic is contained in\n // this branch.\n\n if (current === null || current.memoizedState !== null && current.memoizedState.dehydrated !== null) {\n var fallthroughToNormalSuspensePath = completeDehydratedSuspenseBoundary(current, workInProgress, nextState);\n\n if (!fallthroughToNormalSuspensePath) {\n if (workInProgress.flags & ShouldCapture) {\n // Special case. There were remaining unhydrated nodes. We treat\n // this as a mismatch. Revert to client rendering.\n return workInProgress;\n } else {\n // Did not finish hydrating, either because this is the initial\n // render or because something suspended.\n return null;\n }\n } // Continue with the normal Suspense path.\n\n }\n\n if ((workInProgress.flags & DidCapture) !== NoFlags) {\n // Something suspended. Re-render with the fallback children.\n workInProgress.lanes = renderLanes; // Do not reset the effect list.\n\n if ( (workInProgress.mode & ProfileMode) !== NoMode) {\n transferActualDuration(workInProgress);\n } // Don't bubble properties in this case.\n\n\n return workInProgress;\n }\n\n var nextDidTimeout = nextState !== null;\n var prevDidTimeout = current !== null && current.memoizedState !== null;\n // a passive effect, which is when we process the transitions\n\n\n if (nextDidTimeout !== prevDidTimeout) {\n // an effect to toggle the subtree's visibility. When we switch from\n // fallback -> primary, the inner Offscreen fiber schedules this effect\n // as part of its normal complete phase. But when we switch from\n // primary -> fallback, the inner Offscreen fiber does not have a complete\n // phase. So we need to schedule its effect here.\n //\n // We also use this flag to connect/disconnect the effects, but the same\n // logic applies: when re-connecting, the Offscreen fiber's complete\n // phase will handle scheduling the effect. It's only when the fallback\n // is active that we have to do anything special.\n\n\n if (nextDidTimeout) {\n var _offscreenFiber2 = workInProgress.child;\n _offscreenFiber2.flags |= Visibility; // TODO: This will still suspend a synchronous tree if anything\n // in the concurrent tree already suspended during this render.\n // This is a known bug.\n\n if ((workInProgress.mode & ConcurrentMode) !== NoMode) {\n // TODO: Move this back to throwException because this is too late\n // if this is a large tree which is common for initial loads. We\n // don't know if we should restart a render or not until we get\n // this marker, and this is too late.\n // If this render already had a ping or lower pri updates,\n // and this is the first time we know we're going to suspend we\n // should be able to immediately restart from within throwException.\n var hasInvisibleChildContext = current === null && (workInProgress.memoizedProps.unstable_avoidThisFallback !== true || !enableSuspenseAvoidThisFallback);\n\n if (hasInvisibleChildContext || hasSuspenseContext(suspenseStackCursor.current, InvisibleParentSuspenseContext)) {\n // If this was in an invisible tree or a new render, then showing\n // this boundary is ok.\n renderDidSuspend();\n } else {\n // Otherwise, we're going to have to hide content so we should\n // suspend for longer if possible.\n renderDidSuspendDelayIfPossible();\n }\n }\n }\n }\n\n var wakeables = workInProgress.updateQueue;\n\n if (wakeables !== null) {\n // Schedule an effect to attach a retry listener to the promise.\n // TODO: Move to passive phase\n workInProgress.flags |= Update;\n }\n\n bubbleProperties(workInProgress);\n\n {\n if ((workInProgress.mode & ProfileMode) !== NoMode) {\n if (nextDidTimeout) {\n // Don't count time spent in a timed out Suspense subtree as part of the base duration.\n var primaryChildFragment = workInProgress.child;\n\n if (primaryChildFragment !== null) {\n // $FlowFixMe Flow doesn't support type casting in combination with the -= operator\n workInProgress.treeBaseDuration -= primaryChildFragment.treeBaseDuration;\n }\n }\n }\n }\n\n return null;\n }\n\n case HostPortal:\n popHostContainer(workInProgress);\n updateHostContainer(current, workInProgress);\n\n if (current === null) {\n preparePortalMount(workInProgress.stateNode.containerInfo);\n }\n\n bubbleProperties(workInProgress);\n return null;\n\n case ContextProvider:\n // Pop provider fiber\n var context = workInProgress.type._context;\n popProvider(context, workInProgress);\n bubbleProperties(workInProgress);\n return null;\n\n case IncompleteClassComponent:\n {\n // Same as class component case. I put it down here so that the tags are\n // sequential to ensure this switch is compiled to a jump table.\n var _Component = workInProgress.type;\n\n if (isContextProvider(_Component)) {\n popContext(workInProgress);\n }\n\n bubbleProperties(workInProgress);\n return null;\n }\n\n case SuspenseListComponent:\n {\n popSuspenseContext(workInProgress);\n var renderState = workInProgress.memoizedState;\n\n if (renderState === null) {\n // We're running in the default, \"independent\" mode.\n // We don't do anything in this mode.\n bubbleProperties(workInProgress);\n return null;\n }\n\n var didSuspendAlready = (workInProgress.flags & DidCapture) !== NoFlags;\n var renderedTail = renderState.rendering;\n\n if (renderedTail === null) {\n // We just rendered the head.\n if (!didSuspendAlready) {\n // This is the first pass. We need to figure out if anything is still\n // suspended in the rendered set.\n // If new content unsuspended, but there's still some content that\n // didn't. Then we need to do a second pass that forces everything\n // to keep showing their fallbacks.\n // We might be suspended if something in this render pass suspended, or\n // something in the previous committed pass suspended. Otherwise,\n // there's no chance so we can skip the expensive call to\n // findFirstSuspended.\n var cannotBeSuspended = renderHasNotSuspendedYet() && (current === null || (current.flags & DidCapture) === NoFlags);\n\n if (!cannotBeSuspended) {\n var row = workInProgress.child;\n\n while (row !== null) {\n var suspended = findFirstSuspended(row);\n\n if (suspended !== null) {\n didSuspendAlready = true;\n workInProgress.flags |= DidCapture;\n cutOffTailIfNeeded(renderState, false); // If this is a newly suspended tree, it might not get committed as\n // part of the second pass. In that case nothing will subscribe to\n // its thenables. Instead, we'll transfer its thenables to the\n // SuspenseList so that it can retry if they resolve.\n // There might be multiple of these in the list but since we're\n // going to wait for all of them anyway, it doesn't really matter\n // which ones gets to ping. In theory we could get clever and keep\n // track of how many dependencies remain but it gets tricky because\n // in the meantime, we can add/remove/change items and dependencies.\n // We might bail out of the loop before finding any but that\n // doesn't matter since that means that the other boundaries that\n // we did find already has their listeners attached.\n\n var newThenables = suspended.updateQueue;\n\n if (newThenables !== null) {\n workInProgress.updateQueue = newThenables;\n workInProgress.flags |= Update;\n } // Rerender the whole list, but this time, we'll force fallbacks\n // to stay in place.\n // Reset the effect flags before doing the second pass since that's now invalid.\n // Reset the child fibers to their original state.\n\n\n workInProgress.subtreeFlags = NoFlags;\n resetChildFibers(workInProgress, renderLanes); // Set up the Suspense Context to force suspense and immediately\n // rerender the children.\n\n pushSuspenseContext(workInProgress, setShallowSuspenseContext(suspenseStackCursor.current, ForceSuspenseFallback)); // Don't bubble properties in this case.\n\n return workInProgress.child;\n }\n\n row = row.sibling;\n }\n }\n\n if (renderState.tail !== null && now() > getRenderTargetTime()) {\n // We have already passed our CPU deadline but we still have rows\n // left in the tail. We'll just give up further attempts to render\n // the main content and only render fallbacks.\n workInProgress.flags |= DidCapture;\n didSuspendAlready = true;\n cutOffTailIfNeeded(renderState, false); // Since nothing actually suspended, there will nothing to ping this\n // to get it started back up to attempt the next item. While in terms\n // of priority this work has the same priority as this current render,\n // it's not part of the same transition once the transition has\n // committed. If it's sync, we still want to yield so that it can be\n // painted. Conceptually, this is really the same as pinging.\n // We can use any RetryLane even if it's the one currently rendering\n // since we're leaving it behind on this node.\n\n workInProgress.lanes = SomeRetryLane;\n }\n } else {\n cutOffTailIfNeeded(renderState, false);\n } // Next we're going to render the tail.\n\n } else {\n // Append the rendered row to the child list.\n if (!didSuspendAlready) {\n var _suspended = findFirstSuspended(renderedTail);\n\n if (_suspended !== null) {\n workInProgress.flags |= DidCapture;\n didSuspendAlready = true; // Ensure we transfer the update queue to the parent so that it doesn't\n // get lost if this row ends up dropped during a second pass.\n\n var _newThenables = _suspended.updateQueue;\n\n if (_newThenables !== null) {\n workInProgress.updateQueue = _newThenables;\n workInProgress.flags |= Update;\n }\n\n cutOffTailIfNeeded(renderState, true); // This might have been modified.\n\n if (renderState.tail === null && renderState.tailMode === 'hidden' && !renderedTail.alternate && !getIsHydrating() // We don't cut it if we're hydrating.\n ) {\n // We're done.\n bubbleProperties(workInProgress);\n return null;\n }\n } else if ( // The time it took to render last row is greater than the remaining\n // time we have to render. So rendering one more row would likely\n // exceed it.\n now() * 2 - renderState.renderingStartTime > getRenderTargetTime() && renderLanes !== OffscreenLane) {\n // We have now passed our CPU deadline and we'll just give up further\n // attempts to render the main content and only render fallbacks.\n // The assumption is that this is usually faster.\n workInProgress.flags |= DidCapture;\n didSuspendAlready = true;\n cutOffTailIfNeeded(renderState, false); // Since nothing actually suspended, there will nothing to ping this\n // to get it started back up to attempt the next item. While in terms\n // of priority this work has the same priority as this current render,\n // it's not part of the same transition once the transition has\n // committed. If it's sync, we still want to yield so that it can be\n // painted. Conceptually, this is really the same as pinging.\n // We can use any RetryLane even if it's the one currently rendering\n // since we're leaving it behind on this node.\n\n workInProgress.lanes = SomeRetryLane;\n }\n }\n\n if (renderState.isBackwards) {\n // The effect list of the backwards tail will have been added\n // to the end. This breaks the guarantee that life-cycles fire in\n // sibling order but that isn't a strong guarantee promised by React.\n // Especially since these might also just pop in during future commits.\n // Append to the beginning of the list.\n renderedTail.sibling = workInProgress.child;\n workInProgress.child = renderedTail;\n } else {\n var previousSibling = renderState.last;\n\n if (previousSibling !== null) {\n previousSibling.sibling = renderedTail;\n } else {\n workInProgress.child = renderedTail;\n }\n\n renderState.last = renderedTail;\n }\n }\n\n if (renderState.tail !== null) {\n // We still have tail rows to render.\n // Pop a row.\n var next = renderState.tail;\n renderState.rendering = next;\n renderState.tail = next.sibling;\n renderState.renderingStartTime = now();\n next.sibling = null; // Restore the context.\n // TODO: We can probably just avoid popping it instead and only\n // setting it the first time we go from not suspended to suspended.\n\n var suspenseContext = suspenseStackCursor.current;\n\n if (didSuspendAlready) {\n suspenseContext = setShallowSuspenseContext(suspenseContext, ForceSuspenseFallback);\n } else {\n suspenseContext = setDefaultShallowSuspenseContext(suspenseContext);\n }\n\n pushSuspenseContext(workInProgress, suspenseContext); // Do a pass over the next row.\n // Don't bubble properties in this case.\n\n return next;\n }\n\n bubbleProperties(workInProgress);\n return null;\n }\n\n case ScopeComponent:\n {\n\n break;\n }\n\n case OffscreenComponent:\n case LegacyHiddenComponent:\n {\n popRenderLanes(workInProgress);\n var _nextState = workInProgress.memoizedState;\n var nextIsHidden = _nextState !== null;\n\n if (current !== null) {\n var _prevState = current.memoizedState;\n var prevIsHidden = _prevState !== null;\n\n if (prevIsHidden !== nextIsHidden && ( // LegacyHidden doesn't do any hiding \u2014 it only pre-renders.\n !enableLegacyHidden )) {\n workInProgress.flags |= Visibility;\n }\n }\n\n if (!nextIsHidden || (workInProgress.mode & ConcurrentMode) === NoMode) {\n bubbleProperties(workInProgress);\n } else {\n // Don't bubble properties for hidden children unless we're rendering\n // at offscreen priority.\n if (includesSomeLane(subtreeRenderLanes, OffscreenLane)) {\n bubbleProperties(workInProgress);\n\n {\n // Check if there was an insertion or update in the hidden subtree.\n // If so, we need to hide those nodes in the commit phase, so\n // schedule a visibility effect.\n if ( workInProgress.subtreeFlags & (Placement | Update)) {\n workInProgress.flags |= Visibility;\n }\n }\n }\n }\n return null;\n }\n\n case CacheComponent:\n {\n\n return null;\n }\n\n case TracingMarkerComponent:\n {\n\n return null;\n }\n }\n\n throw new Error(\"Unknown unit of work tag (\" + workInProgress.tag + \"). This error is likely caused by a bug in \" + 'React. Please file an issue.');\n}\n\nfunction unwindWork(current, workInProgress, renderLanes) {\n // Note: This intentionally doesn't check if we're hydrating because comparing\n // to the current tree provider fiber is just as fast and less error-prone.\n // Ideally we would have a special version of the work loop only\n // for hydration.\n popTreeContext(workInProgress);\n\n switch (workInProgress.tag) {\n case ClassComponent:\n {\n var Component = workInProgress.type;\n\n if (isContextProvider(Component)) {\n popContext(workInProgress);\n }\n\n var flags = workInProgress.flags;\n\n if (flags & ShouldCapture) {\n workInProgress.flags = flags & ~ShouldCapture | DidCapture;\n\n if ( (workInProgress.mode & ProfileMode) !== NoMode) {\n transferActualDuration(workInProgress);\n }\n\n return workInProgress;\n }\n\n return null;\n }\n\n case HostRoot:\n {\n var root = workInProgress.stateNode;\n popHostContainer(workInProgress);\n popTopLevelContextObject(workInProgress);\n resetWorkInProgressVersions();\n var _flags = workInProgress.flags;\n\n if ((_flags & ShouldCapture) !== NoFlags && (_flags & DidCapture) === NoFlags) {\n // There was an error during render that wasn't captured by a suspense\n // boundary. Do a second pass on the root to unmount the children.\n workInProgress.flags = _flags & ~ShouldCapture | DidCapture;\n return workInProgress;\n } // We unwound to the root without completing it. Exit.\n\n\n return null;\n }\n\n case HostComponent:\n {\n // TODO: popHydrationState\n popHostContext(workInProgress);\n return null;\n }\n\n case SuspenseComponent:\n {\n popSuspenseContext(workInProgress);\n var suspenseState = workInProgress.memoizedState;\n\n if (suspenseState !== null && suspenseState.dehydrated !== null) {\n if (workInProgress.alternate === null) {\n throw new Error('Threw in newly mounted dehydrated component. This is likely a bug in ' + 'React. Please file an issue.');\n }\n\n resetHydrationState();\n }\n\n var _flags2 = workInProgress.flags;\n\n if (_flags2 & ShouldCapture) {\n workInProgress.flags = _flags2 & ~ShouldCapture | DidCapture; // Captured a suspense effect. Re-render the boundary.\n\n if ( (workInProgress.mode & ProfileMode) !== NoMode) {\n transferActualDuration(workInProgress);\n }\n\n return workInProgress;\n }\n\n return null;\n }\n\n case SuspenseListComponent:\n {\n popSuspenseContext(workInProgress); // SuspenseList doesn't actually catch anything. It should've been\n // caught by a nested boundary. If not, it should bubble through.\n\n return null;\n }\n\n case HostPortal:\n popHostContainer(workInProgress);\n return null;\n\n case ContextProvider:\n var context = workInProgress.type._context;\n popProvider(context, workInProgress);\n return null;\n\n case OffscreenComponent:\n case LegacyHiddenComponent:\n popRenderLanes(workInProgress);\n return null;\n\n case CacheComponent:\n\n return null;\n\n default:\n return null;\n }\n}\n\nfunction unwindInterruptedWork(current, interruptedWork, renderLanes) {\n // Note: This intentionally doesn't check if we're hydrating because comparing\n // to the current tree provider fiber is just as fast and less error-prone.\n // Ideally we would have a special version of the work loop only\n // for hydration.\n popTreeContext(interruptedWork);\n\n switch (interruptedWork.tag) {\n case ClassComponent:\n {\n var childContextTypes = interruptedWork.type.childContextTypes;\n\n if (childContextTypes !== null && childContextTypes !== undefined) {\n popContext(interruptedWork);\n }\n\n break;\n }\n\n case HostRoot:\n {\n var root = interruptedWork.stateNode;\n popHostContainer(interruptedWork);\n popTopLevelContextObject(interruptedWork);\n resetWorkInProgressVersions();\n break;\n }\n\n case HostComponent:\n {\n popHostContext(interruptedWork);\n break;\n }\n\n case HostPortal:\n popHostContainer(interruptedWork);\n break;\n\n case SuspenseComponent:\n popSuspenseContext(interruptedWork);\n break;\n\n case SuspenseListComponent:\n popSuspenseContext(interruptedWork);\n break;\n\n case ContextProvider:\n var context = interruptedWork.type._context;\n popProvider(context, interruptedWork);\n break;\n\n case OffscreenComponent:\n case LegacyHiddenComponent:\n popRenderLanes(interruptedWork);\n break;\n }\n}\n\nvar didWarnAboutUndefinedSnapshotBeforeUpdate = null;\n\n{\n didWarnAboutUndefinedSnapshotBeforeUpdate = new Set();\n} // Used during the commit phase to track the state of the Offscreen component stack.\n// Allows us to avoid traversing the return path to find the nearest Offscreen ancestor.\n// Only used when enableSuspenseLayoutEffectSemantics is enabled.\n\n\nvar offscreenSubtreeIsHidden = false;\nvar offscreenSubtreeWasHidden = false;\nvar PossiblyWeakSet = typeof WeakSet === 'function' ? WeakSet : Set;\nvar nextEffect = null; // Used for Profiling builds to track updaters.\n\nvar inProgressLanes = null;\nvar inProgressRoot = null;\nfunction reportUncaughtErrorInDEV(error) {\n // Wrapping each small part of the commit phase into a guarded\n // callback is a bit too slow (https://github.com/facebook/react/pull/21666).\n // But we rely on it to surface errors to DEV tools like overlays\n // (https://github.com/facebook/react/issues/21712).\n // As a compromise, rethrow only caught errors in a guard.\n {\n invokeGuardedCallback(null, function () {\n throw error;\n });\n clearCaughtError();\n }\n}\n\nvar callComponentWillUnmountWithTimer = function (current, instance) {\n instance.props = current.memoizedProps;\n instance.state = current.memoizedState;\n\n if ( current.mode & ProfileMode) {\n try {\n startLayoutEffectTimer();\n instance.componentWillUnmount();\n } finally {\n recordLayoutEffectDuration(current);\n }\n } else {\n instance.componentWillUnmount();\n }\n}; // Capture errors so they don't interrupt mounting.\n\n\nfunction safelyCallCommitHookLayoutEffectListMount(current, nearestMountedAncestor) {\n try {\n commitHookEffectListMount(Layout, current);\n } catch (error) {\n captureCommitPhaseError(current, nearestMountedAncestor, error);\n }\n} // Capture errors so they don't interrupt unmounting.\n\n\nfunction safelyCallComponentWillUnmount(current, nearestMountedAncestor, instance) {\n try {\n callComponentWillUnmountWithTimer(current, instance);\n } catch (error) {\n captureCommitPhaseError(current, nearestMountedAncestor, error);\n }\n} // Capture errors so they don't interrupt mounting.\n\n\nfunction safelyCallComponentDidMount(current, nearestMountedAncestor, instance) {\n try {\n instance.componentDidMount();\n } catch (error) {\n captureCommitPhaseError(current, nearestMountedAncestor, error);\n }\n} // Capture errors so they don't interrupt mounting.\n\n\nfunction safelyAttachRef(current, nearestMountedAncestor) {\n try {\n commitAttachRef(current);\n } catch (error) {\n captureCommitPhaseError(current, nearestMountedAncestor, error);\n }\n}\n\nfunction safelyDetachRef(current, nearestMountedAncestor) {\n var ref = current.ref;\n\n if (ref !== null) {\n if (typeof ref === 'function') {\n var retVal;\n\n try {\n if (enableProfilerTimer && enableProfilerCommitHooks && current.mode & ProfileMode) {\n try {\n startLayoutEffectTimer();\n retVal = ref(null);\n } finally {\n recordLayoutEffectDuration(current);\n }\n } else {\n retVal = ref(null);\n }\n } catch (error) {\n captureCommitPhaseError(current, nearestMountedAncestor, error);\n }\n\n {\n if (typeof retVal === 'function') {\n error('Unexpected return value from a callback ref in %s. ' + 'A callback ref should not return a function.', getComponentNameFromFiber(current));\n }\n }\n } else {\n ref.current = null;\n }\n }\n}\n\nfunction safelyCallDestroy(current, nearestMountedAncestor, destroy) {\n try {\n destroy();\n } catch (error) {\n captureCommitPhaseError(current, nearestMountedAncestor, error);\n }\n}\n\nvar focusedInstanceHandle = null;\nvar shouldFireAfterActiveInstanceBlur = false;\nfunction commitBeforeMutationEffects(root, firstChild) {\n focusedInstanceHandle = prepareForCommit(root.containerInfo);\n nextEffect = firstChild;\n commitBeforeMutationEffects_begin(); // We no longer need to track the active instance fiber\n\n var shouldFire = shouldFireAfterActiveInstanceBlur;\n shouldFireAfterActiveInstanceBlur = false;\n focusedInstanceHandle = null;\n return shouldFire;\n}\n\nfunction commitBeforeMutationEffects_begin() {\n while (nextEffect !== null) {\n var fiber = nextEffect; // This phase is only used for beforeActiveInstanceBlur.\n\n var child = fiber.child;\n\n if ((fiber.subtreeFlags & BeforeMutationMask) !== NoFlags && child !== null) {\n child.return = fiber;\n nextEffect = child;\n } else {\n commitBeforeMutationEffects_complete();\n }\n }\n}\n\nfunction commitBeforeMutationEffects_complete() {\n while (nextEffect !== null) {\n var fiber = nextEffect;\n setCurrentFiber(fiber);\n\n try {\n commitBeforeMutationEffectsOnFiber(fiber);\n } catch (error) {\n captureCommitPhaseError(fiber, fiber.return, error);\n }\n\n resetCurrentFiber();\n var sibling = fiber.sibling;\n\n if (sibling !== null) {\n sibling.return = fiber.return;\n nextEffect = sibling;\n return;\n }\n\n nextEffect = fiber.return;\n }\n}\n\nfunction commitBeforeMutationEffectsOnFiber(finishedWork) {\n var current = finishedWork.alternate;\n var flags = finishedWork.flags;\n\n if ((flags & Snapshot) !== NoFlags) {\n setCurrentFiber(finishedWork);\n\n switch (finishedWork.tag) {\n case FunctionComponent:\n case ForwardRef:\n case SimpleMemoComponent:\n {\n break;\n }\n\n case ClassComponent:\n {\n if (current !== null) {\n var prevProps = current.memoizedProps;\n var prevState = current.memoizedState;\n var instance = finishedWork.stateNode; // We could update instance props and state here,\n // but instead we rely on them being set during last render.\n // TODO: revisit this when we implement resuming.\n\n {\n if (finishedWork.type === finishedWork.elementType && !didWarnAboutReassigningProps) {\n if (instance.props !== finishedWork.memoizedProps) {\n error('Expected %s props to match memoized props before ' + 'getSnapshotBeforeUpdate. ' + 'This might either be because of a bug in React, or because ' + 'a component reassigns its own `this.props`. ' + 'Please file an issue.', getComponentNameFromFiber(finishedWork) || 'instance');\n }\n\n if (instance.state !== finishedWork.memoizedState) {\n error('Expected %s state to match memoized state before ' + 'getSnapshotBeforeUpdate. ' + 'This might either be because of a bug in React, or because ' + 'a component reassigns its own `this.state`. ' + 'Please file an issue.', getComponentNameFromFiber(finishedWork) || 'instance');\n }\n }\n }\n\n var snapshot = instance.getSnapshotBeforeUpdate(finishedWork.elementType === finishedWork.type ? prevProps : resolveDefaultProps(finishedWork.type, prevProps), prevState);\n\n {\n var didWarnSet = didWarnAboutUndefinedSnapshotBeforeUpdate;\n\n if (snapshot === undefined && !didWarnSet.has(finishedWork.type)) {\n didWarnSet.add(finishedWork.type);\n\n error('%s.getSnapshotBeforeUpdate(): A snapshot value (or null) ' + 'must be returned. You have returned undefined.', getComponentNameFromFiber(finishedWork));\n }\n }\n\n instance.__reactInternalSnapshotBeforeUpdate = snapshot;\n }\n\n break;\n }\n\n case HostRoot:\n {\n {\n var root = finishedWork.stateNode;\n clearContainer(root.containerInfo);\n }\n\n break;\n }\n\n case HostComponent:\n case HostText:\n case HostPortal:\n case IncompleteClassComponent:\n // Nothing to do for these component types\n break;\n\n default:\n {\n throw new Error('This unit of work tag should not have side-effects. This error is ' + 'likely caused by a bug in React. Please file an issue.');\n }\n }\n\n resetCurrentFiber();\n }\n}\n\nfunction commitHookEffectListUnmount(flags, finishedWork, nearestMountedAncestor) {\n var updateQueue = finishedWork.updateQueue;\n var lastEffect = updateQueue !== null ? updateQueue.lastEffect : null;\n\n if (lastEffect !== null) {\n var firstEffect = lastEffect.next;\n var effect = firstEffect;\n\n do {\n if ((effect.tag & flags) === flags) {\n // Unmount\n var destroy = effect.destroy;\n effect.destroy = undefined;\n\n if (destroy !== undefined) {\n {\n if ((flags & Passive$1) !== NoFlags$1) {\n markComponentPassiveEffectUnmountStarted(finishedWork);\n } else if ((flags & Layout) !== NoFlags$1) {\n markComponentLayoutEffectUnmountStarted(finishedWork);\n }\n }\n\n {\n if ((flags & Insertion) !== NoFlags$1) {\n setIsRunningInsertionEffect(true);\n }\n }\n\n safelyCallDestroy(finishedWork, nearestMountedAncestor, destroy);\n\n {\n if ((flags & Insertion) !== NoFlags$1) {\n setIsRunningInsertionEffect(false);\n }\n }\n\n {\n if ((flags & Passive$1) !== NoFlags$1) {\n markComponentPassiveEffectUnmountStopped();\n } else if ((flags & Layout) !== NoFlags$1) {\n markComponentLayoutEffectUnmountStopped();\n }\n }\n }\n }\n\n effect = effect.next;\n } while (effect !== firstEffect);\n }\n}\n\nfunction commitHookEffectListMount(flags, finishedWork) {\n var updateQueue = finishedWork.updateQueue;\n var lastEffect = updateQueue !== null ? updateQueue.lastEffect : null;\n\n if (lastEffect !== null) {\n var firstEffect = lastEffect.next;\n var effect = firstEffect;\n\n do {\n if ((effect.tag & flags) === flags) {\n {\n if ((flags & Passive$1) !== NoFlags$1) {\n markComponentPassiveEffectMountStarted(finishedWork);\n } else if ((flags & Layout) !== NoFlags$1) {\n markComponentLayoutEffectMountStarted(finishedWork);\n }\n } // Mount\n\n\n var create = effect.create;\n\n {\n if ((flags & Insertion) !== NoFlags$1) {\n setIsRunningInsertionEffect(true);\n }\n }\n\n effect.destroy = create();\n\n {\n if ((flags & Insertion) !== NoFlags$1) {\n setIsRunningInsertionEffect(false);\n }\n }\n\n {\n if ((flags & Passive$1) !== NoFlags$1) {\n markComponentPassiveEffectMountStopped();\n } else if ((flags & Layout) !== NoFlags$1) {\n markComponentLayoutEffectMountStopped();\n }\n }\n\n {\n var destroy = effect.destroy;\n\n if (destroy !== undefined && typeof destroy !== 'function') {\n var hookName = void 0;\n\n if ((effect.tag & Layout) !== NoFlags) {\n hookName = 'useLayoutEffect';\n } else if ((effect.tag & Insertion) !== NoFlags) {\n hookName = 'useInsertionEffect';\n } else {\n hookName = 'useEffect';\n }\n\n var addendum = void 0;\n\n if (destroy === null) {\n addendum = ' You returned null. If your effect does not require clean ' + 'up, return undefined (or nothing).';\n } else if (typeof destroy.then === 'function') {\n addendum = '\\n\\nIt looks like you wrote ' + hookName + '(async () => ...) or returned a Promise. ' + 'Instead, write the async function inside your effect ' + 'and call it immediately:\\n\\n' + hookName + '(() => {\\n' + ' async function fetchData() {\\n' + ' // You can await here\\n' + ' const response = await MyAPI.getData(someId);\\n' + ' // ...\\n' + ' }\\n' + ' fetchData();\\n' + \"}, [someId]); // Or [] if effect doesn't need props or state\\n\\n\" + 'Learn more about data fetching with Hooks: https://reactjs.org/link/hooks-data-fetching';\n } else {\n addendum = ' You returned: ' + destroy;\n }\n\n error('%s must not return anything besides a function, ' + 'which is used for clean-up.%s', hookName, addendum);\n }\n }\n }\n\n effect = effect.next;\n } while (effect !== firstEffect);\n }\n}\n\nfunction commitPassiveEffectDurations(finishedRoot, finishedWork) {\n {\n // Only Profilers with work in their subtree will have an Update effect scheduled.\n if ((finishedWork.flags & Update) !== NoFlags) {\n switch (finishedWork.tag) {\n case Profiler:\n {\n var passiveEffectDuration = finishedWork.stateNode.passiveEffectDuration;\n var _finishedWork$memoize = finishedWork.memoizedProps,\n id = _finishedWork$memoize.id,\n onPostCommit = _finishedWork$memoize.onPostCommit; // This value will still reflect the previous commit phase.\n // It does not get reset until the start of the next commit phase.\n\n var commitTime = getCommitTime();\n var phase = finishedWork.alternate === null ? 'mount' : 'update';\n\n {\n if (isCurrentUpdateNested()) {\n phase = 'nested-update';\n }\n }\n\n if (typeof onPostCommit === 'function') {\n onPostCommit(id, phase, passiveEffectDuration, commitTime);\n } // Bubble times to the next nearest ancestor Profiler.\n // After we process that Profiler, we'll bubble further up.\n\n\n var parentFiber = finishedWork.return;\n\n outer: while (parentFiber !== null) {\n switch (parentFiber.tag) {\n case HostRoot:\n var root = parentFiber.stateNode;\n root.passiveEffectDuration += passiveEffectDuration;\n break outer;\n\n case Profiler:\n var parentStateNode = parentFiber.stateNode;\n parentStateNode.passiveEffectDuration += passiveEffectDuration;\n break outer;\n }\n\n parentFiber = parentFiber.return;\n }\n\n break;\n }\n }\n }\n }\n}\n\nfunction commitLayoutEffectOnFiber(finishedRoot, current, finishedWork, committedLanes) {\n if ((finishedWork.flags & LayoutMask) !== NoFlags) {\n switch (finishedWork.tag) {\n case FunctionComponent:\n case ForwardRef:\n case SimpleMemoComponent:\n {\n if ( !offscreenSubtreeWasHidden) {\n // At this point layout effects have already been destroyed (during mutation phase).\n // This is done to prevent sibling component effects from interfering with each other,\n // e.g. a destroy function in one component should never override a ref set\n // by a create function in another component during the same commit.\n if ( finishedWork.mode & ProfileMode) {\n try {\n startLayoutEffectTimer();\n commitHookEffectListMount(Layout | HasEffect, finishedWork);\n } finally {\n recordLayoutEffectDuration(finishedWork);\n }\n } else {\n commitHookEffectListMount(Layout | HasEffect, finishedWork);\n }\n }\n\n break;\n }\n\n case ClassComponent:\n {\n var instance = finishedWork.stateNode;\n\n if (finishedWork.flags & Update) {\n if (!offscreenSubtreeWasHidden) {\n if (current === null) {\n // We could update instance props and state here,\n // but instead we rely on them being set during last render.\n // TODO: revisit this when we implement resuming.\n {\n if (finishedWork.type === finishedWork.elementType && !didWarnAboutReassigningProps) {\n if (instance.props !== finishedWork.memoizedProps) {\n error('Expected %s props to match memoized props before ' + 'componentDidMount. ' + 'This might either be because of a bug in React, or because ' + 'a component reassigns its own `this.props`. ' + 'Please file an issue.', getComponentNameFromFiber(finishedWork) || 'instance');\n }\n\n if (instance.state !== finishedWork.memoizedState) {\n error('Expected %s state to match memoized state before ' + 'componentDidMount. ' + 'This might either be because of a bug in React, or because ' + 'a component reassigns its own `this.state`. ' + 'Please file an issue.', getComponentNameFromFiber(finishedWork) || 'instance');\n }\n }\n }\n\n if ( finishedWork.mode & ProfileMode) {\n try {\n startLayoutEffectTimer();\n instance.componentDidMount();\n } finally {\n recordLayoutEffectDuration(finishedWork);\n }\n } else {\n instance.componentDidMount();\n }\n } else {\n var prevProps = finishedWork.elementType === finishedWork.type ? current.memoizedProps : resolveDefaultProps(finishedWork.type, current.memoizedProps);\n var prevState = current.memoizedState; // We could update instance props and state here,\n // but instead we rely on them being set during last render.\n // TODO: revisit this when we implement resuming.\n\n {\n if (finishedWork.type === finishedWork.elementType && !didWarnAboutReassigningProps) {\n if (instance.props !== finishedWork.memoizedProps) {\n error('Expected %s props to match memoized props before ' + 'componentDidUpdate. ' + 'This might either be because of a bug in React, or because ' + 'a component reassigns its own `this.props`. ' + 'Please file an issue.', getComponentNameFromFiber(finishedWork) || 'instance');\n }\n\n if (instance.state !== finishedWork.memoizedState) {\n error('Expected %s state to match memoized state before ' + 'componentDidUpdate. ' + 'This might either be because of a bug in React, or because ' + 'a component reassigns its own `this.state`. ' + 'Please file an issue.', getComponentNameFromFiber(finishedWork) || 'instance');\n }\n }\n }\n\n if ( finishedWork.mode & ProfileMode) {\n try {\n startLayoutEffectTimer();\n instance.componentDidUpdate(prevProps, prevState, instance.__reactInternalSnapshotBeforeUpdate);\n } finally {\n recordLayoutEffectDuration(finishedWork);\n }\n } else {\n instance.componentDidUpdate(prevProps, prevState, instance.__reactInternalSnapshotBeforeUpdate);\n }\n }\n }\n } // TODO: I think this is now always non-null by the time it reaches the\n // commit phase. Consider removing the type check.\n\n\n var updateQueue = finishedWork.updateQueue;\n\n if (updateQueue !== null) {\n {\n if (finishedWork.type === finishedWork.elementType && !didWarnAboutReassigningProps) {\n if (instance.props !== finishedWork.memoizedProps) {\n error('Expected %s props to match memoized props before ' + 'processing the update queue. ' + 'This might either be because of a bug in React, or because ' + 'a component reassigns its own `this.props`. ' + 'Please file an issue.', getComponentNameFromFiber(finishedWork) || 'instance');\n }\n\n if (instance.state !== finishedWork.memoizedState) {\n error('Expected %s state to match memoized state before ' + 'processing the update queue. ' + 'This might either be because of a bug in React, or because ' + 'a component reassigns its own `this.state`. ' + 'Please file an issue.', getComponentNameFromFiber(finishedWork) || 'instance');\n }\n }\n } // We could update instance props and state here,\n // but instead we rely on them being set during last render.\n // TODO: revisit this when we implement resuming.\n\n\n commitUpdateQueue(finishedWork, updateQueue, instance);\n }\n\n break;\n }\n\n case HostRoot:\n {\n // TODO: I think this is now always non-null by the time it reaches the\n // commit phase. Consider removing the type check.\n var _updateQueue = finishedWork.updateQueue;\n\n if (_updateQueue !== null) {\n var _instance = null;\n\n if (finishedWork.child !== null) {\n switch (finishedWork.child.tag) {\n case HostComponent:\n _instance = getPublicInstance(finishedWork.child.stateNode);\n break;\n\n case ClassComponent:\n _instance = finishedWork.child.stateNode;\n break;\n }\n }\n\n commitUpdateQueue(finishedWork, _updateQueue, _instance);\n }\n\n break;\n }\n\n case HostComponent:\n {\n var _instance2 = finishedWork.stateNode; // Renderers may schedule work to be done after host components are mounted\n // (eg DOM renderer may schedule auto-focus for inputs and form controls).\n // These effects should only be committed when components are first mounted,\n // aka when there is no current/alternate.\n\n if (current === null && finishedWork.flags & Update) {\n var type = finishedWork.type;\n var props = finishedWork.memoizedProps;\n commitMount(_instance2, type, props);\n }\n\n break;\n }\n\n case HostText:\n {\n // We have no life-cycles associated with text.\n break;\n }\n\n case HostPortal:\n {\n // We have no life-cycles associated with portals.\n break;\n }\n\n case Profiler:\n {\n {\n var _finishedWork$memoize2 = finishedWork.memoizedProps,\n onCommit = _finishedWork$memoize2.onCommit,\n onRender = _finishedWork$memoize2.onRender;\n var effectDuration = finishedWork.stateNode.effectDuration;\n var commitTime = getCommitTime();\n var phase = current === null ? 'mount' : 'update';\n\n {\n if (isCurrentUpdateNested()) {\n phase = 'nested-update';\n }\n }\n\n if (typeof onRender === 'function') {\n onRender(finishedWork.memoizedProps.id, phase, finishedWork.actualDuration, finishedWork.treeBaseDuration, finishedWork.actualStartTime, commitTime);\n }\n\n {\n if (typeof onCommit === 'function') {\n onCommit(finishedWork.memoizedProps.id, phase, effectDuration, commitTime);\n } // Schedule a passive effect for this Profiler to call onPostCommit hooks.\n // This effect should be scheduled even if there is no onPostCommit callback for this Profiler,\n // because the effect is also where times bubble to parent Profilers.\n\n\n enqueuePendingPassiveProfilerEffect(finishedWork); // Propagate layout effect durations to the next nearest Profiler ancestor.\n // Do not reset these values until the next render so DevTools has a chance to read them first.\n\n var parentFiber = finishedWork.return;\n\n outer: while (parentFiber !== null) {\n switch (parentFiber.tag) {\n case HostRoot:\n var root = parentFiber.stateNode;\n root.effectDuration += effectDuration;\n break outer;\n\n case Profiler:\n var parentStateNode = parentFiber.stateNode;\n parentStateNode.effectDuration += effectDuration;\n break outer;\n }\n\n parentFiber = parentFiber.return;\n }\n }\n }\n\n break;\n }\n\n case SuspenseComponent:\n {\n commitSuspenseHydrationCallbacks(finishedRoot, finishedWork);\n break;\n }\n\n case SuspenseListComponent:\n case IncompleteClassComponent:\n case ScopeComponent:\n case OffscreenComponent:\n case LegacyHiddenComponent:\n case TracingMarkerComponent:\n {\n break;\n }\n\n default:\n throw new Error('This unit of work tag should not have side-effects. This error is ' + 'likely caused by a bug in React. Please file an issue.');\n }\n }\n\n if ( !offscreenSubtreeWasHidden) {\n {\n if (finishedWork.flags & Ref) {\n commitAttachRef(finishedWork);\n }\n }\n }\n}\n\nfunction reappearLayoutEffectsOnFiber(node) {\n // Turn on layout effects in a tree that previously disappeared.\n // TODO (Offscreen) Check: flags & LayoutStatic\n switch (node.tag) {\n case FunctionComponent:\n case ForwardRef:\n case SimpleMemoComponent:\n {\n if ( node.mode & ProfileMode) {\n try {\n startLayoutEffectTimer();\n safelyCallCommitHookLayoutEffectListMount(node, node.return);\n } finally {\n recordLayoutEffectDuration(node);\n }\n } else {\n safelyCallCommitHookLayoutEffectListMount(node, node.return);\n }\n\n break;\n }\n\n case ClassComponent:\n {\n var instance = node.stateNode;\n\n if (typeof instance.componentDidMount === 'function') {\n safelyCallComponentDidMount(node, node.return, instance);\n }\n\n safelyAttachRef(node, node.return);\n break;\n }\n\n case HostComponent:\n {\n safelyAttachRef(node, node.return);\n break;\n }\n }\n}\n\nfunction hideOrUnhideAllChildren(finishedWork, isHidden) {\n // Only hide or unhide the top-most host nodes.\n var hostSubtreeRoot = null;\n\n {\n // We only have the top Fiber that was inserted but we need to recurse down its\n // children to find all the terminal nodes.\n var node = finishedWork;\n\n while (true) {\n if (node.tag === HostComponent) {\n if (hostSubtreeRoot === null) {\n hostSubtreeRoot = node;\n\n try {\n var instance = node.stateNode;\n\n if (isHidden) {\n hideInstance(instance);\n } else {\n unhideInstance(node.stateNode, node.memoizedProps);\n }\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n } else if (node.tag === HostText) {\n if (hostSubtreeRoot === null) {\n try {\n var _instance3 = node.stateNode;\n\n if (isHidden) {\n hideTextInstance(_instance3);\n } else {\n unhideTextInstance(_instance3, node.memoizedProps);\n }\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n } else if ((node.tag === OffscreenComponent || node.tag === LegacyHiddenComponent) && node.memoizedState !== null && node !== finishedWork) ; else if (node.child !== null) {\n node.child.return = node;\n node = node.child;\n continue;\n }\n\n if (node === finishedWork) {\n return;\n }\n\n while (node.sibling === null) {\n if (node.return === null || node.return === finishedWork) {\n return;\n }\n\n if (hostSubtreeRoot === node) {\n hostSubtreeRoot = null;\n }\n\n node = node.return;\n }\n\n if (hostSubtreeRoot === node) {\n hostSubtreeRoot = null;\n }\n\n node.sibling.return = node.return;\n node = node.sibling;\n }\n }\n}\n\nfunction commitAttachRef(finishedWork) {\n var ref = finishedWork.ref;\n\n if (ref !== null) {\n var instance = finishedWork.stateNode;\n var instanceToUse;\n\n switch (finishedWork.tag) {\n case HostComponent:\n instanceToUse = getPublicInstance(instance);\n break;\n\n default:\n instanceToUse = instance;\n } // Moved outside to ensure DCE works with this flag\n\n if (typeof ref === 'function') {\n var retVal;\n\n if ( finishedWork.mode & ProfileMode) {\n try {\n startLayoutEffectTimer();\n retVal = ref(instanceToUse);\n } finally {\n recordLayoutEffectDuration(finishedWork);\n }\n } else {\n retVal = ref(instanceToUse);\n }\n\n {\n if (typeof retVal === 'function') {\n error('Unexpected return value from a callback ref in %s. ' + 'A callback ref should not return a function.', getComponentNameFromFiber(finishedWork));\n }\n }\n } else {\n {\n if (!ref.hasOwnProperty('current')) {\n error('Unexpected ref object provided for %s. ' + 'Use either a ref-setter function or React.createRef().', getComponentNameFromFiber(finishedWork));\n }\n }\n\n ref.current = instanceToUse;\n }\n }\n}\n\nfunction detachFiberMutation(fiber) {\n // Cut off the return pointer to disconnect it from the tree.\n // This enables us to detect and warn against state updates on an unmounted component.\n // It also prevents events from bubbling from within disconnected components.\n //\n // Ideally, we should also clear the child pointer of the parent alternate to let this\n // get GC:ed but we don't know which for sure which parent is the current\n // one so we'll settle for GC:ing the subtree of this child.\n // This child itself will be GC:ed when the parent updates the next time.\n //\n // Note that we can't clear child or sibling pointers yet.\n // They're needed for passive effects and for findDOMNode.\n // We defer those fields, and all other cleanup, to the passive phase (see detachFiberAfterEffects).\n //\n // Don't reset the alternate yet, either. We need that so we can detach the\n // alternate's fields in the passive phase. Clearing the return pointer is\n // sufficient for findDOMNode semantics.\n var alternate = fiber.alternate;\n\n if (alternate !== null) {\n alternate.return = null;\n }\n\n fiber.return = null;\n}\n\nfunction detachFiberAfterEffects(fiber) {\n var alternate = fiber.alternate;\n\n if (alternate !== null) {\n fiber.alternate = null;\n detachFiberAfterEffects(alternate);\n } // Note: Defensively using negation instead of < in case\n // `deletedTreeCleanUpLevel` is undefined.\n\n\n {\n // Clear cyclical Fiber fields. This level alone is designed to roughly\n // approximate the planned Fiber refactor. In that world, `setState` will be\n // bound to a special \"instance\" object instead of a Fiber. The Instance\n // object will not have any of these fields. It will only be connected to\n // the fiber tree via a single link at the root. So if this level alone is\n // sufficient to fix memory issues, that bodes well for our plans.\n fiber.child = null;\n fiber.deletions = null;\n fiber.sibling = null; // The `stateNode` is cyclical because on host nodes it points to the host\n // tree, which has its own pointers to children, parents, and siblings.\n // The other host nodes also point back to fibers, so we should detach that\n // one, too.\n\n if (fiber.tag === HostComponent) {\n var hostInstance = fiber.stateNode;\n\n if (hostInstance !== null) {\n detachDeletedInstance(hostInstance);\n }\n }\n\n fiber.stateNode = null; // I'm intentionally not clearing the `return` field in this level. We\n // already disconnect the `return` pointer at the root of the deleted\n // subtree (in `detachFiberMutation`). Besides, `return` by itself is not\n // cyclical \u2014 it's only cyclical when combined with `child`, `sibling`, and\n // `alternate`. But we'll clear it in the next level anyway, just in case.\n\n {\n fiber._debugOwner = null;\n }\n\n {\n // Theoretically, nothing in here should be necessary, because we already\n // disconnected the fiber from the tree. So even if something leaks this\n // particular fiber, it won't leak anything else\n //\n // The purpose of this branch is to be super aggressive so we can measure\n // if there's any difference in memory impact. If there is, that could\n // indicate a React leak we don't know about.\n fiber.return = null;\n fiber.dependencies = null;\n fiber.memoizedProps = null;\n fiber.memoizedState = null;\n fiber.pendingProps = null;\n fiber.stateNode = null; // TODO: Move to `commitPassiveUnmountInsideDeletedTreeOnFiber` instead.\n\n fiber.updateQueue = null;\n }\n }\n}\n\nfunction getHostParentFiber(fiber) {\n var parent = fiber.return;\n\n while (parent !== null) {\n if (isHostParent(parent)) {\n return parent;\n }\n\n parent = parent.return;\n }\n\n throw new Error('Expected to find a host parent. This error is likely caused by a bug ' + 'in React. Please file an issue.');\n}\n\nfunction isHostParent(fiber) {\n return fiber.tag === HostComponent || fiber.tag === HostRoot || fiber.tag === HostPortal;\n}\n\nfunction getHostSibling(fiber) {\n // We're going to search forward into the tree until we find a sibling host\n // node. Unfortunately, if multiple insertions are done in a row we have to\n // search past them. This leads to exponential search for the next sibling.\n // TODO: Find a more efficient way to do this.\n var node = fiber;\n\n siblings: while (true) {\n // If we didn't find anything, let's try the next sibling.\n while (node.sibling === null) {\n if (node.return === null || isHostParent(node.return)) {\n // If we pop out of the root or hit the parent the fiber we are the\n // last sibling.\n return null;\n }\n\n node = node.return;\n }\n\n node.sibling.return = node.return;\n node = node.sibling;\n\n while (node.tag !== HostComponent && node.tag !== HostText && node.tag !== DehydratedFragment) {\n // If it is not host node and, we might have a host node inside it.\n // Try to search down until we find one.\n if (node.flags & Placement) {\n // If we don't have a child, try the siblings instead.\n continue siblings;\n } // If we don't have a child, try the siblings instead.\n // We also skip portals because they are not part of this host tree.\n\n\n if (node.child === null || node.tag === HostPortal) {\n continue siblings;\n } else {\n node.child.return = node;\n node = node.child;\n }\n } // Check if this host node is stable or about to be placed.\n\n\n if (!(node.flags & Placement)) {\n // Found it!\n return node.stateNode;\n }\n }\n}\n\nfunction commitPlacement(finishedWork) {\n\n\n var parentFiber = getHostParentFiber(finishedWork); // Note: these two variables *must* always be updated together.\n\n switch (parentFiber.tag) {\n case HostComponent:\n {\n var parent = parentFiber.stateNode;\n\n if (parentFiber.flags & ContentReset) {\n // Reset the text content of the parent before doing any insertions\n resetTextContent(parent); // Clear ContentReset from the effect tag\n\n parentFiber.flags &= ~ContentReset;\n }\n\n var before = getHostSibling(finishedWork); // We only have the top Fiber that was inserted but we need to recurse down its\n // children to find all the terminal nodes.\n\n insertOrAppendPlacementNode(finishedWork, before, parent);\n break;\n }\n\n case HostRoot:\n case HostPortal:\n {\n var _parent = parentFiber.stateNode.containerInfo;\n\n var _before = getHostSibling(finishedWork);\n\n insertOrAppendPlacementNodeIntoContainer(finishedWork, _before, _parent);\n break;\n }\n // eslint-disable-next-line-no-fallthrough\n\n default:\n throw new Error('Invalid host parent fiber. This error is likely caused by a bug ' + 'in React. Please file an issue.');\n }\n}\n\nfunction insertOrAppendPlacementNodeIntoContainer(node, before, parent) {\n var tag = node.tag;\n var isHost = tag === HostComponent || tag === HostText;\n\n if (isHost) {\n var stateNode = node.stateNode;\n\n if (before) {\n insertInContainerBefore(parent, stateNode, before);\n } else {\n appendChildToContainer(parent, stateNode);\n }\n } else if (tag === HostPortal) ; else {\n var child = node.child;\n\n if (child !== null) {\n insertOrAppendPlacementNodeIntoContainer(child, before, parent);\n var sibling = child.sibling;\n\n while (sibling !== null) {\n insertOrAppendPlacementNodeIntoContainer(sibling, before, parent);\n sibling = sibling.sibling;\n }\n }\n }\n}\n\nfunction insertOrAppendPlacementNode(node, before, parent) {\n var tag = node.tag;\n var isHost = tag === HostComponent || tag === HostText;\n\n if (isHost) {\n var stateNode = node.stateNode;\n\n if (before) {\n insertBefore(parent, stateNode, before);\n } else {\n appendChild(parent, stateNode);\n }\n } else if (tag === HostPortal) ; else {\n var child = node.child;\n\n if (child !== null) {\n insertOrAppendPlacementNode(child, before, parent);\n var sibling = child.sibling;\n\n while (sibling !== null) {\n insertOrAppendPlacementNode(sibling, before, parent);\n sibling = sibling.sibling;\n }\n }\n }\n} // These are tracked on the stack as we recursively traverse a\n// deleted subtree.\n// TODO: Update these during the whole mutation phase, not just during\n// a deletion.\n\n\nvar hostParent = null;\nvar hostParentIsContainer = false;\n\nfunction commitDeletionEffects(root, returnFiber, deletedFiber) {\n {\n // We only have the top Fiber that was deleted but we need to recurse down its\n // children to find all the terminal nodes.\n // Recursively delete all host nodes from the parent, detach refs, clean\n // up mounted layout effects, and call componentWillUnmount.\n // We only need to remove the topmost host child in each branch. But then we\n // still need to keep traversing to unmount effects, refs, and cWU. TODO: We\n // could split this into two separate traversals functions, where the second\n // one doesn't include any removeChild logic. This is maybe the same\n // function as \"disappearLayoutEffects\" (or whatever that turns into after\n // the layout phase is refactored to use recursion).\n // Before starting, find the nearest host parent on the stack so we know\n // which instance/container to remove the children from.\n // TODO: Instead of searching up the fiber return path on every deletion, we\n // can track the nearest host component on the JS stack as we traverse the\n // tree during the commit phase. This would make insertions faster, too.\n var parent = returnFiber;\n\n findParent: while (parent !== null) {\n switch (parent.tag) {\n case HostComponent:\n {\n hostParent = parent.stateNode;\n hostParentIsContainer = false;\n break findParent;\n }\n\n case HostRoot:\n {\n hostParent = parent.stateNode.containerInfo;\n hostParentIsContainer = true;\n break findParent;\n }\n\n case HostPortal:\n {\n hostParent = parent.stateNode.containerInfo;\n hostParentIsContainer = true;\n break findParent;\n }\n }\n\n parent = parent.return;\n }\n\n if (hostParent === null) {\n throw new Error('Expected to find a host parent. This error is likely caused by ' + 'a bug in React. Please file an issue.');\n }\n\n commitDeletionEffectsOnFiber(root, returnFiber, deletedFiber);\n hostParent = null;\n hostParentIsContainer = false;\n }\n\n detachFiberMutation(deletedFiber);\n}\n\nfunction recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, parent) {\n // TODO: Use a static flag to skip trees that don't have unmount effects\n var child = parent.child;\n\n while (child !== null) {\n commitDeletionEffectsOnFiber(finishedRoot, nearestMountedAncestor, child);\n child = child.sibling;\n }\n}\n\nfunction commitDeletionEffectsOnFiber(finishedRoot, nearestMountedAncestor, deletedFiber) {\n onCommitUnmount(deletedFiber); // The cases in this outer switch modify the stack before they traverse\n // into their subtree. There are simpler cases in the inner switch\n // that don't modify the stack.\n\n switch (deletedFiber.tag) {\n case HostComponent:\n {\n if (!offscreenSubtreeWasHidden) {\n safelyDetachRef(deletedFiber, nearestMountedAncestor);\n } // Intentional fallthrough to next branch\n\n }\n // eslint-disable-next-line-no-fallthrough\n\n case HostText:\n {\n // We only need to remove the nearest host child. Set the host parent\n // to `null` on the stack to indicate that nested children don't\n // need to be removed.\n {\n var prevHostParent = hostParent;\n var prevHostParentIsContainer = hostParentIsContainer;\n hostParent = null;\n recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);\n hostParent = prevHostParent;\n hostParentIsContainer = prevHostParentIsContainer;\n\n if (hostParent !== null) {\n // Now that all the child effects have unmounted, we can remove the\n // node from the tree.\n if (hostParentIsContainer) {\n removeChildFromContainer(hostParent, deletedFiber.stateNode);\n } else {\n removeChild(hostParent, deletedFiber.stateNode);\n }\n }\n }\n\n return;\n }\n\n case DehydratedFragment:\n {\n // Delete the dehydrated suspense boundary and all of its content.\n\n\n {\n if (hostParent !== null) {\n if (hostParentIsContainer) {\n clearSuspenseBoundaryFromContainer(hostParent, deletedFiber.stateNode);\n } else {\n clearSuspenseBoundary(hostParent, deletedFiber.stateNode);\n }\n }\n }\n\n return;\n }\n\n case HostPortal:\n {\n {\n // When we go into a portal, it becomes the parent to remove from.\n var _prevHostParent = hostParent;\n var _prevHostParentIsContainer = hostParentIsContainer;\n hostParent = deletedFiber.stateNode.containerInfo;\n hostParentIsContainer = true;\n recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);\n hostParent = _prevHostParent;\n hostParentIsContainer = _prevHostParentIsContainer;\n }\n\n return;\n }\n\n case FunctionComponent:\n case ForwardRef:\n case MemoComponent:\n case SimpleMemoComponent:\n {\n if (!offscreenSubtreeWasHidden) {\n var updateQueue = deletedFiber.updateQueue;\n\n if (updateQueue !== null) {\n var lastEffect = updateQueue.lastEffect;\n\n if (lastEffect !== null) {\n var firstEffect = lastEffect.next;\n var effect = firstEffect;\n\n do {\n var _effect = effect,\n destroy = _effect.destroy,\n tag = _effect.tag;\n\n if (destroy !== undefined) {\n if ((tag & Insertion) !== NoFlags$1) {\n safelyCallDestroy(deletedFiber, nearestMountedAncestor, destroy);\n } else if ((tag & Layout) !== NoFlags$1) {\n {\n markComponentLayoutEffectUnmountStarted(deletedFiber);\n }\n\n if ( deletedFiber.mode & ProfileMode) {\n startLayoutEffectTimer();\n safelyCallDestroy(deletedFiber, nearestMountedAncestor, destroy);\n recordLayoutEffectDuration(deletedFiber);\n } else {\n safelyCallDestroy(deletedFiber, nearestMountedAncestor, destroy);\n }\n\n {\n markComponentLayoutEffectUnmountStopped();\n }\n }\n }\n\n effect = effect.next;\n } while (effect !== firstEffect);\n }\n }\n }\n\n recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);\n return;\n }\n\n case ClassComponent:\n {\n if (!offscreenSubtreeWasHidden) {\n safelyDetachRef(deletedFiber, nearestMountedAncestor);\n var instance = deletedFiber.stateNode;\n\n if (typeof instance.componentWillUnmount === 'function') {\n safelyCallComponentWillUnmount(deletedFiber, nearestMountedAncestor, instance);\n }\n }\n\n recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);\n return;\n }\n\n case ScopeComponent:\n {\n\n recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);\n return;\n }\n\n case OffscreenComponent:\n {\n if ( // TODO: Remove this dead flag\n deletedFiber.mode & ConcurrentMode) {\n // If this offscreen component is hidden, we already unmounted it. Before\n // deleting the children, track that it's already unmounted so that we\n // don't attempt to unmount the effects again.\n // TODO: If the tree is hidden, in most cases we should be able to skip\n // over the nested children entirely. An exception is we haven't yet found\n // the topmost host node to delete, which we already track on the stack.\n // But the other case is portals, which need to be detached no matter how\n // deeply they are nested. We should use a subtree flag to track whether a\n // subtree includes a nested portal.\n var prevOffscreenSubtreeWasHidden = offscreenSubtreeWasHidden;\n offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden || deletedFiber.memoizedState !== null;\n recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);\n offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden;\n } else {\n recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);\n }\n\n break;\n }\n\n default:\n {\n recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, deletedFiber);\n return;\n }\n }\n}\n\nfunction commitSuspenseCallback(finishedWork) {\n // TODO: Move this to passive phase\n var newState = finishedWork.memoizedState;\n}\n\nfunction commitSuspenseHydrationCallbacks(finishedRoot, finishedWork) {\n\n var newState = finishedWork.memoizedState;\n\n if (newState === null) {\n var current = finishedWork.alternate;\n\n if (current !== null) {\n var prevState = current.memoizedState;\n\n if (prevState !== null) {\n var suspenseInstance = prevState.dehydrated;\n\n if (suspenseInstance !== null) {\n commitHydratedSuspenseInstance(suspenseInstance);\n }\n }\n }\n }\n}\n\nfunction attachSuspenseRetryListeners(finishedWork) {\n // If this boundary just timed out, then it will have a set of wakeables.\n // For each wakeable, attach a listener so that when it resolves, React\n // attempts to re-render the boundary in the primary (pre-timeout) state.\n var wakeables = finishedWork.updateQueue;\n\n if (wakeables !== null) {\n finishedWork.updateQueue = null;\n var retryCache = finishedWork.stateNode;\n\n if (retryCache === null) {\n retryCache = finishedWork.stateNode = new PossiblyWeakSet();\n }\n\n wakeables.forEach(function (wakeable) {\n // Memoize using the boundary fiber to prevent redundant listeners.\n var retry = resolveRetryWakeable.bind(null, finishedWork, wakeable);\n\n if (!retryCache.has(wakeable)) {\n retryCache.add(wakeable);\n\n {\n if (isDevToolsPresent) {\n if (inProgressLanes !== null && inProgressRoot !== null) {\n // If we have pending work still, associate the original updaters with it.\n restorePendingUpdaters(inProgressRoot, inProgressLanes);\n } else {\n throw Error('Expected finished root and lanes to be set. This is a bug in React.');\n }\n }\n }\n\n wakeable.then(retry, retry);\n }\n });\n }\n} // This function detects when a Suspense boundary goes from visible to hidden.\nfunction commitMutationEffects(root, finishedWork, committedLanes) {\n inProgressLanes = committedLanes;\n inProgressRoot = root;\n setCurrentFiber(finishedWork);\n commitMutationEffectsOnFiber(finishedWork, root);\n setCurrentFiber(finishedWork);\n inProgressLanes = null;\n inProgressRoot = null;\n}\n\nfunction recursivelyTraverseMutationEffects(root, parentFiber, lanes) {\n // Deletions effects can be scheduled on any fiber type. They need to happen\n // before the children effects hae fired.\n var deletions = parentFiber.deletions;\n\n if (deletions !== null) {\n for (var i = 0; i < deletions.length; i++) {\n var childToDelete = deletions[i];\n\n try {\n commitDeletionEffects(root, parentFiber, childToDelete);\n } catch (error) {\n captureCommitPhaseError(childToDelete, parentFiber, error);\n }\n }\n }\n\n var prevDebugFiber = getCurrentFiber();\n\n if (parentFiber.subtreeFlags & MutationMask) {\n var child = parentFiber.child;\n\n while (child !== null) {\n setCurrentFiber(child);\n commitMutationEffectsOnFiber(child, root);\n child = child.sibling;\n }\n }\n\n setCurrentFiber(prevDebugFiber);\n}\n\nfunction commitMutationEffectsOnFiber(finishedWork, root, lanes) {\n var current = finishedWork.alternate;\n var flags = finishedWork.flags; // The effect flag should be checked *after* we refine the type of fiber,\n // because the fiber tag is more specific. An exception is any flag related\n // to reconcilation, because those can be set on all fiber types.\n\n switch (finishedWork.tag) {\n case FunctionComponent:\n case ForwardRef:\n case MemoComponent:\n case SimpleMemoComponent:\n {\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n\n if (flags & Update) {\n try {\n commitHookEffectListUnmount(Insertion | HasEffect, finishedWork, finishedWork.return);\n commitHookEffectListMount(Insertion | HasEffect, finishedWork);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n } // Layout effects are destroyed during the mutation phase so that all\n // destroy functions for all fibers are called before any create functions.\n // This prevents sibling component effects from interfering with each other,\n // e.g. a destroy function in one component should never override a ref set\n // by a create function in another component during the same commit.\n\n\n if ( finishedWork.mode & ProfileMode) {\n try {\n startLayoutEffectTimer();\n commitHookEffectListUnmount(Layout | HasEffect, finishedWork, finishedWork.return);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n\n recordLayoutEffectDuration(finishedWork);\n } else {\n try {\n commitHookEffectListUnmount(Layout | HasEffect, finishedWork, finishedWork.return);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n }\n\n return;\n }\n\n case ClassComponent:\n {\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n\n if (flags & Ref) {\n if (current !== null) {\n safelyDetachRef(current, current.return);\n }\n }\n\n return;\n }\n\n case HostComponent:\n {\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n\n if (flags & Ref) {\n if (current !== null) {\n safelyDetachRef(current, current.return);\n }\n }\n\n {\n // TODO: ContentReset gets cleared by the children during the commit\n // phase. This is a refactor hazard because it means we must read\n // flags the flags after `commitReconciliationEffects` has already run;\n // the order matters. We should refactor so that ContentReset does not\n // rely on mutating the flag during commit. Like by setting a flag\n // during the render phase instead.\n if (finishedWork.flags & ContentReset) {\n var instance = finishedWork.stateNode;\n\n try {\n resetTextContent(instance);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n\n if (flags & Update) {\n var _instance4 = finishedWork.stateNode;\n\n if (_instance4 != null) {\n // Commit the work prepared earlier.\n var newProps = finishedWork.memoizedProps; // For hydration we reuse the update path but we treat the oldProps\n // as the newProps. The updatePayload will contain the real change in\n // this case.\n\n var oldProps = current !== null ? current.memoizedProps : newProps;\n var type = finishedWork.type; // TODO: Type the updateQueue to be specific to host components.\n\n var updatePayload = finishedWork.updateQueue;\n finishedWork.updateQueue = null;\n\n if (updatePayload !== null) {\n try {\n commitUpdate(_instance4, updatePayload, type, oldProps, newProps, finishedWork);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n }\n }\n }\n\n return;\n }\n\n case HostText:\n {\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n\n if (flags & Update) {\n {\n if (finishedWork.stateNode === null) {\n throw new Error('This should have a text node initialized. This error is likely ' + 'caused by a bug in React. Please file an issue.');\n }\n\n var textInstance = finishedWork.stateNode;\n var newText = finishedWork.memoizedProps; // For hydration we reuse the update path but we treat the oldProps\n // as the newProps. The updatePayload will contain the real change in\n // this case.\n\n var oldText = current !== null ? current.memoizedProps : newText;\n\n try {\n commitTextUpdate(textInstance, oldText, newText);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n }\n\n return;\n }\n\n case HostRoot:\n {\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n\n if (flags & Update) {\n {\n if (current !== null) {\n var prevRootState = current.memoizedState;\n\n if (prevRootState.isDehydrated) {\n try {\n commitHydratedContainer(root.containerInfo);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n }\n }\n }\n\n return;\n }\n\n case HostPortal:\n {\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n\n return;\n }\n\n case SuspenseComponent:\n {\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n var offscreenFiber = finishedWork.child;\n\n if (offscreenFiber.flags & Visibility) {\n var offscreenInstance = offscreenFiber.stateNode;\n var newState = offscreenFiber.memoizedState;\n var isHidden = newState !== null; // Track the current state on the Offscreen instance so we can\n // read it during an event\n\n offscreenInstance.isHidden = isHidden;\n\n if (isHidden) {\n var wasHidden = offscreenFiber.alternate !== null && offscreenFiber.alternate.memoizedState !== null;\n\n if (!wasHidden) {\n // TODO: Move to passive phase\n markCommitTimeOfFallback();\n }\n }\n }\n\n if (flags & Update) {\n try {\n commitSuspenseCallback(finishedWork);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n\n attachSuspenseRetryListeners(finishedWork);\n }\n\n return;\n }\n\n case OffscreenComponent:\n {\n var _wasHidden = current !== null && current.memoizedState !== null;\n\n if ( // TODO: Remove this dead flag\n finishedWork.mode & ConcurrentMode) {\n // Before committing the children, track on the stack whether this\n // offscreen subtree was already hidden, so that we don't unmount the\n // effects again.\n var prevOffscreenSubtreeWasHidden = offscreenSubtreeWasHidden;\n offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden || _wasHidden;\n recursivelyTraverseMutationEffects(root, finishedWork);\n offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden;\n } else {\n recursivelyTraverseMutationEffects(root, finishedWork);\n }\n\n commitReconciliationEffects(finishedWork);\n\n if (flags & Visibility) {\n var _offscreenInstance = finishedWork.stateNode;\n var _newState = finishedWork.memoizedState;\n\n var _isHidden = _newState !== null;\n\n var offscreenBoundary = finishedWork; // Track the current state on the Offscreen instance so we can\n // read it during an event\n\n _offscreenInstance.isHidden = _isHidden;\n\n {\n if (_isHidden) {\n if (!_wasHidden) {\n if ((offscreenBoundary.mode & ConcurrentMode) !== NoMode) {\n nextEffect = offscreenBoundary;\n var offscreenChild = offscreenBoundary.child;\n\n while (offscreenChild !== null) {\n nextEffect = offscreenChild;\n disappearLayoutEffects_begin(offscreenChild);\n offscreenChild = offscreenChild.sibling;\n }\n }\n }\n }\n }\n\n {\n // TODO: This needs to run whenever there's an insertion or update\n // inside a hidden Offscreen tree.\n hideOrUnhideAllChildren(offscreenBoundary, _isHidden);\n }\n }\n\n return;\n }\n\n case SuspenseListComponent:\n {\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n\n if (flags & Update) {\n attachSuspenseRetryListeners(finishedWork);\n }\n\n return;\n }\n\n case ScopeComponent:\n {\n\n return;\n }\n\n default:\n {\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n return;\n }\n }\n}\n\nfunction commitReconciliationEffects(finishedWork) {\n // Placement effects (insertions, reorders) can be scheduled on any fiber\n // type. They needs to happen after the children effects have fired, but\n // before the effects on this fiber have fired.\n var flags = finishedWork.flags;\n\n if (flags & Placement) {\n try {\n commitPlacement(finishedWork);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n } // Clear the \"placement\" from effect tag so that we know that this is\n // inserted, before any life-cycles like componentDidMount gets called.\n // TODO: findDOMNode doesn't rely on this any more but isMounted does\n // and isMounted is deprecated anyway so we should be able to kill this.\n\n\n finishedWork.flags &= ~Placement;\n }\n\n if (flags & Hydrating) {\n finishedWork.flags &= ~Hydrating;\n }\n}\n\nfunction commitLayoutEffects(finishedWork, root, committedLanes) {\n inProgressLanes = committedLanes;\n inProgressRoot = root;\n nextEffect = finishedWork;\n commitLayoutEffects_begin(finishedWork, root, committedLanes);\n inProgressLanes = null;\n inProgressRoot = null;\n}\n\nfunction commitLayoutEffects_begin(subtreeRoot, root, committedLanes) {\n // Suspense layout effects semantics don't change for legacy roots.\n var isModernRoot = (subtreeRoot.mode & ConcurrentMode) !== NoMode;\n\n while (nextEffect !== null) {\n var fiber = nextEffect;\n var firstChild = fiber.child;\n\n if ( fiber.tag === OffscreenComponent && isModernRoot) {\n // Keep track of the current Offscreen stack's state.\n var isHidden = fiber.memoizedState !== null;\n var newOffscreenSubtreeIsHidden = isHidden || offscreenSubtreeIsHidden;\n\n if (newOffscreenSubtreeIsHidden) {\n // The Offscreen tree is hidden. Skip over its layout effects.\n commitLayoutMountEffects_complete(subtreeRoot, root, committedLanes);\n continue;\n } else {\n // TODO (Offscreen) Also check: subtreeFlags & LayoutMask\n var current = fiber.alternate;\n var wasHidden = current !== null && current.memoizedState !== null;\n var newOffscreenSubtreeWasHidden = wasHidden || offscreenSubtreeWasHidden;\n var prevOffscreenSubtreeIsHidden = offscreenSubtreeIsHidden;\n var prevOffscreenSubtreeWasHidden = offscreenSubtreeWasHidden; // Traverse the Offscreen subtree with the current Offscreen as the root.\n\n offscreenSubtreeIsHidden = newOffscreenSubtreeIsHidden;\n offscreenSubtreeWasHidden = newOffscreenSubtreeWasHidden;\n\n if (offscreenSubtreeWasHidden && !prevOffscreenSubtreeWasHidden) {\n // This is the root of a reappearing boundary. Turn its layout effects\n // back on.\n nextEffect = fiber;\n reappearLayoutEffects_begin(fiber);\n }\n\n var child = firstChild;\n\n while (child !== null) {\n nextEffect = child;\n commitLayoutEffects_begin(child, // New root; bubble back up to here and stop.\n root, committedLanes);\n child = child.sibling;\n } // Restore Offscreen state and resume in our-progress traversal.\n\n\n nextEffect = fiber;\n offscreenSubtreeIsHidden = prevOffscreenSubtreeIsHidden;\n offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden;\n commitLayoutMountEffects_complete(subtreeRoot, root, committedLanes);\n continue;\n }\n }\n\n if ((fiber.subtreeFlags & LayoutMask) !== NoFlags && firstChild !== null) {\n firstChild.return = fiber;\n nextEffect = firstChild;\n } else {\n commitLayoutMountEffects_complete(subtreeRoot, root, committedLanes);\n }\n }\n}\n\nfunction commitLayoutMountEffects_complete(subtreeRoot, root, committedLanes) {\n while (nextEffect !== null) {\n var fiber = nextEffect;\n\n if ((fiber.flags & LayoutMask) !== NoFlags) {\n var current = fiber.alternate;\n setCurrentFiber(fiber);\n\n try {\n commitLayoutEffectOnFiber(root, current, fiber, committedLanes);\n } catch (error) {\n captureCommitPhaseError(fiber, fiber.return, error);\n }\n\n resetCurrentFiber();\n }\n\n if (fiber === subtreeRoot) {\n nextEffect = null;\n return;\n }\n\n var sibling = fiber.sibling;\n\n if (sibling !== null) {\n sibling.return = fiber.return;\n nextEffect = sibling;\n return;\n }\n\n nextEffect = fiber.return;\n }\n}\n\nfunction disappearLayoutEffects_begin(subtreeRoot) {\n while (nextEffect !== null) {\n var fiber = nextEffect;\n var firstChild = fiber.child; // TODO (Offscreen) Check: flags & (RefStatic | LayoutStatic)\n\n switch (fiber.tag) {\n case FunctionComponent:\n case ForwardRef:\n case MemoComponent:\n case SimpleMemoComponent:\n {\n if ( fiber.mode & ProfileMode) {\n try {\n startLayoutEffectTimer();\n commitHookEffectListUnmount(Layout, fiber, fiber.return);\n } finally {\n recordLayoutEffectDuration(fiber);\n }\n } else {\n commitHookEffectListUnmount(Layout, fiber, fiber.return);\n }\n\n break;\n }\n\n case ClassComponent:\n {\n // TODO (Offscreen) Check: flags & RefStatic\n safelyDetachRef(fiber, fiber.return);\n var instance = fiber.stateNode;\n\n if (typeof instance.componentWillUnmount === 'function') {\n safelyCallComponentWillUnmount(fiber, fiber.return, instance);\n }\n\n break;\n }\n\n case HostComponent:\n {\n safelyDetachRef(fiber, fiber.return);\n break;\n }\n\n case OffscreenComponent:\n {\n // Check if this is a\n var isHidden = fiber.memoizedState !== null;\n\n if (isHidden) {\n // Nested Offscreen tree is already hidden. Don't disappear\n // its effects.\n disappearLayoutEffects_complete(subtreeRoot);\n continue;\n }\n\n break;\n }\n } // TODO (Offscreen) Check: subtreeFlags & LayoutStatic\n\n\n if (firstChild !== null) {\n firstChild.return = fiber;\n nextEffect = firstChild;\n } else {\n disappearLayoutEffects_complete(subtreeRoot);\n }\n }\n}\n\nfunction disappearLayoutEffects_complete(subtreeRoot) {\n while (nextEffect !== null) {\n var fiber = nextEffect;\n\n if (fiber === subtreeRoot) {\n nextEffect = null;\n return;\n }\n\n var sibling = fiber.sibling;\n\n if (sibling !== null) {\n sibling.return = fiber.return;\n nextEffect = sibling;\n return;\n }\n\n nextEffect = fiber.return;\n }\n}\n\nfunction reappearLayoutEffects_begin(subtreeRoot) {\n while (nextEffect !== null) {\n var fiber = nextEffect;\n var firstChild = fiber.child;\n\n if (fiber.tag === OffscreenComponent) {\n var isHidden = fiber.memoizedState !== null;\n\n if (isHidden) {\n // Nested Offscreen tree is still hidden. Don't re-appear its effects.\n reappearLayoutEffects_complete(subtreeRoot);\n continue;\n }\n } // TODO (Offscreen) Check: subtreeFlags & LayoutStatic\n\n\n if (firstChild !== null) {\n // This node may have been reused from a previous render, so we can't\n // assume its return pointer is correct.\n firstChild.return = fiber;\n nextEffect = firstChild;\n } else {\n reappearLayoutEffects_complete(subtreeRoot);\n }\n }\n}\n\nfunction reappearLayoutEffects_complete(subtreeRoot) {\n while (nextEffect !== null) {\n var fiber = nextEffect; // TODO (Offscreen) Check: flags & LayoutStatic\n\n setCurrentFiber(fiber);\n\n try {\n reappearLayoutEffectsOnFiber(fiber);\n } catch (error) {\n captureCommitPhaseError(fiber, fiber.return, error);\n }\n\n resetCurrentFiber();\n\n if (fiber === subtreeRoot) {\n nextEffect = null;\n return;\n }\n\n var sibling = fiber.sibling;\n\n if (sibling !== null) {\n // This node may have been reused from a previous render, so we can't\n // assume its return pointer is correct.\n sibling.return = fiber.return;\n nextEffect = sibling;\n return;\n }\n\n nextEffect = fiber.return;\n }\n}\n\nfunction commitPassiveMountEffects(root, finishedWork, committedLanes, committedTransitions) {\n nextEffect = finishedWork;\n commitPassiveMountEffects_begin(finishedWork, root, committedLanes, committedTransitions);\n}\n\nfunction commitPassiveMountEffects_begin(subtreeRoot, root, committedLanes, committedTransitions) {\n while (nextEffect !== null) {\n var fiber = nextEffect;\n var firstChild = fiber.child;\n\n if ((fiber.subtreeFlags & PassiveMask) !== NoFlags && firstChild !== null) {\n firstChild.return = fiber;\n nextEffect = firstChild;\n } else {\n commitPassiveMountEffects_complete(subtreeRoot, root, committedLanes, committedTransitions);\n }\n }\n}\n\nfunction commitPassiveMountEffects_complete(subtreeRoot, root, committedLanes, committedTransitions) {\n while (nextEffect !== null) {\n var fiber = nextEffect;\n\n if ((fiber.flags & Passive) !== NoFlags) {\n setCurrentFiber(fiber);\n\n try {\n commitPassiveMountOnFiber(root, fiber, committedLanes, committedTransitions);\n } catch (error) {\n captureCommitPhaseError(fiber, fiber.return, error);\n }\n\n resetCurrentFiber();\n }\n\n if (fiber === subtreeRoot) {\n nextEffect = null;\n return;\n }\n\n var sibling = fiber.sibling;\n\n if (sibling !== null) {\n sibling.return = fiber.return;\n nextEffect = sibling;\n return;\n }\n\n nextEffect = fiber.return;\n }\n}\n\nfunction commitPassiveMountOnFiber(finishedRoot, finishedWork, committedLanes, committedTransitions) {\n switch (finishedWork.tag) {\n case FunctionComponent:\n case ForwardRef:\n case SimpleMemoComponent:\n {\n if ( finishedWork.mode & ProfileMode) {\n startPassiveEffectTimer();\n\n try {\n commitHookEffectListMount(Passive$1 | HasEffect, finishedWork);\n } finally {\n recordPassiveEffectDuration(finishedWork);\n }\n } else {\n commitHookEffectListMount(Passive$1 | HasEffect, finishedWork);\n }\n\n break;\n }\n }\n}\n\nfunction commitPassiveUnmountEffects(firstChild) {\n nextEffect = firstChild;\n commitPassiveUnmountEffects_begin();\n}\n\nfunction commitPassiveUnmountEffects_begin() {\n while (nextEffect !== null) {\n var fiber = nextEffect;\n var child = fiber.child;\n\n if ((nextEffect.flags & ChildDeletion) !== NoFlags) {\n var deletions = fiber.deletions;\n\n if (deletions !== null) {\n for (var i = 0; i < deletions.length; i++) {\n var fiberToDelete = deletions[i];\n nextEffect = fiberToDelete;\n commitPassiveUnmountEffectsInsideOfDeletedTree_begin(fiberToDelete, fiber);\n }\n\n {\n // A fiber was deleted from this parent fiber, but it's still part of\n // the previous (alternate) parent fiber's list of children. Because\n // children are a linked list, an earlier sibling that's still alive\n // will be connected to the deleted fiber via its `alternate`:\n //\n // live fiber\n // --alternate--> previous live fiber\n // --sibling--> deleted fiber\n //\n // We can't disconnect `alternate` on nodes that haven't been deleted\n // yet, but we can disconnect the `sibling` and `child` pointers.\n var previousFiber = fiber.alternate;\n\n if (previousFiber !== null) {\n var detachedChild = previousFiber.child;\n\n if (detachedChild !== null) {\n previousFiber.child = null;\n\n do {\n var detachedSibling = detachedChild.sibling;\n detachedChild.sibling = null;\n detachedChild = detachedSibling;\n } while (detachedChild !== null);\n }\n }\n }\n\n nextEffect = fiber;\n }\n }\n\n if ((fiber.subtreeFlags & PassiveMask) !== NoFlags && child !== null) {\n child.return = fiber;\n nextEffect = child;\n } else {\n commitPassiveUnmountEffects_complete();\n }\n }\n}\n\nfunction commitPassiveUnmountEffects_complete() {\n while (nextEffect !== null) {\n var fiber = nextEffect;\n\n if ((fiber.flags & Passive) !== NoFlags) {\n setCurrentFiber(fiber);\n commitPassiveUnmountOnFiber(fiber);\n resetCurrentFiber();\n }\n\n var sibling = fiber.sibling;\n\n if (sibling !== null) {\n sibling.return = fiber.return;\n nextEffect = sibling;\n return;\n }\n\n nextEffect = fiber.return;\n }\n}\n\nfunction commitPassiveUnmountOnFiber(finishedWork) {\n switch (finishedWork.tag) {\n case FunctionComponent:\n case ForwardRef:\n case SimpleMemoComponent:\n {\n if ( finishedWork.mode & ProfileMode) {\n startPassiveEffectTimer();\n commitHookEffectListUnmount(Passive$1 | HasEffect, finishedWork, finishedWork.return);\n recordPassiveEffectDuration(finishedWork);\n } else {\n commitHookEffectListUnmount(Passive$1 | HasEffect, finishedWork, finishedWork.return);\n }\n\n break;\n }\n }\n}\n\nfunction commitPassiveUnmountEffectsInsideOfDeletedTree_begin(deletedSubtreeRoot, nearestMountedAncestor) {\n while (nextEffect !== null) {\n var fiber = nextEffect; // Deletion effects fire in parent -> child order\n // TODO: Check if fiber has a PassiveStatic flag\n\n setCurrentFiber(fiber);\n commitPassiveUnmountInsideDeletedTreeOnFiber(fiber, nearestMountedAncestor);\n resetCurrentFiber();\n var child = fiber.child; // TODO: Only traverse subtree if it has a PassiveStatic flag. (But, if we\n // do this, still need to handle `deletedTreeCleanUpLevel` correctly.)\n\n if (child !== null) {\n child.return = fiber;\n nextEffect = child;\n } else {\n commitPassiveUnmountEffectsInsideOfDeletedTree_complete(deletedSubtreeRoot);\n }\n }\n}\n\nfunction commitPassiveUnmountEffectsInsideOfDeletedTree_complete(deletedSubtreeRoot) {\n while (nextEffect !== null) {\n var fiber = nextEffect;\n var sibling = fiber.sibling;\n var returnFiber = fiber.return;\n\n {\n // Recursively traverse the entire deleted tree and clean up fiber fields.\n // This is more aggressive than ideal, and the long term goal is to only\n // have to detach the deleted tree at the root.\n detachFiberAfterEffects(fiber);\n\n if (fiber === deletedSubtreeRoot) {\n nextEffect = null;\n return;\n }\n }\n\n if (sibling !== null) {\n sibling.return = returnFiber;\n nextEffect = sibling;\n return;\n }\n\n nextEffect = returnFiber;\n }\n}\n\nfunction commitPassiveUnmountInsideDeletedTreeOnFiber(current, nearestMountedAncestor) {\n switch (current.tag) {\n case FunctionComponent:\n case ForwardRef:\n case SimpleMemoComponent:\n {\n if ( current.mode & ProfileMode) {\n startPassiveEffectTimer();\n commitHookEffectListUnmount(Passive$1, current, nearestMountedAncestor);\n recordPassiveEffectDuration(current);\n } else {\n commitHookEffectListUnmount(Passive$1, current, nearestMountedAncestor);\n }\n\n break;\n }\n }\n} // TODO: Reuse reappearLayoutEffects traversal here?\n\n\nfunction invokeLayoutEffectMountInDEV(fiber) {\n {\n // We don't need to re-check StrictEffectsMode here.\n // This function is only called if that check has already passed.\n switch (fiber.tag) {\n case FunctionComponent:\n case ForwardRef:\n case SimpleMemoComponent:\n {\n try {\n commitHookEffectListMount(Layout | HasEffect, fiber);\n } catch (error) {\n captureCommitPhaseError(fiber, fiber.return, error);\n }\n\n break;\n }\n\n case ClassComponent:\n {\n var instance = fiber.stateNode;\n\n try {\n instance.componentDidMount();\n } catch (error) {\n captureCommitPhaseError(fiber, fiber.return, error);\n }\n\n break;\n }\n }\n }\n}\n\nfunction invokePassiveEffectMountInDEV(fiber) {\n {\n // We don't need to re-check StrictEffectsMode here.\n // This function is only called if that check has already passed.\n switch (fiber.tag) {\n case FunctionComponent:\n case ForwardRef:\n case SimpleMemoComponent:\n {\n try {\n commitHookEffectListMount(Passive$1 | HasEffect, fiber);\n } catch (error) {\n captureCommitPhaseError(fiber, fiber.return, error);\n }\n\n break;\n }\n }\n }\n}\n\nfunction invokeLayoutEffectUnmountInDEV(fiber) {\n {\n // We don't need to re-check StrictEffectsMode here.\n // This function is only called if that check has already passed.\n switch (fiber.tag) {\n case FunctionComponent:\n case ForwardRef:\n case SimpleMemoComponent:\n {\n try {\n commitHookEffectListUnmount(Layout | HasEffect, fiber, fiber.return);\n } catch (error) {\n captureCommitPhaseError(fiber, fiber.return, error);\n }\n\n break;\n }\n\n case ClassComponent:\n {\n var instance = fiber.stateNode;\n\n if (typeof instance.componentWillUnmount === 'function') {\n safelyCallComponentWillUnmount(fiber, fiber.return, instance);\n }\n\n break;\n }\n }\n }\n}\n\nfunction invokePassiveEffectUnmountInDEV(fiber) {\n {\n // We don't need to re-check StrictEffectsMode here.\n // This function is only called if that check has already passed.\n switch (fiber.tag) {\n case FunctionComponent:\n case ForwardRef:\n case SimpleMemoComponent:\n {\n try {\n commitHookEffectListUnmount(Passive$1 | HasEffect, fiber, fiber.return);\n } catch (error) {\n captureCommitPhaseError(fiber, fiber.return, error);\n }\n }\n }\n }\n}\n\nvar COMPONENT_TYPE = 0;\nvar HAS_PSEUDO_CLASS_TYPE = 1;\nvar ROLE_TYPE = 2;\nvar TEST_NAME_TYPE = 3;\nvar TEXT_TYPE = 4;\n\nif (typeof Symbol === 'function' && Symbol.for) {\n var symbolFor = Symbol.for;\n COMPONENT_TYPE = symbolFor('selector.component');\n HAS_PSEUDO_CLASS_TYPE = symbolFor('selector.has_pseudo_class');\n ROLE_TYPE = symbolFor('selector.role');\n TEST_NAME_TYPE = symbolFor('selector.test_id');\n TEXT_TYPE = symbolFor('selector.text');\n}\nvar commitHooks = [];\nfunction onCommitRoot$1() {\n {\n commitHooks.forEach(function (commitHook) {\n return commitHook();\n });\n }\n}\n\nvar ReactCurrentActQueue = ReactSharedInternals.ReactCurrentActQueue;\nfunction isLegacyActEnvironment(fiber) {\n {\n // Legacy mode. We preserve the behavior of React 17's act. It assumes an\n // act environment whenever `jest` is defined, but you can still turn off\n // spurious warnings by setting IS_REACT_ACT_ENVIRONMENT explicitly\n // to false.\n var isReactActEnvironmentGlobal = // $FlowExpectedError \u2013 Flow doesn't know about IS_REACT_ACT_ENVIRONMENT global\n typeof IS_REACT_ACT_ENVIRONMENT !== 'undefined' ? IS_REACT_ACT_ENVIRONMENT : undefined; // $FlowExpectedError - Flow doesn't know about jest\n\n var jestIsDefined = typeof jest !== 'undefined';\n return jestIsDefined && isReactActEnvironmentGlobal !== false;\n }\n}\nfunction isConcurrentActEnvironment() {\n {\n var isReactActEnvironmentGlobal = // $FlowExpectedError \u2013 Flow doesn't know about IS_REACT_ACT_ENVIRONMENT global\n typeof IS_REACT_ACT_ENVIRONMENT !== 'undefined' ? IS_REACT_ACT_ENVIRONMENT : undefined;\n\n if (!isReactActEnvironmentGlobal && ReactCurrentActQueue.current !== null) {\n // TODO: Include link to relevant documentation page.\n error('The current testing environment is not configured to support ' + 'act(...)');\n }\n\n return isReactActEnvironmentGlobal;\n }\n}\n\nvar ceil = Math.ceil;\nvar ReactCurrentDispatcher$2 = ReactSharedInternals.ReactCurrentDispatcher,\n ReactCurrentOwner$2 = ReactSharedInternals.ReactCurrentOwner,\n ReactCurrentBatchConfig$3 = ReactSharedInternals.ReactCurrentBatchConfig,\n ReactCurrentActQueue$1 = ReactSharedInternals.ReactCurrentActQueue;\nvar NoContext =\n/* */\n0;\nvar BatchedContext =\n/* */\n1;\nvar RenderContext =\n/* */\n2;\nvar CommitContext =\n/* */\n4;\nvar RootInProgress = 0;\nvar RootFatalErrored = 1;\nvar RootErrored = 2;\nvar RootSuspended = 3;\nvar RootSuspendedWithDelay = 4;\nvar RootCompleted = 5;\nvar RootDidNotComplete = 6; // Describes where we are in the React execution stack\n\nvar executionContext = NoContext; // The root we're working on\n\nvar workInProgressRoot = null; // The fiber we're working on\n\nvar workInProgress = null; // The lanes we're rendering\n\nvar workInProgressRootRenderLanes = NoLanes; // Stack that allows components to change the render lanes for its subtree\n// This is a superset of the lanes we started working on at the root. The only\n// case where it's different from `workInProgressRootRenderLanes` is when we\n// enter a subtree that is hidden and needs to be unhidden: Suspense and\n// Offscreen component.\n//\n// Most things in the work loop should deal with workInProgressRootRenderLanes.\n// Most things in begin/complete phases should deal with subtreeRenderLanes.\n\nvar subtreeRenderLanes = NoLanes;\nvar subtreeRenderLanesCursor = createCursor(NoLanes); // Whether to root completed, errored, suspended, etc.\n\nvar workInProgressRootExitStatus = RootInProgress; // A fatal error, if one is thrown\n\nvar workInProgressRootFatalError = null; // \"Included\" lanes refer to lanes that were worked on during this render. It's\n// slightly different than `renderLanes` because `renderLanes` can change as you\n// enter and exit an Offscreen tree. This value is the combination of all render\n// lanes for the entire render phase.\n\nvar workInProgressRootIncludedLanes = NoLanes; // The work left over by components that were visited during this render. Only\n// includes unprocessed updates, not work in bailed out children.\n\nvar workInProgressRootSkippedLanes = NoLanes; // Lanes that were updated (in an interleaved event) during this render.\n\nvar workInProgressRootInterleavedUpdatedLanes = NoLanes; // Lanes that were updated during the render phase (*not* an interleaved event).\n\nvar workInProgressRootPingedLanes = NoLanes; // Errors that are thrown during the render phase.\n\nvar workInProgressRootConcurrentErrors = null; // These are errors that we recovered from without surfacing them to the UI.\n// We will log them once the tree commits.\n\nvar workInProgressRootRecoverableErrors = null; // The most recent time we committed a fallback. This lets us ensure a train\n// model where we don't commit new loading states in too quick succession.\n\nvar globalMostRecentFallbackTime = 0;\nvar FALLBACK_THROTTLE_MS = 500; // The absolute time for when we should start giving up on rendering\n// more and prefer CPU suspense heuristics instead.\n\nvar workInProgressRootRenderTargetTime = Infinity; // How long a render is supposed to take before we start following CPU\n// suspense heuristics and opt out of rendering more content.\n\nvar RENDER_TIMEOUT_MS = 500;\nvar workInProgressTransitions = null;\n\nfunction resetRenderTimer() {\n workInProgressRootRenderTargetTime = now() + RENDER_TIMEOUT_MS;\n}\n\nfunction getRenderTargetTime() {\n return workInProgressRootRenderTargetTime;\n}\nvar hasUncaughtError = false;\nvar firstUncaughtError = null;\nvar legacyErrorBoundariesThatAlreadyFailed = null; // Only used when enableProfilerNestedUpdateScheduledHook is true;\nvar rootDoesHavePassiveEffects = false;\nvar rootWithPendingPassiveEffects = null;\nvar pendingPassiveEffectsLanes = NoLanes;\nvar pendingPassiveProfilerEffects = [];\nvar pendingPassiveTransitions = null; // Use these to prevent an infinite loop of nested updates\n\nvar NESTED_UPDATE_LIMIT = 50;\nvar nestedUpdateCount = 0;\nvar rootWithNestedUpdates = null;\nvar isFlushingPassiveEffects = false;\nvar didScheduleUpdateDuringPassiveEffects = false;\nvar NESTED_PASSIVE_UPDATE_LIMIT = 50;\nvar nestedPassiveUpdateCount = 0;\nvar rootWithPassiveNestedUpdates = null; // If two updates are scheduled within the same event, we should treat their\n// event times as simultaneous, even if the actual clock time has advanced\n// between the first and second call.\n\nvar currentEventTime = NoTimestamp;\nvar currentEventTransitionLane = NoLanes;\nvar isRunningInsertionEffect = false;\nfunction getWorkInProgressRoot() {\n return workInProgressRoot;\n}\nfunction requestEventTime() {\n if ((executionContext & (RenderContext | CommitContext)) !== NoContext) {\n // We're inside React, so it's fine to read the actual time.\n return now();\n } // We're not inside React, so we may be in the middle of a browser event.\n\n\n if (currentEventTime !== NoTimestamp) {\n // Use the same start time for all updates until we enter React again.\n return currentEventTime;\n } // This is the first update since React yielded. Compute a new start time.\n\n\n currentEventTime = now();\n return currentEventTime;\n}\nfunction requestUpdateLane(fiber) {\n // Special cases\n var mode = fiber.mode;\n\n if ((mode & ConcurrentMode) === NoMode) {\n return SyncLane;\n } else if ( (executionContext & RenderContext) !== NoContext && workInProgressRootRenderLanes !== NoLanes) {\n // This is a render phase update. These are not officially supported. The\n // old behavior is to give this the same \"thread\" (lanes) as\n // whatever is currently rendering. So if you call `setState` on a component\n // that happens later in the same render, it will flush. Ideally, we want to\n // remove the special case and treat them as if they came from an\n // interleaved event. Regardless, this pattern is not officially supported.\n // This behavior is only a fallback. The flag only exists until we can roll\n // out the setState warning, since existing code might accidentally rely on\n // the current behavior.\n return pickArbitraryLane(workInProgressRootRenderLanes);\n }\n\n var isTransition = requestCurrentTransition() !== NoTransition;\n\n if (isTransition) {\n if ( ReactCurrentBatchConfig$3.transition !== null) {\n var transition = ReactCurrentBatchConfig$3.transition;\n\n if (!transition._updatedFibers) {\n transition._updatedFibers = new Set();\n }\n\n transition._updatedFibers.add(fiber);\n } // The algorithm for assigning an update to a lane should be stable for all\n // updates at the same priority within the same event. To do this, the\n // inputs to the algorithm must be the same.\n //\n // The trick we use is to cache the first of each of these inputs within an\n // event. Then reset the cached values once we can be sure the event is\n // over. Our heuristic for that is whenever we enter a concurrent work loop.\n\n\n if (currentEventTransitionLane === NoLane) {\n // All transitions within the same event are assigned the same lane.\n currentEventTransitionLane = claimNextTransitionLane();\n }\n\n return currentEventTransitionLane;\n } // Updates originating inside certain React methods, like flushSync, have\n // their priority set by tracking it with a context variable.\n //\n // The opaque type returned by the host config is internally a lane, so we can\n // use that directly.\n // TODO: Move this type conversion to the event priority module.\n\n\n var updateLane = getCurrentUpdatePriority();\n\n if (updateLane !== NoLane) {\n return updateLane;\n } // This update originated outside React. Ask the host environment for an\n // appropriate priority, based on the type of event.\n //\n // The opaque type returned by the host config is internally a lane, so we can\n // use that directly.\n // TODO: Move this type conversion to the event priority module.\n\n\n var eventLane = getCurrentEventPriority();\n return eventLane;\n}\n\nfunction requestRetryLane(fiber) {\n // This is a fork of `requestUpdateLane` designed specifically for Suspense\n // \"retries\" \u2014 a special update that attempts to flip a Suspense boundary\n // from its placeholder state to its primary/resolved state.\n // Special cases\n var mode = fiber.mode;\n\n if ((mode & ConcurrentMode) === NoMode) {\n return SyncLane;\n }\n\n return claimNextRetryLane();\n}\n\nfunction scheduleUpdateOnFiber(root, fiber, lane, eventTime) {\n checkForNestedUpdates();\n\n {\n if (isRunningInsertionEffect) {\n error('useInsertionEffect must not schedule updates.');\n }\n }\n\n {\n if (isFlushingPassiveEffects) {\n didScheduleUpdateDuringPassiveEffects = true;\n }\n } // Mark that the root has a pending update.\n\n\n markRootUpdated(root, lane, eventTime);\n\n if ((executionContext & RenderContext) !== NoLanes && root === workInProgressRoot) {\n // This update was dispatched during the render phase. This is a mistake\n // if the update originates from user space (with the exception of local\n // hook updates, which are handled differently and don't reach this\n // function), but there are some internal React features that use this as\n // an implementation detail, like selective hydration.\n warnAboutRenderPhaseUpdatesInDEV(fiber); // Track lanes that were updated during the render phase\n } else {\n // This is a normal update, scheduled from outside the render phase. For\n // example, during an input event.\n {\n if (isDevToolsPresent) {\n addFiberToLanesMap(root, fiber, lane);\n }\n }\n\n warnIfUpdatesNotWrappedWithActDEV(fiber);\n\n if (root === workInProgressRoot) {\n // Received an update to a tree that's in the middle of rendering. Mark\n // that there was an interleaved update work on this root. Unless the\n // `deferRenderPhaseUpdateToNextBatch` flag is off and this is a render\n // phase update. In that case, we don't treat render phase updates as if\n // they were interleaved, for backwards compat reasons.\n if ( (executionContext & RenderContext) === NoContext) {\n workInProgressRootInterleavedUpdatedLanes = mergeLanes(workInProgressRootInterleavedUpdatedLanes, lane);\n }\n\n if (workInProgressRootExitStatus === RootSuspendedWithDelay) {\n // The root already suspended with a delay, which means this render\n // definitely won't finish. Since we have a new update, let's mark it as\n // suspended now, right before marking the incoming update. This has the\n // effect of interrupting the current render and switching to the update.\n // TODO: Make sure this doesn't override pings that happen while we've\n // already started rendering.\n markRootSuspended$1(root, workInProgressRootRenderLanes);\n }\n }\n\n ensureRootIsScheduled(root, eventTime);\n\n if (lane === SyncLane && executionContext === NoContext && (fiber.mode & ConcurrentMode) === NoMode && // Treat `act` as if it's inside `batchedUpdates`, even in legacy mode.\n !( ReactCurrentActQueue$1.isBatchingLegacy)) {\n // Flush the synchronous work now, unless we're already working or inside\n // a batch. This is intentionally inside scheduleUpdateOnFiber instead of\n // scheduleCallbackForFiber to preserve the ability to schedule a callback\n // without immediately flushing it. We only do this for user-initiated\n // updates, to preserve historical behavior of legacy mode.\n resetRenderTimer();\n flushSyncCallbacksOnlyInLegacyMode();\n }\n }\n}\nfunction scheduleInitialHydrationOnRoot(root, lane, eventTime) {\n // This is a special fork of scheduleUpdateOnFiber that is only used to\n // schedule the initial hydration of a root that has just been created. Most\n // of the stuff in scheduleUpdateOnFiber can be skipped.\n //\n // The main reason for this separate path, though, is to distinguish the\n // initial children from subsequent updates. In fully client-rendered roots\n // (createRoot instead of hydrateRoot), all top-level renders are modeled as\n // updates, but hydration roots are special because the initial render must\n // match what was rendered on the server.\n var current = root.current;\n current.lanes = lane;\n markRootUpdated(root, lane, eventTime);\n ensureRootIsScheduled(root, eventTime);\n}\nfunction isUnsafeClassRenderPhaseUpdate(fiber) {\n // Check if this is a render phase update. Only called by class components,\n // which special (deprecated) behavior for UNSAFE_componentWillReceive props.\n return (// TODO: Remove outdated deferRenderPhaseUpdateToNextBatch experiment. We\n // decided not to enable it.\n (executionContext & RenderContext) !== NoContext\n );\n} // Use this function to schedule a task for a root. There's only one task per\n// root; if a task was already scheduled, we'll check to make sure the priority\n// of the existing task is the same as the priority of the next level that the\n// root has work on. This function is called on every update, and right before\n// exiting a task.\n\nfunction ensureRootIsScheduled(root, currentTime) {\n var existingCallbackNode = root.callbackNode; // Check if any lanes are being starved by other work. If so, mark them as\n // expired so we know to work on those next.\n\n markStarvedLanesAsExpired(root, currentTime); // Determine the next lanes to work on, and their priority.\n\n var nextLanes = getNextLanes(root, root === workInProgressRoot ? workInProgressRootRenderLanes : NoLanes);\n\n if (nextLanes === NoLanes) {\n // Special case: There's nothing to work on.\n if (existingCallbackNode !== null) {\n cancelCallback$1(existingCallbackNode);\n }\n\n root.callbackNode = null;\n root.callbackPriority = NoLane;\n return;\n } // We use the highest priority lane to represent the priority of the callback.\n\n\n var newCallbackPriority = getHighestPriorityLane(nextLanes); // Check if there's an existing task. We may be able to reuse it.\n\n var existingCallbackPriority = root.callbackPriority;\n\n if (existingCallbackPriority === newCallbackPriority && // Special case related to `act`. If the currently scheduled task is a\n // Scheduler task, rather than an `act` task, cancel it and re-scheduled\n // on the `act` queue.\n !( ReactCurrentActQueue$1.current !== null && existingCallbackNode !== fakeActCallbackNode)) {\n {\n // If we're going to re-use an existing task, it needs to exist.\n // Assume that discrete update microtasks are non-cancellable and null.\n // TODO: Temporary until we confirm this warning is not fired.\n if (existingCallbackNode == null && existingCallbackPriority !== SyncLane) {\n error('Expected scheduled callback to exist. This error is likely caused by a bug in React. Please file an issue.');\n }\n } // The priority hasn't changed. We can reuse the existing task. Exit.\n\n\n return;\n }\n\n if (existingCallbackNode != null) {\n // Cancel the existing callback. We'll schedule a new one below.\n cancelCallback$1(existingCallbackNode);\n } // Schedule a new callback.\n\n\n var newCallbackNode;\n\n if (newCallbackPriority === SyncLane) {\n // Special case: Sync React callbacks are scheduled on a special\n // internal queue\n if (root.tag === LegacyRoot) {\n if ( ReactCurrentActQueue$1.isBatchingLegacy !== null) {\n ReactCurrentActQueue$1.didScheduleLegacyUpdate = true;\n }\n\n scheduleLegacySyncCallback(performSyncWorkOnRoot.bind(null, root));\n } else {\n scheduleSyncCallback(performSyncWorkOnRoot.bind(null, root));\n }\n\n {\n // Flush the queue in a microtask.\n if ( ReactCurrentActQueue$1.current !== null) {\n // Inside `act`, use our internal `act` queue so that these get flushed\n // at the end of the current scope even when using the sync version\n // of `act`.\n ReactCurrentActQueue$1.current.push(flushSyncCallbacks);\n } else {\n scheduleMicrotask(function () {\n // In Safari, appending an iframe forces microtasks to run.\n // https://github.com/facebook/react/issues/22459\n // We don't support running callbacks in the middle of render\n // or commit so we need to check against that.\n if ((executionContext & (RenderContext | CommitContext)) === NoContext) {\n // Note that this would still prematurely flush the callbacks\n // if this happens outside render or commit phase (e.g. in an event).\n flushSyncCallbacks();\n }\n });\n }\n }\n\n newCallbackNode = null;\n } else {\n var schedulerPriorityLevel;\n\n switch (lanesToEventPriority(nextLanes)) {\n case DiscreteEventPriority:\n schedulerPriorityLevel = ImmediatePriority;\n break;\n\n case ContinuousEventPriority:\n schedulerPriorityLevel = UserBlockingPriority;\n break;\n\n case DefaultEventPriority:\n schedulerPriorityLevel = NormalPriority;\n break;\n\n case IdleEventPriority:\n schedulerPriorityLevel = IdlePriority;\n break;\n\n default:\n schedulerPriorityLevel = NormalPriority;\n break;\n }\n\n newCallbackNode = scheduleCallback$1(schedulerPriorityLevel, performConcurrentWorkOnRoot.bind(null, root));\n }\n\n root.callbackPriority = newCallbackPriority;\n root.callbackNode = newCallbackNode;\n} // This is the entry point for every concurrent task, i.e. anything that\n// goes through Scheduler.\n\n\nfunction performConcurrentWorkOnRoot(root, didTimeout) {\n {\n resetNestedUpdateFlag();\n } // Since we know we're in a React event, we can clear the current\n // event time. The next update will compute a new event time.\n\n\n currentEventTime = NoTimestamp;\n currentEventTransitionLane = NoLanes;\n\n if ((executionContext & (RenderContext | CommitContext)) !== NoContext) {\n throw new Error('Should not already be working.');\n } // Flush any pending passive effects before deciding which lanes to work on,\n // in case they schedule additional work.\n\n\n var originalCallbackNode = root.callbackNode;\n var didFlushPassiveEffects = flushPassiveEffects();\n\n if (didFlushPassiveEffects) {\n // Something in the passive effect phase may have canceled the current task.\n // Check if the task node for this root was changed.\n if (root.callbackNode !== originalCallbackNode) {\n // The current task was canceled. Exit. We don't need to call\n // `ensureRootIsScheduled` because the check above implies either that\n // there's a new task, or that there's no remaining work on this root.\n return null;\n }\n } // Determine the next lanes to work on, using the fields stored\n // on the root.\n\n\n var lanes = getNextLanes(root, root === workInProgressRoot ? workInProgressRootRenderLanes : NoLanes);\n\n if (lanes === NoLanes) {\n // Defensive coding. This is never expected to happen.\n return null;\n } // We disable time-slicing in some cases: if the work has been CPU-bound\n // for too long (\"expired\" work, to prevent starvation), or we're in\n // sync-updates-by-default mode.\n // TODO: We only check `didTimeout` defensively, to account for a Scheduler\n // bug we're still investigating. Once the bug in Scheduler is fixed,\n // we can remove this, since we track expiration ourselves.\n\n\n var shouldTimeSlice = !includesBlockingLane(root, lanes) && !includesExpiredLane(root, lanes) && ( !didTimeout);\n var exitStatus = shouldTimeSlice ? renderRootConcurrent(root, lanes) : renderRootSync(root, lanes);\n\n if (exitStatus !== RootInProgress) {\n if (exitStatus === RootErrored) {\n // If something threw an error, try rendering one more time. We'll\n // render synchronously to block concurrent data mutations, and we'll\n // includes all pending updates are included. If it still fails after\n // the second attempt, we'll give up and commit the resulting tree.\n var errorRetryLanes = getLanesToRetrySynchronouslyOnError(root);\n\n if (errorRetryLanes !== NoLanes) {\n lanes = errorRetryLanes;\n exitStatus = recoverFromConcurrentError(root, errorRetryLanes);\n }\n }\n\n if (exitStatus === RootFatalErrored) {\n var fatalError = workInProgressRootFatalError;\n prepareFreshStack(root, NoLanes);\n markRootSuspended$1(root, lanes);\n ensureRootIsScheduled(root, now());\n throw fatalError;\n }\n\n if (exitStatus === RootDidNotComplete) {\n // The render unwound without completing the tree. This happens in special\n // cases where need to exit the current render without producing a\n // consistent tree or committing.\n //\n // This should only happen during a concurrent render, not a discrete or\n // synchronous update. We should have already checked for this when we\n // unwound the stack.\n markRootSuspended$1(root, lanes);\n } else {\n // The render completed.\n // Check if this render may have yielded to a concurrent event, and if so,\n // confirm that any newly rendered stores are consistent.\n // TODO: It's possible that even a concurrent render may never have yielded\n // to the main thread, if it was fast enough, or if it expired. We could\n // skip the consistency check in that case, too.\n var renderWasConcurrent = !includesBlockingLane(root, lanes);\n var finishedWork = root.current.alternate;\n\n if (renderWasConcurrent && !isRenderConsistentWithExternalStores(finishedWork)) {\n // A store was mutated in an interleaved event. Render again,\n // synchronously, to block further mutations.\n exitStatus = renderRootSync(root, lanes); // We need to check again if something threw\n\n if (exitStatus === RootErrored) {\n var _errorRetryLanes = getLanesToRetrySynchronouslyOnError(root);\n\n if (_errorRetryLanes !== NoLanes) {\n lanes = _errorRetryLanes;\n exitStatus = recoverFromConcurrentError(root, _errorRetryLanes); // We assume the tree is now consistent because we didn't yield to any\n // concurrent events.\n }\n }\n\n if (exitStatus === RootFatalErrored) {\n var _fatalError = workInProgressRootFatalError;\n prepareFreshStack(root, NoLanes);\n markRootSuspended$1(root, lanes);\n ensureRootIsScheduled(root, now());\n throw _fatalError;\n }\n } // We now have a consistent tree. The next step is either to commit it,\n // or, if something suspended, wait to commit it after a timeout.\n\n\n root.finishedWork = finishedWork;\n root.finishedLanes = lanes;\n finishConcurrentRender(root, exitStatus, lanes);\n }\n }\n\n ensureRootIsScheduled(root, now());\n\n if (root.callbackNode === originalCallbackNode) {\n // The task node scheduled for this root is the same one that's\n // currently executed. Need to return a continuation.\n return performConcurrentWorkOnRoot.bind(null, root);\n }\n\n return null;\n}\n\nfunction recoverFromConcurrentError(root, errorRetryLanes) {\n // If an error occurred during hydration, discard server response and fall\n // back to client side render.\n // Before rendering again, save the errors from the previous attempt.\n var errorsFromFirstAttempt = workInProgressRootConcurrentErrors;\n\n if (isRootDehydrated(root)) {\n // The shell failed to hydrate. Set a flag to force a client rendering\n // during the next attempt. To do this, we call prepareFreshStack now\n // to create the root work-in-progress fiber. This is a bit weird in terms\n // of factoring, because it relies on renderRootSync not calling\n // prepareFreshStack again in the call below, which happens because the\n // root and lanes haven't changed.\n //\n // TODO: I think what we should do is set ForceClientRender inside\n // throwException, like we do for nested Suspense boundaries. The reason\n // it's here instead is so we can switch to the synchronous work loop, too.\n // Something to consider for a future refactor.\n var rootWorkInProgress = prepareFreshStack(root, errorRetryLanes);\n rootWorkInProgress.flags |= ForceClientRender;\n\n {\n errorHydratingContainer(root.containerInfo);\n }\n }\n\n var exitStatus = renderRootSync(root, errorRetryLanes);\n\n if (exitStatus !== RootErrored) {\n // Successfully finished rendering on retry\n // The errors from the failed first attempt have been recovered. Add\n // them to the collection of recoverable errors. We'll log them in the\n // commit phase.\n var errorsFromSecondAttempt = workInProgressRootRecoverableErrors;\n workInProgressRootRecoverableErrors = errorsFromFirstAttempt; // The errors from the second attempt should be queued after the errors\n // from the first attempt, to preserve the causal sequence.\n\n if (errorsFromSecondAttempt !== null) {\n queueRecoverableErrors(errorsFromSecondAttempt);\n }\n }\n\n return exitStatus;\n}\n\nfunction queueRecoverableErrors(errors) {\n if (workInProgressRootRecoverableErrors === null) {\n workInProgressRootRecoverableErrors = errors;\n } else {\n workInProgressRootRecoverableErrors.push.apply(workInProgressRootRecoverableErrors, errors);\n }\n}\n\nfunction finishConcurrentRender(root, exitStatus, lanes) {\n switch (exitStatus) {\n case RootInProgress:\n case RootFatalErrored:\n {\n throw new Error('Root did not complete. This is a bug in React.');\n }\n // Flow knows about invariant, so it complains if I add a break\n // statement, but eslint doesn't know about invariant, so it complains\n // if I do. eslint-disable-next-line no-fallthrough\n\n case RootErrored:\n {\n // We should have already attempted to retry this tree. If we reached\n // this point, it errored again. Commit it.\n commitRoot(root, workInProgressRootRecoverableErrors, workInProgressTransitions);\n break;\n }\n\n case RootSuspended:\n {\n markRootSuspended$1(root, lanes); // We have an acceptable loading state. We need to figure out if we\n // should immediately commit it or wait a bit.\n\n if (includesOnlyRetries(lanes) && // do not delay if we're inside an act() scope\n !shouldForceFlushFallbacksInDEV()) {\n // This render only included retries, no updates. Throttle committing\n // retries so that we don't show too many loading states too quickly.\n var msUntilTimeout = globalMostRecentFallbackTime + FALLBACK_THROTTLE_MS - now(); // Don't bother with a very short suspense time.\n\n if (msUntilTimeout > 10) {\n var nextLanes = getNextLanes(root, NoLanes);\n\n if (nextLanes !== NoLanes) {\n // There's additional work on this root.\n break;\n }\n\n var suspendedLanes = root.suspendedLanes;\n\n if (!isSubsetOfLanes(suspendedLanes, lanes)) {\n // We should prefer to render the fallback of at the last\n // suspended level. Ping the last suspended level to try\n // rendering it again.\n // FIXME: What if the suspended lanes are Idle? Should not restart.\n var eventTime = requestEventTime();\n markRootPinged(root, suspendedLanes);\n break;\n } // The render is suspended, it hasn't timed out, and there's no\n // lower priority work to do. Instead of committing the fallback\n // immediately, wait for more data to arrive.\n\n\n root.timeoutHandle = scheduleTimeout(commitRoot.bind(null, root, workInProgressRootRecoverableErrors, workInProgressTransitions), msUntilTimeout);\n break;\n }\n } // The work expired. Commit immediately.\n\n\n commitRoot(root, workInProgressRootRecoverableErrors, workInProgressTransitions);\n break;\n }\n\n case RootSuspendedWithDelay:\n {\n markRootSuspended$1(root, lanes);\n\n if (includesOnlyTransitions(lanes)) {\n // This is a transition, so we should exit without committing a\n // placeholder and without scheduling a timeout. Delay indefinitely\n // until we receive more data.\n break;\n }\n\n if (!shouldForceFlushFallbacksInDEV()) {\n // This is not a transition, but we did trigger an avoided state.\n // Schedule a placeholder to display after a short delay, using the Just\n // Noticeable Difference.\n // TODO: Is the JND optimization worth the added complexity? If this is\n // the only reason we track the event time, then probably not.\n // Consider removing.\n var mostRecentEventTime = getMostRecentEventTime(root, lanes);\n var eventTimeMs = mostRecentEventTime;\n var timeElapsedMs = now() - eventTimeMs;\n\n var _msUntilTimeout = jnd(timeElapsedMs) - timeElapsedMs; // Don't bother with a very short suspense time.\n\n\n if (_msUntilTimeout > 10) {\n // Instead of committing the fallback immediately, wait for more data\n // to arrive.\n root.timeoutHandle = scheduleTimeout(commitRoot.bind(null, root, workInProgressRootRecoverableErrors, workInProgressTransitions), _msUntilTimeout);\n break;\n }\n } // Commit the placeholder.\n\n\n commitRoot(root, workInProgressRootRecoverableErrors, workInProgressTransitions);\n break;\n }\n\n case RootCompleted:\n {\n // The work completed. Ready to commit.\n commitRoot(root, workInProgressRootRecoverableErrors, workInProgressTransitions);\n break;\n }\n\n default:\n {\n throw new Error('Unknown root exit status.');\n }\n }\n}\n\nfunction isRenderConsistentWithExternalStores(finishedWork) {\n // Search the rendered tree for external store reads, and check whether the\n // stores were mutated in a concurrent event. Intentionally using an iterative\n // loop instead of recursion so we can exit early.\n var node = finishedWork;\n\n while (true) {\n if (node.flags & StoreConsistency) {\n var updateQueue = node.updateQueue;\n\n if (updateQueue !== null) {\n var checks = updateQueue.stores;\n\n if (checks !== null) {\n for (var i = 0; i < checks.length; i++) {\n var check = checks[i];\n var getSnapshot = check.getSnapshot;\n var renderedValue = check.value;\n\n try {\n if (!objectIs(getSnapshot(), renderedValue)) {\n // Found an inconsistent store.\n return false;\n }\n } catch (error) {\n // If `getSnapshot` throws, return `false`. This will schedule\n // a re-render, and the error will be rethrown during render.\n return false;\n }\n }\n }\n }\n }\n\n var child = node.child;\n\n if (node.subtreeFlags & StoreConsistency && child !== null) {\n child.return = node;\n node = child;\n continue;\n }\n\n if (node === finishedWork) {\n return true;\n }\n\n while (node.sibling === null) {\n if (node.return === null || node.return === finishedWork) {\n return true;\n }\n\n node = node.return;\n }\n\n node.sibling.return = node.return;\n node = node.sibling;\n } // Flow doesn't know this is unreachable, but eslint does\n // eslint-disable-next-line no-unreachable\n\n\n return true;\n}\n\nfunction markRootSuspended$1(root, suspendedLanes) {\n // When suspending, we should always exclude lanes that were pinged or (more\n // rarely, since we try to avoid it) updated during the render phase.\n // TODO: Lol maybe there's a better way to factor this besides this\n // obnoxiously named function :)\n suspendedLanes = removeLanes(suspendedLanes, workInProgressRootPingedLanes);\n suspendedLanes = removeLanes(suspendedLanes, workInProgressRootInterleavedUpdatedLanes);\n markRootSuspended(root, suspendedLanes);\n} // This is the entry point for synchronous tasks that don't go\n// through Scheduler\n\n\nfunction performSyncWorkOnRoot(root) {\n {\n syncNestedUpdateFlag();\n }\n\n if ((executionContext & (RenderContext | CommitContext)) !== NoContext) {\n throw new Error('Should not already be working.');\n }\n\n flushPassiveEffects();\n var lanes = getNextLanes(root, NoLanes);\n\n if (!includesSomeLane(lanes, SyncLane)) {\n // There's no remaining sync work left.\n ensureRootIsScheduled(root, now());\n return null;\n }\n\n var exitStatus = renderRootSync(root, lanes);\n\n if (root.tag !== LegacyRoot && exitStatus === RootErrored) {\n // If something threw an error, try rendering one more time. We'll render\n // synchronously to block concurrent data mutations, and we'll includes\n // all pending updates are included. If it still fails after the second\n // attempt, we'll give up and commit the resulting tree.\n var errorRetryLanes = getLanesToRetrySynchronouslyOnError(root);\n\n if (errorRetryLanes !== NoLanes) {\n lanes = errorRetryLanes;\n exitStatus = recoverFromConcurrentError(root, errorRetryLanes);\n }\n }\n\n if (exitStatus === RootFatalErrored) {\n var fatalError = workInProgressRootFatalError;\n prepareFreshStack(root, NoLanes);\n markRootSuspended$1(root, lanes);\n ensureRootIsScheduled(root, now());\n throw fatalError;\n }\n\n if (exitStatus === RootDidNotComplete) {\n throw new Error('Root did not complete. This is a bug in React.');\n } // We now have a consistent tree. Because this is a sync render, we\n // will commit it even if something suspended.\n\n\n var finishedWork = root.current.alternate;\n root.finishedWork = finishedWork;\n root.finishedLanes = lanes;\n commitRoot(root, workInProgressRootRecoverableErrors, workInProgressTransitions); // Before exiting, make sure there's a callback scheduled for the next\n // pending level.\n\n ensureRootIsScheduled(root, now());\n return null;\n}\n\nfunction flushRoot(root, lanes) {\n if (lanes !== NoLanes) {\n markRootEntangled(root, mergeLanes(lanes, SyncLane));\n ensureRootIsScheduled(root, now());\n\n if ((executionContext & (RenderContext | CommitContext)) === NoContext) {\n resetRenderTimer();\n flushSyncCallbacks();\n }\n }\n}\nfunction batchedUpdates$1(fn, a) {\n var prevExecutionContext = executionContext;\n executionContext |= BatchedContext;\n\n try {\n return fn(a);\n } finally {\n executionContext = prevExecutionContext; // If there were legacy sync updates, flush them at the end of the outer\n // most batchedUpdates-like method.\n\n if (executionContext === NoContext && // Treat `act` as if it's inside `batchedUpdates`, even in legacy mode.\n !( ReactCurrentActQueue$1.isBatchingLegacy)) {\n resetRenderTimer();\n flushSyncCallbacksOnlyInLegacyMode();\n }\n }\n}\nfunction discreteUpdates(fn, a, b, c, d) {\n var previousPriority = getCurrentUpdatePriority();\n var prevTransition = ReactCurrentBatchConfig$3.transition;\n\n try {\n ReactCurrentBatchConfig$3.transition = null;\n setCurrentUpdatePriority(DiscreteEventPriority);\n return fn(a, b, c, d);\n } finally {\n setCurrentUpdatePriority(previousPriority);\n ReactCurrentBatchConfig$3.transition = prevTransition;\n\n if (executionContext === NoContext) {\n resetRenderTimer();\n }\n }\n} // Overload the definition to the two valid signatures.\n// Warning, this opts-out of checking the function body.\n\n// eslint-disable-next-line no-redeclare\nfunction flushSync(fn) {\n // In legacy mode, we flush pending passive effects at the beginning of the\n // next event, not at the end of the previous one.\n if (rootWithPendingPassiveEffects !== null && rootWithPendingPassiveEffects.tag === LegacyRoot && (executionContext & (RenderContext | CommitContext)) === NoContext) {\n flushPassiveEffects();\n }\n\n var prevExecutionContext = executionContext;\n executionContext |= BatchedContext;\n var prevTransition = ReactCurrentBatchConfig$3.transition;\n var previousPriority = getCurrentUpdatePriority();\n\n try {\n ReactCurrentBatchConfig$3.transition = null;\n setCurrentUpdatePriority(DiscreteEventPriority);\n\n if (fn) {\n return fn();\n } else {\n return undefined;\n }\n } finally {\n setCurrentUpdatePriority(previousPriority);\n ReactCurrentBatchConfig$3.transition = prevTransition;\n executionContext = prevExecutionContext; // Flush the immediate callbacks that were scheduled during this batch.\n // Note that this will happen even if batchedUpdates is higher up\n // the stack.\n\n if ((executionContext & (RenderContext | CommitContext)) === NoContext) {\n flushSyncCallbacks();\n }\n }\n}\nfunction isAlreadyRendering() {\n // Used by the renderer to print a warning if certain APIs are called from\n // the wrong context.\n return (executionContext & (RenderContext | CommitContext)) !== NoContext;\n}\nfunction pushRenderLanes(fiber, lanes) {\n push(subtreeRenderLanesCursor, subtreeRenderLanes, fiber);\n subtreeRenderLanes = mergeLanes(subtreeRenderLanes, lanes);\n workInProgressRootIncludedLanes = mergeLanes(workInProgressRootIncludedLanes, lanes);\n}\nfunction popRenderLanes(fiber) {\n subtreeRenderLanes = subtreeRenderLanesCursor.current;\n pop(subtreeRenderLanesCursor, fiber);\n}\n\nfunction prepareFreshStack(root, lanes) {\n root.finishedWork = null;\n root.finishedLanes = NoLanes;\n var timeoutHandle = root.timeoutHandle;\n\n if (timeoutHandle !== noTimeout) {\n // The root previous suspended and scheduled a timeout to commit a fallback\n // state. Now that we have additional work, cancel the timeout.\n root.timeoutHandle = noTimeout; // $FlowFixMe Complains noTimeout is not a TimeoutID, despite the check above\n\n cancelTimeout(timeoutHandle);\n }\n\n if (workInProgress !== null) {\n var interruptedWork = workInProgress.return;\n\n while (interruptedWork !== null) {\n var current = interruptedWork.alternate;\n unwindInterruptedWork(current, interruptedWork);\n interruptedWork = interruptedWork.return;\n }\n }\n\n workInProgressRoot = root;\n var rootWorkInProgress = createWorkInProgress(root.current, null);\n workInProgress = rootWorkInProgress;\n workInProgressRootRenderLanes = subtreeRenderLanes = workInProgressRootIncludedLanes = lanes;\n workInProgressRootExitStatus = RootInProgress;\n workInProgressRootFatalError = null;\n workInProgressRootSkippedLanes = NoLanes;\n workInProgressRootInterleavedUpdatedLanes = NoLanes;\n workInProgressRootPingedLanes = NoLanes;\n workInProgressRootConcurrentErrors = null;\n workInProgressRootRecoverableErrors = null;\n finishQueueingConcurrentUpdates();\n\n {\n ReactStrictModeWarnings.discardPendingWarnings();\n }\n\n return rootWorkInProgress;\n}\n\nfunction handleError(root, thrownValue) {\n do {\n var erroredWork = workInProgress;\n\n try {\n // Reset module-level state that was set during the render phase.\n resetContextDependencies();\n resetHooksAfterThrow();\n resetCurrentFiber(); // TODO: I found and added this missing line while investigating a\n // separate issue. Write a regression test using string refs.\n\n ReactCurrentOwner$2.current = null;\n\n if (erroredWork === null || erroredWork.return === null) {\n // Expected to be working on a non-root fiber. This is a fatal error\n // because there's no ancestor that can handle it; the root is\n // supposed to capture all errors that weren't caught by an error\n // boundary.\n workInProgressRootExitStatus = RootFatalErrored;\n workInProgressRootFatalError = thrownValue; // Set `workInProgress` to null. This represents advancing to the next\n // sibling, or the parent if there are no siblings. But since the root\n // has no siblings nor a parent, we set it to null. Usually this is\n // handled by `completeUnitOfWork` or `unwindWork`, but since we're\n // intentionally not calling those, we need set it here.\n // TODO: Consider calling `unwindWork` to pop the contexts.\n\n workInProgress = null;\n return;\n }\n\n if (enableProfilerTimer && erroredWork.mode & ProfileMode) {\n // Record the time spent rendering before an error was thrown. This\n // avoids inaccurate Profiler durations in the case of a\n // suspended render.\n stopProfilerTimerIfRunningAndRecordDelta(erroredWork, true);\n }\n\n if (enableSchedulingProfiler) {\n markComponentRenderStopped();\n\n if (thrownValue !== null && typeof thrownValue === 'object' && typeof thrownValue.then === 'function') {\n var wakeable = thrownValue;\n markComponentSuspended(erroredWork, wakeable, workInProgressRootRenderLanes);\n } else {\n markComponentErrored(erroredWork, thrownValue, workInProgressRootRenderLanes);\n }\n }\n\n throwException(root, erroredWork.return, erroredWork, thrownValue, workInProgressRootRenderLanes);\n completeUnitOfWork(erroredWork);\n } catch (yetAnotherThrownValue) {\n // Something in the return path also threw.\n thrownValue = yetAnotherThrownValue;\n\n if (workInProgress === erroredWork && erroredWork !== null) {\n // If this boundary has already errored, then we had trouble processing\n // the error. Bubble it to the next boundary.\n erroredWork = erroredWork.return;\n workInProgress = erroredWork;\n } else {\n erroredWork = workInProgress;\n }\n\n continue;\n } // Return to the normal work loop.\n\n\n return;\n } while (true);\n}\n\nfunction pushDispatcher() {\n var prevDispatcher = ReactCurrentDispatcher$2.current;\n ReactCurrentDispatcher$2.current = ContextOnlyDispatcher;\n\n if (prevDispatcher === null) {\n // The React isomorphic package does not include a default dispatcher.\n // Instead the first renderer will lazily attach one, in order to give\n // nicer error messages.\n return ContextOnlyDispatcher;\n } else {\n return prevDispatcher;\n }\n}\n\nfunction popDispatcher(prevDispatcher) {\n ReactCurrentDispatcher$2.current = prevDispatcher;\n}\n\nfunction markCommitTimeOfFallback() {\n globalMostRecentFallbackTime = now();\n}\nfunction markSkippedUpdateLanes(lane) {\n workInProgressRootSkippedLanes = mergeLanes(lane, workInProgressRootSkippedLanes);\n}\nfunction renderDidSuspend() {\n if (workInProgressRootExitStatus === RootInProgress) {\n workInProgressRootExitStatus = RootSuspended;\n }\n}\nfunction renderDidSuspendDelayIfPossible() {\n if (workInProgressRootExitStatus === RootInProgress || workInProgressRootExitStatus === RootSuspended || workInProgressRootExitStatus === RootErrored) {\n workInProgressRootExitStatus = RootSuspendedWithDelay;\n } // Check if there are updates that we skipped tree that might have unblocked\n // this render.\n\n\n if (workInProgressRoot !== null && (includesNonIdleWork(workInProgressRootSkippedLanes) || includesNonIdleWork(workInProgressRootInterleavedUpdatedLanes))) {\n // Mark the current render as suspended so that we switch to working on\n // the updates that were skipped. Usually we only suspend at the end of\n // the render phase.\n // TODO: We should probably always mark the root as suspended immediately\n // (inside this function), since by suspending at the end of the render\n // phase introduces a potential mistake where we suspend lanes that were\n // pinged or updated while we were rendering.\n markRootSuspended$1(workInProgressRoot, workInProgressRootRenderLanes);\n }\n}\nfunction renderDidError(error) {\n if (workInProgressRootExitStatus !== RootSuspendedWithDelay) {\n workInProgressRootExitStatus = RootErrored;\n }\n\n if (workInProgressRootConcurrentErrors === null) {\n workInProgressRootConcurrentErrors = [error];\n } else {\n workInProgressRootConcurrentErrors.push(error);\n }\n} // Called during render to determine if anything has suspended.\n// Returns false if we're not sure.\n\nfunction renderHasNotSuspendedYet() {\n // If something errored or completed, we can't really be sure,\n // so those are false.\n return workInProgressRootExitStatus === RootInProgress;\n}\n\nfunction renderRootSync(root, lanes) {\n var prevExecutionContext = executionContext;\n executionContext |= RenderContext;\n var prevDispatcher = pushDispatcher(); // If the root or lanes have changed, throw out the existing stack\n // and prepare a fresh one. Otherwise we'll continue where we left off.\n\n if (workInProgressRoot !== root || workInProgressRootRenderLanes !== lanes) {\n {\n if (isDevToolsPresent) {\n var memoizedUpdaters = root.memoizedUpdaters;\n\n if (memoizedUpdaters.size > 0) {\n restorePendingUpdaters(root, workInProgressRootRenderLanes);\n memoizedUpdaters.clear();\n } // At this point, move Fibers that scheduled the upcoming work from the Map to the Set.\n // If we bailout on this work, we'll move them back (like above).\n // It's important to move them now in case the work spawns more work at the same priority with different updaters.\n // That way we can keep the current update and future updates separate.\n\n\n movePendingFibersToMemoized(root, lanes);\n }\n }\n\n workInProgressTransitions = getTransitionsForLanes();\n prepareFreshStack(root, lanes);\n }\n\n {\n markRenderStarted(lanes);\n }\n\n do {\n try {\n workLoopSync();\n break;\n } catch (thrownValue) {\n handleError(root, thrownValue);\n }\n } while (true);\n\n resetContextDependencies();\n executionContext = prevExecutionContext;\n popDispatcher(prevDispatcher);\n\n if (workInProgress !== null) {\n // This is a sync render, so we should have finished the whole tree.\n throw new Error('Cannot commit an incomplete root. This error is likely caused by a ' + 'bug in React. Please file an issue.');\n }\n\n {\n markRenderStopped();\n } // Set this to null to indicate there's no in-progress render.\n\n\n workInProgressRoot = null;\n workInProgressRootRenderLanes = NoLanes;\n return workInProgressRootExitStatus;\n} // The work loop is an extremely hot path. Tell Closure not to inline it.\n\n/** @noinline */\n\n\nfunction workLoopSync() {\n // Already timed out, so perform work without checking if we need to yield.\n while (workInProgress !== null) {\n performUnitOfWork(workInProgress);\n }\n}\n\nfunction renderRootConcurrent(root, lanes) {\n var prevExecutionContext = executionContext;\n executionContext |= RenderContext;\n var prevDispatcher = pushDispatcher(); // If the root or lanes have changed, throw out the existing stack\n // and prepare a fresh one. Otherwise we'll continue where we left off.\n\n if (workInProgressRoot !== root || workInProgressRootRenderLanes !== lanes) {\n {\n if (isDevToolsPresent) {\n var memoizedUpdaters = root.memoizedUpdaters;\n\n if (memoizedUpdaters.size > 0) {\n restorePendingUpdaters(root, workInProgressRootRenderLanes);\n memoizedUpdaters.clear();\n } // At this point, move Fibers that scheduled the upcoming work from the Map to the Set.\n // If we bailout on this work, we'll move them back (like above).\n // It's important to move them now in case the work spawns more work at the same priority with different updaters.\n // That way we can keep the current update and future updates separate.\n\n\n movePendingFibersToMemoized(root, lanes);\n }\n }\n\n workInProgressTransitions = getTransitionsForLanes();\n resetRenderTimer();\n prepareFreshStack(root, lanes);\n }\n\n {\n markRenderStarted(lanes);\n }\n\n do {\n try {\n workLoopConcurrent();\n break;\n } catch (thrownValue) {\n handleError(root, thrownValue);\n }\n } while (true);\n\n resetContextDependencies();\n popDispatcher(prevDispatcher);\n executionContext = prevExecutionContext;\n\n\n if (workInProgress !== null) {\n // Still work remaining.\n {\n markRenderYielded();\n }\n\n return RootInProgress;\n } else {\n // Completed the tree.\n {\n markRenderStopped();\n } // Set this to null to indicate there's no in-progress render.\n\n\n workInProgressRoot = null;\n workInProgressRootRenderLanes = NoLanes; // Return the final exit status.\n\n return workInProgressRootExitStatus;\n }\n}\n/** @noinline */\n\n\nfunction workLoopConcurrent() {\n // Perform work until Scheduler asks us to yield\n while (workInProgress !== null && !shouldYield()) {\n performUnitOfWork(workInProgress);\n }\n}\n\nfunction performUnitOfWork(unitOfWork) {\n // The current, flushed, state of this fiber is the alternate. Ideally\n // nothing should rely on this, but relying on it here means that we don't\n // need an additional field on the work in progress.\n var current = unitOfWork.alternate;\n setCurrentFiber(unitOfWork);\n var next;\n\n if ( (unitOfWork.mode & ProfileMode) !== NoMode) {\n startProfilerTimer(unitOfWork);\n next = beginWork$1(current, unitOfWork, subtreeRenderLanes);\n stopProfilerTimerIfRunningAndRecordDelta(unitOfWork, true);\n } else {\n next = beginWork$1(current, unitOfWork, subtreeRenderLanes);\n }\n\n resetCurrentFiber();\n unitOfWork.memoizedProps = unitOfWork.pendingProps;\n\n if (next === null) {\n // If this doesn't spawn new work, complete the current work.\n completeUnitOfWork(unitOfWork);\n } else {\n workInProgress = next;\n }\n\n ReactCurrentOwner$2.current = null;\n}\n\nfunction completeUnitOfWork(unitOfWork) {\n // Attempt to complete the current unit of work, then move to the next\n // sibling. If there are no more siblings, return to the parent fiber.\n var completedWork = unitOfWork;\n\n do {\n // The current, flushed, state of this fiber is the alternate. Ideally\n // nothing should rely on this, but relying on it here means that we don't\n // need an additional field on the work in progress.\n var current = completedWork.alternate;\n var returnFiber = completedWork.return; // Check if the work completed or if something threw.\n\n if ((completedWork.flags & Incomplete) === NoFlags) {\n setCurrentFiber(completedWork);\n var next = void 0;\n\n if ( (completedWork.mode & ProfileMode) === NoMode) {\n next = completeWork(current, completedWork, subtreeRenderLanes);\n } else {\n startProfilerTimer(completedWork);\n next = completeWork(current, completedWork, subtreeRenderLanes); // Update render duration assuming we didn't error.\n\n stopProfilerTimerIfRunningAndRecordDelta(completedWork, false);\n }\n\n resetCurrentFiber();\n\n if (next !== null) {\n // Completing this fiber spawned new work. Work on that next.\n workInProgress = next;\n return;\n }\n } else {\n // This fiber did not complete because something threw. Pop values off\n // the stack without entering the complete phase. If this is a boundary,\n // capture values if possible.\n var _next = unwindWork(current, completedWork); // Because this fiber did not complete, don't reset its lanes.\n\n\n if (_next !== null) {\n // If completing this work spawned new work, do that next. We'll come\n // back here again.\n // Since we're restarting, remove anything that is not a host effect\n // from the effect tag.\n _next.flags &= HostEffectMask;\n workInProgress = _next;\n return;\n }\n\n if ( (completedWork.mode & ProfileMode) !== NoMode) {\n // Record the render duration for the fiber that errored.\n stopProfilerTimerIfRunningAndRecordDelta(completedWork, false); // Include the time spent working on failed children before continuing.\n\n var actualDuration = completedWork.actualDuration;\n var child = completedWork.child;\n\n while (child !== null) {\n actualDuration += child.actualDuration;\n child = child.sibling;\n }\n\n completedWork.actualDuration = actualDuration;\n }\n\n if (returnFiber !== null) {\n // Mark the parent fiber as incomplete and clear its subtree flags.\n returnFiber.flags |= Incomplete;\n returnFiber.subtreeFlags = NoFlags;\n returnFiber.deletions = null;\n } else {\n // We've unwound all the way to the root.\n workInProgressRootExitStatus = RootDidNotComplete;\n workInProgress = null;\n return;\n }\n }\n\n var siblingFiber = completedWork.sibling;\n\n if (siblingFiber !== null) {\n // If there is more work to do in this returnFiber, do that next.\n workInProgress = siblingFiber;\n return;\n } // Otherwise, return to the parent\n\n\n completedWork = returnFiber; // Update the next thing we're working on in case something throws.\n\n workInProgress = completedWork;\n } while (completedWork !== null); // We've reached the root.\n\n\n if (workInProgressRootExitStatus === RootInProgress) {\n workInProgressRootExitStatus = RootCompleted;\n }\n}\n\nfunction commitRoot(root, recoverableErrors, transitions) {\n // TODO: This no longer makes any sense. We already wrap the mutation and\n // layout phases. Should be able to remove.\n var previousUpdateLanePriority = getCurrentUpdatePriority();\n var prevTransition = ReactCurrentBatchConfig$3.transition;\n\n try {\n ReactCurrentBatchConfig$3.transition = null;\n setCurrentUpdatePriority(DiscreteEventPriority);\n commitRootImpl(root, recoverableErrors, transitions, previousUpdateLanePriority);\n } finally {\n ReactCurrentBatchConfig$3.transition = prevTransition;\n setCurrentUpdatePriority(previousUpdateLanePriority);\n }\n\n return null;\n}\n\nfunction commitRootImpl(root, recoverableErrors, transitions, renderPriorityLevel) {\n do {\n // `flushPassiveEffects` will call `flushSyncUpdateQueue` at the end, which\n // means `flushPassiveEffects` will sometimes result in additional\n // passive effects. So we need to keep flushing in a loop until there are\n // no more pending effects.\n // TODO: Might be better if `flushPassiveEffects` did not automatically\n // flush synchronous work at the end, to avoid factoring hazards like this.\n flushPassiveEffects();\n } while (rootWithPendingPassiveEffects !== null);\n\n flushRenderPhaseStrictModeWarningsInDEV();\n\n if ((executionContext & (RenderContext | CommitContext)) !== NoContext) {\n throw new Error('Should not already be working.');\n }\n\n var finishedWork = root.finishedWork;\n var lanes = root.finishedLanes;\n\n {\n markCommitStarted(lanes);\n }\n\n if (finishedWork === null) {\n\n {\n markCommitStopped();\n }\n\n return null;\n } else {\n {\n if (lanes === NoLanes) {\n error('root.finishedLanes should not be empty during a commit. This is a ' + 'bug in React.');\n }\n }\n }\n\n root.finishedWork = null;\n root.finishedLanes = NoLanes;\n\n if (finishedWork === root.current) {\n throw new Error('Cannot commit the same tree as before. This error is likely caused by ' + 'a bug in React. Please file an issue.');\n } // commitRoot never returns a continuation; it always finishes synchronously.\n // So we can clear these now to allow a new callback to be scheduled.\n\n\n root.callbackNode = null;\n root.callbackPriority = NoLane; // Update the first and last pending times on this root. The new first\n // pending time is whatever is left on the root fiber.\n\n var remainingLanes = mergeLanes(finishedWork.lanes, finishedWork.childLanes);\n markRootFinished(root, remainingLanes);\n\n if (root === workInProgressRoot) {\n // We can reset these now that they are finished.\n workInProgressRoot = null;\n workInProgress = null;\n workInProgressRootRenderLanes = NoLanes;\n } // If there are pending passive effects, schedule a callback to process them.\n // Do this as early as possible, so it is queued before anything else that\n // might get scheduled in the commit phase. (See #16714.)\n // TODO: Delete all other places that schedule the passive effect callback\n // They're redundant.\n\n\n if ((finishedWork.subtreeFlags & PassiveMask) !== NoFlags || (finishedWork.flags & PassiveMask) !== NoFlags) {\n if (!rootDoesHavePassiveEffects) {\n rootDoesHavePassiveEffects = true;\n // to store it in pendingPassiveTransitions until they get processed\n // We need to pass this through as an argument to commitRoot\n // because workInProgressTransitions might have changed between\n // the previous render and commit if we throttle the commit\n // with setTimeout\n\n pendingPassiveTransitions = transitions;\n scheduleCallback$1(NormalPriority, function () {\n flushPassiveEffects(); // This render triggered passive effects: release the root cache pool\n // *after* passive effects fire to avoid freeing a cache pool that may\n // be referenced by a node in the tree (HostRoot, Cache boundary etc)\n\n return null;\n });\n }\n } // Check if there are any effects in the whole tree.\n // TODO: This is left over from the effect list implementation, where we had\n // to check for the existence of `firstEffect` to satisfy Flow. I think the\n // only other reason this optimization exists is because it affects profiling.\n // Reconsider whether this is necessary.\n\n\n var subtreeHasEffects = (finishedWork.subtreeFlags & (BeforeMutationMask | MutationMask | LayoutMask | PassiveMask)) !== NoFlags;\n var rootHasEffect = (finishedWork.flags & (BeforeMutationMask | MutationMask | LayoutMask | PassiveMask)) !== NoFlags;\n\n if (subtreeHasEffects || rootHasEffect) {\n var prevTransition = ReactCurrentBatchConfig$3.transition;\n ReactCurrentBatchConfig$3.transition = null;\n var previousPriority = getCurrentUpdatePriority();\n setCurrentUpdatePriority(DiscreteEventPriority);\n var prevExecutionContext = executionContext;\n executionContext |= CommitContext; // Reset this to null before calling lifecycles\n\n ReactCurrentOwner$2.current = null; // The commit phase is broken into several sub-phases. We do a separate pass\n // of the effect list for each phase: all mutation effects come before all\n // layout effects, and so on.\n // The first phase a \"before mutation\" phase. We use this phase to read the\n // state of the host tree right before we mutate it. This is where\n // getSnapshotBeforeUpdate is called.\n\n var shouldFireAfterActiveInstanceBlur = commitBeforeMutationEffects(root, finishedWork);\n\n {\n // Mark the current commit time to be shared by all Profilers in this\n // batch. This enables them to be grouped later.\n recordCommitTime();\n }\n\n\n commitMutationEffects(root, finishedWork, lanes);\n\n resetAfterCommit(root.containerInfo); // The work-in-progress tree is now the current tree. This must come after\n // the mutation phase, so that the previous tree is still current during\n // componentWillUnmount, but before the layout phase, so that the finished\n // work is current during componentDidMount/Update.\n\n root.current = finishedWork; // The next phase is the layout phase, where we call effects that read\n\n {\n markLayoutEffectsStarted(lanes);\n }\n\n commitLayoutEffects(finishedWork, root, lanes);\n\n {\n markLayoutEffectsStopped();\n }\n // opportunity to paint.\n\n\n requestPaint();\n executionContext = prevExecutionContext; // Reset the priority to the previous non-sync value.\n\n setCurrentUpdatePriority(previousPriority);\n ReactCurrentBatchConfig$3.transition = prevTransition;\n } else {\n // No effects.\n root.current = finishedWork; // Measure these anyway so the flamegraph explicitly shows that there were\n // no effects.\n // TODO: Maybe there's a better way to report this.\n\n {\n recordCommitTime();\n }\n }\n\n var rootDidHavePassiveEffects = rootDoesHavePassiveEffects;\n\n if (rootDoesHavePassiveEffects) {\n // This commit has passive effects. Stash a reference to them. But don't\n // schedule a callback until after flushing layout work.\n rootDoesHavePassiveEffects = false;\n rootWithPendingPassiveEffects = root;\n pendingPassiveEffectsLanes = lanes;\n } else {\n\n {\n nestedPassiveUpdateCount = 0;\n rootWithPassiveNestedUpdates = null;\n }\n } // Read this again, since an effect might have updated it\n\n\n remainingLanes = root.pendingLanes; // Check if there's remaining work on this root\n // TODO: This is part of the `componentDidCatch` implementation. Its purpose\n // is to detect whether something might have called setState inside\n // `componentDidCatch`. The mechanism is known to be flawed because `setState`\n // inside `componentDidCatch` is itself flawed \u2014 that's why we recommend\n // `getDerivedStateFromError` instead. However, it could be improved by\n // checking if remainingLanes includes Sync work, instead of whether there's\n // any work remaining at all (which would also include stuff like Suspense\n // retries or transitions). It's been like this for a while, though, so fixing\n // it probably isn't that urgent.\n\n if (remainingLanes === NoLanes) {\n // If there's no remaining work, we can clear the set of already failed\n // error boundaries.\n legacyErrorBoundariesThatAlreadyFailed = null;\n }\n\n {\n if (!rootDidHavePassiveEffects) {\n commitDoubleInvokeEffectsInDEV(root.current, false);\n }\n }\n\n onCommitRoot(finishedWork.stateNode, renderPriorityLevel);\n\n {\n if (isDevToolsPresent) {\n root.memoizedUpdaters.clear();\n }\n }\n\n {\n onCommitRoot$1();\n } // Always call this before exiting `commitRoot`, to ensure that any\n // additional work on this root is scheduled.\n\n\n ensureRootIsScheduled(root, now());\n\n if (recoverableErrors !== null) {\n // There were errors during this render, but recovered from them without\n // needing to surface it to the UI. We log them here.\n var onRecoverableError = root.onRecoverableError;\n\n for (var i = 0; i < recoverableErrors.length; i++) {\n var recoverableError = recoverableErrors[i];\n var componentStack = recoverableError.stack;\n var digest = recoverableError.digest;\n onRecoverableError(recoverableError.value, {\n componentStack: componentStack,\n digest: digest\n });\n }\n }\n\n if (hasUncaughtError) {\n hasUncaughtError = false;\n var error$1 = firstUncaughtError;\n firstUncaughtError = null;\n throw error$1;\n } // If the passive effects are the result of a discrete render, flush them\n // synchronously at the end of the current task so that the result is\n // immediately observable. Otherwise, we assume that they are not\n // order-dependent and do not need to be observed by external systems, so we\n // can wait until after paint.\n // TODO: We can optimize this by not scheduling the callback earlier. Since we\n // currently schedule the callback in multiple places, will wait until those\n // are consolidated.\n\n\n if (includesSomeLane(pendingPassiveEffectsLanes, SyncLane) && root.tag !== LegacyRoot) {\n flushPassiveEffects();\n } // Read this again, since a passive effect might have updated it\n\n\n remainingLanes = root.pendingLanes;\n\n if (includesSomeLane(remainingLanes, SyncLane)) {\n {\n markNestedUpdateScheduled();\n } // Count the number of times the root synchronously re-renders without\n // finishing. If there are too many, it indicates an infinite update loop.\n\n\n if (root === rootWithNestedUpdates) {\n nestedUpdateCount++;\n } else {\n nestedUpdateCount = 0;\n rootWithNestedUpdates = root;\n }\n } else {\n nestedUpdateCount = 0;\n } // If layout work was scheduled, flush it now.\n\n\n flushSyncCallbacks();\n\n {\n markCommitStopped();\n }\n\n return null;\n}\n\nfunction flushPassiveEffects() {\n // Returns whether passive effects were flushed.\n // TODO: Combine this check with the one in flushPassiveEFfectsImpl. We should\n // probably just combine the two functions. I believe they were only separate\n // in the first place because we used to wrap it with\n // `Scheduler.runWithPriority`, which accepts a function. But now we track the\n // priority within React itself, so we can mutate the variable directly.\n if (rootWithPendingPassiveEffects !== null) {\n var renderPriority = lanesToEventPriority(pendingPassiveEffectsLanes);\n var priority = lowerEventPriority(DefaultEventPriority, renderPriority);\n var prevTransition = ReactCurrentBatchConfig$3.transition;\n var previousPriority = getCurrentUpdatePriority();\n\n try {\n ReactCurrentBatchConfig$3.transition = null;\n setCurrentUpdatePriority(priority);\n return flushPassiveEffectsImpl();\n } finally {\n setCurrentUpdatePriority(previousPriority);\n ReactCurrentBatchConfig$3.transition = prevTransition; // Once passive effects have run for the tree - giving components a\n }\n }\n\n return false;\n}\nfunction enqueuePendingPassiveProfilerEffect(fiber) {\n {\n pendingPassiveProfilerEffects.push(fiber);\n\n if (!rootDoesHavePassiveEffects) {\n rootDoesHavePassiveEffects = true;\n scheduleCallback$1(NormalPriority, function () {\n flushPassiveEffects();\n return null;\n });\n }\n }\n}\n\nfunction flushPassiveEffectsImpl() {\n if (rootWithPendingPassiveEffects === null) {\n return false;\n } // Cache and clear the transitions flag\n\n\n var transitions = pendingPassiveTransitions;\n pendingPassiveTransitions = null;\n var root = rootWithPendingPassiveEffects;\n var lanes = pendingPassiveEffectsLanes;\n rootWithPendingPassiveEffects = null; // TODO: This is sometimes out of sync with rootWithPendingPassiveEffects.\n // Figure out why and fix it. It's not causing any known issues (probably\n // because it's only used for profiling), but it's a refactor hazard.\n\n pendingPassiveEffectsLanes = NoLanes;\n\n if ((executionContext & (RenderContext | CommitContext)) !== NoContext) {\n throw new Error('Cannot flush passive effects while already rendering.');\n }\n\n {\n isFlushingPassiveEffects = true;\n didScheduleUpdateDuringPassiveEffects = false;\n }\n\n {\n markPassiveEffectsStarted(lanes);\n }\n\n var prevExecutionContext = executionContext;\n executionContext |= CommitContext;\n commitPassiveUnmountEffects(root.current);\n commitPassiveMountEffects(root, root.current, lanes, transitions); // TODO: Move to commitPassiveMountEffects\n\n {\n var profilerEffects = pendingPassiveProfilerEffects;\n pendingPassiveProfilerEffects = [];\n\n for (var i = 0; i < profilerEffects.length; i++) {\n var _fiber = profilerEffects[i];\n commitPassiveEffectDurations(root, _fiber);\n }\n }\n\n {\n markPassiveEffectsStopped();\n }\n\n {\n commitDoubleInvokeEffectsInDEV(root.current, true);\n }\n\n executionContext = prevExecutionContext;\n flushSyncCallbacks();\n\n {\n // If additional passive effects were scheduled, increment a counter. If this\n // exceeds the limit, we'll fire a warning.\n if (didScheduleUpdateDuringPassiveEffects) {\n if (root === rootWithPassiveNestedUpdates) {\n nestedPassiveUpdateCount++;\n } else {\n nestedPassiveUpdateCount = 0;\n rootWithPassiveNestedUpdates = root;\n }\n } else {\n nestedPassiveUpdateCount = 0;\n }\n\n isFlushingPassiveEffects = false;\n didScheduleUpdateDuringPassiveEffects = false;\n } // TODO: Move to commitPassiveMountEffects\n\n\n onPostCommitRoot(root);\n\n {\n var stateNode = root.current.stateNode;\n stateNode.effectDuration = 0;\n stateNode.passiveEffectDuration = 0;\n }\n\n return true;\n}\n\nfunction isAlreadyFailedLegacyErrorBoundary(instance) {\n return legacyErrorBoundariesThatAlreadyFailed !== null && legacyErrorBoundariesThatAlreadyFailed.has(instance);\n}\nfunction markLegacyErrorBoundaryAsFailed(instance) {\n if (legacyErrorBoundariesThatAlreadyFailed === null) {\n legacyErrorBoundariesThatAlreadyFailed = new Set([instance]);\n } else {\n legacyErrorBoundariesThatAlreadyFailed.add(instance);\n }\n}\n\nfunction prepareToThrowUncaughtError(error) {\n if (!hasUncaughtError) {\n hasUncaughtError = true;\n firstUncaughtError = error;\n }\n}\n\nvar onUncaughtError = prepareToThrowUncaughtError;\n\nfunction captureCommitPhaseErrorOnRoot(rootFiber, sourceFiber, error) {\n var errorInfo = createCapturedValueAtFiber(error, sourceFiber);\n var update = createRootErrorUpdate(rootFiber, errorInfo, SyncLane);\n var root = enqueueUpdate(rootFiber, update, SyncLane);\n var eventTime = requestEventTime();\n\n if (root !== null) {\n markRootUpdated(root, SyncLane, eventTime);\n ensureRootIsScheduled(root, eventTime);\n }\n}\n\nfunction captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error$1) {\n {\n reportUncaughtErrorInDEV(error$1);\n setIsRunningInsertionEffect(false);\n }\n\n if (sourceFiber.tag === HostRoot) {\n // Error was thrown at the root. There is no parent, so the root\n // itself should capture it.\n captureCommitPhaseErrorOnRoot(sourceFiber, sourceFiber, error$1);\n return;\n }\n\n var fiber = null;\n\n {\n fiber = nearestMountedAncestor;\n }\n\n while (fiber !== null) {\n if (fiber.tag === HostRoot) {\n captureCommitPhaseErrorOnRoot(fiber, sourceFiber, error$1);\n return;\n } else if (fiber.tag === ClassComponent) {\n var ctor = fiber.type;\n var instance = fiber.stateNode;\n\n if (typeof ctor.getDerivedStateFromError === 'function' || typeof instance.componentDidCatch === 'function' && !isAlreadyFailedLegacyErrorBoundary(instance)) {\n var errorInfo = createCapturedValueAtFiber(error$1, sourceFiber);\n var update = createClassErrorUpdate(fiber, errorInfo, SyncLane);\n var root = enqueueUpdate(fiber, update, SyncLane);\n var eventTime = requestEventTime();\n\n if (root !== null) {\n markRootUpdated(root, SyncLane, eventTime);\n ensureRootIsScheduled(root, eventTime);\n }\n\n return;\n }\n }\n\n fiber = fiber.return;\n }\n\n {\n // TODO: Until we re-land skipUnmountedBoundaries (see #20147), this warning\n // will fire for errors that are thrown by destroy functions inside deleted\n // trees. What it should instead do is propagate the error to the parent of\n // the deleted tree. In the meantime, do not add this warning to the\n // allowlist; this is only for our internal use.\n error('Internal React error: Attempted to capture a commit phase error ' + 'inside a detached tree. This indicates a bug in React. Likely ' + 'causes include deleting the same fiber more than once, committing an ' + 'already-finished tree, or an inconsistent return pointer.\\n\\n' + 'Error message:\\n\\n%s', error$1);\n }\n}\nfunction pingSuspendedRoot(root, wakeable, pingedLanes) {\n var pingCache = root.pingCache;\n\n if (pingCache !== null) {\n // The wakeable resolved, so we no longer need to memoize, because it will\n // never be thrown again.\n pingCache.delete(wakeable);\n }\n\n var eventTime = requestEventTime();\n markRootPinged(root, pingedLanes);\n warnIfSuspenseResolutionNotWrappedWithActDEV(root);\n\n if (workInProgressRoot === root && isSubsetOfLanes(workInProgressRootRenderLanes, pingedLanes)) {\n // Received a ping at the same priority level at which we're currently\n // rendering. We might want to restart this render. This should mirror\n // the logic of whether or not a root suspends once it completes.\n // TODO: If we're rendering sync either due to Sync, Batched or expired,\n // we should probably never restart.\n // If we're suspended with delay, or if it's a retry, we'll always suspend\n // so we can always restart.\n if (workInProgressRootExitStatus === RootSuspendedWithDelay || workInProgressRootExitStatus === RootSuspended && includesOnlyRetries(workInProgressRootRenderLanes) && now() - globalMostRecentFallbackTime < FALLBACK_THROTTLE_MS) {\n // Restart from the root.\n prepareFreshStack(root, NoLanes);\n } else {\n // Even though we can't restart right now, we might get an\n // opportunity later. So we mark this render as having a ping.\n workInProgressRootPingedLanes = mergeLanes(workInProgressRootPingedLanes, pingedLanes);\n }\n }\n\n ensureRootIsScheduled(root, eventTime);\n}\n\nfunction retryTimedOutBoundary(boundaryFiber, retryLane) {\n // The boundary fiber (a Suspense component or SuspenseList component)\n // previously was rendered in its fallback state. One of the promises that\n // suspended it has resolved, which means at least part of the tree was\n // likely unblocked. Try rendering again, at a new lanes.\n if (retryLane === NoLane) {\n // TODO: Assign this to `suspenseState.retryLane`? to avoid\n // unnecessary entanglement?\n retryLane = requestRetryLane(boundaryFiber);\n } // TODO: Special case idle priority?\n\n\n var eventTime = requestEventTime();\n var root = enqueueConcurrentRenderForLane(boundaryFiber, retryLane);\n\n if (root !== null) {\n markRootUpdated(root, retryLane, eventTime);\n ensureRootIsScheduled(root, eventTime);\n }\n}\n\nfunction retryDehydratedSuspenseBoundary(boundaryFiber) {\n var suspenseState = boundaryFiber.memoizedState;\n var retryLane = NoLane;\n\n if (suspenseState !== null) {\n retryLane = suspenseState.retryLane;\n }\n\n retryTimedOutBoundary(boundaryFiber, retryLane);\n}\nfunction resolveRetryWakeable(boundaryFiber, wakeable) {\n var retryLane = NoLane; // Default\n\n var retryCache;\n\n switch (boundaryFiber.tag) {\n case SuspenseComponent:\n retryCache = boundaryFiber.stateNode;\n var suspenseState = boundaryFiber.memoizedState;\n\n if (suspenseState !== null) {\n retryLane = suspenseState.retryLane;\n }\n\n break;\n\n case SuspenseListComponent:\n retryCache = boundaryFiber.stateNode;\n break;\n\n default:\n throw new Error('Pinged unknown suspense boundary type. ' + 'This is probably a bug in React.');\n }\n\n if (retryCache !== null) {\n // The wakeable resolved, so we no longer need to memoize, because it will\n // never be thrown again.\n retryCache.delete(wakeable);\n }\n\n retryTimedOutBoundary(boundaryFiber, retryLane);\n} // Computes the next Just Noticeable Difference (JND) boundary.\n// The theory is that a person can't tell the difference between small differences in time.\n// Therefore, if we wait a bit longer than necessary that won't translate to a noticeable\n// difference in the experience. However, waiting for longer might mean that we can avoid\n// showing an intermediate loading state. The longer we have already waited, the harder it\n// is to tell small differences in time. Therefore, the longer we've already waited,\n// the longer we can wait additionally. At some point we have to give up though.\n// We pick a train model where the next boundary commits at a consistent schedule.\n// These particular numbers are vague estimates. We expect to adjust them based on research.\n\nfunction jnd(timeElapsed) {\n return timeElapsed < 120 ? 120 : timeElapsed < 480 ? 480 : timeElapsed < 1080 ? 1080 : timeElapsed < 1920 ? 1920 : timeElapsed < 3000 ? 3000 : timeElapsed < 4320 ? 4320 : ceil(timeElapsed / 1960) * 1960;\n}\n\nfunction checkForNestedUpdates() {\n if (nestedUpdateCount > NESTED_UPDATE_LIMIT) {\n nestedUpdateCount = 0;\n rootWithNestedUpdates = null;\n throw new Error('Maximum update depth exceeded. This can happen when a component ' + 'repeatedly calls setState inside componentWillUpdate or ' + 'componentDidUpdate. React limits the number of nested updates to ' + 'prevent infinite loops.');\n }\n\n {\n if (nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT) {\n nestedPassiveUpdateCount = 0;\n rootWithPassiveNestedUpdates = null;\n\n error('Maximum update depth exceeded. This can happen when a component ' + \"calls setState inside useEffect, but useEffect either doesn't \" + 'have a dependency array, or one of the dependencies changes on ' + 'every render.');\n }\n }\n}\n\nfunction flushRenderPhaseStrictModeWarningsInDEV() {\n {\n ReactStrictModeWarnings.flushLegacyContextWarning();\n\n {\n ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings();\n }\n }\n}\n\nfunction commitDoubleInvokeEffectsInDEV(fiber, hasPassiveEffects) {\n {\n // TODO (StrictEffects) Should we set a marker on the root if it contains strict effects\n // so we don't traverse unnecessarily? similar to subtreeFlags but just at the root level.\n // Maybe not a big deal since this is DEV only behavior.\n setCurrentFiber(fiber);\n invokeEffectsInDev(fiber, MountLayoutDev, invokeLayoutEffectUnmountInDEV);\n\n if (hasPassiveEffects) {\n invokeEffectsInDev(fiber, MountPassiveDev, invokePassiveEffectUnmountInDEV);\n }\n\n invokeEffectsInDev(fiber, MountLayoutDev, invokeLayoutEffectMountInDEV);\n\n if (hasPassiveEffects) {\n invokeEffectsInDev(fiber, MountPassiveDev, invokePassiveEffectMountInDEV);\n }\n\n resetCurrentFiber();\n }\n}\n\nfunction invokeEffectsInDev(firstChild, fiberFlags, invokeEffectFn) {\n {\n // We don't need to re-check StrictEffectsMode here.\n // This function is only called if that check has already passed.\n var current = firstChild;\n var subtreeRoot = null;\n\n while (current !== null) {\n var primarySubtreeFlag = current.subtreeFlags & fiberFlags;\n\n if (current !== subtreeRoot && current.child !== null && primarySubtreeFlag !== NoFlags) {\n current = current.child;\n } else {\n if ((current.flags & fiberFlags) !== NoFlags) {\n invokeEffectFn(current);\n }\n\n if (current.sibling !== null) {\n current = current.sibling;\n } else {\n current = subtreeRoot = current.return;\n }\n }\n }\n }\n}\n\nvar didWarnStateUpdateForNotYetMountedComponent = null;\nfunction warnAboutUpdateOnNotYetMountedFiberInDEV(fiber) {\n {\n if ((executionContext & RenderContext) !== NoContext) {\n // We let the other warning about render phase updates deal with this one.\n return;\n }\n\n if (!(fiber.mode & ConcurrentMode)) {\n return;\n }\n\n var tag = fiber.tag;\n\n if (tag !== IndeterminateComponent && tag !== HostRoot && tag !== ClassComponent && tag !== FunctionComponent && tag !== ForwardRef && tag !== MemoComponent && tag !== SimpleMemoComponent) {\n // Only warn for user-defined components, not internal ones like Suspense.\n return;\n } // We show the whole stack but dedupe on the top component's name because\n // the problematic code almost always lies inside that component.\n\n\n var componentName = getComponentNameFromFiber(fiber) || 'ReactComponent';\n\n if (didWarnStateUpdateForNotYetMountedComponent !== null) {\n if (didWarnStateUpdateForNotYetMountedComponent.has(componentName)) {\n return;\n }\n\n didWarnStateUpdateForNotYetMountedComponent.add(componentName);\n } else {\n didWarnStateUpdateForNotYetMountedComponent = new Set([componentName]);\n }\n\n var previousFiber = current;\n\n try {\n setCurrentFiber(fiber);\n\n error(\"Can't perform a React state update on a component that hasn't mounted yet. \" + 'This indicates that you have a side-effect in your render function that ' + 'asynchronously later calls tries to update the component. Move this work to ' + 'useEffect instead.');\n } finally {\n if (previousFiber) {\n setCurrentFiber(fiber);\n } else {\n resetCurrentFiber();\n }\n }\n }\n}\nvar beginWork$1;\n\n{\n var dummyFiber = null;\n\n beginWork$1 = function (current, unitOfWork, lanes) {\n // If a component throws an error, we replay it again in a synchronously\n // dispatched event, so that the debugger will treat it as an uncaught\n // error See ReactErrorUtils for more information.\n // Before entering the begin phase, copy the work-in-progress onto a dummy\n // fiber. If beginWork throws, we'll use this to reset the state.\n var originalWorkInProgressCopy = assignFiberPropertiesInDEV(dummyFiber, unitOfWork);\n\n try {\n return beginWork(current, unitOfWork, lanes);\n } catch (originalError) {\n if (didSuspendOrErrorWhileHydratingDEV() || originalError !== null && typeof originalError === 'object' && typeof originalError.then === 'function') {\n // Don't replay promises.\n // Don't replay errors if we are hydrating and have already suspended or handled an error\n throw originalError;\n } // Keep this code in sync with handleError; any changes here must have\n // corresponding changes there.\n\n\n resetContextDependencies();\n resetHooksAfterThrow(); // Don't reset current debug fiber, since we're about to work on the\n // same fiber again.\n // Unwind the failed stack frame\n\n unwindInterruptedWork(current, unitOfWork); // Restore the original properties of the fiber.\n\n assignFiberPropertiesInDEV(unitOfWork, originalWorkInProgressCopy);\n\n if ( unitOfWork.mode & ProfileMode) {\n // Reset the profiler timer.\n startProfilerTimer(unitOfWork);\n } // Run beginWork again.\n\n\n invokeGuardedCallback(null, beginWork, null, current, unitOfWork, lanes);\n\n if (hasCaughtError()) {\n var replayError = clearCaughtError();\n\n if (typeof replayError === 'object' && replayError !== null && replayError._suppressLogging && typeof originalError === 'object' && originalError !== null && !originalError._suppressLogging) {\n // If suppressed, let the flag carry over to the original error which is the one we'll rethrow.\n originalError._suppressLogging = true;\n }\n } // We always throw the original error in case the second render pass is not idempotent.\n // This can happen if a memoized function or CommonJS module doesn't throw after first invocation.\n\n\n throw originalError;\n }\n };\n}\n\nvar didWarnAboutUpdateInRender = false;\nvar didWarnAboutUpdateInRenderForAnotherComponent;\n\n{\n didWarnAboutUpdateInRenderForAnotherComponent = new Set();\n}\n\nfunction warnAboutRenderPhaseUpdatesInDEV(fiber) {\n {\n if (isRendering && !getIsUpdatingOpaqueValueInRenderPhaseInDEV()) {\n switch (fiber.tag) {\n case FunctionComponent:\n case ForwardRef:\n case SimpleMemoComponent:\n {\n var renderingComponentName = workInProgress && getComponentNameFromFiber(workInProgress) || 'Unknown'; // Dedupe by the rendering component because it's the one that needs to be fixed.\n\n var dedupeKey = renderingComponentName;\n\n if (!didWarnAboutUpdateInRenderForAnotherComponent.has(dedupeKey)) {\n didWarnAboutUpdateInRenderForAnotherComponent.add(dedupeKey);\n var setStateComponentName = getComponentNameFromFiber(fiber) || 'Unknown';\n\n error('Cannot update a component (`%s`) while rendering a ' + 'different component (`%s`). To locate the bad setState() call inside `%s`, ' + 'follow the stack trace as described in https://reactjs.org/link/setstate-in-render', setStateComponentName, renderingComponentName, renderingComponentName);\n }\n\n break;\n }\n\n case ClassComponent:\n {\n if (!didWarnAboutUpdateInRender) {\n error('Cannot update during an existing state transition (such as ' + 'within `render`). Render methods should be a pure ' + 'function of props and state.');\n\n didWarnAboutUpdateInRender = true;\n }\n\n break;\n }\n }\n }\n }\n}\n\nfunction restorePendingUpdaters(root, lanes) {\n {\n if (isDevToolsPresent) {\n var memoizedUpdaters = root.memoizedUpdaters;\n memoizedUpdaters.forEach(function (schedulingFiber) {\n addFiberToLanesMap(root, schedulingFiber, lanes);\n }); // This function intentionally does not clear memoized updaters.\n // Those may still be relevant to the current commit\n // and a future one (e.g. Suspense).\n }\n }\n}\nvar fakeActCallbackNode = {};\n\nfunction scheduleCallback$1(priorityLevel, callback) {\n {\n // If we're currently inside an `act` scope, bypass Scheduler and push to\n // the `act` queue instead.\n var actQueue = ReactCurrentActQueue$1.current;\n\n if (actQueue !== null) {\n actQueue.push(callback);\n return fakeActCallbackNode;\n } else {\n return scheduleCallback(priorityLevel, callback);\n }\n }\n}\n\nfunction cancelCallback$1(callbackNode) {\n if ( callbackNode === fakeActCallbackNode) {\n return;\n } // In production, always call Scheduler. This function will be stripped out.\n\n\n return cancelCallback(callbackNode);\n}\n\nfunction shouldForceFlushFallbacksInDEV() {\n // Never force flush in production. This function should get stripped out.\n return ReactCurrentActQueue$1.current !== null;\n}\n\nfunction warnIfUpdatesNotWrappedWithActDEV(fiber) {\n {\n if (fiber.mode & ConcurrentMode) {\n if (!isConcurrentActEnvironment()) {\n // Not in an act environment. No need to warn.\n return;\n }\n } else {\n // Legacy mode has additional cases where we suppress a warning.\n if (!isLegacyActEnvironment()) {\n // Not in an act environment. No need to warn.\n return;\n }\n\n if (executionContext !== NoContext) {\n // Legacy mode doesn't warn if the update is batched, i.e.\n // batchedUpdates or flushSync.\n return;\n }\n\n if (fiber.tag !== FunctionComponent && fiber.tag !== ForwardRef && fiber.tag !== SimpleMemoComponent) {\n // For backwards compatibility with pre-hooks code, legacy mode only\n // warns for updates that originate from a hook.\n return;\n }\n }\n\n if (ReactCurrentActQueue$1.current === null) {\n var previousFiber = current;\n\n try {\n setCurrentFiber(fiber);\n\n error('An update to %s inside a test was not wrapped in act(...).\\n\\n' + 'When testing, code that causes React state updates should be ' + 'wrapped into act(...):\\n\\n' + 'act(() => {\\n' + ' /* fire events that update state */\\n' + '});\\n' + '/* assert on the output */\\n\\n' + \"This ensures that you're testing the behavior the user would see \" + 'in the browser.' + ' Learn more at https://reactjs.org/link/wrap-tests-with-act', getComponentNameFromFiber(fiber));\n } finally {\n if (previousFiber) {\n setCurrentFiber(fiber);\n } else {\n resetCurrentFiber();\n }\n }\n }\n }\n}\n\nfunction warnIfSuspenseResolutionNotWrappedWithActDEV(root) {\n {\n if (root.tag !== LegacyRoot && isConcurrentActEnvironment() && ReactCurrentActQueue$1.current === null) {\n error('A suspended resource finished loading inside a test, but the event ' + 'was not wrapped in act(...).\\n\\n' + 'When testing, code that resolves suspended data should be wrapped ' + 'into act(...):\\n\\n' + 'act(() => {\\n' + ' /* finish loading suspended data */\\n' + '});\\n' + '/* assert on the output */\\n\\n' + \"This ensures that you're testing the behavior the user would see \" + 'in the browser.' + ' Learn more at https://reactjs.org/link/wrap-tests-with-act');\n }\n }\n}\n\nfunction setIsRunningInsertionEffect(isRunning) {\n {\n isRunningInsertionEffect = isRunning;\n }\n}\n\n/* eslint-disable react-internal/prod-error-codes */\nvar resolveFamily = null; // $FlowFixMe Flow gets confused by a WeakSet feature check below.\n\nvar failedBoundaries = null;\nvar setRefreshHandler = function (handler) {\n {\n resolveFamily = handler;\n }\n};\nfunction resolveFunctionForHotReloading(type) {\n {\n if (resolveFamily === null) {\n // Hot reloading is disabled.\n return type;\n }\n\n var family = resolveFamily(type);\n\n if (family === undefined) {\n return type;\n } // Use the latest known implementation.\n\n\n return family.current;\n }\n}\nfunction resolveClassForHotReloading(type) {\n // No implementation differences.\n return resolveFunctionForHotReloading(type);\n}\nfunction resolveForwardRefForHotReloading(type) {\n {\n if (resolveFamily === null) {\n // Hot reloading is disabled.\n return type;\n }\n\n var family = resolveFamily(type);\n\n if (family === undefined) {\n // Check if we're dealing with a real forwardRef. Don't want to crash early.\n if (type !== null && type !== undefined && typeof type.render === 'function') {\n // ForwardRef is special because its resolved .type is an object,\n // but it's possible that we only have its inner render function in the map.\n // If that inner render function is different, we'll build a new forwardRef type.\n var currentRender = resolveFunctionForHotReloading(type.render);\n\n if (type.render !== currentRender) {\n var syntheticType = {\n $$typeof: REACT_FORWARD_REF_TYPE,\n render: currentRender\n };\n\n if (type.displayName !== undefined) {\n syntheticType.displayName = type.displayName;\n }\n\n return syntheticType;\n }\n }\n\n return type;\n } // Use the latest known implementation.\n\n\n return family.current;\n }\n}\nfunction isCompatibleFamilyForHotReloading(fiber, element) {\n {\n if (resolveFamily === null) {\n // Hot reloading is disabled.\n return false;\n }\n\n var prevType = fiber.elementType;\n var nextType = element.type; // If we got here, we know types aren't === equal.\n\n var needsCompareFamilies = false;\n var $$typeofNextType = typeof nextType === 'object' && nextType !== null ? nextType.$$typeof : null;\n\n switch (fiber.tag) {\n case ClassComponent:\n {\n if (typeof nextType === 'function') {\n needsCompareFamilies = true;\n }\n\n break;\n }\n\n case FunctionComponent:\n {\n if (typeof nextType === 'function') {\n needsCompareFamilies = true;\n } else if ($$typeofNextType === REACT_LAZY_TYPE) {\n // We don't know the inner type yet.\n // We're going to assume that the lazy inner type is stable,\n // and so it is sufficient to avoid reconciling it away.\n // We're not going to unwrap or actually use the new lazy type.\n needsCompareFamilies = true;\n }\n\n break;\n }\n\n case ForwardRef:\n {\n if ($$typeofNextType === REACT_FORWARD_REF_TYPE) {\n needsCompareFamilies = true;\n } else if ($$typeofNextType === REACT_LAZY_TYPE) {\n needsCompareFamilies = true;\n }\n\n break;\n }\n\n case MemoComponent:\n case SimpleMemoComponent:\n {\n if ($$typeofNextType === REACT_MEMO_TYPE) {\n // TODO: if it was but can no longer be simple,\n // we shouldn't set this.\n needsCompareFamilies = true;\n } else if ($$typeofNextType === REACT_LAZY_TYPE) {\n needsCompareFamilies = true;\n }\n\n break;\n }\n\n default:\n return false;\n } // Check if both types have a family and it's the same one.\n\n\n if (needsCompareFamilies) {\n // Note: memo() and forwardRef() we'll compare outer rather than inner type.\n // This means both of them need to be registered to preserve state.\n // If we unwrapped and compared the inner types for wrappers instead,\n // then we would risk falsely saying two separate memo(Foo)\n // calls are equivalent because they wrap the same Foo function.\n var prevFamily = resolveFamily(prevType);\n\n if (prevFamily !== undefined && prevFamily === resolveFamily(nextType)) {\n return true;\n }\n }\n\n return false;\n }\n}\nfunction markFailedErrorBoundaryForHotReloading(fiber) {\n {\n if (resolveFamily === null) {\n // Hot reloading is disabled.\n return;\n }\n\n if (typeof WeakSet !== 'function') {\n return;\n }\n\n if (failedBoundaries === null) {\n failedBoundaries = new WeakSet();\n }\n\n failedBoundaries.add(fiber);\n }\n}\nvar scheduleRefresh = function (root, update) {\n {\n if (resolveFamily === null) {\n // Hot reloading is disabled.\n return;\n }\n\n var staleFamilies = update.staleFamilies,\n updatedFamilies = update.updatedFamilies;\n flushPassiveEffects();\n flushSync(function () {\n scheduleFibersWithFamiliesRecursively(root.current, updatedFamilies, staleFamilies);\n });\n }\n};\nvar scheduleRoot = function (root, element) {\n {\n if (root.context !== emptyContextObject) {\n // Super edge case: root has a legacy _renderSubtree context\n // but we don't know the parentComponent so we can't pass it.\n // Just ignore. We'll delete this with _renderSubtree code path later.\n return;\n }\n\n flushPassiveEffects();\n flushSync(function () {\n updateContainer(element, root, null, null);\n });\n }\n};\n\nfunction scheduleFibersWithFamiliesRecursively(fiber, updatedFamilies, staleFamilies) {\n {\n var alternate = fiber.alternate,\n child = fiber.child,\n sibling = fiber.sibling,\n tag = fiber.tag,\n type = fiber.type;\n var candidateType = null;\n\n switch (tag) {\n case FunctionComponent:\n case SimpleMemoComponent:\n case ClassComponent:\n candidateType = type;\n break;\n\n case ForwardRef:\n candidateType = type.render;\n break;\n }\n\n if (resolveFamily === null) {\n throw new Error('Expected resolveFamily to be set during hot reload.');\n }\n\n var needsRender = false;\n var needsRemount = false;\n\n if (candidateType !== null) {\n var family = resolveFamily(candidateType);\n\n if (family !== undefined) {\n if (staleFamilies.has(family)) {\n needsRemount = true;\n } else if (updatedFamilies.has(family)) {\n if (tag === ClassComponent) {\n needsRemount = true;\n } else {\n needsRender = true;\n }\n }\n }\n }\n\n if (failedBoundaries !== null) {\n if (failedBoundaries.has(fiber) || alternate !== null && failedBoundaries.has(alternate)) {\n needsRemount = true;\n }\n }\n\n if (needsRemount) {\n fiber._debugNeedsRemount = true;\n }\n\n if (needsRemount || needsRender) {\n var _root = enqueueConcurrentRenderForLane(fiber, SyncLane);\n\n if (_root !== null) {\n scheduleUpdateOnFiber(_root, fiber, SyncLane, NoTimestamp);\n }\n }\n\n if (child !== null && !needsRemount) {\n scheduleFibersWithFamiliesRecursively(child, updatedFamilies, staleFamilies);\n }\n\n if (sibling !== null) {\n scheduleFibersWithFamiliesRecursively(sibling, updatedFamilies, staleFamilies);\n }\n }\n}\n\nvar findHostInstancesForRefresh = function (root, families) {\n {\n var hostInstances = new Set();\n var types = new Set(families.map(function (family) {\n return family.current;\n }));\n findHostInstancesForMatchingFibersRecursively(root.current, types, hostInstances);\n return hostInstances;\n }\n};\n\nfunction findHostInstancesForMatchingFibersRecursively(fiber, types, hostInstances) {\n {\n var child = fiber.child,\n sibling = fiber.sibling,\n tag = fiber.tag,\n type = fiber.type;\n var candidateType = null;\n\n switch (tag) {\n case FunctionComponent:\n case SimpleMemoComponent:\n case ClassComponent:\n candidateType = type;\n break;\n\n case ForwardRef:\n candidateType = type.render;\n break;\n }\n\n var didMatch = false;\n\n if (candidateType !== null) {\n if (types.has(candidateType)) {\n didMatch = true;\n }\n }\n\n if (didMatch) {\n // We have a match. This only drills down to the closest host components.\n // There's no need to search deeper because for the purpose of giving\n // visual feedback, \"flashing\" outermost parent rectangles is sufficient.\n findHostInstancesForFiberShallowly(fiber, hostInstances);\n } else {\n // If there's no match, maybe there will be one further down in the child tree.\n if (child !== null) {\n findHostInstancesForMatchingFibersRecursively(child, types, hostInstances);\n }\n }\n\n if (sibling !== null) {\n findHostInstancesForMatchingFibersRecursively(sibling, types, hostInstances);\n }\n }\n}\n\nfunction findHostInstancesForFiberShallowly(fiber, hostInstances) {\n {\n var foundHostInstances = findChildHostInstancesForFiberShallowly(fiber, hostInstances);\n\n if (foundHostInstances) {\n return;\n } // If we didn't find any host children, fallback to closest host parent.\n\n\n var node = fiber;\n\n while (true) {\n switch (node.tag) {\n case HostComponent:\n hostInstances.add(node.stateNode);\n return;\n\n case HostPortal:\n hostInstances.add(node.stateNode.containerInfo);\n return;\n\n case HostRoot:\n hostInstances.add(node.stateNode.containerInfo);\n return;\n }\n\n if (node.return === null) {\n throw new Error('Expected to reach root first.');\n }\n\n node = node.return;\n }\n }\n}\n\nfunction findChildHostInstancesForFiberShallowly(fiber, hostInstances) {\n {\n var node = fiber;\n var foundHostInstances = false;\n\n while (true) {\n if (node.tag === HostComponent) {\n // We got a match.\n foundHostInstances = true;\n hostInstances.add(node.stateNode); // There may still be more, so keep searching.\n } else if (node.child !== null) {\n node.child.return = node;\n node = node.child;\n continue;\n }\n\n if (node === fiber) {\n return foundHostInstances;\n }\n\n while (node.sibling === null) {\n if (node.return === null || node.return === fiber) {\n return foundHostInstances;\n }\n\n node = node.return;\n }\n\n node.sibling.return = node.return;\n node = node.sibling;\n }\n }\n\n return false;\n}\n\nvar hasBadMapPolyfill;\n\n{\n hasBadMapPolyfill = false;\n\n try {\n var nonExtensibleObject = Object.preventExtensions({});\n /* eslint-disable no-new */\n\n new Map([[nonExtensibleObject, null]]);\n new Set([nonExtensibleObject]);\n /* eslint-enable no-new */\n } catch (e) {\n // TODO: Consider warning about bad polyfills\n hasBadMapPolyfill = true;\n }\n}\n\nfunction FiberNode(tag, pendingProps, key, mode) {\n // Instance\n this.tag = tag;\n this.key = key;\n this.elementType = null;\n this.type = null;\n this.stateNode = null; // Fiber\n\n this.return = null;\n this.child = null;\n this.sibling = null;\n this.index = 0;\n this.ref = null;\n this.pendingProps = pendingProps;\n this.memoizedProps = null;\n this.updateQueue = null;\n this.memoizedState = null;\n this.dependencies = null;\n this.mode = mode; // Effects\n\n this.flags = NoFlags;\n this.subtreeFlags = NoFlags;\n this.deletions = null;\n this.lanes = NoLanes;\n this.childLanes = NoLanes;\n this.alternate = null;\n\n {\n // Note: The following is done to avoid a v8 performance cliff.\n //\n // Initializing the fields below to smis and later updating them with\n // double values will cause Fibers to end up having separate shapes.\n // This behavior/bug has something to do with Object.preventExtension().\n // Fortunately this only impacts DEV builds.\n // Unfortunately it makes React unusably slow for some applications.\n // To work around this, initialize the fields below with doubles.\n //\n // Learn more about this here:\n // https://github.com/facebook/react/issues/14365\n // https://bugs.chromium.org/p/v8/issues/detail?id=8538\n this.actualDuration = Number.NaN;\n this.actualStartTime = Number.NaN;\n this.selfBaseDuration = Number.NaN;\n this.treeBaseDuration = Number.NaN; // It's okay to replace the initial doubles with smis after initialization.\n // This won't trigger the performance cliff mentioned above,\n // and it simplifies other profiler code (including DevTools).\n\n this.actualDuration = 0;\n this.actualStartTime = -1;\n this.selfBaseDuration = 0;\n this.treeBaseDuration = 0;\n }\n\n {\n // This isn't directly used but is handy for debugging internals:\n this._debugSource = null;\n this._debugOwner = null;\n this._debugNeedsRemount = false;\n this._debugHookTypes = null;\n\n if (!hasBadMapPolyfill && typeof Object.preventExtensions === 'function') {\n Object.preventExtensions(this);\n }\n }\n} // This is a constructor function, rather than a POJO constructor, still\n// please ensure we do the following:\n// 1) Nobody should add any instance methods on this. Instance methods can be\n// more difficult to predict when they get optimized and they are almost\n// never inlined properly in static compilers.\n// 2) Nobody should rely on `instanceof Fiber` for type testing. We should\n// always know when it is a fiber.\n// 3) We might want to experiment with using numeric keys since they are easier\n// to optimize in a non-JIT environment.\n// 4) We can easily go from a constructor to a createFiber object literal if that\n// is faster.\n// 5) It should be easy to port this to a C struct and keep a C implementation\n// compatible.\n\n\nvar createFiber = function (tag, pendingProps, key, mode) {\n // $FlowFixMe: the shapes are exact here but Flow doesn't like constructors\n return new FiberNode(tag, pendingProps, key, mode);\n};\n\nfunction shouldConstruct$1(Component) {\n var prototype = Component.prototype;\n return !!(prototype && prototype.isReactComponent);\n}\n\nfunction isSimpleFunctionComponent(type) {\n return typeof type === 'function' && !shouldConstruct$1(type) && type.defaultProps === undefined;\n}\nfunction resolveLazyComponentTag(Component) {\n if (typeof Component === 'function') {\n return shouldConstruct$1(Component) ? ClassComponent : FunctionComponent;\n } else if (Component !== undefined && Component !== null) {\n var $$typeof = Component.$$typeof;\n\n if ($$typeof === REACT_FORWARD_REF_TYPE) {\n return ForwardRef;\n }\n\n if ($$typeof === REACT_MEMO_TYPE) {\n return MemoComponent;\n }\n }\n\n return IndeterminateComponent;\n} // This is used to create an alternate fiber to do work on.\n\nfunction createWorkInProgress(current, pendingProps) {\n var workInProgress = current.alternate;\n\n if (workInProgress === null) {\n // We use a double buffering pooling technique because we know that we'll\n // only ever need at most two versions of a tree. We pool the \"other\" unused\n // node that we're free to reuse. This is lazily created to avoid allocating\n // extra objects for things that are never updated. It also allow us to\n // reclaim the extra memory if needed.\n workInProgress = createFiber(current.tag, pendingProps, current.key, current.mode);\n workInProgress.elementType = current.elementType;\n workInProgress.type = current.type;\n workInProgress.stateNode = current.stateNode;\n\n {\n // DEV-only fields\n workInProgress._debugSource = current._debugSource;\n workInProgress._debugOwner = current._debugOwner;\n workInProgress._debugHookTypes = current._debugHookTypes;\n }\n\n workInProgress.alternate = current;\n current.alternate = workInProgress;\n } else {\n workInProgress.pendingProps = pendingProps; // Needed because Blocks store data on type.\n\n workInProgress.type = current.type; // We already have an alternate.\n // Reset the effect tag.\n\n workInProgress.flags = NoFlags; // The effects are no longer valid.\n\n workInProgress.subtreeFlags = NoFlags;\n workInProgress.deletions = null;\n\n {\n // We intentionally reset, rather than copy, actualDuration & actualStartTime.\n // This prevents time from endlessly accumulating in new commits.\n // This has the downside of resetting values for different priority renders,\n // But works for yielding (the common case) and should support resuming.\n workInProgress.actualDuration = 0;\n workInProgress.actualStartTime = -1;\n }\n } // Reset all effects except static ones.\n // Static effects are not specific to a render.\n\n\n workInProgress.flags = current.flags & StaticMask;\n workInProgress.childLanes = current.childLanes;\n workInProgress.lanes = current.lanes;\n workInProgress.child = current.child;\n workInProgress.memoizedProps = current.memoizedProps;\n workInProgress.memoizedState = current.memoizedState;\n workInProgress.updateQueue = current.updateQueue; // Clone the dependencies object. This is mutated during the render phase, so\n // it cannot be shared with the current fiber.\n\n var currentDependencies = current.dependencies;\n workInProgress.dependencies = currentDependencies === null ? null : {\n lanes: currentDependencies.lanes,\n firstContext: currentDependencies.firstContext\n }; // These will be overridden during the parent's reconciliation\n\n workInProgress.sibling = current.sibling;\n workInProgress.index = current.index;\n workInProgress.ref = current.ref;\n\n {\n workInProgress.selfBaseDuration = current.selfBaseDuration;\n workInProgress.treeBaseDuration = current.treeBaseDuration;\n }\n\n {\n workInProgress._debugNeedsRemount = current._debugNeedsRemount;\n\n switch (workInProgress.tag) {\n case IndeterminateComponent:\n case FunctionComponent:\n case SimpleMemoComponent:\n workInProgress.type = resolveFunctionForHotReloading(current.type);\n break;\n\n case ClassComponent:\n workInProgress.type = resolveClassForHotReloading(current.type);\n break;\n\n case ForwardRef:\n workInProgress.type = resolveForwardRefForHotReloading(current.type);\n break;\n }\n }\n\n return workInProgress;\n} // Used to reuse a Fiber for a second pass.\n\nfunction resetWorkInProgress(workInProgress, renderLanes) {\n // This resets the Fiber to what createFiber or createWorkInProgress would\n // have set the values to before during the first pass. Ideally this wouldn't\n // be necessary but unfortunately many code paths reads from the workInProgress\n // when they should be reading from current and writing to workInProgress.\n // We assume pendingProps, index, key, ref, return are still untouched to\n // avoid doing another reconciliation.\n // Reset the effect flags but keep any Placement tags, since that's something\n // that child fiber is setting, not the reconciliation.\n workInProgress.flags &= StaticMask | Placement; // The effects are no longer valid.\n\n var current = workInProgress.alternate;\n\n if (current === null) {\n // Reset to createFiber's initial values.\n workInProgress.childLanes = NoLanes;\n workInProgress.lanes = renderLanes;\n workInProgress.child = null;\n workInProgress.subtreeFlags = NoFlags;\n workInProgress.memoizedProps = null;\n workInProgress.memoizedState = null;\n workInProgress.updateQueue = null;\n workInProgress.dependencies = null;\n workInProgress.stateNode = null;\n\n {\n // Note: We don't reset the actualTime counts. It's useful to accumulate\n // actual time across multiple render passes.\n workInProgress.selfBaseDuration = 0;\n workInProgress.treeBaseDuration = 0;\n }\n } else {\n // Reset to the cloned values that createWorkInProgress would've.\n workInProgress.childLanes = current.childLanes;\n workInProgress.lanes = current.lanes;\n workInProgress.child = current.child;\n workInProgress.subtreeFlags = NoFlags;\n workInProgress.deletions = null;\n workInProgress.memoizedProps = current.memoizedProps;\n workInProgress.memoizedState = current.memoizedState;\n workInProgress.updateQueue = current.updateQueue; // Needed because Blocks store data on type.\n\n workInProgress.type = current.type; // Clone the dependencies object. This is mutated during the render phase, so\n // it cannot be shared with the current fiber.\n\n var currentDependencies = current.dependencies;\n workInProgress.dependencies = currentDependencies === null ? null : {\n lanes: currentDependencies.lanes,\n firstContext: currentDependencies.firstContext\n };\n\n {\n // Note: We don't reset the actualTime counts. It's useful to accumulate\n // actual time across multiple render passes.\n workInProgress.selfBaseDuration = current.selfBaseDuration;\n workInProgress.treeBaseDuration = current.treeBaseDuration;\n }\n }\n\n return workInProgress;\n}\nfunction createHostRootFiber(tag, isStrictMode, concurrentUpdatesByDefaultOverride) {\n var mode;\n\n if (tag === ConcurrentRoot) {\n mode = ConcurrentMode;\n\n if (isStrictMode === true) {\n mode |= StrictLegacyMode;\n\n {\n mode |= StrictEffectsMode;\n }\n }\n } else {\n mode = NoMode;\n }\n\n if ( isDevToolsPresent) {\n // Always collect profile timings when DevTools are present.\n // This enables DevTools to start capturing timing at any point\u2013\n // Without some nodes in the tree having empty base times.\n mode |= ProfileMode;\n }\n\n return createFiber(HostRoot, null, null, mode);\n}\nfunction createFiberFromTypeAndProps(type, // React$ElementType\nkey, pendingProps, owner, mode, lanes) {\n var fiberTag = IndeterminateComponent; // The resolved type is set if we know what the final type will be. I.e. it's not lazy.\n\n var resolvedType = type;\n\n if (typeof type === 'function') {\n if (shouldConstruct$1(type)) {\n fiberTag = ClassComponent;\n\n {\n resolvedType = resolveClassForHotReloading(resolvedType);\n }\n } else {\n {\n resolvedType = resolveFunctionForHotReloading(resolvedType);\n }\n }\n } else if (typeof type === 'string') {\n fiberTag = HostComponent;\n } else {\n getTag: switch (type) {\n case REACT_FRAGMENT_TYPE:\n return createFiberFromFragment(pendingProps.children, mode, lanes, key);\n\n case REACT_STRICT_MODE_TYPE:\n fiberTag = Mode;\n mode |= StrictLegacyMode;\n\n if ( (mode & ConcurrentMode) !== NoMode) {\n // Strict effects should never run on legacy roots\n mode |= StrictEffectsMode;\n }\n\n break;\n\n case REACT_PROFILER_TYPE:\n return createFiberFromProfiler(pendingProps, mode, lanes, key);\n\n case REACT_SUSPENSE_TYPE:\n return createFiberFromSuspense(pendingProps, mode, lanes, key);\n\n case REACT_SUSPENSE_LIST_TYPE:\n return createFiberFromSuspenseList(pendingProps, mode, lanes, key);\n\n case REACT_OFFSCREEN_TYPE:\n return createFiberFromOffscreen(pendingProps, mode, lanes, key);\n\n case REACT_LEGACY_HIDDEN_TYPE:\n\n // eslint-disable-next-line no-fallthrough\n\n case REACT_SCOPE_TYPE:\n\n // eslint-disable-next-line no-fallthrough\n\n case REACT_CACHE_TYPE:\n\n // eslint-disable-next-line no-fallthrough\n\n case REACT_TRACING_MARKER_TYPE:\n\n // eslint-disable-next-line no-fallthrough\n\n case REACT_DEBUG_TRACING_MODE_TYPE:\n\n // eslint-disable-next-line no-fallthrough\n\n default:\n {\n if (typeof type === 'object' && type !== null) {\n switch (type.$$typeof) {\n case REACT_PROVIDER_TYPE:\n fiberTag = ContextProvider;\n break getTag;\n\n case REACT_CONTEXT_TYPE:\n // This is a consumer\n fiberTag = ContextConsumer;\n break getTag;\n\n case REACT_FORWARD_REF_TYPE:\n fiberTag = ForwardRef;\n\n {\n resolvedType = resolveForwardRefForHotReloading(resolvedType);\n }\n\n break getTag;\n\n case REACT_MEMO_TYPE:\n fiberTag = MemoComponent;\n break getTag;\n\n case REACT_LAZY_TYPE:\n fiberTag = LazyComponent;\n resolvedType = null;\n break getTag;\n }\n }\n\n var info = '';\n\n {\n if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) {\n info += ' You likely forgot to export your component from the file ' + \"it's defined in, or you might have mixed up default and \" + 'named imports.';\n }\n\n var ownerName = owner ? getComponentNameFromFiber(owner) : null;\n\n if (ownerName) {\n info += '\\n\\nCheck the render method of `' + ownerName + '`.';\n }\n }\n\n throw new Error('Element type is invalid: expected a string (for built-in ' + 'components) or a class/function (for composite components) ' + (\"but got: \" + (type == null ? type : typeof type) + \".\" + info));\n }\n }\n }\n\n var fiber = createFiber(fiberTag, pendingProps, key, mode);\n fiber.elementType = type;\n fiber.type = resolvedType;\n fiber.lanes = lanes;\n\n {\n fiber._debugOwner = owner;\n }\n\n return fiber;\n}\nfunction createFiberFromElement(element, mode, lanes) {\n var owner = null;\n\n {\n owner = element._owner;\n }\n\n var type = element.type;\n var key = element.key;\n var pendingProps = element.props;\n var fiber = createFiberFromTypeAndProps(type, key, pendingProps, owner, mode, lanes);\n\n {\n fiber._debugSource = element._source;\n fiber._debugOwner = element._owner;\n }\n\n return fiber;\n}\nfunction createFiberFromFragment(elements, mode, lanes, key) {\n var fiber = createFiber(Fragment, elements, key, mode);\n fiber.lanes = lanes;\n return fiber;\n}\n\nfunction createFiberFromProfiler(pendingProps, mode, lanes, key) {\n {\n if (typeof pendingProps.id !== 'string') {\n error('Profiler must specify an \"id\" of type `string` as a prop. Received the type `%s` instead.', typeof pendingProps.id);\n }\n }\n\n var fiber = createFiber(Profiler, pendingProps, key, mode | ProfileMode);\n fiber.elementType = REACT_PROFILER_TYPE;\n fiber.lanes = lanes;\n\n {\n fiber.stateNode = {\n effectDuration: 0,\n passiveEffectDuration: 0\n };\n }\n\n return fiber;\n}\n\nfunction createFiberFromSuspense(pendingProps, mode, lanes, key) {\n var fiber = createFiber(SuspenseComponent, pendingProps, key, mode);\n fiber.elementType = REACT_SUSPENSE_TYPE;\n fiber.lanes = lanes;\n return fiber;\n}\nfunction createFiberFromSuspenseList(pendingProps, mode, lanes, key) {\n var fiber = createFiber(SuspenseListComponent, pendingProps, key, mode);\n fiber.elementType = REACT_SUSPENSE_LIST_TYPE;\n fiber.lanes = lanes;\n return fiber;\n}\nfunction createFiberFromOffscreen(pendingProps, mode, lanes, key) {\n var fiber = createFiber(OffscreenComponent, pendingProps, key, mode);\n fiber.elementType = REACT_OFFSCREEN_TYPE;\n fiber.lanes = lanes;\n var primaryChildInstance = {\n isHidden: false\n };\n fiber.stateNode = primaryChildInstance;\n return fiber;\n}\nfunction createFiberFromText(content, mode, lanes) {\n var fiber = createFiber(HostText, content, null, mode);\n fiber.lanes = lanes;\n return fiber;\n}\nfunction createFiberFromHostInstanceForDeletion() {\n var fiber = createFiber(HostComponent, null, null, NoMode);\n fiber.elementType = 'DELETED';\n return fiber;\n}\nfunction createFiberFromDehydratedFragment(dehydratedNode) {\n var fiber = createFiber(DehydratedFragment, null, null, NoMode);\n fiber.stateNode = dehydratedNode;\n return fiber;\n}\nfunction createFiberFromPortal(portal, mode, lanes) {\n var pendingProps = portal.children !== null ? portal.children : [];\n var fiber = createFiber(HostPortal, pendingProps, portal.key, mode);\n fiber.lanes = lanes;\n fiber.stateNode = {\n containerInfo: portal.containerInfo,\n pendingChildren: null,\n // Used by persistent updates\n implementation: portal.implementation\n };\n return fiber;\n} // Used for stashing WIP properties to replay failed work in DEV.\n\nfunction assignFiberPropertiesInDEV(target, source) {\n if (target === null) {\n // This Fiber's initial properties will always be overwritten.\n // We only use a Fiber to ensure the same hidden class so DEV isn't slow.\n target = createFiber(IndeterminateComponent, null, null, NoMode);\n } // This is intentionally written as a list of all properties.\n // We tried to use Object.assign() instead but this is called in\n // the hottest path, and Object.assign() was too slow:\n // https://github.com/facebook/react/issues/12502\n // This code is DEV-only so size is not a concern.\n\n\n target.tag = source.tag;\n target.key = source.key;\n target.elementType = source.elementType;\n target.type = source.type;\n target.stateNode = source.stateNode;\n target.return = source.return;\n target.child = source.child;\n target.sibling = source.sibling;\n target.index = source.index;\n target.ref = source.ref;\n target.pendingProps = source.pendingProps;\n target.memoizedProps = source.memoizedProps;\n target.updateQueue = source.updateQueue;\n target.memoizedState = source.memoizedState;\n target.dependencies = source.dependencies;\n target.mode = source.mode;\n target.flags = source.flags;\n target.subtreeFlags = source.subtreeFlags;\n target.deletions = source.deletions;\n target.lanes = source.lanes;\n target.childLanes = source.childLanes;\n target.alternate = source.alternate;\n\n {\n target.actualDuration = source.actualDuration;\n target.actualStartTime = source.actualStartTime;\n target.selfBaseDuration = source.selfBaseDuration;\n target.treeBaseDuration = source.treeBaseDuration;\n }\n\n target._debugSource = source._debugSource;\n target._debugOwner = source._debugOwner;\n target._debugNeedsRemount = source._debugNeedsRemount;\n target._debugHookTypes = source._debugHookTypes;\n return target;\n}\n\nfunction FiberRootNode(containerInfo, tag, hydrate, identifierPrefix, onRecoverableError) {\n this.tag = tag;\n this.containerInfo = containerInfo;\n this.pendingChildren = null;\n this.current = null;\n this.pingCache = null;\n this.finishedWork = null;\n this.timeoutHandle = noTimeout;\n this.context = null;\n this.pendingContext = null;\n this.callbackNode = null;\n this.callbackPriority = NoLane;\n this.eventTimes = createLaneMap(NoLanes);\n this.expirationTimes = createLaneMap(NoTimestamp);\n this.pendingLanes = NoLanes;\n this.suspendedLanes = NoLanes;\n this.pingedLanes = NoLanes;\n this.expiredLanes = NoLanes;\n this.mutableReadLanes = NoLanes;\n this.finishedLanes = NoLanes;\n this.entangledLanes = NoLanes;\n this.entanglements = createLaneMap(NoLanes);\n this.identifierPrefix = identifierPrefix;\n this.onRecoverableError = onRecoverableError;\n\n {\n this.mutableSourceEagerHydrationData = null;\n }\n\n {\n this.effectDuration = 0;\n this.passiveEffectDuration = 0;\n }\n\n {\n this.memoizedUpdaters = new Set();\n var pendingUpdatersLaneMap = this.pendingUpdatersLaneMap = [];\n\n for (var _i = 0; _i < TotalLanes; _i++) {\n pendingUpdatersLaneMap.push(new Set());\n }\n }\n\n {\n switch (tag) {\n case ConcurrentRoot:\n this._debugRootType = hydrate ? 'hydrateRoot()' : 'createRoot()';\n break;\n\n case LegacyRoot:\n this._debugRootType = hydrate ? 'hydrate()' : 'render()';\n break;\n }\n }\n}\n\nfunction createFiberRoot(containerInfo, tag, hydrate, initialChildren, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, // TODO: We have several of these arguments that are conceptually part of the\n// host config, but because they are passed in at runtime, we have to thread\n// them through the root constructor. Perhaps we should put them all into a\n// single type, like a DynamicHostConfig that is defined by the renderer.\nidentifierPrefix, onRecoverableError, transitionCallbacks) {\n var root = new FiberRootNode(containerInfo, tag, hydrate, identifierPrefix, onRecoverableError);\n // stateNode is any.\n\n\n var uninitializedFiber = createHostRootFiber(tag, isStrictMode);\n root.current = uninitializedFiber;\n uninitializedFiber.stateNode = root;\n\n {\n var _initialState = {\n element: initialChildren,\n isDehydrated: hydrate,\n cache: null,\n // not enabled yet\n transitions: null,\n pendingSuspenseBoundaries: null\n };\n uninitializedFiber.memoizedState = _initialState;\n }\n\n initializeUpdateQueue(uninitializedFiber);\n return root;\n}\n\nvar ReactVersion = '18.3.1';\n\nfunction createPortal(children, containerInfo, // TODO: figure out the API for cross-renderer implementation.\nimplementation) {\n var key = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n {\n checkKeyStringCoercion(key);\n }\n\n return {\n // This tag allow us to uniquely identify this as a React Portal\n $$typeof: REACT_PORTAL_TYPE,\n key: key == null ? null : '' + key,\n children: children,\n containerInfo: containerInfo,\n implementation: implementation\n };\n}\n\nvar didWarnAboutNestedUpdates;\nvar didWarnAboutFindNodeInStrictMode;\n\n{\n didWarnAboutNestedUpdates = false;\n didWarnAboutFindNodeInStrictMode = {};\n}\n\nfunction getContextForSubtree(parentComponent) {\n if (!parentComponent) {\n return emptyContextObject;\n }\n\n var fiber = get(parentComponent);\n var parentContext = findCurrentUnmaskedContext(fiber);\n\n if (fiber.tag === ClassComponent) {\n var Component = fiber.type;\n\n if (isContextProvider(Component)) {\n return processChildContext(fiber, Component, parentContext);\n }\n }\n\n return parentContext;\n}\n\nfunction findHostInstanceWithWarning(component, methodName) {\n {\n var fiber = get(component);\n\n if (fiber === undefined) {\n if (typeof component.render === 'function') {\n throw new Error('Unable to find node on an unmounted component.');\n } else {\n var keys = Object.keys(component).join(',');\n throw new Error(\"Argument appears to not be a ReactComponent. Keys: \" + keys);\n }\n }\n\n var hostFiber = findCurrentHostFiber(fiber);\n\n if (hostFiber === null) {\n return null;\n }\n\n if (hostFiber.mode & StrictLegacyMode) {\n var componentName = getComponentNameFromFiber(fiber) || 'Component';\n\n if (!didWarnAboutFindNodeInStrictMode[componentName]) {\n didWarnAboutFindNodeInStrictMode[componentName] = true;\n var previousFiber = current;\n\n try {\n setCurrentFiber(hostFiber);\n\n if (fiber.mode & StrictLegacyMode) {\n error('%s is deprecated in StrictMode. ' + '%s was passed an instance of %s which is inside StrictMode. ' + 'Instead, add a ref directly to the element you want to reference. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-find-node', methodName, methodName, componentName);\n } else {\n error('%s is deprecated in StrictMode. ' + '%s was passed an instance of %s which renders StrictMode children. ' + 'Instead, add a ref directly to the element you want to reference. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-find-node', methodName, methodName, componentName);\n }\n } finally {\n // Ideally this should reset to previous but this shouldn't be called in\n // render and there's another warning for that anyway.\n if (previousFiber) {\n setCurrentFiber(previousFiber);\n } else {\n resetCurrentFiber();\n }\n }\n }\n }\n\n return hostFiber.stateNode;\n }\n}\n\nfunction createContainer(containerInfo, tag, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError, transitionCallbacks) {\n var hydrate = false;\n var initialChildren = null;\n return createFiberRoot(containerInfo, tag, hydrate, initialChildren, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError);\n}\nfunction createHydrationContainer(initialChildren, // TODO: Remove `callback` when we delete legacy mode.\ncallback, containerInfo, tag, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError, transitionCallbacks) {\n var hydrate = true;\n var root = createFiberRoot(containerInfo, tag, hydrate, initialChildren, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError); // TODO: Move this to FiberRoot constructor\n\n root.context = getContextForSubtree(null); // Schedule the initial render. In a hydration root, this is different from\n // a regular update because the initial render must match was was rendered\n // on the server.\n // NOTE: This update intentionally doesn't have a payload. We're only using\n // the update to schedule work on the root fiber (and, for legacy roots, to\n // enqueue the callback if one is provided).\n\n var current = root.current;\n var eventTime = requestEventTime();\n var lane = requestUpdateLane(current);\n var update = createUpdate(eventTime, lane);\n update.callback = callback !== undefined && callback !== null ? callback : null;\n enqueueUpdate(current, update, lane);\n scheduleInitialHydrationOnRoot(root, lane, eventTime);\n return root;\n}\nfunction updateContainer(element, container, parentComponent, callback) {\n {\n onScheduleRoot(container, element);\n }\n\n var current$1 = container.current;\n var eventTime = requestEventTime();\n var lane = requestUpdateLane(current$1);\n\n {\n markRenderScheduled(lane);\n }\n\n var context = getContextForSubtree(parentComponent);\n\n if (container.context === null) {\n container.context = context;\n } else {\n container.pendingContext = context;\n }\n\n {\n if (isRendering && current !== null && !didWarnAboutNestedUpdates) {\n didWarnAboutNestedUpdates = true;\n\n error('Render methods should be a pure function of props and state; ' + 'triggering nested component updates from render is not allowed. ' + 'If necessary, trigger nested updates in componentDidUpdate.\\n\\n' + 'Check the render method of %s.', getComponentNameFromFiber(current) || 'Unknown');\n }\n }\n\n var update = createUpdate(eventTime, lane); // Caution: React DevTools currently depends on this property\n // being called \"element\".\n\n update.payload = {\n element: element\n };\n callback = callback === undefined ? null : callback;\n\n if (callback !== null) {\n {\n if (typeof callback !== 'function') {\n error('render(...): Expected the last optional `callback` argument to be a ' + 'function. Instead received: %s.', callback);\n }\n }\n\n update.callback = callback;\n }\n\n var root = enqueueUpdate(current$1, update, lane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, current$1, lane, eventTime);\n entangleTransitions(root, current$1, lane);\n }\n\n return lane;\n}\nfunction getPublicRootInstance(container) {\n var containerFiber = container.current;\n\n if (!containerFiber.child) {\n return null;\n }\n\n switch (containerFiber.child.tag) {\n case HostComponent:\n return getPublicInstance(containerFiber.child.stateNode);\n\n default:\n return containerFiber.child.stateNode;\n }\n}\nfunction attemptSynchronousHydration$1(fiber) {\n switch (fiber.tag) {\n case HostRoot:\n {\n var root = fiber.stateNode;\n\n if (isRootDehydrated(root)) {\n // Flush the first scheduled \"update\".\n var lanes = getHighestPriorityPendingLanes(root);\n flushRoot(root, lanes);\n }\n\n break;\n }\n\n case SuspenseComponent:\n {\n flushSync(function () {\n var root = enqueueConcurrentRenderForLane(fiber, SyncLane);\n\n if (root !== null) {\n var eventTime = requestEventTime();\n scheduleUpdateOnFiber(root, fiber, SyncLane, eventTime);\n }\n }); // If we're still blocked after this, we need to increase\n // the priority of any promises resolving within this\n // boundary so that they next attempt also has higher pri.\n\n var retryLane = SyncLane;\n markRetryLaneIfNotHydrated(fiber, retryLane);\n break;\n }\n }\n}\n\nfunction markRetryLaneImpl(fiber, retryLane) {\n var suspenseState = fiber.memoizedState;\n\n if (suspenseState !== null && suspenseState.dehydrated !== null) {\n suspenseState.retryLane = higherPriorityLane(suspenseState.retryLane, retryLane);\n }\n} // Increases the priority of thenables when they resolve within this boundary.\n\n\nfunction markRetryLaneIfNotHydrated(fiber, retryLane) {\n markRetryLaneImpl(fiber, retryLane);\n var alternate = fiber.alternate;\n\n if (alternate) {\n markRetryLaneImpl(alternate, retryLane);\n }\n}\nfunction attemptContinuousHydration$1(fiber) {\n if (fiber.tag !== SuspenseComponent) {\n // We ignore HostRoots here because we can't increase\n // their priority and they should not suspend on I/O,\n // since you have to wrap anything that might suspend in\n // Suspense.\n return;\n }\n\n var lane = SelectiveHydrationLane;\n var root = enqueueConcurrentRenderForLane(fiber, lane);\n\n if (root !== null) {\n var eventTime = requestEventTime();\n scheduleUpdateOnFiber(root, fiber, lane, eventTime);\n }\n\n markRetryLaneIfNotHydrated(fiber, lane);\n}\nfunction attemptHydrationAtCurrentPriority$1(fiber) {\n if (fiber.tag !== SuspenseComponent) {\n // We ignore HostRoots here because we can't increase\n // their priority other than synchronously flush it.\n return;\n }\n\n var lane = requestUpdateLane(fiber);\n var root = enqueueConcurrentRenderForLane(fiber, lane);\n\n if (root !== null) {\n var eventTime = requestEventTime();\n scheduleUpdateOnFiber(root, fiber, lane, eventTime);\n }\n\n markRetryLaneIfNotHydrated(fiber, lane);\n}\nfunction findHostInstanceWithNoPortals(fiber) {\n var hostFiber = findCurrentHostFiberWithNoPortals(fiber);\n\n if (hostFiber === null) {\n return null;\n }\n\n return hostFiber.stateNode;\n}\n\nvar shouldErrorImpl = function (fiber) {\n return null;\n};\n\nfunction shouldError(fiber) {\n return shouldErrorImpl(fiber);\n}\n\nvar shouldSuspendImpl = function (fiber) {\n return false;\n};\n\nfunction shouldSuspend(fiber) {\n return shouldSuspendImpl(fiber);\n}\nvar overrideHookState = null;\nvar overrideHookStateDeletePath = null;\nvar overrideHookStateRenamePath = null;\nvar overrideProps = null;\nvar overridePropsDeletePath = null;\nvar overridePropsRenamePath = null;\nvar scheduleUpdate = null;\nvar setErrorHandler = null;\nvar setSuspenseHandler = null;\n\n{\n var copyWithDeleteImpl = function (obj, path, index) {\n var key = path[index];\n var updated = isArray(obj) ? obj.slice() : assign({}, obj);\n\n if (index + 1 === path.length) {\n if (isArray(updated)) {\n updated.splice(key, 1);\n } else {\n delete updated[key];\n }\n\n return updated;\n } // $FlowFixMe number or string is fine here\n\n\n updated[key] = copyWithDeleteImpl(obj[key], path, index + 1);\n return updated;\n };\n\n var copyWithDelete = function (obj, path) {\n return copyWithDeleteImpl(obj, path, 0);\n };\n\n var copyWithRenameImpl = function (obj, oldPath, newPath, index) {\n var oldKey = oldPath[index];\n var updated = isArray(obj) ? obj.slice() : assign({}, obj);\n\n if (index + 1 === oldPath.length) {\n var newKey = newPath[index]; // $FlowFixMe number or string is fine here\n\n updated[newKey] = updated[oldKey];\n\n if (isArray(updated)) {\n updated.splice(oldKey, 1);\n } else {\n delete updated[oldKey];\n }\n } else {\n // $FlowFixMe number or string is fine here\n updated[oldKey] = copyWithRenameImpl( // $FlowFixMe number or string is fine here\n obj[oldKey], oldPath, newPath, index + 1);\n }\n\n return updated;\n };\n\n var copyWithRename = function (obj, oldPath, newPath) {\n if (oldPath.length !== newPath.length) {\n warn('copyWithRename() expects paths of the same length');\n\n return;\n } else {\n for (var i = 0; i < newPath.length - 1; i++) {\n if (oldPath[i] !== newPath[i]) {\n warn('copyWithRename() expects paths to be the same except for the deepest key');\n\n return;\n }\n }\n }\n\n return copyWithRenameImpl(obj, oldPath, newPath, 0);\n };\n\n var copyWithSetImpl = function (obj, path, index, value) {\n if (index >= path.length) {\n return value;\n }\n\n var key = path[index];\n var updated = isArray(obj) ? obj.slice() : assign({}, obj); // $FlowFixMe number or string is fine here\n\n updated[key] = copyWithSetImpl(obj[key], path, index + 1, value);\n return updated;\n };\n\n var copyWithSet = function (obj, path, value) {\n return copyWithSetImpl(obj, path, 0, value);\n };\n\n var findHook = function (fiber, id) {\n // For now, the \"id\" of stateful hooks is just the stateful hook index.\n // This may change in the future with e.g. nested hooks.\n var currentHook = fiber.memoizedState;\n\n while (currentHook !== null && id > 0) {\n currentHook = currentHook.next;\n id--;\n }\n\n return currentHook;\n }; // Support DevTools editable values for useState and useReducer.\n\n\n overrideHookState = function (fiber, id, path, value) {\n var hook = findHook(fiber, id);\n\n if (hook !== null) {\n var newState = copyWithSet(hook.memoizedState, path, value);\n hook.memoizedState = newState;\n hook.baseState = newState; // We aren't actually adding an update to the queue,\n // because there is no update we can add for useReducer hooks that won't trigger an error.\n // (There's no appropriate action type for DevTools overrides.)\n // As a result though, React will see the scheduled update as a noop and bailout.\n // Shallow cloning props works as a workaround for now to bypass the bailout check.\n\n fiber.memoizedProps = assign({}, fiber.memoizedProps);\n var root = enqueueConcurrentRenderForLane(fiber, SyncLane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, fiber, SyncLane, NoTimestamp);\n }\n }\n };\n\n overrideHookStateDeletePath = function (fiber, id, path) {\n var hook = findHook(fiber, id);\n\n if (hook !== null) {\n var newState = copyWithDelete(hook.memoizedState, path);\n hook.memoizedState = newState;\n hook.baseState = newState; // We aren't actually adding an update to the queue,\n // because there is no update we can add for useReducer hooks that won't trigger an error.\n // (There's no appropriate action type for DevTools overrides.)\n // As a result though, React will see the scheduled update as a noop and bailout.\n // Shallow cloning props works as a workaround for now to bypass the bailout check.\n\n fiber.memoizedProps = assign({}, fiber.memoizedProps);\n var root = enqueueConcurrentRenderForLane(fiber, SyncLane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, fiber, SyncLane, NoTimestamp);\n }\n }\n };\n\n overrideHookStateRenamePath = function (fiber, id, oldPath, newPath) {\n var hook = findHook(fiber, id);\n\n if (hook !== null) {\n var newState = copyWithRename(hook.memoizedState, oldPath, newPath);\n hook.memoizedState = newState;\n hook.baseState = newState; // We aren't actually adding an update to the queue,\n // because there is no update we can add for useReducer hooks that won't trigger an error.\n // (There's no appropriate action type for DevTools overrides.)\n // As a result though, React will see the scheduled update as a noop and bailout.\n // Shallow cloning props works as a workaround for now to bypass the bailout check.\n\n fiber.memoizedProps = assign({}, fiber.memoizedProps);\n var root = enqueueConcurrentRenderForLane(fiber, SyncLane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, fiber, SyncLane, NoTimestamp);\n }\n }\n }; // Support DevTools props for function components, forwardRef, memo, host components, etc.\n\n\n overrideProps = function (fiber, path, value) {\n fiber.pendingProps = copyWithSet(fiber.memoizedProps, path, value);\n\n if (fiber.alternate) {\n fiber.alternate.pendingProps = fiber.pendingProps;\n }\n\n var root = enqueueConcurrentRenderForLane(fiber, SyncLane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, fiber, SyncLane, NoTimestamp);\n }\n };\n\n overridePropsDeletePath = function (fiber, path) {\n fiber.pendingProps = copyWithDelete(fiber.memoizedProps, path);\n\n if (fiber.alternate) {\n fiber.alternate.pendingProps = fiber.pendingProps;\n }\n\n var root = enqueueConcurrentRenderForLane(fiber, SyncLane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, fiber, SyncLane, NoTimestamp);\n }\n };\n\n overridePropsRenamePath = function (fiber, oldPath, newPath) {\n fiber.pendingProps = copyWithRename(fiber.memoizedProps, oldPath, newPath);\n\n if (fiber.alternate) {\n fiber.alternate.pendingProps = fiber.pendingProps;\n }\n\n var root = enqueueConcurrentRenderForLane(fiber, SyncLane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, fiber, SyncLane, NoTimestamp);\n }\n };\n\n scheduleUpdate = function (fiber) {\n var root = enqueueConcurrentRenderForLane(fiber, SyncLane);\n\n if (root !== null) {\n scheduleUpdateOnFiber(root, fiber, SyncLane, NoTimestamp);\n }\n };\n\n setErrorHandler = function (newShouldErrorImpl) {\n shouldErrorImpl = newShouldErrorImpl;\n };\n\n setSuspenseHandler = function (newShouldSuspendImpl) {\n shouldSuspendImpl = newShouldSuspendImpl;\n };\n}\n\nfunction findHostInstanceByFiber(fiber) {\n var hostFiber = findCurrentHostFiber(fiber);\n\n if (hostFiber === null) {\n return null;\n }\n\n return hostFiber.stateNode;\n}\n\nfunction emptyFindFiberByHostInstance(instance) {\n return null;\n}\n\nfunction getCurrentFiberForDevTools() {\n return current;\n}\n\nfunction injectIntoDevTools(devToolsConfig) {\n var findFiberByHostInstance = devToolsConfig.findFiberByHostInstance;\n var ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher;\n return injectInternals({\n bundleType: devToolsConfig.bundleType,\n version: devToolsConfig.version,\n rendererPackageName: devToolsConfig.rendererPackageName,\n rendererConfig: devToolsConfig.rendererConfig,\n overrideHookState: overrideHookState,\n overrideHookStateDeletePath: overrideHookStateDeletePath,\n overrideHookStateRenamePath: overrideHookStateRenamePath,\n overrideProps: overrideProps,\n overridePropsDeletePath: overridePropsDeletePath,\n overridePropsRenamePath: overridePropsRenamePath,\n setErrorHandler: setErrorHandler,\n setSuspenseHandler: setSuspenseHandler,\n scheduleUpdate: scheduleUpdate,\n currentDispatcherRef: ReactCurrentDispatcher,\n findHostInstanceByFiber: findHostInstanceByFiber,\n findFiberByHostInstance: findFiberByHostInstance || emptyFindFiberByHostInstance,\n // React Refresh\n findHostInstancesForRefresh: findHostInstancesForRefresh ,\n scheduleRefresh: scheduleRefresh ,\n scheduleRoot: scheduleRoot ,\n setRefreshHandler: setRefreshHandler ,\n // Enables DevTools to append owner stacks to error messages in DEV mode.\n getCurrentFiber: getCurrentFiberForDevTools ,\n // Enables DevTools to detect reconciler version rather than renderer version\n // which may not match for third party renderers.\n reconcilerVersion: ReactVersion\n });\n}\n\n/* global reportError */\n\nvar defaultOnRecoverableError = typeof reportError === 'function' ? // In modern browsers, reportError will dispatch an error event,\n// emulating an uncaught JavaScript error.\nreportError : function (error) {\n // In older browsers and test environments, fallback to console.error.\n // eslint-disable-next-line react-internal/no-production-logging\n console['error'](error);\n};\n\nfunction ReactDOMRoot(internalRoot) {\n this._internalRoot = internalRoot;\n}\n\nReactDOMHydrationRoot.prototype.render = ReactDOMRoot.prototype.render = function (children) {\n var root = this._internalRoot;\n\n if (root === null) {\n throw new Error('Cannot update an unmounted root.');\n }\n\n {\n if (typeof arguments[1] === 'function') {\n error('render(...): does not support the second callback argument. ' + 'To execute a side effect after rendering, declare it in a component body with useEffect().');\n } else if (isValidContainer(arguments[1])) {\n error('You passed a container to the second argument of root.render(...). ' + \"You don't need to pass it again since you already passed it to create the root.\");\n } else if (typeof arguments[1] !== 'undefined') {\n error('You passed a second argument to root.render(...) but it only accepts ' + 'one argument.');\n }\n\n var container = root.containerInfo;\n\n if (container.nodeType !== COMMENT_NODE) {\n var hostInstance = findHostInstanceWithNoPortals(root.current);\n\n if (hostInstance) {\n if (hostInstance.parentNode !== container) {\n error('render(...): It looks like the React-rendered content of the ' + 'root container was removed without using React. This is not ' + 'supported and will cause errors. Instead, call ' + \"root.unmount() to empty a root's container.\");\n }\n }\n }\n }\n\n updateContainer(children, root, null, null);\n};\n\nReactDOMHydrationRoot.prototype.unmount = ReactDOMRoot.prototype.unmount = function () {\n {\n if (typeof arguments[0] === 'function') {\n error('unmount(...): does not support a callback argument. ' + 'To execute a side effect after rendering, declare it in a component body with useEffect().');\n }\n }\n\n var root = this._internalRoot;\n\n if (root !== null) {\n this._internalRoot = null;\n var container = root.containerInfo;\n\n {\n if (isAlreadyRendering()) {\n error('Attempted to synchronously unmount a root while React was already ' + 'rendering. React cannot finish unmounting the root until the ' + 'current render has completed, which may lead to a race condition.');\n }\n }\n\n flushSync(function () {\n updateContainer(null, root, null, null);\n });\n unmarkContainerAsRoot(container);\n }\n};\n\nfunction createRoot(container, options) {\n if (!isValidContainer(container)) {\n throw new Error('createRoot(...): Target container is not a DOM element.');\n }\n\n warnIfReactDOMContainerInDEV(container);\n var isStrictMode = false;\n var concurrentUpdatesByDefaultOverride = false;\n var identifierPrefix = '';\n var onRecoverableError = defaultOnRecoverableError;\n var transitionCallbacks = null;\n\n if (options !== null && options !== undefined) {\n {\n if (options.hydrate) {\n warn('hydrate through createRoot is deprecated. Use ReactDOMClient.hydrateRoot(container, <App />) instead.');\n } else {\n if (typeof options === 'object' && options !== null && options.$$typeof === REACT_ELEMENT_TYPE) {\n error('You passed a JSX element to createRoot. You probably meant to ' + 'call root.render instead. ' + 'Example usage:\\n\\n' + ' let root = createRoot(domContainer);\\n' + ' root.render(<App />);');\n }\n }\n }\n\n if (options.unstable_strictMode === true) {\n isStrictMode = true;\n }\n\n if (options.identifierPrefix !== undefined) {\n identifierPrefix = options.identifierPrefix;\n }\n\n if (options.onRecoverableError !== undefined) {\n onRecoverableError = options.onRecoverableError;\n }\n\n if (options.transitionCallbacks !== undefined) {\n transitionCallbacks = options.transitionCallbacks;\n }\n }\n\n var root = createContainer(container, ConcurrentRoot, null, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError);\n markContainerAsRoot(root.current, container);\n var rootContainerElement = container.nodeType === COMMENT_NODE ? container.parentNode : container;\n listenToAllSupportedEvents(rootContainerElement);\n return new ReactDOMRoot(root);\n}\n\nfunction ReactDOMHydrationRoot(internalRoot) {\n this._internalRoot = internalRoot;\n}\n\nfunction scheduleHydration(target) {\n if (target) {\n queueExplicitHydrationTarget(target);\n }\n}\n\nReactDOMHydrationRoot.prototype.unstable_scheduleHydration = scheduleHydration;\nfunction hydrateRoot(container, initialChildren, options) {\n if (!isValidContainer(container)) {\n throw new Error('hydrateRoot(...): Target container is not a DOM element.');\n }\n\n warnIfReactDOMContainerInDEV(container);\n\n {\n if (initialChildren === undefined) {\n error('Must provide initial children as second argument to hydrateRoot. ' + 'Example usage: hydrateRoot(domContainer, <App />)');\n }\n } // For now we reuse the whole bag of options since they contain\n // the hydration callbacks.\n\n\n var hydrationCallbacks = options != null ? options : null; // TODO: Delete this option\n\n var mutableSources = options != null && options.hydratedSources || null;\n var isStrictMode = false;\n var concurrentUpdatesByDefaultOverride = false;\n var identifierPrefix = '';\n var onRecoverableError = defaultOnRecoverableError;\n\n if (options !== null && options !== undefined) {\n if (options.unstable_strictMode === true) {\n isStrictMode = true;\n }\n\n if (options.identifierPrefix !== undefined) {\n identifierPrefix = options.identifierPrefix;\n }\n\n if (options.onRecoverableError !== undefined) {\n onRecoverableError = options.onRecoverableError;\n }\n }\n\n var root = createHydrationContainer(initialChildren, null, container, ConcurrentRoot, hydrationCallbacks, isStrictMode, concurrentUpdatesByDefaultOverride, identifierPrefix, onRecoverableError);\n markContainerAsRoot(root.current, container); // This can't be a comment node since hydration doesn't work on comment nodes anyway.\n\n listenToAllSupportedEvents(container);\n\n if (mutableSources) {\n for (var i = 0; i < mutableSources.length; i++) {\n var mutableSource = mutableSources[i];\n registerMutableSourceForHydration(root, mutableSource);\n }\n }\n\n return new ReactDOMHydrationRoot(root);\n}\nfunction isValidContainer(node) {\n return !!(node && (node.nodeType === ELEMENT_NODE || node.nodeType === DOCUMENT_NODE || node.nodeType === DOCUMENT_FRAGMENT_NODE || !disableCommentsAsDOMContainers ));\n} // TODO: Remove this function which also includes comment nodes.\n// We only use it in places that are currently more relaxed.\n\nfunction isValidContainerLegacy(node) {\n return !!(node && (node.nodeType === ELEMENT_NODE || node.nodeType === DOCUMENT_NODE || node.nodeType === DOCUMENT_FRAGMENT_NODE || node.nodeType === COMMENT_NODE && node.nodeValue === ' react-mount-point-unstable '));\n}\n\nfunction warnIfReactDOMContainerInDEV(container) {\n {\n if (container.nodeType === ELEMENT_NODE && container.tagName && container.tagName.toUpperCase() === 'BODY') {\n error('createRoot(): Creating roots directly with document.body is ' + 'discouraged, since its children are often manipulated by third-party ' + 'scripts and browser extensions. This may lead to subtle ' + 'reconciliation issues. Try using a container element created ' + 'for your app.');\n }\n\n if (isContainerMarkedAsRoot(container)) {\n if (container._reactRootContainer) {\n error('You are calling ReactDOMClient.createRoot() on a container that was previously ' + 'passed to ReactDOM.render(). This is not supported.');\n } else {\n error('You are calling ReactDOMClient.createRoot() on a container that ' + 'has already been passed to createRoot() before. Instead, call ' + 'root.render() on the existing root instead if you want to update it.');\n }\n }\n }\n}\n\nvar ReactCurrentOwner$3 = ReactSharedInternals.ReactCurrentOwner;\nvar topLevelUpdateWarnings;\n\n{\n topLevelUpdateWarnings = function (container) {\n if (container._reactRootContainer && container.nodeType !== COMMENT_NODE) {\n var hostInstance = findHostInstanceWithNoPortals(container._reactRootContainer.current);\n\n if (hostInstance) {\n if (hostInstance.parentNode !== container) {\n error('render(...): It looks like the React-rendered content of this ' + 'container was removed without using React. This is not ' + 'supported and will cause errors. Instead, call ' + 'ReactDOM.unmountComponentAtNode to empty a container.');\n }\n }\n }\n\n var isRootRenderedBySomeReact = !!container._reactRootContainer;\n var rootEl = getReactRootElementInContainer(container);\n var hasNonRootReactChild = !!(rootEl && getInstanceFromNode(rootEl));\n\n if (hasNonRootReactChild && !isRootRenderedBySomeReact) {\n error('render(...): Replacing React-rendered children with a new root ' + 'component. If you intended to update the children of this node, ' + 'you should instead have the existing children update their state ' + 'and render the new components instead of calling ReactDOM.render.');\n }\n\n if (container.nodeType === ELEMENT_NODE && container.tagName && container.tagName.toUpperCase() === 'BODY') {\n error('render(): Rendering components directly into document.body is ' + 'discouraged, since its children are often manipulated by third-party ' + 'scripts and browser extensions. This may lead to subtle ' + 'reconciliation issues. Try rendering into a container element created ' + 'for your app.');\n }\n };\n}\n\nfunction getReactRootElementInContainer(container) {\n if (!container) {\n return null;\n }\n\n if (container.nodeType === DOCUMENT_NODE) {\n return container.documentElement;\n } else {\n return container.firstChild;\n }\n}\n\nfunction noopOnRecoverableError() {// This isn't reachable because onRecoverableError isn't called in the\n // legacy API.\n}\n\nfunction legacyCreateRootFromDOMContainer(container, initialChildren, parentComponent, callback, isHydrationContainer) {\n if (isHydrationContainer) {\n if (typeof callback === 'function') {\n var originalCallback = callback;\n\n callback = function () {\n var instance = getPublicRootInstance(root);\n originalCallback.call(instance);\n };\n }\n\n var root = createHydrationContainer(initialChildren, callback, container, LegacyRoot, null, // hydrationCallbacks\n false, // isStrictMode\n false, // concurrentUpdatesByDefaultOverride,\n '', // identifierPrefix\n noopOnRecoverableError);\n container._reactRootContainer = root;\n markContainerAsRoot(root.current, container);\n var rootContainerElement = container.nodeType === COMMENT_NODE ? container.parentNode : container;\n listenToAllSupportedEvents(rootContainerElement);\n flushSync();\n return root;\n } else {\n // First clear any existing content.\n var rootSibling;\n\n while (rootSibling = container.lastChild) {\n container.removeChild(rootSibling);\n }\n\n if (typeof callback === 'function') {\n var _originalCallback = callback;\n\n callback = function () {\n var instance = getPublicRootInstance(_root);\n\n _originalCallback.call(instance);\n };\n }\n\n var _root = createContainer(container, LegacyRoot, null, // hydrationCallbacks\n false, // isStrictMode\n false, // concurrentUpdatesByDefaultOverride,\n '', // identifierPrefix\n noopOnRecoverableError);\n\n container._reactRootContainer = _root;\n markContainerAsRoot(_root.current, container);\n\n var _rootContainerElement = container.nodeType === COMMENT_NODE ? container.parentNode : container;\n\n listenToAllSupportedEvents(_rootContainerElement); // Initial mount should not be batched.\n\n flushSync(function () {\n updateContainer(initialChildren, _root, parentComponent, callback);\n });\n return _root;\n }\n}\n\nfunction warnOnInvalidCallback$1(callback, callerName) {\n {\n if (callback !== null && typeof callback !== 'function') {\n error('%s(...): Expected the last optional `callback` argument to be a ' + 'function. Instead received: %s.', callerName, callback);\n }\n }\n}\n\nfunction legacyRenderSubtreeIntoContainer(parentComponent, children, container, forceHydrate, callback) {\n {\n topLevelUpdateWarnings(container);\n warnOnInvalidCallback$1(callback === undefined ? null : callback, 'render');\n }\n\n var maybeRoot = container._reactRootContainer;\n var root;\n\n if (!maybeRoot) {\n // Initial mount\n root = legacyCreateRootFromDOMContainer(container, children, parentComponent, callback, forceHydrate);\n } else {\n root = maybeRoot;\n\n if (typeof callback === 'function') {\n var originalCallback = callback;\n\n callback = function () {\n var instance = getPublicRootInstance(root);\n originalCallback.call(instance);\n };\n } // Update\n\n\n updateContainer(children, root, parentComponent, callback);\n }\n\n return getPublicRootInstance(root);\n}\n\nvar didWarnAboutFindDOMNode = false;\nfunction findDOMNode(componentOrElement) {\n {\n if (!didWarnAboutFindDOMNode) {\n didWarnAboutFindDOMNode = true;\n\n error('findDOMNode is deprecated and will be removed in the next major ' + 'release. Instead, add a ref directly to the element you want ' + 'to reference. Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-find-node');\n }\n\n var owner = ReactCurrentOwner$3.current;\n\n if (owner !== null && owner.stateNode !== null) {\n var warnedAboutRefsInRender = owner.stateNode._warnedAboutRefsInRender;\n\n if (!warnedAboutRefsInRender) {\n error('%s is accessing findDOMNode inside its render(). ' + 'render() should be a pure function of props and state. It should ' + 'never access something that requires stale data from the previous ' + 'render, such as refs. Move this logic to componentDidMount and ' + 'componentDidUpdate instead.', getComponentNameFromType(owner.type) || 'A component');\n }\n\n owner.stateNode._warnedAboutRefsInRender = true;\n }\n }\n\n if (componentOrElement == null) {\n return null;\n }\n\n if (componentOrElement.nodeType === ELEMENT_NODE) {\n return componentOrElement;\n }\n\n {\n return findHostInstanceWithWarning(componentOrElement, 'findDOMNode');\n }\n}\nfunction hydrate(element, container, callback) {\n {\n error('ReactDOM.hydrate is no longer supported in React 18. Use hydrateRoot ' + 'instead. Until you switch to the new API, your app will behave as ' + \"if it's running React 17. Learn \" + 'more: https://reactjs.org/link/switch-to-createroot');\n }\n\n if (!isValidContainerLegacy(container)) {\n throw new Error('Target container is not a DOM element.');\n }\n\n {\n var isModernRoot = isContainerMarkedAsRoot(container) && container._reactRootContainer === undefined;\n\n if (isModernRoot) {\n error('You are calling ReactDOM.hydrate() on a container that was previously ' + 'passed to ReactDOMClient.createRoot(). This is not supported. ' + 'Did you mean to call hydrateRoot(container, element)?');\n }\n } // TODO: throw or warn if we couldn't hydrate?\n\n\n return legacyRenderSubtreeIntoContainer(null, element, container, true, callback);\n}\nfunction render(element, container, callback) {\n {\n error('ReactDOM.render is no longer supported in React 18. Use createRoot ' + 'instead. Until you switch to the new API, your app will behave as ' + \"if it's running React 17. Learn \" + 'more: https://reactjs.org/link/switch-to-createroot');\n }\n\n if (!isValidContainerLegacy(container)) {\n throw new Error('Target container is not a DOM element.');\n }\n\n {\n var isModernRoot = isContainerMarkedAsRoot(container) && container._reactRootContainer === undefined;\n\n if (isModernRoot) {\n error('You are calling ReactDOM.render() on a container that was previously ' + 'passed to ReactDOMClient.createRoot(). This is not supported. ' + 'Did you mean to call root.render(element)?');\n }\n }\n\n return legacyRenderSubtreeIntoContainer(null, element, container, false, callback);\n}\nfunction unstable_renderSubtreeIntoContainer(parentComponent, element, containerNode, callback) {\n {\n error('ReactDOM.unstable_renderSubtreeIntoContainer() is no longer supported ' + 'in React 18. Consider using a portal instead. Until you switch to ' + \"the createRoot API, your app will behave as if it's running React \" + '17. Learn more: https://reactjs.org/link/switch-to-createroot');\n }\n\n if (!isValidContainerLegacy(containerNode)) {\n throw new Error('Target container is not a DOM element.');\n }\n\n if (parentComponent == null || !has(parentComponent)) {\n throw new Error('parentComponent must be a valid React Component');\n }\n\n return legacyRenderSubtreeIntoContainer(parentComponent, element, containerNode, false, callback);\n}\nvar didWarnAboutUnmountComponentAtNode = false;\nfunction unmountComponentAtNode(container) {\n {\n if (!didWarnAboutUnmountComponentAtNode) {\n didWarnAboutUnmountComponentAtNode = true;\n\n error('unmountComponentAtNode is deprecated and will be removed in the ' + 'next major release. Switch to the createRoot API. Learn ' + 'more: https://reactjs.org/link/switch-to-createroot');\n }\n }\n\n if (!isValidContainerLegacy(container)) {\n throw new Error('unmountComponentAtNode(...): Target container is not a DOM element.');\n }\n\n {\n var isModernRoot = isContainerMarkedAsRoot(container) && container._reactRootContainer === undefined;\n\n if (isModernRoot) {\n error('You are calling ReactDOM.unmountComponentAtNode() on a container that was previously ' + 'passed to ReactDOMClient.createRoot(). This is not supported. Did you mean to call root.unmount()?');\n }\n }\n\n if (container._reactRootContainer) {\n {\n var rootEl = getReactRootElementInContainer(container);\n var renderedByDifferentReact = rootEl && !getInstanceFromNode(rootEl);\n\n if (renderedByDifferentReact) {\n error(\"unmountComponentAtNode(): The node you're attempting to unmount \" + 'was rendered by another copy of React.');\n }\n } // Unmount should not be batched.\n\n\n flushSync(function () {\n legacyRenderSubtreeIntoContainer(null, null, container, false, function () {\n // $FlowFixMe This should probably use `delete container._reactRootContainer`\n container._reactRootContainer = null;\n unmarkContainerAsRoot(container);\n });\n }); // If you call unmountComponentAtNode twice in quick succession, you'll\n // get `true` twice. That's probably fine?\n\n return true;\n } else {\n {\n var _rootEl = getReactRootElementInContainer(container);\n\n var hasNonRootReactChild = !!(_rootEl && getInstanceFromNode(_rootEl)); // Check if the container itself is a React root node.\n\n var isContainerReactRoot = container.nodeType === ELEMENT_NODE && isValidContainerLegacy(container.parentNode) && !!container.parentNode._reactRootContainer;\n\n if (hasNonRootReactChild) {\n error(\"unmountComponentAtNode(): The node you're attempting to unmount \" + 'was rendered by React and is not a top-level container. %s', isContainerReactRoot ? 'You may have accidentally passed in a React root node instead ' + 'of its container.' : 'Instead, have the parent component update its state and ' + 'rerender in order to remove this component.');\n }\n }\n\n return false;\n }\n}\n\nsetAttemptSynchronousHydration(attemptSynchronousHydration$1);\nsetAttemptContinuousHydration(attemptContinuousHydration$1);\nsetAttemptHydrationAtCurrentPriority(attemptHydrationAtCurrentPriority$1);\nsetGetCurrentUpdatePriority(getCurrentUpdatePriority);\nsetAttemptHydrationAtPriority(runWithPriority);\n\n{\n if (typeof Map !== 'function' || // $FlowIssue Flow incorrectly thinks Map has no prototype\n Map.prototype == null || typeof Map.prototype.forEach !== 'function' || typeof Set !== 'function' || // $FlowIssue Flow incorrectly thinks Set has no prototype\n Set.prototype == null || typeof Set.prototype.clear !== 'function' || typeof Set.prototype.forEach !== 'function') {\n error('React depends on Map and Set built-in types. Make sure that you load a ' + 'polyfill in older browsers. https://reactjs.org/link/react-polyfills');\n }\n}\n\nsetRestoreImplementation(restoreControlledState$3);\nsetBatchingImplementation(batchedUpdates$1, discreteUpdates, flushSync);\n\nfunction createPortal$1(children, container) {\n var key = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n if (!isValidContainer(container)) {\n throw new Error('Target container is not a DOM element.');\n } // TODO: pass ReactDOM portal implementation as third argument\n // $FlowFixMe The Flow type is opaque but there's no way to actually create it.\n\n\n return createPortal(children, container, null, key);\n}\n\nfunction renderSubtreeIntoContainer(parentComponent, element, containerNode, callback) {\n return unstable_renderSubtreeIntoContainer(parentComponent, element, containerNode, callback);\n}\n\nvar Internals = {\n usingClientEntryPoint: false,\n // Keep in sync with ReactTestUtils.js.\n // This is an array for better minification.\n Events: [getInstanceFromNode, getNodeFromInstance, getFiberCurrentPropsFromNode, enqueueStateRestore, restoreStateIfNeeded, batchedUpdates$1]\n};\n\nfunction createRoot$1(container, options) {\n {\n if (!Internals.usingClientEntryPoint && !false) {\n error('You are importing createRoot from \"react-dom\" which is not supported. ' + 'You should instead import it from \"react-dom/client\".');\n }\n }\n\n return createRoot(container, options);\n}\n\nfunction hydrateRoot$1(container, initialChildren, options) {\n {\n if (!Internals.usingClientEntryPoint && !false) {\n error('You are importing hydrateRoot from \"react-dom\" which is not supported. ' + 'You should instead import it from \"react-dom/client\".');\n }\n }\n\n return hydrateRoot(container, initialChildren, options);\n} // Overload the definition to the two valid signatures.\n// Warning, this opts-out of checking the function body.\n\n\n// eslint-disable-next-line no-redeclare\nfunction flushSync$1(fn) {\n {\n if (isAlreadyRendering()) {\n error('flushSync was called from inside a lifecycle method. React cannot ' + 'flush when React is already rendering. Consider moving this call to ' + 'a scheduler task or micro task.');\n }\n }\n\n return flushSync(fn);\n}\nvar foundDevTools = injectIntoDevTools({\n findFiberByHostInstance: getClosestInstanceFromNode,\n bundleType: 1 ,\n version: ReactVersion,\n rendererPackageName: 'react-dom'\n});\n\n{\n if (!foundDevTools && canUseDOM && window.top === window.self) {\n // If we're in Chrome or Firefox, provide a download link if not installed.\n if (navigator.userAgent.indexOf('Chrome') > -1 && navigator.userAgent.indexOf('Edge') === -1 || navigator.userAgent.indexOf('Firefox') > -1) {\n var protocol = window.location.protocol; // Don't warn in exotic cases like chrome-extension://.\n\n if (/^(https?|file):$/.test(protocol)) {\n // eslint-disable-next-line react-internal/no-production-logging\n console.info('%cDownload the React DevTools ' + 'for a better development experience: ' + 'https://reactjs.org/link/react-devtools' + (protocol === 'file:' ? '\\nYou might need to use a local HTTP server (instead of file://): ' + 'https://reactjs.org/link/react-devtools-faq' : ''), 'font-weight:bold');\n }\n }\n }\n}\n\nexports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = Internals;\nexports.createPortal = createPortal$1;\nexports.createRoot = createRoot$1;\nexports.findDOMNode = findDOMNode;\nexports.flushSync = flushSync$1;\nexports.hydrate = hydrate;\nexports.hydrateRoot = hydrateRoot$1;\nexports.render = render;\nexports.unmountComponentAtNode = unmountComponentAtNode;\nexports.unstable_batchedUpdates = batchedUpdates$1;\nexports.unstable_renderSubtreeIntoContainer = renderSubtreeIntoContainer;\nexports.version = ReactVersion;\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());\n}\n \n })();\n}\n", "'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom.production.min.js');\n} else {\n module.exports = require('./cjs/react-dom.development.js');\n}\n", "'use strict';\n\nvar m = require('react-dom');\nif (process.env.NODE_ENV === 'production') {\n exports.createRoot = m.createRoot;\n exports.hydrateRoot = m.hydrateRoot;\n} else {\n var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n exports.createRoot = function(c, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.createRoot(c, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n exports.hydrateRoot = function(c, h, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.hydrateRoot(c, h, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n}\n", "/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\nvar React = require('react');\n\n// ATTENTION\n// When adding new symbols to this file,\n// Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'\n// The Symbol used to tag the ReactElement-like types.\nvar REACT_ELEMENT_TYPE = Symbol.for('react.element');\nvar REACT_PORTAL_TYPE = Symbol.for('react.portal');\nvar REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');\nvar REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');\nvar REACT_PROFILER_TYPE = Symbol.for('react.profiler');\nvar REACT_PROVIDER_TYPE = Symbol.for('react.provider');\nvar REACT_CONTEXT_TYPE = Symbol.for('react.context');\nvar REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');\nvar REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');\nvar REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');\nvar REACT_MEMO_TYPE = Symbol.for('react.memo');\nvar REACT_LAZY_TYPE = Symbol.for('react.lazy');\nvar REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');\nvar MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nvar FAUX_ITERATOR_SYMBOL = '@@iterator';\nfunction getIteratorFn(maybeIterable) {\n if (maybeIterable === null || typeof maybeIterable !== 'object') {\n return null;\n }\n\n var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL];\n\n if (typeof maybeIterator === 'function') {\n return maybeIterator;\n }\n\n return null;\n}\n\nvar ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n\nfunction error(format) {\n {\n {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n printWarning('error', format, args);\n }\n }\n}\n\nfunction printWarning(level, format, args) {\n // When changing this logic, you might want to also\n // update consoleWithStackDev.www.js as well.\n {\n var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n var stack = ReactDebugCurrentFrame.getStackAddendum();\n\n if (stack !== '') {\n format += '%s';\n args = args.concat([stack]);\n } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n var argsWithFormat = args.map(function (item) {\n return String(item);\n }); // Careful: RN currently depends on this prefix\n\n argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it\n // breaks IE9: https://github.com/facebook/react/issues/13610\n // eslint-disable-next-line react-internal/no-production-logging\n\n Function.prototype.apply.call(console[level], console, argsWithFormat);\n }\n}\n\n// -----------------------------------------------------------------------------\n\nvar enableScopeAPI = false; // Experimental Create Event Handle API.\nvar enableCacheElement = false;\nvar enableTransitionTracing = false; // No known bugs, but needs performance testing\n\nvar enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber\n// stuff. Intended to enable React core members to more easily debug scheduling\n// issues in DEV builds.\n\nvar enableDebugTracing = false; // Track which Fiber(s) schedule render work.\n\nvar REACT_MODULE_REFERENCE;\n\n{\n REACT_MODULE_REFERENCE = Symbol.for('react.module.reference');\n}\n\nfunction isValidElementType(type) {\n if (typeof type === 'string' || typeof type === 'function') {\n return true;\n } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).\n\n\n if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || enableCacheElement || enableTransitionTracing ) {\n return true;\n }\n\n if (typeof type === 'object' && type !== null) {\n if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object\n // types supported by any Flight configuration anywhere since\n // we don't know which Flight build this will end up being used\n // with.\n type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) {\n return true;\n }\n }\n\n return false;\n}\n\nfunction getWrappedName(outerType, innerType, wrapperName) {\n var displayName = outerType.displayName;\n\n if (displayName) {\n return displayName;\n }\n\n var functionName = innerType.displayName || innerType.name || '';\n return functionName !== '' ? wrapperName + \"(\" + functionName + \")\" : wrapperName;\n} // Keep in sync with react-reconciler/getComponentNameFromFiber\n\n\nfunction getContextName(type) {\n return type.displayName || 'Context';\n} // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead.\n\n\nfunction getComponentNameFromType(type) {\n if (type == null) {\n // Host root, text node or just invalid type.\n return null;\n }\n\n {\n if (typeof type.tag === 'number') {\n error('Received an unexpected object in getComponentNameFromType(). ' + 'This is likely a bug in React. Please file an issue.');\n }\n }\n\n if (typeof type === 'function') {\n return type.displayName || type.name || null;\n }\n\n if (typeof type === 'string') {\n return type;\n }\n\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return 'Fragment';\n\n case REACT_PORTAL_TYPE:\n return 'Portal';\n\n case REACT_PROFILER_TYPE:\n return 'Profiler';\n\n case REACT_STRICT_MODE_TYPE:\n return 'StrictMode';\n\n case REACT_SUSPENSE_TYPE:\n return 'Suspense';\n\n case REACT_SUSPENSE_LIST_TYPE:\n return 'SuspenseList';\n\n }\n\n if (typeof type === 'object') {\n switch (type.$$typeof) {\n case REACT_CONTEXT_TYPE:\n var context = type;\n return getContextName(context) + '.Consumer';\n\n case REACT_PROVIDER_TYPE:\n var provider = type;\n return getContextName(provider._context) + '.Provider';\n\n case REACT_FORWARD_REF_TYPE:\n return getWrappedName(type, type.render, 'ForwardRef');\n\n case REACT_MEMO_TYPE:\n var outerName = type.displayName || null;\n\n if (outerName !== null) {\n return outerName;\n }\n\n return getComponentNameFromType(type.type) || 'Memo';\n\n case REACT_LAZY_TYPE:\n {\n var lazyComponent = type;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n\n try {\n return getComponentNameFromType(init(payload));\n } catch (x) {\n return null;\n }\n }\n\n // eslint-disable-next-line no-fallthrough\n }\n }\n\n return null;\n}\n\nvar assign = Object.assign;\n\n// Helpers to patch console.logs to avoid logging during side-effect free\n// replaying on render function. This currently only patches the object\n// lazily which won't cover if the log function was extracted eagerly.\n// We could also eagerly patch the method.\nvar disabledDepth = 0;\nvar prevLog;\nvar prevInfo;\nvar prevWarn;\nvar prevError;\nvar prevGroup;\nvar prevGroupCollapsed;\nvar prevGroupEnd;\n\nfunction disabledLog() {}\n\ndisabledLog.__reactDisabledLog = true;\nfunction disableLogs() {\n {\n if (disabledDepth === 0) {\n /* eslint-disable react-internal/no-production-logging */\n prevLog = console.log;\n prevInfo = console.info;\n prevWarn = console.warn;\n prevError = console.error;\n prevGroup = console.group;\n prevGroupCollapsed = console.groupCollapsed;\n prevGroupEnd = console.groupEnd; // https://github.com/facebook/react/issues/19099\n\n var props = {\n configurable: true,\n enumerable: true,\n value: disabledLog,\n writable: true\n }; // $FlowFixMe Flow thinks console is immutable.\n\n Object.defineProperties(console, {\n info: props,\n log: props,\n warn: props,\n error: props,\n group: props,\n groupCollapsed: props,\n groupEnd: props\n });\n /* eslint-enable react-internal/no-production-logging */\n }\n\n disabledDepth++;\n }\n}\nfunction reenableLogs() {\n {\n disabledDepth--;\n\n if (disabledDepth === 0) {\n /* eslint-disable react-internal/no-production-logging */\n var props = {\n configurable: true,\n enumerable: true,\n writable: true\n }; // $FlowFixMe Flow thinks console is immutable.\n\n Object.defineProperties(console, {\n log: assign({}, props, {\n value: prevLog\n }),\n info: assign({}, props, {\n value: prevInfo\n }),\n warn: assign({}, props, {\n value: prevWarn\n }),\n error: assign({}, props, {\n value: prevError\n }),\n group: assign({}, props, {\n value: prevGroup\n }),\n groupCollapsed: assign({}, props, {\n value: prevGroupCollapsed\n }),\n groupEnd: assign({}, props, {\n value: prevGroupEnd\n })\n });\n /* eslint-enable react-internal/no-production-logging */\n }\n\n if (disabledDepth < 0) {\n error('disabledDepth fell below zero. ' + 'This is a bug in React. Please file an issue.');\n }\n }\n}\n\nvar ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher;\nvar prefix;\nfunction describeBuiltInComponentFrame(name, source, ownerFn) {\n {\n if (prefix === undefined) {\n // Extract the VM specific prefix used by each line.\n try {\n throw Error();\n } catch (x) {\n var match = x.stack.trim().match(/\\n( *(at )?)/);\n prefix = match && match[1] || '';\n }\n } // We use the prefix to ensure our stacks line up with native stack frames.\n\n\n return '\\n' + prefix + name;\n }\n}\nvar reentry = false;\nvar componentFrameCache;\n\n{\n var PossiblyWeakMap = typeof WeakMap === 'function' ? WeakMap : Map;\n componentFrameCache = new PossiblyWeakMap();\n}\n\nfunction describeNativeComponentFrame(fn, construct) {\n // If something asked for a stack inside a fake render, it should get ignored.\n if ( !fn || reentry) {\n return '';\n }\n\n {\n var frame = componentFrameCache.get(fn);\n\n if (frame !== undefined) {\n return frame;\n }\n }\n\n var control;\n reentry = true;\n var previousPrepareStackTrace = Error.prepareStackTrace; // $FlowFixMe It does accept undefined.\n\n Error.prepareStackTrace = undefined;\n var previousDispatcher;\n\n {\n previousDispatcher = ReactCurrentDispatcher.current; // Set the dispatcher in DEV because this might be call in the render function\n // for warnings.\n\n ReactCurrentDispatcher.current = null;\n disableLogs();\n }\n\n try {\n // This should throw.\n if (construct) {\n // Something should be setting the props in the constructor.\n var Fake = function () {\n throw Error();\n }; // $FlowFixMe\n\n\n Object.defineProperty(Fake.prototype, 'props', {\n set: function () {\n // We use a throwing setter instead of frozen or non-writable props\n // because that won't throw in a non-strict mode function.\n throw Error();\n }\n });\n\n if (typeof Reflect === 'object' && Reflect.construct) {\n // We construct a different control for this case to include any extra\n // frames added by the construct call.\n try {\n Reflect.construct(Fake, []);\n } catch (x) {\n control = x;\n }\n\n Reflect.construct(fn, [], Fake);\n } else {\n try {\n Fake.call();\n } catch (x) {\n control = x;\n }\n\n fn.call(Fake.prototype);\n }\n } else {\n try {\n throw Error();\n } catch (x) {\n control = x;\n }\n\n fn();\n }\n } catch (sample) {\n // This is inlined manually because closure doesn't do it for us.\n if (sample && control && typeof sample.stack === 'string') {\n // This extracts the first frame from the sample that isn't also in the control.\n // Skipping one frame that we assume is the frame that calls the two.\n var sampleLines = sample.stack.split('\\n');\n var controlLines = control.stack.split('\\n');\n var s = sampleLines.length - 1;\n var c = controlLines.length - 1;\n\n while (s >= 1 && c >= 0 && sampleLines[s] !== controlLines[c]) {\n // We expect at least one stack frame to be shared.\n // Typically this will be the root most one. However, stack frames may be\n // cut off due to maximum stack limits. In this case, one maybe cut off\n // earlier than the other. We assume that the sample is longer or the same\n // and there for cut off earlier. So we should find the root most frame in\n // the sample somewhere in the control.\n c--;\n }\n\n for (; s >= 1 && c >= 0; s--, c--) {\n // Next we find the first one that isn't the same which should be the\n // frame that called our sample function and the control.\n if (sampleLines[s] !== controlLines[c]) {\n // In V8, the first line is describing the message but other VMs don't.\n // If we're about to return the first line, and the control is also on the same\n // line, that's a pretty good indicator that our sample threw at same line as\n // the control. I.e. before we entered the sample frame. So we ignore this result.\n // This can happen if you passed a class to function component, or non-function.\n if (s !== 1 || c !== 1) {\n do {\n s--;\n c--; // We may still have similar intermediate frames from the construct call.\n // The next one that isn't the same should be our match though.\n\n if (c < 0 || sampleLines[s] !== controlLines[c]) {\n // V8 adds a \"new\" prefix for native classes. Let's remove it to make it prettier.\n var _frame = '\\n' + sampleLines[s].replace(' at new ', ' at '); // If our component frame is labeled \"<anonymous>\"\n // but we have a user-provided \"displayName\"\n // splice it in to make the stack more readable.\n\n\n if (fn.displayName && _frame.includes('<anonymous>')) {\n _frame = _frame.replace('<anonymous>', fn.displayName);\n }\n\n {\n if (typeof fn === 'function') {\n componentFrameCache.set(fn, _frame);\n }\n } // Return the line we found.\n\n\n return _frame;\n }\n } while (s >= 1 && c >= 0);\n }\n\n break;\n }\n }\n }\n } finally {\n reentry = false;\n\n {\n ReactCurrentDispatcher.current = previousDispatcher;\n reenableLogs();\n }\n\n Error.prepareStackTrace = previousPrepareStackTrace;\n } // Fallback to just using the name if we couldn't make it throw.\n\n\n var name = fn ? fn.displayName || fn.name : '';\n var syntheticFrame = name ? describeBuiltInComponentFrame(name) : '';\n\n {\n if (typeof fn === 'function') {\n componentFrameCache.set(fn, syntheticFrame);\n }\n }\n\n return syntheticFrame;\n}\nfunction describeFunctionComponentFrame(fn, source, ownerFn) {\n {\n return describeNativeComponentFrame(fn, false);\n }\n}\n\nfunction shouldConstruct(Component) {\n var prototype = Component.prototype;\n return !!(prototype && prototype.isReactComponent);\n}\n\nfunction describeUnknownElementTypeFrameInDEV(type, source, ownerFn) {\n\n if (type == null) {\n return '';\n }\n\n if (typeof type === 'function') {\n {\n return describeNativeComponentFrame(type, shouldConstruct(type));\n }\n }\n\n if (typeof type === 'string') {\n return describeBuiltInComponentFrame(type);\n }\n\n switch (type) {\n case REACT_SUSPENSE_TYPE:\n return describeBuiltInComponentFrame('Suspense');\n\n case REACT_SUSPENSE_LIST_TYPE:\n return describeBuiltInComponentFrame('SuspenseList');\n }\n\n if (typeof type === 'object') {\n switch (type.$$typeof) {\n case REACT_FORWARD_REF_TYPE:\n return describeFunctionComponentFrame(type.render);\n\n case REACT_MEMO_TYPE:\n // Memo may contain any component type so we recursively resolve it.\n return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn);\n\n case REACT_LAZY_TYPE:\n {\n var lazyComponent = type;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n\n try {\n // Lazy may contain any component type so we recursively resolve it.\n return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn);\n } catch (x) {}\n }\n }\n }\n\n return '';\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar loggedTypeFailures = {};\nvar ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n ReactDebugCurrentFrame.setExtraStackFrame(stack);\n } else {\n ReactDebugCurrentFrame.setExtraStackFrame(null);\n }\n }\n}\n\nfunction checkPropTypes(typeSpecs, values, location, componentName, element) {\n {\n // $FlowFixMe This is okay but Flow doesn't know it.\n var has = Function.call.bind(hasOwnProperty);\n\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n // eslint-disable-next-line react-internal/prod-error-codes\n var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.');\n err.name = 'Invariant Violation';\n throw err;\n }\n\n error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED');\n } catch (ex) {\n error$1 = ex;\n }\n\n if (error$1 && !(error$1 instanceof Error)) {\n setCurrentlyValidatingElement(element);\n\n error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1);\n\n setCurrentlyValidatingElement(null);\n }\n\n if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error$1.message] = true;\n setCurrentlyValidatingElement(element);\n\n error('Failed %s type: %s', location, error$1.message);\n\n setCurrentlyValidatingElement(null);\n }\n }\n }\n }\n}\n\nvar isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare\n\nfunction isArray(a) {\n return isArrayImpl(a);\n}\n\n/*\n * The `'' + value` pattern (used in in perf-sensitive code) throws for Symbol\n * and Temporal.* types. See https://github.com/facebook/react/pull/22064.\n *\n * The functions in this module will throw an easier-to-understand,\n * easier-to-debug exception with a clear errors message message explaining the\n * problem. (Instead of a confusing exception thrown inside the implementation\n * of the `value` object).\n */\n// $FlowFixMe only called in DEV, so void return is not possible.\nfunction typeName(value) {\n {\n // toStringTag is needed for namespaced types like Temporal.Instant\n var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag;\n var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object';\n return type;\n }\n} // $FlowFixMe only called in DEV, so void return is not possible.\n\n\nfunction willCoercionThrow(value) {\n {\n try {\n testStringCoercion(value);\n return false;\n } catch (e) {\n return true;\n }\n }\n}\n\nfunction testStringCoercion(value) {\n // If you ended up here by following an exception call stack, here's what's\n // happened: you supplied an object or symbol value to React (as a prop, key,\n // DOM attribute, CSS property, string ref, etc.) and when React tried to\n // coerce it to a string using `'' + value`, an exception was thrown.\n //\n // The most common types that will cause this exception are `Symbol` instances\n // and Temporal objects like `Temporal.Instant`. But any object that has a\n // `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this\n // exception. (Library authors do this to prevent users from using built-in\n // numeric operators like `+` or comparison operators like `>=` because custom\n // methods are needed to perform accurate arithmetic or comparison.)\n //\n // To fix the problem, coerce this object or symbol value to a string before\n // passing it to React. The most reliable way is usually `String(value)`.\n //\n // To find which value is throwing, check the browser or debugger console.\n // Before this exception was thrown, there should be `console.error` output\n // that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the\n // problem and how that type was used: key, atrribute, input value prop, etc.\n // In most cases, this console output also shows the component and its\n // ancestor components where the exception happened.\n //\n // eslint-disable-next-line react-internal/safe-string-coercion\n return '' + value;\n}\nfunction checkKeyStringCoercion(value) {\n {\n if (willCoercionThrow(value)) {\n error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\n\nvar ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;\nvar RESERVED_PROPS = {\n key: true,\n ref: true,\n __self: true,\n __source: true\n};\nvar specialPropKeyWarningShown;\nvar specialPropRefWarningShown;\nvar didWarnAboutStringRefs;\n\n{\n didWarnAboutStringRefs = {};\n}\n\nfunction hasValidRef(config) {\n {\n if (hasOwnProperty.call(config, 'ref')) {\n var getter = Object.getOwnPropertyDescriptor(config, 'ref').get;\n\n if (getter && getter.isReactWarning) {\n return false;\n }\n }\n }\n\n return config.ref !== undefined;\n}\n\nfunction hasValidKey(config) {\n {\n if (hasOwnProperty.call(config, 'key')) {\n var getter = Object.getOwnPropertyDescriptor(config, 'key').get;\n\n if (getter && getter.isReactWarning) {\n return false;\n }\n }\n }\n\n return config.key !== undefined;\n}\n\nfunction warnIfStringRefCannotBeAutoConverted(config, self) {\n {\n if (typeof config.ref === 'string' && ReactCurrentOwner.current && self && ReactCurrentOwner.current.stateNode !== self) {\n var componentName = getComponentNameFromType(ReactCurrentOwner.current.type);\n\n if (!didWarnAboutStringRefs[componentName]) {\n error('Component \"%s\" contains the string ref \"%s\". ' + 'Support for string refs will be removed in a future major release. ' + 'This case cannot be automatically converted to an arrow function. ' + 'We ask you to manually fix this case by using useRef() or createRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref', getComponentNameFromType(ReactCurrentOwner.current.type), config.ref);\n\n didWarnAboutStringRefs[componentName] = true;\n }\n }\n }\n}\n\nfunction defineKeyPropWarningGetter(props, displayName) {\n {\n var warnAboutAccessingKey = function () {\n if (!specialPropKeyWarningShown) {\n specialPropKeyWarningShown = true;\n\n error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n }\n };\n\n warnAboutAccessingKey.isReactWarning = true;\n Object.defineProperty(props, 'key', {\n get: warnAboutAccessingKey,\n configurable: true\n });\n }\n}\n\nfunction defineRefPropWarningGetter(props, displayName) {\n {\n var warnAboutAccessingRef = function () {\n if (!specialPropRefWarningShown) {\n specialPropRefWarningShown = true;\n\n error('%s: `ref` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n }\n };\n\n warnAboutAccessingRef.isReactWarning = true;\n Object.defineProperty(props, 'ref', {\n get: warnAboutAccessingRef,\n configurable: true\n });\n }\n}\n/**\n * Factory method to create a new React element. This no longer adheres to\n * the class pattern, so do not use new to call it. Also, instanceof check\n * will not work. Instead test $$typeof field against Symbol.for('react.element') to check\n * if something is a React Element.\n *\n * @param {*} type\n * @param {*} props\n * @param {*} key\n * @param {string|object} ref\n * @param {*} owner\n * @param {*} self A *temporary* helper to detect places where `this` is\n * different from the `owner` when React.createElement is called, so that we\n * can warn. We want to get rid of owner and replace string `ref`s with arrow\n * functions, and as long as `this` and owner are the same, there will be no\n * change in behavior.\n * @param {*} source An annotation object (added by a transpiler or otherwise)\n * indicating filename, line number, and/or other information.\n * @internal\n */\n\n\nvar ReactElement = function (type, key, ref, self, source, owner, props) {\n var element = {\n // This tag allows us to uniquely identify this as a React Element\n $$typeof: REACT_ELEMENT_TYPE,\n // Built-in properties that belong on the element\n type: type,\n key: key,\n ref: ref,\n props: props,\n // Record the component responsible for creating this element.\n _owner: owner\n };\n\n {\n // The validation flag is currently mutative. We put it on\n // an external backing store so that we can freeze the whole object.\n // This can be replaced with a WeakMap once they are implemented in\n // commonly used development environments.\n element._store = {}; // To make comparing ReactElements easier for testing purposes, we make\n // the validation flag non-enumerable (where possible, which should\n // include every environment we run tests in), so the test framework\n // ignores it.\n\n Object.defineProperty(element._store, 'validated', {\n configurable: false,\n enumerable: false,\n writable: true,\n value: false\n }); // self and source are DEV only properties.\n\n Object.defineProperty(element, '_self', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: self\n }); // Two elements created in two different places should be considered\n // equal for testing purposes and therefore we hide it from enumeration.\n\n Object.defineProperty(element, '_source', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: source\n });\n\n if (Object.freeze) {\n Object.freeze(element.props);\n Object.freeze(element);\n }\n }\n\n return element;\n};\n/**\n * https://github.com/reactjs/rfcs/pull/107\n * @param {*} type\n * @param {object} props\n * @param {string} key\n */\n\nfunction jsxDEV(type, config, maybeKey, source, self) {\n {\n var propName; // Reserved names are extracted\n\n var props = {};\n var key = null;\n var ref = null; // Currently, key can be spread in as a prop. This causes a potential\n // issue if key is also explicitly declared (ie. <div {...props} key=\"Hi\" />\n // or <div key=\"Hi\" {...props} /> ). We want to deprecate key spread,\n // but as an intermediary step, we will use jsxDEV for everything except\n // <div {...props} key=\"Hi\" />, because we aren't currently able to tell if\n // key is explicitly declared to be undefined or not.\n\n if (maybeKey !== undefined) {\n {\n checkKeyStringCoercion(maybeKey);\n }\n\n key = '' + maybeKey;\n }\n\n if (hasValidKey(config)) {\n {\n checkKeyStringCoercion(config.key);\n }\n\n key = '' + config.key;\n }\n\n if (hasValidRef(config)) {\n ref = config.ref;\n warnIfStringRefCannotBeAutoConverted(config, self);\n } // Remaining properties are added to a new props object\n\n\n for (propName in config) {\n if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) {\n props[propName] = config[propName];\n }\n } // Resolve default props\n\n\n if (type && type.defaultProps) {\n var defaultProps = type.defaultProps;\n\n for (propName in defaultProps) {\n if (props[propName] === undefined) {\n props[propName] = defaultProps[propName];\n }\n }\n }\n\n if (key || ref) {\n var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type;\n\n if (key) {\n defineKeyPropWarningGetter(props, displayName);\n }\n\n if (ref) {\n defineRefPropWarningGetter(props, displayName);\n }\n }\n\n return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props);\n }\n}\n\nvar ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner;\nvar ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement$1(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n ReactDebugCurrentFrame$1.setExtraStackFrame(stack);\n } else {\n ReactDebugCurrentFrame$1.setExtraStackFrame(null);\n }\n }\n}\n\nvar propTypesMisspellWarningShown;\n\n{\n propTypesMisspellWarningShown = false;\n}\n/**\n * Verifies the object is a ReactElement.\n * See https://reactjs.org/docs/react-api.html#isvalidelement\n * @param {?object} object\n * @return {boolean} True if `object` is a ReactElement.\n * @final\n */\n\n\nfunction isValidElement(object) {\n {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n }\n}\n\nfunction getDeclarationErrorAddendum() {\n {\n if (ReactCurrentOwner$1.current) {\n var name = getComponentNameFromType(ReactCurrentOwner$1.current.type);\n\n if (name) {\n return '\\n\\nCheck the render method of `' + name + '`.';\n }\n }\n\n return '';\n }\n}\n\nfunction getSourceInfoErrorAddendum(source) {\n {\n if (source !== undefined) {\n var fileName = source.fileName.replace(/^.*[\\\\\\/]/, '');\n var lineNumber = source.lineNumber;\n return '\\n\\nCheck your code at ' + fileName + ':' + lineNumber + '.';\n }\n\n return '';\n }\n}\n/**\n * Warn if there's no key explicitly set on dynamic arrays of children or\n * object keys are not valid. This allows us to keep track of children between\n * updates.\n */\n\n\nvar ownerHasKeyUseWarning = {};\n\nfunction getCurrentComponentErrorInfo(parentType) {\n {\n var info = getDeclarationErrorAddendum();\n\n if (!info) {\n var parentName = typeof parentType === 'string' ? parentType : parentType.displayName || parentType.name;\n\n if (parentName) {\n info = \"\\n\\nCheck the top-level render call using <\" + parentName + \">.\";\n }\n }\n\n return info;\n }\n}\n/**\n * Warn if the element doesn't have an explicit key assigned to it.\n * This element is in an array. The array could grow and shrink or be\n * reordered. All children that haven't already been validated are required to\n * have a \"key\" property assigned to it. Error statuses are cached so a warning\n * will only be shown once.\n *\n * @internal\n * @param {ReactElement} element Element that requires a key.\n * @param {*} parentType element's parent's type.\n */\n\n\nfunction validateExplicitKey(element, parentType) {\n {\n if (!element._store || element._store.validated || element.key != null) {\n return;\n }\n\n element._store.validated = true;\n var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType);\n\n if (ownerHasKeyUseWarning[currentComponentErrorInfo]) {\n return;\n }\n\n ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a\n // property, it may be the creator of the child that's responsible for\n // assigning it a key.\n\n var childOwner = '';\n\n if (element && element._owner && element._owner !== ReactCurrentOwner$1.current) {\n // Give the component that originally created this child.\n childOwner = \" It was passed a child from \" + getComponentNameFromType(element._owner.type) + \".\";\n }\n\n setCurrentlyValidatingElement$1(element);\n\n error('Each child in a list should have a unique \"key\" prop.' + '%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner);\n\n setCurrentlyValidatingElement$1(null);\n }\n}\n/**\n * Ensure that every element either is passed in a static location, in an\n * array with an explicit keys property defined, or in an object literal\n * with valid key property.\n *\n * @internal\n * @param {ReactNode} node Statically passed child of any type.\n * @param {*} parentType node's parent's type.\n */\n\n\nfunction validateChildKeys(node, parentType) {\n {\n if (typeof node !== 'object') {\n return;\n }\n\n if (isArray(node)) {\n for (var i = 0; i < node.length; i++) {\n var child = node[i];\n\n if (isValidElement(child)) {\n validateExplicitKey(child, parentType);\n }\n }\n } else if (isValidElement(node)) {\n // This element was passed in a valid location.\n if (node._store) {\n node._store.validated = true;\n }\n } else if (node) {\n var iteratorFn = getIteratorFn(node);\n\n if (typeof iteratorFn === 'function') {\n // Entry iterators used to provide implicit keys,\n // but now we print a separate warning for them later.\n if (iteratorFn !== node.entries) {\n var iterator = iteratorFn.call(node);\n var step;\n\n while (!(step = iterator.next()).done) {\n if (isValidElement(step.value)) {\n validateExplicitKey(step.value, parentType);\n }\n }\n }\n }\n }\n }\n}\n/**\n * Given an element, validate that its props follow the propTypes definition,\n * provided by the type.\n *\n * @param {ReactElement} element\n */\n\n\nfunction validatePropTypes(element) {\n {\n var type = element.type;\n\n if (type === null || type === undefined || typeof type === 'string') {\n return;\n }\n\n var propTypes;\n\n if (typeof type === 'function') {\n propTypes = type.propTypes;\n } else if (typeof type === 'object' && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here.\n // Inner props are checked in the reconciler.\n type.$$typeof === REACT_MEMO_TYPE)) {\n propTypes = type.propTypes;\n } else {\n return;\n }\n\n if (propTypes) {\n // Intentionally inside to avoid triggering lazy initializers:\n var name = getComponentNameFromType(type);\n checkPropTypes(propTypes, element.props, 'prop', name, element);\n } else if (type.PropTypes !== undefined && !propTypesMisspellWarningShown) {\n propTypesMisspellWarningShown = true; // Intentionally inside to avoid triggering lazy initializers:\n\n var _name = getComponentNameFromType(type);\n\n error('Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?', _name || 'Unknown');\n }\n\n if (typeof type.getDefaultProps === 'function' && !type.getDefaultProps.isReactClassApproved) {\n error('getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.');\n }\n }\n}\n/**\n * Given a fragment, validate that it can only be provided with fragment props\n * @param {ReactElement} fragment\n */\n\n\nfunction validateFragmentProps(fragment) {\n {\n var keys = Object.keys(fragment.props);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n\n if (key !== 'children' && key !== 'key') {\n setCurrentlyValidatingElement$1(fragment);\n\n error('Invalid prop `%s` supplied to `React.Fragment`. ' + 'React.Fragment can only have `key` and `children` props.', key);\n\n setCurrentlyValidatingElement$1(null);\n break;\n }\n }\n\n if (fragment.ref !== null) {\n setCurrentlyValidatingElement$1(fragment);\n\n error('Invalid attribute `ref` supplied to `React.Fragment`.');\n\n setCurrentlyValidatingElement$1(null);\n }\n }\n}\n\nvar didWarnAboutKeySpread = {};\nfunction jsxWithValidation(type, props, key, isStaticChildren, source, self) {\n {\n var validType = isValidElementType(type); // We warn in this case but don't throw. We expect the element creation to\n // succeed and there will likely be errors in render.\n\n if (!validType) {\n var info = '';\n\n if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) {\n info += ' You likely forgot to export your component from the file ' + \"it's defined in, or you might have mixed up default and named imports.\";\n }\n\n var sourceInfo = getSourceInfoErrorAddendum(source);\n\n if (sourceInfo) {\n info += sourceInfo;\n } else {\n info += getDeclarationErrorAddendum();\n }\n\n var typeString;\n\n if (type === null) {\n typeString = 'null';\n } else if (isArray(type)) {\n typeString = 'array';\n } else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) {\n typeString = \"<\" + (getComponentNameFromType(type.type) || 'Unknown') + \" />\";\n info = ' Did you accidentally export a JSX literal instead of a component?';\n } else {\n typeString = typeof type;\n }\n\n error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info);\n }\n\n var element = jsxDEV(type, props, key, source, self); // The result can be nullish if a mock or a custom function is used.\n // TODO: Drop this when these are no longer allowed as the type argument.\n\n if (element == null) {\n return element;\n } // Skip key warning if the type isn't valid since our key validation logic\n // doesn't expect a non-string/function type and can throw confusing errors.\n // We don't want exception behavior to differ between dev and prod.\n // (Rendering will throw with a helpful message and as soon as the type is\n // fixed, the key warnings will appear.)\n\n\n if (validType) {\n var children = props.children;\n\n if (children !== undefined) {\n if (isStaticChildren) {\n if (isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n validateChildKeys(children[i], type);\n }\n\n if (Object.freeze) {\n Object.freeze(children);\n }\n } else {\n error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.');\n }\n } else {\n validateChildKeys(children, type);\n }\n }\n }\n\n {\n if (hasOwnProperty.call(props, 'key')) {\n var componentName = getComponentNameFromType(type);\n var keys = Object.keys(props).filter(function (k) {\n return k !== 'key';\n });\n var beforeExample = keys.length > 0 ? '{key: someKey, ' + keys.join(': ..., ') + ': ...}' : '{key: someKey}';\n\n if (!didWarnAboutKeySpread[componentName + beforeExample]) {\n var afterExample = keys.length > 0 ? '{' + keys.join(': ..., ') + ': ...}' : '{}';\n\n error('A props object containing a \"key\" prop is being spread into JSX:\\n' + ' let props = %s;\\n' + ' <%s {...props} />\\n' + 'React keys must be passed directly to JSX without using spread:\\n' + ' let props = %s;\\n' + ' <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName);\n\n didWarnAboutKeySpread[componentName + beforeExample] = true;\n }\n }\n }\n\n if (type === REACT_FRAGMENT_TYPE) {\n validateFragmentProps(element);\n } else {\n validatePropTypes(element);\n }\n\n return element;\n }\n} // These two functions exist to still get child warnings in dev\n// even with the prod transform. This means that jsxDEV is purely\n// opt-in behavior for better messages but that we won't stop\n// giving you warnings if you use production apis.\n\nfunction jsxWithValidationStatic(type, props, key) {\n {\n return jsxWithValidation(type, props, key, true);\n }\n}\nfunction jsxWithValidationDynamic(type, props, key) {\n {\n return jsxWithValidation(type, props, key, false);\n }\n}\n\nvar jsx = jsxWithValidationDynamic ; // we may want to special case jsxs internally to take advantage of static children.\n// for now we can ship identical prod functions\n\nvar jsxs = jsxWithValidationStatic ;\n\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsx;\nexports.jsxs = jsxs;\n })();\n}\n", "'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"ABAP\\\",\\\"fileTypes\\\":[\\\"abap\\\",\\\"ABAP\\\"],\\\"foldingStartMarker\\\":\\\"/\\\\\\\\*\\\\\\\\*|\\\\\\\\{\\\\\\\\s*$\\\",\\\"foldingStopMarker\\\":\\\"\\\\\\\\*\\\\\\\\*/|^\\\\\\\\s*\\\\\\\\}\\\",\\\"name\\\":\\\"abap\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.abap\\\"}},\\\"match\\\":\\\"^\\\\\\\\*.*\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.full.abap\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.abap\\\"}},\\\"match\\\":\\\"\\\\\\\".*\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.partial.abap\\\"},{\\\"match\\\":\\\"(?<![^\\\\\\\\s])##.*?(?=([\\\\\\\\.:,\\\\\\\\s]))\\\",\\\"name\\\":\\\"comment.line.pragma.abap\\\"},{\\\"match\\\":\\\"(?i)(?<=(?:\\\\\\\\s|~|-))(?<=(?:->|=>))([a-z_\\\\\\\\/][a-z_0-9\\\\\\\\/]*)(?=\\\\\\\\s+(?:=|\\\\\\\\+=|-=|\\\\\\\\*=|\\\\\\\\/=|&&=|&=)\\\\\\\\s+)\\\",\\\"name\\\":\\\"variable.other.abap\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9]+(\\\\\\\\b|\\\\\\\\.|,)\\\",\\\"name\\\":\\\"constant.numeric.abap\\\"},{\\\"match\\\":\\\"(?ix)(^|\\\\\\\\s+)((PUBLIC|PRIVATE|PROTECTED)\\\\\\\\sSECTION)(?=\\\\\\\\s+|:|\\\\\\\\.)\\\",\\\"name\\\":\\\"storage.modifier.class.abap\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\|)(.*?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.abap\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\||(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.abap\\\"}},\\\"name\\\":\\\"string.interpolated.abap\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"({ )|( })\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\|\\\",\\\"name\\\":\\\"constant.character.escape.abap\\\"},{\\\"match\\\":\\\"(?ix)(?<=\\\\\\\\s)(align|alpha|case|country|currency|date|decimals|exponent|number|pad|sign|style|time|timestamp|timezone|width|xsd|zero)(?=\\\\\\\\s\\\\\\\\=)\\\",\\\"name\\\":\\\"entity.name.property.stringtemplate.abap\\\"},{\\\"match\\\":\\\"(?ix)(?<=\\\\\\\\=\\\\\\\\s)(center|engineering|environment|in|iso|left|leftplus|leftspace|lower|no|out|raw|right|rightplus|rightspace|scale_preserving|scale_preserving_scientific|scientific|scientific_with_leading_zero|sign_as_postfix|simple|space|upper|user|yes)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"entity.value.property.stringtemplate.abap\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.abap\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"''\\\",\\\"name\\\":\\\"constant.character.escape.abap\\\"}]},{\\\"begin\\\":\\\"`\\\",\\\"end\\\":\\\"`\\\",\\\"name\\\":\\\"string.quoted.single.abap\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"``\\\",\\\"name\\\":\\\"constant.character.escape.abap\\\"}]},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(class)\\\\\\\\s([a-z_\\\\\\\\/][a-z_0-9\\\\\\\\/]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.block.abap\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.block.abap\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\.\\\\\\\\s*\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.block.begin.implementation.abap\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?ix)(^|\\\\\\\\s+)(definition|implementation|public|inheriting\\\\\\\\s+from|final|deferred|abstract|shared\\\\\\\\s+memory\\\\\\\\s+enabled|(global|local)*\\\\\\\\s*friends|(create\\\\\\\\s+(public|protected|private))|for\\\\\\\\s+behavior\\\\\\\\s+of|for\\\\\\\\s+testing|risk\\\\\\\\s+level\\\\\\\\s+(critical|dangerous|harmless))|duration\\\\\\\\s(short|medium|long)(?=\\\\\\\\s+|\\\\\\\\.)\\\",\\\"name\\\":\\\"storage.modifier.class.abap\\\"},{\\\"begin\\\":\\\"(?=[A-Za-z_][A-Za-z0-9_]*)\\\",\\\"contentName\\\":\\\"entity.name.type.block.abap\\\",\\\"end\\\":\\\"(?![A-Za-z0-9_])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#generic_names\\\"}]}]},{\\\"begin\\\":\\\"(?ix)^\\\\\\\\s*(method)\\\\\\\\s(?:([a-z_\\\\\\\\/][a-z_0-9\\\\\\\\/]*)~)?([a-z_\\\\\\\\/][a-z_0-9\\\\\\\\/]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.block.abap\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.abap\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.abap\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\.\\\\\\\\s*\\\\\\\\n?\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?ix)(?<=^|\\\\\\\\s)(BY\\\\\\\\s+DATABASE(\\\\\\\\s+PROCEDURE|\\\\\\\\s+FUNCTION|\\\\\\\\s+GRAPH\\\\\\\\s+WORKSPACE)|BY\\\\\\\\s+KERNEL\\\\\\\\s+MODULE)(?=\\\\\\\\s+|\\\\\\\\.)\\\",\\\"name\\\":\\\"storage.modifier.method.abap\\\"},{\\\"match\\\":\\\"(?ix)(?<=^|\\\\\\\\s)(FOR\\\\\\\\s+(HDB|LLANG))(?=\\\\\\\\s+|\\\\\\\\.)\\\",\\\"name\\\":\\\"storage.modifier.method.abap\\\"},{\\\"match\\\":\\\"(?ix)(?<=\\\\\\\\s)(OPTIONS\\\\\\\\s+(READ-ONLY|DETERMINISTIC|SUPPRESS\\\\\\\\s+SYNTAX\\\\\\\\s+ERRORS))(?=\\\\\\\\s+|\\\\\\\\.)\\\",\\\"name\\\":\\\"storage.modifier.method.abap\\\"},{\\\"match\\\":\\\"(?ix)(?<=^|\\\\\\\\s)(LANGUAGE\\\\\\\\s+(SQLSCRIPT|SQL|GRAPH))(?=\\\\\\\\s+|\\\\\\\\.)\\\",\\\"name\\\":\\\"storage.modifier.method.abap\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.method.abap\\\"}},\\\"match\\\":\\\"(?ix)(?<=\\\\\\\\s)(USING)\\\\\\\\s+([a-z_\\\\\\\\/][a-z_0-9\\\\\\\\/=\\\\\\\\>]*)+(?=\\\\\\\\s+|\\\\\\\\.)\\\"},{\\\"begin\\\":\\\"(?=[A-Za-z_][A-Za-z0-9_]*)\\\",\\\"end\\\":\\\"(?![A-Za-z0-9_])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#generic_names\\\"}]}]},{\\\"begin\\\":\\\"(?ix)^\\\\\\\\s*(INTERFACE)\\\\\\\\s([a-z_\\\\\\\\/][a-z_0-9\\\\\\\\/]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.block.abap\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.abap\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\.\\\\\\\\s*\\\\\\\\n?\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?ix)(?<=^|\\\\\\\\s)(DEFERRED|PUBLIC)(?=\\\\\\\\s+|\\\\\\\\.)\\\",\\\"name\\\":\\\"storage.modifier.method.abap\\\"}]},{\\\"begin\\\":\\\"(?ix)^\\\\\\\\s*(FORM)\\\\\\\\s([a-z_\\\\\\\\/][a-z_0-9\\\\\\\\/\\\\\\\\-\\\\\\\\?]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.block.abap\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.abap\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\.\\\\\\\\s*\\\\\\\\n?\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?ix)(?<=^|\\\\\\\\s)(USING|TABLES|CHANGING|RAISING|IMPLEMENTATION|DEFINITION)(?=\\\\\\\\s+|\\\\\\\\.)\\\",\\\"name\\\":\\\"storage.modifier.form.abap\\\"},{\\\"include\\\":\\\"#abaptypes\\\"},{\\\"include\\\":\\\"#keywords_followed_by_braces\\\"}]},{\\\"match\\\":\\\"(?i)(endclass|endmethod|endform|endinterface)\\\",\\\"name\\\":\\\"storage.type.block.end.abap\\\"},{\\\"match\\\":\\\"(?i)(<[A-Za-z_][A-Za-z0-9_]*>)\\\",\\\"name\\\":\\\"variable.other.field.symbol.abap\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#abap_constants\\\"},{\\\"include\\\":\\\"#reserved_names\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#builtin_functions\\\"},{\\\"include\\\":\\\"#abaptypes\\\"},{\\\"include\\\":\\\"#system_fields\\\"},{\\\"include\\\":\\\"#sql_functions\\\"},{\\\"include\\\":\\\"#sql_types\\\"}],\\\"repository\\\":{\\\"abap_constants\\\":{\\\"match\\\":\\\"(?ix)(?<=\\\\\\\\s)(initial|null|@?space|@?abap_true|@?abap_false|@?abap_undefined|table_line|\\\\n %_final|%_hints|%_predefined|col_background|col_group|col_heading|col_key|col_negative|col_normal|col_positive|col_total|\\\\n\\\\t\\\\t\\\\t\\\\tadabas|as400|db2|db6|hdb|oracle|sybase|mssqlnt|pos_low|pos_high)(?=\\\\\\\\s|\\\\\\\\.|,)\\\",\\\"name\\\":\\\"constant.language.abap\\\"},\\\"abaptypes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?ix)\\\\\\\\s(abap_bool|string|xstring|any|clike|csequence|numeric|xsequence|decfloat|decfloat16|decfloat34|utclong|simple|int8|c|n|i|p|f|d|t|x)(?=\\\\\\\\s|\\\\\\\\.|,)\\\",\\\"name\\\":\\\"support.type.abap\\\"},{\\\"match\\\":\\\"(?ix)\\\\\\\\s(TYPE|REF|TO|LIKE|LINE|OF|STRUCTURE|STANDARD|SORTED|HASHED|INDEX|TABLE|WITH|UNIQUE|NON-UNIQUE|SECONDARY|DEFAULT|KEY)(?=\\\\\\\\s|\\\\\\\\.|,)\\\",\\\"name\\\":\\\"keyword.control.simple.abap\\\"}]},\\\"arithmetic_operator\\\":{\\\"match\\\":\\\"(?i)(?<=\\\\\\\\s)(\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\*\\\\\\\\*|\\\\\\\\/|%|DIV|MOD|BIT-AND|BIT-OR|BIT-XOR|BIT-NOT)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.control.simple.abap\\\"},\\\"builtin_functions\\\":{\\\"match\\\":\\\"(?ix)(?<=\\\\\\\\s)(abs|sign|ceil|floor|trunc|frac|acos|asin|atan|cos|sin|tan|cosh|sinh|tanh|exp|log|log10|sqrt|strlen|xstrlen|charlen|lines|numofchar|dbmaxlen|round|rescale|nmax|nmin|cmax|cmin|boolc|boolx|xsdbool|contains|contains_any_of|contains_any_not_of|matches|line_exists|ipow|char_off|count|count_any_of|count_any_not_of|distance|condense|concat_lines_of|escape|find|find_end|find_any_of|find_any_not_of|insert|match|repeat|replace|reverse|segment|shift_left|shift_right|substring|substring_after|substring_from|substring_before|substring_to|to_upper|to_lower|to_mixed|from_mixed|translate|bit-set|line_index)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.builtin.abap\\\"},\\\"comparison_operator\\\":{\\\"match\\\":\\\"(?i)(?<=\\\\\\\\s)(<|>|<\\\\\\\\=|>\\\\\\\\=|\\\\\\\\=|<>|eq|ne|lt|le|gt|ge|cs|cp|co|cn|ca|na|ns|np|byte-co|byte-cn|byte-ca|byte-na|byte-cs|byte-ns|o|z|m)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.control.simple.abap\\\"},\\\"control_keywords\\\":{\\\"match\\\":\\\"(?ix)(^|\\\\\\\\s)(\\\\n\\\\t at|case|catch|continue|do|elseif|else|endat|endcase|endcatch|enddo|endif|\\\\n\\\\t endloop|endon|endtry|endwhile|if|loop|on|raise|try|while)(?=\\\\\\\\s|\\\\\\\\.|:)\\\",\\\"name\\\":\\\"keyword.control.flow.abap\\\"},\\\"generic_names\\\":{\\\"match\\\":\\\"[A-Za-z_][A-Za-z0-9_]*\\\"},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#main_keywords\\\"},{\\\"include\\\":\\\"#text_symbols\\\"},{\\\"include\\\":\\\"#control_keywords\\\"},{\\\"include\\\":\\\"#keywords_followed_by_braces\\\"}]},\\\"keywords_followed_by_braces\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.simple.abap\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.abap\\\"}},\\\"match\\\":\\\"(?ix)\\\\\\\\b(data|value|field-symbol|final|reference|resumable)\\\\\\\\((<?[a-z_\\\\\\\\/][a-z_0-9\\\\\\\\/]*>?)\\\\\\\\)\\\"},\\\"logical_operator\\\":{\\\"match\\\":\\\"(?i)(?<=\\\\\\\\s)(not|or|and)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.control.simple.abap\\\"},\\\"main_keywords\\\":{\\\"match\\\":\\\"(?ix)(?<=^|\\\\\\\\s)(\\\\nabap-source|\\\\nabstract|\\\\naccept|\\\\naccepting|\\\\naccess|\\\\naccording|\\\\naction|\\\\nactivation|\\\\nactual|\\\\nadd|\\\\nadd-corresponding|\\\\nadjacent|\\\\nafter|\\\\nalias|\\\\naliases|\\\\nall|\\\\nallocate|\\\\namdp|\\\\nanalysis|\\\\nanalyzer|\\\\nappend|\\\\nappending|\\\\napplication|\\\\narchive|\\\\narea|\\\\narithmetic|\\\\nas|\\\\nascending|\\\\nassert|\\\\nassign|\\\\nassigned|\\\\nassigning|\\\\nassociation|\\\\nasynchronous|\\\\nat|\\\\nattributes|\\\\nauthority|\\\\nauthority-check|\\\\nauthorization|\\\\nauto|\\\\nback|\\\\nbackground|\\\\nbackward|\\\\nbadi|\\\\nbase|\\\\nbefore|\\\\nbegin|\\\\nbehavior|\\\\nbetween|\\\\nbinary|\\\\nbit|\\\\nblank|\\\\nblanks|\\\\nblock|\\\\nblocks|\\\\nbound|\\\\nboundaries|\\\\nbounds|\\\\nboxed|\\\\nbreak|\\\\nbreak-point|\\\\nbuffer|\\\\nby|\\\\nbypassing|\\\\nbyte|\\\\nbyte-order|\\\\ncall|\\\\ncalling|\\\\ncast|\\\\ncasting|\\\\ncds|\\\\ncentered|\\\\nchange|\\\\nchanging|\\\\nchannels|\\\\nchar-to-hex|\\\\ncharacter|\\\\ncheck|\\\\ncheckbox|\\\\ncid|\\\\ncircular|\\\\nclass|\\\\nclass-data|\\\\nclass-events|\\\\nclass-method|\\\\nclass-methods|\\\\nclass-pool|\\\\ncleanup|\\\\nclear|\\\\nclient|\\\\nclients|\\\\nclock|\\\\nclone|\\\\nclose|\\\\ncnt|\\\\ncode|\\\\ncollect|\\\\ncolor|\\\\ncolumn|\\\\ncomment|\\\\ncomments|\\\\ncommit|\\\\ncommon|\\\\ncommunication|\\\\ncomparing|\\\\ncomponent|\\\\ncomponents|\\\\ncompression|\\\\ncompute|\\\\nconcatenate|\\\\ncond|\\\\ncondense|\\\\ncondition|\\\\nconnection|\\\\nconstant|\\\\nconstants|\\\\ncontext|\\\\ncontexts|\\\\ncontrol|\\\\ncontrols|\\\\nconv|\\\\nconversion|\\\\nconvert|\\\\ncopy|\\\\ncorresponding|\\\\ncount|\\\\ncountry|\\\\ncover|\\\\ncreate|\\\\ncurrency|\\\\ncurrent|\\\\ncursor|\\\\ncustomer-function|\\\\ndata|\\\\ndatabase|\\\\ndatainfo|\\\\ndataset|\\\\ndate|\\\\ndaylight|\\\\nddl|\\\\ndeallocate|\\\\ndecimals|\\\\ndeclarations|\\\\ndeep|\\\\ndefault|\\\\ndeferred|\\\\ndefine|\\\\ndelete|\\\\ndeleting|\\\\ndemand|\\\\ndescending|\\\\ndescribe|\\\\ndestination|\\\\ndetail|\\\\ndetermine|\\\\ndialog|\\\\ndid|\\\\ndirectory|\\\\ndiscarding|\\\\ndisplay|\\\\ndisplay-mode|\\\\ndistance|\\\\ndistinct|\\\\ndivide|\\\\ndivide-corresponding|\\\\ndummy|\\\\nduplicate|\\\\nduplicates|\\\\nduration|\\\\nduring|\\\\ndynpro|\\\\nedit|\\\\neditor-call|\\\\nempty|\\\\nenabled|\\\\nenabling|\\\\nencoding|\\\\nend|\\\\nend-enhancement-section|\\\\nend-of-definition|\\\\nend-of-page|\\\\nend-of-selection|\\\\nend-test-injection|\\\\nend-test-seam|\\\\nendenhancement|\\\\nendexec|\\\\nendfunction|\\\\nendian|\\\\nending|\\\\nendmodule|\\\\nendprovide|\\\\nendselect|\\\\nendwith|\\\\nenhancement|\\\\nenhancement-point|\\\\nenhancement-section|\\\\nenhancements|\\\\nentities|\\\\nentity|\\\\nentries|\\\\nentry|\\\\nenum|\\\\nequiv|\\\\nerrors|\\\\nescape|\\\\nescaping|\\\\nevent|\\\\nevents|\\\\nexact|\\\\nexcept|\\\\nexception|\\\\nexception-table|\\\\nexceptions|\\\\nexcluding|\\\\nexec|\\\\nexecute|\\\\nexists|\\\\nexit|\\\\nexit-command|\\\\nexpanding|\\\\nexplicit|\\\\nexponent|\\\\nexport|\\\\nexporting|\\\\nextended|\\\\nextension|\\\\nextract|\\\\nfail|\\\\nfailed|\\\\nfeatures|\\\\nfetch|\\\\nfield|\\\\nfield-groups|\\\\nfield-symbols|\\\\nfields|\\\\nfile|\\\\nfill|\\\\nfilter|\\\\nfilters|\\\\nfinal|\\\\nfind|\\\\nfirst|\\\\nfirst-line|\\\\nfixed-point|\\\\nflush|\\\\nfollowing|\\\\nfor|\\\\nformat|\\\\nforward|\\\\nfound|\\\\nframe|\\\\nframes|\\\\nfree|\\\\nfrom|\\\\nfull|\\\\nfunction|\\\\nfunction-pool|\\\\ngenerate|\\\\nget|\\\\ngiving|\\\\ngraph|\\\\ngroup|\\\\ngroups|\\\\nhandle|\\\\nhandler|\\\\nhashed|\\\\nhaving|\\\\nheader|\\\\nheaders|\\\\nheading|\\\\nhelp-id|\\\\nhelp-request|\\\\nhide|\\\\nhint|\\\\nhold|\\\\nhotspot|\\\\nicon|\\\\nid|\\\\nidentification|\\\\nidentifier|\\\\nignore|\\\\nignoring|\\\\nimmediately|\\\\nimplemented|\\\\nimplicit|\\\\nimport|\\\\nimporting|\\\\nin|\\\\ninactive|\\\\nincl|\\\\ninclude|\\\\nincludes|\\\\nincluding|\\\\nincrement|\\\\nindex|\\\\nindex-line|\\\\nindicators|\\\\ninfotypes|\\\\ninheriting|\\\\ninit|\\\\ninitial|\\\\ninitialization|\\\\ninner|\\\\ninput|\\\\ninsert|\\\\ninstance|\\\\ninstances|\\\\nintensified|\\\\ninterface|\\\\ninterface-pool|\\\\ninterfaces|\\\\ninternal|\\\\nintervals|\\\\ninto|\\\\ninverse|\\\\ninverted-date|\\\\nis|\\\\njob|\\\\njoin|\\\\nkeep|\\\\nkeeping|\\\\nkernel|\\\\nkey|\\\\nkeys|\\\\nkeywords|\\\\nkind|\\\\nlanguage|\\\\nlast|\\\\nlate|\\\\nlayout|\\\\nleading|\\\\nleave|\\\\nleft|\\\\nleft-justified|\\\\nlegacy|\\\\nlength|\\\\nlet|\\\\nlevel|\\\\nlevels|\\\\nlike|\\\\nline|\\\\nline-count|\\\\nline-selection|\\\\nline-size|\\\\nlinefeed|\\\\nlines|\\\\nlink|\\\\nlist|\\\\nlist-processing|\\\\nlistbox|\\\\nload|\\\\nload-of-program|\\\\nlocal|\\\\nlocale|\\\\nlock|\\\\nlocks|\\\\nlog-point|\\\\nlogical|\\\\nlower|\\\\nmapped|\\\\nmapping|\\\\nmargin|\\\\nmark|\\\\nmask|\\\\nmatch|\\\\nmatchcode|\\\\nmaximum|\\\\nmembers|\\\\nmemory|\\\\nmesh|\\\\nmessage|\\\\nmessage-id|\\\\nmessages|\\\\nmessaging|\\\\nmethod|\\\\nmethods|\\\\nmode|\\\\nmodif|\\\\nmodifier|\\\\nmodify|\\\\nmodule|\\\\nmove|\\\\nmove-corresponding|\\\\nmultiply|\\\\nmultiply-corresponding|\\\\nname|\\\\nnametab|\\\\nnative|\\\\nnested|\\\\nnesting|\\\\nnew|\\\\nnew-line|\\\\nnew-page|\\\\nnew-section|\\\\nnext|\\\\nno-display|\\\\nno-extension|\\\\nno-gap|\\\\nno-gaps|\\\\nno-grouping|\\\\nno-heading|\\\\nno-scrolling|\\\\nno-sign|\\\\nno-title|\\\\nno-zero|\\\\nnodes|\\\\nnon-unicode|\\\\nnon-unique|\\\\nnumber|\\\\nobject|\\\\nobjects|\\\\nobjmgr|\\\\nobligatory|\\\\noccurence|\\\\noccurences|\\\\noccurrence|\\\\noccurrences|\\\\noccurs|\\\\nof|\\\\noffset|\\\\non|\\\\nonly|\\\\nopen|\\\\noptional|\\\\noption|\\\\noptions|\\\\norder|\\\\nothers|\\\\nout|\\\\nouter|\\\\noutput|\\\\noutput-length|\\\\noverflow|\\\\noverlay|\\\\npack|\\\\npackage|\\\\npadding|\\\\npage|\\\\nparameter|\\\\nparameter-table|\\\\nparameters|\\\\npart|\\\\npartially|\\\\npcre|\\\\nperform|\\\\nperforming|\\\\npermissions|\\\\npf-status|\\\\nplaces|\\\\npool|\\\\nposition|\\\\npragmas|\\\\npreceding|\\\\nprecompiled|\\\\npreferred|\\\\npreserving|\\\\nprimary|\\\\nprint|\\\\nprint-control|\\\\nprivate|\\\\nprivileged|\\\\nprocedure|\\\\nprocess|\\\\nprogram|\\\\nproperty|\\\\nprotected|\\\\nprovide|\\\\npush|\\\\npushbutton|\\\\nput|\\\\nquery|\\\\nqueue-only|\\\\nqueueonly|\\\\nquickinfo|\\\\nradiobutton|\\\\nraising|\\\\nrange|\\\\nranges|\\\\nread|\\\\nread-only|\\\\nreceive|\\\\nreceived|\\\\nreceiving|\\\\nredefinition|\\\\nreduce|\\\\nref|\\\\nreference|\\\\nrefresh|\\\\nregex|\\\\nreject|\\\\nrenaming|\\\\nreplace|\\\\nreplacement|\\\\nreplacing|\\\\nreport|\\\\nreported|\\\\nrequest|\\\\nrequested|\\\\nrequired|\\\\nreserve|\\\\nreset|\\\\nresolution|\\\\nrespecting|\\\\nresponse|\\\\nrestore|\\\\nresult|\\\\nresults|\\\\nresumable|\\\\nresume|\\\\nretry|\\\\nreturn|\\\\nreturning|\\\\nright|\\\\nright-justified|\\\\nrollback|\\\\nrows|\\\\nrp-provide-from-last|\\\\nrun|\\\\nsap|\\\\nsap-spool|\\\\nsave|\\\\nsaving|\\\\nscan|\\\\nscreen|\\\\nscroll|\\\\nscroll-boundary|\\\\nscrolling|\\\\nsearch|\\\\nseconds|\\\\nsection|\\\\nselect|\\\\nselect-options|\\\\nselection|\\\\nselection-screen|\\\\nselection-set|\\\\nselection-sets|\\\\nselection-table|\\\\nselections|\\\\nsend|\\\\nseparate|\\\\nseparated|\\\\nsession|\\\\nset|\\\\nshared|\\\\nshift|\\\\nshortdump|\\\\nshortdump-id|\\\\nsign|\\\\nsimple|\\\\nsimulation|\\\\nsingle|\\\\nsize|\\\\nskip|\\\\nskipping|\\\\nsmart|\\\\nsome|\\\\nsort|\\\\nsortable|\\\\nsorted|\\\\nsource|\\\\nspecified|\\\\nsplit|\\\\nspool|\\\\nspots|\\\\nsql|\\\\nstable|\\\\nstamp|\\\\nstandard|\\\\nstart-of-selection|\\\\nstarting|\\\\nstate|\\\\nstatement|\\\\nstatements|\\\\nstatic|\\\\nstatics|\\\\nstatusinfo|\\\\nstep|\\\\nstep-loop|\\\\nstop|\\\\nstructure|\\\\nstructures|\\\\nstyle|\\\\nsubkey|\\\\nsubmatches|\\\\nsubmit|\\\\nsubroutine|\\\\nsubscreen|\\\\nsubstring|\\\\nsubtract|\\\\nsubtract-corresponding|\\\\nsuffix|\\\\nsum|\\\\nsummary|\\\\nsupplied|\\\\nsupply|\\\\nsuppress|\\\\nswitch|\\\\nsymbol|\\\\nsyntax-check|\\\\nsyntax-trace|\\\\nsystem-call|\\\\nsystem-exceptions|\\\\ntab|\\\\ntabbed|\\\\ntable|\\\\ntables|\\\\ntableview|\\\\ntabstrip|\\\\ntarget|\\\\ntask|\\\\ntasks|\\\\ntest|\\\\ntest-injection|\\\\ntest-seam|\\\\ntesting|\\\\ntext|\\\\ntextpool|\\\\nthen|\\\\nthrow|\\\\ntime|\\\\ntimes|\\\\ntitle|\\\\ntitlebar|\\\\nto|\\\\ntokens|\\\\ntop-lines|\\\\ntop-of-page|\\\\ntrace-file|\\\\ntrace-table|\\\\ntrailing|\\\\ntransaction|\\\\ntransfer|\\\\ntransformation|\\\\ntranslate|\\\\ntransporting|\\\\ntrmac|\\\\ntruncate|\\\\ntruncation|\\\\ntype|\\\\ntype-pool|\\\\ntype-pools|\\\\ntypes|\\\\nuline|\\\\nunassign|\\\\nunbounded|\\\\nunder|\\\\nunicode|\\\\nunion|\\\\nunique|\\\\nunit|\\\\nunix|\\\\nunpack|\\\\nuntil|\\\\nunwind|\\\\nup|\\\\nupdate|\\\\nupper|\\\\nuser|\\\\nuser-command|\\\\nusing|\\\\nutf-8|\\\\nuuid|\\\\nvalid|\\\\nvalidate|\\\\nvalue|\\\\nvalue-request|\\\\nvalues|\\\\nvary|\\\\nvarying|\\\\nversion|\\\\nvia|\\\\nvisible|\\\\nwait|\\\\nwhen|\\\\nwhere|\\\\nwindow|\\\\nwindows|\\\\nwith|\\\\nwith-heading|\\\\nwith-title|\\\\nwithout|\\\\nword|\\\\nwork|\\\\nworkspace|\\\\nwrite|\\\\nxml|\\\\nzone\\\\n\\\\t\\\\t \\\\t)(?=\\\\\\\\s|\\\\\\\\.|:|,)\\\",\\\"name\\\":\\\"keyword.control.simple.abap\\\"},\\\"operators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#other_operator\\\"},{\\\"include\\\":\\\"#arithmetic_operator\\\"},{\\\"include\\\":\\\"#comparison_operator\\\"},{\\\"include\\\":\\\"#logical_operator\\\"}]},\\\"other_operator\\\":{\\\"match\\\":\\\"(?<=\\\\\\\\s)(&&|&|\\\\\\\\?=|\\\\\\\\+=|-=|\\\\\\\\/=|\\\\\\\\*=|&&=|&=)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.control.simple.abap\\\"},\\\"reserved_names\\\":{\\\"match\\\":\\\"(?ix)(?<=\\\\\\\\s)(me|super)(?=\\\\\\\\s|\\\\\\\\.|,|->)\\\",\\\"name\\\":\\\"constant.language.abap\\\"},\\\"sql_functions\\\":{\\\"match\\\":\\\"(?ix)(?<=\\\\\\\\s)(\\\\nabap_system_timezone|\\\\nabap_user_timezone|\\\\nabs|\\\\nadd_days|\\\\nadd_months|\\\\nallow_precision_loss|\\\\nas_geo_json|\\\\navg|\\\\nbintohex|\\\\ncast|\\\\nceil|\\\\ncoalesce|\\\\nconcat_with_space|\\\\nconcat|\\\\ncorr_spearman|\\\\ncorr|\\\\ncount|\\\\ncurrency_conversion|\\\\ndatn_add_days|\\\\ndatn_add_months|\\\\ndatn_days_between|\\\\ndats_add_days|\\\\ndats_add_months|\\\\ndats_days_between|\\\\ndats_from_datn|\\\\ndats_is_valid|\\\\ndats_tims_to_tstmp|\\\\ndats_to_datn|\\\\ndayname|\\\\ndays_between|\\\\ndense_rank|\\\\ndivision|\\\\ndiv|\\\\nextract_day|\\\\nextract_hour|\\\\nextract_minute|\\\\nextract_month|\\\\nextract_second|\\\\nextract_year|\\\\nfirst_value|\\\\nfloor|\\\\ngrouping|\\\\nhextobin|\\\\ninitcap|\\\\ninstr|\\\\nis_valid|\\\\nlag|\\\\nlast_value|\\\\nlead|\\\\nleft|\\\\nlength|\\\\nlike_regexpr|\\\\nlocate_regexpr_after|\\\\nlocate_regexpr|\\\\nlocate|\\\\nlower|\\\\nlpad|\\\\nltrim|\\\\nmax|\\\\nmedian|\\\\nmin|\\\\nmod|\\\\nmonthname|\\\\nntile|\\\\noccurrences_regexpr|\\\\nover|\\\\nproduct|\\\\nrank|\\\\nreplace_regexpr|\\\\nreplace|\\\\nrigth|\\\\nround|\\\\nrow_number|\\\\nrpad|\\\\nrtrim|\\\\nstddev|\\\\nstring_agg|\\\\nsubstring_regexpr|\\\\nsubstring|\\\\nsum|\\\\ntims_from_timn|\\\\ntims_is_valid|\\\\ntims_to_timn|\\\\nto_blob|\\\\nto_clob|\\\\ntstmp_add_seconds|\\\\ntstmp_current_utctimestamp|\\\\ntstmp_is_valid|\\\\ntstmp_seconds_between|\\\\ntstmp_to_dats|\\\\ntstmp_to_dst|\\\\ntstmp_to_tims|\\\\ntstmpl_from_utcl|\\\\ntstmpl_to_utcl|\\\\nunit_conversion|\\\\nupper|\\\\nutcl_add_seconds|\\\\nutcl_current|\\\\nutcl_seconds_between|\\\\nuuid|\\\\nvar|\\\\nweekday\\\\n )(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.sql.abap\\\"},\\\"sql_types\\\":{\\\"match\\\":\\\"(?ix)(?<=\\\\\\\\s)(char|clnt|cuky|curr|datn|dats|dec|decfloat16|decfloat34|fltp|int1|int2|int4|int8|lang|numc|quan|raw|sstring|timn|tims|unit|utclong)(?=\\\\\\\\s|\\\\\\\\(|\\\\\\\\))\\\",\\\"name\\\":\\\"entity.name.type.sql.abap\\\"},\\\"system_fields\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.language.abap\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.language.abap\\\"}},\\\"match\\\":\\\"(?ix)\\\\\\\\b(sy)-(abcde|batch|binpt|calld|callr|colno|cpage|cprog|cucol|curow|datar|datlo|datum|dayst|dbcnt|dbnam|dbsysc|dyngr|dynnr|fdayw|fdpos|host|index|langu|ldbpg|lilli|linct|linno|linsz|lisel|listi|loopc|lsind|macol|mandt|marow|modno|msgid|msgli|msgno|msgty|msgv[1-4]|opsysc|pagno|pfkey|repid|saprl|scols|slset|spono|srows|staco|staro|stepl|subrc|sysid|tabix|tcode|tfill|timlo|title|tleng|tvar[0-9]|tzone|ucomm|uline|uname|uzeit|vline|wtitl|zonlo)(?=\\\\\\\\.|\\\\\\\\s)\\\"},\\\"text_symbols\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.simple.abap\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.abap\\\"}},\\\"match\\\":\\\"(?ix)(?<=^|\\\\\\\\s)(text)-([A-Z0-9]{1,3})(?=\\\\\\\\s|\\\\\\\\.|:|,)\\\"}},\\\"scopeName\\\":\\\"source.abap\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"ActionScript\\\",\\\"fileTypes\\\":[\\\"as\\\"],\\\"name\\\":\\\"actionscript-3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#package\\\"},{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#interface\\\"},{\\\"include\\\":\\\"#namespace_declaration\\\"},{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#mxml\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#variable_declaration\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#primitive_types\\\"},{\\\"include\\\":\\\"#primitive_error_types\\\"},{\\\"include\\\":\\\"#dynamic_type\\\"},{\\\"include\\\":\\\"#primitive_functions\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#language_variables\\\"},{\\\"include\\\":\\\"#guess_type\\\"},{\\\"include\\\":\\\"#guess_constant\\\"},{\\\"include\\\":\\\"#other_operators\\\"},{\\\"include\\\":\\\"#arithmetic_operators\\\"},{\\\"include\\\":\\\"#logical_operators\\\"},{\\\"include\\\":\\\"#array_access_operators\\\"},{\\\"include\\\":\\\"#vector_creation_operators\\\"},{\\\"include\\\":\\\"#control_keywords\\\"},{\\\"include\\\":\\\"#other_keywords\\\"},{\\\"include\\\":\\\"#use_namespace\\\"},{\\\"include\\\":\\\"#functions\\\"}],\\\"repository\\\":{\\\"arithmetic_operators\\\":{\\\"match\\\":\\\"(\\\\\\\\+|\\\\\\\\-|/|%|(?<!:)\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.actionscript.3\\\"},\\\"array_access_operators\\\":{\\\"match\\\":\\\"(\\\\\\\\[|\\\\\\\\])\\\",\\\"name\\\":\\\"keyword.operator.actionscript.3\\\"},\\\"class\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\s+|;)(\\\\\\\\b(dynamic|final|abstract)\\\\\\\\b\\\\\\\\s+)?(\\\\\\\\b(internal|public)\\\\\\\\b\\\\\\\\s+)?(\\\\\\\\b(dynamic|final|abstract)\\\\\\\\b\\\\\\\\s+)?(?=\\\\\\\\bclass\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.class.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class_declaration\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#primitive_types\\\"},{\\\"include\\\":\\\"#primitive_error_types\\\"},{\\\"include\\\":\\\"#dynamic_type\\\"},{\\\"include\\\":\\\"#primitive_functions\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#language_variables\\\"},{\\\"include\\\":\\\"#other_operators\\\"},{\\\"include\\\":\\\"#other_keywords\\\"},{\\\"include\\\":\\\"#use_namespace\\\"},{\\\"include\\\":\\\"#guess_type\\\"},{\\\"include\\\":\\\"#guess_constant\\\"},{\\\"include\\\":\\\"#arithmetic_operators\\\"},{\\\"include\\\":\\\"#array_access_operators\\\"},{\\\"include\\\":\\\"#vector_creation_operators\\\"},{\\\"include\\\":\\\"#variable_declaration\\\"},{\\\"include\\\":\\\"#object_literal\\\"}]},\\\"class_declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\b(class)\\\\\\\\b\\\\\\\\s+([\\\\\\\\.\\\\\\\\w]+|\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.actionscript.3\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.actionscript.3\\\"}},\\\"end\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"meta.class_declaration.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#extends\\\"},{\\\"include\\\":\\\"#implements\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"code_block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.code_block.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code_block\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#variable_declaration\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#primitive_types\\\"},{\\\"include\\\":\\\"#primitive_error_types\\\"},{\\\"include\\\":\\\"#dynamic_type\\\"},{\\\"include\\\":\\\"#primitive_functions\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#language_variables\\\"},{\\\"include\\\":\\\"#guess_type\\\"},{\\\"include\\\":\\\"#guess_constant\\\"},{\\\"include\\\":\\\"#other_operators\\\"},{\\\"include\\\":\\\"#arithmetic_operators\\\"},{\\\"include\\\":\\\"#logical_operators\\\"},{\\\"include\\\":\\\"#array_access_operators\\\"},{\\\"include\\\":\\\"#vector_creation_operators\\\"},{\\\"include\\\":\\\"#control_keywords\\\"},{\\\"include\\\":\\\"#other_keywords\\\"},{\\\"include\\\":\\\"#use_namespace\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#import\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.actionscript.3\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"@(copy|default|eventType|example|exampleText|includeExample|inheritDoc|internal|param|private|return|see|since|throws)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.documentation.actionscript.3.asdoc\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.actionscript.3\\\"},{\\\"match\\\":\\\"//.*\\\",\\\"name\\\":\\\"comment.line.actionscript.3\\\"}]},\\\"control_keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(if|else|do|while|for|each|continue|return|switch|case|default|break|try|catch|finally|throw|with)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.actionscript.3\\\"},\\\"dynamic_type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.actionscript.3\\\"}},\\\"match\\\":\\\"(?<=:)\\\\\\\\s*(\\\\\\\\*)\\\"},\\\"escapes\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x\\\\\\\\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)\\\",\\\"name\\\":\\\"constant.character.escape.actionscript.3\\\"},\\\"extends\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.actionscript.3\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.inherited-class.actionscript.3\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.inherited-class.actionscript.3\\\"}},\\\"match\\\":\\\"\\\\\\\\b(extends)\\\\\\\\b\\\\\\\\s+([\\\\\\\\.\\\\\\\\w]+)\\\\\\\\s*(?:,\\\\\\\\s*([\\\\\\\\.\\\\\\\\w]+))*\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.extends.actionscript.3\\\"},\\\"function_arguments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.function_arguments.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"functions\\\":{\\\"begin\\\":\\\"\\\\\\\\b(function)\\\\\\\\b(?:\\\\\\\\s+\\\\\\\\b(get|set)\\\\\\\\b\\\\\\\\s+)?\\\\\\\\s*([a-zA-Z0-9_\\\\\\\\$]+\\\\\\\\b)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.actionscript.3\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.actionscript.3\\\"}},\\\"end\\\":\\\"($|;|(?=\\\\\\\\{))\\\",\\\"name\\\":\\\"meta.function.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_arguments\\\"},{\\\"include\\\":\\\"#return_type\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"guess_constant\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.actionscript.3\\\"}},\\\"comment\\\":\\\"Following convention, let's guess that anything in all caps/digits (possible underscores) is a constant.\\\",\\\"match\\\":\\\"\\\\\\\\b([A-Z\\\\\\\\$][A-Z0-9_]+)\\\\\\\\b\\\"},\\\"guess_type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.actionscript.3\\\"}},\\\"comment\\\":\\\"Following convention, let's guess that any word starting with one or more capital letters (that contains at least some lower-case letters so that constants aren't detected) refers to a class/type. May be fully-qualified.\\\",\\\"match\\\":\\\"\\\\\\\\b((?:[A-Za-z0-9_\\\\\\\\$]+\\\\\\\\.)*[A-Z][A-Z0-9]*[a-z]+[A-Za-z0-9_\\\\\\\\$]*)\\\\\\\\b\\\"},\\\"implements\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.actionscript.3\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.inherited-class.actionscript.3\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.inherited-class.actionscript.3\\\"}},\\\"match\\\":\\\"\\\\\\\\b(implements)\\\\\\\\b\\\\\\\\s+([\\\\\\\\.\\\\\\\\w]+)\\\\\\\\s*(?:,\\\\\\\\s*([\\\\\\\\.\\\\\\\\w]+))*\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.implements.actionscript.3\\\"},\\\"import\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.actionscript.3\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.actionscript.3\\\"}},\\\"match\\\":\\\"(^|\\\\\\\\s+|;)\\\\\\\\b(import)\\\\\\\\b\\\\\\\\s+([A-Za-z0-9\\\\\\\\$_\\\\\\\\.]+(?:\\\\\\\\.\\\\\\\\*)?)\\\\\\\\s*(?=;|$)\\\",\\\"name\\\":\\\"meta.import.actionscript.3\\\"},\\\"interface\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\s+|;)(\\\\\\\\b(internal|public)\\\\\\\\b\\\\\\\\s+)?(?=\\\\\\\\binterface\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.interface.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_declaration\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"interface_declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\b(interface)\\\\\\\\b\\\\\\\\s+([\\\\\\\\.\\\\\\\\w]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.interface.actionscript.3\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.actionscript.3\\\"}},\\\"end\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"meta.class_declaration.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#extends\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"language_constants\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false|null|Infinity|-Infinity|NaN|undefined)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.actionscript.3\\\"},\\\"language_variables\\\":{\\\"match\\\":\\\"\\\\\\\\b(super|this|arguments)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.actionscript.3\\\"},\\\"logical_operators\\\":{\\\"match\\\":\\\"(&|<|~|\\\\\\\\||>|\\\\\\\\^|!|\\\\\\\\?)\\\",\\\"name\\\":\\\"keyword.operator.actionscript.3\\\"},\\\"metadata\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\\\\\\s*\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.actionscript.3\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"meta.metadata_info.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#metadata_info\\\"}]},\\\"metadata_info\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.actionscript.3\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.actionscript.3\\\"}},\\\"match\\\":\\\"(\\\\\\\\w+)\\\\\\\\s*(=)\\\"}]},\\\"method\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\s+)((\\\\\\\\w+)\\\\\\\\s+)?((\\\\\\\\w+)\\\\\\\\s+)?((\\\\\\\\w+)\\\\\\\\s+)?((\\\\\\\\w+)\\\\\\\\s+)?(?=\\\\\\\\bfunction\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"},\\\"8\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"}},\\\"end\\\":\\\"(?<=(;|\\\\\\\\}))\\\",\\\"name\\\":\\\"meta.method.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#code_block\\\"}]},\\\"mxml\\\":{\\\"begin\\\":\\\"<!\\\\\\\\[CDATA\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\]>\\\",\\\"name\\\":\\\"meta.cdata.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#namespace_declaration\\\"},{\\\"include\\\":\\\"#use_namespace\\\"},{\\\"include\\\":\\\"#class_declaration\\\"},{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#primitive_types\\\"},{\\\"include\\\":\\\"#primitive_error_types\\\"},{\\\"include\\\":\\\"#dynamic_type\\\"},{\\\"include\\\":\\\"#primitive_functions\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#language_variables\\\"},{\\\"include\\\":\\\"#other_keywords\\\"},{\\\"include\\\":\\\"#guess_type\\\"},{\\\"include\\\":\\\"#guess_constant\\\"},{\\\"include\\\":\\\"#other_operators\\\"},{\\\"include\\\":\\\"#arithmetic_operators\\\"},{\\\"include\\\":\\\"#array_access_operators\\\"},{\\\"include\\\":\\\"#vector_creation_operators\\\"},{\\\"include\\\":\\\"#variable_declaration\\\"}]},\\\"namespace_declaration\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"}},\\\"match\\\":\\\"((\\\\\\\\w+)\\\\\\\\s+)?(namespace)\\\\\\\\s+(?:[A-Za-z0-9_\\\\\\\\$]+)\\\",\\\"name\\\":\\\"meta.namespace_declaration.actionscript.3\\\"},\\\"numbers\\\":{\\\"match\\\":\\\"\\\\\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\\\\\.?[0-9]*)|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.actionscript.3\\\"},\\\"object_literal\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.object_literal.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object_literal\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#primitive_types\\\"},{\\\"include\\\":\\\"#primitive_error_types\\\"},{\\\"include\\\":\\\"#dynamic_type\\\"},{\\\"include\\\":\\\"#primitive_functions\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#language_variables\\\"},{\\\"include\\\":\\\"#guess_type\\\"},{\\\"include\\\":\\\"#guess_constant\\\"},{\\\"include\\\":\\\"#array_access_operators\\\"},{\\\"include\\\":\\\"#vector_creation_operators\\\"},{\\\"include\\\":\\\"#functions\\\"}]},\\\"other_keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(as|delete|in|instanceof|is|native|new|to|typeof)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.actionscript.3\\\"},\\\"other_operators\\\":{\\\"match\\\":\\\"(\\\\\\\\.|=)\\\",\\\"name\\\":\\\"keyword.operator.actionscript.3\\\"},\\\"package\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\s+)(package)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.actionscript.3\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.package.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#package_name\\\"},{\\\"include\\\":\\\"#variable_declaration\\\"},{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#return_type\\\"},{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#use_namespace\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#interface\\\"},{\\\"include\\\":\\\"#namespace_declaration\\\"}]},\\\"package_name\\\":{\\\"begin\\\":\\\"(?<=package)\\\\\\\\s+([\\\\\\\\w\\\\\\\\._]*)\\\\\\\\b\\\",\\\"end\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"meta.package_name.actionscript.3\\\"},\\\"parameters\\\":{\\\"begin\\\":\\\"(\\\\\\\\.\\\\\\\\.\\\\\\\\.)?\\\\\\\\s*([A-Za-z\\\\\\\\_\\\\\\\\$][A-Za-z0-9_\\\\\\\\$]*)(?:\\\\\\\\s*(\\\\\\\\:)\\\\\\\\s*(?:(?:([A-Za-z\\\\\\\\$][A-Za-z0-9_\\\\\\\\$]+(?:\\\\\\\\.[A-Za-z\\\\\\\\$][A-Za-z0-9_\\\\\\\\$]+)*)(?:\\\\\\\\.<([A-Za-z\\\\\\\\$][A-Za-z0-9_\\\\\\\\$]+(?:\\\\\\\\.[A-Za-z\\\\\\\\$][A-Za-z0-9_\\\\\\\\$]+)*)>)?)|(\\\\\\\\*)))?(?:\\\\\\\\s*(=))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.actionscript.3\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.actionscript.3\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.actionscript.3\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type.actionscript.3\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.type.actionscript.3\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.type.actionscript.3\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.actionscript.3\\\"}},\\\"end\\\":\\\",|(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#primitive_types\\\"},{\\\"include\\\":\\\"#primitive_error_types\\\"},{\\\"include\\\":\\\"#dynamic_type\\\"},{\\\"include\\\":\\\"#guess_type\\\"},{\\\"include\\\":\\\"#guess_constant\\\"}]},\\\"primitive_error_types\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.error.actionscript.3\\\"}},\\\"match\\\":\\\"\\\\\\\\b((Argument|Definition|Eval|Internal|Range|Reference|Security|Syntax|Type|URI|Verify)?Error)\\\\\\\\b\\\"},\\\"primitive_functions\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.actionscript.3\\\"}},\\\"match\\\":\\\"\\\\\\\\b(decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|escape|isFinite|isNaN|isXMLName|parseFloat|parseInt|trace|unescape)(?=\\\\\\\\s*\\\\\\\\()\\\"},\\\"primitive_types\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.builtin.actionscript.3\\\"}},\\\"match\\\":\\\"\\\\\\\\b(Array|Boolean|Class|Date|Function|int|JSON|Math|Namespace|Number|Object|QName|RegExp|String|uint|Vector|XML|XMLList|\\\\\\\\*(?<=a))\\\\\\\\b\\\"},\\\"regexp\\\":{\\\"begin\\\":\\\"(?<=[=(:,\\\\\\\\[]|^|return|&&|\\\\\\\\|\\\\\\\\||!)\\\\\\\\s*(/)(?![/*+{}?])\\\",\\\"end\\\":\\\"$|(/)[igm]*\\\",\\\"name\\\":\\\"string.regex.actionscript.3\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.actionscript.3\\\"},{\\\"match\\\":\\\"\\\\\\\\[(\\\\\\\\\\\\\\\\\\\\\\\\]|[^\\\\\\\\]])*\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.class.actionscript.3\\\"}]},\\\"return_type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.actionscript.3\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.actionscript.3\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.actionscript.3\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type.actionscript.3\\\"}},\\\"match\\\":\\\"(\\\\\\\\:)\\\\\\\\s*(?:([A-Za-z\\\\\\\\$][A-Za-z0-9_\\\\\\\\$]+(?:\\\\\\\\.[A-Za-z\\\\\\\\$][A-Za-z0-9_\\\\\\\\$]+)*)(?:\\\\\\\\.<([A-Za-z\\\\\\\\$][A-Za-z0-9_\\\\\\\\$]+(?:\\\\\\\\.[A-Za-z\\\\\\\\$][A-Za-z0-9_\\\\\\\\$]+)*)>)?)|(\\\\\\\\*)\\\"},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"@\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.verbatim.actionscript.3\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.actionscript.3\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}]},\\\"use_namespace\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.actionscript.3\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.actionscript.3\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"}},\\\"match\\\":\\\"(^|\\\\\\\\s+|;)(use\\\\\\\\s+)?(namespace)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s*(;|$)\\\"},\\\"variable_declaration\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.modifier.actionscript.3\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.actionscript.3\\\"}},\\\"match\\\":\\\"((static)\\\\\\\\s+)?((\\\\\\\\w+)\\\\\\\\s+)?((static)\\\\\\\\s+)?(const|var)\\\\\\\\s+(?:[A-Za-z0-9_\\\\\\\\$]+)(?:\\\\\\\\s*(:))?\\\",\\\"name\\\":\\\"meta.variable_declaration.actionscript.3\\\"},\\\"vector_creation_operators\\\":{\\\"match\\\":\\\"(<|>)\\\",\\\"name\\\":\\\"keyword.operator.actionscript.3\\\"}},\\\"scopeName\\\":\\\"source.actionscript.3\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Ada\\\",\\\"name\\\":\\\"ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#library_unit\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#use_clause\\\"},{\\\"include\\\":\\\"#with_clause\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#keyword\\\"}],\\\"repository\\\":{\\\"abort_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\babort\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.abort.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.task.ada\\\"}]},\\\"accept_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(accept)\\\\\\\\s+((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.accept.ada\\\"}},\\\"end\\\":\\\"(?i)(?:\\\\\\\\b(end)\\\\\\\\s*(\\\\\\\\s\\\\\\\\2)?\\\\\\\\s*)?(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.accept.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.accept.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bdo\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=end)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]},{\\\"include\\\":\\\"#parameter_profile\\\"}]},\\\"access_definition\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.visibility.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.visibility.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.ada\\\"}},\\\"match\\\":\\\"(?i)(not\\\\\\\\s+null\\\\\\\\s+)?(access)\\\\\\\\s+(constant\\\\\\\\s+)?((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.declaration.access.definition.ada\\\"},\\\"access_type_definition\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(not\\\\\\\\s+null\\\\\\\\s+)?(access)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.visibility.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.visibility.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(with|;))\\\",\\\"name\\\":\\\"meta.declaration.type.definition.access.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\ball\\\\\\\\b\\\",\\\"name\\\":\\\"storage.visibility.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bconstant\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ada\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"}]},\\\"actual_parameter_part\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"include\\\":\\\"#parameter_association\\\"}]},\\\"adding_operator\\\":{\\\"match\\\":\\\"(\\\\\\\\+|-|\\\\\\\\&)\\\",\\\"name\\\":\\\"keyword.operator.adding.ada\\\"},\\\"array_aggregate\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.definition.array.aggregate.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"include\\\":\\\"#positional_array_aggregate\\\"},{\\\"include\\\":\\\"#array_component_association\\\"}]},\\\"array_component_association\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.name.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ada\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"<>\\\",\\\"name\\\":\\\"keyword.modifier.unknown.ada\\\"},{\\\"include\\\":\\\"#expression\\\"}]}},\\\"match\\\":\\\"(?i)\\\\\\\\b([^(=>)]*)\\\\\\\\s*(=>)\\\\\\\\s*([^,\\\\\\\\)]+)\\\",\\\"name\\\":\\\"meta.definition.array.aggregate.component.ada\\\"},\\\"array_dimensions\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.declaration.type.definition.array.dimensions.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\brange\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ada\\\"},{\\\"match\\\":\\\"<>\\\",\\\"name\\\":\\\"keyword.modifier.unknown.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"patterns\\\":[{\\\"include\\\":\\\"#subtype_mark\\\"}]}]},\\\"array_type_definition\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\barray\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(with|;))\\\",\\\"name\\\":\\\"meta.declaration.type.definition.array.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array_dimensions\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bof\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\baliased\\\\\\\\b\\\",\\\"name\\\":\\\"storage.visibility.ada\\\"},{\\\"include\\\":\\\"#access_definition\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"}]},\\\"aspect_clause\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(for)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#subtype_mark\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.aspect.clause.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\buse\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#record_representation_clause\\\"},{\\\"include\\\":\\\"#array_aggregate\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?i)(?<=for)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)(?=use)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#subtype_mark\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]}},\\\"match\\\":\\\"((?:\\\\\\\\w|\\\\\\\\d|_)+)('((?:\\\\\\\\w|\\\\\\\\d|_)+))?\\\"}]}]},\\\"aspect_definition\\\":{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(,|;|\\\\\\\\bis\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.aspect.definition.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"aspect_mark\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.attribute-name.ada\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)(?:(')(class))?\\\\\\\\b\\\",\\\"name\\\":\\\"meta.aspect.mark.ada\\\"},\\\"aspect_specification\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bwith\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(;|\\\\\\\\bis\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.aspect.specification.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(null)\\\\\\\\s+(record)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\brecord\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(record)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#component_item\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.visibility.ada\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\bprivate\\\\\\\\b\\\"},{\\\"include\\\":\\\"#aspect_definition\\\"},{\\\"include\\\":\\\"#aspect_mark\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"assignment_statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_|\\\\\\\\(|\\\\\\\\)|\\\\\\\"|'|\\\\\\\\s)+)\\\\\\\\s*(:=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\",\\\"name\\\":\\\"variable.name.ada\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.new.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.assignment.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.ada\\\"}},\\\"match\\\":\\\"(')((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.attribute.ada\\\"},\\\"based_literal\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.base.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.radix-point.ada\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.ada\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.base.ada\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#exponent_part\\\"}]}},\\\"match\\\":\\\"(?i)(\\\\\\\\d(?:(_)?\\\\\\\\d)*#)[0-9a-f](?:(_)?[0-9a-f])*(?:(\\\\\\\\.)[0-9a-f](?:(_)?[0-9a-f])*)?(#)([eE](?:\\\\\\\\+|\\\\\\\\-)?\\\\\\\\d(?:_?\\\\\\\\d)*)?\\\",\\\"name\\\":\\\"constant.numeric.ada\\\"},\\\"basic_declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type_declaration\\\"},{\\\"include\\\":\\\"#subtype_declaration\\\"},{\\\"include\\\":\\\"#exception_declaration\\\"},{\\\"include\\\":\\\"#object_declaration\\\"},{\\\"include\\\":\\\"#single_protected_declaration\\\"},{\\\"include\\\":\\\"#single_task_declaration\\\"},{\\\"include\\\":\\\"#subprogram_specification\\\"},{\\\"include\\\":\\\"#package_declaration\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"basic_declarative_item\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#basic_declaration\\\"},{\\\"include\\\":\\\"#aspect_clause\\\"},{\\\"include\\\":\\\"#use_clause\\\"},{\\\"include\\\":\\\"#keyword\\\"}]},\\\"block_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bdeclare\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)(\\\\\\\\s+(?:\\\\\\\\w|\\\\\\\\d|_)+)?\\\\\\\\s*(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.label.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.block.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?<=declare)\\\",\\\"end\\\":\\\"(?i)\\\\\\\\bbegin\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#body\\\"},{\\\"include\\\":\\\"#basic_declarative_item\\\"}]},{\\\"begin\\\":\\\"(?i)(?<=begin)\\\",\\\"end\\\":\\\"(?i)(?=end)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]}]},\\\"body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#subprogram_body\\\"},{\\\"include\\\":\\\"#package_body\\\"},{\\\"include\\\":\\\"#task_body\\\"},{\\\"include\\\":\\\"#protected_body\\\"}]},\\\"case_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bcase\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(case)\\\\\\\\s*(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.case.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?<=case)\\\\\\\\b\\\",\\\"end\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\bwhen\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"=>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.case.alternative.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bothers\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.modifier.unknown.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#statement\\\"}]},\\\"character_literal\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"'\\\",\\\"name\\\":\\\"punctuation.definition.string.ada\\\"}]}},\\\"match\\\":\\\"'.'\\\",\\\"name\\\":\\\"string.quoted.single.ada\\\"},\\\"comment\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor\\\"},{\\\"include\\\":\\\"#comment-section\\\"},{\\\"include\\\":\\\"#comment-doc\\\"},{\\\"include\\\":\\\"#comment-line\\\"}]},\\\"comment-doc\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.double-dash.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.ada\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.line.double-dash.ada\\\"}},\\\"match\\\":\\\"(--)\\\\\\\\s*(@)(\\\\\\\\w+)\\\\\\\\s+(.*)$\\\",\\\"name\\\":\\\"comment.block.documentation.ada\\\"},\\\"comment-line\\\":{\\\"match\\\":\\\"--.*$\\\",\\\"name\\\":\\\"comment.line.double-dash.ada\\\"},\\\"comment-section\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.section.ada\\\"}},\\\"match\\\":\\\"--\\\\\\\\s*([^-].*?[^-])\\\\\\\\s*--\\\\\\\\s*$\\\",\\\"name\\\":\\\"comment.line.double-dash.ada\\\"},\\\"component_clause\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.name.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.aspect.clause.record.representation.component.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bat\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=range)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#range_constraint\\\"}]},\\\"component_declaration\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|_)+(?:\\\\\\\\s*,\\\\\\\\s*(?:\\\\\\\\w|\\\\\\\\d|_)+)?)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w|\\\\\\\\d|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.name.ada\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.type.definition.record.component.ada\\\",\\\"patterns\\\":[{\\\"patterns\\\":[{\\\"match\\\":\\\":=\\\",\\\"name\\\":\\\"keyword.operator.new.ada\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#component_definition\\\"}]},\\\"component_definition\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\baliased\\\\\\\\b\\\",\\\"name\\\":\\\"storage.visibility.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\brange\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#access_definition\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"}]},\\\"component_item\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#component_declaration\\\"},{\\\"include\\\":\\\"#variant_part\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#aspect_clause\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(null)\\\\\\\\s*(;)\\\"}]},\\\"composite_constraint\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.declaration.constraint.composite.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.name.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ada\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}},\\\"match\\\":\\\"(?i)\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\s*(=>)\\\\\\\\s*([^,\\\\\\\\)])+\\\\\\\\b\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"decimal_literal\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.radix-point.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#exponent_part\\\"}]}},\\\"match\\\":\\\"\\\\\\\\d(?:(_)?\\\\\\\\d)*(?:(\\\\\\\\.)\\\\\\\\d(?:(_)?\\\\\\\\d)*)?([eE](?:\\\\\\\\+|\\\\\\\\-)?\\\\\\\\d(?:_?\\\\\\\\d)*)?\\\",\\\"name\\\":\\\"constant.numeric.ada\\\"},\\\"declarative_item\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#body\\\"},{\\\"include\\\":\\\"#basic_declarative_item\\\"}]},\\\"delay_relative_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(delay)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"delay_statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#delay_until_statement\\\"},{\\\"include\\\":\\\"#delay_relative_statement\\\"}]},\\\"delay_until_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(delay)\\\\\\\\s+(until)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.delay.until.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"derived_type_definition\\\":{\\\"name\\\":\\\"meta.declaration.type.definition.derived.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bnew\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(\\\\\\\\bwith\\\\\\\\b|;))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\band\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ada\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"}]},{\\\"match\\\":\\\"(?i)\\\\\\\\b(abstract|and|limited|tagged)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bprivate\\\\\\\\b\\\",\\\"name\\\":\\\"storage.visibility.ada\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"}]},\\\"discriminant_specification\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|_)+(?:\\\\\\\\s*,\\\\\\\\s*(?:\\\\\\\\w|\\\\\\\\d|_)+)?)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w|\\\\\\\\d|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.name.ada\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"(?=(;|\\\\\\\\)))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\":=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.new.ada\\\"}},\\\"end\\\":\\\"(?=(;|\\\\\\\\)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.visibility.ada\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#subtype_mark\\\"}]}},\\\"match\\\":\\\"(?i)(not\\\\\\\\s+null\\\\\\\\s+)?((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#access_definition\\\"}]},\\\"entry_body\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(entry)\\\\\\\\s+((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.entry.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s*(\\\\\\\\s\\\\\\\\2)\\\\\\\\s*(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.entry.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=begin)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarative_item\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\bbegin\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=end)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\bwhen\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=is)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#parameter_profile\\\"}]},\\\"entry_declaration\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?:(not)?\\\\\\\\s+(overriding)\\\\\\\\s+)?(entry)\\\\\\\\s+((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.entry.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter_profile\\\"}]},\\\"enumeration_type_definition\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.type.definition.enumeration.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w|\\\\\\\\d|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.name.ada\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"exception_declaration\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|_)+(?:\\\\\\\\s*,\\\\\\\\s*(?:\\\\\\\\w|\\\\\\\\d|_)+)?)\\\\\\\\s*(:)\\\\\\\\s*(exception)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w|\\\\\\\\d|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.exception.ada\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.exception.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(renames)\\\\\\\\s+((\\\\\\\\w|\\\\\\\\d|_|\\\\\\\\.)+)\\\",\\\"name\\\":\\\"entity.name.exception.ada\\\"}]},\\\"exit_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bexit\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.exit.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bwhen\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"(?:\\\\\\\\w|\\\\\\\\d|_)+\\\",\\\"name\\\":\\\"entity.name.label.ada\\\"}]},\\\"exponent_part\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.exponent-mark.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.unary.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"match\\\":\\\"([eE])(\\\\\\\\+|\\\\\\\\-)?\\\\\\\\d(?:(_)?\\\\\\\\d)*\\\"},\\\"expression\\\":{\\\"name\\\":\\\"meta.expression.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bnull\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.ada\\\"},{\\\"match\\\":\\\"=>(\\\\\\\\+)?\\\",\\\"name\\\":\\\"keyword.other.ada\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#value\\\"},{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(and|or|xor)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(if|then|else|elsif|in|for|(?<!\\\\\\\\.)all|some|\\\\\\\\.\\\\\\\\.|delta|with)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"}]},\\\"for_loop_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bfor\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(loop)(\\\\\\\\s+(?:\\\\\\\\w|\\\\\\\\d|_)+)?\\\\\\\\s*(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.label.ada\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.loop.for.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?<=for)\\\",\\\"end\\\":\\\"(?i)\\\\\\\\bloop\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.name.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\s+(in)(\\\\\\\\s+reverse)?\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.name.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#subtype_mark\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|_)+)(?:\\\\\\\\s*(:)\\\\\\\\s*((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+))?\\\\\\\\s+(of)(\\\\\\\\s+reverse)?\\\\\\\\b\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#statement\\\"}]},\\\"full_type_declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#task_type_declaration\\\"},{\\\"include\\\":\\\"#regular_type_declaration\\\"}]},\\\"function_body\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(overriding\\\\\\\\s+)?(function)\\\\\\\\s+(?:((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+\\\\\\\\b)|(\\\\\\\".+\\\\\\\"))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.visibility.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ada\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string_literal\\\"}]}},\\\"end\\\":\\\"(?i)(?:\\\\\\\\b(end)\\\\\\\\s+(\\\\\\\\3|\\\\\\\\4)\\\\\\\\s*)?(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.function.body.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bbegin\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)(?=end)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#handled_sequence_of_statements\\\"}]},{\\\"include\\\":\\\"#aspect_specification\\\"},{\\\"include\\\":\\\"#result_profile\\\"},{\\\"include\\\":\\\"#subprogram_renaming_declaration\\\"},{\\\"include\\\":\\\"#parameter_profile\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(with|begin|;))\\\",\\\"name\\\":\\\"meta.function.body.spec_part.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bnew\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.new.ada\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"name\\\":\\\"meta.declaration.package.generic.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\",\\\"name\\\":\\\"entity.name.function.ada\\\"},{\\\"include\\\":\\\"#actual_parameter_part\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\babstract\\\\\\\\b\\\",\\\"name\\\":\\\"meta.declaration.function.abstract.ada\\\"},{\\\"include\\\":\\\"#declarative_item\\\"},{\\\"include\\\":\\\"#subprogram_renaming_declaration\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"function_specification\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body\\\"}]},\\\"goto_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bgoto\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.goto.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.goto.ada\\\",\\\"patterns\\\":[{}]},\\\"guard\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bwhen\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"=>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.ada\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"handled_sequence_of_statements\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bexception\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=end)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.handler.exception.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bwhen\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"=>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.ada\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.name.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"match\\\":\\\"\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\\\\\\s*(:)\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bothers\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+\\\",\\\"name\\\":\\\"entity.name.exception.ada\\\"}]},{\\\"include\\\":\\\"#statement\\\"}]},{\\\"include\\\":\\\"#statement\\\"}]},\\\"highest_precedence_operator\\\":{\\\"match\\\":\\\"(?i)(\\\\\\\\*\\\\\\\\*|\\\\\\\\babs\\\\\\\\b|\\\\\\\\bnot\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.operator.highest-precedence.ada\\\"},\\\"if_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bif\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(if)\\\\\\\\s*(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.if.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\belsif\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)(?:(?<!\\\\\\\\sand)\\\\\\\\s+(?=then))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\belse\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)(?=end)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]},{\\\"begin\\\":\\\"(?i)(?<=if)\\\\\\\\b\\\",\\\"end\\\":\\\"(?i)(?:(?<!\\\\\\\\sand)\\\\\\\\s+(?=then))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\bthen\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(elsif|else|end))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]}]},\\\"integer_type_definition\\\":{\\\"name\\\":\\\"meta.declaration.type.definition.integer.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#signed_integer_type_definition\\\"},{\\\"include\\\":\\\"#modular_type_definition\\\"}]},\\\"interface_type_definition\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?:(limited|task|protected|synchronized)\\\\\\\\s+)?(interface)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(with|;))\\\",\\\"name\\\":\\\"meta.declaration.type.definition.interface.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\band\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ada\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"}]},\\\"keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(abort|abs|accept|all|and|at|begin|body|declare|delay|end|entry|exception|function|generic|in|is|mod|new|not|null|of|or|others|out|package|pragma|procedure|range|record|rem|renames|requeue|reverse|select|separate|some|subtype|then|type|use|when|with|xor)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(case|do|else|elsif|exit|for|goto|if|loop|raise|return|terminate|until|while)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(abstract|access|aliased|array|constant|delta|digits|interface|limited|protected|synchronized|tagged|task)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(private|overriding)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.visibility.ada\\\"},{\\\"match\\\":\\\"<>\\\",\\\"name\\\":\\\"keyword.modifier.unknown.ada\\\"},{\\\"match\\\":\\\"(\\\\\\\\+|-|\\\\\\\\*|/)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.ada\\\"},{\\\"match\\\":\\\":=\\\",\\\"name\\\":\\\"keyword.operator.assignment.ada\\\"},{\\\"match\\\":\\\"(=|/=|<|>|<=|>=)\\\",\\\"name\\\":\\\"keyword.operator.logic.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"keyword.operator.concatenation.ada\\\"}]},\\\"known_discriminant_part\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.declaration.type.discriminant.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"include\\\":\\\"#discriminant_specification\\\"}]},\\\"label\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.label.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.label.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.label.ada\\\"}},\\\"match\\\":\\\"(<<)?((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\s*(:[^=]|>>)\\\",\\\"name\\\":\\\"meta.label.ada\\\"},\\\"library_unit\\\":{\\\"name\\\":\\\"meta.library.unit.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#package_body\\\"},{\\\"include\\\":\\\"#package_specification\\\"},{\\\"include\\\":\\\"#subprogram_body\\\"}]},\\\"loop_statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#simple_loop_statement\\\"},{\\\"include\\\":\\\"#while_loop_statement\\\"},{\\\"include\\\":\\\"#for_loop_statement\\\"}]},\\\"modular_type_definition\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(mod)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(with|;))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"<>\\\",\\\"name\\\":\\\"keyword.modifier.unknown.ada\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"multiplying_operator\\\":{\\\"match\\\":\\\"(?i)(\\\\\\\\*|/|\\\\\\\\bmod\\\\\\\\b|\\\\\\\\brem\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.operator.multiplying.ada\\\"},\\\"null_statement\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(null)\\\\\\\\s*(;)\\\",\\\"name\\\":\\\"meta.statement.null.ada\\\"},\\\"object_declaration\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|_)+(?:\\\\\\\\s*,\\\\\\\\s*(?:\\\\\\\\w|\\\\\\\\d|_)+)*)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w|\\\\\\\\d|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.name.ada\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"(;)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.object.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=:)\\\",\\\"end\\\":\\\"(?:(?=;)|(:=)|(\\\\\\\\brenames\\\\\\\\b))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bconstant\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\baliased\\\\\\\\b\\\",\\\"name\\\":\\\"storage.visibility.ada\\\"},{\\\"include\\\":\\\"#aspect_specification\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"}]},{\\\"begin\\\":\\\"(?<=:=)\\\",\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#aspect_specification\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<=renames)\\\",\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#aspect_specification\\\"}]}]},\\\"operator\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#highest_precedence_operator\\\"},{\\\"include\\\":\\\"#multiplying_operator\\\"},{\\\"include\\\":\\\"#adding_operator\\\"},{\\\"include\\\":\\\"#relational_operator\\\"},{\\\"include\\\":\\\"#logical_operator\\\"}]},\\\"package_body\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(package)\\\\\\\\s+(body)\\\\\\\\s+((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#package_mark\\\"}]}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(\\\\\\\\3)\\\\\\\\s*(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#package_mark\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.package.body.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bbegin\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=end)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#handled_sequence_of_statements\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(\\\\\\\\bbegin\\\\\\\\b|\\\\\\\\bend\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bprivate\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#declarative_item\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"include\\\":\\\"#aspect_specification\\\"}]},\\\"package_declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#package_specification\\\"}]},\\\"package_mark\\\":{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.package.ada\\\"},\\\"package_specification\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(package)\\\\\\\\s+((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#package_mark\\\"}]}},\\\"end\\\":\\\"(?i)(?:\\\\\\\\b(end)\\\\\\\\s+(\\\\\\\\2)\\\\\\\\s*)?(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#package_mark\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.package.specification.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?=(end|;))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bnew\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.new.ada\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"name\\\":\\\"meta.declaration.package.generic.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#package_mark\\\"},{\\\"include\\\":\\\"#actual_parameter_part\\\"}]},{\\\"match\\\":\\\"(?i)\\\\\\\\bprivate\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#basic_declarative_item\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"include\\\":\\\"#aspect_specification\\\"}]},\\\"parameter_association\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ada\\\"}},\\\"match\\\":\\\"((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\s*(=>)\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"parameter_profile\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"include\\\":\\\"#parameter_specification\\\"}]},\\\"parameter_specification\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\":(?!=)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"end\\\":\\\"(?=[:;)])\\\",\\\"name\\\":\\\"meta.type.annotation.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(in|out)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"}]},{\\\"begin\\\":\\\":=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.new.ada\\\"}},\\\"end\\\":\\\"(?=[:;)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.parameter.ada\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"positional_array_aggregate\\\":{\\\"name\\\":\\\"meta.definition.array.aggregate.positional.ada\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ada\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"<>\\\",\\\"name\\\":\\\"keyword.modifier.unknown.ada\\\"},{\\\"include\\\":\\\"#expression\\\"}]}},\\\"match\\\":\\\"(?i)\\\\\\\\b(others)\\\\\\\\s*(=>)\\\\\\\\s*([^,\\\\\\\\)]+)\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"pragma\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(pragma)\\\\\\\\s+((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.ada\\\"}},\\\"end\\\":\\\"(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.pragma.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"preprocessor\\\":{\\\"name\\\":\\\"meta.preprocessor.ada\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.directive.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.ada\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\s*(#)(if|elsif)\\\\\\\\s+(.*)$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.directive.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(#)(end if)(;)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.directive.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(#)(else)\\\"}]},\\\"procedure_body\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(overriding\\\\\\\\s+)?(procedure)\\\\\\\\s+((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.visibility.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ada\\\"}},\\\"end\\\":\\\"(?i)(?:\\\\\\\\b(end)\\\\\\\\s+(\\\\\\\\3)\\\\\\\\s*)?(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.procedure.body.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(with|begin|;))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bnew\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.new.ada\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"name\\\":\\\"meta.declaration.package.generic.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\",\\\"name\\\":\\\"entity.name.function.ada\\\"},{\\\"include\\\":\\\"#actual_parameter_part\\\"}]},{\\\"match\\\":\\\"(?i)\\\\\\\\b(null|abstract)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ada\\\"},{\\\"include\\\":\\\"#declarative_item\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\bbegin\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)(?=\\\\\\\\bend\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#handled_sequence_of_statements\\\"}]},{\\\"include\\\":\\\"#subprogram_renaming_declaration\\\"},{\\\"include\\\":\\\"#aspect_specification\\\"},{\\\"include\\\":\\\"#parameter_profile\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"procedure_call_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|_|\\\\\\\\.)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.call.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#actual_parameter_part\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"procedure_specification\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#procedure_body\\\"}]},\\\"protected_body\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(protected)\\\\\\\\s+(body)\\\\\\\\s+((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.body.ada\\\"}},\\\"end\\\":\\\"(?i)(?:\\\\\\\\b(end)\\\\\\\\s*(\\\\\\\\s\\\\\\\\3)\\\\\\\\s*)(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.body.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.procedure.body.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=end)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#protected_operation_item\\\"}]}]},\\\"protected_element_declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#subprogram_specification\\\"},{\\\"include\\\":\\\"#aspect_clause\\\"},{\\\"include\\\":\\\"#entry_declaration\\\"},{\\\"include\\\":\\\"#component_declaration\\\"},{\\\"include\\\":\\\"#pragma\\\"}]},\\\"protected_operation_item\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#subprogram_specification\\\"},{\\\"include\\\":\\\"#subprogram_body\\\"},{\\\"include\\\":\\\"#aspect_clause\\\"},{\\\"include\\\":\\\"#entry_body\\\"}]},\\\"raise_expression\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\braise\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"name\\\":\\\"meta.expression.raise.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bwith\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?=(;|\\\\\\\\)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w|\\\\\\\\d|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.exception.ada\\\"}]},\\\"raise_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\braise\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.raise.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bwith\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.exception.ada\\\"}]},\\\"range_constraint\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\brange\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"end\\\":\\\"(?=(\\\\\\\\bwith\\\\\\\\b|;))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"match\\\":\\\"<>\\\",\\\"name\\\":\\\"keyword.modifier.unknown.ada\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"real_type_definition\\\":{\\\"name\\\":\\\"meta.declaration.type.definition.real-type.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#scalar_constraint\\\"}]},\\\"record_representation_clause\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(record)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(record)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"name\\\":\\\"meta.aspect.clause.record.representation.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#component_clause\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"record_type_definition\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(?:(abstract)\\\\\\\\s+)?(?:(tagged)\\\\\\\\s+)?(?:(limited)\\\\\\\\s+)?(null)\\\\\\\\s+(record)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.declaration.type.definition.record.null.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#component_item\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?:(abstract)\\\\\\\\s+)?(?:(tagged)\\\\\\\\s+)?(?:(limited)\\\\\\\\s+)?(record)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(record)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"name\\\":\\\"meta.declaration.type.definition.record.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#component_item\\\"}]}]},\\\"regular_type_declaration\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(type)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.type.definition.regular.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(with(?!\\\\\\\\s+(private))|;))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_definition\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?<=type)\\\\\\\\b\\\",\\\"end\\\":\\\"(?i)(?=(is|;))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#known_discriminant_part\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"}]},{\\\"include\\\":\\\"#aspect_specification\\\"}]},\\\"relational_operator\\\":{\\\"match\\\":\\\"(=|/=|<|<=|>|>=)\\\",\\\"name\\\":\\\"keyword.operator.relational.ada\\\"},\\\"requeue_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\brequeue\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.requeue.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(with|abort)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.ada\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.ada\\\"}]},\\\"result_profile\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\breturn\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?=(is|with|renames|;))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#subtype_mark\\\"}]},\\\"return_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\breturn\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.return.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bdo\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(return)\\\\\\\\s*(?=;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#label\\\"},{\\\"include\\\":\\\"#statement\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.name.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.ada\\\"}},\\\"match\\\":\\\"\\\\\\\\b((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\s*(:)\\\\\\\\s*((?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\\\\\\b\\\"},{\\\"match\\\":\\\":=\\\",\\\"name\\\":\\\"keyword.operator.new.ada\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"scalar_constraint\\\":{\\\"name\\\":\\\"meta.declaration.constraint.scalar.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(digits|delta)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"}},\\\"end\\\":\\\"(?i)(?=\\\\\\\\brange\\\\\\\\b|\\\\\\\\bdigits\\\\\\\\b|\\\\\\\\bwith\\\\\\\\b|;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#range_constraint\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"select_alternative\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bterminate\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}}},{\\\"include\\\":\\\"#statement\\\"}]},\\\"select_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bselect\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(select)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"name\\\":\\\"meta.statement.select.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?:(or)|(?<=select))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=(or|else|end))\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#guard\\\"},{\\\"include\\\":\\\"#select_alternative\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\belse\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=end)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]}]},\\\"signed_integer_type_definition\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#range_constraint\\\"}]},\\\"simple_loop_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bloop\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(loop)(\\\\\\\\s+(?:\\\\\\\\w|\\\\\\\\d|_)+)?\\\\\\\\s*(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.label.ada\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.loop.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]},\\\"single_protected_declaration\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(protected)\\\\\\\\s+((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.protected.ada\\\"}},\\\"end\\\":\\\"(?i)(?:\\\\\\\\b(end)\\\\\\\\s*(\\\\\\\\s\\\\\\\\2)?\\\\\\\\s*)?(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.protected.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.protected.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(\\\\\\\\bend\\\\\\\\b|;))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bnew\\\\\\\\b\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\bwith\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\band\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"match\\\":\\\"(?i)\\\\\\\\bprivate\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#protected_element_declaration\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"include\\\":\\\"#comment\\\"}]},\\\"single_task_declaration\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(task)\\\\\\\\s+((?:\\\\\\\\w|\\\\\\\\d|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.task.ada\\\"}},\\\"end\\\":\\\"(?i)(?:\\\\\\\\b(end)\\\\\\\\s*(\\\\\\\\s\\\\\\\\2)?\\\\\\\\s*)?(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.task.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=end)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bnew\\\\\\\\b\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\bwith\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\band\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"match\\\":\\\"(?i)\\\\\\\\bprivate\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#task_item\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"include\\\":\\\"#comment\\\"}]},\\\"statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bbegin\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s*(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#handled_sequence_of_statements\\\"}]},{\\\"include\\\":\\\"#label\\\"},{\\\"include\\\":\\\"#null_statement\\\"},{\\\"include\\\":\\\"#return_statement\\\"},{\\\"include\\\":\\\"#assignment_statement\\\"},{\\\"include\\\":\\\"#exit_statement\\\"},{\\\"include\\\":\\\"#goto_statement\\\"},{\\\"include\\\":\\\"#requeue_statement\\\"},{\\\"include\\\":\\\"#delay_statement\\\"},{\\\"include\\\":\\\"#abort_statement\\\"},{\\\"include\\\":\\\"#raise_statement\\\"},{\\\"include\\\":\\\"#if_statement\\\"},{\\\"include\\\":\\\"#case_statement\\\"},{\\\"include\\\":\\\"#loop_statement\\\"},{\\\"include\\\":\\\"#block_statement\\\"},{\\\"include\\\":\\\"#select_statement\\\"},{\\\"include\\\":\\\"#accept_statement\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#procedure_call_statement\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"string_literal\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.ada\\\"}},\\\"match\\\":\\\"(\\\\\\\").*?(\\\\\\\")\\\",\\\"name\\\":\\\"string.quoted.double.ada\\\"},\\\"subprogram_body\\\":{\\\"name\\\":\\\"meta.declaration.subprogram.body.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#procedure_body\\\"},{\\\"include\\\":\\\"#function_body\\\"}]},\\\"subprogram_renaming_declaration\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\brenames\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?=(with|;))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\w|\\\\\\\\d|_|\\\\\\\\.)+\\\",\\\"name\\\":\\\"entity.name.function.ada\\\"}]},\\\"subprogram_specification\\\":{\\\"name\\\":\\\"meta.declaration.subprogram.specification.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#procedure_specification\\\"},{\\\"include\\\":\\\"#function_specification\\\"}]},\\\"subtype_declaration\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bsubtype\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.subtype.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(not\\\\\\\\s+null)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ada\\\"},{\\\"include\\\":\\\"#composite_constraint\\\"},{\\\"include\\\":\\\"#aspect_specification\\\"},{\\\"include\\\":\\\"#subtype_indication\\\"}]},{\\\"begin\\\":\\\"(?i)(?<=subtype)\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(?=is)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#subtype_mark\\\"}]}]},\\\"subtype_indication\\\":{\\\"name\\\":\\\"meta.declaration.indication.subtype.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#scalar_constraint\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"}]},\\\"subtype_mark\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(access|aliased|not\\\\\\\\s+null|constant)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.visibility.ada\\\"},{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#actual_parameter_part\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(procedure|function)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?=(;|\\\\\\\\)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter_profile\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\breturn\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?=(;|\\\\\\\\)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#subtype_mark\\\"}]}]},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[_.]\\\",\\\"name\\\":\\\"punctuation.ada\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b(?:\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.ada\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"task_body\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(task)\\\\\\\\s+(body)\\\\\\\\s+((\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.task.ada\\\"}},\\\"end\\\":\\\"(?i)(?:\\\\\\\\b(end)\\\\\\\\s*(?:\\\\\\\\s(\\\\\\\\3))?\\\\\\\\s*)?(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.task.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.task.body.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bbegin\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)(?=end)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#handled_sequence_of_statements\\\"}]},{\\\"include\\\":\\\"#aspect_specification\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)(?=(with|begin))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarative_item\\\"}]}]},\\\"task_item\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#aspect_clause\\\"},{\\\"include\\\":\\\"#entry_declaration\\\"}]},\\\"task_type_declaration\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(task)\\\\\\\\s+(type)\\\\\\\\s+((\\\\\\\\w|\\\\\\\\d|\\\\\\\\.|_)+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.task.ada\\\"}},\\\"end\\\":\\\"(?i)(?:\\\\\\\\b(end)\\\\\\\\s*(?:\\\\\\\\s(\\\\\\\\3))?\\\\\\\\s*)?(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.task.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.type.task.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#known_discriminant_part\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(?=end)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bnew\\\\\\\\b\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\bwith\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\band\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"match\\\":\\\"(?i)\\\\\\\\bprivate\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#task_item\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"include\\\":\\\"#comment\\\"}]},\\\"type_declaration\\\":{\\\"name\\\":\\\"meta.declaration.type.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#full_type_declaration\\\"}]},\\\"type_definition\\\":{\\\"name\\\":\\\"meta.declaration.type.definition.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#enumeration_type_definition\\\"},{\\\"include\\\":\\\"#integer_type_definition\\\"},{\\\"include\\\":\\\"#real_type_definition\\\"},{\\\"include\\\":\\\"#array_type_definition\\\"},{\\\"include\\\":\\\"#record_type_definition\\\"},{\\\"include\\\":\\\"#access_type_definition\\\"},{\\\"include\\\":\\\"#interface_type_definition\\\"},{\\\"include\\\":\\\"#derived_type_definition\\\"}]},\\\"use_clause\\\":{\\\"name\\\":\\\"meta.context.use.ada\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#use_type_clause\\\"},{\\\"include\\\":\\\"#use_package_clause\\\"}]},\\\"use_package_clause\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\buse\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.using.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.context.use.package.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"include\\\":\\\"#package_mark\\\"}]},\\\"use_type_clause\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(use)\\\\\\\\s+(?:(all)\\\\\\\\s+)?(type)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.modifier.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.modifier.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.context.use.type.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"include\\\":\\\"#subtype_mark\\\"}]},\\\"value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#based_literal\\\"},{\\\"include\\\":\\\"#decimal_literal\\\"},{\\\"include\\\":\\\"#character_literal\\\"},{\\\"include\\\":\\\"#string_literal\\\"}]},\\\"variant_part\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bcase\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(case);\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.declaration.variant.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?<=case)\\\\\\\\b\\\",\\\"end\\\":\\\"(?i)\\\\\\\\bis\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\w|\\\\\\\\d|_)+\\\",\\\"name\\\":\\\"variable.name.ada\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?<=is)\\\\\\\\b\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(?=end)\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\bwhen\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ada\\\"}},\\\"end\\\":\\\"=>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.ada\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bothers\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ada\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#component_item\\\"}]}]},\\\"while_loop_statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\bwhile\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"end\\\":\\\"(?i)\\\\\\\\b(end)\\\\\\\\s+(loop)(\\\\\\\\s+(?:\\\\\\\\w|\\\\\\\\d|_)+)?\\\\\\\\s*(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.label.ada\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.statement.loop.while.ada\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?<=while)\\\\\\\\b\\\",\\\"end\\\":\\\"(?i)\\\\\\\\bloop\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ada\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#statement\\\"}]},\\\"with_clause\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?:(limited)\\\\\\\\s+)?(?:(private)\\\\\\\\s+)?(with)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.modifier.ada\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.visibility.ada\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.using.ada\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.ada\\\"}},\\\"name\\\":\\\"meta.context.with.ada\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.ada\\\"},{\\\"include\\\":\\\"#package_mark\\\"}]}},\\\"scopeName\\\":\\\"source.ada\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"JavaScript\\\",\\\"name\\\":\\\"javascript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#directives\\\"},{\\\"include\\\":\\\"#statements\\\"},{\\\"include\\\":\\\"#shebang\\\"}],\\\"repository\\\":{\\\"access-modifier\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"after-operator-block-as-object-literal\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--)(?<=[:=(,\\\\\\\\[?+!>]|^await|[^\\\\\\\\._$[:alnum:]]await|^return|[^\\\\\\\\._$[:alnum:]]return|^yield|[^\\\\\\\\._$[:alnum:]]yield|^throw|[^\\\\\\\\._$[:alnum:]]throw|^in|[^\\\\\\\\._$[:alnum:]]in|^of|[^\\\\\\\\._$[:alnum:]]of|^typeof|[^\\\\\\\\._$[:alnum:]]typeof|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\*)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"name\\\":\\\"meta.objectliteral.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-member\\\"}]},\\\"array-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"array-binding-pattern-const\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#binding-element-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"array-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.js\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.js\\\"}},\\\"name\\\":\\\"meta.array.literal.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"arrow-function\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.js\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(\\\\\\\\basync)\\\\\\\\s+)?([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?==>)\\\",\\\"name\\\":\\\"meta.arrow.js\\\"},{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(\\\\\\\\basync))?((?<![})!\\\\\\\\]])\\\\\\\\s*(?=((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"}},\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.arrow.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#function-parameters\\\"},{\\\"include\\\":\\\"#arrow-return-type\\\"},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"}]},{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.arrow.js\\\"}},\\\"end\\\":\\\"((?<=\\\\\\\\}|\\\\\\\\S)(?<!=>)|((?!\\\\\\\\{)(?=\\\\\\\\S)))(?!\\\\\\\\/[\\\\\\\\/\\\\\\\\*])\\\",\\\"name\\\":\\\"meta.arrow.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"arrow-return-type\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js\\\"}},\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.return.type.arrow.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrow-return-type-body\\\"}]},\\\"arrow-return-type-body\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[:])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"async-modifier\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(async)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.async.js\\\"},\\\"binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#array-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"binding-element-const\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#array-binding-pattern-const\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"boolean-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))true(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.true.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))false(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.false.js\\\"}]},\\\"brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"cast\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx\\\"}]},\\\"class-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(?:(abstract)\\\\\\\\s+)?\\\\\\\\b(class)\\\\\\\\b(?=\\\\\\\\s+|/[/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.class.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.class.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-declaration-or-expression-patterns\\\"}]},\\\"class-declaration-or-expression-patterns\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.class.js\\\"}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#class-or-interface-body\\\"}]},\\\"class-expression\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(class)\\\\\\\\b(?=\\\\\\\\s+|[<{]|\\\\\\\\/[\\\\\\\\/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.class.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-declaration-or-expression-patterns\\\"}]},\\\"class-or-interface-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*\\\",\\\"end\\\":\\\"(?=\\\\\\\\s|[;),}\\\\\\\\]:\\\\\\\\-\\\\\\\\+]|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#access-modifier\\\"},{\\\"include\\\":\\\"#property-accessor\\\"},{\\\"include\\\":\\\"#async-modifier\\\"},{\\\"include\\\":\\\"#after-operator-block-as-object-literal\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"class-or-interface-heritage\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(extends|implements)\\\\\\\\b)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))(?=\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*)*\\\\\\\\s*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.js\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"name\\\":\\\"comment.block.documentation.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docblock\\\"}]},{\\\"begin\\\":\\\"(/\\\\\\\\*)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|(\\\\\\\\*/)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.js\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"name\\\":\\\"comment.block.js\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.js\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.js\\\",\\\"end\\\":\\\"(?=$)\\\"}]},\\\"control-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#switch-statement\\\"},{\\\"include\\\":\\\"#for-loop\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(catch|finally|throw|try)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.trycatch.js\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.loop.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.label.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(break|continue|goto)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(break|continue|do|goto|while)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.loop.js\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(return)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.js\\\"}},\\\"end\\\":\\\"(?=[;}]|$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(case|default|switch)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.switch.js\\\"},{\\\"include\\\":\\\"#if-statement\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(else|if)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.conditional.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(with)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.with.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(package)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(debugger)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.other.debugger.js\\\"}]},\\\"decl-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"name\\\":\\\"meta.block.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}]},\\\"declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#function-declaration\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#enum-declaration\\\"},{\\\"include\\\":\\\"#namespace-declaration\\\"},{\\\"include\\\":\\\"#type-alias-declaration\\\"},{\\\"include\\\":\\\"#import-equals-declaration\\\"},{\\\"include\\\":\\\"#import-declaration\\\"},{\\\"include\\\":\\\"#export-declaration\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(declare|export)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.js\\\"}]},\\\"decorator\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))\\\\\\\\@\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.decorator.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.decorator.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"destructuring-const\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object-binding-pattern-variable.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.array-binding-pattern-variable.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array-binding-pattern-const\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"destructuring-parameter\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:)\\\\\\\\s*(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js\\\"}},\\\"name\\\":\\\"meta.parameter.object-binding-pattern.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-object-binding-element\\\"}]},{\\\"begin\\\":\\\"(?<!=|:)\\\\\\\\s*(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js\\\"}},\\\"name\\\":\\\"meta.paramter.array-binding-pattern.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"destructuring-parameter-rest\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.js\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"destructuring-variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object-binding-pattern-variable.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.array-binding-pattern-variable.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array-binding-pattern\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"destructuring-variable-rest\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.js variable.other.readwrite.js\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"destructuring-variable-rest-const\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.js variable.other.constant.js\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"directives\\\":{\\\"begin\\\":\\\"^(///)\\\\\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\\\\\s*=\\\\\\\\s*((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))+\\\\\\\\s*/>\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"(?=$)\\\",\\\"name\\\":\\\"comment.line.triple-slash.directive.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)(reference|amd-dependency|amd-module)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.directive.js\\\"}},\\\"end\\\":\\\"/>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.js\\\"}},\\\"name\\\":\\\"meta.tag.js\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"path|types|no-default-lib|lib|name|resolution-mode\\\",\\\"name\\\":\\\"entity.other.attribute-name.directive.js\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.js\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"docblock\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.access-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:access|api))\\\\\\\\s+(private|protected|public)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.other.email.link.underline.jsdoc\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"match\\\":\\\"((@)author)\\\\\\\\s+([^@\\\\\\\\s<>*/](?:[^@<>*/]|\\\\\\\\*[^/])*)(?:\\\\\\\\s*(<)([^>\\\\\\\\s]+)(>))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.control.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)borrows)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\\\\\\s+(as)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)example)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=@|\\\\\\\\*/)\\\",\\\"name\\\":\\\"meta.example.jsdoc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\s\\\\\\\\*\\\\\\\\s+\\\"},{\\\"begin\\\":\\\"\\\\\\\\G(<)caption(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"contentName\\\":\\\"constant.other.description.jsdoc\\\",\\\"end\\\":\\\"(</)caption(>)|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"source.embedded.js\\\"}},\\\"match\\\":\\\"[^\\\\\\\\s@*](?:[^*]|\\\\\\\\*[^/])*\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.symbol-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)kind)\\\\\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)see)\\\\\\\\s+(?:((?=https?://)(?:[^\\\\\\\\s*]|\\\\\\\\*[^/])+)|((?!https?://|(?:\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\\\\\b)(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)template)\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*(?:\\\\\\\\s*,\\\\\\\\s*[A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)*)\\\"},{\\\"begin\\\":\\\"((@)template)\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\"},{\\\"begin\\\":\\\"((@)typedef)\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+\\\",\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.begin.bracket.square.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"source.embedded.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.end.bracket.square.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.syntax.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)\\\\\\\\s*[\\\\\\\\w$]+(?:(?:\\\\\\\\[\\\\\\\\])?\\\\\\\\.[\\\\\\\\w$]+)*(?:\\\\\\\\s*(=)\\\\\\\\s*((?>\\\\\\\"(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!\\\\\\\"))|[^*\\\\\\\\\\\\\\\\])*?\\\\\\\"|'(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!'))|[^*\\\\\\\\\\\\\\\\])*?'|\\\\\\\\[(?:(?:\\\\\\\\*(?!/))|[^*])*?\\\\\\\\]|(?:(?:\\\\\\\\*(?!/))|\\\\\\\\s(?!\\\\\\\\s*\\\\\\\\])|\\\\\\\\[.*?(?:\\\\\\\\]|(?=\\\\\\\\*/))|[^*\\\\\\\\s\\\\\\\\[\\\\\\\\]])*)*))?\\\\\\\\s*(?:(\\\\\\\\])((?:[^*\\\\\\\\s]|\\\\\\\\*[^\\\\\\\\s/])+)?|(?=\\\\\\\\*/))\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\\\\\s+((?:[^{}@\\\\\\\\s*]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)(?:default(?:value)?|license|version))\\\\\\\\s+(([''\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"variable.other.jsdoc\\\",\\\"end\\\":\\\"(\\\\\\\\3)|(?=$|\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\\\\\s+([^\\\\\\\\s*]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},{\\\"include\\\":\\\"#inline-tags\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s+)\\\"}]},\\\"enum-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?(?:\\\\\\\\b(const)\\\\\\\\s+)?\\\\\\\\b(enum)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.enum.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.enum.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.enum.declaration.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.enummember.js\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"begin\\\":\\\"(?=((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\])))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"export-declaration\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.as.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.namespace.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.module.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)\\\\\\\\s+(as)\\\\\\\\s+(namespace)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)(?:\\\\\\\\s+(type))?(?:(?:\\\\\\\\s*(=))|(?:\\\\\\\\s+(default)(?=\\\\\\\\s+)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.type.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.default.js\\\"}},\\\"end\\\":\\\"(?=$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.export.default.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)(?:\\\\\\\\s+(type))?\\\\\\\\b(?!(\\\\\\\\$)|(\\\\\\\\s*:))((?=\\\\\\\\s*[\\\\\\\\{*])|((?=\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\\\\\s|,))(?!\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.type.js\\\"}},\\\"end\\\":\\\"(?=$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.export.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-declaration\\\"}]}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"expression-inside-possibly-arrow-parens\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#destructuring-parameter\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|protected|private|readonly)\\\\\\\\s+(?=(override|public|protected|private|readonly)\\\\\\\\s+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.js variable.language.this.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js variable.language.this.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*[:,]|$)\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.js\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"expression-operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(await)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.flow.js\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?=\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.js\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?:\\\\\\\\s*(\\\\\\\\*))?\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))delete(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.delete.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))in(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.in.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))of(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.of.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))instanceof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.instanceof.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.new.js\\\"},{\\\"include\\\":\\\"#typeof-operator\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))void(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.void.js\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+(const)(?=\\\\\\\\s*($|[;,:})\\\\\\\\]]))\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(as)|(satisfies))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.satisfies.js\\\"}},\\\"end\\\":\\\"(?=^|[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as|satisfies)\\\\\\\\s+)|(\\\\\\\\s+\\\\\\\\<))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.spread.js\\\"},{\\\"match\\\":\\\"\\\\\\\\*=|(?<!\\\\\\\\()/=|%=|\\\\\\\\+=|\\\\\\\\-=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.js\\\"},{\\\"match\\\":\\\"\\\\\\\\&=|\\\\\\\\^=|<<=|>>=|>>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.js\\\"},{\\\"match\\\":\\\"<<|>>>|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.js\\\"},{\\\"match\\\":\\\"===|!==|==|!=\\\",\\\"name\\\":\\\"keyword.operator.comparison.js\\\"},{\\\"match\\\":\\\"<=|>=|<>|<|>\\\",\\\"name\\\":\\\"keyword.operator.relational.js\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.js\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:]])(\\\\\\\\!)\\\\\\\\s*(?:(/=)|(?:(/)(?![/*])))\\\"},{\\\"match\\\":\\\"\\\\\\\\!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.logical.js\\\"},{\\\"match\\\":\\\"\\\\\\\\&|~|\\\\\\\\^|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.js\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.js\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.js\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.js\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.js\\\"},{\\\"begin\\\":\\\"(?<=[_$[:alnum:])\\\\\\\\]])\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))\\\",\\\"end\\\":\\\"(?:(/=)|(?:(/)(?!\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.js\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:])\\\\\\\\]])\\\\\\\\s*(?:(/=)|(?:(/)(?![/*])))\\\"}]},\\\"expressionPunctuations\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"expressionWithoutIdentifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-expression\\\"},{\\\"include\\\":\\\"#class-expression\\\"},{\\\"include\\\":\\\"#arrow-function\\\"},{\\\"include\\\":\\\"#paren-expression-possibly-arrow\\\"},{\\\"include\\\":\\\"#cast\\\"},{\\\"include\\\":\\\"#ternary-expression\\\"},{\\\"include\\\":\\\"#new-expr\\\"},{\\\"include\\\":\\\"#instanceof-expr\\\"},{\\\"include\\\":\\\"#object-literal\\\"},{\\\"include\\\":\\\"#expression-operators\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#support-objects\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},\\\"field-declaration\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\()(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)\\\\\\\\s+)?(?=\\\\\\\\s*((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(?:(?:(\\\\\\\\?)|(\\\\\\\\!))\\\\\\\\s*)?(=|:|;|,|\\\\\\\\}|$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$|(^(?!\\\\\\\\s*((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(?:(?:(\\\\\\\\?)|(\\\\\\\\!))\\\\\\\\s*)?(=|:|;|,|$))))|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.field.declaration.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.property.js entity.name.function.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.js\\\"}},\\\"match\\\":\\\"(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)(?:(\\\\\\\\?)|(\\\\\\\\!))?(?=\\\\\\\\s*\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"match\\\":\\\"\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.property.js variable.object.property.js\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.js\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"keyword.operator.definiteassignment.js\\\"}]},\\\"for-loop\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))for(?=((\\\\\\\\s+|(\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*))await)?\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)?(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.loop.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"await\\\",\\\"name\\\":\\\"keyword.control.loop.js\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]}]},\\\"function-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#function-parameters\\\"},{\\\"include\\\":\\\"#return-type\\\"},{\\\"include\\\":\\\"#type-function-return-type\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.generator.asterisk.js\\\"}]},\\\"function-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"name\\\":\\\"meta.function-call.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-target\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-call-optionals\\\"},{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},{\\\"begin\\\":\\\"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"name\\\":\\\"meta.function-call.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-target\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-call-optionals\\\"},{\\\"include\\\":\\\"#type-arguments\\\"}]}]},\\\"function-call-optionals\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\.\\\",\\\"name\\\":\\\"meta.function-call.js punctuation.accessor.optional.js\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"meta.function-call.js keyword.operator.definiteassignment.js\\\"}]},\\\"function-call-target\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-function-call-identifiers\\\"},{\\\"match\\\":\\\"(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.function.js\\\"}]},\\\"function-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?(?:(async)\\\\\\\\s+)?(function\\\\\\\\b)(?:\\\\\\\\s*(\\\\\\\\*))?(?:(?:\\\\\\\\s+|(?<=\\\\\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.function.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.definition.function.js entity.name.function.js\\\"}},\\\"end\\\":\\\"(?=;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},\\\"function-expression\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(async)\\\\\\\\s+)?(function\\\\\\\\b)(?:\\\\\\\\s*(\\\\\\\\*))?(?:(?:\\\\\\\\s+|(?<=\\\\\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.definition.function.js entity.name.function.js\\\"}},\\\"end\\\":\\\"(?=;)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.expression.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},\\\"function-name\\\":{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.function.js entity.name.function.js\\\"},\\\"function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.js\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.js\\\"}},\\\"name\\\":\\\"meta.parameters.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters-body\\\"}]},\\\"function-parameters-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#destructuring-parameter\\\"},{\\\"include\\\":\\\"#parameter-name\\\"},{\\\"include\\\":\\\"#parameter-type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.js\\\"}]},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#object-identifiers\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.js\\\"}},\\\"match\\\":\\\"(?:(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.property.js\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.property.js\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"match\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\",\\\"name\\\":\\\"variable.other.constant.js\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.readwrite.js\\\"}]},\\\"if-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=\\\\\\\\bif\\\\\\\\s*(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))\\\\\\\\s*(?!\\\\\\\\{))\\\",\\\"end\\\":\\\"(?=;|$|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(if)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*\\\\\\\\/(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\])+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.js\\\"}},\\\"name\\\":\\\"string.regexp.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"include\\\":\\\"#statements\\\"}]}]},\\\"import-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type)(?!\\\\\\\\s+from))?(?!\\\\\\\\s*[:\\\\\\\\(])(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.js\\\"}},\\\"end\\\":\\\"(?<!^import|[^\\\\\\\\._$[:alnum:]]import)(?=;|$|^)\\\",\\\"name\\\":\\\"meta.import.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"begin\\\":\\\"(?<=^import|[^\\\\\\\\._$[:alnum:]]import)(?!\\\\\\\\s*[\\\\\\\"'])\\\",\\\"end\\\":\\\"\\\\\\\\bfrom\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.from.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-declaration\\\"}]},{\\\"include\\\":\\\"#import-export-declaration\\\"}]},\\\"import-equals-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type))?\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(=)\\\\\\\\s*(require)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.js\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.control.require.js\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"name\\\":\\\"meta.import-equals.external.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type))?\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(=)\\\\\\\\s*(?!require\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.js\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js\\\"}},\\\"end\\\":\\\"(?=;|$|^)\\\",\\\"name\\\":\\\"meta.import-equals.internal.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.other.readwrite.js\\\"}]}]},\\\"import-export-assert-clause\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(with)|(assert))\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.with.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.assert.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object-literal.key.js\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.js\\\"}]},\\\"import-export-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"name\\\":\\\"meta.block.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-clause\\\"}]},\\\"import-export-clause\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.type.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.default.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.import-export-all.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.readwrite.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.quoted.alias.js\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.control.as.js\\\"},\\\"13\\\":{\\\"name\\\":\\\"keyword.control.default.js\\\"},\\\"14\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.js\\\"},\\\"15\\\":{\\\"name\\\":\\\"string.quoted.alias.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(?:(\\\\\\\\btype)\\\\\\\\s+)?(?:(\\\\\\\\bdefault)|(\\\\\\\\*)|(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))))\\\\\\\\s+(as)\\\\\\\\s+(?:(default(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"constant.language.import-export-all.js\\\"},{\\\"match\\\":\\\"\\\\\\\\b(default)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.default.js\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.type.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.quoted.alias.js\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\btype)\\\\\\\\s+)?(?:([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))\\\"}]},\\\"import-export-declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#import-export-block\\\"},{\\\"match\\\":\\\"\\\\\\\\bfrom\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.from.js\\\"},{\\\"include\\\":\\\"#import-export-assert-clause\\\"},{\\\"include\\\":\\\"#import-export-clause\\\"}]},\\\"indexer-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)\\\\\\\\s*)?\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.square.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\\\\\\s*(\\\\\\\\?\\\\\\\\s*)?|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.js\\\"}},\\\"name\\\":\\\"meta.indexer.declaration.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"}]},\\\"indexer-mapped-type-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))([+-])?(readonly)\\\\\\\\s*)?\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s+(in)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.square.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.expression.in.js\\\"}},\\\"end\\\":\\\"(\\\\\\\\])([+-])?\\\\\\\\s*(\\\\\\\\?\\\\\\\\s*)?|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.type.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.optional.js\\\"}},\\\"name\\\":\\\"meta.indexer.mappedtype.declaration.js\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"inline-tags\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.end.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)[^\\\\\\\\]]+(\\\\\\\\])(?={@(?:link|linkcode|linkplain|tutorial))\\\",\\\"name\\\":\\\"constant.other.description.jsdoc\\\"},{\\\"begin\\\":\\\"({)((@)(?:link(?:code|plain)?|tutorial))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.inline.tag.jsdoc\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?=https?://)(?:[^|}\\\\\\\\s*]|\\\\\\\\*[/])+)(\\\\\\\\|)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.description.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?:[^{}@\\\\\\\\s|*]|\\\\\\\\*[^/])+)(\\\\\\\\|)?\\\"}]}]},\\\"instanceof-expr\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(instanceof)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.expression.instanceof.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|(===|!==|==|!=)|(([\\\\\\\\&\\\\\\\\~\\\\\\\\^\\\\\\\\|]\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))function((\\\\\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\s*[\\\\\\\\(]))))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"interface-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(?:(abstract)\\\\\\\\s+)?\\\\\\\\b(interface)\\\\\\\\b(?=\\\\\\\\s+|/[/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.interface.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.interface.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.interface.js\\\"}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#class-or-interface-body\\\"}]},\\\"jsdoctype\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G({)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"end\\\":\\\"((}))\\\\\\\\s*|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"jsx\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag-without-attributes-in-expression\\\"},{\\\"include\\\":\\\"#jsx-tag-in-expression\\\"}]},\\\"jsx-children\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag-without-attributes\\\"},{\\\"include\\\":\\\"#jsx-tag\\\"},{\\\"include\\\":\\\"#jsx-evaluated-code\\\"},{\\\"include\\\":\\\"#jsx-entities\\\"}]},\\\"jsx-entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.js\\\"}},\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.js\\\"}]},\\\"jsx-evaluated-code\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.js\\\"}},\\\"contentName\\\":\\\"meta.embedded.expression.js\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"jsx-string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js\\\"}},\\\"name\\\":\\\"string.quoted.double.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-entities\\\"}]},\\\"jsx-string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js\\\"}},\\\"name\\\":\\\"string.quoted.single.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-entities\\\"}]},\\\"jsx-tag\\\":{\\\"begin\\\":\\\"(?=(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>))\\\",\\\"end\\\":\\\"(/>)|(?:(</)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.tag.js\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.class.component.js\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js\\\"}},\\\"name\\\":\\\"meta.tag.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.class.component.js\\\"}},\\\"end\\\":\\\"(?=[/]?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#jsx-tag-attributes\\\"}]},{\\\"begin\\\":\\\"(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js\\\"}},\\\"contentName\\\":\\\"meta.jsx.children.js\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-children\\\"}]}]},\\\"jsx-tag-attribute-assignment\\\":{\\\"match\\\":\\\"=(?=\\\\\\\\s*(?:'|\\\\\\\"|{|/\\\\\\\\*|//|\\\\\\\\n))\\\",\\\"name\\\":\\\"keyword.operator.assignment.js\\\"},\\\"jsx-tag-attribute-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.namespace.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.attribute-name.js\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(:))?([_$[:alpha:]][-_$[:alnum:]]*)(?=\\\\\\\\s|=|/?>|/\\\\\\\\*|//)\\\"},\\\"jsx-tag-attributes\\\":{\\\"begin\\\":\\\"\\\\\\\\s+\\\",\\\"end\\\":\\\"(?=[/]?>)\\\",\\\"name\\\":\\\"meta.tag.attributes.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#jsx-tag-attribute-name\\\"},{\\\"include\\\":\\\"#jsx-tag-attribute-assignment\\\"},{\\\"include\\\":\\\"#jsx-string-double-quoted\\\"},{\\\"include\\\":\\\"#jsx-string-single-quoted\\\"},{\\\"include\\\":\\\"#jsx-evaluated-code\\\"},{\\\"include\\\":\\\"#jsx-tag-attributes-illegal\\\"}]},\\\"jsx-tag-attributes-illegal\\\":{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"invalid.illegal.attribute.js\\\"},\\\"jsx-tag-in-expression\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--)(?<=[({\\\\\\\\[,?=>:*]|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?|\\\\\\\\*\\\\\\\\/|^await|[^\\\\\\\\._$[:alnum:]]await|^return|[^\\\\\\\\._$[:alnum:]]return|^default|[^\\\\\\\\._$[:alnum:]]default|^yield|[^\\\\\\\\._$[:alnum:]]yield|^)\\\\\\\\s*(?!<\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*((\\\\\\\\s+extends\\\\\\\\s+[^=>])|,))(?=(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>))\\\",\\\"end\\\":\\\"(?!(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag\\\"}]},\\\"jsx-tag-without-attributes\\\":{\\\"begin\\\":\\\"(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.class.component.js\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js\\\"}},\\\"contentName\\\":\\\"meta.jsx.children.js\\\",\\\"end\\\":\\\"(</)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.class.component.js\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js\\\"}},\\\"name\\\":\\\"meta.tag.without-attributes.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-children\\\"}]},\\\"jsx-tag-without-attributes-in-expression\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--)(?<=[({\\\\\\\\[,?=>:*]|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?|\\\\\\\\*\\\\\\\\/|^await|[^\\\\\\\\._$[:alnum:]]await|^return|[^\\\\\\\\._$[:alnum:]]return|^default|[^\\\\\\\\._$[:alnum:]]default|^yield|[^\\\\\\\\._$[:alnum:]]yield|^)\\\\\\\\s*(?=(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>))\\\",\\\"end\\\":\\\"(?!(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag-without-attributes\\\"}]},\\\"label\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(:)(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.label.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#decl-block\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.label.js\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(:)\\\"}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#boolean-literal\\\"},{\\\"include\\\":\\\"#null-literal\\\"},{\\\"include\\\":\\\"#undefined-literal\\\"},{\\\"include\\\":\\\"#numericConstant-literal\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#this-literal\\\"},{\\\"include\\\":\\\"#super-literal\\\"}]},\\\"method-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?\\\\\\\\s*\\\\\\\\b(constructor)\\\\\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:(?:\\\\\\\\s*\\\\\\\\b(new)\\\\\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(?:(\\\\\\\\*)\\\\\\\\s*)?)(?=\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.new.js\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.property.js\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]}]},\\\"method-declaration-name\\\":{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??)\\\\\\\\s*[\\\\\\\\(\\\\\\\\<])\\\",\\\"end\\\":\\\"(?=\\\\\\\\(|\\\\\\\\<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.method.js entity.name.function.js\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.js\\\"}]},\\\"namespace-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(namespace|module)\\\\\\\\s+(?=[_$[:alpha:]\\\\\\\"'`]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.namespace.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.namespace.declaration.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.type.module.js\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"new-expr\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(new)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))function((\\\\\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\s*[\\\\\\\\(]))))\\\",\\\"name\\\":\\\"new.expr.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"null-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))null(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.null.js\\\"},\\\"numeric-literal\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.hex.js\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.binary.js\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.octal.js\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.decimal.js\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js\\\"},\\\"9\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js\\\"},\\\"10\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js\\\"},\\\"12\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js\\\"},\\\"13\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js\\\"},\\\"14\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)\\\"}]},\\\"numericConstant-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))NaN(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.nan.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Infinity(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.infinity.js\\\"}]},\\\"object-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#binding-element\\\"}]},{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-binding-element-const\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#binding-element-const\\\"}]},{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-binding-element-propertyName\\\":{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.destructuring.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.object.property.js\\\"}]},\\\"object-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element\\\"}]},\\\"object-binding-pattern-const\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-const\\\"}]},\\\"object-identifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*prototype\\\\\\\\b(?!\\\\\\\\$))\\\",\\\"name\\\":\\\"support.class.js\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.object.property.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.object.property.js\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(?:(\\\\\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.object.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.js\\\"}},\\\"match\\\":\\\"(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"}]},\\\"object-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"name\\\":\\\"meta.objectliteral.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-member\\\"}]},\\\"object-literal-method-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.property.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.property.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\(|\\\\\\\\<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"}]}]},\\\"object-member\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#object-literal-method-declaration\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\]])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<]))\\\",\\\"name\\\":\\\"meta.object.member.js meta.object-literal.key.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#array-literal\\\"}]},{\\\"begin\\\":\\\"(?=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=((\\\\\\\\s*[\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\s+(as|satisifies)\\\\\\\\s+))))\\\",\\\"name\\\":\\\"meta.object.member.js meta.object-literal.key.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?=(\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)))\\\",\\\"end\\\":\\\"(?=:)|(?=\\\\\\\\s*([\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\s+as|satisifies\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.js meta.object-literal.key.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"}]},{\\\"begin\\\":\\\"(?<=[\\\\\\\\]\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<])\\\",\\\"end\\\":\\\"(?=\\\\\\\\}|;|,)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.js\\\"},\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.js\\\"}},\\\"match\\\":\\\"(?![_$[:alpha:]])([[:digit:]]+)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.js\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.js\\\"},\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.js\\\"}},\\\"match\\\":\\\"(?:([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:(\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/)*\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"name\\\":\\\"meta.object.member.js\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.js\\\"}},\\\"match\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.js\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.js\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.object.member.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.js\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.js\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+(const)(?=\\\\\\\\s*([,}]|$))\\\",\\\"name\\\":\\\"meta.object.member.js\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(as)|(satisfies))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.satisfies.js\\\"}},\\\"end\\\":\\\"(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|^|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as|satisifies)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?=[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=)\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.js punctuation.separator.key-value.js\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.object.member.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?(?=\\\\\\\\s*(<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)\\\\\\\\(\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]}]},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?\\\\\\\\s*(\\\\\\\\()(?=\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?\\\\\\\\s*(?=\\\\\\\\<\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\>)\\\\\\\\s*(\\\\\\\\()(?=\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"parameter-array-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"parameter-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#parameter-object-binding-pattern\\\"},{\\\"include\\\":\\\"#parameter-array-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-parameter-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"parameter-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|protected|private|readonly)\\\\\\\\s+(?=(override|public|protected|private|readonly)\\\\\\\\s+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.js variable.language.this.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js variable.language.this.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)\\\"}]},\\\"parameter-object-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},{\\\"include\\\":\\\"#parameter-object-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-parameter-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"parameter-object-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-object-binding-element\\\"}]},\\\"parameter-type-annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js\\\"}},\\\"end\\\":\\\"(?=[,)])|(?==[^>])\\\",\\\"name\\\":\\\"meta.type.annotation.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"paren-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"paren-expression-possibly-arrow\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(=,])\\\\\\\\s*(async)?(?=\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?\\\\\\\\(\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression-possibly-arrow-with-typeparameters\\\"}]},{\\\"begin\\\":\\\"(?<=[(=,]|=>|^return|[^\\\\\\\\._$[:alnum:]]return)\\\\\\\\s*(async)?(?=\\\\\\\\s*((((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?\\\\\\\\()|(<)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)))\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression-possibly-arrow-with-typeparameters\\\"}]},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"}]},\\\"paren-expression-possibly-arrow-with-typeparameters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]}]},\\\"possibly-arrow-return-type\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\)|^)\\\\\\\\s*(:)(?=\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*=>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.arrow.js meta.return.type.arrow.js keyword.operator.type.annotation.js\\\"}},\\\"contentName\\\":\\\"meta.arrow.js meta.return.type.arrow.js\\\",\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrow-return-type-body\\\"}]},\\\"property-accessor\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(accessor|get|set)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.type.property.js\\\"},\\\"punctuation-accessor\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},\\\"punctuation-comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.js\\\"},\\\"punctuation-semicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.js\\\"},\\\"qstring-double\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js\\\"}},\\\"end\\\":\\\"(\\\\\\\")|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.js\\\"}},\\\"name\\\":\\\"string.quoted.double.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"qstring-single\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.js\\\"}},\\\"name\\\":\\\"string.quoted.single.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"regex\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--|})(?<=[=(:,\\\\\\\\[?+!]|^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case|=>|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\*\\\\\\\\/)\\\\\\\\s*(\\\\\\\\/)(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[\\\\\\\\()]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\]|\\\\\\\\(([^\\\\\\\\)\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\))+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.js\\\"}},\\\"name\\\":\\\"string.regexp.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"((?<![_$[:alnum:])\\\\\\\\]]|\\\\\\\\+\\\\\\\\+|--|}|\\\\\\\\*\\\\\\\\/)|((?<=^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case))\\\\\\\\s*)\\\\\\\\/(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\])+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.js\\\"}},\\\"name\\\":\\\"string.regexp.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]}]},\\\"regex-character-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[wWsSdDtrnvf]|\\\\\\\\.\\\",\\\"name\\\":\\\"constant.other.character-class.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})\\\",\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c[A-Z]\\\",\\\"name\\\":\\\"constant.character.control.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[bB]|\\\\\\\\^|\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.control.anchor.regexp\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d*|\\\\\\\\\\\\\\\\k<([a-zA-Z_$][\\\\\\\\w$]*)>\\\"},{\\\"match\\\":\\\"[?+*]|\\\\\\\\{(\\\\\\\\d+,\\\\\\\\d+|\\\\\\\\d+,|,\\\\\\\\d+|\\\\\\\\d+)\\\\\\\\}\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.or.regexp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()((\\\\\\\\?=)|(\\\\\\\\?!)|(\\\\\\\\?<=)|(\\\\\\\\?<!))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.assertion.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.assertion.look-ahead.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-ahead.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.assertion.look-behind.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-behind.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.assertion.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\((?:(\\\\\\\\?:)|(?:\\\\\\\\?<([a-zA-Z_$][\\\\\\\\w$]*)>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.no-capture.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.regexp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(?:.|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\\\\\\-(?:[^\\\\\\\\]\\\\\\\\\\\\\\\\]|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.other.character-class.range.regexp\\\"},{\\\"include\\\":\\\"#regex-character-class\\\"}]},{\\\"include\\\":\\\"#regex-character-class\\\"}]},\\\"return-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js\\\"}},\\\"end\\\":\\\"(?<![:|&])(?=$|^|[{};,]|//)\\\",\\\"name\\\":\\\"meta.return.type.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#return-type-core\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js\\\"}},\\\"end\\\":\\\"(?<![:|&])((?=[{};,]|//|^\\\\\\\\s*$)|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.return.type.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#return-type-core\\\"}]}]},\\\"return-type-core\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<=[:|&])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"shebang\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"match\\\":\\\"\\\\\\\\A(#!).*(?=$)\\\",\\\"name\\\":\\\"comment.line.shebang.js\\\"},\\\"single-line-comment-consuming-line-ending\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.js\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.js\\\",\\\"end\\\":\\\"(?=^)\\\"},\\\"statements\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration\\\"},{\\\"include\\\":\\\"#control-statement\\\"},{\\\"include\\\":\\\"#after-operator-block-as-object-literal\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#label\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-single\\\"},{\\\"include\\\":\\\"#qstring-double\\\"},{\\\"include\\\":\\\"#template\\\"}]},\\\"string-character-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\\\\\{[0-9A-Fa-f]+\\\\\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)\\\",\\\"name\\\":\\\"constant.character.escape.js\\\"},\\\"super-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))super\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.super.js\\\"},\\\"support-function-call-identifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#support-objects\\\"},{\\\"include\\\":\\\"#object-identifiers\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))import(?=\\\\\\\\s*[\\\\\\\\(]\\\\\\\\s*[\\\\\\\\\\\\\\\"\\\\\\\\'\\\\\\\\`]))\\\",\\\"name\\\":\\\"keyword.operator.expression.import.js\\\"}]},\\\"support-objects\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(arguments)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.arguments.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(Promise)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"support.class.promise.js\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.variable.property.importmeta.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(import)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(meta)\\\\\\\\b(?!\\\\\\\\$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.variable.property.target.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(new)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(target)\\\\\\\\b(?!\\\\\\\\$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.variable.property.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.constant.js\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(?:(?:(constructor|length|prototype|__proto__)\\\\\\\\b(?!\\\\\\\\$|\\\\\\\\s*(<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\\\\\b(?!\\\\\\\\$)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.object.module.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.object.module.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.type.object.module.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(exports)|(module)(?:(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))(exports|id|filename|loaded|parent|children))?)\\\\\\\\b(?!\\\\\\\\$)\\\"}]},\\\"switch-statement\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=\\\\\\\\bswitch\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"name\\\":\\\"switch-statement.expr.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(switch)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"name\\\":\\\"switch-expression.expr.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"name\\\":\\\"switch-block.expr.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(case|default(?=:))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.js\\\"}},\\\"end\\\":\\\"(?=:)\\\",\\\"name\\\":\\\"case-clause.expr.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(:)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"case-clause.expr.js punctuation.definition.section.case-statement.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.block.js punctuation.definition.block.js\\\"}},\\\"contentName\\\":\\\"meta.block.js\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.block.js punctuation.definition.block.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"case-clause.expr.js punctuation.definition.section.case-statement.js\\\"}},\\\"match\\\":\\\"(:)\\\"},{\\\"include\\\":\\\"#statements\\\"}]}]},\\\"template\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-call\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.template.js punctuation.definition.string.template.begin.js\\\"}},\\\"contentName\\\":\\\"string.template.js\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.template.js punctuation.definition.string.template.end.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"template-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*)(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?`)\\\",\\\"end\\\":\\\"(?=`)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#support-function-call-identifiers\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.function.tagged-template.js\\\"}]},{\\\"include\\\":\\\"#type-arguments\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?\\\\\\\\s*(?=(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.js\\\"}},\\\"end\\\":\\\"(?=`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"}]}]},\\\"template-substitution-element\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.js\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.js\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.js\\\"}},\\\"name\\\":\\\"meta.template.expression.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"template-type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-call\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.template.js punctuation.definition.string.template.begin.js\\\"}},\\\"contentName\\\":\\\"string.template.js\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.template.js punctuation.definition.string.template.end.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template-type-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"template-type-substitution-element\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.js\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.js\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.js\\\"}},\\\"name\\\":\\\"meta.template.expression.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"ternary-expression\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\?\\\\\\\\.\\\\\\\\s*[^[:digit:]])(\\\\\\\\?)(?!\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.js\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"this-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))this\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.this.js\\\"},\\\"type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#type-builtin-literals\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#type-tuple\\\"},{\\\"include\\\":\\\"#type-object\\\"},{\\\"include\\\":\\\"#type-operators\\\"},{\\\"include\\\":\\\"#type-conditional\\\"},{\\\"include\\\":\\\"#type-fn-type-parameters\\\"},{\\\"include\\\":\\\"#type-paren-or-function-parameters\\\"},{\\\"include\\\":\\\"#type-function-return-type\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\"},{\\\"include\\\":\\\"#type-name\\\"}]},\\\"type-alias-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(type)\\\\\\\\b\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.type.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.alias.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.type.declaration.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"(=)\\\\\\\\s*(intrinsic)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.intrinsic.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js\\\"}},\\\"end\\\":\\\"(?<![:|&])(?!\\\\\\\\s*[|&]\\\\\\\\s+)((?=^|[,);\\\\\\\\}\\\\\\\\]]|//)|(?==[^>])|((?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"meta.type.annotation.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js\\\"}},\\\"end\\\":\\\"(?<![:|&])((?=[,);\\\\\\\\}\\\\\\\\]]|\\\\\\\\/\\\\\\\\/)|(?==[^>])|(?=^\\\\\\\\s*$)|((?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"meta.type.annotation.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-arguments\\\":{\\\"begin\\\":\\\"\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.js\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.js\\\"}},\\\"name\\\":\\\"meta.type.parameters.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},\\\"type-arguments-body\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(_)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-builtin-literals\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(this|true|false|undefined|null|object)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"support.type.builtin.js\\\"},\\\"type-conditional\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"}},\\\"end\\\":\\\"(?<=:)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.js\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-fn-type-parameters\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(new)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.constructor.js storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.type.constructor.js keyword.control.new.js\\\"}},\\\"end\\\":\\\"(?<=>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(new)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.new.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.constructor.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},{\\\"begin\\\":\\\"((?=[(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>))))))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.function.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]}]},\\\"type-function-return-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(=>)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.arrow.js\\\"}},\\\"end\\\":\\\"(?<!=>)(?<![|&])(?=[,\\\\\\\\]\\\\\\\\)\\\\\\\\{\\\\\\\\}=;>:\\\\\\\\?]|//|$)\\\",\\\"name\\\":\\\"meta.type.function.return.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-function-return-type-core\\\"}]},{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.arrow.js\\\"}},\\\"end\\\":\\\"(?<!=>)(?<![|&])((?=[,\\\\\\\\]\\\\\\\\)\\\\\\\\{\\\\\\\\}=;:\\\\\\\\?>]|//|^\\\\\\\\s*$)|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.type.function.return.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-function-return-type-core\\\"}]}]},\\\"type-function-return-type-core\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<==>)(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-infer\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.expression.infer.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.expression.extends.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(infer)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?:\\\\\\\\s+(extends)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))?\\\",\\\"name\\\":\\\"meta.type.infer.js\\\"}]},\\\"type-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(<)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.type.parameters.js punctuation.definition.typeparameters.begin.js\\\"}},\\\"contentName\\\":\\\"meta.type.parameters.js\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.parameters.js punctuation.definition.typeparameters.end.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.type.parameters.js punctuation.definition.typeparameters.begin.js\\\"}},\\\"contentName\\\":\\\"meta.type.parameters.js\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.parameters.js punctuation.definition.typeparameters.end.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.type.js\\\"}]},\\\"type-object\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js\\\"}},\\\"name\\\":\\\"meta.object.type.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#indexer-mapped-type-declaration\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-operators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typeof-operator\\\"},{\\\"include\\\":\\\"#type-infer\\\"},{\\\"begin\\\":\\\"([&|])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.js\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"begin\\\":\\\"[&|]\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))keyof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.keyof.js\\\"},{\\\"match\\\":\\\"(\\\\\\\\?|\\\\\\\\:)\\\",\\\"name\\\":\\\"keyword.operator.ternary.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))import(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.import.js\\\"}]},\\\"type-parameters\\\":{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.js\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.js\\\"}},\\\"name\\\":\\\"meta.type.parameters.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends|in|out|const)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.js\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"match\\\":\\\"(=)(?!>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.js\\\"}]},\\\"type-paren-or-function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js\\\"}},\\\"name\\\":\\\"meta.type.paren.cover.js\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.js variable.language.this.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js variable.language.this.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s*(\\\\\\\\??)(?=:)\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.js\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-predicate-operator\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.asserts.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.js variable.language.this.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.expression.is.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(asserts)\\\\\\\\s+)?(?!asserts)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s(is)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.asserts.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.js variable.language.this.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(asserts)\\\\\\\\s+(?!is)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))asserts(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.type.asserts.js\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))is(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.is.js\\\"}]},\\\"type-primitive\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"support.type.primitive.js\\\"},\\\"type-string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-single\\\"},{\\\"include\\\":\\\"#qstring-double\\\"},{\\\"include\\\":\\\"#template-type\\\"}]},\\\"type-tuple\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.js\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.js\\\"}},\\\"name\\\":\\\"meta.type.tuple.js\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.rest.js\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.label.js\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(\\\\\\\\?)?\\\\\\\\s*(:)\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"typeof-operator\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))typeof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.expression.typeof.js\\\"}},\\\"end\\\":\\\"(?=[,);}\\\\\\\\]=>:&|{\\\\\\\\?]|(extends\\\\\\\\s+)|$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"undefined-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))undefined(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.undefined.js\\\"},\\\"var-expr\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^let|[^\\\\\\\\._$[:alnum:]]let|^var|[^\\\\\\\\._$[:alnum:]]var)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#destructuring-variable\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=$|\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.js\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#destructuring-variable\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.js\\\"}},\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^const|[^\\\\\\\\._$[:alnum:]]const)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#destructuring-const\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=$|\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.js\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#destructuring-const\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.js\\\"}},\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^using|[^\\\\\\\\._$[:alnum:]]using|^await\\\\\\\\s+using|[^\\\\\\\\._$[:alnum:]]await\\\\\\\\s+using)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*((?!\\\\\\\\S)|(?=\\\\\\\\/\\\\\\\\/))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.js\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"var-single-const\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.js variable.other.constant.js entity.name.function.js\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.js variable.other.constant.js\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]}]},\\\"var-single-variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\!)?(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.js entity.name.function.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.js\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])(\\\\\\\\!)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.js variable.other.constant.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.js\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\!)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.js variable.other.readwrite.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.js\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]}]},\\\"var-single-variable-type-annotation\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"variable-initializer\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)(?=\\\\\\\\s*\\\\\\\\S)(?!\\\\\\\\s*.*=>\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js\\\"}},\\\"end\\\":\\\"(?=$|^|[,);}\\\\\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js\\\"}},\\\"end\\\":\\\"(?=[,);}\\\\\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))|(?=^\\\\\\\\s*$)|(?<![\\\\\\\\|\\\\\\\\&\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/])(?<=\\\\\\\\S)(?<!=)(?=\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]}},\\\"scopeName\\\":\\\"source.js\\\",\\\"aliases\\\":[\\\"js\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"CSS\\\",\\\"name\\\":\\\"css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"include\\\":\\\"#combinators\\\"},{\\\"include\\\":\\\"#selector\\\"},{\\\"include\\\":\\\"#at-rules\\\"},{\\\"include\\\":\\\"#rule-list\\\"}],\\\"repository\\\":{\\\"at-rules\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\A(?:\\\\\\\\xEF\\\\\\\\xBB\\\\\\\\xBF)?(?i:(?=\\\\\\\\s*@charset\\\\\\\\b))\\\",\\\"end\\\":\\\";|(?=$)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"name\\\":\\\"meta.at-rule.charset.css\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.not-lowercase.charset.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.leading-whitespace.charset.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.no-whitespace.charset.css\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.whitespace.charset.css\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.not-double-quoted.charset.css\\\"},\\\"6\\\":{\\\"name\\\":\\\"invalid.illegal.unclosed-string.charset.css\\\"},\\\"7\\\":{\\\"name\\\":\\\"invalid.illegal.unexpected-characters.charset.css\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?!@charset)@\\\\\\\\w+)|\\\\\\\\G(\\\\\\\\s+)|(@charset\\\\\\\\S[^;]*)|(?<=@charset)(\\\\\\\\x20{2,}|\\\\\\\\t+)|(?<=@charset\\\\\\\\x20)([^\\\\\\\";]+)|(\\\\\\\"[^\\\\\\\"]+$)|(?<=\\\\\\\")([^;]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.charset.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"match\\\":\\\"((@)charset)(?=\\\\\\\\s)\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.css\\\"}},\\\"end\\\":\\\"\\\\\\\"|$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.css\\\"}},\\\"name\\\":\\\"string.quoted.double.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:\\\\\\\\G|^)(?=(?:[^\\\\\\\"])+$)\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"invalid.illegal.unclosed.string.css\\\"}]}]},{\\\"begin\\\":\\\"(?i)((@)import)(?:\\\\\\\\s+|$|(?=['\\\\\\\"]|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.import.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"name\\\":\\\"meta.at-rule.import.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(?=/\\\\\\\\*)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\*/)\\\\\\\\s*\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"}]},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#url\\\"},{\\\"include\\\":\\\"#media-query-list\\\"}]},{\\\"begin\\\":\\\"(?i)((@)font-face)(?=\\\\\\\\s*|{|/\\\\\\\\*|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.font-face.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.at-rule.font-face.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"include\\\":\\\"#rule-list\\\"}]},{\\\"begin\\\":\\\"(?i)(@)page(?=[\\\\\\\\s:{]|/\\\\\\\\*|$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.page.css\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*($|[:{;]))\\\",\\\"name\\\":\\\"meta.at-rule.page.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rule-list\\\"}]},{\\\"begin\\\":\\\"(?i)(?=@media(\\\\\\\\s|\\\\\\\\(|/\\\\\\\\*|$))\\\",\\\"end\\\":\\\"(?<=})(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G(@)media\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.media.css\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*[{;])\\\",\\\"name\\\":\\\"meta.at-rule.media.header.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#media-query-list\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.media.begin.bracket.curly.css\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.media.end.bracket.curly.css\\\"}},\\\"name\\\":\\\"meta.at-rule.media.body.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"begin\\\":\\\"(?i)(?=@counter-style([\\\\\\\\s'\\\\\\\"{;]|/\\\\\\\\*|$))\\\",\\\"end\\\":\\\"(?<=})(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G(@)counter-style\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.counter-style.css\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*{)\\\",\\\"name\\\":\\\"meta.at-rule.counter-style.header.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}},\\\"match\\\":\\\"(?:[-a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*\\\",\\\"name\\\":\\\"variable.parameter.style-name.css\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.property-list.begin.bracket.curly.css\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.property-list.end.bracket.curly.css\\\"}},\\\"name\\\":\\\"meta.at-rule.counter-style.body.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"include\\\":\\\"#rule-list-innards\\\"}]}]},{\\\"begin\\\":\\\"(?i)(?=@document([\\\\\\\\s'\\\\\\\"{;]|/\\\\\\\\*|$))\\\",\\\"end\\\":\\\"(?<=})(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G(@)document\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.document.css\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*[{;])\\\",\\\"name\\\":\\\"meta.at-rule.document.header.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(url-prefix|domain|regexp)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.document-rule.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.document-rule.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"match\\\":\\\"[^'\\\\\\\")\\\\\\\\s]+\\\",\\\"name\\\":\\\"variable.parameter.document-rule.css\\\"}]},{\\\"include\\\":\\\"#url\\\"},{\\\"include\\\":\\\"#commas\\\"},{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.document.begin.bracket.curly.css\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.document.end.bracket.curly.css\\\"}},\\\"name\\\":\\\"meta.at-rule.document.body.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"begin\\\":\\\"(?i)(?=@(?:-(?:webkit|moz|o|ms)-)?keyframes([\\\\\\\\s'\\\\\\\"{;]|/\\\\\\\\*|$))\\\",\\\"end\\\":\\\"(?<=})(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G(@)(?:-(?:webkit|moz|o|ms)-)?keyframes\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.keyframes.css\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*{)\\\",\\\"name\\\":\\\"meta.at-rule.keyframes.header.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}},\\\"match\\\":\\\"(?:[-a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*\\\",\\\"name\\\":\\\"variable.parameter.keyframe-list.css\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.keyframes.begin.bracket.curly.css\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.keyframes.end.bracket.curly.css\\\"}},\\\"name\\\":\\\"meta.at-rule.keyframes.body.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.keyframe-offset.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.keyframe-offset.percentage.css\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<![\\\\\\\\w-]) (from|to) (?![\\\\\\\\w-]) # Keywords for 0% | 100%\\\\n|\\\\n([-+]?(?:\\\\\\\\d+(?:\\\\\\\\.\\\\\\\\d+)?|\\\\\\\\.\\\\\\\\d+)%) # Percentile value\\\"},{\\\"include\\\":\\\"#rule-list\\\"}]}]},{\\\"begin\\\":\\\"(?i)(?=@supports(\\\\\\\\s|\\\\\\\\(|/\\\\\\\\*|$))\\\",\\\"end\\\":\\\"(?<=})(?!\\\\\\\\G)|(?=;)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G(@)supports\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.supports.css\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*[{;])\\\",\\\"name\\\":\\\"meta.at-rule.supports.header.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#feature-query-operators\\\"},{\\\"include\\\":\\\"#feature-query\\\"},{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.supports.begin.bracket.curly.css\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.supports.end.bracket.curly.css\\\"}},\\\"name\\\":\\\"meta.at-rule.supports.body.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"begin\\\":\\\"(?i)((@)(-(ms|o)-)?viewport)(?=[\\\\\\\\s'\\\\\\\"{;]|/\\\\\\\\*|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.viewport.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*[@{;])\\\",\\\"name\\\":\\\"meta.at-rule.viewport.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"}]},{\\\"begin\\\":\\\"(?i)((@)font-feature-values)(?=[\\\\\\\\s'\\\\\\\"{;]|/\\\\\\\\*|$)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.font-feature-values.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"contentName\\\":\\\"variable.parameter.font-name.css\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*[@{;])\\\",\\\"name\\\":\\\"meta.at-rule.font-features.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"}]},{\\\"include\\\":\\\"#font-features\\\"},{\\\"begin\\\":\\\"(?i)((@)namespace)(?=[\\\\\\\\s'\\\\\\\";]|/\\\\\\\\*|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.namespace.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\";|(?=[@{])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"name\\\":\\\"meta.at-rule.namespace.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#url\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.namespace-prefix.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}},\\\"match\\\":\\\"(?xi)\\\\n(?:\\\\\\\\G|^|(?<=\\\\\\\\s))\\\\n(?=\\\\n (?<=\\\\\\\\s|^) # Starts with whitespace\\\\n (?:[-a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F]) # Then a valid identifier character\\\\n |\\\\n \\\\\\\\s* # Possible adjoining whitespace\\\\n /\\\\\\\\*(?:[^*]|\\\\\\\\*[^/])*\\\\\\\\*/ # Injected comment\\\\n)\\\\n(.*?) # Grouped to embed #comment-block\\\\n(\\\\n (?:[-a-zA-Z_] | [^\\\\\\\\x00-\\\\\\\\x7F]) # First letter\\\\n (?:[-a-zA-Z0-9_] | [^\\\\\\\\x00-\\\\\\\\x7F] # Remainder of identifier\\\\n |\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.)\\\\n )*\\\\n)\\\"},{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?i)(?=@[\\\\\\\\w-]+[^;]+;s*$)\\\",\\\"end\\\":\\\"(?<=;)(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G(@)[\\\\\\\\w-]+\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.css\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"name\\\":\\\"meta.at-rule.header.css\\\"}]},{\\\"begin\\\":\\\"(?i)(?=@[\\\\\\\\w-]+(\\\\\\\\s|\\\\\\\\(|{|/\\\\\\\\*|$))\\\",\\\"end\\\":\\\"(?<=})(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G(@)[\\\\\\\\w-]+\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.css\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*[{;])\\\",\\\"name\\\":\\\"meta.at-rule.header.css\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.begin.bracket.curly.css\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.bracket.curly.css\\\"}},\\\"name\\\":\\\"meta.at-rule.body.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]}]},\\\"color-keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<![\\\\\\\\w-])(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.color.w3c-standard-color-name.css\\\"},{\\\"match\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood\\\\n|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan\\\\n|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange\\\\n|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise\\\\n|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen\\\\n|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki\\\\n|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow\\\\n|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray\\\\n|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue\\\\n|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise\\\\n|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered\\\\n|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum\\\\n|powderblue|rebeccapurple|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell\\\\n|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato\\\\n|transparent|turquoise|violet|wheat|whitesmoke|yellowgreen)\\\\n(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.color.w3c-extended-color-name.css\\\"},{\\\"match\\\":\\\"(?i)(?<![\\\\\\\\w-])currentColor(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.color.current.css\\\"},{\\\"match\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n(ActiveBorder|ActiveCaption|AppWorkspace|Background|ButtonFace|ButtonHighlight|ButtonShadow\\\\n|ButtonText|CaptionText|GrayText|Highlight|HighlightText|InactiveBorder|InactiveCaption\\\\n|InactiveCaptionText|InfoBackground|InfoText|Menu|MenuText|Scrollbar|ThreeDDarkShadow\\\\n|ThreeDFace|ThreeDHighlight|ThreeDLightShadow|ThreeDShadow|Window|WindowFrame|WindowText)\\\\n(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"invalid.deprecated.color.system.css\\\"}]},\\\"combinators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"/deep/|>>>\\\",\\\"name\\\":\\\"invalid.deprecated.combinator.css\\\"},{\\\"match\\\":\\\">>|>|\\\\\\\\+|~\\\",\\\"name\\\":\\\"keyword.operator.combinator.css\\\"}]},\\\"commas\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.list.comma.css\\\"},\\\"comment-block\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.css\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.css\\\"}},\\\"name\\\":\\\"comment.block.css\\\"},\\\"escapes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-9a-fA-F]{1,6}\\\",\\\"name\\\":\\\"constant.character.escape.codepoint.css\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\$\\\\\\\\s*\\\",\\\"end\\\":\\\"^(?<!\\\\\\\\G)\\\",\\\"name\\\":\\\"constant.character.escape.newline.css\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.css\\\"}]},\\\"feature-query\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.condition.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.condition.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.feature-query.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#feature-query-operators\\\"},{\\\"include\\\":\\\"#feature-query\\\"}]},\\\"feature-query-operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<=[\\\\\\\\s()]|^|\\\\\\\\*/)(and|not|or)(?=[\\\\\\\\s()]|/\\\\\\\\*|$)\\\",\\\"name\\\":\\\"keyword.operator.logical.feature.$1.css\\\"},{\\\"include\\\":\\\"#rule-list-innards\\\"}]},\\\"font-features\\\":{\\\"begin\\\":\\\"(?xi)\\\\n((@)(annotation|character-variant|ornaments|styleset|stylistic|swash))\\\\n(?=[\\\\\\\\s@'\\\\\\\"{;]|/\\\\\\\\*|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.${3:/downcase}.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.css\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.at-rule.${3:/downcase}.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.property-list.begin.bracket.curly.css\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.property-list.end.bracket.curly.css\\\"}},\\\"name\\\":\\\"meta.property-list.font-feature.css\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}},\\\"match\\\":\\\"(?:[-a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*\\\",\\\"name\\\":\\\"variable.font-feature.css\\\"},{\\\"include\\\":\\\"#rule-list-innards\\\"}]}]},\\\"functional-pseudo-classes\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)((:)dir)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"match\\\":\\\"(?i)(?<![\\\\\\\\w-])(ltr|rtl)(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.text-direction.css\\\"},{\\\"include\\\":\\\"#property-values\\\"}]},{\\\"begin\\\":\\\"(?i)((:)lang)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[(,\\\\\\\\s])[a-zA-Z]+(-[a-zA-Z0-9]*|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*(?=[),\\\\\\\\s])\\\",\\\"name\\\":\\\"support.constant.language-range.css\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.css\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.css\\\"}},\\\"name\\\":\\\"string.quoted.double.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\"\\\\\\\\s])[a-zA-Z*]+(-[a-zA-Z0-9*]*)*(?=[\\\\\\\"\\\\\\\\s])\\\",\\\"name\\\":\\\"support.constant.language-range.css\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.css\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.css\\\"}},\\\"name\\\":\\\"string.quoted.single.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"},{\\\"match\\\":\\\"(?<=['\\\\\\\\s])[a-zA-Z*]+(-[a-zA-Z0-9*]*)*(?=['\\\\\\\\s])\\\",\\\"name\\\":\\\"support.constant.language-range.css\\\"}]},{\\\"include\\\":\\\"#commas\\\"}]},{\\\"begin\\\":\\\"(?i)((:)(?:not|has|matches|where|is))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#selector-innards\\\"}]},{\\\"begin\\\":\\\"(?i)((:)nth-(?:last-)?(?:child|of-type))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)[+-]?(\\\\\\\\d+n?|n)(\\\\\\\\s*[+-]\\\\\\\\s*\\\\\\\\d+)?\\\",\\\"name\\\":\\\"constant.numeric.css\\\"},{\\\"match\\\":\\\"(?i)even|odd\\\",\\\"name\\\":\\\"support.constant.parity.css\\\"}]}]},\\\"functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(calc)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.calc.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.calc.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[*/]|(?<=\\\\\\\\s|^)[-+](?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.css\\\"},{\\\"include\\\":\\\"#property-values\\\"}]},{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(rgba?|rgb|hsla?|hsl|hwb|lab|oklab|lch|oklch|color)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.color.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"}]},{\\\"begin\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n(\\\\n (?:-webkit-|-moz-|-o-)? # Accept prefixed/historical variants\\\\n (?:repeating-)? # \\\\\\\"Repeating\\\\\\\"-type gradient\\\\n (?:linear|radial|conic) # Shape\\\\n -gradient\\\\n)\\\\n(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.gradient.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.gradient.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<![\\\\\\\\w-])(from|to|at|in|hue)(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"keyword.operator.gradient.css\\\"},{\\\"include\\\":\\\"#property-values\\\"}]},{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(-webkit-gradient)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.deprecated.gradient.function.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.gradient.invalid.deprecated.gradient.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(from|to|color-stop)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.deprecated.function.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"}]},{\\\"include\\\":\\\"#property-values\\\"}]},{\\\"begin\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n(annotation|attr|blur|brightness|character-variant|clamp|contrast|counters?\\\\n|cross-fade|drop-shadow|element|fit-content|format|grayscale|hue-rotate|color-mix\\\\n|image-set|invert|local|max|min|minmax|opacity|ornaments|repeat|saturate|sepia\\\\n|styleset|stylistic|swash|symbols\\\\n|cos|sin|tan|acos|asin|atan|atan2|hypot|sqrt|pow|log|exp|abs|sign)\\\\n(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.misc.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<=[,\\\\\\\\s\\\\\\\"]|\\\\\\\\*/|^)\\\\\\\\d+x(?=[\\\\\\\\s,\\\\\\\"')]|/\\\\\\\\*|$)\\\",\\\"name\\\":\\\"constant.numeric.other.density.css\\\"},{\\\"include\\\":\\\"#property-values\\\"},{\\\"match\\\":\\\"[^'\\\\\\\"),\\\\\\\\s]+\\\",\\\"name\\\":\\\"variable.parameter.misc.css\\\"}]},{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(circle|ellipse|inset|polygon|rect)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.shape.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.shape.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<=\\\\\\\\s|^|\\\\\\\\*/)(at|round)(?=\\\\\\\\s|/\\\\\\\\*|$)\\\",\\\"name\\\":\\\"keyword.operator.shape.css\\\"},{\\\"include\\\":\\\"#property-values\\\"}]},{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(cubic-bezier|steps)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.timing-function.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.timing-function.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<![\\\\\\\\w-])(start|end)(?=\\\\\\\\s*\\\\\\\\)|$)\\\",\\\"name\\\":\\\"support.constant.step-direction.css\\\"},{\\\"include\\\":\\\"#property-values\\\"}]},{\\\"begin\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n( (?:translate|scale|rotate)(?:[XYZ]|3D)?\\\\n| matrix(?:3D)?\\\\n| skew[XY]?\\\\n| perspective\\\\n)\\\\n(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.transform.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"}]},{\\\"include\\\":\\\"#url\\\"},{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(var)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.variable.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"--(?:[-a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*\\\",\\\"name\\\":\\\"variable.argument.css\\\"},{\\\"include\\\":\\\"#property-values\\\"}]}]},\\\"media-feature-keywords\\\":{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|:|\\\\\\\\*/)\\\\n(?: portrait # Orientation\\\\n | landscape\\\\n | progressive # Scan types\\\\n | interlace\\\\n | fullscreen # Display modes\\\\n | standalone\\\\n | minimal-ui\\\\n | browser\\\\n | hover\\\\n)\\\\n(?=\\\\\\\\s|\\\\\\\\)|$)\\\",\\\"name\\\":\\\"support.constant.property-value.css\\\"},\\\"media-features\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.property-name.media.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.property-name.media.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.vendored.property-name.media.css\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|\\\\\\\\*/) # Preceded by whitespace, bracket or comment\\\\n(?:\\\\n # Standardised features\\\\n (\\\\n (?:min-|max-)? # Range features\\\\n (?: height\\\\n | width\\\\n | aspect-ratio\\\\n | color\\\\n | color-index\\\\n | monochrome\\\\n | resolution\\\\n )\\\\n | grid # Discrete features\\\\n | scan\\\\n | orientation\\\\n | display-mode\\\\n | hover\\\\n )\\\\n |\\\\n # Deprecated features\\\\n (\\\\n (?:min-|max-)? # Deprecated in Media Queries 4\\\\n device-\\\\n (?: height\\\\n | width\\\\n | aspect-ratio\\\\n )\\\\n )\\\\n |\\\\n # Vendor extensions\\\\n (\\\\n (?:\\\\n # Spec-compliant syntax\\\\n [-_]\\\\n (?: webkit # Webkit/Blink\\\\n | apple|khtml # Webkit aliases\\\\n | epub # ePub3\\\\n | moz # Gecko\\\\n | ms # Microsoft\\\\n | o # Presto (pre-Opera 15)\\\\n | xv|ah|rim|atsc| # Less common vendors\\\\n hp|tc|wap|ro\\\\n )\\\\n |\\\\n # Non-standard prefixes\\\\n (?: mso # Microsoft Office\\\\n | prince # YesLogic\\\\n )\\\\n )\\\\n -\\\\n [\\\\\\\\w-]+ # Feature name\\\\n (?= # Terminates correctly\\\\n \\\\\\\\s* # Possible whitespace\\\\n (?: # Possible injected comment\\\\n /\\\\\\\\*\\\\n (?:[^*]|\\\\\\\\*[^/])*\\\\n \\\\\\\\*/\\\\n )?\\\\n \\\\\\\\s*\\\\n [:)] # Ends with a colon or closed bracket\\\\n )\\\\n )\\\\n)\\\\n(?=\\\\\\\\s|$|[><:=]|\\\\\\\\)|/\\\\\\\\*) # Terminates cleanly\\\"},\\\"media-query\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*[{;])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"include\\\":\\\"#media-types\\\"},{\\\"match\\\":\\\"(?i)(?<=\\\\\\\\s|^|,|\\\\\\\\*/)(only|not)(?=\\\\\\\\s|{|/\\\\\\\\*|$)\\\",\\\"name\\\":\\\"keyword.operator.logical.$1.media.css\\\"},{\\\"match\\\":\\\"(?i)(?<=\\\\\\\\s|^|\\\\\\\\*/|\\\\\\\\))and(?=\\\\\\\\s|/\\\\\\\\*|$)\\\",\\\"name\\\":\\\"keyword.operator.logical.and.media.css\\\"},{\\\"match\\\":\\\",(?:(?:\\\\\\\\s*,)+|(?=\\\\\\\\s*[;){]))\\\",\\\"name\\\":\\\"invalid.illegal.comma.css\\\"},{\\\"include\\\":\\\"#commas\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#media-features\\\"},{\\\"include\\\":\\\"#media-feature-keywords\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.css\\\"},{\\\"match\\\":\\\">=|<=|=|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.css\\\"}},\\\"match\\\":\\\"(\\\\\\\\d+)\\\\\\\\s*(/)\\\\\\\\s*(\\\\\\\\d+)\\\",\\\"name\\\":\\\"meta.ratio.css\\\"},{\\\"include\\\":\\\"#numeric-values\\\"},{\\\"include\\\":\\\"#comment-block\\\"}]}]},\\\"media-query-list\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\s*[^{;])\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*[{;])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#media-query\\\"}]},\\\"media-types\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.media.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.constant.media.css\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|,|\\\\\\\\*/)\\\\n(?:\\\\n # Valid media types\\\\n (all|print|screen|speech)\\\\n |\\\\n # Deprecated in Media Queries 4: http://dev.w3.org/csswg/mediaqueries/#media-types\\\\n (aural|braille|embossed|handheld|projection|tty|tv)\\\\n)\\\\n(?=$|[{,\\\\\\\\s;]|/\\\\\\\\*)\\\"},\\\"numeric-values\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.css\\\"}},\\\"match\\\":\\\"(#)(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.color.rgb-value.hex.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.percentage.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.unit.${2:/downcase}.css\\\"}},\\\"match\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n[-+]? # Sign indicator\\\\n\\\\n(?: # Numerals\\\\n [0-9]+ (?:\\\\\\\\.[0-9]+)? # Integer/float with leading digits\\\\n | \\\\\\\\.[0-9]+ # Float without leading digits\\\\n)\\\\n\\\\n(?: # Scientific notation\\\\n (?<=[0-9]) # Exponent must follow a digit\\\\n E # Exponent indicator\\\\n [-+]? # Possible sign indicator\\\\n [0-9]+ # Exponent value\\\\n)?\\\\n\\\\n(?: # Possible unit for data-type:\\\\n (%) # - Percentage\\\\n | ( deg|grad|rad|turn # - Angle\\\\n | Hz|kHz # - Frequency\\\\n | ch|cm|em|ex|fr|in|mm|mozmm| # - Length\\\\n pc|pt|px|q|rem|rch|rex|rlh|\\\\n ic|ric|rcap|vh|vw|vb|vi|svh|\\\\n svw|svb|svi|dvh|dvw|dvb|dvi|\\\\n lvh|lvw|lvb|lvi|vmax|vmin|\\\\n cqw|cqi|cqh|cqb|cqmin|cqmax\\\\n | dpi|dpcm|dppx # - Resolution\\\\n | s|ms # - Time\\\\n )\\\\n \\\\\\\\b # Boundary checking intentionally lax to\\\\n)? # facilitate embedding in CSS-like grammars\\\",\\\"name\\\":\\\"constant.numeric.css\\\"}]},\\\"property-keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n(above|absolute|active|add|additive|after-edge|alias|all|all-petite-caps|all-scroll|all-small-caps|alpha|alphabetic|alternate|alternate-reverse\\\\n|always|antialiased|auto|auto-fill|auto-fit|auto-pos|available|avoid|avoid-column|avoid-page|avoid-region|backwards|balance|baseline|before-edge|below|bevel\\\\n|bidi-override|blink|block|block-axis|block-start|block-end|bold|bolder|border|border-box|both|bottom|bottom-outside|break-all|break-word|bullets\\\\n|butt|capitalize|caption|cell|center|central|char|circle|clip|clone|close-quote|closest-corner|closest-side|col-resize|collapse|color|color-burn\\\\n|color-dodge|column|column-reverse|common-ligatures|compact|condensed|contain|content|content-box|contents|context-menu|contextual|copy|cover\\\\n|crisp-edges|crispEdges|crosshair|cyclic|dark|darken|dashed|decimal|default|dense|diagonal-fractions|difference|digits|disabled|disc|discretionary-ligatures\\\\n|distribute|distribute-all-lines|distribute-letter|distribute-space|dot|dotted|double|double-circle|downleft|downright|e-resize|each-line|ease|ease-in\\\\n|ease-in-out|ease-out|economy|ellipse|ellipsis|embed|end|evenodd|ew-resize|exact|exclude|exclusion|expanded|extends|extra-condensed|extra-expanded\\\\n|fallback|farthest-corner|farthest-side|fill|fill-available|fill-box|filled|fit-content|fixed|flat|flex|flex-end|flex-start|flip|flow-root|forwards|freeze\\\\n|from-image|full-width|geometricPrecision|georgian|grab|grabbing|grayscale|grid|groove|hand|hanging|hard-light|help|hidden|hide\\\\n|historical-forms|historical-ligatures|horizontal|horizontal-tb|hue|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space\\\\n|ideographic|inactive|infinite|inherit|initial|inline|inline-axis|inline-block|inline-end|inline-flex|inline-grid|inline-list-item|inline-start\\\\n|inline-table|inset|inside|inter-character|inter-ideograph|inter-word|intersect|invert|isolate|isolate-override|italic|jis04|jis78|jis83\\\\n|jis90|justify|justify-all|kannada|keep-all|landscape|large|larger|left|light|lighten|lighter|line|line-edge|line-through|linear|linearRGB\\\\n|lining-nums|list-item|local|loose|lowercase|lr|lr-tb|ltr|luminance|luminosity|main-size|mandatory|manipulation|manual|margin-box|match-parent\\\\n|match-source|mathematical|max-content|medium|menu|message-box|middle|min-content|miter|mixed|move|multiply|n-resize|narrower|ne-resize\\\\n|nearest-neighbor|nesw-resize|newspaper|no-change|no-clip|no-close-quote|no-common-ligatures|no-contextual|no-discretionary-ligatures\\\\n|no-drop|no-historical-ligatures|no-open-quote|no-repeat|none|nonzero|normal|not-allowed|nowrap|ns-resize|numbers|numeric|nw-resize|nwse-resize\\\\n|oblique|oldstyle-nums|open|open-quote|optimizeLegibility|optimizeQuality|optimizeSpeed|optional|ordinal|outset|outside|over|overlay|overline|padding\\\\n|padding-box|page|painted|pan-down|pan-left|pan-right|pan-up|pan-x|pan-y|paused|petite-caps|pixelated|plaintext|pointer|portrait|pre|pre-line\\\\n|pre-wrap|preserve-3d|progress|progressive|proportional-nums|proportional-width|proximity|radial|recto|region|relative|remove|repeat|repeat-[xy]\\\\n|reset-size|reverse|revert|ridge|right|rl|rl-tb|round|row|row-resize|row-reverse|row-severse|rtl|ruby|ruby-base|ruby-base-container|ruby-text\\\\n|ruby-text-container|run-in|running|s-resize|saturation|scale-down|screen|scroll|scroll-position|se-resize|semi-condensed|semi-expanded|separate\\\\n|sesame|show|sideways|sideways-left|sideways-lr|sideways-right|sideways-rl|simplified|slashed-zero|slice|small|small-caps|small-caption|smaller\\\\n|smooth|soft-light|solid|space|space-around|space-between|space-evenly|spell-out|square|sRGB|stacked-fractions|start|static|status-bar|swap\\\\n|step-end|step-start|sticky|stretch|strict|stroke|stroke-box|style|sub|subgrid|subpixel-antialiased|subtract|super|sw-resize|symbolic|table\\\\n|table-caption|table-cell|table-column|table-column-group|table-footer-group|table-header-group|table-row|table-row-group|tabular-nums|tb|tb-rl\\\\n|text|text-after-edge|text-before-edge|text-bottom|text-top|thick|thin|titling-caps|top|top-outside|touch|traditional|transparent|triangle\\\\n|ultra-condensed|ultra-expanded|under|underline|unicase|unset|upleft|uppercase|upright|use-glyph-orientation|use-script|verso|vertical\\\\n|vertical-ideographic|vertical-lr|vertical-rl|vertical-text|view-box|visible|visibleFill|visiblePainted|visibleStroke|w-resize|wait|wavy\\\\n|weight|whitespace|wider|words|wrap|wrap-reverse|x|x-large|x-small|xx-large|xx-small|y|zero|zoom-in|zoom-out)\\\\n(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.property-value.css\\\"},{\\\"match\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n(arabic-indic|armenian|bengali|cambodian|circle|cjk-decimal|cjk-earthly-branch|cjk-heavenly-stem|cjk-ideographic\\\\n|decimal|decimal-leading-zero|devanagari|disc|disclosure-closed|disclosure-open|ethiopic-halehame-am\\\\n|ethiopic-halehame-ti-e[rt]|ethiopic-numeric|georgian|gujarati|gurmukhi|hangul|hangul-consonant|hebrew\\\\n|hiragana|hiragana-iroha|japanese-formal|japanese-informal|kannada|katakana|katakana-iroha|khmer\\\\n|korean-hangul-formal|korean-hanja-formal|korean-hanja-informal|lao|lower-alpha|lower-armenian|lower-greek\\\\n|lower-latin|lower-roman|malayalam|mongolian|myanmar|oriya|persian|simp-chinese-formal|simp-chinese-informal\\\\n|square|tamil|telugu|thai|tibetan|trad-chinese-formal|trad-chinese-informal|upper-alpha|upper-armenian\\\\n|upper-latin|upper-roman|urdu)\\\\n(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.property-value.list-style-type.css\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w-])(?i:-(?:ah|apple|atsc|epub|hp|khtml|moz|ms|o|rim|ro|tc|wap|webkit|xv)|(?:mso|prince))-[a-zA-Z-]+\\\",\\\"name\\\":\\\"support.constant.vendored.property-value.css\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w-])(?i:arial|century|comic|courier|garamond|georgia|helvetica|impact|lucida|symbol|system-ui|system|tahoma|times|trebuchet|ui-monospace|ui-rounded|ui-sans-serif|ui-serif|utopia|verdana|webdings|sans-serif|serif|monospace)(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.font-name.css\\\"}]},\\\"property-names\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n(?:\\\\n # Standard CSS\\\\n accent-color|additive-symbols|align-content|align-items|align-self|all|animation|animation-delay|animation-direction|animation-duration\\\\n | animation-fill-mode|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|aspect-ratio|backdrop-filter\\\\n | backface-visibility|background|background-attachment|background-blend-mode|background-clip|background-color|background-image\\\\n | background-origin|background-position|background-position-[xy]|background-repeat|background-size|bleed|block-size|border\\\\n | border-block-end|border-block-end-color|border-block-end-style|border-block-end-width|border-block-start|border-block-start-color\\\\n | border-block-start-style|border-block-start-width|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius\\\\n | border-bottom-style|border-bottom-width|border-collapse|border-color|border-end-end-radius|border-end-start-radius|border-image\\\\n | border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-inline-end\\\\n | border-inline-end-color|border-inline-end-style|border-inline-end-width|border-inline-start|border-inline-start-color\\\\n | border-inline-start-style|border-inline-start-width|border-left|border-left-color|border-left-style|border-left-width\\\\n | border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-start-end-radius\\\\n | border-start-start-radius|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style\\\\n | border-top-width|border-width|bottom|box-decoration-break|box-shadow|box-sizing|break-after|break-before|break-inside|caption-side\\\\n | caret-color|clear|clip|clip-path|clip-rule|color|color-adjust|color-interpolation-filters|color-scheme|column-count|column-fill|column-gap\\\\n | column-rule|column-rule-color|column-rule-style|column-rule-width|column-span|column-width|columns|contain|container|container-name|container-type|content|counter-increment\\\\n | counter-reset|cursor|direction|display|empty-cells|enable-background|fallback|fill|fill-opacity|fill-rule|filter|flex|flex-basis\\\\n | flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float|flood-color|flood-opacity|font|font-display|font-family\\\\n | font-feature-settings|font-kerning|font-language-override|font-optical-sizing|font-size|font-size-adjust|font-stretch\\\\n | font-style|font-synthesis|font-variant|font-variant-alternates|font-variant-caps|font-variant-east-asian|font-variant-ligatures\\\\n | font-variant-numeric|font-variant-position|font-variation-settings|font-weight|gap|glyph-orientation-horizontal|glyph-orientation-vertical\\\\n | grid|grid-area|grid-auto-columns|grid-auto-flow|grid-auto-rows|grid-column|grid-column-end|grid-column-gap|grid-column-start\\\\n | grid-gap|grid-row|grid-row-end|grid-row-gap|grid-row-start|grid-template|grid-template-areas|grid-template-columns|grid-template-rows\\\\n | hanging-punctuation|height|hyphens|image-orientation|image-rendering|image-resolution|ime-mode|initial-letter|initial-letter-align\\\\n | inline-size|inset|inset-block|inset-block-end|inset-block-start|inset-inline|inset-inline-end|inset-inline-start|isolation\\\\n | justify-content|justify-items|justify-self|kerning|left|letter-spacing|lighting-color|line-break|line-clamp|line-height|list-style\\\\n | list-style-image|list-style-position|list-style-type|margin|margin-block|margin-block-end|margin-block-start|margin-bottom|margin-inline|margin-inline-end|margin-inline-start\\\\n | margin-left|margin-right|margin-top|marker-end|marker-mid|marker-start|marks|mask|mask-border|mask-border-mode|mask-border-outset\\\\n | mask-border-repeat|mask-border-slice|mask-border-source|mask-border-width|mask-clip|mask-composite|mask-image|mask-mode\\\\n | mask-origin|mask-position|mask-repeat|mask-size|mask-type|max-block-size|max-height|max-inline-size|max-lines|max-width\\\\n | max-zoom|min-block-size|min-height|min-inline-size|min-width|min-zoom|mix-blend-mode|negative|object-fit|object-position\\\\n | offset|offset-anchor|offset-distance|offset-path|offset-position|offset-rotation|opacity|order|orientation|orphans\\\\n | outline|outline-color|outline-offset|outline-style|outline-width|overflow|overflow-anchor|overflow-block|overflow-inline\\\\n | overflow-wrap|overflow-[xy]|overscroll-behavior|overscroll-behavior-block|overscroll-behavior-inline|overscroll-behavior-[xy]\\\\n | pad|padding|padding-block|padding-block-end|padding-block-start|padding-bottom|padding-inline|padding-inline-end|padding-inline-start|padding-left\\\\n | padding-right|padding-top|page-break-after|page-break-before|page-break-inside|paint-order|perspective|perspective-origin\\\\n | place-content|place-items|place-self|pointer-events|position|prefix|quotes|range|resize|right|rotate|row-gap|ruby-align\\\\n | ruby-merge|ruby-position|scale|scroll-behavior|scroll-margin|scroll-margin-block|scroll-margin-block-end|scroll-margin-block-start\\\\n | scroll-margin-bottom|scroll-margin-inline|scroll-margin-inline-end|scroll-margin-inline-start|scroll-margin-left|scroll-margin-right\\\\n | scroll-margin-top|scroll-padding|scroll-padding-block|scroll-padding-block-end|scroll-padding-block-start|scroll-padding-bottom\\\\n | scroll-padding-inline|scroll-padding-inline-end|scroll-padding-inline-start|scroll-padding-left|scroll-padding-right\\\\n | scroll-padding-top|scroll-snap-align|scroll-snap-coordinate|scroll-snap-destination|scroll-snap-stop|scroll-snap-type\\\\n | scrollbar-color|scrollbar-gutter|scrollbar-width|shape-image-threshold|shape-margin|shape-outside|shape-rendering|size\\\\n | speak-as|src|stop-color|stop-opacity|stroke|stroke-dasharray|stroke-dashoffset|stroke-linecap|stroke-linejoin|stroke-miterlimit\\\\n | stroke-opacity|stroke-width|suffix|symbols|system|tab-size|table-layout|text-align|text-align-last|text-anchor|text-combine-upright\\\\n | text-decoration|text-decoration-color|text-decoration-line|text-decoration-skip|text-decoration-skip-ink|text-decoration-style|text-decoration-thickness\\\\n | text-emphasis|text-emphasis-color|text-emphasis-position|text-emphasis-style|text-indent|text-justify|text-orientation\\\\n | text-overflow|text-rendering|text-shadow|text-size-adjust|text-transform|text-underline-offset|text-underline-position|top|touch-action|transform\\\\n | transform-box|transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property|transition-timing-function\\\\n | translate|unicode-bidi|unicode-range|user-select|user-zoom|vertical-align|visibility|white-space|widows|width|will-change\\\\n | word-break|word-spacing|word-wrap|writing-mode|z-index|zoom\\\\n\\\\n # SVG attributes\\\\n | alignment-baseline|baseline-shift|clip-rule|color-interpolation|color-interpolation-filters|color-profile\\\\n | color-rendering|cx|cy|dominant-baseline|enable-background|fill|fill-opacity|fill-rule|flood-color|flood-opacity\\\\n | glyph-orientation-horizontal|glyph-orientation-vertical|height|kerning|lighting-color|marker-end|marker-mid\\\\n | marker-start|r|rx|ry|shape-rendering|stop-color|stop-opacity|stroke|stroke-dasharray|stroke-dashoffset|stroke-linecap\\\\n | stroke-linejoin|stroke-miterlimit|stroke-opacity|stroke-width|text-anchor|width|x|y\\\\n\\\\n # Not listed on MDN; presumably deprecated\\\\n | adjust|after|align|align-last|alignment|alignment-adjust|appearance|attachment|azimuth|background-break\\\\n | balance|baseline|before|bidi|binding|bookmark|bookmark-label|bookmark-level|bookmark-target|border-length\\\\n | bottom-color|bottom-left-radius|bottom-right-radius|bottom-style|bottom-width|box|box-align|box-direction\\\\n | box-flex|box-flex-group|box-lines|box-ordinal-group|box-orient|box-pack|break|character|collapse|column\\\\n | column-break-after|column-break-before|count|counter|crop|cue|cue-after|cue-before|decoration|decoration-break\\\\n | delay|display-model|display-role|down|drop|drop-initial-after-adjust|drop-initial-after-align|drop-initial-before-adjust\\\\n | drop-initial-before-align|drop-initial-size|drop-initial-value|duration|elevation|emphasis|family|fit|fit-position\\\\n | flex-group|float-offset|gap|grid-columns|grid-rows|hanging-punctuation|header|hyphenate|hyphenate-after|hyphenate-before\\\\n | hyphenate-character|hyphenate-lines|hyphenate-resource|icon|image|increment|indent|index|initial-after-adjust\\\\n | initial-after-align|initial-before-adjust|initial-before-align|initial-size|initial-value|inline-box-align|iteration-count\\\\n | justify|label|left-color|left-style|left-width|length|level|line|line-stacking|line-stacking-ruby|line-stacking-shift\\\\n | line-stacking-strategy|lines|list|mark|mark-after|mark-before|marks|marquee|marquee-direction|marquee-play-count|marquee-speed\\\\n | marquee-style|max|min|model|move-to|name|nav|nav-down|nav-index|nav-left|nav-right|nav-up|new|numeral|offset|ordinal-group\\\\n | orient|origin|overflow-style|overhang|pack|page|page-policy|pause|pause-after|pause-before|phonemes|pitch|pitch-range\\\\n | play-count|play-during|play-state|point|presentation|presentation-level|profile|property|punctuation|punctuation-trim\\\\n | radius|rate|rendering-intent|repeat|replace|reset|resolution|resource|respond-to|rest|rest-after|rest-before|richness\\\\n | right-color|right-style|right-width|role|rotation|rotation-point|rows|ruby|ruby-overhang|ruby-span|rule|rule-color\\\\n | rule-style|rule-width|shadow|size|size-adjust|sizing|space|space-collapse|spacing|span|speak|speak-header|speak-numeral\\\\n | speak-punctuation|speech|speech-rate|speed|stacking|stacking-ruby|stacking-shift|stacking-strategy|stress|stretch\\\\n | string-set|style|style-image|style-position|style-type|target|target-name|target-new|target-position|text|text-height\\\\n | text-justify|text-outline|text-replace|text-wrap|timing-function|top-color|top-left-radius|top-right-radius|top-style\\\\n | top-width|trim|unicode|up|user-select|variant|voice|voice-balance|voice-duration|voice-family|voice-pitch|voice-pitch-range\\\\n | voice-rate|voice-stress|voice-volume|volume|weight|white|white-space-collapse|word|wrap\\\\n)\\\\n(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.type.property-name.css\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w-])(?i:-(?:ah|apple|atsc|epub|hp|khtml|moz|ms|o|rim|ro|tc|wap|webkit|xv)|(?:mso|prince))-[a-zA-Z-]+\\\",\\\"name\\\":\\\"support.type.vendored.property-name.css\\\"}]},\\\"property-values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#commas\\\"},{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#property-keywords\\\"},{\\\"include\\\":\\\"#unicode-range\\\"},{\\\"include\\\":\\\"#numeric-values\\\"},{\\\"include\\\":\\\"#color-keywords\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"!\\\\\\\\s*important(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"keyword.other.important.css\\\"}]},\\\"pseudo-classes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.colon.css\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(:)(:*)\\\\n(?: active|any-link|checked|default|disabled|empty|enabled|first\\\\n | (?:first|last|only)-(?:child|of-type)|focus|focus-visible|focus-within|fullscreen|host|hover\\\\n | in-range|indeterminate|invalid|left|link|optional|out-of-range\\\\n | read-only|read-write|required|right|root|scope|target|unresolved\\\\n | valid|visited\\\\n)(?![\\\\\\\\w-]|\\\\\\\\s*[;}])\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},\\\"pseudo-elements\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?:\\\\n (::?) # Elements using both : and :: notation\\\\n (?: after\\\\n | before\\\\n | first-letter\\\\n | first-line\\\\n | (?:-(?:ah|apple|atsc|epub|hp|khtml|moz\\\\n |ms|o|rim|ro|tc|wap|webkit|xv)\\\\n | (?:mso|prince))\\\\n -[a-z-]+\\\\n )\\\\n |\\\\n (::) # Double-colon only\\\\n (?: backdrop\\\\n | content\\\\n | grammar-error\\\\n | marker\\\\n | placeholder\\\\n | selection\\\\n | shadow\\\\n | spelling-error\\\\n )\\\\n)\\\\n(?![\\\\\\\\w-]|\\\\\\\\s*[;}])\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-element.css\\\"},\\\"rule-list\\\":{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.property-list.begin.bracket.curly.css\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.property-list.end.bracket.curly.css\\\"}},\\\"name\\\":\\\"meta.property-list.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rule-list-innards\\\"}]},\\\"rule-list-innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"include\\\":\\\"#font-features\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w-])--(?:[-a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*\\\",\\\"name\\\":\\\"variable.css\\\"},{\\\"begin\\\":\\\"(?<![-a-zA-Z])(?=[-a-zA-Z])\\\",\\\"end\\\":\\\"$|(?![-a-zA-Z])\\\",\\\"name\\\":\\\"meta.property-name.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property-names\\\"}]},{\\\"begin\\\":\\\"(:)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.css\\\"}},\\\"contentName\\\":\\\"meta.property-value.css\\\",\\\"end\\\":\\\"\\\\\\\\s*(;)|\\\\\\\\s*(?=}|\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#property-values\\\"}]},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}]},\\\"selector\\\":{\\\"begin\\\":\\\"(?=(?:\\\\\\\\|)?(?:[-\\\\\\\\[:.*\\\\\\\\#a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.)))\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*[/@{)])\\\",\\\"name\\\":\\\"meta.selector.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#selector-innards\\\"}]},\\\"selector-innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#commas\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"include\\\":\\\"#combinators\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.namespace-prefix.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.css\\\"}},\\\"match\\\":\\\"(?:^|(?<=[\\\\\\\\s,(};]))(?![-\\\\\\\\w*]+\\\\\\\\|(?![-\\\\\\\\[:.*\\\\\\\\#a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F]))((?:[-a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*|\\\\\\\\*)?(\\\\\\\\|)\\\"},{\\\"include\\\":\\\"#tag-names\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"entity.name.tag.wildcard.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}},\\\"match\\\":\\\"(?<![@\\\\\\\\w-])([.\\\\\\\\#])((?:-?[0-9]|-(?=$|[\\\\\\\\s,.\\\\\\\\#)\\\\\\\\[:{>+~|]|/\\\\\\\\*)|(?:[-a-zA-Z_0-9]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*(?:[!\\\\\\\"'%&(*;<?@^`|\\\\\\\\]}]|/(?!\\\\\\\\*))+)(?:[-a-zA-Z_0-9]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*)\\\",\\\"name\\\":\\\"invalid.illegal.bad-identifier.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\.)((?:[-a-zA-Z_0-9]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+)(?=$|[\\\\\\\\s,.\\\\\\\\#)\\\\\\\\[:{>+~|]|/\\\\\\\\*)\\\",\\\"name\\\":\\\"entity.other.attribute-name.class.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\#)(-?(?![0-9])(?:[-a-zA-Z0-9_]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+)(?=$|[\\\\\\\\s,.\\\\\\\\#)\\\\\\\\[:{>+~|]|/\\\\\\\\*)\\\",\\\"name\\\":\\\"entity.other.attribute-name.id.css\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.entity.begin.bracket.square.css\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.entity.end.bracket.square.css\\\"}},\\\"name\\\":\\\"meta.attribute-selector.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ignore-case.css\\\"}},\\\"match\\\":\\\"(?<=[\\\\\\\"'\\\\\\\\s]|^|\\\\\\\\*/)\\\\\\\\s*([iI])\\\\\\\\s*(?=[\\\\\\\\s\\\\\\\\]]|/\\\\\\\\*|$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.attribute-value.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}},\\\"match\\\":\\\"(?<==)\\\\\\\\s*((?!/\\\\\\\\*)(?:[^\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\s\\\\\\\\]]|\\\\\\\\\\\\\\\\.)+)\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"match\\\":\\\"[~|^$*]?=\\\",\\\"name\\\":\\\"keyword.operator.pattern.css\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.separator.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.namespace-prefix.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}},\\\"match\\\":\\\"(-?(?!\\\\\\\\d)(?:[\\\\\\\\w-]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+|\\\\\\\\*)(?=\\\\\\\\|(?!\\\\\\\\s|=|$|\\\\\\\\])(?:-?(?!\\\\\\\\d)|[\\\\\\\\\\\\\\\\\\\\\\\\w-]|[^\\\\\\\\x00-\\\\\\\\x7F]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}},\\\"match\\\":\\\"(-?(?!\\\\\\\\d)(?>[\\\\\\\\w-]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+)\\\\\\\\s*(?=[~|^\\\\\\\\]$*=]|/\\\\\\\\*)\\\"}]},{\\\"include\\\":\\\"#pseudo-classes\\\"},{\\\"include\\\":\\\"#pseudo-elements\\\"},{\\\"include\\\":\\\"#functional-pseudo-classes\\\"},{\\\"match\\\":\\\"(?<![@\\\\\\\\w-])(?=[a-z]\\\\\\\\w*-)(?:(?![A-Z])[\\\\\\\\w-])+(?![(\\\\\\\\w-])\\\",\\\"name\\\":\\\"entity.name.tag.custom.css\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.css\\\"}},\\\"end\\\":\\\"\\\\\\\"|(?<!\\\\\\\\\\\\\\\\)(?=$|\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.css\\\"}},\\\"name\\\":\\\"string.quoted.double.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:\\\\\\\\G|^)(?=(?:[^\\\\\\\\\\\\\\\\\\\\\\\"]|\\\\\\\\\\\\\\\\.)+$)\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"invalid.illegal.unclosed.string.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]},{\\\"include\\\":\\\"#escapes\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.css\\\"}},\\\"end\\\":\\\"'|(?<!\\\\\\\\\\\\\\\\)(?=$|\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.css\\\"}},\\\"name\\\":\\\"string.quoted.single.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:\\\\\\\\G|^)(?=(?:[^\\\\\\\\\\\\\\\\']|\\\\\\\\\\\\\\\\.)+$)\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"invalid.illegal.unclosed.string.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]},{\\\"include\\\":\\\"#escapes\\\"}]}]},\\\"tag-names\\\":{\\\"match\\\":\\\"(?xi) (?<![\\\\\\\\w:-])\\\\n(?:\\\\n # HTML\\\\n a|abbr|acronym|address|applet|area|article|aside|audio|b|base|basefont|bdi|bdo|bgsound\\\\n | big|blink|blockquote|body|br|button|canvas|caption|center|cite|code|col|colgroup|command\\\\n | content|data|datalist|dd|del|details|dfn|dialog|dir|div|dl|dt|element|em|embed|fieldset\\\\n | figcaption|figure|font|footer|form|frame|frameset|h[1-6]|head|header|hgroup|hr|html|i\\\\n | iframe|image|img|input|ins|isindex|kbd|keygen|label|legend|li|link|listing|main|map|mark\\\\n | marquee|math|menu|menuitem|meta|meter|multicol|nav|nextid|nobr|noembed|noframes|noscript\\\\n | object|ol|optgroup|option|output|p|param|picture|plaintext|pre|progress|q|rb|rp|rt|rtc\\\\n | ruby|s|samp|script|section|select|shadow|slot|small|source|spacer|span|strike|strong\\\\n | style|sub|summary|sup|table|tbody|td|template|textarea|tfoot|th|thead|time|title|tr\\\\n | track|tt|u|ul|var|video|wbr|xmp\\\\n\\\\n # SVG\\\\n | altGlyph|altGlyphDef|altGlyphItem|animate|animateColor|animateMotion|animateTransform\\\\n | circle|clipPath|color-profile|cursor|defs|desc|discard|ellipse|feBlend|feColorMatrix\\\\n | feComponentTransfer|feComposite|feConvolveMatrix|feDiffuseLighting|feDisplacementMap\\\\n | feDistantLight|feDropShadow|feFlood|feFuncA|feFuncB|feFuncG|feFuncR|feGaussianBlur\\\\n | feImage|feMerge|feMergeNode|feMorphology|feOffset|fePointLight|feSpecularLighting\\\\n | feSpotLight|feTile|feTurbulence|filter|font-face|font-face-format|font-face-name\\\\n | font-face-src|font-face-uri|foreignObject|g|glyph|glyphRef|hatch|hatchpath|hkern\\\\n | line|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|metadata\\\\n | missing-glyph|mpath|path|pattern|polygon|polyline|radialGradient|rect|set|solidcolor\\\\n | stop|svg|switch|symbol|text|textPath|tref|tspan|use|view|vkern\\\\n\\\\n # MathML\\\\n | annotation|annotation-xml|maction|maligngroup|malignmark|math|menclose|merror|mfenced\\\\n | mfrac|mglyph|mi|mlabeledtr|mlongdiv|mmultiscripts|mn|mo|mover|mpadded|mphantom|mroot\\\\n | mrow|ms|mscarries|mscarry|msgroup|msline|mspace|msqrt|msrow|mstack|mstyle|msub|msubsup\\\\n | msup|mtable|mtd|mtext|mtr|munder|munderover|semantics\\\\n)\\\\n(?=[+~>\\\\\\\\s,.\\\\\\\\#|){:\\\\\\\\[]|/\\\\\\\\*|$)\\\",\\\"name\\\":\\\"entity.name.tag.css\\\"},\\\"unicode-range\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.other.unicode-range.css\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.dash.unicode-range.css\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w-])[Uu]\\\\\\\\+[0-9A-Fa-f?]{1,6}(?:(-)[0-9A-Fa-f]{1,6})?(?![\\\\\\\\w-])\\\"},\\\"url\\\":{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w@-])(url)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.url.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.url.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[^'\\\\\\\")\\\\\\\\s]+\\\",\\\"name\\\":\\\"variable.parameter.url.css\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#escapes\\\"}]}},\\\"scopeName\\\":\\\"source.css\\\"}\"))\n\nexport default [\nlang\n]\n", "import javascript from './javascript.mjs'\nimport css from './css.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"HTML\\\",\\\"injections\\\":{\\\"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)\\\":{\\\"comment\\\":\\\"Uses R: to ensure this matches after any other injections.\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"}]}},\\\"name\\\":\\\"html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xml-processing\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#doctype\\\"},{\\\"include\\\":\\\"#cdata\\\"},{\\\"include\\\":\\\"#tags-valid\\\"},{\\\"include\\\":\\\"#tags-invalid\\\"},{\\\"include\\\":\\\"#entities\\\"}],\\\"repository\\\":{\\\"attribute\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(s(hape|cope|t(ep|art)|ize(s)?|p(ellcheck|an)|elected|lot|andbox|rc(set|doc|lang)?)|h(ttp-equiv|i(dden|gh)|e(ight|aders)|ref(lang)?)|n(o(nce|validate|module)|ame)|c(h(ecked|arset)|ite|o(nt(ent(editable)?|rols)|ords|l(s(pan)?|or))|lass|rossorigin)|t(ype(mustmatch)?|itle|a(rget|bindex)|ranslate)|i(s(map)?|n(tegrity|putmode)|tem(scope|type|id|prop|ref)|d)|op(timum|en)|d(i(sabled|r(name)?)|ownload|e(coding|f(er|ault))|at(etime|a)|raggable)|usemap|p(ing|oster|la(ysinline|ceholder)|attern|reload)|enctype|value|kind|for(m(novalidate|target|enctype|action|method)?)?|w(idth|rap)|l(ist|o(op|w)|a(ng|bel))|a(s(ync)?|c(ce(sskey|pt(-charset)?)|tion)|uto(c(omplete|apitalize)|play|focus)|l(t|low(usermedia|paymentrequest|fullscreen))|bbr)|r(ows(pan)?|e(versed|quired|ferrerpolicy|l|adonly))|m(in(length)?|u(ted|ltiple)|e(thod|dia)|a(nifest|x(length)?)))(?![\\\\\\\\w:-])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"}},\\\"comment\\\":\\\"HTML5 attributes, not event handlers\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.$1.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-interior\\\"}]},{\\\"begin\\\":\\\"style(?![\\\\\\\\w:-])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"}},\\\"comment\\\":\\\"HTML5 style attribute\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.style.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html\\\"}},\\\"end\\\":\\\"(?<=[^\\\\\\\\s=])(?!\\\\\\\\s*=)|(?=/?>)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[^\\\\\\\\s=<>`/]|/(?!>))\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.line.css\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"source.css\\\"}},\\\"match\\\":\\\"([^\\\\\\\\s\\\\\\\"'=<>`/]|/(?!>))+\\\",\\\"name\\\":\\\"string.unquoted.html\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.css\\\"}},\\\"name\\\":\\\"string.quoted.double.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entities\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"(')\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.css\\\"}},\\\"name\\\":\\\"string.quoted.single.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entities\\\"}]}]},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"invalid.illegal.unexpected-equals-sign.html\\\"}]}]},{\\\"begin\\\":\\\"on(s(croll|t(orage|alled)|u(spend|bmit)|e(curitypolicyviolation|ek(ing|ed)|lect))|hashchange|c(hange|o(ntextmenu|py)|u(t|echange)|l(ick|ose)|an(cel|play(through)?))|t(imeupdate|oggle)|in(put|valid)|o(nline|ffline)|d(urationchange|r(op|ag(start|over|e(n(ter|d)|xit)|leave)?)|blclick)|un(handledrejection|load)|p(opstate|lay(ing)?|a(ste|use|ge(show|hide))|rogress)|e(nded|rror|mptied)|volumechange|key(down|up|press)|focus|w(heel|aiting)|l(oad(start|e(nd|d(data|metadata)))?|anguagechange)|a(uxclick|fterprint|bort)|r(e(s(ize|et)|jectionhandled)|atechange)|m(ouse(o(ut|ver)|down|up|enter|leave|move)|essage(error)?)|b(efore(unload|print)|lur))(?![\\\\\\\\w:-])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"}},\\\"comment\\\":\\\"HTML5 attributes, event handlers\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.event-handler.$1.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html\\\"}},\\\"end\\\":\\\"(?<=[^\\\\\\\\s=])(?!\\\\\\\\s*=)|(?=/?>)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[^\\\\\\\\s=<>`/]|/(?!>))\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.line.js\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"source.js\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"match\\\":\\\"(([^\\\\\\\\s\\\\\\\"'=<>`/]|/(?!>))+)\\\",\\\"name\\\":\\\"string.unquoted.html\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.js\\\"}},\\\"name\\\":\\\"string.quoted.double.html\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"match\\\":\\\"([^\\\\\\\\n\\\\\\\"/]|/(?![/*]))+\\\"},{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\")|\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\")|\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.js\\\"}},\\\"name\\\":\\\"comment.block.js\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(')\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.js\\\"}},\\\"name\\\":\\\"string.quoted.single.html\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"match\\\":\\\"([^\\\\\\\\n'/]|/(?![/*]))+\\\"},{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"(?=')|\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.js\\\"}},\\\"end\\\":\\\"(?=')|\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.js\\\"}},\\\"name\\\":\\\"comment.block.js\\\"}]}]},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"invalid.illegal.unexpected-equals-sign.html\\\"}]}]},{\\\"begin\\\":\\\"(data-[a-z\\\\\\\\-]+)(?![\\\\\\\\w:-])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"}},\\\"comment\\\":\\\"HTML5 attributes, data-*\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.data-x.$1.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-interior\\\"}]},{\\\"begin\\\":\\\"(align|bgcolor|border)(?![\\\\\\\\w:-])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"invalid.deprecated.entity.other.attribute-name.html\\\"}},\\\"comment\\\":\\\"HTML attributes, deprecated\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.$1.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-interior\\\"}]},{\\\"begin\\\":\\\"([^\\\\\\\\x{0020}\\\\\\\"'<>/=\\\\\\\\x{0000}-\\\\\\\\x{001F}\\\\\\\\x{007F}-\\\\\\\\x{009F}\\\\\\\\x{FDD0}-\\\\\\\\x{FDEF}\\\\\\\\x{FFFE}\\\\\\\\x{FFFF}\\\\\\\\x{1FFFE}\\\\\\\\x{1FFFF}\\\\\\\\x{2FFFE}\\\\\\\\x{2FFFF}\\\\\\\\x{3FFFE}\\\\\\\\x{3FFFF}\\\\\\\\x{4FFFE}\\\\\\\\x{4FFFF}\\\\\\\\x{5FFFE}\\\\\\\\x{5FFFF}\\\\\\\\x{6FFFE}\\\\\\\\x{6FFFF}\\\\\\\\x{7FFFE}\\\\\\\\x{7FFFF}\\\\\\\\x{8FFFE}\\\\\\\\x{8FFFF}\\\\\\\\x{9FFFE}\\\\\\\\x{9FFFF}\\\\\\\\x{AFFFE}\\\\\\\\x{AFFFF}\\\\\\\\x{BFFFE}\\\\\\\\x{BFFFF}\\\\\\\\x{CFFFE}\\\\\\\\x{CFFFF}\\\\\\\\x{DFFFE}\\\\\\\\x{DFFFF}\\\\\\\\x{EFFFE}\\\\\\\\x{EFFFF}\\\\\\\\x{FFFFE}\\\\\\\\x{FFFFF}\\\\\\\\x{10FFFE}\\\\\\\\x{10FFFF}]+)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"}},\\\"comment\\\":\\\"Anything else that is valid\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.unrecognized.$1.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-interior\\\"}]},{\\\"match\\\":\\\"[^\\\\\\\\s>]+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.html\\\"}]},\\\"attribute-interior\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html\\\"}},\\\"end\\\":\\\"(?<=[^\\\\\\\\s=])(?!\\\\\\\\s*=)|(?=/?>)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([^\\\\\\\\s\\\\\\\"'=<>`/]|/(?!>))+\\\",\\\"name\\\":\\\"string.unquoted.html\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.double.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entities\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.single.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entities\\\"}]},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"invalid.illegal.unexpected-equals-sign.html\\\"}]}]},\\\"cdata\\\":{\\\"begin\\\":\\\"<!\\\\\\\\[CDATA\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"}},\\\"contentName\\\":\\\"string.other.inline-data.html\\\",\\\"end\\\":\\\"]]>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.metadata.cdata.html\\\"},\\\"comment\\\":{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html\\\"}},\\\"end\\\":\\\"-->\\\",\\\"name\\\":\\\"comment.block.html\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G-?>\\\",\\\"name\\\":\\\"invalid.illegal.characters-not-allowed-here.html\\\"},{\\\"match\\\":\\\"<!--(?!>)|<!-(?=-->)\\\",\\\"name\\\":\\\"invalid.illegal.characters-not-allowed-here.html\\\"},{\\\"match\\\":\\\"--!>\\\",\\\"name\\\":\\\"invalid.illegal.characters-not-allowed-here.html\\\"}]},\\\"core-minus-invalid\\\":{\\\"comment\\\":\\\"This should be the root pattern array includes minus #tags-invalid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xml-processing\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#doctype\\\"},{\\\"include\\\":\\\"#cdata\\\"},{\\\"include\\\":\\\"#tags-valid\\\"},{\\\"include\\\":\\\"#entities\\\"}]},\\\"doctype\\\":{\\\"begin\\\":\\\"<!(?=(?i:DOCTYPE\\\\\\\\s))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.metadata.doctype.html\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G(?i:DOCTYPE)\\\",\\\"name\\\":\\\"entity.name.tag.html\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.html\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s>]+\\\",\\\"name\\\":\\\"entity.other.attribute-name.html\\\"}]},\\\"entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"},\\\"912\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"}},\\\"comment\\\":\\\"Yes this is a bit ridiculous, there are quite a lot of these\\\",\\\"match\\\":\\\"(&)(?=[a-zA-Z])((a(s(ymp(eq)?|cr|t)|n(d(slope|d|v|and)?|g(s(t|ph)|zarr|e|le|rt(vb(d)?)?|msd(a(h|c|d|e|f|a|g|b))?)?)|c(y|irc|d|ute|E)?|tilde|o(pf|gon)|uml|p(id|os|prox(eq)?|e|E|acir)?|elig|f(r)?|w(conint|int)|l(pha|e(ph|fsym))|acute|ring|grave|m(p|a(cr|lg))|breve)|A(s(sign|cr)|nd|MP|c(y|irc)|tilde|o(pf|gon)|uml|pplyFunction|fr|Elig|lpha|acute|ring|grave|macr|breve))|(B(scr|cy|opf|umpeq|e(cause|ta|rnoullis)|fr|a(ckslash|r(v|wed))|reve)|b(s(cr|im(e)?|ol(hsub|b)?|emi)|n(ot|e(quiv)?)|c(y|ong)|ig(s(tar|qcup)|c(irc|up|ap)|triangle(down|up)|o(times|dot|plus)|uplus|vee|wedge)|o(t(tom)?|pf|wtie|x(h(d|u|D|U)?|times|H(d|u|D|U)?|d(R|l|r|L)|u(R|l|r|L)|plus|D(R|l|r|L)|v(R|h|H|l|r|L)?|U(R|l|r|L)|V(R|h|H|l|r|L)?|minus|box))|Not|dquo|u(ll(et)?|mp(e(q)?|E)?)|prime|e(caus(e)?|t(h|ween|a)|psi|rnou|mptyv)|karow|fr|l(ock|k(1(2|4)|34)|a(nk|ck(square|triangle(down|left|right)?|lozenge)))|a(ck(sim(eq)?|cong|prime|epsilon)|r(vee|wed(ge)?))|r(eve|vbar)|brk(tbrk)?))|(c(s(cr|u(p(e)?|b(e)?))|h(cy|i|eck(mark)?)|ylcty|c(irc|ups(sm)?|edil|a(ps|ron))|tdot|ir(scir|c(eq|le(d(R|circ|S|dash|ast)|arrow(left|right)))?|e|fnint|E|mid)?|o(n(int|g(dot)?)|p(y(sr)?|f|rod)|lon(e(q)?)?|m(p(fn|le(xes|ment))?|ma(t)?))|dot|u(darr(l|r)|p(s|c(up|ap)|or|dot|brcap)?|e(sc|pr)|vee|wed|larr(p)?|r(vearrow(left|right)|ly(eq(succ|prec)|vee|wedge)|arr(m)?|ren))|e(nt(erdot)?|dil|mptyv)|fr|w(conint|int)|lubs(uit)?|a(cute|p(s|c(up|ap)|dot|and|brcup)?|r(on|et))|r(oss|arr))|C(scr|hi|c(irc|onint|edil|aron)|ircle(Minus|Times|Dot|Plus)|Hcy|o(n(tourIntegral|int|gruent)|unterClockwiseContourIntegral|p(f|roduct)|lon(e)?)|dot|up(Cap)?|OPY|e(nterDot|dilla)|fr|lo(seCurly(DoubleQuote|Quote)|ckwiseContourIntegral)|a(yleys|cute|p(italDifferentialD)?)|ross))|(d(s(c(y|r)|trok|ol)|har(l|r)|c(y|aron)|t(dot|ri(f)?)|i(sin|e|v(ide(ontimes)?|onx)?|am(s|ond(suit)?)?|gamma)|Har|z(cy|igrarr)|o(t(square|plus|eq(dot)?|minus)?|ublebarwedge|pf|wn(harpoon(left|right)|downarrows|arrow)|llar)|d(otseq|a(rr|gger))?|u(har|arr)|jcy|e(lta|g|mptyv)|f(isht|r)|wangle|lc(orn|rop)|a(sh(v)?|leth|rr|gger)|r(c(orn|rop)|bkarow)|b(karow|lac)|Arr)|D(s(cr|trok)|c(y|aron)|Scy|i(fferentialD|a(critical(Grave|Tilde|Do(t|ubleAcute)|Acute)|mond))|o(t(Dot|Equal)?|uble(Right(Tee|Arrow)|ContourIntegral|Do(t|wnArrow)|Up(DownArrow|Arrow)|VerticalBar|L(ong(RightArrow|Left(RightArrow|Arrow))|eft(RightArrow|Tee|Arrow)))|pf|wn(Right(TeeVector|Vector(Bar)?)|Breve|Tee(Arrow)?|arrow|Left(RightVector|TeeVector|Vector(Bar)?)|Arrow(Bar|UpArrow)?))|Zcy|el(ta)?|D(otrahd)?|Jcy|fr|a(shv|rr|gger)))|(e(s(cr|im|dot)|n(sp|g)|c(y|ir(c)?|olon|aron)|t(h|a)|o(pf|gon)|dot|u(ro|ml)|p(si(v|lon)?|lus|ar(sl)?)|e|D(ot|Dot)|q(s(im|lant(less|gtr))|c(irc|olon)|u(iv(DD)?|est|als)|vparsl)|f(Dot|r)|l(s(dot)?|inters|l)?|a(ster|cute)|r(Dot|arr)|g(s(dot)?|rave)?|x(cl|ist|p(onentiale|ectation))|m(sp(1(3|4))?|pty(set|v)?|acr))|E(s(cr|im)|c(y|irc|aron)|ta|o(pf|gon)|NG|dot|uml|TH|psilon|qu(ilibrium|al(Tilde)?)|fr|lement|acute|grave|x(ists|ponentialE)|m(pty(SmallSquare|VerySmallSquare)|acr)))|(f(scr|nof|cy|ilig|o(pf|r(k(v)?|all))|jlig|partint|emale|f(ilig|l(ig|lig)|r)|l(tns|lig|at)|allingdotseq|r(own|a(sl|c(1(2|8|3|4|5|6)|78|2(3|5)|3(8|4|5)|45|5(8|6)))))|F(scr|cy|illed(SmallSquare|VerySmallSquare)|o(uriertrf|pf|rAll)|fr))|(G(scr|c(y|irc|edil)|t|opf|dot|T|Jcy|fr|amma(d)?|reater(Greater|SlantEqual|Tilde|Equal(Less)?|FullEqual|Less)|g|breve)|g(s(cr|im(e|l)?)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|irc)|t(c(c|ir)|dot|quest|lPar|r(sim|dot|eq(qless|less)|less|a(pprox|rr)))?|imel|opf|dot|jcy|e(s(cc|dot(o(l)?)?|l(es)?)?|q(slant|q)?|l)?|v(nE|ertneqq)|fr|E(l)?|l(j|E|a)?|a(cute|p|mma(d)?)|rave|g(g)?|breve))|(h(s(cr|trok|lash)|y(phen|bull)|circ|o(ok(leftarrow|rightarrow)|pf|arr|rbar|mtht)|e(llip|arts(uit)?|rcon)|ks(earow|warow)|fr|a(irsp|lf|r(dcy|r(cir|w)?)|milt)|bar|Arr)|H(s(cr|trok)|circ|ilbertSpace|o(pf|rizontalLine)|ump(DownHump|Equal)|fr|a(cek|t)|ARDcy))|(i(s(cr|in(s(v)?|dot|v|E)?)|n(care|t(cal|prod|e(rcal|gers)|larhk)?|odot|fin(tie)?)?|c(y|irc)?|t(ilde)?|i(nfin|i(nt|int)|ota)?|o(cy|ta|pf|gon)|u(kcy|ml)|jlig|prod|e(cy|xcl)|quest|f(f|r)|acute|grave|m(of|ped|a(cr|th|g(part|e|line))))|I(scr|n(t(e(rsection|gral))?|visible(Comma|Times))|c(y|irc)|tilde|o(ta|pf|gon)|dot|u(kcy|ml)|Ocy|Jlig|fr|Ecy|acute|grave|m(plies|a(cr|ginaryI))?))|(j(s(cr|ercy)|c(y|irc)|opf|ukcy|fr|math)|J(s(cr|ercy)|c(y|irc)|opf|ukcy|fr))|(k(scr|hcy|c(y|edil)|opf|jcy|fr|appa(v)?|green)|K(scr|c(y|edil)|Hcy|opf|Jcy|fr|appa))|(l(s(h|cr|trok|im(e|g)?|q(uo(r)?|b)|aquo)|h(ar(d|u(l)?)|blk)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|ub|e(il|dil)|aron)|Barr|t(hree|c(c|ir)|imes|dot|quest|larr|r(i(e|f)?|Par))?|Har|o(ng(left(arrow|rightarrow)|rightarrow|mapsto)|times|z(enge|f)?|oparrow(left|right)|p(f|lus|ar)|w(ast|bar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|r(dhar|ushar))|ur(dshar|uhar)|jcy|par(lt)?|e(s(s(sim|dot|eq(qgtr|gtr)|approx|gtr)|cc|dot(o(r)?)?|g(es)?)?|q(slant|q)?|ft(harpoon(down|up)|threetimes|leftarrows|arrow(tail)?|right(squigarrow|harpoons|arrow(s)?))|g)?|v(nE|ertneqq)|f(isht|loor|r)|E(g)?|l(hard|corner|tri|arr)?|a(ng(d|le)?|cute|t(e(s)?|ail)?|p|emptyv|quo|rr(sim|hk|tl|pl|fs|lp|b(fs)?)?|gran|mbda)|r(har(d)?|corner|tri|arr|m)|g(E)?|m(idot|oust(ache)?)|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr))|L(s(h|cr|trok)|c(y|edil|aron)|t|o(ng(RightArrow|left(arrow|rightarrow)|rightarrow|Left(RightArrow|Arrow))|pf|wer(RightArrow|LeftArrow))|T|e(ss(Greater|SlantEqual|Tilde|EqualGreater|FullEqual|Less)|ft(Right(Vector|Arrow)|Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|rightarrow|Floor|A(ngleBracket|rrow(RightArrow|Bar)?)))|Jcy|fr|l(eftarrow)?|a(ng|cute|placetrf|rr|mbda)|midot))|(M(scr|cy|inusPlus|opf|u|e(diumSpace|llintrf)|fr|ap)|m(s(cr|tpos)|ho|nplus|c(y|omma)|i(nus(d(u)?|b)?|cro|d(cir|dot|ast)?)|o(dels|pf)|dash|u(ltimap|map)?|p|easuredangle|DDot|fr|l(cp|dr)|a(cr|p(sto(down|up|left)?)?|l(t(ese)?|e)|rker)))|(n(s(hort(parallel|mid)|c(cue|e|r)?|im(e(q)?)?|u(cc(eq)?|p(set(eq(q)?)?|e|E)?|b(set(eq(q)?)?|e|E)?)|par|qsu(pe|be)|mid)|Rightarrow|h(par|arr|Arr)|G(t(v)?|g)|c(y|ong(dot)?|up|edil|a(p|ron))|t(ilde|lg|riangle(left(eq)?|right(eq)?)|gl)|i(s(d)?|v)?|o(t(ni(v(c|a|b))?|in(dot|v(c|a|b)|E)?)?|pf)|dash|u(m(sp|ero)?)?|jcy|p(olint|ar(sl|t|allel)?|r(cue|e(c(eq)?)?)?)|e(s(im|ear)|dot|quiv|ar(hk|r(ow)?)|xist(s)?|Arr)?|v(sim|infin|Harr|dash|Dash|l(t(rie)?|e|Arr)|ap|r(trie|Arr)|g(t|e))|fr|w(near|ar(hk|r(ow)?)|Arr)|V(dash|Dash)|l(sim|t(ri(e)?)?|dr|e(s(s)?|q(slant|q)?|ft(arrow|rightarrow))?|E|arr|Arr)|a(ng|cute|tur(al(s)?)?|p(id|os|prox|E)?|bla)|r(tri(e)?|ightarrow|arr(c|w)?|Arr)|g(sim|t(r)?|e(s|q(slant|q)?)?|E)|mid|L(t(v)?|eft(arrow|rightarrow)|l)|b(sp|ump(e)?))|N(scr|c(y|edil|aron)|tilde|o(nBreakingSpace|Break|t(R(ightTriangle(Bar|Equal)?|everseElement)|Greater(Greater|SlantEqual|Tilde|Equal|FullEqual|Less)?|S(u(cceeds(SlantEqual|Tilde|Equal)?|perset(Equal)?|bset(Equal)?)|quareSu(perset(Equal)?|bset(Equal)?))|Hump(DownHump|Equal)|Nested(GreaterGreater|LessLess)|C(ongruent|upCap)|Tilde(Tilde|Equal|FullEqual)?|DoubleVerticalBar|Precedes(SlantEqual|Equal)?|E(qual(Tilde)?|lement|xists)|VerticalBar|Le(ss(Greater|SlantEqual|Tilde|Equal|Less)?|ftTriangle(Bar|Equal)?))?|pf)|u|e(sted(GreaterGreater|LessLess)|wLine|gative(MediumSpace|Thi(nSpace|ckSpace)|VeryThinSpace))|Jcy|fr|acute))|(o(s(cr|ol|lash)|h(m|bar)|c(y|ir(c)?)|ti(lde|mes(as)?)|S|int|opf|d(sold|iv|ot|ash|blac)|uml|p(erp|lus|ar)|elig|vbar|f(cir|r)|l(c(ir|ross)|t|ine|arr)|a(st|cute)|r(slope|igof|or|d(er(of)?|f|m)?|v|arr)?|g(t|on|rave)|m(i(nus|cron|d)|ega|acr))|O(s(cr|lash)|c(y|irc)|ti(lde|mes)|opf|dblac|uml|penCurly(DoubleQuote|Quote)|ver(B(ar|rac(e|ket))|Parenthesis)|fr|Elig|acute|r|grave|m(icron|ega|acr)))|(p(s(cr|i)|h(i(v)?|one|mmat)|cy|i(tchfork|v)?|o(intint|und|pf)|uncsp|er(cnt|tenk|iod|p|mil)|fr|l(us(sim|cir|two|d(o|u)|e|acir|mn|b)?|an(ck(h)?|kv))|ar(s(im|l)|t|a(llel)?)?|r(sim|n(sim|E|ap)|cue|ime(s)?|o(d|p(to)?|f(surf|line|alar))|urel|e(c(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?)?|E|ap)?|m)|P(s(cr|i)|hi|cy|i|o(incareplane|pf)|fr|lusMinus|artialD|r(ime|o(duct|portion(al)?)|ecedes(SlantEqual|Tilde|Equal)?)?))|(q(scr|int|opf|u(ot|est(eq)?|at(int|ernions))|prime|fr)|Q(scr|opf|UOT|fr))|(R(s(h|cr)|ho|c(y|edil|aron)|Barr|ight(Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|Floor|A(ngleBracket|rrow(Bar|LeftArrow)?))|o(undImplies|pf)|uleDelayed|e(verse(UpEquilibrium|E(quilibrium|lement)))?|fr|EG|a(ng|cute|rr(tl)?)|rightarrow)|r(s(h|cr|q(uo(r)?|b)|aquo)|h(o(v)?|ar(d|u(l)?))|nmid|c(y|ub|e(il|dil)|aron)|Barr|t(hree|imes|ri(e|f|ltri)?)|i(singdotseq|ng|ght(squigarrow|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(tail)?|rightarrows))|Har|o(times|p(f|lus|ar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|ldhar)|uluhar|p(polint|ar(gt)?)|e(ct|al(s|ine|part)?|g)|f(isht|loor|r)|l(har|arr|m)|a(ng(d|e|le)?|c(ute|e)|t(io(nals)?|ail)|dic|emptyv|quo|rr(sim|hk|c|tl|pl|fs|w|lp|ap|b(fs)?)?)|rarr|x|moust(ache)?|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr)))|(s(s(cr|tarf|etmn|mile)|h(y|c(hcy|y)|ort(parallel|mid)|arp)|c(sim|y|n(sim|E|ap)|cue|irc|polint|e(dil)?|E|a(p|ron))?|t(ar(f)?|r(ns|aight(phi|epsilon)))|i(gma(v|f)?|m(ne|dot|plus|e(q)?|l(E)?|rarr|g(E)?)?)|zlig|o(pf|ftcy|l(b(ar)?)?)|dot(e|b)?|u(ng|cc(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?|p(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|hs(ol|ub)|1|n(e|E)|2|d(sub|ot)|3|plus|e(dot)?|E|larr|mult)?|m|b(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|n(e|E)|dot|plus|e(dot)?|E|rarr|mult)?)|pa(des(uit)?|r)|e(swar|ct|tm(n|inus)|ar(hk|r(ow)?)|xt|mi|Arr)|q(su(p(set(eq)?|e)?|b(set(eq)?|e)?)|c(up(s)?|ap(s)?)|u(f|ar(e|f))?)|fr(own)?|w(nwar|ar(hk|r(ow)?)|Arr)|larr|acute|rarr|m(t(e(s)?)?|i(d|le)|eparsl|a(shp|llsetminus))|bquo)|S(scr|hort(RightArrow|DownArrow|UpArrow|LeftArrow)|c(y|irc|edil|aron)?|tar|igma|H(cy|CHcy)|opf|u(c(hThat|ceeds(SlantEqual|Tilde|Equal)?)|p(set|erset(Equal)?)?|m|b(set(Equal)?)?)|OFTcy|q(uare(Su(perset(Equal)?|bset(Equal)?)|Intersection|Union)?|rt)|fr|acute|mallCircle))|(t(s(hcy|c(y|r)|trok)|h(i(nsp|ck(sim|approx))|orn|e(ta(sym|v)?|re(4|fore))|k(sim|ap))|c(y|edil|aron)|i(nt|lde|mes(d|b(ar)?)?)|o(sa|p(cir|f(ork)?|bot)?|ea)|dot|prime|elrec|fr|w(ixt|ohead(leftarrow|rightarrow))|a(u|rget)|r(i(sb|time|dot|plus|e|angle(down|q|left(eq)?|right(eq)?)?|minus)|pezium|ade)|brk)|T(s(cr|trok)|RADE|h(i(nSpace|ckSpace)|e(ta|refore))|c(y|edil|aron)|S(cy|Hcy)|ilde(Tilde|Equal|FullEqual)?|HORN|opf|fr|a(u|b)|ripleDot))|(u(scr|h(ar(l|r)|blk)|c(y|irc)|t(ilde|dot|ri(f)?)|Har|o(pf|gon)|d(har|arr|blac)|u(arr|ml)|p(si(h|lon)?|harpoon(left|right)|downarrow|uparrows|lus|arrow)|f(isht|r)|wangle|l(c(orn(er)?|rop)|tri)|a(cute|rr)|r(c(orn(er)?|rop)|tri|ing)|grave|m(l|acr)|br(cy|eve)|Arr)|U(scr|n(ion(Plus)?|der(B(ar|rac(e|ket))|Parenthesis))|c(y|irc)|tilde|o(pf|gon)|dblac|uml|p(si(lon)?|downarrow|Tee(Arrow)?|per(RightArrow|LeftArrow)|DownArrow|Equilibrium|arrow|Arrow(Bar|DownArrow)?)|fr|a(cute|rr(ocir)?)|ring|grave|macr|br(cy|eve)))|(v(s(cr|u(pn(e|E)|bn(e|E)))|nsu(p|b)|cy|Bar(v)?|zigzag|opf|dash|prop|e(e(eq|bar)?|llip|r(t|bar))|Dash|fr|ltri|a(ngrt|r(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|t(heta|riangle(left|right))|p(hi|i|ropto)|epsilon|kappa|r(ho)?))|rtri|Arr)|V(scr|cy|opf|dash(l)?|e(e|r(yThinSpace|t(ical(Bar|Separator|Tilde|Line))?|bar))|Dash|vdash|fr|bar))|(w(scr|circ|opf|p|e(ierp|d(ge(q)?|bar))|fr|r(eath)?)|W(scr|circ|opf|edge|fr))|(X(scr|i|opf|fr)|x(s(cr|qcup)|h(arr|Arr)|nis|c(irc|up|ap)|i|o(time|dot|p(f|lus))|dtri|u(tri|plus)|vee|fr|wedge|l(arr|Arr)|r(arr|Arr)|map))|(y(scr|c(y|irc)|icy|opf|u(cy|ml)|en|fr|ac(y|ute))|Y(scr|c(y|irc)|opf|uml|Icy|Ucy|fr|acute|Acy))|(z(scr|hcy|c(y|aron)|igrarr|opf|dot|e(ta|etrf)|fr|w(nj|j)|acute)|Z(scr|c(y|aron)|Hcy|opf|dot|e(ta|roWidthSpace)|fr|acute)))(;)\\\",\\\"name\\\":\\\"constant.character.entity.named.$2.html\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"}},\\\"match\\\":\\\"(&)#[0-9]+(;)\\\",\\\"name\\\":\\\"constant.character.entity.numeric.decimal.html\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"}},\\\"match\\\":\\\"(&)#[xX][0-9a-fA-F]+(;)\\\",\\\"name\\\":\\\"constant.character.entity.numeric.hexadecimal.html\\\"},{\\\"match\\\":\\\"&(?=[a-zA-Z0-9]+;)\\\",\\\"name\\\":\\\"invalid.illegal.ambiguous-ampersand.html\\\"}]},\\\"math\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(<)(math)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.structure.$2.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)(\\\\\\\\2)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.structure.$2.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.structure.$2.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]}],\\\"repository\\\":{\\\"attribute\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(s(hift|ymmetric|cript(sizemultiplier|level|minsize)|t(ackalign|retchy)|ide|u(pscriptshift|bscriptshift)|e(parator(s)?|lection)|rc)|h(eight|ref)|n(otation|umalign)|c(haralign|olumn(spa(n|cing)|width|lines|align)|lose|rossout)|i(n(dent(shift(first|last)?|target|align(first|last)?)|fixlinebreakstyle)|d)|o(pen|verflow)|d(i(splay(style)?|r)|e(nomalign|cimalpoint|pth))|position|e(dge|qual(columns|rows))|voffset|f(orm|ence|rame(spacing)?)|width|l(space|ine(thickness|leading|break(style|multchar)?)|o(ngdivstyle|cation)|ength|quote|argeop)|a(c(cent(under)?|tiontype)|l(t(text|img(-(height|valign|width))?)|ign(mentscope)?))|r(space|ow(spa(n|cing)|lines|align)|quote)|groupalign|x(link:href|mlns)|m(in(size|labelspacing)|ovablelimits|a(th(size|color|variant|background)|xsize))|bevelled)(?![\\\\\\\\w:-])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.$1.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-interior\\\"}]},{\\\"begin\\\":\\\"([^\\\\\\\\x{0020}\\\\\\\"'<>/=\\\\\\\\x{0000}-\\\\\\\\x{001F}\\\\\\\\x{007F}-\\\\\\\\x{009F}\\\\\\\\x{FDD0}-\\\\\\\\x{FDEF}\\\\\\\\x{FFFE}\\\\\\\\x{FFFF}\\\\\\\\x{1FFFE}\\\\\\\\x{1FFFF}\\\\\\\\x{2FFFE}\\\\\\\\x{2FFFF}\\\\\\\\x{3FFFE}\\\\\\\\x{3FFFF}\\\\\\\\x{4FFFE}\\\\\\\\x{4FFFF}\\\\\\\\x{5FFFE}\\\\\\\\x{5FFFF}\\\\\\\\x{6FFFE}\\\\\\\\x{6FFFF}\\\\\\\\x{7FFFE}\\\\\\\\x{7FFFF}\\\\\\\\x{8FFFE}\\\\\\\\x{8FFFF}\\\\\\\\x{9FFFE}\\\\\\\\x{9FFFF}\\\\\\\\x{AFFFE}\\\\\\\\x{AFFFF}\\\\\\\\x{BFFFE}\\\\\\\\x{BFFFF}\\\\\\\\x{CFFFE}\\\\\\\\x{CFFFF}\\\\\\\\x{DFFFE}\\\\\\\\x{DFFFF}\\\\\\\\x{EFFFE}\\\\\\\\x{EFFFF}\\\\\\\\x{FFFFE}\\\\\\\\x{FFFFF}\\\\\\\\x{10FFFE}\\\\\\\\x{10FFFF}]+)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"}},\\\"comment\\\":\\\"Anything else that is valid\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.unrecognized.$1.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-interior\\\"}]},{\\\"match\\\":\\\"[^\\\\\\\\s>]+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.html\\\"}]},\\\"tags\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#cdata\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.structure.math.$2.void.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"match\\\":\\\"(?i)(<)(annotation|annotation-xml|semantics|menclose|merror|mfenced|mfrac|mpadded|mphantom|mroot|mrow|msqrt|mstyle|mmultiscripts|mover|mprescripts|msub|msubsup|msup|munder|munderover|none|mlabeledtr|mtable|mtd|mtr|mlongdiv|mscarries|mscarry|msgroup|msline|msrow|mstack|maction)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(/>))\\\",\\\"name\\\":\\\"meta.element.structure.math.$2.html\\\"},{\\\"begin\\\":\\\"(?i)(<)(annotation|annotation-xml|semantics|menclose|merror|mfenced|mfrac|mpadded|mphantom|mroot|mrow|msqrt|mstyle|mmultiscripts|mover|mprescripts|msub|msubsup|msup|munder|munderover|none|mlabeledtr|mtable|mtd|mtr|mlongdiv|mscarries|mscarry|msgroup|msline|msrow|mstack|maction)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.structure.math.$2.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)(\\\\\\\\2)\\\\\\\\s*(>)|(/>)|(?=</\\\\\\\\w+)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.structure.math.$2.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.structure.math.$2.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.inline.math.$2.void.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"match\\\":\\\"(?i)(<)(mi|mn|mo|ms|mspace|mtext|maligngroup|malignmark)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(/>))\\\",\\\"name\\\":\\\"meta.element.inline.math.$2.html\\\"},{\\\"begin\\\":\\\"(?i)(<)(mi|mn|mo|ms|mspace|mtext|maligngroup|malignmark)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.inline.math.$2.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)(\\\\\\\\2)\\\\\\\\s*(>)|(/>)|(?=</\\\\\\\\w+)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.inline.math.$2.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.inline.math.$2.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.inline.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.object.math.$2.void.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"match\\\":\\\"(?i)(<)(mglyph)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(/>))\\\",\\\"name\\\":\\\"meta.element.object.math.$2.html\\\"},{\\\"begin\\\":\\\"(?i)(<)(mglyph)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.object.math.$2.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)(\\\\\\\\2)\\\\\\\\s*(>)|(/>)|(?=</\\\\\\\\w+)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.object.math.$2.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.object.math.$2.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.object.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.other.invalid.void.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-tag.html\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"match\\\":\\\"(?i)(<)(([\\\\\\\\w:]+))(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(/>))\\\",\\\"name\\\":\\\"meta.element.other.invalid.html\\\"},{\\\"begin\\\":\\\"(?i)(<)((\\\\\\\\w[^\\\\\\\\s>]*))(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.other.invalid.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-tag.html\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)((\\\\\\\\2))\\\\\\\\s*(>)|(/>)|(?=</\\\\\\\\w+)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.other.invalid.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-tag.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.other.invalid.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.invalid.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]},{\\\"include\\\":\\\"#tags-invalid\\\"}]}}},\\\"svg\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(<)(svg)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.structure.$2.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)(\\\\\\\\2)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.structure.$2.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.structure.$2.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]}],\\\"repository\\\":{\\\"attribute\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(s(hape-rendering|ystemLanguage|cale|t(yle|itchTiles|op-(color|opacity)|dDeviation|em(h|v)|artOffset|r(i(ng|kethrough-(thickness|position))|oke(-(opacity|dash(offset|array)|width|line(cap|join)|miterlimit))?))|urfaceScale|p(e(cular(Constant|Exponent)|ed)|acing|readMethod)|eed|lope)|h(oriz-(origin-x|adv-x)|eight|anging|ref(lang)?)|y(1|2|ChannelSelector)?|n(umOctaves|ame)|c(y|o(ntentS(criptType|tyleType)|lor(-(interpolation(-filters)?|profile|rendering))?)|ursor|l(ip(-(path|rule)|PathUnits)?|ass)|a(p-height|lcMode)|x)|t(ype|o|ext(-(decoration|anchor|rendering)|Length)|a(rget(X|Y)?|b(index|leValues))|ransform)|i(n(tercept|2)?|d(eographic)?|mage-rendering)|z(oomAndPan)?|o(p(erator|acity)|ver(flow|line-(thickness|position))|ffset|r(i(ent(ation)?|gin)|der))|d(y|i(splay|visor|ffuseConstant|rection)|ominant-baseline|ur|e(scent|celerate)|x)?|u(1|n(i(code(-(range|bidi))?|ts-per-em)|derline-(thickness|position))|2)|p(ing|oint(s(At(X|Y|Z))?|er-events)|a(nose-1|t(h(Length)?|tern(ContentUnits|Transform|Units))|int-order)|r(imitiveUnits|eserveA(spectRatio|lpha)))|e(n(d|able-background)|dgeMode|levation|x(ternalResourcesRequired|ponent))|v(i(sibility|ew(Box|Target))|-(hanging|ideographic|alphabetic|mathematical)|e(ctor-effect|r(sion|t-(origin-(y|x)|adv-y)))|alues)|k(1|2|3|e(y(Splines|Times|Points)|rn(ing|el(Matrix|UnitLength)))|4)?|f(y|il(ter(Res|Units)?|l(-(opacity|rule))?)|o(nt-(s(t(yle|retch)|ize(-adjust)?)|variant|family|weight)|rmat)|lood-(color|opacity)|r(om)?|x)|w(idth(s)?|ord-spacing|riting-mode)|l(i(ghting-color|mitingConeAngle)|ocal|e(ngthAdjust|tter-spacing)|ang)|a(scent|cc(umulate|ent-height)|ttribute(Name|Type)|zimuth|dditive|utoReverse|l(ignment-baseline|phabetic|lowReorder)|rabic-form|mplitude)|r(y|otate|e(s(tart|ult)|ndering-intent|peat(Count|Dur)|quired(Extensions|Features)|f(X|Y|errerPolicy)|l)|adius|x)?|g(1|2|lyph(Ref|-(name|orientation-(horizontal|vertical)))|radient(Transform|Units))|x(1|2|ChannelSelector|-height|link:(show|href|t(ype|itle)|a(ctuate|rcrole)|role)|ml:(space|lang|base))?|m(in|ode|e(thod|dia)|a(sk(ContentUnits|Units)?|thematical|rker(Height|-(start|end|mid)|Units|Width)|x))|b(y|ias|egin|ase(Profile|line-shift|Frequency)|box))(?![\\\\\\\\w:-])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.$1.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-interior\\\"}]},{\\\"begin\\\":\\\"([^\\\\\\\\x{0020}\\\\\\\"'<>/=\\\\\\\\x{0000}-\\\\\\\\x{001F}\\\\\\\\x{007F}-\\\\\\\\x{009F}\\\\\\\\x{FDD0}-\\\\\\\\x{FDEF}\\\\\\\\x{FFFE}\\\\\\\\x{FFFF}\\\\\\\\x{1FFFE}\\\\\\\\x{1FFFF}\\\\\\\\x{2FFFE}\\\\\\\\x{2FFFF}\\\\\\\\x{3FFFE}\\\\\\\\x{3FFFF}\\\\\\\\x{4FFFE}\\\\\\\\x{4FFFF}\\\\\\\\x{5FFFE}\\\\\\\\x{5FFFF}\\\\\\\\x{6FFFE}\\\\\\\\x{6FFFF}\\\\\\\\x{7FFFE}\\\\\\\\x{7FFFF}\\\\\\\\x{8FFFE}\\\\\\\\x{8FFFF}\\\\\\\\x{9FFFE}\\\\\\\\x{9FFFF}\\\\\\\\x{AFFFE}\\\\\\\\x{AFFFF}\\\\\\\\x{BFFFE}\\\\\\\\x{BFFFF}\\\\\\\\x{CFFFE}\\\\\\\\x{CFFFF}\\\\\\\\x{DFFFE}\\\\\\\\x{DFFFF}\\\\\\\\x{EFFFE}\\\\\\\\x{EFFFF}\\\\\\\\x{FFFFE}\\\\\\\\x{FFFFF}\\\\\\\\x{10FFFE}\\\\\\\\x{10FFFF}]+)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"}},\\\"comment\\\":\\\"Anything else that is valid\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.unrecognized.$1.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-interior\\\"}]},{\\\"match\\\":\\\"[^\\\\\\\\s>]+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.html\\\"}]},\\\"tags\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#cdata\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.svg.$2.void.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"match\\\":\\\"(?i)(<)(color-profile|desc|metadata|script|style|title)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(/>))\\\",\\\"name\\\":\\\"meta.element.metadata.svg.$2.html\\\"},{\\\"begin\\\":\\\"(?i)(<)(color-profile|desc|metadata|script|style|title)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.svg.$2.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)(\\\\\\\\2)\\\\\\\\s*(>)|(/>)|(?=</\\\\\\\\w+)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.svg.$2.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.metadata.svg.$2.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.metadata.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.structure.svg.$2.void.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"match\\\":\\\"(?i)(<)(animateMotion|clipPath|defs|feComponentTransfer|feDiffuseLighting|feMerge|feSpecularLighting|filter|g|hatch|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|pattern|radialGradient|switch|text|textPath)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(/>))\\\",\\\"name\\\":\\\"meta.element.structure.svg.$2.html\\\"},{\\\"begin\\\":\\\"(?i)(<)(animateMotion|clipPath|defs|feComponentTransfer|feDiffuseLighting|feMerge|feSpecularLighting|filter|g|hatch|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|pattern|radialGradient|switch|text|textPath)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.structure.svg.$2.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)(\\\\\\\\2)\\\\\\\\s*(>)|(/>)|(?=</\\\\\\\\w+)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.structure.svg.$2.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.structure.svg.$2.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.inline.svg.$2.void.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"match\\\":\\\"(?i)(<)(a|animate|discard|feBlend|feColorMatrix|feComposite|feConvolveMatrix|feDisplacementMap|feDistantLight|feDropShadow|feFlood|feFuncA|feFuncB|feFuncG|feFuncR|feGaussianBlur|feMergeNode|feMorphology|feOffset|fePointLight|feSpotLight|feTile|feTurbulence|hatchPath|mpath|set|solidcolor|stop|tspan)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(/>))\\\",\\\"name\\\":\\\"meta.element.inline.svg.$2.html\\\"},{\\\"begin\\\":\\\"(?i)(<)(a|animate|discard|feBlend|feColorMatrix|feComposite|feConvolveMatrix|feDisplacementMap|feDistantLight|feDropShadow|feFlood|feFuncA|feFuncB|feFuncG|feFuncR|feGaussianBlur|feMergeNode|feMorphology|feOffset|fePointLight|feSpotLight|feTile|feTurbulence|hatchPath|mpath|set|solidcolor|stop|tspan)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.inline.svg.$2.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)(\\\\\\\\2)\\\\\\\\s*(>)|(/>)|(?=</\\\\\\\\w+)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.inline.svg.$2.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.inline.svg.$2.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.inline.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.object.svg.$2.void.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"match\\\":\\\"(?i)(<)(circle|ellipse|feImage|foreignObject|image|line|path|polygon|polyline|rect|symbol|use|view)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(/>))\\\",\\\"name\\\":\\\"meta.element.object.svg.$2.html\\\"},{\\\"begin\\\":\\\"(?i)(<)(a|circle|ellipse|feImage|foreignObject|image|line|path|polygon|polyline|rect|symbol|use|view)(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.object.svg.$2.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)(\\\\\\\\2)\\\\\\\\s*(>)|(/>)|(?=</\\\\\\\\w+)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.object.svg.$2.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.object.svg.$2.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.object.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.other.svg.$2.void.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.deprecated.html\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"match\\\":\\\"(?i)(<)((altGlyph|altGlyphDef|altGlyphItem|animateColor|animateTransform|cursor|font|font-face|font-face-format|font-face-name|font-face-src|font-face-uri|glyph|glyphRef|hkern|missing-glyph|tref|vkern))(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(/>))\\\",\\\"name\\\":\\\"meta.element.other.svg.$2.html\\\"},{\\\"begin\\\":\\\"(?i)(<)((altGlyph|altGlyphDef|altGlyphItem|animateColor|animateTransform|cursor|font|font-face|font-face-format|font-face-name|font-face-src|font-face-uri|glyph|glyphRef|hkern|missing-glyph|tref|vkern))(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.other.svg.$2.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.deprecated.html\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)((\\\\\\\\2))\\\\\\\\s*(>)|(/>)|(?=</\\\\\\\\w+)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.other.svg.$2.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.deprecated.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.other.svg.$2.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.other.invalid.void.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-tag.html\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"match\\\":\\\"(?i)(<)(([\\\\\\\\w:]+))(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(/>))\\\",\\\"name\\\":\\\"meta.element.other.invalid.html\\\"},{\\\"begin\\\":\\\"(?i)(<)((\\\\\\\\w[^\\\\\\\\s>]*))(?=\\\\\\\\s|/?>)(?:(([^\\\\\\\"'>]|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|'[^']*')*)(>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.other.invalid.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-tag.html\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?i)(</)((\\\\\\\\2))\\\\\\\\s*(>)|(/>)|(?=</\\\\\\\\w+)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.other.invalid.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-tag.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.element.other.invalid.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!>)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.invalid.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#tags\\\"}]},{\\\"include\\\":\\\"#tags-invalid\\\"}]}}},\\\"tags-invalid\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(</?)((\\\\\\\\w[^\\\\\\\\s>]*))(?<!/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-tag.html\\\"}},\\\"end\\\":\\\"((?: ?/)?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.$2.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]}]},\\\"tags-valid\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=<(?i:style)\\\\\\\\b(?!-))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.html\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)([ \\\\\\\\t]*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.html\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(<)(style)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.style.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(?i)((<)/)(style)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.style.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"source.css-ignored-vscode\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"name\\\":\\\"meta.tag.metadata.style.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?!\\\\\\\\G)\\\",\\\"end\\\":\\\"(?=</(?i:style))\\\",\\\"name\\\":\\\"source.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=<(?i:script)\\\\\\\\b(?!-))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.html\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)([ \\\\\\\\t]*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.html\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)((?i:script))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(/)((?i:script))(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"((<))(?=/(?i:script))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"source.js-ignored-vscode\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=</(?i:script))\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.js\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"(?=</script)|\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"\\\\\\\\*/|(?=</script)\\\",\\\"name\\\":\\\"comment.block.js\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?ix:\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(?=>\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t# Tag without type attribute\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | type(?=[\\\\\\\\s=])\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t \\\\t(?!\\\\\\\\s*=\\\\\\\\s*\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t''\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t# Empty\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | \\\\\\\"\\\\\\\"\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t# Values\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | ('|\\\\\\\"|)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttext/\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t# Text mime-types\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tjavascript(1\\\\\\\\.[0-5])?\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | x-javascript\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | jscript\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | livescript\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | (x-)?ecmascript\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | babel\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t# Javascript variant currently\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t \\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t# recognized as such\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t \\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | application/\\\\t\\\\t\\\\t\\\\t\\\\t# Application mime-types\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t \\\\t(\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(x-)?javascript\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | (x-)?ecmascript\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | module\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t \\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t[\\\\\\\\s\\\\\\\"'>]\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\",\\\"name\\\":\\\"meta.tag.metadata.script.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?ix:\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(?=\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttype\\\\\\\\s*=\\\\\\\\s*\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t('|\\\\\\\"|)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttext/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tx-handlebars\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | (x-(handlebars-)?|ng-)?template\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | html\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t[\\\\\\\\s\\\\\\\"'>]\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\",\\\"end\\\":\\\"((<))(?=/(?i:script))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"text.html.basic\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.metadata.script.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?!\\\\\\\\G)\\\",\\\"end\\\":\\\"(?=</(?i:script))\\\",\\\"name\\\":\\\"text.html.basic\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]}]},{\\\"begin\\\":\\\"(?=(?i:type))\\\",\\\"end\\\":\\\"(<)(?=/(?i:script))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.metadata.script.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?!\\\\\\\\G)\\\",\\\"end\\\":\\\"(?=</(?i:script))\\\",\\\"name\\\":\\\"source.unknown\\\"}]}]}]}]},{\\\"begin\\\":\\\"(?i)(<)(base|link|meta)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.metadata.$2.void.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)(noscript|title)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.metadata.$2.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(</)(noscript|title)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.metadata.$2.end.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)(col|hr|input)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.$2.void.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)(address|article|aside|blockquote|body|button|caption|colgroup|datalist|dd|details|dialog|div|dl|dt|fieldset|figcaption|figure|footer|form|head|header|hgroup|html|h[1-6]|label|legend|li|main|map|menu|meter|nav|ol|optgroup|option|output|p|pre|progress|section|select|slot|summary|table|tbody|td|template|textarea|tfoot|th|thead|tr|ul)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.$2.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(</)(address|article|aside|blockquote|body|button|caption|colgroup|datalist|dd|details|dialog|div|dl|dt|fieldset|figcaption|figure|footer|form|head|header|hgroup|html|h[1-6]|label|legend|li|main|map|menu|meter|nav|ol|optgroup|option|output|p|pre|progress|section|select|slot|summary|table|tbody|td|template|textarea|tfoot|th|thead|tr|ul)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.$2.end.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)(area|br|wbr)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.inline.$2.void.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)(a|abbr|b|bdi|bdo|cite|code|data|del|dfn|em|i|ins|kbd|mark|q|rp|rt|ruby|s|samp|small|span|strong|sub|sup|time|u|var)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.inline.$2.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(</)(a|abbr|b|bdi|bdo|cite|code|data|del|dfn|em|i|ins|kbd|mark|q|rp|rt|ruby|s|samp|small|span|strong|sub|sup|time|u|var)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.inline.$2.end.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)(embed|img|param|source|track)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.object.$2.void.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)(audio|canvas|iframe|object|picture|video)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.object.$2.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(</)(audio|canvas|iframe|object|picture|video)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.object.$2.end.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)((basefont|isindex))(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.deprecated.html\\\"}},\\\"end\\\":\\\"/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.metadata.$2.void.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)((center|frameset|noembed|noframes))(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.deprecated.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.$2.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(</)((center|frameset|noembed|noframes))(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.deprecated.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.$2.end.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)((acronym|big|blink|font|strike|tt|xmp))(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.deprecated.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.inline.$2.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(</)((acronym|big|blink|font|strike|tt|xmp))(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.deprecated.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.inline.$2.end.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)((frame))(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.deprecated.html\\\"}},\\\"end\\\":\\\"/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.object.$2.void.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)((applet))(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.deprecated.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.object.$2.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(</)((applet))(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.deprecated.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.object.$2.end.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(<)((dir|keygen|listing|menuitem|plaintext|spacer))(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.no-longer-supported.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.$2.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(</)((dir|keygen|listing|menuitem|plaintext|spacer))(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.no-longer-supported.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.$2.end.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"include\\\":\\\"#math\\\"},{\\\"include\\\":\\\"#svg\\\"},{\\\"begin\\\":\\\"(<)([a-zA-Z][.0-9_a-zA-Z\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}-\\\\\\\\x{200D}\\\\\\\\x{203F}-\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}]*-[\\\\\\\\-.0-9_a-zA-Z\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}-\\\\\\\\x{200D}\\\\\\\\x{203F}-\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}]*)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.custom.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},{\\\"begin\\\":\\\"(</)([a-zA-Z][.0-9_a-zA-Z\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}-\\\\\\\\x{200D}\\\\\\\\x{203F}-\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}]*-[\\\\\\\\-.0-9_a-zA-Z\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}-\\\\\\\\x{200D}\\\\\\\\x{203F}-\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}]*)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.custom.end.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]}]},\\\"xml-processing\\\":{\\\"begin\\\":\\\"(<\\\\\\\\?)(xml)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(\\\\\\\\?>)\\\",\\\"name\\\":\\\"meta.tag.metadata.processing.xml.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]}},\\\"scopeName\\\":\\\"text.html.basic\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\",\\\"css\\\"]}\"))\n\nexport default [\n...javascript,\n...css,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"injectionSelector\\\":\\\"L:text.html -comment\\\",\\\"name\\\":\\\"angular-expression\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ngExpression\\\"}],\\\"repository\\\":{\\\"arrayLiteral\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"name\\\":\\\"meta.array.literal.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ngExpression\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"}]},\\\"booleanLiteral\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\btrue\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.boolean.true.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bfalse\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.boolean.false.ts\\\"}]},\\\"expressionOperator\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.pipe.ng\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\|)\\\\\\\\|(?!\\\\\\\\|))\\\\\\\\s?([a-zA-Z0-9\\\\\\\\-\\\\\\\\_\\\\\\\\$]*)\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\b(let)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"storage.type.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\b(await)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.flow.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bdelete\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.delete.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bin\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.in.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bof\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.of.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bif\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.if.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\belse\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.else.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bthen\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.then.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\binstanceof\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.instanceof.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bnew\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.new.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bvoid\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.void.ts\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bas\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.as.ts\\\"}},\\\"end\\\":\\\"(?=$|\\\\\\\"|'|[;,:})\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"match\\\":\\\"\\\\\\\\*=|(?<!\\\\\\\\()\\\\\\\\/=|%=|\\\\\\\\+=|\\\\\\\\-=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\&=|\\\\\\\\^=|<<=|>>=|>>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.ts\\\"},{\\\"match\\\":\\\"<<|>>>|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.ts\\\"},{\\\"match\\\":\\\"===|!==|==|!=\\\",\\\"name\\\":\\\"keyword.operator.comparison.ts\\\"},{\\\"match\\\":\\\"<=|>=|<>|<|>\\\",\\\"name\\\":\\\"keyword.operator.relational.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\!|&&|\\\\\\\\?\\\\\\\\?|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\&|~|\\\\\\\\^|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\%|\\\\\\\\*|\\\\\\\\/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:]])\\\\\\\\s*(\\\\\\\\/)(?![\\\\\\\\/*])\\\"},{\\\"include\\\":\\\"#typeofOperator\\\"}]},\\\"functionCall\\\":{\\\"begin\\\":\\\"(?=(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+>\\\\\\\\s*)?\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+>\\\\\\\\s*)?\\\\\\\\()\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"punctuation.accessor.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.accessor.ts\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.function.ts\\\"},{\\\"begin\\\":\\\"\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.ts\\\"}},\\\"name\\\":\\\"meta.type.parameters.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"}]},{\\\"include\\\":\\\"#parenExpression\\\"}]},\\\"functionParameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.ts\\\"}},\\\"name\\\":\\\"meta.parameters.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#parameterName\\\"},{\\\"include\\\":\\\"#variableInitializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.ts\\\"}]},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*\\\\\\\\.\\\\\\\\s*prototype\\\\\\\\b(?!\\\\\\\\$))\\\",\\\"name\\\":\\\"support.class.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.object.property.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.object.property.ts\\\"}},\\\"match\\\":\\\"([?!]?\\\\\\\\.)\\\\\\\\s*(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\.\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"}},\\\"match\\\":\\\"(?:([?!]?\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*=\\\\\\\\s*((async\\\\\\\\s+)|(function\\\\\\\\s*[(<])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)|((<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+>\\\\\\\\s*)?\\\\\\\\(([^()]|\\\\\\\\([^()]*\\\\\\\\))*\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*(.)*)?\\\\\\\\s*=>)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.property.ts\\\"}},\\\"match\\\":\\\"([?!]?\\\\\\\\.)\\\\\\\\s*([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.property.ts\\\"}},\\\"match\\\":\\\"([?!]?\\\\\\\\.)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.object.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.ts\\\"}},\\\"match\\\":\\\"(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\.\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"match\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\",\\\"name\\\":\\\"constant.character.other\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.readwrite.ts\\\"}]},\\\"literal\\\":{\\\"name\\\":\\\"literal.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#numericLiteral\\\"},{\\\"include\\\":\\\"#booleanLiteral\\\"},{\\\"include\\\":\\\"#nullLiteral\\\"},{\\\"include\\\":\\\"#undefinedLiteral\\\"},{\\\"include\\\":\\\"#numericConstantLiteral\\\"},{\\\"include\\\":\\\"#arrayLiteral\\\"},{\\\"include\\\":\\\"#thisLiteral\\\"}]},\\\"ngExpression\\\":{\\\"name\\\":\\\"meta.expression.ng\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#ternaryExpression\\\"},{\\\"include\\\":\\\"#expressionOperator\\\"},{\\\"include\\\":\\\"#functionCall\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#parenExpression\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"},{\\\"include\\\":\\\"#punctuationAccessor\\\"}]},\\\"nullLiteral\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bnull\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.null.ts\\\"},\\\"numericConstantLiteral\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bNaN\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.nan.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bInfinity\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.infinity.ts\\\"}]},\\\"numericLiteral\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(x|X)[0-9a-fA-F]+\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.hex.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(b|B)[01]+\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.binary.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\b(?<!\\\\\\\\$)0(o|O)?[0-7]+\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.octal.ts\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.decimal.ts\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9]+(\\\\\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\\\\\b)|#1.1E+3(?:\\\\\\\\b[0-9]+(\\\\\\\\.)[eE][+-]?[0-9]+\\\\\\\\b)|#1.E+3(?:\\\\\\\\B(\\\\\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\\\\\b)|#.1E+3(?:\\\\\\\\b[0-9]+[eE][+-]?[0-9]+\\\\\\\\b)|#1E+3(?:\\\\\\\\b[0-9]+(\\\\\\\\.)[0-9]+\\\\\\\\b)|#1.1(?:\\\\\\\\b[0-9]+(\\\\\\\\.)\\\\\\\\B)|#1.(?:\\\\\\\\B(\\\\\\\\.)[0-9]+\\\\\\\\b)|#.1(?:\\\\\\\\b[0-9]+\\\\\\\\b(?!\\\\\\\\.))#1)(?!\\\\\\\\$)\\\"}]},\\\"parameterName\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\s*\\\\\\\\b(readonly)\\\\\\\\s+)?(?:\\\\\\\\s*\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(\\\\\\\\.\\\\\\\\.\\\\\\\\.)?\\\\\\\\s*(?<!=|:)([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*((async\\\\\\\\s+)|(function\\\\\\\\s*[(<])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)|((<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+>\\\\\\\\s*)?\\\\\\\\(([^()]|\\\\\\\\([^()]*\\\\\\\\))*\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*(.)*)?\\\\\\\\s*=>)))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>))))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\s*\\\\\\\\b(readonly)\\\\\\\\s+)?(?:\\\\\\\\s*\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(\\\\\\\\.\\\\\\\\.\\\\\\\\.)?\\\\\\\\s*(?<!=|:)([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(\\\\\\\\??)\\\"}]},\\\"parenExpression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#ngExpression\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"}]},\\\"punctuationAccessor\\\":{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\.|\\\\\\\\!\\\\\\\\.|\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"punctuationComma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.ts\\\"},\\\"punctuationSemicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.ts\\\"},\\\"qstringDouble\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\")|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.ts\\\"}},\\\"name\\\":\\\"string.quoted.double.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringCharacterEscape\\\"}]},\\\"qstringSingle\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.ts\\\"}},\\\"name\\\":\\\"string.quoted.single.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringCharacterEscape\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstringSingle\\\"},{\\\"include\\\":\\\"#qstringDouble\\\"}]},\\\"stringCharacterEscape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x\\\\\\\\h{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)\\\",\\\"name\\\":\\\"constant.character.escape.ts\\\"},\\\"ternaryExpression\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\?\\\\\\\\.\\\\\\\\s*[^[:digit:]])(\\\\\\\\?)(?!\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#ngExpression\\\"}]},\\\"thisLiteral\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bthis\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.this.ts\\\"},\\\"type\\\":{\\\"name\\\":\\\"meta.type.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numericLiteral\\\"},{\\\"include\\\":\\\"#typeBuiltinLiterals\\\"},{\\\"include\\\":\\\"#typeTuple\\\"},{\\\"include\\\":\\\"#typeObject\\\"},{\\\"include\\\":\\\"#typeOperators\\\"},{\\\"include\\\":\\\"#typeFnTypeParameters\\\"},{\\\"include\\\":\\\"#typeParenOrFunctionParameters\\\"},{\\\"include\\\":\\\"#typeName\\\"}]},\\\"typeAnnotation\\\":{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?=$|[,);\\\\\\\\}\\\\\\\\]]|\\\\\\\\/\\\\\\\\/|\\\\\\\")|(?==[^>])|(?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.type.annotation.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"typeBuiltinLiterals\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\b(this|true|false|undefined|null)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"support.type.builtin.ts\\\"},\\\"typeFnTypeParameters\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.new.ts\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\b(new)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\<)\\\",\\\"name\\\":\\\"meta.type.constructor.ts\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\b(new)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.new.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.constructor.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#functionParameters\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\>)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"include\\\":\\\"#typeofOperator\\\",\\\"name\\\":\\\"meta.type.function.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#functionParameters\\\"}]},{\\\"begin\\\":\\\"((?=[(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>))))))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.function.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#functionParameters\\\"}]}]},\\\"typeName\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*([?!]?\\\\\\\\.)\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.type.ts\\\"}]},\\\"typeObject\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.object.type.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#typeObjectMembers\\\"}]},\\\"typeObjectMembers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typeAnnotation\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"},{\\\"include\\\":\\\"#punctuationSemicolon\\\"}]},\\\"typeOperators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typeofOperator\\\"},{\\\"match\\\":\\\"[&|]\\\",\\\"name\\\":\\\"keyword.operator.type.ts\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bkeyof\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.keyof.ts\\\"}]},\\\"typeParenOrFunctionParameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"name\\\":\\\"meta.type.paren.cover.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#functionParameters\\\"}]},\\\"typeTuple\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"name\\\":\\\"meta.type.tuple.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuationComma\\\"}]},\\\"typeofOperator\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\btypeof\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.expression.typeof.ts\\\"},\\\"undefinedLiteral\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.|\\\\\\\\$)\\\\\\\\bundefined\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.undefined.ts\\\"},\\\"variableInitializer\\\":{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}},\\\"end\\\":\\\"(?=$|[,);}\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ngExpression\\\"}]}},\\\"scopeName\\\":\\\"expression.ng\\\"}\"))\n\nexport default [\nlang\n]\n", "import angular_expression from './angular-expression.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"injectTo\\\":[\\\"text.html.derivative\\\",\\\"text.html.derivative.ng\\\",\\\"source.ts.ng\\\"],\\\"injectionSelector\\\":\\\"L:text.html -comment -expression.ng -meta.tag -source.css -source.js\\\",\\\"name\\\":\\\"angular-let-declaration\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#letDeclaration\\\"}],\\\"repository\\\":{\\\"letDeclaration\\\":{\\\"begin\\\":\\\"(@let)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(=)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.ng\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.ng\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ng\\\"}},\\\"contentName\\\":\\\"meta.definition.variable.ng\\\",\\\"end\\\":\\\"(?<=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#letInitializer\\\"}]},\\\"letInitializer\\\":{\\\"begin\\\":\\\"\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ng\\\"}},\\\"contentName\\\":\\\"meta.definition.variable.initializer.ng\\\",\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.ng\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"expression.ng\\\"}]}},\\\"scopeName\\\":\\\"template.let.ng\\\",\\\"embeddedLangs\\\":[\\\"angular-expression\\\"]}\"))\n\nexport default [\n...angular_expression,\nlang\n]\n", "import angular_expression from './angular-expression.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"injectTo\\\":[\\\"text.html.derivative\\\",\\\"text.html.derivative.ng\\\",\\\"source.ts.ng\\\"],\\\"injectionSelector\\\":\\\"L:text.html -comment\\\",\\\"name\\\":\\\"angular-template\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}],\\\"repository\\\":{\\\"interpolation\\\":{\\\"begin\\\":\\\"{{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"contentName\\\":\\\"expression.ng\\\",\\\"end\\\":\\\"}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"expression.ng\\\"}]}},\\\"scopeName\\\":\\\"template.ng\\\",\\\"embeddedLangs\\\":[\\\"angular-expression\\\"]}\"))\n\nexport default [\n...angular_expression,\nlang\n]\n", "import angular_expression from './angular-expression.mjs'\nimport angular_template from './angular-template.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"injectTo\\\":[\\\"text.html.derivative\\\",\\\"text.html.derivative.ng\\\",\\\"source.ts.ng\\\"],\\\"injectionSelector\\\":\\\"L:text.html -comment -expression.ng -meta.tag -source.css -source.js\\\",\\\"name\\\":\\\"angular-template-blocks\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"}],\\\"repository\\\":{\\\"block\\\":{\\\"begin\\\":\\\"(@)(if|else if|else|defer|placeholder|loading|error|switch|case|default|for|empty)(?:\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.block.kind.ng\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"control.block.ng\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#blockExpression\\\"},{\\\"include\\\":\\\"#blockBody\\\"}]},\\\"blockBody\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"contentName\\\":\\\"control.block.body.ng\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.derivative.ng\\\"},{\\\"include\\\":\\\"template.ng\\\"}]},\\\"blockExpression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"contentName\\\":\\\"control.block.expression.ng\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"expression.ng\\\"}]},\\\"transition\\\":{\\\"match\\\":\\\"@\\\",\\\"name\\\":\\\"keyword.control.block.transition.ng\\\"}},\\\"scopeName\\\":\\\"template.blocks.ng\\\",\\\"embeddedLangs\\\":[\\\"angular-expression\\\",\\\"angular-template\\\"]}\"))\n\nexport default [\n...angular_expression,\n...angular_template,\nlang\n]\n", "import html from './html.mjs'\nimport angular_expression from './angular-expression.mjs'\nimport angular_let_declaration from './angular-let-declaration.mjs'\nimport angular_template from './angular-template.mjs'\nimport angular_template_blocks from './angular-template-blocks.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Angular HTML\\\",\\\"injections\\\":{\\\"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)\\\":{\\\"comment\\\":\\\"Uses R: to ensure this matches after any other injections.\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"}]}},\\\"name\\\":\\\"angular-html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#core-minus-invalid\\\"},{\\\"begin\\\":\\\"(</?)(\\\\\\\\w[^\\\\\\\\s>]*)(?<!/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"((?: ?/)?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.unrecognized.html.derivative\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]}],\\\"scopeName\\\":\\\"text.html.derivative.ng\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"angular-expression\\\",\\\"angular-let-declaration\\\",\\\"angular-template\\\",\\\"angular-template-blocks\\\"]}\"))\n\nexport default [\n...html,\n...angular_expression,\n...angular_let_declaration,\n...angular_template,\n...angular_template_blocks,\nlang\n]\n", "import css from './css.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"SCSS\\\",\\\"name\\\":\\\"scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable_setting\\\"},{\\\"include\\\":\\\"#at_rule_forward\\\"},{\\\"include\\\":\\\"#at_rule_use\\\"},{\\\"include\\\":\\\"#at_rule_include\\\"},{\\\"include\\\":\\\"#at_rule_import\\\"},{\\\"include\\\":\\\"#general\\\"},{\\\"include\\\":\\\"#flow_control\\\"},{\\\"include\\\":\\\"#rules\\\"},{\\\"include\\\":\\\"#property_list\\\"},{\\\"include\\\":\\\"#at_rule_mixin\\\"},{\\\"include\\\":\\\"#at_rule_media\\\"},{\\\"include\\\":\\\"#at_rule_function\\\"},{\\\"include\\\":\\\"#at_rule_charset\\\"},{\\\"include\\\":\\\"#at_rule_option\\\"},{\\\"include\\\":\\\"#at_rule_namespace\\\"},{\\\"include\\\":\\\"#at_rule_fontface\\\"},{\\\"include\\\":\\\"#at_rule_page\\\"},{\\\"include\\\":\\\"#at_rule_keyframes\\\"},{\\\"include\\\":\\\"#at_rule_at_root\\\"},{\\\"include\\\":\\\"#at_rule_supports\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}],\\\"repository\\\":{\\\"at_rule_at_root\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)(at-root))(\\\\\\\\s+|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.at-root.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?={)\\\",\\\"name\\\":\\\"meta.at-rule.at-root.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_attributes\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#selectors\\\"}]},\\\"at_rule_charset\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)charset\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.charset.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((?=;|$))\\\",\\\"name\\\":\\\"meta.at-rule.charset.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#string_single\\\"},{\\\"include\\\":\\\"#string_double\\\"}]},\\\"at_rule_content\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)content\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.content.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((?=;))\\\",\\\"name\\\":\\\"meta.content.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#selectors\\\"},{\\\"include\\\":\\\"#property_values\\\"}]},\\\"at_rule_each\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)each\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.each.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((?=}))\\\",\\\"name\\\":\\\"meta.at-rule.each.scss\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(in|,)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.operator\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#property_values\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"at_rule_else\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)else(\\\\\\\\s*(if)?))\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.else.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?={)\\\",\\\"name\\\":\\\"meta.at-rule.else.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#conditional_operators\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#property_values\\\"}]},\\\"at_rule_extend\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)extend\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.extend.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?=;)\\\",\\\"name\\\":\\\"meta.at-rule.extend.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#selectors\\\"},{\\\"include\\\":\\\"#property_values\\\"}]},\\\"at_rule_fontface\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((@)font-face\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.fontface.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?={)\\\",\\\"name\\\":\\\"meta.at-rule.fontface.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_attributes\\\"}]}]},\\\"at_rule_for\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)for\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.for.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?={)\\\",\\\"name\\\":\\\"meta.at-rule.for.scss\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(==|!=|<=|>=|<|>|from|to|through)\\\",\\\"name\\\":\\\"keyword.control.operator\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#property_values\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"at_rule_forward\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)forward\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.forward.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?=;)\\\",\\\"name\\\":\\\"meta.at-rule.forward.scss\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(as|hide|show)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.operator\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.module.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.wildcard.scss\\\"}},\\\"match\\\":\\\"\\\\\\\\b([\\\\\\\\w-]+)(\\\\\\\\*)\\\"},{\\\"match\\\":\\\"\\\\\\\\b[\\\\\\\\w-]+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.scss\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#string_single\\\"},{\\\"include\\\":\\\"#string_double\\\"},{\\\"include\\\":\\\"#comment_line\\\"},{\\\"include\\\":\\\"#comment_block\\\"}]},\\\"at_rule_function\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*((@)function\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.function.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?={)\\\",\\\"name\\\":\\\"meta.at-rule.function.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_attributes\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.function.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.scss\\\"}},\\\"match\\\":\\\"\\\\\\\\s*((@)function\\\\\\\\b)\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.at-rule.function.scss\\\"}]},\\\"at_rule_if\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)if\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.if.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?={)\\\",\\\"name\\\":\\\"meta.at-rule.if.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#conditional_operators\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#property_values\\\"}]},\\\"at_rule_import\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)import\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.import.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((?=;)|(?=}))\\\",\\\"name\\\":\\\"meta.at-rule.import.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#string_single\\\"},{\\\"include\\\":\\\"#string_double\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#comment_line\\\"}]},\\\"at_rule_include\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=@include)\\\\\\\\s+(?:([\\\\\\\\w-]+)\\\\\\\\s*(\\\\\\\\.))?([\\\\\\\\w-]+)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.access.module.scss\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.scss\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.scss\\\"}},\\\"name\\\":\\\"meta.at-rule.include.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_attributes\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.at-rule.include.scss\\\"},\\\"1\\\":{\\\"name\\\":\\\"variable.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.access.module.scss\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.scss\\\"}},\\\"match\\\":\\\"(?<=@include)\\\\\\\\s+(?:([\\\\\\\\w-]+)\\\\\\\\s*(\\\\\\\\.))?([\\\\\\\\w-]+)\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.at-rule.include.scss\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.include.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"match\\\":\\\"((@)include)\\\\\\\\b\\\"}]},\\\"at_rule_keyframes\\\":{\\\"begin\\\":\\\"(?<=^|\\\\\\\\s)(@)(?:-(?:webkit|moz)-)?keyframes\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.keyframes.scss\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.at-rule.keyframes.scss\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.scss\\\"}},\\\"match\\\":\\\"(?<=@keyframes)\\\\\\\\s+((?:[_A-Za-z][-\\\\\\\\w]|-[_A-Za-z])[-\\\\\\\\w]*)\\\"},{\\\"begin\\\":\\\"(?<=@keyframes)\\\\\\\\s+(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.scss\\\"}},\\\"contentName\\\":\\\"entity.name.function.scss\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.scss\\\"}},\\\"name\\\":\\\"string.quoted.double.scss\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\h{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(?<=@keyframes)\\\\\\\\s+(')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.scss\\\"}},\\\"contentName\\\":\\\"entity.name.function.scss\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.scss\\\"}},\\\"name\\\":\\\"string.quoted.single.scss\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\h{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.keyframes.begin.scss\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.keyframes.end.scss\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:(?:100|[1-9]\\\\\\\\d|\\\\\\\\d)%|from|to)(?=\\\\\\\\s*{)\\\",\\\"name\\\":\\\"entity.other.attribute-name.scss\\\"},{\\\"include\\\":\\\"#flow_control\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#property_list\\\"},{\\\"include\\\":\\\"#rules\\\"}]}]},\\\"at_rule_media\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((@)media)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.media.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?={)\\\",\\\"name\\\":\\\"meta.at-rule.media.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_docblock\\\"},{\\\"include\\\":\\\"#comment_block\\\"},{\\\"include\\\":\\\"#comment_line\\\"},{\\\"match\\\":\\\"\\\\\\\\b(only)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.operator.css.scss\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.media-query.begin.bracket.round.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.media-query.end.bracket.round.scss\\\"}},\\\"name\\\":\\\"meta.property-list.media-query.scss\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![-a-z])(?=[-a-z])\\\",\\\"end\\\":\\\"$|(?![-a-z])\\\",\\\"name\\\":\\\"meta.property-name.media-query.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css#media-features\\\"},{\\\"include\\\":\\\"source.css#property-names\\\"}]},{\\\"begin\\\":\\\"(:)\\\\\\\\s*(?!(\\\\\\\\s*{))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.scss\\\"}},\\\"contentName\\\":\\\"meta.property-value.media-query.scss\\\",\\\"end\\\":\\\"\\\\\\\\s*(;|(?=}|\\\\\\\\)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.scss\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#general\\\"},{\\\"include\\\":\\\"#property_values\\\"}]}]},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#conditional_operators\\\"},{\\\"include\\\":\\\"source.css#media-types\\\"}]}]},\\\"at_rule_mixin\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=@mixin)\\\\\\\\s+([\\\\\\\\w-]+)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.scss\\\"}},\\\"name\\\":\\\"meta.at-rule.mixin.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_attributes\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.scss\\\"}},\\\"match\\\":\\\"(?<=@mixin)\\\\\\\\s+([\\\\\\\\w-]+)\\\",\\\"name\\\":\\\"meta.at-rule.mixin.scss\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.mixin.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"match\\\":\\\"((@)mixin)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.at-rule.mixin.scss\\\"}]},\\\"at_rule_namespace\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=@namespace)\\\\\\\\s+(?=url)\\\",\\\"end\\\":\\\"(?=;|$)\\\",\\\"name\\\":\\\"meta.at-rule.namespace.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property_values\\\"},{\\\"include\\\":\\\"#string_single\\\"},{\\\"include\\\":\\\"#string_double\\\"}]},{\\\"begin\\\":\\\"(?<=@namespace)\\\\\\\\s+([\\\\\\\\w-]*)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.namespace-prefix.scss\\\"}},\\\"end\\\":\\\"(?=;|$)\\\",\\\"name\\\":\\\"meta.at-rule.namespace.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#property_values\\\"},{\\\"include\\\":\\\"#string_single\\\"},{\\\"include\\\":\\\"#string_double\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.namespace.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"match\\\":\\\"((@)namespace)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.at-rule.namespace.scss\\\"}]},\\\"at_rule_option\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.charset.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*((@)option\\\\\\\\b)\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.at-rule.option.scss\\\"},\\\"at_rule_page\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((@)page)(?=:|\\\\\\\\s)\\\\\\\\s*([-:\\\\\\\\w]*)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.page.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?={)\\\",\\\"name\\\":\\\"meta.at-rule.page.scss\\\"}]},\\\"at_rule_return\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)(return)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.return.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((?=;))\\\",\\\"name\\\":\\\"meta.at-rule.return.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#property_values\\\"}]},\\\"at_rule_supports\\\":{\\\"begin\\\":\\\"(?<=^|\\\\\\\\s)(@)supports\\\\\\\\b\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.supports.scss\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"(?={)|$\\\",\\\"name\\\":\\\"meta.at-rule.supports.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#logical_operators\\\"},{\\\"include\\\":\\\"#properties\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.condition.begin.bracket.round.scss\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.definition.condition.end.bracket.round.scss\\\"}]},\\\"at_rule_use\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)use\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.use.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?=;)\\\",\\\"name\\\":\\\"meta.at-rule.use.scss\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(as|with)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.operator\\\"},{\\\"match\\\":\\\"\\\\\\\\b[\\\\\\\\w-]+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.scss\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"variable.language.expanded-namespace.scss\\\"},{\\\"include\\\":\\\"#string_single\\\"},{\\\"include\\\":\\\"#string_double\\\"},{\\\"include\\\":\\\"#comment_line\\\"},{\\\"include\\\":\\\"#comment_block\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.scss\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_attributes\\\"}]}]},\\\"at_rule_warn\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)(warn|debug|error)\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.warn.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?=;)\\\",\\\"name\\\":\\\"meta.at-rule.warn.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#string_double\\\"},{\\\"include\\\":\\\"#string_single\\\"}]},\\\"at_rule_while\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)while\\\\\\\\b)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.while.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?=})\\\",\\\"name\\\":\\\"meta.at-rule.while.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#conditional_operators\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#property_values\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"comment_block\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.scss\\\"}},\\\"name\\\":\\\"comment.block.scss\\\"},\\\"comment_docblock\\\":{\\\"begin\\\":\\\"///\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.scss\\\"}},\\\"end\\\":\\\"(?=$)\\\",\\\"name\\\":\\\"comment.block.documentation.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sassdoc\\\"}]},\\\"comment_line\\\":{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.scss\\\"},\\\"comparison_operators\\\":{\\\"match\\\":\\\"==|!=|<=|>=|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.scss\\\"},\\\"conditional_operators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comparison_operators\\\"},{\\\"include\\\":\\\"#logical_operators\\\"}]},\\\"constant_default\\\":{\\\"match\\\":\\\"!default\\\",\\\"name\\\":\\\"keyword.other.default.scss\\\"},\\\"constant_functions\\\":{\\\"begin\\\":\\\"(?:([\\\\\\\\w-]+)(\\\\\\\\.))?([\\\\\\\\w-]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.access.module.scss\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.misc.scss\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.function.scss\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.scss\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"}]},\\\"constant_important\\\":{\\\"match\\\":\\\"!important\\\",\\\"name\\\":\\\"keyword.other.important.scss\\\"},\\\"constant_mathematical_symbols\\\":{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\+|-|\\\\\\\\*|/)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.mathematical-symbols.scss\\\"},\\\"constant_optional\\\":{\\\"match\\\":\\\"!optional\\\",\\\"name\\\":\\\"keyword.other.optional.scss\\\"},\\\"constant_sass_functions\\\":{\\\"begin\\\":\\\"(headings|stylesheet-url|rgba?|hsla?|ie-hex-str|red|green|blue|alpha|opacity|hue|saturation|lightness|prefixed|prefix|-moz|-svg|-css2|-pie|-webkit|-ms|font-(?:files|url)|grid-image|image-(?:width|height|url|color)|sprites?|sprite-(?:map|map-name|file|url|position)|inline-(?:font-files|image)|opposite-position|grad-point|grad-end-position|color-stops|color-stops-in-percentages|grad-color-stops|(?:radial|linear)-(?:gradient|svg-gradient)|opacify|fade-?in|transparentize|fade-?out|lighten|darken|saturate|desaturate|grayscale|adjust-(?:hue|lightness|saturation|color)|scale-(?:lightness|saturation|color)|change-color|spin|complement|invert|mix|-compass-(?:list|space-list|slice|nth|list-size)|blank|compact|nth|first-value-of|join|length|append|nest|append-selector|headers|enumerate|range|percentage|unitless|unit|if|type-of|comparable|elements-of-type|quote|unquote|escape|e|sin|cos|tan|abs|round|ceil|floor|pi|translate(?:X|Y))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.scss\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.scss\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"}]},\\\"flow_control\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#at_rule_if\\\"},{\\\"include\\\":\\\"#at_rule_else\\\"},{\\\"include\\\":\\\"#at_rule_warn\\\"},{\\\"include\\\":\\\"#at_rule_for\\\"},{\\\"include\\\":\\\"#at_rule_while\\\"},{\\\"include\\\":\\\"#at_rule_each\\\"},{\\\"include\\\":\\\"#at_rule_return\\\"}]},\\\"function_attributes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.scss\\\"},{\\\"include\\\":\\\"#general\\\"},{\\\"include\\\":\\\"#property_values\\\"},{\\\"match\\\":\\\"[={}\\\\\\\\?;@]\\\",\\\"name\\\":\\\"invalid.illegal.scss\\\"}]},\\\"functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([\\\\\\\\w-]{1,})(\\\\\\\\()\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.scss\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.scss\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"}]},{\\\"match\\\":\\\"([\\\\\\\\w-]{1,})\\\",\\\"name\\\":\\\"support.function.misc.scss\\\"}]},\\\"general\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#comment_docblock\\\"},{\\\"include\\\":\\\"#comment_block\\\"},{\\\"include\\\":\\\"#comment_line\\\"}]},\\\"interpolation\\\":{\\\"begin\\\":\\\"#{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.interpolation.begin.bracket.curly.scss\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.interpolation.end.bracket.curly.scss\\\"}},\\\"name\\\":\\\"variable.interpolation.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#property_values\\\"}]},\\\"logical_operators\\\":{\\\"match\\\":\\\"\\\\\\\\b(not|or|and)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logical.scss\\\"},\\\"map\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.map.begin.bracket.round.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.map.end.bracket.round.scss\\\"}},\\\"name\\\":\\\"meta.definition.variable.map.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_docblock\\\"},{\\\"include\\\":\\\"#comment_block\\\"},{\\\"include\\\":\\\"#comment_line\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.map.key.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.scss\\\"}},\\\"match\\\":\\\"\\\\\\\\b([\\\\\\\\w-]+)\\\\\\\\s*(:)\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.scss\\\"},{\\\"include\\\":\\\"#map\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#property_values\\\"}]},\\\"operators\\\":{\\\"match\\\":\\\"[-+*/](?!\\\\\\\\s*[-+*/])\\\",\\\"name\\\":\\\"keyword.operator.css\\\"},\\\"parameters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.scss\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_attributes\\\"}]},{\\\"include\\\":\\\"#property_values\\\"},{\\\"include\\\":\\\"#comment_block\\\"},{\\\"match\\\":\\\"[^'\\\\\\\",) \\\\\\\\t]+\\\",\\\"name\\\":\\\"variable.parameter.url.scss\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.scss\\\"}]},\\\"parent_selector_suffix\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-9a-fA-F]{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"match\\\":\\\"\\\\\\\\$|}\\\",\\\"name\\\":\\\"invalid.illegal.identifier.scss\\\"}]}},\\\"match\\\":\\\"(?<=&)((?:[-a-zA-Z_0-9]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.)|\\\\\\\\#\\\\\\\\{|\\\\\\\\$|})+)(?=$|[\\\\\\\\s,.\\\\\\\\#)\\\\\\\\[:{>+~|]|/\\\\\\\\*)\\\",\\\"name\\\":\\\"entity.other.attribute-name.parent-selector-suffix.css\\\"},\\\"properties\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![-a-z])(?=[-a-z])\\\",\\\"end\\\":\\\"$|(?![-a-z])\\\",\\\"name\\\":\\\"meta.property-name.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css#property-names\\\"},{\\\"include\\\":\\\"#at_rule_include\\\"}]},{\\\"begin\\\":\\\"(:)\\\\\\\\s*(?!(\\\\\\\\s*{))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.scss\\\"}},\\\"contentName\\\":\\\"meta.property-value.scss\\\",\\\"end\\\":\\\"\\\\\\\\s*(;|(?=}|\\\\\\\\)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.scss\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#general\\\"},{\\\"include\\\":\\\"#property_values\\\"}]}]},\\\"property_list\\\":{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.property-list.begin.bracket.curly.scss\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.property-list.end.bracket.curly.scss\\\"}},\\\"name\\\":\\\"meta.property-list.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#flow_control\\\"},{\\\"include\\\":\\\"#rules\\\"},{\\\"include\\\":\\\"#properties\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"property_values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string_single\\\"},{\\\"include\\\":\\\"#string_double\\\"},{\\\"include\\\":\\\"#constant_functions\\\"},{\\\"include\\\":\\\"#constant_sass_functions\\\"},{\\\"include\\\":\\\"#constant_important\\\"},{\\\"include\\\":\\\"#constant_default\\\"},{\\\"include\\\":\\\"#constant_optional\\\"},{\\\"include\\\":\\\"source.css#numeric-values\\\"},{\\\"include\\\":\\\"source.css#property-keywords\\\"},{\\\"include\\\":\\\"source.css#color-keywords\\\"},{\\\"include\\\":\\\"source.css#property-names\\\"},{\\\"include\\\":\\\"#constant_mathematical_symbols\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.scss\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.scss\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#general\\\"},{\\\"include\\\":\\\"#property_values\\\"}]}]},\\\"rules\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#general\\\"},{\\\"include\\\":\\\"#at_rule_extend\\\"},{\\\"include\\\":\\\"#at_rule_content\\\"},{\\\"include\\\":\\\"#at_rule_include\\\"},{\\\"include\\\":\\\"#at_rule_media\\\"},{\\\"include\\\":\\\"#selectors\\\"}]},\\\"selector_attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.attribute-selector.begin.bracket.square.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.attribute.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-9a-fA-F]{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"match\\\":\\\"\\\\\\\\$|}\\\",\\\"name\\\":\\\"invalid.illegal.scss\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.scss\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.unquoted.attribute-value.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-9a-fA-F]{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"match\\\":\\\"\\\\\\\\$|}\\\",\\\"name\\\":\\\"invalid.illegal.scss\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"string.quoted.double.attribute-value.scss\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.scss\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-9a-fA-F]{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"match\\\":\\\"\\\\\\\\$|}\\\",\\\"name\\\":\\\"invalid.illegal.scss\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.scss\\\"},\\\"9\\\":{\\\"name\\\":\\\"string.quoted.single.attribute-value.scss\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.scss\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-9a-fA-F]{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"match\\\":\\\"\\\\\\\\$|}\\\",\\\"name\\\":\\\"invalid.illegal.scss\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.scss\\\"},\\\"13\\\":{\\\"name\\\":\\\"punctuation.definition.attribute-selector.end.bracket.square.scss\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(\\\\\\\\[)\\\\n\\\\\\\\s*\\\\n(\\\\n (?:\\\\n [-a-zA-Z_0-9]|[^\\\\\\\\x00-\\\\\\\\x7F] # Valid identifier characters\\\\n | \\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\\\\n | \\\\\\\\#\\\\\\\\{ # Interpolation (escaped to avoid Coffeelint errors)\\\\n | \\\\\\\\.?\\\\\\\\$ # Possible start of interpolation variable\\\\n | } # Possible end of interpolation\\\\n )+?\\\\n)\\\\n(?:\\\\n \\\\\\\\s*([~|^$*]?=)\\\\\\\\s*\\\\n (?:\\\\n (\\\\n (?:\\\\n [-a-zA-Z_0-9]|[^\\\\\\\\x00-\\\\\\\\x7F] # Valid identifier characters\\\\n | \\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\\\\n | \\\\\\\\#\\\\\\\\{ # Interpolation (escaped to avoid Coffeelint errors)\\\\n | \\\\\\\\.?\\\\\\\\$ # Possible start of interpolation variable\\\\n | } # Possible end of interpolation\\\\n )+\\\\n )\\\\n |\\\\n ((\\\\\\\")(.*?)(\\\\\\\"))\\\\n |\\\\n ((')(.*?)('))\\\\n )\\\\n)?\\\\n\\\\\\\\s*\\\\n(\\\\\\\\])\\\",\\\"name\\\":\\\"meta.attribute-selector.scss\\\"},\\\"selector_class\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-9a-fA-F]{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"match\\\":\\\"\\\\\\\\$|}\\\",\\\"name\\\":\\\"invalid.illegal.scss\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\.)((?:[-a-zA-Z_0-9]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.)|\\\\\\\\#\\\\\\\\{|\\\\\\\\.?\\\\\\\\$|})+)(?=$|[\\\\\\\\s,\\\\\\\\#)\\\\\\\\[:{>+~|]|\\\\\\\\.[^$]|/\\\\\\\\*|;)\\\",\\\"name\\\":\\\"entity.other.attribute-name.class.css\\\"},\\\"selector_custom\\\":{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z0-9]+(-[a-zA-Z0-9]+)+)(?=\\\\\\\\.|\\\\\\\\s++[^:]|\\\\\\\\s*[,\\\\\\\\[{]|:(link|visited|hover|active|focus|target|lang|disabled|enabled|checked|indeterminate|root|nth-(child|last-child|of-type|last-of-type)|first-child|last-child|first-of-type|last-of-type|only-child|only-of-type|empty|not|valid|invalid)(\\\\\\\\([0-9A-Za-z]*\\\\\\\\))?)\\\",\\\"name\\\":\\\"entity.name.tag.custom.scss\\\"},\\\"selector_id\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-9a-fA-F]{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"match\\\":\\\"\\\\\\\\$|}\\\",\\\"name\\\":\\\"invalid.illegal.identifier.scss\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\#)((?:[-a-zA-Z_0-9]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.)|\\\\\\\\#\\\\\\\\{|\\\\\\\\.?\\\\\\\\$|})+)(?=$|[\\\\\\\\s,\\\\\\\\#)\\\\\\\\[:{>+~|]|\\\\\\\\.[^$]|/\\\\\\\\*)\\\",\\\"name\\\":\\\"entity.other.attribute-name.id.css\\\"},\\\"selector_placeholder\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-9a-fA-F]{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"match\\\":\\\"\\\\\\\\$|}\\\",\\\"name\\\":\\\"invalid.illegal.identifier.scss\\\"}]}},\\\"match\\\":\\\"(%)((?:[-a-zA-Z_0-9]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.)|\\\\\\\\#\\\\\\\\{|\\\\\\\\.\\\\\\\\$|\\\\\\\\$|})+)(?=;|$|[\\\\\\\\s,\\\\\\\\#)\\\\\\\\[:{>+~|]|\\\\\\\\.[^$]|/\\\\\\\\*)\\\",\\\"name\\\":\\\"entity.other.attribute-name.placeholder.css\\\"},\\\"selector_pseudo_class\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((:)\\\\\\\\bnth-(?:child|last-child|of-type|last-of-type))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.pseudo-class.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.pseudo-class.end.bracket.round.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.numeric.css\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\d)n\\\\\\\\b|\\\\\\\\b(n|even|odd)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.scss\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"invalid.illegal.scss\\\"}]},{\\\"include\\\":\\\"source.css#pseudo-classes\\\"},{\\\"include\\\":\\\"source.css#pseudo-elements\\\"},{\\\"include\\\":\\\"source.css#functional-pseudo-classes\\\"}]},\\\"selectors\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.css#tag-names\\\"},{\\\"include\\\":\\\"#selector_custom\\\"},{\\\"include\\\":\\\"#selector_class\\\"},{\\\"include\\\":\\\"#selector_id\\\"},{\\\"include\\\":\\\"#selector_pseudo_class\\\"},{\\\"include\\\":\\\"#tag_wildcard\\\"},{\\\"include\\\":\\\"#tag_parent_reference\\\"},{\\\"include\\\":\\\"source.css#pseudo-elements\\\"},{\\\"include\\\":\\\"#selector_attribute\\\"},{\\\"include\\\":\\\"#selector_placeholder\\\"},{\\\"include\\\":\\\"#parent_selector_suffix\\\"}]},\\\"string_double\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.scss\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.scss\\\"}},\\\"name\\\":\\\"string.quoted.double.scss\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\h{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"string_single\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.scss\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.scss\\\"}},\\\"name\\\":\\\"string.quoted.single.scss\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\h{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.scss\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"tag_parent_reference\\\":{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"entity.name.tag.reference.scss\\\"},\\\"tag_wildcard\\\":{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"entity.name.tag.wildcard.scss\\\"},\\\"variable\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"variable_setting\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\$[\\\\\\\\w-]+\\\\\\\\s*:)\\\",\\\"contentName\\\":\\\"meta.definition.variable.scss\\\",\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.scss\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\$[\\\\\\\\w-]+(?=\\\\\\\\s*:)\\\",\\\"name\\\":\\\"variable.scss\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.scss\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_docblock\\\"},{\\\"include\\\":\\\"#comment_block\\\"},{\\\"include\\\":\\\"#comment_line\\\"},{\\\"include\\\":\\\"#map\\\"},{\\\"include\\\":\\\"#property_values\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.scss\\\"}]}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.scss\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.access.module.scss\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.scss\\\"}},\\\"match\\\":\\\"\\\\\\\\b([\\\\\\\\w-]+)(\\\\\\\\.)(\\\\\\\\$[\\\\\\\\w-]+)\\\\\\\\b\\\"},{\\\"match\\\":\\\"(\\\\\\\\$|\\\\\\\\-\\\\\\\\-)[A-Za-z0-9_-]+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.scss\\\"}]}},\\\"scopeName\\\":\\\"source.css.scss\\\",\\\"embeddedLangs\\\":[\\\"css\\\"]}\"))\n\nexport default [\n...css,\nlang\n]\n", "import scss from './scss.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"injectTo\\\":[\\\"source.ts.ng\\\"],\\\"injectionSelector\\\":\\\"L:source.ts#meta.decorator.ts -comment\\\",\\\"name\\\":\\\"angular-inline-style\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlineStyles\\\"}],\\\"repository\\\":{\\\"inlineStyles\\\":{\\\"begin\\\":\\\"(styles)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts punctuation.separator.key-value.ts\\\"}},\\\"end\\\":\\\"(?=,|})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tsParenExpression\\\"},{\\\"include\\\":\\\"#tsBracketExpression\\\"},{\\\"include\\\":\\\"#style\\\"}]},\\\"style\\\":{\\\"begin\\\":\\\"\\\\\\\\s*([`|'|\\\\\\\"])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"contentName\\\":\\\"source.css.scss\\\",\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.scss\\\"}]},\\\"tsBracketExpression\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.array.literal.ts meta.brace.square.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.array.literal.ts meta.brace.square.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#style\\\"}]},\\\"tsParenExpression\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"include\\\":\\\"#tsBracketExpression\\\"},{\\\"include\\\":\\\"#style\\\"}]}},\\\"scopeName\\\":\\\"inline-styles.ng\\\",\\\"embeddedLangs\\\":[\\\"scss\\\"]}\"))\n\nexport default [\n...scss,\nlang\n]\n", "import angular_html from './angular-html.mjs'\nimport angular_template from './angular-template.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"injectTo\\\":[\\\"source.ts.ng\\\"],\\\"injectionSelector\\\":\\\"L:meta.decorator.ts -comment -text.html\\\",\\\"name\\\":\\\"angular-inline-template\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlineTemplate\\\"}],\\\"repository\\\":{\\\"inlineTemplate\\\":{\\\"begin\\\":\\\"(template)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts punctuation.separator.key-value.ts\\\"}},\\\"end\\\":\\\"(?=,|})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tsParenExpression\\\"},{\\\"include\\\":\\\"#ngTemplate\\\"}]},\\\"ngTemplate\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*([`|'|\\\\\\\"])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"contentName\\\":\\\"text.html.derivative.ng\\\",\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.derivative.ng\\\"},{\\\"include\\\":\\\"template.ng\\\"}]},\\\"tsParenExpression\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tsParenExpression\\\"},{\\\"include\\\":\\\"#ngTemplate\\\"}]}},\\\"scopeName\\\":\\\"inline-template.ng\\\",\\\"embeddedLangs\\\":[\\\"angular-html\\\",\\\"angular-template\\\"]}\"))\n\nexport default [\n...angular_html,\n...angular_template,\nlang\n]\n", "import angular_expression from './angular-expression.mjs'\nimport angular_inline_style from './angular-inline-style.mjs'\nimport angular_inline_template from './angular-inline-template.mjs'\nimport angular_let_declaration from './angular-let-declaration.mjs'\nimport angular_template from './angular-template.mjs'\nimport angular_template_blocks from './angular-template-blocks.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Angular TypeScript\\\",\\\"name\\\":\\\"angular-ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#directives\\\"},{\\\"include\\\":\\\"#statements\\\"},{\\\"include\\\":\\\"#shebang\\\"}],\\\"repository\\\":{\\\"access-modifier\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"after-operator-block-as-object-literal\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--)(?<=[:=(,\\\\\\\\[?+!>]|^await|[^\\\\\\\\._$[:alnum:]]await|^return|[^\\\\\\\\._$[:alnum:]]return|^yield|[^\\\\\\\\._$[:alnum:]]yield|^throw|[^\\\\\\\\._$[:alnum:]]throw|^in|[^\\\\\\\\._$[:alnum:]]in|^of|[^\\\\\\\\._$[:alnum:]]of|^typeof|[^\\\\\\\\._$[:alnum:]]typeof|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\*)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.objectliteral.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-member\\\"}]},\\\"array-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"array-binding-pattern-const\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#binding-element-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"array-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"name\\\":\\\"meta.array.literal.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"arrow-function\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(\\\\\\\\basync)\\\\\\\\s+)?([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?==>)\\\",\\\"name\\\":\\\"meta.arrow.ts\\\"},{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(\\\\\\\\basync))?((?<![})!\\\\\\\\]])\\\\\\\\s*(?=((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"}},\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.arrow.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#function-parameters\\\"},{\\\"include\\\":\\\"#arrow-return-type\\\"},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"}]},{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.arrow.ts\\\"}},\\\"end\\\":\\\"((?<=\\\\\\\\}|\\\\\\\\S)(?<!=>)|((?!\\\\\\\\{)(?=\\\\\\\\S)))(?!\\\\\\\\/[\\\\\\\\/\\\\\\\\*])\\\",\\\"name\\\":\\\"meta.arrow.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"arrow-return-type\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.return.type.arrow.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrow-return-type-body\\\"}]},\\\"arrow-return-type-body\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[:])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"async-modifier\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(async)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#array-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"binding-element-const\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#array-binding-pattern-const\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"boolean-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))true(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.true.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))false(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.false.ts\\\"}]},\\\"brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"cast\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(<)\\\\\\\\s*(const)\\\\\\\\s*(>)\\\",\\\"name\\\":\\\"cast.expr.ts\\\"},{\\\"begin\\\":\\\"(?:(?<!\\\\\\\\+\\\\\\\\+|--)(?<=^return|[^\\\\\\\\._$[:alnum:]]return|^throw|[^\\\\\\\\._$[:alnum:]]throw|^yield|[^\\\\\\\\._$[:alnum:]]yield|^await|[^\\\\\\\\._$[:alnum:]]await|^default|[^\\\\\\\\._$[:alnum:]]default|[=(,:>*?\\\\\\\\&\\\\\\\\|\\\\\\\\^]|[^_$[:alnum:]](?:\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-)|[^\\\\\\\\+]\\\\\\\\+|[^\\\\\\\\-]\\\\\\\\-))\\\\\\\\s*(<)(?!<?\\\\\\\\=)(?!\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"}},\\\"name\\\":\\\"cast.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?:(?<=^))\\\\\\\\s*(<)(?=[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"}},\\\"name\\\":\\\"cast.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"class-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(?:(abstract)\\\\\\\\s+)?\\\\\\\\b(class)\\\\\\\\b(?=\\\\\\\\s+|/[/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.class.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.class.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-declaration-or-expression-patterns\\\"}]},\\\"class-declaration-or-expression-patterns\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.class.ts\\\"}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#class-or-interface-body\\\"}]},\\\"class-expression\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(class)\\\\\\\\b(?=\\\\\\\\s+|[<{]|\\\\\\\\/[\\\\\\\\/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.class.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-declaration-or-expression-patterns\\\"}]},\\\"class-or-interface-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*\\\",\\\"end\\\":\\\"(?=\\\\\\\\s|[;),}\\\\\\\\]:\\\\\\\\-\\\\\\\\+]|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#access-modifier\\\"},{\\\"include\\\":\\\"#property-accessor\\\"},{\\\"include\\\":\\\"#async-modifier\\\"},{\\\"include\\\":\\\"#after-operator-block-as-object-literal\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"class-or-interface-heritage\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(extends|implements)\\\\\\\\b)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))(?=\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*)*\\\\\\\\s*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"}},\\\"name\\\":\\\"comment.block.documentation.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docblock\\\"}]},{\\\"begin\\\":\\\"(/\\\\\\\\*)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|(\\\\\\\\*/)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"}},\\\"name\\\":\\\"comment.block.ts\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.ts\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.ts\\\",\\\"end\\\":\\\"(?=$)\\\"}]},\\\"control-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#switch-statement\\\"},{\\\"include\\\":\\\"#for-loop\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(catch|finally|throw|try)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.trycatch.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.loop.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.label.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(break|continue|goto)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(break|continue|do|goto|while)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.loop.ts\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(return)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.ts\\\"}},\\\"end\\\":\\\"(?=[;}]|$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(case|default|switch)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.switch.ts\\\"},{\\\"include\\\":\\\"#if-statement\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(else|if)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.conditional.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(with)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.with.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(package)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(debugger)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.other.debugger.ts\\\"}]},\\\"decl-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.block.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}]},\\\"declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#function-declaration\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#enum-declaration\\\"},{\\\"include\\\":\\\"#namespace-declaration\\\"},{\\\"include\\\":\\\"#type-alias-declaration\\\"},{\\\"include\\\":\\\"#import-equals-declaration\\\"},{\\\"include\\\":\\\"#import-declaration\\\"},{\\\"include\\\":\\\"#export-declaration\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(declare|export)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.ts\\\"}]},\\\"decorator\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))\\\\\\\\@\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.decorator.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.decorator.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"destructuring-const\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object-binding-pattern-variable.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.array-binding-pattern-variable.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array-binding-pattern-const\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"destructuring-parameter\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:)\\\\\\\\s*(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"name\\\":\\\"meta.parameter.object-binding-pattern.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-object-binding-element\\\"}]},{\\\"begin\\\":\\\"(?<!=|:)\\\\\\\\s*(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"name\\\":\\\"meta.paramter.array-binding-pattern.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"destructuring-parameter-rest\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"destructuring-variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object-binding-pattern-variable.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.array-binding-pattern-variable.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array-binding-pattern\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"destructuring-variable-rest\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.readwrite.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"destructuring-variable-rest-const\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.constant.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"directives\\\":{\\\"begin\\\":\\\"^(///)\\\\\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\\\\\s*=\\\\\\\\s*((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))+\\\\\\\\s*/>\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"}},\\\"end\\\":\\\"(?=$)\\\",\\\"name\\\":\\\"comment.line.triple-slash.directive.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)(reference|amd-dependency|amd-module)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.directive.ts\\\"}},\\\"end\\\":\\\"/>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.ts\\\"}},\\\"name\\\":\\\"meta.tag.ts\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"path|types|no-default-lib|lib|name|resolution-mode\\\",\\\"name\\\":\\\"entity.other.attribute-name.directive.ts\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"docblock\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.access-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:access|api))\\\\\\\\s+(private|protected|public)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.other.email.link.underline.jsdoc\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"match\\\":\\\"((@)author)\\\\\\\\s+([^@\\\\\\\\s<>*/](?:[^@<>*/]|\\\\\\\\*[^/])*)(?:\\\\\\\\s*(<)([^>\\\\\\\\s]+)(>))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.control.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)borrows)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\\\\\\s+(as)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)example)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=@|\\\\\\\\*/)\\\",\\\"name\\\":\\\"meta.example.jsdoc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\s\\\\\\\\*\\\\\\\\s+\\\"},{\\\"begin\\\":\\\"\\\\\\\\G(<)caption(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"contentName\\\":\\\"constant.other.description.jsdoc\\\",\\\"end\\\":\\\"(</)caption(>)|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"source.embedded.ts\\\"}},\\\"match\\\":\\\"[^\\\\\\\\s@*](?:[^*]|\\\\\\\\*[^/])*\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.symbol-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)kind)\\\\\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)see)\\\\\\\\s+(?:((?=https?://)(?:[^\\\\\\\\s*]|\\\\\\\\*[^/])+)|((?!https?://|(?:\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\\\\\b)(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)template)\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*(?:\\\\\\\\s*,\\\\\\\\s*[A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)*)\\\"},{\\\"begin\\\":\\\"((@)template)\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\"},{\\\"begin\\\":\\\"((@)typedef)\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+\\\",\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.begin.bracket.square.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"source.embedded.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.end.bracket.square.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.syntax.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)\\\\\\\\s*[\\\\\\\\w$]+(?:(?:\\\\\\\\[\\\\\\\\])?\\\\\\\\.[\\\\\\\\w$]+)*(?:\\\\\\\\s*(=)\\\\\\\\s*((?>\\\\\\\"(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!\\\\\\\"))|[^*\\\\\\\\\\\\\\\\])*?\\\\\\\"|'(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!'))|[^*\\\\\\\\\\\\\\\\])*?'|\\\\\\\\[(?:(?:\\\\\\\\*(?!/))|[^*])*?\\\\\\\\]|(?:(?:\\\\\\\\*(?!/))|\\\\\\\\s(?!\\\\\\\\s*\\\\\\\\])|\\\\\\\\[.*?(?:\\\\\\\\]|(?=\\\\\\\\*/))|[^*\\\\\\\\s\\\\\\\\[\\\\\\\\]])*)*))?\\\\\\\\s*(?:(\\\\\\\\])((?:[^*\\\\\\\\s]|\\\\\\\\*[^\\\\\\\\s/])+)?|(?=\\\\\\\\*/))\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\\\\\s+((?:[^{}@\\\\\\\\s*]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)(?:default(?:value)?|license|version))\\\\\\\\s+(([''\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"variable.other.jsdoc\\\",\\\"end\\\":\\\"(\\\\\\\\3)|(?=$|\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\\\\\s+([^\\\\\\\\s*]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},{\\\"include\\\":\\\"#inline-tags\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s+)\\\"}]},\\\"enum-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?(?:\\\\\\\\b(const)\\\\\\\\s+)?\\\\\\\\b(enum)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.enum.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.enum.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.enum.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.enummember.ts\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"begin\\\":\\\"(?=((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\])))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"export-declaration\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.namespace.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)\\\\\\\\s+(as)\\\\\\\\s+(namespace)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)(?:\\\\\\\\s+(type))?(?:(?:\\\\\\\\s*(=))|(?:\\\\\\\\s+(default)(?=\\\\\\\\s+)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.default.ts\\\"}},\\\"end\\\":\\\"(?=$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.export.default.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)(?:\\\\\\\\s+(type))?\\\\\\\\b(?!(\\\\\\\\$)|(\\\\\\\\s*:))((?=\\\\\\\\s*[\\\\\\\\{*])|((?=\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\\\\\s|,))(?!\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"}},\\\"end\\\":\\\"(?=$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.export.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-declaration\\\"}]}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"expression-inside-possibly-arrow-parens\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#destructuring-parameter\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|protected|private|readonly)\\\\\\\\s+(?=(override|public|protected|private|readonly)\\\\\\\\s+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*[:,]|$)\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.ts\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"expression-operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(await)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.flow.ts\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?=\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?:\\\\\\\\s*(\\\\\\\\*))?\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))delete(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.delete.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))in(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.in.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))of(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.of.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))instanceof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.instanceof.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.new.ts\\\"},{\\\"include\\\":\\\"#typeof-operator\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))void(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.void.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+(const)(?=\\\\\\\\s*($|[;,:})\\\\\\\\]]))\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(as)|(satisfies))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.satisfies.ts\\\"}},\\\"end\\\":\\\"(?=^|[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as|satisfies)\\\\\\\\s+)|(\\\\\\\\s+\\\\\\\\<))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.spread.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\*=|(?<!\\\\\\\\()/=|%=|\\\\\\\\+=|\\\\\\\\-=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\&=|\\\\\\\\^=|<<=|>>=|>>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.ts\\\"},{\\\"match\\\":\\\"<<|>>>|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.ts\\\"},{\\\"match\\\":\\\"===|!==|==|!=\\\",\\\"name\\\":\\\"keyword.operator.comparison.ts\\\"},{\\\"match\\\":\\\"<=|>=|<>|<|>\\\",\\\"name\\\":\\\"keyword.operator.relational.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:]])(\\\\\\\\!)\\\\\\\\s*(?:(/=)|(?:(/)(?![/*])))\\\"},{\\\"match\\\":\\\"\\\\\\\\!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.logical.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\&|~|\\\\\\\\^|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.ts\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"},{\\\"begin\\\":\\\"(?<=[_$[:alnum:])\\\\\\\\]])\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))\\\",\\\"end\\\":\\\"(?:(/=)|(?:(/)(?!\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:])\\\\\\\\]])\\\\\\\\s*(?:(/=)|(?:(/)(?![/*])))\\\"}]},\\\"expressionPunctuations\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"expressionWithoutIdentifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-expression\\\"},{\\\"include\\\":\\\"#class-expression\\\"},{\\\"include\\\":\\\"#arrow-function\\\"},{\\\"include\\\":\\\"#paren-expression-possibly-arrow\\\"},{\\\"include\\\":\\\"#cast\\\"},{\\\"include\\\":\\\"#ternary-expression\\\"},{\\\"include\\\":\\\"#new-expr\\\"},{\\\"include\\\":\\\"#instanceof-expr\\\"},{\\\"include\\\":\\\"#object-literal\\\"},{\\\"include\\\":\\\"#expression-operators\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#support-objects\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},\\\"field-declaration\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\()(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)\\\\\\\\s+)?(?=\\\\\\\\s*((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(?:(?:(\\\\\\\\?)|(\\\\\\\\!))\\\\\\\\s*)?(=|:|;|,|\\\\\\\\}|$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$|(^(?!\\\\\\\\s*((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(?:(?:(\\\\\\\\?)|(\\\\\\\\!))\\\\\\\\s*)?(=|:|;|,|$))))|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.field.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.property.ts entity.name.function.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.ts\\\"}},\\\"match\\\":\\\"(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)(?:(\\\\\\\\?)|(\\\\\\\\!))?(?=\\\\\\\\s*\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"match\\\":\\\"\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.property.ts variable.object.property.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"keyword.operator.definiteassignment.ts\\\"}]},\\\"for-loop\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))for(?=((\\\\\\\\s+|(\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*))await)?\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)?(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.loop.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"await\\\",\\\"name\\\":\\\"keyword.control.loop.ts\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]}]},\\\"function-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#function-parameters\\\"},{\\\"include\\\":\\\"#return-type\\\"},{\\\"include\\\":\\\"#type-function-return-type\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}]},\\\"function-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"name\\\":\\\"meta.function-call.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-target\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-call-optionals\\\"},{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},{\\\"begin\\\":\\\"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"name\\\":\\\"meta.function-call.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-target\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-call-optionals\\\"},{\\\"include\\\":\\\"#type-arguments\\\"}]}]},\\\"function-call-optionals\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\.\\\",\\\"name\\\":\\\"meta.function-call.ts punctuation.accessor.optional.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"meta.function-call.ts keyword.operator.definiteassignment.ts\\\"}]},\\\"function-call-target\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-function-call-identifiers\\\"},{\\\"match\\\":\\\"(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.function.ts\\\"}]},\\\"function-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?(?:(async)\\\\\\\\s+)?(function\\\\\\\\b)(?:\\\\\\\\s*(\\\\\\\\*))?(?:(?:\\\\\\\\s+|(?<=\\\\\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.function.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.definition.function.ts entity.name.function.ts\\\"}},\\\"end\\\":\\\"(?=;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},\\\"function-expression\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(async)\\\\\\\\s+)?(function\\\\\\\\b)(?:\\\\\\\\s*(\\\\\\\\*))?(?:(?:\\\\\\\\s+|(?<=\\\\\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.definition.function.ts entity.name.function.ts\\\"}},\\\"end\\\":\\\"(?=;)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.expression.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},\\\"function-name\\\":{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.function.ts entity.name.function.ts\\\"},\\\"function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.ts\\\"}},\\\"name\\\":\\\"meta.parameters.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters-body\\\"}]},\\\"function-parameters-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#destructuring-parameter\\\"},{\\\"include\\\":\\\"#parameter-name\\\"},{\\\"include\\\":\\\"#parameter-type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.ts\\\"}]},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#object-identifiers\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"}},\\\"match\\\":\\\"(?:(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.property.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.property.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"match\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\",\\\"name\\\":\\\"variable.other.constant.ts\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.readwrite.ts\\\"}]},\\\"if-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=\\\\\\\\bif\\\\\\\\s*(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))\\\\\\\\s*(?!\\\\\\\\{))\\\",\\\"end\\\":\\\"(?=;|$|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(if)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*\\\\\\\\/(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\])+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ts\\\"}},\\\"name\\\":\\\"string.regexp.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"include\\\":\\\"#statements\\\"}]}]},\\\"import-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type)(?!\\\\\\\\s+from))?(?!\\\\\\\\s*[:\\\\\\\\(])(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"}},\\\"end\\\":\\\"(?<!^import|[^\\\\\\\\._$[:alnum:]]import)(?=;|$|^)\\\",\\\"name\\\":\\\"meta.import.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"begin\\\":\\\"(?<=^import|[^\\\\\\\\._$[:alnum:]]import)(?!\\\\\\\\s*[\\\\\\\"'])\\\",\\\"end\\\":\\\"\\\\\\\\bfrom\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.from.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-declaration\\\"}]},{\\\"include\\\":\\\"#import-export-declaration\\\"}]},\\\"import-equals-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type))?\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(=)\\\\\\\\s*(require)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.control.require.ts\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"name\\\":\\\"meta.import-equals.external.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type))?\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(=)\\\\\\\\s*(?!require\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}},\\\"end\\\":\\\"(?=;|$|^)\\\",\\\"name\\\":\\\"meta.import-equals.internal.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.other.readwrite.ts\\\"}]}]},\\\"import-export-assert-clause\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(with)|(assert))\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.with.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.assert.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object-literal.key.ts\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.ts\\\"}]},\\\"import-export-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.block.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-clause\\\"}]},\\\"import-export-clause\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.default.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.import-export-all.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.readwrite.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.quoted.alias.ts\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"13\\\":{\\\"name\\\":\\\"keyword.control.default.ts\\\"},\\\"14\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.ts\\\"},\\\"15\\\":{\\\"name\\\":\\\"string.quoted.alias.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(?:(\\\\\\\\btype)\\\\\\\\s+)?(?:(\\\\\\\\bdefault)|(\\\\\\\\*)|(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))))\\\\\\\\s+(as)\\\\\\\\s+(?:(default(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"constant.language.import-export-all.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\b(default)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.default.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.quoted.alias.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\btype)\\\\\\\\s+)?(?:([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))\\\"}]},\\\"import-export-declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#import-export-block\\\"},{\\\"match\\\":\\\"\\\\\\\\bfrom\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.from.ts\\\"},{\\\"include\\\":\\\"#import-export-assert-clause\\\"},{\\\"include\\\":\\\"#import-export-clause\\\"}]},\\\"indexer-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)\\\\\\\\s*)?\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\\\\\\s*(\\\\\\\\?\\\\\\\\s*)?|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"name\\\":\\\"meta.indexer.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"}]},\\\"indexer-mapped-type-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))([+-])?(readonly)\\\\\\\\s*)?\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s+(in)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.expression.in.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\])([+-])?\\\\\\\\s*(\\\\\\\\?\\\\\\\\s*)?|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.type.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"name\\\":\\\"meta.indexer.mappedtype.declaration.ts\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"inline-tags\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.end.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)[^\\\\\\\\]]+(\\\\\\\\])(?={@(?:link|linkcode|linkplain|tutorial))\\\",\\\"name\\\":\\\"constant.other.description.jsdoc\\\"},{\\\"begin\\\":\\\"({)((@)(?:link(?:code|plain)?|tutorial))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.inline.tag.jsdoc\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?=https?://)(?:[^|}\\\\\\\\s*]|\\\\\\\\*[/])+)(\\\\\\\\|)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.description.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?:[^{}@\\\\\\\\s|*]|\\\\\\\\*[^/])+)(\\\\\\\\|)?\\\"}]}]},\\\"instanceof-expr\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(instanceof)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.expression.instanceof.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|(===|!==|==|!=)|(([\\\\\\\\&\\\\\\\\~\\\\\\\\^\\\\\\\\|]\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))function((\\\\\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\s*[\\\\\\\\(]))))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"interface-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(?:(abstract)\\\\\\\\s+)?\\\\\\\\b(interface)\\\\\\\\b(?=\\\\\\\\s+|/[/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.interface.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.interface.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.interface.ts\\\"}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#class-or-interface-body\\\"}]},\\\"jsdoctype\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G({)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"end\\\":\\\"((}))\\\\\\\\s*|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"label\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(:)(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.label.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#decl-block\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.label.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(:)\\\"}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#boolean-literal\\\"},{\\\"include\\\":\\\"#null-literal\\\"},{\\\"include\\\":\\\"#undefined-literal\\\"},{\\\"include\\\":\\\"#numericConstant-literal\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#this-literal\\\"},{\\\"include\\\":\\\"#super-literal\\\"}]},\\\"method-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?\\\\\\\\s*\\\\\\\\b(constructor)\\\\\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:(?:\\\\\\\\s*\\\\\\\\b(new)\\\\\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(?:(\\\\\\\\*)\\\\\\\\s*)?)(?=\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.new.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.property.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]}]},\\\"method-declaration-name\\\":{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??)\\\\\\\\s*[\\\\\\\\(\\\\\\\\<])\\\",\\\"end\\\":\\\"(?=\\\\\\\\(|\\\\\\\\<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.method.ts entity.name.function.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}]},\\\"namespace-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(namespace|module)\\\\\\\\s+(?=[_$[:alpha:]\\\\\\\"'`]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.namespace.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.namespace.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.type.module.ts\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"new-expr\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(new)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))function((\\\\\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\s*[\\\\\\\\(]))))\\\",\\\"name\\\":\\\"new.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"null-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))null(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.null.ts\\\"},\\\"numeric-literal\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.hex.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.binary.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.octal.ts\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.decimal.ts\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"9\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"10\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"12\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"13\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"14\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)\\\"}]},\\\"numericConstant-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))NaN(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.nan.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Infinity(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.infinity.ts\\\"}]},\\\"object-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#binding-element\\\"}]},{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-binding-element-const\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#binding-element-const\\\"}]},{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-binding-element-propertyName\\\":{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.destructuring.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.object.property.ts\\\"}]},\\\"object-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element\\\"}]},\\\"object-binding-pattern-const\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-const\\\"}]},\\\"object-identifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*prototype\\\\\\\\b(?!\\\\\\\\$))\\\",\\\"name\\\":\\\"support.class.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.object.property.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.object.property.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(?:(\\\\\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.object.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.ts\\\"}},\\\"match\\\":\\\"(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"}]},\\\"object-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.objectliteral.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-member\\\"}]},\\\"object-literal-method-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.property.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.property.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\(|\\\\\\\\<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"}]}]},\\\"object-member\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#object-literal-method-declaration\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\]])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<]))\\\",\\\"name\\\":\\\"meta.object.member.ts meta.object-literal.key.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#array-literal\\\"}]},{\\\"begin\\\":\\\"(?=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=((\\\\\\\\s*[\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\s+(as|satisifies)\\\\\\\\s+))))\\\",\\\"name\\\":\\\"meta.object.member.ts meta.object-literal.key.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?=(\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)))\\\",\\\"end\\\":\\\"(?=:)|(?=\\\\\\\\s*([\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\s+as|satisifies\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.ts meta.object-literal.key.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"}]},{\\\"begin\\\":\\\"(?<=[\\\\\\\\]\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<])\\\",\\\"end\\\":\\\"(?=\\\\\\\\}|;|,)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts\\\"},\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.ts\\\"}},\\\"match\\\":\\\"(?![_$[:alpha:]])([[:digit:]]+)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.ts\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts\\\"},\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"}},\\\"match\\\":\\\"(?:([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:(\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/)*\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"name\\\":\\\"meta.object.member.ts\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts\\\"}},\\\"match\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.ts\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.ts\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.object.member.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+(const)(?=\\\\\\\\s*([,}]|$))\\\",\\\"name\\\":\\\"meta.object.member.ts\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(as)|(satisfies))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.satisfies.ts\\\"}},\\\"end\\\":\\\"(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|^|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as|satisifies)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?=[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=)\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts punctuation.separator.key-value.ts\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.object.member.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?(?=\\\\\\\\s*(<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)\\\\\\\\(\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]}]},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?\\\\\\\\s*(\\\\\\\\()(?=\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?\\\\\\\\s*(?=\\\\\\\\<\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\>)\\\\\\\\s*(\\\\\\\\()(?=\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"parameter-array-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"parameter-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#parameter-object-binding-pattern\\\"},{\\\"include\\\":\\\"#parameter-array-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-parameter-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"parameter-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|protected|private|readonly)\\\\\\\\s+(?=(override|public|protected|private|readonly)\\\\\\\\s+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)\\\"}]},\\\"parameter-object-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},{\\\"include\\\":\\\"#parameter-object-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-parameter-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"parameter-object-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-object-binding-element\\\"}]},\\\"parameter-type-annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?=[,)])|(?==[^>])\\\",\\\"name\\\":\\\"meta.type.annotation.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"paren-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"paren-expression-possibly-arrow\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(=,])\\\\\\\\s*(async)?(?=\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?\\\\\\\\(\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression-possibly-arrow-with-typeparameters\\\"}]},{\\\"begin\\\":\\\"(?<=[(=,]|=>|^return|[^\\\\\\\\._$[:alnum:]]return)\\\\\\\\s*(async)?(?=\\\\\\\\s*((((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?\\\\\\\\()|(<)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)))\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression-possibly-arrow-with-typeparameters\\\"}]},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"}]},\\\"paren-expression-possibly-arrow-with-typeparameters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]}]},\\\"possibly-arrow-return-type\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\)|^)\\\\\\\\s*(:)(?=\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*=>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.arrow.ts meta.return.type.arrow.ts keyword.operator.type.annotation.ts\\\"}},\\\"contentName\\\":\\\"meta.arrow.ts meta.return.type.arrow.ts\\\",\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrow-return-type-body\\\"}]},\\\"property-accessor\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(accessor|get|set)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.type.property.ts\\\"},\\\"punctuation-accessor\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},\\\"punctuation-comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.ts\\\"},\\\"punctuation-semicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.ts\\\"},\\\"qstring-double\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\")|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.ts\\\"}},\\\"name\\\":\\\"string.quoted.double.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"qstring-single\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.ts\\\"}},\\\"name\\\":\\\"string.quoted.single.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"regex\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--|})(?<=[=(:,\\\\\\\\[?+!]|^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case|=>|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\*\\\\\\\\/)\\\\\\\\s*(\\\\\\\\/)(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[\\\\\\\\()]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\]|\\\\\\\\(([^\\\\\\\\)\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\))+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ts\\\"}},\\\"name\\\":\\\"string.regexp.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"((?<![_$[:alnum:])\\\\\\\\]]|\\\\\\\\+\\\\\\\\+|--|}|\\\\\\\\*\\\\\\\\/)|((?<=^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case))\\\\\\\\s*)\\\\\\\\/(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\])+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ts\\\"}},\\\"name\\\":\\\"string.regexp.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]}]},\\\"regex-character-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[wWsSdDtrnvf]|\\\\\\\\.\\\",\\\"name\\\":\\\"constant.other.character-class.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})\\\",\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c[A-Z]\\\",\\\"name\\\":\\\"constant.character.control.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[bB]|\\\\\\\\^|\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.control.anchor.regexp\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d*|\\\\\\\\\\\\\\\\k<([a-zA-Z_$][\\\\\\\\w$]*)>\\\"},{\\\"match\\\":\\\"[?+*]|\\\\\\\\{(\\\\\\\\d+,\\\\\\\\d+|\\\\\\\\d+,|,\\\\\\\\d+|\\\\\\\\d+)\\\\\\\\}\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.or.regexp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()((\\\\\\\\?=)|(\\\\\\\\?!)|(\\\\\\\\?<=)|(\\\\\\\\?<!))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.assertion.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.assertion.look-ahead.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-ahead.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.assertion.look-behind.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-behind.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.assertion.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\((?:(\\\\\\\\?:)|(?:\\\\\\\\?<([a-zA-Z_$][\\\\\\\\w$]*)>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.no-capture.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.regexp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(?:.|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\\\\\\-(?:[^\\\\\\\\]\\\\\\\\\\\\\\\\]|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.other.character-class.range.regexp\\\"},{\\\"include\\\":\\\"#regex-character-class\\\"}]},{\\\"include\\\":\\\"#regex-character-class\\\"}]},\\\"return-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?<![:|&])(?=$|^|[{};,]|//)\\\",\\\"name\\\":\\\"meta.return.type.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#return-type-core\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?<![:|&])((?=[{};,]|//|^\\\\\\\\s*$)|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.return.type.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#return-type-core\\\"}]}]},\\\"return-type-core\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<=[:|&])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"shebang\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"}},\\\"match\\\":\\\"\\\\\\\\A(#!).*(?=$)\\\",\\\"name\\\":\\\"comment.line.shebang.ts\\\"},\\\"single-line-comment-consuming-line-ending\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.ts\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.ts\\\",\\\"end\\\":\\\"(?=^)\\\"},\\\"statements\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration\\\"},{\\\"include\\\":\\\"#control-statement\\\"},{\\\"include\\\":\\\"#after-operator-block-as-object-literal\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#label\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-single\\\"},{\\\"include\\\":\\\"#qstring-double\\\"},{\\\"include\\\":\\\"#template\\\"}]},\\\"string-character-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\\\\\{[0-9A-Fa-f]+\\\\\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)\\\",\\\"name\\\":\\\"constant.character.escape.ts\\\"},\\\"super-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))super\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.super.ts\\\"},\\\"support-function-call-identifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#support-objects\\\"},{\\\"include\\\":\\\"#object-identifiers\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))import(?=\\\\\\\\s*[\\\\\\\\(]\\\\\\\\s*[\\\\\\\\\\\\\\\"\\\\\\\\'\\\\\\\\`]))\\\",\\\"name\\\":\\\"keyword.operator.expression.import.ts\\\"}]},\\\"support-objects\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(arguments)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.arguments.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(Promise)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"support.class.promise.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.variable.property.importmeta.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(import)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(meta)\\\\\\\\b(?!\\\\\\\\$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.variable.property.target.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(new)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(target)\\\\\\\\b(?!\\\\\\\\$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.variable.property.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.constant.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(?:(?:(constructor|length|prototype|__proto__)\\\\\\\\b(?!\\\\\\\\$|\\\\\\\\s*(<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\\\\\b(?!\\\\\\\\$)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.object.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.object.module.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.type.object.module.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(exports)|(module)(?:(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))(exports|id|filename|loaded|parent|children))?)\\\\\\\\b(?!\\\\\\\\$)\\\"}]},\\\"switch-statement\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=\\\\\\\\bswitch\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"switch-statement.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(switch)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"name\\\":\\\"switch-expression.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"name\\\":\\\"switch-block.expr.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(case|default(?=:))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.ts\\\"}},\\\"end\\\":\\\"(?=:)\\\",\\\"name\\\":\\\"case-clause.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(:)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"case-clause.expr.ts punctuation.definition.section.case-statement.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.block.ts punctuation.definition.block.ts\\\"}},\\\"contentName\\\":\\\"meta.block.ts\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.block.ts punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"case-clause.expr.ts punctuation.definition.section.case-statement.ts\\\"}},\\\"match\\\":\\\"(:)\\\"},{\\\"include\\\":\\\"#statements\\\"}]}]},\\\"template\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-call\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.template.ts punctuation.definition.string.template.begin.ts\\\"}},\\\"contentName\\\":\\\"string.template.ts\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.template.ts punctuation.definition.string.template.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"template-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*)(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?`)\\\",\\\"end\\\":\\\"(?=`)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#support-function-call-identifiers\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.function.tagged-template.ts\\\"}]},{\\\"include\\\":\\\"#type-arguments\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?\\\\\\\\s*(?=(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.ts\\\"}},\\\"end\\\":\\\"(?=`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"}]}]},\\\"template-substitution-element\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.ts\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.ts\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.ts\\\"}},\\\"name\\\":\\\"meta.template.expression.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"template-type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-call\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.template.ts punctuation.definition.string.template.begin.ts\\\"}},\\\"contentName\\\":\\\"string.template.ts\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.template.ts punctuation.definition.string.template.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template-type-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"template-type-substitution-element\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.ts\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.ts\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.ts\\\"}},\\\"name\\\":\\\"meta.template.expression.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"ternary-expression\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\?\\\\\\\\.\\\\\\\\s*[^[:digit:]])(\\\\\\\\?)(?!\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"this-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))this\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.this.ts\\\"},\\\"type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#type-builtin-literals\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#type-tuple\\\"},{\\\"include\\\":\\\"#type-object\\\"},{\\\"include\\\":\\\"#type-operators\\\"},{\\\"include\\\":\\\"#type-conditional\\\"},{\\\"include\\\":\\\"#type-fn-type-parameters\\\"},{\\\"include\\\":\\\"#type-paren-or-function-parameters\\\"},{\\\"include\\\":\\\"#type-function-return-type\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\"},{\\\"include\\\":\\\"#type-name\\\"}]},\\\"type-alias-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(type)\\\\\\\\b\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.type.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.alias.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.type.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"(=)\\\\\\\\s*(intrinsic)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.intrinsic.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?<![:|&])(?!\\\\\\\\s*[|&]\\\\\\\\s+)((?=^|[,);\\\\\\\\}\\\\\\\\]]|//)|(?==[^>])|((?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"meta.type.annotation.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?<![:|&])((?=[,);\\\\\\\\}\\\\\\\\]]|\\\\\\\\/\\\\\\\\/)|(?==[^>])|(?=^\\\\\\\\s*$)|((?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"meta.type.annotation.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-arguments\\\":{\\\"begin\\\":\\\"\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.ts\\\"}},\\\"name\\\":\\\"meta.type.parameters.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},\\\"type-arguments-body\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(_)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-builtin-literals\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(this|true|false|undefined|null|object)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"support.type.builtin.ts\\\"},\\\"type-conditional\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"end\\\":\\\"(?<=:)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-fn-type-parameters\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(new)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.constructor.ts storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.type.constructor.ts keyword.control.new.ts\\\"}},\\\"end\\\":\\\"(?<=>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(new)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.new.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.constructor.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},{\\\"begin\\\":\\\"((?=[(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>))))))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.function.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]}]},\\\"type-function-return-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(=>)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.arrow.ts\\\"}},\\\"end\\\":\\\"(?<!=>)(?<![|&])(?=[,\\\\\\\\]\\\\\\\\)\\\\\\\\{\\\\\\\\}=;>:\\\\\\\\?]|//|$)\\\",\\\"name\\\":\\\"meta.type.function.return.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-function-return-type-core\\\"}]},{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.arrow.ts\\\"}},\\\"end\\\":\\\"(?<!=>)(?<![|&])((?=[,\\\\\\\\]\\\\\\\\)\\\\\\\\{\\\\\\\\}=;:\\\\\\\\?>]|//|^\\\\\\\\s*$)|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.type.function.return.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-function-return-type-core\\\"}]}]},\\\"type-function-return-type-core\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<==>)(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-infer\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.expression.infer.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.expression.extends.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(infer)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?:\\\\\\\\s+(extends)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))?\\\",\\\"name\\\":\\\"meta.type.infer.ts\\\"}]},\\\"type-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(<)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts\\\"}},\\\"contentName\\\":\\\"meta.type.parameters.ts\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts\\\"}},\\\"contentName\\\":\\\"meta.type.parameters.ts\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.type.ts\\\"}]},\\\"type-object\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.object.type.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#indexer-mapped-type-declaration\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-operators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typeof-operator\\\"},{\\\"include\\\":\\\"#type-infer\\\"},{\\\"begin\\\":\\\"([&|])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"begin\\\":\\\"[&|]\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))keyof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.keyof.ts\\\"},{\\\"match\\\":\\\"(\\\\\\\\?|\\\\\\\\:)\\\",\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))import(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.import.ts\\\"}]},\\\"type-parameters\\\":{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.ts\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.ts\\\"}},\\\"name\\\":\\\"meta.type.parameters.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends|in|out|const)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.ts\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"match\\\":\\\"(=)(?!>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}]},\\\"type-paren-or-function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"name\\\":\\\"meta.type.paren.cover.ts\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s*(\\\\\\\\??)(?=:)\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.ts\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-predicate-operator\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.asserts.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.ts variable.language.this.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.expression.is.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(asserts)\\\\\\\\s+)?(?!asserts)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s(is)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.asserts.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.ts variable.language.this.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(asserts)\\\\\\\\s+(?!is)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))asserts(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.type.asserts.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))is(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.is.ts\\\"}]},\\\"type-primitive\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"support.type.primitive.ts\\\"},\\\"type-string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-single\\\"},{\\\"include\\\":\\\"#qstring-double\\\"},{\\\"include\\\":\\\"#template-type\\\"}]},\\\"type-tuple\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"name\\\":\\\"meta.type.tuple.ts\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.label.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(\\\\\\\\?)?\\\\\\\\s*(:)\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"typeof-operator\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))typeof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.expression.typeof.ts\\\"}},\\\"end\\\":\\\"(?=[,);}\\\\\\\\]=>:&|{\\\\\\\\?]|(extends\\\\\\\\s+)|$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"undefined-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))undefined(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.undefined.ts\\\"},\\\"var-expr\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^let|[^\\\\\\\\._$[:alnum:]]let|^var|[^\\\\\\\\._$[:alnum:]]var)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#destructuring-variable\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=$|\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.ts\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#destructuring-variable\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^const|[^\\\\\\\\._$[:alnum:]]const)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#destructuring-const\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=$|\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.ts\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#destructuring-const\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^using|[^\\\\\\\\._$[:alnum:]]using|^await\\\\\\\\s+using|[^\\\\\\\\._$[:alnum:]]await\\\\\\\\s+using)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*((?!\\\\\\\\S)|(?=\\\\\\\\/\\\\\\\\/))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.ts\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"var-single-const\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.constant.ts entity.name.function.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.constant.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]}]},\\\"var-single-variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\!)?(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ts entity.name.function.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])(\\\\\\\\!)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.constant.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\!)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.readwrite.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]}]},\\\"var-single-variable-type-annotation\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"variable-initializer\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)(?=\\\\\\\\s*\\\\\\\\S)(?!\\\\\\\\s*.*=>\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[,);}\\\\\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}},\\\"end\\\":\\\"(?=[,);}\\\\\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))|(?=^\\\\\\\\s*$)|(?<![\\\\\\\\|\\\\\\\\&\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/])(?<=\\\\\\\\S)(?<!=)(?=\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]}},\\\"scopeName\\\":\\\"source.ts.ng\\\",\\\"embeddedLangs\\\":[\\\"angular-expression\\\",\\\"angular-inline-style\\\",\\\"angular-inline-template\\\",\\\"angular-let-declaration\\\",\\\"angular-template\\\",\\\"angular-template-blocks\\\"]}\"))\n\nexport default [\n...angular_expression,\n...angular_inline_style,\n...angular_inline_template,\n...angular_let_declaration,\n...angular_template,\n...angular_template_blocks,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Apache Conf\\\",\\\"fileTypes\\\":[\\\"conf\\\",\\\"CONF\\\",\\\"envvars\\\",\\\"htaccess\\\",\\\"HTACCESS\\\",\\\"htgroups\\\",\\\"HTGROUPS\\\",\\\"htpasswd\\\",\\\"HTPASSWD\\\",\\\".htaccess\\\",\\\".HTACCESS\\\",\\\".htgroups\\\",\\\".HTGROUPS\\\",\\\".htpasswd\\\",\\\".HTPASSWD\\\"],\\\"name\\\":\\\"apache\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.apacheconf\\\"}},\\\"match\\\":\\\"^(\\\\\\\\s)*(#).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.hash.ini\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.apacheconf\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.tag.apacheconf\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.value.apacheconf\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.apacheconf\\\"}},\\\"match\\\":\\\"(<)(Proxy|ProxyMatch|IfVersion|Directory|DirectoryMatch|Files|FilesMatch|IfDefine|IfModule|Limit|LimitExcept|Location|LocationMatch|VirtualHost|Macro|If|Else|ElseIf)(\\\\\\\\s(.+?))?(>)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.apacheconf\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.tag.apacheconf\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.apacheconf\\\"}},\\\"match\\\":\\\"(</)(Proxy|ProxyMatch|IfVersion|Directory|DirectoryMatch|Files|FilesMatch|IfDefine|IfModule|Limit|LimitExcept|Location|LocationMatch|VirtualHost|Macro|If|Else|ElseIf)(>)\\\"},{\\\"captures\\\":{\\\"3\\\":{\\\"name\\\":\\\"string.regexp.apacheconf\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.replacement.apacheconf\\\"}},\\\"match\\\":\\\"(?<=(Rewrite(Rule|Cond)))\\\\\\\\s+(.+?)\\\\\\\\s+(.+?)($|\\\\\\\\s)\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.status.apacheconf\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.regexp.apacheconf\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.path.apacheconf\\\"}},\\\"match\\\":\\\"(?<=RedirectMatch)(\\\\\\\\s+(\\\\\\\\d\\\\\\\\d\\\\\\\\d|permanent|temp|seeother|gone))?\\\\\\\\s+(.+?)\\\\\\\\s+((.+?)($|\\\\\\\\s))?\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.status.apacheconf\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.path.apacheconf\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.path.apacheconf\\\"}},\\\"match\\\":\\\"(?<=Redirect)(\\\\\\\\s+(\\\\\\\\d\\\\\\\\d\\\\\\\\d|permanent|temp|seeother|gone))?\\\\\\\\s+(.+?)\\\\\\\\s+((.+?)($|\\\\\\\\s))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.apacheconf\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.path.apacheconf\\\"}},\\\"match\\\":\\\"(?<=ScriptAliasMatch|AliasMatch)\\\\\\\\s+(.+?)\\\\\\\\s+((.+?)\\\\\\\\s)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.path.apacheconf\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.path.apacheconf\\\"}},\\\"match\\\":\\\"(?<=RedirectPermanent|RedirectTemp|ScriptAlias|Alias)\\\\\\\\s+(.+?)\\\\\\\\s+((.+?)($|\\\\\\\\s))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.core.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(AcceptPathInfo|AccessFileName|AddDefaultCharset|AddOutputFilterByType|AllowEncodedSlashes|AllowOverride|AuthName|AuthType|CGIMapExtension|ContentDigest|DefaultType|Define|DocumentRoot|EnableMMAP|EnableSendfile|ErrorDocument|ErrorLog|FileETag|ForceType|HostnameLookups|IdentityCheck|Include(Optional)?|KeepAlive|KeepAliveTimeout|LimitInternalRecursion|LimitRequestBody|LimitRequestFields|LimitRequestFieldSize|LimitRequestLine|LimitXMLRequestBody|LogLevel|MaxKeepAliveRequests|Mutex|NameVirtualHost|Options|Require|RLimitCPU|RLimitMEM|RLimitNPROC|Satisfy|ScriptInterpreterSource|ServerAdmin|ServerAlias|ServerName|ServerPath|ServerRoot|ServerSignature|ServerTokens|SetHandler|SetInputFilter|SetOutputFilter|Time(O|o)ut|TraceEnable|UseCanonicalName|Use|ErrorLogFormat|GlobalLog|PHPIniDir|SSLHonorCipherOrder|SSLCompression|SSLUseStapling|SSLStapling\\\\\\\\w+|SSLCARevocationCheck|SSLSRPVerifierFile|SSLSessionTickets|RequestReadTimeout|ProxyHTML\\\\\\\\w+|MaxRanges)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.mpm.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(AcceptMutex|AssignUserID|BS2000Account|ChildPerUserID|CoreDumpDirectory|EnableExceptionHook|Group|Listen|ListenBacklog|LockFile|MaxClients|MaxConnectionsPerChild|MaxMemFree|MaxRequestsPerChild|MaxRequestsPerThread|MaxRequestWorkers|MaxSpareServers|MaxSpareThreads|MaxThreads|MaxThreadsPerChild|MinSpareServers|MinSpareThreads|NumServers|PidFile|ReceiveBufferSize|ScoreBoardFile|SendBufferSize|ServerLimit|StartServers|StartThreads|ThreadLimit|ThreadsPerChild|ThreadStackSize|User|Win32DisableAcceptEx)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.access.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(Allow|Deny|Order)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.actions.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(Action|Script)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.alias.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(Alias|AliasMatch|Redirect|RedirectMatch|RedirectPermanent|RedirectTemp|ScriptAlias|ScriptAliasMatch)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.auth.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(AuthAuthoritative|AuthGroupFile|AuthUserFile|AuthBasicProvider|AuthBasicFake|AuthBasicAuthoritative|AuthBasicUseDigestAlgorithm)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.auth_anon.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(Anonymous|Anonymous_Authoritative|Anonymous_LogEmail|Anonymous_MustGiveEmail|Anonymous_NoUserID|Anonymous_VerifyEmail)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.auth_dbm.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(AuthDBMAuthoritative|AuthDBMGroupFile|AuthDBMType|AuthDBMUserFile)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.auth_digest.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(AuthDigestAlgorithm|AuthDigestDomain|AuthDigestFile|AuthDigestGroupFile|AuthDigestNcCheck|AuthDigestNonceFormat|AuthDigestNonceLifetime|AuthDigestQop|AuthDigestShmemSize|AuthDigestProvider)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.auth_ldap.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(AuthLDAPAuthoritative|AuthLDAPBindDN|AuthLDAPBindPassword|AuthLDAPCharsetConfig|AuthLDAPCompareDNOnServer|AuthLDAPDereferenceAliases|AuthLDAPEnabled|AuthLDAPFrontPageHack|AuthLDAPGroupAttribute|AuthLDAPGroupAttributeIsDN|AuthLDAPRemoteUserIsDN|AuthLDAPUrl)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.autoindex.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(AddAlt|AddAltByEncoding|AddAltByType|AddDescription|AddIcon|AddIconByEncoding|AddIconByType|DefaultIcon|HeaderName|IndexIgnore|IndexOptions|IndexOrderDefault|IndexStyleSheet|IndexHeadInsert|ReadmeName)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.filter.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(BalancerMember|BalancerGrowth|BalancerPersist|BalancerInherit)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.cache.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(CacheDefaultExpire|CacheDisable|CacheEnable|CacheForceCompletion|CacheIgnoreCacheControl|CacheIgnoreHeaders|CacheIgnoreNoLastMod|CacheLastModifiedFactor|CacheMaxExpire)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.cern_meta.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(MetaDir|MetaFiles|MetaSuffix)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.cgi.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(ScriptLog|ScriptLogBuffer|ScriptLogLength)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.cgid.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(ScriptLog|ScriptLogBuffer|ScriptLogLength|ScriptSock)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.charset_lite.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(CharsetDefault|CharsetOptions|CharsetSourceEnc)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.dav.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(Dav|DavDepthInfinity|DavMinTimeout|DavLockDB)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.deflate.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(DeflateBufferSize|DeflateCompressionLevel|DeflateFilterNote|DeflateMemLevel|DeflateWindowSize)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.dir.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(DirectoryIndex|DirectorySlash|FallbackResource)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.disk_cache.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(CacheDirLength|CacheDirLevels|CacheExpiryCheck|CacheGcClean|CacheGcDaily|CacheGcInterval|CacheGcMemUsage|CacheGcUnused|CacheMaxFileSize|CacheMinFileSize|CacheRoot|CacheSize|CacheTimeMargin)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.dumpio.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(DumpIOInput|DumpIOOutput)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.env.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(PassEnv|SetEnv|UnsetEnv)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.expires.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(ExpiresActive|ExpiresByType|ExpiresDefault)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ext_filter.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(ExtFilterDefine|ExtFilterOptions)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.file_cache.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(CacheFile|MMapFile)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.filter.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(AddOutputFilterByType|FilterChain|FilterDeclare|FilterProtocol|FilterProvider|FilterTrace)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.headers.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(Header|RequestHeader)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.imap.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(ImapBase|ImapDefault|ImapMenu)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.include.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(SSIEndTag|SSIErrorMsg|SSIStartTag|SSITimeFormat|SSIUndefinedEcho|XBitHack)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.isapi.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(ISAPIAppendLogToErrors|ISAPIAppendLogToQuery|ISAPICacheFile|ISAPIFakeAsync|ISAPILogNotSupported|ISAPIReadAheadBuffer)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ldap.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(LDAPCacheEntries|LDAPCacheTTL|LDAPConnectionTimeout|LDAPOpCacheEntries|LDAPOpCacheTTL|LDAPSharedCacheFile|LDAPSharedCacheSize|LDAPTrustedCA|LDAPTrustedCAType)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.log.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(BufferedLogs|CookieLog|CustomLog|LogFormat|TransferLog|ForensicLog)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.mem_cache.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(MCacheMaxObjectCount|MCacheMaxObjectSize|MCacheMaxStreamingBuffer|MCacheMinObjectSize|MCacheRemovalAlgorithm|MCacheSize)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.mime.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(AddCharset|AddEncoding|AddHandler|AddInputFilter|AddLanguage|AddOutputFilter|AddType|DefaultLanguage|ModMimeUsePathInfo|MultiviewsMatch|RemoveCharset|RemoveEncoding|RemoveHandler|RemoveInputFilter|RemoveLanguage|RemoveOutputFilter|RemoveType|TypesConfig)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.misc.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(ProtocolEcho|Example|AddModuleInfo|MimeMagicFile|CheckSpelling|ExtendedStatus|SuexecUserGroup|UserDir)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.negotiation.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(CacheNegotiatedDocs|ForceLanguagePriority|LanguagePriority)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.nw_ssl.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(NWSSLTrustedCerts|NWSSLUpgradeable|SecureListen)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.proxy.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(AllowCONNECT|NoProxy|ProxyBadHeader|ProxyBlock|ProxyDomain|ProxyErrorOverride|ProxyFtpDirCharset|ProxyIOBufferSize|ProxyMaxForwards|ProxyPass|ProxyPassMatch|ProxyPassReverse|ProxyPreserveHost|ProxyReceiveBufferSize|ProxyRemote|ProxyRemoteMatch|ProxyRequests|ProxyTimeout|ProxyVia)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.rewrite.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(RewriteBase|RewriteCond|RewriteEngine|RewriteLock|RewriteLog|RewriteLogLevel|RewriteMap|RewriteOptions|RewriteRule)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.setenvif.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(BrowserMatch|BrowserMatchNoCase|SetEnvIf|SetEnvIfNoCase)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.so.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(LoadFile|LoadModule)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.ssl.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(SSLCACertificateFile|SSLCACertificatePath|SSLCARevocationFile|SSLCARevocationPath|SSLCertificateChainFile|SSLCertificateFile|SSLCertificateKeyFile|SSLCipherSuite|SSLEngine|SSLMutex|SSLOptions|SSLPassPhraseDialog|SSLProtocol|SSLProxyCACertificateFile|SSLProxyCACertificatePath|SSLProxyCARevocationFile|SSLProxyCARevocationPath|SSLProxyCipherSuite|SSLProxyEngine|SSLProxyMachineCertificateFile|SSLProxyMachineCertificatePath|SSLProxyProtocol|SSLProxyVerify|SSLProxyVerifyDepth|SSLRandomSeed|SSLRequire|SSLRequireSSL|SSLSessionCache|SSLSessionCacheTimeout|SSLUserName|SSLVerifyClient|SSLVerifyDepth|SSLInsecureRenegotiation|SSLOpenSSLConfCmd)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.substitute.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(Substitute|SubstituteInheritBefore|SubstituteMaxLineLength)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.usertrack.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(CookieDomain|CookieExpires|CookieName|CookieStyle|CookieTracking)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.vhost_alias.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(VirtualDocumentRoot|VirtualDocumentRootIP|VirtualScriptAlias|VirtualScriptAliasIP)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.php.apacheconf\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.property.apacheconf\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.value.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(php_value|php_flag|php_admin_value|php_admin_flag)\\\\\\\\b(\\\\\\\\s+(.+?)(\\\\\\\\s+(\\\\\\\".+?\\\\\\\"|.+?))?)?\\\\\\\\s\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.variable.apacheconf\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.env.apacheconf\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.misc.apacheconf\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.variable.apacheconf\\\"}},\\\"match\\\":\\\"(%\\\\\\\\{)((HTTP_USER_AGENT|HTTP_REFERER|HTTP_COOKIE|HTTP_FORWARDED|HTTP_HOST|HTTP_PROXY_CONNECTION|HTTP_ACCEPT|REMOTE_ADDR|REMOTE_HOST|REMOTE_PORT|REMOTE_USER|REMOTE_IDENT|REQUEST_METHOD|SCRIPT_FILENAME|PATH_INFO|QUERY_STRING|AUTH_TYPE|DOCUMENT_ROOT|SERVER_ADMIN|SERVER_NAME|SERVER_ADDR|SERVER_PORT|SERVER_PROTOCOL|SERVER_SOFTWARE|TIME_YEAR|TIME_MON|TIME_DAY|TIME_HOUR|TIME_MIN|TIME_SEC|TIME_WDAY|TIME|API_VERSION|THE_REQUEST|REQUEST_URI|REQUEST_FILENAME|IS_SUBREQ|HTTPS)|(.*?))(\\\\\\\\})\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.mime-type.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b((text|image|application|video|audio)/.+?)\\\\\\\\s\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.helper.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?i)(export|from|unset|set|on|off)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.flag.apacheconf\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.flag.apacheconf\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.flag.apacheconf\\\"}},\\\"match\\\":\\\"\\\\\\\\s(\\\\\\\\[)(.*?)(\\\\\\\\])\\\\\\\\s\\\"}],\\\"scopeName\\\":\\\"source.apacheconf\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Apex\\\",\\\"fileTypes\\\":[\\\"apex\\\",\\\"cls\\\",\\\"trigger\\\"],\\\"name\\\":\\\"apex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#directives\\\"},{\\\"include\\\":\\\"#declarations\\\"},{\\\"include\\\":\\\"#script-top-level\\\"}],\\\"repository\\\":{\\\"annotation-declaration\\\":{\\\"begin\\\":\\\"([@][_[:alpha:]]+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.annotation.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\)|$)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#statement\\\"}]},\\\"argument-list\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#named-argument\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"array-creation-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\b(new)\\\\\\\\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*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*))?\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.new.apex\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#type\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#bracketed-argument-list\\\"}]},\\\"block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]},\\\"boolean-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\btrue\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.true.apex\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bfalse\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.false.apex\\\"}]},\\\"bracketed-argument-list\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.squarebracket.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.squarebracket.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#soql-query-expression\\\"},{\\\"include\\\":\\\"#named-argument\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"break-or-continue-statement\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.break.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.flow.continue.apex\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:(break)|(continue))\\\\\\\\b\\\"},\\\"cast-expression\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"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>)*)(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*))\\\\\\\\s*(\\\\\\\\))(?=\\\\\\\\s*@?[_[:alnum:]\\\\\\\\(])\\\"},\\\"catch-clause\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(catch)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.try.catch.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"entity.name.variable.local.apex\\\"}},\\\"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>)*)(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*))\\\\\\\\s*(?:(\\\\\\\\g<identifier>)\\\\\\\\b)?\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#block\\\"}]},\\\"class-declaration\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\bclass\\\\\\\\b)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(class)\\\\\\\\b\\\\\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.class.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.apex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameter-list\\\"},{\\\"include\\\":\\\"#extends-class\\\"},{\\\"include\\\":\\\"#implements-class\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#class-or-trigger-members\\\"}]},{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"class-or-trigger-members\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#storage-modifier\\\"},{\\\"include\\\":\\\"#sharing-modifier\\\"},{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#property-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#constructor-declaration\\\"},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"colon-expression\\\":{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"keyword.operator.conditional.colon.apex\\\"},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*(\\\\\\\\*)?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.apex\\\"}},\\\"name\\\":\\\"comment.block.apex\\\"},{\\\"begin\\\":\\\"(^\\\\\\\\s+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.apex\\\"}},\\\"end\\\":\\\"(?=$)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!/)///(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.apex\\\"}},\\\"end\\\":\\\"(?=$)\\\",\\\"name\\\":\\\"comment.block.documentation.apex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xml-doc-comment\\\"}]},{\\\"begin\\\":\\\"(?<!/)//(?:(?!/)|(?=//))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.apex\\\"}},\\\"end\\\":\\\"(?=$)\\\",\\\"name\\\":\\\"comment.line.double-slash.apex\\\"}]}]},\\\"conditional-operator\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\?)\\\\\\\\?(?!\\\\\\\\?|\\\\\\\\.|\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.question-mark.apex\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.colon.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"constructor-declaration\\\":{\\\"begin\\\":\\\"(?=@?[_[:alpha:]][_[:alnum:]]*\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.apex\\\"}},\\\"match\\\":\\\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.colon.apex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{|=>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#constructor-initializer\\\"}]},{\\\"include\\\":\\\"#parenthesized-parameter-list\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression-body\\\"},{\\\"include\\\":\\\"#block\\\"}]},\\\"constructor-initializer\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?:(this))\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.this.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#argument-list\\\"}]},\\\"date-literal-with-params\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.query.date.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b((LAST_N_DAYS|NEXT_N_DAYS|NEXT_N_WEEKS|LAST_N_WEEKS|NEXT_N_MONTHS|LAST_N_MONTHS|NEXT_N_QUARTERS|LAST_N_QUARTERS|NEXT_N_YEARS|LAST_N_YEARS|NEXT_N_FISCAL_QUARTERS|LAST_N_FISCAL_QUARTERS|NEXT_N_FISCAL_YEARS|LAST_N_FISCAL_YEARS)\\\\\\\\s*\\\\\\\\:\\\\\\\\d+)\\\\\\\\b\\\"},\\\"date-literals\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.query.date.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(YESTERDAY|TODAY|TOMORROW|LAST_WEEK|THIS_WEEK|NEXT_WEEK|LAST_MONTH|THIS_MONTH|NEXT_MONTH|LAST_90_DAYS|NEXT_90_DAYS|THIS_QUARTER|LAST_QUARTER|NEXT_QUARTER|THIS_YEAR|LAST_YEAR|NEXT_YEAR|THIS_FISCAL_QUARTER|LAST_FISCAL_QUARTER|NEXT_FISCAL_QUARTER|THIS_FISCAL_YEAR|LAST_FISCAL_YEAR|NEXT_FISCAL_YEAR)\\\\\\\\b\\\\\\\\s*\\\"},\\\"declarations\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"directives\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"do-statement\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(do)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.loop.do.apex\\\"}},\\\"end\\\":\\\"(?=;|})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]},\\\"element-access-expression\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\??\\\\\\\\.)\\\\\\\\s*)?(?:(@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\s*)?(?:(\\\\\\\\?)\\\\\\\\s*)?(?=\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#operator-safe-navigation\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.property.apex\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.null-conditional.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\])(?!\\\\\\\\s*\\\\\\\\[)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#bracketed-argument-list\\\"}]},\\\"else-part\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(else)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.else.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]},\\\"enum-declaration\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\benum\\\\\\\\b)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=enum)\\\",\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.enum.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.enum.apex\\\"}},\\\"match\\\":\\\"(enum)\\\\\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"begin\\\":\\\"@?[_[:alpha:]][_[:alnum:]]*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.variable.enum-member.apex\\\"}},\\\"end\\\":\\\"(?=(,|\\\\\\\\}))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]}]},{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#merge-expression\\\"},{\\\"include\\\":\\\"#support-expression\\\"},{\\\"include\\\":\\\"#throw-expression\\\"},{\\\"include\\\":\\\"#this-expression\\\"},{\\\"include\\\":\\\"#trigger-context-declaration\\\"},{\\\"include\\\":\\\"#conditional-operator\\\"},{\\\"include\\\":\\\"#expression-operators\\\"},{\\\"include\\\":\\\"#soql-query-expression\\\"},{\\\"include\\\":\\\"#object-creation-expression\\\"},{\\\"include\\\":\\\"#array-creation-expression\\\"},{\\\"include\\\":\\\"#invocation-expression\\\"},{\\\"include\\\":\\\"#member-access-expression\\\"},{\\\"include\\\":\\\"#element-access-expression\\\"},{\\\"include\\\":\\\"#cast-expression\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#parenthesized-expression\\\"},{\\\"include\\\":\\\"#initializer-expression\\\"},{\\\"include\\\":\\\"#identifier\\\"}]},\\\"expression-body\\\":{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.arrow.apex\\\"}},\\\"end\\\":\\\"(?=[,\\\\\\\\);}])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"expression-operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*=|/=|%=|\\\\\\\\+=|-=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\&=|\\\\\\\\^=|<<=|>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.apex\\\"},{\\\"match\\\":\\\"<<|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.apex\\\"},{\\\"match\\\":\\\"==|!=\\\",\\\"name\\\":\\\"keyword.operator.comparison.apex\\\"},{\\\"match\\\":\\\"<=|>=|<|>\\\",\\\"name\\\":\\\"keyword.operator.relational.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\!|&&|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\&|~|\\\\\\\\^|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.apex\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.apex\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.apex\\\"}]},\\\"extends-class\\\":{\\\"begin\\\":\\\"(extends)\\\\\\\\b\\\\\\\\s+([_[:alpha:]][_[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.extends.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.extends.apex\\\"}},\\\"end\\\":\\\"(?={|implements)\\\"},\\\"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>)*)(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*))\\\\\\\\s+(\\\\\\\\g<identifier>)\\\\\\\\s*(?!=>|==)(?=,|;|=|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"entity.name.variable.field.apex\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"@?[_[:alpha:]][_[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.variable.field.apex\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#class-or-trigger-members\\\"}]},\\\"finally-clause\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(finally)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.try.finally.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#block\\\"}]},\\\"for-apex-syntax\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"entity.name.variable.local.apex\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.iterator.colon.apex\\\"}},\\\"match\\\":\\\"([_.[:alpha:]][_.[:alnum:]]+)\\\\\\\\s+([_.[:alpha:]][_.[:alnum:]]*)\\\\\\\\s*(\\\\\\\\:)\\\"},\\\"for-statement\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(for)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.loop.for.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#for-apex-syntax\\\"},{\\\"include\\\":\\\"#local-variable-declaration\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#colon-expression\\\"}]},{\\\"include\\\":\\\"#statement\\\"}]},\\\"from-clause\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.query.from.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.apex\\\"}},\\\"match\\\":\\\"(FROM)\\\\\\\\b\\\\\\\\s*([_\\\\\\\\.[:alnum:]]+\\\\\\\\b)?\\\"},\\\"goto-statement\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(goto)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.goto.apex\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(case)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.case.apex\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.default.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(default)\\\\\\\\b\\\"},{\\\"match\\\":\\\"@?[_[:alpha:]][_[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.label.apex\\\"}]},\\\"identifier\\\":{\\\"match\\\":\\\"@?[_[:alpha:]][_[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.readwrite.apex\\\"},\\\"if-statement\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(if)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.if.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#statement\\\"}]},\\\"implements-class\\\":{\\\"begin\\\":\\\"(implements)\\\\\\\\b\\\\\\\\s+([_[:alpha:]][_[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.implements.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.implements.apex\\\"}},\\\"end\\\":\\\"(?={|extends)\\\"},\\\"indexer-declaration\\\":{\\\"begin\\\":\\\"(?<return_type>(?<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>)*)(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*))\\\\\\\\s+)(?<interface_name>\\\\\\\\g<type_name>\\\\\\\\s*\\\\\\\\.\\\\\\\\s*)?(?<indexer_name>this)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.this.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#property-accessors\\\"},{\\\"include\\\":\\\"#expression-body\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"initializer-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"interface-declaration\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\binterface\\\\\\\\b)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(interface)\\\\\\\\b\\\\\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.interface.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.interface.apex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameter-list\\\"},{\\\"include\\\":\\\"#extends-class\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interface-members\\\"}]},{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"interface-members\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#property-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"invocation-expression\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\??\\\\\\\\.)\\\\\\\\s*)?(@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\s*(?<type_args>\\\\\\\\s*<([^<>]|\\\\\\\\g<type_args>)+>\\\\\\\\s*)?\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#operator-safe-navigation\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.apex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#argument-list\\\"}]},\\\"javadoc-comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(/\\\\\\\\*\\\\\\\\*)(?!/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.apex\\\"}},\\\"name\\\":\\\"comment.block.javadoc.apex\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"@(deprecated|author|return|see|serial|since|version|usage|name|link)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.documentation.javadoc.apex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.variable.parameter.apex\\\"}},\\\"match\\\":\\\"(@param)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.apex\\\"}},\\\"match\\\":\\\"(@(?:exception|throws))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.single.apex\\\"}},\\\"match\\\":\\\"(`([^`]+?)`)\\\"}]}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#boolean-literal\\\"},{\\\"include\\\":\\\"#null-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#string-literal\\\"}]},\\\"local-constant-declaration\\\":{\\\"begin\\\":\\\"(?<const_keyword>\\\\\\\\b(?: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>)*)(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*))\\\\\\\\s+(\\\\\\\\g<identifier>)\\\\\\\\s*(?=,|;|=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.apex\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"entity.name.variable.local.apex\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"@?[_[:alpha:]][_[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.variable.local.apex\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"local-declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#local-constant-declaration\\\"},{\\\"include\\\":\\\"#local-variable-declaration\\\"}]},\\\"local-variable-declaration\\\":{\\\"begin\\\":\\\"(?:(?:(\\\\\\\\bref)\\\\\\\\s+)?(\\\\\\\\bvar\\\\\\\\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>)*)(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*)))\\\\\\\\s+(\\\\\\\\g<identifier>)\\\\\\\\s*(?=,|;|=|\\\\\\\\))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.var.apex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"entity.name.variable.local.apex\\\"}},\\\"end\\\":\\\"(?=;|\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"@?[_[:alpha:]][_[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.variable.local.apex\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"member-access-expression\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#operator-safe-navigation\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.property.apex\\\"}},\\\"match\\\":\\\"(\\\\\\\\??\\\\\\\\.)\\\\\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\s*(?![_[:alnum:]]|\\\\\\\\(|(\\\\\\\\?)?\\\\\\\\[|<)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#operator-safe-navigation\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.apex\\\"},\\\"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.apex\\\"}},\\\"match\\\":\\\"(@?[_[:alpha:]][_[:alnum:]]*)(?=(\\\\\\\\s*\\\\\\\\?)?\\\\\\\\s*\\\\\\\\.\\\\\\\\s*@?[_[:alpha:]][_[:alnum:]]*)\\\"}]},\\\"merge-expression\\\":{\\\"begin\\\":\\\"(merge)\\\\\\\\b\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-creation-expression\\\"},{\\\"include\\\":\\\"#merge-type-statement\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"merge-type-statement\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.apex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.apex\\\"}},\\\"match\\\":\\\"([_[:alpha:]]*)\\\\\\\\b\\\\\\\\s+([_[:alpha:]]*)\\\\\\\\b\\\\\\\\s*(\\\\\\\\;)\\\"},\\\"method-declaration\\\":{\\\"begin\\\":\\\"(?<return_type>(?<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>)*)(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*))\\\\\\\\s+)(?<interface_name>\\\\\\\\g<type_name>\\\\\\\\s*\\\\\\\\.\\\\\\\\s*)?(\\\\\\\\g<identifier>)\\\\\\\\s*(<([^<>]+)>)?\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#method-name-custom\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter-list\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#parenthesized-parameter-list\\\"},{\\\"include\\\":\\\"#expression-body\\\"},{\\\"include\\\":\\\"#block\\\"}]},\\\"method-name-custom\\\":{\\\"match\\\":\\\"@?[_[:alpha:]][_[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.function.apex\\\"},\\\"named-argument\\\":{\\\"begin\\\":\\\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.variable.parameter.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.colon.apex\\\"}},\\\"end\\\":\\\"(?=(,|\\\\\\\\)|\\\\\\\\]))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"null-literal\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bnull\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.null.apex\\\"},\\\"numeric-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d{4}\\\\\\\\-\\\\\\\\d{2}\\\\\\\\-\\\\\\\\d{2}T\\\\\\\\d{2}\\\\\\\\:\\\\\\\\d{2}\\\\\\\\:\\\\\\\\d{2}(\\\\\\\\.\\\\\\\\d{1,3})?(\\\\\\\\-|\\\\\\\\+)\\\\\\\\d{2}\\\\\\\\:\\\\\\\\d{2})\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.datetime.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d{4}\\\\\\\\-\\\\\\\\d{2}\\\\\\\\-\\\\\\\\d{2}T\\\\\\\\d{2}\\\\\\\\:\\\\\\\\d{2}\\\\\\\\:\\\\\\\\d{2}(\\\\\\\\.\\\\\\\\d{1,3})?(Z)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.datetime.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d{4}\\\\\\\\-\\\\\\\\d{2}\\\\\\\\-\\\\\\\\d{2})\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.date.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\b0(x|X)[0-9a-fA-F_]+(U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\b0(b|B)[01_]+(U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.binary.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\b([0-9_]+)?\\\\\\\\.[0-9_]+((e|E)[0-9]+)?(F|f|D|d|M|m)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9_]+(e|E)[0-9_]+(F|f|D|d|M|m)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9_]+(F|f|D|d|M|m)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9_]+(U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.apex\\\"}]},\\\"object-creation-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#object-creation-expression-with-parameters\\\"},{\\\"include\\\":\\\"#object-creation-expression-with-no-parameters\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-creation-expression-with-no-parameters\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.new.apex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#type\\\"}]}},\\\"match\\\":\\\"(delete|insert|undelete|update|upsert)?\\\\\\\\s*(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>)*)(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*))\\\\\\\\s*(?=\\\\\\\\{|$)\\\"},\\\"object-creation-expression-with-parameters\\\":{\\\"begin\\\":\\\"(delete|insert|undelete|update|upsert)?\\\\\\\\s*(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>)*)(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.new.apex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#type\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#argument-list\\\"}]},\\\"operator-assignment\\\":{\\\"match\\\":\\\"(?<!=|!)(=)(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.apex\\\"},\\\"operator-safe-navigation\\\":{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.safe-navigation.apex\\\"},\\\"orderby-clause\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.query.orderby.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(ORDER BY)\\\\\\\\b\\\\\\\\s*\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ordering-direction\\\"},{\\\"include\\\":\\\"#ordering-nulls\\\"}]},\\\"ordering-direction\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.query.ascending.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.query.descending.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(ASC)|(DESC))\\\\\\\\b\\\"},\\\"ordering-nulls\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.query.nullsfirst.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.query.nullslast.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(NULLS FIRST)|(NULLS LAST))\\\\\\\\b\\\"},\\\"parameter\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.apex\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"entity.name.variable.parameter.apex\\\"}},\\\"match\\\":\\\"(?:(?:\\\\\\\\b(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>)*)(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*))\\\\\\\\s+(\\\\\\\\g<identifier>)\\\"},\\\"parenthesized-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"parenthesized-parameter-list\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#parameter\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"property-accessors\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.apex\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(private|protected)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\b(get)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.get.apex\\\"},{\\\"match\\\":\\\"\\\\\\\\b(set)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.set.apex\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression-body\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"property-declaration\\\":{\\\"begin\\\":\\\"(?!.*\\\\\\\\b(?:class|interface|enum)\\\\\\\\b)\\\\\\\\s*(?<return_type>(?<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>)*)(?:\\\\\\\\s*\\\\\\\\?\\\\\\\\s*)?(?:\\\\\\\\s*\\\\\\\\[(?:\\\\\\\\s*,\\\\\\\\s*)*\\\\\\\\]\\\\\\\\s*)*))\\\\\\\\s+)(?<interface_name>\\\\\\\\g<type_name>\\\\\\\\s*\\\\\\\\.\\\\\\\\s*)?(?<property_name>\\\\\\\\g<identifier>)\\\\\\\\s*(?=\\\\\\\\{|=>|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"entity.name.variable.property.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#property-accessors\\\"},{\\\"include\\\":\\\"#expression-body\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#class-or-trigger-members\\\"}]},\\\"punctuation-accessor\\\":{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.accessor.apex\\\"},\\\"punctuation-comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.apex\\\"},\\\"punctuation-semicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.apex\\\"},\\\"query-operators\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.query.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(ABOVE|AND|AT|FOR REFERENCE|FOR UPDATE|FOR VIEW|GROUP BY|HAVING|IN|LIKE|LIMIT|NOT IN|NOT|OFFSET|OR|TYPEOF|UPDATE TRACKING|UPDATE VIEWSTAT|WITH DATA CATEGORY|WITH)\\\\\\\\b\\\\\\\\s*\\\"},\\\"return-statement\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(return)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.return.apex\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"script-top-level\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#statement\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"sharing-modifier\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(with sharing|without sharing|inherited sharing)\\\\\\\\b\\\",\\\"name\\\":\\\"sharing.modifier.apex\\\"},\\\"soql-colon-method-statement\\\":{\\\"begin\\\":\\\"(:?\\\\\\\\.)?([_[:alpha:]][_[:alnum:]]*)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#statement\\\"}]},\\\"soql-colon-vars\\\":{\\\"begin\\\":\\\"(\\\\\\\\:)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.colon.apex\\\"}},\\\"end\\\":\\\"(?![_[:alnum:]]|\\\\\\\\(|(\\\\\\\\?)?\\\\\\\\[|<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#trigger-context-declaration\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object.apex\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#operator-safe-navigation\\\"}]}},\\\"match\\\":\\\"([_[:alpha:]][_[:alnum:]]*)(\\\\\\\\??\\\\\\\\.)\\\"},{\\\"include\\\":\\\"#soql-colon-method-statement\\\"},{\\\"match\\\":\\\"[_[:alpha:]][_[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.variable.local.apex\\\"}]},\\\"soql-functions\\\":{\\\"begin\\\":\\\"\\\\\\\\b(AVG|CALENDAR_MONTH|CALENDAR_QUARTER|CALENDAR_YEAR|convertCurrency|convertTimezone|COUNT|COUNT_DISTINCT|DAY_IN_MONTH|DAY_IN_WEEK|DAY_IN_YEAR|DAY_ONLY|toLabel|INCLUDES|EXCLUDES|FISCAL_MONTH|FISCAL_QUARTER|FISCAL_YEAR|FORMAT|GROUPING|GROUP BY CUBE|GROUP BY ROLLUP|HOUR_IN_DAY|MAX|MIN|SUM|WEEK_IN_MONTH|WEEK_IN_YEAR)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.query.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#soql-functions\\\"},{\\\"match\\\":\\\"[_.[:alpha:]][_.[:alnum:]]*\\\",\\\"name\\\":\\\"keyword.query.field.apex\\\"}]},\\\"soql-group-clauses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#soql-query-expression\\\"},{\\\"include\\\":\\\"#soql-colon-vars\\\"},{\\\"include\\\":\\\"#soql-group-clauses\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#operator-assignment\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#query-operators\\\"},{\\\"include\\\":\\\"#date-literals\\\"},{\\\"include\\\":\\\"#date-literal-with-params\\\"},{\\\"include\\\":\\\"#using-scope\\\"},{\\\"match\\\":\\\"[_.[:alpha:]][_.[:alnum:]]*\\\",\\\"name\\\":\\\"keyword.query.field.apex\\\"}]},\\\"soql-query-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#trigger-context-declaration\\\"},{\\\"include\\\":\\\"#soql-colon-vars\\\"},{\\\"include\\\":\\\"#soql-functions\\\"},{\\\"include\\\":\\\"#from-clause\\\"},{\\\"include\\\":\\\"#where-clause\\\"},{\\\"include\\\":\\\"#query-operators\\\"},{\\\"include\\\":\\\"#date-literals\\\"},{\\\"include\\\":\\\"#date-literal-with-params\\\"},{\\\"include\\\":\\\"#using-scope\\\"},{\\\"include\\\":\\\"#soql-group-clauses\\\"},{\\\"include\\\":\\\"#orderby-clause\\\"},{\\\"include\\\":\\\"#ordering-direction\\\"},{\\\"include\\\":\\\"#ordering-nulls\\\"}]},\\\"soql-query-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\b(SELECT)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.query.select.apex\\\"}},\\\"end\\\":\\\"(?=;)|(?=\\\\\\\\])|(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#soql-query-body\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#operator-assignment\\\"},{\\\"include\\\":\\\"#parenthesized-expression\\\"},{\\\"include\\\":\\\"#expression-operators\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.query.field.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.comma.apex\\\"}},\\\"match\\\":\\\"([_.[:alpha:]][_.[:alnum:]]*)\\\\\\\\s*(\\\\\\\\,)?\\\"}]},\\\"statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#while-statement\\\"},{\\\"include\\\":\\\"#do-statement\\\"},{\\\"include\\\":\\\"#for-statement\\\"},{\\\"include\\\":\\\"#switch-statement\\\"},{\\\"include\\\":\\\"#when-else-statement\\\"},{\\\"include\\\":\\\"#when-sobject-statement\\\"},{\\\"include\\\":\\\"#when-statement\\\"},{\\\"include\\\":\\\"#when-multiple-statement\\\"},{\\\"include\\\":\\\"#if-statement\\\"},{\\\"include\\\":\\\"#else-part\\\"},{\\\"include\\\":\\\"#goto-statement\\\"},{\\\"include\\\":\\\"#return-statement\\\"},{\\\"include\\\":\\\"#break-or-continue-statement\\\"},{\\\"include\\\":\\\"#throw-statement\\\"},{\\\"include\\\":\\\"#try-statement\\\"},{\\\"include\\\":\\\"#soql-query-expression\\\"},{\\\"include\\\":\\\"#local-declaration\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"storage-modifier\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(new|public|protected|private|abstract|virtual|override|global|static|final|transient)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.apex\\\"},\\\"string-character-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.apex\\\"},\\\"string-literal\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.apex\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.apex\\\"}},\\\"name\\\":\\\"string.quoted.single.apex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"support-arguments\\\":{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.apex\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"support-class\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(ApexPages|Database|DMLException|Exception|PageReference|Savepoint|SchedulableContext|Schema|SObject|System|Test)\\\\\\\\b\\\"},\\\"support-expression\\\":{\\\"begin\\\":\\\"(ApexPages|Database|DMLException|Exception|PageReference|Savepoint|SchedulableContext|Schema|SObject|System|Test)(?=\\\\\\\\.|\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\)|$)|(?=\\\\\\\\})|(?=;)|(?=\\\\\\\\)|(?=\\\\\\\\]))|(?=\\\\\\\\,)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#support-type\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.apex\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.))([[:alpha:]]*)(?=\\\\\\\\()\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.apex\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.))([[:alpha:]]+)\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#statement\\\"}]},\\\"support-functions\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(delete|execute|finish|insert|start|undelete|update|upsert)\\\\\\\\b\\\"},\\\"support-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.apex\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)\\\\\\\\s*([[:alpha:]]*)(?=\\\\\\\\()\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.apex\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)\\\\\\\\s*([_[:alpha:]]*)\\\"}]},\\\"support-type\\\":{\\\"name\\\":\\\"support.apex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#support-class\\\"},{\\\"include\\\":\\\"#support-functions\\\"},{\\\"include\\\":\\\"#support-name\\\"}]},\\\"switch-statement\\\":{\\\"begin\\\":\\\"(switch)\\\\\\\\b\\\\\\\\s+(on)\\\\\\\\b\\\\\\\\s+(?:([_.?\\\\\\\\'\\\\\\\\(\\\\\\\\)[:alnum:]]+)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.switch.on.apex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"},{\\\"include\\\":\\\"#parenthesized-expression\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.apex\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#when-string\\\"},{\\\"include\\\":\\\"#when-else-statement\\\"},{\\\"include\\\":\\\"#when-sobject-statement\\\"},{\\\"include\\\":\\\"#when-statement\\\"},{\\\"include\\\":\\\"#when-multiple-statement\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"this-expression\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.this.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(this))\\\\\\\\b\\\"},\\\"throw-expression\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.throw.apex\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(throw)\\\\\\\\b\\\"},\\\"throw-statement\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(throw)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.throw.apex\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"trigger-context-declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?:(Trigger))\\\\\\\\b(\\\\\\\\.)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.trigger.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.apex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})|(?=;)|(?=\\\\\\\\)|(?=\\\\\\\\]))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(isExecuting|isInsert|isUpdate|isDelete|isBefore|isAfter|isUndelete|new|newMap|old|oldMap|size)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.trigger.apex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#operator-safe-navigation\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"support.function.trigger.apex\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\??\\\\\\\\.))([[:alpha:]]+)(?=\\\\\\\\()\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#trigger-type-statement\\\"},{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#expression\\\"}]},\\\"trigger-declaration\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\btrigger\\\\\\\\b)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(trigger)\\\\\\\\b\\\\\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\s*\\\\\\\\b(on)\\\\\\\\b\\\\\\\\s+([_[:alpha:]][_[:alnum:]]*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.trigger.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.trigger.apex\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.trigger.on.apex\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.apex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#trigger-type-statement\\\"},{\\\"include\\\":\\\"#trigger-operator-statement\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameter-list\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"},{\\\"include\\\":\\\"#class-or-trigger-members\\\"}]},{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"trigger-operator-statement\\\":{\\\"match\\\":\\\"\\\\\\\\b(insert|update|delete|merge|upsert|undelete)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.trigger.apex\\\"},\\\"trigger-type-statement\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.trigger.before.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.trigger.after.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(before)|(after))\\\\\\\\b\\\"},\\\"try-block\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(try)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.try.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#block\\\"}]},\\\"try-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#try-block\\\"},{\\\"include\\\":\\\"#catch-clause\\\"},{\\\"include\\\":\\\"#finally-clause\\\"}]},\\\"type\\\":{\\\"name\\\":\\\"meta.type.apex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-builtin\\\"},{\\\"include\\\":\\\"#type-name\\\"},{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#type-array-suffix\\\"},{\\\"include\\\":\\\"#type-nullable-suffix\\\"}]},\\\"type-arguments\\\":{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.apex\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#support-type\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-array-suffix\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.squarebracket.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.squarebracket.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-builtin\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.type.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(Blob|Boolean|byte|Date|Datetime|Decimal|Double|ID|Integer|Long|Object|String|Time|void)\\\\\\\\b\\\"},\\\"type-declarations\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#javadoc-comment\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#annotation-declaration\\\"},{\\\"include\\\":\\\"#storage-modifier\\\"},{\\\"include\\\":\\\"#sharing-modifier\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#enum-declaration\\\"},{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#trigger-declaration\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"type-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.apex\\\"}},\\\"match\\\":\\\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\s*(\\\\\\\\.)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.apex\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)\\\\\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\\\"},{\\\"match\\\":\\\"@?[_[:alpha:]][_[:alnum:]]*\\\",\\\"name\\\":\\\"storage.type.apex\\\"}]},\\\"type-nullable-suffix\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.question-mark.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\?\\\"},\\\"type-parameter-list\\\":{\\\"begin\\\":\\\"\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.apex\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.type-parameter.apex\\\"}},\\\"match\\\":\\\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"using-scope\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.query.using.apex\\\"}},\\\"match\\\":\\\"((USING SCOPE)\\\\\\\\b\\\\\\\\s*(Delegated|Everything|Mine|My_Territory|My_Team_Territory|Team))\\\\\\\\b\\\\\\\\s*\\\"},\\\"variable-initializer\\\":{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=|>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.apex\\\"}},\\\"end\\\":\\\"(?=[,\\\\\\\\)\\\\\\\\];}])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"when-else-statement\\\":{\\\"begin\\\":\\\"(when)\\\\\\\\b\\\\\\\\s+(else)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.when.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.switch.else.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"when-multiple-statement\\\":{\\\"begin\\\":\\\"(when)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.when.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"when-sobject-statement\\\":{\\\"begin\\\":\\\"(when)\\\\\\\\b\\\\\\\\s+([_[:alnum:]]+)\\\\\\\\s+([_[:alnum:]]+)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.when.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.apex\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.variable.local.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"when-statement\\\":{\\\"begin\\\":\\\"(when)\\\\\\\\b\\\\\\\\s+([\\\\\\\\'_\\\\\\\\-[:alnum:]]+)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.when.apex\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"when-string\\\":{\\\"begin\\\":\\\"(when)(\\\\\\\\b\\\\\\\\s*)((\\\\\\\\')[_.\\\\\\\\,\\\\\\\\'\\\\\\\\s*[:alnum:]]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.when.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.whitespace.apex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#when-string-statement\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"when-string-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.apex\\\"}},\\\"name\\\":\\\"string.quoted.single.apex\\\"}]},\\\"where-clause\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.query.where.apex\\\"}},\\\"match\\\":\\\"\\\\\\\\b(WHERE)\\\\\\\\b\\\\\\\\s*\\\"},\\\"while-statement\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(while)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.loop.while.apex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.apex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#statement\\\"}]},\\\"xml-attribute\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.namespace.apex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.colon.apex\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.other.attribute-name.localname.apex\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.equals.apex\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\s+)((?:([-_[:alnum:]]+)(:))?([-_[:alnum:]]+))(=)\\\"},{\\\"include\\\":\\\"#xml-string\\\"}]},\\\"xml-cdata\\\":{\\\"begin\\\":\\\"<!\\\\\\\\[CDATA\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\]>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.apex\\\"}},\\\"name\\\":\\\"string.unquoted.cdata.apex\\\"},\\\"xml-character-entity\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.apex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.constant.apex\\\"}},\\\"match\\\":\\\"(&)((?:[[:alpha:]:_][[:alnum:]:_.-]*)|(?:\\\\\\\\#[[:digit:]]+)|(?:\\\\\\\\#x[[:xdigit:]]+))(;)\\\",\\\"name\\\":\\\"constant.character.entity.apex\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"invalid.illegal.bad-ampersand.apex\\\"}]},\\\"xml-comment\\\":{\\\"begin\\\":\\\"<!--\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.apex\\\"}},\\\"end\\\":\\\"-->\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.apex\\\"}},\\\"name\\\":\\\"comment.block.apex\\\"},\\\"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.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.apex\\\"}},\\\"name\\\":\\\"string.quoted.single.apex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xml-character-entity\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.stringdoublequote.begin.apex\\\"}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.stringdoublequote.end.apex\\\"}},\\\"name\\\":\\\"string.quoted.double.apex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xml-character-entity\\\"}]}]},\\\"xml-tag\\\":{\\\"begin\\\":\\\"(</?)((?:([-_[:alnum:]]+)(:))?([-_[:alnum:]]+))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.apex\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.apex\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.apex\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.colon.apex\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.tag.localname.apex\\\"}},\\\"end\\\":\\\"(/?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.apex\\\"}},\\\"name\\\":\\\"meta.tag.apex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xml-attribute\\\"}]}},\\\"scopeName\\\":\\\"source.apex\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Java\\\",\\\"name\\\":\\\"java\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(package)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.package.java\\\"}},\\\"contentName\\\":\\\"storage.modifier.package.java\\\",\\\"end\\\":\\\"\\\\\\\\s*(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.java\\\"}},\\\"name\\\":\\\"meta.package.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\.)\\\\\\\\s*\\\\\\\\.|\\\\\\\\.(?=\\\\\\\\s*;)\\\",\\\"name\\\":\\\"invalid.illegal.character_not_allowed_here.java\\\"},{\\\"match\\\":\\\"(?<!_)_(?=\\\\\\\\s*(\\\\\\\\.|;))|\\\\\\\\b\\\\\\\\d+|-+\\\",\\\"name\\\":\\\"invalid.illegal.character_not_allowed_here.java\\\"},{\\\"match\\\":\\\"[A-Z]+\\\",\\\"name\\\":\\\"invalid.deprecated.package_name_not_lowercase.java\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)(abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|native|new|non-sealed|package|permits|private|protected|public|return|sealed|short|static|strictfp|super|switch|syncronized|this|throw|throws|transient|try|void|volatile|while|yield|true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.character_not_allowed_here.java\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.java\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(import)\\\\\\\\b\\\\\\\\s*\\\\\\\\b(static)?\\\\\\\\b\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.java\\\"}},\\\"contentName\\\":\\\"storage.modifier.import.java\\\",\\\"end\\\":\\\"\\\\\\\\s*(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.java\\\"}},\\\"name\\\":\\\"meta.import.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\.)\\\\\\\\s*\\\\\\\\.|\\\\\\\\.(?=\\\\\\\\s*;)\\\",\\\"name\\\":\\\"invalid.illegal.character_not_allowed_here.java\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\s*\\\\\\\\*\\\",\\\"name\\\":\\\"invalid.illegal.character_not_allowed_here.java\\\"},{\\\"match\\\":\\\"(?<!_)_(?=\\\\\\\\s*(\\\\\\\\.|;))|\\\\\\\\b\\\\\\\\d+|-+\\\",\\\"name\\\":\\\"invalid.illegal.character_not_allowed_here.java\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)(abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|native|new|non-sealed|package|permits|private|protected|public|return|sealed|short|static|strictfp|super|switch|syncronized|this|throw|throws|transient|try|void|volatile|while|yield|true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.character_not_allowed_here.java\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.java\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"variable.language.wildcard.java\\\"}]},{\\\"include\\\":\\\"#comments-javadoc\\\"},{\\\"include\\\":\\\"#code\\\"},{\\\"include\\\":\\\"#module\\\"}],\\\"repository\\\":{\\\"all-types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#primitive-arrays\\\"},{\\\"include\\\":\\\"#primitive-types\\\"},{\\\"include\\\":\\\"#object-types\\\"}]},\\\"annotations\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((@)\\\\\\\\s*([^\\\\\\\\s(]+))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.annotation.java\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.annotation.java\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.annotation-arguments.begin.bracket.round.java\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.annotation-arguments.end.bracket.round.java\\\"}},\\\"name\\\":\\\"meta.declaration.annotation.java\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.key.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.java\\\"}},\\\"match\\\":\\\"(\\\\\\\\w*)\\\\\\\\s*(=)\\\"},{\\\"include\\\":\\\"#code\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.annotation.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.java\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.annotation.java\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.annotation.java\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.annotation.java\\\"}},\\\"match\\\":\\\"(@)(interface)\\\\\\\\s+(\\\\\\\\w*)|((@)\\\\\\\\s*(\\\\\\\\w+))\\\",\\\"name\\\":\\\"meta.declaration.annotation.java\\\"}]},\\\"anonymous-block-and-instance-initializer\\\":{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.java\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.java\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},\\\"anonymous-classes-and-new\\\":{\\\"begin\\\":\\\"\\\\\\\\bnew\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.new.java\\\"}},\\\"end\\\":\\\"(?=;|\\\\\\\\)|\\\\\\\\]|\\\\\\\\.|,|\\\\\\\\?|:|}|\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\/(?!\\\\\\\\/|\\\\\\\\*)|%|!|&|\\\\\\\\||\\\\\\\\^|=)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#all-types\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\",\\\"end\\\":\\\"(?=;|\\\\\\\\)|\\\\\\\\]|\\\\\\\\.|,|\\\\\\\\?|:|}|\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\/(?!\\\\\\\\/|\\\\\\\\*)|%|!|&|\\\\\\\\||\\\\\\\\^|=)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.inner-class.begin.bracket.curly.java\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.inner-class.end.bracket.curly.java\\\"}},\\\"name\\\":\\\"meta.inner-class.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-body\\\"}]}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\])\\\",\\\"end\\\":\\\"(?=;|\\\\\\\\)|\\\\\\\\]|\\\\\\\\.|,|\\\\\\\\?|:|}|\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\/(?!\\\\\\\\/|\\\\\\\\*)|%|!|&|\\\\\\\\||\\\\\\\\^|=)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array-initializer.begin.bracket.curly.java\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array-initializer.end.bracket.curly.java\\\"}},\\\"name\\\":\\\"meta.array-initializer.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},{\\\"include\\\":\\\"#parens\\\"}]},\\\"assertions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(assert)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.assert.java\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.declaration.assertion.java\\\",\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"keyword.operator.assert.expression-separator.java\\\"},{\\\"include\\\":\\\"#code\\\"}]}]},\\\"class\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\w?[\\\\\\\\w\\\\\\\\s-]*\\\\\\\\b(?:class|(?<!@)interface|enum)\\\\\\\\s+[\\\\\\\\w$]+)\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.class.end.bracket.curly.java\\\"}},\\\"name\\\":\\\"meta.class.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"include\\\":\\\"#generics\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.java\\\"}},\\\"match\\\":\\\"(class|(?<!@)interface|enum)\\\\\\\\s+([\\\\\\\\w$]+)\\\",\\\"name\\\":\\\"meta.class.identifier.java\\\"},{\\\"begin\\\":\\\"extends\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.extends.java\\\"}},\\\"end\\\":\\\"(?={|implements|permits)\\\",\\\"name\\\":\\\"meta.definition.class.inherited.classes.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types-inherited\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"(implements)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.implements.java\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*extends|permits|\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.definition.class.implemented.interfaces.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types-inherited\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"(permits)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.permits.java\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*extends|implements|\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.definition.class.permits.classes.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types-inherited\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.class.begin.bracket.curly.java\\\"}},\\\"contentName\\\":\\\"meta.class.body.java\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-body\\\"}]}]},\\\"class-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-javadoc\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#enums\\\"},{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#generics\\\"},{\\\"include\\\":\\\"#static-initializer\\\"},{\\\"include\\\":\\\"#class-fields-and-methods\\\"},{\\\"include\\\":\\\"#annotations\\\"},{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"include\\\":\\\"#member-variables\\\"},{\\\"include\\\":\\\"#code\\\"}]},\\\"class-fields-and-methods\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\=)\\\",\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"include\\\":\\\"#methods\\\"}]},\\\"code\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#annotations\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#enums\\\"},{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#record\\\"},{\\\"include\\\":\\\"#anonymous-block-and-instance-initializer\\\"},{\\\"include\\\":\\\"#try-catch-finally\\\"},{\\\"include\\\":\\\"#assertions\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#constants-and-special-vars\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#anonymous-classes-and-new\\\"},{\\\"include\\\":\\\"#lambda-expression\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"include\\\":\\\"#method-call\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#variables-local\\\"},{\\\"include\\\":\\\"#objects\\\"},{\\\"include\\\":\\\"#properties\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#all-types\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.java\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.period.java\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.java\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.java\\\"}},\\\"match\\\":\\\"/\\\\\\\\*\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.empty.java\\\"},{\\\"include\\\":\\\"#comments-inline\\\"}]},\\\"comments-inline\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.java\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.java\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.java\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.java\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.java\\\"}]}]},\\\"comments-javadoc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(/\\\\\\\\*\\\\\\\\*)(?!/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.java\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.java\\\"}},\\\"name\\\":\\\"comment.block.javadoc.java\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"@(author|deprecated|return|see|serial|since|version)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.documentation.javadoc.java\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.java\\\"}},\\\"match\\\":\\\"(@param)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.java\\\"}},\\\"match\\\":\\\"(@(?:exception|throws))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.java\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.java\\\"}},\\\"match\\\":\\\"{(@link)\\\\\\\\s+(\\\\\\\\S+)?#([\\\\\\\\w$]+\\\\\\\\s*\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\)).*?}\\\"}]}]},\\\"constants-and-special-vars\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.java\\\"},{\\\"match\\\":\\\"\\\\\\\\bthis\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.this.java\\\"},{\\\"match\\\":\\\"\\\\\\\\bsuper\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.java\\\"}]},\\\"enums\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*([\\\\\\\\w\\\\\\\\s]*)(enum)\\\\\\\\s+(\\\\\\\\w+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#storage-modifiers\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.java\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.enum.java\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.enum.end.bracket.curly.java\\\"}},\\\"name\\\":\\\"meta.enum.java\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(extends)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.extends.java\\\"}},\\\"end\\\":\\\"(?={|\\\\\\\\bimplements\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.definition.class.inherited.classes.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types-inherited\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(implements)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.implements.java\\\"}},\\\"end\\\":\\\"(?={|\\\\\\\\bextends\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.definition.class.implemented.interfaces.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types-inherited\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.enum.begin.bracket.curly.java\\\"}},\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<={)\\\",\\\"end\\\":\\\"(?=;|})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-javadoc\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.enum.java\\\"}},\\\"end\\\":\\\"(,)|(?=;|})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.java\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-javadoc\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.round.java\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.round.java\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.curly.java\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.curly.java\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#class-body\\\"}]}]}]},{\\\"include\\\":\\\"#class-body\\\"}]}]},\\\"function-call\\\":{\\\"begin\\\":\\\"([A-Za-z_$][\\\\\\\\w$]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.java\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.java\\\"}},\\\"name\\\":\\\"meta.function-call.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},\\\"generics\\\":{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.angle.java\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.angle.java\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(extends|super)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.$1.java\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.java\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)([a-zA-Z$_][a-zA-Z0-9$_]*)(?=\\\\\\\\s*<)\\\"},{\\\"include\\\":\\\"#primitive-arrays\\\"},{\\\"match\\\":\\\"[a-zA-Z$_][a-zA-Z0-9$_]*\\\",\\\"name\\\":\\\"storage.type.generic.java\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"storage.type.generic.wildcard.java\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"punctuation.separator.types.java\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.java\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.period.java\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#generics\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bthrow\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.throw.java\\\"},{\\\"match\\\":\\\"\\\\\\\\?|:\\\",\\\"name\\\":\\\"keyword.control.ternary.java\\\"},{\\\"match\\\":\\\"\\\\\\\\b(return|yield|break|case|continue|default|do|while|for|switch|if|else)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.java\\\"},{\\\"match\\\":\\\"\\\\\\\\b(instanceof)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.instanceof.java\\\"},{\\\"match\\\":\\\"(<<|>>>?|~|\\\\\\\\^)\\\",\\\"name\\\":\\\"keyword.operator.bitwise.java\\\"},{\\\"match\\\":\\\"((&|\\\\\\\\^|\\\\\\\\||<<|>>>?)=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.bitwise.java\\\"},{\\\"match\\\":\\\"(===?|!=|<=|>=|<>|<|>)\\\",\\\"name\\\":\\\"keyword.operator.comparison.java\\\"},{\\\"match\\\":\\\"([+*/%-]=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.arithmetic.java\\\"},{\\\"match\\\":\\\"(=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.java\\\"},{\\\"match\\\":\\\"(\\\\\\\\-\\\\\\\\-|\\\\\\\\+\\\\\\\\+)\\\",\\\"name\\\":\\\"keyword.operator.increment-decrement.java\\\"},{\\\"match\\\":\\\"(\\\\\\\\-|\\\\\\\\+|\\\\\\\\*|\\\\\\\\/|%)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.java\\\"},{\\\"match\\\":\\\"(!|&&|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.logical.java\\\"},{\\\"match\\\":\\\"(\\\\\\\\||&)\\\",\\\"name\\\":\\\"keyword.operator.bitwise.java\\\"},{\\\"match\\\":\\\"\\\\\\\\b(const|goto)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.reserved.java\\\"}]},\\\"lambda-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"storage.type.function.arrow.java\\\"}]},\\\"member-variables\\\":{\\\"begin\\\":\\\"(?=private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)\\\",\\\"end\\\":\\\"(?=\\\\\\\\=|;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#primitive-arrays\\\"},{\\\"include\\\":\\\"#object-types\\\"}]},\\\"method-call\\\":{\\\"begin\\\":\\\"(\\\\\\\\.)\\\\\\\\s*([A-Za-z_$][\\\\\\\\w$]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.java\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.java\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.java\\\"}},\\\"name\\\":\\\"meta.method-call.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},\\\"methods\\\":{\\\"begin\\\":\\\"(?!new)(?=[\\\\\\\\w<].*\\\\\\\\s+)(?=([^=/]|/(?!/))+\\\\\\\\()\\\",\\\"end\\\":\\\"(})|(?=;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.method.end.bracket.curly.java\\\"}},\\\"name\\\":\\\"meta.method.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"begin\\\":\\\"(\\\\\\\\w+)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.java\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.java\\\"}},\\\"name\\\":\\\"meta.method.identifier.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"include\\\":\\\"#generics\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\w.*\\\\\\\\s+\\\\\\\\w+\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?=\\\\\\\\s+\\\\\\\\w+\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"meta.method.return-type.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#all-types\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"include\\\":\\\"#throws\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.method.begin.bracket.curly.java\\\"}},\\\"contentName\\\":\\\"meta.method.body.java\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"include\\\":\\\"#comments\\\"}]},\\\"module\\\":{\\\"begin\\\":\\\"((open)\\\\\\\\s)?(module)\\\\\\\\s+(\\\\\\\\w+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.java\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.java\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.module.java\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.module.end.bracket.curly.java\\\"}},\\\"name\\\":\\\"meta.module.java\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.module.begin.bracket.curly.java\\\"}},\\\"contentName\\\":\\\"meta.module.body.java\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#comments-javadoc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(requires|transitive|exports|opens|to|uses|provides|with)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.module.java\\\"}]}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(x|X)((?<!\\\\\\\\.)[0-9a-fA-F]([0-9a-fA-F_]*[0-9a-fA-F])?[Ll]?(?!\\\\\\\\.)|([0-9a-fA-F]([0-9a-fA-F_]*[0-9a-fA-F])?\\\\\\\\.?|([0-9a-fA-F]([0-9a-fA-F_]*[0-9a-fA-F])?)?\\\\\\\\.[0-9a-fA-F]([0-9a-fA-F_]*[0-9a-fA-F])?)[Pp][+-]?[0-9]([0-9_]*[0-9])?[FfDd]?)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.hex.java\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(b|B)[01]([01_]*[01])?[Ll]?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.binary.java\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0[0-7]([0-7_]*[0-7])?[Ll]?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.octal.java\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\b[0-9]([0-9_]*[0-9])?\\\\\\\\.\\\\\\\\B(?!\\\\\\\\.)|\\\\\\\\b[0-9]([0-9_]*[0-9])?\\\\\\\\.([Ee][+-]?[0-9]([0-9_]*[0-9])?)[FfDd]?\\\\\\\\b|\\\\\\\\b[0-9]([0-9_]*[0-9])?\\\\\\\\.([Ee][+-]?[0-9]([0-9_]*[0-9])?)?[FfDd]\\\\\\\\b|\\\\\\\\b[0-9]([0-9_]*[0-9])?\\\\\\\\.([0-9]([0-9_]*[0-9])?)([Ee][+-]?[0-9]([0-9_]*[0-9])?)?[FfDd]?\\\\\\\\b|(?<!\\\\\\\\.)\\\\\\\\B\\\\\\\\.[0-9]([0-9_]*[0-9])?([Ee][+-]?[0-9]([0-9_]*[0-9])?)?[FfDd]?\\\\\\\\b|\\\\\\\\b[0-9]([0-9_]*[0-9])?([Ee][+-]?[0-9]([0-9_]*[0-9])?)[FfDd]?\\\\\\\\b|\\\\\\\\b[0-9]([0-9_]*[0-9])?([Ee][+-]?[0-9]([0-9_]*[0-9])?)?[FfDd]\\\\\\\\b|\\\\\\\\b(0|[1-9]([0-9_]*[0-9])?)(?!\\\\\\\\.)[Ll]?\\\\\\\\b)(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.decimal.java\\\"}]},\\\"object-types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#generics\\\"},{\\\"begin\\\":\\\"\\\\\\\\b((?:[A-Za-z_]\\\\\\\\w*\\\\\\\\s*\\\\\\\\.\\\\\\\\s*)*)([A-Z_]\\\\\\\\w*)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[A-Za-z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"storage.type.java\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.period.java\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.type.object.array.java\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\s*\\\\\\\\[)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#parens\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[A-Za-z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"storage.type.java\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.period.java\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b((?:[A-Za-z_]\\\\\\\\w*\\\\\\\\s*\\\\\\\\.\\\\\\\\s*)*[A-Z_]\\\\\\\\w*)\\\\\\\\s*(?=<)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[A-Za-z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"storage.type.java\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.period.java\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b((?:[A-Za-z_]\\\\\\\\w*\\\\\\\\s*\\\\\\\\.\\\\\\\\s*)*[A-Z_]\\\\\\\\w*)\\\\\\\\b((?=\\\\\\\\s*[A-Za-z$_\\\\\\\\n])|(?=\\\\\\\\s*\\\\\\\\.\\\\\\\\.\\\\\\\\.))\\\"}]},\\\"object-types-inherited\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#generics\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.java\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:[A-Z]\\\\\\\\w*\\\\\\\\s*(\\\\\\\\.)\\\\\\\\s*)*[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.inherited-class.java\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.java\\\"}]},\\\"objects\\\":{\\\"match\\\":\\\"(?<![\\\\\\\\w$])[a-zA-Z_$][\\\\\\\\w$]*(?=\\\\\\\\s*\\\\\\\\.\\\\\\\\s*[\\\\\\\\w$]+)\\\",\\\"name\\\":\\\"variable.other.object.java\\\"},\\\"parameters\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bfinal\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.java\\\"},{\\\"include\\\":\\\"#annotations\\\"},{\\\"include\\\":\\\"#all-types\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.parameter.java\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.java\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.definition.parameters.varargs.java\\\"}]},\\\"parens\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.round.java\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.round.java\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.square.java\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.square.java\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.curly.java\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.curly.java\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"primitive-arrays\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(void|boolean|byte|char|short|int|float|long|double)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.primitive.array.java\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\s*\\\\\\\\[)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#parens\\\"}]}]},\\\"primitive-types\\\":{\\\"match\\\":\\\"\\\\\\\\b(void|boolean|byte|char|short|int|float|long|double)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.primitive.java\\\"},\\\"properties\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.new.java\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)\\\\\\\\s*(new)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.property.java\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)\\\\\\\\s*([a-zA-Z_$][\\\\\\\\w$]*)(?=\\\\\\\\s*\\\\\\\\.\\\\\\\\s*[a-zA-Z_$][\\\\\\\\w$]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.property.java\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)\\\\\\\\s*([a-zA-Z_$][\\\\\\\\w$]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.identifier.java\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)\\\\\\\\s*([0-9][\\\\\\\\w$]*)\\\"}]},\\\"record\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\w?[\\\\\\\\w\\\\\\\\s]*\\\\\\\\b(?:record)\\\\\\\\s+[\\\\\\\\w$]+)\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.class.end.bracket.curly.java\\\"}},\\\"name\\\":\\\"meta.record.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"include\\\":\\\"#generics\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(record)\\\\\\\\s+([\\\\\\\\w$]+)(<[\\\\\\\\w$]+>)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.java\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.record.java\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#generics\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.java\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.java\\\"}},\\\"name\\\":\\\"meta.record.identifier.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"begin\\\":\\\"(implements)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.implements.java\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.definition.class.implemented.interfaces.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types-inherited\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"include\\\":\\\"#record-body\\\"}]},\\\"record-body\\\":{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.class.begin.bracket.curly.java\\\"}},\\\"end\\\":\\\"(?=})\\\",\\\"name\\\":\\\"meta.record.body.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#record-constructor\\\"},{\\\"include\\\":\\\"#class-body\\\"}]},\\\"record-constructor\\\":{\\\"begin\\\":\\\"(?!new)(?=[\\\\\\\\w<].*\\\\\\\\s+)(?=([^\\\\\\\\(=/]|/(?!/))+(?={))\\\",\\\"end\\\":\\\"(})|(?=;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.method.end.bracket.curly.java\\\"}},\\\"name\\\":\\\"meta.method.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"begin\\\":\\\"(\\\\\\\\w+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.java\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*{)\\\",\\\"name\\\":\\\"meta.method.identifier.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.method.begin.bracket.curly.java\\\"}},\\\"contentName\\\":\\\"meta.method.body.java\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"static-initializer\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#anonymous-block-and-instance-initializer\\\"},{\\\"match\\\":\\\"static\\\",\\\"name\\\":\\\"storage.modifier.java\\\"}]},\\\"storage-modifiers\\\":{\\\"match\\\":\\\"\\\\\\\\b(public|private|protected|static|final|native|synchronized|abstract|threadsafe|transient|volatile|default|strictfp|sealed|non-sealed)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.java\\\"},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.java\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.java\\\"}},\\\"name\\\":\\\"string.quoted.triple.java\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\"\\\\\\\")(?!\\\\\\\")|(\\\\\\\\\\\\\\\\.)\\\",\\\"name\\\":\\\"constant.character.escape.java\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.java\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.java\\\"}},\\\"name\\\":\\\"string.quoted.double.java\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.java\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.java\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.java\\\"}},\\\"name\\\":\\\"string.quoted.single.java\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.java\\\"}]}]},\\\"throws\\\":{\\\"begin\\\":\\\"throws\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.java\\\"}},\\\"end\\\":\\\"(?={|;)\\\",\\\"name\\\":\\\"meta.throwables.java\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.java\\\"},{\\\"match\\\":\\\"[a-zA-Z$_][\\\\\\\\.a-zA-Z0-9$_]*\\\",\\\"name\\\":\\\"storage.type.java\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"try-catch-finally\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\btry\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.try.java\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.try.end.bracket.curly.java\\\"}},\\\"name\\\":\\\"meta.try.java\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.try.resources.begin.bracket.round.java\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.try.resources.end.bracket.round.java\\\"}},\\\"name\\\":\\\"meta.try.resources.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.try.begin.bracket.curly.java\\\"}},\\\"contentName\\\":\\\"meta.try.body.java\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(catch)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.catch.java\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.catch.end.bracket.curly.java\\\"}},\\\"name\\\":\\\"meta.catch.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.java\\\"}},\\\"contentName\\\":\\\"meta.catch.parameters.java\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.java\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"begin\\\":\\\"[a-zA-Z$_][\\\\\\\\.a-zA-Z0-9$_]*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.java\\\"}},\\\"end\\\":\\\"(\\\\\\\\|)|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.catch.separator.java\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.parameter.java\\\"}},\\\"match\\\":\\\"\\\\\\\\w+\\\"}]}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.catch.begin.bracket.curly.java\\\"}},\\\"contentName\\\":\\\"meta.catch.body.java\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\bfinally\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.finally.java\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.finally.end.bracket.curly.java\\\"}},\\\"name\\\":\\\"meta.finally.java\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.finally.begin.bracket.curly.java\\\"}},\\\"contentName\\\":\\\"meta.finally.body.java\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]}]},\\\"variables\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\b((void|boolean|byte|char|short|int|float|long|double)|(?>(\\\\\\\\w+\\\\\\\\.)*[A-Z_]+\\\\\\\\w*))\\\\\\\\b\\\\\\\\s*(<[\\\\\\\\w<>,\\\\\\\\.?\\\\\\\\s\\\\\\\\[\\\\\\\\]]*>)?\\\\\\\\s*((\\\\\\\\[\\\\\\\\])*)?\\\\\\\\s+[A-Za-z_$][\\\\\\\\w$]*([\\\\\\\\w\\\\\\\\[\\\\\\\\],$][\\\\\\\\w\\\\\\\\[\\\\\\\\],\\\\\\\\s]*)?\\\\\\\\s*(=|:|;))\\\",\\\"end\\\":\\\"(?=\\\\\\\\=|:|;)\\\",\\\"name\\\":\\\"meta.definition.variable.java\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.definition.java\\\"}},\\\"match\\\":\\\"([A-Za-z$_][\\\\\\\\w$]*)(?=\\\\\\\\s*(\\\\\\\\[\\\\\\\\])*\\\\\\\\s*(;|:|=|,))\\\"},{\\\"include\\\":\\\"#all-types\\\"},{\\\"include\\\":\\\"#code\\\"}]},\\\"variables-local\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\b(var)\\\\\\\\b\\\\\\\\s+[A-Za-z_$][\\\\\\\\w$]*\\\\\\\\s*(=|:|;))\\\",\\\"end\\\":\\\"(?=\\\\\\\\=|:|;)\\\",\\\"name\\\":\\\"meta.definition.variable.local.java\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bvar\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.local.java\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.definition.java\\\"}},\\\"match\\\":\\\"([A-Za-z$_][\\\\\\\\w$]*)(?=\\\\\\\\s*(\\\\\\\\[\\\\\\\\])*\\\\\\\\s*(=|:|;))\\\"},{\\\"include\\\":\\\"#code\\\"}]}},\\\"scopeName\\\":\\\"source.java\\\"}\"))\n\nexport default [\nlang\n]\n", "import java from './java.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"XML\\\",\\\"name\\\":\\\"xml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<\\\\\\\\?)\\\\\\\\s*([-_a-zA-Z0-9]+)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.xml\\\"}},\\\"end\\\":\\\"(\\\\\\\\?>)\\\",\\\"name\\\":\\\"meta.tag.preprocessor.xml\\\",\\\"patterns\\\":[{\\\"match\\\":\\\" ([a-zA-Z-]+)\\\",\\\"name\\\":\\\"entity.other.attribute-name.xml\\\"},{\\\"include\\\":\\\"#doublequotedString\\\"},{\\\"include\\\":\\\"#singlequotedString\\\"}]},{\\\"begin\\\":\\\"(<!)(DOCTYPE)\\\\\\\\s+([:a-zA-Z_][:a-zA-Z0-9_.-]*)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.doctype.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.language.documentroot.xml\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(>)\\\",\\\"name\\\":\\\"meta.tag.sgml.doctype.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internalSubset\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(<)((?:([-_a-zA-Z0-9]+)(:))?([-_a-zA-Z0-9:]+))(?=(\\\\\\\\s[^>]*)?></\\\\\\\\2>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.xml\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.xml\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.tag.localname.xml\\\"}},\\\"end\\\":\\\"(>)(</)((?:([-_a-zA-Z0-9]+)(:))?([-_a-zA-Z0-9:]+))(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.xml\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.xml\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.xml\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.tag.localname.xml\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"}},\\\"name\\\":\\\"meta.tag.no-content.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tagStuff\\\"}]},{\\\"begin\\\":\\\"(</?)(?:([-\\\\\\\\w\\\\\\\\.]+)((:)))?([-\\\\\\\\w\\\\\\\\.:]+)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.xml\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.xml\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.tag.localname.xml\\\"}},\\\"end\\\":\\\"(/?>)\\\",\\\"name\\\":\\\"meta.tag.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tagStuff\\\"}]},{\\\"include\\\":\\\"#entity\\\"},{\\\"include\\\":\\\"#bare-ampersand\\\"},{\\\"begin\\\":\\\"<%@\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.xml\\\"}},\\\"end\\\":\\\"%>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.xml\\\"}},\\\"name\\\":\\\"source.java-props.embedded.xml\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"page|include|taglib\\\",\\\"name\\\":\\\"keyword.other.page-props.xml\\\"}]},{\\\"begin\\\":\\\"<%[!=]?(?!--)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.xml\\\"}},\\\"end\\\":\\\"(?!--)%>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.xml\\\"}},\\\"name\\\":\\\"source.java.embedded.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.java\\\"}]},{\\\"begin\\\":\\\"<!\\\\\\\\[CDATA\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.xml\\\"}},\\\"end\\\":\\\"]]>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.xml\\\"}},\\\"name\\\":\\\"string.unquoted.cdata.xml\\\"}],\\\"repository\\\":{\\\"EntityDecl\\\":{\\\"begin\\\":\\\"(<!)(ENTITY)\\\\\\\\s+(%\\\\\\\\s+)?([:a-zA-Z_][:a-zA-Z0-9_.-]*)(\\\\\\\\s+(?:SYSTEM|PUBLIC)\\\\\\\\s+)?\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.entity.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.xml\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.language.entity.xml\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.entitytype.xml\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#doublequotedString\\\"},{\\\"include\\\":\\\"#singlequotedString\\\"}]},\\\"bare-ampersand\\\":{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"invalid.illegal.bad-ampersand.xml\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"<%--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.xml\\\"},\\\"end\\\":\\\"--%>\\\",\\\"name\\\":\\\"comment.block.xml\\\"}},{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.xml\\\"}},\\\"end\\\":\\\"-->\\\",\\\"name\\\":\\\"comment.block.xml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"--(?!>)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.xml\\\"}}}]}]},\\\"doublequotedString\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.xml\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.xml\\\"}},\\\"name\\\":\\\"string.quoted.double.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entity\\\"},{\\\"include\\\":\\\"#bare-ampersand\\\"}]},\\\"entity\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.constant.xml\\\"}},\\\"match\\\":\\\"(&)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.xml\\\"},\\\"internalSubset\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.xml\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"name\\\":\\\"meta.internalsubset.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#EntityDecl\\\"},{\\\"include\\\":\\\"#parameterEntity\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"parameterEntity\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.constant.xml\\\"}},\\\"match\\\":\\\"(%)([:a-zA-Z_][:a-zA-Z0-9_.-]*)(;)\\\",\\\"name\\\":\\\"constant.character.parameter-entity.xml\\\"},\\\"singlequotedString\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.xml\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.xml\\\"}},\\\"name\\\":\\\"string.quoted.single.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entity\\\"},{\\\"include\\\":\\\"#bare-ampersand\\\"}]},\\\"tagStuff\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.namespace.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.xml\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.other.attribute-name.localname.xml\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\s+)(?:([-\\\\\\\\w.]+)((:)))?([-\\\\\\\\w.:]+)\\\\\\\\s*=\\\"},{\\\"include\\\":\\\"#doublequotedString\\\"},{\\\"include\\\":\\\"#singlequotedString\\\"}]}},\\\"scopeName\\\":\\\"text.xml\\\",\\\"embeddedLangs\\\":[\\\"java\\\"]}\"))\n\nexport default [\n...java,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"JSON\\\",\\\"name\\\":\\\"json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}],\\\"repository\\\":{\\\"array\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.json\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.json\\\"}},\\\"name\\\":\\\"meta.structure.array.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.array.json\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s\\\\\\\\]]\\\",\\\"name\\\":\\\"invalid.illegal.expected-array-separator.json\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.json\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.json\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json\\\"}},\\\"match\\\":\\\"(//).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"}]},\\\"constant\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.json\\\"},\\\"number\\\":{\\\"match\\\":\\\"-?(?:0|[1-9]\\\\\\\\d*)(?:(?:\\\\\\\\.\\\\\\\\d+)?(?:[eE][+-]?\\\\\\\\d+)?)?\\\",\\\"name\\\":\\\"constant.numeric.json\\\"},\\\"object\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.begin.json\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.end.json\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.json\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"the JSON object key\\\",\\\"include\\\":\\\"#objectkey\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.key-value.json\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.pair.json\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.value.json\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"the JSON object value\\\",\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s,]\\\",\\\"name\\\":\\\"invalid.illegal.expected-dictionary-separator.json\\\"}]},{\\\"match\\\":\\\"[^\\\\\\\\s\\\\\\\\}]\\\",\\\"name\\\":\\\"invalid.illegal.expected-dictionary-separator.json\\\"}]},\\\"objectkey\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.support.type.property-name.begin.json\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.support.type.property-name.end.json\\\"}},\\\"name\\\":\\\"string.json support.type.property-name.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringcontent\\\"}]},\\\"string\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.json\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.json\\\"}},\\\"name\\\":\\\"string.quoted.double.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringcontent\\\"}]},\\\"stringcontent\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[\\\\\\\"\\\\\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})\\\",\\\"name\\\":\\\"constant.character.escape.json\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.json\\\"}]},\\\"value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"include\\\":\\\"#comments\\\"}]}},\\\"scopeName\\\":\\\"source.json\\\"}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\nimport xml from './xml.mjs'\nimport css from './css.mjs'\nimport javascript from './javascript.mjs'\nimport json from './json.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"APL\\\",\\\"fileTypes\\\":[\\\"apl\\\",\\\"apla\\\",\\\"aplc\\\",\\\"aplf\\\",\\\"apli\\\",\\\"apln\\\",\\\"aplo\\\",\\\"dyalog\\\",\\\"dyapp\\\",\\\"mipage\\\"],\\\"firstLineMatch\\\":\\\"[\u2336-\u237A]|^\\\\\\\\#!.*(?:\\\\\\\\s|\\\\\\\\/|(?<=!)\\\\\\\\b)(?:gnu[-._]?apl|aplx?|dyalog)(?:$|\\\\\\\\s)|(?i:-\\\\\\\\*-(?:\\\\\\\\s*(?=[^:;\\\\\\\\s]+\\\\\\\\s*-\\\\\\\\*-)|(?:.*?[;\\\\\\\\s]|(?<=-\\\\\\\\*-))mode\\\\\\\\s*:\\\\\\\\s*)apl(?=[\\\\\\\\s;]|(?<![-*])-\\\\\\\\*-).*?-\\\\\\\\*-|(?:(?:\\\\\\\\s|^)vi(?:m[<=>]?\\\\\\\\d+|m)?|\\\\\\\\sex)(?=:(?=\\\\\\\\s*set?\\\\\\\\s[^\\\\\\\\n:]+:)|:(?!\\\\\\\\s*set?\\\\\\\\s))(?:(?:\\\\\\\\s|\\\\\\\\s*:\\\\\\\\s*)\\\\\\\\w*(?:\\\\\\\\s*=(?:[^\\\\\\\\n\\\\\\\\\\\\\\\\\\\\\\\\s]|\\\\\\\\\\\\\\\\.)*)?)*[\\\\\\\\s:](?:filetype|ft|syntax)\\\\\\\\s*=apl(?=\\\\\\\\s|:|$))\\\",\\\"foldingStartMarker\\\":\\\"{\\\",\\\"foldingStopMarker\\\":\\\"}\\\",\\\"name\\\":\\\"apl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\A#!.*$\\\",\\\"name\\\":\\\"comment.line.shebang.apl\\\"},{\\\"include\\\":\\\"#heredocs\\\"},{\\\"include\\\":\\\"#main\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((\\\\\\\\))OFF|(\\\\\\\\])NEXTFILE)\\\\\\\\b(.*)$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.command.eof.apl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.command.apl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.command.apl\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]}},\\\"contentName\\\":\\\"text.embedded.apl\\\",\\\"end\\\":\\\"(?=N)A\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.round.bracket.begin.apl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.round.bracket.end.apl\\\"}},\\\"name\\\":\\\"meta.round.bracketed.group.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.square.bracket.begin.apl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.square.bracket.end.apl\\\"}},\\\"name\\\":\\\"meta.square.bracketed.group.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((\\\\\\\\))\\\\\\\\S+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.command.apl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.command.apl\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.system.command.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#command-arguments\\\"},{\\\"include\\\":\\\"#command-switches\\\"},{\\\"include\\\":\\\"#main\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((\\\\\\\\])\\\\\\\\S+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.command.apl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.command.apl\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.user.command.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#command-arguments\\\"},{\\\"include\\\":\\\"#command-switches\\\"},{\\\"include\\\":\\\"#main\\\"}]}],\\\"repository\\\":{\\\"class\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\s|^)((:)Class)\\\\\\\\s+('[^']*'?|[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*)\\\\\\\\s*((:)\\\\\\\\s*(?:('[^']*'?|[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*)\\\\\\\\s*)?)?(.*?)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.class.apl\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.class.apl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.class.apl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.other.inherited-class.apl\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.apl\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"entity.other.class.interfaces.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csv\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\s|^)((:)EndClass)(?=\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.class.apl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.class.apl\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\s|^)(:)Field(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.field.apl\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.field.apl\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\u2190.*)?(?:$|(?=\u235D))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.initial-value.apl\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}},\\\"name\\\":\\\"meta.field.apl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\s|^)Public(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"storage.modifier.access.public.apl\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s|^)Private(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"storage.modifier.access.private.apl\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s|^)Shared(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"storage.modifier.shared.apl\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s|^)Instance(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"storage.modifier.instance.apl\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s|^)ReadOnly(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"storage.modifier.readonly.apl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"}]}},\\\"match\\\":\\\"('[^']*'?|[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*)\\\",\\\"name\\\":\\\"entity.name.type.apl\\\"}]},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"command-arguments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?=\\\\\\\\S)\\\",\\\"end\\\":\\\"\\\\\\\\b(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"variable.parameter.argument.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}]},\\\"command-switches\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\s)(-)([A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*)(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.delimiter.switch.apl\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.switch.apl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.assignment.switch.apl\\\"}},\\\"end\\\":\\\"\\\\\\\\b(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"variable.parameter.switch.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.delimiter.switch.apl\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.switch.apl\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\s)(-)([A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*)(?!=)\\\",\\\"name\\\":\\\"variable.parameter.switch.apl\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\u235D\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.apl\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.apl\\\"}]},\\\"csv\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.apl\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"definition\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*?(\u2207)(?:\\\\\\\\s*(?:([A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*)|\\\\\\\\s*((\\\\\\\\{)(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)*(\\\\\\\\})|(\\\\\\\\()(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)*(\\\\\\\\))|(\\\\\\\\(\\\\\\\\s*\\\\\\\\{)(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)*(\\\\\\\\}\\\\\\\\s*\\\\\\\\))|(\\\\\\\\{\\\\\\\\s*\\\\\\\\()(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)*(\\\\\\\\)\\\\\\\\s*\\\\\\\\}))\\\\\\\\s*)\\\\\\\\s*(\u2190))?\\\\\\\\s*(?:(?:([A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*)\\\\\\\\s*((\\\\\\\\[)\\\\\\\\s*(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*(.*?)|([^\\\\\\\\]]*))\\\\\\\\s*(\\\\\\\\]))?\\\\\\\\s*?((?<=\\\\\\\\s|\\\\\\\\])[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*|(\\\\\\\\()(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)*(\\\\\\\\)))\\\\\\\\s*(?=;|$))|(?:([A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s+)|((\\\\\\\\{)(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)*(\\\\\\\\})|(\\\\\\\\(\\\\\\\\s*\\\\\\\\{)(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)*(\\\\\\\\}\\\\\\\\s*\\\\\\\\))|(\\\\\\\\{\\\\\\\\s*\\\\\\\\()(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)*(\\\\\\\\)\\\\\\\\s*\\\\\\\\})))?\\\\\\\\s*(?:([A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*)\\\\\\\\s*((\\\\\\\\[)\\\\\\\\s*(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*(.*?)|([^\\\\\\\\]]*))\\\\\\\\s*(\\\\\\\\]))?|((\\\\\\\\()(\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*)?\\\\\\\\s*([A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*)\\\\\\\\s*?((\\\\\\\\[)\\\\\\\\s*(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*(.*?)|([^\\\\\\\\]]*))\\\\\\\\s*(\\\\\\\\]))?\\\\\\\\s*([A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)?(\\\\\\\\))))\\\\\\\\s*((?<=\\\\\\\\s|\\\\\\\\])[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*|\\\\\\\\s*(\\\\\\\\()(?:\\\\\\\\s*[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)*(\\\\\\\\)))?)\\\\\\\\s*([^;]+)?(((?>\\\\\\\\s*;(?:\\\\\\\\s*[\u2395A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)+)+)|([^\u235D]+))?\\\\\\\\s*(\u235D.*)?$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.function.definition.apl\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nabla.apl\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.function.return-value.apl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.function.return-value.shy.apl\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.return-value.begin.apl\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.return-value.end.apl\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.return-value.begin.apl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.return-value.end.apl\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.return-value.begin.apl\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.return-value.end.apl\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.definition.return-value.begin.apl\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.definition.return-value.end.apl\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.operator.assignment.apl\\\"},\\\"13\\\":{\\\"name\\\":\\\"entity.function.name.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#embolden\\\"}]},\\\"14\\\":{\\\"name\\\":\\\"entity.function.axis.apl\\\"},\\\"15\\\":{\\\"name\\\":\\\"punctuation.definition.axis.begin.apl\\\"},\\\"16\\\":{\\\"name\\\":\\\"invalid.illegal.extra-characters.apl\\\"},\\\"17\\\":{\\\"name\\\":\\\"invalid.illegal.apl\\\"},\\\"18\\\":{\\\"name\\\":\\\"punctuation.definition.axis.end.apl\\\"},\\\"19\\\":{\\\"name\\\":\\\"entity.function.arguments.right.apl\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.apl\\\"},\\\"21\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.apl\\\"},\\\"22\\\":{\\\"name\\\":\\\"entity.function.arguments.left.apl\\\"},\\\"23\\\":{\\\"name\\\":\\\"entity.function.arguments.left.optional.apl\\\"},\\\"24\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.apl\\\"},\\\"25\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.apl\\\"},\\\"26\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.apl\\\"},\\\"27\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.apl\\\"},\\\"28\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.apl\\\"},\\\"29\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.apl\\\"},\\\"30\\\":{\\\"name\\\":\\\"entity.function.name.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#embolden\\\"}]},\\\"31\\\":{\\\"name\\\":\\\"entity.function.axis.apl\\\"},\\\"32\\\":{\\\"name\\\":\\\"punctuation.definition.axis.begin.apl\\\"},\\\"33\\\":{\\\"name\\\":\\\"invalid.illegal.extra-characters.apl\\\"},\\\"34\\\":{\\\"name\\\":\\\"invalid.illegal.apl\\\"},\\\"35\\\":{\\\"name\\\":\\\"punctuation.definition.axis.end.apl\\\"},\\\"36\\\":{\\\"name\\\":\\\"entity.function.operands.apl\\\"},\\\"37\\\":{\\\"name\\\":\\\"punctuation.definition.operands.begin.apl\\\"},\\\"38\\\":{\\\"name\\\":\\\"entity.function.operands.left.apl\\\"},\\\"39\\\":{\\\"name\\\":\\\"entity.function.name.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#embolden\\\"}]},\\\"40\\\":{\\\"name\\\":\\\"entity.function.axis.apl\\\"},\\\"41\\\":{\\\"name\\\":\\\"punctuation.definition.axis.begin.apl\\\"},\\\"42\\\":{\\\"name\\\":\\\"invalid.illegal.extra-characters.apl\\\"},\\\"43\\\":{\\\"name\\\":\\\"invalid.illegal.apl\\\"},\\\"44\\\":{\\\"name\\\":\\\"punctuation.definition.axis.end.apl\\\"},\\\"45\\\":{\\\"name\\\":\\\"entity.function.operands.right.apl\\\"},\\\"46\\\":{\\\"name\\\":\\\"punctuation.definition.operands.end.apl\\\"},\\\"47\\\":{\\\"name\\\":\\\"entity.function.arguments.right.apl\\\"},\\\"48\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.apl\\\"},\\\"49\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.apl\\\"},\\\"50\\\":{\\\"name\\\":\\\"invalid.illegal.arguments.right.apl\\\"},\\\"51\\\":{\\\"name\\\":\\\"entity.function.local-variables.apl\\\"},\\\"52\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.separator.apl\\\"}]},\\\"53\\\":{\\\"name\\\":\\\"invalid.illegal.local-variables.apl\\\"},\\\"54\\\":{\\\"name\\\":\\\"comment.line.apl\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*?(?:(\u2207)|(\u236B))\\\\\\\\s*?(\u235D.*?)?$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nabla.apl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.lock.apl\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.line.apl\\\"}},\\\"name\\\":\\\"meta.function.apl\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.function.local-variables.apl\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.separator.apl\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\s*((?>;(?:\\\\\\\\s*[\u2395A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\\\\\\s*)+)+)\\\",\\\"name\\\":\\\"entity.function.definition.apl\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"embedded-apl\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(<(\\\\\\\\?|%)(?:apl(?=\\\\\\\\s+)|=))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.apl\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\s)(\\\\\\\\2>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.apl\\\"}},\\\"name\\\":\\\"meta.embedded.block.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}]},\\\"embolden\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"markup.bold.identifier.apl\\\"}]},\\\"heredocs\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^.*?\u2395INP\\\\\\\\s+('|\\\\\\\")((?i).*?HTML?.*?|END-OF-\u2395INP)\\\\\\\\1.*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}},\\\"contentName\\\":\\\"text.embedded.html.basic\\\",\\\"end\\\":\\\"^.*?\\\\\\\\2.*?$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.other.apl\\\"}},\\\"name\\\":\\\"meta.heredoc.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"#embedded-apl\\\"}]},{\\\"begin\\\":\\\"^.*?\u2395INP\\\\\\\\s+('|\\\\\\\")((?i).*?(?:XML|XSLT|SVG|RSS).*?)\\\\\\\\1.*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}},\\\"contentName\\\":\\\"text.embedded.xml\\\",\\\"end\\\":\\\"^.*?\\\\\\\\2.*?$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.other.apl\\\"}},\\\"name\\\":\\\"meta.heredoc.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"},{\\\"include\\\":\\\"#embedded-apl\\\"}]},{\\\"begin\\\":\\\"^.*?\u2395INP\\\\\\\\s+('|\\\\\\\")((?i).*?(?:CSS|stylesheet).*?)\\\\\\\\1.*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}},\\\"contentName\\\":\\\"source.embedded.css\\\",\\\"end\\\":\\\"^.*?\\\\\\\\2.*?$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.other.apl\\\"}},\\\"name\\\":\\\"meta.heredoc.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"},{\\\"include\\\":\\\"#embedded-apl\\\"}]},{\\\"begin\\\":\\\"^.*?\u2395INP\\\\\\\\s+('|\\\\\\\")((?i).*?(?:JS(?!ON)|(?:ECMA|J|Java).?Script).*?)\\\\\\\\1.*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}},\\\"contentName\\\":\\\"source.embedded.js\\\",\\\"end\\\":\\\"^.*?\\\\\\\\2.*?$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.other.apl\\\"}},\\\"name\\\":\\\"meta.heredoc.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"},{\\\"include\\\":\\\"#embedded-apl\\\"}]},{\\\"begin\\\":\\\"^.*?\u2395INP\\\\\\\\s+('|\\\\\\\")((?i).*?(?:JSON).*?)\\\\\\\\1.*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}},\\\"contentName\\\":\\\"source.embedded.json\\\",\\\"end\\\":\\\"^.*?\\\\\\\\2.*?$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.other.apl\\\"}},\\\"name\\\":\\\"meta.heredoc.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json\\\"},{\\\"include\\\":\\\"#embedded-apl\\\"}]},{\\\"begin\\\":\\\"^.*?\u2395INP\\\\\\\\s+('|\\\\\\\")(?i)((?:Raw|Plain)?\\\\\\\\s*Te?xt)\\\\\\\\1.*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}},\\\"contentName\\\":\\\"text.embedded.plain\\\",\\\"end\\\":\\\"^.*?\\\\\\\\2.*?$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.other.apl\\\"}},\\\"name\\\":\\\"meta.heredoc.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#embedded-apl\\\"}]},{\\\"begin\\\":\\\"^.*?\u2395INP\\\\\\\\s+('|\\\\\\\")(.*?)\\\\\\\\1.*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}},\\\"end\\\":\\\"^.*?\\\\\\\\2.*?$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.other.apl\\\"}},\\\"name\\\":\\\"meta.heredoc.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"label\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.label.name.apl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.label.end.apl\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*([A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*)(:)\\\",\\\"name\\\":\\\"meta.label.apl\\\"}]},\\\"lambda\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.lambda.begin.apl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.lambda.end.apl\\\"}},\\\"name\\\":\\\"meta.lambda.function.apl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"},{\\\"include\\\":\\\"#lambda-variables\\\"}]},\\\"lambda-variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\u237A\u237A\\\",\\\"name\\\":\\\"constant.language.lambda.operands.left.apl\\\"},{\\\"match\\\":\\\"\u2375\u2375\\\",\\\"name\\\":\\\"constant.language.lambda.operands.right.apl\\\"},{\\\"match\\\":\\\"[\u237A\u2376]\\\",\\\"name\\\":\\\"constant.language.lambda.arguments.left.apl\\\"},{\\\"match\\\":\\\"[\u2375\u2379]\\\",\\\"name\\\":\\\"constant.language.lambda.arguments.right.apl\\\"},{\\\"match\\\":\\\"\u03C7\\\",\\\"name\\\":\\\"constant.language.lambda.arguments.axis.apl\\\"},{\\\"match\\\":\\\"\u2207\u2207\\\",\\\"name\\\":\\\"constant.language.lambda.operands.self.operator.apl\\\"},{\\\"match\\\":\\\"\u2207\\\",\\\"name\\\":\\\"constant.language.lambda.operands.self.function.apl\\\"},{\\\"match\\\":\\\"\u03BB\\\",\\\"name\\\":\\\"constant.language.lambda.symbol.apl\\\"}]},\\\"main\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#definition\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#label\\\"},{\\\"include\\\":\\\"#sck\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#lambda\\\"},{\\\"include\\\":\\\"#sysvars\\\"},{\\\"include\\\":\\\"#symbols\\\"},{\\\"include\\\":\\\"#name\\\"}]},\\\"name\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF][A-Z_a-z\u00C0-\u00D6\u00D8-\u00DD\u00DF\u00E0-\u00F6\u00F8-\u00FC\u00FE\u2206\u2359\u24B6-\u24CF\u00AF0-9]*\\\",\\\"name\\\":\\\"variable.other.readwrite.apl\\\"}]},\\\"number\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\u00AF?[0-9][\u00AF0-9A-Za-z]*(?:\\\\\\\\.[\u00AF0-9Ee][\u00AF0-9A-Za-z]*)*|\u00AF?\\\\\\\\.[0-9Ee][\u00AF0-9A-Za-z]*\\\",\\\"name\\\":\\\"constant.numeric.apl\\\"}]},\\\"sck\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.sck.begin.apl\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\s|^)(:)[A-Za-z]+\\\",\\\"name\\\":\\\"keyword.control.sck.apl\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.apl\\\"}},\\\"end\\\":\\\"'|$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.apl\\\"}},\\\"name\\\":\\\"string.quoted.single.apl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[^']*[^'\\\\\\\\n\\\\\\\\r\\\\\\\\\\\\\\\\]$\\\",\\\"name\\\":\\\"invalid.illegal.string.apl\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.apl\\\"}},\\\"end\\\":\\\"\\\\\\\"|$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.apl\\\"}},\\\"name\\\":\\\"string.quoted.double.apl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[^\\\\\\\"]*[^\\\\\\\"\\\\\\\\n\\\\\\\\r\\\\\\\\\\\\\\\\]$\\\",\\\"name\\\":\\\"invalid.illegal.string.apl\\\"}]}]},\\\"symbols\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\s)\u2190(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"keyword.spaced.operator.assignment.apl\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s)\u2192(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"keyword.spaced.control.goto.apl\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s)\u2261(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"keyword.spaced.operator.identical.apl\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s)\u2262(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"keyword.spaced.operator.not-identical.apl\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.plus.apl\\\"},{\\\"match\\\":\\\"[-\u2212]\\\",\\\"name\\\":\\\"keyword.operator.minus.apl\\\"},{\\\"match\\\":\\\"\u00D7\\\",\\\"name\\\":\\\"keyword.operator.times.apl\\\"},{\\\"match\\\":\\\"\u00F7\\\",\\\"name\\\":\\\"keyword.operator.divide.apl\\\"},{\\\"match\\\":\\\"\u230A\\\",\\\"name\\\":\\\"keyword.operator.floor.apl\\\"},{\\\"match\\\":\\\"\u2308\\\",\\\"name\\\":\\\"keyword.operator.ceiling.apl\\\"},{\\\"match\\\":\\\"[\u2223|]\\\",\\\"name\\\":\\\"keyword.operator.absolute.apl\\\"},{\\\"match\\\":\\\"[\u22C6*]\\\",\\\"name\\\":\\\"keyword.operator.exponent.apl\\\"},{\\\"match\\\":\\\"\u235F\\\",\\\"name\\\":\\\"keyword.operator.logarithm.apl\\\"},{\\\"match\\\":\\\"\u25CB\\\",\\\"name\\\":\\\"keyword.operator.circle.apl\\\"},{\\\"match\\\":\\\"!\\\",\\\"name\\\":\\\"keyword.operator.factorial.apl\\\"},{\\\"match\\\":\\\"\u2227\\\",\\\"name\\\":\\\"keyword.operator.and.apl\\\"},{\\\"match\\\":\\\"\u2228\\\",\\\"name\\\":\\\"keyword.operator.or.apl\\\"},{\\\"match\\\":\\\"\u2372\\\",\\\"name\\\":\\\"keyword.operator.nand.apl\\\"},{\\\"match\\\":\\\"\u2371\\\",\\\"name\\\":\\\"keyword.operator.nor.apl\\\"},{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"keyword.operator.less.apl\\\"},{\\\"match\\\":\\\"\u2264\\\",\\\"name\\\":\\\"keyword.operator.less-or-equal.apl\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.equal.apl\\\"},{\\\"match\\\":\\\"\u2265\\\",\\\"name\\\":\\\"keyword.operator.greater-or-equal.apl\\\"},{\\\"match\\\":\\\">\\\",\\\"name\\\":\\\"keyword.operator.greater.apl\\\"},{\\\"match\\\":\\\"\u2260\\\",\\\"name\\\":\\\"keyword.operator.not-equal.apl\\\"},{\\\"match\\\":\\\"[\u223C~]\\\",\\\"name\\\":\\\"keyword.operator.tilde.apl\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.random.apl\\\"},{\\\"match\\\":\\\"[\u220A\u2208]\\\",\\\"name\\\":\\\"keyword.operator.member-of.apl\\\"},{\\\"match\\\":\\\"\u2377\\\",\\\"name\\\":\\\"keyword.operator.find.apl\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"keyword.operator.comma.apl\\\"},{\\\"match\\\":\\\"\u236A\\\",\\\"name\\\":\\\"keyword.operator.comma-bar.apl\\\"},{\\\"match\\\":\\\"\u2337\\\",\\\"name\\\":\\\"keyword.operator.squad.apl\\\"},{\\\"match\\\":\\\"\u2373\\\",\\\"name\\\":\\\"keyword.operator.iota.apl\\\"},{\\\"match\\\":\\\"\u2374\\\",\\\"name\\\":\\\"keyword.operator.rho.apl\\\"},{\\\"match\\\":\\\"\u2191\\\",\\\"name\\\":\\\"keyword.operator.take.apl\\\"},{\\\"match\\\":\\\"\u2193\\\",\\\"name\\\":\\\"keyword.operator.drop.apl\\\"},{\\\"match\\\":\\\"\u22A3\\\",\\\"name\\\":\\\"keyword.operator.left.apl\\\"},{\\\"match\\\":\\\"\u22A2\\\",\\\"name\\\":\\\"keyword.operator.right.apl\\\"},{\\\"match\\\":\\\"\u22A4\\\",\\\"name\\\":\\\"keyword.operator.encode.apl\\\"},{\\\"match\\\":\\\"\u22A5\\\",\\\"name\\\":\\\"keyword.operator.decode.apl\\\"},{\\\"match\\\":\\\"\\\\\\\\/\\\",\\\"name\\\":\\\"keyword.operator.slash.apl\\\"},{\\\"match\\\":\\\"\u233F\\\",\\\"name\\\":\\\"keyword.operator.slash-bar.apl\\\"},{\\\"match\\\":\\\"\\\\\\\\x5C\\\",\\\"name\\\":\\\"keyword.operator.backslash.apl\\\"},{\\\"match\\\":\\\"\u2340\\\",\\\"name\\\":\\\"keyword.operator.backslash-bar.apl\\\"},{\\\"match\\\":\\\"\u233D\\\",\\\"name\\\":\\\"keyword.operator.rotate-last.apl\\\"},{\\\"match\\\":\\\"\u2296\\\",\\\"name\\\":\\\"keyword.operator.rotate-first.apl\\\"},{\\\"match\\\":\\\"\u2349\\\",\\\"name\\\":\\\"keyword.operator.transpose.apl\\\"},{\\\"match\\\":\\\"\u234B\\\",\\\"name\\\":\\\"keyword.operator.grade-up.apl\\\"},{\\\"match\\\":\\\"\u2352\\\",\\\"name\\\":\\\"keyword.operator.grade-down.apl\\\"},{\\\"match\\\":\\\"\u2339\\\",\\\"name\\\":\\\"keyword.operator.quad-divide.apl\\\"},{\\\"match\\\":\\\"\u2261\\\",\\\"name\\\":\\\"keyword.operator.identical.apl\\\"},{\\\"match\\\":\\\"\u2262\\\",\\\"name\\\":\\\"keyword.operator.not-identical.apl\\\"},{\\\"match\\\":\\\"\u2282\\\",\\\"name\\\":\\\"keyword.operator.enclose.apl\\\"},{\\\"match\\\":\\\"\u2283\\\",\\\"name\\\":\\\"keyword.operator.pick.apl\\\"},{\\\"match\\\":\\\"\u2229\\\",\\\"name\\\":\\\"keyword.operator.intersection.apl\\\"},{\\\"match\\\":\\\"\u222A\\\",\\\"name\\\":\\\"keyword.operator.union.apl\\\"},{\\\"match\\\":\\\"\u234E\\\",\\\"name\\\":\\\"keyword.operator.hydrant.apl\\\"},{\\\"match\\\":\\\"\u2355\\\",\\\"name\\\":\\\"keyword.operator.thorn.apl\\\"},{\\\"match\\\":\\\"\u2286\\\",\\\"name\\\":\\\"keyword.operator.underbar-shoe-left.apl\\\"},{\\\"match\\\":\\\"\u2378\\\",\\\"name\\\":\\\"keyword.operator.underbar-iota.apl\\\"},{\\\"match\\\":\\\"\u00A8\\\",\\\"name\\\":\\\"keyword.operator.each.apl\\\"},{\\\"match\\\":\\\"\u2364\\\",\\\"name\\\":\\\"keyword.operator.rank.apl\\\"},{\\\"match\\\":\\\"\u2338\\\",\\\"name\\\":\\\"keyword.operator.quad-equal.apl\\\"},{\\\"match\\\":\\\"\u2368\\\",\\\"name\\\":\\\"keyword.operator.commute.apl\\\"},{\\\"match\\\":\\\"\u2363\\\",\\\"name\\\":\\\"keyword.operator.power.apl\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.dot.apl\\\"},{\\\"match\\\":\\\"\u2218\\\",\\\"name\\\":\\\"keyword.operator.jot.apl\\\"},{\\\"match\\\":\\\"\u2360\\\",\\\"name\\\":\\\"keyword.operator.quad-colon.apl\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"keyword.operator.ampersand.apl\\\"},{\\\"match\\\":\\\"\u2336\\\",\\\"name\\\":\\\"keyword.operator.i-beam.apl\\\"},{\\\"match\\\":\\\"\u233A\\\",\\\"name\\\":\\\"keyword.operator.quad-diamond.apl\\\"},{\\\"match\\\":\\\"@\\\",\\\"name\\\":\\\"keyword.operator.at.apl\\\"},{\\\"match\\\":\\\"\u25CA\\\",\\\"name\\\":\\\"keyword.operator.lozenge.apl\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"keyword.operator.semicolon.apl\\\"},{\\\"match\\\":\\\"\u00AF\\\",\\\"name\\\":\\\"keyword.operator.high-minus.apl\\\"},{\\\"match\\\":\\\"\u2190\\\",\\\"name\\\":\\\"keyword.operator.assignment.apl\\\"},{\\\"match\\\":\\\"\u2192\\\",\\\"name\\\":\\\"keyword.control.goto.apl\\\"},{\\\"match\\\":\\\"\u236C\\\",\\\"name\\\":\\\"constant.language.zilde.apl\\\"},{\\\"match\\\":\\\"\u22C4\\\",\\\"name\\\":\\\"keyword.operator.diamond.apl\\\"},{\\\"match\\\":\\\"\u236B\\\",\\\"name\\\":\\\"keyword.operator.lock.apl\\\"},{\\\"match\\\":\\\"\u2395\\\",\\\"name\\\":\\\"keyword.operator.quad.apl\\\"},{\\\"match\\\":\\\"##\\\",\\\"name\\\":\\\"constant.language.namespace.parent.apl\\\"},{\\\"match\\\":\\\"#\\\",\\\"name\\\":\\\"constant.language.namespace.root.apl\\\"},{\\\"match\\\":\\\"\u233B\\\",\\\"name\\\":\\\"keyword.operator.quad-jot.apl\\\"},{\\\"match\\\":\\\"\u233C\\\",\\\"name\\\":\\\"keyword.operator.quad-circle.apl\\\"},{\\\"match\\\":\\\"\u233E\\\",\\\"name\\\":\\\"keyword.operator.circle-jot.apl\\\"},{\\\"match\\\":\\\"\u2341\\\",\\\"name\\\":\\\"keyword.operator.quad-slash.apl\\\"},{\\\"match\\\":\\\"\u2342\\\",\\\"name\\\":\\\"keyword.operator.quad-backslash.apl\\\"},{\\\"match\\\":\\\"\u2343\\\",\\\"name\\\":\\\"keyword.operator.quad-less.apl\\\"},{\\\"match\\\":\\\"\u2344\\\",\\\"name\\\":\\\"keyword.operator.greater.apl\\\"},{\\\"match\\\":\\\"\u2345\\\",\\\"name\\\":\\\"keyword.operator.vane-left.apl\\\"},{\\\"match\\\":\\\"\u2346\\\",\\\"name\\\":\\\"keyword.operator.vane-right.apl\\\"},{\\\"match\\\":\\\"\u2347\\\",\\\"name\\\":\\\"keyword.operator.quad-arrow-left.apl\\\"},{\\\"match\\\":\\\"\u2348\\\",\\\"name\\\":\\\"keyword.operator.quad-arrow-right.apl\\\"},{\\\"match\\\":\\\"\u234A\\\",\\\"name\\\":\\\"keyword.operator.tack-down.apl\\\"},{\\\"match\\\":\\\"\u234C\\\",\\\"name\\\":\\\"keyword.operator.quad-caret-down.apl\\\"},{\\\"match\\\":\\\"\u234D\\\",\\\"name\\\":\\\"keyword.operator.quad-del-up.apl\\\"},{\\\"match\\\":\\\"\u234F\\\",\\\"name\\\":\\\"keyword.operator.vane-up.apl\\\"},{\\\"match\\\":\\\"\u2350\\\",\\\"name\\\":\\\"keyword.operator.quad-arrow-up.apl\\\"},{\\\"match\\\":\\\"\u2351\\\",\\\"name\\\":\\\"keyword.operator.tack-up.apl\\\"},{\\\"match\\\":\\\"\u2353\\\",\\\"name\\\":\\\"keyword.operator.quad-caret-up.apl\\\"},{\\\"match\\\":\\\"\u2354\\\",\\\"name\\\":\\\"keyword.operator.quad-del-down.apl\\\"},{\\\"match\\\":\\\"\u2356\\\",\\\"name\\\":\\\"keyword.operator.vane-down.apl\\\"},{\\\"match\\\":\\\"\u2357\\\",\\\"name\\\":\\\"keyword.operator.quad-arrow-down.apl\\\"},{\\\"match\\\":\\\"\u2358\\\",\\\"name\\\":\\\"keyword.operator.underbar-quote.apl\\\"},{\\\"match\\\":\\\"\u235A\\\",\\\"name\\\":\\\"keyword.operator.underbar-diamond.apl\\\"},{\\\"match\\\":\\\"\u235B\\\",\\\"name\\\":\\\"keyword.operator.underbar-jot.apl\\\"},{\\\"match\\\":\\\"\u235C\\\",\\\"name\\\":\\\"keyword.operator.underbar-circle.apl\\\"},{\\\"match\\\":\\\"\u235E\\\",\\\"name\\\":\\\"keyword.operator.quad-quote.apl\\\"},{\\\"match\\\":\\\"\u2361\\\",\\\"name\\\":\\\"keyword.operator.dotted-tack-up.apl\\\"},{\\\"match\\\":\\\"\u2362\\\",\\\"name\\\":\\\"keyword.operator.dotted-del.apl\\\"},{\\\"match\\\":\\\"\u2365\\\",\\\"name\\\":\\\"keyword.operator.dotted-circle.apl\\\"},{\\\"match\\\":\\\"\u2366\\\",\\\"name\\\":\\\"keyword.operator.stile-shoe-up.apl\\\"},{\\\"match\\\":\\\"\u2367\\\",\\\"name\\\":\\\"keyword.operator.stile-shoe-left.apl\\\"},{\\\"match\\\":\\\"\u2369\\\",\\\"name\\\":\\\"keyword.operator.dotted-greater.apl\\\"},{\\\"match\\\":\\\"\u236D\\\",\\\"name\\\":\\\"keyword.operator.stile-tilde.apl\\\"},{\\\"match\\\":\\\"\u236E\\\",\\\"name\\\":\\\"keyword.operator.underbar-semicolon.apl\\\"},{\\\"match\\\":\\\"\u236F\\\",\\\"name\\\":\\\"keyword.operator.quad-not-equal.apl\\\"},{\\\"match\\\":\\\"\u2370\\\",\\\"name\\\":\\\"keyword.operator.quad-question.apl\\\"}]},\\\"sysvars\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.quad.apl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.quad-quote.apl\\\"}},\\\"match\\\":\\\"(?:(\u2395)|(\u235E))[A-Za-z]*\\\",\\\"name\\\":\\\"support.system.variable.apl\\\"}]}},\\\"scopeName\\\":\\\"source.apl\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"xml\\\",\\\"css\\\",\\\"javascript\\\",\\\"json\\\"]}\"))\n\nexport default [\n...html,\n...xml,\n...css,\n...javascript,\n...json,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"AppleScript\\\",\\\"fileTypes\\\":[\\\"applescript\\\",\\\"scpt\\\",\\\"script editor\\\"],\\\"firstLineMatch\\\":\\\"^#!.*(osascript)\\\",\\\"name\\\":\\\"applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#blocks\\\"},{\\\"include\\\":\\\"#inline\\\"}],\\\"repository\\\":{\\\"attributes.considering-ignoring\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.array.attributes.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(and)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.attributes.and.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:case|diacriticals|hyphens|numeric\\\\\\\\s+strings|punctuation|white\\\\\\\\s+space)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.attributes.text.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:application\\\\\\\\s+responses)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.attributes.application.applescript\\\"}]},\\\"blocks\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(script)\\\\\\\\s+(\\\\\\\\w+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.script.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.script-object.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+script)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.script.applescript\\\"}},\\\"name\\\":\\\"meta.block.script.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(to|on)\\\\\\\\s+(\\\\\\\\w+)(\\\\\\\\()((?:[\\\\\\\\s,:\\\\\\\\{\\\\\\\\}]*(?:\\\\\\\\w+)?)*)(\\\\\\\\))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.function.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.handler.applescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.applescript\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.handler.applescript\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.applescript\\\"}},\\\"comment\\\":\\\"\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tThis is not a very well-designed rule. For now,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\twe can leave it like this though, as it sorta works.\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\",\\\"end\\\":\\\"^\\\\\\\\s*(end)(?:\\\\\\\\s+(\\\\\\\\2))?(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.function.applescript\\\"}},\\\"name\\\":\\\"meta.function.positional.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(to|on)\\\\\\\\s+(\\\\\\\\w+)(?:\\\\\\\\s+(of|in)\\\\\\\\s+(\\\\\\\\w+))?(?=\\\\\\\\s+(above|against|apart\\\\\\\\s+from|around|aside\\\\\\\\s+from|at|below|beneath|beside|between|by|for|from|instead\\\\\\\\s+of|into|on|onto|out\\\\\\\\s+of|over|thru|under)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.function.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.handler.applescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.function.applescript\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.handler.direct.applescript\\\"}},\\\"comment\\\":\\\"TODO: match `given` parameters\\\",\\\"end\\\":\\\"^\\\\\\\\s*(end)(?:\\\\\\\\s+(\\\\\\\\2))?(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.function.applescript\\\"}},\\\"name\\\":\\\"meta.function.prepositional.applescript\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preposition.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.handler.applescript\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?i:above|against|apart\\\\\\\\s+from|around|aside\\\\\\\\s+from|at|below|beneath|beside|between|by|for|from|instead\\\\\\\\s+of|into|on|onto|out\\\\\\\\s+of|over|thru|under)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\b\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(to|on)\\\\\\\\s+(\\\\\\\\w+)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.function.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.handler.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end)(?:\\\\\\\\s+(\\\\\\\\2))?(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.function.applescript\\\"}},\\\"name\\\":\\\"meta.function.parameterless.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#blocks.tell\\\"},{\\\"include\\\":\\\"#blocks.repeat\\\"},{\\\"include\\\":\\\"#blocks.statement\\\"},{\\\"include\\\":\\\"#blocks.other\\\"}]},\\\"blocks.other\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(considering)\\\\\\\\b\\\",\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+considering)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"name\\\":\\\"meta.block.considering.applescript\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=considering)\\\",\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.array.attributes.considering.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes.considering-ignoring\\\"}]},{\\\"begin\\\":\\\"(?<=ignoring)\\\",\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.array.attributes.ignoring.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes.considering-ignoring\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(but)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.but.applescript\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(ignoring)\\\\\\\\b\\\",\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+ignoring)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"name\\\":\\\"meta.block.ignoring.applescript\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=considering)\\\",\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.array.attributes.considering.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes.considering-ignoring\\\"}]},{\\\"begin\\\":\\\"(?<=ignoring)\\\",\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.array.attributes.ignoring.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes.considering-ignoring\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(but)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.but.applescript\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(if)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.if.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+if)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.applescript\\\"}},\\\"name\\\":\\\"meta.block.if.applescript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(then)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.then.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(else\\\\\\\\s+if)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.else-if.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(else)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.else.applescript\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(try)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.try.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+(try|error))?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.applescript\\\"}},\\\"name\\\":\\\"meta.block.try.applescript\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(on\\\\\\\\s+error)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.exception.on-error.applescript\\\"}},\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.property.error.applescript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?i:number|partial|from|to)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.exception.modifier.applescript\\\"},{\\\"include\\\":\\\"#inline\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(using\\\\\\\\s+terms\\\\\\\\s+from)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.terms.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+using\\\\\\\\s+terms\\\\\\\\s+from)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.applescript\\\"}},\\\"name\\\":\\\"meta.block.terms.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(with\\\\\\\\s+timeout(\\\\\\\\s+of)?)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.timeout.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+timeout)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.applescript\\\"}},\\\"name\\\":\\\"meta.block.timeout.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(with\\\\\\\\s+transaction(\\\\\\\\s+of)?)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.transaction.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+transaction)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.applescript\\\"}},\\\"name\\\":\\\"meta.block.transaction.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"blocks.repeat\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(repeat)\\\\\\\\s+(until)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.repeat.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.until.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+repeat)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.applescript\\\"}},\\\"name\\\":\\\"meta.block.repeat.until.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(repeat)\\\\\\\\s+(while)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.repeat.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.while.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+repeat)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.applescript\\\"}},\\\"name\\\":\\\"meta.block.repeat.while.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(repeat)\\\\\\\\s+(with)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.repeat.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.until.applescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.loop.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+repeat)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.applescript\\\"}},\\\"name\\\":\\\"meta.block.repeat.with.applescript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(from|to|by)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.modifier.range.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.modifier.list.applescript\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(repeat)\\\\\\\\b(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.repeat.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+repeat)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.applescript\\\"}},\\\"name\\\":\\\"meta.block.repeat.forever.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(repeat)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.repeat.applescript\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+repeat)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.applescript\\\"}},\\\"name\\\":\\\"meta.block.repeat.times.applescript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(times)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.times.applescript\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"blocks.statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(prop(?:erty)?)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.property.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.property.applescript\\\"}},\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.statement.property.applescript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.property.applescript\\\"},{\\\"include\\\":\\\"#inline\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(set)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s+(to)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.set.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.set.applescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.def.set.applescript\\\"}},\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.statement.set.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(local)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.local.applescript\\\"}},\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.statement.local.applescript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.variables.local.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.readwrite.local.applescript\\\"},{\\\"include\\\":\\\"#inline\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(global)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.global.applescript\\\"}},\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.statement.global.applescript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.variables.global.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.readwrite.global.applescript\\\"},{\\\"include\\\":\\\"#inline\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(error)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.exception.error.applescript\\\"}},\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.statement.error.applescript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(number|partial|from|to)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.exception.modifier.applescript\\\"},{\\\"include\\\":\\\"#inline\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(if)\\\\\\\\b(?=.*\\\\\\\\bthen\\\\\\\\b(?!\\\\\\\\s*(--.*?)?$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.if.applescript\\\"}},\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.statement.if-then.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline\\\"}]}]},\\\"blocks.tell\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(tell)\\\\\\\\s+(?=app(lication)?\\\\\\\\s+\\\\\\\"(?i:textmate)\\\\\\\")(?!.*\\\\\\\\bto(?!\\\\\\\\s+tell)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tell.applescript\\\"}},\\\"comment\\\":\\\"tell Textmate\\\",\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+tell)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"name\\\":\\\"meta.block.tell.application.textmate.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#textmate\\\"},{\\\"include\\\":\\\"#standard-suite\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(tell)\\\\\\\\s+(?=app(lication)?\\\\\\\\s+\\\\\\\"(?i:finder)\\\\\\\")(?!.*\\\\\\\\bto(?!\\\\\\\\s+tell)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tell.applescript\\\"}},\\\"comment\\\":\\\"tell Finder\\\",\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+tell)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"name\\\":\\\"meta.block.tell.application.finder.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#finder\\\"},{\\\"include\\\":\\\"#standard-suite\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(tell)\\\\\\\\s+(?=app(lication)?\\\\\\\\s+\\\\\\\"(?i:system events)\\\\\\\")(?!.*\\\\\\\\bto(?!\\\\\\\\s+tell)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tell.applescript\\\"}},\\\"comment\\\":\\\"tell System Events\\\",\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+tell)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"name\\\":\\\"meta.block.tell.application.system-events.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#system-events\\\"},{\\\"include\\\":\\\"#standard-suite\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(tell)\\\\\\\\s+(?=app(lication)?\\\\\\\\s+\\\\\\\"(?i:itunes)\\\\\\\")(?!.*\\\\\\\\bto(?!\\\\\\\\s+tell)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tell.applescript\\\"}},\\\"comment\\\":\\\"tell iTunes\\\",\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+tell)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"name\\\":\\\"meta.block.tell.application.itunes.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#itunes\\\"},{\\\"include\\\":\\\"#standard-suite\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(tell)\\\\\\\\s+(?=app(lication)?\\\\\\\\s+process\\\\\\\\b)(?!.*\\\\\\\\bto(?!\\\\\\\\s+tell)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tell.applescript\\\"}},\\\"comment\\\":\\\"tell generic application process\\\",\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+tell)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"name\\\":\\\"meta.block.tell.application-process.generic.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#standard-suite\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(tell)\\\\\\\\s+(?=app(lication)?\\\\\\\\b)(?!.*\\\\\\\\bto(?!\\\\\\\\s+tell)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tell.applescript\\\"}},\\\"comment\\\":\\\"tell generic application\\\",\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+tell)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"name\\\":\\\"meta.block.tell.application.generic.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#standard-suite\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(tell)\\\\\\\\s+(?!.*\\\\\\\\bto(?!\\\\\\\\s+tell)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tell.applescript\\\"}},\\\"comment\\\":\\\"generic tell block\\\",\\\"end\\\":\\\"^\\\\\\\\s*(end(?:\\\\\\\\s+tell)?)(?=\\\\\\\\s*(--.*?)?$)\\\",\\\"name\\\":\\\"meta.block.tell.generic.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(tell)\\\\\\\\s+(?=.*\\\\\\\\bto\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tell.applescript\\\"}},\\\"comment\\\":\\\"tell \u2026 to statement\\\",\\\"end\\\":\\\"(?<!\u00AC)$\\\",\\\"name\\\":\\\"meta.block.tell.generic.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"built-in\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#built-in.constant\\\"},{\\\"include\\\":\\\"#built-in.keyword\\\"},{\\\"include\\\":\\\"#built-in.support\\\"},{\\\"include\\\":\\\"#built-in.punctuation\\\"}]},\\\"built-in.constant\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"yes/no can\u2019t always be used as booleans, e.g. in an if() expression. But they work e.g. for boolean arguments.\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:true|false|yes|no)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:null|missing\\\\\\\\s+value)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.null.applescript\\\"},{\\\"match\\\":\\\"-?\\\\\\\\b\\\\\\\\d+((\\\\\\\\.(\\\\\\\\d+\\\\\\\\b)?)?(?i:e\\\\\\\\+?\\\\\\\\d*\\\\\\\\b)?|\\\\\\\\b)\\\",\\\"name\\\":\\\"constant.numeric.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:space|tab|return|linefeed|quote)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.text.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:all\\\\\\\\s+(caps|lowercase)|bold|condensed|expanded|hidden|italic|outline|plain|shadow|small\\\\\\\\s+caps|strikethrough|(sub|super)script|underline)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.styles.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Jan(uary)?|Feb(ruary)?|Mar(ch)?|Apr(il)?|May|Jun(e)?|Jul(y)?|Aug(ust)?|Sep(tember)?|Oct(ober)?|Nov(ember)?|Dec(ember)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.time.month.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Mon(day)?|Tue(sday)?|Wed(nesday)?|Thu(rsday)?|Fri(day)?|Sat(urday)?|Sun(day)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.time.weekday.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:AppleScript|pi|result|version|current\\\\\\\\s+application|its?|m[ey])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.miscellaneous.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:text\\\\\\\\s+item\\\\\\\\s+delimiters|print\\\\\\\\s+(length|depth))\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.applescript\\\"}]},\\\"built-in.keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(&|\\\\\\\\*|\\\\\\\\+|-|/|\u00F7|\\\\\\\\^)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.applescript\\\"},{\\\"match\\\":\\\"(=|\u2260|>|<|\u2265|>=|\u2264|<=)\\\",\\\"name\\\":\\\"keyword.operator.comparison.applescript\\\"},{\\\"match\\\":\\\"(?ix)\\\\\\\\b\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(and|or|div|mod|as|not\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t|(a\\\\\\\\s+)?(ref(\\\\\\\\s+to)?|reference\\\\\\\\s+to)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t|equal(s|\\\\\\\\s+to)|contains?|comes\\\\\\\\s+(after|before)|(start|begin|end)s?\\\\\\\\s+with\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.applescript\\\"},{\\\"comment\\\":\\\"In double quotes so we can use a single quote in the keywords.\\\",\\\"match\\\":\\\"(?ix)\\\\\\\\b\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(is(n't|\\\\\\\\s+not)?(\\\\\\\\s+(equal(\\\\\\\\s+to)?|(less|greater)\\\\\\\\s+than(\\\\\\\\s+or\\\\\\\\s+equal(\\\\\\\\s+to)?)?|in|contained\\\\\\\\s+by))?\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t|does(n't|\\\\\\\\s+not)\\\\\\\\s+(equal|come\\\\\\\\s+(before|after)|contain)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:some|every|whose|where|that|id|index|\\\\\\\\d+(st|nd|rd|th)|first|second|third|fourth|fifth|sixth|seventh|eighth|ninth|tenth|last|front|back|middle|named|beginning|end|from|to|thr(u|ough)|before|(front|back|beginning|end)\\\\\\\\s+of|after|behind|in\\\\\\\\s+(front|back|beginning|end)\\\\\\\\s+of)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.reference.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:continue|return|exit(\\\\\\\\s+repeat)?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.loop.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:about|above|after|against|and|apart\\\\\\\\s+from|around|as|aside\\\\\\\\s+from|at|back|before|beginning|behind|below|beneath|beside|between|but|by|considering|contain|contains|contains|copy|div|does|eighth|else|end|equal|equals|error|every|false|fifth|first|for|fourth|from|front|get|given|global|if|ignoring|in|instead\\\\\\\\s+of|into|is|it|its|last|local|me|middle|mod|my|ninth|not|of|on|onto|or|out\\\\\\\\s+of|over|prop|property|put|ref|reference|repeat|returning|script|second|set|seventh|since|sixth|some|tell|tenth|that|the|then|third|through|thru|timeout|times|to|transaction|true|try|until|where|while|whose|with|without)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.applescript\\\"}]},\\\"built-in.punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\u00AC\\\",\\\"name\\\":\\\"punctuation.separator.continuation.line.applescript\\\"},{\\\"comment\\\":\\\"the : in property assignments\\\",\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.property.applescript\\\"},{\\\"comment\\\":\\\"the parentheses in groups\\\",\\\"match\\\":\\\"[()]\\\",\\\"name\\\":\\\"punctuation.section.group.applescript\\\"}]},\\\"built-in.support\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?i:POSIX\\\\\\\\s+path|frontmost|id|name|running|version|days?|weekdays?|months?|years?|time|date\\\\\\\\s+string|time\\\\\\\\s+string|length|rest|reverse|items?|contents|quoted\\\\\\\\s+form|characters?|paragraphs?|words?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.built-in.property.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:activate|log|clipboard\\\\\\\\s+info|set\\\\\\\\s+the\\\\\\\\s+clipboard\\\\\\\\s+to|the\\\\\\\\s+clipboard|info\\\\\\\\s+for|list\\\\\\\\s+(disks|folder)|mount\\\\\\\\s+volume|path\\\\\\\\s+to(\\\\\\\\s+resource)?|close\\\\\\\\s+access|get\\\\\\\\s+eof|open\\\\\\\\s+for\\\\\\\\s+access|read|set\\\\\\\\s+eof|write|open\\\\\\\\s+location|current\\\\\\\\s+date|do\\\\\\\\s+shell\\\\\\\\s+script|get\\\\\\\\s+volume\\\\\\\\s+settings|random\\\\\\\\s+number|round|set\\\\\\\\s+volume|system\\\\\\\\s+(attribute|info)|time\\\\\\\\s+to\\\\\\\\s+GMT|load\\\\\\\\s+script|run\\\\\\\\s+script|scripting\\\\\\\\s+components|store\\\\\\\\s+script|copy|count|get|launch|run|set|ASCII\\\\\\\\s+(character|number)|localized\\\\\\\\s+string|offset|summarize|beep|choose\\\\\\\\s+(application|color|file(\\\\\\\\s+name)?|folder|from\\\\\\\\s+list|remote\\\\\\\\s+application|URL)|delay|display\\\\\\\\s+(alert|dialog)|say)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.built-in.command.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:get|run)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.built-in.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:anything|data|text|upper\\\\\\\\s+case|propert(y|ies))\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.built-in.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:alias|class)(es)?\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.built-in.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:app(lication)?|boolean|character|constant|date|event|file(\\\\\\\\s+specification)?|handler|integer|item|keystroke|linked\\\\\\\\s+list|list|machine|number|picture|preposition|POSIX\\\\\\\\s+file|real|record|reference(\\\\\\\\s+form)?|RGB\\\\\\\\s+color|script|sound|text\\\\\\\\s+item|type\\\\\\\\s+class|vector|writing\\\\\\\\s+code(\\\\\\\\s+info)?|zone|((international|styled(\\\\\\\\s+(Clipboard|Unicode))?|Unicode)\\\\\\\\s+)?text|((C|encoded|Pascal)\\\\\\\\s+)?string)s?\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.built-in.applescript\\\"},{\\\"match\\\":\\\"(?ix)\\\\\\\\b\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(\\\\t(cubic\\\\\\\\s+(centi)?|square\\\\\\\\s+(kilo)?|centi|kilo)met(er|re)s\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t|\\\\tsquare\\\\\\\\s+(yards|feet|miles)|cubic\\\\\\\\s+(yards|feet|inches)|miles|inches\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t|\\\\tlit(re|er)s|gallons|quarts\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t|\\\\t(kilo)?grams|ounces|pounds\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t|\\\\tdegrees\\\\\\\\s+(Celsius|Fahrenheit|Kelvin)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.built-in.unit.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:seconds|minutes|hours|days)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.built-in.time.applescript\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#!)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.applescript\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.applescript\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.applescript\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.applescript\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.applescript\\\"}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=--)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.applescript\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"--\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.applescript\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-dash.applescript\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.applescript\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\)\\\",\\\"name\\\":\\\"comment.block.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments.nested\\\"}]}]},\\\"comments.nested\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.applescript\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.applescript\\\"}},\\\"name\\\":\\\"comment.block.applescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments.nested\\\"}]}]},\\\"data-structures\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.applescript\\\"}},\\\"comment\\\":\\\"We cannot necessarily distinguish \\\\\\\"records\\\\\\\" from \\\\\\\"arrays\\\\\\\", and so this could be either.\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.applescript\\\"}},\\\"name\\\":\\\"meta.array.applescript\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.key.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.identifier.applescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.applescript\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.applescript\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.applescript\\\"}},\\\"match\\\":\\\"(\\\\\\\\w+|((\\\\\\\\|)[^|\\\\\\\\n]*(\\\\\\\\|)))\\\\\\\\s*(:)\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.applescript\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.array.applescript\\\"},{\\\"include\\\":\\\"#inline\\\"}]},{\\\"begin\\\":\\\"(?:(?<=application )|(?<=app ))(\\\\\\\")\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.applescript\\\"}},\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"name\\\":\\\"string.quoted.double.application-name.applescript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.applescript\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\")\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.applescript\\\"}},\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"name\\\":\\\"string.quoted.double.applescript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.applescript\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.applescript\\\"}},\\\"match\\\":\\\"(\\\\\\\\|)[^|\\\\\\\\n]*(\\\\\\\\|)\\\",\\\"name\\\":\\\"meta.identifier.applescript\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.data.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.class.built-in.applescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.utxt.applescript\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.unquoted.data.applescript\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.data.applescript\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.applescript\\\"},\\\"7\\\":{\\\"name\\\":\\\"support.class.built-in.applescript\\\"}},\\\"match\\\":\\\"(\u00AB)(data) (utxt|utf8)([[:xdigit:]]*)(\u00BB)(?:\\\\\\\\s+(as)\\\\\\\\s+(?i:Unicode\\\\\\\\s+text))?\\\",\\\"name\\\":\\\"constant.other.data.utxt.applescript\\\"},{\\\"begin\\\":\\\"(\u00AB)(\\\\\\\\w+)\\\\\\\\b(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.data.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.class.built-in.applescript\\\"}},\\\"end\\\":\\\"(\u00BB)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.data.applescript\\\"}},\\\"name\\\":\\\"constant.other.data.raw.applescript\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.data.applescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.data.applescript\\\"}},\\\"match\\\":\\\"(\u00AB)[^\u00BB]*(\u00BB)\\\",\\\"name\\\":\\\"invalid.illegal.data.applescript\\\"}]},\\\"finder\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(item|container|(computer|disk|trash)-object|disk|folder|((alias|application|document|internet location) )?file|clipping|package)s?\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.finder.items.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b((Finder|desktop|information|preferences|clipping) )windows?\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.finder.window-classes.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(preferences|(icon|column|list) view options|(label|column|alias list)s?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.finder.type-definitions.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(copy|find|sort|clean up|eject|empty( trash)|erase|reveal|update)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.finder.items.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(insertion location|product version|startup disk|desktop|trash|home|computer container|finder preferences)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.finder.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(visible)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.finder.applescript\\\"}]},\\\"inline\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#data-structures\\\"},{\\\"include\\\":\\\"#built-in\\\"},{\\\"include\\\":\\\"#standardadditions\\\"}]},\\\"itunes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(artwork|application|encoder|EQ preset|item|source|visual|(EQ |browser )?window|((audio CD|device|shared|URL|file) )?track|playlist window|((audio CD|device|radio tuner|library|folder|user) )?playlist)s?\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.itunes.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(add|back track|convert|fast forward|(next|previous) track|pause|play(pause)?|refresh|resume|rewind|search|stop|update|eject|subscribe|update(Podcast|AllPodcasts)|download)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.itunes.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(current (playlist|stream (title|URL)|track)|player state)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.itunes.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(current (encoder|EQ preset|visual)|EQ enabled|fixed indexing|full screen|mute|player position|sound volume|visuals enabled|visual size)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.itunes.applescript\\\"}]},\\\"standard-suite\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(colors?|documents?|items?|windows?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.standard-suite.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(close|count|delete|duplicate|exists|make|move|open|print|quit|save|activate|select|data size)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.standard-suite.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(name|frontmost|version)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.standard-suite.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(selection)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.standard-suite.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(attachments?|attribute runs?|characters?|paragraphs?|texts?|words?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.text-suite.applescript\\\"}]},\\\"standardadditions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((alert|dialog) reply)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.standardadditions.user-interaction.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(file information)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.standardadditions.file.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(POSIX files?|system information|volume settings)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.standardadditions.miscellaneous.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(URLs?|internet address(es)?|web pages?|FTP items?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.standardadditions.internet.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(info for|list (disks|folder)|mount volume|path to( resource)?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.standardadditions.file.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(beep|choose (application|color|file( name)?|folder|from list|remote application|URL)|delay|display (alert|dialog)|say)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.standardadditions.user-interaction.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(ASCII (character|number)|localized string|offset|summarize)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.standardadditions.string.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(set the clipboard to|the clipboard|clipboard info)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.standardadditions.clipboard.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(open for access|close access|read|write|get eof|set eof)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.standardadditions.file-i-o.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b((load|store|run) script|scripting components)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.standardadditions.scripting.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(current date|do shell script|get volume settings|random number|round|set volume|system attribute|system info|time to GMT)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.standardadditions.miscellaneous.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(opening folder|(closing|moving) folder window for|adding folder items to|removing folder items from)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.standardadditions.folder-actions.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(open location|handle CGI request)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.standardadditions.internet.applescript\\\"}]},\\\"system-events\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(audio (data|file))\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.system-events.audio-file.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(alias(es)?|(Classic|local|network|system|user) domain objects?|disk( item)?s?|domains?|file( package)?s?|folders?|items?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.system-events.disk-folder-file.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(delete|open|move)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.system-events.disk-folder-file.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(folder actions?|scripts?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.system-events.folder-actions.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(attach action to|attached scripts|edit action of|remove action from)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.system-events.folder-actions.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(movie data|movie file)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.system-events.movie-file.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(log out|restart|shut down|sleep)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.system-events.power.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(((application |desk accessory )?process|(check|combo )?box)(es)?|(action|attribute|browser|(busy|progress|relevance) indicator|color well|column|drawer|group|grow area|image|incrementor|list|menu( bar)?( item)?|(menu |pop up |radio )?button|outline|(radio|tab|splitter) group|row|scroll (area|bar)|sheet|slider|splitter|static text|table|text (area|field)|tool bar|UI element|window)s?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.system-events.processes.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(click|key code|keystroke|perform|select)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.system-events.processes.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(property list (file|item))\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.system-events.property-list.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(annotation|QuickTime (data|file)|track)s?\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.system-events.quicktime-file.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b((abort|begin|end) transaction)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.system-events.system-events.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(XML (attribute|data|element|file)s?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.system-events.xml.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(print settings|users?|login items?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.sytem-events.other.applescript\\\"}]},\\\"textmate\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(print settings)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.textmate.applescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(get url|insert|reload bundles)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.textmate.applescript\\\"}]}},\\\"scopeName\\\":\\\"source.applescript\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Ara\\\",\\\"fileTypes\\\":[\\\"ara\\\"],\\\"name\\\":\\\"ara\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"},{\\\"include\\\":\\\"#named-arguments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#function-call\\\"}],\\\"repository\\\":{\\\"class-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?i)(?<!\\\\\\\\$)(?=[\\\\\\\\\\\\\\\\a-zA-Z_])\\\",\\\"end\\\":\\\"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\\\\\\\\\])\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.ara\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ara\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.ara\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ara\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ara\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.ara\\\"}]}]},\\\"function-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\\\\\\\\\?[a-z_0-9\\\\\\\\\\\\\\\\]+\\\\\\\\\\\\\\\\[a-z_][a-z0-9_]*\\\\\\\\s*(\\\\\\\\(|(::<)))\\\",\\\"comment\\\":\\\"Functions in a user-defined namespace (overrides any built-ins)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(\\\\\\\\(|(::<)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#user-function-call\\\"}]},{\\\"begin\\\":\\\"(?i)(\\\\\\\\\\\\\\\\)?(?=\\\\\\\\b[a-z_][a-z_0-9]*\\\\\\\\s*(\\\\\\\\(|(::<)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"comment\\\":\\\"Root namespace function calls (built-in or user)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(\\\\\\\\(|(::<)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#user-function-call\\\"}]}]},\\\"interpolation\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Interpolating octal values e.g. \\\\\\\\01 or \\\\\\\\07.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-7]{1,3}\\\",\\\"name\\\":\\\"constant.numeric.octal.ara\\\"},{\\\"comment\\\":\\\"Interpolating hex values e.g. \\\\\\\\x1 or \\\\\\\\xFF.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9A-Fa-f]{1,2}\\\",\\\"name\\\":\\\"constant.numeric.hex.ara\\\"},{\\\"comment\\\":\\\"Escaped characters in double-quoted strings e.g. \\\\\\\\n or \\\\\\\\t.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[nrt\\\\\\\\\\\\\\\\\\\\\\\\$\\\\\\\\\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.ara\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(await|async|concurrently|break|continue|do|else|elseif|for|if|loop|while|foreach|match|return|try|yield|from|catch|finally|default|exit)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.ara\\\"},{\\\"match\\\":\\\"\\\\\\\\b(const|enum|class|interface|trait|namespace|type|case|function|fn)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.decl.ara\\\"},{\\\"match\\\":\\\"\\\\\\\\b(final|abstract|static|readonly|public|private|protected)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ara\\\"},{\\\"match\\\":\\\"\\\\\\\\b(as|is|extends|implements|use|where|clone|new)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ara\\\"}]},\\\"named-arguments\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.variable.parameter.ara\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.colon.ara\\\"}},\\\"match\\\":\\\"(?i)(?<=^|\\\\\\\\(|,)\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\\\\\\s*(:)(?!:)\\\"},\\\"namespace\\\":{\\\"begin\\\":\\\"(?i)((namespace)|[a-z0-9_]+)?(\\\\\\\\\\\\\\\\)(?=.*?[^a-z_0-9\\\\\\\\\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.namespace.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"end\\\":\\\"(?i)(?=[a-z0-9_]*[^a-z0-9_\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"support.other.namespace.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)[a-z0-9_]+(?=\\\\\\\\\\\\\\\\)\\\",\\\"name\\\":\\\"entity.name.type.namespace.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\\\\\\\\\)\\\"}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"0[xX][0-9a-fA-F]+(?:_[0-9a-fA-F]+)*\\\",\\\"name\\\":\\\"constant.numeric.hex.ara\\\"},{\\\"match\\\":\\\"0[bB][01]+(?:_[01]+)*\\\",\\\"name\\\":\\\"constant.numeric.binary.ara\\\"},{\\\"match\\\":\\\"0[oO][0-7]+(?:_[0-7]+)*\\\",\\\"name\\\":\\\"constant.numeric.octal.ara\\\"},{\\\"match\\\":\\\"0(?:_?[0-7]+)+\\\",\\\"name\\\":\\\"constant.numeric.octal.ara\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.ara\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.ara\\\"}},\\\"match\\\":\\\"(?:(?:[0-9]+(?:_[0-9]+)*)?(\\\\\\\\.)[0-9]+(?:_[0-9]+)*(?:[eE][+-]?[0-9]+(?:_[0-9]+)*)?|[0-9]+(?:_[0-9]+)*(\\\\\\\\.)(?:[0-9]+(?:_[0-9]+)*)?(?:[eE][+-]?[0-9]+(?:_[0-9]+)*)?|[0-9]+(?:_[0-9]+)*[eE][+-]?[0-9]+(?:_[0-9]+)*)\\\",\\\"name\\\":\\\"constant.numeric.decimal.ara\\\"},{\\\"match\\\":\\\"0|[1-9](?:_?[0-9]+)*\\\",\\\"name\\\":\\\"constant.numeric.decimal.ara\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"assignment operators\\\",\\\"match\\\":\\\"(\\\\\\\\+=|-=|\\\\\\\\*=|/=|%=|\\\\\\\\^=|&&=|<=|>=|&=|\\\\\\\\|=|<<=|>>=|\\\\\\\\?\\\\\\\\?=)\\\",\\\"name\\\":\\\"keyword.assignments.ara\\\"},{\\\"comment\\\":\\\"logical operators\\\",\\\"match\\\":\\\"(\\\\\\\\^|\\\\\\\\||\\\\\\\\|\\\\\\\\||&&|>>|<<|&|~|<<|>>|>|<|<=>|\\\\\\\\?\\\\\\\\?|\\\\\\\\?|:|\\\\\\\\?:)(?!=)\\\",\\\"name\\\":\\\"keyword.operators.ara\\\"},{\\\"comment\\\":\\\"comparison operators\\\",\\\"match\\\":\\\"(==|===|!==|!=|<=|>=|<|>)(?!=)\\\",\\\"name\\\":\\\"keyword.operator.comparison.ara\\\"},{\\\"comment\\\":\\\"math operators\\\",\\\"match\\\":\\\"(([+%]|(\\\\\\\\*(?!\\\\\\\\w)))(?!=))|(-(?!>))|(/(?!/))\\\",\\\"name\\\":\\\"keyword.operator.math.ara\\\"},{\\\"comment\\\":\\\"single equal assignment operator\\\",\\\"match\\\":\\\"(?<![<>])=(?!=|>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.ara\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brackets.round.ara\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.brackets.square.ara\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.brackets.curly.ara\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.comparison.ara\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.brackets.round.ara\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.brackets.square.ara\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.brackets.curly.ara\\\"}},\\\"comment\\\":\\\"less than, greater than (special case)\\\",\\\"match\\\":\\\"(?:\\\\\\\\b|(?:(\\\\\\\\))|(\\\\\\\\])|(\\\\\\\\})))[ \\\\\\\\t]+([<>])[ \\\\\\\\t]+(?:\\\\\\\\b|(?:(\\\\\\\\()|(\\\\\\\\[)|(\\\\\\\\{)))\\\"},{\\\"comment\\\":\\\"arrow method call, arrow property access\\\",\\\"match\\\":\\\"(?:->|\\\\\\\\?->)\\\",\\\"name\\\":\\\"keyword.operator.arrow.ara\\\"},{\\\"comment\\\":\\\"double arrow key-value pair\\\",\\\"match\\\":\\\"(?:=>)\\\",\\\"name\\\":\\\"keyword.operator.double-arrow.ara\\\"},{\\\"comment\\\":\\\"static method call, static property access\\\",\\\"match\\\":\\\"(?:::)\\\",\\\"name\\\":\\\"keyword.operator.static.ara\\\"},{\\\"comment\\\":\\\"closure creation\\\",\\\"match\\\":\\\"(?:\\\\\\\\(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\))\\\",\\\"name\\\":\\\"keyword.operator.closure.ara\\\"},{\\\"comment\\\":\\\"spread operator\\\",\\\"match\\\":\\\"(?:\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.operator.spread.ara\\\"},{\\\"comment\\\":\\\"namespace operator\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"keyword.operator.namespace.ara\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.ara\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\']\\\",\\\"name\\\":\\\"constant.character.escape.ara\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.ara\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]}]},\\\"type\\\":{\\\"name\\\":\\\"support.type.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:void|true|false|null|never|float|bool|int|string|dict|vec|object|mixed|nonnull|resource|self|static|parent|iterable)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.php\\\"},{\\\"begin\\\":\\\"([A-Za-z_][A-Za-z0-9_]*)<\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.php\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"}]},{\\\"begin\\\":\\\"(shape\\\\\\\\()\\\",\\\"end\\\":\\\"((,|\\\\\\\\.\\\\\\\\.\\\\\\\\.)?\\\\\\\\s*\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.key.php\\\"}},\\\"name\\\":\\\"storage.type.shape.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#constants\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(fn\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"}]},{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"user-function-call\\\":{\\\"begin\\\":\\\"(?i)(?=[a-z_0-9\\\\\\\\\\\\\\\\]*[a-z_][a-z0-9_]*\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?i)[a-z_][a-z_0-9]*(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.function.php\\\"}},\\\"name\\\":\\\"meta.function-call.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]}},\\\"scopeName\\\":\\\"source.ara\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"AsciiDoc\\\",\\\"fileTypes\\\":[\\\"ad\\\",\\\"asc\\\",\\\"adoc\\\",\\\"asciidoc\\\",\\\"adoc.txt\\\"],\\\"name\\\":\\\"asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#callout-list-item\\\"},{\\\"include\\\":\\\"#titles\\\"},{\\\"include\\\":\\\"#attribute-entry\\\"},{\\\"include\\\":\\\"#blocks\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"include\\\":\\\"#tables\\\"},{\\\"include\\\":\\\"#horizontal-rule\\\"},{\\\"include\\\":\\\"#list\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-attribute\\\"},{\\\"include\\\":\\\"#line-break\\\"}],\\\"repository\\\":{\\\"admonition-paragraph\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(NOTE|TIP|IMPORTANT|WARNING|CAUTION)((?:,|#|\\\\\\\\.|%)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|====)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.admonition.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(NOTE|TIP|IMPORTANT|WARNING|CAUTION)((?:,|#|\\\\\\\\.|%)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(={4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"example block\\\",\\\"end\\\":\\\"(?<=\\\\\\\\1)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#list\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"end\\\":\\\"(?<=\\\\\\\\1)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#list\\\"}]}]},{\\\"begin\\\":\\\"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\\\\\\\\:\\\\\\\\p{Blank}+\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"}},\\\"end\\\":\\\"^\\\\\\\\p{Blank}*$\\\",\\\"name\\\":\\\"markup.admonition.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"}]}]},\\\"anchor-macro\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.blockid.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.constant.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(\\\\\\\\[{2})([\\\\\\\\p{Alpha}:_][\\\\\\\\p{Word}:.-]*)(?:,\\\\\\\\p{Blank}*(\\\\\\\\S.*?))?(\\\\\\\\]{2}))\\\",\\\"name\\\":\\\"markup.other.anchor.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.blockid.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(anchor):(\\\\\\\\S+)\\\\\\\\[(.*?[^\\\\\\\\\\\\\\\\])?\\\\\\\\]\\\",\\\"name\\\":\\\"markup.other.anchor.asciidoc\\\"}]},\\\"attribute-entry\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(:)(!?\\\\\\\\w.*?)(:)(\\\\\\\\p{Blank}+.+\\\\\\\\p{Blank}(?:\\\\\\\\+|\\\\\\\\\\\\\\\\))$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.attribute-entry.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.constant.attribute-name.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.attribute-entry.asciidoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.unquoted.attribute-value.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#hard-break-backslash\\\"},{\\\"include\\\":\\\"#line-break\\\"},{\\\"include\\\":\\\"#line-break-backslash\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.attribute-value.asciidoc\\\",\\\"end\\\":\\\"^\\\\\\\\p{Blank}+.+$(?<!\\\\\\\\+|\\\\\\\\\\\\\\\\)|^\\\\\\\\p{Blank}*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.unquoted.attribute-value.asciidoc\\\"}},\\\"name\\\":\\\"meta.definition.attribute-entry.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#hard-break-backslash\\\"},{\\\"include\\\":\\\"#line-break\\\"},{\\\"include\\\":\\\"#line-break-backslash\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.constant.attribute-name.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.asciidoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.unquoted.attribute-value.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#line-break\\\"}]}},\\\"match\\\":\\\"^(:)(!?\\\\\\\\w.*?)(:)(\\\\\\\\p{Blank}+(.*))?$\\\",\\\"name\\\":\\\"meta.definition.attribute-entry.asciidoc\\\"}]},\\\"attribute-reference\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.asciidoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.constant.attribute-name.asciidoc\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.asciidoc\\\"},\\\"7\\\":{\\\"name\\\":\\\"string.unquoted.attribute-value.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\{)(set|counter2?)(:)([\\\\\\\\p{Alnum}\\\\\\\\-_!]+)((:)(.*?))?(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\})\\\",\\\"name\\\":\\\"markup.substitution.attribute-reference.asciidoc\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\{)(\\\\\\\\w+(?:[\\\\\\\\-]\\\\\\\\w+)*)(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\})\\\",\\\"name\\\":\\\"markup.substitution.attribute-reference.asciidoc\\\"}]},\\\"bibliography-anchor\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.biblioref.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\[{3})([\\\\\\\\p{Word}:][\\\\\\\\p{Word}:.-]*?)(\\\\\\\\]{3})\\\",\\\"name\\\":\\\"bibliography-anchor.asciidoc\\\"}]},\\\"bibtex-macro\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(citenp:)([a-z,]*)(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"}},\\\"contentName\\\":\\\"string.unquoted.asciidoc\\\",\\\"end\\\":\\\"\\\\\\\\]|^$\\\",\\\"name\\\":\\\"markup.macro.inline.bibtex.asciidoc\\\"}]},\\\"block-attribute\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(|\\\\\\\\p{Blank}*[\\\\\\\\p{Word}\\\\\\\\{,.#\\\\\\\"'%].*)\\\\\\\\]$\\\",\\\"name\\\":\\\"markup.heading.block-attribute.asciidoc\\\"}]},\\\"block-attribute-inner\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"separators\\\",\\\"match\\\":\\\"([,.#%])\\\",\\\"name\\\":\\\"punctuation.separator.asciidoc\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"}]}},\\\"comment\\\":\\\"blockname\\\",\\\"match\\\":\\\"(?<=\\\\\\\\[)([^\\\\\\\\[\\\\\\\\],.#%=]+)\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-reference\\\"}]}},\\\"comment\\\":\\\"attributes\\\",\\\"match\\\":\\\"(?<=\\\\\\\\{|,|.|#|\\\\\\\"|'|%)([^\\\\\\\\],.#%]+)\\\",\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"}]},\\\"block-callout\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.other.symbol.asciidoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.other.symbol.asciidoc\\\"}},\\\"match\\\":\\\"(?:(?:\\\\\\\\/\\\\\\\\/|#|--|;;) ?)?( )?(?<!\\\\\\\\\\\\\\\\)(<)!?(--|)(\\\\\\\\d+)\\\\\\\\3(>)(?=(?: ?<!?\\\\\\\\3\\\\\\\\d+\\\\\\\\3>)*$)\\\",\\\"name\\\":\\\"callout.source.code.asciidoc\\\"}]},\\\"block-title\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\.([^\\\\\\\\p{Blank}.].*)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.heading.blocktitle.asciidoc\\\"}},\\\"end\\\":\\\"$\\\"}]},\\\"blocks\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#front-matter-block\\\"},{\\\"include\\\":\\\"#comment-paragraph\\\"},{\\\"include\\\":\\\"#admonition-paragraph\\\"},{\\\"include\\\":\\\"#quote-paragraph\\\"},{\\\"include\\\":\\\"#listing-paragraph\\\"},{\\\"include\\\":\\\"#source-paragraphs\\\"},{\\\"include\\\":\\\"#passthrough-paragraph\\\"},{\\\"include\\\":\\\"#example-paragraph\\\"},{\\\"include\\\":\\\"#sidebar-paragraph\\\"},{\\\"include\\\":\\\"#literal-paragraph\\\"},{\\\"include\\\":\\\"#open-block\\\"}]},\\\"callout-list-item\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.symbol.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.other.symbol.asciidoc\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"}]}},\\\"match\\\":\\\"^(<)(\\\\\\\\d+)(>)\\\\\\\\p{Blank}+(.*)$\\\",\\\"name\\\":\\\"callout.asciidoc\\\"}]},\\\"characters\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(&)(\\\\\\\\S+?)(;)\\\",\\\"name\\\":\\\"markup.character-reference.asciidoc\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(/{4,})$\\\",\\\"end\\\":\\\"^\\\\\\\\1$\\\",\\\"name\\\":\\\"comment.block.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"}]},{\\\"match\\\":\\\"^/{2}([^/].*)?$\\\",\\\"name\\\":\\\"comment.inline.asciidoc\\\"}]},\\\"comment-paragraph\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(comment)((?:,|#|\\\\\\\\.|%)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"comment.block.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(comment)((?:,|#|\\\\\\\\.|%)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#list\\\"}]},{\\\"include\\\":\\\"#inlines\\\"}]}]},\\\"emphasis\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)(\\\\\\\\[(?:[^\\\\\\\\]]+?)\\\\\\\\])?((__)((?!_).+?)(__))\\\",\\\"name\\\":\\\"markup.emphasis.unconstrained.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?!_{4,}\\\\\\\\s*$)(?<=^|[^\\\\\\\\p{Word};:])(\\\\\\\\[(?:[^\\\\\\\\]]+?)\\\\\\\\])?((_)(\\\\\\\\S|\\\\\\\\S.*?\\\\\\\\S)(_))(?!\\\\\\\\p{Word})\\\",\\\"name\\\":\\\"markup.emphasis.constrained.asciidoc\\\"}]},\\\"example-paragraph\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(example)((?:,|#|\\\\\\\\.|%)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|====)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.block.example.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(example)((?:,|#|\\\\\\\\.|%)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(={4,})$\\\",\\\"comment\\\":\\\"example block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(-{2})$\\\",\\\"comment\\\":\\\"open block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#inlines\\\"}]},{\\\"begin\\\":\\\"^(={4,})$\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"name\\\":\\\"markup.block.example.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"footnote-macro\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)footnote(?:(ref):|:([\\\\\\\\w-]+)?)\\\\\\\\[(?:|(.*?[^\\\\\\\\\\\\\\\\]))\\\\\\\\]\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.constant.attribute-name.asciidoc\\\"}},\\\"contentName\\\":\\\"string.unquoted.asciidoc\\\",\\\"end\\\":\\\"\\\\\\\\]|^$\\\",\\\"name\\\":\\\"markup.other.footnote.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"}]}]},\\\"front-matter-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\A(-{3}$)\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"name\\\":\\\"markup.block.front-matter.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}]}]},\\\"general-block-macro\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"markup.link.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-reference\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-reference\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.asciidoc\\\"}},\\\"match\\\":\\\"^(\\\\\\\\p{Word}+)(::)(\\\\\\\\S*?)(\\\\\\\\[)((?:\\\\\\\\\\\\\\\\\\\\\\\\]|[^\\\\\\\\]])*?)(\\\\\\\\])$\\\",\\\"name\\\":\\\"markup.macro.block.general.asciidoc\\\"}]},\\\"hard-break-backslash\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.symbol.hard-break.asciidoc\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\S)\\\\\\\\p{Blank}+(\\\\\\\\+ \\\\\\\\\\\\\\\\)$\\\"}]},\\\"horizontal-rule\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^(?:'|<){3,}$|^ {0,3}([-\\\\\\\\*'])( *)\\\\\\\\1\\\\\\\\2\\\\\\\\1$\\\",\\\"name\\\":\\\"constant.other.symbol.horizontal-rule.asciidoc\\\"}]},\\\"image-macro\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.link.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(image|icon):([^:\\\\\\\\[][^\\\\\\\\[]*)\\\\\\\\[((?:\\\\\\\\\\\\\\\\\\\\\\\\]|[^\\\\\\\\]])*?)\\\\\\\\]\\\",\\\"name\\\":\\\"markup.macro.image.asciidoc\\\"}]},\\\"include-directive\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"markup.link.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-reference\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-reference\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.asciidoc\\\"}},\\\"match\\\":\\\"^(include)(::)([^\\\\\\\\[]+)(\\\\\\\\[)(.*?)(\\\\\\\\])$\\\"}]},\\\"inlines\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typographic-quotes\\\"},{\\\"include\\\":\\\"#strong\\\"},{\\\"include\\\":\\\"#monospace\\\"},{\\\"include\\\":\\\"#emphasis\\\"},{\\\"include\\\":\\\"#superscript\\\"},{\\\"include\\\":\\\"#subscript\\\"},{\\\"include\\\":\\\"#mark\\\"},{\\\"include\\\":\\\"#general-block-macro\\\"},{\\\"include\\\":\\\"#anchor-macro\\\"},{\\\"include\\\":\\\"#footnote-macro\\\"},{\\\"include\\\":\\\"#image-macro\\\"},{\\\"include\\\":\\\"#kbd-macro\\\"},{\\\"include\\\":\\\"#link-macro\\\"},{\\\"include\\\":\\\"#stem-macro\\\"},{\\\"include\\\":\\\"#menu-macro\\\"},{\\\"include\\\":\\\"#passthrough-macro\\\"},{\\\"include\\\":\\\"#xref-macro\\\"},{\\\"include\\\":\\\"#attribute-reference\\\"},{\\\"include\\\":\\\"#characters\\\"},{\\\"include\\\":\\\"#bibtex-macro\\\"},{\\\"include\\\":\\\"#bibliography-anchor\\\"}]},\\\"kbd-macro\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(kbd|btn):(\\\\\\\\[)((?:\\\\\\\\\\\\\\\\\\\\\\\\]|[^\\\\\\\\]])+?)(\\\\\\\\])\\\",\\\"name\\\":\\\"markup.macro.kbd.asciidoc\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Admonition\\\",\\\"match\\\":\\\"(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\\\",\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},{\\\"comment\\\":\\\"Paragraph or verbatim\\\",\\\"match\\\":\\\"(comment|example|literal|listing|normal|pass|quote|sidebar|source|verse|abstract|partintro)\\\",\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},{\\\"comment\\\":\\\"Diagram\\\",\\\"match\\\":\\\"(actdiag|blockdiag|ditaa|graphviz|meme|mermaid|nwdiag|packetdiag|pikchr|plantuml|rackdiag|seqdiag|shaape|wavedrom)\\\",\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},{\\\"comment\\\":\\\"Others\\\",\\\"match\\\":\\\"(sect[1-4]|preface|colophon|dedication|glossary|bibliography|synopsis|appendix|index|normal|partintro|music|latex|stem)\\\",\\\"name\\\":\\\"entity.name.function.asciidoc\\\"}]},\\\"line-break\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.line-break.asciidoc\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\S)\\\\\\\\p{Blank}+(\\\\\\\\+)$\\\"}]},\\\"line-break-backslash\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.line-break.asciidoc\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\S)\\\\\\\\p{Blank}+(\\\\\\\\\\\\\\\\)$\\\"}]},\\\"link-macro\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.link.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-reference\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\"}},\\\"match\\\":\\\"(?:^|<|[\\\\\\\\s>\\\\\\\\(\\\\\\\\)\\\\\\\\[\\\\\\\\];])((?<!\\\\\\\\\\\\\\\\)(?:https?|file|ftp|irc)://[^\\\\\\\\s\\\\\\\\[\\\\\\\\]<]*[^\\\\\\\\s.,\\\\\\\\[\\\\\\\\]<\\\\\\\\)])(?:\\\\\\\\[((?:\\\\\\\\\\\\\\\\\\\\\\\\]|[^\\\\\\\\]])*?)\\\\\\\\])?\\\",\\\"name\\\":\\\"markup.other.url.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.substitution.attribute-reference.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\"}},\\\"match\\\":\\\"(?:^|<|[\\\\\\\\p{Blank}>\\\\\\\\(\\\\\\\\)\\\\\\\\[\\\\\\\\];])((?<!\\\\\\\\\\\\\\\\)\\\\\\\\{uri-\\\\\\\\w+(?:[\\\\\\\\-]\\\\\\\\w+)*(?<!\\\\\\\\\\\\\\\\)\\\\\\\\})(?:\\\\\\\\[((?:\\\\\\\\\\\\\\\\\\\\\\\\]|[^\\\\\\\\]])*?)\\\\\\\\])\\\",\\\"name\\\":\\\"markup.other.url.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.link.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-reference\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(link|mailto):([^\\\\\\\\s\\\\\\\\[]+)(?:\\\\\\\\[((?:\\\\\\\\\\\\\\\\\\\\\\\\]|[^\\\\\\\\]])*?)\\\\\\\\])\\\",\\\"name\\\":\\\"markup.other.url.asciidoc\\\"},{\\\"match\\\":\\\"\\\\\\\\p{Word}[\\\\\\\\p{Word}.%+-]*(@)\\\\\\\\p{Alnum}[\\\\\\\\p{Alnum}.-]*(\\\\\\\\.)\\\\\\\\p{Alpha}{2,4}\\\\\\\\b\\\",\\\"name\\\":\\\"markup.link.email.asciidoc\\\"}]},\\\"list\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.list.bullet.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.todo.box.asciidoc\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(-)\\\\\\\\p{Blank}(\\\\\\\\[[\\\\\\\\p{Blank}\\\\\\\\*x]\\\\\\\\])(?=\\\\\\\\p{Blank})\\\",\\\"name\\\":\\\"markup.todo.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.list.bullet.asciidoc\\\"}},\\\"match\\\":\\\"^\\\\\\\\p{Blank}*(-|\\\\\\\\*{1,5}|\\\\\\\\u2022{1,5})(?=\\\\\\\\p{Blank})\\\",\\\"name\\\":\\\"markup.list.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.list.bullet.asciidoc\\\"}},\\\"match\\\":\\\"^\\\\\\\\p{Blank}*(\\\\\\\\.{1,5}|\\\\\\\\d+\\\\\\\\.|[a-zA-Z]\\\\\\\\.|[IVXivx]+\\\\\\\\))(?=\\\\\\\\p{Blank})\\\",\\\"name\\\":\\\"markup.list.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#link-macro\\\"},{\\\"include\\\":\\\"#attribute-reference\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"markup.list.bullet.asciidoc\\\"}},\\\"match\\\":\\\"^\\\\\\\\p{Blank}*(.*?\\\\\\\\S)(:{2,4}|;;)($|\\\\\\\\p{Blank}+)\\\",\\\"name\\\":\\\"markup.heading.list.asciidoc\\\"}]},\\\"listing-paragraph\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(listing)((?:,|#|\\\\\\\\.|%)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.block.listing.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(listing)((?:,|#|\\\\\\\\.|%)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\"},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\"},{\\\"include\\\":\\\"#inlines\\\"}]}]},\\\"literal-paragraph\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(literal)((?:,|#|\\\\\\\\.|%)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.block.literal.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(literal)((?:,|#|\\\\\\\\.|%)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\.{4,})$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\"},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\"},{\\\"include\\\":\\\"#inlines\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4,})$\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"name\\\":\\\"markup.block.literal.asciidoc\\\"}]},\\\"mark\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.mark.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)(\\\\\\\\[[^\\\\\\\\]]+?\\\\\\\\])((##)(.+?)(##))\\\",\\\"name\\\":\\\"markup.mark.unconstrained.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.highlight.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)((##)(.+?)(##))\\\",\\\"name\\\":\\\"markup.mark.unconstrained.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.mark.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\\\\\\\\\;:\\\\\\\\p{Word}#])(\\\\\\\\[[^\\\\\\\\]]+?\\\\\\\\])((#)(\\\\\\\\S|\\\\\\\\S.*?\\\\\\\\S)(#)(?!\\\\\\\\p{Word}))\\\",\\\"name\\\":\\\"markup.mark.constrained.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.highlight.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\\\\\\\\\;:\\\\\\\\p{Word}#])(\\\\\\\\[[^\\\\\\\\]]+?\\\\\\\\])?((#)(\\\\\\\\S|\\\\\\\\S.*?\\\\\\\\S)(#)(?!\\\\\\\\p{Word}))\\\",\\\"name\\\":\\\"markup.mark.constrained.asciidoc\\\"}]},\\\"menu-macro\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.link.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(menu):(\\\\\\\\p{Word}|\\\\\\\\p{Word}.*?\\\\\\\\S)\\\\\\\\[\\\\\\\\p{Blank}*(.+?)?\\\\\\\\]\\\",\\\"name\\\":\\\"markup.other.menu.asciidoc\\\"}]},\\\"monospace\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.raw.monospace.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\[.+?\\\\\\\\])?((``)(.+?)(``))\\\",\\\"name\\\":\\\"markup.monospace.unconstrained.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.raw.monospace.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\\\\\\\\\;:\\\\\\\\p{Word}\\\\\\\"'`])(\\\\\\\\[.+?\\\\\\\\])?((`)(\\\\\\\\S|\\\\\\\\S.*?\\\\\\\\S)(`))(?![\\\\\\\\p{Word}\\\\\\\"'`])\\\",\\\"name\\\":\\\"markup.monospace.constrained.asciidoc\\\"}]},\\\"open-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(-{2})$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.symbol.asciidoc\\\"}},\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.symbol.asciidoc\\\"}},\\\"name\\\":\\\"markup.block.open.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"passthrough-macro\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.asciidoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"support.constant.asciidoc\\\"}},\\\"match\\\":\\\"(?:(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\[([^\\\\\\\\]]+?)\\\\\\\\]))?(?:\\\\\\\\\\\\\\\\{0,2})(?<delim>\\\\\\\\+{2,3}|\\\\\\\\${2})(.*?)(\\\\\\\\k<delim>)\\\",\\\"name\\\":\\\"markup.macro.inline.passthrough.asciidoc\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(pass:)([a-z,]*)(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"}},\\\"contentName\\\":\\\"string.unquoted.asciidoc\\\",\\\"end\\\":\\\"\\\\\\\\]|^$\\\",\\\"name\\\":\\\"markup.macro.inline.passthrough.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]}]},\\\"passthrough-paragraph\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(pass)((?:,|#|\\\\\\\\.|%)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\+\\\\\\\\+)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.block.passthrough.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(pass)((?:,|#|\\\\\\\\.|%)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\+{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"passthrough block\\\",\\\"end\\\":\\\"(?<=\\\\\\\\1)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"end\\\":\\\"(?<=\\\\\\\\1)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]}]},{\\\"begin\\\":\\\"(^\\\\\\\\+{4,}$)\\\",\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"name\\\":\\\"markup.block.passthrough.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]}]},\\\"quote-paragraph\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(quote|verse)((?:,|#|\\\\\\\\.|%)([^,\\\\\\\\]]+))*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=____|\\\\\\\"\\\\\\\"|--)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.italic.quotes.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(quote|verse)((?:,|#|\\\\\\\\.|%)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"begin\\\":\\\"^([_]{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"quotes block\\\",\\\"end\\\":\\\"(?<=\\\\\\\\1)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#list\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\"{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"air quotes\\\",\\\"end\\\":\\\"(?<=\\\\\\\\1)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#list\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"end\\\":\\\"(?<=\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#list\\\"}]}]},{\\\"begin\\\":\\\"^(\\\\\\\"\\\\\\\")$\\\",\\\"end\\\":\\\"^\\\\\\\\1$\\\",\\\"name\\\":\\\"markup.italic.quotes.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#list\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\p{Blank}*(>) \\\",\\\"end\\\":\\\"^\\\\\\\\p{Blank}*?$\\\",\\\"name\\\":\\\"markup.italic.quotes.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#list\\\"}]}]},\\\"sidebar-paragraph\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(sidebar)((?:,|#|\\\\\\\\.|%)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\*\\\\\\\\*\\\\\\\\*\\\\\\\\*)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.block.sidebar.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(sidebar)((?:,|#|\\\\\\\\.|%)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\*{4,})$\\\",\\\"comment\\\":\\\"sidebar block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(-{2})$\\\",\\\"comment\\\":\\\"open block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#inlines\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\*{4,})$\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"name\\\":\\\"markup.block.sidebar.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"source-asciidoctor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(c))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.c.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(c))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.c\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.c\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.c\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.c\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.c\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.c\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(clojure))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.clojure.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(clojure))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.clojure\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.clojure\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.clojure\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.clojure\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.clojure\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.clojure\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(coffee-?(script)?))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.coffee.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(coffee-?(script)?))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.coffee\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.coffee\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.coffee\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.coffee\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.coffee\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.coffee\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(c(pp|\\\\\\\\+\\\\\\\\+)))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.cpp.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(c(pp|\\\\\\\\+\\\\\\\\+)))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.cpp\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.cpp\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.cpp\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.cpp\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.cpp\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.cpp\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(css))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.css.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(css))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.css\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.css\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.css\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.css\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(cs(harp)?))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.cs.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(cs(harp)?))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.cs\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.cs\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.cs\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.cs\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.cs\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.cs\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(diff|patch|rej))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.diff.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(diff|patch|rej))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.diff\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.diff\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.diff\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.diff\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.diff\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.diff\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(docker(file)?))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.dockerfile.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(docker(file)?))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.dockerfile\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.dockerfile\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.dockerfile\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.dockerfile\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.dockerfile\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.dockerfile\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(elixir))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.elixir.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(elixir))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.elixir\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.elixir\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.elixir\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.elixir\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.elixir\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.elixir\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(elm))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.elm.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(elm))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.elm\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.elm\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.elm\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.elm\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.elm\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.elm\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(erlang))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.erlang.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(erlang))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.erlang\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.erlang\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.erlang\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.erlang\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.erlang\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.erlang\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(go(lang)?))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.go.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(go(lang)?))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.go\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.go\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.go\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.go\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(groovy))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.groovy.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(groovy))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.groovy\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.groovy\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.groovy\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.groovy\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.groovy\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.groovy\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(haskell))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.haskell.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(haskell))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.haskell\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.haskell\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.haskell\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.haskell\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.haskell\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.haskell\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(html))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.html.basic.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(html))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"text.embedded.html.basic\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"text.embedded.html.basic\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"text.embedded.html.basic\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(java))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.java.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(java))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.java\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.java\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.java\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.java\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.java\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.java\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(javascript|js))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.js.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(javascript|js))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.js\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.js\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.js\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(json))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.json.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(json))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.json\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.json\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.json\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.json\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.json\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.json\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(jsx))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.js.jsx.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(jsx))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.js.jsx\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.js.jsx\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.js.jsx\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.js.jsx\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.js.jsx\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.js.jsx\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(julia))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.julia.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(julia))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.julia\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.julia\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.julia\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.julia\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.julia\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.julia\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(kotlin|kts?))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.kotlin.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(kotlin|kts?))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.kotlin\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.kotlin\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.kotlin\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.kotlin\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.kotlin\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.kotlin\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(less))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.css.less.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(less))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.css.less\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.css.less\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.css.less\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.css.less\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.css.less\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.css.less\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(make(file)?))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.makefile.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(make(file)?))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.makefile\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.makefile\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.makefile\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.makefile\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.makefile\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.makefile\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(markdown|mdown|md))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.gfm.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(markdown|mdown|md))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.gfm\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.gfm\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.gfm\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.gfm\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.gfm\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.gfm\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(mustache))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.html.mustache.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(mustache))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"text.embedded.html.mustache\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.html.mustache\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"text.embedded.html.mustache\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.html.mustache\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"text.embedded.html.mustache\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.html.mustache\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(objc|objective-c))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.objc.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(objc|objective-c))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.objc\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.objc\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.objc\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.objc\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.objc\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.objc\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(ocaml))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.ocaml.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(ocaml))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.ocaml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.ocaml\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.ocaml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.ocaml\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.ocaml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.ocaml\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(perl))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.perl.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(perl))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.perl\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.perl\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.perl\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.perl\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.perl\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.perl\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(perl6))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.perl6.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(perl6))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.perl6\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.perl6\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.perl6\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.perl6\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.perl6\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.perl6\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(php))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.html.php.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(php))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"text.embedded.html.php\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.html.php\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"text.embedded.html.php\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.html.php\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"text.embedded.html.php\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.html.php\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(properties))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.asciidoc.properties.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(properties))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.asciidoc.properties\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.asciidoc.properties\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.asciidoc.properties\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.asciidoc.properties\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.asciidoc.properties\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.asciidoc.properties\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(py(thon)?))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.python.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(py(thon)?))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.python\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.python\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.python\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.python\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.python\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.python\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(r))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.r.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(r))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.r\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.r\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.r\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.r\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.r\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.r\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(ruby|rb))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.ruby.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(ruby|rb))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.ruby\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.ruby\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.ruby\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.ruby\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(rust|rs))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.rust.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(rust|rs))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.rust\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.rust\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.rust\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.rust\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.rust\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.rust\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(sass))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.sass.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(sass))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.sass\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.sass\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.sass\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.sass\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.sass\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.sass\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(scala))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.scala.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(scala))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.scala\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.scala\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.scala\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.scala\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.scala\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.scala\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(scss))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.css.scss.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(scss))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.css.scss\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.css.scss\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.css.scss\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.css.scss\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.css.scss\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.css.scss\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(sh|bash|shell))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.shell.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(sh|bash|shell))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.shell\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.shell\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.shell\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.shell\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.shell\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.shell\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(sql))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.sql.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(sql))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.sql\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.sql\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.sql\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.sql\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(swift))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.swift.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(swift))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.swift\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.swift\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.swift\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.swift\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.swift\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.swift\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(toml))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.toml.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(toml))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.toml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.toml\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.toml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.toml\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.toml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.toml\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(typescript|ts))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.ts.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(typescript|ts))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.ts\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.ts\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.ts\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.ts\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.ts\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.ts\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(xml))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.xml.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(xml))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"text.embedded.xml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.xml\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"text.embedded.xml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.xml\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"text.embedded.xml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"text.xml\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(ya?ml))((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"name\\\":\\\"markup.code.yaml.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)(?:,|#)\\\\\\\\p{Blank}*(?i:(ya?ml))((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"contentName\\\":\\\"source.embedded.yaml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.yaml\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"contentName\\\":\\\"source.embedded.yaml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.yaml\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"contentName\\\":\\\"source.embedded.yaml\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"},{\\\"include\\\":\\\"source.yaml\\\"}]}]},{\\\"begin\\\":\\\"(?=(?>(?:^\\\\\\\\[(source)((?:,|#)[^\\\\\\\\]]+)*\\\\\\\\]$)))\\\",\\\"end\\\":\\\"((?<=--|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\.)$|^\\\\\\\\p{Blank}*$)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.heading.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-attribute-inner\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\[(source)((?:,|#)([^,\\\\\\\\]]+))*\\\\\\\\]$\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"listing block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"name\\\":\\\"markup.raw.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"}]},{\\\"begin\\\":\\\"^(-{2})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"open block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"name\\\":\\\"markup.raw.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\.{4})\\\\\\\\s*$\\\",\\\"comment\\\":\\\"literal block\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"name\\\":\\\"markup.raw.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"}]}]},{\\\"begin\\\":\\\"^(-{4,})\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.raw.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"#include-directive\\\"}]}]},\\\"source-markdown\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(c))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.c\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.c.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.c\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(clojure))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.clojure\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.clojure.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.clojure\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(coffee-?(script)?))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.coffee\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.coffee.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.coffee\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(c(pp|\\\\\\\\+\\\\\\\\+)))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.cpp\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.cpp.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.cpp\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(css))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.css\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.css.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(cs(harp)?))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.cs\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.cs.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.cs\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(diff|patch|rej))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.diff\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.diff.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.diff\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(docker(file)?))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.dockerfile\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.dockerfile.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.dockerfile\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(elixir))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.elixir\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.elixir.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.elixir\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(elm))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.elm\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.elm.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.elm\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(erlang))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.erlang\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.erlang.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.erlang\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(go(lang)?))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.go\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.go.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(groovy))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.groovy\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.groovy.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.groovy\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(haskell))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.haskell\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.haskell.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.haskell\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(html))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"text.embedded.html.basic\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.html.basic.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(java))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.java\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.java.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.java\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(javascript|js))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.js\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.js.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(json))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.json\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.json.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.json\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(jsx))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.js.jsx\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.js.jsx.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.js.jsx\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(julia))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.julia\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.julia.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.julia\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(kotlin|kts?))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.kotlin\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.kotlin.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.kotlin\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(less))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.css.less\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.css.less.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.css.less\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(make(file)?))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.makefile\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.makefile.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.makefile\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(markdown|mdown|md))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.gfm\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.gfm.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.gfm\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(mustache))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"text.embedded.html.mustache\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.html.mustache.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"text.html.mustache\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(objc|objective-c))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.objc\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.objc.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.objc\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(ocaml))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.ocaml\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.ocaml.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.ocaml\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(perl))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.perl\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.perl.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.perl\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(perl6))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.perl6\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.perl6.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.perl6\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(php))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"text.embedded.html.php\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.html.php.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"text.html.php\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(properties))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.asciidoc.properties\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.asciidoc.properties.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.asciidoc.properties\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(py(thon)?))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.python\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.python.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.python\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(r))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.r\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.r.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.r\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(ruby|rb))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.ruby\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.ruby.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(rust|rs))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.rust\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.rust.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.rust\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(sass))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.sass\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.sass.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.sass\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(scala))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.scala\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.scala.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.scala\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(scss))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.css.scss\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.css.scss.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.css.scss\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(sh|bash|shell))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.shell\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.shell.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.shell\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(sql))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.sql\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.sql.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(swift))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.swift\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.swift.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.swift\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(toml))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.toml\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.toml.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.toml\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(typescript|ts))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.ts\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.ts.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.ts\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(xml))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"text.embedded.xml\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.xml.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"text.xml\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,})\\\\\\\\s*(?i:(ya?ml))\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"contentName\\\":\\\"source.embedded.yaml\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.code.yaml.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"},{\\\"include\\\":\\\"source.yaml\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(`{3,}).*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\1\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.asciidoc\\\"}},\\\"name\\\":\\\"markup.raw.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-callout\\\"}]}]},\\\"source-paragraphs\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#source-asciidoctor\\\"},{\\\"include\\\":\\\"#source-markdown\\\"}]},\\\"stem-macro\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(stem|(?:latex|ascii)math):([a-z,]*)(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"}},\\\"contentName\\\":\\\"string.unquoted.asciidoc\\\",\\\"end\\\":\\\"\\\\\\\\]|^$\\\",\\\"name\\\":\\\"markup.macro.inline.stem.asciidoc\\\"}]},\\\"strong\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)(\\\\\\\\[.+?\\\\\\\\])?((\\\\\\\\*\\\\\\\\*)(.+?)(\\\\\\\\*\\\\\\\\*))\\\",\\\"name\\\":\\\"markup.strong.unconstrained.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\\\\\\\\\;:\\\\\\\\p{Word}\\\\\\\\*])(\\\\\\\\[.+?\\\\\\\\])?((\\\\\\\\*)(\\\\\\\\S|\\\\\\\\S.*?\\\\\\\\S)(\\\\\\\\*)(?!\\\\\\\\p{Word}))\\\",\\\"name\\\":\\\"markup.strong.constrained.asciidoc\\\"}]},\\\"subscript\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.sub.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.sub.subscript.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\[.+?\\\\\\\\])?((~)(\\\\\\\\S+?)(~))\\\",\\\"name\\\":\\\"markup.subscript.asciidoc\\\"}]},\\\"superscript\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.super.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.super.superscript.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\[.+?\\\\\\\\])?((\\\\\\\\^)(\\\\\\\\S+?)(\\\\\\\\^))\\\",\\\"name\\\":\\\"markup.superscript.asciidoc\\\"}]},\\\"table-csv\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(,===)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.table.delimiter.asciidoc\\\"}},\\\"contentName\\\":\\\"string.unquoted.asciidoc\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.table.delimiter.asciidoc\\\"}},\\\"name\\\":\\\"markup.table.csv.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.csv\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.table.cell.delimiter.asciidoc\\\"}},\\\"comment\\\":\\\"cell separator\\\",\\\"match\\\":\\\",\\\"},{\\\"include\\\":\\\"#general-block-macro\\\"}]}]},\\\"table-dsv\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(:===)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.table.delimiter.asciidoc\\\"}},\\\"contentName\\\":\\\"string.unquoted.asciidoc\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.table.delimiter.asciidoc\\\"}},\\\"name\\\":\\\"markup.table.dsv.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.table.cell.delimiter.asciidoc\\\"}},\\\"comment\\\":\\\"cell separator\\\",\\\"match\\\":\\\":\\\"},{\\\"include\\\":\\\"#general-block-macro\\\"}]}]},\\\"table-nested\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(!===)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.table.delimiter.asciidoc\\\"}},\\\"contentName\\\":\\\"markup.table.content.asciidoc\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.table.delimiter.asciidoc\\\"}},\\\"name\\\":\\\"markup.table.nested.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.table.cell.delimiter.asciidoc\\\"}},\\\"comment\\\":\\\"cell separator and attributes\\\",\\\"match\\\":\\\"(^|[^\\\\\\\\p{Blank}\\\\\\\\\\\\\\\\]*)(?<!\\\\\\\\\\\\\\\\)(!)\\\"},{\\\"include\\\":\\\"#tables-includes\\\"}]}]},\\\"table-psv\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(\\\\\\\\|===)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.table.delimiter.asciidoc\\\"}},\\\"contentName\\\":\\\"markup.table.content.asciidoc\\\",\\\"end\\\":\\\"^(\\\\\\\\1)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.table.delimiter.asciidoc\\\"}},\\\"name\\\":\\\"markup.table.asciidoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.table.cell.delimiter.asciidoc\\\"}},\\\"comment\\\":\\\"cell separator and attributes\\\",\\\"match\\\":\\\"(^|[^\\\\\\\\p{Blank}\\\\\\\\\\\\\\\\]*)(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\|)\\\"},{\\\"include\\\":\\\"#tables-includes\\\"}]}]},\\\"tables\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#table-psv\\\"},{\\\"include\\\":\\\"#table-nested\\\"},{\\\"include\\\":\\\"#table-csv\\\"},{\\\"include\\\":\\\"#table-dsv\\\"}]},\\\"tables-includes\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#callout-list-item\\\"},{\\\"include\\\":\\\"#attribute-entry\\\"},{\\\"include\\\":\\\"#block-title\\\"},{\\\"include\\\":\\\"#explicit-paragraph\\\"},{\\\"include\\\":\\\"#section\\\"},{\\\"include\\\":\\\"#blocks\\\"},{\\\"include\\\":\\\"#list\\\"},{\\\"include\\\":\\\"#inlines\\\"},{\\\"include\\\":\\\"#line-break\\\"}]},\\\"titles\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^((?:=|#){6})([\\\\\\\\p{Blank}]+)(?=\\\\\\\\S+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.heading.marker.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.heading.space.asciidoc\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"markup.heading.heading-5.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^((?:=|#){5})([\\\\\\\\p{Blank}]+)(?=\\\\\\\\S+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.heading.marker.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.heading.space.asciidoc\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"markup.heading.heading-4.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^((?:=|#){4})([\\\\\\\\p{Blank}]+)(?=\\\\\\\\S+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.heading.marker.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.heading.space.asciidoc\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"markup.heading.heading-3.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^((?:=|#){3})([\\\\\\\\p{Blank}]+)(?=\\\\\\\\S+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.heading.marker.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.heading.space.asciidoc\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"markup.heading.heading-2.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^((?:=|#){2})([\\\\\\\\p{Blank}]+)(?=\\\\\\\\S+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.heading.marker.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.heading.space.asciidoc\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"markup.heading.heading-1.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^((?:=|#){1})([\\\\\\\\p{Blank}]+)(?=\\\\\\\\S+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.heading.marker.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.heading.space.asciidoc\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"markup.heading.heading-0.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"typographic-quotes\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"comment\\\":\\\"double-quoted\\\",\\\"match\\\":\\\"(?:^|(?<!\\\\\\\\p{Word}|;|:))(\\\\\\\\[([^\\\\\\\\]]+?)\\\\\\\\])?(\\\\\\\"`)(\\\\\\\\S|\\\\\\\\S.*?\\\\\\\\S)(`\\\\\\\")(?!\\\\\\\\p{Word})\\\",\\\"name\\\":\\\"markup.italic.quote.typographic-quotes.asciidoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.asciidoc\\\"}},\\\"comment\\\":\\\"single-quoted\\\",\\\"match\\\":\\\"(?:^|(?<!\\\\\\\\p{Word}|;|:))(\\\\\\\\[([^\\\\\\\\]]+?)\\\\\\\\])?('`)(\\\\\\\\S|\\\\\\\\S.*?\\\\\\\\S)(`')(?!\\\\\\\\p{Word})\\\",\\\"name\\\":\\\"markup.italic.quote.typographic-quotes.asciidoc\\\"}]},\\\"xref-macro\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.unquoted.asciidoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.asciidoc\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(<<)([\\\\\\\\p{Word}\\\\\\\":./]+,)?(.*?)(>>))\\\",\\\"name\\\":\\\"markup.reference.xref.asciidoc\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(xref:)([\\\\\\\\p{Word}\\\\\\\":.\\\\\\\\/].*?)(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asciidoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.meta.attribute-list.asciidoc\\\"}},\\\"contentName\\\":\\\"string.unquoted.asciidoc\\\",\\\"end\\\":\\\"\\\\\\\\]|^$\\\",\\\"name\\\":\\\"markup.reference.xref.asciidoc\\\"}]}},\\\"scopeName\\\":\\\"text.asciidoc\\\",\\\"embeddedLangs\\\":[],\\\"aliases\\\":[\\\"adoc\\\"],\\\"embeddedLangsLazy\\\":[\\\"html\\\",\\\"yaml\\\",\\\"csv\\\",\\\"c\\\",\\\"clojure\\\",\\\"coffee\\\",\\\"cpp\\\",\\\"css\\\",\\\"csharp\\\",\\\"diff\\\",\\\"docker\\\",\\\"elixir\\\",\\\"elm\\\",\\\"erlang\\\",\\\"go\\\",\\\"groovy\\\",\\\"haskell\\\",\\\"java\\\",\\\"javascript\\\",\\\"json\\\",\\\"jsx\\\",\\\"julia\\\",\\\"kotlin\\\",\\\"less\\\",\\\"make\\\",\\\"objective-c\\\",\\\"ocaml\\\",\\\"perl\\\",\\\"python\\\",\\\"r\\\",\\\"ruby\\\",\\\"rust\\\",\\\"sass\\\",\\\"scala\\\",\\\"scss\\\",\\\"shellscript\\\",\\\"sql\\\",\\\"swift\\\",\\\"toml\\\",\\\"typescript\\\",\\\"xml\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Assembly\\\",\\\"fileTypes\\\":[\\\"asm\\\",\\\"nasm\\\",\\\"yasm\\\",\\\"inc\\\",\\\"s\\\"],\\\"name\\\":\\\"asm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#registers\\\"},{\\\"include\\\":\\\"#mnemonics\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#entities\\\"},{\\\"include\\\":\\\"#support\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#preprocessor\\\"},{\\\"include\\\":\\\"#strings\\\"}],\\\"repository\\\":{\\\"comments\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(;|(^|\\\\\\\\s)#\\\\\\\\s).*$\\\",\\\"name\\\":\\\"comment.line\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*[\\\\\\\\#%]\\\\\\\\s*if\\\\\\\\s+0\\\\\\\\b\\\",\\\"end\\\":\\\"^\\\\\\\\s*[\\\\\\\\#%]\\\\\\\\s*endif\\\\\\\\b\\\",\\\"name\\\":\\\"comment.preprocessor\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b0[by](?:[01][01_]*)\\\\\\\\.(?:(?:[01][01_]*)?(?:p[+-]?(?:[0-9][0-9_]*))?\\\\\\\\b)?\\\",\\\"name\\\":\\\"constant.numeric.binary.floating-point.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b0[by](?:[01][01_]*)(?:p[+-]?(?:[0-9][0-9_]*))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.binary.floating-point.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b0[oq](?:[0-7][0-7_]*)\\\\\\\\.(?:(?:[0-7][0-7_]*)?(?:p[+-]?(?:[0-9][0-9_]*))?\\\\\\\\b)?\\\",\\\"name\\\":\\\"constant.numeric.octal.floating-point.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b0[oq](?:[0-7][0-7_]*)(?:p[+-]?(?:[0-9][0-9_]*))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.octal.floating-point.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:0[dt])?(?:[0-9][0-9_]*)\\\\\\\\.(?:(?:[0-9][0-9_]*)?(?:e[+-]?(?:[0-9][0-9_]*))?\\\\\\\\b)?\\\",\\\"name\\\":\\\"constant.numeric.decimal.floating-point.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:[0-9][0-9_]*)(?:e[+-]?(?:[0-9][0-9_]*))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.floating-point.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:[0-9][0-9_]*)p(?:[0-9][0-9_]*)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.packed-bcd.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b0[xh](?:[[:xdigit:]][[:xdigit:]_]*)\\\\\\\\.(?:(?:[[:xdigit:]][[:xdigit:]_]*)?(?:p[+-]?(?:[0-9][0-9_]*))?\\\\\\\\b)?\\\",\\\"name\\\":\\\"constant.numeric.hex.floating-point.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b0[xh](?:[[:xdigit:]][[:xdigit:]_]*)(?:p[+-]?(?:[0-9][0-9_]*))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.floating-point.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\$[0-9]\\\\\\\\_?(?:[[:xdigit:]][[:xdigit:]_]*)?\\\\\\\\.(?:(?:[[:xdigit:]][[:xdigit:]_]*)?(?:p[+-]?(?:[0-9][0-9_]*))?\\\\\\\\b)?\\\",\\\"name\\\":\\\"constant.numeric.hex.floating-point.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\$[0-9]\\\\\\\\_?(?:[[:xdigit:]][[:xdigit:]_]*)(?:p[+-]?(?:[0-9][0-9_]*))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.floating-point.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:(?:0[by](?:[01][01_]*))|(?:(?:[01][01_]*)[by]))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.binary.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:(?:0[oq](?:[0-7][0-7_]*))|(?:(?:[0-7][0-7_]*)[oq]))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.octal.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:(?:0[dt](?:[0-9][0-9_]*))|(?:(?:[0-9][0-9_]*)[dt]?))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)(?:\\\\\\\\$[0-9]\\\\\\\\_?(?:[[:xdigit:]][[:xdigit:]_]*)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:(?:0[xh](?:[[:xdigit:]][[:xdigit:]_]*))|(?:(?:[[:xdigit:]][[:xdigit:]_]*)[hxHX]))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.asm.x86_64\\\"}]},\\\"entities\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"((section|segment)\\\\\\\\s+)?\\\\\\\\.((ro)?data|bss|text)\\\",\\\"name\\\":\\\"entity.name.section\\\"},{\\\"match\\\":\\\"^\\\\\\\\.?(globa?l|extern|required)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.directive\\\"},{\\\"match\\\":\\\"(\\\\\\\\$\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"text.variable\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.asm.x86_64 storage.modifier.asm.x86_64\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.special.asm.x86_64\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.asm.x86_64\\\"}},\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\.@)((?:[[:alpha:]_?](?:[[:alnum:]_$#@~.?]*)))(?:(\\\\\\\\:)?|\\\\\\\\b)\\\",\\\"name\\\":\\\"entity.name.function.asm.x86_64\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.asm.x86_64 storage.modifier.asm.x86_64\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.asm.x86_64\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.asm.x86_64\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)?|\\\\\\\\b)((?:[[:alpha:]_?](?:[[:alnum:]_$#@~.?]*)))(?:(\\\\\\\\:))\\\",\\\"name\\\":\\\"entity.name.function.asm.x86_64\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.asm.x86_64 storage.modifier.asm.x86_64\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.asm.x86_64\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.asm.x86_64\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)([0-9]+(?:[[:alnum:]_$#@~.?]*))(?:(\\\\\\\\:)?|\\\\\\\\b)\\\",\\\"name\\\":\\\"entity.name.function.asm.x86_64\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.asm.x86_64 storage.modifier.asm.x86_64\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.entity.name.function.asm.x86_64\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.asm.x86_64\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)?|\\\\\\\\b)([0-9$@~](?:[[:alnum:]_$#@~.?]*))(?:(\\\\\\\\:))\\\",\\\"name\\\":\\\"invalid.illegal.entity.name.function.asm.x86_64\\\"}]},\\\"mnemonics\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#mnemonics-general-purpose\\\"},{\\\"include\\\":\\\"#mnemonics-fpu\\\"},{\\\"include\\\":\\\"#mnemonics-mmx\\\"},{\\\"include\\\":\\\"#mnemonics-sse\\\"},{\\\"include\\\":\\\"#mnemonics-sse2\\\"},{\\\"include\\\":\\\"#mnemonics-sse3\\\"},{\\\"include\\\":\\\"#mnemonics-sse4\\\"},{\\\"include\\\":\\\"#mnemonics-aesni\\\"},{\\\"include\\\":\\\"#mnemonics-avx\\\"},{\\\"include\\\":\\\"#mnemonics-avx2\\\"},{\\\"include\\\":\\\"#mnemonics-tsx\\\"},{\\\"include\\\":\\\"#mnemonics-sha\\\"},{\\\"include\\\":\\\"#mnemonics-avx512\\\"},{\\\"include\\\":\\\"#mnemonics-system\\\"},{\\\"include\\\":\\\"#mnemonics-64bit\\\"},{\\\"include\\\":\\\"#mnemonics-vmx\\\"},{\\\"include\\\":\\\"#mnemonics-smx\\\"},{\\\"include\\\":\\\"#mnemonics-mpx\\\"},{\\\"include\\\":\\\"#mnemonics-sgx\\\"},{\\\"include\\\":\\\"#mnemonics-cet\\\"},{\\\"include\\\":\\\"#mnemonics-amx\\\"},{\\\"include\\\":\\\"#mnemonics-uirq\\\"},{\\\"include\\\":\\\"#mnemonics-esi\\\"},{\\\"include\\\":\\\"#mnemonics-intel-manual-listing\\\"},{\\\"include\\\":\\\"#mnemonics-intel-isa-xeon-phi\\\"},{\\\"include\\\":\\\"#mnemonics-intel-isa-keylocker\\\"},{\\\"include\\\":\\\"#mnemonics-supplemental-amd\\\"},{\\\"include\\\":\\\"#mnemonics-supplemental-cyrix\\\"},{\\\"include\\\":\\\"#mnemonics-supplemental-via\\\"},{\\\"include\\\":\\\"#mnemonics-undocumented\\\"},{\\\"include\\\":\\\"#mnemonics-future-intel\\\"},{\\\"include\\\":\\\"#mnemonics-pseudo-ops\\\"}]},\\\"mnemonics-64bit\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(cdqe|cqo|(cmp|lod|mov|sto)sq|cmpxchg16b|mov(ntq|sxd)|scasq|swapgs|sys(call|ret))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.64-bit-mode\\\"}]},\\\"mnemonics-aesni\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(aes((dec|enc)(last)?|imc|keygenassist)|pclmulqdq)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.aesni\\\"}]},\\\"mnemonics-amx\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b((ld|st)tilecfg|tdpb(f16ps|[su]{2}d)|tile(loadd(t1)?|release|stored|zero))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.amx\\\"}]},\\\"mnemonics-avx\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(v((test|permil|maskmov)p[ds]|zero(all|upper)|(perm2|insert|extract|broadcast)f128|broadcasts[ds]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vaes((dec|enc)(last)?|imc|keygenassist)|vpclmulqdq)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.aes\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(v((cmp[ps]|u?comis)[ds]|pcmp([ei]str[im]|(eq|gt)[bdqw])))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.comparison\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(v(cvt(dq2pd|dq2ps|pd2ps|ps2pd|sd2ss|si2sd|si2ss|ss2sd|t?(pd2dq|ps2dq|sd2si|ss2si))))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.conversion\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vh((add|sub)p[ds])|vph((add|sub)([dw]|sw)|minposuw))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.horizontal-packed-arithmetic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(v((andn?|x?or)p[ds]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.logical\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(v(mov(([ahl]|msk|nt|u)p[ds]|(hl|lh)ps|s([ds]|[hl]dup)|q)))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.mov\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(v((add|div|mul|sub|max|min|round|sqrt)[ps][ds]|(addsub|dp)p[ds]|(rcp|rsqrt)[ps]s))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.packed-arithmetic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(v(pack[su]s(dw|wb)|punpck[hl](bw|dq|wd|qdq)|unpck[hl]p[ds]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.packed-conversion\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vp(shuf([bd]|[hl]w))|vshufp[ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.packed-shuffle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vp((abs|sign|(max|min)[su])[bdw]|(add|sub)([bdqw]|u?s[bw])|avg[bw]|extr[bdqw]|madd(wd|ubsw)|mul(hu?w|hrsw|l[dw]|u?dq)|sadbw))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.supplemental.arithmetic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vp(andn?|x?or))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.supplemental.logical\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vpblend(vb|w))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.supplemental.blending\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vpmov(mskb|[sz]x(b[dqw]|w[dq]|dq)))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.supplemental.mov\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vp(insr[bdqw]|sll(dq|[dqw])|srl(dq)))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.simd-integer\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vp(sra[dwq]|srl[dqw]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.shift-and-rotate\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vblendv?p[ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.packed-blending\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vp(test|alignr))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.packed-other\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vmov(d(dup|qa|qu)?))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.simd-integer.mov\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(v((extract|insert)ps|lddqu|(ld|st)mxcsr|mpsadbw))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.other\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(v(maskmovdqu|movntdqa?))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx.promoted.cacheability-control\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vcvt(ph2ps|ps2ph))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.16-bit-floating-point-conversion\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vfn?m((add|sub)(132|213|231)[ps][ds])|vfm((addsub|subadd)(132|213|231)p[ds]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.fma\\\"}]},\\\"mnemonics-avx2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(v((broadcast|extract|insert|perm2)i128|pmaskmov[dq]|perm([dsq]|p[sd])))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx2.promoted.simd\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vpbroadcast[bdqw])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx2.promoted.packed\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vp(blendd|s[lr]lv[dq]|sravd))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx2.blend\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vp?gather[dq][dq]|vgather([dq]|dq)p[ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx2.gather\\\"}]},\\\"mnemonics-avx512\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#mnemonics-avx512f\\\"},{\\\"include\\\":\\\"#mnemonics-avx512dq\\\"},{\\\"include\\\":\\\"#mnemonics-avx512bw\\\"},{\\\"include\\\":\\\"#mnemonics-avx512-opmask\\\"},{\\\"include\\\":\\\"#mnemonics-avx512er\\\"},{\\\"include\\\":\\\"#mnemonics-avx512pf\\\"},{\\\"include\\\":\\\"#mnemonics-avx512fp16\\\"}]},\\\"mnemonics-avx512-opmask\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bk(add|andn?|mov|not|or(test)?|shift[lr]|test|xn?or)[bdqw]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.opmask\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bkunpck(bw|wd|dq)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.opmask.unpack\\\"}]},\\\"mnemonics-avx512bw\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bv(dbpsadbw|movdqu(8|16))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.bw.dbpsad\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(blendm|cmpu?|movm2)[bw]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.bw.pblend\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvperm(w|i2[bw])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.bw.perpmi2\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(mov([bw]2m|u?swb))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.bw.pmov\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(s(ll|ra|rl)vw|testn?m[bw])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.bw.psll\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(broadcastm(b2q|w2d)|(conflict|lzcnt)[dq])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.bw.broadcast\\\"}]},\\\"mnemonics-avx512dq\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bvcvt(t?p[ds]2u?qq|uqq2p[ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.dq.cvt\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv((extract|insert)[fi]64x2|(fpclass|range|reduce)[ps][ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.dq.extract\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(mov(m2[dq]|b2d|q2m)|mullq)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.dq.pmov\\\"}]},\\\"mnemonics-avx512er\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bv(exp2|rcp28|rsqrt28)[ps][ds]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.er\\\"}]},\\\"mnemonics-avx512f\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bv(align[dq]|(blendm|compress)p[ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.f.align\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv(cvtt?[ps][ds]2u(dq|si))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.f.cvtt\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv(cvt((q|ud)q2p|usi2s)[ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.f.cvt\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv(expandp[ds]|extract[fi](32|64)x4|fixupimm[ps][ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.f.expand\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv(get(exp|mant)[ps][ds]|insertf(32|64)x4|movdq[au](32|64))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.f.getexp\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(blendm[dq]|cmpu?[dq]|compress[dq])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.f.pblend\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(erm[it]2(d|q|p[ds])|expand[dq]|(max|min)[su]q|movu?s(q[bdw]|d[bw]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.f.permi\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(rolv?|rorr?|scatter[dq]|testn?m|terlog)[dq]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.f.prol\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvpsravq\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.f.sravq\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv(rcp14|(rnd)?scale|rsqrt14)[ps][ds]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.f.rcp\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv(scatter[dq]{2}|shuf[fi](32|64)x[24])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.f.scatter\\\"}]},\\\"mnemonics-avx512fp16\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bv((add|cmp|div|fc?(madd|mul)c|fpclass|get(exp|mant)|mul|rcp|reduce|(rnd)?scale|r?sqrt|sub)[ps]h|u?comish)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.fp16.add\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvcvt(u?([dq]q|w)|pd)2ph\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.fp16.cvtx2ph\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvcvtph2(u?([dq]q|w)|pd)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.fp16.cvtph2x\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvcvt(ph2psx|ps2phx)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.fp16.cvtx\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvcvt(s[dsi]|usi)2sh\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.fp16.cvtx2sh\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvcvtsh2(s[dsi]|usi)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.fp16.cvtsh2x\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvcvtt(ph2(u?(dq|qq|w))|sh2u?si)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.fp16.cvttph2x\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvfn?m((add|sub)(132|213|231))[ps]h\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.fp16.fmadd\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvfm(addsub|subadd)(132|213|231)ph\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.fp16.fmaddsub\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv((min|max)ph|mov(sh|w))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.fp16.max\\\"}]},\\\"mnemonics-avx512pf\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bv(gather|scatter)pf[01][dq]p[ds]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.avx512.pf\\\"}]},\\\"mnemonics-cet\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b((inc|save(prev)?|rstor|rd)ssp|wru?ss|(set|clr)ssbsy|endbr(32|64))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.cet\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bendbranch\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.cet.misc\\\"}]},\\\"mnemonics-esi\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\benqcmds?\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.esi\\\"}]},\\\"mnemonics-fpu\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(fcmov(n?([beu]|be)))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.fpu.data-transfer.mov\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(f(i?(ld|stp?)|b(ld|stp)|xch))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.fpu.data-transfer.other\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(f((add|div|mul|sub)p?|i(add|div|mul|sub)|(div|sub)rp?|i(div|sub)r))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.fpu.basic-arithmetic.basic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(f(prem1?|abs|chs|rndint|scale|sqrt|xtract))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.fpu.basic-arithmetic.other\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(f(u?com[ip]?p?|icomp?|tst|xam))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.fpu.comparison\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(f(sin|cos|sincos|pa?tan|2xm1|yl2x(p1)?))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.fpu.transcendental\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(fld(1|z|pi|l2[et]|l[ng]2))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.fpu.load-constants\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(f((inc|dec)stp|free|n?(init|clex|st[cs]w|stenv|save)|ld(cw|env)|rstor|nop)|f?wait)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.fpu.control-management\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(fx(save|rstor)(64)?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.fpu.state-management\\\"}]},\\\"mnemonics-future-intel\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#mnemonics-future-intel-apx\\\"}]},\\\"mnemonics-future-intel-apx\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(c(cmp|test)(n?[bl]e?|[ft]|n?[osz]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.apx.ccmp_test\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(cfcmovn?([bl]e?|[opsz]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.apx.cfcmov\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(cmpn?([bl]e?|[opsz])xadd)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.apx.cmpxadd\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(jmpabs|(push|pop)2p?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.apx.other\\\"}]},\\\"mnemonics-general-purpose\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:mov(?:[sz]x)?|cmov(?:n?[abceglopsz]|n?[abgl]e|p[eo]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.data-transfer.mov\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(xchg|bswap|xadd|cmpxchg(8b)?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.data-transfer.xchg\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((push|pop)(ad?)?|cwde?|cdq|cbw)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.data-transfer.other\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(adcx?|adox|add|sub|sbb|i?mul|i?div|inc|dec|neg|cmp)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.binary-arithmetic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(daa|das|aaa|aas|aam|aad)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.decimal-arithmetic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(and|x?or|not)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.logical\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s[ah][rl]|sh[rl]d|r[co][rl])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.rotate\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(set(n?[abceglopsz]|n?[abgl]e|p[eo]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.bit-and-byte.set\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(bt[crs]?|bs[fr]|test|crc32|popcnt)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.bit-and-byte.other\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(jmp|jn?[abceglopsz]|jn?[abgl]e|jp[eo]|j[er]?cxz)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.control-transfer.jmp\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(loop(n?[ez])?|call|ret|iret[dq]?|into?|bound|enter|leave)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.control-transfer.other\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((mov|cmp|sca|lod|sto)(s[bdw]?)|rep(n?[ez])?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.strings\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((in|out)(s[bdw]?)?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.io\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((st|cl)[cdi]|cmc|[ls]ahf|(push|pop)f[dq]?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.flag-control\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(l[defgs]s)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.segment-registers\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(lea|nop|ud2?|xlatb?|cpuid|movbe)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.misc\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(cl(flush(opt)?|demote|wb)|pcommit)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.cache-control\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(rdrand|rdseed)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.rng\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(andn|bextr|bls(i|r|msk)|bzhi|pdep|pext|[lt]zcnt|(mul|ror|sar|shl|shr)x)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.general-purpose.bmi\\\"}]},\\\"mnemonics-intel-isa-keylocker\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(aes(enc|dec)(wide)?(128|256)kl|encodekey(128|256)|loadiwkey)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.keylocker\\\"}]},\\\"mnemonics-intel-isa-xeon-phi\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bv(4fn?(madd)[ps]s|p4dpwssds?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.xeon-phi\\\"}]},\\\"mnemonics-intel-manual-listing\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bcvtt?pd1pi\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.c\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv?gf2p8(affine(inv)?q|mul)b\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.g\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bhreset\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.h\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bincssp[dq]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.i\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmovdir(i|64b)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.m\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bp((abs|(max|min)[su]?|mull|sra)q|config|twrite)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.p\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\brd(pid|ssp[dq])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.r\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bserialize\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.s\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\btpause\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.t\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bu(monitor|mwait)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.u\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvbroadcast[fi](32x[248]|64x[24])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vb\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv(compressw|cvtne2?ps2bf16)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vc\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvdpbf16ps\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vd\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvextract[fi]32x8\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.ve\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv(insert([fi]32x8|i(32|64)x4))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vi\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv(maskmov|(max|min)sh)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vm\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp((2intersect|andn?)[dq]|absq)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vpa\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvpbroadcasti32x4\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vpb\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvpcompress[bw]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vpc\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(dp(bu|ws)sds?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vpd\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vperm(b|t2[bw])|vp(expand[bw]|extrtd))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vpe\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(madd52[hl]uq|mov(d(2m|[bw])|q[bdw]|wb)|mpov[bdqw]2m|multishiftqb)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vpm\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vpopcnt[bdqw]|vpor[dq])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vpo\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvprorv[dq]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vpr\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(sh[lr]dv?[dqw]|shufbitqmb|shufps)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vps\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvpternlog[dq]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vpt\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvpxor[dq]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vpx\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bv(scalef[ps][dhs]|scatter[dq]p[ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.vs\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(wbnoinvd|wru?ss[dq])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.other.w\\\"}]},\\\"mnemonics-invalid\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#mnemonics-invalid-amd-sse5\\\"}]},\\\"mnemonics-invalid-amd-sse5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(com[ps][ds]|pcomu?[bdqw])\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.keyword.operator.word.mnemonic.sse5.comparison\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(cvtp(h2ps|s2ph)|frcz[ps][ds])\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.keyword.operator.word.mnemonic.sse5.conversion\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(fn?m((add|sub)[ps][ds])|ph(addu?(b[dqw]|w[dq]|dq)|sub(bw|dq|wd))|pma(css?(d(d|q[hl])|w[dw])|dcss?wd))\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.keyword.operator.word.mnemonic.sse5.packed-arithmetic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(pcmov|permp[ds]|pperm|prot[bdqw]|psh[al][bdqw])\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.keyword.operator.word.mnemonic.sse5.simd-integer\\\"}]},\\\"mnemonics-mmx\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(mov[dq])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.mmx.data-transfer\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(pack(ssdw|[su]swb)|punpck[hl](bw|dq|wd))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.mmx.conversion\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(p(((add|sub)(d|(u?s)?[bw]))|maddwd|mul[lh]w))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.mmx.packed-arithmetic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(pcmp((eq|gt)[bdw]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.mmx.comparison\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(pandn?|px?or)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.mmx.logical\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(ps([rl]l[dwq]|raw|rad))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.mmx.shift-and-rotate\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(emms)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.mmx.state-management\\\"}]},\\\"mnemonics-mpx\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(bnd(mk|c[lnu]|mov|ldx|stx))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.mpx\\\"}]},\\\"mnemonics-pseudo-ops\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(cmp(n?(eq|lt|le)|(un)?ord)[ps][ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.pseudo-mnemonic.sse2.compare\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(v?pclmul([hl]q[hl]q|[hl]qh)dq)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.pseudo-mnemonic.avx.promoted.aes\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vcmp(eq(_(os|uq|us))?|neq(_(oq|os|us))?|[gl][et](_oq)?|n[gl][et](_uq)?|(un)?ord(_s)?|false(_os)?|true(_us)?)[ps][ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.pseudo-mnemonic.avx.promoted.comparison\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bvp(cmpn?(eq|le|lt))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.pseudo-mnemonic.avx512.compare\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vpcom(n?eq|[gl][et]|false|true)(b|uw))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.pseudo-mnemonic.supplemental.amd.xop.simd\\\"}]},\\\"mnemonics-sgx\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bencl[su]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sgx\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\be(add|block|create|dbg(rd|wr)|extend|init|ld[bu]|pa|remove|track|wb)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.sgx1.supervisor\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\be(add|block|create|dbg(rd|wr)|extend|init|ld[bu]|pa|remove|track|wb)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.sgx1.supervisor\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\be(enter|exit|getkey|report|resume)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.sgx1.user\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\be(aug|mod(pr|t))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.sgx2.supervisor\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\be(accept(copy)?|modpe)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.sgx2.user\\\"}]},\\\"mnemonics-sha\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(sha(1rnds4|256rnds2|1nexte|(1|256)msg[12]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sha\\\"}]},\\\"mnemonics-smx\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(getsec)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.smx.getsec\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(capabilities|enteraccs|exitac|senter|sexit|parameters|smctrl|wakeup)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.smx\\\"}]},\\\"mnemonics-sse\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(mov(([ahlu]|hl|lh|msk)ps|ss))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse.data-transfer\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((add|div|max|min|mul|rcp|r?sqrt|sub)[ps]s)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse.packed-arithmetic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(cmp[ps]s|u?comiss)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse.comparison\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((andn?|x?or)ps)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse.logical\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((shuf|unpck[hl])ps)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse.shuffle-and-unpack\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(cvt(pi2ps|si2ss|ps2pi|tps2pi|ss2si|tss2si))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse.conversion\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((ld|st)mxcsr)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse.state-management\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(p(avg[bw]|extrw|insrw|(max|min)(sw|ub)|sadbw|shufw|mulhuw|movmskb))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse.simd-integer\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(maskmovq|movntps|sfence)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse.cacheability-control\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(prefetch(nta|t[0-2]|w(t1)?))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse.prefetch\\\"}]},\\\"mnemonics-sse2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(mov([auhl]|msk)pd)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse2.data-transfer\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((add|div|max|min|mul|sub|sqrt)[ps]d)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse2.packed-arithmetic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((andn?|x?or)pd)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse2.logical\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((cmpp|u?comis)d)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse2.compare\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((shuf|unpck[hl])pd)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse2.shuffle-and-unpack\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(cvt(dq2pd|pi2pd|ps2pd|pd2ps|si2sd|sd2ss|ss2sd|t?(pd2dq|pd2pi|sd2si)))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse2.conversion\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(cvt(dq2ps|ps2dq|tps2dq))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse2.packed-floating-point\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(mov(dq[au]|q2dq|dq2q))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse2.simd-integer.mov\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(p((add|sub|(s[lr]l|mulu|unpck[hl]q)d)q|shuf(d|[hl]w)))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse2.simd-integer.other\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b([lm]fence|pause|maskmovdqu|movnt(dq|i|pd))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse2.cacheability-control\\\"}]},\\\"mnemonics-sse3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(fisttp|lddqu|(addsub|h(add|sub))p[sd]|mov(sh|sl|d)dup|monitor|mwait)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse3\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(ph(add|sub)(s?w|d))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse3.supplimental.horizontal-packed-arithmetic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(p((abs|sign)[bdw]|maddubsw|mulhrsw|shufb|alignr))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse3.supplimental.other\\\"}]},\\\"mnemonics-sse4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(pmul(ld|dq)|dpp[ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse4.1.arithmetic\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(movntdqa)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse4.1.load-hint\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(blendv?p[ds]|pblend(vb|w))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse4.1.packed-blending\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(p(min|max)(u[dw]|s[bd]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse4.1.packed-integer\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(round[ps][sd])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse4.1.packed-floating-point\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((extract|insert)ps|p((ins|ext)(r[bdq])))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse4.1.insertion-and-extraction\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(pmov([sz]x(b[dqw]|dq|wd|wq)))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse4.1.conversion\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(mpsadbw|phminposuw|ptest|pcmpeqq|packusdw)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse4.1.other\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(pcmp([ei]str[im]|gtq))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.sse4.2\\\"}]},\\\"mnemonics-supplemental-amd\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(bl([cs](fill|ic?|msk)|cs)|t1mskc|tzmsk)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.general-purpose\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(clgi|int3|invlpga|iretw|skinit|stgi|vm(load|mcall|run|save)|monitorx|mwaitx)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.system\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b([ls]lwpcb|lwp(ins|val))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.profiling\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(movnts[ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.memory-management\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(prefetch|clzero)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.cache-management\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((extr|insert)q)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.sse4.a\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vfn?m((add|sub)[ps][ds])|vfm((addsub|subadd)p[ds]))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.fma4\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vp(cmov|(comu?|rot|sh[al])[bdqw]|mac(s?s(d(d|q[hl])|w[dw]))|madcss?wd|perm))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.xop.simd\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vph(addu?(b[dqw]|w[dq]|dq)|sub(bw|dq|wd)))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.xop.simd-horizontal\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(vfrcz[ps][ds]|vpermil2p[ds])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.xop.other\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(femms)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.3dnow\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(p(avgusb|(f2i|i2f)[dw]|mulhrw|swapd)|pf((p?n)?acc|add|max|min|mul|rcp(it[12])?|rsqit1|rsqrt|subr?))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.3dnow.simd\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(pfcmp(eq|ge|gt))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.amd.3dnow.comparison\\\"}]},\\\"mnemonics-supplemental-cyrix\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b((sv|rs)dc|(wr|rd)shr|paddsiw)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.cyrix\\\"}]},\\\"mnemonics-supplemental-via\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(montmul)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.via\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(x(store(rng)?|crypt(ecb|cbc|ctr|cfb|ofb)|sha(1|256)))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.supplemental.via.padlock\\\"}]},\\\"mnemonics-system\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b((cl|st)ac|[ls]([gli]dt|tr|msw)|clts|arpl|lar|lsl|ver[rw]|inv(d|lpg|pcid)|wbinvd)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.system\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(lock|hlt|rsm|(rd|wr)(msr|pkru|[fg]sbase)|rd(pmc|tscp?)|sys(enter|exit))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.system\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(x((save(c|opt|s)?|rstors?)(64)?|[gs]etbv))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.system\\\"}]},\\\"mnemonics-tsx\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(x(abort|begin|end|test|(res|sus)ldtrk))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.tsx\\\"}]},\\\"mnemonics-uirq\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b((cl|st|test)ui|senduipi|uiret)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.uirq\\\"}]},\\\"mnemonics-undocumented\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(ret[nf]|icebp|int1|int03|smi|ud1)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.undocumented\\\"}]},\\\"mnemonics-vmx\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(vm(ptr(ld|st)|clear|read|write|launch|resume|xo(ff|n)|call|func)|inv(ept|vpid))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.mnemonic.vmx\\\"}]},\\\"preprocessor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*[#%]\\\\\\\\s*(error|warning)\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.error.c\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.preprocessor.diagnostic.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.c\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*[#%]\\\\\\\\s*(include|import)\\\\\\\\b\\\\\\\\s+\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.include.c\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|$\\\",\\\"name\\\":\\\"meta.preprocessor.c.include\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.c\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.double.include.c\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.other.lt-gt.include.c\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*[%#]\\\\\\\\s*(i?x?define|defined|elif(def)?|else|i[fs]n?(?:def|macro|ctx|idni?|id|num|str|token|empty|env)?|line|(i|end|uni?)?macro|pragma|endif)\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.c\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|$\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.c\\\"},{\\\"include\\\":\\\"#preprocessor-functions\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*[#%]\\\\\\\\s*(assign|strlen|substr|(end|exit)?rep|push|pop|rotate|use|ifusing|ifusable|def(?:ailas|str|tok)|undef(?:alias)?)\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.preprocessor.nasm\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.c\\\"},{\\\"include\\\":\\\"#preprocessor-functions\\\"}]}]},\\\"preprocessor-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((%)(?:(abs|cond|count|eval|isn?(?:def|macro|ctx|idni?|id|num|str|token|empty|env)?|num|sel|str(?:cat|len)?|substr|tok)\\\\\\\\s*(\\\\\\\\()))\\\",\\\"captures\\\":{\\\"3\\\":{\\\"name\\\":\\\"support.function.preprocessor.asm.x86_64\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|$\\\",\\\"name\\\":\\\"meta.preprocessor.function.asm.x86_64\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-functions\\\"}]}]},\\\"registers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:[abcd][hl]|[er]?[abcd]x|[er]?(?:di|si|bp|sp)|dil|sil|bpl|spl|r(?:8|9|1[0-5])[bdlw]?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.general-purpose.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:[cdefgs]s)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.segment.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:[er]?flags)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.flags.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:[er]?ip)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.instruction-pointer.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:cr[02-4])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.control.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:(?:mm|st|fpr)[0-7])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.mmx.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:[xy]mm(?:[0-9]|1[0-5])|mxcsr)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.sse_avx.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:zmm(?:[12]?[0-9]|30|31))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.avx512.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:bnd(?:[0-3]|cfg[su]|status))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.memory-protection.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:(?:[gil]dt)r?|tr)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.system-table-pointer.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:dr[0-367])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.debug.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:cr8|dr(?:[89]|1[0-5])|efer|tpr|syscfg)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.amd.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:db[0-367]|t[67]|tr[3-7]|st)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.deprecated.constant.language.register.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b[xy]mm(?:1[6-9]|2[0-9]|3[01])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.register.general-purpose.alias.asm.x86_64\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.asm\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.asm\\\"}},\\\"name\\\":\\\"string.quoted.double.asm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.asm\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.asm\\\"}},\\\"name\\\":\\\"string.quoted.single.asm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"}]},{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.asm\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.asm\\\"}},\\\"name\\\":\\\"string.quoted.backquote.asm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"}]}]},\\\"support\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:s?byte|(?:[doqtyz]|dq|s[dq]?)?word|(?:d|res)[bdoqtwyz]|ddq)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:incbin|equ|times|dup)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:strict|nosplit|near|far|abs|rel)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:[ao](?:16|32|64))\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.prefix.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(?:rep(?:n?[ez])?|lock|xacquire|xrelease|(?:no)?bnd)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.prefix.asm.x86_64\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.prefix.vex.asm.x86_64\\\"}},\\\"match\\\":\\\"{(vex[23]?|evex|rex)}\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.opmask.asm.x86_64\\\"}},\\\"match\\\":\\\"{(k[1-7])}\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.precision.asm.x86_64\\\"}},\\\"match\\\":\\\"{(1to(?:8|16))}\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.rounding.asm.x86_64\\\"}},\\\"match\\\":\\\"{(z|(?:r[nudz]-)?sae)}\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.(?:start|imagebase|tlvp|got(?:pc(?:rel)?|(?:tp)?off)?|plt|sym|tlsie)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__\\\\\\\\?(?:utf(?:(?:16|32)(?:[lb]e)?)|float(?:8|16|32|64|80[me]|128[lh])|bfloat16|Infinity|[QS]?NaN)\\\\\\\\?__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__(?:utf(?:(?:16|32)(?:[lb]e)?)|float(?:8|16|32|64|80[me]|128[lh])|bfloat16|Infinity|[QS]?NaN)__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.legacy.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__\\\\\\\\?NASM_(?:MAJOR|(?:SUB)?MINOR|SNAPSHOT|VER(?:SION_ID)?)\\\\\\\\?__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b___\\\\\\\\?NASM_PATCHLEVEL\\\\\\\\?__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__\\\\\\\\?(?:FILE|LINE|BITS|OUTPUT_FORMAT|DEBUG_FORMAT)\\\\\\\\?__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__\\\\\\\\?(?:(?:UTC_)?(?:DATE|TIME)(?:_NUM)?|POSIX_TIME)\\\\\\\\?__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__\\\\\\\\?USE_(?:\\\\\\\\w+)\\\\\\\\?__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__\\\\\\\\?PASS\\\\\\\\?__\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.deprecated.support.constant.altreg.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__\\\\\\\\?ALIGNMODE\\\\\\\\?__\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.smartalign.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__\\\\\\\\?ALIGN_(\\\\\\\\w+)\\\\\\\\?__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.smartalign.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__NASM_(?:MAJOR|(?:SUB)?MINOR|SNAPSHOT|VER(?:SION_ID)?)__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b___NASM_PATCHLEVEL__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__(?:FILE|LINE|BITS|OUTPUT_FORMAT|DEBUG_FORMAT)__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__(?:(?:UTC_)?(?:DATE|TIME)(?:_NUM)?|POSIX_TIME)__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__USE_(?:\\\\\\\\w+)__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__PASS__\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.deprecated.support.constant.altreg.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__ALIGNMODE__\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.smartalign.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b__ALIGN_(\\\\\\\\w+)__\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.smartalign.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:Inf|[QS]?NaN)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.fp.asm.x86_64\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:float(?:8|16|32|64|80[me]|128[lh]))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.fp.asm.x86_64\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bilog2(?:[ewfc]|[fc]w)?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ifunc.asm.x86_64\\\"}]}},\\\"scopeName\\\":\\\"source.asm.x86_64\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"TypeScript\\\",\\\"name\\\":\\\"typescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#directives\\\"},{\\\"include\\\":\\\"#statements\\\"},{\\\"include\\\":\\\"#shebang\\\"}],\\\"repository\\\":{\\\"access-modifier\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"after-operator-block-as-object-literal\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--)(?<=[:=(,\\\\\\\\[?+!>]|^await|[^\\\\\\\\._$[:alnum:]]await|^return|[^\\\\\\\\._$[:alnum:]]return|^yield|[^\\\\\\\\._$[:alnum:]]yield|^throw|[^\\\\\\\\._$[:alnum:]]throw|^in|[^\\\\\\\\._$[:alnum:]]in|^of|[^\\\\\\\\._$[:alnum:]]of|^typeof|[^\\\\\\\\._$[:alnum:]]typeof|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\*)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.objectliteral.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-member\\\"}]},\\\"array-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"array-binding-pattern-const\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#binding-element-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"array-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"name\\\":\\\"meta.array.literal.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"arrow-function\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(\\\\\\\\basync)\\\\\\\\s+)?([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?==>)\\\",\\\"name\\\":\\\"meta.arrow.ts\\\"},{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(\\\\\\\\basync))?((?<![})!\\\\\\\\]])\\\\\\\\s*(?=((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"}},\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.arrow.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#function-parameters\\\"},{\\\"include\\\":\\\"#arrow-return-type\\\"},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"}]},{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.arrow.ts\\\"}},\\\"end\\\":\\\"((?<=\\\\\\\\}|\\\\\\\\S)(?<!=>)|((?!\\\\\\\\{)(?=\\\\\\\\S)))(?!\\\\\\\\/[\\\\\\\\/\\\\\\\\*])\\\",\\\"name\\\":\\\"meta.arrow.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"arrow-return-type\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.return.type.arrow.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrow-return-type-body\\\"}]},\\\"arrow-return-type-body\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[:])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"async-modifier\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(async)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#array-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"binding-element-const\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#array-binding-pattern-const\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"boolean-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))true(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.true.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))false(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.false.ts\\\"}]},\\\"brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"cast\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(<)\\\\\\\\s*(const)\\\\\\\\s*(>)\\\",\\\"name\\\":\\\"cast.expr.ts\\\"},{\\\"begin\\\":\\\"(?:(?<!\\\\\\\\+\\\\\\\\+|--)(?<=^return|[^\\\\\\\\._$[:alnum:]]return|^throw|[^\\\\\\\\._$[:alnum:]]throw|^yield|[^\\\\\\\\._$[:alnum:]]yield|^await|[^\\\\\\\\._$[:alnum:]]await|^default|[^\\\\\\\\._$[:alnum:]]default|[=(,:>*?\\\\\\\\&\\\\\\\\|\\\\\\\\^]|[^_$[:alnum:]](?:\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-)|[^\\\\\\\\+]\\\\\\\\+|[^\\\\\\\\-]\\\\\\\\-))\\\\\\\\s*(<)(?!<?\\\\\\\\=)(?!\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"}},\\\"name\\\":\\\"cast.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?:(?<=^))\\\\\\\\s*(<)(?=[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.angle.ts\\\"}},\\\"name\\\":\\\"cast.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"class-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(?:(abstract)\\\\\\\\s+)?\\\\\\\\b(class)\\\\\\\\b(?=\\\\\\\\s+|/[/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.class.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.class.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-declaration-or-expression-patterns\\\"}]},\\\"class-declaration-or-expression-patterns\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.class.ts\\\"}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#class-or-interface-body\\\"}]},\\\"class-expression\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(class)\\\\\\\\b(?=\\\\\\\\s+|[<{]|\\\\\\\\/[\\\\\\\\/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.class.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-declaration-or-expression-patterns\\\"}]},\\\"class-or-interface-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*\\\",\\\"end\\\":\\\"(?=\\\\\\\\s|[;),}\\\\\\\\]:\\\\\\\\-\\\\\\\\+]|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#access-modifier\\\"},{\\\"include\\\":\\\"#property-accessor\\\"},{\\\"include\\\":\\\"#async-modifier\\\"},{\\\"include\\\":\\\"#after-operator-block-as-object-literal\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"class-or-interface-heritage\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(extends|implements)\\\\\\\\b)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))(?=\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*)*\\\\\\\\s*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"}},\\\"name\\\":\\\"comment.block.documentation.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docblock\\\"}]},{\\\"begin\\\":\\\"(/\\\\\\\\*)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|(\\\\\\\\*/)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"}},\\\"name\\\":\\\"comment.block.ts\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.ts\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.ts\\\",\\\"end\\\":\\\"(?=$)\\\"}]},\\\"control-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#switch-statement\\\"},{\\\"include\\\":\\\"#for-loop\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(catch|finally|throw|try)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.trycatch.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.loop.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.label.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(break|continue|goto)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(break|continue|do|goto|while)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.loop.ts\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(return)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.ts\\\"}},\\\"end\\\":\\\"(?=[;}]|$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(case|default|switch)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.switch.ts\\\"},{\\\"include\\\":\\\"#if-statement\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(else|if)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.conditional.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(with)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.with.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(package)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(debugger)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.other.debugger.ts\\\"}]},\\\"decl-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.block.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}]},\\\"declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#function-declaration\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#enum-declaration\\\"},{\\\"include\\\":\\\"#namespace-declaration\\\"},{\\\"include\\\":\\\"#type-alias-declaration\\\"},{\\\"include\\\":\\\"#import-equals-declaration\\\"},{\\\"include\\\":\\\"#import-declaration\\\"},{\\\"include\\\":\\\"#export-declaration\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(declare|export)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.ts\\\"}]},\\\"decorator\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))\\\\\\\\@\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.decorator.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.decorator.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"destructuring-const\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object-binding-pattern-variable.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.array-binding-pattern-variable.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array-binding-pattern-const\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"destructuring-parameter\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:)\\\\\\\\s*(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"name\\\":\\\"meta.parameter.object-binding-pattern.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-object-binding-element\\\"}]},{\\\"begin\\\":\\\"(?<!=|:)\\\\\\\\s*(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"name\\\":\\\"meta.paramter.array-binding-pattern.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"destructuring-parameter-rest\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"destructuring-variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object-binding-pattern-variable.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.array-binding-pattern-variable.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array-binding-pattern\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"destructuring-variable-rest\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.readwrite.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"destructuring-variable-rest-const\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.constant.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"directives\\\":{\\\"begin\\\":\\\"^(///)\\\\\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\\\\\s*=\\\\\\\\s*((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))+\\\\\\\\s*/>\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"}},\\\"end\\\":\\\"(?=$)\\\",\\\"name\\\":\\\"comment.line.triple-slash.directive.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)(reference|amd-dependency|amd-module)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.directive.ts\\\"}},\\\"end\\\":\\\"/>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.ts\\\"}},\\\"name\\\":\\\"meta.tag.ts\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"path|types|no-default-lib|lib|name|resolution-mode\\\",\\\"name\\\":\\\"entity.other.attribute-name.directive.ts\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"docblock\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.access-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:access|api))\\\\\\\\s+(private|protected|public)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.other.email.link.underline.jsdoc\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"match\\\":\\\"((@)author)\\\\\\\\s+([^@\\\\\\\\s<>*/](?:[^@<>*/]|\\\\\\\\*[^/])*)(?:\\\\\\\\s*(<)([^>\\\\\\\\s]+)(>))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.control.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)borrows)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\\\\\\s+(as)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)example)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=@|\\\\\\\\*/)\\\",\\\"name\\\":\\\"meta.example.jsdoc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\s\\\\\\\\*\\\\\\\\s+\\\"},{\\\"begin\\\":\\\"\\\\\\\\G(<)caption(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"contentName\\\":\\\"constant.other.description.jsdoc\\\",\\\"end\\\":\\\"(</)caption(>)|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"source.embedded.ts\\\"}},\\\"match\\\":\\\"[^\\\\\\\\s@*](?:[^*]|\\\\\\\\*[^/])*\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.symbol-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)kind)\\\\\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)see)\\\\\\\\s+(?:((?=https?://)(?:[^\\\\\\\\s*]|\\\\\\\\*[^/])+)|((?!https?://|(?:\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\\\\\b)(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)template)\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*(?:\\\\\\\\s*,\\\\\\\\s*[A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)*)\\\"},{\\\"begin\\\":\\\"((@)template)\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\"},{\\\"begin\\\":\\\"((@)typedef)\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+\\\",\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.begin.bracket.square.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"source.embedded.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.end.bracket.square.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.syntax.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)\\\\\\\\s*[\\\\\\\\w$]+(?:(?:\\\\\\\\[\\\\\\\\])?\\\\\\\\.[\\\\\\\\w$]+)*(?:\\\\\\\\s*(=)\\\\\\\\s*((?>\\\\\\\"(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!\\\\\\\"))|[^*\\\\\\\\\\\\\\\\])*?\\\\\\\"|'(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!'))|[^*\\\\\\\\\\\\\\\\])*?'|\\\\\\\\[(?:(?:\\\\\\\\*(?!/))|[^*])*?\\\\\\\\]|(?:(?:\\\\\\\\*(?!/))|\\\\\\\\s(?!\\\\\\\\s*\\\\\\\\])|\\\\\\\\[.*?(?:\\\\\\\\]|(?=\\\\\\\\*/))|[^*\\\\\\\\s\\\\\\\\[\\\\\\\\]])*)*))?\\\\\\\\s*(?:(\\\\\\\\])((?:[^*\\\\\\\\s]|\\\\\\\\*[^\\\\\\\\s/])+)?|(?=\\\\\\\\*/))\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\\\\\s+((?:[^{}@\\\\\\\\s*]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)(?:default(?:value)?|license|version))\\\\\\\\s+(([''\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"variable.other.jsdoc\\\",\\\"end\\\":\\\"(\\\\\\\\3)|(?=$|\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\\\\\s+([^\\\\\\\\s*]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},{\\\"include\\\":\\\"#inline-tags\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s+)\\\"}]},\\\"enum-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?(?:\\\\\\\\b(const)\\\\\\\\s+)?\\\\\\\\b(enum)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.enum.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.enum.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.enum.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.enummember.ts\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"begin\\\":\\\"(?=((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\])))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"export-declaration\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.namespace.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)\\\\\\\\s+(as)\\\\\\\\s+(namespace)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)(?:\\\\\\\\s+(type))?(?:(?:\\\\\\\\s*(=))|(?:\\\\\\\\s+(default)(?=\\\\\\\\s+)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.default.ts\\\"}},\\\"end\\\":\\\"(?=$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.export.default.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)(?:\\\\\\\\s+(type))?\\\\\\\\b(?!(\\\\\\\\$)|(\\\\\\\\s*:))((?=\\\\\\\\s*[\\\\\\\\{*])|((?=\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\\\\\s|,))(?!\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"}},\\\"end\\\":\\\"(?=$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.export.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-declaration\\\"}]}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"expression-inside-possibly-arrow-parens\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#destructuring-parameter\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|protected|private|readonly)\\\\\\\\s+(?=(override|public|protected|private|readonly)\\\\\\\\s+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*[:,]|$)\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.ts\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"expression-operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(await)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.flow.ts\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?=\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?:\\\\\\\\s*(\\\\\\\\*))?\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))delete(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.delete.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))in(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.in.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))of(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.of.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))instanceof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.instanceof.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.new.ts\\\"},{\\\"include\\\":\\\"#typeof-operator\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))void(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.void.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+(const)(?=\\\\\\\\s*($|[;,:})\\\\\\\\]]))\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(as)|(satisfies))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.satisfies.ts\\\"}},\\\"end\\\":\\\"(?=^|[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as|satisfies)\\\\\\\\s+)|(\\\\\\\\s+\\\\\\\\<))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.spread.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\*=|(?<!\\\\\\\\()/=|%=|\\\\\\\\+=|\\\\\\\\-=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\&=|\\\\\\\\^=|<<=|>>=|>>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.ts\\\"},{\\\"match\\\":\\\"<<|>>>|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.ts\\\"},{\\\"match\\\":\\\"===|!==|==|!=\\\",\\\"name\\\":\\\"keyword.operator.comparison.ts\\\"},{\\\"match\\\":\\\"<=|>=|<>|<|>\\\",\\\"name\\\":\\\"keyword.operator.relational.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:]])(\\\\\\\\!)\\\\\\\\s*(?:(/=)|(?:(/)(?![/*])))\\\"},{\\\"match\\\":\\\"\\\\\\\\!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.logical.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\&|~|\\\\\\\\^|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.ts\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"},{\\\"begin\\\":\\\"(?<=[_$[:alnum:])\\\\\\\\]])\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))\\\",\\\"end\\\":\\\"(?:(/=)|(?:(/)(?!\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.ts\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:])\\\\\\\\]])\\\\\\\\s*(?:(/=)|(?:(/)(?![/*])))\\\"}]},\\\"expressionPunctuations\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"expressionWithoutIdentifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-expression\\\"},{\\\"include\\\":\\\"#class-expression\\\"},{\\\"include\\\":\\\"#arrow-function\\\"},{\\\"include\\\":\\\"#paren-expression-possibly-arrow\\\"},{\\\"include\\\":\\\"#cast\\\"},{\\\"include\\\":\\\"#ternary-expression\\\"},{\\\"include\\\":\\\"#new-expr\\\"},{\\\"include\\\":\\\"#instanceof-expr\\\"},{\\\"include\\\":\\\"#object-literal\\\"},{\\\"include\\\":\\\"#expression-operators\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#support-objects\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},\\\"field-declaration\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\()(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)\\\\\\\\s+)?(?=\\\\\\\\s*((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(?:(?:(\\\\\\\\?)|(\\\\\\\\!))\\\\\\\\s*)?(=|:|;|,|\\\\\\\\}|$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$|(^(?!\\\\\\\\s*((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(?:(?:(\\\\\\\\?)|(\\\\\\\\!))\\\\\\\\s*)?(=|:|;|,|$))))|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.field.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.property.ts entity.name.function.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.ts\\\"}},\\\"match\\\":\\\"(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)(?:(\\\\\\\\?)|(\\\\\\\\!))?(?=\\\\\\\\s*\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"match\\\":\\\"\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.property.ts variable.object.property.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"keyword.operator.definiteassignment.ts\\\"}]},\\\"for-loop\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))for(?=((\\\\\\\\s+|(\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*))await)?\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)?(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.loop.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"await\\\",\\\"name\\\":\\\"keyword.control.loop.ts\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]}]},\\\"function-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#function-parameters\\\"},{\\\"include\\\":\\\"#return-type\\\"},{\\\"include\\\":\\\"#type-function-return-type\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}]},\\\"function-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"name\\\":\\\"meta.function-call.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-target\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-call-optionals\\\"},{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},{\\\"begin\\\":\\\"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"name\\\":\\\"meta.function-call.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-target\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-call-optionals\\\"},{\\\"include\\\":\\\"#type-arguments\\\"}]}]},\\\"function-call-optionals\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\.\\\",\\\"name\\\":\\\"meta.function-call.ts punctuation.accessor.optional.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"meta.function-call.ts keyword.operator.definiteassignment.ts\\\"}]},\\\"function-call-target\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-function-call-identifiers\\\"},{\\\"match\\\":\\\"(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.function.ts\\\"}]},\\\"function-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?(?:(async)\\\\\\\\s+)?(function\\\\\\\\b)(?:\\\\\\\\s*(\\\\\\\\*))?(?:(?:\\\\\\\\s+|(?<=\\\\\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.function.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.definition.function.ts entity.name.function.ts\\\"}},\\\"end\\\":\\\"(?=;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},\\\"function-expression\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(async)\\\\\\\\s+)?(function\\\\\\\\b)(?:\\\\\\\\s*(\\\\\\\\*))?(?:(?:\\\\\\\\s+|(?<=\\\\\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.definition.function.ts entity.name.function.ts\\\"}},\\\"end\\\":\\\"(?=;)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.expression.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},\\\"function-name\\\":{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.function.ts entity.name.function.ts\\\"},\\\"function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.ts\\\"}},\\\"name\\\":\\\"meta.parameters.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters-body\\\"}]},\\\"function-parameters-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#destructuring-parameter\\\"},{\\\"include\\\":\\\"#parameter-name\\\"},{\\\"include\\\":\\\"#parameter-type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.ts\\\"}]},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#object-identifiers\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"}},\\\"match\\\":\\\"(?:(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.property.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.property.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"match\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\",\\\"name\\\":\\\"variable.other.constant.ts\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.readwrite.ts\\\"}]},\\\"if-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=\\\\\\\\bif\\\\\\\\s*(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))\\\\\\\\s*(?!\\\\\\\\{))\\\",\\\"end\\\":\\\"(?=;|$|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(if)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*\\\\\\\\/(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\])+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ts\\\"}},\\\"name\\\":\\\"string.regexp.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"include\\\":\\\"#statements\\\"}]}]},\\\"import-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type)(?!\\\\\\\\s+from))?(?!\\\\\\\\s*[:\\\\\\\\(])(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"}},\\\"end\\\":\\\"(?<!^import|[^\\\\\\\\._$[:alnum:]]import)(?=;|$|^)\\\",\\\"name\\\":\\\"meta.import.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"begin\\\":\\\"(?<=^import|[^\\\\\\\\._$[:alnum:]]import)(?!\\\\\\\\s*[\\\\\\\"'])\\\",\\\"end\\\":\\\"\\\\\\\\bfrom\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.from.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-declaration\\\"}]},{\\\"include\\\":\\\"#import-export-declaration\\\"}]},\\\"import-equals-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type))?\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(=)\\\\\\\\s*(require)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.control.require.ts\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"name\\\":\\\"meta.import-equals.external.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type))?\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(=)\\\\\\\\s*(?!require\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}},\\\"end\\\":\\\"(?=;|$|^)\\\",\\\"name\\\":\\\"meta.import-equals.internal.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.other.readwrite.ts\\\"}]}]},\\\"import-export-assert-clause\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(with)|(assert))\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.with.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.assert.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object-literal.key.ts\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.ts\\\"}]},\\\"import-export-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.block.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-clause\\\"}]},\\\"import-export-clause\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.default.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.import-export-all.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.readwrite.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.quoted.alias.ts\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"13\\\":{\\\"name\\\":\\\"keyword.control.default.ts\\\"},\\\"14\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.ts\\\"},\\\"15\\\":{\\\"name\\\":\\\"string.quoted.alias.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(?:(\\\\\\\\btype)\\\\\\\\s+)?(?:(\\\\\\\\bdefault)|(\\\\\\\\*)|(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))))\\\\\\\\s+(as)\\\\\\\\s+(?:(default(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"constant.language.import-export-all.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\b(default)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.default.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.type.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.quoted.alias.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\btype)\\\\\\\\s+)?(?:([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))\\\"}]},\\\"import-export-declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#import-export-block\\\"},{\\\"match\\\":\\\"\\\\\\\\bfrom\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.from.ts\\\"},{\\\"include\\\":\\\"#import-export-assert-clause\\\"},{\\\"include\\\":\\\"#import-export-clause\\\"}]},\\\"indexer-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)\\\\\\\\s*)?\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\\\\\\s*(\\\\\\\\?\\\\\\\\s*)?|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"name\\\":\\\"meta.indexer.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"}]},\\\"indexer-mapped-type-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))([+-])?(readonly)\\\\\\\\s*)?\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s+(in)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.expression.in.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\])([+-])?\\\\\\\\s*(\\\\\\\\?\\\\\\\\s*)?|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.type.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"name\\\":\\\"meta.indexer.mappedtype.declaration.ts\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"inline-tags\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.end.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)[^\\\\\\\\]]+(\\\\\\\\])(?={@(?:link|linkcode|linkplain|tutorial))\\\",\\\"name\\\":\\\"constant.other.description.jsdoc\\\"},{\\\"begin\\\":\\\"({)((@)(?:link(?:code|plain)?|tutorial))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.inline.tag.jsdoc\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?=https?://)(?:[^|}\\\\\\\\s*]|\\\\\\\\*[/])+)(\\\\\\\\|)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.description.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?:[^{}@\\\\\\\\s|*]|\\\\\\\\*[^/])+)(\\\\\\\\|)?\\\"}]}]},\\\"instanceof-expr\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(instanceof)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.expression.instanceof.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|(===|!==|==|!=)|(([\\\\\\\\&\\\\\\\\~\\\\\\\\^\\\\\\\\|]\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))function((\\\\\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\s*[\\\\\\\\(]))))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"interface-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(?:(abstract)\\\\\\\\s+)?\\\\\\\\b(interface)\\\\\\\\b(?=\\\\\\\\s+|/[/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.interface.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.interface.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.interface.ts\\\"}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#class-or-interface-body\\\"}]},\\\"jsdoctype\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G({)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"end\\\":\\\"((}))\\\\\\\\s*|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"label\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(:)(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.label.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#decl-block\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.label.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(:)\\\"}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#boolean-literal\\\"},{\\\"include\\\":\\\"#null-literal\\\"},{\\\"include\\\":\\\"#undefined-literal\\\"},{\\\"include\\\":\\\"#numericConstant-literal\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#this-literal\\\"},{\\\"include\\\":\\\"#super-literal\\\"}]},\\\"method-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?\\\\\\\\s*\\\\\\\\b(constructor)\\\\\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:(?:\\\\\\\\s*\\\\\\\\b(new)\\\\\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(?:(\\\\\\\\*)\\\\\\\\s*)?)(?=\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.new.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.property.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]}]},\\\"method-declaration-name\\\":{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??)\\\\\\\\s*[\\\\\\\\(\\\\\\\\<])\\\",\\\"end\\\":\\\"(?=\\\\\\\\(|\\\\\\\\<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.method.ts entity.name.function.ts\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}]},\\\"namespace-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(namespace|module)\\\\\\\\s+(?=[_$[:alpha:]\\\\\\\"'`]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.namespace.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.namespace.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.type.module.ts\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"new-expr\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(new)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))function((\\\\\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\s*[\\\\\\\\(]))))\\\",\\\"name\\\":\\\"new.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"null-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))null(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.null.ts\\\"},\\\"numeric-literal\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.hex.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.binary.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.octal.ts\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.decimal.ts\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"9\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"10\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"12\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.ts\\\"},\\\"13\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"},\\\"14\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.ts\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)\\\"}]},\\\"numericConstant-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))NaN(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.nan.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Infinity(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.infinity.ts\\\"}]},\\\"object-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#binding-element\\\"}]},{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-binding-element-const\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#binding-element-const\\\"}]},{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-binding-element-propertyName\\\":{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.destructuring.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.object.property.ts\\\"}]},\\\"object-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element\\\"}]},\\\"object-binding-pattern-const\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-const\\\"}]},\\\"object-identifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*prototype\\\\\\\\b(?!\\\\\\\\$))\\\",\\\"name\\\":\\\"support.class.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.object.property.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.object.property.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(?:(\\\\\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.object.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.ts\\\"}},\\\"match\\\":\\\"(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"}]},\\\"object-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.objectliteral.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-member\\\"}]},\\\"object-literal-method-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.property.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.property.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\(|\\\\\\\\<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"}]}]},\\\"object-member\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#object-literal-method-declaration\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\]])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<]))\\\",\\\"name\\\":\\\"meta.object.member.ts meta.object-literal.key.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#array-literal\\\"}]},{\\\"begin\\\":\\\"(?=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=((\\\\\\\\s*[\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\s+(as|satisifies)\\\\\\\\s+))))\\\",\\\"name\\\":\\\"meta.object.member.ts meta.object-literal.key.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?=(\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)))\\\",\\\"end\\\":\\\"(?=:)|(?=\\\\\\\\s*([\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\s+as|satisifies\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.ts meta.object-literal.key.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"}]},{\\\"begin\\\":\\\"(?<=[\\\\\\\\]\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<])\\\",\\\"end\\\":\\\"(?=\\\\\\\\}|;|,)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts\\\"},\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.ts\\\"}},\\\"match\\\":\\\"(?![_$[:alpha:]])([[:digit:]]+)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.ts\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts\\\"},\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"}},\\\"match\\\":\\\"(?:([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:(\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/)*\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"name\\\":\\\"meta.object.member.ts\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts\\\"}},\\\"match\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.ts\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.ts\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.object.member.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+(const)(?=\\\\\\\\s*([,}]|$))\\\",\\\"name\\\":\\\"meta.object.member.ts\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(as)|(satisfies))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.satisfies.ts\\\"}},\\\"end\\\":\\\"(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|^|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as|satisifies)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?=[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=)\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.ts punctuation.separator.key-value.ts\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.object.member.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?(?=\\\\\\\\s*(<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)\\\\\\\\(\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]}]},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?\\\\\\\\s*(\\\\\\\\()(?=\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?\\\\\\\\s*(?=\\\\\\\\<\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\>)\\\\\\\\s*(\\\\\\\\()(?=\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"parameter-array-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"parameter-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#parameter-object-binding-pattern\\\"},{\\\"include\\\":\\\"#parameter-array-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-parameter-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"parameter-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|protected|private|readonly)\\\\\\\\s+(?=(override|public|protected|private|readonly)\\\\\\\\s+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)\\\"}]},\\\"parameter-object-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},{\\\"include\\\":\\\"#parameter-object-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-parameter-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"parameter-object-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-object-binding-element\\\"}]},\\\"parameter-type-annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?=[,)])|(?==[^>])\\\",\\\"name\\\":\\\"meta.type.annotation.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"paren-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"paren-expression-possibly-arrow\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(=,])\\\\\\\\s*(async)?(?=\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?\\\\\\\\(\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression-possibly-arrow-with-typeparameters\\\"}]},{\\\"begin\\\":\\\"(?<=[(=,]|=>|^return|[^\\\\\\\\._$[:alnum:]]return)\\\\\\\\s*(async)?(?=\\\\\\\\s*((((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?\\\\\\\\()|(<)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)))\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression-possibly-arrow-with-typeparameters\\\"}]},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"}]},\\\"paren-expression-possibly-arrow-with-typeparameters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]}]},\\\"possibly-arrow-return-type\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\)|^)\\\\\\\\s*(:)(?=\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*=>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.arrow.ts meta.return.type.arrow.ts keyword.operator.type.annotation.ts\\\"}},\\\"contentName\\\":\\\"meta.arrow.ts meta.return.type.arrow.ts\\\",\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrow-return-type-body\\\"}]},\\\"property-accessor\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(accessor|get|set)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.type.property.ts\\\"},\\\"punctuation-accessor\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},\\\"punctuation-comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.ts\\\"},\\\"punctuation-semicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.ts\\\"},\\\"qstring-double\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\")|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.ts\\\"}},\\\"name\\\":\\\"string.quoted.double.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"qstring-single\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.ts\\\"}},\\\"name\\\":\\\"string.quoted.single.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"regex\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--|})(?<=[=(:,\\\\\\\\[?+!]|^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case|=>|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\*\\\\\\\\/)\\\\\\\\s*(\\\\\\\\/)(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[\\\\\\\\()]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\]|\\\\\\\\(([^\\\\\\\\)\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\))+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ts\\\"}},\\\"name\\\":\\\"string.regexp.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"((?<![_$[:alnum:])\\\\\\\\]]|\\\\\\\\+\\\\\\\\+|--|}|\\\\\\\\*\\\\\\\\/)|((?<=^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case))\\\\\\\\s*)\\\\\\\\/(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\])+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ts\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ts\\\"}},\\\"name\\\":\\\"string.regexp.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]}]},\\\"regex-character-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[wWsSdDtrnvf]|\\\\\\\\.\\\",\\\"name\\\":\\\"constant.other.character-class.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})\\\",\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c[A-Z]\\\",\\\"name\\\":\\\"constant.character.control.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[bB]|\\\\\\\\^|\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.control.anchor.regexp\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d*|\\\\\\\\\\\\\\\\k<([a-zA-Z_$][\\\\\\\\w$]*)>\\\"},{\\\"match\\\":\\\"[?+*]|\\\\\\\\{(\\\\\\\\d+,\\\\\\\\d+|\\\\\\\\d+,|,\\\\\\\\d+|\\\\\\\\d+)\\\\\\\\}\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.or.regexp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()((\\\\\\\\?=)|(\\\\\\\\?!)|(\\\\\\\\?<=)|(\\\\\\\\?<!))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.assertion.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.assertion.look-ahead.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-ahead.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.assertion.look-behind.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-behind.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.assertion.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\((?:(\\\\\\\\?:)|(?:\\\\\\\\?<([a-zA-Z_$][\\\\\\\\w$]*)>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.no-capture.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.regexp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(?:.|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\\\\\\-(?:[^\\\\\\\\]\\\\\\\\\\\\\\\\]|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.other.character-class.range.regexp\\\"},{\\\"include\\\":\\\"#regex-character-class\\\"}]},{\\\"include\\\":\\\"#regex-character-class\\\"}]},\\\"return-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?<![:|&])(?=$|^|[{};,]|//)\\\",\\\"name\\\":\\\"meta.return.type.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#return-type-core\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?<![:|&])((?=[{};,]|//|^\\\\\\\\s*$)|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.return.type.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#return-type-core\\\"}]}]},\\\"return-type-core\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<=[:|&])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"shebang\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"}},\\\"match\\\":\\\"\\\\\\\\A(#!).*(?=$)\\\",\\\"name\\\":\\\"comment.line.shebang.ts\\\"},\\\"single-line-comment-consuming-line-ending\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.ts\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.ts\\\",\\\"end\\\":\\\"(?=^)\\\"},\\\"statements\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration\\\"},{\\\"include\\\":\\\"#control-statement\\\"},{\\\"include\\\":\\\"#after-operator-block-as-object-literal\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#label\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-single\\\"},{\\\"include\\\":\\\"#qstring-double\\\"},{\\\"include\\\":\\\"#template\\\"}]},\\\"string-character-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\\\\\{[0-9A-Fa-f]+\\\\\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)\\\",\\\"name\\\":\\\"constant.character.escape.ts\\\"},\\\"super-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))super\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.super.ts\\\"},\\\"support-function-call-identifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#support-objects\\\"},{\\\"include\\\":\\\"#object-identifiers\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))import(?=\\\\\\\\s*[\\\\\\\\(]\\\\\\\\s*[\\\\\\\\\\\\\\\"\\\\\\\\'\\\\\\\\`]))\\\",\\\"name\\\":\\\"keyword.operator.expression.import.ts\\\"}]},\\\"support-objects\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(arguments)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.arguments.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(Promise)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"support.class.promise.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.variable.property.importmeta.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(import)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(meta)\\\\\\\\b(?!\\\\\\\\$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.variable.property.target.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(new)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(target)\\\\\\\\b(?!\\\\\\\\$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.variable.property.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.constant.ts\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(?:(?:(constructor|length|prototype|__proto__)\\\\\\\\b(?!\\\\\\\\$|\\\\\\\\s*(<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\\\\\b(?!\\\\\\\\$)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.object.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.object.module.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.type.object.module.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(exports)|(module)(?:(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))(exports|id|filename|loaded|parent|children))?)\\\\\\\\b(?!\\\\\\\\$)\\\"}]},\\\"switch-statement\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=\\\\\\\\bswitch\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"switch-statement.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(switch)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"name\\\":\\\"switch-expression.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"name\\\":\\\"switch-block.expr.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(case|default(?=:))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.ts\\\"}},\\\"end\\\":\\\"(?=:)\\\",\\\"name\\\":\\\"case-clause.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(:)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"case-clause.expr.ts punctuation.definition.section.case-statement.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.block.ts punctuation.definition.block.ts\\\"}},\\\"contentName\\\":\\\"meta.block.ts\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.block.ts punctuation.definition.block.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"case-clause.expr.ts punctuation.definition.section.case-statement.ts\\\"}},\\\"match\\\":\\\"(:)\\\"},{\\\"include\\\":\\\"#statements\\\"}]}]},\\\"template\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-call\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.template.ts punctuation.definition.string.template.begin.ts\\\"}},\\\"contentName\\\":\\\"string.template.ts\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.template.ts punctuation.definition.string.template.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"template-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*)(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?`)\\\",\\\"end\\\":\\\"(?=`)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#support-function-call-identifiers\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.function.tagged-template.ts\\\"}]},{\\\"include\\\":\\\"#type-arguments\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?\\\\\\\\s*(?=(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.ts\\\"}},\\\"end\\\":\\\"(?=`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"}]}]},\\\"template-substitution-element\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.ts\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.ts\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.ts\\\"}},\\\"name\\\":\\\"meta.template.expression.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"template-type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-call\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.template.ts punctuation.definition.string.template.begin.ts\\\"}},\\\"contentName\\\":\\\"string.template.ts\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.template.ts punctuation.definition.string.template.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template-type-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"template-type-substitution-element\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.ts\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.ts\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.ts\\\"}},\\\"name\\\":\\\"meta.template.expression.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"ternary-expression\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\?\\\\\\\\.\\\\\\\\s*[^[:digit:]])(\\\\\\\\?)(?!\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"this-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))this\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.this.ts\\\"},\\\"type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#type-builtin-literals\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#type-tuple\\\"},{\\\"include\\\":\\\"#type-object\\\"},{\\\"include\\\":\\\"#type-operators\\\"},{\\\"include\\\":\\\"#type-conditional\\\"},{\\\"include\\\":\\\"#type-fn-type-parameters\\\"},{\\\"include\\\":\\\"#type-paren-or-function-parameters\\\"},{\\\"include\\\":\\\"#type-function-return-type\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\"},{\\\"include\\\":\\\"#type-name\\\"}]},\\\"type-alias-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(type)\\\\\\\\b\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.type.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.alias.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.type.declaration.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"(=)\\\\\\\\s*(intrinsic)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.intrinsic.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?<![:|&])(?!\\\\\\\\s*[|&]\\\\\\\\s+)((?=^|[,);\\\\\\\\}\\\\\\\\]]|//)|(?==[^>])|((?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"meta.type.annotation.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ts\\\"}},\\\"end\\\":\\\"(?<![:|&])((?=[,);\\\\\\\\}\\\\\\\\]]|\\\\\\\\/\\\\\\\\/)|(?==[^>])|(?=^\\\\\\\\s*$)|((?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"meta.type.annotation.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-arguments\\\":{\\\"begin\\\":\\\"\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.ts\\\"}},\\\"name\\\":\\\"meta.type.parameters.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},\\\"type-arguments-body\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(_)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-builtin-literals\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(this|true|false|undefined|null|object)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"support.type.builtin.ts\\\"},\\\"type-conditional\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"}},\\\"end\\\":\\\"(?<=:)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-fn-type-parameters\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(new)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.constructor.ts storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.type.constructor.ts keyword.control.new.ts\\\"}},\\\"end\\\":\\\"(?<=>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(new)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.new.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.constructor.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},{\\\"begin\\\":\\\"((?=[(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>))))))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.function.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]}]},\\\"type-function-return-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(=>)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.arrow.ts\\\"}},\\\"end\\\":\\\"(?<!=>)(?<![|&])(?=[,\\\\\\\\]\\\\\\\\)\\\\\\\\{\\\\\\\\}=;>:\\\\\\\\?]|//|$)\\\",\\\"name\\\":\\\"meta.type.function.return.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-function-return-type-core\\\"}]},{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.arrow.ts\\\"}},\\\"end\\\":\\\"(?<!=>)(?<![|&])((?=[,\\\\\\\\]\\\\\\\\)\\\\\\\\{\\\\\\\\}=;:\\\\\\\\?>]|//|^\\\\\\\\s*$)|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.type.function.return.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-function-return-type-core\\\"}]}]},\\\"type-function-return-type-core\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<==>)(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-infer\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.expression.infer.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.expression.extends.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(infer)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?:\\\\\\\\s+(extends)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))?\\\",\\\"name\\\":\\\"meta.type.infer.ts\\\"}]},\\\"type-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(<)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts\\\"}},\\\"contentName\\\":\\\"meta.type.parameters.ts\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts\\\"}},\\\"contentName\\\":\\\"meta.type.parameters.ts\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ts\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.type.ts\\\"}]},\\\"type-object\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ts\\\"}},\\\"name\\\":\\\"meta.object.type.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#indexer-mapped-type-declaration\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-operators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typeof-operator\\\"},{\\\"include\\\":\\\"#type-infer\\\"},{\\\"begin\\\":\\\"([&|])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.ts\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"begin\\\":\\\"[&|]\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))keyof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.keyof.ts\\\"},{\\\"match\\\":\\\"(\\\\\\\\?|\\\\\\\\:)\\\",\\\"name\\\":\\\"keyword.operator.ternary.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))import(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.import.ts\\\"}]},\\\"type-parameters\\\":{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.ts\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.ts\\\"}},\\\"name\\\":\\\"meta.type.parameters.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends|in|out|const)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.ts\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"match\\\":\\\"(=)(?!>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}]},\\\"type-paren-or-function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"name\\\":\\\"meta.type.paren.cover.ts\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts variable.language.this.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s*(\\\\\\\\??)(?=:)\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.ts\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-predicate-operator\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.asserts.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.ts variable.language.this.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.expression.is.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(asserts)\\\\\\\\s+)?(?!asserts)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s(is)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.asserts.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.ts variable.language.this.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(asserts)\\\\\\\\s+(?!is)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))asserts(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.type.asserts.ts\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))is(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.is.ts\\\"}]},\\\"type-primitive\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"support.type.primitive.ts\\\"},\\\"type-string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-single\\\"},{\\\"include\\\":\\\"#qstring-double\\\"},{\\\"include\\\":\\\"#template-type\\\"}]},\\\"type-tuple\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ts\\\"}},\\\"name\\\":\\\"meta.type.tuple.ts\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.rest.ts\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.label.ts\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(\\\\\\\\?)?\\\\\\\\s*(:)\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"typeof-operator\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))typeof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.expression.typeof.ts\\\"}},\\\"end\\\":\\\"(?=[,);}\\\\\\\\]=>:&|{\\\\\\\\?]|(extends\\\\\\\\s+)|$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"undefined-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))undefined(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.undefined.ts\\\"},\\\"var-expr\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^let|[^\\\\\\\\._$[:alnum:]]let|^var|[^\\\\\\\\._$[:alnum:]]var)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#destructuring-variable\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=$|\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.ts\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#destructuring-variable\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^const|[^\\\\\\\\._$[:alnum:]]const)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#destructuring-const\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=$|\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.ts\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#destructuring-const\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^using|[^\\\\\\\\._$[:alnum:]]using|^await\\\\\\\\s+using|[^\\\\\\\\._$[:alnum:]]await\\\\\\\\s+using)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.ts\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ts\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*((?!\\\\\\\\S)|(?=\\\\\\\\/\\\\\\\\/))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.ts\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"var-single-const\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.constant.ts entity.name.function.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.constant.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]}]},\\\"var-single-variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\!)?(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ts entity.name.function.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])(\\\\\\\\!)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.constant.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\!)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ts variable.other.readwrite.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]}]},\\\"var-single-variable-type-annotation\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"variable-initializer\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)(?=\\\\\\\\s*\\\\\\\\S)(?!\\\\\\\\s*.*=>\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}},\\\"end\\\":\\\"(?=$|^|[,);}\\\\\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}},\\\"end\\\":\\\"(?=[,);}\\\\\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))|(?=^\\\\\\\\s*$)|(?<![\\\\\\\\|\\\\\\\\&\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/])(?<=\\\\\\\\S)(?<!=)(?=\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]}},\\\"scopeName\\\":\\\"source.ts\\\",\\\"aliases\\\":[\\\"ts\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"PostCSS\\\",\\\"fileTypes\\\":[\\\"pcss\\\",\\\"postcss\\\"],\\\"foldingStartMarker\\\":\\\"/\\\\\\\\*|^#|^\\\\\\\\*|^\\\\\\\\b|^\\\\\\\\.\\\",\\\"foldingStopMarker\\\":\\\"\\\\\\\\*/|^\\\\\\\\s*$\\\",\\\"name\\\":\\\"postcss\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.postcss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-tag\\\"}]},{\\\"include\\\":\\\"#double-slash\\\"},{\\\"include\\\":\\\"#double-quoted\\\"},{\\\"include\\\":\\\"#single-quoted\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#placeholder-selector\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#variable-root-css\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#unit\\\"},{\\\"include\\\":\\\"#flag\\\"},{\\\"include\\\":\\\"#dotdotdot\\\"},{\\\"begin\\\":\\\"@include\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.css.postcss\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n|\\\\\\\\(|{|;)\\\",\\\"name\\\":\\\"support.function.name.postcss.library\\\"},{\\\"begin\\\":\\\"@mixin|@function\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.css.postcss\\\"}},\\\"end\\\":\\\"$\\\\\\\\n?|(?=\\\\\\\\(|{)\\\",\\\"name\\\":\\\"support.function.name.postcss.no-completions\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[\\\\\\\\w-]+\\\",\\\"name\\\":\\\"entity.name.function\\\"}]},{\\\"match\\\":\\\"(?<=@import)\\\\\\\\s[\\\\\\\\w/.*-]+\\\",\\\"name\\\":\\\"string.quoted.double.css.postcss\\\"},{\\\"begin\\\":\\\"@\\\",\\\"end\\\":\\\"$\\\\\\\\n?|\\\\\\\\s(?!(all|braille|embossed|handheld|print|projection|screen|speech|tty|tv|if|only|not)(\\\\\\\\s|,))|(?=;)\\\",\\\"name\\\":\\\"keyword.control.at-rule.css.postcss\\\"},{\\\"begin\\\":\\\"#\\\",\\\"end\\\":\\\"$\\\\\\\\n?|(?=\\\\\\\\s|,|;|\\\\\\\\(|\\\\\\\\)|\\\\\\\\.|\\\\\\\\[|{|>)\\\",\\\"name\\\":\\\"entity.other.attribute-name.id.css.postcss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#pseudo-class\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\.|(?<=&)(-|_)\\\",\\\"end\\\":\\\"$\\\\\\\\n?|(?=\\\\\\\\s|,|;|\\\\\\\\(|\\\\\\\\)|\\\\\\\\[|{|>)\\\",\\\"name\\\":\\\"entity.other.attribute-name.class.css.postcss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#pseudo-class\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"entity.other.attribute-selector.postcss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-quoted\\\"},{\\\"include\\\":\\\"#single-quoted\\\"},{\\\"match\\\":\\\"\\\\\\\\^|\\\\\\\\$|\\\\\\\\*|~\\\",\\\"name\\\":\\\"keyword.other.regex.postcss\\\"}]},{\\\"match\\\":\\\"(?<=\\\\\\\\]|\\\\\\\\)|not\\\\\\\\(|\\\\\\\\*|>|>\\\\\\\\s):[a-z:-]+|(::|:-)[a-z:-]+\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css.postcss\\\"},{\\\"begin\\\":\\\":\\\",\\\"end\\\":\\\"$\\\\\\\\n?|(?=;|\\\\\\\\s\\\\\\\\(|and\\\\\\\\(|{|}|\\\\\\\\),)\\\",\\\"name\\\":\\\"meta.property-list.css.postcss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-slash\\\"},{\\\"include\\\":\\\"#double-quoted\\\"},{\\\"include\\\":\\\"#single-quoted\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#rgb-value\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#unit\\\"},{\\\"include\\\":\\\"#flag\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#function-content\\\"},{\\\"include\\\":\\\"#function-content-var\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#parent-selector\\\"},{\\\"include\\\":\\\"#property-value\\\"}]},{\\\"include\\\":\\\"#rgb-value\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#function-content\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\-|\\\\\\\\()\\\\\\\\b(a|abbr|acronym|address|applet|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|datalist|dd|del|details|dfn|dialog|div|dl|dt|em|embed|eventsource|fieldset|figure|figcaption|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|label|legend|li|link|map|mark|menu|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|picture|pre|progress|q|samp|script|section|select|small|source|span|strike|strong|style|sub|summary|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video|main|svg|rect|ruby|center|circle|ellipse|line|polyline|polygon|path|text|u|x)\\\\\\\\b(?!-|\\\\\\\\)|:\\\\\\\\s)|&\\\",\\\"end\\\":\\\"(?=\\\\\\\\s|,|;|\\\\\\\\(|\\\\\\\\)|\\\\\\\\.|\\\\\\\\[|{|>|-|_)\\\",\\\"name\\\":\\\"entity.name.tag.css.postcss.symbol\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#pseudo-class\\\"}]},{\\\"include\\\":\\\"#operator\\\"},{\\\"match\\\":\\\"[a-z-]+((?=:|#{))\\\",\\\"name\\\":\\\"support.type.property-name.css.postcss\\\"},{\\\"include\\\":\\\"#reserved-words\\\"},{\\\"include\\\":\\\"#property-value\\\"}],\\\"repository\\\":{\\\"comment-tag\\\":{\\\"begin\\\":\\\"{{\\\",\\\"end\\\":\\\"}}\\\",\\\"name\\\":\\\"comment.tags.postcss\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[\\\\\\\\w-]+\\\",\\\"name\\\":\\\"comment.tag.postcss\\\"}]},\\\"dotdotdot\\\":{\\\"match\\\":\\\"\\\\\\\\.{3}\\\",\\\"name\\\":\\\"variable.other\\\"},\\\"double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.css.postcss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#quoted-interpolation\\\"}]},\\\"double-slash\\\":{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.postcss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-tag\\\"}]},\\\"flag\\\":{\\\"match\\\":\\\"!(important|default|optional|global)\\\",\\\"name\\\":\\\"keyword.other.important.css.postcss\\\"},\\\"function\\\":{\\\"match\\\":\\\"(?<=[\\\\\\\\s|\\\\\\\\(|,|:])(?!url|format|attr)[\\\\\\\\w-][\\\\\\\\w-]*(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.name.postcss\\\"},\\\"function-content\\\":{\\\"match\\\":\\\"(?<=url\\\\\\\\(|format\\\\\\\\(|attr\\\\\\\\().+?(?=\\\\\\\\))\\\",\\\"name\\\":\\\"string.quoted.double.css.postcss\\\"},\\\"function-content-var\\\":{\\\"match\\\":\\\"(?<=var\\\\\\\\()[\\\\\\\\w-]+(?=\\\\\\\\))\\\",\\\"name\\\":\\\"variable.parameter.postcss\\\"},\\\"interpolation\\\":{\\\"begin\\\":\\\"#{\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"support.function.interpolation.postcss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#unit\\\"},{\\\"include\\\":\\\"#double-quoted\\\"},{\\\"include\\\":\\\"#single-quoted\\\"}]},\\\"numeric\\\":{\\\"match\\\":\\\"(-|\\\\\\\\.)?[0-9]+(\\\\\\\\.[0-9]+)?\\\",\\\"name\\\":\\\"constant.numeric.css.postcss\\\"},\\\"operator\\\":{\\\"match\\\":\\\"\\\\\\\\+|\\\\\\\\s-\\\\\\\\s|\\\\\\\\s-(?=\\\\\\\\$)|(?<=\\\\\\\\()-(?=\\\\\\\\$)|\\\\\\\\s-(?=\\\\\\\\()|\\\\\\\\*|/|%|=|!|<|>|~\\\",\\\"name\\\":\\\"keyword.operator.postcss\\\"},\\\"parent-selector\\\":{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"entity.name.tag.css.postcss\\\"},\\\"placeholder-selector\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\d)%(?!\\\\\\\\d)\\\",\\\"end\\\":\\\"$\\\\\\\\n?|\\\\\\\\s|(?=;|{)\\\",\\\"name\\\":\\\"entity.other.attribute-name.placeholder-selector.postcss\\\"},\\\"property-value\\\":{\\\"match\\\":\\\"[\\\\\\\\w-]+\\\",\\\"name\\\":\\\"meta.property-value.css.postcss, support.constant.property-value.css.postcss\\\"},\\\"pseudo-class\\\":{\\\"match\\\":\\\":[a-z:-]+\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css.postcss\\\"},\\\"quoted-interpolation\\\":{\\\"begin\\\":\\\"#{\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"support.function.interpolation.postcss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#unit\\\"}]},\\\"reserved-words\\\":{\\\"match\\\":\\\"\\\\\\\\b(false|from|in|not|null|through|to|true)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.property-name.css.postcss\\\"},\\\"rgb-value\\\":{\\\"match\\\":\\\"(#)([0-9a-fA-F]{3}|[0-9a-fA-F]{6})\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.color.rgb-value.css.postcss\\\"},\\\"single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.css.postcss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#quoted-interpolation\\\"}]},\\\"unit\\\":{\\\"match\\\":\\\"(?<=[\\\\\\\\d]|})(ch|cm|deg|dpcm|dpi|dppx|em|ex|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vw|%)\\\",\\\"name\\\":\\\"keyword.other.unit.css.postcss\\\"},\\\"variable\\\":{\\\"match\\\":\\\"\\\\\\\\$[\\\\\\\\w-]+\\\",\\\"name\\\":\\\"variable.parameter.postcss\\\"},\\\"variable-root-css\\\":{\\\"match\\\":\\\"(?<!&)--[\\\\\\\\w-]+\\\",\\\"name\\\":\\\"variable.parameter.postcss\\\"}},\\\"scopeName\\\":\\\"source.css.postcss\\\"}\"))\n\nexport default [\nlang\n]\n", "import json from './json.mjs'\nimport javascript from './javascript.mjs'\nimport typescript from './typescript.mjs'\nimport css from './css.mjs'\nimport postcss from './postcss.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Astro\\\",\\\"fileTypes\\\":[\\\"astro\\\"],\\\"injections\\\":{\\\"L:(meta.script.astro) (meta.lang.js | meta.lang.javascript | meta.lang.partytown | meta.lang.node) - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"L:(meta.script.astro) (meta.lang.json) - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.json\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json\\\"}]}]},\\\"L:(meta.script.astro) (meta.lang.ts | meta.lang.typescript) - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.ts\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]}]},\\\"L:meta.script.astro - meta.lang - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"L:meta.style.astro - meta.lang - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]},\\\"L:meta.style.astro meta.lang.css - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]},\\\"L:meta.style.astro meta.lang.less - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.css.less\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.less\\\"}]}]},\\\"L:meta.style.astro meta.lang.postcss - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.css.postcss\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.postcss\\\"}]}]},\\\"L:meta.style.astro meta.lang.sass - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.sass\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sass\\\"}]}]},\\\"L:meta.style.astro meta.lang.scss - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.css.scss\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.scss\\\"}]}]},\\\"L:meta.style.astro meta.lang.stylus - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.stylus\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.stylus\\\"}]}]}},\\\"name\\\":\\\"astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#scope\\\"},{\\\"include\\\":\\\"#frontmatter\\\"},{\\\"include\\\":\\\"#text\\\"}],\\\"repository\\\":{\\\"attribute-literal\\\":{\\\"begin\\\":\\\"(`)\\\",\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"name\\\":\\\"string.template.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx#template-substitution-element\\\"},{\\\"include\\\":\\\"source.tsx#string-character-escape\\\"}]},\\\"attributes\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes-events\\\"},{\\\"include\\\":\\\"#attributes-keyvalue\\\"},{\\\"include\\\":\\\"#attributes-interpolated\\\"}]},\\\"attributes-events\\\":{\\\"begin\\\":\\\"(on(s(croll|t(orage|alled)|u(spend|bmit)|e(curitypolicyviolation|ek(ing|ed)|lect))|hashchange|c(hange|o(ntextmenu|py)|u(t|echange)|l(ick|ose)|an(cel|play(through)?))|t(imeupdate|oggle)|in(put|valid)|o(nline|ffline)|d(urationchange|r(op|ag(start|over|e(n(ter|d)|xit)|leave)?)|blclick)|un(handledrejection|load)|p(opstate|lay(ing)?|a(ste|use|ge(show|hide))|rogress)|e(nded|rror|mptied)|volumechange|key(down|up|press)|focus|w(heel|aiting)|l(oad(start|e(nd|d(data|metadata)))?|anguagechange)|a(uxclick|fterprint|bort)|r(e(s(ize|et)|jectionhandled)|atechange)|m(ouse(o(ut|ver)|down|up|enter|leave|move)|essage(error)?)|b(efore(unload|print)|lur)))(?![\\\\\\\\\\\\\\\\w:-])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\".*\\\",\\\"name\\\":\\\"entity.other.attribute-name.astro\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.$1.astro\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.astro\\\"}},\\\"end\\\":\\\"(?<=[^\\\\\\\\s=])(?!\\\\\\\\s*=)|(?=/?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#attribute-literal\\\"},{\\\"begin\\\":\\\"(?=[^\\\\\\\\s=<>`/]|/(?!>))\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.line.js\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"source.js\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"match\\\":\\\"(([^\\\\\\\\s\\\\\\\\\\\\\\\"'=<>`/]|/(?!>))+)\\\",\\\"name\\\":\\\"string.unquoted.astro\\\"},{\\\"begin\\\":\\\"([\\\\\\\"])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.astro\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.astro\\\"}},\\\"name\\\":\\\"string.quoted.astro\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"match\\\":\\\"([^\\\\\\\\n\\\\\\\\\\\\\\\"/]|/(?![/*]))+\\\"},{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\")|\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\")|\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.js\\\"}},\\\"name\\\":\\\"comment.block.js\\\"}]},{\\\"begin\\\":\\\"(['])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.astro\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.astro\\\"}},\\\"name\\\":\\\"string.quoted.astro\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"match\\\":\\\"([^\\\\\\\\n\\\\\\\\'/]|/(?![/*]))+\\\"},{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\')|\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.js\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\')|\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.js\\\"}},\\\"name\\\":\\\"comment.block.js\\\"}]}]}]}]},\\\"attributes-interpolated\\\":{\\\"begin\\\":\\\"(?<!:|=)\\\\\\\\s*({)\\\",\\\"contentName\\\":\\\"meta.embedded.expression.astro source.tsx\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx\\\"}]},\\\"attributes-keyvalue\\\":{\\\"begin\\\":\\\"([_@$[:alpha:]][:._\\\\\\\\-$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\".*\\\",\\\"name\\\":\\\"entity.other.attribute-name.astro\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.$1.astro\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.astro\\\"}},\\\"end\\\":\\\"(?<=[^\\\\\\\\s=])(?!\\\\\\\\s*=)|(?=/?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes-value\\\"}]}]},\\\"attributes-value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"([^\\\\\\\\s\\\\\\\"'=<>`/]|/(?!>))+\\\",\\\"name\\\":\\\"string.unquoted.astro\\\"},{\\\"begin\\\":\\\"(['\\\\\\\"])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.astro\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.astro\\\"}},\\\"name\\\":\\\"string.quoted.astro\\\"},{\\\"include\\\":\\\"#attribute-literal\\\"}]},\\\"comments\\\":{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.astro\\\"}},\\\"end\\\":\\\"-->\\\",\\\"name\\\":\\\"comment.block.astro\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G-?>|<!--(?!>)|<!-(?=-->)|--!>\\\",\\\"name\\\":\\\"invalid.illegal.characters-not-allowed-here.astro\\\"}]},\\\"entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.astro\\\"},\\\"912\\\":{\\\"name\\\":\\\"punctuation.definition.entity.astro\\\"}},\\\"match\\\":\\\"(&)(?=[a-zA-Z])((a(s(ymp(eq)?|cr|t)|n(d(slope|d|v|and)?|g(s(t|ph)|zarr|e|le|rt(vb(d)?)?|msd(a(h|c|d|e|f|a|g|b))?)?)|c(y|irc|d|ute|E)?|tilde|o(pf|gon)|uml|p(id|os|prox(eq)?|e|E|acir)?|elig|f(r)?|w(conint|int)|l(pha|e(ph|fsym))|acute|ring|grave|m(p|a(cr|lg))|breve)|A(s(sign|cr)|nd|MP|c(y|irc)|tilde|o(pf|gon)|uml|pplyFunction|fr|Elig|lpha|acute|ring|grave|macr|breve))|(B(scr|cy|opf|umpeq|e(cause|ta|rnoullis)|fr|a(ckslash|r(v|wed))|reve)|b(s(cr|im(e)?|ol(hsub|b)?|emi)|n(ot|e(quiv)?)|c(y|ong)|ig(s(tar|qcup)|c(irc|up|ap)|triangle(down|up)|o(times|dot|plus)|uplus|vee|wedge)|o(t(tom)?|pf|wtie|x(h(d|u|D|U)?|times|H(d|u|D|U)?|d(R|l|r|L)|u(R|l|r|L)|plus|D(R|l|r|L)|v(R|h|H|l|r|L)?|U(R|l|r|L)|V(R|h|H|l|r|L)?|minus|box))|Not|dquo|u(ll(et)?|mp(e(q)?|E)?)|prime|e(caus(e)?|t(h|ween|a)|psi|rnou|mptyv)|karow|fr|l(ock|k(1(2|4)|34)|a(nk|ck(square|triangle(down|left|right)?|lozenge)))|a(ck(sim(eq)?|cong|prime|epsilon)|r(vee|wed(ge)?))|r(eve|vbar)|brk(tbrk)?))|(c(s(cr|u(p(e)?|b(e)?))|h(cy|i|eck(mark)?)|ylcty|c(irc|ups(sm)?|edil|a(ps|ron))|tdot|ir(scir|c(eq|le(d(R|circ|S|dash|ast)|arrow(left|right)))?|e|fnint|E|mid)?|o(n(int|g(dot)?)|p(y(sr)?|f|rod)|lon(e(q)?)?|m(p(fn|le(xes|ment))?|ma(t)?))|dot|u(darr(l|r)|p(s|c(up|ap)|or|dot|brcap)?|e(sc|pr)|vee|wed|larr(p)?|r(vearrow(left|right)|ly(eq(succ|prec)|vee|wedge)|arr(m)?|ren))|e(nt(erdot)?|dil|mptyv)|fr|w(conint|int)|lubs(uit)?|a(cute|p(s|c(up|ap)|dot|and|brcup)?|r(on|et))|r(oss|arr))|C(scr|hi|c(irc|onint|edil|aron)|ircle(Minus|Times|Dot|Plus)|Hcy|o(n(tourIntegral|int|gruent)|unterClockwiseContourIntegral|p(f|roduct)|lon(e)?)|dot|up(Cap)?|OPY|e(nterDot|dilla)|fr|lo(seCurly(DoubleQuote|Quote)|ckwiseContourIntegral)|a(yleys|cute|p(italDifferentialD)?)|ross))|(d(s(c(y|r)|trok|ol)|har(l|r)|c(y|aron)|t(dot|ri(f)?)|i(sin|e|v(ide(ontimes)?|onx)?|am(s|ond(suit)?)?|gamma)|Har|z(cy|igrarr)|o(t(square|plus|eq(dot)?|minus)?|ublebarwedge|pf|wn(harpoon(left|right)|downarrows|arrow)|llar)|d(otseq|a(rr|gger))?|u(har|arr)|jcy|e(lta|g|mptyv)|f(isht|r)|wangle|lc(orn|rop)|a(sh(v)?|leth|rr|gger)|r(c(orn|rop)|bkarow)|b(karow|lac)|Arr)|D(s(cr|trok)|c(y|aron)|Scy|i(fferentialD|a(critical(Grave|Tilde|Do(t|ubleAcute)|Acute)|mond))|o(t(Dot|Equal)?|uble(Right(Tee|Arrow)|ContourIntegral|Do(t|wnArrow)|Up(DownArrow|Arrow)|VerticalBar|L(ong(RightArrow|Left(RightArrow|Arrow))|eft(RightArrow|Tee|Arrow)))|pf|wn(Right(TeeVector|Vector(Bar)?)|Breve|Tee(Arrow)?|arrow|Left(RightVector|TeeVector|Vector(Bar)?)|Arrow(Bar|UpArrow)?))|Zcy|el(ta)?|D(otrahd)?|Jcy|fr|a(shv|rr|gger)))|(e(s(cr|im|dot)|n(sp|g)|c(y|ir(c)?|olon|aron)|t(h|a)|o(pf|gon)|dot|u(ro|ml)|p(si(v|lon)?|lus|ar(sl)?)|e|D(ot|Dot)|q(s(im|lant(less|gtr))|c(irc|olon)|u(iv(DD)?|est|als)|vparsl)|f(Dot|r)|l(s(dot)?|inters|l)?|a(ster|cute)|r(Dot|arr)|g(s(dot)?|rave)?|x(cl|ist|p(onentiale|ectation))|m(sp(1(3|4))?|pty(set|v)?|acr))|E(s(cr|im)|c(y|irc|aron)|ta|o(pf|gon)|NG|dot|uml|TH|psilon|qu(ilibrium|al(Tilde)?)|fr|lement|acute|grave|x(ists|ponentialE)|m(pty(SmallSquare|VerySmallSquare)|acr)))|(f(scr|nof|cy|ilig|o(pf|r(k(v)?|all))|jlig|partint|emale|f(ilig|l(ig|lig)|r)|l(tns|lig|at)|allingdotseq|r(own|a(sl|c(1(2|8|3|4|5|6)|78|2(3|5)|3(8|4|5)|45|5(8|6)))))|F(scr|cy|illed(SmallSquare|VerySmallSquare)|o(uriertrf|pf|rAll)|fr))|(G(scr|c(y|irc|edil)|t|opf|dot|T|Jcy|fr|amma(d)?|reater(Greater|SlantEqual|Tilde|Equal(Less)?|FullEqual|Less)|g|breve)|g(s(cr|im(e|l)?)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|irc)|t(c(c|ir)|dot|quest|lPar|r(sim|dot|eq(qless|less)|less|a(pprox|rr)))?|imel|opf|dot|jcy|e(s(cc|dot(o(l)?)?|l(es)?)?|q(slant|q)?|l)?|v(nE|ertneqq)|fr|E(l)?|l(j|E|a)?|a(cute|p|mma(d)?)|rave|g(g)?|breve))|(h(s(cr|trok|lash)|y(phen|bull)|circ|o(ok(leftarrow|rightarrow)|pf|arr|rbar|mtht)|e(llip|arts(uit)?|rcon)|ks(earow|warow)|fr|a(irsp|lf|r(dcy|r(cir|w)?)|milt)|bar|Arr)|H(s(cr|trok)|circ|ilbertSpace|o(pf|rizontalLine)|ump(DownHump|Equal)|fr|a(cek|t)|ARDcy))|(i(s(cr|in(s(v)?|dot|v|E)?)|n(care|t(cal|prod|e(rcal|gers)|larhk)?|odot|fin(tie)?)?|c(y|irc)?|t(ilde)?|i(nfin|i(nt|int)|ota)?|o(cy|ta|pf|gon)|u(kcy|ml)|jlig|prod|e(cy|xcl)|quest|f(f|r)|acute|grave|m(of|ped|a(cr|th|g(part|e|line))))|I(scr|n(t(e(rsection|gral))?|visible(Comma|Times))|c(y|irc)|tilde|o(ta|pf|gon)|dot|u(kcy|ml)|Ocy|Jlig|fr|Ecy|acute|grave|m(plies|a(cr|ginaryI))?))|(j(s(cr|ercy)|c(y|irc)|opf|ukcy|fr|math)|J(s(cr|ercy)|c(y|irc)|opf|ukcy|fr))|(k(scr|hcy|c(y|edil)|opf|jcy|fr|appa(v)?|green)|K(scr|c(y|edil)|Hcy|opf|Jcy|fr|appa))|(l(s(h|cr|trok|im(e|g)?|q(uo(r)?|b)|aquo)|h(ar(d|u(l)?)|blk)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|ub|e(il|dil)|aron)|Barr|t(hree|c(c|ir)|imes|dot|quest|larr|r(i(e|f)?|Par))?|Har|o(ng(left(arrow|rightarrow)|rightarrow|mapsto)|times|z(enge|f)?|oparrow(left|right)|p(f|lus|ar)|w(ast|bar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|r(dhar|ushar))|ur(dshar|uhar)|jcy|par(lt)?|e(s(s(sim|dot|eq(qgtr|gtr)|approx|gtr)|cc|dot(o(r)?)?|g(es)?)?|q(slant|q)?|ft(harpoon(down|up)|threetimes|leftarrows|arrow(tail)?|right(squigarrow|harpoons|arrow(s)?))|g)?|v(nE|ertneqq)|f(isht|loor|r)|E(g)?|l(hard|corner|tri|arr)?|a(ng(d|le)?|cute|t(e(s)?|ail)?|p|emptyv|quo|rr(sim|hk|tl|pl|fs|lp|b(fs)?)?|gran|mbda)|r(har(d)?|corner|tri|arr|m)|g(E)?|m(idot|oust(ache)?)|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr))|L(s(h|cr|trok)|c(y|edil|aron)|t|o(ng(RightArrow|left(arrow|rightarrow)|rightarrow|Left(RightArrow|Arrow))|pf|wer(RightArrow|LeftArrow))|T|e(ss(Greater|SlantEqual|Tilde|EqualGreater|FullEqual|Less)|ft(Right(Vector|Arrow)|Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|rightarrow|Floor|A(ngleBracket|rrow(RightArrow|Bar)?)))|Jcy|fr|l(eftarrow)?|a(ng|cute|placetrf|rr|mbda)|midot))|(M(scr|cy|inusPlus|opf|u|e(diumSpace|llintrf)|fr|ap)|m(s(cr|tpos)|ho|nplus|c(y|omma)|i(nus(d(u)?|b)?|cro|d(cir|dot|ast)?)|o(dels|pf)|dash|u(ltimap|map)?|p|easuredangle|DDot|fr|l(cp|dr)|a(cr|p(sto(down|up|left)?)?|l(t(ese)?|e)|rker)))|(n(s(hort(parallel|mid)|c(cue|e|r)?|im(e(q)?)?|u(cc(eq)?|p(set(eq(q)?)?|e|E)?|b(set(eq(q)?)?|e|E)?)|par|qsu(pe|be)|mid)|Rightarrow|h(par|arr|Arr)|G(t(v)?|g)|c(y|ong(dot)?|up|edil|a(p|ron))|t(ilde|lg|riangle(left(eq)?|right(eq)?)|gl)|i(s(d)?|v)?|o(t(ni(v(c|a|b))?|in(dot|v(c|a|b)|E)?)?|pf)|dash|u(m(sp|ero)?)?|jcy|p(olint|ar(sl|t|allel)?|r(cue|e(c(eq)?)?)?)|e(s(im|ear)|dot|quiv|ar(hk|r(ow)?)|xist(s)?|Arr)?|v(sim|infin|Harr|dash|Dash|l(t(rie)?|e|Arr)|ap|r(trie|Arr)|g(t|e))|fr|w(near|ar(hk|r(ow)?)|Arr)|V(dash|Dash)|l(sim|t(ri(e)?)?|dr|e(s(s)?|q(slant|q)?|ft(arrow|rightarrow))?|E|arr|Arr)|a(ng|cute|tur(al(s)?)?|p(id|os|prox|E)?|bla)|r(tri(e)?|ightarrow|arr(c|w)?|Arr)|g(sim|t(r)?|e(s|q(slant|q)?)?|E)|mid|L(t(v)?|eft(arrow|rightarrow)|l)|b(sp|ump(e)?))|N(scr|c(y|edil|aron)|tilde|o(nBreakingSpace|Break|t(R(ightTriangle(Bar|Equal)?|everseElement)|Greater(Greater|SlantEqual|Tilde|Equal|FullEqual|Less)?|S(u(cceeds(SlantEqual|Tilde|Equal)?|perset(Equal)?|bset(Equal)?)|quareSu(perset(Equal)?|bset(Equal)?))|Hump(DownHump|Equal)|Nested(GreaterGreater|LessLess)|C(ongruent|upCap)|Tilde(Tilde|Equal|FullEqual)?|DoubleVerticalBar|Precedes(SlantEqual|Equal)?|E(qual(Tilde)?|lement|xists)|VerticalBar|Le(ss(Greater|SlantEqual|Tilde|Equal|Less)?|ftTriangle(Bar|Equal)?))?|pf)|u|e(sted(GreaterGreater|LessLess)|wLine|gative(MediumSpace|Thi(nSpace|ckSpace)|VeryThinSpace))|Jcy|fr|acute))|(o(s(cr|ol|lash)|h(m|bar)|c(y|ir(c)?)|ti(lde|mes(as)?)|S|int|opf|d(sold|iv|ot|ash|blac)|uml|p(erp|lus|ar)|elig|vbar|f(cir|r)|l(c(ir|ross)|t|ine|arr)|a(st|cute)|r(slope|igof|or|d(er(of)?|f|m)?|v|arr)?|g(t|on|rave)|m(i(nus|cron|d)|ega|acr))|O(s(cr|lash)|c(y|irc)|ti(lde|mes)|opf|dblac|uml|penCurly(DoubleQuote|Quote)|ver(B(ar|rac(e|ket))|Parenthesis)|fr|Elig|acute|r|grave|m(icron|ega|acr)))|(p(s(cr|i)|h(i(v)?|one|mmat)|cy|i(tchfork|v)?|o(intint|und|pf)|uncsp|er(cnt|tenk|iod|p|mil)|fr|l(us(sim|cir|two|d(o|u)|e|acir|mn|b)?|an(ck(h)?|kv))|ar(s(im|l)|t|a(llel)?)?|r(sim|n(sim|E|ap)|cue|ime(s)?|o(d|p(to)?|f(surf|line|alar))|urel|e(c(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?)?|E|ap)?|m)|P(s(cr|i)|hi|cy|i|o(incareplane|pf)|fr|lusMinus|artialD|r(ime|o(duct|portion(al)?)|ecedes(SlantEqual|Tilde|Equal)?)?))|(q(scr|int|opf|u(ot|est(eq)?|at(int|ernions))|prime|fr)|Q(scr|opf|UOT|fr))|(R(s(h|cr)|ho|c(y|edil|aron)|Barr|ight(Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|Floor|A(ngleBracket|rrow(Bar|LeftArrow)?))|o(undImplies|pf)|uleDelayed|e(verse(UpEquilibrium|E(quilibrium|lement)))?|fr|EG|a(ng|cute|rr(tl)?)|rightarrow)|r(s(h|cr|q(uo(r)?|b)|aquo)|h(o(v)?|ar(d|u(l)?))|nmid|c(y|ub|e(il|dil)|aron)|Barr|t(hree|imes|ri(e|f|ltri)?)|i(singdotseq|ng|ght(squigarrow|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(tail)?|rightarrows))|Har|o(times|p(f|lus|ar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|ldhar)|uluhar|p(polint|ar(gt)?)|e(ct|al(s|ine|part)?|g)|f(isht|loor|r)|l(har|arr|m)|a(ng(d|e|le)?|c(ute|e)|t(io(nals)?|ail)|dic|emptyv|quo|rr(sim|hk|c|tl|pl|fs|w|lp|ap|b(fs)?)?)|rarr|x|moust(ache)?|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr)))|(s(s(cr|tarf|etmn|mile)|h(y|c(hcy|y)|ort(parallel|mid)|arp)|c(sim|y|n(sim|E|ap)|cue|irc|polint|e(dil)?|E|a(p|ron))?|t(ar(f)?|r(ns|aight(phi|epsilon)))|i(gma(v|f)?|m(ne|dot|plus|e(q)?|l(E)?|rarr|g(E)?)?)|zlig|o(pf|ftcy|l(b(ar)?)?)|dot(e|b)?|u(ng|cc(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?|p(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|hs(ol|ub)|1|n(e|E)|2|d(sub|ot)|3|plus|e(dot)?|E|larr|mult)?|m|b(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|n(e|E)|dot|plus|e(dot)?|E|rarr|mult)?)|pa(des(uit)?|r)|e(swar|ct|tm(n|inus)|ar(hk|r(ow)?)|xt|mi|Arr)|q(su(p(set(eq)?|e)?|b(set(eq)?|e)?)|c(up(s)?|ap(s)?)|u(f|ar(e|f))?)|fr(own)?|w(nwar|ar(hk|r(ow)?)|Arr)|larr|acute|rarr|m(t(e(s)?)?|i(d|le)|eparsl|a(shp|llsetminus))|bquo)|S(scr|hort(RightArrow|DownArrow|UpArrow|LeftArrow)|c(y|irc|edil|aron)?|tar|igma|H(cy|CHcy)|opf|u(c(hThat|ceeds(SlantEqual|Tilde|Equal)?)|p(set|erset(Equal)?)?|m|b(set(Equal)?)?)|OFTcy|q(uare(Su(perset(Equal)?|bset(Equal)?)|Intersection|Union)?|rt)|fr|acute|mallCircle))|(t(s(hcy|c(y|r)|trok)|h(i(nsp|ck(sim|approx))|orn|e(ta(sym|v)?|re(4|fore))|k(sim|ap))|c(y|edil|aron)|i(nt|lde|mes(d|b(ar)?)?)|o(sa|p(cir|f(ork)?|bot)?|ea)|dot|prime|elrec|fr|w(ixt|ohead(leftarrow|rightarrow))|a(u|rget)|r(i(sb|time|dot|plus|e|angle(down|q|left(eq)?|right(eq)?)?|minus)|pezium|ade)|brk)|T(s(cr|trok)|RADE|h(i(nSpace|ckSpace)|e(ta|refore))|c(y|edil|aron)|S(cy|Hcy)|ilde(Tilde|Equal|FullEqual)?|HORN|opf|fr|a(u|b)|ripleDot))|(u(scr|h(ar(l|r)|blk)|c(y|irc)|t(ilde|dot|ri(f)?)|Har|o(pf|gon)|d(har|arr|blac)|u(arr|ml)|p(si(h|lon)?|harpoon(left|right)|downarrow|uparrows|lus|arrow)|f(isht|r)|wangle|l(c(orn(er)?|rop)|tri)|a(cute|rr)|r(c(orn(er)?|rop)|tri|ing)|grave|m(l|acr)|br(cy|eve)|Arr)|U(scr|n(ion(Plus)?|der(B(ar|rac(e|ket))|Parenthesis))|c(y|irc)|tilde|o(pf|gon)|dblac|uml|p(si(lon)?|downarrow|Tee(Arrow)?|per(RightArrow|LeftArrow)|DownArrow|Equilibrium|arrow|Arrow(Bar|DownArrow)?)|fr|a(cute|rr(ocir)?)|ring|grave|macr|br(cy|eve)))|(v(s(cr|u(pn(e|E)|bn(e|E)))|nsu(p|b)|cy|Bar(v)?|zigzag|opf|dash|prop|e(e(eq|bar)?|llip|r(t|bar))|Dash|fr|ltri|a(ngrt|r(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|t(heta|riangle(left|right))|p(hi|i|ropto)|epsilon|kappa|r(ho)?))|rtri|Arr)|V(scr|cy|opf|dash(l)?|e(e|r(yThinSpace|t(ical(Bar|Separator|Tilde|Line))?|bar))|Dash|vdash|fr|bar))|(w(scr|circ|opf|p|e(ierp|d(ge(q)?|bar))|fr|r(eath)?)|W(scr|circ|opf|edge|fr))|(X(scr|i|opf|fr)|x(s(cr|qcup)|h(arr|Arr)|nis|c(irc|up|ap)|i|o(time|dot|p(f|lus))|dtri|u(tri|plus)|vee|fr|wedge|l(arr|Arr)|r(arr|Arr)|map))|(y(scr|c(y|irc)|icy|opf|u(cy|ml)|en|fr|ac(y|ute))|Y(scr|c(y|irc)|opf|uml|Icy|Ucy|fr|acute|Acy))|(z(scr|hcy|c(y|aron)|igrarr|opf|dot|e(ta|etrf)|fr|w(nj|j)|acute)|Z(scr|c(y|aron)|Hcy|opf|dot|e(ta|roWidthSpace)|fr|acute)))(;)\\\",\\\"name\\\":\\\"constant.character.entity.named.$2.astro\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.astro\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.astro\\\"}},\\\"match\\\":\\\"(&)#[0-9]+(;)\\\",\\\"name\\\":\\\"constant.character.entity.numeric.decimal.astro\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.astro\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.astro\\\"}},\\\"match\\\":\\\"(&)#[xX][0-9a-fA-F]+(;)\\\",\\\"name\\\":\\\"constant.character.entity.numeric.hexadecimal.astro\\\"},{\\\"match\\\":\\\"&(?=[a-zA-Z0-9]+;)\\\",\\\"name\\\":\\\"invalid.illegal.ambiguous-ampersand.astro\\\"}]},\\\"frontmatter\\\":{\\\"begin\\\":\\\"\\\\\\\\A(-{3})\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment\\\"}},\\\"contentName\\\":\\\"source.ts\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(-{3})|\\\\\\\\.{3}\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"comment\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]},\\\"interpolation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.astro\\\"}},\\\"contentName\\\":\\\"meta.embedded.expression.astro source.tsx\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.astro\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(?={)\\\",\\\"end\\\":\\\"(?<=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx#object-literal\\\"}]},{\\\"include\\\":\\\"source.tsx\\\"}]}]},\\\"scope\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#tags\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#entities\\\"}]},\\\"tags\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-raw\\\"},{\\\"include\\\":\\\"#tags-lang\\\"},{\\\"include\\\":\\\"#tags-void\\\"},{\\\"include\\\":\\\"#tags-general-end\\\"},{\\\"include\\\":\\\"#tags-general-start\\\"}]},\\\"tags-end-node\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.tag.end.astro punctuation.definition.tag.begin.astro\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.tag.end.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-name\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"meta.tag.end.astro punctuation.definition.tag.end.astro\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.tag.start.astro punctuation.definition.tag.end.astro\\\"}},\\\"match\\\":\\\"(</)(.*?)\\\\\\\\s*(>)|(/>)\\\"},\\\"tags-general-end\\\":{\\\"begin\\\":\\\"(</)([^/\\\\\\\\s>]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.tag.end.astro punctuation.definition.tag.begin.astro\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.tag.end.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-name\\\"}]}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.tag.end.astro punctuation.definition.tag.end.astro\\\"}},\\\"name\\\":\\\"meta.scope.tag.$2.astro\\\"},\\\"tags-general-start\\\":{\\\"begin\\\":\\\"(<)([^/\\\\\\\\s>/]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-start-node\\\"}]}},\\\"end\\\":\\\"(/?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.tag.start.astro punctuation.definition.tag.end.astro\\\"}},\\\"name\\\":\\\"meta.scope.tag.$2.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-start-attributes\\\"}]},\\\"tags-lang\\\":{\\\"begin\\\":\\\"<(script|style)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-start-node\\\"}]}},\\\"end\\\":\\\"</\\\\\\\\1\\\\\\\\s*>|/>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-end-node\\\"}]}},\\\"name\\\":\\\"meta.scope.tag.$1.astro meta.$1.astro\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=\\\\\\\\s*[^>]*?(type|lang)\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]|)(?:text\\\\\\\\/)?(application\\\\\\\\/ld\\\\\\\\+json)\\\\\\\\2)\\\",\\\"end\\\":\\\"(?=</|/>)\\\",\\\"name\\\":\\\"meta.lang.json.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-lang-start-attributes\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G(?=\\\\\\\\s*[^>]*?(type|lang)\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]|)(module)\\\\\\\\2)\\\",\\\"end\\\":\\\"(?=</|/>)\\\",\\\"name\\\":\\\"meta.lang.javascript.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-lang-start-attributes\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G(?=\\\\\\\\s*[^>]*?(type|lang)\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]|)(?:text/|application/)?([\\\\\\\\w\\\\\\\\/+]+)\\\\\\\\2)\\\",\\\"end\\\":\\\"(?=</|/>)\\\",\\\"name\\\":\\\"meta.lang.$3.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-lang-start-attributes\\\"}]},{\\\"include\\\":\\\"#tags-lang-start-attributes\\\"}]},\\\"tags-lang-start-attributes\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.astro\\\"}},\\\"name\\\":\\\"meta.tag.start.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes\\\"}]},\\\"tags-name\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[A-Z][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"support.class.component.astro\\\"},{\\\"match\\\":\\\"[a-z][\\\\\\\\w0-9:]*-[\\\\\\\\w0-9:-]*\\\",\\\"name\\\":\\\"meta.tag.custom.astro entity.name.tag.astro\\\"},{\\\"match\\\":\\\"[a-z][\\\\\\\\w0-9:-]*\\\",\\\"name\\\":\\\"entity.name.tag.astro\\\"}]},\\\"tags-raw\\\":{\\\"begin\\\":\\\"<([^/?!\\\\\\\\s<>]+)(?=[^>]+is:raw).*?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-start-node\\\"}]}},\\\"contentName\\\":\\\"source.unknown\\\",\\\"end\\\":\\\"</\\\\\\\\1\\\\\\\\s*>|/>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-end-node\\\"}]}},\\\"name\\\":\\\"meta.scope.tag.$1.astro meta.raw.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-lang-start-attributes\\\"}]},\\\"tags-start-attributes\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/?>)\\\",\\\"name\\\":\\\"meta.tag.start.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes\\\"}]},\\\"tags-start-node\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.astro\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-name\\\"}]}},\\\"match\\\":\\\"(<)([^/\\\\\\\\s>/]*)\\\",\\\"name\\\":\\\"meta.tag.start.astro\\\"},\\\"tags-void\\\":{\\\"begin\\\":\\\"(<)(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.astro\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.astro\\\"}},\\\"end\\\":\\\"/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.astro\\\"}},\\\"name\\\":\\\"meta.tag.void.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes\\\"}]},\\\"text\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=^|---|>|})\\\",\\\"end\\\":\\\"(?=<|{|$)\\\",\\\"name\\\":\\\"text.astro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entities\\\"}]}]}},\\\"scopeName\\\":\\\"source.astro\\\",\\\"embeddedLangs\\\":[\\\"json\\\",\\\"javascript\\\",\\\"typescript\\\",\\\"css\\\",\\\"postcss\\\"],\\\"embeddedLangsLazy\\\":[\\\"stylus\\\",\\\"sass\\\",\\\"scss\\\",\\\"less\\\",\\\"tsx\\\"]}\"))\n\nexport default [\n...json,\n...javascript,\n...typescript,\n...css,\n...postcss,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"AWK\\\",\\\"fileTypes\\\":[\\\"awk\\\"],\\\"name\\\":\\\"awk\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#procedure\\\"},{\\\"include\\\":\\\"#pattern\\\"}],\\\"repository\\\":{\\\"builtin-pattern\\\":{\\\"match\\\":\\\"\\\\\\\\b(BEGINFILE|BEGIN|ENDFILE|END)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.awk\\\"},\\\"command\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:next|print|printf)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.command.awk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:close|getline|delete|system)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.command.nawk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:fflush|nextfile)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.command.bell-awk\\\"}]},\\\"comment\\\":{\\\"match\\\":\\\"#.*\\\",\\\"name\\\":\\\"comment.line.number-sign.awk\\\"},\\\"constant\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#numeric-constant\\\"},{\\\"include\\\":\\\"#string-constant\\\"}]},\\\"escaped-char\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[\\\\\\\\\\\\\\\\abfnrtv/\\\\\\\"]|x[0-9A-Fa-f]{2}|[0-7]{3})\\\",\\\"name\\\":\\\"constant.character.escape.awk\\\"},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#command\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#regexp-in-expression\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#groupings\\\"}]},\\\"function\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:exp|int|log|sqrt|index|length|split|sprintf|substr)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.awk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:atan2|cos|rand|sin|srand|gsub|match|sub|tolower|toupper)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.nawk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:gensub|strftime|systime)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.gawk\\\"}]},\\\"function-definition\\\":{\\\"begin\\\":\\\"\\\\\\\\b(function)\\\\\\\\s+(\\\\\\\\w+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.awk\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.awk\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.awk\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.awk\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.parameter.function.awk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(,)\\\\\\\\b\\\",\\\"name\\\":\\\"punctuation.separator.parameters.awk\\\"}]},\\\"groupings\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"meta.brace.round.awk\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.brace.round.awk\\\"},{\\\"match\\\":\\\"\\\\\\\\,\\\",\\\"name\\\":\\\"punctuation.separator.parameters.awk\\\"}]},\\\"keyword\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:break|continue|do|while|exit|for|if|else|return)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.awk\\\"},\\\"numeric-constant\\\":{\\\"match\\\":\\\"\\\\\\\\b[0-9]+(?:\\\\\\\\.[0-9]+)?(?:e[+-][0-9]+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.awk\\\"},\\\"operator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(!?~|[=<>!]=|[<>])\\\",\\\"name\\\":\\\"keyword.operator.comparison.awk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.comparison.awk\\\"},{\\\"match\\\":\\\"([+\\\\\\\\-*/%^]=|\\\\\\\\+\\\\\\\\+|--|>>|=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.awk\\\"},{\\\"match\\\":\\\"(\\\\\\\\|\\\\\\\\||&&|!)\\\",\\\"name\\\":\\\"keyword.operator.boolean.awk\\\"},{\\\"match\\\":\\\"([+\\\\\\\\-*/%^])\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.awk\\\"},{\\\"match\\\":\\\"([?:])\\\",\\\"name\\\":\\\"keyword.operator.trinary.awk\\\"},{\\\"match\\\":\\\"(\\\\\\\\[|\\\\\\\\])\\\",\\\"name\\\":\\\"keyword.operator.index.awk\\\"}]},\\\"pattern\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-as-pattern\\\"},{\\\"include\\\":\\\"#function-definition\\\"},{\\\"include\\\":\\\"#builtin-pattern\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"procedure\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#procedure\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"regex-as-assignment\\\":{\\\"begin\\\":\\\"([^=<>!+\\\\\\\\-*/%^]=)\\\\\\\\s*(/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.awk\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.regex.begin.awk\\\"}},\\\"contentName\\\":\\\"string.regexp\\\",\\\"end\\\":\\\"/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.regex.end.awk\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.regexp\\\"}]},\\\"regex-as-comparison\\\":{\\\"begin\\\":\\\"(!?~)\\\\\\\\s*(/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.comparison.awk\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.regex.begin.awk\\\"}},\\\"contentName\\\":\\\"string.regexp\\\",\\\"end\\\":\\\"/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.regex.end.awk\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.regexp\\\"}]},\\\"regex-as-first-argument\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.awk\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.regex.begin.awk\\\"}},\\\"contentName\\\":\\\"string.regexp\\\",\\\"end\\\":\\\"/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.regex.end.awk\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.regexp\\\"}]},\\\"regex-as-nth-argument\\\":{\\\"begin\\\":\\\"(,)\\\\\\\\s*(/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.awk\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.regex.begin.awk\\\"}},\\\"contentName\\\":\\\"string.regexp\\\",\\\"end\\\":\\\"/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.regex.end.awk\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.regexp\\\"}]},\\\"regexp-as-pattern\\\":{\\\"begin\\\":\\\"/\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.regex.begin.awk\\\"}},\\\"contentName\\\":\\\"string.regexp\\\",\\\"end\\\":\\\"/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.regex.end.awk\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.regexp\\\"}]},\\\"regexp-in-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regex-as-assignment\\\"},{\\\"include\\\":\\\"#regex-as-comparison\\\"},{\\\"include\\\":\\\"#regex-as-first-argument\\\"},{\\\"include\\\":\\\"#regex-as-nth-argument\\\"}]},\\\"string-constant\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.awk\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.awk\\\"}},\\\"name\\\":\\\"string.quoted.double.awk\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped-char\\\"}]},\\\"variable\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\$[0-9]+\\\",\\\"name\\\":\\\"variable.language.awk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:FILENAME|FS|NF|NR|OFMT|OFS|ORS|RS)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.awk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:ARGC|ARGV|CONVFMT|ENVIRON|FNR|RLENGTH|RSTART|SUBSEP)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.nawk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:ARGIND|ERRNO|FIELDWIDTHS|IGNORECASE|RT)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.gawk\\\"}]}},\\\"scopeName\\\":\\\"source.awk\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Ballerina\\\",\\\"fileTypes\\\":[\\\"bal\\\"],\\\"name\\\":\\\"ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}],\\\"repository\\\":{\\\"access-modifier\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(public|private)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.ballerina keyword.other.ballerina\\\"}]},\\\"annotationAttachment\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.decorator.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.decorator.ballerina\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type.ballerina\\\"}},\\\"match\\\":\\\"(@)((?:[_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s*(:?)\\\\\\\\s*((?:[_$[:alpha:]][_$[:alnum:]]*)?)\\\"}]},\\\"annotationDefinition\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bannotation\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ballerina\\\"}},\\\"end\\\":\\\";\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"array-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ballerina\\\"}},\\\"name\\\":\\\"meta.array.literal.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"booleans\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.ballerina\\\"}]},\\\"butClause\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.arrow.ballerina storage.type.function.arrow.ballerina\\\"}},\\\"end\\\":\\\",|(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"butExp\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bbut\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina.documentation\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#butExpBody\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"butExpBody\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina.documentation\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina.documentation\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter\\\"},{\\\"include\\\":\\\"#butClause\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"call\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\')?([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.ballerina\\\"}]},\\\"callableUnitBody\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#workerDef\\\"},{\\\"include\\\":\\\"#service-decl\\\"},{\\\"include\\\":\\\"#objectDec\\\"},{\\\"include\\\":\\\"#function-defn\\\"},{\\\"include\\\":\\\"#forkStatement\\\"},{\\\"include\\\":\\\"#code\\\"}]}]},\\\"class-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"name\\\":\\\"meta.class.body.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#mdDocumentation\\\"},{\\\"include\\\":\\\"#function-defn\\\"},{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#access-modifier\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*\\\",\\\"end\\\":\\\"(?=\\\\\\\\s|[;),}\\\\\\\\]:\\\\\\\\-\\\\\\\\+]|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|class|const|declare|enum|export|function|import|interface|let|module|namespace|return|service|type|var)\\\\\\\\b))\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"class-defn\\\":{\\\"begin\\\":\\\"(\\\\\\\\s+)(class\\\\\\\\b)|^class\\\\\\\\b(?=\\\\\\\\s+|/[/*])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.class.ballerina keyword.other.ballerina\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.class.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.class.ballerina\\\"}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"include\\\":\\\"#class-body\\\"}]},\\\"code\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#booleans\\\"},{\\\"include\\\":\\\"#matchStatement\\\"},{\\\"include\\\":\\\"#butExp\\\"},{\\\"include\\\":\\\"#xml\\\"},{\\\"include\\\":\\\"#stringTemplate\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#mdDocumentation\\\"},{\\\"include\\\":\\\"#annotationAttachment\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#maps\\\"},{\\\"include\\\":\\\"#paranthesised\\\"},{\\\"include\\\":\\\"#paranthesisedBracket\\\"},{\\\"include\\\":\\\"#regex\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\/\\\\\\\\/.*\\\",\\\"name\\\":\\\"comment.ballerina\\\"}]},\\\"constrainType\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.ballerina\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#constrainType\\\"},{\\\"match\\\":\\\"\\\\\\\\b([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.ballerina\\\"}]}]},\\\"control-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(return)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.ballerina\\\"}},\\\"end\\\":\\\"(?=[;}]|$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|class|const|declare|enum|export|function|import|interface|let|module|namespace|return|service|type|var)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#for-loop\\\"},{\\\"include\\\":\\\"#if-statement\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(else|if)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.conditional.ballerina\\\"}]},\\\"decl-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\} external;)|(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"name\\\":\\\"meta.block.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"},{\\\"include\\\":\\\"#mdDocumentation\\\"}]},\\\"declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#import-declaration\\\"},{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#typeDefinition\\\"},{\\\"include\\\":\\\"#function-defn\\\"},{\\\"include\\\":\\\"#service-decl\\\"},{\\\"include\\\":\\\"#class-defn\\\"},{\\\"include\\\":\\\"#enum-decl\\\"},{\\\"include\\\":\\\"#source\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},\\\"defaultValue\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"[=:]\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ballerina\\\"}},\\\"end\\\":\\\"(?=[,)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"defaultWithParentheses\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}}}]},\\\"documentationBody\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina.documentation\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina.documentation\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.ballerina.documentation\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ballerina.documentation\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.ballerina.documentation\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.ballerina.documentation\\\"}},\\\"match\\\":\\\"(P|R|T|F|V)({{)(.*)(}})\\\"},{\\\"begin\\\":\\\"\\\\\\\\```\\\",\\\"end\\\":\\\"\\\\\\\\```\\\",\\\"name\\\":\\\"comment.block.code.ballerina.documentation\\\"},{\\\"begin\\\":\\\"\\\\\\\\``\\\",\\\"end\\\":\\\"\\\\\\\\``\\\",\\\"name\\\":\\\"comment.block.code.ballerina.documentation\\\"},{\\\"begin\\\":\\\"\\\\\\\\`\\\",\\\"end\\\":\\\"\\\\\\\\`\\\",\\\"name\\\":\\\"comment.block.code.ballerina.documentation\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"comment.block.ballerina.documentation\\\"}]}]},\\\"documentationDef\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?:documentation|deprecated)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"delimiter.curly\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#documentationBody\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"enum-decl\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b(const)\\\\\\\\s+)?\\\\\\\\b(enum)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.enum.ballerina\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.enum.declaration.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#mdDocumentation\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#mdDocumentation\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.enummember.ballerina\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"begin\\\":\\\"(?=((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\])))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"errorDestructure\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"error\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.ballerina\\\"}},\\\"end\\\":\\\"(?==>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#regex\\\"}]},\\\"expression-operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*=|(?<!\\\\\\\\()/=|%=|\\\\\\\\+=|\\\\\\\\-=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\&=|\\\\\\\\^=|<<=|>>=|>>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.ballerina\\\"},{\\\"match\\\":\\\"<<|>>>|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.ballerina\\\"},{\\\"match\\\":\\\"===|!==|==|!=\\\",\\\"name\\\":\\\"keyword.operator.comparison.ballerina\\\"},{\\\"match\\\":\\\"<=|>=|<>|<|>\\\",\\\"name\\\":\\\"keyword.operator.relational.ballerina\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.ballerina\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:]])(\\\\\\\\!)\\\\\\\\s*(?:(/=)|(?:(/)(?![/*])))\\\"},{\\\"match\\\":\\\"\\\\\\\\!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.logical.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\&|~|\\\\\\\\^|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.ballerina\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.ballerina\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.ballerina\\\"}]},\\\"expressionWithoutIdentifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#xml\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#stringTemplate\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#object-literal\\\"},{\\\"include\\\":\\\"#ternary-expression\\\"},{\\\"include\\\":\\\"#expression-operators\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#paranthesised\\\"},{\\\"include\\\":\\\"#regex\\\"}]},\\\"flags-on-off\\\":{\\\"name\\\":\\\"meta.flags.regexp.ballerina\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\??)([imsx]*)(-?)([imsx]*)(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.other.non-capturing-group-begin.regexp.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.non-capturing-group.flags-on.regexp.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.other.non-capturing-group.off.regexp.ballerina\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.non-capturing-group.flags-off.regexp.ballerina\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.other.non-capturing-group-end.regexp.ballerina\\\"}},\\\"end\\\":\\\"()\\\",\\\"name\\\":\\\"constant.other.flag.regexp.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#template-substitution-element\\\"}]}]},\\\"for-loop\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))foreach\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.loop.ballerina\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ballerina\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"forkBody\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#workerDef\\\"}]}]},\\\"forkStatement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bfork\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#forkBody\\\"}]}]},\\\"function-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#functionParameters\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"begin\\\":\\\"\\\\\\\\=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.arrow.ballerina storage.type.function.arrow.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\;)|(?=\\\\\\\\,)|(?=)(?=\\\\\\\\);)\\\",\\\"name\\\":\\\"meta.block.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.generator.asterisk.ballerina\\\"}]},\\\"function-defn\\\":{\\\"begin\\\":\\\"(?:(public|private)\\\\\\\\s+)?(function\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\;)|(?<=\\\\\\\\})|(?<=\\\\\\\\,)|(?=)(?=\\\\\\\\);)\\\",\\\"name\\\":\\\"meta.function.ballerina\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bexternal\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ballerina\\\"},{\\\"include\\\":\\\"#stringTemplate\\\"},{\\\"include\\\":\\\"#annotationAttachment\\\"},{\\\"include\\\":\\\"#functionReturns\\\"},{\\\"include\\\":\\\"#functionName\\\"},{\\\"include\\\":\\\"#functionParameters\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#function-body\\\"},{\\\"include\\\":\\\"#regex\\\"}]},\\\"function-parameters-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#annotationAttachment\\\"},{\\\"include\\\":\\\"#recordLiteral\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#parameter-name\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"match\\\":\\\"\\\\\\\\,\\\",\\\"name\\\":\\\"punctuation.separator.parameter.ballerina\\\"}]},\\\"functionName\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bfunction\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ballerina\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#self-literal\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"variable.language.this.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.ballerina\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.definition.function.ballerina entity.name.function.ballerina\\\"}},\\\"match\\\":\\\"\\\\\\\\s+(\\\\\\\\b(self)|\\\\\\\\b(is|new|isolated|null|function|in)\\\\\\\\b|(string|int|boolean|float|byte|decimal|json|xml|anydata)\\\\\\\\b|\\\\\\\\b(readonly|error|map)\\\\\\\\b|([_$[:alpha:]][_$[:alnum:]]*))\\\"}]},\\\"functionParameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(|\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\)|\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.ballerina\\\"}},\\\"name\\\":\\\"meta.parameters.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters-body\\\"}]},\\\"functionReturns\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(returns)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"}},\\\"end\\\":\\\"(?==>)|(\\\\\\\\=)|(?=\\\\\\\\{)|(\\\\\\\\))|(?=\\\\\\\\;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ballerina\\\"}},\\\"name\\\":\\\"meta.type.function.return.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(var)(?=\\\\\\\\s+|\\\\\\\\[|\\\\\\\\?)\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.ballerina\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#type-tuple\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.readwrite.ballerina\\\"}]},\\\"functionType\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bfunction\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\,)|(?=\\\\\\\\|)|(?=\\\\\\\\:)|(?==>)|(?=\\\\\\\\))|(?=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#functionTypeParamList\\\"},{\\\"include\\\":\\\"#functionTypeReturns\\\"}]}]},\\\"functionTypeParamList\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"delimiter.parenthesis\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"delimiter.parenthesis\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"public\\\",\\\"name\\\":\\\"keyword\\\"},{\\\"include\\\":\\\"#annotationAttachment\\\"},{\\\"include\\\":\\\"#recordLiteral\\\"},{\\\"include\\\":\\\"#record\\\"},{\\\"include\\\":\\\"#objectDec\\\"},{\\\"include\\\":\\\"#functionType\\\"},{\\\"include\\\":\\\"#constrainType\\\"},{\\\"include\\\":\\\"#parameterTuple\\\"},{\\\"include\\\":\\\"#functionTypeType\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"functionTypeReturns\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\breturns\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\,)|(?:\\\\\\\\|)|(?=\\\\\\\\])|(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#functionTypeReturnsParameter\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"functionTypeReturnsParameter\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((?=record|object|function)|(?:[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\,)|(?:\\\\\\\\|)|(?:\\\\\\\\:)|(?==>)|(?=\\\\\\\\))|(?=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#record\\\"},{\\\"include\\\":\\\"#objectDec\\\"},{\\\"include\\\":\\\"#functionType\\\"},{\\\"include\\\":\\\"#constrainType\\\"},{\\\"include\\\":\\\"#defaultValue\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#parameterTuple\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"default.variable.parameter.ballerina\\\"}]}]},\\\"functionTypeType\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\,)|(?:\\\\\\\\|)|(?=\\\\\\\\])|(?=\\\\\\\\))\\\"}]},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ballerina\\\"}},\\\"match\\\":\\\"(?:(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*=\\\\\\\\s*((((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((((<\\\\\\\\s*$)|((<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ballerina\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=\\\\\\\\()\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.property.ballerina\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#self-literal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(check|foreach|if|checkpanic)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.ballerina\\\"},{\\\"include\\\":\\\"#call\\\"},{\\\"match\\\":\\\"\\\\\\\\b(var)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.primitive.ballerina\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.ballerina\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.ballerina\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.ballerina\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.ballerina\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)((\\\\\\\\.)([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\()(\\\\\\\\)))?\\\"},{\\\"match\\\":\\\"(\\\\\\\\')([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.other.property.ballerina\\\"},{\\\"include\\\":\\\"#type-annotation\\\"}]},\\\"if-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=\\\\\\\\bif\\\\\\\\b\\\\\\\\s*(?!\\\\\\\\{))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(if)\\\\\\\\s*(\\\\\\\\()?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.ballerina\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|(?=\\\\\\\\{)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#xml\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#stringTemplate\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#ternary-expression\\\"},{\\\"include\\\":\\\"#expression-operators\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#paranthesised\\\"},{\\\"include\\\":\\\"#regex\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))(?=\\\\\\\\s|\\\\\\\\=)\\\",\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},{\\\"include\\\":\\\"#decl-block\\\"}]}]},\\\"import-clause\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.default.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.readwrite.ballerina meta.import.module.ballerina\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.default.ballerina\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.ballerina\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bdefault)|(\\\\\\\\*)|(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*))\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.other.readwrite.alias.ballerina\\\"}]},\\\"import-declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\bimport\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.import.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\;\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.ballerina\\\"}},\\\"name\\\":\\\"meta.import.ballerina\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\')([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.other.property.ballerina\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#import-clause\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(fork|join|while|returns|transaction|transactional|retry|commit|rollback|typeof|enum|wait|match)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\b(return|break|continue|check|checkpanic|panic|trap|from|where)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\b(public|private|external|return|record|object|remote|abstract|client|true|false|fail|import|version)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\b(as|on|function|resource|listener|const|final|is|null|lock|annotation|source|worker|parameter|field|isolated|in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\b(xmlns|table|key|let|new|select|start|flush|default|do|base16|base64|conflict)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\b(limit|outer|equals|order|by|ascending|descending|class|configurable|variable|module|service|group|collect)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ballerina\\\"},{\\\"match\\\":\\\"(=>)\\\",\\\"name\\\":\\\"meta.arrow.ballerina storage.type.function.arrow.ballerina\\\"},{\\\"match\\\":\\\"(!|%|\\\\\\\\+|\\\\\\\\-|~=|===|==|=|!=|!==|<|>|&|\\\\\\\\||\\\\\\\\?:|\\\\\\\\.\\\\\\\\.\\\\\\\\.|<=|>=|&&|\\\\\\\\|\\\\\\\\||~|>>|>>>)\\\",\\\"name\\\":\\\"keyword.operator.ballerina\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#self-literal\\\"},{\\\"include\\\":\\\"#type-primitive\\\"}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#booleans\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#maps\\\"},{\\\"include\\\":\\\"#self-literal\\\"},{\\\"include\\\":\\\"#array-literal\\\"}]},\\\"maps\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"matchBindingPattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"var\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.ballerina\\\"}},\\\"end\\\":\\\"(?==>)|,\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#errorDestructure\\\"},{\\\"include\\\":\\\"#code\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"variable.parameter.ballerina\\\"}]}]},\\\"matchStatement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bmatch\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#matchStatementBody\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#code\\\"}]}]},\\\"matchStatementBody\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina.documentation\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina.documentation\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#matchBindingPattern\\\"},{\\\"include\\\":\\\"#matchStatementPatternClause\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#code\\\"}]}]},\\\"matchStatementPatternClause\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ballerina\\\"}},\\\"end\\\":\\\"((\\\\\\\\})|;|,)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#callableUnitBody\\\"},{\\\"include\\\":\\\"#code\\\"}]}]},\\\"mdDocumentation\\\":{\\\"begin\\\":\\\"\\\\\\\\#\\\",\\\"end\\\":\\\"[\\\\\\\\r\\\\\\\\n]+\\\",\\\"name\\\":\\\"comment.mddocs.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#mdDocumentationReturnParamDescription\\\"},{\\\"include\\\":\\\"#mdDocumentationParamDescription\\\"}]},\\\"mdDocumentationParamDescription\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\+\\\\\\\\s+)(\\\\\\\\'?[_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\-\\\\\\\\s+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.ballerina\\\"}},\\\"end\\\":\\\"(?=[^#\\\\\\\\r\\\\\\\\n]|(?:# *?\\\\\\\\+))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"#.*\\\",\\\"name\\\":\\\"comment.mddocs.paramdesc.ballerina\\\"}]}]},\\\"mdDocumentationReturnParamDescription\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(#)(?: *?)(\\\\\\\\+)(?: *)(return)(?: *)(-)?(.*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.mddocs.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.ballerina\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.ballerina\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.mddocs.returnparamdesc.ballerina\\\"}},\\\"end\\\":\\\"(?=[^#\\\\\\\\r\\\\\\\\n]|(?:# *?\\\\\\\\+))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"#.*\\\",\\\"name\\\":\\\"comment.mddocs.returnparamdesc.ballerina\\\"}]}]},\\\"multiType\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\|)([_$[:alpha:]][_$[:alnum:]]*)|([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\|)\\\",\\\"name\\\":\\\"storage.type.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.ballerina\\\"}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b0[xX][\\\\\\\\da-fA-F]+\\\\\\\\b|\\\\\\\\b\\\\\\\\d+(?:\\\\\\\\.(?:\\\\\\\\d+|$))?\\\",\\\"name\\\":\\\"constant.numeric.decimal.ballerina\\\"}]},\\\"object-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"name\\\":\\\"meta.objectliteral.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-member\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-member\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-defn\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\]])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<]))\\\",\\\"name\\\":\\\"meta.object.member.ballerina meta.object-literal.key.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=((\\\\\\\\s*[\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\n*})|(\\\\\\\\s+(as)\\\\\\\\s+))))\\\",\\\"name\\\":\\\"meta.object.member.ballerina meta.object-literal.key.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?=(\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)))\\\",\\\"end\\\":\\\"(?=:)|(?=\\\\\\\\s*([\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\s+as\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.ballerina meta.object-literal.key.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#numbers\\\"}]},{\\\"begin\\\":\\\"(?<=[\\\\\\\\]\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<])\\\",\\\"end\\\":\\\"(?=\\\\\\\\}|;|,)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.ballerina\\\"},\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.ballerina\\\"}},\\\"match\\\":\\\"(?![_$[:alpha:]])([[:digit:]]+)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.ballerina\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.ballerina\\\"},\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.ballerina\\\"}},\\\"match\\\":\\\"(?:([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:(\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/)*\\\\\\\\s*((((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((((<\\\\\\\\s*$)|((<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|((<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"name\\\":\\\"meta.object.member.ballerina\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.ballerina\\\"}},\\\"match\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.ballerina\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.ballerina\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.object.member.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.ballerina\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.ballerina\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.ballerina\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+(const)(?=\\\\\\\\s*([,}]|$))\\\",\\\"name\\\":\\\"meta.object.member.ballerina\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.ballerina\\\"}},\\\"end\\\":\\\"(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|^|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.ballerina\\\"},{\\\"begin\\\":\\\"(?=[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=)\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"objectDec\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bobject\\\\\\\\b(?!:)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#decl-block\\\"}]}]},\\\"objectInitBody\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#code\\\"}]}]},\\\"objectInitParameters\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"},{\\\"match\\\":\\\"\\\\\\\\b([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.parameter.ballerina\\\"}]}]},\\\"objectMemberFunctionDec\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bfunction\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ballerina\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#functionParameters\\\"},{\\\"match\\\":\\\"\\\\\\\\breturns\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.ballerina\\\"},{\\\"include\\\":\\\"#code\\\"}]}]},\\\"parameter\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((?=record|object|function)|([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\|)|(?:[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.ballerina\\\"}},\\\"end\\\":\\\"(?:\\\\\\\\,)|(?:\\\\\\\\|)|(?:\\\\\\\\:)|(?==>)|(?=\\\\\\\\))|(?=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameterWithDescriptor\\\"},{\\\"include\\\":\\\"#record\\\"},{\\\"include\\\":\\\"#objectDec\\\"},{\\\"include\\\":\\\"#functionType\\\"},{\\\"include\\\":\\\"#constrainType\\\"},{\\\"include\\\":\\\"#defaultValue\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#parameterTuple\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"default.variable.parameter.ballerina\\\"}]}]},\\\"parameter-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(var)\\\\\\\\s+\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.language.boolean.ballerina\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.flow.ballerina\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.type.ballerina\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.parameter.ballerina\\\"},\\\"9\\\":{\\\"name\\\":\\\"variable.parameter.ballerina\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.optional.ballerina\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|(string|int|boolean|float|byte|decimal|json|xml|anydata)|\\\\\\\\b(is|new|isolated|null|function|in)\\\\\\\\b|\\\\\\\\b(true|false)\\\\\\\\b|\\\\\\\\b(check|foreach|if|checkpanic)\\\\\\\\b|\\\\\\\\b(readonly|error|map)\\\\\\\\b|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)\\\"}]},\\\"parameterTuple\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"(?=\\\\\\\\,)|(?=\\\\\\\\|)|(?=\\\\\\\\:)|(?==>)|(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#record\\\"},{\\\"include\\\":\\\"#objectDec\\\"},{\\\"include\\\":\\\"#parameterTupleType\\\"},{\\\"include\\\":\\\"#parameterTupleEnd\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"parameterTupleEnd\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\]\\\",\\\"end\\\":\\\"(?=\\\\\\\\,)|(?=\\\\\\\\|)|(?=\\\\\\\\:)|(?==>)|(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#defaultWithParentheses\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"default.variable.parameter.ballerina\\\"}]}]},\\\"parameterTupleType\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.ballerina\\\"}},\\\"end\\\":\\\"(?:\\\\\\\\,)|(?:\\\\\\\\|)|(?=\\\\\\\\])\\\"}]},\\\"parameterWithDescriptor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\&\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\,)|(?=\\\\\\\\|)|(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter\\\"}]}]},\\\"parameters\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s*(return|break|continue|check|checkpanic|panic|trap|from|where)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\s*(let|select)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\,\\\",\\\"name\\\":\\\"punctuation.separator.parameter.ballerina\\\"}]},\\\"paranthesised\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.ballerina\\\"}},\\\"name\\\":\\\"meta.brace.round.block.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#self-literal\\\"},{\\\"include\\\":\\\"#function-defn\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#annotationAttachment\\\"},{\\\"include\\\":\\\"#recordLiteral\\\"},{\\\"include\\\":\\\"#stringTemplate\\\"},{\\\"include\\\":\\\"#parameter-name\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#regex\\\"}]},\\\"paranthesisedBracket\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#code\\\"}]}]},\\\"punctuation-accessor\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.ballerina\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"}]},\\\"punctuation-comma\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.ballerina\\\"}]},\\\"punctuation-semicolon\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.ballerina\\\"}]},\\\"record\\\":{\\\"begin\\\":\\\"\\\\\\\\brecord\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.record.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#recordBody\\\"}]},\\\"recordBody\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"recordLiteral\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"regex\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\bre)(\\\\\\\\s*)(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.regexp.template.begin.ballerina\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.regexp.template.end.ballerina\\\"}},\\\"name\\\":\\\"regexp.template.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-substitution-element\\\"},{\\\"include\\\":\\\"#regexp\\\"}]}]},\\\"regex-character-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[wWsSdDtrn]|\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.other.character-class.regexp.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^pPu]\\\",\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}]},\\\"regex-unicode-properties-general-category\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(Lu|Ll|Lt|Lm|Lo|L|Mn|Mc|Me|M|Nd|Nl|No|N|Pc|Pd|Ps|Pe|Pi|Pf|Po|P|Sm|Sc|Sk|So|S|Zs|Zl|Zp|Z|Cf|Cc|Cn|Co|C)\\\",\\\"name\\\":\\\"constant.other.unicode-property-general-category.regexp.ballerina\\\"}]},\\\"regex-unicode-property-key\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(sc=|gc=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unicode-property-key.regexp.ballerina\\\"}},\\\"end\\\":\\\"()\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.other.unicode-property.end.regexp.ballerina\\\"}},\\\"name\\\":\\\"keyword.other.unicode-property-key.regexp.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex-unicode-properties-general-category\\\"}]}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\^|\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.control.assertion.regexp.ballerina\\\"},{\\\"match\\\":\\\"[?+*]|\\\\\\\\{(\\\\\\\\d+,\\\\\\\\d+|\\\\\\\\d+,|,\\\\\\\\d+|\\\\\\\\d+)\\\\\\\\}\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.or.regexp.ballerina\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp.ballerina\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp.ballerina\\\"}},\\\"name\\\":\\\"meta.group.assertion.regexp.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-substitution-element\\\"},{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#flags-on-off\\\"},{\\\"include\\\":\\\"#unicode-property-escape\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.start.regexp.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp.ballerina\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.end.regexp.ballerina\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.regexp.ballerina\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(?:.|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\[^pPu]))\\\\\\\\-(?:[^\\\\\\\\]\\\\\\\\\\\\\\\\]|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\[^pPu]))\\\",\\\"name\\\":\\\"constant.other.character-class.range.regexp.ballerina\\\"},{\\\"include\\\":\\\"#regex-character-class\\\"},{\\\"include\\\":\\\"#unicode-values\\\"},{\\\"include\\\":\\\"#unicode-property-escape\\\"}]},{\\\"include\\\":\\\"#template-substitution-element\\\"},{\\\"include\\\":\\\"#regex-character-class\\\"},{\\\"include\\\":\\\"#unicode-values\\\"},{\\\"include\\\":\\\"#unicode-property-escape\\\"}]},\\\"self-literal\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.language.this.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ballerina\\\"}},\\\"match\\\":\\\"(\\\\\\\\bself\\\\\\\\b)\\\\\\\\s*(.)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=\\\\\\\\()\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))self\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.this.ballerina\\\"}]},\\\"service-decl\\\":{\\\"begin\\\":\\\"\\\\\\\\bservice\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ballerina\\\"}},\\\"end\\\":\\\"(?=;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|class|const|declare|enum|export|function|import|interface|let|module|namespace|return|service|type|var)\\\\\\\\b))|(?<=\\\\\\\\})|(?<=\\\\\\\\,)\\\",\\\"name\\\":\\\"meta.service.declaration.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-defn\\\"},{\\\"include\\\":\\\"#serviceName\\\"},{\\\"include\\\":\\\"#serviceOn\\\"},{\\\"include\\\":\\\"#serviceBody\\\"},{\\\"include\\\":\\\"#objectDec\\\"}]},\\\"serviceBody\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#mdDocumentation\\\"},{\\\"include\\\":\\\"#documentationDef\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"serviceName\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"(\\\\\\\\/([_$[:alpha:]][_$[:alnum:]]*)|\\\\\\\\\\\\\\\"[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\\\\\\\\")\\\",\\\"name\\\":\\\"entity.service.path.ballerina\\\"}]},\\\"serviceOn\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"on\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"}},\\\"end\\\":\\\"(?={)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"source\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\bsource\\\\\\\\b)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\,)|(?=\\\\\\\\;)\\\"}]},\\\"statements\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#stringTemplate\\\"},{\\\"include\\\":\\\"#declaration\\\"},{\\\"include\\\":\\\"#control-statement\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#mdDocumentation\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#annotationAttachment\\\"},{\\\"include\\\":\\\"#regex\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ballerina\\\"}},\\\"end\\\":\\\"(\\\\\\\")|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.ballerina\\\"}},\\\"name\\\":\\\"string.quoted.double.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"string-character-escape\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\\\\\{[0-9A-Fa-f]+\\\\\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)\\\",\\\"name\\\":\\\"constant.character.escape.ballerina\\\"}]},\\\"stringTemplate\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((string)|([_$[:alpha:]][_$[:alnum:]]*))?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.begin.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\\?`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.end.ballerina\\\"}},\\\"name\\\":\\\"string.template.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.begin.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.end.ballerina\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.ballerina\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string\\\"}]}]},\\\"template-substitution-element\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.ballerina\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.ballerina\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.ballerina\\\"}},\\\"name\\\":\\\"meta.template.expression.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"templateVariable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\${\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.character.escape.ballerina\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.character.escape.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"ternary-expression\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\?\\\\\\\\.\\\\\\\\s*[^[:digit:]])(\\\\\\\\?)(?!\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"tupleType\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"(?=\\\\\\\\]|;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#constrainType\\\"},{\\\"include\\\":\\\"#paranthesisedBracket\\\"},{\\\"match\\\":\\\"\\\\\\\\b([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.ballerina\\\"}]}]},\\\"type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#type-tuple\\\"}]},\\\"type-annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.ballerina\\\"}},\\\"end\\\":\\\"(?<![:|&])((?=$|^|[,);\\\\\\\\}\\\\\\\\]\\\\\\\\?\\\\\\\\>\\\\\\\\=>]|//)|(?==[^>])|((?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)))(\\\\\\\\?)?\\\",\\\"name\\\":\\\"meta.type.annotation.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#booleans\\\"},{\\\"include\\\":\\\"#stringTemplate\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#self-literal\\\"},{\\\"include\\\":\\\"#xml\\\"},{\\\"include\\\":\\\"#call\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.language.boolean.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.ballerina\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.ballerina\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.readwrite.ballerina\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.accessor.ballerina\\\"},\\\"9\\\":{\\\"name\\\":\\\"entity.name.function.ballerina\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.ballerina\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.ballerina\\\"}},\\\"match\\\":\\\"\\\\\\\\b(is|new|isolated|null|function|in)\\\\\\\\b|\\\\\\\\b(true|false)\\\\\\\\b|\\\\\\\\b(check|foreach|if|checkpanic)\\\\\\\\b|\\\\\\\\b(readonly|error|map)\\\\\\\\b|\\\\\\\\b(var)\\\\\\\\b|([_$[:alpha:]][_$[:alnum:]]*)((\\\\\\\\.)([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\()(\\\\\\\\)))?\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.ballerina\\\"},{\\\"include\\\":\\\"#multiType\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#paranthesised\\\"}]}]},\\\"type-primitive\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(string|int|boolean|float|byte|decimal|json|xml|anydata)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"support.type.primitive.ballerina\\\"}]},\\\"type-tuple\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.ballerina\\\"}},\\\"name\\\":\\\"meta.type.tuple.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#self-literal\\\"},{\\\"include\\\":\\\"#booleans\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.rest.ballerina\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.label.ballerina\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(\\\\\\\\?)?\\\\\\\\s*(:)\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"typeDefinition\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\btype\\\\\\\\b)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\;\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#functionParameters\\\"},{\\\"include\\\":\\\"#functionReturns\\\"},{\\\"include\\\":\\\"#mdDocumentation\\\"},{\\\"include\\\":\\\"#record\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#multiType\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.readwrite.ballerina\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#typeDescription\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]}]},\\\"typeDescription\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"storage.type.ballerina\\\"}]}]},\\\"types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(handle|any|future|typedesc)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\b(boolean|int|string|float|decimal|byte|json|xml|anydata)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.primitive.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\b(map|error|never|readonly|distinct)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\b(stream)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.ballerina\\\"}]},\\\"unicode-property-escape\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\\\\\\\\\p|\\\\\\\\\\\\\\\\P)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unicode-property.regexp.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.other.unicode-property.begin.regexp.ballerina\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.other.unicode-property.end.regexp.ballerina\\\"}},\\\"name\\\":\\\"keyword.other.unicode-property.regexp.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex-unicode-properties-general-category\\\"},{\\\"include\\\":\\\"#regex-unicode-property-key\\\"}]}]},\\\"unicode-values\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\\\\\\\\\u)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unicode-value.regexp.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.other.unicode-value.begin.regexp.ballerina\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.other.unicode-value.end.regexp.ballerina\\\"}},\\\"name\\\":\\\"keyword.other.unicode-value.ballerina\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([0-9A-Fa-f]{1,6})\\\",\\\"name\\\":\\\"constant.other.unicode-value.regexp.ballerina\\\"}]}]},\\\"var-expr\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\b(var))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.ballerina support.type.primitive.ballerina\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\b(var))((?=;|}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|class|const|declare|enum|export|function|import|interface|let|module|namespace|return|service|type|var)\\\\\\\\b))|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=(if)\\\\\\\\s+))|((?<!^string|[^\\\\\\\\._$[:alnum:]]string|^int|[^\\\\\\\\._$[:alnum:]]int)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.ballerina\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(var)(?=\\\\\\\\s+|\\\\\\\\[|\\\\\\\\?|\\\\\\\\||\\\\\\\\:)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.type.annotation.ballerina\\\"},{\\\"match\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ballerina\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#stringTemplate\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#multiType\\\"},{\\\"include\\\":\\\"#self-literal\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#type-tuple\\\"},{\\\"include\\\":\\\"#regex\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b)))\\\",\\\"end\\\":\\\"(?!\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b)))((?=\\\\\\\\bannotation\\\\\\\\b|;|}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|class|const|declare|enum|export|function|import|interface|let|module|namespace|return|service|type|var)\\\\\\\\b))|((?<!^string|[^\\\\\\\\._$[:alnum:]]string|^int|[^\\\\\\\\._$[:alnum:]]int)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.ballerina\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#stringTemplate\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#type-annotation\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"begin\\\":\\\"(string|int|boolean|float|byte|decimal|json|xml|anydata)(?=\\\\\\\\s+|\\\\\\\\[|\\\\\\\\?|\\\\\\\\||\\\\\\\\:)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\b(var))((?=;|}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|class|const|declare|enum|export|function|import|interface|let|module|namespace|return|service|type|var)\\\\\\\\b))|((?<!^string|[^\\\\\\\\._$[:alnum:]]string|^int|[^\\\\\\\\._$[:alnum:]]int)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xml\\\"},{\\\"begin\\\":\\\"(string|int|boolean|float|byte|decimal|json|xml|anydata)(?=\\\\\\\\s+|\\\\\\\\[|\\\\\\\\?|\\\\\\\\||\\\\\\\\:)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.type.annotation.ballerina\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#stringTemplate\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#multiType\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#type-tuple\\\"},{\\\"include\\\":\\\"#regex\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"var-single-const\\\":{\\\"patterns\\\":[{\\\"name\\\":\\\"meta.var-single-variable.expr.ballerina\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(var)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ballerina variable.other.constant.ballerina\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))\\\\\\\\s+))\\\"}]},\\\"var-single-variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((string|int|boolean|float|byte|decimal|json|xml|anydata)|\\\\\\\\b(readonly|error|map)\\\\\\\\b|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s+|\\\\\\\\;|\\\\\\\\>|\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.ballerina\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.definition.variable.ballerina variable.other.readwrite.ballerina\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.ballerina\\\"}},\\\"name\\\":\\\"meta.var-single-variable.expr.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#call\\\"},{\\\"include\\\":\\\"#self-literal\\\"},{\\\"include\\\":\\\"#if-statement\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s+(\\\\\\\\!)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.ballerina variable.other.readwrite.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.ballerina\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.ballerina\\\"}]},\\\"variable-initializer\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=|>)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ballerina\\\"}},\\\"end\\\":\\\"(?=$|[,);}\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\')([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.other.property.ballerina\\\"},{\\\"include\\\":\\\"#xml\\\"},{\\\"include\\\":\\\"#function-defn\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#regex\\\"}]},{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=|>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.ballerina\\\"}},\\\"end\\\":\\\"(?=[,);}\\\\\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))\\\\\\\\s+))|(?=^\\\\\\\\s*$)|(?<=\\\\\\\\S)(?<!=)(?=\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"variableDef\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?!\\\\\\\\+)[_$[:alpha:]][_$[:alnum:]]*)(?: |\\\\\\\\t)|(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.ballerina\\\"}},\\\"end\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)|(?=\\\\\\\\,)|(?=;)|\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tupleType\\\"},{\\\"include\\\":\\\"#constrainType\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"variableDefInline\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=record)|(?=object)\\\",\\\"end\\\":\\\"(?=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#record\\\"},{\\\"include\\\":\\\"#objectDec\\\"}]}]},\\\"workerBody\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"workerDef\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bworker\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#functionReturns\\\"},{\\\"include\\\":\\\"#workerBody\\\"}]}]},\\\"xml\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\bxml)(\\\\\\\\s*)(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.primitive.ballerina\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.begin.ballerina\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.end.ballerina\\\"}},\\\"name\\\":\\\"string.template.ballerina\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xmlTag\\\"},{\\\"include\\\":\\\"#xmlComment\\\"},{\\\"include\\\":\\\"#templateVariable\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string\\\"}]}]},\\\"xmlComment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"<!--\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.block.xml.ballerina\\\"}},\\\"end\\\":\\\"-->\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.block.xml.ballerina\\\"}},\\\"name\\\":\\\"comment.block.xml.ballerina\\\"}]},\\\"xmlDoubleQuotedString\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.begin.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.end.ballerina\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.ballerina\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string\\\"}]}]},\\\"xmlSingleQuotedString\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.begin.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.end.ballerina\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.ballerina\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string\\\"}]}]},\\\"xmlTag\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<\\\\\\\\/?\\\\\\\\??)\\\\\\\\s*([-_a-zA-Z0-9]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.xml.ballerina\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.xml.ballerina\\\"}},\\\"end\\\":\\\"\\\\\\\\??\\\\\\\\/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.xml.ballerina\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#xmlSingleQuotedString\\\"},{\\\"include\\\":\\\"#xmlDoubleQuotedString\\\"},{\\\"match\\\":\\\"xmlns\\\",\\\"name\\\":\\\"keyword.other.ballerina\\\"},{\\\"match\\\":\\\"([a-zA-Z0-9-]+)\\\",\\\"name\\\":\\\"entity.other.attribute-name.xml.ballerina\\\"}]}]}},\\\"scopeName\\\":\\\"source.ballerina\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Batch File\\\",\\\"injections\\\":{\\\"L:meta.block.repeat.batchfile\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#repeatParameter\\\"}]}},\\\"name\\\":\\\"bat\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#commands\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#controls\\\"},{\\\"include\\\":\\\"#escaped_characters\\\"},{\\\"include\\\":\\\"#labels\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#variables\\\"}],\\\"repository\\\":{\\\"command_set\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=^|[\\\\\\\\s@])(?i:SET)(?=$|\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.command.batchfile\\\"}},\\\"end\\\":\\\"(?=$\\\\\\\\n|[&|><)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#command_set_inside\\\"}]}]},\\\"command_set_group\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.group.begin.batchfile\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.group.end.batchfile\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#command_set_inside_arithmetic\\\"}]}]},\\\"command_set_inside\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_characters\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#command_set_strings\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"begin\\\":\\\"([^ ][^=]*)(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.batchfile\\\"}},\\\"end\\\":\\\"(?=$\\\\\\\\n|[&|><)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_characters\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#strings\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s+/[aA]\\\\\\\\s+\\\",\\\"end\\\":\\\"(?=$\\\\\\\\n|[&|><)])\\\",\\\"name\\\":\\\"meta.expression.set.batchfile\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.batchfile\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.batchfile\\\"}},\\\"name\\\":\\\"string.quoted.double.batchfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#command_set_inside_arithmetic\\\"},{\\\"include\\\":\\\"#command_set_group\\\"},{\\\"include\\\":\\\"#variables\\\"}]},{\\\"include\\\":\\\"#command_set_inside_arithmetic\\\"},{\\\"include\\\":\\\"#command_set_group\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s+/[pP]\\\\\\\\s+\\\",\\\"end\\\":\\\"(?=$\\\\\\\\n|[&|><)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#command_set_strings\\\"},{\\\"begin\\\":\\\"([^ ][^=]*)(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.batchfile\\\"}},\\\"end\\\":\\\"(?=$\\\\\\\\n|[&|><)])\\\",\\\"name\\\":\\\"meta.prompt.set.batchfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"}]}]}]},\\\"command_set_inside_arithmetic\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#command_set_operators\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.batchfile\\\"}]},\\\"command_set_operators\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.augmented.batchfile\\\"}},\\\"match\\\":\\\"([^ ]*)(\\\\\\\\+\\\\\\\\=|\\\\\\\\-\\\\\\\\=|\\\\\\\\*\\\\\\\\=|\\\\\\\\/\\\\\\\\=|%%\\\\\\\\=|&\\\\\\\\=|\\\\\\\\|\\\\\\\\=|\\\\\\\\^\\\\\\\\=|<<\\\\\\\\=|>>\\\\\\\\=)\\\"},{\\\"match\\\":\\\"\\\\\\\\+|\\\\\\\\-|/|\\\\\\\\*|%%|\\\\\\\\||&|\\\\\\\\^|<<|>>|~\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.batchfile\\\"},{\\\"match\\\":\\\"!\\\",\\\"name\\\":\\\"keyword.operator.logical.batchfile\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.batchfile\\\"}},\\\"match\\\":\\\"([^ =]*)(=)\\\"}]},\\\"command_set_strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\")\\\\\\\\s*([^ ][^=]*)(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.batchfile\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.batchfile\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.batchfile\\\"}},\\\"name\\\":\\\"string.quoted.double.batchfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#escaped_characters\\\"}]}]},\\\"commands\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[\\\\\\\\s@])(?i:adprep|append|arp|assoc|at|atmadm|attrib|auditpol|autochk|autoconv|autofmt|bcdboot|bcdedit|bdehdcfg|bitsadmin|bootcfg|brea|cacls|cd|certreq|certutil|change|chcp|chdir|chglogon|chgport|chgusr|chkdsk|chkntfs|choice|cipher|clip|cls|clscluadmin|cluster|cmd|cmdkey|cmstp|color|comp|compact|convert|copy|cprofile|cscript|csvde|date|dcdiag|dcgpofix|dcpromo|defra|del|dfscmd|dfsdiag|dfsrmig|diantz|dir|dirquota|diskcomp|diskcopy|diskpart|diskperf|diskraid|diskshadow|dispdiag|doin|dnscmd|doskey|driverquery|dsacls|dsadd|dsamain|dsdbutil|dsget|dsmgmt|dsmod|dsmove|dsquery|dsrm|edit|endlocal|eraseesentutl|eventcreate|eventquery|eventtriggers|evntcmd|expand|extract|fc|filescrn|find|findstr|finger|flattemp|fonde|forfiles|format|freedisk|fsutil|ftp|ftype|fveupdate|getmac|gettype|gpfixup|gpresult|gpupdate|graftabl|hashgen|hep|helpctr|hostname|icacls|iisreset|inuse|ipconfig|ipxroute|irftp|ismserv|jetpack|klist|ksetup|ktmutil|ktpass|label|ldifd|ldp|lodctr|logman|logoff|lpq|lpr|macfile|makecab|manage-bde|mapadmin|md|mkdir|mklink|mmc|mode|more|mount|mountvol|move|mqbup|mqsvc|mqtgsvc|msdt|msg|msiexec|msinfo32|mstsc|nbtstat|net computer|net group|net localgroup|net print|net session|net share|net start|net stop|net use|net user|net view|net|netcfg|netdiag|netdom|netsh|netstat|nfsadmin|nfsshare|nfsstat|nlb|nlbmgr|nltest|nslookup|ntackup|ntcmdprompt|ntdsutil|ntfrsutl|openfiles|pagefileconfig|path|pathping|pause|pbadmin|pentnt|perfmon|ping|pnpunatten|pnputil|popd|powercfg|powershell|powershell_ise|print|prncnfg|prndrvr|prnjobs|prnmngr|prnport|prnqctl|prompt|pubprn|pushd|pushprinterconnections|pwlauncher|qappsrv|qprocess|query|quser|qwinsta|rasdial|rcp|rd|rdpsign|regentc|recover|redircmp|redirusr|reg|regini|regsvr32|relog|ren|rename|rendom|repadmin|repair-bde|replace|reset session|rxec|risetup|rmdir|robocopy|route|rpcinfo|rpcping|rsh|runas|rundll32|rwinsta|sc|schtasks|scp|scwcmd|secedit|serverceipoptin|servrmanagercmd|serverweroptin|setspn|setx|sfc|sftp|shadow|shift|showmount|shutdown|sort|ssh|ssh-add|ssh-agent|ssh-keygen|ssh-keyscan|start|storrept|subst|sxstrace|ysocmgr|systeminfo|takeown|tapicfg|taskkill|tasklist|tcmsetup|telnet|tftp|time|timeout|title|tlntadmn|tpmvscmgr|tpmvscmgr|tacerpt|tracert|tree|tscon|tsdiscon|tsecimp|tskill|tsprof|type|typeperf|tzutil|uddiconfig|umount|unlodctr|ver|verifier|verif|vol|vssadmin|w32tm|waitfor|wbadmin|wdsutil|wecutil|wevtutil|where|whoami|winnt|winnt32|winpop|winrm|winrs|winsat|wlbs|wmic|wscript|wsl|xcopy)(?=$|\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.command.batchfile\\\"},{\\\"begin\\\":\\\"(?i)(?<=^|[\\\\\\\\s@])(echo)(?:(?=$|\\\\\\\\.|:)|\\\\\\\\s+(?:(on|off)(?=\\\\\\\\s*$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.command.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.special-method.batchfile\\\"}},\\\"end\\\":\\\"(?=$\\\\\\\\n|[&|><)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_characters\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#strings\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.command.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.special-method.batchfile\\\"}},\\\"match\\\":\\\"(?i)(?<=^|[\\\\\\\\s@])(setlocal)(?:\\\\\\\\s*$|\\\\\\\\s+(EnableExtensions|DisableExtensions|EnableDelayedExpansion|DisableDelayedExpansion)(?=\\\\\\\\s*$))\\\"},{\\\"include\\\":\\\"#command_set\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|(&))\\\\\\\\s*(?=((?::[+=,;: ])))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.batchfile\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"((?::[+=,;: ]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.batchfile\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line.colon.batchfile\\\"}]},{\\\"begin\\\":\\\"(?<=^|[\\\\\\\\s@])(?i)(REM)(\\\\\\\\.)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.command.rem.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.batchfile\\\"}},\\\"end\\\":\\\"(?=$\\\\\\\\n|[&|><)])\\\",\\\"name\\\":\\\"comment.line.rem.batchfile\\\"},{\\\"begin\\\":\\\"(?<=^|[\\\\\\\\s@])(?i:rem)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.command.rem.batchfile\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.rem.batchfile\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[><|]\\\",\\\"name\\\":\\\"invalid.illegal.unexpected-character.batchfile\\\"}]}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?i:NUL)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.batchfile\\\"}]},\\\"controls\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<=^|\\\\\\\\s)(?:call|exit(?=$|\\\\\\\\s)|goto(?=$|\\\\\\\\s|:))\\\",\\\"name\\\":\\\"keyword.control.statement.batchfile\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.logical.batchfile\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.special-method.batchfile\\\"}},\\\"match\\\":\\\"(?<=^|\\\\\\\\s)(?i)(if)\\\\\\\\s+(?:(not)\\\\\\\\s+)?(exist|defined|errorlevel|cmdextversion)(?=\\\\\\\\s)\\\"},{\\\"match\\\":\\\"(?<=^|\\\\\\\\s)(?i)(?:if|else)(?=$|\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.control.conditional.batchfile\\\"},{\\\"begin\\\":\\\"(?<=^|[\\\\\\\\s(&^])(?i)for(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.repeat.batchfile\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"meta.block.repeat.batchfile\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[\\\\\\\\s^])(?i)in(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.repeat.in.batchfile\\\"}},\\\"end\\\":\\\"(?<=[\\\\\\\\s)^])(?i)do(?=\\\\\\\\s)|\\\\\\\\n\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.repeat.do.batchfile\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"escaped_characters\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"%%|\\\\\\\\^\\\\\\\\^!|\\\\\\\\^(?=.)|\\\\\\\\^\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.batchfile\\\"}]},\\\"labels\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.special-method.batchfile\\\"}},\\\"match\\\":\\\"(?i)(?:^\\\\\\\\s*|(?<=call|goto)\\\\\\\\s*)(:)([^+=,;:\\\\\\\\s]\\\\\\\\S*)\\\"}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|\\\\\\\\s|=)(0[xX][0-9A-Fa-f]*|[+-]?\\\\\\\\d+)(?=$|\\\\\\\\s|<|>)\\\",\\\"name\\\":\\\"constant.numeric.batchfile\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"@(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"keyword.operator.at.batchfile\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s)(?i:EQU|NEQ|LSS|LEQ|GTR|GEQ)(?=\\\\\\\\s)|==\\\",\\\"name\\\":\\\"keyword.operator.comparison.batchfile\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s)(?i)(NOT)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.operator.logical.batchfile\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\^)&&?|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.conditional.batchfile\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\^)\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.pipe.batchfile\\\"},{\\\"match\\\":\\\"<&?|>[&>]?\\\",\\\"name\\\":\\\"keyword.operator.redirection.batchfile\\\"}]},\\\"parens\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.group.begin.batchfile\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.group.end.batchfile\\\"}},\\\"name\\\":\\\"meta.group.batchfile\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",|;\\\",\\\"name\\\":\\\"punctuation.separator.batchfile\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"repeatParameter\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.batchfile\\\"}},\\\"match\\\":\\\"(%%)(?:(?i:~[fdpnxsatz]*(?:\\\\\\\\$PATH:)?)?[a-zA-Z])\\\",\\\"name\\\":\\\"variable.parameter.repeat.batchfile\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.batchfile\\\"}},\\\"end\\\":\\\"(\\\\\\\")|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.batchfile\\\"}},\\\"name\\\":\\\"string.quoted.double.batchfile\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"%%\\\",\\\"name\\\":\\\"constant.character.escape.batchfile\\\"},{\\\"include\\\":\\\"#variables\\\"}]}]},\\\"variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"%(?=[^%]+%)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.batchfile\\\"}},\\\"end\\\":\\\"(%)|\\\\\\\\n\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.end.batchfile\\\"}},\\\"name\\\":\\\"variable.other.readwrite.batchfile\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\":~\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.batchfile\\\"}},\\\"end\\\":\\\"(?=%|\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.variable.substring.batchfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable_substring\\\"}]},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.batchfile\\\"}},\\\"end\\\":\\\"(?=%|\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.variable.substitution.batchfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable_replace\\\"},{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.batchfile\\\"}},\\\"end\\\":\\\"(?=%|\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable_delayed_expansion\\\"},{\\\"match\\\":\\\"[^%]+\\\",\\\"name\\\":\\\"string.unquoted.batchfile\\\"}]}]}]}]},\\\"variable_delayed_expansion\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"!(?=[^!]+!)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.batchfile\\\"}},\\\"end\\\":\\\"(!)|\\\\\\\\n\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.end.batchfile\\\"}},\\\"name\\\":\\\"variable.other.readwrite.batchfile\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\":~\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.batchfile\\\"}},\\\"end\\\":\\\"(?=!|\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.variable.substring.batchfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable_substring\\\"}]},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.batchfile\\\"}},\\\"end\\\":\\\"(?=!|\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.variable.substitution.batchfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_characters\\\"},{\\\"include\\\":\\\"#variable_replace\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.batchfile\\\"}},\\\"end\\\":\\\"(?=!|\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"match\\\":\\\"[^!]+\\\",\\\"name\\\":\\\"string.unquoted.batchfile\\\"}]}]}]}]},\\\"variable_replace\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[^=%!\\\\\\\\n]+\\\",\\\"name\\\":\\\"string.unquoted.batchfile\\\"}]},\\\"variable_substring\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.batchfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.batchfile\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.batchfile\\\"}},\\\"match\\\":\\\"([+-]?\\\\\\\\d+)(?:(,)([+-]?\\\\\\\\d+))?\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.batchfile\\\"}},\\\"match\\\":\\\"(%)(?:(?i:~[fdpnxsatz]*(?:\\\\\\\\$PATH:)?)?\\\\\\\\d|\\\\\\\\*)\\\",\\\"name\\\":\\\"variable.parameter.batchfile\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#variable_delayed_expansion\\\"}]}},\\\"scopeName\\\":\\\"source.batchfile\\\",\\\"aliases\\\":[\\\"batch\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Beancount\\\",\\\"fileTypes\\\":[\\\"beancount\\\"],\\\"name\\\":\\\"beancount\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Comments\\\",\\\"match\\\":\\\";.*\\\",\\\"name\\\":\\\"comment.line.beancount\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*(poptag|pushtag)\\\\\\\\s+(#)([A-Za-z0-9\\\\\\\\-_/.]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.tag.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.beancount\\\"}},\\\"comment\\\":\\\"Tag directive\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"meta.directive.tag.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(include)\\\\\\\\s+(\\\\\\\\\\\\\\\".*\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.double.beancount\\\"}},\\\"comment\\\":\\\"Include directive\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"meta.directive.include.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(option)\\\\\\\\s+(\\\\\\\\\\\\\\\".*\\\\\\\\\\\\\\\")\\\\\\\\s+(\\\\\\\\\\\\\\\".*\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.variable.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.quoted.double.beancount\\\"}},\\\"comment\\\":\\\"Option directive\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"meta.directive.option.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(plugin)\\\\\\\\s*(\\\\\\\"(.*?)\\\\\\\")\\\\\\\\s*(\\\\\\\".*?\\\\\\\")?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.double.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.beancount\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.double.beancount\\\"}},\\\"comment\\\":\\\"Plugin directive\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"keyword.operator.directive.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"([0-9]{4})([\\\\\\\\-|/])([0-9]{2})([\\\\\\\\-|/])([0-9]{2})\\\\\\\\s+(open|close|pad)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.date.year.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.date.month.beancount\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.date.day.beancount\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.function.beancount\\\"}},\\\"comment\\\":\\\"Open/Close/Pad directive\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"meta.directive.dated.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#meta\\\"},{\\\"include\\\":\\\"#account\\\"},{\\\"include\\\":\\\"#commodity\\\"},{\\\"match\\\":\\\"\\\\\\\\,\\\",\\\"name\\\":\\\"punctuation.separator.beancount\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"([0-9]{4})([\\\\\\\\-|/])([0-9]{2})([\\\\\\\\-|/])([0-9]{2})\\\\\\\\s+(custom)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.date.year.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.date.month.beancount\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.date.day.beancount\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.function.beancount\\\"}},\\\"comment\\\":\\\"Custom directive\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"meta.directive.dated.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#meta\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#bool\\\"},{\\\"include\\\":\\\"#amount\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#date\\\"},{\\\"include\\\":\\\"#account\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"([0-9]{4})([\\\\\\\\-|/])([0-9]{2})([\\\\\\\\-|/])([0-9]{2})\\\\\\\\s(event)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.date.year.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.date.month.beancount\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.date.day.beancount\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.function.directive.beancount\\\"}},\\\"comment\\\":\\\"Event directive\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"meta.directive.dated.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#meta\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"([0-9]{4})([\\\\\\\\-|/])([0-9]{2})([\\\\\\\\-|/])([0-9]{2})\\\\\\\\s(commodity)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.date.year.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.date.month.beancount\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.date.day.beancount\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.function.directive.beancount\\\"}},\\\"comment\\\":\\\"Commodity directive\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"meta.directive.dated.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#meta\\\"},{\\\"include\\\":\\\"#commodity\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"([0-9]{4})([\\\\\\\\-|/])([0-9]{2})([\\\\\\\\-|/])([0-9]{2})\\\\\\\\s(note|document)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.date.year.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.date.month.beancount\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.date.day.beancount\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.function.directive.beancount\\\"}},\\\"comment\\\":\\\"Note/Document directive\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"meta.directive.dated.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#meta\\\"},{\\\"include\\\":\\\"#account\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"([0-9]{4})([\\\\\\\\-|/])([0-9]{2})([\\\\\\\\-|/])([0-9]{2})\\\\\\\\s(price)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.date.year.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.date.month.beancount\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.date.day.beancount\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.function.directive.beancount\\\"}},\\\"comment\\\":\\\"Price directives\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"meta.directive.dated.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#meta\\\"},{\\\"include\\\":\\\"#commodity\\\"},{\\\"include\\\":\\\"#amount\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"([0-9]{4})([\\\\\\\\-|/])([0-9]{2})([\\\\\\\\-|/])([0-9]{2})\\\\\\\\s(balance)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.date.year.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.date.month.beancount\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.date.day.beancount\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.function.directive.beancount\\\"}},\\\"comment\\\":\\\"Balance directives\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"meta.directive.dated.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#meta\\\"},{\\\"include\\\":\\\"#account\\\"},{\\\"include\\\":\\\"#amount\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"([0-9]{4})([\\\\\\\\-|/])([0-9]{2})([\\\\\\\\-|/])([0-9]{2})\\\\\\\\s*(txn|[*!&#?%PSTCURM])\\\\\\\\s*(\\\\\\\".*?\\\\\\\")?\\\\\\\\s*(\\\\\\\".*?\\\\\\\")?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.date.year.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.date.month.beancount\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.date.day.beancount\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.function.directive.beancount\\\"},\\\"7\\\":{\\\"name\\\":\\\"string.quoted.tiers.beancount\\\"},\\\"8\\\":{\\\"name\\\":\\\"string.quoted.narration.beancount\\\"}},\\\"comment\\\":\\\"Transaction directive\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S))\\\",\\\"name\\\":\\\"meta.directive.transaction.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#posting\\\"},{\\\"include\\\":\\\"#meta\\\"},{\\\"include\\\":\\\"#tag\\\"},{\\\"include\\\":\\\"#link\\\"},{\\\"include\\\":\\\"#illegal\\\"}]}],\\\"repository\\\":{\\\"account\\\":{\\\"begin\\\":\\\"([A-Z][a-z]+)(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.language.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"}},\\\"end\\\":\\\"\\\\\\\\s\\\",\\\"name\\\":\\\"meta.account.beancount\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\S+)([:]?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.account.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"}},\\\"comment\\\":\\\"Sub accounts\\\",\\\"end\\\":\\\"([:]?)|(\\\\\\\\s)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"include\\\":\\\"#illegal\\\"}]}]},\\\"amount\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.modifier.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.currency.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.commodity.beancount\\\"}},\\\"match\\\":\\\"([\\\\\\\\-|\\\\\\\\+]?)(\\\\\\\\d+(?:,\\\\\\\\d{3})*(?:\\\\\\\\.\\\\\\\\d*)?)\\\\\\\\s*([A-Z][A-Z0-9\\\\\\\\'\\\\\\\\.\\\\\\\\_\\\\\\\\-]{0,22}[A-Z0-9])\\\",\\\"name\\\":\\\"meta.amount.beancount\\\"},\\\"bool\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language.bool.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.currency.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.commodity.beancount\\\"}},\\\"match\\\":\\\"TRUE|FALSE\\\"},\\\"comments\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.beancount\\\"}},\\\"match\\\":\\\"(;.*)$\\\"},\\\"commodity\\\":{\\\"match\\\":\\\"([A-Z][A-Z0-9\\\\\\\\'\\\\\\\\.\\\\\\\\_\\\\\\\\-]{0,22}[A-Z0-9])\\\",\\\"name\\\":\\\"entity.name.type.commodity.beancount\\\"},\\\"cost\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\\\\\\{?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.beancount\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\\\\\\}?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.beancount\\\"}},\\\"name\\\":\\\"meta.cost.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#amount\\\"},{\\\"include\\\":\\\"#date\\\"},{\\\"match\\\":\\\"\\\\\\\\,\\\",\\\"name\\\":\\\"punctuation.separator.beancount\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},\\\"date\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.date.year.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.date.month.beancount\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.date.day.beancount\\\"}},\\\"match\\\":\\\"([0-9]{4})([\\\\\\\\-|/])([0-9]{2})([\\\\\\\\-|/])([0-9]{2})\\\",\\\"name\\\":\\\"meta.date.beancount\\\"},\\\"flag\\\":{\\\"match\\\":\\\"(?<=\\\\\\\\s)([*!&#?%PSTCURM])(?=\\\\\\\\s+)\\\",\\\"name\\\":\\\"keyword.other.beancount\\\"},\\\"illegal\\\":{\\\"match\\\":\\\"[^\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized.beancount\\\"},\\\"link\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.link.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.underline.link.beancount\\\"}},\\\"match\\\":\\\"(\\\\\\\\^)([A-Za-z0-9\\\\\\\\-_/.]+)\\\"},\\\"meta\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*([a-z][A-Za-z0-9\\\\\\\\-_]+)([:])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.directive.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.beancount\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"meta.meta.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#account\\\"},{\\\"include\\\":\\\"#bool\\\"},{\\\"include\\\":\\\"#commodity\\\"},{\\\"include\\\":\\\"#date\\\"},{\\\"include\\\":\\\"#tag\\\"},{\\\"include\\\":\\\"#amount\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},\\\"number\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.modifier.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.currency.beancount\\\"}},\\\"match\\\":\\\"([\\\\\\\\-|\\\\\\\\+]?)(\\\\\\\\d+(?:,\\\\\\\\d{3})*(?:\\\\\\\\.\\\\\\\\d*)?)\\\"},\\\"posting\\\":{\\\"begin\\\":\\\"^\\\\\\\\s+(?=([A-Z\\\\\\\\!]))\\\",\\\"end\\\":\\\"(?=(^\\\\\\\\s*$|^\\\\\\\\S|^\\\\\\\\s*[A-Z]))\\\",\\\"name\\\":\\\"meta.posting.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#meta\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#flag\\\"},{\\\"include\\\":\\\"#account\\\"},{\\\"include\\\":\\\"#amount\\\"},{\\\"include\\\":\\\"#cost\\\"},{\\\"include\\\":\\\"#date\\\"},{\\\"include\\\":\\\"#price\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},\\\"price\\\":{\\\"begin\\\":\\\"\\\\\\\\@\\\\\\\\@?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.beancount\\\"}},\\\"end\\\":\\\"(?=(;|\\\\\\\\n))\\\",\\\"name\\\":\\\"meta.price.beancount\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#amount\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},\\\"string\\\":{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.beancount\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.beancount\\\"}]},\\\"tag\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.tag.beancount\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.beancount\\\"}},\\\"match\\\":\\\"(#)([A-Za-z0-9\\\\\\\\-_/.]+)\\\"}},\\\"scopeName\\\":\\\"text.beancount\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Berry\\\",\\\"name\\\":\\\"berry\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#controls\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#member\\\"},{\\\"include\\\":\\\"#identifier\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#operator\\\"}],\\\"repository\\\":{\\\"comment-block\\\":{\\\"begin\\\":\\\"\\\\\\\\#\\\\\\\\-\\\",\\\"end\\\":\\\"\\\\\\\\-#\\\",\\\"name\\\":\\\"comment.berry\\\",\\\"patterns\\\":[{}]},\\\"comments\\\":{\\\"begin\\\":\\\"\\\\\\\\#\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.berry\\\",\\\"patterns\\\":[{}]},\\\"controls\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(if|elif|else|for|while|do|end|break|continue|return|try|except|raise)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.berry\\\"}]},\\\"function\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*(?=\\\\\\\\s*\\\\\\\\())\\\",\\\"name\\\":\\\"entity.name.function.berry\\\"}]},\\\"identifier\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[_A-Za-z]\\\\\\\\w+\\\\\\\\b\\\",\\\"name\\\":\\\"identifier.berry\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(var|static|def|class|true|false|nil|self|super|import|as|_class)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.berry\\\"}]},\\\"member\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.berry\\\"}},\\\"match\\\":\\\"\\\\\\\\.([a-zA-Z_][a-zA-Z0-9_]*)\\\"}]},\\\"number\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"0x[a-fA-F0-9]+|\\\\\\\\d+|(\\\\\\\\d+\\\\\\\\.?|\\\\\\\\.\\\\\\\\d)\\\\\\\\d*([eE][+-]?\\\\\\\\d+)?\\\",\\\"name\\\":\\\"constant.numeric.berry\\\"}]},\\\"operator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\(|\\\\\\\\)|\\\\\\\\[|\\\\\\\\]|\\\\\\\\.|-|\\\\\\\\!|~|\\\\\\\\*|/|%|\\\\\\\\+|&|\\\\\\\\^|\\\\\\\\||<|>|=|:\\\",\\\"name\\\":\\\"keyword.operator.berry\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\"|')\\\",\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"name\\\":\\\"string.quoted.double.berry\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\x[\\\\\\\\h]{2})|(\\\\\\\\\\\\\\\\[0-7]{3})|(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)|(\\\\\\\\\\\\\\\\\\\\\\\")|(\\\\\\\\\\\\\\\\')|(\\\\\\\\\\\\\\\\a)|(\\\\\\\\\\\\\\\\b)|(\\\\\\\\\\\\\\\\f)|(\\\\\\\\\\\\\\\\n)|(\\\\\\\\\\\\\\\\r)|(\\\\\\\\\\\\\\\\t)|(\\\\\\\\\\\\\\\\v)\\\",\\\"name\\\":\\\"constant.character.escape.berry\\\"}]},{\\\"begin\\\":\\\"f(\\\\\\\"|')\\\",\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"name\\\":\\\"string.quoted.other.berry\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\x[\\\\\\\\h]{2})|(\\\\\\\\\\\\\\\\[0-7]{3})|(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)|(\\\\\\\\\\\\\\\\\\\\\\\")|(\\\\\\\\\\\\\\\\')|(\\\\\\\\\\\\\\\\a)|(\\\\\\\\\\\\\\\\b)|(\\\\\\\\\\\\\\\\f)|(\\\\\\\\\\\\\\\\n)|(\\\\\\\\\\\\\\\\r)|(\\\\\\\\\\\\\\\\t)|(\\\\\\\\\\\\\\\\v)\\\",\\\"name\\\":\\\"constant.character.escape.berry\\\"},{\\\"match\\\":\\\"\\\\\\\\{\\\\\\\\{[^\\\\\\\\}]*\\\\\\\\}\\\\\\\\}\\\",\\\"name\\\":\\\"string.quoted.other.berry\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"keyword.other.unit.berry\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#identifier\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#member\\\"},{\\\"include\\\":\\\"#function\\\"}]}]}]}},\\\"scopeName\\\":\\\"source.berry\\\",\\\"aliases\\\":[\\\"be\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"BibTeX\\\",\\\"name\\\":\\\"bibtex\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.bibtex\\\"}},\\\"match\\\":\\\"@(?i:comment)(?=[\\\\\\\\s{(])\\\",\\\"name\\\":\\\"comment.block.at-sign.bibtex\\\"},{\\\"begin\\\":\\\"((@)(?i:preamble))\\\\\\\\s*(\\\\\\\\{)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.preamble.bibtex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.bibtex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.preamble.begin.bibtex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.preamble.end.bibtex\\\"}},\\\"name\\\":\\\"meta.preamble.braces.bibtex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#field_value\\\"}]},{\\\"begin\\\":\\\"((@)(?i:preamble))\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.preamble.bibtex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.bibtex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.preamble.begin.bibtex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.preamble.end.bibtex\\\"}},\\\"name\\\":\\\"meta.preamble.parenthesis.bibtex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#field_value\\\"}]},{\\\"begin\\\":\\\"((@)(?i:string))\\\\\\\\s*(\\\\\\\\{)\\\\\\\\s*([a-zA-Z!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.string-constant.bibtex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.bibtex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.string-constant.begin.bibtex\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.bibtex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.string-constant.end.bibtex\\\"}},\\\"name\\\":\\\"meta.string-constant.braces.bibtex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#field_value\\\"}]},{\\\"begin\\\":\\\"((@)(?i:string))\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*([a-zA-Z!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.string-constant.bibtex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.bibtex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.string-constant.begin.bibtex\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.bibtex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.string-constant.end.bibtex\\\"}},\\\"name\\\":\\\"meta.string-constant.parenthesis.bibtex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#field_value\\\"}]},{\\\"begin\\\":\\\"((@)[a-zA-Z!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~]*)\\\\\\\\s*(\\\\\\\\{)\\\\\\\\s*([^\\\\\\\\s,}]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.entry-type.bibtex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.bibtex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.entry.begin.bibtex\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.entry-key.bibtex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.entry.end.bibtex\\\"}},\\\"name\\\":\\\"meta.entry.braces.bibtex\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"([a-zA-Z!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~]*)\\\\\\\\s*(\\\\\\\\=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.key.bibtex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.bibtex\\\"}},\\\"end\\\":\\\"(?=[,}])\\\",\\\"name\\\":\\\"meta.key-assignment.bibtex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#field_value\\\"}]}]},{\\\"begin\\\":\\\"((@)[a-zA-Z!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~]*)\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*([^\\\\\\\\s,]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.entry-type.bibtex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.bibtex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.entry.begin.bibtex\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.entry-key.bibtex\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.entry.end.bibtex\\\"}},\\\"name\\\":\\\"meta.entry.parenthesis.bibtex\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"([a-zA-Z!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~]*)\\\\\\\\s*(\\\\\\\\=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.key.bibtex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.bibtex\\\"}},\\\"end\\\":\\\"(?=[,)])\\\",\\\"name\\\":\\\"meta.key-assignment.bibtex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#field_value\\\"}]}]},{\\\"begin\\\":\\\"[^@\\\\\\\\n]\\\",\\\"end\\\":\\\"(?=@)\\\",\\\"name\\\":\\\"comment.block.bibtex\\\"}],\\\"repository\\\":{\\\"field_value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string_content\\\"},{\\\"include\\\":\\\"#integer\\\"},{\\\"include\\\":\\\"#string_var\\\"},{\\\"match\\\":\\\"#\\\",\\\"name\\\":\\\"keyword.operator.bibtex\\\"}]},\\\"integer\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.bibtex\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\d+)\\\\\\\\s*\\\"},\\\"nested_braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.bibtex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.bibtex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#nested_braces\\\"}]},\\\"string_content\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.bibtex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.bibtex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#nested_braces\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.bibtex\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.bibtex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#nested_braces\\\"}]}]},\\\"string_var\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.variable.bibtex\\\"}},\\\"match\\\":\\\"[a-zA-Z!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~][a-zA-Z0-9!$&*+\\\\\\\\-./:;<>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`|~]*\\\"}},\\\"scopeName\\\":\\\"text.bibtex\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Bicep\\\",\\\"fileTypes\\\":[\\\".bicep\\\"],\\\"name\\\":\\\"bicep\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comments\\\"}],\\\"repository\\\":{\\\"array-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\[(?!(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*\\\\\\\\bfor\\\\\\\\b)\\\",\\\"end\\\":\\\"]\\\",\\\"name\\\":\\\"meta.array-literal.bicep\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"block-comment\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.bicep\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#line-comment\\\"},{\\\"include\\\":\\\"#block-comment\\\"}]},\\\"decorator\\\":{\\\"begin\\\":\\\"@(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*(?=\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b)\\\",\\\"end\\\":\\\"\\\",\\\"name\\\":\\\"meta.decorator.bicep\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"directive\\\":{\\\"begin\\\":\\\"#\\\\\\\\b[_a-zA-Z-0-9]+\\\\\\\\b\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.directive.bicep\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#directive-variable\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"directive-variable\\\":{\\\"match\\\":\\\"\\\\\\\\b[_a-zA-Z-0-9]+\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.declaration.bicep\\\"},\\\"escape-character\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(u{[0-9A-Fa-f]+}|n|r|t|\\\\\\\\\\\\\\\\|'|\\\\\\\\${)\\\",\\\"name\\\":\\\"constant.character.escape.bicep\\\"},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-literal\\\"},{\\\"include\\\":\\\"#string-verbatim\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#named-literal\\\"},{\\\"include\\\":\\\"#object-literal\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#identifier\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#lambda-start\\\"},{\\\"include\\\":\\\"#directive\\\"}]},\\\"function-call\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.bicep\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.function-call.bicep\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"identifier\\\":{\\\"match\\\":\\\"\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b(?!(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*\\\\\\\\()\\\",\\\"name\\\":\\\"variable.other.readwrite.bicep\\\"},\\\"keyword\\\":{\\\"match\\\":\\\"\\\\\\\\b(metadata|targetScope|resource|module|param|var|output|for|in|if|existing|import|as|type|with|using|extends|func|assert|extension)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.declaration.bicep\\\"},\\\"lambda-start\\\":{\\\"begin\\\":\\\"(\\\\\\\\((?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*(,(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*)*\\\\\\\\)|\\\\\\\\((?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*\\\\\\\\)|(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*)(?=(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*=>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.undefined.bicep\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#identifier\\\"},{\\\"include\\\":\\\"#comments\\\"}]}},\\\"end\\\":\\\"(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*=>\\\",\\\"name\\\":\\\"meta.lambda-start.bicep\\\"},\\\"line-comment\\\":{\\\"match\\\":\\\"//.*(?=$)\\\",\\\"name\\\":\\\"comment.line.double-slash.bicep\\\"},\\\"named-literal\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.bicep\\\"},\\\"numeric-literal\\\":{\\\"match\\\":\\\"[0-9]+\\\",\\\"name\\\":\\\"constant.numeric.bicep\\\"},\\\"object-literal\\\":{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.object-literal.bicep\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-property-key\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"object-property-key\\\":{\\\"match\\\":\\\"\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b(?=(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]|\\\\\\\\/\\\\\\\\*(?:\\\\\\\\*(?!\\\\\\\\/)|[^*])*\\\\\\\\*\\\\\\\\/)*:)\\\",\\\"name\\\":\\\"variable.other.property.bicep\\\"},\\\"string-literal\\\":{\\\"begin\\\":\\\"'(?!'')\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.bicep\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-character\\\"},{\\\"include\\\":\\\"#string-literal-subst\\\"}]},\\\"string-literal-subst\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\${)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.bicep\\\"}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.bicep\\\"}},\\\"name\\\":\\\"meta.string-literal-subst.bicep\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"string-verbatim\\\":{\\\"begin\\\":\\\"'''\\\",\\\"end\\\":\\\"'''(?!')\\\",\\\"name\\\":\\\"string.quoted.multi.bicep\\\",\\\"patterns\\\":[]}},\\\"scopeName\\\":\\\"source.bicep\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"SQL\\\",\\\"name\\\":\\\"sql\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"((?<!@)@)\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"text.variable\\\"},{\\\"match\\\":\\\"(\\\\\\\\[)[^\\\\\\\\]]*(\\\\\\\\])\\\",\\\"name\\\":\\\"text.bracketed\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.create.sql\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.sql\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.sql\\\"}},\\\"match\\\":\\\"(?i:^\\\\\\\\s*(create(?:\\\\\\\\s+or\\\\\\\\s+replace)?)\\\\\\\\s+(aggregate|conversion|database|domain|function|group|(unique\\\\\\\\s+)?index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\\\\\s+)(['\\\\\\\"`]?)(\\\\\\\\w+)\\\\\\\\4\\\",\\\"name\\\":\\\"meta.create.sql\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.create.sql\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.sql\\\"}},\\\"match\\\":\\\"(?i:^\\\\\\\\s*(drop)\\\\\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view))\\\",\\\"name\\\":\\\"meta.drop.sql\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.create.sql\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.table.sql\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.sql\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.cascade.sql\\\"}},\\\"match\\\":\\\"(?i:\\\\\\\\s*(drop)\\\\\\\\s+(table)\\\\\\\\s+(\\\\\\\\w+)(\\\\\\\\s+cascade)?\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.drop.sql\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.create.sql\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.table.sql\\\"}},\\\"match\\\":\\\"(?i:^\\\\\\\\s*(alter)\\\\\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|proc(edure)?|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\\\\\s+)\\\",\\\"name\\\":\\\"meta.alter.sql\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.sql\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.sql\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.sql\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.sql\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.sql\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.sql\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.sql\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.numeric.sql\\\"},\\\"9\\\":{\\\"name\\\":\\\"storage.type.sql\\\"},\\\"10\\\":{\\\"name\\\":\\\"constant.numeric.sql\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.sql\\\"},\\\"12\\\":{\\\"name\\\":\\\"storage.type.sql\\\"},\\\"13\\\":{\\\"name\\\":\\\"storage.type.sql\\\"},\\\"14\\\":{\\\"name\\\":\\\"constant.numeric.sql\\\"},\\\"15\\\":{\\\"name\\\":\\\"storage.type.sql\\\"}},\\\"match\\\":\\\"(?xi)\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t# normal stuff, capture 1\\\\n\\\\t\\\\t\\\\t\\\\t \\\\\\\\b(bigint|bigserial|bit|boolean|box|bytea|cidr|circle|date|double\\\\\\\\sprecision|inet|int|integer|line|lseg|macaddr|money|oid|path|point|polygon|real|serial|smallint|sysdate|text)\\\\\\\\b\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t# numeric suffix, capture 2 + 3i\\\\n\\\\t\\\\t\\\\t\\\\t|\\\\\\\\b(bit\\\\\\\\svarying|character\\\\\\\\s(?:varying)?|tinyint|var\\\\\\\\schar|float|interval)\\\\\\\\((\\\\\\\\d+)\\\\\\\\)\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t# optional numeric suffix, capture 4 + 5i\\\\n\\\\t\\\\t\\\\t\\\\t|\\\\\\\\b(char|number|varchar\\\\\\\\d?)\\\\\\\\b(?:\\\\\\\\((\\\\\\\\d+)\\\\\\\\))?\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t# special case, capture 6 + 7i + 8i\\\\n\\\\t\\\\t\\\\t\\\\t|\\\\\\\\b(numeric|decimal)\\\\\\\\b(?:\\\\\\\\((\\\\\\\\d+),(\\\\\\\\d+)\\\\\\\\))?\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t# special case, captures 9, 10i, 11\\\\n\\\\t\\\\t\\\\t\\\\t|\\\\\\\\b(times?)\\\\\\\\b(?:\\\\\\\\((\\\\\\\\d+)\\\\\\\\))?(\\\\\\\\swith(?:out)?\\\\\\\\stime\\\\\\\\szone\\\\\\\\b)?\\\\n\\\\n\\\\t\\\\t\\\\t\\\\t# special case, captures 12, 13, 14i, 15\\\\n\\\\t\\\\t\\\\t\\\\t|\\\\\\\\b(timestamp)(?:(s|tz))?\\\\\\\\b(?:\\\\\\\\((\\\\\\\\d+)\\\\\\\\))?(\\\\\\\\s(with|without)\\\\\\\\stime\\\\\\\\szone\\\\\\\\b)?\\\\n\\\\n\\\\t\\\\t\\\\t\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b((?:primary|foreign)\\\\\\\\s+key|references|on\\\\\\\\sdelete(\\\\\\\\s+cascade)?|nocheck|check|constraint|collate|default)\\\\\\\\b)\\\",\\\"name\\\":\\\"storage.modifier.sql\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.sql\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(select(\\\\\\\\s+(all|distinct))?|insert\\\\\\\\s+(ignore\\\\\\\\s+)?into|update|delete|from|set|where|group\\\\\\\\s+by|or|like|and|union(\\\\\\\\s+all)?|having|order\\\\\\\\s+by|limit|cross\\\\\\\\s+join|join|straight_join|(inner|(left|right|full)(\\\\\\\\s+outer)?)\\\\\\\\s+join|natural(\\\\\\\\s+(inner|(left|right|full)(\\\\\\\\s+outer)?))?\\\\\\\\s+join)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.other.DML.sql\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(on|off|((is\\\\\\\\s+)?not\\\\\\\\s+)?null)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.other.DDL.create.II.sql\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\bvalues\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.other.DML.II.sql\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(begin(\\\\\\\\s+work)?|start\\\\\\\\s+transaction|commit(\\\\\\\\s+work)?|rollback(\\\\\\\\s+work)?)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.other.LUW.sql\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(grant(\\\\\\\\swith\\\\\\\\sgrant\\\\\\\\soption)?|revoke)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.other.authorization.sql\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\bin\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.other.data-integrity.sql\\\"},{\\\"match\\\":\\\"(?i:^\\\\\\\\s*(comment\\\\\\\\s+on\\\\\\\\s+(table|column|aggregate|constraint|database|domain|function|index|operator|rule|schema|sequence|trigger|type|view))\\\\\\\\s+.*?\\\\\\\\s+(is)\\\\\\\\s+)\\\",\\\"name\\\":\\\"keyword.other.object-comments.sql\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bAS\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.alias.sql\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(DESC|ASC)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.order.sql\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.operator.star.sql\\\"},{\\\"match\\\":\\\"[!<>]?=|<>|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.sql\\\"},{\\\"match\\\":\\\"-|\\\\\\\\+|/\\\",\\\"name\\\":\\\"keyword.operator.math.sql\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.concatenator.sql\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.aggregate.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(approx_count_distinct|approx_percentile_cont|approx_percentile_disc|avg|checksum_agg|count|count_big|group|grouping|grouping_id|max|min|sum|stdev|stdevp|var|varp)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.analytic.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(cume_dist|first_value|lag|last_value|lead|percent_rank|percentile_cont|percentile_disc)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.bitmanipulation.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(bit_count|get_bit|left_shift|right_shift|set_bit)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.conversion.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(cast|convert|parse|try_cast|try_convert|try_parse)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.collation.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(collationproperty|tertiary_weights)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.cryptographic.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(asymkey_id|asymkeyproperty|certproperty|cert_id|crypt_gen_random|decryptbyasymkey|decryptbycert|decryptbykey|decryptbykeyautoasymkey|decryptbykeyautocert|decryptbypassphrase|encryptbyasymkey|encryptbycert|encryptbykey|encryptbypassphrase|hashbytes|is_objectsigned|key_guid|key_id|key_name|signbyasymkey|signbycert|symkeyproperty|verifysignedbycert|verifysignedbyasymkey)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.cursor.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(cursor_status)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.datetime.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(sysdatetime|sysdatetimeoffset|sysutcdatetime|current_time(stamp)?|getdate|getutcdate|datename|datepart|day|month|year|datefromparts|datetime2fromparts|datetimefromparts|datetimeoffsetfromparts|smalldatetimefromparts|timefromparts|datediff|dateadd|datetrunc|eomonth|switchoffset|todatetimeoffset|isdate|date_bucket)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.datatype.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(datalength|ident_current|ident_incr|ident_seed|identity|sql_variant_property)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.expression.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(coalesce|nullif)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.globalvar.sql\\\"}},\\\"match\\\":\\\"(?<!@)@@(?i)\\\\\\\\b(cursor_rows|connections|cpu_busy|datefirst|dbts|error|fetch_status|identity|idle|io_busy|langid|language|lock_timeout|max_connections|max_precision|nestlevel|options|packet_errors|pack_received|pack_sent|procid|remserver|rowcount|servername|servicename|spid|textsize|timeticks|total_errors|total_read|total_write|trancount|version)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.json.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(json|isjson|json_object|json_array|json_value|json_query|json_modify|json_path_exists)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.logical.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(choose|iif|greatest|least)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.mathematical.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(abs|acos|asin|atan|atn2|ceiling|cos|cot|degrees|exp|floor|log|log10|pi|power|radians|rand|round|sign|sin|sqrt|square|tan)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.metadata.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(app_name|applock_mode|applock_test|assemblyproperty|col_length|col_name|columnproperty|database_principal_id|databasepropertyex|db_id|db_name|file_id|file_idex|file_name|filegroup_id|filegroup_name|filegroupproperty|fileproperty|fulltextcatalogproperty|fulltextserviceproperty|index_col|indexkey_property|indexproperty|object_definition|object_id|object_name|object_schema_name|objectproperty|objectpropertyex|original_db_name|parsename|schema_id|schema_name|scope_identity|serverproperty|stats_date|type_id|type_name|typeproperty)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.ranking.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(rank|dense_rank|ntile|row_number)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.rowset.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(generate_series|opendatasource|openjson|openrowset|openquery|openxml|predict|string_split)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.security.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(certencoded|certprivatekey|current_user|database_principal_id|has_perms_by_name|is_member|is_rolemember|is_srvrolemember|original_login|permissions|pwdcompare|pwdencrypt|schema_id|schema_name|session_user|suser_id|suser_sid|suser_sname|system_user|suser_name|user_id|user_name)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.string.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(ascii|char|charindex|concat|difference|format|left|len|lower|ltrim|nchar|nodes|patindex|quotename|replace|replicate|reverse|right|rtrim|soundex|space|str|string_agg|string_escape|string_split|stuff|substring|translate|trim|unicode|upper)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.system.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(binary_checksum|checksum|compress|connectionproperty|context_info|current_request_id|current_transaction_id|decompress|error_line|error_message|error_number|error_procedure|error_severity|error_state|formatmessage|get_filestream_transaction_context|getansinull|host_id|host_name|isnull|isnumeric|min_active_rowversion|newid|newsequentialid|rowcount_big|session_context|session_id|xact_state)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.textimage.sql\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(patindex|textptr|textvalid)\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.database-name.sql\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.table-name.sql\\\"}},\\\"match\\\":\\\"(\\\\\\\\w+?)\\\\\\\\.(\\\\\\\\w+)\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#regexps\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i)(abort|abort_after_wait|absent|absolute|accent_sensitivity|acceptable_cursopt|acp|action|activation|add|address|admin|aes_128|aes_192|aes_256|affinity|after|aggregate|algorithm|all_constraints|all_errormsgs|all_indexes|all_levels|all_results|allow_connections|allow_dup_row|allow_encrypted_value_modifications|allow_page_locks|allow_row_locks|allow_snapshot_isolation|alter|altercolumn|always|anonymous|ansi_defaults|ansi_null_default|ansi_null_dflt_off|ansi_null_dflt_on|ansi_nulls|ansi_padding|ansi_warnings|appdomain|append|application|apply|arithabort|arithignore|array|assembly|asymmetric|asynchronous_commit|at|atan2|atomic|attach|attach_force_rebuild_log|attach_rebuild_log|audit|auth_realm|authentication|auto|auto_cleanup|auto_close|auto_create_statistics|auto_drop|auto_shrink|auto_update_statistics|auto_update_statistics_async|automated_backup_preference|automatic|autopilot|availability|availability_mode|backup|backup_priority|base64|basic|batches|batchsize|before|between|bigint|binary|binding|bit|block|blockers|blocksize|bmk|both|break|broker|broker_instance|bucket_count|buffer|buffercount|bulk_logged|by|call|caller|card|case|catalog|catch|cert|certificate|change_retention|change_tracking|change_tracking_context|changes|char|character|character_set|check_expiration|check_policy|checkconstraints|checkindex|checkpoint|checksum|cleanup_policy|clear|clear_port|close|clustered|codepage|collection|column_encryption_key|column_master_key|columnstore|columnstore_archive|colv_80_to_100|colv_100_to_80|commit_differential_base|committed|compatibility_level|compress_all_row_groups|compression|compression_delay|concat_null_yields_null|concatenate|configuration|connect|connection|containment|continue|continue_after_error|contract|contract_name|control|conversation|conversation_group_id|conversation_handle|copy|copy_only|count_rows|counter|create(\\\\\\\\\\\\\\\\s+or\\\\\\\\\\\\\\\\s+alter)?|credential|cross|cryptographic|cryptographic_provider|cube|cursor|cursor_close_on_commit|cursor_default|data|data_compression|data_flush_interval_seconds|data_mirroring|data_purity|data_source|database|database_name|database_snapshot|datafiletype|date_correlation_optimization|date|datefirst|dateformat|date_format|datetime|datetime2|datetimeoffset|day(s)?|db_chaining|dbid|dbidexec|dbo_only|deadlock_priority|deallocate|dec|decimal|declare|decrypt|decrypt_a|decryption|default_database|default_fulltext_language|default_language|default_logon_domain|default_schema|definition|delay|delayed_durability|delimitedtext|density_vector|dependent|des|description|desired_state|desx|differential|digest|disable|disable_broker|disable_def_cnst_chk|disabled|disk|distinct|distributed|distribution|drop|drop_existing|dts_buffers|dump|durability|dynamic|edition|elements|else|emergency|empty|enable|enable_broker|enabled|encoding|encrypted|encrypted_value|encryption|encryption_type|end|endpoint|endpoint_url|enhancedintegrity|entry|error_broker_conversations|errorfile|estimateonly|event|except|exec|executable|execute|exists|expand|expiredate|expiry_date|explicit|external|external_access|failover|failover_mode|failure_condition_level|fast|fast_forward|fastfirstrow|federated_service_account|fetch|field_terminator|fieldterminator|file|filelistonly|filegroup|filegrowth|filename|filestream|filestream_log|filestream_on|filetable|file_format|filter|first_row|fips_flagger|fire_triggers|first|firstrow|float|flush_interval_seconds|fmtonly|following|for|force|force_failover_allow_data_loss|force_service_allow_data_loss|forced|forceplan|formatfile|format_options|format_type|formsof|forward_only|free_cursors|free_exec_context|fullscan|fulltext|fulltextall|fulltextkey|function|generated|get|geography|geometry|global|go|goto|governor|guid|hadoop|hardening|hash|hashed|header_limit|headeronly|health_check_timeout|hidden|hierarchyid|histogram|histogram_steps|hits_cursors|hits_exec_context|hour(s)?|http|identity|identity_value|if|ifnull|ignore|ignore_constraints|ignore_dup_key|ignore_dup_row|ignore_triggers|image|immediate|implicit_transactions|include|include_null_values|incremental|index|inflectional|init|initiator|insensitive|insert|instead|int|integer|integrated|intersect|intermediate|interval_length_minutes|into|inuse_cursors|inuse_exec_context|io|is|isabout|iso_week|isolation|job_tracker_location|json|keep|keep_nulls|keep_replication|keepdefaults|keepfixed|keepidentity|keepnulls|kerberos|key|key_path|key_source|key_store_provider_name|keyset|kill|kilobytes_per_batch|labelonly|langid|language|last|lastrow|leading|legacy_cardinality_estimation|length|level|lifetime|lineage_80_to_100|lineage_100_to_80|listener_ip|listener_port|load|loadhistory|lob_compaction|local|local_service_name|locate|location|lock_escalation|lock_timeout|lockres|log|login|login_type|loop|manual|mark_in_use_for_removal|masked|master|match|matched|max_queue_readers|max_duration|max_outstanding_io_per_volume|maxdop|maxerrors|maxlength|maxtransfersize|max_plans_per_query|max_storage_size_mb|mediadescription|medianame|mediapassword|memogroup|memory_optimized|merge|message|message_forward_size|message_forwarding|microsecond|millisecond|minute(s)?|mirror_address|misses_cursors|misses_exec_context|mixed|modify|money|month|move|multi_user|must_change|name|namespace|nanosecond|native|native_compilation|nchar|ncharacter|nested_triggers|never|new_account|new_broker|newname|next|no|no_browsetable|no_checksum|no_compression|no_infomsgs|no_triggers|no_truncate|nocount|noexec|noexpand|noformat|noinit|nolock|nonatomic|nonclustered|nondurable|none|norecompute|norecovery|noreset|norewind|noskip|not|notification|nounload|now|nowait|ntext|ntlm|nulls|numeric|numeric_roundabort|nvarchar|object|objid|oem|offline|old_account|online|operation_mode|open|openjson|optimistic|option|orc|out|outer|output|over|override|owner|ownership|pad_index|page|page_checksum|page_verify|pagecount|paglock|param|parameter_sniffing|parameter_type_expansion|parameterization|parquet|parseonly|partial|partition|partner|password|path|pause|percentage|permission_set|persisted|period|physical_only|plan_forcing_mode|policy|pool|population|ports|preceding|precision|predicate|presume_abort|primary|primary_role|print|prior|priority |priority_level|private|proc(edure)?|procedure_name|profile|provider|quarter|query_capture_mode|query_governor_cost_limit|query_optimizer_hotfixes|query_store|queue|quoted_identifier|raiserror|range|raw|rcfile|rc2|rc4|rc4_128|rdbms|read_committed_snapshot|read|read_only|read_write|readcommitted|readcommittedlock|readonly|readpast|readuncommitted|readwrite|real|rebuild|receive|recmodel_70backcomp|recompile|reconfigure|recovery|recursive|recursive_triggers|redo_queue|reject_sample_value|reject_type|reject_value|relative|remote|remote_data_archive|remote_proc_transactions|remote_service_name|remove|removed_cursors|removed_exec_context|reorganize|repeat|repeatable|repeatableread|replace|replica|replicated|replnick_100_to_80|replnickarray_80_to_100|replnickarray_100_to_80|required|required_cursopt|resample|reset|resource|resource_manager_location|respect|restart|restore|restricted_user|resume|retaindays|retention|return|revert|rewind|rewindonly|returns|robust|role|rollup|root|round_robin|route|row|rowdump|rowguidcol|rowlock|row_terminator|rows|rows_per_batch|rowsets_only|rowterminator|rowversion|rsa_1024|rsa_2048|rsa_3072|rsa_4096|rsa_512|safe|safety|sample|save|scalar|schema|schemabinding|scoped|scroll|scroll_locks|sddl|second|secexpr|seconds|secondary|secondary_only|secondary_role|secret|security|securityaudit|selective|self|send|sent|sequence|serde_method|serializable|server|service|service_broker|service_name|service_objective|session_timeout|session|sessions|seterror|setopts|sets|shard_map_manager|shard_map_name|sharded|shared_memory|shortest_path|show_statistics|showplan_all|showplan_text|showplan_xml|showplan_xml_with_recompile|shrinkdb|shutdown|sid|signature|simple|single_blob|single_clob|single_nclob|single_user|singleton|site|size|size_based_cleanup_mode|skip|smalldatetime|smallint|smallmoney|snapshot|snapshot_import|snapshotrestorephase|soap|softnuma|sort_in_tempdb|sorted_data|sorted_data_reorg|spatial|sql|sql_bigint|sql_binary|sql_bit|sql_char|sql_date|sql_decimal|sql_double|sql_float|sql_guid|sql_handle|sql_longvarbinary|sql_longvarchar|sql_numeric|sql_real|sql_smallint|sql_time|sql_timestamp|sql_tinyint|sql_tsi_day|sql_tsi_frac_second|sql_tsi_hour|sql_tsi_minute|sql_tsi_month|sql_tsi_quarter|sql_tsi_second|sql_tsi_week|sql_tsi_year|sql_type_date|sql_type_time|sql_type_timestamp|sql_varbinary|sql_varchar|sql_variant|sql_wchar|sql_wlongvarchar|ssl|ssl_port|standard|standby|start|start_date|started|stat_header|state|statement|static|statistics|statistics_incremental|statistics_norecompute|statistics_only|statman|stats|stats_stream|status|stop|stop_on_error|stopat|stopatmark|stopbeforemark|stoplist|stopped|string_delimiter|subject|supplemental_logging|supported|suspend|symmetric|synchronous_commit|synonym|sysname|system|system_time|system_versioning|table|tableresults|tablock|tablockx|take|tape|target|target_index|target_partition|target_recovery_time|tcp|temporal_history_retention|text|textimage_on|then|thesaurus|throw|time|timeout|timestamp|tinyint|to|top|torn_page_detection|track_columns_updated|trailing|tran|transaction|transfer|transform_noise_words|triple_des|triple_des_3key|truncate|trustworthy|try|tsql|two_digit_year_cutoff|type|type_desc|type_warning|tzoffset|uid|unbounded|uncommitted|unique|uniqueidentifier|unlimited|unload|unlock|unsafe|updlock|url|use|useplan|useroptions|use_type_default|using|utcdatetime|valid_xml|validation|value|values|varbinary|varchar|verbose|verifyonly|version|view_metadata|virtual_device|visiblity|wait_at_low_priority|waitfor|webmethod|week|weekday|weight|well_formed_xml|when|while|widechar|widechar_ansi|widenative|window|windows|with|within|within group|witness|without|without_array_wrapper|workload|wsdl|xact_abort|xlock|xml|xmlschema|xquery|xsinil|year|zone)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.sql\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.sql\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.sql\\\"}},\\\"comment\\\":\\\"Allow for special \u21A9 behavior\\\",\\\"match\\\":\\\"(\\\\\\\\()(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.block.sql\\\"}],\\\"repository\\\":{\\\"comment-block\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.sql\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=--)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.sql\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"--\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.sql\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-dash.sql\\\"}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.sql\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[]},{\\\"include\\\":\\\"#comment-block\\\"}]},\\\"regexps\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/(?=\\\\\\\\S.*/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.sql\\\"}},\\\"end\\\":\\\"/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.sql\\\"}},\\\"name\\\":\\\"string.regexp.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\/\\\",\\\"name\\\":\\\"constant.character.escape.slash.sql\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.sql\\\"}},\\\"comment\\\":\\\"We should probably handle nested bracket pairs!?! -- Allan\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.sql\\\"}},\\\"name\\\":\\\"string.regexp.modr.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_interpolation\\\"}]}]},\\\"string_escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.sql\\\"},\\\"string_interpolation\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.sql\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.sql\\\"}},\\\"match\\\":\\\"(#\\\\\\\\{)([^\\\\\\\\}]*)(\\\\\\\\})\\\",\\\"name\\\":\\\"string.interpolated.sql\\\"},\\\"strings\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.sql\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.sql\\\"}},\\\"comment\\\":\\\"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.\\\",\\\"match\\\":\\\"(N)?(')[^']*(')\\\",\\\"name\\\":\\\"string.quoted.single.sql\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.sql\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.sql\\\"}},\\\"name\\\":\\\"string.quoted.single.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escape\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.sql\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.sql\\\"}},\\\"comment\\\":\\\"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.\\\",\\\"match\\\":\\\"(`)[^`\\\\\\\\\\\\\\\\]*(`)\\\",\\\"name\\\":\\\"string.quoted.other.backtick.sql\\\"},{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.sql\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.sql\\\"}},\\\"name\\\":\\\"string.quoted.other.backtick.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escape\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.sql\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.sql\\\"}},\\\"comment\\\":\\\"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.\\\",\\\"match\\\":\\\"(\\\\\\\")[^\\\\\\\"#]*(\\\\\\\")\\\",\\\"name\\\":\\\"string.quoted.double.sql\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.sql\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.sql\\\"}},\\\"name\\\":\\\"string.quoted.double.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_interpolation\\\"}]},{\\\"begin\\\":\\\"%\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.sql\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.sql\\\"}},\\\"name\\\":\\\"string.other.quoted.brackets.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_interpolation\\\"}]}]}},\\\"scopeName\\\":\\\"source.sql\\\"}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\nimport xml from './xml.mjs'\nimport sql from './sql.mjs'\nimport javascript from './javascript.mjs'\nimport json from './json.mjs'\nimport css from './css.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Blade\\\",\\\"fileTypes\\\":[\\\"blade.php\\\"],\\\"foldingStartMarker\\\":\\\"(/\\\\\\\\*|\\\\\\\\{\\\\\\\\s*$|<<<HTML)\\\",\\\"foldingStopMarker\\\":\\\"(\\\\\\\\*/|^\\\\\\\\s*\\\\\\\\}|^HTML;)\\\",\\\"injections\\\":{\\\"text.html.php.blade - (meta.embedded | meta.tag | comment.block.blade), L:(text.html.php.blade meta.tag - (comment.block.blade | meta.embedded.block.blade)), L:(source.js.embedded.html - (comment.block.blade | meta.embedded.block.blade))\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#blade\\\"},{\\\"begin\\\":\\\"(^\\\\\\\\s*)(?=<\\\\\\\\?(?![^?]*\\\\\\\\?>))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.php\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.php\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"<\\\\\\\\?(?i:php|=)?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"}},\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"(\\\\\\\\?)>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"name\\\":\\\"meta.embedded.block.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]},{\\\"begin\\\":\\\"<\\\\\\\\?(?i:php|=)?(?![^?]*\\\\\\\\?>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"}},\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"(\\\\\\\\?)>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"name\\\":\\\"meta.embedded.block.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"<\\\\\\\\?(?i:php|=)?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"}},\\\"name\\\":\\\"meta.embedded.line.php\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"match\\\":\\\"\\\\\\\\G(\\\\\\\\s*)((\\\\\\\\?))(?=>)\\\",\\\"name\\\":\\\"meta.special.empty-tag.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"(\\\\\\\\?)(?=>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]}]}},\\\"name\\\":\\\"blade\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}],\\\"repository\\\":{\\\"balance_brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#balance_brackets\\\"}]},{\\\"match\\\":\\\"[^()]+\\\"}]},\\\"blade\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{{--\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.blade\\\"}},\\\"end\\\":\\\"--}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.blade\\\"}},\\\"name\\\":\\\"comment.block.blade\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^\\\\\\\\s*)(?=<\\\\\\\\?(?![^?]*\\\\\\\\?>))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.php\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.php\\\"}},\\\"name\\\":\\\"invalid.illegal.php-code-in-comment.blade\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"<\\\\\\\\?(?i:php|=)?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"}},\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"(\\\\\\\\?)>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"name\\\":\\\"meta.embedded.block.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]},{\\\"begin\\\":\\\"<\\\\\\\\?(?i:php|=)?(?![^?]*\\\\\\\\?>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"}},\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"(\\\\\\\\?)>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"name\\\":\\\"invalid.illegal.php-code-in-comment.blade.meta.embedded.block.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"<\\\\\\\\?(?i:php|=)?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"}},\\\"name\\\":\\\"invalid.illegal.php-code-in-comment.blade.meta.embedded.line.php\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"match\\\":\\\"\\\\\\\\G(\\\\\\\\s*)((\\\\\\\\?))(?=>)\\\",\\\"name\\\":\\\"meta.special.empty-tag.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"(\\\\\\\\?)(?=>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]}]},{\\\"begin\\\":\\\"(?<!@){{{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.construct.begin.blade\\\"}},\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"}}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.construct.end.blade\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"name\\\":\\\"meta.function.echo.blade\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"(?<![@{]){{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.construct.begin.blade\\\"}},\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.construct.end.blade\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"name\\\":\\\"meta.function.echo.blade\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"(?<!@){!!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.construct.begin.blade\\\"}},\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"!!}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.construct.end.blade\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"name\\\":\\\"meta.function.echo.blade\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"(@){{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"begin.bracket.round.blade\\\"},\\\"1\\\":{\\\"name\\\":\\\"variable.other.index.php\\\"}},\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"end.bracket.round.blade\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.php\\\"}},\\\"name\\\":\\\"meta.function.echo.blade\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"(?<![A-Za-z0-9_@])(@(?i:auth|break|can|cannot|case|choice|component|continue|dd|dump|each|elsecan|elsecannot|elseif|empty|error|extends|for|foreach|forelse|guest|hassection|if|include|includefirst|includeif|includeunless|includewhen|inject|isset|json|lang|once|prepend|push|section|sectionMissing|slot|stack|switch|unless|unset|while|yield|servers|task|story|finished|production|slack|method|props|env|livewire|php)[\\\\\\\\t ]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.blade\\\"},\\\"2\\\":{\\\"name\\\":\\\"begin.bracket.round.blade.php\\\"}},\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"end.bracket.round.blade.php\\\"}},\\\"name\\\":\\\"meta.directive.blade\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"(?<![A-Za-z0-9_@])(@(?i:append|default|else|endauth|endcan|endcannot|endcomponent|endempty|enderror|endfor|endforeach|endforelse|endguest|endif|endisset|endlang|endonce|endprepend|endpush|endsection|endslot|endswitch|endunless|endwhile|overwrite|parent|show|stop|endtask|endstory|endfinished|endproduction|endenv)[\\\\\\\\t ]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.blade\\\"},\\\"2\\\":{\\\"name\\\":\\\"begin.bracket.round.blade.php\\\"}},\\\"contentName\\\":\\\"comment.blade\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"end.bracket.round.blade.php\\\"}},\\\"name\\\":\\\"meta.directive.blade\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#balance_brackets\\\"}]},{\\\"match\\\":\\\"(?<![A-Za-z0-9_@])@(?:append|break|continue|csrf|default|each|else|overwrite|parent|sectionMissing|show|stack|stop|livewireStyles|livewireScripts)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.blade\\\"},{\\\"match\\\":\\\"(?<![A-Za-z0-9_@])@(end)?(?i:auth|can|cannot|component|empty|error|for|foreach|forelse|guest|if|isset|lang|prepend|push|section|slot|switch|unless|verbatim|while|task|story|finished|production|env|once)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.blade\\\"},{\\\"begin\\\":\\\"(?<![A-Za-z0-9_@])@(?i:php|setup)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"}},\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"(?<![A-Za-z0-9_@])(?=@(?i:endphp|endsetup)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"}},\\\"name\\\":\\\"meta.embedded.block.blade\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"(?<![A-Za-z0-9_@])(@(?i:endphp|endsetup)[\\\\\\\\t ]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"begin.bracket.round.blade.php\\\"}},\\\"contentName\\\":\\\"comment.blade\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"end.bracket.round.blade.php\\\"}},\\\"name\\\":\\\"meta.directive.blade\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#balance_brackets\\\"}]},{\\\"match\\\":\\\"(?<![A-Za-z0-9_@])@(?:(?i)endphp|endsetup)\\\\\\\\b\\\",\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},{\\\"begin\\\":\\\"(?<![A-Za-z0-9_@])(@\\\\\\\\w+(?:::w+)?[\\\\\\\\t ]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.blade\\\"},\\\"2\\\":{\\\"name\\\":\\\"begin.bracket.round.blade.php\\\"}},\\\"contentName\\\":\\\"source.php\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"end.bracket.round.blade.php\\\"}},\\\"name\\\":\\\"meta.directive.custom.blade\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"match\\\":\\\"(?<![A-Za-z0-9_@])@\\\\\\\\w+(?:::w+)?\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.blade\\\"}]},\\\"class-builtin\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(\\\\\\\\\\\\\\\\)?\\\\\\\\b\\\\n((APC|Append)Iterator|Array(Access|Iterator|Object)\\\\n|Bad(Function|Method)CallException\\\\n|(Caching|CallbackFilter)Iterator|Collator|Collectable|Cond|Countable|CURLFile\\\\n|Date(Interval|Period|Time(Interface|Immutable|Zone)?)?|Directory(Iterator)?|DomainException\\\\n|DOM(Attr|CdataSection|CharacterData|Comment|Document(Fragment)?|Element|EntityReference\\\\n |Implementation|NamedNodeMap|Node(list)?|ProcessingInstruction|Text|XPath)\\\\n|(Error)?Exception|EmptyIterator\\\\n|finfo\\\\n|Ev(Check|Child|Embed|Fork|Idle|Io|Loop|Periodic|Prepare|Signal|Stat|Timer|Watcher)?\\\\n|Event(Base|Buffer(Event)?|SslContext|Http(Request|Connection)?|Config|DnsBase|Util|Listener)?\\\\n|FANNConnection|(Filter|Filesystem)Iterator\\\\n|Gender\\\\\\\\\\\\\\\\Gender|GlobIterator|Gmagick(Draw|Pixel)?\\\\n|Haru(Annotation|Destination|Doc|Encoder|Font|Image|Outline|Page)\\\\n|Http((Inflate|Deflate)?Stream|Message|Request(Pool)?|Response|QueryString)\\\\n|HRTime\\\\\\\\\\\\\\\\(PerformanceCounter|StopWatch)\\\\n|Intl(Calendar|((CodePoint|RuleBased)?Break|Parts)?Iterator|DateFormatter|TimeZone)\\\\n|Imagick(Draw|Pixel(Iterator)?)?\\\\n|InfiniteIterator|InvalidArgumentException|Iterator(Aggregate|Iterator)?\\\\n|JsonSerializable\\\\n|KTaglib_(MPEG_(File|AudioProperties)|Tag|ID3v2_(Tag|(AttachedPicture)?Frame))\\\\n|Lapack|(Length|Locale|Logic)Exception|LimitIterator|Lua(Closure)?\\\\n|Mongo(BinData|Client|Code|Collection|CommandCursor|Cursor(Exception)?|Date|DB(Ref)?|DeleteBatch\\\\n |Grid(FS(Cursor|File)?)|Id|InsertBatch|Int(32|64)|Log|Pool|Regex|ResultException|Timestamp\\\\n |UpdateBatch|Write(Batch|ConcernException))?\\\\n|Memcache(d)?|MessageFormatter|MultipleIterator|Mutex\\\\n|mysqli(_(driver|stmt|warning|result))?\\\\n|MysqlndUh(Connection|PreparedStatement)\\\\n|NoRewindIterator|Normalizer|NumberFormatter\\\\n|OCI-(Collection|Lob)|OuterIterator|(OutOf(Bounds|Range)|Overflow)Exception\\\\n|ParentIterator|PDO(Statement)?|Phar(Data|FileInfo)?|php_user_filter|Pool\\\\n|QuickHash(Int(Set|StringHash)|StringIntHash)\\\\n|Recursive(Array|Caching|Directory|Fallback|Filter|Iterator|Regex|Tree)?Iterator\\\\n|Reflection(Class|Function(Abstract)?|Method|Object|Parameter|Property|(Zend)?Extension)?\\\\n|RangeException|Reflector|RegexIterator|ResourceBundle|RuntimeException|RRD(Creator|Graph|Updater)\\\\n|SAM(Connection|Message)|SCA(_(SoapProxy|LocalProxy))?\\\\n|SDO_(DAS_(ChangeSummary|Data(Factory|Object)|Relational|Setting|XML(_Document)?)\\\\n |Data(Factory|Object)|Exception|List|Model_(Property|ReflectionDataObject|Type)|Sequence)\\\\n|SeekableIterator|Serializable|SessionHandler(Interface)?|SimpleXML(Iterator|Element)|SNMP\\\\n|Soap(Client|Fault|Header|Param|Server|Var)\\\\n|SphinxClient|Spoofchecker\\\\n|Spl(DoublyLinkedList|Enum|File(Info|Object)|FixedArray|(Max|Min)?Heap|Observer|ObjectStorage\\\\n |(Priority)?Queue|Stack|Subject|Type|TempFileObject)\\\\n|SQLite(3(Result|Stmt)?|Database|Result|Unbuffered)\\\\n|stdClass|streamWrapper|SVM(Model)?|Swish(Result(s)?|Search)?|Sync(Event|Mutex|ReaderWriter|Semaphore)\\\\n|Thread(ed)?|tidy(Node)?|TokyoTyrant(Table|Iterator|Query)?|Transliterator|Traversable\\\\n|UConverter|(Underflow|UnexpectedValue)Exception\\\\n|V8Js(Exception)?|Varnish(Admin|Log|Stat)\\\\n|Worker|Weak(Map|Ref)\\\\n|XML(Diff\\\\\\\\\\\\\\\\(Base|DOM|File|Memory)|Reader|Writer)|XsltProcessor\\\\n|Yaf_(Route_(Interface|Map|Regex|Rewrite|Simple|Supervar)\\\\n |Action_Abstract|Application|Config_(Simple|Ini|Abstract)|Controller_Abstract\\\\n |Dispatcher|Exception|Loader|Plugin_Abstract|Registry|Request_(Abstract|Simple|Http)\\\\n |Response_Abstract|Router|Session|View_(Simple|Interface))\\\\n|Yar_(Client(_Exception)?|Concurrent_Client|Server(_Exception)?)\\\\n|ZipArchive|ZMQ(Context|Device|Poll|Socket)?)\\\\n\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.builtin.php\\\"}]},\\\"class-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\\\\\\\\\?[a-z_0-9]+\\\\\\\\\\\\\\\\)\\\",\\\"end\\\":\\\"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},{\\\"include\\\":\\\"#class-builtin\\\"},{\\\"begin\\\":\\\"(?=[\\\\\\\\\\\\\\\\a-zA-Z_])\\\",\\\"end\\\":\\\"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"name\\\":\\\"comment.block.documentation.phpdoc.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#php_doc\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.php\\\"},{\\\"begin\\\":\\\"(^\\\\\\\\s+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.php\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"\\\\\\\\n|(?=\\\\\\\\?>)\\\",\\\"name\\\":\\\"comment.line.double-slash.php\\\"}]},{\\\"begin\\\":\\\"(^\\\\\\\\s+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.php\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"\\\\\\\\n|(?=\\\\\\\\?>)\\\",\\\"name\\\":\\\"comment.line.number-sign.php\\\"}]}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(TRUE|FALSE|NULL|__(FILE|DIR|FUNCTION|CLASS|METHOD|LINE|NAMESPACE)__|ON|OFF|YES|NO|NL|BR|TAB)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\b(DEFAULT_INCLUDE_PATH|EAR_(INSTALL|EXTENSION)_DIR|E_(ALL|COMPILE_(ERROR|WARNING)|CORE_(ERROR|WARNING)|DEPRECATED|ERROR|NOTICE|PARSE|RECOVERABLE_ERROR|STRICT|USER_(DEPRECATED|ERROR|NOTICE|WARNING)|WARNING)|PHP_(ROUND_HALF_(DOWN|EVEN|ODD|UP)|(MAJOR|MINOR|RELEASE)_VERSION|MAXPATHLEN|BINDIR|SHLIB_SUFFIX|SYSCONFDIR|SAPI|CONFIG_FILE_(PATH|SCAN_DIR)|INT_(MAX|SIZE)|ZTS|OS|OUTPUT_HANDLER_(START|CONT|END)|DEBUG|DATADIR|URL_(SCHEME|HOST|USER|PORT|PASS|PATH|QUERY|FRAGMENT)|PREFIX|EXTRA_VERSION|EXTENSION_DIR|EOL|VERSION(_ID)?|WINDOWS_(NT_(SERVER|DOMAIN_CONTROLLER|WORKSTATION)|VERSION_(MAJOR|MINOR)|BUILD|SUITEMASK|SP_(MAJOR|MINOR)|PRODUCTTYPE|PLATFORM)|LIBDIR|LOCALSTATEDIR)|STD(ERR|IN|OUT)|ZEND_(DEBUG_BUILD|THREAD_SAFE))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.core.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\b(__COMPILER_HALT_OFFSET__|AB(MON_(1|2|3|4|5|6|7|8|9|10|11|12)|DAY[1-7])|AM_STR|ASSERT_(ACTIVE|BAIL|CALLBACK_QUIET_EVAL|WARNING)|ALT_DIGITS|CASE_(UPPER|LOWER)|CHAR_MAX|CONNECTION_(ABORTED|NORMAL|TIMEOUT)|CODESET|COUNT_(NORMAL|RECURSIVE)|CREDITS_(ALL|DOCS|FULLPAGE|GENERAL|GROUP|MODULES|QA|SAPI)|CRYPT_(BLOWFISH|EXT_DES|MD5|SHA(256|512)|SALT_LENGTH|STD_DES)|CURRENCY_SYMBOL|D_(T_)?FMT|DATE_(ATOM|COOKIE|ISO8601|RFC(822|850|1036|1123|2822|3339)|RSS|W3C)|DAY_[1-7]|DECIMAL_POINT|DIRECTORY_SEPARATOR|ENT_(COMPAT|IGNORE|(NO)?QUOTES)|EXTR_(IF_EXISTS|OVERWRITE|PREFIX_(ALL|IF_EXISTS|INVALID|SAME)|REFS|SKIP)|ERA(_(D_(T_)?FMT)|T_FMT|YEAR)?|FRAC_DIGITS|GROUPING|HASH_HMAC|HTML_(ENTITIES|SPECIALCHARS)|INF|INFO_(ALL|CREDITS|CONFIGURATION|ENVIRONMENT|GENERAL|LICENSEMODULES|VARIABLES)|INI_(ALL|CANNER_(NORMAL|RAW)|PERDIR|SYSTEM|USER)|INT_(CURR_SYMBOL|FRAC_DIGITS)|LC_(ALL|COLLATE|CTYPE|MESSAGES|MONETARY|NUMERIC|TIME)|LOCK_(EX|NB|SH|UN)|LOG_(ALERT|AUTH(PRIV)?|CRIT|CRON|CONS|DAEMON|DEBUG|EMERG|ERR|INFO|LOCAL[1-7]|LPR|KERN|MAIL|NEWS|NODELAY|NOTICE|NOWAIT|ODELAY|PID|PERROR|WARNING|SYSLOG|UCP|USER)|M_(1_PI|SQRT(1_2|2|3|PI)|2_(SQRT)?PI|PI(_(2|4))?|E(ULER)?|LN(10|2|PI)|LOG(10|2)E)|MON_(1|2|3|4|5|6|7|8|9|10|11|12|DECIMAL_POINT|GROUPING|THOUSANDS_SEP)|N_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|NAN|NEGATIVE_SIGN|NO(EXPR|STR)|P_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|PM_STR|POSITIVE_SIGN|PATH(_SEPARATOR|INFO_(EXTENSION|(BASE|DIR|FILE)NAME))|RADIXCHAR|SEEK_(CUR|END|SET)|SORT_(ASC|DESC|LOCALE_STRING|REGULAR|STRING)|STR_PAD_(BOTH|LEFT|RIGHT)|T_FMT(_AMPM)?|THOUSEP|THOUSANDS_SEP|UPLOAD_ERR_(CANT_WRITE|EXTENSION|(FORM|INI)_SIZE|NO_(FILE|TMP_DIR)|OK|PARTIAL)|YES(EXPR|STR))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.std.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\b(GLOB_(MARK|BRACE|NO(SORT|CHECK|ESCAPE)|ONLYDIR|ERR|AVAILABLE_FLAGS)|XML_(SAX_IMPL|(DTD|DOCUMENT(_(FRAG|TYPE))?|HTML_DOCUMENT|NOTATION|NAMESPACE_DECL|PI|COMMENT|DATA_SECTION|TEXT)_NODE|OPTION_(SKIP_(TAGSTART|WHITE)|CASE_FOLDING|TARGET_ENCODING)|ERROR_((BAD_CHAR|(ATTRIBUTE_EXTERNAL|BINARY|PARAM|RECURSIVE)_ENTITY)_REF|MISPLACED_XML_PI|SYNTAX|NONE|NO_(MEMORY|ELEMENTS)|TAG_MISMATCH|INCORRECT_ENCODING|INVALID_TOKEN|DUPLICATE_ATTRIBUTE|UNCLOSED_(CDATA_SECTION|TOKEN)|UNDEFINED_ENTITY|UNKNOWN_ENCODING|JUNK_AFTER_DOC_ELEMENT|PARTIAL_CHAR|EXTERNAL_ENTITY_HANDLING|ASYNC_ENTITY)|ENTITY_(((REF|DECL)_)?NODE)|ELEMENT(_DECL)?_NODE|LOCAL_NAMESPACE|ATTRIBUTE_(NMTOKEN(S)?|NOTATION|NODE)|CDATA|ID(REF(S)?)?|DECL_NODE|ENTITY|ENUMERATION)|MHASH_(RIPEMD(128|160|256|320)|GOST|MD(2|4|5)|SHA(1|224|256|384|512)|SNEFRU256|HAVAL(128|160|192|224|256)|CRC23(B)?|TIGER(128|160)?|WHIRLPOOL|ADLER32)|MYSQL_(BOTH|NUM|CLIENT_(SSL|COMPRESS|IGNORE_SPACE|INTERACTIVE|ASSOC))|MYSQLI_(REPORT_(STRICT|INDEX|OFF|ERROR|ALL)|REFRESH_(GRANT|MASTER|BACKUP_LOG|STATUS|SLAVE|HOSTS|THREADS|TABLES|LOG)|READ_DEFAULT_(FILE|GROUP)|(GROUP|MULTIPLE_KEY|BINARY|BLOB)_FLAG|BOTH|STMT_ATTR_(CURSOR_TYPE|UPDATE_MAX_LENGTH|PREFETCH_ROWS)|STORE_RESULT|SERVER_QUERY_(NO_((GOOD_)?INDEX_USED)|WAS_SLOW)|SET_(CHARSET_NAME|FLAG)|NO_(DEFAULT_VALUE_FLAG|DATA)|NOT_NULL_FLAG|NUM(_FLAG)?|CURSOR_TYPE_(READ_ONLY|SCROLLABLE|NO_CURSOR|FOR_UPDATE)|CLIENT_(SSL|NO_SCHEMA|COMPRESS|IGNORE_SPACE|INTERACTIVE|FOUND_ROWS)|TYPE_(GEOMETRY|((MEDIUM|LONG|TINY)_)?BLOB|BIT|SHORT|STRING|SET|YEAR|NULL|NEWDECIMAL|NEWDATE|CHAR|TIME(STAMP)?|TINY|INT24|INTERVAL|DOUBLE|DECIMAL|DATE(TIME)?|ENUM|VAR_STRING|FLOAT|LONG(LONG)?)|TIME_STAMP_FLAG|INIT_COMMAND|ZEROFILL_FLAG|ON_UPDATE_NOW_FLAG|OPT_(NET_((CMD|READ)_BUFFER_SIZE)|CONNECT_TIMEOUT|INT_AND_FLOAT_NATIVE|LOCAL_INFILE)|DEBUG_TRACE_ENABLED|DATA_TRUNCATED|USE_RESULT|(ENUM|(PART|PRI|UNIQUE)_KEY|UNSIGNED)_FLAG|ASSOC|ASYNC|AUTO_INCREMENT_FLAG)|MCRYPT_(RC(2|6)|RIJNDAEL_(128|192|256)|RAND|GOST|XTEA|MODE_(STREAM|NOFB|CBC|CFB|OFB|ECB)|MARS|BLOWFISH(_COMPAT)?|SERPENT|SKIPJACK|SAFER(64|128|PLUS)|CRYPT|CAST_(128|256)|TRIPLEDES|THREEWAY|TWOFISH|IDEA|(3)?DES|DECRYPT|DEV_(U)?RANDOM|PANAMA|ENCRYPT|ENIGNA|WAKE|LOKI97|ARCFOUR(_IV)?)|STREAM_(REPORT_ERRORS|MUST_SEEK|MKDIR_RECURSIVE|BUFFER_(NONE|FULL|LINE)|SHUT_(RD)?WR|SOCK_(RDM|RAW|STREAM|SEQPACKET|DGRAM)|SERVER_(BIND|LISTEN)|NOTIFY_(REDIRECTED|RESOLVE|MIME_TYPE_IS|SEVERITY_(INFO|ERR|WARN)|COMPLETED|CONNECT|PROGRESS|FILE_SIZE_IS|FAILURE|AUTH_(REQUIRED|RESULT))|CRYPTO_METHOD_((SSLv2(3)?|SSLv3|TLS)_(CLIENT|SERVER))|CLIENT_((ASYNC_)?CONNECT|PERSISTENT)|CAST_(AS_STREAM|FOR_SELECT)|(IGNORE|IS)_URL|IPPROTO_(RAW|TCP|ICMP|IP|UDP)|OOB|OPTION_(READ_(BUFFER|TIMEOUT)|BLOCKING|WRITE_BUFFER)|URL_STAT_(LINK|QUIET)|USE_PATH|PEEK|PF_(INET(6)?|UNIX)|ENFORCE_SAFE_MODE|FILTER_(ALL|READ|WRITE))|SUNFUNCS_RET_(DOUBLE|STRING|TIMESTAMP)|SQLITE_(READONLY|ROW|MISMATCH|MISUSE|BOTH|BUSY|SCHEMA|NOMEM|NOTFOUND|NOTADB|NOLFS|NUM|CORRUPT|CONSTRAINT|CANTOPEN|TOOBIG|INTERRUPT|INTERNAL|IOERR|OK|DONE|PROTOCOL|PERM|ERROR|EMPTY|FORMAT|FULL|LOCKED|ABORT|ASSOC|AUTH)|SQLITE3_(BOTH|BLOB|NUM|NULL|TEXT|INTEGER|OPEN_(READ(ONLY|WRITE)|CREATE)|FLOAT_ASSOC)|CURL(M_(BAD_((EASY)?HANDLE)|CALL_MULTI_PERFORM|INTERNAL_ERROR|OUT_OF_MEMORY|OK)|MSG_DONE|SSH_AUTH_(HOST|NONE|DEFAULT|PUBLICKEY|PASSWORD|KEYBOARD)|CLOSEPOLICY_(SLOWEST|CALLBACK|OLDEST|LEAST_(RECENTLY_USED|TRAFFIC)|INFO_(REDIRECT_(COUNT|TIME)|REQUEST_SIZE|SSL_VERIFYRESULT|STARTTRANSFER_TIME|(SIZE|SPEED)_(DOWNLOAD|UPLOAD)|HTTP_CODE|HEADER_(OUT|SIZE)|NAMELOOKUP_TIME|CONNECT_TIME|CONTENT_(TYPE|LENGTH_(DOWNLOAD|UPLOAD))|CERTINFO|TOTAL_TIME|PRIVATE|PRETRANSFER_TIME|EFFECTIVE_URL|FILETIME)|OPT_(RESUME_FROM|RETURNTRANSFER|REDIR_PROTOCOLS|REFERER|READ(DATA|FUNCTION)|RANGE|RANDOM_FILE|MAX(CONNECTS|REDIRS)|BINARYTRANSFER|BUFFERSIZE|SSH_(HOST_PUBLIC_KEY_MD5|(PRIVATE|PUBLIC)_KEYFILE)|AUTH_TYPES)|SSL(CERT(TYPE|PASSWD)?|ENGINE(_DEFAULT)?|VERSION|KEY(TYPE|PASSWD)?)|SSL_(CIPHER_LIST|VERIFY(HOST|PEER))|STDERR|HTTP(GET|HEADER|200ALIASES|_VERSION|PROXYTUNNEL|AUTH)|HEADER(FUNCTION)?|NO(BODY|SIGNAL|PROGRESS)|NETRC|CRLF|CONNECTTIMEOUT(_MS)?|COOKIE(SESSION|JAR|FILE)?|CUSTOMREQUEST|CERTINFO|CLOSEPOLICY|CA(INFO|PATH)|TRANSFERTEXT|TCP_NODELAY|TIME(CONDITION|OUT(_MS)?|VALUE)|INTERFACE|INFILE(SIZE)?|IPRESOLVE|DNS_(CACHE_TIMEOUT|USE_GLOBAL_CACHE)|URL|USER(AGENT|PWD)|UNRESTRICTED_AUTH|UPLOAD|PRIVATE|PROGRESSFUNCTION|PROXY(TYPE|USERPWD|PORT|AUTH)?|PROTOCOLS|PORT|POST(REDIR|QUOTE|FIELDS)?|PUT|EGDSOCKET|ENCODING|VERBOSE|KRB4LEVEL|KEYPASSWD|QUOTE|FRESH_CONNECT|FTP(APPEND|LISTONLY|PORT|SSLAUTH)|FTP_(SSL|SKIP_PASV_IP|CREATE_MISSING_DIRS|USE_EP(RT|SV)|FILEMETHOD)|FILE(TIME)?|FORBID_REUSE|FOLLOWLOCATION|FAILONERROR|WRITE(FUNCTION|HEADER)|LOW_SPEED_(LIMIT|TIME)|AUTOREFERER)|PROXY_(HTTP|SOCKS(4|5))|PROTO_(SCP|SFTP|HTTP(S)?|TELNET|TFTP|DICT|FTP(S)?|FILE|LDAP(S)?|ALL)|E_((RECV|READ)_ERROR|GOT_NOTHING|MALFORMAT_USER|BAD_(CONTENT_ENCODING|CALLING_ORDER|PASSWORD_ENTERED|FUNCTION_ARGUMENT)|SSH|SSL_(CIPHER|CONNECT_ERROR|CERTPROBLEM|CACERT|PEER_CERTIFICATE|ENGINE_(NOTFOUND|SETFAILED))|SHARE_IN_USE|SEND_ERROR|HTTP_(RANGE_ERROR|NOT_FOUND|PORT_FAILED|POST_ERROR)|COULDNT_(RESOLVE_(HOST|PROXY)|CONNECT)|TOO_MANY_REDIRECTS|TELNET_OPTION_SYNTAX|OBSOLETE|OUT_OF_MEMORY|OPERATION|TIMEOUTED|OK|URL_MALFORMAT(_USER)?|UNSUPPORTED_PROTOCOL|UNKNOWN_TELNET_OPTION|PARTIAL_FILE|FTP_(BAD_DOWNLOAD_RESUME|SSL_FAILED|COULDNT_(RETR_FILE|GET_SIZE|STOR_FILE|SET_(BINARY|ASCII)|USE_REST)|CANT_(GET_HOST|RECONNECT)|USER_PASSWORD_INCORRECT|PORT_FAILED|QUOTE_ERROR|WRITE_ERROR|WEIRD_((PASS|PASV|SERVER|USER)_REPLY|227_FORMAT)|ACCESS_DENIED)|FILESIZE_EXCEEDED|FILE_COULDNT_READ_FILE|FUNCTION_NOT_FOUND|FAILED_INIT|WRITE_ERROR|LIBRARY_NOT_FOUND|LDAP_(SEARCH_FAILED|CANNOT_BIND|INVALID_URL)|ABORTED_BY_CALLBACK)|VERSION_NOW|FTP(METHOD_(MULTI|SINGLE|NO)CWD|SSL_(ALL|NONE|CONTROL|TRY)|AUTH_(DEFAULT|SSL|TLS))|AUTH_(ANY(SAFE)?|BASIC|DIGEST|GSSNEGOTIATE|NTLM))|CURL_(HTTP_VERSION_(1_(0|1)|NONE)|NETRC_(REQUIRED|IGNORED|OPTIONAL)|TIMECOND_(IF(UN)?MODSINCE|LASTMOD)|IPRESOLVE_(V(4|6)|WHATEVER)|VERSION_(SSL|IPV6|KERBEROS4|LIBZ))|IMAGETYPE_(GIF|XBM|BMP|SWF|COUNT|TIFF_(MM|II)|ICO|IFF|UNKNOWN|JB2|JPX|JP2|JPC|JPEG(2000)?|PSD|PNG|WBMP)|INPUT_(REQUEST|GET|SERVER|SESSION|COOKIE|POST|ENV)|ICONV_(MIME_DECODE_(STRICT|CONTINUE_ON_ERROR)|IMPL|VERSION)|DNS_(MX|SRV|SOA|HINFO|NS|NAPTR|CNAME|TXT|PTR|ANY|ALL|AAAA|A(6)?)|DOM(STRING_SIZE_ERR)|DOM_((SYNTAX|HIERARCHY_REQUEST|NO_(MODIFICATION_ALLOWED|DATA_ALLOWED)|NOT_(FOUND|SUPPORTED)|NAMESPACE|INDEX_SIZE|USE_ATTRIBUTE|VALID_(MODIFICATION|STATE|CHARACTER|ACCESS)|PHP|VALIDATION|WRONG_DOCUMENT)_ERR)|JSON_(HEX_(TAG|QUOT|AMP|APOS)|NUMERIC_CHECK|ERROR_(SYNTAX|STATE_MISMATCH|NONE|CTRL_CHAR|DEPTH|UTF8)|FORCE_OBJECT)|PREG_((D_UTF8(_OFFSET)?|NO|INTERNAL|(BACKTRACK|RECURSION)_LIMIT)_ERROR|GREP_INVERT|SPLIT_(NO_EMPTY|(DELIM|OFFSET)_CAPTURE)|SET_ORDER|OFFSET_CAPTURE|PATTERN_ORDER)|PSFS_(PASS_ON|ERR_FATAL|FEED_ME|FLAG_(NORMAL|FLUSH_(CLOSE|INC)))|PCRE_VERSION|POSIX_((F|R|W|X)_OK|S_IF(REG|BLK|SOCK|CHR|IFO))|FNM_(NOESCAPE|CASEFOLD|PERIOD|PATHNAME)|FILTER_(REQUIRE_(SCALAR|ARRAY)|NULL_ON_FAILURE|CALLBACK|DEFAULT|UNSAFE_RAW|SANITIZE_(MAGIC_QUOTES|STRING|STRIPPED|SPECIAL_CHARS|NUMBER_(INT|FLOAT)|URL|EMAIL|ENCODED|FULL_SPCIAL_CHARS)|VALIDATE_(REGEXP|BOOLEAN|INT|IP|URL|EMAIL|FLOAT)|FORCE_ARRAY|FLAG_(SCHEME_REQUIRED|STRIP_(BACKTICK|HIGH|LOW)|HOST_REQUIRED|NONE|NO_(RES|PRIV)_RANGE|ENCODE_QUOTES|IPV(4|6)|PATH_REQUIRED|EMPTY_STRING_NULL|ENCODE_(HIGH|LOW|AMP)|QUERY_REQUIRED|ALLOW_(SCIENTIFIC|HEX|THOUSAND|OCTAL|FRACTION)))|FILE_(BINARY|SKIP_EMPTY_LINES|NO_DEFAULT_CONTEXT|TEXT|IGNORE_NEW_LINES|USE_INCLUDE_PATH|APPEND)|FILEINFO_(RAW|MIME(_(ENCODING|TYPE))?|SYMLINK|NONE|CONTINUE|DEVICES|PRESERVE_ATIME)|FORCE_(DEFLATE|GZIP)|LIBXML_(XINCLUDE|NSCLEAN|NO(XMLDECL|BLANKS|NET|CDATA|ERROR|EMPTYTAG|ENT|WARNING)|COMPACT|DTD(VALID|LOAD|ATTR)|((DOTTED|LOADED)_)?VERSION|PARSEHUGE|ERR_(NONE|ERROR|FATAL|WARNING)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.ext.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\b(T_(RETURN|REQUIRE(_ONCE)?|GOTO|GLOBAL|(MINUS|MOD|MUL|XOR)_EQUAL|METHOD_C|ML_COMMENT|BREAK|BOOL_CAST|BOOLEAN_(AND|OR)|BAD_CHARACTER|SR(_EQUAL)?|STRING(_CAST|VARNAME)?|START_HEREDOC|STATIC|SWITCH|SL(_EQUAL)?|HALT_COMPILER|NS_(C|SEPARATOR)|NUM_STRING|NEW|NAMESPACE|CHARACTER|COMMENT|CONSTANT(_ENCAPSED_STRING)?|CONCAT_EQUAL|CONTINUE|CURLY_OPEN|CLOSE_TAG|CLONE|CLASS(_C)?|CASE|CATCH|TRY|THROW|IMPLEMENTS|ISSET|IS_((GREATER|SMALLER)_OR_EQUAL|(NOT_)?(IDENTICAL|EQUAL))|INSTANCEOF|INCLUDE(_ONCE)?|INC|INT_CAST|INTERFACE|INLINE_HTML|IF|OR_EQUAL|OBJECT_(CAST|OPERATOR)|OPEN_TAG(_WITH_ECHO)?|OLD_FUNCTION|DNUMBER|DIR|DIV_EQUAL|DOC_COMMENT|DOUBLE_(ARROW|CAST|COLON)|DOLLAR_OPEN_CURLY_BRACES|DO|DEC|DECLARE|DEFAULT|USE|UNSET(_CAST)?|PRINT|PRIVATE|PROTECTED|PUBLIC|PLUS_EQUAL|PAAMAYIM_NEKUDOTAYIM|EXTENDS|EXIT|EMPTY|ENCAPSED_AND_WHITESPACE|END(SWITCH|IF|DECLARE|FOR(EACH)?|WHILE)|END_HEREDOC|ECHO|EVAL|ELSE(IF)?|VAR(IABLE)?|FINAL|FILE|FOR(EACH)?|FUNC_C|FUNCTION|WHITESPACE|WHILE|LNUMBER|LIST|LINE|LOGICAL_(AND|OR|XOR)|ARRAY_(CAST)?|ABSTRACT|AS|AND_EQUAL))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.parser-token.php\\\"},{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\",\\\"name\\\":\\\"constant.other.php\\\"}]},\\\"function-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?xi)\\\\n(\\\\n \\\\\\\\\\\\\\\\?\\\\\\\\b # Optional root namespace\\\\n [a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]* # First namespace\\\\n (?:\\\\\\\\\\\\\\\\[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)+ # Additional namespaces\\\\n)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"},{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\",\\\"name\\\":\\\"entity.name.function.php\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.function-call.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"(?i)(\\\\\\\\\\\\\\\\)?\\\\\\\\b([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support\\\"},{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\",\\\"name\\\":\\\"entity.name.function.php\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.function-call.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"match\\\":\\\"(?i)\\\\\\\\b(print|echo)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.construct.output.php\\\"}]},\\\"function-parameters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"},{\\\"begin\\\":\\\"(?xi)\\\\n(array) # Typehint\\\\n\\\\\\\\s+((&)?\\\\\\\\s*(\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*) # Variable name with possible reference\\\\n\\\\\\\\s*(=)\\\\\\\\s*(array)\\\\\\\\s*(\\\\\\\\() # Default value\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.function.construct.php\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.bracket.round.php\\\"}},\\\"contentName\\\":\\\"meta.array.php\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.function.parameter.array.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.language.php\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.php\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-default-types\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"punctuation.section.array.end.php\\\"},\\\"10\\\":{\\\"name\\\":\\\"invalid.illegal.non-null-typehinted.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(array|callable) # Typehint\\\\n\\\\\\\\s+((&)?\\\\\\\\s*(\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*) # Variable name with possible reference\\\\n(?: # Optional default value\\\\n \\\\\\\\s*(=)\\\\\\\\s*\\\\n (?:\\\\n (null)\\\\n |\\\\n (\\\\\\\\[)((?>[^\\\\\\\\[\\\\\\\\]]+|\\\\\\\\[\\\\\\\\g<8>\\\\\\\\])*)(\\\\\\\\])\\\\n |((?:\\\\\\\\S*?\\\\\\\\(\\\\\\\\))|(?:\\\\\\\\S*?))\\\\n )\\\\n)?\\\\n\\\\\\\\s*(?=,|\\\\\\\\)|/[/*]|\\\\\\\\#|$) # A closing parentheses (end of argument list) or a comma or a comment\\\",\\\"name\\\":\\\"meta.function.parameter.array.php\\\"},{\\\"begin\\\":\\\"(?xi)\\\\n(\\\\\\\\\\\\\\\\?(?:[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\\\\\\\\\\\\\\)*) # Optional namespace\\\\n([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*) # Typehinted class name\\\\n\\\\\\\\s+((&)?\\\\\\\\s*(\\\\\\\\.\\\\\\\\.\\\\\\\\.)?(\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*) # Variable name with possible reference\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.namespace.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\",\\\"name\\\":\\\"storage.type.php\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.type.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.variadic.php\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\)|/[/*]|\\\\\\\\#)\\\",\\\"name\\\":\\\"meta.function.parameter.typehinted.php\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.php\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\)|/[/*]|\\\\\\\\#)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.variadic.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n((&)?\\\\\\\\s*(\\\\\\\\.\\\\\\\\.\\\\\\\\.)?(\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*) # Variable name with possible reference\\\\n\\\\\\\\s*(?=,|\\\\\\\\)|/[/*]|\\\\\\\\#|$) # A closing parentheses (end of argument list) or a comma or a comment\\\",\\\"name\\\":\\\"meta.function.parameter.no-default.php\\\"},{\\\"begin\\\":\\\"(?xi)\\\\n((&)?\\\\\\\\s*(\\\\\\\\.\\\\\\\\.\\\\\\\\.)?(\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*) # Variable name with possible reference\\\\n\\\\\\\\s*(=)\\\\\\\\s*\\\\n(?:(\\\\\\\\[)((?>[^\\\\\\\\[\\\\\\\\]]+|\\\\\\\\[\\\\\\\\g<6>\\\\\\\\])*)(\\\\\\\\]))? # Optional default type\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.variadic.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.php\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-default-types\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"punctuation.section.array.end.php\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\)|/[/*]|\\\\\\\\#)\\\",\\\"name\\\":\\\"meta.function.parameter.default.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-default-types\\\"}]}]},\\\"heredoc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=<<<\\\\\\\\s*(\\\\\\\"?)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(\\\\\\\\1)\\\\\\\\s*$)\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"string.unquoted.heredoc.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc_interior\\\"}]},{\\\"begin\\\":\\\"(?=<<<\\\\\\\\s*'([a-zA-Z_]+[a-zA-Z0-9_]*)'\\\\\\\\s*$)\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"string.unquoted.nowdoc.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nowdoc_interior\\\"}]}]},\\\"heredoc_interior\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(HTML)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"text.html\\\",\\\"end\\\":\\\"^(\\\\\\\\3)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(XML)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"text.xml\\\",\\\"end\\\":\\\"^(\\\\\\\\3)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"text.xml\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(SQL)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.sql\\\",\\\"end\\\":\\\"^(\\\\\\\\3)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(JAVASCRIPT|JS)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"^(\\\\\\\\3)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(JSON)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.json\\\",\\\"end\\\":\\\"^(\\\\\\\\3)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"source.json\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(CSS)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"^(\\\\\\\\3)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(REGEXP?)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"string.regexp.heredoc.php\\\",\\\"end\\\":\\\"^(\\\\\\\\3)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\){1,2}[.$^\\\\\\\\[\\\\\\\\]{}]\\\",\\\"name\\\":\\\"constant.character.escape.regex.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repitition.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repitition.php\\\"}},\\\"match\\\":\\\"({)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repitition.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?\\\\\\\\])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.character-class.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\'\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"}]},{\\\"match\\\":\\\"[$^+*]\\\",\\\"name\\\":\\\"keyword.operator.regexp.php\\\"},{\\\"begin\\\":\\\"(?i)(?<=^|\\\\\\\\s)(#)\\\\\\\\s(?=[[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff},. \\\\\\\\t?!-][^\\\\\\\\x{00}-\\\\\\\\x{7f}]]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"name\\\":\\\"comment.line.number-sign.php\\\"}]},{\\\"begin\\\":\\\"(?i)(<<<)\\\\\\\\s*(\\\\\\\"?)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}]+[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(\\\\\\\\2)(\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"end\\\":\\\"^(\\\\\\\\3)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]}]},\\\"instantiation\\\":{\\\"begin\\\":\\\"(?i)(new)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.new.php\\\"}},\\\"end\\\":\\\"(?i)(?=[^a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(parent|static|self)(?![a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}])\\\",\\\"name\\\":\\\"storage.type.php\\\"},{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#variable-name\\\"}]},\\\"interpolation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-7]{1,3}\\\",\\\"name\\\":\\\"constant.character.escape.octal.php\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9A-Fa-f]{1,2}\\\",\\\"name\\\":\\\"constant.character.escape.hex.php\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u{[0-9A-Fa-f]+}\\\",\\\"name\\\":\\\"constant.character.escape.unicode.php\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[nrtvef$\\\\\\\"\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"begin\\\":\\\"{(?=\\\\\\\\$.*?})\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"include\\\":\\\"#variable-name\\\"}]},\\\"invoke-call\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\$+)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"meta.function-call.invoke.php\\\"},\\\"language\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(interface)\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\\\\\\s*(extends)?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.interface.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.interface.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.extends.php\\\"}},\\\"end\\\":\\\"(?i)((?:[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\\\\\\s*,\\\\\\\\s*)*)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)?\\\\\\\\s*(?:(?={)|$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\",\\\"name\\\":\\\"entity.other.inherited-class.php\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.classes.php\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"entity.other.inherited-class.php\\\"}},\\\"name\\\":\\\"meta.interface.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(trait)\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.trait.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.trait.php\\\"}},\\\"end\\\":\\\"(?={)\\\",\\\"name\\\":\\\"meta.trait.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.namespace.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.namespace.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}]}},\\\"match\\\":\\\"(?i)(?:^|(?<=<\\\\\\\\?php))\\\\\\\\s*(namespace)\\\\\\\\s+([a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\]+)(?=\\\\\\\\s*;)\\\",\\\"name\\\":\\\"meta.namespace.php\\\"},{\\\"begin\\\":\\\"(?i)(?:^|(?<=<\\\\\\\\?php))\\\\\\\\s*(namespace)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.namespace.php\\\"}},\\\"end\\\":\\\"(?<=})|(?=\\\\\\\\?>)\\\",\\\"name\\\":\\\"meta.namespace.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}]}},\\\"match\\\":\\\"(?i)[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\]+\\\",\\\"name\\\":\\\"entity.name.type.namespace.php\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.namespace.begin.bracket.curly.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.namespace.end.bracket.curly.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"match\\\":\\\"[^\\\\\\\\s]+\\\",\\\"name\\\":\\\"invalid.illegal.identifier.php\\\"}]},{\\\"match\\\":\\\"\\\\\\\\s+(?=use\\\\\\\\b)\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\buse\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.use.php\\\"}},\\\"end\\\":\\\"(?<=})|(?=;)\\\",\\\"name\\\":\\\"meta.use.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(const|function)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.${1:/downcase}.php\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.use.begin.bracket.curly.php\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.use.end.bracket.curly.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#scope-resolution\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.use-as.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.alias.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n\\\\\\\\b(as)\\\\n\\\\\\\\s+(final|abstract|public|private|protected|static)\\\\n\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\\n\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.use-as.php\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^(?:final|abstract|public|private|protected|static)$\\\",\\\"name\\\":\\\"storage.modifier.php\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"entity.other.alias.php\\\"}]}},\\\"match\\\":\\\"(?xi)\\\\n\\\\\\\\b(as)\\\\n\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\\n\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.use-insteadof.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.class.php\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(insteadof)\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.expression.php\\\"},{\\\"include\\\":\\\"#use-inner\\\"}]},{\\\"include\\\":\\\"#use-inner\\\"}]},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(?:(abstract|final)\\\\\\\\s+)?(class)\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.${1:/downcase}.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.class.end.bracket.curly.php\\\"}},\\\"name\\\":\\\"meta.class.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?i)(extends)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.extends.php\\\"}},\\\"contentName\\\":\\\"meta.other.inherited-class.php\\\",\\\"end\\\":\\\"(?i)(?=[^a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\\\\\\\\\?[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\\\\\\\\\\\\\\)\\\",\\\"end\\\":\\\"(?i)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)?(?=[^a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},{\\\"include\\\":\\\"#class-builtin\\\"},{\\\"include\\\":\\\"#namespace\\\"},{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\",\\\"name\\\":\\\"entity.other.inherited-class.php\\\"}]},{\\\"begin\\\":\\\"(?i)(implements)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.implements.php\\\"}},\\\"end\\\":\\\"(?i)(?=[;{])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?i)(?=[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\]+)\\\",\\\"contentName\\\":\\\"meta.other.inherited-class.php\\\",\\\"end\\\":\\\"(?i)(?:\\\\\\\\s*(?:,|(?=[^a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\\\\\\\\\s]))\\\\\\\\s*)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\\\\\\\\\?[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\\\\\\\\\\\\\\)\\\",\\\"end\\\":\\\"(?i)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)?(?=[^a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},{\\\"include\\\":\\\"#class-builtin\\\"},{\\\"include\\\":\\\"#namespace\\\"},{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\",\\\"name\\\":\\\"entity.other.inherited-class.php\\\"}]}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.class.begin.bracket.curly.php\\\"}},\\\"contentName\\\":\\\"meta.class.body.php\\\",\\\"end\\\":\\\"(?=}|\\\\\\\\?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]},{\\\"include\\\":\\\"#switch_statement\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.${1:/downcase}.php\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(break|case|continue|declare|default|die|do|else(if)?|end(declare|for(each)?|if|switch|while)|exit|for(each)?|if|return|switch|use|while|yield)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b((?:require|include)(?:_once)?)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.include.php\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|;|$|\\\\\\\\?>)\\\",\\\"name\\\":\\\"meta.include.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(catch)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.exception.catch.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.catch.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.exception.php\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\",\\\"name\\\":\\\"support.class.exception.php\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*) # Exception class\\\\n((?:\\\\\\\\s*\\\\\\\\|\\\\\\\\s*[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)*) # Optional additional exception classes\\\\n\\\\\\\\s*\\\\n((\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*) # Variable\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(catch|try|throw|exception|finally)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.exception.php\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(function)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.php\\\"}},\\\"end\\\":\\\"(?={)\\\",\\\"name\\\":\\\"meta.function.closure.php\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"}},\\\"contentName\\\":\\\"meta.function.parameters.php\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},{\\\"begin\\\":\\\"(?i)(use)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.function.use.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.php\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?i)((&)?\\\\\\\\s*(\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\\\\\\s*(?=,|\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.closure.use.php\\\"}]}]},{\\\"begin\\\":\\\"((?:(?:final|abstract|public|private|protected|static)\\\\\\\\s+)*)(function)\\\\\\\\s+(?i:(__(?:call|construct|debugInfo|destruct|get|set|isset|unset|tostring|clone|set_state|sleep|wakeup|autoload|invoke|callStatic))|([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"final|abstract|public|private|protected|static\\\",\\\"name\\\":\\\"storage.modifier.php\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.magic.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"}},\\\"contentName\\\":\\\"meta.function.parameters.php\\\",\\\"end\\\":\\\"(\\\\\\\\))(?:\\\\\\\\s*(:)\\\\\\\\s*([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.return-value.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.php\\\"}},\\\"name\\\":\\\"meta.function.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},{\\\"include\\\":\\\"#invoke-call\\\"},{\\\"include\\\":\\\"#scope-resolution\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.construct.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.bracket.round.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.bracket.round.php\\\"}},\\\"match\\\":\\\"(array)(\\\\\\\\()(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.array.empty.php\\\"},{\\\"begin\\\":\\\"(array)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.construct.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.array.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.storage-type.begin.bracket.round.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.storage-type.end.bracket.round.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\()\\\\\\\\s*(array|real|double|float|int(?:eger)?|bool(?:ean)?|string|object|binary|unset)\\\\\\\\s*(\\\\\\\\))\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(array|real|double|float|int(eger)?|bool(ean)?|string|class|var|function|interface|trait|parent|self|object)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(global|abstract|const|extends|implements|final|private|protected|public|static)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.php\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.expression.php\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.terminator.statement.php\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bclone\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.clone.php\\\"},{\\\"match\\\":\\\"\\\\\\\\.=?\\\",\\\"name\\\":\\\"keyword.operator.string.php\\\"},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.operator.key.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\=)(&)|(&)(?=[$a-z_])\\\"},{\\\"match\\\":\\\"@\\\",\\\"name\\\":\\\"keyword.operator.error-control.php\\\"},{\\\"match\\\":\\\"===|==|!==|!=|<>\\\",\\\"name\\\":\\\"keyword.operator.comparison.php\\\"},{\\\"match\\\":\\\"=|\\\\\\\\+=|\\\\\\\\-=|\\\\\\\\*=|/=|%=|&=|\\\\\\\\|=|\\\\\\\\^=|<<=|>>=\\\",\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},{\\\"match\\\":\\\"<=>|<=|>=|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.php\\\"},{\\\"match\\\":\\\"\\\\\\\\-\\\\\\\\-|\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment-decrement.php\\\"},{\\\"match\\\":\\\"\\\\\\\\-|\\\\\\\\+|\\\\\\\\*|/|%\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.php\\\"},{\\\"match\\\":\\\"(?i)(!|&&|\\\\\\\\|\\\\\\\\|)|\\\\\\\\b(and|or|xor|as)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logical.php\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"match\\\":\\\"<<|>>|~|\\\\\\\\^|&|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.php\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(instanceof)\\\\\\\\s+(?=[\\\\\\\\\\\\\\\\$a-z_])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.php\\\"}},\\\"end\\\":\\\"(?=[^\\\\\\\\\\\\\\\\$a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#variable-name\\\"}]},{\\\"include\\\":\\\"#instantiation\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.goto.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.other.php\\\"}},\\\"match\\\":\\\"(?i)(goto)\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.goto-label.php\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\\\\\\s*:(?!:)\\\"},{\\\"include\\\":\\\"#string-backtick\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"include\\\":\\\"#constants\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"}]},\\\"namespace\\\":{\\\"begin\\\":\\\"(?i)(?:(namespace)|[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)?(\\\\\\\\\\\\\\\\)(?=.*?[^a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.language.namespace.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"end\\\":\\\"(?i)(?=[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*[^a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"support.other.namespace.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}]},\\\"nowdoc_interior\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(HTML)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"text.html\\\",\\\"end\\\":\\\"^(\\\\\\\\2)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(XML)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"text.xml\\\",\\\"end\\\":\\\"^(\\\\\\\\2)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(SQL)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.sql\\\",\\\"end\\\":\\\"^(\\\\\\\\2)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sql\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(JAVASCRIPT|JS)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"^(\\\\\\\\2)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(JSON)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.json\\\",\\\"end\\\":\\\"^(\\\\\\\\2)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(CSS)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"^(\\\\\\\\2)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(REGEXP?)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"string.regexp.nowdoc.php\\\",\\\"end\\\":\\\"^(\\\\\\\\2)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\){1,2}[.$^\\\\\\\\[\\\\\\\\]{}]\\\",\\\"name\\\":\\\"constant.character.escape.regex.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repitition.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repitition.php\\\"}},\\\"match\\\":\\\"({)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repitition.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?\\\\\\\\])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.character-class.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\'\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"}]},{\\\"match\\\":\\\"[$^+*]\\\",\\\"name\\\":\\\"keyword.operator.regexp.php\\\"},{\\\"begin\\\":\\\"(?i)(?<=^|\\\\\\\\s)(#)\\\\\\\\s(?=[[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff},. \\\\\\\\t?!-][^\\\\\\\\x{00}-\\\\\\\\x{7f}]]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"name\\\":\\\"comment.line.number-sign.php\\\"}]},{\\\"begin\\\":\\\"(?i)(<<<)\\\\\\\\s*'([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}]+[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)'(\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"end\\\":\\\"^(\\\\\\\\2)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}}}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"0[xX][0-9a-fA-F]+\\\",\\\"name\\\":\\\"constant.numeric.hex.php\\\"},{\\\"match\\\":\\\"0[bB][01]+\\\",\\\"name\\\":\\\"constant.numeric.binary.php\\\"},{\\\"match\\\":\\\"0[0-7]+\\\",\\\"name\\\":\\\"constant.numeric.octal.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.php\\\"}},\\\"match\\\":\\\"(?:[0-9]*(\\\\\\\\.)[0-9]+(?:[eE][+-]?[0-9]+)?|[0-9]+(\\\\\\\\.)[0-9]*(?:[eE][+-]?[0-9]+)?|[0-9]+[eE][+-]?[0-9]+)\\\",\\\"name\\\":\\\"constant.numeric.decimal.php\\\"},{\\\"match\\\":\\\"0|[1-9][0-9]*\\\",\\\"name\\\":\\\"constant.numeric.decimal.php\\\"}]},\\\"object\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(->)(\\\\\\\\$?{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"(?i)(->)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.method-call.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.property.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?i)(->)((\\\\\\\\$+)?[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)?\\\"}]},\\\"parameter-default-types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#string-backtick\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.operator.key.php\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},{\\\"match\\\":\\\"&(?=\\\\\\\\s*\\\\\\\\$)\\\",\\\"name\\\":\\\"storage.modifier.reference.php\\\"},{\\\"begin\\\":\\\"(array)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.construct.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.array.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-default-types\\\"}]},{\\\"include\\\":\\\"#instantiation\\\"},{\\\"begin\\\":\\\"(?xi)\\\\n(?=[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\]+(::)\\\\n ([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)?\\\\n)\\\",\\\"end\\\":\\\"(?i)(::)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#class-name\\\"}]},{\\\"include\\\":\\\"#constants\\\"}]},\\\"php_doc\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^(?!\\\\\\\\s*\\\\\\\\*).*?(?:(?=\\\\\\\\*\\\\\\\\/)|$\\\\\\\\n?)\\\",\\\"name\\\":\\\"invalid.illegal.missing-asterisk.phpdoc.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.wrong-access-type.phpdoc.php\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\*\\\\\\\\s*(@access)\\\\\\\\s+((public|private|protected)|(.+))\\\\\\\\s*$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.underline.link.php\\\"}},\\\"match\\\":\\\"(@xlink)\\\\\\\\s+(.+)\\\\\\\\s*$\\\"},{\\\"begin\\\":\\\"(@(?:global|param|property(-(read|write))?|return|throws|var))\\\\\\\\s+(?=[A-Za-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\]|\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"}},\\\"contentName\\\":\\\"meta.other.type.phpdoc.php\\\",\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#php_doc_types_array_multiple\\\"},{\\\"include\\\":\\\"#php_doc_types_array_single\\\"},{\\\"include\\\":\\\"#php_doc_types\\\"}]},{\\\"match\\\":\\\"@(api|abstract|author|category|copyright|example|global|inherit[Dd]oc|internal|license|link|method|property(-(read|write))?|package|param|return|see|since|source|static|subpackage|throws|todo|var|version|uses|deprecated|final|ignore)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"}},\\\"match\\\":\\\"{(@(link|inherit[Dd]oc)).+?}\\\",\\\"name\\\":\\\"meta.tag.inline.phpdoc.php\\\"}]},\\\"php_doc_types\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(string|integer|int|boolean|bool|float|double|object|mixed|array|resource|void|null|callback|false|true|self)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.type.php\\\"},{\\\"include\\\":\\\"#class-name\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"}]}},\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\]*(\\\\\\\\|[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\]*)*\\\"},\\\"php_doc_types_array_multiple\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.begin.bracket.round.phpdoc.php\\\"}},\\\"end\\\":\\\"(\\\\\\\\))(\\\\\\\\[\\\\\\\\])|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.type.end.bracket.round.phpdoc.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.array.phpdoc.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#php_doc_types_array_multiple\\\"},{\\\"include\\\":\\\"#php_doc_types_array_single\\\"},{\\\"include\\\":\\\"#php_doc_types\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"}]},\\\"php_doc_types_array_single\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#php_doc_types\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.array.phpdoc.php\\\"}},\\\"match\\\":\\\"(?i)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\\\\\\\\\]*)(\\\\\\\\[\\\\\\\\])\\\"},\\\"regex-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"/(?=(\\\\\\\\\\\\\\\\.|[^\\\\\\\"/])++/[imsxeADSUXu]*\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"(/)([imsxeADSUXu]*)(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.regexp.double-quoted.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\){1,2}[.$^\\\\\\\\[\\\\\\\\]{}]\\\",\\\"name\\\":\\\"constant.character.escape.regex.php\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"}},\\\"match\\\":\\\"({)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repetition.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?\\\\\\\\])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.character-class.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"match\\\":\\\"[$^+*]\\\",\\\"name\\\":\\\"keyword.operator.regexp.php\\\"}]},\\\"regex-single-quoted\\\":{\\\"begin\\\":\\\"'/(?=(\\\\\\\\\\\\\\\\(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\']?|[^'])|.)|[^'/])++/[imsxeADSUXu]*')\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"(/)([imsxeADSUXu]*)(')\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.regexp.single-quoted.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single_quote_regex_escape\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"}},\\\"match\\\":\\\"({)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repetition.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?\\\\\\\\])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.character-class.php\\\"},{\\\"match\\\":\\\"[$^+*]\\\",\\\"name\\\":\\\"keyword.operator.regexp.php\\\"}]},\\\"scope-resolution\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(self|static|parent)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.php\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.class.php\\\"},{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#variable-name\\\"}]}},\\\"match\\\":\\\"(?i)\\\\\\\\b([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(?=\\\\\\\\s*::)\\\"},{\\\"begin\\\":\\\"(?i)(::)\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.method-call.static.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.class.php\\\"}},\\\"match\\\":\\\"(?i)(::)\\\\\\\\s*(class)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.class.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.other.class.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(::)\\\\\\\\s*\\\\n(?:\\\\n ((\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*) # Variable\\\\n |\\\\n ([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*) # Constant\\\\n)?\\\"}]},\\\"single_quote_regex_escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\']?|[^'])|.)\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},\\\"sql-string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"contentName\\\":\\\"source.sql.embedded.php\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.double.sql.php\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.sql\\\"}},\\\"match\\\":\\\"(#)(\\\\\\\\\\\\\\\\\\\\\\\"|[^\\\\\\\"])*(?=\\\\\\\"|$)\\\",\\\"name\\\":\\\"comment.line.number-sign.sql\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.sql\\\"}},\\\"match\\\":\\\"(--)(\\\\\\\\\\\\\\\\\\\\\\\"|[^\\\\\\\"])*(?=\\\\\\\"|$)\\\",\\\"name\\\":\\\"comment.line.double-dash.sql\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\"`']\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"match\\\":\\\"'(?=((\\\\\\\\\\\\\\\\')|[^'\\\\\\\"])*(\\\\\\\"|$))\\\",\\\"name\\\":\\\"string.quoted.single.unclosed.sql\\\"},{\\\"match\\\":\\\"`(?=((\\\\\\\\\\\\\\\\`)|[^`\\\\\\\"])*(\\\\\\\"|$))\\\",\\\"name\\\":\\\"string.quoted.other.backtick.unclosed.sql\\\"},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"`\\\",\\\"end\\\":\\\"`\\\",\\\"name\\\":\\\"string.quoted.other.backtick.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},\\\"sql-string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\\\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"contentName\\\":\\\"source.sql.embedded.php\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.single.sql.php\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.sql\\\"}},\\\"match\\\":\\\"(#)(\\\\\\\\\\\\\\\\'|[^'])*(?='|$)\\\",\\\"name\\\":\\\"comment.line.number-sign.sql\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.sql\\\"}},\\\"match\\\":\\\"(--)(\\\\\\\\\\\\\\\\'|[^'])*(?='|$)\\\",\\\"name\\\":\\\"comment.line.double-dash.sql\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\'`\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"match\\\":\\\"`(?=((\\\\\\\\\\\\\\\\`)|[^`'])*('|$))\\\",\\\"name\\\":\\\"string.quoted.other.backtick.unclosed.sql\\\"},{\\\"match\\\":\\\"\\\\\\\"(?=((\\\\\\\\\\\\\\\\\\\\\\\")|[^\\\\\\\"'])*('|$))\\\",\\\"name\\\":\\\"string.quoted.double.unclosed.sql\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},\\\"string-backtick\\\":{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.interpolated.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.double.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.single.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\']\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regex-double-quoted\\\"},{\\\"include\\\":\\\"#sql-string-double-quoted\\\"},{\\\"include\\\":\\\"#string-double-quoted\\\"},{\\\"include\\\":\\\"#regex-single-quoted\\\"},{\\\"include\\\":\\\"#sql-string-single-quoted\\\"},{\\\"include\\\":\\\"#string-single-quoted\\\"}]},\\\"support\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?xi)\\\\n\\\\\\\\b\\\\napc_(\\\\n store|sma_info|compile_file|clear_cache|cas|cache_info|inc|dec|define_constants|delete(_file)?|\\\\n exists|fetch|load_constants|add|bin_(dump|load)(file)?\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.apc.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n shuffle|sizeof|sort|next|nat(case)?sort|count|compact|current|in_array|usort|uksort|uasort|\\\\n pos|prev|end|each|extract|ksort|key(_exists)?|krsort|list|asort|arsort|rsort|reset|range|\\\\n array(_(shift|sum|splice|search|slice|chunk|change_key_case|count_values|column|combine|\\\\n (diff|intersect)(_(u)?(key|assoc))?|u(diff|intersect)(_(u)?assoc)?|unshift|unique|\\\\n pop|push|pad|product|values|keys|key_exists|filter|fill(_keys)?|flip|walk(_recursive)?|\\\\n reduce|replace(_recursive)?|reverse|rand|multisort|merge(_recursive)?|map)?)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.array.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n show_source|sys_getloadavg|sleep|highlight_(file|string)|constant|connection_(aborted|status)|\\\\n time_(nanosleep|sleep_until)|ignore_user_abort|die|define(d)?|usleep|uniqid|unpack|__halt_compiler|\\\\n php_(check_syntax|strip_whitespace)|pack|eval|exit|get_browser\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.basic_functions.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bbc(scale|sub|sqrt|comp|div|pow(mod)?|add|mod|mul)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.bcmath.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bblenc_encrypt\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.blenc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bbz(compress|close|open|decompress|errstr|errno|error|flush|write|read)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.bz2.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n (French|Gregorian|Jewish|Julian)ToJD|cal_(to_jd|info|days_in_month|from_jd)|unixtojd|\\\\n jdto(unix|jewish)|easter_(date|days)|JD(MonthName|To(Gregorian|Julian|French)|DayOfWeek)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.calendar.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n class_alias|all_user_method(_array)?|is_(a|subclass_of)|__autoload|(class|interface|method|property|trait)_exists|\\\\n get_(class(_(vars|methods))?|(called|parent)_class|object_vars|declared_(classes|interfaces|traits))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.classobj.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n com_(create_guid|print_typeinfo|event_sink|load_typelib|get_active_object|message_pump)|\\\\n variant_(sub|set(_type)?|not|neg|cast|cat|cmp|int|idiv|imp|or|div|date_(from|to)_timestamp|\\\\n pow|eqv|fix|and|add|abs|round|get_type|xor|mod|mul)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.com.php\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(isset|unset|eval|empty|list)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.construct.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(print|echo)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.construct.output.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bctype_(space|cntrl|digit|upper|punct|print|lower|alnum|alpha|graph|xdigit)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ctype.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\ncurl_(\\\\n share_(close|init|setopt)|strerror|setopt(_array)?|copy_handle|close|init|unescape|pause|escape|\\\\n errno|error|exec|version|file_create|reset|getinfo|\\\\n multi_(strerror|setopt|select|close|init|info_read|(add|remove)_handle|getcontent|exec)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.curl.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n strtotime|str[fp]time|checkdate|time|timezone_name_(from_abbr|get)|idate|\\\\n timezone_((location|offset|transitions|version)_get|(abbreviations|identifiers)_list|open)|\\\\n date(_(sun(rise|set)|sun_info|sub|create(_(immutable_)?from_format)?|timestamp_(get|set)|timezone_(get|set)|time_set|\\\\n isodate_set|interval_(create_from_date_string|format)|offset_get|diff|default_timezone_(get|set)|date_set|\\\\n parse(_from_format)?|format|add|get_last_errors|modify))?|\\\\n localtime|get(date|timeofday)|gm(strftime|date|mktime)|microtime|mktime\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.datetime.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bdba_(sync|handlers|nextkey|close|insert|optimize|open|delete|popen|exists|key_split|firstkey|fetch|list|replace)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.dba.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bdbx_(sort|connect|compare|close|escape_string|error|query|fetch_row)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.dbx.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(scandir|chdir|chroot|closedir|opendir|dir|rewinddir|readdir|getcwd)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.dir.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\neio_(\\\\n sync(fs)?|sync_file_range|symlink|stat(vfs)?|sendfile|set_min_parallel|set_max_(idle|poll_(reqs|time)|parallel)|\\\\n seek|n(threads|op|pending|reqs|ready)|chown|chmod|custom|close|cancel|truncate|init|open|dup2|unlink|utime|poll|\\\\n event_loop|f(sync|stat(vfs)?|chown|chmod|truncate|datasync|utime|allocate)|write|lstat|link|rename|realpath|\\\\n read(ahead|dir|link)?|rmdir|get_(event_stream|last_error)|grp(_(add|cancel|limit))?|mknod|mkdir|busy\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.eio.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nenchant_(\\\\n dict_(store_replacement|suggest|check|is_in_session|describe|quick_check|add_to_(personal|session)|get_error)|\\\\n broker_(set_ordering|init|dict_exists|describe|free(_dict)?|list_dicts|request_(pwl_)?dict|get_error)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.enchant.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bsplit(i)?|sql_regcase|ereg(i)?(_replace)?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ereg.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((restore|set)_(error_handler|exception_handler)|trigger_error|debug_(print_)?backtrace|user_error|error_(log|reporting|get_last))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.errorfunc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bshell_exec|system|passthru|proc_(nice|close|terminate|open|get_status)|escapeshell(arg|cmd)|exec\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.exec.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(exif_(thumbnail|tagname|imagetype|read_data)|read_exif_data)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.exif.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nfann_(\\\\n (duplicate|length|merge|shuffle|subset)_train_data|scale_(train(_data)?|(input|output)(_train_data)?)|\\\\n set_(scaling_params|sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|\\\\n cascade_(num_candidate_groups|candidate_(change_fraction|limit|stagnation_epochs)|\\\\n output_(change_fraction|stagnation_epochs)|weight_multiplier|activation_(functions|steepnesses)|\\\\n (max|min)_(cand|out)_epochs)|\\\\n callback|training_algorithm|train_(error|stop)_function|(input|output)_scaling_params|error_log|\\\\n quickprop_(decay|mu)|weight(_array)?|learning_(momentum|rate)|bit_fail_limit|\\\\n activation_(function|steepness)(_(hidden|layer|output))?|\\\\n rprop_((decrease|increase)_factor|delta_(max|min|zero)))|\\\\n save(_train)?|num_(input|output)_train_data|copy|clear_scaling_params|cascadetrain_on_(file|data)|\\\\n create_((sparse|shortcut|standard)(_array)?|train(_from_callback)?|from_file)|\\\\n test(_data)?|train(_(on_(file|data)|epoch))?|init_weights|descale_(input|output|train)|destroy(_train)?|\\\\n print_error|run|reset_(MSE|err(no|str))|read_train_from_file|randomize_weights|\\\\n get_(sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|num_(input|output|layers)|\\\\n network_type|MSE|connection_(array|rate)|bias_array|bit_fail(_limit)?|\\\\n cascade_(num_(candidates|candidate_groups)|(candidate|output)_(change_fraction|limit|stagnation_epochs)|\\\\n weight_multiplier|activation_(functions|steepnesses)(_count)?|(max|min)_(cand|out)_epochs)|\\\\n total_(connections|neurons)|training_algorithm|train_(error|stop)_function|err(no|str)|\\\\n quickprop_(decay|mu)|learning_(momentum|rate)|layer_array|activation_(function|steepness)|\\\\n rprop_((decrease|increase)_factor|delta_(max|min|zero)))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.fann.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n symlink|stat|set_file_buffer|chown|chgrp|chmod|copy|clearstatcache|touch|tempnam|tmpfile|\\\\n is_(dir|(uploaded_)?file|executable|link|readable|writ(e)?able)|disk_(free|total)_space|diskfreespace|\\\\n dirname|delete|unlink|umask|pclose|popen|pathinfo|parse_ini_(file|string)|fscanf|fstat|fseek|fnmatch|\\\\n fclose|ftell|ftruncate|file(size|[acm]time|type|inode|owner|perms|group)?|file_(exists|(get|put)_contents)|\\\\n f(open|puts|putcsv|passthru|eof|flush|write|lock|read|gets(s)?|getc(sv)?)|lstat|lchown|lchgrp|link(info)?|\\\\n rename|rewind|read(file|link)|realpath(_cache_(get|size))?|rmdir|glob|move_uploaded_file|mkdir|basename\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.file.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(finfo_(set_flags|close|open|file|buffer)|mime_content_type)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.fileinfo.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bfilter_(has_var|input(_array)?|id|var(_array)?|list)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.filter.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bfastcgi_finish_request\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.fpm.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(call_user_(func|method)(_array)?|create_function|unregister_tick_function|forward_static_call(_array)?|function_exists|func_(num_args|get_arg(s)?)|register_(shutdown|tick)_function|get_defined_functions)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.funchand.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((n)?gettext|textdomain|d((n)?gettext|c(n)?gettext)|bind(textdomain|_textdomain_codeset))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.gettext.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\ngmp_(\\\\n scan[01]|strval|sign|sub|setbit|sqrt(rem)?|hamdist|neg|nextprime|com|clrbit|cmp|testbit|\\\\n intval|init|invert|import|or|div(exact)?|div_(q|qr|r)|jacobi|popcount|pow(m)?|perfect_square|\\\\n prob_prime|export|fact|legendre|and|add|abs|root(rem)?|random(_(bits|range))?|gcd(ext)?|xor|mod|mul\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.gmp.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bhash(_(hmac(_file)?|copy|init|update(_(file|stream))?|pbkdf2|equals|file|final|algos))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.hash.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n http_(support|send_(status|stream|content_(disposition|type)|data|file|last_modified)|head|\\\\n negotiate_(charset|content_type|language)|chunked_decode|cache_(etag|last_modified)|throttle|\\\\n inflate|deflate|date|post_(data|fields)|put_(data|file|stream)|persistent_handles_(count|clean|ident)|\\\\n parse_(cookie|headers|message|params)|redirect|request(_(method_(exists|name|(un)?register)|body_encode))?|\\\\n get(_request_(headers|body(_stream)?))?|match_(etag|modified|request_header)|build_(cookie|str|url))|\\\\n ob_(etag|deflate|inflate)handler\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.http.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(iconv(_(str(pos|len|rpos)|substr|(get|set)_encoding|mime_(decode(_headers)?|encode)))?|ob_iconv_handler)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.iconv.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\biis_((start|stop)_(service|server)|set_(script_map|server_rights|dir_security|app_settings)|(add|remove)_server|get_(script_map|service_state|server_(rights|by_(comment|path))|dir_security))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.iisfunc.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n iptc(embed|parse)|(jpeg|png)2wbmp|gd_info|getimagesize(fromstring)?|\\\\n image(s[xy]|scale|(char|string)(up)?|set(style|thickness|tile|interpolation|pixel|brush)|savealpha|\\\\n convolution|copy(resampled|resized|merge(gray)?)?|colors(forindex|total)|\\\\n color(set|closest(alpha|hwb)?|transparent|deallocate|(allocate|exact|resolve)(alpha)?|at|match)|\\\\n crop(auto)?|create(truecolor|from(string|jpeg|png|wbmp|webp|gif|gd(2(part)?)?|xpm|xbm))?|\\\\n types|ttf(bbox|text)|truecolortopalette|istruecolor|interlace|2wbmp|destroy|dashedline|jpeg|\\\\n _type_to_(extension|mime_type)|ps(slantfont|text|(encode|extend|free|load)font|bbox)|png|polygon|\\\\n palette(copy|totruecolor)|ellipse|ft(text|bbox)|filter|fill|filltoborder|\\\\n filled(arc|ellipse|polygon|rectangle)|font(height|width)|flip|webp|wbmp|line|loadfont|layereffect|\\\\n antialias|affine(matrix(concat|get))?|alphablending|arc|rotate|rectangle|gif|gd(2)?|gammacorrect|\\\\n grab(screen|window)|xbm)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.image.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n sys_get_temp_dir|set_(time_limit|include_path|magic_quotes_runtime)|cli_(get|set)_process_title|\\\\n ini_(alter|get(_all)?|restore|set)|zend_(thread_id|version|logo_guid)|dl|php(credits|info|version)|\\\\n php_(sapi_name|ini_(scanned_files|loaded_file)|uname|logo_guid)|putenv|extension_loaded|version_compare|\\\\n assert(_options)?|restore_include_path|gc_(collect_cycles|disable|enable(d)?)|getopt|\\\\n get_(cfg_var|current_user|defined_constants|extension_funcs|include_path|included_files|loaded_extensions|\\\\n magic_quotes_(gpc|runtime)|required_files|resources)|\\\\n get(env|lastmod|rusage|my(inode|[gup]id))|\\\\n memory_get_(peak_)?usage|main|magic_quotes_runtime\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.info.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nibase_(\\\\n set_event_handler|service_(attach|detach)|server_info|num_(fields|params)|name_result|connect|\\\\n commit(_ret)?|close|trans|delete_user|drop_db|db_info|pconnect|param_info|prepare|err(code|msg)|\\\\n execute|query|field_info|fetch_(assoc|object|row)|free_(event_handler|query|result)|wait_event|\\\\n add_user|affected_rows|rollback(_ret)?|restore|gen_id|modify_user|maintain_db|backup|\\\\n blob_(cancel|close|create|import|info|open|echo|add|get)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.interbase.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n normalizer_(normalize|is_normalized)|idn_to_(unicode|utf8|ascii)|\\\\n numfmt_(set_(symbol|(text_)?attribute|pattern)|create|(parse|format)(_currency)?|\\\\n get_(symbol|(text_)?attribute|pattern|error_(code|message)|locale))|\\\\n collator_(sort(_with_sort_keys)?|set_(attribute|strength)|compare|create|asort|\\\\n get_(strength|sort_key|error_(code|message)|locale|attribute))|\\\\n transliterator_(create(_(inverse|from_rules))?|transliterate|list_ids|get_error_(code|message))|\\\\n intl(cal|tz)_get_error_(code|message)|intl_(is_failure|error_name|get_error_(code|message))|\\\\n datefmt_(set_(calendar|lenient|pattern|timezone(_id)?)|create|is_lenient|parse|format(_object)?|localtime|\\\\n get_(calendar(_object)?|time(type|zone(_id)?)|datetype|pattern|error_(code|message)|locale))|\\\\n locale_(set_default|compose|canonicalize|parse|filter_matches|lookup|accept_from_http|\\\\n get_(script|display_(script|name|variant|language|region)|default|primary_language|keywords|all_variants|region))|\\\\n resourcebundle_(create|count|locales|get(_(error_(code|message)))?)|\\\\n grapheme_(str(i?str|r?i?pos|len)|substr|extract)|\\\\n msgfmt_(set_pattern|create|(format|parse)(_message)?|get_(pattern|error_(code|message)|locale))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.intl.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bjson_(decode|encode|last_error(_msg)?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.json.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nldap_(\\\\n start|tls|sort|search|sasl_bind|set_(option|rebind_proc)|(first|next)_(attribute|entry|reference)|\\\\n connect|control_paged_result(_response)?|count_entries|compare|close|t61_to_8859|8859_to_t61|\\\\n dn2ufn|delete|unbind|parse_(reference|result)|escape|errno|err2str|error|explode_dn|bind|\\\\n free_result|list|add|rename|read|get_(option|dn|entries|values(_len)?|attributes)|modify(_batch)?|\\\\n mod_(add|del|replace)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ldap.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\blibxml_(set_(streams_context|external_entity_loader)|clear_errors|disable_entity_loader|use_internal_errors|get_(errors|last_error))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.libxml.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(ezmlm_hash|mail)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mail.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n (a)?(cos|sin|tan)(h)?|sqrt|srand|hypot|hexdec|ceil|is_(nan|(in)?finite)|octdec|dec(hex|oct|bin)|deg2rad|\\\\n pi|pow|exp(m1)?|floor|fmod|lcg_value|log(1(p|0))?|atan2|abs|round|rand|rad2deg|getrandmax|\\\\n mt_(srand|rand|getrandmax)|max|min|bindec|base_convert\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.math.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nmb_(\\\\n str(cut|str|to(lower|upper)|istr|ipos|imwidth|pos|width|len|rchr|richr|ripos|rpos)|\\\\n substitute_character|substr(_count)?|split|send_mail|http_(input|output)|check_encoding|\\\\n convert_(case|encoding|kana|variables)|internal_encoding|output_handler|decode_(numericentity|mimeheader)|\\\\n detect_(encoding|order)|parse_str|preferred_mime_name|encoding_aliases|encode_(numericentity|mimeheader)|\\\\n ereg(i(_replace)?)?|ereg_(search(_(get(pos|regs)|init|regs|(set)?pos))?|replace(_callback)?|match)|\\\\n list_encodings|language|regex_(set_options|encoding)|get_info\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mbstring.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n mcrypt_(\\\\n cfb|create_iv|cbc|ofb|decrypt|encrypt|ecb|list_(algorithms|modes)|generic(_((de)?init|end))?|\\\\n enc_(self_test|is_block_(algorithm|algorithm_mode|mode)|\\\\n get_(supported_key_sizes|(block|iv|key)_size|(algorithms|modes)_name))|\\\\n get_(cipher_name|(block|iv|key)_size)|\\\\n module_(close|self_test|is_block_(algorithm|algorithm_mode|mode)|open|\\\\n get_(supported_key_sizes|algo_(block|key)_size)))|\\\\n mdecrypt_generic\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mcrypt.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmemcache_debug\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.memcache.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmhash(_(count|keygen_s2k|get_(hash_name|block_size)))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mhash.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(log_(cmd_(insert|delete|update)|killcursor|write_batch|reply|getmore)|bson_(decode|encode))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mongo.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nmysql_(\\\\n stat|set_charset|select_db|num_(fields|rows)|connect|client_encoding|close|create_db|escape_string|\\\\n thread_id|tablename|insert_id|info|data_seek|drop_db|db_(name|query)|unbuffered_query|pconnect|ping|\\\\n errno|error|query|field_(seek|name|type|table|flags|len)|fetch_(object|field|lengths|assoc|array|row)|\\\\n free_result|list_(tables|dbs|processes|fields)|affected_rows|result|real_escape_string|\\\\n get_(client|host|proto|server)_info\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysql.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nmysqli_(\\\\n ssl_set|store_result|stat|send_(query|long_data)|set_(charset|opt|local_infile_(default|handler))|\\\\n stmt_(store_result|send_long_data|next_result|close|init|data_seek|prepare|execute|fetch|free_result|\\\\n attr_(get|set)|result_metadata|reset|get_(result|warnings)|more_results|bind_(param|result))|\\\\n select_db|slave_query|savepoint|next_result|change_user|character_set_name|connect|commit|\\\\n client_encoding|close|thread_safe|init|options|(enable|disable)_(reads_from_master|rpl_parse)|\\\\n dump_debug_info|debug|data_seek|use_result|ping|poll|param_count|prepare|escape_string|execute|\\\\n embedded_server_(start|end)|kill|query|field_seek|free_result|autocommit|rollback|report|refresh|\\\\n fetch(_(object|fields|field(_direct)?|assoc|all|array|row))?|rpl_(parse_enabled|probe|query_type)|\\\\n release_savepoint|reap_async_query|real_(connect|escape_string|query)|more_results|multi_query|\\\\n get_(charset|connection_stats|client_(stats|info|version)|cache_stats|warnings|links_stats|metadata)|\\\\n master_query|bind_(param|result)|begin_transaction\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqli.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_memcache_(set|get_config)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-memcache.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_ms_(set_(user_pick_server|qos)|dump_servers|query_is_select|fabric_select_(shard|global)|get_(stats|last_(used_connection|gtid))|xa_(commit|rollback|gc|begin)|match_wild)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-ms.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_qc_(set_(storage_handler|cache_condition|is_select|user_handlers)|clear_cache|get_(normalized_query_trace_log|core_stats|cache_info|query_trace_log|available_handlers))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-qc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_uh_(set_(statement|connection)_proxy|convert_to_mysqlnd)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-uh.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n syslog|socket_(set_(blocking|timeout)|get_status)|set(raw)?cookie|http_response_code|openlog|\\\\n headers_(list|sent)|header(_(register_callback|remove))?|checkdnsrr|closelog|inet_(ntop|pton)|ip2long|\\\\n openlog|dns_(check_record|get_(record|mx))|define_syslog_variables|(p)?fsockopen|long2ip|\\\\n get(servby(name|port)|host(name|by(name(l)?|addr))|protoby(name|number)|mxrr)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.network.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bnsapi_(virtual|response_headers|request_headers)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.nsapi.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n oci(statementtype|setprefetch|serverversion|savelob(file)?|numcols|new(collection|cursor|descriptor)|nlogon|\\\\n column(scale|size|name|type(raw)?|isnull|precision)|coll(size|trim|assign(elem)?|append|getelem|max)|commit|\\\\n closelob|cancel|internaldebug|definebyname|plogon|parse|error|execute|fetch(statement|into)?|\\\\n free(statement|collection|cursor|desc)|write(temporarylob|lobtofile)|loadlob|log(on|off)|rowcount|rollback|\\\\n result|bindbyname)|\\\\n oci_(statement_type|set_(client_(info|identifier)|prefetch|edition|action|module_name)|server_version|\\\\n num_(fields|rows)|new_(connect|collection|cursor|descriptor)|connect|commit|client_version|close|cancel|\\\\n internal_debug|define_by_name|pconnect|password_change|parse|error|execute|bind_(array_)?by_name|\\\\n field_(scale|size|name|type(_raw)?|is_null|precision)|fetch(_(object|assoc|all|array|row))?|\\\\n free_(statement|descriptor)|lob_(copy|is_equal)|rollback|result|get_implicit_resultset)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.oci8.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bopcache_(compile_file|invalidate|reset|get_(status|configuration))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.opcache.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nopenssl_(\\\\n sign|spki_(new|export(_challenge)?|verify)|seal|csr_(sign|new|export(_to_file)?|get_(subject|public_key))|\\\\n cipher_iv_length|open|dh_compute_key|digest|decrypt|public_(decrypt|encrypt)|encrypt|error_string|\\\\n pkcs12_(export(_to_file)?|read)|pkcs7_(sign|decrypt|encrypt|verify)|verify|free_key|random_pseudo_bytes|\\\\n pkey_(new|export(_to_file)?|free|get_(details|public|private))|private_(decrypt|encrypt)|pbkdf2|\\\\n get_((cipher|md)_methods|cert_locations|(public|private)key)|\\\\n x509_(check_private_key|checkpurpose|parse|export(_to_file)?|fingerprint|free|read)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.openssl.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n output_(add_rewrite_var|reset_rewrite_vars)|flush|\\\\n ob_(start|clean|implicit_flush|end_(clean|flush)|flush|list_handlers|gzhandler|\\\\n get_(status|contents|clean|flush|length|level))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.output.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bpassword_(hash|needs_rehash|verify|get_info)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.password.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\npcntl_(\\\\n strerror|signal(_dispatch)?|sig(timedwait|procmask|waitinfo)|setpriority|errno|exec|fork|\\\\n w(stopsig|termsig|if(stopped|signaled|exited))|wait(pid)?|alarm|getpriority|get_last_error\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.pcntl.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\npg_(\\\\n socket|send_(prepare|execute|query(_params)?)|set_(client_encoding|error_verbosity)|select|host|\\\\n num_(fields|rows)|consume_input|connection_(status|reset|busy)|connect(_poll)?|convert|copy_(from|to)|\\\\n client_encoding|close|cancel_query|tty|transaction_status|trace|insert|options|delete|dbname|untrace|\\\\n unescape_bytea|update|pconnect|ping|port|put_line|parameter_status|prepare|version|query(_params)?|\\\\n escape_(string|identifier|literal|bytea)|end_copy|execute|flush|free_result|last_(notice|error|oid)|\\\\n field_(size|num|name|type(_oid)?|table|is_null|prtlen)|affected_rows|result_(status|seek|error(_field)?)|\\\\n fetch_(object|assoc|all(_columns)?|array|row|result)|get_(notify|pid|result)|meta_data|\\\\n lo_(seek|close|create|tell|truncate|import|open|unlink|export|write|read(_all)?)|\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.pgsql.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(virtual|getallheaders|apache_((get|set)env|note|child_terminate|lookup_uri|response_headers|reset_timeout|request_headers|get_(version|modules)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_apache.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bdom_import_simplexml\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_dom.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nftp_(\\\\n ssl_connect|systype|site|size|set_option|nlist|nb_(continue|f?(put|get))|ch(dir|mod)|connect|cdup|close|\\\\n delete|put|pwd|pasv|exec|quit|f(put|get)|login|alloc|rename|raw(list)?|rmdir|get(_option)?|mdtm|mkdir\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_ftp.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nimap_(\\\\n (create|delete|list|rename|scan)(mailbox)?|status|sort|subscribe|set_quota|set(flag_full|acl)|search|savebody|\\\\n num_(recent|msg)|check|close|clearflag_full|thread|timeout|open|header(info)?|headers|append|alerts|reopen|\\\\n 8bit|unsubscribe|undelete|utf7_(decode|encode)|utf8|uid|ping|errors|expunge|qprint|gc|\\\\n fetch(structure|header|text|mime|body)|fetch_overview|lsub|list(scan|subscribed)|last_error|\\\\n rfc822_(parse_(headers|adrlist)|write_address)|get(subscribed|acl|mailboxes)|get_quota(root)?|\\\\n msgno|mime_header_decode|mail_(copy|compose|move)|mail|mailboxmsginfo|binary|body(struct)?|base64\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_imap.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nmssql_(\\\\n select_db|num_(fields|rows)|next_result|connect|close|init|data_seek|pconnect|execute|query|\\\\n field_(seek|name|type|length)|fetch_(object|field|assoc|array|row|batch)|free_(statement|result)|\\\\n rows_affected|result|guid_string|get_last_message|min_(error|message)_severity|bind\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_mssql.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nodbc_(\\\\n statistics|specialcolumns|setoption|num_(fields|rows)|next_result|connect|columns|columnprivileges|commit|\\\\n cursor|close(_all)?|tables|tableprivileges|do|data_source|pconnect|primarykeys|procedures|procedurecolumns|\\\\n prepare|error(msg)?|exec(ute)?|field_(scale|num|name|type|precision|len)|foreignkeys|free_result|\\\\n fetch_(into|object|array|row)|longreadlen|autocommit|rollback|result(_all)?|gettypeinfo|binmode\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_odbc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bpreg_(split|quote|filter|last_error|replace(_callback)?|grep|match(_all)?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_pcre.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(spl_(classes|object_hash|autoload(_(call|unregister|extensions|functions|register))?)|class_(implements|uses|parents)|iterator_(count|to_array|apply))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_spl.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bzip_(close|open|entry_(name|compressionmethod|compressedsize|close|open|filesize|read)|read)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_zip.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nposix_(\\\\n strerror|set(s|e?u|[ep]?g)id|ctermid|ttyname|times|isatty|initgroups|uname|errno|kill|access|\\\\n get(sid|cwd|uid|pid|ppid|pwnam|pwuid|pgid|pgrp|euid|egid|login|rlimit|gid|grnam|groups|grgid)|\\\\n get_last_error|mknod|mkfifo\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.posix.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bset(thread|proc)title\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.proctitle.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\npspell_(\\\\n store_replacement|suggest|save_wordlist|new(_(config|personal))?|check|clear_session|\\\\n config_(save_repl|create|ignore|(data|dict)_dir|personal|runtogether|repl|mode)|add_to_(session|personal)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.pspell.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\breadline(_(completion_function|clear_history|callback_(handler_(install|remove)|read_char)|info|on_new_line|write_history|list_history|add_history|redisplay|read_history))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.readline.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\brecode(_(string|file))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.recode.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\brrd(c_disconnect|_(create|tune|info|update|error|version|first|fetch|last(update)?|restore|graph|xport))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.rrd.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n shm_((get|has|remove|put)_var|detach|attach|remove)|sem_(acquire|release|remove|get)|ftok|\\\\n msg_((get|remove|set|stat)_queue|send|queue_exists|receive)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sem.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nsession_(\\\\n status|start|set_(save_handler|cookie_params)|save_path|name|commit|cache_(expire|limiter)|\\\\n is_registered|id|destroy|decode|unset|unregister|encode|write_close|abort|reset|register(_shutdown)?|\\\\n regenerate_id|get_cookie_params|module_name\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.session.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bshmop_(size|close|open|delete|write|read)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.shmop.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bsimplexml_(import_dom|load_(string|file))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.simplexml.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n snmp(walk(oid)?|realwalk|get(next)?|set)|\\\\n snmp_(set_(valueretrieval|quick_print|enum_print|oid_(numeric_print|output_format))|read_mib|\\\\n get_(valueretrieval|quick_print))|\\\\n snmp[23]_(set|walk|real_walk|get(next)?)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.snmp.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(is_soap_fault|use_soap_error_handler)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.soap.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nsocket_(\\\\n shutdown|strerror|send(to|msg)?|set_((non)?block|option)|select|connect|close|clear_error|bind|\\\\n create(_(pair|listen))?|cmsg_space|import_stream|write|listen|last_error|accept|recv(from|msg)?|\\\\n read|get(peer|sock)name|get_option\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sockets.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nsqlite_(\\\\n single_query|seek|has_(more|prev)|num_(fields|rows)|next|changes|column|current|close|\\\\n create_(aggregate|function)|open|unbuffered_query|udf_(decode|encode)_binary|popen|prev|\\\\n escape_string|error_string|exec|valid|key|query|field_name|factory|\\\\n fetch_(string|single|column_types|object|all|array)|lib(encoding|version)|\\\\n last_(insert_rowid|error)|array_query|rewind|busy_timeout\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sqlite.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nsqlsrv_(\\\\n send_stream_data|server_info|has_rows|num_(fields|rows)|next_result|connect|configure|commit|\\\\n client_info|close|cancel|prepare|errors|execute|query|field_metadata|fetch(_(array|object))?|\\\\n free_stmt|rows_affected|rollback|get_(config|field)|begin_transaction\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sqlsrv.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nstats_(\\\\n harmonic_mean|covariance|standard_deviation|skew|\\\\n cdf_(noncentral_(chisquare|f)|negative_binomial|chisquare|cauchy|t|uniform|poisson|exponential|f|weibull|\\\\n logistic|laplace|gamma|binomial|beta)|\\\\n stat_(noncentral_t|correlation|innerproduct|independent_t|powersum|percentile|paired_t|gennch|binomial_coef)|\\\\n dens_(normal|negative_binomial|chisquare|cauchy|t|pmf_(hypergeometric|poisson|binomial)|exponential|f|\\\\n weibull|logistic|laplace|gamma|beta)|\\\\n den_uniform|variance|kurtosis|absolute_deviation|\\\\n rand_(setall|phrase_to_seeds|ranf|get_seeds|\\\\n gen_(noncentral_[ft]|noncenral_chisquare|normal|chisquare|t|int|\\\\n i(uniform|poisson|binomial(_negative)?)|exponential|f(uniform)?|gamma|beta))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.stats.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n set_socket_blocking|\\\\n stream_(socket_(shutdown|sendto|server|client|pair|enable_crypto|accept|recvfrom|get_name)|\\\\n set_(chunk_size|timeout|(read|write)_buffer|blocking)|select|notification_callback|supports_lock|\\\\n context_(set_(option|default|params)|create|get_(options|default|params))|copy_to_stream|is_local|\\\\n encoding|filter_(append|prepend|register|remove)|wrapper_((un)?register|restore)|\\\\n resolve_include_path|register_wrapper|get_(contents|transports|filters|wrappers|line|meta_data)|\\\\n bucket_(new|prepend|append|make_writeable)\\\\n )\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.streamsfuncs.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n money_format|md5(_file)?|metaphone|bin2hex|sscanf|sha1(_file)?|\\\\n str(str|c?spn|n(at)?(case)?cmp|chr|coll|(case)?cmp|to(upper|lower)|tok|tr|istr|pos|pbrk|len|rchr|ri?pos|rev)|\\\\n str_(getcsv|ireplace|pad|repeat|replace|rot13|shuffle|split|word_count)|\\\\n strip(c?slashes|os)|strip_tags|similar_text|soundex|substr(_(count|compare|replace))?|setlocale|\\\\n html(specialchars(_decode)?|entities)|html_entity_decode|hex2bin|hebrev(c)?|number_format|nl2br|nl_langinfo|\\\\n chop|chunk_split|chr|convert_(cyr_string|uu(decode|encode))|count_chars|crypt|crc32|trim|implode|ord|\\\\n uc(first|words)|join|parse_str|print(f)?|echo|explode|v?[fs]?printf|quoted_printable_(decode|encode)|\\\\n quotemeta|wordwrap|lcfirst|[lr]trim|localeconv|levenshtein|addc?slashes|get_html_translation_table\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.string.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nsybase_(\\\\n set_message_handler|select_db|num_(fields|rows)|connect|close|deadlock_retry_count|data_seek|\\\\n unbuffered_query|pconnect|query|field_seek|fetch_(object|field|assoc|array|row)|free_result|\\\\n affected_rows|result|get_last_message|min_(client|error|message|server)_severity\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sybase.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(taint|is_tainted|untaint)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.taint.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n tidy_((get|set)opt|set_encoding|save_config|config_count|clean_repair|is_(xhtml|xml)|diagnose|\\\\n (access|error|warning)_count|load_config|reset_config|(parse|repair)_(string|file)|\\\\n get_(status|html(_ver)?|head|config|output|opt_doc|root|release|body))|\\\\n ob_tidyhandler\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.tidy.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\btoken_(name|get_all)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.tokenizer.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\ntrader_(\\\\n stoch(f|r|rsi)?|stddev|sin(h)?|sum|sub|set_(compat|unstable_period)|sqrt|sar(ext)?|sma|\\\\n ht_(sine|trend(line|mode)|dc(period|phase)|phasor)|natr|cci|cos(h)?|correl|\\\\n cdl(shootingstar|shortline|sticksandwich|stalledpattern|spinningtop|separatinglines|\\\\n hikkake(mod)?|highwave|homingpigeon|hangingman|harami(cross)?|hammer|concealbabyswall|\\\\n counterattack|closingmarubozu|thrusting|tasukigap|takuri|tristar|inneck|invertedhammer|\\\\n identical3crows|2crows|onneck|doji(star)?|darkcloudcover|dragonflydoji|unique3river|\\\\n upsidegap2crows|3(starsinsouth|inside|outside|whitesoldiers|linestrike|blackcrows)|\\\\n piercing|engulfing|evening(doji)?star|kicking(bylength)?|longline|longleggeddoji|\\\\n ladderbottom|advanceblock|abandonedbaby|risefall3methods|rickshawman|gapsidesidewhite|\\\\n gravestonedoji|xsidegap3methods|morning(doji)?star|mathold|matchinglow|marubozu|\\\\n belthold|breakaway)|\\\\n ceil|cmo|tsf|typprice|t3|tema|tan(h)?|trix|trima|trange|obv|div|dema|dx|ultosc|ppo|\\\\n plus_d[im]|errno|exp|ema|var|kama|floor|wclprice|willr|wma|ln|log10|bop|beta|bbands|\\\\n linearreg(_(slope|intercept|angle))?|asin|acos|atan|atr|adosc|ad|add|adx(r)?|apo|avgprice|\\\\n aroon(osc)?|rsi|roc|rocp|rocr(100)?|get_(compat|unstable_period)|min(index)?|minus_d[im]|\\\\n minmax(index)?|mid(point|price)|mom|mult|medprice|mfi|macd(ext|fix)?|mavp|max(index)?|ma(ma)?\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.trader.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\buopz_(copy|compose|implement|overload|delete|undefine|extend|function|flags|restore|rename|redefine|backup)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.uopz.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(http_build_query|(raw)?url(decode|encode)|parse_url|get_(headers|meta_tags)|base64_(decode|encode))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.url.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n strval|settype|serialize|(bool|double|float)val|debug_zval_dump|intval|import_request_variables|isset|\\\\n is_(scalar|string|null|numeric|callable|int(eger)?|object|double|float|long|array|resource|real|bool)|\\\\n unset|unserialize|print_r|empty|var_(dump|export)|gettype|get_(defined_vars|resource_type)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.var.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bwddx_(serialize_(value|vars)|deserialize|packet_(start|end)|add_vars)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.wddx.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bxhprof_(sample_)?(disable|enable)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xhprof.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\n\\\\\\\\b\\\\n(\\\\n utf8_(decode|encode)|\\\\n xml_(set_((notation|(end|start)_namespace|unparsed_entity)_decl_handler|\\\\n (character_data|default|element|external_entity_ref|processing_instruction)_handler|object)|\\\\n parse(_into_struct)?|parser_((get|set)_option|create(_ns)?|free)|error_string|\\\\n get_(current_((column|line)_number|byte_index)|error_code))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xml.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nxmlrpc_(\\\\n server_(call_method|create|destroy|add_introspection_data|register_(introspection_callback|method))|\\\\n is_fault|decode(_request)?|parse_method_descriptions|encode(_request)?|(get|set)_type\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xmlrpc.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nxmlwriter_(\\\\n (end|start|write)_(comment|cdata|dtd(_(attlist|entity|element))?|document|pi|attribute|element)|\\\\n (start|write)_(attribute|element)_ns|write_raw|set_indent(_string)?|text|output_memory|open_(memory|uri)|\\\\n full_end_element|flush|\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xmlwriter.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n zlib_(decode|encode|get_coding_type)|readgzfile|\\\\n gz(seek|compress|close|tell|inflate|open|decode|deflate|uncompress|puts|passthru|encode|eof|file|\\\\n write|rewind|read|getc|getss?)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.zlib.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bis_int(eger)?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.alias.php\\\"}]},\\\"switch_statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s+(?=switch\\\\\\\\b)\\\"},{\\\"begin\\\":\\\"\\\\\\\\bswitch\\\\\\\\b(?!\\\\\\\\s*\\\\\\\\(.*\\\\\\\\)\\\\\\\\s*:)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.switch.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.section.switch-block.end.bracket.curly.php\\\"}},\\\"name\\\":\\\"meta.switch-statement.php\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.switch-expression.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.switch-expression.end.bracket.round.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.section.switch-block.begin.bracket.curly.php\\\"}},\\\"end\\\":\\\"(?=}|\\\\\\\\?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]}]},\\\"use-inner\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(as)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.use-as.php\\\"}},\\\"end\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.alias.php\\\"}}},{\\\"include\\\":\\\"#class-name\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"}]},\\\"var_basic\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.php\\\"}]},\\\"var_global\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)((_(COOKIE|FILES|GET|POST|REQUEST))|arg(v|c))\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.global.php\\\"},\\\"var_global_safer\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)((GLOBALS|_(ENV|SERVER|SESSION)))\\\",\\\"name\\\":\\\"variable.other.global.safer.php\\\"},\\\"var_language\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)this\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.this.php\\\"},\\\"variable-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#var_global\\\"},{\\\"include\\\":\\\"#var_global_safer\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.property.php\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.php\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.index.php\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.other.index.php\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"10\\\":{\\\"name\\\":\\\"string.unquoted.index.php\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.section.array.end.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n((\\\\\\\\$)(?<name>[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*))\\\\n(?:\\\\n (->)(\\\\\\\\g<name>)\\\\n |\\\\n (\\\\\\\\[)(?:(\\\\\\\\d+)|((\\\\\\\\$)\\\\\\\\g<name>)|([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*))(\\\\\\\\])\\\\n)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?i)((\\\\\\\\${)(?<name>[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(}))\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#var_language\\\"},{\\\"include\\\":\\\"#var_global\\\"},{\\\"include\\\":\\\"#var_global_safer\\\"},{\\\"include\\\":\\\"#var_basic\\\"},{\\\"begin\\\":\\\"\\\\\\\\${(?=.*?})\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]}},\\\"scopeName\\\":\\\"text.html.php.blade\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"xml\\\",\\\"sql\\\",\\\"javascript\\\",\\\"json\\\",\\\"css\\\"]}\"))\n\nexport default [\n...html,\n...xml,\n...sql,\n...javascript,\n...json,\n...css,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"1C (Query)\\\",\\\"fileTypes\\\":[\\\"sdbl\\\",\\\"query\\\"],\\\"firstLineMatch\\\":\\\"(?i)\u0412\u044B\u0431\u0440\u0430\u0442\u044C|Select(\\\\\\\\s+\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u043D\u044B\u0435|\\\\\\\\s+Allowed)?(\\\\\\\\s+\u0420\u0430\u0437\u043B\u0438\u0447\u043D\u044B\u0435|\\\\\\\\s+Distinct)?(\\\\\\\\s+\u041F\u0435\u0440\u0432\u044B\u0435|\\\\\\\\s+Top)?.*\\\",\\\"name\\\":\\\"sdbl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(^\\\\\\\\s*//.*$)\\\",\\\"name\\\":\\\"comment.line.double-slash.sdbl\\\"},{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.sdbl\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\\\\\\\\\"(?![\\\\\\\\\\\\\\\"])\\\",\\\"name\\\":\\\"string.quoted.double.sdbl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.sdbl\\\"},{\\\"match\\\":\\\"(^\\\\\\\\s*//.*$)\\\",\\\"name\\\":\\\"comment.line.double-slash.sdbl\\\"}]},{\\\"match\\\":\\\"(?i)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041D\u0435\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043E|Undefined|\u0418\u0441\u0442\u0438\u043D\u0430|True|\u041B\u043E\u0436\u044C|False|NULL)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"constant.language.sdbl\\\"},{\\\"match\\\":\\\"(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\\\\\\\\d+\\\\\\\\.?\\\\\\\\d*)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"constant.numeric.sdbl\\\"},{\\\"match\\\":\\\"(?i)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0412\u044B\u0431\u043E\u0440|Case|\u041A\u043E\u0433\u0434\u0430|When|\u0422\u043E\u0433\u0434\u0430|Then|\u0418\u043D\u0430\u0447\u0435|Else|\u041A\u043E\u043D\u0435\u0446|End)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"keyword.control.conditional.sdbl\\\"},{\\\"match\\\":\\\"(?i)(?<!\u041A\u0410\u041A\\\\\\\\s|AS\\\\\\\\s)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041D\u0415|NOT|\u0418|AND|\u0418\u041B\u0418|OR|\u0412\\\\\\\\s+\u0418\u0415\u0420\u0410\u0420\u0425\u0418\u0418|IN\\\\\\\\s+HIERARCHY|\u0412|In|\u041C\u0435\u0436\u0434\u0443|Between|\u0415\u0441\u0442\u044C(\\\\\\\\s+\u041D\u0415)?\\\\\\\\s+NULL|Is(\\\\\\\\s+NOT)?\\\\\\\\s+NULL|\u0421\u0441\u044B\u043B\u043A\u0430|Refs|\u041F\u043E\u0434\u043E\u0431\u043D\u043E|Like)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"keyword.operator.logical.sdbl\\\"},{\\\"match\\\":\\\"<=|>=|=|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.sdbl\\\"},{\\\"match\\\":\\\"(\\\\\\\\+|-|\\\\\\\\*|/|%)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.sdbl\\\"},{\\\"match\\\":\\\"(,|;)\\\",\\\"name\\\":\\\"keyword.operator.sdbl\\\"},{\\\"match\\\":\\\"(?i)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0412\u044B\u0431\u0440\u0430\u0442\u044C|Select|\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u043D\u044B\u0435|Allowed|\u0420\u0430\u0437\u043B\u0438\u0447\u043D\u044B\u0435|Distinct|\u041F\u0435\u0440\u0432\u044B\u0435|Top|\u041A\u0430\u043A|As|\u041F\u0443\u0441\u0442\u0430\u044F\u0422\u0430\u0431\u043B\u0438\u0446\u0430|EmptyTable|\u041F\u043E\u043C\u0435\u0441\u0442\u0438\u0442\u044C|Into|\u0423\u043D\u0438\u0447\u0442\u043E\u0436\u0438\u0442\u044C|Drop|\u0418\u0437|From|((\u041B\u0435\u0432\u043E\u0435|Left|\u041F\u0440\u0430\u0432\u043E\u0435|Right|\u041F\u043E\u043B\u043D\u043E\u0435|Full)\\\\\\\\s+(\u0412\u043D\u0435\u0448\u043D\u0435\u0435\\\\\\\\s+|Outer\\\\\\\\s+)?\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0435|Join)|((\u0412\u043D\u0443\u0442\u0440\u0435\u043D\u043D\u0435\u0435|Inner)\\\\\\\\s+\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0435|Join)|\u0413\u0434\u0435|Where|(\u0421\u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C\\\\\\\\s+\u041F\u043E(\\\\\\\\s+\u0413\u0440\u0443\u043F\u043F\u0438\u0440\u0443\u044E\u0449\u0438\u043C\\\\\\\\s+\u041D\u0430\u0431\u043E\u0440\u0430\u043C)?)|(Group\\\\\\\\s+By(\\\\\\\\s+Grouping\\\\\\\\s+Set)?)|\u0418\u043C\u0435\u044E\u0449\u0438\u0435|Having|\u041E\u0431\u044A\u0435\u0434\u0438\u043D\u0438\u0442\u044C(\\\\\\\\s+\u0412\u0441\u0435)?|Union(\\\\\\\\s+All)?|(\u0423\u043F\u043E\u0440\u044F\u0434\u043E\u0447\u0438\u0442\u044C\\\\\\\\s+\u041F\u043E)|(Order\\\\\\\\s+By)|\u0410\u0432\u0442\u043E\u0443\u043F\u043E\u0440\u044F\u0434\u043E\u0447\u0438\u0432\u0430\u043D\u0438\u0435|Autoorder|\u0418\u0442\u043E\u0433\u0438|Totals|\u041F\u043E(\\\\\\\\s+\u041E\u0431\u0449\u0438\u0435)?|By(\\\\\\\\s+Overall)?|(\u0422\u043E\u043B\u044C\u043A\u043E\\\\\\\\s+)?\u0418\u0435\u0440\u0430\u0440\u0445\u0438\u044F|(Only\\\\\\\\s+)?Hierarchy|\u041F\u0435\u0440\u0438\u043E\u0434\u0430\u043C\u0438|Periods|\u0418\u043D\u0434\u0435\u043A\u0441\u0438\u0440\u043E\u0432\u0430\u0442\u044C|Index|\u0412\u044B\u0440\u0430\u0437\u0438\u0442\u044C|Cast|\u0412\u043E\u0437\u0440|Asc|\u0423\u0431\u044B\u0432|Desc|\u0414\u043B\u044F\\\\\\\\s+\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F|(For\\\\\\\\s+Update(\\\\\\\\s+Of)?)|\u0421\u043F\u0435\u0446\u0441\u0438\u043C\u0432\u043E\u043B|Escape|\u0421\u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u043E\u041F\u043E|GroupedBy)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"keyword.control.sdbl\\\"},{\\\"comment\\\":\\\"\u0424\u0443\u043D\u043A\u0446\u0438\u0438 \u044F\u0437\u044B\u043A\u0430 \u0437\u0430\u043F\u0440\u043E\u0441\u043E\u0432\\\",\\\"match\\\":\\\"(?i)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|Value|\u0414\u0430\u0442\u0430\u0412\u0440\u0435\u043C\u044F|DateTime|\u0422\u0438\u043F|Type)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.sdbl\\\"},{\\\"comment\\\":\\\"\u0424\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0441\u0442\u0440\u043E\u043A\u0430\u043C\u0438\\\",\\\"match\\\":\\\"(?i)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u043E\u0434\u0441\u0442\u0440\u043E\u043A\u0430|Substring|\u041D\u0420\u0435\u0433|Lower|\u0412\u0420\u0435\u0433|Upper|\u041B\u0435\u0432|Left|\u041F\u0440\u0430\u0432|Right|\u0414\u043B\u0438\u043D\u0430\u0421\u0442\u0440\u043E\u043A\u0438|StringLength|\u0421\u0442\u0440\u041D\u0430\u0439\u0442\u0438|StrFind|\u0421\u0442\u0440\u0417\u0430\u043C\u0435\u043D\u0438\u0442\u044C|StrReplace|\u0421\u043E\u043A\u0440\u041B\u041F|TrimAll|\u0421\u043E\u043A\u0440\u041B|TrimL|\u0421\u043E\u043A\u0440\u041F|TrimR)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.sdbl\\\"},{\\\"comment\\\":\\\"\u0424\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0434\u0430\u0442\u0430\u043C\u0438\\\",\\\"match\\\":\\\"(?i)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0413\u043E\u0434|Year|\u041A\u0432\u0430\u0440\u0442\u0430\u043B|Quarter|\u041C\u0435\u0441\u044F\u0446|Month|\u0414\u0435\u043D\u044C\u0413\u043E\u0434\u0430|DayOfYear|\u0414\u0435\u043D\u044C|Day|\u041D\u0435\u0434\u0435\u043B\u044F|Week|\u0414\u0435\u043D\u044C\u041D\u0435\u0434\u0435\u043B\u0438|Weekday|\u0427\u0430\u0441|Hour|\u041C\u0438\u043D\u0443\u0442\u0430|Minute|\u0421\u0435\u043A\u0443\u043D\u0434\u0430|Second|\u041D\u0430\u0447\u0430\u043B\u043E\u041F\u0435\u0440\u0438\u043E\u0434\u0430|BeginOfPeriod|\u041A\u043E\u043D\u0435\u0446\u041F\u0435\u0440\u0438\u043E\u0434\u0430|EndOfPeriod|\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C\u041A\u0414\u0430\u0442\u0435|DateAdd|\u0420\u0430\u0437\u043D\u043E\u0441\u0442\u044C\u0414\u0430\u0442|DateDiff|\u041F\u043E\u043B\u0443\u0433\u043E\u0434\u0438\u0435|HalfYear|\u0414\u0435\u043A\u0430\u0434\u0430|TenDays)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.sdbl\\\"},{\\\"comment\\\":\\\"\u0424\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0447\u0438\u0441\u043B\u0430\u043C\u0438\\\",\\\"match\\\":\\\"(?i)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(ACOS|COS|ASIN|SIN|ATAN|TAN|EXP|POW|LOG|LOG10|\u0426\u0435\u043B|Int|\u041E\u043A\u0440|Round|SQRT)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.sdbl\\\"},{\\\"comment\\\":\\\"\u0410\u0433\u0440\u0435\u0433\u0430\u0442\u043D\u044B\u0435 \u0444\u0443\u043D\u043A\u0446\u0438\u0438\\\",\\\"match\\\":\\\"(?i)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0421\u0443\u043C\u043C\u0430|Sum|\u0421\u0440\u0435\u0434\u043D\u0435\u0435|Avg|\u041C\u0438\u043D\u0438\u043C\u0443\u043C|Min|\u041C\u0430\u043A\u0441\u0438\u043C\u0443\u043C|Max|\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E|Count)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.sdbl\\\"},{\\\"comment\\\":\\\"\u041F\u0440\u043E\u0447\u0438\u0435 \u0444\u0443\u043D\u043A\u0446\u0438\u0438\\\",\\\"match\\\":\\\"(?i)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0415\u0441\u0442\u044CNULL|IsNULL|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435|Presentation|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u0421\u0441\u044B\u043B\u043A\u0438|RefPresentation|\u0422\u0438\u043F\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|ValueType|\u0410\u0432\u0442\u043E\u043D\u043E\u043C\u0435\u0440\u0417\u0430\u043F\u0438\u0441\u0438|RecordAutoNumber|\u0420\u0430\u0437\u043C\u0435\u0440\u0425\u0440\u0430\u043D\u0438\u043C\u044B\u0445\u0414\u0430\u043D\u043D\u044B\u0445|StoredDataSize|\u0423\u043D\u0438\u043A\u0430\u043B\u044C\u043D\u044B\u0439\u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440|UUID)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.sdbl\\\"},{\\\"match\\\":\\\"(?i)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.])(\u0427\u0438\u0441\u043B\u043E|Number|\u0421\u0442\u0440\u043E\u043A\u0430|String|\u0414\u0430\u0442\u0430|Date|\u0411\u0443\u043B\u0435\u0432\u043E|Boolean)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"support.type.sdbl\\\"},{\\\"match\\\":\\\"(&[\\\\\\\\w\u0430-\u044F\u0451]+)\\\",\\\"name\\\":\\\"variable.parameter.sdbl\\\"}],\\\"scopeName\\\":\\\"source.sdbl\\\",\\\"aliases\\\":[\\\"1c-query\\\"]}\"))\n\nexport default [\nlang\n]\n", "import sdbl from './sdbl.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"1C (Enterprise)\\\",\\\"fileTypes\\\":[\\\"bsl\\\",\\\"os\\\"],\\\"name\\\":\\\"bsl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#basic\\\"},{\\\"include\\\":\\\"#miscellaneous\\\"},{\\\"begin\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u0430|Procedure|\u0424\u0443\u043D\u043A\u0446\u0438\u044F|Function)\\\\\\\\s+([a-z\u0430-\u044F\u04510-9_]+)\\\\\\\\s*(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.bsl\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.bsl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.bracket.begin.bsl\\\"}},\\\"comment\\\":\\\"Proc and function definition\\\",\\\"end\\\":\\\"(?i:(\\\\\\\\))\\\\\\\\s*((\u042D\u043A\u0441\u043F\u043E\u0440\u0442|Export)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$))?)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.end.bsl\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.bsl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#annotations\\\"},{\\\"include\\\":\\\"#basic\\\"},{\\\"match\\\":\\\"(=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.bsl\\\"},{\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0417\u043D\u0430\u0447|Val)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$))\\\",\\\"name\\\":\\\"storage.modifier.bsl\\\"},{\\\"match\\\":\\\"(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)((?<==)(?i)[a-z\u0430-\u044F\u04510-9_]+)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"invalid.illegal.bsl\\\"},{\\\"match\\\":\\\"(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)((?<==\\\\\\\\s)\\\\\\\\s*(?i)[a-z\u0430-\u044F\u04510-9_]+)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"invalid.illegal.bsl\\\"},{\\\"match\\\":\\\"(?i:[a-z\u0430-\u044F\u04510-9_]+)\\\",\\\"name\\\":\\\"variable.parameter.bsl\\\"}]},{\\\"begin\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u0435\u0440\u0435\u043C|Var)\\\\\\\\s+([a-z\u0430-\u044F\u04510-9_]+)\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.var.bsl\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.bsl\\\"}},\\\"comment\\\":\\\"Define of variable\\\",\\\"end\\\":\\\"(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.bsl\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"keyword.operator.bsl\\\"},{\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u042D\u043A\u0441\u043F\u043E\u0440\u0442|Export)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$))\\\",\\\"name\\\":\\\"storage.modifier.bsl\\\"},{\\\"match\\\":\\\"(?i:[a-z\u0430-\u044F\u04510-9_]+)\\\",\\\"name\\\":\\\"variable.bsl\\\"}]},{\\\"begin\\\":\\\"(?i:(?<=;|^)\\\\\\\\s*(\u0415\u0441\u043B\u0438|If))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.bsl\\\"}},\\\"comment\\\":\\\"Conditional\\\",\\\"end\\\":\\\"(?i:(\u0422\u043E\u0433\u0434\u0430|Then))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.bsl\\\"}},\\\"name\\\":\\\"meta.conditional.bsl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#basic\\\"},{\\\"include\\\":\\\"#miscellaneous\\\"}]},{\\\"begin\\\":\\\"(?i:(?<=;|^)\\\\\\\\s*([\\\\\\\\w\u0430-\u044F\u0451]+))\\\\\\\\s*(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.assignment.bsl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.bsl\\\"}},\\\"comment\\\":\\\"Variable assignment\\\",\\\"end\\\":\\\"(?i:(?=(;|\u0418\u043D\u0430\u0447\u0435|\u041A\u043E\u043D\u0435\u0446|Els|End)))\\\",\\\"name\\\":\\\"meta.var-single-variable.bsl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#basic\\\"},{\\\"include\\\":\\\"#miscellaneous\\\"}]},{\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041A\u043E\u043D\u0435\u0446\u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B|EndProcedure|\u041A\u043E\u043D\u0435\u0446\u0424\u0443\u043D\u043A\u0446\u0438\u0438|EndFunction)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$))\\\",\\\"name\\\":\\\"storage.type.bsl\\\"},{\\\"match\\\":\\\"(?i)#(\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C|Use)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"keyword.control.import.bsl\\\"},{\\\"match\\\":\\\"(?i)#native\\\",\\\"name\\\":\\\"keyword.control.native.bsl\\\"},{\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u0440\u0435\u0440\u0432\u0430\u0442\u044C|Break|\u041F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C|Continue|\u0412\u043E\u0437\u0432\u0440\u0430\u0442|Return)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$))\\\",\\\"name\\\":\\\"keyword.control.bsl\\\"},{\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0415\u0441\u043B\u0438|If|\u0418\u043D\u0430\u0447\u0435|Else|\u0418\u043D\u0430\u0447\u0435\u0415\u0441\u043B\u0438|ElsIf|\u0422\u043E\u0433\u0434\u0430|Then|\u041A\u043E\u043D\u0435\u0446\u0415\u0441\u043B\u0438|EndIf)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$))\\\",\\\"name\\\":\\\"keyword.control.conditional.bsl\\\"},{\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u043E\u043F\u044B\u0442\u043A\u0430|Try|\u0418\u0441\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435|Except|\u041A\u043E\u043D\u0435\u0446\u041F\u043E\u043F\u044B\u0442\u043A\u0438|EndTry|\u0412\u044B\u0437\u0432\u0430\u0442\u044C\u0418\u0441\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435|Raise)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$))\\\",\\\"name\\\":\\\"keyword.control.exception.bsl\\\"},{\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u043E\u043A\u0430|While|(\u0414\u043B\u044F|For)(\\\\\\\\s+(\u041A\u0430\u0436\u0434\u043E\u0433\u043E|Each))?|\u0418\u0437|In|\u041F\u043E|To|\u0426\u0438\u043A\u043B|Do|\u041A\u043E\u043D\u0435\u0446\u0426\u0438\u043A\u043B\u0430|EndDo)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$))\\\",\\\"name\\\":\\\"keyword.control.repeat.bsl\\\"},{\\\"match\\\":\\\"(?i:&(\u041D\u0430\u041A\u043B\u0438\u0435\u043D\u0442\u0435((\u041D\u0430\u0421\u0435\u0440\u0432\u0435\u0440\u0435(\u0411\u0435\u0437\u041A\u043E\u043D\u0442\u0435\u043A\u0441\u0442\u0430)?)?)|AtClient((AtServer(NoContext)?)?)|\u041D\u0430\u0421\u0435\u0440\u0432\u0435\u0440\u0435(\u0411\u0435\u0437\u041A\u043E\u043D\u0442\u0435\u043A\u0441\u0442\u0430)?|AtServer(NoContext)?))\\\",\\\"name\\\":\\\"storage.modifier.directive.bsl\\\"},{\\\"include\\\":\\\"#annotations\\\"},{\\\"match\\\":\\\"(?i:#(\u0415\u0441\u043B\u0438|If|\u0418\u043D\u0430\u0447\u0435\u0415\u0441\u043B\u0438|ElsIf|\u0418\u043D\u0430\u0447\u0435|Else|\u041A\u043E\u043D\u0435\u0446\u0415\u0441\u043B\u0438|EndIf).*(\u0422\u043E\u0433\u0434\u0430|Then)?)\\\",\\\"name\\\":\\\"keyword.other.preprocessor.bsl\\\"},{\\\"begin\\\":\\\"(?i)(#(\u041E\u0431\u043B\u0430\u0441\u0442\u044C|Region))(\\\\\\\\s+([\\\\\\\\w\u0430-\u044F\u0451]+))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.section.bsl\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.section.bsl\\\"}},\\\"comment\\\":\\\"Region start\\\",\\\"end\\\":\\\"$\\\"},{\\\"comment\\\":\\\"Region end\\\",\\\"match\\\":\\\"(?i)#(\u041A\u043E\u043D\u0435\u0446\u041E\u0431\u043B\u0430\u0441\u0442\u0438|EndRegion)\\\",\\\"name\\\":\\\"keyword.other.section.bsl\\\"},{\\\"comment\\\":\\\"Delete start\\\",\\\"match\\\":\\\"(?i)#(\u0423\u0434\u0430\u043B\u0435\u043D\u0438\u0435|Delete)\\\",\\\"name\\\":\\\"keyword.other.section.bsl\\\"},{\\\"comment\\\":\\\"Delete end\\\",\\\"match\\\":\\\"(?i)#(\u041A\u043E\u043D\u0435\u0446\u0423\u0434\u0430\u043B\u0435\u043D\u0438\u044F|EndDelete)\\\",\\\"name\\\":\\\"keyword.other.section.bsl\\\"},{\\\"comment\\\":\\\"Inster start\\\",\\\"match\\\":\\\"(?i)#(\u0412\u0441\u0442\u0430\u0432\u043A\u0430|Insert)\\\",\\\"name\\\":\\\"keyword.other.section.bsl\\\"},{\\\"comment\\\":\\\"Insert end\\\",\\\"match\\\":\\\"(?i)#(\u041A\u043E\u043D\u0435\u0446\u0412\u0441\u0442\u0430\u0432\u043A\u0438|EndInsert)\\\",\\\"name\\\":\\\"keyword.other.section.bsl\\\"}],\\\"repository\\\":{\\\"annotations\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(&([a-z\u0430-\u044F\u04510-9_]+))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.annotation.bsl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.bracket.begin.bsl\\\"}},\\\"comment\\\":\\\"Annotations with parameters\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.end.bsl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#basic\\\"},{\\\"match\\\":\\\"(=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.bsl\\\"},{\\\"match\\\":\\\"(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)((?<==)(?i)[a-z\u0430-\u044F\u04510-9_]+)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"invalid.illegal.bsl\\\"},{\\\"match\\\":\\\"(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)((?<==\\\\\\\\s)\\\\\\\\s*(?i)[a-z\u0430-\u044F\u04510-9_]+)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"invalid.illegal.bsl\\\"},{\\\"match\\\":\\\"(?i)[a-z\u0430-\u044F\u04510-9_]+\\\",\\\"name\\\":\\\"variable.annotation.bsl\\\"}]},{\\\"comment\\\":\\\"Annotations without parameters\\\",\\\"match\\\":\\\"(?i)(&([a-z\u0430-\u044F\u04510-9_]+))\\\",\\\"name\\\":\\\"storage.type.annotation.bsl\\\"}]},\\\"basic\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.bsl\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\\\\\\\\\"(?![\\\\\\\\\\\\\\\"])\\\",\\\"name\\\":\\\"string.quoted.double.bsl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#query\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.bsl\\\"},{\\\"match\\\":\\\"(^\\\\\\\\s*//.*$)\\\",\\\"name\\\":\\\"comment.line.double-slash.bsl\\\"}]},{\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041D\u0435\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043E|Undefined|\u0418\u0441\u0442\u0438\u043D\u0430|True|\u041B\u043E\u0436\u044C|False|NULL)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$))\\\",\\\"name\\\":\\\"constant.language.bsl\\\"},{\\\"match\\\":\\\"(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\\\\\\\\d+\\\\\\\\.?\\\\\\\\d*)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"name\\\":\\\"constant.numeric.bsl\\\"},{\\\"match\\\":\\\"\\\\\\\\'((\\\\\\\\d{4}[^\\\\\\\\d\\\\\\\\']*\\\\\\\\d{2}[^\\\\\\\\d\\\\\\\\']*\\\\\\\\d{2})([^\\\\\\\\d\\\\\\\\']*\\\\\\\\d{2}[^\\\\\\\\d\\\\\\\\']*\\\\\\\\d{2}([^\\\\\\\\d\\\\\\\\']*\\\\\\\\d{2})?)?)\\\\\\\\'\\\",\\\"name\\\":\\\"constant.other.date.bsl\\\"},{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"keyword.operator.bsl\\\"},{\\\"match\\\":\\\"(\\\\\\\\()\\\",\\\"name\\\":\\\"punctuation.bracket.begin.bsl\\\"},{\\\"match\\\":\\\"(\\\\\\\\))\\\",\\\"name\\\":\\\"punctuation.bracket.end.bsl\\\"}]},\\\"miscellaneous\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041D\u0415|NOT|\u0418|AND|\u0418\u041B\u0418|OR)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$))\\\",\\\"name\\\":\\\"keyword.operator.logical.bsl\\\"},{\\\"match\\\":\\\"<=|>=|=|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.bsl\\\"},{\\\"match\\\":\\\"(\\\\\\\\+|-|\\\\\\\\*|/|%)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.bsl\\\"},{\\\"match\\\":\\\"(;|\\\\\\\\?)\\\",\\\"name\\\":\\\"keyword.operator.bsl\\\"},{\\\"comment\\\":\\\"Functions w/o brackets\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041D\u043E\u0432\u044B\u0439|New)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$))\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C\u0438 \u0442\u0438\u043F\u0430 \u0421\u0442\u0440\u043E\u043A\u0430\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0421\u0442\u0440\u0414\u043B\u0438\u043D\u0430|StrLen|\u0421\u043E\u043A\u0440\u041B|TrimL|\u0421\u043E\u043A\u0440\u041F|TrimR|\u0421\u043E\u043A\u0440\u041B\u041F|TrimAll|\u041B\u0435\u0432|Left|\u041F\u0440\u0430\u0432|Right|\u0421\u0440\u0435\u0434|Mid|\u0421\u0442\u0440\u041D\u0430\u0439\u0442\u0438|StrFind|\u0412\u0420\u0435\u0433|Upper|\u041D\u0420\u0435\u0433|Lower|\u0422\u0420\u0435\u0433|Title|\u0421\u0438\u043C\u0432\u043E\u043B|Char|\u041A\u043E\u0434\u0421\u0438\u043C\u0432\u043E\u043B\u0430|CharCode|\u041F\u0443\u0441\u0442\u0430\u044F\u0421\u0442\u0440\u043E\u043A\u0430|IsBlankString|\u0421\u0442\u0440\u0417\u0430\u043C\u0435\u043D\u0438\u0442\u044C|StrReplace|\u0421\u0442\u0440\u0427\u0438\u0441\u043B\u043E\u0421\u0442\u0440\u043E\u043A|StrLineCount|\u0421\u0442\u0440\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u0442\u0440\u043E\u043A\u0443|StrGetLine|\u0421\u0442\u0440\u0427\u0438\u0441\u043B\u043E\u0412\u0445\u043E\u0436\u0434\u0435\u043D\u0438\u0439|StrOccurrenceCount|\u0421\u0442\u0440\u0421\u0440\u0430\u0432\u043D\u0438\u0442\u044C|StrCompare|\u0421\u0442\u0440\u041D\u0430\u0447\u0438\u043D\u0430\u0435\u0442\u0441\u044F\u0421|StrStartWith|\u0421\u0442\u0440\u0417\u0430\u043A\u0430\u043D\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044F\u041D\u0430|StrEndsWith|\u0421\u0442\u0440\u0420\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u044C|StrSplit|\u0421\u0442\u0440\u0421\u043E\u0435\u0434\u0438\u043D\u0438\u0442\u044C|StrConcat)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C\u0438 \u0442\u0438\u043F\u0430 \u0427\u0438\u0441\u043B\u043E\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0426\u0435\u043B|Int|\u041E\u043A\u0440|Round|ACos|ASin|ATan|Cos|Exp|Log|Log10|Pow|Sin|Sqrt|Tan)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C\u0438 \u0442\u0438\u043F\u0430 \u0414\u0430\u0442\u0430\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0413\u043E\u0434|Year|\u041C\u0435\u0441\u044F\u0446|Month|\u0414\u0435\u043D\u044C|Day|\u0427\u0430\u0441|Hour|\u041C\u0438\u043D\u0443\u0442\u0430|Minute|\u0421\u0435\u043A\u0443\u043D\u0434\u0430|Second|\u041D\u0430\u0447\u0430\u043B\u043E\u0413\u043E\u0434\u0430|BegOfYear|\u041D\u0430\u0447\u0430\u043B\u043E\u0414\u043D\u044F|BegOfDay|\u041D\u0430\u0447\u0430\u043B\u043E\u041A\u0432\u0430\u0440\u0442\u0430\u043B\u0430|BegOfQuarter|\u041D\u0430\u0447\u0430\u043B\u043E\u041C\u0435\u0441\u044F\u0446\u0430|BegOfMonth|\u041D\u0430\u0447\u0430\u043B\u043E\u041C\u0438\u043D\u0443\u0442\u044B|BegOfMinute|\u041D\u0430\u0447\u0430\u043B\u043E\u041D\u0435\u0434\u0435\u043B\u0438|BegOfWeek|\u041D\u0430\u0447\u0430\u043B\u043E\u0427\u0430\u0441\u0430|BegOfHour|\u041A\u043E\u043D\u0435\u0446\u0413\u043E\u0434\u0430|EndOfYear|\u041A\u043E\u043D\u0435\u0446\u0414\u043D\u044F|EndOfDay|\u041A\u043E\u043D\u0435\u0446\u041A\u0432\u0430\u0440\u0442\u0430\u043B\u0430|EndOfQuarter|\u041A\u043E\u043D\u0435\u0446\u041C\u0435\u0441\u044F\u0446\u0430|EndOfMonth|\u041A\u043E\u043D\u0435\u0446\u041C\u0438\u043D\u0443\u0442\u044B|EndOfMinute|\u041A\u043E\u043D\u0435\u0446\u041D\u0435\u0434\u0435\u043B\u0438|EndOfWeek|\u041A\u043E\u043D\u0435\u0446\u0427\u0430\u0441\u0430|EndOfHour|\u041D\u0435\u0434\u0435\u043B\u044F\u0413\u043E\u0434\u0430|WeekOfYear|\u0414\u0435\u043D\u044C\u0413\u043E\u0434\u0430|DayOfYear|\u0414\u0435\u043D\u044C\u041D\u0435\u0434\u0435\u043B\u0438|WeekDay|\u0422\u0435\u043A\u0443\u0449\u0430\u044F\u0414\u0430\u0442\u0430|CurrentDate|\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C\u041C\u0435\u0441\u044F\u0446|AddMonth)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u043C\u0438 \u0442\u0438\u043F\u0430 \u0422\u0438\u043F\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0422\u0438\u043F|Type|\u0422\u0438\u043F\u0417\u043D\u0447|TypeOf)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u043F\u0440\u0435\u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u043D\u0438\u044F \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0439\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0411\u0443\u043B\u0435\u0432\u043E|Boolean|\u0427\u0438\u0441\u043B\u043E|Number|\u0421\u0442\u0440\u043E\u043A\u0430|String|\u0414\u0430\u0442\u0430|Date)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u043F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0438\u043D\u0442\u0435\u0440\u0430\u043A\u0442\u0438\u0432\u043D\u043E\u0439 \u0440\u0430\u0431\u043E\u0442\u044B\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0412\u043E\u043F\u0440\u043E\u0441|ShowQueryBox|\u0412\u043E\u043F\u0440\u043E\u0441|DoQueryBox|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435|ShowMessageBox|\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435|DoMessageBox|\u0421\u043E\u043E\u0431\u0449\u0438\u0442\u044C|Message|\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F|ClearMessages|\u041E\u043F\u043E\u0432\u0435\u0441\u0442\u0438\u0442\u044C\u041E\u0431\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u0438|NotifyChanged|\u0421\u043E\u0441\u0442\u043E\u044F\u043D\u0438\u0435|Status|\u0421\u0438\u0433\u043D\u0430\u043B|Beep|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|ShowValue|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|OpenValue|\u041E\u043F\u043E\u0432\u0435\u0441\u0442\u0438\u0442\u044C|Notify|\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0430\u041F\u0440\u0435\u0440\u044B\u0432\u0430\u043D\u0438\u044F\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|UserInterruptProcessing|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0421\u043E\u0434\u0435\u0440\u0436\u0430\u043D\u0438\u0435\u0421\u043F\u0440\u0430\u0432\u043A\u0438|OpenHelpContent|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0418\u043D\u0434\u0435\u043A\u0441\u0421\u043F\u0440\u0430\u0432\u043A\u0438|OpenHelpIndex|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0421\u043F\u0440\u0430\u0432\u043A\u0443|OpenHelp|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E\u041E\u0431\u041E\u0448\u0438\u0431\u043A\u0435|ShowErrorInfo|\u041A\u0440\u0430\u0442\u043A\u043E\u0435\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041E\u0448\u0438\u0431\u043A\u0438|BriefErrorDescription|\u041F\u043E\u0434\u0440\u043E\u0431\u043D\u043E\u0435\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041E\u0448\u0438\u0431\u043A\u0438|DetailErrorDescription|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0424\u043E\u0440\u043C\u0443|GetForm|\u0417\u0430\u043A\u0440\u044B\u0442\u044C\u0421\u043F\u0440\u0430\u0432\u043A\u0443|CloseHelp|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u041E\u043F\u043E\u0432\u0435\u0449\u0435\u043D\u0438\u0435\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|ShowUserNotification|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0424\u043E\u0440\u043C\u0443|OpenForm|\u041E\u0442\u043A\u0440\u044B\u0442\u044C\u0424\u043E\u0440\u043C\u0443\u041C\u043E\u0434\u0430\u043B\u044C\u043D\u043E|OpenFormModal|\u0410\u043A\u0442\u0438\u0432\u043D\u043E\u0435\u041E\u043A\u043D\u043E|ActiveWindow|\u0412\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0443\u041E\u043F\u043E\u0432\u0435\u0449\u0435\u043D\u0438\u044F|ExecuteNotifyProcessing)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0434\u043B\u044F \u0432\u044B\u0437\u043E\u0432\u0430 \u0434\u0438\u0430\u043B\u043E\u0433\u0430 \u0432\u0432\u043E\u0434\u0430 \u0434\u0430\u043D\u043D\u044B\u0445\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0412\u0432\u043E\u0434\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|ShowInputValue|\u0412\u0432\u0435\u0441\u0442\u0438\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|InputValue|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0412\u0432\u043E\u0434\u0427\u0438\u0441\u043B\u0430|ShowInputNumber|\u0412\u0432\u0435\u0441\u0442\u0438\u0427\u0438\u0441\u043B\u043E|InputNumber|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0412\u0432\u043E\u0434\u0421\u0442\u0440\u043E\u043A\u0438|ShowInputString|\u0412\u0432\u0435\u0441\u0442\u0438\u0421\u0442\u0440\u043E\u043A\u0443|InputString|\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C\u0412\u0432\u043E\u0434\u0414\u0430\u0442\u044B|ShowInputDate|\u0412\u0432\u0435\u0441\u0442\u0438\u0414\u0430\u0442\u0443|InputDate)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0444\u043E\u0440\u043C\u0430\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0424\u043E\u0440\u043C\u0430\u0442|Format|\u0427\u0438\u0441\u043B\u043E\u041F\u0440\u043E\u043F\u0438\u0441\u044C\u044E|NumberInWords|\u041D\u0421\u0442\u0440|NStr|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041F\u0435\u0440\u0438\u043E\u0434\u0430|PeriodPresentation|\u0421\u0442\u0440\u0428\u0430\u0431\u043B\u043E\u043D|StrTemplate)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u043E\u0431\u0440\u0430\u0449\u0435\u043D\u0438\u044F \u043A \u043A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u0431\u0449\u0438\u0439\u041C\u0430\u043A\u0435\u0442|GetCommonTemplate|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u0431\u0449\u0443\u044E\u0424\u043E\u0440\u043C\u0443|GetCommonForm|\u041F\u0440\u0435\u0434\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0435\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|PredefinedValue|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041F\u043E\u043B\u043D\u043E\u0435\u0418\u043C\u044F\u041F\u0440\u0435\u0434\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u043E\u0433\u043E\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|GetPredefinedValueFullName)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u043F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0441\u0435\u0430\u043D\u0441\u0430 \u0440\u0430\u0431\u043E\u0442\u044B\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u0421\u0438\u0441\u0442\u0435\u043C\u044B|GetCaption|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u043A\u043E\u0440\u043E\u0441\u0442\u044C\u041A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0433\u043E\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F|GetClientConnectionSpeed|\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u041E\u0436\u0438\u0434\u0430\u043D\u0438\u044F|AttachIdleHandler|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u0421\u0438\u0441\u0442\u0435\u043C\u044B|SetCaption|\u041E\u0442\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u041E\u0436\u0438\u0434\u0430\u043D\u0438\u044F|DetachIdleHandler|\u0418\u043C\u044F\u041A\u043E\u043C\u043F\u044C\u044E\u0442\u0435\u0440\u0430|ComputerName|\u0417\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044C\u0420\u0430\u0431\u043E\u0442\u0443\u0421\u0438\u0441\u0442\u0435\u043C\u044B|Exit|\u0418\u043C\u044F\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|UserName|\u041F\u0440\u0435\u043A\u0440\u0430\u0442\u0438\u0442\u044C\u0420\u0430\u0431\u043E\u0442\u0443\u0421\u0438\u0441\u0442\u0435\u043C\u044B|Terminate|\u041F\u043E\u043B\u043D\u043E\u0435\u0418\u043C\u044F\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|UserFullName|\u0417\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0420\u0430\u0431\u043E\u0442\u0443\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|LockApplication|\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u041F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u044B|BinDir|\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u044B\u0445\u0424\u0430\u0439\u043B\u043E\u0432|TempFilesDir|\u041F\u0440\u0430\u0432\u043E\u0414\u043E\u0441\u0442\u0443\u043F\u0430|AccessRight|\u0420\u043E\u043B\u044C\u0414\u043E\u0441\u0442\u0443\u043F\u043D\u0430|IsInRole|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u042F\u0437\u044B\u043A|CurrentLanguage|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u041A\u043E\u0434\u041B\u043E\u043A\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438|CurrentLocaleCode|\u0421\u0442\u0440\u043E\u043A\u0430\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|InfoBaseConnectionString|\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u041E\u043F\u043E\u0432\u0435\u0449\u0435\u043D\u0438\u044F|AttachNotificationHandler|\u041E\u0442\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u041E\u043F\u043E\u0432\u0435\u0449\u0435\u043D\u0438\u044F|DetachNotificationHandler|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044E|GetUserMessages|\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B\u0414\u043E\u0441\u0442\u0443\u043F\u0430|AccessParameters|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|ApplicationPresentation|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u042F\u0437\u044B\u043A\u0421\u0438\u0441\u0442\u0435\u043C\u044B|CurrentSystemLanguage|\u0417\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C\u0421\u0438\u0441\u0442\u0435\u043C\u0443|RunSystem|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u0420\u0435\u0436\u0438\u043C\u0417\u0430\u043F\u0443\u0441\u043A\u0430|CurrentRunMode|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0427\u0430\u0441\u043E\u0432\u043E\u0439\u041F\u043E\u044F\u0441\u0421\u0435\u0430\u043D\u0441\u0430|SetSessionTimeZone|\u0427\u0430\u0441\u043E\u0432\u043E\u0439\u041F\u043E\u044F\u0441\u0421\u0435\u0430\u043D\u0441\u0430|SessionTimeZone|\u0422\u0435\u043A\u0443\u0449\u0430\u044F\u0414\u0430\u0442\u0430\u0421\u0435\u0430\u043D\u0441\u0430|CurrentSessionDate|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041A\u0440\u0430\u0442\u043A\u0438\u0439\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|SetShortApplicationCaption|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041A\u0440\u0430\u0442\u043A\u0438\u0439\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|GetShortApplicationCaption|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041F\u0440\u0430\u0432\u0430|RightPresentation|\u0412\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u044C\u041F\u0440\u043E\u0432\u0435\u0440\u043A\u0443\u041F\u0440\u0430\u0432\u0414\u043E\u0441\u0442\u0443\u043F\u0430|VerifyAccessRights|\u0420\u0430\u0431\u043E\u0447\u0438\u0439\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0414\u0430\u043D\u043D\u044B\u0445\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|UserDataWorkDir|\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432|DocumentsDir|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E\u042D\u043A\u0440\u0430\u043D\u043E\u0432\u041A\u043B\u0438\u0435\u043D\u0442\u0430|GetClientDisplaysInformation|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u0412\u0430\u0440\u0438\u0430\u043D\u0442\u041E\u0441\u043D\u043E\u0432\u043D\u043E\u0433\u043E\u0428\u0440\u0438\u0444\u0442\u0430\u041A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0433\u043E\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|ClientApplicationBaseFontCurrentVariant|\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u0412\u0430\u0440\u0438\u0430\u043D\u0442\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\u041A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0433\u043E\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|ClientApplicationInterfaceCurrentVariant|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u041A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0433\u043E\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|SetClientApplicationCaption|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A\u041A\u043B\u0438\u0435\u043D\u0442\u0441\u043A\u043E\u0433\u043E\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|GetClientApplicationCaption|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u0435\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0430\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u044B\u0445\u0424\u0430\u0439\u043B\u043E\u0432|BeginGettingTempFilesDir|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u0435\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0430\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432|BeginGettingDocumentsDir|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0447\u0435\u0433\u043E\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0430\u0414\u0430\u043D\u043D\u044B\u0445\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|BeginGettingUserDataWorkDir|\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u0417\u0430\u043F\u0440\u043E\u0441\u0430\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A\u041A\u043B\u0438\u0435\u043D\u0442\u0430\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|AttachLicensingClientParametersRequestHandler|\u041E\u0442\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u0417\u0430\u043F\u0440\u043E\u0441\u0430\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A\u041A\u043B\u0438\u0435\u043D\u0442\u0430\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|DetachLicensingClientParametersRequestHandler|\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0411\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0438\u041C\u043E\u0431\u0438\u043B\u044C\u043D\u043E\u0433\u043E\u0423\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0430|MobileDeviceLibraryDir)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u043F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0438\u044F \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0439\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0412\u0421\u0442\u0440\u043E\u043A\u0443\u0412\u043D\u0443\u0442\u0440|ValueToStringInternal|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0418\u0437\u0421\u0442\u0440\u043E\u043A\u0438\u0412\u043D\u0443\u0442\u0440|ValueFromStringInternal|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0412\u0424\u0430\u0439\u043B|ValueToFile|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0418\u0437\u0424\u0430\u0439\u043B\u0430|ValueFromFile)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u043E\u0439\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041A\u043E\u043C\u0430\u043D\u0434\u0430\u0421\u0438\u0441\u0442\u0435\u043C\u044B|System|\u0417\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435|RunApp|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044CCOM\u041E\u0431\u044A\u0435\u043A\u0442|GetCOMObject|\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0438\u041E\u0421|OSUsers|\u041D\u0430\u0447\u0430\u0442\u044C\u0417\u0430\u043F\u0443\u0441\u043A\u041F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F|BeginRunningApplication)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0432\u043D\u0435\u0448\u043D\u0438\u043C\u0438 \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0430\u043C\u0438\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u0412\u043D\u0435\u0448\u043D\u044E\u044E\u041A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0443|AttachAddIn|\u041D\u0430\u0447\u0430\u0442\u044C\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0443\u0412\u043D\u0435\u0448\u043D\u0435\u0439\u041A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u044B|BeginInstallAddIn|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0412\u043D\u0435\u0448\u043D\u044E\u044E\u041A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0443|InstallAddIn|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u0412\u043D\u0435\u0448\u043D\u0435\u0439\u041A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u044B|BeginAttachingAddIn)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0444\u0430\u0439\u043B\u0430\u043C\u0438\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0424\u0430\u0439\u043B|FileCopy|\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C\u0424\u0430\u0439\u043B|MoveFile|\u0423\u0434\u0430\u043B\u0438\u0442\u044C\u0424\u0430\u0439\u043B\u044B|DeleteFiles|\u041D\u0430\u0439\u0442\u0438\u0424\u0430\u0439\u043B\u044B|FindFiles|\u0421\u043E\u0437\u0434\u0430\u0442\u044C\u041A\u0430\u0442\u0430\u043B\u043E\u0433|CreateDirectory|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u043C\u044F\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0433\u043E\u0424\u0430\u0439\u043B\u0430|GetTempFileName|\u0420\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u044C\u0424\u0430\u0439\u043B|SplitFile|\u041E\u0431\u044A\u0435\u0434\u0438\u043D\u0438\u0442\u044C\u0424\u0430\u0439\u043B\u044B|MergeFiles|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0424\u0430\u0439\u043B|GetFile|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043C\u0435\u0449\u0435\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u0430|BeginPutFile|\u041F\u043E\u043C\u0435\u0441\u0442\u0438\u0442\u044C\u0424\u0430\u0439\u043B|PutFile|\u042D\u0442\u043E\u0410\u0434\u0440\u0435\u0441\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0433\u043E\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0430|IsTempStorageURL|\u0423\u0434\u0430\u043B\u0438\u0442\u044C\u0418\u0437\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0433\u043E\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0430|DeleteFromTempStorage|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u0437\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0433\u043E\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0430|GetFromTempStorage|\u041F\u043E\u043C\u0435\u0441\u0442\u0438\u0442\u044C\u0412\u043E\u0412\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0435\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435|PutToTempStorage|\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0424\u0430\u0439\u043B\u0430\u043C\u0438|AttachFileSystemExtension|\u041D\u0430\u0447\u0430\u0442\u044C\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0443\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0424\u0430\u0439\u043B\u0430\u043C\u0438|BeginInstallFileSystemExtension|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0424\u0430\u0439\u043B\u0430\u043C\u0438|InstallFileSystemExtension|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0424\u0430\u0439\u043B\u044B|GetFiles|\u041F\u043E\u043C\u0435\u0441\u0442\u0438\u0442\u044C\u0424\u0430\u0439\u043B\u044B|PutFiles|\u0417\u0430\u043F\u0440\u043E\u0441\u0438\u0442\u044C\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u0438\u0435\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|RequestUserPermission|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041C\u0430\u0441\u043A\u0443\u0412\u0441\u0435\u0424\u0430\u0439\u043B\u044B|GetAllFilesMask|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041C\u0430\u0441\u043A\u0443\u0412\u0441\u0435\u0424\u0430\u0439\u043B\u044B\u041A\u043B\u0438\u0435\u043D\u0442\u0430|GetClientAllFilesMask|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041C\u0430\u0441\u043A\u0443\u0412\u0441\u0435\u0424\u0430\u0439\u043B\u044B\u0421\u0435\u0440\u0432\u0435\u0440\u0430|GetServerAllFilesMask|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0420\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u0435\u043B\u044C\u041F\u0443\u0442\u0438|GetPathSeparator|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0420\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u0435\u043B\u044C\u041F\u0443\u0442\u0438\u041A\u043B\u0438\u0435\u043D\u0442\u0430|GetClientPathSeparator|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0420\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u0435\u043B\u044C\u041F\u0443\u0442\u0438\u0421\u0435\u0440\u0432\u0435\u0440\u0430|GetServerPathSeparator|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0424\u0430\u0439\u043B\u0430\u043C\u0438|BeginAttachingFileSystemExtension|\u041D\u0430\u0447\u0430\u0442\u044C\u0417\u0430\u043F\u0440\u043E\u0441\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u0438\u044F\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|BeginRequestingUserPermission|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u0438\u0441\u043A\u0424\u0430\u0439\u043B\u043E\u0432|BeginFindingFiles|\u041D\u0430\u0447\u0430\u0442\u044C\u0421\u043E\u0437\u0434\u0430\u043D\u0438\u0435\u041A\u0430\u0442\u0430\u043B\u043E\u0433\u0430|BeginCreatingDirectory|\u041D\u0430\u0447\u0430\u0442\u044C\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u0430|BeginCopyingFile|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u0430|BeginMovingFile|\u041D\u0430\u0447\u0430\u0442\u044C\u0423\u0434\u0430\u043B\u0435\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u043E\u0432|BeginDeletingFiles|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u043E\u0432|BeginGettingFiles|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u043C\u0435\u0449\u0435\u043D\u0438\u0435\u0424\u0430\u0439\u043B\u043E\u0432|BeginPuttingFiles|\u041D\u0430\u0447\u0430\u0442\u044C\u0421\u043E\u0437\u0434\u0430\u043D\u0438\u0435\u0414\u0432\u043E\u0438\u0447\u043D\u044B\u0445\u0414\u0430\u043D\u043D\u044B\u0445\u0418\u0437\u0424\u0430\u0439\u043B\u0430|BeginCreateBinaryDataFromFile)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439 \u0431\u0430\u0437\u043E\u0439\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041D\u0430\u0447\u0430\u0442\u044C\u0422\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u044E|BeginTransaction|\u0417\u0430\u0444\u0438\u043A\u0441\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0422\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u044E|CommitTransaction|\u041E\u0442\u043C\u0435\u043D\u0438\u0442\u044C\u0422\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u044E|RollbackTransaction|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041C\u043E\u043D\u043E\u043F\u043E\u043B\u044C\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|SetExclusiveMode|\u041C\u043E\u043D\u043E\u043F\u043E\u043B\u044C\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|ExclusiveMode|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u043F\u0435\u0440\u0430\u0442\u0438\u0432\u043D\u0443\u044E\u041E\u0442\u043C\u0435\u0442\u043A\u0443\u0412\u0440\u0435\u043C\u0435\u043D\u0438|GetRealTimeTimestamp|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetInfoBaseConnections|\u041D\u043E\u043C\u0435\u0440\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|InfoBaseConnectionNumber|\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0430|ConfigurationChanged|\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F\u0411\u0430\u0437\u044B\u0414\u0430\u043D\u043D\u044B\u0445\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0430\u0414\u0438\u043D\u0430\u043C\u0438\u0447\u0435\u0441\u043A\u0438|DataBaseConfigurationChangedDynamically|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u041E\u0436\u0438\u0434\u0430\u043D\u0438\u044F\u0411\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0438\u0414\u0430\u043D\u043D\u044B\u0445|SetLockWaitTime|\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C\u041D\u0443\u043C\u0435\u0440\u0430\u0446\u0438\u044E\u041E\u0431\u044A\u0435\u043A\u0442\u043E\u0432|RefreshObjectsNumbering|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u041E\u0436\u0438\u0434\u0430\u043D\u0438\u044F\u0411\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0438\u0414\u0430\u043D\u043D\u044B\u0445|GetLockWaitTime|\u041A\u043E\u0434\u041B\u043E\u043A\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|InfoBaseLocaleCode|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u0443\u044E\u0414\u043B\u0438\u043D\u0443\u041F\u0430\u0440\u043E\u043B\u0435\u0439\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439|SetUserPasswordMinLength|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041C\u0438\u043D\u0438\u043C\u0430\u043B\u044C\u043D\u0443\u044E\u0414\u043B\u0438\u043D\u0443\u041F\u0430\u0440\u043E\u043B\u0435\u0439\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439|GetUserPasswordMinLength|\u0418\u043D\u0438\u0446\u0438\u0430\u043B\u0438\u0437\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u041F\u0440\u0435\u0434\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u044B\u0435\u0414\u0430\u043D\u043D\u044B\u0435|InitializePredefinedData|\u0423\u0434\u0430\u043B\u0438\u0442\u044C\u0414\u0430\u043D\u043D\u044B\u0435\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|EraseInfoBaseData|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041F\u0440\u043E\u0432\u0435\u0440\u043A\u0443\u0421\u043B\u043E\u0436\u043D\u043E\u0441\u0442\u0438\u041F\u0430\u0440\u043E\u043B\u0435\u0439\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439|SetUserPasswordStrengthCheck|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041F\u0440\u043E\u0432\u0435\u0440\u043A\u0443\u0421\u043B\u043E\u0436\u043D\u043E\u0441\u0442\u0438\u041F\u0430\u0440\u043E\u043B\u0435\u0439\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0435\u0439|GetUserPasswordStrengthCheck|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0443\u0425\u0440\u0430\u043D\u0435\u043D\u0438\u044F\u0411\u0430\u0437\u044B\u0414\u0430\u043D\u043D\u044B\u0445|GetDBStorageStructureInfo|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041F\u0440\u0438\u0432\u0438\u043B\u0435\u0433\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|SetPrivilegedMode|\u041F\u0440\u0438\u0432\u0438\u043B\u0435\u0433\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|PrivilegedMode|\u0422\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u044F\u0410\u043A\u0442\u0438\u0432\u043D\u0430|TransactionActive|\u041D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E\u0441\u0442\u044C\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u044F\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F|ConnectionStopRequest|\u041D\u043E\u043C\u0435\u0440\u0421\u0435\u0430\u043D\u0441\u0430\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|InfoBaseSessionNumber|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u0435\u0430\u043D\u0441\u044B\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetInfoBaseSessions|\u0417\u0430\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0414\u0430\u043D\u043D\u044B\u0435\u0414\u043B\u044F\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|LockDataForEdit|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0435\u0421\u0412\u043D\u0435\u0448\u043D\u0438\u043C\u0418\u0441\u0442\u043E\u0447\u043D\u0438\u043A\u043E\u043C\u0414\u0430\u043D\u043D\u044B\u0445|ConnectExternalDataSource|\u0420\u0430\u0437\u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0414\u0430\u043D\u043D\u044B\u0435\u0414\u043B\u044F\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|UnlockDataForEdit|\u0420\u0430\u0437\u043E\u0440\u0432\u0430\u0442\u044C\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0435\u0421\u0412\u043D\u0435\u0448\u043D\u0438\u043C\u0418\u0441\u0442\u043E\u0447\u043D\u0438\u043A\u043E\u043C\u0414\u0430\u043D\u043D\u044B\u0445|DisconnectExternalDataSource|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0411\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0443\u0421\u0435\u0430\u043D\u0441\u043E\u0432|GetSessionsLock|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0411\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0443\u0421\u0435\u0430\u043D\u0441\u043E\u0432|SetSessionsLock|\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C\u041F\u043E\u0432\u0442\u043E\u0440\u043D\u043E\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u043C\u044B\u0435\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|RefreshReusableValues|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|SetSafeMode|\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C|SafeMode|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0414\u0430\u043D\u043D\u044B\u0435\u0412\u044B\u0431\u043E\u0440\u0430|GetChoiceData|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0427\u0430\u0441\u043E\u0432\u043E\u0439\u041F\u043E\u044F\u0441\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|SetInfoBaseTimeZone|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0427\u0430\u0441\u043E\u0432\u043E\u0439\u041F\u043E\u044F\u0441\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetInfoBaseTimeZone|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0435\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438\u0411\u0430\u0437\u044B\u0414\u0430\u043D\u043D\u044B\u0445|GetDataBaseConfigurationUpdate|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C\u0420\u0430\u0437\u0434\u0435\u043B\u0435\u043D\u0438\u044F\u0414\u0430\u043D\u043D\u044B\u0445|SetDataSeparationSafeMode|\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u044B\u0439\u0420\u0435\u0436\u0438\u043C\u0420\u0430\u0437\u0434\u0435\u043B\u0435\u043D\u0438\u044F\u0414\u0430\u043D\u043D\u044B\u0445|DataSeparationSafeMode|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u0417\u0430\u0441\u044B\u043F\u0430\u043D\u0438\u044F\u041F\u0430\u0441\u0441\u0438\u0432\u043D\u043E\u0433\u043E\u0421\u0435\u0430\u043D\u0441\u0430|SetPassiveSessionHibernateTime|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u0417\u0430\u0441\u044B\u043F\u0430\u043D\u0438\u044F\u041F\u0430\u0441\u0441\u0438\u0432\u043D\u043E\u0433\u043E\u0421\u0435\u0430\u043D\u0441\u0430|GetPassiveSessionHibernateTime|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u044F\u0421\u043F\u044F\u0449\u0435\u0433\u043E\u0421\u0435\u0430\u043D\u0441\u0430|SetHibernateSessionTerminateTime|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0412\u0440\u0435\u043C\u044F\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u044F\u0421\u043F\u044F\u0449\u0435\u0433\u043E\u0421\u0435\u0430\u043D\u0441\u0430|GetHibernateSessionTerminateTime|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0422\u0435\u043A\u0443\u0449\u0438\u0439\u0421\u0435\u0430\u043D\u0441\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetCurrentInfoBaseSession|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438|GetConfigurationID|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438\u041A\u043B\u0438\u0435\u043D\u0442\u0430\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|SetLicensingClientParameters|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u043C\u044F\u041A\u043B\u0438\u0435\u043D\u0442\u0430\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|GetLicensingClientName|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u041A\u043B\u0438\u0435\u043D\u0442\u0430\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|GetLicensingClientAdditionalParameter|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u0442\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0433\u043E\u0420\u0435\u0436\u0438\u043C\u0430|GetSafeModeDisabled|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041E\u0442\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0433\u043E\u0420\u0435\u0436\u0438\u043C\u0430|SetSafeModeDisabled)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0434\u0430\u043D\u043D\u044B\u043C\u0438 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439 \u0431\u0430\u0437\u044B\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041D\u0430\u0439\u0442\u0438\u041F\u043E\u043C\u0435\u0447\u0435\u043D\u043D\u044B\u0435\u041D\u0430\u0423\u0434\u0430\u043B\u0435\u043D\u0438\u0435|FindMarkedForDeletion|\u041D\u0430\u0439\u0442\u0438\u041F\u043E\u0421\u0441\u044B\u043B\u043A\u0430\u043C|FindByRef|\u0423\u0434\u0430\u043B\u0438\u0442\u044C\u041E\u0431\u044A\u0435\u043A\u0442\u044B|DeleteObjects|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0435\u041F\u0440\u0435\u0434\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u044B\u0445\u0414\u0430\u043D\u043D\u044B\u0445\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|SetInfoBasePredefinedDataUpdate|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0435\u041F\u0440\u0435\u0434\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043D\u044B\u0445\u0414\u0430\u043D\u043D\u044B\u0445\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetInfoBasePredefinedData)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 XML\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(XML\u0421\u0442\u0440\u043E\u043A\u0430|XMLString|XML\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|XMLValue|XML\u0422\u0438\u043F|XMLType|XML\u0422\u0438\u043F\u0417\u043D\u0447|XMLTypeOf|\u0418\u0437XML\u0422\u0438\u043F\u0430|FromXMLType|\u0412\u043E\u0437\u043C\u043E\u0436\u043D\u043E\u0441\u0442\u044C\u0427\u0442\u0435\u043D\u0438\u044FXML|CanReadXML|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044CXML\u0422\u0438\u043F|GetXMLType|\u041F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044CXML|ReadXML|\u0417\u0430\u043F\u0438\u0441\u0430\u0442\u044CXML|WriteXML|\u041D\u0430\u0439\u0442\u0438\u041D\u0435\u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0435\u0421\u0438\u043C\u0432\u043E\u043B\u044BXML|FindDisallowedXMLCharacters|\u0418\u043C\u043F\u043E\u0440\u0442\u041C\u043E\u0434\u0435\u043B\u0438XDTO|ImportXDTOModel|\u0421\u043E\u0437\u0434\u0430\u0442\u044C\u0424\u0430\u0431\u0440\u0438\u043A\u0443XDTO|CreateXDTOFactory)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 JSON\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0417\u0430\u043F\u0438\u0441\u0430\u0442\u044CJSON|WriteJSON|\u041F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044CJSON|ReadJSON|\u041F\u0440\u043E\u0447\u0438\u0442\u0430\u0442\u044C\u0414\u0430\u0442\u0443JSON|ReadJSONDate|\u0417\u0430\u043F\u0438\u0441\u0430\u0442\u044C\u0414\u0430\u0442\u0443JSON|WriteJSONDate)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0436\u0443\u0440\u043D\u0430\u043B\u043E\u043C \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0417\u0430\u043F\u0438\u0441\u044C\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|WriteLogEvent|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|GetEventLogUsing|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|SetEventLogUsing|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u0421\u043E\u0431\u044B\u0442\u0438\u044F\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|EventLogEventPresentation|\u0412\u044B\u0433\u0440\u0443\u0437\u0438\u0442\u044C\u0416\u0443\u0440\u043D\u0430\u043B\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|UnloadEventLog|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u041E\u0442\u0431\u043E\u0440\u0430\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|GetEventLogFilterValues|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u0421\u043E\u0431\u044B\u0442\u0438\u044F\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|SetEventLogEventUse|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u0421\u043E\u0431\u044B\u0442\u0438\u044F\u0416\u0443\u0440\u043D\u0430\u043B\u0430\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|GetEventLogEventUse|\u0421\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0416\u0443\u0440\u043D\u0430\u043B\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|CopyEventLog|\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C\u0416\u0443\u0440\u043D\u0430\u043B\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438|ClearEventLog)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0443\u043D\u0438\u0432\u0435\u0440\u0441\u0430\u043B\u044C\u043D\u044B\u043C\u0438 \u043E\u0431\u044A\u0435\u043A\u0442\u0430\u043C\u0438\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0412\u0414\u0430\u043D\u043D\u044B\u0435\u0424\u043E\u0440\u043C\u044B|ValueToFormData|\u0414\u0430\u043D\u043D\u044B\u0435\u0424\u043E\u0440\u043C\u044B\u0412\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|FormDataToValue|\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0414\u0430\u043D\u043D\u044B\u0435\u0424\u043E\u0440\u043C\u044B|CopyFormData|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0421\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435\u041E\u0431\u044A\u0435\u043A\u0442\u0430\u0418\u0424\u043E\u0440\u043C\u044B|SetObjectAndFormConformity|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435\u041E\u0431\u044A\u0435\u043A\u0442\u0430\u0418\u0424\u043E\u0440\u043C\u044B|GetObjectAndFormConformity)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0444\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u043C\u0438 \u043E\u043F\u0446\u0438\u044F\u043C\u0438\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u0443\u044E\u041E\u043F\u0446\u0438\u044E|GetFunctionalOption|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u0443\u044E\u041E\u043F\u0446\u0438\u044E\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430|GetInterfaceFunctionalOption|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u0445\u041E\u043F\u0446\u0438\u0439\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430|SetInterfaceFunctionalOptionParameters|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u0445\u041E\u043F\u0446\u0438\u0439\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430|GetInterfaceFunctionalOptionParameters|\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441|RefreshInterface)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u043A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0435\u0439\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u041A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0435\u0439|InstallCryptoExtension|\u041D\u0430\u0447\u0430\u0442\u044C\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0443\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u041A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0435\u0439|BeginInstallCryptoExtension|\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u041A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0435\u0439|AttachCryptoExtension|\u041D\u0430\u0447\u0430\u0442\u044C\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u041A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0435\u0439|BeginAttachingCryptoExtension)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441\u043E \u0441\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u044B\u043C \u0438\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043E\u043C OData\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C\u0421\u043E\u0441\u0442\u0430\u0432\u0421\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u0433\u043E\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430OData|SetStandardODataInterfaceContent|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0421\u043E\u0441\u0442\u0430\u0432\u0421\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u0433\u043E\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430OData|GetStandardODataInterfaceContent)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0440\u0430\u0431\u043E\u0442\u044B \u0441 \u0434\u0432\u043E\u0438\u0447\u043D\u044B\u043C\u0438 \u0434\u0430\u043D\u043D\u044B\u043C\u0438\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0421\u043E\u0435\u0434\u0438\u043D\u0438\u0442\u044C\u0411\u0443\u0444\u0435\u0440\u044B\u0414\u0432\u043E\u0438\u0447\u043D\u044B\u0445\u0414\u0430\u043D\u043D\u044B\u0445|ConcatBinaryDataBuffers)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u041F\u0440\u043E\u0447\u0438\u0435 \u043F\u0440\u043E\u0446\u0435\u0434\u0443\u0440\u044B \u0438 \u0444\u0443\u043D\u043A\u0446\u0438\u0438\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041C\u0438\u043D|Min|\u041C\u0430\u043A\u0441|Max|\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435\u041E\u0448\u0438\u0431\u043A\u0438|ErrorDescription|\u0412\u044B\u0447\u0438\u0441\u043B\u0438\u0442\u044C|Eval|\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F\u041E\u0431\u041E\u0448\u0438\u0431\u043A\u0435|ErrorInfo|Base64\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435|Base64Value|Base64\u0421\u0442\u0440\u043E\u043A\u0430|Base64String|\u0417\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u044C\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F\u0421\u0432\u043E\u0439\u0441\u0442\u0432|FillPropertyValues|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435\u0417\u0430\u043F\u043E\u043B\u043D\u0435\u043D\u043E|ValueIsFilled|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u044F\u041D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0445\u0421\u0441\u044B\u043B\u043E\u043A|GetURLsPresentations|\u041D\u0430\u0439\u0442\u0438\u041E\u043A\u043D\u043E\u041F\u043E\u041D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0421\u0441\u044B\u043B\u043A\u0435|FindWindowByURL|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041E\u043A\u043D\u0430|GetWindows|\u041F\u0435\u0440\u0435\u0439\u0442\u0438\u041F\u043E\u041D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0421\u0441\u044B\u043B\u043A\u0435|GotoURL|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043E\u043D\u043D\u0443\u044E\u0421\u0441\u044B\u043B\u043A\u0443|GetURL|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0414\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0435\u041A\u043E\u0434\u044B\u041B\u043E\u043A\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438|GetAvailableLocaleCodes|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u041D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u043E\u043D\u043D\u0443\u044E\u0421\u0441\u044B\u043B\u043A\u0443\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|GetInfoBaseURL|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u041A\u043E\u0434\u0430\u041B\u043E\u043A\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u0438|LocaleCodePresentation|\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C\u0414\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0435\u0427\u0430\u0441\u043E\u0432\u044B\u0435\u041F\u043E\u044F\u0441\u0430|GetAvailableTimeZones|\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u0427\u0430\u0441\u043E\u0432\u043E\u0433\u043E\u041F\u043E\u044F\u0441\u0430|TimeZonePresentation|\u0422\u0435\u043A\u0443\u0449\u0430\u044F\u0423\u043D\u0438\u0432\u0435\u0440\u0441\u0430\u043B\u044C\u043D\u0430\u044F\u0414\u0430\u0442\u0430|CurrentUniversalDate|\u0422\u0435\u043A\u0443\u0449\u0430\u044F\u0423\u043D\u0438\u0432\u0435\u0440\u0441\u0430\u043B\u044C\u043D\u0430\u044F\u0414\u0430\u0442\u0430\u0412\u041C\u0438\u043B\u043B\u0438\u0441\u0435\u043A\u0443\u043D\u0434\u0430\u0445|CurrentUniversalDateInMilliseconds|\u041C\u0435\u0441\u0442\u043D\u043E\u0435\u0412\u0440\u0435\u043C\u044F|ToLocalTime|\u0423\u043D\u0438\u0432\u0435\u0440\u0441\u0430\u043B\u044C\u043D\u043E\u0435\u0412\u0440\u0435\u043C\u044F|ToUniversalTime|\u0427\u0430\u0441\u043E\u0432\u043E\u0439\u041F\u043E\u044F\u0441|TimeZone|\u0421\u043C\u0435\u0449\u0435\u043D\u0438\u0435\u041B\u0435\u0442\u043D\u0435\u0433\u043E\u0412\u0440\u0435\u043C\u0435\u043D\u0438|DaylightTimeOffset|\u0421\u043C\u0435\u0449\u0435\u043D\u0438\u0435\u0421\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u0433\u043E\u0412\u0440\u0435\u043C\u0435\u043D\u0438|StandardTimeOffset|\u041A\u043E\u0434\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0421\u0442\u0440\u043E\u043A\u0443|EncodeString|\u0420\u0430\u0441\u043A\u043E\u0434\u0438\u0440\u043E\u0432\u0430\u0442\u044C\u0421\u0442\u0440\u043E\u043A\u0443|DecodeString|\u041D\u0430\u0439\u0442\u0438|Find|\u041F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C\u0412\u044B\u0437\u043E\u0432|ProceedWithCall)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0421\u043E\u0431\u044B\u0442\u0438\u044F \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F \u0438 \u0441\u0435\u0430\u043D\u0441\u0430\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u041F\u0435\u0440\u0435\u0434\u041D\u0430\u0447\u0430\u043B\u043E\u043C\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0438\u0441\u0442\u0435\u043C\u044B|BeforeStart|\u041F\u0440\u0438\u041D\u0430\u0447\u0430\u043B\u0435\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0438\u0441\u0442\u0435\u043C\u044B|OnStart|\u041F\u0435\u0440\u0435\u0434\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u0435\u043C\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0438\u0441\u0442\u0435\u043C\u044B|BeforeExit|\u041F\u0440\u0438\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u0438\u0420\u0430\u0431\u043E\u0442\u044B\u0421\u0438\u0441\u0442\u0435\u043C\u044B|OnExit|\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0430\u0412\u043D\u0435\u0448\u043D\u0435\u0433\u043E\u0421\u043E\u0431\u044B\u0442\u0438\u044F|ExternEventProcessing|\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0430\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u0432\u0421\u0435\u0430\u043D\u0441\u0430|SessionParametersSetting|\u041F\u0440\u0438\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u0438\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u0432\u042D\u043A\u0440\u0430\u043D\u0430|OnChangeDisplaySettings)\\\\\\\\s*(?=\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0421\u0432\u043E\u0439\u0441\u0442\u0432\u0430 (\u043A\u043B\u0430\u0441\u0441\u044B)\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(WS\u0421\u0441\u044B\u043B\u043A\u0438|WSReferences|\u0411\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0430\u041A\u0430\u0440\u0442\u0438\u043D\u043E\u043A|PictureLib|\u0411\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0430\u041C\u0430\u043A\u0435\u0442\u043E\u0432\u041E\u0444\u043E\u0440\u043C\u043B\u0435\u043D\u0438\u044F\u041A\u043E\u043C\u043F\u043E\u043D\u043E\u0432\u043A\u0438\u0414\u0430\u043D\u043D\u044B\u0445|DataCompositionAppearanceTemplateLib|\u0411\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u0430\u0421\u0442\u0438\u043B\u0435\u0439|StyleLib|\u0411\u0438\u0437\u043D\u0435\u0441\u041F\u0440\u043E\u0446\u0435\u0441\u0441\u044B|BusinessProcesses|\u0412\u043D\u0435\u0448\u043D\u0438\u0435\u0418\u0441\u0442\u043E\u0447\u043D\u0438\u043A\u0438\u0414\u0430\u043D\u043D\u044B\u0445|ExternalDataSources|\u0412\u043D\u0435\u0448\u043D\u0438\u0435\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0438|ExternalDataProcessors|\u0412\u043D\u0435\u0448\u043D\u0438\u0435\u041E\u0442\u0447\u0435\u0442\u044B|ExternalReports|\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u044B|Documents|\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0435\u043C\u044B\u0435\u0423\u0432\u0435\u0434\u043E\u043C\u043B\u0435\u043D\u0438\u044F|DeliverableNotifications|\u0416\u0443\u0440\u043D\u0430\u043B\u044B\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u043E\u0432|DocumentJournals|\u0417\u0430\u0434\u0430\u0447\u0438|Tasks|\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F\u041E\u0431\u0418\u043D\u0442\u0435\u0440\u043D\u0435\u0442\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0438|InternetConnectionInformation|\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435\u0420\u0430\u0431\u043E\u0447\u0435\u0439\u0414\u0430\u0442\u044B|WorkingDateUse|\u0418\u0441\u0442\u043E\u0440\u0438\u044F\u0420\u0430\u0431\u043E\u0442\u044B\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F|UserWorkHistory|\u041A\u043E\u043D\u0441\u0442\u0430\u043D\u0442\u044B|Constants|\u041A\u0440\u0438\u0442\u0435\u0440\u0438\u0438\u041E\u0442\u0431\u043E\u0440\u0430|FilterCriteria|\u041C\u0435\u0442\u0430\u0434\u0430\u043D\u043D\u044B\u0435|Metadata|\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0438|DataProcessors|\u041E\u0442\u043F\u0440\u0430\u0432\u043A\u0430\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0435\u043C\u044B\u0445\u0423\u0432\u0435\u0434\u043E\u043C\u043B\u0435\u043D\u0438\u0439|DeliverableNotificationSend|\u041E\u0442\u0447\u0435\u0442\u044B|Reports|\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B\u0421\u0435\u0430\u043D\u0441\u0430|SessionParameters|\u041F\u0435\u0440\u0435\u0447\u0438\u0441\u043B\u0435\u043D\u0438\u044F|Enums|\u041F\u043B\u0430\u043D\u044B\u0412\u0438\u0434\u043E\u0432\u0420\u0430\u0441\u0447\u0435\u0442\u0430|ChartsOfCalculationTypes|\u041F\u043B\u0430\u043D\u044B\u0412\u0438\u0434\u043E\u0432\u0425\u0430\u0440\u0430\u043A\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043A|ChartsOfCharacteristicTypes|\u041F\u043B\u0430\u043D\u044B\u041E\u0431\u043C\u0435\u043D\u0430|ExchangePlans|\u041F\u043B\u0430\u043D\u044B\u0421\u0447\u0435\u0442\u043E\u0432|ChartsOfAccounts|\u041F\u043E\u043B\u043D\u043E\u0442\u0435\u043A\u0441\u0442\u043E\u0432\u044B\u0439\u041F\u043E\u0438\u0441\u043A|FullTextSearch|\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u0438\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439\u0411\u0430\u0437\u044B|InfoBaseUsers|\u041F\u043E\u0441\u043B\u0435\u0434\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u0438|Sequences|\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438|ConfigurationExtensions|\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u044B\u0411\u0443\u0445\u0433\u0430\u043B\u0442\u0435\u0440\u0438\u0438|AccountingRegisters|\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u044B\u041D\u0430\u043A\u043E\u043F\u043B\u0435\u043D\u0438\u044F|AccumulationRegisters|\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u044B\u0420\u0430\u0441\u0447\u0435\u0442\u0430|CalculationRegisters|\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u044B\u0421\u0432\u0435\u0434\u0435\u043D\u0438\u0439|InformationRegisters|\u0420\u0435\u0433\u043B\u0430\u043C\u0435\u043D\u0442\u043D\u044B\u0435\u0417\u0430\u0434\u0430\u043D\u0438\u044F|ScheduledJobs|\u0421\u0435\u0440\u0438\u0430\u043B\u0438\u0437\u0430\u0442\u043E\u0440XDTO|XDTOSerializer|\u0421\u043F\u0440\u0430\u0432\u043E\u0447\u043D\u0438\u043A\u0438|Catalogs|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u0413\u0435\u043E\u043F\u043E\u0437\u0438\u0446\u0438\u043E\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F|LocationTools|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u041A\u0440\u0438\u043F\u0442\u043E\u0433\u0440\u0430\u0444\u0438\u0438|CryptoToolsManager|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u041C\u0443\u043B\u044C\u0442\u0438\u043C\u0435\u0434\u0438\u0430|MultimediaTools|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u041E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F\u0420\u0435\u043A\u043B\u0430\u043C\u044B|AdvertisingPresentationTools|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u041F\u043E\u0447\u0442\u044B|MailTools|\u0421\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u0422\u0435\u043B\u0435\u0444\u043E\u043D\u0438\u0438|TelephonyTools|\u0424\u0430\u0431\u0440\u0438\u043A\u0430XDTO|XDTOFactory|\u0424\u0430\u0439\u043B\u043E\u0432\u044B\u0435\u041F\u043E\u0442\u043E\u043A\u0438|FileStreams|\u0424\u043E\u043D\u043E\u0432\u044B\u0435\u0417\u0430\u0434\u0430\u043D\u0438\u044F|BackgroundJobs|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0430\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A|SettingsStorages|\u0412\u0441\u0442\u0440\u043E\u0435\u043D\u043D\u044B\u0435\u041F\u043E\u043A\u0443\u043F\u043A\u0438|InAppPurchases|\u041E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435\u0420\u0435\u043A\u043B\u0430\u043C\u044B|AdRepresentation|\u041F\u0430\u043D\u0435\u043B\u044C\u0417\u0430\u0434\u0430\u0447\u041E\u0421|OSTaskbar|\u041F\u0440\u043E\u0432\u0435\u0440\u043A\u0430\u0412\u0441\u0442\u0440\u043E\u0435\u043D\u043D\u044B\u0445\u041F\u043E\u043A\u0443\u043F\u043E\u043A|InAppPurchasesValidation)(?=[^\\\\\\\\w\u0430-\u044F\u0451]|$))\\\",\\\"name\\\":\\\"support.class.bsl\\\"},{\\\"comment\\\":\\\"\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 - \u0421\u0432\u043E\u0439\u0441\u0442\u0432\u0430 (\u043F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u044B\u0435)\\\",\\\"match\\\":\\\"(?i:(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0413\u043B\u0430\u0432\u043D\u044B\u0439\u0418\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441|MainInterface|\u0413\u043B\u0430\u0432\u043D\u044B\u0439\u0421\u0442\u0438\u043B\u044C|MainStyle|\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u0417\u0430\u043F\u0443\u0441\u043A\u0430|LaunchParameter|\u0420\u0430\u0431\u043E\u0447\u0430\u044F\u0414\u0430\u0442\u0430|WorkingDate|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u0412\u0430\u0440\u0438\u0430\u043D\u0442\u043E\u0432\u041E\u0442\u0447\u0435\u0442\u043E\u0432|ReportsVariantsStorage|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A\u0414\u0430\u043D\u043D\u044B\u0445\u0424\u043E\u0440\u043C|FormDataSettingsStorage|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u041E\u0431\u0449\u0438\u0445\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A|CommonSettingsStorage|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0445\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A\u0414\u0438\u043D\u0430\u043C\u0438\u0447\u0435\u0441\u043A\u0438\u0445\u0421\u043F\u0438\u0441\u043A\u043E\u0432|DynamicListsUserSettingsStorage|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0445\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A\u041E\u0442\u0447\u0435\u0442\u043E\u0432|ReportsUserSettingsStorage|\u0425\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435\u0421\u0438\u0441\u0442\u0435\u043C\u043D\u044B\u0445\u041D\u0430\u0441\u0442\u0440\u043E\u0435\u043A|SystemSettingsStorage)(?=[^\\\\\\\\w\u0430-\u044F\u0451]|$))\\\",\\\"name\\\":\\\"support.variable.bsl\\\"}]},\\\"query\\\":{\\\"begin\\\":\\\"(?i)(?<=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|^)(\u0412\u044B\u0431\u0440\u0430\u0442\u044C|Select(\\\\\\\\s+\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u043D\u044B\u0435|\\\\\\\\s+Allowed)?(\\\\\\\\s+\u0420\u0430\u0437\u043B\u0438\u0447\u043D\u044B\u0435|\\\\\\\\s+Distinct)?(\\\\\\\\s+\u041F\u0435\u0440\u0432\u044B\u0435|\\\\\\\\s+Top)?)(?=[^\\\\\\\\w\u0430-\u044F\u0451\\\\\\\\.]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.sdbl\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\"[^\\\\\\\\\\\\\\\"])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*//\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.bsl\\\"},{\\\"match\\\":\\\"(//((\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\")|[^\\\\\\\\\\\\\\\"])*)\\\",\\\"name\\\":\\\"comment.line.double-slash.sdbl\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"[^\\\\\\\"]*\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.sdbl\\\"},{\\\"include\\\":\\\"source.sdbl\\\"}]}},\\\"scopeName\\\":\\\"source.bsl\\\",\\\"embeddedLangs\\\":[\\\"sdbl\\\"],\\\"aliases\\\":[\\\"1c\\\"]}\"))\n\nexport default [\n...sdbl,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"C\\\",\\\"name\\\":\\\"c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled\\\"},{\\\"include\\\":\\\"#preprocessor-rule-conditional\\\"},{\\\"include\\\":\\\"#predefined_macros\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#switch_statement\\\"},{\\\"include\\\":\\\"#anon_pattern_1\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#anon_pattern_2\\\"},{\\\"include\\\":\\\"#anon_pattern_3\\\"},{\\\"include\\\":\\\"#anon_pattern_4\\\"},{\\\"include\\\":\\\"#anon_pattern_5\\\"},{\\\"include\\\":\\\"#anon_pattern_6\\\"},{\\\"include\\\":\\\"#anon_pattern_7\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#anon_pattern_range_1\\\"},{\\\"include\\\":\\\"#anon_pattern_range_2\\\"},{\\\"include\\\":\\\"#anon_pattern_range_3\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"},{\\\"include\\\":\\\"#anon_pattern_range_4\\\"},{\\\"include\\\":\\\"#anon_pattern_range_5\\\"},{\\\"include\\\":\\\"#anon_pattern_range_6\\\"},{\\\"include\\\":\\\"#anon_pattern_8\\\"},{\\\"include\\\":\\\"#anon_pattern_9\\\"},{\\\"include\\\":\\\"#anon_pattern_10\\\"},{\\\"include\\\":\\\"#anon_pattern_11\\\"},{\\\"include\\\":\\\"#anon_pattern_12\\\"},{\\\"include\\\":\\\"#anon_pattern_13\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#anon_pattern_range_7\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"include\\\":\\\"#anon_pattern_range_8\\\"},{\\\"include\\\":\\\"#anon_pattern_range_9\\\"},{\\\"include\\\":\\\"#anon_pattern_14\\\"},{\\\"include\\\":\\\"#anon_pattern_15\\\"}],\\\"repository\\\":{\\\"access-method\\\":{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\\\\\]\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\.)|(->))((?:(?:[a-zA-Z_][a-zA-Z_0-9]*)\\\\\\\\s*(?:(?:\\\\\\\\.)|(?:->)))*)\\\\\\\\s*([a-zA-Z_][a-zA-Z_0-9]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.object.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.c\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.dot-access.c\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"punctuation.separator.pointer-access.c\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z_0-9]*\\\",\\\"name\\\":\\\"variable.object.c\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"everything.else.c\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.member.c\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.member.c\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.member.c\\\"}},\\\"name\\\":\\\"meta.function-call.member.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},\\\"anon_pattern_1\\\":{\\\"match\\\":\\\"\\\\\\\\b(break|continue|do|else|for|goto|if|_Pragma|return|while)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.c\\\"},\\\"anon_pattern_10\\\":{\\\"match\\\":\\\"\\\\\\\\b(int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.stdint.c\\\"},\\\"anon_pattern_11\\\":{\\\"match\\\":\\\"\\\\\\\\b(noErr|kNilOptions|kInvalidID|kVariableLengthArray)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.mac-classic.c\\\"},\\\"anon_pattern_12\\\":{\\\"match\\\":\\\"\\\\\\\\b(AbsoluteTime|Boolean|Byte|ByteCount|ByteOffset|BytePtr|CompTimeValue|ConstLogicalAddress|ConstStrFileNameParam|ConstStringPtr|Duration|Fixed|FixedPtr|Float32|Float32Point|Float64|Float80|Float96|FourCharCode|Fract|FractPtr|Handle|ItemCount|LogicalAddress|OptionBits|OSErr|OSStatus|OSType|OSTypePtr|PhysicalAddress|ProcessSerialNumber|ProcessSerialNumberPtr|ProcHandle|Ptr|ResType|ResTypePtr|ShortFixed|ShortFixedPtr|SignedByte|SInt16|SInt32|SInt64|SInt8|Size|StrFileName|StringHandle|StringPtr|TimeBase|TimeRecord|TimeScale|TimeValue|TimeValue64|UInt16|UInt32|UInt64|UInt8|UniChar|UniCharCount|UniCharCountPtr|UniCharPtr|UnicodeScalarValue|UniversalProcHandle|UniversalProcPtr|UnsignedFixed|UnsignedFixedPtr|UnsignedWide|UTF16Char|UTF32Char|UTF8Char)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.mac-classic.c\\\"},\\\"anon_pattern_13\\\":{\\\"match\\\":\\\"\\\\\\\\b([A-Za-z0-9_]+_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.posix-reserved.c\\\"},\\\"anon_pattern_14\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.c\\\"},\\\"anon_pattern_15\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.c\\\"},\\\"anon_pattern_2\\\":{\\\"match\\\":\\\"typedef\\\",\\\"name\\\":\\\"keyword.other.typedef.c\\\"},\\\"anon_pattern_3\\\":{\\\"match\\\":\\\"\\\\\\\\b(const|extern|register|restrict|static|volatile|inline)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.c\\\"},\\\"anon_pattern_4\\\":{\\\"match\\\":\\\"\\\\\\\\bk[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.variable.mac-classic.c\\\"},\\\"anon_pattern_5\\\":{\\\"match\\\":\\\"\\\\\\\\bg[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.global.mac-classic.c\\\"},\\\"anon_pattern_6\\\":{\\\"match\\\":\\\"\\\\\\\\bs[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.static.mac-classic.c\\\"},\\\"anon_pattern_7\\\":{\\\"match\\\":\\\"\\\\\\\\b(NULL|true|false|TRUE|FALSE)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.c\\\"},\\\"anon_pattern_8\\\":{\\\"match\\\":\\\"\\\\\\\\b(u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.sys-types.c\\\"},\\\"anon_pattern_9\\\":{\\\"match\\\":\\\"\\\\\\\\b(pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.pthread.c\\\"},\\\"anon_pattern_range_1\\\":{\\\"begin\\\":\\\"((?:(?:(?>\\\\\\\\s+)|(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/)))+?|(?:(?:(?:(?:\\\\\\\\b|(?<=\\\\\\\\W))|(?=\\\\\\\\W))|\\\\\\\\A)|\\\\\\\\Z)))((#)\\\\\\\\s*define\\\\\\\\b)\\\\\\\\s+((?<!\\\\\\\\w)[a-zA-Z_]\\\\\\\\w*(?!\\\\\\\\w))(?:(\\\\\\\\()([^()\\\\\\\\\\\\\\\\]+)(\\\\\\\\)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.directive.define.c\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.c\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.c\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.preprocessor.c\\\"}},\\\"match\\\":\\\"(?<=[(,])\\\\\\\\s*((?<!\\\\\\\\w)[a-zA-Z_]\\\\\\\\w*(?!\\\\\\\\w))\\\\\\\\s*\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameters.c\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"ellipses.c punctuation.vararg-ellipses.variable.parameter.preprocessor.c\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.c\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.macro.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},\\\"anon_pattern_range_2\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(error|warning))\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.diagnostic.$3.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.diagnostic.c\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\"\\\\\\\"|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.double.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\"'|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.single.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"[^'\\\\\\\"]\\\",\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"string.unquoted.single.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"include\\\":\\\"#comments\\\"}]}]},\\\"anon_pattern_range_3\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(include(?:_next)?|import))\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.$3.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.include.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.double.include.c\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.other.lt-gt.include.c\\\"}]},\\\"anon_pattern_range_4\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*line)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.line.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},\\\"anon_pattern_range_5\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(?:((#)\\\\\\\\s*undef))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.undef.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w$]*\\\",\\\"name\\\":\\\"entity.name.function.preprocessor.c\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},\\\"anon_pattern_range_6\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(?:((#)\\\\\\\\s*pragma))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.pragma.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.pragma.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w\\\\\\\\-$]*\\\",\\\"name\\\":\\\"entity.other.attribute-name.pragma.preprocessor.c\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},\\\"anon_pattern_range_7\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(?!\\\\\\\\s*(?:atomic_uint_least64_t|atomic_uint_least16_t|atomic_uint_least32_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_fast64_t|atomic_uint_fast32_t|atomic_int_least64_t|atomic_int_least32_t|pthread_rwlockattr_t|atomic_uint_fast16_t|pthread_mutexattr_t|atomic_int_fast16_t|atomic_uint_fast8_t|atomic_int_fast64_t|atomic_int_least8_t|atomic_int_fast32_t|atomic_int_fast8_t|pthread_condattr_t|pthread_rwlock_t|atomic_uintptr_t|atomic_ptrdiff_t|atomic_uintmax_t|atomic_intmax_t|atomic_char32_t|atomic_intptr_t|atomic_char16_t|pthread_mutex_t|pthread_cond_t|atomic_wchar_t|uint_least64_t|uint_least32_t|uint_least16_t|pthread_once_t|pthread_attr_t|uint_least8_t|int_least32_t|int_least16_t|pthread_key_t|uint_fast32_t|uint_fast64_t|uint_fast16_t|atomic_size_t|atomic_ushort|atomic_ullong|int_least64_t|atomic_ulong|int_least8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|memory_order|atomic_schar|atomic_uchar|atomic_short|atomic_llong|thread_local|atomic_bool|atomic_uint|atomic_long|int_fast8_t|suseconds_t|atomic_char|atomic_int|useconds_t|_Imaginary|uintmax_t|uintmax_t|in_addr_t|in_port_t|_Noreturn|blksize_t|pthread_t|uintptr_t|volatile|u_quad_t|blkcnt_t|intmax_t|intptr_t|_Complex|uint16_t|uint32_t|uint64_t|_Alignof|_Alignas|continue|unsigned|restrict|intmax_t|register|int64_t|qaddr_t|segsz_t|_Atomic|alignas|default|caddr_t|nlink_t|typedef|u_short|fixpt_t|clock_t|swblk_t|ssize_t|alignof|daddr_t|int16_t|int32_t|uint8_t|struct|mode_t|size_t|time_t|ushort|u_long|u_char|int8_t|double|signed|static|extern|inline|return|switch|xor_eq|and_eq|bitand|not_eq|sizeof|quad_t|uid_t|bitor|union|off_t|key_t|ino_t|compl|u_int|short|const|false|while|float|pid_t|break|_Bool|or_eq|div_t|dev_t|gid_t|id_t|long|case|goto|else|bool|auto|id_t|enum|uint|true|NULL|void|char|for|not|int|and|xor|do|or|if)\\\\\\\\s*\\\\\\\\()(?=[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-innards\\\"}]},\\\"anon_pattern_range_8\\\":{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\\\\\]\\\\\\\\)]))?(\\\\\\\\[)(?!\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.object.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.c\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.c\\\"}},\\\"name\\\":\\\"meta.bracket.square.access.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},\\\"anon_pattern_range_9\\\":{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\s*\\\\\\\\]\\\",\\\"name\\\":\\\"storage.modifier.array.bracket.square.c\\\"},\\\"backslash_escapes\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[abefnprtv'\\\\\\\"?]|[0-3][0-7]{,2}|[4-7]\\\\\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})\\\",\\\"name\\\":\\\"constant.character.escape.c\\\"},\\\"block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.c\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.c\\\"}},\\\"name\\\":\\\"meta.block.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]}]},\\\"block_comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.c\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.c\\\"}},\\\"name\\\":\\\"comment.block.c\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.c\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.c\\\"}},\\\"name\\\":\\\"comment.block.c\\\"}]},\\\"block_innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-conditional-block\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#c_function_call\\\"},{\\\"begin\\\":\\\"(?:(?:(?=\\\\\\\\s)(?<!else|new|return)(?<=\\\\\\\\w)\\\\\\\\s+(and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)))((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.initialization.c\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.initialization.c\\\"}},\\\"name\\\":\\\"meta.initialization.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.c\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"include\\\":\\\"#parens-block\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"c_conditional_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"include\\\":\\\"#block_innards\\\"}]},\\\"c_function_call\\\":{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\\\\\s*\\\\\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\]))\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"meta.function-call.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},\\\"case_statement\\\":{\\\"begin\\\":\\\"((?>(?:(?:(?>(?<!\\\\\\\\s)\\\\\\\\s+)|(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/)))+|(?:(?:(?:(?:\\\\\\\\b|(?<=\\\\\\\\W))|(?=\\\\\\\\W))|\\\\\\\\A)|\\\\\\\\Z))))((?<!\\\\\\\\w)case(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.case.c\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.colon.case.c\\\"}},\\\"name\\\":\\\"meta.conditional.case.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"},{\\\"include\\\":\\\"#c_conditional_context\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"patterns\\\":[{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^)(?>\\\\\\\\s*)(\\\\\\\\/\\\\\\\\/[!\\\\\\\\/]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.documentation.c\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\n)(?<!\\\\\\\\\\\\\\\\\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line.double-slash.documentation.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:callergraph|callgraph|else|endif|f\\\\\\\\$|f\\\\\\\\[|f\\\\\\\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\\\\\\\$|\\\\\\\\#|<|>|%|\\\\\\\"|\\\\\\\\.|=|::|\\\\\\\\||\\\\\\\\-\\\\\\\\-|\\\\\\\\-\\\\\\\\-\\\\\\\\-)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.doxygen.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|em|e))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.doxygen.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]b)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.inline.raw.string.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:c|p))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"in|out\\\",\\\"name\\\":\\\"keyword.other.parameter.direction.$0.c\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]param)(?:\\\\\\\\s*\\\\\\\\[((?:,?\\\\\\\\s*(?:in|out)\\\\\\\\s*)+)\\\\\\\\])?\\\\\\\\s+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z]+:|@[a-z_]+:)\\\",\\\"name\\\":\\\"storage.type.class.gtkdoc\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.documentation.c\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:callergraph|callgraph|else|endif|f\\\\\\\\$|f\\\\\\\\[|f\\\\\\\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\\\\\\\$|\\\\\\\\#|<|>|%|\\\\\\\"|\\\\\\\\.|=|::|\\\\\\\\||\\\\\\\\-\\\\\\\\-|\\\\\\\\-\\\\\\\\-\\\\\\\\-)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.doxygen.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|em|e))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.doxygen.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]b)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.inline.raw.string.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:c|p))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"in|out\\\",\\\"name\\\":\\\"keyword.other.parameter.direction.$0.c\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]param)(?:\\\\\\\\s*\\\\\\\\[((?:,?\\\\\\\\s*(?:in|out)\\\\\\\\s*)+)\\\\\\\\])?\\\\\\\\s+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z]+:|@[a-z_]+:)\\\",\\\"name\\\":\\\"storage.type.class.gtkdoc\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.documentation.c\\\"}},\\\"match\\\":\\\"(\\\\\\\\/\\\\\\\\*[!*]+(?=\\\\\\\\s))(.+)([!*]*\\\\\\\\*\\\\\\\\/)\\\",\\\"name\\\":\\\"comment.block.documentation.c\\\"},{\\\"begin\\\":\\\"((?>\\\\\\\\s*)\\\\\\\\/\\\\\\\\*[!*]+(?:(?:\\\\\\\\n|$)|(?=\\\\\\\\s)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.documentation.c\\\"}},\\\"end\\\":\\\"([!*]*\\\\\\\\*\\\\\\\\/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.documentation.c\\\"}},\\\"name\\\":\\\"comment.block.documentation.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:callergraph|callgraph|else|endif|f\\\\\\\\$|f\\\\\\\\[|f\\\\\\\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\\\\\\\$|\\\\\\\\#|<|>|%|\\\\\\\"|\\\\\\\\.|=|::|\\\\\\\\||\\\\\\\\-\\\\\\\\-|\\\\\\\\-\\\\\\\\-\\\\\\\\-)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.doxygen.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|em|e))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.doxygen.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]b)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.inline.raw.string.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:c|p))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"in|out\\\",\\\"name\\\":\\\"keyword.other.parameter.direction.$0.c\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.c\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]param)(?:\\\\\\\\s*\\\\\\\\[((?:,?\\\\\\\\s*(?:in|out)\\\\\\\\s*)+)\\\\\\\\])?\\\\\\\\s+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.c\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z]+:|@[a-z_]+:)\\\",\\\"name\\\":\\\"storage.type.class.gtkdoc\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.toc-list.banner.block.c\\\"}},\\\"match\\\":\\\"^\\\\\\\\/\\\\\\\\* =(\\\\\\\\s*.*?)\\\\\\\\s*= \\\\\\\\*\\\\\\\\/$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.block.banner.c\\\"},{\\\"begin\\\":\\\"(\\\\\\\\/\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.c\\\"}},\\\"end\\\":\\\"(\\\\\\\\*\\\\\\\\/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.c\\\"}},\\\"name\\\":\\\"comment.block.c\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.toc-list.banner.line.c\\\"}},\\\"match\\\":\\\"^\\\\\\\\/\\\\\\\\/ =(\\\\\\\\s*.*?)\\\\\\\\s*=$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.banner.c\\\"},{\\\"begin\\\":\\\"((?:^[ \\\\\\\\t]+)?)(?=\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.c\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.c\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line.double-slash.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]}]}]},{\\\"include\\\":\\\"#block_comment\\\"},{\\\"include\\\":\\\"#line_comment\\\"}]},{\\\"include\\\":\\\"#block_comment\\\"},{\\\"include\\\":\\\"#line_comment\\\"}]},\\\"default_statement\\\":{\\\"begin\\\":\\\"((?>(?:(?:(?>(?<!\\\\\\\\s)\\\\\\\\s+)|(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/)))+|(?:(?:(?:(?:\\\\\\\\b|(?<=\\\\\\\\W))|(?=\\\\\\\\W))|\\\\\\\\A)|\\\\\\\\Z))))((?<!\\\\\\\\w)default(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.default.c\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.colon.case.default.c\\\"}},\\\"name\\\":\\\"meta.conditional.case.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"},{\\\"include\\\":\\\"#c_conditional_context\\\"}]},\\\"disabled\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*if(n?def)?\\\\\\\\b.*$\\\",\\\"end\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},\\\"evaluation_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"function-call-innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.c\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.c\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]},\\\"function-innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#vararg_ellipses\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.c\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.c\\\"}},\\\"name\\\":\\\"meta.function.definition.parameters.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#probably_a_parameter\\\"},{\\\"include\\\":\\\"#function-innards\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.c\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-innards\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"inline_comment\\\":{\\\"patterns\\\":[{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]|(?:\\\\\\\\*)++[^\\\\\\\\/])*+((?:\\\\\\\\*)++\\\\\\\\/))\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]|(?:\\\\\\\\*)++[^\\\\\\\\/])*+((?:\\\\\\\\*)++\\\\\\\\/))\\\"}]},\\\"line_comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.c\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\n)(?<!\\\\\\\\\\\\\\\\\\\\\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"comment.line.double-slash.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.c\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\n)(?<!\\\\\\\\\\\\\\\\\\\\\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"comment.line.double-slash.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]}]},\\\"line_continuation_character\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.line-continuation.c\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\n\\\"}]},\\\"member_access\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object.access.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.c\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object.access.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.c\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"variable.other.member.c\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?:(?:(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|(?:(?:->\\\\\\\\*|->)))\\\\\\\\s*)*)\\\\\\\\s*(\\\\\\\\b(?!(?:atomic_uint_least64_t|atomic_uint_least16_t|atomic_uint_least32_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_fast64_t|atomic_uint_fast32_t|atomic_int_least64_t|atomic_int_least32_t|pthread_rwlockattr_t|atomic_uint_fast16_t|pthread_mutexattr_t|atomic_int_fast16_t|atomic_uint_fast8_t|atomic_int_fast64_t|atomic_int_least8_t|atomic_int_fast32_t|atomic_int_fast8_t|pthread_condattr_t|atomic_uintptr_t|atomic_ptrdiff_t|pthread_rwlock_t|atomic_uintmax_t|pthread_mutex_t|atomic_intmax_t|atomic_intptr_t|atomic_char32_t|atomic_char16_t|pthread_attr_t|atomic_wchar_t|uint_least64_t|uint_least32_t|uint_least16_t|pthread_cond_t|pthread_once_t|uint_fast64_t|uint_fast16_t|atomic_size_t|uint_least8_t|int_least64_t|int_least32_t|int_least16_t|pthread_key_t|atomic_ullong|atomic_ushort|uint_fast32_t|atomic_schar|atomic_short|uint_fast8_t|int_fast64_t|int_fast32_t|int_fast16_t|atomic_ulong|atomic_llong|int_least8_t|atomic_uchar|memory_order|suseconds_t|int_fast8_t|atomic_bool|atomic_char|atomic_uint|atomic_long|atomic_int|useconds_t|_Imaginary|blksize_t|pthread_t|in_addr_t|uintptr_t|in_port_t|uintmax_t|uintmax_t|blkcnt_t|uint16_t|unsigned|_Complex|uint32_t|intptr_t|intmax_t|intmax_t|uint64_t|u_quad_t|int64_t|int32_t|ssize_t|caddr_t|clock_t|uint8_t|u_short|swblk_t|segsz_t|int16_t|fixpt_t|daddr_t|nlink_t|qaddr_t|size_t|time_t|mode_t|signed|quad_t|ushort|u_long|u_char|double|int8_t|ino_t|uid_t|pid_t|_Bool|float|dev_t|div_t|short|gid_t|off_t|u_int|key_t|id_t|uint|long|void|char|bool|id_t|int)\\\\\\\\b)[a-zA-Z_]\\\\\\\\w*\\\\\\\\b(?!\\\\\\\\())\\\"},\\\"method_access\\\":{\\\"begin\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?:(?:(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|(?:(?:->\\\\\\\\*|->)))\\\\\\\\s*)*)\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object.access.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.c\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object.access.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.c\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.member.c\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.member.c\\\"}},\\\"contentName\\\":\\\"meta.function-call.member.c\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.member.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},\\\"numbers\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=.)\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.c\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.c\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.c\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.c\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.floating-point.c\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9a-fA-F])\\\\\\\\.|\\\\\\\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?<!')([pP])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)))?([lLfF](?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.decimal.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.decimal.point.c\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.decimal.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.c\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.c\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.c\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.floating-point.c\\\"}},\\\"match\\\":\\\"(\\\\\\\\G(?=[0-9.])(?!0[xXbB]))([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9])\\\\\\\\.|\\\\\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?<!')([eE])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)))?([lLfF](?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.binary.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.binary.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.c\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[bB])([01](?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.octal.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.octal.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.c\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0)((?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))+)((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.c\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.c\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.c\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.c\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)((?<!')([pP])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)))?((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.decimal.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.c\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.c\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.c\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.c\\\"}},\\\"match\\\":\\\"(\\\\\\\\G(?=[0-9.])(?!0[xXbB]))([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)((?<!')([eE])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)))?((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w))?$\\\"},{\\\"match\\\":\\\"(?:(?:[0-9a-zA-Z_\\\\\\\\.]|')|(?<=[eEpP])[+-])+\\\",\\\"name\\\":\\\"invalid.illegal.constant.numeric\\\"}]}]}},\\\"match\\\":\\\"(?<!\\\\\\\\w)\\\\\\\\.?\\\\\\\\d(?:(?:[0-9a-zA-Z_\\\\\\\\.]|')|(?<=[eEpP])[+-])*\\\"},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![\\\\\\\\w$])(sizeof)(?![\\\\\\\\w$])\\\",\\\"name\\\":\\\"keyword.operator.sizeof.c\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.c\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.c\\\"},{\\\"match\\\":\\\"%=|\\\\\\\\+=|-=|\\\\\\\\*=|(?<!\\\\\\\\()/=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.c\\\"},{\\\"match\\\":\\\"&=|\\\\\\\\^=|<<=|>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.c\\\"},{\\\"match\\\":\\\"<<|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.c\\\"},{\\\"match\\\":\\\"!=|<=|>=|==|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.c\\\"},{\\\"match\\\":\\\"&&|!|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.c\\\"},{\\\"match\\\":\\\"&|\\\\\\\\||\\\\\\\\^|~\\\",\\\"name\\\":\\\"keyword.operator.c\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.c\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.c\\\"},{\\\"begin\\\":\\\"(\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.c\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.c\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.c\\\"}},\\\"name\\\":\\\"meta.parens.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"parens-block\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.c\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.c\\\"}},\\\"name\\\":\\\"meta.parens.block.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"},{\\\"match\\\":\\\"(?-mix:(?<!:):(?!:))\\\",\\\"name\\\":\\\"punctuation.range-based.c\\\"}]},\\\"pragma-mark\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.pragma.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.pragma.pragma-mark.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.pragma-mark.c\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(((#)\\\\\\\\s*pragma\\\\\\\\s+mark)\\\\\\\\s+(.*))\\\",\\\"name\\\":\\\"meta.section.c\\\"},\\\"predefined_macros\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.$1.c\\\"}},\\\"match\\\":\\\"\\\\\\\\b(__cplusplus|__DATE__|__FILE__|__LINE__|__STDC__|__STDC_HOSTED__|__STDC_NO_COMPLEX__|__STDC_VERSION__|__STDCPP_THREADS__|__TIME__|NDEBUG|__OBJC__|__ASSEMBLER__|__ATOM__|__AVX__|__AVX2__|_CHAR_UNSIGNED|__CLR_VER|_CONTROL_FLOW_GUARD|__COUNTER__|__cplusplus_cli|__cplusplus_winrt|_CPPRTTI|_CPPUNWIND|_DEBUG|_DLL|__FUNCDNAME__|__FUNCSIG__|__FUNCTION__|_INTEGRAL_MAX_BITS|__INTELLISENSE__|_ISO_VOLATILE|_KERNEL_MODE|_M_AMD64|_M_ARM|_M_ARM_ARMV7VE|_M_ARM_FP|_M_ARM64|_M_CEE|_M_CEE_PURE|_M_CEE_SAFE|_M_FP_EXCEPT|_M_FP_FAST|_M_FP_PRECISE|_M_FP_STRICT|_M_IX86|_M_IX86_FP|_M_X64|_MANAGED|_MSC_BUILD|_MSC_EXTENSIONS|_MSC_FULL_VER|_MSC_VER|_MSVC_LANG|__MSVC_RUNTIME_CHECKS|_MT|_NATIVE_WCHAR_T_DEFINED|_OPENMP|_PREFAST|__TIMESTAMP__|_VC_NO_DEFAULTLIB|_WCHAR_T_DEFINED|_WIN32|_WIN64|_WINRT_DLL|_ATL_VER|_MFC_VER|__GFORTRAN__|__GNUC__|__GNUC_MINOR__|__GNUC_PATCHLEVEL__|__GNUG__|__STRICT_ANSI__|__BASE_FILE__|__INCLUDE_LEVEL__|__ELF__|__VERSION__|__OPTIMIZE__|__OPTIMIZE_SIZE__|__NO_INLINE__|__GNUC_STDC_INLINE__|__CHAR_UNSIGNED__|__WCHAR_UNSIGNED__|__REGISTER_PREFIX__|__REGISTER_PREFIX__|__SIZE_TYPE__|__PTRDIFF_TYPE__|__WCHAR_TYPE__|__WINT_TYPE__|__INTMAX_TYPE__|__UINTMAX_TYPE__|__SIG_ATOMIC_TYPE__|__INT8_TYPE__|__INT16_TYPE__|__INT32_TYPE__|__INT64_TYPE__|__UINT8_TYPE__|__UINT16_TYPE__|__UINT32_TYPE__|__UINT64_TYPE__|__INT_LEAST8_TYPE__|__INT_LEAST16_TYPE__|__INT_LEAST32_TYPE__|__INT_LEAST64_TYPE__|__UINT_LEAST8_TYPE__|__UINT_LEAST16_TYPE__|__UINT_LEAST32_TYPE__|__UINT_LEAST64_TYPE__|__INT_FAST8_TYPE__|__INT_FAST16_TYPE__|__INT_FAST32_TYPE__|__INT_FAST64_TYPE__|__UINT_FAST8_TYPE__|__UINT_FAST16_TYPE__|__UINT_FAST32_TYPE__|__UINT_FAST64_TYPE__|__INTPTR_TYPE__|__UINTPTR_TYPE__|__CHAR_BIT__|__SCHAR_MAX__|__WCHAR_MAX__|__SHRT_MAX__|__INT_MAX__|__LONG_MAX__|__LONG_LONG_MAX__|__WINT_MAX__|__SIZE_MAX__|__PTRDIFF_MAX__|__INTMAX_MAX__|__UINTMAX_MAX__|__SIG_ATOMIC_MAX__|__INT8_MAX__|__INT16_MAX__|__INT32_MAX__|__INT64_MAX__|__UINT8_MAX__|__UINT16_MAX__|__UINT32_MAX__|__UINT64_MAX__|__INT_LEAST8_MAX__|__INT_LEAST16_MAX__|__INT_LEAST32_MAX__|__INT_LEAST64_MAX__|__UINT_LEAST8_MAX__|__UINT_LEAST16_MAX__|__UINT_LEAST32_MAX__|__UINT_LEAST64_MAX__|__INT_FAST8_MAX__|__INT_FAST16_MAX__|__INT_FAST32_MAX__|__INT_FAST64_MAX__|__UINT_FAST8_MAX__|__UINT_FAST16_MAX__|__UINT_FAST32_MAX__|__UINT_FAST64_MAX__|__INTPTR_MAX__|__UINTPTR_MAX__|__WCHAR_MIN__|__WINT_MIN__|__SIG_ATOMIC_MIN__|__SCHAR_WIDTH__|__SHRT_WIDTH__|__INT_WIDTH__|__LONG_WIDTH__|__LONG_LONG_WIDTH__|__PTRDIFF_WIDTH__|__SIG_ATOMIC_WIDTH__|__SIZE_WIDTH__|__WCHAR_WIDTH__|__WINT_WIDTH__|__INT_LEAST8_WIDTH__|__INT_LEAST16_WIDTH__|__INT_LEAST32_WIDTH__|__INT_LEAST64_WIDTH__|__INT_FAST8_WIDTH__|__INT_FAST16_WIDTH__|__INT_FAST32_WIDTH__|__INT_FAST64_WIDTH__|__INTPTR_WIDTH__|__INTMAX_WIDTH__|__SIZEOF_INT__|__SIZEOF_LONG__|__SIZEOF_LONG_LONG__|__SIZEOF_SHORT__|__SIZEOF_POINTER__|__SIZEOF_FLOAT__|__SIZEOF_DOUBLE__|__SIZEOF_LONG_DOUBLE__|__SIZEOF_SIZE_T__|__SIZEOF_WCHAR_T__|__SIZEOF_WINT_T__|__SIZEOF_PTRDIFF_T__|__BYTE_ORDER__|__ORDER_LITTLE_ENDIAN__|__ORDER_BIG_ENDIAN__|__ORDER_PDP_ENDIAN__|__FLOAT_WORD_ORDER__|__DEPRECATED|__EXCEPTIONS|__GXX_RTTI|__USING_SJLJ_EXCEPTIONS__|__GXX_EXPERIMENTAL_CXX0X__|__GXX_WEAK__|__NEXT_RUNTIME__|__LP64__|_LP64|__SSP__|__SSP_ALL__|__SSP_STRONG__|__SSP_EXPLICIT__|__SANITIZE_ADDRESS__|__SANITIZE_THREAD__|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_16|__HAVE_SPECULATION_SAFE_VALUE|__GCC_HAVE_DWARF2_CFI_ASM|__FP_FAST_FMA|__FP_FAST_FMAF|__FP_FAST_FMAL|__FP_FAST_FMAF16|__FP_FAST_FMAF32|__FP_FAST_FMAF64|__FP_FAST_FMAF128|__FP_FAST_FMAF32X|__FP_FAST_FMAF64X|__FP_FAST_FMAF128X|__GCC_IEC_559|__GCC_IEC_559_COMPLEX|__NO_MATH_ERRNO__|__has_builtin|__has_feature|__has_extension|__has_cpp_attribute|__has_c_attribute|__has_attribute|__has_declspec_attribute|__is_identifier|__has_include|__has_include_next|__has_warning|__BASE_FILE__|__FILE_NAME__|__clang__|__clang_major__|__clang_minor__|__clang_patchlevel__|__clang_version__|__fp16|_Float16)\\\\\\\\b\\\"},{\\\"match\\\":\\\"\\\\\\\\b__([A-Z_]+)__\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$1.c\\\"}]},\\\"preprocessor-rule-conditional\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if(?:n?def)?\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"invalid.illegal.stray-$1.c\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(else|elif|endif)\\\\\\\\b\\\"}]},\\\"preprocessor-rule-conditional-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if(?:n?def)?\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"invalid.illegal.stray-$1.c\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(else|elif|endif)\\\\\\\\b\\\"}]},\\\"preprocessor-rule-conditional-line\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\bdefined\\\\\\\\b\\\\\\\\s*$)|(?:\\\\\\\\bdefined\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\s*(?:(?!defined\\\\\\\\b)[a-zA-Z_$][\\\\\\\\w$]*\\\\\\\\b)\\\\\\\\s*\\\\\\\\)*\\\\\\\\s*(?:\\\\\\\\n|//|/\\\\\\\\*|\\\\\\\\?|\\\\\\\\:|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)))\\\",\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},{\\\"match\\\":\\\"\\\\\\\\bdefined\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.macro-name.c\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.c\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#operators\\\"},{\\\"match\\\":\\\"\\\\\\\\b(NULL|true|false|TRUE|FALSE)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.c\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w$]*\\\",\\\"name\\\":\\\"entity.name.function.preprocessor.c\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.c\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]}]},\\\"preprocessor-rule-define-line-blocks\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.c\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-blocks\\\"},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},\\\"preprocessor-rule-define-line-contents\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#vararg_ellipses\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.c\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.c\\\"}},\\\"name\\\":\\\"meta.block.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-blocks\\\"}]},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.c\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.c\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas|asm|__asm__|auto|bool|_Bool|char|_Complex|double|enum|float|_Imaginary|int|long|short|signed|struct|typedef|union|unsigned|void)\\\\\\\\s*\\\\\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\\\\\s*\\\\\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\]))\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!\\\\\\\\w)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.function.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\"\\\\\\\"|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.double.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\"'|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.single.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"preprocessor-rule-define-line-functions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#vararg_ellipses\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.c\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.c\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},\\\"preprocessor-rule-disabled\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.c\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]}]},\\\"preprocessor-rule-disabled-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.in-block.c\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]}]},\\\"preprocessor-rule-disabled-elif\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.c\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]},\\\"preprocessor-rule-enabled\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.c\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.c\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.c\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]}]},\\\"preprocessor-rule-enabled-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.in-block.c\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.in-block.c\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]}]}]},\\\"preprocessor-rule-enabled-elif\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.c\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(elif)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.c\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"preprocessor-rule-enabled-elif-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.in-block.c\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(elif)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.c\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]}]},\\\"preprocessor-rule-enabled-else\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"preprocessor-rule-enabled-else-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.c\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]},\\\"probably_a_parameter\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.probably.c\\\"}},\\\"match\\\":\\\"(?<=(?:[a-zA-Z_0-9] |[&*>\\\\\\\\]\\\\\\\\)]))\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(?=(?:\\\\\\\\[\\\\\\\\]\\\\\\\\s*)?(?:,|\\\\\\\\)))\\\"},\\\"static_assert\\\":{\\\"begin\\\":\\\"((?>(?:(?:(?>(?<!\\\\\\\\s)\\\\\\\\s+)|(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/)))+|(?:(?:(?:(?:\\\\\\\\b|(?<=\\\\\\\\W))|(?=\\\\\\\\W))|\\\\\\\\A)|\\\\\\\\Z))))((?<!\\\\\\\\w)static_assert|_Static_assert(?!\\\\\\\\w))((?>(?:(?:(?>(?<!\\\\\\\\s)\\\\\\\\s+)|(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/)))+|(?:(?:(?:(?:\\\\\\\\b|(?<=\\\\\\\\W))|(?=\\\\\\\\W))|\\\\\\\\A)|\\\\\\\\Z))))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.static_assert.c\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.static_assert.c\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.static_assert.c\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=(?:L|u8|u|U\\\\\\\\s*\\\\\\\\\\\\\\\")?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.c\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.static_assert.message.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_context\\\"}]},{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"storage_types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?-mix:(?<!\\\\\\\\w)(?:unsigned|signed|double|_Bool|short|float|long|void|char|bool|int)(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"storage.type.built-in.primitive.c\\\"},{\\\"match\\\":\\\"(?-mix:(?<!\\\\\\\\w)(?:atomic_uint_least64_t|atomic_uint_least16_t|atomic_uint_least32_t|pthread_rwlockattr_t|atomic_uint_fast64_t|atomic_uint_fast32_t|atomic_uint_fast16_t|atomic_int_least64_t|atomic_int_least32_t|atomic_int_least16_t|atomic_uint_least8_t|atomic_uint_fast8_t|atomic_int_least8_t|atomic_int_fast16_t|pthread_mutexattr_t|atomic_int_fast32_t|atomic_int_fast64_t|atomic_int_fast8_t|pthread_condattr_t|atomic_ptrdiff_t|pthread_rwlock_t|atomic_uintptr_t|atomic_uintmax_t|atomic_intmax_t|atomic_intptr_t|atomic_char32_t|atomic_char16_t|pthread_mutex_t|pthread_cond_t|atomic_wchar_t|uint_least64_t|uint_least32_t|uint_least16_t|pthread_once_t|pthread_attr_t|int_least32_t|pthread_key_t|int_least16_t|int_least64_t|uint_least8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|atomic_ushort|atomic_ullong|atomic_size_t|int_fast16_t|int_fast64_t|uint_fast8_t|atomic_short|atomic_uchar|atomic_schar|int_least8_t|memory_order|atomic_llong|atomic_ulong|int_fast32_t|atomic_long|atomic_uint|atomic_char|int_fast8_t|suseconds_t|atomic_bool|atomic_int|_Imaginary|useconds_t|in_port_t|uintmax_t|uintmax_t|pthread_t|blksize_t|in_addr_t|uintptr_t|blkcnt_t|uint16_t|uint32_t|uint64_t|u_quad_t|_Complex|intptr_t|intmax_t|intmax_t|segsz_t|u_short|nlink_t|uint8_t|int64_t|int32_t|int16_t|fixpt_t|daddr_t|caddr_t|qaddr_t|ssize_t|clock_t|swblk_t|u_long|mode_t|int8_t|time_t|ushort|u_char|quad_t|size_t|pid_t|gid_t|uid_t|dev_t|div_t|off_t|u_int|key_t|ino_t|uint|id_t|id_t)(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"storage.type.built-in.c\\\"},{\\\"match\\\":\\\"(?-mix:\\\\\\\\b(enum|struct|union)\\\\\\\\b)\\\",\\\"name\\\":\\\"storage.type.$1.c\\\"},{\\\"begin\\\":\\\"(\\\\\\\\b(?:__asm__|asm)\\\\\\\\b)\\\\\\\\s*((?:volatile)?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.asm.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.c\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.asm.c\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]}},\\\"match\\\":\\\"(?:^)((?:(?:(?>\\\\\\\\s+)|(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/)))+?|(?:(?:(?:(?:\\\\\\\\b|(?<=\\\\\\\\W))|(?=\\\\\\\\W))|\\\\\\\\A)|\\\\\\\\Z)))(?:\\\\\\\\n|$)\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(((?:(?:(?>\\\\\\\\s+)|(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/)))+?|(?:(?:(?:(?:\\\\\\\\b|(?<=\\\\\\\\W))|(?=\\\\\\\\W))|\\\\\\\\A)|\\\\\\\\Z)))\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.assembly.c\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.assembly.c\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(R?)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.assembly.c\\\"}},\\\"contentName\\\":\\\"meta.embedded.assembly.c\\\",\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.assembly.c\\\"}},\\\"name\\\":\\\"string.quoted.double.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.asm\\\"},{\\\"include\\\":\\\"source.x86\\\"},{\\\"include\\\":\\\"source.x86_64\\\"},{\\\"include\\\":\\\"source.arm\\\"},{\\\"include\\\":\\\"#backslash_escapes\\\"},{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.assembly.inner.c\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.assembly.inner.c\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"variable.other.asm.label.c\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]}},\\\"match\\\":\\\"\\\\\\\\[((?:(?:(?>\\\\\\\\s+)|(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/)))+?|(?:(?:(?:(?:\\\\\\\\b|(?<=\\\\\\\\W))|(?=\\\\\\\\W))|\\\\\\\\A)|\\\\\\\\Z)))([a-zA-Z_]\\\\\\\\w*)((?:(?:(?>\\\\\\\\s+)|(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/)))+?|(?:(?:(?:(?:\\\\\\\\b|(?<=\\\\\\\\W))|(?=\\\\\\\\W))|\\\\\\\\A)|\\\\\\\\Z)))\\\\\\\\]\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.colon.assembly.c\\\"},{\\\"include\\\":\\\"#comments\\\"}]}]}]},\\\"string_escaped_char\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[abefnprtv'\\\\\\\"?]|[0-3]\\\\\\\\d{,2}|[4-7]\\\\\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})\\\",\\\"name\\\":\\\"constant.character.escape.c\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape.c\\\"}]},\\\"string_placeholder\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"%(\\\\\\\\d+\\\\\\\\$)?[#0\\\\\\\\- +']*[,;:_]?((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?(\\\\\\\\.((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]\\\",\\\"name\\\":\\\"constant.other.placeholder.c\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.placeholder.c\\\"}},\\\"match\\\":\\\"(%)(?!\\\\\\\"\\\\\\\\s*(PRI|SCN))\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.double.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.single.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]}]},\\\"switch_conditional_parentheses\\\":{\\\"begin\\\":\\\"((?>(?:(?:(?>(?<!\\\\\\\\s)\\\\\\\\s+)|(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/)))+|(?:(?:(?:(?:\\\\\\\\b|(?<=\\\\\\\\W))|(?=\\\\\\\\W))|\\\\\\\\A)|\\\\\\\\Z))))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.conditional.switch.c\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.conditional.switch.c\\\"}},\\\"name\\\":\\\"meta.conditional.switch.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"},{\\\"include\\\":\\\"#c_conditional_context\\\"}]},\\\"switch_statement\\\":{\\\"begin\\\":\\\"(((?>(?:(?:(?>(?<!\\\\\\\\s)\\\\\\\\s+)|(\\\\\\\\/\\\\\\\\*)((?>(?:[^\\\\\\\\*]|(?>\\\\\\\\*+)[^\\\\\\\\/])*)((?>\\\\\\\\*+)\\\\\\\\/)))+|(?:(?:(?:(?:\\\\\\\\b|(?<=\\\\\\\\W))|(?=\\\\\\\\W))|\\\\\\\\A)|\\\\\\\\Z))))((?<!\\\\\\\\w)switch(?!\\\\\\\\w)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.head.switch.c\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.begin.c\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.c\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.c punctuation.definition.comment.end.c\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.c\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.switch.c\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"name\\\":\\\"meta.block.switch.c\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"end\\\":\\\"((?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.switch.c\\\"}},\\\"name\\\":\\\"meta.head.switch.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#switch_conditional_parentheses\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"end\\\":\\\"(\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.switch.c\\\"}},\\\"name\\\":\\\"meta.body.switch.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#default_statement\\\"},{\\\"include\\\":\\\"#case_statement\\\"},{\\\"include\\\":\\\"$self\\\"},{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s\\\\\\\\n]*\\\",\\\"end\\\":\\\"[\\\\\\\\s\\\\\\\\n]*(?=;)\\\",\\\"name\\\":\\\"meta.tail.switch.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"vararg_ellipses\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\.\\\\\\\\.\\\\\\\\.(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"punctuation.vararg-ellipses.c\\\"}},\\\"scopeName\\\":\\\"source.c\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Cadence\\\",\\\"name\\\":\\\"cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#declarations\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#code-block\\\"},{\\\"include\\\":\\\"#composite\\\"},{\\\"include\\\":\\\"#event\\\"}],\\\"repository\\\":{\\\"code-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.cadence\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.cadence\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.cadence\\\"}},\\\"match\\\":\\\"\\\\\\\\A^(#!).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.cadence\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.cadence\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.cadence\\\"}},\\\"name\\\":\\\"comment.block.documentation.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nested\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.cadence\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.cadence\\\"}},\\\"name\\\":\\\"comment.block.documentation.playground.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nested\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.cadence\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.cadence\\\"}},\\\"name\\\":\\\"comment.block.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nested\\\"}]},{\\\"match\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"invalid.illegal.unexpected-end-of-block-comment.cadence\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.cadence\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"///\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.cadence\\\"}},\\\"end\\\":\\\"^\\\",\\\"name\\\":\\\"comment.line.triple-slash.documentation.cadence\\\"},{\\\"begin\\\":\\\"//:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.cadence\\\"}},\\\"end\\\":\\\"^\\\",\\\"name\\\":\\\"comment.line.double-slash.documentation.cadence\\\"},{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.cadence\\\"}},\\\"end\\\":\\\"^\\\",\\\"name\\\":\\\"comment.line.double-slash.cadence\\\"}]}],\\\"repository\\\":{\\\"nested\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nested\\\"}]}}},\\\"composite\\\":{\\\"begin\\\":\\\"\\\\\\\\b((?:(?:struct|resource|contract)(?:\\\\\\\\s+interface)?)|transaction|enum)\\\\\\\\s+([\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cadence\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.$1.cadence\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.definition.type.composite.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#conformance-clause\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.begin.cadence\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.end.cadence\\\"}},\\\"name\\\":\\\"meta.definition.type.body.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"conformance-clause\\\":{\\\"begin\\\":\\\"(:)(?=\\\\\\\\s*\\\\\\\\{)|(:)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.empty-conformance-clause.cadence\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.conformance-clause.cadence\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)$|(?=[={}])\\\",\\\"name\\\":\\\"meta.conformance-clause.cadence\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)$|(?=[={}])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#type\\\"}]}]},\\\"declarations\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#var-let-declaration\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#initializer\\\"}]},\\\"event\\\":{\\\"begin\\\":\\\"\\\\\\\\b(event)\\\\\\\\b\\\\\\\\s+([\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.event.cadence\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.event.cadence\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|$\\\",\\\"name\\\":\\\"meta.definition.type.event.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#parameter-clause\\\"}]},\\\"expression-element-list\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"([\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.cadence\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.argument-label.cadence\\\"}},\\\"comment\\\":\\\"an element with a label\\\",\\\"end\\\":\\\"(?=[,)\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]},{\\\"begin\\\":\\\"(?![,)\\\\\\\\]])(?=\\\\\\\\S)\\\",\\\"comment\\\":\\\"an element without a label (i.e. anything else)\\\",\\\"end\\\":\\\"(?=[,)\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]}]},\\\"expressions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#function-call-expression\\\"},{\\\"include\\\":\\\"#literals\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#language-variables\\\"}]},\\\"function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(fun)\\\\\\\\b\\\\\\\\s+([\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.cadence\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.cadence\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|$\\\",\\\"name\\\":\\\"meta.definition.function.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#parameter-clause\\\"},{\\\"include\\\":\\\"#function-result\\\"},{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.cadence\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.end.cadence\\\"}},\\\"name\\\":\\\"meta.definition.function.body.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"function-call-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?!(?:set|init))([\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.cadence\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.cadence\\\"}},\\\"comment\\\":\\\"foo(args) -- a call whose callee is a highlightable name\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.cadence\\\"}},\\\"name\\\":\\\"meta.function-call.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-element-list\\\"}]}]},\\\"function-result\\\":{\\\"begin\\\":\\\"(?<![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])(:)(?![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.function-result.cadence\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(?=\\\\\\\\{|;)|$\\\",\\\"name\\\":\\\"meta.function-result.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"initializer\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(init)\\\\\\\\s*(?=\\\\\\\\(|<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.cadence\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|$\\\",\\\"name\\\":\\\"meta.definition.function.initializer.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#parameter-clause\\\"},{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.cadence\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.end.cadence\\\"}},\\\"name\\\":\\\"meta.definition.function.body.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:if|else|switch|case|default)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.branch.cadence\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:return|continue|break)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.transfer.cadence\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:while|for|in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.loop.cadence\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:pre|post|prepare|execute|create|destroy|emit)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.cadence\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:private|pub(?:\\\\\\\\(set\\\\\\\\))?|access\\\\\\\\((?:self|contract|account|all)\\\\\\\\))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.declaration-specifier.accessibility.cadence\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:init|destroy)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.function.cadence\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:import|from)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.cadence\\\"}]},\\\"language-variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(self)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.cadence\\\"}]},\\\"literals\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"\\\\\\\\bnil\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.nil.cadence\\\"}],\\\"repository\\\":{\\\"boolean\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.cadence\\\"},\\\"numeric\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#binary\\\"},{\\\"include\\\":\\\"#octal\\\"},{\\\"include\\\":\\\"#decimal\\\"},{\\\"include\\\":\\\"#hexadecimal\\\"}],\\\"repository\\\":{\\\"binary\\\":{\\\"comment\\\":\\\"\\\",\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)0b[01]([_01]*[01])?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.binary.cadence\\\"},\\\"decimal\\\":{\\\"comment\\\":\\\"\\\",\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)[0-9]([_0-9]*[0-9])?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.cadence\\\"},\\\"hexadecimal\\\":{\\\"comment\\\":\\\"\\\",\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)0x[0-9A-Fa-f]([_0-9A-Fa-f]*[0-9A-Fa-f])?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.cadence\\\"},\\\"octal\\\":{\\\"comment\\\":\\\"\\\",\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)0o[0-7]([_0-7]*[0-7])?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.octal.cadence\\\"}}},\\\"string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cadence\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cadence\\\"}},\\\"name\\\":\\\"string.quoted.double.single-line.cadence\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\r|\\\\\\\\n\\\",\\\"name\\\":\\\"invalid.illegal.returns-not-allowed.cadence\\\"},{\\\"include\\\":\\\"#string-guts\\\"}]}],\\\"repository\\\":{\\\"string-guts\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0\\\\\\\\\\\\\\\\tnr\\\\\\\"']\\\",\\\"name\\\":\\\"constant.character.escape.cadence\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u\\\\\\\\{[0-9a-fA-F]{1,8}\\\\\\\\}\\\",\\\"name\\\":\\\"constant.character.escape.unicode.cadence\\\"}]}}}}},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\-\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.unary.cadence\\\"},{\\\"match\\\":\\\"!\\\",\\\"name\\\":\\\"keyword.operator.logical.not.cadence\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.cadence\\\"},{\\\"match\\\":\\\"<-\\\",\\\"name\\\":\\\"keyword.operator.move.cadence\\\"},{\\\"match\\\":\\\"<-!\\\",\\\"name\\\":\\\"keyword.operator.force-move.cadence\\\"},{\\\"match\\\":\\\"\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|/\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.cadence\\\"},{\\\"match\\\":\\\"%\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.remainder.cadence\\\"},{\\\"match\\\":\\\"==|!=|>|<|>=|<=\\\",\\\"name\\\":\\\"keyword.operator.comparison.cadence\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.coalescing.cadence\\\"},{\\\"match\\\":\\\"&&|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.cadence\\\"},{\\\"match\\\":\\\"[?!]\\\",\\\"name\\\":\\\"keyword.operator.type.optional.cadence\\\"}]},\\\"parameter-clause\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.cadence\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.cadence\\\"}},\\\"name\\\":\\\"meta.parameter-clause.cadence\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-list\\\"}]},\\\"parameter-list\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.cadence\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.cadence\\\"}},\\\"comment\\\":\\\"External parameter labels are considered part of the function name\\\",\\\"match\\\":\\\"([\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*)\\\\\\\\s+([\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*)(?=\\\\\\\\s*:)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.cadence\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.cadence\\\"}},\\\"comment\\\":\\\"If no external label is given, the name is both the external label and the internal variable name\\\",\\\"match\\\":\\\"(([\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*))(?=\\\\\\\\s*:)\\\"},{\\\"begin\\\":\\\":\\\\\\\\s*(?!\\\\\\\\s)\\\",\\\"end\\\":\\\"(?=[,)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"invalid.illegal.extra-colon-in-parameter-list.cadence\\\"}]}]},\\\"type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"([\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*)\\\",\\\"name\\\":\\\"storage.type.cadence\\\"}]},\\\"var-let-declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\b(var|let)\\\\\\\\b\\\\\\\\s+([\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cadence\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.$1.cadence\\\"}},\\\"end\\\":\\\"=|<-|<-!|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}},\\\"scopeName\\\":\\\"source.cadence\\\",\\\"aliases\\\":[\\\"cdc\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Python\\\",\\\"name\\\":\\\"python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"},{\\\"include\\\":\\\"#expression\\\"}],\\\"repository\\\":{\\\"annotated-parameter\\\":{\\\"begin\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.annotation.python\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"match\\\":\\\"=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}]},\\\"assignment-operator\\\":{\\\"match\\\":\\\"<<=|>>=|//=|\\\\\\\\*\\\\\\\\*=|\\\\\\\\+=|-=|/=|@=|\\\\\\\\*=|%=|~=|\\\\\\\\^=|&=|\\\\\\\\|=|=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"},\\\"backticks\\\":{\\\"begin\\\":\\\"\\\\\\\\`\\\",\\\"end\\\":\\\"(?:\\\\\\\\`|(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\n))\\\",\\\"name\\\":\\\"invalid.deprecated.backtick.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"builtin-callables\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#builtin-exceptions\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#builtin-types\\\"}]},\\\"builtin-exceptions\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b((Arithmetic|Assertion|Attribute|Buffer|BlockingIO|BrokenPipe|ChildProcess|(Connection(Aborted|Refused|Reset)?)|EOF|Environment|FileExists|FileNotFound|FloatingPoint|IO|Import|Indentation|Index|Interrupted|IsADirectory|NotADirectory|Permission|ProcessLookup|Timeout|Key|Lookup|Memory|Name|NotImplemented|OS|Overflow|Reference|Runtime|Recursion|Syntax|System|Tab|Type|UnboundLocal|Unicode(Encode|Decode|Translate)?|Value|Windows|ZeroDivision|ModuleNotFound)Error|((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes|Resource)?Warning|SystemExit|Stop(Async)?Iteration|KeyboardInterrupt|GeneratorExit|(Base)?Exception)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.exception.python\\\"},\\\"builtin-functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(__import__|abs|aiter|all|any|anext|ascii|bin|breakpoint|callable|chr|compile|copyright|credits|delattr|dir|divmod|enumerate|eval|exec|exit|filter|format|getattr|globals|hasattr|hash|help|hex|id|input|isinstance|issubclass|iter|len|license|locals|map|max|memoryview|min|next|oct|open|ord|pow|print|quit|range|reload|repr|reversed|round|setattr|sorted|sum|vars|zip)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.python\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(file|reduce|intern|raw_input|unicode|cmp|basestring|execfile|long|xrange)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.legacy.builtin.python\\\"}]},\\\"builtin-possible-callables\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-callables\\\"},{\\\"include\\\":\\\"#magic-names\\\"}]},\\\"builtin-types\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(bool|bytearray|bytes|classmethod|complex|dict|float|frozenset|int|list|object|property|set|slice|staticmethod|str|tuple|type|super)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.python\\\"},\\\"call-wrapper-inheritance\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?=([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(\\\\\\\\())\\\",\\\"comment\\\":\\\"same as a function call, but in inheritance context\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"name\\\":\\\"meta.function-call.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inheritance-name\\\"},{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"class-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(class)\\\\\\\\s+(?=[[:alpha:]_]\\\\\\\\w*\\\\\\\\s*(:|\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.python\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.class.begin.python\\\"}},\\\"name\\\":\\\"meta.class.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#class-inheritance\\\"}]}]},\\\"class-inheritance\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.inheritance.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.inheritance.end.python\\\"}},\\\"name\\\":\\\"meta.class.inheritance.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\*\\\\\\\\*|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.unpacking.arguments.python\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.python\\\"},{\\\"match\\\":\\\"=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"},{\\\"match\\\":\\\"\\\\\\\\bmetaclass\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.metaclass.python\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#class-kwarg\\\"},{\\\"include\\\":\\\"#call-wrapper-inheritance\\\"},{\\\"include\\\":\\\"#expression-base\\\"},{\\\"include\\\":\\\"#member-access-class\\\"},{\\\"include\\\":\\\"#inheritance-identifier\\\"}]},\\\"class-kwarg\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.python variable.parameter.class.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(=)(?!=)\\\"},\\\"class-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.class.python\\\"}]},\\\"codetags\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.codetag.notation.python\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\b(NOTE|XXX|HACK|FIXME|BUG|TODO)\\\\\\\\b)\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:\\\\\\\\#\\\\\\\\s*(type:)\\\\\\\\s*+(?!$|\\\\\\\\#))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.typehint.comment.python\\\"},\\\"1\\\":{\\\"name\\\":\\\"comment.typehint.directive.notation.python\\\"}},\\\"contentName\\\":\\\"meta.typehint.comment.python\\\",\\\"end\\\":\\\"(?:$|(?=\\\\\\\\#))\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\Gignore(?=\\\\\\\\s*(?:$|\\\\\\\\#))\\\",\\\"name\\\":\\\"comment.typehint.ignore.notation.python\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(bool|bytes|float|int|object|str|List|Dict|Iterable|Sequence|Set|FrozenSet|Callable|Union|Tuple|Any|None)\\\\\\\\b\\\",\\\"name\\\":\\\"comment.typehint.type.notation.python\\\"},{\\\"match\\\":\\\"([\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\),\\\\\\\\.\\\\\\\\=\\\\\\\\*]|(->))\\\",\\\"name\\\":\\\"comment.typehint.punctuation.notation.python\\\"},{\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)\\\",\\\"name\\\":\\\"comment.typehint.variable.notation.python\\\"}]},{\\\"include\\\":\\\"#comments-base\\\"}]},\\\"comments-base\\\":{\\\"begin\\\":\\\"(\\\\\\\\#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.python\\\"}},\\\"end\\\":\\\"($)\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"comments-string-double-three\\\":{\\\"begin\\\":\\\"(\\\\\\\\#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.python\\\"}},\\\"end\\\":\\\"($|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"comments-string-single-three\\\":{\\\"begin\\\":\\\"(\\\\\\\\#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.python\\\"}},\\\"end\\\":\\\"($|(?='''))\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"curly-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dict.begin.python\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dict.end.python\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.dict.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"decorator\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((@))\\\\\\\\s*(?=[[:alpha:]_]\\\\\\\\w*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.decorator.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.decorator.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\))(?:(.*?)(?=\\\\\\\\s*(?:\\\\\\\\#|$)))|(?=\\\\\\\\n|\\\\\\\\#)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.decorator.python\\\"}},\\\"name\\\":\\\"meta.function.decorator.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#decorator-name\\\"},{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"decorator-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-callables\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.period.python\\\"}},\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)|(\\\\\\\\.)\\\",\\\"name\\\":\\\"entity.name.function.decorator.python\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.decorator.python\\\"}},\\\"match\\\":\\\"\\\\\\\\s*([^([:alpha:]\\\\\\\\s_\\\\\\\\.#\\\\\\\\\\\\\\\\].*?)(?=\\\\\\\\#|$)\\\",\\\"name\\\":\\\"invalid.illegal.decorator.python\\\"}]},\\\"docstring\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\1)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"}},\\\"name\\\":\\\"string.quoted.docstring.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docstring-prompt\\\"},{\\\"include\\\":\\\"#codetags\\\"},{\\\"include\\\":\\\"#docstring-guts-unicode\\\"}]},{\\\"begin\\\":\\\"([rR])(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"}},\\\"name\\\":\\\"string.quoted.docstring.raw.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#docstring-prompt\\\"},{\\\"include\\\":\\\"#codetags\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\'|\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\1)|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.docstring.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"},{\\\"include\\\":\\\"#docstring-guts-unicode\\\"}]},{\\\"begin\\\":\\\"([rR])(\\\\\\\\'|\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.docstring.raw.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#codetags\\\"}]}]},\\\"docstring-guts-unicode\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"}]},\\\"docstring-prompt\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"match\\\":\\\"(?:(?:^|\\\\\\\\G)\\\\\\\\s*((?:>>>|\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s)(?=\\\\\\\\s*\\\\\\\\S))\\\"},\\\"docstring-statement\\\":{\\\"begin\\\":\\\"^(?=\\\\\\\\s*[rR]?(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"|\\\\\\\\'|\\\\\\\\\\\\\\\"))\\\",\\\"comment\\\":\\\"the string either terminates correctly or by the beginning of a new line (this is for single line docstrings that aren't terminated) AND it's not followed by another docstring\\\",\\\"end\\\":\\\"((?<=\\\\\\\\1)|^)(?!\\\\\\\\s*[rR]?(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"|\\\\\\\\'|\\\\\\\\\\\\\\\"))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docstring\\\"}]},\\\"double-one-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"double-one-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"double-one-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#double-one-regexp-character-set\\\"},{\\\"include\\\":\\\"#double-one-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#double-one-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookahead\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#double-one-regexp-conditional\\\"},{\\\"include\\\":\\\"#double-one-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#double-one-regexp-parentheses\\\"}]},\\\"double-one-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-three-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"double-three-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"double-three-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#double-three-regexp-character-set\\\"},{\\\"include\\\":\\\"#double-three-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#double-three-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookahead\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#double-three-regexp-conditional\\\"},{\\\"include\\\":\\\"#double-three-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#double-three-regexp-parentheses\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"ellipsis\\\":{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"constant.other.ellipsis.python\\\"},\\\"escape-sequence\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|[0-7]{1,3}|[\\\\\\\\\\\\\\\\\\\\\\\"'abfnrtv])\\\",\\\"name\\\":\\\"constant.character.escape.python\\\"},\\\"escape-sequence-unicode\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\\\\\\\\{[\\\\\\\\w\\\\\\\\s]+?\\\\\\\\})\\\",\\\"name\\\":\\\"constant.character.escape.python\\\"}]},\\\"expression\\\":{\\\"comment\\\":\\\"All valid Python expressions\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-base\\\"},{\\\"include\\\":\\\"#member-access\\\"},{\\\"comment\\\":\\\"Tokenize identifiers to help linters\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\"}]},\\\"expression-bare\\\":{\\\"comment\\\":\\\"valid Python expressions w/o comments and line continuation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#backticks\\\"},{\\\"include\\\":\\\"#illegal-anno\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#lambda\\\"},{\\\"include\\\":\\\"#generator\\\"},{\\\"include\\\":\\\"#illegal-operator\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#curly-braces\\\"},{\\\"include\\\":\\\"#item-access\\\"},{\\\"include\\\":\\\"#list\\\"},{\\\"include\\\":\\\"#odd-function-call\\\"},{\\\"include\\\":\\\"#round-braces\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#builtin-types\\\"},{\\\"include\\\":\\\"#builtin-exceptions\\\"},{\\\"include\\\":\\\"#magic-names\\\"},{\\\"include\\\":\\\"#special-names\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#special-variables\\\"},{\\\"include\\\":\\\"#ellipsis\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#line-continuation\\\"}]},\\\"expression-base\\\":{\\\"comment\\\":\\\"valid Python expressions with comments and line continuation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#expression-bare\\\"},{\\\"include\\\":\\\"#line-continuation\\\"}]},\\\"f-expression\\\":{\\\"comment\\\":\\\"All valid Python expressions, except comments and line continuation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-bare\\\"},{\\\"include\\\":\\\"#member-access\\\"},{\\\"comment\\\":\\\"Tokenize identifiers to help linters\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\"}]},\\\"fregexp-base-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#fregexp-quantifier\\\"},{\\\"include\\\":\\\"#fstring-formatting-braces\\\"},{\\\"match\\\":\\\"\\\\\\\\{.*?\\\\\\\\}\\\"},{\\\"include\\\":\\\"#regexp-base-common\\\"}]},\\\"fregexp-quantifier\\\":{\\\"match\\\":\\\"\\\\\\\\{\\\\\\\\{(\\\\\\\\d+|\\\\\\\\d+,(\\\\\\\\d+)?|,\\\\\\\\d+)\\\\\\\\}\\\\\\\\}\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},\\\"fstring-fnorm-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[fF])([bBuU])?('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.multi.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.interpolated.python string.quoted.multi.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-core\\\"}]},\\\"fstring-fnorm-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[fF])([bBuU])?((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.single.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.interpolated.python string.quoted.single.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-core\\\"}]},\\\"fstring-formatting\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-formatting-braces\\\"},{\\\"include\\\":\\\"#fstring-formatting-singe-brace\\\"}]},\\\"fstring-formatting-braces\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.brace.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"empty braces are illegal\\\",\\\"match\\\":\\\"({)(\\\\\\\\s*?)(})\\\"},{\\\"match\\\":\\\"({{|}})\\\",\\\"name\\\":\\\"constant.character.escape.python\\\"}]},\\\"fstring-formatting-singe-brace\\\":{\\\"match\\\":\\\"(}(?!}))\\\",\\\"name\\\":\\\"invalid.illegal.brace.python\\\"},\\\"fstring-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"},{\\\"include\\\":\\\"#fstring-formatting\\\"}]},\\\"fstring-illegal-multi-brace\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#impossible\\\"}]},\\\"fstring-illegal-single-brace\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)(?=[^\\\\\\\\n}]*$\\\\\\\\n?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"it is illegal to have a multiline brace inside a single-line string\\\",\\\"end\\\":\\\"(\\\\\\\\})|(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-terminator-single\\\"},{\\\"include\\\":\\\"#f-expression\\\"}]},\\\"fstring-multi-brace\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"value interpolation using { ... }\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-terminator-multi\\\"},{\\\"include\\\":\\\"#f-expression\\\"}]},\\\"fstring-multi-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|'''|\\\\\\\"\\\\\\\"\\\\\\\"))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.multi.python\\\"},\\\"fstring-normf-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bBuU])([fF])('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.multi.python storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.multi.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-core\\\"}]},\\\"fstring-normf-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bBuU])([fF])((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.single.python storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.single.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-core\\\"}]},\\\"fstring-raw-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#fstring-formatting\\\"}]},\\\"fstring-raw-multi-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|'''|\\\\\\\"\\\\\\\"\\\\\\\"))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.multi.python\\\"},\\\"fstring-raw-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:[rR][fF]|[fF][rR]))('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.multi.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.raw.multi.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.multi.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-raw-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-raw-multi-core\\\"}]},\\\"fstring-raw-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:[rR][fF]|[fF][rR]))((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.single.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.raw.single.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.single.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-raw-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"include\\\":\\\"#fstring-raw-single-core\\\"}]},\\\"fstring-raw-single-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.single.python\\\"},\\\"fstring-single-brace\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"value interpolation using { ... }\\\",\\\"end\\\":\\\"(\\\\\\\\})|(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-terminator-single\\\"},{\\\"include\\\":\\\"#f-expression\\\"}]},\\\"fstring-single-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.single.python\\\"},\\\"fstring-terminator-multi\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(=(![rsa])?)(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(=?![rsa])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"((?:=?)(?:![rsa])?)(:\\\\\\\\w?[<>=^]?[-+ ]?\\\\\\\\#?\\\\\\\\d*,?(\\\\\\\\.\\\\\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})\\\"},{\\\"include\\\":\\\"#fstring-terminator-multi-tail\\\"}]},\\\"fstring-terminator-multi-tail\\\":{\\\"begin\\\":\\\"((?:=?)(?:![rsa])?)(:)(?=.*?{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"match\\\":\\\"([bcdeEfFgGnosxX%])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\#)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([-+ ])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([<>=^])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"}]},\\\"fstring-terminator-single\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(=(![rsa])?)(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(=?![rsa])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"((?:=?)(?:![rsa])?)(:\\\\\\\\w?[<>=^]?[-+ ]?\\\\\\\\#?\\\\\\\\d*,?(\\\\\\\\.\\\\\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})\\\"},{\\\"include\\\":\\\"#fstring-terminator-single-tail\\\"}]},\\\"fstring-terminator-single-tail\\\":{\\\"begin\\\":\\\"((?:=?)(?:![rsa])?)(:)(?=.*?{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"end\\\":\\\"(?=})|(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"match\\\":\\\"([bcdeEfFgGnosxX%])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\#)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([-+ ])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([<>=^])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"}]},\\\"function-arguments\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.python\\\"}},\\\"contentName\\\":\\\"meta.function-call.arguments.python\\\",\\\"end\\\":\\\"(?=\\\\\\\\))(?!\\\\\\\\)\\\\\\\\s*\\\\\\\\()\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"punctuation.separator.arguments.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.unpacking.arguments.python\\\"}},\\\"match\\\":\\\"(?:(?<=[,(])|^)\\\\\\\\s*(\\\\\\\\*{1,2})\\\"},{\\\"include\\\":\\\"#lambda-incomplete\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function-call.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(=)(?!=)\\\"},{\\\"match\\\":\\\"=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.python\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\))\\\\\\\\s*(\\\\\\\\()\\\"}]},\\\"function-call\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?=([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(\\\\\\\\())\\\",\\\"comment\\\":\\\"Regular function call of the type \\\\\\\"name(args)\\\\\\\"\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"name\\\":\\\"meta.function-call.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#special-variables\\\"},{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"function-declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(?:\\\\\\\\b(async)\\\\\\\\s+)?\\\\\\\\b(def)\\\\\\\\s+(?=[[:alpha:]_][[:word:]]*\\\\\\\\s*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.async.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.python\\\"}},\\\"end\\\":\\\"(:|(?=[#'\\\\\\\"\\\\\\\\n]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.python\\\"}},\\\"name\\\":\\\"meta.function.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-def-name\\\"},{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"include\\\":\\\"#return-annotation\\\"}]},\\\"function-def-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.python\\\"}]},\\\"function-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"comment\\\":\\\"Some color schemas support meta.function-call.generic scope\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.function-call.generic.python\\\"}]},\\\"generator\\\":{\\\"begin\\\":\\\"\\\\\\\\bfor\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"comment\\\":\\\"Match \\\\\\\"for ... in\\\\\\\" construct used in generators and for loops to\\\\ncorrectly identify the \\\\\\\"in\\\\\\\" as a control flow keyword.\\\\n\\\",\\\"end\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"illegal-anno\\\":{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"invalid.illegal.annotation.python\\\"},\\\"illegal-names\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(and|assert|async|await|break|class|continue|def|del|elif|else|except|finally|for|from|global|if|in|is|(?<=\\\\\\\\.)lambda|lambda(?=\\\\\\\\s*[\\\\\\\\.=])|nonlocal|not|or|pass|raise|return|try|while|with|yield)|(as|import))\\\\\\\\b\\\"},\\\"illegal-object-name\\\":{\\\"comment\\\":\\\"It's illegal to name class or function \\\\\\\"True\\\\\\\"\\\",\\\"match\\\":\\\"\\\\\\\\b(True|False|None)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.illegal.name.python\\\"},\\\"illegal-operator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"&&|\\\\\\\\|\\\\\\\\||--|\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"invalid.illegal.operator.python\\\"},{\\\"match\\\":\\\"[?$]\\\",\\\"name\\\":\\\"invalid.illegal.operator.python\\\"},{\\\"comment\\\":\\\"We don't want `!` to flash when we're typing `!=`\\\",\\\"match\\\":\\\"!\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.operator.python\\\"}]},\\\"import\\\":{\\\"comment\\\":\\\"Import statements used to correctly mark `from`, `import`, and `as`\\\\n\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(from)\\\\\\\\b(?=.+import)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.python\\\"}},\\\"end\\\":\\\"$|(?=import)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.+\\\",\\\"name\\\":\\\"punctuation.separator.period.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(import)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.python\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)as\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"impossible\\\":{\\\"comment\\\":\\\"This is a special rule that should be used where no match is desired. It is not a good idea to match something like '1{0}' because in some cases that can result in infinite loops in token generation. So the rule instead matches and impossible expression to allow a match to fail and move to the next token.\\\",\\\"match\\\":\\\"$.^\\\"},\\\"inheritance-identifier\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\"},\\\"inheritance-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#lambda-incomplete\\\"},{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"include\\\":\\\"#inheritance-identifier\\\"}]},\\\"item-access\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?=[[:alpha:]_]\\\\\\\\w*\\\\\\\\s*\\\\\\\\[)\\\",\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"name\\\":\\\"meta.item-access.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#item-name\\\"},{\\\"include\\\":\\\"#item-index\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"item-index\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.python\\\"}},\\\"contentName\\\":\\\"meta.item-access.arguments.python\\\",\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.slice.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"item-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special-variables\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#special-names\\\"},{\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.indexed-name.python\\\"}]},\\\"lambda\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"match\\\":\\\"((?<=\\\\\\\\.)lambda|lambda(?=\\\\\\\\s*[\\\\\\\\.=]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.lambda.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(lambda)\\\\\\\\s*?(?=[,\\\\\\\\n]|$)\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(lambda)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.lambda.python\\\"}},\\\"contentName\\\":\\\"meta.function.lambda.parameters.python\\\",\\\"end\\\":\\\"(:)|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.lambda.begin.python\\\"}},\\\"name\\\":\\\"meta.lambda-function.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"/\\\",\\\"name\\\":\\\"keyword.operator.positional.parameter.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\*\\\\\\\\*|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.unpacking.parameter.python\\\"},{\\\"include\\\":\\\"#lambda-nested-incomplete\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(?:(,)|(?=:|$))\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#backticks\\\"},{\\\"include\\\":\\\"#illegal-anno\\\"},{\\\"include\\\":\\\"#lambda-parameter-with-default\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"include\\\":\\\"#illegal-operator\\\"}]}]},\\\"lambda-incomplete\\\":{\\\"match\\\":\\\"\\\\\\\\blambda(?=\\\\\\\\s*[,)])\\\",\\\"name\\\":\\\"storage.type.function.lambda.python\\\"},\\\"lambda-nested-incomplete\\\":{\\\"match\\\":\\\"\\\\\\\\blambda(?=\\\\\\\\s*[:,)])\\\",\\\"name\\\":\\\"storage.type.function.lambda.python\\\"},\\\"lambda-parameter-with-default\\\":{\\\"begin\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.python\\\"}},\\\"end\\\":\\\"(,)|(?=:|$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"line-continuation\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.continuation.line.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.line.continuation.python\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\s*(\\\\\\\\S.*$\\\\\\\\n?)\\\"},{\\\"begin\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\s*$\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.continuation.line.python\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*$)|(?!(\\\\\\\\s*[rR]?(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"|\\\\\\\\'|\\\\\\\\\\\\\\\"))|(\\\\\\\\G$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"list\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.list.begin.python\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.list.end.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(True|False|None|NotImplemented|Ellipsis)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.python\\\"},{\\\"include\\\":\\\"#number\\\"}]},\\\"loose-default\\\":{\\\"begin\\\":\\\"(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.python\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"magic-function-names\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.magic.python\\\"}},\\\"comment\\\":\\\"these methods have magic interpretation by python and are generally called\\\\nindirectly through syntactic constructs\\\\n\\\",\\\"match\\\":\\\"\\\\\\\\b(__(?:abs|add|aenter|aexit|aiter|and|anext|await|bool|call|ceil|class_getitem|cmp|coerce|complex|contains|copy|deepcopy|del|delattr|delete|delitem|delslice|dir|div|divmod|enter|eq|exit|float|floor|floordiv|format|ge|get|getattr|getattribute|getinitargs|getitem|getnewargs|getslice|getstate|gt|hash|hex|iadd|iand|idiv|ifloordiv||ilshift|imod|imul|index|init|instancecheck|int|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|long|lshift|lt|missing|mod|mul|ne|neg|new|next|nonzero|oct|or|pos|pow|radd|rand|rdiv|rdivmod|reduce|reduce_ex|repr|reversed|rfloordiv||rlshift|rmod|rmul|ror|round|rpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|set_name|setslice|setstate|sizeof|str|sub|subclasscheck|truediv|trunc|unicode|xor|matmul|rmatmul|imatmul|init_subclass|set_name|fspath|bytes|prepare|length_hint)__)\\\\\\\\b\\\"},\\\"magic-names\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#magic-function-names\\\"},{\\\"include\\\":\\\"#magic-variable-names\\\"}]},\\\"magic-variable-names\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.variable.magic.python\\\"}},\\\"comment\\\":\\\"magic variables which a class/module may have.\\\",\\\"match\\\":\\\"\\\\\\\\b(__(?:all|annotations|bases|builtins|class|closure|code|debug|defaults|dict|doc|file|func|globals|kwdefaults|match_args|members|metaclass|methods|module|mro|mro_entries|name|qualname|post_init|self|signature|slots|subclasses|version|weakref|wrapped|classcell|spec|path|package|future|traceback)__)\\\\\\\\b\\\"},\\\"member-access\\\":{\\\"begin\\\":\\\"(\\\\\\\\.)\\\\\\\\s*(?!\\\\\\\\.)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.python\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\S)(?=\\\\\\\\W)|(^|(?<=\\\\\\\\s))(?=[^\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s])|$\\\",\\\"name\\\":\\\"meta.member.access.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#member-access-base\\\"},{\\\"include\\\":\\\"#member-access-attribute\\\"}]},\\\"member-access-attribute\\\":{\\\"comment\\\":\\\"Highlight attribute access in otherwise non-specialized cases.\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.attribute.python\\\"},\\\"member-access-base\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#magic-names\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#special-names\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"include\\\":\\\"#item-access\\\"}]},\\\"member-access-class\\\":{\\\"begin\\\":\\\"(\\\\\\\\.)\\\\\\\\s*(?!\\\\\\\\.)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.python\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\S)(?=\\\\\\\\W)|$\\\",\\\"name\\\":\\\"meta.member.access.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#call-wrapper-inheritance\\\"},{\\\"include\\\":\\\"#member-access-base\\\"},{\\\"include\\\":\\\"#inheritance-identifier\\\"}]},\\\"number\\\":{\\\"name\\\":\\\"constant.numeric.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#number-float\\\"},{\\\"include\\\":\\\"#number-dec\\\"},{\\\"include\\\":\\\"#number-hex\\\"},{\\\"include\\\":\\\"#number-oct\\\"},{\\\"include\\\":\\\"#number-bin\\\"},{\\\"include\\\":\\\"#number-long\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9]+\\\\\\\\w+\\\",\\\"name\\\":\\\"invalid.illegal.name.python\\\"}]},\\\"number-bin\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(0[bB])(_?[01])+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.bin.python\\\"},\\\"number-dec\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.imaginary.number.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.dec.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(?:[1-9](?:_?[0-9])*|0+|[0-9](?:_?[0-9])*([jJ])|0([0-9]+)(?![eE\\\\\\\\.]))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.dec.python\\\"},\\\"number-float\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.imaginary.number.python\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:\\\\\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\\\\\.)(?:[eE][+-]?[0-9](?:_?[0-9])*)?|[0-9](?:_?[0-9])*(?:[eE][+-]?[0-9](?:_?[0-9])*))([jJ])?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.python\\\"},\\\"number-hex\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(0[xX])(_?[0-9a-fA-F])+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.python\\\"},\\\"number-long\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"comment\\\":\\\"this is to support python2 syntax for long ints\\\",\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])([1-9][0-9]*|0)([lL])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.bin.python\\\"},\\\"number-oct\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(0[oO])(_?[0-7])+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.oct.python\\\"},\\\"odd-function-call\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\]|\\\\\\\\))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"comment\\\":\\\"A bit obscured function call where there may have been an\\\\narbitrary number of other operations to get the function.\\\\nE.g. \\\\\\\"arr[idx](args)\\\\\\\"\\\\n\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"operator\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.bitwise.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.comparison.python\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(?:(and|or|not|in|is)|(for|if|else|await|(?:yield(?:\\\\\\\\s+from)?)))(?!\\\\\\\\s*:)\\\\\\\\b|(<<|>>|&|\\\\\\\\||\\\\\\\\^|~)|(\\\\\\\\*\\\\\\\\*|\\\\\\\\*|\\\\\\\\+|-|%|//|/|@)|(!=|==|>=|<=|<|>)|(:=)\\\"},\\\"parameter-special\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.language.special.self.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.function.language.special.cls.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b((self)|(cls))\\\\\\\\b\\\\\\\\s*(?:(,)|(?=\\\\\\\\)))\\\"},\\\"parameters\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.python\\\"}},\\\"name\\\":\\\"meta.function.parameters.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"/\\\",\\\"name\\\":\\\"keyword.operator.positional.parameter.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\*\\\\\\\\*|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.unpacking.parameter.python\\\"},{\\\"include\\\":\\\"#lambda-incomplete\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#parameter-special\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(?:(,)|(?=[)#\\\\\\\\n=]))\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#loose-default\\\"},{\\\"include\\\":\\\"#annotated-parameter\\\"}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.colon.python\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.element.python\\\"}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-single-three-line\\\"},{\\\"include\\\":\\\"#regexp-double-three-line\\\"},{\\\"include\\\":\\\"#regexp-single-one-line\\\"},{\\\"include\\\":\\\"#regexp-double-one-line\\\"}]},\\\"regexp-backreference\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.backreference.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(\\\\\\\\?P=\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?)(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.backreference.named.regexp\\\"},\\\"regexp-backreference-number\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.backreference.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d?)\\\",\\\"name\\\":\\\"meta.backreference.regexp\\\"},\\\"regexp-base-common\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"support.other.match.any.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\^\\\",\\\"name\\\":\\\"support.other.match.begin.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\",\\\"name\\\":\\\"support.other.match.end.regexp\\\"},{\\\"match\\\":\\\"[+*?]\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.disjunction.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-sequence\\\"}]},\\\"regexp-base-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-quantifier\\\"},{\\\"include\\\":\\\"#regexp-base-common\\\"}]},\\\"regexp-charecter-set-escapes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[abfnrtv\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-special\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{1,3})\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-character\\\"},{\\\"include\\\":\\\"#regexp-escape-unicode\\\"},{\\\"include\\\":\\\"#regexp-escape-catchall\\\"}]},\\\"regexp-double-one-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\")|(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"regexp-double-three-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"}]},\\\"regexp-escape-catchall\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(.|\\\\\\\\n)\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},\\\"regexp-escape-character\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|0[0-7]{1,2}|[0-7]{3})\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},\\\"regexp-escape-sequence\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-escape-special\\\"},{\\\"include\\\":\\\"#regexp-escape-character\\\"},{\\\"include\\\":\\\"#regexp-escape-unicode\\\"},{\\\"include\\\":\\\"#regexp-backreference-number\\\"},{\\\"include\\\":\\\"#regexp-escape-catchall\\\"}]},\\\"regexp-escape-special\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([AbBdDsSwWZ])\\\",\\\"name\\\":\\\"support.other.escape.special.regexp\\\"},\\\"regexp-escape-unicode\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.unicode.regexp\\\"},\\\"regexp-flags\\\":{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\?[aiLmsux]+\\\\\\\\)\\\",\\\"name\\\":\\\"storage.modifier.flag.regexp\\\"},\\\"regexp-quantifier\\\":{\\\"match\\\":\\\"\\\\\\\\{(\\\\\\\\d+|\\\\\\\\d+,(\\\\\\\\d+)?|,\\\\\\\\d+)\\\\\\\\}\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},\\\"regexp-single-one-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\\')\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"regexp-single-three-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\\'\\\\\\\\'\\\\\\\\')\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\'\\\\\\\\'\\\\\\\\')\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"}]},\\\"return-annotation\\\":{\\\"begin\\\":\\\"(->)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.annotation.result.python\\\"}},\\\"end\\\":\\\"(?=:)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"round-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.begin.python\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.end.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"semicolon\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\;$\\\",\\\"name\\\":\\\"invalid.deprecated.semicolon.python\\\"}]},\\\"single-one-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"single-one-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"single-one-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#single-one-regexp-character-set\\\"},{\\\"include\\\":\\\"#single-one-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#single-one-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookahead\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#single-one-regexp-conditional\\\"},{\\\"include\\\":\\\"#single-one-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#single-one-regexp-parentheses\\\"}]},\\\"single-one-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-three-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"single-three-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"single-three-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#single-three-regexp-character-set\\\"},{\\\"include\\\":\\\"#single-three-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#single-three-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookahead\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#single-three-regexp-conditional\\\"},{\\\"include\\\":\\\"#single-three-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#single-three-regexp-parentheses\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"special-names\\\":{\\\"match\\\":\\\"\\\\\\\\b(_*[[:upper:]][_\\\\\\\\d]*[[:upper:]])[[:upper:]\\\\\\\\d]*(_\\\\\\\\w*)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.caps.python\\\"},\\\"special-variables\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.language.special.self.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.language.special.cls.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(?:(self)|(cls))\\\\\\\\b\\\"},\\\"statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#function-declaration\\\"},{\\\"include\\\":\\\"#generator\\\"},{\\\"include\\\":\\\"#statement-keyword\\\"},{\\\"include\\\":\\\"#assignment-operator\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#docstring-statement\\\"},{\\\"include\\\":\\\"#semicolon\\\"}]},\\\"statement-keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((async\\\\\\\\s+)?\\\\\\\\s*def)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.function.python\\\"},{\\\"comment\\\":\\\"if `as` is eventually followed by `:` or line continuation\\\\nit's probably control flow like:\\\\n with foo as bar, \\\\\\\\\\\\n Foo as Bar:\\\\n try:\\\\n do_stuff()\\\\n except Exception as e:\\\\n pass\\\\n\\\",\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)as\\\\\\\\b(?=.*[:\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"keyword.control.flow.python\\\"},{\\\"comment\\\":\\\"other legal use of `as` is in an import\\\",\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)as\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.python\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(async|continue|del|assert|break|finally|for|from|elif|else|if|except|pass|raise|return|try|while|with)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.python\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(global|nonlocal)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.declaration.python\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(class)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(case|match)(?=\\\\\\\\s*([-+\\\\\\\\w\\\\\\\\d(\\\\\\\\[{'\\\\\\\":#]|$))\\\\\\\\b\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-quoted-single-line\\\"},{\\\"include\\\":\\\"#string-bin-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-bin-quoted-single-line\\\"},{\\\"include\\\":\\\"#string-raw-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-raw-quoted-single-line\\\"},{\\\"include\\\":\\\"#string-raw-bin-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-raw-bin-quoted-single-line\\\"},{\\\"include\\\":\\\"#fstring-fnorm-quoted-multi-line\\\"},{\\\"include\\\":\\\"#fstring-fnorm-quoted-single-line\\\"},{\\\"include\\\":\\\"#fstring-normf-quoted-multi-line\\\"},{\\\"include\\\":\\\"#fstring-normf-quoted-single-line\\\"},{\\\"include\\\":\\\"#fstring-raw-quoted-multi-line\\\"},{\\\"include\\\":\\\"#fstring-raw-quoted-single-line\\\"}]},\\\"string-bin-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bB])('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.binary.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-bin-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bB])((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.binary.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-brace-formatting\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"({{|}}|(?:{\\\\\\\\w*(\\\\\\\\.[[:alpha:]_]\\\\\\\\w*|\\\\\\\\[[^\\\\\\\\]'\\\\\\\"]+\\\\\\\\])*(![rsa])?(:\\\\\\\\w?[<>=^]?[-+ ]?\\\\\\\\#?\\\\\\\\d*,?(\\\\\\\\.\\\\\\\\d+)?[bcdeEfFgGnosxX%]?)?}))\\\",\\\"name\\\":\\\"meta.format.brace.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"({\\\\\\\\w*(\\\\\\\\.[[:alpha:]_]\\\\\\\\w*|\\\\\\\\[[^\\\\\\\\]'\\\\\\\"]+\\\\\\\\])*(![rsa])?(:)[^'\\\\\\\"{}\\\\\\\\n]*(?:\\\\\\\\{[^'\\\\\\\"}\\\\\\\\n]*?\\\\\\\\}[^'\\\\\\\"{}\\\\\\\\n]*)*})\\\",\\\"name\\\":\\\"meta.format.brace.python\\\"}]},\\\"string-consume-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\"\\\\\\\\n\\\\\\\\\\\\\\\\]\\\"},\\\"string-entity\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-formatting\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"match\\\":\\\"(%(\\\\\\\\([\\\\\\\\w\\\\\\\\s]*\\\\\\\\))?[-+#0 ]*(\\\\\\\\d+|\\\\\\\\*)?(\\\\\\\\.(\\\\\\\\d+|\\\\\\\\*))?([hlL])?[diouxXeEfFgGcrsab%])\\\",\\\"name\\\":\\\"meta.format.percent.python\\\"},\\\"string-line-continuation\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\$\\\",\\\"name\\\":\\\"constant.language.python\\\"},\\\"string-multi-bad-brace1-formatting-raw\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\"))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"}]},\\\"string-multi-bad-brace1-formatting-unicode\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\"))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"}]},\\\"string-multi-bad-brace2-formatting-raw\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-multi-bad-brace2-formatting-unicode\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-quoted-multi-line\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b([rR])(?=[uU]))?([uU])?('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-multi-bad-brace1-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-multi-bad-brace2-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-unicode-guts\\\"}]},\\\"string-quoted-single-line\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b([rR])(?=[uU]))?([uU])?((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-single-bad-brace1-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-single-bad-brace2-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-unicode-guts\\\"}]},\\\"string-raw-bin-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-raw-bin-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:R[bB]|[bB]R))('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.binary.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-raw-bin-guts\\\"}]},\\\"string-raw-bin-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:R[bB]|[bB]R))((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.binary.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-raw-bin-guts\\\"}]},\\\"string-raw-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"},{\\\"include\\\":\\\"#string-brace-formatting\\\"}]},\\\"string-raw-quoted-multi-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]R)|(R))('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\4)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-multi-bad-brace1-formatting-raw\\\"},{\\\"include\\\":\\\"#string-multi-bad-brace2-formatting-raw\\\"},{\\\"include\\\":\\\"#string-raw-guts\\\"}]},\\\"string-raw-quoted-single-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]R)|(R))((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\4)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-single-bad-brace1-formatting-raw\\\"},{\\\"include\\\":\\\"#string-single-bad-brace2-formatting-raw\\\"},{\\\"include\\\":\\\"#string-raw-guts\\\"}]},\\\"string-single-bad-brace1-formatting-raw\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"}]},\\\"string-single-bad-brace1-formatting-unicode\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"}]},\\\"string-single-bad-brace2-formatting-raw\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-single-bad-brace2-formatting-unicode\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-unicode-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#string-entity\\\"},{\\\"include\\\":\\\"#string-brace-formatting\\\"}]}},\\\"scopeName\\\":\\\"source.python\\\",\\\"aliases\\\":[\\\"py\\\"]}\"))\n\nexport default [\nlang\n]\n", "import python from './python.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Cairo\\\",\\\"name\\\":\\\"cairo\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(if).*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.if\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.condition\\\"}},\\\"contentName\\\":\\\"source.cairo0\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.end\\\"}},\\\"name\\\":\\\"meta.control.if\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cairo0\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(with)\\\\\\\\s+(.+)\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.with\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.identifiers\\\"}},\\\"contentName\\\":\\\"source.cairo0\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.end\\\"}},\\\"name\\\":\\\"meta.control.with\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cairo0\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(with_attr)\\\\\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\s*[({]\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.with_attr\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function\\\"}},\\\"contentName\\\":\\\"source.cairo0\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.end\\\"}},\\\"name\\\":\\\"meta.control.with_attr\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cairo0\\\"}]},{\\\"match\\\":\\\"\\\\\\\\belse\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.else\\\"},{\\\"match\\\":\\\"\\\\\\\\b(call|jmp|ret|abs|rel|if)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.opcode\\\"},{\\\"match\\\":\\\"\\\\\\\\b(ap|fp)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.register\\\"},{\\\"match\\\":\\\"\\\\\\\\b(const|let|local|tempvar|felt|as|from|import|static_assert|return|assert|cast|alloc_locals|with|with_attr|nondet|dw|codeoffset|new|using|and)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.meta\\\"},{\\\"match\\\":\\\"\\\\\\\\b(SIZEOF_LOCALS|SIZE)\\\\\\\\b\\\",\\\"name\\\":\\\"markup.italic\\\"},{\\\"match\\\":\\\"//[^\\\\n]*\\\\n\\\",\\\"name\\\":\\\"comment.line.sharp\\\"},{\\\"match\\\":\\\"\\\\\\\\b[a-zA-Z_][a-zA-Z0-9_]*:\\\\\\\\s*$\\\",\\\"name\\\":\\\"entity.name.function\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(func)\\\\\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\s*[({]\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.cairo\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function\\\"}},\\\"contentName\\\":\\\"source.cairo0\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.cairo\\\"}},\\\"name\\\":\\\"meta.function.cairo\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cairo0\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(struct|namespace)\\\\\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.cairo\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function\\\"}},\\\"contentName\\\":\\\"source.cairo0\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.cairo\\\"}},\\\"name\\\":\\\"meta.function.cairo\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cairo0\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b[+-]?[0-9]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal\\\"},{\\\"match\\\":\\\"\\\\\\\\b[+-]?0x[0-9a-fA-F]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hexadecimal\\\"},{\\\"match\\\":\\\"'[^']*'\\\",\\\"name\\\":\\\"string.quoted.single\\\"},{\\\"match\\\":\\\"\\\\\\\"[^\\\\\\\"]*\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double\\\"},{\\\"begin\\\":\\\"%{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.python\\\"}},\\\"contentName\\\":\\\"source.python\\\",\\\"end\\\":\\\"%}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.python\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.python\\\"}},\\\"name\\\":\\\"meta.embedded.block.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]}],\\\"scopeName\\\":\\\"source.cairo0\\\",\\\"embeddedLangs\\\":[\\\"python\\\"]}\"))\n\nexport default [\n...python,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Clarity\\\",\\\"name\\\":\\\"clarity\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#define-constant\\\"},{\\\"include\\\":\\\"#define-data-var\\\"},{\\\"include\\\":\\\"#define-map\\\"},{\\\"include\\\":\\\"#define-function\\\"},{\\\"include\\\":\\\"#define-fungible-token\\\"},{\\\"include\\\":\\\"#define-non-fungible-token\\\"},{\\\"include\\\":\\\"#define-trait\\\"},{\\\"include\\\":\\\"#use-trait\\\"}],\\\"repository\\\":{\\\"built-in-func\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(\\\\\\\\-|\\\\\\\\+|<\\\\\\\\=|>\\\\\\\\=|<|>|\\\\\\\\*|/|and|append|as-contract|as-max-len\\\\\\\\?|asserts!|at-block|begin|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|buff-to-int-be|buff-to-int-le|buff-to-uint-be|buff-to-uint-le|concat|contract-call\\\\\\\\?|contract-of|default-to|element-at|element-at\\\\\\\\?|filter|fold|from-consensus-buff\\\\\\\\?|ft-burn\\\\\\\\?|ft-get-balance|ft-get-supply|ft-mint\\\\\\\\?|ft-transfer\\\\\\\\?|get-block-info\\\\\\\\?|get-burn-block-info\\\\\\\\?|get-stacks-block-info\\\\\\\\?|get-tenure-info\\\\\\\\?|get-burn-block-info\\\\\\\\?|hash160|if|impl-trait|index-of|index-of\\\\\\\\?|int-to-ascii|int-to-utf8|is-eq|is-err|is-none|is-ok|is-some|is-standard|keccak256|len|log2|map|match|merge|mod|nft-burn\\\\\\\\?|nft-get-owner\\\\\\\\?|nft-mint\\\\\\\\?|nft-transfer\\\\\\\\?|not|or|pow|principal-construct\\\\\\\\?|principal-destruct\\\\\\\\?|principal-of\\\\\\\\?|print|replace-at\\\\\\\\?|secp256k1-recover\\\\\\\\?|secp256k1-verify|sha256|sha512|sha512/256|slice\\\\\\\\?|sqrti|string-to-int\\\\\\\\?|string-to-uint\\\\\\\\?|stx-account|stx-burn\\\\\\\\?|stx-get-balance|stx-transfer-memo\\\\\\\\?|stx-transfer\\\\\\\\?|to-consensus-buff\\\\\\\\?|to-int|to-uint|try!|unwrap!|unwrap-err!|unwrap-err-panic|unwrap-panic|xor)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.built-in-function.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.built-in-function.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.built-in-function.end.clarity\\\"}},\\\"name\\\":\\\"meta.built-in-function\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#user-func\\\"}]},\\\"comment\\\":{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])(;).*$\\\",\\\"name\\\":\\\"comment.line.semicolon.clarity\\\"},\\\"data-type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"comment\\\":\\\"numerics\\\",\\\"match\\\":\\\"\\\\\\\\b(uint|int)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.numeric.clarity\\\"},{\\\"comment\\\":\\\"principal\\\",\\\"match\\\":\\\"\\\\\\\\b(principal)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.principal.clarity\\\"},{\\\"comment\\\":\\\"bool\\\",\\\"match\\\":\\\"\\\\\\\\b(bool)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.bool.clarity\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.string_type-def.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.string_type.clarity\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.string_type-len.clarity\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.string_type-def.end.clarity\\\"}},\\\"match\\\":\\\"(\\\\\\\\()\\\\\\\\s*(?:(string-ascii|string-utf8)\\\\\\\\s+(\\\\\\\\d+))\\\\\\\\s*(\\\\\\\\))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.buff-def.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.buff.clarity\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.buf-len.clarity\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.buff-def.end.clarity\\\"}},\\\"match\\\":\\\"(\\\\\\\\()\\\\\\\\s*(buff)\\\\\\\\s+(\\\\\\\\d+)\\\\\\\\s*(\\\\\\\\))\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(optional)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.optional-def.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.modifier\\\"}},\\\"comment\\\":\\\"optional\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.optional-def.end.clarity\\\"}},\\\"name\\\":\\\"meta.optional-def\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data-type\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(response)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.response-def.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.modifier\\\"}},\\\"comment\\\":\\\"response\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.response-def.end.clarity\\\"}},\\\"name\\\":\\\"meta.response-def\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data-type\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(list)\\\\\\\\s+(\\\\\\\\d+)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.list-def.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.list.clarity\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.list-len.clarity\\\"}},\\\"comment\\\":\\\"list\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.list-def.end.clarity\\\"}},\\\"name\\\":\\\"meta.list-def\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data-type\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.tuple-def.start.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.tuple-def.end.clarity\\\"}},\\\"name\\\":\\\"meta.tuple-def\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)(?=:)\\\",\\\"name\\\":\\\"entity.name.tag.tuple-data-type-key.clarity\\\"},{\\\"include\\\":\\\"#data-type\\\"}]}]},\\\"define-constant\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(define-constant)\\\\\\\\s+([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-constant.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.define-constant.clarity\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.constant-name.clarity variable.other.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-constant.end.clarity\\\"}},\\\"name\\\":\\\"meta.define-constant\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"define-data-var\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(define-data-var)\\\\\\\\s+([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-data-var.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.define-data-var.clarity\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.data-var-name.clarity variable.other.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-data-var.end.clarity\\\"}},\\\"name\\\":\\\"meta.define-data-var\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data-type\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"define-function\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(define-(?:public|private|read-only))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-function.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.define-function.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-function.end.clarity\\\"}},\\\"name\\\":\\\"meta.define-function\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.function-signature.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.function-signature.end.clarity\\\"}},\\\"name\\\":\\\"meta.define-function-signature\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.function-argument.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.function-argument.end.clarity\\\"}},\\\"name\\\":\\\"meta.function-argument\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data-type\\\"}]}]},{\\\"include\\\":\\\"#user-func\\\"}]},\\\"define-fungible-token\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-fungible-token.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.define-fungible-token.clarity\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.fungible-token-name.clarity variable.other.clarity\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.fungible-token-total-supply.clarity\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.define-fungible-token.end.clarity\\\"}},\\\"match\\\":\\\"(\\\\\\\\()\\\\\\\\s*(define-fungible-token)\\\\\\\\s+([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)(?:\\\\\\\\s+(u\\\\\\\\d+))?\\\"},\\\"define-map\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(define-map)\\\\\\\\s+([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-map.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.define-map.clarity\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.map-name.clarity variable.other.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-map.end.clarity\\\"}},\\\"name\\\":\\\"meta.define-map\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data-type\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"define-non-fungible-token\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(define-non-fungible-token)\\\\\\\\s+([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-non-fungible-token.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.define-non-fungible-token.clarity\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.non-fungible-token-name.clarity variable.other.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-non-fungible-token.end.clarity\\\"}},\\\"name\\\":\\\"meta.define-non-fungible-token\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data-type\\\"}]},\\\"define-trait\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(define-trait)\\\\\\\\s+([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-trait.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.define-trait.clarity\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.trait-name.clarity variable.other.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-trait.end.clarity\\\"}},\\\"name\\\":\\\"meta.define-trait\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-trait-body.start.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.define-trait-body.end.clarity\\\"}},\\\"name\\\":\\\"meta.define-trait-body\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*([a-zA-Z][\\\\\\\\w\\\\\\\\!\\\\\\\\?\\\\\\\\-]*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.trait-function.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.trait-function.end.clarity\\\"}},\\\"name\\\":\\\"meta.trait-function\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data-type\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.trait-function-args.start.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.trait-function-args.end.clarity\\\"}},\\\"name\\\":\\\"meta.trait-function-args\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data-type\\\"}]}]}]}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#let-func\\\"},{\\\"include\\\":\\\"#built-in-func\\\"},{\\\"include\\\":\\\"#get-set-func\\\"}]},\\\"get-set-func\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(var-get|var-set|map-get\\\\\\\\?|map-set|map-insert|map-delete|get)\\\\\\\\s+([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.get-set-func.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.clarity\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.get-set-func.end.clarity\\\"}},\\\"name\\\":\\\"meta.get-set-func\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"keyword\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\S)(?!-)\\\\\\\\b(?:block-height|burn-block-height|chain-id|contract-caller|is-in-regtest|stacks-block-height|stx-liquid-supply|tenure-height|tx-sender|tx-sponsor?)\\\\\\\\b(?!\\\\\\\\s*-)\\\",\\\"name\\\":\\\"constant.language.clarity\\\"},\\\"let-func\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(let)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.let-function.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.let-function.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.let-function.end.clarity\\\"}},\\\"name\\\":\\\"meta.let-function\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#user-func\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.let-var.start.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.let-var.end.clarity\\\"}},\\\"name\\\":\\\"meta.let-var\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.let-local-var.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.let-local-var-name.clarity variable.parameter.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.let-local-var.end.clarity\\\"}},\\\"name\\\":\\\"meta.let-local-var\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#user-func\\\"}]},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#number-literal\\\"},{\\\"include\\\":\\\"#bool-literal\\\"},{\\\"include\\\":\\\"#string-literal\\\"},{\\\"include\\\":\\\"#tuple-literal\\\"},{\\\"include\\\":\\\"#principal-literal\\\"},{\\\"include\\\":\\\"#list-literal\\\"},{\\\"include\\\":\\\"#optional-literal\\\"},{\\\"include\\\":\\\"#response-literal\\\"}],\\\"repository\\\":{\\\"bool-literal\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\S)(?!-)\\\\\\\\b(true|false)\\\\\\\\b(?!\\\\\\\\s*-)\\\",\\\"name\\\":\\\"constant.language.bool.clarity\\\"},\\\"list-literal\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(list)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.list.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.list.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"names\\\":\\\"punctuation.list.end.clarity\\\"}},\\\"name\\\":\\\"meta.list\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#user-func\\\"}]},\\\"number-literal\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"unsigned integers\\\",\\\"match\\\":\\\"(?<!\\\\\\\\S)(?!-)\\\\\\\\bu\\\\\\\\d+\\\\\\\\b(?!\\\\\\\\s*-)\\\",\\\"name\\\":\\\"constant.numeric.uint.clarity\\\"},{\\\"comment\\\":\\\"signed integers\\\",\\\"match\\\":\\\"(?<!\\\\\\\\S)(?!-)\\\\\\\\b\\\\\\\\d+\\\\\\\\b(?!\\\\\\\\s*-)\\\",\\\"name\\\":\\\"constant.numeric.int.clarity\\\"},{\\\"comment\\\":\\\"hexadecimals\\\",\\\"match\\\":\\\"(?<!\\\\\\\\S)(?!-)\\\\\\\\b0x[0-9a-f]*\\\\\\\\b(?!\\\\\\\\s*-)\\\",\\\"name\\\":\\\"constant.numeric.hex.clarity\\\"}]},\\\"optional-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\S)(?!-)\\\\\\\\b(none)\\\\\\\\b(?!\\\\\\\\s*-)\\\",\\\"name\\\":\\\"constant.language.none.clarity\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(some)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.some.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.language.some.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.some.end.clarity\\\"}},\\\"name\\\":\\\"meta.some\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"principal-literal\\\":{\\\"match\\\":\\\"\\\\\\\\'[0-9A-Z]{28,41}(:?\\\\\\\\.[a-zA-Z][a-zA-Z0-9\\\\\\\\-]+){0,2}|(\\\\\\\\.[a-zA-Z][a-zA-Z0-9\\\\\\\\-]*){1,2}(?=[\\\\\\\\s(){},]|$)\\\",\\\"name\\\":\\\"constant.other.principal.clarity\\\"},\\\"response-literal\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(ok|err)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.response.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.language.ok-err.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.response.end.clarity\\\"}},\\\"name\\\":\\\"meta.response\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#user-func\\\"}]},\\\"string-literal\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(u?)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.utf8.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.clarity\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.clarity\\\"}},\\\"name\\\":\\\"string.quoted.double.clarity\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.quote\\\"}]}]},\\\"tuple-literal\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.tuple.start.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.tuple.end.clarity\\\"}},\\\"name\\\":\\\"meta.tuple\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)(?=:)\\\",\\\"name\\\":\\\"entity.name.tag.tuple-key.clarity\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#user-func\\\"}]}}},\\\"use-trait\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(use-trait)\\\\\\\\s+([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.use-trait.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.use-trait.clarity\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.trait-alias.clarity variable.other.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.use-trait.end.clarity\\\"}},\\\"name\\\":\\\"meta.use-trait\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal\\\"}]},\\\"user-func\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\s*(([a-zA-Z][\\\\\\\\w\\\\\\\\?\\\\\\\\!\\\\\\\\-]*))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.user-function.start.clarity\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.clarity\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.user-function.end.clarity\\\"}},\\\"name\\\":\\\"meta.user-function\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"$self\\\"}]}},\\\"scopeName\\\":\\\"source.clar\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Clojure\\\",\\\"name\\\":\\\"clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#shebang-comment\\\"},{\\\"include\\\":\\\"#quoted-sexp\\\"},{\\\"include\\\":\\\"#sexp\\\"},{\\\"include\\\":\\\"#keyfn\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#vector\\\"},{\\\"include\\\":\\\"#set\\\"},{\\\"include\\\":\\\"#map\\\"},{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#var\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#dynamic-variables\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#namespace-symbol\\\"},{\\\"include\\\":\\\"#symbol\\\"}],\\\"repository\\\":{\\\"comment\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\);\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.clojure\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.semicolon.clojure\\\"},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(nil)(?=(\\\\\\\\s|\\\\\\\\)|\\\\\\\\]|\\\\\\\\}))\\\",\\\"name\\\":\\\"constant.language.nil.clojure\\\"},{\\\"match\\\":\\\"(true|false)\\\",\\\"name\\\":\\\"constant.language.boolean.clojure\\\"},{\\\"match\\\":\\\"(##(?:Inf|-Inf|NaN))\\\",\\\"name\\\":\\\"constant.numeric.symbol.clojure\\\"},{\\\"match\\\":\\\"([-+]?\\\\\\\\d+/\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.ratio.clojure\\\"},{\\\"match\\\":\\\"([-+]?(?:(?:3[0-6])|(?:[12]\\\\\\\\d)|[2-9])[rR][0-9A-Za-z]+N?)\\\",\\\"name\\\":\\\"constant.numeric.arbitrary-radix.clojure\\\"},{\\\"match\\\":\\\"([-+]?0[xX][0-9a-fA-F]+N?)\\\",\\\"name\\\":\\\"constant.numeric.hexadecimal.clojure\\\"},{\\\"match\\\":\\\"([-+]?0[0-7]+N?)\\\",\\\"name\\\":\\\"constant.numeric.octal.clojure\\\"},{\\\"match\\\":\\\"([-+]?[0-9]+(?:(\\\\\\\\.|(?=[eEM]))[0-9]*([eE][-+]?[0-9]+)?)M?)\\\",\\\"name\\\":\\\"constant.numeric.double.clojure\\\"},{\\\"match\\\":\\\"([-+]?\\\\\\\\d+N?)\\\",\\\"name\\\":\\\"constant.numeric.long.clojure\\\"},{\\\"include\\\":\\\"#keyword\\\"}]},\\\"dynamic-variables\\\":{\\\"match\\\":\\\"\\\\\\\\*[\\\\\\\\w\\\\\\\\.\\\\\\\\-\\\\\\\\_\\\\\\\\:\\\\\\\\+\\\\\\\\=\\\\\\\\>\\\\\\\\<\\\\\\\\!\\\\\\\\?\\\\\\\\d]+\\\\\\\\*\\\",\\\"name\\\":\\\"meta.symbol.dynamic.clojure\\\"},\\\"keyfn\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\[|\\\\\\\\{))(if(-[-\\\\\\\\p{Ll}\\\\\\\\?]*)?|when(-[-\\\\\\\\p{Ll}]*)?|for(-[-\\\\\\\\p{Ll}]*)?|cond|do|let(-[-\\\\\\\\p{Ll}\\\\\\\\?]*)?|binding|loop|recur|fn|throw[\\\\\\\\p{Ll}\\\\\\\\-]*|try|catch|finally|([\\\\\\\\p{Ll}]*case))(?=(\\\\\\\\s|\\\\\\\\)|\\\\\\\\]|\\\\\\\\}))\\\",\\\"name\\\":\\\"storage.control.clojure\\\"},{\\\"match\\\":\\\"(?<=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\[|\\\\\\\\{))(declare-?|(in-)?ns|import|use|require|load|compile|(def[\\\\\\\\p{Ll}\\\\\\\\-]*))(?=(\\\\\\\\s|\\\\\\\\)|\\\\\\\\]|\\\\\\\\}))\\\",\\\"name\\\":\\\"keyword.control.clojure\\\"}]},\\\"keyword\\\":{\\\"match\\\":\\\"(?<=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\[|\\\\\\\\{)):[\\\\\\\\w\\\\\\\\#\\\\\\\\.\\\\\\\\-\\\\\\\\_\\\\\\\\:\\\\\\\\+\\\\\\\\=\\\\\\\\>\\\\\\\\<\\\\\\\\/\\\\\\\\!\\\\\\\\?\\\\\\\\*]+(?=(\\\\\\\\s|\\\\\\\\)|\\\\\\\\]|\\\\\\\\}|\\\\\\\\,))\\\",\\\"name\\\":\\\"constant.keyword.clojure\\\"},\\\"map\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.map.begin.clojure\\\"}},\\\"end\\\":\\\"(\\\\\\\\}(?=[\\\\\\\\}\\\\\\\\]\\\\\\\\)\\\\\\\\s]*(?:;|$)))|(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.map.end.trailing.clojure\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.map.end.clojure\\\"}},\\\"name\\\":\\\"meta.map.clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"metadata\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\^\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.metadata.map.begin.clojure\\\"}},\\\"end\\\":\\\"(\\\\\\\\}(?=[\\\\\\\\}\\\\\\\\]\\\\\\\\)\\\\\\\\s]*(?:;|$)))|(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.metadata.map.end.trailing.clojure\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.metadata.map.end.clojure\\\"}},\\\"name\\\":\\\"meta.metadata.map.clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\^)\\\",\\\"end\\\":\\\"(\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.metadata.simple.clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"namespace-symbol\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.symbol.namespace.clojure\\\"}},\\\"match\\\":\\\"([\\\\\\\\p{L}\\\\\\\\.\\\\\\\\-\\\\\\\\_\\\\\\\\+\\\\\\\\=\\\\\\\\>\\\\\\\\<\\\\\\\\!\\\\\\\\?\\\\\\\\*][\\\\\\\\w\\\\\\\\.\\\\\\\\-\\\\\\\\_\\\\\\\\:\\\\\\\\+\\\\\\\\=\\\\\\\\>\\\\\\\\<\\\\\\\\!\\\\\\\\?\\\\\\\\*\\\\\\\\d]*)/\\\"}]},\\\"quoted-sexp\\\":{\\\"begin\\\":\\\"(['``]\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.clojure\\\"}},\\\"end\\\":\\\"(\\\\\\\\))$|(\\\\\\\\)(?=[\\\\\\\\}\\\\\\\\]\\\\\\\\)\\\\\\\\s]*(?:;|$)))|(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.trailing.clojure\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.trailing.clojure\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.clojure\\\"}},\\\"name\\\":\\\"meta.quoted-expression.clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"regexp\\\":{\\\"begin\\\":\\\"#\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.regexp.begin.clojure\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.regexp.end.clojure\\\"}},\\\"name\\\":\\\"string.regexp.clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp_escaped_char\\\"}]},\\\"regexp_escaped_char\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.clojure\\\"},\\\"set\\\":{\\\"begin\\\":\\\"(\\\\\\\\#\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.set.begin.clojure\\\"}},\\\"end\\\":\\\"(\\\\\\\\}(?=[\\\\\\\\}\\\\\\\\]\\\\\\\\)\\\\\\\\s]*(?:;|$)))|(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.set.end.trailing.clojure\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.set.end.clojure\\\"}},\\\"name\\\":\\\"meta.set.clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"sexp\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.clojure\\\"}},\\\"end\\\":\\\"(\\\\\\\\))$|(\\\\\\\\)(?=[\\\\\\\\}\\\\\\\\]\\\\\\\\)\\\\\\\\s]*(?:;|$)))|(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.trailing.clojure\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.trailing.clojure\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.clojure\\\"}},\\\"name\\\":\\\"meta.expression.clojure\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\()(ns|declare|def[\\\\\\\\w\\\\\\\\d._:+=><!?*-]*|[\\\\\\\\w._:+=><!?*-][\\\\\\\\w\\\\\\\\d._:+=><!?*-]*/def[\\\\\\\\w\\\\\\\\d._:+=><!?*-]*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.clojure\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.definition.global.clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#dynamic-variables\\\"},{\\\"match\\\":\\\"([\\\\\\\\p{L}\\\\\\\\.\\\\\\\\-\\\\\\\\_\\\\\\\\+\\\\\\\\=\\\\\\\\>\\\\\\\\<\\\\\\\\!\\\\\\\\?\\\\\\\\*][\\\\\\\\w\\\\\\\\.\\\\\\\\-\\\\\\\\_\\\\\\\\:\\\\\\\\+\\\\\\\\=\\\\\\\\>\\\\\\\\<\\\\\\\\!\\\\\\\\?\\\\\\\\*\\\\\\\\d]*)\\\",\\\"name\\\":\\\"entity.global.clojure\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#keyfn\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#vector\\\"},{\\\"include\\\":\\\"#map\\\"},{\\\"include\\\":\\\"#set\\\"},{\\\"include\\\":\\\"#sexp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.clojure\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\()(.+?)(?=\\\\\\\\s|\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"shebang-comment\\\":{\\\"begin\\\":\\\"^(#!)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.shebang.clojure\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.shebang.clojure\\\"},\\\"string\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.clojure\\\"}},\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.clojure\\\"}},\\\"name\\\":\\\"string.quoted.double.clojure\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.clojure\\\"}]},\\\"symbol\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([\\\\\\\\p{L}\\\\\\\\.\\\\\\\\-\\\\\\\\_\\\\\\\\+\\\\\\\\=\\\\\\\\>\\\\\\\\<\\\\\\\\!\\\\\\\\?\\\\\\\\*][\\\\\\\\w\\\\\\\\.\\\\\\\\-\\\\\\\\_\\\\\\\\:\\\\\\\\+\\\\\\\\=\\\\\\\\>\\\\\\\\<\\\\\\\\!\\\\\\\\?\\\\\\\\*\\\\\\\\d]*)\\\",\\\"name\\\":\\\"meta.symbol.clojure\\\"}]},\\\"var\\\":{\\\"match\\\":\\\"(?<=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\[|\\\\\\\\{)\\\\\\\\#)'[\\\\\\\\w\\\\\\\\.\\\\\\\\-\\\\\\\\_\\\\\\\\:\\\\\\\\+\\\\\\\\=\\\\\\\\>\\\\\\\\<\\\\\\\\/\\\\\\\\!\\\\\\\\?\\\\\\\\*]+(?=(\\\\\\\\s|\\\\\\\\)|\\\\\\\\]|\\\\\\\\}))\\\",\\\"name\\\":\\\"meta.var.clojure\\\"},\\\"vector\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.vector.begin.clojure\\\"}},\\\"end\\\":\\\"(\\\\\\\\](?=[\\\\\\\\}\\\\\\\\]\\\\\\\\)\\\\\\\\s]*(?:;|$)))|(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.vector.end.trailing.clojure\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.vector.end.clojure\\\"}},\\\"name\\\":\\\"meta.vector.clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"scopeName\\\":\\\"source.clojure\\\",\\\"aliases\\\":[\\\"clj\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"CMake\\\",\\\"fileTypes\\\":[\\\"cmake\\\",\\\"CMakeLists.txt\\\"],\\\"name\\\":\\\"cmake\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Variables That Describe the System\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:APPLE|BORLAND|(CMAKE_)?(CL_64|COMPILER_2005|HOST_APPLE|HOST_SYSTEM|HOST_SYSTEM_NAME|HOST_SYSTEM_PROCESSOR|HOST_SYSTEM_VERSION|HOST_UNIX|HOST_WIN32|LIBRARY_ARCHITECTURE|LIBRARY_ARCHITECTURE_REGEX|OBJECT_PATH_MAX|SYSTEM|SYSTEM_NAME|SYSTEM_PROCESSOR|SYSTEM_VERSION)|CYGWIN|MSVC|MSVC80|MSVC_IDE|MSVC_VERSION|UNIX|WIN32|XCODE_VERSION|MSVC60|MSVC70|MSVC90|MSVC71)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.source.cmake\\\"},{\\\"comment\\\":\\\"cmakeOperators\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:ABSOLUTE|AND|BOOL|CACHE|COMMAND|COMMENT|DEFINED|DOC|EQUAL|EXISTS|EXT|FALSE|GREATER|GREATER_EQUAL|INTERNAL|IN_LIST|IS_ABSOLUTE|IS_DIRECTORY|IS_NEWER_THAN|IS_SYMLINK|LESS|LESS_EQUAL|MATCHES|NAME|NAMES|NAME_WE|NOT|OFF|ON|OR|PATH|PATHS|POLICY|PROGRAM|STREQUAL|STRGREATER|STRGREATER_EQUAL|STRING|STRLESS|STRLESS_EQUAL|TARGET|TEST|TRUE|VERSION_EQUAL|VERSION_GREATER|VERSION_GREATER_EQUAL|VERSION_LESS)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.cmake\\\"},{\\\"comment\\\":\\\"Commands\\\",\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\b(?i:add_compile_options|add_custom_command|add_custom_target|add_definitions|add_dependencies|add_executable|add_library|add_subdirectory|add_test|aux_source_directory|break|build_command|build_name|cmake_host_system_information|cmake_minimum_required|cmake_policy|configure_file|continue|create_test_sourcelist|ctest_build|ctest_configure|ctest_coverage|ctest_empty_binary_directory|ctest_memcheck|ctest_read_custom_files|ctest_run_script|ctest_sleep|ctest_start|ctest_submit|ctest_test|ctest_update|ctest_upload|define_property|else|elseif|enable_language|enable_testing|endforeach|endfunction|endif|endmacro|endwhile|exec_program|execute_process|export|export_library_dependencies|file|find_file|find_library|find_package|find_path|find_program|fltk_wrap_ui|foreach|function|get_cmake_property|get_directory_property|get_filename_component|get_property|get_source_file_property|get_target_property|get_test_property|if|include|include_directories|include_external_msproject|include_regular_expression|install|install_files|install_programs|install_targets|link_directories|link_libraries|list|load_cache|load_command|macro|make_directory|mark_as_advanced|math|message|option|output_required_files|project|qt_wrap_cpp|qt_wrap_ui|remove|remove_definitions|return|separate_arguments|set|set_directory_properties|set_property|set_source_files_properties|set_target_properties|set_tests_properties|site_name|source_group|string|subdir_depends|subdirs|target_compile_definitions|target_compile_features|target_compile_options|target_include_directories|target_link_libraries|target_sources|try_compile|try_run|unset|use_mangled_mesa|utility_source|variable_requires|variable_watch|while|write_file)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.cmake\\\"},{\\\"comment\\\":\\\"Variables That Change Behavior\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:BUILD_SHARED_LIBS|(CMAKE_)?(ABSOLUTE_DESTINATION_FILES|AUTOMOC_RELAXED_MODE|BACKWARDS_COMPATIBILITY|BUILD_TYPE|COLOR_MAKEFILE|CONFIGURATION_TYPES|DEBUG_TARGET_PROPERTIES|DISABLE_FIND_PACKAGE_\\\\\\\\w+|FIND_LIBRARY_PREFIXES|FIND_LIBRARY_SUFFIXES|IGNORE_PATH|INCLUDE_PATH|INSTALL_DEFAULT_COMPONENT_NAME|INSTALL_PREFIX|LIBRARY_PATH|MFC_FLAG|MODULE_PATH|NOT_USING_CONFIG_FLAGS|POLICY_DEFAULT_CMP\\\\\\\\w+|PREFIX_PATH|PROGRAM_PATH|SKIP_INSTALL_ALL_DEPENDENCY|SYSTEM_IGNORE_PATH|SYSTEM_INCLUDE_PATH|SYSTEM_LIBRARY_PATH|SYSTEM_PREFIX_PATH|SYSTEM_PROGRAM_PATH|USER_MAKE_RULES_OVERRIDE|WARN_ON_ABSOLUTE_INSTALL_DESTINATION))\\\\\\\\b\\\",\\\"name\\\":\\\"variable.source.cmake\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\\\\\\{\\\\\\\\w+\\\\\\\\}\\\",\\\"name\\\":\\\"storage.source.cmake\\\"},{\\\"match\\\":\\\"\\\\\\\\$ENV\\\\\\\\{\\\\\\\\w+\\\\\\\\}\\\",\\\"name\\\":\\\"storage.source.cmake\\\"},{\\\"comment\\\":\\\"Variables that Control the Build\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:(CMAKE_)?(\\\\\\\\w+_POSTFIX|ARCHIVE_OUTPUT_DIRECTORY|AUTOMOC|AUTOMOC_MOC_OPTIONS|BUILD_WITH_INSTALL_RPATH|DEBUG_POSTFIX|EXE_LINKER_FLAGS|EXE_LINKER_FLAGS_\\\\\\\\w+|Fortran_FORMAT|Fortran_MODULE_DIRECTORY|GNUtoMS|INCLUDE_CURRENT_DIR|INCLUDE_CURRENT_DIR_IN_INTERFACE|INSTALL_NAME_DIR|INSTALL_RPATH|INSTALL_RPATH_USE_LINK_PATH|LIBRARY_OUTPUT_DIRECTORY|LIBRARY_PATH_FLAG|LINK_DEF_FILE_FLAG|LINK_DEPENDS_NO_SHARED|LINK_INTERFACE_LIBRARIES|LINK_LIBRARY_FILE_FLAG|LINK_LIBRARY_FLAG|MACOSX_BUNDLE|NO_BUILTIN_CHRPATH|PDB_OUTPUT_DIRECTORY|POSITION_INDEPENDENT_CODE|RUNTIME_OUTPUT_DIRECTORY|SKIP_BUILD_RPATH|SKIP_INSTALL_RPATH|TRY_COMPILE_CONFIGURATION|USE_RELATIVE_PATHS|WIN32_EXECUTABLE)|EXECUTABLE_OUTPUT_PATH|LIBRARY_OUTPUT_PATH)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.source.cmake\\\"},{\\\"comment\\\":\\\"Variables that Provide Information\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:CMAKE_(AR|ARGC|ARGV0|BINARY_DIR|BUILD_TOOL|CACHEFILE_DIR|CACHE_MAJOR_VERSION|CACHE_MINOR_VERSION|CACHE_PATCH_VERSION|CFG_INTDIR|COMMAND|CROSSCOMPILING|CTEST_COMMAND|CURRENT_BINARY_DIR|CURRENT_LIST_DIR|CURRENT_LIST_FILE|CURRENT_LIST_LINE|CURRENT_SOURCE_DIR|DL_LIBS|EDIT_COMMAND|EXECUTABLE_SUFFIX|EXTRA_GENERATOR|EXTRA_SHARED_LIBRARY_SUFFIXES|GENERATOR|HOME_DIRECTORY|IMPORT_LIBRARY_PREFIX|IMPORT_LIBRARY_SUFFIX|LINK_LIBRARY_SUFFIX|MAJOR_VERSION|MAKE_PROGRAM|MINOR_VERSION|PARENT_LIST_FILE|PATCH_VERSION|PROJECT_NAME|RANLIB|ROOT|SCRIPT_MODE_FILE|SHARED_LIBRARY_PREFIX|SHARED_LIBRARY_SUFFIX|SHARED_MODULE_PREFIX|SHARED_MODULE_SUFFIX|SIZEOF_VOID_P|SKIP_RPATH|SOURCE_DIR|STANDARD_LIBRARIES|STATIC_LIBRARY_PREFIX|STATIC_LIBRARY_SUFFIX|TWEAK_VERSION|USING_VC_FREE_TOOLS|VERBOSE_MAKEFILE|VERSION)|PROJECT_BINARY_DIR|PROJECT_NAME|PROJECT_SOURCE_DIR|\\\\\\\\w+_BINARY_DIR|\\\\\\\\w+__SOURCE_DIR)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.source.cmake\\\"},{\\\"begin\\\":\\\"#\\\\\\\\[(=*)\\\\\\\\[\\\",\\\"comment\\\":\\\"BracketArgs\\\",\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\1\\\\\\\\]\\\",\\\"name\\\":\\\"comment.source.cmake\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(.|$)\\\",\\\"name\\\":\\\"constant.character.escape\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[(=*)\\\\\\\\[\\\",\\\"comment\\\":\\\"BracketArgs\\\",\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\1\\\\\\\\]\\\",\\\"name\\\":\\\"argument.source.cmake\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(.|$)\\\",\\\"name\\\":\\\"constant.character.escape\\\"}]},{\\\"match\\\":\\\"#+.*$\\\",\\\"name\\\":\\\"comment.source.cmake\\\"},{\\\"comment\\\":\\\"Properties on Cache Entries\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:ADVANCED|HELPSTRING|MODIFIED|STRINGS|TYPE|VALUE)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.source.cmake\\\"},{\\\"comment\\\":\\\"Properties on Source Files\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:ABSTRACT|COMPILE_DEFINITIONS|COMPILE_DEFINITIONS_<CONFIG>|COMPILE_FLAGS|EXTERNAL_OBJECT|Fortran_FORMAT|GENERATED|HEADER_FILE_ONLY|KEEP_EXTENSION|LABELS|LANGUAGE|LOCATION|MACOSX_PACKAGE_LOCATION|OBJECT_DEPENDS|OBJECT_OUTPUTS|SYMBOLIC|WRAP_EXCLUDE)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.source.cmake\\\"},{\\\"comment\\\":\\\"Properties on Tests\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:ATTACHED_FILES|ATTACHED_FILES_ON_FAIL|COST|DEPENDS|ENVIRONMENT|FAIL_REGULAR_EXPRESSION|LABELS|MEASUREMENT|PASS_REGULAR_EXPRESSION|PROCESSORS|REQUIRED_FILES|RESOURCE_LOCK|RUN_SERIAL|TIMEOUT|WILL_FAIL|WORKING_DIRECTORY)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.source.cmake\\\"},{\\\"comment\\\":\\\"Properties on Directories\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:ADDITIONAL_MAKE_CLEAN_FILES|CACHE_VARIABLES|CLEAN_NO_CUSTOM|COMPILE_DEFINITIONS|COMPILE_DEFINITIONS_\\\\\\\\w+|DEFINITIONS|EXCLUDE_FROM_ALL|IMPLICIT_DEPENDS_INCLUDE_TRANSFORM|INCLUDE_DIRECTORIES|INCLUDE_REGULAR_EXPRESSION|INTERPROCEDURAL_OPTIMIZATION|INTERPROCEDURAL_OPTIMIZATION_\\\\\\\\w+|LINK_DIRECTORIES|LISTFILE_STACK|MACROS|PARENT_DIRECTORY|RULE_LAUNCH_COMPILE|RULE_LAUNCH_CUSTOM|RULE_LAUNCH_LINK|TEST_INCLUDE_FILE|VARIABLES|VS_GLOBAL_SECTION_POST_\\\\\\\\w+|VS_GLOBAL_SECTION_PRE_\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.source.cmake\\\"},{\\\"comment\\\":\\\"Properties of Global Scope\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:ALLOW_DUPLICATE_CUSTOM_TARGETS|DEBUG_CONFIGURATIONS|DISABLED_FEATURES|ENABLED_FEATURES|ENABLED_LANGUAGES|FIND_LIBRARY_USE_LIB64_PATHS|FIND_LIBRARY_USE_OPENBSD_VERSIONING|GLOBAL_DEPENDS_DEBUG_MODE|GLOBAL_DEPENDS_NO_CYCLES|IN_TRY_COMPILE|PACKAGES_FOUND|PACKAGES_NOT_FOUND|PREDEFINED_TARGETS_FOLDER|REPORT_UNDEFINED_PROPERTIES|RULE_LAUNCH_COMPILE|RULE_LAUNCH_CUSTOM|RULE_LAUNCH_LINK|RULE_MESSAGES|TARGET_ARCHIVES_MAY_BE_SHARED_LIBS|TARGET_SUPPORTS_SHARED_LIBS|USE_FOLDERS|__CMAKE_DELETE_CACHE_CHANGE_VARS_)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.source.cmake\\\"},{\\\"comment\\\":\\\"Properties on Targets\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:\\\\\\\\w+_(OUTPUT_NAME|POSTFIX)|ARCHIVE_OUTPUT_(DIRECTORY(_\\\\\\\\w+)?|NAME(_\\\\\\\\w+)?)|AUTOMOC(_MOC_OPTIONS)?|BUILD_WITH_INSTALL_RPATH|BUNDLE|BUNDLE(_EXTENSION)?|COMPATIBLE_INTERFACE_BOOL|COMPATIBLE_INTERFACE_STRING|COMPILE_(DEFINITIONS(_\\\\\\\\w+)?|FLAGS)|DEBUG_POSTFIX|DEFINE_SYMBOL|ENABLE_EXPORTS|EXCLUDE_FROM_ALL|EchoString|FOLDER|FRAMEWORK|Fortran_(FORMAT|MODULE_DIRECTORY)|GENERATOR_FILE_NAME|GNUtoMS|HAS_CXX|IMPLICIT_DEPENDS_INCLUDE_TRANSFORM|IMPORTED|IMPORTED_(CONFIGURATIONS|IMPLIB(_\\\\\\\\w+)?|LINK_DEPENDENT_LIBRARIES(_\\\\\\\\w+)?|LINK_INTERFACE_LANGUAGES(_\\\\\\\\w+)?|LINK_INTERFACE_LIBRARIES(_\\\\\\\\w+)?|LINK_INTERFACE_MULTIPLICITY(_\\\\\\\\w+)?|LOCATION(_\\\\\\\\w+)?|NO_SONAME(_\\\\\\\\w+)?|SONAME(_\\\\\\\\w+)?)|IMPORT_PREFIX|IMPORT_SUFFIX|INSTALL_NAME_DIR|INSTALL_RPATH|INSTALL_RPATH_USE_LINK_PATH|INTERFACE|INTERFACE_COMPILE_DEFINITIONS|INTERFACE_INCLUDE_DIRECTORIES|INTERPROCEDURAL_OPTIMIZATION|INTERPROCEDURAL_OPTIMIZATION_\\\\\\\\w+|LABELS|LIBRARY_OUTPUT_DIRECTORY(_\\\\\\\\w+)?|LIBRARY_OUTPUT_NAME(_\\\\\\\\w+)?|LINKER_LANGUAGE|LINK_DEPENDS|LINK_FLAGS(_\\\\\\\\w+)?|LINK_INTERFACE_LIBRARIES(_\\\\\\\\w+)?|LINK_INTERFACE_MULTIPLICITY(_\\\\\\\\w+)?|LINK_LIBRARIES|LINK_SEARCH_END_STATIC|LINK_SEARCH_START_STATIC|LOCATION(_\\\\\\\\w+)?|MACOSX_BUNDLE|MACOSX_BUNDLE_INFO_PLIST|MACOSX_FRAMEWORK_INFO_PLIST|MAP_IMPORTED_CONFIG_\\\\\\\\w+|NO_SONAME|OSX_ARCHITECTURES(_\\\\\\\\w+)?|OUTPUT_NAME(_\\\\\\\\w+)?|PDB_NAME(_\\\\\\\\w+)?|POST_INSTALL_SCRIPT|PREFIX|PRE_INSTALL_SCRIPT|PRIVATE|PRIVATE_HEADER|PROJECT_LABEL|PUBLIC|PUBLIC_HEADER|RESOURCE|RULE_LAUNCH_(COMPILE|CUSTOM|LINK)|RUNTIME_OUTPUT_(DIRECTORY(_\\\\\\\\w+)?|NAME(_\\\\\\\\w+)?)|SKIP_BUILD_RPATH|SOURCES|SOVERSION|STATIC_LIBRARY_FLAGS(_\\\\\\\\w+)?|SUFFIX|TYPE|VERSION|VS_DOTNET_REFERENCES|VS_GLOBAL_(\\\\\\\\w+|KEYWORD|PROJECT_TYPES)|VS_KEYWORD|VS_SCC_(AUXPATH|LOCALPATH|PROJECTNAME|PROVIDER)|VS_WINRT_EXTENSIONS|VS_WINRT_REFERENCES|WIN32_EXECUTABLE|XCODE_ATTRIBUTE_\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.source.cmake\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\"\\\",\\\"comment\\\":\\\"Escaped Strings\\\",\\\"end\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"string.source.cmake\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(.|$)\\\",\\\"name\\\":\\\"constant.character.escape\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"comment\\\":\\\"Normal Strings\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.source.cmake\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(.|$)\\\",\\\"name\\\":\\\"constant.character.escape\\\"}]},{\\\"comment\\\":\\\"Derecated keyword\\\",\\\"match\\\":\\\"\\\\\\\\bBUILD_NAME\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.deprecated.source.cmake\\\"},{\\\"comment\\\":\\\"Compiler Flags\\\",\\\"match\\\":\\\"\\\\\\\\b(?i:(CMAKE_)?(CXX_FLAGS|CMAKE_CXX_FLAGS_DEBUG|CMAKE_CXX_FLAGS_MINSIZEREL|CMAKE_CXX_FLAGS_RELEASE|CMAKE_CXX_FLAGS_RELWITHDEBINFO))\\\\\\\\b\\\",\\\"name\\\":\\\"variable.source.cmake\\\"}],\\\"repository\\\":{},\\\"scopeName\\\":\\\"source.cmake\\\"}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\nimport java from './java.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"COBOL\\\",\\\"fileTypes\\\":[\\\"ccp\\\",\\\"scbl\\\",\\\"cobol\\\",\\\"cbl\\\",\\\"cblle\\\",\\\"cblsrce\\\",\\\"cblcpy\\\",\\\"lks\\\",\\\"pdv\\\",\\\"cpy\\\",\\\"copybook\\\",\\\"cobcopy\\\",\\\"fd\\\",\\\"sel\\\",\\\"scb\\\",\\\"scbl\\\",\\\"sqlcblle\\\",\\\"cob\\\",\\\"dds\\\",\\\"def\\\",\\\"src\\\",\\\"ss\\\",\\\"wks\\\",\\\"bib\\\",\\\"pco\\\"],\\\"name\\\":\\\"cobol\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(^[ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*])([dD]\\\\\\\\s.*$)\\\",\\\"name\\\":\\\"token.info-token.cobol\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.cobol.newpage\\\"}},\\\"match\\\":\\\"(^[ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*])(\\\\\\\\/.*$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.cobol.fixed\\\"}},\\\"match\\\":\\\"(^[ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*])(\\\\\\\\*.*$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.cobol.newpage\\\"}},\\\"match\\\":\\\"(^[0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s])(\\\\\\\\/.*$)\\\"},{\\\"match\\\":\\\"^[0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s]$\\\",\\\"name\\\":\\\"constant.numeric.cobol\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.cobol.fixed\\\"}},\\\"match\\\":\\\"(^[0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s][0-9\\\\\\\\s])(\\\\\\\\*.*$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.cobol.fixed\\\"}},\\\"match\\\":\\\"(^[0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@\\\\\\\\- ][0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@\\\\\\\\- ][0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@\\\\\\\\- ][0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@\\\\\\\\- ][0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@\\\\\\\\- ][0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@\\\\\\\\- ])(\\\\\\\\*.*$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.constant\\\"}},\\\"match\\\":\\\"^\\\\\\\\s+(78)\\\\\\\\s+([0-9a-zA-Z][a-zA-Z\\\\\\\\-0-9_]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.constant\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.identifers.cobol\\\"}},\\\"match\\\":\\\"^\\\\\\\\s+([0-9]+)\\\\\\\\s+([0-9a-zA-Z][a-zA-Z\\\\\\\\-0-9_]+)\\\\\\\\s+((?i:constant))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.cobol.newpage\\\"}},\\\"match\\\":\\\"(^[0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@][0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@][0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@][0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@][0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@][0-9a-zA-Z\\\\\\\\s\\\\\\\\$#%\\\\\\\\.@])(\\\\\\\\/.*$)\\\"},{\\\"match\\\":\\\"^\\\\\\\\*.*$\\\",\\\"name\\\":\\\"comment.line.cobol.fixed\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.cobol\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.cobol\\\"}},\\\"match\\\":\\\"((?:^|\\\\\\\\s+)(?i:\\\\\\\\$set)\\\\\\\\s+)((?i:constant)\\\\\\\\s+)([0-9a-zA-Z][a-zA-Z\\\\\\\\-0-9]+\\\\\\\\s*)([a-zA-Z\\\\\\\\-0-9]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.import.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.begin.bracket.round.cobol\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.other.cobol\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.end.bracket.round.cobol\\\"}},\\\"match\\\":\\\"((?i:\\\\\\\\$\\\\\\\\s*set\\\\\\\\s+)(ilusing)(\\\\\\\\()(.*)(\\\\\\\\)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.import.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.other.cobol\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"match\\\":\\\"((?i:\\\\\\\\$\\\\\\\\s*set\\\\\\\\s+)(ilusing)(\\\\\\\")(.*)(\\\\\\\"))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.other.cobol\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"match\\\":\\\"((?i:\\\\\\\\$set))\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s*(\\\\\\\")(\\\\\\\\w*)(\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.begin.bracket.round.cobol\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.other.cobol\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.end.bracket.round.cobol\\\"}},\\\"match\\\":\\\"((?i:\\\\\\\\$set))\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s*(\\\\\\\\()(.*)(\\\\\\\\))\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.cobol\\\"},\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.directive\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.set.cobol\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\s+)(?i:\\\\\\\\$\\\\\\\\s*set\\\\\\\\s)((?i:01SHUFFLE|64KPARA|64KSECT|AUXOPT|CHIP|DATALIT|EANIM|EXPANDDATA|FIXING|FLAG-CHIP|MASM|MODEL|OPTSIZE|OPTSPEED|PARAS|PROTMODE|REGPARM|SEGCROSS|SEGSIZE|SIGNCOMPARE|SMALLDD|TABLESEGCROSS|TRICKLECHECK|\\\\\\\\s)+).*$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.preprocessor.cobol\\\"}},\\\"match\\\":\\\"(\\\\\\\\$region|\\\\\\\\$end-region)(.*$)\\\"},{\\\"begin\\\":\\\"\\\\\\\\$(?i:doc)(.*$)\\\",\\\"end\\\":\\\"\\\\\\\\$(?i:end-doc)(.*$)\\\",\\\"name\\\":\\\"invalid.illegal.iscobol\\\"},{\\\"match\\\":\\\">>\\\\\\\\s*(?i:turn|page|listing|leap-seconds|d)\\\\\\\\s+.*$\\\",\\\"name\\\":\\\"invalid.illegal.meta.preprocessor.cobolit\\\"},{\\\"match\\\":\\\"(?i:substitute-case|substitute)\\\\\\\\s+\\\",\\\"name\\\":\\\"invalid.illegal.functions.cobolit\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.keyword.control.directive.conditional.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.entity.name.function.preprocessor.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.entity.name.function.preprocessor.cobol\\\"}},\\\"match\\\":\\\"((((>>|\\\\\\\\$)[\\\\\\\\s]*)(?i:elif))(.*$))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.cobol\\\"}},\\\"match\\\":\\\"((((>>|\\\\\\\\$)[\\\\\\\\s]*)(?i:if|else|elif|end-if|end-evaluate|end|define|evaluate|when|display|call-convention|set))(.*$))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.scantoken.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.cobol\\\"}},\\\"match\\\":\\\"(\\\\\\\\*>)\\\\\\\\s+(@[0-9a-zA-Z][a-zA-Z\\\\\\\\-0-9]+)\\\\\\\\s+(.*$)\\\"},{\\\"match\\\":\\\"(\\\\\\\\*>.*$)\\\",\\\"name\\\":\\\"comment.line.modern\\\"},{\\\"match\\\":\\\"(>>.*)$\\\",\\\"name\\\":\\\"strong comment.line.set.acucobol\\\"},{\\\"match\\\":\\\"([nNuU][xX]|[hHxX])'\\\\\\\\h*'\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.cobol\\\"},{\\\"match\\\":\\\"([nNuU][xX]|[hHxX])'.*'\\\",\\\"name\\\":\\\"invalid.illegal.hexadecimal.cobol\\\"},{\\\"match\\\":\\\"([nNuU][xX]|[hHxX])\\\\\\\"\\\\\\\\h*\\\\\\\"\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.cobol\\\"},{\\\"match\\\":\\\"([nNuU][xX]|[hHxX])\\\\\\\".*\\\\\\\"\\\",\\\"name\\\":\\\"invalid.illegal.hexadecimal.cobol\\\"},{\\\"match\\\":\\\"[bB]\\\\\\\"[0-1]\\\\\\\"\\\",\\\"name\\\":\\\"constant.numeric.integer.boolean.cobol\\\"},{\\\"match\\\":\\\"[bB]'[0-1]'\\\",\\\"name\\\":\\\"constant.numeric.integer.boolean.cobol\\\"},{\\\"match\\\":\\\"[oO]\\\\\\\"[0-7]*\\\\\\\"\\\",\\\"name\\\":\\\"constant.numeric.integer.octal.cobol\\\"},{\\\"match\\\":\\\"[oO]\\\\\\\".*\\\\\\\"\\\",\\\"name\\\":\\\"invalid.illegal.octal.cobol\\\"},{\\\"match\\\":\\\"(#)([0-9a-zA-Z][a-zA-Z\\\\\\\\-0-9]+)\\\",\\\"name\\\":\\\"meta.symbol.forced.cobol\\\"},{\\\"begin\\\":\\\"((?<![-_a-zA-Z0-9()-])(?i:installation|author|source-computer|object-computer|date-written|security|date-compiled)(\\\\\\\\.|$))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.identifiers.cobol\\\"}},\\\"end\\\":\\\"(?=((?<![-_])(?i:remarks|author|date-written|source-computer|object-computer|installation|date-compiled|special-names|security|environment\\\\\\\\s+division|data\\\\\\\\s+division|working-storage\\\\\\\\s+section|input-output\\\\\\\\s+section|linkage\\\\\\\\s+section|procedure\\\\\\\\s+division|local-storage\\\\\\\\s+section)|^[ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*][ \\\\\\\\*]\\\\\\\\*.*$|^\\\\\\\\+$))\\\",\\\"name\\\":\\\"comment.block.cobol.remark\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(^[0-9 ][0-9 ][0-9 ][0-9 ][0-9 ][0-9 ])\\\",\\\"name\\\":\\\"constant.numeric.cobol\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.start.bracket.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.end.bracket.cobol\\\"}},\\\"comment\\\":\\\"simple numerics in () and []\\\",\\\"match\\\":\\\"(?<=(\\\\\\\\(|\\\\\\\\[))((\\\\\\\\-\\\\\\\\+)*\\\\\\\\s*[0-9 ,\\\\\\\\.\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/]+)(?=(\\\\\\\\)|\\\\\\\\]))\\\",\\\"name\\\":\\\"constant.numeric.cobol\\\"},{\\\"include\\\":\\\"#number-complex-constant\\\"},{\\\"include\\\":\\\"#number-simple-constant\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:true|false|null|nulls)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"constant.language.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:zeroes|alphabetic-lower|alphabetic-upper|alphanumeric-edited|alphabetic|alphabet|alphanumeric|zeros|zeros|zero|spaces|space|quotes|quote|low-values|low-value|high-values|high-value)(?=\\\\\\\\s+|\\\\\\\\.|,|\\\\\\\\))\\\",\\\"name\\\":\\\"constant.language.figurative.cobol\\\"},{\\\"begin\\\":\\\"(?i:exec\\\\\\\\s+sqlims|exec\\\\\\\\s+sql)\\\",\\\"contentName\\\":\\\"meta.embedded.block.openesql\\\",\\\"end\\\":\\\"(?i:end\\\\\\\\-exec)\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(^\\\\\\\\s*\\\\\\\\*.*)$\\\",\\\"name\\\":\\\"comment.line.sql\\\"},{\\\"match\\\":\\\"(--.*$)\\\",\\\"name\\\":\\\"comment.line.sql\\\"},{\\\"match\\\":\\\"(\\\\\\\\*>.*$)\\\",\\\"name\\\":\\\"comment.line.modern\\\"},{\\\"match\\\":\\\"(\\\\\\\\:([0-9a-zA-Z\\\\\\\\-_])*)\\\",\\\"name\\\":\\\"variable.cobol\\\"},{\\\"include\\\":\\\"source.openesql\\\"}]},{\\\"begin\\\":\\\"(?i:exec\\\\\\\\s+cics)\\\",\\\"contentName\\\":\\\"meta.embedded.block.cics\\\",\\\"end\\\":\\\"(?i:end\\\\\\\\-exec)\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\()\\\",\\\"name\\\":\\\"meta.symbol.cobol\\\"},{\\\"include\\\":\\\"#cics-keywords\\\"},{\\\"include\\\":\\\"#string-double-quoted-constant\\\"},{\\\"include\\\":\\\"#string-quoted-constant\\\"},{\\\"include\\\":\\\"#number-complex-constant\\\"},{\\\"include\\\":\\\"#number-simple-constant\\\"},{\\\"match\\\":\\\"([a-zA-Z-0-9_]*[a-zA-Z0-9]|([#]?[0-9a-zA-Z]+[a-zA-Z-0-9_]*[a-zA-Z0-9]))\\\",\\\"name\\\":\\\"variable.cobol\\\"}]},{\\\"begin\\\":\\\"(?i:exec\\\\\\\\s+dli)\\\",\\\"contentName\\\":\\\"meta.embedded.block.dli\\\",\\\"end\\\":\\\"(?i:end\\\\\\\\-exec)\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\()\\\",\\\"name\\\":\\\"meta.symbol.cobol\\\"},{\\\"include\\\":\\\"#dli-keywords\\\"},{\\\"include\\\":\\\"#dli-options\\\"},{\\\"include\\\":\\\"#string-double-quoted-constant\\\"},{\\\"include\\\":\\\"#string-quoted-constant\\\"},{\\\"include\\\":\\\"#number-complex-constant\\\"},{\\\"include\\\":\\\"#number-simple-constant\\\"},{\\\"match\\\":\\\"([a-zA-Z-0-9_]*[a-zA-Z0-9]|([#]?[0-9a-zA-Z]+[a-zA-Z-0-9_]*[a-zA-Z0-9]))\\\",\\\"name\\\":\\\"variable.cobol\\\"}]},{\\\"begin\\\":\\\"(?i:exec\\\\\\\\s+sqlims)\\\",\\\"contentName\\\":\\\"meta.embedded.block.openesql\\\",\\\"end\\\":\\\"(?i:end\\\\\\\\-exec)\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\*>.*$)\\\",\\\"name\\\":\\\"comment.line.modern\\\"},{\\\"match\\\":\\\"(\\\\\\\\:([a-zA-Z\\\\\\\\-])*)\\\",\\\"name\\\":\\\"variable.cobol\\\"},{\\\"include\\\":\\\"source.openesql\\\"}]},{\\\"begin\\\":\\\"(?i:exec\\\\\\\\s+ado)\\\",\\\"contentName\\\":\\\"meta.embedded.block.openesql\\\",\\\"end\\\":\\\"(?i:end\\\\\\\\-exec)\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(--.*$)\\\",\\\"name\\\":\\\"comment.line.sql\\\"},{\\\"match\\\":\\\"(\\\\\\\\*>.*$)\\\",\\\"name\\\":\\\"comment.line.modern\\\"},{\\\"match\\\":\\\"(\\\\\\\\:([a-zA-Z\\\\\\\\-])*)\\\",\\\"name\\\":\\\"variable.cobol\\\"},{\\\"include\\\":\\\"source.openesql\\\"}]},{\\\"begin\\\":\\\"(?i:exec\\\\\\\\s+html)\\\",\\\"contentName\\\":\\\"meta.embedded.block.html\\\",\\\"end\\\":\\\"(?i:end\\\\\\\\-exec)\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"(?i:exec\\\\\\\\s+java)\\\",\\\"contentName\\\":\\\"meta.embedded.block.java\\\",\\\"end\\\":\\\"(?i:end\\\\\\\\-exec)\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.java\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"match\\\":\\\"(\\\\\\\")(CBL_.*)(\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"match\\\":\\\"(\\\\\\\")(PC_.*)(\\\\\\\")\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"end\\\":\\\"(\\\\\\\"|$)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"name\\\":\\\"string.quoted.double.cobol\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"match\\\":\\\"(\\\\\\\\')(CBL_.*)(\\\\\\\\')\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"match\\\":\\\"(\\\\\\\\')(PC_.*)(\\\\\\\\')\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"end\\\":\\\"('|$)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"name\\\":\\\"string.quoted.single.cobol\\\"},{\\\"begin\\\":\\\"(?<![\\\\\\\\-\\\\\\\\w])[gGzZ]\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"end\\\":\\\"(\\\\\\\"|$)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"name\\\":\\\"string.quoted.double.cobol\\\"},{\\\"begin\\\":\\\"(?<![\\\\\\\\-\\\\\\\\w])[gGzZ]'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"name\\\":\\\"string.quoted.single.cobol\\\"},{\\\"begin\\\":\\\"(?<![\\\\\\\\-\\\\\\\\w])[gGnN]\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"end\\\":\\\"(\\\\\\\"|$)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"name\\\":\\\"string.quoted.double.cobol\\\"},{\\\"begin\\\":\\\"(?<![\\\\\\\\-\\\\\\\\w])[gGnN]'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"name\\\":\\\"string.quoted.single.cobol\\\"},{\\\"begin\\\":\\\"(?<![\\\\\\\\-\\\\\\\\w])[uU]\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"end\\\":\\\"(\\\\\\\"|$)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"name\\\":\\\"string.quoted.utf8.double.cobol\\\"},{\\\"begin\\\":\\\"(?<![\\\\\\\\-\\\\\\\\w])[uU]'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"name\\\":\\\"string.quoted.utf8.single.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:id\\\\\\\\s+division|identification\\\\\\\\s+division|identification|id|property-id|getter|setter|entry|function-id|end\\\\\\\\s+attribute|attribute|interface-id|indexer-id|factory|ctl|class-control|options|environment\\\\\\\\s+division|environment-name|environment-value|environment|configuration\\\\\\\\s+section|configuration|decimal-point\\\\\\\\s+is|decimal-point|console\\\\\\\\s+is|call-convention|special-names|cursor\\\\\\\\s+is|update|picture\\\\\\\\s+symbol|currency\\\\\\\\s+sign|currency|repository|input-output\\\\\\\\s+section|input-output|file\\\\\\\\s+section|file-control|select|optional|i-o-control|data\\\\\\\\s+division|working-storage\\\\\\\\s+section|working-storage|section|local-storage|linkage\\\\\\\\s+section|linkage|communication|report|screen\\\\\\\\s+section|object-storage|object\\\\\\\\s+section|class-object|fd|rd|cd|sd|printing|procedure\\\\\\\\s+division|procedure|division|references|debugging|end\\\\\\\\s+declaratives|declaratives|end\\\\\\\\s+static|end\\\\\\\\s+factory|end\\\\\\\\s+class-object|based-storage|size|font|national-edited|national)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.identifiers.cobol\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.verb.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.cobol\\\"}},\\\"match\\\":\\\"(?<![-_])((?i:valuetype-id|operator-id|method-id|method|property-id|attribute-id|enum-id|iterator-id|class-id|program-id|operator-id|end\\\\\\\\s+program|end\\\\\\\\s+valuetype|extension))[\\\\\\\\.]*[\\\\\\\\s]+([a-zA-Z0-9_-]*)\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:implements|inherits|constraints|constrain)(?=\\\\\\\\s|\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:end\\\\\\\\s+enum|end\\\\\\\\s+interface|end\\\\\\\\s+class|end\\\\\\\\s+property|end\\\\\\\\s+method|end\\\\\\\\s+object|end\\\\\\\\s+iterator|end\\\\\\\\s+function|end\\\\\\\\s+operator|end\\\\\\\\s+program|end\\\\\\\\s+indexer|create|reset|instance|delegate|end-delegate|delegate-id|declare|exception-object|as|stop\\\\\\\\s+iterator|stop\\\\\\\\s+run|stop)(?=\\\\\\\\s|\\\\\\\\.|,|\\\\\\\\))\\\",\\\"name\\\":\\\"keyword.identifiers.cobol\\\"},{\\\"match\\\":\\\"\\\\\\\\s+(?i:attach\\\\\\\\s+method|attach\\\\\\\\s+del|attach|detach\\\\\\\\s+del|detach\\\\\\\\s+method|detach|method|del)(?=\\\\\\\\s|\\\\\\\\.|$)\\\",\\\"name\\\":\\\"keyword.identifiers.cobol\\\"},{\\\"match\\\":\\\"\\\\\\\\s+(?i:sync\\\\\\\\s+(?i:on))(?=\\\\\\\\s|\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.other.sync.cobol\\\"},{\\\"match\\\":\\\"\\\\\\\\s+(?i:try|finally|catch|end-try|throw)(?=\\\\\\\\s|\\\\\\\\.|$)\\\",\\\"name\\\":\\\"keyword.control.catch-exception.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:select|use|thru|varying|giving|remainder|tallying|through|until|execute|returning|using|chaining|yielding|\\\\\\\\+\\\\\\\\+include|copy|replace)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.otherverb.cobol\\\"},{\\\"match\\\":\\\"(?i:dynamic)\\\\\\\\s+(?i:length)(?=\\\\\\\\s|\\\\\\\\.)\\\",\\\"name\\\":\\\"storage.type.dynamiclength.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:assign|external|prototype|organization|organisation|indexed|column|plus|line\\\\\\\\*s*sequential|sequential|access|dynamic|relative|label|block|contains|standard|records|record\\\\\\\\s+key|record|is|alternate|duplicates|reel|tape|terminal|disk\\\\\\\\sfilename|disk|disc|recording\\\\\\\\smode|mode|random)(?=\\\\\\\\s|\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.identifers.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:max|min|integer-of-date|integer-of-day|integer-part|integer|date-to-yyyymmdd|year-to-yyyy|day-to-yyyyddd|exp|exception-file|exception-location|exception-statement|exception-status|e|variance|integer-of-date|rem|pi|factorial|sqrt|log10|fraction-part|mean|exp|log|char|day-of-integer|date-of-integer|exp10|atan|integer-part|tan|sin|cos|midrange|addr|acos|asin|annuity|present-value|integer-of-day|ord-max|ord-min|ord|random|integer-of-date|sum|standard-deviation|median|reverse|abs|upper-case|lower-case|char-national|numval|mod|range|length|locale-date|locale-time-from-seconds|locale-time|seconds-past-midnight|stored-char-length|seconds-from-formatted-time|seconds-past-midnight|trim|length-an|numval-c|current-date|national-of|display-of|when-compiled|integer-of-boolean|combined-datetime|concatenate)(?=\\\\\\\\s|\\\\\\\\.|\\\\\\\\(|\\\\\\\\))\\\",\\\"name\\\":\\\"support.function.cobol\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.cics.cobol\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.identifers.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"match\\\":\\\"(?<![-_])(?i:DFHRESP|DFHVALUE)(\\\\\\\\s*\\\\\\\\(\\\\\\\\s*)([a-zA-Z]*)(\\\\\\\\s*\\\\\\\\))\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:function)(?=\\\\\\\\s|\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:end-accept|end-add|end-sync|end-compute|end-delete|end-display|end-divide|end-set|end-multiply|end-of-page|end-read|end-receive|end-return|end-rewrite|end-search|end-start|end-string|end-subtract|end-unstring|end-write|program|class|interface|enum|interface)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?:by value|by reference|by content|property-value)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.other.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:attr-string|automatic|auto-skip|footing|next|group|indicate|source|control|full|required|of|input|output|i-o|extend|file|error|exception|overflow|goto|off|on|proceed|procedures|procedure|through|invalid|data|normal|eop|returning|to|for|giving|into|by|params|remainder|also|numeric|free|depending|converting|replacing|after|before|all|leading|first|recursive|initialized|global|common|initial|resident|reference|content|are\\\\\\\\sstandard|are|renames|like|format\\\\\\\\stime|values|omitted|value|constant|ascending|descending|key|retry|until|varying|with|no|advancing|up|down|uccurs|ignore\\\\\\\\s+lock|lock|length|delimited|count|delimiter|redefines|from\\\\\\\\s+console|from\\\\\\\\s+command-line|from\\\\\\\\s+user\\\\\\\\s+name|from\\\\\\\\s+day\\\\\\\\s+yyyyddd|from\\\\\\\\s+day|from\\\\\\\\s+time|from\\\\\\\\s+day-of-week|from\\\\\\\\s+escape|from\\\\\\\\s+day\\\\\\\\s+yyyyddd|from\\\\\\\\s+date\\\\\\\\s+yyyymmdd|from\\\\\\\\s+date|from|raising|crt\\\\\\\\s+status|status|class|upon\\\\\\\\s+crt|upon|lines|columns|step|linage|auto|line|position|col|reports|code-set|reporting|arithmetic|localize|program|class|interface|in|at\\\\\\\\s+end|page|name)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.identifers.cobol\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.verb.cobol\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.cobol\\\"}},\\\"comment\\\":\\\"type ssss \\\",\\\"match\\\":\\\"(?<![-_])(?i:type|new)\\\\\\\\s+([a-zA-Z][a-zA-Z0-9\\\\\\\\$\\\\\\\\-\\\\\\\\._]*|[a-zA-Z])(?=\\\\\\\\.$)\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:string)(?=\\\\\\\\s+value|\\\\\\\\.)\\\",\\\"name\\\":\\\"storage.type.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:bit|byte|binary-char|binary-char-unsigned|binary-short|binary-short-unsigned|binary.long|binary-c-long|binary-long-unsigned|binary-long|binary-double|binary-double-unsigned|float-short|float-extended|float-long|bit|condition-value|characters|character\\\\\\\\s+type|character|comma|crt|decimal|object\\\\\\\\+sreference|object-reference|object|list|dictionary|unsigned)(?=\\\\\\\\s|\\\\\\\\.|,|\\\\\\\\]|\\\\\\\\[)\\\",\\\"name\\\":\\\"storage.type.cobol\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.verb.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.symbol.cobol\\\"}},\\\"comment\\\":\\\"operator-id ssss \\\",\\\"match\\\":\\\"(operator-id\\\\\\\\s+[+\\\\\\\\-\\\\\\\\*\\\\\\\\/])\\\",\\\"name\\\":\\\"keyword.operator-id.cobol\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.cobol.b3\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.b3\\\"}},\\\"comment\\\":\\\" ::.. \\\",\\\"match\\\":\\\"(?i:self)(\\\\\\\\:\\\\\\\\:)([0-9a-zA-Z_\\\\\\\\-\\\\\\\\.]*)(?=\\\\\\\\.$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.cobol\\\"}},\\\"comment\\\":\\\" ::.. \\\",\\\"match\\\":\\\"(\\\\\\\\:\\\\\\\\:)([0-9a-zA-Z_\\\\\\\\-\\\\\\\\.]*)\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.verb.cobol.aa\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.cobol.bb\\\"}},\\\"match\\\":\\\"(?<![-_])(?i:type)\\\\\\\\s+([0-9a-zA-Z\\\\\\\\.]*)\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:if|else|end-if|exit\\\\\\\\s+iterator|exit\\\\\\\\s+program|exit\\\\\\\\s+method|evaluate|end-evaluate|exit\\\\\\\\s+perform|perform|end-perform|when\\\\\\\\s+other|when|continue|call|end-call|chain|end-chain|invoke|end\\\\\\\\s+invoke|go\\\\\\\\s+to|go|sort|merge|use|xml|parse|stop\\\\\\\\s+run|goback\\\\\\\\s+returning|goback|raise|exit\\\\\\\\s+function|exit\\\\\\\\sparagraph|await)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.control.cobol\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.picture10.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.picture10.cobol\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"}},\\\"match\\\":\\\"(?<![-_])((?i:picture\\\\\\\\s+is|picture|pic\\\\\\\\s+is|pic)\\\\\\\\s+[-+sS\\\\\\\\*$09aAbBxXuUpPnNzZ/,.]*)\\\\\\\\(([0-9]*)\\\\\\\\)([vV][-+sS\\\\\\\\*$09aAbBxXuUpPnNzZ/,\\\\\\\\.]*)\\\\\\\\(([0-9]*)\\\\\\\\)[-|+]\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.picture9.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.picture9.cobol\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"}},\\\"match\\\":\\\"(?<![-_])((?i:picture\\\\\\\\s+is|picture|pic\\\\\\\\s+is|pic)\\\\\\\\s+[-+sS\\\\\\\\*$09aAbBxXuUpPnNzZ/,.]*)\\\\\\\\(([0-9]*)\\\\\\\\)([vV][-+sS\\\\\\\\*$09aAbBxXuUpPnNzZ/,\\\\\\\\.]*)\\\\\\\\(([0-9]*)\\\\\\\\)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.picture8.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.picture8.cobol\\\"}},\\\"match\\\":\\\"(?<![-_])((?i:picture\\\\\\\\s+is|picture|pic\\\\\\\\s+is|pic)\\\\\\\\s+[-+sS\\\\\\\\*$09aAbBxXuUpPnNzZ/,.]*)\\\\\\\\(([0-9]*)\\\\\\\\)([vV\\\\\\\\.][-+s\\\\\\\\*$09aAbBsSnNxXuUzZ/,]*[0-9\\\\\\\\.()])*\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:picture\\\\\\\\s+is|picture|pic\\\\\\\\s+is|pic)\\\\\\\\s+[-+sS\\\\\\\\*$09aAbBsSnpPNxXuUzZ/,.]*\\\\\\\\([0-9]*\\\\\\\\)[Vv\\\\\\\\.][-+s\\\\\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*\\\",\\\"name\\\":\\\"storage.type.picture7.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:picture\\\\\\\\s+is|picture|pic\\\\\\\\s+is|pic)\\\\\\\\s+[-+sS\\\\\\\\*$09aAbBsSnpPNxXuUzZ/,.]*\\\\\\\\([0-9]*\\\\\\\\)[-+s\\\\\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*[Vv\\\\\\\\.][-+s\\\\\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*\\\",\\\"name\\\":\\\"storage.type.picture6.cobol\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.picture5.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.cobol\\\"}},\\\"match\\\":\\\"(?<![-_])((?i:picture\\\\\\\\s+is|picture|pic\\\\\\\\s+is|pic)\\\\\\\\s+[-+sS\\\\\\\\*$09aAbBsSnpPNxuUXzZ/,.]*)\\\\\\\\(([0-9]*)\\\\\\\\)[-+s\\\\\\\\*0$9aAbBsSnNxpPxXuUzZ/,]*\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:picture\\\\\\\\s+is|picture|pic\\\\\\\\s+is|pic)\\\\\\\\s+[-+sS\\\\\\\\*$09aAbBsSnpNNxXuUzZ/,.]*\\\\\\\\([0-9]*\\\\\\\\)\\\",\\\"name\\\":\\\"storage.type.picture4.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:picture\\\\\\\\s+is|picture|pic\\\\\\\\s+is|pic)\\\\\\\\s+[sS]?[9aAbBsSnNxXuUzZ]*[Vv][9aAxbXuUzZ]*\\\\\\\\([0-9]*\\\\\\\\)\\\",\\\"name\\\":\\\"storage.type.picture3.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:picture\\\\\\\\s+is|picture|pic\\\\\\\\s+is|pic)\\\\\\\\s+[sS]?[9aAbBsSnNxXuUzZ]*[Vv][9aAxbXuUzZ]*\\\",\\\"name\\\":\\\"storage.type.picture2.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:picture\\\\\\\\s+is|picture|pic\\\\\\\\s+is|pic)\\\\\\\\s+[-+\\\\\\\\*$9aAbBsSnpPNxXuUzZ/,.vV]*\\\",\\\"name\\\":\\\"storage.type.picture1.cobol\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.keyword.verb.acu.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.constant.numeric.integer\\\"}},\\\"match\\\":\\\"((?<![-_])(?i:binary|computational-4|comp-4|computational-5|comp-5))\\\\\\\\(([0-9]*)\\\\\\\\)\\\"},{\\\"match\\\":\\\"(?i:cblt-x1-compx-const|cblt-x2-compx-const|cblt-x4-compx-const|cblt-alphanum-const|cblt-x9-compx|cblt-x8-compx|cblt-x8-comp5|cblt-x4-compx|cblt-x4-comp5|cblt-x2-compx|cblt-x2-comp5|cblt-x1-compx|cblt-x1-comp5|cblt-x1|cblt-vfile-status|cblt-vfile-handle|cblt-sx8-comp5|cblt-sx4-comp5|cblt-sx2-comp5|cblt-sx1-comp5|cblt-subsys-params|cblt-splitjoin-buf|cblt-screen-position|cblt-rtncode|cblt-request-context|cblt-reqhand-service-info|cblt-reqhand-service-funcs|cblt-reqhand-response|cblt-reqhand-funcs|cblt-prog-info-params|cblt-prog-info-arg-info|cblt-printer-properties|cblt-printer-name|cblt-printer-info|cblt-printer-default|cblt-ppointer|cblt-pointer|cblt-os-ssize|cblt-os-size|cblt-os-offset|cblt-os-info-params|cblt-os-flags|cblt-node-name|cblt-nls-msg-params|cblt-nls-msg-number-pair|cblt-nls-msg-ins-struct|cblt-nls-msg-buffer|cblt-mouse-shape|cblt-mouse-rect|cblt-mouse-pos|cblt-mouse-event|cblt-mem-validate-param|cblt-idp-exit-service-funcs|cblt-idp-exit-info|cblt-HWND|cblt-HINSTANCE|cblt-get-scr-line-draw-buffer|cblt-get-scr-graphics-buffer|cblt-generic-attr-value|cblt-generic-attr-rgb-values|cblt-generic-attr-information|cblt-file-status|cblt-fileexist-buf|cblt-exit-params|cblt-exit-info-params|cblt-cancel-proc-params|cblt-bytestream-handle|cblt-alphanum)\\\",\\\"name\\\":\\\"support.function.cbltypes.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:computational-1|comp-1|computational-2|comp-2|computational-3|comp-3|computational-4|comp-4|computational-x|comp-x|computational-5|comp-5|computational-6|comp-6|computational-n|comp-n|packed-decimal|index|float|double|signed-short|unsigned-short|signed-int|unsigned-int|signed-long|unsigned-long|comp|computational|group-usage|usage\\\\\\\\sis\\\\\\\\sdisplay|usage\\\\\\\\sis\\\\\\\\sfont|usage\\\\\\\\s+display|binary|mutex-pointer|data-pointer|thread-pointer|sempahore-pointer|event-pointer|program-pointer|procedure-pointer|pointer|window|subwindow|control-type|thread|menu|variant|layout-manager|occurs|typedef|any|times|display\\\\\\\\s+blank\\\\\\\\s+when|blank\\\\\\\\s+when|blank\\\\\\\\s+screen|blank|usage\\\\\\\\sis|is\\\\\\\\spartial|usage|justified|just|right|signed|trailing\\\\\\\\s+separate|sign|seperate|sql)(?=\\\\\\\\s|\\\\\\\\.|\\\\\\\\))\\\",\\\"name\\\":\\\"storage.type.picture.cobol\\\"},{\\\"match\\\":\\\"(?i:byte-length)\\\\\\\\s+[0-9]+\\\",\\\"name\\\":\\\"storage.type.length.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:accept|add|address|allocate|cancel|close|commit|compute|continue|delete|disable|display|bell|divide|eject|enable|enter|evaluate|exhibit|named|exit|free|generate|go\\\\\\\\s+to|initialize\\\\\\\\sonly|initialize|initiate|inspect|merge|end-set|set|end-invoke|invoke\\\\\\\\s+run|invoke|move|corresponding|corr|multiply|otherwise|open|sharing|sort-merge|purge|ready|read|kept|receive|release|return|rewrite|rounded|rollback|search|send|sort|collating\\\\\\\\s+sequence|collating|start|service|subtract|suppress|terminate|then|unlock|string|unstring|validate|write|next|statement|sentence)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:thread-local)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\"},{\\\"match\\\":\\\"(\\\\\\\\s+|^)(?i:foreground-color|background-color|prompt|underline|reverse-video|no-echo|highlight|blink)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.screens.cobol\\\"},{\\\"match\\\":\\\"(\\\\\\\\s+|^)(?i:bold|high|lowlight|low|background-high|background-low|background-standard)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"invalid.illegal.screens.acu.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:internal|public|protected|final|private|static|new|abstract|override|readonly|property|async-void|async-value|async)(?=\\\\\\\\s|\\\\\\\\.)\\\",\\\"name\\\":\\\"storage.modifier.cobol\\\"},{\\\"match\\\":\\\"=|<|>|<=|>=|<>|\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\/|(?<![-_])(?i:b-and|b-or|b-xor|b-exor|b-not|b-left|b-right|and|or|equals|equal|greater\\\\\\\\s+than|less\\\\\\\\s+than|greater)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.operator.cobol\\\"},{\\\"match\\\":\\\"(?i:not\\\\\\\\s+at\\\\\\\\s+end)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.verb.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:not)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.operator.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:sysout-flush|sysin|stderr|stdout|csp|stdin|sysipt|sysout|sysprint|syslist|syslst|printer|syserr|console|c01|c02|c03|c04|c05|c06|c07|c08|c09|c10|c11|c12|formfeed|switch-0|switch-10|switch-11|switch-12|switch-13|switch-13|switch-14|switch-15|switch-1|switch-2|switch-3|switch-4|switch-5|switch-6|switch-7|switch-8|switch-9|sw0|sw11|sw12|sw13|sw14|sw15|sw1|sw2|sw3|sw4|sw5|sw6|sw7|sw8|sw9|sw10|lc_all|lc_collate|lc_ctype|lc_messages|lc_monetary|lc_numeric|lc_time|ucs-4|utf-8|utf-16)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"support.type.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:end-xml|processing.*procedure|xml\\\\\\\\sparse|xml|xml-information|xml-text|xml-schemal|xml-declaration)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.xml.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:json\\\\\\\\s+generate|json|end-json|name\\\\\\\\sof)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.json.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:modify|inquire|tab|title|event|center|label-offset|cell|help-id|cells|push-button|radio-button|page-layout-screen|entry-field|list-box|label|default-font|id|no-tab|unsorted|color|height|width|bind|thread|erase|modeless|scroll|system|menu|title-bar|wrap|destroy|resizeable|user-gray|large-font|newline|3-d|data-columns|display-columns|alignment|separation|cursor-frame-width|divider-color|drag-color|heading-color|heading-divider-color|num-rows|record-data|tiled-headings|vpadding|centered-headings|column-headings|self-act|cancel-button|vscroll|report-composer|clsid|primary-interface|active-x-control|default-interface|default-source|auto-minimize|auto-resize|resource|engraved|initial-state|frame|acuactivexcontrol|activex-res|grid|box|message|namespace|class-name|module|constructor|version|strong|culture|method|handle|exception-value|read-only|dividers|graphical|indexed|termination-value|permanent|boxed|visible|centered|record-position|convert)(?=\\\\\\\\s|\\\\\\\\.|,|;|$)\\\",\\\"name\\\":\\\"invalid.illegal.acu.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:actual|auto|automatic|based-storage|complex|connect|contained|core-index|db-access-control-key|db-data-name|db-exception|db-record-name|db-set-name|db-status|dead-lock|endcobol|end-disable|end-enable|end-send|end-transceive|eos|file-limits|file-limit|formatted|sort-status|usage-mode)(?=\\\\\\\\s|\\\\\\\\.|,|;|$)\\\",\\\"name\\\":\\\"invalid.illegal.netcobol.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:System-Info|Terminal-Info)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"support.type.cobol.acu strong\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:alter)(?=\\\\\\\\s|\\\\\\\\.)\\\",\\\"name\\\":\\\"invalid.illegal.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:apply|areas|area|clock-units|code|com-reg|controls|dbcs|destination|detail|display-1|ending|every|insert|kanjikey|last|left|less|limits|limit|memory|metaclass|modules|more-labels|multiple|native_binary|native|negative|number|numeric-edited|other|padding|password|pf|ph|postive|processing|queue|recording|reload|removal|rerun|reserve|reserved|rewind|segment-limit|segment|separate|sequence|skip1|skip2|skip3|standard-1|standard-2|sub-queue-1|sub-queue-2|sub-queue-3|sum|symbolic|synchronized|sync|table|test|text|than|top|trace|trailing|unit|words|write-only|at|basis|beginning|bottom|cbl|cf|ch|de|positive|egcs|egi|emi|end|reversed|rf|rh|run|same|order|heading|esi)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"keyword.ibmreserved.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:active-class|aligned|anycase|boolean|cols|col|condition|ec|eo|system-default|function-pointer)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"strong keyword.potential.reserved.cobol\\\"},{\\\"match\\\":\\\"(?i:filler)\\\",\\\"name\\\":\\\"keyword.filler.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:address-of|date|day-of-week|day|debug-content|debug-item|debug-line|debug-item|debug-sub-1|debug-sub-2|debug-sub-3|shift-in|shift-out|sort-control|sort-core-size|sort-file-size|sort-message|sort-return|sort-mode-size|sort-return|tally|time|when-compiled|line-counter|page-counter|return-code|linage-counter|debug-line|debug-name|debug-contents|json-code|json-status|xml-code|xml-event|xml-information|xml-namespace-prefix|xml-namespace|xml-nnamespace-repfix|xml-nnamespace|xml-ntext|jnienvptr|igy-javaiop-call-exception)(?![0-9A-Za-z_-])\\\",\\\"name\\\":\\\"variable.language\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:shortint1|shortint2|shortint3|shortint4|shortint5|shortint6|shortint7|longint1|longint2|longint3|longint4|longint5|longint6|bigint1|bigint2|blob-locator|clob-locator|dbclob-locator|dbclob-file|blob-file|clob-file|clob|dbclob|blob|varbinary|long-varbinary|time-record|timestamp-record|timestamp-offset-record|timestamp-offset|timestamp|rowid|xml|long-varchar)(?=\\\\\\\\s|\\\\\\\\.|\\\\\\\\)|\\\\\\\\()\\\",\\\"name\\\":\\\"storage.type.sql.picture.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:self)\\\",\\\"name\\\":\\\"keyword.other.self.cobol\\\"},{\\\"match\\\":\\\"(?<![-_])(?i:super)\\\",\\\"name\\\":\\\"keyword.other.super.cobol\\\"},{\\\"match\\\":\\\"(^[0-9][0-9][0-9][0-9][0-9][0-9])\\\",\\\"name\\\":\\\"constant.numeric.cobol\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.symbol.cobol\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.integer\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.symbol.cobol\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.integer\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.symbol.cobol\\\"}},\\\"match\\\":\\\"(\\\\\\\\()([0-9]*)(:)([0-9]*)(\\\\\\\\))\\\"},{\\\"match\\\":\\\"([a-zA-Z-0-9-_]*[a-zA-Z0-9]|([#]?[0-9a-zA-Z]+[a-zA-Z-0-9_-]*[a-zA-Z0-9]))\\\",\\\"name\\\":\\\"meta.symbol.cobol\\\"}],\\\"repository\\\":{\\\"cics-keywords\\\":{\\\"match\\\":\\\"(?<![\\\\\\\\-\\\\\\\\w])(?i:abcode|abdump|abend|abort|abprogram|abstime|accum|acee|acqactivity|acqprocess|acquactivity|action|activity|activityid|actpartn|add|address|after|aid|alarm|all|allocate|alter|alternate|altscrnht|altscrnwd|and|anykey|aplkybd|apltext|applid|as|asa|asis|asktime|asraintrpt|asrakey|asrapsw|asraregs|asraspc|asrastg|assign|asynchronous|at|attach|attachid|attributes|authenticate|autopage|auxiliary|base64|basicauth|below|bif|binary|bit|bodycharset|bookmark|brdata|brdatalength|brexit|bridge|browsetoken|btrans|buffer|build|burgeability|caddrlength|cancel|card|cbuff|ccsid|certificate|change|changetime|channel|char|characterset|check|chunkend|chunking|chunkno|chunkyes|cicsdatakey|ciphers|class|clear|cliconvert|client|clientaddr|clientaddrnu|clientconv|clientname|clntaddr6nu|clntipfamily|close|closestatus|clrpartn|cmdsec|cnamelength|cnotcompl|codepage|color|commarea|commonname|commonnamlen|comparemax|comparemin|complete|composite|compstatus|condition|confirm|confirmation|connect|consistent|console|container|contexttype|control|convdata|converse|convertst|converttime|convid|copy|counter|country|countrylen|create|critical|ctlchar|current|cursor|cwa|cwaleng|data|data1|data2|datalength|datalenth|dataonly|datapointer|dataset|datastr|datatoxml|datatype|datcontainer|date|dateform|datesep|datestring|day|daycount|dayofmonth|dayofweek|dayofyear|days|daysleft|day-of-week|dcounter|ddmmyy|ddmmyyyy|debkey|debrec|debug-contents|debug-item|debug-line|debug-name|debug-sub-1|debug-sub-2|debug-sub-3|deedit|default|define|defresp|defscrnht|defscrnwd|delay|delete|deleteq|delimiter|deq|destcount|destid|destidleng|detail|detaillength|dfhresp|dfhvalue|digest|digesttype|disconnect|docdelete|docsize|docstatus|doctoken|document|ds3270|dsscs|dump|dumpcode|dumpid|duprec|ecaddr|ecblist|eib|elemname|elemnamelen|elemns|elemnslen|end|endactivity|endbr|endbrowse|endfile|endoutput|enq|enter|entry|entryname|eoc|eods|eprfield|eprfrom|eprinto|eprlength|eprset|eprtype|equal|erase|eraseaup|error|errterm|esmreason|esmresp|event|eventtype|eventual|ewasupp|exception|expect|expirytime|extds|external|extract|facility|facilitytokn|false|faultactlen|faultactor|faultcode|faultcodelen|faultcodestr|faultstring|faultstrlen|fci|fct|field|file|firestatus|flength|fmh|fmhparm|for|force|formattime|formfeed|formfield|free|freekb|freemain|from|fromactivity|fromccsid|fromchannel|fromcodepage|fromdoc|fromflength|fromlength|fromprocess|frset|fulldate|function|gchars|gcodes|gds|generic|get|getmain|getnext|gmmi|groupid|gtec|gteq|handle|head|header|hex|high-value|high-values|hilight|hold|honeom|host|hostcodepage|hostlength|hosttype|hours|httpheader|httpmethod|httprnum|httpversion|httpvnum|ignore|immediate|in|increment|initimg|initparm|initparmlen|inpartn|input|inputevent|inputmsg|inputmsglen|inquire|insert|integer|interval|into|intoccsid|intocodepage|invalidcount|invite|invmpsz|invoke|invokingprog|invpartn|invreq|issue|issuer|item|iutype|journalname|jtypeid|jusfirst|juslast|justify|katakana|keep|keylength|keynumber|l40|l64|l80|label|langinuse|languagecode|last|lastusetime|ldc|ldcmnem|ldcnum|leavekb|length|lengthlist|level|lightpen|linage-counter|line|lineaddr|line-counter|link|list|listlength|llid|load|locality|localitylen|logmessage|logmode|logonlogmode|logonmsg|low-value|low-values|luname|main|map|mapcolumn|mapfail|mapheight|mapline|maponly|mapped|mappingdev|mapset|mapwidth|massinsert|maxdatalen|maxflength|maximum|maxlength|maxlifetime|maxproclen|mcc|mediatype|message|messageid|metadata|metadatalen|method|methodlength|milliseconds|minimum|minutes|mmddyy|mmddyyyy|mode|modename|monitor|month|monthofyear|move|msr|msrcontrol|name|namelength|natlang|natlanginuse|netname|newpassword|newphrase|newphraselen|next|nexttransid|nleom|noautopage|nocc|nocheck|nocliconvert|noclose|nodata|node|nodocdelete|nodump|noedit|noflush|nohandle|noinconvert|none|nooutconert|noqueue|noquiesce|nosrvconvert|nosuspend|note|notpurgeable|notruncate|nowait|nscontainer|null|nulls|numciphers|numevents|numitems|numrec|numroutes|numsegments|numtab|of|oidcard|on|opclass|open|operation|operator|operid|operkeys|operpurge|opid|opsecurity|options|or|orgabcode|organization|organizatlen|orgunit|orgunitlen|outdescr|outline|outpartn|output|owner|pa1|pa2|pa3|page|pagenum|page-counter|paging|parse|partn|partner|partnfail|partnpage|partns|partnset|pass|passbk|password|passwordlen|path|pathlength|pct|pf1|pf10|pf11|pf12|pf13|pf14|pf15|pf16|pf17|pf18|pf19|pf2|pf20|pf21|pf22|pf23|pf24|pf3|pf4|pf5|pf6|pf7|pf8|pf9|pfxleng|phrase|phraselen|piplength|piplist|point|pool|pop|portnumber|portnumnu|post|ppt|predicate|prefix|prepare|princonvid|prinsysid|print|priority|privacy|process|processtype|proclength|procname|profile|program|protect|ps|punch|purge|purgeable|push|put|qname|query|queryparm|querystring|querystrlen|queue|quote|quotes|random|rba|rbn|rdatt|read|readnext|readprev|readq|reattach|receive|receiver|recfm|record|recordlen|recordlength|reduce|refparms|refparmslen|relatesindex|relatestype|relatesuri|release|remove|repeatable|repetable|replace|reply|replylength|reqid|requesttype|resclass|reset|resetbr|resid|residlength|resource|resp|resp2|ressec|restart|restype|result|resume|retain|retcode|retcord|retriece|retrieve|return|returnprog|return-code|rewind|rewrite|ridfld|role|rolelength|rollback|route|routecodes|rprocess|rresource|rrn|rtermid|rtransid|run|saddrlength|scheme|schemename|scope|scopelen|scrnht|scrnwd|seconds|security|segmentlist|send|sender|serialnum|serialnumlen|server|serveraddr|serveraddrnu|serverconv|servername|service|session|sesstoken|set|shared|shift-in|shift-out|sigdata|signal|signoff|signon|sit|snamelength|soapfault|sort-control|sort-core-size|sort-file-size|sort-message|sort-mode-size|sort-return|sosi|space|spaces|spoolclose|spoolopen|spoolread|spoolwrite|srvconvert|srvraddr6nu|srvripfamily|ssltype|start|startbr|startbrowse|startcode|state|statelen|stationid|status|statuscode|statuslen|statustext|storage|strfield|stringformat|subaddr|subcodelen|subcodestr|subevent|subevent1|subevent2|subevent3|subevent4|subevent5|subevent6|subevent7|subevent8|sum|suspend|suspstatus|symbol|symbollist|synchronous|synclevel|synconreturn|syncpoint|sysid|tables|tally|task|taskpriority|tcpip|tcpipservice|tct|tctua|tctualeng|td|tellerid|template|termcode|termid|terminal|termpriority|test|text|textkybd|textlength|textprint|time|timeout|timer|timesep|title|to|toactivity|tochannel|tocontainer|toflength|token|tolength|toprocess|trace|tracenum|trailer|tranpriority|transaction|transform|transid|trigger|trt|true|ts|twa|twaleng|type|typename|typenamelen|typens|typenslen|unattend|uncommitted|unescaped|unexpin|unlock|until|uow|update|uri|urimap|url|urllength|userdatakey|userid|username|usernamelen|userpriority|using|validation|value|valuelength|verify|versionlen|volume|volumeleng|wait|waitcics|web|when-compiled|wpmedia1|wpmedia2|wpmedia3|wpmedia4|wrap|write|writeq|wsacontext|wsaepr|xctl|xmlcontainer|xmltodata|xmltransform|xrba|year|yyddd|yyddmm|yymmdd|yyyyddd|yyyyddmm|yyyymmdd|zero|zeroes|zeros)(?![\\\\\\\\-\\\\\\\\w])\\\",\\\"name\\\":\\\"keyword.verb.cics\\\"},\\\"dli-keywords\\\":{\\\"match\\\":\\\"(?<![\\\\\\\\-\\\\\\\\w])(?i:accept|chkp|deq|dlet|gnp|gn|gu|isrt|load|log|pos|query|refresh|repl|retrieve|rolb|roll|rols|schd|sets|setu|symchkp|term|xrst)(?![\\\\\\\\-\\\\\\\\w])\\\",\\\"name\\\":\\\"keyword.verb.dli\\\"},\\\"dli-options\\\":{\\\"match\\\":\\\"(?<![\\\\\\\\-\\\\\\\\w])(?i:statusgroup|checkpoint|chkp|id|lockclass|segment|info|where|from|using|keyfeedback|feedbacklen|variable|first|last|current|seglength|offset|locked|movenext|getfirst|set|setcond|setzero|setparent|fieldlength|keys|maxlength|length[0-9]*|area[0-9]*|psc|pcs|pcb|sysserve|into)(?![\\\\\\\\-\\\\\\\\w])\\\",\\\"name\\\":\\\"keyword.other.dli\\\"},\\\"number-complex-constant\\\":{\\\"match\\\":\\\"(\\\\\\\\-|\\\\\\\\+)?((([0-9]+(\\\\\\\\.[0-9]+))|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?(?=\\\\\\\\s|\\\\\\\\.$|,|\\\\\\\\))\\\",\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"number-simple-constant\\\":{\\\"match\\\":\\\"(\\\\\\\\-|\\\\\\\\+)?([0-9]+)(?=\\\\\\\\s|\\\\\\\\.$|,|\\\\\\\\))\\\",\\\"name\\\":\\\"constant.numeric.cobol\\\"},\\\"string-double-quoted-constant\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"end\\\":\\\"(\\\\\\\"|$)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}}},\\\"string-quoted-constant\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cobol\\\"}},\\\"end\\\":\\\"('|$)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cobol\\\"}},\\\"name\\\":\\\"string.quoted.single.cobol\\\"}},\\\"scopeName\\\":\\\"source.cobol\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"java\\\"]}\"))\n\nexport default [\n...html,\n...java,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"CODEOWNERS\\\",\\\"name\\\":\\\"codeowners\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pattern\\\"},{\\\"include\\\":\\\"#owner\\\"}],\\\"repository\\\":{\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*#\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.codeowners\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.codeowners\\\"}]},\\\"owner\\\":{\\\"match\\\":\\\"\\\\\\\\S*@\\\\\\\\S+\\\",\\\"name\\\":\\\"storage.type.function.codeowners\\\"},\\\"pattern\\\":{\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\S+)\\\",\\\"name\\\":\\\"variable.other.codeowners\\\"}},\\\"scopeName\\\":\\\"text.codeowners\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"CodeQL\\\",\\\"fileTypes\\\":[\\\"ql\\\",\\\"qll\\\"],\\\"name\\\":\\\"codeql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#module-member\\\"}],\\\"repository\\\":{\\\"abstract\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:abstract)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.abstract.ql\\\"},\\\"additional\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:additional)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.additional.ql\\\"},\\\"and\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:and)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.and.ql\\\"},\\\"annotation\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#bindingset-annotation\\\"},{\\\"include\\\":\\\"#language-annotation\\\"},{\\\"include\\\":\\\"#pragma-annotation\\\"},{\\\"include\\\":\\\"#annotation-keyword\\\"}]},\\\"annotation-keyword\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#abstract\\\"},{\\\"include\\\":\\\"#additional\\\"},{\\\"include\\\":\\\"#bindingset\\\"},{\\\"include\\\":\\\"#cached\\\"},{\\\"include\\\":\\\"#default\\\"},{\\\"include\\\":\\\"#deprecated\\\"},{\\\"include\\\":\\\"#external\\\"},{\\\"include\\\":\\\"#final\\\"},{\\\"include\\\":\\\"#language\\\"},{\\\"include\\\":\\\"#library\\\"},{\\\"include\\\":\\\"#override\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#private\\\"},{\\\"include\\\":\\\"#query\\\"},{\\\"include\\\":\\\"#signature\\\"},{\\\"include\\\":\\\"#transient\\\"}]},\\\"any\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:any)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.quantifier.any.ql\\\"},\\\"arithmetic-operator\\\":{\\\"match\\\":\\\"\\\\\\\\+|-|\\\\\\\\*|/|%\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.ql\\\"},\\\"as\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:as)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.as.ql\\\"},\\\"asc\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:asc)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.order.asc.ql\\\"},\\\"at-lower-id\\\":{\\\"match\\\":\\\"@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))\\\"},\\\"avg\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:avg)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.aggregate.avg.ql\\\"},\\\"bindingset\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:bindingset)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.bindingset.ql\\\"},\\\"bindingset-annotation\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:bindingset)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#bindingset\\\"}]}},\\\"end\\\":\\\"(?!(?:\\\\\\\\s|$|(?://|/\\\\\\\\*))|\\\\\\\\[)|(?<=\\\\\\\\])\\\",\\\"name\\\":\\\"meta.block.bindingset-annotation.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#bindingset-annotation-body\\\"},{\\\"include\\\":\\\"#non-context-sensitive\\\"}]},\\\"bindingset-annotation-body\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\[))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#open-bracket\\\"}]}},\\\"end\\\":\\\"((?:\\\\\\\\]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#close-bracket\\\"}]}},\\\"name\\\":\\\"meta.block.bindingset-annotation-body.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"variable.parameter.ql\\\"}]},\\\"boolean\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:boolean)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.type.boolean.ql\\\"},\\\"by\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:by)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.order.by.ql\\\"},\\\"cached\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:cached)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.cached.ql\\\"},\\\"class\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:class)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.class.ql\\\"},\\\"class-body\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\{))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#open-brace\\\"}]}},\\\"end\\\":\\\"((?:\\\\\\\\}))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#close-brace\\\"}]}},\\\"name\\\":\\\"meta.block.class-body.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-member\\\"}]},\\\"class-declaration\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:class)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#class\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\}|;)\\\",\\\"name\\\":\\\"meta.block.class-declaration.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-body\\\"},{\\\"include\\\":\\\"#extends-clause\\\"},{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.type.class.ql\\\"}]},\\\"class-member\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#predicate-or-field-declaration\\\"},{\\\"include\\\":\\\"#annotation\\\"},{\\\"include\\\":\\\"#non-context-sensitive\\\"}]},\\\"close-angle\\\":{\\\"match\\\":\\\">\\\",\\\"name\\\":\\\"punctuation.anglebracket.close.ql\\\"},\\\"close-brace\\\":{\\\"match\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.curlybrace.close.ql\\\"},\\\"close-bracket\\\":{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.squarebracket.close.ql\\\"},\\\"close-paren\\\":{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.parenthesis.close.ql\\\"},\\\"comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.ql\\\"},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.ql\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=/\\\\\\\\*\\\\\\\\*)([^*]|\\\\\\\\*(?!/))*$\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G\\\\\\\\s*(@\\\\\\\\S+)\\\",\\\"name\\\":\\\"keyword.tag.ql\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)\\\\\\\\s*([^*]|\\\\\\\\*(?!/))(?=([^*]|[*](?!/))*$)\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.ql\\\"},{\\\"match\\\":\\\"//.*$\\\",\\\"name\\\":\\\"comment.line.double-slash.ql\\\"}]},\\\"comment-start\\\":{\\\"match\\\":\\\"//|/\\\\\\\\*\\\"},\\\"comparison-operator\\\":{\\\"match\\\":\\\"=|\\\\\\\\!\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.comparison.ql\\\"},\\\"concat\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:concat)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.aggregate.concat.ql\\\"},\\\"count\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:count)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.aggregate.count.ql\\\"},\\\"date\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:date)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.type.date.ql\\\"},\\\"default\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:default)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.default.ql\\\"},\\\"deprecated\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:deprecated)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.deprecated.ql\\\"},\\\"desc\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:desc)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.order.desc.ql\\\"},\\\"dont-care\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:_)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"variable.language.dont-care.ql\\\"},\\\"dot\\\":{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.accessor.ql\\\"},\\\"dotdot\\\":{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.operator.range.ql\\\"},\\\"else\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:else)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.else.ql\\\"},\\\"end-of-as-clause\\\":{\\\"match\\\":\\\"(?:(?<=(?:[0-9A-Za-z_]))(?!(?:[0-9A-Za-z_]))(?<!(?<!(?:[0-9A-Za-z_]))as))|(?=\\\\\\\\s*(?!(?://|/\\\\\\\\*)|(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))))\\\\\\\\S)|(?=\\\\\\\\s*(?:(?:(?:\\\\\\\\b(?:_)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:and)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:any)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:as)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:asc)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:avg)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:boolean)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:by)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:class)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:concat)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:count)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:date)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:desc)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:else)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:exists)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:extends)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:false)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:float)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:forall)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:forex)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:from)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:if)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:implies)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:import)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:in)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:instanceof)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:int)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:max)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:min)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:module)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:newtype)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:none)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:not)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:or)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:order)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:predicate)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:rank)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:result)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictconcat)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictcount)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictsum)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:string)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:sum)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:super)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:then)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:this)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:true)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:unique)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_])))))))\\\"},\\\"end-of-id\\\":{\\\"match\\\":\\\"(?!(?:[0-9A-Za-z_]))\\\"},\\\"exists\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:exists)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.quantifier.exists.ql\\\"},\\\"expr-as-clause\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:as)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#as\\\"}]}},\\\"end\\\":\\\"(?:(?:(?<=(?:[0-9A-Za-z_]))(?!(?:[0-9A-Za-z_]))(?<!(?<!(?:[0-9A-Za-z_]))as))|(?=\\\\\\\\s*(?!(?://|/\\\\\\\\*)|(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))))\\\\\\\\S)|(?=\\\\\\\\s*(?:(?:(?:\\\\\\\\b(?:_)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:and)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:any)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:as)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:asc)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:avg)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:boolean)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:by)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:class)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:concat)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:count)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:date)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:desc)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:else)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:exists)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:extends)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:false)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:float)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:forall)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:forex)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:from)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:if)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:implies)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:import)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:in)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:instanceof)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:int)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:max)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:min)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:module)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:newtype)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:none)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:not)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:or)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:order)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:predicate)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:rank)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:result)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictconcat)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictcount)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictsum)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:string)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:sum)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:super)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:then)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:this)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:true)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:unique)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_]))))))))\\\",\\\"name\\\":\\\"meta.block.expr-as-clause.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"variable.other.ql\\\"}]},\\\"extends\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:extends)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.extends.ql\\\"},\\\"extends-clause\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:extends)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#extends\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.block.extends-clause.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))|(?:@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.type.ql\\\"}]},\\\"external\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:external)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.external.ql\\\"},\\\"false\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:false)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"constant.language.boolean.false.ql\\\"},\\\"final\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:final)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.final.ql\\\"},\\\"float\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:float)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.type.float.ql\\\"},\\\"float-literal\\\":{\\\"match\\\":\\\"-?[0-9]+\\\\\\\\.[0-9]+(?![0-9])\\\",\\\"name\\\":\\\"constant.numeric.decimal.ql\\\"},\\\"forall\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:forall)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.quantifier.forall.ql\\\"},\\\"forex\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:forex)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.quantifier.forex.ql\\\"},\\\"from\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:from)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.from.ql\\\"},\\\"from-section\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:from)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#from\\\"}]}},\\\"end\\\":\\\"(?=(?:\\\\\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"name\\\":\\\"meta.block.from-section.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))(?=\\\\\\\\s*(?:,|(?:\\\\\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_]))))|$))\\\",\\\"name\\\":\\\"variable.parameter.ql\\\"},{\\\"include\\\":\\\"#module-qualifier\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))|(?:@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.type.ql\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"variable.parameter.ql\\\"}]},\\\"id-character\\\":{\\\"match\\\":\\\"[0-9A-Za-z_]\\\"},\\\"if\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:if)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.if.ql\\\"},\\\"implements\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:implements)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.implements.ql\\\"},\\\"implements-clause\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:implements)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#implements\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.block.implements-clause.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))|(?:@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.type.ql\\\"}]},\\\"implies\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:implies)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.implies.ql\\\"},\\\"import\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:import)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.import.ql\\\"},\\\"import-as-clause\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:as)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#as\\\"}]}},\\\"end\\\":\\\"(?:(?:(?<=(?:[0-9A-Za-z_]))(?!(?:[0-9A-Za-z_]))(?<!(?<!(?:[0-9A-Za-z_]))as))|(?=\\\\\\\\s*(?!(?://|/\\\\\\\\*)|(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))))\\\\\\\\S)|(?=\\\\\\\\s*(?:(?:(?:\\\\\\\\b(?:_)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:and)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:any)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:as)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:asc)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:avg)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:boolean)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:by)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:class)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:concat)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:count)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:date)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:desc)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:else)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:exists)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:extends)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:false)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:float)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:forall)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:forex)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:from)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:if)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:implies)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:import)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:in)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:instanceof)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:int)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:max)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:min)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:module)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:newtype)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:none)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:not)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:or)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:order)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:predicate)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:rank)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:result)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictconcat)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictcount)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictsum)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:string)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:sum)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:super)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:then)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:this)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:true)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:unique)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_]))))))))\\\",\\\"name\\\":\\\"meta.block.import-as-clause.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.type.namespace.ql\\\"}]},\\\"import-directive\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:import)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#import\\\"}]}},\\\"end\\\":\\\"(?<!\\\\\\\\bimport)(?<=(?:\\\\\\\\>)|[A-Za-z0-9_])(?!\\\\\\\\s*(\\\\\\\\.|\\\\\\\\:\\\\\\\\:|\\\\\\\\,|(?:<)))\\\",\\\"name\\\":\\\"meta.block.import-directive.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#instantiation-args\\\"},{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.type.namespace.ql\\\"}]},\\\"in\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:in)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.in.ql\\\"},\\\"instanceof\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:instanceof)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.instanceof.ql\\\"},\\\"instantiation-args\\\":{\\\"begin\\\":\\\"((?:<))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#open-angle\\\"}]}},\\\"end\\\":\\\"((?:>))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#close-angle\\\"}]}},\\\"name\\\":\\\"meta.type.parameters.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#instantiation-args\\\"},{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.type.namespace.ql\\\"}]},\\\"int\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:int)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.type.int.ql\\\"},\\\"int-literal\\\":{\\\"match\\\":\\\"-?[0-9]+(?![0-9])\\\",\\\"name\\\":\\\"constant.numeric.decimal.ql\\\"},\\\"keyword\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#dont-care\\\"},{\\\"include\\\":\\\"#and\\\"},{\\\"include\\\":\\\"#any\\\"},{\\\"include\\\":\\\"#as\\\"},{\\\"include\\\":\\\"#asc\\\"},{\\\"include\\\":\\\"#avg\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#by\\\"},{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#concat\\\"},{\\\"include\\\":\\\"#count\\\"},{\\\"include\\\":\\\"#date\\\"},{\\\"include\\\":\\\"#desc\\\"},{\\\"include\\\":\\\"#else\\\"},{\\\"include\\\":\\\"#exists\\\"},{\\\"include\\\":\\\"#extends\\\"},{\\\"include\\\":\\\"#false\\\"},{\\\"include\\\":\\\"#float\\\"},{\\\"include\\\":\\\"#forall\\\"},{\\\"include\\\":\\\"#forex\\\"},{\\\"include\\\":\\\"#from\\\"},{\\\"include\\\":\\\"#if\\\"},{\\\"include\\\":\\\"#implies\\\"},{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#in\\\"},{\\\"include\\\":\\\"#instanceof\\\"},{\\\"include\\\":\\\"#int\\\"},{\\\"include\\\":\\\"#max\\\"},{\\\"include\\\":\\\"#min\\\"},{\\\"include\\\":\\\"#module\\\"},{\\\"include\\\":\\\"#newtype\\\"},{\\\"include\\\":\\\"#none\\\"},{\\\"include\\\":\\\"#not\\\"},{\\\"include\\\":\\\"#or\\\"},{\\\"include\\\":\\\"#order\\\"},{\\\"include\\\":\\\"#predicate\\\"},{\\\"include\\\":\\\"#rank\\\"},{\\\"include\\\":\\\"#result\\\"},{\\\"include\\\":\\\"#select\\\"},{\\\"include\\\":\\\"#strictconcat\\\"},{\\\"include\\\":\\\"#strictcount\\\"},{\\\"include\\\":\\\"#strictsum\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#sum\\\"},{\\\"include\\\":\\\"#super\\\"},{\\\"include\\\":\\\"#then\\\"},{\\\"include\\\":\\\"#this\\\"},{\\\"include\\\":\\\"#true\\\"},{\\\"include\\\":\\\"#unique\\\"},{\\\"include\\\":\\\"#where\\\"}]},\\\"language\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:language)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.language.ql\\\"},\\\"language-annotation\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:language)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}},\\\"end\\\":\\\"(?!(?:\\\\\\\\s|$|(?://|/\\\\\\\\*))|\\\\\\\\[)|(?<=\\\\\\\\])\\\",\\\"name\\\":\\\"meta.block.language-annotation.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language-annotation-body\\\"},{\\\"include\\\":\\\"#non-context-sensitive\\\"}]},\\\"language-annotation-body\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\[))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#open-bracket\\\"}]}},\\\"end\\\":\\\"((?:\\\\\\\\]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#close-bracket\\\"}]}},\\\"name\\\":\\\"meta.block.language-annotation-body.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:monotonicAggregates)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.ql\\\"}]},\\\"library\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:library)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.library.ql\\\"},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#float-literal\\\"},{\\\"include\\\":\\\"#int-literal\\\"},{\\\"include\\\":\\\"#string-literal\\\"}]},\\\"lower-id\\\":{\\\"match\\\":\\\"\\\\\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))\\\"},\\\"max\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:max)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.aggregate.max.ql\\\"},\\\"min\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:min)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.aggregate.min.ql\\\"},\\\"module\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:module)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.module.ql\\\"},\\\"module-body\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\{))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#open-brace\\\"}]}},\\\"end\\\":\\\"((?:\\\\\\\\}))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#close-brace\\\"}]}},\\\"name\\\":\\\"meta.block.module-body.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#module-member\\\"}]},\\\"module-declaration\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:module)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#module\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\}|;)\\\",\\\"name\\\":\\\"meta.block.module-declaration.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#module-body\\\"},{\\\"include\\\":\\\"#implements-clause\\\"},{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.type.namespace.ql\\\"}]},\\\"module-member\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#import-directive\\\"},{\\\"include\\\":\\\"#import-as-clause\\\"},{\\\"include\\\":\\\"#module-declaration\\\"},{\\\"include\\\":\\\"#newtype-declaration\\\"},{\\\"include\\\":\\\"#newtype-branch-name-with-prefix\\\"},{\\\"include\\\":\\\"#predicate-parameter-list\\\"},{\\\"include\\\":\\\"#predicate-body\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#select-clause\\\"},{\\\"include\\\":\\\"#predicate-or-field-declaration\\\"},{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"include\\\":\\\"#annotation\\\"}]},\\\"module-qualifier\\\":{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))(?=\\\\\\\\s*\\\\\\\\:\\\\\\\\:)\\\",\\\"name\\\":\\\"entity.name.type.namespace.ql\\\"},\\\"newtype\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:newtype)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.newtype.ql\\\"},\\\"newtype-branch-name-with-prefix\\\":{\\\"begin\\\":\\\"\\\\\\\\=|(?:\\\\\\\\b(?:or)(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#or\\\"},{\\\"include\\\":\\\"#comparison-operator\\\"}]}},\\\"end\\\":\\\"(?:\\\\\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.ql\\\"}},\\\"name\\\":\\\"meta.block.newtype-branch-name-with-prefix.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#non-context-sensitive\\\"}]},\\\"newtype-declaration\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:newtype)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#newtype\\\"}]}},\\\"end\\\":\\\"(?:\\\\\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.ql\\\"}},\\\"name\\\":\\\"meta.block.newtype-declaration.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#non-context-sensitive\\\"}]},\\\"non-context-sensitive\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#operator-or-punctuation\\\"},{\\\"include\\\":\\\"#keyword\\\"}]},\\\"none\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:none)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.quantifier.none.ql\\\"},\\\"not\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:not)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.not.ql\\\"},\\\"open-angle\\\":{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"punctuation.anglebracket.open.ql\\\"},\\\"open-brace\\\":{\\\"match\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"punctuation.curlybrace.open.ql\\\"},\\\"open-bracket\\\":{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.squarebracket.open.ql\\\"},\\\"open-paren\\\":{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.parenthesis.open.ql\\\"},\\\"operator-or-punctuation\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#relational-operator\\\"},{\\\"include\\\":\\\"#comparison-operator\\\"},{\\\"include\\\":\\\"#arithmetic-operator\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#semicolon\\\"},{\\\"include\\\":\\\"#dot\\\"},{\\\"include\\\":\\\"#dotdot\\\"},{\\\"include\\\":\\\"#pipe\\\"},{\\\"include\\\":\\\"#open-paren\\\"},{\\\"include\\\":\\\"#close-paren\\\"},{\\\"include\\\":\\\"#open-brace\\\"},{\\\"include\\\":\\\"#close-brace\\\"},{\\\"include\\\":\\\"#open-bracket\\\"},{\\\"include\\\":\\\"#close-bracket\\\"},{\\\"include\\\":\\\"#open-angle\\\"},{\\\"include\\\":\\\"#close-angle\\\"}]},\\\"or\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:or)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.or.ql\\\"},\\\"order\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:order)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.order.order.ql\\\"},\\\"override\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:override)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.override.ql\\\"},\\\"pipe\\\":{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.separator.pipe.ql\\\"},\\\"pragma\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:pragma)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.pragma.ql\\\"},\\\"pragma-annotation\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:pragma)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#pragma\\\"}]}},\\\"end\\\":\\\"(?!(?:\\\\\\\\s|$|(?://|/\\\\\\\\*))|\\\\\\\\[)|(?<=\\\\\\\\])\\\",\\\"name\\\":\\\"meta.block.pragma-annotation.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pragma-annotation-body\\\"},{\\\"include\\\":\\\"#non-context-sensitive\\\"}]},\\\"pragma-annotation-body\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\[))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#open-bracket\\\"}]}},\\\"end\\\":\\\"((?:\\\\\\\\]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#close-bracket\\\"}]}},\\\"name\\\":\\\"meta.block.pragma-annotation-body.ql\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:inline|noinline|nomagic|noopt)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.ql\\\"}]},\\\"predicate\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:predicate)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.predicate.ql\\\"},\\\"predicate-body\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\{))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#open-brace\\\"}]}},\\\"end\\\":\\\"((?:\\\\\\\\}))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#close-brace\\\"}]}},\\\"name\\\":\\\"meta.block.predicate-body.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#predicate-body-contents\\\"}]},\\\"predicate-body-contents\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expr-as-clause\\\"},{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"include\\\":\\\"#module-qualifier\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\\\\\\s*(?:\\\\\\\\*|\\\\\\\\+)?\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.ql\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"variable.other.ql\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))|(?:@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.type.ql\\\"}]},\\\"predicate-or-field-declaration\\\":{\\\"begin\\\":\\\"(?:(?=(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))))(?!(?:(?:(?:\\\\\\\\b(?:_)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:and)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:any)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:as)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:asc)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:avg)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:boolean)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:by)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:class)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:concat)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:count)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:date)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:desc)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:else)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:exists)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:extends)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:false)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:float)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:forall)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:forex)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:from)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:if)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:implies)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:import)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:in)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:instanceof)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:int)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:max)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:min)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:module)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:newtype)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:none)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:not)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:or)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:order)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:predicate)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:rank)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:result)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictconcat)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictcount)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:strictsum)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:string)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:sum)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:super)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:then)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:this)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:true)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:unique)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_]))))))|(?:(?:(?:\\\\\\\\b(?:abstract)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:additional)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:bindingset)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:cached)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:default)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:deprecated)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:external)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:final)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:language)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:library)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:override)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:pragma)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:private)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:query)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:signature)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:transient)(?:(?!(?:[0-9A-Za-z_]))))))))|(?=(?:(?:(?:\\\\\\\\b(?:boolean)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:date)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:float)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:int)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:predicate)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:string)(?:(?!(?:[0-9A-Za-z_])))))))|(?=(?:@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\}|;)\\\",\\\"name\\\":\\\"meta.block.predicate-or-field-declaration.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#predicate-parameter-list\\\"},{\\\"include\\\":\\\"#predicate-body\\\"},{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"include\\\":\\\"#module-qualifier\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))(?=\\\\\\\\s*;)\\\",\\\"name\\\":\\\"variable.field.ql\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.function.ql\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))|(?:@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.type.ql\\\"}]},\\\"predicate-parameter-list\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#open-paren\\\"}]}},\\\"end\\\":\\\"((?:\\\\\\\\)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#close-paren\\\"}]}},\\\"name\\\":\\\"meta.block.predicate-parameter-list.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))(?=\\\\\\\\s*(?:,|\\\\\\\\)))\\\",\\\"name\\\":\\\"variable.parameter.ql\\\"},{\\\"include\\\":\\\"#module-qualifier\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))|(?:@[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"entity.name.type.ql\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[a-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"variable.parameter.ql\\\"}]},\\\"predicate-start-keyword\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#date\\\"},{\\\"include\\\":\\\"#float\\\"},{\\\"include\\\":\\\"#int\\\"},{\\\"include\\\":\\\"#predicate\\\"},{\\\"include\\\":\\\"#string\\\"}]},\\\"private\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:private)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.private.ql\\\"},\\\"query\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:query)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.query.ql\\\"},\\\"rank\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:rank)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.aggregate.rank.ql\\\"},\\\"relational-operator\\\":{\\\"match\\\":\\\"<=|<|>=|>\\\",\\\"name\\\":\\\"keyword.operator.relational.ql\\\"},\\\"result\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:result)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"variable.language.result.ql\\\"},\\\"select\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.query.select.ql\\\"},\\\"select-as-clause\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:as)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#as\\\"}]}},\\\"end\\\":\\\"(?<=(?:[0-9A-Za-z_])(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"match\\\":\\\"meta.block.select-as-clause.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#non-context-sensitive\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_]))))\\\",\\\"name\\\":\\\"variable.other.ql\\\"}]},\\\"select-clause\\\":{\\\"begin\\\":\\\"(?=(?:\\\\\\\\b(?:from)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"end\\\":\\\"(?!(?:\\\\\\\\b(?:from)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_]))))|(?:\\\\\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"name\\\":\\\"meta.block.select-clause.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#from-section\\\"},{\\\"include\\\":\\\"#where-section\\\"},{\\\"include\\\":\\\"#select-section\\\"}]},\\\"select-section\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#select\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.block.select-section.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#predicate-body-contents\\\"},{\\\"include\\\":\\\"#select-as-clause\\\"}]},\\\"semicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.separator.statement.ql\\\"},\\\"signature\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:signature)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.signature.ql\\\"},\\\"simple-id\\\":{\\\"match\\\":\\\"\\\\\\\\b[A-Za-z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))\\\"},\\\"strictconcat\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:strictconcat)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.aggregate.strictconcat.ql\\\"},\\\"strictcount\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:strictcount)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.aggregate.strictcount.ql\\\"},\\\"strictsum\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:strictsum)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.aggregate.strictsum.ql\\\"},\\\"string\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:string)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.type.string.ql\\\"},\\\"string-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\"\\\\\\\\\\\\\\\\nrt]\\\",\\\"name\\\":\\\"constant.character.escape.ql\\\"},\\\"string-literal\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ql\\\"}},\\\"end\\\":\\\"(\\\\\\\")|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ql\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.ql\\\"}},\\\"name\\\":\\\"string.quoted.double.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-escape\\\"}]},\\\"sum\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:sum)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.aggregate.sum.ql\\\"},\\\"super\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:super)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"variable.language.super.ql\\\"},\\\"then\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:then)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.other.then.ql\\\"},\\\"this\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:this)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"variable.language.this.ql\\\"},\\\"transient\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:transient)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"storage.modifier.transient.ql\\\"},\\\"true\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:true)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"constant.language.boolean.true.ql\\\"},\\\"unique\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:unique)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.aggregate.unique.ql\\\"},\\\"upper-id\\\":{\\\"match\\\":\\\"\\\\\\\\b[A-Z][0-9A-Za-z_]*(?:(?!(?:[0-9A-Za-z_])))\\\"},\\\"where\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_])))\\\",\\\"name\\\":\\\"keyword.query.where.ql\\\"},\\\"where-section\\\":{\\\"begin\\\":\\\"((?:\\\\\\\\b(?:where)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#where\\\"}]}},\\\"end\\\":\\\"(?=(?:\\\\\\\\b(?:select)(?:(?!(?:[0-9A-Za-z_])))))\\\",\\\"name\\\":\\\"meta.block.where-section.ql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#predicate-body-contents\\\"}]},\\\"whitespace-or-comment-start\\\":{\\\"match\\\":\\\"\\\\\\\\s|$|(?://|/\\\\\\\\*)\\\"}},\\\"scopeName\\\":\\\"source.ql\\\",\\\"aliases\\\":[\\\"ql\\\"]}\"))\n\nexport default [\nlang\n]\n", "import javascript from './javascript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"CoffeeScript\\\",\\\"name\\\":\\\"coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.coffee\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.coffee\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.instance.coffee\\\"}},\\\"match\\\":\\\"(new)\\\\\\\\s+(?:(?:(class)\\\\\\\\s+(\\\\\\\\w+(?:\\\\\\\\.\\\\\\\\w*)*)?)|(\\\\\\\\w+(?:\\\\\\\\.\\\\\\\\w*)*))\\\",\\\"name\\\":\\\"meta.class.instance.constructor.coffee\\\"},{\\\"begin\\\":\\\"'''\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.coffee\\\"}},\\\"end\\\":\\\"'''\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.coffee\\\"}},\\\"name\\\":\\\"string.quoted.single.heredoc.coffee\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.escape.backslash.coffee\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\).\\\",\\\"name\\\":\\\"constant.character.escape.backslash.coffee\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.coffee\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.coffee\\\"}},\\\"name\\\":\\\"string.quoted.double.heredoc.coffee\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.escape.backslash.coffee\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\).\\\",\\\"name\\\":\\\"constant.character.escape.backslash.coffee\\\"},{\\\"include\\\":\\\"#interpolated_coffee\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"source.js.embedded.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.coffee\\\"}},\\\"match\\\":\\\"(`)(.*)(`)\\\",\\\"name\\\":\\\"string.quoted.script.coffee\\\"},{\\\"begin\\\":\\\"(?<!#)###(?!#)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.coffee\\\"}},\\\"end\\\":\\\"###\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.coffee\\\"}},\\\"name\\\":\\\"comment.block.coffee\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|\\\\\\\\s)@\\\\\\\\w*(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"storage.type.annotation.coffee\\\"}]},{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.coffee\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.number-sign.coffee\\\"},{\\\"begin\\\":\\\"///\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.coffee\\\"}},\\\"end\\\":\\\"(///)[gimuy]*\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.coffee\\\"}},\\\"name\\\":\\\"string.regexp.multiline.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heregexp\\\"}]},{\\\"begin\\\":\\\"(?<![\\\\\\\\w$])(/)(?=(?![/*+?])(.+)(/)[gimuy]*(?!\\\\\\\\s*[\\\\\\\\w$/(]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.coffee\\\"}},\\\"end\\\":\\\"(/)[gimuy]*(?!\\\\\\\\s*[\\\\\\\\w$/(])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.coffee\\\"}},\\\"name\\\":\\\"string.regexp.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js.regexp\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(?<![\\\\\\\\.\\\\\\\\$])(break|by|catch|continue|else|finally|for|in|of|if|return|switch|then|throw|try|unless|when|while|until|loop|do|export|import|default|from|as|yield|async|await|(?<=for)\\\\\\\\s+own)(?!\\\\\\\\s*:)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<![\\\\\\\\.\\\\\\\\$])(delete|instanceof|new|typeof)(?!\\\\\\\\s*:)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.$1.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<![\\\\\\\\.\\\\\\\\$])(case|function|var|void|with|const|let|enum|native|__hasProp|__extends|__slice|__bind|__indexOf|implements|interface|package|private|protected|public|static)(?!\\\\\\\\s*:)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.reserved.coffee\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\s|^)((@)?[a-zA-Z_$][\\\\\\\\w$]*)\\\\\\\\s*([:=])\\\\\\\\s*(?=(\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\)\\\\\\\\s*)?[=-]>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.instance.coffee\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.coffee\\\"}},\\\"end\\\":\\\"[=-]>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.coffee\\\"}},\\\"name\\\":\\\"meta.function.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_params\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\s|^)(?:((')([^']*?)('))|((\\\\\\\")([^\\\\\\\"]*?)(\\\\\\\")))\\\\\\\\s*([:=])\\\\\\\\s*(?=(\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\)\\\\\\\\s*)?[=-]>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.single.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.coffee\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.coffee\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.coffee\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.quoted.double.coffee\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.coffee\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.function.coffee\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.coffee\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.assignment.coffee\\\"}},\\\"end\\\":\\\"[=-]>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.coffee\\\"}},\\\"name\\\":\\\"meta.function.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_params\\\"}]},{\\\"begin\\\":\\\"(?=(\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\)\\\\\\\\s*)?[=-]>)\\\",\\\"end\\\":\\\"[=-]>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.coffee\\\"}},\\\"name\\\":\\\"meta.function.inline.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_params\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\s|^)({)(?=[^'\\\\\\\"#]+?}[\\\\\\\\s\\\\\\\\]}]*=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.destructuring.begin.bracket.curly.coffee\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.destructuring.end.bracket.curly.coffee\\\"}},\\\"name\\\":\\\"meta.variable.assignment.destructured.object.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"match\\\":\\\"[a-zA-Z$_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.assignment.coffee\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\s|^)(\\\\\\\\[)(?=[^'\\\\\\\"#]+?\\\\\\\\][\\\\\\\\s\\\\\\\\]}]*=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.destructuring.begin.bracket.square.coffee\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.destructuring.end.bracket.square.coffee\\\"}},\\\"name\\\":\\\"meta.variable.assignment.destructured.array.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"match\\\":\\\"[a-zA-Z$_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.assignment.coffee\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.|::)(true|on|yes)(?!\\\\\\\\s*[:=][^=])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.true.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.|::)(false|off|no)(?!\\\\\\\\s*[:=][^=])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.false.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.|::)null(?!\\\\\\\\s*[:=][^=])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.null.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.|::)extends(?!\\\\\\\\s*[:=])\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.coffee\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?<!\\\\\\\\$)(super|this|arguments)(?!\\\\\\\\s*[:=][^=]|\\\\\\\\$)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.$1.coffee\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.inheritance.coffee\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.inherited-class.coffee\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\s|^|\\\\\\\\[|\\\\\\\\()(class)\\\\\\\\s+(extends)\\\\\\\\s+(@?[a-zA-Z\\\\\\\\$\\\\\\\\._][\\\\\\\\w\\\\\\\\.]*)\\\",\\\"name\\\":\\\"meta.class.coffee\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.coffee\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.inheritance.coffee\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.other.inherited-class.coffee\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\s|^|\\\\\\\\[|\\\\\\\\()(class\\\\\\\\b)\\\\\\\\s+(@?[a-zA-Z\\\\\\\\$_][\\\\\\\\w\\\\\\\\.]*)?(?:\\\\\\\\s+(extends)\\\\\\\\s+(@?[a-zA-Z\\\\\\\\$\\\\\\\\._][\\\\\\\\w\\\\\\\\.]*))?\\\",\\\"name\\\":\\\"meta.class.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(debugger|\\\\\\\\\\\\\\\\)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(Array|ArrayBuffer|Blob|Boolean|Date|document|Function|Int(8|16|32|64)Array|Math|Map|Number|Object|Proxy|RegExp|Set|String|WeakMap|window|Uint(8|16|32|64)Array|XMLHttpRequest)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(console)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.object.coffee\\\"},{\\\"match\\\":\\\"((?<=console\\\\\\\\.)(debug|warn|info|log|error|time|timeEnd|assert))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.console.coffee\\\"},{\\\"match\\\":\\\"((?<=\\\\\\\\.)(apply|call|concat|every|filter|forEach|from|hasOwnProperty|indexOf|isPrototypeOf|join|lastIndexOf|map|of|pop|propertyIsEnumerable|push|reduce(Right)?|reverse|shift|slice|some|sort|splice|to(Locale)?String|unshift|valueOf))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.method.array.coffee\\\"},{\\\"match\\\":\\\"((?<=Array\\\\\\\\.)(isArray))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.static.array.coffee\\\"},{\\\"match\\\":\\\"((?<=Object\\\\\\\\.)(create|definePropert(ies|y)|freeze|getOwnProperty(Descriptors?|Names)|getProperty(Descriptor|Names)|getPrototypeOf|is(Extensible|Frozen|Sealed)?|isnt|keys|preventExtensions|seal))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.static.object.coffee\\\"},{\\\"match\\\":\\\"((?<=Math\\\\\\\\.)(abs|acos|acosh|asin|asinh|atan|atan2|atanh|ceil|cos|cosh|exp|expm1|floor|hypot|log|log10|log1p|log2|max|min|pow|random|round|sign|sin|sinh|sqrt|tan|tanh|trunc))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.static.math.coffee\\\"},{\\\"match\\\":\\\"((?<=Number\\\\\\\\.)(is(Finite|Integer|NaN)|toInteger))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.static.number.coffee\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(module|exports|__filename|__dirname|global|process)(?!\\\\\\\\s*:)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(Infinity|NaN|undefined)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.coffee\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#method_calls\\\"},{\\\"include\\\":\\\"#function_calls\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#objects\\\"},{\\\"include\\\":\\\"#properties\\\"},{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"keyword.operator.prototype.coffee\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b[0-9]+[\\\\\\\\w$]*\\\",\\\"name\\\":\\\"invalid.illegal.identifier.coffee\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.coffee\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.coffee\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.curly.coffee\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.curly.coffee\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.bracket.square.coffee\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.bracket.square.coffee\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\.{3}\\\",\\\"name\\\":\\\"keyword.operator.slice.exclusive.coffee\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\.{2}\\\",\\\"name\\\":\\\"keyword.operator.slice.inclusive.coffee\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.coffee\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.coffee\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#instance_variable\\\"},{\\\"include\\\":\\\"#single_quoted_string\\\"},{\\\"include\\\":\\\"#double_quoted_string\\\"}],\\\"repository\\\":{\\\"arguments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.bracket.round.coffee\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.bracket.round.coffee\\\"}},\\\"name\\\":\\\"meta.arguments.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?=(@|@?[\\\\\\\\w$]+|[=-]>|\\\\\\\\-\\\\\\\\d|\\\\\\\\[|{|\\\\\\\"|'))\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(?<![\\\\\\\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\\\\\\\w$]))|(?=\\\\\\\\s*(}|\\\\\\\\]|\\\\\\\\)|#|$))\\\",\\\"name\\\":\\\"meta.arguments.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"double_quoted_string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.coffee\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.coffee\\\"}},\\\"name\\\":\\\"string.quoted.double.coffee\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.escape.backslash.coffee\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)(x[0-9A-Fa-f]{2}|[0-2][0-7]{0,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)\\\",\\\"name\\\":\\\"constant.character.escape.backslash.coffee\\\"},{\\\"include\\\":\\\"#interpolated_coffee\\\"}]}]},\\\"embedded_comment\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.coffee\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(#).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.coffee\\\"}]},\\\"function_calls\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(@)?([\\\\\\\\w$]+)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.instance.coffee\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#function_names\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function-call.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arguments\\\"}]},{\\\"begin\\\":\\\"(@)?([\\\\\\\\w$]+)\\\\\\\\s*(?=\\\\\\\\s+(?!(?<![\\\\\\\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\\\\\\\w$]))(?=(@?[\\\\\\\\w$]+|[=-]>|\\\\\\\\-\\\\\\\\d|\\\\\\\\[|{|\\\\\\\"|')))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.instance.coffee\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#function_names\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\s*(?<![\\\\\\\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\\\\\\\w$]))|(?=\\\\\\\\s*(}|\\\\\\\\]|\\\\\\\\)|#|$))\\\",\\\"name\\\":\\\"meta.function-call.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arguments\\\"}]}]},\\\"function_names\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(isNaN|isFinite|eval|uneval|parseInt|parseFloat|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|escape|unescape|require|set(Interval|Timeout)|clear(Interval|Timeout))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.coffee\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w$]*\\\",\\\"name\\\":\\\"entity.name.function.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\d[\\\\\\\\w$]*\\\",\\\"name\\\":\\\"invalid.illegal.identifier.coffee\\\"}]},\\\"function_params\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.coffee\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.coffee\\\"}},\\\"name\\\":\\\"meta.parameters.coffee\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.splat.coffee\\\"}},\\\"match\\\":\\\"([a-zA-Z_$][\\\\\\\\w$]*)(\\\\\\\\.\\\\\\\\.\\\\\\\\.)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.readwrite.instance.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.splat.coffee\\\"}},\\\"match\\\":\\\"(@(?:[a-zA-Z_$][\\\\\\\\w$]*)?)(\\\\\\\\.\\\\\\\\.\\\\\\\\.)?\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"heregexp\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[bB]|\\\\\\\\^|\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.control.anchor.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d*\\\",\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},{\\\"match\\\":\\\"[?+*]|\\\\\\\\{(\\\\\\\\d+,\\\\\\\\d+|\\\\\\\\d+,|,\\\\\\\\d+|\\\\\\\\d+)\\\\\\\\}\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.or.regexp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()((\\\\\\\\?=)|(\\\\\\\\?!))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.assertion.look-ahead.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-ahead.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.assertion.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heregexp\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\((\\\\\\\\?:)?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heregexp\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.regexp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(?:.|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\\\\\\-(?:[^\\\\\\\\]\\\\\\\\\\\\\\\\]|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.other.character-class.range.regexp\\\"},{\\\"include\\\":\\\"#regex-character-class\\\"}]},{\\\"include\\\":\\\"#regex-character-class\\\"},{\\\"include\\\":\\\"#interpolated_coffee\\\"},{\\\"include\\\":\\\"#embedded_comment\\\"}]},\\\"instance_variable\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(@)([a-zA-Z_\\\\\\\\$]\\\\\\\\w*)?\\\",\\\"name\\\":\\\"variable.other.readwrite.instance.coffee\\\"}]},\\\"interpolated_coffee\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\#\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.coffee\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"source.coffee.embedded.source\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"jsx\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag\\\"},{\\\"include\\\":\\\"#jsx-end-tag\\\"}]},\\\"jsx-attribute\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.coffee\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\s+)([-\\\\\\\\w.]+)\\\\\\\\s*(=)\\\"},{\\\"include\\\":\\\"#double_quoted_string\\\"},{\\\"include\\\":\\\"#single_quoted_string\\\"},{\\\"include\\\":\\\"#jsx-expression\\\"}]},\\\"jsx-end-tag\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(</)([-\\\\\\\\w\\\\\\\\.]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.coffee\\\"}},\\\"end\\\":\\\"(/?>)\\\",\\\"name\\\":\\\"meta.tag.coffee\\\"}]},\\\"jsx-expression\\\":{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.curly.coffee\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.curly.coffee\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double_quoted_string\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"jsx-tag\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)([-\\\\\\\\w\\\\\\\\.]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.coffee\\\"}},\\\"end\\\":\\\"(/?>)\\\",\\\"name\\\":\\\"meta.tag.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-attribute\\\"}]}]},\\\"method_calls\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(\\\\\\\\.)|(::))\\\\\\\\s*([\\\\\\\\w$]+)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.method.period.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.prototype.coffee\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#method_names\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.method-call.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arguments\\\"}]},{\\\"begin\\\":\\\"(?:(\\\\\\\\.)|(::))\\\\\\\\s*([\\\\\\\\w$]+)\\\\\\\\s*(?=\\\\\\\\s+(?!(?<![\\\\\\\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\\\\\\\w$]))(?=(@|@?[\\\\\\\\w$]+|[=-]>|\\\\\\\\-\\\\\\\\d|\\\\\\\\[|{|\\\\\\\"|')))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.method.period.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.prototype.coffee\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#method_names\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\s*(?<![\\\\\\\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\\\\\\\w$]))|(?=\\\\\\\\s*(}|\\\\\\\\]|\\\\\\\\)|#|$))\\\",\\\"name\\\":\\\"meta.method-call.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arguments\\\"}]}]},\\\"method_names\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bon(Rowsinserted|Rowsdelete|Rowenter|Rowexit|Resize|Resizestart|Resizeend|Reset|Readystatechange|Mouseout|Mouseover|Mousedown|Mouseup|Mousemove|Before(cut|deactivate|unload|update|paste|print|editfocus|activate)|Blur|Scrolltop|Submit|Select|Selectstart|Selectionchange|Hover|Help|Change|Contextmenu|Controlselect|Cut|Cellchange|Clock|Close|Deactivate|Datasetchanged|Datasetcomplete|Dataavailable|Drop|Drag|Dragstart|Dragover|Dragdrop|Dragenter|Dragend|Dragleave|Dblclick|Unload|Paste|Propertychange|Error|Errorupdate|Keydown|Keyup|Keypress|Focus|Load|Activate|Afterupdate|Afterprint|Abort)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.event-handler.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(shift|showModelessDialog|showModalDialog|showHelp|scroll|scrollX|scrollByPages|scrollByLines|scrollY|scrollTo|stop|strike|sizeToContent|sidebar|signText|sort|sup|sub|substr|substring|splice|split|send|set(Milliseconds|Seconds|Minutes|Hours|Month|Year|FullYear|Date|UTC(Milliseconds|Seconds|Minutes|Hours|Month|FullYear|Date)|Time|Hotkeys|Cursor|ZOptions|Active|Resizable|RequestHeader)|search|slice|savePreferences|small|home|handleEvent|navigate|char|charCodeAt|charAt|concat|contextual|confirm|compile|clear|captureEvents|call|createStyleSheet|createPopup|createEventObject|to(GMTString|UTCString|String|Source|UpperCase|LowerCase|LocaleString)|test|taint|taintEnabled|indexOf|italics|disableExternalCapture|dump|detachEvent|unshift|untaint|unwatch|updateCommands|join|javaEnabled|pop|push|plugins.refresh|paddings|parse|print|prompt|preference|enableExternalCapture|exec|execScript|valueOf|UTC|find|file|fileModifiedDate|fileSize|fileCreatedDate|fileUpdatedDate|fixed|fontsize|fontcolor|forward|fromCharCode|watch|link|load|lastIndexOf|anchor|attachEvent|atob|apply|alert|abort|routeEvents|resize|resizeBy|resizeTo|recalc|returnValue|replace|reverse|reload|releaseCapture|releaseEvents|go|get(Milliseconds|Seconds|Minutes|Hours|Month|Day|Year|FullYear|Time|Date|TimezoneOffset|UTC(Milliseconds|Seconds|Minutes|Hours|Day|Month|FullYear|Date)|Attention|Selection|ResponseHeader|AllResponseHeaders)|moveBy|moveBelow|moveTo|moveToAbsolute|moveAbove|mergeAttributes|match|margins|btoa|big|bold|borderWidths|blink|back)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(acceptNode|add|addEventListener|addTextTrack|adoptNode|after|animate|append|appendChild|appendData|before|blur|canPlayType|captureStream|caretPositionFromPoint|caretRangeFromPoint|checkValidity|clear|click|cloneContents|cloneNode|cloneRange|close|closest|collapse|compareBoundaryPoints|compareDocumentPosition|comparePoint|contains|convertPointFromNode|convertQuadFromNode|convertRectFromNode|createAttribute|createAttributeNS|createCaption|createCDATASection|createComment|createContextualFragment|createDocument|createDocumentFragment|createDocumentType|createElement|createElementNS|createEntityReference|createEvent|createExpression|createHTMLDocument|createNodeIterator|createNSResolver|createProcessingInstruction|createRange|createShadowRoot|createTBody|createTextNode|createTFoot|createTHead|createTreeWalker|delete|deleteCaption|deleteCell|deleteContents|deleteData|deleteRow|deleteTFoot|deleteTHead|detach|disconnect|dispatchEvent|elementFromPoint|elementsFromPoint|enableStyleSheetsForSet|entries|evaluate|execCommand|exitFullscreen|exitPointerLock|expand|extractContents|fastSeek|firstChild|focus|forEach|get|getAll|getAnimations|getAttribute|getAttributeNames|getAttributeNode|getAttributeNodeNS|getAttributeNS|getBoundingClientRect|getBoxQuads|getClientRects|getContext|getDestinationInsertionPoints|getElementById|getElementsByClassName|getElementsByName|getElementsByTagName|getElementsByTagNameNS|getItem|getNamedItem|getSelection|getStartDate|getVideoPlaybackQuality|has|hasAttribute|hasAttributeNS|hasAttributes|hasChildNodes|hasFeature|hasFocus|importNode|initEvent|insertAdjacentElement|insertAdjacentHTML|insertAdjacentText|insertBefore|insertCell|insertData|insertNode|insertRow|intersectsNode|isDefaultNamespace|isEqualNode|isPointInRange|isSameNode|item|key|keys|lastChild|load|lookupNamespaceURI|lookupPrefix|matches|move|moveAttribute|moveAttributeNode|moveChild|moveNamedItem|namedItem|nextNode|nextSibling|normalize|observe|open|parentNode|pause|play|postMessage|prepend|preventDefault|previousNode|previousSibling|probablySupportsContext|queryCommandEnabled|queryCommandIndeterm|queryCommandState|queryCommandSupported|queryCommandValue|querySelector|querySelectorAll|registerContentHandler|registerElement|registerProtocolHandler|releaseCapture|releaseEvents|remove|removeAttribute|removeAttributeNode|removeAttributeNS|removeChild|removeEventListener|removeItem|replace|replaceChild|replaceData|replaceWith|reportValidity|requestFullscreen|requestPointerLock|reset|scroll|scrollBy|scrollIntoView|scrollTo|seekToNextFrame|select|selectNode|selectNodeContents|set|setAttribute|setAttributeNode|setAttributeNodeNS|setAttributeNS|setCapture|setCustomValidity|setEnd|setEndAfter|setEndBefore|setItem|setNamedItem|setRangeText|setSelectionRange|setSinkId|setStart|setStartAfter|setStartBefore|slice|splitText|stepDown|stepUp|stopImmediatePropagation|stopPropagation|submit|substringData|supports|surroundContents|takeRecords|terminate|toBlob|toDataURL|toggle|toString|values|write|writeln)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.dom.coffee\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w$]*\\\",\\\"name\\\":\\\"entity.name.function.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\d[\\\\\\\\w$]*\\\",\\\"name\\\":\\\"invalid.illegal.identifier.coffee\\\"}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(x|X)[0-9a-fA-F]+\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.hex.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(b|B)[01]+\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.binary.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(o|O)?[0-7]+\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.octal.coffee\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.decimal.coffee\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.coffee\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.coffee\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.coffee\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.coffee\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.coffee\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9]+(\\\\\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\\\\\b)|(?:\\\\\\\\b[0-9]+(\\\\\\\\.)[eE][+-]?[0-9]+\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\\\\\b)|(?:\\\\\\\\b[0-9]+[eE][+-]?[0-9]+\\\\\\\\b)|(?:\\\\\\\\b[0-9]+(\\\\\\\\.)[0-9]+\\\\\\\\b)|(?:\\\\\\\\b[0-9]+(?=\\\\\\\\.{2,3}))|(?:\\\\\\\\b[0-9]+(\\\\\\\\.)\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9]+\\\\\\\\b)|(?:\\\\\\\\b[0-9]+\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)\\\"}]},\\\"objects\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[A-Z][A-Z0-9_$]*(?=\\\\\\\\s*\\\\\\\\??(\\\\\\\\.\\\\\\\\s*[a-zA-Z_$]\\\\\\\\w*|::))\\\",\\\"name\\\":\\\"constant.other.object.coffee\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w$]*(?=\\\\\\\\s*\\\\\\\\??(\\\\\\\\.\\\\\\\\s*[a-zA-Z_$]\\\\\\\\w*|::))\\\",\\\"name\\\":\\\"variable.other.object.coffee\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.assignment.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.coffee\\\"}},\\\"match\\\":\\\"(?:([a-zA-Z$_][\\\\\\\\w$]*)?\\\\\\\\s+|(?<![\\\\\\\\w$]))(and=|or=)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.assignment.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.coffee\\\"}},\\\"match\\\":\\\"([a-zA-Z$_][\\\\\\\\w$]*)?\\\\\\\\s*(%=|\\\\\\\\+=|-=|\\\\\\\\*=|&&=|\\\\\\\\|\\\\\\\\|=|\\\\\\\\?=|(?<!\\\\\\\\()/=)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.assignment.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.coffee\\\"}},\\\"match\\\":\\\"([a-zA-Z$_][\\\\\\\\w$]*)?\\\\\\\\s*(&=|\\\\\\\\^=|<<=|>>=|>>>=|\\\\\\\\|=)\\\"},{\\\"match\\\":\\\"<<|>>>|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.coffee\\\"},{\\\"match\\\":\\\"!=|<=|>=|==|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.coffee\\\"},{\\\"match\\\":\\\"&&|!|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.coffee\\\"},{\\\"match\\\":\\\"&|\\\\\\\\||\\\\\\\\^|~\\\",\\\"name\\\":\\\"keyword.operator.bitwise.coffee\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.assignment.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.coffee\\\"}},\\\"match\\\":\\\"([a-zA-Z$_][\\\\\\\\w$]*)?\\\\\\\\s*(=|:(?!:))(?![>=])\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.splat.coffee\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.existential.coffee\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.coffee\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.comparison.coffee\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<![\\\\\\\\.\\\\\\\\$])(?:(and|or|not)|(is|isnt))(?!\\\\\\\\s*:)\\\\\\\\b\\\"}]},\\\"properties\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.property.period.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.prototype.coffee\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.other.object.property.coffee\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(::))\\\\\\\\s*([A-Z][A-Z0-9_$]*\\\\\\\\b\\\\\\\\$*)(?=\\\\\\\\s*\\\\\\\\??(\\\\\\\\.\\\\\\\\s*[a-zA-Z_$]\\\\\\\\w*|::))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.property.period.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.prototype.coffee\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.object.property.coffee\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(::))\\\\\\\\s*(\\\\\\\\$*[a-zA-Z_$][\\\\\\\\w$]*)(?=\\\\\\\\s*\\\\\\\\??(\\\\\\\\.\\\\\\\\s*[a-zA-Z_$]\\\\\\\\w*|::))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.property.period.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.prototype.coffee\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.other.property.coffee\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(::))\\\\\\\\s*([A-Z][A-Z0-9_$]*\\\\\\\\b\\\\\\\\$*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.property.period.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.prototype.coffee\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.property.coffee\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(::))\\\\\\\\s*(\\\\\\\\$*[a-zA-Z_$][\\\\\\\\w$]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.property.period.coffee\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.prototype.coffee\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.identifier.coffee\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(::))\\\\\\\\s*([0-9][\\\\\\\\w$]*)\\\"}]},\\\"regex-character-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[wWsSdD]|\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.character-class.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})\\\",\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c[A-Z]\\\",\\\"name\\\":\\\"constant.character.control.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}]},\\\"single_quoted_string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.coffee\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.coffee\\\"}},\\\"name\\\":\\\"string.quoted.single.coffee\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.escape.backslash.coffee\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)(x[0-9A-Fa-f]{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.)\\\",\\\"name\\\":\\\"constant.character.escape.backslash.coffee\\\"}]}]}},\\\"scopeName\\\":\\\"source.coffee\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\"],\\\"aliases\\\":[\\\"coffeescript\\\"]}\"))\n\nexport default [\n...javascript,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Common Lisp\\\",\\\"fileTypes\\\":[\\\"lisp\\\",\\\"lsp\\\",\\\"l\\\",\\\"cl\\\",\\\"asd\\\",\\\"asdf\\\"],\\\"foldingStartMarker\\\":\\\"\\\\\\\\(\\\",\\\"foldingStopMarker\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"common-lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#block-comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#escape\\\"},{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#lambda-list\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#style-guide\\\"},{\\\"include\\\":\\\"#def-name\\\"},{\\\"include\\\":\\\"#macro\\\"},{\\\"include\\\":\\\"#symbol\\\"},{\\\"include\\\":\\\"#special-operator\\\"},{\\\"include\\\":\\\"#declaration\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#condition-type\\\"},{\\\"include\\\":\\\"#package\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#punctuation\\\"}],\\\"repository\\\":{\\\"block-comment\\\":{\\\"begin\\\":\\\"\\\\\\\\#\\\\\\\\|\\\",\\\"contentName\\\":\\\"comment.block.commonlisp\\\",\\\"end\\\":\\\"\\\\\\\\|\\\\\\\\#\\\",\\\"name\\\":\\\"comment\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comment\\\",\\\"name\\\":\\\"comment\\\"}]},\\\"class\\\":{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by space or (\\\\n(?:two-way-stream|synonym-stream|symbol|structure-object|structure-class|string-stream|stream|standard-object|standard-method|\\\\nstandard-generic-function|standard-class|sequence|restart|real|readtable|ratio|random-state|package|number|method|integer|hash-table|\\\\ngeneric-function|file-stream|echo-stream|concatenated-stream|class|built-in-class|broadcast-stream|bit-vector|array)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"support.class.commonlisp\\\"},\\\"comment\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=;)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.commonlisp\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\";\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.commonlisp\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.semicolon.commonlisp\\\"}]},\\\"condition-type\\\":{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by space or (\\\\n(?:warning|undefined-function|unbound-variable|unbound-slot|type-error|style-warning|stream-error|storage-condition|simple-warning|\\\\nsimple-type-error|simple-error|simple-condition|serious-condition|reader-error|program-error|print-not-readable|parse-error|package-error|\\\\nfloating-point-underflow|floating-point-overflow|floating-point-invalid-operation|floating-point-inexact|file-error|error|end-of-file|\\\\ndivision-by-zero|control-error|condition|cell-error|arithmetic-error)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"support.type.exception.commonlisp\\\"},\\\"constant\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(?:t|single-float-negative-epsilon|single-float-epsilon|short-float-negative-epsilon|short-float-epsilon|pi|\\\\nnil|multiple-values-limit|most-positive-single-float|most-positive-short-float|most-positive-long-float|\\\\nmost-positive-fixnum|most-positive-double-float|most-negative-single-float|most-negative-short-float|\\\\nmost-negative-long-float|most-negative-fixnum|most-negative-double-float|long-float-negative-epsilon|\\\\nlong-float-epsilon|least-positive-single-float|least-positive-short-float|least-positive-normalized-single-float|\\\\nleast-positive-normalized-short-float|least-positive-normalized-long-float|least-positive-normalized-double-float|\\\\nleast-positive-long-float|least-positive-double-float|least-negative-single-float|least-negative-short-float|\\\\nleast-negative-normalized-single-float|least-negative-normalized-short-float|least-negative-normalized-long-float|\\\\nleast-negative-normalized-double-float|least-negative-long-float|least-negative-double-float|lambda-parameters-limit|\\\\nlambda-list-keywords|internal-time-units-per-second|double-float-negative-epsilon|double-float-epsilon|char-code-limit|\\\\ncall-arguments-limit|boole-xor|boole-set|boole-orc2|boole-orc1|boole-nor|boole-nand|boole-ior|boole-eqv|boole-clr|\\\\nboole-c2|boole-c1|boole-andc2|boole-andc1|boole-and|boole-2|boole-1|array-total-size-limit|array-rank-limit|array-dimension-limit)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"constant.language.commonlisp\\\"},{\\\"match\\\":\\\"(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,)([+-]?[0-9]+(?:\\\\\\\\/[0-9]+)*|[-+]?[0-9]*\\\\\\\\.?[0-9]+([eE][-+]?[0-9]+)?|(\\\\\\\\#b|\\\\\\\\#B)[01\\\\\\\\/+-]+|(\\\\\\\\#o|\\\\\\\\#O)[0-7\\\\\\\\/+-]+|(\\\\\\\\#x|\\\\\\\\#X)[0-9a-fA-F\\\\\\\\/+-]+|(\\\\\\\\#[0-9]+[rR]?)[0-9a-zA-Z\\\\\\\\/+-]+)(?=(\\\\\\\\s|\\\\\\\\)))\\\",\\\"name\\\":\\\"constant.numeric.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=\\\\\\\\s) # preceded by space\\\\n(\\\\\\\\.)\\\\n(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"variable.other.constant.dot.commonlisp\\\"},{\\\"match\\\":\\\"(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,)([+-]?[0-9]*\\\\\\\\.[0-9]*((e|s|f|d|l|E|S|F|D|L)[+-]?[0-9]+)?|[+-]?[0-9]+(\\\\\\\\.[0-9]*)?(e|s|f|d|l|E|S|F|D|L)[+-]?[0-9]+)(?=(\\\\\\\\s|\\\\\\\\)))\\\",\\\"name\\\":\\\"constant.numeric.commonlisp\\\"}]},\\\"declaration\\\":{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by space or (\\\\n(?:type|speed|special|space|safety|optimize|notinline|inline|ignore|ignorable|ftype|dynamic-extent|declaration|debug|compilation-speed)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"storage.type.function.declaration.commonlisp\\\"},\\\"def-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.defname.commonlisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.function.defname.commonlisp\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.constant.defname.commonlisp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#package\\\"},{\\\"match\\\":\\\"\\\\\\\\S+?\\\",\\\"name\\\":\\\"entity.name.function.commonlisp\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"variable.other.constant.defname.commonlisp\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#package\\\"},{\\\"match\\\":\\\"\\\\\\\\S+?\\\",\\\"name\\\":\\\"entity.name.function.commonlisp\\\"}]}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by (\\\\n(defun|defsetf|defmethod|defmacro|define-symbol-macro|define-setf-expander|\\\\ndefine-modify-macro|define-method-combination|define-compiler-macro|defgeneric) #1 keywords\\\\n\\\\\\\\s+\\\\n( \\\\\\\\(\\\\\\\\s*\\\\n ([#:A-Za-z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\@\\\\\\\\$\\\\\\\\%\\\\\\\\^\\\\\\\\&\\\\\\\\_\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\~\\\\\\\\!\\\\\\\\?\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\.]+) #3\\\\n \\\\\\\\s*\\\\n ((,@|,\\\\\\\\.|,)?) #4\\\\n ([#:A-Za-z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\@\\\\\\\\$\\\\\\\\%\\\\\\\\^\\\\\\\\&\\\\\\\\_\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\~\\\\\\\\!\\\\\\\\?\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\.]+?) #6 (<3>something+ <6>name)\\\\n |\\\\n ((,@|,\\\\\\\\.|,)?) #7\\\\n ([#:A-Za-z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\@\\\\\\\\$\\\\\\\\%\\\\\\\\^\\\\\\\\&\\\\\\\\_\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\~\\\\\\\\!\\\\\\\\?\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\.]+?) #9 name\\\\n) #2\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.defname.commonlisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\()\\\\n(deftype|defpackage|define-condition|defclass) # keywords\\\\n\\\\\\\\s+\\\\n([#:A-Za-z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\@\\\\\\\\$\\\\\\\\%\\\\\\\\^\\\\\\\\&\\\\\\\\_\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\~\\\\\\\\!\\\\\\\\?\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\.]+?) # name\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.defname.commonlisp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#package\\\"},{\\\"match\\\":\\\"\\\\\\\\S+?\\\",\\\"name\\\":\\\"variable.other.constant.defname.commonlisp\\\"}]}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\()\\\\n(defconstant) # keywords\\\\n\\\\\\\\s+\\\\n([#:A-Za-z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\@\\\\\\\\$\\\\\\\\%\\\\\\\\^\\\\\\\\&\\\\\\\\_\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\~\\\\\\\\!\\\\\\\\?\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\.]+?) # name\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.defname.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\()\\\\n(defvar|defparameter) # keywords\\\\n\\\\\\\\s+\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.defname.commonlisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\()\\\\n(defstruct) # keywords\\\\n\\\\\\\\s+\\\\\\\\(?\\\\\\\\s*\\\\n([#:A-Za-z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\@\\\\\\\\$\\\\\\\\%\\\\\\\\^\\\\\\\\&\\\\\\\\_\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\~\\\\\\\\!\\\\\\\\?\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\.]+?) # name\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.commonlisp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#package\\\"},{\\\"match\\\":\\\"\\\\\\\\S+?\\\",\\\"name\\\":\\\"entity.name.function.commonlisp\\\"}]}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\()\\\\n(macrolet|labels|flet) # keywords\\\\n\\\\\\\\s+\\\\\\\\(\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\n([#:A-Za-z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\@\\\\\\\\$\\\\\\\\%\\\\\\\\^\\\\\\\\&\\\\\\\\_\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\~\\\\\\\\!\\\\\\\\?\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\.]+?) # name\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\)))\\\"}]},\\\"escape\\\":{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by space or (\\\\n(?:\\\\\\\\#\\\\\\\\\\\\\\\\\\\\\\\\S+?)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"constant.character.escape.commonlisp\\\"},\\\"function\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|\\\\\\\\#') # preceded by space or (\\\\n(?:values|third|tenth|symbol-value|symbol-plist|symbol-function|svref|subseq|sixth|seventh|second|schar|sbit|row-major-aref|\\\\n rest|readtable-case|nth|ninth|mask-field|macro-function|logical-pathname-translations|ldb|gethash|getf|get|fourth|first|\\\\n find-class|fill-pointer|fifth|fdefinition|elt|eighth|compiler-macro-function|char|cdr|cddr|cdddr|cddddr|cdddar|cddar|cddadr|\\\\n cddaar|cdar|cdadr|cdaddr|cdadar|cdaar|cdaadr|cdaaar|car|cadr|caddr|cadddr|caddar|cadar|cadadr|cadaar|caar|caadr|caaddr|caadar|\\\\n caaar|caaadr|caaaar|bit|aref)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"support.function.accessor.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|\\\\\\\\#') # preceded by space or (\\\\n(?:yes-or-no-p|y-or-n-p|write-sequence|write-char|write-byte|warn|vector-pop|use-value|use-package|unuse-package|union|unintern|\\\\nunexport|terpri|tailp|substitute-if-not|substitute-if|substitute|subst-if-not|subst-if|subst|sublis|string-upcase|string-downcase|\\\\nstring-capitalize|store-value|sleep|signal|shadowing-import|shadow|set-syntax-from-char|set-macro-character|set-exclusive-or|\\\\nset-dispatch-macro-character|set-difference|set|rplacd|rplaca|room|reverse|revappend|require|replace|remprop|remove-if-not|remove-if|\\\\nremove-duplicates|remove|remhash|read-sequence|read-byte|random|provide|pprint-tabular|pprint-newline|pprint-linear|pprint-fill|\\\\nnunion|nsubstitute-if-not|nsubstitute-if|nsubstitute|nsubst-if-not|nsubst-if|nsubst|nsublis|nstring-upcase|nstring-downcase|nstring-capitalize|\\\\nnset-exclusive-or|nset-difference|nreverse|nreconc|nintersection|nconc|muffle-warning|method-combination-error|maphash|makunbound|ldiff|\\\\ninvoke-restart-interactively|invoke-restart|invoke-debugger|invalid-method-error|intersection|inspect|import|get-output-stream-string|\\\\nget-macro-character|get-dispatch-macro-character|gentemp|gensym|fresh-line|fill|file-position|export|describe|delete-if-not|delete-if|\\\\ndelete-duplicates|delete|continue|clrhash|close|clear-input|break|abort)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"support.function.f.sideeffects.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|\\\\\\\\#') # preceded by space or (\\\\n(?:zerop|write-to-string|write-string|write-line|write|wild-pathname-p|vectorp|vector-push-extend|vector-push|vector|values-list|\\\\nuser-homedir-pathname|upper-case-p|upgraded-complex-part-type|upgraded-array-element-type|unread-char|unbound-slot-instance|typep|type-of|\\\\ntype-error-expected-type|type-error-datum|two-way-stream-output-stream|two-way-stream-input-stream|truncate|truename|tree-equal|translate-pathname|\\\\ntranslate-logical-pathname|tanh|tan|synonym-stream-symbol|symbolp|symbol-package|symbol-name|sxhash|subtypep|subsetp|stringp|string>=|string>|\\\\nstring=|string<=|string<|string\\\\\\\\/=|string-trim|string-right-trim|string-not-lessp|string-not-greaterp|string-not-equal|string-lessp|\\\\nstring-left-trim|string-greaterp|string-equal|string|streamp|stream-external-format|stream-error-stream|stream-element-type|standard-char-p|\\\\nstable-sort|sqrt|special-operator-p|sort|some|software-version|software-type|slot-value|slot-makunbound|slot-exists-p|slot-boundp|sinh|sin|\\\\nsimple-vector-p|simple-string-p|simple-condition-format-control|simple-condition-format-arguments|simple-bit-vector-p|signum|short-site-name|\\\\nset-pprint-dispatch|search|scale-float|round|restart-name|rename-package|rename-file|rem|reduce|realpart|realp|readtablep|\\\\nread-preserving-whitespace|read-line|read-from-string|read-delimited-list|read-char-no-hang|read-char|read|rationalp|rationalize|\\\\nrational|rassoc-if-not|rassoc-if|rassoc|random-state-p|proclaim|probe-file|print-not-readable-object|print|princ-to-string|princ|\\\\nprin1-to-string|prin1|pprint-tab|pprint-indent|pprint-dispatch|pprint|position-if-not|position-if|position|plusp|phase|peek-char|pathnamep|\\\\npathname-version|pathname-type|pathname-name|pathname-match-p|pathname-host|pathname-directory|pathname-device|pathname|parse-namestring|\\\\nparse-integer|pairlis|packagep|package-used-by-list|package-use-list|package-shadowing-symbols|package-nicknames|package-name|package-error-package|\\\\noutput-stream-p|open-stream-p|open|oddp|numerator|numberp|null|nthcdr|notevery|notany|not|next-method-p|nbutlast|namestring|name-char|mod|mismatch|\\\\nminusp|min|merge-pathnames|merge|member-if-not|member-if|member|max|maplist|mapl|mapcon|mapcar|mapcan|mapc|map-into|map|make-two-way-stream|\\\\nmake-synonym-stream|make-symbol|make-string-output-stream|make-string-input-stream|make-string|make-sequence|make-random-state|make-pathname|\\\\nmake-package|make-load-form-saving-slots|make-list|make-hash-table|make-echo-stream|make-dispatch-macro-character|make-condition|\\\\nmake-concatenated-stream|make-broadcast-stream|make-array|macroexpand-1|macroexpand|machine-version|machine-type|machine-instance|lower-case-p|\\\\nlong-site-name|logxor|logtest|logorc2|logorc1|lognot|lognor|lognand|logior|logical-pathname|logeqv|logcount|logbitp|logandc2|logandc1|logand|\\\\nlog|load-logical-pathname-translations|load|listp|listen|list-length|list-all-packages|list\\\\\\\\*|list|lisp-implementation-version|\\\\nlisp-implementation-type|length|ldb-test|lcm|last|keywordp|isqrt|intern|interactive-stream-p|integerp|integer-length|integer-decode-float|\\\\ninput-stream-p|imagpart|identity|host-namestring|hash-table-test|hash-table-size|hash-table-rehash-threshold|hash-table-rehash-size|hash-table-p|\\\\nhash-table-count|graphic-char-p|get-universal-time|get-setf-expansion|get-properties|get-internal-run-time|get-internal-real-time|\\\\nget-decoded-time|gcd|functionp|function-lambda-expression|funcall|ftruncate|fround|format|force-output|fmakunbound|floor|floatp|float-sign|\\\\nfloat-radix|float-precision|float-digits|float|finish-output|find-symbol|find-restart|find-package|find-if-not|find-if|find-all-symbols|find|\\\\nfile-write-date|file-string-length|file-namestring|file-length|file-error-pathname|file-author|ffloor|fceiling|fboundp|expt|exp|every|evenp|\\\\neval|equalp|equal|eql|eq|ensure-generic-function|ensure-directories-exist|enough-namestring|endp|encode-universal-time|ed|echo-stream-output-stream|\\\\necho-stream-input-stream|dribble|dpb|disassemble|directory-namestring|directory|digit-char-p|digit-char|deposit-field|denominator|delete-package|\\\\ndelete-file|decode-universal-time|decode-float|count-if-not|count-if|count|cosh|cos|copy-tree|copy-symbol|copy-structure|copy-seq|copy-readtable|\\\\ncopy-pprint-dispatch|copy-list|copy-alist|constantp|constantly|consp|cons|conjugate|concatenated-stream-streams|concatenate|compute-restarts|\\\\ncomplexp|complex|complement|compiled-function-p|compile-file-pathname|compile-file|compile|coerce|code-char|clear-output|class-of|cis|characterp|\\\\ncharacter|char>=|char>|char=|char<=|char<|char\\\\\\\\/=|char-upcase|char-not-lessp|char-not-greaterp|char-not-equal|char-name|char-lessp|char-int|\\\\nchar-greaterp|char-equal|char-downcase|char-code|cerror|cell-error-name|ceiling|call-next-method|byte-size|byte-position|byte|butlast|\\\\nbroadcast-stream-streams|boundp|both-case-p|boole|bit-xor|bit-vector-p|bit-orc2|bit-orc1|bit-not|bit-nor|bit-nand|bit-ior|bit-eqv|bit-andc2|\\\\nbit-andc1|bit-and|atom|atanh|atan|assoc-if-not|assoc-if|assoc|asinh|asin|ash|arrayp|array-total-size|array-row-major-index|array-rank|\\\\narray-in-bounds-p|array-has-fill-pointer-p|array-element-type|array-displacement|array-dimensions|array-dimension|arithmetic-error-operation|\\\\narithmetic-error-operands|apropos-list|apropos|apply|append|alphanumericp|alpha-char-p|adjustable-array-p|adjust-array|adjoin|acosh|acos|acons|\\\\nabs|>=|>|=|<=|<|1-|1\\\\\\\\+|\\\\\\\\/=|\\\\\\\\/|-|\\\\\\\\+|\\\\\\\\*)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"support.function.f.sideeffects.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|\\\\\\\\#') # preceded by space or (\\\\n(?:variable|update-instance-for-redefined-class|update-instance-for-different-class|structure|slot-unbound|slot-missing|shared-initialize|\\\\nremove-method|print-object|no-next-method|no-applicable-method|method-qualifiers|make-load-form|make-instances-obsolete|make-instance|\\\\ninitialize-instance|function-keywords|find-method|documentation|describe-object|compute-applicable-methods|compiler-macro|class-name|\\\\nchange-class|allocate-instance|add-method)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"support.function.sgf.nosideeffects.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|\\\\\\\\#') # preceded by space or (\\\\n(?:reinitialize-instance)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"support.function.sgf.sideeffects.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|\\\\\\\\#') # preceded by space or (\\\\n(?:satisfies)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"support.function.typespecifier.commonlisp\\\"}]},\\\"lambda-list\\\":{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by space or (\\\\n(?:&[#:A-Za-z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\@\\\\\\\\$\\\\\\\\%\\\\\\\\^\\\\\\\\&\\\\\\\\_\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\~\\\\\\\\!\\\\\\\\?\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\.]+?|&whole|&rest|&optional|&key|&environment|&body|&aux|&allow-other-keys)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"keyword.other.lambdalist.commonlisp\\\"},\\\"macro\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by space or (\\\\n(?:with-standard-io-syntax|with-slots|with-simple-restart|with-package-iterator|with-hash-table-iterator|with-condition-restarts|\\\\nwith-compilation-unit|with-accessors|when|unless|typecase|time|step|shiftf|setf|rotatef|return|restart-case|restart-bind|psetf|prog2|prog1|\\\\nprog\\\\\\\\*|prog|print-unreadable-object|pprint-logical-block|pprint-exit-if-list-exhausted|or|nth-value|multiple-value-setq|multiple-value-list|\\\\nmultiple-value-bind|make-method|loop|lambda|ignore-errors|handler-case|handler-bind|formatter|etypecase|dotimes|dolist|do-symbols|do-external-symbols|\\\\ndo-all-symbols|do\\\\\\\\*|do|destructuring-bind|defun|deftype|defstruct|defsetf|defpackage|defmethod|defmacro|define-symbol-macro|define-setf-expander|\\\\ndefine-condition|define-compiler-macro|defgeneric|defconstant|defclass|declaim|ctypecase|cond|call-method|assert|and)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"storage.type.function.m.nosideeffects.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by space or (\\\\n(?:with-output-to-string|with-open-stream|with-open-file|with-input-from-string|untrace|trace|remf|pushnew|push|psetq|pprint-pop|pop|\\\\notherwise|loop-finish|incf|in-package|ecase|defvar|defparameter|define-modify-macro|define-method-combination|decf|check-type|ccase|case)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"storage.type.function.m.sideeffects.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by space or (\\\\n(?:setq)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"storage.type.function.specialform.commonlisp\\\"}]},\\\"package\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"support.type.package.commonlisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.package.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\n ([A-Za-z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\@\\\\\\\\$\\\\\\\\%\\\\\\\\^\\\\\\\\&\\\\\\\\_\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\~\\\\\\\\!\\\\\\\\?\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\.]+?) #2\\\\n | \\\\n (\\\\\\\\#) #3\\\\n)\\\\n(?=\\\\\\\\:\\\\\\\\:|\\\\\\\\:)\\\"}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n('|`)\\\\n(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"variable.other.constant.singlequote.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(?:\\\\\\\\:[#:A-Za-z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\@\\\\\\\\$\\\\\\\\%\\\\\\\\^\\\\\\\\&\\\\\\\\_\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\~\\\\\\\\!\\\\\\\\?\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\.]+?)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"entity.name.variable.commonlisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\\\\\#)([0-9]*)\\\\n(?=\\\\\\\\()\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.commonlisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\\\\\#)\\\\n([0-9]*)\\\\n(\\\\\\\\*)\\\\n(?=0|1)\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\\\\\#\\\\\\\\*|\\\\\\\\#0\\\\\\\\*)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.commonlisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\\\\\#)\\\\n([0-9]+)\\\\n(a|A)\\\\n(?=.)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.commonlisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\\\\\#)\\\\n([0-9]+)\\\\n(=)\\\\n(?=.)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.commonlisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\\\\\#)\\\\n([0-9]+)\\\\n(\\\\\\\\#)\\\\n(?=.)\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\\\\\#(\\\\\\\\+|-))\\\\n(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\\\\\#('|,|\\\\\\\\.|c|C|s|S|p|P))\\\\n(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"variable.other.constant.sharpsign.commonlisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.package.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\\\\\#)\\\\n(:)\\\\n(?=\\\\\\\\S)\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"variable.other.constant.backquote.commonlisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.backquote.commonlisp\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.constant.backquote.commonlisp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.constant.backquote.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by space or (\\\\n(\\\\n (`\\\\\\\\#) #2\\\\n |\\\\n (`)(,@|,\\\\\\\\.|,)? #3, #4\\\\n |\\\\n (,@|,\\\\\\\\.|,) #5\\\\n)\\\\n(?=\\\\\\\\S)\\\"}]},\\\"special-operator\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(\\\\\\\\(\\\\\\\\s*) # preceded by (\\\\n(unwind-protect|throw|the|tagbody|symbol-macrolet|return-from|quote|progv|progn|multiple-value-prog1|multiple-value-call|\\\\nmacrolet|locally|load-time-value|let\\\\\\\\*|let|labels|if|go|function|flet|eval-when|catch|block)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\"},\\\"string\\\":{\\\"begin\\\":\\\"(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.commonlisp\\\"}},\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.commonlisp\\\"}},\\\"name\\\":\\\"string.quoted.double.commonlisp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.commonlisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.formattedstring.commonlisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.constant.formattedstring.commonlisp\\\"},\\\"8\\\":{\\\"name\\\":\\\"storage.type.function.formattedstring.commonlisp\\\"},\\\"10\\\":{\\\"name\\\":\\\"storage.type.function.formattedstring.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n\\\\n(~) #1 tilde\\\\n(\\\\n (\\\\n (([+-]?[0-9]+)|('.)|V|\\\\\\\\#)*?\\\\n (,)?\\\\n )\\\\n*?) #2 prefix parameters, signed decimal numbers|single char, separated by commas\\\\n(\\\\n (:@|@:|:|@)\\\\n?) #8 modifiers\\\\n(\\\\\\\\(|\\\\\\\\)|\\\\\\\\[|\\\\\\\\]|;|{|}|<|>|\\\\\\\\^) #10 control structures\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.variable.commonlisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.constant.formattedstring.commonlisp\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.variable.commonlisp\\\"},\\\"10\\\":{\\\"name\\\":\\\"entity.name.variable.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n\\\\n(~) #1 tilde\\\\n(\\\\n (\\\\n (([+-]?[0-9]+)|('.)|V|\\\\\\\\#)*?\\\\n (,)?\\\\n )\\\\n*?) #2 prefix parameters, signed decimal numbers|single char, separated by commas\\\\n(\\\\n (:@|@:|:|@)\\\\n?) #8 modifiers\\\\n(A|S|D|B|O|X|R|P|C|F|E|G|\\\\\\\\$|%|\\\\\\\\&|\\\\\\\\||~|T|\\\\\\\\*|\\\\\\\\?|_|W|I) #10 directives\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.variable.commonlisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.constant.formattedstring.commonlisp\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.variable.commonlisp\\\"},\\\"10\\\":{\\\"name\\\":\\\"entity.name.variable.commonlisp\\\"},\\\"11\\\":{\\\"name\\\":\\\"entity.name.variable.commonlisp\\\"},\\\"12\\\":{\\\"name\\\":\\\"entity.name.variable.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n\\\\n(~) #1 tilde\\\\n(\\\\n (\\\\n (([+-]?[0-9]+)|('.)|V|\\\\\\\\#)*?\\\\n (,)?\\\\n )\\\\n*?) #2 prefix parameters, signed decimal numbers|single char, separated by commas\\\\n(\\\\n (:@|@:|:|@)\\\\n?) #8 modifiers\\\\n(\\\\\\\\/) #10\\\\n([#:A-Za-z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\@\\\\\\\\$\\\\\\\\%\\\\\\\\^\\\\\\\\&\\\\\\\\_\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\~\\\\\\\\!\\\\\\\\?\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\.]+?) #11 call function\\\\n(\\\\\\\\/) #12\\\"},{\\\"match\\\":\\\"(~\\\\\\\\n)\\\",\\\"name\\\":\\\"variable.other.constant.formattedstring.commonlisp\\\"}]},\\\"style-guide\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"3\\\":{\\\"name\\\":\\\"source.commonlisp\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?<=^'|\\\\\\\\s'|\\\\\\\\('|,@'|,\\\\\\\\.'|,')\\\\n(\\\\\\\\S+?)\\\\n(\\\\\\\\:\\\\\\\\:|\\\\\\\\:)\\\\n((\\\\\\\\+[^\\\\\\\\s\\\\\\\\+]+\\\\\\\\+)|(\\\\\\\\*[^\\\\\\\\s\\\\\\\\*]+\\\\\\\\*))\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\)))\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=\\\\\\\\S:|^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\\\\\+[^\\\\\\\\s\\\\\\\\+]+\\\\\\\\+)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"variable.other.constant.earmuffsplus.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=\\\\\\\\S:|^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(\\\\\\\\*[^\\\\\\\\s\\\\\\\\*]+\\\\\\\\*)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"string.regexp.earmuffsasterisk.commonlisp\\\"}]},\\\"symbol\\\":{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by space or (\\\\n(?:method-combination|declare)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"storage.type.function.symbol.commonlisp\\\"},\\\"type\\\":{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\() # preceded by space or (\\\\n(?:unsigned-byte|standard-char|standard|single-float|simple-vector|simple-string|simple-bit-vector|simple-base-string|simple-array|\\\\nsigned-byte|short-float|long-float|keyword|fixnum|extended-char|double-float|compiled-function|boolean|bignum|base-string|base-char)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"support.type.t.commonlisp\\\"},\\\"variable\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(?:\\\\\\\\*trace-output\\\\\\\\*|\\\\\\\\*terminal-io\\\\\\\\*|\\\\\\\\*standard-output\\\\\\\\*|\\\\\\\\*standard-input\\\\\\\\*|\\\\\\\\*readtable\\\\\\\\*|\\\\\\\\*read-suppress\\\\\\\\*|\\\\\\\\*read-eval\\\\\\\\*|\\\\n\\\\\\\\*read-default-float-format\\\\\\\\*|\\\\\\\\*read-base\\\\\\\\*|\\\\\\\\*random-state\\\\\\\\*|\\\\\\\\*query-io\\\\\\\\*|\\\\\\\\*print-right-margin\\\\\\\\*|\\\\\\\\*print-readably\\\\\\\\*|\\\\\\\\*print-radix\\\\\\\\*|\\\\\\\\*print-pretty\\\\\\\\*|\\\\n\\\\\\\\*print-pprint-dispatch\\\\\\\\*|\\\\\\\\*print-miser-width\\\\\\\\*|\\\\\\\\*print-lines\\\\\\\\*|\\\\\\\\*print-level\\\\\\\\*|\\\\\\\\*print-length\\\\\\\\*|\\\\\\\\*print-gensym\\\\\\\\*|\\\\\\\\*print-escape\\\\\\\\*|\\\\\\\\*print-circle\\\\\\\\*|\\\\n\\\\\\\\*print-case\\\\\\\\*|\\\\\\\\*print-base\\\\\\\\*|\\\\\\\\*print-array\\\\\\\\*|\\\\\\\\*package\\\\\\\\*|\\\\\\\\*modules\\\\\\\\*|\\\\\\\\*macroexpand-hook\\\\\\\\*|\\\\\\\\*load-verbose\\\\\\\\*|\\\\\\\\*load-truename\\\\\\\\*|\\\\\\\\*load-print\\\\\\\\*|\\\\n\\\\\\\\*load-pathname\\\\\\\\*|\\\\\\\\*gensym-counter\\\\\\\\*|\\\\\\\\*features\\\\\\\\*|\\\\\\\\*error-output\\\\\\\\*|\\\\\\\\*default-pathname-defaults\\\\\\\\*|\\\\\\\\*debugger-hook\\\\\\\\*|\\\\\\\\*debug-io\\\\\\\\*|\\\\\\\\*compile-verbose\\\\\\\\*|\\\\n\\\\\\\\*compile-print\\\\\\\\*|\\\\\\\\*compile-file-truename\\\\\\\\*|\\\\\\\\*compile-file-pathname\\\\\\\\*|\\\\\\\\*break-on-signals\\\\\\\\*)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"string.regexp.earmuffsasterisk.commonlisp\\\"},{\\\"match\\\":\\\"(?xi)\\\\n(?<=^|\\\\\\\\s|\\\\\\\\(|,@|,\\\\\\\\.|,) # preceded by space , ( or `,`|`,@`|`,.`\\\\n(?:\\\\\\\\*\\\\\\\\*\\\\\\\\*|\\\\\\\\*\\\\\\\\*|\\\\\\\\+\\\\\\\\+\\\\\\\\+|\\\\\\\\+\\\\\\\\+|\\\\\\\\/\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\/)\\\\n(?=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\))) # followed by space, ( or )\\\",\\\"name\\\":\\\"variable.other.repl.commonlisp\\\"}]}},\\\"scopeName\\\":\\\"source.commonlisp\\\",\\\"aliases\\\":[\\\"lisp\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Coq\\\",\\\"fileTypes\\\":[\\\"v\\\"],\\\"name\\\":\\\"coq\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Vernacular import keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(From|Require|Import|Export|Local|Global|Include)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.coq\\\"},{\\\"comment\\\":\\\"Vernacular scope keywords\\\",\\\"match\\\":\\\"\\\\\\\\b((Open|Close|Delimit|Undelimit|Bind)\\\\\\\\s+Scope)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.coq\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.source.coq\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.theorem.coq\\\"}},\\\"comment\\\":\\\"Theorem declarations\\\",\\\"match\\\":\\\"\\\\\\\\b(Theorem|Lemma|Remark|Fact|Corollary|Property|Proposition)\\\\\\\\s+((\\\\\\\\p{L}|[_\\\\\\\\u00A0])(\\\\\\\\p{L}|[0-9_\\\\\\\\u00A0'])*)\\\"},{\\\"match\\\":\\\"\\\\\\\\bGoal\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.source.coq\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.source.coq\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.source.coq\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.assumption.coq\\\"}},\\\"comment\\\":\\\"Assumptions\\\",\\\"match\\\":\\\"\\\\\\\\b(Parameters?|Axioms?|Conjectures?|Variables?|Hypothesis|Hypotheses)(\\\\\\\\s+Inline)?\\\\\\\\b\\\\\\\\s*\\\\\\\\(?\\\\\\\\s*((\\\\\\\\p{L}|[_\\\\\\\\u00A0])(\\\\\\\\p{L}|[0-9_\\\\\\\\u00A0'])*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.source.coq\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.assumption.coq\\\"}},\\\"comment\\\":\\\"Context\\\",\\\"match\\\":\\\"\\\\\\\\b(Context)\\\\\\\\b\\\\\\\\s*`?\\\\\\\\s*(\\\\\\\\(|\\\\\\\\{)?\\\\\\\\s*((\\\\\\\\p{L}|[_\\\\\\\\u00A0])(\\\\\\\\p{L}|[0-9_\\\\\\\\u00A0'])*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.source.coq\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.source.coq\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.coq\\\"}},\\\"comment\\\":\\\"Definitions\\\",\\\"match\\\":\\\"(\\\\\\\\b(?:Program|Local)\\\\\\\\s+)?\\\\\\\\b(Definition|Fixpoint|CoFixpoint|Function|Example|Let(?:\\\\\\\\s+Fixpoint|\\\\\\\\s+CoFixpoint)?|Instance|Equations|Equations?)\\\\\\\\s+((\\\\\\\\p{L}|[_\\\\\\\\u00A0])(\\\\\\\\p{L}|[0-9_\\\\\\\\u00A0'])*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.source.coq\\\"}},\\\"comment\\\":\\\"Obligations\\\",\\\"match\\\":\\\"\\\\\\\\b((Show\\\\\\\\s+)?Obligation\\\\\\\\s+Tactic|Obligations\\\\\\\\s+of|Obligation|Next\\\\\\\\s+Obligation(\\\\\\\\s+of)?|Solve\\\\\\\\s+Obligations(\\\\\\\\s+of)?|Solve\\\\\\\\s+All\\\\\\\\s+Obligations|Admit\\\\\\\\s+Obligations(\\\\\\\\s+of)?|Instance)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.source.coq\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.coq\\\"}},\\\"comment\\\":\\\"Type declarations\\\",\\\"match\\\":\\\"\\\\\\\\b(CoInductive|Inductive|Variant|Record|Structure|Class)\\\\\\\\s+(>\\\\\\\\s*)?((\\\\\\\\p{L}|[_\\\\\\\\u00A0])(\\\\\\\\p{L}|[0-9_\\\\\\\\u00A0'])*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.source.coq\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.ltac\\\"}},\\\"comment\\\":\\\"Ltac declarations\\\",\\\"match\\\":\\\"\\\\\\\\b(Ltac)\\\\\\\\s+((\\\\\\\\p{L}|[_\\\\\\\\u00A0])(\\\\\\\\p{L}|[0-9_\\\\\\\\u00A0'])*)\\\"},{\\\"comment\\\":\\\"Vernacular keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(Hint|Constructors|Resolve|Rewrite|Ltac|Implicit(\\\\\\\\s+Types)?|Set|Unset|Remove\\\\\\\\s+Printing|Arguments|Tactic\\\\\\\\s+Notation|Notation|Infix|Reserved\\\\\\\\s+Notation|Section|Module\\\\\\\\s+Type|Module|End|Check|Print|Eval|Search|Universe|Coercions?|Generalizable\\\\\\\\s+All|Generalizable\\\\\\\\s+Variable?|Existing\\\\\\\\s+Instance|Existing\\\\\\\\s+Class|Canonical|About|Locate|Collection|Typeclasses\\\\\\\\s+(Opaque|Transparent))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.source.coq\\\"},{\\\"comment\\\":\\\"Proof keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(Proof|Qed|Defined|Save|Abort(\\\\\\\\s+All)?|Undo(\\\\\\\\s+To)?|Restart|Focus|Unfocus|Unfocused|Show\\\\\\\\s+Proof|Show\\\\\\\\s+Existentials|Show|Unshelve)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.source.coq\\\"},{\\\"comment\\\":\\\"Vernacular Debug keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(Quit|Drop|Time|Redirect|Timeout|Fail)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.debug.coq\\\"},{\\\"comment\\\":\\\"Admits are bad\\\",\\\"match\\\":\\\"\\\\\\\\b(admit|Admitted)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.admit.coq\\\"},{\\\"comment\\\":\\\"Operators\\\",\\\"match\\\":\\\":|\\\\\\\\||=|<|>|\\\\\\\\*|\\\\\\\\+|-|\\\\\\\\{|\\\\\\\\}|\u2260|\u2228|\u2227|\u2194|\u00AC|\u2192|\u2264|\u2265\\\",\\\"name\\\":\\\"keyword.operator.coq\\\"},{\\\"comment\\\":\\\"Type keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(forall|exists|Type|Set|Prop|nat|bool|option|list|unit|sum|prod|comparison|Empty_set)\\\\\\\\b|\u2200|\u2203\\\",\\\"name\\\":\\\"support.type.coq\\\"},{\\\"comment\\\":\\\"Ltac keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(try|repeat|rew|progress|fresh|solve|now|first|tryif|at|once|do|only)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.ltac\\\"},{\\\"comment\\\":\\\"Common Ltac connectors\\\",\\\"match\\\":\\\"\\\\\\\\b(into|with|eqn|by|move|as|using)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.ltac\\\"},{\\\"comment\\\":\\\"Gallina keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(match|lazymatch|multimatch|fun|with|return|end|let|in|if|then|else|fix|for|where|and)\\\\\\\\b|\u03BB\\\",\\\"name\\\":\\\"keyword.control.gallina\\\"},{\\\"comment\\\":\\\"Ltac builtins\\\",\\\"match\\\":\\\"\\\\\\\\b(intro|intros|revert|induction|destruct|auto|eauto|tauto|eassumption|apply|eapply|assumption|constructor|econstructor|reflexivity|inversion|injection|assert|split|esplit|omega|fold|unfold|specialize|rewrite|erewrite|change|symmetry|refine|simpl|intuition|firstorder|generalize|idtac|exist|exists|eexists|elim|eelim|rename|subst|congruence|trivial|left|right|set|pose|discriminate|clear|clearbody|contradict|contradiction|exact|dependent|remember|case|easy|unshelve|pattern|transitivity|etransitivity|f_equal|exfalso|replace|abstract|cycle|swap|revgoals|shelve|unshelve)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.ltac\\\"},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\*(?!#)\\\",\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\)\\\",\\\"name\\\":\\\"comment.block.coq\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_comment\\\"},{\\\"include\\\":\\\"#block_double_quoted_string\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b((0(x|X)[0-9a-fA-F]+)|([0-9]+(\\\\\\\\.[0-9]+)?))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.gallina\\\"},{\\\"comment\\\":\\\"Gallina builtin constructors\\\",\\\"match\\\":\\\"\\\\\\\\b(True|False|tt|false|true|Some|None|nil|cons|pair|inl|inr|O|S|Eq|Lt|Gt|id|ex|all|unique)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.constructor.gallina\\\"},{\\\"match\\\":\\\"\\\\\\\\b_\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.wildcard.coq\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.coq\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.coq\\\"}},\\\"name\\\":\\\"string.quoted.double.coq\\\"}],\\\"repository\\\":{\\\"block_comment\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\*(?!#)\\\",\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\)\\\",\\\"name\\\":\\\"comment.block.coq\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_comment\\\"},{\\\"include\\\":\\\"#block_double_quoted_string\\\"}]},\\\"block_double_quoted_string\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.coq\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.coq\\\"}},\\\"name\\\":\\\"string.quoted.double.coq\\\"}},\\\"scopeName\\\":\\\"source.coq\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"RegExp\\\",\\\"fileTypes\\\":[\\\"re\\\"],\\\"name\\\":\\\"regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-expression\\\"}],\\\"repository\\\":{\\\"codetags\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.codetag.notation.python\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\b(NOTE|XXX|HACK|FIXME|BUG|TODO)\\\\\\\\b)\\\"},\\\"fregexp-base-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#fregexp-quantifier\\\"},{\\\"include\\\":\\\"#fstring-formatting-braces\\\"},{\\\"match\\\":\\\"\\\\\\\\{.*?\\\\\\\\}\\\"},{\\\"include\\\":\\\"#regexp-base-common\\\"}]},\\\"fregexp-quantifier\\\":{\\\"match\\\":\\\"\\\\\\\\{\\\\\\\\{(\\\\\\\\d+|\\\\\\\\d+,(\\\\\\\\d+)?|,\\\\\\\\d+)\\\\\\\\}\\\\\\\\}\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},\\\"fstring-formatting-braces\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.brace.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"empty braces are illegal\\\",\\\"match\\\":\\\"({)(\\\\\\\\s*?)(})\\\"},{\\\"match\\\":\\\"({{|}})\\\",\\\"name\\\":\\\"constant.character.escape.python\\\"}]},\\\"regexp-backreference\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.backreference.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(\\\\\\\\?P=\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?)(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.backreference.named.regexp\\\"},\\\"regexp-backreference-number\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.backreference.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d?)\\\",\\\"name\\\":\\\"meta.backreference.regexp\\\"},\\\"regexp-base-common\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"support.other.match.any.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\^\\\",\\\"name\\\":\\\"support.other.match.begin.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\",\\\"name\\\":\\\"support.other.match.end.regexp\\\"},{\\\"match\\\":\\\"[+*?]\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.disjunction.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-sequence\\\"}]},\\\"regexp-base-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-quantifier\\\"},{\\\"include\\\":\\\"#regexp-base-common\\\"}]},\\\"regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"regexp-charecter-set-escapes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[abfnrtv\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-special\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{1,3})\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-character\\\"},{\\\"include\\\":\\\"#regexp-escape-unicode\\\"},{\\\"include\\\":\\\"#regexp-escape-catchall\\\"}]},\\\"regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-expression\\\"}]},\\\"regexp-escape-catchall\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(.|\\\\\\\\n)\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},\\\"regexp-escape-character\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|0[0-7]{1,2}|[0-7]{3})\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},\\\"regexp-escape-sequence\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-escape-special\\\"},{\\\"include\\\":\\\"#regexp-escape-character\\\"},{\\\"include\\\":\\\"#regexp-escape-unicode\\\"},{\\\"include\\\":\\\"#regexp-backreference-number\\\"},{\\\"include\\\":\\\"#regexp-escape-catchall\\\"}]},\\\"regexp-escape-special\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([AbBdDsSwWZ])\\\",\\\"name\\\":\\\"support.other.escape.special.regexp\\\"},\\\"regexp-escape-unicode\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.unicode.regexp\\\"},\\\"regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#regexp-character-set\\\"},{\\\"include\\\":\\\"#regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#regexp-lookahead\\\"},{\\\"include\\\":\\\"#regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#regexp-lookbehind\\\"},{\\\"include\\\":\\\"#regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#regexp-conditional\\\"},{\\\"include\\\":\\\"#regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#regexp-parentheses\\\"}]},\\\"regexp-flags\\\":{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\?[aiLmsux]+\\\\\\\\)\\\",\\\"name\\\":\\\"storage.modifier.flag.regexp\\\"},\\\"regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-expression\\\"}]},\\\"regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-expression\\\"}]},\\\"regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-expression\\\"}]},\\\"regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-expression\\\"}]},\\\"regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-expression\\\"}]},\\\"regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-expression\\\"}]},\\\"regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-expression\\\"}]},\\\"regexp-quantifier\\\":{\\\"match\\\":\\\"\\\\\\\\{(\\\\\\\\d+|\\\\\\\\d+,(\\\\\\\\d+)?|,\\\\\\\\d+)\\\\\\\\}\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"}},\\\"scopeName\\\":\\\"source.regexp.python\\\",\\\"aliases\\\":[\\\"regex\\\"]}\"))\n\nexport default [\nlang\n]\n", "import c from './c.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"GLSL\\\",\\\"fileTypes\\\":[\\\"vs\\\",\\\"fs\\\",\\\"gs\\\",\\\"vsh\\\",\\\"fsh\\\",\\\"gsh\\\",\\\"vshader\\\",\\\"fshader\\\",\\\"gshader\\\",\\\"vert\\\",\\\"frag\\\",\\\"geom\\\",\\\"f.glsl\\\",\\\"v.glsl\\\",\\\"g.glsl\\\"],\\\"foldingStartMarker\\\":\\\"/\\\\\\\\*\\\\\\\\*|\\\\\\\\{\\\\\\\\s*$\\\",\\\"foldingStopMarker\\\":\\\"\\\\\\\\*\\\\\\\\*/|^\\\\\\\\s*\\\\\\\\}\\\",\\\"name\\\":\\\"glsl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(break|case|continue|default|discard|do|else|for|if|return|switch|while)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.glsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(void|bool|int|uint|float|vec2|vec3|vec4|bvec2|bvec3|bvec4|ivec2|ivec2|ivec3|uvec2|uvec2|uvec3|mat2|mat3|mat4|mat2x2|mat2x3|mat2x4|mat3x2|mat3x3|mat3x4|mat4x2|mat4x3|mat4x4|sampler[1|2|3]D|samplerCube|sampler2DRect|sampler[1|2]DShadow|sampler2DRectShadow|sampler[1|2]DArray|sampler[1|2]DArrayShadow|samplerBuffer|sampler2DMS|sampler2DMSArray|struct|isampler[1|2|3]D|isamplerCube|isampler2DRect|isampler[1|2]DArray|isamplerBuffer|isampler2DMS|isampler2DMSArray|usampler[1|2|3]D|usamplerCube|usampler2DRect|usampler[1|2]DArray|usamplerBuffer|usampler2DMS|usampler2DMSArray)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.glsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(attribute|centroid|const|flat|in|inout|invariant|noperspective|out|smooth|uniform|varying)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.glsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(gl_BackColor|gl_BackLightModelProduct|gl_BackLightProduct|gl_BackMaterial|gl_BackSecondaryColor|gl_ClipDistance|gl_ClipPlane|gl_ClipVertex|gl_Color|gl_DepthRange|gl_DepthRangeParameters|gl_EyePlaneQ|gl_EyePlaneR|gl_EyePlaneS|gl_EyePlaneT|gl_Fog|gl_FogCoord|gl_FogFragCoord|gl_FogParameters|gl_FragColor|gl_FragCoord|gl_FragDat|gl_FragDept|gl_FrontColor|gl_FrontFacing|gl_FrontLightModelProduct|gl_FrontLightProduct|gl_FrontMaterial|gl_FrontSecondaryColor|gl_InstanceID|gl_Layer|gl_LightModel|gl_LightModelParameters|gl_LightModelProducts|gl_LightProducts|gl_LightSource|gl_LightSourceParameters|gl_MaterialParameters|gl_ModelViewMatrix|gl_ModelViewMatrixInverse|gl_ModelViewMatrixInverseTranspose|gl_ModelViewMatrixTranspose|gl_ModelViewProjectionMatrix|gl_ModelViewProjectionMatrixInverse|gl_ModelViewProjectionMatrixInverseTranspose|gl_ModelViewProjectionMatrixTranspose|gl_MultiTexCoord[0-7]|gl_Normal|gl_NormalMatrix|gl_NormalScale|gl_ObjectPlaneQ|gl_ObjectPlaneR|gl_ObjectPlaneS|gl_ObjectPlaneT|gl_Point|gl_PointCoord|gl_PointParameters|gl_PointSize|gl_Position|gl_PrimitiveIDIn|gl_ProjectionMatrix|gl_ProjectionMatrixInverse|gl_ProjectionMatrixInverseTranspose|gl_ProjectionMatrixTranspose|gl_SecondaryColor|gl_TexCoord|gl_TextureEnvColor|gl_TextureMatrix|gl_TextureMatrixInverse|gl_TextureMatrixInverseTranspose|gl_TextureMatrixTranspose|gl_Vertex|gl_VertexIDh)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.glsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(gl_MaxClipPlanes|gl_MaxCombinedTextureImageUnits|gl_MaxDrawBuffers|gl_MaxFragmentUniformComponents|gl_MaxLights|gl_MaxTextureCoords|gl_MaxTextureImageUnits|gl_MaxTextureUnits|gl_MaxVaryingFloats|gl_MaxVertexAttribs|gl_MaxVertexTextureImageUnits|gl_MaxVertexUniformComponents)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.glsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(abs|acos|all|any|asin|atan|ceil|clamp|cos|cross|degrees|dFdx|dFdy|distance|dot|equal|exp|exp2|faceforward|floor|fract|ftransform|fwidth|greaterThan|greaterThanEqual|inversesqrt|length|lessThan|lessThanEqual|log|log2|matrixCompMult|max|min|mix|mod|noise[1-4]|normalize|not|notEqual|outerProduct|pow|radians|reflect|refract|shadow1D|shadow1DLod|shadow1DProj|shadow1DProjLod|shadow2D|shadow2DLod|shadow2DProj|shadow2DProjLod|sign|sin|smoothstep|sqrt|step|tan|texture1D|texture1DLod|texture1DProj|texture1DProjLod|texture2D|texture2DLod|texture2DProj|texture2DProjLod|texture3D|texture3DLod|texture3DProj|texture3DProjLod|textureCube|textureCubeLod|transpose)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.glsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(asm|double|enum|extern|goto|inline|long|short|sizeof|static|typedef|union|unsigned|volatile)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.glsl\\\"},{\\\"include\\\":\\\"source.c\\\"}],\\\"scopeName\\\":\\\"source.glsl\\\",\\\"embeddedLangs\\\":[\\\"c\\\"]}\"))\n\nexport default [\n...c,\nlang\n]\n", "import regexp from './regexp.mjs'\nimport glsl from './glsl.mjs'\nimport sql from './sql.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"C++\\\",\\\"name\\\":\\\"cpp-macro\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#constructor_root\\\"},{\\\"include\\\":\\\"#destructor_root\\\"},{\\\"include\\\":\\\"#function_definition\\\"},{\\\"include\\\":\\\"#operator_overload\\\"},{\\\"include\\\":\\\"#using_namespace\\\"},{\\\"include\\\":\\\"source.cpp#type_alias\\\"},{\\\"include\\\":\\\"source.cpp#using_name\\\"},{\\\"include\\\":\\\"source.cpp#namespace_alias\\\"},{\\\"include\\\":\\\"#namespace_block\\\"},{\\\"include\\\":\\\"#extern_block\\\"},{\\\"include\\\":\\\"#typedef_class\\\"},{\\\"include\\\":\\\"#typedef_struct\\\"},{\\\"include\\\":\\\"#typedef_union\\\"},{\\\"include\\\":\\\"source.cpp#misc_keywords\\\"},{\\\"include\\\":\\\"source.cpp#standard_declares\\\"},{\\\"include\\\":\\\"#class_block\\\"},{\\\"include\\\":\\\"#struct_block\\\"},{\\\"include\\\":\\\"#union_block\\\"},{\\\"include\\\":\\\"#enum_block\\\"},{\\\"include\\\":\\\"source.cpp#template_isolated_definition\\\"},{\\\"include\\\":\\\"#template_definition\\\"},{\\\"include\\\":\\\"source.cpp#template_explicit_instantiation\\\"},{\\\"include\\\":\\\"source.cpp#access_control_keywords\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#assembly\\\"},{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}],\\\"repository\\\":{\\\"alignas_attribute\\\":{\\\"begin\\\":\\\"alignas\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.begin.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.end.cpp\\\"}},\\\"name\\\":\\\"support.other.attribute.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"}},\\\"match\\\":\\\"(using)\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.attribute.cpp\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.accessor.attribute.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=::)\\\",\\\"name\\\":\\\"entity.name.namespace.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.other.attribute.$0.cpp\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"alignas_operator\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)alignas(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.alignas.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.alignas.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.alignas\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.alignas.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"alignof_operator\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)alignof(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.alignof.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.alignof.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.alignof\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.alignof.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"assembly\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:__asm__|asm)\\\\\\\\b)(?:\\\\\\\\s+)?((?:volatile)?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.asm.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.cpp\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.asm.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\n|$)\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.assembly.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.assembly.cpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(R?)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.assembly.cpp\\\"}},\\\"contentName\\\":\\\"meta.embedded.assembly\\\",\\\"end\\\":\\\"\\\\\\\"|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.assembly.cpp\\\"}},\\\"name\\\":\\\"string.quoted.double.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.asm\\\"},{\\\"include\\\":\\\"source.x86\\\"},{\\\"include\\\":\\\"source.x86_64\\\"},{\\\"include\\\":\\\"source.arm\\\"},{\\\"include\\\":\\\"source.cpp#backslash_escapes\\\"},{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.assembly.inner.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.assembly.inner.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.asm.label.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\[((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\]\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.colon.assembly.cpp\\\"},{\\\"include\\\":\\\"#comments\\\"}]}]},\\\"attributes_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#cpp_attributes\\\"},{\\\"include\\\":\\\"#gcc_attributes\\\"},{\\\"include\\\":\\\"#ms_attributes\\\"},{\\\"include\\\":\\\"#alignas_attribute\\\"}]},\\\"block\\\":{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.cpp\\\"}},\\\"end\\\":\\\"}|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.cpp\\\"}},\\\"name\\\":\\\"meta.block.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},\\\"block_comment\\\":{\\\"begin\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\/|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.cpp\\\"}},\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"builtin_storage_type_initilizer\\\":{\\\"begin\\\":\\\"\\\\\\\\s*+(?<!\\\\\\\\w)(?:(?:(?:((?:(?:unsigned)|(?:wchar_t)|(?:double)|(?:signed)|(?:short)|(?:float)|(?:auto)|(?:void)|(?:long)|(?:char)|(?:bool)|(?:int)))|((?:(?:uint_least32_t)|(?:uint_least64_t)|(?:uint_least16_t)|(?:uint_fast64_t)|(?:uint_least8_t)|(?:int_least64_t)|(?:int_least32_t)|(?:int_least16_t)|(?:uint_fast16_t)|(?:uint_fast32_t)|(?:int_least8_t)|(?:int_fast16_t)|(?:int_fast32_t)|(?:int_fast64_t)|(?:uint_fast8_t)|(?:int_fast8_t)|(?:suseconds_t)|(?:useconds_t)|(?:uintmax_t)|(?:uintmax_t)|(?:in_port_t)|(?:uintmax_t)|(?:in_addr_t)|(?:blksize_t)|(?:uintptr_t)|(?:intmax_t)|(?:intptr_t)|(?:blkcnt_t)|(?:intmax_t)|(?:u_quad_t)|(?:uint16_t)|(?:uint32_t)|(?:uint64_t)|(?:ssize_t)|(?:fixpt_t)|(?:qaddr_t)|(?:u_short)|(?:int16_t)|(?:int32_t)|(?:int64_t)|(?:uint8_t)|(?:daddr_t)|(?:caddr_t)|(?:swblk_t)|(?:clock_t)|(?:segsz_t)|(?:nlink_t)|(?:time_t)|(?:u_long)|(?:ushort)|(?:quad_t)|(?:mode_t)|(?:size_t)|(?:u_char)|(?:int8_t)|(?:u_int)|(?:uid_t)|(?:off_t)|(?:pid_t)|(?:gid_t)|(?:dev_t)|(?:div_t)|(?:key_t)|(?:ino_t)|(?:id_t)|(?:id_t)|(?:uint))))|((?:(?:pthread_rwlockattr_t)|(?:pthread_mutexattr_t)|(?:pthread_condattr_t)|(?:pthread_rwlock_t)|(?:pthread_mutex_t)|(?:pthread_cond_t)|(?:pthread_attr_t)|(?:pthread_once_t)|(?:pthread_key_t)|(?:pthread_t))))|([a-zA-Z_]\\\\\\\\w*_t))(?!\\\\\\\\w)\\\\\\\\s*+(?<!\\\\\\\\w)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.primitive.cpp storage.type.built-in.primitive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.cpp storage.type.built-in.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.initializer.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.initializer.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"case_statement\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)case(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.case.cpp\\\"}},\\\"end\\\":\\\":|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.colon.case.cpp\\\"}},\\\"name\\\":\\\"meta.conditional.case.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"class_block\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)class(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.class.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.class.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.class.cpp\\\"}},\\\"name\\\":\\\"meta.head.class.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.class.cpp\\\"}},\\\"name\\\":\\\"meta.body.class.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.class.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(?:\\\\\\\\s+)?+(\\\\\\\\/\\\\\\\\/[!\\\\\\\\/]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.documentation.cpp\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\n)(?<!\\\\\\\\\\\\\\\\\\\\\\\\n)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"comment.line.double-slash.documentation.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#line_continuation_character\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:callergraph|callgraph|else|endif|f\\\\\\\\$|f\\\\\\\\[|f\\\\\\\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\\\\\\\$|\\\\\\\\#|<|>|%|\\\\\\\"|\\\\\\\\.|=|::|\\\\\\\\||\\\\\\\\-\\\\\\\\-|\\\\\\\\-\\\\\\\\-\\\\\\\\-)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|em|e))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]b)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.inline.raw.string.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:c|p))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"in|out\\\",\\\"name\\\":\\\"keyword.other.parameter.direction.$0.cpp\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"variable.parameter.cpp\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.cpp\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]param)(?:\\\\\\\\s*\\\\\\\\[((?:,?(?:\\\\\\\\s+)?(?:in|out)(?:\\\\\\\\s+)?)+)\\\\\\\\])?(\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?:(,)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))*)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|throws|todo|tparam|version|warning|xrefitem)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|startuml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z]+:|@[a-z_]+:)\\\",\\\"name\\\":\\\"storage.type.class.gtkdoc.cpp\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.documentation.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:callergraph|callgraph|else|endif|f\\\\\\\\$|f\\\\\\\\[|f\\\\\\\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\\\\\\\$|\\\\\\\\#|<|>|%|\\\\\\\"|\\\\\\\\.|=|::|\\\\\\\\||\\\\\\\\-\\\\\\\\-|\\\\\\\\-\\\\\\\\-\\\\\\\\-)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|em|e))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]b)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.inline.raw.string.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:c|p))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"in|out\\\",\\\"name\\\":\\\"keyword.other.parameter.direction.$0.cpp\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"variable.parameter.cpp\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.cpp\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]param)(?:\\\\\\\\s*\\\\\\\\[((?:,?(?:\\\\\\\\s+)?(?:in|out)(?:\\\\\\\\s+)?)+)\\\\\\\\])?(\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?:(,)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))*)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|throws|todo|tparam|version|warning|xrefitem)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|startuml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z]+:|@[a-z_]+:)\\\",\\\"name\\\":\\\"storage.type.class.gtkdoc.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.documentation.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\/\\\\\\\\*[!*]+(?=\\\\\\\\s))(.+)([!*]*\\\\\\\\*\\\\\\\\/)\\\",\\\"name\\\":\\\"comment.block.documentation.cpp\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\s+)?+\\\\\\\\/\\\\\\\\*[!*]+(?:(?:\\\\\\\\n|$)|(?=\\\\\\\\s))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.documentation.cpp\\\"}},\\\"end\\\":\\\"[!*]*\\\\\\\\*\\\\\\\\/|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.documentation.cpp\\\"}},\\\"name\\\":\\\"comment.block.documentation.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:callergraph|callgraph|else|endif|f\\\\\\\\$|f\\\\\\\\[|f\\\\\\\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\\\\\\\$|\\\\\\\\#|<|>|%|\\\\\\\"|\\\\\\\\.|=|::|\\\\\\\\||\\\\\\\\-\\\\\\\\-|\\\\\\\\-\\\\\\\\-\\\\\\\\-)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|em|e))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]b)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.inline.raw.string.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:c|p))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"in|out\\\",\\\"name\\\":\\\"keyword.other.parameter.direction.$0.cpp\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"variable.parameter.cpp\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.cpp\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]param)(?:\\\\\\\\s*\\\\\\\\[((?:,?(?:\\\\\\\\s+)?(?:in|out)(?:\\\\\\\\s+)?)+)\\\\\\\\])?(\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?:(,)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))*)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|throws|todo|tparam|version|warning|xrefitem)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|startuml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z]+:|@[a-z_]+:)\\\",\\\"name\\\":\\\"storage.type.class.gtkdoc.cpp\\\"}]},{\\\"include\\\":\\\"source.cpp#emacs_file_banner\\\"},{\\\"include\\\":\\\"#block_comment\\\"},{\\\"include\\\":\\\"#line_comment\\\"},{\\\"include\\\":\\\"source.cpp#invalid_comment_end\\\"}]},\\\"constructor_inline\\\":{\\\"begin\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*)((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.special.constructor.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#functional_specifiers_pre_parameters\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"entity.name.function.constructor.cpp entity.name.function.definition.special.constructor.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.special.constructor.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.default.function.cpp keyword.other.default.constructor.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\=)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(default)|(delete))\\\"},{\\\"include\\\":\\\"source.cpp#functional_specifiers_pre_parameters\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.initializers.cpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.initializer.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"3\\\":{},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp\\\"}},\\\"contentName\\\":\\\"meta.parameter.initialization\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.initializer.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp\\\"}},\\\"contentName\\\":\\\"meta.parameter.initialization\\\",\\\"end\\\":\\\"\\\\\\\\}|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.special.constructor.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters.special.constructor\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.special.constructor.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"include\\\":\\\"source.cpp#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.special.constructor.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"constructor_root\\\":{\\\"begin\\\":\\\"\\\\\\\\s*+((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<8>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)(((?>(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))::((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\10)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.special.constructor.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.constructor.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.constructor.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"8\\\":{},\\\"9\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?=:)\\\",\\\"name\\\":\\\"entity.name.type.constructor.cpp\\\"},{\\\"match\\\":\\\"(?<=:)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.function.definition.special.constructor.cpp\\\"},{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.constructor.cpp\\\"}]},\\\"10\\\":{},\\\"11\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.special.constructor.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.default.function.cpp keyword.other.default.constructor.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\=)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(default)|(delete))\\\"},{\\\"include\\\":\\\"source.cpp#functional_specifiers_pre_parameters\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.initializers.cpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.initializer.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"3\\\":{},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp\\\"}},\\\"contentName\\\":\\\"meta.parameter.initialization\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.initializer.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp\\\"}},\\\"contentName\\\":\\\"meta.parameter.initialization\\\",\\\"end\\\":\\\"\\\\\\\\}|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.special.constructor.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters.special.constructor\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.special.constructor.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"include\\\":\\\"source.cpp#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.special.constructor.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"cpp_attributes\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.begin.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\]|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.end.cpp\\\"}},\\\"name\\\":\\\"support.other.attribute.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"}},\\\"match\\\":\\\"(using)\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.attribute.cpp\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.accessor.attribute.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=::)\\\",\\\"name\\\":\\\"entity.name.namespace.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.other.attribute.$0.cpp\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"curly_initializer\\\":{\\\"begin\\\":\\\"(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"13\\\":{},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"18\\\":{},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"23\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.curly.initializer.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\}|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.curly.initializer.cpp\\\"}},\\\"name\\\":\\\"meta.initialization.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"}]},\\\"decltype\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)decltype(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.other.decltype.cpp storage.type.decltype.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.decltype.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.decltype\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.decltype.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"decltype_specifier\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)decltype(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.other.decltype.cpp storage.type.decltype.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.decltype.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.decltype\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.decltype.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"default_statement\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)default(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.default.cpp\\\"}},\\\"end\\\":\\\":|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.colon.case.default.cpp\\\"}},\\\"name\\\":\\\"meta.conditional.case.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"destructor_inline\\\":{\\\"begin\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*)(~(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.special.member.destructor.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#functional_specifiers_pre_parameters\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"entity.name.function.destructor.cpp entity.name.function.definition.special.member.destructor.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.special.member.destructor.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.default.function.cpp keyword.other.default.constructor.cpp keyword.other.default.destructor.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp keyword.other.delete.destructor.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\=)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(default)|(delete))\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.special.member.destructor.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters.special.member.destructor\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.special.member.destructor.cpp\\\"}},\\\"patterns\\\":[]},{\\\"include\\\":\\\"source.cpp#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.special.member.destructor.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"destructor_root\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)(((?>(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))::((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))~(?:\\\\\\\\14)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.special.member.destructor.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.destructor.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.destructor.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{},\\\"13\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?=:)\\\",\\\"name\\\":\\\"entity.name.type.destructor.cpp\\\"},{\\\"match\\\":\\\"(?<=:)~(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.function.definition.special.member.destructor.cpp\\\"},{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.destructor.cpp\\\"}]},\\\"14\\\":{},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"23\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"24\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"25\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"26\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.special.member.destructor.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.default.function.cpp keyword.other.default.constructor.cpp keyword.other.default.destructor.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp keyword.other.delete.destructor.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\=)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(default)|(delete))\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.special.member.destructor.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters.special.member.destructor\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.special.member.destructor.cpp\\\"}},\\\"patterns\\\":[]},{\\\"include\\\":\\\"source.cpp#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.special.member.destructor.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"diagnostic\\\":{\\\"begin\\\":\\\"(^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?((?:error|warning)))\\\\\\\\b(?:\\\\\\\\s+)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.diagnostic.$7.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"},\\\"7\\\":{}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.preprocessor.diagnostic.$reference(directive).cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"}},\\\"end\\\":\\\"(?:(\\\\\\\")|(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$)))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"}},\\\"name\\\":\\\"string.quoted.double.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"}},\\\"end\\\":\\\"(?:(')|(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$)))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"}},\\\"name\\\":\\\"string.quoted.single.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"[^'\\\\\\\"]\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"string.unquoted.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#line_continuation_character\\\"},{\\\"include\\\":\\\"#comments\\\"}]}]},\\\"enum_block\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)enum(?!\\\\\\\\w))(?:\\\\\\\\s+(class|struct))?(?:(?:\\\\\\\\s+|((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\))))|(?={))(?:\\\\\\\\s+)?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))?)(?:(?:\\\\\\\\s+)?(:)(?:\\\\\\\\s+)?(?:((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::))?(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.enum.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.enum.enum-key.$2.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.enum.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.colon.type-specifier.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#scope_resolution_inner_generated\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"9\\\":{},\\\"10\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"storage.type.integral.$17.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.enum.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.enum.cpp\\\"}},\\\"name\\\":\\\"meta.head.enum.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.enum.cpp\\\"}},\\\"name\\\":\\\"meta.body.enum.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"source.cpp#enumerator_list\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"},{\\\"include\\\":\\\"source.cpp#semicolon\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.enum.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"evaluation_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"source.cpp#member_access\\\"},{\\\"include\\\":\\\"source.cpp#predefined_macros\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"source.cpp#memory_operators\\\"},{\\\"include\\\":\\\"source.cpp#wordlike_operators\\\"},{\\\"include\\\":\\\"source.cpp#type_casting_operators\\\"},{\\\"include\\\":\\\"source.cpp#control_flow_keywords\\\"},{\\\"include\\\":\\\"source.cpp#exception_keywords\\\"},{\\\"include\\\":\\\"source.cpp#the_this_keyword\\\"},{\\\"include\\\":\\\"source.cpp#language_constants\\\"},{\\\"include\\\":\\\"#builtin_storage_type_initilizer\\\"},{\\\"include\\\":\\\"source.cpp#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"source.cpp#functional_specifiers_pre_parameters\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#lambdas\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#function_call\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_inner_generated\\\"},{\\\"include\\\":\\\"#square_brackets\\\"},{\\\"include\\\":\\\"source.cpp#semicolon\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"}]},\\\"ever_present_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#pragma_mark\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"source.cpp#include\\\"},{\\\"include\\\":\\\"#line\\\"},{\\\"include\\\":\\\"#diagnostic\\\"},{\\\"include\\\":\\\"source.cpp#undef\\\"},{\\\"include\\\":\\\"#preprocessor_conditional_range\\\"},{\\\"include\\\":\\\"source.cpp#single_line_macro\\\"},{\\\"include\\\":\\\"#macro\\\"},{\\\"include\\\":\\\"source.cpp#preprocessor_conditional_standalone\\\"},{\\\"include\\\":\\\"source.cpp#macro_argument\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"source.cpp#line_continuation_character\\\"}]},\\\"extern_block\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(extern)(?=\\\\\\\\s*\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.extern.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.extern.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.extern.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.extern.cpp\\\"}},\\\"name\\\":\\\"meta.head.extern.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.extern.cpp\\\"}},\\\"name\\\":\\\"meta.body.extern.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.extern.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"function_body_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#using_namespace\\\"},{\\\"include\\\":\\\"source.cpp#type_alias\\\"},{\\\"include\\\":\\\"source.cpp#using_name\\\"},{\\\"include\\\":\\\"source.cpp#namespace_alias\\\"},{\\\"include\\\":\\\"#typedef_class\\\"},{\\\"include\\\":\\\"#typedef_struct\\\"},{\\\"include\\\":\\\"#typedef_union\\\"},{\\\"include\\\":\\\"source.cpp#misc_keywords\\\"},{\\\"include\\\":\\\"source.cpp#standard_declares\\\"},{\\\"include\\\":\\\"#class_block\\\"},{\\\"include\\\":\\\"#struct_block\\\"},{\\\"include\\\":\\\"#union_block\\\"},{\\\"include\\\":\\\"#enum_block\\\"},{\\\"include\\\":\\\"source.cpp#access_control_keywords\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#assembly\\\"},{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#switch_statement\\\"},{\\\"include\\\":\\\"source.cpp#goto_statement\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"},{\\\"include\\\":\\\"source.cpp#label\\\"}]},\\\"function_call\\\":{\\\"begin\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<11>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)\\\\\\\\b(?<!\\\\\\\\Wreinterpret_cast|^reinterpret_cast|\\\\\\\\Watomic_noexcept|^atomic_noexcept|\\\\\\\\Wuint_least16_t|^uint_least16_t|\\\\\\\\Wuint_least32_t|^uint_least32_t|\\\\\\\\Wuint_least64_t|^uint_least64_t|\\\\\\\\Watomic_cancel|^atomic_cancel|\\\\\\\\Watomic_commit|^atomic_commit|\\\\\\\\Wuint_least8_t|^uint_least8_t|\\\\\\\\Wuint_fast16_t|^uint_fast16_t|\\\\\\\\Wuint_fast32_t|^uint_fast32_t|\\\\\\\\Wint_least16_t|^int_least16_t|\\\\\\\\Wint_least32_t|^int_least32_t|\\\\\\\\Wint_least64_t|^int_least64_t|\\\\\\\\Wuint_fast64_t|^uint_fast64_t|\\\\\\\\Wthread_local|^thread_local|\\\\\\\\Wint_fast16_t|^int_fast16_t|\\\\\\\\Wint_fast32_t|^int_fast32_t|\\\\\\\\Wint_fast64_t|^int_fast64_t|\\\\\\\\Wsynchronized|^synchronized|\\\\\\\\Wuint_fast8_t|^uint_fast8_t|\\\\\\\\Wdynamic_cast|^dynamic_cast|\\\\\\\\Wint_least8_t|^int_least8_t|\\\\\\\\Wint_fast8_t|^int_fast8_t|\\\\\\\\Wstatic_cast|^static_cast|\\\\\\\\Wsuseconds_t|^suseconds_t|\\\\\\\\Wconst_cast|^const_cast|\\\\\\\\Wuseconds_t|^useconds_t|\\\\\\\\Wconstinit|^constinit|\\\\\\\\Wco_return|^co_return|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconsteval|^consteval|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconsteval|^consteval|\\\\\\\\Wprotected|^protected|\\\\\\\\Wnamespace|^namespace|\\\\\\\\Wblksize_t|^blksize_t|\\\\\\\\Wco_return|^co_return|\\\\\\\\Win_addr_t|^in_addr_t|\\\\\\\\Win_port_t|^in_port_t|\\\\\\\\Wuintptr_t|^uintptr_t|\\\\\\\\Wtemplate|^template|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Wcontinue|^continue|\\\\\\\\Wco_await|^co_await|\\\\\\\\Wco_yield|^co_yield|\\\\\\\\Wunsigned|^unsigned|\\\\\\\\Wu_quad_t|^u_quad_t|\\\\\\\\Wblkcnt_t|^blkcnt_t|\\\\\\\\Wuint16_t|^uint16_t|\\\\\\\\Wuint32_t|^uint32_t|\\\\\\\\Wuint64_t|^uint64_t|\\\\\\\\Wintptr_t|^intptr_t|\\\\\\\\Wintmax_t|^intmax_t|\\\\\\\\Wintmax_t|^intmax_t|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wregister|^register|\\\\\\\\Wrestrict|^restrict|\\\\\\\\Wexplicit|^explicit|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Woperator|^operator|\\\\\\\\Wdecltype|^decltype|\\\\\\\\Wtypename|^typename|\\\\\\\\Wrequires|^requires|\\\\\\\\Wco_await|^co_await|\\\\\\\\Wco_yield|^co_yield|\\\\\\\\Wreflexpr|^reflexpr|\\\\\\\\Wswblk_t|^swblk_t|\\\\\\\\Wvirtual|^virtual|\\\\\\\\Wssize_t|^ssize_t|\\\\\\\\Wconcept|^concept|\\\\\\\\Wmutable|^mutable|\\\\\\\\Wfixpt_t|^fixpt_t|\\\\\\\\Wint16_t|^int16_t|\\\\\\\\Wint32_t|^int32_t|\\\\\\\\Wint64_t|^int64_t|\\\\\\\\Wuint8_t|^uint8_t|\\\\\\\\Wtypedef|^typedef|\\\\\\\\Wdaddr_t|^daddr_t|\\\\\\\\Wcaddr_t|^caddr_t|\\\\\\\\Wqaddr_t|^qaddr_t|\\\\\\\\Wdefault|^default|\\\\\\\\Wnlink_t|^nlink_t|\\\\\\\\Wsegsz_t|^segsz_t|\\\\\\\\Wu_short|^u_short|\\\\\\\\Wwchar_t|^wchar_t|\\\\\\\\Wprivate|^private|\\\\\\\\W__asm__|^__asm__|\\\\\\\\Walignas|^alignas|\\\\\\\\Walignof|^alignof|\\\\\\\\Wmutable|^mutable|\\\\\\\\Wnullptr|^nullptr|\\\\\\\\Wclock_t|^clock_t|\\\\\\\\Wmode_t|^mode_t|\\\\\\\\Wpublic|^public|\\\\\\\\Wsize_t|^size_t|\\\\\\\\Wdouble|^double|\\\\\\\\Wquad_t|^quad_t|\\\\\\\\Wstatic|^static|\\\\\\\\Wtime_t|^time_t|\\\\\\\\Wmodule|^module|\\\\\\\\Wimport|^import|\\\\\\\\Wexport|^export|\\\\\\\\Wextern|^extern|\\\\\\\\Winline|^inline|\\\\\\\\Wxor_eq|^xor_eq|\\\\\\\\Wand_eq|^and_eq|\\\\\\\\Wreturn|^return|\\\\\\\\Wfriend|^friend|\\\\\\\\Wnot_eq|^not_eq|\\\\\\\\Wsigned|^signed|\\\\\\\\Wstruct|^struct|\\\\\\\\Wint8_t|^int8_t|\\\\\\\\Wushort|^ushort|\\\\\\\\Wswitch|^switch|\\\\\\\\Wu_long|^u_long|\\\\\\\\Wtypeid|^typeid|\\\\\\\\Wu_char|^u_char|\\\\\\\\Wsizeof|^sizeof|\\\\\\\\Wbitand|^bitand|\\\\\\\\Wdelete|^delete|\\\\\\\\Wino_t|^ino_t|\\\\\\\\Wkey_t|^key_t|\\\\\\\\Wpid_t|^pid_t|\\\\\\\\Woff_t|^off_t|\\\\\\\\Wuid_t|^uid_t|\\\\\\\\Wshort|^short|\\\\\\\\Wbreak|^break|\\\\\\\\Wcatch|^catch|\\\\\\\\Wcompl|^compl|\\\\\\\\Wwhile|^while|\\\\\\\\Wfalse|^false|\\\\\\\\Wclass|^class|\\\\\\\\Wunion|^union|\\\\\\\\Wconst|^const|\\\\\\\\Wor_eq|^or_eq|\\\\\\\\Wconst|^const|\\\\\\\\Wthrow|^throw|\\\\\\\\Wbitor|^bitor|\\\\\\\\Wu_int|^u_int|\\\\\\\\Wusing|^using|\\\\\\\\Wdiv_t|^div_t|\\\\\\\\Wdev_t|^dev_t|\\\\\\\\Wgid_t|^gid_t|\\\\\\\\Wfloat|^float|\\\\\\\\Wlong|^long|\\\\\\\\Wgoto|^goto|\\\\\\\\Wuint|^uint|\\\\\\\\Wid_t|^id_t|\\\\\\\\Wcase|^case|\\\\\\\\Wauto|^auto|\\\\\\\\Wvoid|^void|\\\\\\\\Wenum|^enum|\\\\\\\\Wtrue|^true|\\\\\\\\Wchar|^char|\\\\\\\\Wid_t|^id_t|\\\\\\\\WNULL|^NULL|\\\\\\\\Wthis|^this|\\\\\\\\Wbool|^bool|\\\\\\\\Welse|^else|\\\\\\\\Wfor|^for|\\\\\\\\Wnew|^new|\\\\\\\\Wnot|^not|\\\\\\\\Wxor|^xor|\\\\\\\\Wand|^and|\\\\\\\\Wasm|^asm|\\\\\\\\Wint|^int|\\\\\\\\Wtry|^try|\\\\\\\\Wdo|^do|\\\\\\\\Wif|^if|\\\\\\\\Wor|^or)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<11>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#scope_resolution_function_call_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.call.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"11\\\":{},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.call.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.call.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"function_definition\\\":{\\\"begin\\\":\\\"(?:(?:^|\\\\\\\\G|(?<=;|\\\\\\\\}))|(?<=>|\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+(?:((?<!\\\\\\\\w)template(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:((?<!\\\\\\\\w)(?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))|(?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*)(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<52>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<52>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<52>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)\\\\\\\\b(?<!\\\\\\\\Wreinterpret_cast|^reinterpret_cast|\\\\\\\\Watomic_noexcept|^atomic_noexcept|\\\\\\\\Wuint_least16_t|^uint_least16_t|\\\\\\\\Wuint_least32_t|^uint_least32_t|\\\\\\\\Wuint_least64_t|^uint_least64_t|\\\\\\\\Watomic_cancel|^atomic_cancel|\\\\\\\\Watomic_commit|^atomic_commit|\\\\\\\\Wuint_least8_t|^uint_least8_t|\\\\\\\\Wuint_fast16_t|^uint_fast16_t|\\\\\\\\Wuint_fast32_t|^uint_fast32_t|\\\\\\\\Wint_least16_t|^int_least16_t|\\\\\\\\Wint_least32_t|^int_least32_t|\\\\\\\\Wint_least64_t|^int_least64_t|\\\\\\\\Wuint_fast64_t|^uint_fast64_t|\\\\\\\\Wthread_local|^thread_local|\\\\\\\\Wint_fast16_t|^int_fast16_t|\\\\\\\\Wint_fast32_t|^int_fast32_t|\\\\\\\\Wint_fast64_t|^int_fast64_t|\\\\\\\\Wsynchronized|^synchronized|\\\\\\\\Wuint_fast8_t|^uint_fast8_t|\\\\\\\\Wdynamic_cast|^dynamic_cast|\\\\\\\\Wint_least8_t|^int_least8_t|\\\\\\\\Wint_fast8_t|^int_fast8_t|\\\\\\\\Wstatic_cast|^static_cast|\\\\\\\\Wsuseconds_t|^suseconds_t|\\\\\\\\Wconst_cast|^const_cast|\\\\\\\\Wuseconds_t|^useconds_t|\\\\\\\\Wconstinit|^constinit|\\\\\\\\Wco_return|^co_return|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconsteval|^consteval|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconsteval|^consteval|\\\\\\\\Wprotected|^protected|\\\\\\\\Wnamespace|^namespace|\\\\\\\\Wblksize_t|^blksize_t|\\\\\\\\Wco_return|^co_return|\\\\\\\\Win_addr_t|^in_addr_t|\\\\\\\\Win_port_t|^in_port_t|\\\\\\\\Wuintptr_t|^uintptr_t|\\\\\\\\Wtemplate|^template|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Wcontinue|^continue|\\\\\\\\Wco_await|^co_await|\\\\\\\\Wco_yield|^co_yield|\\\\\\\\Wunsigned|^unsigned|\\\\\\\\Wu_quad_t|^u_quad_t|\\\\\\\\Wblkcnt_t|^blkcnt_t|\\\\\\\\Wuint16_t|^uint16_t|\\\\\\\\Wuint32_t|^uint32_t|\\\\\\\\Wuint64_t|^uint64_t|\\\\\\\\Wintptr_t|^intptr_t|\\\\\\\\Wintmax_t|^intmax_t|\\\\\\\\Wintmax_t|^intmax_t|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wregister|^register|\\\\\\\\Wrestrict|^restrict|\\\\\\\\Wexplicit|^explicit|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Woperator|^operator|\\\\\\\\Wdecltype|^decltype|\\\\\\\\Wtypename|^typename|\\\\\\\\Wrequires|^requires|\\\\\\\\Wco_await|^co_await|\\\\\\\\Wco_yield|^co_yield|\\\\\\\\Wreflexpr|^reflexpr|\\\\\\\\Wswblk_t|^swblk_t|\\\\\\\\Wvirtual|^virtual|\\\\\\\\Wssize_t|^ssize_t|\\\\\\\\Wconcept|^concept|\\\\\\\\Wmutable|^mutable|\\\\\\\\Wfixpt_t|^fixpt_t|\\\\\\\\Wint16_t|^int16_t|\\\\\\\\Wint32_t|^int32_t|\\\\\\\\Wint64_t|^int64_t|\\\\\\\\Wuint8_t|^uint8_t|\\\\\\\\Wtypedef|^typedef|\\\\\\\\Wdaddr_t|^daddr_t|\\\\\\\\Wcaddr_t|^caddr_t|\\\\\\\\Wqaddr_t|^qaddr_t|\\\\\\\\Wdefault|^default|\\\\\\\\Wnlink_t|^nlink_t|\\\\\\\\Wsegsz_t|^segsz_t|\\\\\\\\Wu_short|^u_short|\\\\\\\\Wwchar_t|^wchar_t|\\\\\\\\Wprivate|^private|\\\\\\\\W__asm__|^__asm__|\\\\\\\\Walignas|^alignas|\\\\\\\\Walignof|^alignof|\\\\\\\\Wmutable|^mutable|\\\\\\\\Wnullptr|^nullptr|\\\\\\\\Wclock_t|^clock_t|\\\\\\\\Wmode_t|^mode_t|\\\\\\\\Wpublic|^public|\\\\\\\\Wsize_t|^size_t|\\\\\\\\Wdouble|^double|\\\\\\\\Wquad_t|^quad_t|\\\\\\\\Wstatic|^static|\\\\\\\\Wtime_t|^time_t|\\\\\\\\Wmodule|^module|\\\\\\\\Wimport|^import|\\\\\\\\Wexport|^export|\\\\\\\\Wextern|^extern|\\\\\\\\Winline|^inline|\\\\\\\\Wxor_eq|^xor_eq|\\\\\\\\Wand_eq|^and_eq|\\\\\\\\Wreturn|^return|\\\\\\\\Wfriend|^friend|\\\\\\\\Wnot_eq|^not_eq|\\\\\\\\Wsigned|^signed|\\\\\\\\Wstruct|^struct|\\\\\\\\Wint8_t|^int8_t|\\\\\\\\Wushort|^ushort|\\\\\\\\Wswitch|^switch|\\\\\\\\Wu_long|^u_long|\\\\\\\\Wtypeid|^typeid|\\\\\\\\Wu_char|^u_char|\\\\\\\\Wsizeof|^sizeof|\\\\\\\\Wbitand|^bitand|\\\\\\\\Wdelete|^delete|\\\\\\\\Wino_t|^ino_t|\\\\\\\\Wkey_t|^key_t|\\\\\\\\Wpid_t|^pid_t|\\\\\\\\Woff_t|^off_t|\\\\\\\\Wuid_t|^uid_t|\\\\\\\\Wshort|^short|\\\\\\\\Wbreak|^break|\\\\\\\\Wcatch|^catch|\\\\\\\\Wcompl|^compl|\\\\\\\\Wwhile|^while|\\\\\\\\Wfalse|^false|\\\\\\\\Wclass|^class|\\\\\\\\Wunion|^union|\\\\\\\\Wconst|^const|\\\\\\\\Wor_eq|^or_eq|\\\\\\\\Wconst|^const|\\\\\\\\Wthrow|^throw|\\\\\\\\Wbitor|^bitor|\\\\\\\\Wu_int|^u_int|\\\\\\\\Wusing|^using|\\\\\\\\Wdiv_t|^div_t|\\\\\\\\Wdev_t|^dev_t|\\\\\\\\Wgid_t|^gid_t|\\\\\\\\Wfloat|^float|\\\\\\\\Wlong|^long|\\\\\\\\Wgoto|^goto|\\\\\\\\Wuint|^uint|\\\\\\\\Wid_t|^id_t|\\\\\\\\Wcase|^case|\\\\\\\\Wauto|^auto|\\\\\\\\Wvoid|^void|\\\\\\\\Wenum|^enum|\\\\\\\\Wtrue|^true|\\\\\\\\Wchar|^char|\\\\\\\\Wid_t|^id_t|\\\\\\\\WNULL|^NULL|\\\\\\\\Wthis|^this|\\\\\\\\Wbool|^bool|\\\\\\\\Welse|^else|\\\\\\\\Wfor|^for|\\\\\\\\Wnew|^new|\\\\\\\\Wnot|^not|\\\\\\\\Wxor|^xor|\\\\\\\\Wand|^and|\\\\\\\\Wasm|^asm|\\\\\\\\Wint|^int|\\\\\\\\Wtry|^try|\\\\\\\\Wdo|^do|\\\\\\\\Wif|^if|\\\\\\\\Wor|^or)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.template.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))|(?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"storage.modifier.$8.cpp\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"23\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"24\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"25\\\":{},\\\"26\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"27\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"28\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"29\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"30\\\":{},\\\"31\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"32\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"33\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"34\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"35\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"36\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"37\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"38\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"39\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"40\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"41\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"42\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"43\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"44\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"45\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"46\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"47\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"48\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"49\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#scope_resolution_function_definition_inner_generated\\\"}]},\\\"50\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp\\\"},\\\"51\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"52\\\":{},\\\"53\\\":{\\\"name\\\":\\\"entity.name.function.definition.cpp\\\"},\\\"54\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"55\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"56\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"57\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#parameter_or_maybe_value\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.function.return-type.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"18\\\":{},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"23\\\":{}},\\\"match\\\":\\\"(?<=^|\\\\\\\\))(?:\\\\\\\\s+)?(->)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<23>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<23>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"function_parameter_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#parameter\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"}]},\\\"function_pointer\\\":{\\\"begin\\\":\\\"(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()(\\\\\\\\*)(?:\\\\\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\\\\\s+)?(?:(\\\\\\\\[)(\\\\\\\\w*)(\\\\\\\\])(?:\\\\\\\\s+)?)*(\\\\\\\\))(?:\\\\\\\\s+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"13\\\":{},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"18\\\":{},\\\"19\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"23\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"24\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"25\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"26\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"27\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"28\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"29\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"30\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"31\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"32\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.function.pointer.cpp\\\"},\\\"33\\\":{\\\"name\\\":\\\"punctuation.definition.function.pointer.dereference.cpp\\\"},\\\"34\\\":{\\\"name\\\":\\\"variable.other.definition.pointer.function.cpp\\\"},\\\"35\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.cpp\\\"},\\\"36\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"37\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.cpp\\\"},\\\"38\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.function.pointer.cpp\\\"},\\\"39\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.function.pointer.cpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=[{=,);>]|\\\\\\\\n)(?!\\\\\\\\()|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.function.pointer.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"}]},\\\"function_pointer_parameter\\\":{\\\"begin\\\":\\\"(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()(\\\\\\\\*)(?:\\\\\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\\\\\s+)?(?:(\\\\\\\\[)(\\\\\\\\w*)(\\\\\\\\])(?:\\\\\\\\s+)?)*(\\\\\\\\))(?:\\\\\\\\s+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"13\\\":{},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"18\\\":{},\\\"19\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"23\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"24\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"25\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"26\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"27\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"28\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"29\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"30\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"31\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"32\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.function.pointer.cpp\\\"},\\\"33\\\":{\\\"name\\\":\\\"punctuation.definition.function.pointer.dereference.cpp\\\"},\\\"34\\\":{\\\"name\\\":\\\"variable.parameter.pointer.function.cpp\\\"},\\\"35\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.cpp\\\"},\\\"36\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"37\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.cpp\\\"},\\\"38\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.function.pointer.cpp\\\"},\\\"39\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.function.pointer.cpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=[{=,);>]|\\\\\\\\n)(?!\\\\\\\\()|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.function.pointer.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"}]},\\\"gcc_attributes\\\":{\\\"begin\\\":\\\"__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.begin.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\\\\\\s*\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.end.cpp\\\"}},\\\"name\\\":\\\"support.other.attribute.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"}},\\\"match\\\":\\\"(using)\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.attribute.cpp\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.accessor.attribute.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=::)\\\",\\\"name\\\":\\\"entity.name.namespace.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.other.attribute.$0.cpp\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"inheritance_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.comma.inheritance.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:protected)|(?:private)|(?:public))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.modifier.access.$0.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)virtual(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.modifier.virtual.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"9\\\":{},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{}},\\\"match\\\":\\\"(?<=protected|virtual|private|public|,|:)(?:\\\\\\\\s+)?(?!(?:(?:(?:protected)|(?:private)|(?:public))|virtual))(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))\\\"}]},\\\"lambdas\\\":{\\\"begin\\\":\\\"(?:(?<=[^\\\\\\\\s]|^)(?<![\\\\\\\\w\\\\\\\\]\\\\\\\\)\\\\\\\\[\\\\\\\\*&\\\\\\\">])|(?<=\\\\\\\\Wreturn|^return))(?:\\\\\\\\s+)?(\\\\\\\\[(?!\\\\\\\\[| *+\\\\\\\"| *+\\\\\\\\d))((?:[^\\\\\\\\[\\\\\\\\]]|((?<!\\\\\\\\[)\\\\\\\\[(?!\\\\\\\\[)(?:[^\\\\\\\\[\\\\\\\\]]*+\\\\\\\\g<3>?)++\\\\\\\\]))*+)(\\\\\\\\](?!((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))[\\\\\\\\[\\\\\\\\];=]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.capture.begin.lambda.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.lambda.capture.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#the_this_keyword\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.capture.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?=\\\\\\\\]|\\\\\\\\z|$)|(,))|(\\\\\\\\=))\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"3\\\":{},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.capture.end.lambda.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?<=[;}])|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.lambda.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.lambda.cpp\\\"}},\\\"name\\\":\\\"meta.function.definition.parameters.lambda.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:constexpr)|(?:consteval)|(?:mutable))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.modifier.lambda.$0.cpp\\\"},{\\\"begin\\\":\\\"->\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.lambda.return-type.cpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"storage.type.return-type.lambda.cpp\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.lambda.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\}|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.lambda.cpp\\\"}},\\\"name\\\":\\\"meta.function.definition.body.lambda.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"line\\\":{\\\"begin\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?line\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.directive.line.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.preprocessor.line.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#preprocessor_number_literal\\\"},{\\\"include\\\":\\\"source.cpp#line_continuation_character\\\"}]},\\\"line_comment\\\":{\\\"begin\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.cpp\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"comment.line.double-slash.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#line_continuation_character\\\"}]},\\\"macro\\\":{\\\"begin\\\":\\\"(^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?define\\\\\\\\b)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.define.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.cpp\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.preprocessor.macro.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.preprocessor.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.function.preprocessor.parameters.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.preprocessor.cpp\\\"}},\\\"match\\\":\\\"(?<=[(,])(?:\\\\\\\\s+)?((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)(?:\\\\\\\\s+)?\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameters.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.vararg-ellipses.variable.parameter.preprocessor.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.preprocessor.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\G(?:\\\\\\\\s+)?(\\\\\\\\()([^\\\\\\\\(]*)(\\\\\\\\))\\\"},{\\\"include\\\":\\\"#macro_context\\\"},{\\\"include\\\":\\\"source.cpp#macro_argument\\\"}]},\\\"macro_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp.embedded.macro\\\"}]},\\\"method_access\\\":{\\\"begin\\\":\\\"(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)this(?!\\\\\\\\w))|((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*|(?<=\\\\\\\\]|\\\\\\\\)))(?:\\\\\\\\s+)?))(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?:\\\\\\\\s+)?(?:(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.)|(?:->\\\\\\\\*|->))(?:\\\\\\\\s+)?)*)(?:\\\\\\\\s+)?(~?(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)(?:\\\\\\\\s+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.language.this.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.object.access.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.cpp\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.language.this.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.object.property.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.cpp\\\"}},\\\"match\\\":\\\"(?<=(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.|->|->\\\\\\\\*))(?:\\\\\\\\s+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)this(?!\\\\\\\\w))|((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*|(?<=\\\\\\\\]|\\\\\\\\)))(?:\\\\\\\\s+)?))(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.language.this.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.object.access.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.cpp\\\"}},\\\"match\\\":\\\"(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)this(?!\\\\\\\\w))|((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*|(?<=\\\\\\\\]|\\\\\\\\)))(?:\\\\\\\\s+)?))(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"},{\\\"include\\\":\\\"source.cpp#member_access\\\"},{\\\"include\\\":\\\"#method_access\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"entity.name.function.member.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.member.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.member.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"ms_attributes\\\":{\\\"begin\\\":\\\"__declspec\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.begin.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.end.cpp\\\"}},\\\"name\\\":\\\"support.other.attribute.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"}},\\\"match\\\":\\\"(using)\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.attribute.cpp\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.accessor.attribute.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=::)\\\",\\\"name\\\":\\\"entity.name.namespace.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.other.attribute.$0.cpp\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"namespace_block\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)namespace(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.namespace.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.other.namespace.definition.cpp storage.type.namespace.definition.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.block.namespace.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.namespace.cpp\\\"}},\\\"name\\\":\\\"meta.head.namespace.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#scope_resolution_namespace_block_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.scope-resolution.namespace.block.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.modifier.inline.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<4>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?:\\\\\\\\s+)?(?:(::)(?:\\\\\\\\s+)?(inline))?\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.namespace.cpp\\\"}},\\\"name\\\":\\\"meta.body.namespace.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.namespace.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"noexcept_operator\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)noexcept(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.noexcept.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.noexcept.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.noexcept\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.noexcept.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"operator_overload\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<55>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<55>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<55>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)(operator)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<55>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)(?:(?:((?:(?:delete\\\\\\\\[\\\\\\\\])|(?:delete)|(?:new\\\\\\\\[\\\\\\\\])|(?:<=>)|(?:<<=)|(?:new)|(?:>>=)|(?:\\\\\\\\->\\\\\\\\*)|(?:\\\\\\\\/=)|(?:%=)|(?:&=)|(?:>=)|(?:\\\\\\\\|=)|(?:\\\\\\\\+\\\\\\\\+)|(?:\\\\\\\\-\\\\\\\\-)|(?:\\\\\\\\(\\\\\\\\))|(?:\\\\\\\\[\\\\\\\\])|(?:\\\\\\\\->)|(?:\\\\\\\\+\\\\\\\\+)|(?:<<)|(?:>>)|(?:\\\\\\\\-\\\\\\\\-)|(?:<=)|(?:\\\\\\\\^=)|(?:==)|(?:!=)|(?:&&)|(?:\\\\\\\\|\\\\\\\\|)|(?:\\\\\\\\+=)|(?:\\\\\\\\-=)|(?:\\\\\\\\*=)|,|\\\\\\\\+|\\\\\\\\-|!|~|\\\\\\\\*|&|\\\\\\\\*|\\\\\\\\/|%|\\\\\\\\+|\\\\\\\\-|<|>|&|\\\\\\\\^|\\\\\\\\||=))|((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:\\\\\\\\[\\\\\\\\])?)))|(\\\\\\\"\\\\\\\")((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\<|\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.special.operator-overload.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"17\\\":{},\\\"18\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"22\\\":{},\\\"23\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"24\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"25\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"26\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"27\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"28\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"29\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"30\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"31\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"32\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"33\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"34\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"35\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"36\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"37\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"38\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"39\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"40\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"41\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"42\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"43\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"44\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"45\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.operator.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.operator.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"46\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"47\\\":{},\\\"48\\\":{\\\"name\\\":\\\"keyword.other.operator.overload.cpp\\\"},\\\"49\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"50\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"51\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"52\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"53\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.operator-overload.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.operator-overload.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"54\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"55\\\":{},\\\"56\\\":{\\\"name\\\":\\\"entity.name.operator.cpp\\\"},\\\"57\\\":{\\\"name\\\":\\\"entity.name.operator.type.cpp\\\"},\\\"58\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"entity.name.operator.type.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"entity.name.operator.type.reference.cpp\\\"}]},\\\"59\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"60\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"61\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"62\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"63\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"64\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"65\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"66\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"67\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"68\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"69\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"70\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"71\\\":{\\\"name\\\":\\\"entity.name.operator.type.array.cpp\\\"},\\\"72\\\":{\\\"name\\\":\\\"entity.name.operator.custom-literal.cpp\\\"},\\\"73\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"74\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"75\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"76\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"77\\\":{\\\"name\\\":\\\"entity.name.operator.custom-literal.cpp\\\"},\\\"78\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"79\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"80\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"81\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.special.operator-overload.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.special.operator-overload.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.special.operator-overload.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.special.operator-overload.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters.special.operator-overload\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.special.operator-overload.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"include\\\":\\\"source.cpp#qualifiers_and_specifiers_post_parameters\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.default.function.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.delete.function.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\=)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(default)|(delete))\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.special.operator-overload.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.special.operator-overload.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.special.operator-overload.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)sizeof(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.sizeof.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.sizeof.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.sizeof\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.sizeof.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)alignof(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.alignof.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.alignof.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.alignof\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.alignof.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)alignas(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.alignas.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.alignas.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.alignas\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.alignas.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typeid(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.typeid.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.typeid.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.typeid\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.typeid.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)noexcept(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.noexcept.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.noexcept.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.noexcept\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.noexcept.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\bsizeof\\\\\\\\.\\\\\\\\.\\\\\\\\.)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.sizeof.variadic.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.sizeof.variadic.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.sizeof.variadic\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.sizeof.variadic.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.cpp\\\"},{\\\"match\\\":\\\"%=|\\\\\\\\+=|-=|\\\\\\\\*=|(?<!\\\\\\\\()\\\\\\\\/=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.cpp\\\"},{\\\"match\\\":\\\"&=|\\\\\\\\^=|<<=|>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.cpp\\\"},{\\\"match\\\":\\\"<<|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.cpp\\\"},{\\\"match\\\":\\\"!=|<=|>=|==|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.cpp\\\"},{\\\"match\\\":\\\"&&|!|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.cpp\\\"},{\\\"match\\\":\\\"&|\\\\\\\\||\\\\\\\\^|~\\\",\\\"name\\\":\\\"keyword.operator.bitwise.cpp\\\"},{\\\"include\\\":\\\"source.cpp#assignment_operator\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|\\\\\\\\/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.cpp\\\"},{\\\"include\\\":\\\"#ternary_operator\\\"}]},\\\"parameter\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\w)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?=\\\\\\\\))|(,))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"}},\\\"name\\\":\\\"meta.parameter.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#function_pointer_parameter\\\"},{\\\"include\\\":\\\"#decltype\\\"},{\\\"include\\\":\\\"source.cpp#vararg_ellipses\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#storage_types\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.specifier.parameter.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.primitive.cpp storage.type.built-in.primitive.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"storage.type.cpp storage.type.built-in.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"entity.name.type.parameter.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?:((?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\s*+(?<!\\\\\\\\w)(?:(?:(?:((?:(?:unsigned)|(?:wchar_t)|(?:double)|(?:signed)|(?:short)|(?:float)|(?:auto)|(?:void)|(?:long)|(?:char)|(?:bool)|(?:int)))|((?:(?:uint_least32_t)|(?:uint_least64_t)|(?:uint_least16_t)|(?:uint_fast64_t)|(?:uint_least8_t)|(?:int_least64_t)|(?:int_least32_t)|(?:int_least16_t)|(?:uint_fast16_t)|(?:uint_fast32_t)|(?:int_least8_t)|(?:int_fast16_t)|(?:int_fast32_t)|(?:int_fast64_t)|(?:uint_fast8_t)|(?:int_fast8_t)|(?:suseconds_t)|(?:useconds_t)|(?:uintmax_t)|(?:uintmax_t)|(?:in_port_t)|(?:uintmax_t)|(?:in_addr_t)|(?:blksize_t)|(?:uintptr_t)|(?:intmax_t)|(?:intptr_t)|(?:blkcnt_t)|(?:intmax_t)|(?:u_quad_t)|(?:uint16_t)|(?:uint32_t)|(?:uint64_t)|(?:ssize_t)|(?:fixpt_t)|(?:qaddr_t)|(?:u_short)|(?:int16_t)|(?:int32_t)|(?:int64_t)|(?:uint8_t)|(?:daddr_t)|(?:caddr_t)|(?:swblk_t)|(?:clock_t)|(?:segsz_t)|(?:nlink_t)|(?:time_t)|(?:u_long)|(?:ushort)|(?:quad_t)|(?:mode_t)|(?:size_t)|(?:u_char)|(?:int8_t)|(?:u_int)|(?:uid_t)|(?:off_t)|(?:pid_t)|(?:gid_t)|(?:dev_t)|(?:div_t)|(?:key_t)|(?:ino_t)|(?:id_t)|(?:id_t)|(?:uint))))|((?:(?:pthread_rwlockattr_t)|(?:pthread_mutexattr_t)|(?:pthread_condattr_t)|(?:pthread_rwlock_t)|(?:pthread_mutex_t)|(?:pthread_cond_t)|(?:pthread_attr_t)|(?:pthread_once_t)|(?:pthread_key_t)|(?:pthread_t))))|([a-zA-Z_]\\\\\\\\w*_t))(?!\\\\\\\\w)|((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\b\\\\\\\\b(?<!\\\\\\\\Wthread_local|^thread_local|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wregister|^register|\\\\\\\\Wrestrict|^restrict|\\\\\\\\Wstatic|^static|\\\\\\\\Wextern|^extern|\\\\\\\\Wconst|^const)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=,|\\\\\\\\)|=)\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_parameter_inner_generated\\\"},{\\\"match\\\":\\\"(?:(?:struct)|(?:class)|(?:union)|(?:enum))\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"begin\\\":\\\"(?<==)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:(?=\\\\\\\\))|(,))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\s|\\\\\\\\(|,|:)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\)|,|\\\\\\\\[|=|\\\\\\\\n)\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.array.type.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\]|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.array.type.cpp\\\"}},\\\"name\\\":\\\"meta.bracket.square.array.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b(?<!\\\\\\\\Wstruct|^struct|\\\\\\\\Wclass|^class|\\\\\\\\Wunion|^union|\\\\\\\\Wenum|^enum)\\\",\\\"name\\\":\\\"entity.name.type.parameter.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*)\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"parameter_or_maybe_value\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\w)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?=\\\\\\\\))|(,))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"}},\\\"name\\\":\\\"meta.parameter.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#function_pointer_parameter\\\"},{\\\"include\\\":\\\"source.cpp#memory_operators\\\"},{\\\"include\\\":\\\"#builtin_storage_type_initilizer\\\"},{\\\"include\\\":\\\"#curly_initializer\\\"},{\\\"include\\\":\\\"#decltype\\\"},{\\\"include\\\":\\\"source.cpp#vararg_ellipses\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#storage_types\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.specifier.parameter.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.primitive.cpp storage.type.built-in.primitive.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"storage.type.cpp storage.type.built-in.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"entity.name.type.parameter.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?:((?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\s*+(?<!\\\\\\\\w)(?:(?:(?:((?:(?:unsigned)|(?:wchar_t)|(?:double)|(?:signed)|(?:short)|(?:float)|(?:auto)|(?:void)|(?:long)|(?:char)|(?:bool)|(?:int)))|((?:(?:uint_least32_t)|(?:uint_least64_t)|(?:uint_least16_t)|(?:uint_fast64_t)|(?:uint_least8_t)|(?:int_least64_t)|(?:int_least32_t)|(?:int_least16_t)|(?:uint_fast16_t)|(?:uint_fast32_t)|(?:int_least8_t)|(?:int_fast16_t)|(?:int_fast32_t)|(?:int_fast64_t)|(?:uint_fast8_t)|(?:int_fast8_t)|(?:suseconds_t)|(?:useconds_t)|(?:uintmax_t)|(?:uintmax_t)|(?:in_port_t)|(?:uintmax_t)|(?:in_addr_t)|(?:blksize_t)|(?:uintptr_t)|(?:intmax_t)|(?:intptr_t)|(?:blkcnt_t)|(?:intmax_t)|(?:u_quad_t)|(?:uint16_t)|(?:uint32_t)|(?:uint64_t)|(?:ssize_t)|(?:fixpt_t)|(?:qaddr_t)|(?:u_short)|(?:int16_t)|(?:int32_t)|(?:int64_t)|(?:uint8_t)|(?:daddr_t)|(?:caddr_t)|(?:swblk_t)|(?:clock_t)|(?:segsz_t)|(?:nlink_t)|(?:time_t)|(?:u_long)|(?:ushort)|(?:quad_t)|(?:mode_t)|(?:size_t)|(?:u_char)|(?:int8_t)|(?:u_int)|(?:uid_t)|(?:off_t)|(?:pid_t)|(?:gid_t)|(?:dev_t)|(?:div_t)|(?:key_t)|(?:ino_t)|(?:id_t)|(?:id_t)|(?:uint))))|((?:(?:pthread_rwlockattr_t)|(?:pthread_mutexattr_t)|(?:pthread_condattr_t)|(?:pthread_rwlock_t)|(?:pthread_mutex_t)|(?:pthread_cond_t)|(?:pthread_attr_t)|(?:pthread_once_t)|(?:pthread_key_t)|(?:pthread_t))))|([a-zA-Z_]\\\\\\\\w*_t))(?!\\\\\\\\w)|((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\b\\\\\\\\b(?<!\\\\\\\\Wthread_local|^thread_local|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wregister|^register|\\\\\\\\Wrestrict|^restrict|\\\\\\\\Wstatic|^static|\\\\\\\\Wextern|^extern|\\\\\\\\Wconst|^const)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=,|\\\\\\\\)|=)\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#function_call\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_parameter_inner_generated\\\"},{\\\"match\\\":\\\"(?:(?:struct)|(?:class)|(?:union)|(?:enum))\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"begin\\\":\\\"(?<==)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:(?=\\\\\\\\))|(,))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\s|\\\\\\\\(|,|:)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=(?:\\\\\\\\)|,|\\\\\\\\[|=|\\\\\\\\/\\\\\\\\/|(?:\\\\\\\\n|$)))\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.array.type.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\]|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.array.type.cpp\\\"}},\\\"name\\\":\\\"meta.bracket.square.array.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b(?<!\\\\\\\\Wstruct|^struct|\\\\\\\\Wclass|^class|\\\\\\\\Wunion|^union|\\\\\\\\Wenum|^enum)\\\",\\\"name\\\":\\\"entity.name.type.parameter.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*)\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.cpp\\\"}},\\\"name\\\":\\\"meta.parens.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#over_qualified_types\\\"},{\\\"match\\\":\\\"(?<!:):(?!:)\\\",\\\"name\\\":\\\"punctuation.separator.colon.range-based.cpp\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"pragma\\\":{\\\"begin\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?pragma\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.directive.pragma.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.preprocessor.pragma.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w\\\\\\\\-$]*\\\",\\\"name\\\":\\\"entity.other.attribute-name.pragma.preprocessor.cpp\\\"},{\\\"include\\\":\\\"#preprocessor_number_literal\\\"},{\\\"include\\\":\\\"source.cpp#line_continuation_character\\\"}]},\\\"preprocessor_conditional_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor_conditional_defined\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"source.cpp#language_constants\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#d9bc4796b0b_preprocessor_number_literal\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"source.cpp#predefined_macros\\\"},{\\\"include\\\":\\\"source.cpp#macro_name\\\"},{\\\"include\\\":\\\"source.cpp#line_continuation_character\\\"}]},\\\"preprocessor_conditional_defined\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)defined(?!\\\\\\\\w))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.defined.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.control.defined.cpp\\\"}},\\\"end\\\":\\\"(?:\\\\\\\\)|(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$)))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.control.defined.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#macro_name\\\"}]},\\\"preprocessor_conditional_parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.cpp\\\"}},\\\"name\\\":\\\"meta.parens.preprocessor.conditional.cpp\\\"},\\\"preprocessor_conditional_range\\\":{\\\"begin\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?((?:(?:ifndef|ifdef)|if))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.$6.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"},\\\"6\\\":{}},\\\"contentName\\\":\\\"meta.preprocessor.conditional\\\",\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor_conditional_context\\\"}]},\\\"preprocessor_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#pragma_mark\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"source.cpp#include\\\"},{\\\"include\\\":\\\"#line\\\"},{\\\"include\\\":\\\"#diagnostic\\\"},{\\\"include\\\":\\\"source.cpp#undef\\\"},{\\\"include\\\":\\\"#preprocessor_conditional_range\\\"},{\\\"include\\\":\\\"source.cpp#single_line_macro\\\"},{\\\"include\\\":\\\"#macro\\\"},{\\\"include\\\":\\\"source.cpp#preprocessor_conditional_standalone\\\"},{\\\"include\\\":\\\"source.cpp#macro_argument\\\"}]},\\\"sizeof_operator\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)sizeof(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.sizeof.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.sizeof.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.sizeof\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.sizeof.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"sizeof_variadic_operator\\\":{\\\"begin\\\":\\\"(\\\\\\\\bsizeof\\\\\\\\.\\\\\\\\.\\\\\\\\.)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.sizeof.variadic.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.sizeof.variadic.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.sizeof.variadic\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.sizeof.variadic.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"square_brackets\\\":{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\\\\\]\\\\\\\\)]))?(\\\\\\\\[)(?!\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square\\\"}},\\\"end\\\":\\\"\\\\\\\\]|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square\\\"}},\\\"name\\\":\\\"meta.bracket.square.access\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"static_assert\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)static_assert|_Static_assert(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.static_assert.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.static_assert.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.static_assert.cpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)(?:\\\\\\\\s+)?(?=(?:L|u8|u|U(?:\\\\\\\\s+)?\\\\\\\\\\\\\\\")?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.static_assert.message.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_context\\\"}]},{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"storage_types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#storage_specifiers\\\"},{\\\"include\\\":\\\"source.cpp#inline_builtin_storage_type\\\"},{\\\"include\\\":\\\"#decltype\\\"},{\\\"include\\\":\\\"source.cpp#typename\\\"}]},\\\"string_context\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((?:u|u8|U|L)?)\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"}},\\\"end\\\":\\\"(\\\\\\\")(?:((?:[a-zA-Z]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)|(_(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*))?|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.reserved.string.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.string.cpp\\\"}},\\\"name\\\":\\\"string.quoted.double.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8})\\\",\\\"name\\\":\\\"constant.character.escape.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\"?\\\\\\\\\\\\\\\\abfnrtv]\\\",\\\"name\\\":\\\"constant.character.escape.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-7]{1,3}\\\",\\\"name\\\":\\\"constant.character.escape.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.unknown-escape.cpp\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\\\\\\\\\x0*[0-9a-fA-F]{2}(?![0-9a-fA-F]))|((?:\\\\\\\\\\\\\\\\x[0-9a-fA-F]*|\\\\\\\\\\\\\\\\x)))\\\"},{\\\"include\\\":\\\"source.cpp#string_escapes_context_c\\\"}]},{\\\"begin\\\":\\\"(?<![0-9A-Fa-f])((?:u|u8|U|L)?)'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"}},\\\"end\\\":\\\"(')(?:((?:[a-zA-Z]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)|(_(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*))?|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.reserved.character.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.character.cpp\\\"}},\\\"name\\\":\\\"string.quoted.single.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.unknown-escape.cpp\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\\\\\\\\\x0*[0-9a-fA-F]{2}(?![0-9a-fA-F]))|((?:\\\\\\\\\\\\\\\\x[0-9a-fA-F]*|\\\\\\\\\\\\\\\\x)))\\\"},{\\\"include\\\":\\\"source.cpp#string_escapes_context_c\\\"},{\\\"include\\\":\\\"source.cpp#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"((?:[uUL]8?)?R)\\\\\\\\\\\\\\\"(?:(?:_r|re)|regex)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)(?:(?:_r|re)|regex)\\\\\\\\\\\\\\\"|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"}},\\\"name\\\":\\\"string.quoted.double.raw.regex.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.regexp.python\\\"}]},{\\\"begin\\\":\\\"((?:[uUL]8?)?R)\\\\\\\\\\\\\\\"(?:glsl|GLSL)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)(?:glsl|GLSL)\\\\\\\\\\\\\\\"|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"}},\\\"name\\\":\\\"meta.string.quoted.double.raw.glsl.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.glsl\\\"}]},{\\\"begin\\\":\\\"((?:[uUL]8?)?R)\\\\\\\\\\\\\\\"(?:[pP]?(?:sql|SQL)|d[dm]l)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)(?:[pP]?(?:sql|SQL)|d[dm]l)\\\\\\\\\\\\\\\"|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"}},\\\"name\\\":\\\"meta.string.quoted.double.raw.sql.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sql\\\"}]},{\\\"begin\\\":\\\"((?:u|u8|U|L)?R)\\\\\\\"(?:([^ ()\\\\\\\\\\\\\\\\\\\\\\\\t]{0,16})|([^ ()\\\\\\\\\\\\\\\\\\\\\\\\t]*))\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.delimiter-too-long\\\"}},\\\"end\\\":\\\"(\\\\\\\\)\\\\\\\\2(\\\\\\\\3)\\\\\\\")(?:((?:[a-zA-Z]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)|(_(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*))?|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.delimiter-too-long\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.reserved.string.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.string.cpp\\\"}},\\\"name\\\":\\\"string.quoted.double.raw\\\"}]},\\\"struct_block\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)struct(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.struct.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.struct.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.struct.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.struct.cpp\\\"}},\\\"name\\\":\\\"meta.head.struct.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.struct.cpp\\\"}},\\\"name\\\":\\\"meta.body.struct.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.struct.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"switch_conditional_parentheses\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.conditional.switch.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.conditional.switch.cpp\\\"}},\\\"name\\\":\\\"meta.conditional.switch.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"switch_statement\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)switch(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.switch.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.switch.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.block.switch.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.switch.cpp\\\"}},\\\"name\\\":\\\"meta.head.switch.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#switch_conditional_parentheses\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.switch.cpp\\\"}},\\\"name\\\":\\\"meta.body.switch.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#default_statement\\\"},{\\\"include\\\":\\\"#case_statement\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.switch.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"template_call_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"source.cpp#language_constants\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_template_call_inner_generated\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#comma_in_template_argument\\\"},{\\\"include\\\":\\\"source.cpp#qualified_type\\\"}]},\\\"template_call_range\\\":{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},\\\"template_definition\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(template)(?:\\\\\\\\s+)?(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.template.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.definition.cpp\\\"}},\\\"end\\\":\\\">|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.definition.cpp\\\"}},\\\"name\\\":\\\"meta.template.definition.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\w)(?:\\\\\\\\s+)?<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"include\\\":\\\"#template_definition_context\\\"}]},\\\"template_definition_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#scope_resolution_template_definition_inner_generated\\\"},{\\\"include\\\":\\\"source.cpp#template_definition_argument\\\"},{\\\"include\\\":\\\"source.cpp#template_argument_defaulted\\\"},{\\\"include\\\":\\\"source.cpp#template_call_innards\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"ternary_operator\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.cpp\\\"}},\\\"end\\\":\\\":|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"source.cpp#member_access\\\"},{\\\"include\\\":\\\"source.cpp#predefined_macros\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"source.cpp#memory_operators\\\"},{\\\"include\\\":\\\"source.cpp#wordlike_operators\\\"},{\\\"include\\\":\\\"source.cpp#type_casting_operators\\\"},{\\\"include\\\":\\\"source.cpp#control_flow_keywords\\\"},{\\\"include\\\":\\\"source.cpp#exception_keywords\\\"},{\\\"include\\\":\\\"source.cpp#the_this_keyword\\\"},{\\\"include\\\":\\\"source.cpp#language_constants\\\"},{\\\"include\\\":\\\"#builtin_storage_type_initilizer\\\"},{\\\"include\\\":\\\"source.cpp#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"source.cpp#functional_specifiers_pre_parameters\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#lambdas\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#function_call\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_inner_generated\\\"},{\\\"include\\\":\\\"#square_brackets\\\"},{\\\"include\\\":\\\"source.cpp#semicolon\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"}]},\\\"typedef_class\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typedef(?!\\\\\\\\w))(?:\\\\\\\\s+)?(?=(?<!\\\\\\\\w)class(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.typedef.cpp\\\"}},\\\"end\\\":\\\"(?<=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)class(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.class.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.class.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.class.cpp\\\"}},\\\"name\\\":\\\"meta.head.class.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.class.cpp\\\"}},\\\"name\\\":\\\"meta.body.class.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.class.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"11\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"entity.name.type.alias.cpp\\\"}},\\\"match\\\":\\\"(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\"}]}]}]},\\\"typedef_function_pointer\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typedef(?!\\\\\\\\w))(?:\\\\\\\\s+)?(?=.*\\\\\\\\(\\\\\\\\*\\\\\\\\s*(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\s*\\\\\\\\))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.typedef.cpp\\\"}},\\\"end\\\":\\\"(?<=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()(\\\\\\\\*)(?:\\\\\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\\\\\s+)?(?:(\\\\\\\\[)(\\\\\\\\w*)(\\\\\\\\])(?:\\\\\\\\s+)?)*(\\\\\\\\))(?:\\\\\\\\s+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"source.cpp#comma\\\"},{\\\"include\\\":\\\"source.cpp#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"13\\\":{},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"18\\\":{},\\\"19\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"23\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"24\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"25\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"26\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"27\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"28\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"29\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"30\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"31\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"32\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.function.pointer.cpp\\\"},\\\"33\\\":{\\\"name\\\":\\\"punctuation.definition.function.pointer.dereference.cpp\\\"},\\\"34\\\":{\\\"name\\\":\\\"entity.name.type.alias.cpp entity.name.type.pointer.function.cpp\\\"},\\\"35\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.cpp\\\"},\\\"36\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"37\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.cpp\\\"},\\\"38\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.function.pointer.cpp\\\"},\\\"39\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.function.pointer.cpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=[{=,);>]|\\\\\\\\n)(?!\\\\\\\\()|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.function.pointer.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"}]}]},\\\"typedef_struct\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typedef(?!\\\\\\\\w))(?:\\\\\\\\s+)?(?=(?<!\\\\\\\\w)struct(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.typedef.cpp\\\"}},\\\"end\\\":\\\"(?<=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)struct(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.struct.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.struct.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.struct.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.struct.cpp\\\"}},\\\"name\\\":\\\"meta.head.struct.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.struct.cpp\\\"}},\\\"name\\\":\\\"meta.body.struct.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.struct.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"11\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"entity.name.type.alias.cpp\\\"}},\\\"match\\\":\\\"(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\"}]}]}]},\\\"typedef_union\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typedef(?!\\\\\\\\w))(?:\\\\\\\\s+)?(?=(?<!\\\\\\\\w)union(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.typedef.cpp\\\"}},\\\"end\\\":\\\"(?<=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)union(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.union.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.union.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.union.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.union.cpp\\\"}},\\\"name\\\":\\\"meta.head.union.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.union.cpp\\\"}},\\\"name\\\":\\\"meta.body.union.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.union.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"11\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"entity.name.type.alias.cpp\\\"}},\\\"match\\\":\\\"(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\"}]}]}]},\\\"typeid_operator\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typeid(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.typeid.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.typeid.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.typeid\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.typeid.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"union_block\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)union(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.union.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"source.cpp#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.union.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.union.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.union.cpp\\\"}},\\\"name\\\":\\\"meta.head.union.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.union.cpp\\\"}},\\\"name\\\":\\\"meta.body.union.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.union.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"using_namespace\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(using)\\\\\\\\s+(namespace)\\\\\\\\s+((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<6>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?=;|\\\\\\\\n)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.namespace.directive.cpp storage.type.namespace.directive.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#scope_resolution_namespace_using_inner_generated\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"6\\\":{},\\\"7\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"}},\\\"end\\\":\\\";|(?=(?<!\\\\\\\\\\\\\\\\)\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.using-namespace.cpp\\\"}},\\\"scopeName\\\":\\\"source.cpp.embedded.macro\\\",\\\"embeddedLangs\\\":[\\\"regexp\\\",\\\"glsl\\\",\\\"sql\\\"]}\"))\n\nexport default [\n...regexp,\n...glsl,\n...sql,\nlang\n]\n", "import cpp_macro from './cpp-macro.mjs'\nimport regexp from './regexp.mjs'\nimport glsl from './glsl.mjs'\nimport sql from './sql.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"C++\\\",\\\"name\\\":\\\"cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#constructor_root\\\"},{\\\"include\\\":\\\"#destructor_root\\\"},{\\\"include\\\":\\\"#function_definition\\\"},{\\\"include\\\":\\\"#operator_overload\\\"},{\\\"include\\\":\\\"#using_namespace\\\"},{\\\"include\\\":\\\"#type_alias\\\"},{\\\"include\\\":\\\"#using_name\\\"},{\\\"include\\\":\\\"#namespace_alias\\\"},{\\\"include\\\":\\\"#namespace_block\\\"},{\\\"include\\\":\\\"#extern_block\\\"},{\\\"include\\\":\\\"#typedef_class\\\"},{\\\"include\\\":\\\"#typedef_struct\\\"},{\\\"include\\\":\\\"#typedef_union\\\"},{\\\"include\\\":\\\"#misc_keywords\\\"},{\\\"include\\\":\\\"#standard_declares\\\"},{\\\"include\\\":\\\"#class_block\\\"},{\\\"include\\\":\\\"#struct_block\\\"},{\\\"include\\\":\\\"#union_block\\\"},{\\\"include\\\":\\\"#enum_block\\\"},{\\\"include\\\":\\\"#template_isolated_definition\\\"},{\\\"include\\\":\\\"#template_definition\\\"},{\\\"include\\\":\\\"#template_explicit_instantiation\\\"},{\\\"include\\\":\\\"#access_control_keywords\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#assembly\\\"},{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}],\\\"repository\\\":{\\\"access_control_keywords\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"storage.type.modifier.access.control.$4.cpp\\\"},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.colon.access.control.cpp\\\"}},\\\"match\\\":\\\"((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(((?:(?:protected)|(?:private)|(?:public)))(?:\\\\\\\\s+)?(:))\\\"},\\\"alignas_attribute\\\":{\\\"begin\\\":\\\"alignas\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.begin.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.end.cpp\\\"}},\\\"name\\\":\\\"support.other.attribute.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"}},\\\"match\\\":\\\"(using)\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.attribute.cpp\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.accessor.attribute.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=::)\\\",\\\"name\\\":\\\"entity.name.namespace.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.other.attribute.$0.cpp\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"alignas_operator\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)alignas(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.alignas.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.alignas.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.alignas\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.alignas.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"alignof_operator\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)alignof(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.alignof.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.alignof.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.alignof\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.alignof.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"assembly\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:__asm__|asm)\\\\\\\\b)(?:\\\\\\\\s+)?((?:volatile)?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.asm.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.cpp\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.asm.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\n|$)\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.assembly.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.assembly.cpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(R?)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.assembly.cpp\\\"}},\\\"contentName\\\":\\\"meta.embedded.assembly\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.assembly.cpp\\\"}},\\\"name\\\":\\\"string.quoted.double.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.asm\\\"},{\\\"include\\\":\\\"source.x86\\\"},{\\\"include\\\":\\\"source.x86_64\\\"},{\\\"include\\\":\\\"source.arm\\\"},{\\\"include\\\":\\\"#backslash_escapes\\\"},{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.assembly.inner.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.assembly.inner.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.asm.label.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\[((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\]\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.colon.assembly.cpp\\\"},{\\\"include\\\":\\\"#comments\\\"}]}]},\\\"assignment_operator\\\":{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"attributes_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#cpp_attributes\\\"},{\\\"include\\\":\\\"#gcc_attributes\\\"},{\\\"include\\\":\\\"#ms_attributes\\\"},{\\\"include\\\":\\\"#alignas_attribute\\\"}]},\\\"backslash_escapes\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[abefnprtv'\\\\\\\"?]|[0-3][0-7]{,2}|[4-7]\\\\\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},\\\"block\\\":{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.cpp\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.cpp\\\"}},\\\"name\\\":\\\"meta.block.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},\\\"block_comment\\\":{\\\"begin\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.cpp\\\"}},\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"builtin_storage_type_initilizer\\\":{\\\"begin\\\":\\\"\\\\\\\\s*+(?<!\\\\\\\\w)(?:(?:(?:((?:(?:unsigned)|(?:wchar_t)|(?:double)|(?:signed)|(?:short)|(?:float)|(?:auto)|(?:void)|(?:long)|(?:char)|(?:bool)|(?:int)))|((?:(?:uint_least32_t)|(?:uint_least64_t)|(?:uint_least16_t)|(?:uint_fast64_t)|(?:uint_least8_t)|(?:int_least64_t)|(?:int_least32_t)|(?:int_least16_t)|(?:uint_fast16_t)|(?:uint_fast32_t)|(?:int_least8_t)|(?:int_fast16_t)|(?:int_fast32_t)|(?:int_fast64_t)|(?:uint_fast8_t)|(?:int_fast8_t)|(?:suseconds_t)|(?:useconds_t)|(?:uintmax_t)|(?:uintmax_t)|(?:in_port_t)|(?:uintmax_t)|(?:in_addr_t)|(?:blksize_t)|(?:uintptr_t)|(?:intmax_t)|(?:intptr_t)|(?:blkcnt_t)|(?:intmax_t)|(?:u_quad_t)|(?:uint16_t)|(?:uint32_t)|(?:uint64_t)|(?:ssize_t)|(?:fixpt_t)|(?:qaddr_t)|(?:u_short)|(?:int16_t)|(?:int32_t)|(?:int64_t)|(?:uint8_t)|(?:daddr_t)|(?:caddr_t)|(?:swblk_t)|(?:clock_t)|(?:segsz_t)|(?:nlink_t)|(?:time_t)|(?:u_long)|(?:ushort)|(?:quad_t)|(?:mode_t)|(?:size_t)|(?:u_char)|(?:int8_t)|(?:u_int)|(?:uid_t)|(?:off_t)|(?:pid_t)|(?:gid_t)|(?:dev_t)|(?:div_t)|(?:key_t)|(?:ino_t)|(?:id_t)|(?:id_t)|(?:uint))))|((?:(?:pthread_rwlockattr_t)|(?:pthread_mutexattr_t)|(?:pthread_condattr_t)|(?:pthread_rwlock_t)|(?:pthread_mutex_t)|(?:pthread_cond_t)|(?:pthread_attr_t)|(?:pthread_once_t)|(?:pthread_key_t)|(?:pthread_t))))|([a-zA-Z_]\\\\\\\\w*_t))(?!\\\\\\\\w)\\\\\\\\s*+(?<!\\\\\\\\w)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.primitive.cpp storage.type.built-in.primitive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.cpp storage.type.built-in.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.initializer.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.initializer.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"case_statement\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)case(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.case.cpp\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.colon.case.cpp\\\"}},\\\"name\\\":\\\"meta.conditional.case.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"class_block\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)class(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.class.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.class.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.class.cpp\\\"}},\\\"name\\\":\\\"meta.head.class.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.class.cpp\\\"}},\\\"name\\\":\\\"meta.body.class.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.class.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"class_declare\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.declare.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"13\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"((?<!\\\\\\\\w)class(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\b(?!override\\\\\\\\W|override\\\\\\\\$|final\\\\\\\\W|final\\\\\\\\$)((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\S)(?![:{a-zA-Z])\\\"},\\\"comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"},\\\"comma_in_template_argument\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.comma.template.argument.cpp\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(?:\\\\\\\\s+)?+(\\\\\\\\/\\\\\\\\/[!\\\\\\\\/]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.documentation.cpp\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\n)(?<!\\\\\\\\\\\\\\\\\\\\\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"comment.line.double-slash.documentation.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:callergraph|callgraph|else|endif|f\\\\\\\\$|f\\\\\\\\[|f\\\\\\\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\\\\\\\$|\\\\\\\\#|<|>|%|\\\\\\\"|\\\\\\\\.|=|::|\\\\\\\\||\\\\\\\\-\\\\\\\\-|\\\\\\\\-\\\\\\\\-\\\\\\\\-)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|em|e))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]b)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.inline.raw.string.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:c|p))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"in|out\\\",\\\"name\\\":\\\"keyword.other.parameter.direction.$0.cpp\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"variable.parameter.cpp\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.cpp\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]param)(?:\\\\\\\\s*\\\\\\\\[((?:,?(?:\\\\\\\\s+)?(?:in|out)(?:\\\\\\\\s+)?)+)\\\\\\\\])?(\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?:(,)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))*)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|throws|todo|tparam|version|warning|xrefitem)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|startuml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z]+:|@[a-z_]+:)\\\",\\\"name\\\":\\\"storage.type.class.gtkdoc.cpp\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.documentation.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:callergraph|callgraph|else|endif|f\\\\\\\\$|f\\\\\\\\[|f\\\\\\\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\\\\\\\$|\\\\\\\\#|<|>|%|\\\\\\\"|\\\\\\\\.|=|::|\\\\\\\\||\\\\\\\\-\\\\\\\\-|\\\\\\\\-\\\\\\\\-\\\\\\\\-)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|em|e))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]b)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.inline.raw.string.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:c|p))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"in|out\\\",\\\"name\\\":\\\"keyword.other.parameter.direction.$0.cpp\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"variable.parameter.cpp\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.cpp\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]param)(?:\\\\\\\\s*\\\\\\\\[((?:,?(?:\\\\\\\\s+)?(?:in|out)(?:\\\\\\\\s+)?)+)\\\\\\\\])?(\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?:(,)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))*)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|throws|todo|tparam|version|warning|xrefitem)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|startuml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z]+:|@[a-z_]+:)\\\",\\\"name\\\":\\\"storage.type.class.gtkdoc.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.documentation.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\/\\\\\\\\*[!*]+(?=\\\\\\\\s))(.+)([!*]*\\\\\\\\*\\\\\\\\/)\\\",\\\"name\\\":\\\"comment.block.documentation.cpp\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\s+)?+\\\\\\\\/\\\\\\\\*[!*]+(?:(?:\\\\\\\\n|$)|(?=\\\\\\\\s))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.documentation.cpp\\\"}},\\\"end\\\":\\\"[!*]*\\\\\\\\*\\\\\\\\/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.documentation.cpp\\\"}},\\\"name\\\":\\\"comment.block.documentation.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:callergraph|callgraph|else|endif|f\\\\\\\\$|f\\\\\\\\[|f\\\\\\\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\\\\\\\$|\\\\\\\\#|<|>|%|\\\\\\\"|\\\\\\\\.|=|::|\\\\\\\\||\\\\\\\\-\\\\\\\\-|\\\\\\\\-\\\\\\\\-\\\\\\\\-)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|em|e))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.doxygen.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]b)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.inline.raw.string.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:c|p))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"in|out\\\",\\\"name\\\":\\\"keyword.other.parameter.direction.$0.cpp\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"variable.parameter.cpp\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.cpp\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]param)(?:\\\\\\\\s*\\\\\\\\[((?:,?(?:\\\\\\\\s+)?(?:in|out)(?:\\\\\\\\s+)?)+)\\\\\\\\])?(\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?:(,)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))*)\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|throws|todo|tparam|version|warning|xrefitem)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|startuml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\\\\\\\b(?:\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"name\\\":\\\"storage.type.class.doxygen.cpp\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b[A-Z]+:|@[a-z_]+:)\\\",\\\"name\\\":\\\"storage.type.class.gtkdoc.cpp\\\"}]},{\\\"include\\\":\\\"#emacs_file_banner\\\"},{\\\"include\\\":\\\"#block_comment\\\"},{\\\"include\\\":\\\"#line_comment\\\"},{\\\"include\\\":\\\"#invalid_comment_end\\\"}]},\\\"constructor_inline\\\":{\\\"begin\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*)((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.special.constructor.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#functional_specifiers_pre_parameters\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"entity.name.function.constructor.cpp entity.name.function.definition.special.constructor.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.special.constructor.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.default.function.cpp keyword.other.default.constructor.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\=)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(default)|(delete))\\\"},{\\\"include\\\":\\\"#functional_specifiers_pre_parameters\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.initializers.cpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.initializer.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"3\\\":{},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp\\\"}},\\\"contentName\\\":\\\"meta.parameter.initialization\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.initializer.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp\\\"}},\\\"contentName\\\":\\\"meta.parameter.initialization\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.special.constructor.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters.special.constructor\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.special.constructor.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"include\\\":\\\"#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.special.constructor.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"constructor_root\\\":{\\\"begin\\\":\\\"\\\\\\\\s*+((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<8>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)(((?>(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))::((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\10)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.special.constructor.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.constructor.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.constructor.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"8\\\":{},\\\"9\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?=:)\\\",\\\"name\\\":\\\"entity.name.type.constructor.cpp\\\"},{\\\"match\\\":\\\"(?<=:)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.function.definition.special.constructor.cpp\\\"},{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.constructor.cpp\\\"}]},\\\"10\\\":{},\\\"11\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.special.constructor.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.default.function.cpp keyword.other.default.constructor.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\=)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(default)|(delete))\\\"},{\\\"include\\\":\\\"#functional_specifiers_pre_parameters\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.initializers.cpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.initializer.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"3\\\":{},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp\\\"}},\\\"contentName\\\":\\\"meta.parameter.initialization\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.initializer.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.call.initializer.cpp\\\"}},\\\"contentName\\\":\\\"meta.parameter.initialization\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.call.initializer.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.special.constructor.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters.special.constructor\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.special.constructor.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"include\\\":\\\"#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.special.constructor.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.special.constructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"control_flow_keywords\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.$3.cpp\\\"}},\\\"match\\\":\\\"((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:(?:co_return)|(?:co_yield)|(?:co_await)|(?:continue)|(?:default)|(?:switch)|(?:return)|(?:catch)|(?:while)|(?:throw)|(?:break)|(?:case)|(?:goto)|(?:else)|(?:for)|(?:try)|(?:if)|(?:do))(?!\\\\\\\\w))\\\"},\\\"cpp_attributes\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.begin.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.end.cpp\\\"}},\\\"name\\\":\\\"support.other.attribute.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"}},\\\"match\\\":\\\"(using)\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.attribute.cpp\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.accessor.attribute.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=::)\\\",\\\"name\\\":\\\"entity.name.namespace.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.other.attribute.$0.cpp\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"curly_initializer\\\":{\\\"begin\\\":\\\"(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"13\\\":{},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"18\\\":{},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"23\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.curly.initializer.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.curly.initializer.cpp\\\"}},\\\"name\\\":\\\"meta.initialization.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"},{\\\"include\\\":\\\"#comma\\\"}]},\\\"d9bc4796b0b_module_import\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.directive.import.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.quoted.other.lt-gt.include.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"string.quoted.double.include.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"},\\\"13\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"15\\\":{\\\"name\\\":\\\"entity.name.other.preprocessor.macro.include.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"18\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"19\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"21\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"22\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"match\\\":\\\"^((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((import))(?:\\\\\\\\s+)?(?:(?:(?:((<)[^>]*(>?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:\\\\\\\\n|$)|(?=\\\\\\\\/\\\\\\\\/)))|((\\\\\\\\\\\\\\\")[^\\\\\\\\\\\\\\\"]*(\\\\\\\\\\\\\\\"?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:\\\\\\\\n|$)|(?=\\\\\\\\/\\\\\\\\/))))|(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?:\\\\\\\\.(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)*((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:\\\\\\\\n|$)|(?=(?:\\\\\\\\/\\\\\\\\/|;)))))|((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:\\\\\\\\n|$)|(?=(?:\\\\\\\\/\\\\\\\\/|;))))(?:\\\\\\\\s+)?(;?)\\\",\\\"name\\\":\\\"meta.preprocessor.import.cpp\\\"},\\\"d9bc4796b0b_preprocessor_number_literal\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=.)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"$\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"11\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9a-fA-F])\\\\\\\\.|\\\\\\\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([pP])(\\\\\\\\+?)(\\\\\\\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.decimal.point.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\G(?=[0-9.])(?!0[xXbB])([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9])\\\\\\\\.|\\\\\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([eE])(\\\\\\\\+?)(\\\\\\\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.binary.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.binary.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[bB])([01](?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.octal.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.octal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0)((?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))+)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([pP])(\\\\\\\\+?)(\\\\\\\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\G(?=[0-9.])(?!0[xXbB])([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([eE])(\\\\\\\\+?)(\\\\\\\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?$\\\"},{\\\"match\\\":\\\"(?:(?:[0-9a-zA-Z_\\\\\\\\.]|')|(?<=[eEpP])[+-])+\\\",\\\"name\\\":\\\"invalid.illegal.constant.numeric.cpp\\\"}]}]}},\\\"match\\\":\\\"(?<!\\\\\\\\w)\\\\\\\\.?\\\\\\\\d(?:(?:[0-9a-zA-Z_\\\\\\\\.]|')|(?<=[eEpP])[+-])*\\\"},\\\"decltype\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)decltype(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.other.decltype.cpp storage.type.decltype.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.decltype.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.decltype\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.decltype.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"decltype_specifier\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)decltype(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.other.decltype.cpp storage.type.decltype.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.decltype.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.decltype\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.decltype.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"default_statement\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)default(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.default.cpp\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.colon.case.default.cpp\\\"}},\\\"name\\\":\\\"meta.conditional.case.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"destructor_inline\\\":{\\\"begin\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*)(~(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.special.member.destructor.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#functional_specifiers_pre_parameters\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"entity.name.function.destructor.cpp entity.name.function.definition.special.member.destructor.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.special.member.destructor.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.default.function.cpp keyword.other.default.constructor.cpp keyword.other.default.destructor.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp keyword.other.delete.destructor.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\=)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(default)|(delete))\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.special.member.destructor.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters.special.member.destructor\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.special.member.destructor.cpp\\\"}},\\\"patterns\\\":[]},{\\\"include\\\":\\\"#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.special.member.destructor.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"destructor_root\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)(((?>(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))::((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))~(?:\\\\\\\\14)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.special.member.destructor.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.destructor.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.destructor.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{},\\\"13\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?=:)\\\",\\\"name\\\":\\\"entity.name.type.destructor.cpp\\\"},{\\\"match\\\":\\\"(?<=:)~(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.function.definition.special.member.destructor.cpp\\\"},{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.destructor.cpp\\\"}]},\\\"14\\\":{},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"23\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"24\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"25\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"26\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.special.member.destructor.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.default.function.cpp keyword.other.default.constructor.cpp keyword.other.default.destructor.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.delete.function.cpp keyword.other.delete.constructor.cpp keyword.other.delete.destructor.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\=)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(default)|(delete))\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.special.member.destructor.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters.special.member.destructor\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.special.member.destructor.cpp\\\"}},\\\"patterns\\\":[]},{\\\"include\\\":\\\"#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.special.member.destructor.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.special.member.destructor.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"diagnostic\\\":{\\\"begin\\\":\\\"(^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?((?:error|warning)))\\\\\\\\b(?:\\\\\\\\s+)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.diagnostic.$7.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"},\\\"7\\\":{}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.preprocessor.diagnostic.$reference(directive).cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"}},\\\"end\\\":\\\"(?:(\\\\\\\")|(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"}},\\\"name\\\":\\\"string.quoted.double.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"}},\\\"end\\\":\\\"(?:(')|(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"}},\\\"name\\\":\\\"string.quoted.single.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"[^'\\\\\\\"]\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"string.unquoted.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"include\\\":\\\"#comments\\\"}]}]},\\\"emacs_file_banner\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.toc-list.banner.double-slash.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.banner.character.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.toc-list.banner.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.line.banner.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.comment.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.banner.character.cpp\\\"}},\\\"match\\\":\\\"(?:(^(?:\\\\\\\\s+)?((\\\\\\\\/\\\\\\\\/)(?:\\\\\\\\s+)?((?:[#;\\\\\\\\/=*C~]+)++(?![#;\\\\\\\\/=*C~]))(?:\\\\\\\\s+)?.+(?:\\\\\\\\s+)?(?:\\\\\\\\4)(?:\\\\\\\\s+)?(?:\\\\\\\\n|$)))|(^(?:\\\\\\\\s+)?((\\\\\\\\/\\\\\\\\*)(?:\\\\\\\\s+)?((?:[#;\\\\\\\\/=*C~]+)++(?![#;\\\\\\\\/=*C~]))(?:\\\\\\\\s+)?.+(?:\\\\\\\\s+)?(?:\\\\\\\\8)(?:\\\\\\\\s+)?\\\\\\\\*\\\\\\\\/)))\\\"},\\\"empty_square_brackets\\\":{\\\"match\\\":\\\"(?<!delete)\\\\\\\\[(?:\\\\\\\\s+)?\\\\\\\\]\\\",\\\"name\\\":\\\"storage.modifier.array.bracket.square\\\"},\\\"enum_block\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)enum(?!\\\\\\\\w))(?:\\\\\\\\s+(class|struct))?(?:(?:\\\\\\\\s+|((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\))))|(?={))(?:\\\\\\\\s+)?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))?)(?:(?:\\\\\\\\s+)?(:)(?:\\\\\\\\s+)?(?:((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::))?(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.enum.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.enum.enum-key.$2.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.enum.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.colon.type-specifier.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"9\\\":{},\\\"10\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"storage.type.integral.$17.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.enum.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.enum.cpp\\\"}},\\\"name\\\":\\\"meta.head.enum.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.enum.cpp\\\"}},\\\"name\\\":\\\"meta.body.enum.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#enumerator_list\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#semicolon\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.enum.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"enum_declare\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum.declare.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.enum.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"13\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"((?<!\\\\\\\\w)enum(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\b(?!override\\\\\\\\W|override\\\\\\\\$|final\\\\\\\\W|final\\\\\\\\$)((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\S)(?![:{a-zA-Z])\\\"},\\\"enumerator_list\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.enummember.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#semicolon\\\"}]}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?:\\\\\\\\s+)?((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?(?:\\\\\\\\s+)?(?:(\\\\\\\\=)(?:\\\\\\\\s+)?(.+?)(?:\\\\\\\\s+)?)?(?:(?:((?:[,;](?!')|\\\\\\\\n))|(?=\\\\\\\\}[^']))|(?=(?:\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)))\\\",\\\"name\\\":\\\"meta.enum.definition.cpp\\\"},\\\"evaluation_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#predefined_macros\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#memory_operators\\\"},{\\\"include\\\":\\\"#wordlike_operators\\\"},{\\\"include\\\":\\\"#type_casting_operators\\\"},{\\\"include\\\":\\\"#control_flow_keywords\\\"},{\\\"include\\\":\\\"#exception_keywords\\\"},{\\\"include\\\":\\\"#the_this_keyword\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#builtin_storage_type_initilizer\\\"},{\\\"include\\\":\\\"#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"#functional_specifiers_pre_parameters\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#lambdas\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#function_call\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"include\\\":\\\"#square_brackets\\\"},{\\\"include\\\":\\\"#semicolon\\\"},{\\\"include\\\":\\\"#comma\\\"}]},\\\"ever_present_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#pragma_mark\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#include\\\"},{\\\"include\\\":\\\"#line\\\"},{\\\"include\\\":\\\"#diagnostic\\\"},{\\\"include\\\":\\\"#undef\\\"},{\\\"include\\\":\\\"#preprocessor_conditional_range\\\"},{\\\"include\\\":\\\"#single_line_macro\\\"},{\\\"include\\\":\\\"#macro\\\"},{\\\"include\\\":\\\"#preprocessor_conditional_standalone\\\"},{\\\"include\\\":\\\"#macro_argument\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},\\\"exception_keywords\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.exception.$3.cpp\\\"}},\\\"match\\\":\\\"((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:(?:throw)|(?:catch)|(?:try))(?!\\\\\\\\w))\\\"},\\\"extern_block\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(extern)(?=\\\\\\\\s*\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.extern.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.extern.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.extern.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.extern.cpp\\\"}},\\\"name\\\":\\\"meta.head.extern.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.extern.cpp\\\"}},\\\"name\\\":\\\"meta.body.extern.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.extern.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"function_body_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#using_namespace\\\"},{\\\"include\\\":\\\"#type_alias\\\"},{\\\"include\\\":\\\"#using_name\\\"},{\\\"include\\\":\\\"#namespace_alias\\\"},{\\\"include\\\":\\\"#typedef_class\\\"},{\\\"include\\\":\\\"#typedef_struct\\\"},{\\\"include\\\":\\\"#typedef_union\\\"},{\\\"include\\\":\\\"#misc_keywords\\\"},{\\\"include\\\":\\\"#standard_declares\\\"},{\\\"include\\\":\\\"#class_block\\\"},{\\\"include\\\":\\\"#struct_block\\\"},{\\\"include\\\":\\\"#union_block\\\"},{\\\"include\\\":\\\"#enum_block\\\"},{\\\"include\\\":\\\"#access_control_keywords\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#assembly\\\"},{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#switch_statement\\\"},{\\\"include\\\":\\\"#goto_statement\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"},{\\\"include\\\":\\\"#label\\\"}]},\\\"function_call\\\":{\\\"begin\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<11>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)\\\\\\\\b(?<!\\\\\\\\Wreinterpret_cast|^reinterpret_cast|\\\\\\\\Watomic_noexcept|^atomic_noexcept|\\\\\\\\Wuint_least16_t|^uint_least16_t|\\\\\\\\Wuint_least32_t|^uint_least32_t|\\\\\\\\Wuint_least64_t|^uint_least64_t|\\\\\\\\Watomic_cancel|^atomic_cancel|\\\\\\\\Watomic_commit|^atomic_commit|\\\\\\\\Wuint_least8_t|^uint_least8_t|\\\\\\\\Wuint_fast16_t|^uint_fast16_t|\\\\\\\\Wuint_fast32_t|^uint_fast32_t|\\\\\\\\Wint_least16_t|^int_least16_t|\\\\\\\\Wint_least32_t|^int_least32_t|\\\\\\\\Wint_least64_t|^int_least64_t|\\\\\\\\Wuint_fast64_t|^uint_fast64_t|\\\\\\\\Wthread_local|^thread_local|\\\\\\\\Wint_fast16_t|^int_fast16_t|\\\\\\\\Wint_fast32_t|^int_fast32_t|\\\\\\\\Wint_fast64_t|^int_fast64_t|\\\\\\\\Wsynchronized|^synchronized|\\\\\\\\Wuint_fast8_t|^uint_fast8_t|\\\\\\\\Wdynamic_cast|^dynamic_cast|\\\\\\\\Wint_least8_t|^int_least8_t|\\\\\\\\Wint_fast8_t|^int_fast8_t|\\\\\\\\Wstatic_cast|^static_cast|\\\\\\\\Wsuseconds_t|^suseconds_t|\\\\\\\\Wconst_cast|^const_cast|\\\\\\\\Wuseconds_t|^useconds_t|\\\\\\\\Wconstinit|^constinit|\\\\\\\\Wco_return|^co_return|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconsteval|^consteval|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconsteval|^consteval|\\\\\\\\Wprotected|^protected|\\\\\\\\Wnamespace|^namespace|\\\\\\\\Wblksize_t|^blksize_t|\\\\\\\\Wco_return|^co_return|\\\\\\\\Win_addr_t|^in_addr_t|\\\\\\\\Win_port_t|^in_port_t|\\\\\\\\Wuintptr_t|^uintptr_t|\\\\\\\\Wtemplate|^template|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Wcontinue|^continue|\\\\\\\\Wco_await|^co_await|\\\\\\\\Wco_yield|^co_yield|\\\\\\\\Wunsigned|^unsigned|\\\\\\\\Wu_quad_t|^u_quad_t|\\\\\\\\Wblkcnt_t|^blkcnt_t|\\\\\\\\Wuint16_t|^uint16_t|\\\\\\\\Wuint32_t|^uint32_t|\\\\\\\\Wuint64_t|^uint64_t|\\\\\\\\Wintptr_t|^intptr_t|\\\\\\\\Wintmax_t|^intmax_t|\\\\\\\\Wintmax_t|^intmax_t|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wregister|^register|\\\\\\\\Wrestrict|^restrict|\\\\\\\\Wexplicit|^explicit|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Woperator|^operator|\\\\\\\\Wdecltype|^decltype|\\\\\\\\Wtypename|^typename|\\\\\\\\Wrequires|^requires|\\\\\\\\Wco_await|^co_await|\\\\\\\\Wco_yield|^co_yield|\\\\\\\\Wreflexpr|^reflexpr|\\\\\\\\Wswblk_t|^swblk_t|\\\\\\\\Wvirtual|^virtual|\\\\\\\\Wssize_t|^ssize_t|\\\\\\\\Wconcept|^concept|\\\\\\\\Wmutable|^mutable|\\\\\\\\Wfixpt_t|^fixpt_t|\\\\\\\\Wint16_t|^int16_t|\\\\\\\\Wint32_t|^int32_t|\\\\\\\\Wint64_t|^int64_t|\\\\\\\\Wuint8_t|^uint8_t|\\\\\\\\Wtypedef|^typedef|\\\\\\\\Wdaddr_t|^daddr_t|\\\\\\\\Wcaddr_t|^caddr_t|\\\\\\\\Wqaddr_t|^qaddr_t|\\\\\\\\Wdefault|^default|\\\\\\\\Wnlink_t|^nlink_t|\\\\\\\\Wsegsz_t|^segsz_t|\\\\\\\\Wu_short|^u_short|\\\\\\\\Wwchar_t|^wchar_t|\\\\\\\\Wprivate|^private|\\\\\\\\W__asm__|^__asm__|\\\\\\\\Walignas|^alignas|\\\\\\\\Walignof|^alignof|\\\\\\\\Wmutable|^mutable|\\\\\\\\Wnullptr|^nullptr|\\\\\\\\Wclock_t|^clock_t|\\\\\\\\Wmode_t|^mode_t|\\\\\\\\Wpublic|^public|\\\\\\\\Wsize_t|^size_t|\\\\\\\\Wdouble|^double|\\\\\\\\Wquad_t|^quad_t|\\\\\\\\Wstatic|^static|\\\\\\\\Wtime_t|^time_t|\\\\\\\\Wmodule|^module|\\\\\\\\Wimport|^import|\\\\\\\\Wexport|^export|\\\\\\\\Wextern|^extern|\\\\\\\\Winline|^inline|\\\\\\\\Wxor_eq|^xor_eq|\\\\\\\\Wand_eq|^and_eq|\\\\\\\\Wreturn|^return|\\\\\\\\Wfriend|^friend|\\\\\\\\Wnot_eq|^not_eq|\\\\\\\\Wsigned|^signed|\\\\\\\\Wstruct|^struct|\\\\\\\\Wint8_t|^int8_t|\\\\\\\\Wushort|^ushort|\\\\\\\\Wswitch|^switch|\\\\\\\\Wu_long|^u_long|\\\\\\\\Wtypeid|^typeid|\\\\\\\\Wu_char|^u_char|\\\\\\\\Wsizeof|^sizeof|\\\\\\\\Wbitand|^bitand|\\\\\\\\Wdelete|^delete|\\\\\\\\Wino_t|^ino_t|\\\\\\\\Wkey_t|^key_t|\\\\\\\\Wpid_t|^pid_t|\\\\\\\\Woff_t|^off_t|\\\\\\\\Wuid_t|^uid_t|\\\\\\\\Wshort|^short|\\\\\\\\Wbreak|^break|\\\\\\\\Wcatch|^catch|\\\\\\\\Wcompl|^compl|\\\\\\\\Wwhile|^while|\\\\\\\\Wfalse|^false|\\\\\\\\Wclass|^class|\\\\\\\\Wunion|^union|\\\\\\\\Wconst|^const|\\\\\\\\Wor_eq|^or_eq|\\\\\\\\Wconst|^const|\\\\\\\\Wthrow|^throw|\\\\\\\\Wbitor|^bitor|\\\\\\\\Wu_int|^u_int|\\\\\\\\Wusing|^using|\\\\\\\\Wdiv_t|^div_t|\\\\\\\\Wdev_t|^dev_t|\\\\\\\\Wgid_t|^gid_t|\\\\\\\\Wfloat|^float|\\\\\\\\Wlong|^long|\\\\\\\\Wgoto|^goto|\\\\\\\\Wuint|^uint|\\\\\\\\Wid_t|^id_t|\\\\\\\\Wcase|^case|\\\\\\\\Wauto|^auto|\\\\\\\\Wvoid|^void|\\\\\\\\Wenum|^enum|\\\\\\\\Wtrue|^true|\\\\\\\\Wchar|^char|\\\\\\\\Wid_t|^id_t|\\\\\\\\WNULL|^NULL|\\\\\\\\Wthis|^this|\\\\\\\\Wbool|^bool|\\\\\\\\Welse|^else|\\\\\\\\Wfor|^for|\\\\\\\\Wnew|^new|\\\\\\\\Wnot|^not|\\\\\\\\Wxor|^xor|\\\\\\\\Wand|^and|\\\\\\\\Wasm|^asm|\\\\\\\\Wint|^int|\\\\\\\\Wtry|^try|\\\\\\\\Wdo|^do|\\\\\\\\Wif|^if|\\\\\\\\Wor|^or)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<11>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_function_call_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.call.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"11\\\":{},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.call.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.call.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"function_definition\\\":{\\\"begin\\\":\\\"(?:(?:^|\\\\\\\\G|(?<=;|\\\\\\\\}))|(?<=>|\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+(?:((?<!\\\\\\\\w)template(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:((?<!\\\\\\\\w)(?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))|(?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*)(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<52>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<52>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<52>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)\\\\\\\\b(?<!\\\\\\\\Wreinterpret_cast|^reinterpret_cast|\\\\\\\\Watomic_noexcept|^atomic_noexcept|\\\\\\\\Wuint_least16_t|^uint_least16_t|\\\\\\\\Wuint_least32_t|^uint_least32_t|\\\\\\\\Wuint_least64_t|^uint_least64_t|\\\\\\\\Watomic_cancel|^atomic_cancel|\\\\\\\\Watomic_commit|^atomic_commit|\\\\\\\\Wuint_least8_t|^uint_least8_t|\\\\\\\\Wuint_fast16_t|^uint_fast16_t|\\\\\\\\Wuint_fast32_t|^uint_fast32_t|\\\\\\\\Wint_least16_t|^int_least16_t|\\\\\\\\Wint_least32_t|^int_least32_t|\\\\\\\\Wint_least64_t|^int_least64_t|\\\\\\\\Wuint_fast64_t|^uint_fast64_t|\\\\\\\\Wthread_local|^thread_local|\\\\\\\\Wint_fast16_t|^int_fast16_t|\\\\\\\\Wint_fast32_t|^int_fast32_t|\\\\\\\\Wint_fast64_t|^int_fast64_t|\\\\\\\\Wsynchronized|^synchronized|\\\\\\\\Wuint_fast8_t|^uint_fast8_t|\\\\\\\\Wdynamic_cast|^dynamic_cast|\\\\\\\\Wint_least8_t|^int_least8_t|\\\\\\\\Wint_fast8_t|^int_fast8_t|\\\\\\\\Wstatic_cast|^static_cast|\\\\\\\\Wsuseconds_t|^suseconds_t|\\\\\\\\Wconst_cast|^const_cast|\\\\\\\\Wuseconds_t|^useconds_t|\\\\\\\\Wconstinit|^constinit|\\\\\\\\Wco_return|^co_return|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wuintmax_t|^uintmax_t|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconsteval|^consteval|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconstexpr|^constexpr|\\\\\\\\Wconsteval|^consteval|\\\\\\\\Wprotected|^protected|\\\\\\\\Wnamespace|^namespace|\\\\\\\\Wblksize_t|^blksize_t|\\\\\\\\Wco_return|^co_return|\\\\\\\\Win_addr_t|^in_addr_t|\\\\\\\\Win_port_t|^in_port_t|\\\\\\\\Wuintptr_t|^uintptr_t|\\\\\\\\Wtemplate|^template|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Wcontinue|^continue|\\\\\\\\Wco_await|^co_await|\\\\\\\\Wco_yield|^co_yield|\\\\\\\\Wunsigned|^unsigned|\\\\\\\\Wu_quad_t|^u_quad_t|\\\\\\\\Wblkcnt_t|^blkcnt_t|\\\\\\\\Wuint16_t|^uint16_t|\\\\\\\\Wuint32_t|^uint32_t|\\\\\\\\Wuint64_t|^uint64_t|\\\\\\\\Wintptr_t|^intptr_t|\\\\\\\\Wintmax_t|^intmax_t|\\\\\\\\Wintmax_t|^intmax_t|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wregister|^register|\\\\\\\\Wrestrict|^restrict|\\\\\\\\Wexplicit|^explicit|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wnoexcept|^noexcept|\\\\\\\\Woperator|^operator|\\\\\\\\Wdecltype|^decltype|\\\\\\\\Wtypename|^typename|\\\\\\\\Wrequires|^requires|\\\\\\\\Wco_await|^co_await|\\\\\\\\Wco_yield|^co_yield|\\\\\\\\Wreflexpr|^reflexpr|\\\\\\\\Wswblk_t|^swblk_t|\\\\\\\\Wvirtual|^virtual|\\\\\\\\Wssize_t|^ssize_t|\\\\\\\\Wconcept|^concept|\\\\\\\\Wmutable|^mutable|\\\\\\\\Wfixpt_t|^fixpt_t|\\\\\\\\Wint16_t|^int16_t|\\\\\\\\Wint32_t|^int32_t|\\\\\\\\Wint64_t|^int64_t|\\\\\\\\Wuint8_t|^uint8_t|\\\\\\\\Wtypedef|^typedef|\\\\\\\\Wdaddr_t|^daddr_t|\\\\\\\\Wcaddr_t|^caddr_t|\\\\\\\\Wqaddr_t|^qaddr_t|\\\\\\\\Wdefault|^default|\\\\\\\\Wnlink_t|^nlink_t|\\\\\\\\Wsegsz_t|^segsz_t|\\\\\\\\Wu_short|^u_short|\\\\\\\\Wwchar_t|^wchar_t|\\\\\\\\Wprivate|^private|\\\\\\\\W__asm__|^__asm__|\\\\\\\\Walignas|^alignas|\\\\\\\\Walignof|^alignof|\\\\\\\\Wmutable|^mutable|\\\\\\\\Wnullptr|^nullptr|\\\\\\\\Wclock_t|^clock_t|\\\\\\\\Wmode_t|^mode_t|\\\\\\\\Wpublic|^public|\\\\\\\\Wsize_t|^size_t|\\\\\\\\Wdouble|^double|\\\\\\\\Wquad_t|^quad_t|\\\\\\\\Wstatic|^static|\\\\\\\\Wtime_t|^time_t|\\\\\\\\Wmodule|^module|\\\\\\\\Wimport|^import|\\\\\\\\Wexport|^export|\\\\\\\\Wextern|^extern|\\\\\\\\Winline|^inline|\\\\\\\\Wxor_eq|^xor_eq|\\\\\\\\Wand_eq|^and_eq|\\\\\\\\Wreturn|^return|\\\\\\\\Wfriend|^friend|\\\\\\\\Wnot_eq|^not_eq|\\\\\\\\Wsigned|^signed|\\\\\\\\Wstruct|^struct|\\\\\\\\Wint8_t|^int8_t|\\\\\\\\Wushort|^ushort|\\\\\\\\Wswitch|^switch|\\\\\\\\Wu_long|^u_long|\\\\\\\\Wtypeid|^typeid|\\\\\\\\Wu_char|^u_char|\\\\\\\\Wsizeof|^sizeof|\\\\\\\\Wbitand|^bitand|\\\\\\\\Wdelete|^delete|\\\\\\\\Wino_t|^ino_t|\\\\\\\\Wkey_t|^key_t|\\\\\\\\Wpid_t|^pid_t|\\\\\\\\Woff_t|^off_t|\\\\\\\\Wuid_t|^uid_t|\\\\\\\\Wshort|^short|\\\\\\\\Wbreak|^break|\\\\\\\\Wcatch|^catch|\\\\\\\\Wcompl|^compl|\\\\\\\\Wwhile|^while|\\\\\\\\Wfalse|^false|\\\\\\\\Wclass|^class|\\\\\\\\Wunion|^union|\\\\\\\\Wconst|^const|\\\\\\\\Wor_eq|^or_eq|\\\\\\\\Wconst|^const|\\\\\\\\Wthrow|^throw|\\\\\\\\Wbitor|^bitor|\\\\\\\\Wu_int|^u_int|\\\\\\\\Wusing|^using|\\\\\\\\Wdiv_t|^div_t|\\\\\\\\Wdev_t|^dev_t|\\\\\\\\Wgid_t|^gid_t|\\\\\\\\Wfloat|^float|\\\\\\\\Wlong|^long|\\\\\\\\Wgoto|^goto|\\\\\\\\Wuint|^uint|\\\\\\\\Wid_t|^id_t|\\\\\\\\Wcase|^case|\\\\\\\\Wauto|^auto|\\\\\\\\Wvoid|^void|\\\\\\\\Wenum|^enum|\\\\\\\\Wtrue|^true|\\\\\\\\Wchar|^char|\\\\\\\\Wid_t|^id_t|\\\\\\\\WNULL|^NULL|\\\\\\\\Wthis|^this|\\\\\\\\Wbool|^bool|\\\\\\\\Welse|^else|\\\\\\\\Wfor|^for|\\\\\\\\Wnew|^new|\\\\\\\\Wnot|^not|\\\\\\\\Wxor|^xor|\\\\\\\\Wand|^and|\\\\\\\\Wasm|^asm|\\\\\\\\Wint|^int|\\\\\\\\Wtry|^try|\\\\\\\\Wdo|^do|\\\\\\\\Wif|^if|\\\\\\\\Wor|^or)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.template.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))|(?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"storage.modifier.$8.cpp\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"23\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"24\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"25\\\":{},\\\"26\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"27\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"28\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"29\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"30\\\":{},\\\"31\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"32\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"33\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"34\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"35\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"36\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"37\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"38\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"39\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"40\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"41\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"42\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"43\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"44\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"45\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"46\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"47\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"48\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"49\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_function_definition_inner_generated\\\"}]},\\\"50\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp\\\"},\\\"51\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"52\\\":{},\\\"53\\\":{\\\"name\\\":\\\"entity.name.function.definition.cpp\\\"},\\\"54\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"55\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"56\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"57\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#parameter_or_maybe_value\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.function.return-type.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"18\\\":{},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"23\\\":{}},\\\"match\\\":\\\"(?<=^|\\\\\\\\))(?:\\\\\\\\s+)?(->)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<23>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<23>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"function_parameter_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#parameter\\\"},{\\\"include\\\":\\\"#comma\\\"}]},\\\"function_pointer\\\":{\\\"begin\\\":\\\"(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()(\\\\\\\\*)(?:\\\\\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\\\\\s+)?(?:(\\\\\\\\[)(\\\\\\\\w*)(\\\\\\\\])(?:\\\\\\\\s+)?)*(\\\\\\\\))(?:\\\\\\\\s+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"13\\\":{},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"18\\\":{},\\\"19\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"23\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"24\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"25\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"26\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"27\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"28\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"29\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"30\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"31\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"32\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.function.pointer.cpp\\\"},\\\"33\\\":{\\\"name\\\":\\\"punctuation.definition.function.pointer.dereference.cpp\\\"},\\\"34\\\":{\\\"name\\\":\\\"variable.other.definition.pointer.function.cpp\\\"},\\\"35\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.cpp\\\"},\\\"36\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"37\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.cpp\\\"},\\\"38\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.function.pointer.cpp\\\"},\\\"39\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.function.pointer.cpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=[{=,);>]|\\\\\\\\n)(?!\\\\\\\\()\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.function.pointer.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"}]},\\\"function_pointer_parameter\\\":{\\\"begin\\\":\\\"(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()(\\\\\\\\*)(?:\\\\\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\\\\\s+)?(?:(\\\\\\\\[)(\\\\\\\\w*)(\\\\\\\\])(?:\\\\\\\\s+)?)*(\\\\\\\\))(?:\\\\\\\\s+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"13\\\":{},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"18\\\":{},\\\"19\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"23\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"24\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"25\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"26\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"27\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"28\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"29\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"30\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"31\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"32\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.function.pointer.cpp\\\"},\\\"33\\\":{\\\"name\\\":\\\"punctuation.definition.function.pointer.dereference.cpp\\\"},\\\"34\\\":{\\\"name\\\":\\\"variable.parameter.pointer.function.cpp\\\"},\\\"35\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.cpp\\\"},\\\"36\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"37\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.cpp\\\"},\\\"38\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.function.pointer.cpp\\\"},\\\"39\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.function.pointer.cpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=[{=,);>]|\\\\\\\\n)(?!\\\\\\\\()\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.function.pointer.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"}]},\\\"functional_specifiers_pre_parameters\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:constexpr)|(?:consteval)|(?:explicit)|(?:mutable)|(?:virtual)|(?:inline)|(?:friend))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.modifier.specifier.functional.pre-parameters.$0.cpp\\\"},\\\"gcc_attributes\\\":{\\\"begin\\\":\\\"__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.begin.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\\\\\\s*\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.end.cpp\\\"}},\\\"name\\\":\\\"support.other.attribute.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"}},\\\"match\\\":\\\"(using)\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.attribute.cpp\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.accessor.attribute.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=::)\\\",\\\"name\\\":\\\"entity.name.namespace.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.other.attribute.$0.cpp\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"goto_statement\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.goto.cpp\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"5\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"entity.name.label.call.cpp\\\"}},\\\"match\\\":\\\"((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)goto(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)\\\"},\\\"identifier\\\":{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\"},\\\"include\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.directive.$5.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"string.quoted.other.lt-gt.include.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"11\\\":{\\\"name\\\":\\\"string.quoted.double.include.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"15\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"16\\\":{\\\"name\\\":\\\"entity.name.other.preprocessor.macro.include.cpp\\\"},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"18\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"21\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"22\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"^((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((#)(?:\\\\\\\\s+)?((?:include|include_next))\\\\\\\\b)(?:\\\\\\\\s+)?(?:(?:(?:((<)[^>]*(>?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:\\\\\\\\n|$)|(?=\\\\\\\\/\\\\\\\\/)))|((\\\\\\\\\\\\\\\")[^\\\\\\\\\\\\\\\"]*(\\\\\\\\\\\\\\\"?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:\\\\\\\\n|$)|(?=\\\\\\\\/\\\\\\\\/))))|(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?:\\\\\\\\.(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)*((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:\\\\\\\\n|$)|(?=(?:\\\\\\\\/\\\\\\\\/|;)))))|((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:\\\\\\\\n|$)|(?=(?:\\\\\\\\/\\\\\\\\/|;))))\\\",\\\"name\\\":\\\"meta.preprocessor.include.cpp\\\"},\\\"inheritance_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.comma.inheritance.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:protected)|(?:private)|(?:public))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.modifier.access.$0.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)virtual(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.modifier.virtual.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"9\\\":{},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{}},\\\"match\\\":\\\"(?<=protected|virtual|private|public|,|:)(?:\\\\\\\\s+)?(?!(?:(?:(?:protected)|(?:private)|(?:public))|virtual))(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))\\\"}]},\\\"inline_builtin_storage_type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.primitive.cpp storage.type.built-in.primitive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.cpp storage.type.built-in.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(?<!\\\\\\\\w)(?:(?:(?:((?:(?:unsigned)|(?:wchar_t)|(?:double)|(?:signed)|(?:short)|(?:float)|(?:auto)|(?:void)|(?:long)|(?:char)|(?:bool)|(?:int)))|((?:(?:uint_least32_t)|(?:uint_least64_t)|(?:uint_least16_t)|(?:uint_fast64_t)|(?:uint_least8_t)|(?:int_least64_t)|(?:int_least32_t)|(?:int_least16_t)|(?:uint_fast16_t)|(?:uint_fast32_t)|(?:int_least8_t)|(?:int_fast16_t)|(?:int_fast32_t)|(?:int_fast64_t)|(?:uint_fast8_t)|(?:int_fast8_t)|(?:suseconds_t)|(?:useconds_t)|(?:uintmax_t)|(?:uintmax_t)|(?:in_port_t)|(?:uintmax_t)|(?:in_addr_t)|(?:blksize_t)|(?:uintptr_t)|(?:intmax_t)|(?:intptr_t)|(?:blkcnt_t)|(?:intmax_t)|(?:u_quad_t)|(?:uint16_t)|(?:uint32_t)|(?:uint64_t)|(?:ssize_t)|(?:fixpt_t)|(?:qaddr_t)|(?:u_short)|(?:int16_t)|(?:int32_t)|(?:int64_t)|(?:uint8_t)|(?:daddr_t)|(?:caddr_t)|(?:swblk_t)|(?:clock_t)|(?:segsz_t)|(?:nlink_t)|(?:time_t)|(?:u_long)|(?:ushort)|(?:quad_t)|(?:mode_t)|(?:size_t)|(?:u_char)|(?:int8_t)|(?:u_int)|(?:uid_t)|(?:off_t)|(?:pid_t)|(?:gid_t)|(?:dev_t)|(?:div_t)|(?:key_t)|(?:ino_t)|(?:id_t)|(?:id_t)|(?:uint))))|((?:(?:pthread_rwlockattr_t)|(?:pthread_mutexattr_t)|(?:pthread_condattr_t)|(?:pthread_rwlock_t)|(?:pthread_mutex_t)|(?:pthread_cond_t)|(?:pthread_attr_t)|(?:pthread_once_t)|(?:pthread_key_t)|(?:pthread_t))))|([a-zA-Z_]\\\\\\\\w*_t))(?!\\\\\\\\w)\\\"},\\\"inline_comment\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\"},\\\"invalid_comment_end\\\":{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"invalid.illegal.unexpected.punctuation.definition.comment.end.cpp\\\"},\\\"label\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"entity.name.label.cpp\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"5\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.label.cpp\\\"}},\\\"match\\\":\\\"((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\b(?<!case|default)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:)\\\"},\\\"lambdas\\\":{\\\"begin\\\":\\\"(?:(?<=[^\\\\\\\\s]|^)(?<![\\\\\\\\w\\\\\\\\]\\\\\\\\)\\\\\\\\[\\\\\\\\*&\\\\\\\">])|(?<=\\\\\\\\Wreturn|^return))(?:\\\\\\\\s+)?(\\\\\\\\[(?!\\\\\\\\[| *+\\\\\\\"| *+\\\\\\\\d))((?:[^\\\\\\\\[\\\\\\\\]]|((?<!\\\\\\\\[)\\\\\\\\[(?!\\\\\\\\[)(?:[^\\\\\\\\[\\\\\\\\]]*+\\\\\\\\g<3>?)++\\\\\\\\]))*+)(\\\\\\\\](?!((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))[\\\\\\\\[\\\\\\\\];=]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.capture.begin.lambda.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.lambda.capture.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#the_this_keyword\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.capture.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?=\\\\\\\\]|\\\\\\\\z|$)|(,))|(\\\\\\\\=))\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"3\\\":{},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.capture.end.lambda.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?<=[;}])\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.lambda.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.lambda.cpp\\\"}},\\\"name\\\":\\\"meta.function.definition.parameters.lambda.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:constexpr)|(?:consteval)|(?:mutable))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.modifier.lambda.$0.cpp\\\"},{\\\"begin\\\":\\\"->\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.lambda.return-type.cpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"storage.type.return-type.lambda.cpp\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.lambda.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.lambda.cpp\\\"}},\\\"name\\\":\\\"meta.function.definition.body.lambda.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"language_constants\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:nullptr)|(?:false)|(?:NULL)|(?:true))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.language.$0.cpp\\\"},\\\"line\\\":{\\\"begin\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?line\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.directive.line.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.preprocessor.line.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#preprocessor_number_literal\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},\\\"line_comment\\\":{\\\"begin\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.cpp\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"comment.line.double-slash.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},\\\"line_continuation_character\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.line-continuation.cpp\\\"},\\\"macro\\\":{\\\"begin\\\":\\\"(^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?define\\\\\\\\b)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.define.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.cpp\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.preprocessor.macro.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.preprocessor.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.function.preprocessor.parameters.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.preprocessor.cpp\\\"}},\\\"match\\\":\\\"(?<=[(,])(?:\\\\\\\\s+)?((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)(?:\\\\\\\\s+)?\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameters.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.vararg-ellipses.variable.parameter.preprocessor.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.preprocessor.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\G(?:\\\\\\\\s+)?(\\\\\\\\()([^\\\\\\\\(]*)(\\\\\\\\))\\\"},{\\\"include\\\":\\\"#macro_context\\\"},{\\\"include\\\":\\\"#macro_argument\\\"}]},\\\"macro_argument\\\":{\\\"match\\\":\\\"##?(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"variable.other.macro.argument.cpp\\\"},\\\"macro_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp.embedded.macro\\\"}]},\\\"macro_name\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.function.preprocessor.cpp\\\"},\\\"member_access\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"variable.language.this.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.object.access.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.language.this.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.object.property.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.cpp\\\"}},\\\"match\\\":\\\"(?<=(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.|->|->\\\\\\\\*))(?:\\\\\\\\s+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)this(?!\\\\\\\\w))|((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*|(?<=\\\\\\\\]|\\\\\\\\)))(?:\\\\\\\\s+)?))(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.language.this.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.object.access.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.cpp\\\"}},\\\"match\\\":\\\"(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)this(?!\\\\\\\\w))|((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*|(?<=\\\\\\\\]|\\\\\\\\)))(?:\\\\\\\\s+)?))(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#method_access\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"variable.other.property.cpp\\\"}},\\\"match\\\":\\\"(?:((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)this(?!\\\\\\\\w))|((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*|(?<=\\\\\\\\]|\\\\\\\\)))(?:\\\\\\\\s+)?))(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?:\\\\\\\\s+)?(?:(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.)|(?:->\\\\\\\\*|->))(?:\\\\\\\\s+)?)*)(?:\\\\\\\\s+)?(\\\\\\\\b(?!uint_least32_t[^\\\\\\\\w]|uint_least16_t[^\\\\\\\\w]|uint_least64_t[^\\\\\\\\w]|int_least32_t[^\\\\\\\\w]|int_least64_t[^\\\\\\\\w]|uint_fast32_t[^\\\\\\\\w]|uint_fast64_t[^\\\\\\\\w]|uint_least8_t[^\\\\\\\\w]|uint_fast16_t[^\\\\\\\\w]|int_least16_t[^\\\\\\\\w]|int_fast16_t[^\\\\\\\\w]|int_least8_t[^\\\\\\\\w]|uint_fast8_t[^\\\\\\\\w]|int_fast64_t[^\\\\\\\\w]|int_fast32_t[^\\\\\\\\w]|int_fast8_t[^\\\\\\\\w]|suseconds_t[^\\\\\\\\w]|useconds_t[^\\\\\\\\w]|in_addr_t[^\\\\\\\\w]|uintmax_t[^\\\\\\\\w]|uintmax_t[^\\\\\\\\w]|uintmax_t[^\\\\\\\\w]|in_port_t[^\\\\\\\\w]|uintptr_t[^\\\\\\\\w]|blksize_t[^\\\\\\\\w]|uint32_t[^\\\\\\\\w]|uint64_t[^\\\\\\\\w]|u_quad_t[^\\\\\\\\w]|intmax_t[^\\\\\\\\w]|intmax_t[^\\\\\\\\w]|unsigned[^\\\\\\\\w]|blkcnt_t[^\\\\\\\\w]|uint16_t[^\\\\\\\\w]|intptr_t[^\\\\\\\\w]|swblk_t[^\\\\\\\\w]|wchar_t[^\\\\\\\\w]|u_short[^\\\\\\\\w]|qaddr_t[^\\\\\\\\w]|caddr_t[^\\\\\\\\w]|daddr_t[^\\\\\\\\w]|fixpt_t[^\\\\\\\\w]|nlink_t[^\\\\\\\\w]|segsz_t[^\\\\\\\\w]|clock_t[^\\\\\\\\w]|ssize_t[^\\\\\\\\w]|int16_t[^\\\\\\\\w]|int32_t[^\\\\\\\\w]|int64_t[^\\\\\\\\w]|uint8_t[^\\\\\\\\w]|int8_t[^\\\\\\\\w]|mode_t[^\\\\\\\\w]|quad_t[^\\\\\\\\w]|ushort[^\\\\\\\\w]|u_long[^\\\\\\\\w]|u_char[^\\\\\\\\w]|double[^\\\\\\\\w]|signed[^\\\\\\\\w]|time_t[^\\\\\\\\w]|size_t[^\\\\\\\\w]|key_t[^\\\\\\\\w]|div_t[^\\\\\\\\w]|ino_t[^\\\\\\\\w]|uid_t[^\\\\\\\\w]|gid_t[^\\\\\\\\w]|off_t[^\\\\\\\\w]|pid_t[^\\\\\\\\w]|float[^\\\\\\\\w]|dev_t[^\\\\\\\\w]|u_int[^\\\\\\\\w]|short[^\\\\\\\\w]|bool[^\\\\\\\\w]|id_t[^\\\\\\\\w]|uint[^\\\\\\\\w]|long[^\\\\\\\\w]|char[^\\\\\\\\w]|void[^\\\\\\\\w]|auto[^\\\\\\\\w]|id_t[^\\\\\\\\w]|int[^\\\\\\\\w])(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b(?!\\\\\\\\())\\\"},\\\"memory_operators\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.wordlike.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.delete.array.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.delete.array.bracket.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.delete.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.new.cpp\\\"}},\\\"match\\\":\\\"((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:(?:(delete)(?:\\\\\\\\s+)?(\\\\\\\\[\\\\\\\\])|(delete))|(new))(?!\\\\\\\\w))\\\"},\\\"method_access\\\":{\\\"begin\\\":\\\"(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)this(?!\\\\\\\\w))|((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*|(?<=\\\\\\\\]|\\\\\\\\)))(?:\\\\\\\\s+)?))(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?:\\\\\\\\s+)?(?:(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.)|(?:->\\\\\\\\*|->))(?:\\\\\\\\s+)?)*)(?:\\\\\\\\s+)?(~?(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)(?:\\\\\\\\s+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.language.this.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.object.access.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.cpp\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.language.this.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.object.property.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.cpp\\\"}},\\\"match\\\":\\\"(?<=(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.|->|->\\\\\\\\*))(?:\\\\\\\\s+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)this(?!\\\\\\\\w))|((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*|(?<=\\\\\\\\]|\\\\\\\\)))(?:\\\\\\\\s+)?))(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.language.this.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.object.access.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.cpp\\\"}},\\\"match\\\":\\\"(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)this(?!\\\\\\\\w))|((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*|(?<=\\\\\\\\]|\\\\\\\\)))(?:\\\\\\\\s+)?))(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#method_access\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"entity.name.function.member.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.member.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.member.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"misc_keywords\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.$3.cpp\\\"}},\\\"match\\\":\\\"((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:(?:constinit)|(?:requires)|(?:typedef)|(?:concept)|(?:export)|(?:module))(?!\\\\\\\\w))\\\"},\\\"ms_attributes\\\":{\\\"begin\\\":\\\"__declspec\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.begin.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.attribute.end.cpp\\\"}},\\\"name\\\":\\\"support.other.attribute.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"}},\\\"match\\\":\\\"(using)\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.attribute.cpp\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.accessor.attribute.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(?=::)\\\",\\\"name\\\":\\\"entity.name.namespace.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.other.attribute.$0.cpp\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"namespace_alias\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.namespace.alias.cpp storage.type.namespace.alias.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.alias.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.declaration.namespace.alias.value.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_namespace_alias_inner_generated\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(namespace)\\\\\\\\s+((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?:\\\\\\\\s+)?(\\\\\\\\=)(?:\\\\\\\\s+)?(((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<8>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?:\\\\\\\\s+)?(?:(;)|\\\\\\\\n))\\\",\\\"name\\\":\\\"meta.declaration.namespace.alias.cpp\\\"},\\\"namespace_block\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)namespace(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.namespace.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.other.namespace.definition.cpp storage.type.namespace.definition.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.block.namespace.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.namespace.cpp\\\"}},\\\"name\\\":\\\"meta.head.namespace.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_namespace_block_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.scope-resolution.namespace.block.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.modifier.inline.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<4>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?:\\\\\\\\s+)?(?:(::)(?:\\\\\\\\s+)?(inline))?\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.namespace.cpp\\\"}},\\\"name\\\":\\\"meta.body.namespace.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.namespace.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"noexcept_operator\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)noexcept(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.noexcept.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.noexcept.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.noexcept\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.noexcept.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"number_literal\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=.)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"$\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"11\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9a-fA-F])\\\\\\\\.|\\\\\\\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([pP])(\\\\\\\\+?)(\\\\\\\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9a-fA-FpP])\\\\\\\\w*)?$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.decimal.point.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.floating-point.cpp keyword.other.unit.suffix.floating-point.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\G(?=[0-9.])(?!0[xXbB])([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9])\\\\\\\\.|\\\\\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([eE])(\\\\\\\\+?)(\\\\\\\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9eE])\\\\\\\\w*)?$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.binary.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.binary.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[bB])([01](?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9])\\\\\\\\w*)?$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.octal.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.octal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0)((?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))+)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9])\\\\\\\\w*)?$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([pP])(\\\\\\\\+?)(\\\\\\\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9a-fA-FpP])\\\\\\\\w*)?$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.built-in.integer.cpp keyword.other.unit.suffix.integer.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.integer.cpp keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\G(?=[0-9.])(?!0[xXbB])([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([eE])(\\\\\\\\+?)(\\\\\\\\-?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9eE])\\\\\\\\w*)?$)\\\"},{\\\"match\\\":\\\"(?:(?:[0-9a-zA-Z_\\\\\\\\.]|')|(?<=[eEpP])[+-])+\\\",\\\"name\\\":\\\"invalid.illegal.constant.numeric.cpp\\\"}]}]}},\\\"match\\\":\\\"(?<!\\\\\\\\w)\\\\\\\\.?\\\\\\\\d(?:(?:[0-9a-zA-Z_\\\\\\\\.]|')|(?<=[eEpP])[+-])*\\\"},\\\"operator_overload\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<55>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<55>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:__cdecl|__clrcall|__stdcall|__fastcall|__thiscall|__vectorcall)?)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<55>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)(operator)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<55>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)(?:(?:((?:(?:delete\\\\\\\\[\\\\\\\\])|(?:delete)|(?:new\\\\\\\\[\\\\\\\\])|(?:<=>)|(?:<<=)|(?:new)|(?:>>=)|(?:\\\\\\\\->\\\\\\\\*)|(?:\\\\\\\\/=)|(?:%=)|(?:&=)|(?:>=)|(?:\\\\\\\\|=)|(?:\\\\\\\\+\\\\\\\\+)|(?:\\\\\\\\-\\\\\\\\-)|(?:\\\\\\\\(\\\\\\\\))|(?:\\\\\\\\[\\\\\\\\])|(?:\\\\\\\\->)|(?:\\\\\\\\+\\\\\\\\+)|(?:<<)|(?:>>)|(?:\\\\\\\\-\\\\\\\\-)|(?:<=)|(?:\\\\\\\\^=)|(?:==)|(?:!=)|(?:&&)|(?:\\\\\\\\|\\\\\\\\|)|(?:\\\\\\\\+=)|(?:\\\\\\\\-=)|(?:\\\\\\\\*=)|,|\\\\\\\\+|\\\\\\\\-|!|~|\\\\\\\\*|&|\\\\\\\\*|\\\\\\\\/|%|\\\\\\\\+|\\\\\\\\-|<|>|&|\\\\\\\\^|\\\\\\\\||=))|((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:\\\\\\\\[\\\\\\\\])?)))|(\\\\\\\"\\\\\\\")((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\<|\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.function.definition.special.operator-overload.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"17\\\":{},\\\"18\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"22\\\":{},\\\"23\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"24\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"25\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"26\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"27\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"28\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"29\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"30\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"31\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"32\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"33\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"34\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"35\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"36\\\":{\\\"name\\\":\\\"storage.type.modifier.calling-convention.cpp\\\"},\\\"37\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"38\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"39\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"40\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"41\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"42\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"43\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"44\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"45\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.operator.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.operator.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"46\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"47\\\":{},\\\"48\\\":{\\\"name\\\":\\\"keyword.other.operator.overload.cpp\\\"},\\\"49\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"50\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"51\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"52\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"53\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.operator-overload.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.operator-overload.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"54\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"55\\\":{},\\\"56\\\":{\\\"name\\\":\\\"entity.name.operator.cpp\\\"},\\\"57\\\":{\\\"name\\\":\\\"entity.name.operator.type.cpp\\\"},\\\"58\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"entity.name.operator.type.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"entity.name.operator.type.reference.cpp\\\"}]},\\\"59\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"60\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"61\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"62\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"63\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"64\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"65\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"66\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"67\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"68\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"69\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"70\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"71\\\":{\\\"name\\\":\\\"entity.name.operator.type.array.cpp\\\"},\\\"72\\\":{\\\"name\\\":\\\"entity.name.operator.custom-literal.cpp\\\"},\\\"73\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"74\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"75\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"76\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"77\\\":{\\\"name\\\":\\\"entity.name.operator.custom-literal.cpp\\\"},\\\"78\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"79\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"80\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"81\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.definition.special.operator-overload.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.function.definition.special.operator-overload.cpp\\\"}},\\\"name\\\":\\\"meta.head.function.definition.special.operator-overload.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.special.operator-overload.cpp\\\"}},\\\"contentName\\\":\\\"meta.function.definition.parameters.special.operator-overload\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.special.operator-overload.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"include\\\":\\\"#qualifiers_and_specifiers_post_parameters\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.default.function.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.delete.function.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\=)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(default)|(delete))\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.function.definition.special.operator-overload.cpp\\\"}},\\\"name\\\":\\\"meta.body.function.definition.special.operator-overload.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_body_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.function.definition.special.operator-overload.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)sizeof(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.sizeof.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.sizeof.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.sizeof\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.sizeof.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)alignof(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.alignof.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.alignof.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.alignof\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.alignof.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)alignas(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.alignas.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.alignas.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.alignas\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.alignas.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typeid(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.typeid.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.typeid.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.typeid\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.typeid.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"((?<!\\\\\\\\w)noexcept(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.noexcept.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.noexcept.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.noexcept\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.noexcept.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\bsizeof\\\\\\\\.\\\\\\\\.\\\\\\\\.)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.sizeof.variadic.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.sizeof.variadic.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.sizeof.variadic\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.sizeof.variadic.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.cpp\\\"},{\\\"match\\\":\\\"%=|\\\\\\\\+=|-=|\\\\\\\\*=|(?<!\\\\\\\\()\\\\\\\\/=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.cpp\\\"},{\\\"match\\\":\\\"&=|\\\\\\\\^=|<<=|>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.cpp\\\"},{\\\"match\\\":\\\"<<|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.cpp\\\"},{\\\"match\\\":\\\"!=|<=|>=|==|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.cpp\\\"},{\\\"match\\\":\\\"&&|!|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.cpp\\\"},{\\\"match\\\":\\\"&|\\\\\\\\||\\\\\\\\^|~\\\",\\\"name\\\":\\\"keyword.operator.bitwise.cpp\\\"},{\\\"include\\\":\\\"#assignment_operator\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|\\\\\\\\/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.cpp\\\"},{\\\"include\\\":\\\"#ternary_operator\\\"}]},\\\"over_qualified_types\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.struct.parameter.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.struct.parameter.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"14\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"18\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\bstruct)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\[((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\]((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=,|\\\\\\\\)|\\\\\\\\n)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum.parameter.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.enum.parameter.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"14\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"18\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\benum)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\[((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\]((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=,|\\\\\\\\)|\\\\\\\\n)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.union.parameter.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.union.parameter.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"14\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"18\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\bunion)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\[((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\]((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=,|\\\\\\\\)|\\\\\\\\n)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.parameter.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.parameter.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"14\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"18\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\bclass)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\[((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\]((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=,|\\\\\\\\)|\\\\\\\\n)\\\"}]},\\\"parameter\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\w)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?=\\\\\\\\))|(,))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"}},\\\"name\\\":\\\"meta.parameter.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#function_pointer_parameter\\\"},{\\\"include\\\":\\\"#decltype\\\"},{\\\"include\\\":\\\"#vararg_ellipses\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#storage_types\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.specifier.parameter.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.primitive.cpp storage.type.built-in.primitive.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"storage.type.cpp storage.type.built-in.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"entity.name.type.parameter.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?:((?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\s*+(?<!\\\\\\\\w)(?:(?:(?:((?:(?:unsigned)|(?:wchar_t)|(?:double)|(?:signed)|(?:short)|(?:float)|(?:auto)|(?:void)|(?:long)|(?:char)|(?:bool)|(?:int)))|((?:(?:uint_least32_t)|(?:uint_least64_t)|(?:uint_least16_t)|(?:uint_fast64_t)|(?:uint_least8_t)|(?:int_least64_t)|(?:int_least32_t)|(?:int_least16_t)|(?:uint_fast16_t)|(?:uint_fast32_t)|(?:int_least8_t)|(?:int_fast16_t)|(?:int_fast32_t)|(?:int_fast64_t)|(?:uint_fast8_t)|(?:int_fast8_t)|(?:suseconds_t)|(?:useconds_t)|(?:uintmax_t)|(?:uintmax_t)|(?:in_port_t)|(?:uintmax_t)|(?:in_addr_t)|(?:blksize_t)|(?:uintptr_t)|(?:intmax_t)|(?:intptr_t)|(?:blkcnt_t)|(?:intmax_t)|(?:u_quad_t)|(?:uint16_t)|(?:uint32_t)|(?:uint64_t)|(?:ssize_t)|(?:fixpt_t)|(?:qaddr_t)|(?:u_short)|(?:int16_t)|(?:int32_t)|(?:int64_t)|(?:uint8_t)|(?:daddr_t)|(?:caddr_t)|(?:swblk_t)|(?:clock_t)|(?:segsz_t)|(?:nlink_t)|(?:time_t)|(?:u_long)|(?:ushort)|(?:quad_t)|(?:mode_t)|(?:size_t)|(?:u_char)|(?:int8_t)|(?:u_int)|(?:uid_t)|(?:off_t)|(?:pid_t)|(?:gid_t)|(?:dev_t)|(?:div_t)|(?:key_t)|(?:ino_t)|(?:id_t)|(?:id_t)|(?:uint))))|((?:(?:pthread_rwlockattr_t)|(?:pthread_mutexattr_t)|(?:pthread_condattr_t)|(?:pthread_rwlock_t)|(?:pthread_mutex_t)|(?:pthread_cond_t)|(?:pthread_attr_t)|(?:pthread_once_t)|(?:pthread_key_t)|(?:pthread_t))))|([a-zA-Z_]\\\\\\\\w*_t))(?!\\\\\\\\w)|((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\b\\\\\\\\b(?<!\\\\\\\\Wthread_local|^thread_local|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wregister|^register|\\\\\\\\Wrestrict|^restrict|\\\\\\\\Wstatic|^static|\\\\\\\\Wextern|^extern|\\\\\\\\Wconst|^const)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=,|\\\\\\\\)|=)\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#scope_resolution_parameter_inner_generated\\\"},{\\\"match\\\":\\\"(?:(?:struct)|(?:class)|(?:union)|(?:enum))\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"begin\\\":\\\"(?<==)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:(?=\\\\\\\\))|(,))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\s|\\\\\\\\(|,|:)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\)|,|\\\\\\\\[|=|\\\\\\\\n)\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.array.type.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.array.type.cpp\\\"}},\\\"name\\\":\\\"meta.bracket.square.array.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b(?<!\\\\\\\\Wstruct|^struct|\\\\\\\\Wclass|^class|\\\\\\\\Wunion|^union|\\\\\\\\Wenum|^enum)\\\",\\\"name\\\":\\\"entity.name.type.parameter.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*)\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"parameter_class\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.parameter.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.parameter.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"14\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"18\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\bclass)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\[((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\]((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=,|\\\\\\\\)|\\\\\\\\n)\\\"},\\\"parameter_enum\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum.parameter.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.enum.parameter.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"14\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"18\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\benum)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\[((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\]((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=,|\\\\\\\\)|\\\\\\\\n)\\\"},\\\"parameter_or_maybe_value\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\w)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"end\\\":\\\"(?:(?=\\\\\\\\))|(,))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"}},\\\"name\\\":\\\"meta.parameter.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#function_pointer_parameter\\\"},{\\\"include\\\":\\\"#memory_operators\\\"},{\\\"include\\\":\\\"#builtin_storage_type_initilizer\\\"},{\\\"include\\\":\\\"#curly_initializer\\\"},{\\\"include\\\":\\\"#decltype\\\"},{\\\"include\\\":\\\"#vararg_ellipses\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#storage_types\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.specifier.parameter.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.primitive.cpp storage.type.built-in.primitive.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"storage.type.cpp storage.type.built-in.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"support.type.posix-reserved.pthread.cpp support.type.built-in.posix-reserved.pthread.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"support.type.posix-reserved.cpp support.type.built-in.posix-reserved.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"entity.name.type.parameter.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?:((?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\s*+(?<!\\\\\\\\w)(?:(?:(?:((?:(?:unsigned)|(?:wchar_t)|(?:double)|(?:signed)|(?:short)|(?:float)|(?:auto)|(?:void)|(?:long)|(?:char)|(?:bool)|(?:int)))|((?:(?:uint_least32_t)|(?:uint_least64_t)|(?:uint_least16_t)|(?:uint_fast64_t)|(?:uint_least8_t)|(?:int_least64_t)|(?:int_least32_t)|(?:int_least16_t)|(?:uint_fast16_t)|(?:uint_fast32_t)|(?:int_least8_t)|(?:int_fast16_t)|(?:int_fast32_t)|(?:int_fast64_t)|(?:uint_fast8_t)|(?:int_fast8_t)|(?:suseconds_t)|(?:useconds_t)|(?:uintmax_t)|(?:uintmax_t)|(?:in_port_t)|(?:uintmax_t)|(?:in_addr_t)|(?:blksize_t)|(?:uintptr_t)|(?:intmax_t)|(?:intptr_t)|(?:blkcnt_t)|(?:intmax_t)|(?:u_quad_t)|(?:uint16_t)|(?:uint32_t)|(?:uint64_t)|(?:ssize_t)|(?:fixpt_t)|(?:qaddr_t)|(?:u_short)|(?:int16_t)|(?:int32_t)|(?:int64_t)|(?:uint8_t)|(?:daddr_t)|(?:caddr_t)|(?:swblk_t)|(?:clock_t)|(?:segsz_t)|(?:nlink_t)|(?:time_t)|(?:u_long)|(?:ushort)|(?:quad_t)|(?:mode_t)|(?:size_t)|(?:u_char)|(?:int8_t)|(?:u_int)|(?:uid_t)|(?:off_t)|(?:pid_t)|(?:gid_t)|(?:dev_t)|(?:div_t)|(?:key_t)|(?:ino_t)|(?:id_t)|(?:id_t)|(?:uint))))|((?:(?:pthread_rwlockattr_t)|(?:pthread_mutexattr_t)|(?:pthread_condattr_t)|(?:pthread_rwlock_t)|(?:pthread_mutex_t)|(?:pthread_cond_t)|(?:pthread_attr_t)|(?:pthread_once_t)|(?:pthread_key_t)|(?:pthread_t))))|([a-zA-Z_]\\\\\\\\w*_t))(?!\\\\\\\\w)|((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\b\\\\\\\\b(?<!\\\\\\\\Wthread_local|^thread_local|\\\\\\\\Wvolatile|^volatile|\\\\\\\\Wregister|^register|\\\\\\\\Wrestrict|^restrict|\\\\\\\\Wstatic|^static|\\\\\\\\Wextern|^extern|\\\\\\\\Wconst|^const)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=,|\\\\\\\\)|=)\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#function_call\\\"},{\\\"include\\\":\\\"#scope_resolution_parameter_inner_generated\\\"},{\\\"match\\\":\\\"(?:(?:struct)|(?:class)|(?:union)|(?:enum))\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"begin\\\":\\\"(?<==)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:(?=\\\\\\\\))|(,))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.parameter.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\s|\\\\\\\\(|,|:)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=(?:\\\\\\\\)|,|\\\\\\\\[|=|\\\\\\\\/\\\\\\\\/|(?:\\\\\\\\n|$)))\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.array.type.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.array.type.cpp\\\"}},\\\"name\\\":\\\"meta.bracket.square.array.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b(?<!\\\\\\\\Wstruct|^struct|\\\\\\\\Wclass|^class|\\\\\\\\Wunion|^union|\\\\\\\\Wenum|^enum)\\\",\\\"name\\\":\\\"entity.name.type.parameter.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*)\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"},{\\\"include\\\":\\\"#ever_present_context\\\"}]},\\\"parameter_struct\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.struct.parameter.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.struct.parameter.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"14\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"18\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\bstruct)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\[((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\]((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=,|\\\\\\\\)|\\\\\\\\n)\\\"},\\\"parameter_union\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.union.parameter.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.union.parameter.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"14\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"18\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"19\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\bunion)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))?)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:\\\\\\\\[((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\]((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=,|\\\\\\\\)|\\\\\\\\n)\\\"},\\\"parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.cpp\\\"}},\\\"name\\\":\\\"meta.parens.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#over_qualified_types\\\"},{\\\"match\\\":\\\"(?<!:):(?!:)\\\",\\\"name\\\":\\\"punctuation.separator.colon.range-based.cpp\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"pragma\\\":{\\\"begin\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?pragma\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.directive.pragma.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.preprocessor.pragma.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w\\\\\\\\-$]*\\\",\\\"name\\\":\\\"entity.other.attribute-name.pragma.preprocessor.cpp\\\"},{\\\"include\\\":\\\"#preprocessor_number_literal\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},\\\"pragma_mark\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.pragma.pragma-mark.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.tag.pragma-mark.cpp\\\"}},\\\"match\\\":\\\"(^((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?pragma\\\\\\\\s+mark)\\\\\\\\s+(.*)\\\",\\\"name\\\":\\\"meta.preprocessor.pragma.cpp\\\"},\\\"predefined_macros\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.$1.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\b(__cplusplus|__DATE__|__FILE__|__LINE__|__STDC__|__STDC_HOSTED__|__STDC_NO_COMPLEX__|__STDC_VERSION__|__STDCPP_THREADS__|__TIME__|NDEBUG|__OBJC__|__ASSEMBLER__|__ATOM__|__AVX__|__AVX2__|_CHAR_UNSIGNED|__CLR_VER|_CONTROL_FLOW_GUARD|__COUNTER__|__cplusplus_cli|__cplusplus_winrt|_CPPRTTI|_CPPUNWIND|_DEBUG|_DLL|__FUNCDNAME__|__FUNCSIG__|__FUNCTION__|_INTEGRAL_MAX_BITS|__INTELLISENSE__|_ISO_VOLATILE|_KERNEL_MODE|_M_AMD64|_M_ARM|_M_ARM_ARMV7VE|_M_ARM_FP|_M_ARM64|_M_CEE|_M_CEE_PURE|_M_CEE_SAFE|_M_FP_EXCEPT|_M_FP_FAST|_M_FP_PRECISE|_M_FP_STRICT|_M_IX86|_M_IX86_FP|_M_X64|_MANAGED|_MSC_BUILD|_MSC_EXTENSIONS|_MSC_FULL_VER|_MSC_VER|_MSVC_LANG|__MSVC_RUNTIME_CHECKS|_MT|_NATIVE_WCHAR_T_DEFINED|_OPENMP|_PREFAST|__TIMESTAMP__|_VC_NO_DEFAULTLIB|_WCHAR_T_DEFINED|_WIN32|_WIN64|_WINRT_DLL|_ATL_VER|_MFC_VER|__GFORTRAN__|__GNUC__|__GNUC_MINOR__|__GNUC_PATCHLEVEL__|__GNUG__|__STRICT_ANSI__|__BASE_FILE__|__INCLUDE_LEVEL__|__ELF__|__VERSION__|__OPTIMIZE__|__OPTIMIZE_SIZE__|__NO_INLINE__|__GNUC_STDC_INLINE__|__CHAR_UNSIGNED__|__WCHAR_UNSIGNED__|__REGISTER_PREFIX__|__REGISTER_PREFIX__|__SIZE_TYPE__|__PTRDIFF_TYPE__|__WCHAR_TYPE__|__WINT_TYPE__|__INTMAX_TYPE__|__UINTMAX_TYPE__|__SIG_ATOMIC_TYPE__|__INT8_TYPE__|__INT16_TYPE__|__INT32_TYPE__|__INT64_TYPE__|__UINT8_TYPE__|__UINT16_TYPE__|__UINT32_TYPE__|__UINT64_TYPE__|__INT_LEAST8_TYPE__|__INT_LEAST16_TYPE__|__INT_LEAST32_TYPE__|__INT_LEAST64_TYPE__|__UINT_LEAST8_TYPE__|__UINT_LEAST16_TYPE__|__UINT_LEAST32_TYPE__|__UINT_LEAST64_TYPE__|__INT_FAST8_TYPE__|__INT_FAST16_TYPE__|__INT_FAST32_TYPE__|__INT_FAST64_TYPE__|__UINT_FAST8_TYPE__|__UINT_FAST16_TYPE__|__UINT_FAST32_TYPE__|__UINT_FAST64_TYPE__|__INTPTR_TYPE__|__UINTPTR_TYPE__|__CHAR_BIT__|__SCHAR_MAX__|__WCHAR_MAX__|__SHRT_MAX__|__INT_MAX__|__LONG_MAX__|__LONG_LONG_MAX__|__WINT_MAX__|__SIZE_MAX__|__PTRDIFF_MAX__|__INTMAX_MAX__|__UINTMAX_MAX__|__SIG_ATOMIC_MAX__|__INT8_MAX__|__INT16_MAX__|__INT32_MAX__|__INT64_MAX__|__UINT8_MAX__|__UINT16_MAX__|__UINT32_MAX__|__UINT64_MAX__|__INT_LEAST8_MAX__|__INT_LEAST16_MAX__|__INT_LEAST32_MAX__|__INT_LEAST64_MAX__|__UINT_LEAST8_MAX__|__UINT_LEAST16_MAX__|__UINT_LEAST32_MAX__|__UINT_LEAST64_MAX__|__INT_FAST8_MAX__|__INT_FAST16_MAX__|__INT_FAST32_MAX__|__INT_FAST64_MAX__|__UINT_FAST8_MAX__|__UINT_FAST16_MAX__|__UINT_FAST32_MAX__|__UINT_FAST64_MAX__|__INTPTR_MAX__|__UINTPTR_MAX__|__WCHAR_MIN__|__WINT_MIN__|__SIG_ATOMIC_MIN__|__SCHAR_WIDTH__|__SHRT_WIDTH__|__INT_WIDTH__|__LONG_WIDTH__|__LONG_LONG_WIDTH__|__PTRDIFF_WIDTH__|__SIG_ATOMIC_WIDTH__|__SIZE_WIDTH__|__WCHAR_WIDTH__|__WINT_WIDTH__|__INT_LEAST8_WIDTH__|__INT_LEAST16_WIDTH__|__INT_LEAST32_WIDTH__|__INT_LEAST64_WIDTH__|__INT_FAST8_WIDTH__|__INT_FAST16_WIDTH__|__INT_FAST32_WIDTH__|__INT_FAST64_WIDTH__|__INTPTR_WIDTH__|__INTMAX_WIDTH__|__SIZEOF_INT__|__SIZEOF_LONG__|__SIZEOF_LONG_LONG__|__SIZEOF_SHORT__|__SIZEOF_POINTER__|__SIZEOF_FLOAT__|__SIZEOF_DOUBLE__|__SIZEOF_LONG_DOUBLE__|__SIZEOF_SIZE_T__|__SIZEOF_WCHAR_T__|__SIZEOF_WINT_T__|__SIZEOF_PTRDIFF_T__|__BYTE_ORDER__|__ORDER_LITTLE_ENDIAN__|__ORDER_BIG_ENDIAN__|__ORDER_PDP_ENDIAN__|__FLOAT_WORD_ORDER__|__DEPRECATED|__EXCEPTIONS|__GXX_RTTI|__USING_SJLJ_EXCEPTIONS__|__GXX_EXPERIMENTAL_CXX0X__|__GXX_WEAK__|__NEXT_RUNTIME__|__LP64__|_LP64|__SSP__|__SSP_ALL__|__SSP_STRONG__|__SSP_EXPLICIT__|__SANITIZE_ADDRESS__|__SANITIZE_THREAD__|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8|__GCC_HAVE_SYNC_COMPARE_AND_SWAP_16|__HAVE_SPECULATION_SAFE_VALUE|__GCC_HAVE_DWARF2_CFI_ASM|__FP_FAST_FMA|__FP_FAST_FMAF|__FP_FAST_FMAL|__FP_FAST_FMAF16|__FP_FAST_FMAF32|__FP_FAST_FMAF64|__FP_FAST_FMAF128|__FP_FAST_FMAF32X|__FP_FAST_FMAF64X|__FP_FAST_FMAF128X|__GCC_IEC_559|__GCC_IEC_559_COMPLEX|__NO_MATH_ERRNO__|__has_builtin|__has_feature|__has_extension|__has_cpp_attribute|__has_c_attribute|__has_attribute|__has_declspec_attribute|__is_identifier|__has_include|__has_include_next|__has_warning|__BASE_FILE__|__FILE_NAME__|__clang__|__clang_major__|__clang_minor__|__clang_patchlevel__|__clang_version__|__fp16|_Float16)\\\\\\\\b\\\"},{\\\"match\\\":\\\"\\\\\\\\b__([A-Z_]+)__\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$1.cpp\\\"}]},\\\"preprocessor_conditional_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor_conditional_defined\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#d9bc4796b0b_preprocessor_number_literal\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#predefined_macros\\\"},{\\\"include\\\":\\\"#macro_name\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},\\\"preprocessor_conditional_defined\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)defined(?!\\\\\\\\w))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.defined.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.control.defined.cpp\\\"}},\\\"end\\\":\\\"(?:\\\\\\\\)|(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$)))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.control.defined.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#macro_name\\\"}]},\\\"preprocessor_conditional_parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.cpp\\\"}},\\\"name\\\":\\\"meta.parens.preprocessor.conditional.cpp\\\"},\\\"preprocessor_conditional_range\\\":{\\\"begin\\\":\\\"^((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?((?:(?:ifndef|ifdef)|if))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.$6.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"},\\\"6\\\":{}},\\\"contentName\\\":\\\"meta.preprocessor.conditional\\\",\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?:(?=\\\\\\\\n)|(?<=^\\\\\\\\n|[^\\\\\\\\\\\\\\\\]\\\\\\\\n)(?=$))\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor_conditional_context\\\"}]},\\\"preprocessor_conditional_standalone\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"}},\\\"match\\\":\\\"^((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?((?<!\\\\\\\\w)(?:endif|else|elif)(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"keyword.control.directive.$4.cpp\\\"},\\\"preprocessor_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#pragma_mark\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#include\\\"},{\\\"include\\\":\\\"#line\\\"},{\\\"include\\\":\\\"#diagnostic\\\"},{\\\"include\\\":\\\"#undef\\\"},{\\\"include\\\":\\\"#preprocessor_conditional_range\\\"},{\\\"include\\\":\\\"#single_line_macro\\\"},{\\\"include\\\":\\\"#macro\\\"},{\\\"include\\\":\\\"#preprocessor_conditional_standalone\\\"},{\\\"include\\\":\\\"#macro_argument\\\"}]},\\\"qualified_type\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"5\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<11>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<11>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.])\\\",\\\"name\\\":\\\"meta.qualified_type.cpp\\\"},\\\"qualifiers_and_specifiers_post_parameters\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.modifier.specifier.functional.post-parameters.$5.cpp\\\"}},\\\"match\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:(?:override)|(?:volatile)|(?:noexcept)|(?:final)|(?:const))(?!\\\\\\\\w))\\\"}]}},\\\"match\\\":\\\"((?:(?:(?:(?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)(?<!\\\\\\\\w)(?:(?:override)|(?:volatile)|(?:noexcept)|(?:final)|(?:const))(?!\\\\\\\\w))+)(?=\\\\\\\\s*(?:\\\\\\\\{|;|\\\\\\\\n|\\\\\\\\r|=))\\\"},\\\"scope_resolution\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]}},\\\"match\\\":\\\"(::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+\\\"},\\\"scope_resolution_function_call\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_function_call_inner_generated\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]}},\\\"match\\\":\\\"(::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+\\\"},\\\"scope_resolution_function_call_inner_generated\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_function_call_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.function.call.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.call.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::)\\\"},\\\"scope_resolution_function_definition\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_function_definition_inner_generated\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]}},\\\"match\\\":\\\"(::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+\\\"},\\\"scope_resolution_function_definition_inner_generated\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_function_definition_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.function.definition.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::)\\\"},\\\"scope_resolution_function_definition_operator_overload\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_function_definition_operator_overload_inner_generated\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]}},\\\"match\\\":\\\"(::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+\\\"},\\\"scope_resolution_function_definition_operator_overload_inner_generated\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_function_definition_operator_overload_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.function.definition.operator-overload.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.function.definition.operator-overload.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::)\\\"},\\\"scope_resolution_inner_generated\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::)\\\"},\\\"scope_resolution_namespace_alias\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_namespace_alias_inner_generated\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]}},\\\"match\\\":\\\"(::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+\\\"},\\\"scope_resolution_namespace_alias_inner_generated\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_namespace_alias_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.namespace.alias.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.alias.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::)\\\"},\\\"scope_resolution_namespace_block\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_namespace_block_inner_generated\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]}},\\\"match\\\":\\\"(::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+\\\"},\\\"scope_resolution_namespace_block_inner_generated\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_namespace_block_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.namespace.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.block.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::)\\\"},\\\"scope_resolution_namespace_using\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_namespace_using_inner_generated\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]}},\\\"match\\\":\\\"(::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+\\\"},\\\"scope_resolution_namespace_using_inner_generated\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_namespace_using_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.namespace.using.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::)\\\"},\\\"scope_resolution_parameter\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_parameter_inner_generated\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]}},\\\"match\\\":\\\"(::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+\\\"},\\\"scope_resolution_parameter_inner_generated\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_parameter_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.parameter.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.parameter.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::)\\\"},\\\"scope_resolution_template_call\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_template_call_inner_generated\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]}},\\\"match\\\":\\\"(::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+\\\"},\\\"scope_resolution_template_call_inner_generated\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_template_call_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.template.call.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.call.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::)\\\"},\\\"scope_resolution_template_definition\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_template_definition_inner_generated\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]}},\\\"match\\\":\\\"(::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<3>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+\\\"},\\\"scope_resolution_template_definition_inner_generated\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_template_definition_inner_generated\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"4\\\":{},\\\"5\\\":{\\\"name\\\":\\\"entity.name.scope-resolution.template.definition.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"7\\\":{},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.template.definition.cpp\\\"}},\\\"match\\\":\\\"((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)((?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<7>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?(::)\\\"},\\\"semicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"simple_type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"9\\\":{},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{},\\\"13\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"15\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<12>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?\\\"},\\\"single_line_macro\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#macro\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"^((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))#define.*(?<![\\\\\\\\\\\\\\\\])(?:\\\\\\\\n|$)\\\"},\\\"sizeof_operator\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)sizeof(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.sizeof.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.sizeof.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.sizeof\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.sizeof.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"sizeof_variadic_operator\\\":{\\\"begin\\\":\\\"(\\\\\\\\bsizeof\\\\\\\\.\\\\\\\\.\\\\\\\\.)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.sizeof.variadic.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.sizeof.variadic.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.sizeof.variadic\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.sizeof.variadic.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"square_brackets\\\":{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\\\\\]\\\\\\\\)]))?(\\\\\\\\[)(?!\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square\\\"}},\\\"name\\\":\\\"meta.bracket.square.access\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"standard_declares\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.struct.declare.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.struct.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"13\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"((?<!\\\\\\\\w)struct(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\b(?!override\\\\\\\\W|override\\\\\\\\$|final\\\\\\\\W|final\\\\\\\\$)((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\S)(?![:{a-zA-Z])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.union.declare.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.union.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"13\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"((?<!\\\\\\\\w)union(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\b(?!override\\\\\\\\W|override\\\\\\\\$|final\\\\\\\\W|final\\\\\\\\$)((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\S)(?![:{a-zA-Z])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum.declare.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.enum.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"13\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"((?<!\\\\\\\\w)enum(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\b(?!override\\\\\\\\W|override\\\\\\\\$|final\\\\\\\\W|final\\\\\\\\$)((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\S)(?![:{a-zA-Z])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.declare.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"13\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"((?<!\\\\\\\\w)class(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\b(?!override\\\\\\\\W|override\\\\\\\\$|final\\\\\\\\W|final\\\\\\\\$)((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\S)(?![:{a-zA-Z])\\\"}]},\\\"static_assert\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)static_assert|_Static_assert(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.static_assert.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.static_assert.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.static_assert.cpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)(?:\\\\\\\\s+)?(?=(?:L|u8|u|U(?:\\\\\\\\s+)?\\\\\\\\\\\\\\\")?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.cpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.static_assert.message.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_context\\\"}]},{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"std_space\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"1\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"(?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)\\\"},\\\"storage_specifiers\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.specifier.$3.cpp\\\"}},\\\"match\\\":\\\"((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const))(?!\\\\\\\\w))\\\"},\\\"storage_types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#storage_specifiers\\\"},{\\\"include\\\":\\\"#inline_builtin_storage_type\\\"},{\\\"include\\\":\\\"#decltype\\\"},{\\\"include\\\":\\\"#typename\\\"}]},\\\"string_context\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((?:u|u8|U|L)?)\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"}},\\\"end\\\":\\\"(\\\\\\\")(?:((?:[a-zA-Z]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)|(_(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.reserved.string.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.string.cpp\\\"}},\\\"name\\\":\\\"string.quoted.double.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8})\\\",\\\"name\\\":\\\"constant.character.escape.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\"?\\\\\\\\\\\\\\\\abfnrtv]\\\",\\\"name\\\":\\\"constant.character.escape.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-7]{1,3}\\\",\\\"name\\\":\\\"constant.character.escape.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.unknown-escape.cpp\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\\\\\\\\\x0*[0-9a-fA-F]{2}(?![0-9a-fA-F]))|((?:\\\\\\\\\\\\\\\\x[0-9a-fA-F]*|\\\\\\\\\\\\\\\\x)))\\\"},{\\\"include\\\":\\\"#string_escapes_context_c\\\"}]},{\\\"begin\\\":\\\"(?<![0-9A-Fa-f])((?:u|u8|U|L)?)'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"}},\\\"end\\\":\\\"(')(?:((?:[a-zA-Z]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)|(_(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.reserved.character.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.character.cpp\\\"}},\\\"name\\\":\\\"string.quoted.single.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.unknown-escape.cpp\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\\\\\\\\\x0*[0-9a-fA-F]{2}(?![0-9a-fA-F]))|((?:\\\\\\\\\\\\\\\\x[0-9a-fA-F]*|\\\\\\\\\\\\\\\\x)))\\\"},{\\\"include\\\":\\\"#string_escapes_context_c\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"((?:[uUL]8?)?R)\\\\\\\\\\\\\\\"(?:(?:_r|re)|regex)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)(?:(?:_r|re)|regex)\\\\\\\\\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"}},\\\"name\\\":\\\"string.quoted.double.raw.regex.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.regexp.python\\\"}]},{\\\"begin\\\":\\\"((?:[uUL]8?)?R)\\\\\\\\\\\\\\\"(?:glsl|GLSL)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)(?:glsl|GLSL)\\\\\\\\\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"}},\\\"name\\\":\\\"meta.string.quoted.double.raw.glsl.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.glsl\\\"}]},{\\\"begin\\\":\\\"((?:[uUL]8?)?R)\\\\\\\\\\\\\\\"(?:[pP]?(?:sql|SQL)|d[dm]l)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)(?:[pP]?(?:sql|SQL)|d[dm]l)\\\\\\\\\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.cpp\\\"}},\\\"name\\\":\\\"meta.string.quoted.double.raw.sql.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sql\\\"}]},{\\\"begin\\\":\\\"((?:u|u8|U|L)?R)\\\\\\\"(?:([^ ()\\\\\\\\\\\\\\\\\\\\\\\\t]{0,16})|([^ ()\\\\\\\\\\\\\\\\\\\\\\\\t]*))\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.delimiter-too-long\\\"}},\\\"end\\\":\\\"(\\\\\\\\)\\\\\\\\2(\\\\\\\\3)\\\\\\\")(?:((?:[a-zA-Z]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)|(_(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.delimiter-too-long\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.reserved.string.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.suffix.literal.user-defined.string.cpp\\\"}},\\\"name\\\":\\\"string.quoted.double.raw\\\"}]},\\\"string_escapes_context_c\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[abefnprtv'\\\\\\\"?]|[0-3][0-7]{,2}|[4-7]\\\\\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape\\\"},{\\\"match\\\":\\\"(?!%')(?!%\\\\\\\")%(\\\\\\\\d+\\\\\\\\$)?[#0\\\\\\\\- +']*[,;:_]?((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?(\\\\\\\\.((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]\\\",\\\"name\\\":\\\"constant.other.placeholder\\\"}]},\\\"struct_block\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)struct(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.struct.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.struct.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.struct.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.struct.cpp\\\"}},\\\"name\\\":\\\"meta.head.struct.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.struct.cpp\\\"}},\\\"name\\\":\\\"meta.body.struct.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.struct.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"struct_declare\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.struct.declare.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.struct.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"13\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"((?<!\\\\\\\\w)struct(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\b(?!override\\\\\\\\W|override\\\\\\\\$|final\\\\\\\\W|final\\\\\\\\$)((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\S)(?![:{a-zA-Z])\\\"},\\\"switch_conditional_parentheses\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.conditional.switch.cpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.conditional.switch.cpp\\\"}},\\\"name\\\":\\\"meta.conditional.switch.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"switch_statement\\\":{\\\"begin\\\":\\\"((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)switch(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.switch.cpp\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.switch.cpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.block.switch.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.switch.cpp\\\"}},\\\"name\\\":\\\"meta.head.switch.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#switch_conditional_parentheses\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.switch.cpp\\\"}},\\\"name\\\":\\\"meta.body.switch.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#default_statement\\\"},{\\\"include\\\":\\\"#case_statement\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.switch.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"template_argument_defaulted\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.template.argument.$1.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.template.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"}},\\\"match\\\":\\\"(?<=<|,)(?:\\\\\\\\s+)?((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)\\\\\\\\s+((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\\\\\s+)?(\\\\\\\\=)\\\"},\\\"template_call_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#scope_resolution_template_call_inner_generated\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma_in_template_argument\\\"},{\\\"include\\\":\\\"#qualified_type\\\"}]},\\\"template_call_innards\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!<)<(?!<)(?:(?:(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/)))|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<1>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+\\\",\\\"name\\\":\\\"meta.template.call.cpp\\\"},\\\"template_call_range\\\":{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},\\\"template_definition\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(template)(?:\\\\\\\\s+)?(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.template.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.definition.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.definition.cpp\\\"}},\\\"name\\\":\\\"meta.template.definition.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\w)(?:\\\\\\\\s+)?<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"include\\\":\\\"#template_definition_context\\\"}]},\\\"template_definition_argument\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"storage.type.template.argument.$3.cpp\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"storage.type.template.argument.$0.cpp\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.template.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.template.argument.$6.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.vararg-ellipses.template.definition.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.type.template.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"storage.type.template.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.definition.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.template.argument.$11.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"entity.name.type.template.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.definition.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"storage.type.template.argument.$14.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"entity.name.type.template.cpp\\\"},\\\"16\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.comma.template.argument.cpp\\\"}},\\\"match\\\":\\\"((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)|((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\s+)+)((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*))|((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)(?:\\\\\\\\s+)?(\\\\\\\\.\\\\\\\\.\\\\\\\\.)(?:\\\\\\\\s+)?((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*))|(?<!\\\\\\\\w)(template)(?:\\\\\\\\s+)?(<)(?:\\\\\\\\s+)?((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)(?:\\\\\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\\\\\s+)?(>)(?:\\\\\\\\s+)?(class|typename)(?:\\\\\\\\s+((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*))?)(?:\\\\\\\\s+)?(?:(\\\\\\\\=)(?:\\\\\\\\s+)?(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)?(?:(,)|(?=>|$))\\\"},\\\"template_definition_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_template_definition_inner_generated\\\"},{\\\"include\\\":\\\"#template_definition_argument\\\"},{\\\"include\\\":\\\"#template_argument_defaulted\\\"},{\\\"include\\\":\\\"#template_call_innards\\\"},{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"template_explicit_instantiation\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.specifier.extern.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.template.cpp\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(extern)\\\\\\\\s+)?(template)\\\\\\\\s+\\\",\\\"name\\\":\\\"meta.template.explicit-instantiation.cpp\\\"},\\\"template_isolated_definition\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.template.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.definition.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.template.definition.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_definition_context\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.definition.cpp\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(template)(?:\\\\\\\\s+)?(<)(.*)(>)(?:\\\\\\\\s+)?$\\\"},\\\"ternary_operator\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.cpp\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#predefined_macros\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#memory_operators\\\"},{\\\"include\\\":\\\"#wordlike_operators\\\"},{\\\"include\\\":\\\"#type_casting_operators\\\"},{\\\"include\\\":\\\"#control_flow_keywords\\\"},{\\\"include\\\":\\\"#exception_keywords\\\"},{\\\"include\\\":\\\"#the_this_keyword\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#builtin_storage_type_initilizer\\\"},{\\\"include\\\":\\\"#qualifiers_and_specifiers_post_parameters\\\"},{\\\"include\\\":\\\"#functional_specifiers_pre_parameters\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#lambdas\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#function_call\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"include\\\":\\\"#square_brackets\\\"},{\\\"include\\\":\\\"#semicolon\\\"},{\\\"include\\\":\\\"#comma\\\"}]},\\\"the_this_keyword\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"variable.language.this.cpp\\\"}},\\\"match\\\":\\\"((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)this(?!\\\\\\\\w))\\\"},\\\"type_alias\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.typename.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#storage_specifiers\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"17\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"18\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"meta.declaration.type.alias.value.unknown.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"21\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"22\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"23\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"24\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"25\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"26\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"27\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"28\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.cpp\\\"},\\\"29\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"30\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.cpp\\\"},\\\"31\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"match\\\":\\\"(using)\\\\\\\\s+(?!namespace)((?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)(?:\\\\\\\\s+)?((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?(?:\\\\\\\\s+)?(\\\\\\\\=)(?:\\\\\\\\s+)?((?:typename)?)(?:\\\\\\\\s+)?((?:(?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)(?<!\\\\\\\\w)(?:(?:thread_local)|(?:volatile)|(?:register)|(?:restrict)|(?:static)|(?:extern)|(?:const))(?!\\\\\\\\w)\\\\\\\\s+)+)?(?:(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<19>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<19>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))|(.*(?<!;)))(?:(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?:(\\\\\\\\[)(\\\\\\\\w*)(\\\\\\\\])(?:\\\\\\\\s+)?)?(?:\\\\\\\\s+)?(?:(;)|\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.declaration.type.alias.cpp\\\"},\\\"type_casting_operators\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.wordlike.cpp keyword.operator.cast.$3.cpp\\\"}},\\\"match\\\":\\\"((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:(?:reinterpret_cast)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast))(?!\\\\\\\\w))\\\"},\\\"typedef_class\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typedef(?!\\\\\\\\w))(?:\\\\\\\\s+)?(?=(?<!\\\\\\\\w)class(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.typedef.cpp\\\"}},\\\"end\\\":\\\"(?<=;)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)class(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.class.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.class.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.class.cpp\\\"}},\\\"name\\\":\\\"meta.head.class.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.class.cpp\\\"}},\\\"name\\\":\\\"meta.body.class.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.class.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"entity.name.type.alias.cpp\\\"}},\\\"match\\\":\\\"(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\"}]}]}]},\\\"typedef_function_pointer\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typedef(?!\\\\\\\\w))(?:\\\\\\\\s+)?(?=.*\\\\\\\\(\\\\\\\\*\\\\\\\\s*(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\s*\\\\\\\\))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.typedef.cpp\\\"}},\\\"end\\\":\\\"(?<=;)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<18>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()(\\\\\\\\*)(?:\\\\\\\\s+)?((?:(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*)?)(?:\\\\\\\\s+)?(?:(\\\\\\\\[)(\\\\\\\\w*)(\\\\\\\\])(?:\\\\\\\\s+)?)*(\\\\\\\\))(?:\\\\\\\\s+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"13\\\":{},\\\"14\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"16\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"18\\\":{},\\\"19\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"20\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"21\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"23\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"24\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"25\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"26\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"27\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"28\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"29\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"30\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"31\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"32\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.function.pointer.cpp\\\"},\\\"33\\\":{\\\"name\\\":\\\"punctuation.definition.function.pointer.dereference.cpp\\\"},\\\"34\\\":{\\\"name\\\":\\\"entity.name.type.alias.cpp entity.name.type.pointer.function.cpp\\\"},\\\"35\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.cpp\\\"},\\\"36\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"37\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.cpp\\\"},\\\"38\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.function.pointer.cpp\\\"},\\\"39\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.function.pointer.cpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=[{=,);>]|\\\\\\\\n)(?!\\\\\\\\()\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.function.pointer.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_parameter_context\\\"}]}]},\\\"typedef_struct\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typedef(?!\\\\\\\\w))(?:\\\\\\\\s+)?(?=(?<!\\\\\\\\w)struct(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.typedef.cpp\\\"}},\\\"end\\\":\\\"(?<=;)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)struct(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.struct.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.struct.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.struct.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.struct.cpp\\\"}},\\\"name\\\":\\\"meta.head.struct.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.struct.cpp\\\"}},\\\"name\\\":\\\"meta.body.struct.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.struct.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"entity.name.type.alias.cpp\\\"}},\\\"match\\\":\\\"(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\"}]}]}]},\\\"typedef_union\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typedef(?!\\\\\\\\w))(?:\\\\\\\\s+)?(?=(?<!\\\\\\\\w)union(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.typedef.cpp\\\"}},\\\"end\\\":\\\"(?<=;)\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<!\\\\\\\\w)union(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.union.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.union.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.union.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.union.cpp\\\"}},\\\"name\\\":\\\"meta.head.union.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.union.cpp\\\"}},\\\"name\\\":\\\"meta.body.union.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.union.cpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"entity.name.type.alias.cpp\\\"}},\\\"match\\\":\\\"(((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\"},{\\\"match\\\":\\\",\\\"}]}]}]},\\\"typeid_operator\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)typeid(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.functionlike.cpp keyword.operator.typeid.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.operator.typeid.cpp\\\"}},\\\"contentName\\\":\\\"meta.arguments.operator.typeid\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.operator.typeid.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#evaluation_context\\\"}]},\\\"typename\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"5\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"meta.qualified_type.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:struct)|(?:class)|(?:union)|(?:enum))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$0.cpp\\\"},{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#scope_resolution_inner_generated\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.begin.template.call.cpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.call.cpp\\\"}},\\\"name\\\":\\\"meta.template.call.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_context\\\"}]},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.type.cpp\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.type.cpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.scope-resolution.type.cpp\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"13\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"14\\\":{},\\\"15\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"16\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"17\\\":{}},\\\"match\\\":\\\"(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?<!\\\\\\\\w)typename(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(\\\\\\\\s*+((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?:(?:(?:unsigned)|(?:signed)|(?:short)|(?:long))|(?:(?:struct)|(?:class)|(?:union)|(?:enum)))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:((?:::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<17>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*+)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?!(?:(?:transaction_safe_dynamic)|(?:__has_cpp_attribute)|(?:reinterpret_cast)|(?:transaction_safe)|(?:atomic_noexcept)|(?:atomic_commit)|(?:__has_include)|(?:atomic_cancel)|(?:synchronized)|(?:thread_local)|(?:dynamic_cast)|(?:static_cast)|(?:const_cast)|(?:constexpr)|(?:co_return)|(?:constinit)|(?:namespace)|(?:protected)|(?:consteval)|(?:constexpr)|(?:constexpr)|(?:co_return)|(?:consteval)|(?:co_await)|(?:continue)|(?:template)|(?:reflexpr)|(?:volatile)|(?:register)|(?:co_await)|(?:co_yield)|(?:restrict)|(?:noexcept)|(?:volatile)|(?:override)|(?:explicit)|(?:decltype)|(?:operator)|(?:noexcept)|(?:noexcept)|(?:typename)|(?:requires)|(?:co_yield)|(?:nullptr)|(?:alignof)|(?:alignas)|(?:default)|(?:mutable)|(?:virtual)|(?:mutable)|(?:private)|(?:include)|(?:warning)|(?:_Pragma)|(?:defined)|(?:typedef)|(?:__asm__)|(?:concept)|(?:define)|(?:module)|(?:sizeof)|(?:switch)|(?:delete)|(?:pragma)|(?:and_eq)|(?:inline)|(?:xor_eq)|(?:typeid)|(?:import)|(?:extern)|(?:public)|(?:bitand)|(?:static)|(?:export)|(?:return)|(?:friend)|(?:ifndef)|(?:not_eq)|(?:false)|(?:final)|(?:break)|(?:const)|(?:catch)|(?:endif)|(?:ifdef)|(?:undef)|(?:error)|(?:audit)|(?:while)|(?:using)|(?:axiom)|(?:or_eq)|(?:compl)|(?:throw)|(?:bitor)|(?:const)|(?:line)|(?:case)|(?:else)|(?:this)|(?:true)|(?:goto)|(?:else)|(?:NULL)|(?:elif)|(?:new)|(?:asm)|(?:xor)|(?:and)|(?:try)|(?:not)|(?:for)|(?:do)|(?:if)|(?:or)|(?:if))\\\\\\\\b)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\\\\\\b((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<17>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)?(?![\\\\\\\\w<:.]))\\\"},\\\"undef\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.undef.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.directive.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.cpp\\\"}},\\\"match\\\":\\\"(^((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(#)(?:\\\\\\\\s+)?undef\\\\\\\\b)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"meta.preprocessor.undef.cpp\\\"},\\\"union_block\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)union(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:(?={)|(?:((?:(?:(?:\\\\\\\\[\\\\\\\\[.*?\\\\\\\\]\\\\\\\\]|__attribute(?:__)?\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\(.*?\\\\\\\\)\\\\\\\\s*\\\\\\\\))|__declspec\\\\\\\\(.*?\\\\\\\\))|alignas\\\\\\\\(.*?\\\\\\\\))(?!\\\\\\\\)))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?((?:(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*+)?(?:((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(:(?!:)))?)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.head.union.cpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes_context\\\"},{\\\"include\\\":\\\"#number_literal\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.union.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.modifier.final.cpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?:((?<!\\\\\\\\w)final(?!\\\\\\\\w))((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))?(?=:|{|$)\\\"},{\\\"match\\\":\\\"DLLEXPORT\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.DLLEXPORT.cpp\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*\\\",\\\"name\\\":\\\"entity.name.other.preprocessor.macro.predefined.probably.$0.cpp\\\"}]},\\\"12\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"16\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.colon.inheritance.cpp\\\"}},\\\"end\\\":\\\"(?:(?:(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)(?:\\\\\\\\s+)?(;)|(;))|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.block.union.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<|(?=;))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.union.cpp\\\"}},\\\"name\\\":\\\"meta.head.union.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ever_present_context\\\"},{\\\"include\\\":\\\"#inheritance_context\\\"},{\\\"include\\\":\\\"#template_call_range\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|<%|\\\\\\\\?\\\\\\\\?<)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.union.cpp\\\"}},\\\"name\\\":\\\"meta.body.union.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_pointer\\\"},{\\\"include\\\":\\\"#static_assert\\\"},{\\\"include\\\":\\\"#constructor_inline\\\"},{\\\"include\\\":\\\"#destructor_inline\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\}|%>|\\\\\\\\?\\\\\\\\?>)[\\\\\\\\s]*\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"[\\\\\\\\s]*(?=;)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.tail.union.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"union_declare\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.union.declare.cpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.union.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"storage.modifier.pointer.cpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\&((?:(?:(?:\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))){2,}\\\\\\\\&\\\",\\\"name\\\":\\\"invalid.illegal.reference-type.cpp\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\",\\\"name\\\":\\\"storage.modifier.reference.cpp\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"11\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"variable.other.object.declare.cpp\\\"},\\\"13\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_comment\\\"}]},\\\"14\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.begin.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.cpp punctuation.definition.comment.end.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*+(\\\\\\\\/\\\\\\\\*)((?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+(\\\\\\\\*\\\\\\\\/))\\\\\\\\s*+\\\"}]}},\\\"match\\\":\\\"((?<!\\\\\\\\w)union(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))?(?:(?:&|\\\\\\\\*)((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z)))*(?:&|\\\\\\\\*))?((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))\\\\\\\\b(?!override\\\\\\\\W|override\\\\\\\\$|final\\\\\\\\W|final\\\\\\\\$)((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))((?:((?:\\\\\\\\s*+\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/\\\\\\\\s*+)+)|(?:\\\\\\\\s++)|(?<=\\\\\\\\W)|(?=\\\\\\\\W)|^|(?:\\\\\\\\n?$)|\\\\\\\\A|\\\\\\\\Z))(?=\\\\\\\\S)(?![:{a-zA-Z])\\\"},\\\"using_name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"}},\\\"match\\\":\\\"(using)\\\\\\\\s+(?!namespace\\\\\\\\b)\\\"},\\\"using_namespace\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(using)\\\\\\\\s+(namespace)\\\\\\\\s+((::)?(?:(?!\\\\\\\\b(?:__has_cpp_attribute|reinterpret_cast|atomic_noexcept|atomic_commit|atomic_cancel|__has_include|thread_local|dynamic_cast|synchronized|static_cast|const_cast|consteval|co_return|protected|constinit|constexpr|co_return|consteval|namespace|constexpr|constexpr|co_await|explicit|volatile|noexcept|co_yield|noexcept|noexcept|requires|typename|decltype|operator|template|continue|co_await|co_yield|volatile|register|restrict|reflexpr|mutable|alignof|include|private|defined|typedef|_Pragma|__asm__|concept|mutable|warning|default|virtual|alignas|public|sizeof|delete|not_eq|bitand|and_eq|xor_eq|typeid|switch|return|struct|static|extern|inline|friend|ifndef|define|pragma|export|import|module|catch|throw|const|or_eq|compl|while|ifdef|const|bitor|union|class|undef|error|break|using|endif|goto|line|enum|this|case|else|elif|else|not|try|for|asm|and|xor|new|do|if|or|if)\\\\\\\\b)(?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w)\\\\\\\\s*+(((?<!<)<(?!<)(?:(?:\\\\\\\\/\\\\\\\\*(?:[^\\\\\\\\*]++|\\\\\\\\*+(?!\\\\\\\\/))*+\\\\\\\\*\\\\\\\\/)|(?:\\\\\\\"(?:[^\\\\\\\"]*|\\\\\\\\\\\\\\\\\\\\\\\")\\\\\\\")|(?:'(?:[^']*|\\\\\\\\\\\\\\\\')')|\\\\\\\\g<6>|(?:(?:[^'\\\\\\\"<>\\\\\\\\/]|\\\\\\\\/[^*])++))*>)\\\\\\\\s*+)?::)*\\\\\\\\s*+)?((?<!\\\\\\\\w)(?:[a-zA-Z_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))(?:[a-zA-Z0-9_]|(?:\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}))*(?!\\\\\\\\w))(?=;|\\\\\\\\n)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.namespace.directive.cpp storage.type.namespace.directive.cpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution_namespace_using_inner_generated\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.cpp punctuation.separator.scope-resolution.namespace.using.cpp\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_range\\\"}]},\\\"6\\\":{},\\\"7\\\":{\\\"name\\\":\\\"entity.name.namespace.cpp\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cpp\\\"}},\\\"name\\\":\\\"meta.using-namespace.cpp\\\"},\\\"vararg_ellipses\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\.\\\\\\\\.\\\\\\\\.(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"punctuation.vararg-ellipses.cpp\\\"},\\\"wordlike_operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:noexcept)|(?:xor_eq)|(?:and_eq)|(?:delete)|(?:not_eq)|(?:bitand)|(?:bitor)|(?:compl)|(?:or_eq)|(?:not)|(?:xor)|(?:new)|(?:and)|(?:or))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"keyword.operator.wordlike.cpp keyword.operator.$0.cpp\\\"}]}},\\\"scopeName\\\":\\\"source.cpp\\\",\\\"embeddedLangs\\\":[\\\"cpp-macro\\\",\\\"regexp\\\",\\\"glsl\\\",\\\"sql\\\"],\\\"aliases\\\":[\\\"c++\\\"]}\"))\n\nexport default [\n...cpp_macro,\n...regexp,\n...glsl,\n...sql,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Shell\\\",\\\"name\\\":\\\"shellscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}],\\\"repository\\\":{\\\"alias_statement\\\":{\\\"begin\\\":\\\"(?:(?:[ \\\\\\\\t]*+)(alias)(?:[ \\\\\\\\t]*+)((?:(?:((?<!\\\\\\\\w)-\\\\\\\\w+\\\\\\\\b)(?:[ \\\\\\\\t]*+))*))(?:(?:[ \\\\\\\\t]*+)(?:((?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w))(?:(?:(\\\\\\\\[)((?:(?:(?:(?:\\\\\\\\$?)(?:(?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w))|@)|\\\\\\\\*)|(-?\\\\\\\\d+)))(\\\\\\\\]))?))(?:(?:(\\\\\\\\=)|(\\\\\\\\+\\\\\\\\=))|(\\\\\\\\-\\\\\\\\=))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.alias.shell\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)-\\\\\\\\w+\\\\\\\\b\\\",\\\"name\\\":\\\"string.unquoted.argument.shell constant.other.option.shell\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"string.unquoted.argument.shell constant.other.option.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.assignment.shell\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.array.access.shell\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.assignment.shell\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.integer.shell\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.array.access.shell\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.assignment.shell\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.shell\\\"},\\\"11\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.shell\\\"}},\\\"end\\\":\\\"(?:(?= |\\\\\\\\t|$)|(?:(?:(?:(;)|(&&))|(\\\\\\\\|\\\\\\\\|))|(&)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.semicolon.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.statement.and.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.statement.or.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.statement.background.shell\\\"}},\\\"name\\\":\\\"meta.expression.assignment.alias.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#normal_context\\\"}]},\\\"argument\\\":{\\\"begin\\\":\\\"(?:[ \\\\\\\\t]++)(?!(?:&|\\\\\\\\||\\\\\\\\(|\\\\\\\\[|#|\\\\\\\\n|$|;))\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?= |\\\\\\\\t|;|\\\\\\\\||&|$|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.argument.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#argument_context\\\"},{\\\"include\\\":\\\"#line_continuation\\\"}]},\\\"argument_context\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.argument.shell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"variable.language.special.wildcard.shell\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#numeric_literal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.$1.shell\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(\\\\\\\\b(?:true|false)\\\\\\\\b)(?!\\\\\\\\w)\\\"}]}},\\\"match\\\":\\\"(?:[ \\\\\\\\t]*+)((?:[^ \\\\t\\\\n>&;<>\\\\\\\\(\\\\\\\\)\\\\\\\\$`\\\\\\\\\\\\\\\\\\\\\\\"'<\\\\\\\\|]+)(?!>))\\\"},{\\\"include\\\":\\\"#normal_context\\\"}]},\\\"arithmetic_double\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arithmetic.double.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\)(?:\\\\\\\\s*)\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arithmetic.double.shell\\\"}},\\\"name\\\":\\\"meta.arithmetic.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#math\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"arithmetic_no_dollar\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arithmetic.single.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arithmetic.single.shell\\\"}},\\\"name\\\":\\\"meta.arithmetic.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#math\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"array_access_inline\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.array.shell\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special_expansion\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#variable\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.array.shell\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\[)([^\\\\\\\\[\\\\\\\\]]+)(\\\\\\\\]))\\\"},\\\"array_value\\\":{\\\"begin\\\":\\\"(?:[ \\\\\\\\t]*+)(?:((?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w))(?:(?:(\\\\\\\\[)((?:(?:(?:(?:\\\\\\\\$?)(?:(?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w))|@)|\\\\\\\\*)|(-?\\\\\\\\d+)))(\\\\\\\\]))?))(?:(?:(\\\\\\\\=)|(\\\\\\\\+\\\\\\\\=))|(\\\\\\\\-\\\\\\\\=))(?:[ \\\\\\\\t]*+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.assignment.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.array.access.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.assignment.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.integer.shell\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.array.access.shell\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.shell\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.shell\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.shell\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.array.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.shell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.assignment.array.shell entity.other.attribute-name.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.shell punctuation.definition.assignment.shell\\\"}},\\\"match\\\":\\\"(?:((?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w))(\\\\\\\\=))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.named-array.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.shell entity.other.attribute-name.bracket.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.named-array.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.assignment.shell\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\[)(.+?)(\\\\\\\\])(\\\\\\\\=))\\\"},{\\\"include\\\":\\\"#normal_context\\\"},{\\\"include\\\":\\\"#simple_unquoted\\\"}]},\\\"assignment_statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#array_value\\\"},{\\\"include\\\":\\\"#modified_assignment_statement\\\"},{\\\"include\\\":\\\"#normal_assignment_statement\\\"}]},\\\"basic_command_name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.$1.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.call.shell entity.name.command.shell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:continue|return|break)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"keyword.control.$0.shell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:unfunction|continue|autoload|unsetopt|bindkey|builtin|getopts|command|declare|unalias|history|unlimit|typeset|suspend|source|printf|unhash|disown|ulimit|return|which|alias|break|false|print|shift|times|umask|umask|unset|read|type|exec|eval|wait|echo|dirs|jobs|kill|hash|stat|exit|test|trap|true|let|set|pwd|cd|fg|bg|fc|:|\\\\\\\\.)(?!\\\\\\\\/))(?!\\\\\\\\w)(?!-)\\\",\\\"name\\\":\\\"support.function.builtin.shell\\\"},{\\\"include\\\":\\\"#variable\\\"}]}},\\\"match\\\":\\\"(?:(?:(?!(?:!|&|\\\\\\\\||\\\\\\\\(|\\\\\\\\)|\\\\\\\\{|\\\\\\\\[|<|>|#|\\\\\\\\n|$|;|[ \\\\\\\\t]))(?!nocorrect |nocorrect\\\\t|nocorrect$|readonly |readonly\\\\t|readonly$|function |function\\\\t|function$|foreach |foreach\\\\t|foreach$|coproc |coproc\\\\t|coproc$|logout |logout\\\\t|logout$|export |export\\\\t|export$|select |select\\\\t|select$|repeat |repeat\\\\t|repeat$|pushd |pushd\\\\t|pushd$|until |until\\\\t|until$|while |while\\\\t|while$|local |local\\\\t|local$|case |case\\\\t|case$|done |done\\\\t|done$|elif |elif\\\\t|elif$|else |else\\\\t|else$|esac |esac\\\\t|esac$|popd |popd\\\\t|popd$|then |then\\\\t|then$|time |time\\\\t|time$|for |for\\\\t|for$|end |end\\\\t|end$|fi |fi\\\\t|fi$|do |do\\\\t|do$|in |in\\\\t|in$|if |if\\\\t|if$))(?:((?<=^|;|&|[ \\\\\\\\t])(?:readonly|declare|typeset|export|local)(?=[ \\\\\\\\t]|;|&|$))|((?!\\\\\\\"|'|\\\\\\\\\\\\\\\\\\\\\\\\n?$)(?:[^!'\\\\\\\"<> \\\\\\\\t\\\\\\\\n\\\\\\\\r]+?)))(?:(?= |\\\\\\\\t)|(?:(?=;|\\\\\\\\||&|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`|\\\\\\\\{|\\\\\\\\}|[ \\\\\\\\t]*#|\\\\\\\\])(?<!\\\\\\\\\\\\\\\\))))\\\",\\\"name\\\":\\\"meta.statement.command.name.basic.shell\\\"},\\\"block_comment\\\":{\\\"begin\\\":\\\"(?:(?:\\\\\\\\s*+)(\\\\\\\\/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.shell\\\"}},\\\"name\\\":\\\"comment.block.shell\\\"},\\\"boolean\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.$0.shell\\\"},\\\"case_statement\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\bcase\\\\\\\\b)(?:[ \\\\\\\\t]*+)(.+?)(?:[ \\\\\\\\t]*+)(\\\\\\\\bin\\\\\\\\b))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.case.shell\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.in.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\besac\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.esac.shell\\\"}},\\\"name\\\":\\\"meta.case.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.pattern.case.default.shell\\\"}},\\\"match\\\":\\\"(?:[ \\\\\\\\t]*+)(\\\\\\\\* *\\\\\\\\))\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\))(?!(?:[ \\\\\\\\t]*+)(?:esac\\\\\\\\b|$))\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:(?=\\\\\\\\besac\\\\\\\\b)|(\\\\\\\\)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.pattern.case.shell\\\"}},\\\"name\\\":\\\"meta.case.entry.pattern.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#case_statement_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:(;;)|(?=\\\\\\\\besac\\\\\\\\b))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.case.shell\\\"}},\\\"name\\\":\\\"meta.case.entry.body.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#typical_statements\\\"},{\\\"include\\\":\\\"#initial_context\\\"}]}]},\\\"case_statement_context\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"variable.language.special.quantifier.star.shell keyword.operator.quantifier.star.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\",\\\"name\\\":\\\"variable.language.special.quantifier.plus.shell keyword.operator.quantifier.plus.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"variable.language.special.quantifier.question.shell keyword.operator.quantifier.question.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell\\\"},{\\\"match\\\":\\\"@\\\",\\\"name\\\":\\\"variable.language.special.at.shell keyword.operator.at.shell punctuation.definition.regex.at.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.orvariable.language.special.or.shell keyword.operator.alternation.ruby.shell punctuation.definition.regex.alternation.shell punctuation.separator.regex.alternation.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.shell\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\tin| in| |\\\\\\\\t|;;)\\\\\\\\(\\\",\\\"name\\\":\\\"keyword.operator.pattern.case.shell\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\S)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.shell punctuation.definition.regex.group.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.shell punctuation.definition.regex.group.shell\\\"}},\\\"name\\\":\\\"meta.parenthese.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#case_statement_context\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.shell\\\"}},\\\"name\\\":\\\"string.regexp.character-class.shell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.shell\\\"}]},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"[^) \\\\\\\\t\\\\\\\\n\\\\\\\\[\\\\\\\\?\\\\\\\\*\\\\\\\\|\\\\\\\\@]\\\",\\\"name\\\":\\\"string.unquoted.pattern.shell string.regexp.unquoted.shell\\\"}]},\\\"command_name_range\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?:(?= |\\\\\\\\t|;|\\\\\\\\||&|$|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`)|(?=<))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.statement.command.name.shell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:continue|return|break)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"entity.name.function.call.shell entity.name.command.shell keyword.control.$0.shell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:unfunction|continue|autoload|unsetopt|bindkey|builtin|getopts|command|declare|unalias|history|unlimit|typeset|suspend|source|printf|unhash|disown|ulimit|return|which|alias|break|false|print|shift|times|umask|umask|unset|read|type|exec|eval|wait|echo|dirs|jobs|kill|hash|stat|exit|test|trap|true|let|set|pwd|cd|fg|bg|fc|:|\\\\\\\\.)(?!\\\\\\\\/))(?!\\\\\\\\w)(?!-)\\\",\\\"name\\\":\\\"entity.name.function.call.shell entity.name.command.shell support.function.builtin.shell\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.shell entity.name.command.shell\\\"}},\\\"match\\\":\\\"(?:(?<!\\\\\\\\w)(?<=\\\\\\\\G|'|\\\\\\\"|\\\\\\\\}|\\\\\\\\))([^ \\\\\\\\n\\\\\\\\t\\\\\\\\r\\\\\\\"'=;&\\\\\\\\|`\\\\\\\\)\\\\\\\\{<>]+))\\\"},{\\\"begin\\\":\\\"(?:(?:\\\\\\\\G|(?<! |\\\\\\\\t|;|\\\\\\\\||&|\\\\\\\\n|\\\\\\\\{|#))(?:(\\\\\\\\$?)((?:(\\\\\\\")|(')))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.statement.command.name.quoted.shell punctuation.definition.string.shell entity.name.function.call.shell entity.name.command.shell\\\"},\\\"2\\\":{},\\\"3\\\":{\\\"name\\\":\\\"meta.statement.command.name.quoted.shell string.quoted.double.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.statement.command.name.quoted.shell string.quoted.single.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\G)(?<=(?:\\\\\\\\2))\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#continuation_of_single_quoted_command_name\\\"},{\\\"include\\\":\\\"#continuation_of_double_quoted_command_name\\\"}]},{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"include\\\":\\\"#simple_unquoted\\\"}]},\\\"command_statement\\\":{\\\"begin\\\":\\\"(?:(?:[ \\\\\\\\t]*+)(?:(?!(?:!|&|\\\\\\\\||\\\\\\\\(|\\\\\\\\)|\\\\\\\\{|\\\\\\\\[|<|>|#|\\\\\\\\n|$|;|[ \\\\\\\\t]))(?!nocorrect |nocorrect\\\\t|nocorrect$|readonly |readonly\\\\t|readonly$|function |function\\\\t|function$|foreach |foreach\\\\t|foreach$|coproc |coproc\\\\t|coproc$|logout |logout\\\\t|logout$|export |export\\\\t|export$|select |select\\\\t|select$|repeat |repeat\\\\t|repeat$|pushd |pushd\\\\t|pushd$|until |until\\\\t|until$|while |while\\\\t|while$|local |local\\\\t|local$|case |case\\\\t|case$|done |done\\\\t|done$|elif |elif\\\\t|elif$|else |else\\\\t|else$|esac |esac\\\\t|esac$|popd |popd\\\\t|popd$|then |then\\\\t|then$|time |time\\\\t|time$|for |for\\\\t|for$|end |end\\\\t|end$|fi |fi\\\\t|fi$|do |do\\\\t|do$|in |in\\\\t|in$|if |if\\\\t|if$)(?!\\\\\\\\\\\\\\\\\\\\\\\\n?$)))\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?=;|\\\\\\\\||&|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`|\\\\\\\\{|\\\\\\\\}|[ \\\\\\\\t]*#|\\\\\\\\])(?<!\\\\\\\\\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.statement.command.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#command_name_range\\\"},{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"include\\\":\\\"#option\\\"},{\\\"include\\\":\\\"#argument\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#heredoc\\\"}]},\\\"comment\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.number-sign.shell meta.shebang.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.shebang.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.line.number-sign.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.comment.shell\\\"}},\\\"match\\\":\\\"(?:(?:^|(?:[ \\\\\\\\t]++))(?:((?:(#!)(?:.*)))|((?:(#)(?:.*)))))\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block_comment\\\"},{\\\"include\\\":\\\"#line_comment\\\"}]},\\\"compound-command\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.logical-expression.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.logical-expression.shell\\\"}},\\\"name\\\":\\\"meta.scope.logical-expression.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#logical-expression\\\"},{\\\"include\\\":\\\"#initial_context\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\s|^){(?=\\\\\\\\s|$)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.shell\\\"}},\\\"end\\\":\\\"(?<=^|;)\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.shell\\\"}},\\\"name\\\":\\\"meta.scope.group.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]}]},\\\"continuation_of_double_quoted_command_name\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\G(?<=\\\\\\\"))\\\",\\\"beginCaptures\\\":{},\\\"contentName\\\":\\\"meta.statement.command.name.continuation string.quoted.double entity.name.function.call entity.name.command\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.double.shell punctuation.definition.string.end.shell entity.name.function.call.shell entity.name.command.shell\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\$\\\\\\\\n`\\\\\\\"\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.shell\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"continuation_of_single_quoted_command_name\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\G(?<='))\\\",\\\"beginCaptures\\\":{},\\\"contentName\\\":\\\"meta.statement.command.name.continuation string.quoted.single entity.name.function.call entity.name.command\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.single.shell punctuation.definition.string.end.shell entity.name.function.call.shell entity.name.command.shell\\\"}}},\\\"custom_command_names\\\":{\\\"patterns\\\":[]},\\\"custom_commands\\\":{\\\"patterns\\\":[]},\\\"double_quote_context\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\$`\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.escape.shell\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"double_quote_escape_char\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\$`\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.escape.shell\\\"},\\\"floating_keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|;|&| |\\\\\\\\t)(?:then|elif|else|done|end|do|if|fi)(?= |\\\\\\\\t|;|&|$)\\\",\\\"name\\\":\\\"keyword.control.$0.shell\\\"}]},\\\"for_statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(\\\\\\\\bfor\\\\\\\\b)(?:(?:[ \\\\\\\\t]*+)((?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w))(?:[ \\\\\\\\t]*+)(\\\\\\\\bin\\\\\\\\b)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.for.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.for.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.in.shell\\\"}},\\\"end\\\":\\\"(?=;|\\\\\\\\||&|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`|\\\\\\\\{|\\\\\\\\}|[ \\\\\\\\t]*#|\\\\\\\\])(?<!\\\\\\\\\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.for.in.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#simple_unquoted\\\"},{\\\"include\\\":\\\"#normal_context\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\bfor\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.for.shell\\\"}},\\\"end\\\":\\\"(?=;|\\\\\\\\||&|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`|\\\\\\\\{|\\\\\\\\}|[ \\\\\\\\t]*#|\\\\\\\\])(?<!\\\\\\\\\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.for.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arithmetic_double\\\"},{\\\"include\\\":\\\"#normal_context\\\"}]}]},\\\"function_definition\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?:[ \\\\\\\\t]*+)(?:(?:(\\\\\\\\bfunction\\\\\\\\b)(?:[ \\\\\\\\t]*+)([^ \\\\\\\\t\\\\\\\\n\\\\\\\\r\\\\\\\\(\\\\\\\\)=\\\\\\\"']+)(?:(?:(\\\\\\\\()(?:[ \\\\\\\\t]*+)(\\\\\\\\)))?))|(?:([^ \\\\\\\\t\\\\\\\\n\\\\\\\\r\\\\\\\\(\\\\\\\\)=\\\\\\\"']+)(?:[ \\\\\\\\t]*+)(\\\\\\\\()(?:[ \\\\\\\\t]*+)(\\\\\\\\))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.shell\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.shell\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.shell\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.shell\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\}|\\\\\\\\))\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.function.shell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\G(?:\\\\\\\\t| |\\\\\\\\n))\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.shell punctuation.section.function.definition.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.shell punctuation.section.function.definition.shell\\\"}},\\\"name\\\":\\\"meta.function.body.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.shell punctuation.section.function.definition.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.shell punctuation.section.function.definition.shell\\\"}},\\\"name\\\":\\\"meta.function.body.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]},{\\\"include\\\":\\\"#initial_context\\\"}]},\\\"heredoc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:((?<!<)(?:<<-))(?:[ \\\\\\\\t]*+)(\\\\\\\"|')(?:[ \\\\\\\\t]*+)([^\\\\\\\"']+?)(?=\\\\\\\\s|;|&|<|\\\\\\\"|')((?:\\\\\\\\2))(.*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.quote.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.delimiter.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.quote.shell\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#redirect_fix\\\"},{\\\"include\\\":\\\"#typical_statements\\\"}]}},\\\"contentName\\\":\\\"string.quoted.heredoc.indent.$3\\\",\\\"end\\\":\\\"(?:(?:^\\\\\\\\t*)(?:\\\\\\\\3)(?=\\\\\\\\s|;|&|$))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.$0.shell\\\"}},\\\"patterns\\\":[]},{\\\"begin\\\":\\\"(?:((?<!<)(?:<<)(?!<))(?:[ \\\\\\\\t]*+)(\\\\\\\"|')(?:[ \\\\\\\\t]*+)([^\\\\\\\"']+?)(?=\\\\\\\\s|;|&|<|\\\\\\\"|')((?:\\\\\\\\2))(.*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.quote.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.delimiter.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.quote.shell\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#redirect_fix\\\"},{\\\"include\\\":\\\"#typical_statements\\\"}]}},\\\"contentName\\\":\\\"string.quoted.heredoc.no-indent.$3\\\",\\\"end\\\":\\\"(?:^(?:\\\\\\\\3)(?=\\\\\\\\s|;|&|$))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.delimiter.shell\\\"}},\\\"patterns\\\":[]},{\\\"begin\\\":\\\"(?:((?<!<)(?:<<-))(?:[ \\\\\\\\t]*+)([^\\\\\\\"' \\\\\\\\t]+)(?=\\\\\\\\s|;|&|<|\\\\\\\"|')(.*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.delimiter.shell\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#redirect_fix\\\"},{\\\"include\\\":\\\"#typical_statements\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.indent.$2\\\",\\\"end\\\":\\\"(?:(?:^\\\\\\\\t*)(?:\\\\\\\\2)(?=\\\\\\\\s|;|&|$))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.delimiter.shell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double_quote_escape_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(?:((?<!<)(?:<<)(?!<))(?:[ \\\\\\\\t]*+)([^\\\\\\\"' \\\\\\\\t]+)(?=\\\\\\\\s|;|&|<|\\\\\\\"|')(.*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.delimiter.shell\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#redirect_fix\\\"},{\\\"include\\\":\\\"#typical_statements\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.no-indent.$2\\\",\\\"end\\\":\\\"(?:^(?:\\\\\\\\2)(?=\\\\\\\\s|;|&|$))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.heredoc.delimiter.shell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double_quote_escape_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]}]},\\\"herestring\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(('))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.herestring.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.single.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.shell\\\"}},\\\"contentName\\\":\\\"string.quoted.single.shell\\\",\\\"end\\\":\\\"(')\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.single.shell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.shell\\\"}},\\\"name\\\":\\\"meta.herestring.shell\\\"},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*((\\\\\\\"))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.herestring.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.double.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.shell\\\"}},\\\"contentName\\\":\\\"string.quoted.double.shell\\\",\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.double.shell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.shell\\\"}},\\\"name\\\":\\\"meta.herestring.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double_quote_context\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.herestring.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.herestring.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]}},\\\"match\\\":\\\"(<<<)\\\\\\\\s*(([^\\\\\\\\s)\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+)\\\",\\\"name\\\":\\\"meta.herestring.shell\\\"}]},\\\"initial_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pipeline\\\"},{\\\"include\\\":\\\"#normal_statement_seperator\\\"},{\\\"include\\\":\\\"#logical_expression_double\\\"},{\\\"include\\\":\\\"#logical_expression_single\\\"},{\\\"include\\\":\\\"#assignment_statement\\\"},{\\\"include\\\":\\\"#case_statement\\\"},{\\\"include\\\":\\\"#for_statement\\\"},{\\\"include\\\":\\\"#loop\\\"},{\\\"include\\\":\\\"#function_definition\\\"},{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"include\\\":\\\"#arithmetic_double\\\"},{\\\"include\\\":\\\"#misc_ranges\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#herestring\\\"},{\\\"include\\\":\\\"#redirection\\\"},{\\\"include\\\":\\\"#pathname\\\"},{\\\"include\\\":\\\"#floating_keyword\\\"},{\\\"include\\\":\\\"#alias_statement\\\"},{\\\"include\\\":\\\"#normal_statement\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#support\\\"}]},\\\"inline_comment\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.shell punctuation.definition.comment.begin.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.block.shell\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.shell punctuation.definition.comment.end.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"comment.block.shell\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\/\\\\\\\\*)((?:(?:[^\\\\\\\\*]|(?:(?:\\\\\\\\*++)[^\\\\\\\\/]))*+)((?:(?:\\\\\\\\*++)\\\\\\\\/)))\\\"},\\\"interpolation\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#arithmetic_dollar\\\"},{\\\"include\\\":\\\"#subshell_dollar\\\"},{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.evaluation.backticks.shell\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.evaluation.backticks.shell\\\"}},\\\"name\\\":\\\"string.interpolated.backtick.shell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[`\\\\\\\\\\\\\\\\$]\\\",\\\"name\\\":\\\"constant.character.escape.shell\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\W)(?=#)(?!#{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.shell\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.shell\\\"}},\\\"end\\\":\\\"(?=`)\\\",\\\"name\\\":\\\"comment.line.number-sign.shell\\\"}]},{\\\"include\\\":\\\"#initial_context\\\"}]}]},\\\"keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|;|&|\\\\\\\\s)(then|else|elif|fi|for|in|do|done|select|continue|esac|while|until|return)(?=\\\\\\\\s|;|&|$)\\\",\\\"name\\\":\\\"keyword.control.shell\\\"},{\\\"match\\\":\\\"(?<=^|;|&|\\\\\\\\s)(?:export|declare|typeset|local|readonly)(?=\\\\\\\\s|;|&|$)\\\",\\\"name\\\":\\\"storage.modifier.shell\\\"}]},\\\"line_comment\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\s*+)(\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.shell\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\n)(?<!\\\\\\\\\\\\\\\\\\\\\\\\n)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"comment.line.double-slash.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},\\\"line_continuation\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"constant.character.escape.line-continuation.shell\\\"},\\\"logical-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#arithmetic_no_dollar\\\"},{\\\"comment\\\":\\\"do we want a special rule for ( expr )?\\\",\\\"match\\\":\\\"=[=~]?|!=?|<|>|&&|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.shell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\S)-(nt|ot|ef|eq|ne|l[te]|g[te]|[a-hknoprstuwxzOGLSN])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logical.shell\\\"}]},\\\"logical_expression_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_comparison\\\"},{\\\"include\\\":\\\"#arithmetic_no_dollar\\\"},{\\\"include\\\":\\\"#logical-expression\\\"},{\\\"include\\\":\\\"#logical_expression_single\\\"},{\\\"include\\\":\\\"#logical_expression_double\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#redirect_number\\\"},{\\\"include\\\":\\\"#numeric_literal\\\"},{\\\"include\\\":\\\"#pipeline\\\"},{\\\"include\\\":\\\"#normal_statement_seperator\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#herestring\\\"},{\\\"include\\\":\\\"#pathname\\\"},{\\\"include\\\":\\\"#floating_keyword\\\"},{\\\"include\\\":\\\"#support\\\"}]},\\\"logical_expression_double\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.logical-expression.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.logical-expression.shell\\\"}},\\\"name\\\":\\\"meta.scope.logical-expression.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#logical_expression_context\\\"}]},\\\"logical_expression_single\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.logical-expression.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.logical-expression.shell\\\"}},\\\"name\\\":\\\"meta.scope.logical-expression.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#logical_expression_context\\\"}]},\\\"loop\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=^|;|&|\\\\\\\\s)(for)\\\\\\\\s+(.+?)\\\\\\\\s+(in)(?=\\\\\\\\s|;|&|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.loop.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.shell\\\"}},\\\"end\\\":\\\"(?<=^|;|&|\\\\\\\\s)done(?=\\\\\\\\s|;|&|$|\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.shell\\\"}},\\\"name\\\":\\\"meta.scope.for-in-loop.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]},{\\\"begin\\\":\\\"(?<=^|;|&|\\\\\\\\s)(while|until)(?=\\\\\\\\s|;|&|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.shell\\\"}},\\\"end\\\":\\\"(?<=^|;|&|\\\\\\\\s)done(?=\\\\\\\\s|;|&|$|\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.shell\\\"}},\\\"name\\\":\\\"meta.scope.while-loop.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]},{\\\"begin\\\":\\\"(?<=^|;|&|\\\\\\\\s)(select)\\\\\\\\s+((?:[^\\\\\\\\s\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+)(?=\\\\\\\\s|;|&|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.loop.shell\\\"}},\\\"end\\\":\\\"(?<=^|;|&|\\\\\\\\s)(done)(?=\\\\\\\\s|;|&|$|\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.shell\\\"}},\\\"name\\\":\\\"meta.scope.select-block.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]},{\\\"begin\\\":\\\"(?<=^|;|&|\\\\\\\\s)if(?=\\\\\\\\s|;|&|$)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.if.shell\\\"}},\\\"end\\\":\\\"(?<=^|;|&|\\\\\\\\s)fi(?=\\\\\\\\s|;|&|$)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.fi.shell\\\"}},\\\"name\\\":\\\"meta.scope.if-block.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]}]},\\\"math\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"match\\\":\\\"\\\\\\\\+{1,2}|-{1,2}|!|~|\\\\\\\\*{1,2}|/|%|<[<=]?|>[>=]?|==|!=|^|\\\\\\\\|{1,2}|&{1,2}|\\\\\\\\?|\\\\\\\\:|,|=|[*/%+\\\\\\\\-&^|]=|<<=|>>=\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.shell\\\"},{\\\"match\\\":\\\"0[xX][0-9A-Fa-f]+\\\",\\\"name\\\":\\\"constant.numeric.hex.shell\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.separator.semicolon.range\\\"},{\\\"match\\\":\\\"0\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.numeric.octal.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\d{1,2}#[0-9a-zA-Z@_]+\\\",\\\"name\\\":\\\"constant.numeric.other.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.numeric.integer.shell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_0-9]+)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"variable.other.normal.shell\\\"}]},\\\"math_operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\+{1,2}|-{1,2}|!|~|\\\\\\\\*{1,2}|/|%|<[<=]?|>[>=]?|==|!=|^|\\\\\\\\|{1,2}|&{1,2}|\\\\\\\\?|\\\\\\\\:|,|=|[*/%+\\\\\\\\-&^|]=|<<=|>>=\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.shell\\\"},{\\\"match\\\":\\\"0[xX][0-9A-Fa-f]+\\\",\\\"name\\\":\\\"constant.numeric.hex.shell\\\"},{\\\"match\\\":\\\"0\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.numeric.octal.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\d{1,2}#[0-9a-zA-Z@_]+\\\",\\\"name\\\":\\\"constant.numeric.other.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.numeric.integer.shell\\\"}]},\\\"misc_ranges\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#logical_expression_single\\\"},{\\\"include\\\":\\\"#logical_expression_double\\\"},{\\\"include\\\":\\\"#subshell_dollar\\\"},{\\\"begin\\\":\\\"(?<![^ \\\\\\\\t])({)(?!\\\\\\\\w|\\\\\\\\$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.shell\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.shell\\\"}},\\\"name\\\":\\\"meta.scope.group.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]}]},\\\"modified_assignment_statement\\\":{\\\"begin\\\":\\\"(?<=^|;|&|[ \\\\\\\\t])(?:readonly|declare|typeset|export|local)(?=[ \\\\\\\\t]|;|&|$)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.$0.shell\\\"}},\\\"end\\\":\\\"(?=;|\\\\\\\\||&|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`|\\\\\\\\{|\\\\\\\\}|[ \\\\\\\\t]*#|\\\\\\\\])(?<!\\\\\\\\\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.statement.shell meta.expression.assignment.modified.shell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)-\\\\\\\\w+\\\\\\\\b\\\",\\\"name\\\":\\\"string.unquoted.argument.shell constant.other.option.shell\\\"},{\\\"include\\\":\\\"#array_value\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.assignment.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.array.access.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.assignment.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.integer.shell\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.array.access.shell\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.shell\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.shell\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.shell\\\"},\\\"9\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.hex.shell\\\"},\\\"10\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.octal.shell\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.other.shell\\\"},\\\"12\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.decimal.shell\\\"},\\\"13\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.version.shell\\\"},\\\"14\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.integer.shell\\\"}},\\\"match\\\":\\\"(?:((?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w))(?:(?:(\\\\\\\\[)((?:(?:(?:(?:\\\\\\\\$?)(?:(?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w))|@)|\\\\\\\\*)|(-?\\\\\\\\d+)))(\\\\\\\\]))?)(?:(?:(?:(\\\\\\\\=)|(\\\\\\\\+\\\\\\\\=))|(\\\\\\\\-\\\\\\\\=))?)(?:(?:(?<==| |\\\\\\\\t|^|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[)(?:(?:(?:(?:(?:(0[xX][0-9A-Fa-f]+)|(0\\\\\\\\d+))|(\\\\\\\\d{1,2}#[0-9a-zA-Z@_]+))|(-?\\\\\\\\d+(?:\\\\\\\\.\\\\\\\\d+)))|(-?\\\\\\\\d+(?:\\\\\\\\.\\\\\\\\d+)+))|(-?\\\\\\\\d+))(?= |\\\\\\\\t|$|\\\\\\\\}|\\\\\\\\)|;))?))\\\"},{\\\"include\\\":\\\"#normal_context\\\"}]},\\\"modifiers\\\":{\\\"match\\\":\\\"(?<=^|;|&|[ \\\\\\\\t])(?:readonly|declare|typeset|export|local)(?=[ \\\\\\\\t]|;|&|$)\\\",\\\"name\\\":\\\"storage.modifier.$0.shell\\\"},\\\"normal_assignment_statement\\\":{\\\"begin\\\":\\\"(?:[ \\\\\\\\t]*+)(?:((?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w))(?:(?:(\\\\\\\\[)((?:(?:(?:(?:\\\\\\\\$?)(?:(?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w))|@)|\\\\\\\\*)|(-?\\\\\\\\d+)))(\\\\\\\\]))?))(?:(?:(\\\\\\\\=)|(\\\\\\\\+\\\\\\\\=))|(\\\\\\\\-\\\\\\\\=))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.assignment.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.array.access.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.assignment.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.integer.shell\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.array.access.shell\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.shell\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.shell\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.shell\\\"}},\\\"end\\\":\\\"(?=;|\\\\\\\\||&|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`|\\\\\\\\{|\\\\\\\\}|[ \\\\\\\\t]*#|\\\\\\\\])(?<!\\\\\\\\\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.expression.assignment.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#normal_assignment_statement\\\"},{\\\"begin\\\":\\\"(?<= |\\\\\\\\t)(?! |\\\\\\\\t|\\\\\\\\w+=)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?=;|\\\\\\\\||&|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`|\\\\\\\\{|\\\\\\\\}|[ \\\\\\\\t]*#|\\\\\\\\])(?<!\\\\\\\\\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.statement.command.env.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#command_name_range\\\"},{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"include\\\":\\\"#option\\\"},{\\\"include\\\":\\\"#argument\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"include\\\":\\\"#simple_unquoted\\\"},{\\\"include\\\":\\\"#normal_context\\\"}]},\\\"normal_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pipeline\\\"},{\\\"include\\\":\\\"#normal_statement_seperator\\\"},{\\\"include\\\":\\\"#misc_ranges\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#redirect_number\\\"},{\\\"include\\\":\\\"#numeric_literal\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#herestring\\\"},{\\\"include\\\":\\\"#redirection\\\"},{\\\"include\\\":\\\"#pathname\\\"},{\\\"include\\\":\\\"#floating_keyword\\\"},{\\\"include\\\":\\\"#support\\\"},{\\\"include\\\":\\\"#parenthese\\\"}]},\\\"normal_statement\\\":{\\\"begin\\\":\\\"(?:(?!^[ \\\\\\\\t]*+$)(?:(?<=^until | until |\\\\\\\\tuntil |^while | while |\\\\\\\\twhile |^elif | elif |\\\\\\\\telif |^else | else |\\\\\\\\telse |^then | then |\\\\\\\\tthen |^do | do |\\\\\\\\tdo |^if | if |\\\\\\\\tif )|(?<=(?:^|;|\\\\\\\\||&|!|\\\\\\\\(|\\\\\\\\{|\\\\\\\\`)))(?:[ \\\\\\\\t]*+)(?!nocorrect\\\\\\\\W|nocorrect\\\\\\\\$|function\\\\\\\\W|function\\\\\\\\$|foreach\\\\\\\\W|foreach\\\\\\\\$|repeat\\\\\\\\W|repeat\\\\\\\\$|logout\\\\\\\\W|logout\\\\\\\\$|coproc\\\\\\\\W|coproc\\\\\\\\$|select\\\\\\\\W|select\\\\\\\\$|while\\\\\\\\W|while\\\\\\\\$|pushd\\\\\\\\W|pushd\\\\\\\\$|until\\\\\\\\W|until\\\\\\\\$|case\\\\\\\\W|case\\\\\\\\$|done\\\\\\\\W|done\\\\\\\\$|elif\\\\\\\\W|elif\\\\\\\\$|else\\\\\\\\W|else\\\\\\\\$|esac\\\\\\\\W|esac\\\\\\\\$|popd\\\\\\\\W|popd\\\\\\\\$|then\\\\\\\\W|then\\\\\\\\$|time\\\\\\\\W|time\\\\\\\\$|for\\\\\\\\W|for\\\\\\\\$|end\\\\\\\\W|end\\\\\\\\$|fi\\\\\\\\W|fi\\\\\\\\$|do\\\\\\\\W|do\\\\\\\\$|in\\\\\\\\W|in\\\\\\\\$|if\\\\\\\\W|if\\\\\\\\$))\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"(?=;|\\\\\\\\||&|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`|\\\\\\\\{|\\\\\\\\}|[ \\\\\\\\t]*#|\\\\\\\\])(?<!\\\\\\\\\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.statement.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#typical_statements\\\"}]},\\\"normal_statement_seperator\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.semicolon.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.statement.and.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.statement.or.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.statement.background.shell\\\"}},\\\"match\\\":\\\"(?:(?:(?:(;)|(&&))|(\\\\\\\\|\\\\\\\\|))|(&))\\\"},\\\"numeric_literal\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.hex.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.octal.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.other.shell\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.decimal.shell\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.version.shell\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.shell constant.numeric.integer.shell\\\"}},\\\"match\\\":\\\"(?<==| |\\\\\\\\t|^|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[)(?:(?:(?:(?:(?:(0[xX][0-9A-Fa-f]+)|(0\\\\\\\\d+))|(\\\\\\\\d{1,2}#[0-9a-zA-Z@_]+))|(-?\\\\\\\\d+(?:\\\\\\\\.\\\\\\\\d+)))|(-?\\\\\\\\d+(?:\\\\\\\\.\\\\\\\\d+)+))|(-?\\\\\\\\d+))(?= |\\\\\\\\t|$|\\\\\\\\}|\\\\\\\\)|;)\\\"},\\\"option\\\":{\\\"begin\\\":\\\"(?:(?:[ \\\\\\\\t]++)(-)((?!(?:!|&|\\\\\\\\||\\\\\\\\(|\\\\\\\\)|\\\\\\\\{|\\\\\\\\[|<|>|#|\\\\\\\\n|$|;|[ \\\\\\\\t]))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.argument.shell constant.other.option.dash.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.argument.shell constant.other.option.shell\\\"}},\\\"contentName\\\":\\\"string.unquoted.argument constant.other.option\\\",\\\"end\\\":\\\"(?:(?=[ \\\\\\\\t])|(?:(?=;|\\\\\\\\||&|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`|\\\\\\\\{|\\\\\\\\}|[ \\\\\\\\t]*#|\\\\\\\\])(?<!\\\\\\\\\\\\\\\\)))\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"include\\\":\\\"#option_context\\\"}]},\\\"option_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#misc_ranges\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#herestring\\\"},{\\\"include\\\":\\\"#redirection\\\"},{\\\"include\\\":\\\"#pathname\\\"},{\\\"include\\\":\\\"#floating_keyword\\\"},{\\\"include\\\":\\\"#support\\\"}]},\\\"parenthese\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parenthese.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parenthese.shell\\\"}},\\\"name\\\":\\\"meta.parenthese.group.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]}]},\\\"pathname\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\s|:|=|^)~\\\",\\\"name\\\":\\\"keyword.operator.tilde.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\*|\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.glob.shell\\\"},{\\\"begin\\\":\\\"([?*+@!])(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.extglob.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.extglob.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.extglob.shell\\\"}},\\\"name\\\":\\\"meta.structure.extglob.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]}]},\\\"pipeline\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|;|&|\\\\\\\\s)(time)(?=\\\\\\\\s|;|&|$)\\\",\\\"name\\\":\\\"keyword.other.shell\\\"},{\\\"match\\\":\\\"[|!]\\\",\\\"name\\\":\\\"keyword.operator.pipe.shell\\\"}]},\\\"redirect_fix\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.redirect.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.argument.shell\\\"}},\\\"match\\\":\\\"(?:(>>?)(?:[ \\\\\\\\t]*+)([^ \\\\t\\\\n>&;<>\\\\\\\\(\\\\\\\\)\\\\\\\\$`\\\\\\\\\\\\\\\\\\\\\\\"'<\\\\\\\\|]+))\\\"},\\\"redirect_number\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.redirect.stdout.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.redirect.stderr.shell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.redirect.$3.shell\\\"}},\\\"match\\\":\\\"(?<=[ \\\\\\\\t])(?:(?:(1)|(2)|(\\\\\\\\d+))(?=>))\\\"},\\\"redirection\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"[><]\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.shell\\\"}},\\\"name\\\":\\\"string.interpolated.process-substitution.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#initial_context\\\"}]},{\\\"match\\\":\\\"(?<![<>])(&>|\\\\\\\\d*>&\\\\\\\\d*|\\\\\\\\d*(>>|>|<)|\\\\\\\\d*<&|\\\\\\\\d*<>)(?![<>])\\\",\\\"name\\\":\\\"keyword.operator.redirect.shell\\\"}]},\\\"regex_comparison\\\":{\\\"match\\\":\\\"\\\\\\\\=~\\\",\\\"name\\\":\\\"keyword.operator.logical.regex.shell\\\"},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:.+)\\\"}]},\\\"simple_options\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.argument.shell constant.other.option.dash.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.argument.shell constant.other.option.shell\\\"}},\\\"match\\\":\\\"(?:[ \\\\\\\\t]++)(\\\\\\\\-)(\\\\\\\\w+)\\\"}]}},\\\"match\\\":\\\"(?:(?:[ \\\\\\\\t]++)\\\\\\\\-(?:\\\\\\\\w+))*\\\"},\\\"simple_unquoted\\\":{\\\"match\\\":\\\"[^ \\\\\\\\t\\\\\\\\n>&;<>\\\\\\\\(\\\\\\\\)\\\\\\\\$`\\\\\\\\\\\\\\\\\\\\\\\"'<\\\\\\\\|]\\\",\\\"name\\\":\\\"string.unquoted.shell\\\"},\\\"special_expansion\\\":{\\\"match\\\":\\\"!|:[-=?]?|\\\\\\\\*|@|##|#|%%|%|\\\\\\\\/\\\",\\\"name\\\":\\\"keyword.operator.expansion.shell\\\"},\\\"start_of_command\\\":{\\\"match\\\":\\\"(?:(?:[ \\\\\\\\t]*+)(?:(?!(?:!|&|\\\\\\\\||\\\\\\\\(|\\\\\\\\)|\\\\\\\\{|\\\\\\\\[|<|>|#|\\\\\\\\n|$|;|[ \\\\\\\\t]))(?!nocorrect |nocorrect\\\\t|nocorrect$|readonly |readonly\\\\t|readonly$|function |function\\\\t|function$|foreach |foreach\\\\t|foreach$|coproc |coproc\\\\t|coproc$|logout |logout\\\\t|logout$|export |export\\\\t|export$|select |select\\\\t|select$|repeat |repeat\\\\t|repeat$|pushd |pushd\\\\t|pushd$|until |until\\\\t|until$|while |while\\\\t|while$|local |local\\\\t|local$|case |case\\\\t|case$|done |done\\\\t|done$|elif |elif\\\\t|elif$|else |else\\\\t|else$|esac |esac\\\\t|esac$|popd |popd\\\\t|popd$|then |then\\\\t|then$|time |time\\\\t|time$|for |for\\\\t|for$|end |end\\\\t|end$|fi |fi\\\\t|fi$|do |do\\\\t|do$|in |in\\\\t|in$|if |if\\\\t|if$)(?!\\\\\\\\\\\\\\\\\\\\\\\\n?$)))\\\"},\\\"string\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.shell\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.shell\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.shell\\\"}},\\\"name\\\":\\\"string.quoted.single.shell\\\"},{\\\"begin\\\":\\\"\\\\\\\\$?\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.shell\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.shell\\\"}},\\\"name\\\":\\\"string.quoted.double.shell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\$\\\\\\\\n`\\\\\\\"\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.shell\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\$'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.shell\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.shell\\\"}},\\\"name\\\":\\\"string.quoted.single.dollar.shell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:a|b|e|f|n|r|t|v|\\\\\\\\\\\\\\\\|')\\\",\\\"name\\\":\\\"constant.character.escape.ansi-c.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-9]{3}\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.octal.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9a-fA-F]{2}\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.hex.shell\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c.\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.control-char.shell\\\"}]}]},\\\"subshell_dollar\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:\\\\\\\\$\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.subshell.single.shell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.subshell.single.shell\\\"}},\\\"name\\\":\\\"meta.scope.subshell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthese\\\"},{\\\"include\\\":\\\"#initial_context\\\"}]}]},\\\"support\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|;|&|\\\\\\\\s)(?::|\\\\\\\\.)(?=\\\\\\\\s|;|&|$)\\\",\\\"name\\\":\\\"support.function.builtin.shell\\\"}]},\\\"typical_statements\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#assignment_statement\\\"},{\\\"include\\\":\\\"#case_statement\\\"},{\\\"include\\\":\\\"#for_statement\\\"},{\\\"include\\\":\\\"#while_statement\\\"},{\\\"include\\\":\\\"#function_definition\\\"},{\\\"include\\\":\\\"#command_statement\\\"},{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"include\\\":\\\"#arithmetic_double\\\"},{\\\"include\\\":\\\"#normal_context\\\"}]},\\\"variable\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.shell variable.parameter.positional.all.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.positional.all.shell\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\$)(\\\\\\\\@(?!\\\\\\\\w)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.shell variable.parameter.positional.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.positional.shell\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\$)([0-9](?!\\\\\\\\w)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.shell variable.language.special.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.language.special.shell\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\$)([-*#?$!0_](?!\\\\\\\\w)))\\\"},{\\\"begin\\\":\\\"(?:(\\\\\\\\$)(\\\\\\\\{)(?:[ \\\\\\\\t]*+)(?=\\\\\\\\d))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.shell variable.parameter.positional.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.bracket.curly.variable.begin.shell punctuation.definition.variable.shell variable.parameter.positional.shell\\\"}},\\\"contentName\\\":\\\"meta.parameter-expansion\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.bracket.curly.variable.end.shell punctuation.definition.variable.shell variable.parameter.positional.shell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#special_expansion\\\"},{\\\"include\\\":\\\"#array_access_inline\\\"},{\\\"match\\\":\\\"[0-9]+\\\",\\\"name\\\":\\\"variable.parameter.positional.shell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"variable.other.normal.shell\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?:(\\\\\\\\$)(\\\\\\\\{))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.bracket.curly.variable.begin.shell punctuation.definition.variable.shell\\\"}},\\\"contentName\\\":\\\"meta.parameter-expansion\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.bracket.curly.variable.end.shell punctuation.definition.variable.shell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#special_expansion\\\"},{\\\"include\\\":\\\"#array_access_inline\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"variable.other.normal.shell\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.shell variable.other.normal.shell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.normal.shell\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\$)((?:\\\\\\\\w+)(?!\\\\\\\\w)))\\\"}]},\\\"while_statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\bwhile\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.while.shell\\\"}},\\\"end\\\":\\\"(?=;|\\\\\\\\||&|\\\\\\\\n|\\\\\\\\)|\\\\\\\\`|\\\\\\\\{|\\\\\\\\}|[ \\\\\\\\t]*#|\\\\\\\\])(?<!\\\\\\\\\\\\\\\\)\\\",\\\"endCaptures\\\":{},\\\"name\\\":\\\"meta.while.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"include\\\":\\\"#math_operators\\\"},{\\\"include\\\":\\\"#option\\\"},{\\\"include\\\":\\\"#simple_unquoted\\\"},{\\\"include\\\":\\\"#normal_context\\\"},{\\\"include\\\":\\\"#string\\\"}]}]}},\\\"scopeName\\\":\\\"source.shell\\\",\\\"aliases\\\":[\\\"bash\\\",\\\"sh\\\",\\\"shell\\\",\\\"zsh\\\"]}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\nimport sql from './sql.mjs'\nimport css from './css.mjs'\nimport c from './c.mjs'\nimport javascript from './javascript.mjs'\nimport shellscript from './shellscript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Crystal\\\",\\\"fileTypes\\\":[\\\"cr\\\"],\\\"firstLineMatch\\\":\\\"^#!/.*\\\\\\\\bcrystal\\\",\\\"foldingStartMarker\\\":\\\"^(\\\\\\\\s*+(annotation|module|class|struct|union|enum|def(?!.*\\\\\\\\bend\\\\\\\\s*$)|unless|if|case|begin|for|while|until|^=begin|(\\\\\\\"(\\\\\\\\\\\\\\\\.|[^\\\\\\\"])*+\\\\\\\"|'(\\\\\\\\\\\\\\\\.|[^'])*+'|[^#\\\\\\\"'])*(\\\\\\\\s(do|begin|case)|(?<!\\\\\\\\$)[-+=&|*/~%^<>~]\\\\\\\\s*+(if|unless)))\\\\\\\\b(?![^;]*+;.*?\\\\\\\\bend\\\\\\\\b)|(\\\\\\\"(\\\\\\\\\\\\\\\\.|[^\\\\\\\"])*+\\\\\\\"|'(\\\\\\\\\\\\\\\\.|[^'])*+'|[^#\\\\\\\"'])*(\\\\\\\\{(?![^}]*+\\\\\\\\})|\\\\\\\\[(?![^\\\\\\\\]]*+\\\\\\\\]))).*$|[#].*?\\\\\\\\(fold\\\\\\\\)\\\\\\\\s*+$\\\",\\\"foldingStopMarker\\\":\\\"((^|;)\\\\\\\\s*+end\\\\\\\\s*+([#].*)?$|(^|;)\\\\\\\\s*+end\\\\\\\\..*$|^\\\\\\\\s*+[}\\\\\\\\]],?\\\\\\\\s*+([#].*)?$|[#].*?\\\\\\\\(end\\\\\\\\)\\\\\\\\s*+$|^=end)\\\",\\\"name\\\":\\\"crystal\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.class.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.class.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.crystal\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.crystal\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.class.other.type-param.crystal\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.other.inherited-class.crystal\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.crystal\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.separator.crystal\\\"},\\\"10\\\":{\\\"name\\\":\\\"support.class.other.type-param.crystal\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(abstract)?\\\\\\\\s*(class|struct|union|annotation|enum)\\\\\\\\s+(([.A-Z_:\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][.\\\\\\\\w:\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*(\\\\\\\\(([,\\\\\\\\s.a-zA-Z0-9_:\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]+)\\\\\\\\))?(\\\\\\\\s*(<)\\\\\\\\s*[.:A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][.:\\\\\\\\w\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*(\\\\\\\\(([.a-zA-Z0-9_:]+\\\\\\\\s,)\\\\\\\\))?)?)|((<<)\\\\\\\\s*[.A-Z0-9_:\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]+))\\\",\\\"name\\\":\\\"meta.class.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.module.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.module.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.inherited-class.module.first.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.other.inherited-class.module.second.crystal\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.other.inherited-class.module.third.crystal\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(module)\\\\\\\\s+(([A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\w\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*(::))?([A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\w\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*(::))?([A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\w\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*(::))*[A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\w\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*)\\\",\\\"name\\\":\\\"meta.module.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.lib.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.lib.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.inherited-class.lib.first.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.other.inherited-class.lib.second.crystal\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.other.inherited-class.lib.third.crystal\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(lib)\\\\\\\\s+(([A-Z]\\\\\\\\w*(::))?([A-Z]\\\\\\\\w*(::))?([A-Z]\\\\\\\\w*(::))*[A-Z]\\\\\\\\w*)\\\",\\\"name\\\":\\\"meta.lib.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.lib.type.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.lib.type.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.lib.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.lib.type.value.crystal\\\"}},\\\"comment\\\":\\\"type in lib\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(type)\\\\\\\\s+([A-Z]\\\\\\\\w+)\\\\\\\\s*(=)\\\\\\\\s*(.+)\\\",\\\"name\\\":\\\"meta.lib.type.crystal\\\"},{\\\"comment\\\":\\\"everything being a reserved word, not a value, and needing a 'end' is a..\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(fun|begin|case|class|else|elsif|end|ensure|enum|for|if|macro|module|rescue|struct|then|union|unless|until|when|while)\\\\\\\\b(?![?!:])\\\",\\\"name\\\":\\\"keyword.control.crystal\\\"},{\\\"comment\\\":\\\"everything being a reserved word, not a value, and not needing a 'end' is a..\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(abstract|alias|asm|break|extend|in|include|next|of|private|protected|struct|return|select|super|with|yield)\\\\\\\\b(?![?!:])\\\",\\\"name\\\":\\\"keyword.control.primary.crystal\\\"},{\\\"comment\\\":\\\"everything being a spec keyword, not a value, and needing a block is a..\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(describe|context|it|expect_raises)\\\\\\\\b(?![?!:])\\\",\\\"name\\\":\\\"keyword.control.crystal\\\"},{\\\"comment\\\":\\\"contextual smart pair support for block parameters\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bdo\\\\\\\\b\\\\\\\\s*\\\",\\\"name\\\":\\\"keyword.control.start-block.crystal\\\"},{\\\"comment\\\":\\\"contextual smart pair support\\\",\\\"match\\\":\\\"(?<=\\\\\\\\{)(\\\\\\\\s+)\\\",\\\"name\\\":\\\"meta.syntax.crystal.start-block\\\"},{\\\"comment\\\":\\\"Just as above but being not a logical operation\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(pointerof|typeof|sizeof|instance_sizeof|offsetof|previous_def|forall|out|uninitialized)\\\\\\\\b(?![?!:])|\\\\\\\\.(is_a\\\\\\\\?|nil\\\\\\\\?|responds_to\\\\\\\\?|as\\\\\\\\?|as\\\\b)\\\",\\\"name\\\":\\\"keyword.control.pseudo-method.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\bnil\\\\\\\\b(?![?!:])\\\",\\\"name\\\":\\\"constant.language.nil.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b(?![?!:])\\\",\\\"name\\\":\\\"constant.language.boolean.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(__(DIR|FILE|LINE|END_LINE)__)\\\\\\\\b(?![?!:])\\\",\\\"name\\\":\\\"variable.language.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(self)\\\\\\\\b(?![?!:])\\\",\\\"name\\\":\\\"variable.language.self.crystal\\\"},{\\\"comment\\\":\\\"https://crystal-lang.org/api/0.36.1/Object.html#macro-summary\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(((class_)?((getter|property)\\\\\\\\b[!?]?|setter\\\\\\\\b))|(def_(clone|equals|equals_and_hash|hash)|delegate|forward_missing_to)\\\\\\\\b)(?![?!:])\\\",\\\"name\\\":\\\"support.function.kernel.crystal\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(require)\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.special-method.crystal\\\"}},\\\"end\\\":\\\"$|(?=#)\\\",\\\"name\\\":\\\"meta.require.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(@)[a-zA-Z_\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\w\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*[?!=]?\\\",\\\"name\\\":\\\"variable.other.readwrite.instance.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(@@)[a-zA-Z_\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\w\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*[?!=]?\\\",\\\"name\\\":\\\"variable.other.readwrite.class.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.global.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(?!%[Qxrqwi]?[\\\\\\\\(\\\\\\\\[\\\\\\\\{\\\\\\\\<\\\\\\\\|])%([a-zA-Z_]\\\\\\\\w*\\\\\\\\.)*[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.fresh.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)(!|@|&|`|'|\\\\\\\\+|\\\\\\\\d+|~|=|/|\\\\\\\\\\\\\\\\|,|;|\\\\\\\\.|<|>|_|\\\\\\\\*|\\\\\\\\$|\\\\\\\\?|:|\\\\\\\"|-[0adFiIlpv])\\\",\\\"name\\\":\\\"variable.other.readwrite.global.pre-defined.crystal\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(ENV)\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"meta.environment-variable.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"comment\\\":\\\"Literals name of Crystal\\\",\\\"match\\\":\\\"\\\\\\\\b[A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\w\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*\\\",\\\"name\\\":\\\"support.class.crystal\\\"},{\\\"comment\\\":\\\"Fetch from https://crystal-lang.org/api/0.36.1/toplevel.html\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(abort|at_exit|caller|exit|gets|loop|main|p|pp|print|printf|puts|raise|rand|read_line|sleep|spawn|sprintf|system|debugger|record|spawn)\\\\\\\\b(?![?!:])\\\",\\\"name\\\":\\\"support.function.kernel.crystal\\\"},{\\\"comment\\\":\\\"Constant name in any where\\\",\\\"match\\\":\\\"\\\\\\\\b[_A-Z]+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.constant.crystal\\\"},{\\\"begin\\\":\\\"(?=def\\\\\\\\b)(?<=^|\\\\\\\\s)(def)\\\\\\\\s+((?>[a-zA-Z_]\\\\\\\\w*(?>\\\\\\\\.|::))?(?>[a-zA-Z_]\\\\\\\\w*(?>[?!]|=(?!>))?|\\\\\\\\^|===?|!=|>[>=]?|<=>|<[<=]?|[%&`/\\\\\\\\|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[][?=]?|\\\\\\\\[]=?))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.crystal\\\"}},\\\"comment\\\":\\\"The method pattern comes from the symbol pattern. See there for an explanation.\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.crystal\\\"}},\\\"name\\\":\\\"meta.function.method.with-arguments.crystal\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?![\\\\\\\\s,)])\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\)\\\\\\\\s*)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.variable.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.symbol.hashkey.parameter.function.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.constant.hashkey.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.crystal\\\"}},\\\"match\\\":\\\"\\\\\\\\G([&*]?)(?:([_a-zA-Z]\\\\\\\\w*(:))|([_a-zA-Z]\\\\\\\\w*))\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.crystal\\\"}},\\\"comment\\\":\\\" the optional name is just to catch the def also without a method-name\\\",\\\"match\\\":\\\"(?=def\\\\\\\\b)(?<=^|\\\\\\\\s)(def)\\\\\\\\b(\\\\\\\\s+((?>[a-zA-Z_]\\\\\\\\w*(?>\\\\\\\\.|::))?(?>[a-zA-Z_]\\\\\\\\w*(?>[?!]|=(?!>))?|\\\\\\\\^|===?|!=|>[>=]?|<=>|<[<=]?|[%&`/\\\\\\\\|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[][?=]?|\\\\\\\\[]=?)))?\\\",\\\"name\\\":\\\"meta.function.method.without-arguments.crystal\\\"},{\\\"comment\\\":\\\"Floating point literal (fraction)\\\",\\\"match\\\":\\\"\\\\\\\\b[0-9][0-9_]*\\\\\\\\.[0-9][0-9_]*([eE][+-]?[0-9_]+)?(f32|f64)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.crystal\\\"},{\\\"comment\\\":\\\"Floating point literal (exponent)\\\",\\\"match\\\":\\\"\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.[0-9][0-9_]*)?[eE][+-]?[0-9_]+(f32|f64)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.crystal\\\"},{\\\"comment\\\":\\\"Floating point literal (typed)\\\",\\\"match\\\":\\\"\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.[0-9][0-9_]*)?([eE][+-]?[0-9_]+)?(f32|f64)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.crystal\\\"},{\\\"comment\\\":\\\"Integer literal (decimal)\\\",\\\"match\\\":\\\"\\\\\\\\b(?!0[0-9])[0-9][0-9_]*([ui](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.crystal\\\"},{\\\"comment\\\":\\\"Integer literal (hexadecimal)\\\",\\\"match\\\":\\\"\\\\\\\\b0x[a-fA-F0-9_]+([ui](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.crystal\\\"},{\\\"comment\\\":\\\"Integer literal (octal)\\\",\\\"match\\\":\\\"\\\\\\\\b0o[0-7_]+([ui](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.octal.crystal\\\"},{\\\"comment\\\":\\\"Integer literal (binary)\\\",\\\"match\\\":\\\"\\\\\\\\b0b[01_]+([ui](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.binary.crystal\\\"},{\\\"begin\\\":\\\":'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.begin.crystal\\\"}},\\\"comment\\\":\\\"symbol literal with '' delimiter\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.end.crystal\\\"}},\\\"name\\\":\\\"constant.other.symbol.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"}]},{\\\"begin\\\":\\\":\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.symbol.begin.crystal\\\"}},\\\"comment\\\":\\\"symbol literal with \\\\\\\"\\\\\\\" delimiter\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.symbol.end.crystal\\\"}},\\\"name\\\":\\\"constant.other.symbol.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"comment\\\":\\\"Needs higher precedence than regular expressions.\\\",\\\"match\\\":\\\"(?<!\\\\\\\\()/=\\\",\\\"name\\\":\\\"keyword.operator.assignment.augmented.crystal\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"string literal with '' delimiter\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.single.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\'|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"string literal with interpolation and \\\\\\\"\\\\\\\" delimiter\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.double.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"execute string (allows for interpolation)\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"execute string (allow for interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"execute string (allow for interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"execute string (allow for interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"execute string (allow for interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"execute string (allow for interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?:^|(?<=[=>~(?:\\\\\\\\[,|&;]|[\\\\\\\\s;]if\\\\\\\\s|[\\\\\\\\s;]elsif\\\\\\\\s|[\\\\\\\\s;]while\\\\\\\\s|[\\\\\\\\s;]unless\\\\\\\\s|[\\\\\\\\s;]when\\\\\\\\s|[\\\\\\\\s;]assert_match\\\\\\\\s|[\\\\\\\\s;]or\\\\\\\\s|[\\\\\\\\s;]and\\\\\\\\s|[\\\\\\\\s;]not\\\\\\\\s|[\\\\\\\\s.]index\\\\\\\\s|[\\\\\\\\s.]scan\\\\\\\\s|[\\\\\\\\s.]sub\\\\\\\\s|[\\\\\\\\s.]sub!\\\\\\\\s|[\\\\\\\\s.]gsub\\\\\\\\s|[\\\\\\\\s.]gsub!\\\\\\\\s|[\\\\\\\\s.]match\\\\\\\\s)|(?<=^when\\\\\\\\s|^if\\\\\\\\s|^elsif\\\\\\\\s|^while\\\\\\\\s|^unless\\\\\\\\s))\\\\\\\\s*((/))(?![*+{}?])\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.classic.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.crystal\\\"}},\\\"comment\\\":\\\"regular expressions (normal) we only start a regexp if the character before it (excluding whitespace) is what we think is before a regexp\\\",\\\"contentName\\\":\\\"string.regexp.classic.crystal\\\",\\\"end\\\":\\\"((/[imsx]*))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"regular expressions (literal)\\\",\\\"end\\\":\\\"\\\\\\\\}[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_curly_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"regular expressions (literal)\\\",\\\"end\\\":\\\"\\\\\\\\][imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_brackets_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"regular expressions (literal)\\\",\\\"end\\\":\\\"\\\\\\\\)[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_parens_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"regular expressions (literal)\\\",\\\"end\\\":\\\"\\\\\\\\>[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_ltgt_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"regular expressions (literal)\\\",\\\"end\\\":\\\"\\\\\\\\|[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"begin\\\":\\\"%Q?\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"literal capable of interpolation ()\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},{\\\"begin\\\":\\\"%Q?\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"literal capable of interpolation []\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},{\\\"begin\\\":\\\"%Q?\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"literal capable of interpolation <>\\\",\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},{\\\"begin\\\":\\\"%Q?\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"literal capable of interpolation -- {}\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.double.crystal.mod\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},{\\\"begin\\\":\\\"%Q\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"literal capable of interpolation -- ||\\\",\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"%[qwi]\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"literal incapable of interpolation -- ()\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_parens\\\"}]},{\\\"begin\\\":\\\"%[qwi]\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"literal incapable of interpolation -- <>\\\",\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\>|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_ltgt\\\"}]},{\\\"begin\\\":\\\"%[qwi]\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"literal incapable of interpolation -- []\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_brackets\\\"}]},{\\\"begin\\\":\\\"%[qwi]\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"literal incapable of interpolation -- {}\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\}|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_curly\\\"}]},{\\\"begin\\\":\\\"%[qwi]\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"literal incapable of interpolation -- ||\\\",\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Cant be named because its not necessarily an escape.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.crystal\\\"}},\\\"comment\\\":\\\"symbols\\\",\\\"match\\\":\\\"(?<!:)(:)(?>[a-zA-Z_\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\w\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*(?>[?!]|=(?![>=]))?|===?|>[>=]?|<[<=]?|<=>|[%&`/\\\\\\\\|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[\\\\\\\\][?=]?|@@?[a-zA-Z_\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\w\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*)\\\",\\\"name\\\":\\\"constant.other.symbol.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.crystal\\\"}},\\\"comment\\\":\\\"symbols\\\",\\\"match\\\":\\\"(?>[a-zA-Z_\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\w\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]*(?>[?!])?)(:)(?!:)\\\",\\\"name\\\":\\\"constant.other.symbol.crystal.19syntax\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.crystal\\\"}},\\\"match\\\":\\\"(?:^[ \\\\\\\\t]+)?(#).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.crystal\\\"},{\\\"match\\\":\\\"(?<!}})\\\\\\\\b_([\\\\\\\\w]+[?!]?)\\\\\\\\b(?!\\\\\\\\()\\\",\\\"name\\\":\\\"comment.unused.crystal\\\"},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)HTML)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"heredoc with embedded HTML and indented terminator\\\",\\\"contentName\\\":\\\"text.html.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.html.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)SQL)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"heredoc with embedded SQL and indented terminator\\\",\\\"contentName\\\":\\\"text.sql.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.sql.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.sql\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)CSS)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"heredoc with embedded css and intented terminator\\\",\\\"contentName\\\":\\\"text.css.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.css.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.css\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)CPP)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"heredoc with embedded c++ and intented terminator\\\",\\\"contentName\\\":\\\"text.c++.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.cplusplus.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.c++\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)C)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"heredoc with embedded c++ and intented terminator\\\",\\\"contentName\\\":\\\"text.c.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.c.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.c\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"heredoc with embedded javascript and intented terminator\\\",\\\"contentName\\\":\\\"text.js.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.js.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.js\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)JQUERY)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"heredoc with embedded javascript and intented terminator\\\",\\\"contentName\\\":\\\"text.js.jquery.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.js.jquery.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.js.jquery\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)(?:SH|SHELL))\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"heredoc with embedded shell and intented terminator\\\",\\\"contentName\\\":\\\"text.shell.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.shell.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.shell\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)CRYSTAL)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"heredoc with embedded crystal and intented terminator\\\",\\\"contentName\\\":\\\"text.crystal.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.crystal.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.crystal\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-'(\\\\\\\\w+)')\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"heredoc with indented terminator\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\1\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-(\\\\\\\\w+)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"comment\\\":\\\"heredoc with indented terminator\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\1\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?<={|{\\\\\\\\s|[^A-Za-z0-9_]do|^do|[^A-Za-z0-9_]do\\\\\\\\s|^do\\\\\\\\s)(\\\\\\\\|)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.variable.crystal\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\|)(\\\\\\\\|)(?!\\\\\\\\|)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.crystal\\\"},{\\\"match\\\":\\\"[_a-zA-Z][_a-zA-Z0-9]*\\\",\\\"name\\\":\\\"variable.other.block.crystal\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.variable.crystal\\\"}]},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"punctuation.separator.key-value\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"support.function.kernel.crystal\\\"},{\\\"match\\\":\\\"<<=|%=|&{1,2}=|\\\\\\\\*=|\\\\\\\\*\\\\\\\\*=|\\\\\\\\+=|-=|\\\\\\\\^=|\\\\\\\\|{1,2}=|<<\\\",\\\"name\\\":\\\"keyword.operator.assignment.augmented.crystal\\\"},{\\\"match\\\":\\\"<=>|<(?!<|=)|>(?!<|=|>)|<=|>=|===|==|=~|!=|!~|(?<=[ \\\\\\\\t])\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.comparison.crystal\\\"},{\\\"match\\\":\\\"(?<=^|[ \\\\\\\\t])!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\^\\\",\\\"name\\\":\\\"keyword.operator.logical.crystal\\\"},{\\\"match\\\":\\\"(\\\\\\\\{\\\\\\\\%|\\\\\\\\%\\\\\\\\}|\\\\\\\\{\\\\\\\\{|\\\\\\\\}\\\\\\\\})\\\",\\\"name\\\":\\\"keyword.operator.macro.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.method.crystal\\\"}},\\\"comment\\\":\\\"Safe navigation operator\\\",\\\"match\\\":\\\"(&\\\\\\\\.)\\\\\\\\s*(?![A-Z])\\\"},{\\\"match\\\":\\\"(%|&|\\\\\\\\*\\\\\\\\*|\\\\\\\\*|\\\\\\\\+|\\\\\\\\-|/)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.crystal\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\||~|>>\\\",\\\"name\\\":\\\"keyword.operator.other.crystal\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.other.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\;\\\",\\\"name\\\":\\\"punctuation.separator.statement.crystal\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.object.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\.|::\\\",\\\"name\\\":\\\"punctuation.separator.method.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\{|\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\[|\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.section.array.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\(|\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.section.function.crystal\\\"},{\\\"begin\\\":\\\"(?=[a-zA-Z0-9_!?]+\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function-call.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([a-zA-Z0-9_!?]+)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.crystal\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"comment\\\":\\\"This is kindof experimental. There really is no way to perfectly match all regular variables, but you can pretty well assume that any normal word in certain curcumstances that havnt already been scoped as something else are probably variables, and the advantages beat the potential errors\\\",\\\"match\\\":\\\"((?<=\\\\\\\\W)\\\\\\\\b|^)\\\\\\\\w+\\\\\\\\b(?=\\\\\\\\s*([\\\\\\\\]\\\\\\\\)\\\\\\\\}\\\\\\\\=\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/\\\\\\\\^\\\\\\\\$\\\\\\\\,\\\\\\\\.]|<\\\\\\\\s|<<[\\\\\\\\s|\\\\\\\\.]))\\\",\\\"name\\\":\\\"variable.other.crystal\\\"}],\\\"repository\\\":{\\\"escaped_char\\\":{\\\"comment\\\":\\\"https://crystal-lang.org/reference/syntax_and_semantics/literals/string.html\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[0-7]{1,3}|x[a-fA-F0-9]{2}|u[a-fA-F0-9]{4}|u\\\\\\\\{[a-fA-F0-9 ]+\\\\\\\\}|.)\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},\\\"heredoc\\\":{\\\"begin\\\":\\\"^<<-?\\\\\\\\w+\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"interpolated_crystal\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.crystal\\\"}},\\\"contentName\\\":\\\"source.crystal\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.crystal\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.crystal\\\"}},\\\"name\\\":\\\"meta.embedded.line.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"},{\\\"include\\\":\\\"$self\\\"}],\\\"repository\\\":{\\\"nest_curly_and_self\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]}}},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(#@)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.instance.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(#@@)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.class.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(#\\\\\\\\$)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.global.crystal\\\"}]},\\\"nest_brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_brackets\\\"}]},\\\"nest_brackets_i\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},\\\"nest_brackets_r\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_brackets_r\\\"}]},\\\"nest_curly\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly\\\"}]},\\\"nest_curly_and_self\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"nest_curly_i\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},\\\"nest_curly_r\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_curly_r\\\"}]},\\\"nest_ltgt\\\":{\\\"begin\\\":\\\"\\\\\\\\<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_ltgt\\\"}]},\\\"nest_ltgt_i\\\":{\\\"begin\\\":\\\"\\\\\\\\<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},\\\"nest_ltgt_r\\\":{\\\"begin\\\":\\\"\\\\\\\\<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_ltgt_r\\\"}]},\\\"nest_parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_parens\\\"}]},\\\"nest_parens_i\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},\\\"nest_parens_r\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_parens_r\\\"}]},\\\"regex_sub\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.crystal\\\"}},\\\"match\\\":\\\"({)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repetition.crystal\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"name\\\":\\\"string.regexp.character-class.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"string.regexp.group.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.crystal\\\"}},\\\"comment\\\":\\\"We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.\\\",\\\"match\\\":\\\"(?<=^|\\\\\\\\s)(#)\\\\\\\\s[[a-zA-Z0-9,. \\\\\\\\t?!-][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]*$\\\",\\\"name\\\":\\\"comment.line.number-sign.crystal\\\"}]}},\\\"scopeName\\\":\\\"source.crystal\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"sql\\\",\\\"css\\\",\\\"c\\\",\\\"javascript\\\",\\\"shellscript\\\"]}\"))\n\nexport default [\n...html,\n...sql,\n...css,\n...c,\n...javascript,\n...shellscript,\nlang\n]\n", "const lang = 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*(?=\\\\\\\\[)\\\",\\\"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|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-types\\\":{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.colon.cs\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{|where|;)\\\",\\\"patterns\\\":[{\\\"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[0-9a-fA-F]{1,4}|u[0-9a-fA-F]{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\\\":\\\"#property-declaration\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#event-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#constructor-declaration\\\"},{\\\"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*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.cs\\\"}},\\\"match\\\":\\\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\\\\\b\\\"},{\\\"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\\\":\\\"(?<explicit_or_implicit_keyword>(?:\\\\\\\\b(?:explicit|implicit)))\\\\\\\\s*(?<operator_keyword>(?:\\\\\\\\b(?: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.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\\\":\\\"#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-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\\\"}]},{\\\"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\\\":\\\"(?:(?:(\\\\\\\\bref)\\\\\\\\s+)?(\\\\\\\\bvar\\\\\\\\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.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>*+>|\\\\\\\\(\\\\\\\\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\\\":\\\"(?<const_keyword>\\\\\\\\b(?: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\\\"}]},\\\"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-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\\\":\\\"(?:(?:(\\\\\\\\bref)\\\\\\\\s+(?:(\\\\\\\\breadonly)\\\\\\\\s+)?)?(\\\\\\\\bvar\\\\\\\\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+(\\\\\\\\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\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"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\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"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\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"constant.numeric.other.separator.thousands.cs\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"constant.numeric.other.suffix.cs\\\"}},\\\"match\\\":\\\"(\\\\\\\\G(?=[0-9.])(?!0[xXbB]))([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)?((?:(?<=[0-9])|\\\\\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)?((?<!_)([eE])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)))?([fFdDmM](?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.other.preffix.binary.cs\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.binary.cs\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"constant.numeric.other.separator.thousands.cs\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.other.separator.thousands.cs\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.other.suffix.cs\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[bB])([01_](?:[01_]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)((?:(?:(?:(?:(?:[uU]|[uU]l)|[uU]L)|l[uU]?)|L[uU]?)|[fFdDmM])(?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.other.preffix.hex.cs\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hex.cs\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"constant.numeric.other.separator.thousands.cs\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.other.separator.thousands.cs\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.other.suffix.cs\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)((?:(?:(?:(?:(?:[uU]|[uU]l)|[uU]L)|l[uU]?)|L[uU]?)|[fFdDmM])(?!\\\\\\\\w))?$\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.decimal.cs\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"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\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"constant.numeric.other.separator.thousands.cs\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"constant.numeric.other.suffix.cs\\\"}},\\\"match\\\":\\\"(\\\\\\\\G(?=[0-9.])(?!0[xXbB]))([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)((?<!_)([eE])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)))?((?:(?:(?:(?:(?:[uU]|[uU]l)|[uU]L)|l[uU]?)|L[uU]?)|[fFdDmM])(?!\\\\\\\\w))?$\\\"},{\\\"match\\\":\\\"(?:(?:[0-9a-zA-Z_]|_)|(?<=[eE])[+-]|\\\\\\\\.\\\\\\\\d)+\\\",\\\"name\\\":\\\"invalid.illegal.constant.numeric.cs\\\"}]}]}},\\\"match\\\":\\\"(?<!\\\\\\\\w)\\\\\\\\.?\\\\\\\\d(?:(?:[0-9a-zA-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(ascending|descending)\\\\\\\\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\\\":\\\"#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\\\"}]},\\\"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\\\":\\\"#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(get)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\{|;|=>|//|/\\\\\\\\*|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.accessor.$1.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:][:space:]]*\\\\\\\\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.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[0-9a-fA-F]{1,4}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{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:]:_.-]*)|(?:\\\\\\\\#[[:digit:]]+)|(?:\\\\\\\\#x[[:xdigit:]]+))(;)\\\",\\\"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\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"CSV\\\",\\\"fileTypes\\\":[\\\"csv\\\"],\\\"name\\\":\\\"csv\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"rainbow1\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.rainbow2\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.rainbow3\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.rainbow4\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.rainbow5\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.rainbow6\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.rainbow7\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.type.rainbow8\\\"},\\\"9\\\":{\\\"name\\\":\\\"markup.bold.rainbow9\\\"},\\\"10\\\":{\\\"name\\\":\\\"invalid.rainbow10\\\"}},\\\"match\\\":\\\"((?: *\\\\\\\"(?:[^\\\\\\\"]*\\\\\\\"\\\\\\\")*[^\\\\\\\"]*\\\\\\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\\\\\\"(?:[^\\\\\\\"]*\\\\\\\"\\\\\\\")*[^\\\\\\\"]*\\\\\\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\\\\\\"(?:[^\\\\\\\"]*\\\\\\\"\\\\\\\")*[^\\\\\\\"]*\\\\\\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\\\\\\"(?:[^\\\\\\\"]*\\\\\\\"\\\\\\\")*[^\\\\\\\"]*\\\\\\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\\\\\\"(?:[^\\\\\\\"]*\\\\\\\"\\\\\\\")*[^\\\\\\\"]*\\\\\\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\\\\\\"(?:[^\\\\\\\"]*\\\\\\\"\\\\\\\")*[^\\\\\\\"]*\\\\\\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\\\\\\"(?:[^\\\\\\\"]*\\\\\\\"\\\\\\\")*[^\\\\\\\"]*\\\\\\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\\\\\\"(?:[^\\\\\\\"]*\\\\\\\"\\\\\\\")*[^\\\\\\\"]*\\\\\\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\\\\\\"(?:[^\\\\\\\"]*\\\\\\\"\\\\\\\")*[^\\\\\\\"]*\\\\\\\" *(?:,|$))|(?:[^,]*(?:,|$)))?((?: *\\\\\\\"(?:[^\\\\\\\"]*\\\\\\\"\\\\\\\")*[^\\\\\\\"]*\\\\\\\" *(?:,|$))|(?:[^,]*(?:,|$)))?\\\",\\\"name\\\":\\\"rainbowgroup\\\"}],\\\"scopeName\\\":\\\"text.csv\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"CUE\\\",\\\"fileTypes\\\":[\\\"cue\\\"],\\\"name\\\":\\\"cue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.package\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])(package)[ \\\\\\\\t]+([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*)(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])\\\"},{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])(import)[ \\\\\\\\t]+(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end\\\"}},\\\"name\\\":\\\"meta.imports\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.namespace\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.quoted.double-import\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.colon\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"match\\\":\\\"(?:([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*)[ \\\\\\\\t]+)?(\\\\\\\")([^:\\\\\\\"]+)(?:(:)([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*))?(\\\\\\\")\\\",\\\"name\\\":\\\"meta.import-spec\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.separator\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.double-import\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.colon\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])(import)[ \\\\\\\\t]+(?:([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*)[ \\\\\\\\t]+)?(\\\\\\\")([^:\\\\\\\"]+)(?:(:)([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*))?(\\\\\\\")\\\",\\\"name\\\":\\\"meta.import\\\"}]},{\\\"include\\\":\\\"#punctuation_comma\\\"},{\\\"include\\\":\\\"#declaration\\\"},{\\\"include\\\":\\\"#invalid_in_braces\\\"}],\\\"repository\\\":{\\\"attribute_element\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*|_[\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]+)(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.bind\\\"}},\\\"end\\\":\\\"(?=[,\\\\\\\\)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute_string\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*|_[\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.attribute-elements.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.attribute-elements.end\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation_comma\\\"},{\\\"include\\\":\\\"#attribute_element\\\"}]},{\\\"include\\\":\\\"#attribute_string\\\"}]},\\\"attribute_string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n,\\\\\\\"'#=\\\\\\\\(\\\\\\\\)]+\\\",\\\"name\\\":\\\"string.unquoted\\\"},{\\\"match\\\":\\\"[^,\\\\\\\\)]+\\\",\\\"name\\\":\\\"invalid\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment\\\"}},\\\"match\\\":\\\"(//).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block\\\"}]},\\\"declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(@)([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*|_[\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.annotation\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.annotation\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.attribute-elements.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.attribute-elements.end\\\"}},\\\"name\\\":\\\"meta.annotation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation_comma\\\"},{\\\"include\\\":\\\"#attribute_element\\\"}]},{\\\"match\\\":\\\"(?<!:)::(?!:)\\\",\\\"name\\\":\\\"punctuation.isa\\\"},{\\\"include\\\":\\\"#punctuation_colon\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"punctuation.option\\\"},{\\\"match\\\":\\\"(?<![=!><])=(?![=~])\\\",\\\"name\\\":\\\"punctuation.bind\\\"},{\\\"match\\\":\\\"<-\\\",\\\"name\\\":\\\"punctuation.arrow\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.for\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.in\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])(for)[ \\\\\\\\t]+([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*|_[\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]+)(?:[ \\\\\\\\t]*(,)[ \\\\\\\\t]*([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*|_[\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]+))?[ \\\\\\\\t]+(in)(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])if(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])\\\",\\\"name\\\":\\\"keyword.control.conditional\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.let\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.bind\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])(let)[ \\\\\\\\t]+([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*|_[\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]+)[ \\\\\\\\t]*(=)(?![=])\\\"}]},{\\\"patterns\\\":[{\\\"match\\\":\\\"[\\\\\\\\+\\\\\\\\-\\\\\\\\*]|/(?![/*])\\\",\\\"name\\\":\\\"keyword.operator\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])(?:div|mod|quo|rem)(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])\\\",\\\"name\\\":\\\"keyword.operator.word\\\"},{\\\"match\\\":\\\"=[=~]|![=~]|<=|>=|[<](?![-=])|[>](?![=])\\\",\\\"name\\\":\\\"keyword.operator.comparison\\\"},{\\\"match\\\":\\\"&{2}|\\\\\\\\|{2}|!(?![=~])\\\",\\\"name\\\":\\\"keyword.operator.logical\\\"},{\\\"match\\\":\\\"&(?!&)|\\\\\\\\|(?!\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.set\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.member\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)(\\\\\\\\.)([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*|_[\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]+)(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])\\\"},{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])_(?!\\\\\\\\|)(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])\\\",\\\"name\\\":\\\"constant.language.top\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])_\\\\\\\\|_(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])\\\",\\\"name\\\":\\\"constant.language.bottom\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])null(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])\\\",\\\"name\\\":\\\"constant.language.null\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])(?:true|false)(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])\\\",\\\"name\\\":\\\"constant.language.bool\\\"},{\\\"patterns\\\":[{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])[0-9](?:_?[0-9])*\\\\\\\\.(?:[0-9](?:_?[0-9])*)?(?:[eE][\\\\\\\\+\\\\\\\\-]?[0-9](?:_?[0-9])*)?(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])\\\",\\\"name\\\":\\\"constant.numeric.float.decimal\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])[0-9](?:_?[0-9])*[eE][\\\\\\\\+\\\\\\\\-]?[0-9](?:_?[0-9])*(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])\\\",\\\"name\\\":\\\"constant.numeric.float.decimal\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])\\\\\\\\.[0-9](?:_?[0-9])*(?:[eE][\\\\\\\\+\\\\\\\\-]?[0-9](?:_?[0-9])*)?(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])\\\",\\\"name\\\":\\\"constant.numeric.float.decimal\\\"}]},{\\\"patterns\\\":[{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])(?:0|[1-9](?:_?[0-9])*)(?:\\\\\\\\.[0-9](?:_?[0-9])*)?(?:[KMGTPEYZ]i?)(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])\\\",\\\"name\\\":\\\"constant.numeric.integer.other\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])\\\\\\\\.[0-9](?:_?[0-9])*(?:[KMGTPEYZ]i?)(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])\\\",\\\"name\\\":\\\"constant.numeric.integer.other\\\"}]},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])(?:0|[1-9](?:_?[0-9])*)(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])0b[0-1](?:_?[0-1])*(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])\\\",\\\"name\\\":\\\"constant.numeric.integer.binary\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])0[xX][0-9a-fA-F](?:_?[0-9a-fA-F])*(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])0o?[0-7](?:_?[0-7])*(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\.])\\\",\\\"name\\\":\\\"constant.numeric.integer.octal\\\"}]}]},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])(?:bool|u?int(?:8|16|32|64|128)?|float(?:32|64)?|string|bytes|number|rune)(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])\\\",\\\"name\\\":\\\"support.type\\\"},{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])(len|close|and|or)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end\\\"}},\\\"name\\\":\\\"meta.function-call\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#punctuation_comma\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]},{\\\"begin\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*)(\\\\\\\\.)(\\\\\\\\p{Lu}[\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.module\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end\\\"}},\\\"name\\\":\\\"meta.function-call\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#punctuation_comma\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]}]},{\\\"match\\\":\\\"(?<![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])(?:[\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*|_[\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]+)(?![\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#])\\\",\\\"name\\\":\\\"variable.other\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.struct.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.struct.end\\\"}},\\\"name\\\":\\\"meta.struct\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#punctuation_comma\\\"},{\\\"include\\\":\\\"#punctuation_ellipsis\\\"},{\\\"include\\\":\\\"#declaration\\\"},{\\\"include\\\":\\\"#invalid_in_braces\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.end\\\"}},\\\"name\\\":\\\"meta.brackets\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#punctuation_colon\\\"},{\\\"include\\\":\\\"#punctuation_comma\\\"},{\\\"include\\\":\\\"#punctuation_ellipsis\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.alias\\\"}},\\\"match\\\":\\\"([\\\\\\\\p{L}\\\\\\\\$\\\\\\\\#][\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]*|_[\\\\\\\\p{L}\\\\\\\\p{Nd}_\\\\\\\\$\\\\\\\\#]+)[ \\\\\\\\t]*(=)\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"match\\\":\\\"[^\\\\\\\\]]+\\\",\\\"name\\\":\\\"invalid\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end\\\"}},\\\"name\\\":\\\"meta.parens\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#punctuation_comma\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]}]}]},\\\"invalid_in_braces\\\":{\\\"match\\\":\\\"[^\\\\\\\\}]+\\\",\\\"name\\\":\\\"invalid\\\"},\\\"invalid_in_parens\\\":{\\\"match\\\":\\\"[^\\\\\\\\)]+\\\",\\\"name\\\":\\\"invalid\\\"},\\\"punctuation_colon\\\":{\\\"match\\\":\\\"(?<!:):(?!:)\\\",\\\"name\\\":\\\"punctuation.colon\\\"},\\\"punctuation_comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator\\\"},\\\"punctuation_ellipsis\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\.{3}(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"punctuation.ellipsis\\\"},\\\"string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"}},\\\"contentName\\\":\\\"string.quoted.double-multiline\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"#\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"name\\\":\\\"meta.string\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#(?:\\\\\\\"\\\\\\\"\\\\\\\"|/|\\\\\\\\\\\\\\\\|[abfnrtv]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#(?:[0-7]{3}|x[0-9A-Fa-f]{2})\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\#\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.begin\\\"}},\\\"contentName\\\":\\\"source.cue.embedded\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.end\\\"}},\\\"name\\\":\\\"meta.interpolation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#.\\\",\\\"name\\\":\\\"invalid.illegal\\\"}]},{\\\"begin\\\":\\\"#\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"}},\\\"contentName\\\":\\\"string.quoted.double\\\",\\\"end\\\":\\\"\\\\\\\"#\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"name\\\":\\\"meta.string\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#(?:\\\\\\\"|/|\\\\\\\\\\\\\\\\|[abfnrtv]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#(?:[0-7]{3}|x[0-9A-Fa-f]{2})\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\#\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.begin\\\"}},\\\"contentName\\\":\\\"source.cue.embedded\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.end\\\"}},\\\"name\\\":\\\"meta.interpolation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#.\\\",\\\"name\\\":\\\"invalid.illegal\\\"}]},{\\\"begin\\\":\\\"#'''\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"}},\\\"contentName\\\":\\\"string.quoted.single-multiline\\\",\\\"end\\\":\\\"'''#\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"name\\\":\\\"meta.string\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#(?:'''|/|\\\\\\\\\\\\\\\\|[abfnrtv]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#(?:[0-7]{3}|x[0-9A-Fa-f]{2})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\#\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.begin\\\"}},\\\"contentName\\\":\\\"source.cue.embedded\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.end\\\"}},\\\"name\\\":\\\"meta.interpolation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#.\\\",\\\"name\\\":\\\"invalid.illegal\\\"}]},{\\\"begin\\\":\\\"#'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"}},\\\"contentName\\\":\\\"string.quoted.single\\\",\\\"end\\\":\\\"'#\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"name\\\":\\\"meta.string\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#(?:'|/|\\\\\\\\\\\\\\\\|[abfnrtv]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#(?:[0-7]{3}|x[0-9A-Fa-f]{2})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\#\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.begin\\\"}},\\\"contentName\\\":\\\"source.cue.embedded\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.end\\\"}},\\\"name\\\":\\\"meta.interpolation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#.\\\",\\\"name\\\":\\\"invalid.illegal\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"}},\\\"contentName\\\":\\\"string.quoted.double-multiline\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"name\\\":\\\"meta.string\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:\\\\\\\"\\\\\\\"\\\\\\\"|/|\\\\\\\\\\\\\\\\|[abfnrtv]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2})\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.begin\\\"}},\\\"contentName\\\":\\\"source.cue.embedded\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.end\\\"}},\\\"name\\\":\\\"meta.interpolation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"}},\\\"contentName\\\":\\\"string.quoted.double\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"name\\\":\\\"meta.string\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:\\\\\\\"|/|\\\\\\\\\\\\\\\\|[abfnrtv]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2})\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.begin\\\"}},\\\"contentName\\\":\\\"source.cue.embedded\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.end\\\"}},\\\"name\\\":\\\"meta.interpolation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal\\\"}]},{\\\"begin\\\":\\\"'''\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"}},\\\"contentName\\\":\\\"string.quoted.single-multiline\\\",\\\"end\\\":\\\"'''\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"name\\\":\\\"meta.string\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:'''|/|\\\\\\\\\\\\\\\\|[abfnrtv]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.begin\\\"}},\\\"contentName\\\":\\\"source.cue.embedded\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.end\\\"}},\\\"name\\\":\\\"meta.interpolation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"}},\\\"contentName\\\":\\\"string.quoted.single\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"name\\\":\\\"meta.string\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:'|/|\\\\\\\\\\\\\\\\|[abfnrtv]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2})\\\",\\\"name\\\":\\\"constant.character.escape\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.begin\\\"}},\\\"contentName\\\":\\\"source.cue.embedded\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolation.end\\\"}},\\\"name\\\":\\\"meta.interpolation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#invalid_in_parens\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal\\\"}]},{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"}},\\\"contentName\\\":\\\"string.quoted.backtick\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"name\\\":\\\"meta.string\\\"}]},\\\"whitespace\\\":{\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+\\\"}},\\\"scopeName\\\":\\\"source.cue\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Cypher\\\",\\\"fileTypes\\\":[\\\"cql\\\",\\\"cyp\\\",\\\"cypher\\\"],\\\"name\\\":\\\"cypher\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#path-patterns\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#properties_literal\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#strings\\\"}],\\\"repository\\\":{\\\"comments\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"//.*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.cypher\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bTRUE|FALSE\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.bool.cypher\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bNULL\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.missing.cypher\\\"}]},\\\"functions\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html\\\",\\\"match\\\":\\\"(?i)\\\\\\\\b((NOT)(?=\\\\\\\\s*\\\\\\\\()|IS\\\\\\\\s+NULL|IS\\\\\\\\s+NOT\\\\\\\\s+NULL)\\\",\\\"name\\\":\\\"keyword.control.function.boolean.cypher\\\"},{\\\"comment\\\":\\\"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html\\\",\\\"match\\\":\\\"(?i)\\\\\\\\b(ALL|ANY|NONE|SINGLE)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.predicate.cypher\\\"},{\\\"comment\\\":\\\"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html\\\",\\\"match\\\":\\\"(?i)\\\\\\\\b(LENGTH|TYPE|ID|COALESCE|HEAD|LAST|TIMESTAMP|STARTNODE|ENDNODE|TOINT|TOFLOAT)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.scalar.cypher\\\"},{\\\"comment\\\":\\\"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html\\\",\\\"match\\\":\\\"(?i)\\\\\\\\b(NODES|RELATIONSHIPS|LABELS|EXTRACT|FILTER|TAIL|RANGE|REDUCE)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.collection.cypher\\\"},{\\\"comment\\\":\\\"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html\\\",\\\"match\\\":\\\"(?i)\\\\\\\\b(ABS|ACOS|ASIN|ATAN|ATAN2|COS|COT|DEGREES|E|EXP|FLOOR|HAVERSIN|LOG|LOG10|PI|RADIANS|RAND|ROUND|SIGN|SIN|SQRT|TAN)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.math.cypher\\\"},{\\\"comment\\\":\\\"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html\\\",\\\"match\\\":\\\"(?i)\\\\\\\\b(COUNT|sum|avg|max|min|stdev|stdevp|percentileDisc|percentileCont|collect)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.aggregation.cypher\\\"},{\\\"comment\\\":\\\"List of Cypher built-in functions from http://docs.neo4j.org/chunked/milestone/query-function.html\\\",\\\"match\\\":\\\"(?i)\\\\\\\\b(STR|REPLACE|SUBSTRING|LEFT|RIGHT|LTRIM|RTRIM|TRIM|LOWER|UPPER|SPLIT)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.string.cypher\\\"}]},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"`.+?`\\\",\\\"name\\\":\\\"variable.other.quoted-identifier.cypher\\\"},{\\\"match\\\":\\\"[\\\\\\\\p{L}_][\\\\\\\\p{L}0-9_]*\\\",\\\"name\\\":\\\"variable.other.identifier.cypher\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(START|MATCH|WHERE|RETURN|UNION|FOREACH|WITH|AS|LIMIT|SKIP|UNWIND|HAS|DISTINCT|OPTIONAL\\\\\\\\\\\\\\\\s+MATCH|ORDER\\\\\\\\s+BY|CALL|YIELD)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.clause.cypher\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(ELSE|END|THEN|CASE|WHEN)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.case.cypher\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(FIELDTERMINATOR|USING\\\\\\\\s+PERIODIC\\\\\\\\s+COMMIT|HEADERS|LOAD\\\\\\\\s+CSV|FROM)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.data.import.cypher\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(USING\\\\\\\\s+INDEX|CREATE\\\\\\\\s+INDEX\\\\\\\\s+ON|DROP\\\\\\\\s+INDEX\\\\\\\\s+ON|CREATE\\\\\\\\s+CONSTRAINT\\\\\\\\s+ON|DROP\\\\\\\\s+CONSTRAINT\\\\\\\\s+ON)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.indexes.cypher\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(MERGE|DELETE|SET|REMOVE|ON\\\\\\\\s+CREATE|ON\\\\\\\\s+MATCH|CREATE\\\\\\\\s+UNIQUE|CREATE)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.data.definition.cypher\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(DESC|ASC)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.order.cypher\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(node|relationship|rel)((:)([\\\\\\\\p{L}_-][\\\\\\\\p{L}0-9_]*))?(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.starting-functions-point.cypher\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.index-seperator.cypher\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.index-seperator.cypher\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.class.index.cypher\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"source.starting-functions.cypher\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"((?:`.+?`)|(?:[\\\\\\\\p{L}_][\\\\\\\\p{L}0-9_]*))\\\",\\\"name\\\":\\\"variable.parameter.relationship-name.cypher\\\"},{\\\"match\\\":\\\"(\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.control.starting-function-params.cypher\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#strings\\\"}]}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+(\\\\\\\\.\\\\\\\\d+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.cypher\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\+|\\\\\\\\-|\\\\\\\\/|\\\\\\\\*|\\\\\\\\%|\\\\\\\\?|!)\\\",\\\"name\\\":\\\"keyword.operator.math.cypher\\\"},{\\\"match\\\":\\\"(<=|=>|<>|<|>|=~|=)\\\",\\\"name\\\":\\\"keyword.operator.compare.cypher\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(OR|AND|XOR|IS)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logical.cypher\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(IN)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.in.cypher\\\"}]},\\\"path-patterns\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(<--|-->|--)\\\",\\\"name\\\":\\\"support.function.relationship-pattern.cypher\\\"},{\\\"begin\\\":\\\"(<-|-)(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.relationship-pattern-start.cypher\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.relationship-pattern-start.cypher\\\"}},\\\"end\\\":\\\"(])(->|-)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.relationship-pattern-end.cypher\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.relationship-pattern-end.cypher\\\"}},\\\"name\\\":\\\"path-pattern.cypher\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#identifiers\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.relationship-type-start.cypher\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.relationship.type.cypher\\\"}},\\\"match\\\":\\\"(:)((?:`.+?`)|(?:[\\\\\\\\p{L}_][\\\\\\\\p{L}0-9_]*))\\\",\\\"name\\\":\\\"entity.name.class.relationship-type.cypher\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.operator.relationship-type-or.cypher\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.relationship.type-or.cypher\\\"}},\\\"match\\\":\\\"(\\\\\\\\|)(\\\\\\\\s*)((?:`.+?`)|(?:[\\\\\\\\p{L}_][\\\\\\\\p{L}0-9_]*))\\\",\\\"name\\\":\\\"entity.name.class.relationship-type-ored.cypher\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\?\\\\\\\\*|\\\\\\\\?|\\\\\\\\*)\\\\\\\\s*(?:\\\\\\\\d+\\\\\\\\s*(?:\\\\\\\\.\\\\\\\\.\\\\\\\\s*\\\\\\\\d+)?)?\\\",\\\"name\\\":\\\"support.function.relationship-pattern.quant.cypher\\\"},{\\\"include\\\":\\\"#properties_literal\\\"}]}]},\\\"properties_literal\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.properties_literal.cypher\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.properties_literal.cypher\\\"}},\\\"name\\\":\\\"source.cypher\\\",\\\"patterns\\\":[{\\\"match\\\":\\\":|,\\\",\\\"name\\\":\\\"keyword.control.properties_literal.seperator.cypher\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#strings\\\"}]}]},\\\"string_escape\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.quoted.double.cypher\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|\\\\\\\\\\\\\\\\[tbnrf])|(\\\\\\\\\\\\\\\\'|\\\\\\\\\\\\\\\\\\\\\\\")\\\",\\\"name\\\":\\\"constant.character.escape.cypher\\\"},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.cypher\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escape\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.cypher\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escape\\\"}]}]}},\\\"scopeName\\\":\\\"source.cypher\\\",\\\"aliases\\\":[\\\"cql\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"D\\\",\\\"fileTypes\\\":[\\\"d\\\",\\\"di\\\",\\\"dpp\\\"],\\\"name\\\":\\\"d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#statement\\\"},{\\\"include\\\":\\\"#expression\\\"}],\\\"repository\\\":{\\\"aggregate-declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#struct-declaration\\\"},{\\\"include\\\":\\\"#union-declaration\\\"},{\\\"include\\\":\\\"#mixin-template-declaration\\\"},{\\\"include\\\":\\\"#template-declaration\\\"}]},\\\"alias-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(alias)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.alias.d\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.alias.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"match\\\":\\\"=(?![=>])\\\",\\\"name\\\":\\\"keyword.operator.equal.alias.d\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"align-attribute\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\balign\\\\\\\\s*\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"storage.modifier.align-attribute.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#integer-literal\\\"}]},{\\\"match\\\":\\\"\\\\\\\\balign\\\\\\\\b\\\\\\\\s*(?!\\\\\\\\()\\\",\\\"name\\\":\\\"storage.modifier.align-attribute.d\\\"}]},\\\"alternate-wysiwyg-string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"`\\\",\\\"end\\\":\\\"`[cwd]?\\\",\\\"name\\\":\\\"string.alternate-wysiwyg-string.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#wysiwyg-characters\\\"}]}]},\\\"arbitrary-delimited-string\\\":{\\\"begin\\\":\\\"q\\\\\\\"(\\\\\\\\w+)\\\",\\\"end\\\":\\\"\\\\\\\\1\\\\\\\"\\\",\\\"name\\\":\\\"string.delimited.d\\\",\\\"patterns\\\":[{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string.delimited.d\\\"}]},\\\"arithmetic-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\^\\\\\\\\^|\\\\\\\\+\\\\\\\\+|--|(?<!/)\\\\\\\\+(?!/)|-|~|(?<!/)\\\\\\\\*(?!/)|(?<![+*/])/(?![+*/])|%\\\",\\\"name\\\":\\\"keyword.operator.numeric.d\\\"}]},\\\"asm-instruction\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"\\\\\\\\b(align|even|naked|db|ds|di|dl|df|dd|de)\\\\\\\\b|:\\\",\\\"name\\\":\\\"keyword.asm-instruction.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b__LOCAL_SIZE\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.assembly.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b(offsetof|seg)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.assembly.d\\\"},{\\\"include\\\":\\\"#asm-type-prefix\\\"},{\\\"include\\\":\\\"#asm-primary-expression\\\"},{\\\"include\\\":\\\"#operands\\\"},{\\\"include\\\":\\\"#register\\\"},{\\\"include\\\":\\\"#register-64\\\"},{\\\"include\\\":\\\"#float-literal\\\"},{\\\"include\\\":\\\"#integer-literal\\\"},{\\\"include\\\":\\\"#identifier\\\"}]},\\\"asm-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(asm)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.asm.begin.d\\\"}},\\\"contentName\\\":\\\"gfm.markup.raw.assembly.d\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.asm.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#asm-instruction\\\"}]}]}]},\\\"asm-type-prefix\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((near\\\\\\\\s+ptr)|(far\\\\\\\\s+ptr)|(byte\\\\\\\\s+ptr)|(short\\\\\\\\s+ptr)|(int\\\\\\\\s+ptr)|(word\\\\\\\\s+ptr)|(dword\\\\\\\\s+ptr)|(qword\\\\\\\\s+ptr)|(float\\\\\\\\s+ptr)|(double\\\\\\\\s+ptr)|(real\\\\\\\\s+ptr))\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.asm-type-prefix.d\\\"}]},\\\"assert-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bassert\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.assert.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.assert.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comma\\\"}]}]},\\\"assign-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\">>>=|\\\\\\\\^\\\\\\\\^=|>>=|<<=|~=|\\\\\\\\^=|\\\\\\\\|=|&=|%=|/=|\\\\\\\\*=|-=|\\\\\\\\+=|=(?!>)\\\",\\\"name\\\":\\\"keyword.operator.assign.d\\\"}]},\\\"attribute\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#linkage-attribute\\\"},{\\\"include\\\":\\\"#align-attribute\\\"},{\\\"include\\\":\\\"#deprecated-attribute\\\"},{\\\"include\\\":\\\"#protection-attribute\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"match\\\":\\\"\\\\\\\\b(static|extern|abstract|final|override|synchronized|auto|scope|const|immutable|inout|shared|__gshared|nothrow|pure|ref)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.attribute-name.d\\\"},{\\\"include\\\":\\\"#property\\\"}]},\\\"base-type\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(auto|bool|byte|ubyte|short|ushort|int|uint|long|ulong|char|wchar|dchar|float|double|real|ifloat|idouble|ireal|cfloat|cdouble|creal|void|noreturn)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.basic-type.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b(string|wstring|dstring|size_t|ptrdiff_t)\\\\\\\\b(?!\\\\\\\\s*=)\\\",\\\"name\\\":\\\"storage.type.basic-type.d\\\"}]},\\\"binary-integer\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(0b|0B)[0-1_]+(Lu|LU|uL|UL|L|u|U)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.binary.d\\\"}]},\\\"bitwise-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\||\\\\\\\\^|&\\\",\\\"name\\\":\\\"keyword.operator.bitwise.d\\\"}]},\\\"block-comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/((?!\\\\\\\\*/)\\\\\\\\*)+\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.block.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\*+/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.block.end.d\\\"}},\\\"name\\\":\\\"comment.block.content.d\\\"}]},\\\"break-statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bbreak\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.break.d\\\"}]},\\\"case-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(case)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.case.range.d\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.case.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comma\\\"}]}]},\\\"cast-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(cast)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.cast.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.cast.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.cast.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#extended-type\\\"}]}]},\\\"catch\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(catch)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.catch.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.d\\\"}]}]}]},\\\"catches\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#catch\\\"}]},\\\"character\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[\\\\\\\\w\\\\\\\\s]+\\\",\\\"name\\\":\\\"string.character.d\\\"}]},\\\"character-literal\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.character-literal.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#character\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"}]}]},\\\"class-declaration\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.d\\\"}},\\\"match\\\":\\\"\\\\\\\\b(class)(?:\\\\\\\\s+([A-Za-z_][\\\\\\\\w_\\\\\\\\d]*))?\\\\\\\\b\\\"},{\\\"include\\\":\\\"#protection-attribute\\\"},{\\\"include\\\":\\\"#class-members\\\"}]},\\\"class-members\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#shared-static-constructor\\\"},{\\\"include\\\":\\\"#shared-static-destructor\\\"},{\\\"include\\\":\\\"#constructor\\\"},{\\\"include\\\":\\\"#destructor\\\"},{\\\"include\\\":\\\"#postblit\\\"},{\\\"include\\\":\\\"#invariant\\\"},{\\\"include\\\":\\\"#member-function-attribute\\\"}]},\\\"colon\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"support.type.colon.d\\\"}]},\\\"comma\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"keyword.operator.comma.d\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comment\\\"},{\\\"include\\\":\\\"#line-comment\\\"},{\\\"include\\\":\\\"#nesting-block-comment\\\"}]},\\\"condition\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#version-condition\\\"},{\\\"include\\\":\\\"#debug-condition\\\"},{\\\"include\\\":\\\"#static-if-condition\\\"}]},\\\"conditional-declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#condition\\\"},{\\\"match\\\":\\\"\\\\\\\\belse\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.else.d\\\"},{\\\"include\\\":\\\"#colon\\\"},{\\\"include\\\":\\\"#decl-defs\\\"}]},\\\"conditional-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s(\\\\\\\\?|:)\\\\\\\\s\\\",\\\"name\\\":\\\"keyword.operator.ternary.d\\\"}]},\\\"conditional-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#condition\\\"},{\\\"include\\\":\\\"#no-scope-non-empty-statement\\\"},{\\\"match\\\":\\\"\\\\\\\\belse\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.else.d\\\"}]},\\\"constructor\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bthis\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.constructor.d\\\"}]},\\\"continue-statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bcontinue\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.continue.d\\\"}]},\\\"debug-condition\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bdebug\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.debug.identifier.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.debug.identifier.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#integer-literal\\\"},{\\\"include\\\":\\\"#identifier\\\"}]},{\\\"match\\\":\\\"\\\\\\\\bdebug\\\\\\\\b\\\\\\\\s*(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.other.debug.plain.d\\\"}]},\\\"debug-specification\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bdebug\\\\\\\\b\\\\\\\\s*(?==)\\\",\\\"name\\\":\\\"keyword.other.debug-specification.d\\\"}]},\\\"decimal-float\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((\\\\\\\\.[0-9])|(0\\\\\\\\.)|(([1-9]|(0[1-9_]))[0-9_]*\\\\\\\\.))[0-9_]*((e-|E-|e\\\\\\\\+|E\\\\\\\\+|e|E)[0-9][0-9_]*)?[LfF]?i?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.decimal.d\\\"}]},\\\"decimal-integer\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(0(?=[^\\\\\\\\dxXbB]))|([1-9][0-9_]*)(Lu|LU|uL|UL|L|u|U)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.d\\\"}]},\\\"declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#alias-declaration\\\"},{\\\"include\\\":\\\"#aggregate-declaration\\\"},{\\\"include\\\":\\\"#enum-declaration\\\"},{\\\"include\\\":\\\"#import-declaration\\\"},{\\\"include\\\":\\\"#storage-class\\\"},{\\\"include\\\":\\\"#void-initializer\\\"},{\\\"include\\\":\\\"#mixin-declaration\\\"}]},\\\"declaration-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration\\\"}]},\\\"default-statement\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.case.default.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.default.colon.d\\\"}},\\\"match\\\":\\\"\\\\\\\\b(default)\\\\\\\\s*(:)\\\"}]},\\\"delete-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bdelete\\\\\\\\s+\\\",\\\"name\\\":\\\"keyword.other.delete.d\\\"}]},\\\"delimited-string\\\":{\\\"begin\\\":\\\"q\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.delimited.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#delimited-string-bracket\\\"},{\\\"include\\\":\\\"#delimited-string-parens\\\"},{\\\"include\\\":\\\"#delimited-string-angle-brackets\\\"},{\\\"include\\\":\\\"#delimited-string-braces\\\"}]},\\\"delimited-string-angle-brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"<\\\",\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"constant.character.angle-brackets.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#wysiwyg-characters\\\"}]}]},\\\"delimited-string-braces\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"constant.character.delimited.braces.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#wysiwyg-characters\\\"}]}]},\\\"delimited-string-bracket\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"constant.characters.delimited.brackets.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#wysiwyg-characters\\\"}]}]},\\\"delimited-string-parens\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"constant.character.delimited.parens.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#wysiwyg-characters\\\"}]}]},\\\"deprecated-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bdeprecated\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.deprecated.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.deprecated.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comma\\\"}]},{\\\"match\\\":\\\"\\\\\\\\bdeprecated\\\\\\\\b\\\\\\\\s*(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.other.deprecated.plain.d\\\"}]},\\\"destructor\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b~this\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\)\\\",\\\"name\\\":\\\"entity.name.class.destructor.d\\\"}]},\\\"do-statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bdo\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.do.d\\\"}]},\\\"double-quoted-characters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#character\\\"},{\\\"include\\\":\\\"#end-of-line\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"}]},\\\"double-quoted-string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"[cwd]?\\\",\\\"name\\\":\\\"string.double-quoted-string.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-quoted-characters\\\"}]}]},\\\"end-of-line\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\n+\\\",\\\"name\\\":\\\"string.character.end-of-line.d\\\"}]},\\\"enum-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(enum)\\\\\\\\b\\\\\\\\s+(?=.*[=;])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum.d\\\"}},\\\"end\\\":\\\"([A-Za-z_][\\\\\\\\w_\\\\\\\\d]*)\\\\\\\\s*(?=;|=|\\\\\\\\()(;)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.enum.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.enum.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#extended-type\\\"},{\\\"match\\\":\\\"=(?![=>])\\\",\\\"name\\\":\\\"keyword.operator.equal.alias.d\\\"}]}]},\\\"eof\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"__EOF__\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.block.documentation.eof.start.d\\\"}},\\\"end\\\":\\\"(?!__NEVER_MATCH__)__NEVER_MATCH__\\\",\\\"name\\\":\\\"text.eof.d\\\"}]},\\\"equal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"=(?![=>])\\\",\\\"name\\\":\\\"keyword.operator.equal.d\\\"}]},\\\"escape-sequence\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\(?:quot|amp|lt|gt|OElig|oelig|Scaron|scaron|Yuml|circ|tilde|ensp|emsp|thinsp|zwnj|zwj|lrm|rlm|ndash|mdash|lsquo|rsquo|sbquo|ldquo|rdquo|bdquo|dagger|Dagger|permil|lsaquo|rsaquo|euro|nbsp|iexcl|cent|pound|curren|yen|brvbar|sect|uml|copy|ordf|laquo|not|shy|reg|macr|deg|plusmn|sup2|sup3|acute|micro|para|middot|cedil|sup1|ordm|raquo|frac14|frac12|frac34|iquest|Agrave|Aacute|Acirc|Atilde|Auml|Aring|Aelig|Ccedil|egrave|eacute|ecirc|iuml|eth|ntilde|ograve|oacute|ocirc|otilde|ouml|divide|oslash|ugrave|uacute|ucirc|uuml|yacute|thorn|yuml|fnof|Alpha|Beta|Gamma|Delta|Epsilon|Zeta|Eta|Theta|Iota|Kappa|Lambda|Mu|Nu|Xi|Omicron|Pi|Rho|Sigma|Tau|Upsilon|Phi|Chi|Psi|Omega|alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigmaf|sigma|tau|upsilon|phi|chi|psi|omega|thetasym|upsih|piv|bull|hellip|prime|Prime|oline|frasl|weierp|image|real|trade|alefsym|larr|uarr|rarr|darr|harr|crarr|lArr|uArr|rArr|dArr|hArr|forall|part|exist|empty|nabla|isin|notin|ni|prod|sum|minux|lowast|radic|prop|infin|ang|and|or|cap|cup|int|there4|sim|cong|asymp|ne|equiv|le|ge|sub|sup|nsub|sube|supe|oplus|otimes|perp|sdot|lceil|rceil|lfloor|rfloor|loz|spades|clubs|hearts|diams|lang|rang))\\\",\\\"name\\\":\\\"constant.character.escape-sequence.entity.d\\\"},{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\x[0-9a-fA-F_]{2}|\\\\\\\\\\\\\\\\u[0-9a-fA-F_]{4}|\\\\\\\\\\\\\\\\U[0-9a-fA-F_]{8}|\\\\\\\\\\\\\\\\[0-7]{1,3})\\\",\\\"name\\\":\\\"constant.character.escape-sequence.number.d\\\"},{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\t|\\\\\\\\\\\\\\\\'|\\\\\\\\\\\\\\\\\\\\\\\"|\\\\\\\\\\\\\\\\\\\\\\\\?|\\\\\\\\\\\\\\\\0|\\\\\\\\\\\\\\\\a|\\\\\\\\\\\\\\\\b|\\\\\\\\\\\\\\\\f|\\\\\\\\\\\\\\\\n|\\\\\\\\\\\\\\\\r|\\\\\\\\\\\\\\\\v|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)\\\",\\\"name\\\":\\\"constant.character.escape-sequence.d\\\"}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#index-expression\\\"},{\\\"include\\\":\\\"#expression-no-index\\\"}]},\\\"expression-no-index\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#function-literal\\\"},{\\\"include\\\":\\\"#assert-expression\\\"},{\\\"include\\\":\\\"#assign-expression\\\"},{\\\"include\\\":\\\"#mixin-expression\\\"},{\\\"include\\\":\\\"#import-expression\\\"},{\\\"include\\\":\\\"#traits-expression\\\"},{\\\"include\\\":\\\"#is-expression\\\"},{\\\"include\\\":\\\"#typeid-expression\\\"},{\\\"include\\\":\\\"#shift-expression\\\"},{\\\"include\\\":\\\"#logical-expression\\\"},{\\\"include\\\":\\\"#rel-expression\\\"},{\\\"include\\\":\\\"#bitwise-expression\\\"},{\\\"include\\\":\\\"#identity-expression\\\"},{\\\"include\\\":\\\"#in-expression\\\"},{\\\"include\\\":\\\"#conditional-expression\\\"},{\\\"include\\\":\\\"#arithmetic-expression\\\"},{\\\"include\\\":\\\"#new-expression\\\"},{\\\"include\\\":\\\"#delete-expression\\\"},{\\\"include\\\":\\\"#cast-expression\\\"},{\\\"include\\\":\\\"#type-specialization\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#special-keyword\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#parentheses-expression\\\"},{\\\"include\\\":\\\"#lexical\\\"}]},\\\"extended-type\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((\\\\\\\\.\\\\\\\\s*)?[_\\\\\\\\w][_\\\\\\\\d\\\\\\\\w]*)(\\\\\\\\s*\\\\\\\\.\\\\\\\\s*[_\\\\\\\\w][_\\\\\\\\d\\\\\\\\w]*)*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.d\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.array.expression.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.array.expression.end.d\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.|\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.operator.slice.d\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"final-switch-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(final\\\\\\\\s+switch)\\\\\\\\b\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.final.switch.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.d\\\"}]}]}]},\\\"finally-statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bfinally\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.throw.d\\\"}]},\\\"float-literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#decimal-float\\\"},{\\\"include\\\":\\\"#hexadecimal-float\\\"}]},\\\"for-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(for)\\\\\\\\b\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.for.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.d\\\"}]}]}]},\\\"foreach-reverse-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(foreach_reverse)\\\\\\\\b\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.foreach_reverse.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"keyword.operator.semi-colon.d\\\"},{\\\"include\\\":\\\"source.d\\\"}]}]}]},\\\"foreach-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(foreach)\\\\\\\\b\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.foreach.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"keyword.operator.semi-colon.d\\\"},{\\\"include\\\":\\\"source.d\\\"}]}]}]},\\\"function-attribute\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(nothrow|pure)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.modifier.function-attribute.d\\\"},{\\\"include\\\":\\\"#property\\\"}]},\\\"function-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#in-statement\\\"},{\\\"include\\\":\\\"#out-statement\\\"},{\\\"include\\\":\\\"#block-statement\\\"}]},\\\"function-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.operator.lambda.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b(function|delegate)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.function-literal.d\\\"},{\\\"begin\\\":\\\"\\\\\\\\b([_\\\\\\\\w][_\\\\\\\\d\\\\\\\\w]*)\\\\\\\\s*(=>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.lexical.token.symbolic.d\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\);,\\\\\\\\]}])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.d\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\)|\\\\\\\\()(\\\\\\\\s*)({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"source.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"source.d\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.d\\\"}]}]},\\\"function-prelude\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?!typeof|typeid)((\\\\\\\\.\\\\\\\\s*)?[_\\\\\\\\w][_\\\\\\\\d\\\\\\\\w]*)(\\\\\\\\s*\\\\\\\\.\\\\\\\\s*[_\\\\\\\\w][_\\\\\\\\d\\\\\\\\w]*)*\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.d\\\"}]},\\\"functions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#function-attribute\\\"},{\\\"include\\\":\\\"#function-prelude\\\"}]},\\\"goto-statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bgoto\\\\\\\\s+default\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.goto.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bgoto\\\\\\\\s+case\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.goto.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bgoto\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.goto.d\\\"}]},\\\"hex-string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"x\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"[cwd]?\\\",\\\"name\\\":\\\"string.hex-string.d\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[a-fA-F0-9_s]+\\\",\\\"name\\\":\\\"constant.character.hex-string.d\\\"}]}]},\\\"hexadecimal-float\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b0[xX][0-9a-fA-F_]*(\\\\\\\\.[0-9a-fA-F_]*)?(p-|P-|p\\\\\\\\+|P\\\\\\\\+|p|P)[0-9][0-9_]*[LfF]?i?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.hexadecimal.d\\\"}]},\\\"hexadecimal-integer\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(0x|0X)([0-9a-fA-F][0-9a-fA-F_]*)(Lu|LU|uL|UL|L|u|U)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.d\\\"}]},\\\"identifier\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((\\\\\\\\.\\\\\\\\s*)?[_\\\\\\\\w][_\\\\\\\\d\\\\\\\\w]*)(\\\\\\\\s*\\\\\\\\.\\\\\\\\s*[_\\\\\\\\w][_\\\\\\\\d\\\\\\\\w]*)*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.d\\\"}]},\\\"identifier-list\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"keyword.other.comma.d\\\"},{\\\"include\\\":\\\"#identifier\\\"}]},\\\"identity-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(is|!is)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.identity.d\\\"}]},\\\"if-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(if)\\\\\\\\b\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.if.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.d\\\"}]}]},{\\\"match\\\":\\\"\\\\\\\\belse\\\\\\\\b\\\\\\\\s*\\\",\\\"name\\\":\\\"keyword.control.else.d\\\"}]},\\\"import-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(static\\\\\\\\s+)?(import)\\\\\\\\s+(?!\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.package.import.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.package.import.d\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.import.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#import-identifier\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"import-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(import)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.import.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.import.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comma\\\"}]}]},\\\"import-identifier\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([_a-zA-Z][_\\\\\\\\d\\\\\\\\w]*)(\\\\\\\\s*\\\\\\\\.\\\\\\\\s*[_a-zA-Z][_\\\\\\\\d\\\\\\\\w]*)*\\\",\\\"name\\\":\\\"variable.parameter.import.d\\\"}]},\\\"in-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(in|!in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.in.d\\\"}]},\\\"in-statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.in.d\\\"}]},\\\"index-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.|\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.operator.slice.d\\\"},{\\\"include\\\":\\\"#expression-no-index\\\"}]}]},\\\"integer-literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#decimal-integer\\\"},{\\\"include\\\":\\\"#binary-integer\\\"},{\\\"include\\\":\\\"#hexadecimal-integer\\\"}]},\\\"interface-declaration\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.interface.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.interface.d\\\"}},\\\"match\\\":\\\"\\\\\\\\b(interface)(?:\\\\\\\\s+([A-Za-z_][\\\\\\\\w_\\\\\\\\d]*))?\\\\\\\\b\\\"}]},\\\"invariant\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\binvariant\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\)\\\",\\\"name\\\":\\\"entity.name.class.invariant.d\\\"}]},\\\"is-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bis\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.token.is.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.token.is.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comma\\\"}]}]},\\\"keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\babstract\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.abstract.d\\\"},{\\\"match\\\":\\\"\\\\\\\\balias\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.alias.d\\\"},{\\\"match\\\":\\\"\\\\\\\\balign\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.align.d\\\"},{\\\"match\\\":\\\"\\\\\\\\basm\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.asm.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bassert\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.assert.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bauto\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.auto.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bbool\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.bool.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bbreak\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.break.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bbyte\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.byte.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bcase\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.case.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bcast\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.cast.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bcatch\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.catch.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bcdouble\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.cdouble.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bcent\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.cent.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bcfloat\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.cfloat.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bchar\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.char.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bclass\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.class.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bconst\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.const.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bcontinue\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.continue.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bcreal\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.creal.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bdchar\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.dchar.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bdebug\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.debug.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bdefault\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.default.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bdelegate\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.delegate.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bdelete\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.delete.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bdeprecated\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.deprecated.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bdo\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.do.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bdouble\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.double.d\\\"},{\\\"match\\\":\\\"\\\\\\\\belse\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.else.d\\\"},{\\\"match\\\":\\\"\\\\\\\\benum\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.enum.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bexport\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.export.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bextern\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.extern.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bfalse\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.false.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bfinal\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.final.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bfinally\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.finally.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bfloat\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.float.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bfor\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.for.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bforeach\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.foreach.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bforeach_reverse\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.foreach_reverse.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bfunction\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.function.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bgoto\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.goto.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bidouble\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.idouble.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bif\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.if.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bifloat\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.ifloat.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bimmutable\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.immutable.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bimport\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.import.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.in.d\\\"},{\\\"match\\\":\\\"\\\\\\\\binout\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.inout.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bint\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.int.d\\\"},{\\\"match\\\":\\\"\\\\\\\\binterface\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.interface.d\\\"},{\\\"match\\\":\\\"\\\\\\\\binvariant\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.invariant.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bireal\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.ireal.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bis\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.is.d\\\"},{\\\"match\\\":\\\"\\\\\\\\blazy\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.lazy.d\\\"},{\\\"match\\\":\\\"\\\\\\\\blong\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.long.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bmacro\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.macro.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bmixin\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.mixin.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bmodule\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.module.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bnew\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.new.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bnothrow\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.nothrow.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bnull\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.null.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bout\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.out.d\\\"},{\\\"match\\\":\\\"\\\\\\\\boverride\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.override.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bpackage\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.package.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bpragma\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.pragma.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bprivate\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.private.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bprotected\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.protected.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bpublic\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.public.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bpure\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.pure.d\\\"},{\\\"match\\\":\\\"\\\\\\\\breal\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.real.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bref\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.ref.d\\\"},{\\\"match\\\":\\\"\\\\\\\\breturn\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.return.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bscope\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.scope.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bshared\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.shared.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bshort\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.short.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bstatic\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.static.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bstruct\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.struct.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bsuper\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.super.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bswitch\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.switch.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bsynchronized\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.synchronized.d\\\"},{\\\"match\\\":\\\"\\\\\\\\btemplate\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.template.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bthis\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.this.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bthrow\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.throw.d\\\"},{\\\"match\\\":\\\"\\\\\\\\btrue\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.true.d\\\"},{\\\"match\\\":\\\"\\\\\\\\btry\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.try.d\\\"},{\\\"match\\\":\\\"\\\\\\\\btypedef\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.typedef.d\\\"},{\\\"match\\\":\\\"\\\\\\\\btypeid\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.typeid.d\\\"},{\\\"match\\\":\\\"\\\\\\\\btypeof\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.typeof.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bubyte\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.ubyte.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bucent\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.ucent.d\\\"},{\\\"match\\\":\\\"\\\\\\\\buint\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.uint.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bulong\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.ulong.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bunion\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.union.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bunittest\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.unittest.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bushort\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.ushort.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bversion\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.version.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bvoid\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.void.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bvolatile\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.volatile.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bwchar\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.wchar.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bwhile\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.while.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bwith\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.with.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b__FILE__\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.__FILE__.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b__MODULE__\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.__MODULE__.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b__LINE__\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.__LINE__.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b__FUNCTION__\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.__FUNCTION__.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b__PRETTY_FUNCTION__\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.__PRETTY_FUNCTION__.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b__gshared\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.__gshared.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b__traits\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.__traits.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b__vector\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.__vector.d\\\"},{\\\"match\\\":\\\"\\\\\\\\b__parameters\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.token.__parameters.d\\\"}]},\\\"labeled-statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?!abstract|alias|align|asm|assert|auto|bool|break|byte|case|cast|catch|cdouble|cent|cfloat|char|class|const|continue|creal|dchar|debug|default|delegate|delete|deprecated|do|double|else|enum|export|extern|false|final|finally|float|for|foreach|foreach_reverse|function|goto|idouble|if|ifloat|immutable|import|in|inout|int|interface|invariant|ireal|is|lazy|long|macro|mixin|module|new|nothrow|noreturn|null|out|override|package|pragma|private|protected|public|pure|real|ref|return|scope|shared|short|static|struct|super|switch|synchronized|template|this|throw|true|try|typedef|typeid|typeof|ubyte|ucent|uint|ulong|union|unittest|ushort|version|void|volatile|wchar|while|with|__FILE__|__MODULE__|__LINE__|__FUNCTION__|__PRETTY_FUNCTION__|__gshared|__traits|__vector|__parameters)[a-zA-Z_][a-zA-Z_0-9]*\\\\\\\\s*:\\\",\\\"name\\\":\\\"entity.name.d\\\"}]},\\\"lexical\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string-literal\\\"},{\\\"include\\\":\\\"#character-literal\\\"},{\\\"include\\\":\\\"#float-literal\\\"},{\\\"include\\\":\\\"#integer-literal\\\"},{\\\"include\\\":\\\"#eof\\\"},{\\\"include\\\":\\\"#special-tokens\\\"},{\\\"include\\\":\\\"#special-token-sequence\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#identifier\\\"}]},\\\"line-comment\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"//+.*$\\\",\\\"name\\\":\\\"comment.line.d\\\"}]},\\\"linkage-attribute\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bextern\\\\\\\\s*\\\\\\\\(\\\\\\\\s*C\\\\\\\\+\\\\\\\\+\\\\\\\\s*,\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.extern.cplusplus.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.extern.cplusplus.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#identifier\\\"},{\\\"include\\\":\\\"#comma\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bextern\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.extern.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.extern.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#linkage-type\\\"}]}]},\\\"linkage-type\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"C|C\\\\\\\\+\\\\\\\\+|D|Windows|Pascal|System\\\",\\\"name\\\":\\\"storage.modifier.linkage-type.d\\\"}]},\\\"logical-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\|\\\\\\\\||&&|==|!=|!\\\",\\\"name\\\":\\\"keyword.operator.logical.d\\\"}]},\\\"member-function-attribute\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(const|immutable|inout|shared)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.modifier.member-function-attribute\\\"}]},\\\"mixin-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bmixin\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.mixin.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.mixin.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comma\\\"}]}]},\\\"mixin-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bmixin\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.mixin.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.mixin.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comma\\\"}]}]},\\\"mixin-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bmixin\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.mixin.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.mixin.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comma\\\"}]}]},\\\"mixin-template-declaration\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.mixintemplate.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.mixintemplate.d\\\"}},\\\"match\\\":\\\"\\\\\\\\b(mixin\\\\\\\\s*template)(?:\\\\\\\\s+([A-Za-z_][\\\\\\\\w_\\\\\\\\d]*))?\\\\\\\\b\\\"}]},\\\"module\\\":{\\\"packages\\\":[{\\\"import\\\":\\\"#module-declaration\\\"}]},\\\"module-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(module)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.package.module.d\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.module.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#module-identifier\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"module-identifier\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([_a-zA-Z][_\\\\\\\\d\\\\\\\\w]*)(\\\\\\\\s*\\\\\\\\.\\\\\\\\s*[_a-zA-Z][_\\\\\\\\d\\\\\\\\w]*)*\\\",\\\"name\\\":\\\"variable.parameter.module.d\\\"}]},\\\"nesting-block-comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/((?!\\\\\\\\+/)\\\\\\\\+)+\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.block.documentation.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\++/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.block.documentation.end.d\\\"}},\\\"name\\\":\\\"comment.block.documentation.content.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nesting-block-comment\\\"}]}]},\\\"new-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bnew\\\\\\\\s+\\\",\\\"name\\\":\\\"keyword.other.new.d\\\"}]},\\\"non-block-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#module-declaration\\\"},{\\\"include\\\":\\\"#labeled-statement\\\"},{\\\"include\\\":\\\"#if-statement\\\"},{\\\"include\\\":\\\"#while-statement\\\"},{\\\"include\\\":\\\"#do-statement\\\"},{\\\"include\\\":\\\"#for-statement\\\"},{\\\"include\\\":\\\"#static-foreach\\\"},{\\\"include\\\":\\\"#static-foreach-reverse\\\"},{\\\"include\\\":\\\"#foreach-statement\\\"},{\\\"include\\\":\\\"#foreach-reverse-statement\\\"},{\\\"include\\\":\\\"#switch-statement\\\"},{\\\"include\\\":\\\"#final-switch-statement\\\"},{\\\"include\\\":\\\"#case-statement\\\"},{\\\"include\\\":\\\"#default-statement\\\"},{\\\"include\\\":\\\"#continue-statement\\\"},{\\\"include\\\":\\\"#break-statement\\\"},{\\\"include\\\":\\\"#return-statement\\\"},{\\\"include\\\":\\\"#goto-statement\\\"},{\\\"include\\\":\\\"#with-statement\\\"},{\\\"include\\\":\\\"#synchronized-statement\\\"},{\\\"include\\\":\\\"#try-statement\\\"},{\\\"include\\\":\\\"#catches\\\"},{\\\"include\\\":\\\"#scope-guard-statement\\\"},{\\\"include\\\":\\\"#throw-statement\\\"},{\\\"include\\\":\\\"#finally-statement\\\"},{\\\"include\\\":\\\"#asm-statement\\\"},{\\\"include\\\":\\\"#pragma-statement\\\"},{\\\"include\\\":\\\"#mixin-statement\\\"},{\\\"include\\\":\\\"#conditional-statement\\\"},{\\\"include\\\":\\\"#static-assert\\\"},{\\\"include\\\":\\\"#deprecated-statement\\\"},{\\\"include\\\":\\\"#unit-test\\\"},{\\\"include\\\":\\\"#declaration-statement\\\"}]},\\\"operands\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\?|:\\\",\\\"name\\\":\\\"keyword.operator.ternary.assembly.d\\\"},{\\\"match\\\":\\\"\\\\\\\\]|\\\\\\\\[\\\",\\\"name\\\":\\\"keyword.operator.bracket.assembly.d\\\"},{\\\"match\\\":\\\">>>|\\\\\\\\|\\\\\\\\||&&|==|!=|<=|>=|<<|>>|\\\\\\\\||\\\\\\\\^|&|<|>|\\\\\\\\+|-|\\\\\\\\*|/|%|~|!\\\",\\\"name\\\":\\\"keyword.operator.assembly.d\\\"}]},\\\"out-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bout\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.out.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.out.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#identifier\\\"}]},{\\\"match\\\":\\\"\\\\\\\\bout\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.out.d\\\"}]},\\\"parentheses-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"postblit\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bthis\\\\\\\\s*\\\\\\\\(\\\\\\\\s*this\\\\\\\\s*\\\\\\\\)\\\\\\\\s\\\",\\\"name\\\":\\\"entity.name.class.postblit.d\\\"}]},\\\"pragma\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bpragma\\\\\\\\s*\\\\\\\\(\\\\\\\\s*[_\\\\\\\\w][_\\\\\\\\d\\\\\\\\w]*\\\\\\\\s*\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.other.pragma.d\\\"},{\\\"begin\\\":\\\"\\\\\\\\bpragma\\\\\\\\s*\\\\\\\\(\\\\\\\\s*[_\\\\\\\\w][_\\\\\\\\d\\\\\\\\w]*\\\\\\\\s*,\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.other.pragma.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"^#!.+\\\",\\\"name\\\":\\\"gfm.markup.header.preprocessor.script-tag.d\\\"}]},\\\"pragma-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#pragma\\\"}]},\\\"property\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"@(property|safe|trusted|system|disable|nogc)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.tag.property.d\\\"},{\\\"include\\\":\\\"#user-defined-attribute\\\"}]},\\\"protection-attribute\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(private|package|protected|public|export)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.protections.d\\\"}]},\\\"register\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(XMM0|XMM1|XMM2|XMM3|XMM4|XMM5|XMM6|XMM7|MM0|MM1|MM2|MM3|MM4|MM5|MM6|MM7|ST\\\\\\\\(0\\\\\\\\)|ST\\\\\\\\(1\\\\\\\\)|ST\\\\\\\\(2\\\\\\\\)|ST\\\\\\\\(3\\\\\\\\)|ST\\\\\\\\(4\\\\\\\\)|ST\\\\\\\\(5\\\\\\\\)|ST\\\\\\\\(6\\\\\\\\)|ST\\\\\\\\(7\\\\\\\\)|ST|TR1|TR2|TR3|TR4|TR5|TR6|TR7|DR0|DR1|DR2|DR3|DR4|DR5|DR6|DR7|CR0|CR2|CR3|CR4|EAX|EBX|ECX|EDX|EBP|ESP|EDI|ESI|AL|AH|AX|BL|BH|BX|CL|CH|CX|DL|DH|DX|BP|SP|DI|SI|ES|CS|SS|DS|GS|FS)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.assembly.register.d\\\"}]},\\\"register-64\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(RAX|RBX|RCX|RDX|BPL|RBP|SPL|RSP|DIL|RDI|SIL|RSI|R8B|R8W|R8D|R8|R9B|R9W|R9D|R9|R10B|R10W|R10D|R10|R11B|R11W|R11D|R11|R12B|R12W|R12D|R12|R13B|R13W|R13D|R13|R14B|R14W|R14D|R14|R15B|R15W|R15D|R15|XMM8|XMM9|XMM10|XMM11|XMM12|XMM13|XMM14|XMM15|YMM0|YMM1|YMM2|YMM3|YMM4|YMM5|YMM6|YMM7|YMM8|YMM9|YMM10|YMM11|YMM12|YMM13|YMM14|YMM15)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.assembly.register-64.d\\\"}]},\\\"rel-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"!<>=|!<>|<>=|!>=|!<=|<=|>=|<>|!>|!<|<|>\\\",\\\"name\\\":\\\"keyword.operator.rel.d\\\"}]},\\\"return-statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\breturn\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.return.d\\\"}]},\\\"scope-guard-statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bscope\\\\\\\\s*\\\\\\\\((exit|success|failure)\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.control.scope.d\\\"}]},\\\"semi-colon\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"meta.statement.end.d\\\"}]},\\\"shared-static-constructor\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(shared\\\\\\\\s+)?static\\\\\\\\s+this\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\)\\\",\\\"name\\\":\\\"entity.name.class.constructor.shared-static.d\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},\\\"shared-static-destructor\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(shared\\\\\\\\s+)?static\\\\\\\\s+~this\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\)\\\",\\\"name\\\":\\\"entity.name.class.destructor.static.d\\\"}]},\\\"shift-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"<<|>>|>>>\\\",\\\"name\\\":\\\"keyword.operator.shift.d\\\"},{\\\"include\\\":\\\"#add-expression\\\"}]},\\\"special-keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(__FILE__|__FILE_FULL_PATH__|__MODULE__|__LINE__|__FUNCTION__|__PRETTY_FUNCTION__)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.special-keyword.d\\\"}]},\\\"special-token-sequence\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"#\\\\\\\\s*line.*\\\",\\\"name\\\":\\\"gfm.markup.italic.special-token-sequence.d\\\"}]},\\\"special-tokens\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(__DATE__|__TIME__|__TIMESTAMP__|__VENDOR__|__VERSION__)\\\\\\\\b\\\",\\\"name\\\":\\\"gfm.markup.raw.special-tokens.d\\\"}]},\\\"statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#non-block-statement\\\"},{\\\"include\\\":\\\"#semi-colon\\\"}]},\\\"static-assert\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bstatic\\\\\\\\s+assert\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.static-assert.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.static-assert.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"static-foreach\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(static\\\\\\\\s+foreach)\\\\\\\\b\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.static-foreach.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"keyword.operator.semi-colon.d\\\"},{\\\"include\\\":\\\"source.d\\\"}]}]}]},\\\"static-foreach-reverse\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(static\\\\\\\\s+foreach_reverse)\\\\\\\\b\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.static-foreach.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"keyword.operator.semi-colon.d\\\"},{\\\"include\\\":\\\"source.d\\\"}]}]}]},\\\"static-if-condition\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bstatic\\\\\\\\s+if\\\\\\\\b\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.static-if.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.static-if.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"storage-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(deprecated|enum|static|extern|abstract|final|override|synchronized|auto|scope|const|immutable|inout|shared|__gshared|nothrow|pure|ref)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.class.d\\\"},{\\\"include\\\":\\\"#linkage-attribute\\\"},{\\\"include\\\":\\\"#align-attribute\\\"},{\\\"include\\\":\\\"#property\\\"}]},\\\"string-literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#wysiwyg-string\\\"},{\\\"include\\\":\\\"#alternate-wysiwyg-string\\\"},{\\\"include\\\":\\\"#hex-string\\\"},{\\\"include\\\":\\\"#arbitrary-delimited-string\\\"},{\\\"include\\\":\\\"#delimited-string\\\"},{\\\"include\\\":\\\"#double-quoted-string\\\"},{\\\"include\\\":\\\"#token-string\\\"}]},\\\"struct-declaration\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.struct.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.struct.d\\\"}},\\\"match\\\":\\\"\\\\\\\\b(struct)(?:\\\\\\\\s+([A-Za-z_][\\\\\\\\w_\\\\\\\\d]*))?\\\\\\\\b\\\"}]},\\\"switch-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(switch)\\\\\\\\b\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.d\\\"}]}]}]},\\\"synchronized-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(synchronized)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.synchronized.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.d\\\"}]}]}]},\\\"template-declaration\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.template.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.template.d\\\"}},\\\"match\\\":\\\"\\\\\\\\b(template)(?:\\\\\\\\s+([A-Za-z_][\\\\\\\\w_\\\\\\\\d]*))?\\\\\\\\b\\\"}]},\\\"throw-statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bthrow\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.throw.d\\\"}]},\\\"token-string\\\":{\\\"begin\\\":\\\"q\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.token.d\\\"}},\\\"end\\\":\\\"\\\\\\\\}[cdw]?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.token.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#token-string-content\\\"}]},\\\"token-string-content\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token-string-content\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#tokens\\\"}]},\\\"tokens\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-literal\\\"},{\\\"include\\\":\\\"#character-literal\\\"},{\\\"include\\\":\\\"#integer-literal\\\"},{\\\"include\\\":\\\"#float-literal\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"match\\\":\\\"~=|~|>>>|>>=|>>|>=|>|=>|==|=|<>|<=|<<|<|%=|%|#|&=|&&|&|\\\\\\\\$|\\\\\\\\|=|\\\\\\\\|\\\\\\\\||\\\\\\\\||\\\\\\\\+=|\\\\\\\\+\\\\\\\\+|\\\\\\\\+|\\\\\\\\^=|\\\\\\\\^\\\\\\\\^=|\\\\\\\\^\\\\\\\\^|\\\\\\\\^|\\\\\\\\*=|\\\\\\\\*|\\\\\\\\}|\\\\\\\\{|\\\\\\\\]|\\\\\\\\[|\\\\\\\\)|\\\\\\\\(|\\\\\\\\.\\\\\\\\.\\\\\\\\.|\\\\\\\\.\\\\\\\\.|\\\\\\\\.|\\\\\\\\?|\\\\\\\\!>=|\\\\\\\\!>|\\\\\\\\!=|\\\\\\\\!<>=|\\\\\\\\!<>|\\\\\\\\!<=|\\\\\\\\!<|\\\\\\\\!|/=|/|@|:|;|,|-=|--|-\\\",\\\"name\\\":\\\"meta.lexical.token.symbolic.d\\\"},{\\\"include\\\":\\\"#identifier\\\"}]},\\\"traits-argument\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"traits-arguments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#traits-argument\\\"},{\\\"include\\\":\\\"#comma\\\"}]},\\\"traits-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b__traits\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.traits.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.traits.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#traits-keyword\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#traits-argument\\\"}]}]},\\\"traits-keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"isAbstractClass|isArithmetic|isAssociativeArray|isFinalClass|isPOD|isNested|isFloating|isIntegral|isScalar|isStaticArray|isUnsigned|isVirtualFunction|isVirtualMethod|isAbstractFunction|isFinalFunction|isStaticFunction|isOverrideFunction|isRef|isOut|isLazy|hasMember|identifier|getAliasThis|getAttributes|getMember|getOverloads|getProtection|getVirtualFunctions|getVirtualMethods|getUnitTests|parent|classInstanceSize|getVirtualIndex|allMembers|derivedMembers|isSame|compiles\\\",\\\"name\\\":\\\"support.constant.traits-keyword.d\\\"}]},\\\"try-statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\btry\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.try.d\\\"}]},\\\"type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typeof\\\"},{\\\"include\\\":\\\"#base-type\\\"},{\\\"include\\\":\\\"#type-ctor\\\"},{\\\"begin\\\":\\\"!\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"type-ctor\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(const|immutable|inout|shared)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.modifier.d\\\"}]},\\\"type-specialization\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(struct|union|class|interface|enum|function|delegate|super|const|immutable|inout|shared|return|__parameters)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.storage.type-specialization.d\\\"}]},\\\"typeid-expression\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\btypeid\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.other.typeid.d\\\"}]},\\\"typeof\\\":{\\\"begin\\\":\\\"typeof\\\\\\\\s*\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.token.typeof.d\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"return\\\",\\\"name\\\":\\\"keyword.control.return.d\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"union-declaration\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.union.d\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.union.d\\\"}},\\\"match\\\":\\\"\\\\\\\\b(union)(?:\\\\\\\\s+([A-Za-z_][\\\\\\\\w_\\\\\\\\d]*))?\\\\\\\\b\\\"}]},\\\"user-defined-attribute\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"@([_\\\\\\\\w][_\\\\\\\\d\\\\\\\\w]*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.tag.user-defined-property.d\\\"},{\\\"begin\\\":\\\"@([_\\\\\\\\w][_\\\\\\\\d\\\\\\\\w]*)?\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"entity.name.tag.user-defined-property.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"version-condition\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bversion\\\\\\\\s*\\\\\\\\(\\\\\\\\s*unittest\\\\\\\\s*\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.other.version.unittest.d\\\"},{\\\"match\\\":\\\"\\\\\\\\bversion\\\\\\\\s*\\\\\\\\(\\\\\\\\s*assert\\\\\\\\s*\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.other.version.assert.d\\\"},{\\\"begin\\\":\\\"\\\\\\\\bversion\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.version.identifier.begin.d\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.version.identifer.end.d\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#integer-literal\\\"},{\\\"include\\\":\\\"#identifier\\\"}]},{\\\"include\\\":\\\"#version-specification\\\"}]},\\\"version-specification\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bversion\\\\\\\\b\\\\\\\\s*(?==)\\\",\\\"name\\\":\\\"keyword.other.version-specification.d\\\"}]},\\\"void-initializer\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bvoid\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.void.d\\\"}]},\\\"while-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(while)\\\\\\\\b\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.while.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.d\\\"}]}]}]},\\\"with-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(with)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.with.d\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.d\\\"}]}]}]},\\\"wysiwyg-characters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#character\\\"},{\\\"include\\\":\\\"#end-of-line\\\"}]},\\\"wysiwyg-string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"r\\\\\\\\\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\\\\\\\\\"[cwd]?\\\",\\\"name\\\":\\\"string.wysiwyg-string.d\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#wysiwyg-characters\\\"}]}]}},\\\"scopeName\\\":\\\"source.d\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Dart\\\",\\\"name\\\":\\\"dart\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"^(#!.*)$\\\",\\\"name\\\":\\\"meta.preprocessor.script.dart\\\"},{\\\"begin\\\":\\\"^\\\\\\\\w*\\\\\\\\b(augment\\\\\\\\s+library|library|import\\\\\\\\s+augment|import|part\\\\\\\\s+of|part|export)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.import.dart\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.dart\\\"}},\\\"name\\\":\\\"meta.declaration.dart\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b(as|show|hide)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.import.dart\\\"},{\\\"match\\\":\\\"\\\\\\\\b(if)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.dart\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#annotations\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#constants-and-special-vars\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#strings\\\"}],\\\"repository\\\":{\\\"annotations\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"@[a-zA-Z]+\\\",\\\"name\\\":\\\"storage.type.annotation.dart\\\"}]},\\\"class-identifier\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(bool|num|int|double|dynamic)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"support.class.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\bvoid\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"storage.type.primitive.dart\\\"},{\\\"begin\\\":\\\"(?<![a-zA-Z0-9_$])([_$]*[A-Z][a-zA-Z0-9_$]*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.dart\\\"}},\\\"end\\\":\\\"(?!<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-args\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.dart\\\"}},\\\"match\\\":\\\"/\\\\\\\\*\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.empty.dart\\\"},{\\\"include\\\":\\\"#comments-doc-oldschool\\\"},{\\\"include\\\":\\\"#comments-doc\\\"},{\\\"include\\\":\\\"#comments-inline\\\"}]},\\\"comments-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.dart\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-block\\\"}]}]},\\\"comments-doc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"///\\\",\\\"end\\\":\\\"^(?!\\\\\\\\s*///)\\\",\\\"name\\\":\\\"comment.block.documentation.dart\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#dartdoc\\\"}]}]},\\\"comments-doc-oldschool\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.dart\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-doc-oldschool\\\"},{\\\"include\\\":\\\"#comments-block\\\"},{\\\"include\\\":\\\"#dartdoc\\\"}]}]},\\\"comments-inline\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-block\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.double-slash.dart\\\"}},\\\"match\\\":\\\"((//).*)$\\\"}]},\\\"constants-and-special-vars\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(true|false|null)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.language.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(this|super|augmented)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b((0(x|X)[0-9a-fA-F][0-9a-fA-F_]*)|(([0-9][0-9_]*\\\\\\\\.?[0-9_]*)|(\\\\\\\\.[0-9][0-9_]*))((e|E)(\\\\\\\\+|-)?[0-9][0-9_]*)?)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.dart\\\"},{\\\"include\\\":\\\"#class-identifier\\\"},{\\\"include\\\":\\\"#function-identifier\\\"}]},\\\"dartdoc\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.name.source.dart\\\"}},\\\"match\\\":\\\"(\\\\\\\\[.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*///\\\\\\\\s*(```)\\\",\\\"end\\\":\\\"^\\\\\\\\s*///\\\\\\\\s*(```)|^(?!\\\\\\\\s*///)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#dartdoc-codeblock-triple\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\*\\\\\\\\s*(```)\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\*\\\\\\\\s*(```)|^(?=\\\\\\\\s*\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#dartdoc-codeblock-block\\\"}]},{\\\"match\\\":\\\"`[^`\\\\n]+`\\\",\\\"name\\\":\\\"variable.other.source.dart\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.source.dart\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\*|\\\\\\\\/\\\\\\\\/)\\\\\\\\s{4,}(.*?)(?=($|\\\\\\\\*\\\\\\\\/))\\\"}]},\\\"dartdoc-codeblock-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\*\\\\\\\\s*(?!(\\\\\\\\s*```|/))\\\",\\\"contentName\\\":\\\"variable.other.source.dart\\\",\\\"end\\\":\\\"\\\\n\\\"},\\\"dartdoc-codeblock-triple\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*///\\\\\\\\s*(?!\\\\\\\\s*```)\\\",\\\"contentName\\\":\\\"variable.other.source.dart\\\",\\\"end\\\":\\\"\\\\n\\\"},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constants-and-special-vars\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"match\\\":\\\"[a-zA-Z0-9_]+\\\",\\\"name\\\":\\\"variable.parameter.dart\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"function-identifier\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.dart\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-args\\\"}]}},\\\"match\\\":\\\"([_$]*[a-z][a-zA-Z0-9_$]*)(<(?:[a-zA-Z0-9_$<>?]|,\\\\\\\\s*|\\\\\\\\s+extends\\\\\\\\s+)+>)?[!?]?\\\\\\\\(\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\bas\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.cast.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(try|on|catch|finally|throw|rethrow)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.catch-exception.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(break|case|continue|default|do|else|for|if|in|switch|while|when)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(sync(\\\\\\\\*)?|async(\\\\\\\\*)?|await|yield(\\\\\\\\*)?)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\bassert\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(new)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.new.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(return)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.control.return.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(abstract|sealed|base|interface|class|enum|extends|extension\\\\\\\\s+type|extension|external|factory|implements|get(?![(<])|mixin|native|operator|set(?![(<])|typedef|with|covariant)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.declaration.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(macro|augment|static|final|const|required|late)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"storage.modifier.dart\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(?:void|var)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"storage.type.primitive.dart\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\$)\\\\\\\\b(is\\\\\\\\!?)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.dart\\\"},{\\\"match\\\":\\\"\\\\\\\\?|:\\\",\\\"name\\\":\\\"keyword.operator.ternary.dart\\\"},{\\\"match\\\":\\\"(<<|>>>?|~|\\\\\\\\^|\\\\\\\\||&)\\\",\\\"name\\\":\\\"keyword.operator.bitwise.dart\\\"},{\\\"match\\\":\\\"((&|\\\\\\\\^|\\\\\\\\||<<|>>>?)=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.bitwise.dart\\\"},{\\\"match\\\":\\\"(=>)\\\",\\\"name\\\":\\\"keyword.operator.closure.dart\\\"},{\\\"match\\\":\\\"(==|!=|<=?|>=?)\\\",\\\"name\\\":\\\"keyword.operator.comparison.dart\\\"},{\\\"match\\\":\\\"(([+*/%-]|\\\\\\\\~)=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.arithmetic.dart\\\"},{\\\"match\\\":\\\"(=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.dart\\\"},{\\\"match\\\":\\\"(\\\\\\\\-\\\\\\\\-|\\\\\\\\+\\\\\\\\+)\\\",\\\"name\\\":\\\"keyword.operator.increment-decrement.dart\\\"},{\\\"match\\\":\\\"(\\\\\\\\-|\\\\\\\\+|\\\\\\\\*|\\\\\\\\/|\\\\\\\\~\\\\\\\\/|%)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.dart\\\"},{\\\"match\\\":\\\"(!|&&|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.logical.dart\\\"}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.comma.dart\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.dart\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.dot.dart\\\"}]},\\\"string-interp\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.dart\\\"}},\\\"match\\\":\\\"\\\\\\\\$([a-zA-Z0-9_]+)\\\",\\\"name\\\":\\\"meta.embedded.expression.dart\\\"},{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.embedded.expression.dart\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.dart\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!r)\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"name\\\":\\\"string.interpolated.triple.double.dart\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-interp\\\"}]},{\\\"begin\\\":\\\"(?<!r)'''\\\",\\\"end\\\":\\\"'''(?!')\\\",\\\"name\\\":\\\"string.interpolated.triple.single.dart\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-interp\\\"}]},{\\\"begin\\\":\\\"r\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"name\\\":\\\"string.quoted.triple.double.dart\\\"},{\\\"begin\\\":\\\"r'''\\\",\\\"end\\\":\\\"'''(?!')\\\",\\\"name\\\":\\\"string.quoted.triple.single.dart\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\|r)\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.interpolated.double.dart\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"invalid.string.newline\\\"},{\\\"include\\\":\\\"#string-interp\\\"}]},{\\\"begin\\\":\\\"r\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.dart\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"invalid.string.newline\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\|r)'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.interpolated.single.dart\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"invalid.string.newline\\\"},{\\\"include\\\":\\\"#string-interp\\\"}]},{\\\"begin\\\":\\\"r'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.dart\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"invalid.string.newline\\\"}]}]},\\\"type-args\\\":{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"other.source.dart\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"other.source.dart\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#class-identifier\\\"},{\\\"match\\\":\\\",\\\"},{\\\"match\\\":\\\"extends\\\",\\\"name\\\":\\\"keyword.declaration.dart\\\"},{\\\"include\\\":\\\"#comments\\\"}]}},\\\"scopeName\\\":\\\"source.dart\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"DAX\\\",\\\"name\\\":\\\"dax\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#labels\\\"},{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"}],\\\"repository\\\":{\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.dax\\\"}},\\\"end\\\":\\\"\\\\n\\\",\\\"name\\\":\\\"comment.line.dax\\\"},{\\\"begin\\\":\\\"--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.dax\\\"}},\\\"end\\\":\\\"\\\\n\\\",\\\"name\\\":\\\"comment.line.dax\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.dax\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.dax\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(YIELDMAT|YIELDDISC|YIELD|YEARFRAC|YEAR|XNPV|XIRR|WEEKNUM|WEEKDAY|VDB|VARX.S|VARX.P|VAR.S|VAR.P|VALUES|VALUE|UTCTODAY|UTCNOW|USERPRINCIPALNAME|USEROBJECTID|USERNAME|USERELATIONSHIP|USERCULTURE|UPPER|UNION|UNICODE|UNICHAR|TRUNC|TRUE|TRIM|TREATAS|TOTALYTD|TOTALQTD|TOTALMTD|TOPNSKIP|TOPNPERLEVEL|TOPN|TODAY|TIMEVALUE|TIME|TBILLYIELD|TBILLPRICE|TBILLEQ|TANH|TAN|T.INV.2T|T.INV|T.DIST.RT|T.DIST.2T|T.DIST|SYD|SWITCH|SUMX|SUMMARIZECOLUMNS|SUMMARIZE|SUM|SUBSTITUTEWITHINDEX|SUBSTITUTE|STDEVX.S|STDEVX.P|STDEV.S|STDEV.P|STARTOFYEAR|STARTOFQUARTER|STARTOFMONTH|SQRTPI|SQRT|SLN|SINH|SIN|SIGN|SELECTEDVALUE|SELECTEDMEASURENAME|SELECTEDMEASUREFORMATSTRING|SELECTEDMEASURE|SELECTCOLUMNS|SECOND|SEARCH|SAMPLE|SAMEPERIODLASTYEAR|RRI|ROW|ROUNDUP|ROUNDDOWN|ROUND|ROLLUPISSUBTOTAL|ROLLUPGROUP|ROLLUPADDISSUBTOTAL|ROLLUP|RIGHT|REPT|REPLACE|REMOVEFILTERS|RELATEDTABLE|RELATED|RECEIVED|RATE|RANKX|RANK.EQ|RANDBETWEEN|RAND|RADIANS|QUOTIENT|QUARTER|PV|PRODUCTX|PRODUCT|PRICEMAT|PRICEDISC|PRICE|PREVIOUSYEAR|PREVIOUSQUARTER|PREVIOUSMONTH|PREVIOUSDAY|PPMT|POWER|POISSON.DIST|PMT|PI|PERMUT|PERCENTILEX.INC|PERCENTILEX.EXC|PERCENTILE.INC|PERCENTILE.EXC|PDURATION|PATHLENGTH|PATHITEMREVERSE|PATHITEM|PATHCONTAINS|PATH|PARALLELPERIOD|OR|OPENINGBALANCEYEAR|OPENINGBALANCEQUARTER|OPENINGBALANCEMONTH|ODDLYIELD|ODDLPRICE|ODDFYIELD|ODDFPRICE|ODD|NPER|NOW|NOT|NORM.S.INV|NORM.S.DIST|NORM.INV|NORM.DIST|NONVISUAL|NOMINAL|NEXTYEAR|NEXTQUARTER|NEXTMONTH|NEXTDAY|NATURALLEFTOUTERJOIN|NATURALINNERJOIN|MROUND|MONTH|MOD|MINX|MINUTE|MINA|MIN|MID|MEDIANX|MEDIAN|MDURATION|MAXX|MAXA|MAX|LOWER|LOOKUPVALUE|LOG10|LOG|LN|LEN|LEFT|LCM|LASTNONBLANKVALUE|LASTNONBLANK|LASTDATE|KEYWORDMATCH|KEEPFILTERS|ISTEXT|ISSUBTOTAL|ISSELECTEDMEASURE|ISPMT|ISONORAFTER|ISODD|ISO.CEILING|ISNUMBER|ISNONTEXT|ISLOGICAL|ISINSCOPE|ISFILTERED|ISEVEN|ISERROR|ISEMPTY|ISCROSSFILTERED|ISBLANK|ISAFTER|IPMT|INTRATE|INTERSECT|INT|IGNORE|IFERROR|IF.EAGER|IF|HOUR|HASONEVALUE|HASONEFILTER|HASH|GROUPBY|GEOMEANX|GEOMEAN|GENERATESERIES|GENERATEALL|GENERATE|GCD|FV|FORMAT|FLOOR|FIXED|FIRSTNONBLANKVALUE|FIRSTNONBLANK|FIRSTDATE|FIND|FILTERS|FILTER|FALSE|FACT|EXPON.DIST|EXP|EXCEPT|EXACT|EVEN|ERROR|EOMONTH|ENDOFYEAR|ENDOFQUARTER|ENDOFMONTH|EFFECT|EDATE|EARLIEST|EARLIER|DURATION|DOLLARFR|DOLLARDE|DIVIDE|DISTINCTCOUNTNOBLANK|DISTINCTCOUNT|DISTINCT|DISC|DETAILROWS|DEGREES|DDB|DB|DAY|DATEVALUE|DATESYTD|DATESQTD|DATESMTD|DATESINPERIOD|DATESBETWEEN|DATEDIFF|DATEADD|DATE|DATATABLE|CUSTOMDATA|CURRENTGROUP|CURRENCY|CUMPRINC|CUMIPMT|CROSSJOIN|CROSSFILTER|COUPPCD|COUPNUM|COUPNCD|COUPDAYSNC|COUPDAYS|COUPDAYBS|COUNTX|COUNTROWS|COUNTBLANK|COUNTAX|COUNTA|COUNT|COTH|COT|COSH|COS|CONVERT|CONTAINSSTRINGEXACT|CONTAINSSTRING|CONTAINSROW|CONTAINS|CONFIDENCE.T|CONFIDENCE.NORM|CONCATENATEX|CONCATENATE|COMBINEVALUES|COMBINA|COMBIN|COLUMNSTATISTICS|COALESCE|CLOSINGBALANCEYEAR|CLOSINGBALANCEQUARTER|CLOSINGBALANCEMONTH|CHISQ.INV.RT|CHISQ.INV|CHISQ.DIST.RT|CHISQ.DIST|CEILING|CALENDARAUTO|CALENDAR|CALCULATETABLE|CALCULATE|BLANK|BETA.INV|BETA.DIST|AVERAGEX|AVERAGEA|AVERAGE|ATANH|ATAN|ASINH|ASIN|APPROXIMATEDISTINCTCOUNT|AND|AMORLINC|AMORDEGRC|ALLSELECTED|ALLNOBLANKROW|ALLEXCEPT|ALLCROSSFILTERED|ALL|ADDMISSINGITEMS|ADDCOLUMNS|ACOTH|ACOT|ACOSH|ACOS|ACCRINTM|ACCRINT|ABS)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.dax\\\"},{\\\"match\\\":\\\"\\\\\\\\b(DEFINE|EVALUATE|ORDER BY|RETURN|VAR)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.dax\\\"},{\\\"match\\\":\\\"{|}\\\",\\\"name\\\":\\\"keyword.array.constructor.dax\\\"},{\\\"match\\\":\\\">|<|>=|<=|=(?!==)\\\",\\\"name\\\":\\\"keyword.operator.comparison.dax\\\"},{\\\"match\\\":\\\"&&|IN|NOT|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.dax\\\"},{\\\"match\\\":\\\"\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\/\\\",\\\"name\\\":\\\"keyword.arithmetic.operator.dax\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"support.function.dax\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.dax\\\"},{\\\"begin\\\":\\\"\\\\\\\\'\\\",\\\"end\\\":\\\"\\\\\\\\'\\\",\\\"name\\\":\\\"support.class.dax\\\"}]},\\\"labels\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.label.dax\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.label.dax\\\"}},\\\"match\\\":\\\"(^(.*?)\\\\\\\\s*(:=|!=))\\\"}]},\\\"metas\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.dax\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.dax\\\"}}}]},\\\"numbers\\\":{\\\"match\\\":\\\"-?(?:0|[1-9]\\\\\\\\d*)(?:(?:\\\\\\\\.\\\\\\\\d+)?(?:[eE][+-]?\\\\\\\\d+)?)?\\\",\\\"name\\\":\\\"constant.numeric.dax\\\"},\\\"parameters\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(VAR)\\\\\\\\b(?<!\\\\\\\\.)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.dax\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.dax\\\"}},\\\"comment\\\":\\\"build out variable assignment\\\",\\\"end\\\":\\\"=\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.dax\\\"}},\\\"name\\\":\\\"meta.function.definition.parameters.dax\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.control.dax\\\"}]},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.constant.dax\\\"}]},\\\"strings\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.dax\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.dax\\\"}]}},\\\"scopeName\\\":\\\"source.dax\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Desktop\\\",\\\"name\\\":\\\"desktop\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#layout\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#values\\\"},{\\\"include\\\":\\\"#inCommands\\\"},{\\\"include\\\":\\\"#inCategories\\\"}],\\\"repository\\\":{\\\"inCategories\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^Categories.*)AudioVideo|(?<=^Categories.*)Audio|(?<=^Categories.*)Video|(?<=^Categories.*)Development|(?<=^Categories.*)Education|(?<=^Categories.*)Game|(?<=^Categories.*)Graphics|(?<=^Categories.*)Network|(?<=^Categories.*)Office|(?<=^Categories.*)Science|(?<=^Categories.*)Settings|(?<=^Categories.*)System|(?<=^Categories.*)Utility\\\",\\\"name\\\":\\\"markup.bold\\\"}]},\\\"inCommands\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^Exec.*\\\\\\\\s)-+\\\\\\\\S+\\\",\\\"name\\\":\\\"variable.parameter\\\"},{\\\"match\\\":\\\"(?<=^Exec.*)\\\\\\\\s\\\\\\\\%[fFuUick]\\\\\\\\s\\\",\\\"name\\\":\\\"variable.language\\\"},{\\\"match\\\":\\\"\\\\\\\".*\\\\\\\"\\\",\\\"name\\\":\\\"string\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^Type\\\\\\\\b|^Version\\\\\\\\b|^Name\\\\\\\\b|^GenericName\\\\\\\\b|^NoDisplay\\\\\\\\b|^Comment\\\\\\\\b|^Icon\\\\\\\\b|^Hidden\\\\\\\\b|^OnlyShowIn\\\\\\\\b|^NotShowIn\\\\\\\\b|^DBusActivatable\\\\\\\\b|^TryExec\\\\\\\\b|^Exec\\\\\\\\b|^Path\\\\\\\\b|^Terminal\\\\\\\\b|^Actions\\\\\\\\b|^MimeType\\\\\\\\b|^Categories\\\\\\\\b|^Implements\\\\\\\\b|^Keywords\\\\\\\\b|^StartupNotify\\\\\\\\b|^StartupWMClass\\\\\\\\b|^URL\\\\\\\\b|^PrefersNonDefaultGPU\\\\\\\\b|^Encoding\\\\\\\\b\\\",\\\"name\\\":\\\"keyword\\\"},{\\\"match\\\":\\\"^X-[A-z 0-9 -]*\\\",\\\"name\\\":\\\"keyword.other\\\"},{\\\"match\\\":\\\"(?<!^)\\\\\\\\[.+\\\\\\\\]\\\",\\\"name\\\":\\\"constant.language\\\"},{\\\"match\\\":\\\"^GtkTheme\\\\\\\\b|^MetacityTheme\\\\\\\\b|^IconTheme\\\\\\\\b|^CursorTheme\\\\\\\\b|^ButtonLayout\\\\\\\\b|^ApplicationFont\\\\\\\\b\\\",\\\"name\\\":\\\"keyword\\\"}]},\\\"layout\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\[Desktop\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"markup.heading\\\"},{\\\"begin\\\":\\\"^\\\\\\\\[X-\\\\\\\\w*\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"markup.heading\\\"},{\\\"match\\\":\\\"^\\\\\\\\s*#.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"strong\\\"}]},\\\"values\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^\\\\\\\\S+)=\\\",\\\"name\\\":\\\"keyword.operator\\\"},{\\\"match\\\":\\\"\\\\\\\\btrue\\\\\\\\b|\\\\\\\\bfalse\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other\\\"},{\\\"match\\\":\\\"(?<=^Version.*)\\\\\\\\d+(\\\\\\\\.{0,1}\\\\\\\\d*)\\\",\\\"name\\\":\\\"variable.other\\\"}]}},\\\"scopeName\\\":\\\"source.desktop\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Diff\\\",\\\"name\\\":\\\"diff\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.separator.diff\\\"}},\\\"match\\\":\\\"^((\\\\\\\\*{15})|(={67})|(-{3}))$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.separator.diff\\\"},{\\\"match\\\":\\\"^\\\\\\\\d+(,\\\\\\\\d+)*(a|d|c)\\\\\\\\d+(,\\\\\\\\d+)*$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.diff.range.normal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.range.diff\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.toc-list.line-number.diff\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.range.diff\\\"}},\\\"match\\\":\\\"^(@@)\\\\\\\\s*(.+?)\\\\\\\\s*(@@)($\\\\\\\\n?)?\\\",\\\"name\\\":\\\"meta.diff.range.unified\\\"},{\\\"captures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.range.diff\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.range.diff\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.range.diff\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.range.diff\\\"}},\\\"match\\\":\\\"^(((\\\\\\\\-{3}) .+ (\\\\\\\\-{4}))|((\\\\\\\\*{3}) .+ (\\\\\\\\*{4})))$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.diff.range.context\\\"},{\\\"match\\\":\\\"^diff --git a/.*$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.diff.header.git\\\"},{\\\"match\\\":\\\"^diff (-|\\\\\\\\S+\\\\\\\\s+\\\\\\\\S+).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.diff.header.command\\\"},{\\\"captures\\\":{\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.from-file.diff\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.from-file.diff\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.from-file.diff\\\"}},\\\"match\\\":\\\"(^(((-{3}) .+)|((\\\\\\\\*{3}) .+))$\\\\\\\\n?|^(={4}) .+(?= - ))\\\",\\\"name\\\":\\\"meta.diff.header.from-file\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.to-file.diff\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.to-file.diff\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.to-file.diff\\\"}},\\\"match\\\":\\\"(^(\\\\\\\\+{3}) .+$\\\\\\\\n?| (-) .* (={4})$\\\\\\\\n?)\\\",\\\"name\\\":\\\"meta.diff.header.to-file\\\"},{\\\"captures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.inserted.diff\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.inserted.diff\\\"}},\\\"match\\\":\\\"^(((>)( .*)?)|((\\\\\\\\+).*))$\\\\\\\\n?\\\",\\\"name\\\":\\\"markup.inserted.diff\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.changed.diff\\\"}},\\\"match\\\":\\\"^(!).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"markup.changed.diff\\\"},{\\\"captures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.deleted.diff\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.deleted.diff\\\"}},\\\"match\\\":\\\"^(((<)( .*)?)|((-).*))$\\\\\\\\n?\\\",\\\"name\\\":\\\"markup.deleted.diff\\\"},{\\\"begin\\\":\\\"^(#)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.diff\\\"}},\\\"comment\\\":\\\"Git produces unified diffs with embedded comments\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.diff\\\"},{\\\"match\\\":\\\"^index [0-9a-f]{7,40}\\\\\\\\.\\\\\\\\.[0-9a-f]{7,40}.*$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.diff.index.git\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.diff\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.toc-list.file-name.diff\\\"}},\\\"match\\\":\\\"^Index(:) (.+)$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.diff.index\\\"},{\\\"match\\\":\\\"^Only in .*: .*$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.diff.only-in\\\"}],\\\"scopeName\\\":\\\"source.diff\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Dockerfile\\\",\\\"name\\\":\\\"docker\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.special-method.dockerfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.special-method.dockerfile\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\b(?i:(FROM))\\\\\\\\b.*?\\\\\\\\b(?i:(AS))\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.dockerfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.special-method.dockerfile\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(?i:(ONBUILD)\\\\\\\\s+)?(?i:(ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR))\\\\\\\\s\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.dockerfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.special-method.dockerfile\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(?i:(ONBUILD)\\\\\\\\s+)?(?i:(CMD|ENTRYPOINT))\\\\\\\\s\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.dockerfile\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.dockerfile\\\"}},\\\"name\\\":\\\"string.quoted.double.dockerfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.dockerfile\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.dockerfile\\\"}},\\\"name\\\":\\\"string.quoted.single.dockerfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.dockerfile\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.number-sign.dockerfile\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.dockerfile\\\"}},\\\"comment\\\":\\\"comment.line\\\",\\\"match\\\":\\\"^(\\\\\\\\s*)((#).*$\\\\\\\\n?)\\\"}],\\\"repository\\\":{\\\"string-character-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escaped.dockerfile\\\"}},\\\"scopeName\\\":\\\"source.dockerfile\\\",\\\"aliases\\\":[\\\"dockerfile\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"dotEnv\\\",\\\"name\\\":\\\"dotenv\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#line-comment\\\"}]}},\\\"comment\\\":\\\"Full Line Comment\\\",\\\"match\\\":\\\"^\\\\\\\\s?(#.*$)\\\\\\\\n\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#key\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.dotenv\\\"},\\\"3\\\":{\\\"name\\\":\\\"property.value.dotenv\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line-comment\\\"},{\\\"include\\\":\\\"#double-quoted-string\\\"},{\\\"include\\\":\\\"#single-quoted-string\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]}},\\\"comment\\\":\\\"ENV entry\\\",\\\"match\\\":\\\"^\\\\\\\\s?(.*?)\\\\\\\\s?(\\\\\\\\=)(.*)$\\\"}],\\\"repository\\\":{\\\"double-quoted-string\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#escape-characters\\\"}]}},\\\"comment\\\":\\\"Double Quoted String\\\",\\\"match\\\":\\\"\\\\\\\"(.*)\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.dotenv\\\"},\\\"escape-characters\\\":{\\\"comment\\\":\\\"Escape characters\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[nrtfb\\\\\\\"'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\u[0123456789ABCDEF]{4}\\\",\\\"name\\\":\\\"constant.character.escape.dotenv\\\"},\\\"interpolation\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.interpolation.begin.dotenv\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.interpolation.dotenv\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.interpolation.end.dotenv\\\"}},\\\"comment\\\":\\\"Interpolation (variable substitution)\\\",\\\"match\\\":\\\"(\\\\\\\\$\\\\\\\\{)(.*)(\\\\\\\\})\\\"},\\\"key\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.key.export.dotenv\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.key.dotenv\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"}]}},\\\"comment\\\":\\\"Key\\\",\\\"match\\\":\\\"(export\\\\\\\\s)?(.*)\\\"},\\\"line-comment\\\":{\\\"comment\\\":\\\"Comment\\\",\\\"match\\\":\\\"#.*$\\\",\\\"name\\\":\\\"comment.line.dotenv\\\"},\\\"single-quoted-string\\\":{\\\"comment\\\":\\\"Single Quoted String\\\",\\\"match\\\":\\\"'(.*)'\\\",\\\"name\\\":\\\"string.quoted.single.dotenv\\\"},\\\"variable\\\":{\\\"comment\\\":\\\"env variable\\\",\\\"match\\\":\\\"[a-zA-Z_]+[a-zA-Z0-9_]*\\\"}},\\\"scopeName\\\":\\\"source.dotenv\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Dream Maker\\\",\\\"fileTypes\\\":[\\\"dm\\\",\\\"dme\\\"],\\\"foldingStartMarker\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!\\\\\\\\*)|^(?![^{]*?//|[^{]*?/\\\\\\\\*(?!.*?\\\\\\\\*/.*?\\\\\\\\{)).*?\\\\\\\\{\\\\\\\\s*($|//|/\\\\\\\\*(?!.*?\\\\\\\\*/.*\\\\\\\\S))\\\",\\\"foldingStopMarker\\\":\\\"(?<!\\\\\\\\*)\\\\\\\\*\\\\\\\\*/|^\\\\\\\\s*\\\\\\\\}\\\",\\\"name\\\":\\\"dream-maker\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled\\\"},{\\\"include\\\":\\\"#preprocessor-rule-other\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.dm\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.dm\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.dm\\\"}},\\\"match\\\":\\\"(var)[\\\\\\\\/ ](?:(static|global|tmp|const)\\\\\\\\/)?(?:(datum|atom(?:\\\\\\\\/movable)?|obj|mob|turf|area|savefile|list|client|sound|image|database|matrix|regex|exception)\\\\\\\\/)?(?:([a-zA-Z0-9_\\\\\\\\-$]*)\\\\\\\\/)*([A-Za-z0-9_$]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.initialization.dm\\\"},{\\\"match\\\":\\\"\\\\\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\\\\\.?[0-9]*)|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.dm\\\"},{\\\"match\\\":\\\"\\\\\\\\b(sleep|spawn|break|continue|do|else|for|goto|if|return|switch|while)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.dm\\\"},{\\\"match\\\":\\\"\\\\\\\\b(del|new)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.dm\\\"},{\\\"match\\\":\\\"\\\\\\\\b(proc|verb|datum|atom(/movable)?|obj|mob|turf|area|savefile|list|client|sound|image|database|matrix|regex|exception)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.dm\\\"},{\\\"match\\\":\\\"\\\\\\\\b(as|const|global|set|static|tmp)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.dm\\\"},{\\\"match\\\":\\\"\\\\\\\\b(usr|world|src|args)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.dm\\\"},{\\\"match\\\":\\\"(\\\\\\\\?|(>|<)(=)?|\\\\\\\\.|:|/(=)?|~|\\\\\\\\+(\\\\\\\\+|=)?|-(-|=)?|\\\\\\\\*(\\\\\\\\*|=)?|%|>>|<<|=(=)?|!(=)?|<>|&|&&|\\\\\\\\^|\\\\\\\\||\\\\\\\\|\\\\\\\\||\\\\\\\\bto\\\\\\\\b|\\\\\\\\bin\\\\\\\\b|\\\\\\\\bstep\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.operator.dm\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Z_][A-Z_0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.dm\\\"},{\\\"match\\\":\\\"\\\\\\\\bnull\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.dm\\\"},{\\\"begin\\\":\\\"{\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.dm\\\"}},\\\"end\\\":\\\"\\\\\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.dm\\\"}},\\\"name\\\":\\\"string.quoted.triple.dm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_embedded_expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.dm\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.dm\\\"}},\\\"name\\\":\\\"string.quoted.double.dm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_embedded_expression\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.dm\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.dm\\\"}},\\\"name\\\":\\\"string.quoted.single.dm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((\\\\\\\\#)\\\\\\\\s*define)\\\\\\\\s+((?<id>[a-zA-Z_][a-zA-Z0-9_]*))(?:(\\\\\\\\()(\\\\\\\\s*\\\\\\\\g<id>\\\\\\\\s*((,)\\\\\\\\s*\\\\\\\\g<id>\\\\\\\\s*)*(?:\\\\\\\\.\\\\\\\\.\\\\\\\\.)?)(\\\\\\\\)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.define.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.dm\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.dm\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.dm\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.preprocessor.dm\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.dm\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.dm\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.macro.dm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((\\\\\\\\#)\\\\\\\\s*define)\\\\\\\\s+((?<id>[a-zA-Z_][a-zA-Z0-9_]*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.define.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.dm\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.preprocessor.dm\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.macro.dm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(error|warn))\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.error.dm\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.preprocessor.diagnostic.dm\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.dm\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(?:((#)\\\\\\\\s*(?:elif|else|if|ifdef|ifndef))|((#)\\\\\\\\s*(undef|include)))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.dm\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.directive.$5.dm\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.directive.dm\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.dm\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.dm\\\"}]},{\\\"include\\\":\\\"#block\\\"},{\\\"begin\\\":\\\"(?:^|(?:(?=\\\\\\\\s)(?<!else|new|return)(?<=\\\\\\\\w)|(?=\\\\\\\\s*[A-Za-z_])(?<!&&)(?<=[*&>])))(\\\\\\\\s*)(?!(while|for|do|if|else|switch|catch|enumerate|return|r?iterate)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.function.leading.dm\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.dm\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.dm\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=#)|(;)?\\\",\\\"name\\\":\\\"meta.function.dm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"match\\\":\\\"\\\\\\\\bconst\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.dm\\\"},{\\\"include\\\":\\\"#block\\\"}]}],\\\"repository\\\":{\\\"access\\\":{\\\"match\\\":\\\"\\\\\\\\.[a-zA-Z_][a-zA-Z_0-9]*\\\\\\\\b(?!\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"variable.other.dot-access.dm\\\"},\\\"block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.block.dm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]},\\\"block_innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-other-block\\\"},{\\\"include\\\":\\\"#access\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.function-call.leading.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.any-method.dm\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.dm\\\"}},\\\"match\\\":\\\"(?:(?=\\\\\\\\s)(?:(?<=else|new|return)|(?<!\\\\\\\\w))(\\\\\\\\s+))?(\\\\\\\\b(?!(while|for|do|if|else|switch|catch|enumerate|return|r?iterate)\\\\\\\\s*\\\\\\\\()(?:(?!NS)[A-Za-z_][A-Za-z0-9_]*+\\\\\\\\b|::)++)\\\\\\\\s*(\\\\\\\\()\\\",\\\"name\\\":\\\"meta.function-call.dm\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.toc-list.banner.block.dm\\\"}},\\\"match\\\":\\\"^/\\\\\\\\* =(\\\\\\\\s*.*?)\\\\\\\\s*= \\\\\\\\*/$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.block.dm\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.dm\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.dm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},{\\\"match\\\":\\\"\\\\\\\\*/.*\\\\\\\\n\\\",\\\"name\\\":\\\"invalid.illegal.stray-comment-end.dm\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.toc-list.banner.line.dm\\\"}},\\\"match\\\":\\\"^// =(\\\\\\\\s*.*?)\\\\\\\\s*=\\\\\\\\s*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.banner.dm\\\"},{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.dm\\\"}},\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.dm\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.dm\\\"}]}]},\\\"disabled\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*if(n?def)?\\\\\\\\b.*$\\\",\\\"comment\\\":\\\"eat nested preprocessor if(def)s\\\",\\\"end\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"}]},\\\"parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.parens.dm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"preprocessor-rule-disabled\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.dm\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.dm\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.dm\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*$)\\\",\\\"name\\\":\\\"comment.block.preprocessor.if-branch\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"}]}]},\\\"preprocessor-rule-disabled-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.dm\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.dm\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.dm\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*$)\\\",\\\"name\\\":\\\"comment.block.preprocessor.if-branch.in-block\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"}]}]},\\\"preprocessor-rule-enabled\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0*1)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.dm\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.dm\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.dm\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]},\\\"preprocessor-rule-enabled-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0*1)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.dm\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.dm\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.dm\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.in-block\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]}]},\\\"preprocessor-rule-other\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#\\\\\\\\s*(if(n?def)?))\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.dm\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#\\\\\\\\s*(endif))\\\\\\\\b).*$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"preprocessor-rule-other-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(if(n?def)?)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.dm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.dm\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b).*$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]},\\\"string_embedded_expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.interpolated.dm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"string_escaped_char\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(h(?:(?:er|im)self|ers|im)|([tTsS]?he)|He|[Hh]is|[aA]n?|(?:im)?proper|\\\\\\\\.\\\\\\\\.\\\\\\\\.|(?:icon|ref|[Rr]oman)(?=\\\\\\\\[)|[s<>\\\\\\\"n\\\\\\\\n \\\\\\\\[])\\\",\\\"name\\\":\\\"constant.character.escape.dm\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape.dm\\\"}]}},\\\"scopeName\\\":\\\"source.dm\\\"}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"HTML (Derivative)\\\",\\\"injections\\\":{\\\"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)\\\":{\\\"comment\\\":\\\"Uses R: to ensure this matches after any other injections.\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"}]}},\\\"name\\\":\\\"html-derivative\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#core-minus-invalid\\\"},{\\\"begin\\\":\\\"(</?)(\\\\\\\\w[^\\\\\\\\s>]*)(?<!/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"((?: ?/)?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.unrecognized.html.derivative\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]}],\\\"scopeName\\\":\\\"text.html.derivative\\\",\\\"embeddedLangs\\\":[\\\"html\\\"]}\"))\n\nexport default [\n...html,\nlang\n]\n", "import typescript from './typescript.mjs'\nimport html from './html.mjs'\nimport html_derivative from './html-derivative.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Edge\\\",\\\"injections\\\":{\\\"text.html.edge - (meta.embedded | meta.tag | comment.block.edge), L:(text.html.edge meta.tag - (comment.block.edge | meta.embedded.block.edge)), L:(source.ts.embedded.html - (comment.block.edge | meta.embedded.block.edge))\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#escapedMustache\\\"},{\\\"include\\\":\\\"#safeMustache\\\"},{\\\"include\\\":\\\"#mustache\\\"},{\\\"include\\\":\\\"#nonSeekableTag\\\"},{\\\"include\\\":\\\"#tag\\\"}]}},\\\"name\\\":\\\"edge\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}],\\\"repository\\\":{\\\"comment\\\":{\\\"begin\\\":\\\"\\\\\\\\{{--\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.edge\\\"}},\\\"end\\\":\\\"\\\\\\\\--}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.edge\\\"}},\\\"name\\\":\\\"comment.block\\\"},\\\"escapedMustache\\\":{\\\"begin\\\":\\\"\\\\\\\\@{{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.edge\\\"}},\\\"end\\\":\\\"\\\\\\\\}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.edge\\\"}},\\\"name\\\":\\\"comment.block\\\"},\\\"mustache\\\":{\\\"begin\\\":\\\"\\\\\\\\{{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.mustache.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.mustache.end\\\"}},\\\"name\\\":\\\"meta.embedded.block.javascript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#expression\\\"}]},\\\"nonSeekableTag\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"support.function.edge\\\"}},\\\"match\\\":\\\"^(\\\\\\\\s*)((@{1,2})(!)?([a-zA-Z._]+))(~)?$\\\",\\\"name\\\":\\\"meta.embedded.block.javascript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#expression\\\"}]},\\\"safeMustache\\\":{\\\"begin\\\":\\\"\\\\\\\\{{{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.mustache.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\}}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.mustache.end\\\"}},\\\"name\\\":\\\"meta.embedded.block.javascript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#expression\\\"}]},\\\"tag\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)((@{1,2})(!)?([a-zA-Z._]+)(\\\\\\\\s{0,2}))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"support.function.edge\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.paren.open\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.paren.close\\\"}},\\\"name\\\":\\\"meta.embedded.block.javascript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#expression\\\"}]}},\\\"scopeName\\\":\\\"text.html.edge\\\",\\\"embeddedLangs\\\":[\\\"typescript\\\",\\\"html\\\",\\\"html-derivative\\\"]}\"))\n\nexport default [\n...typescript,\n...html,\n...html_derivative,\nlang\n]\n", "import html from './html.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Elixir\\\",\\\"fileTypes\\\":[\\\"ex\\\",\\\"exs\\\"],\\\"firstLineMatch\\\":\\\"^#!/.*\\\\\\\\belixir\\\",\\\"foldingStartMarker\\\":\\\"(after|else|catch|rescue|\\\\\\\\-\\\\\\\\>|\\\\\\\\{|\\\\\\\\[|do)\\\\\\\\s*$\\\",\\\"foldingStopMarker\\\":\\\"^\\\\\\\\s*((\\\\\\\\}|\\\\\\\\]|after|else|catch|rescue)\\\\\\\\s*$|end\\\\\\\\b)\\\",\\\"name\\\":\\\"elixir\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(fn)\\\\\\\\b(?!.*->)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.elixir\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#core_syntax\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.elixir\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.method.elixir\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.elixir\\\"}},\\\"match\\\":\\\"([A-Z]\\\\\\\\w+)\\\\\\\\s*(\\\\\\\\.)\\\\\\\\s*([a-z_]\\\\\\\\w*[!?]?)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.symbol.elixir\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.method.elixir\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.elixir\\\"}},\\\"match\\\":\\\"(\\\\\\\\:\\\\\\\\w+)\\\\\\\\s*(\\\\\\\\.)\\\\\\\\s*([_]?\\\\\\\\w*[!?]?)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.other.elixir\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.elixir\\\"}},\\\"match\\\":\\\"(\\\\\\\\|\\\\\\\\>)\\\\\\\\s*([a-z_]\\\\\\\\w*[!?]?)\\\"},{\\\"match\\\":\\\"\\\\\\\\b[a-z_]\\\\\\\\w*[!?]?(?=\\\\\\\\s*\\\\\\\\.?\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.elixir\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(fn)\\\\\\\\b(?=.*->)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.elixir\\\"}},\\\"end\\\":\\\"(?>(->)|(when)|(\\\\\\\\)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.other.elixir\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.elixir\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.function.elixir\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#core_syntax\\\"}]},{\\\"include\\\":\\\"#core_syntax\\\"},{\\\"begin\\\":\\\"^(?=.*->)((?![^\\\\\\\"']*(\\\\\\\"|')[^\\\\\\\"']*->)|(?=.*->[^\\\\\\\"']*(\\\\\\\"|')[^\\\\\\\"']*->))((?!.*\\\\\\\\([^\\\\\\\\)]*->)|(?=[^\\\\\\\\(\\\\\\\\)]*->)|(?=\\\\\\\\s*\\\\\\\\(.*\\\\\\\\).*->))((?!.*\\\\\\\\b(fn)\\\\\\\\b)|(?=.*->.*\\\\\\\\bfn\\\\\\\\b))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.elixir\\\"}},\\\"end\\\":\\\"(?>(->)|(when)|(\\\\\\\\)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.other.elixir\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.elixir\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.function.elixir\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#core_syntax\\\"}]}],\\\"repository\\\":{\\\"core_syntax\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(defmodule)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.module.elixir\\\"}},\\\"end\\\":\\\"\\\\\\\\b(do)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.module.elixir\\\"}},\\\"name\\\":\\\"meta.module.elixir\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[A-Z]\\\\\\\\w*(?=\\\\\\\\.)\\\",\\\"name\\\":\\\"entity.other.inherited-class.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\b[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.class.elixir\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(defprotocol)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.protocol.elixir\\\"}},\\\"end\\\":\\\"\\\\\\\\b(do)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.protocol.elixir\\\"}},\\\"name\\\":\\\"meta.protocol_declaration.elixir\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.protocol.elixir\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(defimpl)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.protocol.elixir\\\"}},\\\"end\\\":\\\"\\\\\\\\b(do)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.protocol.elixir\\\"}},\\\"name\\\":\\\"meta.protocol_implementation.elixir\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.protocol.elixir\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(def|defmacro|defdelegate|defguard)\\\\\\\\s+((?>[a-zA-Z_]\\\\\\\\w*(?>\\\\\\\\.|::))?(?>[a-zA-Z_]\\\\\\\\w*(?>[?!]|=(?!>))?|===?|>[>=]?|<=>|<[<=]?|[%&`/\\\\\\\\|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[\\\\\\\\]=?))((\\\\\\\\()|\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.module.elixir\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.public.elixir\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.function.elixir\\\"}},\\\"end\\\":\\\"(\\\\\\\\bdo:)|(\\\\\\\\bdo\\\\\\\\b)|(?=\\\\\\\\s+(def|defn|defmacro|defdelegate|defguard)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.keywords.elixir\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.module.elixir\\\"}},\\\"name\\\":\\\"meta.function.public.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"begin\\\":\\\"\\\\\\\\s(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.other.elixir\\\"}},\\\"end\\\":\\\",|\\\\\\\\)|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(is_atom|is_binary|is_bitstring|is_boolean|is_float|is_function|is_integer|is_list|is_map|is_nil|is_number|is_pid|is_port|is_record|is_reference|is_tuple|is_exception|abs|bit_size|byte_size|div|elem|hd|length|map_size|node|rem|round|tl|trunc|tuple_size)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.elixir\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(defp|defnp|defmacrop|defguardp)\\\\\\\\s+((?>[a-zA-Z_]\\\\\\\\w*(?>\\\\\\\\.|::))?(?>[a-zA-Z_]\\\\\\\\w*(?>[?!]|=(?!>))?|===?|>[>=]?|<=>|<[<=]?|[%&`/\\\\\\\\|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[\\\\\\\\]=?))((\\\\\\\\()|\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.module.elixir\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.private.elixir\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.function.elixir\\\"}},\\\"end\\\":\\\"(\\\\\\\\bdo:)|(\\\\\\\\bdo\\\\\\\\b)|(?=\\\\\\\\s+(defp|defmacrop|defguardp)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.keywords.elixir\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.module.elixir\\\"}},\\\"name\\\":\\\"meta.function.private.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"begin\\\":\\\"\\\\\\\\s(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.other.elixir\\\"}},\\\"end\\\":\\\",|\\\\\\\\)|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(is_atom|is_binary|is_bitstring|is_boolean|is_float|is_function|is_integer|is_list|is_map|is_nil|is_number|is_pid|is_port|is_record|is_reference|is_tuple|is_exception|abs|bit_size|byte_size|div|elem|hd|length|map_size|node|rem|round|tl|trunc|tuple_size)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.elixir\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*~L\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"comment\\\":\\\"Leex Sigil\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"sigil.leex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.elixir\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*~H\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"comment\\\":\\\"HEEx Sigil\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"sigil.heex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.elixir\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"@(module|type)?doc (~[a-z])?\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"comment\\\":\\\"@doc with heredocs is treated as documentation\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"comment.block.documentation.heredoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"@(module|type)?doc ~[A-Z]\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"comment\\\":\\\"@doc with heredocs is treated as documentation\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"comment.block.documentation.heredoc\\\"},{\\\"begin\\\":\\\"@(module|type)?doc (~[a-z])?'''\\\",\\\"comment\\\":\\\"@doc with heredocs is treated as documentation\\\",\\\"end\\\":\\\"\\\\\\\\s*'''\\\",\\\"name\\\":\\\"comment.block.documentation.heredoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"@(module|type)?doc ~[A-Z]'''\\\",\\\"comment\\\":\\\"@doc with heredocs is treated as documentation\\\",\\\"end\\\":\\\"\\\\\\\\s*'''\\\",\\\"name\\\":\\\"comment.block.documentation.heredoc\\\"},{\\\"comment\\\":\\\"@doc false is treated as documentation\\\",\\\"match\\\":\\\"@(module|type)?doc false\\\",\\\"name\\\":\\\"comment.block.documentation.false\\\"},{\\\"begin\\\":\\\"@(module|type)?doc \\\\\\\"\\\",\\\"comment\\\":\\\"@doc with string is treated as documentation\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"comment.block.documentation.string\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(do|end|case|bc|lc|for|if|cond|unless|try|receive|fn|defmodule|defp?|defprotocol|defimpl|defrecord|defstruct|defnp?|defmacrop?|defguardp?|defdelegate|defexception|defoverridable|exit|after|rescue|catch|else|raise|reraise|throw|import|require|alias|use|quote|unquote|super|with)\\\\\\\\b(?![?!:])\\\",\\\"name\\\":\\\"keyword.control.elixir\\\"},{\\\"comment\\\":\\\" as above, just doesn't need a 'end' and does a logic operation\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(and|not|or|when|xor|in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\b[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.class.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\b(nil|true|false)\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"constant.language.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\b(__(CALLER|ENV|MODULE|DIR|STACKTRACE)__)\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"variable.language.elixir\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.elixir\\\"}},\\\"match\\\":\\\"(@)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.module.elixir\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.elixir\\\"}},\\\"match\\\":\\\"(&)\\\\\\\\d+\\\",\\\"name\\\":\\\"variable.other.anonymous.elixir\\\"},{\\\"match\\\":\\\"&(?![&])\\\",\\\"name\\\":\\\"variable.other.anonymous.elixir\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.elixir\\\"}},\\\"match\\\":\\\"\\\\\\\\^[a-z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.capture.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\b0x[0-9A-Fa-f](?>_?[0-9A-Fa-f])*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d(?>_?\\\\\\\\d)*(\\\\\\\\.(?![^[:space:][:digit:]])(?>_?\\\\\\\\d)+)([eE][-+]?\\\\\\\\d(?>_?\\\\\\\\d)*)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d(?>_?\\\\\\\\d)*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\b0b[01](?>_?[01])*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.binary.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\b0o[0-7](?>_?[0-7])*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.octal.elixir\\\"},{\\\"begin\\\":\\\":'\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.constant.elixir\\\"}},\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"constant.other.symbol.single-quoted.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\":\\\\\\\"\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.constant.elixir\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"constant.other.symbol.double-quoted.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?>''')\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"Single-quoted heredocs\\\",\\\"end\\\":\\\"^\\\\\\\\s*'''\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.single.heredoc.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"single quoted string (allows for interpolation)\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.single.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?>\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"Double-quoted heredocs\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.double.heredoc.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"double quoted string (allows for interpolation)\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.double.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"~[a-z](?>\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"Double-quoted heredocs sigils\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.heredoc.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"~[a-z]\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"sigil (allow for interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\}[a-z]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"~[a-z]\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"sigil (allow for interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\][a-z]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"~[a-z]\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"sigil (allow for interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\>[a-z]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"~[a-z]\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"sigil (allow for interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\)[a-z]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"~[a-z]([^\\\\\\\\w])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"sigil (allow for interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\1[a-z]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_elixir\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"~[A-Z](?>\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"Double-quoted heredocs sigils\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.heredoc.literal.elixir\\\"},{\\\"begin\\\":\\\"~[A-Z]\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"sigil (without interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\}[a-z]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.literal.elixir\\\"},{\\\"begin\\\":\\\"~[A-Z]\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"sigil (without interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\][a-z]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.literal.elixir\\\"},{\\\"begin\\\":\\\"~[A-Z]\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"sigil (without interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\>[a-z]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.literal.elixir\\\"},{\\\"begin\\\":\\\"~[A-Z]\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"sigil (without interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\)[a-z]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.literal.elixir\\\"},{\\\"begin\\\":\\\"~[A-Z]([^\\\\\\\\w])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elixir\\\"}},\\\"comment\\\":\\\"sigil (without interpolation)\\\",\\\"end\\\":\\\"\\\\\\\\1[a-z]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elixir\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.literal.elixir\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.elixir\\\"}},\\\"comment\\\":\\\"symbols\\\",\\\"match\\\":\\\"(?<!:)(:)(?>[a-zA-Z_][\\\\\\\\w@]*(?>[?!]|=(?![>=]))?|\\\\\\\\<\\\\\\\\>|===?|!==?|<<>>|<<<|>>>|~~~|::|<\\\\\\\\-|\\\\\\\\|>|=>|=~|=|/|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|\\\\\\\\*\\\\\\\\*?|\\\\\\\\.\\\\\\\\.?\\\\\\\\.?|\\\\\\\\.\\\\\\\\.//|>=?|<=?|&&?&?|\\\\\\\\+\\\\\\\\+?|\\\\\\\\-\\\\\\\\-?|\\\\\\\\|\\\\\\\\|?\\\\\\\\|?|\\\\\\\\!|@|\\\\\\\\%?\\\\\\\\{\\\\\\\\}|%|\\\\\\\\[\\\\\\\\]|\\\\\\\\^(\\\\\\\\^\\\\\\\\^)?)\\\",\\\"name\\\":\\\"constant.other.symbol.elixir\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.elixir\\\"}},\\\"comment\\\":\\\"symbols\\\",\\\"match\\\":\\\"(?>[a-zA-Z_][\\\\\\\\w@]*(?>[?!])?)(:)(?!:)\\\",\\\"name\\\":\\\"constant.other.keywords.elixir\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=##)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.elixir\\\"}},\\\"end\\\":\\\"(?!#)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"##\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.elixir\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.section.elixir\\\"}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.elixir\\\"}},\\\"end\\\":\\\"(?!#)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.elixir\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.elixir\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b_([^_][\\\\\\\\w]+[?!]?)\\\",\\\"name\\\":\\\"comment.unused.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\b_\\\\\\\\b\\\",\\\"name\\\":\\\"comment.wildcard.elixir\\\"},{\\\"comment\\\":\\\"\\\\n\\\\t\\\\t\\\\tmatches questionmark-letters.\\\\n\\\\n\\\\t\\\\t\\\\texamples (1st alternation = hex):\\\\n\\\\t\\\\t\\\\t?\\\\\\\\x1 ?\\\\\\\\x61\\\\n\\\\n\\\\t\\\\t\\\\texamples (2rd alternation = escaped):\\\\n\\\\t\\\\t\\\\t?\\\\\\\\n ?\\\\\\\\b\\\\n\\\\n\\\\t\\\\t\\\\texamples (3rd alternation = normal):\\\\n\\\\t\\\\t\\\\t?a ?A ?0\\\\n\\\\t\\\\t\\\\t?* ?\\\\\\\" ?(\\\\n\\\\t\\\\t\\\\t?. ?#\\\\n\\\\n\\\\t\\\\t\\\\tthe negative lookbehind prevents against matching\\\\n\\\\t\\\\t\\\\tp(42.tainted?)\\\\n\\\\t\\\\t\\\\t\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w)\\\\\\\\?(\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{1,2}(?![0-9A-Fa-f])\\\\\\\\b|[^xMC])|[^\\\\\\\\s\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"constant.numeric.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-|<\\\\\\\\|>\\\",\\\"name\\\":\\\"keyword.operator.concatenation.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\\\\\\>|<~>|<>|<<<|>>>|~>>|<<~|~>|<~|<\\\\\\\\|>\\\",\\\"name\\\":\\\"keyword.operator.sigils_1.elixir\\\"},{\\\"match\\\":\\\"&&&|&&\\\",\\\"name\\\":\\\"keyword.operator.sigils_2.elixir\\\"},{\\\"match\\\":\\\"<\\\\\\\\-|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"keyword.operator.sigils_3.elixir\\\"},{\\\"match\\\":\\\"===?|!==?|<=?|>=?\\\",\\\"name\\\":\\\"keyword.operator.comparison.elixir\\\"},{\\\"match\\\":\\\"(\\\\\\\\|\\\\\\\\|\\\\\\\\||&&&|\\\\\\\\^\\\\\\\\^\\\\\\\\^|<<<|>>>|~~~)\\\",\\\"name\\\":\\\"keyword.operator.bitwise.elixir\\\"},{\\\"match\\\":\\\"(?<=[ \\\\\\\\t])!+|\\\\\\\\bnot\\\\\\\\b|&&|\\\\\\\\band\\\\\\\\b|\\\\\\\\|\\\\\\\\||\\\\\\\\bor\\\\\\\\b|\\\\\\\\bxor\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logical.elixir\\\"},{\\\"match\\\":\\\"(\\\\\\\\*|\\\\\\\\+|\\\\\\\\-|/)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\||\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-|\\\\\\\\*\\\\\\\\*|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|\\\\\\\\<\\\\\\\\-|\\\\\\\\<\\\\\\\\>|\\\\\\\\<\\\\\\\\<|\\\\\\\\>\\\\\\\\>|\\\\\\\\:\\\\\\\\:|\\\\\\\\.\\\\\\\\.|//|\\\\\\\\|>|~|=>|&\\\",\\\"name\\\":\\\"keyword.operator.other.elixir\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.elixir\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.other.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\;\\\",\\\"name\\\":\\\"punctuation.separator.statement.elixir\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.object.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.method.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\{|\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.section.scope.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\[|\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.section.array.elixir\\\"},{\\\"match\\\":\\\"\\\\\\\\(|\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.section.function.elixir\\\"}]},\\\"escaped_char\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[\\\\\\\\da-fA-F]{1,2}|.)\\\",\\\"name\\\":\\\"constant.character.escaped.elixir\\\"},\\\"interpolated_elixir\\\":{\\\"begin\\\":\\\"#\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.elixir\\\"}},\\\"contentName\\\":\\\"source.elixir\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.elixir\\\"}},\\\"name\\\":\\\"meta.embedded.line.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"nest_curly_and_self\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.elixir\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]}},\\\"scopeName\\\":\\\"source.elixir\\\",\\\"embeddedLangs\\\":[\\\"html\\\"]}\"))\n\nexport default [\n...html,\nlang\n]\n", "import glsl from './glsl.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Elm\\\",\\\"fileTypes\\\":[\\\"elm\\\"],\\\"name\\\":\\\"elm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#module\\\"},{\\\"include\\\":\\\"#debug\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b(_)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.unused.elm\\\"},{\\\"include\\\":\\\"#type-signature\\\"},{\\\"include\\\":\\\"#type-declaration\\\"},{\\\"include\\\":\\\"#type-alias-declaration\\\"},{\\\"include\\\":\\\"#string-triple\\\"},{\\\"include\\\":\\\"#string-quote\\\"},{\\\"include\\\":\\\"#char\\\"},{\\\"comment\\\":\\\"Floats are always decimal\\\",\\\"match\\\":\\\"\\\\\\\\b([0-9]+\\\\\\\\.[0-9]+([eE][+-]?[0-9]+)?|[0-9]+[eE][+-]?[0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\b([0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\b(0x[0-9a-fA-F]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.elm\\\"},{\\\"include\\\":\\\"#glsl\\\"},{\\\"include\\\":\\\"#record-prefix\\\"},{\\\"include\\\":\\\"#module-prefix\\\"},{\\\"include\\\":\\\"#constructor\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"record.name.elm\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.pipe.elm\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.record.field.elm\\\"}},\\\"match\\\":\\\"(\\\\\\\\{)\\\\\\\\s+([a-z][a-zA-Z0-9_]*)\\\\\\\\s+(\\\\\\\\|)\\\\\\\\s+([a-z][a-zA-Z0-9_]*)\\\",\\\"name\\\":\\\"meta.record.field.update.elm\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.pipe.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.record.field.elm\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.elm\\\"}},\\\"match\\\":\\\"(\\\\\\\\|)\\\\\\\\s+([a-z][a-zA-Z0-9_]*)\\\\\\\\s+(\\\\\\\\=)\\\",\\\"name\\\":\\\"meta.record.field.update.elm\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"record.name.elm\\\"}},\\\"match\\\":\\\"(\\\\\\\\{)\\\\\\\\s+([a-z][a-zA-Z0-9_]*)\\\\\\\\s+$\\\",\\\"name\\\":\\\"meta.record.field.update.elm\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.record.field.elm\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.elm\\\"}},\\\"match\\\":\\\"(\\\\\\\\{)\\\\\\\\s+([a-z][a-zA-Z0-9_]*)\\\\\\\\s+(\\\\\\\\=)\\\",\\\"name\\\":\\\"meta.record.field.elm\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.record.field.elm\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.elm\\\"}},\\\"match\\\":\\\"(,)\\\\\\\\s+([a-z][a-zA-Z0-9_]*)\\\\\\\\s+(\\\\\\\\=)\\\",\\\"name\\\":\\\"meta.record.field.elm\\\"},{\\\"match\\\":\\\"(\\\\\\\\}|\\\\\\\\{)\\\",\\\"name\\\":\\\"punctuation.bracket.elm\\\"},{\\\"include\\\":\\\"#unit\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"match\\\":\\\"(->)\\\",\\\"name\\\":\\\"keyword.operator.arrow.elm\\\"},{\\\"include\\\":\\\"#infix_op\\\"},{\\\"match\\\":\\\"(\\\\\\\\=|\\\\\\\\:|\\\\\\\\||\\\\\\\\\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.other.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\b(type|as|port|exposing|alias|infixl|infixr|infix)\\\\\\\\s+\\\",\\\"name\\\":\\\"keyword.other.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\b(if|then|else|case|of|let|in)\\\\\\\\s+\\\",\\\"name\\\":\\\"keyword.control.elm\\\"},{\\\"include\\\":\\\"#record-accessor\\\"},{\\\"include\\\":\\\"#top_level_value\\\"},{\\\"include\\\":\\\"#value\\\"},{\\\"include\\\":\\\"#period\\\"},{\\\"include\\\":\\\"#square_brackets\\\"}],\\\"repository\\\":{\\\"block_comment\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\{-(?!#)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.elm\\\"}},\\\"end\\\":\\\"-\\\\\\\\}\\\",\\\"name\\\":\\\"comment.block.elm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_comment\\\"}]},\\\"char\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.char.begin.elm\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.char.end.elm\\\"}},\\\"name\\\":\\\"string.quoted.single.elm\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\&]|x[0-9a-fA-F]{1,5})\\\",\\\"name\\\":\\\"constant.character.escape.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\^[A-Z@\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\\\\\\\\\^_]\\\",\\\"name\\\":\\\"constant.character.escape.control.elm\\\"}]},\\\"comma\\\":{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"punctuation.separator.comma.elm\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"--\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.elm\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-dash.elm\\\"},{\\\"include\\\":\\\"#block_comment\\\"}]},\\\"constructor\\\":{\\\"match\\\":\\\"\\\\\\\\b[A-Z][a-zA-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.type-constructor.elm\\\"},\\\"debug\\\":{\\\"match\\\":\\\"\\\\\\\\b(Debug)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.debug.elm\\\"},\\\"glsl\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)(glsl)(\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.glsl.bracket.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.glsl.name.elm\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.glsl.bracket.elm\\\"}},\\\"end\\\":\\\"(\\\\\\\\|\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.glsl.bracket.elm\\\"}},\\\"name\\\":\\\"meta.embedded.block.glsl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.glsl\\\"}]},\\\"import\\\":{\\\"begin\\\":\\\"^\\\\\\\\b(import)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.elm\\\"}},\\\"end\\\":\\\"\\\\\\\\n(?!\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.import.elm\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(as|exposing)\\\",\\\"name\\\":\\\"keyword.control.elm\\\"},{\\\"include\\\":\\\"#module_chunk\\\"},{\\\"include\\\":\\\"#period\\\"},{\\\"match\\\":\\\"\\\\\\\\s+\\\",\\\"name\\\":\\\"punctuation.spaces.elm\\\"},{\\\"include\\\":\\\"#module-exports\\\"}]},\\\"infix_op\\\":{\\\"match\\\":\\\"(</>|<\\\\\\\\?>|<\\\\\\\\||<=|\\\\\\\\|\\\\\\\\||&&|>=|\\\\\\\\|>|\\\\\\\\|=|\\\\\\\\|\\\\\\\\.|\\\\\\\\+\\\\\\\\+|::|/=|==|//|>>|<<|<|>|\\\\\\\\^|\\\\\\\\+|-|/|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.elm\\\"},\\\"module\\\":{\\\"begin\\\":\\\"^\\\\\\\\b((port |effect )?module)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.elm\\\"}},\\\"end\\\":\\\"\\\\\\\\n(?!\\\\\\\\s)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.elm\\\"}},\\\"name\\\":\\\"meta.declaration.module.elm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#module_chunk\\\"},{\\\"include\\\":\\\"#period\\\"},{\\\"match\\\":\\\"(exposing)\\\",\\\"name\\\":\\\"keyword.other.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\s+\\\",\\\"name\\\":\\\"punctuation.spaces.elm\\\"},{\\\"include\\\":\\\"#module-exports\\\"}]},\\\"module-exports\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parens.module-export.elm\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parens.module-export.elm\\\"}},\\\"name\\\":\\\"meta.declaration.exports.elm\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[a-z][a-zA-Z_'0-9]*\\\",\\\"name\\\":\\\"entity.name.function.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\b[A-Z][A-Za-z_'0-9]*\\\",\\\"name\\\":\\\"storage.type.elm\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\s+\\\",\\\"name\\\":\\\"punctuation.spaces.elm\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\.\\\\\\\\.\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.parens.ellipses.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.parens.ellipses.elm\\\"},{\\\"include\\\":\\\"#infix_op\\\"},{\\\"comment\\\":\\\"So named because I don't know what to call this.\\\",\\\"match\\\":\\\"\\\\\\\\(.*?\\\\\\\\)\\\",\\\"name\\\":\\\"meta.other.unknown.elm\\\"}]},\\\"module-prefix\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.module.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.period.elm\\\"}},\\\"match\\\":\\\"([A-Z][a-zA-Z0-9_]*)(\\\\\\\\.)\\\",\\\"name\\\":\\\"meta.module.name.elm\\\"},\\\"module_chunk\\\":{\\\"match\\\":\\\"[A-Z][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"support.module.elm\\\"},\\\"parens\\\":{\\\"match\\\":\\\"(\\\\\\\\(|\\\\\\\\))\\\",\\\"name\\\":\\\"punctuation.parens.elm\\\"},\\\"period\\\":{\\\"match\\\":\\\"[.]\\\",\\\"name\\\":\\\"keyword.other.period.elm\\\"},\\\"record-accessor\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.period.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.record.field.accessor.elm\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)([a-z][a-zA-Z0-9_]*)\\\",\\\"name\\\":\\\"meta.record.accessor\\\"},\\\"record-prefix\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"record.name.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.period.elm\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.record.field.accessor.elm\\\"}},\\\"match\\\":\\\"([a-z][a-zA-Z0-9_]*)(\\\\\\\\.)([a-z][a-zA-Z0-9_]*)\\\",\\\"name\\\":\\\"record.accessor.elm\\\"},\\\"square_brackets\\\":{\\\"match\\\":\\\"[\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"punctuation.definition.list.elm\\\"},\\\"string-quote\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elm\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elm\\\"}},\\\"name\\\":\\\"string.quoted.double.elm\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\&]|x[0-9a-fA-F]{1,5})\\\",\\\"name\\\":\\\"constant.character.escape.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\^[A-Z@\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\\\\\\\\\^_]\\\",\\\"name\\\":\\\"constant.character.escape.control.elm\\\"}]},\\\"string-triple\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.elm\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.elm\\\"}},\\\"name\\\":\\\"string.quoted.triple.elm\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\&]|x[0-9a-fA-F]{1,5})\\\",\\\"name\\\":\\\"constant.character.escape.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\^[A-Z@\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\\\\\\\\\^_]\\\",\\\"name\\\":\\\"constant.character.escape.control.elm\\\"}]},\\\"top_level_value\\\":{\\\"match\\\":\\\"^[a-z][a-zA-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.top_level.elm\\\"},\\\"type-alias-declaration\\\":{\\\"begin\\\":\\\"^(type\\\\\\\\s+)(alias\\\\\\\\s+)([A-Z][a-zA-Z0-9_']*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.type.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.type-alias.elm\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.elm\\\"}},\\\"end\\\":\\\"^(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"meta.function.type-declaration.elm\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\n\\\\\\\\s+\\\",\\\"name\\\":\\\"punctuation.spaces.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.elm\\\"},{\\\"include\\\":\\\"#module-prefix\\\"},{\\\"match\\\":\\\"\\\\\\\\b[A-Z][a-zA-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\b[a-z][a-zA-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.type.elm\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#type-record\\\"}]},\\\"type-declaration\\\":{\\\"begin\\\":\\\"^(type\\\\\\\\s+)([A-Z][a-zA-Z0-9_']*)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.type.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.elm\\\"}},\\\"end\\\":\\\"^(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"meta.function.type-declaration.elm\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.type-constructor.elm\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*([A-Z][a-zA-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.record.field.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\s+\\\",\\\"name\\\":\\\"punctuation.spaces.elm\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.type-constructor.elm\\\"}},\\\"match\\\":\\\"(\\\\\\\\=|\\\\\\\\|)\\\\\\\\s+([A-Z][a-zA-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.record.field.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\-\\\\\\\\>\\\",\\\"name\\\":\\\"keyword.operator.arrow.elm\\\"},{\\\"include\\\":\\\"#module-prefix\\\"},{\\\"match\\\":\\\"\\\\\\\\b[a-z][a-zA-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.type.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\b[A-Z][a-zA-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.elm\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#type-record\\\"}]},\\\"type-record\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.braces.end\\\"}},\\\"name\\\":\\\"meta.function.type-record.elm\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s+\\\",\\\"name\\\":\\\"punctuation.spaces.elm\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"keyword.operator.arrow.elm\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.record.field.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.elm\\\"}},\\\"match\\\":\\\"([a-z][a-zA-Z0-9_]*)\\\\\\\\s+(\\\\\\\\:)\\\",\\\"name\\\":\\\"meta.record.field.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\,\\\",\\\"name\\\":\\\"punctuation.separator.comma.elm\\\"},{\\\"include\\\":\\\"#module-prefix\\\"},{\\\"match\\\":\\\"\\\\\\\\b[a-z][a-zA-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.type.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\b[A-Z][a-zA-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.elm\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#type-record\\\"}]},\\\"type-signature\\\":{\\\"begin\\\":\\\"^(port\\\\\\\\s+)?([a-z_][a-zA-Z0-9_']*)\\\\\\\\s+(\\\\\\\\:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.port.elm\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.elm\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.colon.elm\\\"}},\\\"end\\\":\\\"((^(?=[a-z]))|^$)\\\",\\\"name\\\":\\\"meta.function.type-declaration.elm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-signature-chunk\\\"}]},\\\"type-signature-chunk\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"keyword.operator.arrow.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\s+\\\",\\\"name\\\":\\\"punctuation.spaces.elm\\\"},{\\\"include\\\":\\\"#module-prefix\\\"},{\\\"match\\\":\\\"\\\\\\\\b[a-z][a-zA-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.type.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\b[A-Z][a-zA-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.elm\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\)\\\",\\\"name\\\":\\\"constant.unit.elm\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#type-record\\\"}]},\\\"unit\\\":{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\)\\\",\\\"name\\\":\\\"constant.unit.elm\\\"},\\\"value\\\":{\\\"match\\\":\\\"\\\\\\\\b[a-z][a-zA-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"meta.value.elm\\\"}},\\\"scopeName\\\":\\\"source.elm\\\",\\\"embeddedLangs\\\":[\\\"glsl\\\"]}\"))\n\nexport default [\n...glsl,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Emacs Lisp\\\",\\\"fileTypes\\\":[\\\"el\\\",\\\"elc\\\",\\\"eld\\\",\\\"spacemacs\\\",\\\"_emacs\\\",\\\"emacs\\\",\\\"emacs.desktop\\\",\\\"abbrev_defs\\\",\\\"Project.ede\\\",\\\"Cask\\\",\\\"gnus\\\",\\\"viper\\\"],\\\"firstLineMatch\\\":\\\"^\\\\\\\\#!.*(?:\\\\\\\\s|\\\\\\\\/|(?<=!)\\\\\\\\b)emacs(?:$|\\\\\\\\s)|(?:-\\\\\\\\*-(?i:[ \\\\\\\\t]*(?=[^:;\\\\\\\\s]+[ \\\\\\\\t]*-\\\\\\\\*-)|(?:.*?[ \\\\\\\\t;]|(?<=-\\\\\\\\*-))[ \\\\\\\\t]*mode[ \\\\\\\\t]*:[ \\\\\\\\t]*)(?i:emacs-lisp)(?=[ \\\\\\\\t;]|(?<![-*])-\\\\\\\\*-).*?-\\\\\\\\*-|(?:(?:^|[ \\\\\\\\t])(?:vi|Vi(?=m))(?:m[<=>]?[0-9]+|m)?|[ \\\\\\\\t]ex)(?=:(?=[ \\\\\\\\t]*set?[ \\\\\\\\t][^\\\\\\\\r\\\\\\\\n:]+:)|:(?![ \\\\\\\\t]*set?[ \\\\\\\\t]))(?:(?:[ \\\\\\\\t]*:[ \\\\\\\\t]*|[ \\\\\\\\t])\\\\\\\\w*(?:[ \\\\\\\\t]*=(?:[^\\\\\\\\\\\\\\\\\\\\\\\\s]|\\\\\\\\\\\\\\\\.)*)?)*[ \\\\\\\\t:](?:filetype|ft|syntax)[ \\\\\\\\t]*=(?i:emacs-lisp|elisp)(?=$|\\\\\\\\s|:))\\\",\\\"name\\\":\\\"emacs-lisp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\A(#!)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hashbang.emacs.lisp\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.hashbang.emacs.lisp\\\"},{\\\"include\\\":\\\"#main\\\"}],\\\"repository\\\":{\\\"archive-sources\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.language.constant.archive-source.emacs.lisp\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<=[\\\\\\\\s()\\\\\\\\[]|^)(SC|gnu|marmalade|melpa-stable|melpa|org)(?=[\\\\\\\\s()]|$)\\\\\\\\b\\\"},\\\"arg-values\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"&(optional|rest)(?=\\\\\\\\s|\\\\\\\\))\\\",\\\"name\\\":\\\"constant.language.$1.arguments.emacs.lisp\\\"}]},\\\"autoload\\\":{\\\"begin\\\":\\\"^(;;;###)(autoload)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.autoload.emacs.lisp\\\"}},\\\"contentName\\\":\\\"string.unquoted.other.emacs.lisp\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.semicolon.autoload.emacs.lisp\\\"},\\\"binding\\\":{\\\"match\\\":\\\"\\\\\\\\b(?<=[\\\\\\\\s()\\\\\\\\[]|^)(let\\\\\\\\*?|set[fq]?)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"storage.binding.emacs.lisp\\\"},\\\"boolean\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?<=[\\\\\\\\s()\\\\\\\\[]|^)t(?=[\\\\\\\\s()]|$)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.boolean.true.emacs.lisp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<=[\\\\\\\\s()\\\\\\\\[]|^)(nil)(?=[\\\\\\\\s()]|$)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.nil.emacs.lisp\\\"}]},\\\"cask\\\":{\\\"match\\\":\\\"\\\\\\\\b(?<=[\\\\\\\\s()\\\\\\\\[]|^)(?:files|source|development|depends-on|package-file|package-descriptor|package)(?=[\\\\\\\\s()]|$)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},\\\"comment\\\":{\\\"begin\\\":\\\";\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.emacs.lisp\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.semicolon.emacs.lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#modeline\\\"},{\\\"include\\\":\\\"#eldoc\\\"}]},\\\"definition\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()(?:(cl-(defun|defmacro|defsubst))|(defun|defmacro|defsubst))(?!-)\\\\\\\\b(?:\\\\\\\\s*(?![-+\\\\\\\\d])([-+=*/\\\\\\\\w~!@$%^&:<>{}?]+))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.$3.function.cl-lib.emacs.lisp\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.$4.function.emacs.lisp\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.function.name.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.emacs.lisp\\\"}},\\\"name\\\":\\\"meta.function.definition.emacs.lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#defun-innards\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(?<=[\\\\\\\\s()\\\\\\\\[]|^)defun(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"storage.type.function.emacs.lisp\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\s|^)(\\\\\\\\()(def(advice|class|const|custom|face|image|group|package|struct|subst|theme|type|var))(?:\\\\\\\\s+([-+=*/\\\\\\\\w~!@$%^&:<>{}?]+))?(?=[\\\\\\\\s()]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.$3.emacs.lisp\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.$3.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.emacs.lisp\\\"}},\\\"name\\\":\\\"meta.$3.definition.emacs.lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(?<=[\\\\\\\\s()\\\\\\\\[]|^)(define-(?:condition|widget))(?=[\\\\\\\\s()]|$)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.$1.emacs.lisp\\\"}]},\\\"defun-innards\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.emacs.lisp\\\"}},\\\"name\\\":\\\"meta.argument-list.expression.emacs.lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arg-keywords\\\"},{\\\"match\\\":\\\"(?![-+\\\\\\\\d:&'#])([-+=*/\\\\\\\\w~!@$%^&:<>{}?]+)\\\",\\\"name\\\":\\\"variable.parameter.emacs.lisp\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"docesc\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\x5C{2}=\\\",\\\"name\\\":\\\"constant.escape.character.key-sequence.emacs.lisp\\\"},{\\\"match\\\":\\\"\\\\\\\\x5C{2}+\\\",\\\"name\\\":\\\"constant.escape.character.suppress-link.emacs.lisp\\\"}]},\\\"dockey\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.reference.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.reference.link.emacs.lisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.reference.end.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\x5C{2}\\\\\\\\[)((?:[^\\\\\\\\s\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+)(\\\\\\\\])\\\",\\\"name\\\":\\\"variable.other.reference.key-sequence.emacs.lisp\\\"},\\\"docmap\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.reference.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.keymap.emacs.lisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.reference.end.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\x5C{2}{)((?:[^\\\\\\\\s\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+)(})\\\",\\\"name\\\":\\\"meta.keymap.summary.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.reference.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.keymap.emacs.lisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.reference.end.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\x5C{2}<)((?:[^\\\\\\\\s\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+)(>)\\\",\\\"name\\\":\\\"meta.keymap.specifier.emacs.lisp\\\"}]},\\\"docvar\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.quote.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.quote.end.emacs.lisp\\\"}},\\\"match\\\":\\\"(`)[^\\\\\\\\s()]+(')\\\",\\\"name\\\":\\\"variable.other.literal.emacs.lisp\\\"},\\\"eldoc\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#docesc\\\"},{\\\"include\\\":\\\"#docvar\\\"},{\\\"include\\\":\\\"#dockey\\\"},{\\\"include\\\":\\\"#docmap\\\"}]},\\\"escapes\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.codepoint.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.codepoint.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\?)\\\\\\\\\\\\\\\\u[A-Fa-f0-9]{4}|(\\\\\\\\?)\\\\\\\\\\\\\\\\U00[A-Fa-f0-9]{6}\\\",\\\"name\\\":\\\"constant.character.escape.hex.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.codepoint.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\?)\\\\\\\\\\\\\\\\x[A-Fa-f0-9]+\\\",\\\"name\\\":\\\"constant.character.escape.hex.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.codepoint.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\?)\\\\\\\\\\\\\\\\[0-7]{1,3}\\\",\\\"name\\\":\\\"constant.character.escape.octal.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.codepoint.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.backslash.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\?)(?:[^\\\\\\\\\\\\\\\\]|(\\\\\\\\\\\\\\\\).)\\\",\\\"name\\\":\\\"constant.numeric.codepoint.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.backslash.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\).\\\",\\\"name\\\":\\\"constant.character.escape.emacs.lisp\\\"}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.emacs.lisp\\\"}},\\\"name\\\":\\\"meta.expression.emacs.lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\')(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.quoted.expression.begin.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.quoted.expression.end.emacs.lisp\\\"}},\\\"name\\\":\\\"meta.quoted.expression.emacs.lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\`)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.backquoted.expression.begin.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.backquoted.expression.end.emacs.lisp\\\"}},\\\"name\\\":\\\"meta.backquoted.expression.emacs.lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(,@)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.interpolated.expression.begin.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.interpolated.expression.end.emacs.lisp\\\"}},\\\"name\\\":\\\"meta.interpolated.expression.emacs.lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"face-innards\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.language.display.type.emacs.lisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.display.type.emacs.lisp\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(type)\\\\\\\\s+(graphic|x|pc|w32|tty)(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.expression.display-type.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.language.display.class.emacs.lisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.display.class.emacs.lisp\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(class)\\\\\\\\s+(color|grayscale|mono)(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.expression.display-class.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.language.background-type.emacs.lisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.background-type.emacs.lisp\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(background)\\\\\\\\s+(light|dark)(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.expression.background-type.emacs.lisp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()(min-colors|supports)(?=[\\\\\\\\s()]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.language.display-prerequisite.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.emacs.lisp\\\"}},\\\"name\\\":\\\"meta.expression.display-prerequisite.emacs.lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"faces\\\":{\\\"match\\\":\\\"\\\\\\\\b(?<=[\\\\\\\\s()\\\\\\\\[]|^)(?:Buffer-menu-buffer|Info-quoted|Info-title-1-face|Info-title-2-face|Info-title-3-face|Info-title-4-face|Man-overstrike|Man-reverse|Man-underline|antlr-default|antlr-font-lock-default-face|antlr-font-lock-keyword-face|antlr-font-lock-literal-face|antlr-font-lock-ruledef-face|antlr-font-lock-ruleref-face|antlr-font-lock-syntax-face|antlr-font-lock-tokendef-face|antlr-font-lock-tokenref-face|antlr-keyword|antlr-literal|antlr-ruledef|antlr-ruleref|antlr-syntax|antlr-tokendef|antlr-tokenref|apropos-keybinding|apropos-property|apropos-symbol|bat-label-face|bg:erc-color-face0|bg:erc-color-face1|bg:erc-color-face10|bg:erc-color-face11|bg:erc-color-face12|bg:erc-color-face13|bg:erc-color-face14|bg:erc-color-face15|bg:erc-color-face2|bg:erc-color-face3|bg:erc-color-face4|bg:erc-color-face5|bg:erc-color-face6|bg:erc-color-face7|bg:erc-color-face8|bg:erc-color-face9|bold-italic|bold|bookmark-menu-bookmark|bookmark-menu-heading|border|breakpoint-disabled|breakpoint-enabled|buffer-menu-buffer|button|c-annotation-face|calc-nonselected-face|calc-selected-face|calendar-month-header|calendar-today|calendar-weekday-header|calendar-weekend-header|change-log-acknowledgement-face|change-log-acknowledgement|change-log-acknowledgment|change-log-conditionals-face|change-log-conditionals|change-log-date-face|change-log-date|change-log-email-face|change-log-email|change-log-file-face|change-log-file|change-log-function-face|change-log-function|change-log-list-face|change-log-list|change-log-name-face|change-log-name|comint-highlight-input|comint-highlight-prompt|compare-windows|compilation-column-number|compilation-error|compilation-info|compilation-line-number|compilation-mode-line-exit|compilation-mode-line-fail|compilation-mode-line-run|compilation-warning|completions-annotations|completions-common-part|completions-first-difference|cperl-array-face|cperl-hash-face|cperl-nonoverridable-face|css-property|css-selector|cua-global-mark|cua-rectangle-noselect|cua-rectangle|cursor|custom-button-mouse|custom-button-pressed-unraised|custom-button-pressed|custom-button-unraised|custom-button|custom-changed|custom-comment-tag|custom-comment|custom-documentation|custom-face-tag|custom-group-subtitle|custom-group-tag-1|custom-group-tag|custom-invalid|custom-link|custom-modified|custom-rogue|custom-saved|custom-set|custom-state|custom-themed|custom-variable-button|custom-variable-tag|custom-visibility|cvs-filename-face|cvs-filename|cvs-handled-face|cvs-handled|cvs-header-face|cvs-header|cvs-marked-face|cvs-marked|cvs-msg-face|cvs-msg|cvs-need-action-face|cvs-need-action|cvs-unknown-face|cvs-unknown|default|diary-anniversary|diary-button|diary-time|diary|diff-added-face|diff-added|diff-changed-face|diff-changed|diff-context-face|diff-context|diff-file-header-face|diff-file-header|diff-function-face|diff-function|diff-header-face|diff-header|diff-hunk-header-face|diff-hunk-header|diff-index-face|diff-index|diff-indicator-added|diff-indicator-changed|diff-indicator-removed|diff-nonexistent-face|diff-nonexistent|diff-refine-added|diff-refine-change|diff-refine-changed|diff-refine-removed|diff-removed-face|diff-removed|dired-directory|dired-flagged|dired-header|dired-ignored|dired-mark|dired-marked|dired-perm-write|dired-symlink|dired-warning|ebrowse-default|ebrowse-file-name|ebrowse-member-attribute|ebrowse-member-class|ebrowse-progress|ebrowse-root-class|ebrowse-tree-mark|ediff-current-diff-A|ediff-current-diff-Ancestor|ediff-current-diff-B|ediff-current-diff-C|ediff-even-diff-A|ediff-even-diff-Ancestor|ediff-even-diff-B|ediff-even-diff-C|ediff-fine-diff-A|ediff-fine-diff-Ancestor|ediff-fine-diff-B|ediff-fine-diff-C|ediff-odd-diff-A|ediff-odd-diff-Ancestor|ediff-odd-diff-B|ediff-odd-diff-C|eieio-custom-slot-tag-face|eldoc-highlight-function-argument|epa-field-body|epa-field-name|epa-mark|epa-string|epa-validity-disabled|epa-validity-high|epa-validity-low|epa-validity-medium|erc-action-face|erc-bold-face|erc-button|erc-command-indicator-face|erc-current-nick-face|erc-dangerous-host-face|erc-default-face|erc-direct-msg-face|erc-error-face|erc-fool-face|erc-header-line|erc-input-face|erc-inverse-face|erc-keyword-face|erc-my-nick-face|erc-my-nick-prefix-face|erc-nick-default-face|erc-nick-msg-face|erc-nick-prefix-face|erc-notice-face|erc-pal-face|erc-prompt-face|erc-timestamp-face|erc-underline-face|error|ert-test-result-expected|ert-test-result-unexpected|escape-glyph|eww-form-checkbox|eww-form-file|eww-form-select|eww-form-submit|eww-form-text|eww-form-textarea|eww-invalid-certificate|eww-valid-certificate|excerpt|ffap|fg:erc-color-face0|fg:erc-color-face1|fg:erc-color-face10|fg:erc-color-face11|fg:erc-color-face12|fg:erc-color-face13|fg:erc-color-face14|fg:erc-color-face15|fg:erc-color-face2|fg:erc-color-face3|fg:erc-color-face4|fg:erc-color-face5|fg:erc-color-face6|fg:erc-color-face7|fg:erc-color-face8|fg:erc-color-face9|file-name-shadow|fixed-pitch|fixed|flymake-errline|flymake-warnline|flyspell-duplicate|flyspell-incorrect|font-lock-builtin-face|font-lock-comment-delimiter-face|font-lock-comment-face|font-lock-constant-face|font-lock-doc-face|font-lock-function-name-face|font-lock-keyword-face|font-lock-negation-char-face|font-lock-preprocessor-face|font-lock-regexp-grouping-backslash|font-lock-regexp-grouping-construct|font-lock-string-face|font-lock-type-face|font-lock-variable-name-face|font-lock-warning-face|fringe|glyphless-char|gnus-button|gnus-cite-1|gnus-cite-10|gnus-cite-11|gnus-cite-2|gnus-cite-3|gnus-cite-4|gnus-cite-5|gnus-cite-6|gnus-cite-7|gnus-cite-8|gnus-cite-9|gnus-cite-attribution-face|gnus-cite-attribution|gnus-cite-face-1|gnus-cite-face-10|gnus-cite-face-11|gnus-cite-face-2|gnus-cite-face-3|gnus-cite-face-4|gnus-cite-face-5|gnus-cite-face-6|gnus-cite-face-7|gnus-cite-face-8|gnus-cite-face-9|gnus-emphasis-bold-italic|gnus-emphasis-bold|gnus-emphasis-highlight-words|gnus-emphasis-italic|gnus-emphasis-strikethru|gnus-emphasis-underline-bold-italic|gnus-emphasis-underline-bold|gnus-emphasis-underline-italic|gnus-emphasis-underline|gnus-group-mail-1-empty-face|gnus-group-mail-1-empty|gnus-group-mail-1-face|gnus-group-mail-1|gnus-group-mail-2-empty-face|gnus-group-mail-2-empty|gnus-group-mail-2-face|gnus-group-mail-2|gnus-group-mail-3-empty-face|gnus-group-mail-3-empty|gnus-group-mail-3-face|gnus-group-mail-3|gnus-group-mail-low-empty-face|gnus-group-mail-low-empty|gnus-group-mail-low-face|gnus-group-mail-low|gnus-group-news-1-empty-face|gnus-group-news-1-empty|gnus-group-news-1-face|gnus-group-news-1|gnus-group-news-2-empty-face|gnus-group-news-2-empty|gnus-group-news-2-face|gnus-group-news-2|gnus-group-news-3-empty-face|gnus-group-news-3-empty|gnus-group-news-3-face|gnus-group-news-3|gnus-group-news-4-empty-face|gnus-group-news-4-empty|gnus-group-news-4-face|gnus-group-news-4|gnus-group-news-5-empty-face|gnus-group-news-5-empty|gnus-group-news-5-face|gnus-group-news-5|gnus-group-news-6-empty-face|gnus-group-news-6-empty|gnus-group-news-6-face|gnus-group-news-6|gnus-group-news-low-empty-face|gnus-group-news-low-empty|gnus-group-news-low-face|gnus-group-news-low|gnus-header-content-face|gnus-header-content|gnus-header-from-face|gnus-header-from|gnus-header-name-face|gnus-header-name|gnus-header-newsgroups-face|gnus-header-newsgroups|gnus-header-subject-face|gnus-header-subject|gnus-signature-face|gnus-signature|gnus-splash-face|gnus-splash|gnus-summary-cancelled-face|gnus-summary-cancelled|gnus-summary-high-ancient-face|gnus-summary-high-ancient|gnus-summary-high-read-face|gnus-summary-high-read|gnus-summary-high-ticked-face|gnus-summary-high-ticked|gnus-summary-high-undownloaded-face|gnus-summary-high-undownloaded|gnus-summary-high-unread-face|gnus-summary-high-unread|gnus-summary-low-ancient-face|gnus-summary-low-ancient|gnus-summary-low-read-face|gnus-summary-low-read|gnus-summary-low-ticked-face|gnus-summary-low-ticked|gnus-summary-low-undownloaded-face|gnus-summary-low-undownloaded|gnus-summary-low-unread-face|gnus-summary-low-unread|gnus-summary-normal-ancient-face|gnus-summary-normal-ancient|gnus-summary-normal-read-face|gnus-summary-normal-read|gnus-summary-normal-ticked-face|gnus-summary-normal-ticked|gnus-summary-normal-undownloaded-face|gnus-summary-normal-undownloaded|gnus-summary-normal-unread-face|gnus-summary-normal-unread|gnus-summary-selected-face|gnus-summary-selected|gomoku-O|gomoku-X|header-line|help-argument-name|hexl-address-region|hexl-ascii-region|hi-black-b|hi-black-hb|hi-blue-b|hi-blue|hi-green-b|hi-green|hi-pink|hi-red-b|hi-yellow|hide-ifdef-shadow|highlight-changes-delete-face|highlight-changes-delete|highlight-changes-face|highlight-changes|highlight|hl-line|holiday|icomplete-first-match|idlwave-help-link|idlwave-shell-bp|idlwave-shell-disabled-bp|idlwave-shell-electric-stop-line|idlwave-shell-pending-electric-stop|idlwave-shell-pending-stop|ido-first-match|ido-incomplete-regexp|ido-indicator|ido-only-match|ido-subdir|ido-virtual|info-header-node|info-header-xref|info-index-match|info-menu-5|info-menu-header|info-menu-star|info-node|info-title-1|info-title-2|info-title-3|info-title-4|info-xref|isearch-fail|isearch-lazy-highlight-face|isearch|iswitchb-current-match|iswitchb-invalid-regexp|iswitchb-single-match|iswitchb-virtual-matches|italic|landmark-font-lock-face-O|landmark-font-lock-face-X|lazy-highlight|ld-script-location-counter|link-visited|link|log-edit-header|log-edit-summary|log-edit-unknown-header|log-view-file-face|log-view-file|log-view-message-face|log-view-message|makefile-makepp-perl|makefile-shell|makefile-space-face|makefile-space|makefile-targets|match|menu|message-cited-text-face|message-cited-text|message-header-cc-face|message-header-cc|message-header-name-face|message-header-name|message-header-newsgroups-face|message-header-newsgroups|message-header-other-face|message-header-other|message-header-subject-face|message-header-subject|message-header-to-face|message-header-to|message-header-xheader-face|message-header-xheader|message-mml-face|message-mml|message-separator-face|message-separator|mh-folder-address|mh-folder-blacklisted|mh-folder-body|mh-folder-cur-msg-number|mh-folder-date|mh-folder-deleted|mh-folder-followup|mh-folder-msg-number|mh-folder-refiled|mh-folder-sent-to-me-hint|mh-folder-sent-to-me-sender|mh-folder-subject|mh-folder-tick|mh-folder-to|mh-folder-whitelisted|mh-letter-header-field|mh-search-folder|mh-show-cc|mh-show-date|mh-show-from|mh-show-header|mh-show-pgg-bad|mh-show-pgg-good|mh-show-pgg-unknown|mh-show-signature|mh-show-subject|mh-show-to|mh-speedbar-folder-with-unseen-messages|mh-speedbar-folder|mh-speedbar-selected-folder-with-unseen-messages|mh-speedbar-selected-folder|minibuffer-prompt|mm-command-output|mm-uu-extract|mode-line-buffer-id|mode-line-emphasis|mode-line-highlight|mode-line-inactive|mode-line|modeline-buffer-id|modeline-highlight|modeline-inactive|mouse|mpuz-solved|mpuz-text|mpuz-trivial|mpuz-unsolved|newsticker-date-face|newsticker-default-face|newsticker-enclosure-face|newsticker-extra-face|newsticker-feed-face|newsticker-immortal-item-face|newsticker-new-item-face|newsticker-obsolete-item-face|newsticker-old-item-face|newsticker-statistics-face|newsticker-treeview-face|newsticker-treeview-immortal-face|newsticker-treeview-new-face|newsticker-treeview-obsolete-face|newsticker-treeview-old-face|newsticker-treeview-selection-face|next-error|nobreak-space|nxml-attribute-colon|nxml-attribute-local-name|nxml-attribute-prefix|nxml-attribute-value-delimiter|nxml-attribute-value|nxml-cdata-section-CDATA|nxml-cdata-section-content|nxml-cdata-section-delimiter|nxml-char-ref-delimiter|nxml-char-ref-number|nxml-comment-content|nxml-comment-delimiter|nxml-delimited-data|nxml-delimiter|nxml-element-colon|nxml-element-local-name|nxml-element-prefix|nxml-entity-ref-delimiter|nxml-entity-ref-name|nxml-glyph|nxml-hash|nxml-heading|nxml-markup-declaration-delimiter|nxml-name|nxml-namespace-attribute-colon|nxml-namespace-attribute-prefix|nxml-namespace-attribute-value-delimiter|nxml-namespace-attribute-value|nxml-namespace-attribute-xmlns|nxml-outline-active-indicator|nxml-outline-ellipsis|nxml-outline-indicator|nxml-processing-instruction-content|nxml-processing-instruction-delimiter|nxml-processing-instruction-target|nxml-prolog-keyword|nxml-prolog-literal-content|nxml-prolog-literal-delimiter|nxml-ref|nxml-tag-delimiter|nxml-tag-slash|nxml-text|octave-function-comment-block|org-agenda-calendar-event|org-agenda-calendar-sexp|org-agenda-clocking|org-agenda-column-dateline|org-agenda-current-time|org-agenda-date-today|org-agenda-date-weekend|org-agenda-date|org-agenda-diary|org-agenda-dimmed-todo-face|org-agenda-done|org-agenda-filter-category|org-agenda-filter-regexp|org-agenda-filter-tags|org-agenda-restriction-lock|org-agenda-structure|org-archived|org-block-background|org-block-begin-line|org-block-end-line|org-block|org-checkbox-statistics-done|org-checkbox-statistics-todo|org-checkbox|org-clock-overlay|org-code|org-column-title|org-column|org-date-selected|org-date|org-default|org-document-info-keyword|org-document-info|org-document-title|org-done|org-drawer|org-ellipsis|org-footnote|org-formula|org-headline-done|org-hide|org-latex-and-related|org-level-1|org-level-2|org-level-3|org-level-4|org-level-5|org-level-6|org-level-7|org-level-8|org-link|org-list-dt|org-macro|org-meta-line|org-mode-line-clock-overrun|org-mode-line-clock|org-priority|org-property-value|org-quote|org-scheduled-previously|org-scheduled-today|org-scheduled|org-sexp-date|org-special-keyword|org-table|org-tag-group|org-tag|org-target|org-time-grid|org-todo|org-upcoming-deadline|org-verbatim|org-verse|org-warning|outline-1|outline-2|outline-3|outline-4|outline-5|outline-6|outline-7|outline-8|proced-mark|proced-marked|proced-sort-header|pulse-highlight-face|pulse-highlight-start-face|query-replace|rcirc-bright-nick|rcirc-dim-nick|rcirc-keyword|rcirc-my-nick|rcirc-nick-in-message-full-line|rcirc-nick-in-message|rcirc-other-nick|rcirc-prompt|rcirc-server-prefix|rcirc-server|rcirc-timestamp|rcirc-track-keyword|rcirc-track-nick|rcirc-url|reb-match-0|reb-match-1|reb-match-2|reb-match-3|rectangle-preview-face|region|rmail-header-name|rmail-highlight|rng-error|rst-adornment|rst-block|rst-comment|rst-definition|rst-directive|rst-emphasis1|rst-emphasis2|rst-external|rst-level-1|rst-level-2|rst-level-3|rst-level-4|rst-level-5|rst-level-6|rst-literal|rst-reference|rst-transition|ruler-mode-column-number|ruler-mode-comment-column|ruler-mode-current-column|ruler-mode-default|ruler-mode-fill-column|ruler-mode-fringes|ruler-mode-goal-column|ruler-mode-margins|ruler-mode-pad|ruler-mode-tab-stop|scroll-bar|secondary-selection|semantic-highlight-edits-face|semantic-highlight-func-current-tag-face|semantic-unmatched-syntax-face|senator-momentary-highlight-face|sgml-namespace|sh-escaped-newline|sh-heredoc-face|sh-heredoc|sh-quoted-exec|shadow|show-paren-match-face|show-paren-match|show-paren-mismatch-face|show-paren-mismatch|shr-link|shr-strike-through|smerge-base-face|smerge-base|smerge-markers-face|smerge-markers|smerge-mine-face|smerge-mine|smerge-other-face|smerge-other|smerge-refined-added|smerge-refined-change|smerge-refined-changed|smerge-refined-removed|speedbar-button-face|speedbar-directory-face|speedbar-file-face|speedbar-highlight-face|speedbar-selected-face|speedbar-separator-face|speedbar-tag-face|srecode-separator-face|strokes-char|subscript|success|superscript|table-cell|tcl-escaped-newline|term-bold|term-color-black|term-color-blue|term-color-cyan|term-color-green|term-color-magenta|term-color-red|term-color-white|term-color-yellow|term-underline|term|testcover-1value|testcover-nohits|tex-math-face|tex-math|tex-verbatim-face|tex-verbatim|texinfo-heading-face|texinfo-heading|tmm-inactive|todo-archived-only|todo-button|todo-category-string|todo-comment|todo-date|todo-diary-expired|todo-done-sep|todo-done|todo-key-prompt|todo-mark|todo-nondiary|todo-prefix-string|todo-search|todo-sorted-column|todo-time|todo-top-priority|tool-bar|tooltip|trailing-whitespace|tty-menu-disabled-face|tty-menu-enabled-face|tty-menu-selected-face|underline|variable-pitch|vc-conflict-state|vc-edited-state|vc-locally-added-state|vc-locked-state|vc-missing-state|vc-needs-update-state|vc-removed-state|vc-state-base-face|vc-up-to-date-state|vcursor|vera-font-lock-function|vera-font-lock-interface|vera-font-lock-number|verilog-font-lock-ams-face|verilog-font-lock-grouping-keywords-face|verilog-font-lock-p1800-face|verilog-font-lock-translate-off-face|vertical-border|vhdl-font-lock-attribute-face|vhdl-font-lock-directive-face|vhdl-font-lock-enumvalue-face|vhdl-font-lock-function-face|vhdl-font-lock-generic-\\\\\\\\/constant-face|vhdl-font-lock-prompt-face|vhdl-font-lock-reserved-words-face|vhdl-font-lock-translate-off-face|vhdl-font-lock-type-face|vhdl-font-lock-variable-face|vhdl-speedbar-architecture-face|vhdl-speedbar-architecture-selected-face|vhdl-speedbar-configuration-face|vhdl-speedbar-configuration-selected-face|vhdl-speedbar-entity-face|vhdl-speedbar-entity-selected-face|vhdl-speedbar-instantiation-face|vhdl-speedbar-instantiation-selected-face|vhdl-speedbar-library-face|vhdl-speedbar-package-face|vhdl-speedbar-package-selected-face|vhdl-speedbar-subprogram-face|viper-minibuffer-emacs|viper-minibuffer-insert|viper-minibuffer-vi|viper-replace-overlay|viper-search|warning|which-func|whitespace-big-indent|whitespace-empty|whitespace-hspace|whitespace-indentation|whitespace-line|whitespace-newline|whitespace-space-after-tab|whitespace-space-before-tab|whitespace-space|whitespace-tab|whitespace-trailing|widget-button-face|widget-button-pressed-face|widget-button-pressed|widget-button|widget-documentation-face|widget-documentation|widget-field-face|widget-field|widget-inactive-face|widget-inactive|widget-single-line-field-face|widget-single-line-field|window-divider-first-pixel|window-divider-last-pixel|window-divider|woman-addition-face|woman-addition|woman-bold-face|woman-bold|woman-italic-face|woman-italic|woman-unknown-face|woman-unknown)(?=[\\\\\\\\s()]|$)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.face.emacs.lisp\\\"},\\\"format\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"contentName\\\":\\\"string.quoted.double.emacs.lisp\\\",\\\"end\\\":\\\"(?=\\\\\\\")\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.placeholder.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.placeholder.emacs.lisp\\\"}},\\\"match\\\":\\\"(%[%cdefgosSxX])|(%.)\\\"},{\\\"include\\\":\\\"#string-innards\\\"}]},\\\"formatting\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(format|format-message|message|error)(?=\\\\\\\\s|$|\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.$2.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.emacs.lisp\\\"}},\\\"name\\\":\\\"meta.string-formatting.expression.emacs.lisp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.emacs.lisp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#format\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*$\\\\\\\\n?\\\",\\\"end\\\":\\\"\\\\\\\"|(?<!^)$|[\\\\\\\\s\\\\\\\"](?=[^\\\\\\\\s\\\\\\\"])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\s*$\\\\\\\\n?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.emacs.lisp\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\G)\\\\\\\\s*(\\\\\\\")\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\")\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.emacs.lisp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#format\\\"}]}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"functions\\\":{\\\"match\\\":\\\"\\\\\\\\b(?<=[\\\\\\\\s()\\\\\\\\[]|^)(abs|append|apply|assoc|butlast|c[ad]{1,2}r|c[ad]r-safe|consp?|copy-alist|copy-tree|dolist|funcall|last|length|listp?|load|make-list|mapc|mapcar|max|min|member|nbutlast|nconc|nreverse|nth|nthcdr|null|pop|prin[1ct]|push|quote|rassoc|reverse|rplac[ad]|safe-length|setcar|setcdr)(?=[\\\\\\\\s()]|$)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.function.$1.emacs.lisp\\\"},\\\"key-notation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(DEL|ESC|LFD|NUL|RET|SPC|TAB)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.control-character.key.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.escape.backslash.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)[0-7]{1,6}\\\",\\\"name\\\":\\\"constant.character.escape.octal.codepoint.key.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.escape.caret.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\^)\\\\\\\\S\\\",\\\"name\\\":\\\"constant.character.escape.caret.control.key.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.double.angle.bracket.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.double.angle.bracket.end.emacs.lisp\\\"}},\\\"match\\\":\\\"(<<)[-A-Za-z0-9]+(>>)\\\",\\\"name\\\":\\\"constant.command-name.key.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.integer.int.decimal.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.multiply.emacs.lisp\\\"}},\\\"match\\\":\\\"([0-9]+)(\\\\\\\\*)(?=[\\\\\\\\S])\\\",\\\"name\\\":\\\"meta.key-repetition.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#key-notation-prefix\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"constant.character.key.emacs.lisp\\\"}},\\\"match\\\":\\\"\\\\\\\\b(M-)(-?[0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.key-sequence.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#key-notation-prefix\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.angle.bracket.begin.emacs.lisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.control-character.key.emacs.lisp\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.angle.bracket.end.emacs.lisp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.control-character.key.emacs.lisp\\\"},\\\"6\\\":{\\\"name\\\":\\\"invalid.illegal.bad-prefix.emacs.lisp\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.character.key.emacs.lisp\\\"}},\\\"match\\\":\\\"\\\\\\\\b((?:[MCSAHs]-)+)(?:(<)(DEL|ESC|LFD|NUL|RET|SPC|TAB)(>)|(DEL|ESC|LFD|NUL|RET|SPC|TAB)\\\\\\\\b|([!-_a-z]{2,})|([!-_a-z]))?\\\",\\\"name\\\":\\\"meta.key-sequence.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"punctuation.definition.angle.bracket.begin.emacs.lisp\\\"},{\\\"include\\\":\\\"#key-notation-prefix\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"constant.function-key.emacs.lisp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.angle.bracket.end.emacs.lisp\\\"}},\\\"match\\\":\\\"([MCSAHs]-<|<[MCSAHs]-|<)([-A-Za-z0-9]+)(>)\\\",\\\"name\\\":\\\"meta.function-key.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s)(?![MCSAHs<>])[!-_a-z](?=\\\\\\\\s)\\\",\\\"name\\\":\\\"constant.character.key.emacs.lisp\\\"}]},\\\"key-notation-prefix\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.key.modifier.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.modifier.dash.emacs.lisp\\\"}},\\\"match\\\":\\\"([MCSAHs])(-)\\\"},\\\"keyword\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.emacs.lisp\\\"}},\\\"match\\\":\\\"(?<=[\\\\\\\\s()\\\\\\\\[]|^)(:)[-+=*/\\\\\\\\w~!@$%^&:<>{}?]+\\\",\\\"name\\\":\\\"constant.keyword.emacs.lisp\\\"},\\\"lambda\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(lambda|function)(?:\\\\\\\\s+|(?=[()]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.lambda.function.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.emacs.lisp\\\"}},\\\"name\\\":\\\"meta.lambda.expression.emacs.lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#defun-innards\\\"}]},\\\"loop\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(cl-loop)(?=[\\\\\\\\s()]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.cl-lib.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.emacs.lisp\\\"}},\\\"name\\\":\\\"meta.cl-lib.loop.emacs.lisp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[\\\\\\\\s()\\\\\\\\[]|^)(above|across|across-ref|always|and|append|as|below|by|collect|concat|count|do|each|finally|for|from|if|in|in-ref|initially|into|maximize|minimize|named|nconc|never|of|of-ref|on|repeat|return|sum|then|thereis|sum|to|unless|until|using|vconcat|when|while|with|(?:being\\\\\\\\s+(?:the)?\\\\\\\\s+(?:element|hash-key|hash-value|key-code|key-binding|key-seq|overlay|interval|symbols|frame|window|buffer)s?))(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"keyword.control.emacs.lisp\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"main\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#autoload\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#lambda\\\"},{\\\"include\\\":\\\"#loop\\\"},{\\\"include\\\":\\\"#escapes\\\"},{\\\"include\\\":\\\"#definition\\\"},{\\\"include\\\":\\\"#formatting\\\"},{\\\"include\\\":\\\"#face-innards\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#binding\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#quote\\\"},{\\\"include\\\":\\\"#symbols\\\"},{\\\"include\\\":\\\"#vectors\\\"},{\\\"include\\\":\\\"#arg-values\\\"},{\\\"include\\\":\\\"#archive-sources\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#faces\\\"},{\\\"include\\\":\\\"#cask\\\"},{\\\"include\\\":\\\"#stdlib\\\"}]},\\\"modeline\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.modeline.begin.emacs.lisp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#modeline-innards\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.modeline.end.emacs.lisp\\\"}},\\\"match\\\":\\\"(-\\\\\\\\*-)(.*)(-\\\\\\\\*-)\\\",\\\"name\\\":\\\"meta.modeline.emacs.lisp\\\"},\\\"modeline-innards\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.assignment.modeline.emacs.lisp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.emacs.lisp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#modeline-innards\\\"}]}},\\\"match\\\":\\\"([^\\\\\\\\s:;]+)\\\\\\\\s*(:)\\\\\\\\s*([^;]*)\\\",\\\"name\\\":\\\"meta.modeline.variable.emacs.lisp\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.emacs.lisp\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.emacs.lisp\\\"},{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"string.other.modeline.emacs.lisp\\\"}]},\\\"number\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.binary.emacs.lisp\\\"}},\\\"match\\\":\\\"(?<=[\\\\\\\\s()\\\\\\\\[]|^)(#)[Bb][01]+\\\",\\\"name\\\":\\\"constant.numeric.integer.binary.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.hex.emacs.lisp\\\"}},\\\"match\\\":\\\"(?<=[\\\\\\\\s()\\\\\\\\[]|^)(#)[Xx][0-9A-Fa-f]+\\\",\\\"name\\\":\\\"constant.numeric.integer.hex.viml\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s()\\\\\\\\[]|^)[-+]?\\\\\\\\d*\\\\\\\\.\\\\\\\\d+(?:[Ee][-+]?\\\\\\\\d+|[Ee]\\\\\\\\+(?:INF|NaN))?(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"constant.numeric.float.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s()\\\\\\\\[]|^)[-+]?\\\\\\\\d+(?:[Ee][-+]?\\\\\\\\d+|[Ee]\\\\\\\\+(?:INF|NaN))?(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"constant.numeric.integer.emacs.lisp\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[()]|^)(and|catch|cond|condition-case(?:-unless-debug)?|dotimes|eql?|equal|if|not|or|pcase|prog[12n]|throw|unless|unwind-protect|when|while)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"keyword.control.$1.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\(|\\\\\\\\s|^)(interactive)(?=\\\\\\\\s|\\\\\\\\(|\\\\\\\\))\\\",\\\"name\\\":\\\"storage.modifier.interactive.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\(|\\\\\\\\s|^)[-*+/%](?=\\\\\\\\s|\\\\\\\\)|$)\\\",\\\"name\\\":\\\"keyword.operator.numeric.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\(|\\\\\\\\s|^)[/<>]=|[=<>](?=\\\\\\\\s|\\\\\\\\)|$)\\\",\\\"name\\\":\\\"keyword.operator.comparison.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s)\\\\\\\\.(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"keyword.operator.pair-separator.emacs.lisp\\\"}]},\\\"quote\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.quote.emacs.lisp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"match\\\":\\\"(')([-+=*/\\\\\\\\w~!@$%^&:<>{}?]+)\\\",\\\"name\\\":\\\"constant.other.symbol.emacs.lisp\\\"}]},\\\"stdlib\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[()]|^)(`--pcase-macroexpander|Buffer-menu-unmark-all-buffers|Buffer-menu-unmark-all|Info-node-description|aa2u-mark-as-text|aa2u-mark-rectangle-as-text|aa2u-rectangle|aa2u|ada-find-file|ada-header|ada-mode|add-abbrev|add-change-log-entry-other-window|add-change-log-entry|add-dir-local-variable|add-file-local-variable-prop-line|add-file-local-variable|add-global-abbrev|add-log-current-defun|add-minor-mode|add-mode-abbrev|add-submenu|add-timeout|add-to-coding-system-list|add-to-list--anon-cmacro|add-variable-watcher|adoc-mode|advertised-undo|advice--add-function|advice--buffer-local|advice--called-interactively-skip|advice--car|advice--cd\\\\\\\\*r|advice--cdr|advice--defalias-fset|advice--interactive-form|advice--make-1|advice--make-docstring|advice--make-interactive-form|advice--make|advice--member-p|advice--normalize-place|advice--normalize|advice--props|advice--p|advice--remove-function|advice--set-buffer-local|advice--strip-macro|advice--subst-main|advice--symbol-function|advice--tweak|advice--where|after-insert-file-set-coding|aggressive-indent--extend-end-to-whole-sexps|aggressive-indent--indent-current-balanced-line|aggressive-indent--indent-if-changed|aggressive-indent--keep-track-of-changes|aggressive-indent--local-electric|aggressive-indent--proccess-changed-list-and-indent|aggressive-indent--run-user-hooks|aggressive-indent--softly-indent-defun|aggressive-indent--softly-indent-region-and-on|aggressive-indent-bug-report|aggressive-indent-global-mode|aggressive-indent-indent-defun|aggressive-indent-indent-region-and-on|aggressive-indent-mode-set-explicitly|aggressive-indent-mode|align-current|align-entire|align-highlight-rule|align-newline-and-indent|align-regexp|align-unhighlight-rule|align|alist-get|all-threads|allout-auto-activation-helper|allout-mode-p|allout-mode|allout-setup|allout-widgets-mode|allout-widgets-setup|alter-text-property|and-let\\\\\\\\*|ange-ftp-completion-hook-function|apache-mode|apropos-local-value|apropos-local-variable|arabic-shape-gstring|assoc-delete-all|auth-source--decode-octal-string|auth-source--symbol-keyword|auth-source-backend--anon-cmacro|auth-source-backend--eieio-childp|auth-source-backends-parser-file|auth-source-backends-parser-macos-keychain|auth-source-backends-parser-secrets|auth-source-json-check|auth-source-json-search|auth-source-pass-enable|auth-source-secrets-saver|auto-save-visited-mode|backtrace-frame--internal|backtrace-frames|backward-to-word|backward-word-strictly|battery-upower-prop|battery-upower|beginning-of-defun--in-emptyish-line-p|beginning-of-defun-comments|bf-help-describe-symbol|bf-help-mode|bf-help-setup|bignump|bison-mode|blink-cursor--rescan-frames|blink-cursor--should-blink|blink-cursor--start-idle-timer|blink-cursor--start-timer|bookmark-set-no-overwrite|brainfuck-mode|browse-url-conkeror|buffer-hash|bufferpos-to-filepos|byte-compile--function-signature|byte-compile--log-warning-for-byte-compile|byte-compile-cond-jump-table-info|byte-compile-cond-jump-table|byte-compile-cond-vars|byte-compile-define-symbol-prop|byte-compile-file-form-defvar-function|byte-compile-file-form-make-obsolete|byte-opt--arith-reduce|byte-opt--portable-numberp|byte-optimize-1-|byte-optimize-1\\\\\\\\+|byte-optimize-memq|c-or-c\\\\\\\\+\\\\\\\\+-mode|call-shell-region|cancel-debug-on-variable-change|cancel-debug-watch|capitalize-dwim|cconv--convert-funcbody|cconv--remap-llv|char-fold-to-regexp|char-from-name|checkdoc-file|checkdoc-package-keywords|cl--assertion-failed|cl--class-docstring--cmacro|cl--class-docstring|cl--class-index-table--cmacro|cl--class-index-table|cl--class-name--cmacro|cl--class-name|cl--class-p--cmacro|cl--class-parents--cmacro|cl--class-parents|cl--class-p|cl--class-slots--cmacro|cl--class-slots|cl--copy-slot-descriptor-1|cl--copy-slot-descriptor|cl--defstruct-predicate|cl--describe-class-slots|cl--describe-class-slot|cl--describe-class|cl--do-&aux|cl--find-class|cl--generic-arg-specializer|cl--generic-build-combined-method|cl--generic-cache-miss|cl--generic-class-parents|cl--generic-derived-specializers|cl--generic-describe|cl--generic-dispatches--cmacro|cl--generic-dispatches|cl--generic-fgrep|cl--generic-generalizer-name--cmacro|cl--generic-generalizer-name|cl--generic-generalizer-p--cmacro|cl--generic-generalizer-priority--cmacro|cl--generic-generalizer-priority|cl--generic-generalizer-p|cl--generic-generalizer-specializers-function--cmacro|cl--generic-generalizer-specializers-function|cl--generic-generalizer-tagcode-function--cmacro|cl--generic-generalizer-tagcode-function|cl--generic-get-dispatcher|cl--generic-isnot-nnm-p|cl--generic-lambda|cl--generic-load-hist-format|cl--generic-make--cmacro|cl--generic-make-defmethod-docstring|cl--generic-make-function|cl--generic-make-method--cmacro|cl--generic-make-method|cl--generic-make-next-function|cl--generic-make|cl--generic-member-method|cl--generic-method-documentation|cl--generic-method-files|cl--generic-method-function--cmacro|cl--generic-method-function|cl--generic-method-info|cl--generic-method-qualifiers--cmacro|cl--generic-method-qualifiers|cl--generic-method-specializers--cmacro|cl--generic-method-specializers|cl--generic-method-table--cmacro|cl--generic-method-table|cl--generic-method-uses-cnm--cmacro|cl--generic-method-uses-cnm|cl--generic-name--cmacro|cl--generic-name)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(cl--generic-no-next-method-function|cl--generic-options--cmacro|cl--generic-options|cl--generic-search-method|cl--generic-specializers-apply-to-type-p|cl--generic-split-args|cl--generic-standard-method-combination|cl--generic-struct-specializers|cl--generic-struct-tag|cl--generic-with-memoization|cl--generic|cl--make-random-state--cmacro|cl--make-random-state|cl--make-slot-descriptor--cmacro|cl--make-slot-descriptor|cl--make-slot-desc|cl--old-struct-type-of|cl--pcase-mutually-exclusive-p|cl--plist-remove|cl--print-table|cl--prog|cl--random-state-i--cmacro|cl--random-state-i|cl--random-state-j--cmacro|cl--random-state-j|cl--random-state-vec--cmacro|cl--random-state-vec|cl--slot-descriptor-initform--cmacro|cl--slot-descriptor-initform|cl--slot-descriptor-name--cmacro|cl--slot-descriptor-name|cl--slot-descriptor-props--cmacro|cl--slot-descriptor-props|cl--slot-descriptor-type--cmacro|cl--slot-descriptor-type|cl--struct-all-parents|cl--struct-cl--generic-method-p--cmacro|cl--struct-cl--generic-method-p|cl--struct-cl--generic-p--cmacro|cl--struct-cl--generic-p|cl--struct-class-children-sym--cmacro|cl--struct-class-children-sym|cl--struct-class-docstring--cmacro|cl--struct-class-docstring|cl--struct-class-index-table--cmacro|cl--struct-class-index-table|cl--struct-class-name--cmacro|cl--struct-class-named--cmacro|cl--struct-class-named|cl--struct-class-name|cl--struct-class-p--cmacro|cl--struct-class-parents--cmacro|cl--struct-class-parents|cl--struct-class-print--cmacro|cl--struct-class-print|cl--struct-class-p|cl--struct-class-slots--cmacro|cl--struct-class-slots|cl--struct-class-tag--cmacro|cl--struct-class-tag|cl--struct-class-type--cmacro|cl--struct-class-type|cl--struct-get-class|cl--struct-name-p|cl--struct-new-class--cmacro|cl--struct-new-class|cl--struct-register-child|cl-call-next-method|cl-defgeneric|cl-defmethod|cl-describe-type|cl-find-class|cl-find-method|cl-generic-all-functions|cl-generic-apply|cl-generic-call-method|cl-generic-combine-methods|cl-generic-current-method-specializers|cl-generic-define-context-rewriter|cl-generic-define-generalizer|cl-generic-define-method|cl-generic-define|cl-generic-ensure-function|cl-generic-function-options|cl-generic-generalizers|cl-generic-make-generalizer--cmacro|cl-generic-make-generalizer|cl-generic-p|cl-iter-defun|cl-method-qualifiers|cl-next-method-p|cl-no-applicable-method|cl-no-next-method|cl-no-primary-method|cl-old-struct-compat-mode|cl-prin1-to-string|cl-prin1|cl-print-expand-ellipsis|cl-print-object|cl-print-to-string-with-limit|cl-prog\\\\\\\\*|cl-prog|cl-random-state-p--cmacro|cl-slot-descriptor-p--cmacro|cl-slot-descriptor-p|cl-struct--pcase-macroexpander|cl-struct-define|cl-struct-p--cmacro|cl-struct-p|cl-struct-slot-value--inliner|cl-typep--inliner|clear-composition-cache|cmake-command-run|cmake-help-command|cmake-help-list-commands|cmake-help-module|cmake-help-property|cmake-help-variable|cmake-help|cmake-mode|coffee-mode|combine-change-calls-1|combine-change-calls|comment-line|comment-make-bol-ws|comment-quote-nested-default|comment-region-default-1|completion--category-override|completion-pcm--pattern-point-idx|condition-mutex|condition-name|condition-notify|condition-variable-p|condition-wait|conf-desktop-mode|conf-toml-mode|conf-toml-recognize-section|connection-local-set-profile-variables|connection-local-set-profiles|copy-cl--generic-generalizer|copy-cl--generic-method|copy-cl--generic|copy-from-above-command|copy-lisp-indent-state|copy-xref-elisp-location|copy-yas--exit|copy-yas--field|copy-yas--mirror|copy-yas--snippet|copy-yas--table|copy-yas--template|css-lookup-symbol|csv-mode|cuda-mode|current-thread|cursor-intangible-mode|cursor-sensor-mode|custom--should-apply-setting|debug-on-variable-change|debug-watch|default-font-width|define-symbol-prop|define-thing-chars|defined-colors-with-face-attributes|delete-selection-uses-region-p|describe-char-eldoc|describe-symbol|dir-locals--all-files|dir-locals-read-from-dir|dired--align-all-files|dired--need-align-p|dired-create-empty-file|dired-do-compress-to|dired-do-find-regexp-and-replace|dired-do-find-regexp|dired-mouse-find-file-other-frame|dired-mouse-find-file|dired-omit-mode|display-buffer--maybe-at-bottom|display-buffer--maybe-pop-up-frame|display-buffer--maybe-pop-up-window|display-buffer-in-child-frame|display-buffer-reuse-mode-window|display-buffer-use-some-frame|display-line-numbers-mode|dna-add-hooks|dna-isearch-forward|dna-mode|dna-reverse-complement-region|dockerfile-build-buffer|dockerfile-build-no-cache-buffer|dockerfile-mode|dolist-with-progress-reporter|dotenv-mode|downcase-dwim|dyalog-ediff-forward-word|dyalog-editor-connect|dyalog-fix-altgr-chars|dyalog-mode|dyalog-session-connect|easy-mmode--mode-docstring|eieio--add-new-slot|eieio--c3-candidate|eieio--c3-merge-lists|eieio--class-children--cmacro|eieio--class-class-allocation-values--cmacro|eieio--class-class-slots--cmacro|eieio--class-class-slots|eieio--class-constructor|eieio--class-default-object-cache--cmacro|eieio--class-docstring--cmacro|eieio--class-docstring|eieio--class-index-table--cmacro|eieio--class-index-table|eieio--class-initarg-tuples--cmacro|eieio--class-make--cmacro|eieio--class-make|eieio--class-method-invocation-order|eieio--class-name--cmacro|eieio--class-name|eieio--class-object|eieio--class-option-assoc|eieio--class-options--cmacro|eieio--class-option|eieio--class-p--cmacro)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(eieio--class-parents--cmacro|eieio--class-parents|eieio--class-precedence-bfs|eieio--class-precedence-c3|eieio--class-precedence-dfs|eieio--class-precedence-list|eieio--class-print-name|eieio--class-p|eieio--class-slot-initarg|eieio--class-slot-name-index|eieio--class-slots--cmacro|eieio--class-slots|eieio--class\\\\\\\\/struct-parents|eieio--generic-subclass-specializers|eieio--initarg-to-attribute|eieio--object-class-tag|eieio--pcase-macroexpander|eieio--perform-slot-validation-for-default|eieio--perform-slot-validation|eieio--slot-name-index|eieio--slot-override|eieio--validate-class-slot-value|eieio--validate-slot-value|eieio-change-class|eieio-class-slots|eieio-default-superclass--eieio-childp|eieio-defclass-internal|eieio-make-child-predicate|eieio-make-class-predicate|eieio-oref--anon-cmacro|eieio-pcase-slot-index-from-index-table|eieio-pcase-slot-index-table|eieio-slot-descriptor-name|eldoc--supported-p|eldoc-docstring-format-sym-doc|eldoc-mode-set-explicitly|electric-pair--balance-info|electric-pair--insert|electric-pair--inside-string-p|electric-pair--skip-whitespace|electric-pair--syntax-ppss|electric-pair--unbalanced-strings-p|electric-pair--with-uncached-syntax|electric-pair-conservative-inhibit|electric-pair-default-inhibit|electric-pair-default-skip-self|electric-pair-delete-pair|electric-pair-inhibit-if-helps-balance|electric-pair-local-mode|electric-pair-post-self-insert-function|electric-pair-skip-if-helps-balance|electric-pair-syntax-info|electric-pair-will-use-region|electric-quote-local-mode|electric-quote-mode|electric-quote-post-self-insert-function|elisp--font-lock-backslash|elisp--font-lock-flush-elisp-buffers|elisp--xref-backend|elisp--xref-make-xref|elisp-flymake--batch-compile-for-flymake|elisp-flymake--byte-compile-done|elisp-flymake-byte-compile|elisp-flymake-checkdoc|elisp-function-argstring|elisp-get-fnsym-args-string|elisp-get-var-docstring|elisp-load-path-roots|emacs-repository-version-git|enh-ruby-mode|epg-config--make-gpg-configuration|epg-config--make-gpgsm-configuration|epg-context-error-buffer--cmacro|epg-context-error-buffer|epg-find-configuration|erlang-compile|erlang-edoc-mode|erlang-find-tag-other-window|erlang-find-tag|erlang-mode|erlang-shell|erldoc-apropos|erldoc-browse-topic|erldoc-browse|erldoc-eldoc-function|etags--xref-backend|eval-expression-get-print-arguments|event-line-count|face-list-p|facemenu-set-charset|faces--attribute-at-point|faceup-clean-buffer|faceup-defexplainer|faceup-render-view-buffer|faceup-view-buffer|faceup-write-file|fic-mode|file-attribute-access-time|file-attribute-collect|file-attribute-device-number|file-attribute-group-id|file-attribute-inode-number|file-attribute-link-number|file-attribute-modes|file-attribute-modification-time|file-attribute-size|file-attribute-status-change-time|file-attribute-type|file-attribute-user-id|file-local-name|file-name-case-insensitive-p|file-name-quoted-p|file-name-quote|file-name-unquote|file-system-info|filepos-to-bufferpos--dos|filepos-to-bufferpos|files--ask-user-about-large-file|files--ensure-directory|files--force|files--make-magic-temp-file|files--message|files--name-absolute-system-p|files--splice-dirname-file|fill-polish-nobreak-p|find-function-on-key-other-frame|find-function-on-key-other-window|find-library-other-frame|find-library-other-window|fixnump|flymake-cc|flymake-diag-region|flymake-diagnostics|flymake-make-diagnostic|follow-scroll-down-window|follow-scroll-up-window|font-lock--remove-face-from-text-property|form-feed-mode|format-message|forth-block-mode|forth-eval-defun|forth-eval-last-expression-display-output|forth-eval-last-expression|forth-eval-region|forth-eval|forth-interaction-send|forth-kill|forth-load-file|forth-mode|forth-restart|forth-see|forth-switch-to-output-buffer|forth-switch-to-source-buffer|forth-words|fortune-message|forward-to-word|forward-word-strictly|frame--size-history|frame-after-make-frame|frame-ancestor-p|frame-creation-function|frame-edges|frame-focus-state|frame-geometry|frame-inner-height|frame-inner-width|frame-internal-border-width|frame-list-z-order|frame-monitor-attribute|frame-monitor-geometry|frame-monitor-workarea|frame-native-height|frame-native-width|frame-outer-height|frame-outer-width|frame-parent|frame-position|frame-restack|frame-size-changed-p|func-arity|generic--normalize-comments|generic-bracket-support|generic-mode-set-comments|generic-set-comment-syntax|generic-set-comment-vars|get-variable-watchers|gfm-mode|gfm-view-mode|ghc-core-create-core|ghc-core-mode|ghci-script-mode|git-commit--save-and-exit|git-commit-ack|git-commit-cc|git-commit-committer-email|git-commit-committer-name|git-commit-commit|git-commit-find-pseudo-header-position|git-commit-first-env-var|git-commit-font-lock-diff|git-commit-git-config-var|git-commit-insert-header-as-self|git-commit-insert-header|git-commit-mode|git-commit-reported|git-commit-review|git-commit-signoff|git-commit-test|git-define-git-commit-self|git-define-git-commit|gitattributes-mode--highlight-1st-field|gitattributes-mode-backward-field|gitattributes-mode-eldoc|gitattributes-mode-forward-field|gitattributes-mode-help|gitattributes-mode-menu|gitattributes-mode|gitconfig-indent-line|gitconfig-indentation-string|gitconfig-line-indented-p|gitconfig-mode|gitconfig-point-in-indentation-p|gitignore-mode|global-aggressive-indent-mode-check-buffers|global-aggressive-indent-mode-cmhh|global-aggressive-indent-mode-enable-in-buffers|global-aggressive-indent-mode|global-display-line-numbers-mode|global-eldoc-mode-check-buffers|global-eldoc-mode-cmhh|global-eldoc-mode-enable-in-buffers|glsl-mode|gnutls-asynchronous-parameters|gnutls-ciphers|gnutls-digests|gnutls-hash-digest|gnutls-hash-mac|gnutls-macs|gnutls-symmetric-decrypt|gnutls-symmetric-encrypt|go-download-play|go-mode|godoc|gofmt-before-save|gui-backend-get-selection|gui-backend-selection-exists-p|gui-backend-selection-owner-p|gui-backend-set-selection|gv-delay-error|gv-setter|gv-synthetic-place|hack-connection-local-variables-apply|handle-args-function|handle-move-frame|hash-table-empty-p|haskell-align-imports|haskell-c2hs-mode|haskell-cabal-get-dir|haskell-cabal-get-field|haskell-cabal-mode|haskell-cabal-visit-file|haskell-collapse-mode|haskell-compile|haskell-completions-completion-at-point|haskell-decl-scan-mode|haskell-describe|haskell-doc-current-info|haskell-doc-mode|haskell-doc-show-type|haskell-ds-create-imenu-index|haskell-forward-sexp|haskell-hayoo|haskell-hoogle-lookup-from-local|haskell-hoogle|haskell-indent-mode|haskell-indentation-mode|haskell-interactive-bring|haskell-interactive-kill|haskell-interactive-mode-echo|haskell-interactive-mode-reset-error|haskell-interactive-mode-return|haskell-interactive-mode-visit-error|haskell-interactive-switch|haskell-kill-session-process|haskell-menu|haskell-mode-after-save-handler|haskell-mode-find-uses|haskell-mode-generate-tags|haskell-mode-goto-loc|haskell-mode-jump-to-def-or-tag|haskell-mode-jump-to-def|haskell-mode-jump-to-tag|haskell-mode-show-type-at)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(haskell-mode-stylish-buffer|haskell-mode-tag-find|haskell-mode-view-news|haskell-mode|haskell-move-nested-left|haskell-move-nested-right|haskell-move-nested|haskell-navigate-imports-go|haskell-navigate-imports-return|haskell-navigate-imports|haskell-process-cabal-build|haskell-process-cabal-macros|haskell-process-cabal|haskell-process-cd|haskell-process-clear|haskell-process-do-info|haskell-process-do-type|haskell-process-interrupt|haskell-process-load-file|haskell-process-load-or-reload|haskell-process-minimal-imports|haskell-process-reload-devel-main|haskell-process-reload-file|haskell-process-reload|haskell-process-restart|haskell-process-show-repl-response|haskell-process-unignore|haskell-rgrep|haskell-session-all-modules|haskell-session-change-target|haskell-session-change|haskell-session-installed-modules|haskell-session-kill|haskell-session-maybe|haskell-session-process|haskell-session-project-modules|haskell-session|haskell-sort-imports|haskell-tab-indent-mode|haskell-version|hayoo|help--analyze-key|help--binding-undefined-p|help--docstring-quote|help--filter-info-list|help--load-prefixes|help--loaded-p|help--make-usage-docstring|help--make-usage|help--read-key-sequence|help--symbol-completion-table|help-definition-prefixes|help-fns--analyze-function|help-fns-function-description-header|help-fns-short-filename|highlight-uses-mode|hoogle|hyperspec-lookup|ibuffer-jump|ido-dired-other-frame|ido-dired-other-window|ido-display-buffer-other-frame|ido-find-alternate-file-other-window|if-let\\\\\\\\*|image-dired-minor-mode|image-mode-to-text|indent--default-inside-comment|indent--funcall-widened|indent-region-line-by-line|indent-relative-first-indent-point|inferior-erlang|inferior-lfe-mode|inferior-lfe|ini-mode|insert-directory-clean|insert-directory-wildcard-in-dir-p|interactive-haskell-mode|internal--compiler-macro-cXXr|internal--syntax-propertize|internal-auto-fill|internal-default-interrupt-process|internal-echo-keystrokes-prefix|internal-handle-focus-in|isearch--describe-regexp-mode|isearch--describe-word-mode|isearch--lax-regexp-function-p|isearch--momentary-message|isearch--yank-char-or-syntax|isearch-define-mode-toggle|isearch-lazy-highlight-start|isearch-string-propertize|isearch-toggle-char-fold|isearch-update-from-string-properties|isearch-xterm-paste|isearch-yank-symbol-or-char|jison-mode|jit-lock--run-functions|js-jsx-mode|js2-highlight-unused-variables-mode|js2-imenu-extras-mode|js2-imenu-extras-setup|js2-jsx-mode|js2-minor-mode|js2-mode|json--check-position|json--decode-utf-16-surrogates|json--plist-reverse|json--plist-to-alist|json--record-path|json-advance--inliner|json-path-to-position|json-peek--inliner|json-pop--inliner|json-pretty-print-buffer-ordered|json-pretty-print-ordered|json-readtable-dispatch|json-skip-whitespace--inliner|kill-current-buffer|kmacro-keyboard-macro-p|kmacro-p|kqueue-add-watch|kqueue-rm-watch|kqueue-valid-p|langdoc-call-fun|langdoc-define-help-mode|langdoc-if-let|langdoc-insert-link|langdoc-matched-strings|langdoc-while-let|lcms-cam02-ucs|lcms-cie-de2000|lcms-jab->jch|lcms-jch->jab|lcms-jch->xyz|lcms-temp->white-point|lcms-xyz->jch|lcms2-available-p|less-css-mode|let-when-compile|lfe-indent-function|lfe-mode|lgstring-remove-glyph|libxml-available-p|line-number-display-width|lisp--el-match-keyword|lisp--el-non-funcall-position-p|lisp-adaptive-fill|lisp-indent-calc-next|lisp-indent-initial-state|lisp-indent-region|lisp-indent-state-p--cmacro|lisp-indent-state-ppss--cmacro|lisp-indent-state-ppss-point--cmacro|lisp-indent-state-ppss-point|lisp-indent-state-ppss|lisp-indent-state-p|lisp-indent-state-stack--cmacro|lisp-indent-state-stack|lisp-ppss|list-timers|literate-haskell-mode|load-user-init-file|loadhist-unload-element|logcount|lread--substitute-object-in-subtree|macroexp-macroexpand|macroexp-parse-body|macrostep-c-mode-hook|macrostep-expand|macrostep-mode|major-mode-restore|major-mode-suspend|make-condition-variable|make-empty-file|make-finalizer|make-mutex|make-nearby-temp-file|make-pipe-process|make-process|make-record|make-temp-file-internal|make-thread|make-xref-elisp-location--cmacro|make-xref-elisp-location|make-yas--exit--cmacro|make-yas--exit|make-yas--field--cmacro|make-yas--field|make-yas--mirror--cmacro|make-yas--mirror|make-yas--snippet--cmacro|make-yas--snippet|make-yas--table--cmacro|make-yas--table|map--apply-alist|map--apply-array|map--apply-hash-table|map--do-alist|map--do-array|map--into-hash-table|map--make-pcase-bindings|map--make-pcase-patterns|map--pcase-macroexpander|map--put|map-apply|map-contains-key|map-copy|map-delete|map-do|map-elt|map-empty-p|map-every-p|map-filter|map-into|map-keys-apply|map-keys|map-length|map-let|map-merge-with|map-merge|map-nested-elt|map-pairs|map-put|map-remove|map-some|map-values-apply|map-values|mapbacktrace|mapp|mark-beginning-of-buffer|mark-end-of-buffer|markdown-live-preview-mode|markdown-mode|markdown-view-mode|mc-hide-unmatched-lines-mode|mc\\\\\\\\/add-cursor-on-click|mc\\\\\\\\/edit-beginnings-of-lines|mc\\\\\\\\/edit-ends-of-lines|mc\\\\\\\\/edit-lines|mc\\\\\\\\/insert-letters|mc\\\\\\\\/insert-numbers|mc\\\\\\\\/mark-all-dwim|mc\\\\\\\\/mark-all-in-region-regexp|mc\\\\\\\\/mark-all-in-region|mc\\\\\\\\/mark-all-like-this-dwim|mc\\\\\\\\/mark-all-like-this-in-defun|mc\\\\\\\\/mark-all-like-this|mc\\\\\\\\/mark-all-symbols-like-this-in-defun|mc\\\\\\\\/mark-all-symbols-like-this|mc\\\\\\\\/mark-all-words-like-this-in-defun|mc\\\\\\\\/mark-all-words-like-this|mc\\\\\\\\/mark-more-like-this-extended|mc\\\\\\\\/mark-next-like-this-word|mc\\\\\\\\/mark-next-like-this|mc\\\\\\\\/mark-next-lines|mc\\\\\\\\/mark-next-symbol-like-this|mc\\\\\\\\/mark-next-word-like-this|mc\\\\\\\\/mark-pop|mc\\\\\\\\/mark-previous-like-this-word|mc\\\\\\\\/mark-previous-like-this|mc\\\\\\\\/mark-previous-lines|mc\\\\\\\\/mark-previous-symbol-like-this|mc\\\\\\\\/mark-previous-word-like-this|mc\\\\\\\\/mark-sgml-tag-pair|mc\\\\\\\\/reverse-regions|mc\\\\\\\\/skip-to-next-like-this|mc\\\\\\\\/skip-to-previous-like-this|mc\\\\\\\\/sort-regions|mc\\\\\\\\/toggle-cursor-on-click|mc\\\\\\\\/unmark-next-like-this|mc\\\\\\\\/unmark-previous-like-this|mc\\\\\\\\/vertical-align-with-space|mc\\\\\\\\/vertical-align|menu-bar-bottom-and-right-window-divider|menu-bar-bottom-window-divider|menu-bar-display-line-numbers-mode|menu-bar-goto-uses-etags-p|menu-bar-no-window-divider|menu-bar-right-window-divider|menu-bar-window-divider-customize|mhtml-mode|midnight-mode|minibuffer-maybe-quote-filename|minibuffer-prompt-properties--setter|mm-images-in-region-p|mocha--get-callsite-name|mocha-attach-indium|mocha-check-debugger|mocha-compilation-filter|mocha-debug-at-point|mocha-debug-file|mocha-debug-project|mocha-debugger-get|mocha-debugger-name-p|mocha-debug|mocha-find-current-test|mocha-find-project-root|mocha-generate-command|mocha-list-of-strings-p|mocha-make-imenu-alist|mocha-opts-file|mocha-realgud:nodejs-attach|mocha-run|mocha-test-at-point|mocha-test-file|mocha-test-project|mocha-toggle-imenu-function|mocha-walk-up-to-it|mode-line-default-help-echo|module-function-p|module-load|mouse--click-1-maybe-follows-link|mouse-absolute-pixel-position|mouse-drag-and-drop-region|mouse-drag-bottom-edge|mouse-drag-bottom-left-corner|mouse-drag-bottom-right-corner|mouse-drag-frame|mouse-drag-left-edge|mouse-drag-right-edge|mouse-drag-top-edge|mouse-drag-top-left-corner|mouse-drag-top-right-corner|mouse-resize-frame|move-text--at-first-line-p)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(move-text--at-last-line-p|move-text--at-penultimate-line-p|move-text--last-line-is-just-newline|move-text--total-lines|move-text-default-bindings|move-text-down|move-text-line-down|move-text-line-up|move-text-region-down|move-text-region-up|move-text-region|move-text-up|move-to-window-group-line|mule--ucs-names-annotation|multiple-cursors-mode|mutex-lock|mutex-name|mutex-unlock|mutexp|nasm-mode|newlisp-mode|newlisp-show-repl|next-error-buffer-on-selected-frame|next-error-found|next-error-select-buffer|ninja-mode|obarray-get|obarray-make|obarray-map|obarray-put|obarray-remove|obarray-size|obarrayp|occur-regexp-descr|org-columns-insert-dblock|org-duration-from-minutes|org-duration-h:mm-only-p|org-duration-p|org-duration-set-regexps|org-duration-to-minutes|org-lint|package--activate-autoloads-and-load-path|package--add-to-compatibility-table|package--append-to-alist|package--autoloads-file-name|package--build-compatibility-table|package--check-signature-content|package--download-and-read-archives|package--find-non-dependencies|package--get-deps|package--incompatible-p|package--load-files-for-activation|package--newest-p|package--prettify-quick-help-key|package--print-help-section|package--quickstart-maybe-refresh|package--read-pkg-desc|package--removable-packages|package--remove-hidden|package--save-selected-packages|package--sort-by-dependence|package--sort-deps-in-alist|package--update-downloads-in-progress|package--update-selected-packages|package--used-elsewhere-p|package--user-installed-p|package--user-selected-p|package--with-response-buffer|package-activate-all|package-archive-priority|package-autoremove|package-delete-button-action|package-desc-priority-version|package-desc-priority|package-dir-info|package-install-selected-packages|package-menu--find-and-notify-upgrades|package-menu--list-to-prompt|package-menu--mark-or-notify-upgrades|package-menu--mark-upgrades-1|package-menu--partition-transaction|package-menu--perform-transaction|package-menu--populate-new-package-list|package-menu--post-refresh|package-menu--print-info-simple|package-menu--prompt-transaction-p|package-menu-hide-package|package-menu-mode-menu|package-menu-toggle-hiding|package-quickstart-refresh|package-reinstall|pcase--edebug-match-macro|pcase--make-docstring|pcase-lambda|pcomplete\\\\\\\\/find|perl-flymake|picolisp-mode|picolisp-repl-mode|picolisp-repl|pixel-scroll-mode|pos-visible-in-window-group-p|pov-mode|powershell-mode|powershell|prefix-command-preserve-state|prefix-command-update|prettify-symbols--post-command-hook|prettify-symbols-default-compose-p|print--preprocess|process-thread|prog-first-column|project-current|project-find-file|project-find-regexp|project-or-external-find-file|project-or-external-find-regexp|proper-list-p|provided-mode-derived-p|pulse-momentary-highlight-one-line|pulse-momentary-highlight-region|quelpa|query-replace--split-string|radix-tree--insert|radix-tree--lookup|radix-tree--prefixes|radix-tree--remove|radix-tree--subtree|radix-tree-count|radix-tree-from-map|radix-tree-insert|radix-tree-iter-mappings|radix-tree-iter-subtrees|radix-tree-leaf--pcase-macroexpander|radix-tree-lookup|radix-tree-prefixes|radix-tree-subtree|read-answer|read-multiple-choice|readable-foreground-color|recenter-window-group|recentf-mode|recode-file-name|recode-region|record-window-buffer|recordp|record|recover-file|recover-session-finish|recover-session|recover-this-file|rectangle-mark-mode|rectangle-number-lines|rectangular-region-mode|redirect-debugging-output|redisplay--pre-redisplay-functions|redisplay--update-region-highlight|redraw-modeline|refill-mode|reftex-all-document-files|reftex-citation|reftex-index-phrases-mode|reftex-isearch-minor-mode|reftex-mode|reftex-reset-scanning-information|regexp-builder|regexp-opt-group|region-active-p|region-bounds|region-modifiable-p|region-noncontiguous-p|register-ccl-program|register-code-conversion-map|register-definition-prefixes|register-describe-oneline|register-input-method|register-preview-default|register-preview|register-swap-out|register-to-point|register-val-describe|register-val-insert|register-val-jump-to|registerv--make--cmacro|registerv--make|registerv-data--cmacro|registerv-data|registerv-insert-func--cmacro|registerv-insert-func|registerv-jump-func--cmacro|registerv-jump-func|registerv-make|registerv-p--cmacro|registerv-print-func--cmacro|registerv-print-func|registerv-p|remember-clipboard|remember-diary-extract-entries|remember-notes|remember-other-frame|remember|remove-variable-watcher|remove-yank-excluded-properties|rename-uniquely|repeat-complex-command|repeat-matching-complex-command|repeat|replace--push-stack|replace-buffer-contents|replace-dehighlight|replace-eval-replacement|replace-highlight|replace-loop-through-replacements|replace-match-data|replace-match-maybe-edit|replace-match-string-symbols|replace-quote|replace-rectangle|replace-regexp|replace-search|replace-string|report-emacs-bug|report-errors|reporter-submit-bug-report|reposition-window|repunctuate-sentences|reset-language-environment|reset-this-command-lengths|resize-mini-window-internal|resize-temp-buffer-window|reveal-mode|reverse-region|revert-buffer--default|revert-buffer-insert-file-contents--default-function|revert-buffer-with-coding-system|rfc2104-hash|rfc822-goto-eoh|rfn-eshadow-setup-minibuffer|rfn-eshadow-sifn-equal|rfn-eshadow-update-overlay|rgrep|right-char|right-word|rlogin|rmail-input|rmail-mode|rmail-movemail-variant-p|rmail-output-as-seen|run-erlang|run-forth|run-haskell|run-lfe|run-newlisp|run-sml|rust-mode|rx--pcase-macroexpander|save-mark-and-excursion--restore|save-mark-and-excursion--save|save-mark-and-excursion|save-place-local-mode|save-place-mode|scad-mode|search-forward-help-for-help|secondary-selection-exist-p|secondary-selection-from-region|secondary-selection-to-region|secure-hash-algorithms|sed-mode|selected-window-group|seq--activate-font-lock-keywords|seq--elt-safe|seq--into-list|seq--into-string|seq--into-vector|seq--make-pcase-bindings|seq--make-pcase-patterns|seq--pcase-macroexpander|seq-contains|seq-difference|seq-do-indexed|seq-find|seq-group-by|seq-intersection|seq-into-sequence|seq-into|seq-let|seq-map-indexed|seq-mapcat|seq-mapn|seq-max|seq-min|seq-partition|seq-position|seq-random-elt|seq-set-equal-p|seq-some|seq-sort-by|seqp|set--this-command-keys|set-binary-mode|set-buffer-redisplay|set-mouse-absolute-pixel-position|set-process-thread|set-rectangular-region-anchor|set-window-group-start|shell-command--save-pos-or-erase|shell-command--set-point-after-cmd|shift-number-down|shift-number-up|slime-connect|slime-lisp-mode-hook|slime-mode|slime-scheme-mode-hook|slime-selector|slime-setup|slime|smerge-refine-regions|sml-cm-mode|sml-lex-mode|sml-mode|sml-run|sml-yacc-mode|snippet-mode|spice-mode|split-window-no-error|sql-mariadb|ssh-authorized-keys-mode|ssh-config-mode|ssh-known-hosts-mode|startup--setup-quote-display|string-distance|string-greaterp|string-version-lessp|string>|subr--with-wrapper-hook-no-warnings|switch-to-haskell|sxhash-eql|sxhash-equal|sxhash-eq|syntax-ppss--data)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(tabulated-list--col-local-max-widths|tabulated-list--get-sorter|tabulated-list-header-overlay-p|tabulated-list-line-number-width|tabulated-list-watch-line-number-width|tabulated-list-window-scroll-function|terminal-init-xterm|thing-at-point--beginning-of-sexp|thing-at-point--end-of-sexp|thing-at-point--read-from-whole-string|thread--blocker|thread-alive-p|thread-handle-event|thread-join|thread-last-error|thread-live-p|thread-name|thread-signal|thread-yield|threadp|tildify-mode|tildify-space|toml-mode|tramp-archive-autoload-file-name-regexp|tramp-register-archive-file-name-handler|tty-color-24bit|turn-on-haskell-decl-scan|turn-on-haskell-doc-mode|turn-on-haskell-doc|turn-on-haskell-indentation|turn-on-haskell-indent|turn-on-haskell-unicode-input-method|typescript-mode|uncomment-region-default-1|undo--wrap-and-run-primitive-undo|undo-amalgamate-change-group|undo-auto--add-boundary|undo-auto--boundaries|undo-auto--boundary-ensure-timer|undo-auto--boundary-timer|undo-auto--ensure-boundary|undo-auto--last-boundary-amalgamating-number|undo-auto--needs-boundary-p|undo-auto--undoable-change|undo-auto-amalgamate|universal-argument--description|universal-argument--preserve|upcase-char|upcase-dwim|url-asynchronous--cmacro|url-asynchronous|url-directory-files|url-domain|url-file-attributes|url-file-directory-p|url-file-executable-p|url-file-exists-p|url-file-handler-identity|url-file-name-all-completions|url-file-name-completion|url-file-symlink-p|url-file-truename|url-file-writable-p|url-handler-directory-file-name|url-handler-expand-file-name|url-handler-file-name-directory|url-handler-file-remote-p|url-handler-unhandled-file-name-directory|url-handlers-create-wrapper|url-handlers-set-buffer-mode|url-insert-buffer-contents|url-insert|url-run-real-handler|user-ptrp|userlock--ask-user-about-supersession-threat|vc-message-unresolved-conflicts|vc-print-branch-log|vc-push|vc-refresh-state|version-control-safe-local-p|vimrc-mode|wavefront-obj-mode|when-let\\\\\\\\*|window--adjust-process-windows|window--even-window-sizes|window--make-major-side-window-next-to|window--make-major-side-window|window--process-window-list|window--sides-check-failed|window--sides-check|window--sides-reverse-all|window--sides-reverse-frame|window--sides-reverse-on-frame-p|window--sides-reverse-side|window--sides-reverse|window--sides-verticalize-frame|window--sides-verticalize|window-absolute-body-pixel-edges|window-absolute-pixel-position|window-adjust-process-window-size-largest|window-adjust-process-window-size-smallest|window-adjust-process-window-size|window-body-edges|window-body-pixel-edges|window-divider-mode-apply|window-divider-mode|window-divider-width-valid-p|window-font-height|window-font-width|window-group-end|window-group-start|window-largest-empty-rectangle--disjoint-maximums|window-largest-empty-rectangle--maximums-1|window-largest-empty-rectangle--maximums|window-largest-empty-rectangle|window-lines-pixel-dimensions|window-main-window|window-max-chars-per-line|window-pixel-height-before-size-change|window-pixel-width-before-size-change|window-swap-states|window-system-initialization|window-toggle-side-windows|with-connection-local-profiles|with-mutex|x-load-color-file|xml-remove-comments|xref-backend-apropos|xref-backend-definitions|xref-backend-identifier-completion-table|xref-collect-matches|xref-elisp-location-file--cmacro|xref-elisp-location-file|xref-elisp-location-p--cmacro|xref-elisp-location-symbol--cmacro|xref-elisp-location-symbol|xref-elisp-location-type--cmacro|xref-elisp-location-type|xref-find-backend|xref-find-definitions-at-mouse|xref-make-elisp-location--cmacro|xref-marker-stack-empty-p|xterm--init-activate-get-selection|xterm--init-activate-set-selection|xterm--init-bracketed-paste-mode|xterm--init-focus-tracking|xterm--init-frame-title|xterm--init-modify-other-keys|xterm--pasted-text|xterm--push-map|xterm--query|xterm--read-event-for-query|xterm--report-background-handler|xterm--selection-char|xterm--suspend-tty-function|xterm--version-handler|xterm-maybe-set-dark-background-mode|xterm-paste|xterm-register-default-colors|xterm-rgb-convert-to-16bit|xterm-set-window-title-flag|xterm-set-window-title|xterm-translate-bracketed-paste|xterm-translate-focus-in|xterm-translate-focus-out|xterm-unset-window-title-flag|xwidget-webkit-browse-url|yaml-mode|yas--add-template|yas--advance-end-maybe|yas--advance-end-of-parents-maybe|yas--advance-start-maybe|yas--all-templates|yas--apply-transform|yas--auto-fill-wrapper|yas--auto-fill|yas--auto-next|yas--calculate-adjacencies|yas--calculate-group|yas--calculate-mirror-depth|yas--calculate-simple-fom-parentage|yas--check-commit-snippet|yas--collect-snippet-markers|yas--commit-snippet|yas--compute-major-mode-and-parents|yas--create-snippet-xrefs|yas--define-menu-1|yas--define-parents|yas--define-snippets-1|yas--define-snippets-2|yas--define|yas--delete-from-keymap|yas--delete-regions|yas--describe-pretty-table|yas--escape-string|yas--eval-condition|yas--eval-for-effect|yas--eval-for-string|yas--exit-marker--cmacro|yas--exit-marker|yas--exit-next--cmacro|yas--exit-next|yas--exit-p--cmacro|yas--exit-p|yas--expand-from-keymap-doc|yas--expand-from-trigger-key-doc|yas--expand-or-prompt-for-template|yas--expand-or-visit-from-menu|yas--fallback-translate-input|yas--fallback|yas--fetch|yas--field-contains-point-p|yas--field-end--cmacro|yas--field-end|yas--field-mirrors--cmacro|yas--field-mirrors|yas--field-modified-p--cmacro|yas--field-modified-p|yas--field-next--cmacro|yas--field-next|yas--field-number--cmacro|yas--field-number|yas--field-p--cmacro|yas--field-parent-field--cmacro|yas--field-parent-field|yas--field-parse-create|yas--field-probably-deleted-p|yas--field-p|yas--field-start--cmacro|yas--field-start|yas--field-text-for-display|yas--field-transform--cmacro|yas--field-transform|yas--field-update-display|yas--filter-templates-by-condition|yas--find-next-field|yas--finish-moving-snippets|yas--fom-end|yas--fom-next|yas--fom-parent-field|yas--fom-start|yas--format|yas--get-field-once|yas--get-snippet-tables|yas--get-template-by-uuid|yas--global-mode-reload-with-jit-maybe|yas--goto-saved-location|yas--guess-snippet-directories-1|yas--guess-snippet-directories|yas--indent-parse-create|yas--indent-region|yas--indent|yas--key-from-desc|yas--keybinding-beyond-yasnippet|yas--letenv|yas--load-directory-1|yas--load-directory-2|yas--load-pending-jits|yas--load-snippet-dirs|yas--load-yas-setup-file|yas--lookup-snippet-1|yas--make-control-overlay|yas--make-directory-maybe|yas--make-exit--cmacro|yas--make-exit|yas--make-field--cmacro|yas--make-field|yas--make-marker|yas--make-menu-binding|yas--make-mirror--cmacro|yas--make-mirror|yas--make-move-active-field-overlay|yas--make-move-field-protection-overlays|yas--make-snippet--cmacro|yas--make-snippet-table--cmacro|yas--make-snippet-table|yas--make-snippet|yas--make-template--cmacro|yas--make-template)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(yas--mark-this-and-children-modified|yas--markers-to-points|yas--maybe-clear-field-filter|yas--maybe-expand-from-keymap-filter|yas--maybe-expand-key-filter|yas--maybe-move-to-active-field|yas--menu-keymap-get-create|yas--message|yas--minor-mode-menu|yas--mirror-depth--cmacro|yas--mirror-depth|yas--mirror-end--cmacro|yas--mirror-end|yas--mirror-next--cmacro|yas--mirror-next|yas--mirror-p--cmacro|yas--mirror-parent-field--cmacro|yas--mirror-parent-field|yas--mirror-p|yas--mirror-start--cmacro|yas--mirror-start|yas--mirror-transform--cmacro|yas--mirror-transform|yas--mirror-update-display|yas--modes-to-activate|yas--move-to-field|yas--namehash-templates-alist|yas--on-buffer-kill|yas--on-field-overlay-modification|yas--on-protection-overlay-modification|yas--parse-template|yas--place-overlays|yas--points-to-markers|yas--post-command-handler|yas--prepare-snippets-for-move|yas--prompt-for-keys|yas--prompt-for-table|yas--prompt-for-template|yas--protect-escapes|yas--read-keybinding|yas--read-lisp|yas--read-table|yas--remove-misc-free-from-undo|yas--remove-template-by-uuid|yas--replace-all|yas--require-template-specific-condition-p|yas--restore-backquotes|yas--restore-escapes|yas--restore-marker-location|yas--restore-overlay-line-location|yas--restore-overlay-location|yas--safely-call-fun|yas--safely-run-hook|yas--save-backquotes|yas--save-restriction-and-widen|yas--scan-sexps|yas--schedule-jit|yas--show-menu-p|yas--simple-fom-create|yas--skip-and-clear-field-p|yas--skip-and-clear|yas--snapshot-marker-location|yas--snapshot-overlay-line-location|yas--snapshot-overlay-location|yas--snippet-active-field--cmacro|yas--snippet-active-field|yas--snippet-control-overlay--cmacro|yas--snippet-control-overlay|yas--snippet-create|yas--snippet-description-finish-runonce|yas--snippet-exit--cmacro|yas--snippet-exit|yas--snippet-expand-env--cmacro|yas--snippet-expand-env|yas--snippet-field-compare|yas--snippet-fields--cmacro|yas--snippet-fields|yas--snippet-find-field|yas--snippet-force-exit--cmacro|yas--snippet-force-exit|yas--snippet-id--cmacro|yas--snippet-id|yas--snippet-live-p|yas--snippet-map-markers|yas--snippet-next-id|yas--snippet-p--cmacro|yas--snippet-parse-create|yas--snippet-previous-active-field--cmacro|yas--snippet-previous-active-field|yas--snippet-p|yas--snippet-revive|yas--snippet-sort-fields|yas--snippets-at-point|yas--subdirs|yas--table-all-keys|yas--table-direct-keymap--cmacro|yas--table-direct-keymap|yas--table-get-create|yas--table-hash--cmacro|yas--table-hash|yas--table-mode|yas--table-name--cmacro|yas--table-name|yas--table-p--cmacro|yas--table-parents--cmacro|yas--table-parents|yas--table-p|yas--table-templates|yas--table-uuidhash--cmacro|yas--table-uuidhash|yas--take-care-of-redo|yas--template-can-expand-p|yas--template-condition--cmacro|yas--template-condition|yas--template-content--cmacro|yas--template-content|yas--template-expand-env--cmacro|yas--template-expand-env|yas--template-fine-group|yas--template-get-file|yas--template-group--cmacro|yas--template-group|yas--template-key--cmacro|yas--template-keybinding--cmacro|yas--template-keybinding|yas--template-key|yas--template-load-file--cmacro|yas--template-load-file|yas--template-menu-binding-pair--cmacro|yas--template-menu-binding-pair-get-create|yas--template-menu-binding-pair|yas--template-menu-managed-by-yas-define-menu|yas--template-name--cmacro|yas--template-name|yas--template-p--cmacro|yas--template-perm-group--cmacro|yas--template-perm-group|yas--template-pretty-list|yas--template-p|yas--template-save-file--cmacro|yas--template-save-file|yas--template-table--cmacro|yas--template-table|yas--template-uuid--cmacro|yas--template-uuid|yas--templates-for-key-at-point|yas--transform-mirror-parse-create|yas--undo-in-progress|yas--update-mirrors|yas--update-template-menu|yas--update-template|yas--visit-snippet-file-1|yas--warning|yas--watch-auto-fill|yas-abort-snippet|yas-about|yas-activate-extra-mode|yas-active-keys|yas-active-snippets|yas-auto-next|yas-choose-value|yas-compile-directory|yas-completing-prompt|yas-current-field|yas-deactivate-extra-mode|yas-default-from-field|yas-define-condition-cache|yas-define-menu|yas-define-snippets|yas-describe-table-by-namehash|yas-describe-tables|yas-direct-keymaps-reload|yas-dropdown-prompt|yas-escape-text|yas-exit-all-snippets|yas-exit-snippet|yas-expand-from-keymap|yas-expand-from-trigger-key|yas-expand-snippet|yas-expand|yas-field-value|yas-global-mode-check-buffers|yas-global-mode-cmhh|yas-global-mode-enable-in-buffers|yas-global-mode|yas-hippie-try-expand|yas-ido-prompt|yas-initialize|yas-insert-snippet|yas-inside-string|yas-key-to-value|yas-load-directory|yas-load-snippet-buffer-and-close|yas-load-snippet-buffer|yas-longest-key-from-whitespace|yas-lookup-snippet|yas-maybe-ido-prompt|yas-maybe-load-snippet-buffer|yas-minor-mode-on|yas-minor-mode-set-explicitly|yas-minor-mode|yas-new-snippet|yas-next-field-or-maybe-expand|yas-next-field-will-exit-p|yas-next-field|yas-no-prompt|yas-prev-field|yas-recompile-all|yas-reload-all|yas-selected-text|yas-shortest-key-until-whitespace|yas-skip-and-clear-field|yas-skip-and-clear-or-delete-char|yas-snippet-dirs|yas-snippet-mode-buffer-p|yas-substr|yas-text|yas-throw|yas-try-key-from-whitespace|yas-tryout-snippet|yas-unimplemented|yas-verify-value|yas-visit-snippet-file|yas-x-prompt|yas\\\\\\\\/abort-snippet|yas\\\\\\\\/about|yas\\\\\\\\/choose-value|yas\\\\\\\\/compile-directory|yas\\\\\\\\/completing-prompt|yas\\\\\\\\/default-from-field|yas\\\\\\\\/define-condition-cache|yas\\\\\\\\/define-menu|yas\\\\\\\\/define-snippets|yas\\\\\\\\/describe-tables|yas\\\\\\\\/direct-keymaps-reload|yas\\\\\\\\/dropdown-prompt|yas\\\\\\\\/exit-all-snippets|yas\\\\\\\\/exit-snippet|yas\\\\\\\\/expand-from-keymap|yas\\\\\\\\/expand-from-trigger-key|yas\\\\\\\\/expand-snippet|yas\\\\\\\\/expand|yas\\\\\\\\/field-value|yas\\\\\\\\/global-mode|yas\\\\\\\\/hippie-try-expand|yas\\\\\\\\/ido-prompt|yas\\\\\\\\/initialize|yas\\\\\\\\/insert-snippet|yas\\\\\\\\/inside-string|yas\\\\\\\\/key-to-value|yas\\\\\\\\/load-directory|yas\\\\\\\\/load-snippet-buffer|yas\\\\\\\\/minor-mode-on|yas\\\\\\\\/minor-mode|yas\\\\\\\\/new-snippet|yas\\\\\\\\/next-field-or-maybe-expand|yas\\\\\\\\/next-field|yas\\\\\\\\/no-prompt|yas\\\\\\\\/prev-field|yas\\\\\\\\/recompile-all|yas\\\\\\\\/reload-all|yas\\\\\\\\/selected-text|yas\\\\\\\\/skip-and-clear-or-delete-char|yas\\\\\\\\/snippet-dirs|yas\\\\\\\\/substr|yas\\\\\\\\/text|yas\\\\\\\\/throw|yas\\\\\\\\/tryout-snippet|yas\\\\\\\\/unimplemented|yas\\\\\\\\/verify-value|yas\\\\\\\\/visit-snippet-file|yas\\\\\\\\/x-prompt|yasnippet-unload-function|zap-up-to-char)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(abbrev-all-caps|abbrev-expand-function|abbrev-expansion|abbrev-file-name|abbrev-get|abbrev-insert|abbrev-map|abbrev-minor-mode-table-alist|abbrev-prefix-mark|abbrev-put|abbrev-start-location|abbrev-start-location-buffer|abbrev-symbol|abbrev-table-get|abbrev-table-name-list|abbrev-table-p|abbrev-table-put|abbreviate-file-name|abbrevs-changed|abort-recursive-edit|accept-change-group|accept-process-output|access-file|accessible-keymaps|acos|activate-change-group|activate-mark-hook|active-minibuffer-window|adaptive-fill-first-line-regexp|adaptive-fill-function|adaptive-fill-mode|adaptive-fill-regexp|add-face-text-property|add-function|add-hook|add-name-to-file|add-text-properties|add-to-history|add-to-invisibility-spec|add-to-list|add-to-ordered-list|adjust-window-trailing-edge|advice-add|advice-eval-interactive-spec|advice-function-mapc|advice-function-member-p|advice-mapc|advice-member-p|advice-remove|after-change-functions|after-change-major-mode-hook|after-find-file|after-init-hook|after-init-time|after-insert-file-functions|after-load-functions|after-make-frame-functions|after-revert-hook|after-save-hook|after-setting-font-hook|all-completions|append-to-file|apply-partially|apropos|aref|argv|arrayp|ascii-case-table|aset|ash|asin|ask-user-about-lock|ask-user-about-supersession-threat|assoc-default|assoc-string|assq|assq-delete-all|atan|atom|auto-coding-alist|auto-coding-functions|auto-coding-regexp-alist|auto-fill-chars|auto-fill-function|auto-hscroll-mode|auto-mode-alist|auto-raise-tool-bar-buttons|auto-resize-tool-bars|auto-save-default|auto-save-file-name-p|auto-save-hook|auto-save-interval|auto-save-list-file-name|auto-save-list-file-prefix|auto-save-mode|auto-save-timeout|auto-save-visited-file-name|auto-window-vscroll|autoload|autoload-do-load|autoloadp|back-to-indentation|backtrace|backtrace-debug|backtrace-frame|backup-buffer|backup-by-copying|backup-by-copying-when-linked|backup-by-copying-when-mismatch|backup-by-copying-when-privileged-mismatch|backup-directory-alist|backup-enable-predicate|backup-file-name-p|backup-inhibited|backward-button|backward-char|backward-delete-char-untabify|backward-delete-char-untabify-method|backward-list|backward-prefix-chars|backward-sexp|backward-to-indentation|backward-word|balance-windows|balance-windows-area|barf-if-buffer-read-only|base64-decode-region|base64-decode-string|base64-encode-region|base64-encode-string|batch-byte-compile|baud-rate|beep|before-change-functions|before-hack-local-variables-hook|before-init-hook|before-init-time|before-make-frame-hook|before-revert-hook|before-save-hook|beginning-of-buffer|beginning-of-defun|beginning-of-defun-function|beginning-of-line|bidi-display-reordering|bidi-paragraph-direction|bidi-string-mark-left-to-right|bindat-get-field|bindat-ip-to-string|bindat-length|bindat-pack|bindat-unpack|bitmap-spec-p|blink-cursor-alist|blink-matching-delay|blink-matching-open|blink-matching-paren|blink-matching-paren-distance|blink-paren-function|bobp|bolp|bool-vector-count-consecutive|bool-vector-count-population|bool-vector-exclusive-or|bool-vector-intersection|bool-vector-not|bool-vector-p|bool-vector-set-difference|bool-vector-subsetp|bool-vector-union|booleanp|boundp|buffer-access-fontified-property|buffer-access-fontify-functions|buffer-auto-save-file-format|buffer-auto-save-file-name|buffer-backed-up|buffer-base-buffer|buffer-chars-modified-tick|buffer-disable-undo|buffer-display-count|buffer-display-table|buffer-display-time|buffer-enable-undo|buffer-end|buffer-file-coding-system|buffer-file-format|buffer-file-name|buffer-file-number|buffer-file-truename|buffer-invisibility-spec|buffer-list|buffer-list-update-hook|buffer-live-p|buffer-local-value|buffer-local-variables|buffer-modified-p|buffer-modified-tick|buffer-name|buffer-name-history|buffer-narrowed-p|buffer-offer-save|buffer-quit-function|buffer-read-only|buffer-save-without-query|buffer-saved-size|buffer-size|buffer-stale-function|buffer-string|buffer-substring|buffer-substring-filters|buffer-substring-no-properties|buffer-swap-text|buffer-undo-list|bufferp|bury-buffer|button-activate|button-at|button-end|button-get|button-has-type-p|button-label|button-put|button-start|button-type|button-type-get|button-type-put|button-type-subtype-p|byte-boolean-vars|byte-code-function-p|byte-compile|byte-compile-dynamic|byte-compile-dynamic-docstrings|byte-compile-file|byte-recompile-directory|byte-to-position|byte-to-string|call-interactively|call-process|call-process-region|call-process-shell-command|called-interactively-p|cancel-change-group|cancel-debug-on-entry|cancel-timer|capitalize|capitalize-region|capitalize-word|case-fold-search|case-replace|case-table-p|category-docstring|category-set-mnemonics|category-table|category-table-p|ceiling|change-major-mode-after-body-hook|change-major-mode-hook|char-after|char-before|char-category-set|char-charset|char-code-property-description|char-displayable-p|char-equal|char-or-string-p|char-property-alias-alist|char-script-table|char-syntax|char-table-extra-slot|char-table-p|char-table-parent|char-table-range|char-table-subtype|char-to-string|char-width|char-width-table|characterp|charset-after|charset-list|charset-plist|charset-priority-list|charsetp|check-coding-system|check-coding-systems-region|checkdoc-minor-mode|cl|clear-abbrev-table|clear-image-cache|clear-string|clear-this-command-keys|clear-visited-file-modtime|clone-indirect-buffer|clrhash|coding-system-aliases|coding-system-change-eol-conversion|coding-system-change-text-conversion|coding-system-charset-list|coding-system-eol-type|coding-system-for-read|coding-system-for-write|coding-system-get|coding-system-list|coding-system-p|coding-system-priority-list|collapse-delayed-warnings|color-defined-p|color-gray-p|color-supported-p|color-values|combine-after-change-calls|combine-and-quote-strings|command-debug-status|command-error-function|command-execute|command-history|command-line|command-line-args|command-line-args-left|command-line-functions|command-line-processed|command-remapping|command-switch-alist|commandp|compare-buffer-substrings|compare-strings|compare-window-configurations|compile-defun|completing-read|completing-read-function|completion-at-point|completion-at-point-functions|completion-auto-help|completion-boundaries|completion-category-overrides|completion-extra-properties|completion-ignore-case|completion-ignored-extensions|completion-in-region|completion-regexp-list|completion-styles|completion-styles-alist|completion-table-case-fold|completion-table-dynamic|completion-table-in-turn|completion-table-merge|completion-table-subvert|completion-table-with-cache|completion-table-with-predicate|completion-table-with-quoting|completion-table-with-terminator|compute-motion|concat|cons-cells-consed|constrain-to-field|continue-process|controlling-tty-p|convert-standard-filename|coordinates-in-window-p|copy-abbrev-table|copy-category-table|copy-directory|copy-file|copy-hash-table|copy-keymap|copy-marker|copy-overlay|copy-region-as-kill|copy-sequence|copy-syntax-table|copysign|cos|count-lines|count-loop|count-screen-lines|count-words|create-file-buffer|create-fontset-from-fontset-spec|create-image|create-lockfiles|current-active-maps|current-bidi-paragraph-direction|current-buffer|current-case-table|current-column|current-fill-column|current-frame-configuration|current-global-map|current-idle-time|current-indentation|current-input-method|current-input-mode|current-justification|current-kill|current-left-margin|current-local-map|current-message|current-minor-mode-maps|current-prefix-arg|current-time|current-time-string|current-time-zone|current-window-configuration|current-word|cursor-in-echo-area|cursor-in-non-selected-windows|cursor-type|cust-print|custom-add-frequent-value|custom-initialize-delay|custom-known-themes|custom-reevaluate-setting|custom-set-faces|custom-set-variables|custom-theme-p|custom-theme-set-faces|custom-theme-set-variables|custom-unlispify-remove-prefixes|custom-variable-p|customize-package-emacs-version-alist|cygwin-convert-file-name-from-windows|cygwin-convert-file-name-to-windows|data-directory|date-leap-year-p|date-to-time|deactivate-mark|deactivate-mark-hook|debug|debug-ignored-errors|debug-on-entry|debug-on-error|debug-on-event|debug-on-message|debug-on-next-call|debug-on-quit|debug-on-signal|debugger|debugger-bury-or-kill|declare|declare-function|decode-char|decode-coding-inserted-region|decode-coding-region|decode-coding-string|decode-time|def-edebug-spec|defalias|default-boundp|default-directory|default-file-modes|default-frame-alist|default-input-method|default-justification|default-minibuffer-frame|default-process-coding-system|default-text-properties|default-value|define-abbrev|define-abbrev-table|define-alternatives|define-button-type|define-category|define-derived-mode|define-error|define-fringe-bitmap|define-generic-mode|define-globalized-minor-mode|define-hash-table-test|define-key|define-key-after|define-minor-mode|define-obsolete-face-alias|define-obsolete-function-alias|define-obsolete-variable-alias|define-package|define-prefix-command|defined-colors|defining-kbd-macro|defun-prompt-regexp|defvar-local|defvaralias|delay-mode-hooks|delayed-warnings-hook|delayed-warnings-list|delete|delete-and-extract-region|delete-auto-save-file-if-necessary|delete-auto-save-files|delete-backward-char|delete-blank-lines|delete-by-moving-to-trash|delete-char|delete-directory|delete-dups|delete-exited-processes|delete-field|delete-file|delete-frame|delete-frame-functions|delete-horizontal-space|delete-indentation|delete-minibuffer-contents|delete-old-versions|delete-other-windows|delete-overlay|delete-process|delete-region|delete-terminal|delete-terminal-functions|delete-to-left-margin|delete-trailing-whitespace|delete-window|delete-windows-on|delq|derived-mode-p|describe-bindings|describe-buffer-case-table|describe-categories|describe-current-display-table|describe-display-table|describe-mode|describe-prefix-bindings|describe-syntax|desktop-buffer-mode-handlers|desktop-save-buffer|destroy-fringe-bitmap|detect-coding-region|detect-coding-string|digit-argument|ding|dir-locals-class-alist|dir-locals-directory-cache|dir-locals-file|dir-locals-set-class-variables|dir-locals-set-directory-class|directory-file-name|directory-files|directory-files-and-attributes|dired-kept-versions|disable-command|disable-point-adjustment|disable-theme|disabled|disabled-command-function|disassemble|discard-input|display-backing-store|display-buffer|display-buffer-alist|display-buffer-at-bottom|display-buffer-base-action|display-buffer-below-selected|display-buffer-fallback-action|display-buffer-in-previous-window|display-buffer-no-window|display-buffer-overriding-action|display-buffer-pop-up-frame|display-buffer-pop-up-window|display-buffer-reuse-window|display-buffer-same-window|display-buffer-use-some-window|display-color-cells|display-color-p|display-completion-list|display-delayed-warnings|display-graphic-p|display-grayscale-p|display-images-p|display-message-or-buffer|display-mm-dimensions-alist|display-mm-height|display-mm-width|display-monitor-attributes-list|display-mouse-p|display-pixel-height|display-pixel-width|display-planes|display-popup-menus-p|display-save-under|display-screens|display-selections-p|display-supports-face-attributes-p|display-table-slot|display-visual-class|display-warning|dnd-protocol-alist|do-auto-save|doc-directory|documentation|documentation-property|dotimes-with-progress-reporter|double-click-fuzz|double-click-time|down-list|downcase|downcase-region|downcase-word|dump-emacs|dynamic-library-alist)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(easy-menu-define|easy-mmode-define-minor-mode|echo-area-clear-hook|echo-keystrokes|edebug|edebug-all-defs|edebug-all-forms|edebug-continue-kbd-macro|edebug-defun|edebug-display-freq-count|edebug-eval-macro-args|edebug-eval-top-level-form|edebug-global-break-condition|edebug-initial-mode|edebug-on-error|edebug-on-quit|edebug-print-circle|edebug-print-length|edebug-print-level|edebug-print-trace-after|edebug-print-trace-before|edebug-save-displayed-buffer-points|edebug-save-windows|edebug-set-global-break-condition|edebug-setup-hook|edebug-sit-for-seconds|edebug-temp-display-freq-count|edebug-test-coverage|edebug-trace|edebug-tracing|edebug-unwrap-results|edit-and-eval-command|electric-future-map|elt|emacs-build-time|emacs-init-time|emacs-lisp-docstring-fill-column|emacs-major-version|emacs-minor-version|emacs-pid|emacs-save-session-functions|emacs-session-restore|emacs-startup-hook|emacs-uptime|emacs-version|emulation-mode-map-alists|enable-command|enable-dir-local-variables|enable-local-eval|enable-local-variables|enable-multibyte-characters|enable-recursive-minibuffers|enable-theme|encode-char|encode-coding-region|encode-coding-string|encode-time|end-of-buffer|end-of-defun|end-of-defun-function|end-of-file|end-of-line|eobp|eolp|equal-including-properties|erase-buffer|error|error-conditions|error-message-string|esc-map|ESC-prefix|eval|eval-and-compile|eval-buffer|eval-current-buffer|eval-expression-debug-on-error|eval-expression-print-length|eval-expression-print-level|eval-minibuffer|eval-region|eval-when-compile|event-basic-type|event-click-count|event-convert-list|event-end|event-modifiers|event-start|eventp|ewoc-buffer|ewoc-collect|ewoc-create|ewoc-data|ewoc-delete|ewoc-enter-after|ewoc-enter-before|ewoc-enter-first|ewoc-enter-last|ewoc-filter|ewoc-get-hf|ewoc-goto-next|ewoc-goto-node|ewoc-goto-prev|ewoc-invalidate|ewoc-locate|ewoc-location|ewoc-map|ewoc-next|ewoc-nth|ewoc-prev|ewoc-refresh|ewoc-set-data|ewoc-set-hf|exec-directory|exec-path|exec-suffixes|executable-find|execute-extended-command|execute-kbd-macro|executing-kbd-macro|exit|exit-minibuffer|exit-recursive-edit|exp|expand-abbrev|expand-file-name|expt|extended-command-history|extra-keyboard-modifiers|face-all-attributes|face-attribute|face-attribute-relative-p|face-background|face-bold-p|face-differs-from-default-p|face-documentation|face-equal|face-font|face-font-family-alternatives|face-font-registry-alternatives|face-font-rescale-alist|face-font-selection-order|face-foreground|face-id|face-inverse-video-p|face-italic-p|face-list|face-name-history|face-remap-add-relative|face-remap-remove-relative|face-remap-reset-base|face-remap-set-base|face-remapping-alist|face-spec-set|face-stipple|face-underline-p|facemenu-keymap|facep|fboundp|fceiling|feature-unload-function|featurep|features|fetch-bytecode|ffloor|field-beginning|field-end|field-string|field-string-no-properties|file-accessible-directory-p|file-acl|file-already-exists|file-attributes|file-chase-links|file-coding-system-alist|file-directory-p|file-equal-p|file-error|file-executable-p|file-exists-p|file-expand-wildcards|file-extended-attributes|file-in-directory-p|file-local-copy|file-local-variables-alist|file-locked|file-locked-p|file-modes|file-modes-symbolic-to-number|file-name-absolute-p|file-name-all-completions|file-name-as-directory|file-name-base|file-name-coding-system|file-name-completion|file-name-directory|file-name-extension|file-name-handler-alist|file-name-history|file-name-nondirectory|file-name-sans-extension|file-name-sans-versions|file-newer-than-file-p|file-newest-backup|file-nlinks|file-notify-add-watch|file-notify-rm-watch|file-ownership-preserved-p|file-precious-flag|file-readable-p|file-regular-p|file-relative-name|file-remote-p|file-selinux-context|file-supersession|file-symlink-p|file-truename|file-writable-p|fill-column|fill-context-prefix|fill-forward-paragraph-function|fill-individual-paragraphs|fill-individual-varying-indent|fill-nobreak-predicate|fill-paragraph|fill-paragraph-function|fill-prefix|fill-region|fill-region-as-paragraph|fillarray|filter-buffer-substring|filter-buffer-substring-function|filter-buffer-substring-functions|find-auto-coding|find-backup-file-name|find-buffer-visiting|find-charset-region|find-charset-string|find-coding-systems-for-charsets|find-coding-systems-region|find-coding-systems-string|find-file|find-file-hook|find-file-literally|find-file-name-handler|find-file-noselect|find-file-not-found-functions|find-file-other-window|find-file-read-only|find-file-wildcards|find-font|find-image|find-operation-coding-system|first-change-hook|fit-frame-to-buffer|fit-frame-to-buffer-margins|fit-frame-to-buffer-sizes|fit-window-to-buffer|fit-window-to-buffer-horizontally|fixup-whitespace|float|float-e|float-output-format|float-pi|float-time|floatp|floats-consed|floor|fmakunbound|focus-follows-mouse|focus-in-hook|focus-out-hook|following-char|font-at|font-face-attributes|font-family-list|font-get|font-lock-add-keywords|font-lock-beginning-of-syntax-function|font-lock-builtin-face|font-lock-comment-delimiter-face|font-lock-comment-face|font-lock-constant-face|font-lock-defaults|font-lock-doc-face|font-lock-extend-after-change-region-function|font-lock-extra-managed-props|font-lock-fontify-buffer-function|font-lock-fontify-region-function|font-lock-function-name-face|font-lock-keyword-face|font-lock-keywords|font-lock-keywords-case-fold-search|font-lock-keywords-only|font-lock-mark-block-function|font-lock-multiline|font-lock-negation-char-face|font-lock-preprocessor-face|font-lock-remove-keywords|font-lock-string-face|font-lock-syntactic-face-function|font-lock-syntax-table|font-lock-type-face|font-lock-unfontify-buffer-function|font-lock-unfontify-region-function|font-lock-variable-name-face|font-lock-warning-face|font-put|font-spec|font-xlfd-name|fontification-functions|fontp|for|force-mode-line-update|force-window-update|format|format-alist|format-find-file|format-insert-file|format-mode-line|format-network-address|format-seconds|format-time-string|format-write-file|forward-button|forward-char|forward-comment|forward-line|forward-list|forward-sexp|forward-to-indentation|forward-word|frame-alpha-lower-limit|frame-auto-hide-function|frame-char-height|frame-char-width|frame-current-scroll-bars|frame-first-window|frame-height|frame-inherited-parameters|frame-list|frame-live-p|frame-monitor-attributes|frame-parameter|frame-parameters|frame-pixel-height|frame-pixel-width|frame-pointer-visible-p|frame-resize-pixelwise|frame-root-window|frame-selected-window|frame-terminal|frame-title-format|frame-visible-p|frame-width|framep|frexp|fringe-bitmaps-at-pos|fringe-cursor-alist|fringe-indicator-alist|fringes-outside-margins|fround|fset|ftp-login|ftruncate|function-get|functionp|fundamental-mode|fundamental-mode-abbrev-table|gap-position|gap-size|garbage-collect|garbage-collection-messages|gc-cons-percentage|gc-cons-threshold|gc-elapsed|gcs-done|generate-autoload-cookie|generate-new-buffer|generate-new-buffer-name|generated-autoload-file|get|get-buffer|get-buffer-create|get-buffer-process|get-buffer-window|get-buffer-window-list|get-byte|get-char-code-property|get-char-property|get-char-property-and-overlay|get-charset-property|get-device-terminal|get-file-buffer|get-internal-run-time|get-largest-window|get-load-suffixes|get-lru-window|get-pos-property|get-process|get-register|get-text-property|get-unused-category|get-window-with-predicate|getenv|gethash|global-abbrev-table|global-buffers-menu-map|global-disable-point-adjustment|global-key-binding|global-map|global-mode-string|global-set-key|global-unset-key|glyph-char|glyph-face|glyph-table|glyphless-char-display|glyphless-char-display-control|goto-char|goto-map|group-gid|group-real-gid|gv-define-expander|gv-define-setter|gv-define-simple-setter|gv-letplace|hack-dir-local-variables|hack-dir-local-variables-non-file-buffer|hack-local-variables|hack-local-variables-hook|handle-shift-selection|handle-switch-frame|hash-table-count|hash-table-p|hash-table-rehash-size|hash-table-rehash-threshold|hash-table-size|hash-table-test|hash-table-weakness|header-line-format|help-buffer|help-char|help-command|help-event-list|help-form|help-map|help-setup-xref|help-window-select|Helper-describe-bindings|Helper-help|Helper-help-map|history-add-new-input|history-delete-duplicates|history-length)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(icon-title-format|iconify-frame|identity|ignore|ignore-errors|ignore-window-parameters|ignored-local-variables|image-animate|image-animate-timer|image-cache-eviction-delay|image-current-frame|image-default-frame-delay|image-flush|image-format-suffixes|image-load-path|image-load-path-for-library|image-mask-p|image-minimum-frame-delay|image-multi-frame-p|image-show-frame|image-size|image-type-available-p|image-types|imagemagick-enabled-types|imagemagick-types|imagemagick-types-inhibit|imenu-add-to-menubar|imenu-case-fold-search|imenu-create-index-function|imenu-extract-index-name-function|imenu-generic-expression|imenu-prev-index-position-function|imenu-syntax-alist|inc|indent-according-to-mode|indent-code-rigidly|indent-for-tab-command|indent-line-function|indent-region|indent-region-function|indent-relative|indent-relative-maybe|indent-rigidly|indent-tabs-mode|indent-to|indent-to-left-margin|indicate-buffer-boundaries|indicate-empty-lines|indirect-function|indirect-variable|inhibit-default-init|inhibit-eol-conversion|inhibit-field-text-motion|inhibit-file-name-handlers|inhibit-file-name-operation|inhibit-iso-escape-detection|inhibit-local-variables-regexps|inhibit-modification-hooks|inhibit-null-byte-detection|inhibit-point-motion-hooks|inhibit-quit|inhibit-read-only|inhibit-splash-screen|inhibit-startup-echo-area-message|inhibit-startup-message|inhibit-startup-screen|inhibit-x-resources|init-file-user|initial-buffer-choice|initial-environment|initial-frame-alist|initial-major-mode|initial-scratch-message|initial-window-system|input-decode-map|input-method-alist|input-method-function|input-pending-p|insert|insert-abbrev-table-description|insert-and-inherit|insert-before-markers|insert-before-markers-and-inherit|insert-buffer|insert-buffer-substring|insert-buffer-substring-as-yank|insert-buffer-substring-no-properties|insert-button|insert-char|insert-default-directory|insert-directory|insert-directory-program|insert-file-contents|insert-file-contents-literally|insert-for-yank|insert-image|insert-register|insert-sliced-image|insert-text-button|installation-directory|integer-or-marker-p|integerp|interactive-form|intern|intern-soft|interpreter-mode-alist|interprogram-cut-function|interprogram-paste-function|interrupt-process|intervals-consed|invalid-function|invalid-read-syntax|invalid-regexp|invert-face|invisible-p|invocation-directory|invocation-name|isnan|jit-lock-register|jit-lock-unregister|just-one-space|justify-current-line|kbd|kbd-macro-termination-hook|kept-new-versions|kept-old-versions|key-binding|key-description|key-translation-map|keyboard-coding-system|keyboard-quit|keyboard-translate|keyboard-translate-table|keymap-parent|keymap-prompt|keymapp|keywordp|kill-all-local-variables|kill-append|kill-buffer|kill-buffer-hook|kill-buffer-query-functions|kill-emacs|kill-emacs-hook|kill-emacs-query-functions|kill-local-variable|kill-new|kill-process|kill-read-only-ok|kill-region|kill-ring|kill-ring-max|kill-ring-yank-pointer|kmacro-keymap|last-abbrev|last-abbrev-location|last-abbrev-text|last-buffer|last-coding-system-used|last-command|last-command-event|last-event-frame|last-input-event|last-kbd-macro|last-nonmenu-event|last-prefix-arg|last-repeatable-command|lax-plist-get|lax-plist-put|lazy-completion-table|ldexp|left-fringe-width|left-margin|left-margin-width|lexical-binding|libxml-parse-html-region|libxml-parse-xml-region|line-beginning-position|line-end-position|line-move-ignore-invisible|line-number-at-pos|line-prefix|line-spacing|lisp-mode-abbrev-table|list-buffers-directory|list-charset-chars|list-fonts|list-load-path-shadows|list-processes|list-system-processes|listify-key-sequence|ln|load-average|load-file|load-file-name|load-file-rep-suffixes|load-history|load-in-progress|load-library|load-path|load-prefer-newer|load-read-function|load-suffixes|load-theme|local-abbrev-table|local-function-key-map|local-key-binding|local-set-key|local-unset-key|local-variable-if-set-p|local-variable-p|locale-coding-system|locale-info|locate-file|locate-library|locate-user-emacs-file|lock-buffer|log|logand|logb|logior|lognot|logxor|looking-at|looking-at-p|looking-back|lookup-key|lower-frame|lsh|lwarn|macroexpand|macroexpand-all|macrop|magic-fallback-mode-alist|magic-mode-alist|mail-host-address|major-mode|make-abbrev-table|make-auto-save-file-name|make-backup-file-name|make-backup-file-name-function|make-backup-files|make-bool-vector|make-button|make-byte-code|make-category-set|make-category-table|make-char-table|make-composed-keymap|make-directory|make-display-table|make-frame|make-frame-invisible|make-frame-on-display|make-frame-visible|make-glyph-code|make-hash-table|make-help-screen|make-indirect-buffer|make-keymap|make-local-variable|make-marker|make-network-process|make-obsolete|make-obsolete-variable|make-overlay|make-progress-reporter|make-ring|make-serial-process|make-sparse-keymap|make-string|make-symbol|make-symbolic-link|make-syntax-table|make-temp-file|make-temp-name|make-text-button|make-translation-table|make-translation-table-from-alist|make-translation-table-from-vector|make-variable-buffer-local|make-vector|makehash|makunbound|map-char-table|map-charset-chars|map-keymap|map-y-or-n-p|mapatoms|mapconcat|maphash|mark|mark-active|mark-even-if-inactive|mark-marker|mark-ring|mark-ring-max|marker-buffer|marker-insertion-type|marker-position|markerp|match-beginning|match-data|match-end|match-string|match-string-no-properties|match-substitute-replacement|max-char|max-image-size|max-lisp-eval-depth|max-mini-window-height|max-specpdl-size|maximize-window|md5|member-ignore-case|memory-full|memory-limit|memory-use-counts|memq|memql|menu-bar-file-menu|menu-bar-final-items|menu-bar-help-menu|menu-bar-options-menu|menu-bar-tools-menu|menu-bar-update-hook|menu-item|menu-prompt-more-char|merge-face-attribute|message|message-box|message-log-max|message-or-box|message-truncate-lines|messages-buffer|meta-prefix-char|minibuffer-allow-text-properties|minibuffer-auto-raise|minibuffer-complete|minibuffer-complete-and-exit|minibuffer-complete-word|minibuffer-completion-confirm|minibuffer-completion-help|minibuffer-completion-predicate|minibuffer-completion-table|minibuffer-confirm-exit-commands|minibuffer-contents|minibuffer-contents-no-properties|minibuffer-depth|minibuffer-exit-hook|minibuffer-frame-alist|minibuffer-help-form|minibuffer-history|minibuffer-inactive-mode|minibuffer-local-completion-map|minibuffer-local-filename-completion-map|minibuffer-local-map|minibuffer-local-must-match-map|minibuffer-local-ns-map|minibuffer-local-shell-command-map|minibuffer-message|minibuffer-message-timeout|minibuffer-prompt|minibuffer-prompt-end|minibuffer-prompt-width|minibuffer-scroll-window|minibuffer-selected-window|minibuffer-setup-hook|minibuffer-window|minibuffer-window-active-p|minibufferp|minimize-window|minor-mode-alist|minor-mode-key-binding|minor-mode-list|minor-mode-map-alist|minor-mode-overriding-map-alist|misc-objects-consed|mkdir|mod|mode-line-buffer-identification|mode-line-client|mode-line-coding-system-map|mode-line-column-line-number-mode-map|mode-line-format|mode-line-frame-identification|mode-line-input-method-map|mode-line-modes|mode-line-modified|mode-line-mule-info|mode-line-position|mode-line-process|mode-line-remote|mode-name|mode-specific-map|modify-all-frames-parameters|modify-category-entry|modify-frame-parameters|modify-syntax-entry|momentary-string-display|most-negative-fixnum|most-positive-fixnum|mouse-1-click-follows-link|mouse-appearance-menu-map|mouse-leave-buffer-hook|mouse-movement-p|mouse-on-link-p|mouse-pixel-position|mouse-position|mouse-position-function|mouse-wheel-down-event|mouse-wheel-up-event|move-marker|move-overlay|move-point-visually|move-to-column|move-to-left-margin|move-to-window-line|movemail|mule-keymap|multi-query-replace-map|multibyte-char-to-unibyte|multibyte-string-p|multibyte-syntax-as-symbol|multiple-frames|narrow-map|narrow-to-page|narrow-to-region|natnump|negative-argument|network-coding-system-alist|network-interface-info|network-interface-list|newline|newline-and-indent|next-button|next-char-property-change|next-complete-history-element|next-frame|next-history-element|next-matching-history-element|next-overlay-change|next-property-change|next-screen-context-lines|next-single-char-property-change|next-single-property-change|next-window|nlistp|no-byte-compile|no-catch|no-redraw-on-reenter|noninteractive|noreturn|normal-auto-fill-function|normal-backup-enable-predicate|normal-mode|not-modified|notifications-close-notification|notifications-get-capabilities|notifications-get-server-information|notifications-notify|num-input-keys|num-nonmacro-input-events|number-or-marker-p|number-sequence|number-to-string|numberp|obarray|one-window-p|only-global-abbrevs|open-dribble-file|open-network-stream|open-paren-in-column-0-is-defun-start|open-termscript|other-buffer|other-window|other-window-scroll-buffer|overflow-newline-into-fringe|overlay-arrow-position|overlay-arrow-string|overlay-arrow-variable-list|overlay-buffer|overlay-end|overlay-get|overlay-properties|overlay-put|overlay-recenter|overlay-start|overlayp|overlays-at|overlays-in|overriding-local-map|overriding-local-map-menu-flag|overriding-terminal-local-map|overwrite-mode|package-archive-upload-base|package-archives|package-initialize|package-upload-buffer|package-upload-file|page-delimiter|paragraph-separate|paragraph-start|parse-colon-path|parse-partial-sexp|parse-sexp-ignore-comments|parse-sexp-lookup-properties|path-separator|perform-replace|play-sound|play-sound-file|play-sound-functions|plist-get|plist-member|plist-put|point|point-marker|point-max|point-max-marker|point-min|point-min-marker|pop-mark|pop-to-buffer|pop-up-frame-alist|pop-up-frame-function|pop-up-frames|pop-up-windows|pos-visible-in-window-p|position-bytes|posix-looking-at|posix-search-backward|posix-search-forward|posix-string-match|posn-actual-col-row|posn-area|posn-at-point|posn-at-x-y|posn-col-row|posn-image|posn-object|posn-object-width-height|posn-object-x-y|posn-point|posn-string|posn-timestamp|posn-window|posn-x-y|posnp|post-command-hook|post-gc-hook|post-self-insert-hook|pp|pre-command-hook|pre-redisplay-function|preceding-char|prefix-arg|prefix-help-command|prefix-numeric-value|preloaded-file-list|prepare-change-group|previous-button|previous-char-property-change|previous-complete-history-element|previous-frame|previous-history-element|previous-matching-history-element|previous-overlay-change|previous-property-change|previous-single-char-property-change|previous-single-property-change|previous-window|primitive-undo|prin1-to-string|print-circle|print-continuous-numbering|print-escape-multibyte|print-escape-newlines|print-escape-nonascii|print-gensym|print-length|print-level|print-number-table|print-quoted|printable-chars|process-adaptive-read-buffering|process-attributes|process-buffer|process-coding-system|process-coding-system-alist|process-command|process-connection-type|process-contact|process-datagram-address|process-environment|process-exit-status|process-file|process-file-shell-command|process-file-side-effects|process-filter|process-get|process-id|process-kill-buffer-query-function|process-lines|process-list|process-live-p|process-mark|process-name|process-plist|process-put|process-query-on-exit-flag|process-running-child-p|process-send-eof|process-send-region|process-send-string|process-sentinel|process-status|process-tty-name|process-type|processp|prog-mode|prog-mode-hook|progress-reporter-done|progress-reporter-force-update|progress-reporter-update|propertize|provide|provide-theme|pure-bytes-used|purecopy|purify-flag|push-button|push-mark|put|put-char-code-property|put-charset-property|put-image|put-text-property|puthash|query-replace-history|query-replace-map|quietly-read-abbrev-file|quit-flag|quit-process|quit-restore-window|quit-window|raise-frame|random|rassq|rassq-delete-all|re-builder|re-search-backward|re-search-forward|read|read-buffer|read-buffer-completion-ignore-case|read-buffer-function|read-char|read-char-choice|read-char-exclusive|read-circle|read-coding-system|read-color|read-command|read-directory-name|read-event|read-expression-history|read-file-modes|read-file-name|read-file-name-completion-ignore-case|read-file-name-function|read-from-minibuffer|read-from-string|read-input-method-name|read-kbd-macro|read-key|read-key-sequence|read-key-sequence-vector|read-minibuffer|read-no-blanks-input|read-non-nil-coding-system|read-only-mode|read-passwd|read-quoted-char|read-regexp|read-regexp-defaults-function|read-shell-command|read-string|read-variable|real-last-command|recent-auto-save-p|recent-keys|recenter|recenter-positions|recenter-redisplay|recenter-top-bottom|recursion-depth|recursive-edit|redirect-frame-focus|redisplay|redraw-display|redraw-frame|regexp-history|regexp-opt|regexp-opt-charset|regexp-opt-depth|regexp-quote|region-beginning|region-end|register-alist|register-read-with-preview|reindent-then-newline-and-indent|remhash|remote-file-name-inhibit-cache|remove|remove-from-invisibility-spec|remove-function|remove-hook|remove-images|remove-list-of-text-properties|remove-overlays|remove-text-properties|remq|rename-auto-save-file|rename-buffer|rename-file|replace-buffer-in-windows|replace-match|replace-re-search-function|replace-regexp-in-string|replace-search-function|require|require-final-newline|restore-buffer-modified-p|resume-tty|resume-tty-functions|revert-buffer|revert-buffer-function|revert-buffer-in-progress-p|revert-buffer-insert-file-contents-function|revert-without-query|right-fringe-width|right-margin-width|ring-bell-function|ring-copy|ring-elements|ring-empty-p|ring-insert|ring-insert-at-beginning|ring-length|ring-p|ring-ref|ring-remove|ring-size|risky-local-variable-p|rm|round|run-at-time|run-hook-with-args|run-hook-with-args-until-failure|run-hook-with-args-until-success|run-hooks|run-mode-hooks|run-with-idle-timer)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(safe-local-eval-forms|safe-local-variable-p|safe-local-variable-values|same-window-buffer-names|same-window-p|same-window-regexps|save-abbrevs|save-buffer|save-buffer-coding-system|save-current-buffer|save-excursion|save-match-data|save-restriction|save-selected-window|save-some-buffers|save-window-excursion|scalable-fonts-allowed|scan-lists|scan-sexps|scroll-bar-event-ratio|scroll-bar-mode|scroll-bar-scale|scroll-bar-width|scroll-conservatively|scroll-down|scroll-down-aggressively|scroll-down-command|scroll-error-top-bottom|scroll-left|scroll-margin|scroll-other-window|scroll-preserve-screen-position|scroll-right|scroll-step|scroll-up|scroll-up-aggressively|scroll-up-command|search-backward|search-failed|search-forward|search-map|search-spaces-regexp|seconds-to-time|secure-hash|select-frame|select-frame-set-input-focus|select-safe-coding-system|select-safe-coding-system-accept-default-p|select-window|selected-frame|selected-window|selection-coding-system|selective-display|selective-display-ellipses|self-insert-and-exit|self-insert-command|send-string-to-terminal|sentence-end|sentence-end-double-space|sentence-end-without-period|sentence-end-without-space|sequencep|serial-process-configure|serial-term|set-advertised-calling-convention|set-auto-coding|set-auto-mode|set-buffer|set-buffer-auto-saved|set-buffer-major-mode|set-buffer-modified-p|set-buffer-multibyte|set-case-syntax|set-case-syntax-delims|set-case-syntax-pair|set-case-table|set-category-table|set-char-table-extra-slot|set-char-table-parent|set-char-table-range|set-charset-priority|set-coding-system-priority|set-default|set-default-file-modes|set-display-table-slot|set-face-attribute|set-face-background|set-face-bold|set-face-font|set-face-foreground|set-face-inverse-video|set-face-italic|set-face-stipple|set-face-underline|set-file-acl|set-file-extended-attributes|set-file-modes|set-file-selinux-context|set-file-times|set-fontset-font|set-frame-configuration|set-frame-height|set-frame-parameter|set-frame-position|set-frame-selected-window|set-frame-size|set-frame-width|set-fringe-bitmap-face|set-input-method|set-input-mode|set-keyboard-coding-system|set-keymap-parent|set-left-margin|set-mark|set-marker|set-marker-insertion-type|set-match-data|set-minibuffer-window|set-mouse-pixel-position|set-mouse-position|set-network-process-option|set-process-buffer|set-process-coding-system|set-process-datagram-address|set-process-filter|set-process-plist|set-process-query-on-exit-flag|set-process-sentinel|set-register|set-right-margin|set-standard-case-table|set-syntax-table|set-terminal-coding-system|set-terminal-parameter|set-text-properties|set-transient-map|set-visited-file-modtime|set-visited-file-name|set-window-buffer|set-window-combination-limit|set-window-configuration|set-window-dedicated-p|set-window-display-table|set-window-fringes|set-window-hscroll|set-window-margins|set-window-next-buffers|set-window-parameter|set-window-point|set-window-prev-buffers|set-window-scroll-bars|set-window-start|set-window-vscroll|setenv|setplist|setq-default|setq-local|shell-command-history|shell-command-to-string|shell-quote-argument|show-help-function|shr-insert-document|shrink-window-if-larger-than-buffer|signal|signal-process|sin|single-key-description|sit-for|site-run-file|skip-chars-backward|skip-chars-forward|skip-syntax-backward|skip-syntax-forward|sleep-for|small-temporary-file-directory|smie-bnf->prec2|smie-close-block|smie-config|smie-config-guess|smie-config-local|smie-config-save|smie-config-set-indent|smie-config-show-indent|smie-down-list|smie-merge-prec2s|smie-prec2->grammar|smie-precs->prec2|smie-rule-bolp|smie-rule-hanging-p|smie-rule-next-p|smie-rule-parent|smie-rule-parent-p|smie-rule-prev-p|smie-rule-separator|smie-rule-sibling-p|smie-setup|Snarf-documentation|sort|sort-columns|sort-fields|sort-fold-case|sort-lines|sort-numeric-base|sort-numeric-fields|sort-pages|sort-paragraphs|sort-regexp-fields|sort-subr|special-event-map|special-form-p|special-mode|special-variable-p|split-height-threshold|split-string|split-string-and-unquote|split-string-default-separators|split-width-threshold|split-window|split-window-below|split-window-keep-point|split-window-preferred-function|split-window-right|split-window-sensibly|sqrt|standard-case-table|standard-category-table|standard-display-table|standard-input|standard-output|standard-syntax-table|standard-translation-table-for-decode|standard-translation-table-for-encode|start-file-process|start-file-process-shell-command|start-process|start-process-shell-command|stop-process|store-match-data|store-substring|string|string-as-multibyte|string-as-unibyte|string-bytes|string-chars-consed|string-equal|string-lessp|string-match|string-match-p|string-or-null-p|string-prefix-p|string-suffix-p|string-to-char|string-to-int|string-to-multibyte|string-to-number|string-to-syntax|string-to-unibyte|string-width|string<|string=|stringp|strings-consed|subr-arity|subrp|subst-char-in-region|substitute-command-keys|substitute-in-file-name|substitute-key-definition|substring|substring-no-properties|suppress-keymap|suspend-emacs|suspend-frame|suspend-hook|suspend-resume-hook|suspend-tty|suspend-tty-functions|switch-to-buffer|switch-to-buffer-other-frame|switch-to-buffer-other-window|switch-to-buffer-preserve-window-point|switch-to-next-buffer|switch-to-prev-buffer|switch-to-visible-buffer|sxhash|symbol-file|symbol-function|symbol-name|symbol-plist|symbol-value|symbolp|symbols-consed|syntax-after|syntax-begin-function|syntax-class|syntax-ppss|syntax-ppss-flush-cache|syntax-ppss-toplevel-pos|syntax-propertize-extend-region-functions|syntax-propertize-function|syntax-table|syntax-table-p|system-configuration|system-groups|system-key-alist|system-messages-locale|system-name|system-time-locale|system-type|system-users|tab-always-indent|tab-stop-list|tab-to-tab-stop|tab-width|tabulated-list-entries|tabulated-list-format|tabulated-list-init-header|tabulated-list-mode|tabulated-list-print|tabulated-list-printer|tabulated-list-revert-hook|tabulated-list-sort-key|tan|temacs|temp-buffer-setup-hook|temp-buffer-show-function|temp-buffer-show-hook|temp-buffer-window-setup-hook|temp-buffer-window-show-hook|temporary-file-directory|term-file-prefix|terminal-coding-system|terminal-list|terminal-live-p|terminal-name|terminal-parameter|terminal-parameters|terpri|test-completion|testcover-mark-all|testcover-next-mark|testcover-start|text-char-description|text-mode|text-mode-abbrev-table|text-properties-at|text-property-any|text-property-default-nonsticky|text-property-not-all|thing-at-point|this-command|this-command-keys|this-command-keys-shift-translated|this-command-keys-vector|this-original-command|three-step-help|time-add|time-less-p|time-subtract|time-to-day-in-year|time-to-days|timer-max-repeats|toggle-enable-multibyte-characters|tool-bar-add-item|tool-bar-add-item-from-menu|tool-bar-border|tool-bar-button-margin|tool-bar-button-relief|tool-bar-local-item-from-menu|tool-bar-map|top-level|tq-close|tq-create|tq-enqueue|track-mouse|transient-mark-mode|translate-region|translation-table-for-input|transpose-regions|truncate|truncate-lines|truncate-partial-width-windows|truncate-string-to-width|try-completion|tty-color-alist|tty-color-approximate|tty-color-clear|tty-color-define|tty-color-translate|tty-erase-char|tty-setup-hook|tty-top-frame|type-of|unbury-buffer|undefined|underline-minimum-offset|undo-ask-before-discard|undo-boundary|undo-in-progress|undo-limit|undo-outer-limit|undo-strong-limit|unhandled-file-name-directory|unibyte-char-to-multibyte|unibyte-string|unicode-category-table|unintern|universal-argument|universal-argument-map|unload-feature|unload-feature-special-hooks|unlock-buffer|unread-command-events|unsafep|up-list|upcase|upcase-initials|upcase-region|upcase-word|update-directory-autoloads|update-file-autoloads|use-empty-active-region|use-global-map|use-hard-newlines|use-local-map|use-region-p|user-emacs-directory|user-error|user-full-name|user-init-file|user-login-name|user-mail-address|user-real-login-name|user-real-uid|user-uid|values|vc-mode|vc-prefix-map|vconcat|vector|vector-cells-consed|vectorp|verify-visited-file-modtime|version-control|vertical-motion|vertical-scroll-bar|view-register|visible-bell|visible-frame-list|visited-file-modtime|void-function|void-text-area-pointer|waiting-for-user-input-p|walk-windows|warn|warning-fill-prefix|warning-levels|warning-minimum-level|warning-minimum-log-level|warning-prefix-function|warning-series|warning-suppress-log-types|warning-suppress-types|warning-type-format|where-is-internal|while-no-input|wholenump|widen|window-absolute-pixel-edges|window-at|window-body-height|window-body-size|window-body-width|window-bottom-divider-width|window-buffer|window-child|window-combination-limit|window-combination-resize|window-combined-p|window-configuration-change-hook|window-configuration-frame|window-configuration-p|window-current-scroll-bars|window-dedicated-p|window-display-table|window-edges|window-end|window-frame|window-fringes|window-full-height-p|window-full-width-p|window-header-line-height|window-hscroll|window-in-direction|window-inside-absolute-pixel-edges|window-inside-edges|window-inside-pixel-edges|window-left-child|window-left-column|window-line-height|window-list|window-live-p|window-margins|window-min-height|window-min-size|window-min-width|window-minibuffer-p|window-mode-line-height|window-next-buffers|window-next-sibling|window-parameter|window-parameters|window-parent|window-persistent-parameters|window-pixel-edges|window-pixel-height|window-pixel-left|window-pixel-top|window-pixel-width|window-point|window-point-insertion-type|window-prev-buffers|window-prev-sibling|window-resizable|window-resize|window-resize-pixelwise|window-right-divider-width|window-scroll-bar-width|window-scroll-bars|window-scroll-functions|window-setup-hook|window-size-change-functions|window-size-fixed|window-start|window-state-get|window-state-put|window-system|window-system-initialization-alist|window-text-change-functions|window-text-pixel-size|window-top-child|window-top-line|window-total-height|window-total-size|window-total-width|window-tree|window-valid-p|window-vscroll|windowp|with-case-table|with-coding-priority|with-current-buffer|with-current-buffer-window|with-demoted-errors|with-eval-after-load|with-help-window|with-local-quit|with-no-warnings|with-output-to-string|with-output-to-temp-buffer|with-selected-window|with-syntax-table|with-temp-buffer|with-temp-buffer-window|with-temp-file|with-temp-message|with-timeout|word-search-backward|word-search-backward-lax|word-search-forward|word-search-forward-lax|word-search-regexp|words-include-escapes|wrap-prefix|write-abbrev-file|write-char|write-contents-functions|write-file|write-file-functions|write-region|write-region-annotate-functions|write-region-post-annotation-function|wrong-number-of-arguments|wrong-type-argument|x-alt-keysym|x-alternatives-map|x-bitmap-file-path|x-close-connection|x-color-defined-p|x-color-values|x-defined-colors|x-display-color-p|x-display-list|x-dnd-known-types|x-dnd-test-function|x-dnd-types-alist|x-family-fonts|x-get-resource|x-get-selection|x-hyper-keysym|x-list-fonts|x-meta-keysym|x-open-connection|x-parse-geometry|x-pointer-shape|x-popup-dialog|x-popup-menu|x-resource-class|x-resource-name|x-sensitive-text-pointer-shape|x-server-vendor|x-server-version|x-set-selection|x-setup-function-keys|x-super-keysym|y-or-n-p|y-or-n-p-with-timeout|yank|yank-excluded-properties|yank-handled-properties|yank-pop|yank-undo-function|yes-or-no-p|zerop|zlib-available-p|zlib-decompress-region)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:mocha--other-js2-imenu-function|mocha-command|mocha-debug-port|mocha-debuggers|mocha-debugger|mocha-environment-variables|mocha-imenu-functions|mocha-options|mocha-project-test-directory|mocha-reporter|mocha-test-definition-nodes|mocha-which-node|node-error-regexp-alist|node-error-regexp)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.variable.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:define-modify-macro|define-setf-method|defsetf|eval-when-compile|flet|labels|lexical-let\\\\\\\\*?|cl-(?:acons|adjoin|assert|assoc|assoc-if|assoc-if-not|block|caddr|callf|callf2|case|ceiling|check-type|coerce|compiler-macroexpand|concatenate|copy-list|count|count-if|count-if-not|decf|declaim|declare|define-compiler-macro|defmacro|defstruct|defsubst|deftype|defun|delete|delete-duplicates|delete-if|delete-if-not|destructuring-bind|do\\\\\\\\*?|do-all-symbols|do-symbols|dolist|dotimes|ecase|endp|equalp|etypecase|eval-when|evenp|every|fill|find|find-if|find-if-not|first|flet|float-limits|floor|function|gcd|gensym|gentemp|getf?|incf|intersection|isqrt|labels|lcm|ldiff|letf\\\\\\\\*?|list\\\\\\\\*|list-length|load-time-value|locally|loop|macrolet|make-random-state|map|mapc|mapcan|mapcar|mapcon|mapl|maplist|member|member-if|member-if-not|merge|minusp|mismatch|mod|multiple-value-bind|multiple-value-setq|nintersection|notany|notevery|nset-difference|nset-exclusive-or|nsublis|nsubst|nsubst-if|nsubst-if-not|nsubstitute|nsubstitute-if|nsubstitute-if-not|nunion|oddp|pairlis|plusp|position|position-if|position-if-not|prettyexpand|proclaim|progv|psetf|psetq|pushnew|random|random-state-p|rassoc|rassoc-if|rassoc-if-not|reduce|remf?|remove|remove-duplicates|remove-if|remove-if-not|remprop|replace|rest|return|return-from|rotatef|round|search|set-difference|set-exclusive-or|shiftf|some|sort|stable-sort|sublis|subseq|subsetp|subst|subst-if|subst-if-not|substitute|substitute-if|substitute-if-not|symbol-macrolet|tagbody|tailp|the|tree-equal|truncate|typecase|typep|union))(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.cl-lib.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:\\\\\\\\*table--cell-backward-kill-paragraph|\\\\\\\\*table--cell-backward-kill-sentence|\\\\\\\\*table--cell-backward-kill-sexp|\\\\\\\\*table--cell-backward-kill-word|\\\\\\\\*table--cell-backward-paragraph|\\\\\\\\*table--cell-backward-sentence|\\\\\\\\*table--cell-backward-word|\\\\\\\\*table--cell-beginning-of-buffer|\\\\\\\\*table--cell-beginning-of-line|\\\\\\\\*table--cell-center-line|\\\\\\\\*table--cell-center-paragraph|\\\\\\\\*table--cell-center-region|\\\\\\\\*table--cell-clipboard-yank|\\\\\\\\*table--cell-copy-region-as-kill|\\\\\\\\*table--cell-dabbrev-completion|\\\\\\\\*table--cell-dabbrev-expand|\\\\\\\\*table--cell-delete-backward-char|\\\\\\\\*table--cell-delete-char|\\\\\\\\*table--cell-delete-region|\\\\\\\\*table--cell-describe-bindings|\\\\\\\\*table--cell-describe-mode|\\\\\\\\*table--cell-end-of-buffer|\\\\\\\\*table--cell-end-of-line|\\\\\\\\*table--cell-fill-paragraph|\\\\\\\\*table--cell-forward-paragraph|\\\\\\\\*table--cell-forward-sentence|\\\\\\\\*table--cell-forward-word|\\\\\\\\*table--cell-insert|\\\\\\\\*table--cell-kill-line|\\\\\\\\*table--cell-kill-paragraph|\\\\\\\\*table--cell-kill-region|\\\\\\\\*table--cell-kill-ring-save|\\\\\\\\*table--cell-kill-sentence|\\\\\\\\*table--cell-kill-sexp|\\\\\\\\*table--cell-kill-word|\\\\\\\\*table--cell-move-beginning-of-line|\\\\\\\\*table--cell-move-end-of-line|\\\\\\\\*table--cell-newline-and-indent|\\\\\\\\*table--cell-newline|\\\\\\\\*table--cell-open-line|\\\\\\\\*table--cell-quoted-insert|\\\\\\\\*table--cell-self-insert-command|\\\\\\\\*table--cell-yank-clipboard-selection|\\\\\\\\*table--cell-yank|\\\\\\\\*table--present-cell-popup-menu|-cvs-create-fileinfo--cmacro|-cvs-create-fileinfo|-cvs-flags-make--cmacro|-cvs-flags-make|1\\\\\\\\+|1-|1value|2C-associate-buffer|2C-associated-buffer|2C-autoscroll|2C-command|2C-dissociate|2C-enlarge-window-horizontally|2C-merge|2C-mode|2C-newline|2C-other|2C-shrink-window-horizontally|2C-split|2C-toggle-autoscroll|2C-two-columns|5x5-bol|5x5-cell|5x5-copy-grid|5x5-crack-mutating-best|5x5-crack-mutating-current|5x5-crack-randomly|5x5-crack-xor-mutate|5x5-crack|5x5-defvar-local|5x5-down|5x5-draw-grid-end|5x5-draw-grid|5x5-eol|5x5-first|5x5-flip-cell|5x5-flip-current|5x5-grid-to-vec|5x5-grid-value|5x5-last|5x5-left|5x5-log-init|5x5-log|5x5-made-move|5x5-make-move|5x5-make-mutate-best|5x5-make-mutate-current|5x5-make-new-grid|5x5-make-random-grid|5x5-make-random-solution|5x5-make-xor-with-mutation|5x5-mode-menu|5x5-mode|5x5-mutate-solution|5x5-new-game|5x5-play-solution|5x5-position-cursor|5x5-quit-game|5x5-randomize|5x5-right|5x5-row-value|5x5-set-cell|5x5-solve-rotate-left|5x5-solve-rotate-right|5x5-solve-suggest|5x5-solver|5x5-up|5x5-vec-to-grid|5x5-xor|5x5-y-or-n-p|5x5|Buffer-menu--pretty-file-name|Buffer-menu--pretty-name|Buffer-menu--unmark|Buffer-menu-1-window|Buffer-menu-2-window|Buffer-menu-backup-unmark|Buffer-menu-beginning|Buffer-menu-buffer|Buffer-menu-bury|Buffer-menu-delete-backwards|Buffer-menu-delete|Buffer-menu-execute|Buffer-menu-info-node-description|Buffer-menu-isearch-buffers-regexp|Buffer-menu-isearch-buffers|Buffer-menu-mark|Buffer-menu-marked-buffers|Buffer-menu-mode|Buffer-menu-mouse-select|Buffer-menu-multi-occur|Buffer-menu-no-header|Buffer-menu-not-modified|Buffer-menu-other-window|Buffer-menu-save|Buffer-menu-select|Buffer-menu-sort|Buffer-menu-switch-other-window|Buffer-menu-this-window|Buffer-menu-toggle-files-only|Buffer-menu-toggle-read-only|Buffer-menu-unmark|Buffer-menu-view-other-window|Buffer-menu-view|Buffer-menu-visit-tags-table|Control-X-prefix|Custom-buffer-done|Custom-goto-parent|Custom-help|Custom-mode-menu|Custom-mode|Custom-newline|Custom-no-edit|Custom-reset-current|Custom-reset-saved|Custom-reset-standard|Custom-save|Custom-set|Electric-buffer-menu-exit|Electric-buffer-menu-mode-view-buffer|Electric-buffer-menu-mode|Electric-buffer-menu-mouse-select|Electric-buffer-menu-quit|Electric-buffer-menu-select|Electric-buffer-menu-undefined|Electric-command-history-redo-expression|Electric-command-loop|Electric-pop-up-window|Footnote-add-footnote|Footnote-assoc-index|Footnote-back-to-message|Footnote-current-regexp|Footnote-cycle-style|Footnote-delete-footnote|Footnote-english-lower|Footnote-english-upper|Footnote-goto-char-point-max|Footnote-goto-footnote|Footnote-index-to-string|Footnote-insert-footnote|Footnote-insert-numbered-footnote|Footnote-insert-pointer-marker|Footnote-insert-text-marker|Footnote-latin|Footnote-make-hole|Footnote-narrow-to-footnotes|Footnote-numeric|Footnote-refresh-footnotes|Footnote-renumber-footnotes|Footnote-renumber|Footnote-roman-common|Footnote-roman-lower|Footnote-roman-upper|Footnote-set-style|Footnote-sort|Footnote-style-p|Footnote-text-under-cursor|Footnote-under-cursor|Footnote-unicode|Info--search-loop|Info-apropos-find-file|Info-apropos-find-node|Info-apropos-matches|Info-apropos-toc-nodes|Info-backward-node|Info-bookmark-jump|Info-bookmark-make-record|Info-breadcrumbs|Info-build-node-completions-1|Info-build-node-completions|Info-cease-edit|Info-check-pointer|Info-clone-buffer|Info-complete-menu-item|Info-copy-current-node-name|Info-default-dirs|Info-desktop-buffer-misc-data|Info-dir-remove-duplicates|Info-directory-find-file|Info-directory-find-node|Info-directory-toc-nodes|Info-directory|Info-display-images-node|Info-edit-mode|Info-edit|Info-exit|Info-extract-menu-counting|Info-extract-menu-item|Info-extract-menu-node-name|Info-extract-pointer|Info-file-supports-index-cookies|Info-final-node|Info-find-emacs-command-nodes|Info-find-file|Info-find-in-tag-table-1|Info-find-in-tag-table|Info-find-index-name|Info-find-node-2|Info-find-node-in-buffer-1|Info-find-node-in-buffer|Info-find-node|Info-finder-find-file|Info-finder-find-node|Info-follow-nearest-node|Info-follow-reference|Info-following-node-name-re|Info-following-node-name|Info-fontify-node|Info-forward-node|Info-get-token|Info-goto-emacs-command-node|Info-goto-emacs-key-command-node|Info-goto-index|Info-goto-node|Info-help|Info-hide-cookies-node|Info-history-back|Info-history-find-file|Info-history-find-node|Info-history-forward|Info-history-toc-nodes|Info-history|Info-index-next|Info-index-node|Info-index-nodes|Info-index|Info-insert-dir|Info-install-speedbar-variables|Info-isearch-end|Info-isearch-filter|Info-isearch-pop-state|Info-isearch-push-state|Info-isearch-search|Info-isearch-start|Info-isearch-wrap|Info-kill-buffer|Info-last-menu-item|Info-last-preorder|Info-last|Info-menu-update|Info-menu|Info-mode-menu|Info-mode|Info-mouse-follow-link|Info-mouse-follow-nearest-node|Info-mouse-scroll-down|Info-mouse-scroll-up|Info-next-menu-item|Info-next-preorder|Info-next-reference-or-link|Info-next-reference|Info-next|Info-no-error|Info-node-at-bob-matching|Info-nth-menu-item|Info-on-current-buffer|Info-prev-reference-or-link|Info-prev-reference|Info-prev|Info-read-node-name-1|Info-read-node-name-2|Info-read-node-name|Info-read-subfile|Info-restore-desktop-buffer|Info-restore-point|Info-revert-buffer-function|Info-revert-find-node|Info-scroll-down|Info-scroll-up|Info-search-backward|Info-search-case-sensitively|Info-search-next|Info-search|Info-select-node|Info-set-mode-line|Info-speedbar-browser|Info-speedbar-buttons|Info-speedbar-expand-node|Info-speedbar-fetch-file-nodes|Info-speedbar-goto-node|Info-speedbar-hierarchy-buttons|Info-split-parameter-string|Info-split|Info-summary|Info-tagify|Info-toc-build|Info-toc-find-node|Info-toc-insert|Info-toc-nodes|Info-toc|Info-top-node|Info-try-follow-nearest-node|Info-undefined|Info-unescape-quotes|Info-up|Info-validate-node-name|Info-validate-tags-table|Info-validate|Info-virtual-call|Info-virtual-file-p|Info-virtual-fun|Info-virtual-index-find-node|Info-virtual-index|LaTeX-mode|Man-bgproc-filter|Man-bgproc-sentinel|Man-bookmark-jump|Man-bookmark-make-record|Man-build-man-command|Man-build-page-list|Man-build-references-alist|Man-build-section-alist|Man-cleanup-manpage|Man-completion-table|Man-default-bookmark-title|Man-default-man-entry|Man-find-section|Man-follow-manual-reference|Man-fontify-manpage|Man-getpage-in-background|Man-goto-page|Man-goto-section|Man-goto-see-also-section|Man-highlight-references|Man-highlight-references0|Man-init-defvars|Man-kill|Man-make-page-mode-string|Man-mode|Man-next-manpage|Man-next-section|Man-notify-when-ready|Man-page-from-arguments|Man-parse-man-k|Man-possibly-hyphenated-word|Man-previous-manpage|Man-previous-section|Man-quit|Man-softhyphen-to-minus|Man-start-calling|Man-strip-page-headers|Man-support-local-filenames|Man-translate-cleanup|Man-translate-references|Man-unindent|Man-update-manpage|Man-view-header-file|Man-xref-button-action|Math-anglep|Math-bignum-test|Math-equal-int|Math-equal|Math-integer-neg|Math-integer-negp|Math-integer-posp|Math-integerp|Math-lessp|Math-looks-negp|Math-messy-integerp|Math-natnum-lessp|Math-natnump|Math-negp|Math-num-integerp|Math-numberp|Math-objectp|Math-objvecp|Math-posp|Math-primp|Math-ratp|Math-realp|Math-scalarp|Math-vectorp|Math-zerop|TeX-mode|View-back-to-mark|View-exit-and-edit|View-exit|View-goto-line|View-goto-percent|View-kill-and-leave|View-leave|View-quit-all|View-quit|View-revert-buffer-scroll-page-forward|View-scroll-half-page-backward|View-scroll-half-page-forward|View-scroll-line-backward|View-scroll-line-forward|View-scroll-page-backward-set-page-size|View-scroll-page-backward|View-scroll-page-forward-set-page-size|View-scroll-page-forward|View-scroll-to-buffer-end|View-search-last-regexp-backward|View-search-last-regexp-forward|View-search-regexp-backward|View-search-regexp-forward|WoMan-find-buffer|WoMan-getpage-in-background|WoMan-log-1|WoMan-log-begin|WoMan-log-end|WoMan-log|WoMan-next-manpage|WoMan-previous-manpage|WoMan-warn-ignored|WoMan-warn|abbrev--active-tables|abbrev--before-point|abbrev--check-chars|abbrev--default-expand|abbrev--describe|abbrev--symbol|abbrev--write|abbrev-edit-save-buffer|abbrev-edit-save-to-file|abbrev-mode|abbrev-table-empty-p|abbrev-table-menu|abbrev-table-name|abort-if-file-too-large|about-emacs|accelerate-menu|accept-completion|acons|activate-input-method|activate-mark|activate-mode-local-bindings|ad--defalias-fset|ad--make-advised-docstring|ad-Advice-c-backward-sws|ad-Advice-c-beginning-of-macro|ad-Advice-c-forward-sws|ad-Advice-save-place-find-file-hook|ad-access-argument|ad-activate-advised-definition|ad-activate-all|ad-activate-internal|ad-activate-on|ad-activate-regexp|ad-activate|ad-add-advice|ad-advice-definition|ad-advice-enabled|ad-advice-name|ad-advice-p|ad-advice-position|ad-advice-protected|ad-advice-set-enabled|ad-advised-arglist|ad-advised-interactive-form|ad-arg-binding-field|ad-arglist|ad-assemble-advised-definition|ad-body-forms|ad-cache-id-verification-code|ad-class-p|ad-clear-advicefunname-definition|ad-clear-cache|ad-compile-function|ad-compiled-code|ad-compiled-p|ad-copy-advice-info|ad-deactivate-all|ad-deactivate-regexp|ad-deactivate|ad-definition-type|ad-disable-advice|ad-disable-regexp|ad-do-advised-functions|ad-docstring|ad-element-access|ad-enable-advice-internal|ad-enable-advice|ad-enable-regexp-internal|ad-enable-regexp|ad-find-advice|ad-find-some-advice|ad-get-advice-info-field|ad-get-advice-info-macro|ad-get-advice-info|ad-get-argument|ad-get-arguments|ad-get-cache-class-id|ad-get-cache-definition|ad-get-cache-id|ad-get-enabled-advices|ad-get-orig-definition|ad-has-any-advice|ad-has-enabled-advice|ad-has-proper-definition|ad-has-redefining-advice|ad-initialize-advice-info|ad-insert-argument-access-forms|ad-interactive-form|ad-is-active|ad-is-advised|ad-is-compilable|ad-lambda-expression|ad-lambda-p|ad-lambdafy|ad-list-access|ad-macrofy|ad-make-advice|ad-make-advicefunname|ad-make-advised-definition|ad-make-cache-id|ad-make-hook-form|ad-make-single-advice-docstring|ad-map-arglists|ad-name-p|ad-parse-arglist|ad-pop-advised-function|ad-position-p|ad-preactivate-advice|ad-pushnew-advised-function|ad-read-advice-class|ad-read-advice-name|ad-read-advice-specification|ad-read-advised-function|ad-read-regexp|ad-real-definition|ad-real-orig-definition|ad-recover-all|ad-recover-normality|ad-recover|ad-remove-advice|ad-retrieve-args-form|ad-set-advice-info-field|ad-set-advice-info|ad-set-argument|ad-set-arguments|ad-set-cache|ad-should-compile|ad-substitute-tree|ad-unadvise-all|ad-unadvise|ad-update-all|ad-update-regexp|ad-update|ad-verify-cache-class-id|ad-verify-cache-id|ad-with-originals|ada-activate-keys-for-case|ada-add-extensions|ada-adjust-case-buffer|ada-adjust-case-identifier|ada-adjust-case-interactive|ada-adjust-case-region|ada-adjust-case-skeleton|ada-adjust-case-substring|ada-adjust-case|ada-after-keyword-p|ada-array|ada-batch-reformat|ada-call-from-contextual-menu|ada-capitalize-word|ada-case-read-exceptions-from-file)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:ada-case-read-exceptions|ada-case|ada-change-prj|ada-check-current|ada-check-defun-name|ada-check-matching-start|ada-compile-application|ada-compile-current|ada-compile-goto-error|ada-compile-mouse-goto-error|ada-complete-identifier|ada-contextual-menu|ada-create-case-exception-substring|ada-create-case-exception|ada-create-keymap|ada-create-menu|ada-customize|ada-declare-block|ada-else|ada-elsif|ada-exception-block|ada-exception|ada-exit|ada-ff-other-window|ada-fill-comment-paragraph-justify|ada-fill-comment-paragraph-postfix|ada-fill-comment-paragraph|ada-find-any-references|ada-find-file|ada-find-local-references|ada-find-references|ada-find-src-file-in-dir|ada-for-loop|ada-format-paramlist|ada-function-spec|ada-gdb-application|ada-gen-treat-proc|ada-get-body-name|ada-get-current-indent|ada-get-indent-block-label|ada-get-indent-block-start|ada-get-indent-case|ada-get-indent-end|ada-get-indent-goto-label|ada-get-indent-if|ada-get-indent-loop|ada-get-indent-nochange|ada-get-indent-noindent|ada-get-indent-open-paren|ada-get-indent-paramlist|ada-get-indent-subprog|ada-get-indent-type|ada-get-indent-when|ada-gnat-style|ada-goto-decl-start|ada-goto-declaration-other-frame|ada-goto-declaration|ada-goto-matching-end|ada-goto-matching-start|ada-goto-next-non-ws|ada-goto-next-word|ada-goto-parent|ada-goto-previous-word|ada-goto-stmt-end|ada-goto-stmt-start|ada-header|ada-if|ada-in-comment-p|ada-in-decl-p|ada-in-numeric-literal-p|ada-in-open-paren-p|ada-in-paramlist-p|ada-in-string-or-comment-p|ada-in-string-p|ada-indent-current-function|ada-indent-current|ada-indent-newline-indent-conditional|ada-indent-newline-indent|ada-indent-on-previous-lines|ada-indent-region|ada-insert-paramlist|ada-justified-indent-current|ada-looking-at-semi-or|ada-looking-at-semi-private|ada-loop|ada-loose-case-word|ada-make-body-gnatstub|ada-make-body|ada-make-filename-from-adaname|ada-make-subprogram-body|ada-mode-menu|ada-mode-version|ada-mode|ada-move-to-end|ada-move-to-start|ada-narrow-to-defun|ada-next-package|ada-next-procedure|ada-no-auto-case|ada-other-file-name|ada-outline-level|ada-package-body|ada-package-spec|ada-point-and-xref|ada-popup-menu|ada-previous-package|ada-previous-procedure|ada-private|ada-prj-edit|ada-prj-new|ada-prj-save|ada-procedure-spec|ada-record|ada-region-selected|ada-remove-trailing-spaces|ada-reread-prj-file|ada-run-application|ada-save-exceptions-to-file|ada-scan-paramlist|ada-search-ignore-complex-boolean|ada-search-ignore-string-comment|ada-search-prev-end-stmt|ada-set-default-project-file|ada-set-main-compile-application|ada-set-point-accordingly|ada-show-current-main|ada-subprogram-body|ada-subtype|ada-tab-hard|ada-tab|ada-tabsize|ada-task-body|ada-task-spec|ada-type|ada-uncomment-region|ada-untab-hard|ada-untab|ada-use|ada-when|ada-which-function-are-we-in|ada-which-function|ada-while-loop|ada-with|ada-xref-goto-previous-reference|add-abbrev|add-change-log-entry-other-window|add-change-log-entry|add-completion-to-head|add-completion-to-tail-if-new|add-completion|add-completions-from-buffer|add-completions-from-c-buffer|add-completions-from-file|add-completions-from-lisp-buffer|add-completions-from-tags-table|add-dir-local-variable|add-file-local-variable-prop-line|add-file-local-variable|add-global-abbrev|add-log-current-defun|add-log-edit-next-comment|add-log-edit-prev-comment|add-log-file-name|add-log-iso8601-time-string|add-log-iso8601-time-zone|add-log-tcl-defun|add-minor-mode|add-mode-abbrev|add-new-page|add-permanent-completion|add-submenu|add-timeout|add-to-coding-system-list|add-to-list--anon-cmacro|addbib|adjoin|advertised-undo|advertised-widget-backward|advertised-xscheme-send-previous-expression|advice--add-function|advice--buffer-local|advice--called-interactively-skip|advice--car|advice--cd\\\\\\\\*r|advice--cdr|advice--defalias-fset|advice--interactive-form|advice--make-1|advice--make-docstring|advice--make-interactive-form|advice--make|advice--member-p|advice--normalize-place|advice--normalize|advice--p|advice--props|advice--remove-function|advice--set-buffer-local|advice--strip-macro|advice--subst-main|advice--symbol-function|advice--tweak|after-insert-file-set-coding|align--set-marker|align-adjust-col-for-rule|align-areas|align-column|align-current|align-entire|align-highlight-rule|align-match-tex-pattern|align-new-section-p|align-newline-and-indent|align-regexp|align-region|align-regions|align-set-vhdl-rules|align-unhighlight-rule|align|alist-get|allout-aberrant-container-p|allout-add-resumptions|allout-adjust-file-variable|allout-after-saves-handler|allout-annotate-hidden|allout-ascend-to-depth|allout-ascend|allout-auto-activation-helper|allout-auto-fill|allout-back-to-current-heading|allout-back-to-heading|allout-back-to-visible-text|allout-backward-current-level|allout-before-change-handler|allout-beginning-of-current-entry|allout-beginning-of-current-line|allout-beginning-of-level|allout-beginning-of-line|allout-body-modification-handler|allout-bullet-for-depth|allout-bullet-isearch|allout-called-interactively-p|allout-chart-exposure-contour-by-icon|allout-chart-siblings|allout-chart-subtree|allout-chart-to-reveal|allout-compose-and-institute-keymap|allout-copy-exposed-to-buffer|allout-copy-line-as-kill|allout-copy-topic-as-kill|allout-current-bullet-pos|allout-current-bullet|allout-current-decorated-p|allout-current-depth|allout-current-topic-collapsed-p|allout-deannotate-hidden|allout-decorate-item-and-context|allout-decorate-item-body|allout-decorate-item-cue|allout-decorate-item-guides|allout-decorate-item-icon|allout-decorate-item-span|allout-depth|allout-descend-to-depth|allout-distinctive-bullet|allout-do-doublecheck|allout-do-resumptions|allout-e-o-prefix-p|allout-elapsed-time-seconds|allout-encrypt-decrypted|allout-encrypt-string|allout-encrypted-topic-p|allout-encrypted-type-prefix|allout-end-of-current-heading|allout-end-of-current-line|allout-end-of-current-subtree|allout-end-of-entry|allout-end-of-heading|allout-end-of-level|allout-end-of-line|allout-end-of-prefix|allout-end-of-subtree|allout-expose-topic|allout-fetch-icon-image|allout-file-vars-section-data|allout-find-file-hook|allout-find-image|allout-flag-current-subtree|allout-flag-region|allout-flatten-exposed-to-buffer|allout-flatten|allout-format-quote|allout-forward-current-level|allout-frame-property|allout-get-body-text|allout-get-bullet|allout-get-configvar-values|allout-get-current-prefix|allout-get-invisibility-overlay|allout-get-item-widget|allout-get-or-create-item-widget|allout-get-or-create-parent-widget|allout-get-prefix-bullet|allout-goto-prefix-doublechecked|allout-goto-prefix|allout-graphics-modification-handler|allout-hidden-p|allout-hide-bodies|allout-hide-by-annotation|allout-hide-current-entry|allout-hide-current-leaves|allout-hide-current-subtree|allout-hide-region-body|allout-hotspot-key-handler|allout-indented-exposed-to-buffer|allout-infer-body-reindent|allout-infer-header-lead-and-primary-bullet|allout-infer-header-lead|allout-inhibit-auto-save-info-for-decryption|allout-init|allout-insert-latex-header|allout-insert-latex-trailer|allout-insert-listified|allout-institute-keymap|allout-isearch-end-handler|allout-item-actual-position|allout-item-element-span-is|allout-item-icon-key-handler|allout-item-location|allout-item-span|allout-kill-line|allout-kill-topic|allout-latex-verb-quote|allout-latex-verbatim-quote-curr-line|allout-latexify-exposed|allout-latexify-one-item|allout-lead-with-comment-string|allout-listify-exposed|allout-make-topic-prefix|allout-mark-active-p|allout-mark-marker|allout-mark-topic|allout-maybe-resume-auto-save-info-after-encryption|allout-minor-mode|allout-mode-map|allout-mode-p|allout-mode|allout-new-exposure|allout-new-item-widget|allout-next-heading|allout-next-sibling-leap|allout-next-sibling|allout-next-single-char-property-change|allout-next-topic-pending-encryption|allout-next-visible-heading|allout-number-siblings|allout-numbered-type-prefix|allout-old-expose-topic|allout-on-current-heading-p|allout-on-heading-p|allout-open-sibtopic|allout-open-subtopic|allout-open-supertopic|allout-open-topic|allout-overlay-insert-in-front-handler|allout-overlay-interior-modification-handler|allout-overlay-preparations|allout-parse-item-at-point|allout-post-command-business|allout-pre-command-business|allout-pre-next-prefix|allout-prefix-data|allout-previous-heading|allout-previous-sibling|allout-previous-single-char-property-change|allout-previous-visible-heading|allout-process-exposed|allout-range-overlaps|allout-rebullet-current-heading|allout-rebullet-heading|allout-rebullet-topic-grunt|allout-rebullet-topic|allout-recent-bullet|allout-recent-depth|allout-recent-prefix|allout-redecorate-item|allout-redecorate-visible-subtree|allout-region-active-p|allout-reindent-body|allout-renumber-to-depth|allout-reset-header-lead|allout-resolve-xref|allout-run-unit-tests|allout-select-safe-coding-system|allout-set-boundary-marker|allout-setup-menubar|allout-setup-text-properties|allout-setup|allout-shift-in|allout-shift-out|allout-show-all|allout-show-children|allout-show-current-branches|allout-show-current-entry|allout-show-current-subtree|allout-show-entry|allout-show-to-offshoot|allout-sibling-index|allout-snug-back|allout-solicit-alternate-bullet|allout-stringify-flat-index-indented|allout-stringify-flat-index-plain|allout-stringify-flat-index|allout-substring-no-properties|allout-test-range-overlaps|allout-test-resumptions|allout-tests-obliterate-variable|allout-this-or-next-heading|allout-toggle-current-subtree-encryption|allout-toggle-current-subtree-exposure|allout-toggle-subtree-encryption|allout-topic-flat-index|allout-unload-function|allout-unprotected|allout-up-current-level|allout-version|allout-widgetize-buffer|allout-widgets-additions-processor|allout-widgets-additions-recorder|allout-widgets-adjusting-message|allout-widgets-after-change-handler|allout-widgets-after-copy-or-kill-function|allout-widgets-after-undo-function|allout-widgets-before-change-handler|allout-widgets-changes-dispatcher|allout-widgets-copy-list|allout-widgets-count-buttons-in-region|allout-widgets-deletions-processor|allout-widgets-deletions-recorder|allout-widgets-exposure-change-processor|allout-widgets-exposure-change-recorder|allout-widgets-exposure-undo-processor|allout-widgets-exposure-undo-recorder|allout-widgets-hook-error-handler|allout-widgets-mode-disable|allout-widgets-mode-enable|allout-widgets-mode-off|allout-widgets-mode-on|allout-widgets-mode|allout-widgets-post-command-business|allout-widgets-pre-command-business|allout-widgets-prepopulate-buffer|allout-widgets-run-unit-tests|allout-widgets-setup|allout-widgets-shifts-processor|allout-widgets-shifts-recorder|allout-widgets-tally-string|allout-widgets-undecorate-item|allout-widgets-undecorate-region|allout-widgets-undecorate-text|allout-widgets-version|allout-write-contents-hook-handler|allout-yank-pop|allout-yank-processing|allout-yank|alter-text-property|ange-ftp-abbreviate-filename|ange-ftp-add-bs2000-host|ange-ftp-add-bs2000-posix-host|ange-ftp-add-cms-host|ange-ftp-add-dl-dir|ange-ftp-add-dumb-unix-host|ange-ftp-add-file-entry|ange-ftp-add-mts-host|ange-ftp-add-vms-host|ange-ftp-allow-child-lookup|ange-ftp-barf-if-not-directory|ange-ftp-barf-or-query-if-file-exists|ange-ftp-binary-file|ange-ftp-bs2000-cd-to-posix|ange-ftp-bs2000-host|ange-ftp-bs2000-posix-host|ange-ftp-call-chmod|ange-ftp-call-cont|ange-ftp-canonize-filename|ange-ftp-cd|ange-ftp-cf1|ange-ftp-cf2|ange-ftp-chase-symlinks|ange-ftp-cms-host|ange-ftp-cms-make-compressed-filename|ange-ftp-completion-hook-function|ange-ftp-compress|ange-ftp-copy-file-internal|ange-ftp-copy-file|ange-ftp-copy-files-async|ange-ftp-del-tmp-name|ange-ftp-delete-directory|ange-ftp-delete-file-entry|ange-ftp-delete-file|ange-ftp-directory-file-name|ange-ftp-directory-files-and-attributes|ange-ftp-directory-files|ange-ftp-dired-compress-file|ange-ftp-dired-uncache|ange-ftp-dl-parser|ange-ftp-dumb-unix-host|ange-ftp-error|ange-ftp-expand-dir|ange-ftp-expand-file-name|ange-ftp-expand-symlink|ange-ftp-file-attributes|ange-ftp-file-directory-p|ange-ftp-file-entry-not-ignored-p|ange-ftp-file-entry-p|ange-ftp-file-executable-p|ange-ftp-file-exists-p|ange-ftp-file-local-copy|ange-ftp-file-modtime|ange-ftp-file-name-all-completions|ange-ftp-file-name-as-directory|ange-ftp-file-name-completion-1|ange-ftp-file-name-completion|ange-ftp-file-name-directory|ange-ftp-file-name-nondirectory|ange-ftp-file-name-sans-versions)(?=[\\\\\\\\s()]|$)\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:ange-ftp-file-newer-than-file-p|ange-ftp-file-readable-p|ange-ftp-file-remote-p|ange-ftp-file-size|ange-ftp-file-symlink-p|ange-ftp-file-writable-p|ange-ftp-find-backup-file-name|ange-ftp-fix-dir-name-for-bs2000|ange-ftp-fix-dir-name-for-cms|ange-ftp-fix-dir-name-for-mts|ange-ftp-fix-dir-name-for-vms|ange-ftp-fix-name-for-bs2000|ange-ftp-fix-name-for-cms|ange-ftp-fix-name-for-mts|ange-ftp-fix-name-for-vms|ange-ftp-ftp-name-component|ange-ftp-ftp-name|ange-ftp-ftp-process-buffer|ange-ftp-generate-passwd-key|ange-ftp-generate-root-prefixes|ange-ftp-get-account|ange-ftp-get-file-entry|ange-ftp-get-file-part|ange-ftp-get-files|ange-ftp-get-host-with-passwd|ange-ftp-get-passwd|ange-ftp-get-process|ange-ftp-get-pwd|ange-ftp-get-user|ange-ftp-guess-hash-mark-size|ange-ftp-guess-host-type|ange-ftp-gwp-filter|ange-ftp-gwp-sentinel|ange-ftp-gwp-start|ange-ftp-hash-entry-exists-p|ange-ftp-hash-table-keys|ange-ftp-hook-function|ange-ftp-host-type|ange-ftp-ignore-errors-if-non-essential|ange-ftp-insert-directory|ange-ftp-insert-file-contents|ange-ftp-internal-add-file-entry|ange-ftp-internal-delete-file-entry|ange-ftp-kill-ftp-process|ange-ftp-load|ange-ftp-lookup-passwd|ange-ftp-ls-parser|ange-ftp-ls|ange-ftp-make-directory|ange-ftp-make-tmp-name|ange-ftp-message|ange-ftp-mts-host|ange-ftp-normal-login|ange-ftp-nslookup-host|ange-ftp-parse-bs2000-filename|ange-ftp-parse-bs2000-listing|ange-ftp-parse-cms-listing|ange-ftp-parse-dired-listing|ange-ftp-parse-filename|ange-ftp-parse-mts-listing|ange-ftp-parse-netrc-group|ange-ftp-parse-netrc-token|ange-ftp-parse-netrc|ange-ftp-parse-vms-filename|ange-ftp-parse-vms-listing|ange-ftp-passive-mode|ange-ftp-process-file|ange-ftp-process-filter|ange-ftp-process-handle-hash|ange-ftp-process-handle-line|ange-ftp-process-sentinel|ange-ftp-quote-string|ange-ftp-raw-send-cmd|ange-ftp-re-read-dir|ange-ftp-real-backup-buffer|ange-ftp-real-copy-file|ange-ftp-real-delete-directory|ange-ftp-real-delete-file|ange-ftp-real-directory-file-name|ange-ftp-real-directory-files-and-attributes|ange-ftp-real-directory-files|ange-ftp-real-expand-file-name|ange-ftp-real-file-attributes|ange-ftp-real-file-directory-p|ange-ftp-real-file-executable-p|ange-ftp-real-file-exists-p|ange-ftp-real-file-name-all-completions|ange-ftp-real-file-name-as-directory|ange-ftp-real-file-name-completion|ange-ftp-real-file-name-directory|ange-ftp-real-file-name-nondirectory|ange-ftp-real-file-name-sans-versions|ange-ftp-real-file-newer-than-file-p|ange-ftp-real-file-readable-p|ange-ftp-real-file-symlink-p|ange-ftp-real-file-writable-p|ange-ftp-real-find-backup-file-name|ange-ftp-real-insert-directory|ange-ftp-real-insert-file-contents|ange-ftp-real-load|ange-ftp-real-make-directory|ange-ftp-real-rename-file|ange-ftp-real-shell-command|ange-ftp-real-verify-visited-file-modtime|ange-ftp-real-write-region|ange-ftp-rename-file|ange-ftp-rename-local-to-remote|ange-ftp-rename-remote-to-local|ange-ftp-rename-remote-to-remote|ange-ftp-repaint-minibuffer|ange-ftp-replace-name-component|ange-ftp-reread-dir|ange-ftp-root-dir-p|ange-ftp-run-real-handler-orig|ange-ftp-run-real-handler|ange-ftp-send-cmd|ange-ftp-set-account|ange-ftp-set-ascii-mode|ange-ftp-set-binary-mode|ange-ftp-set-buffer-mode|ange-ftp-set-file-modes|ange-ftp-set-files|ange-ftp-set-passwd|ange-ftp-set-user|ange-ftp-set-xfer-size|ange-ftp-shell-command|ange-ftp-smart-login|ange-ftp-start-process|ange-ftp-switches-ok|ange-ftp-uncompress|ange-ftp-unhandled-file-name-directory|ange-ftp-use-gateway-p|ange-ftp-use-smart-gateway-p|ange-ftp-verify-visited-file-modtime|ange-ftp-vms-add-file-entry|ange-ftp-vms-delete-file-entry|ange-ftp-vms-file-name-as-directory|ange-ftp-vms-host|ange-ftp-vms-make-compressed-filename|ange-ftp-vms-sans-version|ange-ftp-wait-not-busy|ange-ftp-wipe-file-entries|ange-ftp-write-region|animate-birthday-present|animate-initialize|animate-place-char|animate-sequence|animate-step|animate-string|another-calc|ansi-color--find-face|ansi-color-apply-on-region|ansi-color-apply-overlay-face|ansi-color-apply-sequence|ansi-color-apply|ansi-color-filter-apply|ansi-color-filter-region|ansi-color-for-comint-mode-filter|ansi-color-for-comint-mode-off|ansi-color-for-comint-mode-on|ansi-color-freeze-overlay|ansi-color-get-face-1|ansi-color-make-color-map|ansi-color-make-extent|ansi-color-make-face|ansi-color-map-update|ansi-color-parse-sequence|ansi-color-process-output|ansi-color-set-extent-face|ansi-color-unfontify-region|ansi-term|antlr-beginning-of-body|antlr-beginning-of-rule|antlr-c\\\\\\\\+\\\\\\\\+-mode-extra|antlr-c-forward-sws|antlr-c-init-language-vars|antlr-default-directory|antlr-directory-dependencies|antlr-downcase-literals|antlr-electric-character|antlr-end-of-body|antlr-end-of-rule|antlr-file-dependencies|antlr-font-lock-keywords|antlr-grammar-tokens|antlr-hide-actions|antlr-imenu-create-index-function|antlr-indent-command|antlr-indent-line|antlr-insert-makefile-rules|antlr-insert-option-area|antlr-insert-option-do|antlr-insert-option-existing|antlr-insert-option-interactive|antlr-insert-option-space|antlr-insert-option|antlr-inside-rule-p|antlr-invalidate-context-cache|antlr-language-option-extra|antlr-language-option|antlr-makefile-insert-variable|antlr-mode-menu|antlr-mode|antlr-next-rule|antlr-option-kind|antlr-option-level|antlr-option-location|antlr-option-spec|antlr-options-menu-filter|antlr-outside-rule-p|antlr-re-search-forward|antlr-read-boolean|antlr-read-shell-command|antlr-read-value|antlr-run-tool-interactive|antlr-run-tool|antlr-search-backward|antlr-search-forward|antlr-set-tabs|antlr-show-makefile-rules|antlr-skip-exception-part|antlr-skip-file-prelude|antlr-skip-sexps|antlr-superclasses-glibs|antlr-syntactic-context|antlr-syntactic-grammar-depth|antlr-upcase-literals|antlr-upcase-p|antlr-version-string|antlr-with-displaying-help-buffer|antlr-with-syntax-table|append-next-kill|append-to-buffer|append-to-register|apply-macro-to-region-lines|apply-on-rectangle|appt-activate|appt-add|apropos-command|apropos-documentation-property|apropos-documentation|apropos-internal|apropos-library|apropos-read-pattern|apropos-user-option|apropos-value|apropos-variable|archive-\\\\\\\\*-expunge|archive-\\\\\\\\*-extract|archive-\\\\\\\\*-write-file-member|archive-7z-extract|archive-7z-summarize|archive-7z-write-file-member|archive-add-new-member|archive-alternate-display|archive-ar-extract|archive-ar-summarize|archive-arc-rename-entry|archive-arc-summarize|archive-calc-mode|archive-chgrp-entry|archive-chmod-entry|archive-chown-entry|archive-delete-local|archive-desummarize|archive-display-other-window|archive-dosdate|archive-dostime|archive-expunge|archive-extract-by-file|archive-extract-by-stdout|archive-extract-other-window|archive-extract|archive-file-name-handler|archive-find-type|archive-flag-deleted|archive-get-descr|archive-get-lineno|archive-get-marked|archive-int-to-mode|archive-l-e|archive-lzh-chgrp-entry|archive-lzh-chmod-entry|archive-lzh-chown-entry|archive-lzh-exe-extract|archive-lzh-exe-summarize|archive-lzh-extract|archive-lzh-ogm|archive-lzh-rename-entry|archive-lzh-resum|archive-lzh-summarize|archive-mark|archive-maybe-copy|archive-maybe-update|archive-mode-revert|archive-mode|archive-mouse-extract|archive-name|archive-next-line|archive-previous-line|archive-rar-exe-extract|archive-rar-exe-summarize|archive-rar-extract|archive-rar-summarize|archive-rename-entry|archive-resummarize|archive-set-buffer-as-visiting-file|archive-summarize-files|archive-summarize|archive-try-jka-compr|archive-undo|archive-unflag-backwards|archive-unflag|archive-unique-fname|archive-unixdate|archive-unixtime|archive-unmark-all-files|archive-view|archive-write-file-member|archive-write-file|archive-zip-chmod-entry|archive-zip-extract|archive-zip-summarize|archive-zip-write-file-member|archive-zoo-extract|archive-zoo-summarize|arp|array-backward-column|array-beginning-of-field|array-copy-backward|array-copy-column-backward|array-copy-column-forward|array-copy-down|array-copy-forward|array-copy-once-horizontally|array-copy-once-vertically|array-copy-row-down|array-copy-row-up|array-copy-to-cell|array-copy-to-column|array-copy-to-row|array-copy-up|array-current-column|array-current-row|array-cursor-in-array-range|array-display-local-variables|array-end-of-field|array-expand-rows|array-field-string|array-fill-rectangle|array-forward-column|array-goto-cell|array-make-template|array-maybe-scroll-horizontally|array-mode|array-move-one-column|array-move-one-row|array-move-to-cell|array-move-to-column|array-move-to-row|array-next-row|array-normalize-cursor|array-previous-row|array-reconfigure-rows|array-update-array-position|array-update-buffer-position|array-what-position|artist-2point-get-endpoint1|artist-2point-get-endpoint2|artist-2point-get-shapeinfo|artist-arrow-point-get-direction|artist-arrow-point-get-marker|artist-arrow-point-get-orig-char|artist-arrow-point-get-state|artist-arrow-point-set-state|artist-arrows|artist-backward-char|artist-calculate-new-char|artist-calculate-new-chars|artist-charlist-to-string|artist-clear-arrow-points|artist-clear-buffer|artist-compute-key-compl-table|artist-compute-line-char|artist-compute-popup-menu-table-sub|artist-compute-popup-menu-table|artist-compute-up-event-key|artist-coord-add-new-char|artist-coord-add-saved-char|artist-coord-get-new-char|artist-coord-get-saved-char|artist-coord-get-x|artist-coord-get-y|artist-coord-set-new-char|artist-coord-set-x|artist-coord-set-y|artist-coord-win-to-buf|artist-copy-generic|artist-copy-rect|artist-copy-square|artist-current-column|artist-current-line|artist-cut-rect|artist-cut-square|artist-direction-char|artist-direction-step-x|artist-direction-step-y|artist-do-nothing|artist-down-mouse-1|artist-down-mouse-3|artist-draw-circle|artist-draw-ellipse-general|artist-draw-ellipse-with-0-height|artist-draw-ellipse|artist-draw-line|artist-draw-rect|artist-draw-region-reset|artist-draw-region-trim-line-endings|artist-draw-sline|artist-draw-square|artist-eight-point|artist-ellipse-compute-fill-info|artist-ellipse-fill-info-add-center|artist-ellipse-generate-quadrant|artist-ellipse-mirror-quadrant|artist-ellipse-point-list-add-center|artist-ellipse-remove-0-fills|artist-endpoint-get-x|artist-endpoint-get-y|artist-erase-char|artist-erase-rect|artist-event-is-shifted|artist-fc-get-fn-from-symbol|artist-fc-get-fn|artist-fc-get-keyword|artist-fc-get-symbol|artist-fc-retrieve-from-symbol-sub|artist-fc-retrieve-from-symbol|artist-ff-get-rightmost-from-xy|artist-ff-is-bottommost-line|artist-ff-is-topmost-line|artist-ff-too-far-right|artist-figlet-choose-font|artist-figlet-get-extra-args|artist-figlet-get-font-list|artist-figlet-run|artist-figlet|artist-file-to-string|artist-fill-circle|artist-fill-ellipse|artist-fill-item-get-width|artist-fill-item-get-x|artist-fill-item-get-y|artist-fill-item-set-width|artist-fill-item-set-x|artist-fill-item-set-y|artist-fill-rect|artist-fill-square|artist-find-direction|artist-find-octant|artist-flood-fill|artist-forward-char|artist-funcall|artist-get-buffer-contents-at-xy|artist-get-char-at-xy-conv|artist-get-char-at-xy|artist-get-dfdx-init-coeff|artist-get-dfdy-init-coeff|artist-get-first-non-nil-op|artist-get-last-non-nil-op|artist-get-replacement-char|artist-get-x-step-q<0|artist-get-x-step-q>=0|artist-get-y-step-q<0|artist-get-y-step-q>=0|artist-go-get-arrow-pred-from-symbol|artist-go-get-arrow-pred|artist-go-get-arrow-set-fn-from-symbol|artist-go-get-arrow-set-fn|artist-go-get-desc|artist-go-get-draw-fn-from-symbol|artist-go-get-draw-fn|artist-go-get-draw-how-from-symbol|artist-go-get-draw-how|artist-go-get-exit-fn-from-symbol|artist-go-get-exit-fn|artist-go-get-fill-fn-from-symbol|artist-go-get-fill-fn|artist-go-get-fill-pred-from-symbol|artist-go-get-fill-pred|artist-go-get-init-fn-from-symbol|artist-go-get-init-fn|artist-go-get-interval-fn-from-symbol|artist-go-get-interval-fn|artist-go-get-keyword-from-symbol|artist-go-get-keyword|artist-go-get-mode-line-from-symbol|artist-go-get-mode-line|artist-go-get-prep-fill-fn-from-symbol|artist-go-get-prep-fill-fn|artist-go-get-shifted|artist-go-get-symbol-shift-sub|artist-go-get-symbol-shift|artist-go-get-symbol|artist-go-get-undraw-fn-from-symbol|artist-go-get-undraw-fn|artist-go-get-unshifted|artist-go-retrieve-from-symbol-sub|artist-go-retrieve-from-symbol|artist-intersection-char|artist-is-in-op-list-p|artist-key-do-continously-1point|artist-key-do-continously-2points|artist-key-do-continously-common)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:artist-key-do-continously-continously|artist-key-do-continously-poly|artist-key-draw-1point|artist-key-draw-2points|artist-key-draw-common|artist-key-draw-continously|artist-key-draw-poly|artist-key-set-point-1point|artist-key-set-point-2points|artist-key-set-point-common|artist-key-set-point-continously|artist-key-set-point-poly|artist-key-set-point|artist-key-undraw-1point|artist-key-undraw-2points|artist-key-undraw-common|artist-key-undraw-continously|artist-key-undraw-poly|artist-make-2point-object|artist-make-arrow-point|artist-make-endpoint|artist-make-prev-next-op-alist|artist-mn-get-items|artist-mn-get-title|artist-mode-exit|artist-mode-init|artist-mode-line-show-curr-operation|artist-mode-off|artist-mode|artist-modify-new-chars|artist-mouse-choose-operation|artist-mouse-draw-1point|artist-mouse-draw-2points|artist-mouse-draw-continously|artist-mouse-draw-poly|artist-move-to-xy|artist-mt-get-info-part|artist-mt-get-symbol-from-keyword-sub|artist-mt-get-symbol-from-keyword|artist-mt-get-tag|artist-new-coord|artist-new-fill-item|artist-next-line|artist-nil|artist-no-arrows|artist-no-rb-set-point1|artist-no-rb-set-point2|artist-no-rb-unset-point1|artist-no-rb-unset-point2|artist-no-rb-unset-points|artist-paste|artist-pen-line|artist-pen-reset-last-xy|artist-pen-set-arrow-points|artist-pen|artist-previous-line|artist-put-pixel|artist-rect-corners-squarify|artist-replace-char|artist-replace-chars|artist-replace-string|artist-save-chars-under-point-list|artist-save-chars-under-sline|artist-select-erase-char|artist-select-fill-char|artist-select-line-char|artist-select-next-op-in-list|artist-select-op-circle|artist-select-op-copy-rectangle|artist-select-op-copy-square|artist-select-op-cut-rectangle|artist-select-op-cut-square|artist-select-op-ellipse|artist-select-op-erase-char|artist-select-op-erase-rectangle|artist-select-op-flood-fill|artist-select-op-line|artist-select-op-paste|artist-select-op-pen-line|artist-select-op-poly-line|artist-select-op-rectangle|artist-select-op-spray-can|artist-select-op-spray-set-size|artist-select-op-square|artist-select-op-straight-line|artist-select-op-straight-poly-line|artist-select-op-text-overwrite|artist-select-op-text-see-thru|artist-select-op-vaporize-line|artist-select-op-vaporize-lines|artist-select-operation|artist-select-prev-op-in-list|artist-select-spray-chars|artist-set-arrow-points-for-2points|artist-set-arrow-points-for-poly|artist-set-pointer-shape|artist-shift-has-changed|artist-sline|artist-spray-clear-circle|artist-spray-get-interval|artist-spray-random-points|artist-spray-set-radius|artist-spray|artist-straight-calculate-length|artist-string-split|artist-string-to-charlist|artist-string-to-file|artist-submit-bug-report|artist-system|artist-t-if-fill-char-set|artist-t|artist-text-insert-common|artist-text-insert-overwrite|artist-text-insert-see-thru|artist-text-overwrite|artist-text-see-thru|artist-toggle-borderless-shapes|artist-toggle-first-arrow|artist-toggle-rubber-banding|artist-toggle-second-arrow|artist-toggle-trim-line-endings|artist-undraw-circle|artist-undraw-ellipse|artist-undraw-line|artist-undraw-rect|artist-undraw-sline|artist-undraw-square|artist-unintersection-char|artist-uniq|artist-update-display|artist-update-pointer-shape|artist-vap-find-endpoint|artist-vap-find-endpoints-horiz|artist-vap-find-endpoints-nwse|artist-vap-find-endpoints-swne|artist-vap-find-endpoints-vert|artist-vap-find-endpoints|artist-vap-group-in-pairs|artist-vaporize-by-endpoints|artist-vaporize-line|artist-vaporize-lines|asm-calculate-indentation|asm-colon|asm-comment|asm-indent-line|asm-mode|asm-newline|assert|assoc\\\\\\\\*|assoc-if-not|assoc-if|assoc-ignore-case|assoc-ignore-representation|async-shell-command|atomic-change-group|auth-source--aget|auth-source--aput-1|auth-source--aput|auth-source-backend-child-p|auth-source-backend-list-p|auth-source-backend-p|auth-source-backend-parse-parameters|auth-source-backend-parse|auth-source-backend|auth-source-current-line|auth-source-delete|auth-source-do-debug|auth-source-do-trivia|auth-source-do-warn|auth-source-ensure-strings|auth-source-epa-extract-gpg-token|auth-source-epa-make-gpg-token|auth-source-forget\\\\\\\\+|auth-source-forget-all-cached|auth-source-forget|auth-source-format-cache-entry|auth-source-format-prompt|auth-source-macos-keychain-create|auth-source-macos-keychain-result-append|auth-source-macos-keychain-search-items|auth-source-macos-keychain-search|auth-source-netrc-create|auth-source-netrc-element-or-first|auth-source-netrc-normalize|auth-source-netrc-parse-entries|auth-source-netrc-parse-next-interesting|auth-source-netrc-parse-one|auth-source-netrc-parse|auth-source-netrc-saver|auth-source-netrc-search|auth-source-pick-first-password|auth-source-plstore-create|auth-source-plstore-search|auth-source-read-char-choice|auth-source-recall|auth-source-remember|auth-source-remembered-p|auth-source-search-backends|auth-source-search-collection|auth-source-search|auth-source-secrets-create|auth-source-secrets-listify-pattern|auth-source-secrets-search|auth-source-specmatchp|auth-source-token-passphrase-callback-function|auth-source-user-and-password|auth-source-user-or-password|auto-coding-alist-lookup|auto-coding-regexp-alist-lookup|auto-compose-chars|auto-composition-mode|auto-compression-mode|auto-encryption-mode|auto-fill-mode|auto-image-file-mode|auto-insert-mode|auto-insert|auto-lower-mode|auto-raise-mode|auto-revert-active-p|auto-revert-buffers|auto-revert-handler|auto-revert-mode|auto-revert-notify-add-watch|auto-revert-notify-handler|auto-revert-notify-rm-watch|auto-revert-set-timer|auto-revert-tail-handler|auto-revert-tail-mode|autoarg-kp-digit-argument|autoarg-kp-mode|autoarg-mode|autoarg-terminate|autoconf-current-defun-function|autoconf-mode|autodoc-font-lock-keywords|autodoc-font-lock-line-markup|autoload-coding-system|autoload-rubric|avl-tree--check-node|avl-tree--check|avl-tree--cmpfun--cmacro|avl-tree--cmpfun|avl-tree--create--cmacro|avl-tree--create|avl-tree--del-balance|avl-tree--dir-to-sign|avl-tree--do-copy|avl-tree--do-del-internal|avl-tree--do-delete|avl-tree--do-enter|avl-tree--dummyroot--cmacro|avl-tree--dummyroot|avl-tree--enter-balance|avl-tree--mapc|avl-tree--node-balance--cmacro|avl-tree--node-balance|avl-tree--node-branch|avl-tree--node-create--cmacro|avl-tree--node-create|avl-tree--node-data--cmacro|avl-tree--node-data|avl-tree--node-left--cmacro|avl-tree--node-left|avl-tree--node-right--cmacro|avl-tree--node-right|avl-tree--root|avl-tree--sign-to-dir|avl-tree--stack-create|avl-tree--stack-p--cmacro|avl-tree--stack-p|avl-tree--stack-repopulate|avl-tree--stack-reverse--cmacro|avl-tree--stack-reverse|avl-tree--stack-store--cmacro|avl-tree--stack-store|avl-tree--switch-dir|avl-tree-clear|avl-tree-compare-function|avl-tree-copy|avl-tree-create|avl-tree-delete|avl-tree-empty|avl-tree-enter|avl-tree-first|avl-tree-flatten|avl-tree-last|avl-tree-map|avl-tree-mapc|avl-tree-mapcar|avl-tree-mapf|avl-tree-member-p|avl-tree-member|avl-tree-p--cmacro|avl-tree-p|avl-tree-size|avl-tree-stack-empty-p|avl-tree-stack-first|avl-tree-stack-p|avl-tree-stack-pop|avl-tree-stack|awk-mode|babel-as-string|background-color-at-point|backquote-delay-process|backquote-list\\\\\\\\*-function|backquote-list\\\\\\\\*-macro|backquote-list\\\\\\\\*|backquote-listify|backquote-process|backquote|backtrace--locals|backtrace-eval|backup-buffer-copy|backup-extract-version|backward-delete-char|backward-ifdef|backward-kill-paragraph|backward-kill-sentence|backward-kill-sexp|backward-kill-word|backward-page|backward-paragraph|backward-sentence|backward-text-line|backward-up-list|bad-package-check|balance-windows-1|balance-windows-2|balance-windows-area-adjust|basic-save-buffer-1|basic-save-buffer-2|basic-save-buffer|bat-cmd-help|bat-mode|bat-run-args|bat-run|bat-template|batch-byte-compile-file|batch-byte-compile-if-not-done|batch-byte-recompile-directory|batch-info-validate|batch-texinfo-format|batch-titdic-convert|batch-unrmail|batch-update-autoloads|battery-bsd-apm|battery-format|battery-linux-proc-acpi|battery-linux-proc-apm|battery-linux-sysfs|battery-pmset|battery-search-for-one-match-in-files|battery-update-handler|battery-update|battery|bb-bol|bb-done|bb-down|bb-eol|bb-goto|bb-init-board|bb-insert-board|bb-left|bb-outside-box|bb-place-ball|bb-right|bb-romp|bb-show-bogus-balls-2|bb-show-bogus-balls|bb-trace-ray-2|bb-trace-ray|bb-up|bb-update-board|beginning-of-buffer-other-window|beginning-of-defun-raw|beginning-of-icon-defun|beginning-of-line-text|beginning-of-sexp|beginning-of-thing|beginning-of-visual-line|benchmark-elapse|benchmark-run-compiled|benchmark-run|benchmark|bib-capitalize-title-region|bib-capitalize-title|bib-find-key|bib-mode|bibtex-Article|bibtex-Book|bibtex-BookInBook|bibtex-Booklet|bibtex-Collection|bibtex-InBook|bibtex-InCollection|bibtex-InProceedings|bibtex-InReference|bibtex-MVBook|bibtex-MVCollection|bibtex-MVProceedings|bibtex-MVReference|bibtex-Manual|bibtex-MastersThesis|bibtex-Misc|bibtex-Online|bibtex-Patent|bibtex-Periodical|bibtex-PhdThesis|bibtex-Preamble|bibtex-Proceedings|bibtex-Reference|bibtex-Report|bibtex-String|bibtex-SuppBook|bibtex-SuppCollection|bibtex-SuppPeriodical|bibtex-TechReport|bibtex-Thesis|bibtex-Unpublished|bibtex-autofill-entry|bibtex-autokey-abbrev|bibtex-autokey-demangle-name|bibtex-autokey-demangle-title|bibtex-autokey-get-field|bibtex-autokey-get-names|bibtex-autokey-get-title|bibtex-autokey-get-year|bibtex-beginning-first-field|bibtex-beginning-of-entry|bibtex-beginning-of-field|bibtex-beginning-of-first-entry|bibtex-button-action|bibtex-button|bibtex-clean-entry|bibtex-complete-crossref-cleanup|bibtex-complete-string-cleanup|bibtex-complete|bibtex-completion-at-point-function|bibtex-convert-alien|bibtex-copy-entry-as-kill|bibtex-copy-field-as-kill|bibtex-copy-summary-as-kill|bibtex-count-entries|bibtex-current-line|bibtex-delete-whitespace|bibtex-display-entries|bibtex-dist|bibtex-edit-menu|bibtex-empty-field|bibtex-enclosing-field|bibtex-end-of-entry|bibtex-end-of-field|bibtex-end-of-name-in-field|bibtex-end-of-string|bibtex-end-of-text-in-field|bibtex-end-of-text-in-string|bibtex-entry-alist|bibtex-entry-index|bibtex-entry-left-delimiter|bibtex-entry-right-delimiter|bibtex-entry-update|bibtex-entry|bibtex-field-left-delimiter|bibtex-field-list|bibtex-field-re-init|bibtex-field-right-delimiter|bibtex-fill-entry|bibtex-fill-field-bounds|bibtex-fill-field|bibtex-find-crossref|bibtex-find-entry|bibtex-find-text-internal|bibtex-find-text|bibtex-flash-head|bibtex-font-lock-cite|bibtex-font-lock-crossref|bibtex-font-lock-url|bibtex-format-entry|bibtex-generate-autokey|bibtex-global-key-alist|bibtex-goto-line|bibtex-init-sort-entry-class-alist|bibtex-initialize|bibtex-insert-kill|bibtex-ispell-abstract|bibtex-ispell-entry|bibtex-key-in-head|bibtex-kill-entry|bibtex-kill-field|bibtex-lessp|bibtex-make-field|bibtex-make-optional-field|bibtex-map-entries|bibtex-mark-entry|bibtex-mode|bibtex-move-outside-of-entry|bibtex-name-in-field|bibtex-narrow-to-entry|bibtex-next-field|bibtex-parse-association|bibtex-parse-buffers-stealthily|bibtex-parse-entry|bibtex-parse-field-name|bibtex-parse-field-string|bibtex-parse-field-text|bibtex-parse-field|bibtex-parse-keys|bibtex-parse-preamble|bibtex-parse-string-postfix|bibtex-parse-string-prefix|bibtex-parse-string|bibtex-parse-strings|bibtex-pop-next|bibtex-pop-previous|bibtex-pop|bibtex-prepare-new-entry|bibtex-print-help-message|bibtex-progress-message|bibtex-read-key|bibtex-read-string-key|bibtex-realign|bibtex-reference-key-in-string|bibtex-reformat|bibtex-remove-OPT-or-ALT|bibtex-remove-delimiters|bibtex-reposition-window|bibtex-search-backward-field|bibtex-search-crossref|bibtex-search-entries|bibtex-search-entry|bibtex-search-forward-field|bibtex-search-forward-string|bibtex-set-dialect|bibtex-skip-to-valid-entry|bibtex-sort-buffer|bibtex-start-of-field|bibtex-start-of-name-in-field|bibtex-start-of-text-in-field|bibtex-start-of-text-in-string|bibtex-string-files-init|bibtex-string=|bibtex-strings|bibtex-style-calculate-indentation|bibtex-style-indent-line|bibtex-style-mode|bibtex-summary|bibtex-text-in-field-bounds|bibtex-text-in-field|bibtex-text-in-string|bibtex-type-in-head|bibtex-url|bibtex-valid-entry|bibtex-validate-globally|bibtex-validate|bibtex-vec-incr|bibtex-vec-push|bibtex-yank-pop|bibtex-yank|bidi-find-overridden-directionality)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:bidi-resolved-levels|binary-overwrite-mode|bindat--length-group|bindat--pack-group|bindat--pack-item|bindat--pack-u16|bindat--pack-u16r|bindat--pack-u24|bindat--pack-u24r|bindat--pack-u32|bindat--pack-u32r|bindat--pack-u8|bindat--unpack-group|bindat--unpack-item|bindat--unpack-u16|bindat--unpack-u16r|bindat--unpack-u24|bindat--unpack-u24r|bindat--unpack-u32|bindat--unpack-u32r|bindat--unpack-u8|bindat-format-vector|bindat-vector-to-dec|bindat-vector-to-hex|bindings--define-key|binhex-char-int|binhex-char-map|binhex-decode-region-external|binhex-decode-region-internal|binhex-decode-region|binhex-header|binhex-insert-char|binhex-push-char|binhex-string-big-endian|binhex-string-little-endian|binhex-update-crc|binhex-verify-crc|blackbox-mode|blackbox-redefine-key|blackbox|blink-cursor-check|blink-cursor-end|blink-cursor-mode|blink-cursor-start|blink-cursor-suspend|blink-cursor-timer-function|blink-matching-check-mismatch|blink-paren-post-self-insert-function|block|bookmark--jump-via|bookmark-alist-from-buffer|bookmark-all-names|bookmark-bmenu-1-window|bookmark-bmenu-2-window|bookmark-bmenu-any-marks|bookmark-bmenu-backup-unmark|bookmark-bmenu-bookmark|bookmark-bmenu-delete-backwards|bookmark-bmenu-delete|bookmark-bmenu-edit-annotation|bookmark-bmenu-ensure-position|bookmark-bmenu-execute-deletions|bookmark-bmenu-filter-alist-by-regexp|bookmark-bmenu-goto-bookmark|bookmark-bmenu-hide-filenames|bookmark-bmenu-list|bookmark-bmenu-load|bookmark-bmenu-locate|bookmark-bmenu-mark|bookmark-bmenu-mode|bookmark-bmenu-other-window-with-mouse|bookmark-bmenu-other-window|bookmark-bmenu-relocate|bookmark-bmenu-rename|bookmark-bmenu-save|bookmark-bmenu-search|bookmark-bmenu-select|bookmark-bmenu-set-header|bookmark-bmenu-show-all-annotations|bookmark-bmenu-show-annotation|bookmark-bmenu-show-filenames|bookmark-bmenu-surreptitiously-rebuild-list|bookmark-bmenu-switch-other-window|bookmark-bmenu-this-window|bookmark-bmenu-toggle-filenames|bookmark-bmenu-unmark|bookmark-buffer-file-name|bookmark-buffer-name|bookmark-completing-read|bookmark-default-annotation-text|bookmark-default-handler|bookmark-delete|bookmark-edit-annotation-mode|bookmark-edit-annotation|bookmark-exit-hook-internal|bookmark-get-annotation|bookmark-get-bookmark-record|bookmark-get-bookmark|bookmark-get-filename|bookmark-get-front-context-string|bookmark-get-handler|bookmark-get-position|bookmark-get-rear-context-string|bookmark-grok-file-format-version|bookmark-handle-bookmark|bookmark-import-new-list|bookmark-insert-annotation|bookmark-insert-file-format-version-stamp|bookmark-insert-location|bookmark-insert|bookmark-jump-noselect|bookmark-jump-other-window|bookmark-jump|bookmark-kill-line|bookmark-load|bookmark-locate|bookmark-location|bookmark-make-record-default|bookmark-make-record|bookmark-map|bookmark-maybe-historicize-string|bookmark-maybe-load-default-file|bookmark-maybe-message|bookmark-maybe-rename|bookmark-maybe-sort-alist|bookmark-maybe-upgrade-file-format|bookmark-menu-popup-paned-menu|bookmark-name-from-full-record|bookmark-prop-get|bookmark-prop-set|bookmark-relocate|bookmark-rename|bookmark-save|bookmark-send-edited-annotation|bookmark-set-annotation|bookmark-set-filename|bookmark-set-front-context-string|bookmark-set-name|bookmark-set-position|bookmark-set-rear-context-string|bookmark-set|bookmark-show-all-annotations|bookmark-show-annotation|bookmark-store|bookmark-time-to-save-p|bookmark-unload-function|bookmark-upgrade-file-format-from-0|bookmark-upgrade-version-0-alist|bookmark-write-file|bookmark-write|bookmark-yank-word|bool-vector|bound-and-true-p|bounds-of-thing-at-point|bovinate|bovine-grammar-mode|browse-url-at-mouse|browse-url-at-point|browse-url-can-use-xdg-open|browse-url-cci|browse-url-chromium|browse-url-default-browser|browse-url-default-macosx-browser|browse-url-default-windows-browser|browse-url-delete-temp-file|browse-url-elinks-new-window|browse-url-elinks-sentinel|browse-url-elinks|browse-url-emacs-display|browse-url-emacs|browse-url-encode-url|browse-url-epiphany-sentinel|browse-url-epiphany|browse-url-file-url|browse-url-firefox-sentinel|browse-url-firefox|browse-url-galeon-sentinel|browse-url-galeon|browse-url-generic|browse-url-gnome-moz|browse-url-interactive-arg|browse-url-kde|browse-url-mail|browse-url-maybe-new-window|browse-url-mosaic|browse-url-mozilla-sentinel|browse-url-mozilla|browse-url-netscape-reload|browse-url-netscape-send|browse-url-netscape-sentinel|browse-url-netscape|browse-url-of-buffer|browse-url-of-dired-file|browse-url-of-file|browse-url-of-region|browse-url-process-environment|browse-url-text-emacs|browse-url-text-xterm|browse-url-url-at-point|browse-url-url-encode-chars|browse-url-w3-gnudoit|browse-url-w3|browse-url-xdg-open|browse-url|browse-web|bs--configuration-name-for-prefix-arg|bs--create-header-line|bs--current-buffer|bs--current-config-message|bs--down|bs--format-aux|bs--get-file-name|bs--get-marked-string|bs--get-mode-name|bs--get-modified-string|bs--get-name-length|bs--get-name|bs--get-readonly-string|bs--get-size-string|bs--get-value|bs--goto-current-buffer|bs--insert-one-entry|bs--make-header-match-string|bs--mark-unmark|bs--nth-wrapper|bs--redisplay|bs--remove-hooks|bs--restore-window-config|bs--set-toggle-to-show|bs--set-window-height|bs--show-config-message|bs--show-header|bs--show-with-configuration|bs--sort-by-filename|bs--sort-by-mode|bs--sort-by-name|bs--sort-by-size|bs--track-window-changes|bs--up|bs--update-current-line|bs-abort|bs-apply-sort-faces|bs-buffer-list|bs-buffer-sort|bs-bury-buffer|bs-clear-modified|bs-config--all-intern-last|bs-config--all|bs-config--files-and-scratch|bs-config--only-files|bs-config-clear|bs-customize|bs-cycle-next|bs-cycle-previous|bs-define-sort-function|bs-delete-backward|bs-delete|bs-down|bs-help|bs-kill|bs-mark-current|bs-message-without-log|bs-mode|bs-mouse-select-other-frame|bs-mouse-select|bs-next-buffer|bs-next-config-aux|bs-next-config|bs-previous-buffer|bs-refresh|bs-save|bs-select-in-one-window|bs-select-next-configuration|bs-select-other-frame|bs-select-other-window|bs-select|bs-set-configuration-and-refresh|bs-set-configuration|bs-set-current-buffer-to-show-always|bs-set-current-buffer-to-show-never|bs-show-in-buffer|bs-show-sorted|bs-show|bs-sort-buffer-interns-are-last|bs-tmp-select-other-window|bs-toggle-current-to-show|bs-toggle-readonly|bs-toggle-show-all|bs-unload-function|bs-unmark-current|bs-up|bs-view|bs-visit-tags-table|bs-visits-non-file|bubbles--char-at|bubbles--col|bubbles--colors|bubbles--compute-offsets|bubbles--count|bubbles--empty-char|bubbles--game-over|bubbles--goto|bubbles--grid-height|bubbles--grid-width|bubbles--initialize-faces|bubbles--initialize-images|bubbles--initialize|bubbles--mark-direct-neighbors|bubbles--mark-neighborhood|bubbles--neighborhood-available|bubbles--remove-overlays|bubbles--reset-score|bubbles--row|bubbles--set-faces|bubbles--shift-mode|bubbles--shift|bubbles--show-images|bubbles--show-scores|bubbles--update-faces-or-images|bubbles--update-neighborhood-score|bubbles--update-score|bubbles-customize|bubbles-mode|bubbles-plop|bubbles-quit|bubbles-save-settings|bubbles-set-game-difficult|bubbles-set-game-easy|bubbles-set-game-hard|bubbles-set-game-medium|bubbles-set-game-userdefined|bubbles-set-graphics-theme-ascii|bubbles-set-graphics-theme-balls|bubbles-set-graphics-theme-circles|bubbles-set-graphics-theme-diamonds|bubbles-set-graphics-theme-emacs|bubbles-set-graphics-theme-squares|bubbles-undo|bubbles|buffer-face-mode-invoke|buffer-face-mode|buffer-face-set|buffer-face-toggle|buffer-has-markers-at|buffer-menu-open|buffer-menu-other-window|buffer-menu|buffer-stale--default-function|buffer-substring--filter|buffer-substring-with-bidi-context|bug-reference-fontify|bug-reference-mode|bug-reference-prog-mode|bug-reference-push-button|bug-reference-set-overlay-properties|bug-reference-unfontify|build-mail-abbrevs|build-mail-aliases|bury-buffer-internal|butterfly|button--area-button-p|button--area-button-string|button-category-symbol|byte-code|byte-compile--declare-var|byte-compile--reify-function|byte-compile-abbreviate-file|byte-compile-and-folded|byte-compile-and-recursion|byte-compile-and|byte-compile-annotate-call-tree|byte-compile-arglist-signature-string|byte-compile-arglist-signature|byte-compile-arglist-signatures-congruent-p|byte-compile-arglist-vars|byte-compile-arglist-warn|byte-compile-associative|byte-compile-autoload|byte-compile-backward-char|byte-compile-backward-word|byte-compile-bind|byte-compile-body-do-effect|byte-compile-body|byte-compile-butlast|byte-compile-callargs-warn|byte-compile-catch|byte-compile-char-before|byte-compile-check-lambda-list|byte-compile-check-variable|byte-compile-cl-file-p|byte-compile-cl-warn|byte-compile-close-variables|byte-compile-concat|byte-compile-cond|byte-compile-condition-case--new|byte-compile-condition-case--old|byte-compile-condition-case|byte-compile-constant|byte-compile-constants-vector|byte-compile-defvar|byte-compile-delete-first|byte-compile-dest-file|byte-compile-disable-warning|byte-compile-discard|byte-compile-dynamic-variable-bind|byte-compile-dynamic-variable-op|byte-compile-enable-warning|byte-compile-eval-before-compile|byte-compile-eval|byte-compile-fdefinition|byte-compile-file-form-autoload|byte-compile-file-form-custom-declare-variable|byte-compile-file-form-defalias|byte-compile-file-form-define-abbrev-table|byte-compile-file-form-defmumble|byte-compile-file-form-defvar|byte-compile-file-form-eval|byte-compile-file-form-progn|byte-compile-file-form-require|byte-compile-file-form-with-no-warnings|byte-compile-file-form|byte-compile-find-bound-condition|byte-compile-find-cl-functions|byte-compile-fix-header|byte-compile-flush-pending|byte-compile-form-do-effect|byte-compile-form-make-variable-buffer-local|byte-compile-form|byte-compile-format-warn|byte-compile-from-buffer|byte-compile-fset|byte-compile-funcall|byte-compile-function-form|byte-compile-function-warn|byte-compile-get-closed-var|byte-compile-get-constant|byte-compile-goto-if|byte-compile-goto|byte-compile-if|byte-compile-indent-to|byte-compile-inline-expand|byte-compile-inline-lapcode|byte-compile-insert-header|byte-compile-insert|byte-compile-keep-pending|byte-compile-lambda-form|byte-compile-lambda|byte-compile-lapcode|byte-compile-let|byte-compile-list|byte-compile-log-1|byte-compile-log-file|byte-compile-log-lap-1|byte-compile-log-lap|byte-compile-log-warning|byte-compile-log|byte-compile-macroexpand-declare-function|byte-compile-make-args-desc|byte-compile-make-closure|byte-compile-make-lambda-lexenv|byte-compile-make-obsolete-variable|byte-compile-make-tag|byte-compile-make-variable-buffer-local|byte-compile-maybe-guarded|byte-compile-minus|byte-compile-nconc|byte-compile-negated|byte-compile-negation-optimizer|byte-compile-nilconstp|byte-compile-no-args|byte-compile-no-warnings|byte-compile-nogroup-warn|byte-compile-noop|byte-compile-normal-call|byte-compile-not-lexical-var-p|byte-compile-one-arg|byte-compile-one-or-two-args|byte-compile-or-recursion|byte-compile-or|byte-compile-out-tag|byte-compile-out-toplevel|byte-compile-out|byte-compile-output-as-comment|byte-compile-output-docform|byte-compile-output-file-form|byte-compile-preprocess|byte-compile-print-syms|byte-compile-prog1|byte-compile-prog2|byte-compile-progn|byte-compile-push-binding-init|byte-compile-push-bytecode-const2|byte-compile-push-bytecodes|byte-compile-push-constant|byte-compile-quo|byte-compile-quote|byte-compile-recurse-toplevel|byte-compile-refresh-preloaded|byte-compile-report-error|byte-compile-report-ops|byte-compile-save-current-buffer|byte-compile-save-excursion|byte-compile-save-restriction|byte-compile-set-default|byte-compile-set-symbol-position|byte-compile-setq-default|byte-compile-setq|byte-compile-sexp|byte-compile-stack-adjustment|byte-compile-stack-ref|byte-compile-stack-set|byte-compile-subr-wrong-args|byte-compile-three-args|byte-compile-top-level-body|byte-compile-top-level|byte-compile-toplevel-file-form|byte-compile-trueconstp|byte-compile-two-args|byte-compile-two-or-three-args|byte-compile-unbind|byte-compile-unfold-bcf|byte-compile-unfold-lambda|byte-compile-unwind-protect|byte-compile-variable-ref)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:byte-compile-variable-set|byte-compile-warn-about-unresolved-functions|byte-compile-warn-obsolete|byte-compile-warn|byte-compile-warning-enabled-p|byte-compile-warning-prefix|byte-compile-warning-series|byte-compile-while|byte-compile-zero-or-one-arg|byte-compiler-base-file-name|byte-decompile-bytecode-1|byte-decompile-bytecode|byte-defop-compiler-1|byte-defop-compiler|byte-defop|byte-extrude-byte-code-vectors|byte-force-recompile|byte-optimize-all-constp|byte-optimize-and|byte-optimize-apply|byte-optimize-approx-equal|byte-optimize-associative-math|byte-optimize-binary-predicate|byte-optimize-body|byte-optimize-cond|byte-optimize-delay-constants-math|byte-optimize-divide|byte-optimize-form-code-walker|byte-optimize-form|byte-optimize-funcall|byte-optimize-identity|byte-optimize-if|byte-optimize-inline-handler|byte-optimize-lapcode|byte-optimize-letX|byte-optimize-logmumble|byte-optimize-minus|byte-optimize-multiply|byte-optimize-nonassociative-math|byte-optimize-nth|byte-optimize-nthcdr|byte-optimize-or|byte-optimize-plus|byte-optimize-predicate|byte-optimize-quote|byte-optimize-set|byte-optimize-while|byte-recompile-file|byteorder|c\\\\\\\\+\\\\\\\\+-font-lock-keywords-2|c\\\\\\\\+\\\\\\\\+-font-lock-keywords-3|c\\\\\\\\+\\\\\\\\+-font-lock-keywords|c\\\\\\\\+\\\\\\\\+-mode|c--macroexpand-all|c-add-class-syntax|c-add-language|c-add-stmt-syntax|c-add-style|c-add-syntax|c-add-type|c-advise-fl-for-region|c-after-change-check-<>-operators|c-after-change|c-after-conditional|c-after-font-lock-init|c-after-special-operator-id|c-after-statement-terminator-p|c-append-backslashes-forward|c-append-lower-brace-pair-to-state-cache|c-append-syntax|c-append-to-state-cache|c-ascertain-following-literal|c-ascertain-preceding-literal|c-at-expression-start-p|c-at-macro-vsemi-p|c-at-statement-start-p|c-at-toplevel-p|c-at-vsemi-p|c-awk-menu|c-back-over-illiterals|c-back-over-member-initializer-braces|c-back-over-member-initializers|c-backslash-region|c-backward-<>-arglist|c-backward-colon-prefixed-type|c-backward-comments|c-backward-conditional|c-backward-into-nomenclature|c-backward-over-enum-header|c-backward-sexp|c-backward-single-comment|c-backward-sws|c-backward-syntactic-ws|c-backward-to-block-anchor|c-backward-to-decl-anchor|c-backward-to-nth-BOF-\\\\\\\\{|c-backward-token-1|c-backward-token-2|c-basic-common-init|c-before-change-check-<>-operators|c-before-change|c-before-hack-hook|c-beginning-of-current-token|c-beginning-of-decl-1|c-beginning-of-defun-1|c-beginning-of-defun|c-beginning-of-inheritance-list|c-beginning-of-macro|c-beginning-of-sentence-in-comment|c-beginning-of-sentence-in-string|c-beginning-of-statement-1|c-beginning-of-statement|c-beginning-of-syntax|c-benign-error|c-bind-special-erase-keys|c-block-in-arglist-dwim|c-bos-pop-state-and-retry|c-bos-pop-state|c-bos-push-state|c-bos-report-error|c-bos-restore-pos|c-bos-save-error-info|c-bos-save-pos|c-brace-anchor-point|c-brace-newlines|c-c\\\\\\\\+\\\\\\\\+-menu|c-c-menu|c-calc-comment-indent|c-calc-offset|c-calculate-state|c-change-set-fl-decl-start|c-cheap-inside-bracelist-p|c-check-type|c-clear-<-pair-props-if-match-after|c-clear-<-pair-props|c-clear-<>-pair-props|c-clear->-pair-props-if-match-before|c-clear->-pair-props|c-clear-c-type-property|c-clear-char-properties|c-clear-char-property-with-value-function|c-clear-char-property-with-value|c-clear-char-property|c-clear-cpp-delimiters|c-clear-found-types|c-collect-line-comments|c-comment-indent|c-comment-line-break-function|c-comment-out-cpps|c-common-init|c-compose-keywords-list|c-concat-separated|c-constant-symbol|c-context-line-break|c-context-open-line|c-context-set-fl-decl-start|c-count-cfss|c-cpp-define-name|c-crosses-statement-barrier-p|c-debug-add-face|c-debug-parse-state-double-cons|c-debug-parse-state|c-debug-put-decl-spot-faces|c-debug-remove-decl-spot-faces|c-debug-remove-face|c-debug-sws-msg|c-declaration-limits|c-declare-lang-variables|c-default-value-sentence-end|c-define-abbrev-table|c-define-lang-constant|c-defun-name|c-delete-and-extract-region|c-delete-backslashes-forward|c-delete-overlay|c-determine-\\\\\\\\+ve-limit|c-determine-limit-get-base|c-determine-limit|c-do-auto-fill|c-down-conditional-with-else|c-down-conditional|c-down-list-backward|c-down-list-forward|c-echo-parsing-error|c-electric-backspace|c-electric-brace|c-electric-colon|c-electric-continued-statement|c-electric-delete-forward|c-electric-delete|c-electric-indent-local-mode-hook|c-electric-indent-mode-hook|c-electric-lt-gt|c-electric-paren|c-electric-pound|c-electric-semi&comma|c-electric-slash|c-electric-star|c-end-of-current-token|c-end-of-decl-1|c-end-of-defun-1|c-end-of-defun|c-end-of-macro|c-end-of-sentence-in-comment|c-end-of-sentence-in-string|c-end-of-statement|c-evaluate-offset|c-extend-after-change-region|c-extend-font-lock-region-for-macros|c-extend-region-for-CPP|c-face-name-p|c-fdoc-shift-type-backward|c-fill-paragraph|c-find-assignment-for-mode|c-find-decl-prefix-search|c-find-decl-spots|c-find-invalid-doc-markup|c-fn-region-is-active-p|c-font-lock-<>-arglists|c-font-lock-c\\\\\\\\+\\\\\\\\+-new|c-font-lock-complex-decl-prepare|c-font-lock-declarations|c-font-lock-declarators|c-font-lock-doc-comments|c-font-lock-enclosing-decls|c-font-lock-enum-tail|c-font-lock-fontify-region|c-font-lock-init|c-font-lock-invalid-string|c-font-lock-keywords-2|c-font-lock-keywords-3|c-font-lock-keywords|c-font-lock-labels|c-font-lock-objc-method|c-font-lock-objc-methods|c-fontify-recorded-types-and-refs|c-fontify-types-and-refs|c-forward-<>-arglist-recur|c-forward-<>-arglist|c-forward-annotation|c-forward-comments|c-forward-conditional|c-forward-decl-or-cast-1|c-forward-id-comma-list|c-forward-into-nomenclature|c-forward-keyword-clause|c-forward-keyword-prefixed-id|c-forward-label|c-forward-name|c-forward-objc-directive|c-forward-over-cpp-define-id|c-forward-over-illiterals|c-forward-sexp|c-forward-single-comment|c-forward-sws|c-forward-syntactic-ws|c-forward-to-cpp-define-body|c-forward-to-nth-EOF-\\\\\\\\}|c-forward-token-1|c-forward-token-2|c-forward-type|c-get-cache-scan-pos|c-get-char-property|c-get-current-file|c-get-lang-constant|c-get-offset|c-get-style-variables|c-get-syntactic-indentation|c-gnu-impose-minimum|c-go-down-list-backward|c-go-down-list-forward|c-go-list-backward|c-go-list-forward|c-go-up-list-backward|c-go-up-list-forward|c-got-face-at|c-guess-accumulate-offset|c-guess-accumulate|c-guess-basic-syntax|c-guess-buffer-no-install|c-guess-buffer|c-guess-continued-construct|c-guess-current-offset|c-guess-dump-accumulator|c-guess-dump-guessed-style|c-guess-dump-guessed-values|c-guess-empty-line-p|c-guess-examine|c-guess-fill-prefix|c-guess-guess|c-guess-guessed-syntactic-symbols|c-guess-install|c-guess-make-basic-offset|c-guess-make-offsets-alist|c-guess-make-style|c-guess-merge-offsets-alists|c-guess-no-install|c-guess-region-no-install|c-guess-region|c-guess-reset-accumulator|c-guess-sort-accumulator|c-guess-style-name|c-guess-symbolize-integer|c-guess-symbolize-offsets-alist|c-guess-view-mark-guessed-entries|c-guess-view-reorder-offsets-alist-in-style|c-guess-view|c-guess|c-hungry-backspace|c-hungry-delete-backwards|c-hungry-delete-forward|c-hungry-delete|c-idl-menu|c-in-comment-line-prefix-p|c-in-function-trailer-p|c-in-gcc-asm-p|c-in-knr-argdecl|c-in-literal|c-in-method-def-p|c-indent-command|c-indent-defun|c-indent-exp|c-indent-line-or-region|c-indent-line|c-indent-multi-line-block|c-indent-new-comment-line|c-indent-one-line-block|c-indent-region|c-init-language-vars-for|c-initialize-builtin-style|c-initialize-cc-mode|c-inside-bracelist-p|c-int-to-char|c-intersect-lists|c-invalidate-find-decl-cache|c-invalidate-macro-cache|c-invalidate-state-cache-1|c-invalidate-state-cache|c-invalidate-sws-region-after|c-java-menu|c-just-after-func-arglist-p|c-keep-region-active|c-keyword-member|c-keyword-sym|c-lang-const|c-lang-defconst-eval-immediately|c-lang-defconst|c-lang-major-mode-is|c-langelem-2nd-pos|c-langelem-col|c-langelem-pos|c-langelem-sym|c-last-command-char|c-least-enclosing-brace|c-leave-cc-mode-mode|c-lineup-C-comments|c-lineup-ObjC-method-args-2|c-lineup-ObjC-method-args|c-lineup-ObjC-method-call-colons|c-lineup-ObjC-method-call|c-lineup-after-whitesmith-blocks|c-lineup-argcont-scan|c-lineup-argcont|c-lineup-arglist-close-under-paren|c-lineup-arglist-intro-after-paren|c-lineup-arglist-operators|c-lineup-arglist|c-lineup-assignments|c-lineup-cascaded-calls|c-lineup-close-paren|c-lineup-comment|c-lineup-cpp-define|c-lineup-dont-change|c-lineup-gcc-asm-reg|c-lineup-gnu-DEFUN-intro-cont|c-lineup-inexpr-block|c-lineup-java-inher|c-lineup-java-throws|c-lineup-knr-region-comment|c-lineup-math|c-lineup-multi-inher|c-lineup-respect-col-0|c-lineup-runin-statements|c-lineup-streamop|c-lineup-string-cont|c-lineup-template-args|c-lineup-topmost-intro-cont|c-lineup-whitesmith-in-block|c-list-found-types|c-literal-limits-fast|c-literal-limits|c-literal-type|c-looking-at-bos|c-looking-at-decl-block|c-looking-at-inexpr-block-backward|c-looking-at-inexpr-block|c-looking-at-non-alphnumspace|c-looking-at-special-brace-list|c-lookup-lists|c-macro-display-buffer|c-macro-expand|c-macro-expansion|c-macro-is-genuine-p|c-macro-vsemi-status-unknown-p|c-major-mode-is|c-make-bare-char-alt|c-make-font-lock-BO-decl-search-function|c-make-font-lock-context-search-function|c-make-font-lock-extra-types-blurb|c-make-font-lock-search-form|c-make-font-lock-search-function|c-make-inherited-keymap|c-make-inverse-face|c-make-keywords-re|c-make-macro-with-semi-re|c-make-styles-buffer-local|c-make-syntactic-matcher|c-mark-<-as-paren|c-mark->-as-paren|c-mark-function|c-mask-paragraph|c-mode-menu|c-mode-symbol|c-mode-var|c-mode|c-most-enclosing-brace|c-most-enclosing-decl-block|c-narrow-to-comment-innards|c-narrow-to-most-enclosing-decl-block|c-neutralize-CPP-line|c-neutralize-syntax-in-and-mark-CPP|c-newline-and-indent|c-next-single-property-change|c-objc-menu|c-on-identifier|c-one-line-string-p|c-outline-level|c-override-default-keywords|c-parse-state-1|c-parse-state-get-strategy|c-parse-state|c-partial-ws-p|c-pike-menu|c-point-syntax|c-point|c-populate-syntax-table|c-postprocess-file-styles|c-progress-fini|c-progress-init|c-progress-update|c-pull-open-brace|c-punctuation-in|c-put-c-type-property|c-put-char-property-fun|c-put-char-property|c-put-font-lock-face|c-put-font-lock-string-face|c-put-in-sws|c-put-is-sws|c-put-overlay|c-query-and-set-macro-start|c-query-macro-start|c-read-offset|c-real-parse-state|c-record-parse-state-state|c-record-ref-id|c-record-type-id|c-regexp-opt-depth|c-regexp-opt|c-region-is-active-p|c-remove-any-local-eval-or-mode-variables|c-remove-font-lock-face|c-remove-in-sws|c-remove-is-and-in-sws|c-remove-is-sws|c-remove-stale-state-cache-backwards|c-remove-stale-state-cache|c-renarrow-state-cache|c-replay-parse-state-state|c-restore-<->-as-parens|c-run-mode-hooks|c-safe-position|c-safe-scan-lists|c-safe|c-save-buffer-state|c-sc-parse-partial-sexp-no-category|c-sc-parse-partial-sexp|c-sc-scan-lists-no-category\\\\\\\\+1\\\\\\\\+1|c-sc-scan-lists-no-category\\\\\\\\+1-1|c-sc-scan-lists-no-category-1\\\\\\\\+1|c-sc-scan-lists-no-category-1-1|c-sc-scan-lists|c-scan-conditionals|c-scope-operator|c-search-backward-char-property|c-search-decl-header-end|c-search-forward-char-property|c-search-uplist-for-classkey|c-semi&comma-inside-parenlist|c-semi&comma-no-newlines-before-nonblanks|c-semi&comma-no-newlines-for-oneline-inliners|c-sentence-end|c-set-cpp-delimiters|c-set-fl-decl-start|c-set-offset|c-set-region-active|c-set-style-1|c-set-style|c-set-stylevar-fallback|c-setup-doc-comment-style|c-setup-filladapt|c-setup-paragraph-variables|c-shift-line-indentation|c-show-syntactic-information|c-simple-skip-symbol-backward|c-skip-comments-and-strings|c-skip-conditional|c-skip-ws-backward|c-skip-ws-forward|c-snug-1line-defun-close|c-snug-do-while|c-ssb-lit-begin|c-state-balance-parens-backwards|c-state-cache-after-top-paren|c-state-cache-init|c-state-cache-non-literal-place|c-state-cache-top-lparen|c-state-cache-top-paren|c-state-get-min-scan-pos|c-state-lit-beg|c-state-literal-at|c-state-mark-point-min-literal|c-state-maybe-marker|c-state-pp-to-literal|c-state-push-any-brace-pair|c-state-safe-place|c-state-semi-safe-place|c-submit-bug-report|c-subword-mode|c-suppress-<->-as-parens|c-syntactic-content|c-syntactic-end-of-macro|c-syntactic-information-on-region|c-syntactic-re-search-forward|c-syntactic-skip-backward|c-tentative-buffer-changes|c-tnt-chng-cleanup)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:c-tnt-chng-record-state|c-toggle-auto-hungry-state|c-toggle-auto-newline|c-toggle-auto-state|c-toggle-electric-state|c-toggle-hungry-state|c-toggle-parse-state-debug|c-toggle-syntactic-indentation|c-trim-found-types|c-try-one-liner|c-uncomment-out-cpps|c-unfind-coalesced-tokens|c-unfind-enclosing-token|c-unfind-type|c-unmark-<->-as-paren|c-up-conditional-with-else|c-up-conditional|c-up-list-backward|c-up-list-forward|c-update-modeline|c-valid-offset|c-version|c-vsemi-status-unknown-p|c-whack-state-after|c-whack-state-before|c-where-wrt-brace-construct|c-while-widening-to-decl-block|c-widen-to-enclosing-decl-scope|c-with-<->-as-parens-suppressed|c-with-all-but-one-cpps-commented-out|c-with-cpps-commented-out|c-with-syntax-table|caaaar|caaadr|caaar|caadar|caaddr|caadr|cadaar|cadadr|cadar|caddar|cadddr|caddr|cal-html-cursor-month|cal-html-cursor-year|cal-menu-context-mouse-menu|cal-menu-global-mouse-menu|cal-menu-holiday-window-suffix|cal-menu-set-date-title|cal-menu-x-popup-menu|cal-tex-cursor-day|cal-tex-cursor-filofax-2week|cal-tex-cursor-filofax-daily|cal-tex-cursor-filofax-week|cal-tex-cursor-filofax-year|cal-tex-cursor-month-landscape|cal-tex-cursor-month|cal-tex-cursor-week-iso|cal-tex-cursor-week-monday|cal-tex-cursor-week|cal-tex-cursor-week2-summary|cal-tex-cursor-week2|cal-tex-cursor-year-landscape|cal-tex-cursor-year|calc-alg-digit-entry|calc-alg-entry|calc-algebraic-entry|calc-align-stack-window|calc-auto-algebraic-entry|calc-big-or-small|calc-binary-op|calc-change-sign|calc-check-defines|calc-check-stack|calc-check-trail-aligned|calc-check-user-syntax|calc-clear-unread-commands|calc-count-lines|calc-create-buffer|calc-cursor-stack-index|calc-dispatch-help|calc-dispatch|calc-divide|calc-do-alg-entry|calc-do-calc-eval|calc-do-dispatch|calc-do-embedded-activate|calc-do-handle-whys|calc-do-quick-calc|calc-do-refresh|calc-do|calc-embedded-activate|calc-embedded|calc-enter-result|calc-enter|calc-eval|calc-get-stack-element|calc-grab-rectangle|calc-grab-region|calc-grab-sum-across|calc-grab-sum-down|calc-handle-whys|calc-help|calc-info-goto-node|calc-info-summary|calc-info|calc-inv|calc-keypad|calc-kill-stack-buffer|calc-last-args-stub|calc-left-divide|calc-match-user-syntax|calc-minibuffer-contains|calc-minibuffer-size|calc-minus|calc-missing-key|calc-mod|calc-mode-var-list-restore-default-values|calc-mode-var-list-restore-saved-values|calc-normalize|calc-num-prefix-name|calc-other-window|calc-over|calc-percent|calc-plus|calc-pop-above|calc-pop-push-list|calc-pop-push-record-list|calc-pop-stack|calc-pop|calc-power|calc-push-list|calc-quit|calc-read-key-sequence|calc-read-key|calc-record-list|calc-record-undo|calc-record-why|calc-record|calc-refresh|calc-renumber-stack|calc-report-bug|calc-roll-down-stack|calc-roll-down|calc-roll-up-stack|calc-roll-up|calc-same-interface|calc-select-buffer|calc-set-command-flag|calc-set-mode-line|calc-shift-Y-prefix-help|calc-slow-wrapper|calc-stack-size|calc-substack-height|calc-temp-minibuffer-message|calc-times|calc-top-list-n|calc-top-list|calc-top-n|calc-top|calc-trail-buffer|calc-trail-display|calc-trail-here|calc-transpose-lines|calc-tutorial|calc-unary-op|calc-undo|calc-unread-command|calc-user-invocation|calc-window-width|calc-with-default-simplification|calc-with-trail-buffer|calc-wrapper|calc-yank|calc|calcDigit-algebraic|calcDigit-backspace|calcDigit-edit|calcDigit-key|calcDigit-letter|calcDigit-nondigit|calcDigit-start|calcFunc-floor|calcFunc-inv|calcFunc-trunc|calculate-icon-indent|calculate-lisp-indent|calculate-tcl-indent|calculator-add-operators|calculator-backspace|calculator-clear-fragile|calculator-clear-saved|calculator-clear|calculator-close-paren|calculator-copy|calculator-dec\\\\\\\\/deg-mode|calculator-decimal|calculator-digit|calculator-displayer-next|calculator-displayer-prev|calculator-eng-display|calculator-enter|calculator-exp|calculator-expt|calculator-fact|calculator-funcall|calculator-get-display|calculator-get-register|calculator-groupize-number|calculator-help|calculator-last-input|calculator-menu|calculator-message|calculator-mode|calculator-need-3-lines|calculator-number-to-string|calculator-op-arity|calculator-op-or-exp|calculator-op-prec|calculator-op|calculator-open-paren|calculator-paste|calculator-push-curnum|calculator-put-value|calculator-quit|calculator-radix-input-mode|calculator-radix-mode|calculator-radix-output-mode|calculator-reduce-stack-once|calculator-reduce-stack|calculator-remove-zeros|calculator-repL|calculator-repR|calculator-reset|calculator-rotate-displayer-back|calculator-rotate-displayer|calculator-save-and-quit|calculator-save-on-list|calculator-saved-down|calculator-saved-move|calculator-saved-up|calculator-set-register|calculator-standard-displayer|calculator-string-to-number|calculator-truncate|calculator-update-display|calculator|calendar-abbrev-construct|calendar-absolute-from-gregorian|calendar-astro-date-string|calendar-astro-from-absolute|calendar-astro-goto-day-number|calendar-astro-print-day-number|calendar-astro-to-absolute|calendar-backward-day|calendar-backward-month|calendar-backward-week|calendar-backward-year|calendar-bahai-date-string|calendar-bahai-goto-date|calendar-bahai-mark-date-pattern|calendar-bahai-print-date|calendar-basic-setup|calendar-beginning-of-month|calendar-beginning-of-week|calendar-beginning-of-year|calendar-buffer-list|calendar-check-holidays|calendar-chinese-date-string|calendar-chinese-goto-date|calendar-chinese-print-date|calendar-column-to-segment|calendar-coptic-date-string|calendar-coptic-goto-date|calendar-coptic-print-date|calendar-count-days-region|calendar-current-date|calendar-cursor-holidays|calendar-cursor-to-date|calendar-cursor-to-nearest-date|calendar-cursor-to-visible-date|calendar-customized-p|calendar-date-compare|calendar-date-equal|calendar-date-is-valid-p|calendar-date-is-visible-p|calendar-date-string|calendar-day-header-construct|calendar-day-name|calendar-day-number|calendar-day-of-week|calendar-day-of-year-string|calendar-dayname-on-or-before|calendar-end-of-month|calendar-end-of-week|calendar-end-of-year|calendar-ensure-newline|calendar-ethiopic-date-string|calendar-ethiopic-goto-date|calendar-ethiopic-print-date|calendar-exchange-point-and-mark|calendar-exit|calendar-extract-day|calendar-extract-month|calendar-extract-year|calendar-forward-day|calendar-forward-month|calendar-forward-week|calendar-forward-year|calendar-frame-setup|calendar-french-date-string|calendar-french-goto-date|calendar-french-print-date|calendar-generate-month|calendar-generate-window|calendar-generate|calendar-goto-date|calendar-goto-day-of-year|calendar-goto-info-node|calendar-goto-today|calendar-gregorian-from-absolute|calendar-hebrew-date-string|calendar-hebrew-goto-date|calendar-hebrew-list-yahrzeits|calendar-hebrew-mark-date-pattern|calendar-hebrew-print-date|calendar-holiday-list|calendar-in-read-only-buffer|calendar-increment-month-cons|calendar-increment-month|calendar-insert-at-column|calendar-interval|calendar-islamic-date-string|calendar-islamic-goto-date|calendar-islamic-mark-date-pattern|calendar-islamic-print-date|calendar-iso-date-string|calendar-iso-from-absolute|calendar-iso-goto-date|calendar-iso-goto-week|calendar-iso-print-date|calendar-julian-date-string|calendar-julian-from-absolute|calendar-julian-goto-date|calendar-julian-print-date|calendar-last-day-of-month|calendar-leap-year-p|calendar-list-holidays|calendar-lunar-phases|calendar-make-alist|calendar-make-temp-face|calendar-mark-1|calendar-mark-complex|calendar-mark-date-pattern|calendar-mark-days-named|calendar-mark-holidays|calendar-mark-month|calendar-mark-today|calendar-mark-visible-date|calendar-mayan-date-string|calendar-mayan-goto-long-count-date|calendar-mayan-next-haab-date|calendar-mayan-next-round-date|calendar-mayan-next-tzolkin-date|calendar-mayan-previous-haab-date|calendar-mayan-previous-round-date|calendar-mayan-previous-tzolkin-date|calendar-mayan-print-date|calendar-mode-line-entry|calendar-mode|calendar-month-edges|calendar-month-name|calendar-mouse-view-diary-entries|calendar-mouse-view-other-diary-entries|calendar-move-to-column|calendar-nongregorian-visible-p|calendar-not-implemented|calendar-nth-named-absday|calendar-nth-named-day|calendar-other-dates|calendar-other-month|calendar-persian-date-string|calendar-persian-goto-date|calendar-persian-print-date|calendar-print-day-of-year|calendar-print-other-dates|calendar-read-date|calendar-read|calendar-recompute-layout-variables|calendar-redraw|calendar-scroll-left-three-months|calendar-scroll-left|calendar-scroll-right-three-months|calendar-scroll-right|calendar-scroll-toolkit-scroll|calendar-set-date-style|calendar-set-layout-variable|calendar-set-mark|calendar-set-mode-line|calendar-star-date|calendar-string-spread|calendar-sum|calendar-sunrise-sunset-month|calendar-sunrise-sunset|calendar-unmark|calendar-update-mode-line|calendar-week-end-day|calendar|call-last-kbd-macro|call-next-method|callf|callf2|cancel-edebug-on-entry|cancel-function-timers|cancel-kbd-macro-events|cancel-timer-internal|canlock-insert-header|canlock-verify|canonicalize-coding-system-name|canonically-space-region|capitalized-words-mode|car-less-than-car|case-table-get-table|case|cc-choose-style-for-mode|cc-eval-when-compile|cc-imenu-init|cc-imenu-java-build-type-args-regex|cc-imenu-objc-function|cc-imenu-objc-method-to-selector|cc-imenu-objc-remove-white-space|ccl-compile|ccl-dump|ccl-execute-on-string|ccl-execute-with-args|ccl-execute|ccl-program-p|cconv--analyze-function|cconv--analyze-use|cconv--convert-function|cconv--map-diff-elem|cconv--map-diff-set|cconv--map-diff|cconv--set-diff-map|cconv--set-diff|cconv-analyse-form|cconv-analyze-form|cconv-closure-convert|cconv-convert|cconv-warnings-only|cd-absolute|cd|cdaaar|cdaadr|cdaar|cdadar|cdaddr|cdadr|cddaar|cddadr|cddar|cdddar|cddddr|cdddr|cdl-get-file|cdl-put-region|cedet-version|ceiling\\\\\\\\*|center-line|center-paragraph|center-region|cfengine-auto-mode|cfengine-common-settings|cfengine-common-syntax|cfengine-fill-paragraph|cfengine-mode|cfengine2-beginning-of-defun|cfengine2-end-of-defun|cfengine2-indent-line|cfengine2-mode|cfengine2-outline-level|cfengine3--current-function|cfengine3-beginning-of-defun|cfengine3-clear-syntax-cache|cfengine3-completion-function|cfengine3-create-imenu-index|cfengine3-current-defun|cfengine3-documentation-function|cfengine3-end-of-defun|cfengine3-format-function-docstring|cfengine3-indent-line|cfengine3-make-syntax-cache|cfengine3-mode|change-class|change-log-beginning-of-defun|change-log-end-of-defun|change-log-fill-forward-paragraph|change-log-fill-parenthesized-list|change-log-find-file|change-log-get-method-definition-1|change-log-get-method-definition|change-log-goto-source-1|change-log-goto-source|change-log-indent|change-log-merge|change-log-mode|change-log-name|change-log-next-buffer|change-log-next-error|change-log-resolve-conflict|change-log-search-file-name|change-log-search-tag-name-1|change-log-search-tag-name|change-log-sortable-date-at|change-log-version-number-search|char-resolve-modifiers|char-valid-p|charset-bytes|charset-chars|charset-description|charset-dimension|charset-id-internal|charset-id|charset-info|charset-iso-final-char|charset-long-name|charset-short-name|chart-add-sequence|chart-axis-child-p|chart-axis-draw|chart-axis-list-p|chart-axis-names-child-p|chart-axis-names-list-p|chart-axis-names-p|chart-axis-names|chart-axis-p|chart-axis-range-child-p|chart-axis-range-list-p|chart-axis-range-p|chart-axis-range|chart-axis|chart-bar-child-p|chart-bar-list-p|chart-bar-p|chart-bar-quickie|chart-bar|chart-child-p|chart-deface-rectangle|chart-display-label|chart-draw-axis|chart-draw-data|chart-draw-line|chart-draw-title|chart-draw|chart-emacs-lists|chart-emacs-storage|chart-file-count|chart-goto-xy|chart-list-p|chart-mode|chart-new-buffer|chart-p|chart-rmail-from|chart-sequece-child-p|chart-sequece-list-p|chart-sequece-p|chart-sequece|chart-size-in-dir|chart-sort-matchlist|chart-sort|chart-space-usage|chart-test-it-all|chart-translate-namezone|chart-translate-xpos|chart-translate-ypos|chart-trim|chart-zap-chars|chart|check-ccl-program|check-completion-length|check-declare-directory|check-declare-errmsg|check-declare-file|check-declare-files|check-declare-locate|check-declare-scan|check-declare-sort|check-declare-verify|check-declare-warn)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:check-face|check-ispell-version|check-parens|check-type|checkdoc-autofix-ask-replace|checkdoc-buffer-label|checkdoc-char=|checkdoc-comments|checkdoc-continue|checkdoc-create-common-verbs-regexp|checkdoc-create-error|checkdoc-current-buffer|checkdoc-defun-info|checkdoc-defun|checkdoc-delete-overlay|checkdoc-display-status-buffer|checkdoc-error-end|checkdoc-error-start|checkdoc-error-text|checkdoc-error-unfixable|checkdoc-error|checkdoc-eval-current-buffer|checkdoc-eval-defun|checkdoc-file-comments-engine|checkdoc-in-example-string-p|checkdoc-in-sample-code-p|checkdoc-interactive-ispell-loop|checkdoc-interactive-loop|checkdoc-interactive|checkdoc-ispell-comments|checkdoc-ispell-continue|checkdoc-ispell-current-buffer|checkdoc-ispell-defun|checkdoc-ispell-docstring-engine|checkdoc-ispell-init|checkdoc-ispell-interactive|checkdoc-ispell-message-interactive|checkdoc-ispell-message-text|checkdoc-ispell-start|checkdoc-ispell|checkdoc-list-of-strings-p|checkdoc-make-overlay|checkdoc-message-interactive-ispell-loop|checkdoc-message-interactive|checkdoc-message-text-engine|checkdoc-message-text-next-string|checkdoc-message-text-search|checkdoc-message-text|checkdoc-mode-line-update|checkdoc-next-docstring|checkdoc-next-error|checkdoc-next-message-error|checkdoc-output-mode|checkdoc-outside-major-sexp|checkdoc-overlay-end|checkdoc-overlay-put|checkdoc-overlay-start|checkdoc-proper-noun-region-engine|checkdoc-recursive-edit|checkdoc-rogue-space-check-engine|checkdoc-rogue-spaces|checkdoc-run-hooks|checkdoc-sentencespace-region-engine|checkdoc-show-diagnostics|checkdoc-start-section|checkdoc-start|checkdoc-this-string-valid-engine|checkdoc-this-string-valid|checkdoc-y-or-n-p|checkdoc|child-of-class-p|chmod|choose-completion-delete-max-match|choose-completion-guess-base-position|choose-completion-string|choose-completion|cl--adjoin|cl--arglist-args|cl--block-throw--cmacro|cl--block-throw|cl--block-wrapper--cmacro|cl--block-wrapper|cl--check-key|cl--check-match|cl--check-test-nokey|cl--check-test|cl--compile-time-too|cl--compiler-macro-adjoin|cl--compiler-macro-assoc|cl--compiler-macro-cXXr|cl--compiler-macro-get|cl--compiler-macro-list\\\\\\\\*|cl--compiler-macro-member|cl--compiler-macro-typep|cl--compiling-file|cl--const-expr-p|cl--const-expr-val|cl--defalias|cl--defsubst-expand|cl--delete-duplicates|cl--do-arglist|cl--do-prettyprint|cl--do-proclaim|cl--do-remf|cl--do-subst|cl--expand-do-loop|cl--expr-contains-any|cl--expr-contains|cl--expr-depends-p|cl--finite-do|cl--function-convert|cl--gv-adapt|cl--labels-convert|cl--letf|cl--loop-build-ands|cl--loop-handle-accum|cl--loop-let|cl--loop-set-iterator-function|cl--macroexp-fboundp|cl--make-type-test|cl--make-usage-args|cl--make-usage-var|cl--map-intervals|cl--map-keymap-recursively|cl--map-overlays|cl--mapcar-many|cl--nsublis-rec|cl--parse-loop-clause|cl--parsing-keywords|cl--pass-args-to-cl-declare|cl--pop2|cl--position|cl--random-time|cl--safe-expr-p|cl--set-buffer-substring|cl--set-frame-visible-p|cl--set-getf|cl--set-substring|cl--simple-expr-p|cl--simple-exprs-p|cl--sm-macroexpand|cl--struct-epg-context-p--cmacro|cl--struct-epg-context-p|cl--struct-epg-data-p--cmacro|cl--struct-epg-data-p|cl--struct-epg-import-result-p--cmacro|cl--struct-epg-import-result-p|cl--struct-epg-import-status-p--cmacro|cl--struct-epg-import-status-p|cl--struct-epg-key-p--cmacro|cl--struct-epg-key-p|cl--struct-epg-key-signature-p--cmacro|cl--struct-epg-key-signature-p|cl--struct-epg-new-signature-p--cmacro|cl--struct-epg-new-signature-p|cl--struct-epg-sig-notation-p--cmacro|cl--struct-epg-sig-notation-p|cl--struct-epg-signature-p--cmacro|cl--struct-epg-signature-p|cl--struct-epg-sub-key-p--cmacro|cl--struct-epg-sub-key-p|cl--struct-epg-user-id-p--cmacro|cl--struct-epg-user-id-p|cl--sublis-rec|cl--sublis|cl--transform-lambda|cl--tree-equal-rec|cl--unused-var-p|cl--wrap-in-nil-block|cl-caaaar|cl-caaadr|cl-caaar|cl-caadar|cl-caaddr|cl-caadr|cl-cadaar|cl-cadadr|cl-cadar|cl-caddar|cl-cadddr|cl-cdaaar|cl-cdaadr|cl-cdaar|cl-cdadar|cl-cdaddr|cl-cdadr|cl-cddaar|cl-cddadr|cl-cddar|cl-cdddar|cl-cddddr|cl-cdddr|cl-clrhash|cl-copy-seq|cl-copy-tree|cl-digit-char-p|cl-eighth|cl-fifth|cl-flet\\\\\\\\*|cl-floatp-safe|cl-fourth|cl-fresh-line|cl-gethash|cl-hash-table-count|cl-hash-table-p|cl-maclisp-member|cl-macroexpand-all|cl-macroexpand|cl-make-hash-table|cl-map-extents|cl-map-intervals|cl-map-keymap-recursively|cl-map-keymap|cl-maphash|cl-multiple-value-apply|cl-multiple-value-call|cl-multiple-value-list|cl-ninth|cl-not-hash-table|cl-nreconc|cl-nth-value|cl-parse-integer|cl-prettyprint|cl-puthash|cl-remhash|cl-revappend|cl-second|cl-set-getf|cl-seventh|cl-signum|cl-sixth|cl-struct-sequence-type|cl-struct-setf-expander|cl-struct-slot-info|cl-struct-slot-offset|cl-struct-slot-value--cmacro|cl-struct-slot-value|cl-svref|cl-tenth|cl-third|cl-unload-function|cl-values-list|cl-values|class-abstract-p|class-children|class-constructor|class-direct-subclasses|class-direct-superclasses|class-method-invocation-order|class-name|class-of|class-option-assoc|class-option|class-p|class-parent|class-parents|class-precedence-list|class-slot-initarg|class-v|clean-buffer-list-delay|clean-buffer-list|clear-all-completions|clear-buffer-auto-save-failure|clear-charset-maps|clear-face-cache|clear-font-cache|clear-rectangle-line|clear-rectangle|clipboard-kill-region|clipboard-kill-ring-save|clipboard-yank|clone-buffer|clone-indirect-buffer-other-window|clone-process|clone|close-display-connection|close-font|close-rectangle|cmpl-coerce-string-case|cmpl-hours-since-origin|cmpl-merge-string-cases|cmpl-prefix-entry-head|cmpl-prefix-entry-tail|cmpl-string-case-type|coding-system-base|coding-system-category|coding-system-doc-string|coding-system-eol-type-mnemonic|coding-system-equal|coding-system-from-name|coding-system-lessp|coding-system-mnemonic|coding-system-plist|coding-system-post-read-conversion|coding-system-pre-write-conversion|coding-system-put|coding-system-translation-table-for-decode|coding-system-translation-table-for-encode|coding-system-type|coerce|color-cie-de2000|color-clamp|color-complement-hex|color-complement|color-darken-hsl|color-darken-name|color-desaturate-hsl|color-desaturate-name|color-distance|color-gradient|color-hsl-to-rgb|color-hue-to-rgb|color-lab-to-srgb|color-lab-to-xyz|color-lighten-hsl|color-lighten-name|color-name-to-rgb|color-rgb-to-hex|color-rgb-to-hsl|color-rgb-to-hsv|color-saturate-hsl|color-saturate-name|color-srgb-to-lab|color-srgb-to-xyz|color-xyz-to-lab|color-xyz-to-srgb|column-number-mode|combine-after-change-execute|comint--complete-file-name-data|comint--match-partial-filename|comint--requote-argument|comint--unquote&expand-filename|comint--unquote&requote-argument|comint--unquote-argument|comint-accumulate|comint-add-to-input-history|comint-adjust-point|comint-adjust-window-point|comint-after-pmark-p|comint-append-output-to-file|comint-args|comint-arguments|comint-backward-matching-input|comint-bol-or-process-mark|comint-bol|comint-c-a-p-replace-by-expanded-history|comint-carriage-motion|comint-check-proc|comint-check-source|comint-completion-at-point|comint-completion-file-name-table|comint-continue-subjob|comint-copy-old-input|comint-delchar-or-maybe-eof|comint-delete-input|comint-delete-output|comint-delim-arg|comint-directory|comint-dynamic-complete-as-filename|comint-dynamic-complete-filename|comint-dynamic-complete|comint-dynamic-list-completions|comint-dynamic-list-filename-completions|comint-dynamic-list-input-ring-select|comint-dynamic-list-input-ring|comint-dynamic-simple-complete|comint-exec-1|comint-exec|comint-extract-string|comint-filename-completion|comint-forward-matching-input|comint-get-next-from-history|comint-get-old-input-default|comint-get-source|comint-goto-input|comint-goto-process-mark|comint-history-isearch-backward-regexp|comint-history-isearch-backward|comint-history-isearch-end|comint-history-isearch-message|comint-history-isearch-pop-state|comint-history-isearch-push-state|comint-history-isearch-search|comint-history-isearch-setup|comint-history-isearch-wrap|comint-how-many-region|comint-insert-input|comint-insert-previous-argument|comint-interrupt-subjob|comint-kill-input|comint-kill-region|comint-kill-subjob|comint-kill-whole-line|comint-line-beginning-position|comint-magic-space|comint-match-partial-filename|comint-mode|comint-next-input|comint-next-matching-input-from-input|comint-next-matching-input|comint-next-prompt|comint-output-filter|comint-postoutput-scroll-to-bottom|comint-preinput-scroll-to-bottom|comint-previous-input-string|comint-previous-input|comint-previous-matching-input-from-input|comint-previous-matching-input-string-position|comint-previous-matching-input-string|comint-previous-matching-input|comint-previous-prompt|comint-proc-query|comint-quit-subjob|comint-quote-filename|comint-read-input-ring|comint-read-noecho|comint-redirect-cleanup|comint-redirect-filter|comint-redirect-preoutput-filter|comint-redirect-remove-redirection|comint-redirect-results-list-from-process|comint-redirect-results-list|comint-redirect-send-command-to-process|comint-redirect-send-command|comint-redirect-setup|comint-regexp-arg|comint-replace-by-expanded-filename|comint-replace-by-expanded-history-before-point|comint-replace-by-expanded-history|comint-restore-input|comint-run|comint-search-arg|comint-search-start|comint-send-eof|comint-send-input|comint-send-region|comint-send-string|comint-set-process-mark|comint-show-maximum-output|comint-show-output|comint-simple-send|comint-skip-input|comint-skip-prompt|comint-snapshot-last-prompt|comint-source-default|comint-stop-subjob|comint-strip-ctrl-m|comint-substitute-in-file-name|comint-truncate-buffer|comint-unquote-filename|comint-update-fence|comint-watch-for-password-prompt|comint-within-quotes|comint-word|comint-write-input-ring|comint-write-output|command-apropos|command-error-default-function|command-history-mode|command-history-repeat|command-line-1|command-line-normalize-file-name|comment-add|comment-beginning|comment-box|comment-choose-indent|comment-dwim|comment-enter-backward|comment-forward|comment-indent-default|comment-indent-new-line|comment-indent|comment-kill|comment-make-extra-lines|comment-normalize-vars|comment-only-p|comment-or-uncomment-region|comment-padleft|comment-padright|comment-quote-nested|comment-quote-re|comment-region-default|comment-region-internal|comment-region|comment-search-backward|comment-search-forward|comment-set-column|comment-string-reverse|comment-string-strip|comment-valid-prefix-p|comment-with-narrowing|common-lisp-indent-function|common-lisp-mode|compare-windows-dehighlight|compare-windows-get-next-window|compare-windows-get-recent-window|compare-windows-highlight|compare-windows-skip-whitespace|compare-windows-sync-default-function|compare-windows-sync-regexp|compare-windows|compilation--compat-error-properties|compilation--compat-parse-errors|compilation--ensure-parse|compilation--file-struct->file-spec|compilation--file-struct->formats|compilation--file-struct->loc-tree|compilation--flush-directory-cache|compilation--flush-file-structure|compilation--flush-parse|compilation--loc->col|compilation--loc->file-struct|compilation--loc->line|compilation--loc->marker|compilation--loc->visited|compilation--make-cdrloc|compilation--make-file-struct|compilation--make-message--cmacro|compilation--make-message|compilation--message->end-loc--cmacro|compilation--message->end-loc|compilation--message->loc--cmacro|compilation--message->loc|compilation--message->type--cmacro|compilation--message->type|compilation--message-p--cmacro|compilation--message-p|compilation--parse-region|compilation--previous-directory|compilation--put-prop|compilation--remove-properties|compilation--unsetup|compilation-auto-jump|compilation-buffer-internal-p|compilation-buffer-name|compilation-buffer-p|compilation-button-map|compilation-directory-properties|compilation-display-error|compilation-error-properties|compilation-face|compilation-fake-loc|compilation-filter|compilation-find-buffer|compilation-find-file|compilation-forget-errors|compilation-get-file-structure|compilation-goto-locus-delete-o|compilation-goto-locus|compilation-handle-exit|compilation-internal-error-properties|compilation-loop|compilation-minor-mode|compilation-mode-font-lock-keywords|compilation-mode|compilation-move-to-column|compilation-next-error-function|compilation-next-error|compilation-next-file|compilation-next-single-property-change)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:compilation-parse-errors|compilation-previous-error|compilation-previous-file|compilation-read-command|compilation-revert-buffer|compilation-sentinel|compilation-set-skip-threshold|compilation-set-window-height|compilation-set-window|compilation-setup|compilation-shell-minor-mode|compilation-start|compile-goto-error|compile-mouse-goto-error|compile|compiler-macroexpand|complete-in-turn|complete-symbol|complete-tag|complete-with-action|complete|completing-read-default|completing-read-multiple|completion--cache-all-sorted-completions|completion--capf-wrapper|completion--common-suffix|completion--complete-and-exit|completion--cycle-threshold|completion--do-completion|completion--done|completion--embedded-envvar-table|completion--field-metadata|completion--file-name-table|completion--flush-all-sorted-completions|completion--in-region-1|completion--in-region|completion--insert-strings|completion--make-envvar-table|completion--merge-suffix|completion--message|completion--metadata|completion--nth-completion|completion--post-self-insert|completion--replace|completion--sifn-requote|completion--some|completion--string-equal-p|completion--styles|completion--try-word-completion|completion--twq-all|completion--twq-try|completion-all-completions|completion-all-sorted-completions|completion-backup-filename|completion-basic--pattern|completion-basic-all-completions|completion-basic-try-completion|completion-before-command|completion-c-mode-hook|completion-complete-and-exit|completion-def-wrapper|completion-emacs21-all-completions|completion-emacs21-try-completion|completion-emacs22-all-completions|completion-emacs22-try-completion|completion-file-name-table|completion-find-file-hook|completion-help-at-point|completion-hilit-commonality|completion-in-region--postch|completion-in-region--single-word|completion-in-region-mode|completion-initialize|completion-initials-all-completions|completion-initials-expand|completion-initials-try-completion|completion-kill-region|completion-last-use-time|completion-lisp-mode-hook|completion-list-mode-finish|completion-list-mode|completion-metadata-get|completion-metadata|completion-mode|completion-num-uses|completion-pcm--all-completions|completion-pcm--filename-try-filter|completion-pcm--find-all-completions|completion-pcm--hilit-commonality|completion-pcm--merge-completions|completion-pcm--merge-try|completion-pcm--optimize-pattern|completion-pcm--pattern->regex|completion-pcm--pattern->string|completion-pcm--pattern-trivial-p|completion-pcm--prepare-delim-re|completion-pcm--string->pattern|completion-pcm-all-completions|completion-pcm-try-completion|completion-search-next|completion-search-peek|completion-search-reset-1|completion-search-reset|completion-setup-fortran-mode|completion-setup-function|completion-source|completion-string|completion-substring--all-completions|completion-substring-all-completions|completion-substring-try-completion|completion-table-with-context|completion-try-completion|compose-chars-after|compose-chars|compose-glyph-string-relative|compose-glyph-string|compose-gstring-for-dotted-circle|compose-gstring-for-graphic|compose-gstring-for-terminal|compose-gstring-for-variation-glyph|compose-last-chars|compose-mail-other-frame|compose-mail-other-window|compose-mail|compose-region-internal|compose-region|compose-string-internal|compose-string|composition-get-gstring|concatenate|condition-case-no-debug|conf-align-assignments|conf-colon-mode|conf-javaprop-mode|conf-mode-initialize|conf-mode-maybe|conf-mode|conf-outline-level|conf-ppd-mode|conf-quote-normal|conf-space-keywords|conf-space-mode-internal|conf-space-mode|conf-unix-mode|conf-windows-mode|conf-xdefaults-mode|confirm-nonexistent-file-or-buffer|constructor|convert-define-charset-argument|cookie-apropos|cookie-check-file|cookie-doctor|cookie-insert|cookie-read|cookie-shuffle-vector|cookie-snarf|cookie|cookie1|copy-case-table|copy-cvs-flags|copy-cvs-tag|copy-dir-locals-to-file-locals-prop-line|copy-dir-locals-to-file-locals|copy-ebrowse-bs|copy-ebrowse-cs|copy-ebrowse-hs|copy-ebrowse-ms|copy-ebrowse-position|copy-ebrowse-ts|copy-erc-channel-user|copy-erc-response|copy-erc-server-user|copy-ert--ewoc-entry|copy-ert--stats|copy-ert--test-execution-info|copy-ert-test-aborted-with-non-local-exit|copy-ert-test-failed|copy-ert-test-passed|copy-ert-test-quit|copy-ert-test-result-with-condition|copy-ert-test-result|copy-ert-test-skipped|copy-ert-test|copy-ewoc--node|copy-ewoc|copy-face|copy-file-locals-to-dir-locals|copy-flymake-ler|copy-gdb-handler|copy-gdb-table|copy-htmlize-fstruct|copy-js--js-handle|copy-js--pitem|copy-list|copy-package--bi-desc|copy-package-desc|copy-profiler-calltree|copy-profiler-profile|copy-rectangle-as-kill|copy-rectangle-to-register|copy-seq|copy-ses--locprn|copy-sgml-tag|copy-soap-array-type|copy-soap-basic-type|copy-soap-binding|copy-soap-bound-operation|copy-soap-element|copy-soap-message|copy-soap-namespace-link|copy-soap-namespace|copy-soap-operation|copy-soap-port-type|copy-soap-port|copy-soap-sequence-element|copy-soap-sequence-type|copy-soap-simple-type|copy-soap-wsdl|copy-tar-header|copy-to-buffer|copy-to-register|copy-url-queue|copyright-find-copyright|copyright-find-end|copyright-fix-years|copyright-limit|copyright-offset-too-large-p|copyright-re-search|copyright-start-point|copyright-update-directory|copyright-update-year|copyright-update|copyright|count-if-not|count-if|count-lines-page|count-lines-region|count-matches|count-text-lines|count-trailing-whitespace-region|count-windows|count-words--buffer-message|count-words--message|count-words-region|count|cperl-1\\\\\\\\+|cperl-1-|cperl-add-tags-recurse-noxs-fullpath|cperl-add-tags-recurse-noxs|cperl-add-tags-recurse|cperl-after-block-and-statement-beg|cperl-after-block-p|cperl-after-change-function|cperl-after-expr-p|cperl-after-label|cperl-after-sub-regexp|cperl-at-end-of-expr|cperl-backward-to-noncomment|cperl-backward-to-start-of-continued-exp|cperl-backward-to-start-of-expr|cperl-beautify-level|cperl-beautify-regexp-piece|cperl-beautify-regexp|cperl-beginning-of-property|cperl-block-p|cperl-build-manpage|cperl-cached-syntax-table|cperl-calculate-indent-within-comment|cperl-calculate-indent|cperl-check-syntax|cperl-choose-color|cperl-comment-indent|cperl-comment-region|cperl-commentify|cperl-contract-level|cperl-contract-levels|cperl-db|cperl-define-key|cperl-delay-update-hook|cperl-describe-perl-symbol|cperl-do-auto-fill|cperl-electric-backspace|cperl-electric-brace|cperl-electric-else|cperl-electric-keyword|cperl-electric-lbrace|cperl-electric-paren|cperl-electric-pod|cperl-electric-rparen|cperl-electric-semi|cperl-electric-terminator|cperl-emulate-lazy-lock|cperl-enable-font-lock|cperl-ensure-newlines|cperl-etags|cperl-facemenu-add-face-function|cperl-fill-paragraph|cperl-find-bad-style|cperl-find-pods-heres-region|cperl-find-pods-heres|cperl-find-sub-attrs|cperl-find-tags|cperl-fix-line-spacing|cperl-font-lock-fontify-region-function|cperl-font-lock-unfontify-region-function|cperl-fontify-syntaxically|cperl-fontify-update-bad|cperl-fontify-update|cperl-forward-group-in-re|cperl-forward-re|cperl-forward-to-end-of-expr|cperl-get-help-defer|cperl-get-help|cperl-get-here-doc-region|cperl-get-state|cperl-here-doc-spell|cperl-highlight-charclass|cperl-imenu--create-perl-index|cperl-imenu-addback|cperl-imenu-info-imenu-name|cperl-imenu-info-imenu-search|cperl-imenu-name-and-position|cperl-imenu-on-info|cperl-indent-command|cperl-indent-exp|cperl-indent-for-comment|cperl-indent-line|cperl-indent-region|cperl-info-buffer|cperl-info-on-command|cperl-info-on-current-command|cperl-init-faces-weak|cperl-init-faces|cperl-inside-parens-p|cperl-invert-if-unless-modifiers|cperl-invert-if-unless|cperl-lazy-hook|cperl-lazy-install|cperl-lazy-unstall|cperl-linefeed|cperl-lineup|cperl-list-fold|cperl-load-font-lock-keywords-1|cperl-load-font-lock-keywords-2|cperl-load-font-lock-keywords|cperl-look-at-leading-count|cperl-make-indent|cperl-make-regexp-x|cperl-map-pods-heres|cperl-mark-active|cperl-menu-to-keymap|cperl-menu|cperl-mode|cperl-modify-syntax-type|cperl-msb-fix|cperl-narrow-to-here-doc|cperl-next-bad-style|cperl-next-interpolated-REx-0|cperl-next-interpolated-REx-1|cperl-next-interpolated-REx|cperl-outline-level|cperl-perldoc-at-point|cperl-perldoc|cperl-pod-spell|cperl-pod-to-manpage|cperl-pod2man-build-command|cperl-postpone-fontification|cperl-protect-defun-start|cperl-ps-print-init|cperl-ps-print|cperl-put-do-not-fontify|cperl-putback-char|cperl-regext-to-level-start|cperl-select-this-pod-or-here-doc|cperl-set-style-back|cperl-set-style|cperl-setup-tmp-buf|cperl-sniff-for-indent|cperl-switch-to-doc-buffer|cperl-tags-hier-fill|cperl-tags-hier-init|cperl-tags-treeify|cperl-time-fontification|cperl-to-comment-or-eol|cperl-toggle-abbrev|cperl-toggle-auto-newline|cperl-toggle-autohelp|cperl-toggle-construct-fix|cperl-toggle-electric|cperl-toggle-set-debug-unwind|cperl-uncomment-region|cperl-unwind-to-safe|cperl-update-syntaxification|cperl-use-region-p|cperl-val|cperl-windowed-init|cperl-word-at-point-hard|cperl-word-at-point|cperl-write-tags|cperl-xsub-scan|cpp-choose-branch|cpp-choose-default-face|cpp-choose-face|cpp-choose-symbol|cpp-create-bg-face|cpp-edit-apply|cpp-edit-background|cpp-edit-false|cpp-edit-home|cpp-edit-known|cpp-edit-list-entry-get-or-create|cpp-edit-load|cpp-edit-mode|cpp-edit-reset|cpp-edit-save|cpp-edit-toggle-known|cpp-edit-toggle-unknown|cpp-edit-true|cpp-edit-unknown|cpp-edit-write|cpp-face-name|cpp-grow-overlay|cpp-highlight-buffer|cpp-make-button|cpp-make-known-overlay|cpp-make-overlay-hidden|cpp-make-overlay-read-only|cpp-make-overlay-sticky|cpp-make-unknown-overlay|cpp-parse-close|cpp-parse-edit|cpp-parse-error|cpp-parse-open|cpp-parse-reset|cpp-progress-message|cpp-push-button|cpp-signal-read-only|create-default-fontset|create-fontset-from-ascii-font|create-fontset-from-x-resource|create-glyph|crm--choose-completion-string|crm--collection-fn|crm--completion-command|crm--current-element|crm-complete-and-exit|crm-complete-word|crm-complete|crm-completion-help|crm-minibuffer-complete-and-exit|crm-minibuffer-complete|crm-minibuffer-completion-help|css--font-lock-keywords|css-current-defun-name|css-extract-keyword-list|css-extract-parse-val-grammar|css-extract-props-and-vals|css-fill-paragraph|css-mode|css-smie--backward-token|css-smie--forward-token|css-smie-rules|ctext-non-standard-encodings-table|ctext-post-read-conversion|ctext-pre-write-conversion|ctl-x-4-prefix|ctl-x-5-prefix|ctl-x-ctl-p-prefix|cua--M\\\\\\\\/H-key|cua--deactivate|cua--fallback|cua--filter-buffer-noprops|cua--init-keymaps|cua--keep-active|cua--post-command-handler-1|cua--post-command-handler|cua--pre-command-handler-1|cua--pre-command-handler|cua--prefix-arg|cua--prefix-copy-handler|cua--prefix-cut-handler|cua--prefix-override-handler|cua--prefix-override-replay|cua--prefix-override-timeout|cua--prefix-repeat-handler|cua--select-keymaps|cua--self-insert-char-p|cua--shift-control-c-prefix|cua--shift-control-prefix|cua--shift-control-x-prefix|cua--update-indications|cua-cancel|cua-copy-region|cua-cut-region|cua-debug|cua-delete-region|cua-exchange-point-and-mark|cua-help-for-region|cua-mode|cua-paste-pop|cua-paste|cua-pop-to-last-change|cua-rectangle-mark-mode|cua-scroll-down|cua-scroll-up|cua-selection-mode|cua-set-mark|cua-set-rectangle-mark|cua-toggle-global-mark|current-line|custom--frame-color-default|custom--initialize-widget-variables|custom--sort-vars-1|custom--sort-vars|custom-add-dependencies|custom-add-link|custom-add-load|custom-add-option|custom-add-package-version|custom-add-parent-links|custom-add-see-also|custom-add-to-group|custom-add-version|custom-autoload|custom-available-themes|custom-browse-face-tag-action|custom-browse-group-tag-action|custom-browse-insert-prefix|custom-browse-variable-tag-action|custom-browse-visibility-action|custom-buffer-create-internal|custom-buffer-create-other-window|custom-buffer-create|custom-check-theme|custom-command-apply|custom-comment-create|custom-comment-hide|custom-comment-invisible-p|custom-comment-show|custom-convert-widget|custom-current-group|custom-declare-face|custom-declare-group|custom-declare-theme|custom-declare-variable|custom-face-action|custom-face-attributes-get|custom-face-edit-activate|custom-face-edit-all|custom-face-edit-attribute-tag|custom-face-edit-convert-widget)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:custom-face-edit-deactivate|custom-face-edit-delete|custom-face-edit-fix-value|custom-face-edit-lisp|custom-face-edit-selected|custom-face-edit-value-create|custom-face-edit-value-visibility-action|custom-face-get-current-spec|custom-face-mark-to-reset-standard|custom-face-mark-to-save|custom-face-menu-create|custom-face-reset-saved|custom-face-reset-standard|custom-face-save-command|custom-face-save|custom-face-set|custom-face-standard-value|custom-face-state-set-and-redraw|custom-face-state-set|custom-face-state|custom-face-value-create|custom-face-widget-to-spec|custom-facep|custom-file|custom-filter-face-spec|custom-fix-face-spec|custom-get-fresh-buffer|custom-group-action|custom-group-link-action|custom-group-mark-to-reset-standard|custom-group-mark-to-save|custom-group-members|custom-group-menu-create|custom-group-of-mode|custom-group-reset-current|custom-group-reset-saved|custom-group-reset-standard|custom-group-sample-face-get|custom-group-save|custom-group-set|custom-group-state-set-and-redraw|custom-group-state-update|custom-group-value-create|custom-group-visibility-create|custom-guess-type|custom-handle-all-keywords|custom-handle-keyword|custom-hook-convert-widget|custom-initialize-changed|custom-initialize-default|custom-initialize-reset|custom-initialize-set|custom-load-symbol|custom-load-widget|custom-magic-reset|custom-magic-value-create|custom-make-theme-feature|custom-menu-create|custom-menu-filter|custom-mode|custom-note-var-changed|custom-notify|custom-post-filter-face-spec|custom-pre-filter-face-spec|custom-prefix-add|custom-prompt-customize-unsaved-options|custom-prompt-variable|custom-push-theme|custom-put-if-not|custom-quote|custom-redraw-magic|custom-redraw|custom-reset-faces|custom-reset-standard-save-and-update|custom-reset-variables|custom-reset|custom-save-all|custom-save-delete|custom-save-faces|custom-save-variables|custom-set-default|custom-set-minor-mode|custom-show|custom-sort-items|custom-split-regexp-maybe|custom-state-buffer-message|custom-tag-action|custom-tag-mouse-down-action|custom-theme--load-path|custom-theme-enabled-p|custom-theme-load-confirm|custom-theme-name-valid-p|custom-theme-recalc-face|custom-theme-recalc-variable|custom-theme-reset-faces|custom-theme-reset-variables|custom-theme-visit-theme|custom-toggle-hide-face|custom-toggle-hide-variable|custom-toggle-hide|custom-toggle-parent|custom-unlispify-menu-entry|custom-unlispify-tag-name|custom-unloaded-symbol-p|custom-unloaded-widget-p|custom-unsaved-options|custom-variable-action|custom-variable-backup-value|custom-variable-documentation|custom-variable-edit-lisp|custom-variable-edit|custom-variable-mark-to-reset-standard|custom-variable-mark-to-save|custom-variable-menu-create|custom-variable-prompt|custom-variable-reset-backup|custom-variable-reset-saved|custom-variable-reset-standard|custom-variable-save|custom-variable-set|custom-variable-standard-value|custom-variable-state-set-and-redraw|custom-variable-state-set|custom-variable-state|custom-variable-theme-value|custom-variable-type|custom-variable-value-create|customize-apropos-faces|customize-apropos-groups|customize-apropos-options|customize-apropos|customize-browse|customize-changed-options|customize-changed|customize-create-theme|customize-customized|customize-face-other-window|customize-face|customize-group-other-window|customize-group|customize-mark-as-set|customize-mark-to-save|customize-menu-create|customize-mode|customize-object|customize-option-other-window|customize-option|customize-package-emacs-version|customize-project|customize-push-and-save|customize-read-group|customize-rogue|customize-save-customized|customize-save-variable|customize-saved|customize-set-value|customize-set-variable|customize-target|customize-themes|customize-unsaved|customize-variable-other-window|customize-variable|customize-version-lessp|customize|cvs-add-branch-prefix|cvs-add-face|cvs-add-secondary-branch-prefix|cvs-addto-collection|cvs-append-to-ignore|cvs-append|cvs-applicable-p|cvs-buffer-check|cvs-buffer-p|cvs-bury-buffer|cvs-car|cvs-cdr|cvs-change-cvsroot|cvs-check-fileinfo|cvs-checkout|cvs-cleanup-collection|cvs-cleanup-removed|cvs-cmd-do|cvs-commit-filelist|cvs-commit-minor-wrap|cvs-create-fileinfo|cvs-defaults|cvs-diff-backup-extractor|cvs-dir-member-p|cvs-dired-noselect|cvs-do-commit|cvs-do-edit-log|cvs-do-match|cvs-do-removal|cvs-ediff-diff|cvs-ediff-exit-hook|cvs-ediff-merge|cvs-ediff-startup-hook|cvs-edit-log-filelist|cvs-edit-log-minor-wrap|cvs-edit-log-text-at-point|cvs-emerge-diff|cvs-emerge-merge|cvs-enabledp|cvs-every|cvs-examine|cvs-execute-single-file-list|cvs-execute-single-file|cvs-expand-dir-name|cvs-file-to-string|cvs-fileinfo->backup-file|cvs-fileinfo->base-rev--cmacro|cvs-fileinfo->base-rev|cvs-fileinfo->dir--cmacro|cvs-fileinfo->dir|cvs-fileinfo->file--cmacro|cvs-fileinfo->file|cvs-fileinfo->full-log--cmacro|cvs-fileinfo->full-log|cvs-fileinfo->full-name|cvs-fileinfo->full-path|cvs-fileinfo->head-rev--cmacro|cvs-fileinfo->head-rev|cvs-fileinfo->marked--cmacro|cvs-fileinfo->marked|cvs-fileinfo->merge--cmacro|cvs-fileinfo->merge|cvs-fileinfo->pp-name|cvs-fileinfo->subtype--cmacro|cvs-fileinfo->subtype|cvs-fileinfo->type--cmacro|cvs-fileinfo->type|cvs-fileinfo-from-entries|cvs-fileinfo-p--cmacro|cvs-fileinfo-p|cvs-fileinfo-pp|cvs-fileinfo-update|cvs-fileinfo<|cvs-find-modif|cvs-first|cvs-flags-defaults--cmacro|cvs-flags-defaults|cvs-flags-define|cvs-flags-desc--cmacro|cvs-flags-desc|cvs-flags-hist-sym--cmacro|cvs-flags-hist-sym|cvs-flags-p--cmacro|cvs-flags-p|cvs-flags-persist--cmacro|cvs-flags-persist|cvs-flags-qtypedesc--cmacro|cvs-flags-qtypedesc|cvs-flags-query|cvs-flags-set|cvs-get-buffer-create|cvs-get-cvsroot|cvs-get-marked|cvs-get-module|cvs-global-menu|cvs-header-msg|cvs-help|cvs-ignore-marks-p|cvs-insert-file|cvs-insert-strings|cvs-insert-visited-file|cvs-is-within-p|cvs-make-cvs-buffer|cvs-map|cvs-mark-buffer-changed|cvs-mark-fis-dead|cvs-match|cvs-menu|cvs-minor-mode|cvs-mode!|cvs-mode-acknowledge|cvs-mode-add-change-log-entry-other-window|cvs-mode-add|cvs-mode-byte-compile-files|cvs-mode-checkout|cvs-mode-commit-setup|cvs-mode-commit|cvs-mode-delete-lock|cvs-mode-diff-1|cvs-mode-diff-backup|cvs-mode-diff-head|cvs-mode-diff-map|cvs-mode-diff-repository|cvs-mode-diff-vendor|cvs-mode-diff-yesterday|cvs-mode-diff|cvs-mode-display-file|cvs-mode-do|cvs-mode-edit-log|cvs-mode-examine|cvs-mode-files|cvs-mode-find-file-other-window|cvs-mode-find-file|cvs-mode-force-command|cvs-mode-idiff-other|cvs-mode-idiff|cvs-mode-ignore|cvs-mode-imerge|cvs-mode-insert|cvs-mode-kill-buffers|cvs-mode-kill-process|cvs-mode-log|cvs-mode-map|cvs-mode-mark-all-files|cvs-mode-mark-get-modif|cvs-mode-mark-matching-files|cvs-mode-mark-on-state|cvs-mode-mark|cvs-mode-marked|cvs-mode-next-line|cvs-mode-previous-line|cvs-mode-quit|cvs-mode-remove-handled|cvs-mode-remove|cvs-mode-revert-buffer|cvs-mode-revert-to-rev|cvs-mode-run|cvs-mode-set-flags|cvs-mode-status|cvs-mode-tag|cvs-mode-toggle-mark|cvs-mode-toggle-marks|cvs-mode-tree|cvs-mode-undo|cvs-mode-unmark-all-files|cvs-mode-unmark-up|cvs-mode-unmark|cvs-mode-untag|cvs-mode-update|cvs-mode-view-file-other-window|cvs-mode-view-file|cvs-mode|cvs-mouse-toggle-mark|cvs-move-to-goal-column|cvs-or|cvs-parse-buffer|cvs-parse-commit|cvs-parse-merge|cvs-parse-msg|cvs-parse-process|cvs-parse-run-table|cvs-parse-status|cvs-parse-table|cvs-parsed-fileinfo|cvs-partition|cvs-pop-to-buffer-same-frame|cvs-prefix-define|cvs-prefix-get|cvs-prefix-make-local|cvs-prefix-set|cvs-prefix-sym|cvs-qtypedesc-complete--cmacro|cvs-qtypedesc-complete|cvs-qtypedesc-create--cmacro|cvs-qtypedesc-create|cvs-qtypedesc-hist-sym--cmacro|cvs-qtypedesc-hist-sym|cvs-qtypedesc-obj2str--cmacro|cvs-qtypedesc-obj2str|cvs-qtypedesc-p--cmacro|cvs-qtypedesc-p|cvs-qtypedesc-require--cmacro|cvs-qtypedesc-require|cvs-qtypedesc-str2obj--cmacro|cvs-qtypedesc-str2obj|cvs-query-directory|cvs-query-read|cvs-quickdir|cvs-reread-cvsrc|cvs-retrieve-revision|cvs-revert-if-needed|cvs-run-process|cvs-sentinel|cvs-set-branch-prefix|cvs-set-secondary-branch-prefix|cvs-status-current-file|cvs-status-current-tag|cvs-status-cvstrees|cvs-status-get-tags|cvs-status-minor-wrap|cvs-status-mode|cvs-status-next|cvs-status-prev|cvs-status-trees|cvs-status-vl-to-str|cvs-status|cvs-string-prefix-p|cvs-tag->name--cmacro|cvs-tag->name|cvs-tag->string|cvs-tag->type--cmacro|cvs-tag->type|cvs-tag->vlist--cmacro|cvs-tag->vlist|cvs-tag-compare-1|cvs-tag-compare|cvs-tag-lessp|cvs-tag-make--cmacro|cvs-tag-make-tag|cvs-tag-make|cvs-tag-merge|cvs-tag-p--cmacro|cvs-tag-p|cvs-tags->tree|cvs-tags-list|cvs-temp-buffer|cvs-tree-merge|cvs-tree-print|cvs-tree-tags-insert|cvs-union|cvs-update-filter|cvs-update-header|cvs-update|cvs-vc-command-advice|cwarn-font-lock-keywords|cwarn-font-lock-match-assignment-in-expression|cwarn-font-lock-match-dangerous-semicolon|cwarn-font-lock-match-reference|cwarn-font-lock-match|cwarn-inside-macro|cwarn-is-enabled|cwarn-mode-set-explicitly|cwarn-mode|cycle-spacing|cyrillic-encode-alternativnyj-char|cyrillic-encode-koi8-r-char|dabbrev--abbrev-at-point|dabbrev--find-all-expansions|dabbrev--find-expansion|dabbrev--goto-start-of-abbrev|dabbrev--ignore-buffer-p|dabbrev--ignore-case-p|dabbrev--make-friend-buffer-list|dabbrev--minibuffer-origin|dabbrev--reset-global-variables|dabbrev--safe-replace-match|dabbrev--same-major-mode-p|dabbrev--search|dabbrev--select-buffers|dabbrev--substitute-expansion|dabbrev--try-find|dabbrev-completion|dabbrev-expand|dabbrev-filter-elements|daemon-initialized|daemonp|data-debug-new-buffer|date-to-day|days-between|days-to-time|dbus--init-bus|dbus-byte-array-to-string|dbus-call-method-handler|dbus-check-event|dbus-escape-as-identifier|dbus-event-bus-name|dbus-event-interface-name|dbus-event-member-name|dbus-event-message-type|dbus-event-path-name|dbus-event-serial-number|dbus-event-service-name|dbus-get-all-managed-objects|dbus-get-all-properties|dbus-get-name-owner|dbus-get-property|dbus-get-unique-name|dbus-handle-bus-disconnect|dbus-handle-event|dbus-ignore-errors|dbus-init-bus|dbus-introspect-get-all-nodes|dbus-introspect-get-annotation-names|dbus-introspect-get-annotation|dbus-introspect-get-argument-names|dbus-introspect-get-argument|dbus-introspect-get-attribute|dbus-introspect-get-interface-names|dbus-introspect-get-interface|dbus-introspect-get-method-names|dbus-introspect-get-method|dbus-introspect-get-node-names|dbus-introspect-get-property-names|dbus-introspect-get-property|dbus-introspect-get-signal-names|dbus-introspect-get-signal|dbus-introspect-get-signature|dbus-introspect-xml|dbus-introspect|dbus-list-activatable-names|dbus-list-hash-table|dbus-list-known-names|dbus-list-names|dbus-list-queued-owners|dbus-managed-objects-handler|dbus-message-internal|dbus-method-error-internal|dbus-method-return-internal|dbus-notice-synchronous-call-errors|dbus-peer-handler|dbus-ping|dbus-property-handler|dbus-register-method|dbus-register-property|dbus-register-service|dbus-register-signal|dbus-set-property|dbus-setenv|dbus-string-to-byte-array|dbus-unescape-from-identifier|dbus-unregister-object|dbus-unregister-service|dbx|dcl-back-to-indentation-1|dcl-back-to-indentation|dcl-backward-command|dcl-beginning-of-command-p|dcl-beginning-of-command|dcl-beginning-of-statement|dcl-calc-command-indent-hang|dcl-calc-command-indent-multiple|dcl-calc-command-indent|dcl-calc-cont-indent-relative|dcl-calc-continuation-indent|dcl-command-p|dcl-delete-chars|dcl-delete-indentation|dcl-electric-character|dcl-end-of-command-p|dcl-end-of-command|dcl-end-of-statement|dcl-forward-command|dcl-get-line-type|dcl-guess-option-value|dcl-guess-option|dcl-imenu-create-index-function|dcl-indent-command-line|dcl-indent-command|dcl-indent-continuation-line|dcl-indent-line|dcl-indent-to|dcl-indentation-point|dcl-mode|dcl-option-value-basic|dcl-option-value-comment-line|dcl-option-value-margin-offset|dcl-option-value-offset|dcl-save-all-options|dcl-save-local-variable|dcl-save-mode|dcl-save-nondefault-options|dcl-save-option|dcl-set-option|dcl-show-line-type|dcl-split-line|dcl-tab|dcl-was-looking-at|deactivate-input-method|deactivate-mode-local-bindings|debug--function-list|debug--implement-debug-on-entry|debug-help-follow|debugger--backtrace-base|debugger--hide-locals|debugger--insert-locals|debugger--locals-visible-p|debugger--show-locals)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:debugger-continue|debugger-env-macro|debugger-eval-expression|debugger-frame-clear|debugger-frame-number|debugger-frame|debugger-jump|debugger-list-functions|debugger-make-xrefs|debugger-mode|debugger-record-expression|debugger-reenable|debugger-return-value|debugger-setup-buffer|debugger-step-through|debugger-toggle-locals|decf|decipher--analyze|decipher--digram-counts|decipher--digram-total|decipher-add-undo|decipher-adjacency-list|decipher-alphabet-keypress|decipher-analyze-buffer|decipher-analyze|decipher-complete-alphabet|decipher-copy-cons|decipher-digram-list|decipher-display-range|decipher-display-regexp|decipher-display-stats-buffer|decipher-frequency-count|decipher-get-undo|decipher-insert-frequency-counts|decipher-insert|decipher-keypress|decipher-last-command-char|decipher-loop-no-breaks|decipher-loop-with-breaks|decipher-make-checkpoint|decipher-mode|decipher-read-alphabet|decipher-restore-checkpoint|decipher-resync|decipher-set-map|decipher-show-alphabet|decipher-stats-buffer|decipher-stats-mode|decipher-undo|decipher|declaim|declare-ccl-program|declare-equiv-charset|decode-big5-char|decode-composition-components|decode-composition-rule|decode-hex-string|decode-hz-buffer|decode-hz-region|decode-sjis-char|decompose-region|decompose-string|decrease-left-margin|decrease-right-margin|def-gdb-auto-update-handler|def-gdb-auto-update-trigger|def-gdb-memory-format|def-gdb-memory-show-page|def-gdb-memory-unit|def-gdb-preempt-display-buffer|def-gdb-set-positive-number|def-gdb-thread-buffer-command|def-gdb-thread-buffer-gud-command|def-gdb-thread-buffer-simple-command|def-gdb-trigger-and-handler|default-command-history-filter|default-font-height|default-indent-new-line|default-line-height|default-toplevel-value|defcalcmodevar|defconst-mode-local|defcustom-c-stylevar|defcustom-mh|defezimage|defface-mh|defgeneric|defgroup-mh|defimage-speedbar|define-abbrevs|define-advice|define-auto-insert|define-ccl-program|define-char-code-property|define-charset-alias|define-charset-internal|define-charset|define-child-mode|define-coding-system-alias|define-coding-system-internal|define-coding-system|define-compilation-mode|define-compiler-macro|define-erc-module|define-erc-response-handler|define-global-abbrev|define-global-minor-mode|define-hmac-function|define-ibuffer-column|define-ibuffer-filter|define-ibuffer-op|define-ibuffer-sorter|define-inline|define-lex-analyzer|define-lex-block-analyzer|define-lex-block-type-analyzer|define-lex-keyword-type-analyzer|define-lex-regex-analyzer|define-lex-regex-type-analyzer|define-lex-sexp-type-analyzer|define-lex-simple-regex-analyzer|define-lex-string-type-analyzer|define-lex|define-mail-abbrev|define-mail-alias|define-mail-user-agent|define-mode-abbrev|define-mode-local-override|define-mode-overload-implementation|define-overload|define-overloadable-function|define-setf-expander|define-skeleton|define-translation-hash-table|define-translation-table|define-widget-keywords|defmacro-mh|defmath|defmethod|defun-cvs-mode|defun-gmm|defun-mh|defun-rcirc-command|defvar-mode-local|degrees-to-radians|dehexlify-buffer|delay-warning|delete\\\\\\\\*|delete-active-region|delete-all-overlays|delete-completion-window|delete-completion|delete-consecutive-dups|delete-dir-local-variable|delete-directory-internal|delete-duplicate-lines|delete-duplicates|delete-extract-rectangle-line|delete-extract-rectangle|delete-file-local-variable-prop-line|delete-file-local-variable|delete-forward-char|delete-frame-enabled-p|delete-if-not|delete-if|delete-instance|delete-matching-lines|delete-non-matching-lines|delete-other-frames|delete-other-windows-internal|delete-other-windows-vertically|delete-pair|delete-rectangle-line|delete-rectangle|delete-selection-helper|delete-selection-mode|delete-selection-pre-hook|delete-selection-repeat-replace-region|delete-side-window|delete-whitespace-rectangle-line|delete-whitespace-rectangle|delete-window-internal|delimit-columns-customize|delimit-columns-format|delimit-columns-rectangle-line|delimit-columns-rectangle-max|delimit-columns-rectangle|delimit-columns-region|delimit-columns-str|delphi-mode|delsel-unload-function|denato-region|derived-mode-abbrev-table-name|derived-mode-class|derived-mode-hook-name|derived-mode-init-mode-variables|derived-mode-make-docstring|derived-mode-map-name|derived-mode-merge-abbrev-tables|derived-mode-merge-keymaps|derived-mode-merge-syntax-tables|derived-mode-run-hooks|derived-mode-set-abbrev-table|derived-mode-set-keymap|derived-mode-set-syntax-table|derived-mode-setup-function-name|derived-mode-syntax-table-name|describe-bindings-internal|describe-buffer-bindings|describe-char-after|describe-char-categories|describe-char-display|describe-char-padded-string|describe-char-unicode-data|describe-char|describe-character-set|describe-chinese-environment-map|describe-coding-system|describe-copying|describe-current-coding-system-briefly|describe-current-coding-system|describe-current-input-method|describe-cyrillic-environment-map|describe-distribution|describe-european-environment-map|describe-face|describe-font|describe-fontset|describe-function-1|describe-function|describe-gnu-project|describe-indian-environment-map|describe-input-method|describe-key-briefly|describe-key|describe-language-environment|describe-minor-mode-completion-table-for-indicator|describe-minor-mode-completion-table-for-symbol|describe-minor-mode-from-indicator|describe-minor-mode-from-symbol|describe-minor-mode|describe-mode-local-bindings-in-mode|describe-mode-local-bindings|describe-no-warranty|describe-package-1|describe-package|describe-project|describe-property-list|describe-register-1|describe-specified-language-support|describe-text-category|describe-text-properties-1|describe-text-properties|describe-text-sexp|describe-text-widget|describe-theme|describe-variable-custom-version-info|describe-variable|describe-vector|desktop--check-dont-save|desktop--v2s|desktop-append-buffer-args|desktop-auto-save-cancel-timer|desktop-auto-save-disable|desktop-auto-save-enable|desktop-auto-save-set-timer|desktop-auto-save|desktop-buffer-info|desktop-buffer|desktop-change-dir|desktop-claim-lock|desktop-clear|desktop-create-buffer|desktop-file-name|desktop-full-file-name|desktop-full-lock-name|desktop-idle-create-buffers|desktop-kill|desktop-lazy-abort|desktop-lazy-complete|desktop-lazy-create-buffer|desktop-list\\\\\\\\*|desktop-load-default|desktop-load-file|desktop-outvar|desktop-owner|desktop-read|desktop-release-lock|desktop-remove|desktop-restore-file-buffer|desktop-restore-frameset|desktop-restoring-frameset-p|desktop-revert|desktop-save-buffer-p|desktop-save-frameset|desktop-save-in-desktop-dir|desktop-save-mode-off|desktop-save-mode|desktop-save|desktop-truncate|desktop-value-to-string|destructor|destructuring-bind|detect-coding-with-language-environment|detect-coding-with-priority|dframe-attached-frame|dframe-click|dframe-close-frame|dframe-current-frame|dframe-detach|dframe-double-click|dframe-frame-mode|dframe-frame-parameter|dframe-get-focus|dframe-hack-buffer-menu|dframe-handle-delete-frame|dframe-handle-iconify-frame|dframe-handle-make-frame-visible|dframe-help-echo|dframe-live-p|dframe-maybee-jump-to-attached-frame|dframe-message|dframe-mouse-event-p|dframe-mouse-hscroll|dframe-mouse-set-point|dframe-needed-height|dframe-popup-kludge|dframe-power-click|dframe-quick-mouse|dframe-reposition-frame-emacs|dframe-reposition-frame-xemacs|dframe-reposition-frame|dframe-select-attached-frame|dframe-set-timer-internal|dframe-set-timer|dframe-switch-buffer-attached-frame|dframe-temp-buffer-show-function|dframe-timer-fn|dframe-track-mouse-xemacs|dframe-track-mouse|dframe-update-keymap|dframe-with-attached-buffer|dframe-y-or-n-p|diary-add-to-list|diary-anniversary|diary-astro-day-number|diary-attrtype-convert|diary-bahai-date|diary-bahai-insert-entry|diary-bahai-insert-monthly-entry|diary-bahai-insert-yearly-entry|diary-bahai-list-entries|diary-bahai-mark-entries|diary-block|diary-check-diary-file|diary-chinese-anniversary|diary-chinese-date|diary-chinese-insert-anniversary-entry|diary-chinese-insert-entry|diary-chinese-insert-monthly-entry|diary-chinese-insert-yearly-entry|diary-chinese-list-entries|diary-chinese-mark-entries|diary-coptic-date|diary-cyclic|diary-date-display-form|diary-date|diary-day-of-year|diary-display-no-entries|diary-entry-compare|diary-entry-time|diary-ethiopic-date|diary-fancy-date-matcher|diary-fancy-date-pattern|diary-fancy-display-mode|diary-fancy-display|diary-fancy-font-lock-fontify-region-function|diary-float|diary-font-lock-date-forms|diary-font-lock-keywords-1|diary-font-lock-keywords|diary-font-lock-sexps|diary-french-date|diary-from-outlook-gnus|diary-from-outlook-internal|diary-from-outlook-rmail|diary-from-outlook|diary-goto-entry|diary-hebrew-birthday|diary-hebrew-date|diary-hebrew-insert-entry|diary-hebrew-insert-monthly-entry|diary-hebrew-insert-yearly-entry|diary-hebrew-list-entries|diary-hebrew-mark-entries|diary-hebrew-omer|diary-hebrew-parasha|diary-hebrew-rosh-hodesh|diary-hebrew-sabbath-candles|diary-hebrew-yahrzeit|diary-include-files|diary-include-other-diary-files|diary-insert-anniversary-entry|diary-insert-block-entry|diary-insert-cyclic-entry|diary-insert-entry-1|diary-insert-entry|diary-insert-monthly-entry|diary-insert-weekly-entry|diary-insert-yearly-entry|diary-islamic-date|diary-islamic-insert-entry|diary-islamic-insert-monthly-entry|diary-islamic-insert-yearly-entry|diary-islamic-list-entries|diary-islamic-mark-entries|diary-iso-date|diary-julian-date|diary-list-entries-1|diary-list-entries-2|diary-list-entries|diary-list-sexp-entries|diary-live-p|diary-lunar-phases|diary-mail-entries|diary-make-date|diary-make-entry|diary-mark-entries-1|diary-mark-entries|diary-mark-included-diary-files|diary-mark-sexp-entries|diary-mayan-date|diary-mode|diary-name-pattern|diary-ordinal-suffix|diary-outlook-format-1|diary-persian-date|diary-print-entries|diary-pull-attrs|diary-redraw-calendar|diary-remind|diary-set-header|diary-set-maybe-redraw|diary-sexp-entry|diary-show-all-entries|diary-simple-display|diary-sort-entries|diary-sunrise-sunset|diary-unhide-everything|diary-view-entries|diary-view-other-diary-entries|diary|diff-add-change-log-entries-other-window|diff-after-change-function|diff-apply-hunk|diff-auto-refine-mode|diff-backup|diff-beginning-of-file-and-junk|diff-beginning-of-file|diff-beginning-of-hunk|diff-bounds-of-file|diff-bounds-of-hunk|diff-buffer-with-file|diff-context->unified|diff-count-matches|diff-current-defun|diff-delete-empty-files|diff-delete-if-empty|diff-delete-trailing-whitespace|diff-ediff-patch|diff-end-of-file|diff-end-of-hunk|diff-file-kill|diff-file-local-copy|diff-file-next|diff-file-prev|diff-filename-drop-dir|diff-find-approx-text|diff-find-file-name|diff-find-source-location|diff-find-text|diff-fixup-modifs|diff-goto-source|diff-hunk-file-names|diff-hunk-kill|diff-hunk-next|diff-hunk-prev|diff-hunk-status-msg|diff-hunk-style|diff-hunk-text|diff-ignore-whitespace-hunk|diff-kill-applied-hunks|diff-kill-junk|diff-latest-backup-file|diff-make-unified|diff-merge-strings|diff-minor-mode|diff-mode-menu|diff-mode|diff-mouse-goto-source|diff-next-complex-hunk|diff-next-error|diff-no-select|diff-post-command-hook|diff-process-filter|diff-refine-hunk|diff-refine-preproc|diff-restrict-view|diff-reverse-direction|diff-sanity-check-context-hunk-half|diff-sanity-check-hunk|diff-sentinel|diff-setup-whitespace|diff-split-hunk|diff-splittable-p|diff-switches|diff-tell-file-name|diff-test-hunk|diff-undo|diff-unified->context|diff-unified-hunk-p|diff-write-contents-hooks|diff-xor|diff-yank-function|diff|dig-exit|dig-extract-rr|dig-invoke|dig-mode|dig-rr-get-pkix-cert|dig|digest-md5-challenge|digest-md5-digest-response|digest-md5-digest-uri|digest-md5-parse-digest-challenge|dir-locals-collect-mode-variables|dir-locals-collect-variables|dir-locals-find-file|dir-locals-get-class-variables|dir-locals-read-from-file|directory-files-recursively|directory-name-p|dired-add-file|dired-advertise|dired-advertised-find-file|dired-align-file|dired-alist-add-1|dired-at-point-prompter|dired-at-point|dired-backup-diff|dired-between-files|dired-buffer-stale-p|dired-buffers-for-dir|dired-build-subdir-alist|dired-change-marks|dired-check-switches|dired-clean-directory|dired-clean-up-after-deletion|dired-clear-alist|dired-compare-directories|dired-compress-file|dired-copy-file|dired-copy-filename-as-kill|dired-create-directory)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:dired-current-directory|dired-delete-entry|dired-delete-file|dired-desktop-buffer-misc-data|dired-diff|dired-directory-changed-p|dired-display-file|dired-dnd-do-ask-action|dired-dnd-handle-file|dired-dnd-handle-local-file|dired-dnd-popup-notice|dired-do-async-shell-command|dired-do-byte-compile|dired-do-chgrp|dired-do-chmod|dired-do-chown|dired-do-compress|dired-do-copy-regexp|dired-do-copy|dired-do-create-files-regexp|dired-do-delete|dired-do-flagged-delete|dired-do-hardlink-regexp|dired-do-hardlink|dired-do-isearch-regexp|dired-do-isearch|dired-do-kill-lines|dired-do-load|dired-do-print|dired-do-query-replace-regexp|dired-do-redisplay|dired-do-relsymlink|dired-do-rename-regexp|dired-do-rename|dired-do-search|dired-do-shell-command|dired-do-symlink-regexp|dired-do-symlink|dired-do-touch|dired-downcase|dired-file-marker|dired-file-name-at-point|dired-find-alternate-file|dired-find-buffer-nocreate|dired-find-file-other-window|dired-find-file|dired-flag-auto-save-files|dired-flag-backup-files|dired-flag-file-deletion|dired-flag-files-regexp|dired-flag-garbage-files|dired-format-columns-of-files|dired-fun-in-all-buffers|dired-get-file-for-visit|dired-get-filename|dired-get-marked-files|dired-get-subdir-max|dired-get-subdir-min|dired-get-subdir|dired-glob-regexp|dired-goto-file-1|dired-goto-file|dired-goto-next-file|dired-goto-next-nontrivial-file|dired-goto-subdir|dired-hide-all|dired-hide-details-mode|dired-hide-details-update-invisibility-spec|dired-hide-subdir|dired-in-this-tree|dired-initial-position|dired-insert-directory|dired-insert-old-subdirs|dired-insert-set-properties|dired-insert-subdir|dired-internal-do-deletions|dired-internal-noselect|dired-isearch-filenames-regexp|dired-isearch-filenames-setup|dired-isearch-filenames|dired-jump-other-window|dired-jump|dired-kill-subdir|dired-log-summary|dired-log|dired-make-absolute|dired-make-relative|dired-map-over-marks|dired-mark-directories|dired-mark-executables|dired-mark-files-containing-regexp|dired-mark-files-in-region|dired-mark-files-regexp|dired-mark-if|dired-mark-pop-up|dired-mark-prompt|dired-mark-remembered|dired-mark-subdir-files|dired-mark-symlinks|dired-mark|dired-marker-regexp|dired-maybe-insert-subdir|dired-mode|dired-mouse-find-file-other-window|dired-move-to-end-of-filename|dired-move-to-filename|dired-next-dirline|dired-next-line|dired-next-marked-file|dired-next-subdir|dired-normalize-subdir|dired-noselect|dired-other-frame|dired-other-window|dired-plural-s|dired-pop-to-buffer|dired-prev-dirline|dired-prev-marked-file|dired-prev-subdir|dired-previous-line|dired-query|dired-read-dir-and-switches|dired-read-regexp|dired-readin-insert|dired-readin|dired-relist-file|dired-remember-hidden|dired-remember-marks|dired-remove-file|dired-rename-file|dired-repeat-over-lines|dired-replace-in-string|dired-restore-desktop-buffer|dired-restore-positions|dired-revert|dired-run-shell-command|dired-safe-switches-p|dired-save-positions|dired-show-file-type|dired-sort-R-check|dired-sort-other|dired-sort-set-mode-line|dired-sort-set-modeline|dired-sort-toggle-or-edit|dired-sort-toggle|dired-string-replace-match|dired-subdir-index|dired-subdir-max|dired-summary|dired-switches-escape-p|dired-switches-recursive-p|dired-toggle-marks|dired-toggle-read-only|dired-tree-down|dired-tree-up|dired-unadvertise|dired-uncache|dired-undo|dired-unmark-all-files|dired-unmark-all-marks|dired-unmark-backward|dired-unmark|dired-up-directory|dired-upcase|dired-view-file|dired-why|dired|dirs|dirtrack-cygwin-directory-function|dirtrack-debug-message|dirtrack-debug-mode|dirtrack-debug-toggle|dirtrack-mode|dirtrack-toggle|dirtrack-windows-directory-function|dirtrack|disable-timeout|disassemble-1|disassemble-internal|disassemble-offset|display-about-screen|display-battery-mode|display-buffer--maybe-pop-up-frame-or-window|display-buffer--maybe-same-window|display-buffer--special-action|display-buffer-assq-regexp|display-buffer-in-atom-window|display-buffer-in-major-side-window|display-buffer-in-side-window|display-buffer-other-frame|display-buffer-record-window|display-call-tree|display-local-help|display-multi-font-p|display-multi-frame-p|display-splash-screen|display-startup-echo-area-message|display-startup-screen|display-table-print-array|display-time-mode|display-time-world|display-time|displaying-byte-compile-warnings|dissociated-press|dnd-get-local-file-name|dnd-get-local-file-uri|dnd-handle-one-url|dnd-insert-text|dnd-open-file|dnd-open-local-file|dnd-open-remote-url|dnd-unescape-uri|dns-get-txt-answer|dns-get|dns-inverse-get|dns-lookup-host|dns-make-network-process|dns-mode-menu|dns-mode-soa-increment-serial|dns-mode-soa-maybe-increment-serial|dns-mode|dns-query-cached|dns-query|dns-read-bytes|dns-read-int32|dns-read-name|dns-read-string-name|dns-read-txt|dns-read-type|dns-read|dns-servers-up-to-date-p|dns-set-servers|dns-write-bytes|dns-write-name|dns-write|dnsDomainIs|dnsResolve|do\\\\\\\\*|do-after-load-evaluation|do-all-symbols|do-auto-fill|do-symbols|do|doc\\\\\\\\$|doc\\\\\\\\/\\\\\\\\/|doc-file-to-info|doc-file-to-man|doc-view--current-cache-dir|doc-view-active-pages|doc-view-already-converted-p|doc-view-bookmark-jump|doc-view-bookmark-make-record|doc-view-buffer-message|doc-view-clear-cache|doc-view-clone-buffer-hook|doc-view-convert-current-doc|doc-view-current-cache-doc-pdf|doc-view-current-image|doc-view-current-info|doc-view-current-overlay|doc-view-current-page|doc-view-current-slice|doc-view-desktop-save-buffer|doc-view-dired-cache|doc-view-display|doc-view-djvu->tiff-converter-ddjvu|doc-view-doc->txt|doc-view-document->bitmap|doc-view-dvi->pdf|doc-view-enlarge|doc-view-fallback-mode|doc-view-first-page|doc-view-fit-height-to-window|doc-view-fit-page-to-window|doc-view-fit-width-to-window|doc-view-get-bounding-box|doc-view-goto-page|doc-view-guess-paper-size|doc-view-initiate-display|doc-view-insert-image|doc-view-intersection|doc-view-kill-proc-and-buffer|doc-view-kill-proc|doc-view-last-page-number|doc-view-last-page|doc-view-make-safe-dir|doc-view-menu|doc-view-minor-mode|doc-view-mode-maybe|doc-view-mode-p|doc-view-mode|doc-view-new-window-function|doc-view-next-line-or-next-page|doc-view-next-page|doc-view-odf->pdf-converter-soffice|doc-view-odf->pdf-converter-unoconv|doc-view-open-text|doc-view-pdf\\\\\\\\/ps->png|doc-view-pdf->png-converter-ghostscript|doc-view-pdf->png-converter-mupdf|doc-view-pdf->txt|doc-view-previous-line-or-previous-page|doc-view-previous-page|doc-view-ps->pdf|doc-view-ps->png-converter-ghostscript|doc-view-reconvert-doc|doc-view-reset-slice|doc-view-restore-desktop-buffer|doc-view-revert-buffer|doc-view-scale-adjust|doc-view-scale-bounding-box|doc-view-scale-reset|doc-view-scroll-down-or-previous-page|doc-view-scroll-up-or-next-page|doc-view-search-backward|doc-view-search-internal|doc-view-search-next-match|doc-view-search-no-of-matches|doc-view-search-previous-match|doc-view-search|doc-view-sentinel|doc-view-set-doc-type|doc-view-set-slice-from-bounding-box|doc-view-set-slice-using-mouse|doc-view-set-slice|doc-view-set-up-single-converter|doc-view-show-tooltip|doc-view-shrink|doc-view-sort|doc-view-start-process|doc-view-toggle-display|doctex-font-lock-\\\\\\\\^\\\\\\\\^A|doctex-font-lock-syntactic-face-function|doctex-mode|doctor-\\\\\\\\$|doctor-adjectivep|doctor-adverbp|doctor-alcohol|doctor-articlep|doctor-assm|doctor-build|doctor-chat|doctor-colorp|doctor-concat|doctor-conj|doctor-correct-spelling|doctor-death|doctor-def|doctor-define|doctor-defq|doctor-desire|doctor-desire1|doctor-doc|doctor-drug|doctor-eliza|doctor-family|doctor-fear|doctor-fix-2|doctor-fixup|doctor-forget|doctor-foul|doctor-getnoun|doctor-go|doctor-hate|doctor-hates|doctor-hates1|doctor-howdy|doctor-huh|doctor-love|doctor-loves|doctor-mach|doctor-make-string|doctor-math|doctor-meaning|doctor-mode|doctor-modifierp|doctor-mood|doctor-nmbrp|doctor-nounp|doctor-othermodifierp|doctor-plural|doctor-possess|doctor-possessivepronounp|doctor-prepp|doctor-pronounp|doctor-put-meaning|doctor-qloves|doctor-query|doctor-read-print|doctor-read-token|doctor-readin|doctor-remem|doctor-remember|doctor-replace|doctor-ret-or-read|doctor-rms|doctor-rthing|doctor-school|doctor-setprep|doctor-sexnoun|doctor-sexverb|doctor-short|doctor-shorten|doctor-sizep|doctor-sports|doctor-state|doctor-subjsearch|doctor-svo|doctor-symptoms|doctor-toke|doctor-txtype|doctor-type-symbol|doctor-type|doctor-verbp|doctor-vowelp|doctor-when|doctor-wherego|doctor-zippy|doctor|dom-add-child-before|dom-append-child|dom-attr|dom-attributes|dom-by-class|dom-by-id|dom-by-style|dom-by-tag|dom-child-by-tag|dom-children|dom-elements|dom-ensure-node|dom-node|dom-non-text-children|dom-parent|dom-pp|dom-set-attribute|dom-set-attributes|dom-tag|dom-text|dom-texts|dont-compile|double-column|double-mode|double-read-event|double-translate-key|down-ifdef|dsssl-mode|dunnet|dynamic-completion-mode|dynamic-completion-table|dynamic-setting-handle-config-changed-event|easy-menu-add-item|easy-menu-add|easy-menu-always-true-p|easy-menu-binding|easy-menu-change|easy-menu-convert-item-1|easy-menu-convert-item|easy-menu-create-menu|easy-menu-define-key|easy-menu-do-define|easy-menu-filter-return|easy-menu-get-map|easy-menu-intern|easy-menu-item-present-p|easy-menu-lookup-name|easy-menu-make-symbol|easy-menu-name-match|easy-menu-remove-item|easy-menu-remove|easy-menu-return-item|easy-mmode-define-global-mode|easy-mmode-define-keymap|easy-mmode-define-navigation|easy-mmode-define-syntax|easy-mmode-defmap|easy-mmode-defsyntax|easy-mmode-pretty-mode-name|easy-mmode-set-keymap-parents|ebnf-abn-initialize|ebnf-abn-parser|ebnf-adjust-empty|ebnf-adjust-width|ebnf-alternative-dimension|ebnf-alternative-width|ebnf-apply-style|ebnf-apply-style1|ebnf-begin-file|ebnf-begin-job|ebnf-begin-line|ebnf-bnf-initialize|ebnf-bnf-parser|ebnf-boolean|ebnf-buffer-substring|ebnf-check-style-values|ebnf-customize|ebnf-delete-style|ebnf-despool|ebnf-dimensions|ebnf-directory|ebnf-dtd-initialize|ebnf-dtd-parser|ebnf-dup-list|ebnf-ebx-initialize|ebnf-ebx-parser|ebnf-element-width|ebnf-eliminate-empty-rules|ebnf-empty-alternative|ebnf-end-of-string|ebnf-entry|ebnf-eop-horizontal|ebnf-eop-vertical|ebnf-eps-add-context|ebnf-eps-add-production|ebnf-eps-buffer|ebnf-eps-directory|ebnf-eps-file|ebnf-eps-filename|ebnf-eps-finish-and-write|ebnf-eps-footer-comment|ebnf-eps-footer|ebnf-eps-header-comment|ebnf-eps-header-footer-comment|ebnf-eps-header-footer-file|ebnf-eps-header-footer-p|ebnf-eps-header-footer-set|ebnf-eps-header-footer|ebnf-eps-header|ebnf-eps-output|ebnf-eps-production-list|ebnf-eps-region|ebnf-eps-remove-context|ebnf-eps-string|ebnf-eps-write-kill-temp|ebnf-except-dimension|ebnf-file|ebnf-find-style|ebnf-font-attributes|ebnf-font-background|ebnf-font-foreground|ebnf-font-height|ebnf-font-list|ebnf-font-name-select|ebnf-font-name|ebnf-font-select|ebnf-font-size|ebnf-font-width|ebnf-format-color|ebnf-format-float|ebnf-gen-terminal|ebnf-generate-alternative|ebnf-generate-empty|ebnf-generate-eps|ebnf-generate-except|ebnf-generate-non-terminal|ebnf-generate-one-or-more|ebnf-generate-optional|ebnf-generate-postscript|ebnf-generate-production|ebnf-generate-region|ebnf-generate-repeat|ebnf-generate-sequence|ebnf-generate-special|ebnf-generate-terminal|ebnf-generate-with-max-height|ebnf-generate-without-max-height|ebnf-generate-zero-or-more|ebnf-generate|ebnf-get-string|ebnf-horizontal-movement|ebnf-insert-ebnf-prologue|ebnf-insert-style|ebnf-iso-initialize|ebnf-iso-parser|ebnf-justify-list|ebnf-justify|ebnf-log-header|ebnf-log|ebnf-make-alternative|ebnf-make-dup-sequence|ebnf-make-empty|ebnf-make-except|ebnf-make-non-terminal|ebnf-make-one-or-more|ebnf-make-optional|ebnf-make-or-more1|ebnf-make-production|ebnf-make-repeat|ebnf-make-sequence|ebnf-make-special|ebnf-make-terminal|ebnf-make-terminal1|ebnf-make-zero-or-more|ebnf-max-width|ebnf-merge-style|ebnf-message-float|ebnf-message-info|ebnf-new-page|ebnf-newline|ebnf-node-action|ebnf-node-default|ebnf-node-dimension-func|ebnf-node-entry|ebnf-node-generation|ebnf-node-height|ebnf-node-kind|ebnf-node-list|ebnf-node-name|ebnf-node-production|ebnf-node-separator|ebnf-node-width-func|ebnf-node-width|ebnf-non-terminal-dimension|ebnf-one-or-more-dimension|ebnf-optimize|ebnf-optional-dimension|ebnf-otz-initialize|ebnf-parse-and-sort|ebnf-pop-style|ebnf-print-buffer|ebnf-print-directory|ebnf-print-file|ebnf-print-region|ebnf-production-dimension|ebnf-push-style|ebnf-range-regexp|ebnf-repeat-dimension|ebnf-reset-style|ebnf-sequence-dimension|ebnf-sequence-width)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:ebnf-setup|ebnf-shape-value|ebnf-sorter-ascending|ebnf-sorter-descending|ebnf-special-dimension|ebnf-spool-buffer|ebnf-spool-directory|ebnf-spool-file|ebnf-spool-region|ebnf-string|ebnf-syntax-buffer|ebnf-syntax-directory|ebnf-syntax-file|ebnf-syntax-region|ebnf-terminal-dimension|ebnf-terminal-dimension1|ebnf-token-alternative|ebnf-token-except|ebnf-token-optional|ebnf-token-repeat|ebnf-token-sequence|ebnf-trim-right|ebnf-vertical-movement|ebnf-yac-initialize|ebnf-yac-parser|ebnf-zero-or-more-dimension|ebrowse-back-in-position-stack|ebrowse-base-classes|ebrowse-browser-buffer-list|ebrowse-bs-file--cmacro|ebrowse-bs-file|ebrowse-bs-flags--cmacro|ebrowse-bs-flags|ebrowse-bs-name--cmacro|ebrowse-bs-name|ebrowse-bs-p--cmacro|ebrowse-bs-p|ebrowse-bs-pattern--cmacro|ebrowse-bs-pattern|ebrowse-bs-point--cmacro|ebrowse-bs-point|ebrowse-bs-scope--cmacro|ebrowse-bs-scope|ebrowse-buffer-p|ebrowse-build-tree-obarray|ebrowse-choose-from-browser-buffers|ebrowse-choose-tree|ebrowse-class-alist-for-member|ebrowse-class-declaration-regexp|ebrowse-class-in-tree|ebrowse-class-name-displayed-in-member-buffer|ebrowse-collapse-branch|ebrowse-collapse-fn|ebrowse-completing-read-value|ebrowse-const-p|ebrowse-create-tree-buffer|ebrowse-cs-file--cmacro|ebrowse-cs-file|ebrowse-cs-flags--cmacro|ebrowse-cs-flags|ebrowse-cs-name--cmacro|ebrowse-cs-name|ebrowse-cs-p--cmacro|ebrowse-cs-p|ebrowse-cs-pattern--cmacro|ebrowse-cs-pattern|ebrowse-cs-point--cmacro|ebrowse-cs-point|ebrowse-cs-scope--cmacro|ebrowse-cs-scope|ebrowse-cs-source-file--cmacro|ebrowse-cs-source-file|ebrowse-cyclic-display-next\\\\\\\\/previous-member-list|ebrowse-cyclic-successor-in-string-list|ebrowse-define-p|ebrowse-direct-base-classes|ebrowse-display-friends-member-list|ebrowse-display-function-member-list|ebrowse-display-member-buffer|ebrowse-display-member-list-for-accessor|ebrowse-display-next-member-list|ebrowse-display-previous-member-list|ebrowse-display-static-functions-member-list|ebrowse-display-static-variables-member-list|ebrowse-display-types-member-list|ebrowse-display-variables-member-list|ebrowse-displaying-friends|ebrowse-displaying-functions|ebrowse-displaying-static-functions|ebrowse-displaying-static-variables|ebrowse-displaying-types|ebrowse-displaying-variables|ebrowse-draw-file-member-info|ebrowse-draw-marks-fn|ebrowse-draw-member-attributes|ebrowse-draw-member-buffer-class-line|ebrowse-draw-member-long-fn|ebrowse-draw-member-regexp|ebrowse-draw-member-short-fn|ebrowse-draw-position-buffer|ebrowse-draw-tree-fn|ebrowse-electric-buffer-list|ebrowse-electric-choose-tree|ebrowse-electric-find-position|ebrowse-electric-get-buffer|ebrowse-electric-list-looper|ebrowse-electric-list-mode|ebrowse-electric-list-quit|ebrowse-electric-list-select|ebrowse-electric-list-undefined|ebrowse-electric-position-looper|ebrowse-electric-position-menu|ebrowse-electric-position-mode|ebrowse-electric-position-quit|ebrowse-electric-position-undefined|ebrowse-electric-select-position|ebrowse-electric-view-buffer|ebrowse-electric-view-position|ebrowse-every|ebrowse-expand-all|ebrowse-expand-branch|ebrowse-explicit-p|ebrowse-extern-c-p|ebrowse-files-list|ebrowse-files-table|ebrowse-fill-member-table|ebrowse-find-class-declaration|ebrowse-find-member-declaration|ebrowse-find-member-definition|ebrowse-find-pattern|ebrowse-find-source-file|ebrowse-for-all-trees|ebrowse-forward-in-position-stack|ebrowse-freeze-member-buffer|ebrowse-frozen-tree-buffer-name|ebrowse-function-declaration\\\\\\\\/definition-regexp|ebrowse-gather-statistics|ebrowse-globals-tree-p|ebrowse-goto-visible-member\\\\\\\\/all-member-lists|ebrowse-goto-visible-member|ebrowse-hack-electric-buffer-menu|ebrowse-hide-line|ebrowse-hs-command-line-options--cmacro|ebrowse-hs-command-line-options|ebrowse-hs-member-table--cmacro|ebrowse-hs-member-table|ebrowse-hs-p--cmacro|ebrowse-hs-p|ebrowse-hs-unused--cmacro|ebrowse-hs-unused|ebrowse-hs-version--cmacro|ebrowse-hs-version|ebrowse-ignoring-completion-case|ebrowse-inline-p|ebrowse-insert-supers|ebrowse-install-1-to-9-keys|ebrowse-kill-member-buffers-displaying|ebrowse-known-class-trees-buffer-list|ebrowse-list-of-matching-members|ebrowse-list-tree-buffers|ebrowse-mark-all-classes|ebrowse-marked-classes-p|ebrowse-member-bit-set-p|ebrowse-member-buffer-list|ebrowse-member-buffer-object-menu|ebrowse-member-buffer-p|ebrowse-member-class-name-object-menu|ebrowse-member-display-p|ebrowse-member-info-from-point|ebrowse-member-list-name|ebrowse-member-mode|ebrowse-member-mouse-2|ebrowse-member-mouse-3|ebrowse-member-name-object-menu|ebrowse-member-table|ebrowse-mouse-1-in-tree-buffer|ebrowse-mouse-2-in-tree-buffer|ebrowse-mouse-3-in-tree-buffer|ebrowse-mouse-find-member|ebrowse-move-in-position-stack|ebrowse-move-point-to-member|ebrowse-ms-definition-file--cmacro|ebrowse-ms-definition-file|ebrowse-ms-definition-pattern--cmacro|ebrowse-ms-definition-pattern|ebrowse-ms-definition-point--cmacro|ebrowse-ms-definition-point|ebrowse-ms-file--cmacro|ebrowse-ms-file|ebrowse-ms-flags--cmacro|ebrowse-ms-flags|ebrowse-ms-name--cmacro|ebrowse-ms-name|ebrowse-ms-p--cmacro|ebrowse-ms-p|ebrowse-ms-pattern--cmacro|ebrowse-ms-pattern|ebrowse-ms-point--cmacro|ebrowse-ms-point|ebrowse-ms-scope--cmacro|ebrowse-ms-scope|ebrowse-ms-visibility--cmacro|ebrowse-ms-visibility|ebrowse-mutable-p|ebrowse-name\\\\\\\\/accessor-alist-for-class-members|ebrowse-name\\\\\\\\/accessor-alist-for-visible-members|ebrowse-name\\\\\\\\/accessor-alist|ebrowse-on-class-name|ebrowse-on-member-name|ebrowse-output|ebrowse-pop\\\\\\\\/switch-to-member-buffer-for-same-tree|ebrowse-pop-from-member-to-tree-buffer|ebrowse-pop-to-browser-buffer|ebrowse-popup-menu|ebrowse-position-file-name--cmacro|ebrowse-position-file-name|ebrowse-position-info--cmacro|ebrowse-position-info|ebrowse-position-name|ebrowse-position-p--cmacro|ebrowse-position-p|ebrowse-position-point--cmacro|ebrowse-position-point|ebrowse-position-target--cmacro|ebrowse-position-target|ebrowse-position|ebrowse-pp-define-regexp|ebrowse-print-statistics-line|ebrowse-pure-virtual-p|ebrowse-push-position|ebrowse-qualified-class-name|ebrowse-read-class-name-and-go|ebrowse-read|ebrowse-redisplay-member-buffer|ebrowse-redraw-marks|ebrowse-redraw-tree|ebrowse-remove-all-member-filters|ebrowse-remove-class-and-kill-member-buffers|ebrowse-remove-class-at-point|ebrowse-rename-buffer|ebrowse-repeat-member-search|ebrowse-revert-tree-buffer-from-file|ebrowse-same-tree-member-buffer-list|ebrowse-save-class|ebrowse-save-selective|ebrowse-save-tree-as|ebrowse-save-tree|ebrowse-select-1st-to-9nth|ebrowse-set-face|ebrowse-set-mark-props|ebrowse-set-member-access-visibility|ebrowse-set-member-buffer-column-width|ebrowse-set-tree-indentation|ebrowse-show-displayed-class-in-tree|ebrowse-show-file-name-at-point|ebrowse-show-progress|ebrowse-some-member-table|ebrowse-some|ebrowse-sort-tree-list|ebrowse-statistics|ebrowse-switch-member-buffer-to-any-class|ebrowse-switch-member-buffer-to-base-class|ebrowse-switch-member-buffer-to-derived-class|ebrowse-switch-member-buffer-to-next-sibling-class|ebrowse-switch-member-buffer-to-other-class|ebrowse-switch-member-buffer-to-previous-sibling-class|ebrowse-switch-member-buffer-to-sibling-class|ebrowse-switch-to-next-member-buffer|ebrowse-symbol-regexp|ebrowse-tags-apropos|ebrowse-tags-choose-class|ebrowse-tags-complete-symbol|ebrowse-tags-display-member-buffer|ebrowse-tags-find-declaration-other-frame|ebrowse-tags-find-declaration-other-window|ebrowse-tags-find-declaration|ebrowse-tags-find-definition-other-frame|ebrowse-tags-find-definition-other-window|ebrowse-tags-find-definition|ebrowse-tags-list-members-in-file|ebrowse-tags-loop-continue|ebrowse-tags-next-file|ebrowse-tags-query-replace|ebrowse-tags-read-member\\\\\\\\+class-name|ebrowse-tags-read-name|ebrowse-tags-search-member-use|ebrowse-tags-search|ebrowse-tags-select\\\\\\\\/create-member-buffer|ebrowse-tags-view\\\\\\\\/find-member-decl\\\\\\\\/defn|ebrowse-tags-view-declaration-other-frame|ebrowse-tags-view-declaration-other-window|ebrowse-tags-view-declaration|ebrowse-tags-view-definition-other-frame|ebrowse-tags-view-definition-other-window|ebrowse-tags-view-definition|ebrowse-template-p|ebrowse-throw-list-p|ebrowse-toggle-base-class-display|ebrowse-toggle-const-member-filter|ebrowse-toggle-file-name-display|ebrowse-toggle-inline-member-filter|ebrowse-toggle-long-short-display|ebrowse-toggle-mark-at-point|ebrowse-toggle-member-attributes-display|ebrowse-toggle-private-member-filter|ebrowse-toggle-protected-member-filter|ebrowse-toggle-public-member-filter|ebrowse-toggle-pure-member-filter|ebrowse-toggle-regexp-display|ebrowse-toggle-virtual-member-filter|ebrowse-tree-at-point|ebrowse-tree-buffer-class-object-menu|ebrowse-tree-buffer-list|ebrowse-tree-buffer-object-menu|ebrowse-tree-buffer-p|ebrowse-tree-command:show-friends|ebrowse-tree-command:show-member-functions|ebrowse-tree-command:show-member-variables|ebrowse-tree-command:show-static-member-functions|ebrowse-tree-command:show-static-member-variables|ebrowse-tree-command:show-types|ebrowse-tree-mode|ebrowse-tree-obarray-as-alist|ebrowse-trim-string|ebrowse-ts-base-classes--cmacro|ebrowse-ts-base-classes|ebrowse-ts-class--cmacro|ebrowse-ts-class|ebrowse-ts-friends--cmacro|ebrowse-ts-friends|ebrowse-ts-mark--cmacro|ebrowse-ts-mark|ebrowse-ts-member-functions--cmacro|ebrowse-ts-member-functions|ebrowse-ts-member-variables--cmacro|ebrowse-ts-member-variables|ebrowse-ts-p--cmacro|ebrowse-ts-p|ebrowse-ts-static-functions--cmacro|ebrowse-ts-static-functions|ebrowse-ts-static-variables--cmacro|ebrowse-ts-static-variables|ebrowse-ts-subclasses--cmacro|ebrowse-ts-subclasses|ebrowse-ts-types--cmacro|ebrowse-ts-types|ebrowse-unhide-base-classes|ebrowse-update-member-buffer-mode-line|ebrowse-update-tree-buffer-mode-line|ebrowse-variable-declaration-regexp|ebrowse-view\\\\\\\\/find-class-declaration|ebrowse-view\\\\\\\\/find-file-and-search-pattern|ebrowse-view\\\\\\\\/find-member-declaration\\\\\\\\/definition|ebrowse-view\\\\\\\\/find-position|ebrowse-view-class-declaration|ebrowse-view-exit-fn|ebrowse-view-file-other-frame|ebrowse-view-member-declaration|ebrowse-view-member-definition|ebrowse-virtual-p|ebrowse-width-of-drawable-area|ebrowse-write-file-hook-fn|ebuffers|ebuffers3|ecase|ecomplete-display-matches|ecomplete-setup|ede--detect-ldf-predicate|ede--detect-ldf-root-predicate|ede--detect-ldf-rootonly-predicate|ede--detect-scan-directory-for-project-root|ede--detect-scan-directory-for-project|ede--detect-scan-directory-for-rootonly-project|ede--detect-stop-scan-p|ede--directory-project-add-description-to-hash|ede--directory-project-from-hash|ede--get-inode-dir-hash|ede--inode-for-dir|ede--inode-get-toplevel-open-project|ede--project-inode|ede--put-inode-dir-hash|ede-add-file|ede-add-project-autoload|ede-add-project-to-global-list|ede-add-subproject|ede-adebug-project-parent|ede-adebug-project-root|ede-adebug-project|ede-apply-object-keymap|ede-apply-preprocessor-map|ede-apply-project-local-variables|ede-apply-target-options|ede-auto-add-to-target|ede-auto-detect-in-dir|ede-auto-load-project|ede-buffer-belongs-to-project-p|ede-buffer-belongs-to-target-p|ede-buffer-documentation-files|ede-buffer-header-file|ede-buffer-mine|ede-buffer-object|ede-buffers|ede-build-forms-menu|ede-check-project-directory|ede-choose-object|ede-commit-local-variables|ede-compile-project|ede-compile-selected|ede-compile-target|ede-configuration-forms-menu|ede-convert-path|ede-cpp-root-project-child-p|ede-cpp-root-project-list-p|ede-cpp-root-project-p|ede-cpp-root-project|ede-create-tag-buttons|ede-current-project|ede-customize-current-target|ede-customize-forms-menu|ede-customize-project|ede-debug-target|ede-delete-project-from-global-list|ede-delete-target|ede-description|ede-detect-directory-for-project|ede-detect-qtest|ede-directory-get-open-project|ede-directory-get-toplevel-open-project|ede-directory-project-cons|ede-directory-project-p|ede-directory-safe-p|ede-dired-minor-mode|ede-dirmatch-installed|ede-do-dirmatch|ede-documentation-files|ede-documentation|ede-ecb-project-paths|ede-edit-file-target|ede-edit-web-page|ede-enable-generic-projects|ede-enable-locate-on-project|ede-expand-filename-impl-via-subproj|ede-expand-filename-impl|ede-expand-filename-local|ede-expand-filename|ede-file-find|ede-find-file|ede-find-nearest-file-line|ede-find-subproject-for-directory|ede-find-target|ede-flush-deleted-projects|ede-flush-directory-hash|ede-flush-project-hash|ede-get-locator-object|ede-global-list-sanity-check|ede-header-file|ede-html-documentation-files|ede-html-documentation|ede-ignore-file|ede-initialize-state-current-buffer|ede-invoke-method)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:ede-java-classpath|ede-linux-load|ede-load-cache|ede-load-project-file|ede-make-check-version|ede-make-dist|ede-make-project-local-variable|ede-map-all-subprojects|ede-map-any-target-p|ede-map-buffers|ede-map-project-buffers|ede-map-subprojects|ede-map-target-buffers|ede-map-targets|ede-menu-items-build|ede-menu-obj-of-class-p|ede-minor-mode|ede-name|ede-new-target-custom|ede-new-target|ede-new|ede-normalize-file\\\\\\\\/directory|ede-object-keybindings|ede-object-menu|ede-object-sourcecode|ede-parent-project|ede-preprocessor-map|ede-project-autoload-child-p|ede-project-autoload-dirmatch-child-p|ede-project-autoload-dirmatch-list-p|ede-project-autoload-dirmatch-p|ede-project-autoload-dirmatch|ede-project-autoload-list-p|ede-project-autoload-p|ede-project-autoload|ede-project-buffers|ede-project-child-p|ede-project-configurations-set|ede-project-directory-remove-hash|ede-project-forms-menu|ede-project-list-p|ede-project-p|ede-project-placeholder-child-p|ede-project-placeholder-list-p|ede-project-placeholder-p|ede-project-placeholder|ede-project-root-directory|ede-project-root|ede-project-sort-targets|ede-project|ede-remove-file|ede-rescan-toplevel|ede-reset-all-buffers|ede-run-target|ede-save-cache|ede-set-project-local-variable|ede-set-project-variables|ede-set|ede-singular-object|ede-source-paths|ede-sourcecode-child-p|ede-sourcecode-list-p|ede-sourcecode-p|ede-sourcecode|ede-speedbar-compile-file-project|ede-speedbar-compile-line|ede-speedbar-compile-project|ede-speedbar-edit-projectfile|ede-speedbar-file-setup|ede-speedbar-get-top-project-for-line|ede-speedbar-make-distribution|ede-speedbar-make-map|ede-speedbar-remove-file-from-target|ede-speedbar-toplevel-buttons|ede-speedbar|ede-subproject-p|ede-subproject-relative-path|ede-system-include-path|ede-tag-expand|ede-tag-find|ede-target-buffer-in-sourcelist|ede-target-buffers|ede-target-child-p|ede-target-forms-menu|ede-target-in-project-p|ede-target-list-p|ede-target-name|ede-target-p|ede-target-parent|ede-target-sourcecode|ede-target|ede-toplevel-project-or-nil|ede-toplevel-project|ede-toplevel|ede-turn-on-hook|ede-up-directory|ede-update-version|ede-upload-distribution|ede-upload-html-documentation|ede-vc-project-directory|ede-version|ede-want-any-auxiliary-files-p|ede-want-any-files-p|ede-want-any-source-files-p|ede-want-file-auxiliary-p|ede-want-file-p|ede-want-file-source-p|ede-web-browse-home|ede-with-projectfile|ede|edebug-&optional-wrapper|edebug-&rest-wrapper|edebug--called-interactively-skip|edebug--display|edebug--enter-trace|edebug--form-data-begin--cmacro|edebug--form-data-begin|edebug--form-data-end--cmacro|edebug--form-data-end|edebug--form-data-name--cmacro|edebug--form-data-name|edebug--make-form-data-entry--cmacro|edebug--make-form-data-entry|edebug--read|edebug--recursive-edit|edebug--require-cl-read|edebug--update-coverage|edebug-Continue-fast-mode|edebug-Go-nonstop-mode|edebug-Trace-fast-mode|edebug-`|edebug-adjust-window|edebug-after-offset|edebug-after|edebug-all-defuns|edebug-backtrace|edebug-basic-spec|edebug-before-offset|edebug-before|edebug-bounce-point|edebug-changing-windows|edebug-clear-coverage|edebug-clear-form-data-entry|edebug-clear-frequency-count|edebug-compute-previous-result|edebug-continue-mode|edebug-copy-cursor|edebug-create-eval-buffer|edebug-current-windows|edebug-cursor-expressions|edebug-cursor-offsets|edebug-debugger|edebug-defining-form|edebug-delete-eval-item|edebug-empty-cursor|edebug-enter|edebug-eval-defun|edebug-eval-display-list|edebug-eval-display|edebug-eval-expression|edebug-eval-last-sexp|edebug-eval-mode|edebug-eval-print-last-sexp|edebug-eval-redisplay|edebug-eval-result-list|edebug-eval|edebug-fast-after|edebug-fast-before|edebug-find-stop-point|edebug-form-data-symbol|edebug-form|edebug-format|edebug-forms|edebug-forward-sexp|edebug-get-displayed-buffer-points|edebug-get-form-data-entry|edebug-go-mode|edebug-goto-here|edebug-help|edebug-ignore-offset|edebug-inc-offset|edebug-initialize-offsets|edebug-install-read-eval-functions|edebug-instrument-callee|edebug-instrument-function|edebug-interactive-p-name|edebug-kill-buffer|edebug-lambda-list-keywordp|edebug-last-sexp|edebug-list-form-args|edebug-list-form|edebug-make-after-form|edebug-make-before-and-after-form|edebug-make-enter-wrapper|edebug-make-form-wrapper|edebug-make-top-form-data-entry|edebug-mark-marker|edebug-mark|edebug-match-&define|edebug-match-&key|edebug-match-\u00AC|edebug-match-&optional|edebug-match-&or|edebug-match-&rest|edebug-match-arg|edebug-match-body|edebug-match-colon-name|edebug-match-def-body|edebug-match-def-form|edebug-match-form|edebug-match-function|edebug-match-gate|edebug-match-lambda-expr|edebug-match-list|edebug-match-name|edebug-match-nil|edebug-match-one-spec|edebug-match-place|edebug-match-sexp|edebug-match-specs|edebug-match-string|edebug-match-sublist|edebug-match-symbol|edebug-match|edebug-menu|edebug-message|edebug-mode|edebug-modify-breakpoint|edebug-move-cursor|edebug-new-cursor|edebug-next-breakpoint|edebug-next-mode|edebug-next-token-class|edebug-no-match|edebug-on-entry|edebug-outside-excursion|edebug-overlay-arrow|edebug-pop-to-buffer|edebug-previous-result|edebug-prin1-to-string|edebug-prin1|edebug-print|edebug-read-and-maybe-wrap-form|edebug-read-and-maybe-wrap-form1|edebug-read-backquote|edebug-read-comma|edebug-read-function|edebug-read-list|edebug-read-quote|edebug-read-sexp|edebug-read-storing-offsets|edebug-read-string|edebug-read-symbol|edebug-read-top-level-form|edebug-read-vector|edebug-report-error|edebug-restore-status|edebug-run-fast|edebug-run-slow|edebug-safe-eval|edebug-safe-prin1-to-string|edebug-set-breakpoint|edebug-set-buffer-points|edebug-set-conditional-breakpoint|edebug-set-cursor|edebug-set-form-data-entry|edebug-set-mode|edebug-set-windows|edebug-sexps|edebug-signal|edebug-skip-whitespace|edebug-slow-after|edebug-slow-before|edebug-sort-alist|edebug-spec-p|edebug-step-in|edebug-step-mode|edebug-step-out|edebug-step-through-mode|edebug-stop|edebug-store-after-offset|edebug-store-before-offset|edebug-storing-offsets|edebug-syntax-error|edebug-toggle-save-all-windows|edebug-toggle-save-selected-window|edebug-toggle-save-windows|edebug-toggle|edebug-top-element-required|edebug-top-element|edebug-top-level-nonstop|edebug-top-offset|edebug-trace-display|edebug-trace-mode|edebug-uninstall-read-eval-functions|edebug-unload-function|edebug-unset-breakpoint|edebug-unwrap\\\\\\\\*|edebug-unwrap|edebug-update-eval-list|edebug-var-status|edebug-view-outside|edebug-visit-eval-list|edebug-where|edebug-window-list|edebug-window-live-p|edebug-wrap-def-body|ediff-3way-comparison-job|ediff-3way-job|ediff-abbrev-jobname|ediff-abbreviate-file-name|ediff-activate-mark|ediff-add-slash-if-directory|ediff-add-to-history|ediff-ancestor-metajob|ediff-append-custom-diff|ediff-arrange-autosave-in-merge-jobs|ediff-background-face|ediff-backup|ediff-barf-if-not-control-buffer|ediff-buffer-live-p|ediff-buffer-type|ediff-buffers-internal|ediff-buffers|ediff-buffers3|ediff-bury-dir-diffs-buffer|ediff-calc-command-time|ediff-change-saved-variable|ediff-char-to-buftype|ediff-check-version|ediff-choose-syntax-table|ediff-choose-window-setup-function-automatically|ediff-cleanup-mess|ediff-cleanup-meta-buffer|ediff-clear-diff-vector|ediff-clear-fine-diff-vector|ediff-clear-fine-differences-in-one-buffer|ediff-clear-fine-differences|ediff-clone-buffer-for-current-diff-comparison|ediff-clone-buffer-for-region-comparison|ediff-clone-buffer-for-window-comparison|ediff-collect-custom-diffs|ediff-collect-diffs-metajob|ediff-color-display-p|ediff-combine-diffs|ediff-comparison-metajob3|ediff-compute-custom-diffs-maybe|ediff-compute-toolbar-width|ediff-convert-diffs-to-overlays|ediff-convert-fine-diffs-to-overlays|ediff-convert-standard-filename|ediff-copy-A-to-B|ediff-copy-A-to-C|ediff-copy-B-to-A|ediff-copy-B-to-C|ediff-copy-C-to-A|ediff-copy-C-to-B|ediff-copy-diff|ediff-copy-list|ediff-copy-to-buffer|ediff-current-file|ediff-customize|ediff-deactivate-mark|ediff-debug-info|ediff-default-suspend-function|ediff-defvar-local|ediff-delete-all-matches|ediff-delete-overlay|ediff-delete-temp-files|ediff-destroy-control-frame|ediff-device-type|ediff-diff-at-point|ediff-diff-to-diff|ediff-diff3-job|ediff-dir-diff-copy-file|ediff-directories-command|ediff-directories-internal|ediff-directories|ediff-directories3-command|ediff-directories3|ediff-directory-revisions-internal|ediff-directory-revisions|ediff-display-pixel-height|ediff-display-pixel-width|ediff-dispose-of-meta-buffer|ediff-dispose-of-variant-according-to-user|ediff-do-merge|ediff-documentation|ediff-draw-dir-diffs|ediff-empty-diff-region-p|ediff-empty-overlay-p|ediff-event-buffer|ediff-event-key|ediff-event-point|ediff-exec-process|ediff-extract-diffs|ediff-extract-diffs3|ediff-file-attributes|ediff-file-checked-in-p|ediff-file-checked-out-p|ediff-file-compressed-p|ediff-file-modtime|ediff-file-remote-p|ediff-file-size|ediff-filegroup-action|ediff-filename-magic-p|ediff-files-command|ediff-files-internal|ediff-files|ediff-files3|ediff-fill-leading-zero|ediff-find-file|ediff-focus-on-regexp-matches|ediff-format-bindings-of|ediff-format-date|ediff-forward-word|ediff-frame-char-height|ediff-frame-char-width|ediff-frame-has-dedicated-windows|ediff-frame-iconified-p|ediff-frame-unsplittable-p|ediff-get-buffer|ediff-get-combined-region|ediff-get-default-directory-name|ediff-get-default-file-name|ediff-get-diff-overlay-from-diff-record|ediff-get-diff-overlay|ediff-get-diff-posn|ediff-get-diff3-group|ediff-get-difference|ediff-get-directory-files-under-revision|ediff-get-file-eqstatus|ediff-get-fine-diff-vector-from-diff-record|ediff-get-fine-diff-vector|ediff-get-group-buffer|ediff-get-group-comparison-func|ediff-get-group-merge-autostore-dir|ediff-get-group-objA|ediff-get-group-objB|ediff-get-group-objC|ediff-get-group-regexp|ediff-get-lines-to-region-end|ediff-get-lines-to-region-start|ediff-get-meta-info|ediff-get-meta-overlay-at-pos|ediff-get-next-window|ediff-get-region-contents|ediff-get-region-size-coefficient|ediff-get-selected-buffers|ediff-get-session-activity-marker|ediff-get-session-buffer|ediff-get-session-number-at-pos|ediff-get-session-objA-name|ediff-get-session-objA|ediff-get-session-objB-name|ediff-get-session-objB|ediff-get-session-objC-name|ediff-get-session-objC|ediff-get-session-status|ediff-get-state-of-ancestor|ediff-get-state-of-diff|ediff-get-state-of-merge|ediff-get-symbol-from-alist|ediff-get-value-according-to-buffer-type|ediff-get-visible-buffer-window|ediff-get-window-by-clicking|ediff-good-frame-under-mouse|ediff-goto-word|ediff-has-face-support-p|ediff-has-gutter-support-p|ediff-has-toolbar-support-p|ediff-help-for-quick-help|ediff-help-message-line-length|ediff-hide-face|ediff-hide-marked-sessions|ediff-hide-regexp-matches|ediff-highlight-diff-in-one-buffer|ediff-highlight-diff|ediff-in-control-buffer-p|ediff-indent-help-message|ediff-inferior-compare-regions|ediff-insert-dirs-in-meta-buffer|ediff-insert-session-activity-marker-in-meta-buffer|ediff-insert-session-info-in-meta-buffer|ediff-insert-session-status-in-meta-buffer|ediff-install-fine-diff-if-necessary|ediff-intersect-directories|ediff-intersection|ediff-janitor|ediff-jump-to-difference-at-point|ediff-jump-to-difference|ediff-keep-window-config|ediff-key-press-event-p|ediff-kill-bottom-toolbar|ediff-kill-buffer-carefully|ediff-last-command-char|ediff-listable-file|ediff-load-version-control|ediff-looks-like-combined-merge|ediff-make-base-title|ediff-make-bottom-toolbar|ediff-make-bullet-proof-overlay|ediff-make-cloned-buffer|ediff-make-current-diff-overlay|ediff-make-diff2-buffer|ediff-make-empty-tmp-file|ediff-make-fine-diffs|ediff-make-frame-position|ediff-make-indirect-buffer|ediff-make-narrow-control-buffer-id|ediff-make-new-meta-list-element|ediff-make-new-meta-list-header|ediff-make-or-kill-fine-diffs|ediff-make-overlay|ediff-make-temp-file|ediff-make-wide-control-buffer-id|ediff-make-wide-display|ediff-mark-diff-as-space-only|ediff-mark-for-hiding-at-pos|ediff-mark-for-operation-at-pos|ediff-mark-if-equal|ediff-mark-session-for-hiding|ediff-mark-session-for-operation|ediff-maybe-checkout|ediff-maybe-save-and-delete-merge|ediff-member|ediff-merge-buffers-with-ancestor|ediff-merge-buffers|ediff-merge-changed-from-default-p|ediff-merge-command|ediff-merge-directories-command|ediff-merge-directories-with-ancestor-command)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:ediff-merge-directories-with-ancestor|ediff-merge-directories|ediff-merge-directory-revisions-with-ancestor|ediff-merge-directory-revisions|ediff-merge-files-with-ancestor|ediff-merge-files|ediff-merge-job|ediff-merge-metajob|ediff-merge-on-startup|ediff-merge-region-is-non-clash-to-skip|ediff-merge-region-is-non-clash|ediff-merge-revisions-with-ancestor|ediff-merge-revisions|ediff-merge-with-ancestor-command|ediff-merge-with-ancestor-job|ediff-merge-with-ancestor|ediff-merge|ediff-message-if-verbose|ediff-meta-insert-file-info1|ediff-meta-mark-equal-files|ediff-meta-mode|ediff-meta-session-p|ediff-meta-show-patch|ediff-metajob3|ediff-minibuffer-with-setup-hook|ediff-mode|ediff-mouse-event-p|ediff-move-overlay|ediff-multiframe-setup-p|ediff-narrow-control-frame-p|ediff-narrow-job|ediff-next-difference|ediff-next-meta-item|ediff-next-meta-item1|ediff-next-meta-overlay-start|ediff-no-fine-diffs-p|ediff-nonempty-string-p|ediff-nuke-selective-display|ediff-one-filegroup-metajob|ediff-operate-on-marked-sessions|ediff-operate-on-windows|ediff-other-buffer|ediff-overlay-buffer|ediff-overlay-end|ediff-overlay-get|ediff-overlay-put|ediff-overlay-start|ediff-overlayp|ediff-paint-background-regions-in-one-buffer|ediff-paint-background-regions|ediff-patch-buffer|ediff-patch-file-form-meta|ediff-patch-file-internal|ediff-patch-file|ediff-patch-job|ediff-patch-metajob|ediff-place-flags-in-buffer|ediff-place-flags-in-buffer1|ediff-pop-diff|ediff-position-region|ediff-prepare-error-list|ediff-prepare-meta-buffer|ediff-previous-difference|ediff-previous-meta-item|ediff-previous-meta-item1|ediff-previous-meta-overlay-start|ediff-print-diff-vector|ediff-problematic-session-p|ediff-process-filter|ediff-process-sentinel|ediff-profile|ediff-quit-meta-buffer|ediff-quit|ediff-re-merge|ediff-read-event|ediff-read-file-name|ediff-really-quit|ediff-recenter-ancestor|ediff-recenter-one-window|ediff-recenter|ediff-redraw-directory-group-buffer|ediff-redraw-registry-buffer|ediff-refresh-control-frame|ediff-refresh-mode-lines|ediff-region-help-echo|ediff-regions-internal|ediff-regions-linewise|ediff-regions-wordwise|ediff-registry-action|ediff-reload-keymap|ediff-remove-flags-from-buffer|ediff-replace-session-activity-marker-in-meta-buffer|ediff-replace-session-status-in-meta-buffer|ediff-reset-mouse|ediff-restore-diff-in-merge-buffer|ediff-restore-diff|ediff-restore-highlighting|ediff-restore-protected-variables|ediff-restore-variables|ediff-revert-buffers-then-recompute-diffs|ediff-revision-metajob|ediff-revision|ediff-safe-to-quit|ediff-same-contents|ediff-same-file-contents-lists|ediff-same-file-contents|ediff-save-buffer-in-file|ediff-save-buffer|ediff-save-diff-region|ediff-save-protected-variables|ediff-save-time|ediff-save-variables|ediff-scroll-horizontally|ediff-scroll-vertically|ediff-select-difference|ediff-select-lowest-window|ediff-set-actual-diff-options|ediff-set-diff-options|ediff-set-diff-overlays-in-one-buffer|ediff-set-difference|ediff-set-face-pixmap|ediff-set-file-eqstatus|ediff-set-fine-diff-properties-in-one-buffer|ediff-set-fine-diff-properties|ediff-set-fine-diff-vector|ediff-set-fine-overlays-for-combined-merge|ediff-set-fine-overlays-in-one-buffer|ediff-set-help-message|ediff-set-help-overlays|ediff-set-keys|ediff-set-merge-mode|ediff-set-meta-overlay|ediff-set-overlay-face|ediff-set-read-only-in-buf-A|ediff-set-session-status|ediff-set-state-of-all-diffs-in-all-buffers|ediff-set-state-of-diff-in-all-buffers|ediff-set-state-of-diff|ediff-set-state-of-merge|ediff-setup-control-buffer|ediff-setup-control-frame|ediff-setup-diff-regions|ediff-setup-diff-regions3|ediff-setup-fine-diff-regions|ediff-setup-keymap|ediff-setup-meta-map|ediff-setup-windows-default|ediff-setup-windows-multiframe-compare|ediff-setup-windows-multiframe-merge|ediff-setup-windows-multiframe|ediff-setup-windows-plain-compare|ediff-setup-windows-plain-merge|ediff-setup-windows-plain|ediff-setup-windows|ediff-setup|ediff-show-all-diffs|ediff-show-ancestor|ediff-show-current-session-meta-buffer|ediff-show-diff-output|ediff-show-dir-diffs|ediff-show-meta-buff-from-registry|ediff-show-meta-buffer|ediff-show-registry|ediff-shrink-window-C|ediff-skip-merge-region-if-changed-from-default-p|ediff-skip-unsuitable-frames|ediff-spy-after-mouse|ediff-status-info|ediff-strip-last-dir|ediff-strip-mode-line-format|ediff-submit-report|ediff-suspend|ediff-swap-buffers|ediff-test-save-region|ediff-toggle-autorefine|ediff-toggle-filename-truncation|ediff-toggle-help|ediff-toggle-hilit|ediff-toggle-ignore-case|ediff-toggle-multiframe|ediff-toggle-narrow-region|ediff-toggle-read-only|ediff-toggle-regexp-match|ediff-toggle-show-clashes-only|ediff-toggle-skip-changed-regions|ediff-toggle-skip-similar|ediff-toggle-split|ediff-toggle-use-toolbar|ediff-toggle-verbose-help-meta-buffer|ediff-toggle-wide-display|ediff-truncate-string-left|ediff-unhighlight-diff-in-one-buffer|ediff-unhighlight-diff|ediff-unhighlight-diffs-totally-in-one-buffer|ediff-unhighlight-diffs-totally|ediff-union|ediff-unique-buffer-name|ediff-unmark-all-for-hiding|ediff-unmark-all-for-operation|ediff-unselect-and-select-difference|ediff-unselect-difference|ediff-up-meta-hierarchy|ediff-update-diffs|ediff-update-markers-in-dir-meta-buffer|ediff-update-meta-buffer|ediff-update-registry|ediff-update-session-marker-in-dir-meta-buffer|ediff-use-toolbar-p|ediff-user-grabbed-mouse|ediff-valid-difference-p|ediff-verify-file-buffer|ediff-verify-file-merge-buffer|ediff-version|ediff-visible-region|ediff-whitespace-diff-region-p|ediff-window-display-p|ediff-window-ok-for-display|ediff-window-visible-p|ediff-windows-job|ediff-windows-linewise|ediff-windows-wordwise|ediff-windows|ediff-with-current-buffer|ediff-with-syntax-table|ediff-word-mode-job|ediff-wordify|ediff-write-merge-buffer-and-maybe-kill|ediff-xemacs-select-frame-hook|ediff|ediff3-files-command|ediff3|edir-merge-revisions-with-ancestor|edir-merge-revisions|edir-revisions|edirs-merge-with-ancestor|edirs-merge|edirs|edirs3|edit-abbrevs-mode|edit-abbrevs-redefine|edit-abbrevs|edit-bookmarks|edit-kbd-macro|edit-last-kbd-macro|edit-named-kbd-macro|edit-picture|edit-tab-stops-note-changes|edit-tab-stops|edmacro-finish-edit|edmacro-fix-menu-commands|edmacro-format-keys|edmacro-insert-key|edmacro-mode|edmacro-parse-keys|edmacro-sanitize-for-string|edt-advance|edt-append|edt-backup|edt-beginning-of-line|edt-bind-function-key-default|edt-bind-function-key|edt-bind-gold-key-default|edt-bind-gold-key|edt-bind-key-default|edt-bind-key|edt-bind-standard-key|edt-bottom-check|edt-bottom|edt-change-case|edt-change-direction|edt-character|edt-check-match|edt-check-prefix|edt-check-selection|edt-copy-rectangle|edt-copy|edt-current-line|edt-cut-or-copy|edt-cut-rectangle-insert-mode|edt-cut-rectangle-overstrike-mode|edt-cut-rectangle|edt-cut|edt-default-emulation-setup|edt-default-menu-bar-update-buffers|edt-define-key|edt-delete-character|edt-delete-entire-line|edt-delete-line|edt-delete-previous-character|edt-delete-to-beginning-of-line|edt-delete-to-beginning-of-word|edt-delete-to-end-of-line|edt-delete-word|edt-display-the-time|edt-duplicate-line|edt-duplicate-word|edt-electric-helpify|edt-electric-keypad-help|edt-electric-user-keypad-help|edt-eliminate-all-tabs|edt-emulation-off|edt-emulation-on|edt-end-of-line-backward|edt-end-of-line-forward|edt-end-of-line|edt-exit|edt-fill-region|edt-find-backward|edt-find-forward|edt-find-next-backward|edt-find-next-forward|edt-find-next|edt-find|edt-form-feed-insert|edt-goto-percentage|edt-indent-or-fill-region|edt-key-not-assigned|edt-keypad-help|edt-learn|edt-line-backward|edt-line-forward|edt-line-to-bottom-of-window|edt-line-to-middle-of-window|edt-line-to-top-of-window|edt-line|edt-load-keys|edt-lowercase|edt-mark-section-wisely|edt-match-beginning|edt-match-end|edt-next-line|edt-one-word-backward|edt-one-word-forward|edt-page-backward|edt-page-forward|edt-page|edt-paragraph-backward|edt-paragraph-forward|edt-paragraph|edt-paste-rectangle-insert-mode|edt-paste-rectangle-overstrike-mode|edt-paste-rectangle|edt-previous-line|edt-quit|edt-remember|edt-replace|edt-reset|edt-restore-key|edt-scroll-line|edt-scroll-window-backward-line|edt-scroll-window-backward|edt-scroll-window-forward-line|edt-scroll-window-forward|edt-scroll-window|edt-sect-backward|edt-sect-forward|edt-sect|edt-select-default-global-map|edt-select-mode|edt-select-user-global-map|edt-select|edt-sentence-backward|edt-sentence-forward|edt-sentence|edt-set-match|edt-set-screen-width-132|edt-set-screen-width-80|edt-set-scroll-margins|edt-setup-default-bindings|edt-show-match-markers|edt-split-window|edt-substitute|edt-switch-global-maps|edt-tab-insert|edt-toggle-capitalization-of-word|edt-toggle-select|edt-top-check|edt-top|edt-undelete-character|edt-undelete-line|edt-undelete-word|edt-unset-match|edt-uppercase|edt-user-emulation-setup|edt-user-menu-bar-update-buffers|edt-window-bottom|edt-window-top|edt-with-position|edt-word-backward|edt-word-forward|edt-word|edt-y-or-n-p|ehelp-command|eieio--check-type|eieio--class--unused-0|eieio--class-children|eieio--class-class-allocation-a|eieio--class-class-allocation-custom-group|eieio--class-class-allocation-custom-label|eieio--class-class-allocation-custom|eieio--class-class-allocation-doc|eieio--class-class-allocation-printer|eieio--class-class-allocation-protection|eieio--class-class-allocation-type|eieio--class-class-allocation-values|eieio--class-default-object-cache|eieio--class-initarg-tuples|eieio--class-options|eieio--class-parent|eieio--class-protection|eieio--class-public-a|eieio--class-public-custom-group|eieio--class-public-custom-label|eieio--class-public-custom|eieio--class-public-d|eieio--class-public-doc|eieio--class-public-printer|eieio--class-public-type|eieio--class-symbol-obarray|eieio--class-symbol|eieio--defalias|eieio--defgeneric-init-form|eieio--define-field-accessors|eieio--defmethod|eieio--object--unused-0|eieio--object-class|eieio--object-name|eieio--scoped-class|eieio--with-scoped-class|eieio-add-new-slot|eieio-attribute-to-initarg|eieio-barf-if-slot-unbound|eieio-browse|eieio-c3-candidate|eieio-c3-merge-lists|eieio-class-children-fast|eieio-class-children|eieio-class-name|eieio-class-parent|eieio-class-parents-fast|eieio-class-parents|eieio-class-precedence-bfs|eieio-class-precedence-c3|eieio-class-precedence-dfs|eieio-class-precedence-list|eieio-class-slot-name-index|eieio-class-un-autoload|eieio-copy-parents-into-subclass|eieio-custom-mode|eieio-custom-object-apply-reset|eieio-custom-toggle-hide|eieio-custom-toggle-parent|eieio-custom-widget-insert|eieio-customize-object-group|eieio-customize-object|eieio-default-eval-maybe|eieio-default-superclass-child-p|eieio-default-superclass-list-p|eieio-default-superclass-p|eieio-default-superclass|eieio-defclass-autoload|eieio-defclass|eieio-defgeneric-form-primary-only-one|eieio-defgeneric-form-primary-only|eieio-defgeneric-form|eieio-defgeneric-reset-generic-form-primary-only-one|eieio-defgeneric-reset-generic-form-primary-only|eieio-defgeneric-reset-generic-form|eieio-defgeneric|eieio-defmethod|eieio-done-customizing|eieio-edebug-prin1-to-string|eieio-eval-default-p|eieio-filter-slot-type|eieio-generic-call-primary-only|eieio-generic-call|eieio-generic-form|eieio-help-class|eieio-help-constructor|eieio-help-generic|eieio-initarg-to-attribute|eieio-instance-inheritor-child-p|eieio-instance-inheritor-list-p|eieio-instance-inheritor-p|eieio-instance-inheritor-slot-boundp|eieio-instance-inheritor|eieio-instance-tracker-child-p|eieio-instance-tracker-find|eieio-instance-tracker-list-p|eieio-instance-tracker-p|eieio-instance-tracker|eieio-list-prin1|eieio-named-child-p|eieio-named-list-p|eieio-named-p|eieio-named|eieio-object-abstract-to-value|eieio-object-class-name|eieio-object-class|eieio-object-match|eieio-object-name-string|eieio-object-name|eieio-object-p|eieio-object-set-name-string|eieio-object-value-create|eieio-object-value-get|eieio-object-value-to-abstract|eieio-oref-default|eieio-oref|eieio-oset-default|eieio-oset|eieio-override-prin1|eieio-perform-slot-validation-for-default|eieio-perform-slot-validation|eieio-persistent-child-p|eieio-persistent-convert-list-to-object|eieio-persistent-list-p|eieio-persistent-p|eieio-persistent-path-relative)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:eieio-persistent-read|eieio-persistent-save-interactive|eieio-persistent-save|eieio-persistent-slot-type-is-class-p|eieio-persistent-validate\\\\\\\\/fix-slot-value|eieio-persistent|eieio-read-customization-group|eieio-set-defaults|eieio-singleton-child-p|eieio-singleton-list-p|eieio-singleton-p|eieio-singleton|eieio-slot-name-index|eieio-slot-originating-class-p|eieio-slot-value-create|eieio-slot-value-get|eieio-specialized-key-to-generic-key|eieio-speedbar-buttons|eieio-speedbar-child-description|eieio-speedbar-child-make-tag-lines|eieio-speedbar-child-p|eieio-speedbar-create-engine|eieio-speedbar-create|eieio-speedbar-customize-line|eieio-speedbar-derive-line-path|eieio-speedbar-description|eieio-speedbar-directory-button-child-p|eieio-speedbar-directory-button-list-p|eieio-speedbar-directory-button-p|eieio-speedbar-directory-button|eieio-speedbar-expand|eieio-speedbar-file-button-child-p|eieio-speedbar-file-button-list-p|eieio-speedbar-file-button-p|eieio-speedbar-file-button|eieio-speedbar-find-nearest-object|eieio-speedbar-handle-click|eieio-speedbar-item-info|eieio-speedbar-line-path|eieio-speedbar-list-p|eieio-speedbar-make-map|eieio-speedbar-make-tag-line|eieio-speedbar-object-buttonname|eieio-speedbar-object-children|eieio-speedbar-object-click|eieio-speedbar-object-expand|eieio-speedbar-p|eieio-speedbar|eieio-unbind-method-implementations|eieio-validate-class-slot-value|eieio-validate-slot-value|eieio-version|eieio-widget-test-class-child-p|eieio-widget-test-class-list-p|eieio-widget-test-class-p|eieio-widget-test-class|eieiomt-add|eieiomt-install|eieiomt-method-list|eieiomt-next|eieiomt-sym-optimize|eighth|eldoc--message-command-p|eldoc-add-command-completions|eldoc-add-command|eldoc-display-message-no-interference-p|eldoc-display-message-p|eldoc-edit-message-commands|eldoc-message|eldoc-minibuffer-message|eldoc-mode|eldoc-pre-command-refresh-echo-area|eldoc-print-current-symbol-info|eldoc-remove-command-completions|eldoc-remove-command|eldoc-schedule-timer|electric--after-char-pos|electric--sort-post-self-insertion-hook|electric-apropos|electric-buffer-list|electric-buffer-menu-looper|electric-buffer-menu-mode|electric-buffer-update-highlight|electric-command-apropos|electric-describe-bindings|electric-describe-function|electric-describe-key|electric-describe-mode|electric-describe-syntax|electric-describe-variable|electric-help-command-loop|electric-help-ctrl-x-prefix|electric-help-execute-extended|electric-help-exit|electric-help-help|electric-help-mode|electric-help-retain|electric-help-undefined|electric-helpify|electric-icon-brace|electric-indent-just-newline|electric-indent-local-mode|electric-indent-mode|electric-indent-post-self-insert-function|electric-layout-mode|electric-layout-post-self-insert-function|electric-newline-and-maybe-indent|electric-nroff-mode|electric-nroff-newline|electric-pair-mode|electric-pascal-colon|electric-pascal-equal|electric-pascal-hash|electric-pascal-semi-or-dot|electric-pascal-tab|electric-pascal-terminate-line|electric-perl-terminator|electric-verilog-backward-sexp|electric-verilog-colon|electric-verilog-forward-sexp|electric-verilog-semi-with-comment|electric-verilog-semi|electric-verilog-tab|electric-verilog-terminate-and-indent|electric-verilog-terminate-line|electric-verilog-tick|electric-view-lossage|el-get[-\\\\\\\\w]*|elide-head-show|elide-head|elint-add-required-env|elint-check-cond-form|elint-check-condition-case-form|elint-check-conditional-form|elint-check-defalias-form|elint-check-defcustom-form|elint-check-defun-form|elint-check-defvar-form|elint-check-function-form|elint-check-let-form|elint-check-macro-form|elint-check-quote-form|elint-check-setq-form|elint-clear-log|elint-current-buffer|elint-defun|elint-directory|elint-display-log|elint-env-add-env|elint-env-add-func|elint-env-add-global-var|elint-env-add-macro|elint-env-add-var|elint-env-find-func|elint-env-find-var|elint-env-macro-env|elint-env-macrop|elint-error|elint-file|elint-find-args-in-code|elint-find-autoloaded-variables|elint-find-builtin-args|elint-find-builtins|elint-find-next-top-form|elint-form|elint-forms|elint-get-args|elint-get-log-buffer|elint-get-top-forms|elint-init-env|elint-init-form|elint-initialize|elint-log-message|elint-log|elint-make-env|elint-make-top-form|elint-match-args|elint-output|elint-put-function-args|elint-scan-doc-file|elint-set-mode-line|elint-top-form-form|elint-top-form-pos|elint-top-form|elint-unbound-variable|elint-update-env|elint-warning|elisp--beginning-of-sexp|elisp--byte-code-comment|elisp--company-doc-buffer|elisp--company-doc-string|elisp--company-location|elisp--current-symbol|elisp--docstring-first-line|elisp--docstring-format-sym-doc|elisp--eval-defun-1|elisp--eval-defun|elisp--eval-last-sexp-print-value|elisp--eval-last-sexp|elisp--expect-function-p|elisp--fnsym-in-current-sexp|elisp--form-quoted-p|elisp--function-argstring|elisp--get-fnsym-args-string|elisp--get-var-docstring|elisp--highlight-function-argument|elisp--last-data-store|elisp--local-variables-1|elisp--local-variables|elisp--preceding-sexp|elisp--xref-find-apropos|elisp--xref-find-definitions|elisp--xref-identifier-completion-table|elisp--xref-identifier-file|elisp-byte-code-mode|elisp-byte-code-syntax-propertize|elisp-completion-at-point|elisp-eldoc-documentation-function|elisp-index-search|elisp-last-sexp-toggle-display|elisp-xref-find|elp--instrumented-p|elp--make-wrapper|elp-elapsed-time|elp-instrument-function|elp-instrument-list|elp-instrument-package|elp-output-insert-symname|elp-output-result|elp-pack-number|elp-profilable-p|elp-reset-all|elp-reset-function|elp-reset-list|elp-restore-all|elp-restore-function|elp-restore-list|elp-results-jump-to-definition|elp-results|elp-set-master|elp-sort-by-average-time|elp-sort-by-call-count|elp-sort-by-total-time|elp-unload-function|elp-unset-master|emacs-bzr-get-version|emacs-bzr-version-bzr|emacs-bzr-version-dirstate|emacs-index-search|emacs-lisp-byte-compile-and-load|emacs-lisp-byte-compile|emacs-lisp-macroexpand|emacs-lisp-mode|emacs-lock--can-auto-unlock|emacs-lock--exit-locked-buffer|emacs-lock--kill-buffer-query-functions|emacs-lock--kill-emacs-hook|emacs-lock--kill-emacs-query-functions|emacs-lock--set-mode|emacs-lock-live-process-p|emacs-lock-mode|emacs-lock-unload-function|emacs-repository-get-version|emacs-session-filename|emacs-session-save|emerge-abort|emerge-auto-advance|emerge-buffers-with-ancestor|emerge-buffers|emerge-combine-versions-edit|emerge-combine-versions-internal|emerge-combine-versions-register|emerge-combine-versions|emerge-command-exit|emerge-compare-buffers|emerge-convert-diffs-to-markers|emerge-copy-as-kill-A|emerge-copy-as-kill-B|emerge-copy-modes|emerge-count-matches-string|emerge-default-A|emerge-default-B|emerge-define-key-if-possible|emerge-defvar-local|emerge-edit-mode|emerge-execute-line|emerge-extract-diffs|emerge-extract-diffs3|emerge-fast-mode|emerge-file-names|emerge-files-command|emerge-files-exit|emerge-files-internal|emerge-files-remote|emerge-files-with-ancestor-command|emerge-files-with-ancestor-internal|emerge-files-with-ancestor-remote|emerge-files-with-ancestor|emerge-files|emerge-find-difference-A|emerge-find-difference-B|emerge-find-difference-merge|emerge-find-difference|emerge-find-difference1|emerge-force-define-key|emerge-get-diff3-group|emerge-goto-line|emerge-handle-local-variables|emerge-hash-string-into-string|emerge-insert-A|emerge-insert-B|emerge-join-differences|emerge-jump-to-difference|emerge-line-number-in-buf|emerge-line-numbers|emerge-make-auto-save-file-name|emerge-make-diff-list|emerge-make-diff3-list|emerge-make-temp-file|emerge-mark-difference|emerge-merge-directories|emerge-mode|emerge-new-flags|emerge-next-difference|emerge-one-line-window|emerge-operate-on-windows|emerge-place-flags-in-buffer|emerge-place-flags-in-buffer1|emerge-position-region|emerge-prepare-error-list|emerge-previous-difference|emerge-protect-metachars|emerge-query-and-call|emerge-query-save-buffer|emerge-query-write-file|emerge-quit|emerge-read-file-name|emerge-really-quit|emerge-recenter|emerge-refresh-mode-line|emerge-remember-buffer-characteristics|emerge-remote-exit|emerge-remove-flags-in-buffer|emerge-restore-buffer-characteristics|emerge-restore-variables|emerge-revision-with-ancestor-internal|emerge-revisions-internal|emerge-revisions-with-ancestor|emerge-revisions|emerge-save-variables|emerge-scroll-down|emerge-scroll-left|emerge-scroll-reset|emerge-scroll-right|emerge-scroll-up|emerge-select-A-edit|emerge-select-A|emerge-select-B-edit|emerge-select-B|emerge-select-difference|emerge-select-prefer-Bs|emerge-select-version|emerge-set-combine-template|emerge-set-combine-versions-template|emerge-set-keys|emerge-set-merge-mode|emerge-setup-fixed-keymaps|emerge-setup-windows|emerge-setup-with-ancestor|emerge-setup|emerge-show-file-name|emerge-skip-prefers|emerge-split-difference|emerge-trim-difference|emerge-unique-buffer-name|emerge-unselect-and-select-difference|emerge-unselect-difference|emerge-unslashify-name|emerge-validate-difference|emerge-verify-file-buffer|emerge-write-and-delete|en\\\\\\\\/disable-command|enable-flow-control-on|enable-flow-control|encode-big5-char|encode-coding-char|encode-composition-components|encode-composition-rule|encode-hex-string|encode-hz-buffer|encode-hz-region|encode-sjis-char|encode-time-value|encoded-string-description|end-kbd-macro|end-of-buffer-other-window|end-of-icon-defun|end-of-paragraph-text|end-of-sexp|end-of-thing|end-of-visible-line|end-of-visual-line|endp|enlarge-window-horizontally|enlarge-window|enriched-after-change-major-mode|enriched-before-change-major-mode|enriched-decode-background|enriched-decode-display-prop|enriched-decode-foreground|enriched-decode|enriched-encode-other-face|enriched-encode|enriched-face-ans|enriched-get-file-width|enriched-handle-display-prop|enriched-insert-indentation|enriched-make-annotation|enriched-map-property-regions|enriched-mode-map|enriched-mode|enriched-next-annotation|enriched-remove-header|epa--decode-coding-string|epa--derived-mode-p|epa--encode-coding-string|epa--find-coding-system-for-mime-charset|epa--insert-keys|epa--key-list-revert-buffer|epa--key-widget-action|epa--key-widget-button-face-get|epa--key-widget-help-echo|epa--key-widget-value-create|epa--list-keys|epa--marked-keys|epa--read-signature-type|epa--select-keys|epa--select-safe-coding-system|epa--show-key|epa-decrypt-armor-in-region|epa-decrypt-file|epa-decrypt-region|epa-delete-keys|epa-dired-do-decrypt|epa-dired-do-encrypt|epa-dired-do-sign|epa-dired-do-verify|epa-display-error|epa-display-info|epa-display-verify-result|epa-encrypt-file|epa-encrypt-region|epa-exit-buffer|epa-export-keys|epa-file--file-name-regexp-set|epa-file-disable|epa-file-enable|epa-file-find-file-hook|epa-file-handler|epa-file-name-regexp-update|epa-global-mail-mode|epa-import-armor-in-region|epa-import-keys-region|epa-import-keys|epa-info-mode|epa-insert-keys|epa-key-list-mode|epa-key-mode|epa-list-keys|epa-list-secret-keys|epa-mail-decrypt|epa-mail-encrypt|epa-mail-import-keys|epa-mail-mode|epa-mail-sign|epa-mail-verify|epa-mark-key|epa-passphrase-callback-function|epa-progress-callback-function|epa-read-file-name|epa-select-keys|epa-sign-file|epa-sign-region|epa-unmark-key|epa-verify-cleartext-in-region|epa-verify-file|epa-verify-region|epatch-buffer|epatch|epg--args-from-sig-notations|epg--check-error-for-decrypt|epg--clear-string|epg--decode-coding-string|epg--decode-hexstring|epg--decode-percent-escape|epg--decode-quotedstring|epg--encode-coding-string|epg--gv-nreverse|epg--import-keys-1|epg--list-keys-1|epg--make-sub-key-1|epg--make-temp-file|epg--process-filter|epg--prompt-GET_BOOL-untrusted_key\\\\\\\\.override|epg--prompt-GET_BOOL|epg--start|epg--status-\\\\\\\\*SIG|epg--status-BADARMOR|epg--status-BADSIG|epg--status-DECRYPTION_FAILED|epg--status-DECRYPTION_OKAY|epg--status-DELETE_PROBLEM|epg--status-ENC_TO|epg--status-ERRSIG|epg--status-EXPKEYSIG|epg--status-EXPSIG|epg--status-GET_BOOL|epg--status-GET_HIDDEN|epg--status-GET_LINE|epg--status-GOODSIG|epg--status-IMPORTED|epg--status-IMPORT_OK|epg--status-IMPORT_PROBLEM|epg--status-IMPORT_RES|epg--status-INV_RECP|epg--status-INV_SGNR|epg--status-KEYEXPIRED|epg--status-KEYREVOKED|epg--status-KEY_CREATED|epg--status-KEY_NOT_CREATED|epg--status-NEED_PASSPHRASE|epg--status-NEED_PASSPHRASE_PIN|epg--status-NEED_PASSPHRASE_SYM|epg--status-NODATA)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:epg--status-NOTATION_DATA|epg--status-NOTATION_NAME|epg--status-NO_PUBKEY|epg--status-NO_RECP|epg--status-NO_SECKEY|epg--status-NO_SGNR|epg--status-POLICY_URL|epg--status-PROGRESS|epg--status-REVKEYSIG|epg--status-SIG_CREATED|epg--status-TRUST_FULLY|epg--status-TRUST_MARGINAL|epg--status-TRUST_NEVER|epg--status-TRUST_ULTIMATE|epg--status-TRUST_UNDEFINED|epg--status-UNEXPECTED|epg--status-USERID_HINT|epg--status-VALIDSIG|epg--time-from-seconds|epg-cancel|epg-check-configuration|epg-config--compare-version|epg-config--parse-version|epg-configuration|epg-context--make|epg-context-armor--cmacro|epg-context-armor|epg-context-cipher-algorithm--cmacro|epg-context-cipher-algorithm|epg-context-compress-algorithm--cmacro|epg-context-compress-algorithm|epg-context-digest-algorithm--cmacro|epg-context-digest-algorithm|epg-context-edit-callback--cmacro|epg-context-edit-callback|epg-context-error-output--cmacro|epg-context-error-output|epg-context-home-directory--cmacro|epg-context-home-directory|epg-context-include-certs--cmacro|epg-context-include-certs|epg-context-operation--cmacro|epg-context-operation|epg-context-output-file--cmacro|epg-context-output-file|epg-context-passphrase-callback--cmacro|epg-context-passphrase-callback|epg-context-pinentry-mode--cmacro|epg-context-pinentry-mode|epg-context-process--cmacro|epg-context-process|epg-context-program--cmacro|epg-context-program|epg-context-progress-callback--cmacro|epg-context-progress-callback|epg-context-protocol--cmacro|epg-context-protocol|epg-context-result--cmacro|epg-context-result-for|epg-context-result|epg-context-set-armor|epg-context-set-passphrase-callback|epg-context-set-progress-callback|epg-context-set-result-for|epg-context-set-signers|epg-context-set-textmode|epg-context-sig-notations--cmacro|epg-context-sig-notations|epg-context-signers--cmacro|epg-context-signers|epg-context-textmode--cmacro|epg-context-textmode|epg-data-file--cmacro|epg-data-file|epg-data-string--cmacro|epg-data-string|epg-decode-dn|epg-decrypt-file|epg-decrypt-string|epg-delete-keys|epg-delete-output-file|epg-dn-from-string|epg-edit-key|epg-encrypt-file|epg-encrypt-string|epg-error-to-string|epg-errors-to-string|epg-expand-group|epg-export-keys-to-file|epg-export-keys-to-string|epg-generate-key-from-file|epg-generate-key-from-string|epg-import-keys-from-file|epg-import-keys-from-server|epg-import-keys-from-string|epg-import-result-considered--cmacro|epg-import-result-considered|epg-import-result-imported--cmacro|epg-import-result-imported-rsa--cmacro|epg-import-result-imported-rsa|epg-import-result-imported|epg-import-result-imports--cmacro|epg-import-result-imports|epg-import-result-new-revocations--cmacro|epg-import-result-new-revocations|epg-import-result-new-signatures--cmacro|epg-import-result-new-signatures|epg-import-result-new-sub-keys--cmacro|epg-import-result-new-sub-keys|epg-import-result-new-user-ids--cmacro|epg-import-result-new-user-ids|epg-import-result-no-user-id--cmacro|epg-import-result-no-user-id|epg-import-result-not-imported--cmacro|epg-import-result-not-imported|epg-import-result-secret-imported--cmacro|epg-import-result-secret-imported|epg-import-result-secret-read--cmacro|epg-import-result-secret-read|epg-import-result-secret-unchanged--cmacro|epg-import-result-secret-unchanged|epg-import-result-to-string|epg-import-result-unchanged--cmacro|epg-import-result-unchanged|epg-import-status-fingerprint--cmacro|epg-import-status-fingerprint|epg-import-status-new--cmacro|epg-import-status-new|epg-import-status-reason--cmacro|epg-import-status-reason|epg-import-status-secret--cmacro|epg-import-status-secret|epg-import-status-signature--cmacro|epg-import-status-signature|epg-import-status-sub-key--cmacro|epg-import-status-sub-key|epg-import-status-user-id--cmacro|epg-import-status-user-id|epg-key-owner-trust--cmacro|epg-key-owner-trust|epg-key-signature-class--cmacro|epg-key-signature-class|epg-key-signature-creation-time--cmacro|epg-key-signature-creation-time|epg-key-signature-expiration-time--cmacro|epg-key-signature-expiration-time|epg-key-signature-exportable-p--cmacro|epg-key-signature-exportable-p|epg-key-signature-key-id--cmacro|epg-key-signature-key-id|epg-key-signature-pubkey-algorithm--cmacro|epg-key-signature-pubkey-algorithm|epg-key-signature-user-id--cmacro|epg-key-signature-user-id|epg-key-signature-validity--cmacro|epg-key-signature-validity|epg-key-sub-key-list--cmacro|epg-key-sub-key-list|epg-key-user-id-list--cmacro|epg-key-user-id-list|epg-list-keys|epg-make-context|epg-make-data-from-file--cmacro|epg-make-data-from-file|epg-make-data-from-string--cmacro|epg-make-data-from-string|epg-make-import-result--cmacro|epg-make-import-result|epg-make-import-status--cmacro|epg-make-import-status|epg-make-key--cmacro|epg-make-key-signature--cmacro|epg-make-key-signature|epg-make-key|epg-make-new-signature--cmacro|epg-make-new-signature|epg-make-sig-notation--cmacro|epg-make-sig-notation|epg-make-signature--cmacro|epg-make-signature|epg-make-sub-key--cmacro|epg-make-sub-key|epg-make-user-id--cmacro|epg-make-user-id|epg-new-signature-class--cmacro|epg-new-signature-class|epg-new-signature-creation-time--cmacro|epg-new-signature-creation-time|epg-new-signature-digest-algorithm--cmacro|epg-new-signature-digest-algorithm|epg-new-signature-fingerprint--cmacro|epg-new-signature-fingerprint|epg-new-signature-pubkey-algorithm--cmacro|epg-new-signature-pubkey-algorithm|epg-new-signature-to-string|epg-new-signature-type--cmacro|epg-new-signature-type|epg-passphrase-callback-function|epg-read-output|epg-receive-keys|epg-reset|epg-sig-notation-critical--cmacro|epg-sig-notation-critical|epg-sig-notation-human-readable--cmacro|epg-sig-notation-human-readable|epg-sig-notation-name--cmacro|epg-sig-notation-name|epg-sig-notation-value--cmacro|epg-sig-notation-value|epg-sign-file|epg-sign-keys|epg-sign-string|epg-signature-class--cmacro|epg-signature-class|epg-signature-creation-time--cmacro|epg-signature-creation-time|epg-signature-digest-algorithm--cmacro|epg-signature-digest-algorithm|epg-signature-expiration-time--cmacro|epg-signature-expiration-time|epg-signature-fingerprint--cmacro|epg-signature-fingerprint|epg-signature-key-id--cmacro|epg-signature-key-id|epg-signature-notations--cmacro|epg-signature-notations|epg-signature-pubkey-algorithm--cmacro|epg-signature-pubkey-algorithm|epg-signature-status--cmacro|epg-signature-status|epg-signature-to-string|epg-signature-validity--cmacro|epg-signature-validity|epg-signature-version--cmacro|epg-signature-version|epg-start-decrypt|epg-start-delete-keys|epg-start-edit-key|epg-start-encrypt|epg-start-export-keys|epg-start-generate-key|epg-start-import-keys|epg-start-receive-keys|epg-start-sign-keys|epg-start-sign|epg-start-verify|epg-sub-key-algorithm--cmacro|epg-sub-key-algorithm|epg-sub-key-capability--cmacro|epg-sub-key-capability|epg-sub-key-creation-time--cmacro|epg-sub-key-creation-time|epg-sub-key-expiration-time--cmacro|epg-sub-key-expiration-time|epg-sub-key-fingerprint--cmacro|epg-sub-key-fingerprint|epg-sub-key-id--cmacro|epg-sub-key-id|epg-sub-key-length--cmacro|epg-sub-key-length|epg-sub-key-secret-p--cmacro|epg-sub-key-secret-p|epg-sub-key-validity--cmacro|epg-sub-key-validity|epg-user-id-signature-list--cmacro|epg-user-id-signature-list|epg-user-id-string--cmacro|epg-user-id-string|epg-user-id-validity--cmacro|epg-user-id-validity|epg-verify-file|epg-verify-result-to-string|epg-verify-string|epg-wait-for-completion|epg-wait-for-status|equalp|erc-active-buffer|erc-add-dangerous-host|erc-add-default-channel|erc-add-entry-to-list|erc-add-fool|erc-add-keyword|erc-add-pal|erc-add-query|erc-add-scroll-to-bottom|erc-add-server-user|erc-add-timestamp|erc-add-to-input-ring|erc-all-buffer-names|erc-already-logged-in|erc-arrange-session-in-multiple-windows|erc-auto-query|erc-autoaway-mode|erc-autojoin-add|erc-autojoin-after-ident|erc-autojoin-channels-delayed|erc-autojoin-channels|erc-autojoin-disable|erc-autojoin-enable|erc-autojoin-mode|erc-autojoin-remove|erc-away-time|erc-banlist-finished|erc-banlist-store|erc-banlist-update|erc-beep-on-match|erc-beg-of-input-line|erc-bol|erc-browse-emacswiki-lisp|erc-browse-emacswiki|erc-buffer-filter|erc-buffer-list-with-nick|erc-buffer-list|erc-buffer-visible|erc-button-add-button|erc-button-add-buttons-1|erc-button-add-buttons|erc-button-add-face|erc-button-add-nickname-buttons|erc-button-beats-to-time|erc-button-click-button|erc-button-describe-symbol|erc-button-disable|erc-button-enable|erc-button-mode|erc-button-next-function|erc-button-next|erc-button-press-button|erc-button-previous|erc-button-remove-old-buttons|erc-button-setup|erc-call-hooks|erc-cancel-timer|erc-canonicalize-server-name|erc-capab-identify-mode|erc-change-user-nickname|erc-channel-begin-receiving-names|erc-channel-end-receiving-names|erc-channel-list|erc-channel-names|erc-channel-p|erc-channel-receive-names|erc-channel-user-admin--cmacro|erc-channel-user-admin-p|erc-channel-user-admin|erc-channel-user-halfop--cmacro|erc-channel-user-halfop-p|erc-channel-user-halfop|erc-channel-user-last-message-time--cmacro|erc-channel-user-last-message-time|erc-channel-user-op--cmacro|erc-channel-user-op-p|erc-channel-user-op|erc-channel-user-owner--cmacro|erc-channel-user-owner-p|erc-channel-user-owner|erc-channel-user-p--cmacro|erc-channel-user-p|erc-channel-user-voice--cmacro|erc-channel-user-voice-p|erc-channel-user-voice|erc-clear-input-ring|erc-client-info|erc-cmd-AMSG|erc-cmd-APPENDTOPIC|erc-cmd-AT|erc-cmd-AWAY|erc-cmd-BANLIST|erc-cmd-BL|erc-cmd-BYE|erc-cmd-CHANNEL|erc-cmd-CLEAR|erc-cmd-CLEARTOPIC|erc-cmd-COUNTRY|erc-cmd-CTCP|erc-cmd-DATE|erc-cmd-DCC|erc-cmd-DEOP|erc-cmd-DESCRIBE|erc-cmd-EXIT|erc-cmd-GAWAY|erc-cmd-GQ|erc-cmd-GQUIT|erc-cmd-H|erc-cmd-HELP|erc-cmd-IDLE|erc-cmd-IGNORE|erc-cmd-J|erc-cmd-JOIN|erc-cmd-KICK|erc-cmd-LASTLOG|erc-cmd-LEAVE|erc-cmd-LIST|erc-cmd-LOAD|erc-cmd-M|erc-cmd-MASSUNBAN|erc-cmd-ME'S|erc-cmd-ME|erc-cmd-MODE|erc-cmd-MSG|erc-cmd-MUB|erc-cmd-N|erc-cmd-NAMES|erc-cmd-NICK|erc-cmd-NOTICE|erc-cmd-NOTIFY|erc-cmd-OP|erc-cmd-OPS|erc-cmd-PART|erc-cmd-PING|erc-cmd-Q|erc-cmd-QUERY|erc-cmd-QUIT|erc-cmd-QUOTE|erc-cmd-RECONNECT|erc-cmd-SAY|erc-cmd-SERVER|erc-cmd-SET|erc-cmd-SIGNOFF|erc-cmd-SM|erc-cmd-SQUERY|erc-cmd-SV|erc-cmd-T|erc-cmd-TIME|erc-cmd-TOPIC|erc-cmd-UNIGNORE|erc-cmd-VAR|erc-cmd-VARIABLE|erc-cmd-WHOAMI|erc-cmd-WHOIS|erc-cmd-WHOLEFT|erc-cmd-WI|erc-cmd-WL|erc-cmd-default|erc-cmd-ezb|erc-coding-system-for-target|erc-command-indicator|erc-command-name|erc-command-no-process-p|erc-command-symbol|erc-complete-word-at-point|erc-complete-word|erc-completion-mode|erc-compute-full-name|erc-compute-nick|erc-compute-port|erc-compute-server|erc-connection-established|erc-controls-highlight|erc-controls-interpret|erc-controls-propertize|erc-controls-strip|erc-create-imenu-index|erc-ctcp-query-ACTION|erc-ctcp-query-CLIENTINFO|erc-ctcp-query-DCC|erc-ctcp-query-ECHO|erc-ctcp-query-FINGER|erc-ctcp-query-PING|erc-ctcp-query-TIME|erc-ctcp-query-USERINFO|erc-ctcp-query-VERSION|erc-ctcp-reply-CLIENTINFO|erc-ctcp-reply-ECHO|erc-ctcp-reply-FINGER|erc-ctcp-reply-PING|erc-ctcp-reply-TIME|erc-ctcp-reply-VERSION|erc-current-network|erc-current-nick-p|erc-current-nick|erc-current-time|erc-dcc-mode|erc-debug-missing-hooks|erc-decode-coding-string|erc-decode-parsed-server-response|erc-decode-string-from-target|erc-default-server-handler|erc-default-target|erc-define-catalog-entry|erc-define-catalog|erc-define-minor-mode|erc-delete-dangerous-host|erc-delete-default-channel|erc-delete-dups|erc-delete-fool|erc-delete-if|erc-delete-keyword|erc-delete-pal|erc-delete-query|erc-determine-network|erc-determine-parameters|erc-directory-writable-p|erc-display-command|erc-display-error-notice|erc-display-line-1|erc-display-line|erc-display-message-highlight|erc-display-message|erc-display-msg|erc-display-prompt|erc-display-server-message|erc-downcase|erc-echo-notice-in-active-buffer|erc-echo-notice-in-active-non-server-buffer|erc-echo-notice-in-default-buffer|erc-echo-notice-in-first-user-buffer|erc-echo-notice-in-minibuffer|erc-echo-notice-in-server-buffer|erc-echo-notice-in-target-buffer|erc-echo-notice-in-user-and-target-buffers|erc-echo-notice-in-user-buffers|erc-echo-timestamp|erc-emacs-time-to-erc-time|erc-encode-coding-string|erc-end-of-input-line|erc-ensure-channel-name|erc-error|erc-extract-command-from-line|erc-extract-nick|erc-ezb-add-session|erc-ezb-end-of-session-list|erc-ezb-get-login|erc-ezb-identify)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:erc-ezb-init-session-list|erc-ezb-initialize|erc-ezb-lookup-action|erc-ezb-notice-autodetect|erc-ezb-select-session|erc-ezb-select|erc-faces-in|erc-fill-disable|erc-fill-enable|erc-fill-mode|erc-fill-regarding-timestamp|erc-fill-static|erc-fill-variable|erc-fill|erc-find-file|erc-find-parsed-property|erc-find-script-file|erc-format-@nick|erc-format-away-status|erc-format-channel-modes|erc-format-lag-time|erc-format-message|erc-format-my-nick|erc-format-network|erc-format-nick|erc-format-privmessage|erc-format-target-and\\\\\\\\/or-network|erc-format-target-and\\\\\\\\/or-server|erc-format-target|erc-format-timestamp|erc-function-arglist|erc-generate-new-buffer-name|erc-get-arglist|erc-get-bg-color-face|erc-get-buffer-create|erc-get-buffer|erc-get-channel-mode-from-keypress|erc-get-channel-nickname-alist|erc-get-channel-nickname-list|erc-get-channel-user-list|erc-get-channel-user|erc-get-fg-color-face|erc-get-hook|erc-get-parsed-vector-nick|erc-get-parsed-vector-type|erc-get-parsed-vector|erc-get-server-nickname-alist|erc-get-server-nickname-list|erc-get-server-user|erc-get-user-mode-prefix|erc-get|erc-go-to-log-matches-buffer|erc-grab-region|erc-group-list|erc-handle-irc-url|erc-handle-login|erc-handle-parsed-server-response|erc-handle-unknown-server-response|erc-handle-user-status-change|erc-hide-current-message-p|erc-hide-fools|erc-hide-timestamps|erc-highlight-error|erc-highlight-notice|erc-identd-mode|erc-identd-start|erc-identd-stop|erc-ignored-reply-p|erc-ignored-user-p|erc-imenu-setup|erc-initialize-log-marker|erc-input-action|erc-input-message|erc-input-ring-setup|erc-insert-aligned|erc-insert-mode-command|erc-insert-timestamp-left-and-right|erc-insert-timestamp-left|erc-insert-timestamp-right|erc-invite-only-mode|erc-irccontrols-disable|erc-irccontrols-enable|erc-irccontrols-mode|erc-is-message-ctcp-and-not-action-p|erc-is-message-ctcp-p|erc-is-valid-nick-p|erc-ison-p|erc-iswitchb|erc-join-channel|erc-keep-place-disable|erc-keep-place-enable|erc-keep-place-mode|erc-keep-place|erc-kill-buffer-function|erc-kill-channel|erc-kill-input|erc-kill-query-buffers|erc-kill-server|erc-list-button|erc-list-disable|erc-list-enable|erc-list-handle-322|erc-list-insert-item|erc-list-install-322-handler|erc-list-join|erc-list-kill|erc-list-make-string|erc-list-match|erc-list-menu-mode|erc-list-menu-sort-by-column|erc-list-mode|erc-list-revert|erc-list|erc-load-irc-script-lines|erc-load-irc-script|erc-load-script|erc-log-aux|erc-log-irc-protocol|erc-log-matches-come-back|erc-log-matches-make-buffer|erc-log-matches|erc-log-mode|erc-log|erc-logging-enabled|erc-login|erc-lurker-cleanup|erc-lurker-initialize|erc-lurker-maybe-trim|erc-lurker-p|erc-lurker-update-status|erc-make-message-variable-name|erc-make-mode-line-buffer-name|erc-make-notice|erc-make-obsolete-variable|erc-make-obsolete|erc-make-read-only|erc-match-current-nick-p|erc-match-dangerous-host-p|erc-match-directed-at-fool-p|erc-match-disable|erc-match-enable|erc-match-fool-p|erc-match-keyword-p|erc-match-message|erc-match-mode|erc-match-pal-p|erc-member-if|erc-member-ignore-case|erc-menu-add|erc-menu-disable|erc-menu-enable|erc-menu-mode|erc-menu-remove|erc-menu|erc-message-english-PART|erc-message-target|erc-message-type-member|erc-message|erc-migrate-modules|erc-mode|erc-modes|erc-modified-channels-display|erc-modified-channels-object|erc-modified-channels-remove-buffer|erc-modified-channels-update|erc-move-to-prompt-disable|erc-move-to-prompt-enable|erc-move-to-prompt-mode|erc-move-to-prompt-setup|erc-move-to-prompt|erc-munge-invisibility-spec|erc-netsplit-JOIN|erc-netsplit-MODE|erc-netsplit-QUIT|erc-netsplit-disable|erc-netsplit-enable|erc-netsplit-install-message-catalogs|erc-netsplit-mode|erc-netsplit-timer|erc-network-name|erc-network|erc-networks-disable|erc-networks-enable|erc-networks-mode|erc-next-command|erc-nick-at-point|erc-nick-equal-p|erc-nick-popup|erc-nickname-in-use|erc-nickserv-identify-mode|erc-nickserv-identify|erc-noncommands-disable|erc-noncommands-enable|erc-noncommands-mode|erc-normalize-port|erc-notifications-mode|erc-notify-mode|erc-occur|erc-once-with-server-event|erc-open-server-buffer-p|erc-open-tls-stream|erc-open|erc-page-mode|erc-parse-modes|erc-parse-prefix|erc-parse-server-response|erc-parse-user|erc-part-from-channel|erc-part-reason-normal|erc-part-reason-various|erc-part-reason-zippy|erc-pcomplete-disable|erc-pcomplete-enable|erc-pcomplete-mode|erc-pcomplete|erc-pcompletions-at-point|erc-popup-input-buffer|erc-port-equal|erc-port-to-string|erc-ports-list|erc-previous-command|erc-process-away|erc-process-ctcp-query|erc-process-ctcp-reply|erc-process-input-line|erc-process-script-line|erc-process-sentinel-1|erc-process-sentinel-2|erc-process-sentinel|erc-prompt|erc-propertize|erc-put-text-properties|erc-put-text-property|erc-query-buffer-p|erc-query|erc-quit\\\\\\\\/part-reason-default|erc-quit-reason-normal|erc-quit-reason-various|erc-quit-reason-zippy|erc-quit-server|erc-readonly-disable|erc-readonly-enable|erc-readonly-mode|erc-remove-channel-member|erc-remove-channel-user|erc-remove-channel-users|erc-remove-current-channel-member|erc-remove-entry-from-list|erc-remove-if-not|erc-remove-server-user|erc-remove-text-properties-region|erc-remove-user|erc-replace-current-command|erc-replace-match-subexpression-in-string|erc-replace-mode|erc-replace-regexp-in-string|erc-response-p--cmacro|erc-response-p|erc-response\\\\\\\\.command--cmacro|erc-response\\\\\\\\.command-args--cmacro|erc-response\\\\\\\\.command-args|erc-response\\\\\\\\.command|erc-response\\\\\\\\.contents--cmacro|erc-response\\\\\\\\.contents|erc-response\\\\\\\\.sender--cmacro|erc-response\\\\\\\\.sender|erc-response\\\\\\\\.unparsed--cmacro|erc-response\\\\\\\\.unparsed|erc-restore-text-properties|erc-retrieve-catalog-entry|erc-ring-disable|erc-ring-enable|erc-ring-mode|erc-save-buffer-in-logs|erc-scroll-to-bottom|erc-scrolltobottom-disable|erc-scrolltobottom-enable|erc-scrolltobottom-mode|erc-sec-to-time|erc-seconds-to-string|erc-select-read-args|erc-select-startup-file|erc-select|erc-send-action|erc-send-command|erc-send-ctcp-message|erc-send-ctcp-notice|erc-send-current-line|erc-send-distinguish-noncommands|erc-send-input-line|erc-send-input|erc-send-line|erc-send-message|erc-server-001|erc-server-002|erc-server-003|erc-server-004|erc-server-005|erc-server-221|erc-server-250|erc-server-251|erc-server-252|erc-server-253|erc-server-254|erc-server-255|erc-server-256|erc-server-257|erc-server-258|erc-server-259|erc-server-265|erc-server-266|erc-server-275|erc-server-290|erc-server-301|erc-server-303|erc-server-305|erc-server-306|erc-server-307|erc-server-311|erc-server-312|erc-server-313|erc-server-314|erc-server-315|erc-server-317|erc-server-318|erc-server-319|erc-server-320|erc-server-321-message|erc-server-321|erc-server-322-message|erc-server-322|erc-server-323|erc-server-324|erc-server-328|erc-server-329|erc-server-330|erc-server-331|erc-server-332|erc-server-333|erc-server-341|erc-server-352|erc-server-353|erc-server-366|erc-server-367|erc-server-368|erc-server-369|erc-server-371|erc-server-372|erc-server-374|erc-server-375|erc-server-376|erc-server-377|erc-server-378|erc-server-379|erc-server-391|erc-server-401|erc-server-403|erc-server-404|erc-server-405|erc-server-406|erc-server-412|erc-server-421|erc-server-422|erc-server-431|erc-server-432|erc-server-433|erc-server-437|erc-server-442|erc-server-445|erc-server-446|erc-server-451|erc-server-461|erc-server-462|erc-server-463|erc-server-464|erc-server-465|erc-server-474|erc-server-475|erc-server-477|erc-server-481|erc-server-482|erc-server-483|erc-server-484|erc-server-485|erc-server-491|erc-server-501|erc-server-502|erc-server-671|erc-server-ERROR|erc-server-INVITE|erc-server-JOIN|erc-server-KICK|erc-server-MODE|erc-server-MOTD|erc-server-NICK|erc-server-NOTICE|erc-server-PART|erc-server-PING|erc-server-PONG|erc-server-PRIVMSG|erc-server-QUIT|erc-server-TOPIC|erc-server-WALLOPS|erc-server-buffer-live-p|erc-server-buffer-p|erc-server-buffer|erc-server-connect|erc-server-filter-function|erc-server-join-channel|erc-server-process-alive|erc-server-reconnect-p|erc-server-reconnect|erc-server-select|erc-server-send-ping|erc-server-send-queue|erc-server-send|erc-server-setup-periodical-ping|erc-server-user-buffers--cmacro|erc-server-user-buffers|erc-server-user-full-name--cmacro|erc-server-user-full-name|erc-server-user-host--cmacro|erc-server-user-host|erc-server-user-info--cmacro|erc-server-user-info|erc-server-user-login--cmacro|erc-server-user-login|erc-server-user-nickname--cmacro|erc-server-user-nickname|erc-server-user-p--cmacro|erc-server-user-p|erc-services-mode|erc-set-active-buffer|erc-set-channel-key|erc-set-channel-limit|erc-set-current-nick|erc-set-initial-user-mode|erc-set-modes|erc-set-network-name|erc-set-topic|erc-set-write-file-functions|erc-setup-buffer|erc-shorten-server-name|erc-show-timestamps|erc-smiley-disable|erc-smiley-enable|erc-smiley-mode|erc-smiley|erc-sort-channel-users-alphabetically|erc-sort-channel-users-by-activity|erc-sort-strings|erc-sound-mode|erc-speedbar-browser|erc-spelling-mode|erc-split-line|erc-split-multiline-safe|erc-ssl|erc-stamp-disable|erc-stamp-enable|erc-stamp-mode|erc-string-invisible-p|erc-string-no-properties|erc-string-to-emacs-time|erc-string-to-port|erc-subseq|erc-time-diff|erc-time-gt|erc-timestamp-mode|erc-timestamp-offset|erc-tls|erc-toggle-channel-mode|erc-toggle-ctcp-autoresponse|erc-toggle-debug-irc-protocol|erc-toggle-flood-control|erc-toggle-interpret-controls|erc-toggle-timestamps|erc-track-add-to-mode-line|erc-track-disable|erc-track-enable|erc-track-face-priority|erc-track-find-face|erc-track-get-active-buffer|erc-track-get-buffer-window|erc-track-minor-mode-maybe|erc-track-minor-mode|erc-track-mode|erc-track-modified-channels|erc-track-remove-from-mode-line|erc-track-shorten-names|erc-track-sort-by-activest|erc-track-sort-by-importance|erc-track-switch-buffer|erc-trim-string|erc-truncate-buffer-to-size|erc-truncate-buffer|erc-truncate-mode|erc-unique-channel-names|erc-unique-substring-1|erc-unique-substrings|erc-unmorse-disable|erc-unmorse-enable|erc-unmorse-mode|erc-unmorse|erc-unset-network-name|erc-upcase-first-word|erc-update-channel-key|erc-update-channel-limit|erc-update-channel-member|erc-update-channel-topic|erc-update-current-channel-member|erc-update-mode-line-buffer|erc-update-mode-line|erc-update-modes|erc-update-modules|erc-update-undo-list|erc-update-user-nick|erc-update-user|erc-user-input|erc-user-is-active|erc-user-spec|erc-version|erc-view-mode-enter|erc-wash-quit-reason|erc-window-configuration-change|erc-with-all-buffers-of-server|erc-with-buffer|erc-with-selected-window|erc-with-server-buffer|erc-xdcc-add-file|erc-xdcc-mode|erc|eregistry|erevision|ert--abbreviate-string|ert--activate-font-lock-keywords|ert--button-action-position|ert--ewoc-entry-expanded-p--cmacro|ert--ewoc-entry-expanded-p|ert--ewoc-entry-extended-printer-limits-p--cmacro|ert--ewoc-entry-extended-printer-limits-p|ert--ewoc-entry-hidden-p--cmacro|ert--ewoc-entry-hidden-p|ert--ewoc-entry-p--cmacro|ert--ewoc-entry-p|ert--ewoc-entry-test--cmacro|ert--ewoc-entry-test|ert--ewoc-position|ert--expand-should-1|ert--expand-should|ert--explain-equal-including-properties|ert--explain-equal-rec|ert--explain-equal|ert--explain-format-atom|ert--force-message-log-buffer-truncation|ert--format-time-iso8601|ert--insert-human-readable-selector|ert--insert-infos|ert--make-stats|ert--make-xrefs-region|ert--parse-keys-and-body|ert--plist-difference-explanation|ert--pp-with-indentation-and-newline|ert--print-backtrace|ert--print-test-for-ewoc|ert--proper-list-p|ert--record-backtrace|ert--remove-from-list|ert--results-expand-collapse-button-action|ert--results-font-lock-function|ert--results-format-expected-unexpected|ert--results-move|ert--results-progress-bar-button-action|ert--results-test-at-point-allow-redefinition|ert--results-test-at-point-no-redefinition|ert--results-test-node-at-point|ert--results-test-node-or-null-at-point|ert--results-update-after-test-redefinition|ert--results-update-ewoc-hf|ert--results-update-stats-display-maybe|ert--results-update-stats-display|ert--run-test-debugger|ert--run-test-internal|ert--setup-results-buffer|ert--should-error-handle-error|ert--signal-should-execution|ert--significant-plist-keys|ert--skip-unless|ert--special-operator-p|ert--stats-aborted-p--cmacro|ert--stats-aborted-p|ert--stats-current-test--cmacro|ert--stats-current-test|ert--stats-end-time--cmacro)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:ert--stats-end-time|ert--stats-failed-expected--cmacro|ert--stats-failed-expected|ert--stats-failed-unexpected--cmacro|ert--stats-failed-unexpected|ert--stats-next-redisplay--cmacro|ert--stats-next-redisplay|ert--stats-p--cmacro|ert--stats-p|ert--stats-passed-expected--cmacro|ert--stats-passed-expected|ert--stats-passed-unexpected--cmacro|ert--stats-passed-unexpected|ert--stats-selector--cmacro|ert--stats-selector|ert--stats-set-test-and-result|ert--stats-skipped--cmacro|ert--stats-skipped|ert--stats-start-time--cmacro|ert--stats-start-time|ert--stats-test-end-times--cmacro|ert--stats-test-end-times|ert--stats-test-key|ert--stats-test-map--cmacro|ert--stats-test-map|ert--stats-test-pos|ert--stats-test-results--cmacro|ert--stats-test-results|ert--stats-test-start-times--cmacro|ert--stats-test-start-times|ert--stats-tests--cmacro|ert--stats-tests|ert--string-first-line|ert--test-execution-info-ert-debug-on-error--cmacro|ert--test-execution-info-ert-debug-on-error|ert--test-execution-info-exit-continuation--cmacro|ert--test-execution-info-exit-continuation|ert--test-execution-info-next-debugger--cmacro|ert--test-execution-info-next-debugger|ert--test-execution-info-p--cmacro|ert--test-execution-info-p|ert--test-execution-info-result--cmacro|ert--test-execution-info-result|ert--test-execution-info-test--cmacro|ert--test-execution-info-test|ert--test-name-button-action|ert--tests-running-mode-line-indicator|ert--unload-function|ert-char-for-test-result|ert-deftest|ert-delete-all-tests|ert-delete-test|ert-describe-test|ert-equal-including-properties|ert-face-for-stats|ert-face-for-test-result|ert-fail|ert-find-test-other-window|ert-get-test|ert-info|ert-insert-test-name-button|ert-kill-all-test-buffers|ert-make-test-unbound|ert-pass|ert-read-test-name-at-point|ert-read-test-name|ert-results-describe-test-at-point|ert-results-find-test-at-point-other-window|ert-results-jump-between-summary-and-result|ert-results-mode-menu|ert-results-mode|ert-results-next-test|ert-results-pop-to-backtrace-for-test-at-point|ert-results-pop-to-messages-for-test-at-point|ert-results-pop-to-should-forms-for-test-at-point|ert-results-pop-to-timings|ert-results-previous-test|ert-results-rerun-all-tests|ert-results-rerun-test-at-point-debugging-errors|ert-results-rerun-test-at-point|ert-results-toggle-printer-limits-for-test-at-point|ert-run-or-rerun-test|ert-run-test|ert-run-tests-batch-and-exit|ert-run-tests-batch|ert-run-tests-interactively|ert-run-tests|ert-running-test|ert-select-tests|ert-set-test|ert-simple-view-mode|ert-skip|ert-stats-completed-expected|ert-stats-completed-unexpected|ert-stats-completed|ert-stats-skipped|ert-stats-total|ert-string-for-test-result|ert-summarize-tests-batch-and-exit|ert-test-aborted-with-non-local-exit-messages--cmacro|ert-test-aborted-with-non-local-exit-messages|ert-test-aborted-with-non-local-exit-p--cmacro|ert-test-aborted-with-non-local-exit-p|ert-test-aborted-with-non-local-exit-should-forms--cmacro|ert-test-aborted-with-non-local-exit-should-forms|ert-test-at-point|ert-test-body--cmacro|ert-test-body|ert-test-boundp|ert-test-documentation--cmacro|ert-test-documentation|ert-test-expected-result-type--cmacro|ert-test-expected-result-type|ert-test-failed-backtrace--cmacro|ert-test-failed-backtrace|ert-test-failed-condition--cmacro|ert-test-failed-condition|ert-test-failed-infos--cmacro|ert-test-failed-infos|ert-test-failed-messages--cmacro|ert-test-failed-messages|ert-test-failed-p--cmacro|ert-test-failed-p|ert-test-failed-should-forms--cmacro|ert-test-failed-should-forms|ert-test-most-recent-result--cmacro|ert-test-most-recent-result|ert-test-name--cmacro|ert-test-name|ert-test-p--cmacro|ert-test-p|ert-test-passed-messages--cmacro|ert-test-passed-messages|ert-test-passed-p--cmacro|ert-test-passed-p|ert-test-passed-should-forms--cmacro|ert-test-passed-should-forms|ert-test-quit-backtrace--cmacro|ert-test-quit-backtrace|ert-test-quit-condition--cmacro|ert-test-quit-condition|ert-test-quit-infos--cmacro|ert-test-quit-infos|ert-test-quit-messages--cmacro|ert-test-quit-messages|ert-test-quit-p--cmacro|ert-test-quit-p|ert-test-quit-should-forms--cmacro|ert-test-quit-should-forms|ert-test-result-expected-p|ert-test-result-messages--cmacro|ert-test-result-messages|ert-test-result-p--cmacro|ert-test-result-p|ert-test-result-should-forms--cmacro|ert-test-result-should-forms|ert-test-result-type-p|ert-test-result-with-condition-backtrace--cmacro|ert-test-result-with-condition-backtrace|ert-test-result-with-condition-condition--cmacro|ert-test-result-with-condition-condition|ert-test-result-with-condition-infos--cmacro|ert-test-result-with-condition-infos|ert-test-result-with-condition-messages--cmacro|ert-test-result-with-condition-messages|ert-test-result-with-condition-p--cmacro|ert-test-result-with-condition-p|ert-test-result-with-condition-should-forms--cmacro|ert-test-result-with-condition-should-forms|ert-test-skipped-backtrace--cmacro|ert-test-skipped-backtrace|ert-test-skipped-condition--cmacro|ert-test-skipped-condition|ert-test-skipped-infos--cmacro|ert-test-skipped-infos|ert-test-skipped-messages--cmacro|ert-test-skipped-messages|ert-test-skipped-p--cmacro|ert-test-skipped-p|ert-test-skipped-should-forms--cmacro|ert-test-skipped-should-forms|ert-test-tags--cmacro|ert-test-tags|ert|eshell\\\\\\\\/addpath|eshell\\\\\\\\/define|eshell\\\\\\\\/env|eshell\\\\\\\\/eshell-debug|eshell\\\\\\\\/exit|eshell\\\\\\\\/export|eshell\\\\\\\\/jobs|eshell\\\\\\\\/kill|eshell\\\\\\\\/setq|eshell\\\\\\\\/unset|eshell\\\\\\\\/wait|eshell\\\\\\\\/which|eshell--apply-redirections|eshell--do-opts|eshell--process-args|eshell--process-option|eshell--set-option|eshell-add-to-window-buffer-names|eshell-apply\\\\\\\\*|eshell-apply-indices|eshell-apply|eshell-applyn|eshell-arg-delimiter|eshell-arg-initialize|eshell-as-subcommand|eshell-backward-argument|eshell-begin-on-new-line|eshell-beginning-of-input|eshell-beginning-of-output|eshell-bol|eshell-buffered-print|eshell-clipboard-append|eshell-close-handles|eshell-close-target|eshell-cmd-initialize|eshell-command-finished|eshell-command-result|eshell-command-started|eshell-command-to-value|eshell-command|eshell-commands|eshell-complete-lisp-symbols|eshell-complete-variable-assignment|eshell-complete-variable-reference|eshell-condition-case|eshell-convert|eshell-copy-environment|eshell-copy-handles|eshell-copy-old-input|eshell-copy-tree|eshell-create-handles|eshell-current-ange-uids|eshell-debug-command|eshell-debug-show-parsed-args|eshell-directory-files-and-attributes|eshell-directory-files|eshell-do-command-to-value|eshell-do-eval|eshell-do-pipelines-synchronously|eshell-do-pipelines|eshell-do-subjob|eshell-end-of-output|eshell-environment-variables|eshell-envvar-names|eshell-error|eshell-errorn|eshell-escape-arg|eshell-eval\\\\\\\\*|eshell-eval-command|eshell-eval-using-options|eshell-eval|eshell-evaln|eshell-exec-lisp|eshell-execute-pipeline|eshell-exit-success-p|eshell-explicit-command|eshell-ext-initialize|eshell-external-command|eshell-file-attributes|eshell-find-alias-function|eshell-find-delimiter|eshell-find-interpreter|eshell-find-tag|eshell-finish-arg|eshell-flatten-and-stringify|eshell-flatten-list|eshell-flush|eshell-for|eshell-forward-argument|eshell-funcall\\\\\\\\*|eshell-funcall|eshell-funcalln|eshell-gather-process-output|eshell-get-old-input|eshell-get-target|eshell-get-variable|eshell-goto-input-start|eshell-group-id|eshell-group-name|eshell-handle-ansi-color|eshell-handle-control-codes|eshell-handle-local-variables|eshell-index-value|eshell-init-print-buffer|eshell-insert-buffer-name|eshell-insert-envvar|eshell-insert-process|eshell-insertion-filter|eshell-interactive-output-p|eshell-interactive-print|eshell-interactive-process|eshell-intercept-commands|eshell-interpolate-variable|eshell-interrupt-process|eshell-invoke-batch-file|eshell-invoke-directly|eshell-invokify-arg|eshell-io-initialize|eshell-kill-append|eshell-kill-buffer-function|eshell-kill-input|eshell-kill-new|eshell-kill-output|eshell-kill-process-function|eshell-kill-process|eshell-life-is-too-much|eshell-lisp-command\\\\\\\\*|eshell-lisp-command|eshell-looking-at-backslash-return|eshell-make-private-directory|eshell-manipulate|eshell-mark-output|eshell-mode|eshell-move-argument|eshell-named-command\\\\\\\\*|eshell-named-command|eshell-needs-pipe-p|eshell-no-command-conversion|eshell-operator|eshell-output-filter|eshell-output-object-to-target|eshell-output-object|eshell-parse-ange-ls|eshell-parse-argument|eshell-parse-arguments|eshell-parse-backslash|eshell-parse-colon-path|eshell-parse-command-input|eshell-parse-command|eshell-parse-delimiter|eshell-parse-double-quote|eshell-parse-indices|eshell-parse-lisp-argument|eshell-parse-literal-quote|eshell-parse-pipeline|eshell-parse-redirection|eshell-parse-special-reference|eshell-parse-subcommand-argument|eshell-parse-variable-ref|eshell-parse-variable|eshell-plain-command|eshell-postoutput-scroll-to-bottom|eshell-preinput-scroll-to-bottom|eshell-print|eshell-printable-size|eshell-printn|eshell-proc-initialize|eshell-process-identity|eshell-process-interact|eshell-processp|eshell-protect-handles|eshell-protect|eshell-push-command-mark|eshell-query-kill-processes|eshell-queue-input|eshell-quit-process|eshell-quote-argument|eshell-quote-backslash|eshell-read-group-names|eshell-read-host-names|eshell-read-hosts-file|eshell-read-hosts|eshell-read-passwd-file|eshell-read-passwd|eshell-read-process-name|eshell-read-user-names|eshell-record-process-object|eshell-redisplay|eshell-regexp-arg|eshell-remote-command|eshell-remove-from-window-buffer-names|eshell-remove-process-entry|eshell-repeat-argument|eshell-report-bug|eshell-reset-after-proc|eshell-reset|eshell-resolve-current-argument|eshell-resume-command|eshell-resume-eval|eshell-return-exits-minibuffer|eshell-rewrite-for-command|eshell-rewrite-if-command|eshell-rewrite-initial-subcommand|eshell-rewrite-named-command|eshell-rewrite-sexp-command|eshell-rewrite-while-command|eshell-round-robin-kill|eshell-run-output-filters|eshell-script-interpreter|eshell-search-path|eshell-self-insert-command|eshell-send-eof-to-process|eshell-send-input|eshell-send-invisible|eshell-sentinel|eshell-separate-commands|eshell-set-output-handle|eshell-show-maximum-output|eshell-show-output|eshell-show-usage|eshell-split-path|eshell-stringify-list|eshell-stringify|eshell-strip-redirections|eshell-structure-basic-command|eshell-subcommand-arg-values|eshell-subgroups|eshell-sublist|eshell-substring|eshell-to-flat-string|eshell-toggle-direct-send|eshell-trap-errors|eshell-truncate-buffer|eshell-under-windows-p|eshell-uniqify-list|eshell-unload-all-modules|eshell-unload-extension-modules|eshell-update-markers|eshell-user-id|eshell-user-name|eshell-using-module|eshell-var-initialize|eshell-variables-list|eshell-wait-for-process|eshell-watch-for-password-prompt|eshell-winnow-list|eshell-with-file-modes|eshell-with-private-file-modes|eshell|etags--xref-find-definitions|etags-file-of-tag|etags-goto-tag-location|etags-list-tags|etags-recognize-tags-table|etags-snarf-tag|etags-tags-apropos-additional|etags-tags-apropos|etags-tags-completion-table|etags-tags-included-tables|etags-tags-table-files|etags-verify-tags-table|etags-xref-find|ethio-composition-function|ethio-fidel-to-java-buffer|ethio-fidel-to-sera-buffer|ethio-fidel-to-sera-marker|ethio-fidel-to-sera-region|ethio-fidel-to-tex-buffer|ethio-find-file|ethio-input-special-character|ethio-insert-ethio-space|ethio-java-to-fidel-buffer|ethio-modify-vowel|ethio-replace-space|ethio-sera-to-fidel-buffer|ethio-sera-to-fidel-marker|ethio-sera-to-fidel-region|ethio-tex-to-fidel-buffer|ethio-write-file|etypecase|eudc-add-field-to-records|eudc-bookmark-current-server|eudc-bookmark-server|eudc-caar|eudc-cadr|eudc-cdaar|eudc-cdar|eudc-customize|eudc-default-set|eudc-display-generic-binary|eudc-display-jpeg-as-button|eudc-display-jpeg-inline|eudc-display-mail|eudc-display-records|eudc-display-sound|eudc-display-url|eudc-distribute-field-on-records|eudc-edit-hotlist|eudc-expand-inline|eudc-extract-n-word-formats|eudc-filter-duplicate-attributes|eudc-filter-partial-records|eudc-format-attribute-name-for-display|eudc-format-query|eudc-get-attribute-list|eudc-get-email|eudc-get-phone|eudc-insert-record-at-point-into-bbdb|eudc-install-menu|eudc-lax-plist-get|eudc-load-eudc|eudc-menu|eudc-mode|eudc-move-to-next-record|eudc-move-to-previous-record|eudc-plist-get|eudc-plist-member)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:eudc-print-attribute-value|eudc-print-record-field|eudc-process-form|eudc-protocol-local-variable-p|eudc-protocol-set|eudc-query-form|eudc-query|eudc-register-protocol|eudc-replace-in-string|eudc-save-options|eudc-select|eudc-server-local-variable-p|eudc-server-set|eudc-set-server|eudc-set|eudc-tools-menu|eudc-translate-attribute-list|eudc-translate-query|eudc-try-bbdb-insert|eudc-update-local-variables|eudc-update-variable|eudc-variable-default-value|eudc-variable-protocol-value|eudc-variable-server-value|eval-after-load--anon-cmacro|eval-after-load|eval-defun|eval-expression-print-format|eval-expression|eval-last-sexp|eval-next-after-load|eval-print-last-sexp|eval-sexp-add-defvars|eval-when|evenp|event-apply-alt-modifier|event-apply-control-modifier|event-apply-hyper-modifier|event-apply-meta-modifier|event-apply-modifier|event-apply-shift-modifier|event-apply-super-modifier|every|ewoc--adjust|ewoc--buffer--cmacro|ewoc--buffer|ewoc--create--cmacro|ewoc--create|ewoc--dll--cmacro|ewoc--dll|ewoc--filter-hf-nodes|ewoc--footer--cmacro|ewoc--footer|ewoc--header--cmacro|ewoc--header|ewoc--hf-pp--cmacro|ewoc--hf-pp|ewoc--insert-new-node|ewoc--last-node--cmacro|ewoc--last-node|ewoc--node-create--cmacro|ewoc--node-create|ewoc--node-data--cmacro|ewoc--node-data|ewoc--node-left--cmacro|ewoc--node-left|ewoc--node-next|ewoc--node-nth|ewoc--node-prev|ewoc--node-right--cmacro|ewoc--node-right|ewoc--node-start-marker--cmacro|ewoc--node-start-marker|ewoc--pretty-printer--cmacro|ewoc--pretty-printer|ewoc--refresh-node|ewoc--set-buffer-bind-dll-let\\\\\\\\*|ewoc--set-buffer-bind-dll|ewoc--wrap|ewoc-p--cmacro|ewoc-p|eww-add-bookmark|eww-back-url|eww-beginning-of-field|eww-beginning-of-text|eww-bookmark-browse|eww-bookmark-kill|eww-bookmark-mode|eww-bookmark-prepare|eww-bookmark-yank|eww-browse-url|eww-browse-with-external-browser|eww-buffer-kill|eww-buffer-select|eww-buffer-show-next|eww-buffer-show-previous|eww-buffer-show|eww-buffers-mode|eww-change-select|eww-copy-page-url|eww-current-url|eww-desktop-data-1|eww-desktop-history-duplicate|eww-desktop-misc-data|eww-detect-charset|eww-display-html|eww-display-image|eww-display-pdf|eww-display-raw|eww-download-callback|eww-download|eww-end-of-field|eww-end-of-text|eww-follow-link|eww-form-checkbox|eww-form-file|eww-form-submit|eww-form-text|eww-forward-url|eww-handle-link|eww-highest-readability|eww-history-browse|eww-history-mode|eww-input-value|eww-inputs|eww-links-at-point|eww-list-bookmarks|eww-list-buffers|eww-list-histories|eww-make-unique-file-name|eww-mode|eww-next-bookmark|eww-next-url|eww-open-file|eww-parse-headers|eww-previous-bookmark|eww-previous-url|eww-process-text-input|eww-read-bookmarks|eww-readable|eww-reload|eww-render|eww-restore-desktop|eww-restore-history|eww-same-page-p|eww-save-history|eww-score-readability|eww-search-words|eww-select-display|eww-select-file|eww-set-character-encoding|eww-setup-buffer|eww-size-text-inputs|eww-submit|eww-suggested-uris|eww-tag-a|eww-tag-body|eww-tag-form|eww-tag-input|eww-tag-link|eww-tag-select|eww-tag-textarea|eww-tag-title|eww-toggle-checkbox|eww-top-url|eww-up-url|eww-update-field|eww-update-header-line-format|eww-view-source|eww-write-bookmarks|eww|ex-args|ex-cd|ex-cmd-accepts-multiple-files-p|ex-cmd-assoc|ex-cmd-complete|ex-cmd-execute|ex-cmd-is-mashed-with-args|ex-cmd-is-one-letter|ex-cmd-not-yet|ex-cmd-obsolete|ex-cmd-read-exit|ex-command|ex-compile|ex-copy|ex-delete|ex-edit|ex-expand-filsyms|ex-find-file|ex-fixup-history|ex-get-inline-cmd-args|ex-global|ex-goto|ex-help|ex-line-no|ex-line-subr|ex-line|ex-map-read-args|ex-map|ex-mark|ex-next-related-buffer|ex-next|ex-preserve|ex-print-display-lines|ex-print|ex-put|ex-pwd|ex-quit|ex-read|ex-recover|ex-rewind|ex-search-address|ex-set-read-variable|ex-set-visited-file-name|ex-set|ex-shell|ex-show-vars|ex-source|ex-splice-args-in-1-letr-cmd|ex-substitute|ex-tag|ex-unmap-read-args|ex-unmap|ex-write-info|ex-write|ex-yank|exchange-dot-and-mark|exchange-point-and-mark|executable-chmod|executable-command-find-posix-p|executable-interpret|executable-make-buffer-file-executable-if-script-p|executable-self-display|executable-set-magic|execute-extended-command--shorter-1|execute-extended-command--shorter|exit-scheme-interaction-mode|exit-splash-screen|expand-abbrev-from-expand|expand-abbrev-hook|expand-add-abbrev|expand-add-abbrevs|expand-build-list|expand-build-marks|expand-c-for-skeleton|expand-clear-markers|expand-do-expansion|expand-in-literal|expand-jump-to-next-slot|expand-jump-to-previous-slot|expand-list-to-markers|expand-mail-aliases|expand-previous-word|expand-region-abbrevs|expand-skeleton-end-hook|external-debugging-output|extract-rectangle-line|extract-rectangle|ezimage-all-images|ezimage-image-association-dump|ezimage-image-dump|ezimage-image-over-string|ezimage-insert-image-button-maybe|ezimage-insert-over-text|f90-abbrev-help|f90-abbrev-start|f90-add-imenu-menu|f90-backslash-not-special|f90-beginning-of-block|f90-beginning-of-subprogram|f90-block-match|f90-break-line|f90-calculate-indent|f90-capitalize-keywords|f90-capitalize-region-keywords|f90-change-keywords|f90-comment-indent|f90-comment-region|f90-current-defun|f90-current-indentation|f90-do-auto-fill|f90-downcase-keywords|f90-downcase-region-keywords|f90-electric-insert|f90-end-of-block|f90-end-of-subprogram|f90-equal-symbols|f90-fill-region|f90-find-breakpoint|f90-font-lock-1|f90-font-lock-2|f90-font-lock-3|f90-font-lock-4|f90-font-lock-n|f90-get-correct-indent|f90-get-present-comment-type|f90-imenu-type-matcher|f90-in-comment|f90-in-string|f90-indent-line-no|f90-indent-line|f90-indent-new-line|f90-indent-region|f90-indent-subprogram|f90-indent-to|f90-insert-end|f90-join-lines|f90-line-continued|f90-looking-at-associate|f90-looking-at-critical|f90-looking-at-do|f90-looking-at-end-critical|f90-looking-at-if-then|f90-looking-at-program-block-end|f90-looking-at-program-block-start|f90-looking-at-select-case|f90-looking-at-type-like|f90-looking-at-where-or-forall|f90-mark-subprogram|f90-match-end|f90-menu|f90-mode|f90-next-block|f90-next-statement|f90-no-block-limit|f90-prepare-abbrev-list-buffer|f90-present-statement-cont|f90-previous-block|f90-previous-statement|f90-typedec-matcher|f90-typedef-matcher|f90-upcase-keywords|f90-upcase-region-keywords|f90-update-line|face-at-point|face-attr-construct|face-attr-match-p|face-attribute-merged-with|face-attribute-specified-or|face-attributes-as-vector|face-attrs-more-relative-p|face-background-pixmap|face-default-spec|face-descriptive-attribute-name|face-doc-string|face-name|face-nontrivial-p|face-read-integer|face-read-string|face-remap-order|face-set-after-frame-default|face-spec-choose|face-spec-match-p|face-spec-recalc|face-spec-reset-face|face-spec-set-2|face-spec-set-match-display|face-user-default-spec|face-valid-attribute-values|facemenu-active-faces|facemenu-add-face|facemenu-add-new-color|facemenu-add-new-face|facemenu-background-menu|facemenu-color-equal|facemenu-complete-face-list|facemenu-enable-faces-p|facemenu-face-menu|facemenu-foreground-menu|facemenu-indentation-menu|facemenu-iterate|facemenu-justification-menu|facemenu-menu|facemenu-post-self-insert-function|facemenu-read-color|facemenu-remove-all|facemenu-remove-face-props|facemenu-remove-special|facemenu-set-background|facemenu-set-bold-italic|facemenu-set-bold|facemenu-set-default|facemenu-set-face-from-menu|facemenu-set-face|facemenu-set-foreground|facemenu-set-intangible|facemenu-set-invisible|facemenu-set-italic|facemenu-set-read-only|facemenu-set-self-insert-face|facemenu-set-underline|facemenu-special-menu|facemenu-update|fancy-about-screen|fancy-splash-frame|fancy-splash-head|fancy-splash-image-file|fancy-splash-insert|fancy-startup-screen|fancy-startup-tail|feature-file|feature-symbols|feedmail-accume-n-nuke-header|feedmail-buffer-to-binmail|feedmail-buffer-to-sendmail|feedmail-buffer-to-smtp|feedmail-buffer-to-smtpmail|feedmail-confirm-addresses-hook-example|feedmail-create-queue-filename|feedmail-deduce-address-list|feedmail-default-date-generator|feedmail-default-message-id-generator|feedmail-default-x-mailer-generator|feedmail-dump-message-to-queue|feedmail-envelope-deducer|feedmail-fiddle-date|feedmail-fiddle-from|feedmail-fiddle-header|feedmail-fiddle-list-of-fiddle-plexes|feedmail-fiddle-list-of-spray-fiddle-plexes|feedmail-fiddle-message-id|feedmail-fiddle-sender|feedmail-fiddle-spray-address|feedmail-fiddle-x-mailer|feedmail-fill-this-one|feedmail-fill-to-cc-function|feedmail-find-eoh|feedmail-fqm-p|feedmail-give-it-to-buffer-eater|feedmail-look-at-queue-directory|feedmail-mail-send-hook-splitter|feedmail-message-action-draft-strong|feedmail-message-action-draft|feedmail-message-action-edit|feedmail-message-action-help-blat|feedmail-message-action-help|feedmail-message-action-queue-strong|feedmail-message-action-queue|feedmail-message-action-scroll-down|feedmail-message-action-scroll-up|feedmail-message-action-send-strong|feedmail-message-action-send|feedmail-message-action-toggle-spray|feedmail-one-last-look|feedmail-queue-express-to-draft|feedmail-queue-express-to-queue|feedmail-queue-reminder-brief|feedmail-queue-reminder-medium|feedmail-queue-reminder|feedmail-queue-runner-prompt|feedmail-queue-send-edit-prompt-inner|feedmail-queue-send-edit-prompt|feedmail-queue-subject-slug-maker|feedmail-rfc822-date|feedmail-rfc822-time-zone|feedmail-run-the-queue-global-prompt|feedmail-run-the-queue-no-prompts|feedmail-run-the-queue|feedmail-say-chatter|feedmail-say-debug|feedmail-scroll-buffer|feedmail-send-it-immediately-wrapper|feedmail-send-it-immediately|feedmail-send-it|feedmail-spray-via-bbdb|feedmail-tidy-up-slug|feedmail-vm-mail-mode|fetch-overload|ff-all-dirs-under|ff-basename|ff-cc-hh-converter|ff-find-file|ff-find-other-file|ff-find-related-file|ff-find-the-other-file|ff-get-file-name|ff-get-file|ff-get-other-file|ff-list-replace-env-vars|ff-mouse-find-other-file-other-window|ff-mouse-find-other-file|ff-other-file-name|ff-set-point-accordingly|ff-string-match|ff-switch-file|ff-switch-to-buffer|ff-treat-as-special|ff-upcase-p|ff-which-function-are-we-in|ffap--toggle-read-only|ffap-all-subdirs-loop|ffap-all-subdirs|ffap-alternate-file-other-window|ffap-alternate-file|ffap-at-mouse|ffap-bib|ffap-bindings|ffap-bug|ffap-c\\\\\\\\+\\\\\\\\+-mode|ffap-c-mode|ffap-completable|ffap-copy-string-as-kill|ffap-dired-other-frame|ffap-dired-other-window|ffap-dired|ffap-el-mode|ffap-el|ffap-event-buffer|ffap-file-at-point|ffap-file-exists-string|ffap-file-remote-p|ffap-file-suffix|ffap-fixup-machine|ffap-fixup-url|ffap-fortran-mode|ffap-gnus-hook|ffap-gnus-menu|ffap-gnus-next|ffap-gnus-wrapper|ffap-gopher-at-point|ffap-guess-file-name-at-point|ffap-guesser|ffap-highlight|ffap-home|ffap-host-to-filename|ffap-info-2|ffap-info-3|ffap-info|ffap-kpathsea-expand-path|ffap-latex-mode|ffap-lcd|ffap-list-directory|ffap-list-env|ffap-literally|ffap-locate-file|ffap-machine-at-point|ffap-machine-p|ffap-menu-ask|ffap-menu-cont|ffap-menu-rescan|ffap-menu|ffap-mouse-event|ffap-newsgroup-p|ffap-next-guess|ffap-next-url|ffap-next|ffap-other-frame|ffap-other-window|ffap-prompter|ffap-read-file-or-url-internal|ffap-read-file-or-url|ffap-read-only-other-frame|ffap-read-only-other-window|ffap-read-only|ffap-read-url-internal|ffap-reduce-path|ffap-replace-file-component|ffap-rfc|ffap-ro-mode-hook|ffap-string-around|ffap-string-at-point|ffap-submit-bug|ffap-symbol-value|ffap-tex-init|ffap-tex-mode|ffap-tex|ffap-url-at-point|ffap-url-p|ffap-url-unwrap-local|ffap-url-unwrap-remote|ffap-what-domain|ffap|field-at-pos|field-complete|fifth|file-attributes-lessp|file-cache--read-list|file-cache-add-directory-list|file-cache-add-directory-recursively|file-cache-add-directory-using-find|file-cache-add-directory-using-locate|file-cache-add-directory|file-cache-add-file-list|file-cache-add-file|file-cache-add-from-file-cache-buffer|file-cache-canonical-directory|file-cache-choose-completion|file-cache-clear-cache|file-cache-complete|file-cache-completion-setup-function|file-cache-debug-read-from-minibuffer|file-cache-delete-directory-list|file-cache-delete-directory|file-cache-delete-file-list|file-cache-delete-file-regexp|file-cache-delete-file|file-cache-directory-name|file-cache-display|file-cache-do-delete-directory)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:file-cache-file-name|file-cache-files-matching-internal|file-cache-files-matching|file-cache-minibuffer-complete|file-cache-mouse-choose-completion|file-dependents|file-loadhist-lookup|file-modes-char-to-right|file-modes-char-to-who|file-modes-rights-to-number|file-name-non-special|file-name-shadow-mode|file-notify--event-cookie|file-notify--event-file-name|file-notify--event-file1-name|file-notify-callback|file-notify-handle-event|file-of-tag|file-provides|file-requires|file-set-intersect|file-size-human-readable|file-tree-walk|filesets-add-buffer|filesets-alist-get|filesets-browse-dir|filesets-browser-name|filesets-build-dir-submenu-now|filesets-build-dir-submenu|filesets-build-ingroup-submenu|filesets-build-menu-maybe|filesets-build-menu-now|filesets-build-menu|filesets-build-submenu|filesets-close|filesets-cmd-get-args|filesets-cmd-get-def|filesets-cmd-get-fn|filesets-cmd-isearch-getargs|filesets-cmd-query-replace-getargs|filesets-cmd-query-replace-regexp-getargs|filesets-cmd-shell-command-getargs|filesets-cmd-shell-command|filesets-cmd-show-result|filesets-conditional-sort|filesets-convert-path-list|filesets-convert-patterns|filesets-customize|filesets-data-get-data|filesets-data-get-name|filesets-data-get|filesets-data-set-default|filesets-data-set|filesets-directory-files|filesets-edit|filesets-entry-get-dormant-flag|filesets-entry-get-file|filesets-entry-get-files|filesets-entry-get-filter-dirs-flag|filesets-entry-get-master|filesets-entry-get-open-fn|filesets-entry-get-pattern--dir|filesets-entry-get-pattern--pattern|filesets-entry-get-pattern|filesets-entry-get-save-fn|filesets-entry-get-tree-max-level|filesets-entry-get-tree|filesets-entry-get-verbosity|filesets-entry-mode|filesets-entry-set-files|filesets-error|filesets-eviewer-constraint-p|filesets-eviewer-get-props|filesets-exit|filesets-file-close|filesets-file-open|filesets-files-equalp|filesets-files-in-same-directory-p|filesets-filetype-get-prop|filesets-filetype-property|filesets-filter-dir-names|filesets-filter-list|filesets-find-file-using|filesets-find-file|filesets-find-or-display-file|filesets-get-cmd-menu|filesets-get-external-viewer-by-name|filesets-get-external-viewer|filesets-get-filelist|filesets-get-fileset-from-name|filesets-get-fileset-name|filesets-get-menu-epilog|filesets-get-quoted-selection|filesets-get-selection|filesets-get-shortcut|filesets-goto-homepage|filesets-info|filesets-ingroup-cache-get|filesets-ingroup-cache-put|filesets-ingroup-collect-build-menu|filesets-ingroup-collect-files|filesets-ingroup-collect-finder|filesets-ingroup-collect|filesets-ingroup-get-data|filesets-ingroup-get-pattern|filesets-ingroup-get-remdupl-p|filesets-init|filesets-member|filesets-menu-cache-file-load|filesets-menu-cache-file-save-maybe|filesets-menu-cache-file-save|filesets-message|filesets-open|filesets-ormap|filesets-quote|filesets-rebuild-this-submenu|filesets-remake-shortcut|filesets-remove-buffer|filesets-remove-from-ubl|filesets-reset-filename-on-change|filesets-reset-fileset|filesets-run-cmd--repl-fn|filesets-run-cmd|filesets-save-config|filesets-select-command|filesets-set-config|filesets-set-default!|filesets-set-default\\\\\\\\+|filesets-set-default|filesets-some|filesets-spawn-external-viewer|filesets-sublist|filesets-update-cleanup|filesets-update-pre010505|filesets-update|filesets-which-command-p|filesets-which-command|filesets-which-file|filesets-wrap-submenu|fill-comment-paragraph|fill-common-string-prefix|fill-delete-newlines|fill-delete-prefix|fill-find-break-point|fill-flowed-encode|fill-flowed|fill-forward-paragraph|fill-french-nobreak-p|fill-indent-to-left-margin|fill-individual-paragraphs-citation|fill-individual-paragraphs-prefix|fill-match-adaptive-prefix|fill-minibuffer-function|fill-move-to-break-point|fill-newline|fill-nobreak-p|fill-nonuniform-paragraphs|fill-single-char-nobreak-p|fill-single-word-nobreak-p|fill-text-properties-at|fill|filtered-frame-list|find-alternate-file-other-window|find-alternate-file|find-change-log|find-class|find-cmd|find-cmpl-prefix-entry|find-coding-systems-region-internal|find-composition-internal|find-composition|find-definition-noselect|find-dired-filter|find-dired-sentinel|find-dired|find-emacs-lisp-shadows|find-exact-completion|find-face-definition|find-file--read-only|find-file-at-point|find-file-existing|find-file-literally-at-point|find-file-noselect-1|find-file-other-frame|find-file-read-args|find-file-read-only-other-frame|find-file-read-only-other-window|find-function-C-source|find-function-advised-original|find-function-at-point|find-function-do-it|find-function-library|find-function-noselect|find-function-on-key|find-function-other-frame|find-function-other-window|find-function-read|find-function-search-for-symbol|find-function-setup-keys|find-function|find-grep-dired|find-grep|find-if-not|find-if|find-library--load-name|find-library-name|find-library-suffixes|find-library|find-lisp-debug-message|find-lisp-default-directory-predicate|find-lisp-default-file-predicate|find-lisp-file-predicate-is-directory|find-lisp-find-dired-filter|find-lisp-find-dired-insert-file|find-lisp-find-dired-internal|find-lisp-find-dired-subdirectories|find-lisp-find-dired|find-lisp-find-files-internal|find-lisp-find-files|find-lisp-format-time|find-lisp-format|find-lisp-insert-directory|find-lisp-object-file-name|find-lisp-time-index|find-multibyte-characters|find-name-dired|find-new-buffer-file-coding-system|find-tag-default-as-regexp|find-tag-default-as-symbol-regexp|find-tag-default-bounds|find-tag-default|find-tag-in-order|find-tag-interactive|find-tag-noselect|find-tag-other-frame|find-tag-other-window|find-tag-regexp|find-tag-tag|find-tag|find-variable-at-point|find-variable-noselect|find-variable-other-frame|find-variable-other-window|find-variable|find|finder-by-keyword|finder-commentary|finder-compile-keywords-make-dist|finder-compile-keywords|finder-current-item|finder-exit|finder-goto-xref|finder-insert-at-column|finder-list-keywords|finder-list-matches|finder-mode|finder-mouse-face-on-line|finder-mouse-select|finder-select|finder-summary|finder-unknown-keywords|finder-unload-function|finger|first-error|first|floatp-safe|floor\\\\\\\\*|flush-lines|flymake-add-buildfile-to-cache|flymake-add-err-info|flymake-add-line-err-info|flymake-add-project-include-dirs-to-cache|flymake-after-change-function|flymake-after-save-hook|flymake-can-syntax-check-file|flymake-check-include|flymake-check-patch-master-file-buffer|flymake-clear-buildfile-cache|flymake-clear-project-include-dirs-cache|flymake-compilation-is-running|flymake-compile|flymake-copy-buffer-to-temp-buffer|flymake-create-master-file|flymake-create-temp-inplace|flymake-create-temp-with-folder-structure|flymake-delete-own-overlays|flymake-delete-temp-directory|flymake-display-err-menu-for-current-line|flymake-display-warning|flymake-er-get-line-err-info-list|flymake-er-get-line|flymake-er-make-er|flymake-find-buffer-for-file|flymake-find-buildfile|flymake-find-err-info|flymake-find-file-hook|flymake-find-make-buildfile|flymake-find-possible-master-files|flymake-fix-file-name|flymake-fix-line-numbers|flymake-get-ant-cmdline|flymake-get-buildfile-from-cache|flymake-get-cleanup-function|flymake-get-err-count|flymake-get-file-name-mode-and-masks|flymake-get-first-err-line-no|flymake-get-full-nonpatched-file-name|flymake-get-full-patched-file-name|flymake-get-include-dirs-dot|flymake-get-include-dirs|flymake-get-init-function|flymake-get-last-err-line-no|flymake-get-line-err-count|flymake-get-make-cmdline|flymake-get-next-err-line-no|flymake-get-prev-err-line-no|flymake-get-project-include-dirs-from-cache|flymake-get-project-include-dirs-imp|flymake-get-project-include-dirs|flymake-get-real-file-name-function|flymake-get-real-file-name|flymake-get-syntax-check-program-args|flymake-get-system-include-dirs|flymake-get-tex-args|flymake-goto-file-and-line|flymake-goto-line|flymake-goto-next-error|flymake-goto-prev-error|flymake-highlight-err-lines|flymake-highlight-line|flymake-init-create-temp-buffer-copy|flymake-init-create-temp-source-and-master-buffer-copy|flymake-init-find-buildfile-dir|flymake-ins-after|flymake-kill-buffer-hook|flymake-kill-process|flymake-ler-file--cmacro|flymake-ler-file|flymake-ler-full-file--cmacro|flymake-ler-full-file|flymake-ler-line--cmacro|flymake-ler-line|flymake-ler-make-ler--cmacro|flymake-ler-make-ler|flymake-ler-p--cmacro|flymake-ler-p|flymake-ler-set-file|flymake-ler-set-full-file|flymake-ler-set-line|flymake-ler-text--cmacro|flymake-ler-text|flymake-ler-type--cmacro|flymake-ler-type|flymake-line-err-info-is-less-or-equal|flymake-log|flymake-make-overlay|flymake-master-cleanup|flymake-master-file-compare|flymake-master-make-header-init|flymake-master-make-init|flymake-master-tex-init|flymake-mode-off|flymake-mode-on|flymake-mode|flymake-on-timer-event|flymake-overlay-p|flymake-parse-err-lines|flymake-parse-line|flymake-parse-output-and-residual|flymake-parse-residual|flymake-patch-err-text|flymake-perl-init|flymake-php-init|flymake-popup-current-error-menu|flymake-post-syntax-check|flymake-process-filter|flymake-process-sentinel|flymake-read-file-to-temp-buffer|flymake-reformat-err-line-patterns-from-compile-el|flymake-region-has-flymake-overlays|flymake-replace-region|flymake-report-fatal-status|flymake-report-status|flymake-safe-delete-directory|flymake-safe-delete-file|flymake-same-files|flymake-save-buffer-in-file|flymake-set-at|flymake-simple-ant-java-init|flymake-simple-cleanup|flymake-simple-java-cleanup|flymake-simple-make-init-impl|flymake-simple-make-init|flymake-simple-make-java-init|flymake-simple-tex-init|flymake-skip-whitespace|flymake-split-output|flymake-start-syntax-check-process|flymake-start-syntax-check|flymake-stop-all-syntax-checks|flymake-xml-init|flyspell-abbrev-table|flyspell-accept-buffer-local-defs|flyspell-after-change-function|flyspell-ajust-cursor-point|flyspell-already-abbrevp|flyspell-auto-correct-previous-hook|flyspell-auto-correct-previous-word|flyspell-auto-correct-word|flyspell-buffer|flyspell-change-abbrev|flyspell-check-changed-word-p|flyspell-check-pre-word-p|flyspell-check-previous-highlighted-word|flyspell-check-region-doublons|flyspell-check-word-p|flyspell-correct-word-before-point|flyspell-correct-word|flyspell-debug-signal-changed-checked|flyspell-debug-signal-no-check|flyspell-debug-signal-pre-word-checked|flyspell-debug-signal-word-checked|flyspell-define-abbrev|flyspell-delay-command|flyspell-delay-commands|flyspell-delete-all-overlays|flyspell-delete-region-overlays|flyspell-deplacement-command|flyspell-deplacement-commands|flyspell-display-next-corrections|flyspell-do-correct|flyspell-emacs-popup|flyspell-external-point-words|flyspell-generic-progmode-verify|flyspell-get-casechars|flyspell-get-not-casechars|flyspell-get-word|flyspell-goto-next-error|flyspell-hack-local-variables-hook|flyspell-highlight-duplicate-region|flyspell-highlight-incorrect-region|flyspell-kill-ispell-hook|flyspell-large-region|flyspell-math-tex-command-p|flyspell-maybe-correct-doubling|flyspell-maybe-correct-transposition|flyspell-minibuffer-p|flyspell-mode-off|flyspell-mode-on|flyspell-mode|flyspell-notify-misspell|flyspell-overlay-p|flyspell-post-command-hook|flyspell-pre-command-hook|flyspell-process-localwords|flyspell-prog-mode|flyspell-properties-at-p|flyspell-region|flyspell-small-region|flyspell-tex-command-p|flyspell-unhighlight-at|flyspell-word-search-backward|flyspell-word-search-forward|flyspell-word|flyspell-xemacs-popup|focus-frame|foldout-exit-fold|foldout-mouse-goto-heading|foldout-mouse-hide-or-exit|foldout-mouse-show|foldout-mouse-swallow-events|foldout-mouse-zoom|foldout-update-mode-line|foldout-zoom-subtree|follow--window-sorter|follow-adjust-window|follow-align-compilation-windows|follow-all-followers|follow-avoid-tail-recenter|follow-cache-valid-p|follow-calc-win-end|follow-calc-win-start|follow-calculate-first-window-start-from-above|follow-calculate-first-window-start-from-below|follow-comint-scroll-to-bottom|follow-debug-message|follow-delete-other-windows-and-split|follow-end-of-buffer|follow-estimate-first-window-start|follow-find-file-hook|follow-first-window|follow-last-window|follow-maximize-region|follow-menu-filter|follow-mode|follow-mwheel-scroll|follow-next-window|follow-point-visible-all-windows-p|follow-pos-visible|follow-post-command-hook|follow-previous-window|follow-recenter|follow-redisplay|follow-redraw-after-event|follow-redraw|follow-scroll-bar-drag|follow-scroll-bar-scroll-down)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:follow-scroll-bar-scroll-up|follow-scroll-bar-toolkit-scroll|follow-scroll-down|follow-scroll-up|follow-select-if-end-visible|follow-select-if-visible-from-first|follow-select-if-visible|follow-split-followers|follow-switch-to-buffer-all|follow-switch-to-buffer|follow-switch-to-current-buffer-all|follow-update-window-start|follow-window-size-change|follow-windows-aligned-p|follow-windows-start-end|font-get-glyphs|font-get-system-font|font-get-system-normal-font|font-info|font-lock-after-change-function|font-lock-after-fontify-buffer|font-lock-after-unfontify-buffer|font-lock-append-text-property|font-lock-apply-highlight|font-lock-apply-syntactic-highlight|font-lock-change-mode|font-lock-choose-keywords|font-lock-compile-keyword|font-lock-compile-keywords|font-lock-default-fontify-buffer|font-lock-default-fontify-region|font-lock-default-function|font-lock-default-unfontify-buffer|font-lock-default-unfontify-region|font-lock-defontify|font-lock-ensure|font-lock-eval-keywords|font-lock-extend-jit-lock-region-after-change|font-lock-extend-region-multiline|font-lock-extend-region-wholelines|font-lock-fillin-text-property|font-lock-flush|font-lock-fontify-anchored-keywords|font-lock-fontify-block|font-lock-fontify-buffer|font-lock-fontify-keywords-region|font-lock-fontify-region|font-lock-fontify-syntactic-anchored-keywords|font-lock-fontify-syntactic-keywords-region|font-lock-fontify-syntactically-region|font-lock-initial-fontify|font-lock-match-c-style-declaration-item-and-skip-to-next|font-lock-match-meta-declaration-item-and-skip-to-next|font-lock-mode-internal|font-lock-mode-set-explicitly|font-lock-mode|font-lock-prepend-text-property|font-lock-refresh-defaults|font-lock-set-defaults|font-lock-specified-p|font-lock-turn-off-thing-lock|font-lock-turn-on-thing-lock|font-lock-unfontify-buffer|font-lock-unfontify-region|font-lock-update-removed-keyword-alist|font-lock-value-in-major-mode|font-match-p|font-menu-add-default|font-setting-change-default-font|font-shape-gstring|font-show-log|font-variation-glyphs|fontset-font|fontset-info|fontset-list|fontset-name-p|fontset-plain-name|footnote-mode|foreground-color-at-point|form-at-point|format-annotate-atomic-property-change|format-annotate-function|format-annotate-location|format-annotate-region|format-annotate-single-property-change|format-annotate-value|format-deannotate-region|format-decode-buffer|format-decode-region|format-decode-run-method|format-decode|format-delq-cons|format-encode-buffer|format-encode-region|format-encode-run-method|format-insert-annotations|format-kbd-macro|format-make-relatively-unique|format-proper-list-p|format-property-increment-region|format-read|format-reorder|format-replace-strings|format-spec-make|format-spec|format-subtract-regions|forms-find-file-other-window|forms-find-file|forms-mode|fortran-abbrev-help|fortran-abbrev-start|fortran-analyze-file-format|fortran-auto-fill-mode|fortran-auto-fill|fortran-beginning-do|fortran-beginning-if|fortran-beginning-of-block|fortran-beginning-of-subprogram|fortran-blink-match|fortran-blink-matching-do|fortran-blink-matching-if|fortran-break-line|fortran-calculate-indent|fortran-check-end-prog-re|fortran-check-for-matching-do|fortran-column-ruler|fortran-comment-indent|fortran-comment-region|fortran-current-defun|fortran-current-line-indentation|fortran-electric-line-number|fortran-end-do|fortran-end-if|fortran-end-of-block|fortran-end-of-subprogram|fortran-fill-paragraph|fortran-fill-statement|fortran-fill|fortran-find-comment-start-skip|fortran-gud-find-expr|fortran-hack-local-variables|fortran-indent-comment|fortran-indent-line|fortran-indent-new-line|fortran-indent-subprogram|fortran-indent-to-column|fortran-is-in-string-p|fortran-join-line|fortran-line-length|fortran-line-number-indented-correctly-p|fortran-looking-at-if-then|fortran-make-syntax-propertize-function|fortran-mark-do|fortran-mark-if|fortran-match-and-skip-declaration|fortran-menu|fortran-mode|fortran-next-statement|fortran-numerical-continuation-char|fortran-prepare-abbrev-list-buffer|fortran-previous-statement|fortran-remove-continuation|fortran-split-line|fortran-strip-sequence-nos|fortran-uncomment-region|fortran-window-create-momentarily|fortran-window-create|fortune-add-fortune|fortune-append|fortune-ask-file|fortune-compile|fortune-from-region|fortune-in-buffer|fortune-to-signature|fortune|forward-ifdef|forward-page|forward-paragraph|forward-point|forward-same-syntax|forward-sentence|forward-symbol|forward-text-line|forward-thing|forward-visible-line|forward-whitespace|fourth|frame-border-width|frame-bottom-divider-width|frame-can-run-window-configuration-change-hook|frame-char-size|frame-configuration-p|frame-configuration-to-register|frame-face-alist|frame-focus|frame-font-cache|frame-fringe-width|frame-geom-spec-cons|frame-geom-value-cons|frame-initialize|frame-notice-user-settings|frame-or-buffer-changed-p|frame-remove-geometry-params|frame-right-divider-width|frame-root-window-p|frame-scroll-bar-height|frame-scroll-bar-width|frame-set-background-mode|frame-terminal-default-bg-mode|frame-text-cols|frame-text-height|frame-text-lines|frame-text-width|frame-total-cols|frame-total-lines|frame-windows-min-size|framep-on-display|frames-on-display-list|frameset--find-frame-if|frameset--initial-params|frameset--jump-to-register|frameset--make--cmacro|frameset--make|frameset--minibufferless-last-p|frameset--print-register|frameset--prop-setter|frameset--record-minibuffer-relationships|frameset--restore-frame|frameset--reuse-frame|frameset--set-id|frameset-app--cmacro|frameset-app|frameset-cfg-id|frameset-compute-pos|frameset-copy|frameset-description--cmacro|frameset-description|frameset-filter-iconified|frameset-filter-minibuffer|frameset-filter-params|frameset-filter-sanitize-color|frameset-filter-shelve-param|frameset-filter-tty-to-GUI|frameset-filter-unshelve-param|frameset-frame-id-equal-p|frameset-frame-id|frameset-frame-with-id|frameset-keep-original-display-p|frameset-minibufferless-first-p|frameset-move-onscreen|frameset-name--cmacro|frameset-name|frameset-p--cmacro|frameset-p|frameset-prop|frameset-properties--cmacro|frameset-properties|frameset-restore|frameset-save|frameset-states--cmacro|frameset-states|frameset-switch-to-gui-p|frameset-switch-to-tty-p|frameset-timestamp--cmacro|frameset-timestamp|frameset-to-register|frameset-valid-p|frameset-version--cmacro|frameset-version|fringe--check-style|fringe-bitmap-p|fringe-columns|fringe-mode-initialize|fringe-mode|fringe-query-style|ftp-mode|ftp|full-calc-keypad|full-calc|funcall-interactively|function\\\\\\\\*|function-called-at-point|function-equal|function-overload-p|function-put|function|gamegrid-add-score-insecure|gamegrid-add-score-with-update-game-score-1|gamegrid-add-score-with-update-game-score|gamegrid-add-score|gamegrid-cell-offset|gamegrid-characterp|gamegrid-color|gamegrid-colorize-glyph|gamegrid-display-type|gamegrid-event-x|gamegrid-event-y|gamegrid-get-cell|gamegrid-init-buffer|gamegrid-init|gamegrid-initialize-display|gamegrid-kill-timer|gamegrid-make-color-tty-face|gamegrid-make-color-x-face|gamegrid-make-face|gamegrid-make-glyph|gamegrid-make-grid-x-face|gamegrid-make-image-from-vector|gamegrid-make-mono-tty-face|gamegrid-make-mono-x-face|gamegrid-match-spec-list|gamegrid-match-spec|gamegrid-set-cell|gamegrid-set-display-table|gamegrid-set-face|gamegrid-set-font|gamegrid-set-timer|gamegrid-setup-default-font|gamegrid-setup-face|gamegrid-start-timer|gametree-apply-layout|gametree-apply-register-layout|gametree-break-line-here|gametree-children-shown-p|gametree-compute-and-insert-score|gametree-compute-reduced-score|gametree-current-branch-depth|gametree-current-branch-ply|gametree-current-branch-score|gametree-current-layout|gametree-entry-shown-p|gametree-forward-line|gametree-hack-file-layout|gametree-insert-new-leaf|gametree-insert-score|gametree-layout-to-register|gametree-looking-at-ply|gametree-merge-line|gametree-mode|gametree-mouse-break-line-here|gametree-mouse-hide-subtree|gametree-mouse-show-children-and-entry|gametree-mouse-show-subtree|gametree-prettify-heading|gametree-restore-layout|gametree-save-and-hack-layout|gametree-save-layout|gametree-show-children-and-entry|gametree-transpose-following-leaves|gcd|gdb--check-interpreter|gdb--if-arrow|gdb-add-handler|gdb-add-subscriber|gdb-append-to-partial-output|gdb-bind-function-to-buffer|gdb-breakpoints-buffer-name|gdb-breakpoints-list-handler-custom|gdb-breakpoints-list-handler|gdb-breakpoints-mode|gdb-buffer-shows-main-thread-p|gdb-buffer-type|gdb-changed-registers-handler|gdb-check-target-async|gdb-clear-inferior-io|gdb-clear-partial-output|gdb-concat-output|gdb-console|gdb-continue-thread|gdb-control-all-threads|gdb-control-current-thread|gdb-create-define-alist|gdb-current-buffer-frame|gdb-current-buffer-rules|gdb-current-buffer-thread|gdb-current-context-buffer-name|gdb-current-context-command|gdb-current-context-mode-name|gdb-delchar-or-quit|gdb-delete-breakpoint|gdb-delete-frame-or-window|gdb-delete-handler|gdb-delete-subscriber|gdb-disassembly-buffer-name|gdb-disassembly-handler-custom|gdb-disassembly-handler|gdb-disassembly-mode|gdb-disassembly-place-breakpoints|gdb-display-breakpoints-buffer|gdb-display-buffer|gdb-display-disassembly-buffer|gdb-display-disassembly-for-thread|gdb-display-gdb-buffer|gdb-display-io-buffer|gdb-display-locals-buffer|gdb-display-locals-for-thread|gdb-display-memory-buffer|gdb-display-registers-buffer|gdb-display-registers-for-thread|gdb-display-source-buffer|gdb-display-stack-buffer|gdb-display-stack-for-thread|gdb-display-threads-buffer|gdb-done-or-error|gdb-done|gdb-edit-locals-value|gdb-edit-register-value|gdb-edit-value-handler|gdb-edit-value|gdb-emit-signal|gdb-enable-debug|gdb-error|gdb-find-file-hook|gdb-find-watch-expression|gdb-force-mode-line-update|gdb-frame-breakpoints-buffer|gdb-frame-disassembly-buffer|gdb-frame-disassembly-for-thread|gdb-frame-gdb-buffer|gdb-frame-handler|gdb-frame-io-buffer|gdb-frame-locals-buffer|gdb-frame-locals-for-thread|gdb-frame-location|gdb-frame-memory-buffer|gdb-frame-registers-buffer|gdb-frame-registers-for-thread|gdb-frame-stack-buffer|gdb-frame-stack-for-thread|gdb-frame-threads-buffer|gdb-frames-mode|gdb-gdb|gdb-get-buffer-create|gdb-get-buffer|gdb-get-changed-registers|gdb-get-handler-function|gdb-get-location|gdb-get-main-selected-frame|gdb-get-many-fields|gdb-get-prompt|gdb-get-source-file-list|gdb-get-source-file|gdb-get-subscribers|gdb-get-target-string|gdb-goto-breakpoint|gdb-gud-context-call|gdb-gud-context-command|gdb-handle-reply|gdb-handler-function--cmacro|gdb-handler-function|gdb-handler-p--cmacro|gdb-handler-p|gdb-handler-pending-trigger--cmacro|gdb-handler-pending-trigger|gdb-handler-token-number--cmacro|gdb-handler-token-number|gdb-ignored-notification|gdb-inferior-filter|gdb-inferior-io--init-proc|gdb-inferior-io-mode|gdb-inferior-io-name|gdb-inferior-io-sentinel|gdb-init-1|gdb-init-buffer|gdb-input|gdb-internals|gdb-interrupt-thread|gdb-invalidate-breakpoints|gdb-invalidate-disassembly|gdb-invalidate-frames|gdb-invalidate-locals|gdb-invalidate-memory|gdb-invalidate-registers|gdb-invalidate-threads|gdb-io-eof|gdb-io-interrupt|gdb-io-quit|gdb-io-stop|gdb-json-partial-output|gdb-json-read-buffer|gdb-json-string|gdb-jsonify-buffer|gdb-line-posns|gdb-locals-buffer-name|gdb-locals-handler-custom|gdb-locals-handler|gdb-locals-mode|gdb-make-header-line-mouse-map|gdb-many-windows|gdb-mark-line|gdb-memory-buffer-name|gdb-memory-column-width|gdb-memory-format-binary|gdb-memory-format-hexadecimal|gdb-memory-format-menu-1|gdb-memory-format-menu|gdb-memory-format-octal|gdb-memory-format-signed|gdb-memory-format-unsigned|gdb-memory-mode|gdb-memory-set-address-event|gdb-memory-set-address|gdb-memory-set-columns|gdb-memory-set-rows|gdb-memory-show-next-page|gdb-memory-show-previous-page|gdb-memory-unit-byte|gdb-memory-unit-giant|gdb-memory-unit-halfword|gdb-memory-unit-menu-1|gdb-memory-unit-menu|gdb-memory-unit-word|gdb-mi-quote|gdb-mouse-jump|gdb-mouse-set-clear-breakpoint|gdb-mouse-toggle-breakpoint-fringe|gdb-mouse-toggle-breakpoint-margin|gdb-mouse-until|gdb-non-stop-handler|gdb-pad-string|gdb-parent-mode|gdb-partial-output-name|gdb-pending-handler-p|gdb-place-breakpoints|gdb-preempt-existing-or-display-buffer|gdb-preemptively-display-disassembly-buffer|gdb-preemptively-display-locals-buffer|gdb-preemptively-display-registers-buffer|gdb-preemptively-display-stack-buffer|gdb-propertize-header)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:gdb-put-breakpoint-icon|gdb-put-string|gdb-read-memory-custom|gdb-read-memory-handler|gdb-register-names-handler|gdb-registers-buffer-name|gdb-registers-handler-custom|gdb-registers-handler|gdb-registers-mode|gdb-remove-all-pending-triggers|gdb-remove-breakpoint-icons|gdb-remove-strings|gdb-reset|gdb-restore-windows|gdb-resync|gdb-rules-buffer-mode|gdb-rules-name-maker|gdb-rules-update-trigger|gdb-running|gdb-script-beginning-of-defun|gdb-script-calculate-indentation|gdb-script-end-of-defun|gdb-script-font-lock-syntactic-face|gdb-script-indent-line|gdb-script-mode|gdb-script-skip-to-head|gdb-select-frame|gdb-select-thread|gdb-send|gdb-set-buffer-rules|gdb-set-window-buffer|gdb-setq-thread-number|gdb-setup-windows|gdb-shell|gdb-show-run-p|gdb-show-stop-p|gdb-speedbar-auto-raise|gdb-speedbar-expand-node|gdb-speedbar-timer-fn|gdb-speedbar-update|gdb-stack-buffer-name|gdb-stack-list-frames-custom|gdb-stack-list-frames-handler|gdb-starting|gdb-step-thread|gdb-stopped|gdb-strip-string-backslash|gdb-table-add-row|gdb-table-column-sizes--cmacro|gdb-table-column-sizes|gdb-table-p--cmacro|gdb-table-p|gdb-table-right-align--cmacro|gdb-table-right-align|gdb-table-row-properties--cmacro|gdb-table-row-properties|gdb-table-rows--cmacro|gdb-table-rows|gdb-table-string|gdb-thread-created|gdb-thread-exited|gdb-thread-list-handler-custom|gdb-thread-list-handler|gdb-thread-selected|gdb-threads-buffer-name|gdb-threads-mode|gdb-toggle-breakpoint|gdb-toggle-switch-when-another-stopped|gdb-tooltip-print-1|gdb-tooltip-print|gdb-update-buffer-name|gdb-update-gud-running|gdb-update|gdb-var-create-handler|gdb-var-delete-1|gdb-var-delete-children|gdb-var-delete|gdb-var-evaluate-expression-handler|gdb-var-list-children-handler|gdb-var-list-children|gdb-var-set-format|gdb-var-update-handler|gdb-var-update|gdb-wait-for-pending|gdb|gdbmi-bnf-async-record|gdbmi-bnf-console-stream-output|gdbmi-bnf-gdb-prompt|gdbmi-bnf-incomplete-record-result|gdbmi-bnf-init|gdbmi-bnf-log-stream-output|gdbmi-bnf-out-of-band-record|gdbmi-bnf-output|gdbmi-bnf-result-and-async-record-impl|gdbmi-bnf-result-record|gdbmi-bnf-skip-unrecognized|gdbmi-bnf-stream-record|gdbmi-bnf-target-stream-output|gdbmi-is-number|gdbmi-same-start|gdbmi-start-with|generate-fontset-menu|generic-char-p|generic-make-keywords-list|generic-mode-internal|generic-mode|generic-p|generic-primary-only-one-p|generic-primary-only-p|gensym|gentemp|get\\\\\\\\*|get-edebug-spec|get-file-char|get-free-disk-space|get-language-info|get-mode-local-parent|get-mru-window|get-next-valid-buffer|get-other-frame|get-scroll-bar-mode|get-unicode-property-internal|get-unused-iso-final-char|get-upcase-table|getenv-internal|getf|gfile-add-watch|gfile-rm-watch|glasses-change|glasses-convert-to-unreadable|glasses-custom-set|glasses-make-overlay|glasses-make-readable|glasses-make-unreadable|glasses-mode|glasses-overlay-p|glasses-parenthesis-exception-p|glasses-set-overlay-properties|global-auto-composition-mode|global-auto-revert-mode|global-cwarn-mode-check-buffers|global-cwarn-mode-cmhh|global-cwarn-mode-enable-in-buffers|global-cwarn-mode|global-ede-mode|global-eldoc-mode|global-font-lock-mode-check-buffers|global-font-lock-mode-cmhh|global-font-lock-mode-enable-in-buffers|global-font-lock-mode|global-hi-lock-mode-check-buffers|global-hi-lock-mode-cmhh|global-hi-lock-mode-enable-in-buffers|global-hi-lock-mode|global-highlight-changes-mode-check-buffers|global-highlight-changes-mode-cmhh|global-highlight-changes-mode-enable-in-buffers|global-highlight-changes-mode|global-highlight-changes|global-hl-line-highlight|global-hl-line-mode|global-hl-line-unhighlight-all|global-hl-line-unhighlight|global-linum-mode-check-buffers|global-linum-mode-cmhh|global-linum-mode-enable-in-buffers|global-linum-mode|global-prettify-symbols-mode-check-buffers|global-prettify-symbols-mode-cmhh|global-prettify-symbols-mode-enable-in-buffers|global-prettify-symbols-mode|global-reveal-mode|global-semantic-decoration-mode|global-semantic-highlight-edits-mode|global-semantic-highlight-func-mode|global-semantic-idle-completions-mode|global-semantic-idle-local-symbol-highlight-mode|global-semantic-idle-scheduler-mode|global-semantic-idle-summary-mode|global-semantic-mru-bookmark-mode|global-semantic-show-parser-state-mode|global-semantic-show-unmatched-syntax-mode|global-semantic-stickyfunc-mode|global-semanticdb-minor-mode|global-set-scheme-interaction-buffer|global-srecode-minor-mode|global-subword-mode|global-superword-mode|global-visual-line-mode-check-buffers|global-visual-line-mode-cmhh|global-visual-line-mode-enable-in-buffers|global-visual-line-mode|global-whitespace-mode|global-whitespace-newline-mode|global-whitespace-toggle-options|glyphless-set-char-table-range|gmm-called-interactively-p|gmm-customize-mode|gmm-error|gmm-format-time-string|gmm-image-load-path-for-library|gmm-image-search-load-path|gmm-labels|gmm-message|gmm-regexp-concat|gmm-tool-bar-from-list|gmm-widget-p|gmm-write-region|gnus--random-face-with-type|gnus-1|gnus-Folder-save-name|gnus-active|gnus-add-buffer|gnus-add-configuration|gnus-add-shutdown|gnus-add-text-properties-when|gnus-add-text-properties|gnus-add-to-sorted-list|gnus-agent-batch-fetch|gnus-agent-batch|gnus-agent-delete-group|gnus-agent-fetch-session|gnus-agent-find-parameter|gnus-agent-get-function|gnus-agent-get-undownloaded-list|gnus-agent-group-covered-p|gnus-agent-method-p|gnus-agent-possibly-alter-active|gnus-agent-possibly-save-gcc|gnus-agent-regenerate|gnus-agent-rename-group|gnus-agent-request-article|gnus-agent-retrieve-headers|gnus-agent-save-active|gnus-agent-save-group-info|gnus-agent-store-article|gnus-agentize|gnus-alist-pull|gnus-alive-p|gnus-and|gnus-annotation-in-region-p|gnus-apply-kill-file-internal|gnus-apply-kill-file|gnus-archive-server-wanted-p|gnus-article-date-lapsed|gnus-article-date-local|gnus-article-date-original|gnus-article-de-base64-unreadable|gnus-article-de-quoted-unreadable|gnus-article-decode-HZ|gnus-article-decode-encoded-words|gnus-article-delete-invisible-text|gnus-article-display-x-face|gnus-article-edit-article|gnus-article-edit-done|gnus-article-edit-mode|gnus-article-fill-cited-article|gnus-article-fill-cited-long-lines|gnus-article-hide-boring-headers|gnus-article-hide-citation-in-followups|gnus-article-hide-citation-maybe|gnus-article-hide-citation|gnus-article-hide-headers|gnus-article-hide-pem|gnus-article-hide-signature|gnus-article-highlight-citation|gnus-article-html|gnus-article-mail|gnus-article-mode|gnus-article-next-page|gnus-article-outlook-deuglify-article|gnus-article-outlook-repair-attribution|gnus-article-outlook-unwrap-lines|gnus-article-prepare-display|gnus-article-prepare|gnus-article-prev-page|gnus-article-read-summary-keys|gnus-article-remove-cr|gnus-article-remove-trailing-blank-lines|gnus-article-save|gnus-article-set-window-start|gnus-article-setup-buffer|gnus-article-strip-leading-blank-lines|gnus-article-treat-overstrike|gnus-article-unsplit-urls|gnus-article-wash-html|gnus-assq-delete-all|gnus-async-halt-prefetch|gnus-async-prefetch-article|gnus-async-prefetch-next|gnus-async-prefetch-remove-group|gnus-async-request-fetched-article|gnus-atomic-progn-assign|gnus-atomic-progn|gnus-atomic-setq|gnus-backlog-enter-article|gnus-backlog-remove-article|gnus-backlog-request-article|gnus-batch-kill|gnus-batch-score|gnus-binary-mode|gnus-bind-print-variables|gnus-blocked-images|gnus-bookmark-bmenu-list|gnus-bookmark-jump|gnus-bookmark-set|gnus-bound-and-true-p|gnus-boundp|gnus-browse-foreign-server|gnus-buffer-exists-p|gnus-buffer-live-p|gnus-buffers|gnus-bug|gnus-button-mailto|gnus-button-reply|gnus-byte-compile|gnus-cache-articles-in-group|gnus-cache-close|gnus-cache-delete-group|gnus-cache-enter-article|gnus-cache-enter-remove-article|gnus-cache-file-contents|gnus-cache-generate-active|gnus-cache-generate-nov-databases|gnus-cache-open|gnus-cache-possibly-alter-active|gnus-cache-possibly-enter-article|gnus-cache-possibly-remove-articles|gnus-cache-remove-article|gnus-cache-rename-group|gnus-cache-request-article|gnus-cache-retrieve-headers|gnus-cache-save-buffers|gnus-cache-update-article|gnus-cached-article-p|gnus-character-to-event|gnus-check-backend-function|gnus-check-reasonable-setup|gnus-completing-read|gnus-configure-windows|gnus-continuum-version|gnus-convert-article-to-rmail|gnus-convert-face-to-png|gnus-convert-gray-x-face-to-xpm|gnus-convert-image-to-gray-x-face|gnus-convert-png-to-face|gnus-copy-article-buffer|gnus-copy-file|gnus-copy-overlay|gnus-copy-sequence|gnus-create-hash-size|gnus-create-image|gnus-create-info-command|gnus-current-score-file-nondirectory|gnus-data-find|gnus-data-header|gnus-date-get-time|gnus-date-iso8601|gnus-dd-mmm|gnus-deactivate-mark|gnus-declare-backend|gnus-decode-newsgroups|gnus-define-group-parameter|gnus-define-keymap|gnus-define-keys-1|gnus-define-keys-safe|gnus-define-keys|gnus-delay-article|gnus-delay-initialize|gnus-delay-send-queue|gnus-delete-alist|gnus-delete-directory|gnus-delete-duplicates|gnus-delete-file|gnus-delete-first|gnus-delete-gnus-frame|gnus-delete-line|gnus-delete-overlay|gnus-demon-add-disconnection|gnus-demon-add-handler|gnus-demon-add-rescan|gnus-demon-add-scan-timestamps|gnus-demon-add-scanmail|gnus-demon-cancel|gnus-demon-init|gnus-demon-remove-handler|gnus-display-x-face-in-from|gnus-draft-mode|gnus-draft-reminder|gnus-dribble-enter|gnus-dribble-touch|gnus-dup-enter-articles|gnus-dup-suppress-articles|gnus-dup-unsuppress-article|gnus-edit-form|gnus-emacs-completing-read|gnus-emacs-version|gnus-ems-redefine|gnus-enter-server-buffer|gnus-ephemeral-group-p|gnus-error|gnus-eval-in-buffer-window|gnus-execute|gnus-expand-group-parameter|gnus-expand-group-parameters|gnus-expunge|gnus-extended-version|gnus-extent-detached-p|gnus-extent-start-open|gnus-extract-address-components|gnus-extract-references|gnus-face-from-file|gnus-faces-at|gnus-fetch-field|gnus-fetch-group-other-frame|gnus-fetch-group|gnus-fetch-original-field|gnus-file-newer-than|gnus-final-warning|gnus-find-method-for-group|gnus-find-subscribed-addresses|gnus-find-text-property-region|gnus-float-time|gnus-folder-save-name|gnus-frame-or-window-display-name|gnus-generate-new-group-name|gnus-get-buffer-create|gnus-get-buffer-window|gnus-get-display-table|gnus-get-info|gnus-get-text-property-excluding-characters-with-faces|gnus-getenv-nntpserver|gnus-gethash-safe|gnus-gethash|gnus-globalify-regexp|gnus-goto-char|gnus-goto-colon|gnus-graphic-display-p|gnus-grep-in-list|gnus-group-add-parameter|gnus-group-add-score|gnus-group-auto-expirable-p|gnus-group-customize|gnus-group-decoded-name|gnus-group-entry|gnus-group-fast-parameter|gnus-group-find-parameter|gnus-group-first-unread-group|gnus-group-foreign-p|gnus-group-full-name|gnus-group-get-new-news|gnus-group-get-parameter|gnus-group-group-name|gnus-group-guess-full-name-from-command-method|gnus-group-insert-group-line|gnus-group-iterate|gnus-group-list-groups|gnus-group-mail|gnus-group-make-help-group|gnus-group-method|gnus-group-name-charset|gnus-group-name-decode|gnus-group-name-to-method|gnus-group-native-p|gnus-group-news|gnus-group-parameter-value|gnus-group-position-point|gnus-group-post-news|gnus-group-prefixed-name|gnus-group-prefixed-p|gnus-group-quit-config|gnus-group-quit|gnus-group-read-only-p|gnus-group-real-name|gnus-group-real-prefix|gnus-group-remove-parameter|gnus-group-save-newsrc|gnus-group-secondary-p|gnus-group-send-queue|gnus-group-server|gnus-group-set-info|gnus-group-set-mode-line|gnus-group-set-parameter|gnus-group-setup-buffer|gnus-group-short-name|gnus-group-split-fancy|gnus-group-split-setup|gnus-group-split-update|gnus-group-split|gnus-group-startup-message|gnus-group-total-expirable-p|gnus-group-unread|gnus-group-update-group|gnus-groups-from-server|gnus-header-from|gnus-highlight-selected-tree|gnus-horizontal-recenter|gnus-html-prefetch-images|gnus-ido-completing-read|gnus-image-type-available-p|gnus-indent-rigidly|gnus-info-find-node|gnus-info-group|gnus-info-level|gnus-info-marks|gnus-info-method|gnus-info-params|gnus-info-rank|gnus-info-read|gnus-info-score|gnus-info-set-entry|gnus-info-set-group|gnus-info-set-level|gnus-info-set-marks|gnus-info-set-method|gnus-info-set-params|gnus-info-set-rank|gnus-info-set-read|gnus-info-set-score|gnus-insert-random-face-header|gnus-insert-random-x-face-header|gnus-interactive|gnus-intern-safe|gnus-intersection|gnus-invisible-p|gnus-iswitchb-completing-read|gnus-jog-cache|gnus-key-press-event-p|gnus-kill-all-overlays)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:gnus-kill-buffer|gnus-kill-ephemeral-group|gnus-kill-file-edit-file|gnus-kill-file-raise-followups-to-author|gnus-kill-save-kill-buffer|gnus-kill|gnus-list-debbugs|gnus-list-memq-of-list|gnus-list-of-read-articles|gnus-list-of-unread-articles|gnus-local-set-keys|gnus-mail-strip-quoted-names|gnus-mailing-list-insinuate|gnus-mailing-list-mode|gnus-make-directory|gnus-make-hashtable|gnus-make-local-hook|gnus-make-overlay|gnus-make-predicate-1|gnus-make-predicate|gnus-make-sort-function-1|gnus-make-sort-function|gnus-make-thread-indent-array|gnus-map-function|gnus-mapcar|gnus-mark-active-p|gnus-match-substitute-replacement|gnus-max-width-function|gnus-member-of-valid|gnus-merge|gnus-message-with-timestamp|gnus-message|gnus-method-ephemeral-p|gnus-method-equal|gnus-method-option-p|gnus-method-simplify|gnus-method-to-full-server-name|gnus-method-to-server-name|gnus-method-to-server|gnus-methods-equal-p|gnus-methods-sloppily-equal|gnus-methods-using|gnus-mime-view-all-parts|gnus-mode-line-buffer-identification|gnus-mode-string-quote|gnus-move-overlay|gnus-msg-mail|gnus-mule-max-width-function|gnus-multiple-choice|gnus-narrow-to-body|gnus-narrow-to-page|gnus-native-method-p|gnus-news-group-p|gnus-newsgroup-directory-form|gnus-newsgroup-kill-file|gnus-newsgroup-savable-name|gnus-newsrc-parse-options|gnus-next-char-property-change|gnus-no-server-1|gnus-no-server|gnus-not-ignore|gnus-notifications|gnus-offer-save-summaries|gnus-online|gnus-open-agent|gnus-open-server|gnus-or|gnus-other-frame|gnus-outlook-deuglify-article|gnus-output-to-mail|gnus-output-to-rmail|gnus-overlay-buffer|gnus-overlay-end|gnus-overlay-get|gnus-overlay-put|gnus-overlay-start|gnus-overlays-at|gnus-overlays-in|gnus-parameter-charset|gnus-parameter-ham-marks|gnus-parameter-ham-process-destination|gnus-parameter-ham-resend-to|gnus-parameter-large-newsgroup-initial|gnus-parameter-post-method|gnus-parameter-registry-ignore|gnus-parameter-spam-autodetect-methods|gnus-parameter-spam-autodetect|gnus-parameter-spam-contents|gnus-parameter-spam-marks|gnus-parameter-spam-process-destination|gnus-parameter-spam-process|gnus-parameter-spam-resend-to|gnus-parameter-subscribed|gnus-parameter-to-address|gnus-parameter-to-list|gnus-parameters-get-parameter|gnus-parent-id|gnus-parse-without-error|gnus-pick-mode|gnus-plugged|gnus-possibly-generate-tree|gnus-possibly-score-headers|gnus-post-news|gnus-pp-to-string|gnus-pp|gnus-previous-char-property-change|gnus-prin1-to-string|gnus-prin1|gnus-process-get|gnus-process-plist|gnus-process-put|gnus-put-display-table|gnus-put-image|gnus-put-overlay-excluding-newlines|gnus-put-text-property-excluding-characters-with-faces|gnus-put-text-property-excluding-newlines|gnus-put-text-property|gnus-random-face|gnus-random-x-face|gnus-range-add|gnus-read-event-char|gnus-read-group|gnus-read-init-file|gnus-read-method|gnus-read-shell-command|gnus-recursive-directory-files|gnus-redefine-select-method-widget|gnus-region-active-p|gnus-registry-handle-action|gnus-registry-initialize|gnus-registry-install-hooks|gnus-remassoc|gnus-remove-from-range|gnus-remove-if-not|gnus-remove-if|gnus-remove-image|gnus-remove-text-properties-when|gnus-remove-text-with-property|gnus-rename-file|gnus-replace-in-string|gnus-request-article-this-buffer|gnus-request-post|gnus-request-type|gnus-rescale-image|gnus-run-hook-with-args|gnus-run-hooks|gnus-run-mode-hooks|gnus-same-method-different-name|gnus-score-adaptive|gnus-score-advanced|gnus-score-close|gnus-score-customize|gnus-score-delta-default|gnus-score-file-name|gnus-score-find-trace|gnus-score-flush-cache|gnus-score-followup-article|gnus-score-followup-thread|gnus-score-headers|gnus-score-mode|gnus-score-save|gnus-secondary-method-p|gnus-seconds-month|gnus-seconds-today|gnus-seconds-year|gnus-select-frame-set-input-focus|gnus-select-lowest-window|gnus-server-add-address|gnus-server-equal|gnus-server-extend-method|gnus-server-get-method|gnus-server-server-name|gnus-server-set-info|gnus-server-status|gnus-server-string|gnus-server-to-method|gnus-servers-using-backend|gnus-set-active|gnus-set-file-modes|gnus-set-info|gnus-set-process-plist|gnus-set-process-query-on-exit-flag|gnus-set-sorted-intersection|gnus-set-window-start|gnus-set-work-buffer|gnus-sethash|gnus-short-group-name|gnus-shutdown|gnus-sieve-article-add-rule|gnus-sieve-generate|gnus-sieve-update|gnus-similar-server-opened|gnus-simplify-mode-line|gnus-slave-no-server|gnus-slave-unplugged|gnus-slave|gnus-sloppily-equal-method-parameters|gnus-sorted-complement|gnus-sorted-difference|gnus-sorted-intersection|gnus-sorted-ndifference|gnus-sorted-nintersection|gnus-sorted-nunion|gnus-sorted-range-intersection|gnus-sorted-union|gnus-splash-svg-color-symbols|gnus-splash|gnus-split-references|gnus-start-date-timer|gnus-stop-date-timer|gnus-string-equal|gnus-string-mark-left-to-right|gnus-string-match-p|gnus-string-or-1|gnus-string-or|gnus-string-prefix-p|gnus-string-remove-all-properties|gnus-string<|gnus-string>|gnus-strip-whitespace|gnus-subscribe-topics|gnus-summary-article-number|gnus-summary-bookmark-jump|gnus-summary-buffer-name|gnus-summary-cancel-article|gnus-summary-current-score|gnus-summary-exit|gnus-summary-followup-to-mail-with-original|gnus-summary-followup-to-mail|gnus-summary-followup-with-original|gnus-summary-followup|gnus-summary-increase-score|gnus-summary-insert-cached-articles|gnus-summary-insert-line|gnus-summary-last-subject|gnus-summary-line-format-spec|gnus-summary-lower-same-subject-and-select|gnus-summary-lower-same-subject|gnus-summary-lower-score|gnus-summary-lower-thread|gnus-summary-mail-forward|gnus-summary-mail-other-window|gnus-summary-news-other-window|gnus-summary-position-point|gnus-summary-post-forward|gnus-summary-post-news|gnus-summary-raise-same-subject-and-select|gnus-summary-raise-same-subject|gnus-summary-raise-score|gnus-summary-raise-thread|gnus-summary-read-group|gnus-summary-reply-with-original|gnus-summary-reply|gnus-summary-resend-bounced-mail|gnus-summary-resend-message|gnus-summary-save-article-folder|gnus-summary-save-article-vm|gnus-summary-save-in-folder|gnus-summary-save-in-vm|gnus-summary-score-map|gnus-summary-send-map|gnus-summary-set-agent-mark|gnus-summary-set-score|gnus-summary-skip-intangible|gnus-summary-supersede-article|gnus-summary-wide-reply-with-original|gnus-summary-wide-reply|gnus-suppress-keymap|gnus-symbolic-argument|gnus-sync-initialize|gnus-sync-install-hooks|gnus-time-iso8601|gnus-timer--function|gnus-tool-bar-update|gnus-topic-mode|gnus-topic-remove-group|gnus-topic-set-parameters|gnus-treat-article|gnus-treat-from-gravatar|gnus-treat-from-picon|gnus-treat-mail-gravatar|gnus-treat-mail-picon|gnus-treat-newsgroups-picon|gnus-tree-close|gnus-tree-open|gnus-try-warping-via-registry|gnus-turn-off-edit-menu|gnus-undo-mode|gnus-undo-register|gnus-union|gnus-unplugged|gnus-update-alist-soft|gnus-update-format|gnus-update-read-articles|gnus-url-unhex-string|gnus-url-unhex|gnus-use-long-file-name|gnus-user-format-function-D|gnus-user-format-function-d|gnus-uu-decode-binhex-view|gnus-uu-decode-binhex|gnus-uu-decode-save-view|gnus-uu-decode-save|gnus-uu-decode-unshar-and-save-view|gnus-uu-decode-unshar-and-save|gnus-uu-decode-unshar-view|gnus-uu-decode-unshar|gnus-uu-decode-uu-and-save-view|gnus-uu-decode-uu-and-save|gnus-uu-decode-uu-view|gnus-uu-decode-uu|gnus-uu-delete-work-dir|gnus-uu-digest-mail-forward|gnus-uu-digest-post-forward|gnus-uu-extract-map|gnus-uu-invert-processable|gnus-uu-mark-all|gnus-uu-mark-buffer|gnus-uu-mark-by-regexp|gnus-uu-mark-map|gnus-uu-mark-over|gnus-uu-mark-region|gnus-uu-mark-series|gnus-uu-mark-sparse|gnus-uu-mark-thread|gnus-uu-post-news|gnus-uu-unmark-thread|gnus-version|gnus-virtual-group-p|gnus-visual-p|gnus-window-edges|gnus-window-inside-pixel-edges|gnus-with-output-to-file|gnus-write-active-file|gnus-write-buffer|gnus-x-face-from-file|gnus-xmas-define|gnus-xmas-redefine|gnus-xmas-splash|gnus-y-or-n-p|gnus-yes-or-no-p|gnus|gnutls-available-p|gnutls-boot|gnutls-bye|gnutls-deinit|gnutls-error-fatalp|gnutls-error-string|gnutls-errorp|gnutls-get-initstage|gnutls-message-maybe|gnutls-negotiate|gnutls-peer-status-warning-describe|gnutls-peer-status|gomoku--intangible|gomoku-beginning-of-line|gomoku-check-filled-qtuple|gomoku-click|gomoku-crash-game|gomoku-cross-qtuple|gomoku-display-statistics|gomoku-emacs-plays|gomoku-end-of-line|gomoku-find-filled-qtuple|gomoku-goto-square|gomoku-goto-xy|gomoku-human-plays|gomoku-human-resigns|gomoku-human-takes-back|gomoku-index-to-x|gomoku-index-to-y|gomoku-init-board|gomoku-init-display|gomoku-init-score-table|gomoku-init-square-score|gomoku-max-height|gomoku-max-width|gomoku-mode|gomoku-mouse-play|gomoku-move-down|gomoku-move-ne|gomoku-move-nw|gomoku-move-se|gomoku-move-sw|gomoku-move-up|gomoku-nb-qtuples|gomoku-offer-a-draw|gomoku-play-move|gomoku-plot-square|gomoku-point-square|gomoku-point-y|gomoku-prompt-for-move|gomoku-prompt-for-other-game|gomoku-start-game|gomoku-strongest-square|gomoku-switch-to-window|gomoku-take-back|gomoku-terminate-game|gomoku-update-score-in-direction|gomoku-update-score-table|gomoku-xy-to-index|gomoku|goto-address-at-mouse|goto-address-at-point|goto-address-find-address-at-point|goto-address-fontify-region|goto-address-fontify|goto-address-mode|goto-address-prog-mode|goto-address-unfontify|goto-address|goto-history-element|goto-line|goto-next-locus|gpm-mouse-disable|gpm-mouse-enable|gpm-mouse-mode|gpm-mouse-start|gpm-mouse-stop|gravatar-retrieve-synchronously|gravatar-retrieve|grep-apply-setting|grep-compute-defaults|grep-default-command|grep-expand-template|grep-filter|grep-find|grep-mode|grep-probe|grep-process-setup|grep-read-files|grep-read-regexp|grep-tag-default|grep|gs-height-in-pt|gs-load-image|gs-options|gs-set-ghostview-colors-window-prop|gs-set-ghostview-window-prop|gs-width-in-pt|gud-backward-sexp|gud-basic-call|gud-call|gud-common-init|gud-dbx-marker-filter|gud-dbx-massage-args|gud-def|gud-dguxdbx-marker-filter|gud-display-frame|gud-display-line|gud-expansion-speedbar-buttons|gud-expr-compound-sep|gud-expr-compound|gud-file-name|gud-filter|gud-find-c-expr|gud-find-class|gud-find-expr|gud-find-file|gud-format-command|gud-forward-sexp|gud-gdb-completion-at-point|gud-gdb-completions-1|gud-gdb-completions|gud-gdb-fetch-lines-filter|gud-gdb-get-stackframe|gud-gdb-goto-stackframe|gud-gdb-marker-filter|gud-gdb-run-command-fetch-lines|gud-gdb|gud-gdbmi-completions|gud-gdbmi-fetch-lines-filter|gud-gdbmi-marker-filter|gud-goto-info|gud-guiler-marker-filter|gud-innermost-expr|gud-install-speedbar-variables|gud-irixdbx-marker-filter|gud-jdb-analyze-source|gud-jdb-build-class-source-alist-for-file|gud-jdb-build-class-source-alist|gud-jdb-build-source-files-list|gud-jdb-find-source-file|gud-jdb-find-source-using-classpath|gud-jdb-find-source|gud-jdb-marker-filter|gud-jdb-massage-args|gud-jdb-parse-classpath-string|gud-jdb-skip-block|gud-jdb-skip-character-literal|gud-jdb-skip-id-ish-thing|gud-jdb-skip-single-line-comment|gud-jdb-skip-string-literal|gud-jdb-skip-traditional-or-documentation-comment|gud-jdb-skip-whitespace-and-comments|gud-jdb-skip-whitespace|gud-kill-buffer-hook|gud-marker-filter|gud-mipsdbx-marker-filter|gud-mode|gud-next-expr|gud-pdb-marker-filter|gud-perldb-marker-filter|gud-perldb-massage-args|gud-prev-expr|gud-query-cmdline|gud-read-address|gud-refresh|gud-reset|gud-sdb-find-file|gud-sdb-marker-filter|gud-sentinel|gud-set-buffer|gud-speedbar-buttons|gud-speedbar-item-info|gud-stop-subjob|gud-symbol|gud-tool-bar-item-visible-no-fringe|gud-tooltip-activate-mouse-motions-if-enabled|gud-tooltip-activate-mouse-motions|gud-tooltip-change-major-mode|gud-tooltip-dereference|gud-tooltip-mode|gud-tooltip-mouse-motion|gud-tooltip-print-command|gud-tooltip-process-output|gud-tooltip-tips|gud-val|gud-watch|gud-xdb-marker-filter|gud-xdb-massage-args|gui--selection-value-internal|gui--valid-simple-selection-p|gui-call|gui-get-primary-selection|gui-get-selection|gui-method--name|gui-method-declare|gui-method-define|gui-method|gui-select-text|gui-selection-value|gui-set-selection|guiler|gv--defsetter|gv--defun-declaration|gv-deref|gv-get|gv-ref|hack-local-variables-apply|hack-local-variables-confirm|hack-local-variables-filter|hack-local-variables-prop-line|hack-one-local-variable--obsolete|hack-one-local-variable-constantp|hack-one-local-variable-eval-safep|hack-one-local-variable-quotep|hack-one-local-variable|handle-delete-frame|handle-focus-in|handle-focus-out|handle-save-session|handle-select-window|handwrite-10pt|handwrite-11pt|handwrite-12pt|handwrite-13pt|handwrite-insert-font|handwrite-insert-header|handwrite-insert-info|handwrite-insert-preamble|handwrite-set-pagenumber-off|handwrite-set-pagenumber-on|handwrite-set-pagenumber|handwrite|hangul-input-method-activate|hanoi-0|hanoi-goto-char|hanoi-insert-ring|hanoi-internal|hanoi-move-ring|hanoi-n|hanoi-pos-on-tower-p|hanoi-put-face|hanoi-ring-to-pos|hanoi-sit-for|hanoi-unix-64|hanoi-unix|hanoi|hash-table-keys|hash-table-values|hashcash-already-paid-p|hashcash-cancel-async|hashcash-check-payment|hashcash-generate-payment-async|hashcash-generate-payment|hashcash-insert-payment-async-2|hashcash-insert-payment-async|hashcash-insert-payment|hashcash-payment-required|hashcash-payment-to|hashcash-point-at-bol|hashcash-point-at-eol|hashcash-processes-running-p|hashcash-strip-quoted-names|hashcash-token-substring|hashcash-verify-payment|hashcash-version|hashcash-wait-async|hashcash-wait-or-cancel|he--all-buffers|he-buffer-member|he-capitalize-first|he-concat-directory-file-name|he-dabbrev-beg|he-dabbrev-kill-search|he-dabbrev-search|he-file-name-beg|he-init-string|he-kill-beg|he-line-beg|he-line-search-regexp|he-line-search|he-lisp-symbol-beg)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:he-list-beg|he-list-search|he-ordinary-case-p|he-reset-string|he-string-member|he-substitute-string|he-transfer-case|he-whole-kill-search|hebrew-font-get-precomposed|hebrew-shape-gstring|help--binding-locus|help--key-binding-keymap|help-C-file-name|help-add-fundoc-usage|help-at-pt-cancel-timer|help-at-pt-kbd-string|help-at-pt-maybe-display|help-at-pt-set-timer|help-at-pt-string|help-bookmark-jump|help-bookmark-make-record|help-button-action|help-describe-category-set|help-do-arg-highlight|help-do-xref|help-fns--autoloaded-p|help-fns--compiler-macro|help-fns--interactive-only|help-fns--key-bindings|help-fns--obsolete|help-fns--parent-mode|help-fns--signature|help-follow-mouse|help-follow-symbol|help-follow|help-for-help-internal-doc|help-for-help-internal|help-for-help|help-form-show|help-function-arglist|help-go-back|help-go-forward|help-highlight-arg|help-highlight-arguments|help-insert-string|help-insert-xref-button|help-key-description|help-make-usage|help-make-xrefs|help-mode-finish|help-mode-menu|help-mode-revert-buffer|help-mode-setup|help-mode|help-print-return-message|help-quit|help-split-fundoc|help-window-display-message|help-window-setup|help-with-tutorial-spec-language|help-with-tutorial|help-xref-button|help-xref-go-back|help-xref-go-forward|help-xref-interned|help-xref-on-pp|help|hexl-C-c-prefix|hexl-C-x-prefix|hexl-ESC-prefix|hexl-activate-ruler|hexl-address-to-marker|hexl-ascii-start-column|hexl-backward-char|hexl-backward-short|hexl-backward-word|hexl-beginning-of-1k-page|hexl-beginning-of-512b-page|hexl-beginning-of-buffer|hexl-beginning-of-line|hexl-char-after-point|hexl-current-address|hexl-end-of-1k-page|hexl-end-of-512b-page|hexl-end-of-buffer|hexl-end-of-line|hexl-find-file|hexl-follow-ascii-find|hexl-follow-ascii|hexl-follow-line|hexl-forward-char|hexl-forward-short|hexl-forward-word|hexl-goto-address|hexl-goto-hex-address|hexl-hex-char-to-integer|hexl-hex-string-to-integer|hexl-highlight-line-range|hexl-htoi|hexl-insert-char|hexl-insert-decimal-char|hexl-insert-hex-char|hexl-insert-hex-string|hexl-insert-multibyte-char|hexl-insert-octal-char|hexl-isearch-search-function|hexl-line-displen|hexl-maybe-dehexlify-buffer|hexl-menu|hexl-mode--minor-mode-p|hexl-mode--setq-local|hexl-mode-exit|hexl-mode-ruler|hexl-mode|hexl-next-line|hexl-oct-char-to-integer|hexl-octal-string-to-integer|hexl-options|hexl-previous-line|hexl-print-current-point-info|hexl-printable-character|hexl-quoted-insert|hexl-revert-buffer-function|hexl-rulerize|hexl-save-buffer|hexl-scroll-down|hexl-scroll-up|hexl-self-insert-command|hexlify-buffer|hfy-begin-span|hfy-bgcol|hfy-box-to-border-assoc|hfy-box-to-style|hfy-box|hfy-buffer|hfy-colour-vals|hfy-colour|hfy-combined-face-spec|hfy-compile-face-map|hfy-compile-stylesheet|hfy-copy-and-fontify-file|hfy-css-name|hfy-decor|hfy-default-footer|hfy-default-header|hfy-dirname|hfy-end-span|hfy-face-at|hfy-face-attr-for-class|hfy-face-or-def-to-name|hfy-face-resolve-face|hfy-face-to-css-default|hfy-face-to-style-i|hfy-face-to-style|hfy-fallback-colour-values|hfy-family|hfy-find-invisible-ranges|hfy-flatten-style|hfy-fontified-p|hfy-fontify-buffer|hfy-force-fontification|hfy-href-stub|hfy-href|hfy-html-dekludge-buffer|hfy-html-enkludge-buffer|hfy-html-quote|hfy-init-progn|hfy-initfile|hfy-interq|hfy-invisible-name|hfy-invisible|hfy-kludge-cperl-mode|hfy-link-style-string|hfy-link-style|hfy-list-files|hfy-load-tags-cache|hfy-lookup|hfy-make-directory|hfy-mark-tag-hrefs|hfy-mark-tag-names|hfy-mark-trailing-whitespace|hfy-merge-adjacent-spans|hfy-opt|hfy-overlay-props-at|hfy-parse-tags-buffer|hfy-prepare-index-i|hfy-prepare-index|hfy-prepare-tag-map|hfy-prop-invisible-p|hfy-relstub|hfy-save-buffer-state|hfy-save-initvar|hfy-save-kill-buffers|hfy-shell|hfy-size-to-int|hfy-size|hfy-slant|hfy-sprintf-stylesheet|hfy-subtract-maps|hfy-tags-for-file|hfy-text-p|hfy-triplet|hfy-unmark-trailing-whitespace|hfy-weight|hfy-which-etags|hfy-width|hfy-word-regex|hi-lock--hashcons|hi-lock--regexps-at-point|hi-lock-face-buffer|hi-lock-face-phrase-buffer|hi-lock-face-symbol-at-point|hi-lock-find-patterns|hi-lock-font-lock-hook|hi-lock-keyword->face|hi-lock-line-face-buffer|hi-lock-mode-set-explicitly|hi-lock-mode|hi-lock-process-phrase|hi-lock-read-face-name|hi-lock-regexp-okay|hi-lock-set-file-patterns|hi-lock-set-pattern|hi-lock-unface-buffer|hi-lock-unload-function|hi-lock-write-interactive-patterns|hide-body|hide-entry|hide-ifdef-block|hide-ifdef-define|hide-ifdef-guts|hide-ifdef-mode-menu|hide-ifdef-mode|hide-ifdef-region-internal|hide-ifdef-region|hide-ifdef-set-define-alist|hide-ifdef-toggle-outside-read-only|hide-ifdef-toggle-read-only|hide-ifdef-toggle-shadowing|hide-ifdef-undef|hide-ifdef-use-define-alist|hide-ifdefs|hide-leaves|hide-other|hide-region-body|hide-sublevels|hide-subtree|hif-add-new-defines|hif-after-revert-function|hif-and-expr|hif-and|hif-canonicalize-tokens|hif-canonicalize|hif-clear-all-ifdef-defined|hif-comma|hif-comp-expr|hif-compress-define-list|hif-conditional|hif-define-macro|hif-define-operator|hif-defined|hif-delimit|hif-divide|hif-end-of-line|hif-endif-to-ifdef|hif-eq-expr|hif-equal|hif-evaluate-macro|hif-evaluate-region|hif-expand-token-list|hif-expr|hif-exprlist|hif-factor|hif-find-any-ifX|hif-find-define|hif-find-ifdef-block|hif-find-next-relevant|hif-find-previous-relevant|hif-find-range|hif-flatten|hif-get-argument-list|hif-greater-equal|hif-greater|hif-hide-line|hif-if-valid-identifier-p|hif-ifdef-to-endif|hif-invoke|hif-less-equal|hif-less|hif-logand-expr|hif-logand|hif-logior-expr|hif-logior|hif-lognot|hif-logshift-expr|hif-logxor-expr|hif-logxor|hif-looking-at-elif|hif-looking-at-else|hif-looking-at-endif|hif-looking-at-ifX|hif-lookup|hif-macro-supply-arguments|hif-make-range|hif-math|hif-mathify-binop|hif-mathify|hif-merge-ifdef-region|hif-minus|hif-modulo|hif-muldiv-expr|hif-multiply|hif-nexttoken|hif-not|hif-notequal|hif-or-expr|hif-or|hif-parse-exp|hif-parse-macro-arglist|hif-place-macro-invocation|hif-plus|hif-possibly-hide|hif-range-elif|hif-range-else|hif-range-end|hif-range-start|hif-recurse-on|hif-set-var|hif-shiftleft|hif-shiftright|hif-show-all|hif-show-ifdef-region|hif-string-concatenation|hif-string-to-number|hif-stringify|hif-token-concat|hif-token-concatenation|hif-token-stringification|hif-tokenize|hif-undefine-symbol|highlight-changes-mode-set-explicitly|highlight-changes-mode-turn-on|highlight-changes-mode|highlight-changes-next-change|highlight-changes-previous-change|highlight-changes-remove-highlight|highlight-changes-rotate-faces|highlight-changes-visible-mode|highlight-compare-buffers|highlight-compare-with-file|highlight-lines-matching-regexp|highlight-markup-buffers|highlight-phrase|highlight-regexp|highlight-symbol-at-point|hilit-chg-bump-change|hilit-chg-clear|hilit-chg-cust-fix-changes-face-list|hilit-chg-desktop-restore|hilit-chg-display-changes|hilit-chg-fixup|hilit-chg-get-diff-info|hilit-chg-get-diff-list-hk|hilit-chg-hide-changes|hilit-chg-make-list|hilit-chg-make-ov|hilit-chg-map-changes|hilit-chg-set-face-on-change|hilit-chg-set|hilit-chg-unload-function|hilit-chg-update|hippie-expand|hl-line-highlight|hl-line-make-overlay|hl-line-mode|hl-line-move|hl-line-unhighlight|hl-line-unload-function|hmac-md5-96|hmac-md5|holiday-list|holidays|horizontal-scroll-bar-mode|horizontal-scroll-bars-available-p|how-many|hs-already-hidden-p|hs-c-like-adjust-block-beginning|hs-discard-overlays|hs-find-block-beginning|hs-forward-sexp|hs-grok-mode-type|hs-hide-all|hs-hide-block-at-point|hs-hide-block|hs-hide-comment-region|hs-hide-initial-comment-block|hs-hide-level-recursive|hs-hide-level|hs-inside-comment-p|hs-isearch-show-temporary|hs-isearch-show|hs-life-goes-on|hs-looking-at-block-start-p|hs-make-overlay|hs-minor-mode-menu|hs-minor-mode|hs-mouse-toggle-hiding|hs-overlay-at|hs-show-all|hs-show-block|hs-toggle-hiding|html-autoview-mode|html-checkboxes|html-current-defun-name|html-headline-1|html-headline-2|html-headline-3|html-headline-4|html-headline-5|html-headline-6|html-horizontal-rule|html-href-anchor|html-image|html-imenu-index|html-line|html-list-item|html-mode|html-name-anchor|html-ordered-list|html-paragraph|html-radio-buttons|html-unordered-list|html2text|htmlfontify-buffer|htmlfontify-copy-and-link-dir|htmlfontify-load-initfile|htmlfontify-load-rgb-file|htmlfontify-run-etags|htmlfontify-save-initfile|htmlfontify-string|htmlize-attrlist-to-fstruct|htmlize-buffer-1|htmlize-buffer-substring-no-invisible|htmlize-buffer|htmlize-color-to-rgb|htmlize-copy-attr-if-set|htmlize-css-insert-head|htmlize-css-insert-text|htmlize-css-specs|htmlize-defang-local-variables|htmlize-default-body-tag|htmlize-default-doctype|htmlize-despam-address|htmlize-ensure-fontified|htmlize-face-background|htmlize-face-color-internal|htmlize-face-emacs21-attr|htmlize-face-foreground|htmlize-face-list-p|htmlize-face-size|htmlize-face-specifies-property|htmlize-face-to-fstruct|htmlize-faces-at-point|htmlize-faces-in-buffer|htmlize-file|htmlize-font-body-tag|htmlize-font-insert-text|htmlize-fstruct-background--cmacro|htmlize-fstruct-background|htmlize-fstruct-boldp--cmacro|htmlize-fstruct-boldp|htmlize-fstruct-css-name--cmacro|htmlize-fstruct-css-name|htmlize-fstruct-foreground--cmacro|htmlize-fstruct-foreground|htmlize-fstruct-italicp--cmacro|htmlize-fstruct-italicp|htmlize-fstruct-overlinep--cmacro|htmlize-fstruct-overlinep|htmlize-fstruct-p--cmacro|htmlize-fstruct-p|htmlize-fstruct-size--cmacro|htmlize-fstruct-size|htmlize-fstruct-strikep--cmacro|htmlize-fstruct-strikep|htmlize-fstruct-underlinep--cmacro|htmlize-fstruct-underlinep|htmlize-get-color-rgb-hash|htmlize-inline-css-body-tag|htmlize-inline-css-insert-text|htmlize-locate-file|htmlize-make-face-map|htmlize-make-file-name|htmlize-make-hyperlinks|htmlize-many-files-dired|htmlize-many-files|htmlize-memoize|htmlize-merge-faces|htmlize-merge-size|htmlize-merge-two-faces|htmlize-method-function|htmlize-method|htmlize-next-change|htmlize-protect-string|htmlize-region-for-paste|htmlize-region|htmlize-trim-ellipsis|htmlize-unstringify-face|htmlize-untabify|htmlize-with-fontify-message|ibuffer-active-formats-name|ibuffer-add-saved-filters|ibuffer-add-to-tmp-hide|ibuffer-add-to-tmp-show|ibuffer-assert-ibuffer-mode|ibuffer-auto-mode|ibuffer-backward-filter-group|ibuffer-backward-line|ibuffer-backwards-next-marked|ibuffer-bs-show|ibuffer-buf-matches-predicates|ibuffer-buffer-file-name|ibuffer-buffer-name-face|ibuffer-buffer-names-with-mark|ibuffer-bury-buffer|ibuffer-check-formats|ibuffer-clear-filter-groups|ibuffer-clear-summary-columns|ibuffer-columnize-and-insert-list|ibuffer-compile-format|ibuffer-compile-make-eliding-form|ibuffer-compile-make-format-form|ibuffer-compile-make-substring-form|ibuffer-confirm-operation-on|ibuffer-copy-filename-as-kill|ibuffer-count-deletion-lines|ibuffer-count-marked-lines|ibuffer-current-buffer|ibuffer-current-buffers-with-marks|ibuffer-current-format|ibuffer-current-formats|ibuffer-current-mark|ibuffer-current-state-list|ibuffer-customize|ibuffer-decompose-filter-group|ibuffer-decompose-filter|ibuffer-delete-saved-filter-groups|ibuffer-delete-saved-filters|ibuffer-deletion-marked-buffer-names|ibuffer-diff-with-file|ibuffer-do-delete|ibuffer-do-eval|ibuffer-do-isearch-regexp|ibuffer-do-isearch|ibuffer-do-kill-lines|ibuffer-do-kill-on-deletion-marks|ibuffer-do-occur|ibuffer-do-print|ibuffer-do-query-replace-regexp|ibuffer-do-query-replace|ibuffer-do-rename-uniquely|ibuffer-do-replace-regexp|ibuffer-do-revert|ibuffer-do-save|ibuffer-do-shell-command-file|ibuffer-do-shell-command-pipe-replace|ibuffer-do-shell-command-pipe|ibuffer-do-sort-by-alphabetic|ibuffer-do-sort-by-filename\\\\\\\\/process|ibuffer-do-sort-by-major-mode|ibuffer-do-sort-by-mode-name|ibuffer-do-sort-by-recency|ibuffer-do-sort-by-size|ibuffer-do-toggle-modified|ibuffer-do-toggle-read-only|ibuffer-do-view-1|ibuffer-do-view-and-eval|ibuffer-do-view-horizontally|ibuffer-do-view-other-frame|ibuffer-do-view|ibuffer-exchange-filters|ibuffer-expand-format-entry|ibuffer-filter-buffers|ibuffer-filter-by-content|ibuffer-filter-by-derived-mode|ibuffer-filter-by-filename|ibuffer-filter-by-mode|ibuffer-filter-by-name|ibuffer-filter-by-predicate|ibuffer-filter-by-size-gt|ibuffer-filter-by-size-lt|ibuffer-filter-by-used-mode|ibuffer-filter-disable|ibuffer-filters-to-filter-group|ibuffer-find-file)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:ibuffer-format-column|ibuffer-forward-filter-group|ibuffer-forward-line|ibuffer-forward-next-marked|ibuffer-get-marked-buffers|ibuffer-included-in-filters-p|ibuffer-insert-buffer-line|ibuffer-insert-filter-group|ibuffer-interactive-filter-by-mode|ibuffer-invert-sorting|ibuffer-jump-to-buffer|ibuffer-jump-to-filter-group|ibuffer-kill-filter-group|ibuffer-kill-line|ibuffer-list-buffers|ibuffer-make-column-filename-and-process|ibuffer-make-column-filename|ibuffer-make-column-process|ibuffer-map-deletion-lines|ibuffer-map-lines-nomodify|ibuffer-map-lines|ibuffer-map-marked-lines|ibuffer-map-on-mark|ibuffer-mark-by-file-name-regexp|ibuffer-mark-by-mode-regexp|ibuffer-mark-by-mode|ibuffer-mark-by-name-regexp|ibuffer-mark-compressed-file-buffers|ibuffer-mark-dired-buffers|ibuffer-mark-dissociated-buffers|ibuffer-mark-for-delete-backwards|ibuffer-mark-for-delete|ibuffer-mark-forward|ibuffer-mark-help-buffers|ibuffer-mark-interactive|ibuffer-mark-modified-buffers|ibuffer-mark-old-buffers|ibuffer-mark-read-only-buffers|ibuffer-mark-special-buffers|ibuffer-mark-unsaved-buffers|ibuffer-marked-buffer-names|ibuffer-mode|ibuffer-mouse-filter-by-mode|ibuffer-mouse-popup-menu|ibuffer-mouse-toggle-filter-group|ibuffer-mouse-toggle-mark|ibuffer-mouse-visit-buffer|ibuffer-negate-filter|ibuffer-or-filter|ibuffer-other-window|ibuffer-pop-filter-group|ibuffer-pop-filter|ibuffer-recompile-formats|ibuffer-redisplay-current|ibuffer-redisplay-engine|ibuffer-redisplay|ibuffer-save-filter-groups|ibuffer-save-filters|ibuffer-set-filter-groups-by-mode|ibuffer-set-mark-1|ibuffer-set-mark|ibuffer-shrink-to-fit|ibuffer-skip-properties|ibuffer-sort-bufferlist|ibuffer-switch-format|ibuffer-switch-to-saved-filter-groups|ibuffer-switch-to-saved-filters|ibuffer-toggle-filter-group|ibuffer-toggle-marks|ibuffer-toggle-sorting-mode|ibuffer-unmark-all|ibuffer-unmark-backward|ibuffer-unmark-forward|ibuffer-update-format|ibuffer-update-title-and-summary|ibuffer-update|ibuffer-visible-p|ibuffer-visit-buffer-1-window|ibuffer-visit-buffer-other-frame|ibuffer-visit-buffer-other-window-noselect|ibuffer-visit-buffer-other-window|ibuffer-visit-buffer|ibuffer-visit-tags-table|ibuffer-yank-filter-group|ibuffer-yank|ibuffer|icalendar--add-decoded-times|icalendar--add-diary-entry|icalendar--all-events|icalendar--convert-all-timezones|icalendar--convert-anniversary-to-ical|icalendar--convert-block-to-ical|icalendar--convert-cyclic-to-ical|icalendar--convert-date-to-ical|icalendar--convert-float-to-ical|icalendar--convert-ical-to-diary|icalendar--convert-non-recurring-all-day-to-diary|icalendar--convert-non-recurring-not-all-day-to-diary|icalendar--convert-ordinary-to-ical|icalendar--convert-recurring-to-diary|icalendar--convert-sexp-to-ical|icalendar--convert-string-for-export|icalendar--convert-string-for-import|icalendar--convert-to-ical|icalendar--convert-tz-offset|icalendar--convert-weekly-to-ical|icalendar--convert-yearly-to-ical|icalendar--create-ical-alarm|icalendar--create-uid|icalendar--date-to-isodate|icalendar--datestring-to-isodate|icalendar--datetime-to-american-date|icalendar--datetime-to-colontime|icalendar--datetime-to-diary-date|icalendar--datetime-to-european-date|icalendar--datetime-to-iso-date|icalendar--datetime-to-noneuropean-date|icalendar--decode-isodatetime|icalendar--decode-isoduration|icalendar--diarytime-to-isotime|icalendar--dmsg|icalendar--do-create-ical-alarm|icalendar--find-time-zone|icalendar--format-ical-event|icalendar--get-children|icalendar--get-event-properties|icalendar--get-event-property-attributes|icalendar--get-event-property|icalendar--get-month-number|icalendar--get-unfolded-buffer|icalendar--get-weekday-abbrev|icalendar--get-weekday-number|icalendar--get-weekday-numbers|icalendar--parse-summary-and-rest|icalendar--parse-vtimezone|icalendar--read-element|icalendar--rris|icalendar--split-value|icalendar-convert-diary-to-ical|icalendar-export-file|icalendar-export-region|icalendar-extract-ical-from-buffer|icalendar-first-weekday-of-year|icalendar-import-buffer|icalendar-import-file|icalendar-import-format-sample|icomplete--completion-predicate|icomplete--completion-table|icomplete--field-beg|icomplete--field-end|icomplete--field-string|icomplete--in-region-setup|icomplete-backward-completions|icomplete-completions|icomplete-exhibit|icomplete-forward-completions|icomplete-minibuffer-setup|icomplete-mode|icomplete-post-command-hook|icomplete-pre-command-hook|icomplete-simple-completing-p|icomplete-tidy|icon-backward-to-noncomment|icon-backward-to-start-of-continued-exp|icon-backward-to-start-of-if|icon-comment-indent|icon-forward-sexp-function|icon-indent-command|icon-indent-line|icon-is-continuation-line|icon-is-continued-line|icon-mode|iconify-or-deiconify-frame|idl-font-lock-keywords-2|idl-font-lock-keywords-3|idl-font-lock-keywords|idl-mode|idlwave-action-and-binding|idlwave-active-rinfo-space|idlwave-add-file-link-selector|idlwave-after-successful-completion|idlwave-all-assq|idlwave-all-class-inherits|idlwave-all-class-tags|idlwave-all-method-classes|idlwave-all-method-keyword-classes|idlwave-any-syslib|idlwave-attach-class-tag-classes|idlwave-attach-classes|idlwave-attach-keyword-classes|idlwave-attach-method-classes|idlwave-auto-fill-mode|idlwave-auto-fill|idlwave-backward-block|idlwave-backward-up-block|idlwave-beginning-of-block|idlwave-beginning-of-statement|idlwave-beginning-of-subprogram|idlwave-best-rinfo-assoc|idlwave-best-rinfo-assq|idlwave-block-jump-out|idlwave-block-master|idlwave-calc-hanging-indent|idlwave-calculate-cont-indent|idlwave-calculate-indent|idlwave-calculate-paren-indent|idlwave-call-special|idlwave-case|idlwave-check-abbrev|idlwave-choose-completion|idlwave-choose|idlwave-class-alist|idlwave-class-file-or-buffer|idlwave-class-found-in|idlwave-class-info|idlwave-class-inherits|idlwave-class-or-superclass-with-tag|idlwave-class-tag-reset|idlwave-class-tags|idlwave-close-block|idlwave-code-abbrev|idlwave-command-hook|idlwave-comment-hook|idlwave-complete-class-structure-tag-help|idlwave-complete-class-structure-tag|idlwave-complete-class|idlwave-complete-filename|idlwave-complete-in-buffer|idlwave-complete-sysvar-help|idlwave-complete-sysvar-or-tag|idlwave-complete-sysvar-tag-help|idlwave-complete|idlwave-completing-read|idlwave-completion-fontify-classes|idlwave-concatenate-rinfo-lists|idlwave-context-help|idlwave-convert-xml-clean-routine-aliases|idlwave-convert-xml-clean-statement-aliases|idlwave-convert-xml-clean-sysvar-aliases|idlwave-convert-xml-system-routine-info|idlwave-count-eq|idlwave-count-memq|idlwave-count-outlawed-buffers|idlwave-create-customize-menu|idlwave-create-user-catalog-file|idlwave-current-indent|idlwave-current-routine-fullname|idlwave-current-routine|idlwave-current-statement-indent|idlwave-custom-ampersand-surround|idlwave-custom-ltgtr-surround|idlwave-customize|idlwave-debug-map|idlwave-default-choose-completion|idlwave-default-insert-timestamp|idlwave-define-abbrev|idlwave-delete-user-catalog-file|idlwave-determine-class|idlwave-display-calling-sequence|idlwave-display-completion-list-emacs|idlwave-display-completion-list-xemacs|idlwave-display-completion-list|idlwave-display-user-catalog-widget|idlwave-do-action|idlwave-do-context-help|idlwave-do-context-help1|idlwave-do-find-module|idlwave-do-kill-autoloaded-buffers|idlwave-do-mouse-completion-help|idlwave-doc-header|idlwave-doc-modification|idlwave-down-block|idlwave-downcase-safe|idlwave-edit-in-idlde|idlwave-elif|idlwave-end-of-block|idlwave-end-of-statement|idlwave-end-of-statement0|idlwave-end-of-subprogram|idlwave-entry-find-keyword|idlwave-entry-has-help|idlwave-entry-keywords|idlwave-expand-equal|idlwave-expand-keyword|idlwave-expand-lib-file-name|idlwave-expand-path|idlwave-expand-region-abbrevs|idlwave-explicit-class-listed|idlwave-fill-paragraph|idlwave-find-class-definition|idlwave-find-file-noselect|idlwave-find-inherited-class|idlwave-find-key|idlwave-find-module-this-file|idlwave-find-module|idlwave-find-struct-tag|idlwave-find-structure-definition|idlwave-fix-keywords|idlwave-fix-module-if-obj_new|idlwave-font-lock-fontify-region|idlwave-for|idlwave-forward-block|idlwave-function-menu|idlwave-function|idlwave-get-buffer-routine-info|idlwave-get-buffer-visiting|idlwave-get-routine-info-from-buffers|idlwave-goto-comment|idlwave-grep|idlwave-hard-tab|idlwave-has-help|idlwave-help-assistant-available|idlwave-help-assistant-close|idlwave-help-assistant-command|idlwave-help-assistant-help-with-topic|idlwave-help-assistant-open-link|idlwave-help-assistant-raise|idlwave-help-assistant-start|idlwave-help-check-locations|idlwave-help-diagnostics|idlwave-help-display-help-window|idlwave-help-error|idlwave-help-find-first-header|idlwave-help-find-header|idlwave-help-find-in-doc-header|idlwave-help-find-routine-definition|idlwave-help-fontify|idlwave-help-get-help-buffer|idlwave-help-get-special-help|idlwave-help-html-link|idlwave-help-menu|idlwave-help-mode|idlwave-help-quit|idlwave-help-return-to-calling-frame|idlwave-help-select-help-frame|idlwave-help-show-help-frame|idlwave-help-toggle-header-match-and-def|idlwave-help-toggle-header-top-and-def|idlwave-help-with-source|idlwave-highlight-linked-completions|idlwave-html-help-location|idlwave-if|idlwave-in-comment|idlwave-in-quote|idlwave-in-structure|idlwave-indent-and-action|idlwave-indent-left-margin|idlwave-indent-line|idlwave-indent-statement|idlwave-indent-subprogram|idlwave-indent-to|idlwave-info|idlwave-insert-source-location|idlwave-is-comment-line|idlwave-is-comment-or-empty-line|idlwave-is-continuation-line|idlwave-is-pointer-dereference|idlwave-keyboard-quit|idlwave-keyword-abbrev|idlwave-kill-autoloaded-buffers|idlwave-kill-buffer-update|idlwave-last-valid-char|idlwave-launch-idlhelp|idlwave-lib-p|idlwave-list-abbrevs|idlwave-list-all-load-path-shadows|idlwave-list-buffer-load-path-shadows|idlwave-list-load-path-shadows|idlwave-list-shell-load-path-shadows|idlwave-load-all-rinfo|idlwave-load-rinfo-next-step|idlwave-load-system-routine-info|idlwave-local-value|idlwave-locate-lib-file|idlwave-look-at|idlwave-make-force-complete-where-list|idlwave-make-full-name|idlwave-make-modified-completion-map-emacs|idlwave-make-modified-completion-map-xemacs|idlwave-make-one-key-alist|idlwave-make-space|idlwave-make-tags|idlwave-mark-block|idlwave-mark-doclib|idlwave-mark-statement|idlwave-mark-subprogram|idlwave-match-class-arrows|idlwave-members-only|idlwave-min-current-statement-indent|idlwave-mode-debug-menu|idlwave-mode-menu|idlwave-mode|idlwave-mouse-active-rinfo-right|idlwave-mouse-active-rinfo-shift|idlwave-mouse-active-rinfo|idlwave-mouse-choose-completion|idlwave-mouse-completion-help|idlwave-mouse-context-help|idlwave-new-buffer-update|idlwave-new-sintern-type|idlwave-newline|idlwave-next-statement|idlwave-nonmembers-only|idlwave-one-key-select|idlwave-online-help|idlwave-parse-definition|idlwave-path-alist-add-flag|idlwave-path-alist-remove-flag|idlwave-popup-select|idlwave-prepare-class-tag-completion|idlwave-prev-index-position|idlwave-previous-statement|idlwave-print-source|idlwave-procedure|idlwave-process-sysvars|idlwave-quit-help|idlwave-quoted|idlwave-read-paths|idlwave-recursive-directory-list|idlwave-region-active-p|idlwave-repeat|idlwave-replace-buffer-routine-info|idlwave-replace-string|idlwave-rescan-asynchronously|idlwave-rescan-catalog-directories|idlwave-reset-sintern-type|idlwave-reset-sintern|idlwave-resolve|idlwave-restore-wconf-after-completion|idlwave-revoke-license-to-kill|idlwave-rinfo-assoc|idlwave-rinfo-assq-any-class|idlwave-rinfo-assq|idlwave-rinfo-group-keywords|idlwave-rinfo-insert-keyword|idlwave-routine-entry-compare-twins|idlwave-routine-entry-compare|idlwave-routine-info|idlwave-routine-source-file|idlwave-routine-twin-compare|idlwave-routine-twins|idlwave-routines|idlwave-rw-case|idlwave-save-buffer-update|idlwave-save-routine-info|idlwave-scan-class-info|idlwave-scan-library-catalogs|idlwave-scan-user-lib-files|idlwave-scroll-completions|idlwave-selector|idlwave-set-local|idlwave-setup|idlwave-shell-break-here|idlwave-shell-compile-helper-routines|idlwave-shell-filter-sysvars|idlwave-shell-recenter-shell-window|idlwave-shell-run-region|idlwave-shell-save-and-run|idlwave-shell-send-command|idlwave-shell-show-commentary|idlwave-shell-update-routine-info|idlwave-shell|idlwave-shorten-syntax|idlwave-show-begin-check|idlwave-show-begin|idlwave-show-commentary|idlwave-show-matching-quote|idlwave-sintern-class-info|idlwave-sintern-class-tag|idlwave-sintern-class)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:idlwave-sintern-dir|idlwave-sintern-keyword-list|idlwave-sintern-keyword|idlwave-sintern-libname|idlwave-sintern-method|idlwave-sintern-rinfo-list|idlwave-sintern-routine-or-method|idlwave-sintern-routine|idlwave-sintern-set|idlwave-sintern-sysvar-alist|idlwave-sintern-sysvar|idlwave-sintern-sysvartag|idlwave-sintern|idlwave-skip-label-or-case|idlwave-skip-multi-commands|idlwave-skip-object|idlwave-special-lib-test|idlwave-split-line|idlwave-split-link-target|idlwave-split-menu-emacs|idlwave-split-menu-xemacs|idlwave-split-string|idlwave-start-load-rinfo-timer|idlwave-start-of-substatement|idlwave-statement-type|idlwave-struct-borders|idlwave-struct-inherits|idlwave-struct-tags|idlwave-study-twins|idlwave-substitute-link-target|idlwave-surround|idlwave-switch|idlwave-sys-dir|idlwave-syslib-p|idlwave-syslib-scanned-p|idlwave-sysvars-reset|idlwave-template|idlwave-this-word|idlwave-toggle-comment-region|idlwave-true-path-alist|idlwave-uniquify|idlwave-unit-name|idlwave-update-buffer-routine-info|idlwave-update-current-buffer-info|idlwave-update-routine-info|idlwave-user-catalog-command-hook|idlwave-what-function|idlwave-what-module-find-class|idlwave-what-module|idlwave-what-procedure|idlwave-where|idlwave-while|idlwave-widget-scan-user-lib-files|idlwave-with-special-syntax|idlwave-write-paths|idlwave-xml-create-class-method-lists|idlwave-xml-create-rinfo-list|idlwave-xml-create-sysvar-alist|idlwave-xml-system-routine-info-up-to-date|idlwave-xor|idna-to-ascii|ido-active|ido-add-virtual-buffers-to-list|ido-all-completions|ido-buffer-internal|ido-buffer-window-other-frame|ido-bury-buffer-at-head|ido-cache-ftp-valid|ido-cache-unc-valid|ido-choose-completion-string|ido-chop|ido-common-initialization|ido-complete-space|ido-complete|ido-completing-read|ido-completion-help|ido-completions|ido-copy-current-file-name|ido-copy-current-word|ido-delete-backward-updir|ido-delete-backward-word-updir|ido-delete-file-at-head|ido-directory-too-big-p|ido-dired|ido-display-buffer|ido-display-file|ido-edit-input|ido-enter-dired|ido-enter-find-file|ido-enter-insert-buffer|ido-enter-insert-file|ido-enter-switch-buffer|ido-everywhere|ido-exhibit|ido-existing-item-p|ido-exit-minibuffer|ido-expand-directory|ido-fallback-command|ido-file-extension-aux|ido-file-extension-lessp|ido-file-extension-order|ido-file-internal|ido-file-lessp|ido-file-name-all-completions-1|ido-file-name-all-completions|ido-final-slash|ido-find-alternate-file|ido-find-common-substring|ido-find-file-in-dir|ido-find-file-other-frame|ido-find-file-other-window|ido-find-file-read-only-other-frame|ido-find-file-read-only-other-window|ido-find-file-read-only|ido-find-file|ido-flatten-merged-list|ido-forget-work-directory|ido-fractionp|ido-get-buffers-in-frames|ido-get-bufname|ido-get-work-directory|ido-get-work-file|ido-ignore-item-p|ido-init-completion-maps|ido-initiate-auto-merge|ido-insert-buffer|ido-insert-file|ido-is-ftp-directory|ido-is-root-directory|ido-is-slow-ftp-host|ido-is-tramp-root|ido-is-unc-host|ido-is-unc-root|ido-kill-buffer-at-head|ido-kill-buffer|ido-kill-emacs-hook|ido-list-directory|ido-load-history|ido-local-file-exists-p|ido-magic-backward-char|ido-magic-delete-char|ido-magic-forward-char|ido-make-buffer-list-1|ido-make-buffer-list|ido-make-choice-list|ido-make-dir-list-1|ido-make-dir-list|ido-make-directory|ido-make-file-list-1|ido-make-file-list|ido-make-merged-file-list-1|ido-make-merged-file-list|ido-make-prompt|ido-makealist|ido-may-cache-directory|ido-merge-work-directories|ido-minibuffer-setup|ido-mode|ido-name|ido-next-match-dir|ido-next-match|ido-next-work-directory|ido-next-work-file|ido-no-final-slash|ido-nonreadable-directory-p|ido-pop-dir|ido-pp|ido-prev-match-dir|ido-prev-match|ido-prev-work-directory|ido-prev-work-file|ido-push-dir-first|ido-push-dir|ido-read-buffer|ido-read-directory-name|ido-read-file-name|ido-read-internal|ido-record-command|ido-record-work-directory|ido-record-work-file|ido-remove-cached-dir|ido-reread-directory|ido-restrict-to-matches|ido-save-history|ido-select-text|ido-set-common-completion|ido-set-current-directory|ido-set-current-home|ido-set-matches-1|ido-set-matches|ido-setup-completion-map|ido-sort-merged-list|ido-summary-buffers-to-end|ido-switch-buffer-other-frame|ido-switch-buffer-other-window|ido-switch-buffer|ido-take-first-match|ido-tidy|ido-time-stamp|ido-to-end|ido-toggle-case|ido-toggle-ignore|ido-toggle-literal|ido-toggle-prefix|ido-toggle-regexp|ido-toggle-trace|ido-toggle-vc|ido-toggle-virtual-buffers|ido-trace|ido-unc-hosts-net-view|ido-unc-hosts|ido-undo-merge-work-directory|ido-unload-function|ido-up-directory|ido-visit-buffer|ido-wash-history|ido-wide-find-dir-or-delete-dir|ido-wide-find-dir|ido-wide-find-dirs-or-files|ido-wide-find-file-or-pop-dir|ido-wide-find-file|ido-word-matching-substring|ido-write-file|ielm|ietf-drums-get-comment|ietf-drums-init|ietf-drums-make-address|ietf-drums-narrow-to-header|ietf-drums-parse-address|ietf-drums-parse-addresses|ietf-drums-parse-date|ietf-drums-quote-string|ietf-drums-remove-comments|ietf-drums-remove-whitespace|ietf-drums-strip|ietf-drums-token-to-list|ietf-drums-unfold-fws|if-let|ifconfig|iimage-mode-buffer|iimage-mode|iimage-modification-hook|iimage-recenter|image--set-speed|image-after-revert-hook|image-animate-get-speed|image-animate-set-speed|image-animate-timeout|image-animated-p|image-backward-hscroll|image-bob|image-bol|image-bookmark-jump|image-bookmark-make-record|image-decrease-speed|image-dired--with-db-file|image-dired-add-to-file-comment-list|image-dired-add-to-tag-file-list|image-dired-add-to-tag-file-lists|image-dired-associated-dired-buffer-window|image-dired-associated-dired-buffer|image-dired-backward-image|image-dired-comment-thumbnail|image-dired-copy-with-exif-file-name|image-dired-create-display-image-buffer|image-dired-create-gallery-lists|image-dired-create-thumb|image-dired-create-thumbnail-buffer|image-dired-create-thumbs|image-dired-define-display-image-mode-keymap|image-dired-define-thumbnail-mode-keymap|image-dired-delete-char|image-dired-delete-tag|image-dired-dir|image-dired-dired-after-readin-hook|image-dired-dired-comment-files|image-dired-dired-display-external|image-dired-dired-display-image|image-dired-dired-display-properties|image-dired-dired-edit-comment-and-tags|image-dired-dired-file-marked-p|image-dired-dired-next-line|image-dired-dired-previous-line|image-dired-dired-toggle-marked-thumbs|image-dired-dired-with-window-configuration|image-dired-display-current-image-full|image-dired-display-current-image-sized|image-dired-display-image-mode|image-dired-display-image|image-dired-display-next-thumbnail-original|image-dired-display-previous-thumbnail-original|image-dired-display-thumb-properties|image-dired-display-thumb|image-dired-display-thumbnail-original-image|image-dired-display-thumbs-append|image-dired-display-thumbs|image-dired-display-window-height|image-dired-display-window-width|image-dired-display-window|image-dired-flag-thumb-original-file|image-dired-format-properties-string|image-dired-forward-image|image-dired-gallery-generate|image-dired-get-buffer-window|image-dired-get-comment|image-dired-get-exif-data|image-dired-get-exif-file-name|image-dired-get-thumbnail-image|image-dired-hidden-p|image-dired-image-at-point-p|image-dired-insert-image|image-dired-insert-thumbnail|image-dired-jump-original-dired-buffer|image-dired-jump-thumbnail-buffer|image-dired-kill-buffer-and-window|image-dired-line-up-dynamic|image-dired-line-up-interactive|image-dired-line-up|image-dired-list-tags|image-dired-mark-and-display-next|image-dired-mark-tagged-files|image-dired-mark-thumb-original-file|image-dired-modify-mark-on-thumb-original-file|image-dired-mouse-display-image|image-dired-mouse-select-thumbnail|image-dired-mouse-toggle-mark|image-dired-next-line-and-display|image-dired-next-line|image-dired-original-file-name|image-dired-previous-line-and-display|image-dired-previous-line|image-dired-read-comment|image-dired-refresh-thumb|image-dired-remove-tag|image-dired-restore-window-configuration|image-dired-rotate-original-left|image-dired-rotate-original-right|image-dired-rotate-original|image-dired-rotate-thumbnail-left|image-dired-rotate-thumbnail-right|image-dired-rotate-thumbnail|image-dired-sane-db-file|image-dired-save-information-from-widgets|image-dired-set-exif-data|image-dired-setup-dired-keybindings|image-dired-show-all-from-dir|image-dired-slideshow-start|image-dired-slideshow-step|image-dired-slideshow-stop|image-dired-tag-files|image-dired-tag-thumbnail-remove|image-dired-tag-thumbnail|image-dired-thumb-name|image-dired-thumbnail-display-external|image-dired-thumbnail-mode|image-dired-thumbnail-set-image-description|image-dired-thumbnail-window|image-dired-toggle-append-browsing|image-dired-toggle-dired-display-properties|image-dired-toggle-mark-thumb-original-file|image-dired-toggle-movement-tracking|image-dired-track-original-file|image-dired-track-thumbnail|image-dired-unmark-thumb-original-file|image-dired-update-property|image-dired-window-height-pixels|image-dired-window-width-pixels|image-dired-write-comments|image-dired-write-tags|image-dired|image-display-size|image-eob|image-eol|image-extension-data|image-file-call-underlying|image-file-handler|image-file-name-regexp|image-file-yank-handler|image-forward-hscroll|image-get-display-property|image-goto-frame|image-increase-speed|image-jpeg-p|image-metadata|image-minor-mode|image-mode--images-in-directory|image-mode-as-text|image-mode-fit-frame|image-mode-maybe|image-mode-menu|image-mode-reapply-winprops|image-mode-setup-winprops|image-mode-window-get|image-mode-window-put|image-mode-winprops|image-mode|image-next-file|image-next-frame|image-next-line|image-previous-file|image-previous-frame|image-previous-line|image-refresh|image-reset-speed|image-reverse-speed|image-scroll-down|image-scroll-up|image-search-load-path|image-set-window-hscroll|image-set-window-vscroll|image-toggle-animation|image-toggle-display-image|image-toggle-display-text|image-toggle-display|image-transform-check-size|image-transform-fit-to-height|image-transform-fit-to-width|image-transform-fit-width|image-transform-properties|image-transform-reset|image-transform-set-rotation|image-transform-set-scale|image-transform-width|image-type-auto-detected-p|image-type-from-buffer|image-type-from-data|image-type-from-file-header|image-type-from-file-name|image-type|imagemagick-filter-types|imagemagick-register-types|imap-add-callback|imap-anonymous-auth|imap-anonymous-p|imap-arrival-filter|imap-authenticate|imap-body-lines|imap-capability|imap-close|imap-cram-md5-auth|imap-cram-md5-p|imap-current-mailbox-p-1|imap-current-mailbox-p|imap-current-mailbox|imap-current-message|imap-digest-md5-auth|imap-digest-md5-p|imap-disable-multibyte|imap-envelope-from|imap-error-text|imap-fetch-asynch|imap-fetch-safe|imap-fetch|imap-find-next-line|imap-forward|imap-gssapi-auth-p|imap-gssapi-auth|imap-gssapi-open|imap-gssapi-stream-p|imap-id|imap-interactive-login|imap-kerberos4-auth-p|imap-kerberos4-auth|imap-kerberos4-open|imap-kerberos4-stream-p|imap-list-to-message-set|imap-log|imap-login-auth|imap-login-p|imap-logout-wait|imap-logout|imap-mailbox-acl-delete|imap-mailbox-acl-get|imap-mailbox-acl-set|imap-mailbox-close|imap-mailbox-create-1|imap-mailbox-create|imap-mailbox-delete|imap-mailbox-examine-1|imap-mailbox-examine|imap-mailbox-expunge|imap-mailbox-get-1|imap-mailbox-get|imap-mailbox-list|imap-mailbox-lsub|imap-mailbox-map-1|imap-mailbox-map|imap-mailbox-put|imap-mailbox-rename|imap-mailbox-select-1|imap-mailbox-select|imap-mailbox-status-asynch|imap-mailbox-status|imap-mailbox-subscribe|imap-mailbox-unselect|imap-mailbox-unsubscribe|imap-message-append|imap-message-appenduid-1|imap-message-appenduid|imap-message-body|imap-message-copy|imap-message-copyuid-1|imap-message-copyuid|imap-message-envelope-bcc|imap-message-envelope-cc|imap-message-envelope-date|imap-message-envelope-from|imap-message-envelope-in-reply-to|imap-message-envelope-message-id|imap-message-envelope-reply-to|imap-message-envelope-sender|imap-message-envelope-subject|imap-message-envelope-to|imap-message-flag-permanent-p|imap-message-flags-add|imap-message-flags-del|imap-message-flags-set|imap-message-get|imap-message-map|imap-message-put|imap-namespace|imap-network-open|imap-network-p|imap-ok-p|imap-open-1|imap-open|imap-opened|imap-parse-acl|imap-parse-address-list|imap-parse-address|imap-parse-astring|imap-parse-body-ext)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:imap-parse-body-extension|imap-parse-body|imap-parse-data-list|imap-parse-envelope|imap-parse-fetch-body-section|imap-parse-fetch|imap-parse-flag-list|imap-parse-greeting|imap-parse-header-list|imap-parse-literal|imap-parse-mailbox|imap-parse-nil|imap-parse-nstring|imap-parse-number|imap-parse-resp-text-code|imap-parse-resp-text|imap-parse-response|imap-parse-status|imap-parse-string-list|imap-parse-string|imap-ping-server|imap-quote-specials|imap-range-to-message-set|imap-remassoc|imap-sasl-auth-p|imap-sasl-auth|imap-sasl-make-mechanisms|imap-search|imap-send-command-1|imap-send-command-wait|imap-send-command|imap-sentinel|imap-shell-open|imap-shell-p|imap-ssl-open|imap-ssl-p|imap-starttls-open|imap-starttls-p|imap-string-to-integer|imap-tls-open|imap-tls-p|imap-utf7-decode|imap-utf7-encode|imap-wait-for-tag|imenu--cleanup|imenu--completion-buffer|imenu--create-keymap|imenu--generic-function|imenu--in-alist|imenu--make-index-alist|imenu--menubar-select|imenu--mouse-menu|imenu--relative-position|imenu--sort-by-name|imenu--sort-by-position|imenu--split-menu|imenu--split-submenus|imenu--split|imenu--subalist-p|imenu--truncate-items|imenu-add-menubar-index|imenu-choose-buffer-index|imenu-default-create-index-function|imenu-default-goto-function|imenu-example--create-c-index|imenu-example--create-lisp-index|imenu-example--lisp-extract-index-name|imenu-example--name-and-position|imenu-find-default|imenu-progress-message|imenu-update-menubar|imenu|in-is13194-post-read-conversion|in-is13194-pre-write-conversion|in-string-p|inactivate-input-method|incf|increase-left-margin|increase-right-margin|increment-register|indent-accumulate-tab-stops|indent-for-comment|indent-icon-exp|indent-line-to|indent-new-comment-line|indent-next-tab-stop|indent-perl-exp|indent-pp-sexp|indent-rigidly--current-indentation|indent-rigidly--pop-undo|indent-rigidly-left-to-tab-stop|indent-rigidly-left|indent-rigidly-right-to-tab-stop|indent-rigidly-right|indent-sexp|indent-tcl-exp|indent-to-column|indented-text-mode|indian-2-column-to-ucs-region|indian-compose-regexp|indian-compose-region|indian-compose-string|indicate-copied-region|inferior-lisp-install-letter-bindings|inferior-lisp-menu|inferior-lisp-mode|inferior-lisp-proc|inferior-lisp|inferior-octave-check-process|inferior-octave-complete|inferior-octave-completion-at-point|inferior-octave-completion-table|inferior-octave-directory-tracker|inferior-octave-dynamic-list-input-ring|inferior-octave-mode|inferior-octave-output-digest|inferior-octave-process-live-p|inferior-octave-resync-dirs|inferior-octave-send-list-and-digest|inferior-octave-startup|inferior-octave-track-window-width-change|inferior-octave|inferior-python-mode|inferior-scheme-mode|inferior-tcl-mode|inferior-tcl-proc|inferior-tcl|info--manual-names|info--prettify-description|info-apropos|info-complete-file|info-complete-symbol|info-complete|info-display-manual|info-emacs-bug|info-emacs-manual|info-file-exists-p|info-finder|info-initialize|info-insert-file-contents-1|info-insert-file-contents|info-lookup->all-modes|info-lookup->cache|info-lookup->completions|info-lookup->doc-spec|info-lookup->ignore-case|info-lookup->initialized|info-lookup->mode-cache|info-lookup->mode-value|info-lookup->other-modes|info-lookup->parse-rule|info-lookup->refer-modes|info-lookup->regexp|info-lookup->topic-cache|info-lookup->topic-value|info-lookup-add-help\\\\\\\\*|info-lookup-add-help|info-lookup-change-mode|info-lookup-completions-at-point|info-lookup-file|info-lookup-guess-c-symbol|info-lookup-guess-custom-symbol|info-lookup-guess-default\\\\\\\\*|info-lookup-guess-default|info-lookup-interactive-arguments|info-lookup-make-completions|info-lookup-maybe-add-help|info-lookup-quick-all-modes|info-lookup-reset|info-lookup-select-mode|info-lookup-setup-mode|info-lookup-symbol|info-lookup|info-other-window|info-setup|info-standalone|info-xref-all-info-files|info-xref-check-all-custom|info-xref-check-all|info-xref-check-buffer|info-xref-check-list|info-xref-check-node|info-xref-check|info-xref-docstrings|info-xref-goto-node-p|info-xref-lock-file-p|info-xref-output-error|info-xref-output|info-xref-subfile-p|info-xref-with-file|info-xref-with-output|info|inhibit-local-variables-p|init-image-library|initialize-completions|initialize-instance|initialize-new-tags-table|inline|insert-abbrevs|insert-byte|insert-directory-adj-pos|insert-directory-safely|insert-file-1|insert-file-literally|insert-file|insert-for-yank-1|insert-image-file|insert-kbd-macro|insert-pair|insert-parentheses|insert-rectangle|insert-string|insert-tab|int-to-string|interactive-completion-string-reader|interactive-p|intern-safe|internal--after-save-selected-window|internal--after-with-selected-window|internal--before-save-selected-window|internal--before-with-selected-window|internal--build-binding-value-form|internal--build-binding|internal--build-bindings|internal--check-binding|internal--listify|internal--thread-argument|internal--track-mouse|internal-ange-ftp-mode|internal-char-font|internal-complete-buffer-except|internal-complete-buffer|internal-copy-lisp-face|internal-default-process-filter|internal-default-process-sentinel|internal-describe-syntax-value|internal-event-symbol-parse-modifiers|internal-face-x-get-resource|internal-get-lisp-face-attribute|internal-lisp-face-attribute-values|internal-lisp-face-empty-p|internal-lisp-face-equal-p|internal-lisp-face-p|internal-macroexpand-for-load|internal-make-lisp-face|internal-make-var-non-special|internal-merge-in-global-face|internal-pop-keymap|internal-push-keymap|internal-set-alternative-font-family-alist|internal-set-alternative-font-registry-alist|internal-set-font-selection-order|internal-set-lisp-face-attribute-from-resource|internal-set-lisp-face-attribute|internal-show-cursor-p|internal-show-cursor|internal-temp-output-buffer-show|internal-timer-start-idle|intersection|inverse-add-abbrev|inverse-add-global-abbrev|inverse-add-mode-abbrev|inversion-<|inversion-=|inversion-add-to-load-path|inversion-check-version|inversion-decode-version|inversion-download-package-ask|inversion-find-version|inversion-locate-package-files-and-split|inversion-locate-package-files|inversion-package-incompatibility-version|inversion-package-version|inversion-recode|inversion-release-to-number|inversion-require-emacs|inversion-require|inversion-reverse-test|inversion-test|ipconfig|irc|isInNet|isPlainHostName|isResolvable|isearch--get-state|isearch--set-state|isearch--state-barrier--cmacro|isearch--state-barrier|isearch--state-case-fold-search--cmacro|isearch--state-case-fold-search|isearch--state-error--cmacro|isearch--state-error|isearch--state-forward--cmacro|isearch--state-forward|isearch--state-message--cmacro|isearch--state-message|isearch--state-other-end--cmacro|isearch--state-other-end|isearch--state-p--cmacro|isearch--state-p|isearch--state-point--cmacro|isearch--state-point|isearch--state-pop-fun--cmacro|isearch--state-pop-fun|isearch--state-string--cmacro|isearch--state-string|isearch--state-success--cmacro|isearch--state-success|isearch--state-word--cmacro|isearch--state-word|isearch--state-wrapped--cmacro|isearch--state-wrapped|isearch-abort|isearch-back-into-window|isearch-backslash|isearch-backward-regexp|isearch-backward|isearch-cancel|isearch-char-by-name|isearch-clean-overlays|isearch-close-unnecessary-overlays|isearch-complete-edit|isearch-complete|isearch-complete1|isearch-dehighlight|isearch-del-char|isearch-delete-char|isearch-describe-bindings|isearch-describe-key|isearch-describe-mode|isearch-done|isearch-edit-string|isearch-exit|isearch-fail-pos|isearch-fallback|isearch-filter-visible|isearch-forward-exit-minibuffer|isearch-forward-regexp|isearch-forward-symbol-at-point|isearch-forward-symbol|isearch-forward-word|isearch-forward|isearch-help-for-help-internal-doc|isearch-help-for-help-internal|isearch-help-for-help|isearch-highlight-regexp|isearch-highlight|isearch-intersects-p|isearch-lazy-highlight-cleanup|isearch-lazy-highlight-new-loop|isearch-lazy-highlight-search|isearch-lazy-highlight-update|isearch-message-prefix|isearch-message-suffix|isearch-message|isearch-mode-help|isearch-mode|isearch-mouse-2|isearch-no-upper-case-p|isearch-nonincremental-exit-minibuffer|isearch-occur|isearch-open-necessary-overlays|isearch-open-overlay-temporary|isearch-pop-state|isearch-post-command-hook|isearch-pre-command-hook|isearch-printing-char|isearch-process-search-char|isearch-process-search-multibyte-characters|isearch-process-search-string|isearch-push-state|isearch-query-replace-regexp|isearch-query-replace|isearch-quote-char|isearch-range-invisible|isearch-repeat-backward|isearch-repeat-forward|isearch-repeat|isearch-resume|isearch-reverse-exit-minibuffer|isearch-ring-adjust|isearch-ring-adjust1|isearch-ring-advance|isearch-ring-retreat|isearch-search-and-update|isearch-search-fun-default|isearch-search-fun|isearch-search-string|isearch-search|isearch-string-out-of-window|isearch-symbol-regexp|isearch-text-char-description|isearch-toggle-case-fold|isearch-toggle-input-method|isearch-toggle-invisible|isearch-toggle-lax-whitespace|isearch-toggle-regexp|isearch-toggle-specified-input-method|isearch-toggle-symbol|isearch-toggle-word|isearch-unread|isearch-update-ring|isearch-update|isearch-yank-char-in-minibuffer|isearch-yank-char|isearch-yank-internal|isearch-yank-kill|isearch-yank-line|isearch-yank-pop|isearch-yank-string|isearch-yank-word-or-char|isearch-yank-word|isearch-yank-x-selection|isearchb-activate|isearchb-follow-char|isearchb-iswitchb|isearchb-set-keybindings|isearchb-stop|isearchb|iso-charset|iso-cvt-define-menu|iso-cvt-read-only|iso-cvt-write-only|iso-german|iso-gtex2iso|iso-iso2duden|iso-iso2gtex|iso-iso2sgml|iso-iso2tex|iso-sgml2iso|iso-spanish|iso-tex2iso|iso-transl-ctl-x-8-map|ispell-accept-buffer-local-defs|ispell-accept-output|ispell-add-per-file-word-list|ispell-aspell-add-aliases|ispell-aspell-find-dictionary|ispell-begin-skip-region-regexp|ispell-begin-skip-region|ispell-begin-tex-skip-regexp|ispell-buffer-local-dict|ispell-buffer-local-parsing|ispell-buffer-local-words|ispell-buffer-with-debug|ispell-buffer|ispell-call-process-region|ispell-call-process|ispell-change-dictionary|ispell-check-minver|ispell-check-version|ispell-command-loop|ispell-comments-and-strings|ispell-complete-word-interior-frag|ispell-complete-word|ispell-continue|ispell-create-debug-buffer|ispell-decode-string|ispell-display-buffer|ispell-filter|ispell-find-aspell-dictionaries|ispell-find-hunspell-dictionaries|ispell-get-aspell-config-value|ispell-get-casechars|ispell-get-coding-system|ispell-get-decoded-string|ispell-get-extended-character-mode|ispell-get-ispell-args|ispell-get-line|ispell-get-many-otherchars-p|ispell-get-not-casechars|ispell-get-otherchars|ispell-get-word|ispell-help|ispell-highlight-spelling-error-generic|ispell-highlight-spelling-error-overlay|ispell-highlight-spelling-error-xemacs|ispell-highlight-spelling-error|ispell-horiz-scroll|ispell-hunspell-fill-dictionary-entry|ispell-ignore-fcc|ispell-init-process|ispell-int-char|ispell-internal-change-dictionary|ispell-kill-ispell|ispell-looking-at|ispell-looking-back|ispell-lookup-words|ispell-menu-map|ispell-message|ispell-mime-multipartp|ispell-mime-skip-part|ispell-minor-check|ispell-minor-mode|ispell-non-empty-string|ispell-parse-hunspell-affix-file|ispell-parse-output|ispell-pdict-save|ispell-print-if-debug|ispell-process-line|ispell-process-status|ispell-region|ispell-send-replacement|ispell-send-string|ispell-set-spellchecker-params|ispell-show-choices|ispell-skip-region-list|ispell-skip-region|ispell-start-process|ispell-tex-arg-end|ispell-valid-dictionary-list|ispell-with-no-warnings|ispell-word|ispell|isqrt|iswitchb-buffer-other-frame|iswitchb-buffer-other-window|iswitchb-buffer|iswitchb-case|iswitchb-chop|iswitchb-complete|iswitchb-completion-help|iswitchb-completions|iswitchb-display-buffer|iswitchb-entryfn-p|iswitchb-exhibit|iswitchb-existing-buffer-p|iswitchb-exit-minibuffer|iswitchb-find-common-substring|iswitchb-find-file|iswitchb-get-buffers-in-frames|iswitchb-get-bufname|iswitchb-get-matched-buffers|iswitchb-ignore-buffername-p|iswitchb-init-XEmacs-trick|iswitchb-kill-buffer|iswitchb-make-buflist|iswitchb-makealist|iswitchb-minibuffer-setup|iswitchb-mode|iswitchb-next-match|iswitchb-output-completion|iswitchb-possible-new-buffer)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:iswitchb-post-command|iswitchb-pre-command|iswitchb-prev-match|iswitchb-read-buffer|iswitchb-rotate-list|iswitchb-select-buffer-text|iswitchb-set-common-completion|iswitchb-set-matches|iswitchb-summaries-to-end|iswitchb-tidy|iswitchb-to-end|iswitchb-toggle-case|iswitchb-toggle-ignore|iswitchb-toggle-regexp|iswitchb-visit-buffer|iswitchb-window-buffer-p|iswitchb-word-matching-substring|iswitchb-xemacs-backspacekey|iswitchb|iwconfig|japanese-hankaku-region|japanese-hankaku|japanese-hiragana-region|japanese-hiragana|japanese-katakana-region|japanese-katakana|japanese-zenkaku-region|japanese-zenkaku|java-font-lock-keywords-2|java-font-lock-keywords-3|java-font-lock-keywords|java-mode|javascript-mode|jdb|jit-lock--debug-fontify|jit-lock-after-change|jit-lock-context-fontify|jit-lock-debug-mode|jit-lock-deferred-fontify|jit-lock-fontify-now|jit-lock-force-redisplay|jit-lock-function|jit-lock-mode|jit-lock-refontify|jit-lock-stealth-chunk-start|jit-lock-stealth-fontify|jka-compr-build-file-regexp|jka-compr-byte-compiler-base-file-name|jka-compr-call-process|jka-compr-error|jka-compr-file-local-copy|jka-compr-get-compression-info|jka-compr-handler|jka-compr-info-can-append|jka-compr-info-compress-args|jka-compr-info-compress-message|jka-compr-info-compress-program|jka-compr-info-file-magic-bytes|jka-compr-info-regexp|jka-compr-info-strip-extension|jka-compr-info-uncompress-args|jka-compr-info-uncompress-message|jka-compr-info-uncompress-program|jka-compr-insert-file-contents|jka-compr-install|jka-compr-installed-p|jka-compr-load|jka-compr-make-temp-name|jka-compr-partial-uncompress|jka-compr-run-real-handler|jka-compr-set|jka-compr-uninstall|jka-compr-update|jka-compr-write-region|join-line|js--array-comp-indentation|js--backward-pstate|js--backward-syntactic-ws|js--backward-text-property|js--beginning-of-defun-flat|js--beginning-of-defun-nested|js--beginning-of-defun-raw|js--beginning-of-macro|js--class-decl-matcher|js--clear-stale-cache|js--continued-expression-p|js--ctrl-statement-indentation|js--debug|js--end-of-defun-flat|js--end-of-defun-nested|js--end-of-do-while-loop-p|js--ensure-cache--pop-if-ended|js--ensure-cache--update-parse|js--ensure-cache|js--flatten-list|js--flush-caches|js--forward-destructuring-spec|js--forward-expression|js--forward-function-decl|js--forward-pstate|js--forward-syntactic-ws|js--forward-text-property|js--function-prologue-beginning|js--get-all-known-symbols|js--get-c-offset|js--get-js-context|js--get-tabs|js--guess-eval-defun-info|js--guess-function-name|js--guess-symbol-at-point|js--imenu-create-index|js--imenu-to-flat|js--indent-in-array-comp|js--inside-dojo-class-list-p|js--inside-param-list-p|js--inside-pitem-p|js--js-add-resource-alias|js--js-content-window|js--js-create-instance|js--js-decode-retval|js--js-encode-value|js--js-enter-repl|js--js-eval|js--js-funcall|js--js-get-service|js--js-get|js--js-handle-expired-p|js--js-handle-id--cmacro|js--js-handle-id|js--js-handle-p--cmacro|js--js-handle-p|js--js-handle-process--cmacro|js--js-handle-process|js--js-leave-repl|js--js-list|js--js-new|js--js-not|js--js-put|js--js-qi|js--js-true|js--js-wait-for-eval-prompt|js--looking-at-operator-p|js--make-framework-matcher|js--make-merged-item|js--make-nsilocalfile|js--maybe-join|js--maybe-make-marker|js--multi-line-declaration-indentation|js--optimize-arglist|js--parse-state-at-point|js--pitem-add-child|js--pitem-b-end--cmacro|js--pitem-b-end|js--pitem-children--cmacro|js--pitem-children|js--pitem-format|js--pitem-goto-h-end|js--pitem-h-begin--cmacro|js--pitem-h-begin|js--pitem-name--cmacro|js--pitem-name|js--pitem-paren-depth--cmacro|js--pitem-paren-depth|js--pitem-strname|js--pitem-type--cmacro|js--pitem-type|js--pitems-to-imenu|js--proper-indentation|js--pstate-is-toplevel-defun|js--re-search-backward-inner|js--re-search-backward|js--re-search-forward-inner|js--re-search-forward|js--read-symbol|js--read-tab|js--regexp-opt-symbol|js--same-line|js--show-cache-at-point|js--splice-into-items|js--split-name|js--syntactic-context-from-pstate|js--syntax-begin-function|js--up-nearby-list|js--update-quick-match-re|js--variable-decl-matcher|js--wait-for-matching-output|js--which-func-joiner|js-beginning-of-defun|js-c-fill-paragraph|js-end-of-defun|js-eval-defun|js-eval|js-find-symbol|js-gc|js-indent-line|js-mode|js-set-js-context|js-syntactic-context|js-syntax-propertize-regexp|js-syntax-propertize|json--with-indentation|json-add-to-object|json-advance|json-alist-p|json-decode-char0|json-encode-alist|json-encode-array|json-encode-char|json-encode-char0|json-encode-hash-table|json-encode-key|json-encode-keyword|json-encode-list|json-encode-number|json-encode-plist|json-encode-string|json-encode|json-join|json-new-object|json-peek|json-plist-p|json-pop|json-pretty-print-buffer|json-pretty-print|json-read-array|json-read-escaped-char|json-read-file|json-read-from-string|json-read-keyword|json-read-number|json-read-object|json-read-string|json-read|json-skip-whitespace|jump-to-register|kbd-macro-query|keep-lines-read-args|keep-lines|kermit-clean-filter|kermit-clean-off|kermit-clean-on|kermit-default-cr|kermit-default-nl|kermit-esc|kermit-send-char|kermit-send-input-cr|keyboard-escape-quit|keymap--menu-item-binding|keymap--menu-item-with-binding|keymap--merge-bindings|keymap-canonicalize|keypad-setup|kill-all-abbrevs|kill-backward-chars|kill-backward-up-list|kill-buffer-and-window|kill-buffer-ask|kill-buffer-if-not-modified|kill-comment|kill-compilation|kill-completion|kill-emacs-save-completions|kill-find|kill-forward-chars|kill-grep|kill-line|kill-matching-buffers|kill-paragraph|kill-rectangle|kill-ring-save|kill-sentence|kill-sexp|kill-some-buffers|kill-this-buffer-enabled-p|kill-this-buffer|kill-visual-line|kill-whole-line|kill-word|kinsoku-longer|kinsoku-shorter|kinsoku|kkc-region|kmacro-add-counter|kmacro-bind-to-key|kmacro-call-macro|kmacro-call-ring-2nd-repeat|kmacro-call-ring-2nd|kmacro-cycle-ring-next|kmacro-cycle-ring-previous|kmacro-delete-ring-head|kmacro-display-counter|kmacro-display|kmacro-edit-lossage|kmacro-edit-macro-repeat|kmacro-edit-macro|kmacro-end-and-call-macro|kmacro-end-call-mouse|kmacro-end-macro|kmacro-end-or-call-macro-repeat|kmacro-end-or-call-macro|kmacro-exec-ring-item|kmacro-execute-from-register|kmacro-extract-lambda|kmacro-get-repeat-prefix|kmacro-insert-counter|kmacro-keyboard-quit|kmacro-lambda-form|kmacro-loop-setup-function|kmacro-name-last-macro|kmacro-pop-ring|kmacro-pop-ring1|kmacro-push-ring|kmacro-repeat-on-last-key|kmacro-ring-empty-p|kmacro-ring-head|kmacro-set-counter|kmacro-set-format|kmacro-split-ring-element|kmacro-start-macro-or-insert-counter|kmacro-start-macro|kmacro-step-edit-insert|kmacro-step-edit-macro|kmacro-step-edit-minibuf-setup|kmacro-step-edit-post-command|kmacro-step-edit-pre-command|kmacro-step-edit-prompt|kmacro-step-edit-query|kmacro-swap-ring|kmacro-to-register|kmacro-view-macro-repeat|kmacro-view-macro|kmacro-view-ring-2nd|lambda|landmark--distance|landmark--intangible|landmark-amble-robot|landmark-beginning-of-line|landmark-blackbox|landmark-calc-confidences|landmark-calc-current-smells|landmark-calc-distance-of-robot-from|landmark-calc-payoff|landmark-calc-smell-internal|landmark-check-filled-qtuple|landmark-click|landmark-confidence-for|landmark-crash-game|landmark-cross-qtuple|landmark-display-statistics|landmark-emacs-plays|landmark-end-of-line|landmark-f|landmark-find-filled-qtuple|landmark-fix-weights-for|landmark-flip-a-coin|landmark-goto-square|landmark-goto-xy|landmark-human-plays|landmark-human-resigns|landmark-human-takes-back|landmark-index-to-x|landmark-index-to-y|landmark-init-board|landmark-init-display|landmark-init-score-table|landmark-init-square-score|landmark-init|landmark-max-height|landmark-max-width|landmark-mode|landmark-mouse-play|landmark-move-down|landmark-move-ne|landmark-move-nw|landmark-move-se|landmark-move-sw|landmark-move-up|landmark-move|landmark-nb-qtuples|landmark-noise|landmark-nslify-wts-int|landmark-nslify-wts|landmark-offer-a-draw|landmark-play-move|landmark-plot-internal|landmark-plot-landmarks|landmark-plot-square|landmark-point-square|landmark-point-y|landmark-print-distance-int|landmark-print-distance|landmark-print-moves|landmark-print-smell-int|landmark-print-smell|landmark-print-w0-int|landmark-print-w0|landmark-print-wts-blackbox|landmark-print-wts-int|landmark-print-wts|landmark-print-y-s-noise-int|landmark-print-y-s-noise|landmark-prompt-for-move|landmark-prompt-for-other-game|landmark-random-move|landmark-randomize-weights-for|landmark-repeat|landmark-set-landmark-signal-strengths|landmark-start-game|landmark-start-robot|landmark-store-old-y_t|landmark-strongest-square|landmark-switch-to-window|landmark-take-back|landmark-terminate-game|landmark-test-run|landmark-update-naught-weights|landmark-update-normal-weights|landmark-update-score-in-direction|landmark-update-score-table|landmark-weights-debug|landmark-xy-to-index|landmark-y|landmark|lao-compose-region|lao-compose-string|lao-composition-function|lao-transcribe-roman-to-lao-string|lao-transcribe-single-roman-syllable-to-lao|last-nonminibuffer-frame|last-sexp-setup-props|latex-backward-sexp-1|latex-close-block|latex-complete-bibtex-keys|latex-complete-data|latex-complete-envnames|latex-complete-refkeys|latex-down-list|latex-electric-env-pair-mode|latex-env-before-change|latex-fill-nobreak-predicate|latex-find-indent|latex-forward-sexp-1|latex-forward-sexp|latex-imenu-create-index|latex-indent|latex-insert-block|latex-insert-item|latex-mode|latex-outline-level|latex-skip-close-parens|latex-split-block|latex-string-prefix-p|latex-syntax-after|latexenc-coding-system-to-inputenc|latexenc-find-file-coding-system|latexenc-inputenc-to-coding-system|latin1-display|lazy-highlight-cleanup|lcm|ld-script-mode|ldap-decode-address|ldap-decode-attribute|ldap-decode-boolean|ldap-decode-string|ldap-encode-address|ldap-encode-boolean|ldap-encode-country-string|ldap-encode-string|ldap-get-host-parameter|ldap-search-internal|ldap-search|ldiff|led-flash|led-off|led-on|led-update|left-char|left-word|let-alist--access-sexp|let-alist--deep-dot-search|let-alist--list-to-sexp|let-alist--remove-dot|let-alist|letf\\\\\\\\*|letf|letrec|lglyph-adjustment|lglyph-ascent|lglyph-char|lglyph-code|lglyph-copy|lglyph-descent|lglyph-from|lglyph-lbearing|lglyph-rbearing|lglyph-set-adjustment|lglyph-set-char|lglyph-set-code|lglyph-set-from-to|lglyph-set-width|lglyph-to|lglyph-width|lgrep|lgstring-char-len|lgstring-char|lgstring-font|lgstring-glyph-len|lgstring-glyph|lgstring-header|lgstring-insert-glyph|lgstring-set-glyph|lgstring-set-header|lgstring-set-id|lgstring-shaped-p|life-birth-char|life-birth-string|life-compute-neighbor-deltas|life-death-char|life-death-string|life-display-generation|life-expand-plane-if-needed|life-extinct-quit|life-grim-reaper|life-increment-generation|life-increment|life-insert-random-pattern|life-life-char|life-life-string|life-mode|life-not-void-regexp|life-setup|life-void-char|life-void-string|life|limit-index|line-move-1|line-move-finish|line-move-partial|line-move-to-column|line-move-visual|line-move|line-number-mode|line-pixel-height|line-substring-with-bidi-context|linum--face-width|linum-after-change|linum-after-scroll|linum-delete-overlays|linum-mode-set-explicitly|linum-mode|linum-on|linum-schedule|linum-unload-function|linum-update-current|linum-update-window|linum-update|lisp--match-hidden-arg|lisp-comment-indent|lisp-compile-defun-and-go|lisp-compile-defun|lisp-compile-file|lisp-compile-region-and-go|lisp-compile-region|lisp-compile-string|lisp-complete-symbol|lisp-completion-at-point|lisp-current-defun-name|lisp-describe-sym|lisp-do-defun|lisp-eval-defun-and-go|lisp-eval-defun|lisp-eval-form-and-next|lisp-eval-last-sexp|lisp-eval-paragraph|lisp-eval-region-and-go|lisp-eval-region|lisp-eval-string|lisp-fill-paragraph|lisp-find-tag-default|lisp-fn-called-at-pt|lisp-font-lock-syntactic-face-function|lisp-get-old-input|lisp-indent-defform|lisp-indent-function|lisp-indent-line|lisp-indent-specform|lisp-input-filter|lisp-interaction-mode|lisp-load-file|lisp-mode-auto-fill|lisp-mode-variables|lisp-mode|lisp-outline-level|lisp-show-arglist|lisp-show-function-documentation|lisp-show-variable-documentation|lisp-string-after-doc-keyword-p|lisp-string-in-doc-position-p)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:lisp-symprompt|lisp-var-at-pt|list\\\\\\\\*|list-abbrevs|list-all-completions-1|list-all-completions-by-hash-bucket-1|list-all-completions-by-hash-bucket|list-all-completions|list-at-point|list-bookmarks|list-buffers--refresh|list-buffers-noselect|list-buffers|list-character-sets|list-coding-categories|list-coding-systems|list-colors-display|list-colors-duplicates|list-colors-print|list-colors-redisplay|list-colors-sort-key|list-command-history|list-directory|list-dynamic-libraries|list-faces-display|list-fontsets|list-holidays|list-input-methods|list-length|list-matching-lines|list-packages|list-processes--refresh|list-registers|list-tags|lm-adapted-by|lm-authors|lm-code-mark|lm-code-start|lm-commentary-end|lm-commentary-mark|lm-commentary-start|lm-commentary|lm-copyright-mark|lm-crack-address|lm-crack-copyright|lm-creation-date|lm-get-header-re|lm-get-package-name|lm-header-multiline|lm-header|lm-history-mark|lm-history-start|lm-homepage|lm-insert-at-column|lm-keywords-finder-p|lm-keywords-list|lm-keywords|lm-last-modified-date|lm-maintainer|lm-report-bug|lm-section-end|lm-section-mark|lm-section-start|lm-summary|lm-synopsis|lm-verify|lm-version|lm-with-file|load-completions-from-file|load-history-filename-element|load-history-regexp|load-path-shadows-find|load-path-shadows-mode|load-path-shadows-same-file-or-nonexistent|load-save-place-alist-from-file|load-time-value|load-with-code-conversion|local-clear-scheme-interaction-buffer|local-set-scheme-interaction-buffer|locale-charset-match-p|locale-charset-to-coding-system|locale-name-match|locale-translate|locally|locate-completion-db-error|locate-completion-entry-retry|locate-completion-entry|locate-current-line-number|locate-default-make-command-line|locate-do-redisplay|locate-do-setup|locate-dominating-file|locate-file-completion-table|locate-file-completion|locate-file-internal|locate-filter-output|locate-find-directory-other-window|locate-find-directory|locate-get-dirname|locate-get-file-positions|locate-get-filename|locate-in-alternate-database|locate-insert-header|locate-main-listing-line-p|locate-mode|locate-mouse-view-file|locate-prompt-for-search-string|locate-set-properties|locate-tags|locate-update|locate-with-filter|locate-word-at-point|locate|log-edit--match-first-line|log-edit-add-field|log-edit-add-to-changelog|log-edit-beginning-of-line|log-edit-changelog-entries|log-edit-changelog-entry|log-edit-changelog-insert-entries|log-edit-changelog-ours-p|log-edit-changelog-paragraph|log-edit-changelog-subparagraph|log-edit-comment-search-backward|log-edit-comment-search-forward|log-edit-comment-to-change-log|log-edit-done|log-edit-empty-buffer-p|log-edit-extract-headers|log-edit-files|log-edit-font-lock-keywords|log-edit-goto-eoh|log-edit-hide-buf|log-edit-insert-changelog-entries|log-edit-insert-changelog|log-edit-insert-cvs-rcstemplate|log-edit-insert-cvs-template|log-edit-insert-filenames-without-changelog|log-edit-insert-filenames|log-edit-insert-message-template|log-edit-kill-buffer|log-edit-match-to-eoh|log-edit-menu|log-edit-mode-help|log-edit-mode|log-edit-narrow-changelog|log-edit-new-comment-index|log-edit-next-comment|log-edit-previous-comment|log-edit-remember-comment|log-edit-set-common-indentation|log-edit-set-header|log-edit-show-diff|log-edit-show-files|log-edit-toggle-header|log-edit|log-view-annotate-version|log-view-beginning-of-defun|log-view-current-entry|log-view-current-file|log-view-current-tag|log-view-diff-changeset|log-view-diff-common|log-view-diff|log-view-end-of-defun-1|log-view-end-of-defun|log-view-extract-comment|log-view-file-next|log-view-file-prev|log-view-find-revision|log-view-get-marked|log-view-goto-rev|log-view-inside-comment-p|log-view-minor-wrap|log-view-mode-menu|log-view-mode|log-view-modify-change-comment|log-view-msg-next|log-view-msg-prev|log-view-toggle-entry-display|log-view-toggle-mark-entry|log10|lookfor-dired|lookup-image-map|lookup-key-ignore-too-long|lookup-minor-mode-from-indicator|lookup-nested-alist|lookup-words|loop|lpr-buffer|lpr-customize|lpr-eval-switch|lpr-flatten-list-1|lpr-flatten-list|lpr-print-region|lpr-region|lpr-setup|lunar-phases|m2-begin-comment|m2-begin|m2-case|m2-compile|m2-definition|m2-else|m2-end-comment|m2-execute-monitor-command|m2-export|m2-for|m2-header|m2-if|m2-import|m2-link|m2-loop|m2-mode|m2-module|m2-or|m2-procedure|m2-record|m2-smie-backward-token|m2-smie-forward-token|m2-smie-refine-colon|m2-smie-refine-of|m2-smie-refine-semi|m2-smie-rules|m2-stdio|m2-toggle|m2-type|m2-until|m2-var|m2-visit|m2-while|m2-with|m4--quoted-p|m4-current-defun-name|m4-m4-buffer|m4-m4-region|m4-mode|macro-declaration-function|macroexp--accumulate|macroexp--all-clauses|macroexp--all-forms|macroexp--backtrace|macroexp--compiler-macro|macroexp--compiling-p|macroexp--cons|macroexp--const-symbol-p|macroexp--expand-all|macroexp--funcall-if-compiled|macroexp--maxsize|macroexp--obsolete-warning|macroexp--trim-backtrace-frame|macroexp--warn-and-return|macroexp-const-p|macroexp-copyable-p|macroexp-if|macroexp-let\\\\\\\\*|macroexp-let2\\\\\\\\*|macroexp-let2|macroexp-progn|macroexp-quote|macroexp-small-p|macroexp-unprogn|macroexpand-1|macrolet|mail-abbrev-complete-alias|mail-abbrev-end-of-buffer|mail-abbrev-expand-hook|mail-abbrev-expand-wrapper|mail-abbrev-in-expansion-header-p|mail-abbrev-insert-alias|mail-abbrev-make-syntax-table|mail-abbrev-next-line|mail-abbrevs-disable|mail-abbrevs-enable|mail-abbrevs-mode|mail-abbrevs-setup|mail-abbrevs-sync-aliases|mail-add-attachment|mail-add-payment-async|mail-add-payment|mail-attach-file|mail-bcc|mail-bury|mail-cc|mail-check-payment|mail-comma-list-regexp|mail-complete|mail-completion-at-point-function|mail-completion-expand|mail-content-type-get|mail-decode-encoded-address-region|mail-decode-encoded-address-string|mail-decode-encoded-word-region|mail-decode-encoded-word-string|mail-directory-process|mail-directory-stream|mail-directory|mail-do-fcc|mail-dont-reply-to|mail-dont-send|mail-encode-encoded-word-buffer|mail-encode-encoded-word-region|mail-encode-encoded-word-string|mail-encode-header|mail-envelope-from|mail-extract-address-components|mail-fcc|mail-fetch-field|mail-file-babyl-p|mail-fill-yanked-message|mail-get-names|mail-header-chars|mail-header-date|mail-header-encode-parameter|mail-header-end|mail-header-extra|mail-header-extract-no-properties|mail-header-extract|mail-header-field-value|mail-header-fold-field|mail-header-format|mail-header-from|mail-header-get-comment|mail-header-id|mail-header-lines|mail-header-make-address|mail-header-merge|mail-header-message-id|mail-header-narrow-to-field|mail-header-number|mail-header-parse-address|mail-header-parse-addresses|mail-header-parse-content-disposition|mail-header-parse-content-type|mail-header-parse-date|mail-header-parse|mail-header-references|mail-header-remove-comments|mail-header-remove-whitespace|mail-header-set-chars|mail-header-set-date|mail-header-set-extra|mail-header-set-from|mail-header-set-id|mail-header-set-lines|mail-header-set-message-id|mail-header-set-number|mail-header-set-references|mail-header-set-subject|mail-header-set-xref|mail-header-set|mail-header-strip|mail-header-subject|mail-header-unfold-field|mail-header-xref|mail-header|mail-hist-define-keys|mail-hist-enable|mail-hist-put-headers-into-history|mail-indent-citation|mail-insert-file|mail-insert-from-field|mail-mail-followup-to|mail-mail-reply-to|mail-mbox-from|mail-mode-auto-fill|mail-mode-fill-paragraph|mail-mode-flyspell-verify|mail-mode|mail-narrow-to-head|mail-other-frame|mail-other-window|mail-parse-comma-list|mail-position-on-field|mail-quote-printable-region|mail-quote-printable|mail-quote-string|mail-recover-1|mail-recover|mail-reply-to|mail-resolve-all-aliases-1|mail-resolve-all-aliases|mail-rfc822-date|mail-rfc822-time-zone|mail-send-and-exit|mail-send|mail-sendmail-delimit-header|mail-sendmail-undelimit-header|mail-sent-via|mail-sentto-newsgroups|mail-setup|mail-signature|mail-split-line|mail-string-delete|mail-strip-quoted-names|mail-subject|mail-text-start|mail-text|mail-to|mail-unquote-printable-hexdigit|mail-unquote-printable-region|mail-unquote-printable|mail-yank-clear-headers|mail-yank-original|mail-yank-region|mail|mailcap-add-mailcap-entry|mailcap-add|mailcap-command-p|mailcap-delete-duplicates|mailcap-extension-to-mime|mailcap-file-default-commands|mailcap-mailcap-entry-passes-test|mailcap-maybe-eval|mailcap-mime-info|mailcap-mime-types|mailcap-parse-mailcap-extras|mailcap-parse-mailcap|mailcap-parse-mailcaps|mailcap-parse-mimetype-file|mailcap-parse-mimetypes|mailcap-possible-viewers|mailcap-replace-in-string|mailcap-replace-regexp|mailcap-save-binary-file|mailcap-unescape-mime-test|mailcap-view-mime|mailcap-viewer-lessp|mailcap-viewer-passes-test|mailclient-encode-string-as-url|mailclient-gather-addresses|mailclient-send-it|mailclient-url-delim|mairix-build-search-list|mairix-call-mairix|mairix-edit-saved-searches-customize|mairix-edit-saved-searches|mairix-gnus-ephemeral-nndoc|mairix-gnus-fetch-field|mairix-insert-search-line|mairix-next-search|mairix-previous-search|mairix-replace-invalid-chars|mairix-rmail-display|mairix-rmail-fetch-field|mairix-save-search|mairix-search-from-this-article|mairix-search-thread-this-article|mairix-search|mairix-searches-mode|mairix-select-delete|mairix-select-edit|mairix-select-quit|mairix-select-save|mairix-select-search|mairix-sentinel-mairix-update-finished|mairix-show-folder|mairix-update-database|mairix-use-saved-search|mairix-vm-display|mairix-vm-fetch-field|mairix-widget-add|mairix-widget-build-editable-fields|mairix-widget-create-query|mairix-widget-get-values|mairix-widget-make-query-from-widgets|mairix-widget-save-search|mairix-widget-search-based-on-article|mairix-widget-search|mairix-widget-send-query|mairix-widget-toggle-activate|make-backup-file-name--default-function|make-backup-file-name-1|make-char-internal|make-char|make-cmpl-prefix-entry|make-coding-system|make-comint-in-buffer|make-comint|make-command-summary|make-completion|make-directory-internal|make-doctor-variables|make-ebrowse-bs--cmacro|make-ebrowse-bs|make-ebrowse-cs--cmacro|make-ebrowse-cs|make-ebrowse-hs--cmacro|make-ebrowse-hs|make-ebrowse-ms--cmacro|make-ebrowse-ms|make-ebrowse-position--cmacro|make-ebrowse-position|make-ebrowse-ts--cmacro|make-ebrowse-ts|make-empty-face|make-erc-channel-user--cmacro|make-erc-channel-user|make-erc-response--cmacro|make-erc-response|make-erc-server-user--cmacro|make-erc-server-user|make-ert--ewoc-entry--cmacro|make-ert--ewoc-entry|make-ert--stats--cmacro|make-ert--stats|make-ert--test-execution-info--cmacro|make-ert--test-execution-info|make-ert-test--cmacro|make-ert-test-aborted-with-non-local-exit--cmacro|make-ert-test-aborted-with-non-local-exit|make-ert-test-failed--cmacro|make-ert-test-failed|make-ert-test-passed--cmacro|make-ert-test-passed|make-ert-test-quit--cmacro|make-ert-test-quit|make-ert-test-result--cmacro|make-ert-test-result-with-condition--cmacro|make-ert-test-result-with-condition|make-ert-test-result|make-ert-test-skipped--cmacro|make-ert-test-skipped|make-ert-test|make-face-bold-italic|make-face-bold|make-face-italic|make-face-unbold|make-face-unitalic|make-face-x-resource-internal|make-face|make-flyspell-overlay|make-frame-command|make-frame-names-alist|make-full-mail-header|make-gdb-handler--cmacro|make-gdb-handler|make-gdb-table--cmacro|make-gdb-table|make-hippie-expand-function|make-htmlize-fstruct--cmacro|make-htmlize-fstruct|make-initial-minibuffer-frame|make-instance|make-js--js-handle--cmacro|make-js--js-handle|make-js--pitem--cmacro|make-js--pitem|make-mail-header|make-mode-line-mouse-map|make-obsolete-overload|make-package--ac-desc--cmacro|make-package--ac-desc|make-package--bi-desc--cmacro|make-package--bi-desc|make-random-state|make-ses--locprn--cmacro|make-ses--locprn|make-sgml-tag--cmacro|make-sgml-tag|make-soap-array-type--cmacro|make-soap-array-type|make-soap-basic-type--cmacro|make-soap-basic-type|make-soap-binding--cmacro|make-soap-binding|make-soap-bound-operation--cmacro|make-soap-bound-operation|make-soap-element--cmacro|make-soap-element|make-soap-message--cmacro|make-soap-message|make-soap-namespace--cmacro|make-soap-namespace-link--cmacro|make-soap-namespace-link|make-soap-namespace|make-soap-operation--cmacro|make-soap-operation|make-soap-port--cmacro|make-soap-port-type--cmacro|make-soap-port-type)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:make-soap-port|make-soap-sequence-element--cmacro|make-soap-sequence-element|make-soap-sequence-type--cmacro|make-soap-sequence-type|make-soap-simple-type--cmacro|make-soap-simple-type|make-soap-wsdl--cmacro|make-soap-wsdl|make-tar-header--cmacro|make-tar-header|make-term|make-terminal-frame|make-url-queue--cmacro|make-url-queue|make-variable-frame-local|makefile-add-log-defun|makefile-append-backslash|makefile-automake-mode|makefile-backslash-region|makefile-browse|makefile-browser-fill|makefile-browser-format-macro-line|makefile-browser-format-target-line|makefile-browser-get-state-for-line|makefile-browser-insert-continuation|makefile-browser-insert-selection-and-quit|makefile-browser-insert-selection|makefile-browser-next-line|makefile-browser-on-macro-line-p|makefile-browser-previous-line|makefile-browser-quit|makefile-browser-send-this-line-item|makefile-browser-set-state-for-line|makefile-browser-start-interaction|makefile-browser-this-line-macro-name|makefile-browser-this-line-target-name|makefile-browser-toggle-state-for-line|makefile-browser-toggle|makefile-bsdmake-mode|makefile-cleanup-continuations|makefile-complete|makefile-completions-at-point|makefile-create-up-to-date-overview|makefile-delete-backslash|makefile-do-macro-insertion|makefile-electric-colon|makefile-electric-dot|makefile-electric-equal|makefile-fill-paragraph|makefile-first-line-p|makefile-format-macro-ref|makefile-forward-after-target-colon|makefile-generate-temporary-filename|makefile-gmake-mode|makefile-imake-mode|makefile-insert-gmake-function|makefile-insert-macro-ref|makefile-insert-macro|makefile-insert-special-target|makefile-insert-target-ref|makefile-insert-target|makefile-last-line-p|makefile-make-font-lock-keywords|makefile-makepp-mode|makefile-match-action|makefile-match-dependency|makefile-match-function-end|makefile-mode|makefile-next-dependency|makefile-pickup-everything|makefile-pickup-filenames-as-targets|makefile-pickup-macros|makefile-pickup-targets|makefile-previous-dependency|makefile-prompt-for-gmake-funargs|makefile-query-by-make-minus-q|makefile-query-targets|makefile-remember-macro|makefile-remember-target|makefile-save-temporary|makefile-switch-to-browser|makefile-warn-continuations|makefile-warn-suspicious-lines|makeinfo-buffer|makeinfo-compilation-sentinel-buffer|makeinfo-compilation-sentinel-region|makeinfo-compile|makeinfo-current-node|makeinfo-next-error|makeinfo-recenter-compilation-buffer|makeinfo-region|man-follow|man|mantemp-insert-cxx-syntax|mantemp-make-mantemps-buffer|mantemp-make-mantemps-region|mantemp-make-mantemps|mantemp-remove-comments|mantemp-remove-memfuncs|mantemp-sort-and-unique-lines|manual-entry|map-keymap-internal|map-keymap-sorted|map-query-replace-regexp|map|mapcan|mapcar\\\\\\\\*|mapcon|mapl|maplist|mark-bib|mark-defun|mark-end-of-sentence|mark-icon-function|mark-page|mark-paragraph|mark-perl-function|mark-sexp|mark-whole-buffer|mark-word|master-mode|master-says-beginning-of-buffer|master-says-end-of-buffer|master-says-recenter|master-says-scroll-down|master-says-scroll-up|master-says|master-set-slave|master-show-slave|matching-paren|math-add-bignum|math-add-float|math-add|math-bignum-big|math-bignum|math-build-parse-table|math-check-complete|math-comp-concat|math-concat|math-constp|math-div-bignum-big|math-div-bignum-digit|math-div-bignum-part|math-div-bignum-try|math-div-bignum|math-div-float|math-div|math-div10-bignum|math-div2-bignum|math-div2|math-do-working|math-evenp|math-expr-ops|math-find-user-tokens|math-fixnatnump|math-fixnump|math-float|math-floatp|math-floor|math-format-bignum-decimal|math-format-bignum|math-format-flat-expr|math-format-number|math-format-stack-value|math-format-value|math-idivmod|math-imod|math-infinitep|math-ipow|math-looks-negp|math-make-float|math-match-substring|math-mod|math-mul-bignum-digit|math-mul-bignum|math-mul|math-neg|math-negp|math-normalize|math-numdigs|math-posp|math-pow|math-quotient|math-read-bignum|math-read-expr-list|math-read-exprs|math-read-if|math-read-number-simple|math-read-number|math-read-preprocess-string|math-read-radix-digit|math-read-token|math-reject-arg|math-remove-dashes|math-scale-int|math-scale-left-bignum|math-scale-left|math-scale-right-bignum|math-scale-right|math-scale-rounding|math-showing-full-precision|math-stack-value-offset|math-standard-ops-p|math-standard-ops|math-sub-bignum|math-sub-float|math-sub|math-trunc|math-with-extra-prec|math-working|math-zerop|md4-64|md4-F|md4-G|md4-H|md4-add|md4-and|md4-copy64|md4-make-step|md4-pack-int16|md4-pack-int32|md4-round1|md4-round2|md4-round3|md4-unpack-int16|md4-unpack-int32|md4|md5-binary|member\\\\\\\\*|member-if-not|member-if|memory-info|menu-bar-bookmark-map|menu-bar-buffer-vector|menu-bar-ediff-menu|menu-bar-ediff-merge-menu|menu-bar-ediff-misc-menu|menu-bar-enable-clipboard|menu-bar-epatch-menu|menu-bar-frame-for-menubar|menu-bar-handwrite-map|menu-bar-horizontal-scroll-bar|menu-bar-kill-ring-save|menu-bar-left-scroll-bar|menu-bar-make-mm-toggle|menu-bar-make-toggle|menu-bar-menu-at-x-y|menu-bar-menu-frame-live-and-visible-p|menu-bar-mode|menu-bar-next-tag-other-window|menu-bar-next-tag|menu-bar-no-horizontal-scroll-bar|menu-bar-no-scroll-bar|menu-bar-non-minibuffer-window-p|menu-bar-open|menu-bar-options-save|menu-bar-positive-p|menu-bar-read-lispintro|menu-bar-read-lispref|menu-bar-read-mail|menu-bar-right-scroll-bar|menu-bar-select-buffer|menu-bar-select-frame|menu-bar-select-yank|menu-bar-set-tool-bar-position|menu-bar-showhide-fringe-ind-box|menu-bar-showhide-fringe-ind-customize|menu-bar-showhide-fringe-ind-left|menu-bar-showhide-fringe-ind-mixed|menu-bar-showhide-fringe-ind-none|menu-bar-showhide-fringe-ind-right|menu-bar-showhide-fringe-menu-customize-disable|menu-bar-showhide-fringe-menu-customize-left|menu-bar-showhide-fringe-menu-customize-reset|menu-bar-showhide-fringe-menu-customize-right|menu-bar-showhide-fringe-menu-customize|menu-bar-showhide-tool-bar-menu-customize-disable|menu-bar-showhide-tool-bar-menu-customize-enable-bottom|menu-bar-showhide-tool-bar-menu-customize-enable-left|menu-bar-showhide-tool-bar-menu-customize-enable-right|menu-bar-showhide-tool-bar-menu-customize-enable-top|menu-bar-update-buffers-1|menu-bar-update-buffers|menu-bar-update-yank-menu|menu-find-file-existing|menu-or-popup-active-p|menu-set-font|mercury-mode|merge-coding-systems|merge-mail-abbrevs|merge|message--yank-original-internal|message-add-action|message-add-archive-header|message-add-header|message-alter-recipients-discard-bogus-full-name|message-beginning-of-line|message-bogus-recipient-p|message-bold-region|message-bounce|message-buffer-name|message-buffers|message-bury|message-caesar-buffer-body|message-caesar-region|message-cancel-news|message-canlock-generate|message-canlock-password|message-carefully-insert-headers|message-change-subject|message-check-element|message-check-news-body-syntax|message-check-news-header-syntax|message-check-news-syntax|message-check-recipients|message-check|message-checksum|message-cite-original-1|message-cite-original-without-signature|message-cite-original|message-cleanup-headers|message-clone-locals|message-completion-function|message-completion-in-region|message-cross-post-followup-to-header|message-cross-post-followup-to|message-cross-post-insert-note|message-default-send-mail-function|message-default-send-rename-function|message-delete-action|message-delete-line|message-delete-not-region|message-delete-overlay|message-disassociate-draft|message-display-abbrev|message-do-actions|message-do-auto-fill|message-do-fcc|message-do-send-housekeeping|message-dont-reply-to-names|message-dont-send|message-elide-region|message-encode-message-body|message-exchange-point-and-mark|message-expand-group|message-expand-name|message-fetch-field|message-fetch-reply-field|message-field-name|message-field-value|message-fill-field-address|message-fill-field-general|message-fill-field|message-fill-paragraph|message-fill-yanked-message|message-fix-before-sending|message-flatten-list|message-followup|message-font-lock-make-header-matcher|message-forward-make-body-digest-mime|message-forward-make-body-digest-plain|message-forward-make-body-digest|message-forward-make-body-mime|message-forward-make-body-mml|message-forward-make-body-plain|message-forward-make-body|message-forward-rmail-make-body|message-forward-subject-author-subject|message-forward-subject-fwd|message-forward-subject-name-subject|message-forward|message-generate-headers|message-generate-new-buffer-clone-locals|message-generate-unsubscribed-mail-followup-to|message-get-reply-headers|message-gnksa-enable-p|message-goto-bcc|message-goto-body|message-goto-cc|message-goto-distribution|message-goto-eoh|message-goto-fcc|message-goto-followup-to|message-goto-from|message-goto-keywords|message-goto-mail-followup-to|message-goto-newsgroups|message-goto-reply-to|message-goto-signature|message-goto-subject|message-goto-summary|message-goto-to|message-headers-to-generate|message-hide-header-p|message-hide-headers|message-idna-to-ascii-rhs-1|message-idna-to-ascii-rhs|message-in-body-p|message-indent-citation|message-info|message-insert-canlock|message-insert-citation-line|message-insert-courtesy-copy|message-insert-disposition-notification-to|message-insert-expires|message-insert-formatted-citation-line|message-insert-header|message-insert-headers|message-insert-importance-high|message-insert-importance-low|message-insert-newsgroups|message-insert-or-toggle-importance|message-insert-signature|message-insert-to|message-insert-wide-reply|message-insinuate-rmail|message-is-yours-p|message-kill-address|message-kill-all-overlays|message-kill-buffer|message-kill-to-signature|message-mail-alias-type-p|message-mail-file-mbox-p|message-mail-other-frame|message-mail-other-window|message-mail-p|message-mail-user-agent|message-mail|message-make-address|message-make-caesar-translation-table|message-make-date|message-make-distribution|message-make-domain|message-make-expires-date|message-make-expires|message-make-forward-subject|message-make-fqdn|message-make-from|message-make-html-message-with-image-files|message-make-in-reply-to|message-make-lines|message-make-mail-followup-to|message-make-message-id|message-make-organization|message-make-overlay|message-make-path|message-make-references|message-make-sender|message-make-tool-bar|message-mark-active-p|message-mark-insert-file|message-mark-inserted-region|message-mode-field-menu|message-mode-menu|message-mode|message-multi-smtp-send-mail|message-narrow-to-field|message-narrow-to-head-1|message-narrow-to-head|message-narrow-to-headers-or-head|message-narrow-to-headers|message-newline-and-reformat|message-news-other-frame|message-news-other-window|message-news-p|message-news|message-next-header|message-number-base36|message-options-get|message-options-set-recipient|message-options-set|message-output|message-overlay-put|message-pipe-buffer-body|message-point-in-header-p|message-pop-to-buffer|message-position-on-field|message-position-point|message-posting-charset|message-prune-recipients|message-put-addresses-in-ecomplete|message-read-from-minibuffer|message-recover|message-reduce-to-to-cc|message-remove-blank-cited-lines|message-remove-first-header|message-remove-header|message-remove-ignored-headers|message-rename-buffer|message-replace-header|message-reply|message-resend|message-send-and-exit|message-send-form-letter|message-send-mail-function|message-send-mail-partially|message-send-mail-with-mailclient|message-send-mail-with-mh|message-send-mail-with-qmail|message-send-mail-with-sendmail|message-send-mail|message-send-news|message-send-via-mail|message-send-via-news|message-send|message-sendmail-envelope-from|message-set-auto-save-file-name|message-setup-1|message-setup-fill-variables|message-setup-toolbar|message-setup|message-shorten-1|message-shorten-references|message-signed-or-encrypted-p|message-simplify-recipients|message-simplify-subject|message-skip-to-next-address|message-smtpmail-send-it|message-sort-headers-1|message-sort-headers|message-split-line|message-strip-forbidden-properties|message-strip-list-identifiers|message-strip-subject-encoded-words|message-strip-subject-re|message-strip-subject-trailing-was|message-subscribed-p|message-supersede|message-tab|message-talkative-question|message-tamago-not-in-use-p|message-text-with-property|message-to-list-only|message-tokenize-header|message-tool-bar-update|message-unbold-region|message-unique-id|message-unquote-tokens|message-use-alternative-email-as-from|message-user-mail-address|message-wash-subject|message-wide-reply|message-widen-reply|message-with-reply-buffer|message-y-or-n-p)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:message-yank-buffer|message-yank-original|messages-buffer-mode|meta-add-symbols|meta-beginning-of-defun|meta-car-string-lessp|meta-comment-defun|meta-comment-indent|meta-comment-region|meta-common-mode|meta-complete-symbol|meta-completions-at-point|meta-end-of-defun|meta-indent-buffer|meta-indent-calculate|meta-indent-current-indentation|meta-indent-current-nesting|meta-indent-defun|meta-indent-in-string-p|meta-indent-level-count|meta-indent-line|meta-indent-looking-at-code|meta-indent-previous-line|meta-indent-region|meta-indent-unfinished-line|meta-listify|meta-mark-active|meta-mark-defun|meta-mode-menu|meta-symbol-list|meta-uncomment-defun|meta-uncomment-region|metafont-mode|metamail-buffer|metamail-interpret-body|metamail-interpret-header|metamail-region|metapost-mode|mh-adaptive-cmd-note-flag-check|mh-add-missing-mime-version-header|mh-add-msgs-to-seq|mh-alias-address-to-alias|mh-alias-expand|mh-alias-for-from-p|mh-alias-grab-from-field|mh-alias-letter-expand-alias|mh-alias-minibuffer-confirm-address|mh-alias-reload-maybe|mh-assoc-string|mh-beginning-of-word|mh-bogofilter-blacklist|mh-bogofilter-whitelist|mh-buffer-data|mh-burst-digest|mh-cancel-timer|mh-catchup|mh-cl-flet|mh-clean-msg-header|mh-clear-sub-folders-cache|mh-coalesce-msg-list|mh-colors-available-p|mh-colors-in-use-p|mh-complete-word|mh-compose-forward|mh-compose-insertion|mh-copy-msg|mh-create-sequence-map|mh-customize|mh-decode-message-header|mh-decode-message-subject|mh-define-obsolete-variable-alias|mh-define-sequence|mh-defstruct|mh-delete-a-msg|mh-delete-line|mh-delete-msg-from-seq|mh-delete-msg-no-motion|mh-delete-msg|mh-delete-seq|mh-delete-subject-or-thread|mh-delete-subject|mh-destroy-postponed-handles|mh-display-color-cells|mh-display-completion-list|mh-display-emphasis|mh-display-msg|mh-display-smileys|mh-display-with-external-viewer|mh-do-at-event-location|mh-do-in-gnu-emacs|mh-do-in-xemacs|mh-edit-again|mh-ephem-message|mh-exchange-point-and-mark-preserving-active-mark|mh-exec-cmd-daemon|mh-exec-cmd-env-daemon|mh-exec-cmd-error|mh-exec-cmd-output|mh-exec-cmd-quiet|mh-exec-cmd|mh-exec-lib-cmd-output|mh-execute-commands|mh-expand-file-name|mh-extract-from-header-value|mh-extract-rejected-mail|mh-face-background|mh-face-data|mh-face-foreground|mh-file-command-p|mh-file-mime-type|mh-find-path|mh-find-seq|mh-first-msg|mh-folder-completion-function|mh-folder-from-address|mh-folder-inline-mime-part|mh-folder-list|mh-folder-mode|mh-folder-name-p|mh-folder-save-mime-part|mh-folder-speedbar-buttons|mh-folder-toggle-mime-part|mh-font-lock-add-keywords|mh-forward|mh-fully-kill-draft|mh-funcall-if-exists|mh-get-header-field|mh-get-msg-num|mh-gnus-article-highlight-citation|mh-goto-cur-msg|mh-goto-header-end|mh-goto-header-field|mh-goto-msg|mh-goto-next-button|mh-handle-process-error|mh-have-file-command|mh-header-display|mh-header-field-beginning|mh-header-field-end|mh-help|mh-identity-add-menu|mh-identity-handler-attribution-verb|mh-identity-handler-bottom|mh-identity-handler-gpg-identity|mh-identity-handler-signature|mh-identity-handler-top|mh-identity-insert-attribution-verb|mh-identity-make-menu-no-autoload|mh-identity-make-menu|mh-image-load-path-for-library|mh-image-search-load-path|mh-in-header-p|mh-in-show-buffer|mh-inc-folder|mh-inc-spool-make-no-autoload|mh-inc-spool-make|mh-index-add-to-sequence|mh-index-create-imenu-index|mh-index-create-sequences|mh-index-delete-folder-headers|mh-index-delete-from-sequence|mh-index-execute-commands|mh-index-group-by-folder|mh-index-insert-folder-headers|mh-index-new-messages|mh-index-next-folder|mh-index-previous-folder|mh-index-read-data|mh-index-sequenced-messages|mh-index-ticked-messages|mh-index-update-maps|mh-index-visit-folder|mh-insert-auto-fields|mh-insert-identity|mh-insert-signature|mh-interactive-range|mh-invalidate-show-buffer|mh-invisible-headers|mh-iterate-on-messages-in-region|mh-iterate-on-range|mh-junk-blacklist-disposition|mh-junk-blacklist|mh-junk-choose|mh-junk-process-blacklist|mh-junk-process-whitelist|mh-junk-whitelist|mh-kill-folder|mh-last-msg|mh-lessp|mh-letter-hide-all-skipped-fields|mh-letter-mode|mh-letter-next-header-field|mh-letter-skip-leading-whitespace-in-header-field|mh-letter-skipped-header-field-p|mh-letter-speedbar-buttons|mh-letter-toggle-header-field-display-button|mh-letter-toggle-header-field-display|mh-line-beginning-position|mh-line-end-position|mh-list-folders|mh-list-sequences|mh-list-to-string-1|mh-list-to-string|mh-logo-display|mh-macro-expansion-time-gnus-version|mh-mail-abbrev-make-syntax-table|mh-mail-header-end|mh-make-folder-mode-line|mh-make-local-hook|mh-make-local-vars|mh-make-obsolete-variable|mh-mapc|mh-mark-active-p|mh-match-string-no-properties|mh-maybe-show|mh-mh-compose-anon-ftp|mh-mh-compose-external-compressed-tar|mh-mh-compose-external-type|mh-mh-directive-present-p|mh-mh-to-mime-undo|mh-mh-to-mime|mh-mime-cleanup|mh-mime-display|mh-mime-save-parts|mh-mml-forward-message|mh-mml-secure-message-encrypt|mh-mml-secure-message-sign|mh-mml-secure-message-signencrypt|mh-mml-tag-present-p|mh-mml-to-mime|mh-mml-unsecure-message|mh-modify|mh-msg-filename|mh-msg-is-in-seq|mh-msg-num-width-to-column|mh-msg-num-width|mh-narrow-to-cc|mh-narrow-to-from|mh-narrow-to-range|mh-narrow-to-seq|mh-narrow-to-subject|mh-narrow-to-tick|mh-narrow-to-to|mh-new-draft-name|mh-next-button|mh-next-msg|mh-next-undeleted-msg|mh-next-unread-msg|mh-nmail|mh-notate-cur|mh-notate-deleted-and-refiled|mh-notate-user-sequences|mh-notate|mh-outstanding-commands-p|mh-pack-folder|mh-page-digest-backwards|mh-page-digest|mh-page-msg|mh-parse-flist-output-line|mh-pipe-msg|mh-position-on-field|mh-prefix-help|mh-prev-button|mh-previous-page|mh-previous-undeleted-msg|mh-previous-unread-msg|mh-print-msg|mh-process-daemon|mh-process-or-undo-commands|mh-profile-component-value|mh-profile-component|mh-prompt-for-folder|mh-prompt-for-refile-folder|mh-ps-print-msg-file|mh-ps-print-msg|mh-ps-print-toggle-color|mh-ps-print-toggle-faces|mh-put-msg-in-seq|mh-quit|mh-quote-for-shell|mh-quote-pick-expr|mh-range-to-msg-list|mh-read-address|mh-read-folder-sequences|mh-read-range|mh-read-seq-default|mh-recenter|mh-redistribute|mh-refile-a-msg|mh-refile-msg|mh-refile-or-write-again|mh-regenerate-headers|mh-remove-all-notation|mh-remove-cur-notation|mh-remove-from-sub-folders-cache|mh-replace-regexp-in-string|mh-replace-string|mh-reply|mh-require-cl|mh-require|mh-rescan-folder|mh-reset-threads-and-narrowing|mh-rmail|mh-run-time-gnus-version|mh-scan-folder|mh-scan-format-file-check|mh-scan-format|mh-scan-msg-number-regexp|mh-scan-msg-search-regexp|mh-search-from-end|mh-search-p|mh-search|mh-send-letter|mh-send|mh-seq-msgs|mh-seq-to-msgs|mh-set-cmd-note|mh-set-folder-modified-p|mh-set-help|mh-set-x-image-cache-directory|mh-show-addr|mh-show-buffer-message-number|mh-show-font-lock-keywords-with-cite|mh-show-font-lock-keywords|mh-show-mode|mh-show-preferred-alternative|mh-show-speedbar-buttons|mh-show-xface|mh-show|mh-showing-mode|mh-signature-separator-p|mh-smail-batch|mh-smail-other-window|mh-smail|mh-sort-folder|mh-spamassassin-blacklist|mh-spamassassin-identify-spammers|mh-spamassassin-whitelist|mh-spamprobe-blacklist|mh-spamprobe-whitelist|mh-speed-add-folder|mh-speed-flists-active-p|mh-speed-flists|mh-speed-invalidate-map|mh-start-of-uncleaned-message|mh-store-msg|mh-strip-package-version|mh-sub-folders|mh-test-completion|mh-thread-add-spaces|mh-thread-ancestor|mh-thread-delete|mh-thread-find-msg-subject|mh-thread-forget-message|mh-thread-generate|mh-thread-inc|mh-thread-next-sibling|mh-thread-parse-scan-line|mh-thread-previous-sibling|mh-thread-print-scan-lines|mh-thread-refile|mh-thread-update-scan-line-map|mh-toggle-mh-decode-mime-flag|mh-toggle-mime-buttons|mh-toggle-showing|mh-toggle-threads|mh-toggle-tick|mh-translate-range|mh-truncate-log-buffer|mh-undefine-sequence|mh-undo-folder|mh-undo|mh-update-sequences|mh-url-hexify-string|mh-user-agent-compose|mh-valid-seq-p|mh-valid-view-change-operation-p|mh-variant-gnu-mh-info|mh-variant-info|mh-variant-mh-info|mh-variant-nmh-info|mh-variant-p|mh-variant-set-variant|mh-variant-set|mh-variants|mh-version|mh-view-mode-enter|mh-visit-folder|mh-widen|mh-window-full-height-p|mh-write-file-functions|mh-write-msg-to-file|mh-xargs|mh-yank-cur-msg|midnight-buffer-display-time|midnight-delay-set|midnight-find|midnight-next|mime-to-mml|minibuf-eldef-setup-minibuffer|minibuf-eldef-update-minibuffer|minibuffer--bitset|minibuffer--double-dollars|minibuffer-avoid-prompt|minibuffer-completion-contents|minibuffer-default--in-prompt-regexps|minibuffer-default-add-completions|minibuffer-default-add-shell-commands|minibuffer-depth-indicate-mode|minibuffer-depth-setup|minibuffer-electric-default-mode|minibuffer-force-complete-and-exit|minibuffer-force-complete|minibuffer-frame-list|minibuffer-hide-completions|minibuffer-history-initialize|minibuffer-history-isearch-end|minibuffer-history-isearch-message|minibuffer-history-isearch-pop-state|minibuffer-history-isearch-push-state|minibuffer-history-isearch-search|minibuffer-history-isearch-setup|minibuffer-history-isearch-wrap|minibuffer-insert-file-name-at-point|minibuffer-keyboard-quit|minibuffer-with-setup-hook|minor-mode-menu-from-indicator|minusp|mismatch|mixal-debug|mixal-describe-operation-code|mixal-mode|mixal-run|mm-add-meta-html-tag|mm-alist-to-plist|mm-annotationp|mm-append-to-file|mm-archive-decoders|mm-archive-dissect-and-inline|mm-assoc-string-match|mm-attachment-override-p|mm-auto-mode-alist|mm-automatic-display-p|mm-automatic-external-display-p|mm-body-7-or-8|mm-body-encoding|mm-char-int|mm-char-or-char-int-p|mm-charset-after|mm-charset-to-coding-system|mm-codepage-setup|mm-coding-system-equal|mm-coding-system-list|mm-coding-system-p|mm-coding-system-to-mime-charset|mm-complicated-handles|mm-content-transfer-encoding|mm-convert-shr-links|mm-copy-to-buffer|mm-create-image-xemacs|mm-decode-body|mm-decode-coding-region|mm-decode-coding-string|mm-decode-content-transfer-encoding|mm-decode-string|mm-decompress-buffer|mm-default-file-encoding|mm-default-multibyte-p|mm-delete-duplicates|mm-destroy-part|mm-destroy-parts|mm-destroy-postponed-undisplay-list|mm-detect-coding-region|mm-detect-mime-charset-region|mm-disable-multibyte|mm-display-external|mm-display-inline|mm-display-part|mm-display-parts|mm-dissect-archive|mm-dissect-buffer|mm-dissect-multipart|mm-dissect-singlepart|mm-enable-multibyte|mm-encode-body|mm-encode-buffer|mm-encode-coding-region|mm-encode-coding-string|mm-encode-content-transfer-encoding|mm-enrich-utf-8-by-mule-ucs|mm-extern-cache-contents|mm-file-name-collapse-whitespace|mm-file-name-delete-control|mm-file-name-delete-gotchas|mm-file-name-delete-whitespace|mm-file-name-replace-whitespace|mm-file-name-trim-whitespace|mm-find-buffer-file-coding-system|mm-find-charset-region|mm-find-mime-charset-region|mm-find-part-by-type|mm-find-raw-part-by-type|mm-get-coding-system-list|mm-get-content-id|mm-get-image|mm-get-part|mm-guess-charset|mm-handle-buffer|mm-handle-cache|mm-handle-description|mm-handle-displayed-p|mm-handle-disposition|mm-handle-encoding|mm-handle-filename|mm-handle-id|mm-handle-media-subtype|mm-handle-media-supertype|mm-handle-media-type|mm-handle-multipart-ctl-parameter|mm-handle-multipart-from|mm-handle-multipart-original-buffer|mm-handle-set-cache|mm-handle-set-external-undisplayer|mm-handle-set-undisplayer|mm-handle-type|mm-handle-undisplayer|mm-image-fit-p|mm-image-load-path|mm-image-type-from-buffer|mm-inlinable-p|mm-inline-external-body|mm-inline-override-p|mm-inline-partial|mm-inlined-p|mm-insert-byte|mm-insert-file-contents|mm-insert-headers|mm-insert-inline|mm-insert-multipart-headers|mm-insert-part|mm-insert-rfc822-headers|mm-interactively-view-part|mm-iso-8859-x-to-15-region|mm-keep-viewer-alive-p|mm-line-number-at-pos|mm-long-lines-p|mm-mailcap-command|mm-make-handle|mm-make-temp-file|mm-merge-handles|mm-mime-charset|mm-mule-charset-to-mime-charset|mm-multibyte-char-to-unibyte|mm-multibyte-p|mm-multibyte-string-p|mm-multiple-handles|mm-pipe-part|mm-possibly-verify-or-decrypt|mm-preferred-alternative-precedence|mm-preferred-alternative|mm-preferred-coding-system|mm-qp-or-base64|mm-read-charset|mm-read-coding-system|mm-readable-p|mm-remove-part|mm-remove-parts|mm-replace-in-string|mm-safer-encoding|mm-save-part-to-file|mm-save-part|mm-set-buffer-file-coding-system|mm-set-buffer-multibyte|mm-set-handle-multipart-parameter|mm-setup-codepage-ibm|mm-setup-codepage-iso-8859|mm-shr|mm-sort-coding-systems-predicate)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:mm-special-display-p|mm-string-as-multibyte|mm-string-as-unibyte|mm-string-make-unibyte|mm-string-to-multibyte|mm-subst-char-in-string|mm-substring-no-properties|mm-temp-files-delete|mm-ucs-to-char|mm-url-decode-entities-nbsp|mm-url-decode-entities-string|mm-url-decode-entities|mm-url-encode-multipart-form-data|mm-url-encode-www-form-urlencoded|mm-url-form-encode-xwfu|mm-url-insert-file-contents-external|mm-url-insert-file-contents|mm-url-insert|mm-url-load-url|mm-url-remove-markup|mm-uu-dissect-text-parts|mm-uu-dissect|mm-valid-and-fit-image-p|mm-valid-image-format-p|mm-view-pkcs7|mm-with-multibyte-buffer|mm-with-part|mm-with-unibyte-buffer|mm-with-unibyte-current-buffer|mm-write-region|mm-xemacs-find-mime-charset-1|mm-xemacs-find-mime-charset|mml-attach-buffer|mml-attach-external|mml-attach-file|mml-buffer-substring-no-properties-except-hard-newlines|mml-compute-boundary-1|mml-compute-boundary|mml-content-disposition|mml-destroy-buffers|mml-dnd-attach-file|mml-expand-html-into-multipart-related|mml-generate-mime-1|mml-generate-mime|mml-generate-new-buffer|mml-insert-buffer|mml-insert-empty-tag|mml-insert-mime-headers|mml-insert-mime|mml-insert-mml-markup|mml-insert-multipart|mml-insert-parameter-string|mml-insert-parameter|mml-insert-part|mml-insert-tag|mml-make-boundary|mml-menu|mml-minibuffer-read-description|mml-minibuffer-read-disposition|mml-minibuffer-read-file|mml-minibuffer-read-type|mml-mode|mml-parameter-string|mml-parse-1|mml-parse-file-name|mml-parse-singlepart-with-multiple-charsets|mml-parse|mml-pgp-encrypt-buffer|mml-pgp-sign-buffer|mml-pgpauto-encrypt-buffer|mml-pgpauto-sign-buffer|mml-pgpmime-encrypt-buffer|mml-pgpmime-sign-buffer|mml-preview-insert-mail-followup-to|mml-preview|mml-quote-region|mml-read-part|mml-read-tag|mml-secure-encrypt-pgp|mml-secure-encrypt-pgpmime|mml-secure-encrypt-smime|mml-secure-encrypt|mml-secure-message-encrypt-pgp|mml-secure-message-encrypt-pgpauto|mml-secure-message-encrypt-pgpmime|mml-secure-message-encrypt-smime|mml-secure-message-encrypt|mml-secure-message-sign-encrypt|mml-secure-message-sign-pgp|mml-secure-message-sign-pgpauto|mml-secure-message-sign-pgpmime|mml-secure-message-sign-smime|mml-secure-message-sign|mml-secure-message|mml-secure-part|mml-secure-sign-pgp|mml-secure-sign-pgpauto|mml-secure-sign-pgpmime|mml-secure-sign-smime|mml-secure-sign|mml-signencrypt-style|mml-smime-encrypt-buffer|mml-smime-encrypt-query|mml-smime-encrypt|mml-smime-sign-buffer|mml-smime-sign-query|mml-smime-sign|mml-smime-verify-test|mml-smime-verify|mml-to-mime|mml-tweak-externalize-attachments|mml-tweak-part|mml-unsecure-message|mml-validate|mml1991-encrypt|mml1991-sign|mml2015-decrypt-test|mml2015-decrypt|mml2015-encrypt|mml2015-self-encrypt|mml2015-sign|mml2015-verify-test|mml2015-verify|mod\\\\\\\\*|mode-line-bury-buffer|mode-line-change-eol|mode-line-eol-desc|mode-line-frame-control|mode-line-minor-mode-help|mode-line-modified-help-echo|mode-line-mule-info-help-echo|mode-line-next-buffer|mode-line-other-buffer|mode-line-previous-buffer|mode-line-read-only-help-echo|mode-line-toggle-modified|mode-line-toggle-read-only|mode-line-unbury-buffer|mode-line-widen|mode-local--expand-overrides|mode-local--overload-body|mode-local--override|mode-local-augment-function-help|mode-local-bind|mode-local-describe-bindings-1|mode-local-describe-bindings-2|mode-local-equivalent-mode-p|mode-local-initialized-p|mode-local-map-file-buffers|mode-local-map-mode-buffers|mode-local-on-major-mode-change|mode-local-post-major-mode-change|mode-local-print-binding|mode-local-print-bindings|mode-local-read-function|mode-local-setup-edebug-specs|mode-local-symbol-value|mode-local-symbol|mode-local-use-bindings-p|mode-local-value|mode-specific-command-prefix|modify-coding-system-alist|modify-face|modula-2-mode|morse-region|mouse--down-1-maybe-follows-link|mouse--drag-set-mark-and-point|mouse--strip-first-event|mouse-appearance-menu|mouse-autoselect-window-cancel|mouse-autoselect-window-select|mouse-autoselect-window-start|mouse-avoidance-banish-destination|mouse-avoidance-banish-mouse|mouse-avoidance-banish|mouse-avoidance-delta|mouse-avoidance-exile|mouse-avoidance-fancy|mouse-avoidance-ignore-p|mouse-avoidance-mode|mouse-avoidance-nudge-mouse|mouse-avoidance-point-position|mouse-avoidance-random-shape|mouse-avoidance-set-mouse-position|mouse-avoidance-set-pointer-shape|mouse-avoidance-too-close-p|mouse-buffer-menu-alist|mouse-buffer-menu-keymap|mouse-buffer-menu-map|mouse-buffer-menu-split|mouse-buffer-menu|mouse-choose-completion|mouse-copy-work-around-drag-bug|mouse-delete-other-windows|mouse-delete-window|mouse-drag-drag|mouse-drag-events-are-point-events-p|mouse-drag-header-line|mouse-drag-line|mouse-drag-mode-line|mouse-drag-region|mouse-drag-repeatedly-safe-scroll|mouse-drag-safe-scroll|mouse-drag-scroll-delta|mouse-drag-secondary-moving|mouse-drag-secondary-pasting|mouse-drag-secondary|mouse-drag-should-do-col-scrolling|mouse-drag-throw|mouse-drag-track|mouse-drag-vertical-line|mouse-event-p|mouse-fixup-help-message|mouse-kill-preserving-secondary|mouse-kill-ring-save|mouse-kill-secondary|mouse-kill|mouse-major-mode-menu|mouse-menu-bar-map|mouse-menu-major-mode-map|mouse-menu-non-singleton|mouse-minibuffer-check|mouse-minor-mode-menu|mouse-popup-menubar-stuff|mouse-popup-menubar|mouse-posn-property|mouse-region-match|mouse-save-then-kill-delete-region|mouse-save-then-kill|mouse-scroll-subr|mouse-secondary-save-then-kill|mouse-select-buffer|mouse-select-font|mouse-select-window|mouse-set-font|mouse-set-mark-fast|mouse-set-mark|mouse-set-point|mouse-set-region-1|mouse-set-region|mouse-set-secondary|mouse-skip-word|mouse-split-window-horizontally|mouse-split-window-vertically|mouse-start-end|mouse-start-secondary|mouse-tear-off-window|mouse-undouble-last-event|mouse-wheel-change-button|mouse-wheel-mode|mouse-yank-at-click|mouse-yank-primary|mouse-yank-secondary|move-beginning-of-line|move-end-of-line|move-file-to-trash|move-past-close-and-reindent|move-to-column-untabify|move-to-tab-stop|move-to-window-line-top-bottom|mpc--debug|mpc--faster-stop|mpc--faster-toggle-refresh|mpc--faster-toggle|mpc--faster|mpc--proc-alist-to-alists|mpc--proc-connect|mpc--proc-filter|mpc--proc-quote-string|mpc--songduration|mpc--status-callback|mpc--status-idle-timer-run|mpc--status-idle-timer-start|mpc--status-idle-timer-stop|mpc--status-timer-run|mpc--status-timer-start|mpc--status-timer-stop|mpc--status-timers-refresh|mpc-assq-all|mpc-cmd-add|mpc-cmd-clear|mpc-cmd-delete|mpc-cmd-find|mpc-cmd-flush|mpc-cmd-list|mpc-cmd-move|mpc-cmd-pause|mpc-cmd-play|mpc-cmd-special-tag-p|mpc-cmd-status|mpc-cmd-stop|mpc-cmd-tagtypes|mpc-cmd-update|mpc-compare-strings|mpc-constraints-get-current|mpc-constraints-pop|mpc-constraints-push|mpc-constraints-restore|mpc-constraints-tag-lookup|mpc-current-refresh|mpc-data-directory|mpc-drag-n-drop|mpc-event-set-point|mpc-ffwd|mpc-file-local-copy|mpc-format|mpc-intersection|mpc-mode-menu|mpc-mode|mpc-next|mpc-pause|mpc-play-at-point|mpc-play|mpc-playlist-add|mpc-playlist-create|mpc-playlist-delete|mpc-playlist-destroy|mpc-playlist-rename|mpc-playlist|mpc-prev|mpc-proc-buf-to-alist|mpc-proc-buf-to-alists|mpc-proc-buffer|mpc-proc-check|mpc-proc-cmd-list-ok|mpc-proc-cmd-list|mpc-proc-cmd-to-alist|mpc-proc-cmd|mpc-proc-sync|mpc-proc-tag-string-to-sym|mpc-proc|mpc-quit|mpc-reorder|mpc-resume|mpc-rewind|mpc-ring-make|mpc-ring-pop|mpc-ring-push|mpc-secs-to-time|mpc-select-extend|mpc-select-get-selection|mpc-select-make-overlay|mpc-select-restore|mpc-select-save|mpc-select-toggle|mpc-select|mpc-selection-refresh|mpc-separator|mpc-songpointer-context|mpc-songpointer-refresh-hairy|mpc-songpointer-refresh|mpc-songpointer-score|mpc-songpointer-set|mpc-songs-buf|mpc-songs-hashcons|mpc-songs-jump-to|mpc-songs-kill-search|mpc-songs-mode|mpc-songs-refresh|mpc-songs-search|mpc-songs-selection|mpc-sort|mpc-status-buffer-refresh|mpc-status-buffer-show|mpc-status-mode|mpc-status-refresh|mpc-status-stop|mpc-stop|mpc-string-prefix-p|mpc-tagbrowser-all-p|mpc-tagbrowser-all-select|mpc-tagbrowser-buf|mpc-tagbrowser-dir-mode|mpc-tagbrowser-dir-toggle|mpc-tagbrowser-mode|mpc-tagbrowser-refresh|mpc-tagbrowser-tag-name|mpc-tagbrowser|mpc-tempfiles-add|mpc-tempfiles-clean|mpc-union|mpc-update|mpc-updated-db|mpc-volume-mouse-set|mpc-volume-refresh|mpc-volume-widget|mpc|mpuz-ask-for-try|mpuz-build-random-perm|mpuz-check-all-solved|mpuz-close-game|mpuz-create-buffer|mpuz-digit-solved-p|mpuz-ding|mpuz-get-buffer|mpuz-mode|mpuz-offer-abort|mpuz-paint-board|mpuz-paint-digit|mpuz-paint-errors|mpuz-paint-number|mpuz-paint-statistics|mpuz-put-number-on-board|mpuz-random-puzzle|mpuz-show-solution|mpuz-solve|mpuz-start-new-game|mpuz-switch-to-window|mpuz-to-digit|mpuz-to-letter|mpuz-try-letter|mpuz-try-proposal|mpuz|msb--add-separators|msb--add-to-menu|msb--aggregate-alist|msb--choose-file-menu|msb--choose-menu|msb--collect|msb--create-buffer-menu-2|msb--create-buffer-menu|msb--create-function-info|msb--create-sort-item|msb--dired-directory|msb--format-title|msb--init-file-alist|msb--make-keymap-menu|msb--mode-menu-cond|msb--most-recently-used-menu|msb--split-menus-2|msb--split-menus|msb--strip-dir|msb--toggle-menu-type|msb-alon-item-handler|msb-custom-set|msb-dired-item-handler|msb-invisible-buffer-p|msb-item-handler|msb-menu-bar-update-buffers|msb-mode|msb-sort-by-directory|msb-sort-by-name|msb-unload-function|msb|mspools-get-folder-from-spool|mspools-get-spool-files|mspools-get-spool-name|mspools-help|mspools-mode|mspools-quit|mspools-revert-buffer|mspools-set-vm-spool-files|mspools-show-again|mspools-show|mspools-size-folder|mspools-visit-spool|mule-diag|multi-isearch-buffers-regexp|multi-isearch-buffers|multi-isearch-end|multi-isearch-files-regexp|multi-isearch-files|multi-isearch-next-buffer-from-list|multi-isearch-next-file-buffer-from-list|multi-isearch-pop-state|multi-isearch-push-state|multi-isearch-read-buffers|multi-isearch-read-files|multi-isearch-read-matching-buffers|multi-isearch-read-matching-files|multi-isearch-search-fun|multi-isearch-setup|multi-isearch-wrap|multi-occur-in-matching-buffers|multi-occur|multiple-value-apply|multiple-value-bind|multiple-value-call|multiple-value-list|multiple-value-setq|mwheel-event-button|mwheel-event-window|mwheel-filter-click-events|mwheel-inhibit-click-timeout|mwheel-install|mwheel-scroll|name-last-kbd-macro|narrow-to-defun|nato-region|nested-alist-p|net-utils--revert-function|net-utils-machine-at-point|net-utils-mode|net-utils-remove-ctrl-m-filter|net-utils-run-program|net-utils-run-simple|net-utils-url-at-point|netrc-credentials|netrc-find-service-name|netrc-get|netrc-machine-user-or-password|netrc-machine|netrc-parse-services|netrc-parse|netrc-port-equal|netstat|network-connection-mode-setup|network-connection-mode|network-connection-reconnect|network-connection-to-service|network-connection|network-service-connection|network-stream-certificate|network-stream-command|network-stream-get-response|network-stream-open-plain|network-stream-open-shell|network-stream-open-starttls|network-stream-open-tls|new-fontset|new-frame|new-mode-local-bindings|newline-cache-check|newsticker--age|newsticker--buffer-beginning-of-feed|newsticker--buffer-beginning-of-item|newsticker--buffer-do-insert-text|newsticker--buffer-end-of-feed|newsticker--buffer-end-of-item|newsticker--buffer-get-feed-title-at-point|newsticker--buffer-get-item-title-at-point|newsticker--buffer-goto|newsticker--buffer-hideshow|newsticker--buffer-insert-all-items|newsticker--buffer-insert-item|newsticker--buffer-make-item-completely-visible|newsticker--buffer-redraw|newsticker--buffer-set-faces|newsticker--buffer-set-invisibility|newsticker--buffer-set-uptodate|newsticker--buffer-statistics|newsticker--cache-add|newsticker--cache-contains|newsticker--cache-dir|newsticker--cache-get-feed|newsticker--cache-item-compare-by-position|newsticker--cache-item-compare-by-time|newsticker--cache-item-compare-by-title|newsticker--cache-mark-expired|newsticker--cache-read-feed|newsticker--cache-read-version1|newsticker--cache-read|newsticker--cache-remove|newsticker--cache-replace-age|newsticker--cache-save-feed|newsticker--cache-save-version1|newsticker--cache-save|newsticker--cache-set-preformatted-contents|newsticker--cache-set-preformatted-title|newsticker--cache-sort)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:newsticker--cache-update|newsticker--count-grouped-feeds|newsticker--count-groups|newsticker--debug-msg|newsticker--decode-iso8601-date|newsticker--decode-rfc822-date|newsticker--desc|newsticker--display-jump|newsticker--display-scroll|newsticker--display-tick|newsticker--do-forget-preformatted|newsticker--do-mark-item-at-point-as-read|newsticker--do-print-extra-element|newsticker--do-run-auto-mark-filter|newsticker--do-xml-workarounds|newsticker--echo-area-clean-p|newsticker--enclosure|newsticker--extra|newsticker--forget-preformatted|newsticker--get-group-names|newsticker--get-icon-url-atom-1\\\\\\\\.0|newsticker--get-logo-url-atom-0\\\\\\\\.3|newsticker--get-logo-url-atom-1\\\\\\\\.0|newsticker--get-logo-url-rss-0\\\\\\\\.91|newsticker--get-logo-url-rss-0\\\\\\\\.92|newsticker--get-logo-url-rss-1\\\\\\\\.0|newsticker--get-logo-url-rss-2\\\\\\\\.0|newsticker--get-news-by-funcall|newsticker--get-news-by-url-callback|newsticker--get-news-by-url|newsticker--get-news-by-wget|newsticker--group-all-groups|newsticker--group-do-find-group|newsticker--group-do-get-group|newsticker--group-do-rename-group|newsticker--group-find-parent-group|newsticker--group-get-feeds|newsticker--group-get-group|newsticker--group-get-subgroups|newsticker--group-manage-orphan-feeds|newsticker--group-names|newsticker--group-remove-obsolete-feeds|newsticker--group-shift|newsticker--guid-to-string|newsticker--guid|newsticker--icon-read|newsticker--icons-dir|newsticker--image-download-by-url-callback|newsticker--image-download-by-url|newsticker--image-download-by-wget|newsticker--image-get|newsticker--image-read|newsticker--image-remove|newsticker--image-save|newsticker--image-sentinel|newsticker--images-dir|newsticker--imenu-create-index|newsticker--imenu-goto|newsticker--insert-enclosure|newsticker--insert-image|newsticker--link|newsticker--lists-intersect-p|newsticker--opml-import-outlines|newsticker--parse-atom-0\\\\\\\\.3|newsticker--parse-atom-1\\\\\\\\.0|newsticker--parse-generic-feed|newsticker--parse-generic-items|newsticker--parse-rss-0\\\\\\\\.91|newsticker--parse-rss-0\\\\\\\\.92|newsticker--parse-rss-1\\\\\\\\.0|newsticker--parse-rss-2\\\\\\\\.0|newsticker--pos|newsticker--preformatted-contents|newsticker--preformatted-title|newsticker--print-extra-elements|newsticker--process-auto-mark-filter-match|newsticker--real-feed-name|newsticker--remove-whitespace|newsticker--run-auto-mark-filter|newsticker--sentinel-work|newsticker--sentinel|newsticker--set-customvar-buffer|newsticker--set-customvar-formatting|newsticker--set-customvar-retrieval|newsticker--set-customvar-sorting|newsticker--set-customvar-ticker|newsticker--set-face-properties|newsticker--splicer|newsticker--start-feed|newsticker--stat-num-items-for-group|newsticker--stat-num-items-total|newsticker--stat-num-items|newsticker--stop-feed|newsticker--ticker-text-remove|newsticker--ticker-text-setup|newsticker--time|newsticker--title|newsticker--tree-widget-icon-create|newsticker--treeview-activate-node|newsticker--treeview-buffer-init|newsticker--treeview-count-node-items|newsticker--treeview-do-get-node-by-id|newsticker--treeview-do-get-node-of-feed|newsticker--treeview-first-feed|newsticker--treeview-frame-init|newsticker--treeview-get-current-node|newsticker--treeview-get-feed-vfeed|newsticker--treeview-get-first-child|newsticker--treeview-get-id|newsticker--treeview-get-last-child|newsticker--treeview-get-next-sibling|newsticker--treeview-get-next-uncle|newsticker--treeview-get-node-by-id|newsticker--treeview-get-node-of-feed|newsticker--treeview-get-other-tree|newsticker--treeview-get-prev-sibling|newsticker--treeview-get-prev-uncle|newsticker--treeview-get-second-child|newsticker--treeview-get-selected-item|newsticker--treeview-ids-eq|newsticker--treeview-item-buffer|newsticker--treeview-item-show-text|newsticker--treeview-item-show|newsticker--treeview-item-update|newsticker--treeview-item-window|newsticker--treeview-list-add-item|newsticker--treeview-list-all-items|newsticker--treeview-list-buffer|newsticker--treeview-list-clear-highlight|newsticker--treeview-list-clear|newsticker--treeview-list-compare-item-by-age-reverse|newsticker--treeview-list-compare-item-by-age|newsticker--treeview-list-compare-item-by-time-reverse|newsticker--treeview-list-compare-item-by-time|newsticker--treeview-list-compare-item-by-title-reverse|newsticker--treeview-list-compare-item-by-title|newsticker--treeview-list-feed-items|newsticker--treeview-list-highlight-start|newsticker--treeview-list-immortal-items|newsticker--treeview-list-items-v|newsticker--treeview-list-items-with-age-callback|newsticker--treeview-list-items-with-age|newsticker--treeview-list-items|newsticker--treeview-list-new-items|newsticker--treeview-list-obsolete-items|newsticker--treeview-list-select|newsticker--treeview-list-sort-by-column|newsticker--treeview-list-sort-items|newsticker--treeview-list-update-faces|newsticker--treeview-list-update-highlight|newsticker--treeview-list-update|newsticker--treeview-list-window|newsticker--treeview-load|newsticker--treeview-mark-item|newsticker--treeview-nodes-eq|newsticker--treeview-propertize-tag|newsticker--treeview-render-text|newsticker--treeview-restore-layout|newsticker--treeview-set-current-node|newsticker--treeview-tree-buffer|newsticker--treeview-tree-do-update-tags|newsticker--treeview-tree-expand-status|newsticker--treeview-tree-expand|newsticker--treeview-tree-get-tag|newsticker--treeview-tree-open-menu|newsticker--treeview-tree-update-highlight|newsticker--treeview-tree-update-tag|newsticker--treeview-tree-update-tags|newsticker--treeview-tree-update|newsticker--treeview-tree-window|newsticker--treeview-unfold-node|newsticker--treeview-virtual-feed-p|newsticker--treeview-window-init|newsticker--unxml-attribute|newsticker--unxml-node|newsticker--unxml|newsticker--update-process-ids|newsticker-add-url|newsticker-browse-url-item|newsticker-browse-url|newsticker-buffer-force-update|newsticker-buffer-update|newsticker-close-buffer|newsticker-customize|newsticker-download-enclosures|newsticker-download-images|newsticker-get-all-news|newsticker-get-news-at-point|newsticker-get-news|newsticker-group-add-group|newsticker-group-delete-group|newsticker-group-move-feed|newsticker-group-rename-group|newsticker-group-shift-feed-down|newsticker-group-shift-feed-up|newsticker-group-shift-group-down|newsticker-group-shift-group-up|newsticker-handle-url|newsticker-hide-all-desc|newsticker-hide-entry|newsticker-hide-extra|newsticker-hide-feed-desc|newsticker-hide-new-item-desc|newsticker-hide-old-item-desc|newsticker-hide-old-items|newsticker-htmlr-render|newsticker-item-not-immortal-p|newsticker-item-not-old-p|newsticker-mark-all-items-as-read|newsticker-mark-all-items-at-point-as-read-and-redraw|newsticker-mark-all-items-at-point-as-read|newsticker-mark-all-items-of-feed-as-read|newsticker-mark-item-at-point-as-immortal|newsticker-mark-item-at-point-as-read|newsticker-mode|newsticker-mouse-browse-url|newsticker-new-item-functions-sample|newsticker-next-feed-available-p|newsticker-next-feed|newsticker-next-item-available-p|newsticker-next-item-same-feed|newsticker-next-item|newsticker-next-new-item|newsticker-opml-export|newsticker-opml-import|newsticker-plainview|newsticker-previous-feed-available-p|newsticker-previous-feed|newsticker-previous-item-available-p|newsticker-previous-item|newsticker-previous-new-item|newsticker-retrieve-random-message|newsticker-running-p|newsticker-save-item|newsticker-set-auto-narrow-to-feed|newsticker-set-auto-narrow-to-item|newsticker-show-all-desc|newsticker-show-entry|newsticker-show-extra|newsticker-show-feed-desc|newsticker-show-new-item-desc|newsticker-show-news|newsticker-show-old-item-desc|newsticker-show-old-items|newsticker-start-ticker|newsticker-start|newsticker-stop-ticker|newsticker-stop|newsticker-ticker-running-p|newsticker-toggle-auto-narrow-to-feed|newsticker-toggle-auto-narrow-to-item|newsticker-treeview-browse-url-item|newsticker-treeview-browse-url|newsticker-treeview-get-news|newsticker-treeview-item-mode|newsticker-treeview-jump|newsticker-treeview-list-make-sort-button|newsticker-treeview-list-mode|newsticker-treeview-mark-item-old|newsticker-treeview-mark-list-items-old|newsticker-treeview-mode|newsticker-treeview-mouse-browse-url|newsticker-treeview-next-feed|newsticker-treeview-next-item|newsticker-treeview-next-new-or-immortal-item|newsticker-treeview-next-page|newsticker-treeview-prev-feed|newsticker-treeview-prev-item|newsticker-treeview-prev-new-or-immortal-item|newsticker-treeview-quit|newsticker-treeview-save-item|newsticker-treeview-save|newsticker-treeview-scroll-item|newsticker-treeview-show-item|newsticker-treeview-toggle-item-immortal|newsticker-treeview-tree-click|newsticker-treeview-tree-do-click|newsticker-treeview-update|newsticker-treeview|newsticker-w3m-show-inline-images|next-buffer|next-cdabbrev|next-completion|next-error-buffer-p|next-error-find-buffer|next-error-follow-minor-mode|next-error-follow-mode-post-command-hook|next-error-internal|next-error-no-select|next-error|next-file|next-ifdef|next-line-or-history-element|next-line|next-logical-line|next-match|next-method-p|next-multiframe-window|next-page|next-read-file-uses-dialog-p|nintersection|ninth|nndiary-generate-nov-databases|nndoc-add-type|nndraft-request-associate-buffer|nndraft-request-expire-articles|nnfolder-generate-active-file|nnheader-accept-process-output|nnheader-article-p|nnheader-article-to-file-alist|nnheader-be-verbose|nnheader-cancel-function-timers|nnheader-cancel-timer|nnheader-concat|nnheader-directory-articles|nnheader-directory-files-safe|nnheader-directory-files|nnheader-directory-regular-files|nnheader-fake-message-id-p|nnheader-file-error|nnheader-file-size|nnheader-file-to-group|nnheader-file-to-number|nnheader-find-etc-directory|nnheader-find-file-noselect|nnheader-find-nov-line|nnheader-fold-continuation-lines|nnheader-generate-fake-message-id|nnheader-get-lines-and-char|nnheader-get-report-string|nnheader-get-report|nnheader-group-pathname|nnheader-header-value|nnheader-init-server-buffer|nnheader-insert-article-line|nnheader-insert-buffer-substring|nnheader-insert-file-contents|nnheader-insert-head|nnheader-insert-header|nnheader-insert-nov-file|nnheader-insert-nov|nnheader-insert-references|nnheader-insert|nnheader-message-maybe|nnheader-message|nnheader-ms-strip-cr|nnheader-narrow-to-headers|nnheader-nov-delete-outside-range|nnheader-nov-field|nnheader-nov-parse-extra|nnheader-nov-read-integer|nnheader-nov-read-message-id|nnheader-nov-skip-field|nnheader-parse-head|nnheader-parse-naked-head|nnheader-parse-nov|nnheader-parse-overview-file|nnheader-re-read-dir|nnheader-remove-body|nnheader-remove-cr-followed-by-lf|nnheader-replace-chars-in-string|nnheader-replace-duplicate-chars-in-string|nnheader-replace-header|nnheader-replace-regexp|nnheader-replace-string|nnheader-report|nnheader-set-temp-buffer|nnheader-skeleton-replace|nnheader-strip-cr|nnheader-translate-file-chars|nnheader-update-marks-actions|nnheader-write-overview-file|nnmail-article-group|nnmail-message-id|nnmail-split-fancy|nnml-generate-nov-databases|nnvirtual-catchup-group|nnvirtual-convert-headers|nnvirtual-find-group-art|no-applicable-method|no-next-method|nonincremental-re-search-backward|nonincremental-re-search-forward|nonincremental-repeat-search-backward|nonincremental-repeat-search-forward|nonincremental-search-backward|nonincremental-search-forward|normal-about-screen|normal-erase-is-backspace-mode|normal-erase-is-backspace-setup-frame|normal-mouse-startup-screen|normal-no-mouse-startup-screen|normal-splash-screen|normal-top-level-add-subdirs-to-load-path|normal-top-level-add-to-load-path|normal-top-level|notany|notevery|notifications-on-action-signal|notifications-on-closed-signal|nreconc|nroff-backward-text-line|nroff-comment-indent|nroff-count-text-lines|nroff-electric-mode|nroff-electric-newline|nroff-forward-text-line|nroff-insert-comment-function|nroff-mode|nroff-outline-level|nroff-view|nset-difference|nset-exclusive-or|nslookup-host|nslookup-mode|nslookup|nsm-certificate-part|nsm-check-certificate|nsm-check-plain-connection|nsm-check-protocol|nsm-check-tls-connection|nsm-fingerprint-ok-p|nsm-fingerprint|nsm-format-certificate|nsm-host-settings|nsm-id|nsm-level|nsm-new-fingerprint-ok-p|nsm-parse-subject|nsm-query-user|nsm-query|nsm-read-settings|nsm-remove-permanent-setting|nsm-remove-temporary-setting|nsm-save-host|nsm-verify-connection|nsm-warnings-ok-p|nsm-write-settings|nsublis|nsubst-if-not|nsubst-if|nsubst|nsubstitute-if-not)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:nsubstitute-if|nsubstitute|nth-value|ntlm-ascii2unicode|ntlm-build-auth-request|ntlm-build-auth-response|ntlm-get-password-hashes|ntlm-md4hash|ntlm-smb-des-e-p16|ntlm-smb-des-e-p24|ntlm-smb-dohash|ntlm-smb-hash|ntlm-smb-owf-encrypt|ntlm-smb-passwd-hash|ntlm-smb-str-to-key|ntlm-string-lshift|ntlm-string-permute|ntlm-string-xor|ntlm-unicode2ascii|nullify-allout-prefix-data|number-at-point|number-to-register|nunion|nxml-enable-unicode-char-name-sets|nxml-glyph-display-string|nxml-mode|obj-of-class-p|objc-font-lock-keywords-2|objc-font-lock-keywords-3|objc-font-lock-keywords|objc-mode|object-add-to-list|object-assoc-list-safe|object-assoc-list|object-assoc|object-class-fast|object-class-name|object-class|object-name-string|object-name|object-of-class-p|object-p|object-print|object-remove-from-list|object-set-name-string|object-slots|object-write|occur-1|occur-accumulate-lines|occur-after-change-function|occur-cease-edit|occur-context-lines|occur-edit-mode|occur-engine-add-prefix|occur-engine-line|occur-engine|occur-find-match|occur-mode-display-occurrence|occur-mode-find-occurrence|occur-mode-goto-occurrence-other-window|occur-mode-goto-occurrence|occur-mode-mouse-goto|occur-mode|occur-next-error|occur-next|occur-prev|occur-read-primary-args|occur-rename-buffer|occur-revert-function|occur|octave--indent-new-comment-line|octave-add-log-current-defun|octave-beginning-of-defun|octave-beginning-of-line|octave-complete-symbol|octave-completing-read|octave-completion-at-point|octave-eldoc-function-signatures|octave-eldoc-function|octave-end-of-line|octave-eval-print-last-sexp|octave-fill-paragraph|octave-find-definition-default-filename|octave-find-definition|octave-font-lock-texinfo-comment|octave-function-file-comment|octave-function-file-p|octave-goto-function-definition|octave-help-mode|octave-help|octave-hide-process-buffer|octave-in-comment-p|octave-in-string-or-comment-p|octave-in-string-p|octave-indent-comment|octave-indent-defun|octave-indent-new-comment-line|octave-insert-defun|octave-kill-process|octave-lookfor|octave-looking-at-kw|octave-mark-block|octave-maybe-insert-continuation-string|octave-mode-menu|octave-mode|octave-next-code-line|octave-previous-code-line|octave-send-block|octave-send-buffer|octave-send-defun|octave-send-line|octave-send-region|octave-show-process-buffer|octave-skip-comment-forward|octave-smie-backward-token|octave-smie-forward-token|octave-smie-rules|octave-source-directories|octave-source-file|octave-submit-bug-report|octave-sync-function-file-names|octave-syntax-propertize-function|octave-syntax-propertize-sqs|octave-update-function-file-comment|oddp|opascal-block-start|opascal-char-token-at|opascal-charset-token-at|opascal-column-of|opascal-comment-block-end|opascal-comment-block-start|opascal-comment-content-start|opascal-comment-indent-of|opascal-composite-type-start|opascal-corrected-indentation|opascal-current-token|opascal-debug-goto-next-token|opascal-debug-goto-point|opascal-debug-goto-previous-token|opascal-debug-log|opascal-debug-show-current-string|opascal-debug-show-current-token|opascal-debug-token-string|opascal-debug-tokenize-buffer|opascal-debug-tokenize-region|opascal-debug-tokenize-window|opascal-else-start|opascal-enclosing-indent-of|opascal-ensure-buffer|opascal-explicit-token-at|opascal-fill-comment|opascal-find-current-body|opascal-find-current-def|opascal-find-current-xdef|opascal-find-unit-file|opascal-find-unit-in-directory|opascal-find-unit|opascal-group-end|opascal-group-start|opascal-in-token|opascal-indent-line|opascal-indent-of|opascal-is-block-after-expr-statement|opascal-is-directory|opascal-is-file|opascal-is-literal-end|opascal-is-simple-class-type|opascal-is-use-clause-end|opascal-is|opascal-line-indent-of|opascal-literal-end-pattern|opascal-literal-kind|opascal-literal-start-pattern|opascal-literal-stop-pattern|opascal-literal-token-at|opascal-log-msg|opascal-looking-at-string|opascal-match-token|opascal-mode|opascal-new-comment-line|opascal-next-line-start|opascal-next-token|opascal-next-visible-token|opascal-on-first-comment-line|opascal-open-group-indent|opascal-point-token-at|opascal-previous-indent-of|opascal-previous-token|opascal-progress-done|opascal-progress-start|opascal-save-excursion|opascal-search-directory|opascal-section-indent-of|opascal-set-token-end|opascal-set-token-kind|opascal-set-token-start|opascal-space-token-at|opascal-step-progress|opascal-stmt-line-indent-of|opascal-string-of|opascal-tab|opascal-token-at|opascal-token-end|opascal-token-kind|opascal-token-of|opascal-token-start|opascal-token-string|opascal-word-token-at|open-font|open-gnutls-stream|open-line|open-protocol-stream|open-rectangle-line|open-rectangle|open-tls-stream|operate-on-rectangle|optimize-char-table|oref-default|oref|org-2ft|org-N-empty-lines-before-current|org-activate-angle-links|org-activate-bracket-links|org-activate-code|org-activate-dates|org-activate-footnote-links|org-activate-mark|org-activate-plain-links|org-activate-tags|org-activate-target-links|org-adaptive-fill-function|org-add-angle-brackets|org-add-archive-files|org-add-hook|org-add-link-props|org-add-link-type|org-add-log-note|org-add-log-setup|org-add-note|org-add-planning-info|org-add-prop-inherited|org-add-props|org-advertized-archive-subtree|org-agenda-check-for-timestamp-as-reason-to-ignore-todo-item|org-agenda-columns|org-agenda-file-p|org-agenda-file-to-front|org-agenda-files|org-agenda-list-stuck-projects|org-agenda-list|org-agenda-prepare-buffers|org-agenda-set-restriction-lock|org-agenda-to-appt|org-agenda|org-align-all-tags|org-align-tags-here|org-all-targets|org-apply-on-list|org-apps-regexp-alist|org-archive-subtree-default-with-confirmation|org-archive-subtree-default|org-archive-subtree|org-archive-to-archive-sibling|org-ascii-export-as-ascii|org-ascii-export-to-ascii|org-ascii-publish-to-ascii|org-ascii-publish-to-latin1|org-ascii-publish-to-utf8|org-assign-fast-keys|org-at-TBLFM-p|org-at-block-p|org-at-clock-log-p|org-at-comment-p|org-at-date-range-p|org-at-drawer-p|org-at-heading-or-item-p|org-at-heading-p|org-at-item-bullet-p|org-at-item-checkbox-p|org-at-item-counter-p|org-at-item-description-p|org-at-item-p|org-at-item-timer-p|org-at-property-p|org-at-regexp-p|org-at-table-hline-p|org-at-table-p|org-at-table\\\\\\\\.el-p|org-at-target-p|org-at-timestamp-p|org-attach|org-auto-fill-function|org-auto-repeat-maybe|org-babel--shell-command-on-region|org-babel-active-location-p|org-babel-balanced-split|org-babel-check-confirm-evaluate|org-babel-check-evaluate|org-babel-check-src-block|org-babel-chomp|org-babel-combine-header-arg-lists|org-babel-comint-buffer-livep|org-babel-comint-eval-invisibly-and-wait-for-file|org-babel-comint-in-buffer|org-babel-comint-input-command|org-babel-comint-wait-for-output|org-babel-comint-with-output|org-babel-confirm-evaluate|org-babel-current-result-hash|org-babel-del-hlines|org-babel-demarcate-block|org-babel-describe-bindings|org-babel-detangle|org-babel-disassemble-tables|org-babel-do-in-edit-buffer|org-babel-do-key-sequence-in-edit-buffer|org-babel-do-load-languages|org-babel-edit-distance|org-babel-enter-header-arg-w-completion|org-babel-eval-error-notify|org-babel-eval-read-file|org-babel-eval-wipe-error-buffer|org-babel-eval|org-babel-examplize-region|org-babel-execute-buffer|org-babel-execute-maybe|org-babel-execute-safely-maybe|org-babel-execute-src-block-maybe|org-babel-execute-src-block|org-babel-execute-subtree|org-babel-execute:emacs-lisp|org-babel-exp-code|org-babel-exp-do-export|org-babel-exp-get-export-buffer|org-babel-exp-in-export-file|org-babel-exp-process-buffer|org-babel-exp-results|org-babel-exp-src-block|org-babel-expand-body:emacs-lisp|org-babel-expand-body:generic|org-babel-expand-noweb-references|org-babel-expand-src-block-maybe|org-babel-expand-src-block|org-babel-find-file-noselect-refresh|org-babel-find-named-block|org-babel-find-named-result|org-babel-format-result|org-babel-get-colnames|org-babel-get-header|org-babel-get-inline-src-block-matches|org-babel-get-lob-one-liner-matches|org-babel-get-rownames|org-babel-get-src-block-info|org-babel-goto-named-result|org-babel-goto-named-src-block|org-babel-goto-src-block-head|org-babel-hash-at-point|org-babel-header-arg-expand|org-babel-hide-all-hashes|org-babel-hide-hash|org-babel-hide-result-toggle-maybe|org-babel-hide-result-toggle|org-babel-import-elisp-from-file|org-babel-in-example-or-verbatim|org-babel-initiate-session|org-babel-insert-header-arg|org-babel-insert-result|org-babel-join-splits-near-ch|org-babel-load-file|org-babel-load-in-session-maybe|org-babel-load-in-session|org-babel-lob-execute-maybe|org-babel-lob-execute|org-babel-lob-get-info|org-babel-lob-ingest|org-babel-local-file-name|org-babel-map-call-lines|org-babel-map-executables|org-babel-map-inline-src-blocks|org-babel-map-src-blocks|org-babel-mark-block|org-babel-merge-params|org-babel-named-data-regexp-for-name|org-babel-named-src-block-regexp-for-name|org-babel-next-src-block|org-babel-noweb-p|org-babel-noweb-wrap|org-babel-number-p|org-babel-open-src-block-result|org-babel-params-from-properties|org-babel-parse-header-arguments|org-babel-parse-inline-src-block-match|org-babel-parse-multiple-vars|org-babel-parse-src-block-match|org-babel-pick-name|org-babel-pop-to-session-maybe|org-babel-pop-to-session|org-babel-previous-src-block|org-babel-process-file-name|org-babel-process-params|org-babel-put-colnames|org-babel-put-rownames|org-babel-read-link|org-babel-read-list|org-babel-read-result|org-babel-read-table|org-babel-read|org-babel-reassemble-table|org-babel-ref-at-ref-p|org-babel-ref-goto-headline-id|org-babel-ref-headline-body|org-babel-ref-index-list|org-babel-ref-parse|org-babel-ref-resolve|org-babel-ref-split-args|org-babel-remove-result|org-babel-remove-temporary-directory|org-babel-result-cond|org-babel-result-end|org-babel-result-hide-all|org-babel-result-hide-spec|org-babel-result-names|org-babel-result-to-file|org-babel-script-escape|org-babel-set-current-result-hash|org-babel-sha1-hash|org-babel-show-result-all|org-babel-spec-to-string|org-babel-speed-command-activate|org-babel-speed-command-hook|org-babel-src-block-names|org-babel-string-read|org-babel-switch-to-session-with-code|org-babel-switch-to-session|org-babel-table-truncate-at-newline|org-babel-tangle-clean|org-babel-tangle-collect-blocks|org-babel-tangle-comment-links|org-babel-tangle-file|org-babel-tangle-jump-to-org|org-babel-tangle-publish|org-babel-tangle-single-block|org-babel-tangle|org-babel-temp-file|org-babel-tramp-handle-call-process-region|org-babel-trim|org-babel-update-block-body|org-babel-view-src-block-info|org-babel-when-in-src-block|org-babel-where-is-src-block-head|org-babel-where-is-src-block-result|org-babel-with-temp-filebuffer|org-back-over-empty-lines|org-back-to-heading|org-backward-element|org-backward-heading-same-level|org-backward-paragraph|org-backward-sentence|org-base-buffer|org-batch-agenda-csv|org-batch-agenda|org-batch-store-agenda-views|org-bbdb-anniversaries|org-beamer-export-as-latex|org-beamer-export-to-latex|org-beamer-export-to-pdf|org-beamer-insert-options-template|org-beamer-mode|org-beamer-publish-to-latex|org-beamer-publish-to-pdf|org-beamer-select-environment|org-before-change-function|org-before-first-heading-p|org-beginning-of-dblock|org-beginning-of-item-list|org-beginning-of-item|org-beginning-of-line|org-between-regexps-p|org-block-map|org-block-todo-from-checkboxes|org-block-todo-from-children-or-siblings-or-parent|org-bookmark-jump-unhide|org-bound-and-true-p|org-buffer-list|org-buffer-narrowed-p|org-buffer-property-keys|org-cached-entry-get|org-calendar-goto-agenda|org-calendar-holiday|org-calendar-select-mouse|org-calendar-select|org-call-for-shift-select|org-call-with-arg|org-called-interactively-p|org-capture-import-remember-templates|org-capture-string|org-capture|org-cdlatex-math-modify|org-cdlatex-mode|org-cdlatex-underscore-caret|org-change-tag-in-region|org-char-to-string|org-check-after-date|org-check-agenda-file|org-check-and-save-marker|org-check-before-date|org-check-before-invisible-edit|org-check-dates-range|org-check-deadlines|org-check-external-command|org-check-for-hidden|org-check-running-clock|org-check-version|org-clean-visibility-after-subtree-move|org-clock-cancel|org-clock-display|org-clock-get-clocktable|org-clock-goto|org-clock-in-last|org-clock-in|org-clock-is-active|org-clock-out|org-clock-persistence-insinuate|org-clock-remove-overlays|org-clock-report|org-clock-sum|org-clock-update-time-maybe|org-clocktable-shift|org-clocktable-try-shift|org-clone-local-variables)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:org-clone-subtree-with-time-shift|org-closest-date|org-columns-compute|org-columns-get-format-and-top-level|org-columns-number-to-string|org-columns-remove-overlays|org-columns|org-combine-plists|org-command-at-point|org-comment-line-break-function|org-comment-or-uncomment-region|org-compatible-face|org-complete-expand-structure-template|org-completing-read-no-i|org-completing-read|org-compute-latex-and-related-regexp|org-compute-property-at-point|org-content|org-context-p|org-context|org-contextualize-keys|org-contextualize-validate-key|org-convert-to-odd-levels|org-convert-to-oddeven-levels|org-copy-face|org-copy-special|org-copy-subtree|org-copy-visible|org-copy|org-count-lines|org-count|org-create-customize-menu|org-create-dblock|org-create-formula--latex-header|org-create-formula-image-with-dvipng|org-create-formula-image-with-imagemagick|org-create-formula-image|org-create-math-formula|org-create-multibrace-regexp|org-ctrl-c-ctrl-c|org-ctrl-c-minus|org-ctrl-c-ret|org-ctrl-c-star|org-current-effective-time|org-current-level|org-current-line-string|org-current-line|org-current-time|org-cursor-to-region-beginning|org-customize|org-cut-special|org-cut-subtree|org-cycle-agenda-files|org-cycle-hide-archived-subtrees|org-cycle-hide-drawers|org-cycle-hide-inline-tasks|org-cycle-internal-global|org-cycle-internal-local|org-cycle-item-indentation|org-cycle-level|org-cycle-list-bullet|org-cycle-show-empty-lines|org-cycle|org-date-from-calendar|org-date-to-gregorian|org-datetree-find-date-create|org-days-to-iso-week|org-days-to-time|org-dblock-update|org-dblock-write:clocktable|org-dblock-write:columnview|org-deadline-close|org-deadline|org-decompose-region|org-default-apps|org-defkey|org-defvaralias|org-delete-all|org-delete-backward-char|org-delete-char|org-delete-directory|org-delete-property-globally|org-delete-property|org-demote-subtree|org-demote|org-detach-overlay|org-diary-sexp-entry|org-diary-to-ical-string|org-diary|org-display-custom-time|org-display-inline-images|org-display-inline-modification-hook|org-display-inline-remove-overlay|org-display-outline-path|org-display-warning|org-do-demote|org-do-emphasis-faces|org-do-latex-and-related|org-do-occur|org-do-promote|org-do-remove-indentation|org-do-sort|org-do-wrap|org-down-element|org-drag-element-backward|org-drag-element-forward|org-drag-line-backward|org-drag-line-forward|org-duration-string-to-minutes|org-dvipng-color-format|org-dvipng-color|org-edit-agenda-file-list|org-edit-fixed-width-region|org-edit-special|org-edit-src-abort|org-edit-src-code|org-edit-src-continue|org-edit-src-exit|org-edit-src-find-buffer|org-edit-src-find-region-and-lang|org-edit-src-get-indentation|org-edit-src-get-label-format|org-edit-src-get-lang|org-edit-src-save|org-element-at-point|org-element-context|org-element-interpret-data|org-email-link-description|org-emphasize|org-end-of-item-list|org-end-of-item|org-end-of-line|org-end-of-meta-data-and-drawers|org-end-of-subtree|org-entities-create-table|org-entities-help|org-entity-get-representation|org-entity-get|org-entity-latex-math-p|org-entry-add-to-multivalued-property|org-entry-beginning-position|org-entry-blocked-p|org-entry-delete|org-entry-end-position|org-entry-get-multivalued-property|org-entry-get-with-inheritance|org-entry-get|org-entry-is-done-p|org-entry-is-todo-p|org-entry-member-in-multivalued-property|org-entry-properties|org-entry-protect-space|org-entry-put-multivalued-property|org-entry-put|org-entry-remove-from-multivalued-property|org-entry-restore-space|org-escape-code-in-region|org-escape-code-in-string|org-eval-in-calendar|org-eval-in-environment|org-eval|org-evaluate-time-range|org-every|org-export-as|org-export-dispatch|org-export-insert-default-template|org-export-replace-region-by|org-export-string-as|org-export-to-buffer|org-export-to-file|org-extract-attributes|org-extract-log-state-settings|org-face-from-face-or-color|org-fast-tag-insert|org-fast-tag-selection|org-fast-tag-show-exit|org-fast-todo-selection|org-feed-goto-inbox|org-feed-show-raw-feed|org-feed-update-all|org-feed-update|org-file-apps-entry-match-against-dlink-p|org-file-complete-link|org-file-contents|org-file-equal-p|org-file-image-p|org-file-menu-entry|org-file-remote-p|org-files-list|org-fill-line-break-nobreak-p|org-fill-paragraph-with-timestamp-nobreak-p|org-fill-paragraph|org-fill-template|org-find-base-buffer-visiting|org-find-dblock|org-find-entry-with-id|org-find-exact-heading-in-directory|org-find-exact-headline-in-buffer|org-find-file-at-mouse|org-find-if|org-find-invisible-foreground|org-find-invisible|org-find-library-dir|org-find-olp|org-find-overlays|org-find-text-property-in-string|org-find-visible|org-first-headline-recenter|org-first-sibling-p|org-fit-window-to-buffer|org-fix-decoded-time|org-fix-indentation|org-fix-position-after-promote|org-fix-tags-on-the-fly|org-fixup-indentation|org-fixup-message-id-for-http|org-flag-drawer|org-flag-heading|org-flag-subtree|org-float-time|org-floor\\\\\\\\*|org-follow-timestamp-link|org-font-lock-add-priority-faces|org-font-lock-add-tag-faces|org-font-lock-ensure|org-font-lock-hook|org-fontify-entities|org-fontify-like-in-org-mode|org-fontify-meta-lines-and-blocks-1|org-fontify-meta-lines-and-blocks|org-footnote-action|org-footnote-all-labels|org-footnote-at-definition-p|org-footnote-at-reference-p|org-footnote-auto-adjust-maybe|org-footnote-create-definition|org-footnote-delete-definitions|org-footnote-delete-references|org-footnote-delete|org-footnote-get-definition|org-footnote-get-next-reference|org-footnote-goto-definition|org-footnote-goto-local-insertion-point|org-footnote-goto-previous-reference|org-footnote-in-valid-context-p|org-footnote-new|org-footnote-next-reference-or-definition|org-footnote-normalize-label|org-footnote-normalize|org-footnote-renumber-fn:N|org-footnote-unique-label|org-force-cycle-archived|org-force-self-insert|org-format-latex-as-mathml|org-format-latex-mathml-available-p|org-format-latex|org-format-outline-path|org-format-seconds|org-forward-element|org-forward-heading-same-level|org-forward-paragraph|org-forward-sentence|org-get-agenda-file-buffer|org-get-alist-option|org-get-at-bol|org-get-buffer-for-internal-link|org-get-buffer-tags|org-get-category|org-get-checkbox-statistics-face|org-get-compact-tod|org-get-cursor-date|org-get-date-from-calendar|org-get-deadline-time|org-get-entry|org-get-export-keywords|org-get-heading|org-get-indentation|org-get-indirect-buffer|org-get-last-sibling|org-get-level-face|org-get-limited-outline-regexp|org-get-local-tags-at|org-get-local-tags|org-get-local-variables|org-get-location|org-get-next-sibling|org-get-org-file|org-get-outline-path|org-get-packages-alist|org-get-previous-line-level|org-get-priority|org-get-property-block|org-get-repeat|org-get-scheduled-time|org-get-string-indentation|org-get-tag-face|org-get-tags-at|org-get-tags-string|org-get-tags|org-get-todo-face|org-get-todo-sequence-head|org-get-todo-state|org-get-valid-level|org-get-wdays|org-get-x-clipboard-compat|org-get-x-clipboard|org-git-version|org-global-cycle|org-global-tags-completion-table|org-goto-calendar|org-goto-first-child|org-goto-left|org-goto-line|org-goto-local-auto-isearch|org-goto-local-search-headings|org-goto-map|org-goto-marker-or-bmk|org-goto-quit|org-goto-ret|org-goto-right|org-goto-sibling|org-goto|org-heading-components|org-hh:mm-string-to-minutes|org-hidden-tree-error|org-hide-archived-subtrees|org-hide-block-all|org-hide-block-toggle-all|org-hide-block-toggle-maybe|org-hide-block-toggle|org-hide-wide-columns|org-highlight-new-match|org-hours-to-clocksum-string|org-html-convert-region-to-html|org-html-export-as-html|org-html-export-to-html|org-html-htmlize-generate-css|org-html-publish-to-html|org-icalendar-combine-agenda-files|org-icalendar-export-agenda-files|org-icalendar-export-to-ics|org-icompleting-read|org-id-copy|org-id-find-id-file|org-id-find|org-id-get-create|org-id-get-with-outline-drilling|org-id-get-with-outline-path-completion|org-id-get|org-id-goto|org-id-new|org-id-store-link|org-id-update-id-locations|org-ido-switchb|org-image-file-name-regexp|org-imenu-get-tree|org-imenu-new-marker|org-in-block-p|org-in-clocktable-p|org-in-commented-line|org-in-drawer-p|org-in-fixed-width-region-p|org-in-indented-comment-line|org-in-invisibility-spec-p|org-in-item-p|org-in-regexp|org-in-src-block-p|org-in-subtree-not-table-p|org-in-verbatim-emphasis|org-inc-effort|org-indent-block|org-indent-drawer|org-indent-item-tree|org-indent-item|org-indent-line-to|org-indent-line|org-indent-mode|org-indent-region|org-indent-to-column|org-info|org-inhibit-invisibility|org-insert-all-links|org-insert-columns-dblock|org-insert-comment|org-insert-drawer|org-insert-heading-after-current|org-insert-heading-respect-content|org-insert-heading|org-insert-item|org-insert-link-global|org-insert-link|org-insert-property-drawer|org-insert-subheading|org-insert-time-stamp|org-insert-todo-heading-respect-content|org-insert-todo-heading|org-insert-todo-subheading|org-inside-LaTeX-fragment-p|org-inside-latex-macro-p|org-install-agenda-files-menu|org-invisible-p2|org-irc-store-link|org-iread-file-name|org-isearch-end|org-isearch-post-command|org-iswitchb-completing-read|org-iswitchb|org-item-beginning-re|org-item-re|org-key|org-kill-is-subtree-p|org-kill-line|org-kill-new|org-kill-note-or-show-branches|org-last|org-latex-color-format|org-latex-color|org-latex-convert-region-to-latex|org-latex-export-as-latex|org-latex-export-to-latex|org-latex-export-to-pdf|org-latex-packages-to-string|org-latex-publish-to-latex|org-latex-publish-to-pdf|org-let|org-let2|org-level-increment|org-link-display-format|org-link-escape|org-link-expand-abbrev|org-link-fontify-links-to-this-file|org-link-prettify|org-link-search|org-link-try-special-completion|org-link-unescape-compound|org-link-unescape-single-byte-sequence|org-link-unescape|org-list-at-regexp-after-bullet-p|org-list-bullet-string|org-list-context|org-list-delete-item|org-list-get-all-items|org-list-get-bottom-point|org-list-get-bullet|org-list-get-checkbox|org-list-get-children|org-list-get-counter|org-list-get-first-item|org-list-get-ind|org-list-get-item-begin|org-list-get-item-end-before-blank|org-list-get-item-end|org-list-get-item-number|org-list-get-last-item|org-list-get-list-begin|org-list-get-list-end|org-list-get-list-type|org-list-get-next-item|org-list-get-nth|org-list-get-parent|org-list-get-prev-item|org-list-get-subtree|org-list-get-tag|org-list-get-top-point|org-list-has-child-p|org-list-in-valid-context-p|org-list-inc-bullet-maybe|org-list-indent-item-generic|org-list-insert-item|org-list-insert-radio-list|org-list-item-body-column|org-list-item-trim-br|org-list-make-subtree|org-list-parents-alist|org-list-prevs-alist|org-list-repair|org-list-search-backward|org-list-search-forward|org-list-search-generic|org-list-send-item|org-list-send-list|org-list-separating-blank-lines-number|org-list-set-bullet|org-list-set-checkbox|org-list-set-ind|org-list-set-item-visibility|org-list-set-nth|org-list-struct-apply-struct|org-list-struct-assoc-end|org-list-struct-fix-box|org-list-struct-fix-bul|org-list-struct-fix-ind|org-list-struct-fix-item-end|org-list-struct-indent|org-list-struct-outdent|org-list-swap-items|org-list-to-generic|org-list-to-html|org-list-to-latex|org-list-to-subtree|org-list-to-texinfo|org-list-use-alpha-bul-p|org-list-write-struct|org-load-modules-maybe|org-load-noerror-mustsuffix|org-local-logging|org-log-into-drawer|org-looking-at-p|org-looking-back|org-macro--collect-macros|org-macro-expand|org-macro-initialize-templates|org-macro-replace-all|org-make-link-regexps|org-make-link-string|org-make-options-regexp|org-make-org-heading-search-string|org-make-parameter-alist|org-make-tags-matcher|org-make-target-link-regexp|org-make-tdiff-string|org-map-dblocks|org-map-entries|org-map-region|org-map-tree|org-mark-element|org-mark-ring-goto|org-mark-ring-push|org-mark-subtree|org-match-any-p|org-match-line|org-match-sparse-tree|org-match-string-no-properties|org-matcher-time|org-maybe-intangible|org-md-convert-region-to-md|org-md-export-as-markdown|org-md-export-to-markdown|org-meta-return|org-metadown|org-metaleft|org-metaright|org-metaup|org-minutes-to-clocksum-string|org-minutes-to-hh:mm-string|org-mobile-pull|org-mobile-push|org-mode-flyspell-verify|org-mode-restart|org-mode|org-modifier-cursor-error)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:org-modify-ts-extra|org-move-item-down|org-move-item-up|org-move-subtree-down|org-move-subtree-up|org-move-to-column|org-narrow-to-block|org-narrow-to-element|org-narrow-to-subtree|org-next-block|org-next-item|org-next-link|org-no-popups|org-no-properties|org-no-read-only|org-no-warnings|org-normalize-color|org-not-nil|org-notes-order-reversed-p|org-number-sequence|org-occur-in-agenda-files|org-occur-link-in-agenda-files|org-occur-next-match|org-occur|org-odt-convert|org-odt-export-as-odf-and-open|org-odt-export-as-odf|org-odt-export-to-odt|org-offer-links-in-entry|org-olpath-completing-read|org-on-heading-p|org-on-target-p|org-op-to-function|org-open-at-mouse|org-open-at-point-global|org-open-at-point|org-open-file-with-emacs|org-open-file-with-system|org-open-file|org-open-line|org-open-link-from-string|org-optimize-window-after-visibility-change|org-order-calendar-date-args|org-org-export-as-org|org-org-export-to-org|org-org-menu|org-org-publish-to-org|org-outdent-item-tree|org-outdent-item|org-outline-level|org-outline-overlay-data|org-overlay-before-string|org-overlay-display|org-overview|org-parse-arguments|org-parse-time-string|org-paste-special|org-paste-subtree|org-pcomplete-case-double|org-pcomplete-initial|org-plist-delete|org-plot\\\\\\\\/gnuplot|org-point-at-end-of-empty-headline|org-point-in-group|org-pop-to-buffer-same-window|org-pos-in-match-range|org-prepare-dblock|org-preserve-lc|org-preview-latex-fragment|org-previous-block|org-previous-item|org-previous-line-empty-p|org-previous-link|org-print-speed-command|org-priority-down|org-priority-up|org-priority|org-promote-subtree|org-promote|org-propertize|org-property-action|org-property-get-allowed-values|org-property-inherit-p|org-property-next-allowed-value|org-property-or-variable-value|org-property-previous-allowed-value|org-property-values|org-protect-slash|org-publish-all|org-publish-current-file|org-publish-current-project|org-publish-project|org-publish|org-quote-csv-field|org-quote-vert|org-raise-scripts|org-re-property|org-re-timestamp|org-re|org-read-agenda-file-list|org-read-date-analyze|org-read-date-display|org-read-date-get-relative|org-read-date|org-read-property-name|org-read-property-value|org-rear-nonsticky-at|org-recenter-calendar|org-redisplay-inline-images|org-reduce|org-reduced-level|org-refile--get-location|org-refile-cache-check-set|org-refile-cache-clear|org-refile-cache-get|org-refile-cache-put|org-refile-check-position|org-refile-get-location|org-refile-get-targets|org-refile-goto-last-stored|org-refile-marker|org-refile-new-child|org-refile|org-refresh-category-properties|org-refresh-properties|org-reftex-citation|org-region-active-p|org-reinstall-markers-in-region|org-release-buffers|org-release|org-reload|org-remap|org-remove-angle-brackets|org-remove-double-quotes|org-remove-empty-drawer-at|org-remove-empty-overlays-at|org-remove-file|org-remove-flyspell-overlays-in|org-remove-font-lock-display-properties|org-remove-from-invisibility-spec|org-remove-if-not|org-remove-if|org-remove-indentation|org-remove-inline-images|org-remove-keyword-keys|org-remove-latex-fragment-image-overlays|org-remove-occur-highlights|org-remove-tabs|org-remove-timestamp-with-keyword|org-remove-uninherited-tags|org-replace-escapes|org-replace-match-keep-properties|org-require-autoloaded-modules|org-reset-checkbox-state-subtree|org-resolve-clocks|org-restart-font-lock|org-return-indent|org-return|org-reveal|org-reverse-string|org-revert-all-org-buffers|org-run-like-in-org-mode|org-save-all-org-buffers|org-save-markers-in-region|org-save-outline-visibility|org-sbe|org-scan-tags|org-schedule|org-search-not-self|org-search-view|org-select-frame-set-input-focus|org-self-insert-command|org-set-current-tags-overlay|org-set-effort|org-set-emph-re|org-set-font-lock-defaults|org-set-frame-title|org-set-local|org-set-modules|org-set-outline-overlay-data|org-set-packages-alist|org-set-property-and-value|org-set-property-function|org-set-property|org-set-regexps-and-options-for-tags|org-set-regexps-and-options|org-set-startup-visibility|org-set-tag-faces|org-set-tags-command|org-set-tags-to|org-set-tags|org-set-transient-map|org-set-visibility-according-to-property|org-setup-comments-handling|org-setup-filling|org-shiftcontroldown|org-shiftcontrolleft|org-shiftcontrolright|org-shiftcontrolup|org-shiftdown|org-shiftleft|org-shiftmetadown|org-shiftmetaleft|org-shiftmetaright|org-shiftmetaup|org-shiftright|org-shiftselect-error|org-shifttab|org-shiftup|org-shorten-string|org-show-block-all|org-show-context|org-show-empty-lines-in-parent|org-show-entry|org-show-hidden-entry|org-show-priority|org-show-siblings|org-show-subtree|org-show-todo-tree|org-skip-over-state-notes|org-skip-whitespace|org-small-year-to-year|org-some|org-sort-entries|org-sort-list|org-sort-remove-invisible|org-sort|org-sparse-tree|org-speed-command-activate|org-speed-command-default-hook|org-speed-command-help|org-speed-move-safe|org-speedbar-set-agenda-restriction|org-splice-latex-header|org-split-string|org-src-associate-babel-session|org-src-babel-configure-edit-buffer|org-src-construct-edit-buffer-name|org-src-do-at-code-block|org-src-do-key-sequence-at-code-block|org-src-edit-buffer-p|org-src-font-lock-fontify-block|org-src-fontify-block|org-src-fontify-buffer|org-src-get-lang-mode|org-src-in-org-buffer|org-src-mode-configure-edit-buffer|org-src-mode|org-src-native-tab-command-maybe|org-src-switch-to-buffer|org-src-tangle|org-store-agenda-views|org-store-link-props|org-store-link|org-store-log-note|org-store-new-agenda-file-list|org-string-match-p|org-string-nw-p|org-string-width|org-string<=|org-string<>|org-string>|org-string>=|org-sublist|org-submit-bug-report|org-substitute-posix-classes|org-subtree-end-visible-p|org-switch-to-buffer-other-window|org-switchb|org-table-align|org-table-begin|org-table-blank-field|org-table-convert-region|org-table-convert|org-table-copy-down|org-table-copy-region|org-table-create-or-convert-from-region|org-table-create-with-table\\\\\\\\.el|org-table-create|org-table-current-dline|org-table-cut-region|org-table-delete-column|org-table-edit-field|org-table-edit-formulas|org-table-end|org-table-eval-formula|org-table-export|org-table-field-info|org-table-get-stored-formulas|org-table-goto-column|org-table-hline-and-move|org-table-import|org-table-insert-column|org-table-insert-hline|org-table-insert-row|org-table-iterate-buffer-tables|org-table-iterate|org-table-justify-field-maybe|org-table-kill-row|org-table-map-tables|org-table-maybe-eval-formula|org-table-maybe-recalculate-line|org-table-move-column-left|org-table-move-column-right|org-table-move-column|org-table-move-row-down|org-table-move-row-up|org-table-move-row|org-table-next-field|org-table-next-row|org-table-p|org-table-paste-rectangle|org-table-previous-field|org-table-recalculate-buffer-tables|org-table-recalculate|org-table-recognize-table\\\\\\\\.el|org-table-rotate-recalc-marks|org-table-set-constants|org-table-sort-lines|org-table-sum|org-table-to-lisp|org-table-toggle-coordinate-overlays|org-table-toggle-formula-debugger|org-table-wrap-region|org-tag-inherit-p|org-tags-completion-function|org-tags-expand|org-tags-sparse-tree|org-tags-view|org-tbl-menu|org-texinfo-convert-region-to-texinfo|org-texinfo-publish-to-texinfo|org-thing-at-point|org-time-from-absolute|org-time-stamp-format|org-time-stamp-inactive|org-time-stamp-to-now|org-time-stamp|org-time-string-to-absolute|org-time-string-to-seconds|org-time-string-to-time|org-time-today|org-time<|org-time<=|org-time<>|org-time=|org-time>|org-time>=|org-timer-change-times-in-region|org-timer-item|org-timer-set-timer|org-timer-start|org-timer|org-timestamp-change|org-timestamp-down-day|org-timestamp-down|org-timestamp-format|org-timestamp-has-time-p|org-timestamp-split-range|org-timestamp-translate|org-timestamp-up-day|org-timestamp-up|org-today|org-todo-list|org-todo-trigger-tag-changes|org-todo-yesterday|org-todo|org-toggle-archive-tag|org-toggle-checkbox|org-toggle-comment|org-toggle-custom-properties-visibility|org-toggle-fixed-width-section|org-toggle-heading|org-toggle-inline-images|org-toggle-item|org-toggle-link-display|org-toggle-ordered-property|org-toggle-pretty-entities|org-toggle-sticky-agenda|org-toggle-tag|org-toggle-tags-groups|org-toggle-time-stamp-overlays|org-toggle-timestamp-type|org-tr-level|org-translate-link-from-planner|org-translate-link|org-translate-time|org-transpose-element|org-transpose-words|org-tree-to-indirect-buffer|org-trim|org-truely-invisible-p|org-try-cdlatex-tab|org-try-structure-completion|org-unescape-code-in-region|org-unescape-code-in-string|org-unfontify-region|org-unindent-buffer|org-uniquify-alist|org-uniquify|org-unlogged-message|org-unmodified|org-up-element|org-up-heading-all|org-up-heading-safe|org-update-all-dblocks|org-update-checkbox-count-maybe|org-update-checkbox-count|org-update-dblock|org-update-parent-todo-statistics|org-update-property-plist|org-update-radio-target-regexp|org-update-statistics-cookies|org-uuidgen-p|org-version-check|org-version|org-with-gensyms|org-with-limited-levels|org-with-point-at|org-with-remote-undo|org-with-silent-modifications|org-with-wide-buffer|org-without-partial-completion|org-wrap|org-xemacs-without-invisibility|org-xor|org-yank-folding-would-swallow-text|org-yank-generic|org-yank|org<>|orgstruct\\\\\\\\+\\\\\\\\+-mode|orgstruct-error|orgstruct-make-binding|orgstruct-mode|orgstruct-setup|orgtbl-mode|orgtbl-to-csv|orgtbl-to-generic|orgtbl-to-html|orgtbl-to-latex|orgtbl-to-orgtbl|orgtbl-to-texinfo|orgtbl-to-tsv|oset-default|oset|other-frame|other-window-for-scrolling|outline-back-to-heading|outline-backward-same-level|outline-demote|outline-end-of-heading|outline-end-of-subtree|outline-flag-region|outline-flag-subtree|outline-font-lock-face|outline-forward-same-level|outline-get-last-sibling|outline-get-next-sibling|outline-head-from-level|outline-headers-as-kill|outline-insert-heading|outline-invent-heading|outline-invisible-p|outline-isearch-open-invisible|outline-level|outline-map-region|outline-mark-subtree|outline-minor-mode|outline-mode|outline-move-subtree-down|outline-move-subtree-up|outline-next-heading|outline-next-preface|outline-next-visible-heading|outline-on-heading-p|outline-previous-heading|outline-previous-visible-heading|outline-promote|outline-reveal-toggle-invisible|outline-show-heading|outline-toggle-children|outline-up-heading|outlineify-sticky|outlinify-sticky|overlay-lists|overload-docstring-extension|overload-obsoleted-by|overload-that-obsolete|package--ac-desc-extras--cmacro|package--ac-desc-extras|package--ac-desc-kind--cmacro|package--ac-desc-kind|package--ac-desc-reqs--cmacro|package--ac-desc-reqs|package--ac-desc-summary--cmacro|package--ac-desc-summary|package--ac-desc-version--cmacro|package--ac-desc-version|package--add-to-archive-contents|package--alist-to-plist-args|package--archive-file-exists-p|package--bi-desc-reqs--cmacro|package--bi-desc-reqs|package--bi-desc-summary--cmacro|package--bi-desc-summary|package--bi-desc-version--cmacro|package--bi-desc-version|package--check-signature|package--compile|package--description-file|package--display-verify-error|package--download-one-archive|package--from-builtin|package--has-keyword-p|package--list-loaded-files|package--make-autoloads-and-stuff|package--mapc|package--prepare-dependencies|package--push|package--read-archive-file|package--with-work-buffer|package--write-file-no-coding|package-activate-1|package-activate|package-all-keywords|package-archive-base|package-autoload-ensure-default-file|package-buffer-info|package-built-in-p|package-compute-transaction|package-delete|package-desc--keywords|package-desc-archive--cmacro|package-desc-archive|package-desc-create--cmacro|package-desc-create|package-desc-dir--cmacro|package-desc-dir|package-desc-extras--cmacro|package-desc-extras|package-desc-from-define|package-desc-full-name|package-desc-kind--cmacro|package-desc-kind|package-desc-name--cmacro|package-desc-name|package-desc-p--cmacro|package-desc-p|package-desc-reqs--cmacro|package-desc-reqs|package-desc-signed--cmacro|package-desc-signed|package-desc-status|package-desc-suffix|package-desc-summary--cmacro|package-desc-summary|package-desc-version--cmacro|package-desc-version|package-disabled-p|package-download-transaction|package-generate-autoloads|package-generate-description-file|package-import-keyring|package-install-button-action|package-install-file|package-install-from-archive)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:package-install-from-buffer|package-install|package-installed-p|package-keyword-button-action|package-list-packages-no-fetch|package-list-packages|package-load-all-descriptors|package-load-descriptor|package-make-ac-desc--cmacro|package-make-ac-desc|package-make-builtin--cmacro|package-make-builtin|package-make-button|package-menu--archive-predicate|package-menu--description-predicate|package-menu--find-upgrades|package-menu--generate|package-menu--name-predicate|package-menu--print-info|package-menu--refresh|package-menu--status-predicate|package-menu--version-predicate|package-menu-backup-unmark|package-menu-describe-package|package-menu-execute|package-menu-filter|package-menu-get-status|package-menu-mark-delete|package-menu-mark-install|package-menu-mark-obsolete-for-deletion|package-menu-mark-unmark|package-menu-mark-upgrades|package-menu-mode|package-menu-quick-help|package-menu-refresh|package-menu-view-commentary|package-process-define-package|package-read-all-archive-contents|package-read-archive-contents|package-read-from-string|package-refresh-contents|package-show-package-list|package-strip-rcs-id|package-tar-file-info|package-unpack|package-untar-buffer|package-version-join|pages-copy-header-and-position|pages-directory-address-mode|pages-directory-for-addresses|pages-directory-goto-with-mouse|pages-directory-goto|pages-directory-mode|pages-directory|pairlis|paragraph-indent-minor-mode|paragraph-indent-text-mode|parse-iso8601-time-string|parse-time-string-chars|parse-time-string|parse-time-tokenize|pascal-beg-of-defun|pascal-build-defun-re|pascal-calculate-indent|pascal-capitalize-keywords|pascal-change-keywords|pascal-comment-area|pascal-comp-defun|pascal-complete-word|pascal-completion|pascal-completions-at-point|pascal-declaration-beg|pascal-declaration-end|pascal-downcase-keywords|pascal-end-of-defun|pascal-end-of-statement|pascal-func-completion|pascal-get-completion-decl|pascal-get-default-symbol|pascal-get-lineup-indent|pascal-goto-defun|pascal-hide-other-defuns|pascal-indent-case|pascal-indent-command|pascal-indent-comment|pascal-indent-declaration|pascal-indent-level|pascal-indent-line|pascal-indent-paramlist|pascal-insert-block|pascal-keyword-completion|pascal-mark-defun|pascal-mode|pascal-outline-change|pascal-outline-goto-defun|pascal-outline-mode|pascal-outline-next-defun|pascal-outline-prev-defun|pascal-outline|pascal-set-auto-comments|pascal-show-all|pascal-show-completions|pascal-star-comment|pascal-string-diff|pascal-type-completion|pascal-uncomment-area|pascal-upcase-keywords|pascal-var-completion|pascal-within-string|password-cache-add|password-cache-remove|password-in-cache-p|password-read-and-add|password-read-from-cache|password-read|password-reset|pcase--and|pcase--app-subst-match|pcase--app-subst-rest|pcase--eval|pcase--expand|pcase--fgrep|pcase--flip|pcase--funcall|pcase--if|pcase--let\\\\\\\\*|pcase--macroexpand|pcase--mark-used|pcase--match|pcase--mutually-exclusive-p|pcase--self-quoting-p|pcase--small-branch-p|pcase--split-equal|pcase--split-match|pcase--split-member|pcase--split-pred|pcase--split-rest|pcase--trivial-upat-p|pcase--u|pcase--u1|pcase-codegen|pcase-defmacro|pcase-dolist|pcase-exhaustive|pcase-let\\\\\\\\*|pcase-let|pcomplete\\\\\\\\/ack-grep|pcomplete\\\\\\\\/ack|pcomplete\\\\\\\\/ag|pcomplete\\\\\\\\/bzip2|pcomplete\\\\\\\\/cd|pcomplete\\\\\\\\/chgrp|pcomplete\\\\\\\\/chown|pcomplete\\\\\\\\/cvs|pcomplete\\\\\\\\/erc-mode\\\\\\\\/CLEARTOPIC|pcomplete\\\\\\\\/erc-mode\\\\\\\\/CTCP|pcomplete\\\\\\\\/erc-mode\\\\\\\\/DCC|pcomplete\\\\\\\\/erc-mode\\\\\\\\/DEOP|pcomplete\\\\\\\\/erc-mode\\\\\\\\/DESCRIBE|pcomplete\\\\\\\\/erc-mode\\\\\\\\/IDLE|pcomplete\\\\\\\\/erc-mode\\\\\\\\/KICK|pcomplete\\\\\\\\/erc-mode\\\\\\\\/LEAVE|pcomplete\\\\\\\\/erc-mode\\\\\\\\/LOAD|pcomplete\\\\\\\\/erc-mode\\\\\\\\/ME|pcomplete\\\\\\\\/erc-mode\\\\\\\\/MODE|pcomplete\\\\\\\\/erc-mode\\\\\\\\/MSG|pcomplete\\\\\\\\/erc-mode\\\\\\\\/NAMES|pcomplete\\\\\\\\/erc-mode\\\\\\\\/NOTICE|pcomplete\\\\\\\\/erc-mode\\\\\\\\/NOTIFY|pcomplete\\\\\\\\/erc-mode\\\\\\\\/OP|pcomplete\\\\\\\\/erc-mode\\\\\\\\/PART|pcomplete\\\\\\\\/erc-mode\\\\\\\\/QUERY|pcomplete\\\\\\\\/erc-mode\\\\\\\\/SAY|pcomplete\\\\\\\\/erc-mode\\\\\\\\/SOUND|pcomplete\\\\\\\\/erc-mode\\\\\\\\/TOPIC|pcomplete\\\\\\\\/erc-mode\\\\\\\\/UNIGNORE|pcomplete\\\\\\\\/erc-mode\\\\\\\\/WHOIS|pcomplete\\\\\\\\/erc-mode\\\\\\\\/complete-command|pcomplete\\\\\\\\/eshell-mode\\\\\\\\/eshell-debug|pcomplete\\\\\\\\/eshell-mode\\\\\\\\/export|pcomplete\\\\\\\\/eshell-mode\\\\\\\\/setq|pcomplete\\\\\\\\/eshell-mode\\\\\\\\/unset|pcomplete\\\\\\\\/gdb|pcomplete\\\\\\\\/gzip|pcomplete\\\\\\\\/kill|pcomplete\\\\\\\\/make|pcomplete\\\\\\\\/mount|pcomplete\\\\\\\\/org-mode\\\\\\\\/block-option\\\\\\\\/clocktable|pcomplete\\\\\\\\/org-mode\\\\\\\\/block-option\\\\\\\\/src|pcomplete\\\\\\\\/org-mode\\\\\\\\/drawer|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/author|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/bind|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/date|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/email|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/exclude_tags|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/filetags|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/infojs_opt|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/language|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/options|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/priorities|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/select_tags|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/startup|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/tags|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option\\\\\\\\/title|pcomplete\\\\\\\\/org-mode\\\\\\\\/file-option|pcomplete\\\\\\\\/org-mode\\\\\\\\/link|pcomplete\\\\\\\\/org-mode\\\\\\\\/prop|pcomplete\\\\\\\\/org-mode\\\\\\\\/searchhead|pcomplete\\\\\\\\/org-mode\\\\\\\\/tag|pcomplete\\\\\\\\/org-mode\\\\\\\\/tex|pcomplete\\\\\\\\/org-mode\\\\\\\\/todo|pcomplete\\\\\\\\/pushd|pcomplete\\\\\\\\/rm|pcomplete\\\\\\\\/rmdir|pcomplete\\\\\\\\/rpm|pcomplete\\\\\\\\/scp|pcomplete\\\\\\\\/ssh|pcomplete\\\\\\\\/tar|pcomplete\\\\\\\\/time|pcomplete\\\\\\\\/tlmgr|pcomplete\\\\\\\\/umount|pcomplete\\\\\\\\/which|pcomplete\\\\\\\\/xargs|pcomplete--common-suffix|pcomplete--entries|pcomplete--help|pcomplete--here|pcomplete--test|pcomplete-actual-arg|pcomplete-all-entries|pcomplete-arg|pcomplete-begin|pcomplete-comint-setup|pcomplete-command-name|pcomplete-completions-at-point|pcomplete-completions|pcomplete-continue|pcomplete-dirs-or-entries|pcomplete-dirs|pcomplete-do-complete|pcomplete-entries|pcomplete-erc-all-nicks|pcomplete-erc-channels|pcomplete-erc-command-name|pcomplete-erc-commands|pcomplete-erc-nicks|pcomplete-erc-not-ops|pcomplete-erc-ops|pcomplete-erc-parse-arguments|pcomplete-erc-setup|pcomplete-event-matches-key-specifier-p|pcomplete-executables|pcomplete-expand-and-complete|pcomplete-expand|pcomplete-find-completion-function|pcomplete-help|pcomplete-here\\\\\\\\*|pcomplete-here|pcomplete-insert-entry|pcomplete-list|pcomplete-match-beginning|pcomplete-match-end|pcomplete-match-string|pcomplete-match|pcomplete-next-arg|pcomplete-opt|pcomplete-parse-arguments|pcomplete-parse-buffer-arguments|pcomplete-parse-comint-arguments|pcomplete-process-result|pcomplete-quote-argument|pcomplete-read-event|pcomplete-restore-windows|pcomplete-reverse|pcomplete-shell-setup|pcomplete-show-completions|pcomplete-std-complete|pcomplete-stub|pcomplete-test|pcomplete-uniqify-list|pcomplete-unquote-argument|pcomplete|pdb|pending-delete-mode|perl-backward-to-noncomment|perl-backward-to-start-of-continued-exp|perl-beginning-of-function|perl-calculate-indent|perl-comment-indent|perl-continuation-line-p|perl-current-defun-name|perl-electric-noindent-p|perl-electric-terminator|perl-end-of-function|perl-font-lock-syntactic-face-function|perl-hanging-paren-p|perl-indent-command|perl-indent-exp|perl-indent-line|perl-indent-new-calculate|perl-mark-function|perl-mode|perl-outline-level|perl-quote-syntax-table|perl-syntax-propertize-function|perl-syntax-propertize-special-constructs|perldb|picture-backward-clear-column|picture-backward-column|picture-beginning-of-line|picture-clear-column|picture-clear-line|picture-clear-rectangle-to-register|picture-clear-rectangle|picture-current-line|picture-delete-char|picture-draw-rectangle|picture-duplicate-line|picture-end-of-line|picture-forward-column|picture-insert-rectangle|picture-insert|picture-mode-exit|picture-mode|picture-motion-reverse|picture-motion|picture-mouse-set-point|picture-move-down|picture-move-up|picture-move|picture-movement-down|picture-movement-left|picture-movement-ne|picture-movement-nw|picture-movement-right|picture-movement-se|picture-movement-sw|picture-movement-up|picture-newline|picture-open-line|picture-replace-match|picture-self-insert|picture-set-motion|picture-set-tab-stops|picture-snarf-rectangle|picture-tab-search|picture-tab|picture-update-desired-column|picture-yank-at-click|picture-yank-rectangle-from-register|picture-yank-rectangle|pike-font-lock-keywords-2|pike-font-lock-keywords-3|pike-font-lock-keywords|pike-mode|ping|plain-TeX-mode|plain-tex-mode|play-sound-internal|plstore-delete|plstore-find|plstore-get-file|plstore-mode|plstore-open|plstore-put|plstore-save|plusp|po-find-charset|po-find-file-coding-system-guts|po-find-file-coding-system|point-at-bol|point-at-eol|point-to-register|pong-display-options|pong-init-buffer|pong-init|pong-move-down|pong-move-left|pong-move-right|pong-move-up|pong-pause|pong-quit|pong-resume|pong-update-bat|pong-update-game|pong-update-score|pong|pop-global-mark|pop-tag-mark|pop-to-buffer-same-window|pop-to-mark-command|pop3-movemail|popup-menu-normalize-position|popup-menu|position-if-not|position-if|position|posn-set-point|post-read-decode-hz|pp-buffer|pp-display-expression|pp-eval-expression|pp-eval-last-sexp|pp-last-sexp|pp-macroexpand-expression|pp-macroexpand-last-sexp|pp-to-string|pr-alist-custom-set|pr-article-date|pr-auto-mode-p|pr-call-process|pr-choice-alist|pr-command|pr-complete-alist|pr-create-interface|pr-customize|pr-delete-file-if-exists|pr-delete-file|pr-despool-preview|pr-despool-print|pr-despool-ps-print|pr-despool-using-ghostscript|pr-do-update-menus|pr-dosify-file-name|pr-eval-alist|pr-eval-local-alist|pr-eval-setting-alist|pr-even-or-odd-pages|pr-expand-file-name|pr-file-list|pr-find-buffer-visiting|pr-find-command|pr-get-symbol|pr-global-menubar|pr-gnus-lpr|pr-gnus-print|pr-help|pr-i-directory|pr-i-ps-send|pr-insert-button|pr-insert-checkbox|pr-insert-italic|pr-insert-menu|pr-insert-radio-button|pr-insert-section-1|pr-insert-section-2|pr-insert-section-3|pr-insert-section-4|pr-insert-section-5|pr-insert-section-6|pr-insert-section-7|pr-insert-toggle|pr-interactive-dir-args|pr-interactive-dir|pr-interactive-n-up-file|pr-interactive-n-up-inout|pr-interactive-n-up|pr-interactive-ps-dir-args|pr-interactive-regexp|pr-interface-directory|pr-interface-help|pr-interface-infile|pr-interface-outfile|pr-interface-preview|pr-interface-printify|pr-interface-ps-print|pr-interface-ps|pr-interface-quit|pr-interface-save|pr-interface-txt-print|pr-interface|pr-keep-region-active|pr-kill-help|pr-kill-local-variable|pr-local-variable|pr-lpr-message-from-summary|pr-menu-alist|pr-menu-bind|pr-menu-char-height|pr-menu-char-width|pr-menu-create|pr-menu-get-item|pr-menu-index|pr-menu-lock|pr-menu-lookup|pr-menu-position|pr-menu-set-item-name|pr-menu-set-ps-title|pr-menu-set-txt-title|pr-menu-set-utility-title|pr-mh-current-message|pr-mh-lpr-1|pr-mh-lpr-2|pr-mh-print-1|pr-mh-print-2|pr-mode-alist-p|pr-mode-lpr|pr-mode-print|pr-path-command|pr-printify-buffer|pr-printify-directory|pr-printify-region|pr-prompt-gs|pr-prompt-region|pr-prompt|pr-ps-buffer-preview|pr-ps-buffer-print|pr-ps-buffer-ps-print|pr-ps-buffer-using-ghostscript|pr-ps-directory-preview|pr-ps-directory-print|pr-ps-directory-ps-print|pr-ps-directory-using-ghostscript|pr-ps-fast-fire|pr-ps-file-list|pr-ps-file-preview|pr-ps-file-print|pr-ps-file-ps-print|pr-ps-file-up-preview|pr-ps-file-up-ps-print|pr-ps-file-using-ghostscript|pr-ps-file|pr-ps-infile-preprint|pr-ps-message-from-summary|pr-ps-mode-preview|pr-ps-mode-print|pr-ps-mode-ps-print|pr-ps-mode-using-ghostscript|pr-ps-mode|pr-ps-name-custom-set|pr-ps-name|pr-ps-outfile-preprint|pr-ps-preview|pr-ps-print|pr-ps-region-preview|pr-ps-region-print|pr-ps-region-ps-print|pr-ps-region-using-ghostscript|pr-ps-set-printer|pr-ps-set-utility|pr-ps-using-ghostscript|pr-ps-utility-args|pr-ps-utility-custom-set|pr-ps-utility-process|pr-ps-utility|pr-read-string|pr-region-active-p|pr-region-active-string|pr-region-active-symbol|pr-remove-nil-from-list|pr-rmail-lpr|pr-rmail-print|pr-save-file-modes|pr-set-dir-args|pr-set-keymap-name|pr-set-keymap-parents|pr-set-n-up-and-filename|pr-set-outfilename|pr-set-ps-dir-args|pr-setup|pr-show-lpr-setup|pr-show-pr-setup|pr-show-ps-setup|pr-show-setup|pr-standard-file-name|pr-switches-string|pr-switches|pr-text2ps|pr-toggle-duplex-menu|pr-toggle-duplex|pr-toggle-faces-menu|pr-toggle-faces|pr-toggle-file-duplex-menu|pr-toggle-file-duplex)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:pr-toggle-file-landscape-menu|pr-toggle-file-landscape|pr-toggle-file-tumble-menu|pr-toggle-file-tumble|pr-toggle-ghostscript-menu|pr-toggle-ghostscript|pr-toggle-header-frame-menu|pr-toggle-header-frame|pr-toggle-header-menu|pr-toggle-header|pr-toggle-landscape-menu|pr-toggle-landscape|pr-toggle-line-menu|pr-toggle-line|pr-toggle-lock-menu|pr-toggle-lock|pr-toggle-mode-menu|pr-toggle-mode|pr-toggle-region-menu|pr-toggle-region|pr-toggle-spool-menu|pr-toggle-spool|pr-toggle-tumble-menu|pr-toggle-tumble|pr-toggle-upside-down-menu|pr-toggle-upside-down|pr-toggle-zebra-menu|pr-toggle-zebra|pr-toggle|pr-txt-buffer|pr-txt-directory|pr-txt-fast-fire|pr-txt-mode|pr-txt-name-custom-set|pr-txt-name|pr-txt-print|pr-txt-region|pr-txt-set-printer|pr-unixify-file-name|pr-update-checkbox|pr-update-menus|pr-update-mode-line|pr-update-radio-button|pr-update-var|pr-using-ghostscript-p|pr-visible-p|pr-vm-lpr|pr-vm-print|pr-widget-field-action|pre-write-encode-hz|preceding-sexp|prefer-coding-system|prepare-abbrev-list-buffer|prepend-to-buffer|prepend-to-register|prettify-symbols--compose-symbol|prettify-symbols--make-keywords|prettify-symbols-mode-set-explicitly|prettify-symbols-mode|previous-buffer|previous-completion|previous-error-no-select|previous-error|previous-ifdef|previous-line-or-history-element|previous-line|previous-logical-line|previous-multiframe-window|previous-page|prin1-char|princ-list|print-buffer|print-help-return-message|print-region-1|print-region-new-buffer|print-region|printify-region|proced-<|proced-auto-update-timer|proced-children-alist|proced-children-pids|proced-do-mark-all|proced-do-mark|proced-filter-children|proced-filter-interactive|proced-filter-parents|proced-filter|proced-format-args|proced-format-interactive|proced-format-start|proced-format-time|proced-format-tree|proced-format-ttname|proced-format|proced-header-line|proced-help|proced-insert-mark|proced-log-summary|proced-log|proced-mark-all|proced-mark-children|proced-mark-parents|proced-mark-process-alist|proced-mark|proced-marked-processes|proced-marker-regexp|proced-menu|proced-mode|proced-move-to-goal-column|proced-omit-process|proced-omit-processes|proced-pid-at-point|proced-process-attributes|proced-process-tree-internal|proced-process-tree|proced-refine|proced-renice|proced-revert|proced-send-signal|proced-sort-header|proced-sort-interactive|proced-sort-p|proced-sort-pcpu|proced-sort-pid|proced-sort-pmem|proced-sort-start|proced-sort-time|proced-sort-user|proced-sort|proced-string-lessp|proced-success-message|proced-time-lessp|proced-toggle-auto-update|proced-toggle-marks|proced-toggle-tree|proced-tree-insert|proced-tree|proced-undo|proced-unmark-all|proced-unmark-backward|proced-unmark|proced-update|proced-why|proced-with-processes-buffer|proced-xor|proced|process-filter-multibyte-p|process-inherit-coding-system-flag|process-kill-without-query|process-menu-delete-process|process-menu-mode|process-menu-visit-buffer|proclaim|produce-allout-mode-menubar-entries|profiler-calltree-build-1|profiler-calltree-build-unified|profiler-calltree-build|profiler-calltree-children--cmacro|profiler-calltree-children|profiler-calltree-compute-percentages|profiler-calltree-count--cmacro|profiler-calltree-count-percent--cmacro|profiler-calltree-count-percent|profiler-calltree-count|profiler-calltree-count<|profiler-calltree-count>|profiler-calltree-depth|profiler-calltree-entry--cmacro|profiler-calltree-entry|profiler-calltree-find|profiler-calltree-leaf-p|profiler-calltree-p--cmacro|profiler-calltree-p|profiler-calltree-parent--cmacro|profiler-calltree-parent|profiler-calltree-sort|profiler-calltree-walk|profiler-compare-logs|profiler-compare-profiles|profiler-cpu-log|profiler-cpu-profile|profiler-cpu-running-p|profiler-cpu-start|profiler-cpu-stop|profiler-ensure-string|profiler-find-profile-other-frame|profiler-find-profile-other-window|profiler-find-profile|profiler-fixup-backtrace|profiler-fixup-entry|profiler-fixup-log|profiler-fixup-profile|profiler-format-entry|profiler-format-number|profiler-format-percent|profiler-format|profiler-make-calltree--cmacro|profiler-make-calltree|profiler-make-profile--cmacro|profiler-make-profile|profiler-memory-log|profiler-memory-profile|profiler-memory-running-p|profiler-memory-start|profiler-memory-stop|profiler-profile-diff-p--cmacro|profiler-profile-diff-p|profiler-profile-log--cmacro|profiler-profile-log|profiler-profile-tag--cmacro|profiler-profile-tag|profiler-profile-timestamp--cmacro|profiler-profile-timestamp|profiler-profile-type--cmacro|profiler-profile-type|profiler-profile-version--cmacro|profiler-profile-version|profiler-read-profile|profiler-report-ascending-sort|profiler-report-calltree-at-point|profiler-report-collapse-entry|profiler-report-compare-profile|profiler-report-cpu|profiler-report-descending-sort|profiler-report-describe-entry|profiler-report-expand-entry|profiler-report-find-entry|profiler-report-header-line-format|profiler-report-insert-calltree-children|profiler-report-insert-calltree|profiler-report-line-format|profiler-report-make-buffer-name|profiler-report-make-entry-part|profiler-report-make-name-part|profiler-report-memory|profiler-report-menu|profiler-report-mode|profiler-report-move-to-entry|profiler-report-next-entry|profiler-report-previous-entry|profiler-report-profile-other-frame|profiler-report-profile-other-window|profiler-report-profile|profiler-report-render-calltree-1|profiler-report-render-calltree|profiler-report-render-reversed-calltree|profiler-report-rerender-calltree|profiler-report-setup-buffer-1|profiler-report-setup-buffer|profiler-report-toggle-entry|profiler-report-write-profile|profiler-report|profiler-reset|profiler-running-p|profiler-start|profiler-stop|profiler-write-profile|prog-indent-sexp|progress-reporter-do-update|progv|project-add-file|project-compile-project|project-compile-target|project-debug-target|project-delete-target|project-dist-files|project-edit-file-target|project-interactive-select-target|project-make-dist|project-new-target-custom|project-new-target|project-remove-file|project-rescan|project-run-target|prolog-Info-follow-nearest-node|prolog-atleast-version|prolog-atom-under-point|prolog-beginning-of-clause|prolog-beginning-of-predicate|prolog-bsts|prolog-buffer-module|prolog-build-info-alist|prolog-build-prolog-command|prolog-clause-end|prolog-clause-info|prolog-clause-start|prolog-comment-limits|prolog-compile-buffer|prolog-compile-file|prolog-compile-predicate|prolog-compile-region|prolog-compile-string|prolog-consult-buffer|prolog-consult-compile-buffer|prolog-consult-compile-file|prolog-consult-compile-filter|prolog-consult-compile-predicate|prolog-consult-compile-region|prolog-consult-compile|prolog-consult-file|prolog-consult-predicate|prolog-consult-region|prolog-consult-string|prolog-debug-off|prolog-debug-on|prolog-disable-sicstus-sd|prolog-do-auto-fill|prolog-edit-menu-insert-move|prolog-edit-menu-runtime|prolog-electric--colon|prolog-electric--dash|prolog-electric--dot|prolog-electric--if-then-else|prolog-electric--underscore|prolog-enable-sicstus-sd|prolog-end-of-clause|prolog-end-of-predicate|prolog-ensure-process|prolog-face-name-p|prolog-fill-paragraph|prolog-find-documentation|prolog-find-term|prolog-find-unmatched-paren|prolog-find-value-by-system|prolog-font-lock-keywords|prolog-font-lock-object-matcher|prolog-get-predspec|prolog-goto-predicate-info|prolog-goto-prolog-process-buffer|prolog-guess-fill-prefix|prolog-help-apropos|prolog-help-info|prolog-help-on-predicate|prolog-help-online|prolog-in-object|prolog-indent-buffer|prolog-indent-predicate|prolog-inferior-buffer|prolog-inferior-guess-flavor|prolog-inferior-menu-all|prolog-inferior-menu|prolog-inferior-mode|prolog-inferior-self-insert-command|prolog-input-filter|prolog-insert-module-modeline|prolog-insert-next-clause|prolog-insert-predicate-template|prolog-insert-predspec|prolog-mark-clause|prolog-mark-predicate|prolog-menu-help|prolog-menu|prolog-mode-keybindings-common|prolog-mode-keybindings-edit|prolog-mode-keybindings-inferior|prolog-mode-variables|prolog-mode-version|prolog-mode|prolog-old-process-buffer|prolog-old-process-file|prolog-old-process-predicate|prolog-old-process-region|prolog-paren-balance|prolog-parse-sicstus-compilation-errors|prolog-post-self-insert|prolog-pred-end|prolog-pred-start|prolog-process-insert-string|prolog-program-name|prolog-program-switches|prolog-prompt-regexp|prolog-read-predicate|prolog-replace-in-string|prolog-smie-backward-token|prolog-smie-forward-token|prolog-smie-rules|prolog-temporary-file|prolog-toggle-sicstus-sd|prolog-trace-off|prolog-trace-on|prolog-uncomment-region|prolog-variables-to-anonymous|prolog-view-predspec|prolog-zip-off|prolog-zip-on|prompt-for-change-log-name|propertized-buffer-identification|prune-directory-list|ps-alist-position|ps-avg-char-width|ps-background-image|ps-background-pages|ps-background-text|ps-background|ps-basic-plot-str|ps-basic-plot-string|ps-basic-plot-whitespace|ps-begin-file|ps-begin-job|ps-begin-page|ps-boolean-capitalized|ps-boolean-constant|ps-build-reference-face-lists|ps-color-device|ps-color-scale|ps-color-values|ps-comment-string|ps-continue-line|ps-control-character|ps-count-lines-preprint|ps-count-lines|ps-del|ps-despool|ps-do-despool|ps-end-job|ps-end-page|ps-end-sheet|ps-extend-face-list|ps-extend-face|ps-extension-bit|ps-face-attribute-list|ps-face-attributes|ps-face-background-color-p|ps-face-background-name|ps-face-background|ps-face-bold-p|ps-face-box-p|ps-face-color-p|ps-face-extract-color|ps-face-foreground-color-p|ps-face-foreground-name|ps-face-italic-p|ps-face-overline-p|ps-face-strikeout-p|ps-face-underlined-p|ps-find-wrappoint|ps-float-format|ps-flush-output|ps-font-alist|ps-font-lock-face-attributes|ps-font-number|ps-font|ps-fonts|ps-format-color|ps-frame-parameter|ps-generate-header-line|ps-generate-header|ps-generate-postscript-with-faces|ps-generate-postscript-with-faces1|ps-generate-postscript|ps-generate|ps-get-boundingbox|ps-get-buffer-name|ps-get-font-size|ps-get-page-dimensions|ps-get-size|ps-get|ps-header-dirpart|ps-header-page|ps-header-sheet|ps-init-output-queue|ps-insert-file|ps-insert-string|ps-kill-emacs-check|ps-line-height|ps-line-lengths-internal|ps-line-lengths|ps-lookup|ps-map-face|ps-mark-active-p|ps-message-log-max|ps-mode--syntax-propertize-special|ps-mode-RE|ps-mode-backward-delete-char|ps-mode-center|ps-mode-comment-out-region|ps-mode-epsf-rich|ps-mode-epsf-sparse|ps-mode-heapsort|ps-mode-latin-extended|ps-mode-main|ps-mode-octal-buffer|ps-mode-octal-region|ps-mode-other-newline|ps-mode-print-buffer|ps-mode-print-region|ps-mode-right|ps-mode-show-version|ps-mode-smie-rules|ps-mode-submit-bug-report|ps-mode-syntax-propertize|ps-mode-target-column|ps-mode-uncomment-region|ps-mode|ps-mule-begin-job|ps-mule-end-job|ps-mule-initialize|ps-n-up-columns|ps-n-up-end|ps-n-up-filling|ps-n-up-landscape|ps-n-up-lines|ps-n-up-missing|ps-n-up-printing|ps-n-up-repeat|ps-n-up-xcolumn|ps-n-up-xline|ps-n-up-xstart|ps-n-up-ycolumn|ps-n-up-yline|ps-n-up-ystart|ps-nb-pages-buffer|ps-nb-pages-region|ps-nb-pages|ps-next-line|ps-next-page|ps-output-boolean|ps-output-frame-properties|ps-output-prologue|ps-output-string-prim|ps-output-string|ps-output|ps-page-dimensions-get-height|ps-page-dimensions-get-media|ps-page-dimensions-get-width|ps-page-number|ps-plot-region|ps-plot-string|ps-plot-with-face|ps-plot|ps-print-buffer-with-faces|ps-print-buffer|ps-print-customize|ps-print-ensure-fontified|ps-print-page-p|ps-print-preprint-region|ps-print-preprint|ps-print-quote|ps-print-region-with-faces|ps-print-region|ps-print-sheet-p|ps-print-with-faces|ps-print-without-faces|ps-printing-region|ps-prologue-file|ps-put|ps-remove-duplicates|ps-restore-selected-pages|ps-rgb-color|ps-run-boundingbox|ps-run-buffer|ps-run-cleanup|ps-run-clear|ps-run-goto-error|ps-run-kill|ps-run-make-tmp-filename|ps-run-mode|ps-run-mouse-goto-error|ps-run-quit|ps-run-region|ps-run-running|ps-run-send-string|ps-run-start|ps-screen-to-bit-face|ps-select-font|ps-selected-pages|ps-set-bg|ps-set-color|ps-set-face-attribute|ps-set-face-bold|ps-set-face-italic|ps-set-face-underline|ps-set-font|ps-setup|ps-size-scale|ps-skip-newline|ps-space-width|ps-spool-buffer-with-faces|ps-spool-buffer|ps-spool-region-with-faces|ps-spool-region|ps-spool-with-faces|ps-spool-without-faces|ps-time-stamp-hh:mm:ss|ps-time-stamp-iso8601)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:ps-time-stamp-locale-default|ps-time-stamp-mon-dd-yyyy|ps-time-stamp-yyyy-mm-dd|ps-title-line-height|ps-value-string|ps-value|psetf|psetq|push-mark-command|pushnew|put-unicode-property-internal|pwd|python-check|python-comint-output-filter-function|python-comint-postoutput-scroll-to-bottom|python-completion-at-point|python-completion-complete-at-point|python-define-auxiliary-skeleton|python-docstring-at-p|python-eldoc--get-doc-at-point|python-eldoc-at-point|python-eldoc-function|python-electric-pair-string-delimiter|python-ffap-module-path|python-fill-comment|python-fill-decorator|python-fill-paragraph|python-fill-paren|python-fill-string|python-font-lock-syntactic-face-function|python-imenu--build-tree|python-imenu--put-parent|python-imenu-create-flat-index|python-imenu-create-index|python-imenu-format-item-label|python-imenu-format-parent-item-jump-label|python-imenu-format-parent-item-label|python-indent-calculate-indentation|python-indent-calculate-levels|python-indent-context|python-indent-dedent-line-backspace|python-indent-dedent-line|python-indent-guess-indent-offset|python-indent-line-function|python-indent-line|python-indent-post-self-insert-function|python-indent-region|python-indent-shift-left|python-indent-shift-right|python-indent-toggle-levels|python-info-assignment-continuation-line-p|python-info-beginning-of-backslash|python-info-beginning-of-block-p|python-info-beginning-of-statement-p|python-info-block-continuation-line-p|python-info-closing-block-message|python-info-closing-block|python-info-continuation-line-p|python-info-current-defun|python-info-current-line-comment-p|python-info-current-line-empty-p|python-info-current-symbol|python-info-dedenter-opening-block-message|python-info-dedenter-opening-block-position|python-info-dedenter-opening-block-positions|python-info-dedenter-statement-p|python-info-encoding-from-cookie|python-info-encoding|python-info-end-of-block-p|python-info-end-of-statement-p|python-info-line-ends-backslash-p|python-info-looking-at-beginning-of-defun|python-info-ppss-comment-or-string-p|python-info-ppss-context-type|python-info-ppss-context|python-info-statement-ends-block-p|python-info-statement-starts-block-p|python-menu|python-mode|python-nav--beginning-of-defun|python-nav--forward-defun|python-nav--forward-sexp|python-nav--lisp-forward-sexp-safe|python-nav--lisp-forward-sexp|python-nav--syntactically|python-nav--up-list|python-nav-backward-block|python-nav-backward-defun|python-nav-backward-sexp-safe|python-nav-backward-sexp|python-nav-backward-statement|python-nav-backward-up-list|python-nav-beginning-of-block|python-nav-beginning-of-defun|python-nav-beginning-of-statement|python-nav-end-of-block|python-nav-end-of-defun|python-nav-end-of-statement|python-nav-forward-block|python-nav-forward-defun|python-nav-forward-sexp-safe|python-nav-forward-sexp|python-nav-forward-statement|python-nav-if-name-main|python-nav-up-list|python-pdbtrack-comint-output-filter-function|python-pdbtrack-set-tracked-buffer|python-proc|python-send-receive|python-send-string|python-shell--save-temp-file|python-shell-accept-process-output|python-shell-buffer-substring|python-shell-calculate-command|python-shell-calculate-exec-path|python-shell-calculate-process-environment|python-shell-calculate-pythonpath|python-shell-comint-end-of-output-p|python-shell-completion-at-point|python-shell-completion-complete-at-point|python-shell-completion-complete-or-indent|python-shell-completion-get-completions|python-shell-font-lock-cleanup-buffer|python-shell-font-lock-comint-output-filter-function|python-shell-font-lock-get-or-create-buffer|python-shell-font-lock-kill-buffer|python-shell-font-lock-post-command-hook|python-shell-font-lock-toggle|python-shell-font-lock-turn-off|python-shell-font-lock-turn-on|python-shell-font-lock-with-font-lock-buffer|python-shell-get-buffer|python-shell-get-or-create-process|python-shell-get-process-name|python-shell-get-process|python-shell-internal-get-or-create-process|python-shell-internal-get-process-name|python-shell-internal-send-string|python-shell-make-comint|python-shell-output-filter|python-shell-package-enable|python-shell-parse-command|python-shell-prompt-detect|python-shell-prompt-set-calculated-regexps|python-shell-prompt-validate-regexps|python-shell-send-buffer|python-shell-send-defun|python-shell-send-file|python-shell-send-region|python-shell-send-setup-code|python-shell-send-string-no-output|python-shell-send-string|python-shell-switch-to-shell|python-shell-with-shell-buffer|python-skeleton--else|python-skeleton--except|python-skeleton--finally|python-skeleton-add-menu-items|python-skeleton-class|python-skeleton-def|python-skeleton-define|python-skeleton-for|python-skeleton-if|python-skeleton-import|python-skeleton-try|python-skeleton-while|python-syntax-comment-or-string-p|python-syntax-context-type|python-syntax-context|python-syntax-count-quotes|python-syntax-stringify|python-util-clone-local-variables|python-util-comint-last-prompt|python-util-forward-comment|python-util-goto-line|python-util-list-directories|python-util-list-files|python-util-list-packages|python-util-popn|python-util-strip-string|python-util-text-properties-replace-name|python-util-valid-regexp-p|quail-define-package|quail-define-rules|quail-defrule-internal|quail-defrule|quail-install-decode-map|quail-install-map|quail-set-keyboard-layout|quail-show-keyboard-layout|quail-title|quail-update-leim-list-file|quail-use-package|query-dig|query-font|query-fontset|query-replace-compile-replacement|query-replace-descr|query-replace-read-args|query-replace-read-from|query-replace-read-to|query-replace-regexp-eval|query-replace-regexp|query-replace|quick-calc|quickurl-add-url|quickurl-ask|quickurl-browse-url-ask|quickurl-browse-url|quickurl-edit-urls|quickurl-find-url|quickurl-grab-url|quickurl-insert|quickurl-list-add-url|quickurl-list-insert-lookup|quickurl-list-insert-naked-url|quickurl-list-insert-url|quickurl-list-insert-with-desc|quickurl-list-insert-with-lookup|quickurl-list-insert|quickurl-list-make-inserter|quickurl-list-mode|quickurl-list-mouse-select|quickurl-list-populate-buffer|quickurl-list-quit|quickurl-list|quickurl-load-urls|quickurl-make-url|quickurl-read|quickurl-save-urls|quickurl-url-comment|quickurl-url-commented-p|quickurl-url-description|quickurl-url-keyword|quickurl-url-url|quickurl|quit-windows-on|quoted-insert|quoted-printable-decode-region|quoted-printable-decode-string|quoted-printable-encode-region|r2b-barf-output|r2b-capitalize-title-region|r2b-capitalize-title|r2b-clear-variables|r2b-convert-buffer|r2b-convert-month|r2b-convert-record|r2b-get-field|r2b-help|r2b-isa-proceedings|r2b-isa-university|r2b-match|r2b-moveq|r2b-put-field|r2b-require|r2b-reset|r2b-set-match|r2b-snarf-input|r2b-trace|r2b-warning|radians-to-degrees|raise-sexp|random\\\\\\\\*|random-state-p|rassoc\\\\\\\\*|rassoc-if-not|rassoc-if|rcirc--connection-open-p|rcirc-abbreviate|rcirc-activity-string|rcirc-add-face|rcirc-add-or-remove|rcirc-any-buffer|rcirc-authenticate|rcirc-browse-url|rcirc-buffer-nick|rcirc-buffer-process|rcirc-change-major-mode-hook|rcirc-channel-nicks|rcirc-channel-p|rcirc-check-auth-status|rcirc-clean-up-buffer|rcirc-clear-activity|rcirc-clear-unread|rcirc-cmd-bright|rcirc-cmd-ctcp|rcirc-cmd-dim|rcirc-cmd-ignore|rcirc-cmd-invite|rcirc-cmd-join|rcirc-cmd-keyword|rcirc-cmd-kick|rcirc-cmd-list|rcirc-cmd-me|rcirc-cmd-mode|rcirc-cmd-msg|rcirc-cmd-names|rcirc-cmd-nick|rcirc-cmd-oper|rcirc-cmd-part|rcirc-cmd-query|rcirc-cmd-quit|rcirc-cmd-quote|rcirc-cmd-reconnect|rcirc-cmd-topic|rcirc-cmd-whois|rcirc-complete|rcirc-completion-at-point|rcirc-condition-filter|rcirc-connect|rcirc-ctcp-sender-PING|rcirc-debug|rcirc-delete-process|rcirc-disconnect-buffer|rcirc-edit-multiline|rcirc-elapsed-lines|rcirc-facify|rcirc-fill-paragraph|rcirc-filter|rcirc-float-time|rcirc-format-response-string|rcirc-generate-log-filename|rcirc-generate-new-buffer-name|rcirc-get-buffer-create|rcirc-get-buffer|rcirc-get-temp-buffer-create|rcirc-handler-001|rcirc-handler-301|rcirc-handler-317|rcirc-handler-332|rcirc-handler-333|rcirc-handler-353|rcirc-handler-366|rcirc-handler-433|rcirc-handler-477|rcirc-handler-CTCP-response|rcirc-handler-CTCP|rcirc-handler-ERROR|rcirc-handler-INVITE|rcirc-handler-JOIN|rcirc-handler-KICK|rcirc-handler-MODE|rcirc-handler-NICK|rcirc-handler-NOTICE|rcirc-handler-PART-or-KICK|rcirc-handler-PART|rcirc-handler-PING|rcirc-handler-PONG|rcirc-handler-PRIVMSG|rcirc-handler-QUIT|rcirc-handler-TOPIC|rcirc-handler-WALLOPS|rcirc-handler-ctcp-ACTION|rcirc-handler-ctcp-KEEPALIVE|rcirc-handler-ctcp-TIME|rcirc-handler-ctcp-VERSION|rcirc-handler-generic|rcirc-ignore-update-automatic|rcirc-insert-next-input|rcirc-insert-prev-input|rcirc-join-channels-post-auth|rcirc-join-channels|rcirc-jump-to-first-unread-line|rcirc-keepalive|rcirc-kill-buffer-hook|rcirc-last-line|rcirc-last-quit-line|rcirc-log-write|rcirc-log|rcirc-looking-at-input|rcirc-make-trees|rcirc-markup-attributes|rcirc-markup-bright-nicks|rcirc-markup-fill|rcirc-markup-keywords|rcirc-markup-my-nick|rcirc-markup-timestamp|rcirc-markup-urls|rcirc-maybe-remember-nick-quit|rcirc-mode|rcirc-multiline-minor-cancel|rcirc-multiline-minor-mode|rcirc-multiline-minor-submit|rcirc-next-active-buffer|rcirc-nick-channels|rcirc-nick-remove|rcirc-nick|rcirc-nickname<|rcirc-non-irc-buffer|rcirc-omit-mode|rcirc-prev-input-string|rcirc-print|rcirc-process-command|rcirc-process-input-line|rcirc-process-list|rcirc-process-message|rcirc-process-server-response-1|rcirc-process-server-response|rcirc-prompt-for-encryption|rcirc-put-nick-channel|rcirc-rebuild-tree|rcirc-record-activity|rcirc-remove-nick-channel|rcirc-reschedule-timeout|rcirc-send-ctcp|rcirc-send-input|rcirc-send-message|rcirc-send-privmsg|rcirc-send-string|rcirc-sentinel|rcirc-server-name|rcirc-set-changed|rcirc-short-buffer-name|rcirc-sort-nicknames-join|rcirc-split-activity|rcirc-split-message|rcirc-switch-to-server-buffer|rcirc-target-buffer|rcirc-toggle-ignore-buffer-activity|rcirc-toggle-low-priority|rcirc-track-minor-mode|rcirc-update-activity-string|rcirc-update-prompt|rcirc-update-short-buffer-names|rcirc-user-nick|rcirc-view-log-file|rcirc-visible-buffers|rcirc-window-configuration-change-1|rcirc-window-configuration-change|rcirc|re-builder-unload-function|re-search-backward-lax-whitespace|re-search-forward-lax-whitespace|read--expression|read-abbrev-file|read-all-face-attributes|read-buffer-file-coding-system|read-buffer-to-switch|read-char-by-name|read-charset|read-cookie|read-envvar-name|read-extended-command|read-face-and-attribute|read-face-attribute|read-face-font|read-face-name|read-feature|read-file-name--defaults|read-file-name-default|read-file-name-internal|read-from-whole-string|read-hiragana-string|read-input|read-language-name|read-multilingual-string|read-number|read-regexp-suggestions|reb-assert-buffer-in-window|reb-auto-update|reb-change-syntax|reb-change-target-buffer|reb-color-display-p|reb-cook-regexp|reb-copy|reb-count-subexps|reb-delete-overlays|reb-display-subexp|reb-do-update|reb-empty-regexp|reb-enter-subexp-mode|reb-force-update|reb-initialize-buffer|reb-insert-regexp|reb-kill-buffer|reb-lisp-mode|reb-lisp-syntax-p|reb-mode-buffer-p|reb-mode-common|reb-mode|reb-next-match|reb-prev-match|reb-quit-subexp-mode|reb-quit|reb-read-regexp|reb-show-subexp|reb-target-binding|reb-toggle-case|reb-update-modestring|reb-update-overlays|reb-update-regexp|rebuild-mail-abbrevs|recentf-add-file|recentf-apply-filename-handlers|recentf-apply-menu-filter|recentf-arrange-by-dir|recentf-arrange-by-mode|recentf-arrange-by-rule|recentf-auto-cleanup|recentf-build-mode-rules|recentf-cancel-dialog|recentf-cleanup|recentf-dialog-goto-first|recentf-dialog-mode|recentf-dialog|recentf-digit-shortcut-command-name|recentf-dir-rule|recentf-directory-compare|recentf-dump-variable|recentf-edit-list-select|recentf-edit-list-validate|recentf-edit-list|recentf-elements|recentf-enabled-p|recentf-expand-file-name|recentf-file-name-nondir|recentf-filter-changer-select|recentf-filter-changer|recentf-hide-menu|recentf-include-p|recentf-indirect-mode-rule|recentf-keep-default-predicate|recentf-keep-p|recentf-load-list|recentf-make-default-menu-element|recentf-make-menu-element|recentf-make-menu-item|recentf-make-menu-items|recentf-match-rule|recentf-menu-bar|recentf-menu-customization-changed|recentf-menu-element-item|recentf-menu-element-value|recentf-menu-elements)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:rmail-output-body-to-file|rmail-output-to-rmail-buffer|rmail-output|rmail-parse-url|rmail-perm-variables|rmail-pop-to-buffer|rmail-previous-labeled-message|rmail-previous-message|rmail-previous-same-subject|rmail-previous-undeleted-message|rmail-probe|rmail-quit|rmail-read-label|rmail-redecode-body|rmail-reply|rmail-require-mime-maybe|rmail-resend|rmail-restore-desktop-buffer|rmail-retry-failure|rmail-revert|rmail-search-backwards|rmail-search-message|rmail-search|rmail-select-summary|rmail-set-attribute-1|rmail-set-attribute|rmail-set-header-1|rmail-set-header|rmail-set-message-counters-counter|rmail-set-message-counters|rmail-set-message-deleted-p|rmail-set-remote-password|rmail-show-message-1|rmail-show-message|rmail-simplified-subject-regexp|rmail-simplified-subject|rmail-sort-by-author|rmail-sort-by-correspondent|rmail-sort-by-date|rmail-sort-by-labels|rmail-sort-by-lines|rmail-sort-by-recipient|rmail-sort-by-subject|rmail-speedbar-button|rmail-speedbar-buttons|rmail-speedbar-find-file|rmail-speedbar-move-message-to-folder-on-line|rmail-speedbar-move-message|rmail-start-mail|rmail-summary-by-labels|rmail-summary-by-recipients|rmail-summary-by-regexp|rmail-summary-by-senders|rmail-summary-by-topic|rmail-summary-displayed|rmail-summary-exists|rmail-summary|rmail-swap-buffers-maybe|rmail-swap-buffers|rmail-toggle-header|rmail-undelete-previous-message|rmail-unfontify-buffer-function|rmail-unknown-mail-followup-to|rmail-unrmail-new-mail-maybe|rmail-unrmail-new-mail|rmail-update-summary|rmail-variables|rmail-view-buffer-kill-buffer-hook|rmail-what-message|rmail-widen-to-current-msgbeg|rmail-widen|rmail-write-region-annotate|rmail-yank-current-message|rmail|rng-c-load-schema|rng-nxml-mode-init|rng-validate-mode|rng-xsd-compile|robin-define-package|robin-modify-package|robin-use-package|rot13-other-window|rot13-region|rot13-string|rot13|rotate-yank-pointer|rotatef|round\\\\\\\\*|route|rsh|rst-minor-mode|rst-mode|ruby--at-indentation-p|ruby--detect-encoding|ruby--electric-indent-p|ruby--encoding-comment-required-p|ruby--insert-coding-comment|ruby--inverse-string-quote|ruby--string-region|ruby-accurate-end-of-block|ruby-add-log-current-method|ruby-backward-sexp|ruby-beginning-of-block|ruby-beginning-of-defun|ruby-beginning-of-indent|ruby-block-contains-point|ruby-brace-to-do-end|ruby-calculate-indent|ruby-current-indentation|ruby-deep-indent-paren-p|ruby-do-end-to-brace|ruby-end-of-block|ruby-end-of-defun|ruby-expr-beg|ruby-forward-sexp|ruby-forward-string|ruby-here-doc-end-match|ruby-imenu-create-index-in-block|ruby-imenu-create-index|ruby-in-ppss-context-p|ruby-indent-exp|ruby-indent-line|ruby-indent-size|ruby-indent-to|ruby-match-expression-expansion|ruby-mode-menu|ruby-mode-set-encoding|ruby-mode-variables|ruby-mode|ruby-move-to-block|ruby-parse-partial|ruby-parse-region|ruby-singleton-class-p|ruby-smie--args-separator-p|ruby-smie--at-dot-call|ruby-smie--backward-token|ruby-smie--bosp|ruby-smie--closing-pipe-p|ruby-smie--forward-token|ruby-smie--implicit-semi-p|ruby-smie--indent-to-stmt-p|ruby-smie--indent-to-stmt|ruby-smie--opening-pipe-p|ruby-smie--redundant-do-p|ruby-smie-rules|ruby-special-char-p|ruby-string-at-point-p|ruby-syntax-enclosing-percent-literal|ruby-syntax-expansion-allowed-p|ruby-syntax-propertize-expansion|ruby-syntax-propertize-expansions|ruby-syntax-propertize-function|ruby-syntax-propertize-heredoc|ruby-syntax-propertize-percent-literal|ruby-toggle-block|ruby-toggle-string-quotes|ruler--save-header-line-format|ruler-mode-character-validate|ruler-mode-full-window-width|ruler-mode-mouse-add-tab-stop|ruler-mode-mouse-del-tab-stop|ruler-mode-mouse-drag-any-column-iteration|ruler-mode-mouse-drag-any-column|ruler-mode-mouse-grab-any-column|ruler-mode-mouse-set-left-margin|ruler-mode-mouse-set-right-margin|ruler-mode-ruler|ruler-mode-space|ruler-mode-toggle-show-tab-stops|ruler-mode-window-col|ruler-mode|run-dig|run-hook-wrapped|run-lisp|run-network-program|run-octave|run-prolog|run-python-internal|run-python|run-scheme|run-tcl|run-window-configuration-change-hook|run-window-scroll-functions|run-with-timer|rx-\\\\\\\\*\\\\\\\\*|rx-=|rx->=|rx-and|rx-any-condense-range|rx-any-delete-from-range|rx-any|rx-anything|rx-atomic-p|rx-backref|rx-category|rx-check-any-string|rx-check-any|rx-check-backref|rx-check-category|rx-check-not|rx-check|rx-eval|rx-form|rx-greedy|rx-group-if|rx-info|rx-kleene|rx-not-char|rx-not-syntax|rx-not|rx-or|rx-regexp|rx-repeat|rx-submatch-n|rx-submatch|rx-syntax|rx-to-string|rx-trans-forms|rx|rzgrep|safe-date-to-time|same-class-fast-p|same-class-p|sanitize-coding-system-list|sasl-anonymous-response|sasl-client-mechanism|sasl-client-name|sasl-client-properties|sasl-client-property|sasl-client-server|sasl-client-service|sasl-client-set-properties|sasl-client-set-property|sasl-error|sasl-find-mechanism|sasl-login-response-1|sasl-login-response-2|sasl-make-client|sasl-make-mechanism|sasl-mechanism-name|sasl-mechanism-steps|sasl-next-step|sasl-plain-response|sasl-read-passphrase|sasl-step-data|sasl-step-set-data|sasl-unique-id-function|sasl-unique-id-number-base36|sasl-unique-id|save-buffers-kill-emacs|save-buffers-kill-terminal|save-completions-to-file|save-place-alist-to-file|save-place-dired-hook|save-place-find-file-hook|save-place-forget-unreadable-files|save-place-kill-emacs-hook|save-place-to-alist|save-places-to-alist|savehist-autosave|savehist-install|savehist-load|savehist-minibuffer-hook|savehist-mode|savehist-printable|savehist-save|savehist-trim-history|savehist-uninstall|sc-S-cite-region-limit|sc-S-mail-header-nuke-list|sc-S-mail-nuke-mail-headers|sc-S-preferred-attribution-list|sc-S-preferred-header-style|sc-T-auto-fill-region|sc-T-confirm-always|sc-T-describe|sc-T-downcase|sc-T-electric-circular|sc-T-electric-references|sc-T-fixup-whitespace|sc-T-mail-nuke-blank-lines|sc-T-nested-citation|sc-T-use-only-preferences|sc-add-citation-level|sc-ask|sc-attribs-!-addresses|sc-attribs-%@-addresses|sc-attribs-<>-addresses|sc-attribs-chop-address|sc-attribs-chop-namestring|sc-attribs-emailname|sc-attribs-extract-namestring|sc-attribs-filter-namelist|sc-attribs-strip-initials|sc-cite-coerce-cited-line|sc-cite-coerce-dumb-citer|sc-cite-line|sc-cite-original|sc-cite-regexp|sc-cite-region|sc-describe|sc-electric-mode|sc-eref-abort|sc-eref-exit|sc-eref-goto|sc-eref-insert-selected|sc-eref-jump|sc-eref-next|sc-eref-prev|sc-eref-setn|sc-eref-show|sc-fill-if-different|sc-get-address|sc-guess-attribution|sc-guess-nesting|sc-hdr|sc-header-attributed-writes|sc-header-author-writes|sc-header-inarticle-writes|sc-header-on-said|sc-header-regarding-adds|sc-header-verbose|sc-insert-citation|sc-insert-reference|sc-mail-append-field|sc-mail-build-nuke-frame|sc-mail-check-from|sc-mail-cleanup-blank-lines|sc-mail-error-in-mail-field|sc-mail-fetch-field|sc-mail-field-query|sc-mail-field|sc-mail-nuke-continuation-line|sc-mail-nuke-header-line|sc-mail-nuke-line|sc-mail-process-headers|sc-make-citation|sc-minor-mode|sc-name-substring|sc-no-blank-line-or-header|sc-no-header|sc-open-line|sc-raw-mode-toggle|sc-recite-line|sc-recite-region|sc-scan-info-alist|sc-select-attribution|sc-set-variable|sc-setup-filladapt|sc-setvar-symbol|sc-toggle-fn|sc-toggle-symbol|sc-toggle-var|sc-uncite-line|sc-uncite-region|sc-valid-index-p|sc-whofrom|scan-buf-move-to-region|scan-buf-next-region|scan-buf-previous-region|scheme-compile-definition-and-go|scheme-compile-definition|scheme-compile-file|scheme-compile-region-and-go|scheme-compile-region|scheme-debugger-mode-commands|scheme-debugger-mode-initialize|scheme-debugger-mode|scheme-debugger-self-insert|scheme-expand-current-form|scheme-form-at-point|scheme-get-old-input|scheme-get-process|scheme-indent-function|scheme-input-filter|scheme-interaction-mode-commands|scheme-interaction-mode-initialize|scheme-interaction-mode|scheme-interactively-start-process|scheme-let-indent|scheme-load-file|scheme-mode-commands|scheme-mode-variables|scheme-mode|scheme-proc|scheme-send-definition-and-go|scheme-send-definition|scheme-send-last-sexp|scheme-send-region-and-go|scheme-send-region|scheme-start-file|scheme-syntax-propertize-sexp-comment|scheme-syntax-propertize|scheme-trace-procedure|scroll-all-beginning-of-buffer-all|scroll-all-check-to-scroll|scroll-all-end-of-buffer-all|scroll-all-function-all|scroll-all-mode|scroll-all-page-down-all|scroll-all-page-up-all|scroll-all-scroll-down-all|scroll-all-scroll-up-all|scroll-bar-columns|scroll-bar-drag-1|scroll-bar-drag-position|scroll-bar-drag|scroll-bar-horizontal-drag-1|scroll-bar-horizontal-drag|scroll-bar-lines|scroll-bar-maybe-set-window-start|scroll-bar-scroll-down|scroll-bar-scroll-up|scroll-bar-set-window-start|scroll-bar-toolkit-horizontal-scroll|scroll-bar-toolkit-scroll|scroll-down-line|scroll-lock-mode|scroll-other-window-down|scroll-up-line|scss-mode|scss-smie--not-interpolation-p|sdb|search-backward-lax-whitespace|search-backward-regexp|search-emacs-glossary|search-forward-lax-whitespace|search-forward-regexp|search-pages|search-unencodable-char|search|second|seconds-to-string|secrets-close-session|secrets-collection-handler|secrets-collection-path|secrets-create-collection|secrets-create-item|secrets-delete-alias|secrets-delete-collection|secrets-delete-item|secrets-empty-path|secrets-expand-collection|secrets-expand-item|secrets-get-alias|secrets-get-attribute|secrets-get-attributes|secrets-get-collection-properties|secrets-get-collection-property|secrets-get-collections|secrets-get-item-properties|secrets-get-item-property|secrets-get-items|secrets-get-secret|secrets-item-path|secrets-list-collections|secrets-list-items|secrets-mode|secrets-open-session|secrets-prompt-handler|secrets-prompt|secrets-search-items|secrets-set-alias|secrets-show-collections|secrets-show-secrets|secrets-tree-widget-after-toggle-function|secrets-tree-widget-show-password|secrets-unlock-collection|secure-hash|select-frame-by-name|select-frame-set-input-focus|select-frame|select-message-coding-system|select-safe-coding-system-interactively|select-safe-coding-system|select-scheme|select-tags-table-mode|select-tags-table-quit|select-tags-table-select|select-tags-table|select-window|selected-frame|selected-window|self-insert-and-exit|self-insert-command|semantic--set-buffer-cache|semantic--tag-attributes-cdr|semantic--tag-copy-properties|semantic--tag-deep-copy-attributes|semantic--tag-deep-copy-tag-list|semantic--tag-deep-copy-value|semantic--tag-expand|semantic--tag-expanded-p|semantic--tag-find-parent-by-name|semantic--tag-get-property|semantic--tag-link-cache-to-buffer|semantic--tag-link-list-to-buffer|semantic--tag-link-to-buffer|semantic--tag-overlay-cdr|semantic--tag-properties-cdr|semantic--tag-put-property-no-side-effect|semantic--tag-put-property|semantic--tag-run-hooks|semantic--tag-set-overlay|semantic--tag-unlink-cache-from-buffer|semantic--tag-unlink-from-buffer|semantic--tag-unlink-list-from-buffer|semantic--umatched-syntax-needs-refresh-p|semantic-active-p|semantic-add-label|semantic-add-minor-mode|semantic-add-system-include|semantic-alias-obsolete|semantic-analyze-completion-at-point-function|semantic-analyze-current-context|semantic-analyze-current-tag|semantic-analyze-nolongprefix-completion-at-point-function|semantic-analyze-notc-completion-at-point-function|semantic-analyze-possible-completions|semantic-analyze-proto-impl-toggle|semantic-analyze-type-constants|semantic-assert-valid-token|semantic-bovinate-from-nonterminal-full|semantic-bovinate-from-nonterminal|semantic-bovinate-region-until-error|semantic-bovinate-stream|semantic-bovinate-toplevel|semantic-buffer-local-value|semantic-c-add-preprocessor-symbol|semantic-cache-data-post-command-hook|semantic-cache-data-to-buffer|semantic-calculate-scope|semantic-change-function|semantic-clean-token-of-unmatched-syntax|semantic-clean-unmatched-syntax-in-buffer|semantic-clean-unmatched-syntax-in-region|semantic-clear-parser-warnings|semantic-clear-toplevel-cache|semantic-clear-unmatched-syntax-cache|semantic-comment-lexer|semantic-complete-analyze-and-replace|semantic-complete-analyze-inline-idle|semantic-complete-analyze-inline|semantic-complete-inline-project|semantic-complete-jump-local-members|semantic-complete-jump-local|semantic-complete-jump|semantic-complete-self-insert|semantic-complete-symbol|semantic-create-imenu-index|semantic-create-tag-proxy|semantic-ctxt-current-mode|semantic-current-tag-parent|semantic-current-tag|semantic-customize-system-include-path|semantic-debug|semantic-decoration-include-visit|semantic-decoration-unparsed-include-do-reset)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:semantic-default-c-setup|semantic-default-elisp-setup|semantic-default-html-setup|semantic-default-make-setup|semantic-default-scheme-setup|semantic-default-texi-setup|semantic-delete-overlay-maybe|semantic-dependency-tag-file|semantic-describe-buffer-var-helper|semantic-describe-buffer|semantic-describe-tag|semantic-desktop-ignore-this-minor-mode|semantic-documentation-for-tag|semantic-dump-parser-warnings|semantic-edits-incremental-parser|semantic-elapsed-time|semantic-equivalent-tag-p|semantic-error-if-unparsed|semantic-event-window|semantic-exit-on-input|semantic-fetch-available-tags|semantic-fetch-tags-fast|semantic-fetch-tags|semantic-file-tag-table|semantic-file-token-stream|semantic-find-file-noselect|semantic-find-first-tag-by-name|semantic-find-tag-by-overlay-in-region|semantic-find-tag-by-overlay-next|semantic-find-tag-by-overlay-prev|semantic-find-tag-by-overlay|semantic-find-tag-for-completion|semantic-find-tag-parent-by-overlay|semantic-find-tags-by-scope-protection|semantic-find-tags-included|semantic-flatten-tags-table|semantic-flex-buffer|semantic-flex-end|semantic-flex-keyword-get|semantic-flex-keyword-p|semantic-flex-keyword-put|semantic-flex-keywords|semantic-flex-list|semantic-flex-make-keyword-table|semantic-flex-map-keywords|semantic-flex-start|semantic-flex-text|semantic-flex|semantic-force-refresh|semantic-foreign-tag-check|semantic-foreign-tag-invalid|semantic-foreign-tag-p|semantic-foreign-tag|semantic-format-tag-concise-prototype|semantic-format-tag-name|semantic-format-tag-prototype|semantic-format-tag-summarize|semantic-fw-add-edebug-spec|semantic-gcc-setup|semantic-get-cache-data|semantic-go-to-tag|semantic-highlight-edits-mode|semantic-highlight-edits-new-change-hook-fcn|semantic-highlight-func-highlight-current-tag|semantic-highlight-func-menu|semantic-highlight-func-mode|semantic-highlight-func-popup-menu|semantic-ia-complete-symbol-menu|semantic-ia-complete-symbol|semantic-ia-complete-tip|semantic-ia-describe-class|semantic-ia-fast-jump|semantic-ia-fast-mouse-jump|semantic-ia-show-doc|semantic-ia-show-summary|semantic-ia-show-variants|semantic-idle-completions-mode|semantic-idle-scheduler-mode|semantic-idle-summary-mode|semantic-insert-foreign-tag-change-log-mode|semantic-insert-foreign-tag-default|semantic-insert-foreign-tag-log-edit-mode|semantic-insert-foreign-tag|semantic-install-function-overrides|semantic-lex-beginning-of-line|semantic-lex-buffer|semantic-lex-catch-errors|semantic-lex-charquote|semantic-lex-close-paren|semantic-lex-comments-as-whitespace|semantic-lex-comments|semantic-lex-debug-break|semantic-lex-debug|semantic-lex-default-action|semantic-lex-end-block|semantic-lex-expand-block-specs|semantic-lex-highlight-token|semantic-lex-ignore-comments|semantic-lex-ignore-newline|semantic-lex-ignore-whitespace|semantic-lex-init|semantic-lex-keyword-get|semantic-lex-keyword-invalid|semantic-lex-keyword-p|semantic-lex-keyword-put|semantic-lex-keyword-set|semantic-lex-keyword-symbol|semantic-lex-keyword-value|semantic-lex-keywords|semantic-lex-list|semantic-lex-make-keyword-table|semantic-lex-make-type-table|semantic-lex-map-keywords|semantic-lex-map-symbols|semantic-lex-map-types|semantic-lex-newline-as-whitespace|semantic-lex-newline|semantic-lex-number|semantic-lex-one-token|semantic-lex-open-paren|semantic-lex-paren-or-list|semantic-lex-preset-default-types|semantic-lex-punctuation-type|semantic-lex-punctuation|semantic-lex-push-token|semantic-lex-spp-table-write-slot-value|semantic-lex-start-block|semantic-lex-string|semantic-lex-symbol-or-keyword|semantic-lex-test|semantic-lex-token-bounds|semantic-lex-token-class|semantic-lex-token-end|semantic-lex-token-p|semantic-lex-token-start|semantic-lex-token-text|semantic-lex-token-with-text-p|semantic-lex-token-without-text-p|semantic-lex-token|semantic-lex-type-get|semantic-lex-type-invalid|semantic-lex-type-p|semantic-lex-type-put|semantic-lex-type-set|semantic-lex-type-symbol|semantic-lex-type-value|semantic-lex-types|semantic-lex-unterminated-syntax-detected|semantic-lex-unterminated-syntax-protection|semantic-lex-whitespace|semantic-lex|semantic-make-local-hook|semantic-make-overlay|semantic-map-buffers|semantic-map-mode-buffers|semantic-menu-item|semantic-mode-line-update|semantic-mode|semantic-narrow-to-tag|semantic-new-buffer-fcn|semantic-next-unmatched-syntax|semantic-obtain-foreign-tag|semantic-overlay-buffer|semantic-overlay-delete|semantic-overlay-end|semantic-overlay-get|semantic-overlay-lists|semantic-overlay-live-p|semantic-overlay-move|semantic-overlay-next-change|semantic-overlay-p|semantic-overlay-previous-change|semantic-overlay-properties|semantic-overlay-put|semantic-overlay-start|semantic-overlays-at|semantic-overlays-in|semantic-overload-symbol-from-function|semantic-parse-changes-default|semantic-parse-changes|semantic-parse-region-default|semantic-parse-region|semantic-parse-stream-default|semantic-parse-stream|semantic-parse-tree-needs-rebuild-p|semantic-parse-tree-needs-update-p|semantic-parse-tree-set-needs-rebuild|semantic-parse-tree-set-needs-update|semantic-parse-tree-set-up-to-date|semantic-parse-tree-unparseable-p|semantic-parse-tree-unparseable|semantic-parse-tree-up-to-date-p|semantic-parser-working-message|semantic-popup-menu|semantic-push-parser-warning|semantic-read-event|semantic-read-function|semantic-read-symbol|semantic-read-type|semantic-read-variable|semantic-refresh-tags-safe|semantic-remove-system-include|semantic-repeat-parse-whole-stream|semantic-require-version|semantic-reset-system-include|semantic-run-mode-hooks|semantic-safe|semantic-sanity-check|semantic-set-unmatched-syntax-cache|semantic-show-label|semantic-show-parser-state-auto-marker|semantic-show-parser-state-marker|semantic-show-parser-state-mode|semantic-show-unmatched-lex-tokens-fetch|semantic-show-unmatched-syntax-mode|semantic-show-unmatched-syntax-next|semantic-show-unmatched-syntax|semantic-showing-unmatched-syntax-p|semantic-simple-lexer|semantic-something-to-stream|semantic-something-to-tag-table|semantic-speedbar-analysis|semantic-stickyfunc-fetch-stickyline|semantic-stickyfunc-menu|semantic-stickyfunc-mode|semantic-stickyfunc-popup-menu|semantic-stickyfunc-tag-to-stick|semantic-subst-char-in-string|semantic-symref-find-file-references-by-name|semantic-symref-find-references-by-name|semantic-symref-find-tags-by-completion|semantic-symref-find-tags-by-name|semantic-symref-find-tags-by-regexp|semantic-symref-find-text|semantic-symref-regexp|semantic-symref-symbol|semantic-symref-tool-cscope-child-p|semantic-symref-tool-cscope-list-p|semantic-symref-tool-cscope-p|semantic-symref-tool-cscope|semantic-symref-tool-global-child-p|semantic-symref-tool-global-list-p|semantic-symref-tool-global-p|semantic-symref-tool-global|semantic-symref-tool-grep-child-p|semantic-symref-tool-grep-list-p|semantic-symref-tool-grep-p|semantic-symref-tool-grep|semantic-symref-tool-idutils-child-p|semantic-symref-tool-idutils-list-p|semantic-symref-tool-idutils-p|semantic-symref-tool-idutils|semantic-symref|semantic-tag-add-hook|semantic-tag-alias-class|semantic-tag-alias-definition|semantic-tag-attributes|semantic-tag-bounds|semantic-tag-buffer|semantic-tag-children-compatibility|semantic-tag-class|semantic-tag-clone|semantic-tag-code-detail|semantic-tag-components-default|semantic-tag-components-with-overlays-default|semantic-tag-components-with-overlays|semantic-tag-components|semantic-tag-copy|semantic-tag-deep-copy-one-tag|semantic-tag-docstring|semantic-tag-end|semantic-tag-external-member-parent|semantic-tag-faux-p|semantic-tag-file-name|semantic-tag-function-arguments|semantic-tag-function-constructor-p|semantic-tag-function-destructor-p|semantic-tag-function-parent|semantic-tag-function-throws|semantic-tag-get-attribute|semantic-tag-in-buffer-p|semantic-tag-include-filename-default|semantic-tag-include-filename|semantic-tag-include-system-p|semantic-tag-make-assoc-list|semantic-tag-make-plist|semantic-tag-mode|semantic-tag-modifiers|semantic-tag-name|semantic-tag-named-parent|semantic-tag-new-alias|semantic-tag-new-code|semantic-tag-new-function|semantic-tag-new-include|semantic-tag-new-package|semantic-tag-new-type|semantic-tag-new-variable|semantic-tag-of-class-p|semantic-tag-of-type-p|semantic-tag-overlay|semantic-tag-p|semantic-tag-properties|semantic-tag-prototype-p|semantic-tag-put-attribute-no-side-effect|semantic-tag-put-attribute|semantic-tag-remove-hook|semantic-tag-resolve-proxy|semantic-tag-set-bounds|semantic-tag-set-faux|semantic-tag-set-name|semantic-tag-set-proxy|semantic-tag-similar-with-subtags-p|semantic-tag-start|semantic-tag-type-compound-p|semantic-tag-type-interfaces|semantic-tag-type-members|semantic-tag-type-superclass-protection|semantic-tag-type-superclasses|semantic-tag-type|semantic-tag-variable-constant-p|semantic-tag-variable-default|semantic-tag-with-position-p|semantic-tag-write-list-slot-value|semantic-tag|semantic-test-data-cache|semantic-throw-on-input|semantic-toggle-minor-mode-globally|semantic-token-type-parent|semantic-unmatched-syntax-overlay-p|semantic-unmatched-syntax-tokens|semantic-varalias-obsolete|semantic-with-buffer-narrowed-to-current-tag|semantic-with-buffer-narrowed-to-tag|semanticdb-database-typecache-child-p|semanticdb-database-typecache-list-p|semanticdb-database-typecache-p|semanticdb-database-typecache|semanticdb-enable-gnu-global-databases|semanticdb-file-table-object|semanticdb-find-adebug-lost-includes|semanticdb-find-result-length|semanticdb-find-result-nth-in-buffer|semanticdb-find-result-nth|semanticdb-find-table-for-include|semanticdb-find-tags-by-class|semanticdb-find-tags-by-name-regexp|semanticdb-find-tags-by-name|semanticdb-find-tags-for-completion|semanticdb-find-test-translate-path|semanticdb-find-translate-path|semanticdb-minor-mode-p|semanticdb-project-database-file-child-p|semanticdb-project-database-file-list-p|semanticdb-project-database-file-p|semanticdb-project-database-file|semanticdb-strip-find-results|semanticdb-typecache-child-p|semanticdb-typecache-find|semanticdb-typecache-list-p|semanticdb-typecache-p|semanticdb-typecache|semanticdb-without-unloaded-file-searches|senator-copy-tag-to-register|senator-copy-tag|senator-go-to-up-reference|senator-kill-tag|senator-next-tag|senator-previous-tag|senator-transpose-tags-down|senator-transpose-tags-up|senator-yank-tag|send-invisible|send-process-next-char|send-region|send-string|sendmail-query-once|sendmail-query-user-about-smtp|sendmail-send-it|sendmail-sync-aliases|sendmail-user-agent-compose|sentence-at-point|seq--count-successive|seq--drop-list|seq--drop-while-list|seq--take-list|seq--take-while-list|seq-concatenate|seq-contains-p|seq-copy|seq-count|seq-do|seq-doseq|seq-drop-while|seq-drop|seq-each|seq-elt|seq-empty-p|seq-every-p|seq-filter|seq-length|seq-map|seq-reduce|seq-remove|seq-reverse|seq-some-p|seq-sort|seq-subseq|seq-take-while|seq-take|seq-uniq|serial-mode-line-config-menu-1|serial-mode-line-config-menu|serial-mode-line-speed-menu-1|serial-mode-line-speed-menu|serial-nice-speed-history|serial-port-is-file-p|serial-read-name|serial-read-speed|serial-speed|serial-supported-or-barf|serial-update-config-menu|serial-update-speed-menu|server--on-display-p|server-add-client|server-buffer-done|server-clients-with|server-create-tty-frame|server-create-window-system-frame|server-delete-client|server-done|server-edit|server-ensure-safe-dir|server-eval-and-print|server-eval-at|server-execute-continuation|server-execute|server-force-delete|server-force-stop|server-generate-key|server-get-auth-key|server-goto-line-column|server-goto-toplevel|server-handle-delete-frame|server-handle-suspend-tty|server-kill-buffer|server-kill-emacs-query-function|server-log|server-mode|server-process-filter|server-quote-arg|server-reply-print|server-return-error|server-running-p|server-save-buffers-kill-terminal|server-select-display|server-send-string|server-sentinel|server-start|server-switch-buffer|server-temp-file-p|server-unload-function|server-unquote-arg|server-unselect-display|server-visit-files|server-with-environment|ses\\\\\\\\+|ses--advice-copy-region-as-kill|ses--advice-yank|ses--cell|ses--clean-!|ses--clean-_|ses--letref|ses--local-printer|ses--locprn-compiled--cmacro|ses--locprn-compiled|ses--locprn-def--cmacro|ses--locprn-def|ses--locprn-local-printer-list--cmacro|ses--locprn-local-printer-list|ses--locprn-number--cmacro|ses--locprn-number|ses--locprn-p--cmacro|ses--locprn-p|ses--metaprogramming)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:ses--time-check|ses-adjust-print-width|ses-append-row-jump-first-column|ses-aset-with-undo|ses-average|ses-begin-change|ses-calculate-cell|ses-call-printer|ses-cell--formula--cmacro|ses-cell--formula|ses-cell--printer--cmacro|ses-cell--printer|ses-cell--properties--cmacro|ses-cell--properties|ses-cell--references--cmacro|ses-cell--references|ses-cell--symbol--cmacro|ses-cell--symbol|ses-cell-formula|ses-cell-p|ses-cell-printer|ses-cell-property-pop|ses-cell-property|ses-cell-references|ses-cell-set-formula|ses-cell-symbol|ses-cell-value|ses-center-span|ses-center|ses-check-curcell|ses-cleanup|ses-clear-cell-backward|ses-clear-cell-forward|ses-clear-cell|ses-col-printer|ses-col-width|ses-column-letter|ses-column-printers|ses-column-widths|ses-command-hook|ses-copy-region-helper|ses-copy-region|ses-create-cell-symbol|ses-create-cell-variable-range|ses-create-cell-variable|ses-create-header-string|ses-dashfill-span|ses-dashfill|ses-decode-cell-symbol|ses-default-printer|ses-define-local-printer|ses-delete-blanks|ses-delete-column|ses-delete-line|ses-delete-row|ses-destroy-cell-variable-range|ses-dorange|ses-edit-cell|ses-end-of-line|ses-export-keymap|ses-export-tab|ses-export-tsf|ses-export-tsv|ses-file-format-extend-parameter-list|ses-formula-record|ses-formula-references|ses-forward-or-insert|ses-get-cell|ses-goto-data|ses-goto-print|ses-header-line-menu|ses-header-row|ses-in-print-area|ses-initialize-Dijkstra-attempt|ses-insert-column|ses-insert-range-click|ses-insert-range|ses-insert-row|ses-insert-ses-range-click|ses-insert-ses-range|ses-is-cell-sym-p|ses-jump-safe|ses-jump|ses-kill-override|ses-load|ses-local-printer-compile|ses-make-cell--cmacro|ses-make-cell|ses-make-local-printer-info|ses-mark-column|ses-mark-row|ses-menu|ses-mode-print-map|ses-mode|ses-print-cell-new-width|ses-print-cell|ses-printer-record|ses-printer-validate|ses-range|ses-read-cell-printer|ses-read-cell|ses-read-column-printer|ses-read-default-printer|ses-read-printer|ses-read-symbol|ses-recalculate-all|ses-recalculate-cell|ses-reconstruct-all|ses-refresh-local-printer|ses-relocate-all|ses-relocate-formula|ses-relocate-range|ses-relocate-symbol|ses-rename-cell|ses-renarrow-buffer|ses-repair-cell-reference-all|ses-replace-name-in-formula|ses-reprint-all|ses-reset-header-string|ses-safe-formula|ses-safe-printer|ses-select|ses-set-cell|ses-set-column-width|ses-set-curcell|ses-set-header-row|ses-set-localvars|ses-set-parameter|ses-set-with-undo|ses-setter-with-undo|ses-setup|ses-sort-column-click|ses-sort-column|ses-sym-rowcol|ses-tildefill-span|ses-truncate-cell|ses-unload-function|ses-unsafe|ses-unset-header-row|ses-update-cells|ses-vector-delete|ses-vector-insert|ses-warn-unsafe|ses-widen|ses-write-cells|ses-yank-cells|ses-yank-one|ses-yank-pop|ses-yank-resize|ses-yank-tsf|set-allout-regexp|set-auto-mode-0|set-auto-mode-1|set-background-color|set-border-color|set-buffer-file-coding-system|set-buffer-process-coding-system|set-cdabbrev-buffer|set-charset-plist|set-clipboard-coding-system|set-cmpl-prefix-entry-head|set-cmpl-prefix-entry-tail|set-coding-priority|set-comment-column|set-completion-last-use-time|set-completion-num-uses|set-completion-string|set-cursor-color|set-default-coding-systems|set-default-font|set-default-toplevel-value|set-difference|set-display-table-and-terminal-coding-system|set-downcase-syntax|set-exclusive-or|set-face-attribute-from-resource|set-face-attributes-from-resources|set-face-background-pixmap|set-face-bold-p|set-face-doc-string|set-face-documentation|set-face-inverse-video-p|set-face-italic-p|set-face-underline-p|set-file-name-coding-system|set-fill-column|set-fill-prefix|set-font-encoding|set-foreground-color|set-frame-font|set-frame-name|set-fringe-mode-1|set-fringe-mode|set-fringe-style|set-goal-column|set-hard-newline-properties|set-input-interrupt-mode|set-input-meta-mode|set-justification-center|set-justification-full|set-justification-left|set-justification-none|set-justification-right|set-justification|set-keyboard-coding-system-internal|set-language-environment-charset|set-language-environment-coding-systems|set-language-environment-input-method|set-language-environment-nonascii-translation|set-language-environment-unibyte|set-language-environment|set-language-info-alist|set-language-info-internal|set-language-info|set-locale-environment|set-mark-command|set-mode-local-parent|set-mouse-color|set-nested-alist|set-next-selection-coding-system|set-output-flow-control|set-page-delimiter|set-process-filter-multibyte|set-process-inherit-coding-system-flag|set-process-window-size|set-quit-char|set-rcirc-decode-coding-system|set-rcirc-encode-coding-system|set-rmail-inbox-list|set-safe-terminal-coding-system-internal|set-scroll-bar-mode|set-selection-coding-system|set-selective-display|set-slot-value|set-temporary-overlay-map|set-terminal-coding-system-internal|set-time-zone-rule|set-upcase-syntax|set-variable|set-viper-state-in-major-mode|set-window-buffer-start-and-point|set-window-dot|set-window-new-normal|set-window-new-pixel|set-window-new-total|set-window-redisplay-end-trigger|set-window-text-height|set-woman-file-regexp|setenv-internal|setq-mode-local|setup-chinese-environment-map|setup-cyrillic-environment-map|setup-default-fontset|setup-ethiopic-environment-internal|setup-european-environment-map|setup-indian-environment-map|setup-japanese-environment-internal|setup-korean-environment-internal|setup-specified-language-environment|seventh|sexp-at-point|sgml-at-indentation-p|sgml-attributes|sgml-auto-attributes|sgml-beginning-of-tag|sgml-calculate-indent|sgml-close-tag|sgml-comment-indent-new-line|sgml-comment-indent|sgml-delete-tag|sgml-electric-tag-pair-before-change-function|sgml-electric-tag-pair-flush-overlays|sgml-electric-tag-pair-mode|sgml-empty-tag-p|sgml-fill-nobreak|sgml-get-context|sgml-guess-indent|sgml-html-meta-auto-coding-function|sgml-indent-line|sgml-lexical-context|sgml-looking-back-at|sgml-make-syntax-table|sgml-make-tag--cmacro|sgml-make-tag|sgml-maybe-end-tag|sgml-maybe-name-self|sgml-mode-facemenu-add-face-function|sgml-mode-flyspell-verify|sgml-mode|sgml-name-8bit-mode|sgml-name-char|sgml-name-self|sgml-namify-char|sgml-parse-dtd|sgml-parse-tag-backward|sgml-parse-tag-name|sgml-point-entered|sgml-pretty-print|sgml-quote|sgml-show-context|sgml-skip-tag-backward|sgml-skip-tag-forward|sgml-slash-matching|sgml-slash|sgml-tag-end--cmacro|sgml-tag-end|sgml-tag-help|sgml-tag-name--cmacro|sgml-tag-name|sgml-tag-p--cmacro|sgml-tag-p|sgml-tag-start--cmacro|sgml-tag-start|sgml-tag-text-p|sgml-tag-type--cmacro|sgml-tag-type|sgml-tag|sgml-tags-invisible|sgml-unclosed-tag-p|sgml-validate|sgml-value|sgml-xml-auto-coding-function|sgml-xml-guess|sh--cmd-completion-table|sh--inside-noncommand-expression|sh--maybe-here-document|sh--vars-before-point|sh-add-completer|sh-add|sh-after-hack-local-variables|sh-append-backslash|sh-append|sh-assignment|sh-backslash-region|sh-basic-indent-line|sh-beginning-of-command|sh-blink|sh-calculate-indent|sh-canonicalize-shell|sh-case|sh-cd-here|sh-check-rule|sh-completion-at-point-function|sh-current-defun-name|sh-debug|sh-delete-backslash|sh-electric-here-document-mode|sh-end-of-command|sh-execute-region|sh-feature|sh-find-prev-matching|sh-find-prev-switch|sh-font-lock-backslash-quote|sh-font-lock-keywords-1|sh-font-lock-keywords-2|sh-font-lock-keywords|sh-font-lock-open-heredoc|sh-font-lock-paren|sh-font-lock-quoted-subshell|sh-font-lock-syntactic-face-function|sh-for|sh-function|sh-get-indent-info|sh-get-indent-var-for-line|sh-get-kw|sh-get-word|sh-goto-match-for-done|sh-goto-matching-case|sh-goto-matching-if|sh-guess-basic-offset|sh-handle-after-case-label|sh-handle-prev-case-alt-end|sh-handle-prev-case|sh-handle-prev-do|sh-handle-prev-done|sh-handle-prev-else|sh-handle-prev-esac|sh-handle-prev-fi|sh-handle-prev-if|sh-handle-prev-open|sh-handle-prev-rc-case|sh-handle-prev-then|sh-handle-this-close|sh-handle-this-do|sh-handle-this-done|sh-handle-this-else|sh-handle-this-esac|sh-handle-this-fi|sh-handle-this-rc-case|sh-handle-this-then|sh-help-string-for-variable|sh-if|sh-in-comment-or-string|sh-indent-line|sh-indexed-loop|sh-is-quoted-p|sh-learn-buffer-indent|sh-learn-line-indent|sh-load-style|sh-make-vars-local|sh-mark-init|sh-mark-line|sh-maybe-here-document|sh-mkword-regexpr|sh-mode-syntax-table|sh-mode|sh-modify|sh-must-support-indent|sh-name-style|sh-prev-line|sh-prev-stmt|sh-prev-thing|sh-quoted-p|sh-read-variable|sh-remember-variable|sh-repeat|sh-reset-indent-vars-to-global-values|sh-safe-forward-sexp|sh-save-styles-to-buffer|sh-select|sh-send-line-or-region-and-step|sh-send-text|sh-set-indent|sh-set-shell|sh-set-var-value|sh-shell-initialize-variables|sh-shell-process|sh-show-indent|sh-show-shell|sh-smie--continuation-start-indent|sh-smie--default-backward-token|sh-smie--default-forward-token|sh-smie--keyword-p|sh-smie--looking-back-at-continuation-p|sh-smie--newline-semi-p|sh-smie--rc-after-special-arg-p|sh-smie--rc-newline-semi-p|sh-smie--sh-keyword-in-p|sh-smie--sh-keyword-p|sh-smie-rc-backward-token|sh-smie-rc-forward-token|sh-smie-rc-rules|sh-smie-sh-backward-token|sh-smie-sh-forward-token|sh-smie-sh-rules|sh-syntax-propertize-function|sh-syntax-propertize-here-doc|sh-this-is-a-continuation|sh-tmp-file|sh-until|sh-var-value|sh-while-getopts|sh-while|sha1|shadow-add-to-todo|shadow-cancel|shadow-cluster-name|shadow-cluster-primary|shadow-cluster-regexp|shadow-contract-file-name|shadow-copy-file|shadow-copy-files|shadow-define-cluster|shadow-define-literal-group|shadow-define-regexp-group|shadow-expand-cluster-in-file-name|shadow-expand-file-name|shadow-file-match|shadow-find|shadow-get-cluster|shadow-get-user|shadow-initialize|shadow-insert-var|shadow-invalidate-hashtable|shadow-local-file|shadow-make-cluster|shadow-make-fullname|shadow-make-group|shadow-parse-fullname|shadow-parse-name|shadow-read-files|shadow-read-site|shadow-regexp-superquote|shadow-remove-from-todo|shadow-replace-name-component|shadow-same-site|shadow-save-buffers-kill-emacs|shadow-save-todo-file|shadow-set-cluster|shadow-shadows-of-1|shadow-shadows-of|shadow-shadows|shadow-site-cluster|shadow-site-match|shadow-site-primary|shadow-suffix|shadow-union|shadow-write-info-file|shadow-write-todo-file|shadowfile-unload-function|shared-initialize|shell--command-completion-data|shell--parse-pcomplete-arguments|shell--requote-argument|shell--unquote&requote-argument|shell--unquote-argument|shell-apply-ansi-color|shell-backward-command|shell-c-a-p-replace-by-expanded-directory|shell-cd|shell-command-completion-function|shell-command-completion|shell-command-on-region|shell-command-sentinel|shell-command|shell-completion-vars|shell-copy-environment-variable|shell-directory-tracker|shell-dirstack-message|shell-dirtrack-mode|shell-dirtrack-toggle|shell-dynamic-complete-command|shell-dynamic-complete-environment-variable|shell-dynamic-complete-filename|shell-environment-variable-completion|shell-extract-num|shell-filename-completion|shell-filter-ctrl-a-ctrl-b|shell-forward-command|shell-match-partial-variable|shell-mode|shell-prefixed-directory-name|shell-process-cd|shell-process-popd|shell-process-pushd|shell-quote-wildcard-pattern|shell-reapply-ansi-color|shell-replace-by-expanded-directory|shell-resync-dirs|shell-script-mode|shell-snarf-envar|shell-strip-ctrl-m|shell-unquote-argument|shell-write-history-on-exit|shell|shiftf|should-error|should-not|should|show-all|show-branches|show-buffer|show-children|show-entry|show-ifdef-block|show-ifdefs|show-paren--categorize-paren|show-paren--default|show-paren--locate-near-paren|show-paren--unescaped-p|show-paren-function|show-paren-mode|show-subtree|shr--extract-best-source|shr--get-media-pref|shr-add-font|shr-browse-image|shr-browse-url|shr-buffer-width|shr-char-breakable-p--inliner|shr-char-breakable-p|shr-char-kinsoku-bol-p--inliner|shr-char-kinsoku-bol-p|shr-char-kinsoku-eol-p--inliner|shr-char-kinsoku-eol-p|shr-char-nospace-p--inliner|shr-char-nospace-p|shr-color->hexadecimal|shr-color-check|shr-color-hsl-to-rgb-fractions|shr-color-hue-to-rgb|shr-color-relative-to-absolute|shr-color-set-minimum-interval|shr-color-visible|shr-colorize-region|shr-column-specs|shr-copy-url|shr-count|shr-descend|shr-dom-print|shr-dom-to-xml|shr-encode-url|shr-ensure-newline|shr-ensure-paragraph|shr-expand-newlines|shr-expand-url|shr-find-fill-point|shr-fold-text|shr-fontize-dom|shr-generic|shr-get-image-data|shr-heading|shr-image-displayer|shr-image-fetched|shr-image-from-data|shr-indent)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:shr-insert-image|shr-insert-table-ruler|shr-insert-table|shr-insert|shr-make-table-1|shr-make-table|shr-max-columns|shr-mouse-browse-url|shr-next-link|shr-parse-base|shr-parse-image-data|shr-parse-style|shr-previous-link|shr-previous-newline-padding-width|shr-pro-rate-columns|shr-put-image|shr-remove-trailing-whitespace|shr-render-buffer|shr-render-region|shr-render-td|shr-rescale-image|shr-save-contents|shr-show-alt-text|shr-store-contents|shr-table-widths|shr-tag-a|shr-tag-audio|shr-tag-b|shr-tag-base|shr-tag-blockquote|shr-tag-body|shr-tag-br|shr-tag-comment|shr-tag-dd|shr-tag-del|shr-tag-div|shr-tag-dl|shr-tag-dt|shr-tag-em|shr-tag-font|shr-tag-h1|shr-tag-h2|shr-tag-h3|shr-tag-h4|shr-tag-h5|shr-tag-h6|shr-tag-hr|shr-tag-i|shr-tag-img|shr-tag-label|shr-tag-li|shr-tag-object|shr-tag-ol|shr-tag-p|shr-tag-pre|shr-tag-s|shr-tag-script|shr-tag-span|shr-tag-strong|shr-tag-style|shr-tag-sub|shr-tag-sup|shr-tag-svg|shr-tag-table-1|shr-tag-table|shr-tag-title|shr-tag-u|shr-tag-ul|shr-tag-video|shr-urlify|shr-zoom-image|shrink-window-horizontally|shrink-window|shuffle-vector|sieve-manage|sieve-mode|sieve-upload-and-bury|sieve-upload-and-kill|sieve-upload|signum|simula-backward-up-level|simula-calculate-indent|simula-context|simula-electric-keyword|simula-electric-label|simula-expand-keyword|simula-expand-stdproc|simula-find-do-match|simula-find-if|simula-find-inspect|simula-forward-down-level|simula-forward-up-level|simula-goto-definition|simula-indent-command|simula-indent-exp|simula-indent-line|simula-inside-parens|simula-install-standard-abbrevs|simula-mode|simula-next-statement|simula-popup-menu|simula-previous-statement|simula-search-backward|simula-search-forward|simula-skip-comment-backward|simula-skip-comment-forward|simula-submit-bug-report|sixth|size-indication-mode|skeleton-insert|skeleton-internal-1|skeleton-internal-list|skeleton-pair-insert-maybe|skeleton-proxy-new|skeleton-read|skip-line-prefix|slitex-mode|slot-boundp|slot-exists-p|slot-makeunbound|slot-missing|slot-unbound|slot-value|smbclient-list-shares|smbclient-mode|smbclient|smerge--get-marker|smerge-apply-resolution-patch|smerge-auto-combine|smerge-auto-leave|smerge-batch-resolve|smerge-check|smerge-combine-with-next|smerge-conflict-overlay|smerge-context-menu|smerge-diff-base-mine|smerge-diff-base-other|smerge-diff-mine-other|smerge-diff|smerge-ediff|smerge-ensure-match|smerge-find-conflict|smerge-get-current|smerge-keep-all|smerge-keep-base|smerge-keep-current|smerge-keep-mine|smerge-keep-n|smerge-keep-other|smerge-kill-current|smerge-makeup-conflict|smerge-match-conflict|smerge-mode-menu|smerge-mode|smerge-next|smerge-popup-context-menu|smerge-prev|smerge-refine-chopup-region|smerge-refine-forward|smerge-refine-highlight-change|smerge-refine-subst|smerge-refine|smerge-remove-props|smerge-resolve--extract-comment|smerge-resolve--normalize|smerge-resolve-all|smerge-resolve|smerge-start-session|smerge-swap|smie--associative-p|smie--matching-block-data|smie--next-indent-change|smie--opener\\\\\\\\/closer-at-point|smie-auto-fill|smie-backward-sexp-command|smie-backward-sexp|smie-blink-matching-check|smie-blink-matching-open|smie-bnf--classify|smie-bnf--closer-alist|smie-bnf--set-class|smie-config--advice|smie-config--get-trace|smie-config--guess-1|smie-config--guess-value|smie-config--guess|smie-config--mode-hook|smie-config--setter|smie-debug--describe-cycle|smie-debug--prec2-cycle|smie-default-backward-token|smie-default-forward-token|smie-edebug|smie-forward-sexp-command|smie-forward-sexp|smie-indent--bolp-1|smie-indent--bolp|smie-indent--hanging-p|smie-indent--offset|smie-indent--parent|smie-indent--rule-1|smie-indent--rule|smie-indent--separator-outdent|smie-indent-after-keyword|smie-indent-backward-token|smie-indent-bob|smie-indent-calculate|smie-indent-close|smie-indent-comment-close|smie-indent-comment-continue|smie-indent-comment-inside|smie-indent-comment|smie-indent-exps|smie-indent-fixindent|smie-indent-forward-token|smie-indent-inside-string|smie-indent-keyword|smie-indent-line|smie-indent-virtual|smie-next-sexp|smie-op-left|smie-op-right|smie-set-prec2tab|smiley-buffer|smiley-region|smtpmail-command-or-throw|smtpmail-cred-cert|smtpmail-cred-key|smtpmail-cred-passwd|smtpmail-cred-port|smtpmail-cred-server|smtpmail-cred-user|smtpmail-deduce-address-list|smtpmail-do-bcc|smtpmail-find-credentials|smtpmail-fqdn|smtpmail-intersection|smtpmail-maybe-append-domain|smtpmail-ok-p|smtpmail-process-filter|smtpmail-query-smtp-server|smtpmail-read-response|smtpmail-response-code|smtpmail-response-text|smtpmail-send-command|smtpmail-send-data-1|smtpmail-send-data|smtpmail-send-it|smtpmail-send-queued-mail|smtpmail-try-auth-method|smtpmail-try-auth-methods|smtpmail-user-mail-address|smtpmail-via-smtp|snake-active-p|snake-display-options|snake-end-game|snake-final-x-velocity|snake-final-y-velocity|snake-init-buffer|snake-mode|snake-move-down|snake-move-left|snake-move-right|snake-move-up|snake-pause-game|snake-reset-game|snake-start-game|snake-update-game|snake-update-score|snake-update-velocity|snake|snarf-spooks|snmp-calculate-indent|snmp-common-mode|snmp-completing-read|snmp-indent-line|snmp-mode-imenu-create-index|snmp-mode|snmpv2-mode|soap-array-type-element-type--cmacro|soap-array-type-element-type|soap-array-type-name--cmacro|soap-array-type-name|soap-array-type-namespace-tag--cmacro|soap-array-type-namespace-tag|soap-array-type-p--cmacro|soap-array-type-p|soap-basic-type-kind--cmacro|soap-basic-type-kind|soap-basic-type-name--cmacro|soap-basic-type-name|soap-basic-type-namespace-tag--cmacro|soap-basic-type-namespace-tag|soap-basic-type-p--cmacro|soap-basic-type-p|soap-binding-name--cmacro|soap-binding-name|soap-binding-namespace-tag--cmacro|soap-binding-namespace-tag|soap-binding-operations--cmacro|soap-binding-operations|soap-binding-p--cmacro|soap-binding-p|soap-binding-port-type--cmacro|soap-binding-port-type|soap-bound-operation-operation--cmacro|soap-bound-operation-operation|soap-bound-operation-p--cmacro|soap-bound-operation-p|soap-bound-operation-soap-action--cmacro|soap-bound-operation-soap-action|soap-bound-operation-use--cmacro|soap-bound-operation-use|soap-create-envelope|soap-decode-any-type|soap-decode-array-type|soap-decode-array|soap-decode-basic-type|soap-decode-sequence-type|soap-decode-type|soap-default-soapenc-types|soap-default-xsd-types|soap-element-fq-name|soap-element-name--cmacro|soap-element-name|soap-element-namespace-tag--cmacro|soap-element-namespace-tag|soap-element-p--cmacro|soap-element-p|soap-encode-array-type|soap-encode-basic-type|soap-encode-body|soap-encode-sequence-type|soap-encode-simple-type|soap-encode-value|soap-extract-xmlns|soap-get-target-namespace|soap-invoke|soap-l2fq|soap-l2wk|soap-load-wsdl-from-url|soap-load-wsdl|soap-message-name--cmacro|soap-message-name|soap-message-namespace-tag--cmacro|soap-message-namespace-tag|soap-message-p--cmacro|soap-message-p|soap-message-parts--cmacro|soap-message-parts|soap-namespace-elements--cmacro|soap-namespace-elements|soap-namespace-get|soap-namespace-link-name--cmacro|soap-namespace-link-name|soap-namespace-link-namespace-tag--cmacro|soap-namespace-link-namespace-tag|soap-namespace-link-p--cmacro|soap-namespace-link-p|soap-namespace-link-target--cmacro|soap-namespace-link-target|soap-namespace-name--cmacro|soap-namespace-name|soap-namespace-p--cmacro|soap-namespace-p|soap-namespace-put-link|soap-namespace-put|soap-operation-faults--cmacro|soap-operation-faults|soap-operation-input--cmacro|soap-operation-input|soap-operation-name--cmacro|soap-operation-name|soap-operation-namespace-tag--cmacro|soap-operation-namespace-tag|soap-operation-output--cmacro|soap-operation-output|soap-operation-p--cmacro|soap-operation-p|soap-operation-parameter-order--cmacro|soap-operation-parameter-order|soap-parse-binding|soap-parse-complex-type-complex-content|soap-parse-complex-type-sequence|soap-parse-complex-type|soap-parse-envelope|soap-parse-message|soap-parse-operation|soap-parse-port-type|soap-parse-response|soap-parse-schema-element|soap-parse-schema|soap-parse-sequence|soap-parse-simple-type|soap-parse-wsdl|soap-port-binding--cmacro|soap-port-binding|soap-port-name--cmacro|soap-port-name|soap-port-namespace-tag--cmacro|soap-port-namespace-tag|soap-port-p--cmacro|soap-port-p|soap-port-service-url--cmacro|soap-port-service-url|soap-port-type-name--cmacro|soap-port-type-name|soap-port-type-namespace-tag--cmacro|soap-port-type-namespace-tag|soap-port-type-operations--cmacro|soap-port-type-operations|soap-port-type-p--cmacro|soap-port-type-p|soap-resolve-references-for-array-type|soap-resolve-references-for-binding|soap-resolve-references-for-element|soap-resolve-references-for-message|soap-resolve-references-for-operation|soap-resolve-references-for-port|soap-resolve-references-for-sequence-type|soap-resolve-references-for-simple-type|soap-sequence-element-multiple\\\\\\\\?--cmacro|soap-sequence-element-multiple\\\\\\\\?|soap-sequence-element-name--cmacro|soap-sequence-element-name|soap-sequence-element-nillable\\\\\\\\?--cmacro|soap-sequence-element-nillable\\\\\\\\?|soap-sequence-element-p--cmacro|soap-sequence-element-p|soap-sequence-element-type--cmacro|soap-sequence-element-type|soap-sequence-type-elements--cmacro|soap-sequence-type-elements|soap-sequence-type-name--cmacro|soap-sequence-type-name|soap-sequence-type-namespace-tag--cmacro|soap-sequence-type-namespace-tag|soap-sequence-type-p--cmacro|soap-sequence-type-p|soap-sequence-type-parent--cmacro|soap-sequence-type-parent|soap-simple-type-enumeration--cmacro|soap-simple-type-enumeration|soap-simple-type-kind--cmacro|soap-simple-type-kind|soap-simple-type-name--cmacro|soap-simple-type-name|soap-simple-type-namespace-tag--cmacro|soap-simple-type-namespace-tag|soap-simple-type-p--cmacro|soap-simple-type-p|soap-type-p|soap-warning|soap-with-local-xmlns|soap-wk2l|soap-wsdl-add-alias|soap-wsdl-add-namespace|soap-wsdl-alias-table--cmacro|soap-wsdl-alias-table|soap-wsdl-find-namespace|soap-wsdl-get|soap-wsdl-namespaces--cmacro|soap-wsdl-namespaces|soap-wsdl-origin--cmacro|soap-wsdl-origin|soap-wsdl-p--cmacro|soap-wsdl-p|soap-wsdl-ports--cmacro|soap-wsdl-ports|soap-wsdl-resolve-references|soap-xml-get-attribute-or-nil1|soap-xml-get-children1|socks-build-auth-list|socks-chap-auth|socks-cram-auth|socks-filter|socks-find-route|socks-find-services-entry|socks-gssapi-auth|socks-nslookup-host|socks-open-connection|socks-open-network-stream|socks-original-open-network-stream|socks-parse-services|socks-register-authentication-method|socks-send-command|socks-split-string|socks-unregister-authentication-method|socks-username\\\\\\\\/password-auth-filter|socks-username\\\\\\\\/password-auth|socks-wait-for-state-change|solicit-char-in-string|solitaire-build-mode-line|solitaire-center-point|solitaire-check|solitaire-current-line|solitaire-do-check|solitaire-down|solitaire-insert-board|solitaire-left|solitaire-mode|solitaire-move-down|solitaire-move-left|solitaire-move-right|solitaire-move-up|solitaire-move|solitaire-possible-move|solitaire-right|solitaire-solve|solitaire-undo|solitaire-up|solitaire|some-window|some|sort\\\\\\\\*|sort-build-lists|sort-charsets|sort-coding-systems|sort-fields-1|sort-pages-buffer|sort-pages-in-region|sort-regexp-fields-next-record|sort-reorder-buffer|sort-skip-fields|soundex|spaces-string|spam-initialize|spam-report-agentize|spam-report-deagentize|spam-report-process-queue|spam-report-url-ping-mm-url|spam-report-url-to-file|special-display-p|special-display-popup-frame|speedbar-add-expansion-list|speedbar-add-ignored-directory-regexp|speedbar-add-ignored-path-regexp|speedbar-add-indicator|speedbar-add-localized-speedbar-support|speedbar-add-mode-functions-list|speedbar-add-supported-extension|speedbar-backward-list|speedbar-buffer-buttons-engine|speedbar-buffer-buttons-temp|speedbar-buffer-buttons|speedbar-buffer-click|speedbar-buffer-kill-buffer|speedbar-buffer-revert-buffer|speedbar-buffers-item-info|speedbar-buffers-line-directory|speedbar-buffers-line-path|speedbar-buffers-tail-notes|speedbar-center-buffer-smartly|speedbar-change-expand-button-char|speedbar-change-initial-expansion-list|speedbar-check-obj-this-line|speedbar-check-objects|speedbar-check-read-only|speedbar-check-vc-this-line|speedbar-check-vc|speedbar-clear-current-file|speedbar-click|speedbar-contract-line-descendants|speedbar-contract-line|speedbar-create-directory)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:speedbar-create-tag-hierarchy|speedbar-current-frame|speedbar-customize|speedbar-default-directory-list|speedbar-delete-overlay|speedbar-delete-subblock|speedbar-dir-follow|speedbar-directory-buttons-follow|speedbar-directory-buttons|speedbar-directory-line|speedbar-dired|speedbar-disable-update|speedbar-do-function-pointer|speedbar-edit-line|speedbar-enable-update|speedbar-expand-line-descendants|speedbar-expand-line|speedbar-extension-list-to-regex|speedbar-extract-one-symbol|speedbar-fetch-dynamic-etags|speedbar-fetch-dynamic-imenu|speedbar-fetch-dynamic-tags|speedbar-fetch-replacement-function|speedbar-file-lists|speedbar-files-item-info|speedbar-files-line-directory|speedbar-find-file-in-frame|speedbar-find-file|speedbar-find-selected-file|speedbar-flush-expand-line|speedbar-forward-list|speedbar-frame-mode|speedbar-frame-reposition-smartly|speedbar-frame-width|speedbar-generic-item-info|speedbar-generic-list-group-p|speedbar-generic-list-positioned-group-p|speedbar-generic-list-tag-p|speedbar-get-focus|speedbar-goto-this-file|speedbar-handle-delete-frame|speedbar-highlight-one-tag-line|speedbar-image-dump|speedbar-initial-expansion-list|speedbar-initial-keymap|speedbar-initial-menu|speedbar-initial-stealthy-functions|speedbar-insert-button|speedbar-insert-etags-list|speedbar-insert-files-at-point|speedbar-insert-generic-list|speedbar-insert-image-button-maybe|speedbar-insert-imenu-list|speedbar-insert-separator|speedbar-item-byte-compile|speedbar-item-copy|speedbar-item-delete|speedbar-item-info-file-helper|speedbar-item-info-tag-helper|speedbar-item-info|speedbar-item-load|speedbar-item-object-delete|speedbar-item-rename|speedbar-line-directory|speedbar-line-file|speedbar-line-path|speedbar-line-text|speedbar-line-token|speedbar-make-button|speedbar-make-overlay|speedbar-make-specialized-keymap|speedbar-make-tag-line|speedbar-maybe-add-localized-support|speedbar-maybee-jump-to-attached-frame|speedbar-message|speedbar-mode-line-update|speedbar-mode|speedbar-mouse-item-info|speedbar-navigate-list|speedbar-next|speedbar-overlay-put|speedbar-parse-c-or-c\\\\\\\\+\\\\\\\\+tag|speedbar-parse-tex-string|speedbar-path-line|speedbar-position-cursor-on-line|speedbar-prefix-group-tag-hierarchy|speedbar-prev|speedbar-recenter-to-top|speedbar-recenter|speedbar-reconfigure-keymaps|speedbar-refresh|speedbar-remove-localized-speedbar-support|speedbar-reset-scanners|speedbar-restricted-move|speedbar-restricted-next|speedbar-restricted-prev|speedbar-scroll-down|speedbar-scroll-up|speedbar-select-attached-frame|speedbar-set-mode-line-format|speedbar-set-timer|speedbar-show-info-under-mouse|speedbar-simple-group-tag-hierarchy|speedbar-sort-tag-hierarchy|speedbar-stealthy-updates|speedbar-tag-expand|speedbar-tag-file|speedbar-tag-find|speedbar-this-file-in-vc|speedbar-timer-fn|speedbar-toggle-etags|speedbar-toggle-images|speedbar-toggle-line-expansion|speedbar-toggle-show-all-files|speedbar-toggle-sorting|speedbar-toggle-updates|speedbar-track-mouse|speedbar-trim-words-tag-hierarchy|speedbar-try-completion|speedbar-unhighlight-one-tag-line|speedbar-up-directory|speedbar-update-contents|speedbar-update-current-file|speedbar-update-directory-contents|speedbar-update-localized-contents|speedbar-update-special-contents|speedbar-vc-check-dir-p|speedbar-with-attached-buffer|speedbar-with-writable|speedbar-y-or-n-p|speedbar|split-char|split-line|split-window-horizontally|split-window-internal|split-window-vertically|spook|sql--completion-table|sql--make-help-docstring|sql--oracle-show-reserved-words|sql-accumulate-and-indent|sql-add-product-keywords|sql-add-product|sql-beginning-of-statement|sql-buffer-live-p|sql-build-completions-1|sql-build-completions|sql-comint-db2|sql-comint-informix|sql-comint-ingres|sql-comint-interbase|sql-comint-linter|sql-comint-ms|sql-comint-mysql|sql-comint-oracle|sql-comint-postgres|sql-comint-solid|sql-comint-sqlite|sql-comint-sybase|sql-comint-vertica|sql-comint|sql-connect|sql-connection-menu-filter|sql-copy-column|sql-db2|sql-default-value|sql-del-product|sql-end-of-statement|sql-ends-with-prompt-re|sql-escape-newlines-filter|sql-execute-feature|sql-execute|sql-find-sqli-buffer|sql-font-lock-keywords-builder|sql-for-each-login|sql-get-login-ext|sql-get-login|sql-get-product-feature|sql-help-list-products|sql-help|sql-highlight-ansi-keywords|sql-highlight-db2-keywords|sql-highlight-informix-keywords|sql-highlight-ingres-keywords|sql-highlight-interbase-keywords|sql-highlight-linter-keywords|sql-highlight-ms-keywords|sql-highlight-mysql-keywords|sql-highlight-oracle-keywords|sql-highlight-postgres-keywords|sql-highlight-product|sql-highlight-solid-keywords|sql-highlight-sqlite-keywords|sql-highlight-sybase-keywords|sql-highlight-vertica-keywords|sql-informix|sql-ingres|sql-input-sender|sql-interactive-mode-menu|sql-interactive-mode|sql-interactive-remove-continuation-prompt|sql-interbase|sql-linter|sql-list-all|sql-list-table|sql-magic-go|sql-magic-semicolon|sql-make-alternate-buffer-name|sql-mode-menu|sql-mode|sql-ms|sql-mysql|sql-oracle-completion-object|sql-oracle-list-all|sql-oracle-list-table|sql-oracle-restore-settings|sql-oracle-save-settings|sql-oracle|sql-placeholders-filter|sql-postgres-completion-object|sql-postgres|sql-product-font-lock-syntax-alist|sql-product-font-lock|sql-product-interactive|sql-product-syntax-table|sql-read-connection|sql-read-product|sql-read-table-name|sql-redirect-one|sql-redirect-value|sql-redirect|sql-regexp-abbrev-list|sql-regexp-abbrev|sql-remove-tabs-filter|sql-rename-buffer|sql-save-connection|sql-send-buffer|sql-send-line-and-next|sql-send-magic-terminator|sql-send-paragraph|sql-send-region|sql-send-string|sql-set-product-feature|sql-set-product|sql-set-sqli-buffer-generally|sql-set-sqli-buffer|sql-show-sqli-buffer|sql-solid|sql-sqlite-completion-object|sql-sqlite|sql-starts-with-prompt-re|sql-statement-regexp|sql-stop|sql-str-literal|sql-sybase|sql-toggle-pop-to-buffer-after-send-region|sql-vertica|squeeze-bidi-context-1|squeeze-bidi-context|srecode-compile-templates|srecode-document-insert-comment|srecode-document-insert-function-comment|srecode-document-insert-group-comments|srecode-document-insert-variable-one-line-comment|srecode-get-maps|srecode-insert-getset|srecode-insert-prototype-expansion|srecode-insert|srecode-minor-mode|srecode-semantic-handle-:c|srecode-semantic-handle-:cpp|srecode-semantic-handle-:el-custom|srecode-semantic-handle-:el|srecode-semantic-handle-:java|srecode-semantic-handle-:srt|srecode-semantic-handle-:texi|srecode-semantic-handle-:texitag|srecode-template-mode|srecode-template-setup-parser|srt-mode|stable-sort|standard-class|standard-display-8bit|standard-display-ascii|standard-display-cyrillic-translit|standard-display-default|standard-display-european-internal|standard-display-european|standard-display-g1|standard-display-graphic|standard-display-underline|start-kbd-macro|start-of-paragraph-text|start-scheme|starttls-any-program-available|starttls-available-p|starttls-negotiate-gnutls|starttls-negotiate|starttls-open-stream-gnutls|starttls-open-stream|starttls-set-process-query-on-exit-flag|startup-echo-area-message|straight-use-package|store-kbd-macro-event|string-blank-p|string-collate-equalp|string-collate-lessp|string-empty-p|string-insert-rectangle|string-join|string-make-multibyte|string-make-unibyte|string-rectangle-line|string-rectangle|string-remove-prefix|string-remove-suffix|string-reverse|string-to-list|string-to-vector|string-trim-left|string-trim-right|string-trim|strokes-alphabetic-lessp|strokes-button-press-event-p|strokes-button-release-event-p|strokes-click-p|strokes-compose-complex-stroke|strokes-decode-buffer|strokes-define-stroke|strokes-describe-stroke|strokes-distance-squared|strokes-do-complex-stroke|strokes-do-stroke|strokes-eliminate-consecutive-redundancies|strokes-encode-buffer|strokes-event-closest-point-1|strokes-event-closest-point|strokes-execute-stroke|strokes-fill-current-buffer-with-whitespace|strokes-fill-stroke|strokes-get-grid-position|strokes-get-stroke-extent|strokes-global-set-stroke-string|strokes-global-set-stroke|strokes-help|strokes-lift-p|strokes-list-strokes|strokes-load-user-strokes|strokes-match-stroke|strokes-mode|strokes-mouse-event-p|strokes-prompt-user-save-strokes|strokes-rate-stroke|strokes-read-complex-stroke|strokes-read-stroke|strokes-remassoc|strokes-renormalize-to-grid|strokes-report-bug|strokes-square|strokes-toggle-strokes-buffer|strokes-unload-function|strokes-unset-last-stroke|strokes-update-window-configuration|strokes-window-configuration-changed-p|strokes-xpm-char-bit-p|strokes-xpm-char-on-p|strokes-xpm-decode-char|strokes-xpm-encode-length-as-string|strokes-xpm-for-compressed-string|strokes-xpm-for-stroke|strokes-xpm-to-compressed-string|studlify-buffer|studlify-region|studlify-word|sublis|subr-name|subregexp-context-p|subseq|subsetp|subst-char-in-string|subst-if-not|subst-if|subst|substitute-env-in-file-name|substitute-env-vars|substitute-if-not|substitute-if|substitute-key-definition-key|substitute|subtract-time|subword-mode|sunrise-sunset|superword-mode|suspicious-object|svref|switch-to-completions|switch-to-lisp|switch-to-prolog|switch-to-scheme|switch-to-tcl|symbol-at-point|symbol-before-point-for-complete|symbol-before-point|symbol-macrolet|symbol-under-or-before-point|symbol-under-point|syntax-ppss-after-change-function|syntax-ppss-context|syntax-ppss-debug|syntax-ppss-depth|syntax-ppss-stats|syntax-propertize--shift-groups|syntax-propertize-multiline|syntax-propertize-precompile-rules|syntax-propertize-rules|syntax-propertize-via-font-lock|syntax-propertize-wholelines|syntax-propertize|t-mouse-mode|tabify|table--at-cell-p|table--buffer-substring-and-trim|table--cancel-timer|table--cell-blank-str|table--cell-can-span-p|table--cell-can-split-horizontally-p|table--cell-can-split-vertically-p|table--cell-horizontal-char-p|table--cell-insert-char|table--cell-list-to-coord-list|table--cell-to-coord|table--char-in-str-at-column|table--copy-coordinate|table--create-growing-space-below|table--current-line|table--detect-cell-alignment|table--editable-cell-p|table--fill-region-strictly|table--fill-region|table--find-row-column|table--finish-delayed-tasks|table--generate-source-cell-contents|table--generate-source-cells-in-a-row|table--generate-source-epilogue|table--generate-source-prologue|table--generate-source-scan-lines|table--generate-source-scan-rows|table--get-cell-justify-property|table--get-cell-valign-property|table--get-coordinate|table--get-last-command|table--get-property|table--goto-coordinate|table--horizontal-cell-list|table--horizontally-shift-above-and-below|table--insert-rectangle|table--justify-cell-contents|table--line-column-position|table--log|table--make-cell-map|table--measure-max-width|table--min-coord-list|table--multiply-string|table--offset-coordinate|table--point-entered-cell-function|table--point-in-cell-p|table--point-left-cell-function|table--probe-cell-left-up|table--probe-cell-right-bottom|table--probe-cell|table--put-cell-content-property|table--put-cell-face-property|table--put-cell-indicator-property|table--put-cell-justify-property|table--put-cell-keymap-property|table--put-cell-line-property|table--put-cell-point-entered\\\\\\\\/left-property|table--put-cell-property|table--put-cell-rear-nonsticky|table--put-cell-valign-property|table--put-property|table--query-justification|table--read-from-minibuffer|table--region-in-cell-p|table--remove-blank-lines|table--remove-cell-properties|table--remove-eol-spaces|table--row-column-insertion-point-p|table--set-timer|table--spacify-frame|table--str-index-at-column|table--string-to-number-list|table--test-cell-list|table--transcoord-cache-to-table|table--transcoord-table-to-cache|table--uniform-list-p|table--untabify-line|table--untabify|table--update-cell-face|table--update-cell-heightened|table--update-cell-widened|table--update-cell|table--valign|table--vertical-cell-list|table--warn-incompatibility|table-backward-cell|table-capture|table-delete-column|table-delete-row|table-fixed-width-mode|table-forward-cell|table-function|table-generate-source|table-get-source-info|table-global-menu-map|table-goto-bottom-left-corner|table-goto-bottom-right-corner|table-goto-top-left-corner|table-goto-top-right-corner|table-heighten-cell|table-insert-column|table-insert-row-column|table-insert-row|table-insert-sequence|table-insert|table-justify-cell|table-justify-column|table-justify-row|table-justify|table-narrow-cell|table-put-source-info|table-query-dimension|table-recognize-cell|table-recognize-region)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:table-recognize-table|table-recognize|table-release|table-shorten-cell|table-span-cell|table-split-cell-horizontally|table-split-cell-vertically|table-split-cell|table-unrecognize-cell|table-unrecognize-region|table-unrecognize-table|table-unrecognize|table-widen-cell|table-with-cache-buffer|tabulated-list--column-number|tabulated-list--sort-by-column-name|tabulated-list-col-sort|tabulated-list-delete-entry|tabulated-list-entry-size->|tabulated-list-get-entry|tabulated-list-get-id|tabulated-list-print-col|tabulated-list-print-entry|tabulated-list-print-fake-header|tabulated-list-put-tag|tabulated-list-revert|tabulated-list-set-col|tabulated-list-sort|tag-any-match-p|tag-exact-file-name-match-p|tag-exact-match-p|tag-file-name-match-p|tag-find-file-of-tag-noselect|tag-find-file-of-tag|tag-implicit-name-match-p|tag-partial-file-name-match-p|tag-re-match-p|tag-symbol-match-p|tag-word-match-p|tags-apropos|tags-complete-tags-table-file|tags-completion-at-point-function|tags-completion-table|tags-expand-table-name|tags-included-tables|tags-lazy-completion-table|tags-loop-continue|tags-loop-eval|tags-next-table|tags-query-replace|tags-recognize-empty-tags-table|tags-reset-tags-tables|tags-search|tags-table-check-computed-list|tags-table-extend-computed-list|tags-table-files|tags-table-including|tags-table-list-member|tags-table-mode|tags-verify-table|tags-with-face|tai-viet-composition-function|tailp|talk-add-display|talk-connect|talk-disconnect|talk-handle-delete-frame|talk-split-up-frame|talk-update-buffers|talk|tar--check-descriptor|tar--extract|tar-alter-one-field|tar-change-major-mode-hook|tar-chgrp-entry|tar-chmod-entry|tar-chown-entry|tar-clear-modification-flags|tar-clip-time-string|tar-copy|tar-current-descriptor|tar-data-swapped-p|tar-display-other-window|tar-expunge-internal|tar-expunge|tar-extract-other-window|tar-extract|tar-file-name-handler|tar-flag-deleted|tar-get-descriptor|tar-get-file-descriptor|tar-grind-file-mode|tar-header-block-check-checksum|tar-header-block-checksum|tar-header-block-summarize|tar-header-block-tokenize|tar-header-checksum--cmacro|tar-header-checksum|tar-header-data-end|tar-header-data-start--cmacro|tar-header-data-start|tar-header-date--cmacro|tar-header-date|tar-header-dmaj--cmacro|tar-header-dmaj|tar-header-dmin--cmacro|tar-header-dmin|tar-header-gid--cmacro|tar-header-gid|tar-header-gname--cmacro|tar-header-gname|tar-header-header-start--cmacro|tar-header-header-start|tar-header-link-name--cmacro|tar-header-link-name|tar-header-link-type--cmacro|tar-header-link-type|tar-header-magic--cmacro|tar-header-magic|tar-header-mode--cmacro|tar-header-mode|tar-header-name--cmacro|tar-header-name|tar-header-p--cmacro|tar-header-p|tar-header-size--cmacro|tar-header-size|tar-header-uid--cmacro|tar-header-uid|tar-header-uname--cmacro|tar-header-uname|tar-mode-kill-buffer-hook|tar-mode-revert|tar-mode|tar-mouse-extract|tar-next-line|tar-octal-time|tar-pad-to-blocksize|tar-parse-octal-integer-safe|tar-parse-octal-integer|tar-parse-octal-long-integer|tar-previous-line|tar-read-file-name|tar-rename-entry|tar-roundup-512|tar-subfile-mode|tar-subfile-save-buffer|tar-summarize-buffer|tar-swap-data|tar-unflag-backwards|tar-unflag|tar-untar-buffer|tar-view|tar-write-region-annotate|tcl-add-log-defun|tcl-auto-fill-mode|tcl-beginning-of-defun|tcl-calculate-indent|tcl-comment-indent|tcl-current-word|tcl-electric-brace|tcl-electric-char|tcl-electric-hash|tcl-end-of-defun|tcl-eval-defun|tcl-eval-region|tcl-figure-type|tcl-files-alist|tcl-filter|tcl-guess-application|tcl-hairy-scan-for-comment|tcl-hashify-buffer|tcl-help-on-word|tcl-help-snarf-commands|tcl-in-comment|tcl-indent-command|tcl-indent-exp|tcl-indent-for-comment|tcl-indent-line|tcl-load-file|tcl-mark-defun|tcl-mark|tcl-mode-menu|tcl-mode|tcl-outline-level|tcl-popup-menu|tcl-quote|tcl-real-command-p|tcl-real-comment-p|tcl-reread-help-files|tcl-restart-with-file|tcl-send-region|tcl-send-string|tcl-set-font-lock-keywords|tcl-set-proc-regexp|tcl-uncomment-region|tcl-word-no-props|tear-off-window|telnet-c-z|telnet-check-software-type-initialize|telnet-filter|telnet-initial-filter|telnet-interrupt-subjob|telnet-mode|telnet-send-input|telnet-simple-send|telnet|temp-buffer-resize-mode|temp-buffer-window-setup|temp-buffer-window-show|tempo-add-tag|tempo-backward-mark|tempo-build-collection|tempo-complete-tag|tempo-define-template|tempo-display-completions|tempo-expand-if-complete|tempo-find-match-string|tempo-forget-insertions|tempo-forward-mark|tempo-insert-mark|tempo-insert-named|tempo-insert-prompt-compat|tempo-insert-prompt|tempo-insert-template|tempo-insert|tempo-invalidate-collection|tempo-is-user-element|tempo-lookup-named|tempo-process-and-insert-string|tempo-save-named|tempo-template-dcl-f\\\\\\\\$context|tempo-template-dcl-f\\\\\\\\$csid|tempo-template-dcl-f\\\\\\\\$cvsi|tempo-template-dcl-f\\\\\\\\$cvtime|tempo-template-dcl-f\\\\\\\\$cvui|tempo-template-dcl-f\\\\\\\\$device|tempo-template-dcl-f\\\\\\\\$directory|tempo-template-dcl-f\\\\\\\\$edit|tempo-template-dcl-f\\\\\\\\$element|tempo-template-dcl-f\\\\\\\\$environment|tempo-template-dcl-f\\\\\\\\$extract|tempo-template-dcl-f\\\\\\\\$fao|tempo-template-dcl-f\\\\\\\\$file_attributes|tempo-template-dcl-f\\\\\\\\$getdvi|tempo-template-dcl-f\\\\\\\\$getjpi|tempo-template-dcl-f\\\\\\\\$getqui|tempo-template-dcl-f\\\\\\\\$getsyi|tempo-template-dcl-f\\\\\\\\$identifier|tempo-template-dcl-f\\\\\\\\$integer|tempo-template-dcl-f\\\\\\\\$length|tempo-template-dcl-f\\\\\\\\$locate|tempo-template-dcl-f\\\\\\\\$message|tempo-template-dcl-f\\\\\\\\$mode|tempo-template-dcl-f\\\\\\\\$parse|tempo-template-dcl-f\\\\\\\\$pid|tempo-template-dcl-f\\\\\\\\$privilege|tempo-template-dcl-f\\\\\\\\$process|tempo-template-dcl-f\\\\\\\\$search|tempo-template-dcl-f\\\\\\\\$setprv|tempo-template-dcl-f\\\\\\\\$string|tempo-template-dcl-f\\\\\\\\$time|tempo-template-dcl-f\\\\\\\\$trnlnm|tempo-template-dcl-f\\\\\\\\$type|tempo-template-dcl-f\\\\\\\\$user|tempo-template-dcl-f\\\\\\\\$verify|tempo-template-snmp-object-type|tempo-template-snmp-table-type|tempo-template-snmpv2-object-type|tempo-template-snmpv2-table-type|tempo-template-snmpv2-textual-convention|tempo-use-tag-list|tenth|term-adjust-current-row-cache|term-after-pmark-p|term-ansi-make-term|term-ansi-reset|term-args|term-arguments|term-backward-matching-input|term-bol|term-buffer-vertical-motion|term-char-mode|term-check-kill-echo-list|term-check-proc|term-check-size|term-check-source|term-command-hook|term-continue-subjob|term-copy-old-input|term-current-column|term-current-row|term-delchar-or-maybe-eof|term-delete-chars|term-delete-lines|term-delim-arg|term-directory|term-display-buffer-line|term-display-line|term-down|term-dynamic-complete-as-filename|term-dynamic-complete-filename|term-dynamic-complete|term-dynamic-list-completions|term-dynamic-list-filename-completions|term-dynamic-list-input-ring|term-dynamic-simple-complete|term-emulate-terminal|term-erase-in-display|term-erase-in-line|term-exec-1|term-exec|term-extract-string|term-forward-matching-input|term-get-old-input-default|term-get-source|term-goto-home|term-goto|term-handle-ansi-escape|term-handle-ansi-terminal-messages|term-handle-colors-array|term-handle-deferred-scroll|term-handle-exit|term-handle-scroll|term-handling-pager|term-horizontal-column|term-how-many-region|term-in-char-mode|term-in-line-mode|term-insert-char|term-insert-lines|term-insert-spaces|term-interrupt-subjob|term-kill-input|term-kill-output|term-kill-subjob|term-line-mode|term-magic-space|term-match-partial-filename|term-mode|term-mouse-paste|term-move-columns|term-next-input|term-next-matching-input-from-input|term-next-matching-input|term-next-prompt|term-pager-back-line|term-pager-back-page|term-pager-bob|term-pager-continue|term-pager-disable|term-pager-discard|term-pager-enable|term-pager-enabled|term-pager-eob|term-pager-help|term-pager-line|term-pager-menu|term-pager-page|term-pager-toggle|term-paste|term-previous-input-string|term-previous-input|term-previous-matching-input-from-input|term-previous-matching-input-string-position|term-previous-matching-input-string|term-previous-matching-input|term-previous-prompt|term-proc-query|term-process-pager|term-quit-subjob|term-read-input-ring|term-read-noecho|term-regexp-arg|term-replace-by-expanded-filename|term-replace-by-expanded-history-before-point|term-replace-by-expanded-history|term-reset-size|term-reset-terminal|term-search-arg|term-search-start|term-send-backspace|term-send-del|term-send-down|term-send-end|term-send-eof|term-send-home|term-send-input|term-send-insert|term-send-invisible|term-send-left|term-send-next|term-send-prior|term-send-raw-meta|term-send-raw-string|term-send-raw|term-send-region|term-send-right|term-send-string|term-send-up|term-sentinel|term-set-escape-char|term-set-scroll-region|term-show-maximum-output|term-show-output|term-signals-menu|term-simple-send|term-skip-prompt|term-source-default|term-start-line-column|term-start-output-log|term-stop-output-log|term-stop-subjob|term-terminal-menu|term-terminal-pos|term-unwrap-line|term-update-mode-line|term-using-alternate-sub-buffer|term-vertical-motion|term-window-width|term-within-quotes|term-word|term-write-input-ring|term|testcover-1value|testcover-after|testcover-end|testcover-enter|testcover-mark|testcover-read|testcover-reinstrument-compose|testcover-reinstrument-list|testcover-reinstrument|testcover-this-defun|testcover-unmark-all|tetris-active-p|tetris-default-update-speed-function|tetris-display-options|tetris-draw-border-p|tetris-draw-next-shape|tetris-draw-score|tetris-draw-shape|tetris-end-game|tetris-erase-shape|tetris-full-row|tetris-get-shape-cell|tetris-get-tick-period|tetris-init-buffer|tetris-mode|tetris-move-bottom|tetris-move-left|tetris-move-right|tetris-new-shape|tetris-pause-game|tetris-reset-game|tetris-rotate-next|tetris-rotate-prev|tetris-shape-done|tetris-shape-rotations|tetris-shape-width|tetris-shift-down|tetris-shift-row|tetris-start-game|tetris-test-shape|tetris-update-game|tetris-update-score|tetris|tex-alt-print|tex-append|tex-bibtex-file|tex-buffer|tex-categorize-whitespace|tex-close-latex-block|tex-cmd-doc-view|tex-command-active-p|tex-command-executable|tex-common-initialization|tex-compile-default|tex-compile|tex-count-words|tex-current-defun-name|tex-define-common-keys|tex-delete-last-temp-files|tex-display-shell|tex-env-mark|tex-executable-exists-p|tex-expand-files|tex-facemenu-add-face-function|tex-feed-input|tex-file|tex-font-lock-append-prop|tex-font-lock-match-suscript|tex-font-lock-suscript|tex-font-lock-syntactic-face-function|tex-font-lock-unfontify-region|tex-font-lock-verb|tex-format-cmd|tex-generate-zap-file-name|tex-goto-last-unclosed-latex-block|tex-guess-main-file|tex-guess-mode|tex-insert-braces|tex-insert-quote|tex-kill-job|tex-last-unended-begin|tex-last-unended-eparen|tex-latex-block|tex-main-file|tex-mode-flyspell-verify|tex-mode-internal|tex-mode|tex-next-unmatched-end|tex-next-unmatched-eparen|tex-old-error-file-name|tex-print|tex-recenter-output-buffer|tex-region-header|tex-region|tex-search-noncomment|tex-send-command|tex-send-tex-command|tex-set-buffer-directory|tex-shell-buf-no-error|tex-shell-buf|tex-shell-proc|tex-shell-running|tex-shell-sentinel|tex-shell|tex-show-print-queue|tex-start-shell|tex-start-tex|tex-string-prefix-p|tex-summarize-command|tex-suscript-height|tex-terminate-paragraph|tex-uptodate-p|tex-validate-buffer|tex-validate-region|tex-view|texi2info|texinfmt-version|texinfo-alias|texinfo-all-menus-update|texinfo-alphaenumerate-item|texinfo-alphaenumerate|texinfo-anchor|texinfo-append-refill|texinfo-capsenumerate-item|texinfo-capsenumerate|texinfo-check-for-node-name|texinfo-clean-up-node-line|texinfo-clear|texinfo-clone-environment|texinfo-copy-menu-title|texinfo-copy-menu|texinfo-copy-next-section-title|texinfo-copy-node-name|texinfo-copy-section-title|texinfo-copying|texinfo-current-defun-name|texinfo-define-common-keys|texinfo-define-info-enclosure|texinfo-delete-existing-pointers|texinfo-delete-from-print-queue|texinfo-delete-old-menu|texinfo-description|texinfo-discard-command-and-arg|texinfo-discard-command|texinfo-discard-line-with-args|texinfo-discard-line|texinfo-do-flushright|texinfo-do-itemize|texinfo-end-alphaenumerate|texinfo-end-capsenumerate|texinfo-end-defun|texinfo-end-direntry|texinfo-end-enumerate|texinfo-end-example|texinfo-end-flushleft)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:texinfo-end-flushright|texinfo-end-ftable|texinfo-end-indextable|texinfo-end-itemize|texinfo-end-multitable|texinfo-end-table|texinfo-end-vtable|texinfo-enumerate-item|texinfo-enumerate|texinfo-every-node-update|texinfo-filter|texinfo-find-higher-level-node|texinfo-find-lower-level-node|texinfo-find-pointer|texinfo-footnotestyle|texinfo-format-\\\\\\\\.|texinfo-format-:|texinfo-format-French-OE-ligature|texinfo-format-French-oe-ligature|texinfo-format-German-sharp-S|texinfo-format-Latin-Scandinavian-AE|texinfo-format-Latin-Scandinavian-ae|texinfo-format-Polish-suppressed-L|texinfo-format-Polish-suppressed-l-lower-case|texinfo-format-Scandinavian-A-with-circle|texinfo-format-Scandinavian-O-with-slash|texinfo-format-Scandinavian-a-with-circle|texinfo-format-Scandinavian-o-with-slash-lower-case|texinfo-format-TeX|texinfo-format-begin-end|texinfo-format-begin|texinfo-format-breve-accent|texinfo-format-buffer-1|texinfo-format-buffer|texinfo-format-bullet|texinfo-format-cedilla-accent|texinfo-format-center|texinfo-format-chapter-1|texinfo-format-chapter|texinfo-format-cindex|texinfo-format-code|texinfo-format-convert|texinfo-format-copyright|texinfo-format-ctrl|texinfo-format-defcv|texinfo-format-deffn|texinfo-format-defindex|texinfo-format-defivar|texinfo-format-defmethod|texinfo-format-defn|texinfo-format-defop|texinfo-format-deftypefn|texinfo-format-deftypefun|texinfo-format-defun-1|texinfo-format-defun|texinfo-format-defunx|texinfo-format-dircategory|texinfo-format-direntry|texinfo-format-documentdescription|texinfo-format-dotless|texinfo-format-dots|texinfo-format-email|texinfo-format-emph|texinfo-format-end-node|texinfo-format-end|texinfo-format-enddots|texinfo-format-equiv|texinfo-format-error|texinfo-format-example|texinfo-format-exdent|texinfo-format-expand-region|texinfo-format-expansion|texinfo-format-findex|texinfo-format-flushleft|texinfo-format-flushright|texinfo-format-footnote|texinfo-format-hacek-accent|texinfo-format-html|texinfo-format-ifeq|texinfo-format-ifhtml|texinfo-format-ifnotinfo|texinfo-format-ifplaintext|texinfo-format-iftex|texinfo-format-ifxml|texinfo-format-ignore|texinfo-format-image|texinfo-format-inforef|texinfo-format-kbd|texinfo-format-key|texinfo-format-kindex|texinfo-format-long-Hungarian-umlaut|texinfo-format-menu|texinfo-format-minus|texinfo-format-node|texinfo-format-noop|texinfo-format-option|texinfo-format-overdot-accent|texinfo-format-paragraph-break|texinfo-format-parse-args|texinfo-format-parse-defun-args|texinfo-format-parse-line-args|texinfo-format-pindex|texinfo-format-point|texinfo-format-pounds|texinfo-format-print|texinfo-format-printindex|texinfo-format-pxref|texinfo-format-refill|texinfo-format-region|texinfo-format-result|texinfo-format-ring-accent|texinfo-format-scan|texinfo-format-section|texinfo-format-sectionpad|texinfo-format-separate-node|texinfo-format-setfilename|texinfo-format-soft-hyphen|texinfo-format-sp|texinfo-format-specialized-defun|texinfo-format-subsection|texinfo-format-subsubsection|texinfo-format-synindex|texinfo-format-tex|texinfo-format-tie-after-accent|texinfo-format-timestamp|texinfo-format-tindex|texinfo-format-titlepage|texinfo-format-titlespec|texinfo-format-today|texinfo-format-underbar-accent|texinfo-format-underdot-accent|texinfo-format-upside-down-exclamation-mark|texinfo-format-upside-down-question-mark|texinfo-format-uref|texinfo-format-var|texinfo-format-verb|texinfo-format-vindex|texinfo-format-xml|texinfo-format-xref|texinfo-ftable-item|texinfo-ftable|texinfo-hierarchic-level|texinfo-if-clear|texinfo-if-set|texinfo-incorporate-descriptions|texinfo-incorporate-menu-entry-names|texinfo-indent-menu-description|texinfo-index-defcv|texinfo-index-deffn|texinfo-index-defivar|texinfo-index-defmethod|texinfo-index-defop|texinfo-index-deftypefn|texinfo-index-defun|texinfo-index|texinfo-indextable-item|texinfo-indextable|texinfo-insert-@code|texinfo-insert-@dfn|texinfo-insert-@email|texinfo-insert-@emph|texinfo-insert-@end|texinfo-insert-@example|texinfo-insert-@file|texinfo-insert-@item|texinfo-insert-@kbd|texinfo-insert-@node|texinfo-insert-@noindent|texinfo-insert-@quotation|texinfo-insert-@samp|texinfo-insert-@strong|texinfo-insert-@table|texinfo-insert-@uref|texinfo-insert-@url|texinfo-insert-@var|texinfo-insert-block|texinfo-insert-braces|texinfo-insert-master-menu-list|texinfo-insert-menu|texinfo-insert-node-lines|texinfo-insert-pointer|texinfo-insert-quote|texinfo-insertcopying|texinfo-inside-env-p|texinfo-inside-macro-p|texinfo-item|texinfo-itemize-item|texinfo-itemize|texinfo-last-unended-begin|texinfo-locate-menu-p|texinfo-make-menu-list|texinfo-make-menu|texinfo-make-one-menu|texinfo-master-menu-list|texinfo-master-menu|texinfo-menu-copy-old-description|texinfo-menu-end|texinfo-menu-first-node|texinfo-menu-indent-description|texinfo-menu-locate-entry-p|texinfo-mode-flyspell-verify|texinfo-mode-menu|texinfo-mode|texinfo-multi-file-included-list|texinfo-multi-file-master-menu-list|texinfo-multi-file-update|texinfo-multi-files-insert-main-menu|texinfo-multiple-files-update|texinfo-multitable-extract-row|texinfo-multitable-item|texinfo-multitable-widths|texinfo-multitable|texinfo-next-unmatched-end|texinfo-noindent|texinfo-old-menu-p|texinfo-optional-braces-discard|texinfo-paragraphindent|texinfo-parse-arg-discard|texinfo-parse-expanded-arg|texinfo-parse-line-arg|texinfo-pointer-name|texinfo-pop-stack|texinfo-print-index|texinfo-push-stack|texinfo-quit-job|texinfo-raise-lower-sections|texinfo-sequential-node-update|texinfo-sequentially-find-pointer|texinfo-sequentially-insert-pointer|texinfo-sequentially-update-the-node|texinfo-set|texinfo-show-structure|texinfo-sort-region|texinfo-sort-startkeyfun|texinfo-specific-section-type|texinfo-start-menu-description|texinfo-table-item|texinfo-table|texinfo-tex-buffer|texinfo-tex-print|texinfo-tex-region|texinfo-tex-view|texinfo-texindex|texinfo-top-pointer-case|texinfo-unsupported|texinfo-update-menu-region-beginning|texinfo-update-menu-region-end|texinfo-update-node|texinfo-update-the-node|texinfo-value|texinfo-vtable-item|texinfo-vtable|text-clone--maintain|text-clone-create|text-mode-hook-identify|text-scale-adjust|text-scale-decrease|text-scale-increase|text-scale-mode|text-scale-set|thai-compose-buffer|thai-compose-region|thai-compose-string|thai-composition-function|the|thing-at-point--bounds-of-markedup-url|thing-at-point--bounds-of-well-formed-url|thing-at-point-bounds-of-list-at-point|thing-at-point-bounds-of-url-at-point|thing-at-point-looking-at|thing-at-point-newsgroup-p|thing-at-point-url-at-point|third|this-major-mode-requires-vi-state|this-single-command-keys|this-single-command-raw-keys|thread-first|thread-last|thumbs-backward-char|thumbs-backward-line|thumbs-call-convert|thumbs-call-setroot-command|thumbs-cleanup-thumbsdir|thumbs-current-image|thumbs-delete-images|thumbs-dired-setroot|thumbs-dired-show-marked|thumbs-dired-show|thumbs-dired|thumbs-display-thumbs-buffer|thumbs-do-thumbs-insertion|thumbs-emboss-image|thumbs-enlarge-image|thumbs-file-alist|thumbs-file-list|thumbs-file-size|thumbs-find-image-at-point-other-window|thumbs-find-image-at-point|thumbs-find-image|thumbs-find-thumb|thumbs-forward-char|thumbs-forward-line|thumbs-image-type|thumbs-insert-image|thumbs-insert-thumb|thumbs-kill-buffer|thumbs-make-thumb|thumbs-mark|thumbs-mode|thumbs-modify-image|thumbs-monochrome-image|thumbs-mouse-find-image|thumbs-negate-image|thumbs-new-image-size|thumbs-next-image|thumbs-previous-image|thumbs-redraw-buffer|thumbs-rename-images|thumbs-resize-image-1|thumbs-resize-image|thumbs-rotate-left|thumbs-rotate-right|thumbs-save-current-image|thumbs-set-image-at-point-to-root-window|thumbs-set-root|thumbs-show-from-dir|thumbs-show-image-num|thumbs-show-more-images|thumbs-show-name|thumbs-show-thumbs-list|thumbs-shrink-image|thumbs-temp-dir|thumbs-temp-file|thumbs-thumbname|thumbs-thumbsdir|thumbs-unmark|thumbs-view-image-mode|thumbs|tibetan-char-p|tibetan-compose-buffer|tibetan-compose-region|tibetan-compose-string|tibetan-decompose-buffer|tibetan-decompose-region|tibetan-decompose-string|tibetan-post-read-conversion|tibetan-pre-write-canonicalize-for-unicode|tibetan-pre-write-conversion|tibetan-tibetan-to-transcription|tibetan-transcription-to-tibetan|tildify--deprecated-ignore-evironments|tildify--find-env|tildify--foreach-region|tildify--pick-alist-entry|tildify-buffer|tildify-foreach-ignore-environments|tildify-region|tildify-tildify|time-date--day-in-year|time-since|time-stamp-conv-warn|time-stamp-do-number|time-stamp-fconcat|time-stamp-mail-host-name|time-stamp-once|time-stamp-string-preprocess|time-stamp-string|time-stamp-toggle-active|time-stamp|time-to-number-of-days|time-to-seconds|timeclock-ask-for-project|timeclock-ask-for-reason|timeclock-change|timeclock-completing-read|timeclock-current-debt|timeclock-currently-in-p|timeclock-day-alist|timeclock-day-base|timeclock-day-begin|timeclock-day-break|timeclock-day-debt|timeclock-day-end|timeclock-day-length|timeclock-day-list-begin|timeclock-day-list-break|timeclock-day-list-debt|timeclock-day-list-end|timeclock-day-list-length|timeclock-day-list-projects|timeclock-day-list-required|timeclock-day-list-span|timeclock-day-list-template|timeclock-day-list|timeclock-day-projects|timeclock-day-required|timeclock-day-span|timeclock-entry-begin|timeclock-entry-comment|timeclock-entry-end|timeclock-entry-length|timeclock-entry-list-begin|timeclock-entry-list-break|timeclock-entry-list-end|timeclock-entry-list-length|timeclock-entry-list-projects|timeclock-entry-list-span|timeclock-entry-project|timeclock-find-discrep|timeclock-generate-report|timeclock-in|timeclock-last-period|timeclock-log-data|timeclock-log|timeclock-make-hours-explicit|timeclock-mean|timeclock-mode-line-display|timeclock-modeline-display|timeclock-out|timeclock-project-alist|timeclock-query-out|timeclock-read-moment|timeclock-reread-log|timeclock-seconds-to-string|timeclock-seconds-to-time|timeclock-status-string|timeclock-time-to-date|timeclock-time-to-seconds|timeclock-update-mode-line|timeclock-update-modeline|timeclock-visit-timelog|timeclock-when-to-leave-string|timeclock-when-to-leave|timeclock-workday-elapsed-string|timeclock-workday-elapsed|timeclock-workday-remaining-string|timeclock-workday-remaining|timeout-event-p|timep|timer--activate|timer--args--cmacro|timer--args|timer--check|timer--function--cmacro|timer--function|timer--high-seconds--cmacro|timer--high-seconds|timer--idle-delay--cmacro|timer--idle-delay|timer--low-seconds--cmacro|timer--low-seconds|timer--psecs--cmacro|timer--psecs|timer--repeat-delay--cmacro|timer--repeat-delay|timer--time-less-p|timer--time-setter|timer--time|timer--triggered--cmacro|timer--triggered|timer--usecs--cmacro|timer--usecs|timer-activate-when-idle|timer-activate|timer-create--cmacro|timer-create|timer-duration|timer-event-handler|timer-inc-time|timer-next-integral-multiple-of-time|timer-relative-time|timer-set-function|timer-set-idle-time|timer-set-time-with-usecs|timer-set-time|timer-until|timerp|timezone-absolute-from-gregorian|timezone-day-number|timezone-fix-time|timezone-last-day-of-month|timezone-leap-year-p|timezone-make-arpa-date|timezone-make-date-arpa-standard|timezone-make-date-sortable|timezone-make-sortable-date|timezone-make-time-string|timezone-parse-date|timezone-parse-time|timezone-time-from-absolute|timezone-time-zone-from-absolute|timezone-zone-to-minute|titdic-convert|tls-certificate-information|tmm--completion-table|tmm-add-one-shortcut|tmm-add-prompt|tmm-add-shortcuts|tmm-completion-delete-prompt|tmm-define-keys|tmm-get-keybind|tmm-get-keymap|tmm-goto-completions|tmm-menubar-mouse|tmm-menubar|tmm-prompt|tmm-remove-inactive-mouse-face|tmm-shortcut|todo--user-error-if-marked-done-item|todo-absolute-file-name|todo-add-category|todo-add-file|todo-adjusted-category-label-length|todo-archive-done-item|todo-archive-mode|todo-backward-category|todo-backward-item|todo-categories-mode|todo-category-completions|todo-category-number|todo-category-select|todo-category-string-matcher-1|todo-category-string-matcher-2|todo-check-file|todo-check-filtered-items-file|todo-check-format|todo-choose-archive|todo-clear-matches|todo-comment-string-matcher|todo-convert-legacy-date-time|todo-convert-legacy-files|todo-current-category|todo-date-string-matcher|todo-delete-category|todo-delete-file|todo-delete-item|todo-desktop-save-buffer)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:todo-diary-expired-matcher|todo-diary-goto-entry|todo-diary-item-p|todo-diary-nonmarking-matcher|todo-display-categories|todo-display-sorted|todo-done-item-p|todo-done-item-section-p|todo-done-separator|todo-done-string-matcher|todo-edit-category-diary-inclusion|todo-edit-category-diary-nonmarking|todo-edit-file|todo-edit-item--diary-inclusion|todo-edit-item--header|todo-edit-item--next-key|todo-edit-item--text|todo-edit-item|todo-edit-mode|todo-edit-quit|todo-files|todo-filter-diary-items-multifile|todo-filter-diary-items|todo-filter-items-1|todo-filter-items-filename|todo-filter-items|todo-filter-regexp-items-multifile|todo-filter-regexp-items|todo-filter-top-priorities-multifile|todo-filter-top-priorities|todo-filtered-items-mode|todo-find-archive|todo-find-filtered-items-file|todo-find-item|todo-forward-category|todo-forward-item|todo-get-count|todo-get-overlay|todo-go-to-source-item|todo-indent|todo-insert-category-line|todo-insert-item--apply-args|todo-insert-item--argsleft|todo-insert-item--basic|todo-insert-item--keyof|todo-insert-item--next-param|todo-insert-item--this-key|todo-insert-item-from-calendar|todo-insert-item|todo-insert-sort-button|todo-insert-with-overlays|todo-item-done|todo-item-end|todo-item-start|todo-item-string|todo-item-undone|todo-jump-to-archive-category|todo-jump-to-category|todo-label-to-key|todo-longest-category-name-length|todo-lower-category|todo-lower-item-priority|todo-make-categories-list|todo-mark-category|todo-marked-item-p|todo-menu|todo-merge-category|todo-mode-external-set|todo-mode-line-control|todo-mode|todo-modes-set-1|todo-modes-set-2|todo-modes-set-3|todo-move-category|todo-move-item|todo-multiple-filter-files|todo-next-button|todo-next-item|todo-nondiary-marker-matcher|todo-padded-string|todo-prefix-overlays|todo-previous-button|todo-previous-item|todo-print-buffer-to-file|todo-print-buffer|todo-quit|todo-raise-category|todo-raise-item-priority|todo-read-category|todo-read-date|todo-read-dayname|todo-read-file-name|todo-read-time|todo-reevaluate-category-completions-files-defcustom|todo-reevaluate-default-file-defcustom|todo-reevaluate-filelist-defcustoms|todo-reevaluate-filter-files-defcustom|todo-remove-item|todo-rename-category|todo-rename-file|todo-repair-categories-sexp|todo-reset-and-enable-done-separator|todo-reset-comment-string|todo-reset-done-separator-string|todo-reset-done-separator|todo-reset-done-string|todo-reset-global-current-todo-file|todo-reset-highlight-item|todo-reset-nondiary-marker|todo-reset-prefix|todo-restore-desktop-buffer|todo-revert-buffer|todo-save-filtered-items-buffer|todo-save|todo-search|todo-set-categories|todo-set-category-number|todo-set-date-from-calendar|todo-set-item-priority|todo-set-show-current-file|todo-set-top-priorities-in-category|todo-set-top-priorities-in-file|todo-set-top-priorities|todo-short-file-name|todo-show-categories-table|todo-show-current-file|todo-show|todo-sort-categories-alphabetically-or-numerically|todo-sort-categories-by-archived|todo-sort-categories-by-diary|todo-sort-categories-by-done|todo-sort-categories-by-todo|todo-sort|todo-time-string-matcher|todo-toggle-item-header|todo-toggle-item-highlighting|todo-toggle-mark-item|todo-toggle-prefix-numbers|todo-toggle-view-done-items|todo-toggle-view-done-only|todo-total-item-counts|todo-unarchive-items|todo-unmark-category|todo-update-buffer-list|todo-update-categories-display|todo-update-categories-sexp|todo-update-count|todo-validate-name|todo-y-or-n-p|toggle-auto-composition|toggle-case-fold-search|toggle-debug-on-error|toggle-debug-on-quit|toggle-emacs-lock|toggle-frame-fullscreen|toggle-frame-maximized|toggle-horizontal-scroll-bar|toggle-indicate-empty-lines|toggle-input-method|toggle-menu-bar-mode-from-frame|toggle-read-only|toggle-rot13-mode|toggle-save-place-globally|toggle-save-place|toggle-scroll-bar|toggle-text-mode-auto-fill|toggle-tool-bar-mode-from-frame|toggle-truncate-lines|toggle-uniquify-buffer-names|toggle-use-system-font|toggle-viper-mode|toggle-word-wrap|tool-bar--image-expression|tool-bar-get-system-style|tool-bar-height|tool-bar-lines-needed|tool-bar-local-item|tool-bar-make-keymap-1|tool-bar-make-keymap|tool-bar-mode|tool-bar-pixel-width|tool-bar-setup|tooltip-cancel-delayed-tip|tooltip-delay|tooltip-event-buffer|tooltip-expr-to-print|tooltip-gud-toggle-dereference|tooltip-help-tips|tooltip-hide|tooltip-identifier-from-point|tooltip-mode|tooltip-process-prompt-regexp|tooltip-set-param|tooltip-show-help-non-mode|tooltip-show-help|tooltip-show|tooltip-start-delayed-tip|tooltip-strip-prompt|tooltip-timeout|tq-buffer|tq-filter|tq-process-buffer|tq-process|tq-queue-add|tq-queue-empty|tq-queue-head-closure|tq-queue-head-fn|tq-queue-head-question|tq-queue-head-regexp|tq-queue-pop|tq-queue|trace--display-buffer|trace--read-args|trace-entry-message|trace-exit-message|trace-function-background|trace-function-foreground|trace-function-internal|trace-function|trace-is-traced|trace-make-advice|trace-values|traceroute|tramp-accept-process-output|tramp-action-login|tramp-action-out-of-band|tramp-action-password|tramp-action-permission-denied|tramp-action-process-alive|tramp-action-succeed|tramp-action-terminal|tramp-action-yesno|tramp-action-yn|tramp-adb-file-name-handler|tramp-adb-file-name-p|tramp-adb-parse-device-names|tramp-autoload-file-name-handler|tramp-backtrace|tramp-buffer-name|tramp-bug|tramp-cache-print|tramp-call-process|tramp-check-cached-permissions|tramp-check-for-regexp|tramp-check-proper-method-and-host|tramp-cleanup-all-buffers|tramp-cleanup-all-connections|tramp-cleanup-connection|tramp-cleanup-this-connection|tramp-clear-passwd|tramp-compat-coding-system-change-eol-conversion|tramp-compat-condition-case-unless-debug|tramp-compat-copy-directory|tramp-compat-copy-file|tramp-compat-decimal-to-octal|tramp-compat-delete-directory|tramp-compat-delete-file|tramp-compat-file-attributes|tramp-compat-font-lock-add-keywords|tramp-compat-funcall|tramp-compat-load|tramp-compat-make-temp-file|tramp-compat-most-positive-fixnum|tramp-compat-number-sequence|tramp-compat-octal-to-decimal|tramp-compat-process-get|tramp-compat-process-put|tramp-compat-process-running-p|tramp-compat-replace-regexp-in-string|tramp-compat-set-process-query-on-exit-flag|tramp-compat-split-string|tramp-compat-temporary-file-directory|tramp-compat-with-temp-message|tramp-completion-dissect-file-name|tramp-completion-dissect-file-name1|tramp-completion-file-name-handler|tramp-completion-handle-file-name-all-completions|tramp-completion-handle-file-name-completion|tramp-completion-make-tramp-file-name|tramp-completion-mode-p|tramp-completion-run-real-handler|tramp-condition-case-unless-debug|tramp-connectable-p|tramp-connection-property-p|tramp-debug-buffer-name|tramp-debug-message|tramp-debug-outline-level|tramp-default-file-modes|tramp-delete-temp-file-function|tramp-dissect-file-name|tramp-drop-volume-letter|tramp-equal-remote|tramp-error-with-buffer|tramp-error|tramp-eshell-directory-change|tramp-exists-file-name-handler|tramp-file-mode-from-int|tramp-file-mode-permissions|tramp-file-name-domain|tramp-file-name-for-operation|tramp-file-name-handler|tramp-file-name-hop|tramp-file-name-host|tramp-file-name-localname|tramp-file-name-method|tramp-file-name-p|tramp-file-name-port|tramp-file-name-real-host|tramp-file-name-real-user|tramp-file-name-user|tramp-find-file-name-coding-system-alist|tramp-find-foreign-file-name-handler|tramp-find-host|tramp-find-method|tramp-find-user|tramp-flush-connection-property|tramp-flush-directory-property|tramp-flush-file-property|tramp-ftp-enable-ange-ftp|tramp-ftp-file-name-handler|tramp-ftp-file-name-p|tramp-get-buffer|tramp-get-completion-function|tramp-get-completion-methods|tramp-get-completion-user-host|tramp-get-connection-buffer|tramp-get-connection-name|tramp-get-connection-process|tramp-get-connection-property|tramp-get-debug-buffer|tramp-get-device|tramp-get-file-property|tramp-get-inode|tramp-get-local-gid|tramp-get-local-uid|tramp-get-method-parameter|tramp-get-remote-tmpdir|tramp-gvfs-file-name-handler|tramp-gvfs-file-name-p|tramp-gw-open-connection|tramp-handle-directory-file-name|tramp-handle-directory-files-and-attributes|tramp-handle-directory-files|tramp-handle-dired-uncache|tramp-handle-file-accessible-directory-p|tramp-handle-file-exists-p|tramp-handle-file-modes|tramp-handle-file-name-as-directory|tramp-handle-file-name-completion|tramp-handle-file-name-directory|tramp-handle-file-name-nondirectory|tramp-handle-file-newer-than-file-p|tramp-handle-file-notify-add-watch|tramp-handle-file-notify-rm-watch|tramp-handle-file-regular-p|tramp-handle-file-remote-p|tramp-handle-file-symlink-p|tramp-handle-find-backup-file-name|tramp-handle-insert-directory|tramp-handle-insert-file-contents|tramp-handle-load|tramp-handle-make-auto-save-file-name|tramp-handle-make-symbolic-link|tramp-handle-set-visited-file-modtime|tramp-handle-shell-command|tramp-handle-substitute-in-file-name|tramp-handle-unhandled-file-name-directory|tramp-handle-verify-visited-file-modtime|tramp-list-connections|tramp-local-host-p|tramp-make-tramp-file-name|tramp-make-tramp-temp-file|tramp-message|tramp-mode-string-to-int|tramp-parse-connection-properties|tramp-parse-file|tramp-parse-group|tramp-parse-hosts-group|tramp-parse-hosts|tramp-parse-netrc-group|tramp-parse-netrc|tramp-parse-passwd-group|tramp-parse-passwd|tramp-parse-putty-group|tramp-parse-putty|tramp-parse-rhosts-group|tramp-parse-rhosts|tramp-parse-sconfig-group|tramp-parse-sconfig|tramp-parse-shostkeys-sknownhosts|tramp-parse-shostkeys|tramp-parse-shosts-group|tramp-parse-shosts|tramp-parse-sknownhosts|tramp-process-actions|tramp-process-one-action|tramp-progress-reporter-update|tramp-read-passwd|tramp-register-autoload-file-name-handlers|tramp-register-file-name-handlers|tramp-replace-environment-variables|tramp-rfn-eshadow-setup-minibuffer|tramp-rfn-eshadow-update-overlay|tramp-run-real-handler|tramp-send-string|tramp-set-auto-save-file-modes|tramp-set-completion-function|tramp-set-connection-property|tramp-set-file-property|tramp-sh-file-name-handler|tramp-shell-quote-argument|tramp-smb-file-name-handler|tramp-smb-file-name-p|tramp-subst-strs-in-string|tramp-time-diff|tramp-tramp-file-p|tramp-unload-file-name-handlers|tramp-unload-tramp|tramp-user-error|tramp-uuencode-region|tramp-version|tramp-wait-for-regexp|transform-make-coding-system-args|translate-region-internal|transpose-chars|transpose-lines|transpose-paragraphs|transpose-sentences|transpose-sexps|transpose-subr-1|transpose-subr|transpose-words|tree-equal|tree-widget--locate-sub-directory|tree-widget-action|tree-widget-button-click|tree-widget-children-value-save|tree-widget-convert-widget|tree-widget-create-image|tree-widget-expander-p|tree-widget-find-image|tree-widget-help-echo|tree-widget-icon-action|tree-widget-icon-create|tree-widget-icon-help-echo|tree-widget-image-formats|tree-widget-image-properties|tree-widget-keep|tree-widget-leaf-node-icon-p|tree-widget-lookup-image|tree-widget-node|tree-widget-p|tree-widget-set-image-properties|tree-widget-set-parent-theme|tree-widget-set-theme|tree-widget-theme-name|tree-widget-themes-path|tree-widget-use-image-p|tree-widget-value-create|truncate\\\\\\\\*|truncated-partial-width-window-p|try-complete-file-name-partially|try-complete-file-name|try-complete-lisp-symbol-partially|try-complete-lisp-symbol|try-expand-all-abbrevs|try-expand-dabbrev-all-buffers|try-expand-dabbrev-from-kill|try-expand-dabbrev-visible|try-expand-dabbrev|try-expand-line-all-buffers|try-expand-line|try-expand-list-all-buffers|try-expand-list|try-expand-whole-kill|tty-color-by-index|tty-color-canonicalize|tty-color-desc|tty-color-gray-shades|tty-color-off-gray-diag|tty-color-standard-values|tty-color-values|tty-create-frame-with-faces|tty-display-color-cells|tty-display-color-p|tty-find-type|tty-handle-args|tty-handle-reverse-video|tty-modify-color-alist|tty-no-underline|tty-register-default-colors|tty-run-terminal-initialization|tty-set-up-initial-frame-faces|tty-suppress-bold-inverse-default-colors|tty-type|tumme|turkish-case-conversion-disable|turkish-case-conversion-enable|turn-off-auto-fill|turn-off-flyspell|turn-off-follow-mode|turn-off-hideshow|turn-off-iimage-mode|turn-off-xterm-mouse-tracking-on-terminal|turn-on-auto-fill|turn-on-auto-revert-mode|turn-on-auto-revert-tail-mode|turn-on-cwarn-mode-if-enabled|turn-on-cwarn-mode|turn-on-eldoc-mode|turn-on-flyspell|turn-on-follow-mode|turn-on-font-lock-if-desired|turn-on-font-lock|turn-on-gnus-dired-mode)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:turn-on-gnus-mailing-list-mode|turn-on-hi-lock-if-enabled|turn-on-iimage-mode|turn-on-org-cdlatex|turn-on-orgstruct\\\\\\\\+\\\\\\\\+|turn-on-orgstruct|turn-on-orgtbl|turn-on-prettify-symbols-mode|turn-on-reftex|turn-on-visual-line-mode|turn-on-xterm-mouse-tracking-on-terminal|type-break-alarm|type-break-cancel-function-timers|type-break-cancel-schedule|type-break-cancel-time-warning-schedule|type-break-catch-up-event|type-break-check-keystroke-warning|type-break-check-post-command-hook|type-break-check|type-break-choose-file|type-break-demo-boring|type-break-demo-hanoi|type-break-demo-life|type-break-do-query|type-break-file-keystroke-count|type-break-file-time|type-break-force-mode-line-update|type-break-format-time|type-break-get-previous-count|type-break-get-previous-time|type-break-guesstimate-keystroke-threshold|type-break-keystroke-reset|type-break-keystroke-warning|type-break-mode-line-countdown-or-break|type-break-mode-line-message-mode|type-break-mode|type-break-noninteractive-query|type-break-query-mode|type-break-query|type-break-run-at-time|type-break-run-tb-post-command-hook|type-break-schedule|type-break-statistics|type-break-time-difference|type-break-time-stamp|type-break-time-sum|type-break-time-warning-alarm|type-break-time-warning-schedule|type-break-time-warning|type-break|typecase|typep|uce-insert-ranting|uce-reply-to-uce|ucs-input-activate|ucs-insert|ucs-names|ucs-normalize-HFS-NFC-region|ucs-normalize-HFS-NFC-string|ucs-normalize-HFS-NFD-region|ucs-normalize-HFS-NFD-string|ucs-normalize-NFC-region|ucs-normalize-NFC-string|ucs-normalize-NFD-region|ucs-normalize-NFD-string|ucs-normalize-NFKC-region|ucs-normalize-NFKC-string|ucs-normalize-NFKD-region|ucs-normalize-NFKD-string|uncomment-region-default|uncomment-region|uncompface|underline-region|undigestify-rmail-message|undo-adjust-beg-end|undo-adjust-elt|undo-adjust-pos|undo-copy-list-1|undo-copy-list|undo-delta|undo-elt-crosses-region|undo-elt-in-region|undo-make-selective-list|undo-more|undo-only|undo-outer-limit-truncate|undo-start|undo|unencodable-char-position|unexpand-abbrev|unfocus-frame|unforward-rmail-message|unhighlight-regexp|unicode-property-table-internal|unify-8859-on-decoding-mode|unify-8859-on-encoding-mode|unify-charset|union|uniquify--create-file-buffer-advice|uniquify--rename-buffer-advice|uniquify-buffer-base-name|uniquify-buffer-file-name|uniquify-get-proposed-name|uniquify-item-base--cmacro|uniquify-item-base|uniquify-item-buffer--cmacro|uniquify-item-buffer|uniquify-item-dirname--cmacro|uniquify-item-dirname|uniquify-item-greaterp|uniquify-item-p--cmacro|uniquify-item-p|uniquify-item-proposed--cmacro|uniquify-item-proposed|uniquify-kill-buffer-function|uniquify-make-item--cmacro|uniquify-make-item|uniquify-maybe-rerationalize-w\\\\\\\\/o-cb|uniquify-rationalize-a-list|uniquify-rationalize-conflicting-sublist|uniquify-rationalize-file-buffer-names|uniquify-rationalize|uniquify-rename-buffer|uniquify-rerationalize-w\\\\\\\\/o-cb|uniquify-unload-function|universal-argument--mode|universal-argument-more|universal-coding-system-argument|unix-sync|unjustify-current-line|unjustify-region|unload--set-major-mode|unmorse-region|unmsys--file-name|unread-bib|unrecord-window-buffer|unrmail|unsafep-function|unsafep-let|unsafep-progn|unsafep-variable|untabify-backward|untabify|untrace-all|untrace-function|ununderline-region|up-ifdef|upcase-initials-region|update-glyphless-char-display|update-leim-list-file|url--allowed-chars|url-attributes--cmacro|url-attributes|url-auth-registered|url-auth-user-prompt|url-basepath|url-basic-auth|url-bit-for-url|url-build-query-string|url-cache-create-filename|url-cache-extract|url-cache-prune-cache|url-cid|url-completion-function|url-cookie-clean-up|url-cookie-create--cmacro|url-cookie-create|url-cookie-delete|url-cookie-domain--cmacro|url-cookie-domain|url-cookie-expired-p|url-cookie-expires--cmacro|url-cookie-expires|url-cookie-generate-header-lines|url-cookie-handle-set-cookie|url-cookie-host-can-set-p|url-cookie-list|url-cookie-localpart--cmacro|url-cookie-localpart|url-cookie-mode|url-cookie-name--cmacro|url-cookie-name|url-cookie-p--cmacro|url-cookie-p|url-cookie-parse-file|url-cookie-quit|url-cookie-retrieve|url-cookie-secure--cmacro|url-cookie-secure|url-cookie-setup-save-timer|url-cookie-store|url-cookie-value--cmacro|url-cookie-value|url-cookie-write-file|url-copy-file|url-data|url-dav-request|url-dav-supported-p|url-dav-vc-registered|url-debug|url-default-expander|url-default-find-proxy-for-url|url-device-type|url-digest-auth-create-key|url-digest-auth|url-display-percentage|url-do-auth-source-search|url-do-setup|url-domsuf-cookie-allowed-p|url-domsuf-parse-file|url-eat-trailing-space|url-encode-url|url-expand-file-name|url-expander-remove-relative-links|url-extract-mime-headers|url-file-directory|url-file-extension|url-file-handler|url-file-local-copy|url-file-nondirectory|url-file|url-filename--cmacro|url-filename|url-find-proxy-for-url|url-fullness--cmacro|url-fullness|url-gateway-nslookup-host|url-gc-dead-buffers|url-generate-unique-filename|url-generic-emulator-loader|url-generic-parse-url|url-get-authentication|url-get-normalized-date|url-get-url-at-point|url-handle-content-transfer-encoding|url-handler-mode|url-have-visited-url|url-hexify-string|url-history-parse-history|url-history-save-history|url-history-setup-save-timer|url-history-update-url|url-host--cmacro|url-host|url-http-activate-callback|url-http-async-sentinel|url-http-chunked-encoding-after-change-function|url-http-clean-headers|url-http-content-length-after-change-function|url-http-create-request|url-http-debug|url-http-end-of-document-sentinel|url-http-expand-file-name|url-http-file-attributes|url-http-file-exists-p|url-http-file-readable-p|url-http-find-free-connection|url-http-generic-filter|url-http-handle-authentication|url-http-handle-cookies|url-http-head-file-attributes|url-http-head|url-http-idle-sentinel|url-http-mark-connection-as-busy|url-http-mark-connection-as-free|url-http-options|url-http-parse-headers|url-http-parse-response|url-http-simple-after-change-function|url-http-symbol-value-in-buffer|url-http-user-agent-string|url-http-wait-for-headers-change-function|url-http|url-https-create-secure-wrapper|url-https-expand-file-name|url-https-file-attributes|url-https-file-exists-p|url-https-file-readable-p|url-https|url-identity-expander|url-info|url-insert-entities-in-string|url-insert-file-contents|url-irc|url-is-cached|url-lazy-message|url-ldap|url-mail|url-mailto|url-make-private-file|url-man|url-mark-buffer-as-dead|url-mime-charset-string|url-mm-callback|url-mm-url|url-news|url-normalize-url|url-ns-prefs|url-ns-user-pref|url-open-rlogin|url-open-stream|url-open-telnet|url-p--cmacro|url-p|url-parse-args|url-parse-make-urlobj--cmacro|url-parse-make-urlobj|url-parse-query-string|url-password--cmacro|url-password-for-url|url-password|url-path-and-query|url-percentage|url-port-if-non-default|url-port|url-portspec--cmacro|url-portspec|url-pretty-length|url-proxy|url-queue-buffer--cmacro|url-queue-buffer|url-queue-callback--cmacro|url-queue-callback-function|url-queue-callback|url-queue-cbargs--cmacro|url-queue-cbargs|url-queue-inhibit-cookiesp--cmacro|url-queue-inhibit-cookiesp|url-queue-kill-job|url-queue-p--cmacro|url-queue-p|url-queue-pre-triggered--cmacro|url-queue-pre-triggered|url-queue-prune-old-entries|url-queue-remove-jobs-from-host|url-queue-retrieve|url-queue-run-queue|url-queue-setup-runners|url-queue-silentp--cmacro|url-queue-silentp|url-queue-start-retrieve|url-queue-start-time--cmacro|url-queue-start-time|url-queue-url--cmacro|url-queue-url|url-recreate-url-attributes|url-recreate-url|url-register-auth-scheme|url-retrieve-internal|url-retrieve-synchronously|url-retrieve|url-rlogin|url-scheme-default-loader|url-scheme-get-property|url-scheme-register-proxy|url-set-mime-charset-string|url-setup-privacy-info|url-silent--cmacro|url-silent|url-snews|url-store-in-cache|url-strip-leading-spaces|url-target--cmacro|url-target|url-telnet|url-tn3270|url-tramp-file-handler|url-truncate-url-for-viewing|url-type--cmacro|url-type|url-unhex-string|url-unhex|url-use-cookies--cmacro|url-use-cookies|url-user--cmacro|url-user-for-url|url-user|url-view-url|url-wait-for-string|url-warn|use-cjk-char-width-table|use-completion-backward-under|use-completion-backward|use-completion-before-point|use-completion-before-separator|use-completion-minibuffer-separator|use-completion-under-or-before-point|use-completion-under-point|use-default-char-width-table|use-fancy-splash-screens-p|use-package|user-original-login-name|user-variable-p|utf-7-imap-post-read-conversion|utf-7-imap-pre-write-conversion|utf-7-post-read-conversion|utf-7-pre-write-conversion|utf7-decode|utf7-encode|uudecode-char-int|uudecode-decode-region-external|uudecode-decode-region-internal|uudecode-decode-region|uudecode-string-to-multibyte|values-list|variable-at-point|variable-binding-locus|variable-pitch-mode|vc--add-line|vc--process-sentinel|vc--read-lines|vc--remove-regexp|vc-after-save|vc-annotate|vc-backend-for-registration|vc-backend-subdirectory-name|vc-backend|vc-before-save|vc-branch-p|vc-branch-part|vc-buffer-context|vc-buffer-sync|vc-bzr-registered|vc-call-backend|vc-call|vc-check-headers|vc-check-master-templates|vc-checkin|vc-checkout-model|vc-checkout|vc-clear-context|vc-coding-system-for-diff|vc-comment-search-forward|vc-comment-search-reverse|vc-comment-to-change-log|vc-compatible-state|vc-compilation-mode|vc-context-matches-p|vc-create-repo|vc-create-tag|vc-cvs-after-dir-status|vc-cvs-annotate-command|vc-cvs-annotate-current-time|vc-cvs-annotate-extract-revision-at-line|vc-cvs-annotate-process-filter|vc-cvs-annotate-time|vc-cvs-append-to-ignore|vc-cvs-check-headers|vc-cvs-checkin|vc-cvs-checkout-model|vc-cvs-checkout|vc-cvs-command|vc-cvs-comment-history|vc-cvs-could-register|vc-cvs-create-tag|vc-cvs-delete-file|vc-cvs-diff|vc-cvs-dir-extra-headers|vc-cvs-dir-status-files|vc-cvs-dir-status-heuristic|vc-cvs-file-to-string|vc-cvs-find-admin-dir|vc-cvs-find-revision|vc-cvs-get-entries|vc-cvs-ignore|vc-cvs-make-version-backups-p|vc-cvs-merge-file|vc-cvs-merge-news|vc-cvs-merge|vc-cvs-mode-line-string|vc-cvs-modify-change-comment|vc-cvs-next-revision|vc-cvs-parse-entry|vc-cvs-parse-root|vc-cvs-parse-status|vc-cvs-parse-sticky-tag|vc-cvs-parse-uhp|vc-cvs-previous-revision|vc-cvs-print-log|vc-cvs-register|vc-cvs-registered|vc-cvs-repository-hostname|vc-cvs-responsible-p|vc-cvs-retrieve-tag|vc-cvs-revert|vc-cvs-revision-completion-table|vc-cvs-revision-granularity|vc-cvs-revision-table|vc-cvs-state-heuristic|vc-cvs-state|vc-cvs-stay-local-p|vc-cvs-update-changelog|vc-cvs-valid-revision-number-p|vc-cvs-valid-symbolic-tag-name-p|vc-cvs-working-revision|vc-deduce-backend|vc-deduce-fileset|vc-default-check-headers|vc-default-comment-history|vc-default-dir-status-files|vc-default-extra-menu|vc-default-find-file-hook|vc-default-find-revision|vc-default-ignore-completion-table|vc-default-ignore|vc-default-log-edit-mode|vc-default-log-view-mode|vc-default-make-version-backups-p|vc-default-mark-resolved|vc-default-mode-line-string|vc-default-receive-file|vc-default-registered|vc-default-rename-file|vc-default-responsible-p|vc-default-retrieve-tag|vc-default-revert|vc-default-revision-completion-table|vc-default-show-log-entry|vc-default-working-revision|vc-delete-automatic-version-backups|vc-delete-file|vc-delistify|vc-diff-build-argument-list-internal|vc-diff-finish|vc-diff-internal|vc-diff-switches-list|vc-diff|vc-dir-mode|vc-dir|vc-dired-deduce-fileset|vc-dispatcher-browsing|vc-do-async-command|vc-do-command|vc-ediff|vc-editable-p|vc-ensure-vc-buffer|vc-error-occurred|vc-exec-after|vc-expand-dirs|vc-file-clearprops|vc-file-getprop|vc-file-setprop|vc-file-tree-walk-internal|vc-file-tree-walk|vc-find-backend-function|vc-find-conflicted-file|vc-find-file-hook|vc-find-position-by-context|vc-find-revision|vc-find-root|vc-finish-logentry|vc-follow-link|vc-git-registered|vc-hg-registered|vc-ignore|vc-incoming-outgoing-internal|vc-insert-file|vc-insert-headers|vc-kill-buffer-hook|vc-log-edit|vc-log-incoming|vc-log-internal-common|vc-log-outgoing|vc-make-backend-sym|vc-make-version-backup|vc-mark-resolved|vc-maybe-resolve-conflicts|vc-menu-map-filter|vc-menu-map|vc-merge|vc-mode-line|vc-modify-change-comment|vc-mtn-registered|vc-next-action|vc-next-comment|vc-parse-buffer)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:vc-position-context|vc-possible-master|vc-previous-comment|vc-print-log-internal|vc-print-log-setup-buttons|vc-print-log|vc-print-root-log|vc-process-filter|vc-pull|vc-rcs-registered|vc-read-backend|vc-read-revision|vc-region-history|vc-register-with|vc-register|vc-registered|vc-rename-file|vc-resolve-conflicts|vc-responsible-backend|vc-restore-buffer-context|vc-resynch-buffer|vc-resynch-buffers-in-directory|vc-resynch-window|vc-retrieve-tag|vc-revert-buffer-internal|vc-revert-buffer|vc-revert-file|vc-revert|vc-revision-other-window|vc-rollback|vc-root-diff|vc-root-dir|vc-run-delayed|vc-sccs-registered|vc-sccs-search-project-dir|vc-set-async-update|vc-set-mode-line-busy-indicator|vc-setup-buffer|vc-src-registered|vc-start-logentry|vc-state-refresh|vc-state|vc-steal-lock|vc-string-prefix-p|vc-svn-registered|vc-switch-backend|vc-switches|vc-tag-precondition|vc-toggle-read-only|vc-transfer-file|vc-up-to-date-p|vc-update-change-log|vc-update|vc-user-login-name|vc-version-backup-file-name|vc-version-backup-file|vc-version-diff|vc-version-ediff|vc-workfile-version|vc-working-revision|vcursor-backward-char|vcursor-backward-word|vcursor-beginning-of-buffer|vcursor-beginning-of-line|vcursor-bind-keys|vcursor-check|vcursor-compare-windows|vcursor-copy-line|vcursor-copy-word|vcursor-copy|vcursor-cs-binding|vcursor-disable|vcursor-end-of-buffer|vcursor-end-of-line|vcursor-execute-command|vcursor-execute-key|vcursor-find-window|vcursor-forward-char|vcursor-forward-word|vcursor-get-char-count|vcursor-goto|vcursor-insert|vcursor-isearch-backward|vcursor-isearch-forward|vcursor-locate|vcursor-map|vcursor-move|vcursor-next-line|vcursor-other-window|vcursor-post-command|vcursor-previous-line|vcursor-relative-move|vcursor-scroll-down|vcursor-scroll-up|vcursor-swap-point|vcursor-toggle-copy|vcursor-toggle-vcursor-map|vcursor-use-vcursor-map|vcursor-window-funcall|vector-or-char-table-p|vendor-specific-keysyms|vera-add-syntax|vera-backward-same-indent|vera-backward-statement|vera-backward-syntactic-ws|vera-beginning-of-statement|vera-beginning-of-substatement|vera-comment-uncomment-region|vera-corresponding-begin|vera-corresponding-if|vera-customize|vera-electric-closing-brace|vera-electric-opening-brace|vera-electric-pound|vera-electric-return|vera-electric-slash|vera-electric-space|vera-electric-star|vera-electric-tab|vera-evaluate-offset|vera-expand-abbrev|vera-font-lock-match-item|vera-fontify-buffer|vera-forward-same-indent|vera-forward-statement|vera-forward-syntactic-ws|vera-get-offset|vera-guess-basic-syntax|vera-in-literal|vera-indent-block-closing|vera-indent-buffer|vera-indent-line|vera-indent-region|vera-langelem-col|vera-lineup-C-comments|vera-lineup-comment|vera-mode-menu|vera-mode|vera-point|vera-prepare-search|vera-re-search-backward|vera-re-search-forward|vera-skip-backward-literal|vera-skip-forward-literal|vera-submit-bug-report|vera-try-expand-abbrev|vera-version|verify-xscheme-buffer|verilog-add-list-unique|verilog-alw-get-inputs|verilog-alw-get-outputs-delayed|verilog-alw-get-outputs-immediate|verilog-alw-get-temps|verilog-alw-get-uses-delayed|verilog-alw-new|verilog-at-close-constraint-p|verilog-at-close-struct-p|verilog-at-constraint-p|verilog-at-struct-mv-p|verilog-at-struct-p|verilog-auto-arg-ports|verilog-auto-arg|verilog-auto-ascii-enum|verilog-auto-assign-modport|verilog-auto-inout-comp|verilog-auto-inout-in|verilog-auto-inout-modport|verilog-auto-inout-module|verilog-auto-inout-param|verilog-auto-inout|verilog-auto-input|verilog-auto-insert-last|verilog-auto-insert-lisp|verilog-auto-inst-first|verilog-auto-inst-param|verilog-auto-inst-port-list|verilog-auto-inst-port-map|verilog-auto-inst-port|verilog-auto-inst|verilog-auto-logic-setup|verilog-auto-logic|verilog-auto-output-every|verilog-auto-output|verilog-auto-re-search-do|verilog-auto-read-locals|verilog-auto-reeval-locals|verilog-auto-reg-input|verilog-auto-reg|verilog-auto-reset|verilog-auto-save-check|verilog-auto-save-compile|verilog-auto-sense-sigs|verilog-auto-sense|verilog-auto-star-safe|verilog-auto-star|verilog-auto-template-lint|verilog-auto-templated-rel|verilog-auto-tieoff|verilog-auto-undef|verilog-auto-unused|verilog-auto-wire|verilog-auto|verilog-back-to-start-translate-off|verilog-backward-case-item|verilog-backward-open-bracket|verilog-backward-open-paren|verilog-backward-sexp|verilog-backward-syntactic-ws-quick|verilog-backward-syntactic-ws|verilog-backward-token|verilog-backward-up-list|verilog-backward-ws&directives|verilog-batch-auto|verilog-batch-delete-auto|verilog-batch-delete-trailing-whitespace|verilog-batch-diff-auto|verilog-batch-error-wrapper|verilog-batch-execute-func|verilog-batch-indent|verilog-batch-inject-auto|verilog-beg-of-defun-quick|verilog-beg-of-defun|verilog-beg-of-statement-1|verilog-beg-of-statement|verilog-booleanp|verilog-build-defun-re|verilog-calc-1|verilog-calculate-indent-directive|verilog-calculate-indent|verilog-case-indent-level|verilog-clog2|verilog-colorize-include-files-buffer|verilog-comment-depth|verilog-comment-indent|verilog-comment-region|verilog-comp-defun|verilog-complete-word|verilog-completion-response|verilog-completion|verilog-continued-line-1|verilog-continued-line|verilog-current-flags|verilog-current-indent-level|verilog-customize|verilog-declaration-beg|verilog-declaration-end|verilog-decls-append|verilog-decls-get-assigns|verilog-decls-get-consts|verilog-decls-get-gparams|verilog-decls-get-inouts|verilog-decls-get-inputs|verilog-decls-get-interfaces|verilog-decls-get-iovars|verilog-decls-get-modports|verilog-decls-get-outputs|verilog-decls-get-ports|verilog-decls-get-signals|verilog-decls-get-vars|verilog-decls-new|verilog-decls-princ|verilog-define-abbrev|verilog-delete-auto-star-all|verilog-delete-auto-star-implicit|verilog-delete-auto|verilog-delete-autos-lined|verilog-delete-empty-auto-pair|verilog-delete-to-paren|verilog-delete-trailing-whitespace|verilog-diff-auto|verilog-diff-buffers-p|verilog-diff-file-with-buffer|verilog-diff-report|verilog-dir-file-exists-p|verilog-dir-files|verilog-do-indent|verilog-easy-menu-filter|verilog-end-of-defun|verilog-end-of-statement|verilog-end-translate-off|verilog-enum-ascii|verilog-error-regexp-add-emacs|verilog-expand-command|verilog-expand-dirnames|verilog-expand-vector-internal|verilog-expand-vector|verilog-faq|verilog-font-customize|verilog-font-lock-match-item|verilog-forward-close-paren|verilog-forward-or-insert-line|verilog-forward-sexp-cmt|verilog-forward-sexp-function|verilog-forward-sexp-ign-cmt|verilog-forward-sexp|verilog-forward-syntactic-ws|verilog-forward-ws&directives|verilog-func-completion|verilog-generate-numbers|verilog-get-completion-decl|verilog-get-default-symbol|verilog-get-end-of-defun|verilog-get-expr|verilog-get-lineup-indent-2|verilog-get-lineup-indent|verilog-getopt-file|verilog-getopt-flags|verilog-getopt|verilog-goto-defun-file|verilog-goto-defun|verilog-header|verilog-highlight-buffer|verilog-highlight-region|verilog-in-attribute-p|verilog-in-case-region-p|verilog-in-comment-or-string-p|verilog-in-comment-p|verilog-in-coverage-p|verilog-in-directive-p|verilog-in-escaped-name-p|verilog-in-fork-region-p|verilog-in-generate-region-p|verilog-in-parameter-p|verilog-in-paren-count|verilog-in-paren-quick|verilog-in-paren|verilog-in-parenthesis-p|verilog-in-slash-comment-p|verilog-in-star-comment-p|verilog-in-struct-nested-p|verilog-in-struct-p|verilog-indent-buffer|verilog-indent-comment|verilog-indent-declaration|verilog-indent-line-relative|verilog-indent-line|verilog-inject-arg|verilog-inject-auto|verilog-inject-inst|verilog-inject-sense|verilog-insert-1|verilog-insert-block|verilog-insert-date|verilog-insert-definition|verilog-insert-indent|verilog-insert-indices|verilog-insert-last-command-event|verilog-insert-one-definition|verilog-insert-year|verilog-insert|verilog-inside-comment-or-string-p|verilog-is-number|verilog-just-one-space|verilog-keyword-completion|verilog-kill-existing-comment|verilog-label-be|verilog-leap-to-case-head|verilog-leap-to-head|verilog-library-filenames|verilog-lint-off|verilog-linter-name|verilog-load-file-at-mouse|verilog-load-file-at-point|verilog-make-width-expression|verilog-mark-defun|verilog-match-translate-off|verilog-menu|verilog-mode|verilog-modi-cache-add-gparams|verilog-modi-cache-add-inouts|verilog-modi-cache-add-inputs|verilog-modi-cache-add-outputs|verilog-modi-cache-add-vars|verilog-modi-cache-add|verilog-modi-cache-results|verilog-modi-current-get|verilog-modi-current|verilog-modi-file-or-buffer|verilog-modi-filename|verilog-modi-get-decls|verilog-modi-get-point|verilog-modi-get-sub-decls|verilog-modi-get-type|verilog-modi-goto|verilog-modi-lookup|verilog-modi-modport-lookup-one|verilog-modi-modport-lookup|verilog-modi-name|verilog-modi-new|verilog-modify-compile-command|verilog-modport-clockings-add|verilog-modport-clockings|verilog-modport-decls-set|verilog-modport-decls|verilog-modport-name|verilog-modport-new|verilog-modport-princ|verilog-module-filenames|verilog-module-inside-filename-p|verilog-more-comment|verilog-one-line|verilog-parenthesis-depth|verilog-point-text|verilog-preprocess|verilog-preserve-dir-cache|verilog-preserve-modi-cache|verilog-pretty-declarations-auto|verilog-pretty-declarations|verilog-pretty-expr|verilog-re-search-backward-quick|verilog-re-search-backward-substr|verilog-re-search-backward|verilog-re-search-forward-quick|verilog-re-search-forward-substr|verilog-re-search-forward|verilog-read-always-signals-recurse|verilog-read-always-signals|verilog-read-arg-pins|verilog-read-auto-constants|verilog-read-auto-lisp-present|verilog-read-auto-lisp|verilog-read-auto-params|verilog-read-auto-template-hit|verilog-read-auto-template-middle|verilog-read-auto-template|verilog-read-decls|verilog-read-defines|verilog-read-includes|verilog-read-inst-backward-name|verilog-read-inst-module-matcher|verilog-read-inst-module|verilog-read-inst-name|verilog-read-inst-param-value|verilog-read-inst-pins|verilog-read-instants|verilog-read-module-name|verilog-read-signals|verilog-read-sub-decls-expr|verilog-read-sub-decls-gate|verilog-read-sub-decls-line|verilog-read-sub-decls-sig|verilog-read-sub-decls|verilog-regexp-opt|verilog-regexp-words|verilog-repair-close-comma|verilog-repair-open-comma|verilog-run-hooks|verilog-save-buffer-state|verilog-save-font-mods|verilog-save-no-change-functions|verilog-save-scan-cache|verilog-scan-and-debug|verilog-scan-cache-flush|verilog-scan-cache-ok-p|verilog-scan-debug|verilog-scan-region|verilog-scan|verilog-set-auto-endcomments|verilog-set-compile-command|verilog-set-define|verilog-show-completions|verilog-showscopes|verilog-sig-bits|verilog-sig-comment|verilog-sig-enum|verilog-sig-memory|verilog-sig-modport|verilog-sig-multidim-string|verilog-sig-multidim|verilog-sig-name|verilog-sig-new|verilog-sig-signed|verilog-sig-tieoff|verilog-sig-type-set|verilog-sig-type|verilog-sig-width|verilog-signals-combine-bus|verilog-signals-edit-wire-reg|verilog-signals-from-signame|verilog-signals-in|verilog-signals-matching-dir-re|verilog-signals-matching-enum|verilog-signals-matching-regexp|verilog-signals-memory|verilog-signals-not-in|verilog-signals-not-matching-regexp|verilog-signals-not-params|verilog-signals-princ|verilog-signals-sort-compare|verilog-signals-with|verilog-simplify-range-expression|verilog-sk-always|verilog-sk-assign|verilog-sk-begin|verilog-sk-case|verilog-sk-casex|verilog-sk-casez|verilog-sk-comment|verilog-sk-datadef|verilog-sk-def-reg|verilog-sk-define-signal|verilog-sk-else-if|verilog-sk-for|verilog-sk-fork|verilog-sk-function|verilog-sk-generate|verilog-sk-header-tmpl|verilog-sk-header|verilog-sk-if|verilog-sk-initial|verilog-sk-inout|verilog-sk-input|verilog-sk-module|verilog-sk-output|verilog-sk-ovm-class|verilog-sk-primitive|verilog-sk-prompt-clock|verilog-sk-prompt-condition|verilog-sk-prompt-inc|verilog-sk-prompt-init|verilog-sk-prompt-lsb|verilog-sk-prompt-msb|verilog-sk-prompt-name|verilog-sk-prompt-output|verilog-sk-prompt-reset|verilog-sk-prompt-state-selector|verilog-sk-prompt-width|verilog-sk-reg|verilog-sk-repeat|verilog-sk-specify|verilog-sk-state-machine|verilog-sk-task|verilog-sk-uvm-component|verilog-sk-uvm-object|verilog-sk-while|verilog-sk-wire|verilog-skip-backward-comment-or-string|verilog-skip-backward-comments|verilog-skip-forward-comment-or-string)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:verilog-skip-forward-comment-p|verilog-star-comment|verilog-start-translate-off|verilog-stmt-menu|verilog-string-diff|verilog-string-match-fold|verilog-string-remove-spaces|verilog-string-replace-matches|verilog-strip-comments|verilog-subdecls-get-inouts|verilog-subdecls-get-inputs|verilog-subdecls-get-interfaced|verilog-subdecls-get-interfaces|verilog-subdecls-get-outputs|verilog-subdecls-new|verilog-submit-bug-report|verilog-surelint-off|verilog-symbol-detick-denumber|verilog-symbol-detick-text|verilog-symbol-detick|verilog-syntax-ppss|verilog-typedef-name-p|verilog-uncomment-region|verilog-var-completion|verilog-verilint-off|verilog-version|verilog-wai|verilog-warn-error|verilog-warn|verilog-within-string|verilog-within-translate-off|version-list-<|version-list-<=|version-list-=|version-list-not-zero|version-to-list|version|version<|version<=|version=|vhdl-abbrev-list-init|vhdl-activate-customizations|vhdl-add-modified-file|vhdl-add-source-files-menu|vhdl-add-syntax|vhdl-adelete|vhdl-aget|vhdl-align-buffer|vhdl-align-declarations|vhdl-align-group|vhdl-align-inline-comment-buffer|vhdl-align-inline-comment-group|vhdl-align-inline-comment-region-1|vhdl-align-inline-comment-region|vhdl-align-list|vhdl-align-region-1|vhdl-align-region-2|vhdl-align-region-groups|vhdl-align-region|vhdl-align-same-indent|vhdl-aput-delete-if-nil|vhdl-aput|vhdl-auto-load-project|vhdl-back-to-indentation|vhdl-backward-same-indent|vhdl-backward-sexp|vhdl-backward-skip-label|vhdl-backward-syntactic-ws|vhdl-backward-to-block|vhdl-backward-up-list|vhdl-beautify-buffer|vhdl-beautify-region|vhdl-begin-p|vhdl-beginning-of-block|vhdl-beginning-of-defun|vhdl-beginning-of-libunit|vhdl-beginning-of-macro|vhdl-beginning-of-statement-1|vhdl-beginning-of-statement|vhdl-case-alternative-p|vhdl-case-keyword|vhdl-case-word|vhdl-character-to-event|vhdl-comment-append-inline|vhdl-comment-block|vhdl-comment-display-line|vhdl-comment-display|vhdl-comment-indent|vhdl-comment-insert-inline|vhdl-comment-insert|vhdl-comment-kill-inline-region|vhdl-comment-kill-region|vhdl-comment-uncomment-line|vhdl-comment-uncomment-region|vhdl-compile-directory|vhdl-compile-init|vhdl-compile-print-file-name|vhdl-compile|vhdl-compose-components-package|vhdl-compose-configuration-architecture|vhdl-compose-configuration|vhdl-compose-insert-generic|vhdl-compose-insert-port|vhdl-compose-insert-signal|vhdl-compose-new-component|vhdl-compose-place-component|vhdl-compose-wire-components|vhdl-corresponding-begin|vhdl-corresponding-defun|vhdl-corresponding-end|vhdl-corresponding-mid|vhdl-create-mode-menu|vhdl-current-line|vhdl-custom-set|vhdl-customize|vhdl-decision-query|vhdl-default-directory|vhdl-defun-p|vhdl-delete-indentation|vhdl-delete|vhdl-directory-files|vhdl-do-group|vhdl-do-list|vhdl-do-same-indent|vhdl-doc-mode|vhdl-doc-variable|vhdl-duplicate-project|vhdl-electric-close-bracket|vhdl-electric-comma|vhdl-electric-dash|vhdl-electric-equal|vhdl-electric-mode|vhdl-electric-open-bracket|vhdl-electric-period|vhdl-electric-quote|vhdl-electric-return|vhdl-electric-semicolon|vhdl-electric-space|vhdl-electric-tab|vhdl-end-of-block|vhdl-end-of-defun|vhdl-end-of-leader|vhdl-end-of-statement|vhdl-end-p|vhdl-end-translate-off|vhdl-error-regexp-add-emacs|vhdl-expand-abbrev|vhdl-expand-paren|vhdl-export-project|vhdl-fill-group|vhdl-fill-list|vhdl-fill-region|vhdl-fill-same-indent|vhdl-first-word|vhdl-fix-case-buffer|vhdl-fix-case-region-1|vhdl-fix-case-region|vhdl-fix-case-word|vhdl-fix-clause-buffer|vhdl-fix-clause|vhdl-fix-statement-buffer|vhdl-fix-statement-region|vhdl-fixup-whitespace-buffer|vhdl-fixup-whitespace-region|vhdl-font-lock-init|vhdl-font-lock-match-item|vhdl-fontify-buffer|vhdl-forward-comment|vhdl-forward-same-indent|vhdl-forward-sexp|vhdl-forward-skip-label|vhdl-forward-syntactic-ws|vhdl-function-name|vhdl-generate-makefile-1|vhdl-generate-makefile|vhdl-get-block-state|vhdl-get-compile-options|vhdl-get-components-package-name|vhdl-get-end-of-unit|vhdl-get-hierarchy|vhdl-get-instantiations|vhdl-get-library-unit|vhdl-get-make-options|vhdl-get-offset|vhdl-get-packages|vhdl-get-source-files|vhdl-get-subdirs|vhdl-get-syntactic-context|vhdl-get-visible-signals|vhdl-goto-marker|vhdl-has-syntax|vhdl-he-list-beg|vhdl-hideshow-init|vhdl-hooked-abbrev|vhdl-hs-forward-sexp-func|vhdl-hs-minor-mode|vhdl-import-project|vhdl-in-argument-list-p|vhdl-in-comment-p|vhdl-in-extended-identifier-p|vhdl-in-literal|vhdl-in-quote-p|vhdl-in-string-p|vhdl-indent-buffer|vhdl-indent-group|vhdl-indent-line|vhdl-indent-region|vhdl-indent-sexp|vhdl-index-menu-init|vhdl-insert-file-contents|vhdl-insert-keyword|vhdl-insert-string-or-file|vhdl-keep-region-active|vhdl-last-word|vhdl-libunit-p|vhdl-line-copy|vhdl-line-expand|vhdl-line-kill-entire|vhdl-line-kill|vhdl-line-open|vhdl-line-transpose-next|vhdl-line-transpose-previous|vhdl-line-yank|vhdl-lineup-arglist-intro|vhdl-lineup-arglist|vhdl-lineup-comment|vhdl-lineup-statement-cont|vhdl-load-cache|vhdl-make|vhdl-makefile-name|vhdl-mark-defun|vhdl-match-string-downcase|vhdl-match-translate-off|vhdl-max-marker|vhdl-menu-split|vhdl-minibuffer-tab|vhdl-mode-abbrev-table-init|vhdl-mode-map-init|vhdl-mode|vhdl-model-defun|vhdl-model-example-model|vhdl-model-insert|vhdl-model-map-init|vhdl-parse-group-comment|vhdl-parse-string|vhdl-paste-group-comment|vhdl-point|vhdl-port-copy|vhdl-port-flatten|vhdl-port-paste-component|vhdl-port-paste-constants|vhdl-port-paste-context-clause|vhdl-port-paste-declaration|vhdl-port-paste-entity|vhdl-port-paste-generic-map|vhdl-port-paste-generic|vhdl-port-paste-initializations|vhdl-port-paste-instance|vhdl-port-paste-port-map|vhdl-port-paste-port|vhdl-port-paste-signals|vhdl-port-paste-testbench|vhdl-port-reverse-direction|vhdl-prepare-search-1|vhdl-prepare-search-2|vhdl-print-warnings|vhdl-process-command-line-option|vhdl-project-p|vhdl-ps-print-init|vhdl-ps-print-settings|vhdl-re-search-backward|vhdl-re-search-forward|vhdl-read-offset|vhdl-regress-line|vhdl-remove-trailing-spaces-region|vhdl-remove-trailing-spaces|vhdl-replace-string|vhdl-require-hierarchy-info|vhdl-resolve-env-variable|vhdl-resolve-paths|vhdl-run-when-idle|vhdl-safe|vhdl-save-cache|vhdl-save-caches|vhdl-scan-context-clause|vhdl-scan-directory-contents|vhdl-scan-project-contents|vhdl-sequential-statement-p|vhdl-set-compiler|vhdl-set-default-project|vhdl-set-offset|vhdl-set-project|vhdl-set-style|vhdl-show-messages|vhdl-show-syntactic-information|vhdl-skip-case-alternative|vhdl-sort-alist|vhdl-speedbar-check-unit|vhdl-speedbar-configuration|vhdl-speedbar-contract-all|vhdl-speedbar-contract-level|vhdl-speedbar-dired|vhdl-speedbar-display-directory|vhdl-speedbar-display-projects|vhdl-speedbar-expand-all|vhdl-speedbar-expand-architecture|vhdl-speedbar-expand-config|vhdl-speedbar-expand-dirs|vhdl-speedbar-expand-entity|vhdl-speedbar-expand-package|vhdl-speedbar-expand-project|vhdl-speedbar-expand-units|vhdl-speedbar-find-file|vhdl-speedbar-generate-makefile|vhdl-speedbar-goto-this-unit|vhdl-speedbar-higher-text|vhdl-speedbar-initialize|vhdl-speedbar-insert-dir-hierarchy|vhdl-speedbar-insert-dirs|vhdl-speedbar-insert-hierarchy|vhdl-speedbar-insert-project-hierarchy|vhdl-speedbar-insert-projects|vhdl-speedbar-insert-subpackages|vhdl-speedbar-item-info|vhdl-speedbar-line-key|vhdl-speedbar-line-project|vhdl-speedbar-line-text|vhdl-speedbar-make-design|vhdl-speedbar-make-inst-line|vhdl-speedbar-make-pack-line|vhdl-speedbar-make-subpack-line|vhdl-speedbar-make-subprogram-line|vhdl-speedbar-make-title-line|vhdl-speedbar-place-component|vhdl-speedbar-port-copy|vhdl-speedbar-refresh|vhdl-speedbar-rescan-hierarchy|vhdl-speedbar-select-mra|vhdl-speedbar-set-depth|vhdl-speedbar-update-current-project|vhdl-speedbar-update-current-unit|vhdl-speedbar-update-units|vhdl-speedbar|vhdl-standard-p|vhdl-start-translate-off|vhdl-statement-p|vhdl-statistics-buffer|vhdl-stutter-mode|vhdl-submit-bug-report|vhdl-subprog-copy|vhdl-subprog-flatten|vhdl-subprog-paste-body|vhdl-subprog-paste-call|vhdl-subprog-paste-declaration|vhdl-subprog-paste-specification|vhdl-template-alias-hook|vhdl-template-alias|vhdl-template-and-hook|vhdl-template-architecture-hook|vhdl-template-architecture|vhdl-template-argument-list|vhdl-template-array|vhdl-template-assert-hook|vhdl-template-assert|vhdl-template-attribute-decl|vhdl-template-attribute-hook|vhdl-template-attribute-spec|vhdl-template-attribute|vhdl-template-bare-loop-hook|vhdl-template-bare-loop|vhdl-template-begin-end|vhdl-template-block-configuration|vhdl-template-block-hook|vhdl-template-block|vhdl-template-break-hook|vhdl-template-break|vhdl-template-case-hook|vhdl-template-case-is|vhdl-template-case-use|vhdl-template-case|vhdl-template-clocked-wait|vhdl-template-component-conf|vhdl-template-component-decl|vhdl-template-component-hook|vhdl-template-component-inst|vhdl-template-component|vhdl-template-conditional-signal-asst-hook|vhdl-template-conditional-signal-asst|vhdl-template-configuration-decl|vhdl-template-configuration-hook|vhdl-template-configuration-spec|vhdl-template-configuration|vhdl-template-constant-hook|vhdl-template-constant|vhdl-template-construct-alist-init|vhdl-template-default-hook|vhdl-template-default-indent-hook|vhdl-template-default-indent|vhdl-template-default|vhdl-template-directive-synthesis-off|vhdl-template-directive-synthesis-on|vhdl-template-directive-translate-off|vhdl-template-directive-translate-on|vhdl-template-directive|vhdl-template-disconnect-hook|vhdl-template-disconnect|vhdl-template-display-comment-hook|vhdl-template-else-hook|vhdl-template-else|vhdl-template-elsif-hook|vhdl-template-elsif|vhdl-template-entity-hook|vhdl-template-entity|vhdl-template-exit-hook|vhdl-template-exit|vhdl-template-field|vhdl-template-file-hook|vhdl-template-file|vhdl-template-footer|vhdl-template-for-generate|vhdl-template-for-hook|vhdl-template-for-loop|vhdl-template-for|vhdl-template-function-body|vhdl-template-function-decl|vhdl-template-function-hook|vhdl-template-function|vhdl-template-generate-body|vhdl-template-generate|vhdl-template-generic-hook|vhdl-template-generic-list|vhdl-template-generic|vhdl-template-group-decl|vhdl-template-group-hook|vhdl-template-group-template|vhdl-template-group|vhdl-template-header|vhdl-template-if-generate|vhdl-template-if-hook|vhdl-template-if-then-use|vhdl-template-if-then|vhdl-template-if-use|vhdl-template-if|vhdl-template-insert-construct|vhdl-template-insert-date|vhdl-template-insert-directive|vhdl-template-insert-fun|vhdl-template-insert-package|vhdl-template-instance-hook|vhdl-template-instance|vhdl-template-library-hook|vhdl-template-library|vhdl-template-limit-hook|vhdl-template-limit|vhdl-template-loop|vhdl-template-map-hook|vhdl-template-map-init|vhdl-template-map|vhdl-template-modify-noerror|vhdl-template-modify|vhdl-template-nand-hook|vhdl-template-nature-hook|vhdl-template-nature|vhdl-template-next-hook|vhdl-template-next|vhdl-template-nor-hook|vhdl-template-not-hook|vhdl-template-or-hook|vhdl-template-others-hook|vhdl-template-others|vhdl-template-package-alist-init|vhdl-template-package-body|vhdl-template-package-decl|vhdl-template-package-electrical-systems|vhdl-template-package-energy-systems|vhdl-template-package-fluidic-systems|vhdl-template-package-fundamental-constants|vhdl-template-package-hook|vhdl-template-package-material-constants|vhdl-template-package-math-complex|vhdl-template-package-math-real|vhdl-template-package-mechanical-systems|vhdl-template-package-numeric-bit|vhdl-template-package-numeric-std|vhdl-template-package-radiant-systems|vhdl-template-package-std-logic-1164|vhdl-template-package-std-logic-arith|vhdl-template-package-std-logic-misc|vhdl-template-package-std-logic-signed|vhdl-template-package-std-logic-textio|vhdl-template-package-std-logic-unsigned|vhdl-template-package-textio|vhdl-template-package-thermal-systems|vhdl-template-package|vhdl-template-paired-parens|vhdl-template-port-hook|vhdl-template-port-list|vhdl-template-port|vhdl-template-procedural-hook|vhdl-template-procedural|vhdl-template-procedure-body|vhdl-template-procedure-decl|vhdl-template-procedure-hook|vhdl-template-procedure|vhdl-template-process-comb|vhdl-template-process-hook|vhdl-template-process-seq|vhdl-template-process|vhdl-template-quantity-branch|vhdl-template-quantity-free|vhdl-template-quantity-hook|vhdl-template-quantity-source|vhdl-template-quantity|vhdl-template-record|vhdl-template-replace-header-keywords|vhdl-template-report-hook|vhdl-template-report)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:vhdl-template-return-hook|vhdl-template-return|vhdl-template-search-prompt|vhdl-template-selected-signal-asst-hook|vhdl-template-selected-signal-asst|vhdl-template-seq-process|vhdl-template-signal-hook|vhdl-template-signal|vhdl-template-standard-package|vhdl-template-subnature-hook|vhdl-template-subnature|vhdl-template-subprogram-body|vhdl-template-subprogram-decl|vhdl-template-subtype-hook|vhdl-template-subtype|vhdl-template-terminal-hook|vhdl-template-terminal|vhdl-template-type-hook|vhdl-template-type|vhdl-template-undo|vhdl-template-use-hook|vhdl-template-use|vhdl-template-variable-hook|vhdl-template-variable|vhdl-template-wait-hook|vhdl-template-wait|vhdl-template-when-hook|vhdl-template-when|vhdl-template-while-loop-hook|vhdl-template-while-loop|vhdl-template-with-hook|vhdl-template-with|vhdl-template-xnor-hook|vhdl-template-xor-hook|vhdl-toggle-project|vhdl-try-expand-abbrev|vhdl-uniquify|vhdl-upcase-list|vhdl-update-file-contents|vhdl-update-hierarchy|vhdl-update-mode-menu|vhdl-update-progress-info|vhdl-update-sensitivity-list-buffer|vhdl-update-sensitivity-list-process|vhdl-update-sensitivity-list|vhdl-use-direct-instantiation|vhdl-version|vhdl-visit-file|vhdl-warning-when-idle|vhdl-warning|vhdl-widget-directory-validate|vhdl-win-bsws|vhdl-win-fsws|vhdl-win-il|vhdl-within-translate-off|vhdl-words-init|vhdl-work-library|vhdl-write-file-hooks-init|viet-decode-viqr-buffer|viet-decode-viqr-region|viet-encode-viqr-buffer|viet-encode-viqr-region|viet-encode-viscii-char|view--disable|view--enable|view-buffer-other-frame|view-buffer-other-window|view-buffer|view-echo-area-messages|view-emacs-FAQ|view-emacs-debugging|view-emacs-news|view-emacs-problems|view-emacs-todo|view-end-message|view-external-packages|view-file-other-frame|view-file-other-window|view-file|view-hello-file|view-help-file|view-lossage|view-mode-disable|view-mode-enable|view-mode-enter|view-mode-exit|view-mode|view-order-manuals|view-page-size-default|view-really-at-end|view-recenter|view-return-to-alist-update|view-scroll-lines|view-search-no-match-lines|view-search|view-set-half-page-size-default|view-todo|view-window-size|viper--lookup-key|viper--tty-ESC-filter|viper-Append|viper-ESC-event-p|viper-ESC-keyseq-timeout|viper-ESC|viper-Insert|viper-Open-line|viper-P-val|viper-Put-back|viper-R-state-post-command-sentinel|viper-Region|viper-abbreviate-file-name|viper-abbreviate-string|viper-activate-input-method-action|viper-activate-input-method|viper-add-keymap|viper-add-local-keys|viper-add-newline-at-eob-if-necessary|viper-adjust-keys-for|viper-adjust-undo|viper-adjust-window|viper-after-change-sentinel|viper-after-change-undo-hook|viper-alist-to-list|viper-alternate-Meta-key|viper-append-filter-alist|viper-append-to-register|viper-append|viper-apply-major-mode-modifiers|viper-array-to-string|viper-ask-level|viper-autoindent|viper-backward-Word|viper-backward-char-carefully|viper-backward-char|viper-backward-indent|viper-backward-paragraph|viper-backward-sentence|viper-backward-word-kernel|viper-backward-word|viper-before-change-sentinel|viper-beginning-of-field|viper-beginning-of-line|viper-bind-mouse-insert-key|viper-bind-mouse-search-key|viper-bol-and-skip-white|viper-brac-function|viper-buffer-live-p|viper-buffer-search-enable|viper-can-release-key|viper-catch-tty-ESC|viper-change-cursor-color|viper-change-state-to-emacs|viper-change-state-to-insert|viper-change-state-to-replace|viper-change-state-to-vi|viper-change-state|viper-change-subr|viper-change-to-eol|viper-change|viper-char-array-p|viper-char-array-to-macro|viper-char-at-pos|viper-char-equal|viper-char-symbol-sequence-p|viper-characterp|viper-charlist-to-string|viper-charpair-command-p|viper-chars-in-region|viper-check-minibuffer-overlay|viper-check-version|viper-cleanup-ring|viper-color-defined-p|viper-color-display-p|viper-comint-mode-hook|viper-command-argument|viper-common-seq-prefix|viper-complete-filename-or-exit|viper-copy-event|viper-copy-region-as-kill|viper-current-ring-item|viper-cycle-through-mark-ring|viper-deactivate-input-method-action|viper-deactivate-input-method|viper-deactivate-mark|viper-debug-keymaps|viper-default-ex-addresses|viper-deflocalvar|viper-del-backward-char-in-insert|viper-del-backward-char-in-replace|viper-del-forward-char-in-insert|viper-delete-backward-char|viper-delete-backward-word|viper-delete-char|viper-delocalize-var|viper-describe-arg|viper-describe-kbd-macros|viper-describe-one-macro-elt|viper-describe-one-macro|viper-device-type|viper-digit-argument|viper-digit-command-p|viper-display-current-destructive-command|viper-display-macro|viper-display-vector-completions|viper-do-sequence-completion|viper-dotable-command-p|viper-downgrade-to-insert|viper-end-mapping-kbd-macro|viper-end-of-Word|viper-end-of-word-kernel|viper-end-of-word-p|viper-end-of-word|viper-end-with-a-newline-p|viper-enlarge-region|viper-erase-line|viper-escape-to-emacs|viper-escape-to-state|viper-escape-to-vi|viper-event-click-count|viper-event-key|viper-event-vector-p|viper-eventify-list-xemacs|viper-events-to-macro|viper-ex-read-file-name|viper-ex|viper-exchange-point-and-mark|viper-exec-Change|viper-exec-Delete|viper-exec-Yank|viper-exec-bang|viper-exec-buffer-search|viper-exec-change|viper-exec-delete|viper-exec-dummy|viper-exec-equals|viper-exec-form-in-emacs|viper-exec-form-in-vi|viper-exec-key-in-emacs|viper-exec-mapped-kbd-macro|viper-exec-shift|viper-exec-yank|viper-execute-com|viper-exit-insert-state|viper-exit-minibuffer|viper-extract-matching-alist-members|viper-fast-keysequence-p|viper-file-add-suffix|viper-file-checked-in-p|viper-filter-alist|viper-filter-list|viper-find-best-matching-macro|viper-find-char-backward|viper-find-char-forward|viper-find-char|viper-finish-R-mode|viper-finish-change|viper-fixup-macro|viper-flash-search-pattern|viper-forward-Word|viper-forward-char-carefully|viper-forward-char|viper-forward-indent|viper-forward-paragraph|viper-forward-sentence|viper-forward-word-kernel|viper-forward-word|viper-frame-value|viper-get-cursor-color|viper-get-ex-address-subr|viper-get-ex-address|viper-get-ex-buffer|viper-get-ex-com-subr|viper-get-ex-count|viper-get-ex-file|viper-get-ex-opt-gc|viper-get-ex-pat|viper-get-ex-token|viper-get-face|viper-get-filenames-from-buffer|viper-get-saved-cursor-color-in-emacs-mode|viper-get-saved-cursor-color-in-insert-mode|viper-get-saved-cursor-color-in-replace-mode|viper-get-visible-buffer-window|viper-getCom|viper-getcom|viper-glob-mswindows-files|viper-glob-unix-files|viper-global-execute|viper-go-away|viper-goto-char-backward|viper-goto-char-forward|viper-goto-col|viper-goto-eol|viper-goto-line|viper-goto-mark-and-skip-white|viper-goto-mark-subr|viper-goto-mark|viper-handle-!|viper-harness-minor-mode|viper-has-face-support-p|viper-hash-command-p|viper-heading-end|viper-hide-replace-overlay|viper-hide-search-overlay|viper-iconify|viper-if-string|viper-indent-line|viper-info-on-file|viper-insert-isearch-string|viper-insert-next-from-insertion-ring|viper-insert-prev-from-insertion-ring|viper-insert-state-post-command-sentinel|viper-insert-state-pre-command-sentinel|viper-insert-tab|viper-insert|viper-int-to-char|viper-intercept-ESC-key|viper-is-in-minibuffer|viper-isearch-backward|viper-isearch-forward|viper-join-lines|viper-kbd-buf-alist|viper-kbd-buf-definition|viper-kbd-buf-pair|viper-kbd-global-definition|viper-kbd-global-pair|viper-kbd-mode-alist|viper-kbd-mode-definition|viper-kbd-mode-pair|viper-ket-function|viper-key-press-events-to-chars|viper-key-to-character|viper-key-to-emacs-key|viper-keyseq-is-a-possible-macro|viper-kill-buffer|viper-kill-line|viper-last-command-char|viper-leave-region-active|viper-line-pos|viper-line-to-bottom|viper-line-to-middle|viper-line-to-top|viper-line|viper-list-to-alist|viper-load-custom-file|viper-looking-at-alpha|viper-looking-at-alphasep|viper-looking-at-separator|viper-looking-back|viper-loop|viper-macro-to-events|viper-major-mode-change-sentinel|viper-make-overlay|viper-mark-beginning-of-buffer|viper-mark-end-of-buffer|viper-mark-marker|viper-mark-point|viper-maybe-checkout|viper-memq-char|viper-message-conditions|viper-minibuffer-post-command-hook|viper-minibuffer-real-start|viper-minibuffer-setup-sentinel|viper-minibuffer-standard-hook|viper-minibuffer-trim-tail|viper-mode|viper-modify-keymap|viper-modify-major-mode|viper-mouse-catch-frame-switch|viper-mouse-click-frame|viper-mouse-click-get-word|viper-mouse-click-insert-word|viper-mouse-click-posn|viper-mouse-click-search-word|viper-mouse-click-window-buffer-name|viper-mouse-click-window-buffer|viper-mouse-click-window|viper-mouse-event-p|viper-move-marker-locally|viper-move-overlay|viper-move-replace-overlay|viper-movement-command-p|viper-multiclick-p|viper-next-destructive-command|viper-next-heading|viper-next-line-at-bol|viper-next-line-carefully|viper-next-line|viper-nil|viper-non-hook-settings|viper-normalize-minor-mode-map-alist|viper-open-line-at-point|viper-open-line|viper-over-whitespace-line|viper-overlay-end|viper-overlay-get|viper-overlay-live-p|viper-overlay-p|viper-overlay-put|viper-overlay-start|viper-overwrite|viper-p-val|viper-paren-match|viper-parse-mouse-key|viper-pos-within-region|viper-post-command-sentinel|viper-pre-command-sentinel|viper-prefix-arg-com|viper-prefix-arg-value|viper-prefix-command-p|viper-prefix-subseq-p|viper-preserve-cursor-color|viper-prev-destructive-command|viper-prev-heading|viper-previous-line-at-bol|viper-previous-line|viper-push-onto-ring|viper-put-back|viper-put-on-search-overlay|viper-put-string-on-kill-ring|viper-query-replace|viper-quote-region|viper-read-char-exclusive|viper-read-event-convert-to-char|viper-read-event|viper-read-fast-keysequence|viper-read-key-sequence|viper-read-key|viper-read-string-with-history|viper-record-kbd-macro|viper-refresh-mode-line|viper-region|viper-register-macro|viper-register-to-point|viper-regsuffix-command-p|viper-remember-current-frame|viper-remove-hooks|viper-repeat-find-opposite|viper-repeat-find|viper-repeat-from-history|viper-repeat-insert-command|viper-repeat|viper-replace-char-subr|viper-replace-char|viper-replace-end|viper-replace-mode-spy-after|viper-replace-mode-spy-before|viper-replace-start|viper-replace-state-carriage-return|viper-replace-state-exit-cmd|viper-replace-state-post-command-sentinel|viper-replace-state-pre-command-sentinel|viper-reset-mouse-insert-key|viper-reset-mouse-search-key|viper-restore-cursor-color|viper-restore-cursor-type|viper-ring-insert|viper-ring-pop|viper-ring-rotate1|viper-same-line|viper-save-cursor-color|viper-save-kill-buffer|viper-save-last-insertion|viper-save-setting|viper-save-string-in-file|viper-scroll-down-one|viper-scroll-down|viper-scroll-screen-back|viper-scroll-screen|viper-scroll-up-one|viper-scroll-up|viper-search-Next|viper-search-backward|viper-search-forward|viper-search-next|viper-search|viper-separator-skipback-special|viper-seq-last-elt|viper-set-complex-command-for-undo|viper-set-cursor-color-according-to-state|viper-set-destructive-command|viper-set-emacs-state-searchstyle-macros|viper-set-expert-level|viper-set-hooks|viper-set-input-method|viper-set-insert-cursor-type|viper-set-iso-accents-mode|viper-set-mark-if-necessary|viper-set-minibuffer-overlay|viper-set-minibuffer-style|viper-set-mode-vars-for|viper-set-parsing-style-toggling-macro|viper-set-register-macro|viper-set-replace-overlay-glyphs|viper-set-replace-overlay|viper-set-searchstyle-toggling-macros|viper-set-syntax-preference|viper-set-unread-command-events|viper-setup-ESC-to-escape|viper-setup-master-buffer|viper-sit-for-short|viper-skip-all-separators-backward|viper-skip-all-separators-forward|viper-skip-alpha-backward|viper-skip-alpha-forward|viper-skip-nonalphasep-backward|viper-skip-nonalphasep-forward|viper-skip-nonseparators|viper-skip-separators|viper-skip-syntax|viper-special-prefix-com|viper-special-read-and-insert-char|viper-special-ring-rotate1|viper-standard-value|viper-start-R-mode|viper-start-replace|viper-string-to-list|viper-submit-report|viper-subseq|viper-substitute-line|viper-substitute|viper-surrounding-word|viper-switch-to-buffer-other-window|viper-switch-to-buffer|viper-test-com-defun|viper-this-buffer-macros|viper-tmp-insert-at-eob|viper-toggle-case|viper-toggle-key-action|viper-toggle-parse-sexp-ignore-comments)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:viper-toggle-search-style|viper-translate-all-ESC-keysequences|viper-trim-replace-chars-to-delete-if-necessary|viper-unbind-mouse-insert-key|viper-unbind-mouse-search-key|viper-uncatch-tty-ESC|viper-undisplayed-files|viper-undo-more|viper-undo-sentinel|viper-undo|viper-unrecord-kbd-macro|viper-update-syntax-classes|viper-valid-marker|viper-valid-register|viper-version|viper-vi-command-p|viper-wildcard-to-regexp|viper-window-bottom|viper-window-display-p|viper-window-middle|viper-window-top|viper-yank-defun|viper-yank-last-insertion|viper-yank-line|viper-yank|viper-zap-local-keys|viper=|viqr-post-read-conversion|viqr-pre-write-conversion|visible-mode|visit-tags-table-buffer|visit-tags-table|visual-line-mode-set-explicitly|visual-line-mode|vt-keypad-off|vt-keypad-on|vt-narrow|vt-numlock|vt-toggle-screen|vt-wide|walk-window-subtree|walk-window-tree-1|walk-window-tree|warn-maybe-out-of-memory|warning-numeric-level|warning-suppress-p|wdired-abort-changes|wdired-capitalize-word|wdired-change-to-dired-mode|wdired-change-to-wdired-mode|wdired-check-kill-buffer|wdired-customize|wdired-do-perm-changes|wdired-do-renames|wdired-do-symlink-changes|wdired-downcase-word|wdired-exit|wdired-finish-edit|wdired-flag-for-deletion|wdired-get-filename|wdired-get-previous-link|wdired-isearch-filter-read-only|wdired-mode|wdired-mouse-toggle-bit|wdired-next-line|wdired-normalize-filename|wdired-perm-allowed-in-pos|wdired-perms-to-number|wdired-preprocess-files|wdired-preprocess-perms|wdired-preprocess-symlinks|wdired-previous-line|wdired-revert|wdired-search-and-rename|wdired-set-bit|wdired-toggle-bit|wdired-upcase-word|wdired-xcase-word|webjump-builtin-check-args|webjump-builtin|webjump-choose-mirror|webjump-do-simple-query|webjump-mirror-default|webjump-null-or-blank-string-p|webjump-read-choice|webjump-read-number|webjump-read-string|webjump-read-url-choice|webjump-to-iwin|webjump-to-risks|webjump-url-encode|webjump-url-fix-trailing-slash|webjump-url-fix|webjump|what-cursor-position|what-domain|what-line|what-page|when-let|where-is|which-func-ff-hook|which-func-mode|which-func-update-1|which-func-update-ediff-windows|which-func-update|which-function-mode|which-function|whitespace-action-when-on|whitespace-buffer-changed|whitespace-char-valid-p|whitespace-cleanup-region|whitespace-cleanup|whitespace-color-off|whitespace-color-on|whitespace-display-char-off|whitespace-display-char-on|whitespace-display-vector-p|whitespace-display-window|whitespace-empty-at-bob-regexp|whitespace-empty-at-eob-regexp|whitespace-ensure-local-variables|whitespace-help-off|whitespace-help-on|whitespace-help-scroll|whitespace-indentation-regexp|whitespace-insert-option-mark|whitespace-insert-value|whitespace-interactive-char|whitespace-kill-buffer|whitespace-looking-back|whitespace-mark-x|whitespace-mode|whitespace-newline-mode|whitespace-point--flush-used|whitespace-point--used|whitespace-post-command-hook|whitespace-regexp|whitespace-replace-action|whitespace-report-region|whitespace-report|whitespace-space-after-tab-regexp|whitespace-style-face-p|whitespace-style-mark-p|whitespace-toggle-list|whitespace-toggle-options|whitespace-trailing-regexp|whitespace-turn-off|whitespace-turn-on-if-enabled|whitespace-turn-on|whitespace-unload-function|whitespace-warn-read-only|whitespace-write-file-hook|whois-get-tld|whois-reverse-lookup|whois|widget-add-change|widget-add-documentation-string-button|widget-after-change|widget-alist-convert-option|widget-alist-convert-widget|widget-apply-action|widget-apply|widget-at|widget-backward|widget-before-change|widget-beginning-of-line|widget-boolean-prompt-value|widget-browse-at|widget-browse-other-window|widget-browse|widget-button-click|widget-button-press|widget-button-release-event-p|widget-checkbox-action|widget-checklist-add-item|widget-checklist-match-find|widget-checklist-match-inline|widget-checklist-match-up|widget-checklist-match|widget-checklist-validate|widget-checklist-value-create|widget-checklist-value-get|widget-child-validate|widget-child-value-get|widget-child-value-inline|widget-children-validate|widget-children-value-delete|widget-choice-action|widget-choice-default-get|widget-choice-match-inline|widget-choice-match|widget-choice-mouse-down-action|widget-choice-prompt-value|widget-choice-validate|widget-choice-value-create|widget-choose|widget-clear-undo|widget-coding-system-action|widget-coding-system-prompt-value|widget-color--choose-action|widget-color-action|widget-color-notify|widget-color-sample-face-get|widget-color-value-create|widget-complete|widget-completions-at-point|widget-cons-match|widget-const-prompt-value|widget-convert-button|widget-convert-text|widget-convert|widget-copy|widget-create-child-and-convert|widget-create-child-value|widget-create-child|widget-create|widget-default-action|widget-default-active|widget-default-button-face-get|widget-default-completions|widget-default-create|widget-default-deactivate|widget-default-default-get|widget-default-delete|widget-default-format-handler|widget-default-get|widget-default-menu-tag-get|widget-default-mouse-face-get|widget-default-notify|widget-default-prompt-value|widget-default-sample-face-get|widget-default-value-inline|widget-default-value-set|widget-delete-button-action|widget-delete|widget-docstring|widget-documentation-link-action|widget-documentation-link-add|widget-documentation-string-action|widget-documentation-string-indent-to|widget-documentation-string-value-create|widget-echo-help|widget-editable-list-delete-at|widget-editable-list-entry-create|widget-editable-list-format-handler|widget-editable-list-insert-before|widget-editable-list-match-inline|widget-editable-list-match|widget-editable-list-value-create|widget-editable-list-value-get|widget-emacs-commentary-link-action|widget-emacs-library-link-action|widget-end-of-line|widget-event-point|widget-face-notify|widget-face-sample-face-get|widget-field-action|widget-field-activate|widget-field-at|widget-field-buffer|widget-field-end|widget-field-find|widget-field-match|widget-field-prompt-internal|widget-field-prompt-value|widget-field-start|widget-field-text-end|widget-field-validate|widget-field-value-create|widget-field-value-delete|widget-field-value-get|widget-field-value-set|widget-file-link-action|widget-file-prompt-value|widget-forward|widget-function-link-action|widget-get-indirect|widget-get-sibling|widget-get|widget-group-default-get|widget-group-match-inline|widget-group-match|widget-group-value-create|widget-image-find|widget-image-insert|widget-info-link-action|widget-insert-button-action|widget-insert|widget-item-action|widget-item-match-inline|widget-item-match|widget-item-value-create|widget-key-sequence-read-event|widget-key-sequence-validate|widget-key-sequence-value-to-external|widget-key-sequence-value-to-internal|widget-kill-line|widget-leave-text|widget-magic-mouse-down-action|widget-map-buttons|widget-match-inline|widget-member|widget-minor-mode|widget-mouse-help|widget-move-and-invoke|widget-move|widget-narrow-to-field|widget-overlay-inactive|widget-parent-action|widget-plist-convert-option|widget-plist-convert-widget|widget-plist-member|widget-princ-to-string|widget-prompt-value|widget-push-button-value-create|widget-put|widget-radio-action|widget-radio-add-item|widget-radio-button-notify|widget-radio-chosen|widget-radio-validate|widget-radio-value-create|widget-radio-value-get|widget-radio-value-inline|widget-radio-value-set|widget-regexp-match|widget-regexp-validate|widget-restricted-sexp-match|widget-setup|widget-sexp-prompt-value|widget-sexp-validate|widget-sexp-value-to-internal|widget-specify-active|widget-specify-button|widget-specify-doc|widget-specify-field|widget-specify-inactive|widget-specify-insert|widget-specify-sample|widget-specify-secret|widget-sublist|widget-symbol-prompt-internal|widget-tabable-at|widget-toggle-action|widget-toggle-value-create|widget-type-default-get|widget-type-match|widget-type-value-create|widget-type|widget-types-convert-widget|widget-types-copy|widget-url-link-action|widget-value-convert-widget|widget-value-set|widget-value-value-get|widget-value|widget-variable-link-action|widget-vector-match|widget-visibility-value-create|widgetp|wildcard-to-regexp|windmove-constrain-around-range|windmove-constrain-loc-for-movement|windmove-constrain-to-range|windmove-coord-add|windmove-default-keybindings|windmove-do-window-select|windmove-down|windmove-find-other-window|windmove-frame-edges|windmove-left|windmove-other-window-loc|windmove-reference-loc|windmove-right|windmove-up|windmove-wrap-loc-for-movement|window--atom-check-1|window--atom-check|window--check|window--delete|window--display-buffer|window--dump-frame|window--dump-window|window--even-window-heights|window--frame-usable-p|window--in-direction-2|window--in-subtree-p|window--major-non-side-window|window--major-side-window|window--max-delta-1|window--maybe-raise-frame|window--min-delta-1|window--min-size-1|window--min-size-ignore-p|window--pixel-to-total-1|window--pixel-to-total|window--preservable-size|window--preserve-size|window--resizable-p|window--resizable|window--resize-apply-p|window--resize-child-windows-normal|window--resize-child-windows-skip-p|window--resize-child-windows|window--resize-mini-window|window--resize-reset-1|window--resize-reset|window--resize-root-window-vertically|window--resize-root-window|window--resize-siblings|window--resize-this-window|window--sanitize-margin|window--sanitize-window-sizes|window--side-check|window--side-window-p|window--size-fixed-1|window--size-ignore-p|window--size-to-pixel|window--state-get-1|window--state-put-1|window--state-put-2|window--subtree|window--try-to-split-window|window-at-side-list|window-at-side-p|window-atom-root|window-buffer-height|window-child-count|window-combination-p|window-combinations|window-configuration-to-register|window-deletable-p|window-dot|window-fixed-size-p|window-height|window-last-child|window-left|window-list-1|window-make-atom|window-max-delta|window-min-delta|window-min-pixel-height|window-min-pixel-size|window-min-pixel-width|window-new-normal|window-new-pixel|window-new-total|window-normal-size|window-normalize-buffer-to-switch-to|window-normalize-buffer|window-normalize-frame|window-normalize-window|window-old-point|window-preserve-size|window-preserved-size|window-redisplay-end-trigger|window-resizable-p|window-resize-apply-total|window-resize-apply|window-resize-no-error|window-right|window-safe-min-pixel-height|window-safe-min-pixel-size|window-safe-min-pixel-width|window-safe-min-size|window-safely-shrinkable-p|window-screen-lines|window-scroll-bar-height|window-sizable-p|window-sizable|window-size-fixed-p|window-size|window-splittable-p|window-system-for-display|window-text-height|window-text-width|window-use-time|window-width|window-with-parameter|winner-active-region|winner-change-fun|winner-conf|winner-configuration|winner-edges|winner-equal|winner-get-point|winner-insert-if-new|winner-make-point-alist|winner-mode|winner-redo|winner-remember|winner-ring|winner-save-conditionally|winner-save-old-configurations|winner-save-unconditionally|winner-set-conf|winner-set|winner-sorted-window-list|winner-undo-this|winner-undo|winner-win-data|winner-window-list|wisent-grammar-mode|wisent-java-default-setup|wisent-javascript-setup-parser|wisent-python-default-setup|with-auto-compression-mode|with-buffer-modified-unmodified|with-category-table|with-decoded-time-value|with-displayed-buffer-window|with-electric-help|with-file-modes|with-isearch-suspended|with-js|with-mh-folder-updating|with-mode-local-symbol|with-mode-local|with-parsed-tramp-file-name|with-rcirc-process-buffer|with-rcirc-server-buffer|with-selected-frame|with-silent-modifications|with-slots|with-timeout-suspend|with-timeout-unsuspend|with-tramp-connection-property|with-tramp-file-property|with-tramp-progress-reporter|with-vc-properties|with-wrapper-hook|woman-Cyg-to-Win|woman-bookmark-jump|woman-bookmark-make-record|woman-break-table|woman-cached-data|woman-canonicalize-dir|woman-change-fonts|woman-decode-buffer|woman-decode-region|woman-default-faces|woman-delete-following-space|woman-delete-line|woman-delete-match|woman-delete-whole-line|woman-directory-files|woman-dired-define-key-maybe|woman-dired-define-key|woman-dired-define-keys|woman-dired-find-file|woman-display-extended-fonts)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"},{\\\"match\\\":\\\"(?<=[()]|^)(?:woman-expand-directory-path|woman-expand-locale|woman-file-accessible-directory-p|woman-file-name-all-completions|woman-file-name|woman-file-readable-p|woman-find-file|woman-find-next-control-line-carefully|woman-find-next-control-line|woman-follow-word|woman-follow|woman-forward-arg|woman-get-next-char|woman-get-numeric-arg|woman-get-tab-stop|woman-horizontal-escapes|woman-horizontal-line|woman-if-body|woman-if-ignore|woman-imenu|woman-insert-file-contents|woman-interparagraph-space|woman-interpolate-macro|woman-leave-blank-lines|woman-make-bufname|woman-man-buffer|woman-manpath-add-locales|woman-mark-horizontal-position|woman-match-name|woman-menu|woman-mini-help|woman-mode|woman-monochrome-faces|woman-negative-vertical-space|woman-non-underline-faces|woman-not-member|woman-parse-colon-path|woman-parse-man\\\\\\\\.conf|woman-parse-numeric-arg|woman-parse-numeric-value|woman-pop|woman-pre-process-region|woman-process-buffer|woman-push|woman-read-directory-cache|woman-really-find-file|woman-reformat-last-file|woman-replace-match|woman-reset-emulation|woman-reset-nospace|woman-select-symbol-fonts|woman-select|woman-set-arg|woman-set-buffer-display-table|woman-set-face|woman-set-interparagraph-distance|woman-special-characters|woman-strings|woman-tab-to-tab-stop|woman-tar-extract-file|woman-toggle-fill-frame|woman-toggle-use-extended-font|woman-toggle-use-symbol-font|woman-topic-all-completions-1|woman-topic-all-completions-merge|woman-topic-all-completions|woman-translate|woman-unescape|woman-unquote-args|woman-unquote|woman-write-directory-cache|woman|woman0-de|woman0-el|woman0-if|woman0-ig|woman0-macro|woman0-process-escapes|woman0-rename|woman0-rn|woman0-roff-buffer|woman0-so|woman1-B-or-I|woman1-B|woman1-BI|woman1-BR|woman1-I|woman1-IB|woman1-IR|woman1-IX|woman1-RB|woman1-RI|woman1-SB|woman1-SM|woman1-TP|woman1-TX|woman1-alt-fonts|woman1-bd|woman1-cs|woman1-hc|woman1-hw|woman1-hy|woman1-ne|woman1-nh|woman1-ps|woman1-roff-buffer|woman1-ss|woman1-ul|woman1-vs|woman2-DT|woman2-HP|woman2-IP|woman2-LP|woman2-P|woman2-PD|woman2-PP|woman2-RE|woman2-RS|woman2-SH|woman2-SS|woman2-TE|woman2-TH|woman2-TP|woman2-TS|woman2-ad|woman2-br|woman2-fc|woman2-fi|woman2-format-paragraphs|woman2-get-prevailing-indent|woman2-in|woman2-ll|woman2-na|woman2-nf|woman2-nr|woman2-ns|woman2-process-escapes-to-eol|woman2-process-escapes|woman2-roff-buffer|woman2-rs|woman2-sp|woman2-ta|woman2-tagged-paragraph|woman2-ti|woman2-tr|word-at-point|x-apply-session-resources|x-backspace-delete-keys-p|x-change-window-property|x-clipboard-yank|x-complement-fontset-spec|x-compose-font-name|x-create-frame-with-faces|x-create-frame|x-cut-buffer-or-selection-value|x-decompose-font-name|x-delete-window-property|x-disown-selection-internal|x-display-backing-store|x-display-color-cells|x-display-grayscale-p|x-display-mm-height|x-display-mm-width|x-display-monitor-attributes-list|x-display-pixel-height|x-display-pixel-width|x-display-planes|x-display-save-under|x-display-screens|x-display-visual-class|x-dnd-choose-type|x-dnd-current-type|x-dnd-default-test-function|x-dnd-drop-data|x-dnd-forget-drop|x-dnd-get-drop-width-height|x-dnd-get-drop-x-y|x-dnd-get-motif-value|x-dnd-get-state-cons-for-frame|x-dnd-get-state-for-frame|x-dnd-handle-drag-n-drop-event|x-dnd-handle-file-name|x-dnd-handle-motif|x-dnd-handle-moz-url|x-dnd-handle-old-kde|x-dnd-handle-uri-list|x-dnd-handle-xdnd|x-dnd-init-frame|x-dnd-init-motif-for-frame|x-dnd-init-xdnd-for-frame|x-dnd-insert-ctext|x-dnd-insert-utf16-text|x-dnd-insert-utf8-text|x-dnd-maybe-call-test-function|x-dnd-more-than-3-from-flags|x-dnd-motif-value-to-list|x-dnd-save-state|x-dnd-version-from-flags|x-file-dialog|x-focus-frame|x-frame-geometry|x-get-atom-name|x-get-clipboard|x-get-selection-internal|x-get-selection-value|x-gtk-map-stock|x-handle-args|x-handle-display|x-handle-geometry|x-handle-iconic|x-handle-initial-switch|x-handle-name-switch|x-handle-named-frame-geometry|x-handle-no-bitmap-icon|x-handle-numeric-switch|x-handle-parent-id|x-handle-reverse-video|x-handle-smid|x-handle-switch|x-handle-xrm-switch|x-hide-tip|x-initialize-window-system|x-menu-bar-open-internal|x-menu-bar-open|x-must-resolve-font-name|x-own-selection-internal|x-register-dnd-atom|x-resolve-font-name|x-select-font|x-select-text|x-selection-exists-p|x-selection-owner-p|x-selection-value|x-selection|x-send-client-message|x-server-max-request-size|x-show-tip|x-synchronize|x-uses-old-gtk-dialog|x-win-suspend-error|x-window-property|x-wm-set-size-hint|xdb|xml--entity-replacement-text|xml--parse-buffer|xml-debug-print-internal|xml-debug-print|xml-escape-string|xml-find-file-coding-system|xml-get-attribute-or-nil|xml-get-attribute|xml-get-children|xml-maybe-do-ns|xml-mode|xml-node-attributes|xml-node-children|xml-node-name|xml-parse-attlist|xml-parse-dtd|xml-parse-elem-type|xml-parse-file|xml-parse-region|xml-parse-string|xml-parse-tag-1|xml-parse-tag|xml-print|xml-skip-dtd|xml-substitute-numeric-entities|xml-substitute-special|xmltok-get-declared-encoding-position|xor|xref--alistify|xref--analyze|xref--display-position|xref--find-definitions|xref--goto-location|xref--insert-propertized|xref--insert-xrefs|xref--location-at-point|xref--next-line|xref--pop-to-location|xref--read-identifier|xref--search-property|xref--show-location|xref--show-xref-buffer|xref--show-xrefs|xref--xref-buffer-mode|xref--xref-child-p|xref--xref-description|xref--xref-list-p|xref--xref-location|xref--xref-p|xref--xref|xref-bogus-location-child-p|xref-bogus-location-list-p|xref-bogus-location-message|xref-bogus-location-p|xref-bogus-location|xref-buffer-location-child-p|xref-buffer-location-list-p|xref-buffer-location-p|xref-buffer-location|xref-clear-marker-stack|xref-default-identifier-at-point|xref-elisp-location-child-p|xref-elisp-location-list-p|xref-elisp-location-p|xref-elisp-location|xref-file-location-child-p|xref-file-location-list-p|xref-file-location-p|xref-file-location|xref-find-apropos|xref-find-definitions-other-frame|xref-find-definitions-other-window|xref-find-definitions|xref-find-references|xref-goto-xref|xref-location-child-p|xref-location-group|xref-location-list-p|xref-location-marker|xref-location-p|xref-location|xref-make-bogus-location|xref-make-buffer-location|xref-make-elisp-location|xref-make-file-location|xref-make|xref-next-line|xref-pop-marker-stack|xref-prev-line|xref-push-marker-stack|xscheme-cd|xscheme-coerce-prompt|xscheme-debugger-mode-p|xscheme-default-command-line|xscheme-delete-output|xscheme-display-process-buffer|xscheme-enable-control-g|xscheme-enter-debugger-mode|xscheme-enter-input-wait|xscheme-enter-interaction-mode|xscheme-eval|xscheme-evaluation-commands|xscheme-exit-input-wait|xscheme-finish-gc|xscheme-goto-output-point|xscheme-guarantee-newlines|xscheme-insert-expression|xscheme-interrupt-commands|xscheme-message|xscheme-mode-line-initialize|xscheme-output-goto|xscheme-parse-command-line|xscheme-process-buffer-current-p|xscheme-process-buffer-window|xscheme-process-buffer|xscheme-process-filter-initialize|xscheme-process-filter-output|xscheme-process-filter|xscheme-process-filter:simple-action|xscheme-process-filter:string-action-noexcursion|xscheme-process-filter:string-action|xscheme-process-running-p|xscheme-process-sentinel|xscheme-prompt-for-confirmation|xscheme-prompt-for-expression-exit|xscheme-prompt-for-expression|xscheme-read-command-line|xscheme-region-expression-p|xscheme-rotate-yank-pointer|xscheme-select-process-buffer|xscheme-send-breakpoint-interrupt|xscheme-send-buffer|xscheme-send-char|xscheme-send-control-g-interrupt|xscheme-send-control-u-interrupt|xscheme-send-control-x-interrupt|xscheme-send-current-line|xscheme-send-definition|xscheme-send-interrupt|xscheme-send-next-expression|xscheme-send-previous-expression|xscheme-send-proceed|xscheme-send-region|xscheme-send-string-1|xscheme-send-string-2|xscheme-send-string|xscheme-set-prompt-variable|xscheme-set-prompt|xscheme-set-runlight|xscheme-start-gc|xscheme-start-process|xscheme-start|xscheme-unsolicited-read-char|xscheme-wait-for-process|xscheme-write-message-1|xscheme-write-value|xscheme-yank-pop|xscheme-yank-previous-send|xscheme-yank-push|xscheme-yank|xselect--encode-string|xselect--int-to-cons|xselect--selection-bounds|xselect-convert-to-atom|xselect-convert-to-charpos|xselect-convert-to-class|xselect-convert-to-colno|xselect-convert-to-delete|xselect-convert-to-filename|xselect-convert-to-host|xselect-convert-to-identity|xselect-convert-to-integer|xselect-convert-to-length|xselect-convert-to-lineno|xselect-convert-to-name|xselect-convert-to-os|xselect-convert-to-save-targets|xselect-convert-to-string|xselect-convert-to-targets|xselect-convert-to-user|xterm-mouse--read-event-sequence-1000|xterm-mouse--read-event-sequence-1006|xterm-mouse--set-click-count|xterm-mouse-event|xterm-mouse-mode|xterm-mouse-position-function|xterm-mouse-translate-1|xterm-mouse-translate-extended|xterm-mouse-translate|xterm-mouse-truncate-wrap|xw-color-defined-p|xw-color-values|xw-defined-colors|xw-display-color-p|yank-handle-category-property|yank-handle-font-lock-face-property|yank-menu|yank-rectangle|yenc-decode-region|yenc-extract-filename|zap-to-char|zeroconf-get-domain|zeroconf-get-host-domain|zeroconf-get-host|zeroconf-get-interface-name|zeroconf-get-interface-number|zeroconf-get-service|zeroconf-init|zeroconf-list-service-names|zeroconf-list-service-types|zeroconf-list-services|zeroconf-publish-service|zeroconf-register-service-browser|zeroconf-register-service-resolver|zeroconf-register-service-type-browser|zeroconf-resolve-service|zeroconf-service-add-hook|zeroconf-service-address|zeroconf-service-aprotocol|zeroconf-service-browser-handler|zeroconf-service-domain|zeroconf-service-flags|zeroconf-service-host|zeroconf-service-interface|zeroconf-service-name|zeroconf-service-port|zeroconf-service-protocol|zeroconf-service-remove-hook|zeroconf-service-resolver-handler|zeroconf-service-txt|zeroconf-service-type-browser-handler|zeroconf-service-type|zerop--anon-cmacro|zone-call|zone-cpos|zone-exploding-remove|zone-fall-through-ws|zone-fill-out-screen|zone-fret|zone-hiding-mode-line|zone-leave-me-alone|zone-line-specs|zone-mode|zone-orig|zone-park\\\\\\\\/sit-for|zone-pgm-2nd-putz-with-case|zone-pgm-dissolve|zone-pgm-drip-fretfully|zone-pgm-drip|zone-pgm-explode|zone-pgm-five-oclock-swan-dive|zone-pgm-jitter|zone-pgm-martini-swan-dive|zone-pgm-paragraph-spaz|zone-pgm-putz-with-case|zone-pgm-random-life|zone-pgm-rat-race|zone-pgm-rotate-LR-lockstep|zone-pgm-rotate-LR-variable|zone-pgm-rotate-RL-lockstep|zone-pgm-rotate-RL-variable|zone-pgm-rotate|zone-pgm-stress-destress|zone-pgm-stress|zone-pgm-whack-chars|zone-remove-text|zone-replace-char|zone-shift-down|zone-shift-left|zone-shift-right|zone-shift-up|zone-when-idle|zone|zrgrep)(?=[\\\\\\\\s()]|$)\\\",\\\"name\\\":\\\"support.function.emacs.lisp\\\"}]},\\\"string\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.emacs.lisp\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.emacs.lisp\\\"}},\\\"name\\\":\\\"string.quoted.double.emacs.lisp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-innards\\\"}]},\\\"string-innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#eldoc\\\"},{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)$\\\\\\\\n?\\\",\\\"name\\\":\\\"constant.escape.character.newline.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.escape.backslash.emacs.lisp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\).\\\",\\\"name\\\":\\\"constant.escape.character.emacs.lisp\\\"}]},\\\"symbols\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.emacs.lisp\\\"}},\\\"match\\\":\\\"(?<=[\\\\\\\\s()\\\\\\\\[]|^)##\\\",\\\"name\\\":\\\"constant.other.interned.blank.symbol.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.emacs.lisp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"match\\\":\\\"(?<=[\\\\\\\\s()\\\\\\\\[]|^)(#)((?:[-'+=*/\\\\\\\\w~!@$%^&:<>{}?]|\\\\\\\\\\\\\\\\.)+)\\\",\\\"name\\\":\\\"constant.other.symbol.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.spliced.symbol.emacs.lisp\\\"}},\\\"match\\\":\\\"(,@)([-+=*/\\\\\\\\w~!@$%^&:<>{}?]+)\\\",\\\"name\\\":\\\"constant.other.spliced.symbol.emacs.lisp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.inserted.symbol.emacs.lisp\\\"}},\\\"match\\\":\\\"(,)([-+=*/\\\\\\\\w~!@$%^&:<>{}?]+)\\\",\\\"name\\\":\\\"constant.other.inserted.symbol.emacs.lisp\\\"}]},\\\"vectors\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.section.vector.begin.emacs.lisp\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.section.vector.end.emacs.lisp\\\"}]}},\\\"scopeName\\\":\\\"source.emacs.lisp\\\",\\\"aliases\\\":[\\\"elisp\\\"]}\"))\n\nexport default [\nlang\n]\n", "import javascript from './javascript.mjs'\nimport css from './css.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Ruby Haml\\\",\\\"fileTypes\\\":[\\\"haml\\\",\\\"html.haml\\\"],\\\"foldingStartMarker\\\":\\\"^\\\\\\\\s*([-%#\\\\\\\\:\\\\\\\\.\\\\\\\\w\\\\\\\\=].*)\\\\\\\\s$\\\",\\\"foldingStopMarker\\\":\\\"^\\\\\\\\s*$\\\",\\\"name\\\":\\\"haml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^(\\\\\\\\s*)==\\\",\\\"contentName\\\":\\\"string.quoted.double.ruby\\\",\\\"end\\\":\\\"$\\\\\\\\n*\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):ruby\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"source.ruby.embedded.filter.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.prolog.haml\\\"}},\\\"match\\\":\\\"^(!!!)($|\\\\\\\\s.*)\\\",\\\"name\\\":\\\"meta.prolog.haml\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*):javascript\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"js.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)%script\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"js.inline.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):ruby$\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"source.ruby.embedded.filter.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.comment.haml\\\"}},\\\"match\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\/\\\\\\\\[[^\\\\\\\\]].*?$\\\\\\\\n?)\\\",\\\"name\\\":\\\"comment.line.slash.haml\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\-\\\\\\\\#|\\\\\\\\/|\\\\\\\\-\\\\\\\\s*\\\\\\\\/\\\\\\\\*+)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.comment.haml\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.block.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.haml\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(?:((%)([-\\\\\\\\w:]+))|(?=\\\\\\\\.|#))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.tag.haml\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.haml\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.haml\\\"}},\\\"end\\\":\\\"$|(?!\\\\\\\\.|#|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|&|=|-|~|!=|&=|/)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"==\\\",\\\"contentName\\\":\\\"string.quoted.double.ruby\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.class\\\"}},\\\"match\\\":\\\"(\\\\\\\\.[\\\\\\\\w\\\\\\\\-\\\\\\\\:]+)\\\",\\\"name\\\":\\\"meta.selector.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.id\\\"}},\\\"match\\\":\\\"(#[\\\\\\\\w-]+)\\\",\\\"name\\\":\\\"meta.selector.css\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\#)\\\\\\\\{(?=.*(,|(do)|\\\\\\\\{|\\\\\\\\}|\\\\\\\\||(\\\\\\\\#.*)|\\\\\\\\R)\\\\\\\\s*)\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\}(?!\\\\\\\\s*\\\\\\\\,)(?!\\\\\\\\s*\\\\\\\\|)(?!\\\\\\\\#\\\\\\\\{.*\\\\\\\\})\\\",\\\"name\\\":\\\"meta.section.attributes.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"},{\\\"include\\\":\\\"#continuation\\\"},{\\\"include\\\":\\\"#rubyline\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.section.attributes.plain.haml\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([\\\\\\\\w-]+)\\\",\\\"name\\\":\\\"constant.other.symbol.ruby\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"punctuation\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x\\\\\\\\h{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.)\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"}]},{\\\"include\\\":\\\"#interpolated_ruby\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[(?=.+(,|\\\\\\\\[|\\\\\\\\]|\\\\\\\\||(\\\\\\\\#.*))\\\\\\\\s*)\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\](?!.*(?!\\\\\\\\#\\\\\\\\[)\\\\\\\\])\\\",\\\"name\\\":\\\"meta.section.object.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"},{\\\"include\\\":\\\"#continuation\\\"},{\\\"include\\\":\\\"#rubyline\\\"}]},{\\\"include\\\":\\\"#interpolated_ruby_line\\\"},{\\\"include\\\":\\\"#rubyline\\\"},{\\\"match\\\":\\\"/\\\",\\\"name\\\":\\\"punctuation.terminator.tag.haml\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(ruby|opal)$\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"source.ruby.embedded.filter.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):ruby$\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"source.ruby.embedded.filter.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(style|sass)$\\\",\\\"end\\\":\\\"^(?=\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"source.sass.embedded.filter.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sass\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):coffee(script)?\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"source.coffee.embedded.filter.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.coffee\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):plain$\\\",\\\"end\\\":\\\"^(?=\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"text.plain.embedded.filter.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.plain\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(:ruby)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.filter.haml\\\"}},\\\"end\\\":\\\"(?m:(?<=\\\\\\\\n)(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*))\\\",\\\"name\\\":\\\"source.ruby.embedded.filter.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(:sass)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.filter.haml\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"source.embedded.filter.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sass\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(styles|sass)$\\\",\\\"end\\\":\\\"^(?=\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"source.sass.embedded.filter.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sass\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):plain$\\\",\\\"end\\\":\\\"^(?=\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"text.plain.embedded.filter.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.plain\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.escape.haml\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\.)\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*(?==|-|~|!=|&=)\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby_line\\\"},{\\\"include\\\":\\\"#rubyline\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(:php)\\\",\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.haml\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"meta.embedded.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.php#language\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(:markdown)\\\",\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.haml\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"meta.embedded.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(:(css|styles?))$\\\",\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.haml\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"meta.embedded.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(:sass)$\\\",\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.haml\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"meta.embedded.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sass\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(:scss)$\\\",\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.haml\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s+|$\\\\\\\\n*)\\\",\\\"name\\\":\\\"meta.embedded.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.scss\\\"}]}],\\\"repository\\\":{\\\"continuation\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.continuation.haml\\\"}},\\\"match\\\":\\\"(\\\\\\\\|)\\\\\\\\s*\\\\\\\\n\\\"},\\\"interpolated_ruby\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.ruby\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.ruby.embedded.source.empty\\\"}},\\\"match\\\":\\\"#\\\\\\\\{(\\\\\\\\})\\\",\\\"name\\\":\\\"source.ruby.embedded.source\\\"},{\\\"begin\\\":\\\"#\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.ruby\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"name\\\":\\\"source.ruby.embedded.source\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"},{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"include\\\":\\\"#variables\\\"}]},\\\"interpolated_ruby_line\\\":{\\\"begin\\\":\\\"!?==\\\",\\\"contentName\\\":\\\"string.source.ruby.embedded.haml\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.line.ruby.interpolated.haml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.ruby#escaped_char\\\"}]},\\\"nest_curly_and_self\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"},{\\\"include\\\":\\\"source.ruby\\\"}]}]},\\\"rubyline\\\":{\\\"begin\\\":\\\"(&|!)?(=|-|~)\\\",\\\"contentName\\\":\\\"source.ruby.embedded.haml\\\",\\\"end\\\":\\\"((do|\\\\\\\\{)( \\\\\\\\|[.*]+\\\\\\\\|)?)$|$|^(?!.*\\\\\\\\|\\\\\\\\s*)$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"source.ruby.embedded.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.ruby.start-block\\\"}},\\\"name\\\":\\\"meta.line.ruby.haml\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.php\\\"}},\\\"match\\\":\\\"\\\\\\\\s+((elseif|foreach|switch|declare|default|use))(?=\\\\\\\\s|\\\\\\\\()\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.include.php\\\"}},\\\"match\\\":\\\"\\\\\\\\s+(require_once|include_once)(?=\\\\\\\\s|\\\\\\\\()\\\"},{\\\"match\\\":\\\"\\\\\\\\s+(catch|try|throw|exception|finally|die)(?=\\\\\\\\s|\\\\\\\\(|\\\\\\\\n*)\\\",\\\"name\\\":\\\"keyword.control.exception.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.php\\\"}},\\\"match\\\":\\\"\\\\\\\\s+(function\\\\\\\\s*)((?=\\\\\\\\())\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.php\\\"}},\\\"match\\\":\\\"\\\\\\\\s+(use\\\\\\\\s*)((?=\\\\\\\\())\\\"},{\\\"match\\\":\\\"(\\\\\\\\||,|<|do|\\\\\\\\{)\\\\\\\\s*(\\\\\\\\#.*)?$\\\\\\\\n*\\\",\\\"name\\\":\\\"source.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rubyline\\\"}]},{\\\"comment\\\":\\\"Hack to let ruby comments work in this context properly\\\",\\\"match\\\":\\\"#.*$\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby\\\"},{\\\"include\\\":\\\"source.ruby\\\"},{\\\"include\\\":\\\"#continuation\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.ruby\\\"}},\\\"match\\\":\\\"(#@)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.instance.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.ruby\\\"}},\\\"match\\\":\\\"(#@@)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.class.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.ruby\\\"}},\\\"match\\\":\\\"(#\\\\\\\\$)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.global.ruby\\\"}]}},\\\"scopeName\\\":\\\"text.haml\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\",\\\"css\\\"],\\\"embeddedLangsLazy\\\":[\\\"ruby\\\",\\\"sass\\\",\\\"coffee\\\",\\\"markdown\\\"]}\"))\n\nexport default [\n...javascript,\n...css,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"JSX\\\",\\\"name\\\":\\\"jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#directives\\\"},{\\\"include\\\":\\\"#statements\\\"},{\\\"include\\\":\\\"#shebang\\\"}],\\\"repository\\\":{\\\"access-modifier\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"after-operator-block-as-object-literal\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--)(?<=[:=(,\\\\\\\\[?+!>]|^await|[^\\\\\\\\._$[:alnum:]]await|^return|[^\\\\\\\\._$[:alnum:]]return|^yield|[^\\\\\\\\._$[:alnum:]]yield|^throw|[^\\\\\\\\._$[:alnum:]]throw|^in|[^\\\\\\\\._$[:alnum:]]in|^of|[^\\\\\\\\._$[:alnum:]]of|^typeof|[^\\\\\\\\._$[:alnum:]]typeof|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\*)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"name\\\":\\\"meta.objectliteral.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-member\\\"}]},\\\"array-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"array-binding-pattern-const\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#binding-element-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"array-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.js.jsx\\\"}},\\\"name\\\":\\\"meta.array.literal.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"arrow-function\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(\\\\\\\\basync)\\\\\\\\s+)?([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?==>)\\\",\\\"name\\\":\\\"meta.arrow.js.jsx\\\"},{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(\\\\\\\\basync))?((?<![})!\\\\\\\\]])\\\\\\\\s*(?=((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"}},\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.arrow.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#function-parameters\\\"},{\\\"include\\\":\\\"#arrow-return-type\\\"},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"}]},{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.arrow.js.jsx\\\"}},\\\"end\\\":\\\"((?<=\\\\\\\\}|\\\\\\\\S)(?<!=>)|((?!\\\\\\\\{)(?=\\\\\\\\S)))(?!\\\\\\\\/[\\\\\\\\/\\\\\\\\*])\\\",\\\"name\\\":\\\"meta.arrow.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"arrow-return-type\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js.jsx\\\"}},\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.return.type.arrow.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrow-return-type-body\\\"}]},\\\"arrow-return-type-body\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[:])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"async-modifier\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(async)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"},\\\"binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#array-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"binding-element-const\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#array-binding-pattern-const\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"boolean-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))true(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.true.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))false(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.false.js.jsx\\\"}]},\\\"brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"cast\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx\\\"}]},\\\"class-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(?:(abstract)\\\\\\\\s+)?\\\\\\\\b(class)\\\\\\\\b(?=\\\\\\\\s+|/[/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.class.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.class.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-declaration-or-expression-patterns\\\"}]},\\\"class-declaration-or-expression-patterns\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.class.js.jsx\\\"}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#class-or-interface-body\\\"}]},\\\"class-expression\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(class)\\\\\\\\b(?=\\\\\\\\s+|[<{]|\\\\\\\\/[\\\\\\\\/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.class.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-declaration-or-expression-patterns\\\"}]},\\\"class-or-interface-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*\\\",\\\"end\\\":\\\"(?=\\\\\\\\s|[;),}\\\\\\\\]:\\\\\\\\-\\\\\\\\+]|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#access-modifier\\\"},{\\\"include\\\":\\\"#property-accessor\\\"},{\\\"include\\\":\\\"#async-modifier\\\"},{\\\"include\\\":\\\"#after-operator-block-as-object-literal\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"class-or-interface-heritage\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(extends|implements)\\\\\\\\b)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))(?=\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*)*\\\\\\\\s*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.js.jsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js.jsx\\\"}},\\\"name\\\":\\\"comment.block.documentation.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docblock\\\"}]},{\\\"begin\\\":\\\"(/\\\\\\\\*)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|(\\\\\\\\*/)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js.jsx\\\"}},\\\"name\\\":\\\"comment.block.js.jsx\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.js.jsx\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.js.jsx\\\",\\\"end\\\":\\\"(?=$)\\\"}]},\\\"control-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#switch-statement\\\"},{\\\"include\\\":\\\"#for-loop\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(catch|finally|throw|try)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.trycatch.js.jsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.loop.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.label.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(break|continue|goto)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(break|continue|do|goto|while)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.loop.js.jsx\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(return)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.js.jsx\\\"}},\\\"end\\\":\\\"(?=[;}]|$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(case|default|switch)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.switch.js.jsx\\\"},{\\\"include\\\":\\\"#if-statement\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(else|if)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.conditional.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(with)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.with.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(package)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(debugger)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.other.debugger.js.jsx\\\"}]},\\\"decl-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"name\\\":\\\"meta.block.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}]},\\\"declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#function-declaration\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#enum-declaration\\\"},{\\\"include\\\":\\\"#namespace-declaration\\\"},{\\\"include\\\":\\\"#type-alias-declaration\\\"},{\\\"include\\\":\\\"#import-equals-declaration\\\"},{\\\"include\\\":\\\"#import-declaration\\\"},{\\\"include\\\":\\\"#export-declaration\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(declare|export)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.js.jsx\\\"}]},\\\"decorator\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))\\\\\\\\@\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.decorator.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.decorator.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"destructuring-const\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object-binding-pattern-variable.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.array-binding-pattern-variable.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array-binding-pattern-const\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"destructuring-parameter\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:)\\\\\\\\s*(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js.jsx\\\"}},\\\"name\\\":\\\"meta.parameter.object-binding-pattern.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-object-binding-element\\\"}]},{\\\"begin\\\":\\\"(?<!=|:)\\\\\\\\s*(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js.jsx\\\"}},\\\"name\\\":\\\"meta.paramter.array-binding-pattern.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"destructuring-parameter-rest\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"destructuring-variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object-binding-pattern-variable.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.array-binding-pattern-variable.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array-binding-pattern\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"destructuring-variable-rest\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.js.jsx variable.other.readwrite.js.jsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"destructuring-variable-rest-const\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.js.jsx variable.other.constant.js.jsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"directives\\\":{\\\"begin\\\":\\\"^(///)\\\\\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\\\\\s*=\\\\\\\\s*((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))+\\\\\\\\s*/>\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js.jsx\\\"}},\\\"end\\\":\\\"(?=$)\\\",\\\"name\\\":\\\"comment.line.triple-slash.directive.js.jsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)(reference|amd-dependency|amd-module)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.directive.js.jsx\\\"}},\\\"end\\\":\\\"/>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.js.jsx\\\"}},\\\"name\\\":\\\"meta.tag.js.jsx\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"path|types|no-default-lib|lib|name|resolution-mode\\\",\\\"name\\\":\\\"entity.other.attribute-name.directive.js.jsx\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.js.jsx\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"docblock\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.access-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:access|api))\\\\\\\\s+(private|protected|public)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.other.email.link.underline.jsdoc\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"match\\\":\\\"((@)author)\\\\\\\\s+([^@\\\\\\\\s<>*/](?:[^@<>*/]|\\\\\\\\*[^/])*)(?:\\\\\\\\s*(<)([^>\\\\\\\\s]+)(>))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.control.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)borrows)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\\\\\\s+(as)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)example)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=@|\\\\\\\\*/)\\\",\\\"name\\\":\\\"meta.example.jsdoc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\s\\\\\\\\*\\\\\\\\s+\\\"},{\\\"begin\\\":\\\"\\\\\\\\G(<)caption(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"contentName\\\":\\\"constant.other.description.jsdoc\\\",\\\"end\\\":\\\"(</)caption(>)|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"source.embedded.js.jsx\\\"}},\\\"match\\\":\\\"[^\\\\\\\\s@*](?:[^*]|\\\\\\\\*[^/])*\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.symbol-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)kind)\\\\\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)see)\\\\\\\\s+(?:((?=https?://)(?:[^\\\\\\\\s*]|\\\\\\\\*[^/])+)|((?!https?://|(?:\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\\\\\b)(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)template)\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*(?:\\\\\\\\s*,\\\\\\\\s*[A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)*)\\\"},{\\\"begin\\\":\\\"((@)template)\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\"},{\\\"begin\\\":\\\"((@)typedef)\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+\\\",\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.begin.bracket.square.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"source.embedded.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.end.bracket.square.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.syntax.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)\\\\\\\\s*[\\\\\\\\w$]+(?:(?:\\\\\\\\[\\\\\\\\])?\\\\\\\\.[\\\\\\\\w$]+)*(?:\\\\\\\\s*(=)\\\\\\\\s*((?>\\\\\\\"(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!\\\\\\\"))|[^*\\\\\\\\\\\\\\\\])*?\\\\\\\"|'(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!'))|[^*\\\\\\\\\\\\\\\\])*?'|\\\\\\\\[(?:(?:\\\\\\\\*(?!/))|[^*])*?\\\\\\\\]|(?:(?:\\\\\\\\*(?!/))|\\\\\\\\s(?!\\\\\\\\s*\\\\\\\\])|\\\\\\\\[.*?(?:\\\\\\\\]|(?=\\\\\\\\*/))|[^*\\\\\\\\s\\\\\\\\[\\\\\\\\]])*)*))?\\\\\\\\s*(?:(\\\\\\\\])((?:[^*\\\\\\\\s]|\\\\\\\\*[^\\\\\\\\s/])+)?|(?=\\\\\\\\*/))\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\\\\\s+((?:[^{}@\\\\\\\\s*]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)(?:default(?:value)?|license|version))\\\\\\\\s+(([''\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"variable.other.jsdoc\\\",\\\"end\\\":\\\"(\\\\\\\\3)|(?=$|\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\\\\\s+([^\\\\\\\\s*]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},{\\\"include\\\":\\\"#inline-tags\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s+)\\\"}]},\\\"enum-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?(?:\\\\\\\\b(const)\\\\\\\\s+)?\\\\\\\\b(enum)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.enum.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.enum.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.enum.declaration.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.enummember.js.jsx\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"begin\\\":\\\"(?=((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\])))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"export-declaration\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.as.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.namespace.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.module.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)\\\\\\\\s+(as)\\\\\\\\s+(namespace)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)(?:\\\\\\\\s+(type))?(?:(?:\\\\\\\\s*(=))|(?:\\\\\\\\s+(default)(?=\\\\\\\\s+)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.type.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.default.js.jsx\\\"}},\\\"end\\\":\\\"(?=$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.export.default.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)(?:\\\\\\\\s+(type))?\\\\\\\\b(?!(\\\\\\\\$)|(\\\\\\\\s*:))((?=\\\\\\\\s*[\\\\\\\\{*])|((?=\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\\\\\s|,))(?!\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.type.js.jsx\\\"}},\\\"end\\\":\\\"(?=$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.export.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-declaration\\\"}]}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"expression-inside-possibly-arrow-parens\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#destructuring-parameter\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|protected|private|readonly)\\\\\\\\s+(?=(override|public|protected|private|readonly)\\\\\\\\s+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.js.jsx variable.language.this.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx variable.language.this.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*[:,]|$)\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.js.jsx\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"expression-operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(await)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.flow.js.jsx\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?=\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?:\\\\\\\\s*(\\\\\\\\*))?\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))delete(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.delete.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))in(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.in.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))of(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.of.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))instanceof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.instanceof.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.new.js.jsx\\\"},{\\\"include\\\":\\\"#typeof-operator\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))void(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.void.js.jsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+(const)(?=\\\\\\\\s*($|[;,:})\\\\\\\\]]))\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(as)|(satisfies))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.satisfies.js.jsx\\\"}},\\\"end\\\":\\\"(?=^|[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as|satisfies)\\\\\\\\s+)|(\\\\\\\\s+\\\\\\\\<))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.spread.js.jsx\\\"},{\\\"match\\\":\\\"\\\\\\\\*=|(?<!\\\\\\\\()/=|%=|\\\\\\\\+=|\\\\\\\\-=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.js.jsx\\\"},{\\\"match\\\":\\\"\\\\\\\\&=|\\\\\\\\^=|<<=|>>=|>>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.js.jsx\\\"},{\\\"match\\\":\\\"<<|>>>|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.js.jsx\\\"},{\\\"match\\\":\\\"===|!==|==|!=\\\",\\\"name\\\":\\\"keyword.operator.comparison.js.jsx\\\"},{\\\"match\\\":\\\"<=|>=|<>|<|>\\\",\\\"name\\\":\\\"keyword.operator.relational.js.jsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.js.jsx\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:]])(\\\\\\\\!)\\\\\\\\s*(?:(/=)|(?:(/)(?![/*])))\\\"},{\\\"match\\\":\\\"\\\\\\\\!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.logical.js.jsx\\\"},{\\\"match\\\":\\\"\\\\\\\\&|~|\\\\\\\\^|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.js.jsx\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.js.jsx\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.js.jsx\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.js.jsx\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.js.jsx\\\"},{\\\"begin\\\":\\\"(?<=[_$[:alnum:])\\\\\\\\]])\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))\\\",\\\"end\\\":\\\"(?:(/=)|(?:(/)(?!\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.js.jsx\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:])\\\\\\\\]])\\\\\\\\s*(?:(/=)|(?:(/)(?![/*])))\\\"}]},\\\"expressionPunctuations\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"expressionWithoutIdentifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-expression\\\"},{\\\"include\\\":\\\"#class-expression\\\"},{\\\"include\\\":\\\"#arrow-function\\\"},{\\\"include\\\":\\\"#paren-expression-possibly-arrow\\\"},{\\\"include\\\":\\\"#cast\\\"},{\\\"include\\\":\\\"#ternary-expression\\\"},{\\\"include\\\":\\\"#new-expr\\\"},{\\\"include\\\":\\\"#instanceof-expr\\\"},{\\\"include\\\":\\\"#object-literal\\\"},{\\\"include\\\":\\\"#expression-operators\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#support-objects\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},\\\"field-declaration\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\()(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)\\\\\\\\s+)?(?=\\\\\\\\s*((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(?:(?:(\\\\\\\\?)|(\\\\\\\\!))\\\\\\\\s*)?(=|:|;|,|\\\\\\\\}|$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$|(^(?!\\\\\\\\s*((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(?:(?:(\\\\\\\\?)|(\\\\\\\\!))\\\\\\\\s*)?(=|:|;|,|$))))|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.field.declaration.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.property.js.jsx entity.name.function.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.js.jsx\\\"}},\\\"match\\\":\\\"(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)(?:(\\\\\\\\?)|(\\\\\\\\!))?(?=\\\\\\\\s*\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"match\\\":\\\"\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.property.js.jsx variable.object.property.js.jsx\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"keyword.operator.definiteassignment.js.jsx\\\"}]},\\\"for-loop\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))for(?=((\\\\\\\\s+|(\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*))await)?\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)?(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.loop.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"await\\\",\\\"name\\\":\\\"keyword.control.loop.js.jsx\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]}]},\\\"function-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#function-parameters\\\"},{\\\"include\\\":\\\"#return-type\\\"},{\\\"include\\\":\\\"#type-function-return-type\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.generator.asterisk.js.jsx\\\"}]},\\\"function-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"name\\\":\\\"meta.function-call.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-target\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-call-optionals\\\"},{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},{\\\"begin\\\":\\\"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"name\\\":\\\"meta.function-call.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-target\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-call-optionals\\\"},{\\\"include\\\":\\\"#type-arguments\\\"}]}]},\\\"function-call-optionals\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\.\\\",\\\"name\\\":\\\"meta.function-call.js.jsx punctuation.accessor.optional.js.jsx\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"meta.function-call.js.jsx keyword.operator.definiteassignment.js.jsx\\\"}]},\\\"function-call-target\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-function-call-identifiers\\\"},{\\\"match\\\":\\\"(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.function.js.jsx\\\"}]},\\\"function-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?(?:(async)\\\\\\\\s+)?(function\\\\\\\\b)(?:\\\\\\\\s*(\\\\\\\\*))?(?:(?:\\\\\\\\s+|(?<=\\\\\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.function.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js.jsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.definition.function.js.jsx entity.name.function.js.jsx\\\"}},\\\"end\\\":\\\"(?=;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},\\\"function-expression\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(async)\\\\\\\\s+)?(function\\\\\\\\b)(?:\\\\\\\\s*(\\\\\\\\*))?(?:(?:\\\\\\\\s+|(?<=\\\\\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.definition.function.js.jsx entity.name.function.js.jsx\\\"}},\\\"end\\\":\\\"(?=;)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.expression.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},\\\"function-name\\\":{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.function.js.jsx entity.name.function.js.jsx\\\"},\\\"function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.js.jsx\\\"}},\\\"name\\\":\\\"meta.parameters.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters-body\\\"}]},\\\"function-parameters-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#destructuring-parameter\\\"},{\\\"include\\\":\\\"#parameter-name\\\"},{\\\"include\\\":\\\"#parameter-type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.js.jsx\\\"}]},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#object-identifiers\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.js.jsx\\\"}},\\\"match\\\":\\\"(?:(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.property.js.jsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.property.js.jsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"match\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\",\\\"name\\\":\\\"variable.other.constant.js.jsx\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.readwrite.js.jsx\\\"}]},\\\"if-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=\\\\\\\\bif\\\\\\\\s*(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))\\\\\\\\s*(?!\\\\\\\\{))\\\",\\\"end\\\":\\\"(?=;|$|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(if)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*\\\\\\\\/(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\])+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js.jsx\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.js.jsx\\\"}},\\\"name\\\":\\\"string.regexp.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"include\\\":\\\"#statements\\\"}]}]},\\\"import-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type)(?!\\\\\\\\s+from))?(?!\\\\\\\\s*[:\\\\\\\\(])(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.js.jsx\\\"}},\\\"end\\\":\\\"(?<!^import|[^\\\\\\\\._$[:alnum:]]import)(?=;|$|^)\\\",\\\"name\\\":\\\"meta.import.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"begin\\\":\\\"(?<=^import|[^\\\\\\\\._$[:alnum:]]import)(?!\\\\\\\\s*[\\\\\\\"'])\\\",\\\"end\\\":\\\"\\\\\\\\bfrom\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.from.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-declaration\\\"}]},{\\\"include\\\":\\\"#import-export-declaration\\\"}]},\\\"import-equals-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type))?\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(=)\\\\\\\\s*(require)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.js.jsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js.jsx\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.control.require.js.jsx\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"name\\\":\\\"meta.import-equals.external.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type))?\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(=)\\\\\\\\s*(?!require\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.js.jsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js.jsx\\\"}},\\\"end\\\":\\\"(?=;|$|^)\\\",\\\"name\\\":\\\"meta.import-equals.internal.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.other.readwrite.js.jsx\\\"}]}]},\\\"import-export-assert-clause\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(with)|(assert))\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.with.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.assert.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object-literal.key.js.jsx\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.js.jsx\\\"}]},\\\"import-export-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"name\\\":\\\"meta.block.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-clause\\\"}]},\\\"import-export-clause\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.type.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.default.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.import-export-all.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.readwrite.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.quoted.alias.js.jsx\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.control.as.js.jsx\\\"},\\\"13\\\":{\\\"name\\\":\\\"keyword.control.default.js.jsx\\\"},\\\"14\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.js.jsx\\\"},\\\"15\\\":{\\\"name\\\":\\\"string.quoted.alias.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(?:(\\\\\\\\btype)\\\\\\\\s+)?(?:(\\\\\\\\bdefault)|(\\\\\\\\*)|(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))))\\\\\\\\s+(as)\\\\\\\\s+(?:(default(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"constant.language.import-export-all.js.jsx\\\"},{\\\"match\\\":\\\"\\\\\\\\b(default)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.default.js.jsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.type.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.quoted.alias.js.jsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\btype)\\\\\\\\s+)?(?:([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))\\\"}]},\\\"import-export-declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#import-export-block\\\"},{\\\"match\\\":\\\"\\\\\\\\bfrom\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.from.js.jsx\\\"},{\\\"include\\\":\\\"#import-export-assert-clause\\\"},{\\\"include\\\":\\\"#import-export-clause\\\"}]},\\\"indexer-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)\\\\\\\\s*)?\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.square.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\\\\\\s*(\\\\\\\\?\\\\\\\\s*)?|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"}},\\\"name\\\":\\\"meta.indexer.declaration.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"}]},\\\"indexer-mapped-type-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))([+-])?(readonly)\\\\\\\\s*)?\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s+(in)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.square.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.expression.in.js.jsx\\\"}},\\\"end\\\":\\\"(\\\\\\\\])([+-])?\\\\\\\\s*(\\\\\\\\?\\\\\\\\s*)?|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.type.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"}},\\\"name\\\":\\\"meta.indexer.mappedtype.declaration.js.jsx\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"inline-tags\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.end.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)[^\\\\\\\\]]+(\\\\\\\\])(?={@(?:link|linkcode|linkplain|tutorial))\\\",\\\"name\\\":\\\"constant.other.description.jsdoc\\\"},{\\\"begin\\\":\\\"({)((@)(?:link(?:code|plain)?|tutorial))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.inline.tag.jsdoc\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?=https?://)(?:[^|}\\\\\\\\s*]|\\\\\\\\*[/])+)(\\\\\\\\|)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.description.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?:[^{}@\\\\\\\\s|*]|\\\\\\\\*[^/])+)(\\\\\\\\|)?\\\"}]}]},\\\"instanceof-expr\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(instanceof)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.expression.instanceof.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|(===|!==|==|!=)|(([\\\\\\\\&\\\\\\\\~\\\\\\\\^\\\\\\\\|]\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))function((\\\\\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\s*[\\\\\\\\(]))))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"interface-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(?:(abstract)\\\\\\\\s+)?\\\\\\\\b(interface)\\\\\\\\b(?=\\\\\\\\s+|/[/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.interface.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.interface.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.interface.js.jsx\\\"}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#class-or-interface-body\\\"}]},\\\"jsdoctype\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G({)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"end\\\":\\\"((}))\\\\\\\\s*|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"jsx\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag-without-attributes-in-expression\\\"},{\\\"include\\\":\\\"#jsx-tag-in-expression\\\"}]},\\\"jsx-children\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag-without-attributes\\\"},{\\\"include\\\":\\\"#jsx-tag\\\"},{\\\"include\\\":\\\"#jsx-evaluated-code\\\"},{\\\"include\\\":\\\"#jsx-entities\\\"}]},\\\"jsx-entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.js.jsx\\\"}},\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.js.jsx\\\"}]},\\\"jsx-evaluated-code\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.js.jsx\\\"}},\\\"contentName\\\":\\\"meta.embedded.expression.js.jsx\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"jsx-string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js.jsx\\\"}},\\\"name\\\":\\\"string.quoted.double.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-entities\\\"}]},\\\"jsx-string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js.jsx\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js.jsx\\\"}},\\\"name\\\":\\\"string.quoted.single.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-entities\\\"}]},\\\"jsx-tag\\\":{\\\"begin\\\":\\\"(?=(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>))\\\",\\\"end\\\":\\\"(/>)|(?:(</)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.tag.js.jsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.class.component.js.jsx\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js.jsx\\\"}},\\\"name\\\":\\\"meta.tag.js.jsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.class.component.js.jsx\\\"}},\\\"end\\\":\\\"(?=[/]?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#jsx-tag-attributes\\\"}]},{\\\"begin\\\":\\\"(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js.jsx\\\"}},\\\"contentName\\\":\\\"meta.jsx.children.js.jsx\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-children\\\"}]}]},\\\"jsx-tag-attribute-assignment\\\":{\\\"match\\\":\\\"=(?=\\\\\\\\s*(?:'|\\\\\\\"|{|/\\\\\\\\*|//|\\\\\\\\n))\\\",\\\"name\\\":\\\"keyword.operator.assignment.js.jsx\\\"},\\\"jsx-tag-attribute-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.namespace.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.attribute-name.js.jsx\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(:))?([_$[:alpha:]][-_$[:alnum:]]*)(?=\\\\\\\\s|=|/?>|/\\\\\\\\*|//)\\\"},\\\"jsx-tag-attributes\\\":{\\\"begin\\\":\\\"\\\\\\\\s+\\\",\\\"end\\\":\\\"(?=[/]?>)\\\",\\\"name\\\":\\\"meta.tag.attributes.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#jsx-tag-attribute-name\\\"},{\\\"include\\\":\\\"#jsx-tag-attribute-assignment\\\"},{\\\"include\\\":\\\"#jsx-string-double-quoted\\\"},{\\\"include\\\":\\\"#jsx-string-single-quoted\\\"},{\\\"include\\\":\\\"#jsx-evaluated-code\\\"},{\\\"include\\\":\\\"#jsx-tag-attributes-illegal\\\"}]},\\\"jsx-tag-attributes-illegal\\\":{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"invalid.illegal.attribute.js.jsx\\\"},\\\"jsx-tag-in-expression\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--)(?<=[({\\\\\\\\[,?=>:*]|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?|\\\\\\\\*\\\\\\\\/|^await|[^\\\\\\\\._$[:alnum:]]await|^return|[^\\\\\\\\._$[:alnum:]]return|^default|[^\\\\\\\\._$[:alnum:]]default|^yield|[^\\\\\\\\._$[:alnum:]]yield|^)\\\\\\\\s*(?!<\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*((\\\\\\\\s+extends\\\\\\\\s+[^=>])|,))(?=(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>))\\\",\\\"end\\\":\\\"(?!(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag\\\"}]},\\\"jsx-tag-without-attributes\\\":{\\\"begin\\\":\\\"(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.class.component.js.jsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js.jsx\\\"}},\\\"contentName\\\":\\\"meta.jsx.children.js.jsx\\\",\\\"end\\\":\\\"(</)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.class.component.js.jsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js.jsx\\\"}},\\\"name\\\":\\\"meta.tag.without-attributes.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-children\\\"}]},\\\"jsx-tag-without-attributes-in-expression\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--)(?<=[({\\\\\\\\[,?=>:*]|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?|\\\\\\\\*\\\\\\\\/|^await|[^\\\\\\\\._$[:alnum:]]await|^return|[^\\\\\\\\._$[:alnum:]]return|^default|[^\\\\\\\\._$[:alnum:]]default|^yield|[^\\\\\\\\._$[:alnum:]]yield|^)\\\\\\\\s*(?=(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>))\\\",\\\"end\\\":\\\"(?!(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag-without-attributes\\\"}]},\\\"label\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(:)(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.label.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#decl-block\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.label.js.jsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(:)\\\"}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#boolean-literal\\\"},{\\\"include\\\":\\\"#null-literal\\\"},{\\\"include\\\":\\\"#undefined-literal\\\"},{\\\"include\\\":\\\"#numericConstant-literal\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#this-literal\\\"},{\\\"include\\\":\\\"#super-literal\\\"}]},\\\"method-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?\\\\\\\\s*\\\\\\\\b(constructor)\\\\\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:(?:\\\\\\\\s*\\\\\\\\b(new)\\\\\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(?:(\\\\\\\\*)\\\\\\\\s*)?)(?=\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.new.js.jsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.property.js.jsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]}]},\\\"method-declaration-name\\\":{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??)\\\\\\\\s*[\\\\\\\\(\\\\\\\\<])\\\",\\\"end\\\":\\\"(?=\\\\\\\\(|\\\\\\\\<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.method.js.jsx entity.name.function.js.jsx\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"}]},\\\"namespace-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(namespace|module)\\\\\\\\s+(?=[_$[:alpha:]\\\\\\\"'`]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.namespace.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.namespace.declaration.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.type.module.js.jsx\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"new-expr\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(new)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))function((\\\\\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\s*[\\\\\\\\(]))))\\\",\\\"name\\\":\\\"new.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"null-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))null(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.null.js.jsx\\\"},\\\"numeric-literal\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js.jsx\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.hex.js.jsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js.jsx\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.binary.js.jsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js.jsx\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.octal.js.jsx\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.decimal.js.jsx\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js.jsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js.jsx\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js.jsx\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js.jsx\\\"},\\\"9\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js.jsx\\\"},\\\"10\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js.jsx\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js.jsx\\\"},\\\"12\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.js.jsx\\\"},\\\"13\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js.jsx\\\"},\\\"14\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.js.jsx\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)\\\"}]},\\\"numericConstant-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))NaN(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.nan.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Infinity(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.infinity.js.jsx\\\"}]},\\\"object-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#binding-element\\\"}]},{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-binding-element-const\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#binding-element-const\\\"}]},{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-binding-element-propertyName\\\":{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.destructuring.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.object.property.js.jsx\\\"}]},\\\"object-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element\\\"}]},\\\"object-binding-pattern-const\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-const\\\"}]},\\\"object-identifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*prototype\\\\\\\\b(?!\\\\\\\\$))\\\",\\\"name\\\":\\\"support.class.js.jsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.object.property.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.object.property.js.jsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(?:(\\\\\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.object.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.js.jsx\\\"}},\\\"match\\\":\\\"(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"}]},\\\"object-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"name\\\":\\\"meta.objectliteral.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-member\\\"}]},\\\"object-literal-method-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.property.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.property.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\(|\\\\\\\\<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"}]}]},\\\"object-member\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#object-literal-method-declaration\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\]])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<]))\\\",\\\"name\\\":\\\"meta.object.member.js.jsx meta.object-literal.key.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#array-literal\\\"}]},{\\\"begin\\\":\\\"(?=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=((\\\\\\\\s*[\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\s+(as|satisifies)\\\\\\\\s+))))\\\",\\\"name\\\":\\\"meta.object.member.js.jsx meta.object-literal.key.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?=(\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)))\\\",\\\"end\\\":\\\"(?=:)|(?=\\\\\\\\s*([\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\s+as|satisifies\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.js.jsx meta.object-literal.key.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"}]},{\\\"begin\\\":\\\"(?<=[\\\\\\\\]\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<])\\\",\\\"end\\\":\\\"(?=\\\\\\\\}|;|,)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.js.jsx\\\"},\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.js.jsx\\\"}},\\\"match\\\":\\\"(?![_$[:alpha:]])([[:digit:]]+)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.js.jsx\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.js.jsx\\\"},\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.js.jsx\\\"}},\\\"match\\\":\\\"(?:([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:(\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/)*\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"name\\\":\\\"meta.object.member.js.jsx\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.js.jsx\\\"}},\\\"match\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.js.jsx\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.js.jsx\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.object.member.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.js.jsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.js.jsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+(const)(?=\\\\\\\\s*([,}]|$))\\\",\\\"name\\\":\\\"meta.object.member.js.jsx\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(as)|(satisfies))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.satisfies.js.jsx\\\"}},\\\"end\\\":\\\"(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|^|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as|satisifies)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?=[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=)\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.js.jsx punctuation.separator.key-value.js.jsx\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.object.member.js.jsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?(?=\\\\\\\\s*(<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)\\\\\\\\(\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]}]},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?\\\\\\\\s*(\\\\\\\\()(?=\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?\\\\\\\\s*(?=\\\\\\\\<\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\>)\\\\\\\\s*(\\\\\\\\()(?=\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"parameter-array-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"parameter-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#parameter-object-binding-pattern\\\"},{\\\"include\\\":\\\"#parameter-array-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-parameter-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"parameter-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|protected|private|readonly)\\\\\\\\s+(?=(override|public|protected|private|readonly)\\\\\\\\s+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.js.jsx variable.language.this.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx variable.language.this.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)\\\"}]},\\\"parameter-object-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},{\\\"include\\\":\\\"#parameter-object-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-parameter-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"parameter-object-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-object-binding-element\\\"}]},\\\"parameter-type-annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js.jsx\\\"}},\\\"end\\\":\\\"(?=[,)])|(?==[^>])\\\",\\\"name\\\":\\\"meta.type.annotation.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"paren-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"paren-expression-possibly-arrow\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(=,])\\\\\\\\s*(async)?(?=\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?\\\\\\\\(\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression-possibly-arrow-with-typeparameters\\\"}]},{\\\"begin\\\":\\\"(?<=[(=,]|=>|^return|[^\\\\\\\\._$[:alnum:]]return)\\\\\\\\s*(async)?(?=\\\\\\\\s*((((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?\\\\\\\\()|(<)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)))\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression-possibly-arrow-with-typeparameters\\\"}]},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"}]},\\\"paren-expression-possibly-arrow-with-typeparameters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]}]},\\\"possibly-arrow-return-type\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\)|^)\\\\\\\\s*(:)(?=\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*=>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.arrow.js.jsx meta.return.type.arrow.js.jsx keyword.operator.type.annotation.js.jsx\\\"}},\\\"contentName\\\":\\\"meta.arrow.js.jsx meta.return.type.arrow.js.jsx\\\",\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrow-return-type-body\\\"}]},\\\"property-accessor\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(accessor|get|set)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.type.property.js.jsx\\\"},\\\"punctuation-accessor\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},\\\"punctuation-comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.js.jsx\\\"},\\\"punctuation-semicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.js.jsx\\\"},\\\"qstring-double\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js.jsx\\\"}},\\\"end\\\":\\\"(\\\\\\\")|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.js.jsx\\\"}},\\\"name\\\":\\\"string.quoted.double.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"qstring-single\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js.jsx\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.js.jsx\\\"}},\\\"name\\\":\\\"string.quoted.single.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"regex\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--|})(?<=[=(:,\\\\\\\\[?+!]|^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case|=>|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\*\\\\\\\\/)\\\\\\\\s*(\\\\\\\\/)(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[\\\\\\\\()]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\]|\\\\\\\\(([^\\\\\\\\)\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\))+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js.jsx\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.js.jsx\\\"}},\\\"name\\\":\\\"string.regexp.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"((?<![_$[:alnum:])\\\\\\\\]]|\\\\\\\\+\\\\\\\\+|--|}|\\\\\\\\*\\\\\\\\/)|((?<=^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case))\\\\\\\\s*)\\\\\\\\/(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\])+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.js.jsx\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.js.jsx\\\"}},\\\"name\\\":\\\"string.regexp.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]}]},\\\"regex-character-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[wWsSdDtrnvf]|\\\\\\\\.\\\",\\\"name\\\":\\\"constant.other.character-class.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})\\\",\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c[A-Z]\\\",\\\"name\\\":\\\"constant.character.control.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[bB]|\\\\\\\\^|\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.control.anchor.regexp\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d*|\\\\\\\\\\\\\\\\k<([a-zA-Z_$][\\\\\\\\w$]*)>\\\"},{\\\"match\\\":\\\"[?+*]|\\\\\\\\{(\\\\\\\\d+,\\\\\\\\d+|\\\\\\\\d+,|,\\\\\\\\d+|\\\\\\\\d+)\\\\\\\\}\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.or.regexp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()((\\\\\\\\?=)|(\\\\\\\\?!)|(\\\\\\\\?<=)|(\\\\\\\\?<!))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.assertion.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.assertion.look-ahead.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-ahead.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.assertion.look-behind.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-behind.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.assertion.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\((?:(\\\\\\\\?:)|(?:\\\\\\\\?<([a-zA-Z_$][\\\\\\\\w$]*)>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.no-capture.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.regexp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(?:.|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\\\\\\-(?:[^\\\\\\\\]\\\\\\\\\\\\\\\\]|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.other.character-class.range.regexp\\\"},{\\\"include\\\":\\\"#regex-character-class\\\"}]},{\\\"include\\\":\\\"#regex-character-class\\\"}]},\\\"return-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js.jsx\\\"}},\\\"end\\\":\\\"(?<![:|&])(?=$|^|[{};,]|//)\\\",\\\"name\\\":\\\"meta.return.type.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#return-type-core\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js.jsx\\\"}},\\\"end\\\":\\\"(?<![:|&])((?=[{};,]|//|^\\\\\\\\s*$)|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.return.type.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#return-type-core\\\"}]}]},\\\"return-type-core\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<=[:|&])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"shebang\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js.jsx\\\"}},\\\"match\\\":\\\"\\\\\\\\A(#!).*(?=$)\\\",\\\"name\\\":\\\"comment.line.shebang.js.jsx\\\"},\\\"single-line-comment-consuming-line-ending\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.js.jsx\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.js.jsx\\\",\\\"end\\\":\\\"(?=^)\\\"},\\\"statements\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration\\\"},{\\\"include\\\":\\\"#control-statement\\\"},{\\\"include\\\":\\\"#after-operator-block-as-object-literal\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#label\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-single\\\"},{\\\"include\\\":\\\"#qstring-double\\\"},{\\\"include\\\":\\\"#template\\\"}]},\\\"string-character-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\\\\\{[0-9A-Fa-f]+\\\\\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)\\\",\\\"name\\\":\\\"constant.character.escape.js.jsx\\\"},\\\"super-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))super\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.super.js.jsx\\\"},\\\"support-function-call-identifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#support-objects\\\"},{\\\"include\\\":\\\"#object-identifiers\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))import(?=\\\\\\\\s*[\\\\\\\\(]\\\\\\\\s*[\\\\\\\\\\\\\\\"\\\\\\\\'\\\\\\\\`]))\\\",\\\"name\\\":\\\"keyword.operator.expression.import.js.jsx\\\"}]},\\\"support-objects\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(arguments)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.arguments.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(Promise)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"support.class.promise.js.jsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.variable.property.importmeta.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(import)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(meta)\\\\\\\\b(?!\\\\\\\\$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.variable.property.target.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(new)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(target)\\\\\\\\b(?!\\\\\\\\$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.variable.property.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.constant.js.jsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(?:(?:(constructor|length|prototype|__proto__)\\\\\\\\b(?!\\\\\\\\$|\\\\\\\\s*(<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\\\\\b(?!\\\\\\\\$)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.object.module.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.object.module.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.type.object.module.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(exports)|(module)(?:(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))(exports|id|filename|loaded|parent|children))?)\\\\\\\\b(?!\\\\\\\\$)\\\"}]},\\\"switch-statement\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=\\\\\\\\bswitch\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"name\\\":\\\"switch-statement.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(switch)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"name\\\":\\\"switch-expression.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"name\\\":\\\"switch-block.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(case|default(?=:))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.js.jsx\\\"}},\\\"end\\\":\\\"(?=:)\\\",\\\"name\\\":\\\"case-clause.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(:)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"case-clause.expr.js.jsx punctuation.definition.section.case-statement.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.block.js.jsx punctuation.definition.block.js.jsx\\\"}},\\\"contentName\\\":\\\"meta.block.js.jsx\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.block.js.jsx punctuation.definition.block.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"case-clause.expr.js.jsx punctuation.definition.section.case-statement.js.jsx\\\"}},\\\"match\\\":\\\"(:)\\\"},{\\\"include\\\":\\\"#statements\\\"}]}]},\\\"template\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-call\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.template.js.jsx punctuation.definition.string.template.begin.js.jsx\\\"}},\\\"contentName\\\":\\\"string.template.js.jsx\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.template.js.jsx punctuation.definition.string.template.end.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"template-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*)(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?`)\\\",\\\"end\\\":\\\"(?=`)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#support-function-call-identifiers\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.function.tagged-template.js.jsx\\\"}]},{\\\"include\\\":\\\"#type-arguments\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?\\\\\\\\s*(?=(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.js.jsx\\\"}},\\\"end\\\":\\\"(?=`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"}]}]},\\\"template-substitution-element\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.js.jsx\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.js.jsx\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.js.jsx\\\"}},\\\"name\\\":\\\"meta.template.expression.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"template-type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-call\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.template.js.jsx punctuation.definition.string.template.begin.js.jsx\\\"}},\\\"contentName\\\":\\\"string.template.js.jsx\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.template.js.jsx punctuation.definition.string.template.end.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template-type-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"template-type-substitution-element\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.js.jsx\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.js.jsx\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.js.jsx\\\"}},\\\"name\\\":\\\"meta.template.expression.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"ternary-expression\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\?\\\\\\\\.\\\\\\\\s*[^[:digit:]])(\\\\\\\\?)(?!\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"this-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))this\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.this.js.jsx\\\"},\\\"type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#type-builtin-literals\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#type-tuple\\\"},{\\\"include\\\":\\\"#type-object\\\"},{\\\"include\\\":\\\"#type-operators\\\"},{\\\"include\\\":\\\"#type-conditional\\\"},{\\\"include\\\":\\\"#type-fn-type-parameters\\\"},{\\\"include\\\":\\\"#type-paren-or-function-parameters\\\"},{\\\"include\\\":\\\"#type-function-return-type\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\"},{\\\"include\\\":\\\"#type-name\\\"}]},\\\"type-alias-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(type)\\\\\\\\b\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.type.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.alias.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.type.declaration.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"(=)\\\\\\\\s*(intrinsic)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.intrinsic.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js.jsx\\\"}},\\\"end\\\":\\\"(?<![:|&])(?!\\\\\\\\s*[|&]\\\\\\\\s+)((?=^|[,);\\\\\\\\}\\\\\\\\]]|//)|(?==[^>])|((?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"meta.type.annotation.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.js.jsx\\\"}},\\\"end\\\":\\\"(?<![:|&])((?=[,);\\\\\\\\}\\\\\\\\]]|\\\\\\\\/\\\\\\\\/)|(?==[^>])|(?=^\\\\\\\\s*$)|((?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"meta.type.annotation.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-arguments\\\":{\\\"begin\\\":\\\"\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.js.jsx\\\"}},\\\"name\\\":\\\"meta.type.parameters.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},\\\"type-arguments-body\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(_)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-builtin-literals\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(this|true|false|undefined|null|object)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"support.type.builtin.js.jsx\\\"},\\\"type-conditional\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"}},\\\"end\\\":\\\"(?<=:)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.js.jsx\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-fn-type-parameters\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(new)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.constructor.js.jsx storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.type.constructor.js.jsx keyword.control.new.js.jsx\\\"}},\\\"end\\\":\\\"(?<=>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(new)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.new.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.constructor.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},{\\\"begin\\\":\\\"((?=[(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>))))))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.function.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]}]},\\\"type-function-return-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(=>)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.arrow.js.jsx\\\"}},\\\"end\\\":\\\"(?<!=>)(?<![|&])(?=[,\\\\\\\\]\\\\\\\\)\\\\\\\\{\\\\\\\\}=;>:\\\\\\\\?]|//|$)\\\",\\\"name\\\":\\\"meta.type.function.return.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-function-return-type-core\\\"}]},{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.arrow.js.jsx\\\"}},\\\"end\\\":\\\"(?<!=>)(?<![|&])((?=[,\\\\\\\\]\\\\\\\\)\\\\\\\\{\\\\\\\\}=;:\\\\\\\\?>]|//|^\\\\\\\\s*$)|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.type.function.return.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-function-return-type-core\\\"}]}]},\\\"type-function-return-type-core\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<==>)(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-infer\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.expression.infer.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.expression.extends.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(infer)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?:\\\\\\\\s+(extends)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))?\\\",\\\"name\\\":\\\"meta.type.infer.js.jsx\\\"}]},\\\"type-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(<)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.type.parameters.js.jsx punctuation.definition.typeparameters.begin.js.jsx\\\"}},\\\"contentName\\\":\\\"meta.type.parameters.js.jsx\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.parameters.js.jsx punctuation.definition.typeparameters.end.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.type.parameters.js.jsx punctuation.definition.typeparameters.begin.js.jsx\\\"}},\\\"contentName\\\":\\\"meta.type.parameters.js.jsx\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.parameters.js.jsx punctuation.definition.typeparameters.end.js.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.js.jsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.type.js.jsx\\\"}]},\\\"type-object\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.js.jsx\\\"}},\\\"name\\\":\\\"meta.object.type.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#indexer-mapped-type-declaration\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-operators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typeof-operator\\\"},{\\\"include\\\":\\\"#type-infer\\\"},{\\\"begin\\\":\\\"([&|])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.js.jsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"begin\\\":\\\"[&|]\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))keyof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.keyof.js.jsx\\\"},{\\\"match\\\":\\\"(\\\\\\\\?|\\\\\\\\:)\\\",\\\"name\\\":\\\"keyword.operator.ternary.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))import(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.import.js.jsx\\\"}]},\\\"type-parameters\\\":{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.js.jsx\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.js.jsx\\\"}},\\\"name\\\":\\\"meta.type.parameters.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends|in|out|const)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"match\\\":\\\"(=)(?!>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.js.jsx\\\"}]},\\\"type-paren-or-function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.js.jsx\\\"}},\\\"name\\\":\\\"meta.type.paren.cover.js.jsx\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.js.jsx variable.language.this.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx variable.language.this.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s*(\\\\\\\\??)(?=:)\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.js.jsx\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-predicate-operator\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.asserts.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx variable.language.this.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.expression.is.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(asserts)\\\\\\\\s+)?(?!asserts)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s(is)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.asserts.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx variable.language.this.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(asserts)\\\\\\\\s+(?!is)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))asserts(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.type.asserts.js.jsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))is(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.is.js.jsx\\\"}]},\\\"type-primitive\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"support.type.primitive.js.jsx\\\"},\\\"type-string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-single\\\"},{\\\"include\\\":\\\"#qstring-double\\\"},{\\\"include\\\":\\\"#template-type\\\"}]},\\\"type-tuple\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.js.jsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.js.jsx\\\"}},\\\"name\\\":\\\"meta.type.tuple.js.jsx\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.rest.js.jsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.label.js.jsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(\\\\\\\\?)?\\\\\\\\s*(:)\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"typeof-operator\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))typeof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.expression.typeof.js.jsx\\\"}},\\\"end\\\":\\\"(?=[,);}\\\\\\\\]=>:&|{\\\\\\\\?]|(extends\\\\\\\\s+)|$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"undefined-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))undefined(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.undefined.js.jsx\\\"},\\\"var-expr\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^let|[^\\\\\\\\._$[:alnum:]]let|^var|[^\\\\\\\\._$[:alnum:]]var)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#destructuring-variable\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=$|\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.js.jsx\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#destructuring-variable\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.js.jsx\\\"}},\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^const|[^\\\\\\\\._$[:alnum:]]const)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#destructuring-const\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=$|\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.js.jsx\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#destructuring-const\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.js.jsx\\\"}},\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^using|[^\\\\\\\\._$[:alnum:]]using|^await\\\\\\\\s+using|[^\\\\\\\\._$[:alnum:]]await\\\\\\\\s+using)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.js.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.js.jsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*((?!\\\\\\\\S)|(?=\\\\\\\\/\\\\\\\\/))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.js.jsx\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"var-single-const\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.js.jsx variable.other.constant.js.jsx entity.name.function.js.jsx\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.js.jsx variable.other.constant.js.jsx\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]}]},\\\"var-single-variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\!)?(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.js.jsx entity.name.function.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.js.jsx\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])(\\\\\\\\!)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.js.jsx variable.other.constant.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.js.jsx\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\!)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.js.jsx variable.other.readwrite.js.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.js.jsx\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]}]},\\\"var-single-variable-type-annotation\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"variable-initializer\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)(?=\\\\\\\\s*\\\\\\\\S)(?!\\\\\\\\s*.*=>\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js.jsx\\\"}},\\\"end\\\":\\\"(?=$|^|[,);}\\\\\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.js.jsx\\\"}},\\\"end\\\":\\\"(?=[,);}\\\\\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))|(?=^\\\\\\\\s*$)|(?<![\\\\\\\\|\\\\\\\\&\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/])(?<=\\\\\\\\S)(?<!=)(?=\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]}},\\\"scopeName\\\":\\\"source.js.jsx\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"TSX\\\",\\\"name\\\":\\\"tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#directives\\\"},{\\\"include\\\":\\\"#statements\\\"},{\\\"include\\\":\\\"#shebang\\\"}],\\\"repository\\\":{\\\"access-modifier\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"after-operator-block-as-object-literal\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--)(?<=[:=(,\\\\\\\\[?+!>]|^await|[^\\\\\\\\._$[:alnum:]]await|^return|[^\\\\\\\\._$[:alnum:]]return|^yield|[^\\\\\\\\._$[:alnum:]]yield|^throw|[^\\\\\\\\._$[:alnum:]]throw|^in|[^\\\\\\\\._$[:alnum:]]in|^of|[^\\\\\\\\._$[:alnum:]]of|^typeof|[^\\\\\\\\._$[:alnum:]]typeof|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\*)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"name\\\":\\\"meta.objectliteral.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-member\\\"}]},\\\"array-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"array-binding-pattern-const\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#binding-element-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"array-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.tsx\\\"}},\\\"name\\\":\\\"meta.array.literal.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"arrow-function\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.tsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(\\\\\\\\basync)\\\\\\\\s+)?([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?==>)\\\",\\\"name\\\":\\\"meta.arrow.tsx\\\"},{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(\\\\\\\\basync))?((?<![})!\\\\\\\\]])\\\\\\\\s*(?=((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"}},\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.arrow.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#function-parameters\\\"},{\\\"include\\\":\\\"#arrow-return-type\\\"},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"}]},{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.arrow.tsx\\\"}},\\\"end\\\":\\\"((?<=\\\\\\\\}|\\\\\\\\S)(?<!=>)|((?!\\\\\\\\{)(?=\\\\\\\\S)))(?!\\\\\\\\/[\\\\\\\\/\\\\\\\\*])\\\",\\\"name\\\":\\\"meta.arrow.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"arrow-return-type\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.tsx\\\"}},\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.return.type.arrow.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrow-return-type-body\\\"}]},\\\"arrow-return-type-body\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[:])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"async-modifier\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(async)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.async.tsx\\\"},\\\"binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#array-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"binding-element-const\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#array-binding-pattern-const\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"boolean-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))true(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.true.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))false(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.false.tsx\\\"}]},\\\"brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"cast\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx\\\"}]},\\\"class-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(?:(abstract)\\\\\\\\s+)?\\\\\\\\b(class)\\\\\\\\b(?=\\\\\\\\s+|/[/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.class.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.class.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-declaration-or-expression-patterns\\\"}]},\\\"class-declaration-or-expression-patterns\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.class.tsx\\\"}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#class-or-interface-body\\\"}]},\\\"class-expression\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(class)\\\\\\\\b(?=\\\\\\\\s+|[<{]|\\\\\\\\/[\\\\\\\\/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.class.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-declaration-or-expression-patterns\\\"}]},\\\"class-or-interface-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*\\\",\\\"end\\\":\\\"(?=\\\\\\\\s|[;),}\\\\\\\\]:\\\\\\\\-\\\\\\\\+]|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#access-modifier\\\"},{\\\"include\\\":\\\"#property-accessor\\\"},{\\\"include\\\":\\\"#async-modifier\\\"},{\\\"include\\\":\\\"#after-operator-block-as-object-literal\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"class-or-interface-heritage\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(extends|implements)\\\\\\\\b)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))(?=\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*)*\\\\\\\\s*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.tsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tsx\\\"}},\\\"name\\\":\\\"comment.block.documentation.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docblock\\\"}]},{\\\"begin\\\":\\\"(/\\\\\\\\*)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|(\\\\\\\\*/)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tsx\\\"}},\\\"name\\\":\\\"comment.block.tsx\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.tsx\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.tsx\\\",\\\"end\\\":\\\"(?=$)\\\"}]},\\\"control-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#switch-statement\\\"},{\\\"include\\\":\\\"#for-loop\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(catch|finally|throw|try)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.trycatch.tsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.loop.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.label.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(break|continue|goto)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(break|continue|do|goto|while)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.loop.tsx\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(return)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.tsx\\\"}},\\\"end\\\":\\\"(?=[;}]|$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(case|default|switch)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.switch.tsx\\\"},{\\\"include\\\":\\\"#if-statement\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(else|if)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.conditional.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(with)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.with.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(package)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(debugger)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.other.debugger.tsx\\\"}]},\\\"decl-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"name\\\":\\\"meta.block.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}]},\\\"declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#function-declaration\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#enum-declaration\\\"},{\\\"include\\\":\\\"#namespace-declaration\\\"},{\\\"include\\\":\\\"#type-alias-declaration\\\"},{\\\"include\\\":\\\"#import-equals-declaration\\\"},{\\\"include\\\":\\\"#import-declaration\\\"},{\\\"include\\\":\\\"#export-declaration\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(declare|export)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.tsx\\\"}]},\\\"decorator\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))\\\\\\\\@\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.decorator.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.decorator.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"destructuring-const\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object-binding-pattern-variable.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.array-binding-pattern-variable.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array-binding-pattern-const\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"destructuring-parameter\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:)\\\\\\\\s*(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.tsx\\\"}},\\\"name\\\":\\\"meta.parameter.object-binding-pattern.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-object-binding-element\\\"}]},{\\\"begin\\\":\\\"(?<!=|:)\\\\\\\\s*(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.tsx\\\"}},\\\"name\\\":\\\"meta.paramter.array-binding-pattern.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"destructuring-parameter-rest\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.tsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"destructuring-variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object-binding-pattern-variable.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?<!=|:|^of|[^\\\\\\\\._$[:alnum:]]of|^in|[^\\\\\\\\._$[:alnum:]]in)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.array-binding-pattern-variable.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array-binding-pattern\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"destructuring-variable-rest\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.tsx variable.other.readwrite.tsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"destructuring-variable-rest-const\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.definition.variable.tsx variable.other.constant.tsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)\\\"},\\\"directives\\\":{\\\"begin\\\":\\\"^(///)\\\\\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\\\\\s*=\\\\\\\\s*((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))+\\\\\\\\s*/>\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tsx\\\"}},\\\"end\\\":\\\"(?=$)\\\",\\\"name\\\":\\\"comment.line.triple-slash.directive.tsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)(reference|amd-dependency|amd-module)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.directive.tsx\\\"}},\\\"end\\\":\\\"/>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.tsx\\\"}},\\\"name\\\":\\\"meta.tag.tsx\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"path|types|no-default-lib|lib|name|resolution-mode\\\",\\\"name\\\":\\\"entity.other.attribute-name.directive.tsx\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.tsx\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"docblock\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.access-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:access|api))\\\\\\\\s+(private|protected|public)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.other.email.link.underline.jsdoc\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"match\\\":\\\"((@)author)\\\\\\\\s+([^@\\\\\\\\s<>*/](?:[^@<>*/]|\\\\\\\\*[^/])*)(?:\\\\\\\\s*(<)([^>\\\\\\\\s]+)(>))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.control.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)borrows)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\\\\\\s+(as)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)example)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=@|\\\\\\\\*/)\\\",\\\"name\\\":\\\"meta.example.jsdoc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\s\\\\\\\\*\\\\\\\\s+\\\"},{\\\"begin\\\":\\\"\\\\\\\\G(<)caption(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"contentName\\\":\\\"constant.other.description.jsdoc\\\",\\\"end\\\":\\\"(</)caption(>)|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"source.embedded.tsx\\\"}},\\\"match\\\":\\\"[^\\\\\\\\s@*](?:[^*]|\\\\\\\\*[^/])*\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.symbol-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)kind)\\\\\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)see)\\\\\\\\s+(?:((?=https?://)(?:[^\\\\\\\\s*]|\\\\\\\\*[^/])+)|((?!https?://|(?:\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\\\\\b)(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)template)\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*(?:\\\\\\\\s*,\\\\\\\\s*[A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)*)\\\"},{\\\"begin\\\":\\\"((@)template)\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\"},{\\\"begin\\\":\\\"((@)typedef)\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+\\\",\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.begin.bracket.square.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"source.embedded.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.end.bracket.square.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.syntax.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)\\\\\\\\s*[\\\\\\\\w$]+(?:(?:\\\\\\\\[\\\\\\\\])?\\\\\\\\.[\\\\\\\\w$]+)*(?:\\\\\\\\s*(=)\\\\\\\\s*((?>\\\\\\\"(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!\\\\\\\"))|[^*\\\\\\\\\\\\\\\\])*?\\\\\\\"|'(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!'))|[^*\\\\\\\\\\\\\\\\])*?'|\\\\\\\\[(?:(?:\\\\\\\\*(?!/))|[^*])*?\\\\\\\\]|(?:(?:\\\\\\\\*(?!/))|\\\\\\\\s(?!\\\\\\\\s*\\\\\\\\])|\\\\\\\\[.*?(?:\\\\\\\\]|(?=\\\\\\\\*/))|[^*\\\\\\\\s\\\\\\\\[\\\\\\\\]])*)*))?\\\\\\\\s*(?:(\\\\\\\\])((?:[^*\\\\\\\\s]|\\\\\\\\*[^\\\\\\\\s/])+)?|(?=\\\\\\\\*/))\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\\\\\s+((?:[^{}@\\\\\\\\s*]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)(?:default(?:value)?|license|version))\\\\\\\\s+(([''\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"variable.other.jsdoc\\\",\\\"end\\\":\\\"(\\\\\\\\3)|(?=$|\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\\\\\s+([^\\\\\\\\s*]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},{\\\"include\\\":\\\"#inline-tags\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s+)\\\"}]},\\\"enum-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?(?:\\\\\\\\b(const)\\\\\\\\s+)?\\\\\\\\b(enum)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.enum.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.enum.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.enum.declaration.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.enummember.tsx\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"begin\\\":\\\"(?=((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\])))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"export-declaration\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.as.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.namespace.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.module.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)\\\\\\\\s+(as)\\\\\\\\s+(namespace)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)(?:\\\\\\\\s+(type))?(?:(?:\\\\\\\\s*(=))|(?:\\\\\\\\s+(default)(?=\\\\\\\\s+)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.type.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.default.tsx\\\"}},\\\"end\\\":\\\"(?=$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.export.default.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface-declaration\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(export)(?:\\\\\\\\s+(type))?\\\\\\\\b(?!(\\\\\\\\$)|(\\\\\\\\s*:))((?=\\\\\\\\s*[\\\\\\\\{*])|((?=\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\\\\\s|,))(?!\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.type.tsx\\\"}},\\\"end\\\":\\\"(?=$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.export.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-declaration\\\"}]}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"expression-inside-possibly-arrow-parens\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#destructuring-parameter\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|protected|private|readonly)\\\\\\\\s+(?=(override|public|protected|private|readonly)\\\\\\\\s+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.tsx variable.language.this.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.tsx variable.language.this.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*[:,]|$)\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.tsx\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"expression-operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(await)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.flow.tsx\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?=\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?:\\\\\\\\s*(\\\\\\\\*))?\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))delete(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.delete.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))in(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.in.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))of(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.of.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))instanceof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.instanceof.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.new.tsx\\\"},{\\\"include\\\":\\\"#typeof-operator\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))void(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.void.tsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+(const)(?=\\\\\\\\s*($|[;,:})\\\\\\\\]]))\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(as)|(satisfies))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.satisfies.tsx\\\"}},\\\"end\\\":\\\"(?=^|[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as|satisfies)\\\\\\\\s+)|(\\\\\\\\s+\\\\\\\\<))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.spread.tsx\\\"},{\\\"match\\\":\\\"\\\\\\\\*=|(?<!\\\\\\\\()/=|%=|\\\\\\\\+=|\\\\\\\\-=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.tsx\\\"},{\\\"match\\\":\\\"\\\\\\\\&=|\\\\\\\\^=|<<=|>>=|>>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.tsx\\\"},{\\\"match\\\":\\\"<<|>>>|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.tsx\\\"},{\\\"match\\\":\\\"===|!==|==|!=\\\",\\\"name\\\":\\\"keyword.operator.comparison.tsx\\\"},{\\\"match\\\":\\\"<=|>=|<>|<|>\\\",\\\"name\\\":\\\"keyword.operator.relational.tsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.tsx\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:]])(\\\\\\\\!)\\\\\\\\s*(?:(/=)|(?:(/)(?![/*])))\\\"},{\\\"match\\\":\\\"\\\\\\\\!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.logical.tsx\\\"},{\\\"match\\\":\\\"\\\\\\\\&|~|\\\\\\\\^|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.tsx\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.tsx\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.tsx\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.tsx\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.tsx\\\"},{\\\"begin\\\":\\\"(?<=[_$[:alnum:])\\\\\\\\]])\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))\\\",\\\"end\\\":\\\"(?:(/=)|(?:(/)(?!\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.compound.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.tsx\\\"}},\\\"match\\\":\\\"(?<=[_$[:alnum:])\\\\\\\\]])\\\\\\\\s*(?:(/=)|(?:(/)(?![/*])))\\\"}]},\\\"expressionPunctuations\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"expressionWithoutIdentifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-expression\\\"},{\\\"include\\\":\\\"#class-expression\\\"},{\\\"include\\\":\\\"#arrow-function\\\"},{\\\"include\\\":\\\"#paren-expression-possibly-arrow\\\"},{\\\"include\\\":\\\"#cast\\\"},{\\\"include\\\":\\\"#ternary-expression\\\"},{\\\"include\\\":\\\"#new-expr\\\"},{\\\"include\\\":\\\"#instanceof-expr\\\"},{\\\"include\\\":\\\"#object-literal\\\"},{\\\"include\\\":\\\"#expression-operators\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#support-objects\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},\\\"field-declaration\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\()(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)\\\\\\\\s+)?(?=\\\\\\\\s*((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(?:(?:(\\\\\\\\?)|(\\\\\\\\!))\\\\\\\\s*)?(=|:|;|,|\\\\\\\\}|$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$|(^(?!\\\\\\\\s*((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(?:(?:(\\\\\\\\?)|(\\\\\\\\!))\\\\\\\\s*)?(=|:|;|,|$))))|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.field.declaration.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.property.tsx entity.name.function.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.tsx\\\"}},\\\"match\\\":\\\"(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)(?:(\\\\\\\\?)|(\\\\\\\\!))?(?=\\\\\\\\s*\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"match\\\":\\\"\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.property.tsx variable.object.property.tsx\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"keyword.operator.definiteassignment.tsx\\\"}]},\\\"for-loop\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))for(?=((\\\\\\\\s+|(\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*))await)?\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)?(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.loop.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"await\\\",\\\"name\\\":\\\"keyword.control.loop.tsx\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#var-expr\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]}]},\\\"function-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#function-parameters\\\"},{\\\"include\\\":\\\"#return-type\\\"},{\\\"include\\\":\\\"#type-function-return-type\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.generator.asterisk.tsx\\\"}]},\\\"function-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(?:(\\\\\\\\?\\\\\\\\.\\\\\\\\s*)|(\\\\\\\\!))?((<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?\\\\\\\\())\\\",\\\"name\\\":\\\"meta.function-call.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-target\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-call-optionals\\\"},{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},{\\\"begin\\\":\\\"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\\\\\)]))(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=(<\\\\\\\\s*[\\\\\\\\{\\\\\\\\[\\\\\\\\(]\\\\\\\\s*$))\\\",\\\"name\\\":\\\"meta.function-call.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-target\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-call-optionals\\\"},{\\\"include\\\":\\\"#type-arguments\\\"}]}]},\\\"function-call-optionals\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\.\\\",\\\"name\\\":\\\"meta.function-call.tsx punctuation.accessor.optional.tsx\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"meta.function-call.tsx keyword.operator.definiteassignment.tsx\\\"}]},\\\"function-call-target\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support-function-call-identifiers\\\"},{\\\"match\\\":\\\"(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.function.tsx\\\"}]},\\\"function-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?(?:(async)\\\\\\\\s+)?(function\\\\\\\\b)(?:\\\\\\\\s*(\\\\\\\\*))?(?:(?:\\\\\\\\s+|(?<=\\\\\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.function.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.tsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.definition.function.tsx entity.name.function.tsx\\\"}},\\\"end\\\":\\\"(?=;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},\\\"function-expression\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(async)\\\\\\\\s+)?(function\\\\\\\\b)(?:\\\\\\\\s*(\\\\\\\\*))?(?:(?:\\\\\\\\s+|(?<=\\\\\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.definition.function.tsx entity.name.function.tsx\\\"}},\\\"end\\\":\\\"(?=;)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.expression.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},\\\"function-name\\\":{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.function.tsx entity.name.function.tsx\\\"},\\\"function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.tsx\\\"}},\\\"name\\\":\\\"meta.parameters.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters-body\\\"}]},\\\"function-parameters-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#destructuring-parameter\\\"},{\\\"include\\\":\\\"#parameter-name\\\"},{\\\"include\\\":\\\"#parameter-type-annotation\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.tsx\\\"}]},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#object-identifiers\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.tsx\\\"}},\\\"match\\\":\\\"(?:(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.property.tsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.property.tsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"match\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\",\\\"name\\\":\\\"variable.other.constant.tsx\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.readwrite.tsx\\\"}]},\\\"if-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=\\\\\\\\bif\\\\\\\\s*(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))\\\\\\\\s*(?!\\\\\\\\{))\\\",\\\"end\\\":\\\"(?=;|$|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(if)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*\\\\\\\\/(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\])+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.tsx\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.tsx\\\"}},\\\"name\\\":\\\"string.regexp.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"include\\\":\\\"#statements\\\"}]}]},\\\"import-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type)(?!\\\\\\\\s+from))?(?!\\\\\\\\s*[:\\\\\\\\(])(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.tsx\\\"}},\\\"end\\\":\\\"(?<!^import|[^\\\\\\\\._$[:alnum:]]import)(?=;|$|^)\\\",\\\"name\\\":\\\"meta.import.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"begin\\\":\\\"(?<=^import|[^\\\\\\\\._$[:alnum:]]import)(?!\\\\\\\\s*[\\\\\\\"'])\\\",\\\"end\\\":\\\"\\\\\\\\bfrom\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.from.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-declaration\\\"}]},{\\\"include\\\":\\\"#import-export-declaration\\\"}]},\\\"import-equals-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type))?\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(=)\\\\\\\\s*(require)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.tsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.tsx\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.control.require.tsx\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"name\\\":\\\"meta.import-equals.external.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(import)(?:\\\\\\\\s+(type))?\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(=)\\\\\\\\s*(?!require\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.type.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.tsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.tsx\\\"}},\\\"end\\\":\\\"(?=;|$|^)\\\",\\\"name\\\":\\\"meta.import-equals.internal.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.other.readwrite.tsx\\\"}]}]},\\\"import-export-assert-clause\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(with)|(assert))\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.with.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.assert.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object-literal.key.tsx\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.tsx\\\"}]},\\\"import-export-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"name\\\":\\\"meta.block.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import-export-clause\\\"}]},\\\"import-export-clause\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.type.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.default.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.import-export-all.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.readwrite.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.quoted.alias.tsx\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.control.as.tsx\\\"},\\\"13\\\":{\\\"name\\\":\\\"keyword.control.default.tsx\\\"},\\\"14\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.tsx\\\"},\\\"15\\\":{\\\"name\\\":\\\"string.quoted.alias.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(?:(\\\\\\\\btype)\\\\\\\\s+)?(?:(\\\\\\\\bdefault)|(\\\\\\\\*)|(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))))\\\\\\\\s+(as)\\\\\\\\s+(?:(default(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"constant.language.import-export-all.tsx\\\"},{\\\"match\\\":\\\"\\\\\\\\b(default)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.default.tsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.type.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.alias.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.quoted.alias.tsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\btype)\\\\\\\\s+)?(?:([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))\\\"}]},\\\"import-export-declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#import-export-block\\\"},{\\\"match\\\":\\\"\\\\\\\\bfrom\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.from.tsx\\\"},{\\\"include\\\":\\\"#import-export-assert-clause\\\"},{\\\"include\\\":\\\"#import-export-clause\\\"}]},\\\"indexer-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)\\\\\\\\s*)?\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.square.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.tsx\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\\\\\\s*(\\\\\\\\?\\\\\\\\s*)?|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"}},\\\"name\\\":\\\"meta.indexer.declaration.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"}]},\\\"indexer-mapped-type-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))([+-])?(readonly)\\\\\\\\s*)?\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s+(in)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.square.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.expression.in.tsx\\\"}},\\\"end\\\":\\\"(\\\\\\\\])([+-])?\\\\\\\\s*(\\\\\\\\?\\\\\\\\s*)?|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.type.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"}},\\\"name\\\":\\\"meta.indexer.mappedtype.declaration.tsx\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"inline-tags\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.end.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)[^\\\\\\\\]]+(\\\\\\\\])(?={@(?:link|linkcode|linkplain|tutorial))\\\",\\\"name\\\":\\\"constant.other.description.jsdoc\\\"},{\\\"begin\\\":\\\"({)((@)(?:link(?:code|plain)?|tutorial))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.inline.tag.jsdoc\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?=https?://)(?:[^|}\\\\\\\\s*]|\\\\\\\\*[/])+)(\\\\\\\\|)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.description.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?:[^{}@\\\\\\\\s|*]|\\\\\\\\*[^/])+)(\\\\\\\\|)?\\\"}]}]},\\\"instanceof-expr\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(instanceof)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.expression.instanceof.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|(===|!==|==|!=)|(([\\\\\\\\&\\\\\\\\~\\\\\\\\^\\\\\\\\|]\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))function((\\\\\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\s*[\\\\\\\\(]))))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"interface-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(?:(abstract)\\\\\\\\s+)?\\\\\\\\b(interface)\\\\\\\\b(?=\\\\\\\\s+|/[/*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.interface.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.interface.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#class-or-interface-heritage\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.interface.tsx\\\"}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#class-or-interface-body\\\"}]},\\\"jsdoctype\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G({)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"end\\\":\\\"((}))\\\\\\\\s*|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"jsx\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag-without-attributes-in-expression\\\"},{\\\"include\\\":\\\"#jsx-tag-in-expression\\\"}]},\\\"jsx-children\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag-without-attributes\\\"},{\\\"include\\\":\\\"#jsx-tag\\\"},{\\\"include\\\":\\\"#jsx-evaluated-code\\\"},{\\\"include\\\":\\\"#jsx-entities\\\"}]},\\\"jsx-entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.tsx\\\"}},\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.tsx\\\"}]},\\\"jsx-evaluated-code\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.tsx\\\"}},\\\"contentName\\\":\\\"meta.embedded.expression.tsx\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"jsx-string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.tsx\\\"}},\\\"name\\\":\\\"string.quoted.double.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-entities\\\"}]},\\\"jsx-string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.tsx\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.tsx\\\"}},\\\"name\\\":\\\"string.quoted.single.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-entities\\\"}]},\\\"jsx-tag\\\":{\\\"begin\\\":\\\"(?=(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>))\\\",\\\"end\\\":\\\"(/>)|(?:(</)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.tag.tsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.class.component.tsx\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.tsx\\\"}},\\\"name\\\":\\\"meta.tag.tsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.class.component.tsx\\\"}},\\\"end\\\":\\\"(?=[/]?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#jsx-tag-attributes\\\"}]},{\\\"begin\\\":\\\"(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.tsx\\\"}},\\\"contentName\\\":\\\"meta.jsx.children.tsx\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-children\\\"}]}]},\\\"jsx-tag-attribute-assignment\\\":{\\\"match\\\":\\\"=(?=\\\\\\\\s*(?:'|\\\\\\\"|{|/\\\\\\\\*|//|\\\\\\\\n))\\\",\\\"name\\\":\\\"keyword.operator.assignment.tsx\\\"},\\\"jsx-tag-attribute-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.namespace.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.attribute-name.tsx\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(:))?([_$[:alpha:]][-_$[:alnum:]]*)(?=\\\\\\\\s|=|/?>|/\\\\\\\\*|//)\\\"},\\\"jsx-tag-attributes\\\":{\\\"begin\\\":\\\"\\\\\\\\s+\\\",\\\"end\\\":\\\"(?=[/]?>)\\\",\\\"name\\\":\\\"meta.tag.attributes.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#jsx-tag-attribute-name\\\"},{\\\"include\\\":\\\"#jsx-tag-attribute-assignment\\\"},{\\\"include\\\":\\\"#jsx-string-double-quoted\\\"},{\\\"include\\\":\\\"#jsx-string-single-quoted\\\"},{\\\"include\\\":\\\"#jsx-evaluated-code\\\"},{\\\"include\\\":\\\"#jsx-tag-attributes-illegal\\\"}]},\\\"jsx-tag-attributes-illegal\\\":{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"invalid.illegal.attribute.tsx\\\"},\\\"jsx-tag-in-expression\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--)(?<=[({\\\\\\\\[,?=>:*]|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?|\\\\\\\\*\\\\\\\\/|^await|[^\\\\\\\\._$[:alnum:]]await|^return|[^\\\\\\\\._$[:alnum:]]return|^default|[^\\\\\\\\._$[:alnum:]]default|^yield|[^\\\\\\\\._$[:alnum:]]yield|^)\\\\\\\\s*(?!<\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*((\\\\\\\\s+extends\\\\\\\\s+[^=>])|,))(?=(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>))\\\",\\\"end\\\":\\\"(?!(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))(?=((<\\\\\\\\s*)|(\\\\\\\\s+))(?!\\\\\\\\?)|\\\\\\\\/?>))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag\\\"}]},\\\"jsx-tag-without-attributes\\\":{\\\"begin\\\":\\\"(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.class.component.tsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.tsx\\\"}},\\\"contentName\\\":\\\"meta.jsx.children.tsx\\\",\\\"end\\\":\\\"(</)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.class.component.tsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.tsx\\\"}},\\\"name\\\":\\\"meta.tag.without-attributes.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-children\\\"}]},\\\"jsx-tag-without-attributes-in-expression\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--)(?<=[({\\\\\\\\[,?=>:*]|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?|\\\\\\\\*\\\\\\\\/|^await|[^\\\\\\\\._$[:alnum:]]await|^return|[^\\\\\\\\._$[:alnum:]]return|^default|[^\\\\\\\\._$[:alnum:]]default|^yield|[^\\\\\\\\._$[:alnum:]]yield|^)\\\\\\\\s*(?=(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>))\\\",\\\"end\\\":\\\"(?!(<)\\\\\\\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\\\\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\\\\\\\.|-))?\\\\\\\\s*(>))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsx-tag-without-attributes\\\"}]},\\\"label\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(:)(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.label.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#decl-block\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.label.tsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(:)\\\"}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#boolean-literal\\\"},{\\\"include\\\":\\\"#null-literal\\\"},{\\\"include\\\":\\\"#undefined-literal\\\"},{\\\"include\\\":\\\"#numericConstant-literal\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#this-literal\\\"},{\\\"include\\\":\\\"#super-literal\\\"}]},\\\"method-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?\\\\\\\\s*\\\\\\\\b(constructor)\\\\\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:(?:\\\\\\\\s*\\\\\\\\b(new)\\\\\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(?:(\\\\\\\\*)\\\\\\\\s*)?)(?=\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.new.tsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(override)\\\\\\\\s+)?(?:\\\\\\\\b(public|private|protected)\\\\\\\\s+)?(?:\\\\\\\\b(abstract)\\\\\\\\s+)?(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.property.tsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"}]}]},\\\"method-declaration-name\\\":{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??)\\\\\\\\s*[\\\\\\\\(\\\\\\\\<])\\\",\\\"end\\\":\\\"(?=\\\\\\\\(|\\\\\\\\<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"meta.definition.method.tsx entity.name.function.tsx\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"}]},\\\"namespace-declaration\\\":{\\\"begin\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(namespace|module)\\\\\\\\s+(?=[_$[:alpha:]\\\\\\\"'`]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.namespace.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.namespace.declaration.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.type.module.tsx\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"new-expr\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(new)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))function((\\\\\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\s*[\\\\\\\\(]))))\\\",\\\"name\\\":\\\"new.expr.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"null-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))null(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.null.tsx\\\"},\\\"numeric-literal\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.tsx\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.hex.tsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.tsx\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.binary.tsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.tsx\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.octal.tsx\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.decimal.tsx\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.tsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.tsx\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.tsx\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.tsx\\\"},\\\"9\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.tsx\\\"},\\\"10\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.tsx\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.tsx\\\"},\\\"12\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.tsx\\\"},\\\"13\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.tsx\\\"},\\\"14\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.tsx\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)\\\"}]},\\\"numericConstant-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))NaN(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.nan.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Infinity(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.infinity.tsx\\\"}]},\\\"object-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#binding-element\\\"}]},{\\\"include\\\":\\\"#object-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-binding-element-const\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#binding-element-const\\\"}]},{\\\"include\\\":\\\"#object-binding-pattern-const\\\"},{\\\"include\\\":\\\"#destructuring-variable-rest-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-binding-element-propertyName\\\":{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.destructuring.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"variable.object.property.tsx\\\"}]},\\\"object-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element\\\"}]},\\\"object-binding-pattern-const\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-const\\\"}]},\\\"object-identifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*prototype\\\\\\\\b(?!\\\\\\\\$))\\\",\\\"name\\\":\\\"support.class.tsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.object.property.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.object.property.tsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(?:(\\\\\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)|(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.object.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.object.tsx\\\"}},\\\"match\\\":\\\"(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*)\\\"}]},\\\"object-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"name\\\":\\\"meta.objectliteral.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-member\\\"}]},\\\"object-literal-method-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.property.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"},{\\\"include\\\":\\\"#function-body\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:\\\\\\\\b(async)\\\\\\\\s+)?(?:\\\\\\\\b(get|set)\\\\\\\\s+)?(?:(\\\\\\\\*)\\\\\\\\s*)?(?=\\\\\\\\s*(((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(\\\\\\\\??))\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?[\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.property.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.generator.asterisk.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\(|\\\\\\\\<)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-declaration-name\\\"}]}]},\\\"object-member\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#object-literal-method-declaration\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\]])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<]))\\\",\\\"name\\\":\\\"meta.object.member.tsx meta.object-literal.key.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#array-literal\\\"}]},{\\\"begin\\\":\\\"(?=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])\\\",\\\"end\\\":\\\"(?=:)|((?<=[\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=((\\\\\\\\s*[\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\s+(as|satisifies)\\\\\\\\s+))))\\\",\\\"name\\\":\\\"meta.object.member.tsx meta.object-literal.key.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"(?=(\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)))\\\",\\\"end\\\":\\\"(?=:)|(?=\\\\\\\\s*([\\\\\\\\(\\\\\\\\<,}])|(\\\\\\\\s+as|satisifies\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.tsx meta.object-literal.key.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"}]},{\\\"begin\\\":\\\"(?<=[\\\\\\\\]\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`])(?=\\\\\\\\s*[\\\\\\\\(\\\\\\\\<])\\\",\\\"end\\\":\\\"(?=\\\\\\\\}|;|,)|(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.method.declaration.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-body\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.tsx\\\"},\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.tsx\\\"}},\\\"match\\\":\\\"(?![_$[:alpha:]])([[:digit:]]+)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.tsx\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.tsx\\\"},\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tsx\\\"}},\\\"match\\\":\\\"(?:([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:(\\\\\\\\s*\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/)*\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"name\\\":\\\"meta.object.member.tsx\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.tsx\\\"}},\\\"match\\\":\\\"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*:)\\\",\\\"name\\\":\\\"meta.object.member.tsx\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.tsx\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.object.member.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.readwrite.tsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.tsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as)\\\\\\\\s+(const)(?=\\\\\\\\s*([,}]|$))\\\",\\\"name\\\":\\\"meta.object.member.tsx\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(as)|(satisfies))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.satisfies.tsx\\\"}},\\\"end\\\":\\\"(?=[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>]|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!\\\\\\\\=\\\\\\\\=|$|^|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(as|satisifies)\\\\\\\\s+))\\\",\\\"name\\\":\\\"meta.object.member.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?=[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=)\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\}|$|\\\\\\\\/\\\\\\\\/|\\\\\\\\/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.object.member.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object-literal.key.tsx punctuation.separator.key-value.tsx\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.object.member.tsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?(?=\\\\\\\\s*(<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)\\\\\\\\(\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]}]},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?\\\\\\\\s*(\\\\\\\\()(?=\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]},{\\\"begin\\\":\\\"(?<=:)\\\\\\\\s*(async)?\\\\\\\\s*(?=\\\\\\\\<\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\>)\\\\\\\\s*(\\\\\\\\()(?=\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#decl-block\\\"}]},\\\"parameter-array-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.array.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"parameter-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#parameter-object-binding-pattern\\\"},{\\\"include\\\":\\\"#parameter-array-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-parameter-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"}]},\\\"parameter-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|protected|private|readonly)\\\\\\\\s+(?=(override|public|protected|private|readonly)\\\\\\\\s+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.tsx variable.language.this.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.tsx variable.language.this.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(override|public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*(\\\\\\\\??)\\\"}]},\\\"parameter-object-binding-element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?=((\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|(\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$))|((?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])+\\\\\\\\]))\\\\\\\\s*(:))\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-binding-element-propertyName\\\"},{\\\"include\\\":\\\"#parameter-binding-element\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},{\\\"include\\\":\\\"#parameter-object-binding-pattern\\\"},{\\\"include\\\":\\\"#destructuring-parameter-rest\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"parameter-object-binding-pattern\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.binding-pattern.object.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-object-binding-element\\\"}]},\\\"parameter-type-annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.tsx\\\"}},\\\"end\\\":\\\"(?=[,)])|(?==[^>])\\\",\\\"name\\\":\\\"meta.type.annotation.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"paren-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"paren-expression-possibly-arrow\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(=,])\\\\\\\\s*(async)?(?=\\\\\\\\s*((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?\\\\\\\\(\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression-possibly-arrow-with-typeparameters\\\"}]},{\\\"begin\\\":\\\"(?<=[(=,]|=>|^return|[^\\\\\\\\._$[:alnum:]]return)\\\\\\\\s*(async)?(?=\\\\\\\\s*((((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*))?\\\\\\\\()|(<)|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)))\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression-possibly-arrow-with-typeparameters\\\"}]},{\\\"include\\\":\\\"#possibly-arrow-return-type\\\"}]},\\\"paren-expression-possibly-arrow-with-typeparameters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-inside-possibly-arrow-parens\\\"}]}]},\\\"possibly-arrow-return-type\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\)|^)\\\\\\\\s*(:)(?=\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*=>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.arrow.tsx meta.return.type.arrow.tsx keyword.operator.type.annotation.tsx\\\"}},\\\"contentName\\\":\\\"meta.arrow.tsx meta.return.type.arrow.tsx\\\",\\\"end\\\":\\\"(?==>|\\\\\\\\{|(^\\\\\\\\s*(export|function|class|interface|let|var|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\\\\\s+))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrow-return-type-body\\\"}]},\\\"property-accessor\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(accessor|get|set)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.type.property.tsx\\\"},\\\"punctuation-accessor\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},\\\"punctuation-comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.tsx\\\"},\\\"punctuation-semicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.tsx\\\"},\\\"qstring-double\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.tsx\\\"}},\\\"end\\\":\\\"(\\\\\\\")|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.tsx\\\"}},\\\"name\\\":\\\"string.quoted.double.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"qstring-single\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.tsx\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.tsx\\\"}},\\\"name\\\":\\\"string.quoted.single.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"regex\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--|})(?<=[=(:,\\\\\\\\[?+!]|^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case|=>|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\*\\\\\\\\/)\\\\\\\\s*(\\\\\\\\/)(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[\\\\\\\\()]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\]|\\\\\\\\(([^\\\\\\\\)\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\))+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.tsx\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.tsx\\\"}},\\\"name\\\":\\\"string.regexp.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"((?<![_$[:alnum:])\\\\\\\\]]|\\\\\\\\+\\\\\\\\+|--|}|\\\\\\\\*\\\\\\\\/)|((?<=^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case))\\\\\\\\s*)\\\\\\\\/(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\])+\\\\\\\\/([dgimsuvy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.tsx\\\"}},\\\"end\\\":\\\"(/)([dgimsuvy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.tsx\\\"}},\\\"name\\\":\\\"string.regexp.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]}]},\\\"regex-character-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[wWsSdDtrnvf]|\\\\\\\\.\\\",\\\"name\\\":\\\"constant.other.character-class.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})\\\",\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c[A-Z]\\\",\\\"name\\\":\\\"constant.character.control.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[bB]|\\\\\\\\^|\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.control.anchor.regexp\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d*|\\\\\\\\\\\\\\\\k<([a-zA-Z_$][\\\\\\\\w$]*)>\\\"},{\\\"match\\\":\\\"[?+*]|\\\\\\\\{(\\\\\\\\d+,\\\\\\\\d+|\\\\\\\\d+,|,\\\\\\\\d+|\\\\\\\\d+)\\\\\\\\}\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.or.regexp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()((\\\\\\\\?=)|(\\\\\\\\?!)|(\\\\\\\\?<=)|(\\\\\\\\?<!))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.assertion.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.assertion.look-ahead.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-ahead.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.assertion.look-behind.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-behind.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.assertion.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\((?:(\\\\\\\\?:)|(?:\\\\\\\\?<([a-zA-Z_$][\\\\\\\\w$]*)>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.no-capture.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.regexp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(?:.|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\\\\\\-(?:[^\\\\\\\\]\\\\\\\\\\\\\\\\]|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.other.character-class.range.regexp\\\"},{\\\"include\\\":\\\"#regex-character-class\\\"}]},{\\\"include\\\":\\\"#regex-character-class\\\"}]},\\\"return-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.tsx\\\"}},\\\"end\\\":\\\"(?<![:|&])(?=$|^|[{};,]|//)\\\",\\\"name\\\":\\\"meta.return.type.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#return-type-core\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.tsx\\\"}},\\\"end\\\":\\\"(?<![:|&])((?=[{};,]|//|^\\\\\\\\s*$)|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.return.type.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#return-type-core\\\"}]}]},\\\"return-type-core\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<=[:|&])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"shebang\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tsx\\\"}},\\\"match\\\":\\\"\\\\\\\\A(#!).*(?=$)\\\",\\\"name\\\":\\\"comment.line.shebang.tsx\\\"},\\\"single-line-comment-consuming-line-ending\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.tsx\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.tsx\\\",\\\"end\\\":\\\"(?=^)\\\"},\\\"statements\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration\\\"},{\\\"include\\\":\\\"#control-statement\\\"},{\\\"include\\\":\\\"#after-operator-block-as-object-literal\\\"},{\\\"include\\\":\\\"#decl-block\\\"},{\\\"include\\\":\\\"#label\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-single\\\"},{\\\"include\\\":\\\"#qstring-double\\\"},{\\\"include\\\":\\\"#template\\\"}]},\\\"string-character-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\\\\\{[0-9A-Fa-f]+\\\\\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)\\\",\\\"name\\\":\\\"constant.character.escape.tsx\\\"},\\\"super-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))super\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.super.tsx\\\"},\\\"support-function-call-identifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#support-objects\\\"},{\\\"include\\\":\\\"#object-identifiers\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))import(?=\\\\\\\\s*[\\\\\\\\(]\\\\\\\\s*[\\\\\\\\\\\\\\\"\\\\\\\\'\\\\\\\\`]))\\\",\\\"name\\\":\\\"keyword.operator.expression.import.tsx\\\"}]},\\\"support-objects\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(arguments)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.arguments.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(Promise)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"support.class.promise.tsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.variable.property.importmeta.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(import)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(meta)\\\\\\\\b(?!\\\\\\\\$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.variable.property.target.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(new)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(target)\\\\\\\\b(?!\\\\\\\\$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.variable.property.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.constant.tsx\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(?:(?:(constructor|length|prototype|__proto__)\\\\\\\\b(?!\\\\\\\\$|\\\\\\\\s*(<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\\\\\b(?!\\\\\\\\$)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.object.module.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.object.module.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.type.object.module.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(exports)|(module)(?:(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))(exports|id|filename|loaded|parent|children))?)\\\\\\\\b(?!\\\\\\\\$)\\\"}]},\\\"switch-statement\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?=\\\\\\\\bswitch\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"name\\\":\\\"switch-statement.expr.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(switch)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"name\\\":\\\"switch-expression.expr.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"name\\\":\\\"switch-block.expr.tsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(case|default(?=:))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.tsx\\\"}},\\\"end\\\":\\\"(?=:)\\\",\\\"name\\\":\\\"case-clause.expr.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(:)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"case-clause.expr.tsx punctuation.definition.section.case-statement.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.block.tsx punctuation.definition.block.tsx\\\"}},\\\"contentName\\\":\\\"meta.block.tsx\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.block.tsx punctuation.definition.block.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"case-clause.expr.tsx punctuation.definition.section.case-statement.tsx\\\"}},\\\"match\\\":\\\"(:)\\\"},{\\\"include\\\":\\\"#statements\\\"}]}]},\\\"template\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-call\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.template.tsx punctuation.definition.string.template.begin.tsx\\\"}},\\\"contentName\\\":\\\"string.template.tsx\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.template.tsx punctuation.definition.string.template.end.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"template-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*)(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?`)\\\",\\\"end\\\":\\\"(?=`)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))\\\",\\\"end\\\":\\\"(?=(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)?`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#support-function-call-identifiers\\\"},{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"entity.name.function.tagged-template.tsx\\\"}]},{\\\"include\\\":\\\"#type-arguments\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?\\\\\\\\s*(?=(<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))(([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>|\\\\\\\\<\\\\\\\\s*(((keyof|infer|typeof|readonly)\\\\\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))(?=\\\\\\\\s*([\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\.\\\\\\\\[]|=>|&(?!&)|\\\\\\\\|(?!\\\\\\\\|)))))([^<>\\\\\\\\(]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(?<==)\\\\\\\\>)*(?<!=)\\\\\\\\>))*(?<!=)\\\\\\\\>)*(?<!=)>\\\\\\\\s*)`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.tsx\\\"}},\\\"end\\\":\\\"(?=`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"}]}]},\\\"template-substitution-element\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.tsx\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.tsx\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.tsx\\\"}},\\\"name\\\":\\\"meta.template.expression.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"template-type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-call\\\"},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.template.tsx punctuation.definition.string.template.begin.tsx\\\"}},\\\"contentName\\\":\\\"string.template.tsx\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.template.tsx punctuation.definition.string.template.end.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#template-type-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"template-type-substitution-element\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.tsx\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.tsx\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.tsx\\\"}},\\\"name\\\":\\\"meta.template.expression.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"ternary-expression\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\?\\\\\\\\.\\\\\\\\s*[^[:digit:]])(\\\\\\\\?)(?!\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"this-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))this\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.this.tsx\\\"},\\\"type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-string\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#type-builtin-literals\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#type-tuple\\\"},{\\\"include\\\":\\\"#type-object\\\"},{\\\"include\\\":\\\"#type-operators\\\"},{\\\"include\\\":\\\"#type-conditional\\\"},{\\\"include\\\":\\\"#type-fn-type-parameters\\\"},{\\\"include\\\":\\\"#type-paren-or-function-parameters\\\"},{\\\"include\\\":\\\"#type-function-return-type\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(readonly)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\"},{\\\"include\\\":\\\"#type-name\\\"}]},\\\"type-alias-declaration\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(type)\\\\\\\\b\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.type.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.alias.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.type.declaration.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"begin\\\":\\\"(=)\\\\\\\\s*(intrinsic)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.intrinsic.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.tsx\\\"}},\\\"end\\\":\\\"(?<![:|&])(?!\\\\\\\\s*[|&]\\\\\\\\s+)((?=^|[,);\\\\\\\\}\\\\\\\\]]|//)|(?==[^>])|((?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"meta.type.annotation.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.tsx\\\"}},\\\"end\\\":\\\"(?<![:|&])((?=[,);\\\\\\\\}\\\\\\\\]]|\\\\\\\\/\\\\\\\\/)|(?==[^>])|(?=^\\\\\\\\s*$)|((?<=[\\\\\\\\}>\\\\\\\\]\\\\\\\\)]|[_$[:alpha:]])\\\\\\\\s*(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"meta.type.annotation.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-arguments\\\":{\\\"begin\\\":\\\"\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.tsx\\\"}},\\\"name\\\":\\\"meta.type.parameters.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},\\\"type-arguments-body\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(_)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-builtin-literals\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(this|true|false|undefined|null|object)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"support.type.builtin.tsx\\\"},\\\"type-conditional\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"}},\\\"end\\\":\\\"(?<=:)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.tsx\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#type\\\"}]}]},\\\"type-fn-type-parameters\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(new)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.constructor.tsx storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.type.constructor.tsx keyword.control.new.tsx\\\"}},\\\"end\\\":\\\"(?<=>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type-parameters\\\"}]},{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(abstract)\\\\\\\\s+)?(new)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.new.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.constructor.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},{\\\"begin\\\":\\\"((?=[(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>))))))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.type.function.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]}]},\\\"type-function-return-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(=>)(?=\\\\\\\\s*\\\\\\\\S)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.arrow.tsx\\\"}},\\\"end\\\":\\\"(?<!=>)(?<![|&])(?=[,\\\\\\\\]\\\\\\\\)\\\\\\\\{\\\\\\\\}=;>:\\\\\\\\?]|//|$)\\\",\\\"name\\\":\\\"meta.type.function.return.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-function-return-type-core\\\"}]},{\\\"begin\\\":\\\"=>\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.arrow.tsx\\\"}},\\\"end\\\":\\\"(?<!=>)(?<![|&])((?=[,\\\\\\\\]\\\\\\\\)\\\\\\\\{\\\\\\\\}=;:\\\\\\\\?>]|//|^\\\\\\\\s*$)|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.type.function.return.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-function-return-type-core\\\"}]}]},\\\"type-function-return-type-core\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<==>)(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"include\\\":\\\"#type-predicate-operator\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-infer\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.expression.infer.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.expression.extends.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(infer)\\\\\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))(?:\\\\\\\\s+(extends)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))?\\\",\\\"name\\\":\\\"meta.type.infer.tsx\\\"}]},\\\"type-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\\\\\\s*(<)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.type.parameters.tsx punctuation.definition.typeparameters.begin.tsx\\\"}},\\\"contentName\\\":\\\"meta.type.parameters.tsx\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.parameters.tsx punctuation.definition.typeparameters.end.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.type.parameters.tsx punctuation.definition.typeparameters.begin.tsx\\\"}},\\\"contentName\\\":\\\"meta.type.parameters.tsx\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.parameters.tsx punctuation.definition.typeparameters.end.tsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments-body\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.module.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.tsx\\\"}},\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(?:(\\\\\\\\.)|(\\\\\\\\?\\\\\\\\.(?!\\\\\\\\s*[[:digit:]])))\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.type.tsx\\\"}]},\\\"type-object\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tsx\\\"}},\\\"name\\\":\\\"meta.object.type.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#method-declaration\\\"},{\\\"include\\\":\\\"#indexer-declaration\\\"},{\\\"include\\\":\\\"#indexer-mapped-type-declaration\\\"},{\\\"include\\\":\\\"#field-declaration\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;|,|$)|(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-operators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typeof-operator\\\"},{\\\"include\\\":\\\"#type-infer\\\"},{\\\"begin\\\":\\\"([&|])(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.tsx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-object\\\"}]},{\\\"begin\\\":\\\"[&|]\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))keyof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.keyof.tsx\\\"},{\\\"match\\\":\\\"(\\\\\\\\?|\\\\\\\\:)\\\",\\\"name\\\":\\\"keyword.operator.ternary.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))import(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.operator.expression.import.tsx\\\"}]},\\\"type-parameters\\\":{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.tsx\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.tsx\\\"}},\\\"name\\\":\\\"meta.type.parameters.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends|in|out|const)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.tsx\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"match\\\":\\\"(=)(?!>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.tsx\\\"}]},\\\"type-paren-or-function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.tsx\\\"}},\\\"name\\\":\\\"meta.type.paren.cover.tsx\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.tsx variable.language.this.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s*(\\\\\\\\??)(?=\\\\\\\\s*(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.tsx variable.language.this.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.tsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"}},\\\"match\\\":\\\"(?:(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(public|private|protected|readonly)\\\\\\\\s+)?(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s*(\\\\\\\\??)(?=:)\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameter.tsx\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-predicate-operator\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.asserts.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.tsx variable.language.this.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.tsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.expression.is.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(asserts)\\\\\\\\s+)?(?!asserts)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\\\\\s(is)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.asserts.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.tsx variable.language.this.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(asserts)\\\\\\\\s+(?!is)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))asserts(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.type.asserts.tsx\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))is(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.expression.is.tsx\\\"}]},\\\"type-primitive\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"support.type.primitive.tsx\\\"},\\\"type-string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-single\\\"},{\\\"include\\\":\\\"#qstring-double\\\"},{\\\"include\\\":\\\"#template-type\\\"}]},\\\"type-tuple\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.tsx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.tsx\\\"}},\\\"name\\\":\\\"meta.type.tuple.tsx\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.rest.tsx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.label.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.optional.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.label.tsx\\\"}},\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*(\\\\\\\\?)?\\\\\\\\s*(:)\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"typeof-operator\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))typeof(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.expression.typeof.tsx\\\"}},\\\"end\\\":\\\"(?=[,);}\\\\\\\\]=>:&|{\\\\\\\\?]|(extends\\\\\\\\s+)|$|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"undefined-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))undefined(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.undefined.tsx\\\"},\\\"var-expr\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^let|[^\\\\\\\\._$[:alnum:]]let|^var|[^\\\\\\\\._$[:alnum:]]var)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.tsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#destructuring-variable\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=$|\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.tsx\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#destructuring-variable\\\"},{\\\"include\\\":\\\"#var-single-variable\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.tsx\\\"}},\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^const|[^\\\\\\\\._$[:alnum:]]const)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.tsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b(const(?!\\\\\\\\s+enum\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#destructuring-const\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=$|\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.tsx\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#destructuring-const\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"begin\\\":\\\"(?=(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.tsx\\\"}},\\\"end\\\":\\\"(?!(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))((?=;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b))|((?<!^using|[^\\\\\\\\._$[:alnum:]]using|^await\\\\\\\\s+using|[^\\\\\\\\._$[:alnum:]]await\\\\\\\\s+using)(?=\\\\\\\\s*$)))\\\",\\\"name\\\":\\\"meta.var.expr.tsx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(?:(\\\\\\\\bexport)\\\\\\\\s+)?(?:(\\\\\\\\bdeclare)\\\\\\\\s+)?\\\\\\\\b((?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b))(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.tsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.tsx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#variable-initializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(,)\\\\\\\\s*((?!\\\\\\\\S)|(?=\\\\\\\\/\\\\\\\\/))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.comma.tsx\\\"}},\\\"end\\\":\\\"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|^\\\\\\\\s*$))|((?<=\\\\\\\\S)(?=\\\\\\\\s*$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#var-single-const\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},{\\\"include\\\":\\\"#punctuation-comma\\\"}]}]},\\\"var-single-const\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.tsx variable.other.constant.tsx entity.name.function.tsx\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.tsx variable.other.constant.tsx\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]}]},\\\"var-single-variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\!)?(?=\\\\\\\\s*(=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>)))))|(:\\\\\\\\s*((<)|([(]\\\\\\\\s*(([)])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|([_$[:alnum:]]+\\\\\\\\s*(([:,?=])|([)]\\\\\\\\s*=>)))))))|(:\\\\\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.)))|(:\\\\\\\\s*((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))))))|(:\\\\\\\\s*(=>|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\\\\\s*(((async\\\\\\\\s+)?((function\\\\\\\\s*[(<*])|(function\\\\\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*=>)))|((async\\\\\\\\s*)?(((<\\\\\\\\s*$)|([\\\\\\\\(]\\\\\\\\s*((([\\\\\\\\{\\\\\\\\[]\\\\\\\\s*)?$)|((\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\{?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*)))|((\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])\\\\\\\\s*((:\\\\\\\\s*\\\\\\\\[?$)|((\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+\\\\\\\\s*)?=\\\\\\\\s*))))))|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?[(]\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([)]\\\\\\\\s*:)|((\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s*:)))|([<]\\\\\\\\s*[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\s+extends\\\\\\\\s*[^=>])|((<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<]|\\\\\\\\<\\\\\\\\s*(((const\\\\\\\\s+)?[_$[:alpha:]])|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\]))([^=<>]|=[^<])*\\\\\\\\>)*\\\\\\\\>)*>\\\\\\\\s*)?\\\\\\\\(\\\\\\\\s*(\\\\\\\\/\\\\\\\\*([^\\\\\\\\*]|(\\\\\\\\*[^\\\\\\\\/]))*\\\\\\\\*\\\\\\\\/\\\\\\\\s*)*(([_$[:alpha:]]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|(\\\\\\\\{([^\\\\\\\\{\\\\\\\\}]|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]*\\\\\\\\})*\\\\\\\\}))*\\\\\\\\})|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|(\\\\\\\\[([^\\\\\\\\[\\\\\\\\]]|\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])*\\\\\\\\]))*\\\\\\\\])|(\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\\\\\\s*[_$[:alpha:]]))([^()\\\\\\\\'\\\\\\\\\\\\\\\"\\\\\\\\`]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|(\\\\\\\\(([^\\\\\\\\(\\\\\\\\)]|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\))*\\\\\\\\)))*\\\\\\\\))|(\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`))*)?\\\\\\\\)(\\\\\\\\s*:\\\\\\\\s*([^<>\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]|\\\\\\\\<([^<>]|\\\\\\\\<([^<>]|\\\\\\\\<[^<>]+\\\\\\\\>)+\\\\\\\\>)+\\\\\\\\>|\\\\\\\\([^\\\\\\\\(\\\\\\\\)]+\\\\\\\\)|\\\\\\\\{[^\\\\\\\\{\\\\\\\\}]+\\\\\\\\})+)?\\\\\\\\s*=>))))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.tsx entity.name.function.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.tsx\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])(\\\\\\\\!)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.tsx variable.other.constant.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.tsx\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*)(\\\\\\\\!)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.tsx variable.other.readwrite.tsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.definiteassignment.tsx\\\"}},\\\"end\\\":\\\"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+)|(;|^\\\\\\\\s*$|(?:^\\\\\\\\s*(?:abstract|async|(?:\\\\\\\\bawait\\\\\\\\s+(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)\\\\\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\\\\\busing(?=\\\\\\\\s+(?!in\\\\\\\\b|of\\\\\\\\b(?!\\\\\\\\s*(?:of\\\\\\\\b|=)))[_$[:alpha:]])\\\\\\\\b)|var|while)\\\\\\\\b)))\\\",\\\"name\\\":\\\"meta.var-single-variable.expr.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#var-single-variable-type-annotation\\\"}]}]},\\\"var-single-variable-type-annotation\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"variable-initializer\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)(?=\\\\\\\\s*\\\\\\\\S)(?!\\\\\\\\s*.*=>\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.tsx\\\"}},\\\"end\\\":\\\"(?=$|^|[,);}\\\\\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<!=|!)(=)(?!=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.tsx\\\"}},\\\"end\\\":\\\"(?=[,);}\\\\\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(of|in)\\\\\\\\s+))|(?=^\\\\\\\\s*$)|(?<![\\\\\\\\|\\\\\\\\&\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/])(?<=\\\\\\\\S)(?<!=)(?=\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]}},\\\"scopeName\\\":\\\"source.tsx\\\"}\"))\n\nexport default [\nlang\n]\n", "import javascript from './javascript.mjs'\nimport typescript from './typescript.mjs'\nimport jsx from './jsx.mjs'\nimport tsx from './tsx.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"GraphQL\\\",\\\"fileTypes\\\":[\\\"graphql\\\",\\\"graphqls\\\",\\\"gql\\\",\\\"graphcool\\\"],\\\"name\\\":\\\"graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql\\\"}],\\\"repository\\\":{\\\"graphql\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-fragment-definition\\\"},{\\\"include\\\":\\\"#graphql-directive-definition\\\"},{\\\"include\\\":\\\"#graphql-type-interface\\\"},{\\\"include\\\":\\\"#graphql-enum\\\"},{\\\"include\\\":\\\"#graphql-scalar\\\"},{\\\"include\\\":\\\"#graphql-union\\\"},{\\\"include\\\":\\\"#graphql-schema\\\"},{\\\"include\\\":\\\"#graphql-operation-def\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-ampersand\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(&)\\\"},\\\"graphql-arguments\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.directive.graphql\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.directive.graphql\\\"}},\\\"name\\\":\\\"meta.arguments.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?:\\\\\\\\s*(:))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.colon.graphql\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*(?:(?:([_A-Za-z][_0-9A-Za-z]*)\\\\\\\\s*(:))|\\\\\\\\)))|\\\\\\\\s*(,)\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.comma.graphql\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#graphql-value\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"}]},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-boolean-value\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.boolean.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(true|false)\\\\\\\\b\\\"},\\\"graphql-colon\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.colon.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(:)\\\"},\\\"graphql-comma\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(,)\\\"},\\\"graphql-comment\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.graphql\\\"}},\\\"comment\\\":\\\"need to prefix comment space with a scope else Atom's reflow cmd doesn't work\\\",\\\"match\\\":\\\"(\\\\\\\\s*)(#).*\\\",\\\"name\\\":\\\"comment.line.graphql.js\\\"},{\\\"begin\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.graphql\\\"}},\\\"end\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"name\\\":\\\"comment.line.graphql.js\\\"},{\\\"begin\\\":\\\"(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.graphql\\\"}},\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"name\\\":\\\"comment.line.graphql.js\\\"}]},\\\"graphql-description-docstring\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"comment.block.graphql\\\"},\\\"graphql-description-singleline\\\":{\\\"match\\\":\\\"#(?=([^\\\\\\\"]*\\\\\\\"[^\\\\\\\"]*\\\\\\\")*[^\\\\\\\"]*$).*$\\\",\\\"name\\\":\\\"comment.line.number-sign.graphql\\\"},\\\"graphql-directive\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*((@)\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.directive.graphql\\\"}},\\\"end\\\":\\\"(?=.)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-arguments\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"}]},\\\"graphql-directive-definition\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\bdirective\\\\\\\\b)\\\\\\\\s*(@[_A-Za-z][_0-9A-Za-z]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.directive.graphql\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.on.graphql\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type.graphql\\\"}},\\\"end\\\":\\\"(?=.)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-variable-definitions\\\"},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\bon\\\\\\\\b)\\\\\\\\s*([_A-Za-z]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.on.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.location.graphql\\\"}},\\\"end\\\":\\\"(?=.)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-skip-newlines\\\"},{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"support.type.location.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\|)\\\\\\\\s*([_A-Za-z]*)\\\"}]},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"},{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-enum\\\":{\\\"begin\\\":\\\"\\\\\\\\s*+\\\\\\\\b(enum)\\\\\\\\b\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.enum.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.enum.graphql\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.enum.graphql\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.operation.graphql\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.operation.graphql\\\"}},\\\"name\\\":\\\"meta.type.object.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-object-type\\\"},{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#graphql-enum-value\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"}]},\\\"graphql-enum-value\\\":{\\\"match\\\":\\\"\\\\\\\\s*(?!=\\\\\\\\b(true|false|null)\\\\\\\\b)([_A-Za-z][_0-9A-Za-z]*)\\\",\\\"name\\\":\\\"constant.character.enum.graphql\\\"},\\\"graphql-field\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.alias.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.colon.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\\\\\\s*(:)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\"},{\\\"include\\\":\\\"#graphql-arguments\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#graphql-selection-set\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"}]},\\\"graphql-float-value\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.float.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(-?(0|[1-9][0-9]*)(\\\\\\\\.[0-9]+)?((e|E)(\\\\\\\\+|-)?[0-9]+)?)\\\"},\\\"graphql-fragment-definition\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(?:(\\\\\\\\bfragment\\\\\\\\b)\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)?\\\\\\\\s*(?:(\\\\\\\\bon\\\\\\\\b)\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fragment.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.fragment.graphql\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.on.graphql\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type.graphql\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.fragment.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-selection-set\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-fragment-spread\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*(?!\\\\\\\\bon\\\\\\\\b)([_A-Za-z][_0-9A-Za-z]*)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.spread.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.fragment.graphql\\\"}},\\\"end\\\":\\\"(?=.)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-selection-set\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"}]},\\\"graphql-ignore-spaces\\\":{\\\"match\\\":\\\"\\\\\\\\s*\\\"},\\\"graphql-inline-fragment\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*(?:(\\\\\\\\bon\\\\\\\\b)\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*))?\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.spread.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.on.graphql\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.graphql\\\"}},\\\"end\\\":\\\"(?=.)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-selection-set\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-input-types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-scalar-type\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nulltype.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?:\\\\\\\\s*(!))?\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\[)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nulltype.graphql\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\])(?:\\\\\\\\s*(!))?\\\",\\\"name\\\":\\\"meta.type.list.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-input-types\\\"},{\\\"include\\\":\\\"#graphql-comma\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]}]},\\\"graphql-list-value\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*+(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.graphql\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.graphql\\\"}},\\\"name\\\":\\\"meta.listvalues.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-value\\\"}]}]},\\\"graphql-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\"},\\\"graphql-null-value\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.null.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(null)\\\\\\\\b\\\"},\\\"graphql-object-field\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.object.key.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.graphql\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(([_A-Za-z][_0-9A-Za-z]*))\\\\\\\\s*(:)\\\"},\\\"graphql-object-value\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*+({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.curly.graphql\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.curly.graphql\\\"}},\\\"name\\\":\\\"meta.objectvalues.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-object-field\\\"},{\\\"include\\\":\\\"#graphql-value\\\"}]}]},\\\"graphql-operation-def\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-query-mutation\\\"},{\\\"include\\\":\\\"#graphql-name\\\"},{\\\"include\\\":\\\"#graphql-variable-definitions\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#graphql-selection-set\\\"}]},\\\"graphql-query-mutation\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operation.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(query|mutation)\\\\\\\\b\\\"},\\\"graphql-scalar\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.scalar.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.scalar.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(scalar)\\\\\\\\b\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\"},\\\"graphql-scalar-type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.builtin.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nulltype.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(Int|Float|String|Boolean|ID)\\\\\\\\b(?:\\\\\\\\s*(!))?\\\"},\\\"graphql-schema\\\":{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\b(schema)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.schema.graphql\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.operation.graphql\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.operation.graphql\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\\\\\\\s*\\\\\\\\(|:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.arguments.graphql\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*(([_A-Za-z][_0-9A-Za-z]*)\\\\\\\\s*(\\\\\\\\(|:)|(})))|\\\\\\\\s*(,)\\\",\\\"endCaptures\\\":{\\\"5\\\":{\\\"name\\\":\\\"punctuation.comma.graphql\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\"},{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-colon\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"}]},{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"}]},{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"}]},\\\"graphql-selection-set\\\":{\\\"begin\\\":\\\"\\\\\\\\s*({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.operation.graphql\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.operation.graphql\\\"}},\\\"name\\\":\\\"meta.selectionset.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-field\\\"},{\\\"include\\\":\\\"#graphql-fragment-spread\\\"},{\\\"include\\\":\\\"#graphql-inline-fragment\\\"},{\\\"include\\\":\\\"#graphql-comma\\\"},{\\\"include\\\":\\\"#native-interpolation\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-skip-newlines\\\":{\\\"match\\\":\\\"\\\\\\\\s*\\\\n\\\"},\\\"graphql-string-content\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[/'\\\\\\\"\\\\\\\\\\\\\\\\nrtbf]\\\",\\\"name\\\":\\\"constant.character.escape.graphql\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u([0-9a-fA-F]{4})\\\",\\\"name\\\":\\\"constant.character.escape.graphql\\\"}]},\\\"graphql-string-value\\\":{\\\"begin\\\":\\\"\\\\\\\\s*+((\\\\\\\"))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.double.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.graphql\\\"}},\\\"contentName\\\":\\\"string.quoted.double.graphql\\\",\\\"end\\\":\\\"\\\\\\\\s*+(?:((\\\\\\\"))|(\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.double.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.graphql\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.newline.graphql\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-string-content\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-type-definition\\\":{\\\"begin\\\":\\\"\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\\\\\\\s*\\\\\\\\(|:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.graphql\\\"}},\\\"comment\\\":\\\"key (optionalArgs): Type\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(([_A-Za-z][_0-9A-Za-z]*)\\\\\\\\s*(\\\\\\\\(|:)|(})))|\\\\\\\\s*(,)\\\",\\\"endCaptures\\\":{\\\"5\\\":{\\\"name\\\":\\\"punctuation.comma.graphql\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#graphql-variable-definitions\\\"},{\\\"include\\\":\\\"#graphql-type-object\\\"},{\\\"include\\\":\\\"#graphql-colon\\\"},{\\\"include\\\":\\\"#graphql-input-types\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-type-interface\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\b(?:(extends?)?\\\\\\\\b\\\\\\\\s*\\\\\\\\b(type)|(interface)|(input))\\\\\\\\b\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)?\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.type.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.type.graphql\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.interface.graphql\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.input.graphql\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.type.graphql\\\"}},\\\"end\\\":\\\"(?=.)\\\",\\\"name\\\":\\\"meta.type.interface.graphql\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\b(implements)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.implements.graphql\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?={)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\"},{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#graphql-ampersand\\\"},{\\\"include\\\":\\\"#graphql-comma\\\"}]},{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#graphql-type-object\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"},{\\\"include\\\":\\\"#graphql-ignore-spaces\\\"}]},\\\"graphql-type-object\\\":{\\\"begin\\\":\\\"\\\\\\\\s*({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.operation.graphql\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.operation.graphql\\\"}},\\\"name\\\":\\\"meta.type.object.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-object-type\\\"},{\\\"include\\\":\\\"#graphql-type-definition\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-union\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\b(union)\\\\\\\\b\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.union.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.graphql\\\"}},\\\"end\\\":\\\"(?=.)\\\",\\\"patterns\\\":[{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*(=)\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.assignment.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.graphql\\\"}},\\\"end\\\":\\\"(?=.)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.or.graphql\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\|)\\\\\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\"}]},{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-union-mark\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.union.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\|)\\\"},\\\"graphql-value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-variable-name\\\"},{\\\"include\\\":\\\"#graphql-float-value\\\"},{\\\"include\\\":\\\"#graphql-string-value\\\"},{\\\"include\\\":\\\"#graphql-boolean-value\\\"},{\\\"include\\\":\\\"#graphql-null-value\\\"},{\\\"include\\\":\\\"#graphql-enum-value\\\"},{\\\"include\\\":\\\"#graphql-list-value\\\"},{\\\"include\\\":\\\"#graphql-object-value\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-variable-assignment\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.assignment.graphql\\\"}},\\\"end\\\":\\\"(?=[\\\\n,)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-value\\\"}]},\\\"graphql-variable-definition\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\$?[_A-Za-z][_0-9A-Za-z]*)(?=\\\\\\\\s*\\\\\\\\(|:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.graphql\\\"}},\\\"comment\\\":\\\"variable: type = value,.... which may be a list\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*((\\\\\\\\$?[_A-Za-z][_0-9A-Za-z]*)\\\\\\\\s*(\\\\\\\\(|:)|(}|\\\\\\\\))))|\\\\\\\\s*(,)\\\",\\\"endCaptures\\\":{\\\"5\\\":{\\\"name\\\":\\\"punctuation.comma.graphql\\\"}},\\\"name\\\":\\\"meta.variables.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-directive\\\"},{\\\"include\\\":\\\"#graphql-colon\\\"},{\\\"include\\\":\\\"#graphql-input-types\\\"},{\\\"include\\\":\\\"#graphql-variable-assignment\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"},{\\\"include\\\":\\\"#graphql-skip-newlines\\\"}]},\\\"graphql-variable-definitions\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\()\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.graphql\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#graphql-comment\\\"},{\\\"include\\\":\\\"#graphql-description-docstring\\\"},{\\\"include\\\":\\\"#graphql-description-singleline\\\"},{\\\"include\\\":\\\"#graphql-variable-definition\\\"},{\\\"include\\\":\\\"#literal-quasi-embedded\\\"}]},\\\"graphql-variable-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.graphql\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\$[_A-Za-z][_0-9A-Za-z]*)\\\"},\\\"native-interpolation\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\${)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.substitution.begin\\\"}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.substitution.end\\\"}},\\\"name\\\":\\\"native.interpolation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"},{\\\"include\\\":\\\"source.ts\\\"},{\\\"include\\\":\\\"source.js.jsx\\\"},{\\\"include\\\":\\\"source.tsx\\\"}]}},\\\"scopeName\\\":\\\"source.graphql\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\",\\\"typescript\\\",\\\"jsx\\\",\\\"tsx\\\"],\\\"aliases\\\":[\\\"gql\\\"]}\"))\n\nexport default [\n...javascript,\n...typescript,\n...jsx,\n...tsx,\nlang\n]\n", "import c from './c.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Lua\\\",\\\"name\\\":\\\"lua\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?:(local)\\\\\\\\s+)?(function)\\\\\\\\b(?![,:])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.local.lua\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.lua\\\"}},\\\"end\\\":\\\"(?<=[\\\\\\\\)\\\\\\\\-{}\\\\\\\\[\\\\\\\\]\\\\\\\"'])\\\",\\\"name\\\":\\\"meta.function.lua\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.lua\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|(?=[\\\\\\\\-\\\\\\\\.{}\\\\\\\\[\\\\\\\\]\\\\\\\"'])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.finish.lua\\\"}},\\\"name\\\":\\\"meta.parameter.lua\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"variable.parameter.function.lua\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.arguments.lua\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\),])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#emmydoc.type\\\"}]}]},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\\\\\\s*(?=:)\\\",\\\"name\\\":\\\"entity.name.class.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.lua\\\"}]},{\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\d.])0[xX][0-9A-Fa-f]+(\\\\\\\\.[0-9A-Fa-f]*)?([eE]-?\\\\\\\\d*)?([pP][-+]\\\\\\\\d+)?\\\",\\\"name\\\":\\\"constant.numeric.float.hexadecimal.lua\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\d.])0[xX]\\\\\\\\.[0-9A-Fa-f]+([eE]-?\\\\\\\\d*)?([pP][-+]\\\\\\\\d+)?\\\",\\\"name\\\":\\\"constant.numeric.float.hexadecimal.lua\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\d.])0[xX][0-9A-Fa-f]+(?![pPeE.0-9])\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.lua\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\d.])\\\\\\\\d+(\\\\\\\\.\\\\\\\\d*)?([eE]-?\\\\\\\\d*)?\\\",\\\"name\\\":\\\"constant.numeric.float.lua\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\d.])\\\\\\\\.\\\\\\\\d+([eE]-?\\\\\\\\d*)?\\\",\\\"name\\\":\\\"constant.numeric.float.lua\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\d.])\\\\\\\\d+(?![pPeE.0-9])\\\",\\\"name\\\":\\\"constant.numeric.integer.lua\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.lua\\\"}},\\\"match\\\":\\\"\\\\\\\\A(#!).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.shebang.lua\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.goto.lua\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.tag.lua\\\"}},\\\"match\\\":\\\"\\\\\\\\b(goto)\\\\\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.lua\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.lua\\\"}},\\\"match\\\":\\\"(::)\\\\\\\\s*[a-zA-Z_][a-zA-Z0-9_]*\\\\\\\\s*(::)\\\",\\\"name\\\":\\\"string.tag.lua\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.attribute.lua\\\"}},\\\"match\\\":\\\"<\\\\\\\\s*(const|close)\\\\\\\\s*>\\\"},{\\\"match\\\":\\\"\\\\\\\\<[a-zA-Z_\\\\\\\\*][a-zA-Z0-9_\\\\\\\\.\\\\\\\\*\\\\\\\\-]*\\\\\\\\>\\\",\\\"name\\\":\\\"storage.type.generic.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\b(break|do|else|for|if|elseif|goto|return|then|repeat|while|until|end|in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\b(local)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.local.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\b(function)\\\\\\\\b(?![,:])\\\",\\\"name\\\":\\\"keyword.control.lua\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(false|nil(?!:)|true|_ENV|_G|_VERSION|math\\\\\\\\.(pi|huge|maxinteger|mininteger)|utf8\\\\\\\\.charpattern|io\\\\\\\\.(stdin|stdout|stderr)|package\\\\\\\\.(config|cpath|loaded|loaders|path|preload|searchers))\\\\\\\\b|(?<![.])\\\\\\\\.{3}(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"constant.language.lua\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(self)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.self.lua\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(assert|collectgarbage|dofile|error|getfenv|getmetatable|ipairs|load|loadfile|loadstring|module|next|pairs|pcall|print|rawequal|rawget|rawlen|rawset|require|select|setfenv|setmetatable|tonumber|tostring|type|unpack|xpcall)\\\\\\\\b(?!\\\\\\\\s*=(?!=))\\\",\\\"name\\\":\\\"support.function.lua\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(async)\\\\\\\\b(?!\\\\\\\\s*=(?!=))\\\",\\\"name\\\":\\\"entity.name.tag.lua\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(coroutine\\\\\\\\.(create|isyieldable|close|resume|running|status|wrap|yield)|string\\\\\\\\.(byte|char|dump|find|format|gmatch|gsub|len|lower|match|pack|packsize|rep|reverse|sub|unpack|upper)|table\\\\\\\\.(concat|insert|maxn|move|pack|remove|sort|unpack)|math\\\\\\\\.(abs|acos|asin|atan2?|ceil|cosh?|deg|exp|floor|fmod|frexp|ldexp|log|log10|max|min|modf|pow|rad|random|randomseed|sinh?|sqrt|tanh?|tointeger|type)|io\\\\\\\\.(close|flush|input|lines|open|output|popen|read|tmpfile|type|write)|os\\\\\\\\.(clock|date|difftime|execute|exit|getenv|remove|rename|setlocale|time|tmpname)|package\\\\\\\\.(loadlib|seeall|searchpath)|debug\\\\\\\\.(debug|[gs]etfenv|[gs]ethook|getinfo|[gs]etlocal|[gs]etmetatable|getregistry|[gs]etupvalue|[gs]etuservalue|set[Cc]stacklimit|traceback|upvalueid|upvaluejoin)|bit32\\\\\\\\.(arshift|band|bnot|bor|btest|bxor|extract|replace|lrotate|lshift|rrotate|rshift)|utf8\\\\\\\\.(char|codes|codepoint|len|offset))\\\\\\\\b(?!\\\\\\\\s*=(?!=))\\\",\\\"name\\\":\\\"support.function.library.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\b(and|or|not|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&|\\\\\\\\!)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b(?=\\\\\\\\s*(?:[({\\\\\\\"']|\\\\\\\\[\\\\\\\\[))\\\",\\\"name\\\":\\\"support.function.any-method.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\??:)\\\",\\\"name\\\":\\\"entity.name.class.lua\\\"},{\\\"match\\\":\\\"(?<=[^.]\\\\\\\\.|:)\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b(?!\\\\\\\\s*=\\\\\\\\s*\\\\\\\\b(function)\\\\\\\\b)\\\",\\\"name\\\":\\\"entity.other.attribute.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b(?!\\\\\\\\s*=\\\\\\\\s*\\\\\\\\b(function)\\\\\\\\b)\\\",\\\"name\\\":\\\"variable.other.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b(?=\\\\\\\\s*=\\\\\\\\s*\\\\\\\\b(function)\\\\\\\\b)\\\",\\\"name\\\":\\\"entity.name.function.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\+|-|%|#|\\\\\\\\*|\\\\\\\\/|\\\\\\\\^|==?|~=|!=|<=?|>=?|(?<!\\\\\\\\.)\\\\\\\\.{2}(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"}],\\\"repository\\\":{\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=--)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.lua\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)((?!^)[ \\\\\\\\t]+\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.trailing.lua\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"--\\\\\\\\[(=*)\\\\\\\\[@@@\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.lua\\\"}},\\\"end\\\":\\\"(--)?\\\\\\\\]\\\\\\\\1\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.lua\\\"}},\\\"name\\\":\\\"\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lua\\\"}]},{\\\"begin\\\":\\\"--\\\\\\\\[(=*)\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.lua\\\"}},\\\"end\\\":\\\"(--)?\\\\\\\\]\\\\\\\\1\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.lua\\\"}},\\\"name\\\":\\\"comment.block.lua\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#emmydoc\\\"},{\\\"include\\\":\\\"#ldoc_tag\\\"}]},{\\\"begin\\\":\\\"----\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.lua\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-dash.lua\\\"},{\\\"begin\\\":\\\"---\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.lua\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-dash.documentation.lua\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#emmydoc\\\"},{\\\"include\\\":\\\"#ldoc_tag\\\"}]},{\\\"begin\\\":\\\"--\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.lua\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-dash.lua\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ldoc_tag\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.lua\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.lua\\\"}},\\\"name\\\":\\\"comment.block.lua\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#emmydoc\\\"},{\\\"include\\\":\\\"#ldoc_tag\\\"}]}]},\\\"emmydoc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@class\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_\\\\\\\\*][a-zA-Z0-9_\\\\\\\\.\\\\\\\\*\\\\\\\\-]*)\\\",\\\"name\\\":\\\"support.class.lua\\\"},{\\\"match\\\":\\\":|,\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@enum\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([a-zA-Z_\\\\\\\\*][a-zA-Z0-9_\\\\\\\\.\\\\\\\\*\\\\\\\\-]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.lua\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\"}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@type\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#emmydoc.type\\\"}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@alias\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([a-zA-Z_\\\\\\\\*][a-zA-Z0-9_\\\\\\\\.\\\\\\\\*\\\\\\\\-]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n#])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#emmydoc.type\\\"}]}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*(@operator)\\\\\\\\s*(\\\\\\\\b[a-z]+)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.library.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#emmydoc.type\\\"}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@cast\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([a-zA-Z_\\\\\\\\*][a-zA-Z0-9_\\\\\\\\.\\\\\\\\*\\\\\\\\-]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.lua\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#emmydoc.type\\\"},{\\\"match\\\":\\\"([+-|])\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"}]}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@param\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b(\\\\\\\\??)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.variable.lua\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n#])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#emmydoc.type\\\"}]}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@return\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"},{\\\"include\\\":\\\"#emmydoc.type\\\"}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@field\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b|(\\\\\\\\[))(\\\\\\\\??)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.variable.lua\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n#])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#emmydoc.type\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"}]}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@generic\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.generic.lua\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)|(,)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lua\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"},{\\\"include\\\":\\\"#emmydoc.type\\\"}]}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@vararg\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#emmydoc.type\\\"}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@overload\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#emmydoc.type\\\"}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@deprecated\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\"},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@meta\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\"},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@private\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\"},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@protected\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\"},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@package\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\"},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@version\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(5\\\\\\\\.1|5\\\\\\\\.2|5\\\\\\\\.3|5\\\\\\\\.4|JIT)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.lua\\\"},{\\\"match\\\":\\\",|\\\\\\\\>|\\\\\\\\<\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@see\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_\\\\\\\\*][a-zA-Z0-9_\\\\\\\\.\\\\\\\\*\\\\\\\\-]*)\\\",\\\"name\\\":\\\"support.class.lua\\\"},{\\\"match\\\":\\\"#\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@diagnostic\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"([a-zA-Z_\\\\\\\\-0-9]+)[ \\\\\\\\t]*(:)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.unit\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_\\\\\\\\*][a-zA-Z0-9_\\\\\\\\-]*)\\\",\\\"name\\\":\\\"support.class.lua\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"}]}]},{\\\"begin\\\":\\\"(?<=---)[ \\\\\\\\t]*@module\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},{\\\"match\\\":\\\"(?<=---)[ \\\\\\\\t]*@(async|nodiscard)\\\",\\\"name\\\":\\\"storage.type.annotation.lua\\\"},{\\\"begin\\\":\\\"(?<=---)\\\\\\\\|\\\\\\\\s*[\\\\\\\\>\\\\\\\\+]?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.annotation.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\n@#])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]}]},\\\"emmydoc.type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bfun\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.lua\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\s#])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[\\\\\\\\(\\\\\\\\),:\\\\\\\\?][ \\\\\\\\t]*\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"},{\\\"match\\\":\\\"([a-zA-Z_][a-zA-Z0-9_\\\\\\\\.\\\\\\\\*\\\\\\\\[\\\\\\\\]\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\-]*)(?<!,)[ \\\\\\\\t]*(?=\\\\\\\\??:)\\\",\\\"name\\\":\\\"entity.name.variable.lua\\\"},{\\\"include\\\":\\\"#emmydoc.type\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"match\\\":\\\"\\\\\\\\<[a-zA-Z_\\\\\\\\*][a-zA-Z0-9_\\\\\\\\.\\\\\\\\*\\\\\\\\-]*\\\\\\\\>\\\",\\\"name\\\":\\\"storage.type.generic.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\basync\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.tag.lua\\\"},{\\\"match\\\":\\\"[\\\\\\\\{\\\\\\\\}\\\\\\\\:\\\\\\\\,\\\\\\\\?\\\\\\\\|\\\\\\\\`][ \\\\\\\\t]*\\\",\\\"name\\\":\\\"keyword.operator.lua\\\"},{\\\"begin\\\":\\\"(?=[a-zA-Z_\\\\\\\\.\\\\\\\\*\\\\\\\"'\\\\\\\\[])\\\",\\\"end\\\":\\\"(?=[\\\\\\\\s\\\\\\\\)\\\\\\\\,\\\\\\\\?\\\\\\\\:\\\\\\\\}\\\\\\\\|#])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([a-zA-Z0-9_\\\\\\\\.\\\\\\\\*\\\\\\\\[\\\\\\\\]\\\\\\\\<\\\\\\\\>\\\\\\\\,\\\\\\\\-]+)(?<!,)[ \\\\\\\\t]*\\\",\\\"name\\\":\\\"support.type.lua\\\"},{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\.\\\\\\\\.)[ \\\\\\\\t]*\\\",\\\"name\\\":\\\"constant.language.lua\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"escaped_char\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[abfnrtv\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.escape.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\z[\\\\\\\\n\\\\\\\\t ]*\\\",\\\"name\\\":\\\"constant.character.escape.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\d{1,3}\\\",\\\"name\\\":\\\"constant.character.escape.byte.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9A-Fa-f][0-9A-Fa-f]\\\",\\\"name\\\":\\\"constant.character.escape.byte.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u\\\\\\\\{[0-9A-Fa-f]+\\\\\\\\}\\\",\\\"name\\\":\\\"constant.character.escape.unicode.lua\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.character.escape.lua\\\"}]},\\\"ldoc_tag\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.ldoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.ldoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G[ \\\\\\\\t]*(@)(alias|annotation|author|charset|class|classmod|comment|constructor|copyright|description|example|export|factory|field|file|fixme|function|include|lfunction|license|local|module|name|param|pragma|private|raise|release|return|script|section|see|set|static|submodule|summary|tfield|thread|tparam|treturn|todo|topic|type|usage|warning|within)\\\\\\\\b\\\"},\\\"string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.lua\\\"}},\\\"end\\\":\\\"'[ \\\\\\\\t]*|(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.lua\\\"}},\\\"name\\\":\\\"string.quoted.single.lua\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.lua\\\"}},\\\"end\\\":\\\"\\\\\\\"[ \\\\\\\\t]*|(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.lua\\\"}},\\\"name\\\":\\\"string.quoted.double.lua\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.lua\\\"}},\\\"end\\\":\\\"`[ \\\\\\\\t]*|(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.lua\\\"}},\\\"name\\\":\\\"string.quoted.double.lua\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\.cdef)\\\\\\\\s*(\\\\\\\\[(=*)\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.other.multiline.lua\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.lua\\\"}},\\\"contentName\\\":\\\"meta.embedded.lua\\\",\\\"end\\\":\\\"(\\\\\\\\]\\\\\\\\2\\\\\\\\])[ \\\\\\\\t]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.other.multiline.lua\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.lua\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.c\\\"}]},{\\\"begin\\\":\\\"(?<!--)\\\\\\\\[(=*)\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.lua\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\1\\\\\\\\][ \\\\\\\\t]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.lua\\\"}},\\\"name\\\":\\\"string.quoted.other.multiline.lua\\\"}]}},\\\"scopeName\\\":\\\"source.lua\\\",\\\"embeddedLangs\\\":[\\\"c\\\"]}\"))\n\nexport default [\n...c,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"YAML\\\",\\\"fileTypes\\\":[\\\"yaml\\\",\\\"yml\\\",\\\"rviz\\\",\\\"reek\\\",\\\"clang-format\\\",\\\"yaml-tmlanguage\\\",\\\"syntax\\\",\\\"sublime-syntax\\\"],\\\"firstLineMatch\\\":\\\"^%YAML( ?1.\\\\\\\\d+)?\\\",\\\"name\\\":\\\"yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#property\\\"},{\\\"include\\\":\\\"#directive\\\"},{\\\"match\\\":\\\"^---\\\",\\\"name\\\":\\\"entity.other.document.begin.yaml\\\"},{\\\"match\\\":\\\"^\\\\\\\\.{3}\\\",\\\"name\\\":\\\"entity.other.document.end.yaml\\\"},{\\\"include\\\":\\\"#node\\\"}],\\\"repository\\\":{\\\"block-collection\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-sequence\\\"},{\\\"include\\\":\\\"#block-mapping\\\"}]},\\\"block-mapping\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-pair\\\"}]},\\\"block-node\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#prototype\\\"},{\\\"include\\\":\\\"#block-scalar\\\"},{\\\"include\\\":\\\"#block-collection\\\"},{\\\"include\\\":\\\"#flow-scalar-plain-out\\\"},{\\\"include\\\":\\\"#flow-node\\\"}]},\\\"block-pair\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.key-value.begin.yaml\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\?)|^ *(:)|(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.mapping.yaml\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.expected-newline.yaml\\\"}},\\\"name\\\":\\\"meta.block-mapping.yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-node\\\"}]},{\\\"begin\\\":\\\"(?=(?:[^\\\\\\\\s[-?:,\\\\\\\\[\\\\\\\\]{}#&*!|>'\\\\\\\"%@`]]|[?:-]\\\\\\\\S)([^\\\\\\\\s:]|:\\\\\\\\S|\\\\\\\\s+(?![#\\\\\\\\s]))*\\\\\\\\s*:(\\\\\\\\s|$))\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*$|\\\\\\\\s+\\\\\\\\#|\\\\\\\\s*:(\\\\\\\\s|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#flow-scalar-plain-out-implicit-type\\\"},{\\\"begin\\\":\\\"[^\\\\\\\\s[-?:,\\\\\\\\[\\\\\\\\]{}#&*!|>'\\\\\\\"%@`]]|[?:-]\\\\\\\\S\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.yaml\\\"}},\\\"contentName\\\":\\\"entity.name.tag.yaml\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*$|\\\\\\\\s+\\\\\\\\#|\\\\\\\\s*:(\\\\\\\\s|$))\\\",\\\"name\\\":\\\"string.unquoted.plain.out.yaml\\\"}]},{\\\"match\\\":\\\":(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"punctuation.separator.key-value.mapping.yaml\\\"}]},\\\"block-scalar\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\|)|(>))([1-9])?([-+])?(.*\\\\\\\\n?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.block-scalar.literal.yaml\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.flow.block-scalar.folded.yaml\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.indentation-indicator.yaml\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.chomping-indicator.yaml\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"invalid.illegal.expected-comment-or-newline.yaml\\\"}]}},\\\"end\\\":\\\"^(?=\\\\\\\\S)|(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^([ ]+)(?! )\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"string.unquoted.block.yaml\\\"}]},\\\"block-sequence\\\":{\\\"match\\\":\\\"(-)(?!\\\\\\\\S)\\\",\\\"name\\\":\\\"punctuation.definition.block.sequence.item.yaml\\\"},\\\"comment\\\":{\\\"begin\\\":\\\"(?:(^[ \\\\\\\\t]*)|[ \\\\\\\\t]+)(?=#\\\\\\\\p{Print}*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.yaml\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.yaml\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.yaml\\\"}]},\\\"directive\\\":{\\\"begin\\\":\\\"^%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.directive.begin.yaml\\\"}},\\\"end\\\":\\\"(?=$|[ \\\\\\\\t]+($|#))\\\",\\\"name\\\":\\\"meta.directive.yaml\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.directive.yaml.yaml\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.yaml-version.yaml\\\"}},\\\"match\\\":\\\"\\\\\\\\G(YAML)[ \\\\\\\\t]+(\\\\\\\\d+\\\\\\\\.\\\\\\\\d+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.directive.tag.yaml\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.tag-handle.yaml\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.tag-prefix.yaml\\\"}},\\\"match\\\":\\\"\\\\\\\\G(TAG)(?:[ \\\\\\\\t]+((?:!(?:[0-9A-Za-z\\\\\\\\-]*!)?))(?:[ \\\\\\\\t]+(!(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\\\\\-#;/?:@&=+$,_.!~*'()\\\\\\\\[\\\\\\\\]])*|(?![,!\\\\\\\\[\\\\\\\\]{}])(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\\\\\-#;/?:@&=+$,_.!~*'()\\\\\\\\[\\\\\\\\]])+))?)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.directive.reserved.yaml\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.directive-name.yaml\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.unquoted.directive-parameter.yaml\\\"}},\\\"match\\\":\\\"\\\\\\\\G(\\\\\\\\w+)(?:[ \\\\\\\\t]+(\\\\\\\\w+)(?:[ \\\\\\\\t]+(\\\\\\\\w+))?)?\\\"},{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized.yaml\\\"}]},\\\"flow-alias\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.alias.yaml\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.alias.yaml\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.alias.yaml\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.character.anchor.yaml\\\"}},\\\"match\\\":\\\"((\\\\\\\\*))([^\\\\\\\\s\\\\\\\\[\\\\\\\\]/{/},]+)([^\\\\\\\\s\\\\\\\\]},]\\\\\\\\S*)?\\\"},\\\"flow-collection\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#flow-sequence\\\"},{\\\"include\\\":\\\"#flow-mapping\\\"}]},\\\"flow-mapping\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.mapping.begin.yaml\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.mapping.end.yaml\\\"}},\\\"name\\\":\\\"meta.flow-mapping.yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#prototype\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.mapping.yaml\\\"},{\\\"include\\\":\\\"#flow-pair\\\"}]},\\\"flow-node\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#prototype\\\"},{\\\"include\\\":\\\"#flow-alias\\\"},{\\\"include\\\":\\\"#flow-collection\\\"},{\\\"include\\\":\\\"#flow-scalar\\\"}]},\\\"flow-pair\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.key-value.begin.yaml\\\"}},\\\"end\\\":\\\"(?=[},\\\\\\\\]])\\\",\\\"name\\\":\\\"meta.flow-pair.explicit.yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#prototype\\\"},{\\\"include\\\":\\\"#flow-pair\\\"},{\\\"include\\\":\\\"#flow-node\\\"},{\\\"begin\\\":\\\":(?=\\\\\\\\s|$|[\\\\\\\\[\\\\\\\\]{},])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.mapping.yaml\\\"}},\\\"end\\\":\\\"(?=[},\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#flow-value\\\"}]}]},{\\\"begin\\\":\\\"(?=(?:[^\\\\\\\\s[-?:,\\\\\\\\[\\\\\\\\]{}#&*!|>'\\\\\\\"%@`]]|[?:-][^\\\\\\\\s[\\\\\\\\[\\\\\\\\]{},]])([^\\\\\\\\s:[\\\\\\\\[\\\\\\\\]{},]]|:[^\\\\\\\\s[\\\\\\\\[\\\\\\\\]{},]]|\\\\\\\\s+(?![#\\\\\\\\s]))*\\\\\\\\s*:(\\\\\\\\s|$))\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*$|\\\\\\\\s+\\\\\\\\#|\\\\\\\\s*:(\\\\\\\\s|$)|\\\\\\\\s*:[\\\\\\\\[\\\\\\\\]{},]|\\\\\\\\s*[\\\\\\\\[\\\\\\\\]{},])\\\",\\\"name\\\":\\\"meta.flow-pair.key.yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#flow-scalar-plain-in-implicit-type\\\"},{\\\"begin\\\":\\\"[^\\\\\\\\s[-?:,\\\\\\\\[\\\\\\\\]{}#&*!|>'\\\\\\\"%@`]]|[?:-][^\\\\\\\\s[\\\\\\\\[\\\\\\\\]{},]]\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.yaml\\\"}},\\\"contentName\\\":\\\"entity.name.tag.yaml\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*$|\\\\\\\\s+\\\\\\\\#|\\\\\\\\s*:(\\\\\\\\s|$)|\\\\\\\\s*:[\\\\\\\\[\\\\\\\\]{},]|\\\\\\\\s*[\\\\\\\\[\\\\\\\\]{},])\\\",\\\"name\\\":\\\"string.unquoted.plain.in.yaml\\\"}]},{\\\"include\\\":\\\"#flow-node\\\"},{\\\"begin\\\":\\\":(?=\\\\\\\\s|$|[\\\\\\\\[\\\\\\\\]{},])\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.mapping.yaml\\\"}},\\\"end\\\":\\\"(?=[},\\\\\\\\]])\\\",\\\"name\\\":\\\"meta.flow-pair.yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#flow-value\\\"}]}]},\\\"flow-scalar\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#flow-scalar-double-quoted\\\"},{\\\"include\\\":\\\"#flow-scalar-single-quoted\\\"},{\\\"include\\\":\\\"#flow-scalar-plain-in\\\"}]},\\\"flow-scalar-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.yaml\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.yaml\\\"}},\\\"name\\\":\\\"string.quoted.double.yaml\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0abtnvfre \\\\\\\"/\\\\\\\\\\\\\\\\N_Lp]|x\\\\\\\\d\\\\\\\\d|u\\\\\\\\d{4}|U\\\\\\\\d{8})\\\",\\\"name\\\":\\\"constant.character.escape.yaml\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.double-quoted.newline.yaml\\\"}]},\\\"flow-scalar-plain-in\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#flow-scalar-plain-in-implicit-type\\\"},{\\\"begin\\\":\\\"[^\\\\\\\\s[-?:,\\\\\\\\[\\\\\\\\]{}#&*!|>'\\\\\\\"%@`]]|[?:-][^\\\\\\\\s[\\\\\\\\[\\\\\\\\]{},]]\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*$|\\\\\\\\s+\\\\\\\\#|\\\\\\\\s*:(\\\\\\\\s|$)|\\\\\\\\s*:[\\\\\\\\[\\\\\\\\]{},]|\\\\\\\\s*[\\\\\\\\[\\\\\\\\]{},])\\\",\\\"name\\\":\\\"string.unquoted.plain.in.yaml\\\"}]},\\\"flow-scalar-plain-in-implicit-type\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.null.yaml\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.language.boolean.yaml\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.integer.yaml\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.float.yaml\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.other.timestamp.yaml\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.language.value.yaml\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.language.merge.yaml\\\"}},\\\"match\\\":\\\"(?:(null|Null|NULL|~)|(y|Y|yes|Yes|YES|n|N|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|((?:[-+]?0b[0-1_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[0-9a-fA-F_]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+))|((?:[-+]?(?:[0-9][0-9_]*)?\\\\\\\\.[0-9.]*(?:[eE][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\\\\\.[0-9_]*|[-+]?\\\\\\\\.(?:inf|Inf|INF)|\\\\\\\\.(?:nan|NaN|NAN)))|((?:\\\\\\\\d{4}-\\\\\\\\d{2}-\\\\\\\\d{2}|\\\\\\\\d{4}-\\\\\\\\d{1,2}-\\\\\\\\d{1,2}(?:[Tt]|[ \\\\\\\\t]+)\\\\\\\\d{1,2}:\\\\\\\\d{2}:\\\\\\\\d{2}(?:\\\\\\\\.\\\\\\\\d*)?(?:(?:[ \\\\\\\\t]*)Z|[-+]\\\\\\\\d{1,2}(?::\\\\\\\\d{1,2})?)?))|(=)|(<<))(?:(?=\\\\\\\\s*$|\\\\\\\\s+\\\\\\\\#|\\\\\\\\s*:(\\\\\\\\s|$)|\\\\\\\\s*:[\\\\\\\\[\\\\\\\\]{},]|\\\\\\\\s*[\\\\\\\\[\\\\\\\\]{},]))\\\"}]},\\\"flow-scalar-plain-out\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#flow-scalar-plain-out-implicit-type\\\"},{\\\"begin\\\":\\\"[^\\\\\\\\s[-?:,\\\\\\\\[\\\\\\\\]{}#&*!|>'\\\\\\\"%@`]]|[?:-]\\\\\\\\S\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*$|\\\\\\\\s+\\\\\\\\#|\\\\\\\\s*:(\\\\\\\\s|$))\\\",\\\"name\\\":\\\"string.unquoted.plain.out.yaml\\\"}]},\\\"flow-scalar-plain-out-implicit-type\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.null.yaml\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.language.boolean.yaml\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.integer.yaml\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.float.yaml\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.other.timestamp.yaml\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.language.value.yaml\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.language.merge.yaml\\\"}},\\\"match\\\":\\\"(?:(null|Null|NULL|~)|(y|Y|yes|Yes|YES|n|N|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|((?:[-+]?0b[0-1_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[0-9a-fA-F_]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+))|((?:[-+]?(?:[0-9][0-9_]*)?\\\\\\\\.[0-9.]*(?:[eE][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\\\\\.[0-9_]*|[-+]?\\\\\\\\.(?:inf|Inf|INF)|\\\\\\\\.(?:nan|NaN|NAN)))|((?:\\\\\\\\d{4}-\\\\\\\\d{2}-\\\\\\\\d{2}|\\\\\\\\d{4}-\\\\\\\\d{1,2}-\\\\\\\\d{1,2}(?:[Tt]|[ \\\\\\\\t]+)\\\\\\\\d{1,2}:\\\\\\\\d{2}:\\\\\\\\d{2}(?:\\\\\\\\.\\\\\\\\d*)?(?:(?:[ \\\\\\\\t]*)Z|[-+]\\\\\\\\d{1,2}(?::\\\\\\\\d{1,2})?)?))|(=)|(<<))(?:(?=\\\\\\\\s*$|\\\\\\\\s+\\\\\\\\#|\\\\\\\\s*:(\\\\\\\\s|$)))\\\"}]},\\\"flow-scalar-single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.yaml\\\"}},\\\"end\\\":\\\"'(?!')\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.yaml\\\"}},\\\"name\\\":\\\"string.quoted.single.yaml\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"''\\\",\\\"name\\\":\\\"constant.character.escape.single-quoted.yaml\\\"}]},\\\"flow-sequence\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.sequence.begin.yaml\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.sequence.end.yaml\\\"}},\\\"name\\\":\\\"meta.flow-sequence.yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#prototype\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.sequence.yaml\\\"},{\\\"include\\\":\\\"#flow-pair\\\"},{\\\"include\\\":\\\"#flow-node\\\"}]},\\\"flow-value\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?![},\\\\\\\\]])\\\",\\\"end\\\":\\\"(?=[},\\\\\\\\]])\\\",\\\"name\\\":\\\"meta.flow-pair.value.yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#flow-node\\\"}]}]},\\\"node\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-node\\\"}]},\\\"property\\\":{\\\"begin\\\":\\\"(?=!|&)\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.property.yaml\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.property.anchor.yaml\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.anchor.yaml\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.anchor.yaml\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.character.anchor.yaml\\\"}},\\\"match\\\":\\\"\\\\\\\\G((&))([^\\\\\\\\s\\\\\\\\[\\\\\\\\]/{/},]+)(\\\\\\\\S+)?\\\"},{\\\"match\\\":\\\"\\\\\\\\G(?:!<(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\\\\\-#;/?:@&=+$,_.!~*'()\\\\\\\\[\\\\\\\\]])+>|(?:!(?:[0-9A-Za-z\\\\\\\\-]*!)?)(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\\\\\-#;/?:@&=+$_.~*'()])+|!)(?=\\\\\\\\ |\\\\\\\\t|$)\\\",\\\"name\\\":\\\"storage.type.tag-handle.yaml\\\"},{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"invalid.illegal.tag-handle.yaml\\\"}]},\\\"prototype\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#property\\\"}]}},\\\"scopeName\\\":\\\"source.yaml\\\",\\\"aliases\\\":[\\\"yml\\\"]}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\nimport haml from './haml.mjs'\nimport xml from './xml.mjs'\nimport sql from './sql.mjs'\nimport graphql from './graphql.mjs'\nimport css from './css.mjs'\nimport cpp from './cpp.mjs'\nimport c from './c.mjs'\nimport javascript from './javascript.mjs'\nimport shellscript from './shellscript.mjs'\nimport lua from './lua.mjs'\nimport yaml from './yaml.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Ruby\\\",\\\"name\\\":\\\"ruby\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.class.ruby\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.ruby\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.ruby\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.other.inherited-class.ruby\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.ruby\\\"}},\\\"comment\\\":\\\"class Namespace::ClassName < OtherNamespace::OtherClassName\\\",\\\"match\\\":\\\"\\\\b(class)\\\\\\\\s+(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*)\\\\\\\\s*((<)\\\\\\\\s*(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*))?\\\",\\\"name\\\":\\\"meta.class.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.module.ruby\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.module.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.ruby\\\"}},\\\"match\\\":\\\"\\\\b(module)\\\\\\\\s+(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*)\\\",\\\"name\\\":\\\"meta.module.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.class.ruby\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.ruby\\\"}},\\\"match\\\":\\\"\\\\b(class)\\\\\\\\s*(<<)\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.class.ruby\\\"},{\\\"comment\\\":\\\"else if is a common mistake carried over from other languages. it works if you put in a second end, but it\u2019s never what you want.\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\belse(\\\\\\\\s)+if\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.deprecated.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.ruby\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.augmented.ruby\\\"}},\\\"comment\\\":\\\"A local variable and/or assignment\\\",\\\"match\\\":\\\"^\\\\\\\\s*([a-z]([A-Za-z0-9_])*)\\\\\\\\s*((&&|\\\\\\\\|\\\\\\\\|)=)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ruby\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.assignment.augmented.ruby\\\"}},\\\"comment\\\":\\\"A local variable and/or assignment in a condition\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(case|if|elsif|unless|until|while)\\\\\\\\b\\\\\\\\s*(\\\\\\\\()*?\\\\\\\\s*([a-z]([A-Za-z0-9_])*)\\\\\\\\s*((&&|\\\\\\\\|\\\\\\\\|)=)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.ruby\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.augmented.ruby\\\"}},\\\"comment\\\":\\\"A local variable operation assignment (+=, -=, *=, /=)\\\",\\\"match\\\":\\\"^\\\\\\\\s*([a-z]([A-Za-z0-9_])*)\\\\\\\\s*((\\\\\\\\+|\\\\\\\\*|-|\\\\\\\\/|%|\\\\\\\\*\\\\\\\\*|&|\\\\\\\\||\\\\\\\\^|<<|>>)=)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ruby\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.assignment.augmented.ruby\\\"}},\\\"comment\\\":\\\"A local variable operation assignment in a condition\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(case|if|elsif|unless|until|while)\\\\\\\\b\\\\\\\\s*(\\\\\\\\()*?\\\\\\\\s*([a-z]([A-Za-z0-9_])*)\\\\\\\\s*((\\\\\\\\+|\\\\\\\\*|-|\\\\\\\\/|%|\\\\\\\\*\\\\\\\\*|&|\\\\\\\\||\\\\\\\\^|<<|>>)=)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.ruby\\\"}},\\\"comment\\\":\\\"A local variable assignment\\\",\\\"match\\\":\\\"^\\\\\\\\s*([a-z]([A-Za-z0-9_])*)\\\\\\\\s*=[^=>]\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ruby\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.ruby\\\"}},\\\"comment\\\":\\\"A local variable assignment in a condition\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(case|if|elsif|unless|until|while)\\\\\\\\b\\\\\\\\s*(\\\\\\\\()*?\\\\\\\\s*([a-z]([A-Za-z0-9_])*)\\\\\\\\s*=[^=>]\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.hashkey.ruby\\\"}},\\\"comment\\\":\\\"symbols as hash key (1.9 syntax)\\\",\\\"match\\\":\\\"(?>[a-zA-Z_]\\\\\\\\w*(?>[?!])?)(:)(?!:)\\\",\\\"name\\\":\\\"constant.language.symbol.hashkey.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.ruby\\\"}},\\\"comment\\\":\\\"symbols as hash key (1.8 syntax)\\\",\\\"match\\\":\\\"(?<!:)(:)(?>[a-zA-Z_]\\\\\\\\w*(?>[?!])?)(?=\\\\\\\\s*=>)\\\",\\\"name\\\":\\\"constant.language.symbol.hashkey.ruby\\\"},{\\\"comment\\\":\\\"everything being a reserved word, not a value and needing a 'end' is a..\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(BEGIN|begin|case|class|else|elsif|END|end|ensure|for|if|in|module|rescue|then|unless|until|when|while)\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"keyword.control.ruby\\\"},{\\\"comment\\\":\\\"contextual smart pair support for block parameters\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bdo\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.start-block.ruby\\\"},{\\\"comment\\\":\\\"contextual smart pair support\\\",\\\"match\\\":\\\"(?<={)(\\\\\\\\s+)\\\",\\\"name\\\":\\\"meta.syntax.ruby.start-block\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(alias|alias_method|break|next|redo|retry|return|super|undef|yield)\\\\\\\\b(?![?!])|\\\\\\\\bdefined\\\\\\\\?|\\\\\\\\b(block_given|iterator)\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.control.pseudo-method.ruby\\\"},{\\\"match\\\":\\\"\\\\\\\\bnil\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"constant.language.nil.ruby\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"constant.language.boolean.ruby\\\"},{\\\"match\\\":\\\"\\\\\\\\b(__(FILE|LINE)__)\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"variable.language.ruby\\\"},{\\\"match\\\":\\\"\\\\\\\\bself\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"variable.language.self.ruby\\\"},{\\\"comment\\\":\\\" everything being a method but having a special function is a..\\\",\\\"match\\\":\\\"\\\\\\\\b(initialize|new|loop|include|extend|prepend|raise|fail|attr_reader|attr_writer|attr_accessor|attr|catch|throw|private|private_class_method|module_function|public|public_class_method|protected|refine|using)\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"keyword.other.special-method.ruby\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.|::)(require|require_relative)\\\\\\\\b(?![?!])\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.special-method.ruby\\\"}},\\\"end\\\":\\\"$|(?=#|})\\\",\\\"name\\\":\\\"meta.require.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.ruby\\\"}},\\\"match\\\":\\\"(@)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.instance.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.ruby\\\"}},\\\"match\\\":\\\"(@@)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.class.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.ruby\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.global.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.ruby\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)(!|@|&|`|'|\\\\\\\\+|\\\\\\\\d+|~|=|/|\\\\\\\\\\\\\\\\|,|;|\\\\\\\\.|<|>|_|\\\\\\\\*|\\\\\\\\$|\\\\\\\\?|:|\\\\\\\"|-[0adFiIlpv])\\\",\\\"name\\\":\\\"variable.other.readwrite.global.pre-defined.ruby\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(ENV)\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"name\\\":\\\"meta.environment-variable.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b[A-Z]\\\\\\\\w*(?=((\\\\\\\\.|::)[A-Za-z]|\\\\\\\\[))\\\",\\\"name\\\":\\\"support.class.ruby\\\"},{\\\"match\\\":\\\"\\\\\\\\b((abort|at_exit|autoload|binding|callcc|caller|caller_locations|chomp|chop|eval|exec|exit|fork|format|gets|global_variables|gsub|lambda|load|local_variables|open|p|print|printf|proc|putc|puts|rand|readline|readlines|select|set_trace_func|sleep|spawn|sprintf|srand|sub|syscall|system|test|trace_var|trap|untrace_var|warn)\\\\\\\\b(?![?!])|autoload\\\\\\\\?|exit!)\\\",\\\"name\\\":\\\"support.function.kernel.ruby\\\"},{\\\"match\\\":\\\"\\\\\\\\b[_A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.constant.ruby\\\"},{\\\"begin\\\":\\\"(->)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.kernel.ruby\\\"}},\\\"comment\\\":\\\"Lambda parameters.\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[&*_a-zA-Z])\\\",\\\"end\\\":\\\"(?=[,)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method_parameters\\\"}]},{\\\"include\\\":\\\"#method_parameters\\\"}]},{\\\"begin\\\":\\\"(?=def\\\\\\\\b)(?<=^|\\\\\\\\s)(def)\\\\\\\\s+((?>[a-zA-Z_]\\\\\\\\w*(?>\\\\\\\\.|::))?(?>[a-zA-Z_]\\\\\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&`/\\\\\\\\|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[]=?))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.ruby\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.ruby\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.ruby\\\"}},\\\"comment\\\":\\\"The method pattern comes from the symbol pattern. See there for an explanation.\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.ruby\\\"}},\\\"name\\\":\\\"meta.function.method.with-arguments.ruby\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[&*_a-zA-Z])\\\",\\\"end\\\":\\\"(?=[,)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method_parameters\\\"}]},{\\\"include\\\":\\\"#method_parameters\\\"}]},{\\\"begin\\\":\\\"(?=def\\\\\\\\b)(?<=^|\\\\\\\\s)(def)\\\\\\\\s+((?>[a-zA-Z_]\\\\\\\\w*(?>\\\\\\\\.|::))?(?>[a-zA-Z_]\\\\\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&`/\\\\\\\\|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[]=?))[ \\\\\\\\t](?=[ \\\\\\\\t]*[^\\\\\\\\s#;])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.ruby\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.ruby\\\"}},\\\"comment\\\":\\\"same as the previous rule, but without parentheses around the arguments\\\",\\\"end\\\":\\\"(?=;)|(?<=[\\\\\\\\w\\\\\\\\])}`'\\\\\\\"!?])(?=\\\\\\\\s*#|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"meta.function.method.with-arguments.ruby\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[&*_a-zA-Z])\\\",\\\"end\\\":\\\"(?=,|;|\\\\\\\\s*#|\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method_parameters\\\"}]},{\\\"include\\\":\\\"#method_parameters\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.ruby\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.ruby\\\"}},\\\"comment\\\":\\\" the optional name is just to catch the def also without a method-name\\\",\\\"match\\\":\\\"(?=def\\\\\\\\b)(?<=^|\\\\\\\\s)(def)\\\\\\\\b(\\\\\\\\s+((?>[a-zA-Z_]\\\\\\\\w*(?>\\\\\\\\.|::))?(?>[a-zA-Z_]\\\\\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&`/\\\\\\\\|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[]=?)))?\\\",\\\"name\\\":\\\"meta.function.method.without-arguments.ruby\\\"},{\\\"match\\\":\\\"\\\\\\\\b([\\\\\\\\d](?>_?\\\\\\\\d)*(\\\\\\\\.(?![^[:space:][:digit:]])(?>_?\\\\\\\\d)*)?([eE][-+]?\\\\\\\\d(?>_?\\\\\\\\d)*)?|0(?:[xX]\\\\\\\\h(?>_?\\\\\\\\h)*|[oO]?[0-7](?>_?[0-7])*|[bB][01](?>_?[01])*|[dD]\\\\\\\\d(?>_?\\\\\\\\d)*))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.ruby\\\"},{\\\"begin\\\":\\\":'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.begin.ruby\\\"}},\\\"comment\\\":\\\"symbol literal with '' delimiter\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"}]},{\\\"begin\\\":\\\":\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.symbol.begin.ruby\\\"}},\\\"comment\\\":\\\"symbol literal with \\\\\\\"\\\\\\\" delimiter\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.symbol.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"comment\\\":\\\"Needs higher precedence than regular expressions.\\\",\\\"match\\\":\\\"(?<!\\\\\\\\()/=\\\",\\\"name\\\":\\\"keyword.operator.assignment.augmented.ruby\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"comment\\\":\\\"string literal with '' delimiter\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.single.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\'|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"comment\\\":\\\"string literal with interpolation and \\\\\\\"\\\\\\\" delimiter\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.double.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\.)`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"comment\\\":\\\"execute string (allows for interpolation)\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?<![\\\\\\\\w)])((/))(?![?*+])(?=(?:\\\\\\\\\\\\\\\\/|[^/])*+/[eimnosux]*\\\\\\\\s*(?:[)\\\\\\\\]}#.,?:]|\\\\\\\\|\\\\\\\\||&&|<=>|=>|==|=~|!~|!=|;|$|if|else|elsif|then|do|end|unless|while|until|or|and)|$)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.interpolated.ruby\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.regexp.ruby\\\"}},\\\"comment\\\":\\\"regular expression literal with interpolation\\\",\\\"contentName\\\":\\\"string.regexp.interpolated.ruby\\\",\\\"end\\\":\\\"((/[eimnosux]*))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"begin\\\":\\\"%r{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.regexp.begin.ruby\\\"}},\\\"end\\\":\\\"}[eimnosux]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.regexp.end.ruby\\\"}},\\\"name\\\":\\\"string.regexp.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_curly_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.regexp.begin.ruby\\\"}},\\\"end\\\":\\\"][eimnosux]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.regexp.end.ruby\\\"}},\\\"name\\\":\\\"string.regexp.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_brackets_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.regexp.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)[eimnosux]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.regexp.end.ruby\\\"}},\\\"name\\\":\\\"string.regexp.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_parens_r\\\"}]},{\\\"begin\\\":\\\"%r<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.regexp.begin.ruby\\\"}},\\\"end\\\":\\\">[eimnosux]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.regexp.end.ruby\\\"}},\\\"name\\\":\\\"string.regexp.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_ltgt_r\\\"}]},{\\\"begin\\\":\\\"%r([^\\\\\\\\w])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.regexp.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\1[eimnosux]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.regexp.end.ruby\\\"}},\\\"name\\\":\\\"string.regexp.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"begin\\\":\\\"%I\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},{\\\"begin\\\":\\\"%I\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},{\\\"begin\\\":\\\"%I<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},{\\\"begin\\\":\\\"%I{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},{\\\"begin\\\":\\\"%I([^\\\\\\\\w])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"%i\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_brackets\\\"}]},{\\\"begin\\\":\\\"%i\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_parens\\\"}]},{\\\"begin\\\":\\\"%i<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\>|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_ltgt\\\"}]},{\\\"begin\\\":\\\"%i{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\}|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_curly\\\"}]},{\\\"begin\\\":\\\"%i([^\\\\\\\\w])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.ruby\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Cant be named because its not necessarily an escape.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\"}]},{\\\"begin\\\":\\\"%W\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},{\\\"begin\\\":\\\"%W\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},{\\\"begin\\\":\\\"%W<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},{\\\"begin\\\":\\\"%W{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},{\\\"begin\\\":\\\"%W([^\\\\\\\\w])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"%w\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_brackets\\\"}]},{\\\"begin\\\":\\\"%w\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_parens\\\"}]},{\\\"begin\\\":\\\"%w<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\>|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_ltgt\\\"}]},{\\\"begin\\\":\\\"%w{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\}|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_curly\\\"}]},{\\\"begin\\\":\\\"%w([^\\\\\\\\w])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.ruby\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Cant be named because its not necessarily an escape.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\"}]},{\\\"begin\\\":\\\"%[Qx]?\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},{\\\"begin\\\":\\\"%[Qx]?\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},{\\\"begin\\\":\\\"%[Qx]?{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},{\\\"begin\\\":\\\"%[Qx]?<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},{\\\"begin\\\":\\\"%[Qx]([^\\\\\\\\w])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"%([^\\\\\\\\w\\\\\\\\s=])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.interpolated.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"%q\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_parens\\\"}]},{\\\"begin\\\":\\\"%q<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\>|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_ltgt\\\"}]},{\\\"begin\\\":\\\"%q\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_brackets\\\"}]},{\\\"begin\\\":\\\"%q{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\}|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_curly\\\"}]},{\\\"begin\\\":\\\"%q([^\\\\\\\\w])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.quoted.other.ruby\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Cant be named because its not necessarily an escape.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\"}]},{\\\"begin\\\":\\\"%s\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_parens\\\"}]},{\\\"begin\\\":\\\"%s<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.begin.ruby\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\>|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_ltgt\\\"}]},{\\\"begin\\\":\\\"%s\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.begin.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_brackets\\\"}]},{\\\"begin\\\":\\\"%s{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.begin.ruby\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\}|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},{\\\"include\\\":\\\"#nest_curly\\\"}]},{\\\"begin\\\":\\\"%s([^\\\\\\\\w])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.end.ruby\\\"}},\\\"name\\\":\\\"constant.language.symbol.ruby\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Cant be named because its not necessarily an escape.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.ruby\\\"}},\\\"comment\\\":\\\"symbols\\\",\\\"match\\\":\\\"(?<!:)(:)(?>[$a-zA-Z_]\\\\\\\\w*(?>[?!]|=(?![>=]))?|===?|<=>|>[>=]?|<[<=]?|[%&`/\\\\\\\\|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[]=?|@@?[a-zA-Z_]\\\\\\\\w*)\\\",\\\"name\\\":\\\"constant.language.symbol.ruby\\\"},{\\\"begin\\\":\\\"^=begin\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"}},\\\"comment\\\":\\\"multiline comments\\\",\\\"end\\\":\\\"^=end\\\",\\\"name\\\":\\\"comment.block.documentation.ruby\\\"},{\\\"include\\\":\\\"#yard\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ruby\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby\\\"}]},{\\\"comment\\\":\\\"\\\\n\\\\t\\\\t\\\\tmatches questionmark-letters.\\\\n\\\\n\\\\t\\\\t\\\\texamples (1st alternation = hex):\\\\n\\\\t\\\\t\\\\t?\\\\\\\\x1 ?\\\\\\\\x61\\\\n\\\\n\\\\t\\\\t\\\\texamples (2nd alternation = octal):\\\\n\\\\t\\\\t\\\\t?\\\\\\\\0 ?\\\\\\\\07 ?\\\\\\\\017\\\\n\\\\n\\\\t\\\\t\\\\texamples (3rd alternation = escaped):\\\\n\\\\t\\\\t\\\\t?\\\\\\\\n ?\\\\\\\\b\\\\n\\\\n\\\\t\\\\t\\\\texamples (4th alternation = meta-ctrl):\\\\n\\\\t\\\\t\\\\t?\\\\\\\\C-a ?\\\\\\\\M-a ?\\\\\\\\C-\\\\\\\\M-\\\\\\\\C-\\\\\\\\M-a\\\\n\\\\n\\\\t\\\\t\\\\texamples (4th alternation = normal):\\\\n\\\\t\\\\t\\\\t?a ?A ?0 \\\\n\\\\t\\\\t\\\\t?* ?\\\\\\\" ?( \\\\n\\\\t\\\\t\\\\t?. ?#\\\\n\\\\t\\\\t\\\\t\\\\n\\\\t\\\\t\\\\t\\\\n\\\\t\\\\t\\\\tthe negative lookbehind prevents against matching\\\\n\\\\t\\\\t\\\\tp(42.tainted?)\\\\n\\\\t\\\\t\\\\t\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w)\\\\\\\\?(\\\\\\\\\\\\\\\\(x\\\\\\\\h{1,2}(?!\\\\\\\\h)\\\\\\\\b|0[0-7]{0,2}(?![0-7])\\\\\\\\b|[^x0MC])|(\\\\\\\\\\\\\\\\[MC]-)+\\\\\\\\w|[^\\\\\\\\s\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"constant.numeric.ruby\\\"},{\\\"begin\\\":\\\"^__END__\\\\\\\\n\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.unquoted.program-block.ruby\\\"}},\\\"comment\\\":\\\"__END__ marker\\\",\\\"contentName\\\":\\\"text.plain\\\",\\\"end\\\":\\\"(?=not)impossible\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=<?xml|<(?i:html\\\\\\\\b)|!DOCTYPE (?i:html\\\\\\\\b))\\\",\\\"end\\\":\\\"(?=not)impossible\\\",\\\"name\\\":\\\"text.html.embedded.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)HTML)\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded HTML\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)HTML)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"text.html\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)HAML)\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded HAML\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.haml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)HAML)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"text.haml\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"text.haml\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)XML)\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded XML\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.xml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)XML)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"text.xml\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"text.xml\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)SQL)\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded SQL\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.sql\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)SQL)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.sql\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.sql\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)(?:GRAPHQL|GQL))\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded GraphQL\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.graphql\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)(?:GRAPHQL|GQL))\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.graphql\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.graphql\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)CSS)\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded CSS\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)CSS)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.css\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)CPP)\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded C++\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.cpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)CPP)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.cpp\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.cpp\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)C)\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded C\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.c\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)C)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.c\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.c\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded Javascript\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.js\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)JQUERY)\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded jQuery Javascript\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.js.jquery\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)JQUERY)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.js.jquery\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.js.jquery\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)(?:SH|SHELL))\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded Shell\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.shell\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)(?:SH|SHELL))\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.shell\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.shell\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)LUA)\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded Lua\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.lua\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)LUA)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.lua\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.lua\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)RUBY)\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded Ruby\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.ruby\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)RUBY)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.ruby\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)(?:YAML|YML))\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded YAML\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.yaml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)(?:YAML|YML))\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.yaml\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"source.yaml\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?=(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)SLIM)\\\\\\\\b\\\\\\\\1))\\\",\\\"comment\\\":\\\"Heredoc with embedded Slim\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.embedded.block.slim\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?><<[-~]([\\\\\\\"'`]?)((?:[_\\\\\\\\w]+_|)SLIM)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"contentName\\\":\\\"text.slim\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"text.slim\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]}]},{\\\"begin\\\":\\\"(?>=\\\\\\\\s*<<([\\\\\\\"'`]?)(\\\\\\\\w+)\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"}},\\\"end\\\":\\\"^\\\\\\\\2$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?>((<<[-~]([\\\\\\\"'`]?)(\\\\\\\\w+)\\\\\\\\3,\\\\\\\\s?)*<<[-~]([\\\\\\\"'`]?)(\\\\\\\\w+)\\\\\\\\5))(.*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ruby\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}]}},\\\"comment\\\":\\\"heredoc with multiple inputs and indented terminator\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\6$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ruby\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?<={|{\\\\\\\\s|[^A-Za-z0-9_:@$]do|^do|[^A-Za-z0-9_:@$]do\\\\\\\\s|^do\\\\\\\\s)(\\\\\\\\|)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.variable.ruby\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\|)(\\\\\\\\|)(?!\\\\\\\\|)\\\",\\\"name\\\":\\\"meta.block.parameters.ruby\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?![\\\\\\\\s,|(])\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\|\\\\\\\\s*)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.variable.ruby\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.block.ruby\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.block.unused.ruby variable.other.constant.ruby\\\"}},\\\"match\\\":\\\"\\\\\\\\G([&*]?)([a-zA-Z][\\\\\\\\w_]*)|(_[\\\\\\\\w_]*)\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.variable.ruby\\\"}]},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"punctuation.separator.key-value\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"support.function.kernel.ruby\\\"},{\\\"match\\\":\\\"<<=|%=|&{1,2}=|\\\\\\\\*=|\\\\\\\\*\\\\\\\\*=|\\\\\\\\+=|-=|\\\\\\\\^=|\\\\\\\\|{1,2}=|<<\\\",\\\"name\\\":\\\"keyword.operator.assignment.augmented.ruby\\\"},{\\\"match\\\":\\\"<=>|<(?!<|=)|>(?!<|=|>)|<=|>=|===|==|=~|!=|!~|(?<=[ \\\\\\\\t])\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.comparison.ruby\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(and|not|or)\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"keyword.operator.logical.ruby\\\"},{\\\"match\\\":\\\"(?<=^|[ \\\\\\\\t!])!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\^\\\",\\\"name\\\":\\\"keyword.operator.logical.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.ruby\\\"}},\\\"comment\\\":\\\"Safe navigation operator\\\",\\\"match\\\":\\\"(&\\\\\\\\.)\\\\\\\\s*(?![A-Z])\\\"},{\\\"match\\\":\\\"(%|&|\\\\\\\\*\\\\\\\\*|\\\\\\\\*|\\\\\\\\+|-|/)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.ruby\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.ruby\\\"},{\\\"match\\\":\\\"\\\\\\\\||~|>>\\\",\\\"name\\\":\\\"keyword.operator.other.ruby\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.separator.statement.ruby\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.object.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.ruby\\\"}},\\\"comment\\\":\\\"Mark as namespace separator if double colons followed by capital letter\\\",\\\"match\\\":\\\"(::)\\\\\\\\s*(?=[A-Z])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.method.ruby\\\"}},\\\"comment\\\":\\\"Mark as method separator if double colons not followed by capital letter\\\",\\\"match\\\":\\\"(\\\\\\\\.|::)\\\\\\\\s*(?![A-Z])\\\"},{\\\"comment\\\":\\\"Must come after method and constant separators to prefer double colons\\\",\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.other.ruby\\\"},{\\\"match\\\":\\\"{\\\",\\\"name\\\":\\\"punctuation.section.scope.begin.ruby\\\"},{\\\"match\\\":\\\"}\\\",\\\"name\\\":\\\"punctuation.section.scope.end.ruby\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"},{\\\"match\\\":\\\"]\\\",\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"},{\\\"match\\\":\\\"\\\\\\\\(|\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.section.function.ruby\\\"},{\\\"begin\\\":\\\"(?<=[^\\\\\\\\.]\\\\\\\\.|::)(?=[a-zA-Z][a-zA-Z0-9_!?]*[^a-zA-Z0-9_!?])\\\",\\\"end\\\":\\\"(?<=[a-zA-Z0-9_!?])(?=[^a-zA-Z0-9_!?])\\\",\\\"name\\\":\\\"meta.function-call.ruby\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([a-zA-Z][a-zA-Z0-9_!?]*)(?=[^a-zA-Z0-9_!?])\\\",\\\"name\\\":\\\"entity.name.function.ruby\\\"}]},{\\\"begin\\\":\\\"([a-zA-Z]\\\\\\\\w*[!?]?)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.ruby\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.ruby\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.ruby\\\"}},\\\"name\\\":\\\"meta.function-call.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}],\\\"repository\\\":{\\\"escaped_char\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[0-7]{1,3}|x[\\\\\\\\da-fA-F]{1,2}|.)\\\",\\\"name\\\":\\\"constant.character.escape.ruby\\\"},\\\"heredoc\\\":{\\\"begin\\\":\\\"^<<[-~]?\\\\\\\\w+\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"interpolated_ruby\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.ruby\\\"}},\\\"contentName\\\":\\\"source.ruby\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.ruby\\\"}},\\\"name\\\":\\\"meta.embedded.line.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.ruby\\\"}},\\\"match\\\":\\\"(#@)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.instance.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.ruby\\\"}},\\\"match\\\":\\\"(#@@)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.class.ruby\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.ruby\\\"}},\\\"match\\\":\\\"(#\\\\\\\\$)[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.global.ruby\\\"}]},\\\"method_parameters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#braces\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#params\\\"},{\\\"include\\\":\\\"$self\\\"}],\\\"repository\\\":{\\\"braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.ruby\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#braces\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.ruby\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#braces\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"params\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.variable.ruby\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.symbol.hashkey.parameter.function.ruby\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.constant.ruby\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.ruby\\\"}},\\\"match\\\":\\\"\\\\\\\\G(&|\\\\\\\\*\\\\\\\\*?)?(?:([_a-zA-Z]\\\\\\\\w*[?!]?(:))|([_a-zA-Z]\\\\\\\\w*))\\\"},\\\"parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.ruby\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#braces\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"$self\\\"}]}}},\\\"nest_brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_brackets\\\"}]},\\\"nest_brackets_i\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},\\\"nest_brackets_r\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_brackets_r\\\"}]},\\\"nest_curly\\\":{\\\"begin\\\":\\\"{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly\\\"}]},\\\"nest_curly_and_self\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"nest_curly_i\\\":{\\\"begin\\\":\\\"{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},\\\"nest_curly_r\\\":{\\\"begin\\\":\\\"{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_curly_r\\\"}]},\\\"nest_ltgt\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_ltgt\\\"}]},\\\"nest_ltgt_i\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},\\\"nest_ltgt_r\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_ltgt_r\\\"}]},\\\"nest_parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_parens\\\"}]},\\\"nest_parens_i\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},\\\"nest_parens_r\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_parens_r\\\"}]},\\\"regex_sub\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_ruby\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.ruby\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.ruby\\\"}},\\\"match\\\":\\\"({)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repetition.ruby\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.ruby\\\"}},\\\"end\\\":\\\"]\\\",\\\"name\\\":\\\"string.regexp.character-class.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.ruby\\\"}},\\\"name\\\":\\\"comment.line.number-sign.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.ruby\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"string.regexp.group.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"begin\\\":\\\"(?<=^|\\\\\\\\s)(#)\\\\\\\\s(?=[[a-zA-Z0-9,. \\\\\\\\t?!-][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"}},\\\"comment\\\":\\\"We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"}},\\\"name\\\":\\\"comment.line.number-sign.ruby\\\"}]},\\\"yard\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#yard_comment\\\"},{\\\"include\\\":\\\"#yard_param_types\\\"},{\\\"include\\\":\\\"#yard_option\\\"},{\\\"include\\\":\\\"#yard_tag\\\"},{\\\"include\\\":\\\"#yard_types\\\"},{\\\"include\\\":\\\"#yard_directive\\\"},{\\\"include\\\":\\\"#yard_see\\\"},{\\\"include\\\":\\\"#yard_macro_attribute\\\"}]},\\\"yard_comment\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(#)(\\\\\\\\s*)(@)(abstract|api|author|deprecated|example|macro|note|overload|since|todo|version)(?=\\\\\\\\s|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.line.keyword.punctuation.yard.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.line.keyword.yard.ruby\\\"}},\\\"comment\\\":\\\"For YARD tags that follow the tag-comment pattern\\\",\\\"contentName\\\":\\\"comment.line.string.yard.ruby\\\",\\\"end\\\":\\\"^(?!\\\\\\\\s*#\\\\\\\\3\\\\\\\\s{2,}|\\\\\\\\s*#\\\\\\\\s*$)\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#yard\\\"},{\\\"include\\\":\\\"#yard_continuation\\\"}]},\\\"yard_continuation\\\":{\\\"match\\\":\\\"^\\\\\\\\s*#\\\",\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"},\\\"yard_directive\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(#)(\\\\\\\\s*)(@!)(endgroup|group|method|parse|scope|visibility)(\\\\\\\\s+((\\\\\\\\[).+(])))?(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.line.keyword.punctuation.yard.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.line.keyword.yard.ruby\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.line.type.yard.ruby\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"}},\\\"comment\\\":\\\"For YARD directives\\\",\\\"contentName\\\":\\\"comment.line.string.yard.ruby\\\",\\\"end\\\":\\\"^(?!\\\\\\\\s*#\\\\\\\\3\\\\\\\\s{2,}|\\\\\\\\s*#\\\\\\\\s*$)\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#yard\\\"},{\\\"include\\\":\\\"#yard_continuation\\\"}]},\\\"yard_macro_attribute\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(#)(\\\\\\\\s*)(@!)(attribute|macro)(\\\\\\\\s+((\\\\\\\\[).+(])))?(?=\\\\\\\\s)(\\\\\\\\s+([a-z_]\\\\\\\\w*:?))?\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.line.keyword.punctuation.yard.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.line.keyword.yard.ruby\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.line.type.yard.ruby\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"},\\\"11\\\":{\\\"name\\\":\\\"comment.line.parameter.yard.ruby\\\"}},\\\"comment\\\":\\\"separate rule for attribute and macro tags because name goes after []\\\",\\\"contentName\\\":\\\"comment.line.string.yard.ruby\\\",\\\"end\\\":\\\"^(?!\\\\\\\\s*#\\\\\\\\3\\\\\\\\s{2,}|\\\\\\\\s*#\\\\\\\\s*$)\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#yard\\\"},{\\\"include\\\":\\\"#yard_continuation\\\"}]},\\\"yard_option\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(#)(\\\\\\\\s*)(@)(option)(?=\\\\\\\\s)(?>\\\\\\\\s+([a-z_]\\\\\\\\w*:?))?(?>\\\\\\\\s+((\\\\\\\\[).+(])))?(?>\\\\\\\\s+((\\\\\\\\S*)))?(?>\\\\\\\\s+((\\\\\\\\().+(\\\\\\\\))))?\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.line.keyword.punctuation.yard.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.line.keyword.yard.ruby\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.line.parameter.yard.ruby\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.line.type.yard.ruby\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.line.keyword.yard.ruby\\\"},\\\"11\\\":{\\\"name\\\":\\\"comment.line.hashkey.yard.ruby\\\"},\\\"12\\\":{\\\"name\\\":\\\"comment.line.defaultvalue.yard.ruby\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"},\\\"14\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"}},\\\"comment\\\":\\\"For YARD option tag that follow the tag-name-types-key-(value)-description pattern\\\",\\\"contentName\\\":\\\"comment.line.string.yard.ruby\\\",\\\"end\\\":\\\"^(?!\\\\\\\\s*#\\\\\\\\3\\\\\\\\s{2,}|\\\\\\\\s*#\\\\\\\\s*$)\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#yard\\\"},{\\\"include\\\":\\\"#yard_continuation\\\"}]},\\\"yard_param_types\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(#)(\\\\\\\\s*)(@)(attr|attr_reader|attr_writer|yieldparam|param)(?=\\\\\\\\s)(?>\\\\\\\\s+(?>([a-z_]\\\\\\\\w*:?)|((\\\\\\\\[).+(]))))?(?>\\\\\\\\s+(?>((\\\\\\\\[).+(]))|([a-z_]\\\\\\\\w*:?)))?\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.line.keyword.punctuation.yard.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.line.keyword.yard.ruby\\\"},\\\"6\\\":{\\\"name\\\":\\\"comment.line.parameter.yard.ruby\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.line.type.yard.ruby\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"},\\\"10\\\":{\\\"name\\\":\\\"comment.line.type.yard.ruby\\\"},\\\"11\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"},\\\"12\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"},\\\"13\\\":{\\\"name\\\":\\\"comment.line.parameter.yard.ruby\\\"}},\\\"comment\\\":\\\"For YARD tags that follow the tag-name-types-description or tag-types-name-description pattern\\\",\\\"contentName\\\":\\\"comment.line.string.yard.ruby\\\",\\\"end\\\":\\\"^(?!\\\\\\\\s*#\\\\\\\\3\\\\\\\\s{2,}|\\\\\\\\s*#\\\\\\\\s*$)\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#yard\\\"},{\\\"include\\\":\\\"#yard_continuation\\\"}]},\\\"yard_see\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(#)(\\\\\\\\s*)(@)(see)(?=\\\\\\\\s)(\\\\\\\\s+(.+?))?(?=\\\\\\\\s|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.line.keyword.punctuation.yard.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.line.keyword.yard.ruby\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.line.parameter.yard.ruby\\\"}},\\\"comment\\\":\\\"separate rule for @see because name could contain url\\\",\\\"contentName\\\":\\\"comment.line.string.yard.ruby\\\",\\\"end\\\":\\\"^(?!\\\\\\\\s*#\\\\\\\\3\\\\\\\\s{2,}|\\\\\\\\s*#\\\\\\\\s*$)\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#yard\\\"},{\\\"include\\\":\\\"#yard_continuation\\\"}]},\\\"yard_tag\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.line.keyword.punctuation.yard.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.line.keyword.yard.ruby\\\"}},\\\"comment\\\":\\\"For YARD tags that are just the tag\\\",\\\"match\\\":\\\"^(\\\\\\\\s*)(#)(\\\\\\\\s*)(@)(private)$\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby\\\"},\\\"yard_types\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(#)(\\\\\\\\s*)(@)(raise|return|yield(?:return)?)(?=\\\\\\\\s)(\\\\\\\\s+((\\\\\\\\[).+(])))?\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.line.keyword.punctuation.yard.ruby\\\"},\\\"5\\\":{\\\"name\\\":\\\"comment.line.keyword.yard.ruby\\\"},\\\"7\\\":{\\\"name\\\":\\\"comment.line.type.yard.ruby\\\"},\\\"8\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"},\\\"9\\\":{\\\"name\\\":\\\"comment.line.punctuation.yard.ruby\\\"}},\\\"comment\\\":\\\"For YARD tags that follow the tag-types-comment pattern\\\",\\\"contentName\\\":\\\"comment.line.string.yard.ruby\\\",\\\"end\\\":\\\"^(?!\\\\\\\\s*#\\\\\\\\3\\\\\\\\s{2,}|\\\\\\\\s*#\\\\\\\\s*$)\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#yard\\\"},{\\\"include\\\":\\\"#yard_continuation\\\"}]}},\\\"scopeName\\\":\\\"source.ruby\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"haml\\\",\\\"xml\\\",\\\"sql\\\",\\\"graphql\\\",\\\"css\\\",\\\"cpp\\\",\\\"c\\\",\\\"javascript\\\",\\\"shellscript\\\",\\\"lua\\\",\\\"yaml\\\"],\\\"aliases\\\":[\\\"rb\\\"]}\"))\n\nexport default [\n...html,\n...haml,\n...xml,\n...sql,\n...graphql,\n...css,\n...cpp,\n...c,\n...javascript,\n...shellscript,\n...lua,\n...yaml,\nlang\n]\n", "import html from './html.mjs'\nimport ruby from './ruby.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"ERB\\\",\\\"fileTypes\\\":[\\\"erb\\\",\\\"rhtml\\\",\\\"html.erb\\\"],\\\"injections\\\":{\\\"text.html.erb - (meta.embedded.block.erb | meta.embedded.line.erb | comment)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^\\\\\\\\s*)(?=<%+#(?![^%]*%>))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.erb\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.trailing.erb\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(^\\\\\\\\s*)(?=<%(?![^%]*%>))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.erb\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.erb\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tags\\\"}]},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#tags\\\"}]}},\\\"name\\\":\\\"erb\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}],\\\"repository\\\":{\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"<%+#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.erb\\\"}},\\\"end\\\":\\\"%>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.erb\\\"}},\\\"name\\\":\\\"comment.block.erb\\\"}]},\\\"tags\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"<%+(?!>)[-=]?(?![^%]*%>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.erb\\\"}},\\\"contentName\\\":\\\"source.ruby\\\",\\\"end\\\":\\\"(-?%)>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.erb\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.ruby\\\"}},\\\"name\\\":\\\"meta.embedded.block.erb\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.erb\\\"}},\\\"match\\\":\\\"(#).*?(?=-?%>)\\\",\\\"name\\\":\\\"comment.line.number-sign.erb\\\"},{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"begin\\\":\\\"<%+(?!>)[-=]?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.erb\\\"}},\\\"contentName\\\":\\\"source.ruby\\\",\\\"end\\\":\\\"(-?%)>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.erb\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.ruby\\\"}},\\\"name\\\":\\\"meta.embedded.line.erb\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.erb\\\"}},\\\"match\\\":\\\"(#).*?(?=-?%>)\\\",\\\"name\\\":\\\"comment.line.number-sign.erb\\\"},{\\\"include\\\":\\\"source.ruby\\\"}]}]}},\\\"scopeName\\\":\\\"text.html.erb\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"ruby\\\"]}\"))\n\nexport default [\n...html,\n...ruby,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Erlang\\\",\\\"fileTypes\\\":[\\\"erl\\\",\\\"escript\\\",\\\"hrl\\\",\\\"xrl\\\",\\\"yrl\\\"],\\\"name\\\":\\\"erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#module-directive\\\"},{\\\"include\\\":\\\"#import-export-directive\\\"},{\\\"include\\\":\\\"#behaviour-directive\\\"},{\\\"include\\\":\\\"#record-directive\\\"},{\\\"include\\\":\\\"#define-directive\\\"},{\\\"include\\\":\\\"#macro-directive\\\"},{\\\"include\\\":\\\"#directive\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#everything-else\\\"}],\\\"repository\\\":{\\\"atom\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.begin.erlang\\\"}},\\\"end\\\":\\\"(')\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.end.erlang\\\"}},\\\"name\\\":\\\"constant.other.symbol.quoted.single.erlang\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.escape.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.escape.erlang\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)([bdefnrstv\\\\\\\\\\\\\\\\'\\\\\\\"]|(\\\\\\\\^)[@-_a-z]|[0-7]{1,3}|x[\\\\\\\\da-fA-F]{2})\\\",\\\"name\\\":\\\"constant.other.symbol.escape.erlang\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\^?.?\\\",\\\"name\\\":\\\"invalid.illegal.atom.erlang\\\"}]},{\\\"match\\\":\\\"[a-z][a-zA-Z\\\\\\\\d@_]*+\\\",\\\"name\\\":\\\"constant.other.symbol.unquoted.erlang\\\"}]},\\\"behaviour-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.behaviour.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.behaviour.definition.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+(behaviour)\\\\\\\\s*+(\\\\\\\\()\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+)\\\\\\\\s*+(\\\\\\\\))\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"name\\\":\\\"meta.directive.behaviour.erlang\\\"},\\\"binary\\\":{\\\"begin\\\":\\\"(<<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.binary.begin.erlang\\\"}},\\\"end\\\":\\\"(>>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.binary.end.erlang\\\"}},\\\"name\\\":\\\"meta.structure.binary.erlang\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.binary.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.value-size.erlang\\\"}},\\\"match\\\":\\\"(,)|(:)\\\"},{\\\"include\\\":\\\"#internal-type-specifiers\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},\\\"character\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.escape.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.escape.erlang\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)((\\\\\\\\\\\\\\\\)([bdefnrstv\\\\\\\\\\\\\\\\'\\\\\\\"]|(\\\\\\\\^)[@-_a-z]|[0-7]{1,3}|x[\\\\\\\\da-fA-F]{2}))\\\",\\\"name\\\":\\\"constant.character.erlang\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\\\\\\\\\\\\\\\\\\\\\\^?.?\\\",\\\"name\\\":\\\"invalid.illegal.character.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character.erlang\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)[ \\\\\\\\S]\\\",\\\"name\\\":\\\"constant.character.erlang\\\"},{\\\"match\\\":\\\"\\\\\\\\$.?\\\",\\\"name\\\":\\\"invalid.illegal.character.erlang\\\"}]},\\\"comment\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=%)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.erlang\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.erlang\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.percentage.erlang\\\"}]},\\\"define-directive\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+(define)\\\\\\\\s*+(\\\\\\\\()\\\\\\\\s*+([a-zA-Z\\\\\\\\d@_]++)\\\\\\\\s*+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.define.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.macro.definition.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"name\\\":\\\"meta.directive.define.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"begin\\\":\\\"(?=^\\\\\\\\s*+-\\\\\\\\s*+define\\\\\\\\s*+\\\\\\\\(\\\\\\\\s*+[a-zA-Z\\\\\\\\d@_]++\\\\\\\\s*+\\\\\\\\()\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"name\\\":\\\"meta.directive.define.erlang\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+(define)\\\\\\\\s*+(\\\\\\\\()\\\\\\\\s*+([a-zA-Z\\\\\\\\d@_]++)\\\\\\\\s*+(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.define.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.macro.definition.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*(,)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.erlang\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameters.erlang\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"match\\\":\\\"\\\\\\\\|\\\\\\\\||\\\\\\\\||:|;|,|\\\\\\\\.|->\\\",\\\"name\\\":\\\"punctuation.separator.define.erlang\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]}]},\\\"directive\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+)\\\\\\\\s*+(\\\\\\\\(?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\)?)\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"name\\\":\\\"meta.directive.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+)\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"name\\\":\\\"meta.directive.erlang\\\"}]},\\\"docstring\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\")(([\\\\\\\"]{3,})\\\\\\\\s*)(\\\\\\\\S.*)?$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.string.quoted.triple.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.string.erlang\\\"}},\\\"comment\\\":\\\"Only whitespace characters are allowed after the beggining and before the closing sequences and those cannot be in the same line\\\",\\\"end\\\":\\\"^(\\\\\\\\s*(\\\\\\\\2))(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.string.quoted.triple.end.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.triple.erlang\\\"},\\\"everything-else\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#record-usage\\\"},{\\\"include\\\":\\\"#macro-usage\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#textual-operator\\\"},{\\\"include\\\":\\\"#language-constant\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#tuple\\\"},{\\\"include\\\":\\\"#list\\\"},{\\\"include\\\":\\\"#binary\\\"},{\\\"include\\\":\\\"#parenthesized-expression\\\"},{\\\"include\\\":\\\"#character\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#atom\\\"},{\\\"include\\\":\\\"#sigil-docstring\\\"},{\\\"include\\\":\\\"#sigil-string\\\"},{\\\"include\\\":\\\"#docstring\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#symbolic-operator\\\"},{\\\"include\\\":\\\"#variable\\\"}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(if)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.if.erlang\\\"}},\\\"end\\\":\\\"\\\\\\\\b(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.erlang\\\"}},\\\"name\\\":\\\"meta.expression.if.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-expression-punctuation\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(case)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.case.erlang\\\"}},\\\"end\\\":\\\"\\\\\\\\b(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.erlang\\\"}},\\\"name\\\":\\\"meta.expression.case.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-expression-punctuation\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(receive)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.receive.erlang\\\"}},\\\"end\\\":\\\"\\\\\\\\b(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.erlang\\\"}},\\\"name\\\":\\\"meta.expression.receive.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-expression-punctuation\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.fun.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.module.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.erlang\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.module-function.erlang\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.function.erlang\\\"},\\\"9\\\":{\\\"name\\\":\\\"variable.other.erlang\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.separator.function-arity.erlang\\\"}},\\\"comment\\\":\\\"Implicit function expression with optional module qualifier when both module and function can be atom or variable\\\",\\\"match\\\":\\\"\\\\\\\\b(fun)\\\\\\\\s+((([a-z][a-zA-Z\\\\\\\\d@_]*+)|(_[a-zA-Z\\\\\\\\d@_]++|[A-Z][a-zA-Z\\\\\\\\d@_]*+))\\\\\\\\s*+(:)\\\\\\\\s*+)?(([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')|(_[a-zA-Z\\\\\\\\d@_]++|[A-Z][a-zA-Z\\\\\\\\d@_]*+))\\\\\\\\s*(/)\\\",\\\"name\\\":\\\"meta.expression.fun.implicit.erlang\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(fun)\\\\\\\\s+(([a-z][a-zA-Z\\\\\\\\d@_]*+)|(_[a-zA-Z\\\\\\\\d@_]++|[A-Z][a-zA-Z\\\\\\\\d@_]*+))\\\\\\\\s*+(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.fun.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.module.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.module-function.erlang\\\"}},\\\"comment\\\":\\\"Implicit function expression with module qualifier when module can be atom or variable and function can by anything\\\",\\\"end\\\":\\\"(/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.function-arity.erlang\\\"}},\\\"name\\\":\\\"meta.expression.fun.implicit.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(fun)\\\\\\\\s+(?!\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.fun.erlang\\\"}},\\\"comment\\\":\\\"Implicit function expression when both module and function can by anything\\\",\\\"end\\\":\\\"(/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.function-arity.erlang\\\"}},\\\"name\\\":\\\"meta.expression.fun.implicit.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(fun)\\\\\\\\s*+(\\\\\\\\()(?=(\\\\\\\\s*+\\\\\\\\()|(\\\\\\\\)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"}},\\\"comment\\\":\\\"Function type in type specification\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(fun)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.fun.erlang\\\"}},\\\"comment\\\":\\\"Explicit function expression\\\",\\\"end\\\":\\\"\\\\\\\\b(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.erlang\\\"}},\\\"name\\\":\\\"meta.expression.fun.erlang\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\()\\\",\\\"end\\\":\\\"(;)|(?=\\\\\\\\bend\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.clauses.erlang\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-function-parts\\\"}]},{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(try)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.try.erlang\\\"}},\\\"end\\\":\\\"\\\\\\\\b(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.erlang\\\"}},\\\"name\\\":\\\"meta.expression.try.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-expression-punctuation\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(begin)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.begin.erlang\\\"}},\\\"end\\\":\\\"\\\\\\\\b(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.erlang\\\"}},\\\"name\\\":\\\"meta.expression.begin.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-expression-punctuation\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(maybe)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.maybe.erlang\\\"}},\\\"end\\\":\\\"\\\\\\\\b(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.erlang\\\"}},\\\"name\\\":\\\"meta.expression.maybe.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-expression-punctuation\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]}]},\\\"function\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')\\\\\\\\s*+(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.definition.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.function.erlang\\\"}},\\\"name\\\":\\\"meta.function.erlang\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.erlang\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')\\\\\\\\s*+(?=\\\\\\\\()\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\()\\\",\\\"end\\\":\\\"(;)|(?=\\\\\\\\.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.clauses.erlang\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthesized-expression\\\"},{\\\"include\\\":\\\"#internal-function-parts\\\"}]},{\\\"include\\\":\\\"#everything-else\\\"}]},\\\"function-call\\\":{\\\"begin\\\":\\\"(?=([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+'|_[a-zA-Z\\\\\\\\d@_]++|[A-Z][a-zA-Z\\\\\\\\d@_]*+)\\\\\\\\s*+(\\\\\\\\(|:\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+'|_[a-zA-Z\\\\\\\\d@_]++|[A-Z][a-zA-Z\\\\\\\\d@_]*+)\\\\\\\\s*+\\\\\\\\())\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"}},\\\"name\\\":\\\"meta.function-call.erlang\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"((erlang)\\\\\\\\s*+(:)\\\\\\\\s*+)?(is_atom|is_binary|is_constant|is_float|is_function|is_integer|is_list|is_number|is_pid|is_port|is_reference|is_tuple|is_record|abs|element|hd|length|node|round|self|size|tl|trunc)\\\\\\\\s*+(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.module.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.module-function.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.guard.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameters.erlang\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"begin\\\":\\\"((([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')|(_[a-zA-Z\\\\\\\\d@_]++|[A-Z][a-zA-Z\\\\\\\\d@_]*+))\\\\\\\\s*+(:)\\\\\\\\s*+)?(([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')|(_[a-zA-Z\\\\\\\\d@_]++|[A-Z][a-zA-Z\\\\\\\\d@_]*+))\\\\\\\\s*+(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.module.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.module-function.erlang\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.function.erlang\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.other.erlang\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameters.erlang\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]}]},\\\"import-export-directive\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+(import)\\\\\\\\s*+(\\\\\\\\()\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')\\\\\\\\s*+(,)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.import.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.module.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"name\\\":\\\"meta.directive.import.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-function-list\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+(export)\\\\\\\\s*+(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.export.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"name\\\":\\\"meta.directive.export.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-function-list\\\"}]}]},\\\"internal-expression-punctuation\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.clause-head-body.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.clauses.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.expressions.erlang\\\"}},\\\"match\\\":\\\"(->)|(;)|(,)\\\"},\\\"internal-function-list\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.list.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.list.end.erlang\\\"}},\\\"name\\\":\\\"meta.structure.list.function.erlang\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')\\\\\\\\s*+(/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.function-arity.erlang\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.list.erlang\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"include\\\":\\\"#everything-else\\\"}]},\\\"internal-function-parts\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\()\\\",\\\"end\\\":\\\"(->)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.clause-head-body.erlang\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameters.erlang\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"match\\\":\\\",|;\\\",\\\"name\\\":\\\"punctuation.separator.guards.erlang\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.expressions.erlang\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},\\\"internal-record-body\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.class.record.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.class.record.end.erlang\\\"}},\\\"name\\\":\\\"meta.structure.record.erlang\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')|(_))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"variable.other.field.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.language.omitted.field.erlang\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.class.record.erlang\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#everything-else\\\"}]},{\\\"include\\\":\\\"#everything-else\\\"}]},\\\"internal-string-body\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.escape.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.escape.erlang\\\"}},\\\"comment\\\":\\\"escape sequence\\\",\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)([bdefnrstv\\\\\\\\\\\\\\\\'\\\\\\\"]|(\\\\\\\\^)[@-_a-z]|[0-7]{1,3}|x[\\\\\\\\da-fA-F]{2})\\\",\\\"name\\\":\\\"constant.character.escape.erlang\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\^?.?\\\",\\\"name\\\":\\\"invalid.illegal.string.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.placeholder.erlang\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.placeholder-parts.erlang\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.separator.placeholder-parts.erlang\\\"}},\\\"comment\\\":\\\"io:fwrite format control sequence\\\",\\\"match\\\":\\\"(~)((\\\\\\\\-)?\\\\\\\\d++|(\\\\\\\\*))?((\\\\\\\\.)(\\\\\\\\d++|(\\\\\\\\*))?((\\\\\\\\.)((\\\\\\\\*)|.))?)?[tlkK]*[~cfegswpWPBX#bx\\\\\\\\+ni]\\\",\\\"name\\\":\\\"constant.character.format.placeholder.other.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.placeholder.erlang\\\"}},\\\"comment\\\":\\\"io:fread format control sequence\\\",\\\"match\\\":\\\"(~)(\\\\\\\\*)?(\\\\\\\\d++)?(t)?[~du\\\\\\\\-#fsacl]\\\",\\\"name\\\":\\\"constant.character.format.placeholder.other.erlang\\\"},{\\\"match\\\":\\\"~[^\\\\\\\"]?\\\",\\\"name\\\":\\\"invalid.illegal.string.erlang\\\"}]},\\\"internal-type-specifiers\\\":{\\\"begin\\\":\\\"(/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.value-type.erlang\\\"}},\\\"end\\\":\\\"(?=,|:|>>)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.signedness.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.endianness.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.unit.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.unit-specifiers.erlang\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.erlang\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.type-specifiers.erlang\\\"}},\\\"match\\\":\\\"(integer|float|binary|bytes|bitstring|bits|utf8|utf16|utf32)|(signed|unsigned)|(big|little|native)|(unit)(:)(\\\\\\\\d++)|(-)\\\"}]},\\\"keyword\\\":{\\\"match\\\":\\\"\\\\\\\\b(after|begin|case|catch|cond|end|fun|if|let|of|try|receive|when|maybe|else)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.erlang\\\"},\\\"language-constant\\\":{\\\"match\\\":\\\"\\\\\\\\b(false|true|undefined)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language\\\"},\\\"list\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.list.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.list.end.erlang\\\"}},\\\"name\\\":\\\"meta.structure.list.erlang\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\||\\\\\\\\|\\\\\\\\||,\\\",\\\"name\\\":\\\"punctuation.separator.list.erlang\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},\\\"macro-directive\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.ifdef.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.macro.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+(ifdef)\\\\\\\\s*+(\\\\\\\\()\\\\\\\\s*+([a-zA-z\\\\\\\\d@_]++)\\\\\\\\s*+(\\\\\\\\))\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"name\\\":\\\"meta.directive.ifdef.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.ifndef.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.macro.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+(ifndef)\\\\\\\\s*+(\\\\\\\\()\\\\\\\\s*+([a-zA-z\\\\\\\\d@_]++)\\\\\\\\s*+(\\\\\\\\))\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"name\\\":\\\"meta.directive.ifndef.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.undef.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.macro.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+(undef)\\\\\\\\s*+(\\\\\\\\()\\\\\\\\s*+([a-zA-z\\\\\\\\d@_]++)\\\\\\\\s*+(\\\\\\\\))\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"name\\\":\\\"meta.directive.undef.erlang\\\"}]},\\\"macro-usage\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.macro.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.macro.erlang\\\"}},\\\"match\\\":\\\"(\\\\\\\\?\\\\\\\\??)\\\\\\\\s*+([a-zA-Z\\\\\\\\d@_]++)\\\",\\\"name\\\":\\\"meta.macro-usage.erlang\\\"},\\\"module-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.module.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.module.definition.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+(module)\\\\\\\\s*+(\\\\\\\\()\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+)\\\\\\\\s*+(\\\\\\\\))\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"name\\\":\\\"meta.directive.module.erlang\\\"},\\\"number\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\d)\\\",\\\"end\\\":\\\"(?!\\\\\\\\d)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.integer-float.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.float-exponent.erlang\\\"}},\\\"match\\\":\\\"\\\\\\\\d++(\\\\\\\\.)\\\\\\\\d++([eE][\\\\\\\\+\\\\\\\\-]?\\\\\\\\d++)?\\\",\\\"name\\\":\\\"constant.numeric.float.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"2(#)([0-1]++_)*[0-1]++\\\",\\\"name\\\":\\\"constant.numeric.integer.binary.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"3(#)([0-2]++_)*[0-2]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-3.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"4(#)([0-3]++_)*[0-3]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-4.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"5(#)([0-4]++_)*[0-4]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-5.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"6(#)([0-5]++_)*[0-5]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-6.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"7(#)([0-6]++_)*[0-6]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-7.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"8(#)([0-7]++_)*[0-7]++\\\",\\\"name\\\":\\\"constant.numeric.integer.octal.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"9(#)([0-8]++_)*[0-8]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-9.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"10(#)(\\\\\\\\d++_)*\\\\\\\\d++\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"11(#)([\\\\\\\\daA]++_)*[\\\\\\\\daA]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-11.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"12(#)([\\\\\\\\da-bA-B]++_)*[\\\\\\\\da-bA-B]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-12.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"13(#)([\\\\\\\\da-cA-C]++_)*[\\\\\\\\da-cA-C]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-13.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"14(#)([\\\\\\\\da-dA-D]++_)*[\\\\\\\\da-dA-D]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-14.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"15(#)([\\\\\\\\da-eA-E]++_)*[\\\\\\\\da-eA-E]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-15.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"16(#)([\\\\\\\\da-fA-F]++_)*[\\\\\\\\da-fA-F]++\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"17(#)([\\\\\\\\da-gA-G]++_)*[\\\\\\\\da-gA-G]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-17.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"18(#)([\\\\\\\\da-hA-H]++_)*[\\\\\\\\da-hA-H]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-18.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"19(#)([\\\\\\\\da-iA-I]++_)*[\\\\\\\\da-iA-I]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-19.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"20(#)([\\\\\\\\da-jA-J]++_)*[\\\\\\\\da-jA-J]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-20.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"21(#)([\\\\\\\\da-kA-K]++_)*[\\\\\\\\da-kA-K]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-21.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"22(#)([\\\\\\\\da-lA-L]++_)*[\\\\\\\\da-lA-L]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-22.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"23(#)([\\\\\\\\da-mA-M]++_)*[\\\\\\\\da-mA-M]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-23.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"24(#)([\\\\\\\\da-nA-N]++_)*[\\\\\\\\da-nA-N]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-24.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"25(#)([\\\\\\\\da-oA-O]++_)*[\\\\\\\\da-oA-O]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-25.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"26(#)([\\\\\\\\da-pA-P]++_)*[\\\\\\\\da-pA-P]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-26.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"27(#)([\\\\\\\\da-qA-Q]++_)*[\\\\\\\\da-qA-Q]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-27.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"28(#)([\\\\\\\\da-rA-R]++_)*[\\\\\\\\da-rA-R]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-28.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"29(#)([\\\\\\\\da-sA-S]++_)*[\\\\\\\\da-sA-S]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-29.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"30(#)([\\\\\\\\da-tA-T]++_)*[\\\\\\\\da-tA-T]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-30.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"31(#)([\\\\\\\\da-uA-U]++_)*[\\\\\\\\da-uA-U]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-31.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"32(#)([\\\\\\\\da-vA-V]++_)*[\\\\\\\\da-vA-V]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-32.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"33(#)([\\\\\\\\da-wA-W]++_)*[\\\\\\\\da-wA-W]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-33.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"34(#)([\\\\\\\\da-xA-X]++_)*[\\\\\\\\da-xA-X]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-34.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"35(#)([\\\\\\\\da-yA-Y]++_)*[\\\\\\\\da-yA-Y]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-35.erlang\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.base-integer.erlang\\\"}},\\\"match\\\":\\\"36(#)([\\\\\\\\da-zA-Z]++_)*[\\\\\\\\da-zA-Z]++\\\",\\\"name\\\":\\\"constant.numeric.integer.base-36.erlang\\\"},{\\\"match\\\":\\\"\\\\\\\\d++#([\\\\\\\\da-zA-Z]++_)*[\\\\\\\\da-zA-Z]++\\\",\\\"name\\\":\\\"invalid.illegal.integer.erlang\\\"},{\\\"match\\\":\\\"(\\\\\\\\d++_)*\\\\\\\\d++\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.erlang\\\"}]},\\\"parenthesized-expression\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.erlang\\\"}},\\\"name\\\":\\\"meta.expression.parenthesized\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#everything-else\\\"}]},\\\"record-directive\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*+(-)\\\\\\\\s*+(record)\\\\\\\\s*+(\\\\\\\\()\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')\\\\\\\\s*+(,)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.directive.begin.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.import.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.record.definition.erlang\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*+(\\\\\\\\.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.directive.end.erlang\\\"}},\\\"name\\\":\\\"meta.directive.record.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-record-body\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"record-usage\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.record.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.record.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.record-field.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.field.erlang\\\"}},\\\"match\\\":\\\"(#)\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')\\\\\\\\s*+(\\\\\\\\.)\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')\\\",\\\"name\\\":\\\"meta.record-usage.erlang\\\"},{\\\"begin\\\":\\\"(#)\\\\\\\\s*+([a-z][a-zA-Z\\\\\\\\d@_]*+|'[^']*+')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.record.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.record.erlang\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.record-usage.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-record-body\\\"}]}]},\\\"sigil-docstring\\\":{\\\"begin\\\":\\\"(~[bBsS]?)(([\\\\\\\"]{3,})\\\\\\\\s*)(\\\\\\\\S.*)?$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.string.quoted.triple.begin.erlang\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.string.erlang\\\"}},\\\"comment\\\":\\\"Only whitespace characters are allowed after the beggining and before the closing sequences and those cannot be in the same line\\\",\\\"end\\\":\\\"^(\\\\\\\\s*(\\\\\\\\3))(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.string.quoted.triple.end.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.tripple.sigil.erlang\\\"},\\\"sigil-string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#sigil-string-parenthesis\\\"},{\\\"include\\\":\\\"#sigil-string-parenthesis-verbatim\\\"},{\\\"include\\\":\\\"#sigil-string-curly-brackets\\\"},{\\\"include\\\":\\\"#sigil-string-curly-brackets-verbatim\\\"},{\\\"include\\\":\\\"#sigil-string-square-brackets\\\"},{\\\"include\\\":\\\"#sigil-string-square-brackets-verbatim\\\"},{\\\"include\\\":\\\"#sigil-string-less-greater\\\"},{\\\"include\\\":\\\"#sigil-string-less-greater-verbatim\\\"},{\\\"include\\\":\\\"#sigil-string-single-character\\\"},{\\\"include\\\":\\\"#sigil-string-single-character-verbatim\\\"},{\\\"include\\\":\\\"#sigil-string-single-quote\\\"},{\\\"include\\\":\\\"#sigil-string-single-quote-verbatim\\\"},{\\\"include\\\":\\\"#sigil-string-double-quote\\\"},{\\\"include\\\":\\\"#sigil-string-double-quote-verbatim\\\"}]},\\\"sigil-string-curly-brackets\\\":{\\\"begin\\\":\\\"(~[bs]?)([{])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"([}])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.curly-brackets.sigil.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-string-body\\\"}]},\\\"sigil-string-curly-brackets-verbatim\\\":{\\\"begin\\\":\\\"(~[BS])([{])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"([}])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.curly-brackets.sigil.erlang\\\"},\\\"sigil-string-double-quote\\\":{\\\"begin\\\":\\\"(~[bs]?)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.double.sigil.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-string-body\\\"}]},\\\"sigil-string-double-quote-verbatim\\\":{\\\"begin\\\":\\\"(~[BS])(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.double.sigil.erlang\\\"},\\\"sigil-string-less-greater\\\":{\\\"begin\\\":\\\"(~[bs]?)(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.less-greater.sigil.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-string-body\\\"}]},\\\"sigil-string-less-greater-verbatim\\\":{\\\"begin\\\":\\\"(~[BS])(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.less-greater.sigil.erlang\\\"},\\\"sigil-string-parenthesis\\\":{\\\"begin\\\":\\\"(~[bs]?)([(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"([)])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.parenthesis.sigil.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-string-body\\\"}]},\\\"sigil-string-parenthesis-verbatim\\\":{\\\"begin\\\":\\\"(~[BS])([(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"([)])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.parenthesis.sigil.erlang\\\"},\\\"sigil-string-single-character\\\":{\\\"begin\\\":\\\"(~[bs]?)([/\\\\\\\\|`#])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-string-body\\\"}]},\\\"sigil-string-single-character-verbatim\\\":{\\\"begin\\\":\\\"(~[BS])([/\\\\\\\\|`#])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.other.sigil.erlang\\\"},\\\"sigil-string-single-quote\\\":{\\\"begin\\\":\\\"(~[bs]?)(')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.single.sigil.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-string-body\\\"}]},\\\"sigil-string-single-quote-verbatim\\\":{\\\"begin\\\":\\\"(~[BS])(')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.single.sigil.erlang\\\"},\\\"sigil-string-square-brackets\\\":{\\\"begin\\\":\\\"(~[bs]?)([\\\\\\\\[])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"([\\\\\\\\]])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.square-brackets.sigil.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-string-body\\\"}]},\\\"sigil-string-square-brackets-verbatim\\\":{\\\"begin\\\":\\\"(~[BS])([\\\\\\\\[])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"([\\\\\\\\]])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.square-brackets.sigil.erlang\\\"},\\\"string\\\":{\\\"begin\\\":\\\"(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.erlang\\\"}},\\\"name\\\":\\\"string.quoted.double.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-string-body\\\"}]},\\\"symbolic-operator\\\":{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+|\\\\\\\\+|--|-|\\\\\\\\*|/=|/|=/=|=:=|==|=<|=|<-|<|>=|>|!|::|\\\\\\\\?=\\\",\\\"name\\\":\\\"keyword.operator.symbolic.erlang\\\"},\\\"textual-operator\\\":{\\\"match\\\":\\\"\\\\\\\\b(andalso|band|and|bxor|xor|bor|orelse|or|bnot|not|bsl|bsr|div|rem)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.textual.erlang\\\"},\\\"tuple\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tuple.begin.erlang\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tuple.end.erlang\\\"}},\\\"name\\\":\\\"meta.structure.tuple.erlang\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.tuple.erlang\\\"},{\\\"include\\\":\\\"#everything-else\\\"}]},\\\"variable\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.erlang\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.language.omitted.erlang\\\"}},\\\"match\\\":\\\"(_[a-zA-Z\\\\\\\\d@_]++|[A-Z][a-zA-Z\\\\\\\\d@_]*+)|(_)\\\"}},\\\"scopeName\\\":\\\"source.erlang\\\",\\\"aliases\\\":[\\\"erl\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Fennel\\\",\\\"name\\\":\\\"fennel\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}],\\\"repository\\\":{\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\";\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.semicolon.fennel\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"nil\\\",\\\"name\\\":\\\"constant.language.nil.fennel\\\"},{\\\"match\\\":\\\"false|true\\\",\\\"name\\\":\\\"constant.language.boolean.fennel\\\"},{\\\"match\\\":\\\"(-?\\\\\\\\d+\\\\\\\\.\\\\\\\\d+([eE][+-]?\\\\\\\\d+)?)\\\",\\\"name\\\":\\\"constant.numeric.double.fennel\\\"},{\\\"match\\\":\\\"(-?\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.integer.fennel\\\"}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#sexp\\\"},{\\\"include\\\":\\\"#table\\\"},{\\\"include\\\":\\\"#vector\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#special\\\"},{\\\"include\\\":\\\"#lua\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#methods\\\"},{\\\"include\\\":\\\"#symbols\\\"}]},\\\"keywords\\\":{\\\"match\\\":\\\":[^ ]+\\\",\\\"name\\\":\\\"constant.keyword.fennel\\\"},\\\"lua\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(assert|collectgarbage|dofile|error|getmetatable|ipairs|load|loadfile|next|pairs|pcall|print|rawequal|rawget|rawlen|rawset|require|select|setmetatable|tonumber|tostring|type|xpcall)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.fennel\\\"},{\\\"match\\\":\\\"\\\\\\\\b(coroutine|coroutine.create|coroutine.isyieldable|coroutine.resume|coroutine.running|coroutine.status|coroutine.wrap|coroutine.yield|debug|debug.debug|debug.gethook|debug.getinfo|debug.getlocal|debug.getmetatable|debug.getregistry|debug.getupvalue|debug.getuservalue|debug.sethook|debug.setlocal|debug.setmetatable|debug.setupvalue|debug.setuservalue|debug.traceback|debug.upvalueid|debug.upvaluejoin|io|io.close|io.flush|io.input|io.lines|io.open|io.output|io.popen|io.read|io.stderr|io.stdin|io.stdout|io.tmpfile|io.type|io.write|math|math.abs|math.acos|math.asin|math.atan|math.ceil|math.cos|math.deg|math.exp|math.floor|math.fmod|math.huge|math.log|math.max|math.maxinteger|math.min|math.mininteger|math.modf|math.pi|math.rad|math.random|math.randomseed|math.sin|math.sqrt|math.tan|math.tointeger|math.type|math.ult|os|os.clock|os.date|os.difftime|os.execute|os.exit|os.getenv|os.remove|os.rename|os.setlocale|os.time|os.tmpname|package|package.config|package.cpath|package.loaded|package.loadlib|package.path|package.preload|package.searchers|package.searchpath|string|string.byte|string.char|string.dump|string.find|string.format|string.gmatch|string.gsub|string.len|string.lower|string.match|string.pack|string.packsize|string.rep|string.reverse|string.sub|string.unpack|string.upper|table|table.concat|table.insert|table.move|table.pack|table.remove|table.sort|table.unpack|utf8|utf8.char|utf8.charpattern|utf8.codepoint|utf8.codes|utf8.len|utf8.offset)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.library.fennel\\\"},{\\\"match\\\":\\\"\\\\\\\\b(_G|_VERSION)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.fennel\\\"}]},\\\"methods\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\w+\\\\\\\\:\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.function.method.fennel\\\"}]},\\\"sexp\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.paren.open.fennel\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.paren.close.fennel\\\"}},\\\"name\\\":\\\"sexp.fennel\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"special\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\#|\\\\\\\\%|\\\\\\\\+|\\\\\\\\*|[?][.]|(\\\\\\\\.)?\\\\\\\\.|(\\\\\\\\/)?\\\\\\\\/|:|<=?|=|>=?|\\\\\\\\^\\\",\\\"name\\\":\\\"keyword.special.fennel\\\"},{\\\"match\\\":\\\"(\\\\\\\\-\\\\\\\\>(\\\\\\\\>)?)\\\",\\\"name\\\":\\\"keyword.special.fennel\\\"},{\\\"match\\\":\\\"\\\\\\\\-\\\\\\\\?\\\\\\\\>(\\\\\\\\>)?\\\",\\\"name\\\":\\\"keyword.special.fennel\\\"},{\\\"match\\\":\\\"-\\\",\\\"name\\\":\\\"keyword.special.fennel\\\"},{\\\"match\\\":\\\"not=\\\",\\\"name\\\":\\\"keyword.special.fennel\\\"},{\\\"match\\\":\\\"set-forcibly!\\\",\\\"name\\\":\\\"keyword.special.fennel\\\"},{\\\"match\\\":\\\"\\\\\\\\b(and|band|bnot|bor|bxor|collect|comment|do|doc|doto|each|eval-compiler|for|global|hashfn|icollect|if|import-macros|include|lambda|length|let|local|lshift|lua|macro|macrodebug|macros|match|not=?|or|partial|pick-args|pick-values|quote|require-macros|rshift|set|tset|values|var|when|while|with-open)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.special.fennel\\\"},{\\\"match\\\":\\\"\\\\\\\\b(fn)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.fennel\\\"},{\\\"match\\\":\\\"~=\\\",\\\"name\\\":\\\"keyword.special.fennel\\\"},{\\\"match\\\":\\\"\u03BB\\\",\\\"name\\\":\\\"keyword.special.fennel\\\"}]},\\\"strings\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.fennel\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.fennel\\\"}]},\\\"symbols\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\w+(?:\\\\\\\\.\\\\\\\\w+)+\\\",\\\"name\\\":\\\"entity.name.function.symbol.fennel\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.fennel\\\"}]},\\\"table\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.table.bracket.open.fennel\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.table.bracket.close.fennel\\\"}},\\\"name\\\":\\\"table.fennel\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"vector\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vector.bracket.open.fennel\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vector.bracket.close.fennel\\\"}},\\\"name\\\":\\\"meta.vector.fennel\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}},\\\"scopeName\\\":\\\"source.fnl\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Fish\\\",\\\"fileTypes\\\":[\\\"fish\\\"],\\\"firstLineMatch\\\":\\\"^#!.*\\\\\\\\bfish\\\\\\\\b\\\",\\\"foldingStartMarker\\\":\\\"^\\\\\\\\s*(function|while|if|switch|for|begin)\\\\\\\\s.*$\\\",\\\"foldingStopMarker\\\":\\\"^\\\\\\\\s*end\\\\\\\\s*$\\\",\\\"name\\\":\\\"fish\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.fish\\\"}},\\\"comment\\\":\\\"Double quoted string\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.fish\\\"}},\\\"name\\\":\\\"string.quoted.double.fish\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"comment\\\":\\\"https://fishshell.com/docs/current/#quotes\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\"|\\\\\\\\$|$|\\\\\\\\\\\\\\\\)\\\",\\\"name\\\":\\\"constant.character.escape.fish\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.fish\\\"}},\\\"comment\\\":\\\"Single quoted string\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.fish\\\"}},\\\"name\\\":\\\"string.quoted.single.fish\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"https://fishshell.com/docs/current/#quotes\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\('|`|\\\\\\\\\\\\\\\\)\\\",\\\"name\\\":\\\"constant.character.escape.fish\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.fish\\\"}},\\\"comment\\\":\\\"line comment\\\",\\\"match\\\":\\\"(?<!\\\\\\\\$)(#)(?!\\\\\\\\{).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.fish\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.fish\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.function.command.fish\\\"}},\\\"comment\\\":\\\"name of command, either a function or a binary\\\",\\\"match\\\":\\\"(^\\\\\\\\s*|&&\\\\\\\\s*|\\\\\\\\|\\\\\\\\s*|\\\\\\\\(\\\\\\\\s*|[;]\\\\\\\\s*|\\\\\\\\b(if|while)\\\\\\\\b\\\\\\\\s+)(?!(?<!\\\\\\\\.)\\\\\\\\b(function|while|if|else|switch|case|for|in|begin|end|continue|break|return|source|exit|wait|and|or|not)\\\\\\\\b(?![?!]))([a-zA-Z_\\\\\\\\-0-9\\\\\\\\[\\\\\\\\].]+)\\\"},{\\\"comment\\\":\\\"keywords that affect control flow\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(function|while|if|else|switch|case|for|in|begin|end|continue|break|return|source|exit|wait|and|or|not)\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"keyword.control.fish\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bfunction\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"storage.type.fish\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.pipe.fish\\\"},{\\\"comment\\\":\\\"IO Redirection\\\",\\\"match\\\":\\\"(?:<|#StandardInput(>|\\\\\\\\^|>>|\\\\\\\\^\\\\\\\\^)(&[012\\\\\\\\-])?|[012](<|>|>>)(&[012\\\\\\\\-])?)\\\",\\\"name\\\":\\\"keyword.operator.redirect.fish\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"keyword.operator.background.fish\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\*|\\\\\\\\*|\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.glob.fish\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"source.option.fish\\\"}},\\\"comment\\\":\\\"command short/long options\\\",\\\"match\\\":\\\"\\\\\\\\s(-{1,2}[a-zA-Z_\\\\\\\\-0-9]+|-\\\\\\\\w)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#escape\\\"}],\\\"repository\\\":{\\\"escape\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"single character character escape sequences\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[abefnrtv $*?~#(){}\\\\\\\\[\\\\\\\\]<>^&|;\\\\\\\"']\\\",\\\"name\\\":\\\"constant.character.escape.single.fish\\\"},{\\\"comment\\\":\\\"escapes the ascii character with the specified value (hexadecimal)\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9a-fA-F]{1,2}\\\",\\\"name\\\":\\\"constant.character.escape.hex-ascii.fish\\\"},{\\\"comment\\\":\\\"escapes a byte of data with the specified value (hexadecimal). If you are using mutibyte encoding, this can be used to enter invalid strings. Only use this if you know what are doing.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\X[0-9a-fA-F]{1,2}\\\",\\\"name\\\":\\\"constant.character.escape.hex-byte.fish\\\"},{\\\"comment\\\":\\\"escapes the ascii character with the specified value (octal)\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-7]{1,3}\\\",\\\"name\\\":\\\"constant.character.escape.octal.fish\\\"},{\\\"comment\\\":\\\"escapes the 16-bit unicode character with the specified value (hexadecimal)\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u[0-9a-fA-F]{1,4}\\\",\\\"name\\\":\\\"constant.character.escape.unicode-16-bit.fish\\\"},{\\\"comment\\\":\\\"escapes the 32-bit unicode character with the specified value (hexadecimal)\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\U[0-9a-fA-F]{1,8}\\\",\\\"name\\\":\\\"constant.character.escape.unicode-32-bit.fish\\\"},{\\\"comment\\\":\\\"escapes the control sequence generated by pressing the control key and the specified letter\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c[a-zA-Z]\\\",\\\"name\\\":\\\"constant.character.escape.control.fish\\\"}]},\\\"variable\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.fish\\\"}},\\\"comment\\\":\\\"Built-in variables visible by pressing $ TAB TAB in a new shell\\\",\\\"match\\\":\\\"(\\\\\\\\$)(argv|CMD_DURATION|COLUMNS|fish_bind_mode|fish_color_autosuggestion|fish_color_cancel|fish_color_command|fish_color_comment|fish_color_cwd|fish_color_cwd_root|fish_color_end|fish_color_error|fish_color_escape|fish_color_hg_added|fish_color_hg_clean|fish_color_hg_copied|fish_color_hg_deleted|fish_color_hg_dirty|fish_color_hg_modified|fish_color_hg_renamed|fish_color_hg_unmerged|fish_color_hg_untracked|fish_color_history_current|fish_color_host|fish_color_host_remote|fish_color_match|fish_color_normal|fish_color_operator|fish_color_param|fish_color_quote|fish_color_redirection|fish_color_search_match|fish_color_selection|fish_color_status|fish_color_user|fish_color_valid_path|fish_complete_path|fish_function_path|fish_greeting|fish_key_bindings|fish_pager_color_completion|fish_pager_color_description|fish_pager_color_prefix|fish_pager_color_progress|fish_pid|fish_prompt_hg_status_added|fish_prompt_hg_status_copied|fish_prompt_hg_status_deleted|fish_prompt_hg_status_modified|fish_prompt_hg_status_order|fish_prompt_hg_status_unmerged|fish_prompt_hg_status_untracked|FISH_VERSION|history|hostname|IFS|LINES|pipestatus|status|umask|version)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.fish\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.fish\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)[a-zA-Z_][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"variable.other.normal.fish\\\"}]}},\\\"scopeName\\\":\\\"source.fish\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Fluent\\\",\\\"name\\\":\\\"fluent\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#message\\\"},{\\\"include\\\":\\\"#wrong-line\\\"}],\\\"repository\\\":{\\\"attributes\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\.[a-zA-Z][a-zA-Z0-9_-]*\\\\\\\\s*=\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.attribute-begin.fluent\\\"}},\\\"end\\\":\\\"^(?=\\\\\\\\s*[^\\\\\\\\.])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#placeable\\\"}]},\\\"comment\\\":{\\\"match\\\":\\\"^##?#?\\\\\\\\s.*$\\\",\\\"name\\\":\\\"comment.fluent\\\"},\\\"function-comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"support.function.function-comma.fluent\\\"},\\\"function-named-argument\\\":{\\\"begin\\\":\\\"([a-zA-Z0-9]+:)\\\\\\\\s*([\\\\\\\"a-zA-Z0-9]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.named-argument.name.fluent\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.named-argument.value.fluent\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\)|,|\\\\\\\\s)\\\",\\\"name\\\":\\\"variable.other.named-argument.fluent\\\"},\\\"function-positional-argument\\\":{\\\"match\\\":\\\"\\\\\\\\$[a-zA-Z0-9_-]+\\\",\\\"name\\\":\\\"variable.other.function.positional-argument.fluent\\\"},\\\"invalid-placeable-string-missing-end-quote\\\":{\\\"match\\\":\\\"\\\\\\\"[^\\\\\\\"]+$\\\",\\\"name\\\":\\\"invalid.illegal.wrong-placeable-missing-end-quote.fluent\\\"},\\\"invalid-placeable-wrong-placeable-missing-end\\\":{\\\"match\\\":\\\"([^}A-Z]*$|[^-][^>]$)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.wrong-placeable-missing-end.fluent\\\"},\\\"message\\\":{\\\"begin\\\":\\\"^(-?[a-zA-Z][a-zA-Z0-9_-]*\\\\\\\\s*=\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.message-identifier.fluent\\\"}},\\\"contentName\\\":\\\"string.fluent\\\",\\\"end\\\":\\\"^(?=\\\\\\\\S)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#placeable\\\"}]},\\\"placeable\\\":{\\\"begin\\\":\\\"({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.placeable.begin.fluent\\\"}},\\\"contentName\\\":\\\"variable.other.placeable.content.fluent\\\",\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.placeable.end.fluent\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#placeable-string\\\"},{\\\"include\\\":\\\"#placeable-function\\\"},{\\\"include\\\":\\\"#placeable-reference-or-number\\\"},{\\\"include\\\":\\\"#selector\\\"},{\\\"include\\\":\\\"#invalid-placeable-wrong-placeable-missing-end\\\"},{\\\"include\\\":\\\"#invalid-placeable-string-missing-end-quote\\\"},{\\\"include\\\":\\\"#invalid-placeable-wrong-function-name\\\"}]},\\\"placeable-function\\\":{\\\"begin\\\":\\\"([A-Z][A-Z0-9_-]*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.placeable-function.call.begin.fluent\\\"}},\\\"contentName\\\":\\\"string.placeable-function.fluent\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.placeable-function.call.end.fluent\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-comma\\\"},{\\\"include\\\":\\\"#function-positional-argument\\\"},{\\\"include\\\":\\\"#function-named-argument\\\"}]},\\\"placeable-reference-or-number\\\":{\\\"match\\\":\\\"((-|\\\\\\\\$)[a-zA-Z0-9_-]+|[a-zA-Z][a-zA-Z0-9_-]*|[0-9]+)\\\",\\\"name\\\":\\\"variable.other.placeable.reference-or-number.fluent\\\"},\\\"placeable-string\\\":{\\\"begin\\\":\\\"(\\\\\\\")(?=[^\\\\\\\\n]*\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.placeable-string-begin.fluent\\\"}},\\\"contentName\\\":\\\"string.placeable-string-content.fluent\\\",\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.placeable-string-end.fluent\\\"}}},\\\"selector\\\":{\\\"begin\\\":\\\"(->)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.selector.begin.fluent\\\"}},\\\"contentName\\\":\\\"string.selector.content.fluent\\\",\\\"end\\\":\\\"^(?=\\\\\\\\s*})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#selector-item\\\"}]},\\\"selector-item\\\":{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\*?\\\\\\\\[)([a-zA-Z0-9_-]+)(\\\\\\\\]\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.selector-item.begin.fluent\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.selector-item.begin.fluent\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.selector-item.begin.fluent\\\"}},\\\"contentName\\\":\\\"string.selector-item.content.fluent\\\",\\\"end\\\":\\\"^(?=(\\\\\\\\s*})|(\\\\\\\\s*\\\\\\\\[)|(\\\\\\\\s*\\\\\\\\*))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#placeable\\\"}]},\\\"wrong-line\\\":{\\\"match\\\":\\\".*\\\",\\\"name\\\":\\\"invalid.illegal.wrong-line.fluent\\\"}},\\\"scopeName\\\":\\\"source.ftl\\\",\\\"aliases\\\":[\\\"ftl\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Fortran (Free Form)\\\",\\\"fileTypes\\\":[\\\"f90\\\",\\\"F90\\\",\\\"f95\\\",\\\"F95\\\",\\\"f03\\\",\\\"F03\\\",\\\"f08\\\",\\\"F08\\\",\\\"f18\\\",\\\"F18\\\",\\\"fpp\\\",\\\"FPP\\\",\\\".pf\\\",\\\".PF\\\"],\\\"firstLineMatch\\\":\\\"(?i)-[*]- mode: fortran free -[*]-\\\",\\\"injections\\\":{\\\"source.fortran.free - ( string | comment | meta.preprocessor )\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#line-continuation-operator\\\"},{\\\"include\\\":\\\"#preprocessor\\\"}]},\\\"string.quoted.double.fortran\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-line-continuation-operator\\\"}]},\\\"string.quoted.single.fortran\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-line-continuation-operator\\\"}]}},\\\"name\\\":\\\"fortran-free-form\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#array-constructor\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#include-statement\\\"},{\\\"include\\\":\\\"#import-statement\\\"},{\\\"include\\\":\\\"#block-data-definition\\\"},{\\\"include\\\":\\\"#function-definition\\\"},{\\\"include\\\":\\\"#module-definition\\\"},{\\\"include\\\":\\\"#program-definition\\\"},{\\\"include\\\":\\\"#submodule-definition\\\"},{\\\"include\\\":\\\"#subroutine-definition\\\"},{\\\"include\\\":\\\"#procedure-definition\\\"},{\\\"include\\\":\\\"#derived-type-definition\\\"},{\\\"include\\\":\\\"#enum-block-construct\\\"},{\\\"include\\\":\\\"#interface-block-constructs\\\"},{\\\"include\\\":\\\"#procedure-specification-statement\\\"},{\\\"include\\\":\\\"#type-specification-statements\\\"},{\\\"include\\\":\\\"#specification-statements\\\"},{\\\"include\\\":\\\"#control-constructs\\\"},{\\\"include\\\":\\\"#control-statements\\\"},{\\\"include\\\":\\\"#execution-statements\\\"},{\\\"include\\\":\\\"#intrinsic-functions\\\"},{\\\"include\\\":\\\"#variable\\\"}],\\\"repository\\\":{\\\"IO-item-list\\\":{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\s*[a-z0-9\\\\\\\"'])\\\",\\\"comment\\\":\\\"Name list.\\\",\\\"contentName\\\":\\\"meta.name-list.fortran\\\",\\\"end\\\":\\\"(?=[\\\\\\\\);!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#intrinsic-functions\\\"},{\\\"include\\\":\\\"#array-constructor\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#assignment-keyword\\\"},{\\\"include\\\":\\\"#operator-keyword\\\"},{\\\"include\\\":\\\"#variable\\\"}]},\\\"IO-keywords\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(?:(read)|(write))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.generic-spec.read.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.generic-spec.write.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"IO generic specification.\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.generic-spec.formatted.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.generic-spec.unformatted.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(?:(formatted)|(unformatted))\\\\\\\\b\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},\\\"IO-statements\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?ix)\\\\\\\\b(?:(backspace)|(close)|(endfile)|(format)|(inquire)|(open)|(read)|(rewind)|(write))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.backspace.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.close.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.endfile.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.format.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.inquire.fortran\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.open.fortran\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.control.read.fortran\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.control.rewind.fortran\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.control.write.fortran\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"name\\\":\\\"meta.statement.IO.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"},{\\\"include\\\":\\\"#IO-item-list\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.backspace.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.endfile.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.format.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.print.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.read.fortran\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.rewind.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\b(?:(backspace)|(endfile)|(format)|(print)|(read)|(rewind))\\\\\\\\b\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?:(flush)|(wait))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flush.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.wait.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flush.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\b(flush)\\\\\\\\b\\\"}]},\\\"abstract-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.fortran.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(abstract)\\\\\\\\b\\\"},\\\"abstract-interface-block-construct\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(abstract)\\\\\\\\s+(interface)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.attribute.fortran.modern\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.interface.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*interface)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endinterface.fortran.modern\\\"}},\\\"name\\\":\\\"meta.interface.abstract.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"access-attribute\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#private-attribute\\\"},{\\\"include\\\":\\\"#public-attribute\\\"}]},\\\"allocatable-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.allocatable.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(allocatable)\\\\\\\\b\\\"},\\\"allocate-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(allocate)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.allocate.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"name\\\":\\\"meta.statement.allocate.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},\\\"arithmetic-operators\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.subtraction.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.addition.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.division.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.power.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.multiplication.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"match\\\":\\\"(\\\\\\\\-)|(\\\\\\\\+)|\\\\\\\\/(?!\\\\\\\\/|\\\\\\\\=|\\\\\\\\\\\\\\\\)|(\\\\\\\\*\\\\\\\\*)|(\\\\\\\\*)\\\"},\\\"array-constructor\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\s*(\\\\\\\\[|\\\\\\\\(\\\\\\\\/))\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.contructor.array\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\(\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.left.fortran\\\"}},\\\"end\\\":\\\"(\\\\\\\\/\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.left.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#array-constructor\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#intrinsic-functions\\\"},{\\\"include\\\":\\\"#variable\\\"}]}]},\\\"assign-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(assign)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.assign.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.assign.fortran\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.to.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(to)\\\\\\\\b\\\"},{\\\"include\\\":\\\"$base\\\"}]}]},\\\"assignment-keyword\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(assignment)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.generic-spec.assignment.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Assignment generic specification.\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#assignment-operator\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},\\\"assignment-operator\\\":{\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"match\\\":\\\"(?<!\\\\\\\\/|\\\\\\\\=|\\\\\\\\<|\\\\\\\\>)(\\\\\\\\=)(?!\\\\\\\\=|\\\\\\\\>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.fortran\\\"},\\\"associate-construct\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(associate)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.associate.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"contentName\\\":\\\"meta.block.associate.fortran\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*associate)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endassociate.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"asynchronous-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.asynchronous.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(asynchronous)\\\\\\\\b\\\"},\\\"attribute-specification-statement\\\":{\\\"begin\\\":\\\"(?ix)(?=\\\\\\\\b(?:allocatable|asynchronous|contiguous |external|intrinsic|optional|parameter|pointer|private|protected|public|save|target|value|volatile)\\\\\\\\b |(bind|dimension|intent)\\\\\\\\s*\\\\\\\\( |(codimension)\\\\\\\\s*\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.attribute-specification.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#access-attribute\\\"},{\\\"include\\\":\\\"#allocatable-attribute\\\"},{\\\"include\\\":\\\"#asynchronous-attribute\\\"},{\\\"include\\\":\\\"#codimension-attribute\\\"},{\\\"include\\\":\\\"#contiguous-attribute\\\"},{\\\"include\\\":\\\"#dimension-attribute\\\"},{\\\"include\\\":\\\"#external-attribute\\\"},{\\\"include\\\":\\\"#intent-attribute\\\"},{\\\"include\\\":\\\"#intrinsic-attribute\\\"},{\\\"include\\\":\\\"#language-binding-attribute\\\"},{\\\"include\\\":\\\"#optional-attribute\\\"},{\\\"include\\\":\\\"#parameter-attribute\\\"},{\\\"include\\\":\\\"#pointer-attribute\\\"},{\\\"include\\\":\\\"#protected-attribute\\\"},{\\\"include\\\":\\\"#save-attribute\\\"},{\\\"include\\\":\\\"#target-attribute\\\"},{\\\"include\\\":\\\"#value-attribute\\\"},{\\\"include\\\":\\\"#volatile-attribute\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\s*::)\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"contentName\\\":\\\"meta.attribute-list.normal.fortran\\\",\\\"end\\\":\\\"(::)|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"include\\\":\\\"#name-list\\\"}]},\\\"block-construct\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(block)\\\\\\\\b(?!\\\\\\\\s*\\\\\\\\bdata\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.associate.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2008 standard.\\\",\\\"contentName\\\":\\\"meta.block.block.fortran\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*block)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endassociate.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"block-data-definition\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(block\\\\\\\\s*data)\\\\\\\\b(?:\\\\\\\\s+([a-z]\\\\\\\\w*)\\\\\\\\b)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.block-data.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.block-data.fortran\\\"}},\\\"end\\\":\\\"(?ix)\\\\\\\\b(?:(end\\\\\\\\s*block\\\\\\\\s*data)(?:\\\\\\\\s+(\\\\\\\\2))?|(end))\\\\\\\\b (?:\\\\\\\\s*(\\\\\\\\S((?!\\\\\\\\n).)*))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end-block-data.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.block-data.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.end-block-data.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.error.block-data-definition.fortran\\\"}},\\\"name\\\":\\\"meta.block-data.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.left.fortran\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.left.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#array-constructor\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#intrinsic-functions\\\"},{\\\"include\\\":\\\"#variable\\\"}]},\\\"call-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(call)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.call.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.call.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?ix)\\\\\\\\G\\\\\\\\s*([a-z]\\\\\\\\w*)(%)([a-z]\\\\\\\\w*)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.accessor.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.subroutine.fortran\\\"}},\\\"comment\\\":\\\"type-bound subroutines\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"include\\\":\\\"#intrinsic-subroutines\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.subroutine.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"User defined subroutine.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.subroutine.fortran\\\"}},\\\"comment\\\":\\\"User defined subroutine.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b(?=\\\\\\\\s*[;!\\\\\\\\n])\\\"},{\\\"include\\\":\\\"$base\\\"}]}]},\\\"character-type\\\":{\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(character)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.character.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"contentName\\\":\\\"meta.type-spec.fortran\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.character.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.multiplication.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(character)\\\\\\\\b(?:\\\\\\\\s*(\\\\\\\\*)\\\\\\\\s*(\\\\\\\\d*))?\\\"}]},\\\"codimension-attribute\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(codimension)(?=\\\\\\\\s*\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.codimension.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2008 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]},\\\"comments\\\":{\\\"begin\\\":\\\"!\\\",\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line.fortran\\\"},\\\"common-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(common)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.common.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"concurrent-attribute\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(concurrent)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.while.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#logical-constant\\\"},{\\\"include\\\":\\\"#numeric-constant\\\"},{\\\"include\\\":\\\"#string-constant\\\"}]},\\\"contiguous-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.contigous.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2008 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(contiguous)\\\\\\\\b\\\"},\\\"continue-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(continue)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.continue.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.continue.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#invalid-character\\\"}]}]},\\\"control-constructs\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#named-control-constructs\\\"},{\\\"include\\\":\\\"#unnamed-control-constructs\\\"}]},\\\"control-statements\\\":{\\\"comment\\\":\\\"Statements controlling the flow of the program\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#assign-statement\\\"},{\\\"include\\\":\\\"#call-statement\\\"},{\\\"include\\\":\\\"#continue-statement\\\"},{\\\"include\\\":\\\"#cycle-statement\\\"},{\\\"include\\\":\\\"#entry-statement\\\"},{\\\"include\\\":\\\"#error-stop-statement\\\"},{\\\"include\\\":\\\"#exit-statement\\\"},{\\\"include\\\":\\\"#goto-statement\\\"},{\\\"include\\\":\\\"#pause-statement\\\"},{\\\"include\\\":\\\"#return-statement\\\"},{\\\"include\\\":\\\"#stop-statement\\\"},{\\\"include\\\":\\\"#where-statement\\\"},{\\\"include\\\":\\\"#image-control-statement\\\"}]},\\\"cpp-numeric-constant\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=.)\\\",\\\"beginCaptures\\\":{},\\\"end\\\":\\\"$\\\",\\\"endCaptures\\\":{},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.cpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"11\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.floating-point.cpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9a-fA-F])\\\\\\\\.|\\\\\\\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([pP])((?:\\\\\\\\+)?)((?:\\\\\\\\-)?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9a-fA-FpP])\\\\\\\\w*)?$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.decimal.point.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.floating-point.cpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\G(?=[0-9.])(?!0[xXbB])([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9])\\\\\\\\.|\\\\\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([eE])((?:\\\\\\\\+)?)((?:\\\\\\\\-)?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9eE])\\\\\\\\w*)?$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.binary.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.binary.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[bB])([01](?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9])\\\\\\\\w*)?$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.octal.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.octal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0)((?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))+)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9])\\\\\\\\w*)?$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.cpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.cpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.cpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([pP])((?:\\\\\\\\+)?)((?:\\\\\\\\-)?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9a-fA-FpP])\\\\\\\\w*)?$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.cpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.cpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.cpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.cpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.cpp\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.cpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.unit.user-defined.cpp\\\"}},\\\"match\\\":\\\"\\\\\\\\G(?=[0-9.])(?!0[xXbB])([0-9](?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([eE])((?:\\\\\\\\+)?)((?:\\\\\\\\-)?)([0-9](?:[0-9]|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\\\\\w))?((?:\\\\\\\\w(?<![0-9eE])\\\\\\\\w*)?$)\\\"},{\\\"match\\\":\\\"(?:(?:[0-9a-zA-Z_\\\\\\\\.]|')|(?<=[eEpP])[+-])+\\\",\\\"name\\\":\\\"invalid.illegal.constant.numeric.cpp\\\"}]}]}},\\\"match\\\":\\\"(?<!\\\\\\\\w)\\\\\\\\.?\\\\\\\\d(?:(?:[0-9a-zA-Z_\\\\\\\\.]|')|(?<=[eEpP])[+-])*\\\"},\\\"critical-construct\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(critical)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.associate.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2008 standard.\\\",\\\"contentName\\\":\\\"meta.block.critical.fortran\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*critical)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endassociate.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"cycle-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(cycle)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.cycle.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.fortran\\\",\\\"patterns\\\":[]}]},\\\"data-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(data)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.data.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"deallocate-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(deallocate)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.deallocate.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"name\\\":\\\"meta.statement.deallocate.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},\\\"deferred-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.deferred.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(deferred)\\\\\\\\b\\\"},\\\"derived-type\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?:(class)|(type))\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*(([a-z]\\\\\\\\w*)|\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.type.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1995 standard.\\\",\\\"contentName\\\":\\\"meta.type-spec.fortran\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"name\\\":\\\"meta.specification.type.derived.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},\\\"derived-type-component-attribute-specification\\\":{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\s*\\\\\\\\b(?:private|sequence)\\\\\\\\b)\\\",\\\"comment\\\":\\\"Introduced in the Fortran 1995 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.attribute-specification.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#access-attribute\\\"},{\\\"include\\\":\\\"#sequence-attribute\\\"},{\\\"include\\\":\\\"#invalid-character\\\"}]},\\\"derived-type-component-parameter-specification\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.integer.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.attribute.derived-type.parameter.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.derived-type.parameter.fortran\\\"}},\\\"comment\\\":\\\"Derived type parameter.\\\",\\\"match\\\":\\\"(?ix)\\\\\\\\b(integer)\\\\\\\\s*(,)\\\\\\\\s*(kind|len)\\\\\\\\s*(?:(::)\\\\\\\\s*([a-z]\\\\\\\\w*)?)?\\\\\\\\s*(?=[;!\\\\\\\\n])\\\"},\\\"derived-type-component-procedure-specification\\\":{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\b(?:procedure)\\\\\\\\b)\\\",\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.specification.procedure.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#procedure-type\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\s*(,|::|\\\\\\\\())\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"contentName\\\":\\\"meta.attribute-list.derived-type-component-procedure.fortran\\\",\\\"end\\\":\\\"(::)|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=::|[,;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#access-attribute\\\"},{\\\"include\\\":\\\"#pass-attribute\\\"},{\\\"include\\\":\\\"#nopass-attribute\\\"},{\\\"include\\\":\\\"#invalid-word\\\"},{\\\"include\\\":\\\"#pointer-attribute\\\"}]}]},{\\\"include\\\":\\\"#procedure-name-list\\\"}]},\\\"derived-type-component-type-specification\\\":{\\\"begin\\\":\\\"(?ix)(?=\\\\\\\\b(?:character|class|complex|double\\\\\\\\s*precision|double\\\\\\\\s*complex|integer|logical|real|type)\\\\\\\\b(?![^:'\\\\\\\";!\\\\\\\\n]*\\\\\\\\bfunction\\\\\\\\b))\\\",\\\"comment\\\":\\\"Introduced in the Fortran 1995 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.specification.derived-type.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#line-continuation-operator\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\s*(,|::))\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"contentName\\\":\\\"meta.attribute-list.derived-type-component-type.fortran\\\",\\\"end\\\":\\\"(::)|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=::|[,;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#access-attribute\\\"},{\\\"include\\\":\\\"#allocatable-attribute\\\"},{\\\"include\\\":\\\"#codimension-attribute\\\"},{\\\"include\\\":\\\"#contiguous-attribute\\\"},{\\\"include\\\":\\\"#dimension-attribute\\\"},{\\\"include\\\":\\\"#pointer-attribute\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]}]},{\\\"include\\\":\\\"#name-list\\\"}]},\\\"derived-type-contains-attribute-specification\\\":{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\b(?:private)\\\\\\\\b)\\\",\\\"comment\\\":\\\"Introduced in the Fortran 1995 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.attribute-specification.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#access-attribute\\\"},{\\\"include\\\":\\\"#invalid-character\\\"}]},\\\"derived-type-contains-final-procedure-specification\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(final)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.final-procedure.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.specification.procedure.final.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\s*(::))\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"end\\\":\\\"(::)|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"name\\\":\\\"meta.attribute-list.derived-type-contains-final-procedure.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"include\\\":\\\"#procedure-name\\\"}]},\\\"derived-type-contains-generic-procedure-specification\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(generic)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.procedure.generic.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.specification.procedure.generic.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\s*(,|::|\\\\\\\\())\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"contentName\\\":\\\"meta.attribute-list.derived-type-contains-generic-procedure.fortran\\\",\\\"end\\\":\\\"(::)|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)|^|(?<=&)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=::|[,&;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#access-attribute\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]}]},{\\\"begin\\\":\\\"(?=\\\\\\\\s*[a-z])\\\",\\\"comment\\\":\\\"Name list.\\\",\\\"contentName\\\":\\\"meta.name-list.fortran\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#IO-keywords\\\"},{\\\"include\\\":\\\"#assignment-keyword\\\"},{\\\"include\\\":\\\"#operator-keyword\\\"},{\\\"include\\\":\\\"#procedure-name\\\"},{\\\"include\\\":\\\"#pointer-operators\\\"}]}]},\\\"derived-type-contains-procedure-specification\\\":{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\b(?:procedure)\\\\\\\\b)\\\",\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.specification.procedure.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#procedure-type\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\s*(,|::|\\\\\\\\())\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"contentName\\\":\\\"meta.attribute-list.derived-type-contains-procedure.fortran\\\",\\\"end\\\":\\\"(::)|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)|^|(?<=&)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=::|[,&;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.something.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#access-attribute\\\"},{\\\"include\\\":\\\"#deferred-attribute\\\"},{\\\"include\\\":\\\"#non-overridable-attribute\\\"},{\\\"include\\\":\\\"#nopass-attribute\\\"},{\\\"include\\\":\\\"#pass-attribute\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]}]},{\\\"include\\\":\\\"#procedure-name-list\\\"}]},\\\"derived-type-definition\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(type)\\\\\\\\b(?!\\\\\\\\s*(\\\\\\\\(|is\\\\\\\\b|\\\\\\\\=))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.type.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.derived-type.definition.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=\\\\\\\\s*(,|::))\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"contentName\\\":\\\"meta.attribute-list.derived-type.fortran\\\",\\\"end\\\":\\\"(::)|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=::|[,;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#access-attribute\\\"},{\\\"include\\\":\\\"#abstract-attribute\\\"},{\\\"include\\\":\\\"#language-binding-attribute\\\"},{\\\"include\\\":\\\"#extends-attribute\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fortran\\\"}},\\\"end\\\":\\\"(?i)(?:^|(?<=;))\\\\\\\\s*(end\\\\\\\\s*type)(?:\\\\\\\\s+(?:(\\\\\\\\1)|(\\\\\\\\w+)))?\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endtype.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.error.derived-type.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#dummy-variable-list\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?i)^(?!\\\\\\\\s*\\\\\\\\b(?:contains|end\\\\\\\\s*type)\\\\\\\\b)\\\",\\\"comment\\\":\\\"Derived type specification block.\\\",\\\"end\\\":\\\"(?i)^(?=\\\\\\\\s*\\\\\\\\b(?:contains|end\\\\\\\\s*type)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.block.specification.derived-type.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#derived-type-component-attribute-specification\\\"},{\\\"include\\\":\\\"#derived-type-component-parameter-specification\\\"},{\\\"include\\\":\\\"#derived-type-component-procedure-specification\\\"},{\\\"include\\\":\\\"#derived-type-component-type-specification\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(contains)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.contains.fortran\\\"}},\\\"comment\\\":\\\"Derived type contains block.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\s*end\\\\\\\\s*type\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.block.contains.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#derived-type-contains-attribute-specification\\\"},{\\\"include\\\":\\\"#derived-type-contains-final-procedure-specification\\\"},{\\\"include\\\":\\\"#derived-type-contains-generic-procedure-specification\\\"},{\\\"include\\\":\\\"#derived-type-contains-procedure-specification\\\"}]}]}]},\\\"derived-type-operators\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.selector.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1995 standard.\\\",\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\%)\\\"},\\\"dimension-attribute\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(dimension)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.dimension.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},\\\"do-construct\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.enddo.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*do)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(do)\\\\\\\\s+(\\\\\\\\d{1,5})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.do.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?i)(?:^|(?<=;))(?=\\\\\\\\s*\\\\\\\\b\\\\\\\\2\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.do.labeled.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G(?:\\\\\\\\s*(,)|(?!\\\\\\\\s*[;!\\\\\\\\n]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"comment\\\":\\\"Loop control.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#concurrent-attribute\\\"},{\\\"include\\\":\\\"#while-attribute\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(do)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.do.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1995 standard.\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(?:(continue)|(end\\\\\\\\s*do))\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.continue.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.enddo.fortran\\\"}},\\\"name\\\":\\\"meta.block.do.unlabeled.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G(?:\\\\\\\\s*(,)|(?!\\\\\\\\s*[;!\\\\\\\\n]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"comment\\\":\\\"Loop control.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.loop-control.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#concurrent-attribute\\\"},{\\\"include\\\":\\\"#while-attribute\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?i)(?!\\\\\\\\s*\\\\\\\\b(continue|end\\\\\\\\s*do)\\\\\\\\b)\\\",\\\"comment\\\":\\\"Loop body.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\s*\\\\\\\\b(continue|end\\\\\\\\s*do)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]}]},\\\"dummy-variable\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.fortran\\\"}},\\\"comment\\\":\\\"dummy variable\\\",\\\"match\\\":\\\"(?i)(?:^|(?<=[&,\\\\\\\\(]))\\\\\\\\s*([a-z]\\\\\\\\w*)\\\"},\\\"dummy-variable-list\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.fortran\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.fortran\\\"}},\\\"name\\\":\\\"meta.dummy-variable-list\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#dummy-variable\\\"}]},\\\"elemental-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.elemental.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(elemental)\\\\\\\\b\\\"},\\\"entry-statement\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(entry)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.entry.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.entry.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.entry.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#dummy-variable-list\\\"},{\\\"include\\\":\\\"#result-statement\\\"},{\\\"include\\\":\\\"#language-binding-attribute\\\"}]}]}]},\\\"enum-block-construct\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(enum)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.enum.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*enum)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end-enum.fortran\\\"}},\\\"name\\\":\\\"meta.enum.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(,)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language-binding-attribute\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"begin\\\":\\\"(?i)(?!\\\\\\\\s*\\\\\\\\b(end\\\\\\\\s*enum)\\\\\\\\b)\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\b(end\\\\\\\\s*enum)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.block.specification.enum.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?ix)\\\\\\\\b(enumerator)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.enumerator.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.enumerator-specification.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\s*(,|::))\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"contentName\\\":\\\"meta.attribute-list.enum.fortran\\\",\\\"end\\\":\\\"(::)|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#name-list\\\"}]}]}]},\\\"equivalence-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(equivalence)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.common.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:\\\\\\\\G|(,))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"puntuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=[,;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]}]},\\\"error-stop-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(error\\\\\\\\s+stop)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.errorstop.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2008 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.errorstop.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#string-operators\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#invalid-character\\\"}]},\\\"event-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(event post|event wait)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.event.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2018 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"name\\\":\\\"meta.statement.event.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},\\\"execution-statements\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#allocate-statement\\\"},{\\\"include\\\":\\\"#deallocate-statement\\\"},{\\\"include\\\":\\\"#IO-statements\\\"},{\\\"include\\\":\\\"#nullify-statement\\\"}]},\\\"exit-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(exit)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.exit.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.exit.fortran\\\",\\\"patterns\\\":[]},\\\"explicit-interface-block-construct\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(interface)\\\\\\\\b(?=\\\\\\\\s*[;!\\\\\\\\n])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.interface.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*interface)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endinterface.fortran.modern\\\"}},\\\"name\\\":\\\"meta.interface.explicit.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"extends-attribute\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(extends)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.extends.fortran\\\"}},\\\"end\\\":\\\"(?:\\\\\\\\)|(?=\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.fortran\\\"}]},\\\"external-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.external.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(external)\\\\\\\\b\\\"},\\\"fail-image-statement\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.fail-image.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2018 standard.\\\",\\\"match\\\":\\\"\\\\\\\\b(fail image)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.statement.fail-image.fortran\\\"},\\\"forall-construct\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?i)\\\\\\\\b(forall)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.forall.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1995 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G(?!\\\\\\\\s*[;!\\\\\\\\n])\\\",\\\"comment\\\":\\\"Loop control.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.loop-control.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))(?=\\\\\\\\s*[;!\\\\\\\\n])\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*forall)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endforall.fortran\\\"}},\\\"name\\\":\\\"meta.block.forall.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?i)(?<=\\\\\\\\))(?!\\\\\\\\s*[;!\\\\\\\\n])\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"meta.statement.control.forall.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]},\\\"form-team-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(form team)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.form-team.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2018 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"name\\\":\\\"meta.statement.form-team.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},\\\"function-definition\\\":{\\\"begin\\\":\\\"(?i)(?=([^:'\\\\\\\";!\\\\\\\\n](?!\\\\\\\\bend)(?!\\\\\\\\bsubroutine\\\\\\\\b))*\\\\\\\\bfunction\\\\\\\\b)\\\",\\\"comment\\\":\\\"Function program unit. Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.function.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\G\\\\\\\\s*(?!\\\\\\\\bfunction\\\\\\\\b))\\\",\\\"comment\\\":\\\"Function attribute list.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\bfunction\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.attribute-list.function.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#elemental-attribute\\\"},{\\\"include\\\":\\\"#module-attribute\\\"},{\\\"include\\\":\\\"#pure-attribute\\\"},{\\\"include\\\":\\\"#recursive-attribute\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(function)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.function.fortran\\\"}},\\\"comment\\\":\\\"Captures the function keyword\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.fortran\\\"}},\\\"comment\\\":\\\"Function body.\\\",\\\"end\\\":\\\"(?ix)\\\\\\\\s*\\\\\\\\b(?:(end\\\\\\\\s*function)(?:\\\\\\\\s+([a-z_]\\\\\\\\w*))?|(end))\\\\\\\\b \\\\\\\\s*([^;!\\\\\\\\n]+)?(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.endfunction.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.endfunction.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.error.function.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?!\\\\\\\\s*[;!\\\\\\\\n])\\\",\\\"comment\\\":\\\"Rest of the first line in function construct.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.function.first-line.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#dummy-variable-list\\\"},{\\\"include\\\":\\\"#result-statement\\\"},{\\\"include\\\":\\\"#language-binding-attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(?!\\\\\\\\b(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*function\\\\\\\\b))\\\",\\\"comment\\\":\\\"Specification and execution block.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\b(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*function\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.specification.function.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(contains)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.contains.fortran\\\"}},\\\"comment\\\":\\\"Contains block.\\\",\\\"end\\\":\\\"(?i)(?=(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*function\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.contains.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]}]}]}]},\\\"generic-interface-block-construct\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(interface)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.interface.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.interface.generic.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?ix)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(assignment)\\\\\\\\s* (\\\\\\\\()\\\\\\\\s*(?:(\\\\\\\\=)|(\\\\\\\\S.*))\\\\\\\\s*(\\\\\\\\))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.assignment.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.error.generic-interface.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"comment\\\":\\\"Assignment generic interface.\\\",\\\"end\\\":\\\"(?ix)\\\\\\\\b(end\\\\\\\\s*interface)\\\\\\\\b (?:\\\\\\\\s*\\\\\\\\b(\\\\\\\\1)\\\\\\\\b\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*(?:(\\\\\\\\3)|(\\\\\\\\S.*))\\\\\\\\s*(\\\\\\\\)))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endinterface.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.assignment.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.assignment.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.error.generic-interface-end.fortran\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interface-procedure-statement\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(operator)\\\\\\\\s* (\\\\\\\\()\\\\\\\\s*(?: (\\\\\\\\.[a-z]+\\\\\\\\.|\\\\\\\\=\\\\\\\\=|\\\\\\\\/\\\\\\\\=|\\\\\\\\>\\\\\\\\=|\\\\\\\\>|\\\\\\\\<|\\\\\\\\<\\\\\\\\=|\\\\\\\\-|\\\\\\\\+|\\\\\\\\/|\\\\\\\\/\\\\\\\\/|\\\\\\\\*\\\\\\\\*|\\\\\\\\*) |(\\\\\\\\S.*) )\\\\\\\\s*(\\\\\\\\))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.operator.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.error.generic-interface-block-op.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"comment\\\":\\\"Operator generic interface.\\\",\\\"end\\\":\\\"(?ix)\\\\\\\\b(end\\\\\\\\s*interface)\\\\\\\\b (?:\\\\\\\\s*\\\\\\\\b(\\\\\\\\1)\\\\\\\\b\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*(?:(\\\\\\\\3)|(\\\\\\\\S.*))\\\\\\\\s*(\\\\\\\\)))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endinterface.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.operator.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.error.generic-interface-block-op-end.fortran\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interface-procedure-statement\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(?:(read)|(write))\\\\\\\\s* (\\\\\\\\()\\\\\\\\s*(?:(formatted)|(unformatted)|(\\\\\\\\S.*))\\\\\\\\s*(\\\\\\\\))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.read.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.write.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.formatted.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.unformatted.fortran\\\"},\\\"6\\\":{\\\"name\\\":\\\"invalid.error.generic-interface-block.fortran\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"comment\\\":\\\"Read/Write generic interface.\\\",\\\"end\\\":\\\"(?ix)\\\\\\\\b(end\\\\\\\\s*interface)\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\b(?:(\\\\\\\\2)|(\\\\\\\\3))\\\\\\\\b\\\\\\\\s* (\\\\\\\\()\\\\\\\\s*(?:(\\\\\\\\4)|(\\\\\\\\5)|(\\\\\\\\S.*))\\\\\\\\s*(\\\\\\\\)))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endinterface.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.read.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.write.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.formatted.fortran\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.unformatted.fortran\\\"},\\\"7\\\":{\\\"name\\\":\\\"invalid.error.generic-interface-block-end.fortran\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interface-procedure-statement\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.fortran\\\"}},\\\"comment\\\":\\\"Generic interface.\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*interface)\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\b(\\\\\\\\1)\\\\\\\\b)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endinterface.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interface-procedure-statement\\\"},{\\\"include\\\":\\\"$base\\\"}]}]},\\\"goto-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(go\\\\\\\\s*to)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.goto.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.goto.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"if-construct\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(if)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.if.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#logical-control-expression\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(then)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.then.fortran\\\"}},\\\"contentName\\\":\\\"meta.block.if.fortran\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*if)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endif.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(else\\\\\\\\s*if)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.elseif.fortran\\\"}},\\\"comment\\\":\\\"else if statement\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.then.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.label.elseif.fortran\\\"}},\\\"comment\\\":\\\"capture the label if present\\\",\\\"match\\\":\\\"(?i)\\\\\\\\b(then)\\\\\\\\b(\\\\\\\\s*[a-z]\\\\\\\\w*)?\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(else)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.else.fortran\\\"}},\\\"comment\\\":\\\"else block\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\b(end\\\\\\\\s*if)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?!(\\\\\\\\s*(;|!|\\\\\\\\n)))\\\",\\\"comment\\\":\\\"rest of else line\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.label.else.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.error.label.else.fortran\\\"}},\\\"comment\\\":\\\"capture the label if present\\\",\\\"match\\\":\\\"\\\\\\\\s*([a-z]\\\\\\\\w*)?\\\\\\\\s*\\\\\\\\b(\\\\\\\\w*)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"begin\\\":\\\"(?i)(?!\\\\\\\\b(end\\\\\\\\s*if)\\\\\\\\b)\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\b(end\\\\\\\\s*if)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\s*[a-z])\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.if.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]}]},\\\"image-control-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#sync-all-statement\\\"},{\\\"include\\\":\\\"#sync-statement\\\"},{\\\"include\\\":\\\"#event-statement\\\"},{\\\"include\\\":\\\"#form-team-statement\\\"},{\\\"include\\\":\\\"#fail-image-statement\\\"}]},\\\"implicit-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(implicit)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.implicit.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.implicit.fortran\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.none.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(none)\\\\\\\\b\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"import-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(import)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.include.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.include.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*(?:(::)|(?=[a-z]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#name-list\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(,)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.all.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(all)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.none.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(none)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(only)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.only.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.colon.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#name-list\\\"}]},{\\\"include\\\":\\\"#invalid-word\\\"}]}]},\\\"include-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(include)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.include.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.include.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-constant\\\"},{\\\"include\\\":\\\"#invalid-character\\\"}]},\\\"intent-attribute\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(intent)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.intent.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(\\\\\\\\))|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.intent.in-out.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.intent.in.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.intent.out.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(?:(in\\\\\\\\s*out)|(in)|(out))\\\\\\\\b\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},\\\"interface-block-constructs\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#abstract-interface-block-construct\\\"},{\\\"include\\\":\\\"#explicit-interface-block-construct\\\"},{\\\"include\\\":\\\"#generic-interface-block-construct\\\"}]},\\\"interface-procedure-statement\\\":{\\\"begin\\\":\\\"(?i)(?=[^'\\\\\\\";!\\\\\\\\n]*\\\\\\\\bprocedure\\\\\\\\b)\\\",\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.procedure.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\G\\\\\\\\s*(?!\\\\\\\\bprocedure\\\\\\\\b))\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\bprocedure\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.attribute-list.interface.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#module-attribute\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(procedure)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.procedure.fortran\\\"}},\\\"comment\\\":\\\"Procedure statement.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"match\\\":\\\"\\\\\\\\G\\\\\\\\s*(::)\\\"},{\\\"include\\\":\\\"#procedure-name-list\\\"}]}]},\\\"intrinsic-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.intrinsic.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(intrinsic)\\\\\\\\b\\\"},\\\"intrinsic-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?ix)\\\\\\\\b(acosh|asinh|atanh|bge|bgt|ble|blt|dshiftl|dshiftr| findloc|hypot|iall|iany|image_index|iparity|is_contiguous|lcobound| leadz|mask[lr]|merge_bits|norm2|num_images|parity|popcnt|poppar| shift[alr]|storage_size|this_image|trailz|ucobound)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.intrinsic.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Intrinsic functions introduced in the Fortran 2008 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\b(bessel_[jy][01n]|erf(c(_scaled)?)?|gamma|log_gamma)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.intrinsic.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Functions accessable through the intrinsic FORTRAN_SPECIAL_FUNCTIONS module. Introduced in the Fortran 2008 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\b(command_argument_count|extends_type_of|is_iostat_end| is_iostat_eor|new_line|same_type_as|selected_char_kind)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.intrinsic.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Intrinsic functions introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\b(ieee_( class|copy_sign|is_(finite|nan|negative|normal)|logb|next_after|rem| rint|scalb|selected_real_kind| support_(datatype|denormal|divide|inf|io|nan|rounding|sqrt|standard|underflow_control)| unordered|value))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.intrinsic.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Functions accessable through the intrinsic IEEE_ARITHMETIC module. Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\b(ieee_support_(flag|halting))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.intrinsic.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Functions accessable through the intrinsic IEEE_EXCEPTIONS module. Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\b(c_(associated|funloc|loc|sizeof))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.intrinsic.fortran\\\"}},\\\"comment\\\":\\\"Functions accessable through the intrinsic ISO_C_BINDING module. Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\b(compiler_(options|version))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.intrinsic.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Functions accessable through the intrinsic ISO_FORTRAN_ENV module. Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\b(null)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.intrinsic.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Intrinsic functions introduced in the Fortran 1995 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\b(achar|adjustl|adjustr|all|allocated|associated|any|bit_size|btest|ceiling|count|cshift|digits|dot_product|eoshift|epsilon|exponent|floor|fraction|huge|iachar|iand|ibclr|ibits|ibset|ieor|ior|ishftc?| kind|lbound|len_trim|logical|matmul|maxexponent|maxloc|maxval|merge|minexponent|minloc|minval|modulo|nearest|not|pack|precision|present|product|radix|range|repeat|reshape|rrspacing|scale|scan|selected_(int|real)_kind|set_exponent|shape|size|spacing|spread|sum|tiny|transfer|transpose|trim|ubound|unpack|verify)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.intrinsic.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Intrinsic functions introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\b([icd]?abs|acos|[ad]int|[ad]nint|aimag|amax[01]| amin[01]|d?asin|d?atan|d?atan2|char|conjg|[cd]?cos|d?cosh|cmplx|dble| i?dim|dmax1|dmin1|dprod|[cd]?exp|float|ichar|idint|ifix|index|int|len| lge|lgt|lle|llt|[acd]?log|[ad]?log10|max[01]?|min[01]?|[ad]?mod| (id)?nint|real|[di]?sign|[cd]?sin|d?sinh|sngl|[cd]?sqrt|d?tan|d?tanh) \\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.intrinsic.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Intrinsic functions introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]}]},\\\"intrinsic-subroutines\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?ix)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(date_and_time|mvbits|random_number|random_seed| system_clock)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.subroutine.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Intrinsic subroutines introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(cpu_time)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.subroutine.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Intrinsic subroutines introduced in the Fortran 1995 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(ieee_(get|set)_(rounding|underflow)_mode)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.subroutine.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Subroutines accessable through the intrinsic IEEE_ARITHMETIC module. Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(ieee_(get|set)_(flag|halting_mode|status))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.subroutine.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Subroutines accessable through the intrinsic IEEE_EXCEPTIONS module. Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(c_f_(pointer|procpointer))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.subroutine.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Subroutines accessable through the intrinsic ISO_C_BINDING module. Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(execute_command_line|get_command| get_command_argument|get_environment_variable|move_alloc)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.subroutine.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Intrinsic subroutines introduced in the Fortran 2008 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]}]},\\\"invalid-character\\\":{\\\"match\\\":\\\"(?i)[^\\\\\\\\s;!\\\\\\\\n]+\\\",\\\"name\\\":\\\"invalid.error.character.fortran\\\"},\\\"invalid-word\\\":{\\\"match\\\":\\\"(?i)\\\\\\\\b\\\\\\\\w+\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.error.word.fortran\\\"},\\\"language-binding-attribute\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(bind)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.bind.fortran\\\"}},\\\"comment\\\":\\\"Introduced in Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?:\\\\\\\\)|(?=\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(c)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.parameter.fortran\\\"},{\\\"include\\\":\\\"#dummy-variable\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"line-continuation-operator\\\":{\\\"comment\\\":\\\"Operator that allows a line to be continued on the next line.\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.line-continuation.fortran\\\"}},\\\"match\\\":\\\"(?:^|(?<=;))\\\\\\\\s*(&)\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*(&)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.line-continuation.fortran\\\"}},\\\"contentName\\\":\\\"meta.line-continuation.fortran\\\",\\\"end\\\":\\\"(?i)^(?:\\\\\\\\s*(&))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.line-continuation.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\S[^!]*\\\",\\\"name\\\":\\\"invalid.error.line-cont.fortran\\\"}]}]},\\\"logical-constant\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.logical.false.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.language.logical.true.fortran\\\"}},\\\"comment\\\":\\\"Logical constants\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(?:(\\\\\\\\.false\\\\\\\\.)|(\\\\\\\\.true\\\\\\\\.))\\\"},\\\"logical-control-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\G(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.expression.control.logical.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses\\\"}]},\\\"logical-operators\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"match\\\":\\\"(?ix)(\\\\\\\\s*\\\\\\\\.(and|eq|eqv|le|lt|ge|gt|ne|neqv|not|or)\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.logical.fortran\\\"},{\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"match\\\":\\\"(\\\\\\\\=\\\\\\\\=|\\\\\\\\/\\\\\\\\=|\\\\\\\\>\\\\\\\\=|(?<!\\\\\\\\=)\\\\\\\\>|\\\\\\\\<\\\\\\\\=|\\\\\\\\<)\\\",\\\"name\\\":\\\"keyword.logical.fortran.modern\\\"}]},\\\"logical-type\\\":{\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(logical)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.logical.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"contentName\\\":\\\"meta.type-spec.fortran\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.character.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.multiplication.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(logical)\\\\\\\\b(?:\\\\\\\\s*(\\\\\\\\*)\\\\\\\\s*(\\\\\\\\d*))?\\\"}]},\\\"module-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.module.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"match\\\":\\\"(?ix)\\\\\\\\s*\\\\\\\\b(module)\\\\\\\\b(?=\\\\\\\\s*(?:[;!\\\\\\\\n]| [^'\\\\\\\";!\\\\\\\\n]*\\\\\\\\b(?:function|procedure|subroutine)\\\\\\\\b))\\\"},\\\"module-definition\\\":{\\\"begin\\\":\\\"(?ix)(?=\\\\\\\\b(module)\\\\\\\\b)(?![^'\\\\\\\";!\\\\\\\\n]* \\\\\\\\b(?:function|procedure|subroutine)\\\\\\\\b)\\\",\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.module.fortran\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.program.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(module)\\\\\\\\b\\\"},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.class.module.fortran\\\"}},\\\"comment\\\":\\\"Module body.\\\",\\\"end\\\":\\\"(?ix)\\\\\\\\b(?:(end\\\\\\\\s*module)(?:\\\\\\\\s+([a-z_]\\\\\\\\w*))?|(end))\\\\\\\\b \\\\\\\\s*([^;!\\\\\\\\n]+)?(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.endmodule.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.module.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.endmodule.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.error.module-definition.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"comment\\\":\\\"Module specification block.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\b(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*module\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.specification.module.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(contains)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.contains.fortran\\\"}},\\\"comment\\\":\\\"Module contains block.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\s*(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*module\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.contains.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]}]}]},\\\"name-list\\\":{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\s*[a-z])\\\",\\\"comment\\\":\\\"Name list.\\\",\\\"contentName\\\":\\\"meta.name-list.fortran\\\",\\\"end\\\":\\\"(?=[\\\\\\\\);!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#intrinsic-functions\\\"},{\\\"include\\\":\\\"#array-constructor\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#assignment-keyword\\\"},{\\\"include\\\":\\\"#operator-keyword\\\"},{\\\"include\\\":\\\"#variable\\\"}]},\\\"named-control-constructs\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?ix)([a-z]\\\\\\\\w*)\\\\\\\\s*(:)(?=\\\\\\\\s*(?:associate|block(?!\\\\\\\\s*data)|critical|do|forall|if|select\\\\\\\\s*case|select\\\\\\\\s*type|select\\\\\\\\s*rank|where)\\\\\\\\b)\\\",\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"contentName\\\":\\\"meta.named-construct.fortran.modern\\\",\\\"end\\\":\\\"(?i)(?!\\\\\\\\s*\\\\\\\\b(?:associate|block(?!\\\\\\\\s*data)|critical|do|forall|if|select\\\\\\\\s*case|select\\\\\\\\s*type|select\\\\\\\\s*rank|where)\\\\\\\\b)(?:\\\\\\\\b(\\\\\\\\1)\\\\\\\\b)?([^\\\\\\\\s;!\\\\\\\\n]*?)?(?=\\\\\\\\s*[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.label.end.name.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.error.named-control-constructs.fortran.modern\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#unnamed-control-constructs\\\"}]},\\\"namelist-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(namelist)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.namelist.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"non-intrinsic-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.non-intrinsic.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(non_intrinsic)\\\\\\\\b\\\"},\\\"non-overridable-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.non-overridable.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(non_overridable)\\\\\\\\b\\\"},\\\"nopass-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.nopass.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(nopass)\\\\\\\\b\\\"},\\\"nullify-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(nullify)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.nullify.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"name\\\":\\\"meta.statement.nullify.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},\\\"numeric-constant\\\":{\\\"comment\\\":\\\"Numeric constants\\\",\\\"match\\\":\\\"(?ix)[\\\\\\\\+\\\\\\\\-]?(\\\\\\\\b\\\\\\\\d+\\\\\\\\.?\\\\\\\\d*|\\\\\\\\.\\\\\\\\d+) (_\\\\\\\\w+|d[\\\\\\\\+\\\\\\\\-]?\\\\\\\\d+|e[\\\\\\\\+\\\\\\\\-]?\\\\\\\\d+(_\\\\\\\\w+)?)?(?![a-z_])\\\",\\\"name\\\":\\\"constant.numeric.fortran\\\"},\\\"numeric-type\\\":{\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?:(complex)|(double\\\\\\\\s*precision)|(double\\\\\\\\s*complex)|(integer)|(real))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.complex.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.double.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.doublecomplex.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.integer.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.real.fortran\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"contentName\\\":\\\"meta.type-spec.fortran\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.complex.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.double.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.doublecomplex.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.integer.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.real.fortran\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.dimension.fortran\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.multiplication.fortran\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.numeric.fortran\\\"}},\\\"match\\\":\\\"(?ix)\\\\\\\\b(?:(complex)|(double\\\\\\\\s*precision)|(double\\\\\\\\s*complex)|(integer)|(real)|(dimension))\\\\\\\\b(?:\\\\\\\\s*(\\\\\\\\*)\\\\\\\\s*(\\\\\\\\d*))?\\\"}]},\\\"operator-keyword\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(operator)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.generic-spec.operator.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Operator generic specification.\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#arithmetic-operators\\\"},{\\\"include\\\":\\\"#logical-operators\\\"},{\\\"include\\\":\\\"#user-defined-operators\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#arithmetic-operators\\\"},{\\\"include\\\":\\\"#assignment-operator\\\"},{\\\"include\\\":\\\"#derived-type-operators\\\"},{\\\"include\\\":\\\"#logical-operators\\\"},{\\\"include\\\":\\\"#pointer-operators\\\"},{\\\"include\\\":\\\"#string-operators\\\"},{\\\"include\\\":\\\"#user-defined-operators\\\"}]},\\\"optional-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.optional.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(optional)\\\\\\\\b\\\"},\\\"parameter-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.parameter.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(parameter)\\\\\\\\b\\\"},\\\"parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#array-constructor\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#intrinsic-functions\\\"},{\\\"include\\\":\\\"#variable\\\"}]},\\\"parentheses-dummy-variables\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#procedure-call-dummy-variable\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#array-constructor\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#intrinsic-functions\\\"},{\\\"include\\\":\\\"#variable\\\"}]},\\\"pass-attribute\\\":{\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(pass)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.pass.fortran\\\"}},\\\"comment\\\":\\\"Pass attribute with argument.\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\n)\\\",\\\"patterns\\\":[]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.pass.fortran\\\"}},\\\"comment\\\":\\\"Pass attribute without argument.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(pass)\\\\\\\\b\\\"}]},\\\"pause-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(pause)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.pause.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.pause.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#invalid-character\\\"}]},\\\"pointer-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.pointer.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(pointer)\\\\\\\\b\\\"},\\\"pointer-operators\\\":{\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"match\\\":\\\"(\\\\\\\\=\\\\\\\\>)\\\",\\\"name\\\":\\\"keyword.other.point.fortran\\\"},\\\"preprocessor\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#:?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.indicator.fortran\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"meta.preprocessor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-if-construct\\\"},{\\\"include\\\":\\\"#preprocessor-statements\\\"}]},\\\"preprocessor-arithmetic-operators\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.subtraction.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.addition.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.division.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.multiplication.fortran\\\"}},\\\"comment\\\":\\\"division regex is different than in main fortran\\\",\\\"match\\\":\\\"(\\\\\\\\-)|(\\\\\\\\+)|(\\\\\\\\/)|(\\\\\\\\*)\\\"},\\\"preprocessor-assignment-operator\\\":{\\\"comment\\\":\\\"assignments with = are not allowed\\\",\\\"match\\\":\\\"(?<!\\\\\\\\=)(\\\\\\\\=)(?!\\\\\\\\=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.preprocessor.fortran\\\"},\\\"preprocessor-comments\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.preprocessor\\\"},\\\"preprocessor-constants\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#cpp-numeric-constant\\\"},{\\\"include\\\":\\\"#preprocessor-string-constant\\\"}]},\\\"preprocessor-define-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(define)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.define.fortran\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.macro.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-comments\\\"},{\\\"include\\\":\\\"#preprocessor-constants\\\"},{\\\"include\\\":\\\"#preprocessor-line-continuation-operator\\\"}]},\\\"preprocessor-defined-function\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.defined.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(defined)\\\\\\\\b\\\"},\\\"preprocessor-error-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*(error)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.error.fortran\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.macro.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-comments\\\"},{\\\"include\\\":\\\"#preprocessor-string-constant\\\"},{\\\"include\\\":\\\"#preprocessor-line-continuation-operator\\\"}]},\\\"preprocessor-if-construct\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(if)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.if.fortran\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.conditional.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-comments\\\"},{\\\"include\\\":\\\"#cpp-numeric-constant\\\"},{\\\"include\\\":\\\"#preprocessor-logical-operators\\\"},{\\\"include\\\":\\\"#preprocessor-arithmetic-operators\\\"},{\\\"include\\\":\\\"#preprocessor-defined-function\\\"},{\\\"include\\\":\\\"#preprocessor-line-continuation-operator\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(ifdef)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.ifdef.fortran\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-comments\\\"},{\\\"include\\\":\\\"#cpp-numeric-constant\\\"},{\\\"include\\\":\\\"#preprocessor-logical-operators\\\"},{\\\"include\\\":\\\"#preprocessor-arithmetic-operators\\\"},{\\\"include\\\":\\\"#preprocessor-line-continuation-operator\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(ifndef)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.ifndef.fortran\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-comments\\\"},{\\\"include\\\":\\\"#cpp-numeric-constant\\\"},{\\\"include\\\":\\\"#preprocessor-logical-operators\\\"},{\\\"include\\\":\\\"#preprocessor-arithmetic-operators\\\"},{\\\"include\\\":\\\"#preprocessor-line-continuation-operator\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(else)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.else.fortran\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-comments\\\"},{\\\"include\\\":\\\"#cpp-numeric-constant\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(elif)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.elif.fortran\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-comments\\\"},{\\\"include\\\":\\\"#cpp-numeric-constant\\\"},{\\\"include\\\":\\\"#preprocessor-logical-operators\\\"},{\\\"include\\\":\\\"#preprocessor-arithmetic-operators\\\"},{\\\"include\\\":\\\"#preprocessor-defined-function\\\"},{\\\"include\\\":\\\"#preprocessor-line-continuation-operator\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(endif)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.endif.fortran\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-comments\\\"}]}]},\\\"preprocessor-include-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*(include)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.include.fortran\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.include.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-comments\\\"},{\\\"include\\\":\\\"#preprocessor-string-constant\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.preprocessor.fortran\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.preprocessor.fortran\\\"}},\\\"name\\\":\\\"string.quoted.other.lt-gt.include.preprocessor.fortran\\\"},{\\\"include\\\":\\\"#line-continuation-operator\\\"}]},\\\"preprocessor-line-continuation-operator\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.line-continuation.preprocessor.fortran\\\"}},\\\"end\\\":\\\"(?i)^\\\"},\\\"preprocessor-logical-operators\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.and.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.equals.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.not_equals.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.or.fortran\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.less_eq.fortran\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.more_eq.fortran\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.less.fortran\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.more.fortran\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.complementary.fortran\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.xor.fortran\\\"},\\\"11\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.bitand.fortran\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.not.fortran\\\"},\\\"13\\\":{\\\"name\\\":\\\"keyword.operator.logical.preprocessor.bitor.fortran\\\"}},\\\"comment\\\":\\\"and:&&, bitand:&, or:||, bitor:|, not eq:!=, not:!, xor:^, compl:~\\\",\\\"match\\\":\\\"(&&)|(==)|(\\\\\\\\!=)|(\\\\\\\\|\\\\\\\\|)|(\\\\\\\\<\\\\\\\\=)|(\\\\\\\\>=)|(\\\\\\\\<)|(\\\\\\\\>)|(~)|(\\\\\\\\^)|(&)|(\\\\\\\\!)|(\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.logical.preprocessor.fortran\\\"},\\\"preprocessor-operators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-line-continuation-operator\\\"},{\\\"include\\\":\\\"#preprocessor-logical-operators\\\"},{\\\"include\\\":\\\"#preprocessor-arithmetic-operators\\\"}]},\\\"preprocessor-pragma-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(pragma)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.pragma.fortran\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.pragma.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-comments\\\"},{\\\"include\\\":\\\"#preprocessor-string-constant\\\"}]},\\\"preprocessor-statements\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-define-statement\\\"},{\\\"include\\\":\\\"#preprocessor-error-statement\\\"},{\\\"include\\\":\\\"#preprocessor-include-statement\\\"},{\\\"include\\\":\\\"#preprocessor-preprocessor-pragma-statement\\\"},{\\\"include\\\":\\\"#preprocessor-undefine-statement\\\"}]},\\\"preprocessor-string-constant\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.preprocessor.fortran\\\"}},\\\"comment\\\":\\\"Double quote string\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.preprocessor.fortran\\\"}},\\\"name\\\":\\\"string.quoted.double.include.preprocessor.fortran\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.preprocessor.fortran\\\"}},\\\"comment\\\":\\\"Single quote string\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.preprocessor.fortran\\\"}},\\\"name\\\":\\\"string.quoted.single.include.preprocessor.fortran\\\"}]},\\\"preprocessor-undefine-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(undef)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preprocessor.undef.fortran\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.undef.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-comments\\\"},{\\\"include\\\":\\\"#preprocessor-line-continuation-operator\\\"}]},\\\"private-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.private.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(private)\\\\\\\\b\\\"},\\\"procedure-call-dummy-variable\\\":{\\\"match\\\":\\\"(?i)\\\\\\\\s*([a-z]\\\\\\\\w*)(?=\\\\\\\\s*\\\\\\\\=)(?!\\\\\\\\s*\\\\\\\\=\\\\\\\\=)\\\",\\\"name\\\":\\\"variable.parameter.dummy-variable.fortran.modern\\\"},\\\"procedure-definition\\\":{\\\"begin\\\":\\\"(?i)(?=[^'\\\\\\\";!\\\\\\\\n]*\\\\\\\\bmodule\\\\\\\\s+procedure\\\\\\\\b)\\\",\\\"comment\\\":\\\"Procedure program unit. Introduced in the Fortran 2008 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.procedure.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(module\\\\\\\\s+procedure)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.procedure.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.procedure.fortran\\\"}},\\\"comment\\\":\\\"Procedure body.\\\",\\\"end\\\":\\\"(?ix)\\\\\\\\s*\\\\\\\\b(?:(end\\\\\\\\s*procedure)(?:\\\\\\\\s+([a-z_]\\\\\\\\w*))?|(end))\\\\\\\\b \\\\\\\\s*([^;!\\\\\\\\n]+)?(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.endprocedure.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.procedure.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.endprocedure.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.error.procedure-definition.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?!\\\\\\\\s*[;!\\\\\\\\n])\\\",\\\"comment\\\":\\\"Rest of the first line in procedure construct - should be empty.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.first-line.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#invalid-character\\\"}]},{\\\"begin\\\":\\\"(?i)(?!\\\\\\\\s*(?:contains\\\\\\\\b|end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*procedure\\\\\\\\b))\\\",\\\"comment\\\":\\\"Specification and execution block.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\s*(?:contains\\\\\\\\b|end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*procedure\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.specification.procedure.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*(contains)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.contains.fortran\\\"}},\\\"comment\\\":\\\"Contains block.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\s*(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*procedure\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.contains.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]}]}]},\\\"procedure-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.procedure.fortran\\\"}},\\\"comment\\\":\\\"Procedure name.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\"},\\\"procedure-name-list\\\":{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\s*[a-z])\\\",\\\"comment\\\":\\\"Name list.\\\",\\\"contentName\\\":\\\"meta.name-list.fortran\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?!\\\\\\\\s*\\\\\\\\n)\\\",\\\"end\\\":\\\"(,)|(?=[!;\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#procedure-name\\\"},{\\\"include\\\":\\\"#pointer-operators\\\"}]}]},\\\"procedure-specification-statement\\\":{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\b(?:procedure)\\\\\\\\b)\\\",\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.specification.procedure.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#procedure-type\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\s*(,|::|\\\\\\\\())\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"contentName\\\":\\\"meta.attribute-list.procedure.fortran\\\",\\\"end\\\":\\\"(::)|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)|^|(?<=&)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=::|[,&;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#access-attribute\\\"},{\\\"include\\\":\\\"#intent-attribute\\\"},{\\\"include\\\":\\\"#optional-attribute\\\"},{\\\"include\\\":\\\"#pointer-attribute\\\"},{\\\"include\\\":\\\"#protected-attribute\\\"},{\\\"include\\\":\\\"#save-attribute\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]}]},{\\\"include\\\":\\\"#procedure-name-list\\\"}]},\\\"procedure-type\\\":{\\\"comment\\\":\\\"Introduced in the Fortran ???? standard.\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(procedure)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.procedure.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"contentName\\\":\\\"meta.type-spec.fortran\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#procedure-name\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.procedure.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(procedure)\\\\\\\\b\\\"}]},\\\"program-definition\\\":{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\b(program)\\\\\\\\b)\\\",\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.program.fortran\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.program.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(program)\\\\\\\\b\\\"},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.program.fortran\\\"}},\\\"comment\\\":\\\"Program body.\\\",\\\"end\\\":\\\"(?ix)\\\\\\\\b(?:(end\\\\\\\\s*program)(?:\\\\\\\\s+([a-z_]\\\\\\\\w*))?|(end))\\\\\\\\b\\\\\\\\s*([^;!\\\\\\\\n]+)?(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endprogram.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.program.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.endprogram.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.error.program-definition.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"comment\\\":\\\"Program specification block.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\b(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*program\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.specification.program.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(contains)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.contains.fortran\\\"}},\\\"comment\\\":\\\"Program contains block.\\\",\\\"end\\\":\\\"(?i)(?=(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*program\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.contains.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]}]}]},\\\"protected-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.protected.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(protected)\\\\\\\\b\\\"},\\\"public-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.public.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(public)\\\\\\\\b\\\"},\\\"pure-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.impure.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.pure.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1995 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(?:(impure)|(pure))\\\\\\\\b\\\"},\\\"recursive-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.non_recursive.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.recursive.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(?:(non_recursive)|(recursive))\\\\\\\\b\\\"},\\\"result-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(result)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.result.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#dummy-variable\\\"}]},\\\"return-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(return)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.return.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.return.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#invalid-character\\\"}]},\\\"save-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.save.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(save)\\\\\\\\b\\\"},\\\"select-case-construct\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(select\\\\\\\\s*case)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.selectcase.fortran\\\"}},\\\"comment\\\":\\\"Select case construct. Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*select)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endselect.fortran\\\"}},\\\"name\\\":\\\"meta.block.select.case.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(case)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.case.fortran\\\"}},\\\"end\\\":\\\"(?i)(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.default.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(default)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},\\\"select-rank-construct\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(select\\\\\\\\s*rank)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.selectrank.fortran\\\"}},\\\"comment\\\":\\\"Select rank construct. Introduced in the Fortran 2008 standard.\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*select)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endselect.fortran\\\"}},\\\"name\\\":\\\"meta.block.select.rank.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(rank)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.rank.fortran\\\"}},\\\"end\\\":\\\"(?i)(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.default.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(default)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},\\\"select-type-construct\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(select\\\\\\\\s*type)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.selecttype.fortran\\\"}},\\\"comment\\\":\\\"Select type construct. Introduced in the Fortran 2003 standard.\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*select)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endselect.fortran\\\"}},\\\"name\\\":\\\"meta.block.select.type.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(?:(class)|(type))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.class.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.type.fortran\\\"}},\\\"end\\\":\\\"(?i)(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.default.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(default)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.is.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(is)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},\\\"sequence-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.sequence.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 20?? standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(sequence)\\\\\\\\b\\\"},\\\"specification-statements\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-specification-statement\\\"},{\\\"include\\\":\\\"#common-statement\\\"},{\\\"include\\\":\\\"#data-statement\\\"},{\\\"include\\\":\\\"#equivalence-statement\\\"},{\\\"include\\\":\\\"#implicit-statement\\\"},{\\\"include\\\":\\\"#namelist-statement\\\"},{\\\"include\\\":\\\"#use-statement\\\"}]},\\\"stop-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(stop)\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.stop.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.label.stop.stop\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.control.stop.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#string-operators\\\"},{\\\"include\\\":\\\"#invalid-character\\\"}]},\\\"string-constant\\\":{\\\"comment\\\":\\\"Introduced in the Fortran 1977 standard.\\\",\\\"patterns\\\":[{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.fortran\\\"}},\\\"comment\\\":\\\"String\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.fortran\\\"}},\\\"name\\\":\\\"string.quoted.single.fortran\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"''\\\",\\\"name\\\":\\\"constant.character.escape.apostrophe.fortran\\\"}]},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.fortran\\\"}},\\\"comment\\\":\\\"String\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.fortran\\\"}},\\\"name\\\":\\\"string.quoted.double.fortran\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.quote.fortran\\\"}]}]},\\\"string-line-continuation-operator\\\":{\\\"begin\\\":\\\"(&)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.line-continuation.fortran\\\"}},\\\"comment\\\":\\\"Operator that allows a line to be continued on the next line.\\\",\\\"end\\\":\\\"(?i)^(?:(?=\\\\\\\\s*[^\\\\\\\\s!&])|\\\\\\\\s*(&))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.line-continuation.fortran\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\S.*\\\",\\\"name\\\":\\\"invalid.error.string-line-cont.fortran\\\"}]},\\\"string-operators\\\":{\\\"comment\\\":\\\"Introduced in the Fortran 19?? standard.\\\",\\\"match\\\":\\\"(\\\\\\\\/\\\\\\\\/)\\\",\\\"name\\\":\\\"keyword.other.concatination.fortran\\\"},\\\"submodule-definition\\\":{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\b(submodule)\\\\\\\\s*\\\\\\\\()\\\",\\\"comment\\\":\\\"Introduced in the Fortran 2008 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.submodule.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(submodule)\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*(\\\\\\\\w+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.submodule.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.class.submodule.fortran\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"patterns\\\":[]},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.module.submodule.fortran\\\"}},\\\"comment\\\":\\\"Submodule body.\\\",\\\"end\\\":\\\"(?ix)\\\\\\\\s*\\\\\\\\b(?:(end\\\\\\\\s*submodule)(?:\\\\\\\\s+([a-z_]\\\\\\\\w*))?|(end))\\\\\\\\b \\\\\\\\s*([^;!\\\\\\\\n]+)?(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.endsubmodule.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.module.submodule.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.endsubmodule.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.error.submodule.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"comment\\\":\\\"Submodule specification block.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\b(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*submodule\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.specification.submodule.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(contains)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.contains.fortran\\\"}},\\\"comment\\\":\\\"Submodule contains block.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\s*(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*submodule\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.contains.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]}]}]},\\\"subroutine-definition\\\":{\\\"begin\\\":\\\"(?i)(?=([^:'\\\\\\\";!\\\\\\\\n](?!\\\\\\\\bend))*\\\\\\\\bsubroutine\\\\\\\\b)\\\",\\\"comment\\\":\\\"Subroutine program unit. Introduced in the Fortran 1977 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.subroutine.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\G\\\\\\\\s*(?!\\\\\\\\bsubroutine\\\\\\\\b))\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\bsubroutine\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.attribute-list.subroutine.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#elemental-attribute\\\"},{\\\"include\\\":\\\"#module-attribute\\\"},{\\\"include\\\":\\\"#pure-attribute\\\"},{\\\"include\\\":\\\"#recursive-attribute\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(subroutine)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.subroutine.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.subroutine.fortran\\\"}},\\\"comment\\\":\\\"Subroutine body.\\\",\\\"end\\\":\\\"(?ix)\\\\\\\\b(?:(end\\\\\\\\s*subroutine)(?:\\\\\\\\s+([a-z_]\\\\\\\\w*))?|(end))\\\\\\\\b \\\\\\\\s*([^;!\\\\\\\\n]+)?(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.endsubroutine.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.subroutine.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.endsubroutine.fortran\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.error.subroutine.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?!\\\\\\\\s*[;!\\\\\\\\n])\\\",\\\"comment\\\":\\\"Rest of the first line in subroutine construct.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.first-line.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#dummy-variable-list\\\"},{\\\"include\\\":\\\"#language-binding-attribute\\\"}]},{\\\"begin\\\":\\\"(?i)(?!\\\\\\\\b(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*subroutine\\\\\\\\b))\\\",\\\"comment\\\":\\\"Specification and execution block.\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\b(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*subroutine\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.specification.subroutine.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(contains)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.contains.fortran\\\"}},\\\"comment\\\":\\\"Contains block.\\\",\\\"end\\\":\\\"(?i)(?=(?:end\\\\\\\\s*[;!\\\\\\\\n]|end\\\\\\\\s*subroutine\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.block.contains.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]}]}]}]},\\\"sync-all-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(sync all|sync memory)(\\\\\\\\s*(?=\\\\\\\\())?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.sync-all-memory.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2018 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"name\\\":\\\"meta.statement.sync-all-memory.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},\\\"sync-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(sync images|sync team)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.sync-images-team.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parentheses.left.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2018 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parentheses.right.fortran\\\"}},\\\"name\\\":\\\"meta.statement.sync-images-team.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"}]},\\\"target-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.target.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(target)\\\\\\\\b\\\"},\\\"type-specification-statements\\\":{\\\"begin\\\":\\\"(?ix)(?=\\\\\\\\b(?:character|class|complex|double\\\\\\\\s*precision|double\\\\\\\\s*complex|integer|logical|real|type|dimension)\\\\\\\\b(?![^'\\\\\\\";!\\\\\\\\n:]*\\\\\\\\bfunction\\\\\\\\b))\\\",\\\"comment\\\":\\\"Supported types for function and escape :: if function is used as a variable name (which is bad practice).\\\",\\\"end\\\":\\\"(?=[\\\\\\\\);!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.specification.type.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#types\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\s*(,|::))\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"contentName\\\":\\\"meta.attribute-list.type-specification-statements.fortran\\\",\\\"end\\\":\\\"(::)|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)|^|(?<=&)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=::|[,&;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#access-attribute\\\"},{\\\"include\\\":\\\"#allocatable-attribute\\\"},{\\\"include\\\":\\\"#asynchronous-attribute\\\"},{\\\"include\\\":\\\"#codimension-attribute\\\"},{\\\"include\\\":\\\"#contiguous-attribute\\\"},{\\\"include\\\":\\\"#dimension-attribute\\\"},{\\\"include\\\":\\\"#external-attribute\\\"},{\\\"include\\\":\\\"#intent-attribute\\\"},{\\\"include\\\":\\\"#intrinsic-attribute\\\"},{\\\"include\\\":\\\"#language-binding-attribute\\\"},{\\\"include\\\":\\\"#optional-attribute\\\"},{\\\"include\\\":\\\"#parameter-attribute\\\"},{\\\"include\\\":\\\"#pointer-attribute\\\"},{\\\"include\\\":\\\"#protected-attribute\\\"},{\\\"include\\\":\\\"#save-attribute\\\"},{\\\"include\\\":\\\"#target-attribute\\\"},{\\\"include\\\":\\\"#value-attribute\\\"},{\\\"include\\\":\\\"#volatile-attribute\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]}]},{\\\"include\\\":\\\"#name-list\\\"}]},\\\"types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#character-type\\\"},{\\\"include\\\":\\\"#derived-type\\\"},{\\\"include\\\":\\\"#logical-type\\\"},{\\\"include\\\":\\\"#numeric-type\\\"}]},\\\"unnamed-control-constructs\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#associate-construct\\\"},{\\\"include\\\":\\\"#block-construct\\\"},{\\\"include\\\":\\\"#critical-construct\\\"},{\\\"include\\\":\\\"#do-construct\\\"},{\\\"include\\\":\\\"#forall-construct\\\"},{\\\"include\\\":\\\"#if-construct\\\"},{\\\"include\\\":\\\"#select-case-construct\\\"},{\\\"include\\\":\\\"#select-type-construct\\\"},{\\\"include\\\":\\\"#select-rank-construct\\\"},{\\\"include\\\":\\\"#where-construct\\\"}]},\\\"use-statement\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\b(use)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.use.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.statement.use.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\s*(,|::|\\\\\\\\())\\\",\\\"comment\\\":\\\"Attribute list.\\\",\\\"contentName\\\":\\\"meta.attribute-list.namelist.fortran\\\",\\\"end\\\":\\\"(::)|(?=[;!\\\\\\\\n])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.fortran\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=::|[,;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#intrinsic-attribute\\\"},{\\\"include\\\":\\\"#non-intrinsic-attribute\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.class.module.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.fortran\\\"}},\\\"end\\\":\\\"(?=::|[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(only\\\\\\\\s*:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.only.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#operator-keyword\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\s*[a-z])\\\",\\\"contentName\\\":\\\"meta.name-list.fortran\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#operator-keyword\\\"},{\\\"include\\\":\\\"$base\\\"}]}]}]}]},\\\"user-defined-operators\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.user-defined.fortran\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\s*(\\\\\\\\.[a-z]+\\\\\\\\.)\\\"},\\\"value-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.value.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(value)\\\\\\\\b\\\"},\\\"variable\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?i)\\\\\\\\b(?=[a-z])\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.parameter.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#derived-type-operators\\\"},{\\\"include\\\":\\\"#parentheses-dummy-variables\\\"},{\\\"include\\\":\\\"#word\\\"}]},\\\"volatile-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.volatile.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 2003 standard.\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(volatile)\\\\\\\\b\\\"},\\\"where-construct\\\":{\\\"patterns\\\":[{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?i)\\\\\\\\b(where)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.where.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1990 standard.\\\",\\\"end\\\":\\\"(?<!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#logical-control-expression\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\))(?=\\\\\\\\s*[;!\\\\\\\\n])\\\",\\\"end\\\":\\\"(?i)\\\\\\\\b(end\\\\\\\\s*where)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.endwhere.fortran\\\"}},\\\"name\\\":\\\"meta.block.where.fortran\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(else\\\\\\\\s*where)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.elsewhere.fortran\\\"}},\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?i)(?<=\\\\\\\\))(?!\\\\\\\\s*[;!\\\\\\\\n])\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"meta.statement.control.where.fortran\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]}]},\\\"while-attribute\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\G\\\\\\\\s*\\\\\\\\b(while)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.while.fortran\\\"}},\\\"comment\\\":\\\"Introduced in the Fortran 1995 standard.\\\",\\\"end\\\":\\\"(?=[;!\\\\\\\\n])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#invalid-word\\\"}]},\\\"word\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?:\\\\\\\\G|(?<=\\\\\\\\%))\\\\\\\\s*\\\\\\\\b([a-z]\\\\\\\\w*)\\\\\\\\b\\\"}]}},\\\"scopeName\\\":\\\"source.fortran.free\\\",\\\"aliases\\\":[\\\"f90\\\",\\\"f95\\\",\\\"f03\\\",\\\"f08\\\",\\\"f18\\\"]}\"))\n\nexport default [\nlang\n]\n", "import fortran_free_form from './fortran-free-form.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Fortran (Fixed Form)\\\",\\\"fileTypes\\\":[\\\"f\\\",\\\"F\\\",\\\"f77\\\",\\\"F77\\\",\\\"for\\\",\\\"FOR\\\"],\\\"injections\\\":{\\\"source.fortran.fixed - ( string | comment )\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#line-header\\\"},{\\\"include\\\":\\\"#line-end-comment\\\"}]}},\\\"name\\\":\\\"fortran-fixed-form\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#line-header\\\"},{\\\"include\\\":\\\"source.fortran.free\\\"}],\\\"repository\\\":{\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^[cC\\\\\\\\*]\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.fortran\\\"},{\\\"begin\\\":\\\"^ *!\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.fortran\\\"}]},\\\"line-end-comment\\\":{\\\"begin\\\":\\\"(?<=^.{72})(?!\\\\\\\\n)\\\",\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line-end.fortran\\\"},\\\"line-header\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.fortran\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.line-continuation-operator.fortran\\\"},\\\"3\\\":{\\\"name\\\":\\\"source.fortran.free\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.error.fortran\\\"}},\\\"match\\\":\\\"^(?!\\\\\\\\s*[!#])(?:([ \\\\\\\\d]{5} )|( {5}.)|(\\\\\\\\t)|(.{1,5}))\\\"}},\\\"scopeName\\\":\\\"source.fortran.fixed\\\",\\\"embeddedLangs\\\":[\\\"fortran-free-form\\\"],\\\"aliases\\\":[\\\"f\\\",\\\"for\\\",\\\"f77\\\"]}\"))\n\nexport default [\n...fortran_free_form,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Markdown\\\",\\\"name\\\":\\\"markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#frontMatter\\\"},{\\\"include\\\":\\\"#block\\\"}],\\\"repository\\\":{\\\"ampersand\\\":{\\\"comment\\\":\\\"Markdown will convert this for us. We match it so that the HTML grammar will not mark it up as invalid.\\\",\\\"match\\\":\\\"&(?!([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+);)\\\",\\\"name\\\":\\\"meta.other.valid-ampersand.markdown\\\"},\\\"block\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#separator\\\"},{\\\"include\\\":\\\"#heading\\\"},{\\\"include\\\":\\\"#blockquote\\\"},{\\\"include\\\":\\\"#lists\\\"},{\\\"include\\\":\\\"#fenced_code_block\\\"},{\\\"include\\\":\\\"#raw_block\\\"},{\\\"include\\\":\\\"#link-def\\\"},{\\\"include\\\":\\\"#html\\\"},{\\\"include\\\":\\\"#table\\\"},{\\\"include\\\":\\\"#paragraph\\\"}]},\\\"blockquote\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)[ ]{0,3}(>) ?\\\",\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.quote.begin.markdown\\\"}},\\\"name\\\":\\\"markup.quote.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)\\\\\\\\s*(>) ?\\\"},\\\"bold\\\":{\\\"begin\\\":\\\"(?<open>(\\\\\\\\*\\\\\\\\*(?=\\\\\\\\w)|(?<!\\\\\\\\w)\\\\\\\\*\\\\\\\\*|(?<!\\\\\\\\w)\\\\\\\\b__))(?=\\\\\\\\S)(?=(<[^>]*+>|(?<raw>`+)([^`]|(?!(?<!`)\\\\\\\\k<raw>(?!`))`)*+\\\\\\\\k<raw>|\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\`*_{}\\\\\\\\[\\\\\\\\]()#.!+\\\\\\\\->]?+|\\\\\\\\[((?<square>[^\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.|\\\\\\\\[\\\\\\\\g<square>*+\\\\\\\\])*+\\\\\\\\](([ ]?\\\\\\\\[[^\\\\\\\\]]*+\\\\\\\\])|(\\\\\\\\([ \\\\\\\\t]*+<?(.*?)>?[ \\\\\\\\t]*+((?<title>['\\\\\\\"])(.*?)\\\\\\\\k<title>)?\\\\\\\\))))|(?!(?<=\\\\\\\\S)\\\\\\\\k<open>).)++(?<=\\\\\\\\S)(?=__\\\\\\\\b|\\\\\\\\*\\\\\\\\*)\\\\\\\\k<open>)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bold.markdown\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\S)(\\\\\\\\1)\\\",\\\"name\\\":\\\"markup.bold.markdown\\\",\\\"patterns\\\":[{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?=<[^>]*?>)\\\",\\\"end\\\":\\\"(?<=>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.derivative\\\"}]},{\\\"include\\\":\\\"#escape\\\"},{\\\"include\\\":\\\"#ampersand\\\"},{\\\"include\\\":\\\"#bracket\\\"},{\\\"include\\\":\\\"#raw\\\"},{\\\"include\\\":\\\"#bold\\\"},{\\\"include\\\":\\\"#italic\\\"},{\\\"include\\\":\\\"#image-inline\\\"},{\\\"include\\\":\\\"#link-inline\\\"},{\\\"include\\\":\\\"#link-inet\\\"},{\\\"include\\\":\\\"#link-email\\\"},{\\\"include\\\":\\\"#image-ref\\\"},{\\\"include\\\":\\\"#link-ref-literal\\\"},{\\\"include\\\":\\\"#link-ref\\\"},{\\\"include\\\":\\\"#link-ref-shortcut\\\"},{\\\"include\\\":\\\"#strikethrough\\\"}]},\\\"bracket\\\":{\\\"comment\\\":\\\"Markdown will convert this for us. We match it so that the HTML grammar will not mark it up as invalid.\\\",\\\"match\\\":\\\"<(?![a-zA-Z/?\\\\\\\\$!])\\\",\\\"name\\\":\\\"meta.other.valid-bracket.markdown\\\"},\\\"escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[-`*_#+.!(){}\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\>]\\\",\\\"name\\\":\\\"constant.character.escape.markdown\\\"},\\\"fenced_code_block\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#fenced_code_block_css\\\"},{\\\"include\\\":\\\"#fenced_code_block_basic\\\"},{\\\"include\\\":\\\"#fenced_code_block_ini\\\"},{\\\"include\\\":\\\"#fenced_code_block_java\\\"},{\\\"include\\\":\\\"#fenced_code_block_lua\\\"},{\\\"include\\\":\\\"#fenced_code_block_makefile\\\"},{\\\"include\\\":\\\"#fenced_code_block_perl\\\"},{\\\"include\\\":\\\"#fenced_code_block_r\\\"},{\\\"include\\\":\\\"#fenced_code_block_ruby\\\"},{\\\"include\\\":\\\"#fenced_code_block_php\\\"},{\\\"include\\\":\\\"#fenced_code_block_sql\\\"},{\\\"include\\\":\\\"#fenced_code_block_vs_net\\\"},{\\\"include\\\":\\\"#fenced_code_block_xml\\\"},{\\\"include\\\":\\\"#fenced_code_block_xsl\\\"},{\\\"include\\\":\\\"#fenced_code_block_yaml\\\"},{\\\"include\\\":\\\"#fenced_code_block_dosbatch\\\"},{\\\"include\\\":\\\"#fenced_code_block_clojure\\\"},{\\\"include\\\":\\\"#fenced_code_block_coffee\\\"},{\\\"include\\\":\\\"#fenced_code_block_c\\\"},{\\\"include\\\":\\\"#fenced_code_block_cpp\\\"},{\\\"include\\\":\\\"#fenced_code_block_diff\\\"},{\\\"include\\\":\\\"#fenced_code_block_dockerfile\\\"},{\\\"include\\\":\\\"#fenced_code_block_git_commit\\\"},{\\\"include\\\":\\\"#fenced_code_block_git_rebase\\\"},{\\\"include\\\":\\\"#fenced_code_block_go\\\"},{\\\"include\\\":\\\"#fenced_code_block_groovy\\\"},{\\\"include\\\":\\\"#fenced_code_block_pug\\\"},{\\\"include\\\":\\\"#fenced_code_block_js\\\"},{\\\"include\\\":\\\"#fenced_code_block_js_regexp\\\"},{\\\"include\\\":\\\"#fenced_code_block_json\\\"},{\\\"include\\\":\\\"#fenced_code_block_jsonc\\\"},{\\\"include\\\":\\\"#fenced_code_block_less\\\"},{\\\"include\\\":\\\"#fenced_code_block_objc\\\"},{\\\"include\\\":\\\"#fenced_code_block_swift\\\"},{\\\"include\\\":\\\"#fenced_code_block_scss\\\"},{\\\"include\\\":\\\"#fenced_code_block_perl6\\\"},{\\\"include\\\":\\\"#fenced_code_block_powershell\\\"},{\\\"include\\\":\\\"#fenced_code_block_python\\\"},{\\\"include\\\":\\\"#fenced_code_block_julia\\\"},{\\\"include\\\":\\\"#fenced_code_block_regexp_python\\\"},{\\\"include\\\":\\\"#fenced_code_block_rust\\\"},{\\\"include\\\":\\\"#fenced_code_block_scala\\\"},{\\\"include\\\":\\\"#fenced_code_block_shell\\\"},{\\\"include\\\":\\\"#fenced_code_block_ts\\\"},{\\\"include\\\":\\\"#fenced_code_block_tsx\\\"},{\\\"include\\\":\\\"#fenced_code_block_csharp\\\"},{\\\"include\\\":\\\"#fenced_code_block_fsharp\\\"},{\\\"include\\\":\\\"#fenced_code_block_dart\\\"},{\\\"include\\\":\\\"#fenced_code_block_handlebars\\\"},{\\\"include\\\":\\\"#fenced_code_block_markdown\\\"},{\\\"include\\\":\\\"#fenced_code_block_log\\\"},{\\\"include\\\":\\\"#fenced_code_block_erlang\\\"},{\\\"include\\\":\\\"#fenced_code_block_elixir\\\"},{\\\"include\\\":\\\"#fenced_code_block_latex\\\"},{\\\"include\\\":\\\"#fenced_code_block_bibtex\\\"},{\\\"include\\\":\\\"#fenced_code_block_twig\\\"},{\\\"include\\\":\\\"#fenced_code_block_unknown\\\"}]},\\\"fenced_code_block_basic\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(html|htm|shtml|xhtml|inc|tmpl|tpl)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_bibtex\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(bibtex)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.bibtex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.bibtex\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_c\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(c|h)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.c\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_clojure\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(clj|cljs|clojure)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.clojure\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_coffee\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(coffee|Cakefile|coffee.erb)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.coffee\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_cpp\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(cpp|c\\\\\\\\+\\\\\\\\+|cxx)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.cpp source.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_csharp\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(cs|csharp|c#)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.csharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_css\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(css|css.erb)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_dart\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(dart)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.dart\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.dart\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_diff\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(patch|diff|rej)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.diff\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.diff\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_dockerfile\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(dockerfile|Dockerfile)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.dockerfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.dockerfile\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_dosbatch\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(bat|batch)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.dosbatch\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.batchfile\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_elixir\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(elixir)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.elixir\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_erlang\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(erlang)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.erlang\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_fsharp\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(fs|fsharp|f#)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.fsharp\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_git_commit\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(COMMIT_EDITMSG|MERGE_MSG)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.git_commit\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.git-commit\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_git_rebase\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(git-rebase-todo)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.git_rebase\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.git-rebase\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_go\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(go|golang)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.go\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_groovy\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(groovy|gvy)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.groovy\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_handlebars\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(handlebars|hbs)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.handlebars\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_ini\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(ini|conf)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.ini\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ini\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_java\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(java|bsh)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.java\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_js\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(js|jsx|javascript|es6|mjs|cjs|dataviewjs|\\\\\\\\{\\\\\\\\.js.+?\\\\\\\\})((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.javascript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_js_regexp\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(regexp)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.js_regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js.regexp\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_json\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(json|json5|sublime-settings|sublime-menu|sublime-keymap|sublime-mousemap|sublime-theme|sublime-build|sublime-project|sublime-completions)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_jsonc\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(jsonc)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.jsonc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json.comments\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_julia\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(julia|\\\\\\\\{\\\\\\\\.julia.+?\\\\\\\\})((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.julia\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_latex\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(latex|tex)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex.latex\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_less\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(less)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.less\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_log\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(log)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.log\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.log\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_lua\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(lua)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.lua\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lua\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_makefile\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(Makefile|makefile|GNUmakefile|OCamlMakefile)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.makefile\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_markdown\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(markdown|md)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_objc\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(objectivec|objective-c|mm|objc|obj-c|m|h)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.objc\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_perl\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(perl|pl|pm|pod|t|PL|psgi|vcl)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.perl\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_perl6\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(perl6|p6|pl6|pm6|nqp)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.perl6\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.perl.6\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_php\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(php|php3|php4|php5|phpt|phtml|aw|ctp)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"source.php\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_powershell\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(powershell|ps1|psm1|psd1|pwsh)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.powershell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.powershell\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_pug\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(jade|pug)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.pug\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_python\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(python|py|py3|rpy|pyw|cpy|SConstruct|Sconstruct|sconstruct|SConscript|gyp|gypi|\\\\\\\\{\\\\\\\\.python.+?\\\\\\\\})((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_r\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(R|r|s|S|Rprofile|\\\\\\\\{\\\\\\\\.r.+?\\\\\\\\})((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.r\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_regexp_python\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(re)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.regexp_python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.regexp.python\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_ruby\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(ruby|rb|rbx|rjs|Rakefile|rake|cgi|fcgi|gemspec|irbrc|Capfile|ru|prawn|Cheffile|Gemfile|Guardfile|Hobofile|Vagrantfile|Appraisals|Rantfile|Berksfile|Berksfile.lock|Thorfile|Puppetfile)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_rust\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(rust|rs|\\\\\\\\{\\\\\\\\.rust.+?\\\\\\\\})((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.rust\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_scala\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(scala|sbt)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.scala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.scala\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_scss\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(scss)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.scss\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_shell\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(shell|sh|bash|zsh|bashrc|bash_profile|bash_login|profile|bash_logout|.textmate_init|\\\\\\\\{\\\\\\\\.bash.+?\\\\\\\\})((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.shellscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.shell\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_sql\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(sql|ddl|dml)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sql\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_swift\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(swift)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.swift\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_ts\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(typescript|ts)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.typescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_tsx\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(tsx)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.typescriptreact\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_twig\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(twig)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.twig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.twig\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_unknown\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?=([^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\"},\\\"fenced_code_block_vs_net\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(vb)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.vs_net\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.asp.vb.net\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_xml\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(xml|xsd|tld|jsp|pt|cpt|dtml|rss|opml)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_xsl\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(xsl|xslt)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.xsl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml.xsl\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"fenced_code_block_yaml\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(yaml|yml)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\"}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.block.yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*([`~]{3,})\\\\\\\\s*$)\\\"}]},\\\"frontMatter\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\A(?=(-{3,}))\\\",\\\"end\\\":\\\"^ {,3}\\\\\\\\1-*[ \\\\\\\\t]*$|^[ \\\\\\\\t]*\\\\\\\\.{3}$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.frontmatter\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\A(-{3,})(.*)$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.begin.frontmatter\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.frontmatter\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.frontmatter\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}],\\\"while\\\":\\\"^(?! {,3}\\\\\\\\1-*[ \\\\\\\\t]*$|[ \\\\\\\\t]*\\\\\\\\.{3}$)\\\"}]},\\\"heading\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{6})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.6.markdown\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{5})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.5.markdown\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{4})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.4.markdown\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{3})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.3.markdown\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{2})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.2.markdown\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{1})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.1.markdown\\\"}]}},\\\"match\\\":\\\"(?:^|\\\\\\\\G)[ ]{0,3}(#{1,6}\\\\\\\\s+(.*?)(\\\\\\\\s+#{1,6})?\\\\\\\\s*)$\\\",\\\"name\\\":\\\"markup.heading.markdown\\\"},\\\"heading-setext\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^(={3,})(?=[ \\\\\\\\t]*$\\\\\\\\n?)\\\",\\\"name\\\":\\\"markup.heading.setext.1.markdown\\\"},{\\\"match\\\":\\\"^(-{3,})(?=[ \\\\\\\\t]*$\\\\\\\\n?)\\\",\\\"name\\\":\\\"markup.heading.setext.2.markdown\\\"}]},\\\"html\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\\\\\\s*(<!--)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html\\\"}},\\\"end\\\":\\\"(-->)\\\",\\\"name\\\":\\\"comment.block.html\\\"},{\\\"begin\\\":\\\"(?i)(^|\\\\\\\\G)\\\\\\\\s*(?=<(script|style|pre)(\\\\\\\\s|$|>)(?!.*?</(script|style|pre)>))\\\",\\\"end\\\":\\\"(?i)(.*)((</)(script|style|pre)(>))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"meta.tag.structure.$4.end.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\s*|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.derivative\\\"}],\\\"while\\\":\\\"(?i)^(?!.*</(script|style|pre)>)\\\"}]},{\\\"begin\\\":\\\"(?i)(^|\\\\\\\\G)\\\\\\\\s*(?=</?[a-zA-Z]+[^\\\\\\\\s/>]*(\\\\\\\\s|$|/?>))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.derivative\\\"}],\\\"while\\\":\\\"^(?!\\\\\\\\s*$)\\\"},{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\\\\\\s*(?=(<[a-zA-Z0-9\\\\\\\\-](/?>|\\\\\\\\s.*?>)|</[a-zA-Z0-9\\\\\\\\-]>)\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.derivative\\\"}],\\\"while\\\":\\\"^(?!\\\\\\\\s*$)\\\"}]},\\\"image-inline\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.link.description.begin.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.link.description.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.link.description.end.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.metadata.markdown\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.link.markdown\\\"},\\\"8\\\":{\\\"name\\\":\\\"markup.underline.link.image.markdown\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.link.markdown\\\"},\\\"10\\\":{\\\"name\\\":\\\"markup.underline.link.image.markdown\\\"},\\\"12\\\":{\\\"name\\\":\\\"string.other.link.description.title.markdown\\\"},\\\"13\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.markdown\\\"},\\\"14\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.markdown\\\"},\\\"15\\\":{\\\"name\\\":\\\"string.other.link.description.title.markdown\\\"},\\\"16\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.markdown\\\"},\\\"17\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.markdown\\\"},\\\"18\\\":{\\\"name\\\":\\\"string.other.link.description.title.markdown\\\"},\\\"19\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.markdown\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.markdown\\\"},\\\"21\\\":{\\\"name\\\":\\\"punctuation.definition.metadata.markdown\\\"}},\\\"match\\\":\\\"(\\\\\\\\!\\\\\\\\[)((?<square>[^\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.|\\\\\\\\[\\\\\\\\g<square>*+\\\\\\\\])*+)(\\\\\\\\])(\\\\\\\\()[ \\\\\\\\t]*((<)((?:\\\\\\\\\\\\\\\\[<>]|[^<>\\\\\\\\n])*)(>)|((?<url>(?>[^\\\\\\\\s()]+)|\\\\\\\\(\\\\\\\\g<url>*\\\\\\\\))*))[ \\\\\\\\t]*(?:((\\\\\\\\().+?(\\\\\\\\)))|((\\\\\\\").+?(\\\\\\\"))|((').+?(')))?\\\\\\\\s*(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.image.inline.markdown\\\"},\\\"image-ref\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.link.description.begin.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.link.description.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.link.description.end.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.constant.markdown\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.other.reference.link.markdown\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.constant.markdown\\\"}},\\\"match\\\":\\\"(\\\\\\\\!\\\\\\\\[)((?<square>[^\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.|\\\\\\\\[\\\\\\\\g<square>*+\\\\\\\\])*+)(\\\\\\\\])[ ]?(\\\\\\\\[)(.*?)(\\\\\\\\])\\\",\\\"name\\\":\\\"meta.image.reference.markdown\\\"},\\\"inline\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ampersand\\\"},{\\\"include\\\":\\\"#bracket\\\"},{\\\"include\\\":\\\"#bold\\\"},{\\\"include\\\":\\\"#italic\\\"},{\\\"include\\\":\\\"#raw\\\"},{\\\"include\\\":\\\"#strikethrough\\\"},{\\\"include\\\":\\\"#escape\\\"},{\\\"include\\\":\\\"#image-inline\\\"},{\\\"include\\\":\\\"#image-ref\\\"},{\\\"include\\\":\\\"#link-email\\\"},{\\\"include\\\":\\\"#link-inet\\\"},{\\\"include\\\":\\\"#link-inline\\\"},{\\\"include\\\":\\\"#link-ref\\\"},{\\\"include\\\":\\\"#link-ref-literal\\\"},{\\\"include\\\":\\\"#link-ref-shortcut\\\"}]},\\\"italic\\\":{\\\"begin\\\":\\\"(?<open>(\\\\\\\\*(?=\\\\\\\\w)|(?<!\\\\\\\\w)\\\\\\\\*|(?<!\\\\\\\\w)\\\\\\\\b_))(?=\\\\\\\\S)(?=(<[^>]*+>|(?<raw>`+)([^`]|(?!(?<!`)\\\\\\\\k<raw>(?!`))`)*+\\\\\\\\k<raw>|\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\`*_{}\\\\\\\\[\\\\\\\\]()#.!+\\\\\\\\->]?+|\\\\\\\\[((?<square>[^\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.|\\\\\\\\[\\\\\\\\g<square>*+\\\\\\\\])*+\\\\\\\\](([ ]?\\\\\\\\[[^\\\\\\\\]]*+\\\\\\\\])|(\\\\\\\\([ \\\\\\\\t]*+<?(.*?)>?[ \\\\\\\\t]*+((?<title>['\\\\\\\"])(.*?)\\\\\\\\k<title>)?\\\\\\\\))))|\\\\\\\\k<open>\\\\\\\\k<open>|(?!(?<=\\\\\\\\S)\\\\\\\\k<open>).)++(?<=\\\\\\\\S)(?=_\\\\\\\\b|\\\\\\\\*)\\\\\\\\k<open>)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.italic.markdown\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\S)(\\\\\\\\1)((?!\\\\\\\\1)|(?=\\\\\\\\1\\\\\\\\1))\\\",\\\"name\\\":\\\"markup.italic.markdown\\\",\\\"patterns\\\":[{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?=<[^>]*?>)\\\",\\\"end\\\":\\\"(?<=>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.derivative\\\"}]},{\\\"include\\\":\\\"#escape\\\"},{\\\"include\\\":\\\"#ampersand\\\"},{\\\"include\\\":\\\"#bracket\\\"},{\\\"include\\\":\\\"#raw\\\"},{\\\"include\\\":\\\"#bold\\\"},{\\\"include\\\":\\\"#image-inline\\\"},{\\\"include\\\":\\\"#link-inline\\\"},{\\\"include\\\":\\\"#link-inet\\\"},{\\\"include\\\":\\\"#link-email\\\"},{\\\"include\\\":\\\"#image-ref\\\"},{\\\"include\\\":\\\"#link-ref-literal\\\"},{\\\"include\\\":\\\"#link-ref\\\"},{\\\"include\\\":\\\"#link-ref-shortcut\\\"},{\\\"include\\\":\\\"#strikethrough\\\"}]},\\\"link-def\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.reference.link.markdown\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.constant.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.link.markdown\\\"},\\\"6\\\":{\\\"name\\\":\\\"markup.underline.link.markdown\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.link.markdown\\\"},\\\"8\\\":{\\\"name\\\":\\\"markup.underline.link.markdown\\\"},\\\"9\\\":{\\\"name\\\":\\\"string.other.link.description.title.markdown\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.markdown\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.markdown\\\"},\\\"12\\\":{\\\"name\\\":\\\"string.other.link.description.title.markdown\\\"},\\\"13\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.markdown\\\"},\\\"14\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.markdown\\\"},\\\"15\\\":{\\\"name\\\":\\\"string.other.link.description.title.markdown\\\"},\\\"16\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.markdown\\\"},\\\"17\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.markdown\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\[)([^]]+?)(\\\\\\\\])(:)[ \\\\\\\\t]*(?:(<)((?:\\\\\\\\\\\\\\\\[<>]|[^<>\\\\\\\\n])*)(>)|(\\\\\\\\S+?))[ \\\\\\\\t]*(?:((\\\\\\\\().+?(\\\\\\\\)))|((\\\\\\\").+?(\\\\\\\"))|((').+?(')))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"meta.link.reference.def.markdown\\\"},\\\"link-email\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.link.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.underline.link.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.link.markdown\\\"}},\\\"match\\\":\\\"(<)((?:mailto:)?[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\\\\\\\.[a-zA-Z0-9-]+)*)(>)\\\",\\\"name\\\":\\\"meta.link.email.lt-gt.markdown\\\"},\\\"link-inet\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.link.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.underline.link.markdown\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.link.markdown\\\"}},\\\"match\\\":\\\"(<)((?:https?|ftp)://.*?)(>)\\\",\\\"name\\\":\\\"meta.link.inet.markdown\\\"},\\\"link-inline\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.link.title.begin.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.link.title.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#raw\\\"},{\\\"include\\\":\\\"#bold\\\"},{\\\"include\\\":\\\"#italic\\\"},{\\\"include\\\":\\\"#strikethrough\\\"},{\\\"include\\\":\\\"#image-inline\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.link.title.end.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.metadata.markdown\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.link.markdown\\\"},\\\"8\\\":{\\\"name\\\":\\\"markup.underline.link.markdown\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.link.markdown\\\"},\\\"10\\\":{\\\"name\\\":\\\"markup.underline.link.markdown\\\"},\\\"12\\\":{\\\"name\\\":\\\"string.other.link.description.title.markdown\\\"},\\\"13\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.markdown\\\"},\\\"14\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.markdown\\\"},\\\"15\\\":{\\\"name\\\":\\\"string.other.link.description.title.markdown\\\"},\\\"16\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.markdown\\\"},\\\"17\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.markdown\\\"},\\\"18\\\":{\\\"name\\\":\\\"string.other.link.description.title.markdown\\\"},\\\"19\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.markdown\\\"},\\\"20\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.markdown\\\"},\\\"21\\\":{\\\"name\\\":\\\"punctuation.definition.metadata.markdown\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)((?<square>[^\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.|\\\\\\\\[\\\\\\\\g<square>*+\\\\\\\\])*+)(\\\\\\\\])(\\\\\\\\()[ \\\\\\\\t]*((<)((?:\\\\\\\\\\\\\\\\[<>]|[^<>\\\\\\\\n])*)(>)|((?<url>(?>[^\\\\\\\\s()]+)|\\\\\\\\(\\\\\\\\g<url>*\\\\\\\\))*))[ \\\\\\\\t]*(?:((\\\\\\\\()[^()]*(\\\\\\\\)))|((\\\\\\\")[^\\\\\\\"]*(\\\\\\\"))|((')[^']*(')))?\\\\\\\\s*(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.link.inline.markdown\\\"},\\\"link-ref\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.link.title.begin.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.link.title.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#raw\\\"},{\\\"include\\\":\\\"#bold\\\"},{\\\"include\\\":\\\"#italic\\\"},{\\\"include\\\":\\\"#strikethrough\\\"},{\\\"include\\\":\\\"#image-inline\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.link.title.end.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.constant.begin.markdown\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.other.reference.link.markdown\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.constant.end.markdown\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\]\\\\\\\\\\\\\\\\])(\\\\\\\\[)((?<square>[^\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.|\\\\\\\\[\\\\\\\\g<square>*+\\\\\\\\])*+)(\\\\\\\\])(\\\\\\\\[)([^\\\\\\\\]]*+)(\\\\\\\\])\\\",\\\"name\\\":\\\"meta.link.reference.markdown\\\"},\\\"link-ref-literal\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.link.title.begin.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.link.title.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.link.title.end.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.constant.begin.markdown\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.constant.end.markdown\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\]\\\\\\\\\\\\\\\\])(\\\\\\\\[)((?<square>[^\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.|\\\\\\\\[\\\\\\\\g<square>*+\\\\\\\\])*+)(\\\\\\\\])[ ]?(\\\\\\\\[)(\\\\\\\\])\\\",\\\"name\\\":\\\"meta.link.reference.literal.markdown\\\"},\\\"link-ref-shortcut\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.link.title.begin.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.link.title.markdown\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.link.title.end.markdown\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\]\\\\\\\\\\\\\\\\])(\\\\\\\\[)((?:[^\\\\\\\\s\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\[\\\\\\\\[\\\\\\\\]])+?)((?<!\\\\\\\\\\\\\\\\)\\\\\\\\])\\\",\\\"name\\\":\\\"meta.link.reference.markdown\\\"},\\\"list_paragraph\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\S)(?![*+->]\\\\\\\\s|[0-9]+\\\\\\\\.\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.paragraph.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"},{\\\"include\\\":\\\"#heading-setext\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?!\\\\\\\\s*$|#|[ ]{0,3}([-*_>][ ]{2,}){3,}[ \\\\\\\\t]*$\\\\\\\\n?|[ ]{0,3}[*+->]|[ ]{0,3}[0-9]+\\\\\\\\.)\\\"},\\\"lists\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)([ ]{0,3})([*+-])([ \\\\\\\\t])\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.list.begin.markdown\\\"}},\\\"comment\\\":\\\"Currently does not support un-indented second lines.\\\",\\\"name\\\":\\\"markup.list.unnumbered.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#list_paragraph\\\"}],\\\"while\\\":\\\"((^|\\\\\\\\G)([ ]{2,4}|\\\\\\\\t))|(^[ \\\\\\\\t]*$)\\\"},{\\\"begin\\\":\\\"(^|\\\\\\\\G)([ ]{0,3})([0-9]+[\\\\\\\\.\\\\\\\\)])([ \\\\\\\\t])\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.list.begin.markdown\\\"}},\\\"name\\\":\\\"markup.list.numbered.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#list_paragraph\\\"}],\\\"while\\\":\\\"((^|\\\\\\\\G)([ ]{2,4}|\\\\\\\\t))|(^[ \\\\\\\\t]*$)\\\"}]},\\\"paragraph\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)[ ]{0,3}(?=[^ \\\\\\\\t\\\\\\\\n])\\\",\\\"name\\\":\\\"meta.paragraph.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"},{\\\"include\\\":\\\"#heading-setext\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)((?=\\\\\\\\s*[-=]{3,}\\\\\\\\s*$)|[ ]{4,}(?=[^ \\\\\\\\t\\\\\\\\n]))\\\"},\\\"raw\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.raw.markdown\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.raw.markdown\\\"}},\\\"match\\\":\\\"(`+)((?:[^`]|(?!(?<!`)\\\\\\\\1(?!`))`)*+)(\\\\\\\\1)\\\",\\\"name\\\":\\\"markup.inline.raw.string.markdown\\\"},\\\"raw_block\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)([ ]{4}|\\\\\\\\t)\\\",\\\"name\\\":\\\"markup.raw.block.markdown\\\",\\\"while\\\":\\\"(^|\\\\\\\\G)([ ]{4}|\\\\\\\\t)\\\"},\\\"separator\\\":{\\\"match\\\":\\\"(^|\\\\\\\\G)[ ]{0,3}([\\\\\\\\*\\\\\\\\-\\\\\\\\_])([ ]{0,2}\\\\\\\\2){2,}[ \\\\\\\\t]*$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.separator.markdown\\\"},\\\"strikethrough\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.strikethrough.markdown\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?=<[^>]*?>)\\\",\\\"end\\\":\\\"(?<=>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.derivative\\\"}]},{\\\"include\\\":\\\"#escape\\\"},{\\\"include\\\":\\\"#ampersand\\\"},{\\\"include\\\":\\\"#bracket\\\"},{\\\"include\\\":\\\"#raw\\\"},{\\\"include\\\":\\\"#bold\\\"},{\\\"include\\\":\\\"#italic\\\"},{\\\"include\\\":\\\"#image-inline\\\"},{\\\"include\\\":\\\"#link-inline\\\"},{\\\"include\\\":\\\"#link-inet\\\"},{\\\"include\\\":\\\"#link-email\\\"},{\\\"include\\\":\\\"#image-ref\\\"},{\\\"include\\\":\\\"#link-ref-literal\\\"},{\\\"include\\\":\\\"#link-ref\\\"},{\\\"include\\\":\\\"#link-ref-shortcut\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.strikethrough.markdown\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(~{2,})((?:[^~]|(?!(?<![~\\\\\\\\\\\\\\\\])\\\\\\\\1(?!~))~)*+)(\\\\\\\\1)\\\",\\\"name\\\":\\\"markup.strikethrough.markdown\\\"},\\\"table\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\|)(?=[^|].+\\\\\\\\|\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.table.markdown\\\"}},\\\"name\\\":\\\"markup.table.markdown\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.definition.table.markdown\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.table.markdown\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\|)\\\\\\\\s*(:?-+:?)\\\\\\\\s*(?=\\\\\\\\|)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline\\\"}]}},\\\"match\\\":\\\"(?<=\\\\\\\\|)\\\\\\\\s*(?=\\\\\\\\S)((\\\\\\\\\\\\\\\\\\\\\\\\||[^|])+)(?<=\\\\\\\\S)\\\\\\\\s*(?=\\\\\\\\|)\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\|)\\\"}},\\\"scopeName\\\":\\\"text.html.markdown\\\",\\\"embeddedLangs\\\":[],\\\"aliases\\\":[\\\"md\\\"],\\\"embeddedLangsLazy\\\":[\\\"css\\\",\\\"html\\\",\\\"ini\\\",\\\"java\\\",\\\"lua\\\",\\\"make\\\",\\\"perl\\\",\\\"r\\\",\\\"ruby\\\",\\\"php\\\",\\\"sql\\\",\\\"vb\\\",\\\"xml\\\",\\\"xsl\\\",\\\"yaml\\\",\\\"bat\\\",\\\"clojure\\\",\\\"coffee\\\",\\\"c\\\",\\\"cpp\\\",\\\"diff\\\",\\\"docker\\\",\\\"git-commit\\\",\\\"git-rebase\\\",\\\"go\\\",\\\"groovy\\\",\\\"pug\\\",\\\"javascript\\\",\\\"json\\\",\\\"jsonc\\\",\\\"less\\\",\\\"objective-c\\\",\\\"swift\\\",\\\"scss\\\",\\\"raku\\\",\\\"powershell\\\",\\\"python\\\",\\\"julia\\\",\\\"regexp\\\",\\\"rust\\\",\\\"scala\\\",\\\"shellscript\\\",\\\"typescript\\\",\\\"tsx\\\",\\\"csharp\\\",\\\"fsharp\\\",\\\"dart\\\",\\\"handlebars\\\",\\\"log\\\",\\\"erlang\\\",\\\"elixir\\\",\\\"latex\\\",\\\"bibtex\\\",\\\"html-derivative\\\"]}\"))\n\nexport default [\nlang\n]\n", "import markdown from './markdown.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"F#\\\",\\\"name\\\":\\\"fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#compiler_directives\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#chars\\\"},{\\\"include\\\":\\\"#double_tick\\\"},{\\\"include\\\":\\\"#definition\\\"},{\\\"include\\\":\\\"#abstract_definition\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#modules\\\"},{\\\"include\\\":\\\"#anonymous_functions\\\"},{\\\"include\\\":\\\"#du_declaration\\\"},{\\\"include\\\":\\\"#record_declaration\\\"},{\\\"include\\\":\\\"#records\\\"},{\\\"include\\\":\\\"#strp_inlined\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#cexprs\\\"},{\\\"include\\\":\\\"#text\\\"}],\\\"repository\\\":{\\\"abstract_definition\\\":{\\\"begin\\\":\\\"\\\\\\\\b(static\\\\\\\\s+)?(abstract)\\\\\\\\s+(member)?(\\\\\\\\s+\\\\\\\\[\\\\\\\\<.*\\\\\\\\>\\\\\\\\])?\\\\\\\\s*([_[:alpha:]0-9,\\\\\\\\._`\\\\\\\\s]+)(<)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.function.attribute.fsharp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(with)\\\\\\\\b|=|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"}},\\\"name\\\":\\\"abstract.definition.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#common_declaration\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(\\\\\\\\?{0,1})([[:alpha:]0-9'`^._ ]+)\\\\\\\\s*(:)((?!with\\\\\\\\b)\\\\\\\\b([\\\\\\\\w0-9'`^._ ]+)){0,1}\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"comments\\\":\\\"Here we need the \\\\\\\\w modifier in order to check that the words isn't blacklisted\\\",\\\"match\\\":\\\"(?!with|get|set\\\\\\\\b)\\\\\\\\s*([\\\\\\\\w0-9'`^._]+)\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},\\\"anonymous_functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(fun)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"}},\\\"end\\\":\\\"(->)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.arrow.fsharp\\\"}},\\\"name\\\":\\\"function.anonymous\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?=(->))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.arrow.fsharp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#member_declaration\\\"}]},{\\\"include\\\":\\\"#variables\\\"}]}]},\\\"anonymous_record_declaration\\\":{\\\"begin\\\":\\\"(\\\\\\\\{\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\|\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"match\\\":\\\"[[:alpha:]0-9'`^_ ]+(:)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"([[:alpha:]0-9'`^_ ]+)\\\"},{\\\"include\\\":\\\"#anonymous_record_declaration\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},\\\"attributes\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\\\\\\<\\\",\\\"end\\\":\\\"\\\\\\\\>\\\\\\\\]|\\\\\\\\]\\\",\\\"name\\\":\\\"support.function.attribute.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"cexprs\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"}},\\\"match\\\":\\\"\\\\\\\\b(async|seq|promise|task|maybe|asyncMaybe|controller|scope|application|pipeline)(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"name\\\":\\\"cexpr.fsharp\\\"}]},\\\"chars\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.single.fsharp\\\"}},\\\"match\\\":\\\"('\\\\\\\\\\\\\\\\?.')\\\",\\\"name\\\":\\\"char.fsharp\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.fsharp\\\"}},\\\"match\\\":\\\"(\\\\\\\\(\\\\\\\\*{3}.*\\\\\\\\*{3}\\\\\\\\))\\\",\\\"name\\\":\\\"comment.literate.command.fsharp\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*(\\\\\\\\(\\\\\\\\*\\\\\\\\*(?!\\\\\\\\)))((?!\\\\\\\\*\\\\\\\\)).)*$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.fsharp\\\"}},\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.fsharp\\\"}},\\\"name\\\":\\\"comment.block.markdown.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown\\\"}],\\\"while\\\":\\\"^(?!\\\\\\\\s*(\\\\\\\\*)+\\\\\\\\)\\\\\\\\s*$)\\\"},{\\\"begin\\\":\\\"(\\\\\\\\(\\\\\\\\*(?!\\\\\\\\)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\*+\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.fsharp\\\"}},\\\"name\\\":\\\"comment.block.fsharp\\\",\\\"patterns\\\":[{\\\"comments\\\":\\\"Capture // when inside of (* *) like that the rule which capture comments starting by // is not trigger. See https://github.com/ionide/ionide-fsgrammar/issues/155\\\",\\\"match\\\":\\\"//\\\",\\\"name\\\":\\\"fast-capture.comment.line.double-slash.fsharp\\\"},{\\\"comments\\\":\\\"Capture (*) when inside of (* *) so that it doesn't prematurely end the comment block.\\\",\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\*\\\\\\\\)\\\",\\\"name\\\":\\\"fast-capture.comment.line.mul-operator.fsharp\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block.fsharp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\()(\\\\\\\\*)+\\\\\\\\))\\\",\\\"name\\\":\\\"comment.block.markdown.fsharp.end\\\"},{\\\"begin\\\":\\\"(?<![!%&+-.<=>?@^|/])///(?!/)\\\",\\\"name\\\":\\\"comment.line.markdown.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown\\\"}],\\\"while\\\":\\\"(?<![!%&+-.<=>?@^|/])///(?!/)\\\"},{\\\"match\\\":\\\"(?<![!%&+-.<=>?@^|/])//(.*$)\\\",\\\"name\\\":\\\"comment.line.double-slash.fsharp\\\"}]},\\\"common_binding_definition\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"begin\\\":\\\"(:)\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*(static member|member)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"}},\\\"comments\\\":\\\"SRTP syntax support\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*((?=,)|(?=\\\\\\\\=))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(\\\\\\\\^[[:alpha:]0-9'._]+)\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},{\\\"begin\\\":\\\"(:)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)\\\\\\\\s*(([?[:alpha:]0-9'`^._ ]*)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tuple_signature\\\"}]},{\\\"begin\\\":\\\"(:)\\\\\\\\s*(\\\\\\\\^[[:alpha:]0-9'._]+)\\\\\\\\s*(when)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"}},\\\"end\\\":\\\"(?=:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(and|when|or)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.fsharp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"comment\\\":\\\"Because we first capture the keywords, we can capture what looks like a word and assume it's an entity definition\\\",\\\"match\\\":\\\"([[:alpha:]0-9'^._]+)\\\"},{\\\"match\\\":\\\"(\\\\\\\\(|\\\\\\\\))\\\",\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(:)\\\\\\\\s*([?[:alpha:]0-9'`^._ ]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.arrow.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(->)\\\\\\\\s*(\\\\\\\\()?\\\\\\\\s*([?[:alpha:]0-9'`^._ ]+)*\\\"},{\\\"begin\\\":\\\"(\\\\\\\\*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)\\\\\\\\s*(([?[:alpha:]0-9'`^._ ]+))*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tuple_signature\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\*)(\\\\\\\\s*([?[:alpha:]0-9'`^._ ]+))*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"end\\\":\\\"(?==)|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tuple_signature\\\"}]},{\\\"begin\\\":\\\"(<+(?![[:space:]]*\\\\\\\\)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"beginComment\\\":\\\"The group (?![[:space:]]*\\\\\\\\) is for protection against overload operator. static member (<)\\\",\\\"end\\\":\\\"((?<!:)>|\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"endComment\\\":\\\"The group (?<!:) prevent us from stopping on :> when using SRTP synthax\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#generic_declaration\\\"}]},{\\\"include\\\":\\\"#anonymous_record_declaration\\\"},{\\\"begin\\\":\\\"({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#record_signature\\\"}]},{\\\"include\\\":\\\"#definition\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},\\\"common_declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(->)\\\\\\\\s*([[:alpha:]0-9'`^._ ]+)(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.arrow.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"([[:alpha:]0-9'`^._ ]+)\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.arrow.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(->)\\\\\\\\s*(?!with|get|set\\\\\\\\b)\\\\\\\\b([\\\\\\\\w0-9'`^._]+)\\\"},{\\\"include\\\":\\\"#anonymous_record_declaration\\\"},{\\\"begin\\\":\\\"(\\\\\\\\?{0,1})([[:alpha:]0-9'`^._ ]+)\\\\\\\\s*(:)(\\\\\\\\s*([?[:alpha:]0-9'`^._ ]+)(<))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"([[:alpha:]0-9'`^._ ]+)\\\"},{\\\"include\\\":\\\"#keywords\\\"}]}]},\\\"compiler_directives\\\":{\\\"patterns\\\":[{\\\"captures\\\":{},\\\"match\\\":\\\"\\\\\\\\s?(#if|#elif|#elseif|#else|#endif|#light|#nowarn)\\\",\\\"name\\\":\\\"keyword.control.directive.fsharp\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},{\\\"match\\\":\\\"\\\\\\\\b-?[0-9][0-9_]*((\\\\\\\\.(?!\\\\\\\\.)([0-9][0-9_]*([eE][+-]??[0-9][0-9_]*)?)?)|([eE][+-]??[0-9][0-9_]*))\\\",\\\"name\\\":\\\"constant.numeric.float.fsharp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(-?((0(x|X)[0-9a-fA-F][0-9a-fA-F_]*)|(0(o|O)[0-7][0-7_]*)|(0(b|B)[01][01_]*)|([0-9][0-9_]*)))\\\",\\\"name\\\":\\\"constant.numeric.integer.nativeint.fsharp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.fsharp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(null|void)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.fsharp\\\"}]},\\\"definition\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(let mutable|static let mutable|static let|let inline|let|and|member val|member inline|static member inline|static member val|static member|default|member|override|let!)(\\\\\\\\s+rec|mutable)?(\\\\\\\\s+\\\\\\\\[\\\\\\\\<.*\\\\\\\\>\\\\\\\\])?\\\\\\\\s*(private|internal|public)?\\\\\\\\s+(\\\\\\\\[[^-=]*\\\\\\\\]|[_[:alpha:]]([_[:alpha:]0-9\\\\\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\\\\\\\._`\\\\\\\\s]+|(?<=,)\\\\\\\\s)*)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.attribute.fsharp\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.fsharp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.fsharp\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((with\\\\\\\\b)|(=|\\\\\\\\n+=|(?<=\\\\\\\\=)))\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"name\\\":\\\"binding.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#common_binding_definition\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(use|use!|and|and!)\\\\\\\\s+(\\\\\\\\[[^-=]*\\\\\\\\]|[_[:alpha:]]([_[:alpha:]0-9\\\\\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\\\\\\\._`\\\\\\\\s]+|(?<=,)\\\\\\\\s)*)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(=)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"name\\\":\\\"binding.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#common_binding_definition\\\"}]},{\\\"begin\\\":\\\"(?<=with|and)\\\\\\\\s*\\\\\\\\b((get|set)\\\\\\\\s*(?=\\\\\\\\())(\\\\\\\\[[^-=]*\\\\\\\\]|[_[:alpha:]]([_[:alpha:]0-9\\\\\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\\\\\\\._`\\\\\\\\s]+|(?<=,)\\\\\\\\s)*)?\\\",\\\"beginCaptures\\\":{\\\"4\\\":{\\\"name\\\":\\\"variable.fsharp\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(=|\\\\\\\\n+=|(?<=\\\\\\\\=))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"name\\\":\\\"binding.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#common_binding_definition\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(static val mutable|val mutable|val inline|val)(\\\\\\\\s+rec|mutable)?(\\\\\\\\s+\\\\\\\\[\\\\\\\\<.*\\\\\\\\>\\\\\\\\])?\\\\\\\\s*(private|internal|public)?\\\\\\\\s+(\\\\\\\\[[^-=]*\\\\\\\\]|[_[:alpha:]]([_[:alpha:]0-9,\\\\\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9,\\\\\\\\._`\\\\\\\\s]+|(?<=,)\\\\\\\\s)*)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.attribute.fsharp\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.fsharp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.fsharp\\\"}},\\\"end\\\":\\\"\\\\\\\\n$\\\",\\\"name\\\":\\\"binding.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#common_binding_definition\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(new)\\\\\\\\b\\\\\\\\s+(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"name\\\":\\\"binding.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#common_binding_definition\\\"}]}]},\\\"double_tick\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.single.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.binding.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.quoted.single.fsharp\\\"}},\\\"match\\\":\\\"(``)([^`]*)(``)\\\",\\\"name\\\":\\\"variable.other.binding.fsharp\\\"}]},\\\"du_declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(of)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"}},\\\"end\\\":\\\"$|(\\\\\\\\|)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"name\\\":\\\"du_declaration.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"([[:alpha:]0-9'`<>^._]+|``[[:alpha:]0-9' <>^._]+``)\\\\\\\\s*(:)\\\\\\\\s*([[:alpha:]0-9'`<>^._]+|``[[:alpha:]0-9' <>^._]+``)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(``([[:alpha:]0-9'^._ ]+)``|[[:alpha:]0-9'`^._]+)\\\"},{\\\"include\\\":\\\"#anonymous_record_declaration\\\"},{\\\"include\\\":\\\"#keywords\\\"}]}]},\\\"generic_declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*(static member|member)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"}},\\\"comments\\\":\\\"SRTP syntax support\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#member_declaration\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(('|\\\\\\\\^)[[:alpha:]0-9'._]+)\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(private|to|public|internal|function|yield!|yield|class|exception|match|delegate|of|new|in|as|if|then|else|elif|for|begin|end|inherit|do|let\\\\\\\\!|return\\\\\\\\!|return|interface|with|abstract|enum|member|try|finally|and|when|or|use|use\\\\\\\\!|struct|while|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.fsharp\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(('|\\\\\\\\^)[[:alpha:]0-9'._]+)\\\"},{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(('|\\\\\\\\^)[[:alpha:]0-9'._]+)\\\"},{\\\"include\\\":\\\"#tuple_signature\\\"},{\\\"include\\\":\\\"#generic_declaration\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(([?[:alpha:]0-9'`^._ ]+))+\\\"},{\\\"include\\\":\\\"#tuple_signature\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"comments\\\":\\\"Here we need the \\\\\\\\w modifier in order to check that the words are allowed\\\",\\\"match\\\":\\\"(?!when|and|or\\\\\\\\b)\\\\\\\\b([\\\\\\\\w0-9'`^._]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"comments\\\":\\\"Prevent captures of `|>` as a keyword when defining custom operator like `<|>`\\\",\\\"match\\\":\\\"(\\\\\\\\|)\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(private|public|internal)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier\\\"},{\\\"match\\\":\\\"\\\\\\\\b(private|to|public|internal|function|class|exception|delegate|of|new|as|begin|end|inherit|let!|interface|abstract|enum|member|and|when|or|use|use\\\\\\\\!|struct|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.fsharp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(match|yield|yield!|with|if|then|else|elif|for|in|return!|return|try|finally|while|do)(?!')\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control\\\"},{\\\"match\\\":\\\"(\\\\\\\\->|\\\\\\\\<\\\\\\\\-)\\\",\\\"name\\\":\\\"keyword.symbol.arrow.fsharp\\\"},{\\\"match\\\":\\\"[.?]*(&&&|\\\\\\\\|\\\\\\\\|\\\\\\\\||\\\\\\\\^\\\\\\\\^\\\\\\\\^|~~~|~\\\\\\\\+|~\\\\\\\\-|<<<|>>>|\\\\\\\\|>|:>|:\\\\\\\\?>|:|\\\\\\\\[|\\\\\\\\]|\\\\\\\\;|<>|=|@|\\\\\\\\|\\\\\\\\||&&|&|%|{|}|\\\\\\\\||_|\\\\\\\\.\\\\\\\\.|\\\\\\\\,|\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\/|\\\\\\\\^|\\\\\\\\!|\\\\\\\\>|\\\\\\\\>\\\\\\\\=|\\\\\\\\>\\\\\\\\>|\\\\\\\\<|\\\\\\\\<\\\\\\\\=|\\\\\\\\(|\\\\\\\\)|\\\\\\\\<\\\\\\\\<)[.?]*\\\",\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}]},\\\"member_declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#common_declaration\\\"},{\\\"begin\\\":\\\"(:)\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*(static member|member)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"}},\\\"comments\\\":\\\"SRTP syntax support\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*((?=,)|(?=\\\\\\\\=))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#member_declaration\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(\\\\\\\\^[[:alpha:]0-9'._]+)\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(\\\\\\\\^[[:alpha:]0-9'._]+)\\\"},{\\\"match\\\":\\\"\\\\\\\\b(and|when|or)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.fsharp\\\"},{\\\"match\\\":\\\"(\\\\\\\\(|\\\\\\\\))\\\",\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(\\\\\\\\?{0,1})([[:alpha:]0-9'`^._]+|``[[:alpha:]0-9'`^:,._ ]+``)\\\\\\\\s*(:{0,1})(\\\\\\\\s*([?[:alpha:]0-9'`<>._ ]+)){0,1}\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},\\\"modules\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(namespace global)|\\\\\\\\b(namespace|module)\\\\\\\\s*(public|internal|private|rec)?\\\\\\\\s+([[:alpha:]|``][[:alpha:]0-9'_. ]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.fsharp\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.section.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\s?=|\\\\\\\\s|$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"name\\\":\\\"entity.name.section.fsharp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace-reference.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.fsharp\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)([A-Z][[:alpha:]0-9'_]*)\\\",\\\"name\\\":\\\"entity.name.section.fsharp\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(open type|open)\\\\\\\\s+([[:alpha:]|``][[:alpha:]0-9'_]*)(?=(\\\\\\\\.[A-Z][[:alpha:]0-9_]*)*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\s|$)\\\",\\\"name\\\":\\\"namespace.open.fsharp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace-reference.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.fsharp\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)([[:alpha:]][[:alpha:]0-9'_]*)\\\",\\\"name\\\":\\\"entity.name.section.fsharp\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(module)\\\\\\\\s+([A-Z][[:alpha:]0-9'_]*)\\\\\\\\s*(=)\\\\\\\\s*([A-Z][[:alpha:]0-9'_]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.namespace.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.section.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\s|$)\\\",\\\"name\\\":\\\"namespace.alias.fsharp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.namespace-reference.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.fsharp\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)([A-Z][[:alpha:]0-9'_]*)\\\",\\\"name\\\":\\\"entity.name.section.fsharp\\\"}]}]},\\\"record_declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(((mutable)\\\\\\\\s[[:alpha:]]+)|[[:alpha:]0-9'`<>^._]*)\\\\\\\\s*((?<!:):(?!:))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"$|(;|\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"([[:alpha:]0-9'`^_ ]+)\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},{\\\"include\\\":\\\"#compiler_directives\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#chars\\\"},{\\\"include\\\":\\\"#double_tick\\\"},{\\\"include\\\":\\\"#definition\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#anonymous_functions\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#cexprs\\\"},{\\\"include\\\":\\\"#text\\\"}]}]},\\\"record_signature\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.fsharp\\\"}},\\\"match\\\":\\\"[[:alpha:]0-9'`^_ ]+(=)([[:alpha:]0-9'`^_ ]+)\\\"},{\\\"begin\\\":\\\"({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.fsharp\\\"}},\\\"match\\\":\\\"[[:alpha:]0-9'`^_ ]+(=)([[:alpha:]0-9'`^_ ]+)\\\"},{\\\"include\\\":\\\"#record_signature\\\"}]},{\\\"include\\\":\\\"#keywords\\\"}]},\\\"records\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(type)[\\\\\\\\s]+(private|internal|public)?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.fsharp\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((with)|((as)\\\\\\\\s+([[:alpha:]0-9']+))|(=)|[\\\\\\\\n=]|(\\\\\\\\(\\\\\\\\)))\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.parameter.fsharp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"name\\\":\\\"record.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"([[:alpha:]0-9'^._]+|``[[:alpha:]0-9'`^:,._ ]+``)\\\"},{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"((?<!:)>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(('|\\\\\\\\^)``[[:alpha:]0-9`^:,._ ]+``|('|\\\\\\\\^)[[:alpha:]0-9`^:._]+)\\\"},{\\\"match\\\":\\\"\\\\\\\\b(interface|with|abstract|and|when|or|not|struct|equality|comparison|unmanaged|delegate|enum)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.fsharp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"}},\\\"match\\\":\\\"(static member|member|new)\\\"},{\\\"include\\\":\\\"#common_binding_definition\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"comments\\\":\\\"Here we need the \\\\\\\\w modifier in order to check that the words isn't blacklisted\\\",\\\"match\\\":\\\"([\\\\\\\\w0-9'`^._]+)\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.fsharp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(private|internal|public)\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?=(=)|[\\\\\\\\n=]|(\\\\\\\\(\\\\\\\\))|(as))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#member_declaration\\\"}]},{\\\"include\\\":\\\"#keywords\\\"}]}]},\\\"string_formatter\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.format.specifier.fsharp\\\"}},\\\"match\\\":\\\"(%0?-?(\\\\\\\\d+)?((a|t)|(\\\\\\\\.\\\\\\\\d+)?(f|F|e|E|g|G|M)|(b|c|s|d|i|x|X|o|u)|(s|b|O)|(\\\\\\\\+?A)))\\\",\\\"name\\\":\\\"entity.name.type.format.specifier.fsharp\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[^\\\\\\\\\\\\\\\\])(@\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\")(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.fsharp\\\"}},\\\"name\\\":\\\"string.quoted.literal.fsharp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"(\\\\\\\")\\\",\\\"name\\\":\\\"constant.character.string.escape.fsharp\\\"}]},{\\\"begin\\\":\\\"(?=[^\\\\\\\\\\\\\\\\])(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.fsharp\\\"}},\\\"name\\\":\\\"string.quoted.triple.fsharp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_formatter\\\"}]},{\\\"begin\\\":\\\"(?=[^\\\\\\\\\\\\\\\\])(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.fsharp\\\"}},\\\"name\\\":\\\"string.quoted.double.fsharp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\$[ \\\\\\\\t]*\\\",\\\"name\\\":\\\"punctuation.separator.string.ignore-eol.fsharp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(['\\\\\\\"\\\\\\\\\\\\\\\\abfnrtv]|([01][0-9][0-9]|2[0-4][0-9]|25[0-5])|(x[0-9a-fA-F]{2})|(u[0-9a-fA-F]{4})|(U00(0[0-9a-fA-F]|10)[0-9a-fA-F]{4}))\\\",\\\"name\\\":\\\"constant.character.string.escape.fsharp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(([0-9]{1,3})|(x[^\\\\\\\\s]{0,2})|(u[^\\\\\\\\s]{0,4})|(U[^\\\\\\\\s]{0,8})|[^\\\\\\\\s])\\\",\\\"name\\\":\\\"invalid.illegal.character.string.fsharp\\\"},{\\\"include\\\":\\\"#string_formatter\\\"}]}]},\\\"strp_inlined\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#strp_inlined_body\\\"}]}]},\\\"strp_inlined_body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#anonymous_functions\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(\\\\\\\\^[[:alpha:]0-9'._]+)\\\"},{\\\"match\\\":\\\"\\\\\\\\b(and|when|or)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.fsharp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#strp_inlined_body\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.fsharp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"match\\\":\\\"(static member|member)\\\\\\\\s*([[:alpha:]0-9'`<>^._]+|``[[:alpha:]0-9' <>^._]+``)\\\\\\\\s*(:)\\\"},{\\\"include\\\":\\\"#compiler_directives\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#chars\\\"},{\\\"include\\\":\\\"#double_tick\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#text\\\"},{\\\"include\\\":\\\"#definition\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#cexprs\\\"},{\\\"include\\\":\\\"#text\\\"}]},\\\"text\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"text.fsharp\\\"}]},\\\"tuple_signature\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(([?[:alpha:]0-9'`^._ ]+))+\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.fsharp\\\"}},\\\"match\\\":\\\"(([?[:alpha:]0-9'`^._ ]+))+\\\"},{\\\"include\\\":\\\"#tuple_signature\\\"}]},{\\\"include\\\":\\\"#keywords\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.symbol.fsharp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.fsharp\\\"}},\\\"match\\\":\\\"(\\\\\\\\?{0,1})(``[[:alpha:]0-9'`^:,._ ]+``|(?!private|struct\\\\\\\\b)\\\\\\\\b[\\\\\\\\w[:alpha:]0-9'`<>^._ ]+)\\\"}]}},\\\"scopeName\\\":\\\"source.fsharp\\\",\\\"embeddedLangs\\\":[\\\"markdown\\\"],\\\"aliases\\\":[\\\"f#\\\",\\\"fs\\\"]}\"))\n\nexport default [\n...markdown,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"GDShader\\\",\\\"fileTypes\\\":[\\\"gdshader\\\"],\\\"name\\\":\\\"gdshader\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#any\\\"}],\\\"repository\\\":{\\\"any\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#enclosed\\\"},{\\\"include\\\":\\\"#classifier\\\"},{\\\"include\\\":\\\"#definition\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#element\\\"},{\\\"include\\\":\\\"#separator\\\"},{\\\"include\\\":\\\"#operator\\\"}]},\\\"arraySize\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.gdshader\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"meta.array-size.gdshader\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#element\\\"},{\\\"include\\\":\\\"#separator\\\"}]},\\\"classifier\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\b(?:shader_type|render_mode)\\\\\\\\b)\\\",\\\"end\\\":\\\"(?<=;)\\\",\\\"name\\\":\\\"meta.classifier.gdshader\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#identifierClassification\\\"},{\\\"include\\\":\\\"#separator\\\"}]},\\\"classifierKeyword\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:shader_type|render_mode)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.language.classifier.gdshader\\\"},\\\"comment\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#commentLine\\\"},{\\\"include\\\":\\\"#commentBlock\\\"}]},\\\"commentBlock\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.gdshader\\\"},\\\"commentLine\\\":{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.gdshader\\\"},\\\"constantFloat\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:E|PI|TAU)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.float.gdshader\\\"},\\\"constructor\\\":{\\\"match\\\":\\\"\\\\\\\\b[a-zA-Z_]\\\\\\\\w*(?=\\\\\\\\s*\\\\\\\\[\\\\\\\\s*\\\\\\\\w*\\\\\\\\s*\\\\\\\\]\\\\\\\\s*[(])|\\\\\\\\b[A-Z]\\\\\\\\w*(?=\\\\\\\\s*[(])\\\",\\\"name\\\":\\\"entity.name.type.constructor.gdshader\\\"},\\\"controlKeyword\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:if|else|do|while|for|continue|break|switch|case|default|return|discard)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.gdshader\\\"},\\\"definition\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#structDefinition\\\"}]},\\\"element\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literalFloat\\\"},{\\\"include\\\":\\\"#literalInt\\\"},{\\\"include\\\":\\\"#literalBool\\\"},{\\\"include\\\":\\\"#identifierType\\\"},{\\\"include\\\":\\\"#constructor\\\"},{\\\"include\\\":\\\"#processorFunction\\\"},{\\\"include\\\":\\\"#identifierFunction\\\"},{\\\"include\\\":\\\"#swizzling\\\"},{\\\"include\\\":\\\"#identifierField\\\"},{\\\"include\\\":\\\"#constantFloat\\\"},{\\\"include\\\":\\\"#languageVariable\\\"},{\\\"include\\\":\\\"#identifierVariable\\\"}]},\\\"enclosed\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.gdshader\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.parenthesis.gdshader\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#any\\\"}]},\\\"fieldDefinition\\\":{\\\"begin\\\":\\\"\\\\\\\\b[a-zA-Z_]\\\\\\\\w*\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typeKeyword\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"entity.name.type.gdshader\\\"}]}},\\\"end\\\":\\\"(?<=;)\\\",\\\"name\\\":\\\"meta.definition.field.gdshader\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#arraySize\\\"},{\\\"include\\\":\\\"#fieldName\\\"},{\\\"include\\\":\\\"#any\\\"}]},\\\"fieldName\\\":{\\\"match\\\":\\\"\\\\\\\\b[a-zA-Z_]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.variable.field.gdshader\\\"},\\\"hintKeyword\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:source_color|hint_(?:color|range|(?:black_)?albedo|normal|(?:default_)?(?:white|black)|aniso|anisotropy|roughness_(?:[rgba]|normal|gray))|filter_(?:nearest|linear)(?:_mipmap(?:_anisotropic)?)?|repeat_(?:en|dis)able)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.annotation.gdshader\\\"},\\\"identifierClassification\\\":{\\\"match\\\":\\\"\\\\\\\\b[a-z_]+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.inherited-class.gdshader\\\"},\\\"identifierField\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.gdshader\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.variable.field.gdshader\\\"}},\\\"match\\\":\\\"([.])\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)\\\\\\\\b(?!\\\\\\\\s*\\\\\\\\()\\\"},\\\"identifierFunction\\\":{\\\"match\\\":\\\"\\\\\\\\b[a-zA-Z_]\\\\\\\\w*(?=(?:\\\\\\\\s|/\\\\\\\\*(?:\\\\\\\\*(?!/)|[^*])*\\\\\\\\*/)*[(])\\\",\\\"name\\\":\\\"entity.name.function.gdshader\\\"},\\\"identifierType\\\":{\\\"match\\\":\\\"\\\\\\\\b[a-zA-Z_]\\\\\\\\w*(?=(?:\\\\\\\\s*\\\\\\\\[\\\\\\\\s*\\\\\\\\w*\\\\\\\\s*\\\\\\\\])?\\\\\\\\s+[a-zA-Z_]\\\\\\\\w*\\\\\\\\b)\\\",\\\"name\\\":\\\"entity.name.type.gdshader\\\"},\\\"identifierVariable\\\":{\\\"match\\\":\\\"\\\\\\\\b[a-zA-Z_]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.name.gdshader\\\"},\\\"keyword\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#classifierKeyword\\\"},{\\\"include\\\":\\\"#structKeyword\\\"},{\\\"include\\\":\\\"#controlKeyword\\\"},{\\\"include\\\":\\\"#modifierKeyword\\\"},{\\\"include\\\":\\\"#precisionKeyword\\\"},{\\\"include\\\":\\\"#typeKeyword\\\"},{\\\"include\\\":\\\"#hintKeyword\\\"}]},\\\"languageVariable\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:[A-Z][A-Z_0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.gdshader\\\"},\\\"literalBool\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:false|true)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.gdshader\\\"},\\\"literalFloat\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:\\\\\\\\d+[eE][-+]?\\\\\\\\d+|(?:\\\\\\\\d*[.]\\\\\\\\d+|\\\\\\\\d+[.])(?:[eE][-+]?\\\\\\\\d+)?)[fF]?\\\",\\\"name\\\":\\\"constant.numeric.float.gdshader\\\"},\\\"literalInt\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:0[xX][0-9A-Fa-f]+|\\\\\\\\d+[uU]?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.gdshader\\\"},\\\"modifierKeyword\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:const|global|instance|uniform|varying|in|out|inout|flat|smooth)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.gdshader\\\"},\\\"operator\\\":{\\\"match\\\":\\\"\\\\\\\\<\\\\\\\\<\\\\\\\\=?|\\\\\\\\>\\\\\\\\>\\\\\\\\=?|[-+*/&|<>=!]\\\\\\\\=|\\\\\\\\&\\\\\\\\&|[|][|]|[-+~!*/%<>&^|=]\\\",\\\"name\\\":\\\"keyword.operator.gdshader\\\"},\\\"precisionKeyword\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:low|medium|high)p\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.built-in.primitive.precision.gdshader\\\"},\\\"processorFunction\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:vertex|fragment|light|start|process|sky|fog)(?=(?:\\\\\\\\s|/\\\\\\\\*(?:\\\\\\\\*(?!/)|[^*])*\\\\\\\\*/)*[(])\\\",\\\"name\\\":\\\"support.function.gdshader\\\"},\\\"separator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[.]\\\",\\\"name\\\":\\\"punctuation.accessor.gdshader\\\"},{\\\"include\\\":\\\"#separatorComma\\\"},{\\\"match\\\":\\\"[;]\\\",\\\"name\\\":\\\"punctuation.terminator.statement.gdshader\\\"},{\\\"match\\\":\\\"[:]\\\",\\\"name\\\":\\\"keyword.operator.type.annotation.gdshader\\\"}]},\\\"separatorComma\\\":{\\\"match\\\":\\\"[,]\\\",\\\"name\\\":\\\"punctuation.separator.comma.gdshader\\\"},\\\"structDefinition\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\b(?:struct)\\\\\\\\b)\\\",\\\"end\\\":\\\"(?<=;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#structName\\\"},{\\\"include\\\":\\\"#structDefinitionBlock\\\"},{\\\"include\\\":\\\"#separator\\\"}]},\\\"structDefinitionBlock\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.struct.gdshader\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.definition.block.struct.gdshader\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#precisionKeyword\\\"},{\\\"include\\\":\\\"#fieldDefinition\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#any\\\"}]},\\\"structKeyword\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:struct)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.struct.gdshader\\\"},\\\"structName\\\":{\\\"match\\\":\\\"\\\\\\\\b[a-zA-Z_]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.struct.gdshader\\\"},\\\"swizzling\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.gdshader\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.property.gdshader\\\"}},\\\"match\\\":\\\"([.])\\\\\\\\s*([xyzw]{2,4}|[rgba]{2,4}|[stpq]{2,4})\\\\\\\\b\\\"},\\\"typeKeyword\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:void|bool|[biu]?vec[234]|u?int|float|mat[234]|[iu]?sampler(?:3D|2D(?:Array)?)|samplerCube)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.gdshader\\\"}},\\\"scopeName\\\":\\\"source.gdshader\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"GDScript\\\",\\\"fileTypes\\\":[\\\"gd\\\"],\\\"name\\\":\\\"gdscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"},{\\\"include\\\":\\\"#expression\\\"}],\\\"repository\\\":{\\\"annotated_parameter\\\":{\\\"begin\\\":\\\"\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(:)\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.annotation.gdscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.gdscript\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.gdscript\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#base_expression\\\"},{\\\"match\\\":\\\"=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.gdscript\\\"}]},\\\"annotations\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.decorator.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.decorator.gdscript\\\"}},\\\"match\\\":\\\"(@)(export|export_group|export_color_no_alpha|export_custom|export_dir|export_enum|export_exp_easing|export_file|export_flags|export_flags_2d_navigation|export_flags_2d_physics|export_flags_2d_render|export_flags_3d_navigation|export_flags_3d_physics|export_flags_3d_render|export_global_dir|export_global_file|export_multiline|export_node_path|export_placeholder|export_range|export_storage|icon|onready|rpc|tool|warning_ignore|static_unload)\\\\\\\\b\\\"},\\\"any_method\\\":{\\\"match\\\":\\\"\\\\\\\\b([A-Za-z_]\\\\\\\\w*)\\\\\\\\b(?=\\\\\\\\s*(?:[(]))\\\",\\\"name\\\":\\\"entity.name.function.other.gdscript\\\"},\\\"any_property\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.language.gdscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.property.gdscript\\\"}},\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\.)\\\\\\\\s*(?<![@\\\\\\\\$#%])(?:([A-Z_][A-Z_0-9]*)|([A-Za-z_]\\\\\\\\w*))\\\\\\\\b(?![(])\\\"},\\\"any_variable\\\":{\\\"match\\\":\\\"\\\\\\\\b(?<![@\\\\\\\\$#%])([A-Za-z_]\\\\\\\\w*)\\\\\\\\b(?![(])\\\",\\\"name\\\":\\\"variable.other.gdscript\\\"},\\\"arithmetic_operator\\\":{\\\"match\\\":\\\"->|\\\\\\\\+=|-=|\\\\\\\\*=|\\\\\\\\^=|/=|%=|&=|~=|\\\\\\\\|=|\\\\\\\\*\\\\\\\\*|\\\\\\\\*|/|%|\\\\\\\\+|-\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.gdscript\\\"},\\\"assignment_operator\\\":{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.gdscript\\\"},\\\"base_expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin_get_node_shorthand\\\"},{\\\"include\\\":\\\"#nodepath_object\\\"},{\\\"include\\\":\\\"#nodepath_function\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#builtin_classes\\\"},{\\\"include\\\":\\\"#const_vars\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#lambda_declaration\\\"},{\\\"include\\\":\\\"#class_declaration\\\"},{\\\"include\\\":\\\"#variable_declaration\\\"},{\\\"include\\\":\\\"#signal_declaration_bare\\\"},{\\\"include\\\":\\\"#signal_declaration\\\"},{\\\"include\\\":\\\"#function_declaration\\\"},{\\\"include\\\":\\\"#statement_keyword\\\"},{\\\"include\\\":\\\"#assignment_operator\\\"},{\\\"include\\\":\\\"#in_keyword\\\"},{\\\"include\\\":\\\"#control_flow\\\"},{\\\"include\\\":\\\"#match_keyword\\\"},{\\\"include\\\":\\\"#curly_braces\\\"},{\\\"include\\\":\\\"#square_braces\\\"},{\\\"include\\\":\\\"#round_braces\\\"},{\\\"include\\\":\\\"#function_call\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#self\\\"},{\\\"include\\\":\\\"#func\\\"},{\\\"include\\\":\\\"#letter\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#pascal_case_class\\\"},{\\\"include\\\":\\\"#line_continuation\\\"}]},\\\"bitwise_operator\\\":{\\\"match\\\":\\\"&|\\\\\\\\||<<=|>>=|<<|>>|\\\\\\\\^|~\\\",\\\"name\\\":\\\"keyword.operator.bitwise.gdscript\\\"},\\\"boolean_operator\\\":{\\\"match\\\":\\\"(&&|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.boolean.gdscript\\\"},\\\"builtin_classes\\\":{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(Vector2|Vector2i|Vector3|Vector3i|Vector4|Vector4i|Color|Rect2|Rect2i|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|Signal|Callable|StringName|Quaternion|Projection|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedVector4Array|PackedColorArray|super)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.class.builtin.gdscript\\\"},\\\"builtin_get_node_shorthand\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin_get_node_shorthand_quoted\\\"},{\\\"include\\\":\\\"#builtin_get_node_shorthand_bare\\\"},{\\\"include\\\":\\\"#builtin_get_node_shorthand_bare_multi\\\"}]},\\\"builtin_get_node_shorthand_bare\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.gdscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.gdscript\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.escape.gdscript\\\"}},\\\"match\\\":\\\"(?<!/\\\\\\\\s*)(\\\\\\\\$\\\\\\\\s*|%|\\\\\\\\$%\\\\\\\\s*)(/\\\\\\\\s*)?([a-zA-Z_]\\\\\\\\w*)\\\\\\\\b(?!\\\\\\\\s*/)\\\",\\\"name\\\":\\\"meta.literal.nodepath.bare.gdscript\\\"},\\\"builtin_get_node_shorthand_bare_multi\\\":{\\\"begin\\\":\\\"(\\\\\\\\$\\\\\\\\s*|%|\\\\\\\\$%\\\\\\\\s*)(/\\\\\\\\s*)?([a-zA-Z_]\\\\\\\\w*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.gdscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.gdscript\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\s*/\\\\\\\\s*%?\\\\\\\\s*[a-zA-Z_]\\\\\\\\w*)\\\",\\\"name\\\":\\\"meta.literal.nodepath.bare.gdscript\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.flow.gdscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.gdscript\\\"}},\\\"match\\\":\\\"(/)\\\\\\\\s*(%)?\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*\\\"}]},\\\"builtin_get_node_shorthand_quoted\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\$|%)|(&|\\\\\\\\^|@))(\\\\\\\"|')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.enummember.gdscript\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)\\\",\\\"name\\\":\\\"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape.gdscript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"%\\\",\\\"name\\\":\\\"keyword.control.flow\\\"}]},\\\"class_declaration\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"class.other.gdscript\\\"}},\\\"match\\\":\\\"(?<=^class)\\\\\\\\s+([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(?=:)\\\"},\\\"class_enum\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.enummember.gdscript\\\"}},\\\"match\\\":\\\"\\\\\\\\b([A-Z][a-zA-Z_0-9]*)\\\\\\\\.([A-Z_0-9]+)\\\"},\\\"class_is\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.is.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.gdscript\\\"}},\\\"match\\\":\\\"\\\\\\\\s+(is)\\\\\\\\s+([a-zA-Z_]\\\\\\\\w*)\\\"},\\\"class_name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"class.other.gdscript\\\"}},\\\"match\\\":\\\"(?<=class_name)\\\\\\\\s+([a-zA-Z_]\\\\\\\\w*(\\\\\\\\.([a-zA-Z_]\\\\\\\\w*))?)\\\"},\\\"class_new\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.new.gdscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.parenthesis.begin.gdscript\\\"}},\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_]\\\\\\\\w*).(new)\\\\\\\\(\\\"},\\\"comment\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.number-sign.gdscript\\\"}},\\\"match\\\":\\\"(##|#).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.gdscript\\\"},\\\"compare_operator\\\":{\\\"match\\\":\\\"<=|>=|==|<|>|!=|!\\\",\\\"name\\\":\\\"keyword.operator.comparison.gdscript\\\"},\\\"const_vars\\\":{\\\"match\\\":\\\"\\\\\\\\b([A-Z_][A-Z_0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.constant.gdscript\\\"},\\\"control_flow\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:if|elif|else|while|break|continue|pass|return|when|yield|await)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.gdscript\\\"},\\\"curly_braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dict.begin.gdscript\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dict.end.gdscript\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#base_expression\\\"},{\\\"include\\\":\\\"#any_variable\\\"}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#base_expression\\\"},{\\\"include\\\":\\\"#getter_setter_godot4\\\"},{\\\"include\\\":\\\"#assignment_operator\\\"},{\\\"include\\\":\\\"#annotations\\\"},{\\\"include\\\":\\\"#class_name\\\"},{\\\"include\\\":\\\"#builtin_classes\\\"},{\\\"include\\\":\\\"#class_new\\\"},{\\\"include\\\":\\\"#class_is\\\"},{\\\"include\\\":\\\"#class_enum\\\"},{\\\"include\\\":\\\"#any_method\\\"},{\\\"include\\\":\\\"#any_variable\\\"},{\\\"include\\\":\\\"#any_property\\\"}]},\\\"extends_statement\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.inherited-class.gdscript\\\"}},\\\"match\\\":\\\"(extends)\\\\\\\\s+([a-zA-Z_]\\\\\\\\w*\\\\\\\\.[a-zA-Z_]\\\\\\\\w*)?\\\"},\\\"func\\\":{\\\"match\\\":\\\"\\\\\\\\bfunc\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.language.gdscript\\\"},\\\"function_arguments\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.gdscript\\\"}},\\\"contentName\\\":\\\"meta.function.parameters.gdscript\\\",\\\"end\\\":\\\"(?=\\\\\\\\))(?!\\\\\\\\)\\\\\\\\s*\\\\\\\\()\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"punctuation.separator.arguments.gdscript\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function-call.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.gdscript\\\"}},\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(=)(?!=)\\\"},{\\\"match\\\":\\\"=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.gdscript\\\"},{\\\"include\\\":\\\"#base_expression\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.gdscript\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\))\\\\\\\\s*(\\\\\\\\()\\\"},{\\\"include\\\":\\\"#letter\\\"},{\\\"include\\\":\\\"#any_variable\\\"},{\\\"include\\\":\\\"#any_property\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},\\\"function_call\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\b[a-zA-Z_]\\\\\\\\w*\\\\\\\\b\\\\\\\\()\\\",\\\"comment\\\":\\\"Regular function call of the type \\\\\\\"name(args)\\\\\\\"\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.gdscript\\\"}},\\\"name\\\":\\\"meta.function-call.gdscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_name\\\"},{\\\"include\\\":\\\"#function_arguments\\\"}]},\\\"function_declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(func)\\\\\\\\s+([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.gdscript storage.type.function.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.gdscript\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.gdscript\\\"}},\\\"name\\\":\\\"meta.function.gdscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"include\\\":\\\"#base_expression\\\"}]},\\\"function_name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin_classes\\\"},{\\\"match\\\":\\\"\\\\\\\\b(preload)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.language.gdscript\\\"},{\\\"comment\\\":\\\"Some color schemas support meta.function-call.generic scope\\\",\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.gdscript\\\"}]},\\\"getter_setter_godot4\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.gdscript\\\"}},\\\"match\\\":\\\"\\\\\\\\b(get):\\\"},{\\\"begin\\\":\\\"\\\\\\\\s+(set)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.gdscript\\\"}},\\\"end\\\":\\\"(:|(?=[#'\\\\\\\"\\\\\\\\n]))\\\",\\\"name\\\":\\\"meta.function.gdscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#line_continuation\\\"}]}]},\\\"in_keyword\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(for)\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.gdscript\\\"}},\\\"end\\\":\\\":\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.gdscript\\\"},{\\\"include\\\":\\\"#base_expression\\\"},{\\\"include\\\":\\\"#any_variable\\\"},{\\\"include\\\":\\\"#any_property\\\"}]},{\\\"match\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.wordlike.gdscript\\\"}]},\\\"keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:class|class_name|abstract|is|onready|tool|static|export|as|void|enum|assert|breakpoint|sync|remote|master|puppet|slave|remotesync|mastersync|puppetsync|trait|namespace)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.language.gdscript\\\"},\\\"lambda_declaration\\\":{\\\"begin\\\":\\\"(func)\\\\\\\\s?(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.gdscript storage.type.function.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.gdscript\\\"}},\\\"end\\\":\\\"(:|(?=[#'\\\\\\\"\\\\\\\\n]))\\\",\\\"end2\\\":\\\"(\\\\\\\\s*(\\\\\\\\-\\\\\\\\>)\\\\\\\\s*(void\\\\\\\\w*)|([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*\\\\\\\\:)\\\",\\\"endCaptures2\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.annotation.result.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.language.void.gdscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.gdscript markup.italic\\\"}},\\\"name\\\":\\\"meta.function.gdscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"include\\\":\\\"#base_expression\\\"},{\\\"include\\\":\\\"#any_variable\\\"},{\\\"include\\\":\\\"#any_property\\\"}]},\\\"letter\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.gdscript\\\"},\\\"line_continuation\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.continuation.line.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.line.continuation.gdscript\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\s*(\\\\\\\\S.*$\\\\\\\\n?)\\\"},{\\\"begin\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\s*$\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.continuation.line.gdscript\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*$)|(?!(\\\\\\\\s*[rR]?(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"|\\\\\\\\'|\\\\\\\\\\\\\\\"))|(\\\\\\\\G$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#base_expression\\\"}]}]},\\\"loose_default\\\":{\\\"begin\\\":\\\"(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.gdscript\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.gdscript\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#base_expression\\\"}]},\\\"match_keyword\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.gdscript\\\"}},\\\"match\\\":\\\"^\\\\n\\\\\\\\s*(match)\\\"},\\\"nodepath_function\\\":{\\\"begin\\\":\\\"(get_node_or_null|has_node|has_node_and_resource|find_node|get_node)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.gdscript\\\"}},\\\"contentName\\\":\\\"meta.function.parameters.gdscript\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.gdscript\\\"}},\\\"name\\\":\\\"meta.function.gdscript\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\"|')\\\",\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"name\\\":\\\"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"%\\\",\\\"name\\\":\\\"keyword.control.flow\\\"}]},{\\\"include\\\":\\\"#base_expression\\\"}]},\\\"nodepath_object\\\":{\\\"begin\\\":\\\"(NodePath)\\\\\\\\s*(?:\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.library.gdscript\\\"}},\\\"end\\\":\\\"(?:\\\\\\\\))\\\",\\\"name\\\":\\\"meta.literal.nodepath.gdscript\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\"|')\\\",\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"name\\\":\\\"string.quoted.gdscript constant.character.escape.gdscript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"%\\\",\\\"name\\\":\\\"keyword.control.flow.gdscript\\\"}]}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"0b[01_]+\\\",\\\"name\\\":\\\"constant.numeric.integer.binary.gdscript\\\"},{\\\"match\\\":\\\"0x[0-9A-Fa-f_]+\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.gdscript\\\"},{\\\"match\\\":\\\"\\\\\\\\.[0-9][0-9_]*([eE][+-]?[0-9_]+)?\\\",\\\"name\\\":\\\"constant.numeric.float.gdscript\\\"},{\\\"match\\\":\\\"([0-9][0-9_]*)?\\\\\\\\.[0-9_]*([eE][+-]?[0-9_]+)?\\\",\\\"name\\\":\\\"constant.numeric.float.gdscript\\\"},{\\\"match\\\":\\\"[0-9][0-9_]*[eE][+-]?[0-9_]+\\\",\\\"name\\\":\\\"constant.numeric.float.gdscript\\\"},{\\\"match\\\":\\\"[-]?[0-9][0-9_]*\\\",\\\"name\\\":\\\"constant.numeric.integer.gdscript\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#wordlike_operator\\\"},{\\\"include\\\":\\\"#boolean_operator\\\"},{\\\"include\\\":\\\"#arithmetic_operator\\\"},{\\\"include\\\":\\\"#bitwise_operator\\\"},{\\\"include\\\":\\\"#compare_operator\\\"}]},\\\"parameters\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.gdscript\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.gdscript\\\"}},\\\"name\\\":\\\"meta.function.parameters.gdscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#annotated_parameter\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.gdscript\\\"}},\\\"match\\\":\\\"([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(?:(,)|(?=[)#\\\\\\\\n=]))\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#loose_default\\\"}]},\\\"pascal_case_class\\\":{\\\"match\\\":\\\"\\\\\\\\b([A-Z]+[a-z_0-9]*([A-Z]?[a-z_0-9]+)*[A-Z]?)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.class.gdscript\\\"},\\\"round_braces\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.begin.gdscript\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.end.gdscript\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#base_expression\\\"},{\\\"include\\\":\\\"#any_variable\\\"}]},\\\"self\\\":{\\\"match\\\":\\\"\\\\\\\\bself\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.gdscript\\\"},\\\"signal_declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(signal)\\\\\\\\s+([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.gdscript storage.type.function.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.gdscript\\\"}},\\\"end\\\":\\\"((?=[#'\\\\\\\"\\\\\\\\n]))\\\",\\\"name\\\":\\\"meta.signal.gdscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#line_continuation\\\"}]},\\\"signal_declaration_bare\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.gdscript storage.type.function.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.gdscript\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(signal)\\\\\\\\s+([a-zA-Z_]\\\\\\\\w*)(?=[\\\\\\\\n\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.signal.gdscript\\\"},\\\"square_braces\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.list.begin.gdscript\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.list.end.gdscript\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#base_expression\\\"},{\\\"include\\\":\\\"#any_variable\\\"}]},\\\"statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#extends_statement\\\"}]},\\\"statement_keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(continue|assert|break|elif|else|if|pass|return|while)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.gdscript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(class)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.gdscript\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.gdscript\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(case|match)(?=\\\\\\\\s*([-+\\\\\\\\w\\\\\\\\d(\\\\\\\\[{'\\\\\\\":#]|$))\\\\\\\\b\\\"}]},\\\"string_bracket_placeholders\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.gdscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.format.gdscript\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.format.gdscript\\\"}},\\\"match\\\":\\\"({{|}}|(?:{\\\\\\\\w*(\\\\\\\\.[[:alpha:]_]\\\\\\\\w*|\\\\\\\\[[^\\\\\\\\]'\\\\\\\"]+\\\\\\\\])*(![rsa])?(:\\\\\\\\w?[<>=^]?[-+ ]?\\\\\\\\#?\\\\\\\\d*,?(\\\\\\\\.\\\\\\\\d+)?[bcdeEfFgGnosxX%]?)?}))\\\",\\\"name\\\":\\\"meta.format.brace.gdscript\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.gdscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.format.gdscript\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.format.gdscript\\\"}},\\\"match\\\":\\\"({\\\\\\\\w*(\\\\\\\\.[[:alpha:]_]\\\\\\\\w*|\\\\\\\\[[^\\\\\\\\]'\\\\\\\"]+\\\\\\\\])*(![rsa])?(:)[^'\\\\\\\"{}\\\\\\\\n]*(?:\\\\\\\\{[^'\\\\\\\"}\\\\\\\\n]*?\\\\\\\\}[^'\\\\\\\"{}\\\\\\\\n]*)*})\\\",\\\"name\\\":\\\"meta.format.brace.gdscript\\\"}]},\\\"string_percent_placeholders\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.gdscript\\\"}},\\\"match\\\":\\\"(%(\\\\\\\\([\\\\\\\\w\\\\\\\\s]*\\\\\\\\))?[-+#0 ]*(\\\\\\\\d+|\\\\\\\\*)?(\\\\\\\\.(\\\\\\\\d+|\\\\\\\\*))?([hlL])?[diouxXeEfFgGcrsab%])\\\",\\\"name\\\":\\\"meta.format.percent.gdscript\\\"},\\\"strings\\\":{\\\"begin\\\":\\\"(r)?(\\\\\\\"\\\\\\\"\\\\\\\"|'''|\\\\\\\"|')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.gdscript\\\"}},\\\"end\\\":\\\"\\\\\\\\2\\\",\\\"name\\\":\\\"string.quoted.gdscript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.gdscript\\\"},{\\\"include\\\":\\\"#string_percent_placeholders\\\"},{\\\"include\\\":\\\"#string_bracket_placeholders\\\"}]},\\\"variable_declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?:(var)|(const))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.gdscript storage.type.var.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.language.gdscript storage.type.const.gdscript\\\"}},\\\"end\\\":\\\"$|;\\\",\\\"name\\\":\\\"meta.variable.declaration.gdscript\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.annotation.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.language.gdscript storage.type.const.gdscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.gdscript\\\"}},\\\"match\\\":\\\"(:)?\\\\\\\\s*(set|get)\\\\\\\\s+=\\\\\\\\s+([a-zA-Z_]\\\\\\\\w*)\\\"},{\\\"match\\\":\\\":=|=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.gdscript\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.annotation.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.gdscript\\\"}},\\\"match\\\":\\\"(:)\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.gdscript storage.type.const.gdscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.gdscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.gdscript\\\"}},\\\"match\\\":\\\"(setget)\\\\\\\\s+([a-zA-Z_]\\\\\\\\w*)(?:[,]\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*))?\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#letter\\\"},{\\\"include\\\":\\\"#any_variable\\\"},{\\\"include\\\":\\\"#any_property\\\"},{\\\"include\\\":\\\"#keywords\\\"}]},\\\"wordlike_operator\\\":{\\\"match\\\":\\\"\\\\\\\\b(and|or|not)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.wordlike.gdscript\\\"}},\\\"scopeName\\\":\\\"source.gdscript\\\"}\"))\n\nexport default [\nlang\n]\n", "import gdshader from './gdshader.mjs'\nimport gdscript from './gdscript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"GDResource\\\",\\\"name\\\":\\\"gdresource\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#embedded_shader\\\"},{\\\"include\\\":\\\"#embedded_gdscript\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#heading\\\"},{\\\"include\\\":\\\"#key_value\\\"}],\\\"repository\\\":{\\\"comment\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.gdresource\\\"}},\\\"match\\\":\\\"(;).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.gdresource\\\"},\\\"data\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(\\\\\\\\{)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.table.inline.gdresource\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\})(?!\\\\\\\\w)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.table.inline.gdresource\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#key_value\\\"},{\\\"include\\\":\\\"#data\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(\\\\\\\\[)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.array.gdresource\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\])(?!\\\\\\\\w)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.array.gdresource\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#data\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.triple.basic.block.gdresource\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([btnfr\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\n/ ]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape.gdresource\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^btnfr/\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\n]\\\",\\\"name\\\":\\\"invalid.illegal.escape.gdresource\\\"}]},{\\\"match\\\":\\\"\\\\\\\"res:\\\\\\\\/\\\\\\\\/[^\\\\\\\"\\\\\\\\\\\\\\\\]*(?:\\\\\\\\\\\\\\\\.[^\\\\\\\"\\\\\\\\\\\\\\\\]*)*\\\\\\\"\\\",\\\"name\\\":\\\"support.function.any-method.gdresource\\\"},{\\\"match\\\":\\\"(?<=type=)\\\\\\\"[^\\\\\\\"\\\\\\\\\\\\\\\\]*(?:\\\\\\\\\\\\\\\\.[^\\\\\\\"\\\\\\\\\\\\\\\\]*)*\\\\\\\"\\\",\\\"name\\\":\\\"support.class.library.gdresource\\\"},{\\\"match\\\":\\\"(?<=NodePath\\\\\\\\(|parent=|name=)\\\\\\\"[^\\\\\\\"\\\\\\\\\\\\\\\\]*(?:\\\\\\\\\\\\\\\\.[^\\\\\\\"\\\\\\\\\\\\\\\\]*)*\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.gdresource\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.basic.line.gdresource\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([btnfr\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\n/ ]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape.gdresource\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^btnfr/\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\n]\\\",\\\"name\\\":\\\"invalid.illegal.escape.gdresource\\\"}]},{\\\"match\\\":\\\"'.*?'\\\",\\\"name\\\":\\\"string.quoted.single.literal.line.gdresource\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(true|false)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.language.gdresource\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)([\\\\\\\\+\\\\\\\\-]?(0|([1-9](([0-9]|_[0-9])+)?))(?:(?:\\\\\\\\.(0|([1-9](([0-9]|_[0-9])+)?)))?[eE][\\\\\\\\+\\\\\\\\-]?[1-9]_?[0-9]*|(?:\\\\\\\\.[0-9_]*)))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.numeric.float.gdresource\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)((?:[\\\\\\\\+\\\\\\\\-]?(0|([1-9](([0-9]|_[0-9])+)?))))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.numeric.integer.gdresource\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)([\\\\\\\\+\\\\\\\\-]?inf)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.numeric.inf.gdresource\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)([\\\\\\\\+\\\\\\\\-]?nan)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.numeric.nan.gdresource\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)((?:0x(([0-9a-fA-F](([0-9a-fA-F]|_[0-9a-fA-F])+)?))))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.numeric.hex.gdresource\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(0o[0-7](_?[0-7])*)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.numeric.oct.gdresource\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(0b[01](_?[01])*)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.numeric.bin.gdresource\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(Vector2|Vector2i|Vector3|Vector3i|Color|Rect2|Rect2i|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|Object|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|StringName|Quaternion|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedColorArray)(\\\\\\\\()\\\\\\\\s?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.library.gdresource\\\"}},\\\"end\\\":\\\"\\\\\\\\s?(\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#key_value\\\"},{\\\"include\\\":\\\"#data\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(ExtResource|SubResource)(\\\\\\\\()\\\\\\\\s?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.gdresource\\\"}},\\\"end\\\":\\\"\\\\\\\\s?(\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#key_value\\\"},{\\\"include\\\":\\\"#data\\\"}]}]},\\\"embedded_gdscript\\\":{\\\"begin\\\":\\\"(script/source) = \\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.property.gdresource\\\"}},\\\"comment\\\":\\\"meta.embedded.block.gdscript\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.gdscript\\\"}]},\\\"embedded_shader\\\":{\\\"begin\\\":\\\"(code) = \\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.property.gdresource\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"meta.embedded.block.gdshader\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.gdshader\\\"}]},\\\"heading\\\":{\\\"begin\\\":\\\"\\\\\\\\[([a-z_]*)\\\\\\\\s?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.gdresource\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heading_properties\\\"},{\\\"include\\\":\\\"#data\\\"}]},\\\"heading_properties\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\s*[A-Za-z_\\\\\\\\-][A-Za-z0-9_\\\\\\\\-]*\\\\\\\\s*=)(?=\\\\\\\\s*$)\\\",\\\"name\\\":\\\"invalid.illegal.noValue.gdresource\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*([A-Za-z_-][^\\\\\\\\s]*|\\\\\\\".+\\\\\\\"|'.+'|[0-9]+)\\\\\\\\s*(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.property.gdresource\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyValue.gdresource\\\"}},\\\"end\\\":\\\"($|(?==)|\\\\\\\\,?|\\\\\\\\s*(?=\\\\\\\\}))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data\\\"}]}]},\\\"key_value\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\s*[A-Za-z_\\\\\\\\-][A-Za-z0-9_\\\\\\\\-]*\\\\\\\\s*=)(?=\\\\\\\\s*$)\\\",\\\"name\\\":\\\"invalid.illegal.noValue.gdresource\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*([A-Za-z_-][^\\\\\\\\s]*|\\\\\\\".+\\\\\\\"|'.+'|[0-9]+)\\\\\\\\s*(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.property.gdresource\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyValue.gdresource\\\"}},\\\"end\\\":\\\"($|(?==)|\\\\\\\\,|\\\\\\\\s*(?=\\\\\\\\}))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data\\\"}]}]}},\\\"scopeName\\\":\\\"source.gdresource\\\",\\\"embeddedLangs\\\":[\\\"gdshader\\\",\\\"gdscript\\\"]}\"))\n\nexport default [\n...gdshader,\n...gdscript,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Genie\\\",\\\"fileTypes\\\":[\\\"gs\\\"],\\\"name\\\":\\\"genie\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}],\\\"repository\\\":{\\\"code\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#variables\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.vala\\\"}},\\\"match\\\":\\\"/\\\\\\\\*\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.empty.vala\\\"},{\\\"include\\\":\\\"text.html.javadoc\\\"},{\\\"include\\\":\\\"#comments-inline\\\"}]},\\\"comments-inline\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.vala\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.vala\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.double-slash.vala\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.vala\\\"}},\\\"match\\\":\\\"\\\\\\\\s*((//).*$\\\\\\\\n?)\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\\\\\.?[0-9]*)|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.vala\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Z][A-Z0-9_]+)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.constant.vala\\\"}]},\\\"functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\w+)(?=\\\\\\\\s*(<[\\\\\\\\s\\\\\\\\w.]+>\\\\\\\\s*)?\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.vala\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[^@\\\\\\\\w\\\\\\\\.])(as|do|if|in|is|of|or|to|and|def|for|get|isa|new|not|out|ref|set|try|var|case|dict|else|enum|init|list|lock|null|pass|prop|self|true|uses|void|weak|when|array|async|break|class|const|event|false|final|owned|print|super|raise|while|yield|assert|delete|downto|except|extern|inline|params|public|raises|return|sealed|sizeof|static|struct|typeof|default|dynamic|ensures|finally|private|unowned|virtual|abstract|continue|delegate|internal|override|readonly|requires|volatile|construct|errordomain|interface|namespace|protected|implements)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.vala\\\"},{\\\"match\\\":\\\"(?<=^|[^@\\\\\\\\w\\\\\\\\.])(bool|double|float|unichar|char|uchar|int|uint|long|ulong|short|ushort|size_t|ssize_t|string|void|signal|int8|int16|int32|int64|uint8|uint16|uint32|uint64)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.vala\\\"},{\\\"match\\\":\\\"(#if|#elif|#else|#endif)\\\",\\\"name\\\":\\\"keyword.vala\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.triple.vala\\\"},{\\\"begin\\\":\\\"@\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.interpolated.vala\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.vala\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\\\\\\w+\\\",\\\"name\\\":\\\"constant.character.escape.vala\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\\\\\\(([^)(]|\\\\\\\\(([^)(]|\\\\\\\\([^)]*\\\\\\\\))*\\\\\\\\))*\\\\\\\\)\\\",\\\"name\\\":\\\"constant.character.escape.vala\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.vala\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.vala\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.vala\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.vala\\\"}]},{\\\"match\\\":\\\"/((\\\\\\\\\\\\\\\\/)|([^/]))*/(?=\\\\\\\\s*[,;)\\\\\\\\.\\\\\\\\n])\\\",\\\"name\\\":\\\"string.regexp.vala\\\"}]},\\\"types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[^@\\\\\\\\w\\\\\\\\.])(bool|double|float|unichar|char|uchar|int|uint|long|ulong|short|ushort|size_t|ssize_t|string|void|signal|int8|int16|int32|int64|uint8|uint16|uint32|uint64)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.primitive.vala\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Z]+\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.vala\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([_a-z]+\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.vala\\\"}]}},\\\"scopeName\\\":\\\"source.genie\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Gherkin\\\",\\\"fileTypes\\\":[\\\"feature\\\"],\\\"firstLineMatch\\\":\\\"\uAE30\uB2A5|\u6A5F\u80FD|\u529F\u80FD|\u30D5\u30A3\u30FC\u30C1\u30E3|\u062E\u0627\u0635\u064A\u0629|\u05EA\u05DB\u05D5\u05E0\u05D4|\u0424\u0443\u043D\u043A\u0446\u0456\u043E\u043D\u0430\u043B|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u043D\u043E\u0441\u0442|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B|\u041E\u0441\u043E\u0431\u0438\u043D\u0430|\u0424\u0443\u043D\u043A\u0446\u0438\u044F|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u044C|\u0421\u0432\u043E\u0439\u0441\u0442\u0432\u043E|\u041C\u043E\u0433\u0443\u045B\u043D\u043E\u0441\u0442|\u00D6zellik|W\u0142a\u015Bciwo\u015B\u0107|T\u00EDnh n\u0103ng|Savyb\u0117|Po\u017Eiadavka|Po\u017Eadavek|Osobina|Ominaisuus|Omadus|OH HAI|Mogu\u0107nost|Mogucnost|Jellemz\u0151|F\u012B\u010Da|Funzionalit\u00E0|Funktionalit\u00E4t|Funkcionalnost|Funkcionalit\u0101te|Func\u021Bionalitate|Functionaliteit|Functionalitate|Funcionalitat|Funcionalidade|Fonctionnalit\u00E9|Fitur|Ability|Business Need|Feature|Egenskap|Egenskab|Crikey|Caracter\u00EDstica|Arwedd(.*)\\\",\\\"foldingStartMarker\\\":\\\"^\\\\\\\\s*\\\\\\\\b(\uC608|\uC2DC\uB098\uB9AC\uC624 \uAC1C\uC694|\uC2DC\uB098\uB9AC\uC624|\uBC30\uACBD|\u80CC\u666F|\u5834\u666F\u5927\u7DB1|\u5834\u666F|\u573A\u666F\u5927\u7EB2|\u573A\u666F|\u5287\u672C\u5927\u7DB1|\u5287\u672C|\u4F8B\u5B50|\u4F8B|\u30C6\u30F3\u30D7\u30EC|\u30B7\u30CA\u30EA\u30AA\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8|\u30B7\u30CA\u30EA\u30AA\u30C6\u30F3\u30D7\u30EC|\u30B7\u30CA\u30EA\u30AA\u30A2\u30A6\u30C8\u30E9\u30A4\u30F3|\u30B7\u30CA\u30EA\u30AA|\u30B5\u30F3\u30D7\u30EB|\u0633\u064A\u0646\u0627\u0631\u064A\u0648 \u0645\u062E\u0637\u0637|\u0633\u064A\u0646\u0627\u0631\u064A\u0648|\u0627\u0645\u062B\u0644\u0629|\u0627\u0644\u062E\u0644\u0641\u064A\u0629|\u05EA\u05E8\u05D7\u05D9\u05E9|\u05EA\u05D1\u05E0\u05D9\u05EA \u05EA\u05E8\u05D7\u05D9\u05E9|\u05E8\u05E7\u05E2|\u05D3\u05D5\u05D2\u05DE\u05D0\u05D5\u05EA|\u0422\u0430\u0440\u0438\u0445|\u0421\u0446\u0435\u043D\u0430\u0440\u0456\u0439|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0458\u0438|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u043E|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0439 \u0441\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430\u0441\u0438|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0439|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0456\u044E|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u0458\u0430|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u044F|\u0421\u043A\u0438\u0446\u0430|\u0420\u0430\u043C\u043A\u0430 \u043D\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u0439|\u041F\u0440\u0438\u043C\u0435\u0440\u0438|\u041F\u0440\u0438\u043C\u0435\u0440|\u041F\u0440\u0438\u043A\u043B\u0430\u0434\u0438|\u041F\u0440\u0435\u0434\u044B\u0441\u0442\u043E\u0440\u0438\u044F|\u041F\u0440\u0435\u0434\u0438\u0441\u0442\u043E\u0440\u0438\u044F|\u041F\u043E\u0437\u0430\u0434\u0438\u043D\u0430|\u041F\u0435\u0440\u0435\u0434\u0443\u043C\u043E\u0432\u0430|\u041E\u0441\u043D\u043E\u0432\u0430|\u041C\u0438\u0441\u043E\u043B\u043B\u0430\u0440|\u041A\u043E\u043D\u0446\u0435\u043F\u0442|\u041A\u043E\u043D\u0442\u0435\u043A\u0441\u0442|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|\u00D6rnekler|Za\u0142o\u017Cenia|Wharrimean is|Voorbeelden|Variantai|T\u00ECnh hu\u1ED1ng|The thing of it is|Tausta|Taust|Tapausaihio|Tapaus|Tapaukset|Szenariogrundriss|Szenario|Szablon scenariusza|Stsenaarium|Struktura scenarija|Skica|Skenario konsep|Skenario|Situ\u0101cija|Senaryo tasla\u011F\u0131|Senaryo|Sc\u00E9n\u00E1\u0159|Sc\u00E9nario|Schema dello scenario|Scen\u0101rijs p\u0113c parauga|Scen\u0101rijs|Scen\u00E1r|Scenariusz|Scenariul de \u015Fablon|Scenariul de sablon|Scenariu|Scenarios|Scenario Outline|Scenario Amlinellol|Scenario|Example|Scenarijus|Scenariji|Scenarijaus \u0161ablonas|Scenarijai|Scenarij|Scenarie|Rerefons|Raamstsenaarium|P\u0159\u00EDklady|P\u00E9ld\u00E1k|Pr\u00EDklady|Przyk\u0142ady|Primjeri|Primeri|Primer|Pozad\u00ED|Pozadina|Pozadie|Plan du sc\u00E9nario|Plan du Sc\u00E9nario|Piem\u0113ri|Pavyzd\u017Eiai|Paraugs|Osnova sc\u00E9n\u00E1\u0159e|Osnova|N\u00E1\u010Drt Sc\u00E9n\u00E1\u0159e|N\u00E1\u010Drt Scen\u00E1ru|Mate|MISHUN SRSLY|MISHUN|K\u1ECBch b\u1EA3n|Kontext|Konteksts|Kontekstas|Kontekst|Koncept|Khung t\u00ECnh hu\u1ED1ng|Khung k\u1ECBch b\u1EA3n|Juhtumid|H\u00E1tt\u00E9r|Grundlage|Ge\u00E7mi\u015F|Forgat\u00F3k\u00F6nyv v\u00E1zlat|Forgat\u00F3k\u00F6nyv|Exemplos|Exemples|Exemplele|Exempel|Examples|Esquema do Cen\u00E1rio|Esquema do Cenario|Esquema del escenario|Esquema de l'escenari|Esempi|Escenario|Escenari|Enghreifftiau|Eksempler|Ejemplos|EXAMPLZ|D\u1EEF li\u1EC7u|Dis is what went down|Dasar|Contoh|Contexto|Contexte|Contesto|Condi\u0163ii|Conditii|Cobber|Cen\u00E1rio|Cenario|Cefndir|B\u1ED1i c\u1EA3nh|Blokes|Beispiele|Bakgrunn|Bakgrund|Baggrund|Background|B4|Antecedents|Antecedentes|All y'all|Achtergrond|Abstrakt Scenario|Abstract Scenario|Rule|Regla|R\u00E8gle|Regel|Regra)\\\",\\\"foldingStopMarker\\\":\\\"^\\\\\\\\s*$\\\",\\\"name\\\":\\\"gherkin\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#feature_element_keyword\\\"},{\\\"include\\\":\\\"#feature_keyword\\\"},{\\\"include\\\":\\\"#step_keyword\\\"},{\\\"include\\\":\\\"#strings_triple_quote\\\"},{\\\"include\\\":\\\"#strings_single_quote\\\"},{\\\"include\\\":\\\"#strings_double_quote\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#tags\\\"},{\\\"include\\\":\\\"#scenario_outline_variable\\\"},{\\\"include\\\":\\\"#table\\\"}],\\\"repository\\\":{\\\"comments\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.line.number-sign\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(#.*)\\\"},\\\"feature_element_keyword\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.gherkin.feature.scenario\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.language.gherkin.scenario.title.title\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\uC608|\uC2DC\uB098\uB9AC\uC624 \uAC1C\uC694|\uC2DC\uB098\uB9AC\uC624|\uBC30\uACBD|\u80CC\u666F|\u5834\u666F\u5927\u7DB1|\u5834\u666F|\u573A\u666F\u5927\u7EB2|\u573A\u666F|\u5287\u672C\u5927\u7DB1|\u5287\u672C|\u4F8B\u5B50|\u4F8B|\u30C6\u30F3\u30D7\u30EC|\u30B7\u30CA\u30EA\u30AA\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8|\u30B7\u30CA\u30EA\u30AA\u30C6\u30F3\u30D7\u30EC|\u30B7\u30CA\u30EA\u30AA\u30A2\u30A6\u30C8\u30E9\u30A4\u30F3|\u30B7\u30CA\u30EA\u30AA|\u30B5\u30F3\u30D7\u30EB|\u0633\u064A\u0646\u0627\u0631\u064A\u0648 \u0645\u062E\u0637\u0637|\u0633\u064A\u0646\u0627\u0631\u064A\u0648|\u0627\u0645\u062B\u0644\u0629|\u0627\u0644\u062E\u0644\u0641\u064A\u0629|\u05EA\u05E8\u05D7\u05D9\u05E9|\u05EA\u05D1\u05E0\u05D9\u05EA \u05EA\u05E8\u05D7\u05D9\u05E9|\u05E8\u05E7\u05E2|\u05D3\u05D5\u05D2\u05DE\u05D0\u05D5\u05EA|\u0422\u0430\u0440\u0438\u0445|\u0421\u0446\u0435\u043D\u0430\u0440\u0456\u0439|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0458\u0438|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u043E|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0439 \u0441\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430\u0441\u0438|\u0421\u0446\u0435\u043D\u0430\u0440\u0438\u0439|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0456\u044E|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u0458\u0430|\u0421\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u044F|\u0421\u043A\u0438\u0446\u0430|\u0420\u0430\u043C\u043A\u0430 \u043D\u0430 \u0441\u0446\u0435\u043D\u0430\u0440\u0438\u0439|\u041F\u0440\u0438\u043C\u0435\u0440\u0438|\u041F\u0440\u0438\u043C\u0435\u0440|\u041F\u0440\u0438\u043A\u043B\u0430\u0434\u0438|\u041F\u0440\u0435\u0434\u044B\u0441\u0442\u043E\u0440\u0438\u044F|\u041F\u0440\u0435\u0434\u0438\u0441\u0442\u043E\u0440\u0438\u044F|\u041F\u043E\u0437\u0430\u0434\u0438\u043D\u0430|\u041F\u0435\u0440\u0435\u0434\u0443\u043C\u043E\u0432\u0430|\u041E\u0441\u043D\u043E\u0432\u0430|\u041C\u0438\u0441\u043E\u043B\u043B\u0430\u0440|\u041A\u043E\u043D\u0446\u0435\u043F\u0442|\u041A\u043E\u043D\u0442\u0435\u043A\u0441\u0442|\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F|\u00D6rnekler|Za\u0142o\u017Cenia|Wharrimean is|Voorbeelden|Variantai|T\u00ECnh hu\u1ED1ng|The thing of it is|Tausta|Taust|Tapausaihio|Tapaus|Tapaukset|Szenariogrundriss|Szenario|Szablon scenariusza|Stsenaarium|Struktura scenarija|Skica|Skenario konsep|Skenario|Situ\u0101cija|Senaryo tasla\u011F\u0131|Senaryo|Sc\u00E9n\u00E1\u0159|Sc\u00E9nario|Schema dello scenario|Scen\u0101rijs p\u0113c parauga|Scen\u0101rijs|Scen\u00E1r|Scenariusz|Scenariul de \u015Fablon|Scenariul de sablon|Scenariu|Scenarios|Scenario Outline|Scenario Amlinellol|Scenario|Example|Scenarijus|Scenariji|Scenarijaus \u0161ablonas|Scenarijai|Scenarij|Scenarie|Rerefons|Raamstsenaarium|P\u0159\u00EDklady|P\u00E9ld\u00E1k|Pr\u00EDklady|Przyk\u0142ady|Primjeri|Primeri|Primer|Pozad\u00ED|Pozadina|Pozadie|Plan du sc\u00E9nario|Plan du Sc\u00E9nario|Piem\u0113ri|Pavyzd\u017Eiai|Paraugs|Osnova sc\u00E9n\u00E1\u0159e|Osnova|N\u00E1\u010Drt Sc\u00E9n\u00E1\u0159e|N\u00E1\u010Drt Scen\u00E1ru|Mate|MISHUN SRSLY|MISHUN|K\u1ECBch b\u1EA3n|Kontext|Konteksts|Kontekstas|Kontekst|Koncept|Khung t\u00ECnh hu\u1ED1ng|Khung k\u1ECBch b\u1EA3n|Juhtumid|H\u00E1tt\u00E9r|Grundlage|Ge\u00E7mi\u015F|Forgat\u00F3k\u00F6nyv v\u00E1zlat|Forgat\u00F3k\u00F6nyv|Exemplos|Exemples|Exemplele|Exempel|Examples|Esquema do Cen\u00E1rio|Esquema do Cenario|Esquema del escenario|Esquema de l'escenari|Esempi|Escenario|Escenari|Enghreifftiau|Eksempler|Ejemplos|EXAMPLZ|D\u1EEF li\u1EC7u|Dis is what went down|Dasar|Contoh|Contexto|Contexte|Contesto|Condi\u0163ii|Conditii|Cobber|Cen\u00E1rio|Cenario|Cefndir|B\u1ED1i c\u1EA3nh|Blokes|Beispiele|Bakgrunn|Bakgrund|Baggrund|Background|B4|Antecedents|Antecedentes|All y'all|Achtergrond|Abstrakt Scenario|Abstract Scenario|Rule|Regla|R\u00E8gle|Regel|Regra):(.*)\\\"},\\\"feature_keyword\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.gherkin.feature\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.language.gherkin.feature.title\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\uAE30\uB2A5|\u6A5F\u80FD|\u529F\u80FD|\u30D5\u30A3\u30FC\u30C1\u30E3|\u062E\u0627\u0635\u064A\u0629|\u05EA\u05DB\u05D5\u05E0\u05D4|\u0424\u0443\u043D\u043A\u0446\u0456\u043E\u043D\u0430\u043B|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u043D\u043E\u0441\u0442|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B|\u041E\u0441\u043E\u0431\u0438\u043D\u0430|\u0424\u0443\u043D\u043A\u0446\u0438\u044F|\u0424\u0443\u043D\u043A\u0446\u0438\u043E\u043D\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u044C|\u0421\u0432\u043E\u0439\u0441\u0442\u0432\u043E|\u041C\u043E\u0433\u0443\u045B\u043D\u043E\u0441\u0442|\u00D6zellik|W\u0142a\u015Bciwo\u015B\u0107|T\u00EDnh n\u0103ng|Savyb\u0117|Po\u017Eiadavka|Po\u017Eadavek|Osobina|Ominaisuus|Omadus|OH HAI|Mogu\u0107nost|Mogucnost|Jellemz\u0151|F\u012B\u010Da|Funzionalit\u00E0|Funktionalit\u00E4t|Funkcionalnost|Funkcionalit\u0101te|Func\u021Bionalitate|Functionaliteit|Functionalitate|Funcionalitat|Funcionalidade|Fonctionnalit\u00E9|Fitur|Ability|Business Need|Feature|Ability|Egenskap|Egenskab|Crikey|Caracter\u00EDstica|Arwedd):(.*)\\\\\\\\b\\\"},\\\"scenario_outline_variable\\\":{\\\"match\\\":\\\"<[a-zA-Z0-9 _-]*>\\\",\\\"name\\\":\\\"variable.other\\\"},\\\"step_keyword\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.gherkin.feature.step\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(En |\u0648 |Y |E |\u0535\u057E |Ya |Too right |V\u0259 |H\u0259m |A |\u0418 |\u800C\u4E14 |\u5E76\u4E14 |\u540C\u65F6 |\u4E26\u4E14 |\u540C\u6642 |Ak |Epi |A tak\u00E9 |Og |\uD83D\uDE02 |And |Kaj |Ja |Et que |Et qu' |Et |\u10D3\u10D0 |Und |\u039A\u03B1\u03B9 |\u0A85\u0AA8\u0AC7 |\u05D5\u05D2\u05DD |\u0914\u0930 |\u0924\u0925\u093E |\u00C9s |Dan |Agus |\u304B\u3064 |Lan |\u0CAE\u0CA4\u0CCD\u0CA4\u0CC1 |'ej |latlh |\uADF8\uB9AC\uACE0 |AN |Un |Ir |an |a |\u041C\u04E9\u043D |\u0422\u044D\u0433\u044D\u044D\u0434 |Ond |7 |\u0A05\u0A24\u0A47 |Aye |Oraz |Si |\u0218i |\u015Ei |\u041A \u0442\u043E\u043C\u0443 \u0436\u0435 |\u0422\u0430\u043A\u0436\u0435 |An |A tie\u017E |A taktie\u017E |A z\u00E1rove\u0148 |In |Ter |Och |\u0BAE\u0BC7\u0BB2\u0BC1\u0BAE\u0BCD |\u0BAE\u0BB1\u0BCD\u0BB1\u0BC1\u0BAE\u0BCD |\u04BA\u04D9\u043C |\u0412\u04D9 |\u0C2E\u0C30\u0C3F\u0C2F\u0C41 |\u0E41\u0E25\u0E30 |Ve |\u0406 |\u0410 \u0442\u0430\u043A\u043E\u0436 |\u0422\u0430 |\u0627\u0648\u0631 |\u0412\u0430 |V\u00E0 |Maar |\u0644\u0643\u0646 |Pero |\u0532\u0561\u0575\u0581 |Peru |Yeah nah |Amma |Ancaq |Ali |\u041D\u043E |Per\u00F2 |\u4F46\u662F |Men |Ale |\uD83D\uDE14 |But |Sed |Kuid |Mutta |Mais que |Mais qu' |Mais |\u10DB\u10D0\u10D2\u00AD\u10E0\u10D0\u10DB |Aber |\u0391\u03BB\u03BB\u03AC |\u0AAA\u0AA3 |\u05D0\u05D1\u05DC |\u092A\u0930 |\u092A\u0930\u0928\u094D\u0924\u0941 |\u0915\u093F\u0928\u094D\u0924\u0941 |De |En |Tapi |Ach |Ma |\u3057\u304B\u3057 |\u4F46\u3057 |\u305F\u3060\u3057 |Nanging |Ananging |\u0C86\u0CA6\u0CB0\u0CC6 |'ach |'a |\uD558\uC9C0\uB9CC |\uB2E8 |BUT |Bet |awer |m\u00E4 |No |Tetapi |\u0413\u044D\u0445\u0434\u044D\u044D |\u0425\u0430\u0440\u0438\u043D |Ac |\u0A2A\u0A30 |\u0627\u0645\u0627 |Avast! |Mas |Dar |\u0410 |\u0418\u043D\u0430\u0447\u0435 |Buh |\u0410\u043B\u0438 |Toda |Ampak |Vendar |\u0B86\u0BA9\u0BBE\u0BB2\u0BCD |\u041B\u04D9\u043A\u0438\u043D |\u04D8\u043C\u043C\u0430 |\u0C15\u0C3E\u0C28\u0C3F |\u0E41\u0E15\u0E48 |Fakat |Ama |\u0410\u043B\u0435 |\u0644\u06CC\u06A9\u0646 |\u041B\u0435\u043A\u0438\u043D |\u0411\u0438\u0440\u043E\u043A |\u0410\u043C\u043C\u043E |Nh\u01B0ng |Ond |Dan |\u0627\u0630\u0627\u064B |\u062B\u0645 |Alavez |Allora |Antonces |\u0531\u057A\u0561 |Ent\u00F3s |But at the end of the day I reckon |O halda |Zatim |\u0422\u043E |Aleshores |Cal |\u90A3\u4E48 |\u90A3\u9EBC |L\u00E8 sa a |Le sa a |Onda |Pak |S\u00E5 |\uD83D\uDE4F |Then |Do |Siis |Niin |Alors |Ent\u00F3n |Logo |\u10DB\u10D0\u10E8\u10D8\u10DC |Dann |\u03A4\u03CC\u03C4\u03B5 |\u0AAA\u0A9B\u0AC0 |\u05D0\u05D6 |\u05D0\u05D6\u05D9 |\u0924\u092C |\u0924\u0926\u093E |Akkor |\u00DE\u00E1 |Maka |Ansin |\u306A\u3089\u3070 |Njuk |Banjur |\u0CA8\u0C82\u0CA4\u0CB0 |vaj |\uADF8\uB7EC\uBA74 |DEN |Tad |Tada |dann |\u0422\u043E\u0433\u0430\u0448 |Togash |Kemudian |\u0422\u044D\u0433\u044D\u0445\u044D\u0434 |\u04AE\u04AF\u043D\u0438\u0439 \u0434\u0430\u0440\u0430\u0430 |Tha |\u00DEa |\u00D0a |Tha the |\u00DEa \u00FEe |\u00D0a \u00F0e |\u0A24\u0A26 |\u0622\u0646\u06AF\u0627\u0647 |Let go and haul |Wtedy |Ent\u00E3o |Entao |Atunci |\u0417\u0430\u0442\u0435\u043C |\u0422\u043E\u0433\u0434\u0430 |Dun |Den youse gotta |\u041E\u043D\u0434\u0430 |Tak |Potom |Nato |Potem |Takrat |Entonces |\u0B85\u0BAA\u0BCD\u0BAA\u0BC6\u0BBE\u0BB4\u0BC1\u0BA4\u0BC1 |\u041D\u04D9\u0442\u0438\u0497\u04D9\u0434\u04D9 |\u0C05\u0C2A\u0C4D\u0C2A\u0C41\u0C21\u0C41 |\u0E14\u0E31\u0E07\u0E19\u0E31\u0E49\u0E19 |O zaman |\u0422\u043E\u0434\u0456 |\u067E\u06BE\u0631 |\u062A\u0628 |\u0423\u043D\u0434\u0430 |Th\u00EC |Yna |Wanneer |\u0645\u062A\u0649 |\u0639\u0646\u062F\u0645\u0627 |Cuan |\u0535\u0569\u0565 |\u0535\u0580\u0562 |Cuando |It's just unbelievable |\u018Fg\u0259r |N\u0259 vaxt ki |Kada |\u041A\u043E\u0433\u0430\u0442\u043E |Quan |\u5F53 |\u7576 |L\u00E8 |Le |Kad |Kdy\u017E |N\u00E5r |Als |\uD83C\uDFAC |When |Se |Kui |Kun |Quand |Lorsque |Lorsqu' |Cando |\u10E0\u10DD\u10D3\u10D4\u10E1\u10D0\u10EA |Wenn |\u038C\u03C4\u03B1\u03BD |\u0A95\u0ACD\u0AAF\u0ABE\u0AB0\u0AC7 |\u05DB\u05D0\u05E9\u05E8 |\u091C\u092C |\u0915\u0926\u093E |Majd |Ha |Amikor |\u00DEegar |Ketika |Nuair a |Nuair nach |Nuair ba |Nuair n\u00E1r |Quando |\u3082\u3057 |Manawa |Menawa |\u0CB8\u0CCD\u0CA5\u0CBF\u0CA4\u0CBF\u0CAF\u0CA8\u0CCD\u0CA8\u0CC1 |qaSDI' |\uB9CC\uC77C |\uB9CC\uC57D |WEN |Ja |Kai |wann |\u041A\u043E\u0433\u0430 |Koga |Apabila |\u0425\u044D\u0440\u044D\u0432 |Tha |\u00DEa |\u00D0a |\u0A1C\u0A26\u0A4B\u0A02 |\u0647\u0646\u06AF\u0627\u0645\u06CC |Blimey! |Je\u017Celi |Je\u015Bli |Gdy |Kiedy |Cand |C\u00E2nd |\u041A\u043E\u0433\u0434\u0430 |\u0415\u0441\u043B\u0438 |Wun |Youse know like when |\u041A\u0430\u0434\u0430 |\u041A\u0430\u0434 |Ke\u010F |Ak |Ko |Ce |\u010Ce |Kadar |N\u00E4r |\u0B8E\u0BAA\u0BCD\u0BAA\u0BC7\u0BBE\u0BA4\u0BC1 |\u04D8\u0433\u04D9\u0440 |\u0C08 \u0C2A\u0C30\u0C3F\u0C38\u0C4D\u0C25\u0C3F\u0C24\u0C3F\u0C32\u0C4B |\u0E40\u0E21\u0E37\u0E48\u0E2D |E\u011Fer ki |\u042F\u043A\u0449\u043E |\u041A\u043E\u043B\u0438 |\u062C\u0628 |\u0410\u0433\u0430\u0440 |Khi |Pryd |Gegewe |\u0628\u0641\u0631\u0636 |Dau |Dada |Daus |Dadas |\u0534\u056B\u0581\u0578\u0582\u0584 |D\u00E1u |Daos |Daes |Y'know |Tutaq ki |Verilir |Dato |\u0414\u0430\u0434\u0435\u043D\u043E |Donat |Donada |At\u00E8s |Atesa |\u5047\u5982 |\u5047\u8BBE |\u5047\u5B9A |\u5047\u8A2D |Sipoze |Sipoze ke |Sipoze Ke |Zadan |Zadani |Zadano |Pokud |Za p\u0159edpokladu |Givet |Gegeven |Stel |\uD83D\uDE10 |Given |Donita\u0135o |Komence |Eeldades |Oletetaan |Soit |Etant donn\u00E9 que |Etant donn\u00E9 qu' |Etant donn\u00E9 |Etant donn\u00E9e |Etant donn\u00E9s |Etant donn\u00E9es |\u00C9tant donn\u00E9 que |\u00C9tant donn\u00E9 qu' |\u00C9tant donn\u00E9 |\u00C9tant donn\u00E9e |\u00C9tant donn\u00E9s |\u00C9tant donn\u00E9es |Dado |Dados |\u10DB\u10DD\u10EA\u10D4\u10DB\u10E3\u10DA\u10D8 |Angenommen |Gegeben sei |Gegeben seien |\u0394\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03BF\u03C5 |\u0A86\u0AAA\u0AC7\u0AB2 \u0A9B\u0AC7 |\u05D1\u05D4\u05D9\u05E0\u05EA\u05DF |\u0905\u0917\u0930 |\u092F\u0926\u093F |\u091A\u0942\u0902\u0915\u093F |Amennyiben |Adott |Ef |Dengan |Cuir i gc\u00E1s go |Cuir i gc\u00E1s nach |Cuir i gc\u00E1s gur |Cuir i gc\u00E1s n\u00E1r |Data |Dati |Date |\u524D\u63D0 |Nalika |Nalikaning |\u0CA8\u0CBF\u0CD5\u0CA1\u0CBF\u0CA6 |ghu' noblu' |DaH ghu' bejlu' |\uC870\uAC74 |\uBA3C\uC800 |I CAN HAZ |Kad |Duota |ugeholl |\u0414\u0430\u0434\u0435\u043D\u0430 |Dadeno |Dadena |Diberi |Bagi |\u04E8\u0433\u04E9\u0433\u0434\u0441\u04E9\u043D \u043D\u044C |\u0410\u043D\u0445 |Gitt |Thurh |\u00DEurh |\u00D0urh |\u0A1C\u0A47\u0A15\u0A30 |\u0A1C\u0A3F\u0A35\u0A47\u0A02 \u0A15\u0A3F |\u0628\u0627 \u0641\u0631\u0636 |Gangway! |Zak\u0142adaj\u0105c |Maj\u0105c |Zak\u0142adaj\u0105c, \u017Ce |Date fiind |Dat fiind |Dat\u0103 fiind |Dati fiind |Da\u021Bi fiind |Da\u0163i fiind |\u0414\u043E\u043F\u0443\u0441\u0442\u0438\u043C |\u0414\u0430\u043D\u043E |\u041F\u0443\u0441\u0442\u044C |Givun |Youse know when youse got |\u0417\u0430 \u0434\u0430\u0442\u043E |\u0417\u0430 \u0434\u0430\u0442\u0435 |\u0417\u0430 \u0434\u0430\u0442\u0438 |Za dato |Za date |Za dati |Pokia\u013E |Za predpokladu |Dano |Podano |Zaradi |Privzeto |\u0B95\u0BC6\u0BBE\u0B9F\u0BC1\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F |\u04D8\u0439\u0442\u0438\u043A |\u0C1A\u0C46\u0C2A\u0C4D\u0C2A\u0C2C\u0C21\u0C3F\u0C28\u0C26\u0C3F |\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E43\u0E2B\u0E49 |Diyelim ki |\u041F\u0440\u0438\u043F\u0443\u0441\u0442\u0438\u043C\u043E |\u041F\u0440\u0438\u043F\u0443\u0441\u0442\u0438\u043C\u043E, \u0449\u043E |\u041D\u0435\u0445\u0430\u0439 |\u0627\u06AF\u0631 |\u0628\u0627\u0644\u0641\u0631\u0636 |\u0641\u0631\u0636 \u06A9\u06CC\u0627 |\u0410\u0433\u0430\u0440 |Bi\u1EBFt |Cho |Anrhegedig a |\\\\\\\\* )\\\"},\\\"strings_double_quote\\\":{\\\"begin\\\":\\\"(?<![a-zA-Z0-9'])\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"(?![a-zA-Z0-9'])\\\",\\\"name\\\":\\\"string.quoted.double\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.untitled\\\"}]},\\\"strings_single_quote\\\":{\\\"begin\\\":\\\"(?<![a-zA-Z0-9\\\\\\\"])'\\\",\\\"end\\\":\\\"'(?![a-zA-Z0-9\\\\\\\"])\\\",\\\"name\\\":\\\"string.quoted.single\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape\\\"}]},\\\"strings_triple_quote\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\".*\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.single\\\"},\\\"table\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\|\\\",\\\"end\\\":\\\"\\\\\\\\|\\\\\\\\s*$\\\",\\\"name\\\":\\\"keyword.control.cucumber.table\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\w\\\",\\\"name\\\":\\\"source\\\"}]},\\\"tags\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.class.tsx\\\"}},\\\"match\\\":\\\"(@[^@\\\\\\\\r\\\\\\\\n\\\\\\\\t ]+)\\\"}},\\\"scopeName\\\":\\\"text.gherkin.feature\\\"}\"))\n\nexport default [\nlang\n]\n", "import diff from './diff.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Git Commit Message\\\",\\\"name\\\":\\\"git-commit\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=^diff\\\\\\\\ \\\\\\\\-\\\\\\\\-git)\\\",\\\"comment\\\":\\\"diff presented at the end of the commit message when using commit -v.\\\",\\\"contentName\\\":\\\"source.diff\\\",\\\"end\\\":\\\"\\\\\\\\z\\\",\\\"name\\\":\\\"meta.embedded.diff.git-commit\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.diff\\\"}]},{\\\"begin\\\":\\\"^(?!#)\\\",\\\"comment\\\":\\\"User supplied message\\\",\\\"end\\\":\\\"^(?=#)\\\",\\\"name\\\":\\\"meta.scope.message.git-commit\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.deprecated.line-too-long.git-commit\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.line-too-long.git-commit\\\"}},\\\"comment\\\":\\\"Mark > 50 lines as deprecated, > 72 as illegal\\\",\\\"match\\\":\\\"\\\\\\\\G.{0,50}(.{0,22}(.*))$\\\",\\\"name\\\":\\\"meta.scope.subject.git-commit\\\"}]},{\\\"begin\\\":\\\"^(?=#)\\\",\\\"comment\\\":\\\"Git supplied metadata in a number of lines starting with #\\\",\\\"contentName\\\":\\\"comment.line.number-sign.git-commit\\\",\\\"end\\\":\\\"^(?!#)\\\",\\\"name\\\":\\\"meta.scope.metadata.git-commit\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.changed.git-commit\\\"}},\\\"match\\\":\\\"^#\\\\\\\\t((modified|renamed):.*)$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.inserted.git-commit\\\"}},\\\"match\\\":\\\"^#\\\\\\\\t(new file:.*)$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.deleted.git-commit\\\"}},\\\"match\\\":\\\"^#\\\\\\\\t(deleted.*)$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.file-type.git-commit\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.filename.git-commit\\\"}},\\\"comment\\\":\\\"Fallback for non-English git commit template\\\",\\\"match\\\":\\\"^#\\\\\\\\t([^:]+): *(.*)$\\\"}]}],\\\"scopeName\\\":\\\"text.git-commit\\\",\\\"embeddedLangs\\\":[\\\"diff\\\"]}\"))\n\nexport default [\n...diff,\nlang\n]\n", "import shellscript from './shellscript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Git Rebase Message\\\",\\\"name\\\":\\\"git-rebase\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.git-rebase\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(#).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.git-rebase\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.git-rebase\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.sha.git-rebase\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.commit-message.git-rebase\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(pick|p|reword|r|edit|e|squash|s|fixup|f|drop|d)\\\\\\\\s+([0-9a-f]+)\\\\\\\\s+(.*)$\\\",\\\"name\\\":\\\"meta.commit-command.git-rebase\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.git-rebase\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.shell\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\s*(exec|x)\\\\\\\\s+(.*)$\\\",\\\"name\\\":\\\"meta.commit-command.git-rebase\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.git-rebase\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(break|b)\\\\\\\\s*$\\\",\\\"name\\\":\\\"meta.commit-command.git-rebase\\\"}],\\\"scopeName\\\":\\\"text.git-rebase\\\",\\\"embeddedLangs\\\":[\\\"shellscript\\\"]}\"))\n\nexport default [\n...shellscript,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Gleam\\\",\\\"name\\\":\\\"gleam\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#entity\\\"},{\\\"include\\\":\\\"#discards\\\"}],\\\"repository\\\":{\\\"binary_number\\\":{\\\"match\\\":\\\"\\\\\\\\b0[bB]0*1[01_]*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.binary.gleam\\\",\\\"patterns\\\":[]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"//.*\\\",\\\"name\\\":\\\"comment.line.gleam\\\"}]},\\\"constant\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#binary_number\\\"},{\\\"include\\\":\\\"#octal_number\\\"},{\\\"include\\\":\\\"#hexadecimal_number\\\"},{\\\"include\\\":\\\"#decimal_number\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"match\\\":\\\"[[:upper:]][[:alnum:]]*\\\",\\\"name\\\":\\\"entity.name.type.gleam\\\"}]},\\\"decimal_number\\\":{\\\"match\\\":\\\"\\\\\\\\b(0*[1-9][0-9_]*|0)(\\\\\\\\.(0*[1-9][0-9_]*|0)?(e-?0*[1-9][0-9]*)?)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.gleam\\\",\\\"patterns\\\":[]},\\\"discards\\\":{\\\"match\\\":\\\"\\\\\\\\b_(?:[[:word:]]+)?\\\\\\\\b\\\",\\\"name\\\":\\\"comment.unused.gleam\\\"},\\\"entity\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([[:lower:]][[:word:]]*)\\\\\\\\b[[:space:]]*\\\\\\\\(\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.gleam\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b([[:lower:]][[:word:]]*):\\\\\\\\s\\\",\\\"name\\\":\\\"variable.parameter.gleam\\\"},{\\\"match\\\":\\\"\\\\\\\\b([[:lower:]][[:word:]]*):\\\",\\\"name\\\":\\\"entity.name.namespace.gleam\\\"}]},\\\"hexadecimal_number\\\":{\\\"match\\\":\\\"\\\\\\\\b0[xX]0*[1-9a-zA-Z][0-9a-zA-Z]*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hexadecimal.gleam\\\",\\\"patterns\\\":[]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(as|use|case|if|fn|import|let|assert|pub|type|opaque|const|todo|panic|else|try)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.gleam\\\"},{\\\"match\\\":\\\"(<\\\\\\\\-|\\\\\\\\->)\\\",\\\"name\\\":\\\"keyword.operator.arrow.gleam\\\"},{\\\"match\\\":\\\"\\\\\\\\|>\\\",\\\"name\\\":\\\"keyword.operator.pipe.gleam\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.splat.gleam\\\"},{\\\"match\\\":\\\"(==|!=)\\\",\\\"name\\\":\\\"keyword.operator.comparison.gleam\\\"},{\\\"match\\\":\\\"(<=\\\\\\\\.|>=\\\\\\\\.|<\\\\\\\\.|>\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.operator.comparison.float.gleam\\\"},{\\\"match\\\":\\\"(<=|>=|<|>)\\\",\\\"name\\\":\\\"keyword.operator.comparison.int.gleam\\\"},{\\\"match\\\":\\\"(&&|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.logical.gleam\\\"},{\\\"match\\\":\\\"<>\\\",\\\"name\\\":\\\"keyword.operator.string.gleam\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.other.gleam\\\"},{\\\"match\\\":\\\"(\\\\\\\\+\\\\\\\\.|\\\\\\\\-\\\\\\\\.|/\\\\\\\\.|\\\\\\\\*\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.float.gleam\\\"},{\\\"match\\\":\\\"(\\\\\\\\+|\\\\\\\\-|/|\\\\\\\\*|%)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.int.gleam\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.gleam\\\"}]},\\\"octal_number\\\":{\\\"match\\\":\\\"\\\\\\\\b0[oO]0*[1-7][0-7]*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.octal.gleam\\\",\\\"patterns\\\":[]},\\\"strings\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.gleam\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.gleam\\\"}]}},\\\"scopeName\\\":\\\"source.gleam\\\"}\"))\n\nexport default [\nlang\n]\n", "import javascript from './javascript.mjs'\nimport typescript from './typescript.mjs'\nimport css from './css.mjs'\nimport html from './html.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Glimmer JS\\\",\\\"injections\\\":{\\\"L:source.gjs -comment -(string -meta.embedded)\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}},\\\"name\\\":\\\"glimmer-js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"},{\\\"include\\\":\\\"source.js\\\"}],\\\"repository\\\":{\\\"as-keyword\\\":{\\\"match\\\":\\\"\\\\\\\\s\\\\\\\\b(as)\\\\\\\\b(?=\\\\\\\\s\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.control\\\",\\\"patterns\\\":[]},\\\"as-params\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\|)(\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.symbol.begin.ember-handlebars\\\"}},\\\"end\\\":\\\"(\\\\\\\\|)(?!\\\\\\\\|)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.symbol.end.ember-handlebars\\\"}},\\\"name\\\":\\\"keyword.block-params.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"}]},\\\"attention\\\":{\\\"match\\\":\\\"@?(TODO|FIXME|CHANGED|XXX|IDEA|HACK|NOTE|REVIEW|NB|BUG|QUESTION|TEMP)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.${1:/downcase}\\\",\\\"patterns\\\":[]},\\\"boolean\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"string.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.regexp\\\"}},\\\"match\\\":\\\"true|false|undefined|null\\\",\\\"patterns\\\":[]},\\\"component-tag\\\":{\\\"begin\\\":\\\"(<\\\\\\\\/?)(@|this.)?([a-zA-Z0-9-_\\\\\\\\$:\\\\\\\\.]+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(@|this)\\\",\\\"name\\\":\\\"variable.language\\\"},{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-component-path\\\"},{\\\"match\\\":\\\"(@|:|\\\\\\\\$)\\\",\\\"name\\\":\\\"markup.bold\\\"}]}},\\\"end\\\":\\\"(\\\\\\\\/?)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"name\\\":\\\"meta.tag.any.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-like-content\\\"}]},\\\"digit\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric\\\"},\\\"1\\\":{\\\"name\\\":\\\"constant.numeric\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric\\\"}},\\\"match\\\":\\\"\\\\\\\\d*(\\\\\\\\.)?\\\\\\\\d+\\\",\\\"patterns\\\":[]},\\\"entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html.ember-handlebars\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html.ember-handlebars\\\"}},\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.html.ember-handlebars\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"invalid.illegal.bad-ampersand.html.ember-handlebars\\\"}]},\\\"glimmer-argument\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.ember-handlebars.argument\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(@)\\\",\\\"name\\\":\\\"markup.italic\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.ember-handlebars\\\"}},\\\"match\\\":\\\"\\\\\\\\s(@[a-zA-Z0-9:_.-]+)(=)?\\\"},\\\"glimmer-as-stuff\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#as-keyword\\\"},{\\\"include\\\":\\\"#as-params\\\"}]},\\\"glimmer-block\\\":{\\\"begin\\\":\\\"({{~?)(#|/)(([@\\\\\\\\$a-zA-Z0-9_/.-]+))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-component-path\\\"},{\\\"match\\\":\\\"(\\\\\\\\/)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"},{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]}},\\\"end\\\":\\\"(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-as-stuff\\\"},{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]},\\\"glimmer-bools\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator\\\"}},\\\"match\\\":\\\"({{~?)(true|false|null|undefined|\\\\\\\\d*(\\\\\\\\.)?\\\\\\\\d+)(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\"},\\\"glimmer-comment-block\\\":{\\\"begin\\\":\\\"{{!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.comment.glimmer\\\"}},\\\"end\\\":\\\"--}}\\\",\\\"name\\\":\\\"comment.block.glimmer\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#attention\\\"}]},\\\"glimmer-comment-inline\\\":{\\\"begin\\\":\\\"{{!\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.comment.glimmer\\\"}},\\\"end\\\":\\\"}}\\\",\\\"name\\\":\\\"comment.inline.glimmer\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#attention\\\"}]},\\\"glimmer-component-path\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"match\\\":\\\"(::|_|\\\\\\\\$|\\\\\\\\.)\\\"},\\\"glimmer-control-expression\\\":{\\\"begin\\\":\\\"({{~?)(([-a-zA-Z_0-9/]+)\\\\\\\\s)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]},\\\"glimmer-else-block\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-subexp\\\"},{\\\"include\\\":\\\"#string-single-quoted-handlebars\\\"},{\\\"include\\\":\\\"#string-double-quoted-handlebars\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#digit\\\"},{\\\"include\\\":\\\"#param\\\"},{\\\"include\\\":\\\"#glimmer-parameter-name\\\"},{\\\"include\\\":\\\"#glimmer-parameter-value\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"match\\\":\\\"({{~?)(else\\\\\\\\s[a-z]+\\\\\\\\s|else)([()@a-zA-Z0-9\\\\\\\\.\\\\\\\\s\\\\\\\\b]+)?(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\"},\\\"glimmer-expression\\\":{\\\"begin\\\":\\\"({{~?)(([()\\\\\\\\s@a-zA-Z0-9_.-]+))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[(]+\\\",\\\"name\\\":\\\"string.regexp\\\"},{\\\"match\\\":\\\"[)]+\\\",\\\"name\\\":\\\"string.regexp\\\"},{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"},{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]}},\\\"end\\\":\\\"(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]},\\\"glimmer-expression-property\\\":{\\\"begin\\\":\\\"({{~?)((@|this.)([a-zA-Z0-9_.-]+))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(@|this)\\\",\\\"name\\\":\\\"variable.language\\\"},{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]}},\\\"end\\\":\\\"(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]},\\\"glimmer-parameter-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.name.ember-handlebars\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.expression.ember-handlebars\\\"}},\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z0-9_-]+)(\\\\\\\\s?=)\\\",\\\"patterns\\\":[]},\\\"glimmer-parameter-value\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z0-9:_.-]+)\\\\\\\\b(?!=)\\\",\\\"patterns\\\":[]},\\\"glimmer-special-block\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator\\\"}},\\\"match\\\":\\\"({{~?)(yield|outlet)(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\"},\\\"glimmer-subexp\\\":{\\\"begin\\\":\\\"(\\\\\\\\()([@a-zA-Z0-9.-]+)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"name\\\":\\\"entity.subexpression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]},\\\"glimmer-supexp-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-subexp\\\"},{\\\"include\\\":\\\"#string-single-quoted-handlebars\\\"},{\\\"include\\\":\\\"#string-double-quoted-handlebars\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#digit\\\"},{\\\"include\\\":\\\"#param\\\"},{\\\"include\\\":\\\"#glimmer-parameter-name\\\"},{\\\"include\\\":\\\"#glimmer-parameter-value\\\"}]},\\\"glimmer-unescaped-expression\\\":{\\\"begin\\\":\\\"{{{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator\\\"}},\\\"end\\\":\\\"}}}\\\",\\\"name\\\":\\\"entity.unescaped.expression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-single-quoted-handlebars\\\"},{\\\"include\\\":\\\"#string-double-quoted-handlebars\\\"},{\\\"include\\\":\\\"#glimmer-subexp\\\"},{\\\"include\\\":\\\"#param\\\"}]},\\\"html-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.ember-handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\.\\\\\\\\.attributes)\\\",\\\"name\\\":\\\"markup.bold\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.ember-handlebars\\\"}},\\\"match\\\":\\\"\\\\\\\\s([a-zA-Z0-9:_.-]+)(=)?\\\"},\\\"html-comment\\\":{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html.ember-handlebars\\\"}},\\\"end\\\":\\\"--\\\\\\\\s*>\\\",\\\"name\\\":\\\"comment.block.html.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attention\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.html.ember-handlebars\\\"}]},\\\"html-tag\\\":{\\\"begin\\\":\\\"(<\\\\\\\\/?)([a-z0-9-]+)(?!\\\\\\\\.|:)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html.ember-handlebars\\\"}},\\\"end\\\":\\\"(\\\\\\\\/?)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"name\\\":\\\"meta.tag.any.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-like-content\\\"}]},\\\"main\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(<)(template)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\"(</)(template)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"name\\\":\\\"meta.js.embeddedTemplateWithoutArgs\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#style\\\"},{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#glimmer-else-block\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-special-block\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#html-tag\\\"},{\\\"include\\\":\\\"#component-tag\\\"},{\\\"include\\\":\\\"#html-comment\\\"},{\\\"include\\\":\\\"#entities\\\"}]},{\\\"begin\\\":\\\"(<)(template)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"}},\\\"end\\\":\\\"(</)(template)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"name\\\":\\\"meta.js.embeddedTemplateWithArgs\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\<template)\\\",\\\"end\\\":\\\"(?=\\\\\\\\>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-like-content\\\"}]},{\\\"begin\\\":\\\"(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js\\\"}},\\\"contentName\\\":\\\"meta.html.embedded.block\\\",\\\"end\\\":\\\"(?=</template>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#style\\\"},{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#glimmer-else-block\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-special-block\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#html-tag\\\"},{\\\"include\\\":\\\"#component-tag\\\"},{\\\"include\\\":\\\"#html-comment\\\"},{\\\"include\\\":\\\"#entities\\\"}]}]},{\\\"begin\\\":\\\"(\\\\\\\\b(?:\\\\\\\\w+\\\\\\\\.)*(?:hbs|html)\\\\\\\\s*)(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.begin.js\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.html\\\",\\\"end\\\":\\\"(`)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.js\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.end.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"#style\\\"},{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#glimmer-else-block\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-special-block\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#html-tag\\\"},{\\\"include\\\":\\\"#component-tag\\\"},{\\\"include\\\":\\\"#html-comment\\\"},{\\\"include\\\":\\\"#entities\\\"}]},{\\\"begin\\\":\\\"((createTemplate|hbs|html))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.function-call.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.html\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"((`|'|\\\\\\\"))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.begin.ts\\\"}},\\\"end\\\":\\\"((`|'|\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#style\\\"},{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#glimmer-else-block\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-special-block\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#html-tag\\\"},{\\\"include\\\":\\\"#component-tag\\\"},{\\\"include\\\":\\\"#html-comment\\\"},{\\\"include\\\":\\\"#entities\\\"}]}]},{\\\"begin\\\":\\\"((precompileTemplate)\\\\\\\\s*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.function-call.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"((`|'|\\\\\\\"))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.begin.ts\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.html\\\",\\\"end\\\":\\\"((`|'|\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#style\\\"},{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#glimmer-else-block\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-special-block\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#html-tag\\\"},{\\\"include\\\":\\\"#component-tag\\\"},{\\\"include\\\":\\\"#html-comment\\\"},{\\\"include\\\":\\\"#entities\\\"}]},{\\\"include\\\":\\\"source.ts#object-literal\\\"},{\\\"include\\\":\\\"source.ts\\\"}]}]},\\\"param\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(@|this)\\\",\\\"name\\\":\\\"variable.language\\\"},{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]}},\\\"match\\\":\\\"(@|this.)([a-zA-Z0-9_.-]+)\\\",\\\"patterns\\\":[]},\\\"script\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=<(?i:script)\\\\\\\\b(?!-))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.html\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)([ \\\\\\\\t]*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.html\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)((?i:script))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(/)((?i:script))(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"((<))(?=/(?i:script))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"source.js-ignored-vscode\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=</(?i:script))\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.js\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"(?=</script)|\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"\\\\\\\\*/|(?=</script)\\\",\\\"name\\\":\\\"comment.block.js\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"(?ix:\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(?=\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttype\\\\\\\\s*=\\\\\\\\s*\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t('|\\\\\\\"|)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttext/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tx-handlebars\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | (x-(handlebars-)?|ng-)?template\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | html\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t[\\\\\\\\s\\\\\\\"'>]\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\",\\\"end\\\":\\\"((<))(?=/(?i:script))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"text.html.basic\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?!\\\\\\\\G)\\\",\\\"end\\\":\\\"(?=</(?i:script))\\\",\\\"name\\\":\\\"text.html.basic\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]}]},{\\\"begin\\\":\\\"(?=(?i:type))\\\",\\\"end\\\":\\\"(<)(?=/(?i:script))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"}}},{\\\"include\\\":\\\"#string-double-quoted-html\\\"},{\\\"include\\\":\\\"#string-single-quoted-html\\\"},{\\\"include\\\":\\\"#glimmer-argument\\\"},{\\\"include\\\":\\\"#html-attribute\\\"}]}]}]},\\\"string-double-quoted-handlebars\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ember-handlebars\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ember-handlebars\\\"}},\\\"name\\\":\\\"string.quoted.double.ember-handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.ember-handlebars\\\"}]},\\\"string-double-quoted-html\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ember-handlebars\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ember-handlebars\\\"}},\\\"name\\\":\\\"string.quoted.double.html.ember-handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.ember-handlebars\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"}]},\\\"string-single-quoted-handlebars\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ember-handlebars\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ember-handlebars\\\"}},\\\"name\\\":\\\"string.quoted.single.ember-handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\'\\\",\\\"name\\\":\\\"constant.character.escape.ember-handlebars\\\"}]},\\\"string-single-quoted-html\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ember-handlebars\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ember-handlebars\\\"}},\\\"name\\\":\\\"string.quoted.single.html.ember-handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\'\\\",\\\"name\\\":\\\"constant.character.escape.ember-handlebars\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"}]},\\\"style\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=<(?i:style)\\\\\\\\b(?!-))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.html\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)([ \\\\\\\\t]*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.html\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(<)(style)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.style.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(?i)((<)/)(style)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.style.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"source.css-ignored-vscode\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"name\\\":\\\"meta.tag.metadata.style.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-argument\\\"},{\\\"include\\\":\\\"#html-attribute\\\"}]},{\\\"begin\\\":\\\"(?!\\\\\\\\G)\\\",\\\"end\\\":\\\"(?=</(?i:style))\\\",\\\"name\\\":\\\"source.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]}]},\\\"tag-like-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#digit\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#string-double-quoted-html\\\"},{\\\"include\\\":\\\"#string-single-quoted-html\\\"},{\\\"include\\\":\\\"#glimmer-as-stuff\\\"},{\\\"include\\\":\\\"#glimmer-argument\\\"},{\\\"include\\\":\\\"#html-attribute\\\"}]},\\\"variable\\\":{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z0-9-_]+)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[]}},\\\"scopeName\\\":\\\"source.gjs\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\",\\\"typescript\\\",\\\"css\\\",\\\"html\\\"],\\\"aliases\\\":[\\\"gjs\\\"]}\"))\n\nexport default [\n...javascript,\n...typescript,\n...css,\n...html,\nlang\n]\n", "import typescript from './typescript.mjs'\nimport css from './css.mjs'\nimport javascript from './javascript.mjs'\nimport html from './html.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Glimmer TS\\\",\\\"injections\\\":{\\\"L:source.gts -comment -(string -meta.embedded)\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}]}},\\\"name\\\":\\\"glimmer-ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"},{\\\"include\\\":\\\"source.ts\\\"}],\\\"repository\\\":{\\\"as-keyword\\\":{\\\"match\\\":\\\"\\\\\\\\s\\\\\\\\b(as)\\\\\\\\b(?=\\\\\\\\s\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.control\\\",\\\"patterns\\\":[]},\\\"as-params\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\|)(\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.symbol.begin.ember-handlebars\\\"}},\\\"end\\\":\\\"(\\\\\\\\|)(?!\\\\\\\\|)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.symbol.end.ember-handlebars\\\"}},\\\"name\\\":\\\"keyword.block-params.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"}]},\\\"attention\\\":{\\\"match\\\":\\\"@?(TODO|FIXME|CHANGED|XXX|IDEA|HACK|NOTE|REVIEW|NB|BUG|QUESTION|TEMP)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.${1:/downcase}\\\",\\\"patterns\\\":[]},\\\"boolean\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"string.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.regexp\\\"}},\\\"match\\\":\\\"true|false|undefined|null\\\",\\\"patterns\\\":[]},\\\"component-tag\\\":{\\\"begin\\\":\\\"(<\\\\\\\\/?)(@|this.)?([a-zA-Z0-9-_\\\\\\\\$:\\\\\\\\.]+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(@|this)\\\",\\\"name\\\":\\\"variable.language\\\"},{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-component-path\\\"},{\\\"match\\\":\\\"(@|:|\\\\\\\\$)\\\",\\\"name\\\":\\\"markup.bold\\\"}]}},\\\"end\\\":\\\"(\\\\\\\\/?)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"name\\\":\\\"meta.tag.any.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-like-content\\\"}]},\\\"digit\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric\\\"},\\\"1\\\":{\\\"name\\\":\\\"constant.numeric\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric\\\"}},\\\"match\\\":\\\"\\\\\\\\d*(\\\\\\\\.)?\\\\\\\\d+\\\",\\\"patterns\\\":[]},\\\"entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html.ember-handlebars\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html.ember-handlebars\\\"}},\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.html.ember-handlebars\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"invalid.illegal.bad-ampersand.html.ember-handlebars\\\"}]},\\\"glimmer-argument\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.ember-handlebars.argument\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(@)\\\",\\\"name\\\":\\\"markup.italic\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.ember-handlebars\\\"}},\\\"match\\\":\\\"\\\\\\\\s(@[a-zA-Z0-9:_.-]+)(=)?\\\"},\\\"glimmer-as-stuff\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#as-keyword\\\"},{\\\"include\\\":\\\"#as-params\\\"}]},\\\"glimmer-block\\\":{\\\"begin\\\":\\\"({{~?)(#|/)(([@\\\\\\\\$a-zA-Z0-9_/.-]+))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-component-path\\\"},{\\\"match\\\":\\\"(\\\\\\\\/)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"},{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]}},\\\"end\\\":\\\"(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-as-stuff\\\"},{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]},\\\"glimmer-bools\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator\\\"}},\\\"match\\\":\\\"({{~?)(true|false|null|undefined|\\\\\\\\d*(\\\\\\\\.)?\\\\\\\\d+)(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\"},\\\"glimmer-comment-block\\\":{\\\"begin\\\":\\\"{{!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.comment.glimmer\\\"}},\\\"end\\\":\\\"--}}\\\",\\\"name\\\":\\\"comment.block.glimmer\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#attention\\\"}]},\\\"glimmer-comment-inline\\\":{\\\"begin\\\":\\\"{{!\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.comment.glimmer\\\"}},\\\"end\\\":\\\"}}\\\",\\\"name\\\":\\\"comment.inline.glimmer\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#attention\\\"}]},\\\"glimmer-component-path\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"match\\\":\\\"(::|_|\\\\\\\\$|\\\\\\\\.)\\\"},\\\"glimmer-control-expression\\\":{\\\"begin\\\":\\\"({{~?)(([-a-zA-Z_0-9/]+)\\\\\\\\s)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]},\\\"glimmer-else-block\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-subexp\\\"},{\\\"include\\\":\\\"#string-single-quoted-handlebars\\\"},{\\\"include\\\":\\\"#string-double-quoted-handlebars\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#digit\\\"},{\\\"include\\\":\\\"#param\\\"},{\\\"include\\\":\\\"#glimmer-parameter-name\\\"},{\\\"include\\\":\\\"#glimmer-parameter-value\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"match\\\":\\\"({{~?)(else\\\\\\\\s[a-z]+\\\\\\\\s|else)([()@a-zA-Z0-9\\\\\\\\.\\\\\\\\s\\\\\\\\b]+)?(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\"},\\\"glimmer-expression\\\":{\\\"begin\\\":\\\"({{~?)(([()\\\\\\\\s@a-zA-Z0-9_.-]+))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[(]+\\\",\\\"name\\\":\\\"string.regexp\\\"},{\\\"match\\\":\\\"[)]+\\\",\\\"name\\\":\\\"string.regexp\\\"},{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"},{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]}},\\\"end\\\":\\\"(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]},\\\"glimmer-expression-property\\\":{\\\"begin\\\":\\\"({{~?)((@|this.)([a-zA-Z0-9_.-]+))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(@|this)\\\",\\\"name\\\":\\\"variable.language\\\"},{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]}},\\\"end\\\":\\\"(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]},\\\"glimmer-parameter-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.name.ember-handlebars\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.expression.ember-handlebars\\\"}},\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z0-9_-]+)(\\\\\\\\s?=)\\\",\\\"patterns\\\":[]},\\\"glimmer-parameter-value\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z0-9:_.-]+)\\\\\\\\b(?!=)\\\",\\\"patterns\\\":[]},\\\"glimmer-special-block\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator\\\"}},\\\"match\\\":\\\"({{~?)(yield|outlet)(~?}})\\\",\\\"name\\\":\\\"entity.expression.ember-handlebars\\\"},\\\"glimmer-subexp\\\":{\\\"begin\\\":\\\"(\\\\\\\\()([@a-zA-Z0-9.-]+)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"name\\\":\\\"entity.subexpression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-supexp-content\\\"}]},\\\"glimmer-supexp-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-subexp\\\"},{\\\"include\\\":\\\"#string-single-quoted-handlebars\\\"},{\\\"include\\\":\\\"#string-double-quoted-handlebars\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#digit\\\"},{\\\"include\\\":\\\"#param\\\"},{\\\"include\\\":\\\"#glimmer-parameter-name\\\"},{\\\"include\\\":\\\"#glimmer-parameter-value\\\"}]},\\\"glimmer-unescaped-expression\\\":{\\\"begin\\\":\\\"{{{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator\\\"}},\\\"end\\\":\\\"}}}\\\",\\\"name\\\":\\\"entity.unescaped.expression.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-single-quoted-handlebars\\\"},{\\\"include\\\":\\\"#string-double-quoted-handlebars\\\"},{\\\"include\\\":\\\"#glimmer-subexp\\\"},{\\\"include\\\":\\\"#param\\\"}]},\\\"html-attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.ember-handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\.\\\\\\\\.attributes)\\\",\\\"name\\\":\\\"markup.bold\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.ember-handlebars\\\"}},\\\"match\\\":\\\"\\\\\\\\s([a-zA-Z0-9:_.-]+)(=)?\\\"},\\\"html-comment\\\":{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html.ember-handlebars\\\"}},\\\"end\\\":\\\"--\\\\\\\\s*>\\\",\\\"name\\\":\\\"comment.block.html.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attention\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.html.ember-handlebars\\\"}]},\\\"html-tag\\\":{\\\"begin\\\":\\\"(<\\\\\\\\/?)([a-z0-9-]+)(?!\\\\\\\\.|:)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html.ember-handlebars\\\"}},\\\"end\\\":\\\"(\\\\\\\\/?)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"name\\\":\\\"meta.tag.any.ember-handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-like-content\\\"}]},\\\"main\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(<)(template)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\"(</)(template)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"name\\\":\\\"meta.js.embeddedTemplateWithoutArgs\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#style\\\"},{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#glimmer-else-block\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-special-block\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#html-tag\\\"},{\\\"include\\\":\\\"#component-tag\\\"},{\\\"include\\\":\\\"#html-comment\\\"},{\\\"include\\\":\\\"#entities\\\"}]},{\\\"begin\\\":\\\"(<)(template)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"}},\\\"end\\\":\\\"(</)(template)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"name\\\":\\\"meta.js.embeddedTemplateWithArgs\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\<template)\\\",\\\"end\\\":\\\"(?=\\\\\\\\>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-like-content\\\"}]},{\\\"begin\\\":\\\"(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.js\\\"}},\\\"contentName\\\":\\\"meta.html.embedded.block\\\",\\\"end\\\":\\\"(?=</template>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#style\\\"},{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#glimmer-else-block\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-special-block\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#html-tag\\\"},{\\\"include\\\":\\\"#component-tag\\\"},{\\\"include\\\":\\\"#html-comment\\\"},{\\\"include\\\":\\\"#entities\\\"}]}]},{\\\"begin\\\":\\\"(\\\\\\\\b(?:\\\\\\\\w+\\\\\\\\.)*(?:hbs|html)\\\\\\\\s*)(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.js\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.begin.js\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.html\\\",\\\"end\\\":\\\"(`)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.js\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.end.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"#style\\\"},{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#glimmer-else-block\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-special-block\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#html-tag\\\"},{\\\"include\\\":\\\"#component-tag\\\"},{\\\"include\\\":\\\"#html-comment\\\"},{\\\"include\\\":\\\"#entities\\\"}]},{\\\"begin\\\":\\\"((createTemplate|hbs|html))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.function-call.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.html\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"((`|'|\\\\\\\"))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.begin.ts\\\"}},\\\"end\\\":\\\"((`|'|\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#style\\\"},{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#glimmer-else-block\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-special-block\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#html-tag\\\"},{\\\"include\\\":\\\"#component-tag\\\"},{\\\"include\\\":\\\"#html-comment\\\"},{\\\"include\\\":\\\"#entities\\\"}]}]},{\\\"begin\\\":\\\"((precompileTemplate)\\\\\\\\s*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.function-call.ts\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.ts\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"((`|'|\\\\\\\"))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.begin.ts\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.html\\\",\\\"end\\\":\\\"((`|'|\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.template.ts\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.end.ts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#style\\\"},{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#glimmer-else-block\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-special-block\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#html-tag\\\"},{\\\"include\\\":\\\"#component-tag\\\"},{\\\"include\\\":\\\"#html-comment\\\"},{\\\"include\\\":\\\"#entities\\\"}]},{\\\"include\\\":\\\"source.ts#object-literal\\\"},{\\\"include\\\":\\\"source.ts\\\"}]}]},\\\"param\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(@|this)\\\",\\\"name\\\":\\\"variable.language\\\"},{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\.)+\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]}},\\\"match\\\":\\\"(@|this.)([a-zA-Z0-9_.-]+)\\\",\\\"patterns\\\":[]},\\\"script\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=<(?i:script)\\\\\\\\b(?!-))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.html\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)([ \\\\\\\\t]*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.html\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)((?i:script))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(/)((?i:script))(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"((<))(?=/(?i:script))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"source.js-ignored-vscode\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=</(?i:script))\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.js\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"(?=</script)|\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"\\\\\\\\*/|(?=</script)\\\",\\\"name\\\":\\\"comment.block.js\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"(?ix:\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(?=\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttype\\\\\\\\s*=\\\\\\\\s*\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t('|\\\\\\\"|)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ttext/\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t(\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tx-handlebars\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | (x-(handlebars-)?|ng-)?template\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t | html\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t[\\\\\\\\s\\\\\\\"'>]\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t)\\\",\\\"end\\\":\\\"((<))(?=/(?i:script))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"text.html.basic\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?!\\\\\\\\G)\\\",\\\"end\\\":\\\"(?=</(?i:script))\\\",\\\"name\\\":\\\"text.html.basic\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]}]},{\\\"begin\\\":\\\"(?=(?i:type))\\\",\\\"end\\\":\\\"(<)(?=/(?i:script))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.script.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"}}},{\\\"include\\\":\\\"#string-double-quoted-html\\\"},{\\\"include\\\":\\\"#string-single-quoted-html\\\"},{\\\"include\\\":\\\"#glimmer-argument\\\"},{\\\"include\\\":\\\"#html-attribute\\\"}]}]}]},\\\"string-double-quoted-handlebars\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ember-handlebars\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ember-handlebars\\\"}},\\\"name\\\":\\\"string.quoted.double.ember-handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.ember-handlebars\\\"}]},\\\"string-double-quoted-html\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ember-handlebars\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ember-handlebars\\\"}},\\\"name\\\":\\\"string.quoted.double.html.ember-handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.ember-handlebars\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"}]},\\\"string-single-quoted-handlebars\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ember-handlebars\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ember-handlebars\\\"}},\\\"name\\\":\\\"string.quoted.single.ember-handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\'\\\",\\\"name\\\":\\\"constant.character.escape.ember-handlebars\\\"}]},\\\"string-single-quoted-html\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ember-handlebars\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ember-handlebars\\\"}},\\\"name\\\":\\\"string.quoted.single.html.ember-handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\'\\\",\\\"name\\\":\\\"constant.character.escape.ember-handlebars\\\"},{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"}]},\\\"style\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=<(?i:style)\\\\\\\\b(?!-))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.html\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)([ \\\\\\\\t]*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.html\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(<)(style)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.style.start.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(?i)((<)/)(style)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.style.end.html\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"source.css-ignored-vscode\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"name\\\":\\\"meta.tag.metadata.style.start.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-argument\\\"},{\\\"include\\\":\\\"#html-attribute\\\"}]},{\\\"begin\\\":\\\"(?!\\\\\\\\G)\\\",\\\"end\\\":\\\"(?=</(?i:style))\\\",\\\"name\\\":\\\"source.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]}]},\\\"tag-like-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#glimmer-bools\\\"},{\\\"include\\\":\\\"#glimmer-unescaped-expression\\\"},{\\\"include\\\":\\\"#glimmer-comment-block\\\"},{\\\"include\\\":\\\"#glimmer-comment-inline\\\"},{\\\"include\\\":\\\"#glimmer-expression-property\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#digit\\\"},{\\\"include\\\":\\\"#glimmer-control-expression\\\"},{\\\"include\\\":\\\"#glimmer-expression\\\"},{\\\"include\\\":\\\"#glimmer-block\\\"},{\\\"include\\\":\\\"#string-double-quoted-html\\\"},{\\\"include\\\":\\\"#string-single-quoted-html\\\"},{\\\"include\\\":\\\"#glimmer-as-stuff\\\"},{\\\"include\\\":\\\"#glimmer-argument\\\"},{\\\"include\\\":\\\"#html-attribute\\\"}]},\\\"variable\\\":{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z0-9-_]+)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function\\\",\\\"patterns\\\":[]}},\\\"scopeName\\\":\\\"source.gts\\\",\\\"embeddedLangs\\\":[\\\"typescript\\\",\\\"css\\\",\\\"javascript\\\",\\\"html\\\"],\\\"aliases\\\":[\\\"gts\\\"]}\"))\n\nexport default [\n...typescript,\n...css,\n...javascript,\n...html,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Gnuplot\\\",\\\"fileTypes\\\":[\\\"gp\\\",\\\"plt\\\",\\\"plot\\\",\\\"gnuplot\\\"],\\\"name\\\":\\\"gnuplot\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\(?!\\\\\\\\n).*)\\\",\\\"name\\\":\\\"invalid.illegal.backslash.gnuplot\\\"},{\\\"match\\\":\\\"(;)\\\",\\\"name\\\":\\\"punctuation.separator.statement.gnuplot\\\"},{\\\"include\\\":\\\"#LineComment\\\"},{\\\"include\\\":\\\"#DataBlock\\\"},{\\\"include\\\":\\\"#MacroExpansion\\\"},{\\\"include\\\":\\\"#VariableDecl\\\"},{\\\"include\\\":\\\"#ArrayDecl\\\"},{\\\"include\\\":\\\"#FunctionDecl\\\"},{\\\"include\\\":\\\"#ShellCommand\\\"},{\\\"include\\\":\\\"#Command\\\"}],\\\"repository\\\":{\\\"ArrayDecl\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?:(array)\\\\\\\\s+([A-Za-z_]\\\\\\\\w*)?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.array.gnuplot\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.variable.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#InvalidVariableDecl\\\"},{\\\"include\\\":\\\"#BuiltinVariable\\\"}]}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"name\\\":\\\"meta.variable.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#Expression\\\"}]},\\\"BuiltinFunction\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:defined)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.deprecated.function.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:abs|acos|acosh|airy|arg|asin|asinh|atan|atan2|atanh|EllipticK|EllipticE|EllipticPi|besj0|besj1|besy0|besy1|ceil|cos|cosh|erf|erfc|exp|expint|floor|gamma|ibeta|inverf|igamma|imag|invnorm|int|lambertw|lgamma|log|log10|norm|rand|real|sgn|sin|sinh|sqrt|tan|tanh|voigt|cerf|cdawson|faddeeva|erfi|VP)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.math.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:gprintf|sprintf|strlen|strstrt|substr|strftime|strptime|system|word|words)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.string.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:column|columnhead|exists|hsv2rgb|stringcolumn|timecolumn|tm_hour|tm_mday|tm_min|tm_mon|tm_sec|tm_wday|tm_yday|tm_year|time|valid|value)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.other.gnuplot\\\"}]},\\\"BuiltinOperator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(&&|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.logical.gnuplot\\\"},{\\\"match\\\":\\\"(<<|>>|&|\\\\\\\\||\\\\\\\\^)\\\",\\\"name\\\":\\\"keyword.operator.bitwise.gnuplot\\\"},{\\\"match\\\":\\\"(==|!=|<=|<|>=|>)\\\",\\\"name\\\":\\\"keyword.operator.comparison.gnuplot\\\"},{\\\"match\\\":\\\"(=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.gnuplot\\\"},{\\\"match\\\":\\\"(\\\\\\\\+|-|~|!)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.gnuplot\\\"},{\\\"match\\\":\\\"(\\\\\\\\*\\\\\\\\*|\\\\\\\\+|-|\\\\\\\\*|/|%)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.gnuplot\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.word.gnuplot\\\"}},\\\"match\\\":\\\"(\\\\\\\\.|\\\\\\\\b(eq|ne)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.operator.strings.gnuplot\\\"}]},\\\"BuiltinVariable\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:FIT_LIMIT|FIT_MAXITER|FIT_START_LAMBDA|FIT_LAMBDA_FACTOR|FIT_SKIP|FIT_INDEX)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.deprecated.variable.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b(GPVAL_\\\\\\\\w*|MOUSE_\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b(ARG[0-9C]|GPFUN_\\\\\\\\w*|FIT_\\\\\\\\w*|STATS_\\\\\\\\w*|pi|NaN)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.gnuplot\\\"}]},\\\"ColumnIndexLiteral\\\":{\\\"match\\\":\\\"([$][0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.columnindex.gnuplot\\\"},\\\"Command\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?:update)\\\\\\\\b\\\",\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"name\\\":\\\"invalid.deprecated.command.gnuplot\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(?:break|clear|continue|pwd|refresh|replot|reread|shell)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.command.gnuplot\\\"}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#InvalidWord\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(?:cd|call|eval|exit|help|history|load|lower|pause|print|printerr|quit|raise|save|stats|system|test|toggle)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.command.gnuplot\\\"}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#Expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(import)\\\\\\\\s(.+)\\\\\\\\s(from)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.gnuplot\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#FunctionDecl\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.gnuplot\\\"}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#SingleQuotedStringLiteral\\\"},{\\\"include\\\":\\\"#DoubleQuotedStringLiteral\\\"},{\\\"include\\\":\\\"#InvalidWord\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(reset)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.command.gnuplot\\\"}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(bind|error(state)?|session)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.reset.gnuplot\\\"},{\\\"include\\\":\\\"#InvalidWord\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(undefine)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.command.gnuplot\\\"}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#BuiltinVariable\\\"},{\\\"include\\\":\\\"#BuiltinFunction\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s)([$]?[A-Za-z_]\\\\\\\\w*\\\\\\\\*?)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"source.gnuplot\\\"},{\\\"include\\\":\\\"#InvalidWord\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(if|while)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.gnuplot\\\"}},\\\"end\\\":\\\"(?=(\\\\\\\\{|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#Expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(else)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.gnuplot\\\"}},\\\"end\\\":\\\"(?=(\\\\\\\\{|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(do)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.gnuplot\\\"}},\\\"end\\\":\\\"(?=(\\\\\\\\{|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ForIterationExpr\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(set)(?=\\\\\\\\s+pm3d)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.command.gnuplot\\\"}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(hidden3d|map|transparent|solid)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.deprecated.options.gnuplot\\\"},{\\\"include\\\":\\\"#SetUnsetOptions\\\"},{\\\"include\\\":\\\"#ForIterationExpr\\\"},{\\\"include\\\":\\\"#Expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b((un)?set)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.command.gnuplot\\\"}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#SetUnsetOptions\\\"},{\\\"include\\\":\\\"#ForIterationExpr\\\"},{\\\"include\\\":\\\"#Expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(show)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.command.gnuplot\\\"}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ExtraShowOptions\\\"},{\\\"include\\\":\\\"#SetUnsetOptions\\\"},{\\\"include\\\":\\\"#Expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(fit|(s)?plot)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.command.gnuplot\\\"}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ColumnIndexLiteral\\\"},{\\\"include\\\":\\\"#PlotModifiers\\\"},{\\\"include\\\":\\\"#ForIterationExpr\\\"},{\\\"include\\\":\\\"#Expression\\\"}]}]},\\\"DataBlock\\\":{\\\"begin\\\":\\\"(?:([$][A-Za-z_]\\\\\\\\w*)\\\\\\\\s*(<<)\\\\\\\\s*([A-Za-z_]\\\\\\\\w*)\\\\\\\\s*(?=(\\\\\\\\#|$)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#SpecialVariable\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"constant.language.datablock.gnuplot\\\"}},\\\"end\\\":\\\"^(\\\\\\\\3)\\\\\\\\b(.*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.datablock.gnuplot\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.datablock.gnuplot\\\"}},\\\"name\\\":\\\"meta.datablock.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#LineComment\\\"},{\\\"include\\\":\\\"#NumberLiteral\\\"},{\\\"include\\\":\\\"#DoubleQuotedStringLiteral\\\"}]},\\\"DeprecatedScriptArgsLiteral\\\":{\\\"match\\\":\\\"([$][0-9#])\\\",\\\"name\\\":\\\"invalid.illegal.scriptargs.gnuplot\\\"},\\\"DoubleQuotedStringLiteral\\\":{\\\"begin\\\":\\\"(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.gnuplot\\\"}},\\\"end\\\":\\\"((\\\\\\\")|(?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.gnuplot\\\"}},\\\"name\\\":\\\"string.quoted.double.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#EscapedChar\\\"},{\\\"include\\\":\\\"#RGBColorSpec\\\"},{\\\"include\\\":\\\"#DeprecatedScriptArgsLiteral\\\"},{\\\"include\\\":\\\"#InterpolatedStringLiteral\\\"}]},\\\"EscapedChar\\\":{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\.)\\\",\\\"name\\\":\\\"constant.character.escape.gnuplot\\\"},\\\"Expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Literal\\\"},{\\\"include\\\":\\\"#SpecialVariable\\\"},{\\\"include\\\":\\\"#BuiltinVariable\\\"},{\\\"include\\\":\\\"#BuiltinOperator\\\"},{\\\"include\\\":\\\"#TernaryExpr\\\"},{\\\"include\\\":\\\"#FunctionCallExpr\\\"},{\\\"include\\\":\\\"#SummationExpr\\\"}]},\\\"ExtraShowOptions\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:all|bind|colornames|functions|plot|variables|version)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.options.gnuplot\\\"},\\\"ForIterationExpr\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?:(for)\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*(?:([A-Za-z_]\\\\\\\\w*)\\\\\\\\s+(in)\\\\\\\\b)?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.gnuplot\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#RangeSeparators\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"variable.other.iterator.gnuplot\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.flow.gnuplot\\\"}},\\\"end\\\":\\\"((\\\\\\\\])|(?=(#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$)))\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#RangeSeparators\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#Expression\\\"},{\\\"include\\\":\\\"#RangeSeparators\\\"}]},\\\"FunctionCallExpr\\\":{\\\"begin\\\":\\\"\\\\\\\\b([A-Za-z_]\\\\\\\\w*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.function.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#BuiltinFunction\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.gnuplot\\\"}},\\\"end\\\":\\\"((\\\\\\\\))|(?=(#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$)))\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.gnuplot\\\"}},\\\"name\\\":\\\"meta.function-call.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#Expression\\\"}]},\\\"FunctionDecl\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?:([A-Za-z_]\\\\\\\\w*)\\\\\\\\s*((\\\\\\\\()\\\\\\\\s*([A-Za-z_]\\\\\\\\w*)\\\\\\\\s*(?:(,)\\\\\\\\s*([A-Za-z_]\\\\\\\\w*)\\\\\\\\s*)*(\\\\\\\\))))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#BuiltinFunction\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"meta.function.parameters.gnuplot\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.gnuplot\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.language.gnuplot\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.gnuplot\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.function.language.gnuplot\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.gnuplot\\\"}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"name\\\":\\\"meta.function.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#Expression\\\"}]},\\\"InterpolatedStringLiteral\\\":{\\\"begin\\\":\\\"(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.gnuplot\\\"}},\\\"end\\\":\\\"((`)|(?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.gnuplot\\\"}},\\\"name\\\":\\\"string.interpolated.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#EscapedChar\\\"}]},\\\"InvalidVariableDecl\\\":{\\\"match\\\":\\\"\\\\\\\\b(GPVAL_\\\\\\\\w*|MOUSE_\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.variable.gnuplot\\\"},\\\"InvalidWord\\\":{\\\"match\\\":\\\"([^;#\\\\\\\\\\\\\\\\[:space:]]+)\\\",\\\"name\\\":\\\"invalid.illegal.gnuplot\\\"},\\\"LineComment\\\":{\\\"begin\\\":\\\"(#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.gnuplot\\\"}},\\\"end\\\":\\\"(?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.gnuplot\\\"}},\\\"name\\\":\\\"comment.line.number-sign.gnuplot\\\"},\\\"Literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#NumberLiteral\\\"},{\\\"include\\\":\\\"#DeprecatedScriptArgsLiteral\\\"},{\\\"include\\\":\\\"#SingleQuotedStringLiteral\\\"},{\\\"include\\\":\\\"#DoubleQuotedStringLiteral\\\"},{\\\"include\\\":\\\"#InterpolatedStringLiteral\\\"}]},\\\"MacroExpansion\\\":{\\\"begin\\\":\\\"([@][A-Za-z_]\\\\\\\\w*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#SpecialVariable\\\"}]}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#Expression\\\"}]},\\\"NumberLiteral\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:(((\\\\\\\\b[0-9]+)|(?<!\\\\\\\\d)))([.][0-9]+)([Ee][+-]?[0-9]+)?)(cm|in)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.gnuplot\\\"},{\\\"match\\\":\\\"(?:(\\\\\\\\b[0-9]+)((([Ee][+-]?[0-9]+\\\\\\\\b))|([.]([Ee][+-]?[0-9]+\\\\\\\\b)?)))(cm\\\\\\\\b|in\\\\\\\\b)?\\\",\\\"name\\\":\\\"constant.numeric.float.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b(0[Xx][0-9a-fA-F]+)(cm|in)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b(0+)(cm|in)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.dec.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b(0[0-7]+)(cm|in)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.oct.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b(0[0-9]+)(cm|in)?\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.oct.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b([0-9]+)(cm|in)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.dec.gnuplot\\\"}]},\\\"PlotModifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(thru)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.deprecated.plot.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:in(dex)?|every|us(ing)?|wi(th)?|via)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.plot.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\b(newhist(ogram)?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.plot.gnuplot\\\"}]},\\\"RGBColorSpec\\\":{\\\"match\\\":\\\"\\\\\\\\G(0x|#)(([0-9a-fA-F]{6})|([0-9a-fA-F]{8}))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.placeholder.gnuplot\\\"},\\\"RangeSeparators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\[)\\\",\\\"name\\\":\\\"punctuation.section.brackets.begin.gnuplot\\\"},{\\\"match\\\":\\\"(:)\\\",\\\"name\\\":\\\"punctuation.separator.range.gnuplot\\\"},{\\\"match\\\":\\\"(\\\\\\\\])\\\",\\\"name\\\":\\\"punctuation.section.brackets.end.gnuplot\\\"}]},\\\"SetUnsetOptions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G\\\\\\\\s*\\\\\\\\b(?:clabel|data|function|historysize|macros|ticslevel|ticscale|(style\\\\\\\\s+increment\\\\\\\\s+\\\\\\\\w+))\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.deprecated.options.gnuplot\\\"},{\\\"match\\\":\\\"\\\\\\\\G\\\\\\\\s*\\\\\\\\b(?:angles|arrow|autoscale|border|boxwidth|clip|cntr(label|param)|color(box|sequence)?|contour|(dash|line)type|datafile|decimal(sign)?|dgrid3d|dummy|encoding|(error)?bars|fit|fontpath|format|grid|hidden3d|history|(iso)?samples|jitter|key|label|link|loadpath|locale|logscale|mapping|[lrtb]margin|margins|micro|minus(sign)?|mono(chrome)?|mouse|multiplot|nonlinear|object|offsets|origin|output|parametric|(p|r)axis|pm3d|palette|pointintervalbox|pointsize|polar|print|psdir|size|style|surface|table|terminal|termoption|theta|tics|timestamp|timefmt|title|view|xyplane|zero|(no)?(m)?(x|x2|y|y2|z|cb|r|t)tics|(x|x2|y|y2|z|cb)data|(x|x2|y|y2|z|cb|r)label|(x|x2|y|y2|z|cb)dtics|(x|x2|y|y2|z|cb)mtics|(x|x2|y|y2|z|cb|[rtuv])range|(x|x2|y|y2|z)?zeroaxis)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.options.gnuplot\\\"}]},\\\"ShellCommand\\\":{\\\"begin\\\":\\\"(!)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.shell.gnuplot\\\"}},\\\"end\\\":\\\"(?=(#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([^#]|\\\\\\\\\\\\\\\\(?=\\\\\\\\n))\\\",\\\"name\\\":\\\"string.unquoted\\\"}]},\\\"SingleQuotedStringLiteral\\\":{\\\"begin\\\":\\\"(')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.gnuplot\\\"}},\\\"end\\\":\\\"((')(?!')|(?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.gnuplot\\\"}},\\\"name\\\":\\\"string.quoted.single.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#RGBColorSpec\\\"},{\\\"match\\\":\\\"('')\\\",\\\"name\\\":\\\"constant.character.escape.gnuplot\\\"}]},\\\"SpecialVariable\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.wildcard.gnuplot\\\"}},\\\"match\\\":\\\"(?<=[\\\\\\\\[:=])\\\\\\\\s*(\\\\\\\\*)\\\\\\\\s*(?=[:\\\\\\\\]])\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.gnuplot\\\"}},\\\"match\\\":\\\"(([@$])[A-Za-z_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.special.gnuplot\\\"}]},\\\"SummationExpr\\\":{\\\"begin\\\":\\\"\\\\\\\\b(sum)\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.sum.gnuplot\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#RangeSeparators\\\"}]}},\\\"end\\\":\\\"((\\\\\\\\])|(?=(#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$)))\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#RangeSeparators\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#Expression\\\"},{\\\"include\\\":\\\"#RangeSeparators\\\"}]},\\\"TernaryExpr\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\?)(\\\\\\\\?)(?!\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.gnuplot\\\"}},\\\"end\\\":\\\"((?<!:)(:)(?!:)|(?=(#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$)))\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.ternary.gnuplot\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#Expression\\\"}]},\\\"VariableDecl\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?:([A-Za-z_]\\\\\\\\w*)\\\\\\\\s*(?:(\\\\\\\\[)\\\\\\\\s*(.*)\\\\\\\\s*(\\\\\\\\])\\\\\\\\s*)?(?=(=)(?!\\\\\\\\s*=)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.variable.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#InvalidVariableDecl\\\"},{\\\"include\\\":\\\"#BuiltinVariable\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Expression\\\"}]}},\\\"end\\\":\\\"(?=(;|#|\\\\\\\\\\\\\\\\(?!\\\\\\\\n)|(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n$))\\\",\\\"name\\\":\\\"meta.variable.gnuplot\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#Expression\\\"}]}},\\\"scopeName\\\":\\\"source.gnuplot\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Go\\\",\\\"name\\\":\\\"go\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statements\\\"}],\\\"repository\\\":{\\\"after_control_variables\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"variable.other.go\\\"}]}},\\\"comment\\\":\\\"After control variables, to not highlight as a struct/interface (before formatting with gofmt)\\\",\\\"match\\\":\\\"(?:(?<=\\\\\\\\brange\\\\\\\\b|\\\\\\\\bswitch\\\\\\\\b|\\\\\\\\;|\\\\\\\\bif\\\\\\\\b|\\\\\\\\bfor\\\\\\\\b|\\\\\\\\<|\\\\\\\\>|\\\\\\\\<\\\\\\\\=|\\\\\\\\>\\\\\\\\=|\\\\\\\\=\\\\\\\\=|\\\\\\\\!\\\\\\\\=|\\\\\\\\w(?:\\\\\\\\+|/|\\\\\\\\-|\\\\\\\\*|\\\\\\\\%)|\\\\\\\\w(?:\\\\\\\\+|/|\\\\\\\\-|\\\\\\\\*|\\\\\\\\%)\\\\\\\\=|\\\\\\\\|\\\\\\\\||\\\\\\\\&\\\\\\\\&)(?:\\\\\\\\s*)((?![\\\\\\\\[\\\\\\\\]]+)[[:alnum:]\\\\\\\\-\\\\\\\\_\\\\\\\\!\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\<\\\\\\\\>\\\\\\\\=\\\\\\\\*/\\\\\\\\+\\\\\\\\%\\\\\\\\:]+)(?:\\\\\\\\s*)(?=\\\\\\\\{))\\\"},\\\"brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"built_in_functions\\\":{\\\"comment\\\":\\\"Built-in functions\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(append|cap|close|complex|copy|delete|imag|len|panic|print|println|real|recover|min|max|clear)\\\\\\\\b(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.support.builtin.go\\\"},{\\\"begin\\\":\\\"(?:(\\\\\\\\bnew\\\\\\\\b)(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.support.builtin.go\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"comment\\\":\\\"new keyword\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#struct_variables_types\\\"},{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"include\\\":\\\"#generic_types\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?:(\\\\\\\\bmake\\\\\\\\b)(?:(\\\\\\\\()((?:(?:(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+(?:\\\\\\\\([^\\\\\\\\)]+\\\\\\\\))?)?(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?(?:(?!\\\\\\\\bmap\\\\\\\\b)(?:[\\\\\\\\w\\\\\\\\.]+))?(\\\\\\\\[(?:(?:[\\\\\\\\S]+)(?:(?:\\\\\\\\,\\\\\\\\s*(?:[\\\\\\\\S]+))*))?\\\\\\\\])?(?:\\\\\\\\,)?)?))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.support.builtin.go\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"make keyword\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\/\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.go\\\"}},\\\"end\\\":\\\"(\\\\\\\\*\\\\\\\\/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.go\\\"}},\\\"name\\\":\\\"comment.block.go\\\"},{\\\"begin\\\":\\\"(\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.go\\\"}},\\\"end\\\":\\\"(?:\\\\\\\\n|$)\\\",\\\"name\\\":\\\"comment.line.double-slash.go\\\"}]},\\\"const_assignment\\\":{\\\"comment\\\":\\\"constant assignment with const keyword\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#delimiters\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.constant.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#generic_types\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"single assignment\\\",\\\"match\\\":\\\"(?:(?<=\\\\\\\\bconst\\\\\\\\b)(?:\\\\\\\\s*)(\\\\\\\\b[\\\\\\\\w\\\\\\\\.]+(?:\\\\\\\\,\\\\\\\\s*[\\\\\\\\w\\\\\\\\.]+)*)(?:\\\\\\\\s*)((?:(?:(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+(?:\\\\\\\\([^\\\\\\\\)]+\\\\\\\\))?)?(?!(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?\\\\\\\\b(?:struct|func|map)\\\\\\\\b)(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\*]+(?:\\\\\\\\,\\\\\\\\s*[\\\\\\\\w\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)*)?(?:\\\\\\\\s*)(?:\\\\\\\\=)?)?)\\\"},{\\\"begin\\\":\\\"(?:(?<=\\\\\\\\bconst\\\\\\\\b)(?:\\\\\\\\s*)(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"comment\\\":\\\"multi assignment\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#delimiters\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.constant.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#generic_types\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"match\\\":\\\"(?:(?:^\\\\\\\\s*)(\\\\\\\\b[\\\\\\\\w\\\\\\\\.]+(?:\\\\\\\\,\\\\\\\\s*[\\\\\\\\w\\\\\\\\.]+)*)(?:\\\\\\\\s*)((?:(?:(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+(?:\\\\\\\\([^\\\\\\\\)]+\\\\\\\\))?)?(?!(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?\\\\\\\\b(?:struct|func|map)\\\\\\\\b)(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\*]+(?:\\\\\\\\,\\\\\\\\s*[\\\\\\\\w\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)*)?(?:\\\\\\\\s*)(?:\\\\\\\\=)?)?)\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"delimiters\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\,\\\",\\\"name\\\":\\\"punctuation.other.comma.go\\\"},{\\\"match\\\":\\\"\\\\\\\\.(?!\\\\\\\\.\\\\\\\\.)\\\",\\\"name\\\":\\\"punctuation.other.period.go\\\"},{\\\"match\\\":\\\":(?!=)\\\",\\\"name\\\":\\\"punctuation.other.colon.go\\\"}]},\\\"double_parentheses_types\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"double parentheses types\\\",\\\"match\\\":\\\"(?:(?<!\\\\\\\\w)(\\\\\\\\((?:[\\\\\\\\w\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\*\\\\\\\\&]+)\\\\\\\\))(?=\\\\\\\\())\\\"},\\\"field_hover\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.property.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\binvalid\\\\\\\\b\\\\\\\\s+\\\\\\\\btype\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.field.go\\\"},{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"struct field property and types when hovering with the mouse\\\",\\\"match\\\":\\\"(?:(?<=^\\\\\\\\bfield\\\\\\\\b)\\\\\\\\s+([\\\\\\\\w\\\\\\\\*\\\\\\\\.]+)\\\\\\\\s+([\\\\\\\\s\\\\\\\\S]+))\\\"},\\\"function_declaration\\\":{\\\"begin\\\":\\\"(?:^(\\\\\\\\bfunc\\\\\\\\b)(?:\\\\\\\\s*(\\\\\\\\([^\\\\\\\\)]+\\\\\\\\)\\\\\\\\s*)?(?:(\\\\\\\\w+)(?=\\\\\\\\(|\\\\\\\\[))?))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.function.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"match\\\":\\\"(?:(\\\\\\\\w+(?:\\\\\\\\s+))?((?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)(?:\\\\\\\\[(?:(?:(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)(?:\\\\\\\\,\\\\\\\\s+)?)+)?\\\\\\\\])?))\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\d\\\\\\\\w*\\\",\\\"name\\\":\\\"invalid.illegal.identifier.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.function.go\\\"}]}},\\\"comment\\\":\\\"Function declarations\\\",\\\"end\\\":\\\"(?:(?<=\\\\\\\\))\\\\\\\\s*((?:(?:(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?!(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?(?:\\\\\\\\bstruct\\\\\\\\b|\\\\\\\\binterface\\\\\\\\b))[\\\\\\\\w\\\\\\\\.\\\\\\\\-\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?\\\\\\\\s*(?=\\\\\\\\{))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_param_types\\\"}]},{\\\"begin\\\":\\\"(?:([\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?(\\\\\\\\[))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#generic_param_types\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"single function as a type returned type(s) declaration\\\",\\\"match\\\":\\\"(?:(?<=\\\\\\\\))(?:\\\\\\\\s*)((?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?[\\\\\\\\w\\\\\\\\*\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\<\\\\\\\\>\\\\\\\\-]+(?:\\\\\\\\s*)(?:\\\\\\\\/(?:\\\\\\\\/|\\\\\\\\*).*)?)$)\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"function_param_types\\\":{\\\"comment\\\":\\\"function parameter variables and types\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#struct_variables_types\\\"},{\\\"include\\\":\\\"#interface_variables_types\\\"},{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.parameter.go\\\"}]}},\\\"comment\\\":\\\"struct/interface type declaration\\\",\\\"match\\\":\\\"((?:(?:\\\\\\\\b\\\\\\\\w+\\\\\\\\,\\\\\\\\s*)+)?\\\\\\\\b\\\\\\\\w+)\\\\\\\\s+(?=(?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?\\\\\\\\b(?:struct|interface)\\\\\\\\b\\\\\\\\s*\\\\\\\\{)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.parameter.go\\\"}]}},\\\"comment\\\":\\\"multiple parameters one type -with multilines\\\",\\\"match\\\":\\\"(?:(?:(?<=\\\\\\\\()|^\\\\\\\\s*)((?:(?:\\\\\\\\b\\\\\\\\w+\\\\\\\\,\\\\\\\\s*)+)(?:/(?:/|\\\\\\\\*).*)?)$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#delimiters\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.parameter.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"multiple params and types | multiple params one type | one param one type\\\",\\\"match\\\":\\\"(?:((?:(?:\\\\\\\\b\\\\\\\\w+\\\\\\\\,\\\\\\\\s*)+)?\\\\\\\\b\\\\\\\\w+)(?:\\\\\\\\s+)((?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:(?:(?:[\\\\\\\\w\\\\\\\\[\\\\\\\\]\\\\\\\\.\\\\\\\\*]+)?(?:(?:\\\\\\\\bfunc\\\\\\\\b\\\\\\\\((?:[^\\\\\\\\)]+)?\\\\\\\\))(?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:\\\\\\\\s*))+(?:(?:(?:[\\\\\\\\w\\\\\\\\*\\\\\\\\.\\\\\\\\[\\\\\\\\]]+)|(?:\\\\\\\\((?:[^\\\\\\\\)]+)?\\\\\\\\))))?)|(?:(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?[\\\\\\\\w\\\\\\\\*\\\\\\\\.]+(?:\\\\\\\\[(?:[^\\\\\\\\]]+)\\\\\\\\])?(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?)+)))\\\"},{\\\"begin\\\":\\\"(?:([\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?(\\\\\\\\[))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#generic_param_types\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_param_types\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"other types\\\",\\\"match\\\":\\\"([\\\\\\\\w\\\\\\\\.]+)\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"functions\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\bfunc\\\\\\\\b)(?=\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.function.go\\\"}},\\\"comment\\\":\\\"Functions\\\",\\\"end\\\":\\\"(?:(?<=\\\\\\\\))(\\\\\\\\s*(?:(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?((?:(?:\\\\\\\\s*(?:(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?(?:(?:\\\\\\\\[(?:(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?(?:\\\\\\\\[(?:[^\\\\\\\\]]+)?\\\\\\\\])?(?:\\\\\\\\,\\\\\\\\s+)?)+\\\\\\\\])|(?:\\\\\\\\((?:[^\\\\\\\\)]+)?\\\\\\\\)))?(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?)(?:\\\\\\\\s*)(?=\\\\\\\\{))|(?:\\\\\\\\s*(?:(?:(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?(?!\\\\\\\\bfunc\\\\\\\\b)(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)(?:\\\\\\\\[(?:(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?(?:\\\\\\\\[(?:[^\\\\\\\\]]+)?\\\\\\\\])?(?:\\\\\\\\,\\\\\\\\s+)?)+\\\\\\\\])?(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?)|(?:\\\\\\\\((?:[^\\\\\\\\)]+)?\\\\\\\\)))))?)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-variable-types\\\"}]},\\\"functions_inline\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.function.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_param_types\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"},{\\\"match\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"functions in-line with multi return types\\\",\\\"match\\\":\\\"(?:(\\\\\\\\bfunc\\\\\\\\b)((?:\\\\\\\\((?:[^/]*?)\\\\\\\\))(?:\\\\\\\\s+)(?:\\\\\\\\((?:[^/]*?)\\\\\\\\)))(?:\\\\\\\\s+)(?=\\\\\\\\{))\\\"},\\\"generic_param_types\\\":{\\\"comment\\\":\\\"generic parameter variables and types\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#struct_variables_types\\\"},{\\\"include\\\":\\\"#interface_variables_types\\\"},{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.parameter.go\\\"}]}},\\\"comment\\\":\\\"struct/interface type declaration\\\",\\\"match\\\":\\\"((?:(?:\\\\\\\\b\\\\\\\\w+\\\\\\\\,\\\\\\\\s*)+)?\\\\\\\\b\\\\\\\\w+)\\\\\\\\s+(?=(?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?\\\\\\\\b(?:struct|interface)\\\\\\\\b\\\\\\\\s*\\\\\\\\{)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.parameter.go\\\"}]}},\\\"comment\\\":\\\"multiple parameters one type -with multilines\\\",\\\"match\\\":\\\"(?:(?:(?<=\\\\\\\\()|^\\\\\\\\s*)((?:(?:\\\\\\\\b\\\\\\\\w+\\\\\\\\,\\\\\\\\s*)+)(?:/(?:/|\\\\\\\\*).*)?)$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#delimiters\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.parameter.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"multiple params and types | multiple types one param\\\",\\\"match\\\":\\\"(?:((?:(?:\\\\\\\\b\\\\\\\\w+\\\\\\\\,\\\\\\\\s*)+)?\\\\\\\\b\\\\\\\\w+)(?:\\\\\\\\s+)((?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:(?:(?:[\\\\\\\\w\\\\\\\\[\\\\\\\\]\\\\\\\\.\\\\\\\\*]+)?(?:(?:\\\\\\\\bfunc\\\\\\\\b\\\\\\\\((?:[^\\\\\\\\)]+)?\\\\\\\\))(?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:\\\\\\\\s*))+(?:(?:(?:[\\\\\\\\w\\\\\\\\*\\\\\\\\.]+)|(?:\\\\\\\\((?:[^\\\\\\\\)]+)?\\\\\\\\))))?)|(?:(?:(?:[\\\\\\\\w\\\\\\\\*\\\\\\\\.\\\\\\\\~]+)|(?:\\\\\\\\[(?:(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?(?:\\\\\\\\[(?:[^\\\\\\\\]]+)?\\\\\\\\])?(?:\\\\\\\\,\\\\\\\\s+)?)+\\\\\\\\]))(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?)+)))\\\"},{\\\"begin\\\":\\\"(?:([\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?(\\\\\\\\[))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#generic_param_types\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_param_types\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"other types\\\",\\\"match\\\":\\\"(?:\\\\\\\\b([\\\\\\\\w\\\\\\\\.]+))\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"generic_types\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-variable-types\\\"}]}},\\\"comment\\\":\\\"Generic support for all types\\\",\\\"match\\\":\\\"(?:([\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)(\\\\\\\\[(?:[^\\\\\\\\]]+)?\\\\\\\\]))\\\"},\\\"group-functions\\\":{\\\"comment\\\":\\\"all statements related to functions\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function_declaration\\\"},{\\\"include\\\":\\\"#functions_inline\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#built_in_functions\\\"},{\\\"include\\\":\\\"#support_functions\\\"}]},\\\"group-types\\\":{\\\"comment\\\":\\\"all statements related to types\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#other_struct_interface_expressions\\\"},{\\\"include\\\":\\\"#type_assertion_inline\\\"},{\\\"include\\\":\\\"#struct_variables_types\\\"},{\\\"include\\\":\\\"#interface_variables_types\\\"},{\\\"include\\\":\\\"#single_type\\\"},{\\\"include\\\":\\\"#multi_types\\\"},{\\\"include\\\":\\\"#struct_interface_declaration\\\"},{\\\"include\\\":\\\"#double_parentheses_types\\\"},{\\\"include\\\":\\\"#switch_types\\\"},{\\\"include\\\":\\\"#type-declarations\\\"}]},\\\"group-variables\\\":{\\\"comment\\\":\\\"all statements related to variables\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#const_assignment\\\"},{\\\"include\\\":\\\"#var_assignment\\\"},{\\\"include\\\":\\\"#variable_assignment\\\"},{\\\"include\\\":\\\"#label_loop_variables\\\"},{\\\"include\\\":\\\"#slice_index_variables\\\"},{\\\"include\\\":\\\"#property_variables\\\"},{\\\"include\\\":\\\"#switch_select_case_variables\\\"},{\\\"include\\\":\\\"#other_variables\\\"}]},\\\"import\\\":{\\\"comment\\\":\\\"import\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(import)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.go\\\"}},\\\"comment\\\":\\\"import\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#imports\\\"}]}]},\\\"imports\\\":{\\\"comment\\\":\\\"import package(s)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#delimiters\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"variable.other.import.go\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.double.go\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.go\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.import.go\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.go\\\"}},\\\"match\\\":\\\"(\\\\\\\\s*[\\\\\\\\w\\\\\\\\.]+)?\\\\\\\\s*((\\\\\\\")([^\\\\\\\"]*)(\\\\\\\"))\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.imports.begin.bracket.round.go\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.imports.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#imports\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"interface_variables_types\\\":{\\\"begin\\\":\\\"(\\\\\\\\binterface\\\\\\\\b)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.interface.go\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"comment\\\":\\\"interface variable types\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_variables_types_field\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"interface_variables_types_field\\\":{\\\"comment\\\":\\\"interface variable type fields\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#support_functions\\\"},{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"begin\\\":\\\"(?:([\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?(\\\\\\\\[))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#generic_param_types\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_param_types\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"other types\\\",\\\"match\\\":\\\"([\\\\\\\\w\\\\\\\\.]+)\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Flow control keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(break|case|continue|default|defer|else|fallthrough|for|go|goto|if|range|return|select|switch)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.go\\\"},{\\\"match\\\":\\\"\\\\\\\\bchan\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.channel.go\\\"},{\\\"match\\\":\\\"\\\\\\\\bconst\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.const.go\\\"},{\\\"match\\\":\\\"\\\\\\\\bvar\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.var.go\\\"},{\\\"match\\\":\\\"\\\\\\\\bfunc\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.function.go\\\"},{\\\"match\\\":\\\"\\\\\\\\binterface\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.interface.go\\\"},{\\\"match\\\":\\\"\\\\\\\\bmap\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.map.go\\\"},{\\\"match\\\":\\\"\\\\\\\\bstruct\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.struct.go\\\"},{\\\"match\\\":\\\"\\\\\\\\bimport\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.go\\\"},{\\\"match\\\":\\\"\\\\\\\\btype\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.type.go\\\"}]},\\\"label_loop_variables\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.label.go\\\"}]}},\\\"comment\\\":\\\"labeled loop variable name\\\",\\\"match\\\":\\\"((?:^\\\\\\\\s*\\\\\\\\w+:\\\\\\\\s*$)|(?:^\\\\\\\\s*(?:\\\\\\\\bbreak\\\\\\\\b|\\\\\\\\bgoto\\\\\\\\b|\\\\\\\\bcontinue\\\\\\\\b)\\\\\\\\s+\\\\\\\\w+(?:\\\\\\\\s*/(?:/|\\\\\\\\*)\\\\\\\\s*.*)?$))\\\"},\\\"language_constants\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.boolean.go\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.language.null.go\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.iota.go\\\"}},\\\"comment\\\":\\\"Language constants\\\",\\\"match\\\":\\\"\\\\\\\\b(?:(true|false)|(nil)|(iota))\\\\\\\\b\\\"},\\\"map_types\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\bmap\\\\\\\\b)(\\\\\\\\[))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.map.go\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"}},\\\"comment\\\":\\\"map types\\\",\\\"end\\\":\\\"(?:(\\\\\\\\])((?:(?:(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?!(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?\\\\\\\\b(?:func|struct|map)\\\\\\\\b)(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:[\\\\\\\\w\\\\\\\\.]+)(?:\\\\\\\\[(?:(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}]+)(?:(?:\\\\\\\\,\\\\\\\\s*(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}]+))*))?\\\\\\\\])?)?)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"},{\\\"match\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"multi_types\\\":{\\\"begin\\\":\\\"(\\\\\\\\btype\\\\\\\\b)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.type.go\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"comment\\\":\\\"multi type declaration\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#struct_variables_types\\\"},{\\\"include\\\":\\\"#interface_variables_types\\\"},{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"numeric_literals\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=.)\\\",\\\"end\\\":\\\"(?:\\\\\\\\n|$)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.decimal.point.go\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.decimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.go\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.go\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.go\\\"},\\\"9\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"keyword.other.unit.imaginary.go\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.numeric.decimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"13\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.go\\\"},\\\"14\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.go\\\"},\\\"15\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.go\\\"},\\\"16\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"keyword.other.unit.imaginary.go\\\"},\\\"18\\\":{\\\"name\\\":\\\"constant.numeric.decimal.point.go\\\"},\\\"19\\\":{\\\"name\\\":\\\"constant.numeric.decimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"20\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"21\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.go\\\"},\\\"22\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.go\\\"},\\\"23\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.go\\\"},\\\"24\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"25\\\":{\\\"name\\\":\\\"keyword.other.unit.imaginary.go\\\"},\\\"26\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.go\\\"},\\\"27\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"28\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"29\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.go\\\"},\\\"30\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"31\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"32\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.go\\\"},\\\"33\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.go\\\"},\\\"34\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.go\\\"},\\\"35\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"36\\\":{\\\"name\\\":\\\"keyword.other.unit.imaginary.go\\\"},\\\"37\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.go\\\"},\\\"38\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"39\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"40\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.go\\\"},\\\"41\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.go\\\"},\\\"42\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.go\\\"},\\\"43\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"44\\\":{\\\"name\\\":\\\"keyword.other.unit.imaginary.go\\\"},\\\"45\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.go\\\"},\\\"46\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.go\\\"},\\\"47\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"48\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"49\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.go\\\"},\\\"50\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.go\\\"},\\\"51\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.go\\\"},\\\"52\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"53\\\":{\\\"name\\\":\\\"keyword.other.unit.imaginary.go\\\"}},\\\"match\\\":\\\"(?:(?:(?:(?:(?:\\\\\\\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)((?:(?<=[0-9])\\\\\\\\.|\\\\\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)?(?:(?<!_)([eE])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)))?(i(?!\\\\\\\\w))?(?:\\\\\\\\n|$)|\\\\\\\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?<!_)([eE])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\\\\\\\w))?(?:\\\\\\\\n|$))|\\\\\\\\G((?:(?<=[0-9])\\\\\\\\.|\\\\\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?:(?<!_)([eE])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)))?(i(?!\\\\\\\\w))?(?:\\\\\\\\n|$))|(\\\\\\\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)((?:(?<=[0-9a-fA-F])\\\\\\\\.|\\\\\\\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)?(?<!_)([pP])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\\\\\\\w))?(?:\\\\\\\\n|$))|(\\\\\\\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?<!_)([pP])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\\\\\\\w))?(?:\\\\\\\\n|$))|(\\\\\\\\G0[xX])((?:(?<=[0-9a-fA-F])\\\\\\\\.|\\\\\\\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(?<!_)([pP])(\\\\\\\\+?)(\\\\\\\\-?)((?:[0-9](?:[0-9]|(?:(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*))(i(?!\\\\\\\\w))?(?:\\\\\\\\n|$))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.unit.imaginary.go\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.binary.go\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.binary.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.unit.imaginary.go\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.unit.octal.go\\\"},\\\"9\\\":{\\\"name\\\":\\\"constant.numeric.octal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"11\\\":{\\\"name\\\":\\\"keyword.other.unit.imaginary.go\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.go\\\"},\\\"13\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])_(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"}]},\\\"14\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.go\\\"},\\\"15\\\":{\\\"name\\\":\\\"keyword.other.unit.imaginary.go\\\"}},\\\"match\\\":\\\"(?:(?:(?:\\\\\\\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\\\\\\\w))?(?:\\\\\\\\n|$)|(\\\\\\\\G0[bB])_?([01](?:[01]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\\\\\\\w))?(?:\\\\\\\\n|$))|(\\\\\\\\G0[oO]?)_?((?:[0-7]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))+)(i(?!\\\\\\\\w))?(?:\\\\\\\\n|$))|(\\\\\\\\G0[xX])_?([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])_(?=[0-9a-fA-F])))*)(i(?!\\\\\\\\w))?(?:\\\\\\\\n|$))\\\"},{\\\"match\\\":\\\"(?:(?:[0-9a-zA-Z_\\\\\\\\.])|(?<=[eEpP])[+-])+\\\",\\\"name\\\":\\\"invalid.illegal.constant.numeric.go\\\"}]}]}},\\\"match\\\":\\\"(?<!\\\\\\\\w)\\\\\\\\.?\\\\\\\\d(?:(?:[0-9a-zA-Z_\\\\\\\\.])|(?<=[eEpP])[+-])*\\\"},\\\"operators\\\":{\\\"comment\\\":\\\"Note that the order here is very important!\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"((?:\\\\\\\\*|\\\\\\\\&)+)(?:(?!\\\\\\\\d)(?=(?:[\\\\\\\\w\\\\\\\\[\\\\\\\\]])|(?:\\\\\\\\<\\\\\\\\-)))\\\",\\\"name\\\":\\\"keyword.operator.address.go\\\"},{\\\"match\\\":\\\"<\\\\\\\\-\\\",\\\"name\\\":\\\"keyword.operator.channel.go\\\"},{\\\"match\\\":\\\"\\\\\\\\-\\\\\\\\-\\\",\\\"name\\\":\\\"keyword.operator.decrement.go\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.go\\\"},{\\\"match\\\":\\\"(==|!=|<=|>=|<(?!<)|>(?!>))\\\",\\\"name\\\":\\\"keyword.operator.comparison.go\\\"},{\\\"match\\\":\\\"(&&|\\\\\\\\|\\\\\\\\||!)\\\",\\\"name\\\":\\\"keyword.operator.logical.go\\\"},{\\\"match\\\":\\\"(=|\\\\\\\\+=|\\\\\\\\-=|\\\\\\\\|=|\\\\\\\\^=|\\\\\\\\*=|/=|:=|%=|<<=|>>=|&\\\\\\\\^=|&=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.go\\\"},{\\\"match\\\":\\\"(\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|/|%)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.go\\\"},{\\\"match\\\":\\\"(&(?!\\\\\\\\^)|\\\\\\\\||\\\\\\\\^|&\\\\\\\\^|<<|>>|\\\\\\\\~)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.bitwise.go\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.ellipsis.go\\\"}]},\\\"other_struct_interface_expressions\\\":{\\\"comment\\\":\\\"struct and interface expression in-line (before curly bracket)\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"after control variables must be added exactly here, do not move it! (changing may not affect tests, so be careful!)\\\",\\\"include\\\":\\\"#after_control_variables\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"},{\\\"include\\\":\\\"$self\\\"}]}]}},\\\"match\\\":\\\"(\\\\\\\\b[\\\\\\\\w\\\\\\\\.]+)(\\\\\\\\[(?:[^\\\\\\\\]]+)?\\\\\\\\])?(?=\\\\\\\\{)(?<!\\\\\\\\bstruct\\\\\\\\b|\\\\\\\\binterface\\\\\\\\b)\\\"}]},\\\"other_variables\\\":{\\\"comment\\\":\\\"all other variables\\\",\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.go\\\"},\\\"package_name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(package)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.package.go\\\"}},\\\"comment\\\":\\\"package name\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\d\\\\\\\\w*\\\",\\\"name\\\":\\\"invalid.illegal.identifier.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.package.go\\\"}]}]},\\\"parameter-variable-types\\\":{\\\"comment\\\":\\\"function and generic parameter types\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"},{\\\"match\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"},{\\\"begin\\\":\\\"(?:([\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)?(\\\\\\\\[))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#generic_param_types\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_param_types\\\"}]}]},\\\"property_variables\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.property.go\\\"}]}},\\\"comment\\\":\\\"Property variables in struct\\\",\\\"match\\\":\\\"((?:\\\\\\\\b[\\\\\\\\w\\\\\\\\.]+)(?:\\\\\\\\:(?!\\\\\\\\=)))\\\"},\\\"raw_string_literals\\\":{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.go\\\"}},\\\"comment\\\":\\\"Raw string literals\\\",\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.go\\\"}},\\\"name\\\":\\\"string.quoted.raw.go\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_placeholder\\\"}]},\\\"runes\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.go\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.go\\\"}},\\\"name\\\":\\\"string.quoted.rune.go\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G(\\\\\\\\\\\\\\\\([0-7]{3}|[abfnrtv\\\\\\\\\\\\\\\\'\\\\\\\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})|.)(?=')\\\",\\\"name\\\":\\\"constant.other.rune.go\\\"},{\\\"match\\\":\\\"[^']+\\\",\\\"name\\\":\\\"invalid.illegal.unknown-rune.go\\\"}]}]},\\\"single_type\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.type.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_param_types\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"include\\\":\\\"#generic_types\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"single type declaration\\\",\\\"match\\\":\\\"(?:(?:^\\\\\\\\s*)(\\\\\\\\btype\\\\\\\\b)(?:\\\\\\\\s*)([\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)(?:\\\\\\\\s+)(?!(?:\\\\\\\\=\\\\\\\\s*)?(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?\\\\\\\\b(?:struct|interface)\\\\\\\\b)([\\\\\\\\s\\\\\\\\S]+))\\\"},{\\\"begin\\\":\\\"(?:(?:^|\\\\\\\\s+)(\\\\\\\\btype\\\\\\\\b)(?:\\\\\\\\s*)([\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)(?=\\\\\\\\[))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.type.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"single type declaration with generics\\\",\\\"end\\\":\\\"(?:(?<=\\\\\\\\])((?:\\\\\\\\s+)(?:\\\\\\\\=\\\\\\\\s*)?(?:(?:(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:(?!(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?(?:\\\\\\\\bstruct\\\\\\\\b|\\\\\\\\binterface\\\\\\\\b|\\\\\\\\bfunc\\\\\\\\b))[\\\\\\\\w\\\\\\\\.\\\\\\\\-\\\\\\\\*\\\\\\\\[\\\\\\\\]]+(?:\\\\\\\\,\\\\\\\\s*[\\\\\\\\w\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)*))?)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#struct_variables_types\\\"},{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"},{\\\"match\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}]},\\\"slice_index_variables\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.go\\\"}]}},\\\"comment\\\":\\\"slice index and capacity variables, to not scope them as property variables\\\",\\\"match\\\":\\\"(?<=\\\\\\\\w\\\\\\\\[)((?:(?:\\\\\\\\b[\\\\\\\\w\\\\\\\\.\\\\\\\\*\\\\\\\\+/\\\\\\\\-\\\\\\\\%\\\\\\\\<\\\\\\\\>\\\\\\\\|\\\\\\\\&]+\\\\\\\\:)|(?:\\\\\\\\:\\\\\\\\b[\\\\\\\\w\\\\\\\\.\\\\\\\\*\\\\\\\\+/\\\\\\\\-\\\\\\\\%\\\\\\\\<\\\\\\\\>\\\\\\\\|\\\\\\\\&]+))(?:\\\\\\\\b[\\\\\\\\w\\\\\\\\.\\\\\\\\*\\\\\\\\+/\\\\\\\\-\\\\\\\\%\\\\\\\\<\\\\\\\\>\\\\\\\\|\\\\\\\\&]+)?(?:\\\\\\\\:\\\\\\\\b[\\\\\\\\w\\\\\\\\.\\\\\\\\*\\\\\\\\+/\\\\\\\\-\\\\\\\\%\\\\\\\\<\\\\\\\\>\\\\\\\\|\\\\\\\\&]+)?)(?=\\\\\\\\])\\\"},\\\"statements\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#package_name\\\"},{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#syntax_errors\\\"},{\\\"include\\\":\\\"#group-functions\\\"},{\\\"include\\\":\\\"#group-types\\\"},{\\\"include\\\":\\\"#group-variables\\\"},{\\\"include\\\":\\\"#field_hover\\\"}]},\\\"storage_types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bbool\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.boolean.go\\\"},{\\\"match\\\":\\\"\\\\\\\\bbyte\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.byte.go\\\"},{\\\"match\\\":\\\"\\\\\\\\berror\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.error.go\\\"},{\\\"match\\\":\\\"\\\\\\\\b(complex(64|128)|float(32|64)|u?int(8|16|32|64)?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.numeric.go\\\"},{\\\"match\\\":\\\"\\\\\\\\brune\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.rune.go\\\"},{\\\"match\\\":\\\"\\\\\\\\bstring\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.string.go\\\"},{\\\"match\\\":\\\"\\\\\\\\buintptr\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.uintptr.go\\\"},{\\\"match\\\":\\\"\\\\\\\\bany\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.any.go\\\"}]},\\\"string_escaped_char\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{3}|[abfnrtv\\\\\\\\\\\\\\\\'\\\\\\\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})\\\",\\\"name\\\":\\\"constant.character.escape.go\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^0-7xuUabfnrtv\\\\\\\\'\\\\\\\"]\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape.go\\\"}]},\\\"string_literals\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.go\\\"}},\\\"comment\\\":\\\"Interpreted string literals\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.go\\\"}},\\\"name\\\":\\\"string.quoted.double.go\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"}]}]},\\\"string_placeholder\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"%(\\\\\\\\[\\\\\\\\d+\\\\\\\\])?([\\\\\\\\+#\\\\\\\\-0\\\\\\\\x20]{,2}((\\\\\\\\d+|\\\\\\\\*)?(\\\\\\\\.?(\\\\\\\\d+|\\\\\\\\*|(\\\\\\\\[\\\\\\\\d+\\\\\\\\])\\\\\\\\*?)?(\\\\\\\\[\\\\\\\\d+\\\\\\\\])?)?))?[vT%tbcdoqxXUbeEfFgGspw]\\\",\\\"name\\\":\\\"constant.other.placeholder.go\\\"}]},\\\"struct_interface_declaration\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.type.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"struct, interface type declarations (related to: struct_variables_types, interface_variables_types)\\\",\\\"match\\\":\\\"(?:(?:^\\\\\\\\s*)(\\\\\\\\btype\\\\\\\\b)(?:\\\\\\\\s*)([\\\\\\\\w\\\\\\\\.]+))\\\"},\\\"struct_variable_types_fields_multi\\\":{\\\"comment\\\":\\\"struct variable and type fields with multi lines\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:((?:\\\\\\\\w+(?:\\\\\\\\,\\\\\\\\s*\\\\\\\\w+)*)(?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:\\\\\\\\s+)(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?)(\\\\\\\\bstruct\\\\\\\\b)(?:\\\\\\\\s*)(\\\\\\\\{))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.property.go\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.struct.go\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"comment\\\":\\\"struct in struct types\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#struct_variables_types_fields\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?:((?:\\\\\\\\w+(?:\\\\\\\\,\\\\\\\\s*\\\\\\\\w+)*)(?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:\\\\\\\\s+)(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?)(\\\\\\\\binterface\\\\\\\\b)(?:\\\\\\\\s*)(\\\\\\\\{))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.property.go\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.interface.go\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"comment\\\":\\\"interface in struct types\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_variables_types_field\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?:((?:\\\\\\\\w+(?:\\\\\\\\,\\\\\\\\s*\\\\\\\\w+)*)(?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:\\\\\\\\s+)(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?)(\\\\\\\\bfunc\\\\\\\\b)(?:\\\\\\\\s*)(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.property.go\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.function.go\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"comment\\\":\\\"function in struct types\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_param_types\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#parameter-variable-types\\\"}]},\\\"struct_variables_types\\\":{\\\"begin\\\":\\\"(\\\\\\\\bstruct\\\\\\\\b)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.struct.go\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"comment\\\":\\\"Struct variable type\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#struct_variables_types_fields\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"struct_variables_types_fields\\\":{\\\"comment\\\":\\\"Struct variable type fields\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#struct_variable_types_fields_multi\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"one line - single type\\\",\\\"match\\\":\\\"(?:(?<=\\\\\\\\{)\\\\\\\\s*((?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*\\\\\\\\[\\\\\\\\]]+))\\\\\\\\s*(?=\\\\\\\\}))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"variable.other.property.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"one line - property variables and types\\\",\\\"match\\\":\\\"(?:(?<=\\\\\\\\{)\\\\\\\\s*((?:(?:\\\\\\\\w+\\\\\\\\,\\\\\\\\s*)+)?(?:\\\\\\\\w+\\\\\\\\s+))((?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*\\\\\\\\[\\\\\\\\]]+))\\\\\\\\s*(?=\\\\\\\\}))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"variable.other.property.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"match\\\":\\\"(?:((?:(?:\\\\\\\\w+\\\\\\\\,\\\\\\\\s*)+)?(?:\\\\\\\\w+\\\\\\\\s+))?((?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:[\\\\\\\\S]+)(?:\\\\\\\\;)?))\\\"}]}},\\\"comment\\\":\\\"one line with semicolon(;) without formatting gofmt - single type | property variables and types\\\",\\\"match\\\":\\\"(?:(?<=\\\\\\\\{)((?:\\\\\\\\s*(?:(?:(?:\\\\\\\\w+\\\\\\\\,\\\\\\\\s*)+)?(?:\\\\\\\\w+\\\\\\\\s+))?(?:(?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:[\\\\\\\\S]+)(?:\\\\\\\\;)?))+)\\\\\\\\s*(?=\\\\\\\\}))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"one type only\\\",\\\"match\\\":\\\"(?:((?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)\\\\\\\\s*)(?:(?=\\\\\\\\`|\\\\\\\\/|\\\\\\\")|$))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"variable.other.property.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#parameter-variable-types\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"property variables and types\\\",\\\"match\\\":\\\"(?:((?:(?:\\\\\\\\w+\\\\\\\\,\\\\\\\\s*)+)?(?:\\\\\\\\w+\\\\\\\\s+))([^\\\\\\\\`\\\\\\\"\\\\\\\\/]+))\\\"}]},\\\"support_functions\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.support.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\d\\\\\\\\w*\\\",\\\"name\\\":\\\"invalid.illegal.identifier.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.function.support.go\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"},{\\\"match\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"Support Functions\\\",\\\"match\\\":\\\"(?:(?:((?<=\\\\\\\\.)\\\\\\\\b\\\\\\\\w+)|(\\\\\\\\b\\\\\\\\w+))(\\\\\\\\[(?:(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\"\\\\\\\\']+)(?:(?:\\\\\\\\,\\\\\\\\s*(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\*\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}]+))*))?\\\\\\\\])?(?=\\\\\\\\())\\\"},\\\"switch_select_case_variables\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"include\\\":\\\"#support_functions\\\"},{\\\"include\\\":\\\"#variable_assignment\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.go\\\"}]}},\\\"comment\\\":\\\"variables after case control keyword in switch/select expression, to not scope them as property variables\\\",\\\"match\\\":\\\"(?:(?:^\\\\\\\\s*(\\\\\\\\bcase\\\\\\\\b))(?:\\\\\\\\s+)([\\\\\\\\s\\\\\\\\S]+(?:\\\\\\\\:)\\\\\\\\s*(?:/(?:/|\\\\\\\\*).*)?)$)\\\"},\\\"switch_types\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\bswitch\\\\\\\\b)(?:\\\\\\\\s*)(?:(\\\\\\\\w+\\\\\\\\s*\\\\\\\\:\\\\\\\\=)?\\\\\\\\s*([\\\\\\\\w\\\\\\\\.\\\\\\\\*\\\\\\\\(\\\\\\\\)\\\\\\\\[\\\\\\\\]\\\\\\\\+/\\\\\\\\-\\\\\\\\%\\\\\\\\<\\\\\\\\>\\\\\\\\|\\\\\\\\&]+))(\\\\\\\\.\\\\\\\\(\\\\\\\\btype\\\\\\\\b\\\\\\\\)\\\\\\\\s*)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#operators\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.assignment.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support_functions\\\"},{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.go\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#delimiters\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"match\\\":\\\"\\\\\\\\btype\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.type.go\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"comment\\\":\\\"switch type assertions, only highlights types after case keyword\\\",\\\"end\\\":\\\"(?:\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.other.colon.go\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]}},\\\"comment\\\":\\\"types after case keyword with single line\\\",\\\"match\\\":\\\"(?:^\\\\\\\\s*(\\\\\\\\bcase\\\\\\\\b))(?:\\\\\\\\s+)([\\\\\\\\w\\\\\\\\.\\\\\\\\,\\\\\\\\*\\\\\\\\=\\\\\\\\<\\\\\\\\>\\\\\\\\!\\\\\\\\s]+)(:)(\\\\\\\\s*/(?:/|\\\\\\\\*)\\\\\\\\s*.*)?$\\\"},{\\\"begin\\\":\\\"\\\\\\\\bcase\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.go\\\"}},\\\"comment\\\":\\\"types after case keyword with multi lines\\\",\\\"end\\\":\\\"\\\\\\\\:\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.other.colon.go\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"syntax_errors\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.slice.go\\\"}},\\\"comment\\\":\\\"Syntax error using slices\\\",\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\](\\\\\\\\s+)\\\"},{\\\"comment\\\":\\\"Syntax error numeric literals\\\",\\\"match\\\":\\\"\\\\\\\\b0[0-7]*[89]\\\\\\\\d*\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.numeric.go\\\"}]},\\\"terminators\\\":{\\\"comment\\\":\\\"Terminators\\\",\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.go\\\"},\\\"type-declarations\\\":{\\\"comment\\\":\\\"includes all type declarations\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#map_types\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#delimiters\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#runes\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#raw_string_literals\\\"},{\\\"include\\\":\\\"#string_literals\\\"},{\\\"include\\\":\\\"#numeric_literals\\\"},{\\\"include\\\":\\\"#terminators\\\"}]},\\\"type-declarations-without-brackets\\\":{\\\"comment\\\":\\\"includes all type declarations without brackets (in some cases, brackets need to be captured manually)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#map_types\\\"},{\\\"include\\\":\\\"#delimiters\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#runes\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#raw_string_literals\\\"},{\\\"include\\\":\\\"#string_literals\\\"},{\\\"include\\\":\\\"#numeric_literals\\\"},{\\\"include\\\":\\\"#terminators\\\"}]},\\\"type_assertion_inline\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.type.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\w+)\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"struct/interface types in-line (type assertion) | switch type keyword\\\",\\\"match\\\":\\\"(?:(?<=\\\\\\\\.\\\\\\\\()(?:(\\\\\\\\btype\\\\\\\\b)|((?:(?:\\\\\\\\s*(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+)?[\\\\\\\\w\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\*]+))(?=\\\\\\\\)))\\\"},\\\"var_assignment\\\":{\\\"comment\\\":\\\"variable assignment with var keyword\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#delimiters\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.assignment.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#generic_types\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"comment\\\":\\\"single assignment\\\",\\\"match\\\":\\\"(?:(?<=\\\\\\\\bvar\\\\\\\\b)(?:\\\\\\\\s*)(\\\\\\\\b[\\\\\\\\w\\\\\\\\.]+(?:\\\\\\\\,\\\\\\\\s*[\\\\\\\\w\\\\\\\\.]+)*)(?:\\\\\\\\s*)((?:(?:(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+(?:\\\\\\\\([^\\\\\\\\)]+\\\\\\\\))?)?(?!(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?\\\\\\\\b(?:struct|func|map)\\\\\\\\b)(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\*]+(?:\\\\\\\\,\\\\\\\\s*[\\\\\\\\w\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)*)?(?:\\\\\\\\s*)(?:\\\\\\\\=)?)?)\\\"},{\\\"begin\\\":\\\"(?:(?<=\\\\\\\\bvar\\\\\\\\b)(?:\\\\\\\\s*)(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"}},\\\"comment\\\":\\\"multi assignment\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#delimiters\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.assignment.go\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-declarations-without-brackets\\\"},{\\\"include\\\":\\\"#generic_types\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.go\\\"}]}},\\\"match\\\":\\\"(?:(?:^\\\\\\\\s*)(\\\\\\\\b[\\\\\\\\w\\\\\\\\.]+(?:\\\\\\\\,\\\\\\\\s*[\\\\\\\\w\\\\\\\\.]+)*)(?:\\\\\\\\s*)((?:(?:(?:[\\\\\\\\*\\\\\\\\[\\\\\\\\]]+)?(?:\\\\\\\\<\\\\\\\\-\\\\\\\\s*)?\\\\\\\\bchan\\\\\\\\b(?:\\\\\\\\s*\\\\\\\\<\\\\\\\\-)?\\\\\\\\s*)+(?:\\\\\\\\([^\\\\\\\\)]+\\\\\\\\))?)?(?!(?:[\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)?\\\\\\\\b(?:struct|func|map)\\\\\\\\b)(?:[\\\\\\\\w\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\*]+(?:\\\\\\\\,\\\\\\\\s*[\\\\\\\\w\\\\\\\\.\\\\\\\\[\\\\\\\\]\\\\\\\\*]+)*)?(?:\\\\\\\\s*)(?:\\\\\\\\=)?)?)\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"variable_assignment\\\":{\\\"comment\\\":\\\"variable assignment\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#delimiters\\\"},{\\\"match\\\":\\\"\\\\\\\\d\\\\\\\\w*\\\",\\\"name\\\":\\\"invalid.illegal.identifier.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.assignment.go\\\"}]}},\\\"comment\\\":\\\"variable assignment with :=\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+(?:\\\\\\\\,\\\\\\\\s*\\\\\\\\w+)*(?=\\\\\\\\s*:=)\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#delimiters\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"match\\\":\\\"\\\\\\\\d\\\\\\\\w*\\\",\\\"name\\\":\\\"invalid.illegal.identifier.go\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.other.assignment.go\\\"}]}},\\\"comment\\\":\\\"variable assignment with =\\\",\\\"match\\\":\\\"\\\\\\\\b[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+(?:\\\\\\\\,\\\\\\\\s*[\\\\\\\\w\\\\\\\\.\\\\\\\\*]+)*(?=\\\\\\\\s*=(?!=))\\\"}]}},\\\"scopeName\\\":\\\"source.go\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Groovy\\\",\\\"name\\\":\\\"groovy\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.groovy\\\"}},\\\"match\\\":\\\"^(#!).+$\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.hashbang.groovy\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.package.groovy\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.package.groovy\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.terminator.groovy\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(package)\\\\\\\\b(?:\\\\\\\\s*([^ ;$]+)\\\\\\\\s*(;)?)?\\\",\\\"name\\\":\\\"meta.package.groovy\\\"},{\\\"begin\\\":\\\"(import static)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import.static.groovy\\\"}},\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import.groovy\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.import.groovy\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.terminator.groovy\\\"}},\\\"contentName\\\":\\\"storage.modifier.import.groovy\\\",\\\"end\\\":\\\"\\\\\\\\s*(?:$|(?=%>)(;))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.groovy\\\"}},\\\"name\\\":\\\"meta.import.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\s\\\",\\\"name\\\":\\\"invalid.illegal.character_not_allowed_here.groovy\\\"}]},{\\\"begin\\\":\\\"(import)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import.groovy\\\"}},\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import.groovy\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.import.groovy\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.terminator.groovy\\\"}},\\\"contentName\\\":\\\"storage.modifier.import.groovy\\\",\\\"end\\\":\\\"\\\\\\\\s*(?:$|(?=%>)|(;))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.groovy\\\"}},\\\"name\\\":\\\"meta.import.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\s\\\",\\\"name\\\":\\\"invalid.illegal.character_not_allowed_here.groovy\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import.groovy\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.import.static.groovy\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.import.groovy\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.terminator.groovy\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(import)(?:\\\\\\\\s+(static)\\\\\\\\s+)\\\\\\\\b(?:\\\\\\\\s*([^ ;$]+)\\\\\\\\s*(;)?)?\\\",\\\"name\\\":\\\"meta.import.groovy\\\"},{\\\"include\\\":\\\"#groovy\\\"}],\\\"repository\\\":{\\\"annotations\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\.)(@[^ (]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.annotation.groovy\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.annotation-arguments.begin.groovy\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.annotation-arguments.end.groovy\\\"}},\\\"name\\\":\\\"meta.declaration.annotation.groovy\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.key.groovy\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.groovy\\\"}},\\\"match\\\":\\\"(\\\\\\\\w*)\\\\\\\\s*(=)\\\"},{\\\"include\\\":\\\"#values\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.seperator.groovy\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\.)@\\\\\\\\S+\\\",\\\"name\\\":\\\"storage.type.annotation.groovy\\\"}]},\\\"anonymous-classes-and-new\\\":{\\\"begin\\\":\\\"\\\\\\\\bnew\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.new.groovy\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\)|\\\\\\\\])(?!\\\\\\\\s*{)|(?<=})|(?=[;])|$\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\w+)\\\\\\\\s*(?=\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.groovy\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*(?:,|;|\\\\\\\\)))|$\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy\\\"}]}]},{\\\"begin\\\":\\\"(?=\\\\\\\\w.*\\\\\\\\(?)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.groovy\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy\\\"}]}]},{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.inner-class.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-body\\\"}]}]},\\\"braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy-code\\\"}]},\\\"class\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\w?[\\\\\\\\w\\\\\\\\s]*(?:class|(?:@)?interface|enum)\\\\\\\\s+\\\\\\\\w+)\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.class.end.groovy\\\"}},\\\"name\\\":\\\"meta.definition.class.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.groovy\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.groovy\\\"}},\\\"match\\\":\\\"(class|(?:@)?interface|enum)\\\\\\\\s+(\\\\\\\\w+)\\\",\\\"name\\\":\\\"meta.class.identifier.groovy\\\"},{\\\"begin\\\":\\\"extends\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.extends.groovy\\\"}},\\\"end\\\":\\\"(?={|implements)\\\",\\\"name\\\":\\\"meta.definition.class.inherited.classes.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types-inherited\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"(implements)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.implements.groovy\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*extends|\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.definition.class.implemented.interfaces.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types-inherited\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"(?=})\\\",\\\"name\\\":\\\"meta.class.body.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-body\\\"}]}]},\\\"class-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#enum-values\\\"},{\\\"include\\\":\\\"#constructors\\\"},{\\\"include\\\":\\\"#groovy\\\"}]},\\\"closures\\\":{\\\"begin\\\":\\\"\\\\\\\\{(?=.*?->)\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\{)(?=[^\\\\\\\\}]*?->)\\\",\\\"end\\\":\\\"->\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.groovy\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?!->)\\\",\\\"end\\\":\\\"(?=->)\\\",\\\"name\\\":\\\"meta.closure.parameters.groovy\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?!,|->)\\\",\\\"end\\\":\\\"(?=,|->)\\\",\\\"name\\\":\\\"meta.closure.parameter.groovy\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.groovy\\\"}},\\\"end\\\":\\\"(?=,|->)\\\",\\\"name\\\":\\\"meta.parameter.default.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy-code\\\"}]},{\\\"include\\\":\\\"#parameters\\\"}]}]}]},{\\\"begin\\\":\\\"(?=[^}])\\\",\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy-code\\\"}]}]},\\\"comment-block\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.groovy\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.groovy\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.groovy\\\"}},\\\"match\\\":\\\"/\\\\\\\\*\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.empty.groovy\\\"},{\\\"include\\\":\\\"text.html.javadoc\\\"},{\\\"include\\\":\\\"#comment-block\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.groovy\\\"}},\\\"match\\\":\\\"(//).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.groovy\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([A-Z][A-Z0-9_]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.groovy\\\"}]},\\\"constructors\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?<=;|^)(?=\\\\\\\\s*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)\\\\\\\\s+)*[A-Z]\\\\\\\\w*\\\\\\\\()\\\",\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-content\\\"}]},\\\"enum-values\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=;|^)\\\\\\\\s*\\\\\\\\b([A-Z0-9_]+)(?=\\\\\\\\s*(?:,|;|}|\\\\\\\\(|$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.enum.name.groovy\\\"}},\\\"end\\\":\\\",|;|(?=})|^(?!\\\\\\\\s*\\\\\\\\w+\\\\\\\\s*(?:,|$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.enum.value.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.seperator.parameter.groovy\\\"},{\\\"include\\\":\\\"#groovy-code\\\"}]}]}]},\\\"groovy\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#methods\\\"},{\\\"include\\\":\\\"#annotations\\\"},{\\\"include\\\":\\\"#groovy-code\\\"}]},\\\"groovy-code\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy-code-minus-map-keys\\\"},{\\\"include\\\":\\\"#map-keys\\\"}]},\\\"groovy-code-minus-map-keys\\\":{\\\"comment\\\":\\\"In some situations, maps can't be declared without enclosing []'s, \\\\n\\\\t\\\\t\\\\t\\\\ttherefore we create a collection of everything but that\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#annotations\\\"},{\\\"include\\\":\\\"#support-functions\\\"},{\\\"include\\\":\\\"#keyword-language\\\"},{\\\"include\\\":\\\"#values\\\"},{\\\"include\\\":\\\"#anonymous-classes-and-new\\\"},{\\\"include\\\":\\\"#keyword-operator\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#closures\\\"},{\\\"include\\\":\\\"#braces\\\"}]},\\\"keyword\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#keyword-operator\\\"},{\\\"include\\\":\\\"#keyword-language\\\"}]},\\\"keyword-language\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(try|catch|finally|throw)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.exception.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\b((?<!\\\\\\\\.)(?:return|break|continue|default|do|while|for|switch|if|else))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.groovy\\\"},{\\\"begin\\\":\\\"\\\\\\\\bcase\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.groovy\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.case-terminator.groovy\\\"}},\\\"name\\\":\\\"meta.case.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy-code-minus-map-keys\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(assert)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.assert.groovy\\\"}},\\\"end\\\":\\\"$|;|}\\\",\\\"name\\\":\\\"meta.declaration.assertion.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"keyword.operator.assert.expression-seperator.groovy\\\"},{\\\"include\\\":\\\"#groovy-code-minus-map-keys\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(throws)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.throws.groovy\\\"}]},\\\"keyword-operator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(as)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.as.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\b(in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.in.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\:\\\",\\\"name\\\":\\\"keyword.operator.elvis.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\:\\\",\\\"name\\\":\\\"keyword.operator.spreadmap.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.range.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\->\\\",\\\"name\\\":\\\"keyword.operator.arrow.groovy\\\"},{\\\"match\\\":\\\"<<\\\",\\\"name\\\":\\\"keyword.operator.leftshift.groovy\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\S)\\\\\\\\.(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"keyword.operator.navigation.groovy\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\S)\\\\\\\\?\\\\\\\\.(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"keyword.operator.safe-navigation.groovy\\\"},{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.groovy\\\"}},\\\"end\\\":\\\"(?=$|\\\\\\\\)|}|])\\\",\\\"name\\\":\\\"meta.evaluation.ternary.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"keyword.operator.ternary.expression-seperator.groovy\\\"},{\\\"include\\\":\\\"#groovy-code-minus-map-keys\\\"}]},{\\\"match\\\":\\\"==~\\\",\\\"name\\\":\\\"keyword.operator.match.groovy\\\"},{\\\"match\\\":\\\"=~\\\",\\\"name\\\":\\\"keyword.operator.find.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\b(instanceof)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.instanceof.groovy\\\"},{\\\"match\\\":\\\"(===|==|!=|<=|>=|<=>|<>|<|>|<<)\\\",\\\"name\\\":\\\"keyword.operator.comparison.groovy\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.groovy\\\"},{\\\"match\\\":\\\"(\\\\\\\\-\\\\\\\\-|\\\\\\\\+\\\\\\\\+)\\\",\\\"name\\\":\\\"keyword.operator.increment-decrement.groovy\\\"},{\\\"match\\\":\\\"(\\\\\\\\-|\\\\\\\\+|\\\\\\\\*|\\\\\\\\/|%)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.groovy\\\"},{\\\"match\\\":\\\"(!|&&|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.logical.groovy\\\"}]},\\\"language-variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(this|super)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.groovy\\\"}]},\\\"map-keys\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.key.groovy\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.seperator.key-value.groovy\\\"}},\\\"match\\\":\\\"(\\\\\\\\w+)\\\\\\\\s*(:)\\\"}]},\\\"method-call\\\":{\\\"begin\\\":\\\"([\\\\\\\\w$]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.method.groovy\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.method-parameters.begin.groovy\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.method-parameters.end.groovy\\\"}},\\\"name\\\":\\\"meta.method-call.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.seperator.parameter.groovy\\\"},{\\\"include\\\":\\\"#groovy-code\\\"}]},\\\"method-content\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s\\\"},{\\\"include\\\":\\\"#annotations\\\"},{\\\"begin\\\":\\\"(?=(?:\\\\\\\\w|<)[^\\\\\\\\(]*\\\\\\\\s+(?:[\\\\\\\\w$]|<)+\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?=[\\\\\\\\w$]+\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"meta.method.return-type.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"include\\\":\\\"#types\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\\w$]+)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.java\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.definition.method.signature.java\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[^)])\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.method.parameters.groovy\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[^,)])\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\))\\\",\\\"name\\\":\\\"meta.method.parameter.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.separator.groovy\\\"},{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.groovy\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\))\\\",\\\"name\\\":\\\"meta.parameter.default.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy-code\\\"}]},{\\\"include\\\":\\\"#parameters\\\"}]}]}]},{\\\"begin\\\":\\\"(?=<)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.method.paramerised-type.groovy\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"<\\\",\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"storage.type.parameters.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#types\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.seperator.groovy\\\"}]}]},{\\\"begin\\\":\\\"throws\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.groovy\\\"}},\\\"end\\\":\\\"(?={|;)|^(?=\\\\\\\\s*(?:[^{\\\\\\\\s]|$))\\\",\\\"name\\\":\\\"meta.throwables.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"(?=})\\\",\\\"name\\\":\\\"meta.method.body.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy-code\\\"}]}]},\\\"methods\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?:(?<=;|^|{)(?=\\\\\\\\s*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|(?:def)|(?:(?:(?:void|boolean|byte|char|short|int|float|long|double)|(?:@?(?:[a-zA-Z]\\\\\\\\w*\\\\\\\\.)*[A-Z]+\\\\\\\\w*))[\\\\\\\\[\\\\\\\\]]*(?:<.*>)?))\\\\\\\\s+([^=]+\\\\\\\\s+)?\\\\\\\\w+\\\\\\\\s*\\\\\\\\())\\\",\\\"end\\\":\\\"}|(?=[^{])\\\",\\\"name\\\":\\\"meta.definition.method.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method-content\\\"}]},\\\"nest_curly\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.groovy\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly\\\"}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"((0(x|X)[0-9a-fA-F]*)|(\\\\\\\\+|-)?\\\\\\\\b(([0-9]+\\\\\\\\.?[0-9]*)|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)([LlFfUuDdg]|UL|ul)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.groovy\\\"}]},\\\"object-types\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((?:[a-z]\\\\\\\\w*\\\\\\\\.)*(?:[A-Z]+\\\\\\\\w*[a-z]+\\\\\\\\w*|UR[LI]))<\\\",\\\"end\\\":\\\">|[^\\\\\\\\w\\\\\\\\s,\\\\\\\\?<\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"storage.type.generic.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types\\\"},{\\\"begin\\\":\\\"<\\\",\\\"comment\\\":\\\"This is just to support <>'s with no actual type prefix\\\",\\\"end\\\":\\\">|[^\\\\\\\\w\\\\\\\\s,\\\\\\\\[\\\\\\\\]<]\\\",\\\"name\\\":\\\"storage.type.generic.groovy\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b((?:[a-z]\\\\\\\\w*\\\\\\\\.)*[A-Z]+\\\\\\\\w*[a-z]+\\\\\\\\w*)(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=[^\\\\\\\\]\\\\\\\\s])\\\",\\\"name\\\":\\\"storage.type.object.array.groovy\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy\\\"}]}]},{\\\"match\\\":\\\"\\\\\\\\b(?:[a-zA-Z]\\\\\\\\w*\\\\\\\\.)*(?:[A-Z]+\\\\\\\\w*[a-z]+\\\\\\\\w*|UR[LI])\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.groovy\\\"}]},\\\"object-types-inherited\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((?:[a-zA-Z]\\\\\\\\w*\\\\\\\\.)*[A-Z]+\\\\\\\\w*[a-z]+\\\\\\\\w*)<\\\",\\\"end\\\":\\\">|[^\\\\\\\\w\\\\\\\\s,\\\\\\\\?<\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"entity.other.inherited-class.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object-types-inherited\\\"},{\\\"begin\\\":\\\"<\\\",\\\"comment\\\":\\\"This is just to support <>'s with no actual type prefix\\\",\\\"end\\\":\\\">|[^\\\\\\\\w\\\\\\\\s,\\\\\\\\[\\\\\\\\]<]\\\",\\\"name\\\":\\\"storage.type.generic.groovy\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.dereference.groovy\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:[a-zA-Z]\\\\\\\\w*(\\\\\\\\.))*[A-Z]+\\\\\\\\w*[a-z]+\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.inherited-class.groovy\\\"}]},\\\"parameters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#annotations\\\"},{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.parameter.method.groovy\\\"}]},\\\"parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy-code\\\"}]},\\\"primitive-arrays\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:void|boolean|byte|char|short|int|float|long|double)(\\\\\\\\[\\\\\\\\])*\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.primitive.array.groovy\\\"}]},\\\"primitive-types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:void|boolean|byte|char|short|int|float|long|double)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.primitive.groovy\\\"}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/(?=[^/]+/([^>]|$))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.regexp.begin.groovy\\\"}},\\\"end\\\":\\\"/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.regexp.end.groovy\\\"}},\\\"name\\\":\\\"string.regexp.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.groovy\\\"}]},{\\\"begin\\\":\\\"~\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.regexp.begin.groovy\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.regexp.end.groovy\\\"}},\\\"name\\\":\\\"string.regexp.compiled.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.groovy\\\"}]}]},\\\"storage-modifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(private|protected|public)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.access-control.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\b(static)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.static.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\b(final)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.final.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\b(native|synchronized|abstract|threadsafe|transient)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.other.groovy\\\"}]},\\\"string-quoted-double\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.groovy\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.groovy\\\"}},\\\"name\\\":\\\"string.quoted.double.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-quoted-double-contents\\\"}]},\\\"string-quoted-double-contents\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.groovy\\\"},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\w\\\",\\\"end\\\":\\\"(?=\\\\\\\\W)\\\",\\\"name\\\":\\\"variable.other.interpolated.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\w\\\",\\\"name\\\":\\\"variable.other.interpolated.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.other.dereference.groovy\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.groovy\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"source.groovy.embedded.source\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly\\\"}]}]},\\\"string-quoted-double-multiline\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.groovy\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.groovy\\\"}},\\\"name\\\":\\\"string.quoted.double.multiline.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-quoted-double-contents\\\"}]},\\\"string-quoted-single\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.groovy\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.groovy\\\"}},\\\"name\\\":\\\"string.quoted.single.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-quoted-single-contents\\\"}]},\\\"string-quoted-single-contents\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.groovy\\\"}]},\\\"string-quoted-single-multiline\\\":{\\\"begin\\\":\\\"'''\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.groovy\\\"}},\\\"end\\\":\\\"'''\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.groovy\\\"}},\\\"name\\\":\\\"string.quoted.single.multiline.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-quoted-single-contents\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-quoted-double-multiline\\\"},{\\\"include\\\":\\\"#string-quoted-single-multiline\\\"},{\\\"include\\\":\\\"#string-quoted-double\\\"},{\\\"include\\\":\\\"#string-quoted-single\\\"},{\\\"include\\\":\\\"#regexp\\\"}]},\\\"structures\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.structure.begin.groovy\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.structure.end.groovy\\\"}},\\\"name\\\":\\\"meta.structure.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy-code\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.separator.groovy\\\"}]},\\\"support-functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:sprintf|print(?:f|ln)?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.print.groovy\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:shouldFail|fail(?:NotEquals)?|ass(?:ume|ert(?:S(?:cript|ame)|N(?:ot(?:Same|Null)|ull)|Contains|T(?:hat|oString|rue)|Inspect|Equals|False|Length|ArrayEquals)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.testing.groovy\\\"}]},\\\"types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(def)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.def.groovy\\\"},{\\\"include\\\":\\\"#primitive-types\\\"},{\\\"include\\\":\\\"#primitive-arrays\\\"},{\\\"include\\\":\\\"#object-types\\\"}]},\\\"values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#language-variables\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#structures\\\"},{\\\"include\\\":\\\"#method-call\\\"}]},\\\"variables\\\":{\\\"applyEndPatternLast\\\":1,\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?=(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|(?:def)|(?:void|boolean|byte|char|short|int|float|long|double)|(?:(?:[a-z]\\\\\\\\w*\\\\\\\\.)*[A-Z]+\\\\\\\\w*))\\\\\\\\s+[\\\\\\\\w\\\\\\\\d_<>\\\\\\\\[\\\\\\\\],\\\\\\\\s]+(?:=|$)))\\\",\\\"end\\\":\\\";|$\\\",\\\"name\\\":\\\"meta.definition.variable.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.variable.groovy\\\"}},\\\"match\\\":\\\"([A-Z_0-9]+)\\\\\\\\s+(?=\\\\\\\\=)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.name.groovy\\\"}},\\\"match\\\":\\\"(\\\\\\\\w[^\\\\\\\\s,]*)\\\\\\\\s+(?=\\\\\\\\=)\\\"},{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.groovy\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#groovy-code\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.variable.name.groovy\\\"}},\\\"match\\\":\\\"(\\\\\\\\w[^\\\\\\\\s=]*)(?=\\\\\\\\s*($|;))\\\"},{\\\"include\\\":\\\"#groovy-code\\\"}]}]}},\\\"scopeName\\\":\\\"source.groovy\\\"}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\nimport sql from './sql.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Hack\\\",\\\"fileTypes\\\":[\\\"hh\\\",\\\"php\\\",\\\"hack\\\"],\\\"foldingStartMarker\\\":\\\"(/\\\\\\\\*|\\\\\\\\{\\\\\\\\s*$|<<<HTML)\\\",\\\"foldingStopMarker\\\":\\\"(\\\\\\\\*/|^\\\\\\\\s*\\\\\\\\}|^HTML;)\\\",\\\"name\\\":\\\"hack\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"#language\\\"}],\\\"repository\\\":{\\\"attributes\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<<)(?!<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.attributes.php\\\"}},\\\"end\\\":\\\"(>>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.attributes.php\\\"}},\\\"name\\\":\\\"meta.attributes.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"([A-Za-z_][A-Za-z0-9_]*)\\\",\\\"name\\\":\\\"entity.other.attribute-name.php\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.php\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]}]},\\\"class-builtin\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\\\\\\\\\)?\\\\\\\\b(st(dClass|reamWrapper)|R(RD(Graph|Creator|Updater)|untimeException|e(sourceBundle|cursive(RegexIterator|Ca(chingIterator|llbackFilterIterator)|TreeIterator|Iterator(Iterator)?|DirectoryIterator|FilterIterator|ArrayIterator)|flect(ion(Method|Class|ZendExtension|Object|P(arameter|roperty)|Extension|Function(Abstract)?)?|or)|gexIterator)|angeException)|G(ender\\\\\\\\Gender|lobIterator|magick(Draw|Pixel)?)|X(sltProcessor|ML(Reader|Writer)|SLTProcessor)|M(ysqlndUh(Connection|PreparedStatement)|ongo(Re(sultException|gex)|Grid(fsFile|FS(Cursor|File)?)|BinData|C(o(de|llection)|ursor(Exception)?|lient)|Timestamp|I(nt(32|64)|d)|D(B(Ref)?|ate)|Pool|Log)?|u(tex|ltipleIterator)|e(ssageFormatter|mcache(d)?))|Bad(MethodCallException|FunctionCallException)|tidy(Node)?|S(tackable|impleXML(Iterator|Element)|oap(Server|Header|Client|Param|Var|Fault)|NMP|CA(_(SoapProxy|LocalProxy))?|p(hinxClient|oofchecker|l(M(inHeap|axHeap)|S(tack|ubject)|Heap|T(ype|empFileObject)|Ob(server|jectStorage)|DoublyLinkedList|PriorityQueue|Enum|Queue|Fi(le(Info|Object)|xedArray)))|e(ssionHandler(Interface)?|ekableIterator|rializable)|DO_(Model_(ReflectionDataObject|Type|Property)|Sequence|D(ata(Object|Factory)|AS_(Relational|XML(_Document)?|Setting|ChangeSummary|Data(Object|Factory)))|Exception|List)|wish(Result(s)?|Search)?|VM(Model)?|QLite(Result|3(Result|Stmt)?|Database|Unbuffered)|AM(Message|Connection))|H(ttp(Re(sponse|quest(Pool)?)|Message|InflateStream|DeflateStream|QueryString)|aru(Image|Outline|D(oc|estination)|Page|Encoder|Font|Annotation))|Yaf_(R(oute(_(Re(write|gex)|Map|S(tatic|imple|upervar)|Interface)|r)|e(sponse_Abstract|quest_(Simple|Http|Abstract)|gistry))|Session|Con(troller_Abstract|fig_(Simple|Ini|Abstract))|Dispatcher|Plugin_Abstract|Exception|View_(Simple|Interface)|Loader|A(ction_Abstract|pplication))|N(o(RewindIterator|rmalizer)|umberFormatter)|C(o(nd|untable|llator)|a(chingIterator|llbackFilterIterator))|T(hread|okyoTyrant(Table|Iterator|Query)?|ra(nsliterator|versable))|I(n(tlDateFormatter|validArgumentException|finiteIterator)|terator(Iterator|Aggregate)?|magick(Draw|Pixel(Iterator)?)?)|php_user_filter|ZipArchive|O(CI-(Collection|Lob)|ut(erIterator|Of(RangeException|BoundsException))|verflowException)|D(irectory(Iterator)?|omainException|OM(XPath|N(ode(list)?|amedNodeMap)|C(haracterData|omment|dataSection)|Text|Implementation|Document(Fragment)?|ProcessingInstruction|E(ntityReference|lement)|Attr)|ate(Time(Zone)?|Interval|Period))|Un(derflowException|expectedValueException)|JsonSerializable|finfo|P(har(Data|FileInfo)?|DO(Statement)?|arentIterator)|E(v(S(tat|ignal)|Ch(ild|eck)|Timer|I(o|dle)|P(eriodic|repare)|Embed|Fork|Watcher|Loop)?|rrorException|xception|mptyIterator)|V(8Js(Exception)?|arnish(Stat|Log|Admin))|KTaglib_(MPEG_(File|AudioProperties)|Tag|ID3v2_(Tag|Frame|AttachedPictureFrame))|QuickHash(StringIntHash|Int(S(tringHash|et)|Hash))|Fil(terIterator|esystemIterator)|mysqli(_(stmt|driver|warning|result))?|W(orker|eak(Map|ref))|L(imitIterator|o(cale|gicException)|ua(Closure)?|engthException|apack)|A(MQP(C(hannel|onnection)|E(nvelope|xchange)|Queue)|ppendIterator|PCIterator|rray(Iterator|Object|Access)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.builtin.php\\\"}]},\\\"class-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\\\\\\\\\?[a-z_0-9]+\\\\\\\\\\\\\\\\)\\\",\\\"end\\\":\\\"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},{\\\"include\\\":\\\"#class-builtin\\\"},{\\\"begin\\\":\\\"(?=[\\\\\\\\\\\\\\\\a-zA-Z_])\\\",\\\"end\\\":\\\"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?:#@\\\\\\\\+)?\\\\\\\\s*$\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"comment\\\":\\\"This now only highlights a docblock if the first line contains only /**\\\\n- this is to stop highlighting everything as invalid when people do comment banners with /******** ...\\\\n- Now matches /**#@+ too - used for docblock templates:\\\\n http://manual.phpdoc.org/HTMLframesConverter/default/phpDocumentor/tutorial_phpDocumentor.howto.pkg.html#basics.docblocktemplate\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.phpdoc.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#php_doc\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.php\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.php\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"\\\\\\\\n|(?=\\\\\\\\?>)\\\",\\\"name\\\":\\\"comment.line.double-slash.php\\\"}]}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?xi)\\\\n(?=\\\\n (\\\\n (\\\\\\\\\\\\\\\\[a-z_][a-z_0-9]*\\\\\\\\\\\\\\\\[a-z_][a-z_0-9\\\\\\\\\\\\\\\\]*)\\\\n |\\\\n ([a-z_][a-z_0-9]*\\\\\\\\\\\\\\\\[a-z_][a-z_0-9\\\\\\\\\\\\\\\\]*)\\\\n )\\\\n [^a-z_0-9\\\\\\\\\\\\\\\\]\\\\n)\\\",\\\"end\\\":\\\"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\\\\\\\\\\?[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}])\\\",\\\"end\\\":\\\"(?=[^\\\\\\\\\\\\\\\\a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(TRUE|FALSE|NULL|__(FILE|DIR|FUNCTION|CLASS|METHOD|LINE|NAMESPACE)__)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\b(STD(IN|OUT|ERR)|ZEND_(THREAD_SAFE|DEBUG_BUILD)|DEFAULT_INCLUDE_PATH|P(HP_(R(OUND_HALF_(ODD|DOWN|UP|EVEN)|ELEASE_VERSION)|M(INOR_VERSION|A(XPATHLEN|JOR_VERSION))|BINDIR|S(HLIB_SUFFIX|YSCONFDIR|API)|CONFIG_FILE_(SCAN_DIR|PATH)|INT_(MAX|SIZE)|ZTS|O(S|UTPUT_HANDLER_(START|CONT|END))|D(EBUG|ATADIR)|URL_(SCHEME|HOST|USER|P(ORT|A(SS|TH))|QUERY|FRAGMENT)|PREFIX|E(XT(RA_VERSION|ENSION_DIR)|OL)|VERSION(_ID)?|WINDOWS_(NT_(SERVER|DOMAIN_CONTROLLER|WORKSTATION)|VERSION_(M(INOR|AJOR)|BUILD|S(UITEMASK|P_M(INOR|AJOR))|P(RODUCTTYPE|LATFORM)))|L(IBDIR|OCALSTATEDIR))|EAR_(INSTALL_DIR|EXTENSION_DIR))|E_(RECOVERABLE_ERROR|STRICT|NOTICE|CO(RE_(ERROR|WARNING)|MPILE_(ERROR|WARNING))|DEPRECATED|USER_(NOTICE|DEPRECATED|ERROR|WARNING)|PARSE|ERROR|WARNING|ALL))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.core.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\b(RADIXCHAR|GROUPING|M(_(1_PI|SQRT(1_2|2|3|PI)|2_(SQRTPI|PI)|PI(_(2|4))?|E(ULER)?|L(N(10|2|PI)|OG(10E|2E)))|ON_(GROUPING|1(1|2|0)?|7|2|8|THOUSANDS_SEP|3|DECIMAL_POINT|9|4|5|6))|S(TR_PAD_(RIGHT|BOTH|LEFT)|ORT_(REGULAR|STRING|NUMERIC|DESC|LOCALE_STRING|ASC)|EEK_(SET|CUR|END))|H(TML_(SPECIALCHARS|ENTITIES)|ASH_HMAC)|YES(STR|EXPR)|N(_(S(IGN_POSN|EP_BY_SPACE)|CS_PRECEDES)|O(STR|EXPR)|EGATIVE_SIGN|AN)|C(R(YPT_(MD5|BLOWFISH|S(HA(256|512)|TD_DES|ALT_LENGTH)|EXT_DES)|NCYSTR|EDITS_(G(ROUP|ENERAL)|MODULES|SAPI|DOCS|QA|FULLPAGE|ALL))|HAR_MAX|O(NNECTION_(NORMAL|TIMEOUT|ABORTED)|DESET|UNT_(RECURSIVE|NORMAL))|URRENCY_SYMBOL|ASE_(UPPER|LOWER))|__COMPILER_HALT_OFFSET__|T(HOUS(EP|ANDS_SEP)|_FMT(_AMPM)?)|IN(T_(CURR_SYMBOL|FRAC_DIGITS)|I_(S(YSTEM|CANNER_(RAW|NORMAL))|USER|PERDIR|ALL)|F(O_(GENERAL|MODULES|C(REDITS|ONFIGURATION)|ENVIRONMENT|VARIABLES|LICENSE|ALL))?)|D(_(T_FMT|FMT)|IRECTORY_SEPARATOR|ECIMAL_POINT|A(Y_(1|7|2|3|4|5|6)|TE_(R(SS|FC(1(123|036)|2822|8(22|50)|3339))|COOKIE|ISO8601|W3C|ATOM)))|UPLOAD_ERR_(NO_(TMP_DIR|FILE)|CANT_WRITE|INI_SIZE|OK|PARTIAL|EXTENSION|FORM_SIZE)|P(M_STR|_(S(IGN_POSN|EP_BY_SPACE)|CS_PRECEDES)|OSITIVE_SIGN|ATH(_SEPARATOR|INFO_(BASENAME|DIRNAME|EXTENSION|FILENAME)))|E(RA(_(YEAR|T_FMT|D_(T_FMT|FMT)))?|XTR_(REFS|SKIP|IF_EXISTS|OVERWRITE|PREFIX_(SAME|I(NVALID|F_EXISTS)|ALL))|NT_(NOQUOTES|COMPAT|IGNORE|QUOTES))|FRAC_DIGITS|L(C_(M(ONETARY|ESSAGES)|NUMERIC|C(TYPE|OLLATE)|TIME|ALL)|O(G_(MAIL|SYSLOG|N(O(TICE|WAIT)|DELAY|EWS)|C(R(IT|ON)|ONS)|INFO|ODELAY|D(EBUG|AEMON)|U(SER|UCP)|P(ID|ERROR)|E(RR|MERG)|KERN|WARNING|L(OCAL(1|7|2|3|4|5|0|6)|PR)|A(UTH(PRIV)?|LERT))|CK_(SH|NB|UN|EX)))|A(M_STR|B(MON_(1(1|2|0)?|7|2|8|3|9|4|5|6)|DAY_(1|7|2|3|4|5|6))|SSERT_(BAIL|CALLBACK|QUIET_EVAL|WARNING|ACTIVE)|LT_DIGITS))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.std.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\b(GLOB_(MARK|BRACE|NO(SORT|CHECK|ESCAPE)|ONLYDIR|ERR|AVAILABLE_FLAGS)|XML_(SAX_IMPL|HTML_DOCUMENT_NODE|N(OTATION_NODE|AMESPACE_DECL_NODE)|C(OMMENT_NODE|DATA_SECTION_NODE)|TEXT_NODE|OPTION_(SKIP_(TAGSTART|WHITE)|CASE_FOLDING|TARGET_ENCODING)|D(TD_NODE|OCUMENT_(NODE|TYPE_NODE|FRAG_NODE))|PI_NODE|E(RROR_(RECURSIVE_ENTITY_REF|MISPLACED_XML_PI|B(INARY_ENTITY_REF|AD_CHAR_REF)|SYNTAX|NO(NE|_(MEMORY|ELEMENTS))|TAG_MISMATCH|IN(CORRECT_ENCODING|VALID_TOKEN)|DUPLICATE_ATTRIBUTE|UN(CLOSED_(CDATA_SECTION|TOKEN)|DEFINED_ENTITY|KNOWN_ENCODING)|JUNK_AFTER_DOC_ELEMENT|PAR(TIAL_CHAR|AM_ENTITY_REF)|EXTERNAL_ENTITY_HANDLING|A(SYNC_ENTITY|TTRIBUTE_EXTERNAL_ENTITY_REF))|NTITY_(REF_NODE|NODE|DECL_NODE)|LEMENT_(NODE|DECL_NODE))|LOCAL_NAMESPACE|ATTRIBUTE_(N(MTOKEN(S)?|O(TATION|DE))|CDATA|ID(REF(S)?)?|DECL_NODE|EN(TITY|UMERATION)))|M(HASH_(RIPEMD(1(28|60)|256|320)|GOST|MD(2|4|5)|S(HA(1|2(24|56)|384|512)|NEFRU256)|HAVAL(1(28|92|60)|2(24|56))|CRC32(B)?|TIGER(1(28|60))?|WHIRLPOOL|ADLER32)|YSQL(_(BOTH|NUM|CLIENT_(SSL|COMPRESS|I(GNORE_SPACE|NTERACTIVE))|ASSOC)|I_(RE(PORT_(STRICT|INDEX|OFF|ERROR|ALL)|FRESH_(GRANT|MASTER|BACKUP_LOG|S(TATUS|LAVE)|HOSTS|T(HREADS|ABLES)|LOG)|AD_DEFAULT_(GROUP|FILE))|GROUP_FLAG|MULTIPLE_KEY_FLAG|B(INARY_FLAG|OTH|LOB_FLAG)|S(T(MT_ATTR_(CURSOR_TYPE|UPDATE_MAX_LENGTH|PREFETCH_ROWS)|ORE_RESULT)|E(RVER_QUERY_(NO_(GOOD_INDEX_USED|INDEX_USED)|WAS_SLOW)|T_(CHARSET_NAME|FLAG)))|N(O(_D(EFAULT_VALUE_FLAG|ATA)|T_NULL_FLAG)|UM(_FLAG)?)|C(URSOR_TYPE_(READ_ONLY|SCROLLABLE|NO_CURSOR|FOR_UPDATE)|LIENT_(SSL|NO_SCHEMA|COMPRESS|I(GNORE_SPACE|NTERACTIVE)|FOUND_ROWS))|T(YPE_(GEOMETRY|MEDIUM_BLOB|B(IT|LOB)|S(HORT|TRING|ET)|YEAR|N(ULL|EWD(ECIMAL|ATE))|CHAR|TI(ME(STAMP)?|NY(_BLOB)?)|INT(24|ERVAL)|D(OUBLE|ECIMAL|ATE(TIME)?)|ENUM|VAR_STRING|FLOAT|LONG(_BLOB|LONG)?)|IMESTAMP_FLAG)|INIT_COMMAND|ZEROFILL_FLAG|O(N_UPDATE_NOW_FLAG|PT_(NET_(READ_BUFFER_SIZE|CMD_BUFFER_SIZE)|CONNECT_TIMEOUT|INT_AND_FLOAT_NATIVE|LOCAL_INFILE))|D(EBUG_TRACE_ENABLED|ATA_TRUNCATED)|U(SE_RESULT|N(SIGNED_FLAG|IQUE_KEY_FLAG))|P(RI_KEY_FLAG|ART_KEY_FLAG)|ENUM_FLAG|A(S(SOC|YNC)|UTO_INCREMENT_FLAG)))|CRYPT_(R(C(2|6)|IJNDAEL_(1(28|92)|256)|AND)|GOST|XTEA|M(ODE_(STREAM|NOFB|C(BC|FB)|OFB|ECB)|ARS)|BLOWFISH(_COMPAT)?|S(ERPENT|KIPJACK|AFER(128|PLUS|64))|C(RYPT|AST_(128|256))|T(RIPLEDES|HREEWAY|WOFISH)|IDEA|3DES|DE(S|CRYPT|V_(RANDOM|URANDOM))|PANAMA|EN(CRYPT|IGNA)|WAKE|LOKI97|ARCFOUR(_IV)?))|S(TREAM_(REPORT_ERRORS|M(UST_SEEK|KDIR_RECURSIVE)|BUFFER_(NONE|FULL|LINE)|S(HUT_(RD(WR)?|WR)|OCK_(R(DM|AW)|S(TREAM|EQPACKET)|DGRAM)|ERVER_(BIND|LISTEN))|NOTIFY_(RE(SOLVE|DIRECTED)|MIME_TYPE_IS|SEVERITY_(INFO|ERR|WARN)|CO(MPLETED|NNECT)|PROGRESS|F(ILE_SIZE_IS|AILURE)|AUTH_RE(SULT|QUIRED))|C(RYPTO_METHOD_(SSLv(2(_(SERVER|CLIENT)|3_(SERVER|CLIENT))|3_(SERVER|CLIENT))|TLS_(SERVER|CLIENT))|LIENT_(CONNECT|PERSISTENT|ASYNC_CONNECT)|AST_(FOR_SELECT|AS_STREAM))|I(GNORE_URL|S_URL|PPROTO_(RAW|TCP|I(CMP|P)|UDP))|O(OB|PTION_(READ_(BUFFER|TIMEOUT)|BLOCKING|WRITE_BUFFER))|U(RL_STAT_(QUIET|LINK)|SE_PATH)|P(EEK|F_(INET(6)?|UNIX))|ENFORCE_SAFE_MODE|FILTER_(READ|WRITE|ALL))|UNFUNCS_RET_(STRING|TIMESTAMP|DOUBLE)|QLITE(_(R(OW|EADONLY)|MIS(MATCH|USE)|B(OTH|USY)|SCHEMA|N(O(MEM|T(FOUND|ADB)|LFS)|UM)|C(O(RRUPT|NSTRAINT)|ANTOPEN)|TOOBIG|I(NTER(RUPT|NAL)|OERR)|OK|DONE|P(ROTOCOL|ERM)|E(RROR|MPTY)|F(ORMAT|ULL)|LOCKED|A(BORT|SSOC|UTH))|3_(B(OTH|LOB)|NU(M|LL)|TEXT|INTEGER|OPEN_(READ(ONLY|WRITE)|CREATE)|FLOAT|ASSOC)))|CURL(M(SG_DONE|_(BAD_(HANDLE|EASY_HANDLE)|CALL_MULTI_PERFORM|INTERNAL_ERROR|O(UT_OF_MEMORY|K)))|SSH_AUTH_(HOST|NONE|DEFAULT|P(UBLICKEY|ASSWORD)|KEYBOARD)|CLOSEPOLICY_(SLOWEST|CALLBACK|OLDEST|LEAST_(RECENTLY_USED|TRAFFIC))|_(HTTP_VERSION_(1_(1|0)|NONE)|NETRC_(REQUIRED|IGNORED|OPTIONAL)|TIMECOND_(IF(MODSINCE|UNMODSINCE)|LASTMOD)|IPRESOLVE_(V(4|6)|WHATEVER)|VERSION_(SSL|IPV6|KERBEROS4|LIBZ))|INFO_(RE(DIRECT_(COUNT|TIME)|QUEST_SIZE)|S(SL_VERIFYRESULT|TARTTRANSFER_TIME|IZE_(DOWNLOAD|UPLOAD)|PEED_(DOWNLOAD|UPLOAD))|H(TTP_CODE|EADER_(SIZE|OUT))|NAMELOOKUP_TIME|C(ON(NECT_TIME|TENT_(TYPE|LENGTH_(DOWNLOAD|UPLOAD)))|ERTINFO)|TOTAL_TIME|PR(IVATE|ETRANSFER_TIME)|EFFECTIVE_URL|FILETIME)|OPT_(R(E(SUME_FROM|TURNTRANSFER|DIR_PROTOCOLS|FERER|AD(DATA|FUNCTION))|AN(GE|DOM_FILE))|MAX(REDIRS|CONNECTS)|B(INARYTRANSFER|UFFERSIZE)|S(S(H_(HOST_PUBLIC_KEY_MD5|P(RIVATE_KEYFILE|UBLIC_KEYFILE)|AUTH_TYPES)|L(CERT(TYPE|PASSWD)?|_(CIPHER_LIST|VERIFY(HOST|PEER))|ENGINE(_DEFAULT)?|VERSION|KEY(TYPE|PASSWD)?))|TDERR)|H(TTP(GET|HEADER|200ALIASES|_VERSION|PROXYTUNNEL|AUTH)|EADER(FUNCTION)?)|N(O(BODY|SIGNAL|PROGRESS)|ETRC)|C(RLF|O(NNECTTIMEOUT(_MS)?|OKIE(SESSION|JAR|FILE)?)|USTOMREQUEST|ERTINFO|LOSEPOLICY|A(INFO|PATH))|T(RANSFERTEXT|CP_NODELAY|IME(CONDITION|OUT(_MS)?|VALUE))|I(N(TERFACE|FILE(SIZE)?)|PRESOLVE)|DNS_(CACHE_TIMEOUT|USE_GLOBAL_CACHE)|U(RL|SER(PWD|AGENT)|NRESTRICTED_AUTH|PLOAD)|P(R(IVATE|O(GRESSFUNCTION|XY(TYPE|USERPWD|PORT|AUTH)?|TOCOLS))|O(RT|ST(REDIR|QUOTE|FIELDS)?)|UT)|E(GDSOCKET|NCODING)|VERBOSE|K(RB4LEVEL|EYPASSWD)|QUOTE|F(RESH_CONNECT|TP(SSLAUTH|_(S(SL|KIP_PASV_IP)|CREATE_MISSING_DIRS|USE_EP(RT|SV)|FILEMETHOD)|PORT|LISTONLY|APPEND)|ILE(TIME)?|O(RBID_REUSE|LLOWLOCATION)|AILONERROR)|WRITE(HEADER|FUNCTION)|LOW_SPEED_(TIME|LIMIT)|AUTOREFERER)|PRO(XY_(SOCKS(4|5)|HTTP)|TO_(S(CP|FTP)|HTTP(S)?|T(ELNET|FTP)|DICT|F(TP(S)?|ILE)|LDAP(S)?|ALL))|E_(RE(CV_ERROR|AD_ERROR)|GOT_NOTHING|MALFORMAT_USER|BAD_(C(ONTENT_ENCODING|ALLING_ORDER)|PASSWORD_ENTERED|FUNCTION_ARGUMENT)|S(S(H|L_(C(IPHER|ONNECT_ERROR|ERTPROBLEM|ACERT)|PEER_CERTIFICATE|ENGINE_(SETFAILED|NOTFOUND)))|HARE_IN_USE|END_ERROR)|HTTP_(RANGE_ERROR|NOT_FOUND|PO(RT_FAILED|ST_ERROR))|COULDNT_(RESOLVE_(HOST|PROXY)|CONNECT)|T(OO_MANY_REDIRECTS|ELNET_OPTION_SYNTAX)|O(BSOLETE|UT_OF_MEMORY|PERATION_TIMEOUTED|K)|U(RL_MALFORMAT(_USER)?|N(SUPPORTED_PROTOCOL|KNOWN_TELNET_OPTION))|PARTIAL_FILE|F(TP_(BAD_DOWNLOAD_RESUME|SSL_FAILED|C(OULDNT_(RETR_FILE|GET_SIZE|S(TOR_FILE|ET_(BINARY|ASCII))|USE_REST)|ANT_(RECONNECT|GET_HOST))|USER_PASSWORD_INCORRECT|PORT_FAILED|QUOTE_ERROR|W(RITE_ERROR|EIRD_(SERVER_REPLY|227_FORMAT|USER_REPLY|PAS(S_REPLY|V_REPLY)))|ACCESS_DENIED)|ILE(SIZE_EXCEEDED|_COULDNT_READ_FILE)|UNCTION_NOT_FOUND|AILED_INIT)|WRITE_ERROR|L(IBRARY_NOT_FOUND|DAP_(SEARCH_FAILED|CANNOT_BIND|INVALID_URL))|ABORTED_BY_CALLBACK)|VERSION_NOW|FTP(METHOD_(MULTICWD|SINGLECWD|NOCWD)|SSL_(NONE|CONTROL|TRY|ALL)|AUTH_(SSL|TLS|DEFAULT))|AUTH_(GSSNEGOTIATE|BASIC|NTLM|DIGEST|ANY(SAFE)?))|I(MAGETYPE_(GIF|XBM|BMP|SWF|COUNT|TIFF_(MM|II)|I(CO|FF)|UNKNOWN|J(B2|P(X|2|C|EG(2000)?))|P(SD|NG)|WBMP)|NPUT_(REQUEST|GET|SE(RVER|SSION)|COOKIE|POST|ENV)|CONV_(MIME_DECODE_(STRICT|CONTINUE_ON_ERROR)|IMPL|VERSION))|D(NS_(MX|S(RV|OA)|HINFO|N(S|APTR)|CNAME|TXT|PTR|A(NY|LL|AAA|6)?)|OM(STRING_SIZE_ERR|_(SYNTAX_ERR|HIERARCHY_REQUEST_ERR|N(O(_(MODIFICATION_ALLOWED_ERR|DATA_ALLOWED_ERR)|T_(SUPPORTED_ERR|FOUND_ERR))|AMESPACE_ERR)|IN(DEX_SIZE_ERR|USE_ATTRIBUTE_ERR|VALID_(MODIFICATION_ERR|STATE_ERR|CHARACTER_ERR|ACCESS_ERR))|PHP_ERR|VALIDATION_ERR|WRONG_DOCUMENT_ERR)))|JSON_(HEX_(TAG|QUOT|A(MP|POS))|NUMERIC_CHECK|ERROR_(S(YNTAX|TATE_MISMATCH)|NONE|CTRL_CHAR|DEPTH|UTF8)|FORCE_OBJECT)|P(REG_(RECURSION_LIMIT_ERROR|GREP_INVERT|BA(CKTRACK_LIMIT_ERROR|D_UTF8_(OFFSET_ERROR|ERROR))|S(PLIT_(NO_EMPTY|OFFSET_CAPTURE|DELIM_CAPTURE)|ET_ORDER)|NO_ERROR|INTERNAL_ERROR|OFFSET_CAPTURE|PATTERN_ORDER)|SFS_(PASS_ON|ERR_FATAL|F(EED_ME|LAG_(NORMAL|FLUSH_(CLOSE|INC))))|CRE_VERSION|OSIX_(R_OK|X_OK|S_IF(REG|BLK|SOCK|CHR|IFO)|F_OK|W_OK))|F(NM_(NOESCAPE|CASEFOLD|P(ERIOD|ATHNAME))|IL(TER_(REQUIRE_(SCALAR|ARRAY)|SANITIZE_(MAGIC_QUOTES|S(TRI(NG|PPED)|PECIAL_CHARS)|NUMBER_(INT|FLOAT)|URL|E(MAIL|NCODED)|FULL_SPECIAL_CHARS)|NULL_ON_FAILURE|CALLBACK|DEFAULT|UNSAFE_RAW|VALIDATE_(REGEXP|BOOLEAN|I(NT|P)|URL|EMAIL|FLOAT)|F(ORCE_ARRAY|LAG_(S(CHEME_REQUIRED|TRIP_(BACKTICK|HIGH|LOW))|HOST_REQUIRED|NO(NE|_(RES_RANGE|PRIV_RANGE|ENCODE_QUOTES))|IPV(4|6)|PATH_REQUIRED|E(MPTY_STRING_NULL|NCODE_(HIGH|LOW|AMP))|QUERY_REQUIRED|ALLOW_(SCIENTIFIC|HEX|THOUSAND|OCTAL|FRACTION))))|E(_(BINARY|SKIP_EMPTY_LINES|NO_DEFAULT_CONTEXT|TEXT|IGNORE_NEW_LINES|USE_INCLUDE_PATH|APPEND)|INFO_(RAW|MIME(_(TYPE|ENCODING))?|SYMLINK|NONE|CONTINUE|DEVICES|PRESERVE_ATIME)))|ORCE_(GZIP|DEFLATE))|LIBXML_(XINCLUDE|N(SCLEAN|O(XMLDECL|BLANKS|NET|CDATA|E(RROR|MPTYTAG|NT)|WARNING))|COMPACT|D(TD(VALID|LOAD|ATTR)|OTTED_VERSION)|PARSEHUGE|ERR_(NONE|ERROR|FATAL|WARNING)|VERSION|LOADED_VERSION))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.ext.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\bT_(RE(TURN|QUIRE(_ONCE)?)|G(OTO|LOBAL)|XOR_EQUAL|M(INUS_EQUAL|OD_EQUAL|UL_EQUAL|ETHOD_C|L_COMMENT)|B(REAK|OOL(_CAST|EAN_(OR|AND))|AD_CHARACTER)|S(R(_EQUAL)?|T(RING(_(CAST|VARNAME))?|A(RT_HEREDOC|TIC))|WITCH|L(_EQUAL)?)|HALT_COMPILER|N(S_(SEPARATOR|C)|UM_STRING|EW|AMESPACE)|C(HARACTER|O(MMENT|N(ST(ANT_ENCAPSED_STRING)?|CAT_EQUAL|TINUE))|URLY_OPEN|L(O(SE_TAG|NE)|ASS(_C)?)|A(SE|TCH))|T(RY|HROW)|I(MPLEMENTS|S(SET|_(GREATER_OR_EQUAL|SMALLER_OR_EQUAL|NOT_(IDENTICAL|EQUAL)|IDENTICAL|EQUAL))|N(STANCEOF|C(LUDE(_ONCE)?)?|T(_CAST|ERFACE)|LINE_HTML)|F)|O(R_EQUAL|BJECT_(CAST|OPERATOR)|PEN_TAG(_WITH_ECHO)?|LD_FUNCTION)|D(NUMBER|I(R|V_EQUAL)|O(C_COMMENT|UBLE_(C(OLON|AST)|ARROW)|LLAR_OPEN_CURLY_BRACES)?|E(C(LARE)?|FAULT))|U(SE|NSET(_CAST)?)|P(R(I(NT|VATE)|OTECTED)|UBLIC|LUS_EQUAL|AAMAYIM_NEKUDOTAYIM)|E(X(TENDS|IT)|MPTY|N(CAPSED_AND_WHITESPACE|D(SWITCH|_HEREDOC|IF|DECLARE|FOR(EACH)?|WHILE))|CHO|VAL|LSE(IF)?)|VAR(IABLE)?|F(I(NAL|LE)|OR(EACH)?|UNC(_C|TION))|WHI(TESPACE|LE)|L(NUMBER|I(ST|NE)|OGICAL_(XOR|OR|AND))|A(RRAY(_CAST)?|BSTRACT|S|ND_EQUAL))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.parser-token.php\\\"},{\\\"comment\\\":\\\"In PHP, any identifier which is not a variable is taken to be a constant.\\\\nHowever, if there is no constant defined with the given name then a notice\\\\nis generated and the constant is assumed to have the value of its name.\\\",\\\"match\\\":\\\"[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\",\\\"name\\\":\\\"constant.other.php\\\"}]}]},\\\"function-arguments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"begin\\\":\\\"(?xi)((\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*) # The variable name\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"(?xi)\\\\n\\\\\\\\s*(?=,|\\\\\\\\)|$) # A closing parentheses (end of argument list) or a comma\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.php\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]}]},\\\"function-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\\\\\\\\\?[a-z_0-9\\\\\\\\\\\\\\\\]+\\\\\\\\\\\\\\\\[a-z_][a-z0-9_]*\\\\\\\\s*\\\\\\\\()\\\",\\\"comment\\\":\\\"Functions in a user-defined namespace (overrides any built-ins)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#user-function-call\\\"}]},{\\\"match\\\":\\\"(?i)\\\\\\\\b(print|echo)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.construct.php\\\"},{\\\"begin\\\":\\\"(?i)(\\\\\\\\\\\\\\\\)?(?=\\\\\\\\b[a-z_][a-z_0-9]*\\\\\\\\s*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"comment\\\":\\\"Root namespace function calls (built-in or user)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(isset|unset|e(val|mpty)|list)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.construct.php\\\"},{\\\"include\\\":\\\"#support\\\"},{\\\"include\\\":\\\"#user-function-call\\\"}]}]},\\\"function-return-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.type.php\\\"}},\\\"end\\\":\\\"(?=[{;])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#class-name\\\"}]}]},\\\"generics\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.generics.php\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.generics.php\\\"}},\\\"name\\\":\\\"meta.generics.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#generics\\\"},{\\\"match\\\":\\\"([-+])?([A-Za-z_][A-Za-z0-9_]*)(?:\\\\\\\\s+(as|super)\\\\\\\\s+([A-Za-z_][A-Za-z0-9_]*))?\\\",\\\"name\\\":\\\"support.type.php\\\"},{\\\"include\\\":\\\"#type-annotation\\\"}]}]},\\\"heredoc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"<<<\\\\\\\\s*(\\\\\\\"?)([a-zA-Z_]+[a-zA-Z0-9_]*)(\\\\\\\\1)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"end\\\":\\\"^(\\\\\\\\2)(?=;?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"<<<\\\\\\\\s*('?)([a-zA-Z_]+[a-zA-Z0-9_]*)(\\\\\\\\1)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"end\\\":\\\"^(\\\\\\\\2)(?=;?$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.nowdoc.php\\\"}]},\\\"implements\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(implements)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.implements.php\\\"}},\\\"end\\\":\\\"(?i)(?=[;{])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?i)(?=[a-z0-9_\\\\\\\\\\\\\\\\]+)\\\",\\\"contentName\\\":\\\"meta.other.inherited-class.php\\\",\\\"end\\\":\\\"(?i)(?:\\\\\\\\s*(?:,|(?=[^a-z0-9_\\\\\\\\\\\\\\\\\\\\\\\\s]))\\\\\\\\s*)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\\\\\\\\\?[a-z_0-9]+\\\\\\\\\\\\\\\\)\\\",\\\"end\\\":\\\"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},{\\\"include\\\":\\\"#class-builtin\\\"},{\\\"include\\\":\\\"#namespace\\\"},{\\\"match\\\":\\\"(?i)[a-z_][a-z_0-9]*\\\",\\\"name\\\":\\\"entity.other.inherited-class.php\\\"}]}]}]},\\\"instantiation\\\":{\\\"begin\\\":\\\"(?i)(new)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.new.php\\\"}},\\\"end\\\":\\\"(?i)(?=[^$a-z0-9_\\\\\\\\\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(parent|static|self)(?=[^a-z0-9_])\\\",\\\"name\\\":\\\"support.type.php\\\"},{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#variable-name\\\"}]},\\\"interface\\\":{\\\"begin\\\":\\\"^(?i)\\\\\\\\s*(?:(public|internal)\\\\\\\\s+)?(interface)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.interface.php\\\"}},\\\"end\\\":\\\"(?=[;{])\\\",\\\"name\\\":\\\"meta.interface.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.extends.php\\\"}},\\\"match\\\":\\\"\\\\\\\\b(extends)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#generics\\\"},{\\\"include\\\":\\\"#namespace\\\"},{\\\"match\\\":\\\"(?i)[a-z0-9_]+\\\",\\\"name\\\":\\\"entity.name.type.class.php\\\"}]},\\\"interpolation\\\":{\\\"comment\\\":\\\"http://www.php.net/manual/en/language.types.string.php#language.types.string.parsing\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Interpolating octal values e.g. \\\\\\\\01 or \\\\\\\\07.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-7]{1,3}\\\",\\\"name\\\":\\\"constant.numeric.octal.php\\\"},{\\\"comment\\\":\\\"Interpolating hex values e.g. \\\\\\\\x1 or \\\\\\\\xFF.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9A-Fa-f]{1,2}\\\",\\\"name\\\":\\\"constant.numeric.hex.php\\\"},{\\\"comment\\\":\\\"Escaped characters in double-quoted strings e.g. \\\\\\\\n or \\\\\\\\t.\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[nrt\\\\\\\\\\\\\\\\\\\\\\\\$\\\\\\\\\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"comment\\\":\\\"Interpolating expressions in double-quoted strings with {} e.g. {$x->y->z[0][1]}.\\\",\\\"match\\\":\\\"(\\\\\\\\{\\\\\\\\$.*?\\\\\\\\})\\\",\\\"name\\\":\\\"variable.other.php\\\"},{\\\"comment\\\":\\\"Interpolating simple variables, e.g. $x, $x->y, $x[z] but not $x->y->z.\\\",\\\"match\\\":\\\"(\\\\\\\\$[a-zA-Z_][a-zA-Z0-9_]*((->[a-zA-Z_][a-zA-Z0-9_]*)|(\\\\\\\\[[a-zA-Z0-9_]+\\\\\\\\]))?)\\\",\\\"name\\\":\\\"variable.other.php\\\"}]},\\\"invoke-call\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\$+)([a-z_][a-z_0-9]*)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"meta.function-call.invoke.php\\\"},\\\"language\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?=^\\\\\\\\s*<<)\\\",\\\"end\\\":\\\"(?<=>>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes\\\"}]},{\\\"include\\\":\\\"#xhp\\\"},{\\\"include\\\":\\\"#interface\\\"},{\\\"begin\\\":\\\"(?xi)\\\\n^\\\\\\\\s*\\\\n(?:(module)\\\\\\\\s*)?(type|newtype)\\\\n\\\\\\\\s+\\\\n([a-z0-9_]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.typedecl.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.typedecl.php\\\"}},\\\"end\\\":\\\"(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.termination.expression.php\\\"}},\\\"name\\\":\\\"meta.typedecl.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#generics\\\"},{\\\"match\\\":\\\"(=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},{\\\"include\\\":\\\"#type-annotation\\\"}]},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(?:(public|internal)\\\\\\\\s+)?(enum)\\\\\\\\s+(class)\\\\\\\\s+([a-z0-9_]+)\\\\\\\\s*:?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.class.enum.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.enum.php\\\"}},\\\"end\\\":\\\"(?=[{])\\\",\\\"name\\\":\\\"meta.class.enum.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(extends)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.extends.php\\\"},{\\\"include\\\":\\\"#type-annotation\\\"}]},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(?:(public|internal)\\\\\\\\s+)?(enum)\\\\\\\\s+([a-z0-9_]+)\\\\\\\\s*:?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.enum.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.enum.php\\\"}},\\\"end\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"meta.enum.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#type-annotation\\\"}]},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(?:(public|internal)\\\\\\\\s+)?(trait)\\\\\\\\s+([a-z0-9_]+)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.trait.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.php\\\"}},\\\"end\\\":\\\"(?=[{])\\\",\\\"name\\\":\\\"meta.trait.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#generics\\\"},{\\\"include\\\":\\\"#implements\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(new)\\\\\\\\s+(module)\\\\\\\\s+([A-Za-z0-9_\\\\\\\\.]+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.module.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.module.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.module.php\\\"}},\\\"end\\\":\\\"(?=[{])\\\",\\\"name\\\":\\\"meta.module.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(module)\\\\\\\\s+([A-Za-z0-9_\\\\\\\\.]+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.module.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.module.php\\\"}},\\\"end\\\":\\\"$|(?=[\\\\\\\\s;])\\\",\\\"name\\\":\\\"meta.use.module.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"(?i)(?:^\\\\\\\\s*|\\\\\\\\s*)(namespace)\\\\\\\\b\\\\\\\\s+(?=([a-z0-9_\\\\\\\\\\\\\\\\]*\\\\\\\\s*($|[;{]|(\\\\\\\\/[\\\\\\\\/*])))|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.namespace.php\\\"}},\\\"contentName\\\":\\\"entity.name.type.namespace.php\\\",\\\"end\\\":\\\"(?i)(?=\\\\\\\\s*$|[^a-z0-9_\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"meta.namespace.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\b(use)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.use.php\\\"}},\\\"end\\\":\\\"(?=;|(?:^\\\\\\\\s*$))\\\",\\\"name\\\":\\\"meta.use.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*(?=[a-z_0-9\\\\\\\\\\\\\\\\])\\\",\\\"end\\\":\\\"(?xi)\\\\n(?:\\\\n (?:\\\\\\\\s*(as)\\\\\\\\b\\\\\\\\s*([a-z_0-9]*)\\\\\\\\s*(?=,|;|$))|\\\\n (?=,|;|$)\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.use-as.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.other.namespace.use-as.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#class-builtin\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*(?=[\\\\\\\\\\\\\\\\a-z_0-9])\\\",\\\"end\\\":\\\"$|(?=[\\\\\\\\s,;])\\\",\\\"name\\\":\\\"support.other.namespace.use.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}]}]},{\\\"match\\\":\\\"\\\\\\\\s*,\\\\\\\\s*\\\"}]},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*((?:(?:final|abstract|public|internal)\\\\\\\\s+)*)(class)\\\\\\\\s+([a-z0-9_]+)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"final|abstract|public|internal\\\",\\\"name\\\":\\\"storage.modifier.php\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.php\\\"}},\\\"end\\\":\\\"(?=[;{])\\\",\\\"name\\\":\\\"meta.class.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#generics\\\"},{\\\"include\\\":\\\"#implements\\\"},{\\\"begin\\\":\\\"(?i)(extends)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.extends.php\\\"}},\\\"contentName\\\":\\\"meta.other.inherited-class.php\\\",\\\"end\\\":\\\"(?i)(?=[^a-z_0-9\\\\\\\\\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\\\\\\\\\?[a-z_0-9]+\\\\\\\\\\\\\\\\)\\\",\\\"end\\\":\\\"(?i)([a-z_][a-z_0-9]*)?(?=[^a-z0-9_\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},{\\\"include\\\":\\\"#class-builtin\\\"},{\\\"include\\\":\\\"#namespace\\\"},{\\\"match\\\":\\\"(?i)[a-z_][a-z_0-9]*\\\",\\\"name\\\":\\\"entity.other.inherited-class.php\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.php\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(await|break|c(ase|ontinue)|concurrent|default|do|else|for(each)?|if|return|switch|use|while)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b((?:require|include)(?:_once)?)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.include.php\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|;|$)\\\",\\\"name\\\":\\\"meta.include.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(catch)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.exception.catch.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.catch.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.exception.php\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*\\\",\\\"name\\\":\\\"support.class.exception.php\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*) # Exception class\\\\n((?:\\\\\\\\s*\\\\\\\\|\\\\\\\\s*[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)*) # Optional additional exception classes\\\\n\\\\\\\\s*\\\\n((\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*) # Variable\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(catch|try|throw|exception|finally)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.exception.php\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*(?:(public|internal)\\\\\\\\s+)?(function)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.php\\\"}},\\\"end\\\":\\\"\\\\\\\\{|\\\\\\\\)\\\",\\\"name\\\":\\\"meta.function.closure.php\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.php\\\"}},\\\"contentName\\\":\\\"meta.function.arguments.php\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-arguments\\\"}]},{\\\"begin\\\":\\\"(?i)(use)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.function.use.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.php\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.php\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\s*(&))?\\\\\\\\s*((\\\\\\\\$+)[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\\\\\\s*(?=,|\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.closure.use.php\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*((?:(?:final|abstract|public|private|protected|internal|static|async)\\\\\\\\s+)*)(function)(?:\\\\\\\\s+)(?:(__(?:call|construct|destruct|get|set|isset|unset|tostring|clone|set_state|sleep|wakeup|autoload|invoke|callStatic|dispose|disposeAsync)(?=[^a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]))|([a-zA-Z0-9_]+))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"final|abstract|public|private|protected|internal|static|async\\\",\\\"name\\\":\\\"storage.modifier.php\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.magic.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.function.generics.php\\\"}},\\\"end\\\":\\\"(?=[{;])\\\",\\\"name\\\":\\\"meta.function.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#generics\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.php\\\"}},\\\"contentName\\\":\\\"meta.function.arguments.php\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-arguments\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.php\\\"}},\\\"end\\\":\\\"(?=[{;])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-return-type\\\"}]}]},{\\\"include\\\":\\\"#invoke-call\\\"},{\\\"begin\\\":\\\"(?xi)\\\\n\\\\\\\\s*\\\\n (?=\\\\n [a-z_0-9$\\\\\\\\\\\\\\\\]+(::)\\\\n (?:\\\\n ([a-z_][a-z_0-9]*)\\\\\\\\s*\\\\\\\\(\\\\n |\\\\n ((\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\\n |\\\\n ([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\\n )?\\\\n )\\\",\\\"end\\\":\\\"(::)(?:([A-Za-z_][A-Za-z_0-9]*)\\\\\\\\s*\\\\\\\\(|((\\\\\\\\$+)[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)|([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.function-call.static.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.class.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.other.class.php\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(self|static|parent)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.php\\\"},{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#variable-name\\\"}]},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.construct.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.php\\\"}},\\\"match\\\":\\\"(array)(\\\\\\\\()(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.array.empty.php\\\"},{\\\"begin\\\":\\\"(array)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.construct.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.php\\\"}},\\\"name\\\":\\\"meta.array.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.php\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\s*\\\\\\\\(\\\\\\\\s*(array|real|double|float|int(eger)?|bool(ean)?|string|object|binary|unset|arraykey|nonnull|dict|vec|keyset)\\\\\\\\s*\\\\\\\\)\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(array|real|double|float|int(eger)?|bool(ean)?|string|class|clone|var|function|interface|trait|parent|self|object|arraykey|nonnull|dict|vec|keyset)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(global|abstract|const|extends|implements|final|p(r(ivate|otected)|ublic)|internal|static)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.php\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.expression.php\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"match\\\":\\\"\\\\\\\\.=?\\\",\\\"name\\\":\\\"keyword.operator.string.php\\\"},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.operator.key.php\\\"},{\\\"match\\\":\\\"==>\\\",\\\"name\\\":\\\"keyword.operator.lambda.php\\\"},{\\\"match\\\":\\\"\\\\\\\\|>\\\",\\\"name\\\":\\\"keyword.operator.pipe.php\\\"},{\\\"match\\\":\\\"(!==|!=|===|==)\\\",\\\"name\\\":\\\"keyword.operator.comparison.php\\\"},{\\\"match\\\":\\\"=|\\\\\\\\+=|\\\\\\\\-=|\\\\\\\\*=|/=|%=|&=|\\\\\\\\|=|\\\\\\\\^=|<<=|>>=\\\",\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},{\\\"match\\\":\\\"(<=|>=|<|>)\\\",\\\"name\\\":\\\"keyword.operator.comparison.php\\\"},{\\\"match\\\":\\\"(\\\\\\\\-\\\\\\\\-|\\\\\\\\+\\\\\\\\+)\\\",\\\"name\\\":\\\"keyword.operator.increment-decrement.php\\\"},{\\\"match\\\":\\\"(\\\\\\\\-|\\\\\\\\+|\\\\\\\\*|/|%)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.php\\\"},{\\\"match\\\":\\\"(!|&&|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.logical.php\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(as|is)\\\\\\\\b\\\\\\\\s+(?=[\\\\\\\\\\\\\\\\$a-z_])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.php\\\"}},\\\"end\\\":\\\"(?=[^\\\\\\\\\\\\\\\\$A-Za-z_0-9])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#variable-name\\\"}]},{\\\"match\\\":\\\"(?i)\\\\\\\\b(is|as)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.type.php\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"match\\\":\\\"<<|>>|~|\\\\\\\\^|&|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.php\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#instantiation\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"include\\\":\\\"#literal-collections\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.php\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"include\\\":\\\"#constants\\\"}]},\\\"literal-collections\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(Vector|ImmVector|Set|ImmSet|Map|ImmMap|Pair)\\\\\\\\s*({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.php\\\"}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.array.end.php\\\"}},\\\"name\\\":\\\"meta.collection.literal.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]},\\\"namespace\\\":{\\\"begin\\\":\\\"(?i)((namespace)|[a-z0-9_]+)?(\\\\\\\\\\\\\\\\)(?=.*?[^a-z_0-9\\\\\\\\\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.namespace.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"end\\\":\\\"(?i)(?=[a-z0-9_]*[^a-z0-9_\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"support.other.namespace.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)[a-z0-9_]+(?=\\\\\\\\\\\\\\\\)\\\",\\\"name\\\":\\\"entity.name.type.namespace.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\\\\\\\\\)\\\"}]},\\\"numbers\\\":{\\\"match\\\":\\\"\\\\\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\\\\\.?[0-9]*)|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.php\\\"},\\\"object\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(->)(\\\\\\\\$?\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.function-call.object.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.property.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(->)(?:([A-Za-z_][A-Za-z_0-9]*)\\\\\\\\s*\\\\\\\\(|((\\\\\\\\$+)?[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*))?\\\"}]},\\\"parameter-default-types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.operator.key.php\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},{\\\"include\\\":\\\"#instantiation\\\"},{\\\"begin\\\":\\\"(?xi)\\\\n\\\\\\\\s*\\\\n(?=\\\\n [a-z_0-9\\\\\\\\\\\\\\\\]+(::)\\\\n ([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)?\\\\n)\\\",\\\"end\\\":\\\"(?i)(::)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#class-name\\\"}]},{\\\"include\\\":\\\"#constants\\\"}]},\\\"php_doc\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"PHPDocumentor only recognises lines with an asterisk as the first non-whitespaces character\\\",\\\"match\\\":\\\"^(?!\\\\\\\\s*\\\\\\\\*).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"invalid.illegal.missing-asterisk.phpdoc.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.wrong-access-type.phpdoc.php\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\*\\\\\\\\s*(@access)\\\\\\\\s+((public|private|protected|internal)|(.+))\\\\\\\\s*$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.underline.link.php\\\"}},\\\"match\\\":\\\"(@xlink)\\\\\\\\s+(.+)\\\\\\\\s*$\\\"},{\\\"match\\\":\\\"\\\\\\\\@(a(bstract|uthor)|c(ategory|opyright)|example|global|internal|li(cense|nk)|pa(ckage|ram)|return|s(ee|ince|tatic|ubpackage)|t(hrows|odo)|v(ar|ersion)|uses|deprecated|final|ignore)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"}},\\\"match\\\":\\\"\\\\\\\\{(@(link)).+?\\\\\\\\}\\\",\\\"name\\\":\\\"meta.tag.inline.phpdoc.php\\\"}]},\\\"regex-double-quoted\\\":{\\\"begin\\\":\\\"(?<=re)\\\\\\\"/(?=(\\\\\\\\\\\\\\\\.|[^\\\\\\\"/])++/[imsxeADSUXu]*\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"(/)([imsxeADSUXu]*)(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.regexp.double-quoted.php\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Escaped from the regexp \u2013 there can also be 2 backslashes (since 1 will escape the first)\\\",\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\){1,2}[.$^\\\\\\\\[\\\\\\\\]{}]\\\",\\\"name\\\":\\\"constant.character.escape.regex.php\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\{)\\\\\\\\d+(,\\\\\\\\d+)?(\\\\\\\\})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repetition.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?\\\\\\\\])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.character-class.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"match\\\":\\\"[$^+*]\\\",\\\"name\\\":\\\"keyword.operator.regexp.php\\\"}]},\\\"regex-single-quoted\\\":{\\\"begin\\\":\\\"(?<=re)'/(?=(\\\\\\\\\\\\\\\\.|[^'/])++/[imsxeADSUXu]*')\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"(/)([imsxeADSUXu]*)(')\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.regexp.single-quoted.php\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\{)\\\\\\\\d+(,\\\\\\\\d+)?(\\\\\\\\})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repetition.php\\\"},{\\\"comment\\\":\\\"Escaped from the regexp \u2013 there can also be 2 backslashes (since 1 will escape the first)\\\",\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\){1,2}[.$^\\\\\\\\[\\\\\\\\]{}]\\\",\\\"name\\\":\\\"constant.character.escape.regex.php\\\"},{\\\"comment\\\":\\\"Escaped from the PHP string \u2013 there can also be 2 backslashes (since 1 will escape the first)\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\{1,2}[\\\\\\\\\\\\\\\\']\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?\\\\\\\\])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.character-class.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\'\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"}]},{\\\"match\\\":\\\"[$^+*]\\\",\\\"name\\\":\\\"keyword.operator.regexp.php\\\"}]},\\\"sql-string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"contentName\\\":\\\"source.sql.embedded.php\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.double.sql.php\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Open parens cause the next escaped character to not be captured as an\\\\nescape character. Example: $x = \\\\\\\"SELECT (\\\\\\\")\\\\\\\";\\\",\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"},{\\\"match\\\":\\\"#(\\\\\\\\\\\\\\\\\\\\\\\"|[^\\\\\\\"])*(?=\\\\\\\"|$\\\\\\\\n?)\\\",\\\"name\\\":\\\"comment.line.number-sign.sql\\\"},{\\\"match\\\":\\\"--(\\\\\\\\\\\\\\\\\\\\\\\"|[^\\\\\\\"])*(?=\\\\\\\"|$\\\\\\\\n?)\\\",\\\"name\\\":\\\"comment.line.double-dash.sql\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\"`']\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"comment\\\":\\\"Unclosed strings must be captured to avoid them eating the remainder of the PHP script\\\\nSample case: $sql = \\\\\\\"SELECT * FROM bar WHERE foo = '\\\\\\\" . $variable . \\\\\\\"'\\\\\\\"\\\",\\\"match\\\":\\\"'(?=((\\\\\\\\\\\\\\\\')|[^'\\\\\\\"])*(\\\\\\\"|$))\\\",\\\"name\\\":\\\"string.quoted.single.unclosed.sql\\\"},{\\\"comment\\\":\\\"Unclosed strings must be captured to avoid them eating the remainder of the PHP script\\\\nSample case: $sql = \\\\\\\"SELECT * FROM bar WHERE foo = '\\\\\\\" . $variable . \\\\\\\"'\\\\\\\"\\\",\\\"match\\\":\\\"`(?=((\\\\\\\\\\\\\\\\`)|[^`\\\\\\\"])*(\\\\\\\"|$))\\\",\\\"name\\\":\\\"string.quoted.other.backtick.unclosed.sql\\\"},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"`\\\",\\\"end\\\":\\\"`\\\",\\\"name\\\":\\\"string.quoted.other.backtick.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},\\\"sql-string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\\\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"contentName\\\":\\\"source.sql.embedded.php\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.single.sql.php\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Open parens cause the next escaped character to not be captured as an\\\\nescape character. Example: $x = 'SELECT (')';\\\",\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"},{\\\"match\\\":\\\"#(\\\\\\\\\\\\\\\\'|[^'])*(?='|$\\\\\\\\n?)\\\",\\\"name\\\":\\\"comment.line.number-sign.sql\\\"},{\\\"match\\\":\\\"--(\\\\\\\\\\\\\\\\'|[^'])*(?='|$\\\\\\\\n?)\\\",\\\"name\\\":\\\"comment.line.double-dash.sql\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\'`\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"comment\\\":\\\"Unclosed strings must be captured to avoid them eating the remainder of the PHP script\\\\nSample case: $sql = \\\\\\\"SELECT * FROM bar WHERE foo = '\\\\\\\" . $variable . \\\\\\\"'\\\\\\\"\\\",\\\"match\\\":\\\"`(?=((\\\\\\\\\\\\\\\\`)|[^`'])*('|$))\\\",\\\"name\\\":\\\"string.quoted.other.backtick.unclosed.sql\\\"},{\\\"comment\\\":\\\"Unclosed strings must be captured to avoid them eating the remainder of the PHP script\\\\nSample case: $sql = \\\\\\\"SELECT * FROM bar WHERE foo = '\\\\\\\" . $variable . \\\\\\\"'\\\\\\\"\\\",\\\"match\\\":\\\"\\\\\\\"(?=((\\\\\\\\\\\\\\\\\\\\\\\")|[^\\\\\\\"'])*('|$))\\\",\\\"name\\\":\\\"string.quoted.double.unclosed.sql\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},\\\"string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"comment\\\":\\\"This contentName is just to allow the usage of \u201Cselect scope\u201D to select the string contents first, then the string with quotes\\\",\\\"contentName\\\":\\\"meta.string-contents.quoted.double.php\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.double.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"contentName\\\":\\\"meta.string-contents.quoted.single.php\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.single.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\']\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regex-double-quoted\\\"},{\\\"include\\\":\\\"#sql-string-double-quoted\\\"},{\\\"include\\\":\\\"#string-double-quoted\\\"},{\\\"include\\\":\\\"#regex-single-quoted\\\"},{\\\"include\\\":\\\"#sql-string-single-quoted\\\"},{\\\"include\\\":\\\"#string-single-quoted\\\"}]},\\\"support\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\bapc_(s(tore|ma_info)|c(ompile_file|lear_cache|a(s|che_info))|inc|de(c|fine_constants|lete(_file)?)|exists|fetch|load_constants|add|bin_(dump(file)?|load(file)?))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.apc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s(huffle|izeof|ort)|n(ext|at(sort|casesort))|c(o(unt|mpact)|urrent)|in_array|u(sort|ksort|asort)|p(os|rev)|e(nd|ach|xtract)|k(sort|ey|rsort)|list|a(sort|r(sort|ray(_(s(hift|um|plice|earch|lice)|c(h(unk|ange_key_case)|o(unt_values|mbine))|intersect(_(u(key|assoc)|key|assoc))?|diff(_(u(key|assoc)|key|assoc))?|u(n(shift|ique)|intersect(_(uassoc|assoc))?|diff(_(uassoc|assoc))?)|p(op|ush|ad|roduct)|values|key(s|_exists)|f(il(ter|l(_keys)?)|lip)|walk(_recursive)?|r(e(duce|place(_recursive)?|verse)|and)|m(ultisort|erge(_recursive)?|ap)))?))|r(sort|eset|ange))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.array.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s(how_source|ys_getloadavg|leep)|highlight_(string|file)|con(stant|nection_(status|timeout|aborted))|time_(sleep_until|nanosleep)|ignore_user_abort|d(ie|efine(d)?)|u(sleep|n(iqid|pack))|__halt_compiler|p(hp_(strip_whitespace|check_syntax)|ack)|e(val|xit)|get_browser)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.basic_functions.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bbc(s(cale|ub|qrt)|comp|div|pow(mod)?|add|m(od|ul))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.bcmath.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bbz(c(ompress|lose)|open|decompress|err(str|no|or)|flush|write|read)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.bz2.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(GregorianToJD|cal_(to_jd|info|days_in_month|from_jd)|unixtojd|jdto(unix|jewish)|easter_da(ys|te)|J(ulianToJD|ewishToJD|D(MonthName|To(Gregorian|Julian|French)|DayOfWeek))|FrenchToJD)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.calendar.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(c(lass_(exists|alias)|all_user_method(_array)?)|trait_exists|i(s_(subclass_of|a)|nterface_exists)|__autoload|property_exists|get_(c(lass(_(vars|methods))?|alled_class)|object_vars|declared_(classes|traits|interfaces)|parent_class)|method_exists)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.classobj.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(com_(set|create_guid|i(senum|nvoke)|pr(int_typeinfo|op(set|put|get))|event_sink|load(_typelib)?|addref|release|get(_active_object)?|message_pump)|variant_(s(ub|et(_type)?)|n(ot|eg)|c(a(st|t)|mp)|i(nt|div|mp)|or|d(iv|ate_(to_timestamp|from_timestamp))|pow|eqv|fix|a(nd|dd|bs)|round|get_type|xor|m(od|ul)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.com.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bctype_(space|cntrl|digit|upper|p(unct|rint)|lower|al(num|pha)|graph|xdigit)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ctype.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bcurl_(setopt(_array)?|c(opy_handle|lose)|init|e(rr(no|or)|xec)|version|getinfo|multi_(select|close|in(it|fo_read)|exec|add_handle|remove_handle|getcontent))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.curl.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(str(totime|ptime|ftime)|checkdate|time(zone_(name_(from_abbr|get)|transitions_get|identifiers_list|o(pen|ffset_get)|version_get|location_get|abbreviations_list))?|idate|date(_(su(n(set|_info|rise)|b)|create(_from_format)?|time(stamp_(set|get)|zone_(set|get)|_set)|i(sodate_set|nterval_(create_from_date_string|format))|offset_get|d(iff|efault_timezone_(set|get)|ate_set)|parse(_from_format)?|format|add|get_last_errors|modify))?|localtime|g(et(timeofday|date)|m(strftime|date|mktime))|m(icrotime|ktime))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.datetime.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bdba_(sync|handlers|nextkey|close|insert|op(timize|en)|delete|popen|exists|key_split|f(irstkey|etch)|list|replace)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.dba.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bdbx_(sort|c(o(nnect|mpare)|lose)|e(scape_string|rror)|query|fetch_row)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.dbx.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(scandir|c(h(dir|root)|losedir)|opendir|dir|re(winddir|addir)|getcwd)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.dir.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bdotnet_load\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.dotnet.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\beio_(s(y(nc(_file_range|fs)?|mlink)|tat(vfs)?|e(ndfile|t_m(in_parallel|ax_(idle|p(oll_(time|reqs)|arallel)))|ek))|n(threads|op|pending|re(qs|ady))|c(h(own|mod)|ustom|lose|ancel)|truncate|init|open|dup2|u(nlink|time)|poll|event_loop|f(s(ync|tat(vfs)?)|ch(own|mod)|truncate|datasync|utime|allocate)|write|l(stat|ink)|r(e(name|a(d(dir|link|ahead)?|lpath))|mdir)|g(et_(event_stream|last_error)|rp(_(cancel|limit|add))?)|mk(nod|dir)|busy)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.eio.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\benchant_(dict_(s(tore_replacement|uggest)|check|is_in_session|describe|quick_check|add_to_(session|personal)|get_error)|broker_(set_ordering|init|d(ict_exists|escribe)|free(_dict)?|list_dicts|request_(dict|pwl_dict)|get_error))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.enchant.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s(plit(i)?|ql_regcase)|ereg(i(_replace)?|_replace)?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ereg.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(set_e(rror_handler|xception_handler)|trigger_error|debug_(print_backtrace|backtrace)|user_error|error_(log|reporting|get_last)|restore_e(rror_handler|xception_handler))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.errorfunc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s(hell_exec|ystem)|p(assthru|roc_(nice|close|terminate|open|get_status))|e(scapeshell(cmd|arg)|xec))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.exec.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(exif_(t(humbnail|agname)|imagetype|read_data)|read_exif_data)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.exif.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s(ymlink|tat|et_file_buffer)|c(h(own|grp|mod)|opy|learstatcache)|t(ouch|empnam|mpfile)|is_(dir|uploaded_file|executable|file|writ(eable|able)|link|readable)|d(i(sk(_(total_space|free_space)|freespace)|rname)|elete)|u(nlink|mask)|p(close|open|a(thinfo|rse_ini_(string|file)))|f(s(canf|tat|eek)|nmatch|close|t(ell|runcate)|ile(size|ctime|type|inode|owner|_(put_contents|exists|get_contents)|perms|atime|group|mtime)?|open|p(ut(s|csv)|assthru)|eof|flush|write|lock|read|get(s(s)?|c(sv)?))|l(stat|ch(own|grp)|ink(info)?)|r(e(name|wind|a(d(file|link)|lpath(_cache_(size|get))?))|mdir)|glob|m(ove_uploaded_file|kdir)|basename)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.file.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(finfo_(set_flags|close|open|file|buffer)|mime_content_type)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.fileinfo.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bfilter_(has_var|i(nput(_array)?|d)|var(_array)?|list)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.filter.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(c(all_user_func(_array)?|reate_function)|unregister_tick_function|f(orward_static_call(_array)?|unc(tion_exists|_(num_args|get_arg(s)?)))|register_(shutdown_function|tick_function)|get_defined_functions)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.funchand.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(ngettext|textdomain|d(ngettext|c(ngettext|gettext)|gettext)|gettext|bind(textdomain|_textdomain_codeset))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.gettext.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bgmp_(s(can(1|0)|trval|ign|ub|etbit|qrt(rem)?)|hamdist|ne(g|xtprime)|c(om|lrbit|mp)|testbit|in(tval|it|vert)|or|div(_(q(r)?|r)|exact)?|jacobi|p(o(pcount|w(m)?)|erfect_square|rob_prime)|fact|legendre|a(nd|dd|bs)|random|gcd(ext)?|xor|m(od|ul))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.gmp.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bhash(_(hmac(_file)?|copy|init|update(_(stream|file))?|pbkdf2|fi(nal|le)|algos))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.hash.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(http_(s(upport|end_(st(atus|ream)|content_(type|disposition)|data|file|last_modified))|head|negotiate_(c(harset|ontent_type)|language)|c(hunked_decode|ache_(etag|last_modified))|throttle|inflate|d(eflate|ate)|p(ost_(data|fields)|ut_(stream|data|file)|ersistent_handles_(c(ount|lean)|ident)|arse_(headers|cookie|params|message))|re(direct|quest(_(method_(name|unregister|exists|register)|body_encode))?)|get(_request_(headers|body(_stream)?))?|match_(etag|request_header|modified)|build_(str|cookie|url))|ob_(inflatehandler|deflatehandler|etaghandler))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.http.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(iconv(_(s(tr(pos|len|rpos)|ubstr|et_encoding)|get_encoding|mime_(decode(_headers)?|encode)))?|ob_iconv_handler)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.iconv.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\biis_(s(t(op_serv(ice|er)|art_serv(ice|er))|et_(s(cript_map|erver_rights)|dir_security|app_settings))|add_server|remove_server|get_(s(cript_map|erv(ice_state|er_(rights|by_(comment|path))))|dir_security))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.iisfunc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(i(ptc(parse|embed)|mage(s(y|tring(up)?|et(style|t(hickness|ile)|pixel|brush)|avealpha|x)|c(har(up)?|o(nvolution|py(res(ized|ampled)|merge(gray)?)?|lor(s(total|et|forindex)|closest(hwb|alpha)?|transparent|deallocate|exact(alpha)?|a(t|llocate(alpha)?)|resolve(alpha)?|match))|reate(truecolor|from(string|jpeg|png|wbmp|g(if|d(2(part)?)?)|x(pm|bm)))?)|t(ypes|tf(text|bbox)|ruecolortopalette)|i(struecolor|nterlace)|2wbmp|d(estroy|ashedline)|jpeg|_type_to_(extension|mime_type)|p(s(slantfont|text|e(ncodefont|xtendfont)|freefont|loadfont|bbox)|ng|olygon|alettecopy)|ellipse|f(t(text|bbox)|il(ter|l(toborder|ed(polygon|ellipse|arc|rectangle))?)|ont(height|width))|wbmp|l(ine|oadfont|ayereffect)|a(ntialias|lphablending|rc)|r(otate|ectangle)|g(if|d(2)?|ammacorrect|rab(screen|window))|xbm))|jpeg2wbmp|png2wbmp|g(d_info|etimagesize(fromstring)?))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.image.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s(ys_get_temp_dir|et_(time_limit|include_path|magic_quotes_runtime))|ini_(set|alter|restore|get(_all)?)|zend_(thread_id|version|logo_guid)|dl|p(hp(credits|info|_(sapi_name|ini_(scanned_files|loaded_file)|uname|logo_guid)|version)|utenv)|extension_loaded|version_compare|assert(_options)?|restore_include_path|g(c_(collect_cycles|disable|enable(d)?)|et(opt|_(c(urrent_user|fg_var)|include(d_files|_path)|defined_constants|extension_funcs|loaded_extensions|required_files|magic_quotes_(runtime|gpc))|env|lastmod|rusage|my(inode|uid|pid|gid)))|m(emory_get_(usage|peak_usage)|a(in|gic_quotes_runtime)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.info.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bibase_(se(t_event_handler|rv(ice_(detach|attach)|er_info))|n(um_(params|fields)|ame_result)|c(o(nnect|mmit(_ret)?)|lose)|trans|d(elete_user|rop_db|b_info)|p(connect|aram_info|repare)|e(rr(code|msg)|xecute)|query|f(ield_info|etch_(object|assoc|row)|ree_(event_handler|query|result))|wait_event|a(dd_user|ffected_rows)|r(ollback(_ret)?|estore)|gen_id|m(odify_user|aintain_db)|b(lob_(c(lose|ancel|reate)|i(nfo|mport)|open|echo|add|get)|ackup))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.interbase.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(n(ormalizer_(normalize|is_normalized)|umfmt_(set_(symbol|text_attribute|pattern|attribute)|create|parse(_currency)?|format(_currency)?|get_(symbol|text_attribute|pattern|error_(code|message)|locale|attribute)))|collator_(s(ort(_with_sort_keys)?|et_(strength|attribute))|c(ompare|reate)|asort|get_(s(trength|ort_key)|error_(code|message)|locale|attribute))|transliterator_(create(_(inverse|from_rules))?|transliterate|list_ids|get_error_(code|message))|i(ntl_(is_failure|error_name|get_error_(code|message))|dn_to_(u(nicode|tf8)|ascii))|datefmt_(set_(calendar|timezone(_id)?|pattern|lenient)|create|is_lenient|parse|format(_object)?|localtime|get_(calendar(_object)?|time(type|zone(_id)?)|datetype|pattern|error_(code|message)|locale))|locale_(set_default|compose|parse|filter_matches|lookup|accept_from_http|get_(script|d(isplay_(script|name|variant|language|region)|efault)|primary_language|keywords|all_variants|region))|resourcebundle_(c(ount|reate)|locales|get(_error_(code|message))?)|grapheme_(s(tr(str|i(str|pos)|pos|len|r(ipos|pos))|ubstr)|extract)|msgfmt_(set_pattern|create|parse(_message)?|format(_message)?|get_(pattern|error_(code|message)|locale)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.intl.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bjson_(decode|encode|last_error)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.json.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bldap_(s(tart_tls|ort|e(t_(option|rebind_proc)|arch)|asl_bind)|next_(entry|attribute|reference)|c(o(n(nect|trol_paged_result(_response)?)|unt_entries|mpare)|lose)|t61_to_8859|d(n2ufn|elete)|8859_to_t61|unbind|parse_re(sult|ference)|e(rr(no|2str|or)|xplode_dn)|f(irst_(entry|attribute|reference)|ree_result)|list|add|re(name|ad)|get_(option|dn|entries|values(_len)?|attributes)|mod(ify|_(del|add|replace))|bind)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ldap.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\blibxml_(set_(streams_context|external_entity_loader)|clear_errors|disable_entity_loader|use_internal_errors|get_(errors|last_error))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.libxml.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(ezmlm_hash|mail)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mail.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s(in(h)?|qrt|rand)|h(ypot|exdec)|c(os(h)?|eil)|tan(h)?|is_(nan|infinite|finite)|octdec|de(c(hex|oct|bin)|g2rad)|p(i|ow)|exp(m1)?|f(loor|mod)|l(cg_value|og(1(p|0))?)|a(sin(h)?|cos(h)?|tan(h|2)?|bs)|r(ound|a(nd|d2deg))|getrandmax|m(t_(srand|rand|getrandmax)|in|ax)|b(indec|ase_convert))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.math.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmb_(s(tr(str|cut|to(upper|lower)|i(str|pos|mwidth)|pos|width|len|r(chr|i(chr|pos)|pos))|ubst(itute_character|r(_count)?)|plit|end_mail)|http_(input|output)|c(heck_encoding|onvert_(case|encoding|variables|kana))|internal_encoding|output_handler|de(code_(numericentity|mimeheader)|tect_(order|encoding))|p(arse_str|referred_mime_name)|e(ncod(ing_aliases|e_(numericentity|mimeheader))|reg(i(_replace)?|_(search(_(setpos|init|pos|regs|get(pos|regs)))?|replace(_callback)?|match))?)|l(ist_encodings|anguage)|regex_(set_options|encoding)|get_info)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mbstring.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bm(crypt_(c(fb|reate_iv|bc)|ofb|decrypt|e(nc(_(self_test|is_block_(algorithm(_mode)?|mode)|get_(supported_key_sizes|iv_size|key_size|algorithms_name|modes_name|block_size))|rypt)|cb)|list_(algorithms|modes)|ge(neric(_(init|deinit|end))?|t_(cipher_name|iv_size|key_size|block_size))|module_(self_test|close|is_block_(algorithm(_mode)?|mode)|open|get_(supported_key_sizes|algo_(key_size|block_size))))|decrypt_generic)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mcrypt.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmemcache_debug\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.memcache.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmhash(_(count|keygen_s2k|get_(hash_name|block_size)))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mhash.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bbson_(decode|encode)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mongo.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysql_(s(tat|e(t_charset|lect_db))|num_(fields|rows)|c(onnect|l(ient_encoding|ose)|reate_db)|t(hread_id|ablename)|in(sert_id|fo)|d(ata_seek|rop_db|b_(name|query))|unbuffered_query|p(connect|ing)|e(scape_string|rr(no|or))|query|f(ield_(seek|name|t(ype|able)|flags|len)|etch_(object|field|lengths|a(ssoc|rray)|row)|ree_result)|list_(tables|dbs|processes|fields)|affected_rows|re(sult|al_escape_string)|get_(server_info|host_info|client_info|proto_info))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysql.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqli_(s(sl_set|t(ore_result|at|mt_(s(tore_result|end_long_data)|next_result|close|init|data_seek|prepare|execute|f(etch|ree_result)|attr_(set|get)|res(ult_metadata|et)|get_(warnings|result)|more_results|bind_(param|result)))|e(nd_(query|long_data)|t_(charset|opt|local_infile_(handler|default))|lect_db)|lave_query)|next_result|c(ha(nge_user|racter_set_name)|o(nnect|mmit)|l(ient_encoding|ose))|thread_safe|init|options|d(isable_r(pl_parse|eads_from_master)|ump_debug_info|ebug|ata_seek)|use_result|p(ing|oll|aram_count|repare)|e(scape_string|nable_r(pl_parse|eads_from_master)|xecute|mbedded_server_(start|end))|kill|query|f(ield_seek|etch(_(object|field(s|_direct)?|a(ssoc|ll|rray)|row))?|ree_result)|autocommit|r(ollback|pl_(p(arse_enabled|robe)|query_type)|e(port|fresh|a(p_async_query|l_(connect|escape_string|query))))|get_(c(harset|onnection_stats|lient_(stats|info|version)|ache_stats)|warnings|metadata)|m(ore_results|ulti_query|aster_query)|bind_(param|result))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqli.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_memcache_(set|get_config)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-memcache.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_ms_(set_(user_pick_server|qos)|query_is_select|get_(stats|last_(used_connection|gtid))|match_wild)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-ms.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_qc_(set_(storage_handler|cache_condition|is_select|user_handlers)|clear_cache|get_(normalized_query_trace_log|c(ore_stats|ache_info)|query_trace_log|available_handlers))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-qc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_uh_(set_(statement_proxy|connection_proxy)|convert_to_mysqlnd)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-uh.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s(yslog|ocket_(set_(timeout|blocking)|get_status)|et(cookie|rawcookie))|h(ttp_response_code|eader(s_(sent|list)|_re(gister_callback|move))?)|c(heckdnsrr|loselog)|i(net_(ntop|pton)|p2long)|openlog|d(ns_(check_record|get_(record|mx))|efine_syslog_variables)|pfsockopen|fsockopen|long2ip|get(servby(name|port)|host(name|by(name(l)?|addr))|protobyn(umber|ame)|mxrr))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.network.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bnsapi_(virtual|re(sponse_headers|quest_headers))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.nsapi.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(deaggregate|aggregat(ion_info|e(_(info|properties(_by_(list|regexp))?|methods(_by_(list|regexp))?))?))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.objaggregation.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\boci(s(tatementtype|e(tprefetch|rverversion)|avelob(file)?)|n(umcols|ew(c(ollection|ursor)|descriptor)|logon)|c(o(l(umn(s(cale|ize)|name|type(raw)?|isnull|precision)|l(size|trim|a(ssign(elem)?|ppend)|getelem|max))|mmit)|loselob|ancel)|internaldebug|definebyname|_(s(tatement_type|e(t_(client_i(nfo|dentifier)|prefetch|edition|action|module_name)|rver_version))|n(um_(fields|rows)|ew_(c(o(nnect|llection)|ursor)|descriptor))|c(o(nnect|mmit)|l(ient_version|ose)|ancel)|internal_debug|define_by_name|p(connect|a(ssword_change|rse))|e(rror|xecute)|f(ield_(s(cale|ize)|name|type(_raw)?|is_null|precision)|etch(_(object|a(ssoc|ll|rray)|row))?|ree_(statement|descriptor))|lob_(copy|is_equal)|r(ollback|esult)|bind_(array_by_name|by_name))|p(logon|arse)|e(rror|xecute)|f(etch(statement|into)?|ree(statement|c(ollection|ursor)|desc))|write(temporarylob|lobtofile)|lo(adlob|go(n|ff))|r(o(wcount|llback)|esult)|bindbyname)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.oci8.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bopenssl_(s(ign|eal)|c(sr_(sign|new|export(_to_file)?|get_(subject|public_key))|ipher_iv_length)|open|d(h_compute_key|igest|ecrypt)|p(ublic_(decrypt|encrypt)|k(cs(12_(export(_to_file)?|read)|7_(sign|decrypt|encrypt|verify))|ey_(new|export(_to_file)?|free|get_(details|p(ublic|rivate))))|rivate_(decrypt|encrypt))|e(ncrypt|rror_string)|verify|free_key|random_pseudo_bytes|get_(cipher_methods|p(ublickey|rivatekey)|md_methods)|x509_(check(_private_key|purpose)|parse|export(_to_file)?|free|read))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.openssl.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(o(utput_(add_rewrite_var|reset_rewrite_vars)|b_(start|clean|implicit_flush|end_(clean|flush)|flush|list_handlers|g(zhandler|et_(status|c(ontents|lean)|flush|le(ngth|vel)))))|flush)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.output.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bpassword_(hash|needs_rehash|verify|get_info)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.password.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bpcntl_(s(ig(nal(_dispatch)?|timedwait|procmask|waitinfo)|etpriority)|exec|fork|w(stopsig|termsig|if(s(topped|ignaled)|exited)|exitstatus|ait(pid)?)|alarm|getpriority)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.pcntl.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bpg_(se(nd_(prepare|execute|query(_params)?)|t_(client_encoding|error_verbosity)|lect)|host|num_(fields|rows)|c(o(n(nect(ion_(status|reset|busy))?|vert)|py_(to|from))|l(ient_encoding|ose)|ancel_query)|t(ty|ra(nsaction_status|ce))|insert|options|d(elete|bname)|u(n(trace|escape_bytea)|pdate)|p(connect|ing|ort|ut_line|arameter_status|repare)|e(scape_(string|identifier|literal|bytea)|nd_copy|xecute)|version|query(_params)?|f(ield_(size|n(um|ame)|t(ype(_oid)?|able)|is_null|prtlen)|etch_(object|a(ssoc|ll(_columns)?|rray)|r(ow|esult))|ree_result)|l(o_(seek|c(lose|reate)|tell|import|open|unlink|export|write|read(_all)?)|ast_(notice|oid|error))|affected_rows|result_(s(tatus|eek)|error(_field)?)|get_(notify|pid|result)|meta_data)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.pgsql.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(virtual|apache_(setenv|note|child_terminate|lookup_uri|re(s(ponse_headers|et_timeout)|quest_headers)|get(_(version|modules)|env))|getallheaders)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_apache.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bdom_import_simplexml\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_dom.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bftp_(s(sl_connect|ystype|i(te|ze)|et_option)|n(list|b_(continue|put|f(put|get)|get))|c(h(dir|mod)|onnect|dup|lose)|delete|p(ut|wd|asv)|exec|quit|f(put|get)|login|alloc|r(ename|aw(list)?|mdir)|get(_option)?|m(dtm|kdir))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_ftp.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bimap_(s(can(mailbox)?|tatus|ort|ubscribe|e(t(_quota|flag_full|acl)|arch)|avebody)|header(s|info)?|num_(recent|msg)|c(heck|l(ose|earflag_full)|reate(mailbox)?)|t(hread|imeout)|open|delete(mailbox)?|8bit|u(n(subscribe|delete)|tf(7_(decode|encode)|8)|id)|ping|e(rrors|xpunge)|qprint|fetch(structure|header|text|_overview|mime|body)|l(sub|ist(s(can|ubscribed)|mailbox)?|ast_error)|a(ppend|lerts)|r(e(name(mailbox)?|open)|fc822_(parse_(headers|adrlist)|write_address))|g(c|et(subscribed|_quota(root)?|acl|mailboxes))|m(sgno|ime_header_decode|ail(_(co(py|mpose)|move)|boxmsginfo)?)|b(inary|ody(struct)?|ase64))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_imap.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmssql_(select_db|n(um_(fields|rows)|ext_result)|c(onnect|lose)|init|data_seek|pconnect|execute|query|f(ield_(seek|name|type|length)|etch_(object|field|a(ssoc|rray)|row|batch)|ree_(statement|result))|r(ows_affected|esult)|g(uid_string|et_last_message)|min_(error_severity|message_severity)|bind)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_mssql.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bodbc_(s(tatistics|pecialcolumns|etoption)|n(um_(fields|rows)|ext_result)|c(o(nnect|lumn(s|privileges)|mmit)|ursor|lose(_all)?)|table(s|privileges)|d(o|ata_source)|p(connect|r(imarykeys|ocedure(s|columns)|epare))|e(rror(msg)?|xec(ute)?)|f(ield_(scale|n(um|ame)|type|precision|len)|oreignkeys|etch_(into|object|array|row)|ree_result)|longreadlen|autocommit|r(ollback|esult(_all)?)|gettypeinfo|binmode)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_odbc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bpreg_(split|quote|filter|last_error|replace(_callback)?|grep|match(_all)?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_pcre.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(spl_(classes|object_hash|autoload(_(call|unregister|extensions|functions|register))?)|class_(implements|uses|parents)|iterator_(count|to_array|apply))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_spl.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bzip_(close|open|entry_(name|c(ompress(ionmethod|edsize)|lose)|open|filesize|read)|read)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_zip.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bposix_(s(trerror|et(sid|uid|pgid|e(uid|gid)|gid))|ctermid|t(tyname|imes)|i(satty|nitgroups)|uname|errno|kill|access|get(sid|cwd|uid|_last_error|p(id|pid|w(nam|uid)|g(id|rp))|e(uid|gid)|login|rlimit|g(id|r(nam|oups|gid)))|mk(nod|fifo))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.posix.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bset(threadtitle|proctitle)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.proctitle.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bpspell_(s(tore_replacement|uggest|ave_wordlist)|new(_(config|personal))?|c(heck|onfig_(save_repl|create|ignore|d(ict_dir|ata_dir)|personal|r(untogether|epl)|mode)|lear_session)|add_to_(session|personal))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.pspell.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\breadline(_(c(ompletion_function|lear_history|allback_(handler_(install|remove)|read_char))|info|on_new_line|write_history|list_history|add_history|re(display|ad_history)))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.readline.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\brecode(_(string|file))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.recode.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\brrd_(create|tune|info|update|error|version|f(irst|etch)|last(update)?|restore|graph|xport)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.rrd.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s(hm_(has_var|detach|put_var|attach|remove(_var)?|get_var)|em_(acquire|re(lease|move)|get))|ftok|msg_(s(tat_queue|e(nd|t_queue))|queue_exists|re(ceive|move_queue)|get_queue))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sem.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bsession_(s(ta(tus|rt)|et_(save_handler|cookie_params)|ave_path)|name|c(ommit|ache_(expire|limiter))|i(s_registered|d)|de(stroy|code)|un(set|register)|encode|write_close|reg(ister(_shutdown)?|enerate_id)|get_cookie_params|module_name)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.session.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bshmop_(size|close|open|delete|write|read)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.shmop.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bsimplexml_(import_dom|load_(string|file))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.simplexml.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bsnmp(set|2_(set|walk|real_walk|get(next)?)|_(set_(oid_(numeric_print|output_format)|enum_print|valueretrieval|quick_print)|read_mib|get_(valueretrieval|quick_print))|3_(set|walk|real_walk|get(next)?)|walk(oid)?|realwalk|get(next)?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.snmp.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(is_soap_fault|use_soap_error_handler)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.soap.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bsocket_(s(hutdown|trerror|e(nd(to)?|t_(nonblock|option|block)|lect))|c(onnect|l(ose|ear_error)|reate(_(pair|listen))?)|import_stream|write|l(isten|ast_error)|accept|re(cv(from)?|ad)|get(sockname|_option|peername)|bind)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sockets.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bsqlite_(s(ingle_query|eek)|has_(prev|more)|n(um_(fields|rows)|ext)|c(hanges|olumn|urrent|lose|reate_(function|aggregate))|open|u(nbuffered_query|df_(decode_binary|encode_binary))|p(open|rev)|e(scape_string|rror_string|xec)|valid|key|query|f(ield_name|etch_(s(tring|ingle)|column_types|object|a(ll|rray))|actory)|l(ib(encoding|version)|ast_(insert_rowid|error))|array_query|rewind|busy_timeout)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sqlite.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bsqlsrv_(se(nd_stream_data|rver_info)|has_rows|n(um_(fields|rows)|ext_result)|c(o(n(nect|figure)|mmit)|l(ient_info|ose)|ancel)|prepare|e(rrors|xecute)|query|f(ield_metadata|etch(_(object|array))?|ree_stmt)|ro(ws_affected|llback)|get_(config|field)|begin_transaction)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sqlsrv.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bstats_(s(ta(ndard_deviation|t_(noncentral_t|correlation|in(nerproduct|dependent_t)|p(owersum|ercentile|aired_t)|gennch|binomial_coef))|kew)|harmonic_mean|c(ovariance|df_(n(oncentral_(chisquare|f)|egative_binomial)|c(hisquare|auchy)|t|uniform|poisson|exponential|f|weibull|l(ogistic|aplace)|gamma|b(inomial|eta)))|den(s_(n(ormal|egative_binomial)|c(hisquare|auchy)|t|pmf_(hypergeometric|poisson|binomial)|exponential|f|weibull|l(ogistic|aplace)|gamma|beta)|_uniform)|variance|kurtosis|absolute_deviation|rand_(setall|phrase_to_seeds|ranf|ge(n_(no(ncen(tral_(t|f)|ral_chisquare)|rmal)|chisquare|t|i(nt|uniform|poisson|binomial(_negative)?)|exponential|f(uniform)?|gamma|beta)|t_seeds)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.stats.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bs(tream_(s(ocket_(s(hutdown|e(ndto|rver))|client|pair|enable_crypto|accept|recvfrom|get_name)|upports_lock|e(t_(chunk_size|timeout|write_buffer|read_buffer|blocking)|lect))|notification_callback|co(ntext_(set_(option|default|params)|create|get_(options|default|params))|py_to_stream)|is_local|encoding|filter_(prepend|append|re(gister|move))|wrapper_(unregister|re(store|gister))|re(solve_include_path|gister_wrapper)|get_(contents|transports|filters|wrappers|line|meta_data)|bucket_(new|prepend|append|make_writeable))|et_socket_blocking)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.streamsfuncs.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s(scanf|ha1(_file)?|tr(s(tr|pn)|n(c(asecmp|mp)|atc(asecmp|mp))|c(spn|hr|oll|asecmp|mp)|t(o(upper|k|lower)|r)|i(str|p(slashes|cslashes|os|_tags))|_(s(huffle|plit)|ireplace|pad|word_count|r(ot13|ep(eat|lace))|getcsv)|p(os|brk)|len|r(chr|ipos|pos|ev))|imilar_text|oundex|ubstr(_(co(unt|mpare)|replace))?|printf|etlocale)|h(tml(specialchars(_decode)?|_entity_decode|entities)|e(x2bin|brev(c)?))|n(umber_format|l(2br|_langinfo))|c(h(op|unk_split|r)|o(nvert_(cyr_string|uu(decode|encode))|unt_chars)|r(ypt|c32))|trim|implode|ord|uc(first|words)|join|p(arse_str|rint(f)?)|e(cho|xplode)|v(sprintf|printf|fprintf)|quote(d_printable_(decode|encode)|meta)|fprintf|wordwrap|l(cfirst|trim|ocaleconv|evenshtein)|add(slashes|cslashes)|rtrim|get_html_translation_table|m(oney_format|d5(_file)?|etaphone)|bin2hex)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.string.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bsybase_(se(t_message_handler|lect_db)|num_(fields|rows)|c(onnect|lose)|d(eadlock_retry_count|ata_seek)|unbuffered_query|pconnect|query|f(ield_seek|etch_(object|field|a(ssoc|rray)|row)|ree_result)|affected_rows|result|get_last_message|min_(server_severity|client_severity|error_severity|message_severity))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sybase.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(taint|is_tainted|untaint)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.taint.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(tidy_(s(et(opt|_encoding)|ave_config)|c(onfig_count|lean_repair)|is_x(html|ml)|diagnose|parse_(string|file)|error_count|warning_count|load_config|access_count|re(set_config|pair_(string|file))|get(opt|_(status|h(tml(_ver)?|ead)|config|o(utput|pt_doc)|r(oot|elease)|body)))|ob_tidyhandler)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.tidy.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\btoken_(name|get_all)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.tokenizer.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\btrader_(s(t(och(f|rsi)?|ddev)|in(h)?|u(m|b)|et_(compat|unstable_period)|qrt|ar(ext)?|ma)|ht_(sine|trend(line|mode)|dcp(hase|eriod)|phasor)|natr|c(ci|o(s(h)?|rrel)|dl(s(ho(otingstar|rtline)|t(icksandwich|alledpattern)|pinningtop|eparatinglines)|h(i(kkake(mod)?|ghwave)|omingpigeon|a(ngingman|rami(cross)?|mmer))|c(o(ncealbabyswall|unterattack)|losingmarubozu)|t(hrusting|a(sukigap|kuri)|ristar)|i(n(neck|vertedhammer)|dentical3crows)|2crows|onneck|d(oji(star)?|arkcloudcover|ragonflydoji)|u(nique3river|psidegap2crows)|3(starsinsouth|inside|outside|whitesoldiers|linestrike|blackcrows)|piercing|e(ngulfing|vening(star|dojistar))|kicking(bylength)?|l(ongl(ine|eggeddoji)|adderbottom)|a(dvanceblock|bandonedbaby)|ri(sefall3methods|ckshawman)|g(apsidesidewhite|ravestonedoji)|xsidegap3methods|m(orning(star|dojistar)|a(t(hold|chinglow)|rubozu))|b(elthold|reakaway))|eil|mo)|t(sf|ypprice|3|ema|an(h)?|r(i(x|ma)|ange))|obv|d(iv|ema|x)|ultosc|p(po|lus_d(i|m))|e(rrno|xp|ma)|var|kama|floor|w(clprice|illr|ma)|l(n|inearreg(_(slope|intercept|angle))?|og10)|a(sin|cos|t(an|r)|d(osc|d|x(r)?)?|po|vgprice|roon(osc)?)|r(si|oc(p|r(100)?)?)|get_(compat|unstable_period)|m(i(n(index|us_d(i|m)|max(index)?)?|dp(oint|rice))|om|ult|edprice|fi|a(cd(ext|fix)?|vp|x(index)?|ma)?)|b(op|eta|bands))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.trader.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(http_build_query|url(decode|encode)|parse_url|rawurl(decode|encode)|get_(headers|meta_tags)|base64_(decode|encode))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.url.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(s(trval|e(ttype|rialize))|i(s(set|_(s(calar|tring)|nu(ll|meric)|callable|int(eger)?|object|double|float|long|array|re(source|al)|bool|arraykey|nonnull|dict|vec|keyset))|ntval|mport_request_variables)|d(oubleval|ebug_zval_dump)|unse(t|rialize)|print_r|empty|var_(dump|export)|floatval|get(type|_(defined_vars|resource_type))|boolval)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.var.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bwddx_(serialize_va(lue|rs)|deserialize|packet_(start|end)|add_vars)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.wddx.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bxhprof_(sample_(disable|enable)|disable|enable)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xhprof.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(utf8_(decode|encode)|xml_(set_(start_namespace_decl_handler|notation_decl_handler|character_data_handler|object|default_handler|unparsed_entity_decl_handler|processing_instruction_handler|e(nd_namespace_decl_handler|lement_handler|xternal_entity_ref_handler))|parse(_into_struct|r_(set_option|create(_ns)?|free|get_option))?|error_string|get_(current_(column_number|line_number|byte_index)|error_code)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xml.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bxmlrpc_(se(t_type|rver_(c(all_method|reate)|destroy|add_introspection_data|register_(introspection_callback|method)))|is_fault|decode(_request)?|parse_method_descriptions|encode(_request)?|get_type)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xmlrpc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bxmlwriter_(s(tart_(c(omment|data)|d(td(_(e(ntity|lement)|attlist))?|ocument)|pi|element(_ns)?|attribute(_ns)?)|et_indent(_string)?)|text|o(utput_memory|pen_(uri|memory))|end_(c(omment|data)|d(td(_(e(ntity|lement)|attlist))?|ocument)|pi|element|attribute)|f(ull_end_element|lush)|write_(c(omment|data)|dtd(_(e(ntity|lement)|attlist))?|pi|element(_ns)?|attribute(_ns)?|raw))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xmlwriter.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bxslt_(set(opt|_(s(cheme_handler(s)?|ax_handler(s)?)|object|e(ncoding|rror_handler)|log|base))|create|process|err(no|or)|free|getopt|backend_(name|info|version))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xslt.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(zlib_(decode|encode|get_coding_type)|readgzfile|gz(seek|c(ompress|lose)|tell|inflate|open|de(code|flate)|uncompress|p(uts|assthru)|e(ncode|of)|file|write|re(wind|ad)|get(s(s)?|c)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.zlib.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bis_int(eger)?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.alias.php\\\"}]},\\\"type-annotation\\\":{\\\"name\\\":\\\"support.type.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:bool|int|float|string|resource|mixed|arraykey|nonnull|dict|vec|keyset)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.php\\\"},{\\\"begin\\\":\\\"([A-Za-z_][A-Za-z0-9_]*)<\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.php\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"}]},{\\\"begin\\\":\\\"(shape\\\\\\\\()\\\",\\\"end\\\":\\\"((,|\\\\\\\\.\\\\\\\\.\\\\\\\\.)?\\\\\\\\s*\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.key.php\\\"}},\\\"name\\\":\\\"storage.type.shape.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#constants\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"}]},{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"user-function-call\\\":{\\\"begin\\\":\\\"(?i)(?=[a-z_0-9\\\\\\\\\\\\\\\\]*[a-z_][a-z0-9_]*\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?i)[a-z_][a-z_0-9]*(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.function.php\\\"}},\\\"name\\\":\\\"meta.function-call.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},\\\"var_basic\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\$+)[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*?\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.php\\\"}]},\\\"var_global\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)((_(COOKIE|FILES|GET|POST|REQUEST))|arg(v|c))\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.global.php\\\"},\\\"var_global_safer\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)((GLOBALS|_(ENV|SERVER|SESSION)))\\\",\\\"name\\\":\\\"variable.other.global.safer.php\\\"},\\\"variable-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#var_global\\\"},{\\\"include\\\":\\\"#var_global_safer\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.property.php\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.php\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.index.php\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.other.index.php\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"10\\\":{\\\"name\\\":\\\"string.unquoted.index.php\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.section.array.end.php\\\"}},\\\"comment\\\":\\\"Simple syntax: $foo, $foo[0], $foo[$bar], $foo->bar\\\",\\\"match\\\":\\\"((\\\\\\\\$)(?<name>[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*))(?:(->)(\\\\\\\\g<name>)|(\\\\\\\\[)(?:(\\\\\\\\d+)|((\\\\\\\\$)\\\\\\\\g<name>)|(\\\\\\\\w+))(\\\\\\\\]))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"comment\\\":\\\"Simple syntax with braces: \\\\\\\"foo${bar}baz\\\\\\\"\\\",\\\"match\\\":\\\"((\\\\\\\\$\\\\\\\\{)(?<name>[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(\\\\\\\\}))\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#var_global\\\"},{\\\"include\\\":\\\"#var_global_safer\\\"},{\\\"include\\\":\\\"#var_basic\\\"},{\\\"begin\\\":\\\"(\\\\\\\\$\\\\\\\\{)(?=.*?\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]}]},\\\"xhp\\\":{\\\"comment\\\":\\\"Avoid < operator expressions as best we can using Zertosh's regex\\\",\\\"patterns\\\":[{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?<=\\\\\\\\(|\\\\\\\\{|\\\\\\\\[|,|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?|:|=|=>|\\\\\\\\Wreturn|^return|^)\\\\\\\\s*(?=<[_\\\\\\\\p{L}])\\\",\\\"contentName\\\":\\\"source.xhp\\\",\\\"end\\\":\\\"(?=.)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xhp-tag-element-name\\\"}]}]},\\\"xhp-assignment\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"look for attribute assignment\\\",\\\"match\\\":\\\"=(?=\\\\\\\\s*(?:'|\\\\\\\"|{|/\\\\\\\\*|<|//|\\\\\\\\n))\\\",\\\"name\\\":\\\"keyword.operator.assignment.xhp\\\"}]},\\\"xhp-attribute-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.xhp\\\"}},\\\"comment\\\":\\\"look for attribute name\\\",\\\"match\\\":\\\"(?<!\\\\\\\\S)([_\\\\\\\\p{L}](?:[\\\\\\\\p{L}\\\\\\\\p{Mn}\\\\\\\\p{Mc}\\\\\\\\p{Nd}\\\\\\\\p{Nl}\\\\\\\\p{Pc}-](?<!\\\\\\\\.\\\\\\\\.))*+)(?<!\\\\\\\\.)(?=//|/\\\\\\\\*|=|\\\\\\\\s|>|/>)\\\"}]},\\\"xhp-entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.character.entity.xhp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.xhp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html.xhp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.xhp\\\"}},\\\"comment\\\":\\\"Embeded HTML entities &blah\\\",\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\"},{\\\"comment\\\":\\\"Entity with & and invalid name\\\",\\\"match\\\":\\\"&\\\\\\\\S*;\\\",\\\"name\\\":\\\"invalid.illegal.bad-ampersand.xhp\\\"}]},\\\"xhp-evaluated-code\\\":{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.xhp\\\"}},\\\"contentName\\\":\\\"source.php.xhp\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.xhp\\\"}},\\\"name\\\":\\\"meta.embedded.expression.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#language\\\"}]},\\\"xhp-html-comments\\\":{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html\\\"}},\\\"end\\\":\\\"--\\\\\\\\s*>\\\",\\\"name\\\":\\\"comment.block.html\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"--(?!-*\\\\\\\\s*>)\\\",\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.html\\\"}]},\\\"xhp-string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.xhp\\\"}},\\\"end\\\":\\\"\\\\\\\"(?<!\\\\\\\\\\\\\\\\\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.xhp\\\"}},\\\"name\\\":\\\"string.quoted.double.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xhp-entities\\\"}]},\\\"xhp-string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.xhp\\\"}},\\\"end\\\":\\\"'(?<!\\\\\\\\\\\\\\\\')\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.xhp\\\"}},\\\"name\\\":\\\"string.quoted.single.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xhp-entities\\\"}]},\\\"xhp-tag-attributes\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#xhp-attribute-name\\\"},{\\\"include\\\":\\\"#xhp-assignment\\\"},{\\\"include\\\":\\\"#xhp-string-double-quoted\\\"},{\\\"include\\\":\\\"#xhp-string-single-quoted\\\"},{\\\"include\\\":\\\"#xhp-evaluated-code\\\"},{\\\"include\\\":\\\"#xhp-tag-element-name\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"xhp-tag-element-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(<)([_\\\\\\\\p{L}](?:[:\\\\\\\\p{L}\\\\\\\\p{Mn}\\\\\\\\p{Mc}\\\\\\\\p{Nd}\\\\\\\\p{Nl}\\\\\\\\p{Pc}-])*+)(?=[/>\\\\\\\\s])(?<![\\\\\\\\:])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xhp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.open.xhp\\\"}},\\\"comment\\\":\\\"Tags that end > are trapped in #xhp-tag-termination\\\",\\\"end\\\":\\\"\\\\\\\\s*(?<=</)(\\\\\\\\2)(>)|(/>)|((?<=</)[\\\\\\\\S ]*?)>\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.close.xhp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xhp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xhp\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.termination.xhp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#xhp-tag-termination\\\"},{\\\"include\\\":\\\"#xhp-html-comments\\\"},{\\\"include\\\":\\\"#xhp-tag-attributes\\\"}]}]},\\\"xhp-tag-termination\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!--)(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xhp\\\"},\\\"1\\\":{\\\"name\\\":\\\"XHPStartTagEnd\\\"}},\\\"comment\\\":\\\"uses non consuming search for </ in </tag>\\\",\\\"end\\\":\\\"(</)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xhp\\\"},\\\"1\\\":{\\\"name\\\":\\\"XHPEndTagStart\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#xhp-evaluated-code\\\"},{\\\"include\\\":\\\"#xhp-entities\\\"},{\\\"include\\\":\\\"#xhp-html-comments\\\"},{\\\"include\\\":\\\"#xhp-tag-element-name\\\"}]}]}},\\\"scopeName\\\":\\\"source.hack\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"sql\\\"]}\"))\n\nexport default [\n...html,\n...sql,\nlang\n]\n", "import html from './html.mjs'\nimport css from './css.mjs'\nimport javascript from './javascript.mjs'\nimport yaml from './yaml.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Handlebars\\\",\\\"name\\\":\\\"handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#yfm\\\"},{\\\"include\\\":\\\"#extends\\\"},{\\\"include\\\":\\\"#block_comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#block_helper\\\"},{\\\"include\\\":\\\"#end_block\\\"},{\\\"include\\\":\\\"#else_token\\\"},{\\\"include\\\":\\\"#partial_and_var\\\"},{\\\"include\\\":\\\"#inline_script\\\"},{\\\"include\\\":\\\"#html_tags\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}],\\\"repository\\\":{\\\"block_comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\\\\\\{!--\\\",\\\"end\\\":\\\"--\\\\\\\\}\\\\\\\\}\\\",\\\"name\\\":\\\"comment.block.handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"@\\\\\\\\w*\\\",\\\"name\\\":\\\"keyword.annotation.handlebars\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html\\\"}},\\\"end\\\":\\\"-{2,3}\\\\\\\\s*>\\\",\\\"name\\\":\\\"comment.block.html\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.html\\\"}]}]},\\\"block_helper\\\":{\\\"begin\\\":\\\"(\\\\\\\\{\\\\\\\\{)(~?\\\\\\\\#)([-a-zA-Z0-9_\\\\\\\\./>]+)\\\\\\\\s?(@?[-a-zA-Z0-9_\\\\\\\\./]+)*\\\\\\\\s?(@?[-a-zA-Z0-9_\\\\\\\\./]+)*\\\\\\\\s?(@?[-a-zA-Z0-9_\\\\\\\\./]+)*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.handlebars\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.constant.handlebars keyword.control\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.handlebars keyword.control\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.handlebars\\\"},\\\"5\\\":{\\\"name\\\":\\\"support.constant.handlebars\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.handlebars\\\"},\\\"7\\\":{\\\"name\\\":\\\"support.constant.handlebars\\\"}},\\\"end\\\":\\\"(~?\\\\\\\\}\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.handlebars\\\"}},\\\"name\\\":\\\"meta.function.block.start.handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#handlebars_attribute\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\\\\\\{!\\\",\\\"end\\\":\\\"\\\\\\\\}\\\\\\\\}\\\",\\\"name\\\":\\\"comment.block.handlebars\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"@\\\\\\\\w*\\\",\\\"name\\\":\\\"keyword.annotation.handlebars\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html\\\"}},\\\"end\\\":\\\"-{2,3}\\\\\\\\s*>\\\",\\\"name\\\":\\\"comment.block.html\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.html\\\"}]}]},\\\"else_token\\\":{\\\"begin\\\":\\\"(\\\\\\\\{\\\\\\\\{)(~?else)(@?\\\\\\\\s(if)\\\\\\\\s([-a-zA-Z0-9_\\\\\\\\.\\\\\\\\(\\\\\\\\s\\\\\\\\)/]+))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.handlebars\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.constant.handlebars keyword.control\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.handlebars\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.handlebars\\\"}},\\\"end\\\":\\\"(~?\\\\\\\\}\\\\\\\\}\\\\\\\\}*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.handlebars\\\"}},\\\"name\\\":\\\"meta.function.inline.else.handlebars\\\"},\\\"end_block\\\":{\\\"begin\\\":\\\"(\\\\\\\\{\\\\\\\\{)(~?/)([a-zA-Z0-9/_\\\\\\\\.-]+)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.handlebars\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.constant.handlebars keyword.control\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.handlebars keyword.control\\\"}},\\\"end\\\":\\\"(~?\\\\\\\\}\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.handlebars\\\"}},\\\"name\\\":\\\"meta.function.block.end.handlebars\\\",\\\"patterns\\\":[]},\\\"entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"}},\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.html\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"invalid.illegal.bad-ampersand.html\\\"}]},\\\"escaped-double-quote\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.js\\\"},\\\"escaped-single-quote\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\'\\\",\\\"name\\\":\\\"constant.character.escape.js\\\"},\\\"extends\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\{\\\\\\\\{!<)\\\\\\\\s([-a-zA-Z0-9_\\\\\\\\./]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.handlebars\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.class.handlebars\\\"}},\\\"end\\\":\\\"(\\\\\\\\}\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.handlebars\\\"}},\\\"name\\\":\\\"meta.preprocessor.handlebars\\\"}]},\\\"handlebars_attribute\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#handlebars_attribute_name\\\"},{\\\"include\\\":\\\"#handlebars_attribute_value\\\"}]},\\\"handlebars_attribute_name\\\":{\\\"begin\\\":\\\"\\\\\\\\b([-a-zA-Z0-9_\\\\\\\\.]+)\\\\\\\\b=\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.handlebars\\\"}},\\\"end\\\":\\\"(?='|\\\\\\\"|)\\\",\\\"name\\\":\\\"entity.other.attribute-name.handlebars\\\"},\\\"handlebars_attribute_value\\\":{\\\"begin\\\":\\\"([-a-zA-Z0-9_\\\\\\\\./]+)\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.handlebars\\\"}},\\\"end\\\":\\\"('|\\\\\\\"|)\\\",\\\"name\\\":\\\"entity.other.attribute-value.handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},\\\"html_tags\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)([a-zA-Z0-9:-]+)(?=[^>]*></\\\\\\\\2>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(>(<)/)(\\\\\\\\2)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.scope.between-tag-pair.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"name\\\":\\\"meta.tag.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(<\\\\\\\\?)(xml)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.xml.html\\\"}},\\\"end\\\":\\\"(\\\\\\\\?>)\\\",\\\"name\\\":\\\"meta.tag.preprocessor.xml.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_generic_attribute\\\"},{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html\\\"}},\\\"end\\\":\\\"--\\\\\\\\s*>\\\",\\\"name\\\":\\\"comment.block.html\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.html\\\"}]},{\\\"begin\\\":\\\"<!\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"meta.tag.sgml.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(DOCTYPE|doctype)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.doctype.html\\\"}},\\\"end\\\":\\\"(?=>)\\\",\\\"name\\\":\\\"meta.tag.sgml.doctype.html\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"[^\\\\\\\">]*\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.doctype.identifiers-and-DTDs.html\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[CDATA\\\\\\\\[\\\",\\\"end\\\":\\\"]](?=>)\\\",\\\"name\\\":\\\"constant.other.inline-data.html\\\"},{\\\"match\\\":\\\"(\\\\\\\\s*)(?!--|>)\\\\\\\\S(\\\\\\\\s*)\\\",\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.html\\\"}]},{\\\"begin\\\":\\\"(?:^\\\\\\\\s+)?(<)((?i:style))\\\\\\\\b(?![^>]*/>)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.style.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\"(</)((?i:style))(>)(?:\\\\\\\\s*\\\\\\\\n)?\\\",\\\"name\\\":\\\"source.css.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\"(?=</(?i:style))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]},{\\\"begin\\\":\\\"(?:^\\\\\\\\s+)?(<)((?i:script))\\\\\\\\b(?![^>]*/>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.script.html\\\"}},\\\"end\\\":\\\"(?<=</(script|SCRIPT))(>)(?:\\\\\\\\s*\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"name\\\":\\\"source.js.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<!</(?:script|SCRIPT))(>)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.script.html\\\"}},\\\"end\\\":\\\"(</)((?i:script))\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"match\\\":\\\"(//).*?((?=</script)|$\\\\\\\\n?)\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"\\\\\\\\*/|(?=</script)\\\",\\\"name\\\":\\\"comment.block.js\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"(</?)((?i:body|head|html)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.structure.any.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"name\\\":\\\"meta.tag.structure.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)((?i:address|blockquote|dd|div|header|section|footer|aside|nav|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.block.any.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"name\\\":\\\"meta.tag.block.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.inline.any.html\\\"}},\\\"end\\\":\\\"((?: ?/)?>)\\\",\\\"name\\\":\\\"meta.tag.inline.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)([a-zA-Z0-9:-]+)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"name\\\":\\\"meta.tag.other.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)([a-zA-Z0-9{}:-]+)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.tokenised.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"name\\\":\\\"meta.tag.tokenised.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"include\\\":\\\"#entities\\\"},{\\\"match\\\":\\\"<>\\\",\\\"name\\\":\\\"invalid.illegal.incomplete.html\\\"},{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"}]},\\\"inline_script\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s+)?(<)((?i:script))\\\\\\\\b(?:.*(type)=([\\\\\\\"'](?:text/x-handlebars-template|text/x-handlebars|text/template|x-tmpl-handlebars)[\\\\\\\"']))(?![^>]*/>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.script.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.double.html\\\"}},\\\"end\\\":\\\"(?<=</(script|SCRIPT))(>)(?:\\\\\\\\s*\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"name\\\":\\\"source.handlebars.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<!</(?:script|SCRIPT))(>)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.script.html\\\"}},\\\"end\\\":\\\"(</)((?i:script))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#block_helper\\\"},{\\\"include\\\":\\\"#end_block\\\"},{\\\"include\\\":\\\"#else_token\\\"},{\\\"include\\\":\\\"#partial_and_var\\\"},{\\\"include\\\":\\\"#html_tags\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]}]},\\\"partial_and_var\\\":{\\\"begin\\\":\\\"(\\\\\\\\{\\\\\\\\{~?\\\\\\\\{*(>|!<)*)\\\\\\\\s*(@?[-a-zA-Z0-9$_\\\\\\\\./]+)*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.handlebars\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.handlebars\\\"}},\\\"end\\\":\\\"(~?\\\\\\\\}\\\\\\\\}\\\\\\\\}*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.handlebars\\\"}},\\\"name\\\":\\\"meta.function.inline.other.handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#handlebars_attribute\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-single-quoted\\\"},{\\\"include\\\":\\\"#string-double-quoted\\\"}]},\\\"string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.double.handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped-double-quote\\\"},{\\\"include\\\":\\\"#block_comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#block_helper\\\"},{\\\"include\\\":\\\"#else_token\\\"},{\\\"include\\\":\\\"#end_block\\\"},{\\\"include\\\":\\\"#partial_and_var\\\"}]},\\\"string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.single.handlebars\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped-single-quote\\\"},{\\\"include\\\":\\\"#block_comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#block_helper\\\"},{\\\"include\\\":\\\"#else_token\\\"},{\\\"include\\\":\\\"#end_block\\\"},{\\\"include\\\":\\\"#partial_and_var\\\"}]},\\\"tag-stuff\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_id_attribute\\\"},{\\\"include\\\":\\\"#tag_generic_attribute\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#block_comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#block_helper\\\"},{\\\"include\\\":\\\"#end_block\\\"},{\\\"include\\\":\\\"#else_token\\\"},{\\\"include\\\":\\\"#partial_and_var\\\"}]},\\\"tag_generic_attribute\\\":{\\\"begin\\\":\\\"\\\\\\\\b([a-zA-Z0-9_-]+)\\\\\\\\b\\\\\\\\s*(=)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.generic.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html\\\"}},\\\"end\\\":\\\"(?<='|\\\\\\\"|)\\\",\\\"name\\\":\\\"entity.other.attribute-name.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},\\\"tag_id_attribute\\\":{\\\"begin\\\":\\\"\\\\\\\\b(id)\\\\\\\\b\\\\\\\\s*(=)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.id.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html\\\"}},\\\"end\\\":\\\"(?<='|\\\\\\\"|)\\\",\\\"name\\\":\\\"meta.attribute-with-value.id.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},\\\"yfm\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\s)---\\\\\\\\n$\\\",\\\"end\\\":\\\"^---\\\\\\\\s\\\",\\\"name\\\":\\\"markup.raw.yaml.front-matter\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}]}]}},\\\"scopeName\\\":\\\"text.html.handlebars\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"css\\\",\\\"javascript\\\",\\\"yaml\\\"],\\\"aliases\\\":[\\\"hbs\\\"]}\"))\n\nexport default [\n...html,\n...css,\n...javascript,\n...yaml,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Haskell\\\",\\\"fileTypes\\\":[\\\"hs\\\",\\\"hs-boot\\\",\\\"hsig\\\"],\\\"name\\\":\\\"haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#liquid_haskell\\\"},{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#numeric_literals\\\"},{\\\"include\\\":\\\"#string_literal\\\"},{\\\"include\\\":\\\"#char_literal\\\"},{\\\"match\\\":\\\"(?<!@|#)-\\\\\\\\}\\\",\\\"name\\\":\\\"invalid\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"match\\\":\\\"(\\\\\\\\()\\\\\\\\s*(\\\\\\\\))\\\",\\\"name\\\":\\\"constant.language.unit.haskell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(#)\\\\\\\\s*(#)(\\\\\\\\))\\\",\\\"name\\\":\\\"constant.language.unit.unboxed.haskell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"match\\\":\\\"(\\\\\\\\()\\\\\\\\s*,[\\\\\\\\s,]*(\\\\\\\\))\\\",\\\"name\\\":\\\"support.constant.tuple.haskell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(#)\\\\\\\\s*,[\\\\\\\\s,]*(#)(\\\\\\\\))\\\",\\\"name\\\":\\\"support.constant.tuple.unboxed.haskell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)\\\\\\\\s*(\\\\\\\\])\\\",\\\"name\\\":\\\"constant.language.empty-list.haskell\\\"},{\\\"begin\\\":\\\"(\\\\\\\\b(?<!')(module)|^(signature))(\\\\\\\\b(?!'))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.module.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.signature.haskell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\b(?<!')where\\\\\\\\b(?!'))\\\",\\\"name\\\":\\\"meta.declaration.module.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#module_name\\\"},{\\\"include\\\":\\\"#module_exports\\\"},{\\\"match\\\":\\\"[a-z]+\\\",\\\"name\\\":\\\"invalid\\\"}]},{\\\"include\\\":\\\"#ffi\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(class)(\\\\\\\\b(?!'))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.class.haskell\\\"}},\\\"end\\\":\\\"(?=(?<!')\\\\\\\\bwhere\\\\\\\\b(?!'))|(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.declaration.class.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#where\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(data|newtype)(?:\\\\\\\\s+(instance))?\\\\\\\\s+((?:(?!(?:(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])(?:=|--+)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]))|(?:\\\\\\\\b(?<!')(?:where|deriving)\\\\\\\\b(?!'))|{-).)*)(?=\\\\\\\\b(?<!'')where\\\\\\\\b(?!''))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.$2.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.instance.haskell\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]}},\\\"end\\\":\\\"(?=(?<!')\\\\\\\\bderiving\\\\\\\\b(?!'))|(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.declaration.$2.generalized.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"begin\\\":\\\"(?<!')\\\\\\\\b(where)\\\\\\\\s*(\\\\\\\\{)(?!-)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.where.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.brace.haskell\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#gadt_constructor\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.semicolon.haskell\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(?<!')(where)\\\\\\\\b(?!')\\\",\\\"name\\\":\\\"keyword.other.where.haskell\\\"},{\\\"include\\\":\\\"#deriving\\\"},{\\\"include\\\":\\\"#gadt_constructor\\\"}]},{\\\"include\\\":\\\"#role_annotation\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(pattern)\\\\\\\\s+(.*?)\\\\\\\\s+(::|\u2237)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.pattern.haskell\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#data_constructor\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.haskell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.declaration.pattern.type.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(pattern)\\\\\\\\b(?!')\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.pattern.haskell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.declaration.pattern.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(data|newtype)(?:\\\\\\\\s+(family|instance))?\\\\\\\\s+(((?!(?:(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])(?:=|--+)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]))|(?:\\\\\\\\b(?<!')(?:where|deriving)\\\\\\\\b(?!'))|{-).)*)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.$2.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.$3.haskell\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.declaration.$2.algebraic.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#deriving\\\"},{\\\"include\\\":\\\"#forall\\\"},{\\\"include\\\":\\\"#adt_constructor\\\"},{\\\"include\\\":\\\"#context\\\"},{\\\"include\\\":\\\"#record_decl\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(type)\\\\\\\\s+(family)\\\\\\\\b(?!')(((?!(?:(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])(?:=|--+)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]))|\\\\\\\\b(?<!')where\\\\\\\\b(?!')|{-).)*)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.type.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.family.haskell\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#where\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.declaration.type.family.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#where\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(type)(?:\\\\\\\\s+(instance))?\\\\\\\\s+(((?!(?:(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])(?:=|--+|::|\u2237)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]))|{-).)*)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.type.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.instance.haskell\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.declaration.type.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(instance)(\\\\\\\\b(?!'))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.instance.haskell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\b(?<!')(where)\\\\\\\\b(?!'))|(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.declaration.instance.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#where\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(import)(\\\\\\\\b(?!'))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.import.haskell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\b(?<!')(where)\\\\\\\\b(?!'))|(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.import.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#where\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.$1.haskell\\\"}},\\\"match\\\":\\\"(qualified|as|hiding)\\\"},{\\\"include\\\":\\\"#module_name\\\"},{\\\"include\\\":\\\"#module_exports\\\"}]},{\\\"include\\\":\\\"#deriving\\\"},{\\\"include\\\":\\\"#layout_herald\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.$1.haskell\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#integer_literals\\\"},{\\\"include\\\":\\\"#infix_op\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\s*(infix[lr]?)\\\\\\\\s+(.*)\\\",\\\"name\\\":\\\"meta.fixity-declaration.haskell\\\"},{\\\"include\\\":\\\"#overloaded_label\\\"},{\\\"include\\\":\\\"#type_application\\\"},{\\\"include\\\":\\\"#reserved_symbol\\\"},{\\\"include\\\":\\\"#fun_decl\\\"},{\\\"include\\\":\\\"#qualifier\\\"},{\\\"include\\\":\\\"#data_constructor\\\"},{\\\"include\\\":\\\"#start_type_signature\\\"},{\\\"include\\\":\\\"#prefix_op\\\"},{\\\"include\\\":\\\"#infix_op\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()(#)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"}},\\\"end\\\":\\\"(#)(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#quasi_quote\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#record\\\"}],\\\"repository\\\":{\\\"adt_constructor\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"begin\\\":\\\"(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])(?:(=)|(\\\\\\\\|))(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.eq.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.pipe.haskell\\\"}},\\\"end\\\":\\\"(?:\\\\\\\\G|^)\\\\\\\\s*(?:(?:(?<!')\\\\\\\\b((?:[\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}'\\\\\\\\.])+)|('?(?<paren>\\\\\\\\((?:[^\\\\\\\\(\\\\\\\\)]*|\\\\\\\\g<paren>)*\\\\\\\\)))|('?(?<brac>\\\\\\\\((?:[^\\\\\\\\[\\\\\\\\]]*|\\\\\\\\g<brac>)*\\\\\\\\])))\\\\\\\\s*(?:(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])(:[\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]*)|(`)([\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)(`)))|(?:(?<!')\\\\\\\\b([\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*))|(\\\\\\\\()\\\\\\\\s*(:[\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]*)\\\\\\\\s*(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"constant.other.operator.haskell\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.backtick.haskell\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.other.haskell\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.backtick.haskell\\\"},\\\"10\\\":{\\\"name\\\":\\\"constant.other.haskell\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"12\\\":{\\\"name\\\":\\\"constant.other.operator.haskell\\\"},\\\"13\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#deriving\\\"},{\\\"include\\\":\\\"#record_decl\\\"},{\\\"include\\\":\\\"#forall\\\"},{\\\"include\\\":\\\"#context\\\"}]}]},\\\"block_comment\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\{-\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.haskell\\\"}},\\\"end\\\":\\\"-\\\\\\\\}\\\",\\\"name\\\":\\\"comment.block.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_comment\\\"}]},\\\"char_literal\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.octal.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.escape.hexadecimal.haskell\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.escape.control.haskell\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.haskell\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}'])(')(?:[\\\\\\\\ -\\\\\\\\[\\\\\\\\]-~]|(\\\\\\\\\\\\\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\\\\\\\\\&]))|(\\\\\\\\\\\\\\\\o[0-7]+)|(\\\\\\\\\\\\\\\\x[0-9A-Fa-f]+)|(\\\\\\\\\\\\\\\\\\\\\\\\^[A-Z@\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\\\\\\\\\^_]))(')\\\",\\\"name\\\":\\\"string.quoted.single.haskell\\\"},\\\"comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.haskell\\\"},\\\"comment_like\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#cpp\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(\\\\\\\\s*)(--\\\\\\\\s[\\\\\\\\|\\\\\\\\$])\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.haskell\\\"}},\\\"end\\\":\\\"(?=^(?!\\\\\\\\1--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])))\\\",\\\"name\\\":\\\"comment.block.documentation.haskell\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(--\\\\\\\\s[\\\\\\\\^\\\\\\\\*])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.documentation.haskell\\\"},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\{-\\\\\\\\s?[\\\\\\\\|\\\\\\\\$\\\\\\\\*\\\\\\\\^]\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.haskell\\\"}},\\\"end\\\":\\\"-\\\\\\\\}\\\",\\\"name\\\":\\\"comment.block.documentation.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_comment\\\"}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.haskell\\\"}},\\\"comment\\\":\\\"Operators may begin with '--' as long as they are not entirely composed of '-' characters. This means comments can't be immediately followed by an allowable operator character.\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"--\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-dash.haskell\\\"}]},{\\\"include\\\":\\\"#block_comment\\\"}]},\\\"context\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.big-arrow.haskell\\\"}},\\\"match\\\":\\\"(.*)(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])(=>|\u21D2)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])\\\"},\\\"cpp\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.preprocessor.c\\\"}},\\\"comment\\\":\\\"In addition to Haskell's \\\\\\\"native\\\\\\\" syntax, GHC permits the C preprocessor to be run on a source file.\\\",\\\"match\\\":\\\"^(#).*$\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\"},\\\"data_constructor\\\":{\\\"match\\\":\\\"\\\\\\\\b(?<!')[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?![\\\\\\\\.'\\\\\\\\w])\\\",\\\"name\\\":\\\"constant.other.haskell\\\"},\\\"deriving\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(\\\\\\\\s*)(deriving)\\\\\\\\s+(?:(via|stock|newtype|anyclass)\\\\\\\\s+)?\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.deriving.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.deriving.strategy.$3.haskell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.deriving.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"match\\\":\\\"(?<!')\\\\\\\\b(instance)\\\\\\\\b(?!')\\\",\\\"name\\\":\\\"keyword.other.instance.haskell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.deriving.strategy.$1.haskell\\\"}},\\\"match\\\":\\\"(?<!')\\\\\\\\b(via|stock|newtype|anyclass)\\\\\\\\b(?!')\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"(deriving)(?:\\\\\\\\s+(stock|newtype|anyclass))?\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.deriving.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.deriving.strategy.$2.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"name\\\":\\\"meta.deriving.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.deriving.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.deriving.strategy.$2.haskell\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.deriving.strategy.via.haskell\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]}},\\\"match\\\":\\\"(deriving)(?:\\\\\\\\s+(stock|newtype|anyclass))?\\\\\\\\s+([\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)(\\\\\\\\s+(via)\\\\\\\\s+(.*)$)?\\\",\\\"name\\\":\\\"meta.deriving.haskell\\\"},{\\\"match\\\":\\\"(?<!')\\\\\\\\b(via)\\\\\\\\b(?!')\\\",\\\"name\\\":\\\"keyword.other.deriving.strategy.via.haskell\\\"}]},\\\"double_colon\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.haskell\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(::|\u2237)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])\\\\\\\\s*\\\"},\\\"export_constructs\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(?<!')(pattern)\\\\\\\\b(?!')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.pattern.haskell\\\"}},\\\"end\\\":\\\"([\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)|(\\\\\\\\()\\\\\\\\s*(:[\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+)\\\\\\\\s*(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.other.operator.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(?<!')(type)\\\\\\\\b(?!')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.type.haskell\\\"}},\\\"end\\\":\\\"([\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)|(\\\\\\\\()\\\\\\\\s*([\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+)\\\\\\\\s*(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.operator.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"}]},{\\\"match\\\":\\\"(?<!')\\\\\\\\b[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\",\\\"name\\\":\\\"entity.name.function.haskell\\\"},{\\\"match\\\":\\\"(?<!')\\\\\\\\b[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\",\\\"name\\\":\\\"storage.type.haskell\\\"},{\\\"include\\\":\\\"#record_wildcard\\\"},{\\\"include\\\":\\\"#reserved_symbol\\\"},{\\\"include\\\":\\\"#prefix_op\\\"}]},\\\"ffi\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(foreign)\\\\\\\\s+(import|export)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.foreign.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.$3.haskell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.$3.foreign.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.calling-convention.$1.haskell\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!')(ccall|cplusplus|dotnet|jvm|stdcall|prim|capi)\\\\\\\\s+\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\")|(?=\\\\\\\\b(?<!')([\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)\\\\\\\\b(?!'))\\\",\\\"end\\\":\\\"(?=(::|\u2237)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.safety.$1.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.foreign.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_literal\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.infix.haskell\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!')(safe|unsafe|interruptible)\\\\\\\\b(?!')\\\\\\\\s*(\\\\\\\"(?:\\\\\\\\\\\\\\\\\\\\\\\"|[^\\\\\\\"])*\\\\\\\")?\\\\\\\\s*(?:(?:\\\\\\\\b(?<!'')([\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)\\\\\\\\b(?!'))|(?:\\\\\\\\(\\\\\\\\s*(?!--+\\\\\\\\))([\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+)\\\\\\\\s*\\\\\\\\)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.safety.$1.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.foreign.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_literal\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b(?<!')(safe|unsafe|interruptible)\\\\\\\\b(?!')\\\\\\\\s*(\\\\\\\"(?:\\\\\\\\\\\\\\\\\\\\\\\"|[^\\\\\\\"])*\\\\\\\")?\\\\\\\\s*$\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.foreign.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_literal\\\"}]}},\\\"match\\\":\\\"\\\\\\\"(?:\\\\\\\\\\\\\\\\\\\\\\\"|[^\\\\\\\"])*\\\\\\\"\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.infix.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\b(?<!'')([\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)\\\\\\\\b(?!'))|(?:(\\\\\\\\()\\\\\\\\s*(?!--+\\\\\\\\))([\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+)\\\\\\\\s*(\\\\\\\\)))\\\"}]},{\\\"include\\\":\\\"#double_colon\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},\\\"float_literals\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.floating.decimal.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.floating.hexadecimal.haskell\\\"}},\\\"comment\\\":\\\"Floats are decimal or hexadecimal\\\",\\\"match\\\":\\\"\\\\\\\\b(?<!')(?:([0-9][_0-9]*\\\\\\\\.[0-9][_0-9]*(?:[eE][-+]?[0-9][_0-9]*)?|[0-9][_0-9]*[eE][-+]?[0-9][_0-9]*)|(0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*\\\\\\\\.[0-9a-fA-F][_0-9a-fA-F]*(?:[pP][-+]?[0-9][_0-9]*)?|0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*[pP][-+]?[0-9][_0-9]*))\\\\\\\\b(?!')\\\"},\\\"forall\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?<!')(forall|\u2200)\\\\\\\\b(?!')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.forall.haskell\\\"}},\\\"end\\\":\\\"(\\\\\\\\.)|(->|\u2192)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.period.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arrow.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#type_variable\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},\\\"fun_decl\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(?<fn>(?:[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\\\\\\#*|\\\\\\\\(\\\\\\\\s*(?!--+\\\\\\\\))[\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),:;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']][\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]*\\\\\\\\s*\\\\\\\\))(?:\\\\\\\\s*,\\\\\\\\s*\\\\\\\\g<fn>)?)\\\\\\\\s*(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^\\\\\\\\),;\\\\\\\\]`}_\\\\\\\"']])(::|\u2237)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^\\\\\\\\(,;\\\\\\\\[`{_\\\\\\\"']])\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#reserved_symbol\\\"},{\\\"include\\\":\\\"#prefix_op\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.haskell\\\"}},\\\"end\\\":\\\"(?=(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])((<-|\u2190)|(=)|(-<|\u21A2)|(-<<|\u291B))([(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']|[^\\\\\\\\p{S}\\\\\\\\p{P}]))|(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.function.type-declaration.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},\\\"gadt_constructor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(\\\\\\\\s*)(?:(\\\\\\\\b(?<!')[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)|(\\\\\\\\()\\\\\\\\s*(:[\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]*)\\\\\\\\s*(\\\\\\\\)))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.other.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.other.operator.haskell\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\b(?<!'')deriving\\\\\\\\b(?!'))|(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#deriving\\\"},{\\\"include\\\":\\\"#double_colon\\\"},{\\\"include\\\":\\\"#record_decl\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\b(?<!')[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}]*)|(\\\\\\\\()\\\\\\\\s*(:[\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]*)\\\\\\\\s*(\\\\\\\\))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.other.operator.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#deriving\\\"},{\\\"include\\\":\\\"#double_colon\\\"},{\\\"include\\\":\\\"#record_decl\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]}]},\\\"infix_op\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.infix.haskell\\\"}},\\\"comment\\\":\\\"In case this regex seems overly general, note that Haskell permits the definition of new operators which can be nearly any string of punctuation characters, such as $%^&*.\\\\n\\\",\\\"match\\\":\\\"((?:(?<!'')('')?[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}'']*\\\\\\\\.)*)(\\\\\\\\#+|[\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+(?<!\\\\\\\\#))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.backtick.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.haskell\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#data_constructor\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.backtick.haskell\\\"}},\\\"comment\\\":\\\"In case this regex seems unusual for an infix operator, note that Haskell\\\\nallows any ordinary function application (elem 4 [1..10]) to be rewritten\\\\nas an infix expression (4 `elem` [1..10]).\\\\n\\\",\\\"match\\\":\\\"(`)((?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}'']*\\\\\\\\.)*)([\\\\\\\\p{Ll}\\\\\\\\p{Lu}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}'']*)(`)\\\",\\\"name\\\":\\\"keyword.operator.function.infix.haskell\\\"}]},\\\"inline_phase\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"}},\\\"name\\\":\\\"meta.inlining-phase.haskell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"~\\\",\\\"name\\\":\\\"punctuation.tilde.haskell\\\"},{\\\"include\\\":\\\"#integer_literals\\\"},{\\\"match\\\":\\\"\\\\\\\\w*\\\",\\\"name\\\":\\\"invalid\\\"}]},\\\"integer_literals\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.integral.decimal.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.integral.hexadecimal.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.integral.octal.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.integral.binary.haskell\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!')(?:([0-9][_0-9]*)|(0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*)|(0[oO]_*[0-7][_0-7]*)|(0[bB]_*[01][_01]*))\\\\\\\\b(?!')\\\"},\\\"keyword\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.$1.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.$2.haskell\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!')(?:(where|let|in|default)|(m?do|if|then|else|case|of|proc|rec))\\\\\\\\b(?!')\\\"},\\\"layout_herald\\\":{\\\"begin\\\":\\\"(?<!')\\\\\\\\b(?:(where|let|m?do)|(of))\\\\\\\\s*(\\\\\\\\{)(?!-)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.$1.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.of.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.brace.haskell\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.semicolon.haskell\\\"}]},\\\"liquid_haskell\\\":{\\\"begin\\\":\\\"\\\\\\\\{-@\\\",\\\"end\\\":\\\"@-\\\\\\\\}\\\",\\\"name\\\":\\\"block.liquidhaskell.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"module_exports\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"name\\\":\\\"meta.declaration.exports.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.module.haskell\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!')(module)\\\\\\\\b(?!')\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#export_constructs\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#record_wildcard\\\"},{\\\"include\\\":\\\"#export_constructs\\\"},{\\\"include\\\":\\\"#comma\\\"}]}]},\\\"module_name\\\":{\\\"match\\\":\\\"(?<conid>[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(\\\\\\\\.\\\\\\\\g<conid>)?)\\\",\\\"name\\\":\\\"entity.name.namespace.haskell\\\"},\\\"numeric_literals\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#float_literals\\\"},{\\\"include\\\":\\\"#integer_literals\\\"}]},\\\"overloaded_label\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.prefix.hash.haskell\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string_literal\\\"}]}},\\\"match\\\":\\\"(?<![\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}\\\\\\\\p{S}\\\\\\\\p{P}&&[^(,;\\\\\\\\[`{]])(\\\\\\\\#)(?:(\\\\\\\"(?:\\\\\\\\\\\\\\\\\\\\\\\"|[^\\\\\\\"])*\\\\\\\")|[\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}'\\\\\\\\.]+)\\\",\\\"name\\\":\\\"entity.name.label.haskell\\\"}]},\\\"pragma\\\":{\\\"begin\\\":\\\"\\\\\\\\{-#\\\",\\\"end\\\":\\\"#-\\\\\\\\}\\\",\\\"name\\\":\\\"meta.preprocessor.haskell\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?xi) \\\\\\\\b(?<!')(LANGUAGE)\\\\\\\\b(?!')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.preprocessor.pragma.haskell\\\"}},\\\"end\\\":\\\"(?=#-\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?:No)?(?:AutoDeriveTypeable|DatatypeContexts|DoRec|IncoherentInstances|MonadFailDesugaring|MonoPatBinds|NullaryTypeClasses|OverlappingInstances|PatternSignatures|RecordPuns|RelaxedPolyRec)\\\",\\\"name\\\":\\\"invalid.deprecated\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.preprocessor.extension.haskell\\\"}},\\\"match\\\":\\\"((?:No)?(?:AllowAmbiguousTypes|AlternativeLayoutRule|AlternativeLayoutRuleTransitional|Arrows|BangPatterns|BinaryLiterals|CApiFFI|CPP|CUSKs|ConstrainedClassMethods|ConstraintKinds|DataKinds|DefaultSignatures|DeriveAnyClass|DeriveDataTypeable|DeriveFoldable|DeriveFunctor|DeriveGeneric|DeriveLift|DeriveTraversable|DerivingStrategies|DerivingVia|DisambiguateRecordFields|DoAndIfThenElse|BlockArguments|DuplicateRecordFields|EmptyCase|EmptyDataDecls|EmptyDataDeriving|ExistentialQuantification|ExplicitForAll|ExplicitNamespaces|ExtendedDefaultRules|FlexibleContexts|FlexibleInstances|ForeignFunctionInterface|FunctionalDependencies|GADTSyntax|GADTs|GHCForeignImportPrim|Generali(?:s|z)edNewtypeDeriving|ImplicitParams|ImplicitPrelude|ImportQualifiedPost|ImpredicativeTypes|TypeFamilyDependencies|InstanceSigs|ApplicativeDo|InterruptibleFFI|JavaScriptFFI|KindSignatures|LambdaCase|LiberalTypeSynonyms|MagicHash|MonadComprehensions|MonoLocalBinds|MonomorphismRestriction|MultiParamTypeClasses|MultiWayIf|NumericUnderscores|NPlusKPatterns|NamedFieldPuns|NamedWildCards|NegativeLiterals|HexFloatLiterals|NondecreasingIndentation|NumDecimals|OverloadedLabels|OverloadedLists|OverloadedStrings|PackageImports|ParallelArrays|ParallelListComp|PartialTypeSignatures|PatternGuards|PatternSynonyms|PolyKinds|PolymorphicComponents|QuantifiedConstraints|PostfixOperators|QuasiQuotes|Rank2Types|RankNTypes|RebindableSyntax|RecordWildCards|RecursiveDo|RelaxedLayout|RoleAnnotations|ScopedTypeVariables|StandaloneDeriving|StarIsType|StaticPointers|Strict|StrictData|TemplateHaskell|TemplateHaskellQuotes|StandaloneKindSignatures|TraditionalRecordSyntax|TransformListComp|TupleSections|TypeApplications|TypeInType|TypeFamilies|TypeOperators|TypeSynonymInstances|UnboxedTuples|UnboxedSums|UndecidableInstances|UndecidableSuperClasses|UnicodeSyntax|UnliftedFFITypes|UnliftedNewtypes|ViewPatterns))\\\"},{\\\"include\\\":\\\"#comma\\\"}]},{\\\"begin\\\":\\\"(?xi)\\\\n \\\\\\\\b(?<!')(SPECIALI(?:S|Z)E)\\\\n (?:\\\\n \\\\\\\\s*( \\\\\\\\[ [^\\\\\\\\[\\\\\\\\]]* \\\\\\\\])?\\\\\\\\s*\\\\n |\\\\\\\\s+\\\\n )\\\\n (instance)\\\\\\\\b(?!')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.preprocessor.pragma.haskell\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_phase\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.instance.haskell\\\"}},\\\"end\\\":\\\"(?=#-\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"(?xi)\\\\n \\\\\\\\b(?<!')(SPECIALI(?:S|Z)E)\\\\\\\\b(?!')\\\\n (?:\\\\\\\\s+(INLINE)\\\\\\\\b(?!'))?\\\\n (?:\\\\\\\\s*(\\\\\\\\[ [^\\\\\\\\[\\\\\\\\]]* \\\\\\\\])?)\\\\n \\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.preprocessor.pragma.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.preprocessor.pragma.haskell\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_phase\\\"}]}},\\\"end\\\":\\\"(?=#-\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"(?xi) \\\\\\\\b(?<!')\\\\n (LANGUAGE|OPTIONS_GHC|INCLUDE\\\\n |MINIMAL|UNPACK|OVERLAPS|INCOHERENT\\\\n |NOUNPACK|SOURCE|OVERLAPPING|OVERLAPPABLE|INLINE\\\\n |NOINLINE|INLINE?ABLE|CONLIKE|LINE|COLUMN|RULES\\\\n |COMPLETE)\\\\\\\\b(?!')\\\",\\\"name\\\":\\\"keyword.other.preprocessor.haskell\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(DEPRECATED|WARNING)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.preprocessor.pragma.haskell\\\"}},\\\"end\\\":\\\"(?=#-\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_literal\\\"}]}]},\\\"prefix_op\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.infix.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"comment\\\":\\\"An operator cannot be composed entirely of '-' characters; instead, it should be matched as a comment.\\\\n\\\",\\\"match\\\":\\\"(\\\\\\\\()\\\\\\\\s*(?!(?:--+|\\\\\\\\.\\\\\\\\.)\\\\\\\\))(\\\\\\\\#+|[\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+(?<!\\\\\\\\#))\\\\\\\\s*(\\\\\\\\))\\\"}]},\\\"qualifier\\\":{\\\"match\\\":\\\"\\\\\\\\b(?<!')[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\\\\\\.\\\",\\\"name\\\":\\\"entity.name.namespace.haskell\\\"},\\\"quasi_quote\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\[)(e|d|p)?(\\\\\\\\|\\\\\\\\|?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.quasi-quotation.begin.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.quasi-quoter.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.quasi-quotation.begin.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\\3\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.quasi-quotation.end.haskell\\\"}},\\\"name\\\":\\\"meta.quasi-quotation.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\[)(t)(\\\\\\\\|\\\\\\\\|?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.quasi-quotation.begin.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.quasi-quoter.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.quasi-quotation.begin.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\\3\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.quasi-quotation.end.haskell\\\"}},\\\"name\\\":\\\"meta.quasi-quotation.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\[)(?:(\\\\\\\\$\\\\\\\\$)|(\\\\\\\\$))?((?:[^\\\\\\\\s\\\\\\\\p{S}\\\\\\\\p{P}]|[\\\\\\\\.'_])*)(\\\\\\\\|\\\\\\\\|?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.quasi-quotation.begin.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.prefix.double-dollar.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.prefix.dollar.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.quasi-quoter.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qualifier\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.quasi-quotation.begin.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\\5\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.quasi-quotation.end.haskell\\\"}},\\\"name\\\":\\\"meta.quasi-quotation.haskell\\\"}]},\\\"record\\\":{\\\"begin\\\":\\\"({)(?!-)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.haskell\\\"}},\\\"end\\\":\\\"(?<!-)(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.haskell\\\"}},\\\"name\\\":\\\"meta.record.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#record_field\\\"}]},\\\"record_decl\\\":{\\\"begin\\\":\\\"({)(?!-)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.haskell\\\"}},\\\"end\\\":\\\"(?<!-)(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.haskell\\\"}},\\\"name\\\":\\\"meta.record.definition.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#record_decl_field\\\"}]},\\\"record_decl_field\\\":{\\\"begin\\\":\\\"(?:([\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)|(\\\\\\\\()\\\\\\\\s*([\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+)\\\\\\\\s*(\\\\\\\\)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.member.definition.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.member.definition.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"end\\\":\\\"(,)|(?=})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#double_colon\\\"},{\\\"include\\\":\\\"#type_signature\\\"},{\\\"include\\\":\\\"#record_decl_field\\\"}]},\\\"record_field\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:([\\\\\\\\p{Ll}\\\\\\\\p{Lu}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}\\\\\\\\.']*)|(\\\\\\\\()\\\\\\\\s*([\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+)\\\\\\\\s*(\\\\\\\\)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.member.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qualifier\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.member.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"end\\\":\\\"(,)|(?=})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comma.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#record_wildcard\\\"}]},\\\"record_wildcard\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.member.wildcard.haskell\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])(\\\\\\\\.\\\\\\\\.)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])\\\"},\\\"reserved_symbol\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-dot.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.colon.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.eq.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.lambda.haskell\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.pipe.haskell\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.arrow.left.haskell\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.arrow.haskell\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.arrow.left.tail.haskell\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.arrow.left.tail.double.haskell\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.arrow.tail.haskell\\\"},\\\"11\\\":{\\\"name\\\":\\\"keyword.operator.arrow.tail.double.haskell\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.other.forall.haskell\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"'']])(?:(\\\\\\\\.\\\\\\\\.)|(:)|(=)|(\\\\\\\\\\\\\\\\)|(\\\\\\\\|)|(<-|\u2190)|(->|\u2192)|(-<|\u21A2)|(-<<|\u291B)|(>-|\u291A)|(>>-|\u291C)|(\u2200))(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"'']])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.postfix.hash.haskell\\\"}},\\\"match\\\":\\\"(?<=[\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}\\\\\\\\p{S}\\\\\\\\p{P}&&[^\\\\\\\\#,;\\\\\\\\[`{]])(\\\\\\\\#+)(?![\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}\\\\\\\\p{S}\\\\\\\\p{P}&&[^),;\\\\\\\\]`}]])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.infix.tight.at.haskell\\\"}},\\\"match\\\":\\\"(?<=[\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}\\\\\\\\)\\\\\\\\}\\\\\\\\]])(@)(?=[\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}\\\\\\\\(\\\\\\\\[\\\\\\\\{])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.prefix.tilde.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.prefix.bang.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.prefix.minus.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.prefix.dollar.haskell\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.prefix.double-dollar.haskell\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}\\\\\\\\p{S}\\\\\\\\p{P}&&[^(,;\\\\\\\\[`{]])(?:(~)|(!)|(-)|(\\\\\\\\$)|(\\\\\\\\$\\\\\\\\$))(?=[\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}\\\\\\\\(\\\\\\\\{\\\\\\\\[])\\\"}]},\\\"role_annotation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(\\\\\\\\s*)(type)\\\\\\\\s+(role)\\\\\\\\b(?!')\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.type.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.role.haskell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$))\\\",\\\"name\\\":\\\"meta.role-annotation.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"include\\\":\\\"#type_constructor\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.role.$1.haskell\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!')(nominal|representational|phantom)\\\\\\\\b(?!')\\\"}]}]},\\\"start_type_signature\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(\\\\\\\\s*)(::|\u2237)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^\\\\\\\\(,;\\\\\\\\[`{_\\\\\\\"']])\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.haskell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\#?\\\\\\\\)|\\\\\\\\]|,|(?<!')\\\\\\\\b(in|then|else|of)\\\\\\\\b(?!')|(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])(?:(\\\\\\\\\\\\\\\\|\u03BB)|(<-|\u2190)|(=)|(-<|\u21A2)|(-<<|\u291B))([(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']|[^\\\\\\\\p{S}\\\\\\\\p{P}])|(\\\\\\\\#|@)-\\\\\\\\}|(?=\\\\\\\\}|;)|^(?!\\\\\\\\1\\\\\\\\s*\\\\\\\\S|\\\\\\\\s*(?:$|\\\\\\\\{-[^@]|--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]{}`_\\\\\\\"']]).*$)))\\\",\\\"name\\\":\\\"meta.type-declaration.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^\\\\\\\\(,;\\\\\\\\[`{_\\\\\\\"']])(::|\u2237)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^\\\\\\\\(,;\\\\\\\\[`{_\\\\\\\"']])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.double-colon.haskell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\#?\\\\\\\\)|\\\\\\\\]|,|\\\\\\\\b(?<!')(in|then|else|of)\\\\\\\\b(?!')|(\\\\\\\\#|@)-\\\\\\\\}|(?<![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])(?:(\\\\\\\\\\\\\\\\|\u03BB)|(<-|\u2190)|(=)|(-<|\u21A2)|(-<<|\u291B))([(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']|[^\\\\\\\\p{S}\\\\\\\\p{P}])|(?=\\\\\\\\}|;)|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]}]},\\\"string_literal\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.haskell\\\"}},\\\"name\\\":\\\"string.quoted.double.haskell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\&])\\\",\\\"name\\\":\\\"constant.character.escape.haskell\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\o[0-7]+|\\\\\\\\\\\\\\\\x[0-9A-Fa-f]+|\\\\\\\\\\\\\\\\[0-9]+\\\",\\\"name\\\":\\\"constant.character.escape.octal.haskell\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\^[A-Z@\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\\\\\\\\\^_]\\\",\\\"name\\\":\\\"constant.character.escape.control.haskell\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.character.escape.begin.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.character.escape.end.haskell\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.haskell\\\"}]}]},\\\"type_application\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[\\\\\\\\s,;\\\\\\\\[\\\\\\\\]{}\\\\\\\"])(@)(')?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.prefix.at.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"name\\\":\\\"meta.type-application.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"(?<=[\\\\\\\\s,;\\\\\\\\[\\\\\\\\]{}\\\\\\\"])(@)(')?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.prefix.at.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"}},\\\"name\\\":\\\"meta.type-application.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"(?<=[\\\\\\\\s,;\\\\\\\\[\\\\\\\\]{}\\\\\\\"])(@)(?=\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.prefix.at.haskell\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\\\\\\\\")\\\",\\\"name\\\":\\\"meta.type-application.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_literal\\\"}]},{\\\"begin\\\":\\\"(?<=[\\\\\\\\s,;\\\\\\\\[\\\\\\\\]{}\\\\\\\"])(@)(?=[\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}'])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.prefix.at.haskell\\\"}},\\\"end\\\":\\\"(?![\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}'])\\\",\\\"name\\\":\\\"meta.type-application.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]}]},\\\"type_constructor\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.haskell\\\"}},\\\"match\\\":\\\"(')?((?:\\\\\\\\b[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\\\\\\.)*)(\\\\\\\\b[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.namespace.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.operator.haskell\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"match\\\":\\\"(')?(\\\\\\\\()\\\\\\\\s*((?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\\\\\\.)*)([\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+)\\\\\\\\s*(\\\\\\\\))\\\"}]},\\\"type_operator\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.operator.infix.haskell\\\"}},\\\"match\\\":\\\"(?:(?<!')('))?((?:\\\\\\\\b[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\\\\\\.)*)(?![#@]?-})(\\\\\\\\#+|[\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+(?<!\\\\\\\\#))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.backtick.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.namespace.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.infix.haskell\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.backtick.haskell\\\"}},\\\"match\\\":\\\"(')?(\\\\\\\\`)((?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\\\\\\.)*)([\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)(`)\\\"}]},\\\"type_signature\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_like\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"match\\\":\\\"(')?(\\\\\\\\()\\\\\\\\s*(\\\\\\\\))\\\",\\\"name\\\":\\\"support.constant.unit.haskell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(#)\\\\\\\\s*(#)(\\\\\\\\))\\\",\\\"name\\\":\\\"support.constant.unit.unboxed.haskell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"match\\\":\\\"(')?(\\\\\\\\()\\\\\\\\s*,[\\\\\\\\s,]*(\\\\\\\\))\\\",\\\"name\\\":\\\"support.constant.tuple.haskell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(#)\\\\\\\\s*(#)(\\\\\\\\))\\\",\\\"name\\\":\\\"support.constant.unit.unboxed.haskell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(#)\\\\\\\\s*,[\\\\\\\\s,]*(#)(\\\\\\\\))\\\",\\\"name\\\":\\\"support.constant.tuple.unboxed.haskell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"}},\\\"match\\\":\\\"(')?(\\\\\\\\[)\\\\\\\\s*(\\\\\\\\])\\\",\\\"name\\\":\\\"support.constant.empty-list.haskell\\\"},{\\\"include\\\":\\\"#integer_literals\\\"},{\\\"match\\\":\\\"(::|\u2237)(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']])\\\",\\\"name\\\":\\\"keyword.operator.double-colon.haskell\\\"},{\\\"include\\\":\\\"#forall\\\"},{\\\"match\\\":\\\"=>|\u21D2\\\",\\\"name\\\":\\\"keyword.operator.big-arrow.haskell\\\"},{\\\"include\\\":\\\"#string_literal\\\"},{\\\"match\\\":\\\"'[^']'\\\",\\\"name\\\":\\\"invalid\\\"},{\\\"include\\\":\\\"#type_application\\\"},{\\\"include\\\":\\\"#reserved_symbol\\\"},{\\\"include\\\":\\\"#type_operator\\\"},{\\\"include\\\":\\\"#type_constructor\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()(#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"}},\\\"end\\\":\\\"(#)(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.hash.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"(')?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.paren.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"(')?(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.promotion.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.bracket.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"include\\\":\\\"#type_variable\\\"}]},\\\"type_variable\\\":{\\\"match\\\":\\\"\\\\\\\\b(?<!')(?!(?:forall|deriving)\\\\\\\\b(?!'))[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\",\\\"name\\\":\\\"variable.other.generic-type.haskell\\\"},\\\"where\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!')\\\\\\\\b(where)\\\\\\\\s*(\\\\\\\\{)(?!-)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.where.haskell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.brace.haskell\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.haskell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.semicolon.haskell\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(?<!')(where)\\\\\\\\b(?!')\\\",\\\"name\\\":\\\"keyword.other.where.haskell\\\"}]}},\\\"scopeName\\\":\\\"source.haskell\\\",\\\"aliases\\\":[\\\"hs\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Haxe\\\",\\\"fileTypes\\\":[\\\"hx\\\",\\\"dump\\\"],\\\"name\\\":\\\"haxe\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#all\\\"}],\\\"repository\\\":{\\\"abstract\\\":{\\\"begin\\\":\\\"(?=abstract\\\\\\\\s+[A-Z])\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.hx\\\"}},\\\"name\\\":\\\"meta.abstract.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#abstract-name\\\"},{\\\"include\\\":\\\"#abstract-name-post\\\"},{\\\"include\\\":\\\"#abstract-block\\\"}]},\\\"abstract-block\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\{)\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.hx\\\"}},\\\"name\\\":\\\"meta.block.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"#modifiers\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"abstract-name\\\":{\\\"begin\\\":\\\"\\\\\\\\b(abstract)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.hx\\\"}},\\\"end\\\":\\\"([_A-Za-z]\\\\\\\\w*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"}]},\\\"abstract-name-post\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\w)\\\",\\\"end\\\":\\\"([\\\\\\\\{;])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"match\\\":\\\"\\\\\\\\b(from|to)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.hx\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"match\\\":\\\"[\\\\\\\\(\\\\\\\\)]\\\",\\\"name\\\":\\\"punctuation.definition.other.hx\\\"}]},\\\"accessor-method\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(get|set)_[_A-Za-z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.hx\\\"}]},\\\"all\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#package\\\"},{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#using\\\"},{\\\"match\\\":\\\"\\\\\\\\b(final)\\\\\\\\b(?=\\\\\\\\s+(class|interface|extern|private)\\\\\\\\b)\\\",\\\"name\\\":\\\"storage.modifier.hx\\\"},{\\\"include\\\":\\\"#abstract\\\"},{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#enum\\\"},{\\\"include\\\":\\\"#interface\\\"},{\\\"include\\\":\\\"#typedef\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"array\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.hx\\\"}},\\\"name\\\":\\\"meta.array.literal.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"arrow-function\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(?=[^(]*?\\\\\\\\)\\\\\\\\s*->)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.hx\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*(->)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.arrow.hx\\\"}},\\\"name\\\":\\\"meta.method.arrow.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrow-function-parameter\\\"}]},\\\"arrow-function-parameter\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\(|,)\\\",\\\"end\\\":\\\"(?=\\\\\\\\)|,)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-name\\\"},{\\\"include\\\":\\\"#arrow-function-parameter-type-hint\\\"},{\\\"include\\\":\\\"#parameter-assign\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#global\\\"}]},\\\"arrow-function-parameter-type-hint\\\":{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.hx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\)|,|=)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"block-contents\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#modifiers\\\"},{\\\"include\\\":\\\"#new-expr\\\"},{\\\"include\\\":\\\"#for-loop\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#arrow-function\\\"},{\\\"include\\\":\\\"#method-call\\\"},{\\\"include\\\":\\\"#enum-constructor-call\\\"},{\\\"include\\\":\\\"#punctuation-braces\\\"},{\\\"include\\\":\\\"#macro-reification\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#operator-assignment\\\"},{\\\"include\\\":\\\"#punctuation-terminator\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"class\\\":{\\\"begin\\\":\\\"(?=class)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.hx\\\"}},\\\"name\\\":\\\"meta.class.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#class-name-post\\\"},{\\\"include\\\":\\\"#class-block\\\"}]},\\\"class-block\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\{)\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.hx\\\"}},\\\"name\\\":\\\"meta.block.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"#modifiers\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"class-name\\\":{\\\"begin\\\":\\\"\\\\\\\\b(class)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.hx\\\"}},\\\"end\\\":\\\"([_A-Za-z]\\\\\\\\w*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.hx\\\"}},\\\"name\\\":\\\"meta.class.identifier.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"}]},\\\"class-name-post\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\w)\\\",\\\"end\\\":\\\"([\\\\\\\\{;])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#modifiers-inheritance\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hx\\\"}},\\\"name\\\":\\\"comment.block.documentation.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javadoc-tags\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hx\\\"}},\\\"name\\\":\\\"comment.block.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javadoc-tags\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hx\\\"}},\\\"match\\\":\\\"(//).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.hx\\\"}]},\\\"conditional-compilation\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"match\\\":\\\"((#(if|elseif))[\\\\\\\\s!]+([a-zA-Z_][a-zA-Z0-9_]*(\\\\\\\\.[a-zA-Z_][a-zA-Z0-9_]*)*)(?=\\\\\\\\s|/\\\\\\\\*|//))\\\"},{\\\"begin\\\":\\\"((#(if|elseif))[\\\\\\\\s!]*)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\)|\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"name\\\":\\\"punctuation.definition.tag\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#conditional-compilation-parens\\\"}]},{\\\"match\\\":\\\"(#(end|else|error|line))\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"},{\\\"match\\\":\\\"(#([a-zA-Z0-9_]*))\\\\\\\\s\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"}]},\\\"conditional-compilation-parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#conditional-compilation-parens\\\"}]},\\\"constant-name\\\":{\\\"match\\\":\\\"\\\\\\\\b([_A-Z][_A-Z0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.hx\\\"},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.hx\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.hex.hx\\\"},\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.suffix.hx\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:0[xX][0-9a-fA-F][_0-9a-fA-F]*([iu][0-9][0-9_]*)?)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.bin.hx\\\"},\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.suffix.hx\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:0[bB][01][_01]*([iu][0-9][0-9_]*)?)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.decimal.hx\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.suffix.hx\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.hx\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.suffix.hx\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.hx\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.suffix.hx\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.suffix.hx\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.hx\\\"},\\\"9\\\":{\\\"name\\\":\\\"constant.numeric.suffix.hx\\\"},\\\"10\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.hx\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.numeric.suffix.hx\\\"},\\\"12\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.hx\\\"},\\\"13\\\":{\\\"name\\\":\\\"constant.numeric.suffix.hx\\\"},\\\"14\\\":{\\\"name\\\":\\\"constant.numeric.suffix.hx\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9_]+[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9_]+([fiu][0-9][0-9_]*)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9_]+([fiu][0-9][0-9_]*)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(?!\\\\\\\\.)(?:\\\\\\\\B|([fiu][0-9][0-9_]*)\\\\\\\\b))|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*([fiu][0-9][0-9_]*)?\\\\\\\\b))(?!\\\\\\\\$)\\\"}]},\\\"enum\\\":{\\\"begin\\\":\\\"(?=enum\\\\\\\\s+[A-Z])\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.hx\\\"}},\\\"name\\\":\\\"meta.enum.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#enum-name\\\"},{\\\"include\\\":\\\"#enum-name-post\\\"},{\\\"include\\\":\\\"#enum-block\\\"}]},\\\"enum-block\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\{)\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.hx\\\"}},\\\"name\\\":\\\"meta.block.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"enum-constructor-call\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)((_*[a-z]\\\\\\\\w*\\\\\\\\.)*)(_*[A-Z]\\\\\\\\w*)(?:(\\\\\\\\.)(_*[A-Z]\\\\\\\\w*[a-z]\\\\\\\\w*))*\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.package.hx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.hx\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.package.hx\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.hx\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"enum-name\\\":{\\\"begin\\\":\\\"\\\\\\\\b(enum)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.hx\\\"}},\\\"end\\\":\\\"([_A-Za-z]\\\\\\\\w*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"}]},\\\"enum-name-post\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\w)\\\",\\\"end\\\":\\\"([\\\\\\\\{;])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"for-loop\\\":{\\\"begin\\\":\\\"\\\\\\\\b(for)\\\\\\\\b\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow-control.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.in.hx\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"function-type\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-type-parameter\\\"}]},\\\"function-type-parameter\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\(|,)\\\",\\\"end\\\":\\\"(?=\\\\\\\\)|,)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#operator-optional\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#function-type-parameter-name\\\"},{\\\"include\\\":\\\"#function-type-parameter-type-hint\\\"},{\\\"include\\\":\\\"#parameter-assign\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#global\\\"}]},\\\"function-type-parameter-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.hx\\\"}},\\\"match\\\":\\\"([_a-zA-Z]\\\\\\\\w*)(?=\\\\\\\\s*:)\\\"},\\\"function-type-parameter-type-hint\\\":{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.hx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\)|,|=)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"global\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#conditional-compilation\\\"}]},\\\"identifier-name\\\":{\\\"match\\\":\\\"\\\\\\\\b([_A-Za-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.hx\\\"},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constant-name\\\"},{\\\"include\\\":\\\"#type-name\\\"},{\\\"include\\\":\\\"#identifier-name\\\"}]},\\\"import\\\":{\\\"begin\\\":\\\"import\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.import.hx\\\"}},\\\"end\\\":\\\"$|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-path\\\"},{\\\"match\\\":\\\"\\\\\\\\b(as)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.as.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\b(in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.in.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"constant.language.import-all.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\b([_A-Za-z]\\\\\\\\w*)\\\\\\\\b(?=\\\\\\\\s*(as|in|$|(;)))\\\",\\\"name\\\":\\\"variable.other.hxt\\\"},{\\\"include\\\":\\\"#type-path-package-name\\\"}]},\\\"interface\\\":{\\\"begin\\\":\\\"(?=interface)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.hx\\\"}},\\\"name\\\":\\\"meta.interface.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface-name\\\"},{\\\"include\\\":\\\"#interface-name-post\\\"},{\\\"include\\\":\\\"#interface-block\\\"}]},\\\"interface-block\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\{)\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.hx\\\"}},\\\"name\\\":\\\"meta.block.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"interface-name\\\":{\\\"begin\\\":\\\"\\\\\\\\b(interface)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.hx\\\"}},\\\"end\\\":\\\"([_A-Za-z]\\\\\\\\w*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"}]},\\\"interface-name-post\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\w)\\\",\\\"end\\\":\\\"([\\\\\\\\{;])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#modifiers-inheritance\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"javadoc-tags\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.javadoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.javadoc\\\"}},\\\"match\\\":\\\"(@(?:param|exception|throws|event))\\\\\\\\s+([_A-Za-z]\\\\\\\\w*)\\\\\\\\s+\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.javadoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.javadoc\\\"}},\\\"match\\\":\\\"(@since)\\\\\\\\s+([\\\\\\\\w\\\\\\\\.-]+)\\\\\\\\s+\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.class.javadoc\\\"}},\\\"match\\\":\\\"@(param|exception|throws|deprecated|returns?|since|default|see|event)\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=trace|$type|if|while|for|super)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-contents\\\"}]},{\\\"begin\\\":\\\"(?<=catch)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-contents\\\"},{\\\"include\\\":\\\"#type-check\\\"}]},{\\\"begin\\\":\\\"(?<=cast)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=,)\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#block-contents\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(try|catch|throw)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.catch-exception.hx\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(case|default)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow-control.hx\\\"}},\\\"end\\\":\\\":|(?=if)|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.variable.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.hx\\\"}},\\\"match\\\":\\\"\\\\\\\\b(var|final)\\\\\\\\b\\\\\\\\s*([_a-zA-Z]\\\\\\\\w*)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"meta.brace.round.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.brace.round.hx\\\"},{\\\"include\\\":\\\"#macro-reification\\\"},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.operator.extractor.hx\\\"},{\\\"include\\\":\\\"#operator-assignment\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#method-call\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(if|else|return|do|while|for|break|continue|switch|case|default)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow-control.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\b(cast|untyped)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.untyped.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\btrace\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.trace.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\$type\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.type.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\__(global|this)__\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.untyped-property.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\b(this|super)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\bnew\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.new.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\b(abstract|class|enum|interface|typedef)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.hx\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"storage.type.function.arrow.hx\\\"},{\\\"include\\\":\\\"#modifiers\\\"},{\\\"include\\\":\\\"#modifiers-inheritance\\\"}]},\\\"keywords-accessor\\\":{\\\"match\\\":\\\"\\\\\\\\b(default|get|set|dynamic|never|null)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.property.hx\\\"},\\\"macro-reification\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.reification.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.reification.hx\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)([eabipv])\\\\\\\\{\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.reification.hx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.reification.hx\\\"}},\\\"match\\\":\\\"((\\\\\\\\$)([a-zA-Z]*))\\\"}]},\\\"metadata\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|cs.assemblyMeta|cs.assemblyStrict|cs.using|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|file|fileXml|final|fixed|flash.property|font|forward.new|forward.variance|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|genericClassPerMethod|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inheritDoc|inline|internal|isVar|java.native|javaCanonical|jsRequire|jvm.synthetic|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noClosure|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|nullSafety|objc|objcProtocol|op|optional|overload|persistent|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|transitive|unifyMinDynamic|unreflective|unsafe|using|void|volatile)\\\\\\\\b)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.metadata.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.metadata.hx\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-contents\\\"}]},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.metadata.hx\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.metadata.hx\\\"}},\\\"match\\\":\\\"((@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|cs.assemblyMeta|cs.assemblyStrict|cs.using|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|file|fileXml|final|fixed|flash.property|font|forward.new|forward.variance|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|genericClassPerMethod|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inheritDoc|inline|internal|isVar|java.native|javaCanonical|jsRequire|jvm.synthetic|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noClosure|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|nullSafety|objc|objcProtocol|op|optional|overload|persistent|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|transitive|unifyMinDynamic|unreflective|unsafe|using|void|volatile)\\\\\\\\b))\\\"},{\\\"begin\\\":\\\"(@)(:?[a-zA-Z_]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.metadata.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.metadata.hx\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-contents\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.metadata.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.metadata.hx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.metadata.hx\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.accessor.hx\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.metadata.hx\\\"}},\\\"match\\\":\\\"(@)(:?)([a-zA-Z_]*(\\\\\\\\.))*([a-zA-Z_]*)?\\\"}]},\\\"method\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\bfunction\\\\\\\\b)\\\",\\\"end\\\":\\\"(?<=[\\\\\\\\};])\\\",\\\"name\\\":\\\"meta.method.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-reification\\\"},{\\\"include\\\":\\\"#method-name\\\"},{\\\"include\\\":\\\"#method-name-post\\\"},{\\\"include\\\":\\\"#method-block\\\"}]},\\\"method-block\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.hx\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.hx\\\"}},\\\"name\\\":\\\"meta.method.block.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"method-call\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?:(__(?:addressOf|as|call|checked|cpp|cs|define_feature|delete|feature|field|fixed|foreach|forin|has_next|hkeys|in|int|is|java|js|keys|lock|lua|lua_table|new|php|physeq|prefix|ptr|resources|rethrow|set|setfield|sizeof|type|typeof|unprotect|unsafe|valueOf|var|vector|vmem_get|vmem_set|vmem_sign|instanceof|strict_eq|strict_neq)__)|([_a-z]\\\\\\\\w*))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.untyped-function.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.hx\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"method-name\\\":{\\\"begin\\\":\\\"\\\\\\\\b(function)\\\\\\\\b\\\\\\\\s*\\\\\\\\b(?:(new)|([_A-Za-z]\\\\\\\\w*))?\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.hx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.hx\\\"}},\\\"end\\\":\\\"(?=$|\\\\\\\\()\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-reification\\\"},{\\\"include\\\":\\\"#type-parameters\\\"}]},\\\"method-name-post\\\":{\\\"begin\\\":\\\"(?<=[\\\\\\\\w\\\\\\\\s>])\\\",\\\"end\\\":\\\"(\\\\\\\\{)|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#method-return-type-hint\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"method-return-type-hint\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.hx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{|;|[a-z0-9])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"modifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(enum)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class\\\"},{\\\"match\\\":\\\"\\\\\\\\b(public|private|static|dynamic|inline|macro|extern|override|overload|abstract)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\b(final)\\\\\\\\b(?=\\\\\\\\s+(public|private|static|dynamic|inline|macro|extern|override|overload|abstract|function))\\\",\\\"name\\\":\\\"storage.modifier.hx\\\"}]},\\\"modifiers-inheritance\\\":{\\\"match\\\":\\\"\\\\\\\\b(implements|extends)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.hx\\\"},\\\"new-expr\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(new)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.new.hx\\\"}},\\\"end\\\":\\\"(?=$|\\\\\\\\()\\\",\\\"name\\\":\\\"new.expr.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"operator-assignment\\\":{\\\"match\\\":\\\"(=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.hx\\\"},\\\"operator-optional\\\":{\\\"match\\\":\\\"(\\\\\\\\?)(?!\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.operator.optional.hx\\\"},\\\"operator-type-hint\\\":{\\\"match\\\":\\\"(:)\\\",\\\"name\\\":\\\"keyword.operator.type.annotation.hx\\\"},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(&&|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.logical.hx\\\"},{\\\"match\\\":\\\"(~|&|\\\\\\\\||\\\\\\\\^|>>>|<<|>>)\\\",\\\"name\\\":\\\"keyword.operator.bitwise.hx\\\"},{\\\"match\\\":\\\"(==|!=|<=|>=|<|>)\\\",\\\"name\\\":\\\"keyword.operator.comparison.hx\\\"},{\\\"match\\\":\\\"(!)\\\",\\\"name\\\":\\\"keyword.operator.logical.hx\\\"},{\\\"match\\\":\\\"(\\\\\\\\-\\\\\\\\-|\\\\\\\\+\\\\\\\\+)\\\",\\\"name\\\":\\\"keyword.operator.increment-decrement.hx\\\"},{\\\"match\\\":\\\"(\\\\\\\\-|\\\\\\\\+|\\\\\\\\*|\\\\\\\\/|%)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.intiterator.hx\\\"},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.operator.arrow.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.nullcoalescing.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.safenavigation.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\bis\\\\\\\\b(?!\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.other.hx\\\"},{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.hx\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-contents\\\"}]}]},\\\"package\\\":{\\\"begin\\\":\\\"package\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.package.hx\\\"}},\\\"end\\\":\\\"$|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-path\\\"},{\\\"include\\\":\\\"#type-path-package-name\\\"}]},\\\"parameter\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\(|,)\\\",\\\"end\\\":\\\"(?=\\\\\\\\)(?!\\\\\\\\s*->)|,)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-name\\\"},{\\\"include\\\":\\\"#parameter-type-hint\\\"},{\\\"include\\\":\\\"#parameter-assign\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#global\\\"}]},\\\"parameter-assign\\\":{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.hx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\)|,)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"parameter-name\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\(|,)\\\",\\\"end\\\":\\\"([_a-zA-Z]\\\\\\\\w*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#operator-optional\\\"}]},\\\"parameter-type-hint\\\":{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.hx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\)(?!\\\\\\\\s*->)|,|=)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\)(?!\\\\\\\\s*->))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.hx\\\"}},\\\"name\\\":\\\"meta.parameters.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter\\\"}]},\\\"punctuation-accessor\\\":{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.accessor.hx\\\"},\\\"punctuation-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"},{\\\"include\\\":\\\"#type-check\\\"}]},\\\"punctuation-comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.hx\\\"},\\\"punctuation-terminator\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.hx\\\"},\\\"regex\\\":{\\\"begin\\\":\\\"(~/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hx\\\"}},\\\"end\\\":\\\"(/)([gimsu]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.hx\\\"}},\\\"name\\\":\\\"string.regexp.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},\\\"regex-character-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[wWsSdDtrnvf]|\\\\\\\\.\\\",\\\"name\\\":\\\"constant.other.character-class.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{3}|x\\\\\\\\h\\\\\\\\h|u\\\\\\\\h\\\\\\\\h\\\\\\\\h\\\\\\\\h)\\\",\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c[A-Z]\\\",\\\"name\\\":\\\"constant.character.control.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[bB]|\\\\\\\\^|\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.control.anchor.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d*\\\",\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},{\\\"match\\\":\\\"[?+*]|\\\\\\\\{(\\\\\\\\d+,\\\\\\\\d+|\\\\\\\\d+,|,\\\\\\\\d+|\\\\\\\\d+)\\\\\\\\}\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.or.regexp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()((\\\\\\\\?=)|(\\\\\\\\?!))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.assertion.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.assertion.look-ahead.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-ahead.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.assertion.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\((\\\\\\\\?:)?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.capture.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.regexp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(?:.|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x\\\\\\\\h\\\\\\\\h|u\\\\\\\\h\\\\\\\\h\\\\\\\\h\\\\\\\\h))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\\\\\\-(?:[^\\\\\\\\]\\\\\\\\\\\\\\\\]|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x\\\\\\\\h\\\\\\\\h|u\\\\\\\\h\\\\\\\\h\\\\\\\\h\\\\\\\\h))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.other.character-class.range.regexp\\\"},{\\\"include\\\":\\\"#regex-character-class\\\"}]},{\\\"include\\\":\\\"#regex-character-class\\\"}]},\\\"string-escape-sequences\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-3][0-9]{2}\\\",\\\"name\\\":\\\"constant.character.escape.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9A-Fa-f]{2}\\\",\\\"name\\\":\\\"constant.character.escape.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u[0-9]{4}\\\",\\\"name\\\":\\\"constant.character.escape.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u\\\\\\\\{[0-9A-Fa-f]{1,}\\\\\\\\}\\\",\\\"name\\\":\\\"constant.character.escape.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[nrt\\\\\\\"'\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.escape.sequence.hx\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hx\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hx\\\"}},\\\"name\\\":\\\"string.quoted.double.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-escape-sequences\\\"}]},{\\\"begin\\\":\\\"(')\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.single.hx\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hx\\\"}},\\\"end\\\":\\\"(')\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.single.hx\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hx\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\$(?=\\\\\\\\$)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.character.escape.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.character.escape.hx\\\"}},\\\"name\\\":\\\"string.quoted.single.hx\\\"},{\\\"include\\\":\\\"#string-escape-sequences\\\"},{\\\"begin\\\":\\\"(\\\\\\\\${)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.hx\\\"}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-contents\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.hx\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)([_a-zA-Z]\\\\\\\\w*)\\\"},{\\\"match\\\":\\\"\\\",\\\"name\\\":\\\"constant.character.escape.hx\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string.quoted.single.hx\\\"}]}]},\\\"type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#macro-reification\\\"},{\\\"include\\\":\\\"#type-name\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"keyword.operator.type.function.hx\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"keyword.operator.type.intersection.hx\\\"},{\\\"match\\\":\\\"\\\\\\\\?(?=\\\\\\\\s*[_A-Z])\\\",\\\"name\\\":\\\"keyword.operator.optional\\\"},{\\\"match\\\":\\\"\\\\\\\\?(?!\\\\\\\\s*[_A-Z])\\\",\\\"name\\\":\\\"punctuation.definition.tag\\\"},{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.hx\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#typedef-block\\\"}]},{\\\"include\\\":\\\"#function-type\\\"}]},\\\"type-check\\\":{\\\"begin\\\":\\\"(?<!macro)(?=:)\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#operator-type-hint\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"type-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.builtin.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.package.hx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.hx\\\"}},\\\"match\\\":\\\"\\\\\\\\b(Any|Array|ArrayAccess|Bool|Class|Date|DateTools|Dynamic|Enum|EnumValue|EReg|Float|IMap|Int|IntIterator|Iterable|Iterator|KeyValueIterator|KeyValueIterable|Lambda|List|ListIterator|ListNode|Map|Math|Null|Reflect|Single|Std|String|StringBuf|StringTools|Sys|Type|UInt|UnicodeString|ValueType|Void|Xml|XmlType)(?:(\\\\\\\\.)(_*[A-Z]\\\\\\\\w*[a-z]\\\\\\\\w*))*\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.package.hx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.hx\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.package.hx\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.hx\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<![^.]\\\\\\\\.)((_*[a-z]\\\\\\\\w*\\\\\\\\.)*)(_*[A-Z]\\\\\\\\w*)(?:(\\\\\\\\.)(_*[A-Z]\\\\\\\\w*[a-z]\\\\\\\\w*))*\\\\\\\\b\\\"}]},\\\"type-parameter-constraint-new\\\":{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"keyword.operator.type.annotation.hxt\\\"},\\\"type-parameter-constraint-old\\\":{\\\"begin\\\":\\\"(:)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.hx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.constraint.begin.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.constraint.end.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-parameters\\\":{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.hx\\\"}},\\\"end\\\":\\\"(?=$)|(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.hx\\\"}},\\\"name\\\":\\\"meta.type-parameters.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#type-parameter-constraint-old\\\"},{\\\"include\\\":\\\"#type-parameter-constraint-new\\\"},{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-path\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"},{\\\"include\\\":\\\"#type-path-type-name\\\"}]},\\\"type-path-package-name\\\":{\\\"match\\\":\\\"\\\\\\\\b([_A-Za-z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"support.package.hx\\\"},\\\"type-path-type-name\\\":{\\\"match\\\":\\\"\\\\\\\\b(_*[A-Z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.hx\\\"},\\\"typedef\\\":{\\\"begin\\\":\\\"(?=typedef)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.hx\\\"}},\\\"name\\\":\\\"meta.typedef.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#typedef-name\\\"},{\\\"include\\\":\\\"#typedef-name-post\\\"},{\\\"include\\\":\\\"#typedef-block\\\"}]},\\\"typedef-block\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\{)\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.hx\\\"}},\\\"name\\\":\\\"meta.block.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#modifiers\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#operator-optional\\\"},{\\\"include\\\":\\\"#typedef-extension\\\"},{\\\"include\\\":\\\"#typedef-simple-field-type-hint\\\"},{\\\"include\\\":\\\"#identifier-name\\\"},{\\\"include\\\":\\\"#strings\\\"}]},\\\"typedef-extension\\\":{\\\"begin\\\":\\\">\\\",\\\"end\\\":\\\",|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"typedef-name\\\":{\\\"begin\\\":\\\"\\\\\\\\b(typedef)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.hx\\\"}},\\\"end\\\":\\\"([_A-Za-z]\\\\\\\\w*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"}]},\\\"typedef-name-post\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\w)\\\",\\\"end\\\":\\\"(\\\\\\\\{)|(?=;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#punctuation-brackets\\\"},{\\\"include\\\":\\\"#punctuation-separator\\\"},{\\\"include\\\":\\\"#operator-assignment\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"typedef-simple-field-type-hint\\\":{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.hx\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\}|,|;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},\\\"using\\\":{\\\"begin\\\":\\\"using\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.using.hx\\\"}},\\\"end\\\":\\\"$|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-path\\\"},{\\\"include\\\":\\\"#type-path-package-name\\\"}]},\\\"variable\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\b(var|final)\\\\\\\\b)\\\",\\\"end\\\":\\\"(?=$)|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#variable-name\\\"},{\\\"include\\\":\\\"#variable-name-next\\\"},{\\\"include\\\":\\\"#variable-assign\\\"},{\\\"include\\\":\\\"#variable-name-post\\\"}]},\\\"variable-accessors\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.hx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.hx\\\"}},\\\"name\\\":\\\"meta.parameters.hx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#keywords-accessor\\\"},{\\\"include\\\":\\\"#accessor-method\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"variable-assign\\\":{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.hx\\\"}},\\\"end\\\":\\\"(?=;|,)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"variable-name\\\":{\\\"begin\\\":\\\"\\\\\\\\b(var|final)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.variable.hx\\\"}},\\\"end\\\":\\\"(?=$)|([_a-zA-Z]\\\\\\\\w*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#operator-optional\\\"}]},\\\"variable-name-next\\\":{\\\"begin\\\":\\\",\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.comma.hx\\\"}},\\\"end\\\":\\\"([_a-zA-Z]\\\\\\\\w*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.hx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#global\\\"}]},\\\"variable-name-post\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\w)\\\",\\\"end\\\":\\\"(?=;)|(?==)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable-accessors\\\"},{\\\"include\\\":\\\"#variable-type-hint\\\"},{\\\"include\\\":\\\"#block-contents\\\"}]},\\\"variable-type-hint\\\":{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.hx\\\"}},\\\"end\\\":\\\"(?=$|;|,|=)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}},\\\"scopeName\\\":\\\"source.hx\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"HashiCorp HCL\\\",\\\"fileTypes\\\":[\\\"hcl\\\"],\\\"name\\\":\\\"hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#attribute_definition\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#expressions\\\"}],\\\"repository\\\":{\\\"attribute_access\\\":{\\\"begin\\\":\\\"\\\\\\\\.(?!\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.accessor.hcl\\\"}},\\\"comment\\\":\\\"Matches traversal attribute access such as .attr\\\",\\\"end\\\":\\\"[[:alpha:]][\\\\\\\\w-]*|\\\\\\\\d*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Attribute name\\\",\\\"match\\\":\\\"(?!null|false|true)[[:alpha:]][\\\\\\\\w-]*\\\",\\\"name\\\":\\\"variable.other.member.hcl\\\"},{\\\"comment\\\":\\\"Optional attribute index\\\",\\\"match\\\":\\\"\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.numeric.integer.hcl\\\"}]}}},\\\"attribute_definition\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.hcl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.hcl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.assignment.hcl\\\"}},\\\"comment\\\":\\\"Identifier \\\\\\\"=\\\\\\\" with optional parens\\\",\\\"match\\\":\\\"(\\\\\\\\()?(\\\\\\\\b(?!null\\\\\\\\b|false\\\\\\\\b|true\\\\\\\\b)[[:alpha:]][[:alnum:]_-]*)(\\\\\\\\))?\\\\\\\\s*(\\\\\\\\=(?!\\\\\\\\=|\\\\\\\\>))\\\\\\\\s*\\\",\\\"name\\\":\\\"variable.declaration.hcl\\\"},\\\"attribute_splat\\\":{\\\"begin\\\":\\\"\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.accessor.hcl\\\"}},\\\"comment\\\":\\\"Legacy attribute-only splat\\\",\\\"end\\\":\\\"\\\\\\\\*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.splat.hcl\\\"}}},\\\"block\\\":{\\\"begin\\\":\\\"([\\\\\\\\w][\\\\\\\\-\\\\\\\\w]*)(([^\\\\\\\\S\\\\\\\\r\\\\\\\\n]+([\\\\\\\\w][\\\\\\\\-_\\\\\\\\w]*|\\\\\\\\\\\\\\\"[^\\\\\\\\\\\\\\\"\\\\\\\\r\\\\\\\\n]*\\\\\\\\\\\\\\\"))*)[^\\\\\\\\S\\\\\\\\r\\\\\\\\n]*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Block type\\\",\\\"match\\\":\\\"\\\\\\\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.hcl\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Block label (String Literal)\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\"[^\\\\\\\\\\\\\\\"\\\\\\\\r\\\\\\\\n]*\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"variable.other.enummember.hcl\\\"},{\\\"comment\\\":\\\"Block label (Identifier)\\\",\\\"match\\\":\\\"[[:alpha:]][[:alnum:]_-]*\\\",\\\"name\\\":\\\"variable.other.enummember.hcl\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.hcl\\\"}},\\\"comment\\\":\\\"This will match HCL blocks like `thing1 \\\\\\\"one\\\\\\\" \\\\\\\"two\\\\\\\" {` or `thing2 {`\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.hcl\\\"}},\\\"name\\\":\\\"meta.block.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#attribute_definition\\\"},{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#block\\\"}]},\\\"block_inline_comments\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hcl\\\"}},\\\"comment\\\":\\\"Inline comments start with the /* sequence and end with the */ sequence, and may have any characters within except the ending sequence. An inline comment is considered equivalent to a whitespace sequence\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.hcl\\\"},\\\"brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.begin.hcl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.end.hcl\\\"}},\\\"patterns\\\":[{\\\"comment\\\":\\\"Splat operator\\\",\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.operator.splat.hcl\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#inline_for_expression\\\"},{\\\"include\\\":\\\"#inline_if_expression\\\"},{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#local_identifiers\\\"}]},\\\"char_escapes\\\":{\\\"comment\\\":\\\"Character Escapes\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[nrt\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\u(\\\\\\\\h{8}|\\\\\\\\h{4})\\\",\\\"name\\\":\\\"constant.character.escape.hcl\\\"},\\\"comma\\\":{\\\"comment\\\":\\\"Commas - used in certain expressions\\\",\\\"match\\\":\\\"\\\\\\\\,\\\",\\\"name\\\":\\\"punctuation.separator.hcl\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#hash_line_comments\\\"},{\\\"include\\\":\\\"#double_slash_line_comments\\\"},{\\\"include\\\":\\\"#block_inline_comments\\\"}]},\\\"double_slash_line_comments\\\":{\\\"begin\\\":\\\"//\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hcl\\\"}},\\\"comment\\\":\\\"Line comments start with // sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.hcl\\\"},\\\"expressions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_values\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#tuple_for_expression\\\"},{\\\"include\\\":\\\"#object_for_expression\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#objects\\\"},{\\\"include\\\":\\\"#attribute_access\\\"},{\\\"include\\\":\\\"#attribute_splat\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#parens\\\"}]},\\\"for_expression_body\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"in keyword\\\",\\\"match\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.hcl\\\"},{\\\"comment\\\":\\\"if keyword\\\",\\\"match\\\":\\\"\\\\\\\\bif\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.conditional.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\:\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#local_identifiers\\\"}]},\\\"functions\\\":{\\\"begin\\\":\\\"([:\\\\\\\\-\\\\\\\\w]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[[:alpha:]][\\\\\\\\w_-]*::([[:alpha:]][\\\\\\\\w_-]*::)?[[:alpha:]][\\\\\\\\w_-]*\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.namespaced.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\b[[:alpha:]][\\\\\\\\w_-]*\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.hcl\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.hcl\\\"}},\\\"comment\\\":\\\"Built-in function calls\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.hcl\\\"}},\\\"name\\\":\\\"meta.function-call.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#comma\\\"}]},\\\"hash_line_comments\\\":{\\\"begin\\\":\\\"#\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hcl\\\"}},\\\"comment\\\":\\\"Line comments start with # sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.hcl\\\"},\\\"hcl_type_keywords\\\":{\\\"comment\\\":\\\"Type keywords known to HCL.\\\",\\\"match\\\":\\\"\\\\\\\\b(any|string|number|bool|list|set|map|tuple|object)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.hcl\\\"},\\\"heredoc\\\":{\\\"begin\\\":\\\"(\\\\\\\\<\\\\\\\\<\\\\\\\\-?)\\\\\\\\s*(\\\\\\\\w+)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.heredoc.hcl\\\"}},\\\"comment\\\":\\\"String Heredoc\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.heredoc.hcl\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_interpolation\\\"}]},\\\"inline_for_expression\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.hcl\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\=\\\\\\\\>\\\",\\\"name\\\":\\\"storage.type.function.hcl\\\"},{\\\"include\\\":\\\"#for_expression_body\\\"}]}},\\\"match\\\":\\\"(for)\\\\\\\\b(.*)\\\\\\\\n\\\"},\\\"inline_if_expression\\\":{\\\"begin\\\":\\\"(if)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.hcl\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#local_identifiers\\\"}]},\\\"language_constants\\\":{\\\"comment\\\":\\\"Language Constants\\\",\\\"match\\\":\\\"\\\\\\\\b(true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.hcl\\\"},\\\"literal_values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#numeric_literals\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#string_literals\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#hcl_type_keywords\\\"}]},\\\"local_identifiers\\\":{\\\"comment\\\":\\\"Local Identifiers\\\",\\\"match\\\":\\\"\\\\\\\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.hcl\\\"},\\\"numeric_literals\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.exponent.hcl\\\"}},\\\"comment\\\":\\\"Integer, no fraction, optional exponent\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+([Ee][+-]?)\\\\\\\\d+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.hcl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.exponent.hcl\\\"}},\\\"comment\\\":\\\"Integer, fraction, optional exponent\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+(\\\\\\\\.)\\\\\\\\d+(?:([Ee][+-]?)\\\\\\\\d+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.hcl\\\"},{\\\"comment\\\":\\\"Integers\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.hcl\\\"}]},\\\"object_for_expression\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\\\\\\s?(for)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.hcl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.hcl\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\=\\\\\\\\>\\\",\\\"name\\\":\\\"storage.type.function.hcl\\\"},{\\\"include\\\":\\\"#for_expression_body\\\"}]},\\\"object_key_values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#literal_values\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#tuple_for_expression\\\"},{\\\"include\\\":\\\"#object_for_expression\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#functions\\\"}]},\\\"objects\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.hcl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.hcl\\\"}},\\\"name\\\":\\\"meta.braces.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#objects\\\"},{\\\"include\\\":\\\"#inline_for_expression\\\"},{\\\"include\\\":\\\"#inline_if_expression\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.mapping.key.hcl variable.other.readwrite.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.hcl\\\"}},\\\"comment\\\":\\\"Literal, named object key\\\",\\\"match\\\":\\\"\\\\\\\\b((?!null|false|true)[[:alpha:]][[:alnum:]_-]*)\\\\\\\\s*(\\\\\\\\=(?!=))\\\\\\\\s*\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.mapping.key.hcl string.quoted.double.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hcl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hcl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.hcl\\\"}},\\\"comment\\\":\\\"String object key\\\",\\\"match\\\":\\\"^\\\\\\\\s*((\\\\\\\").*(\\\\\\\"))\\\\\\\\s*(\\\\\\\\=)\\\\\\\\s*\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.hcl\\\"}},\\\"comment\\\":\\\"Computed object key (any expression between parens)\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*(=|:)\\\\\\\\s*\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.hcl\\\"}},\\\"name\\\":\\\"meta.mapping.key.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute_access\\\"},{\\\"include\\\":\\\"#attribute_splat\\\"}]},{\\\"include\\\":\\\"#object_key_values\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\>\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\<\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\-\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\/\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\%\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\\\\\\&\\\",\\\"name\\\":\\\"keyword.operator.logical.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"keyword.operator.logical.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\>\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\<\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\:\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\\\\\\>\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"}]},\\\"parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.hcl\\\"}},\\\"comment\\\":\\\"Parens - matched *after* function syntax\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.hcl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#expressions\\\"}]},\\\"string_interpolation\\\":{\\\"begin\\\":\\\"(?<![%$])([%$]{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.interpolation.begin.hcl\\\"}},\\\"comment\\\":\\\"String interpolation\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.interpolation.end.hcl\\\"}},\\\"name\\\":\\\"meta.interpolation.hcl\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Trim left whitespace\\\",\\\"match\\\":\\\"\\\\\\\\~\\\\\\\\s\\\",\\\"name\\\":\\\"keyword.operator.template.left.trim.hcl\\\"},{\\\"comment\\\":\\\"Trim right whitespace\\\",\\\"match\\\":\\\"\\\\\\\\s\\\\\\\\~\\\",\\\"name\\\":\\\"keyword.operator.template.right.trim.hcl\\\"},{\\\"comment\\\":\\\"if/else/endif and for/in/endfor directives\\\",\\\"match\\\":\\\"\\\\\\\\b(if|else|endif|for|in|endfor)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.hcl\\\"},{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#local_identifiers\\\"}]},\\\"string_literals\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hcl\\\"}},\\\"comment\\\":\\\"Strings\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hcl\\\"}},\\\"name\\\":\\\"string.quoted.double.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_interpolation\\\"},{\\\"include\\\":\\\"#char_escapes\\\"}]},\\\"tuple_for_expression\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\\\\\\s?(for)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.brackets.begin.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.hcl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.end.hcl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#for_expression_body\\\"}]}},\\\"scopeName\\\":\\\"source.hcl\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Hjson\\\",\\\"fileTypes\\\":[\\\"hjson\\\"],\\\"foldingStartMarker\\\":\\\"(?:^\\\\\\\\s*[{\\\\\\\\[](?!.*[}\\\\\\\\]],?\\\\\\\\s*$)|[{\\\\\\\\[]\\\\\\\\s*$)\\\",\\\"foldingStopMarker\\\":\\\"(?:^\\\\\\\\s*[}\\\\\\\\]])\\\",\\\"name\\\":\\\"hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.excess-characters.hjson\\\"}],\\\"repository\\\":{\\\"array\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.hjson\\\"}},\\\"end\\\":\\\"(\\\\\\\\])(?:\\\\\\\\s*([^,\\\\\\\\s]+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"meta.structure.array.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrayContent\\\"}]},\\\"arrayArray\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.hjson\\\"}},\\\"end\\\":\\\"(\\\\\\\\])(?:\\\\\\\\s*([^,\\\\\\\\s\\\\\\\\]]+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"meta.structure.array.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrayContent\\\"}]},\\\"arrayConstant\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.array.after-const.hjson\\\"}},\\\"match\\\":\\\"\\\\\\\\b(true|false|null)(?:[\\\\\\\\t ]*(?=,)|[\\\\\\\\t ]*(?:(,)[\\\\\\\\t ]*)?(?=$|#|/\\\\\\\\*|//|\\\\\\\\]))\\\"},\\\"arrayContent\\\":{\\\"name\\\":\\\"meta.structure.array.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#arrayValue\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\[)|,\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.pair.hjson\\\"}},\\\"end\\\":\\\"(?=[^\\\\\\\\s,/#])|(?=/[^/*])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"invalid.illegal.extra-comma.hjson\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.array.hjson\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s\\\\\\\\]]\\\",\\\"name\\\":\\\"invalid.illegal.expected-array-separator.hjson\\\"}]},\\\"arrayJstring\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hjson\\\"}},\\\"end\\\":\\\"(\\\\\\\")(?:\\\\\\\\s*((?:[^,\\\\\\\\s\\\\\\\\]#/]|/[^/*])+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"string.quoted.double.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jstringDoubleContent\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hjson\\\"}},\\\"end\\\":\\\"(')(?:\\\\\\\\s*((?:[^,\\\\\\\\s\\\\\\\\]#/]|/[^/*])+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"string.quoted.single.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jstringSingleContent\\\"}]}]},\\\"arrayMstring\\\":{\\\"begin\\\":\\\"'''\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hjson\\\"}},\\\"end\\\":\\\"(''')(?:\\\\\\\\s*((?:[^,\\\\\\\\s\\\\\\\\]#/]|/[^/*])+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"string.quoted.multiline.hjson\\\"},\\\"arrayNumber\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.array.after-num.hjson\\\"}},\\\"match\\\":\\\"(-?(?:0|(?:[1-9]\\\\\\\\d*))(?:\\\\\\\\.\\\\\\\\d+)?(?:[eE][+-]?\\\\\\\\d+)?)(?:[\\\\\\\\t ]*(?=,)|[\\\\\\\\t ]*(?:(,)[\\\\\\\\t ]*)?(?=$|#|/\\\\\\\\*|//|\\\\\\\\]))\\\"},\\\"arrayObject\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.begin.hjson\\\"}},\\\"end\\\":\\\"(\\\\\\\\}|(?<=\\\\\\\\}))(?:\\\\\\\\s*([^,\\\\\\\\s\\\\\\\\]]+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#objectContent\\\"}]},\\\"arrayString\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#arrayMstring\\\"},{\\\"include\\\":\\\"#arrayJstring\\\"},{\\\"include\\\":\\\"#ustring\\\"}]},\\\"arrayValue\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#arrayNumber\\\"},{\\\"include\\\":\\\"#arrayConstant\\\"},{\\\"include\\\":\\\"#arrayString\\\"},{\\\"include\\\":\\\"#arrayObject\\\"},{\\\"include\\\":\\\"#arrayArray\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(#).*(?:\\\\\\\\n)?\\\",\\\"name\\\":\\\"comment.line.hash\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(//).*(?:\\\\\\\\n)?\\\",\\\"name\\\":\\\"comment.line.double-slash\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"end\\\":\\\"\\\\\\\\*/(?:\\\\\\\\s*\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"name\\\":\\\"comment.block.double-slash\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"match\\\":\\\"(#)[^\\\\\\\\n]*\\\",\\\"name\\\":\\\"comment.line.hash\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"match\\\":\\\"(//)[^\\\\\\\\n]*\\\",\\\"name\\\":\\\"comment.line.double-slash\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"name\\\":\\\"comment.block.double-slash\\\"}]},\\\"commentsNewline\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"match\\\":\\\"(#).*\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.hash\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"match\\\":\\\"(//).*\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"end\\\":\\\"\\\\\\\\*/(\\\\\\\\s*\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hjson\\\"}},\\\"name\\\":\\\"comment.block.double-slash\\\"}]},\\\"constant\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.hjson\\\"}},\\\"match\\\":\\\"\\\\\\\\b(true|false|null)[\\\\\\\\t ]*(?=$|#|/\\\\\\\\*|//|\\\\\\\\])\\\"},\\\"jstring\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hjson\\\"}},\\\"end\\\":\\\"(\\\\\\\")(?:\\\\\\\\s*((?:[^\\\\\\\\s#/]|/[^/*]).*)$)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"string.quoted.double.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jstringDoubleContent\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hjson\\\"}},\\\"end\\\":\\\"(')(?:\\\\\\\\s*((?:[^\\\\\\\\s#/]|/[^/*]).*)$)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"string.quoted.single.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jstringSingleContent\\\"}]}]},\\\"jstringDoubleContent\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[\\\\\\\"'\\\\\\\\\\\\\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})\\\",\\\"name\\\":\\\"constant.character.escape.hjson\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.hjson\\\"},{\\\"match\\\":\\\"[^\\\\\\\"]*[^\\\\\\\\n\\\\\\\\r\\\\\\\"\\\\\\\\\\\\\\\\]$\\\",\\\"name\\\":\\\"invalid.illegal.string.hjson\\\"}]},\\\"jstringSingleContent\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[\\\\\\\"'\\\\\\\\\\\\\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})\\\",\\\"name\\\":\\\"constant.character.escape.hjson\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.hjson\\\"},{\\\"match\\\":\\\"[^']*[^\\\\\\\\n\\\\\\\\r'\\\\\\\\\\\\\\\\]$\\\",\\\"name\\\":\\\"invalid.illegal.string.hjson\\\"}]},\\\"key\\\":{\\\"begin\\\":\\\"(?:((?:[^:,\\\\\\\\{\\\\\\\\}\\\\\\\\[\\\\\\\\]\\\\\\\\s\\\\\\\"'][^:,\\\\\\\\{\\\\\\\\}\\\\\\\\[\\\\\\\\]\\\\\\\\s]*)|(?:'(?:[^\\\\\\\\\\\\\\\\']|(\\\\\\\\\\\\\\\\(?:[\\\\\\\"'\\\\\\\\\\\\\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4}))|(\\\\\\\\\\\\\\\\.))*')|(?:\\\\\\\"(?:[^\\\\\\\\\\\\\\\\\\\\\\\"]|(\\\\\\\\\\\\\\\\(?:[\\\\\\\"'\\\\\\\\\\\\\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4}))|(\\\\\\\\\\\\\\\\.))*\\\\\\\"))\\\\\\\\s*(?!\\\\\\\\n)([,\\\\\\\\{\\\\\\\\}\\\\\\\\[\\\\\\\\]]*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.structure.key-value.begin.hjson\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.type.property-name.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.hjson\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.hjson\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.escape.hjson\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.hjson\\\"},\\\"6\\\":{\\\"name\\\":\\\"invalid.illegal.separator.hjson\\\"},\\\"7\\\":{\\\"name\\\":\\\"invalid.illegal.property-name.hjson\\\"}},\\\"end\\\":\\\"(?<!^|:)\\\\\\\\s*\\\\\\\\n|(?=})|(,)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.pair.hjson\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#commentsNewline\\\"},{\\\"include\\\":\\\"#keyValue\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.object-property.hjson\\\"}]},\\\"keyValue\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\s*(:)\\\\\\\\s*([,\\\\\\\\}\\\\\\\\]]*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.key-value.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.object-property.hjson\\\"}},\\\"end\\\":\\\"(?<!^)\\\\\\\\s*(?=\\\\\\\\n)|(?=[},])\\\",\\\"name\\\":\\\"meta.structure.key-value.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"^\\\\\\\\s+\\\"},{\\\"include\\\":\\\"#objectValue\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.object-property.closing-bracket.hjson\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\})\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.object-property.hjson\\\"}]},\\\"mstring\\\":{\\\"begin\\\":\\\"'''\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hjson\\\"}},\\\"end\\\":\\\"(''')(?:\\\\\\\\s*((?:[^\\\\\\\\s#/]|/[^/*]).*)$)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"string.quoted.multiline.hjson\\\"},\\\"number\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.hjson\\\"}},\\\"match\\\":\\\"(-?(?:0|(?:[1-9]\\\\\\\\d*))(?:\\\\\\\\.\\\\\\\\d+)?(?:[eE][+-]?\\\\\\\\d+)?)[\\\\\\\\t ]*(?=$|#|/\\\\\\\\*|//|\\\\\\\\])\\\"},\\\"object\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.begin.hjson\\\"}},\\\"end\\\":\\\"(\\\\\\\\}|(?<=\\\\\\\\}))(?:\\\\\\\\s*([^,\\\\\\\\s]+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#objectContent\\\"}]},\\\"objectArray\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.hjson\\\"}},\\\"end\\\":\\\"(\\\\\\\\])(?:\\\\\\\\s*([^,\\\\\\\\s\\\\\\\\}]+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"meta.structure.array.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arrayContent\\\"}]},\\\"objectConstant\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.pair.after-const.hjson\\\"}},\\\"match\\\":\\\"\\\\\\\\b(true|false|null)(?:[\\\\\\\\t ]*(?=,)|[\\\\\\\\t ]*(?:(,)[\\\\\\\\t ]*)?(?=$|#|/\\\\\\\\*|//|\\\\\\\\}))\\\"},\\\"objectContent\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#key\\\"},{\\\"match\\\":\\\":[.|\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.object-property.hjson\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\{|,)|,\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.pair.hjson\\\"}},\\\"end\\\":\\\"(?=[^\\\\\\\\s,/#])|(?=/[^/*])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"invalid.illegal.extra-comma.hjson\\\"}]},{\\\"match\\\":\\\"[^\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.object-property.hjson\\\"}]},\\\"objectJstring\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hjson\\\"}},\\\"end\\\":\\\"(\\\\\\\")(?:\\\\\\\\s*((?:[^,\\\\\\\\s\\\\\\\\}#/]|/[^/*])+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"string.quoted.double.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jstringDoubleContent\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hjson\\\"}},\\\"end\\\":\\\"(')(?:\\\\\\\\s*((?:[^,\\\\\\\\s\\\\\\\\}#/]|/[^/*])+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"string.quoted.single.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jstringSingleContent\\\"}]}]},\\\"objectMstring\\\":{\\\"begin\\\":\\\"'''\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hjson\\\"}},\\\"end\\\":\\\"(''')(?:\\\\\\\\s*((?:[^,\\\\\\\\s\\\\\\\\}#/]|/[^/*])+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"string.quoted.multiline.hjson\\\"},\\\"objectNumber\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.pair.after-num.hjson\\\"}},\\\"match\\\":\\\"(-?(?:0|(?:[1-9]\\\\\\\\d*))(?:\\\\\\\\.\\\\\\\\d+)?(?:[eE][+-]?\\\\\\\\d+)?)(?:[\\\\\\\\t ]*(?=,)|[\\\\\\\\t ]*(?:(,)[\\\\\\\\t ]*)?(?=$|#|/\\\\\\\\*|//|\\\\\\\\}))\\\"},\\\"objectObject\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.begin.hjson\\\"}},\\\"end\\\":\\\"(\\\\\\\\}|(?<=\\\\\\\\})\\\\\\\\}?)(?:\\\\\\\\s*([^,\\\\\\\\s}]+))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.end.hjson\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.value.hjson\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.hjson\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#objectContent\\\"}]},\\\"objectString\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#objectMstring\\\"},{\\\"include\\\":\\\"#objectJstring\\\"},{\\\"include\\\":\\\"#ustring\\\"}]},\\\"objectValue\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#objectNumber\\\"},{\\\"include\\\":\\\"#objectConstant\\\"},{\\\"include\\\":\\\"#objectString\\\"},{\\\"include\\\":\\\"#objectObject\\\"},{\\\"include\\\":\\\"#objectArray\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#mstring\\\"},{\\\"include\\\":\\\"#jstring\\\"},{\\\"include\\\":\\\"#ustring\\\"}]},\\\"ustring\\\":{\\\"match\\\":\\\"([^:,\\\\\\\\{\\\\\\\\[\\\\\\\\}\\\\\\\\]\\\\\\\\s].*)$\\\",\\\"name\\\":\\\"string.quoted.none.hjson\\\"},\\\"value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"include\\\":\\\"#array\\\"}]}},\\\"scopeName\\\":\\\"source.hjson\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"HLSL\\\",\\\"name\\\":\\\"hlsl\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.line.block.hlsl\\\"},{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9]+\\\\\\\\.[0-9]*(F|f)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.hlsl\\\"},{\\\"match\\\":\\\"(\\\\\\\\.([0-9]+)(F|f)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b([0-9]+(F|f)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(0(x|X)[0-9a-fA-F]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(false|true)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.hlsl\\\"},{\\\"match\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(define|elif|else|endif|ifdef|ifndef|if|undef|include|line|error|pragma)\\\",\\\"name\\\":\\\"keyword.preprocessor.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(break|case|continue|default|discard|do|else|for|if|return|switch|while)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(compile)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.fx.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(typedef)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.typealias.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(bool([1-4](x[1-4])?)?|double([1-4](x[1-4])?)?|dword|float([1-4](x[1-4])?)?|half([1-4](x[1-4])?)?|int([1-4](x[1-4])?)?|matrix|min10float([1-4](x[1-4])?)?|min12int([1-4](x[1-4])?)?|min16float([1-4](x[1-4])?)?|min16int([1-4](x[1-4])?)?|min16uint([1-4](x[1-4])?)?|unsigned|uint([1-4](x[1-4])?)?|vector|void)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.basic.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)(?=[\\\\\\\\s]*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.hlsl\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\:\\\\\\\\s|\\\\\\\\:)(?i:BINORMAL[0-9]*|BLENDINDICES[0-9]*|BLENDWEIGHT[0-9]*|COLOR[0-9]*|NORMAL[0-9]*|POSITIONT|POSITION|PSIZE[0-9]*|TANGENT[0-9]*|TEXCOORD[0-9]*|FOG|TESSFACTOR[0-9]*|VFACE|VPOS|DEPTH[0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.semantic.hlsl\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\:\\\\\\\\s|\\\\\\\\:)(?i:SV_ClipDistance[0-9]*|SV_CullDistance[0-9]*|SV_Coverage|SV_Depth|SV_DepthGreaterEqual[0-9]*|SV_DepthLessEqual[0-9]*|SV_InstanceID|SV_IsFrontFace|SV_Position|SV_RenderTargetArrayIndex|SV_SampleIndex|SV_StencilRef|SV_Target[0-7]?|SV_VertexID|SV_ViewportArrayIndex)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.semantic.sm4.hlsl\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\:\\\\\\\\s|\\\\\\\\:)(?i:SV_DispatchThreadID|SV_DomainLocation|SV_GroupID|SV_GroupIndex|SV_GroupThreadID|SV_GSInstanceID|SV_InsideTessFactor|SV_OutputControlPointID|SV_TessFactor)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.semantic.sm5.hlsl\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\:\\\\\\\\s|\\\\\\\\:)(?i:SV_InnerCoverage|SV_StencilRef)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.semantic.sm5_1.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(column_major|const|export|extern|globallycoherent|groupshared|inline|inout|in|out|precise|row_major|shared|static|uniform|volatile)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(snorm|unorm)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.float.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(packoffset|register)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.postfix.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(centroid|linear|nointerpolation|noperspective|sample)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.interpolation.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(lineadj|line|point|triangle|triangleadj)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.geometryshader.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(string)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.other.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(AppendStructuredBuffer|Buffer|ByteAddressBuffer|ConstantBuffer|ConsumeStructuredBuffer|InputPatch|OutputPatch)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.object.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(RasterizerOrderedBuffer|RasterizerOrderedByteAddressBuffer|RasterizerOrderedStructuredBuffer|RasterizerOrderedTexture1D|RasterizerOrderedTexture1DArray|RasterizerOrderedTexture2D|RasterizerOrderedTexture2DArray|RasterizerOrderedTexture3D)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.object.rasterizerordered.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(RWBuffer|RWByteAddressBuffer|RWStructuredBuffer|RWTexture1D|RWTexture1DArray|RWTexture2D|RWTexture2DArray|RWTexture3D)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.object.rw.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(LineStream|PointStream|TriangleStream)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.object.geometryshader.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(sampler|sampler1D|sampler2D|sampler3D|samplerCUBE|sampler_state)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.sampler.legacy.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(SamplerState|SamplerComparisonState)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.sampler.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(texture2D|textureCUBE)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.texture.legacy.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(Texture1D|Texture1DArray|Texture2D|Texture2DArray|Texture2DMS|Texture2DMSArray|Texture3D|TextureCube|TextureCubeArray)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.texture.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(cbuffer|class|interface|namespace|struct|tbuffer)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.structured.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(FALSE|TRUE|NULL)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.fx.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(BlendState|DepthStencilState|RasterizerState)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.fx.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(technique|Technique|technique10|technique11|pass)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.fx.technique.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(AlphaToCoverageEnable|BlendEnable|SrcBlend|DestBlend|BlendOp|SrcBlendAlpha|DestBlendAlpha|BlendOpAlpha|RenderTargetWriteMask)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.object-literal.key.fx.blendstate.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(DepthEnable|DepthWriteMask|DepthFunc|StencilEnable|StencilReadMask|StencilWriteMask|FrontFaceStencilFail|FrontFaceStencilZFail|FrontFaceStencilPass|FrontFaceStencilFunc|BackFaceStencilFail|BackFaceStencilZFail|BackFaceStencilPass|BackFaceStencilFunc)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.object-literal.key.fx.depthstencilstate.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(FillMode|CullMode|FrontCounterClockwise|DepthBias|DepthBiasClamp|SlopeScaleDepthBias|ZClipEnable|ScissorEnable|MultiSampleEnable|AntiAliasedLineEnable)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.object-literal.key.fx.rasterizerstate.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(Filter|AddressU|AddressV|AddressW|MipLODBias|MaxAnisotropy|ComparisonFunc|BorderColor|MinLOD|MaxLOD)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.object-literal.key.fx.samplerstate.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:ZERO|ONE|SRC_COLOR|INV_SRC_COLOR|SRC_ALPHA|INV_SRC_ALPHA|DEST_ALPHA|INV_DEST_ALPHA|DEST_COLOR|INV_DEST_COLOR|SRC_ALPHA_SAT|BLEND_FACTOR|INV_BLEND_FACTOR|SRC1_COLOR|INV_SRC1_COLOR|SRC1_ALPHA|INV_SRC1_ALPHA)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.fx.blend.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:ADD|SUBTRACT|REV_SUBTRACT|MIN|MAX)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.fx.blendop.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:ALL)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.fx.depthwritemask.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:NEVER|LESS|EQUAL|LESS_EQUAL|GREATER|NOT_EQUAL|GREATER_EQUAL|ALWAYS)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.fx.comparisonfunc.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:KEEP|REPLACE|INCR_SAT|DECR_SAT|INVERT|INCR|DECR)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.fx.stencilop.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:WIREFRAME|SOLID)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.fx.fillmode.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:NONE|FRONT|BACK)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.fx.cullmode.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:MIN_MAG_MIP_POINT|MIN_MAG_POINT_MIP_LINEAR|MIN_POINT_MAG_LINEAR_MIP_POINT|MIN_POINT_MAG_MIP_LINEAR|MIN_LINEAR_MAG_MIP_POINT|MIN_LINEAR_MAG_POINT_MIP_LINEAR|MIN_MAG_LINEAR_MIP_POINT|MIN_MAG_MIP_LINEAR|ANISOTROPIC|COMPARISON_MIN_MAG_MIP_POINT|COMPARISON_MIN_MAG_POINT_MIP_LINEAR|COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT|COMPARISON_MIN_POINT_MAG_MIP_LINEAR|COMPARISON_MIN_LINEAR_MAG_MIP_POINT|COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR|COMPARISON_MIN_MAG_LINEAR_MIP_POINT|COMPARISON_MIN_MAG_MIP_LINEAR|COMPARISON_ANISOTROPIC|TEXT_1BIT)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.fx.filter.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:WRAP|MIRROR|CLAMP|BORDER|MIRROR_ONCE)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.fx.textureaddressmode.hlsl\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.hlsl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.hlsl\\\"}]}],\\\"scopeName\\\":\\\"source.hlsl\\\"}\"))\n\nexport default [\nlang\n]\n", "import shellscript from './shellscript.mjs'\nimport json from './json.mjs'\nimport xml from './xml.mjs'\nimport graphql from './graphql.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"HTTP\\\",\\\"fileTypes\\\":[\\\"http\\\",\\\"rest\\\"],\\\"name\\\":\\\"http\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(?=curl)\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\#{3,}.*?)?\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.line.sharp.http\\\"}},\\\"name\\\":\\\"http.request.curl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.shell\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(?=(\\\\\\\\[|{[^{]))\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\#{3,}.*?)?\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.line.sharp.http\\\"}},\\\"name\\\":\\\"http.request.body.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(?=<\\\\\\\\S)\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\#{3,}.*?)?\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.line.sharp.http\\\"}},\\\"name\\\":\\\"http.request.body.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(?=(query|mutation))\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\#{3,}.*?)?\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.line.sharp.http\\\"}},\\\"name\\\":\\\"http.request.body.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.graphql\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(?=(query|mutation))\\\",\\\"end\\\":\\\"^\\\\\\\\{\\\\\\\\s*$\\\",\\\"name\\\":\\\"http.request.body.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.graphql\\\"}]},{\\\"include\\\":\\\"#metadata\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.http\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.http\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.http\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(@)([^\\\\\\\\s=]+)\\\\\\\\s*=\\\\\\\\s*(.*?)\\\\\\\\s*$\\\",\\\"name\\\":\\\"http.filevariable\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.http\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.http\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.http\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\?|&)([^=\\\\\\\\s]+)=(.*)$\\\",\\\"name\\\":\\\"http.query\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.http\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.http\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.http\\\"}},\\\"match\\\":\\\"^([\\\\\\\\w\\\\\\\\-]+)\\\\\\\\s*(\\\\\\\\:)\\\\\\\\s*([^/].*?)\\\\\\\\s*$\\\",\\\"name\\\":\\\"http.headers\\\"},{\\\"include\\\":\\\"#request-line\\\"},{\\\"include\\\":\\\"#response-line\\\"}],\\\"repository\\\":{\\\"comments\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\#{1,}.*$\\\",\\\"name\\\":\\\"comment.line.sharp.http\\\"},{\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\/{2,}.*$\\\",\\\"name\\\":\\\"comment.line.double-slash.http\\\"}]},\\\"metadata\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.metadata\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.http\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\#{1,}\\\\\\\\s+(?:((@)name)\\\\\\\\s+([^\\\\\\\\s\\\\\\\\.]+))$\\\",\\\"name\\\":\\\"comment.line.sharp.http\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.metadata\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.http\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\/{2,}\\\\\\\\s+(?:((@)name)\\\\\\\\s+([^\\\\\\\\s\\\\\\\\.]+))$\\\",\\\"name\\\":\\\"comment.line.double-slash.http\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.metadata\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\#{1,}\\\\\\\\s+((@)note)\\\\\\\\s*$\\\",\\\"name\\\":\\\"comment.line.sharp.http\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.metadata\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\/{2,}\\\\\\\\s+((@)note)\\\\\\\\s*$\\\",\\\"name\\\":\\\"comment.line.double-slash.http\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.metadata\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.http\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.other.http\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\#{1,}\\\\\\\\s+(?:((@)prompt)\\\\\\\\s+([^\\\\\\\\s]+)(?:\\\\\\\\s+(.*))?\\\\\\\\s*)$\\\",\\\"name\\\":\\\"comment.line.sharp.http\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.metadata\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.http\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.other.http\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\/{2,}\\\\\\\\s+(?:((@)prompt)\\\\\\\\s+([^\\\\\\\\s]+)(?:\\\\\\\\s+(.*))?\\\\\\\\s*)$\\\",\\\"name\\\":\\\"comment.line.double-slash.http\\\"}]},\\\"protocol\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.http\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.http\\\"}},\\\"match\\\":\\\"(HTTP)/(\\\\\\\\d+.\\\\\\\\d+)\\\",\\\"name\\\":\\\"http.version\\\"}]},\\\"request-line\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.http\\\"},\\\"2\\\":{\\\"name\\\":\\\"const.language.http\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#protocol\\\"}]}},\\\"match\\\":\\\"(?i)^(?:(get|post|put|delete|patch|head|options|connect|trace|lock|unlock|propfind|proppatch|copy|move|mkcol|mkcalendar|acl|search)\\\\\\\\s+)\\\\\\\\s*(.+?)(?:\\\\\\\\s+(HTTP\\\\\\\\/\\\\\\\\S+))?$\\\",\\\"name\\\":\\\"http.requestline\\\"},\\\"response-line\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#protocol\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.http\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.http\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(HTTP\\\\\\\\/\\\\\\\\S+)\\\\\\\\s([1-5][0-9][0-9])\\\\\\\\s(.*)$\\\",\\\"name\\\":\\\"http.responseLine\\\"}},\\\"scopeName\\\":\\\"source.http\\\",\\\"embeddedLangs\\\":[\\\"shellscript\\\",\\\"json\\\",\\\"xml\\\",\\\"graphql\\\"]}\"))\n\nexport default [\n...shellscript,\n...json,\n...xml,\n...graphql,\nlang\n]\n", "import haxe from './haxe.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"HXML\\\",\\\"fileTypes\\\":[\\\"hxml\\\"],\\\"foldingStartMarker\\\":\\\"--next\\\",\\\"foldingStopMarker\\\":\\\"\\\\\\\\n\\\\\\\\n\\\",\\\"name\\\":\\\"hxml\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hxml\\\"}},\\\"match\\\":\\\"(#).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.hxml\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(--macro)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.hxml\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.hx#block-contents\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.hxml\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.package.hx\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.hx\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(-m|-main|--main|--run)\\\\\\\\b\\\\\\\\s*\\\\\\\\b(?:(([a-z][a-zA-Z0-9]*\\\\\\\\.)*)(_*[A-Z]\\\\\\\\w*))?\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.hxml\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(-cppia|-cpp?|-js|-as3|-swf-(header|version|lib(-extern)?)|-swf9?|-neko|-python|-php|-cs|-java-lib|-java|-xml|-lua|-hl|-x|-lib|-D|-resource|-exclude|-version|-v|-debug|-prompt|-cmd|-dce\\\\\\\\s+(std|full|no)?|--flash-strict|--no-traces|--flash-use-stage|--neko-source|--gen-hx-classes|-net-lib|-net-std|-c-arg|--each|--next|--display|--no-output|--times|--no-inline|--no-opt|--php-front|--php-lib|--php-prefix|--remap|--help-defines|--help-metas|-help|--help|-java|-cs|--js-modern|--interp|--eval|--dce|--wait|--connect|--cwd|--run).*$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.hxml\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(--js(on)?|--lua|--swf-(header|version|lib(-extern)?)|--swf|--as3|--neko|--php|--cppia|--cpp|--cppia|--cs|--java-lib(-extern)?|--java|--jvm|--python|--hl|-p|--class-path|-L|--library|--define|-r|--resource|--cmd|-C|--verbose|--debug|--prompt|--xml|--json|--net-lib|--net-std|--c-arg|--version|--haxelib-global|-h|--main|--server-connect|--server-listen).*$\\\"}],\\\"scopeName\\\":\\\"source.hxml\\\",\\\"embeddedLangs\\\":[\\\"haxe\\\"]}\"))\n\nexport default [\n...haxe,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Hy\\\",\\\"name\\\":\\\"hy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#all\\\"}],\\\"repository\\\":{\\\"all\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#keysym\\\"},{\\\"include\\\":\\\"#builtin\\\"},{\\\"include\\\":\\\"#symbol\\\"}]},\\\"builtin\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?/<>*])(abs|all|any|ascii|bin|breakpoint|callable|chr|compile|delattr|dir|divmod|eval|exec|format|getattr|globals|hasattr|hash|hex|id|input|isinstance|issubclass|iter|aiter|len|locals|max|min|next|anext|oct|ord|pow|print|repr|round|setattr|sorted|sum|vars|False|None|True|NotImplemented|bool|memoryview|bytearray|bytes|classmethod|complex|dict|enumerate|filter|float|frozenset|property|int|list|map|object|range|reversed|set|slice|staticmethod|str|super|tuple|type|zip|open|quit|exit|copyright|credits|help)(?![\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?/<>*])\\\",\\\"name\\\":\\\"storage.builtin.hy\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\(\\\\\\\\s*)\\\\\\\\.\\\\\\\\.\\\\\\\\.(?![\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?/<>*])\\\",\\\"name\\\":\\\"storage.builtin.dots.hy\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(;).*$\\\",\\\"name\\\":\\\"comment.line.hy\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[\\\\\\\\{\\\\\\\\[\\\\\\\\(\\\\\\\\s])([0-9]+(\\\\\\\\.[0-9]+)?|(#x)[0-9a-fA-F]+|(#o)[0-7]+|(#b)[01]+)(?=[\\\\\\\\s;()'\\\\\\\",\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}])\\\",\\\"name\\\":\\\"constant.numeric.hy\\\"}]},\\\"keysym\\\":{\\\"match\\\":\\\"(?<![\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?\\\\\\\\/<>*]):[\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?\\\\\\\\/<>*]*\\\",\\\"name\\\":\\\"variable.other.constant\\\"},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?/<>*])(and|await|match|let|annotate|assert|break|chainc|cond|continue|deftype|do|except\\\\\\\\*?|finally|else|defreader|([dgls])?for|set[vx]|defclass|defmacro|del|export|eval-and-compile|eval-when-compile|get|global|if|import|(de)?fn|nonlocal|not-in|or|(quasi)?quote|require|return|cut|raise|try|unpack-iterable|unpack-mapping|unquote|unquote-splice|when|while|with|yield|local-macros|in|is|py(s)?|pragma|nonlocal|(is-)?not)(?![\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?/<>*])\\\",\\\"name\\\":\\\"keyword.control.hy\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\(\\\\\\\\s*)\\\\\\\\.(?![\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?/<>*])\\\",\\\"name\\\":\\\"keyword.control.dot.hy\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?/<>*])(\\\\\\\\+=?|\\\\\\\\/\\\\\\\\/?=?|\\\\\\\\*\\\\\\\\*?=?|--?=?|[!<>]?=|@=?|%=?|<<?=?|>>?=?|&=?|\\\\\\\\|=?|\\\\\\\\^|~@|~=?|#\\\\\\\\*\\\\\\\\*?)(?![\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?/<>*])\\\",\\\"name\\\":\\\"keyword.control.hy\\\"}]},\\\"strings\\\":{\\\"begin\\\":\\\"(f?\\\\\\\"|}(?=[^\\\\n]*?[{\\\\\\\"]))\\\",\\\"end\\\":\\\"(\\\\\\\"|(?<=[\\\\\\\"}][^\\\\n]*?){)\\\",\\\"name\\\":\\\"string.quoted.double.hy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.hy\\\"}]},\\\"symbol\\\":{\\\"match\\\":\\\"(?<![\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?/<>*#])[\\\\\\\\.a-zA-Z\u0391-\u03A9\u03B1-\u03C9_\\\\\\\\-=!@\\\\\\\\$%^<?/<>*#][\\\\\\\\.:\\\\\\\\w_\\\\\\\\-=!@\\\\\\\\$%^&?/<>*#]*\\\",\\\"name\\\":\\\"variable.other.hy\\\"}},\\\"scopeName\\\":\\\"source.hy\\\"}\"))\n\nexport default [\nlang\n]\n", "import typescript from './typescript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Imba\\\",\\\"fileTypes\\\":[\\\"imba\\\",\\\"imba2\\\"],\\\"name\\\":\\\"imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#root\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"}},\\\"match\\\":\\\"\\\\\\\\A(#!).*(?=$)\\\",\\\"name\\\":\\\"comment.line.shebang.imba\\\"}],\\\"repository\\\":{\\\"array-literal\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.imba\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.imba\\\"}},\\\"name\\\":\\\"meta.array.literal.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"block\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#style-declaration\\\"},{\\\"include\\\":\\\"#mixin-declaration\\\"},{\\\"include\\\":\\\"#object-keys\\\"},{\\\"include\\\":\\\"#generics-literal\\\"},{\\\"include\\\":\\\"#tag-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#plain-identifiers\\\"},{\\\"include\\\":\\\"#plain-accessors\\\"},{\\\"include\\\":\\\"#pairs\\\"},{\\\"include\\\":\\\"#invalid-indentation\\\"}]},\\\"boolean-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(true|yes)(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.true.imba\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(false|no)(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.boolean.false.imba\\\"}]},\\\"brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]|(?=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"}},\\\"name\\\":\\\"comment.block.documentation.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docblock\\\"}]},{\\\"begin\\\":\\\"(/\\\\\\\\*)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|(\\\\\\\\*/)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.imba\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.imba\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"}},\\\"name\\\":\\\"comment.block.imba\\\"},{\\\"begin\\\":\\\"(### \\\\\\\\@ts(?=\\\\\\\\s|$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"}},\\\"contentName\\\":\\\"source.ts.embedded.imba\\\",\\\"end\\\":\\\"###\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"}},\\\"name\\\":\\\"ts.block.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]},{\\\"begin\\\":\\\"(###)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"}},\\\"end\\\":\\\"###(?:[ \\\\\\\\t]*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"}},\\\"name\\\":\\\"comment.block.imba\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//|\\\\\\\\#\\\\\\\\s)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.imba\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.imba\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.imba\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.imba\\\",\\\"end\\\":\\\"(?=$)\\\"}]},\\\"css-color-keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<![\\\\\\\\w-])(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.color.w3c-standard-color-name.css\\\"},{\\\"match\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood\\\\n|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan\\\\n|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange\\\\n|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise\\\\n|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen\\\\n|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki\\\\n|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow\\\\n|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray\\\\n|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue\\\\n|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise\\\\n|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered\\\\n|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum\\\\n|powderblue|rebeccapurple|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell\\\\n|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato\\\\n|transparent|turquoise|violet|wheat|whitesmoke|yellowgreen)\\\\n(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.color.w3c-extended-color-name.css\\\"},{\\\"match\\\":\\\"(?i)(?<![\\\\\\\\w-])currentColor(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.color.current.css\\\"}]},\\\"css-combinators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\">>>|>>|>|\\\\\\\\+|~\\\",\\\"name\\\":\\\"punctuation.separator.combinator.css\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"keyword.other.parent-selector.css\\\"}]},\\\"css-commas\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.list.comma.css\\\"},\\\"css-comment\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\#(\\\\\\\\s.+)?(\\\\\\\\n|$)\\\",\\\"name\\\":\\\"comment.line.imba\\\"},{\\\"match\\\":\\\"(^\\\\\\\\t+)(\\\\\\\\#(\\\\\\\\s.+)?(\\\\\\\\n|$))\\\",\\\"name\\\":\\\"comment.line.imba\\\"}]},\\\"css-escapes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-9a-fA-F]{1,6}\\\",\\\"name\\\":\\\"constant.character.escape.codepoint.css\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\$\\\\\\\\s*\\\",\\\"end\\\":\\\"^(?<!\\\\\\\\G)\\\",\\\"name\\\":\\\"constant.character.escape.newline.css\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.css\\\"}]},\\\"css-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(calc)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.calc.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.calc.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[*/]|(?<=\\\\\\\\s|^)[-+](?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.css\\\"},{\\\"include\\\":\\\"#css-property-values\\\"}]},{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(rgba?|hsla?)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.color.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#css-property-values\\\"}]},{\\\"begin\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n(\\\\n (?:-webkit-|-moz-|-o-)? # Accept prefixed/historical variants\\\\n (?:repeating-)? # \\\\\\\"Repeating\\\\\\\"-type gradient\\\\n (?:linear|radial|conic) # Shape\\\\n -gradient\\\\n)\\\\n(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.gradient.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.gradient.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<![\\\\\\\\w-])(from|to|at)(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"keyword.operator.gradient.css\\\"},{\\\"include\\\":\\\"#css-property-values\\\"}]},{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(-webkit-gradient)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.deprecated.gradient.function.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.gradient.invalid.deprecated.gradient.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(from|to|color-stop)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.deprecated.function.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#css-property-values\\\"}]},{\\\"include\\\":\\\"#css-property-values\\\"}]},{\\\"begin\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n(annotation|attr|blur|brightness|character-variant|contrast|counters?\\\\n|cross-fade|drop-shadow|element|fit-content|format|grayscale|hue-rotate\\\\n|image-set|invert|local|minmax|opacity|ornaments|repeat|saturate|sepia\\\\n|styleset|stylistic|swash|symbols)\\\\n(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.misc.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<=[,\\\\\\\\s\\\\\\\"]|\\\\\\\\*/|^)\\\\\\\\d+x(?=[\\\\\\\\s,\\\\\\\"')]|/\\\\\\\\*|$)\\\",\\\"name\\\":\\\"constant.numeric.other.density.css\\\"},{\\\"include\\\":\\\"#css-property-values\\\"},{\\\"match\\\":\\\"[^'\\\\\\\"),\\\\\\\\s]+\\\",\\\"name\\\":\\\"variable.parameter.misc.css\\\"}]},{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(circle|ellipse|inset|polygon|rect)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.shape.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.shape.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<=\\\\\\\\s|^|\\\\\\\\*/)(at|round)(?=\\\\\\\\s|/\\\\\\\\*|$)\\\",\\\"name\\\":\\\"keyword.operator.shape.css\\\"},{\\\"include\\\":\\\"#css-property-values\\\"}]},{\\\"begin\\\":\\\"(?i)(?<![\\\\\\\\w-])(cubic-bezier|steps)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.timing-function.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"name\\\":\\\"meta.function.timing-function.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<![\\\\\\\\w-])(start|end)(?=\\\\\\\\s*\\\\\\\\)|$)\\\",\\\"name\\\":\\\"support.constant.step-direction.css\\\"},{\\\"include\\\":\\\"#css-property-values\\\"}]},{\\\"begin\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n( (?:translate|scale|rotate)(?:[XYZ]|3D)?\\\\n| matrix(?:3D)?\\\\n| skew[XY]?\\\\n| perspective\\\\n)\\\\n(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.transform.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.bracket.round.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#css-property-values\\\"}]}]},\\\"css-numeric-values\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.css\\\"}},\\\"match\\\":\\\"(#)(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.color.rgb-value.hex.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.percentage.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.unit.${2:/downcase}.css\\\"}},\\\"match\\\":\\\"(?xi) (?<![\\\\\\\\w-])\\\\n[-+]? # Sign indicator\\\\n\\\\n(?: # Numerals\\\\n [0-9]+ (?:\\\\\\\\.[0-9]+)? # Integer/float with leading digits\\\\n | \\\\\\\\.[0-9]+ # Float without leading digits\\\\n)\\\\n\\\\n(?: # Scientific notation\\\\n (?<=[0-9]) # Exponent must follow a digit\\\\n E # Exponent indicator\\\\n [-+]? # Possible sign indicator\\\\n [0-9]+ # Exponent value\\\\n)?\\\\n\\\\n(?: # Possible unit for data-type:\\\\n (%) # - Percentage\\\\n | ( deg|grad|rad|turn # - Angle\\\\n | Hz|kHz # - Frequency\\\\n | ch|cm|em|ex|fr|in|mm|mozmm| # - Length\\\\n pc|pt|px|q|rem|vh|vmax|vmin|\\\\n vw\\\\n | dpi|dpcm|dppx # - Resolution\\\\n | s|ms # - Time\\\\n )\\\\n \\\\\\\\b # Boundary checking intentionally lax to\\\\n)? # facilitate embedding in CSS-like grammars\\\",\\\"name\\\":\\\"constant.numeric.css\\\"}]},\\\"css-property-values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#css-commas\\\"},{\\\"include\\\":\\\"#css-escapes\\\"},{\\\"include\\\":\\\"#css-functions\\\"},{\\\"include\\\":\\\"#css-numeric-values\\\"},{\\\"include\\\":\\\"#css-size-keywords\\\"},{\\\"include\\\":\\\"#css-color-keywords\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"!\\\\\\\\s*important(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"keyword.other.important.css\\\"}]},\\\"css-pseudo-classes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.colon.css\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(:)(:*)\\\\n(?: active|any-link|checked|default|defined|disabled|empty|enabled|first\\\\n | (?:first|last|only)-(?:child|of-type)|focus|focus-visible|focus-within\\\\n | fullscreen|host|hover|in-range|indeterminate|invalid|left|link\\\\n | optional|out-of-range|placeholder-shown|read-only|read-write\\\\n | required|right|root|scope|target|unresolved\\\\n | valid|visited\\\\n)(?![\\\\\\\\w-]|\\\\\\\\s*[;}])\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},\\\"css-pseudo-elements\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?:\\\\n (::?) # Elements using both : and :: notation\\\\n (?: after\\\\n | before\\\\n | first-letter\\\\n | first-line\\\\n | (?:-(?:ah|apple|atsc|epub|hp|khtml|moz\\\\n |ms|o|rim|ro|tc|wap|webkit|xv)\\\\n | (?:mso|prince))\\\\n -[a-z-]+\\\\n )\\\\n |\\\\n (::) # Double-colon only\\\\n (?: backdrop\\\\n | content\\\\n | grammar-error\\\\n | marker\\\\n | placeholder\\\\n | selection\\\\n | shadow\\\\n | spelling-error\\\\n )\\\\n)\\\\n(?![\\\\\\\\w-]|\\\\\\\\s*[;}])\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-element.css\\\"},\\\"css-selector\\\":{\\\"begin\\\":\\\"(?<=css\\\\\\\\s)(?!(?:[\\\\\\\\^\\\\\\\\@\\\\\\\\.\\\\\\\\%\\\\\\\\w\\\\\\\\$\\\\\\\\!\\\\\\\\-]+)(?:\\\\\\\\s*[\\\\\\\\:\\\\\\\\=])[^\\\\\\\\:])\\\",\\\"end\\\":\\\"(\\\\\\\\s*(?=(?:[\\\\\\\\^\\\\\\\\@\\\\\\\\.\\\\\\\\%\\\\\\\\w\\\\\\\\$\\\\\\\\!\\\\\\\\-]+)(?:\\\\\\\\s*[\\\\\\\\:\\\\\\\\=])[^\\\\\\\\:])|\\\\\\\\s*$|(?=\\\\\\\\s+\\\\\\\\#\\\\\\\\s))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.sel-properties.css\\\"}},\\\"name\\\":\\\"meta.selector.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#css-selector-innards\\\"}]},\\\"css-selector-innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#css-commas\\\"},{\\\"include\\\":\\\"#css-escapes\\\"},{\\\"include\\\":\\\"#css-combinators\\\"},{\\\"match\\\":\\\"(\\\\\\\\%[\\\\\\\\w\\\\\\\\-]+)\\\",\\\"name\\\":\\\"entity.other.attribute-name.mixin.css\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"entity.name.tag.wildcard.css\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.entity.begin.bracket.square.css\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.entity.end.bracket.square.css\\\"}},\\\"name\\\":\\\"meta.attribute-selector.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.ignore-case.css\\\"}},\\\"match\\\":\\\"(?<=[\\\\\\\"'\\\\\\\\s]|^|\\\\\\\\*/)\\\\\\\\s*([iI])\\\\\\\\s*(?=[\\\\\\\\s\\\\\\\\]]|/\\\\\\\\*|$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.attribute-value.css\\\"}},\\\"match\\\":\\\"(?<==)\\\\\\\\s*((?!/\\\\\\\\*)(?:[^\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\s\\\\\\\\]]|\\\\\\\\\\\\\\\\.)+)\\\"},{\\\"include\\\":\\\"#css-escapes\\\"},{\\\"match\\\":\\\"[~|^$*]?=\\\",\\\"name\\\":\\\"keyword.operator.pattern.css\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.separator.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.namespace-prefix.css\\\"}},\\\"match\\\":\\\"(-?(?!\\\\\\\\d)(?:[\\\\\\\\w-]|[^\\\\\\\\\\\\\\\\x00-\\\\\\\\\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+|\\\\\\\\*)(?=\\\\\\\\|(?!\\\\\\\\s|=|$|\\\\\\\\])(?:-?(?!\\\\\\\\d)|[\\\\\\\\\\\\\\\\\\\\\\\\w-]|[^\\\\\\\\\\\\\\\\x00-\\\\\\\\\\\\\\\\x7F]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.css\\\"}},\\\"match\\\":\\\"(-?(?!\\\\\\\\d)(?>[\\\\\\\\w-]|[^\\\\\\\\\\\\\\\\x00-\\\\\\\\\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+)\\\\\\\\s*(?=[~|^\\\\\\\\]$*=]|/\\\\\\\\*)\\\"}]},{\\\"include\\\":\\\"#css-pseudo-classes\\\"},{\\\"include\\\":\\\"#css-pseudo-elements\\\"},{\\\"include\\\":\\\"#css-mixin\\\"}]},\\\"css-size-keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(x+s|sm-|md-|lg-|sm|md|lg|x+l|hg|x+h)(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.size.property-value.css\\\"}]},\\\"curly-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.curly.imba\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.curly.imba\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"decorator\\\":{\\\"begin\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))\\\\\\\\@(?!\\\\\\\\@)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.decorator.imba\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.decorator.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"}]},\\\"directives\\\":{\\\"begin\\\":\\\"^(///)\\\\\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\\\\\s+(path|types|no-default-lib|lib|name)\\\\\\\\s*=\\\\\\\\s*((\\\\\\\\'([^\\\\\\\\'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\')|(\\\\\\\\\\\\\\\"([^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\")|(\\\\\\\\`([^\\\\\\\\`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\`)))+\\\\\\\\s*/>\\\\\\\\s*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"}},\\\"end\\\":\\\"(?=$)\\\",\\\"name\\\":\\\"comment.line.triple-slash.directive.imba\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)(reference|amd-dependency|amd-module)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.directive.imba\\\"}},\\\"end\\\":\\\"/>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.directive.imba\\\"}},\\\"name\\\":\\\"meta.tag.imba\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"path|types|no-default-lib|lib|name\\\",\\\"name\\\":\\\"entity.other.attribute-name.directive.imba\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.imba\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"docblock\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.access-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:access|api))\\\\\\\\s+(private|protected|public)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.other.email.link.underline.jsdoc\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"match\\\":\\\"((@)author)\\\\\\\\s+([^@\\\\\\\\s<>*/](?:[^@<>*/]|\\\\\\\\*[^/])*)(?:\\\\\\\\s*(<)([^>\\\\\\\\s]+)(>))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.control.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)borrows)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\\\\\\s+(as)\\\\\\\\s+((?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)example)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=@|\\\\\\\\*/)\\\",\\\"name\\\":\\\"meta.example.jsdoc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\s\\\\\\\\*\\\\\\\\s+\\\"},{\\\"begin\\\":\\\"\\\\\\\\G(<)caption(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}},\\\"contentName\\\":\\\"constant.other.description.jsdoc\\\",\\\"end\\\":\\\"(</)caption(>)|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.tag.inline.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"source.embedded.imba\\\"}},\\\"match\\\":\\\"[^\\\\\\\\s@*](?:[^*]|\\\\\\\\*[^/])*\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.symbol-type.jsdoc\\\"}},\\\"match\\\":\\\"((@)kind)\\\\\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)see)\\\\\\\\s+(?:((?=https?://)(?:[^\\\\\\\\s*]|\\\\\\\\*[^/])+)|((?!https?://|(?:\\\\\\\\[[^\\\\\\\\[\\\\\\\\]]*\\\\\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\\\\\b)(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)template)\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*(?:\\\\\\\\s*,\\\\\\\\s*[A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\"},{\\\"begin\\\":\\\"((@)typedef)\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"(?:[^@\\\\\\\\s*/]|\\\\\\\\*[^/])+\\\",\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"},{\\\"match\\\":\\\"([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.begin.bracket.square.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"source.embedded.imba\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.optional-value.end.bracket.square.jsdoc\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.syntax.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)\\\\\\\\s*[\\\\\\\\w$]+(?:(?:\\\\\\\\[\\\\\\\\])?\\\\\\\\.[\\\\\\\\w$]+)*(?:\\\\\\\\s*(=)\\\\\\\\s*((?>\\\\\\\"(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!\\\\\\\"))|[^*\\\\\\\\\\\\\\\\])*?\\\\\\\"|'(?:(?:\\\\\\\\*(?!/))|(?:\\\\\\\\\\\\\\\\(?!'))|[^*\\\\\\\\\\\\\\\\])*?'|\\\\\\\\[(?:(?:\\\\\\\\*(?!/))|[^*])*?\\\\\\\\]|(?:(?:\\\\\\\\*(?!/))|\\\\\\\\s(?!\\\\\\\\s*\\\\\\\\])|\\\\\\\\[.*?(?:\\\\\\\\]|(?=\\\\\\\\*/))|[^*\\\\\\\\s\\\\\\\\[\\\\\\\\]])*)*))?\\\\\\\\s*(?:(\\\\\\\\])((?:[^*\\\\\\\\s]|\\\\\\\\*[^\\\\\\\\s/])+)?|(?=\\\\\\\\*/))\\\",\\\"name\\\":\\\"variable.other.jsdoc\\\"}]},{\\\"begin\\\":\\\"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|suppress|this|throws|type|yields?))\\\\\\\\s+(?={)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/|[^{}\\\\\\\\[\\\\\\\\]A-Za-z_$])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#jsdoctype\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\\\\\s+((?:[^{}@\\\\\\\\s*]|\\\\\\\\*[^/])+)\\\"},{\\\"begin\\\":\\\"((@)(?:default(?:value)?|license|version))\\\\\\\\s+(([''\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"variable.other.jsdoc\\\",\\\"end\\\":\\\"(\\\\\\\\3)|(?=$|\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.jsdoc\\\"}}},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\\\\\s+([^\\\\\\\\s*]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},{\\\"include\\\":\\\"#inline-tags\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.jsdoc\\\"}},\\\"match\\\":\\\"((@)(?:[_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?))(?=\\\\\\\\s+)\\\"}]},\\\"expr\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#style-declaration\\\"},{\\\"include\\\":\\\"#object-keys\\\"},{\\\"include\\\":\\\"#generics-literal\\\"},{\\\"include\\\":\\\"#tag-literal\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#plain-identifiers\\\"},{\\\"include\\\":\\\"#plain-accessors\\\"},{\\\"include\\\":\\\"#pairs\\\"}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.imba\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.imba\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"}]},{\\\"include\\\":\\\"#tag-literal\\\"},{\\\"include\\\":\\\"#expressionWithoutIdentifiers\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#expressionPunctuations\\\"}]},\\\"expressionPunctuations\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#punctuation-comma\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"expressionWithoutIdentifiers\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#regex\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-expression\\\"},{\\\"include\\\":\\\"#class-expression\\\"},{\\\"include\\\":\\\"#ternary-expression\\\"},{\\\"include\\\":\\\"#new-expr\\\"},{\\\"include\\\":\\\"#instanceof-expr\\\"},{\\\"include\\\":\\\"#object-literal\\\"},{\\\"include\\\":\\\"#expression-operators\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#support-objects\\\"}]},\\\"generics-literal\\\":{\\\"begin\\\":\\\"(?<=[\\\\\\\\w\\\\\\\\]\\\\\\\\)])\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.generics.annotation.open.imba\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.generics.annotation.close.imba\\\"}},\\\"name\\\":\\\"meta.generics.annotation.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-brackets\\\"}]},\\\"global-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(global)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.global.imba\\\"},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.imba\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.property.imba\\\"}},\\\"match\\\":\\\"(?:(?:(\\\\\\\\.)|(\\\\\\\\.\\\\\\\\.(?!\\\\\\\\s*[[:digit:]]|\\\\\\\\s+)))\\\\\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?)(?=\\\\\\\\s*={{functionOrArrowLookup}})\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.imba\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.property.imba\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\.\\\\\\\\.(?!\\\\\\\\s*[[:digit:]]|\\\\\\\\s+)))\\\\\\\\s*(\\\\\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.imba\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.class.property.imba\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\.\\\\\\\\.(?!\\\\\\\\s*[[:digit:]]|\\\\\\\\s+)))([[:upper:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\!]?)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.imba\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.property.imba\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\.\\\\\\\\.(?!\\\\\\\\s*[[:digit:]]|\\\\\\\\s+)))(\\\\\\\\#?[_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?)\\\"},{\\\"match\\\":\\\"(for own|for|if|unless|when)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other\\\"},{\\\"match\\\":\\\"require\\\",\\\"name\\\":\\\"support.function.require\\\"},{\\\"include\\\":\\\"#plain-identifiers\\\"},{\\\"include\\\":\\\"#type-literal\\\"},{\\\"include\\\":\\\"#generics-literal\\\"}]},\\\"inline-css-selector\\\":{\\\"begin\\\":\\\"(^\\\\\\\\t+)(?!(?:[\\\\\\\\^\\\\\\\\@\\\\\\\\.\\\\\\\\%\\\\\\\\w\\\\\\\\$\\\\\\\\!\\\\\\\\-]+)(?:\\\\\\\\s*[\\\\\\\\:\\\\\\\\=]))\\\",\\\"end\\\":\\\"(\\\\\\\\s*(?=(?:[\\\\\\\\^\\\\\\\\@\\\\\\\\.\\\\\\\\%\\\\\\\\w\\\\\\\\$\\\\\\\\!\\\\\\\\-]+)(?:\\\\\\\\s*[\\\\\\\\:\\\\\\\\=])|\\\\\\\\)|\\\\\\\\])|\\\\\\\\s*$)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.sel-properties.css\\\"}},\\\"name\\\":\\\"meta.selector.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#css-selector-innards\\\"}]},\\\"inline-styles\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#style-property\\\"},{\\\"include\\\":\\\"#css-property-values\\\"},{\\\"include\\\":\\\"#style-expr\\\"}]},\\\"inline-tags\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.end.jsdoc\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)[^\\\\\\\\]]+(\\\\\\\\])(?={@(?:link|linkcode|linkplain|tutorial))\\\",\\\"name\\\":\\\"constant.other.description.jsdoc\\\"},{\\\"begin\\\":\\\"({)((@)(?:link(?:code|plain)?|tutorial))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.inline.tag.jsdoc\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.link.underline.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?=https?://)(?:[^|}\\\\\\\\s*]|\\\\\\\\*[/])+)(\\\\\\\\|)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.description.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.jsdoc\\\"}},\\\"match\\\":\\\"\\\\\\\\G((?:[^{}@\\\\\\\\s|*]|\\\\\\\\*[^/])+)(\\\\\\\\|)?\\\"}]}]},\\\"invalid-indentation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^[\\\\\\\\ ]+\\\",\\\"name\\\":\\\"invalid.whitespace\\\"},{\\\"match\\\":\\\"^\\\\\\\\t+\\\\\\\\s+\\\",\\\"name\\\":\\\"invalid.whitespace\\\"}]},\\\"jsdoctype\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G{(?:[^}*]|\\\\\\\\*[^/}])+$\\\",\\\"name\\\":\\\"invalid.illegal.type.jsdoc\\\"},{\\\"begin\\\":\\\"\\\\\\\\G({)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.jsdoc\\\"}},\\\"contentName\\\":\\\"entity.name.type.instance.jsdoc\\\",\\\"end\\\":\\\"((}))\\\\\\\\s*|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.instance.jsdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.jsdoc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"}]}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(if|elif|else|unless|switch|when|then|do|import|export|for own|for|while|until|return|yield|try|catch|await|rescue|finally|throw|as|continue|break|extend|augment)(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.imba\\\"},{\\\"match\\\":\\\"(?<=export)\\\\\\\\s+(default)(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.control.imba\\\"},{\\\"match\\\":\\\"(?<=import)\\\\\\\\s+(type)(?=\\\\\\\\s+[\\\\\\\\w\\\\\\\\{\\\\\\\\$\\\\\\\\_])\\\",\\\"name\\\":\\\"keyword.control.imba\\\"},{\\\"match\\\":\\\"(extend|global|abstract)\\\\\\\\s+(?=class|tag|abstract|mixin|interface)\\\",\\\"name\\\":\\\"keyword.control.imba\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\*\\\\\\\\}\\\\\\\\w\\\\\\\\$])\\\\\\\\s+(from)(?=\\\\\\\\s+[\\\\\\\\\\\\\\\"\\\\\\\\'])\\\",\\\"name\\\":\\\"keyword.control.imba\\\"},{\\\"match\\\":\\\"(def|get|set)(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.type.function.imba\\\"},{\\\"match\\\":\\\"(protected|private)\\\\\\\\s+(?=def|get|set)\\\",\\\"name\\\":\\\"keyword.control.imba\\\"},{\\\"match\\\":\\\"(tag|class|struct|mixin|interface)(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.type.class.imba\\\"},{\\\"match\\\":\\\"(let|const|constructor)(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.type.imba\\\"},{\\\"match\\\":\\\"(prop|attr)(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.type.imba\\\"},{\\\"match\\\":\\\"(static)\\\\\\\\s+\\\",\\\"name\\\":\\\"storage.modifier.imba\\\"},{\\\"match\\\":\\\"(declare)\\\\\\\\s+\\\",\\\"name\\\":\\\"storage.modifier.imba\\\"},{\\\"include\\\":\\\"#ops\\\"},{\\\"match\\\":\\\"(=|\\\\\\\\|\\\\\\\\|=|\\\\\\\\?\\\\\\\\?=|\\\\\\\\&\\\\\\\\&=|\\\\\\\\+=|\\\\\\\\-=|\\\\\\\\*=|\\\\\\\\^=|\\\\\\\\%=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.imba\\\"},{\\\"match\\\":\\\"(\\\\\\\\>\\\\\\\\=?|\\\\\\\\<\\\\\\\\=?)\\\",\\\"name\\\":\\\"keyword.operator.imba\\\"},{\\\"match\\\":\\\"(of|delete|\\\\\\\\!?isa|typeof|\\\\\\\\!?in|new|\\\\\\\\!?is|isnt)(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"keyword.operator.imba\\\"}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#number-with-unit-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"},{\\\"include\\\":\\\"#boolean-literal\\\"},{\\\"include\\\":\\\"#null-literal\\\"},{\\\"include\\\":\\\"#undefined-literal\\\"},{\\\"include\\\":\\\"#numericConstant-literal\\\"},{\\\"include\\\":\\\"#this-literal\\\"},{\\\"include\\\":\\\"#global-literal\\\"},{\\\"include\\\":\\\"#super-literal\\\"},{\\\"include\\\":\\\"#type-literal\\\"},{\\\"include\\\":\\\"#generics-literal\\\"},{\\\"include\\\":\\\"#string\\\"}]},\\\"mixin-css-selector\\\":{\\\"begin\\\":\\\"(\\\\\\\\%[\\\\\\\\w\\\\\\\\-]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.mixin.css\\\"}},\\\"end\\\":\\\"(\\\\\\\\s*(?=(?:[\\\\\\\\^\\\\\\\\@\\\\\\\\.\\\\\\\\%\\\\\\\\w\\\\\\\\$\\\\\\\\!\\\\\\\\-]+)(?:\\\\\\\\s*[\\\\\\\\:\\\\\\\\=])[^\\\\\\\\:])|\\\\\\\\s*$|(?=\\\\\\\\s+\\\\\\\\#\\\\\\\\s))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.sel-properties.css\\\"}},\\\"name\\\":\\\"meta.selector.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#css-selector-innards\\\"}]},\\\"mixin-css-selector-after\\\":{\\\"begin\\\":\\\"(?<=%[\\\\\\\\w\\\\\\\\-]+)(?!(?:[\\\\\\\\^\\\\\\\\@\\\\\\\\.\\\\\\\\%\\\\\\\\w\\\\\\\\$\\\\\\\\!\\\\\\\\-]+)(?:\\\\\\\\s*[\\\\\\\\:\\\\\\\\=])[^\\\\\\\\:])\\\",\\\"end\\\":\\\"(\\\\\\\\s*(?=(?:[\\\\\\\\^\\\\\\\\@\\\\\\\\.\\\\\\\\%\\\\\\\\w\\\\\\\\$\\\\\\\\!\\\\\\\\-]+)(?:\\\\\\\\s*[\\\\\\\\:\\\\\\\\=])[^\\\\\\\\:])|\\\\\\\\s*$|(?=\\\\\\\\s+\\\\\\\\#\\\\\\\\s))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.sel-properties.css\\\"}},\\\"name\\\":\\\"meta.selector.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#css-selector-innards\\\"}]},\\\"mixin-declaration\\\":{\\\"begin\\\":\\\"^(\\\\\\\\t*)(\\\\\\\\%[\\\\\\\\w\\\\\\\\-]+)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.mixin.css\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\t|\\\\\\\\s*$))\\\",\\\"name\\\":\\\"meta.style.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#mixin-css-selector-after\\\"},{\\\"include\\\":\\\"#css-comment\\\"},{\\\"include\\\":\\\"#nested-css-selector\\\"},{\\\"include\\\":\\\"#inline-styles\\\"}]},\\\"nested-css-selector\\\":{\\\"begin\\\":\\\"(^\\\\\\\\t+)(?!(?:[\\\\\\\\^\\\\\\\\@\\\\\\\\.\\\\\\\\%\\\\\\\\w\\\\\\\\$\\\\\\\\!\\\\\\\\-]+)(?:\\\\\\\\s*[\\\\\\\\:\\\\\\\\=])[^\\\\\\\\:])\\\",\\\"end\\\":\\\"(\\\\\\\\s*(?=(?:[\\\\\\\\^\\\\\\\\@\\\\\\\\.\\\\\\\\%\\\\\\\\w\\\\\\\\$\\\\\\\\!\\\\\\\\-]+)(?:\\\\\\\\s*[\\\\\\\\:\\\\\\\\=])[^\\\\\\\\:])|\\\\\\\\s*$|(?=\\\\\\\\s+\\\\\\\\#\\\\\\\\s))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.sel-properties.css\\\"}},\\\"name\\\":\\\"meta.selector.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#css-selector-innards\\\"}]},\\\"nested-style-declaration\\\":{\\\"begin\\\":\\\"^(\\\\\\\\t+)(?=[\\\\\\\\n^]*\\\\\\\\&)\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\t|\\\\\\\\s*$))\\\",\\\"name\\\":\\\"meta.style.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nested-css-selector\\\"},{\\\"include\\\":\\\"#inline-styles\\\"}]},\\\"null-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))null(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.null.imba\\\"},\\\"number-with-unit-literal\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.unit.imba\\\"}},\\\"match\\\":\\\"([0-9]+)([a-z]+|\\\\\\\\%)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.unit.imba\\\"}},\\\"match\\\":\\\"([0-9]*\\\\\\\\.[0-9]+(?:[eE][\\\\\\\\-+]?[0-9]+)?)([a-z]+|\\\\\\\\%)\\\"}]},\\\"numeric-literal\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.imba\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.hex.imba\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.imba\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.binary.imba\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.imba\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.octal.imba\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.decimal.imba\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.imba\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.imba\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.imba\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.imba\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.imba\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.imba\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.imba\\\"},\\\"9\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.imba\\\"},\\\"10\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.imba\\\"},\\\"11\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.imba\\\"},\\\"12\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.imba\\\"},\\\"13\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.imba\\\"},\\\"14\\\":{\\\"name\\\":\\\"storage.type.numeric.bigint.imba\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b))(?!\\\\\\\\$)\\\"}]},\\\"numericConstant-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))NaN(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.nan.imba\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))Infinity(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.infinity.imba\\\"}]},\\\"object-keys\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?\\\\\\\\:\\\",\\\"name\\\":\\\"meta.object-literal.key\\\"}]},\\\"ops\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.spread.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\*=|(?<!\\\\\\\\()/=|%=|\\\\\\\\+=|\\\\\\\\-=|\\\\\\\\?=|\\\\\\\\?\\\\\\\\?=|=\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\^=\\\\\\\\?|\\\\\\\\|=\\\\\\\\?|\\\\\\\\~=\\\\\\\\?|\\\\\\\\&=|\\\\\\\\^=|<<=|>>=|>>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.imba\\\"},{\\\"match\\\":\\\"<<|>>>|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.imba\\\"},{\\\"match\\\":\\\"===|!==|==|!=|~=\\\",\\\"name\\\":\\\"keyword.operator.comparison.imba\\\"},{\\\"match\\\":\\\"<=|>=|<>|<|>\\\",\\\"name\\\":\\\"keyword.operator.relational.imba\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.imba\\\"}},\\\"match\\\":\\\"(\\\\\\\\!)\\\\\\\\s*(/)(?![/*])\\\"},{\\\"match\\\":\\\"\\\\\\\\!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?\\\\\\\\?|or\\\\\\\\b(?=\\\\\\\\s|$)|and\\\\\\\\b(?=\\\\\\\\s|$)|\\\\\\\\@\\\\\\\\b(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"keyword.operator.logical.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\?(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"keyword.operator.bitwise.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\&|~|\\\\\\\\^|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.ternary.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.assignment.imba\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.imba\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.imba\\\"}]},\\\"pairs\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#curly-braces\\\"},{\\\"include\\\":\\\"#square-braces\\\"},{\\\"include\\\":\\\"#round-braces\\\"}]},\\\"plain-accessors\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.property.imba\\\"}},\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\.?)([_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?)\\\"}]},\\\"plain-identifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])\\\",\\\"name\\\":\\\"variable.other.constant.imba\\\"},{\\\"match\\\":\\\"[[:upper:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\!]?\\\",\\\"name\\\":\\\"variable.other.class.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\\\\\\d+\\\",\\\"name\\\":\\\"variable.special.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\$[_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?\\\",\\\"name\\\":\\\"variable.other.internal.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\@\\\\\\\\@+[_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?\\\",\\\"name\\\":\\\"variable.other.symbol.imba\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?\\\",\\\"name\\\":\\\"variable.other.readwrite.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\@[_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?\\\",\\\"name\\\":\\\"variable.other.instance.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\#+[_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?\\\",\\\"name\\\":\\\"variable.other.private.imba\\\"},{\\\"match\\\":\\\"\\\\\\\\:[_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?\\\",\\\"name\\\":\\\"string.symbol.imba\\\"}]},\\\"punctuation-accessor\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.optional.imba\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\.)|(\\\\\\\\.\\\\\\\\.(?!\\\\\\\\s*[[:digit:]]|\\\\\\\\s+)))\\\"},\\\"punctuation-comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.imba\\\"},\\\"punctuation-semicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.imba\\\"},\\\"qstring-double\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.imba\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.imba\\\"}},\\\"name\\\":\\\"string.quoted.double.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"qstring-single\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.imba\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|((?:[^\\\\\\\\\\\\\\\\\\\\\\\\n])$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.imba\\\"}},\\\"name\\\":\\\"string.quoted.single.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"qstring-single-multi\\\":{\\\"begin\\\":\\\"'''\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.imba\\\"}},\\\"end\\\":\\\"'''\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.imba\\\"}},\\\"name\\\":\\\"string.quoted.single.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"regex\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\+\\\\\\\\+|--|})(?<=[=(:,\\\\\\\\[?+!]|^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case|=>|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\*\\\\\\\\/)\\\\\\\\s*(\\\\\\\\/)(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[\\\\\\\\()]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\]|\\\\\\\\(([^\\\\\\\\)\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\))+\\\\\\\\/([gimsuy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.imba\\\"}},\\\"end\\\":\\\"(/)([gimsuy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.imba\\\"}},\\\"name\\\":\\\"string.regexp.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"((?<![_$[:alnum:])\\\\\\\\]]|\\\\\\\\+\\\\\\\\+|--|}|\\\\\\\\*\\\\\\\\/)|((?<=^return|[^\\\\\\\\._$[:alnum:]]return|^case|[^\\\\\\\\._$[:alnum:]]case))\\\\\\\\s*)\\\\\\\\/(?![\\\\\\\\/*])(?=(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\[]|\\\\\\\\\\\\\\\\.|\\\\\\\\[([^\\\\\\\\]\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)+\\\\\\\\])+\\\\\\\\/([gimsuy]+|(?![\\\\\\\\/\\\\\\\\*])|(?=\\\\\\\\/\\\\\\\\*))(?!\\\\\\\\s*[a-zA-Z0-9_$]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.imba\\\"}},\\\"end\\\":\\\"(/)([gimsuy]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.imba\\\"}},\\\"name\\\":\\\"string.regexp.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]}]},\\\"regex-character-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[wWsSdDtrnvf]|\\\\\\\\.\\\",\\\"name\\\":\\\"constant.other.character-class.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})\\\",\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c[A-Z]\\\",\\\"name\\\":\\\"constant.character.control.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[bB]|\\\\\\\\^|\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.control.anchor.regexp\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d*|\\\\\\\\\\\\\\\\k<([a-zA-Z_$][\\\\\\\\w$]*)>\\\"},{\\\"match\\\":\\\"[?+*]|\\\\\\\\{(\\\\\\\\d+,\\\\\\\\d+|\\\\\\\\d+,|,\\\\\\\\d+|\\\\\\\\d+)\\\\\\\\}\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.or.regexp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()((\\\\\\\\?=)|(\\\\\\\\?!)|(\\\\\\\\?<=)|(\\\\\\\\?<!))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.assertion.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.assertion.look-ahead.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-ahead.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.assertion.look-behind.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.assertion.negative-look-behind.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.assertion.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\((?:(\\\\\\\\?:)|(?:\\\\\\\\?<([a-zA-Z_$][\\\\\\\\w$]*)>))?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.no-capture.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.regexp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.control.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(?:.|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\\\\\\-(?:[^\\\\\\\\]\\\\\\\\\\\\\\\\]|(\\\\\\\\\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\\\\\\\\\c[A-Z])|(\\\\\\\\\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.other.character-class.range.regexp\\\"},{\\\"include\\\":\\\"#regex-character-class\\\"}]},{\\\"include\\\":\\\"#regex-character-class\\\"}]},\\\"root\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"}]},\\\"round-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.round.imba\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.imba\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"single-line-comment-consuming-line-ending\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//|\\\\\\\\#\\\\\\\\s)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.imba\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.imba\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.imba\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.imba\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.imba\\\",\\\"end\\\":\\\"(?=^)\\\"},\\\"square-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.imba\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.imba\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-single-multi\\\"},{\\\"include\\\":\\\"#qstring-double-multi\\\"},{\\\"include\\\":\\\"#qstring-single\\\"},{\\\"include\\\":\\\"#qstring-double\\\"},{\\\"include\\\":\\\"#template\\\"}]},\\\"string-character-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\\\\\{[0-9A-Fa-f]+\\\\\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)\\\",\\\"name\\\":\\\"constant.character.escape.imba\\\"},\\\"style-declaration\\\":{\\\"begin\\\":\\\"^(\\\\\\\\t*)(?:(global|local|export)\\\\\\\\s+)?(?:(scoped)\\\\\\\\s+)?(css)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.export.imba\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.imba\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.style.imba\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\t|\\\\\\\\s*$))\\\",\\\"name\\\":\\\"meta.style.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#css-selector\\\"},{\\\"include\\\":\\\"#css-comment\\\"},{\\\"include\\\":\\\"#nested-css-selector\\\"},{\\\"include\\\":\\\"#inline-styles\\\"}]},\\\"style-expr\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.unit.css\\\"}},\\\"match\\\":\\\"(\\\\\\\\b[0-9][0-9_]*)(\\\\\\\\w+|%)?\\\"},{\\\"match\\\":\\\"--[_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?\\\",\\\"name\\\":\\\"support.constant.property-value.var.css\\\"},{\\\"match\\\":\\\"(x+s|sm-|md-|lg-|sm|md|lg|x+l|hg|x+h)(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"support.constant.property-value.size.css\\\"},{\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?\\\",\\\"name\\\":\\\"support.constant.property-value.css\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.function.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#style-expr\\\"}]}]},\\\"style-property\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?:[\\\\\\\\^\\\\\\\\@\\\\\\\\.\\\\\\\\%\\\\\\\\w\\\\\\\\$\\\\\\\\!\\\\\\\\-]+)(?:\\\\\\\\s*[\\\\\\\\:\\\\\\\\=]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.calc.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.bracket.round.css\\\"}},\\\"end\\\":\\\"\\\\\\\\s*[\\\\\\\\:\\\\\\\\=]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.css\\\"}},\\\"name\\\":\\\"meta.property-name.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?:--|\\\\\\\\$)[\\\\\\\\w\\\\\\\\-\\\\\\\\$]+\\\",\\\"name\\\":\\\"support.type.property-name.variable.css\\\"},{\\\"match\\\":\\\"\\\\\\\\@[\\\\\\\\!\\\\\\\\<\\\\\\\\>]?[0-9]+\\\",\\\"name\\\":\\\"support.type.property-name.modifier.breakpoint.css\\\"},{\\\"match\\\":\\\"\\\\\\\\^?\\\\\\\\@+[\\\\\\\\w\\\\\\\\-\\\\\\\\$]+\\\",\\\"name\\\":\\\"support.type.property-name.modifier.css\\\"},{\\\"match\\\":\\\"\\\\\\\\^?\\\\\\\\.+[\\\\\\\\w\\\\\\\\-\\\\\\\\$]+\\\",\\\"name\\\":\\\"support.type.property-name.modifier.flag.css\\\"},{\\\"match\\\":\\\"\\\\\\\\^?\\\\\\\\%+[\\\\\\\\w\\\\\\\\-\\\\\\\\$]+\\\",\\\"name\\\":\\\"support.type.property-name.modifier.state.css\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.[\\\\\\\\w\\\\\\\\-\\\\\\\\$]+|\\\\\\\\^+[\\\\\\\\.\\\\\\\\@\\\\\\\\%][\\\\\\\\w\\\\\\\\-\\\\\\\\$]+\\\",\\\"name\\\":\\\"support.type.property-name.modifier.up.css\\\"},{\\\"match\\\":\\\"\\\\\\\\.[\\\\\\\\w\\\\\\\\-\\\\\\\\$]+\\\",\\\"name\\\":\\\"support.type.property-name.modifier.is.css\\\"},{\\\"match\\\":\\\"[\\\\\\\\w\\\\\\\\-\\\\\\\\$]+\\\",\\\"name\\\":\\\"support.type.property-name.css\\\"}]}]},\\\"super-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))super\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.super.imba\\\"},\\\"tag-attr-name\\\":{\\\"begin\\\":\\\"([\\\\\\\\w$_]+(?:\\\\\\\\-[\\\\\\\\w$_]+)*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.imba\\\"}},\\\"contentName\\\":\\\"entity.other.attribute-name.imba\\\",\\\"end\\\":\\\"(?=[\\\\\\\\s\\\\\\\\.\\\\\\\\[\\\\\\\\>\\\\\\\\=])\\\"},\\\"tag-attr-value\\\":{\\\"begin\\\":\\\"(\\\\\\\\=)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.tag.assignment\\\"}},\\\"contentName\\\":\\\"meta.tag.attribute-value.imba\\\",\\\"end\\\":\\\"(?=>|\\\\\\\\s)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"}]},\\\"tag-classname\\\":{\\\"begin\\\":\\\"\\\\\\\\.\\\",\\\"contentName\\\":\\\"entity.other.attribute-name.class.css\\\",\\\"end\\\":\\\"(?=[\\\\\\\\.\\\\\\\\[\\\\\\\\>\\\\\\\\s\\\\\\\\(\\\\\\\\=])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-interpolated-content\\\"}]},\\\"tag-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-name\\\"},{\\\"include\\\":\\\"#tag-expr-name\\\"},{\\\"include\\\":\\\"#tag-interpolated-content\\\"},{\\\"include\\\":\\\"#tag-interpolated-parens\\\"},{\\\"include\\\":\\\"#tag-interpolated-brackets\\\"},{\\\"include\\\":\\\"#tag-event-handler\\\"},{\\\"include\\\":\\\"#tag-mixin-name\\\"},{\\\"include\\\":\\\"#tag-classname\\\"},{\\\"include\\\":\\\"#tag-ref\\\"},{\\\"include\\\":\\\"#tag-attr-value\\\"},{\\\"include\\\":\\\"#tag-attr-name\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"tag-event-handler\\\":{\\\"begin\\\":\\\"(\\\\\\\\@[\\\\\\\\w$_]+(?:\\\\\\\\-[\\\\\\\\w$_]+)*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.event-name.imba\\\"}},\\\"contentName\\\":\\\"entity.other.tag.event\\\",\\\"end\\\":\\\"(?=[\\\\\\\\[\\\\\\\\>\\\\\\\\s\\\\\\\\=])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-interpolated-content\\\"},{\\\"include\\\":\\\"#tag-interpolated-parens\\\"},{\\\"begin\\\":\\\"\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tag\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\.\\\\\\\\[\\\\\\\\>\\\\\\\\s\\\\\\\\=]|$)\\\",\\\"name\\\":\\\"entity.other.event-modifier.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-interpolated-parens\\\"},{\\\"include\\\":\\\"#tag-interpolated-content\\\"}]}]},\\\"tag-expr-name\\\":{\\\"begin\\\":\\\"(?<=<)(?=[\\\\\\\\w\\\\\\\\{])\\\",\\\"contentName\\\":\\\"entity.name.tag.imba\\\",\\\"end\\\":\\\"(?=[\\\\\\\\%\\\\\\\\$\\\\\\\\#\\\\\\\\.\\\\\\\\[\\\\\\\\>\\\\\\\\s\\\\\\\\(])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-interpolated-content\\\"}]},\\\"tag-interpolated-brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tag.imba\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.imba\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tag.imba\\\"}},\\\"name\\\":\\\"meta.tag.expression.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline-css-selector\\\"},{\\\"include\\\":\\\"#inline-styles\\\"}]},\\\"tag-interpolated-content\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tag.imba\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.imba\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tag.imba\\\"}},\\\"name\\\":\\\"meta.tag.expression.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"tag-interpolated-parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tag.imba\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.imba\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tag.imba\\\"}},\\\"name\\\":\\\"meta.tag.expression.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"tag-literal\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)(?=[\\\\\\\\%\\\\\\\\~\\\\\\\\w\\\\\\\\{\\\\\\\\[\\\\\\\\.\\\\\\\\#\\\\\\\\$\\\\\\\\@\\\\\\\\(])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.tag.open.imba\\\"}},\\\"contentName\\\":\\\"meta.tag.attributes.imba\\\",\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.tag.close.imba\\\"}},\\\"name\\\":\\\"meta.tag.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-content\\\"}]}]},\\\"tag-mixin-name\\\":{\\\"match\\\":\\\"(\\\\\\\\%[\\\\\\\\w\\\\\\\\-]+)\\\",\\\"name\\\":\\\"entity.other.tag-mixin.imba\\\"},\\\"tag-name\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=<)(self|global|slot)(?=[\\\\\\\\.\\\\\\\\[\\\\\\\\>\\\\\\\\s\\\\\\\\(])\\\",\\\"name\\\":\\\"entity.name.tag.special.imba\\\"}]},\\\"tag-ref\\\":{\\\"match\\\":\\\"(\\\\\\\\$[\\\\\\\\w\\\\\\\\-]+)\\\",\\\"name\\\":\\\"entity.other.tag-ref.imba\\\"},\\\"template\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?)({{typeArguments}}\\\\\\\\s*)?`)\\\",\\\"end\\\":\\\"(?=`)\\\",\\\"name\\\":\\\"string.template.imba\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(([_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?\\\\\\\\s*\\\\\\\\??\\\\\\\\.\\\\\\\\s*)*|(\\\\\\\\??\\\\\\\\.\\\\\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?))\\\",\\\"end\\\":\\\"(?=({{typeArguments}}\\\\\\\\s*)?`)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?)\\\",\\\"name\\\":\\\"entity.name.function.tagged-template.imba\\\"}]}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?)\\\\\\\\s*(?=({{typeArguments}}\\\\\\\\s*)`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.imba\\\"}},\\\"end\\\":\\\"(?=`)\\\",\\\"name\\\":\\\"string.template.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-arguments\\\"}]},{\\\"begin\\\":\\\"([_$[:alpha:]][_$[:alnum:]]*(?:\\\\\\\\-[_$[:alnum:]]+)*[\\\\\\\\?\\\\\\\\!]?)?(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tagged-template.imba\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.begin.imba\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.template.end.imba\\\"}},\\\"name\\\":\\\"string.template.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-substitution-element\\\"},{\\\"include\\\":\\\"#string-character-escape\\\"}]}]},\\\"template-substitution-element\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.imba\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.imba\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.imba\\\"}},\\\"name\\\":\\\"meta.template.expression.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"}]},\\\"this-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(this|self)\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"variable.language.this.imba\\\"},\\\"type-annotation\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-literal\\\"}]},\\\"type-brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-brackets\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-brackets\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\<\\\",\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-brackets\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-brackets\\\"}]}]},\\\"type-literal\\\":{\\\"begin\\\":\\\"(\\\\\\\\\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type.annotation.open.imba\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\s\\\\\\\\]\\\\\\\\)\\\\\\\\,\\\\\\\\.\\\\\\\\=\\\\\\\\}]|$)\\\",\\\"name\\\":\\\"meta.type.annotation.imba\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-brackets\\\"}]},\\\"undefined-literal\\\":{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))undefined(?![\\\\\\\\?_\\\\\\\\-$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.language.undefined.imba\\\"}},\\\"scopeName\\\":\\\"source.imba\\\",\\\"embeddedLangs\\\":[\\\"typescript\\\"]}\"))\n\nexport default [\n...typescript,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"INI\\\",\\\"name\\\":\\\"ini\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ini\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ini\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.ini\\\"}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=;)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ini\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\";\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ini\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.semicolon.ini\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.definition.ini\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.ini\\\"}},\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z0-9_.-]+)\\\\\\\\b\\\\\\\\s*(=)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.ini\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.ini\\\"}},\\\"match\\\":\\\"^(\\\\\\\\[)(.*?)(\\\\\\\\])\\\",\\\"name\\\":\\\"entity.name.section.group-title.ini\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ini\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ini\\\"}},\\\"name\\\":\\\"string.quoted.single.ini\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.ini\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ini\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ini\\\"}},\\\"name\\\":\\\"string.quoted.double.ini\\\"}],\\\"scopeName\\\":\\\"source.ini\\\",\\\"aliases\\\":[\\\"properties\\\"]}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"jinja-html\\\",\\\"firstLineMatch\\\":\\\"^{% extends [\\\\\\\"'][^\\\\\\\"']+[\\\\\\\"'] %}\\\",\\\"foldingStartMarker\\\":\\\"(<(?i:(head|table|tr|div|style|script|ul|ol|form|dl))\\\\\\\\b.*?>|{%\\\\\\\\s*(block|filter|for|if|macro|raw))\\\",\\\"foldingStopMarker\\\":\\\"(</(?i:(head|table|tr|div|style|script|ul|ol|form|dl))\\\\\\\\b.*?>|{%\\\\\\\\s*(endblock|endfilter|endfor|endif|endmacro|endraw)\\\\\\\\s*%})\\\",\\\"name\\\":\\\"jinja-html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.jinja\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}],\\\"scopeName\\\":\\\"text.html.jinja\\\",\\\"embeddedLangs\\\":[\\\"html\\\"]}\"))\n\nexport default [\n...html,\nlang\n]\n", "import jinja_html from './jinja-html.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Jinja\\\",\\\"foldingStartMarker\\\":\\\"({%\\\\\\\\s*(block|filter|for|if|macro|raw))\\\",\\\"foldingStopMarker\\\":\\\"({%\\\\\\\\s*(endblock|endfilter|endfor|endif|endmacro|endraw)\\\\\\\\s*%})\\\",\\\"name\\\":\\\"jinja\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"({%)\\\\\\\\s*(raw)\\\\\\\\s*(%})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.jinja.delimiter.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.jinja\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.jinja.delimiter.tag\\\"}},\\\"end\\\":\\\"({%)\\\\\\\\s*(endraw)\\\\\\\\s*(%})\\\",\\\"name\\\":\\\"comment.block.jinja.raw\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"{{-?\\\",\\\"captures\\\":[{\\\"name\\\":\\\"variable.entity.other.jinja.delimiter\\\"}],\\\"end\\\":\\\"-?}}\\\",\\\"name\\\":\\\"variable.meta.scope.jinja\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"{%-?\\\",\\\"captures\\\":[{\\\"name\\\":\\\"entity.other.jinja.delimiter.tag\\\"}],\\\"end\\\":\\\"-?%}\\\",\\\"name\\\":\\\"meta.scope.jinja.tag\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}],\\\"repository\\\":{\\\"comments\\\":{\\\"begin\\\":\\\"{#-?\\\",\\\"captures\\\":[{\\\"name\\\":\\\"entity.other.jinja.delimiter.comment\\\"}],\\\"end\\\":\\\"-?#}\\\",\\\"name\\\":\\\"comment.block.jinja\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},\\\"escaped_char\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9A-F]{2}\\\",\\\"name\\\":\\\"constant.character.escape.hex.jinja\\\"},\\\"escaped_unicode_char\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.unicode.16-bit-hex.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.unicode.32-bit-hex.jinja\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.unicode.name.jinja\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\U[0-9A-Fa-f]{8})|(\\\\\\\\\\\\\\\\u[0-9A-Fa-f]{4})|(\\\\\\\\\\\\\\\\N\\\\\\\\{[a-zA-Z ]+\\\\\\\\})\\\"},\\\"expression\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.jinja.block\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(block)\\\\\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.jinja.filter\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(filter)\\\\\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.jinja.test\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(is)\\\\\\\\s+([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.jinja\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\{\\\\\\\\%-|\\\\\\\\{\\\\\\\\%)\\\\\\\\s*\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b(?!\\\\\\\\s*[,=])\\\"},{\\\"match\\\":\\\"\\\\\\\\b(and|else|if|in|import|not|or|recursive|with(out)?\\\\\\\\s+context)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.jinja\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false|none)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.jinja\\\"},{\\\"match\\\":\\\"\\\\\\\\b(loop|super|self|varargs|kwargs)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.jinja\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"variable.other.jinja\\\"},{\\\"match\\\":\\\"(\\\\\\\\+|\\\\\\\\-|\\\\\\\\*\\\\\\\\*|\\\\\\\\*|//|/|%)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.jinja\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.other.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.jinja.filter\\\"}},\\\"match\\\":\\\"(\\\\\\\\|)([a-zA-Z_][a-zA-Z0-9_]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.other.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.jinja.attribute\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)([a-zA-Z_][a-zA-Z0-9_]*)\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":[{\\\"name\\\":\\\"punctuation.other.jinja\\\"}],\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":[{\\\"name\\\":\\\"punctuation.other.jinja\\\"}],\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":[{\\\"name\\\":\\\"punctuation.other.jinja\\\"}],\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"match\\\":\\\"(\\\\\\\\.|:|\\\\\\\\||,)\\\",\\\"name\\\":\\\"punctuation.other.jinja\\\"},{\\\"match\\\":\\\"(==|<=|=>|<|>|!=)\\\",\\\"name\\\":\\\"keyword.operator.comparison.jinja\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.jinja\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.string.begin.jinja\\\"}],\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.string.end.jinja\\\"}],\\\"name\\\":\\\"string.quoted.double.jinja\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.string.begin.jinja\\\"}],\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.string.end.jinja\\\"}],\\\"name\\\":\\\"string.quoted.single.jinja\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"@/\\\",\\\"beginCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.regexp.begin.jinja\\\"}],\\\"end\\\":\\\"/\\\",\\\"endCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.regexp.end.jinja\\\"}],\\\"name\\\":\\\"string.regexp.jinja\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#simple_escapes\\\"}]}]},\\\"simple_escapes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.newline.jinja\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.backlash.jinja\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.double-quote.jinja\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.escape.single-quote.jinja\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.escape.bell.jinja\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.character.escape.backspace.jinja\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.character.escape.formfeed.jinja\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.character.escape.linefeed.jinja\\\"},\\\"9\\\":{\\\"name\\\":\\\"constant.character.escape.return.jinja\\\"},\\\"10\\\":{\\\"name\\\":\\\"constant.character.escape.tab.jinja\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.character.escape.vertical-tab.jinja\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\\\\\\\\\n)|(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)|(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\")|(\\\\\\\\\\\\\\\\')|(\\\\\\\\\\\\\\\\a)|(\\\\\\\\\\\\\\\\b)|(\\\\\\\\\\\\\\\\f)|(\\\\\\\\\\\\\\\\n)|(\\\\\\\\\\\\\\\\r)|(\\\\\\\\\\\\\\\\t)|(\\\\\\\\\\\\\\\\v)\\\"},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#simple_escapes\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#escaped_unicode_char\\\"}]}},\\\"scopeName\\\":\\\"source.jinja\\\",\\\"embeddedLangs\\\":[\\\"jinja-html\\\"]}\"))\n\nexport default [\n...jinja_html,\nlang\n]\n", "import javascript from './javascript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Jison\\\",\\\"fileTypes\\\":[\\\"jison\\\"],\\\"injections\\\":{\\\"L:(meta.action.jison - (comment | string)), source.js.embedded.jison - (comment | string), source.js.embedded.source - (comment | string.quoted.double | string.quoted.single)\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\${2}\\\",\\\"name\\\":\\\"variable.language.semantic-value.jison\\\"},{\\\"match\\\":\\\"@\\\\\\\\$\\\",\\\"name\\\":\\\"variable.language.result-location.jison\\\"},{\\\"match\\\":\\\"##\\\\\\\\$|\\\\\\\\byysp\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.stack-index-0.jison\\\"},{\\\"match\\\":\\\"#\\\\\\\\S+#\\\",\\\"name\\\":\\\"support.variable.token-reference.jison\\\"},{\\\"match\\\":\\\"#\\\\\\\\$\\\",\\\"name\\\":\\\"variable.language.result-id.jison\\\"},{\\\"match\\\":\\\"\\\\\\\\$(?:-?\\\\\\\\d+|[[:alpha:]_](?:[\\\\\\\\w-]*\\\\\\\\w)?)\\\",\\\"name\\\":\\\"support.variable.token-value.jison\\\"},{\\\"match\\\":\\\"@(?:-?\\\\\\\\d+|[[:alpha:]_](?:[\\\\\\\\w-]*\\\\\\\\w)?)\\\",\\\"name\\\":\\\"support.variable.token-location.jison\\\"},{\\\"match\\\":\\\"##(?:-?\\\\\\\\d+|[[:alpha:]_](?:[\\\\\\\\w-]*\\\\\\\\w)?)\\\",\\\"name\\\":\\\"support.variable.stack-index.jison\\\"},{\\\"match\\\":\\\"#(?:-?\\\\\\\\d+|[[:alpha:]_](?:[\\\\\\\\w-]*\\\\\\\\w)?)\\\",\\\"name\\\":\\\"support.variable.token-id.jison\\\"},{\\\"match\\\":\\\"\\\\\\\\byy(?:l(?:eng|ineno|oc|stack)|rulelength|s(?:tate|s?tack)|text|vstack)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.jison\\\"},{\\\"match\\\":\\\"\\\\\\\\byy(?:clearin|erro[kr])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.jison\\\"}]}},\\\"name\\\":\\\"jison\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"%%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.separator.section.jison\\\"}},\\\"end\\\":\\\"\\\\\\\\z\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"%%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.separator.section.jison\\\"}},\\\"end\\\":\\\"\\\\\\\\z\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"contentName\\\":\\\"source.js.embedded.jison\\\",\\\"end\\\":\\\"\\\\\\\\z\\\",\\\"name\\\":\\\"meta.section.epilogue.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#epilogue_section\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=%%)\\\",\\\"name\\\":\\\"meta.section.rules.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rules_section\\\"}]}]},{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"(?=%%)\\\",\\\"name\\\":\\\"meta.section.declarations.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations_section\\\"}]}],\\\"repository\\\":{\\\"actions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.action.begin.jison\\\"}},\\\"contentName\\\":\\\"source.js.embedded.jison\\\",\\\"end\\\":\\\"\\\\\\\\}\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.action.end.jison\\\"}},\\\"name\\\":\\\"meta.action.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(?=%\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=%\\\\\\\\})\\\",\\\"name\\\":\\\"meta.action.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#user_code_blocks\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.jison\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.jison\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.jison\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.jison\\\"}},\\\"name\\\":\\\"comment.block.jison\\\"}]},\\\"declarations_section\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*(%lex)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.lexer.begin.jison\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(/lex)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.lexer.end.jison\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"%%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.separator.section.jisonlex\\\"}},\\\"end\\\":\\\"(?=/lex)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^%%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.separator.section.jisonlex\\\"}},\\\"end\\\":\\\"(?=/lex)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"contentName\\\":\\\"source.js.embedded.jisonlex\\\",\\\"end\\\":\\\"(?=/lex)\\\",\\\"name\\\":\\\"meta.section.user-code.jisonlex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.jisonlex#user_code_section\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"^(?=%%|/lex)\\\",\\\"name\\\":\\\"meta.section.rules.jisonlex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.jisonlex#rules_section\\\"}]}]},{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"(?=%%|/lex)\\\",\\\"name\\\":\\\"meta.section.definitions.jisonlex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.jisonlex#definitions_section\\\"}]}]},{\\\"begin\\\":\\\"(?=%\\\\\\\\{)\\\",\\\"end\\\":\\\"(?<=%\\\\\\\\})\\\",\\\"name\\\":\\\"meta.section.prologue.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#user_code_blocks\\\"}]},{\\\"include\\\":\\\"#options_declarations\\\"},{\\\"match\\\":\\\"%(ebnf|left|nonassoc|parse-param|right|start)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.declaration.$1.jison\\\"},{\\\"include\\\":\\\"#include_declarations\\\"},{\\\"begin\\\":\\\"%(code)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.declaration.$1.jison\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.code.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#rule_actions\\\"},{\\\"match\\\":\\\"(init|required)\\\",\\\"name\\\":\\\"keyword.other.code-qualifier.$1.jison\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"match\\\":\\\"\\\\\\\\b[[:alpha:]_](?:[\\\\\\\\w-]*\\\\\\\\w)?\\\\\\\\b\\\",\\\"name\\\":\\\"string.unquoted.jison\\\"}]},{\\\"begin\\\":\\\"%(parser-type)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.declaration.$1.jison\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.parser-type.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"match\\\":\\\"\\\\\\\\b[[:alpha:]_](?:[\\\\\\\\w-]*\\\\\\\\w)?\\\\\\\\b\\\",\\\"name\\\":\\\"string.unquoted.jison\\\"}]},{\\\"begin\\\":\\\"%(token)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.declaration.$1.jison\\\"}},\\\"end\\\":\\\"$|(%%|;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.declaration.token.jison\\\"}},\\\"name\\\":\\\"meta.token.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"match\\\":\\\"<[[:alpha:]_](?:[\\\\\\\\w-]*\\\\\\\\w)?>\\\",\\\"name\\\":\\\"invalid.unimplemented.jison\\\"},{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"entity.other.token.jison\\\"}]},{\\\"match\\\":\\\"%(debug|import)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.declaration.$1.jison\\\"},{\\\"match\\\":\\\"%prec\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.jison\\\"},{\\\"match\\\":\\\"%[[:alpha:]_](?:[\\\\\\\\w-]*\\\\\\\\w)?\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.unimplemented.jison\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"}]},\\\"epilogue_section\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#user_code_include_declarations\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"include_declarations\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(%(include))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.declaration.$2.jison\\\"}},\\\"end\\\":\\\"(?<=['\\\\\\\"])|(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.include.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#include_paths\\\"}]}]},\\\"include_paths\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\S)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"string.unquoted.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js#string_escapes\\\"}]}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.number.jison\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.jison\\\"}},\\\"match\\\":\\\"(0[Xx])([0-9A-Fa-f]+)\\\"},{\\\"match\\\":\\\"\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.jison\\\"}]},\\\"options_declarations\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"%options\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.options.jison\\\"}},\\\"end\\\":\\\"^(?=\\\\\\\\S|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"meta.options.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b[[:alpha:]_](?:[\\\\\\\\w-]*\\\\\\\\w)?\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.constant.jison\\\"},{\\\"begin\\\":\\\"(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.option.assignment.jison\\\"}},\\\"end\\\":\\\"(?<=['\\\\\\\"])|(?=\\\\\\\\s)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.$1.jison\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"string.unquoted.jison\\\"}]},{\\\"include\\\":\\\"#quoted_strings\\\"}]}]},\\\"quoted_strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js#string_escapes\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js#string_escapes\\\"}]}]},\\\"rule_actions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#actions\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.action.begin.jison\\\"}},\\\"contentName\\\":\\\"source.js.embedded.jison\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.action.end.jison\\\"}},\\\"name\\\":\\\"meta.action.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"include\\\":\\\"#include_declarations\\\"},{\\\"begin\\\":\\\"->|\u2192\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.action.arrow.jison\\\"}},\\\"contentName\\\":\\\"source.js.embedded.jison\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.action.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"rules_section\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#actions\\\"},{\\\"include\\\":\\\"#include_declarations\\\"},{\\\"begin\\\":\\\"\\\\\\\\b[[:alpha:]_](?:[\\\\\\\\w-]*\\\\\\\\w)?\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.constant.rule-result.jison\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.jison\\\"}},\\\"name\\\":\\\"meta.rule.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.rule-components.assignment.jison\\\"}},\\\"end\\\":\\\"(?=;)\\\",\\\"name\\\":\\\"meta.rule-components.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.named-reference.begin.jison\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.other.reference.jison\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.named-reference.end.jison\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)([[:alpha:]_](?:[\\\\\\\\w-]*\\\\\\\\w)?)(\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(%(prec))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.$2.jison\\\"}},\\\"end\\\":\\\"(?<=['\\\\\\\"])|(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.prec.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#quoted_strings\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\S)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"constant.other.token.jison\\\"}]},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.rule-components.separator.jison\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:EOF|error)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.$0.jison\\\"},{\\\"match\\\":\\\"(?:%(?:e(?:mpty|psilon))|\\\\\\\\b[\u0190\u025B\u03B5\u03F5])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.empty.jison\\\"},{\\\"include\\\":\\\"#rule_actions\\\"}]}]}]},\\\"user_code_blocks\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"%\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.user-code-block.begin.jison\\\"}},\\\"contentName\\\":\\\"source.js.embedded.jison\\\",\\\"end\\\":\\\"%\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.user-code-block.end.jison\\\"}},\\\"name\\\":\\\"meta.user-code-block.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"user_code_include_declarations\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(%(include))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.declaration.$2.jison\\\"}},\\\"end\\\":\\\"(?<=['\\\\\\\"])|(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.include.jison\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#include_paths\\\"}]}]}},\\\"scopeName\\\":\\\"source.jison\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\"]}\"))\n\nexport default [\n...javascript,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"JSON5\\\",\\\"fileTypes\\\":[\\\"json5\\\"],\\\"name\\\":\\\"json5\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#value\\\"}],\\\"repository\\\":{\\\"array\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.json5\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.json5\\\"}},\\\"name\\\":\\\"meta.structure.array.json5\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.array.json5\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s\\\\\\\\]]\\\",\\\"name\\\":\\\"invalid.illegal.expected-array-separator.json5\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"/{2}.*\\\",\\\"name\\\":\\\"comment.single.json5\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json5\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.json5\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json5\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.json5\\\"}]},\\\"constant\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:true|false|null|Infinity|NaN)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.json5\\\"},\\\"infinity\\\":{\\\"match\\\":\\\"(-)*\\\\\\\\b(?:Infinity|NaN)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.json5\\\"},\\\"key\\\":{\\\"name\\\":\\\"string.key.json5\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringSingle\\\"},{\\\"include\\\":\\\"#stringDouble\\\"},{\\\"match\\\":\\\"[a-zA-Z0-9_-]\\\",\\\"name\\\":\\\"string.key.json5\\\"}]},\\\"number\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"handles hexadecimal numbers\\\",\\\"match\\\":\\\"(0x)[0-9a-fA-f]*\\\",\\\"name\\\":\\\"constant.hex.numeric.json5\\\"},{\\\"comment\\\":\\\"handles integer and decimal numbers\\\",\\\"match\\\":\\\"[+-.]?(?=[1-9]|0(?!\\\\\\\\d))\\\\\\\\d+(\\\\\\\\.\\\\\\\\d+)?([eE][+-]?\\\\\\\\d+)?\\\",\\\"name\\\":\\\"constant.dec.numeric.json5\\\"}]},\\\"object\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.begin.json5\\\"}},\\\"comment\\\":\\\"a json5 object\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.end.json5\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.json5\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"comment\\\":\\\"the json5 object key\\\",\\\"include\\\":\\\"#key\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.key-value.json5\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.pair.json5\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.value.json5\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"the json5 object value\\\",\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s,]\\\",\\\"name\\\":\\\"invalid.illegal.expected-dictionary-separator.json5\\\"}]},{\\\"match\\\":\\\"[^\\\\\\\\s\\\\\\\\}]\\\",\\\"name\\\":\\\"invalid.illegal.expected-dictionary-separator.json5\\\"}]},\\\"stringDouble\\\":{\\\"begin\\\":\\\"[\\\\\\\"]\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.json5\\\"}},\\\"end\\\":\\\"[\\\\\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.json5\\\"}},\\\"name\\\":\\\"string.quoted.json5\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\\\\\\\\\(?:[\\\\\\\"\\\\\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4}))\\\",\\\"name\\\":\\\"constant.character.escape.json5\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.json5\\\"}]},\\\"stringSingle\\\":{\\\"begin\\\":\\\"[']\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.json5\\\"}},\\\"end\\\":\\\"[']\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.json5\\\"}},\\\"name\\\":\\\"string.quoted.json5\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\\\\\\\\\(?:[\\\\\\\"\\\\\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4}))\\\",\\\"name\\\":\\\"constant.character.escape.json5\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.json5\\\"}]},\\\"value\\\":{\\\"comment\\\":\\\"the 'value' diagram at http://json.org\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#infinity\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#stringSingle\\\"},{\\\"include\\\":\\\"#stringDouble\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#object\\\"}]}},\\\"scopeName\\\":\\\"source.json5\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"JSON with Comments\\\",\\\"name\\\":\\\"jsonc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}],\\\"repository\\\":{\\\"array\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.json.comments\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.json.comments\\\"}},\\\"name\\\":\\\"meta.structure.array.json.comments\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.array.json.comments\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s\\\\\\\\]]\\\",\\\"name\\\":\\\"invalid.illegal.expected-array-separator.json.comments\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json.comments\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.json.comments\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json.comments\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.json.comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json.comments\\\"}},\\\"match\\\":\\\"(//).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"}]},\\\"constant\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.json.comments\\\"},\\\"number\\\":{\\\"match\\\":\\\"-?(?:0|[1-9]\\\\\\\\d*)(?:(?:\\\\\\\\.\\\\\\\\d+)?(?:[eE][+-]?\\\\\\\\d+)?)?\\\",\\\"name\\\":\\\"constant.numeric.json.comments\\\"},\\\"object\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.begin.json.comments\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.end.json.comments\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.json.comments\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"the JSON object key\\\",\\\"include\\\":\\\"#objectkey\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.key-value.json.comments\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.pair.json.comments\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.value.json.comments\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"the JSON object value\\\",\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s,]\\\",\\\"name\\\":\\\"invalid.illegal.expected-dictionary-separator.json.comments\\\"}]},{\\\"match\\\":\\\"[^\\\\\\\\s\\\\\\\\}]\\\",\\\"name\\\":\\\"invalid.illegal.expected-dictionary-separator.json.comments\\\"}]},\\\"objectkey\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.support.type.property-name.begin.json.comments\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.support.type.property-name.end.json.comments\\\"}},\\\"name\\\":\\\"string.json.comments support.type.property-name.json.comments\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringcontent\\\"}]},\\\"string\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.json.comments\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.json.comments\\\"}},\\\"name\\\":\\\"string.quoted.double.json.comments\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringcontent\\\"}]},\\\"stringcontent\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[\\\\\\\"\\\\\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})\\\",\\\"name\\\":\\\"constant.character.escape.json.comments\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.json.comments\\\"}]},\\\"value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"include\\\":\\\"#comments\\\"}]}},\\\"scopeName\\\":\\\"source.json.comments\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"JSON Lines\\\",\\\"name\\\":\\\"jsonl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}],\\\"repository\\\":{\\\"array\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.json.lines\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.json.lines\\\"}},\\\"name\\\":\\\"meta.structure.array.json.lines\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.array.json.lines\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s\\\\\\\\]]\\\",\\\"name\\\":\\\"invalid.illegal.expected-array-separator.json.lines\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json.lines\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.json.lines\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json.lines\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.json.lines\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json.lines\\\"}},\\\"match\\\":\\\"(//).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"}]},\\\"constant\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.json.lines\\\"},\\\"number\\\":{\\\"match\\\":\\\"-?(?:0|[1-9]\\\\\\\\d*)(?:(?:\\\\\\\\.\\\\\\\\d+)?(?:[eE][+-]?\\\\\\\\d+)?)?\\\",\\\"name\\\":\\\"constant.numeric.json.lines\\\"},\\\"object\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.begin.json.lines\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.end.json.lines\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.json.lines\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"the JSON object key\\\",\\\"include\\\":\\\"#objectkey\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.key-value.json.lines\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.pair.json.lines\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.value.json.lines\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"the JSON object value\\\",\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s,]\\\",\\\"name\\\":\\\"invalid.illegal.expected-dictionary-separator.json.lines\\\"}]},{\\\"match\\\":\\\"[^\\\\\\\\s\\\\\\\\}]\\\",\\\"name\\\":\\\"invalid.illegal.expected-dictionary-separator.json.lines\\\"}]},\\\"objectkey\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.support.type.property-name.begin.json.lines\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.support.type.property-name.end.json.lines\\\"}},\\\"name\\\":\\\"string.json.lines support.type.property-name.json.lines\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringcontent\\\"}]},\\\"string\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.json.lines\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.json.lines\\\"}},\\\"name\\\":\\\"string.quoted.double.json.lines\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringcontent\\\"}]},\\\"stringcontent\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[\\\\\\\"\\\\\\\\\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})\\\",\\\"name\\\":\\\"constant.character.escape.json.lines\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.json.lines\\\"}]},\\\"value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"include\\\":\\\"#comments\\\"}]}},\\\"scopeName\\\":\\\"source.json.lines\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Jsonnet\\\",\\\"name\\\":\\\"jsonnet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#keywords\\\"}],\\\"repository\\\":{\\\"builtin-functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bstd[.](acos|asin|atan|ceil|char|codepoint|cos|exp|exponent)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\bstd[.](filter|floor|force|length|log|makeArray|mantissa)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\bstd[.](objectFields|objectHas|pow|sin|sqrt|tan|type|thisFile)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\bstd[.](acos|asin|atan|ceil|char|codepoint|cos|exp|exponent)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\bstd[.](abs|assertEqual|escapeString(Bash|Dollars|Json|Python))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\bstd[.](filterMap|flattenArrays|foldl|foldr|format|join)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\bstd[.](lines|manifest(Ini|Python(Vars)?)|map|max|min|mod)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\bstd[.](set|set(Diff|Inter|Member|Union)|sort)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\bstd[.](range|split|stringChars|substr|toString|uniq)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.jsonnet\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.jsonnet\\\"},{\\\"match\\\":\\\"//.*$\\\",\\\"name\\\":\\\"comment.line.jsonnet\\\"},{\\\"match\\\":\\\"#.*$\\\",\\\"name\\\":\\\"comment.block.jsonnet\\\"}]},\\\"double-quoted-strings\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.jsonnet\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([\\\\\\\"\\\\\\\\\\\\\\\\/bfnrt]|(u[0-9a-fA-F]{4}))\\\",\\\"name\\\":\\\"constant.character.escape.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^\\\\\\\"\\\\\\\\\\\\\\\\/bfnrtu]\\\",\\\"name\\\":\\\"invalid.illegal.jsonnet\\\"}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literals\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#single-quoted-strings\\\"},{\\\"include\\\":\\\"#double-quoted-strings\\\"},{\\\"include\\\":\\\"#triple-quoted-strings\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#functions\\\"}]},\\\"functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([a-zA-Z_][a-z0-9A-Z_]*)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.jsonnet\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.function\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[!:~\\\\\\\\+\\\\\\\\-&\\\\\\\\|\\\\\\\\^=<>\\\\\\\\*\\\\\\\\/%]\\\",\\\"name\\\":\\\"keyword.operator.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.other.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\b(self|super|import|importstr|local|tailstrict)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\b(if|then|else|for|in|error|assert)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\b(function)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.jsonnet\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-z0-9A-Z_]*\\\\\\\\s*(:::|\\\\\\\\+:::)\\\",\\\"name\\\":\\\"variable.parameter.jsonnet\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-z0-9A-Z_]*\\\\\\\\s*(::|\\\\\\\\+::)\\\",\\\"name\\\":\\\"entity.name.type\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-z0-9A-Z_]*\\\\\\\\s*(:|\\\\\\\\+:)\\\",\\\"name\\\":\\\"variable.parameter.jsonnet\\\"}]},\\\"literals\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+([Ee][+-]?\\\\\\\\d+)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+[.]\\\\\\\\d*([Ee][+-]?\\\\\\\\d+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\b[.]\\\\\\\\d+([Ee][+-]?\\\\\\\\d+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.jsonnet\\\"}]},\\\"single-quoted-strings\\\":{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.double.jsonnet\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(['\\\\\\\\\\\\\\\\/bfnrt]|(u[0-9a-fA-F]{4}))\\\",\\\"name\\\":\\\"constant.character.escape.jsonnet\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^'\\\\\\\\\\\\\\\\/bfnrtu]\\\",\\\"name\\\":\\\"invalid.illegal.jsonnet\\\"}]},\\\"triple-quoted-strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\|\\\\\\\\|\\\\\\\\|\\\",\\\"end\\\":\\\"\\\\\\\\|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"string.quoted.triple.jsonnet\\\"}]}},\\\"scopeName\\\":\\\"source.jsonnet\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"JSSM\\\",\\\"fileTypes\\\":[\\\"jssm\\\",\\\"jssm_state\\\"],\\\"name\\\":\\\"jssm\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.mn\\\"}},\\\"comment\\\":\\\"block comment\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.jssm\\\"},{\\\"begin\\\":\\\"//\\\",\\\"comment\\\":\\\"block comment\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.jssm\\\"},{\\\"begin\\\":\\\"\\\\\\\\${\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.function\\\"}},\\\"comment\\\":\\\"js outcalls\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"keyword.other\\\"},{\\\"comment\\\":\\\"semver\\\",\\\"match\\\":\\\"([0-9]*)(\\\\\\\\.)([0-9]*)(\\\\\\\\.)([0-9]*)\\\",\\\"name\\\":\\\"constant.numeric\\\"},{\\\"comment\\\":\\\"jssm language tokens\\\",\\\"match\\\":\\\"graph_layout(\\\\\\\\s*)(:)\\\",\\\"name\\\":\\\"constant.language.jssmLanguage\\\"},{\\\"comment\\\":\\\"jssm language tokens\\\",\\\"match\\\":\\\"machine_name(\\\\\\\\s*)(:)\\\",\\\"name\\\":\\\"constant.language.jssmLanguage\\\"},{\\\"comment\\\":\\\"jssm language tokens\\\",\\\"match\\\":\\\"machine_version(\\\\\\\\s*)(:)\\\",\\\"name\\\":\\\"constant.language.jssmLanguage\\\"},{\\\"comment\\\":\\\"jssm language tokens\\\",\\\"match\\\":\\\"jssm_version(\\\\\\\\s*)(:)\\\",\\\"name\\\":\\\"constant.language.jssmLanguage\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<->\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.legal_legal\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<-\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.legal_none\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.none_legal\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<=>\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.main_main\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.none_main\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<=\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.main_none\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<~>\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.forced_forced\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"~>\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.none_forced\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<~\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.forced_none\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<-=>\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.legal_main\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<=->\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.main_legal\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<-~>\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.legal_forced\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<~->\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.forced_legal\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<=~>\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.main_forced\\\"},{\\\"comment\\\":\\\"transitions\\\",\\\"match\\\":\\\"<~=>\\\",\\\"name\\\":\\\"keyword.control.transition.jssmArrow.forced_main\\\"},{\\\"comment\\\":\\\"edge probability annotation\\\",\\\"match\\\":\\\"([0-9]+)%\\\",\\\"name\\\":\\\"constant.numeric.jssmProbability\\\"},{\\\"comment\\\":\\\"action annotation\\\",\\\"match\\\":\\\"\\\\\\\\'[^']*\\\\\\\\'\\\",\\\"name\\\":\\\"constant.character.jssmAction\\\"},{\\\"comment\\\":\\\"jssm label annotation\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\"[^\\\\\\\"]*\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"entity.name.tag.jssmLabel.doublequoted\\\"},{\\\"comment\\\":\\\"jssm label annotation\\\",\\\"match\\\":\\\"([a-zA-Z0-9_.+&()#@!?,])\\\",\\\"name\\\":\\\"entity.name.tag.jssmLabel.atom\\\"}],\\\"scopeName\\\":\\\"source.jssm\\\",\\\"aliases\\\":[\\\"fsl\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"R\\\",\\\"name\\\":\\\"r\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#roxygen\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#storage-type\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#function-declarations\\\"},{\\\"include\\\":\\\"#lambda-functions\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#function-calls\\\"},{\\\"include\\\":\\\"#general-variables\\\"}],\\\"repository\\\":{\\\"brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.r\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.r\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[(?!\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.single.begin.r\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.single.end.r\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.double.begin.r\\\"}},\\\"contentName\\\":\\\"meta.item-access.arguments.r\\\",\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.double.end.r\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.r\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.r\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"}]}]},\\\"builtin-functions\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.r\\\"}},\\\"match\\\":\\\"\\\\\\\\b(abbreviate|abs|acos|acosh|activeBindingFunction|addNA|addTaskCallback|agrep|agrepl|alist|all|all\\\\\\\\.equal|all\\\\\\\\.equal\\\\\\\\.character|all\\\\\\\\.equal\\\\\\\\.default|all\\\\\\\\.equal\\\\\\\\.environment|all\\\\\\\\.equal\\\\\\\\.envRefClass|all\\\\\\\\.equal\\\\\\\\.factor|all\\\\\\\\.equal\\\\\\\\.formula|all\\\\\\\\.equal\\\\\\\\.function|all\\\\\\\\.equal\\\\\\\\.language|all\\\\\\\\.equal\\\\\\\\.list|all\\\\\\\\.equal\\\\\\\\.numeric|all\\\\\\\\.equal\\\\\\\\.POSIXt|all\\\\\\\\.equal\\\\\\\\.raw|all\\\\\\\\.names|allowInterrupts|all\\\\\\\\.vars|any|anyDuplicated|anyDuplicated\\\\\\\\.array|anyDuplicated\\\\\\\\.data\\\\\\\\.frame|anyDuplicated\\\\\\\\.default|anyDuplicated\\\\\\\\.matrix|anyNA|anyNA\\\\\\\\.data\\\\\\\\.frame|anyNA\\\\\\\\.numeric_version|anyNA\\\\\\\\.POSIXlt|aperm|aperm\\\\\\\\.default|aperm\\\\\\\\.table|append|apply|Arg|args|array|arrayInd|as\\\\\\\\.array|as\\\\\\\\.array\\\\\\\\.default|as\\\\\\\\.call|as\\\\\\\\.character|as\\\\\\\\.character\\\\\\\\.condition|as\\\\\\\\.character\\\\\\\\.Date|as\\\\\\\\.character\\\\\\\\.default|as\\\\\\\\.character\\\\\\\\.error|as\\\\\\\\.character\\\\\\\\.factor|as\\\\\\\\.character\\\\\\\\.hexmode|as\\\\\\\\.character\\\\\\\\.numeric_version|as\\\\\\\\.character\\\\\\\\.octmode|as\\\\\\\\.character\\\\\\\\.POSIXt|as\\\\\\\\.character\\\\\\\\.srcref|as\\\\\\\\.complex|as\\\\\\\\.data\\\\\\\\.frame|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.array|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.AsIs|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.character|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.complex|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.data\\\\\\\\.frame|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.Date|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.default|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.difftime|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.factor|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.integer|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.list|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.logical|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.matrix|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.model\\\\\\\\.matrix|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.noquote|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.numeric|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.numeric_version|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.ordered|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.POSIXct|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.POSIXlt|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.raw|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.table|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.ts|as\\\\\\\\.data\\\\\\\\.frame\\\\\\\\.vector|as\\\\\\\\.Date|as\\\\\\\\.Date\\\\\\\\.character|as\\\\\\\\.Date\\\\\\\\.default|as\\\\\\\\.Date\\\\\\\\.factor|as\\\\\\\\.Date\\\\\\\\.numeric|as\\\\\\\\.Date\\\\\\\\.POSIXct|as\\\\\\\\.Date\\\\\\\\.POSIXlt|as\\\\\\\\.difftime|as\\\\\\\\.double|as\\\\\\\\.double\\\\\\\\.difftime|as\\\\\\\\.double\\\\\\\\.POSIXlt|as\\\\\\\\.environment|as\\\\\\\\.expression|as\\\\\\\\.expression\\\\\\\\.default|as\\\\\\\\.factor|as\\\\\\\\.function|as\\\\\\\\.function\\\\\\\\.default|as\\\\\\\\.hexmode|asin|asinh|as\\\\\\\\.integer|as\\\\\\\\.list|as\\\\\\\\.list\\\\\\\\.data\\\\\\\\.frame|as\\\\\\\\.list\\\\\\\\.Date|as\\\\\\\\.list\\\\\\\\.default|as\\\\\\\\.list\\\\\\\\.difftime|as\\\\\\\\.list\\\\\\\\.environment|as\\\\\\\\.list\\\\\\\\.factor|as\\\\\\\\.list\\\\\\\\.function|as\\\\\\\\.list\\\\\\\\.numeric_version|as\\\\\\\\.list\\\\\\\\.POSIXct|as\\\\\\\\.list\\\\\\\\.POSIXlt|as\\\\\\\\.logical|as\\\\\\\\.logical\\\\\\\\.factor|as\\\\\\\\.matrix|as\\\\\\\\.matrix\\\\\\\\.data\\\\\\\\.frame|as\\\\\\\\.matrix\\\\\\\\.default|as\\\\\\\\.matrix\\\\\\\\.noquote|as\\\\\\\\.matrix\\\\\\\\.POSIXlt|as\\\\\\\\.name|asNamespace|as\\\\\\\\.null|as\\\\\\\\.null\\\\\\\\.default|as\\\\\\\\.numeric|as\\\\\\\\.numeric_version|as\\\\\\\\.octmode|as\\\\\\\\.ordered|as\\\\\\\\.package_version|as\\\\\\\\.pairlist|asplit|as\\\\\\\\.POSIXct|as\\\\\\\\.POSIXct\\\\\\\\.Date|as\\\\\\\\.POSIXct\\\\\\\\.default|as\\\\\\\\.POSIXct\\\\\\\\.numeric|as\\\\\\\\.POSIXct\\\\\\\\.POSIXlt|as\\\\\\\\.POSIXlt|as\\\\\\\\.POSIXlt\\\\\\\\.character|as\\\\\\\\.POSIXlt\\\\\\\\.Date|as\\\\\\\\.POSIXlt\\\\\\\\.default|as\\\\\\\\.POSIXlt\\\\\\\\.factor|as\\\\\\\\.POSIXlt\\\\\\\\.numeric|as\\\\\\\\.POSIXlt\\\\\\\\.POSIXct|as\\\\\\\\.qr|as\\\\\\\\.raw|asS3|asS4|assign|as\\\\\\\\.single|as\\\\\\\\.single\\\\\\\\.default|as\\\\\\\\.symbol|as\\\\\\\\.table|as\\\\\\\\.table\\\\\\\\.default|as\\\\\\\\.vector|as\\\\\\\\.vector\\\\\\\\.factor|atan|atan2|atanh|attach|attachNamespace|attr|attr\\\\\\\\.all\\\\\\\\.equal|attributes|autoload|autoloader|backsolve|baseenv|basename|besselI|besselJ|besselK|besselY|beta|bindingIsActive|bindingIsLocked|bindtextdomain|bitwAnd|bitwNot|bitwOr|bitwShiftL|bitwShiftR|bitwXor|body|bquote|break|browser|browserCondition|browserSetDebug|browserText|builtins|by|by\\\\\\\\.data\\\\\\\\.frame|by\\\\\\\\.default|bzfile|c|call|callCC|capabilities|casefold|cat|cbind|cbind\\\\\\\\.data\\\\\\\\.frame|c\\\\\\\\.Date|c\\\\\\\\.difftime|ceiling|c\\\\\\\\.factor|character|char\\\\\\\\.expand|charmatch|charToRaw|chartr|check_tzones|chkDots|chol|chol2inv|chol\\\\\\\\.default|choose|class|clearPushBack|close|closeAllConnections|close\\\\\\\\.connection|close\\\\\\\\.srcfile|close\\\\\\\\.srcfilealias|c\\\\\\\\.noquote|c\\\\\\\\.numeric_version|col|colMeans|colnames|colSums|commandArgs|comment|complex|computeRestarts|conditionCall|conditionCall\\\\\\\\.condition|conditionMessage|conditionMessage\\\\\\\\.condition|conflictRules|conflicts|Conj|contributors|cos|cosh|cospi|c\\\\\\\\.POSIXct|c\\\\\\\\.POSIXlt|crossprod|Cstack_info|cummax|cummin|cumprod|cumsum|curlGetHeaders|cut|cut\\\\\\\\.Date|cut\\\\\\\\.default|cut\\\\\\\\.POSIXt|c\\\\\\\\.warnings|data\\\\\\\\.class|data\\\\\\\\.frame|data\\\\\\\\.matrix|date|debug|debuggingState|debugonce|default\\\\\\\\.stringsAsFactors|delayedAssign|deparse|deparse1|det|detach|determinant|determinant\\\\\\\\.matrix|dget|diag|diff|diff\\\\\\\\.Date|diff\\\\\\\\.default|diff\\\\\\\\.difftime|diff\\\\\\\\.POSIXt|difftime|digamma|dim|dim\\\\\\\\.data\\\\\\\\.frame|dimnames|dimnames\\\\\\\\.data\\\\\\\\.frame|dir|dir\\\\\\\\.create|dir\\\\\\\\.exists|dirname|do\\\\\\\\.call|dontCheck|double|dput|dQuote|drop|droplevels|droplevels\\\\\\\\.data\\\\\\\\.frame|droplevels\\\\\\\\.factor|dump|duplicated|duplicated\\\\\\\\.array|duplicated\\\\\\\\.data\\\\\\\\.frame|duplicated\\\\\\\\.default|duplicated\\\\\\\\.matrix|duplicated\\\\\\\\.numeric_version|duplicated\\\\\\\\.POSIXlt|duplicated\\\\\\\\.warnings|dynGet|dyn\\\\\\\\.load|dyn\\\\\\\\.unload|eapply|eigen|emptyenv|enc2native|enc2utf8|encodeString|Encoding|endsWith|enquote|environment|environmentIsLocked|environmentName|env\\\\\\\\.profile|errorCondition|eval|eval\\\\\\\\.parent|evalq|exists|exp|expand\\\\\\\\.grid|expm1|expression|extSoftVersion|factor|factorial|fifo|file|file\\\\\\\\.access|file\\\\\\\\.append|file\\\\\\\\.choose|file\\\\\\\\.copy|file\\\\\\\\.create|file\\\\\\\\.exists|file\\\\\\\\.info|file\\\\\\\\.link|file\\\\\\\\.mode|file\\\\\\\\.mtime|file\\\\\\\\.path|file\\\\\\\\.remove|file\\\\\\\\.rename|file\\\\\\\\.show|file\\\\\\\\.size|file\\\\\\\\.symlink|Filter|Find|findInterval|find\\\\\\\\.package|findPackageEnv|findRestart|floor|flush|flush\\\\\\\\.connection|for|force|forceAndCall|formals|format|format\\\\\\\\.AsIs|formatC|format\\\\\\\\.data\\\\\\\\.frame|format\\\\\\\\.Date|format\\\\\\\\.default|format\\\\\\\\.difftime|formatDL|format\\\\\\\\.factor|format\\\\\\\\.hexmode|format\\\\\\\\.info|format\\\\\\\\.libraryIQR|format\\\\\\\\.numeric_version|format\\\\\\\\.octmode|format\\\\\\\\.packageInfo|format\\\\\\\\.POSIXct|format\\\\\\\\.POSIXlt|format\\\\\\\\.pval|format\\\\\\\\.summaryDefault|forwardsolve|function|gamma|gc|gcinfo|gc\\\\\\\\.time|gctorture|gctorture2|get|get0|getAllConnections|getCallingDLL|getCallingDLLe|getConnection|getDLLRegisteredRoutines|getDLLRegisteredRoutines\\\\\\\\.character|getDLLRegisteredRoutines\\\\\\\\.DLLInfo|getElement|geterrmessage|getExportedValue|getHook|getLoadedDLLs|getNamespace|getNamespaceExports|getNamespaceImports|getNamespaceInfo|getNamespaceName|getNamespaceUsers|getNamespaceVersion|getNativeSymbolInfo|getOption|getRversion|getSrcLines|getTaskCallbackNames|gettext|gettextf|getwd|gl|globalCallingHandlers|globalenv|gregexec|gregexpr|grep|grepl|grepRaw|grouping|gsub|gzcon|gzfile|I|iconv|iconvlist|icuGetCollate|icuSetCollate|identical|identity|if|ifelse|Im|importIntoEnv|infoRDS|inherits|integer|interaction|interactive|intersect|intToBits|intToUtf8|inverse\\\\\\\\.rle|invisible|invokeRestart|invokeRestartInteractively|isa|is\\\\\\\\.array|is\\\\\\\\.atomic|isatty|isBaseNamespace|is\\\\\\\\.call|is\\\\\\\\.character|is\\\\\\\\.complex|is\\\\\\\\.data\\\\\\\\.frame|isdebugged|is\\\\\\\\.double|is\\\\\\\\.element|is\\\\\\\\.environment|is\\\\\\\\.expression|is\\\\\\\\.factor|isFALSE|is\\\\\\\\.finite|is\\\\\\\\.function|isIncomplete|is\\\\\\\\.infinite|is\\\\\\\\.integer|is\\\\\\\\.language|is\\\\\\\\.list|is\\\\\\\\.loaded|is\\\\\\\\.logical|is\\\\\\\\.matrix|is\\\\\\\\.na|is\\\\\\\\.na\\\\\\\\.data\\\\\\\\.frame|is\\\\\\\\.name|isNamespace|isNamespaceLoaded|is\\\\\\\\.nan|is\\\\\\\\.na\\\\\\\\.numeric_version|is\\\\\\\\.na\\\\\\\\.POSIXlt|is\\\\\\\\.null|is\\\\\\\\.numeric|is\\\\\\\\.numeric\\\\\\\\.Date|is\\\\\\\\.numeric\\\\\\\\.difftime|is\\\\\\\\.numeric\\\\\\\\.POSIXt|is\\\\\\\\.numeric_version|is\\\\\\\\.object|ISOdate|ISOdatetime|isOpen|is\\\\\\\\.ordered|is\\\\\\\\.package_version|is\\\\\\\\.pairlist|is\\\\\\\\.primitive|is\\\\\\\\.qr|is\\\\\\\\.R|is\\\\\\\\.raw|is\\\\\\\\.recursive|isRestart|isS4|isSeekable|is\\\\\\\\.single|is\\\\\\\\.symbol|isSymmetric|isSymmetric\\\\\\\\.matrix|is\\\\\\\\.table|isTRUE|is\\\\\\\\.unsorted|is\\\\\\\\.vector|jitter|julian|julian\\\\\\\\.Date|julian\\\\\\\\.POSIXt|kappa|kappa\\\\\\\\.default|kappa\\\\\\\\.lm|kappa\\\\\\\\.qr|kronecker|l10n_info|labels|labels\\\\\\\\.default|La_library|lapply|La\\\\\\\\.svd|La_version|lazyLoad|lazyLoadDBexec|lazyLoadDBfetch|lbeta|lchoose|length|length\\\\\\\\.POSIXlt|lengths|levels|levels\\\\\\\\.default|lfactorial|lgamma|libcurlVersion|library|library\\\\\\\\.dynam|library\\\\\\\\.dynam\\\\\\\\.unload|licence|license|list|list2DF|list2env|list\\\\\\\\.dirs|list\\\\\\\\.files|load|loadedNamespaces|loadingNamespaceInfo|loadNamespace|local|lockBinding|lockEnvironment|log|log10|log1p|log2|logb|logical|lower\\\\\\\\.tri|ls|makeActiveBinding|make\\\\\\\\.names|make\\\\\\\\.unique|Map|mapply|marginSums|margin\\\\\\\\.table|match|match\\\\\\\\.arg|match\\\\\\\\.call|match\\\\\\\\.fun|Math\\\\\\\\.data\\\\\\\\.frame|Math\\\\\\\\.Date|Math\\\\\\\\.difftime|Math\\\\\\\\.factor|Math\\\\\\\\.POSIXt|mat\\\\\\\\.or\\\\\\\\.vec|matrix|max|max\\\\\\\\.col|mean|mean\\\\\\\\.Date|mean\\\\\\\\.default|mean\\\\\\\\.difftime|mean\\\\\\\\.POSIXct|mean\\\\\\\\.POSIXlt|memCompress|memDecompress|mem\\\\\\\\.maxNSize|mem\\\\\\\\.maxVSize|memory\\\\\\\\.profile|merge|merge\\\\\\\\.data\\\\\\\\.frame|merge\\\\\\\\.default|message|mget|min|missing|Mod|mode|months|months\\\\\\\\.Date|months\\\\\\\\.POSIXt|names|namespaceExport|namespaceImport|namespaceImportClasses|namespaceImportFrom|namespaceImportMethods|names\\\\\\\\.POSIXlt|nargs|nchar|ncol|NCOL|Negate|new\\\\\\\\.env|next|NextMethod|ngettext|nlevels|noquote|norm|normalizePath|nrow|NROW|nullfile|numeric|numeric_version|numToBits|numToInts|nzchar|objects|oldClass|OlsonNames|on\\\\\\\\.exit|open|open\\\\\\\\.connection|open\\\\\\\\.srcfile|open\\\\\\\\.srcfilealias|open\\\\\\\\.srcfilecopy|Ops\\\\\\\\.data\\\\\\\\.frame|Ops\\\\\\\\.Date|Ops\\\\\\\\.difftime|Ops\\\\\\\\.factor|Ops\\\\\\\\.numeric_version|Ops\\\\\\\\.ordered|Ops\\\\\\\\.POSIXt|options|order|ordered|outer|packageEvent|packageHasNamespace|packageNotFoundError|packageStartupMessage|package_version|packBits|pairlist|parent\\\\\\\\.env|parent\\\\\\\\.frame|parse|parseNamespaceFile|paste|paste0|path\\\\\\\\.expand|path\\\\\\\\.package|pcre_config|pi|pipe|plot|pmatch|pmax|pmax\\\\\\\\.int|pmin|pmin\\\\\\\\.int|polyroot|Position|pos\\\\\\\\.to\\\\\\\\.env|pretty|pretty\\\\\\\\.default|prettyNum|print|print\\\\\\\\.AsIs|print\\\\\\\\.by|print\\\\\\\\.condition|print\\\\\\\\.connection|print\\\\\\\\.data\\\\\\\\.frame|print\\\\\\\\.Date|print\\\\\\\\.default|print\\\\\\\\.difftime|print\\\\\\\\.Dlist|print\\\\\\\\.DLLInfo|print\\\\\\\\.DLLInfoList|print\\\\\\\\.DLLRegisteredRoutines|print\\\\\\\\.eigen|print\\\\\\\\.factor|print\\\\\\\\.function|print\\\\\\\\.hexmode|print\\\\\\\\.libraryIQR|print\\\\\\\\.listof|print\\\\\\\\.NativeRoutineList|print\\\\\\\\.noquote|print\\\\\\\\.numeric_version|print\\\\\\\\.octmode|print\\\\\\\\.packageInfo|print\\\\\\\\.POSIXct|print\\\\\\\\.POSIXlt|print\\\\\\\\.proc_time|print\\\\\\\\.restart|print\\\\\\\\.rle|print\\\\\\\\.simple\\\\\\\\.list|print\\\\\\\\.srcfile|print\\\\\\\\.srcref|print\\\\\\\\.summaryDefault|print\\\\\\\\.summary\\\\\\\\.table|print\\\\\\\\.summary\\\\\\\\.warnings|print\\\\\\\\.table|print\\\\\\\\.warnings|prmatrix|proc\\\\\\\\.time|prod|proportions|prop\\\\\\\\.table|provideDimnames|psigamma|pushBack|pushBackLength|q|qr|qr\\\\\\\\.coef|qr\\\\\\\\.default|qr\\\\\\\\.fitted|qr\\\\\\\\.Q|qr\\\\\\\\.qty|qr\\\\\\\\.qy|qr\\\\\\\\.R|qr\\\\\\\\.resid|qr\\\\\\\\.solve|qr\\\\\\\\.X|quarters|quarters\\\\\\\\.Date|quarters\\\\\\\\.POSIXt|quit|quote|range|range\\\\\\\\.default|rank|rapply|raw|rawConnection|rawConnectionValue|rawShift|rawToBits|rawToChar|rbind|rbind\\\\\\\\.data\\\\\\\\.frame|rcond|Re|readBin|readChar|read\\\\\\\\.dcf|readline|readLines|readRDS|readRenviron|Recall|Reduce|regexec|regexpr|reg\\\\\\\\.finalizer|registerS3method|registerS3methods|regmatches|remove|removeTaskCallback|rep|rep\\\\\\\\.Date|rep\\\\\\\\.difftime|repeat|rep\\\\\\\\.factor|rep\\\\\\\\.int|replace|rep_len|replicate|rep\\\\\\\\.numeric_version|rep\\\\\\\\.POSIXct|rep\\\\\\\\.POSIXlt|require|requireNamespace|restartDescription|restartFormals|retracemem|return|returnValue|rev|rev\\\\\\\\.default|R\\\\\\\\.home|rle|rm|RNGkind|RNGversion|round|round\\\\\\\\.Date|round\\\\\\\\.POSIXt|row|rowMeans|rownames|row\\\\\\\\.names|row\\\\\\\\.names\\\\\\\\.data\\\\\\\\.frame|row\\\\\\\\.names\\\\\\\\.default|rowsum|rowsum\\\\\\\\.data\\\\\\\\.frame|rowsum\\\\\\\\.default|rowSums|R_system_version|R\\\\\\\\.version|R\\\\\\\\.Version|R\\\\\\\\.version\\\\\\\\.string|sample|sample\\\\\\\\.int|sapply|save|save\\\\\\\\.image|saveRDS|scale|scale\\\\\\\\.default|scan|search|searchpaths|seek|seek\\\\\\\\.connection|seq|seq_along|seq\\\\\\\\.Date|seq\\\\\\\\.default|seq\\\\\\\\.int|seq_len|seq\\\\\\\\.POSIXt|sequence|sequence\\\\\\\\.default|serialize|serverSocket|setdiff|setequal|setHook|setNamespaceInfo|set\\\\\\\\.seed|setSessionTimeLimit|setTimeLimit|setwd|showConnections|shQuote|sign|signalCondition|signif|simpleCondition|simpleError|simpleMessage|simpleWarning|simplify2array|sin|single|sinh|sink|sink\\\\\\\\.number|sinpi|slice\\\\\\\\.index|socketAccept|socketConnection|socketSelect|socketTimeout|solve|solve\\\\\\\\.default|solve\\\\\\\\.qr|sort|sort\\\\\\\\.default|sort\\\\\\\\.int|sort\\\\\\\\.list|sort\\\\\\\\.POSIXlt|source|split|split\\\\\\\\.data\\\\\\\\.frame|split\\\\\\\\.Date|split\\\\\\\\.default|split\\\\\\\\.POSIXct|sprintf|sqrt|sQuote|srcfile|srcfilealias|srcfilecopy|srcref|standardGeneric|startsWith|stderr|stdin|stdout|stop|stopifnot|storage\\\\\\\\.mode|str2expression|str2lang|strftime|strptime|strrep|strsplit|strtoi|strtrim|structure|strwrap|sub|subset|subset\\\\\\\\.data\\\\\\\\.frame|subset\\\\\\\\.default|subset\\\\\\\\.matrix|substitute|substr|substring|sum|summary|summary\\\\\\\\.connection|summary\\\\\\\\.data\\\\\\\\.frame|Summary\\\\\\\\.data\\\\\\\\.frame|summary\\\\\\\\.Date|Summary\\\\\\\\.Date|summary\\\\\\\\.default|Summary\\\\\\\\.difftime|summary\\\\\\\\.factor|Summary\\\\\\\\.factor|summary\\\\\\\\.matrix|Summary\\\\\\\\.numeric_version|Summary\\\\\\\\.ordered|summary\\\\\\\\.POSIXct|Summary\\\\\\\\.POSIXct|summary\\\\\\\\.POSIXlt|Summary\\\\\\\\.POSIXlt|summary\\\\\\\\.proc_time|summary\\\\\\\\.srcfile|summary\\\\\\\\.srcref|summary\\\\\\\\.table|summary\\\\\\\\.warnings|suppressMessages|suppressPackageStartupMessages|suppressWarnings|suspendInterrupts|svd|sweep|switch|sys\\\\\\\\.call|sys\\\\\\\\.calls|Sys\\\\\\\\.chmod|Sys\\\\\\\\.Date|sys\\\\\\\\.frame|sys\\\\\\\\.frames|sys\\\\\\\\.function|Sys\\\\\\\\.getenv|Sys\\\\\\\\.getlocale|Sys\\\\\\\\.getpid|Sys\\\\\\\\.glob|Sys\\\\\\\\.info|sys\\\\\\\\.load\\\\\\\\.image|Sys\\\\\\\\.localeconv|sys\\\\\\\\.nframe|sys\\\\\\\\.on\\\\\\\\.exit|sys\\\\\\\\.parent|sys\\\\\\\\.parents|Sys\\\\\\\\.readlink|sys\\\\\\\\.save\\\\\\\\.image|Sys\\\\\\\\.setenv|Sys\\\\\\\\.setFileTime|Sys\\\\\\\\.setlocale|Sys\\\\\\\\.sleep|sys\\\\\\\\.source|sys\\\\\\\\.status|system|system2|system\\\\\\\\.file|system\\\\\\\\.time|Sys\\\\\\\\.time|Sys\\\\\\\\.timezone|Sys\\\\\\\\.umask|Sys\\\\\\\\.unsetenv|Sys\\\\\\\\.which|t|table|tabulate|tan|tanh|tanpi|tapply|taskCallbackManager|tcrossprod|t\\\\\\\\.data\\\\\\\\.frame|t\\\\\\\\.default|tempdir|tempfile|textConnection|textConnectionValue|tolower|topenv|toString|toString\\\\\\\\.default|toupper|trace|traceback|tracemem|tracingState|transform|transform\\\\\\\\.data\\\\\\\\.frame|transform\\\\\\\\.default|trigamma|trimws|trunc|truncate|truncate\\\\\\\\.connection|trunc\\\\\\\\.Date|trunc\\\\\\\\.POSIXt|try|tryCatch|tryInvokeRestart|typeof|unclass|undebug|union|unique|unique\\\\\\\\.array|unique\\\\\\\\.data\\\\\\\\.frame|unique\\\\\\\\.default|unique\\\\\\\\.matrix|unique\\\\\\\\.numeric_version|unique\\\\\\\\.POSIXlt|unique\\\\\\\\.warnings|units|units\\\\\\\\.difftime|unix\\\\\\\\.time|unlink|unlist|unloadNamespace|unlockBinding|unname|unserialize|unsplit|untrace|untracemem|unz|upper\\\\\\\\.tri|url|UseMethod|utf8ToInt|validEnc|validUTF8|vapply|vector|Vectorize|version|warning|warningCondition|warnings|weekdays|weekdays\\\\\\\\.Date|weekdays\\\\\\\\.POSIXt|which|which\\\\\\\\.max|which\\\\\\\\.min|while|with|withAutoprint|withCallingHandlers|with\\\\\\\\.default|within|within\\\\\\\\.data\\\\\\\\.frame|within\\\\\\\\.list|withRestarts|withVisible|write|writeBin|writeChar|write\\\\\\\\.dcf|writeLines|xor|xpdrows\\\\\\\\.data\\\\\\\\.frame|xtfrm|xtfrm\\\\\\\\.AsIs|xtfrm\\\\\\\\.data\\\\\\\\.frame|xtfrm\\\\\\\\.Date|xtfrm\\\\\\\\.default|xtfrm\\\\\\\\.difftime|xtfrm\\\\\\\\.factor|xtfrm\\\\\\\\.numeric_version|xtfrm\\\\\\\\.POSIXct|xtfrm\\\\\\\\.POSIXlt|xzfile|zapsmall)\\\\\\\\s*(\\\\\\\\()\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.r\\\"}},\\\"match\\\":\\\"\\\\\\\\b(abline|arrows|assocplot|axis|Axis|axis\\\\\\\\.Date|axis\\\\\\\\.POSIXct|axTicks|barplot|barplot\\\\\\\\.default|box|boxplot|boxplot\\\\\\\\.default|boxplot\\\\\\\\.matrix|bxp|cdplot|clip|close\\\\\\\\.screen|co\\\\\\\\.intervals|contour|contour\\\\\\\\.default|coplot|curve|dotchart|erase\\\\\\\\.screen|filled\\\\\\\\.contour|fourfoldplot|frame|grconvertX|grconvertY|grid|hist|hist\\\\\\\\.default|identify|image|image\\\\\\\\.default|layout|layout\\\\\\\\.show|lcm|legend|lines|lines\\\\\\\\.default|locator|matlines|matplot|matpoints|mosaicplot|mtext|pairs|pairs\\\\\\\\.default|panel\\\\\\\\.smooth|par|persp|pie|plot|plot\\\\\\\\.default|plot\\\\\\\\.design|plot\\\\\\\\.function|plot\\\\\\\\.new|plot\\\\\\\\.window|plot\\\\\\\\.xy|points|points\\\\\\\\.default|polygon|polypath|rasterImage|rect|rug|screen|segments|smoothScatter|spineplot|split\\\\\\\\.screen|stars|stem|strheight|stripchart|strwidth|sunflowerplot|symbols|text|text\\\\\\\\.default|title|xinch|xspline|xyinch|yinch)\\\\\\\\s*(\\\\\\\\()\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.r\\\"}},\\\"match\\\":\\\"\\\\\\\\b(adjustcolor|as\\\\\\\\.graphicsAnnot|as\\\\\\\\.raster|axisTicks|bitmap|blues9|bmp|boxplot\\\\\\\\.stats|cairo_pdf|cairo_ps|cairoSymbolFont|check\\\\\\\\.options|chull|CIDFont|cm|cm\\\\\\\\.colors|col2rgb|colorConverter|colorRamp|colorRampPalette|colors|colorspaces|colours|contourLines|convertColor|densCols|dev2bitmap|devAskNewPage|dev\\\\\\\\.capabilities|dev\\\\\\\\.capture|dev\\\\\\\\.control|dev\\\\\\\\.copy|dev\\\\\\\\.copy2eps|dev\\\\\\\\.copy2pdf|dev\\\\\\\\.cur|dev\\\\\\\\.flush|dev\\\\\\\\.hold|deviceIsInteractive|dev\\\\\\\\.interactive|dev\\\\\\\\.list|dev\\\\\\\\.new|dev\\\\\\\\.next|dev\\\\\\\\.off|dev\\\\\\\\.prev|dev\\\\\\\\.print|dev\\\\\\\\.set|dev\\\\\\\\.size|embedFonts|extendrange|getGraphicsEvent|getGraphicsEventEnv|graphics\\\\\\\\.off|gray|gray\\\\\\\\.colors|grey|grey\\\\\\\\.colors|grSoftVersion|hcl|hcl\\\\\\\\.colors|hcl\\\\\\\\.pals|heat\\\\\\\\.colors|Hershey|hsv|is\\\\\\\\.raster|jpeg|make\\\\\\\\.rgb|n2mfrow|nclass\\\\\\\\.FD|nclass\\\\\\\\.scott|nclass\\\\\\\\.Sturges|palette|palette\\\\\\\\.colors|palette\\\\\\\\.pals|pdf|pdfFonts|pdf\\\\\\\\.options|pictex|png|postscript|postscriptFonts|ps\\\\\\\\.options|quartz|quartzFont|quartzFonts|quartz\\\\\\\\.options|quartz\\\\\\\\.save|rainbow|recordGraphics|recordPlot|replayPlot|rgb|rgb2hsv|savePlot|setEPS|setGraphicsEventEnv|setGraphicsEventHandlers|setPS|svg|terrain\\\\\\\\.colors|tiff|topo\\\\\\\\.colors|trans3d|Type1Font|x11|X11|X11Font|X11Fonts|X11\\\\\\\\.options|xfig|xy\\\\\\\\.coords|xyTable|xyz\\\\\\\\.coords)\\\\\\\\s*(\\\\\\\\()\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.r\\\"}},\\\"match\\\":\\\"\\\\\\\\b(addNextMethod|allNames|Arith|as|asMethodDefinition|assignClassDef|assignMethodsMetaData|balanceMethodsList|cacheGenericsMetaData|cacheMetaData|cacheMethod|callGeneric|callNextMethod|canCoerce|cbind2|checkAtAssignment|checkSlotAssignment|classesToAM|classLabel|classMetaName|className|coerce|Compare|completeClassDefinition|completeExtends|completeSubclasses|Complex|conformMethod|defaultDumpName|defaultPrototype|doPrimitiveMethod|dumpMethod|dumpMethods|el|elNamed|empty\\\\\\\\.dump|emptyMethodsList|evalOnLoad|evalqOnLoad|evalSource|existsFunction|existsMethod|extends|externalRefMethod|finalDefaultMethod|findClass|findFunction|findMethod|findMethods|findMethodSignatures|findUnique|fixPre1\\\\\\\\.8|formalArgs|functionBody|generic\\\\\\\\.skeleton|getAllSuperClasses|getClass|getClassDef|getClasses|getDataPart|getFunction|getGeneric|getGenerics|getGroup|getGroupMembers|getLoadActions|getMethod|getMethods|getMethodsForDispatch|getMethodsMetaData|getPackageName|getRefClass|getSlots|getValidity|hasArg|hasLoadAction|hasMethod|hasMethods|implicitGeneric|inheritedSlotNames|initFieldArgs|initialize|initRefFields|insertClassMethods|insertMethod|insertSource|is|isClass|isClassDef|isClassUnion|isGeneric|isGrammarSymbol|isGroup|isRematched|isSealedClass|isSealedMethod|isVirtualClass|isXS3Class|kronecker|languageEl|linearizeMlist|listFromMethods|listFromMlist|loadMethod|Logic|makeClassRepresentation|makeExtends|makeGeneric|makeMethodsList|makePrototypeFromClassDef|makeStandardGeneric|matchSignature|Math|Math2|mergeMethods|metaNameUndo|MethodAddCoerce|methodSignatureMatrix|method\\\\\\\\.skeleton|MethodsList|MethodsListSelect|methodsPackageMetaName|missingArg|multipleClasses|new|newBasic|newClassRepresentation|newEmptyObject|Ops|packageSlot|possibleExtends|prohibitGeneric|promptClass|promptMethods|prototype|Quote|rbind2|reconcilePropertiesAndPrototype|registerImplicitGenerics|rematchDefinition|removeClass|removeGeneric|removeMethod|removeMethods|representation|requireMethods|resetClass|resetGeneric|S3Class|S3Part|sealClass|selectMethod|selectSuperClasses|setAs|setClass|setClassUnion|setDataPart|setGeneric|setGenericImplicit|setGroupGeneric|setIs|setLoadAction|setLoadActions|setMethod|setOldClass|setPackageName|setPrimitiveMethods|setRefClass|setReplaceMethod|setValidity|show|showClass|showDefault|showExtends|showMethods|showMlist|signature|SignatureMethod|sigToEnv|slot|slotNames|slotsFromS3|substituteDirect|substituteFunctionArgs|Summary|superClassDepth|testInheritedMethods|testVirtual|tryNew|unRematchDefinition|validObject|validSlotNames)\\\\\\\\s*(\\\\\\\\()\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.r\\\"}},\\\"match\\\":\\\"\\\\\\\\b(acf|acf2AR|add1|addmargins|add\\\\\\\\.scope|aggregate|aggregate\\\\\\\\.data\\\\\\\\.frame|aggregate\\\\\\\\.ts|AIC|alias|anova|ansari\\\\\\\\.test|aov|approx|approxfun|ar|ar\\\\\\\\.burg|arima|arima0|arima0\\\\\\\\.diag|arima\\\\\\\\.sim|ARMAacf|ARMAtoMA|ar\\\\\\\\.mle|ar\\\\\\\\.ols|ar\\\\\\\\.yw|as\\\\\\\\.dendrogram|as\\\\\\\\.dist|as\\\\\\\\.formula|as\\\\\\\\.hclust|asOneSidedFormula|as\\\\\\\\.stepfun|as\\\\\\\\.ts|ave|bandwidth\\\\\\\\.kernel|bartlett\\\\\\\\.test|BIC|binomial|binom\\\\\\\\.test|biplot|Box\\\\\\\\.test|bw\\\\\\\\.bcv|bw\\\\\\\\.nrd|bw\\\\\\\\.nrd0|bw\\\\\\\\.SJ|bw\\\\\\\\.ucv|C|cancor|case\\\\\\\\.names|ccf|chisq\\\\\\\\.test|cmdscale|coef|coefficients|complete\\\\\\\\.cases|confint|confint\\\\\\\\.default|confint\\\\\\\\.lm|constrOptim|contrasts|contr\\\\\\\\.helmert|contr\\\\\\\\.poly|contr\\\\\\\\.SAS|contr\\\\\\\\.sum|contr\\\\\\\\.treatment|convolve|cooks\\\\\\\\.distance|cophenetic|cor|cor\\\\\\\\.test|cov|cov2cor|covratio|cov\\\\\\\\.wt|cpgram|cutree|cycle|D|dbeta|dbinom|dcauchy|dchisq|decompose|delete\\\\\\\\.response|deltat|dendrapply|density|density\\\\\\\\.default|deriv|deriv3|deviance|dexp|df|DF2formula|dfbeta|dfbetas|dffits|df\\\\\\\\.kernel|df\\\\\\\\.residual|dgamma|dgeom|dhyper|diffinv|dist|dlnorm|dlogis|dmultinom|dnbinom|dnorm|dpois|drop1|drop\\\\\\\\.scope|drop\\\\\\\\.terms|dsignrank|dt|dummy\\\\\\\\.coef|dummy\\\\\\\\.coef\\\\\\\\.lm|dunif|dweibull|dwilcox|ecdf|eff\\\\\\\\.aovlist|effects|embed|end|estVar|expand\\\\\\\\.model\\\\\\\\.frame|extractAIC|factanal|factor\\\\\\\\.scope|family|fft|filter|fisher\\\\\\\\.test|fitted|fitted\\\\\\\\.values|fivenum|fligner\\\\\\\\.test|formula|frequency|friedman\\\\\\\\.test|ftable|Gamma|gaussian|get_all_vars|getCall|getInitial|glm|glm\\\\\\\\.control|glm\\\\\\\\.fit|hasTsp|hat|hatvalues|hclust|heatmap|HoltWinters|influence|influence\\\\\\\\.measures|integrate|interaction\\\\\\\\.plot|inverse\\\\\\\\.gaussian|IQR|is\\\\\\\\.empty\\\\\\\\.model|is\\\\\\\\.leaf|is\\\\\\\\.mts|isoreg|is\\\\\\\\.stepfun|is\\\\\\\\.ts|is\\\\\\\\.tskernel|KalmanForecast|KalmanLike|KalmanRun|KalmanSmooth|kernapply|kernel|kmeans|knots|kruskal\\\\\\\\.test|ksmooth|ks\\\\\\\\.test|lag|lag\\\\\\\\.plot|line|lm|lm\\\\\\\\.fit|lm\\\\\\\\.influence|lm\\\\\\\\.wfit|loadings|loess|loess\\\\\\\\.control|loess\\\\\\\\.smooth|logLik|loglin|lowess|ls\\\\\\\\.diag|lsfit|ls\\\\\\\\.print|mad|mahalanobis|makeARIMA|make\\\\\\\\.link|makepredictcall|manova|mantelhaen\\\\\\\\.test|mauchly\\\\\\\\.test|mcnemar\\\\\\\\.test|median|median\\\\\\\\.default|medpolish|model\\\\\\\\.extract|model\\\\\\\\.frame|model\\\\\\\\.frame\\\\\\\\.default|model\\\\\\\\.matrix|model\\\\\\\\.matrix\\\\\\\\.default|model\\\\\\\\.matrix\\\\\\\\.lm|model\\\\\\\\.offset|model\\\\\\\\.response|model\\\\\\\\.tables|model\\\\\\\\.weights|monthplot|mood\\\\\\\\.test|mvfft|na\\\\\\\\.action|na\\\\\\\\.contiguous|na\\\\\\\\.exclude|na\\\\\\\\.fail|na\\\\\\\\.omit|na\\\\\\\\.pass|napredict|naprint|naresid|nextn|nlm|nlminb|nls|nls\\\\\\\\.control|NLSstAsymptotic|NLSstClosestX|NLSstLfAsymptote|NLSstRtAsymptote|nobs|numericDeriv|offset|oneway\\\\\\\\.test|optim|optimHess|optimise|optimize|order\\\\\\\\.dendrogram|pacf|p\\\\\\\\.adjust|p\\\\\\\\.adjust\\\\\\\\.methods|Pair|pairwise\\\\\\\\.prop\\\\\\\\.test|pairwise\\\\\\\\.table|pairwise\\\\\\\\.t\\\\\\\\.test|pairwise\\\\\\\\.wilcox\\\\\\\\.test|pbeta|pbinom|pbirthday|pcauchy|pchisq|pexp|pf|pgamma|pgeom|phyper|plclust|plnorm|plogis|plot\\\\\\\\.ecdf|plot\\\\\\\\.spec\\\\\\\\.coherency|plot\\\\\\\\.spec\\\\\\\\.phase|plot\\\\\\\\.stepfun|plot\\\\\\\\.ts|pnbinom|pnorm|poisson|poisson\\\\\\\\.test|poly|polym|power|power\\\\\\\\.anova\\\\\\\\.test|power\\\\\\\\.prop\\\\\\\\.test|power\\\\\\\\.t\\\\\\\\.test|ppoints|ppois|ppr|PP\\\\\\\\.test|prcomp|predict|predict\\\\\\\\.glm|predict\\\\\\\\.lm|preplot|princomp|printCoefmat|profile|proj|promax|prop\\\\\\\\.test|prop\\\\\\\\.trend\\\\\\\\.test|psignrank|pt|ptukey|punif|pweibull|pwilcox|qbeta|qbinom|qbirthday|qcauchy|qchisq|qexp|qf|qgamma|qgeom|qhyper|qlnorm|qlogis|qnbinom|qnorm|qpois|qqline|qqnorm|qqplot|qsignrank|qt|qtukey|quade\\\\\\\\.test|quantile|quasi|quasibinomial|quasipoisson|qunif|qweibull|qwilcox|r2dtable|rbeta|rbinom|rcauchy|rchisq|read\\\\\\\\.ftable|rect\\\\\\\\.hclust|reformulate|relevel|reorder|replications|reshape|resid|residuals|residuals\\\\\\\\.glm|residuals\\\\\\\\.lm|rexp|rf|rgamma|rgeom|rhyper|rlnorm|rlogis|rmultinom|rnbinom|rnorm|rpois|rsignrank|rstandard|rstudent|rt|runif|runmed|rweibull|rwilcox|rWishart|scatter\\\\\\\\.smooth|screeplot|sd|se\\\\\\\\.contrast|selfStart|setNames|shapiro\\\\\\\\.test|sigma|simulate|smooth|smoothEnds|smooth\\\\\\\\.spline|sortedXyData|spec\\\\\\\\.ar|spec\\\\\\\\.pgram|spec\\\\\\\\.taper|spectrum|spline|splinefun|splinefunH|SSasymp|SSasympOff|SSasympOrig|SSbiexp|SSD|SSfol|SSfpl|SSgompertz|SSlogis|SSmicmen|SSweibull|start|stat\\\\\\\\.anova|step|stepfun|stl|StructTS|summary\\\\\\\\.aov|summary\\\\\\\\.glm|summary\\\\\\\\.lm|summary\\\\\\\\.manova|summary\\\\\\\\.stepfun|supsmu|symnum|termplot|terms|terms\\\\\\\\.formula|time|toeplitz|ts|tsdiag|ts\\\\\\\\.intersect|tsp|ts\\\\\\\\.plot|tsSmooth|ts\\\\\\\\.union|t\\\\\\\\.test|TukeyHSD|uniroot|update|update\\\\\\\\.default|update\\\\\\\\.formula|var|variable\\\\\\\\.names|varimax|var\\\\\\\\.test|vcov|weighted\\\\\\\\.mean|weighted\\\\\\\\.residuals|weights|wilcox\\\\\\\\.test|window|write\\\\\\\\.ftable|xtabs)\\\\\\\\s*(\\\\\\\\()\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.r\\\"}},\\\"match\\\":\\\"\\\\\\\\b(adist|alarm|apropos|aregexec|argsAnywhere|asDateBuilt|askYesNo|aspell|aspell_package_C_files|aspell_package_Rd_files|aspell_package_R_files|aspell_package_vignettes|aspell_write_personal_dictionary_file|as\\\\\\\\.person|as\\\\\\\\.personList|as\\\\\\\\.relistable|as\\\\\\\\.roman|assignInMyNamespace|assignInNamespace|available\\\\\\\\.packages|bibentry|browseEnv|browseURL|browseVignettes|bug\\\\\\\\.report|capture\\\\\\\\.output|changedFiles|charClass|checkCRAN|chooseBioCmirror|chooseCRANmirror|citation|cite|citeNatbib|citEntry|citFooter|citHeader|close\\\\\\\\.socket|combn|compareVersion|contrib\\\\\\\\.url|count\\\\\\\\.fields|create\\\\\\\\.post|data|dataentry|data\\\\\\\\.entry|de|debugcall|debugger|demo|de\\\\\\\\.ncols|de\\\\\\\\.restore|de\\\\\\\\.setup|download\\\\\\\\.file|download\\\\\\\\.packages|dump\\\\\\\\.frames|edit|emacs|example|file\\\\\\\\.edit|fileSnapshot|file_test|find|findLineNum|fix|fixInNamespace|flush\\\\\\\\.console|formatOL|formatUL|getAnywhere|getCRANmirrors|getFromNamespace|getParseData|getParseText|getS3method|getSrcDirectory|getSrcFilename|getSrcLocation|getSrcref|getTxtProgressBar|glob2rx|globalVariables|hasName|head|head\\\\\\\\.matrix|help|help\\\\\\\\.request|help\\\\\\\\.search|help\\\\\\\\.start|history|hsearch_db|hsearch_db_concepts|hsearch_db_keywords|installed\\\\\\\\.packages|install\\\\\\\\.packages|is\\\\\\\\.relistable|isS3method|isS3stdGeneric|limitedLabels|loadhistory|localeToCharset|lsf\\\\\\\\.str|ls\\\\\\\\.str|maintainer|make\\\\\\\\.packages\\\\\\\\.html|makeRweaveLatexCodeRunner|make\\\\\\\\.socket|memory\\\\\\\\.limit|memory\\\\\\\\.size|menu|methods|mirror2html|modifyList|new\\\\\\\\.packages|news|nsl|object\\\\\\\\.size|old\\\\\\\\.packages|osVersion|packageDate|packageDescription|packageName|package\\\\\\\\.skeleton|packageStatus|packageVersion|page|person|personList|pico|process\\\\\\\\.events|prompt|promptData|promptImport|promptPackage|rc\\\\\\\\.getOption|rc\\\\\\\\.options|rc\\\\\\\\.settings|rc\\\\\\\\.status|readCitationFile|read\\\\\\\\.csv|read\\\\\\\\.csv2|read\\\\\\\\.delim|read\\\\\\\\.delim2|read\\\\\\\\.DIF|read\\\\\\\\.fortran|read\\\\\\\\.fwf|read\\\\\\\\.socket|read\\\\\\\\.table|recover|relist|remove\\\\\\\\.packages|removeSource|Rprof|Rprofmem|RShowDoc|RSiteSearch|rtags|Rtangle|RtangleFinish|RtangleRuncode|RtangleSetup|RtangleWritedoc|RweaveChunkPrefix|RweaveEvalWithOpt|RweaveLatex|RweaveLatexFinish|RweaveLatexOptions|RweaveLatexSetup|RweaveLatexWritedoc|RweaveTryStop|savehistory|select\\\\\\\\.list|sessionInfo|setBreakpoint|setRepositories|setTxtProgressBar|stack|Stangle|str|strcapture|strOptions|summaryRprof|suppressForeignCheck|Sweave|SweaveHooks|SweaveSyntaxLatex|SweaveSyntaxNoweb|SweaveSyntConv|tail|tail\\\\\\\\.matrix|tar|timestamp|toBibtex|toLatex|txtProgressBar|type\\\\\\\\.convert|undebugcall|unstack|untar|unzip|update\\\\\\\\.packages|upgrade|URLdecode|URLencode|url\\\\\\\\.show|vi|View|vignette|warnErrList|write\\\\\\\\.csv|write\\\\\\\\.csv2|write\\\\\\\\.socket|write\\\\\\\\.table|xedit|xemacs|zip)\\\\\\\\s*(\\\\\\\\()\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.pragma.r\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.pragma.name.r\\\"}},\\\"match\\\":\\\"^(#pragma[ \\\\\\\\t]+mark)[ \\\\\\\\t](.*)\\\",\\\"name\\\":\\\"comment.line.pragma-mark.r\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.r\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.r\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.r\\\"}]}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(pi|letters|LETTERS|month\\\\\\\\.abb|month\\\\\\\\.name)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.misc.r\\\"},{\\\"match\\\":\\\"\\\\\\\\b(TRUE|FALSE|NULL|NA|NA_integer_|NA_real_|NA_complex_|NA_character_|Inf|NaN)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.r\\\"},{\\\"match\\\":\\\"\\\\\\\\b0(x|X)[0-9a-fA-F]+i\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.imaginary.hexadecimal.r\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9]+\\\\\\\\.?[0-9]*(?:(e|E)(\\\\\\\\+|-)?[0-9]+)?i\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.imaginary.decimal.r\\\"},{\\\"match\\\":\\\"\\\\\\\\.[0-9]+(?:(e|E)(\\\\\\\\+|-)?[0-9]+)?i\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.imaginary.decimal.r\\\"},{\\\"match\\\":\\\"\\\\\\\\b0(x|X)[0-9a-fA-F]+L\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.r\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:[0-9]+\\\\\\\\.?[0-9]*)(?:(e|E)(\\\\\\\\+|-)?[0-9]+)?L\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.r\\\"},{\\\"match\\\":\\\"\\\\\\\\b0(x|X)[0-9a-fA-F]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.hexadecimal.r\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9]+\\\\\\\\.?[0-9]*(?:(e|E)(\\\\\\\\+|-)?[0-9]+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.decimal.r\\\"},{\\\"match\\\":\\\"\\\\\\\\.[0-9]+(?:(e|E)(\\\\\\\\+|-)?[0-9]+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.decimal.r\\\"}]},\\\"function-calls\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b|(?=\\\\\\\\.))((?:[a-zA-Z._][\\\\\\\\w.]*|`[^`]+`))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.function.r\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.r\\\"}},\\\"contentName\\\":\\\"meta.function-call.arguments.r\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.r\\\"}},\\\"name\\\":\\\"meta.function-call.r\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},\\\"function-declarations\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.r\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.r\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.r\\\"}},\\\"match\\\":\\\"((?:`[^`\\\\\\\\\\\\\\\\]*(?:\\\\\\\\\\\\\\\\.[^`\\\\\\\\\\\\\\\\]*)*`)|(?:[[:alpha:].][[:alnum:]._]*))\\\\\\\\s*(<?<-|=(?!=))\\\\\\\\s*(function|\\\\\\\\\\\\\\\\)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"meta.function.r\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#lambda-functions\\\"}]}]},\\\"function-parameters\\\":{\\\"patterns\\\":[{\\\"contentName\\\":\\\"meta.function-call.parameters.r\\\",\\\"name\\\":\\\"meta.function-call.r\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z._][\\\\\\\\w.]*|`[^`]+`)(?=\\\\\\\\s[^=])\\\",\\\"name\\\":\\\"variable.other.r\\\"},{\\\"begin\\\":\\\"(?==)\\\",\\\"end\\\":\\\"(?=[,)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameters.r\\\"},{\\\"include\\\":\\\"source.r\\\"}]},\\\"general-variables\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.r\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.r\\\"}},\\\"match\\\":\\\"([[:alpha:].][[:alnum:]._]*)\\\\\\\\s*(=)(?=[^=])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.r\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.r\\\"}},\\\"match\\\":\\\"(`[^`]+`)\\\\\\\\s*(=)(?=[^=])\\\"},{\\\"match\\\":\\\"\\\\\\\\b([\\\\\\\\d_][[:alnum:]._]+)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.variable.other.r\\\"},{\\\"match\\\":\\\"\\\\\\\\b([[:alnum:]_]+)(?=::)\\\",\\\"name\\\":\\\"entity.namespace.r\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(break|next|repeat|else|in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.r\\\"},{\\\"match\\\":\\\"\\\\\\\\b(ifelse|if|for|return|switch|while|invisible)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.control.r\\\"},{\\\"match\\\":\\\"(\\\\\\\\-|\\\\\\\\+|\\\\\\\\*|\\\\\\\\/|%\\\\\\\\/%|%%|%\\\\\\\\*%|%o%|%x%|\\\\\\\\^)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.r\\\"},{\\\"match\\\":\\\"(:=|<-|<<-|->|->>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.r\\\"},{\\\"match\\\":\\\"(==|<=|>=|!=|<>|<|>|%in%)\\\",\\\"name\\\":\\\"keyword.operator.comparison.r\\\"},{\\\"match\\\":\\\"(!|&{1,2}|[|]{1,2})\\\",\\\"name\\\":\\\"keyword.operator.logical.r\\\"},{\\\"match\\\":\\\"(\\\\\\\\|>)\\\",\\\"name\\\":\\\"keyword.operator.pipe.r\\\"},{\\\"match\\\":\\\"(%between%|%chin%|%like%|%\\\\\\\\+%|%\\\\\\\\+replace%|%:%|%do%|%dopar%|%>%|%<>%|%T>%|%\\\\\\\\$%)\\\",\\\"name\\\":\\\"keyword.operator.other.r\\\"},{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\.\\\\\\\\.|\\\\\\\\$|:|\\\\\\\\~|@)\\\",\\\"name\\\":\\\"keyword.other.r\\\"}]},\\\"lambda-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(function)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.r\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.r\\\"}},\\\"contentName\\\":\\\"meta.function.parameters.r\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.r\\\"}},\\\"name\\\":\\\"meta.function.r\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"(?:[a-zA-Z._][\\\\\\\\w.]*|`[^`]+`)\\\",\\\"name\\\":\\\"variable.other.r\\\"},{\\\"begin\\\":\\\"(?==)\\\",\\\"end\\\":\\\"(?=[,)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameters.r\\\"}]}]},\\\"roxygen\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#')\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.r\\\"}},\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.roxygen.r\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.r\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.r\\\"}},\\\"match\\\":\\\"(@param)\\\\\\\\s*((?:[a-zA-Z._][\\\\\\\\w.]*|`[^`]+`))\\\"},{\\\"match\\\":\\\"@[a-zA-Z0-9]+\\\",\\\"name\\\":\\\"keyword.other.r\\\"}]}]},\\\"storage-type\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(character|complex|double|expression|integer|list|logical|numeric|single|raw)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"storage.type.r\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"[rR]\\\\\\\"(-*)\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.begin.r\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\1\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.end.r\\\"}},\\\"name\\\":\\\"string.quoted.double.raw.r\\\"},{\\\"begin\\\":\\\"[rR]'(-*)\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.begin.r\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\1'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.end.r\\\"}},\\\"name\\\":\\\"string.quoted.single.raw.r\\\"},{\\\"begin\\\":\\\"[rR]\\\\\\\"(-*)\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.begin.r\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\\\\\\1\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.end.r\\\"}},\\\"name\\\":\\\"string.quoted.double.raw.r\\\"},{\\\"begin\\\":\\\"[rR]'(-*)\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.begin.r\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\\\\\\1'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.end.r\\\"}},\\\"name\\\":\\\"string.quoted.single.raw.r\\\"},{\\\"begin\\\":\\\"[rR]\\\\\\\"(-*)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.begin.r\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\\\\\\1\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.end.r\\\"}},\\\"name\\\":\\\"string.quoted.double.raw.r\\\"},{\\\"begin\\\":\\\"[rR]'(-*)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.begin.r\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\\\\\\1'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.end.r\\\"}},\\\"name\\\":\\\"string.quoted.single.raw.r\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.r\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.r\\\"}},\\\"name\\\":\\\"string.quoted.double.r\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.r\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.r\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.r\\\"}},\\\"name\\\":\\\"string.quoted.single.r\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.r\\\"}]}]}},\\\"scopeName\\\":\\\"source.r\\\"}\"))\n\nexport default [\nlang\n]\n", "import cpp from './cpp.mjs'\nimport python from './python.mjs'\nimport javascript from './javascript.mjs'\nimport r from './r.mjs'\nimport sql from './sql.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Julia\\\",\\\"name\\\":\\\"julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#bracket\\\"},{\\\"include\\\":\\\"#function_decl\\\"},{\\\"include\\\":\\\"#function_call\\\"},{\\\"include\\\":\\\"#for_block\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type_decl\\\"},{\\\"include\\\":\\\"#symbol\\\"},{\\\"include\\\":\\\"#punctuation\\\"}],\\\"repository\\\":{\\\"array\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.bracket.julia\\\"}},\\\"end\\\":\\\"(\\\\\\\\])((?:\\\\\\\\.)?'*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.bracket.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.transpose.julia\\\"}},\\\"name\\\":\\\"meta.array.julia\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bbegin\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\bend\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.julia\\\"},{\\\"include\\\":\\\"#self_no_for_block\\\"}]}]},\\\"bracket\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.bracket.julia\\\"}},\\\"end\\\":\\\"(\\\\\\\\})((?:\\\\\\\\.)?'*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.bracket.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.transpose.julia\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#self_no_for_block\\\"}]}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_block\\\"},{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.julia\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_tags\\\"}]}]},\\\"comment_block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.julia\\\"}},\\\"end\\\":\\\"=#\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.julia\\\"}},\\\"name\\\":\\\"comment.block.number-sign-equals.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_tags\\\"},{\\\"include\\\":\\\"#comment_block\\\"}]}]},\\\"comment_tags\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bTODO\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.comment-annotation.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\bFIXME\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.comment-annotation.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\bCHANGED\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.comment-annotation.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\bXXX\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.comment-annotation.julia\\\"}]},\\\"for_block\\\":{\\\"comment\\\":\\\"for blocks need to be special-cased to support tokenizing 'outer' properly\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(for)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.julia\\\"}},\\\"end\\\":\\\"(?<!,|\\\\\\\\s)(\\\\\\\\s*\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bouter\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.julia\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"function_call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?\\\\\\\\.?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.julia\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.bracket.julia\\\"}},\\\"end\\\":\\\"\\\\\\\\)(('|(\\\\\\\\.'))*\\\\\\\\.?')?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.bracket.julia\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.transposed-func.julia\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#self_no_for_block\\\"}]}]},\\\"function_decl\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.julia\\\"}},\\\"comment\\\":\\\"first group is function name\\\\nSecond group is type parameters (e.g. {T<:Number, S})\\\\nThen open parens\\\\nThen a lookahead ensures that we are followed by:\\\\n - anything (function arguments)\\\\n - 0 or more spaces\\\\n - Finally an equal sign\\\\nNegative lookahead ensures we don't have another equal sign (not `==`)\\\",\\\"match\\\":\\\"((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?(?=\\\\\\\\([^#]*\\\\\\\\)(::[^\\\\\\\\s]+)?(\\\\\\\\s*\\\\\\\\bwhere\\\\\\\\b\\\\\\\\s+.+?)?\\\\\\\\s*?=(?![=>]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.dots.julia\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.julia\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type.julia\\\"}},\\\"comment\\\":\\\"similar regex to previous, but with keyword not 1-line syntax\\\",\\\"match\\\":\\\"\\\\\\\\b(function|macro)(?:\\\\\\\\s+(?:(?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*(\\\\\\\\.))?((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?|\\\\\\\\s*)(?=\\\\\\\\()\\\"}]},\\\"keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?<![:_\\\\\\\\.])(?:function|mutable\\\\\\\\s+struct|struct|macro|quote|abstract\\\\\\\\s+type|primitive\\\\\\\\s+type|module|baremodule|where)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<![:_])(?:if|else|elseif|for|while|begin|let|do|try|catch|finally|return|break|continue)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<![:_])end\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.end.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<![:_])(?:global|local|const)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.storage.modifier.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<![:_])(?:export)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.export.julia\\\"},{\\\"match\\\":\\\"^(?:public)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.public.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<![:_])(?:import)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<![:_])(?:using)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.using.julia\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\S\\\\\\\\s+)\\\\\\\\b(as)\\\\\\\\b(?=\\\\\\\\s+\\\\\\\\S)\\\",\\\"name\\\":\\\"keyword.control.as.julia\\\"},{\\\"match\\\":\\\"(@(\\\\\\\\.|(?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*))\\\",\\\"name\\\":\\\"support.function.macro.julia\\\"}]},\\\"number\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.conjugate-number.julia\\\"}},\\\"match\\\":\\\"((?<!(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF]))(?:(?:\\\\\\\\b0(?:x|X)[0-9a-fA-F](?:_?[0-9a-fA-F])*)|(?:\\\\\\\\b0o[0-7](?:_?[0-7])*)|(?:\\\\\\\\b0b[0-1](?:_?[0-1])*)|(?:(?:\\\\\\\\b[0-9](?:_?[0-9])*\\\\\\\\.?(?!\\\\\\\\.)(?:[_0-9]*))|(?:\\\\\\\\b\\\\\\\\.[0-9](?:_?[0-9])*))(?:[efE][+-]?[0-9](?:_?[0-9])*)?(?:im\\\\\\\\b|Inf(?:16|32|64)?\\\\\\\\b|NaN(?:16|32|64)?\\\\\\\\b|\u03C0\\\\\\\\b|pi\\\\\\\\b|\u212F\\\\\\\\b)?|\\\\\\\\b[0-9]+|\\\\\\\\bInf(?:16|32|64)?\\\\\\\\b|\\\\\\\\bNaN(?:16|32|64)?\\\\\\\\b|\\\\\\\\b\u03C0\\\\\\\\b|\\\\\\\\bpi\\\\\\\\b|\\\\\\\\b\u212F\\\\\\\\b))('*)\\\"},{\\\"match\\\":\\\"\\\\\\\\bARGS\\\\\\\\b|\\\\\\\\bC_NULL\\\\\\\\b|\\\\\\\\bDEPOT_PATH\\\\\\\\b|\\\\\\\\bENDIAN_BOM\\\\\\\\b|\\\\\\\\bENV\\\\\\\\b|\\\\\\\\bLOAD_PATH\\\\\\\\b|\\\\\\\\bPROGRAM_FILE\\\\\\\\b|\\\\\\\\bstdin\\\\\\\\b|\\\\\\\\bstdout\\\\\\\\b|\\\\\\\\bstderr\\\\\\\\b|\\\\\\\\bVERSION\\\\\\\\b|\\\\\\\\bdevnull\\\\\\\\b\\\",\\\"name\\\":\\\"constant.global.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\btrue\\\\\\\\b|\\\\\\\\bfalse\\\\\\\\b|\\\\\\\\bnothing\\\\\\\\b|\\\\\\\\bmissing\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.julia\\\"}]},\\\"operator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.?(?:<-->|->|-->|<--|\u2190|\u2192|\u2194|\u219A|\u219B|\u219E|\u21A0|\u21A2|\u21A3|\u21A6|\u21A4|\u21AE|\u21CE|\u21CD|\u21CF|\u21D0|\u21D2|\u21D4|\u21F4|\u21F6|\u21F7|\u21F8|\u21F9|\u21FA|\u21FB|\u21FC|\u21FD|\u21FE|\u21FF|\u27F5|\u27F6|\u27F7|\u27F9|\u27FA|\u27FB|\u27FC|\u27FD|\u27FE|\u27FF|\u2900|\u2901|\u2902|\u2903|\u2904|\u2905|\u2906|\u2907|\u290C|\u290D|\u290E|\u290F|\u2910|\u2911|\u2914|\u2915|\u2916|\u2917|\u2918|\u291D|\u291E|\u291F|\u2920|\u2944|\u2945|\u2946|\u2947|\u2948|\u294A|\u294B|\u294E|\u2950|\u2952|\u2953|\u2956|\u2957|\u295A|\u295B|\u295E|\u295F|\u2962|\u2964|\u2966|\u2967|\u2968|\u2969|\u296A|\u296B|\u296C|\u296D|\u2970|\u29F4|\u2B31|\u2B30|\u2B32|\u2B33|\u2B34|\u2B35|\u2B36|\u2B37|\u2B38|\u2B39|\u2B3A|\u2B3B|\u2B3C|\u2B3D|\u2B3E|\u2B3F|\u2B40|\u2B41|\u2B42|\u2B43|\u2977|\u2B44|\u297A|\u2B47|\u2B48|\u2B49|\u2B4A|\u2B4B|\u2B4C|\uFFE9|\uFFEB|\u21DC|\u21DD|\u219C|\u219D|\u21A9|\u21AA|\u21AB|\u21AC|\u21BC|\u21BD|\u21C0|\u21C1|\u21C4|\u21C6|\u21C7|\u21C9|\u21CB|\u21CC|\u21DA|\u21DB|\u21E0|\u21E2|\u21B7|\u21B6|\u21BA|\u21BB|=>)\\\",\\\"name\\\":\\\"keyword.operator.arrow.julia\\\"},{\\\"match\\\":\\\"(?::=|\\\\\\\\+=|-=|\\\\\\\\*=|//=|/=|\\\\\\\\.//=|\\\\\\\\./=|\\\\\\\\.\\\\\\\\*=|\\\\\\\\\\\\\\\\=|\\\\\\\\.\\\\\\\\\\\\\\\\=|\\\\\\\\^=|\\\\\\\\.\\\\\\\\^=|%=|\\\\\\\\.%=|\u00F7=|\\\\\\\\.\u00F7=|\\\\\\\\|=|&=|\\\\\\\\.&=|\u22BB=|\\\\\\\\.\u22BB=|\\\\\\\\$=|<<=|>>=|>>>=|=(?!=))\\\",\\\"name\\\":\\\"keyword.operator.update.julia\\\"},{\\\"match\\\":\\\"(?:<<|>>>|>>|\\\\\\\\.>>>|\\\\\\\\.>>|\\\\\\\\.<<)\\\",\\\"name\\\":\\\"keyword.operator.shift.julia\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.relation.types.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.julia\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.transpose.julia\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\s*(::|>:|<:)\\\\\\\\s*((?:(?:Union)?\\\\\\\\([^)]*\\\\\\\\)|[[:alpha:]_$\u2207][[:word:]\u207A-\u209C!\u2032\\\\\\\\.]*(?:(?:{(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})|(?:\\\\\\\".+?(?<!\\\\\\\\\\\\\\\\)\\\\\\\"))?)))(?:\\\\\\\\.\\\\\\\\.\\\\\\\\.)?((?:\\\\\\\\.)?'*)\\\"},{\\\"match\\\":\\\"(\\\\\\\\.?((?<!<)<=|(?<!>)>=|>|<|\u2265|\u2264|===|==|\u2261|!=|\u2260|!==|\u2262|\u2208|\u2209|\u220B|\u220C|\u2286|\u2288|\u2282|\u2284|\u228A|\u221D|\u220A|\u220D|\u2225|\u2226|\u2237|\u223A|\u223B|\u223D|\u223E|\u2241|\u2243|\u2242|\u2244|\u2245|\u2246|\u2247|\u2248|\u2249|\u224A|\u224B|\u224C|\u224D|\u224E|\u2250|\u2251|\u2252|\u2253|\u2256|\u2257|\u2258|\u2259|\u225A|\u225B|\u225C|\u225D|\u225E|\u225F|\u2263|\u2266|\u2267|\u2268|\u2269|\u226A|\u226B|\u226C|\u226D|\u226E|\u226F|\u2270|\u2271|\u2272|\u2273|\u2274|\u2275|\u2276|\u2277|\u2278|\u2279|\u227A|\u227B|\u227C|\u227D|\u227E|\u227F|\u2280|\u2281|\u2283|\u2285|\u2287|\u2289|\u228B|\u228F|\u2290|\u2291|\u2292|\u229C|\u22A9|\u22AC|\u22AE|\u22B0|\u22B1|\u22B2|\u22B3|\u22B4|\u22B5|\u22B6|\u22B7|\u22CD|\u22D0|\u22D1|\u22D5|\u22D6|\u22D7|\u22D8|\u22D9|\u22DA|\u22DB|\u22DC|\u22DD|\u22DE|\u22DF|\u22E0|\u22E1|\u22E2|\u22E3|\u22E4|\u22E5|\u22E6|\u22E7|\u22E8|\u22E9|\u22EA|\u22EB|\u22EC|\u22ED|\u22F2|\u22F3|\u22F4|\u22F5|\u22F6|\u22F7|\u22F8|\u22F9|\u22FA|\u22FB|\u22FC|\u22FD|\u22FE|\u22FF|\u27C8|\u27C9|\u27D2|\u29B7|\u29C0|\u29C1|\u29E1|\u29E3|\u29E4|\u29E5|\u2A66|\u2A67|\u2A6A|\u2A6B|\u2A6C|\u2A6D|\u2A6E|\u2A6F|\u2A70|\u2A71|\u2A72|\u2A73|\u2A75|\u2A76|\u2A77|\u2A78|\u2A79|\u2A7A|\u2A7B|\u2A7C|\u2A7D|\u2A7E|\u2A7F|\u2A80|\u2A81|\u2A82|\u2A83|\u2A84|\u2A85|\u2A86|\u2A87|\u2A88|\u2A89|\u2A8A|\u2A8B|\u2A8C|\u2A8D|\u2A8E|\u2A8F|\u2A90|\u2A91|\u2A92|\u2A93|\u2A94|\u2A95|\u2A96|\u2A97|\u2A98|\u2A99|\u2A9A|\u2A9B|\u2A9C|\u2A9D|\u2A9E|\u2A9F|\u2AA0|\u2AA1|\u2AA2|\u2AA3|\u2AA4|\u2AA5|\u2AA6|\u2AA7|\u2AA8|\u2AA9|\u2AAA|\u2AAB|\u2AAC|\u2AAD|\u2AAE|\u2AAF|\u2AB0|\u2AB1|\u2AB2|\u2AB3|\u2AB4|\u2AB5|\u2AB6|\u2AB7|\u2AB8|\u2AB9|\u2ABA|\u2ABB|\u2ABC|\u2ABD|\u2ABE|\u2ABF|\u2AC0|\u2AC1|\u2AC2|\u2AC3|\u2AC4|\u2AC5|\u2AC6|\u2AC7|\u2AC8|\u2AC9|\u2ACA|\u2ACB|\u2ACC|\u2ACD|\u2ACE|\u2ACF|\u2AD0|\u2AD1|\u2AD2|\u2AD3|\u2AD4|\u2AD5|\u2AD6|\u2AD7|\u2AD8|\u2AD9|\u2AF7|\u2AF8|\u2AF9|\u2AFA|\u22A2|\u22A3|\u27C2|\u2AEA|\u2AEB|<:|>:))\\\",\\\"name\\\":\\\"keyword.operator.relation.julia\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s)(?:\\\\\\\\?)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.operator.ternary.julia\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s)(?:\\\\\\\\:)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.operator.ternary.julia\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\|\\\\\\\\||&&|(?<!(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF]))!)\\\",\\\"name\\\":\\\"keyword.operator.boolean.julia\\\"},{\\\"match\\\":\\\"(?<=[[:word:]\u207A-\u209C!\u2032\u2207\\\\\\\\)\\\\\\\\]\\\\\\\\}])(?::)\\\",\\\"name\\\":\\\"keyword.operator.range.julia\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\|>)\\\",\\\"name\\\":\\\"keyword.operator.applies.julia\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\||\\\\\\\\.\\\\\\\\||\\\\\\\\&|\\\\\\\\.\\\\\\\\&|~|\u00AC|\\\\\\\\.~|\u22BB|\\\\\\\\.\u22BB)\\\",\\\"name\\\":\\\"keyword.operator.bitwise.julia\\\"},{\\\"match\\\":\\\"\\\\\\\\.?(?:\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-|\\\\\\\\+|\\\\\\\\-|\u2212|\u00A6|\\\\\\\\||\u2295|\u2296|\u229E|\u229F|\u222A|\u2228|\u2294|\u00B1|\u2213|\u2214|\u2238|\u224F|\u228E|\u22BB|\u22BD|\u22CE|\u22D3|\u27C7|\u29FA|\u29FB|\u2A08|\u2A22|\u2A23|\u2A24|\u2A25|\u2A26|\u2A27|\u2A28|\u2A29|\u2A2A|\u2A2B|\u2A2C|\u2A2D|\u2A2E|\u2A39|\u2A3A|\u2A41|\u2A42|\u2A45|\u2A4A|\u2A4C|\u2A4F|\u2A50|\u2A52|\u2A54|\u2A56|\u2A57|\u2A5B|\u2A5D|\u2A61|\u2A62|\u2A63|\\\\\\\\*|//?|\u233F|\u00F7|%|&|\u00B7|\u0387|\u22C5|\u2218|\u00D7|\\\\\\\\\\\\\\\\|\u2229|\u2227|\u2297|\u2298|\u2299|\u229A|\u229B|\u22A0|\u22A1|\u2293|\u2217|\u2219|\u2224|\u214B|\u2240|\u22BC|\u22C4|\u22C6|\u22C7|\u22C9|\u22CA|\u22CB|\u22CC|\u22CF|\u22D2|\u27D1|\u29B8|\u29BC|\u29BE|\u29BF|\u29F6|\u29F7|\u2A07|\u2A30|\u2A31|\u2A32|\u2A33|\u2A34|\u2A35|\u2A36|\u2A37|\u2A38|\u2A3B|\u2A3C|\u2A3D|\u2A40|\u2A43|\u2A44|\u2A4B|\u2A4D|\u2A4E|\u2A51|\u2A53|\u2A55|\u2A58|\u2A5A|\u2A5C|\u2A5E|\u2A5F|\u2A60|\u2ADB|\u228D|\u25B7|\u2A1D|\u27D5|\u27D6|\u27D7|\u2A1F|\\\\\\\\^|\u2191|\u2193|\u21F5|\u27F0|\u27F1|\u2908|\u2909|\u290A|\u290B|\u2912|\u2913|\u2949|\u294C|\u294D|\u294F|\u2951|\u2954|\u2955|\u2958|\u2959|\u295C|\u295D|\u2960|\u2961|\u2963|\u2965|\u296E|\u296F|\uFFEA|\uFFEC|\u221A|\u221B|\u221C|\u22C6|\u00B1|\u2213)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.julia\\\"},{\\\"match\\\":\\\"(?:\u2218)\\\",\\\"name\\\":\\\"keyword.operator.compose.julia\\\"},{\\\"match\\\":\\\"(?:::|(?<=\\\\\\\\s)isa(?=\\\\\\\\s))\\\",\\\"name\\\":\\\"keyword.operator.isa.julia\\\"},{\\\"match\\\":\\\"(?:(?<=\\\\\\\\s)in(?=\\\\\\\\s))\\\",\\\"name\\\":\\\"keyword.operator.relation.in.julia\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\.(?=(?:@|_|\\\\\\\\p{L}))|\\\\\\\\.\\\\\\\\.+|\u2026|\u205D|\u22EE|\u22F1|\u22F0|\u22EF)\\\",\\\"name\\\":\\\"keyword.operator.dots.julia\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\$)(?=.+)\\\",\\\"name\\\":\\\"keyword.operator.interpolation.julia\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.transposed-variable.julia\\\"}},\\\"match\\\":\\\"((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)(('|(\\\\\\\\.'))*\\\\\\\\.?')\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"bracket.end.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.transposed-matrix.julia\\\"}},\\\"match\\\":\\\"(\\\\\\\\])((?:'|(?:\\\\\\\\.'))*\\\\\\\\.?')\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"bracket.end.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.transposed-parens.julia\\\"}},\\\"match\\\":\\\"(\\\\\\\\))((?:'|(?:\\\\\\\\.'))*\\\\\\\\.?')\\\"}]},\\\"parentheses\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.bracket.julia\\\"}},\\\"end\\\":\\\"(\\\\\\\\))((?:\\\\\\\\.)?'*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.bracket.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.transpose.julia\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#self_no_for_block\\\"}]}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.julia\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.separator.semicolon.julia\\\"}]},\\\"self_no_for_block\\\":{\\\"comment\\\":\\\"Same as $self, but does not contain #for_block. 'outer' is not valid in some contexts (e.g. generators, comprehensions, indexing), so use this when matching those in begin/end patterns. Keep this up-to-date with $self!\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#bracket\\\"},{\\\"include\\\":\\\"#function_decl\\\"},{\\\"include\\\":\\\"#function_call\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type_decl\\\"},{\\\"include\\\":\\\"#symbol\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(@doc)\\\\\\\\s((?:doc)?\\\\\\\"\\\\\\\"\\\\\\\")|(doc\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"}},\\\"end\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\") ?(->)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arrow.julia\\\"}},\\\"name\\\":\\\"string.docstring.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_dollar_sign_interpolate\\\"}]},{\\\"begin\\\":\\\"(i?cxx)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"}},\\\"contentName\\\":\\\"meta.embedded.inline.cpp\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"}},\\\"name\\\":\\\"embed.cxx.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp#root_context\\\"},{\\\"include\\\":\\\"#string_dollar_sign_interpolate\\\"}]},{\\\"begin\\\":\\\"(py)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"}},\\\"contentName\\\":\\\"meta.embedded.inline.python\\\",\\\"end\\\":\\\"([\\\\\\\\s\\\\\\\\w]*)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"}},\\\"name\\\":\\\"embed.python.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"},{\\\"include\\\":\\\"#string_dollar_sign_interpolate\\\"}]},{\\\"begin\\\":\\\"(js)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"}},\\\"contentName\\\":\\\"meta.embedded.inline.javascript\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"}},\\\"name\\\":\\\"embed.js.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"},{\\\"include\\\":\\\"#string_dollar_sign_interpolate\\\"}]},{\\\"begin\\\":\\\"(R)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"}},\\\"contentName\\\":\\\"meta.embedded.inline.r\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"}},\\\"name\\\":\\\"embed.R.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"},{\\\"include\\\":\\\"#string_dollar_sign_interpolate\\\"}]},{\\\"begin\\\":\\\"(raw)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"}},\\\"name\\\":\\\"string.quoted.other.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"(raw)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"}},\\\"name\\\":\\\"string.quoted.other.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"(sql)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"}},\\\"contentName\\\":\\\"meta.embedded.inline.sql\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"}},\\\"name\\\":\\\"embed.sql.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sql\\\"},{\\\"include\\\":\\\"#string_dollar_sign_interpolate\\\"}]},{\\\"begin\\\":\\\"var\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"constant.other.symbol.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"var\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"constant.other.symbol.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s?(doc)?(\\\\\\\"\\\\\\\"\\\\\\\")\\\\\\\\s?$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"}},\\\"comment\\\":\\\"This only matches docstrings that start and end with triple quotes on\\\\ntheir own line in the void\\\",\\\"end\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"}},\\\"name\\\":\\\"string.docstring.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_dollar_sign_interpolate\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"}},\\\"end\\\":\\\"'(?!')\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"}},\\\"name\\\":\\\"string.quoted.single.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.multiline.begin.julia\\\"}},\\\"comment\\\":\\\"multi-line string with triple double quotes\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.multiline.end.julia\\\"}},\\\"name\\\":\\\"string.quoted.triple.double.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_dollar_sign_interpolate\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"(?!\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"}},\\\"comment\\\":\\\"String with single pair of double quotes. Regex matches isolated double quote\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"}},\\\"name\\\":\\\"string.quoted.double.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_dollar_sign_interpolate\\\"}]},{\\\"begin\\\":\\\"r\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.regexp.begin.julia\\\"}},\\\"end\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\")([imsx]{0,4})?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.regexp.end.julia\\\"},\\\"2\\\":{\\\"comment\\\":\\\"I took this scope name from python regex grammar\\\",\\\"name\\\":\\\"keyword.other.option-toggle.regexp.julia\\\"}},\\\"name\\\":\\\"string.regexp.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"r\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.regexp.begin.julia\\\"}},\\\"end\\\":\\\"(\\\\\\\")([imsx]{0,4})?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.regexp.end.julia\\\"},\\\"2\\\":{\\\"comment\\\":\\\"I took this scope name from python regex grammar\\\",\\\"name\\\":\\\"keyword.other.option-toggle.regexp.julia\\\"}},\\\"name\\\":\\\"string.regexp.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\")((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"}},\\\"end\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\")((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"}},\\\"name\\\":\\\"string.quoted.other.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\")((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"}},\\\"end\\\":\\\"(?<![^\\\\\\\\\\\\\\\\]\\\\\\\\\\\\\\\\)(\\\\\\\")((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"}},\\\"name\\\":\\\"string.quoted.other.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"}]},{\\\"begin\\\":\\\"(?<!`)((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)?```\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"}},\\\"end\\\":\\\"(```)((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"}},\\\"name\\\":\\\"string.interpolated.backtick.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_dollar_sign_interpolate\\\"}]},{\\\"begin\\\":\\\"(?<!`)((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)?`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.julia\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"}},\\\"end\\\":\\\"(?<![^\\\\\\\\\\\\\\\\]\\\\\\\\\\\\\\\\)(`)((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.macro.julia\\\"}},\\\"name\\\":\\\"string.interpolated.backtick.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_dollar_sign_interpolate\\\"}]}]},\\\"string_dollar_sign_interpolate\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\$(?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF]|[^\\\\\\\\p{^Sc}$])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF]|[^\\\\\\\\p{^Sc}$])*\\\",\\\"name\\\":\\\"variable.interpolation.julia\\\"},{\\\"begin\\\":\\\"\\\\\\\\$(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.bracket.julia\\\"}},\\\"comment\\\":\\\"`punctuation.section.embedded`, `constant.escape`,\\\\n& `meta.embedded.line` were considered but appear to have even spottier\\\\nsupport among popular syntaxes.\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.bracket.julia\\\"}},\\\"name\\\":\\\"variable.interpolation.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#self_no_for_block\\\"}]}]},\\\"string_escaped_char\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[0-3]\\\\\\\\d{,2}|[4-7]\\\\\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8}|.)\\\",\\\"name\\\":\\\"constant.character.escape.julia\\\"}]},\\\"symbol\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"This is string.quoted.symbol.julia in tpoisot's package\\\",\\\"match\\\":\\\"(?<![[:word:]\u207A-\u209C!\u2032\u2207\\\\\\\\)\\\\\\\\]\\\\\\\\}]):(?:(?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)(?!(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF]))(?![\\\\\\\"`])\\\",\\\"name\\\":\\\"constant.other.symbol.julia\\\"}]},\\\"type_decl\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.julia\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.inherited-class.julia\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.julia\\\"}},\\\"match\\\":\\\"(?>!:_)(?:struct|mutable\\\\\\\\s+struct|abstract\\\\\\\\s+type|primitive\\\\\\\\s+type)\\\\\\\\s+((?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*)(\\\\\\\\s*(<:)\\\\\\\\s*(?:[[:alpha:]_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{So}\u2190-\u21FF])(?:[[:word:]_!\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Sc}\u2140-\u2144\u223F\u22BE\u22BF\u22A4\u22A5\u2202\u2205-\u2207\u220E\u220F\u2210\u2211\u221E\u221F\u222B-\u2233\u22C0-\u22C3\u25F8-\u25FF\u266F\u27D8\u27D9\u27C0\u27C1\u29B0-\u29B4\u2A00-\u2A06\u2A09-\u2A16\u2A1B\u2A1C\uD835\uDEC1\uD835\uDEDB\uD835\uDEFB\uD835\uDF15\uD835\uDF35\uD835\uDF4F\uD835\uDF6F\uD835\uDF89\uD835\uDFA9\uD835\uDFC3\u2071-\u207E\u2081-\u208E\u2220-\u2222\u299B-\u29AF\u2118\u212E\u309B-\u309C\uD835\uDFCE-\uD835\uDFE1]|[^\\\\\\\\P{Mn}\\\\u0001-\u00A1]|[^\\\\\\\\P{Mc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Nd}\\\\u0001-\u00A1]|[^\\\\\\\\P{Pc}\\\\u0001-\u00A1]|[^\\\\\\\\P{Sk}\\\\u0001-\u00A1]|[^\\\\\\\\P{Me}\\\\u0001-\u00A1]|[^\\\\\\\\P{No}\\\\u0001-\u00A1]|[\u2032-\u2037\u2057]|[^\\\\\\\\P{So}\u2190-\u21FF])*(?:{.*})?)?\\\",\\\"name\\\":\\\"meta.type.julia\\\"}]}},\\\"scopeName\\\":\\\"source.julia\\\",\\\"embeddedLangs\\\":[\\\"cpp\\\",\\\"python\\\",\\\"javascript\\\",\\\"r\\\",\\\"sql\\\"],\\\"aliases\\\":[\\\"jl\\\"]}\"))\n\nexport default [\n...cpp,\n...python,\n...javascript,\n...r,\n...sql,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Kotlin\\\",\\\"fileTypes\\\":[\\\"kt\\\",\\\"kts\\\"],\\\"name\\\":\\\"kotlin\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#package\\\"},{\\\"include\\\":\\\"#code\\\"}],\\\"repository\\\":{\\\"annotation-simple\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\w)@[\\\\\\\\w\\\\\\\\.]+\\\\\\\\b(?!:)\\\",\\\"name\\\":\\\"entity.name.type.annotation.kotlin\\\"},\\\"annotation-site\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(@\\\\\\\\w+):\\\\\\\\s*(?!\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.annotation-site.kotlin\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#unescaped-annotation\\\"}]},\\\"annotation-site-list\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(@\\\\\\\\w+):\\\\\\\\s*\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.annotation-site.kotlin\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#unescaped-annotation\\\"}]},\\\"binary-literal\\\":{\\\"match\\\":\\\"0(b|B)[01][01_]*\\\",\\\"name\\\":\\\"constant.numeric.binary.kotlin\\\"},\\\"boolean-literal\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.kotlin\\\"},\\\"character\\\":{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.kotlin\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.kotlin\\\"}]},\\\"class-declaration\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.class.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.kotlin\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b(class|(?:fun\\\\\\\\s+)?interface)\\\\\\\\s+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`)\\\\\\\\s*(?<GROUP><([^<>]|\\\\\\\\g<GROUP>)+>)?\\\"},\\\"code\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#annotation-simple\\\"},{\\\"include\\\":\\\"#annotation-site-list\\\"},{\\\"include\\\":\\\"#annotation-site\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"include\\\":\\\"#type-alias\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#variable-declaration\\\"},{\\\"include\\\":\\\"#type-constraint\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#method-reference\\\"},{\\\"include\\\":\\\"#key\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#string-empty\\\"},{\\\"include\\\":\\\"#string-multiline\\\"},{\\\"include\\\":\\\"#character\\\"},{\\\"include\\\":\\\"#lambda-arrow\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#self-reference\\\"},{\\\"include\\\":\\\"#decimal-literal\\\"},{\\\"include\\\":\\\"#hex-literal\\\"},{\\\"include\\\":\\\"#binary-literal\\\"},{\\\"include\\\":\\\"#boolean-literal\\\"},{\\\"include\\\":\\\"#null-literal\\\"}]},\\\"comment-block\\\":{\\\"begin\\\":\\\"/\\\\\\\\*(?!\\\\\\\\*)\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.kotlin\\\"},\\\"comment-javadoc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.javadoc.kotlin\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"@(return|constructor|receiver|sample|see|author|since|suppress)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.documentation.javadoc.kotlin\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.kotlin\\\"}},\\\"match\\\":\\\"(@param|@property)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.kotlin\\\"}},\\\"match\\\":\\\"(@param)\\\\\\\\[(\\\\\\\\S+)\\\\\\\\]\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.kotlin\\\"}},\\\"match\\\":\\\"(@(?:exception|throws))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.kotlin\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.kotlin\\\"}},\\\"match\\\":\\\"{(@link)\\\\\\\\s+(\\\\\\\\S+)?#([\\\\\\\\w$]+\\\\\\\\s*\\\\\\\\([^\\\\\\\\(\\\\\\\\)]*\\\\\\\\)).*}\\\"}]}]},\\\"comment-line\\\":{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.kotlin\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-line\\\"},{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#comment-javadoc\\\"}]},\\\"control-keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(if|else|while|do|when|try|throw|break|continue|return|for)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.kotlin\\\"},\\\"decimal-literal\\\":{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d[\\\\\\\\d_]*(\\\\\\\\.[\\\\\\\\d_]+)?((e|E)\\\\\\\\d+)?(u|U)?(L|F|f)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.kotlin\\\"},\\\"function\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.fun.kotlin\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.extension.kotlin\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.declaration.kotlin\\\"}},\\\"match\\\":\\\"\\\\\\\\b(fun)\\\\\\\\b\\\\\\\\s*(?<GROUP><([^<>]|\\\\\\\\g<GROUP>)+>)?\\\\\\\\s*(?:(?:(\\\\\\\\w+)\\\\\\\\.)?(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`))?\\\"},\\\"function-call\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.kotlin\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]}},\\\"match\\\":\\\"\\\\\\\\??\\\\\\\\.?(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`)\\\\\\\\s*(?<GROUP><([^<>]|\\\\\\\\g<GROUP>)+>)?\\\\\\\\s*(?=[({])\\\"},\\\"hard-keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(as|typeof|is|in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.hard.kotlin\\\"},\\\"hex-literal\\\":{\\\"match\\\":\\\"0(x|X)[A-Fa-f0-9][A-Fa-f0-9_]*(u|U)?\\\",\\\"name\\\":\\\"constant.numeric.hex.kotlin\\\"},\\\"import\\\":{\\\"begin\\\":\\\"\\\\\\\\b(import)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.soft.kotlin\\\"}},\\\"contentName\\\":\\\"entity.name.package.kotlin\\\",\\\"end\\\":\\\";|$\\\",\\\"name\\\":\\\"meta.import.kotlin\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#hard-keywords\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"variable.language.wildcard.kotlin\\\"}]},\\\"key\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.kotlin\\\"}},\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w=)\\\\\\\\s*(=)\\\"},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#prefix-modifiers\\\"},{\\\"include\\\":\\\"#postfix-modifiers\\\"},{\\\"include\\\":\\\"#soft-keywords\\\"},{\\\"include\\\":\\\"#hard-keywords\\\"},{\\\"include\\\":\\\"#control-keywords\\\"}]},\\\"lambda-arrow\\\":{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"storage.type.function.arrow.kotlin\\\"},\\\"method-reference\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.reference.kotlin\\\"}},\\\"match\\\":\\\"\\\\\\\\??::(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`)\\\"},\\\"null-literal\\\":{\\\"match\\\":\\\"\\\\\\\\bnull\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.null.kotlin\\\"},\\\"object\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.object.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.object.kotlin\\\"}},\\\"match\\\":\\\"\\\\\\\\b(object)(?:\\\\\\\\s+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`))?\\\"},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(===?|\\\\\\\\!==?|<=|>=|<|>)\\\",\\\"name\\\":\\\"keyword.operator.comparison.kotlin\\\"},{\\\"match\\\":\\\"([+*/%-]=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.arithmetic.kotlin\\\"},{\\\"match\\\":\\\"(=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.kotlin\\\"},{\\\"match\\\":\\\"([+*/%-])\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.kotlin\\\"},{\\\"match\\\":\\\"(!|&&|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.logical.kotlin\\\"},{\\\"match\\\":\\\"(--|\\\\\\\\+\\\\\\\\+)\\\",\\\"name\\\":\\\"keyword.operator.increment-decrement.kotlin\\\"},{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.operator.range.kotlin\\\"}]},\\\"package\\\":{\\\"begin\\\":\\\"\\\\\\\\b(package)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.package.kotlin\\\"}},\\\"contentName\\\":\\\"entity.name.package.kotlin\\\",\\\"end\\\":\\\";|$\\\",\\\"name\\\":\\\"meta.package.kotlin\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},\\\"postfix-modifiers\\\":{\\\"match\\\":\\\"\\\\\\\\b(where|by|get|set)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.other.kotlin\\\"},\\\"prefix-modifiers\\\":{\\\"match\\\":\\\"\\\\\\\\b(abstract|final|enum|open|annotation|sealed|data|override|final|lateinit|private|protected|public|internal|inner|companion|noinline|crossinline|vararg|reified|tailrec|operator|infix|inline|external|const|suspend|value)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.other.kotlin\\\"},\\\"self-reference\\\":{\\\"match\\\":\\\"\\\\\\\\b(this|super)(@\\\\\\\\w+)?\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.this.kotlin\\\"},\\\"soft-keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(init|catch|finally|field)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.soft.kotlin\\\"},\\\"string\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\")\\\\\\\"(?!\\\\\\\")\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.kotlin\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.kotlin\\\"},{\\\"include\\\":\\\"#string-escape-simple\\\"},{\\\"include\\\":\\\"#string-escape-bracketed\\\"}]},\\\"string-empty\\\":{\\\"match\\\":\\\"(?<!\\\\\\\")\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"name\\\":\\\"string.quoted.double.kotlin\\\"},\\\"string-escape-bracketed\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\$\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end\\\"}},\\\"name\\\":\\\"meta.template.expression.kotlin\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},\\\"string-escape-simple\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\$\\\\\\\\w+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.string-escape.kotlin\\\"},\\\"string-multiline\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.kotlin\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.kotlin\\\"},{\\\"include\\\":\\\"#string-escape-simple\\\"},{\\\"include\\\":\\\"#string-escape-bracketed\\\"}]},\\\"type-alias\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.typealias.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.kotlin\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b(typealias)\\\\\\\\s+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`)\\\\\\\\s*(?<GROUP><([^<>]|\\\\\\\\g<GROUP>)+>)?\\\"},\\\"type-annotation\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]}},\\\"match\\\":\\\"(?<![:?]):\\\\\\\\s*(\\\\\\\\w|\\\\\\\\?|\\\\\\\\s|->|(?<GROUP>[<(]([^<>()\\\\\\\"']|\\\\\\\\g<GROUP>)+[)>]))+\\\"},\\\"type-parameter\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.kotlin\\\"},{\\\"match\\\":\\\"\\\\\\\\b(in|out)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.kotlin\\\"}]},\\\"unescaped-annotation\\\":{\\\"match\\\":\\\"\\\\\\\\b[\\\\\\\\w\\\\\\\\.]+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.annotation.kotlin\\\"},\\\"variable-declaration\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.kotlin\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b(val|var)\\\\\\\\b\\\\\\\\s*(?<GROUP><([^<>]|\\\\\\\\g<GROUP>)+>)?\\\"}},\\\"scopeName\\\":\\\"source.kotlin\\\",\\\"aliases\\\":[\\\"kt\\\",\\\"kts\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Kusto\\\",\\\"fileTypes\\\":[\\\"csl\\\",\\\"kusto\\\",\\\"kql\\\"],\\\"name\\\":\\\"kusto\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Tabular operators: common helper operators\\\",\\\"match\\\":\\\"\\\\\\\\b(by|from|of|to|step|with)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},{\\\"comment\\\":\\\"Query statements: https://docs.microsoft.com/en-us/azure/kusto/query/statements\\\",\\\"match\\\":\\\"\\\\\\\\b(let|set|alias|declare|pattern|query_parameters|restrict|access|set)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.kusto\\\"},{\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/datatypes-string-operators\\\",\\\"match\\\":\\\"\\\\\\\\b(and|or|has_all|has_any|matches|regex)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.kusto\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Strings\\\"}]}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/clusterfunction\\\",\\\"match\\\":\\\"\\\\\\\\b(cluster|database)(?:\\\\\\\\s*\\\\\\\\(\\\\\\\\s*(.+?)\\\\\\\\s*\\\\\\\\))?(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"meta.special.database.kusto\\\"},{\\\"comment\\\":\\\"Special functions: https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/tablefunction\\\",\\\"match\\\":\\\"\\\\\\\\b(external_table|materialized_view|materialize|table|toscalar)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.kusto\\\"},{\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/betweenoperator\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w)(!?between)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.kusto\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Numeric\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Numeric\\\"}]}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/binoperators\\\",\\\"match\\\":\\\"\\\\\\\\b(binary_and|binary_or|binary_shift_left|binary_shift_right|binary_xor)(?:\\\\\\\\s*\\\\\\\\(\\\\\\\\s*(\\\\\\\\w+)\\\\\\\\s*,\\\\\\\\s*(\\\\\\\\w+)\\\\\\\\s*\\\\\\\\))?(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"meta.scalar.bitwise.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.kusto\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Numeric\\\"}]}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/binary-notfunction\\\",\\\"match\\\":\\\"\\\\\\\\b(binary_not|bitset_count_ones)(?:\\\\\\\\s*\\\\\\\\(\\\\\\\\s*(\\\\\\\\w+)\\\\\\\\s*\\\\\\\\))?(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"meta.scalar.bitwise.kusto\\\"},{\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/in-cs-operator\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w)(!?in~?)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},{\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/datatypes-string-operators\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w)(!?(?:contains|endswith|hasprefix|hassuffix|has|startswith)(?:_cs)?)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.kusto\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#DateTimeTimeSpanDataTypes\\\"},{\\\"include\\\":\\\"#TimeSpanLiterals\\\"},{\\\"include\\\":\\\"#DateTimeTimeSpanFunctions\\\"},{\\\"include\\\":\\\"#Numeric\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#DateTimeTimeSpanDataTypes\\\"},{\\\"include\\\":\\\"#TimeSpanLiterals\\\"},{\\\"include\\\":\\\"#DateTimeTimeSpanFunctions\\\"},{\\\"include\\\":\\\"#Numeric\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#DateTimeTimeSpanDataTypes\\\"},{\\\"include\\\":\\\"#TimeSpanLiterals\\\"},{\\\"include\\\":\\\"#DateTimeTimeSpanFunctions\\\"},{\\\"include\\\":\\\"#Numeric\\\"}]}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/rangefunction\\\",\\\"match\\\":\\\"\\\\\\\\b(range)\\\\\\\\s*\\\\\\\\((?:\\\\\\\\s*(\\\\\\\\w+(?:\\\\\\\\(.*?\\\\\\\\))?)\\\\\\\\s*,\\\\\\\\s*(\\\\\\\\w+(?:\\\\\\\\(.*?\\\\\\\\))?)\\\\\\\\s*,?(?:\\\\\\\\s*)?(\\\\\\\\w+(?:\\\\\\\\(.*?\\\\\\\\))?)?\\\\\\\\s*\\\\\\\\))?(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"meta.scalar.function.range.kusto\\\"},{\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/scalarfunctions\\\",\\\"match\\\":\\\"\\\\\\\\b(abs|acos|around|array_concat|array_iff|array_index_of|array_length|array_reverse|array_rotate_left|array_rotate_right|array_shift_left|array_shift_right|array_slice|array_sort_asc|array_sort_desc|array_split|array_sum|asin|assert|atan2|atan|bag_has_key|bag_keys|bag_merge|bag_remove_keys|base64_decode_toarray|base64_decode_tostring|base64_decode_toguid|base64_encode_fromarray|base64_encode_tostring|base64_encode_fromguid|beta_cdf|beta_inv|beta_pdf|bin_at|bin_auto|case|ceiling|coalesce|column_ifexists|convert_angle|convert_energy|convert_force|convert_length|convert_mass|convert_speed|convert_temperature|convert_volume|cos|cot|countof|current_cluster_endpoint|current_database|current_principal_details|current_principal_is_member_of|current_principal|cursor_after|cursor_before_or_at|cursor_current|current_cursor|dcount_hll|degrees|dynamic_to_json|estimate_data_size|exp10|exp2|exp|extent_id|extent_tags|extract_all|extract_json|extractjson|extract|floor|format_bytes|format_ipv4_mask|format_ipv4|gamma|gettype|gzip_compress_to_base64_string|gzip_decompress_from_base64_string|has_any_index|has_any_ipv4_prefix|has_any_ipv4|has_ipv4_prefix|has_ipv4|hash_combine|hash_many|hash_md5|hash_sha1|hash_sha256|hash_xxhash64|hash|iff|iif|indexof_regex|indexof|ingestion_time|ipv4_compare|ipv4_is_in_range|ipv4_is_in_any_range|ipv4_is_match|ipv4_is_private|ipv4_netmask_suffix|ipv6_compare|ipv6_is_match|isascii|isempty|isfinite|isinf|isnan|isnotempty|notempty|isnotnull|notnull|isnull|isutf8|jaccard_index|log10|log2|loggamma|log|make_string|max_of|min_of|new_guid|not|bag_pack|pack_all|pack_array|pack_dictionary|pack|parse_command_line|parse_csv|parse_ipv4_mask|parse_ipv4|parse_ipv6_mask|parse_ipv6|parse_path|parse_urlquery|parse_url|parse_user_agent|parse_version|parse_xml|percentile_tdigest|percentile_array_tdigest|percentrank_tdigest|pi|pow|radians|rand|rank_tdigest|regex_quote|repeat|replace_regex|replace_string|reverse|round|set_difference|set_has_element|set_intersect|set_union|sign|sin|split|sqrt|strcat_array|strcat_delim|strcmp|strcat|string_size|strlen|strrep|substring|tan|to_utf8|tobool|todecimal|todouble|toreal|toguid|tohex|toint|tolong|tolower|tostring|toupper|translate|treepath|trim_end|trim_start|trim|unixtime_microseconds_todatetime|unixtime_milliseconds_todatetime|unixtime_nanoseconds_todatetime|unixtime_seconds_todatetime|url_decode|url_encode_component|url_encode|welch_test|zip|zlib_compress_to_base64_string|zlib_decompress_from_base64_string)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.kusto\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#DateTimeTimeSpanDataTypes\\\"},{\\\"include\\\":\\\"#TimeSpanLiterals\\\"},{\\\"include\\\":\\\"#DateTimeTimeSpanFunctions\\\"},{\\\"include\\\":\\\"#Numeric\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#TimeSpanLiterals\\\"},{\\\"include\\\":\\\"#Numeric\\\"}]}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/binfunction\\\",\\\"match\\\":\\\"\\\\\\\\b(bin)(?:\\\\\\\\s*\\\\\\\\(\\\\\\\\s*(.+?)\\\\\\\\s*,\\\\\\\\s*(.+?)\\\\\\\\s*\\\\\\\\))?(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"meta.scalar.function.bin.kusto\\\"},{\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/count-aggfunction\\\",\\\"match\\\":\\\"\\\\\\\\b(count)\\\\\\\\s*\\\\\\\\(\\\\\\\\s*\\\\\\\\)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"support.function.kusto\\\"},{\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/aggregation-functions\\\",\\\"match\\\":\\\"\\\\\\\\b(arg_max|arg_min|avgif|avg|binary_all_and|binary_all_or|binary_all_xor|buildschema|countif|dcount|dcountif|hll|hll_merge|make_bag_if|make_bag|make_list_with_nulls|make_list_if|make_list|make_set_if|make_set|maxif|max|minif|min|percentilesw_array|percentiles_array|percentilesw|percentilew|percentiles|percentile|stdevif|stdevp|stdev|sumif|sum|take_anyif|take_any|tdigest_merge|merge_tdigest|tdigest|varianceif|variancep|variance)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.kusto\\\"},{\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/geospatial-grid-systems\\\",\\\"match\\\":\\\"\\\\\\\\b(geo_distance_2points|geo_distance_point_to_line|geo_distance_point_to_polygon|geo_intersects_2lines|geo_intersects_2polygons|geo_intersects_line_with_polygon|geo_intersection_2lines|geo_intersection_2polygons|geo_intersection_line_with_polygon|geo_line_centroid|geo_line_densify|geo_line_length|geo_line_simplify|geo_polygon_area|geo_polygon_centroid|geo_polygon_densify|geo_polygon_perimeter|geo_polygon_simplify|geo_polygon_to_s2cells|geo_point_in_circle|geo_point_in_polygon|geo_point_to_geohash|geo_point_to_h3cell|geo_point_to_s2cell|geo_geohash_to_central_point|geo_geohash_neighbors|geo_geohash_to_polygon|geo_s2cell_to_central_point|geo_s2cell_neighbors|geo_s2cell_to_polygon|geo_h3cell_to_central_point|geo_h3cell_neighbors|geo_h3cell_to_polygon|geo_h3cell_parent|geo_h3cell_children|geo_h3cell_level|geo_h3cell_rings|geo_simplify_polygons_array|geo_union_lines_array|geo_union_polygons_array)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.kusto\\\"},{\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/windowsfunctions\\\",\\\"match\\\":\\\"\\\\\\\\b(next|prev|row_cumsum|row_number|row_rank|row_window_session)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.kusto\\\"},{\\\"comment\\\":\\\"User-defined functions: https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions\\\",\\\"match\\\":\\\"\\\\\\\\.(create-or-alter|replace)\\\",\\\"name\\\":\\\"keyword.control.kusto\\\"},{\\\"comment\\\":\\\"User-defined functions: https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions\\\",\\\"match\\\":\\\"(?<=let )[^\\\\\\\\n]+(?=\\\\\\\\W*=)\\\",\\\"name\\\":\\\"entity.function.name.lambda.kusto\\\"},{\\\"comment\\\":\\\"User-defined functions: https://docs.microsoft.com/en-us/azure/kusto/query/functions/user-defined-functions\\\",\\\"match\\\":\\\"\\\\\\\\b(folder|docstring|skipvalidation)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},{\\\"match\\\":\\\"\\\\\\\\b(function)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.kusto\\\"},{\\\"comment\\\":\\\"Data types: https://docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types\\\",\\\"match\\\":\\\"\\\\\\\\b(bool|decimal|dynamic|guid|int|long|real|string)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.query.kusto\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.kusto\\\"}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/asoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(as)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.query.as.kusto\\\"},{\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/datatableoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(datatable)(?=\\\\\\\\W*\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.other.query.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.query.kusto\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.operator.kusto\\\"}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/facetoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(facet)(?:\\\\\\\\s+(by))?\\\\\\\\b\\\",\\\"name\\\":\\\"meta.query.facet.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.query.kusto\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.kusto\\\"}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/invokeoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(invoke)(?:\\\\\\\\s+(\\\\\\\\w+))?\\\\\\\\b\\\",\\\"name\\\":\\\"meta.query.invoke.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.query.kusto\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.column.kusto\\\"}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/orderoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(order)(?:\\\\\\\\s+(by)\\\\\\\\s+(\\\\\\\\w+))?\\\\\\\\b\\\",\\\"name\\\":\\\"meta.query.order.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.query.kusto\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.column.kusto\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#TimeSpanLiterals\\\"},{\\\"include\\\":\\\"#DateTimeTimeSpanFunctions\\\"},{\\\"include\\\":\\\"#Numeric\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#TimeSpanLiterals\\\"},{\\\"include\\\":\\\"#DateTimeTimeSpanFunctions\\\"},{\\\"include\\\":\\\"#Numeric\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#TimeSpanLiterals\\\"},{\\\"include\\\":\\\"#DateTimeTimeSpanFunctions\\\"},{\\\"include\\\":\\\"#Numeric\\\"}]}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/rangeoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(range)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s+(from)\\\\\\\\s+(\\\\\\\\w+(?:\\\\\\\\(\\\\\\\\w*\\\\\\\\))?)\\\\\\\\s+(to)\\\\\\\\s+(\\\\\\\\w+(?:\\\\\\\\(\\\\\\\\w*\\\\\\\\))?)\\\\\\\\s+(step)\\\\\\\\s+(\\\\\\\\w+(?:\\\\\\\\(\\\\\\\\w*\\\\\\\\))?)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.query.range.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.query.kusto\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Numeric\\\"}]}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/sampleoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(sample)(?:\\\\\\\\s+(\\\\\\\\d+))?(?![\\\\\\\\w-])\\\",\\\"name\\\":\\\"meta.query.sample.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.query.kusto\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Numeric\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.column.kusto\\\"}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/sampledistinctoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(sample-distinct)(?:\\\\\\\\s+(\\\\\\\\d+)\\\\\\\\s+(of)\\\\\\\\s+(\\\\\\\\w+))?\\\\\\\\b\\\",\\\"name\\\":\\\"meta.query.sample-distinct.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.query.kusto\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.operator.kusto\\\"}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/sortoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(sort)(?:\\\\\\\\s+(by))?\\\\\\\\b\\\",\\\"name\\\":\\\"meta.query.sort.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.query.kusto\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Numeric\\\"}]}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/takeoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(take|limit)(?:\\\\\\\\s+(\\\\\\\\d+))\\\\\\\\b\\\",\\\"name\\\":\\\"meta.query.take.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.query.kusto\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Numeric\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.column.kusto\\\"}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/topoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(top)(?:\\\\\\\\s+(\\\\\\\\d+)\\\\\\\\s+(by)\\\\\\\\s+(\\\\\\\\w+))?(?![\\\\\\\\w-])\\\\\\\\b\\\",\\\"name\\\":\\\"meta.query.top.kusto\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.query.kusto\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Numeric\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.column.kusto\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.column.kusto\\\"}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/tophittersoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(top-hitters)(?:\\\\\\\\s+(\\\\\\\\d+)\\\\\\\\s+(of)\\\\\\\\s+(\\\\\\\\w+)(?:\\\\\\\\s+(by)\\\\\\\\s+(\\\\\\\\w+))?)?\\\\\\\\b\\\",\\\"name\\\":\\\"meta.query.top-hitters.kusto\\\"},{\\\"comment\\\":\\\"Tabular operators: https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/queries\\\",\\\"match\\\":\\\"\\\\\\\\b(consume|count|distinct|evaluate|extend|externaldata|find|fork|getschema|join|lookup|make-series|mv-apply|mv-expand|project-away|project-keep|project-rename|project-reorder|project|parse|parse-where|parse-kv|partition|print|reduce|render|scan|search|serialize|shuffle|summarize|top-nested|union|where)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.query.kusto\\\"},{\\\"comment\\\":\\\"Tabular operators: evalute (plugins): https://docs.microsoft.com/en-us/azure/kusto/query/evaluateoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(active_users_count|activity_counts_metrics|activity_engagement|new_activity_metrics|activity_metrics|autocluster|azure_digital_twins_query_request|bag_unpack|basket|cosmosdb_sql_request|dcount_intersect|diffpatterns|funnel_sequence_completion|funnel_sequence|http_request_post|http_request|infer_storage_schema|ipv4_lookup|mysql_request|narrow|pivot|preview|rolling_percentile|rows_near|schema_merge|session_count|sequence_detect|sliding_window_counts|sql_request)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.kusto\\\"},{\\\"comment\\\":\\\"Tabular operators: join: https://docs.microsoft.com/en-us/azure/kusto/query/joinoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(on|kind|hint\\\\\\\\.remote|hint\\\\\\\\.strategy)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},{\\\"comment\\\":\\\"Tabular operators: join ($left, $right): https://docs.microsoft.com/en-us/azure/kusto/query/joinoperator\\\",\\\"match\\\":\\\"(\\\\\\\\$left|\\\\\\\\$right)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.kusto\\\"},{\\\"comment\\\":\\\"Tabular operators: join (kinds, strategies): https://docs.microsoft.com/en-us/azure/kusto/query/joinoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(innerunique|inner|leftouter|rightouter|fullouter|leftanti|anti|leftantisemi|rightanti|rightantisemi|leftsemi|rightsemi|broadcast)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.kusto\\\"},{\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/machine-learning-and-tsa\\\",\\\"match\\\":\\\"\\\\\\\\b(series_abs|series_acos|series_add|series_asin|series_atan|series_cos|series_decompose|series_decompose_anomalies|series_decompose_forecast|series_divide|series_equals|series_exp|series_fft|series_fill_backward|series_fill_const|series_fill_forward|series_fill_linear|series_fir|series_fit_2lines_dynamic|series_fit_2lines|series_fit_line_dynamic|series_fit_line|series_fit_poly|series_greater_equals|series_greater|series_ifft|series_iir|series_less_equals|series_less|series_multiply|series_not_equals|series_outliers|series_pearson_correlation|series_periods_detect|series_periods_validate|series_pow|series_seasonal|series_sign|series_sin|series_stats|series_stats_dynamic|series_subtract|series_tan)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.kusto\\\"},{\\\"comment\\\":\\\"Tabular operators: mv-expand (bagexpand options): https://docs.microsoft.com/en-us/azure/kusto/query/mvexpandoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(bag|array)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.operator.kusto\\\"},{\\\"comment\\\":\\\"Tabular operators: order: https://docs.microsoft.com/en-us/azure/kusto/query/orderoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(asc|desc|nulls first|nulls last)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.kusto\\\"},{\\\"comment\\\":\\\"Tabular operators: parse: https://docs.microsoft.com/en-us/azure/kusto/query/parseoperator\\\",\\\"match\\\":\\\"\\\\\\\\b(regex|simple|relaxed)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.kusto\\\"},{\\\"match\\\":\\\"\\\\\\\\b(anomalychart|areachart|barchart|card|columnchart|ladderchart|linechart|piechart|pivotchart|scatterchart|stackedareachart|timechart|timepivot)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.kusto\\\"},{\\\"include\\\":\\\"#Strings\\\"},{\\\"match\\\":\\\"\\\\\\\\{.*?\\\\\\\\}\\\",\\\"name\\\":\\\"string.other.kusto\\\"},{\\\"comment\\\":\\\"Comments\\\",\\\"match\\\":\\\"//.*\\\",\\\"name\\\":\\\"comment.line.kusto\\\"},{\\\"include\\\":\\\"#TimeSpanLiterals\\\"},{\\\"include\\\":\\\"#DateTimeTimeSpanFunctions\\\"},{\\\"include\\\":\\\"#DateTimeTimeSpanDataTypes\\\"},{\\\"include\\\":\\\"#Numeric\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.kusto\\\"},{\\\"comment\\\":\\\"Deprecated functions\\\",\\\"match\\\":\\\"\\\\\\\\b(anyif|any|array_strcat|base64_decodestring|base64_encodestring|make_dictionary|makelist|makeset|mvexpand|todynamic|parse_json|replace|weekofyear)(?=\\\\\\\\W*\\\\\\\\(|\\\\\\\\b)\\\",\\\"name\\\":\\\"invalid.deprecated.kusto\\\"}],\\\"repository\\\":{\\\"DateTimeTimeSpanDataTypes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(datetime|timespan|time)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.kusto\\\"}]},\\\"DateTimeTimeSpanFunctions\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.kusto\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#DateTimeTimeSpanDataTypes\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#Strings\\\"}]}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/format-datetimefunction\\\",\\\"match\\\":\\\"\\\\\\\\b(format_datetime)(?:\\\\\\\\s*\\\\\\\\(\\\\\\\\s*(.+?)\\\\\\\\s*,\\\\\\\\s*(['\\\\\\\"].*?['\\\\\\\"])\\\\\\\\s*\\\\\\\\))?(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"meta.scalar.function.format_datetime.kusto\\\"},{\\\"comment\\\":\\\"Scalar function: DateTime/Timespan Functions: https://docs.microsoft.com/en-us/azure/kusto/query/scalarfunctions#datetimetimespan-functions\\\",\\\"match\\\":\\\"\\\\\\\\b(ago|datetime_add|datetime_diff|datetime_local_to_utc|datetime_part|datetime_utc_to_local|dayofmonth|dayofweek|dayofyear|endofday|endofmonth|endofweek|endofyear|format_timespan|getmonth|getyear|hourofday|make_datetime|make_timespan|monthofyear|now|startofday|startofmonth|startofweek|startofyear|todatetime|totimespan|week_of_year)(?=\\\\\\\\W*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.kusto\\\"}]},\\\"Escapes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\['\\\\\\\"]|\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)\\\",\\\"name\\\":\\\"constant.character.escape.kusto\\\"}]},\\\"Numeric\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\\\\\.?[0-9]*+)|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f|ll|LL|ull|ULL)?(?=\\\\\\\\b|\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.numeric.kusto\\\"}]},\\\"Strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([@h]?\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.kusto\\\"}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/scalar-data-types/string\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.kusto\\\"}},\\\"name\\\":\\\"string.quoted.double.kusto\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#Escapes\\\"}]},{\\\"begin\\\":\\\"([@h]?')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.kusto\\\"}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/scalar-data-types/string\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.kusto\\\"}},\\\"name\\\":\\\"string.quoted.single.kusto\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#Escapes\\\"}]},{\\\"begin\\\":\\\"([@h]?```)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.kusto\\\"}},\\\"comment\\\":\\\"https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/scalar-data-types/string#multi-line-string-literals\\\",\\\"end\\\":\\\"```\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.kusto\\\"}},\\\"name\\\":\\\"string.quoted.multi.kusto\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#Escapes\\\"}]}]},\\\"TimeSpanLiterals\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"timespan literals: https://docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types/timespan#timespan-literals\\\",\\\"match\\\":\\\"[+-]?(?:\\\\\\\\d*\\\\\\\\.)?\\\\\\\\d+(?:microseconds?|ticks?|seconds?|ms|d|h|m|s)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.kusto\\\"}]}},\\\"scopeName\\\":\\\"source.kusto\\\",\\\"aliases\\\":[\\\"kql\\\"]}\"))\n\nexport default [\nlang\n]\n", "import r from './r.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"TeX\\\",\\\"name\\\":\\\"tex\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=^\\\\\\\\s*)((\\\\\\\\\\\\\\\\)iffalse)(?!\\\\\\\\s*[{}]\\\\\\\\s*\\\\\\\\\\\\\\\\fi)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.tex\\\"}},\\\"contentName\\\":\\\"comment.line.percentage.tex\\\",\\\"end\\\":\\\"((\\\\\\\\\\\\\\\\)(?:else|fi))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.tex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#braces\\\"},{\\\"include\\\":\\\"#conditionals\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.tex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)(backmatter|csname|else|endcsname|fi|frontmatter|mainmatter|unless|if(case|cat|csname|defined|dim|eof|false|fontchar|hbox|hmode|inner|mmode|num|odd|true|vbox|vmode|void|x)?)(?![a-zA-Z@])\\\",\\\"name\\\":\\\"keyword.control.tex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.catcode.tex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.tex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.tex\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.category.tex\\\"}},\\\"match\\\":\\\"((\\\\\\\\\\\\\\\\)catcode)`(?:\\\\\\\\\\\\\\\\)?.(=)(\\\\\\\\d+)\\\",\\\"name\\\":\\\"meta.catcode.tex\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"[\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"punctuation.definition.brackets.tex\\\"},{\\\"begin\\\":\\\"(\\\\\\\\$\\\\\\\\$|\\\\\\\\$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.tex\\\"}},\\\"end\\\":\\\"(\\\\\\\\1)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.tex\\\"}},\\\"name\\\":\\\"meta.math.block.tex support.class.math.block.tex\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\$\\\",\\\"name\\\":\\\"constant.character.escape.tex\\\"},{\\\"include\\\":\\\"#math\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"keyword.control.newline.tex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.function.tex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)_*[\\\\\\\\p{Alphabetic}@]+(?:_[\\\\\\\\p{Alphabetic}@]+)*:[NncVvoxefTFpwD]*\\\",\\\"name\\\":\\\"support.class.general.latex3.tex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.function.tex\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)[\\\\\\\\p{Alphabetic}@]+(?:_[\\\\\\\\p{Alphabetic}@]+)*:[NncVvoxefTFpwD]*\\\",\\\"name\\\":\\\"support.class.general.latex3.tex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.function.tex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)(?:[,;]|(?:[\\\\\\\\p{Alphabetic}@]+))\\\",\\\"name\\\":\\\"support.function.general.tex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.tex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)[^a-zA-Z@]\\\",\\\"name\\\":\\\"constant.character.escape.tex\\\"}],\\\"repository\\\":{\\\"braces\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.group.begin.tex\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.group.end.tex\\\"}},\\\"name\\\":\\\"meta.group.braces.tex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#braces\\\"}]},\\\"comment\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=%)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.tex\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"%:?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tex\\\"}},\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.percentage.tex\\\"},{\\\"begin\\\":\\\"^(%!TEX) (\\\\\\\\S*) =\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tex\\\"}},\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.percentage.directive.tex\\\"}]},\\\"conditionals\\\":{\\\"begin\\\":\\\"(?<=^\\\\\\\\s*)\\\\\\\\\\\\\\\\if[a-z]*\\\",\\\"end\\\":\\\"(?<=^\\\\\\\\s*)\\\\\\\\\\\\\\\\fi\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#conditionals\\\"}]},\\\"math\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)(?:text|mbox))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.math.tex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.tex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.tex meta.text.normal.tex\\\"}},\\\"contentName\\\":\\\"meta.text.normal.tex\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.tex meta.text.normal.tex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#math\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\{|\\\\\\\\\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.math.bracket.pair.tex\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(left|right|((big|bigg|Big|Bigg)[lr]?))([\\\\\\\\(\\\\\\\\[\\\\\\\\<\\\\\\\\>\\\\\\\\]\\\\\\\\)\\\\\\\\.\\\\\\\\|]|\\\\\\\\\\\\\\\\[{}|]|\\\\\\\\\\\\\\\\[lr]?[Vv]ert|\\\\\\\\\\\\\\\\[lr]angle)\\\",\\\"name\\\":\\\"punctuation.math.bracket.pair.big.tex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.math.tex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)(s(s(earrow|warrow|lash)|h(ort(downarrow|uparrow|parallel|leftarrow|rightarrow|mid)|arp)|tar|i(gma|m(eq)?)|u(cc(sim|n(sim|approx)|curlyeq|eq|approx)?|pset(neq(q)?|plus(eq)?|eq(q)?)?|rd|m|bset(neq(q)?|plus(eq)?|eq(q)?)?)|p(hericalangle|adesuit)|e(tminus|arrow)|q(su(pset(eq)?|bset(eq)?)|c(up|ap)|uare)|warrow|m(ile|all(s(etminus|mile)|frown)))|h(slash|ook(leftarrow|rightarrow)|eartsuit|bar)|R(sh|ightarrow|e|bag)|Gam(e|ma)|n(s(hort(parallel|mid)|im|u(cc(eq)?|pseteq(q)?|bseteq))|Rightarrow|n(earrow|warrow)|cong|triangle(left(eq(slant)?)?|right(eq(slant)?)?)|i(plus)?|u|p(lus|arallel|rec(eq)?)|e(q|arrow|g|xists)|v(dash|Dash)|warrow|le(ss|q(slant|q)?|ft(arrow|rightarrow))|a(tural|bla)|VDash|rightarrow|g(tr|eq(slant|q)?)|mid|Left(arrow|rightarrow))|c(hi|irc(eq|le(d(circ|S|dash|ast)|arrow(left|right)))?|o(ng|prod|lon|mplement)|dot(s|p)?|u(p|r(vearrow(left|right)|ly(eq(succ|prec)|vee(downarrow|uparrow)?|wedge(downarrow|uparrow)?)))|enterdot|lubsuit|ap)|Xi|Maps(to(char)?|from(char)?)|B(ox|umpeq|bbk)|t(h(ick(sim|approx)|e(ta|refore))|imes|op|wohead(leftarrow|rightarrow)|a(u|lloblong)|riangle(down|q|left(eq(slant)?)?|right(eq(slant)?)?)?)|i(n(t(er(cal|leave))?|plus|fty)?|ota|math)|S(igma|u(pset|bset))|zeta|o(slash|times|int|dot|plus|vee|wedge|lessthan|greaterthan|m(inus|ega)|b(slash|long|ar))|d(i(v(ideontimes)?|a(g(down|up)|mond(suit)?)|gamma)|o(t(plus|eq(dot)?)|ublebarwedge|wn(harpoon(left|right)|downarrows|arrow))|d(ots|agger)|elta|a(sh(v|leftarrow|rightarrow)|leth|gger))|Y(down|up|left|right)|C(up|ap)|u(n(lhd|rhd)|p(silon|harpoon(left|right)|downarrow|uparrows|lus|arrow)|lcorner|rcorner)|jmath|Theta|Im|p(si|hi|i(tchfork)?|erp|ar(tial|allel)|r(ime|o(d|pto)|ec(sim|n(sim|approx)|curlyeq|eq|approx)?)|m)|e(t(h|a)|psilon|q(slant(less|gtr)|circ|uiv)|ll|xists|mptyset)|Omega|D(iamond|ownarrow|elta)|v(d(ots|ash)|ee(bar)?|Dash|ar(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|curly(vee|wedge)|t(heta|imes|riangle(left|right)?)|o(slash|circle|times|dot|plus|vee|wedge|lessthan|ast|greaterthan|minus|b(slash|ar))|p(hi|i|ropto)|epsilon|kappa|rho|bigcirc))|kappa|Up(silon|downarrow|arrow)|Join|f(orall|lat|a(t(s(emi|lash)|bslash)|llingdotseq)|rown)|P(si|hi|i)|w(p|edge|r)|l(hd|n(sim|eq(q)?|approx)|ceil|times|ightning|o(ng(left(arrow|rightarrow)|rightarrow|maps(to|from))|zenge|oparrow(left|right))|dot(s|p)|e(ss(sim|dot|eq(qgtr|gtr)|approx|gtr)|q(slant|q)?|ft(slice|harpoon(down|up)|threetimes|leftarrows|arrow(t(ail|riangle))?|right(squigarrow|harpoons|arrow(s|triangle|eq)?))|adsto)|vertneqq|floor|l(c(orner|eil)|floor|l|bracket)?|a(ngle|mbda)|rcorner|bag)|a(s(ymp|t)|ngle|pprox(eq)?|l(pha|eph)|rrownot|malg)|V(dash|vdash)|r(h(o|d)|ceil|times|i(singdotseq|ght(s(quigarrow|lice)|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(t(ail|riangle))?|rightarrows))|floor|angle|r(ceil|parenthesis|floor|bracket)|bag)|g(n(sim|eq(q)?|approx)|tr(sim|dot|eq(qless|less)|less|approx)|imel|eq(slant|q)?|vertneqq|amma|g(g)?)|Finv|xi|m(ho|i(nuso|d)|o(o|dels)|u(ltimap)?|p|e(asuredangle|rge)|aps(to|from(char)?))|b(i(n(dnasrepma|ampersand)|g(s(tar|qc(up|ap))|nplus|c(irc|u(p|rly(vee|wedge))|ap)|triangle(down|up)|interleave|o(times|dot|plus)|uplus|parallel|vee|wedge|box))|o(t|wtie|x(slash|circle|times|dot|plus|empty|ast|minus|b(slash|ox|ar)))|u(llet|mpeq)|e(cause|t(h|ween|a))|lack(square|triangle(down|left|right)?|lozenge)|a(ck(s(im(eq)?|lash)|prime|epsilon)|r(o|wedge))|bslash)|L(sh|ong(left(arrow|rightarrow)|rightarrow|maps(to|from))|eft(arrow|rightarrow)|leftarrow|ambda|bag)|Arrownot)(?![a-zA-Z@])\\\",\\\"name\\\":\\\"constant.character.math.tex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.math.tex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)(sum|prod|coprod|int|oint|bigcap|bigcup|bigsqcup|bigvee|bigwedge|bigodot|bigotimes|bogoplus|biguplus)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.character.math.tex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.math.tex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)(arccos|arcsin|arctan|arg|cos|cosh|cot|coth|csc|deg|det|dim|exp|gcd|hom|inf|ker|lg|lim|liminf|limsup|ln|log|max|min|pr|sec|sin|sinh|sup|tan|tanh)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.math.tex\\\"},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)Sexpr(\\\\\\\\{))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.sexpr.math.tex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.math.tex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.math.tex\\\"}},\\\"contentName\\\":\\\"support.function.sexpr.math.tex\\\",\\\"end\\\":\\\"(((\\\\\\\\})))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.sexpr.math.tex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.math.tex\\\"},\\\"3\\\":{\\\"name\\\":\\\"source.r\\\"}},\\\"name\\\":\\\"meta.embedded.line.r\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?!\\\\\\\\})\\\",\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"name\\\":\\\"source.r\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.math.tex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)(?!begin\\\\\\\\{|verb)([A-Za-z]+)\\\",\\\"name\\\":\\\"constant.other.general.math.tex\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\{\\\",\\\"name\\\":\\\"punctuation.math.begin.bracket.curly.tex\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.math.end.bracket.curly.tex\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.math.begin.bracket.round.tex\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.math.end.bracket.round.tex\\\"},{\\\"match\\\":\\\"(([0-9]*[\\\\\\\\.][0-9]+)|[0-9]+)\\\",\\\"name\\\":\\\"constant.numeric.math.tex\\\"},{\\\"match\\\":\\\"[\\\\\\\\+\\\\\\\\*/_\\\\\\\\^-]\\\",\\\"name\\\":\\\"punctuation.math.operator.tex\\\"}]}},\\\"scopeName\\\":\\\"text.tex\\\",\\\"embeddedLangs\\\":[\\\"r\\\"]}\"))\n\nexport default [\n...r,\nlang\n]\n", "import tex from './tex.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"LaTeX\\\",\\\"name\\\":\\\"latex\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"This scope identifies partially typed commands such as `\\\\\\\\tab`. We use this to trigger \u201CCommand Completion\u201D only when it makes sense.\\\",\\\"match\\\":\\\"(?<=\\\\\\\\\\\\\\\\[\\\\\\\\w@]|\\\\\\\\\\\\\\\\[\\\\\\\\w@]{2}|\\\\\\\\\\\\\\\\[\\\\\\\\w@]{3}|\\\\\\\\\\\\\\\\[\\\\\\\\w@]{4}|\\\\\\\\\\\\\\\\[\\\\\\\\w@]{5}|\\\\\\\\\\\\\\\\[\\\\\\\\w@]{6})\\\\\\\\s\\\",\\\"name\\\":\\\"meta.space-after-command.latex\\\"},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)(?:usepackage|documentclass))\\\\\\\\b(?=\\\\\\\\[|\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.preamble.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"name\\\":\\\"meta.preamble.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg\\\"},{\\\"begin\\\":\\\"((?:\\\\\\\\G|(?<=\\\\\\\\]))\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"support.class.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)(?:include|input))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.include.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"name\\\":\\\"meta.include.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)((?:sub){0,2}section|(?:sub)?paragraph|chapter|part|addpart|addchap|addsec|minisec|frametitle)(?:\\\\\\\\*)?)((?:\\\\\\\\[[^\\\\\\\\[]*?\\\\\\\\]){0,2})(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.section.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"comment\\\":\\\"this works OK with all kinds of crazy stuff as long as section is one line\\\",\\\"contentName\\\":\\\"entity.name.section.latex\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"name\\\":\\\"meta.function.section.$3.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"((?:\\\\\\\\s*)\\\\\\\\\\\\\\\\begin\\\\\\\\{songs\\\\\\\\}\\\\\\\\{.*\\\\\\\\})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"contentName\\\":\\\"meta.data.environment.songs.latex\\\",\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{songs\\\\\\\\}(?:\\\\\\\\s*\\\\\\\\n)?)\\\",\\\"name\\\":\\\"meta.function.environment.songs.latex\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"meta.chord.block.latex support.class.chord.block.environment.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\^\\\",\\\"name\\\":\\\"meta.chord.block.latex support.class.chord.block.environment.latex\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?:^\\\\\\\\s*)?\\\\\\\\\\\\\\\\begin\\\\\\\\{(lstlisting|minted|pyglist)\\\\\\\\}(?=\\\\\\\\[|\\\\\\\\{)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\\end\\\\\\\\{\\\\\\\\1\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:asy|asymptote))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.asy\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.asy\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:bash))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.shell\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.shell\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:c|cpp))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.cpp.embedded.latex\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp.embedded.latex\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:css))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:gnuplot))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.gnuplot\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.gnuplot\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:hs|haskell))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.haskell\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.haskell\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:html))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"text.html\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:java))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.java\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.java\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:jl|julia))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.julia\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.julia\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:js|javascript))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:lua))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.lua\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lua\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:py|python|sage))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.python\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:rb|ruby))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.ruby\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:rust))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.rust\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.rust\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:ts|typescript))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.ts\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:xml))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"text.xml\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)((?:yaml))(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"source.yaml\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:minted|lstlisting|pyglist)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)([a-zA-Z]*)(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"meta.function.embedded.latex\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:lstlisting|minted|pyglist)\\\\\\\\})\\\",\\\"name\\\":\\\"meta.embedded.block.generic.latex\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:asy|asycode)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:asy|asycode)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.asymptote\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:asy|asycode)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.asymptote\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:cppcode)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:cppcode)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.cpp.embedded.latex\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:cppcode)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp.embedded.latex\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:dot2tex|dotcode)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:dot2tex|dotcode)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.dot\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:dot2tex|dotcode)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.dot\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:gnuplot)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:gnuplot)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.gnuplot\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:gnuplot)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.gnuplot\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:hscode)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:hscode)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.haskell\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:hscode)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.haskell\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:jlcode|jlverbatim|jlblock|jlconcode|jlconsole|jlconverbatim)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:jlcode|jlverbatim|jlblock|jlconcode|jlconsole|jlconverbatim)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.julia\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:jlcode|jlverbatim|jlblock|jlconcode|jlconsole|jlconverbatim)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.julia\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:juliacode|juliaverbatim|juliablock|juliaconcode|juliaconsole|juliaconverbatim)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:juliacode|juliaverbatim|juliablock|juliaconcode|juliaconsole|juliaconverbatim)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.julia\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:juliacode|juliaverbatim|juliablock|juliaconcode|juliaconsole|juliaconverbatim)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.julia\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:luacode)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:luacode)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.lua\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:luacode)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lua\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:pycode|pyverbatim|pyblock|pyconcode|pyconsole|pyconverbatim)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:pycode|pyverbatim|pyblock|pyconcode|pyconsole|pyconverbatim)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.python\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:pycode|pyverbatim|pyblock|pyconcode|pyconsole|pyconverbatim)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:pylabcode|pylabverbatim|pylabblock|pylabconcode|pylabconsole|pylabconverbatim)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:pylabcode|pylabverbatim|pylabblock|pylabconcode|pylabconsole|pylabconverbatim)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.python\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:pylabcode|pylabverbatim|pylabblock|pylabconcode|pylabconsole|pylabconverbatim)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:sageblock|sagesilent|sageverbatim|sageexample|sagecommandline|python|pythonq|pythonrepl)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:sageblock|sagesilent|sageverbatim|sageexample|sagecommandline|python|pythonq|pythonrepl)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.python\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:sageblock|sagesilent|sageverbatim|sageexample|sagecommandline|python|pythonq|pythonrepl)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:scalacode)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:scalacode)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.scala\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:scalacode)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.scala\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(?:sympycode|sympyverbatim|sympyblock|sympyconcode|sympyconsole|sympyconverbatim)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[[a-zA-Z0-9_-]*\\\\\\\\])?(?=\\\\\\\\[|\\\\\\\\{|\\\\\\\\s*$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(?:sympycode|sympyverbatim|sympyblock|sympyconcode|sympyconsole|sympyconverbatim)\\\\\\\\*?\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}}},{\\\"begin\\\":\\\"^(?=\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.python\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:sympycode|sympyverbatim|sympyblock|sympyconcode|sympyconsole|sympyconverbatim)\\\\\\\\*?\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{([a-zA-Z]*code|lstlisting|minted|pyglist)\\\\\\\\*?\\\\\\\\}(?:\\\\\\\\[.*\\\\\\\\])?(?:\\\\\\\\{.*\\\\\\\\})?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"contentName\\\":\\\"meta.function.embedded.latex\\\",\\\"end\\\":\\\"\\\\\\\\\\\\\\\\end\\\\\\\\{\\\\\\\\1\\\\\\\\}(?:\\\\\\\\s*\\\\\\\\n)?\\\",\\\"name\\\":\\\"meta.embedded.block.generic.latex\\\"},{\\\"begin\\\":\\\"((?:^\\\\\\\\s*)?\\\\\\\\\\\\\\\\begin\\\\\\\\{((?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?))\\\\\\\\})(?:\\\\\\\\[[^\\\\\\\\]]*\\\\\\\\]){,2}(?=\\\\\\\\{)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{\\\\\\\\2\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:asy|asymptote)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.asy\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.asy\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:bash)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.shell\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.shell\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:c|cpp)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.cpp.embedded.latex\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp.embedded.latex\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:css)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:gnuplot)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.gnuplot\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.gnuplot\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:hs|haskell)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.haskell\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.haskell\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:html)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"text.html\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:java)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.java\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.java\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:jl|julia)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.julia\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.julia\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:js|javascript)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:lua)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.lua\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lua\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:py|python|sage)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.python\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:rb|ruby)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.ruby\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:rust)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.rust\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.rust\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:ts|typescript)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.ts\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:xml)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"text.xml\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:yaml)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"source.yaml\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)(?:__|[a-z\\\\\\\\s]*)(?i:tikz|tikzpicture)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"text.tex.latex\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex.latex\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\",\\\"contentName\\\":\\\"meta.function.embedded.latex\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{(?:RobExt)?(?:CacheMeCode|PlaceholderPathFromCode\\\\\\\\*?|PlaceholderFromCode\\\\\\\\*?|SetPlaceholderCode\\\\\\\\*?)\\\\\\\\})\\\",\\\"name\\\":\\\"meta.embedded.block.generic.latex\\\"}]}]},{\\\"begin\\\":\\\"(?:^\\\\\\\\s*)?\\\\\\\\\\\\\\\\begin\\\\\\\\{(terminal\\\\\\\\*?)\\\\\\\\}(?=\\\\\\\\[|\\\\\\\\{)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\\end\\\\\\\\{\\\\\\\\1\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)([a-zA-Z]*)(\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"meta.function.embedded.latex\\\",\\\"end\\\":\\\"^\\\\\\\\s*(?=\\\\\\\\\\\\\\\\end\\\\\\\\{terminal\\\\\\\\*?\\\\\\\\})\\\",\\\"name\\\":\\\"meta.embedded.block.generic.latex\\\"}]},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)addplot)(?:\\\\\\\\+?)((?:\\\\\\\\[[^\\\\\\\\[]*\\\\\\\\]))*\\\\\\\\s*(gnuplot)\\\\\\\\s*((?:\\\\\\\\[[^\\\\\\\\[]*\\\\\\\\]))*\\\\\\\\s*(\\\\\\\\{)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.be.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\};)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.latex\\\"}},\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.percentage.latex\\\"},{\\\"include\\\":\\\"source.gnuplot\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{((?:fboxv|boxedv|V|v|spv)erbatim\\\\\\\\*?)\\\\\\\\})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"contentName\\\":\\\"markup.raw.verbatim.latex\\\",\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{\\\\\\\\2\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.verbatim.latex\\\"},{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{VerbatimOut\\\\\\\\}\\\\\\\\{[^\\\\\\\\}]*\\\\\\\\})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"contentName\\\":\\\"markup.raw.verbatim.latex\\\",\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{\\\\\\\\VerbatimOut\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.verbatim.latex\\\"},{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{alltt\\\\\\\\})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"contentName\\\":\\\"markup.raw.verbatim.latex\\\",\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{alltt\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.alltt.latex\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)[A-Za-z]+\\\",\\\"name\\\":\\\"support.function.general.latex\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{([Cc]omment)\\\\\\\\})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"contentName\\\":\\\"comment.line.percentage.latex\\\",\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{\\\\\\\\2\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.verbatim.latex\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\s*)((\\\\\\\\\\\\\\\\)(?:href|hyperref|hyperimage))(?=\\\\\\\\[|\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.url.latex\\\"}},\\\"comment\\\":\\\"Captures \\\\\\\\command[option]{url}{optional category}{optional name}{text}\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"name\\\":\\\"meta.function.hyperlink.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multiline-optional-arg-no-highlight\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(\\\\\\\\{)([^}]*)(\\\\\\\\})(?:\\\\\\\\{[^}]*\\\\\\\\}){2}?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.underline.link.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"meta.variable.parameter.function.latex\\\",\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\G|(?<=\\\\\\\\]))(?:(\\\\\\\\{)[^}]*(\\\\\\\\}))?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"meta.variable.parameter.function.latex\\\",\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.url.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"},\\\"'\\\":{\\\"name\\\":\\\"markup.underline.link.latex\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\s*)((\\\\\\\\\\\\\\\\)url)(\\\\\\\\{)([^}]*)(\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.link.url.latex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"comment\\\":\\\"These two patterns match the \\\\\\\\begin{document} and \\\\\\\\end{document} commands, so that the environment matching pattern following them will ignore those commands.\\\",\\\"match\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{document\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.begin-document.latex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{document\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.end-document.latex\\\"},{\\\"begin\\\":\\\"(?:\\\\\\\\s*)((\\\\\\\\\\\\\\\\)begin)(\\\\\\\\{)((?:\\\\\\\\+?array|equation|(?:IEEE)?eqnarray|multline|align|aligned|alignat|alignedat|flalign|flaligned|flalignat|split|gather|gathered|\\\\\\\\+?cases|(?:display)?math|\\\\\\\\+?[a-zA-Z]*matrix|[pbBvV]?NiceMatrix|[pbBvV]?NiceArray|(?:(?:arg)?(?:mini|maxi)))(?:\\\\\\\\*|!)?)(\\\\\\\\})(\\\\\\\\s*\\\\\\\\n)?\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.be.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"contentName\\\":\\\"meta.math.block.latex support.class.math.block.environment.latex\\\",\\\"end\\\":\\\"(?:\\\\\\\\s*)((\\\\\\\\\\\\\\\\)end)(\\\\\\\\{)(\\\\\\\\4)(\\\\\\\\})(?:\\\\\\\\s*\\\\\\\\n)?\\\",\\\"name\\\":\\\"meta.function.environment.math.latex\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)&\\\",\\\"name\\\":\\\"keyword.control.equation.align.latex\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"keyword.control.equation.newline.latex\\\"},{\\\"include\\\":\\\"#definition-label\\\"},{\\\"include\\\":\\\"text.tex#math\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?:\\\\\\\\s*)(\\\\\\\\\\\\\\\\begin\\\\\\\\{empheq\\\\\\\\}(?:\\\\\\\\[.*\\\\\\\\])?)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"contentName\\\":\\\"meta.math.block.latex support.class.math.block.environment.latex\\\",\\\"end\\\":\\\"(?:\\\\\\\\s*)(\\\\\\\\\\\\\\\\end\\\\\\\\{empheq\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.environment.math.latex\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)&\\\",\\\"name\\\":\\\"keyword.control.equation.align.latex\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"keyword.control.equation.newline.latex\\\"},{\\\"include\\\":\\\"#definition-label\\\"},{\\\"include\\\":\\\"text.tex#math\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(tabular[xy*]?|xltabular|longtable|(?:long)?tabu|(?:long|tall)?tblr|NiceTabular[X*]?|booktabs)\\\\\\\\}(\\\\\\\\s*\\\\\\\\n)?)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"contentName\\\":\\\"meta.data.environment.tabular.latex\\\",\\\"end\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\end\\\\\\\\{(\\\\\\\\2)\\\\\\\\}(?:\\\\\\\\s*\\\\\\\\n)?)\\\",\\\"name\\\":\\\"meta.function.environment.tabular.latex\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)&\\\",\\\"name\\\":\\\"keyword.control.table.cell.latex\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"keyword.control.table.newline.latex\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(itemize|enumerate|description|list)\\\\\\\\})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{\\\\\\\\2\\\\\\\\}(?:\\\\\\\\s*\\\\\\\\n)?)\\\",\\\"name\\\":\\\"meta.function.environment.list.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{tikzpicture\\\\\\\\})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{tikzpicture\\\\\\\\}(?:\\\\\\\\s*\\\\\\\\n)?)\\\",\\\"name\\\":\\\"meta.function.environment.latex.tikz\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{frame\\\\\\\\})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{frame\\\\\\\\})\\\",\\\"name\\\":\\\"meta.function.environment.frame.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(mpost\\\\\\\\*?)\\\\\\\\})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{\\\\\\\\2\\\\\\\\}(?:\\\\\\\\s*\\\\\\\\n)?)\\\",\\\"name\\\":\\\"meta.function.environment.latex.mpost\\\"},{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{markdown\\\\\\\\})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"contentName\\\":\\\"meta.embedded.markdown_latex_combined\\\",\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{markdown\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex.markdown_latex_combined\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\s*\\\\\\\\\\\\\\\\begin\\\\\\\\{(\\\\\\\\w+\\\\\\\\*?)\\\\\\\\})\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#begin-env-tokenizer\\\"}]}},\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\end\\\\\\\\{\\\\\\\\2\\\\\\\\}(?:\\\\\\\\s*\\\\\\\\n)?)\\\",\\\"name\\\":\\\"meta.function.environment.general.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.begin.latex\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.function.general.latex\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.end.latex\\\"}},\\\"match\\\":\\\"((\\\\\\\\\\\\\\\\)(?:newcommand|renewcommand|(?:re)?newrobustcmd|DeclareRobustCommand))\\\\\\\\*?({)((\\\\\\\\\\\\\\\\)[^}]*)(})\\\"},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)marginpar)((?:\\\\\\\\[[^\\\\\\\\[]*?\\\\\\\\])*)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.marginpar.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.marginpar.begin.latex\\\"}},\\\"contentName\\\":\\\"meta.paragraph.margin.latex\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.marginpar.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)footnote)((?:\\\\\\\\[[^\\\\\\\\[]*?\\\\\\\\])*)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.footnote.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.footnote.begin.latex\\\"}},\\\"contentName\\\":\\\"entity.name.footnote.latex\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.footnote.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)emph)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.emph.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.emph.begin.latex\\\"}},\\\"contentName\\\":\\\"markup.italic.emph.latex\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.emph.end.latex\\\"}},\\\"name\\\":\\\"meta.function.emph.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)textit)(\\\\\\\\{)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.textit.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.textit.begin.latex\\\"}},\\\"comment\\\":\\\"We put the keyword in a capture and name this capture, so that disabling spell checking for \u201Ckeyword\u201D won't be inherited by the argument to \\\\\\\\textit{...}.\\\\n\\\\nPut specific matches for particular LaTeX keyword.functions before the last two more general functions\\\",\\\"contentName\\\":\\\"markup.italic.textit.latex\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.textit.end.latex\\\"}},\\\"name\\\":\\\"meta.function.textit.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)textbf)(\\\\\\\\{)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.textbf.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.textbf.begin.latex\\\"}},\\\"contentName\\\":\\\"markup.bold.textbf.latex\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.textbf.end.latex\\\"}},\\\"name\\\":\\\"meta.function.textbf.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)texttt)(\\\\\\\\{)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.texttt.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.texttt.begin.latex\\\"}},\\\"contentName\\\":\\\"markup.raw.texttt.latex\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.texttt.end.latex\\\"}},\\\"name\\\":\\\"meta.function.texttt.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#braces\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.item.latex\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.latex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)item\\\\\\\\b\\\",\\\"name\\\":\\\"meta.scope.item.latex\\\"},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)(?:[aA]uto|foot|full|no|ref|short|[tT]ext|[pP]aren|[sS]mart)?[cC]ite(?:al)?(?:p|s|t|author|year(?:par)?|title)?[ANP]*\\\\\\\\*?)((?:(?:\\\\\\\\([^\\\\\\\\)]*\\\\\\\\)){0,2}(?:\\\\\\\\[[^\\\\\\\\]]*\\\\\\\\]){0,2}\\\\\\\\{[\\\\\\\\p{Alphabetic}\\\\\\\\p{Number}_:.-]*\\\\\\\\})*)(<[^\\\\\\\\]<>]*>)?((?:\\\\\\\\[[^\\\\\\\\]]*\\\\\\\\])*)(\\\\\\\\{)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.cite.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.latex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#autocites-arg\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-angle-no-highlight\\\"}]},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket-no-highlight\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"name\\\":\\\"meta.citation.latex\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.percentage.tex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tex\\\"}},\\\"match\\\":\\\"((%).*)$\\\"},{\\\"match\\\":\\\"[\\\\\\\\p{Alphabetic}\\\\\\\\p{Number}:.-]+\\\",\\\"name\\\":\\\"constant.other.reference.citation.latex\\\"}]},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)bibentry)(\\\\\\\\{)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.cite.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"name\\\":\\\"meta.citation.latex\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[\\\\\\\\p{Alphabetic}\\\\\\\\p{Number}:.]+\\\",\\\"name\\\":\\\"constant.other.reference.citation.latex\\\"}]},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)(?:\\\\\\\\w*[rR]ef\\\\\\\\*?))(?:\\\\\\\\[[^\\\\\\\\]]*\\\\\\\\])?(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.ref.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"name\\\":\\\"meta.reference.label.latex\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[\\\\\\\\p{Alphabetic}\\\\\\\\p{Number}\\\\\\\\.,:/*!^_-]\\\",\\\"name\\\":\\\"constant.other.reference.label.latex\\\"}]},{\\\"include\\\":\\\"#definition-label\\\"},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)(?:verb|Verb|spverb)\\\\\\\\*?)\\\\\\\\s*((\\\\\\\\\\\\\\\\)scantokens)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.verb.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.verb.latex\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.begin.latex\\\"}},\\\"contentName\\\":\\\"markup.raw.verb.latex\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.latex\\\"}},\\\"name\\\":\\\"meta.function.verb.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.verb.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"4\\\":{\\\"name\\\":\\\"markup.raw.verb.latex\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"}},\\\"match\\\":\\\"((\\\\\\\\\\\\\\\\)(?:verb|Verb|spverb)\\\\\\\\*?)\\\\\\\\s*((?<=\\\\\\\\s)\\\\\\\\S|[^a-zA-Z])(.*?)(\\\\\\\\3|$)\\\",\\\"name\\\":\\\"meta.function.verb.latex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.verb.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"7\\\":{\\\"name\\\":\\\"markup.raw.verb.latex\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"10\\\":{\\\"name\\\":\\\"markup.raw.verb.latex\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"}},\\\"match\\\":\\\"((\\\\\\\\\\\\\\\\)(?:mint|mintinline))((?:\\\\\\\\[[^\\\\\\\\[]*?\\\\\\\\])?)(\\\\\\\\{)[a-zA-Z]*(\\\\\\\\})(?:(?:([^a-zA-Z\\\\\\\\{])(.*?)(\\\\\\\\6))|(?:(\\\\\\\\{)(.*?)(\\\\\\\\})))\\\",\\\"name\\\":\\\"meta.function.verb.latex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.verb.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"5\\\":{\\\"name\\\":\\\"markup.raw.verb.latex\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"8\\\":{\\\"name\\\":\\\"markup.raw.verb.latex\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"}},\\\"match\\\":\\\"((\\\\\\\\\\\\\\\\)[a-z]+inline)((?:\\\\\\\\[[^\\\\\\\\[]*?\\\\\\\\])?)(?:(?:([^a-zA-Z\\\\\\\\{])(.*?)(\\\\\\\\4))|(?:(\\\\\\\\{)(.*?)(\\\\\\\\})))\\\",\\\"name\\\":\\\"meta.function.verb.latex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.verb.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"5\\\":{\\\"name\\\":\\\"source.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"8\\\":{\\\"name\\\":\\\"source.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"}},\\\"match\\\":\\\"((\\\\\\\\\\\\\\\\)(?:(?:py|pycon|pylab|pylabcon|sympy|sympycon)[cv]?|pyq|pycq|pyif))((?:\\\\\\\\[[^\\\\\\\\[]*?\\\\\\\\])?)(?:(?:([^a-zA-Z\\\\\\\\{])(.*?)(\\\\\\\\4))|(?:(\\\\\\\\{)(.*?)(\\\\\\\\})))\\\",\\\"name\\\":\\\"meta.function.verb.latex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.verb.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"5\\\":{\\\"name\\\":\\\"source.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.julia\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"},\\\"8\\\":{\\\"name\\\":\\\"source.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.julia\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.verb.latex\\\"}},\\\"match\\\":\\\"((\\\\\\\\\\\\\\\\)(?:jl|julia)[cv]?)((?:\\\\\\\\[[^\\\\\\\\[]*?\\\\\\\\])?)(?:(?:([^a-zA-Z\\\\\\\\{])(.*?)(\\\\\\\\4))|(?:(\\\\\\\\{)(.*?)(\\\\\\\\})))\\\",\\\"name\\\":\\\"meta.function.verb.latex\\\"},{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)(?:directlua|luadirect))(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.verb.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"contentName\\\":\\\"source.lua\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.lua\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:newline|pagebreak|clearpage|linebreak|pause)(?:\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.control.layout.latex\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.latex\\\"}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.latex\\\"}},\\\"name\\\":\\\"meta.math.block.latex support.class.math.block.environment.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#math\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.latex\\\"}},\\\"end\\\":\\\"\\\\\\\\$\\\\\\\\$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.latex\\\"}},\\\"name\\\":\\\"meta.math.block.latex support.class.math.block.environment.latex\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\$\\\",\\\"name\\\":\\\"constant.character.escape.latex\\\"},{\\\"include\\\":\\\"text.tex#math\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.tex\\\"}},\\\"end\\\":\\\"\\\\\\\\$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.tex\\\"}},\\\"name\\\":\\\"meta.math.block.tex support.class.math.block.tex\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\$\\\",\\\"name\\\":\\\"constant.character.escape.latex\\\"},{\\\"include\\\":\\\"text.tex#math\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.latex\\\"}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.latex\\\"}},\\\"name\\\":\\\"meta.math.block.latex support.class.math.block.environment.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex#math\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.latex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)(text(s(terling|ixoldstyle|urd|e(ction|venoldstyle|rvicemark))|yen|n(ineoldstyle|umero|aira)|c(ircledP|o(py(left|right)|lonmonetary)|urrency|e(nt(oldstyle)?|lsius))|t(hree(superior|oldstyle|quarters(emdash)?)|i(ldelow|mes)|w(o(superior|oldstyle)|elveudash)|rademark)|interrobang(down)?|zerooldstyle|o(hm|ne(superior|half|oldstyle|quarter)|penbullet|rd(feminine|masculine))|d(i(scount|ed|v(orced)?)|o(ng|wnarrow|llar(oldstyle)?)|egree|agger(dbl)?|blhyphen(char)?)|uparrow|p(ilcrow|e(so|r(t(housand|enthousand)|iodcentered))|aragraph|m)|e(stimated|ightoldstyle|uro)|quotes(traight(dblbase|base)|ingle)|f(iveoldstyle|ouroldstyle|lorin|ractionsolidus)|won|l(not|ira|e(ftarrow|af)|quill|angle|brackdbl)|a(s(cii(caron|dieresis|acute|grave|macron|breve)|teriskcentered)|cutedbl)|r(ightarrow|e(cipe|ferencemark|gistered)|quill|angle|brackdbl)|g(uarani|ravedbl)|m(ho|inus|u(sicalnote)?|arried)|b(igcircle|orn|ullet|lank|a(ht|rdbl)|rokenbar)))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.character.latex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.latex\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)(?:[cgl]_+[_\\\\\\\\p{Alphabetic}@]+_[a-z]+|[qs]_[_\\\\\\\\p{Alphabetic}@]+[\\\\\\\\p{Alphabetic}@])\\\",\\\"name\\\":\\\"variable.other.latex3.latex\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.column-specials.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.column-specials.end.latex\\\"}},\\\"match\\\":\\\"(?:<|>)(\\\\\\\\{)\\\\\\\\$(\\\\\\\\})\\\",\\\"name\\\":\\\"meta.column-specials.latex\\\"},{\\\"include\\\":\\\"text.tex\\\"}],\\\"repository\\\":{\\\"autocites-arg\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-parenthesis-no-highlight\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket-no-highlight\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.other.reference.citation.latex\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#autocites-arg\\\"}]}},\\\"match\\\":\\\"((?:\\\\\\\\([^\\\\\\\\)]*\\\\\\\\)){0,2})((?:\\\\\\\\[[^\\\\\\\\]]*\\\\\\\\]){0,2})(\\\\\\\\{)([\\\\\\\\p{Alphabetic}\\\\\\\\p{Number}_:.-]+)(\\\\\\\\})(.*)\\\"}]},\\\"begin-env-tokenizer\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.be.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.begin.latex\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.end.latex\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"},\\\"10\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"match\\\":\\\"\\\\\\\\s*((\\\\\\\\\\\\\\\\)(?:begin|end))(\\\\\\\\{)([a-zA-Z]*\\\\\\\\*?)(\\\\\\\\})(?:(\\\\\\\\[)([^\\\\\\\\]]*)(\\\\\\\\])){,2}(?:(\\\\\\\\{)([^{}]*)(\\\\\\\\}))?\\\"},\\\"definition-label\\\":{\\\"begin\\\":\\\"((\\\\\\\\\\\\\\\\)z?label)((?:\\\\\\\\[[^\\\\\\\\[]*?\\\\\\\\])*)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.label.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.latex\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#optional-arg-bracket\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.latex\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.latex\\\"}},\\\"name\\\":\\\"meta.definition.label.latex\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[\\\\\\\\p{Alphabetic}\\\\\\\\p{Number}\\\\\\\\.,:/*!^_-]\\\",\\\"name\\\":\\\"variable.parameter.definition.label.latex\\\"}]},\\\"multiline-optional-arg\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.begin.latex\\\"}},\\\"contentName\\\":\\\"variable.parameter.function.latex\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.end.latex\\\"}},\\\"name\\\":\\\"meta.parameter.optional.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"multiline-optional-arg-no-highlight\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.begin.latex\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.end.latex\\\"}},\\\"name\\\":\\\"meta.parameter.optional.latex\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"optional-arg-angle-no-highlight\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.end.latex\\\"}},\\\"match\\\":\\\"(<)[^<]*?(>)\\\",\\\"name\\\":\\\"meta.parameter.optional.latex\\\"}]},\\\"optional-arg-bracket\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.end.latex\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)([^\\\\\\\\[]*?)(\\\\\\\\])\\\",\\\"name\\\":\\\"meta.parameter.optional.latex\\\"}]},\\\"optional-arg-bracket-no-highlight\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.end.latex\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)[^\\\\\\\\[]*?(\\\\\\\\])\\\",\\\"name\\\":\\\"meta.parameter.optional.latex\\\"}]},\\\"optional-arg-parenthesis\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.latex\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.end.latex\\\"}},\\\"match\\\":\\\"(\\\\\\\\()([^\\\\\\\\(]*?)(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.parameter.optional.latex\\\"}]},\\\"optional-arg-parenthesis-no-highlight\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.begin.latex\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.optional.end.latex\\\"}},\\\"match\\\":\\\"(\\\\\\\\()[^\\\\\\\\(]*?(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.parameter.optional.latex\\\"}]}},\\\"scopeName\\\":\\\"text.tex.latex\\\",\\\"embeddedLangs\\\":[\\\"tex\\\"],\\\"embeddedLangsLazy\\\":[\\\"shellscript\\\",\\\"css\\\",\\\"gnuplot\\\",\\\"haskell\\\",\\\"html\\\",\\\"java\\\",\\\"julia\\\",\\\"javascript\\\",\\\"lua\\\",\\\"python\\\",\\\"ruby\\\",\\\"rust\\\",\\\"typescript\\\",\\\"xml\\\",\\\"yaml\\\",\\\"scala\\\"]}\"))\n\nexport default [\n...tex,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Lean 4\\\",\\\"fileTypes\\\":[],\\\"name\\\":\\\"lean\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b(Prop|Type|Sort)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.lean4\\\"},{\\\"match\\\":\\\"\\\\\\\\battribute\\\\\\\\b\\\\\\\\s*\\\\\\\\[[^\\\\\\\\]]*\\\\\\\\]\\\",\\\"name\\\":\\\"storage.modifier.lean4\\\"},{\\\"match\\\":\\\"@\\\\\\\\[[^\\\\\\\\]]*\\\\\\\\]\\\",\\\"name\\\":\\\"storage.modifier.lean4\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(global|local|scoped|partial|unsafe|private|protected|noncomputable)(?!\\\\\\\\.)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.lean4\\\"},{\\\"match\\\":\\\"\\\\\\\\b(sorry|admit|stop)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.lean4\\\"},{\\\"match\\\":\\\"#(print|eval|reduce|check|check_failure)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.lean4\\\"},{\\\"match\\\":\\\"\\\\\\\\bderiving\\\\\\\\s+instance\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.command.lean4\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(inductive|coinductive|structure|theorem|axiom|abbrev|lemma|def|instance|class|constant)\\\\\\\\b\\\\\\\\s+(\\\\\\\\{[^}]*\\\\\\\\})?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.definitioncommand.lean4\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\bwith\\\\\\\\b|\\\\\\\\bextends\\\\\\\\b|\\\\\\\\bwhere\\\\\\\\b|[:\\\\\\\\|\\\\\\\\(\\\\\\\\[\\\\\\\\{\u2983<>])\\\",\\\"name\\\":\\\"meta.definitioncommand.lean4\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#definitionName\\\"},{\\\"match\\\":\\\",\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(theorem|show|have|from|suffices|nomatch|def|class|structure|instance|set_option|initialize|builtin_initialize|example|inductive|coinductive|axiom|constant|universe|universes|variable|variables|import|open|export|theory|prelude|renaming|hiding|exposing|do|by|let|extends|mutual|mut|where|rec|syntax|macro_rules|macro|deriving|fun|section|namespace|end|infix|infixl|infixr|postfix|prefix|notation|abbrev|if|then|else|calc|match|with|for|in|unless|try|catch|finally|return|continue|break)(?!\\\\\\\\.)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.lean4\\\"},{\\\"begin\\\":\\\"\u00AB\\\",\\\"contentName\\\":\\\"entity.name.lean4\\\",\\\"end\\\":\\\"\u00BB\\\"},{\\\"begin\\\":\\\"(s!)\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.lean4\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.interpolated.lean4\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.lean4\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.lean4\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\"ntr']\\\",\\\"name\\\":\\\"constant.character.escape.lean4\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9A-Fa-f][0-9A-Fa-f]\\\",\\\"name\\\":\\\"constant.character.escape.lean4\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]\\\",\\\"name\\\":\\\"constant.character.escape.lean4\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.lean4\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\"ntr']\\\",\\\"name\\\":\\\"constant.character.escape.lean4\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9A-Fa-f][0-9A-Fa-f]\\\",\\\"name\\\":\\\"constant.character.escape.lean4\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]\\\",\\\"name\\\":\\\"constant.character.escape.lean4\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.lean4\\\"},{\\\"match\\\":\\\"'[^\\\\\\\\\\\\\\\\']'\\\",\\\"name\\\":\\\"string.quoted.single.lean4\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.lean4\\\"}},\\\"match\\\":\\\"'(\\\\\\\\\\\\\\\\(x[0-9A-Fa-f][0-9A-Fa-f]|u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]|.))'\\\",\\\"name\\\":\\\"string.quoted.single.lean4\\\"},{\\\"match\\\":\\\"`+[^\\\\\\\\[(]\\\\\\\\S+\\\",\\\"name\\\":\\\"entity.name.lean4\\\"},{\\\"match\\\":\\\"\\\\\\\\b([0-9]+|0([xX][0-9a-fA-F]+)|[-]?(0|[1-9][0-9]*)(\\\\\\\\.[0-9]+)?([eE][+-]?[0-9]+)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.lean4\\\"}],\\\"repository\\\":{\\\"blockComment\\\":{\\\"begin\\\":\\\"/-\\\",\\\"end\\\":\\\"-/\\\",\\\"name\\\":\\\"comment.block.lean4\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lean4.markdown\\\"},{\\\"include\\\":\\\"#blockComment\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#dashComment\\\"},{\\\"include\\\":\\\"#docComment\\\"},{\\\"include\\\":\\\"#stringBlock\\\"},{\\\"include\\\":\\\"#modDocComment\\\"},{\\\"include\\\":\\\"#blockComment\\\"}]},\\\"dashComment\\\":{\\\"begin\\\":\\\"--\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-dash.lean4\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lean4.markdown\\\"}]},\\\"definitionName\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[^:\u00AB\u00BB\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}[:space:]=\u2192\u03BB\u2200?][^:\u00AB\u00BB\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}[:space:]]*\\\",\\\"name\\\":\\\"entity.name.function.lean4\\\"},{\\\"begin\\\":\\\"\u00AB\\\",\\\"contentName\\\":\\\"entity.name.function.lean4\\\",\\\"end\\\":\\\"\u00BB\\\"}]},\\\"docComment\\\":{\\\"begin\\\":\\\"/--\\\",\\\"end\\\":\\\"-/\\\",\\\"name\\\":\\\"comment.block.documentation.lean4\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lean4.markdown\\\"},{\\\"include\\\":\\\"#blockComment\\\"}]},\\\"modDocComment\\\":{\\\"begin\\\":\\\"/-!\\\",\\\"end\\\":\\\"-/\\\",\\\"name\\\":\\\"comment.block.documentation.lean4\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lean4.markdown\\\"},{\\\"include\\\":\\\"#blockComment\\\"}]}},\\\"scopeName\\\":\\\"source.lean4\\\",\\\"aliases\\\":[\\\"lean4\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Less\\\",\\\"name\\\":\\\"less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#less-namespace-accessors\\\"},{\\\"include\\\":\\\"#less-extend\\\"},{\\\"include\\\":\\\"#at-rules\\\"},{\\\"include\\\":\\\"#less-variable-assignment\\\"},{\\\"include\\\":\\\"#property-list\\\"},{\\\"include\\\":\\\"#selector\\\"}],\\\"repository\\\":{\\\"angle-type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.less\\\"}},\\\"match\\\":\\\"(?i:[-+]?(?:(?:\\\\\\\\d*\\\\\\\\.\\\\\\\\d+(?:[eE](?:[-+]?\\\\\\\\d+))*)|(?:[-+]?\\\\\\\\d+))(deg|grad|rad|turn))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.less\\\"},\\\"arbitrary-repetition\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(?:(,))\\\"},\\\"at-charset\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)charset\\\\\\\\b)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.charset.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((?=;|$))\\\",\\\"name\\\":\\\"meta.at-rule.charset.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal-string\\\"}]},\\\"at-container\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\s*@container)\\\",\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.less\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"((@)container)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.container.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.container.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.at-rule.container.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(?=[^{;])\\\",\\\"end\\\":\\\"\\\\\\\\s*(?=[{;])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(not|and|or)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.comparison.less\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.at-rule.container-query.less\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.property-name.less\\\"}},\\\"match\\\":\\\"\\\\\\\\b(aspect-ratio|block-size|height|inline-size|orientation|width)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.size-feature.less\\\"},{\\\"match\\\":\\\"((<|>)=?)|=|\\\\\\\\/\\\",\\\"name\\\":\\\"keyword.operator.comparison.less\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"},{\\\"match\\\":\\\"portrait|landscape\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"include\\\":\\\"#numeric-values\\\"},{\\\"match\\\":\\\"\\\\\\\\/\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.less\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#less-variable-interpolation\\\"}]},{\\\"include\\\":\\\"#style-function\\\"},{\\\"match\\\":\\\"--|(?:-?(?:(?:[a-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R]))))(?:(?:[-\\\\\\\\da-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R])))*\\\",\\\"name\\\":\\\"variable.parameter.container-name.css\\\"},{\\\"include\\\":\\\"#arbitrary-repetition\\\"},{\\\"include\\\":\\\"#less-variables\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rule-list-body\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"at-counter-style\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)counter-style\\\\\\\\b)\\\\\\\\s+(?:(?i:\\\\\\\\b(decimal|none)\\\\\\\\b)|(-?(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*))\\\\\\\\s*(?=\\\\\\\\{|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.counter-style.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.counter-style-name.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.other.counter-style-name.css\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.less\\\"}},\\\"name\\\":\\\"meta.at-rule.counter-style.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#rule-list\\\"}]},\\\"at-custom-media\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\s*@custom-media\\\\\\\\b)\\\",\\\"end\\\":\\\"\\\\\\\\s*(?=;)\\\",\\\"name\\\":\\\"meta.at-rule.custom-media.less\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.property-list.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*;\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.custom-media.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.custom-media.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*((@)custom-media)(?=.*?)\\\"},{\\\"include\\\":\\\"#media-query-list\\\"}]},\\\"at-font-face\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)font-face)\\\\\\\\s*(?=\\\\\\\\{|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.font-face.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.less\\\"}},\\\"name\\\":\\\"meta.at-rule.font-face.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#rule-list\\\"}]},\\\"at-import\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)import\\\\\\\\b)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.import.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"}},\\\"end\\\":\\\"\\\\\\\\;\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"name\\\":\\\"meta.at-rule.import.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#url-function\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"begin\\\":\\\"(?<=([\\\\\\\"'])|([\\\\\\\"']\\\\\\\\)))\\\\\\\\s*\\\",\\\"end\\\":\\\"\\\\\\\\s*(?=\\\\\\\\;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#media-query\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.group.less\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"reference|inline|less|css|once|multiple|optional\\\",\\\"name\\\":\\\"constant.language.import-directive.less\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"}]},{\\\"include\\\":\\\"#literal-string\\\"}]},\\\"at-keyframes\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)keyframes)(?=.*?\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.keyframe.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.constant.keyframe.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.less\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.keyframe-selector.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.unit.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(?:(from|to)|((?:\\\\\\\\.[0-9]+|[0-9]+(?:\\\\\\\\.[0-9]*)?)(%)))\\\\\\\\s*,?\\\\\\\\s*\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(?=[^{;])\\\",\\\"end\\\":\\\"\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.at-rule.keyframe.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#keyframe-name\\\"},{\\\"include\\\":\\\"#arbitrary-repetition\\\"}]}]},\\\"at-media\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\s*@media\\\\\\\\b)\\\",\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.less\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*((@)media)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.media.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.media.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.at-rule.media.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#media-query-list\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rule-list-body\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"at-namespace\\\":{\\\"begin\\\":\\\"\\\\\\\\s*((@)namespace)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.namespace.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"}},\\\"end\\\":\\\"\\\\\\\\;\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"name\\\":\\\"meta.at-rule.namespace.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#url-function\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"match\\\":\\\"(-?(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*)\\\",\\\"name\\\":\\\"entity.name.constant.namespace-prefix.less\\\"}]},\\\"at-page\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.page.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*((@)page)\\\\\\\\s*(?:(:)(first|left|right))?\\\\\\\\s*(?=\\\\\\\\{|$)\\\",\\\"name\\\":\\\"meta.at-rule.page.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#rule-list\\\"}]},\\\"at-rules\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#at-charset\\\"},{\\\"include\\\":\\\"#at-container\\\"},{\\\"include\\\":\\\"#at-counter-style\\\"},{\\\"include\\\":\\\"#at-custom-media\\\"},{\\\"include\\\":\\\"#at-font-face\\\"},{\\\"include\\\":\\\"#at-media\\\"},{\\\"include\\\":\\\"#at-import\\\"},{\\\"include\\\":\\\"#at-keyframes\\\"},{\\\"include\\\":\\\"#at-namespace\\\"},{\\\"include\\\":\\\"#at-page\\\"},{\\\"include\\\":\\\"#at-supports\\\"},{\\\"include\\\":\\\"#at-viewport\\\"}]},\\\"at-supports\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\s*@supports\\\\\\\\b)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*)(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.less\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*((@)supports)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.supports.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.supports.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.at-rule.supports.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#at-supports-operators\\\"},{\\\"include\\\":\\\"#at-supports-parens\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.property-list.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rule-list-body\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"at-supports-operators\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:and|or|not)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logic.less\\\"},\\\"at-supports-parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.group.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#at-supports-operators\\\"},{\\\"include\\\":\\\"#at-supports-parens\\\"},{\\\"include\\\":\\\"#rule-list-body\\\"}]},\\\"attr-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(attr)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.filter.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qualified-name\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"begin\\\":\\\"(-?(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*)\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"entity.other.attribute-name.less\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((?i:em|ex|ch|rem)|(?i:vw|vh|vmin|vmax)|(?i:cm|mm|q|in|pt|pc|px|fr)|(?i:deg|grad|rad|turn)|(?i:s|ms)|(?i:Hz|kHz)|(?i:dpi|dpcm|dppx))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.unit.less\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#property-value-constants\\\"},{\\\"include\\\":\\\"#numeric-values\\\"}]},{\\\"include\\\":\\\"#color-values\\\"}]}]},\\\"builtin-functions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attr-function\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#color-functions\\\"},{\\\"include\\\":\\\"#counter-functions\\\"},{\\\"include\\\":\\\"#cross-fade-function\\\"},{\\\"include\\\":\\\"#cubic-bezier-function\\\"},{\\\"include\\\":\\\"#filter-function\\\"},{\\\"include\\\":\\\"#fit-content-function\\\"},{\\\"include\\\":\\\"#format-function\\\"},{\\\"include\\\":\\\"#gradient-functions\\\"},{\\\"include\\\":\\\"#grid-repeat-function\\\"},{\\\"include\\\":\\\"#image-function\\\"},{\\\"include\\\":\\\"#less-functions\\\"},{\\\"include\\\":\\\"#local-function\\\"},{\\\"include\\\":\\\"#minmax-function\\\"},{\\\"include\\\":\\\"#regexp-function\\\"},{\\\"include\\\":\\\"#shape-functions\\\"},{\\\"include\\\":\\\"#steps-function\\\"},{\\\"include\\\":\\\"#symbols-function\\\"},{\\\"include\\\":\\\"#transform-functions\\\"},{\\\"include\\\":\\\"#url-function\\\"},{\\\"include\\\":\\\"#var-function\\\"}]},\\\"calc-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(calc)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.calc.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-strings\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#attr-function\\\"},{\\\"include\\\":\\\"#less-math\\\"},{\\\"include\\\":\\\"#relative-color\\\"}]}]},\\\"color-adjuster-operators\\\":{\\\"match\\\":\\\"[\\\\\\\\-\\\\\\\\+*](?=\\\\\\\\s+)\\\",\\\"name\\\":\\\"keyword.operator.less\\\"},\\\"color-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(rgba?)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color.less\\\"}},\\\"comment\\\":\\\"rgb(), rgba()\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-strings\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#value-separator\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#number-type\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(hsla|hsl|hwb|oklab|oklch|lab|lch)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color.less\\\"}},\\\"comment\\\":\\\"hsla, hsl, hwb, oklab, oklch, lab, lch\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#less-strings\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#angle-type\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#number-type\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#value-separator\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(light-dark)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color.less\\\"}},\\\"comment\\\":\\\"light-dark()\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"}]}]},{\\\"include\\\":\\\"#less-color-functions\\\"}]},\\\"color-values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#color-functions\\\"},{\\\"include\\\":\\\"#less-functions\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"match\\\":\\\"\\\\\\\\b(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.color.w3c-standard-color-name.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|rebeccapurple|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato|turquoise|violet|wheat|whitesmoke|yellowgreen)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.color.w3c-extended-color-keywords.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b((?i)currentColor|transparent)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.color.w3c-special-color-keyword.less\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.less\\\"}},\\\"match\\\":\\\"(#)(\\\\\\\\h{3}|\\\\\\\\h{4}|\\\\\\\\h{6}|\\\\\\\\h{8})\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.color.rgb-value.less\\\"},{\\\"include\\\":\\\"#relative-color\\\"}]},\\\"comma-delimiter\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(,)\\\\\\\\s*\\\"},\\\"comment-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.less\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.less\\\"}},\\\"name\\\":\\\"comment.block.less\\\"},{\\\"include\\\":\\\"#comment-line\\\"}]},\\\"comment-line\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.less\\\"}},\\\"match\\\":\\\"(//).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.less\\\"},\\\"counter-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(counter)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.filter.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-strings\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"match\\\":\\\"(?:--(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))+|-?(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*)\\\",\\\"name\\\":\\\"entity.other.counter-name.less\\\"},{\\\"begin\\\":\\\"(?=,)\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"match\\\":\\\"\\\\\\\\b((?xi:arabic-indic|armenian|bengali|cambodian|circle|cjk-decimal|cjk-earthly-branch|cjk-heavenly-stem|decimal-leading-zero|decimal|devanagari|disclosure-closed|disclosure-open|disc|ethiopic-numeric|georgian|gujarati|gurmukhi|hebrew|hiragana-iroha|hiragana|japanese-formal|japanese-informal|kannada|katakana-iroha|katakana|khmer|korean-hangul-formal|korean-hanja-formal|korean-hanja-informal|lao|lower-alpha|lower-armenian|lower-greek|lower-latin|lower-roman|malayalam|mongolian|myanmar|oriya|persian|simp-chinese-formal|simp-chinese-informal|square|tamil|telugu|thai|tibetan|trad-chinese-formal|trad-chinese-informal|upper-alpha|upper-armenian|upper-latin|upper-roman)|none)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.counter-style.less\\\"}]}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(counters)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.filter.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(-?(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*)\\\",\\\"name\\\":\\\"entity.other.counter-name.less string.unquoted.less\\\"},{\\\"begin\\\":\\\"(?=,)\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-strings\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"match\\\":\\\"\\\\\\\\b((?xi:arabic-indic|armenian|bengali|cambodian|circle|cjk-decimal|cjk-earthly-branch|cjk-heavenly-stem|decimal-leading-zero|decimal|devanagari|disclosure-closed|disclosure-open|disc|ethiopic-numeric|georgian|gujarati|gurmukhi|hebrew|hiragana-iroha|hiragana|japanese-formal|japanese-informal|kannada|katakana-iroha|katakana|khmer|korean-hangul-formal|korean-hanja-formal|korean-hanja-informal|lao|lower-alpha|lower-armenian|lower-greek|lower-latin|lower-roman|malayalam|mongolian|myanmar|oriya|persian|simp-chinese-formal|simp-chinese-informal|square|tamil|telugu|thai|tibetan|trad-chinese-formal|trad-chinese-informal|upper-alpha|upper-armenian|upper-latin|upper-roman)|none)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.counter-style.less\\\"}]}]}]}]},\\\"cross-fade-function\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(cross-fade)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.image.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#image-type\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#unquoted-string\\\"}]}]}]},\\\"cubic-bezier-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(cubic-bezier)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.timing.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"contentName\\\":\\\"meta.group.less\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-functions\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#number-type\\\"}]},\\\"custom-property-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.custom-property.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.custom-property.name.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(--)((?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))+)\\\",\\\"name\\\":\\\"support.type.custom-property.less\\\"},\\\"dimensions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#angle-type\\\"},{\\\"include\\\":\\\"#frequency-type\\\"},{\\\"include\\\":\\\"#time-type\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#length-type\\\"}]},\\\"filter-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(filter)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.filter.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.group.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#image-type\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#filter-functions\\\"}]}]},\\\"filter-functions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#less-functions\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(blur)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.filter.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#length-type\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(brightness|contrast|grayscale|invert|opacity|saturate|sepia)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.filter.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#number-type\\\"},{\\\"include\\\":\\\"#less-functions\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(drop-shadow)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.filter.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#color-values\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(hue-rotate)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.filter.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#angle-type\\\"}]}]}]},\\\"fit-content-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(fit-content)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.grid.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#length-type\\\"}]}]},\\\"format-function\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(format)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.format.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal-string\\\"}]}]}]},\\\"frequency-type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.less\\\"}},\\\"match\\\":\\\"(?i:[-+]?(?:(?:\\\\\\\\d*\\\\\\\\.\\\\\\\\d+(?:[eE](?:[-+]?\\\\\\\\d+))*)|(?:[-+]?\\\\\\\\d+))(Hz|kHz))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.less\\\"},\\\"global-property-values\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:initial|inherit|unset|revert-layer|revert)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},\\\"gradient-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((?:repeating-)?linear-gradient)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.gradient.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#angle-type\\\"},{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"match\\\":\\\"\\\\\\\\bto\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(top|right|bottom|left)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b((?:repeating-)?radial-gradient)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.gradient.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"match\\\":\\\"\\\\\\\\b(at|circle|ellipse)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(top|right|bottom|left|center|(farthest|closest)-(corner|side))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"}]}]}]},\\\"grid-repeat-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(repeat)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.grid.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#minmax-function\\\"},{\\\"include\\\":\\\"#integer-type\\\"},{\\\"match\\\":\\\"\\\\\\\\b(auto-(fill|fit))\\\\\\\\b\\\",\\\"name\\\":\\\"support.keyword.repetitions.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(((max|min)-content)|auto)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"}]}]},\\\"image-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(image)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.image.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#image-type\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#unquoted-string\\\"}]}]},\\\"image-type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#cross-fade-function\\\"},{\\\"include\\\":\\\"#gradient-functions\\\"},{\\\"include\\\":\\\"#image-function\\\"},{\\\"include\\\":\\\"#url-function\\\"}]},\\\"important\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.less\\\"}},\\\"match\\\":\\\"(\\\\\\\\!)\\\\\\\\s*important\\\",\\\"name\\\":\\\"keyword.other.important.less\\\"},\\\"integer-type\\\":{\\\"match\\\":\\\"(?:[-+]?\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.less\\\"},\\\"keyframe-name\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(-?(?:[_a-z]|[^\\\\\\\\x{00}-\\\\\\\\x{7F}]|(?:(:?\\\\\\\\\\\\\\\\[0-9a-f]{1,6}(\\\\\\\\r\\\\\\\\n|[\\\\\\\\s\\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\f])?)|\\\\\\\\\\\\\\\\[^\\\\\\\\r\\\\\\\\n\\\\\\\\f0-9a-f]))(?:[_a-z0-9-]|[^\\\\\\\\x{00}-\\\\\\\\x{7F}]|(?:(:?\\\\\\\\\\\\\\\\[0-9a-f]{1,6}(\\\\\\\\r\\\\\\\\n|[\\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\f])?)|\\\\\\\\\\\\\\\\[^\\\\\\\\r\\\\\\\\n\\\\\\\\f0-9a-f]))*)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.animation-name.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?:(,)|(?=[{;]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.less\\\"}}},\\\"length-type\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.less\\\"}},\\\"match\\\":\\\"(?:[-+]?)(?:\\\\\\\\d+\\\\\\\\.\\\\\\\\d+|\\\\\\\\.?\\\\\\\\d+)(?:[eE][-+]?\\\\\\\\d+)?(em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|m|q|in|pt|pc|px|fr|dpi|dpcm|dppx|x)\\\",\\\"name\\\":\\\"constant.numeric.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:[-+]?)0\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.less\\\"}]},\\\"less-boolean-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(boolean)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.boolean.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-logical-comparisons\\\"}]}]},\\\"less-color-blend-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(multiply|screen|overlay|(soft|hard)light|difference|exclusion|negation|average)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color-blend.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#color-values\\\"}]}]}]},\\\"less-color-channel-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(hue|saturation|lightness|hsv(hue|saturation|value)|red|green|blue|alpha|luma|luminance)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color-definition.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#color-values\\\"}]}]}]},\\\"less-color-definition-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(argb)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color-definition.less\\\"}},\\\"comment\\\":\\\"argb()\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#color-values\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(hsva?)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color.less\\\"}},\\\"comment\\\":\\\"hsva(), hsv()\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#integer-type\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#number-type\\\"},{\\\"include\\\":\\\"#less-strings\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"}]}]}]},\\\"less-color-functions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#less-color-blend-functions\\\"},{\\\"include\\\":\\\"#less-color-channel-functions\\\"},{\\\"include\\\":\\\"#less-color-definition-functions\\\"},{\\\"include\\\":\\\"#less-color-operation-functions\\\"}]},\\\"less-color-operation-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(fade|shade|tint)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color-operation.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#percentage-type\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(spin)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color-operation.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#number-type\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(((de)?saturate)|((light|dark)en)|(fade(in|out)))(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color-operation.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"match\\\":\\\"\\\\\\\\brelative\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.relative.less\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(contrast)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color-operation.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#percentage-type\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(greyscale)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color-operation.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#color-values\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(mix)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color-operation.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#less-math\\\"},{\\\"include\\\":\\\"#percentage-type\\\"}]}]}]},\\\"less-extend\\\":{\\\"begin\\\":\\\"(:)(extend)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.extend.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\ball\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.all.less\\\"},{\\\"include\\\":\\\"#selectors\\\"}]}]},\\\"less-functions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#less-boolean-function\\\"},{\\\"include\\\":\\\"#less-color-functions\\\"},{\\\"include\\\":\\\"#less-if-function\\\"},{\\\"include\\\":\\\"#less-list-functions\\\"},{\\\"include\\\":\\\"#less-math-functions\\\"},{\\\"include\\\":\\\"#less-misc-functions\\\"},{\\\"include\\\":\\\"#less-string-functions\\\"},{\\\"include\\\":\\\"#less-type-functions\\\"}]},\\\"less-if-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(if)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.if.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-mixin-guards\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#property-values\\\"}]}]},\\\"less-list-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(length)(?=\\\\\\\\()\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.length.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(extract)(?=\\\\\\\\()\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.extract.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#integer-type\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(range)(?=\\\\\\\\()\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.range.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#integer-type\\\"}]}]}]},\\\"less-logical-comparisons\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(=|((<|>)=?))\\\\\\\\s*\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.group.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-logical-comparisons\\\"}]},{\\\"match\\\":\\\"\\\\\\\\btrue|false\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.less\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.less\\\"},{\\\"include\\\":\\\"#property-values\\\"},{\\\"include\\\":\\\"#selectors\\\"},{\\\"include\\\":\\\"#unquoted-string\\\"}]},\\\"less-math\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[-\\\\\\\\+\\\\\\\\*\\\\\\\\/]\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.less\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.group.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-math\\\"}]},{\\\"include\\\":\\\"#numeric-values\\\"},{\\\"include\\\":\\\"#less-variables\\\"}]},\\\"less-math-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(ceil|floor|percentage|round|sqrt|abs|a?(sin|cos|tan))(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.math.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#numeric-values\\\"}]}]},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"support.function.math.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"match\\\":\\\"((pi)(\\\\\\\\()(\\\\\\\\)))\\\",\\\"name\\\":\\\"meta.function-call.less\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(pow|m(od|in|ax))(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.math.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#numeric-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"}]}]}]},\\\"less-misc-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(color)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal-string\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(image-(size|width|height))(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.image.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#unquoted-string\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(convert|unit)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.convert.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#numeric-values\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"match\\\":\\\"((c|m)?m|in|p(t|c|x)|m?s|g?rad|deg|turn|%|r?em|ex|ch)\\\",\\\"name\\\":\\\"keyword.other.unit.less\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(data-uri)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.data-uri.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(?:(,))\\\"}]}]},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"match\\\":\\\"\\\\\\\\b(default(\\\\\\\\()(\\\\\\\\)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.default.less\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(get-unit)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.get-unit.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#dimensions\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(svg-gradient)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.svg-gradient.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#angle-type\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"match\\\":\\\"\\\\\\\\bto\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(top|right|bottom|left|center)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(at|circle|ellipse)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.less\\\"}]}]}]},\\\"less-mixin-guards\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(and|not|or)?\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.group.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variable-comparison\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.group.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"match\\\":\\\"default((\\\\\\\\()(\\\\\\\\)))\\\",\\\"name\\\":\\\"support.function.default.less\\\"},{\\\"include\\\":\\\"#property-values\\\"},{\\\"include\\\":\\\"#less-logical-comparisons\\\"},{\\\"include\\\":\\\"$self\\\"}]}]}]},\\\"less-namespace-accessors\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\s*when\\\\\\\\b)\\\",\\\"end\\\":\\\"\\\\\\\\s*(?:(,)|(?=[{;]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.less\\\"}},\\\"name\\\":\\\"meta.conditional.guarded-namespace.less\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(when)(?=.*?)\\\"},{\\\"include\\\":\\\"#less-mixin-guards\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.property-list.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.block.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rule-list-body\\\"}]},{\\\"include\\\":\\\"#selectors\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"name\\\":\\\"meta.group.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variable-assignment\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#property-values\\\"},{\\\"include\\\":\\\"#rule-list-body\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"match\\\":\\\"(;)|(?=[})])\\\"}]},\\\"less-string-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(e(scape)?)(?=\\\\\\\\()\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.escape.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#unquoted-string\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*(%)(?=\\\\\\\\()\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.format.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#property-values\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(replace)(?=\\\\\\\\()\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.replace.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#property-values\\\"}]}]}]},\\\"less-strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(~)('|\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.less\\\"}},\\\"contentName\\\":\\\"markup.raw.inline.less\\\",\\\"end\\\":\\\"('|\\\\\\\")|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.less\\\"}},\\\"name\\\":\\\"string.quoted.other.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-content\\\"}]}]},\\\"less-type-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(is(number|string|color|keyword|url|pixel|em|percentage|ruleset))(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.type.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(isunit)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.type.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"match\\\":\\\"\\\\\\\\b((?i:em|ex|ch|rem)|(?i:vw|vh|vmin|vmax)|(?i:cm|mm|q|in|pt|pc|px|fr)|(?i:deg|grad|rad|turn)|(?i:s|ms)|(?i:Hz|kHz)|(?i:dpi|dpcm|dppx))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.unit.less\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(isdefined)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.type.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"}]}]}]},\\\"less-variable-assignment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(@)(-?(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.readwrite.less\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.other.variable.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(;|(\\\\\\\\.{3})|(?=\\\\\\\\)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.spread.less\\\"}},\\\"name\\\":\\\"meta.property-value.less\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.property-value.less\\\"}},\\\"match\\\":\\\"(((\\\\\\\\+_?)?):)([\\\\\\\\s\\\\\\\\t]*)\\\"},{\\\"include\\\":\\\"#property-values\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#property-list\\\"},{\\\"include\\\":\\\"#unquoted-string\\\"}]}]},\\\"less-variable-comparison\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(@{1,2})([-]?([_a-z]|[^\\\\\\\\x{00}-\\\\\\\\x{7F}]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.readwrite.less\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.other.variable.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(=|((<|>)=?))\\\\\\\\s*\\\"},{\\\"match\\\":\\\"\\\\\\\\btrue\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.less\\\"},{\\\"include\\\":\\\"#property-values\\\"},{\\\"include\\\":\\\"#selectors\\\"},{\\\"include\\\":\\\"#unquoted-string\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.less\\\"}]}]},\\\"less-variable-interpolation\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.expression.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.other.variable.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.expression.less\\\"}},\\\"match\\\":\\\"(@)(\\\\\\\\{)([-\\\\\\\\w]+)(\\\\\\\\})\\\",\\\"name\\\":\\\"variable.other.readwrite.less\\\"},\\\"less-variables\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.other.variable.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(@@?)([-\\\\\\\\w]+)\\\",\\\"name\\\":\\\"variable.other.readwrite.less\\\"},{\\\"include\\\":\\\"#less-variable-interpolation\\\"}]},\\\"literal-string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.less\\\"}},\\\"end\\\":\\\"(')|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.less\\\"}},\\\"name\\\":\\\"string.quoted.single.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-content\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.less\\\"}},\\\"end\\\":\\\"(\\\\\\\")|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.less\\\"}},\\\"name\\\":\\\"string.quoted.double.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-content\\\"}]},{\\\"include\\\":\\\"#less-strings\\\"}]},\\\"local-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(local)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.font-face.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#unquoted-string\\\"}]}]},\\\"media-query\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(only|not)?\\\\\\\\s*(all|aural|braille|embossed|handheld|print|projection|screen|tty|tv)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logic.media.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.constant.media.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?:(,)|(?=[{;]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.less\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#custom-property-name\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*(and)?\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logic.media.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.group.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(--|(?:-?(?:(?:[a-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R]))))(?:(?:[-\\\\\\\\da-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R])))*)\\\\\\\\s*(?=[:)])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.property-name.media.less\\\"}},\\\"end\\\":\\\"(((\\\\\\\\+_?)?):)|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"}}},{\\\"match\\\":\\\"\\\\\\\\b(portrait|landscape|progressive|interlace)\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\d+)(/)(\\\\\\\\d+)\\\"},{\\\"include\\\":\\\"#less-math\\\"}]}]},\\\"media-query-list\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(?=[^{;])\\\",\\\"end\\\":\\\"\\\\\\\\s*(?=[{;])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#media-query\\\"}]},\\\"minmax-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(minmax)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.grid.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"match\\\":\\\"\\\\\\\\b(max-content|min-content)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"}]}]},\\\"number-type\\\":{\\\"match\\\":\\\"(?:[-+]?)(?:\\\\\\\\d+\\\\\\\\.\\\\\\\\d+|\\\\\\\\.?\\\\\\\\d+)(?:[eE][-+]?\\\\\\\\d+)?\\\",\\\"name\\\":\\\"constant.numeric.less\\\"},\\\"numeric-values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#dimensions\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#number-type\\\"}]},\\\"percentage-type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.less\\\"}},\\\"match\\\":\\\"(?:[-+]?)(?:\\\\\\\\d+\\\\\\\\.\\\\\\\\d+|\\\\\\\\.?\\\\\\\\d+)(?:[eE][-+]?\\\\\\\\d+)?(%)\\\",\\\"name\\\":\\\"constant.numeric.less\\\"},\\\"property-list\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(?=[^;]*)\\\\\\\\{)\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.less\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#rule-list\\\"}]}]},\\\"property-value-constants\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"align-content, align-items, align-self, justify-content, justify-items, justify-self\\\",\\\"match\\\":\\\"\\\\\\\\b(flex-start|flex-end|start|end|space-between|space-around|space-evenly|stretch|baseline|safe|unsafe|legacy|anchor-center|first|last|self-start|self-end)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"comment\\\":\\\"alignment-baseline\\\",\\\"match\\\":\\\"\\\\\\\\b(text-before-edge|before-edge|middle|central|text-after-edge|after-edge|ideographic|alphabetic|hanging|mathematical|top|center|bottom)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"include\\\":\\\"#global-property-values\\\"},{\\\"include\\\":\\\"#cubic-bezier-function\\\"},{\\\"include\\\":\\\"#steps-function\\\"},{\\\"comment\\\":\\\"animation-composition\\\",\\\"match\\\":\\\"\\\\\\\\b(?:replace|add|accumulate)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"comment\\\":\\\"animation-direction\\\",\\\"match\\\":\\\"\\\\\\\\b(?:normal|alternate-reverse|alternate|reverse)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"comment\\\":\\\"animation-fill-mode\\\",\\\"match\\\":\\\"\\\\\\\\b(?:forwards|backwards|both)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"comment\\\":\\\"animation-iteration-count\\\",\\\"match\\\":\\\"\\\\\\\\b(?:infinite)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"comment\\\":\\\"animation-play-state\\\",\\\"match\\\":\\\"\\\\\\\\b(?:running|paused)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"comment\\\":\\\"animation-range, animation-range-start, animation-range-end\\\",\\\"match\\\":\\\"\\\\\\\\b(?:entry-crossing|exit-crossing|entry|exit)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"comment\\\":\\\"animation-timing-function\\\",\\\"match\\\":\\\"\\\\\\\\b(linear|ease-in-out|ease-in|ease-out|ease|step-start|step-end)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(absolute|active|add|all-petite-caps|all-small-caps|all-scroll|all|alphabetic|alpha|alternate-reverse|alternate|always|annotation|antialiased|at|autohiding-scrollbar|auto|avoid-column|avoid-page|avoid-region|avoid|background-color|background-image|background-position|background-size|background-repeat|background|backwards|balance|baseline|below|bevel|bicubic|bidi-override|blink|block-line-height|block-start|block-end|block|blur|bolder|bold|border-top-left-radius|border-top-right-radius|border-bottom-left-radius|border-bottom-right-radius|border-end-end-radius|border-end-start-radius|border-start-end-radius|border-start-start-radius|border-block-start-color|border-block-start-style|border-block-start-width|border-block-start|border-block-end-color|border-block-end-style|border-block-end-width|border-block-end|border-block-color|border-block-style|border-block-width|border-block|border-inline-start-color|border-inline-start-style|border-inline-start-width|border-inline-start|border-inline-end-color|border-inline-end-style|border-inline-end-width|border-inline-end|border-inline-color|border-inline-style|border-inline-width|border-inline|border-top-color|border-top-style|border-top-width|border-top|border-right-color|border-right-style|border-right-width|border-right|border-bottom-color|border-bottom-style|border-bottom-width|border-bottom|border-left-color|border-left-style|border-left-width|border-left|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-image|border-color|border-style|border-width|border-radius|border-collapse|border-spacing|border|both|bottom|box-shadow|box|break-all|break-word|break-spaces|brightness|butt(on)?|capitalize|central|center|char(acter-variant)?|cjk-ideographic|clip|clone|close-quote|closest-corner|closest-side|col-resize|collapse|color-stop|color-burn|color-dodge|color|column-count|column-gap|column-reverse|column-rule-color|column-rule-width|column-rule|column-width|columns|column|common-ligatures|condensed|consider-shifts|contain|content-box|contents?|contextual|contrast|cover|crisp-edges|crispEdges|crop|crosshair|cross|darken|dashed|default|dense|device-width|diagonal-fractions|difference|disabled|discard|discretionary-ligatures|disregard-shifts|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|drop-shadow|[nsew]{1,4}-resize|ease-in-out|ease-in|ease-out|ease|element|ellipsis|embed|end|EndColorStr|evenodd|exclude-ruby|exclusion|expanded|extra-condensed|extra-expanded|farthest-corner|farthest-side|farthest|fill-box|fill-opacity|fill|filter|fit-content|fixed|flat|flex-basis|flex-end|flex-grow|flex-shrink|flex-start|flexbox|flex|flip|flood-color|font-size-adjust|font-size|font-stretch|font-weight|font|forwards|from-image|from|full-width|gap|geometricPrecision|glyphs|gradient|grayscale|grid-column-gap|grid-column|grid-row-gap|grid-row|grid-gap|grid-height|grid|groove|hand|hanging|hard-light|height|help|hidden|hide|historical-forms|historical-ligatures|horizontal-tb|horizontal|hue|ideographic|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|inactive|include-ruby|infinite|inherit|initial|inline-end|inline-size|inline-start|inline-table|inline-line-height|inline-flexbox|inline-flex|inline-box|inline-block|inline|inset|inside|inter-ideograph|inter-word|intersect|invert|isolate|isolation|italic|jis(04|78|83|90)|justify-all|justify|keep-all|larger|large|last|layout|left|letter-spacing|lighten|lighter|lighting-color|linear-gradient|linearRGB|linear|line-edge|line-height|line-through|line|lining-nums|list-item|local|loose|lowercase|lr-tb|ltr|luminosity|luminance|manual|manipulation|margin-bottom|margin-box|margin-left|margin-right|margin-top|margin|marker(-offset|s)?|match-parent|mathematical|max-(content|height|lines|size|width)|medium|middle|min-(content|height|width)|miter|mixed|move|multiply|newspaper|no-change|no-clip|no-close-quote|no-open-quote|no-common-ligatures|no-discretionary-ligatures|no-historical-ligatures|no-contextual|no-drop|no-repeat|none|nonzero|normal|not-allowed|nowrap|oblique|offset-after|offset-before|offset-end|offset-start|offset|oldstyle-nums|opacity|open-quote|optimize(Legibility|Precision|Quality|Speed)|order|ordinal|ornaments|outline-color|outline-offset|outline-width|outline|outset|outside|overline|over-edge|overlay|padding(-bottom|-box|-left|-right|-top|-box)?|page|paint(ed)?|paused|pan-(x|left|right|y|up|down)|perspective-origin|petite-caps|pixelated|pointer|pinch-zoom|pretty|pre(-line|-wrap)?|preserve-3d|preserve-breaks|preserve-spaces|preserve|progid:DXImageTransform\\\\\\\\.Microsoft\\\\\\\\.(Alpha|Blur|dropshadow|gradient|Shadow)|progress|proportional-nums|proportional-width|radial-gradient|recto|region|relative|repeating-linear-gradient|repeating-radial-gradient|repeat-x|repeat-y|repeat|replaced|reset-size|reverse|revert-layer|revert|ridge|right|round|row-gap|row-resize|row-reverse|row|rtl|ruby|running|saturate|saturation|screen|scrollbar|scroll-position|scroll|separate|sepia|scale-down|semi-condensed|semi-expanded|shape-image-threshold|shape-margin|shape-outside|show|sideways-lr|sideways-rl|sideways|simplified|size|slashed-zero|slice|small-caps|smaller|small|smooth|snap|solid|soft-light|space-around|space-between|space|span|sRGB|stable|stacked-fractions|stack|startColorStr|start|static|step-end|step-start|sticky|stop-color|stop-opacity|stretch|strict|stroke-box|stroke-dasharray|stroke-dashoffset|stroke-miterlimit|stroke-opacity|stroke-width|stroke|styleset|style|stylistic|subgrid|subpixel-antialiased|subtract|super|swash|table-caption|table-cell|table-column-group|table-footer-group|table-header-group|table-row-group|table-column|table-row|table|tabular-nums|tb-rl|text((-bottom|-(decoration|emphasis)-color|-indent|-(over|under)-edge|-shadow|-size(-adjust)?|-top)|field)?|thick|thin|titling-caps|titling-case|top|touch|to|traditional|transform-origin|transform-style|transform|ultra-condensed|ultra-expanded|under-edge|underline|unicase|unset|uppercase|upright|use-glyph-orientation|use-script|verso|vertical(-align|-ideographic|-lr|-rl|-text)?|view-box|viewport-fill-opacity|viewport-fill|visibility|visibleFill|visiblePainted|visibleStroke|visible|wait|wavy|weight|whitespace|width|word-spacing|wrap-reverse|wrap-reverse|wrap|xx?-(large|small)|z-index|zero|zoom-in|zoom-out|zoom|arabic-indic|armenian|bengali|cambodian|circle|cjk-decimal|cjk-earthly-branch|cjk-heavenly-stem|decimal-leading-zero|decimal|devanagari|disclosure-closed|disclosure-open|disc|ethiopic-numeric|georgian|gujarati|gurmukhi|hebrew|hiragana-iroha|hiragana|japanese-formal|japanese-informal|kannada|katakana-iroha|katakana|khmer|korean-hangul-formal|korean-hanja-formal|korean-hanja-informal|lao|lower-alpha|lower-armenian|lower-greek|lower-latin|lower-roman|malayalam|mongolian|myanmar|oriya|persian|simp-chinese-formal|simp-chinese-informal|square|tamil|telugu|thai|tibetan|trad-chinese-formal|trad-chinese-informal|upper-alpha|upper-armenian|upper-latin|upper-roman)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(sans-serif|serif|monospace|fantasy|cursive)\\\\\\\\b(?=\\\\\\\\s*[;,\\\\\\\\n}])\\\",\\\"name\\\":\\\"support.constant.font-name.less\\\"}]},\\\"property-values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#color-functions\\\"},{\\\"include\\\":\\\"#less-functions\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#unicode-range\\\"},{\\\"include\\\":\\\"#numeric-values\\\"},{\\\"include\\\":\\\"#color-values\\\"},{\\\"include\\\":\\\"#property-value-constants\\\"},{\\\"include\\\":\\\"#less-math\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#important\\\"}]},\\\"pseudo-selectors\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)(dir)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"ltr|rtl\\\",\\\"name\\\":\\\"variable.parameter.dir.less\\\"},{\\\"include\\\":\\\"#less-variables\\\"}]}]},{\\\"begin\\\":\\\"(:)(lang)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#unquoted-string\\\"}]}]},{\\\"begin\\\":\\\"(:)(not)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#selectors\\\"}]}]},{\\\"begin\\\":\\\"(:)(nth(-last)?-(child|of-type))(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.less\\\"}},\\\"contentName\\\":\\\"meta.function-call.less\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.group.less\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(even|odd)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.pseudo-class.less\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.unit.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.less\\\"}},\\\"match\\\":\\\"(?:([-+])?(?:\\\\\\\\d+)?(n)(\\\\\\\\s*([-+])\\\\\\\\s*\\\\\\\\d+)?|[-+]?\\\\\\\\s*\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.less\\\"},{\\\"include\\\":\\\"#less-math\\\"},{\\\"include\\\":\\\"#less-strings\\\"},{\\\"include\\\":\\\"#less-variable-interpolation\\\"}]}]},{\\\"begin\\\":\\\"(:)(host-context|host|has|is|not|where)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#selectors\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.less\\\"}},\\\"match\\\":\\\"(:)(active|any-link|autofill|blank|buffering|checked|current|default|defined|disabled|empty|enabled|first-child|first-of-type|first|focus-visible|focus-within|focus|fullscreen|future|host|hover|in-range|indeterminate|invalid|last-child|last-of-type|left|local-link|link|modal|muted|only-child|only-of-type|optional|out-of-range|past|paused|picture-in-picture|placeholder-shown|playing|popover-open|read-only|read-write|required|right|root|scope|seeking|stalled|target-within|target|user-invalid|user-valid|valid|visited|volume-locked)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.function-call.less\\\"},{\\\"begin\\\":\\\"(::?)(highlight|part|state)(?=\\\\\\\\s*(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"}},\\\"comment\\\":\\\"::highlight()\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"entity.other.attribute-name.pseudo-element.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"--|(?:-?(?:(?:[a-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R]))))(?:(?:[-\\\\\\\\da-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R])))*\\\",\\\"name\\\":\\\"variable.parameter.less\\\"},{\\\"include\\\":\\\"#less-variables\\\"}]}]},{\\\"begin\\\":\\\"(::?)slotted(?=\\\\\\\\s*(\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"}},\\\"comment\\\":\\\"::slotted()\\\",\\\"contentName\\\":\\\"meta.function-call.less\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"entity.other.attribute-name.pseudo-element.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.group.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#selectors\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"}},\\\"comment\\\":\\\"defined pseudo-elements\\\",\\\"match\\\":\\\"(::?)(after|backdrop|before|cue|file-selector-button|first-letter|first-line|grammar-error|marker|placeholder|selection|spelling-error|target-text|view-transition-group|view-transition-image-pair|view-transition-new|view-transition-old|view-transition)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-element.less\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.namespace.vendor-prefix.less\\\"}},\\\"comment\\\":\\\"other possible pseudo-elements\\\",\\\"match\\\":\\\"(::?)(-\\\\\\\\w+-)(--|(?:-?(?:(?:[a-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R]))))(?:(?:[-\\\\\\\\da-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R])))*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-element.less\\\"}]},\\\"qualified-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.constant.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.wildcard.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.less\\\"}},\\\"match\\\":\\\"(?:(-?(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*)|(\\\\\\\\*))?([|])(?!=)\\\"},\\\"regexp-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(regexp)(?=\\\\\\\\()\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"support.function.regexp.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal-string\\\"}]}]},\\\"relative-color\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"from\\\",\\\"name\\\":\\\"keyword.other.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b[hslawbch]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.less\\\"}]},\\\"rule-list\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*\\\\\\\\})\\\",\\\"name\\\":\\\"meta.property-list.less\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\"},{\\\"include\\\":\\\"#rule-list-body\\\"},{\\\"include\\\":\\\"#less-extend\\\"}]}]},\\\"rule-list-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#comment-line\\\"},{\\\"include\\\":\\\"#at-rules\\\"},{\\\"include\\\":\\\"#less-variable-assignment\\\"},{\\\"begin\\\":\\\"(?=[-\\\\\\\\w]*?@\\\\\\\\{.*\\\\\\\\}[-\\\\\\\\w]*?\\\\\\\\s*:[^;{(]*(?=[;})]))\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(;)|(?=[})]))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[^\\\\\\\\s:])\\\",\\\"end\\\":\\\"(?=(((\\\\\\\\+_?)?):)[\\\\\\\\s\\\\\\\\t]*)\\\",\\\"name\\\":\\\"support.type.property-name.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variable-interpolation\\\"}]},{\\\"begin\\\":\\\"(((\\\\\\\\+_?)?):)(?=[\\\\\\\\s\\\\\\\\t]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"}},\\\"contentName\\\":\\\"support.type.property-name.less\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(;)|(?=[})]))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"}]}]},{\\\"begin\\\":\\\"(?=[-a-z])\\\",\\\"end\\\":\\\"$|(?![-a-z])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#custom-property-name\\\"},{\\\"begin\\\":\\\"(-[\\\\\\\\w-]+?-)((?:(?:[a-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R])))(?:(?:[-\\\\\\\\da-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R])))*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.property-name.less\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.namespace.vendor-prefix.less\\\"}},\\\"comment\\\":\\\"vendor-prefixed properties\\\",\\\"end\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(((\\\\\\\\+_?)?):)(?=[\\\\\\\\s\\\\\\\\t]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"}},\\\"contentName\\\":\\\"meta.property-value.less\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(;)|(?=[})]))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"},{\\\"match\\\":\\\"[\\\\\\\\w-]+\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"}]}]},{\\\"include\\\":\\\"#filter-function\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(border((-(bottom|top)-(left|right))|((-(start|end)){2}))?-radius|(border-image(?!-)))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.property-name.less\\\"}},\\\"comment\\\":\\\"border-radius and border-image properties utilize a slash as a separator\\\",\\\"end\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(((\\\\\\\\+_?)?):)(?=[\\\\\\\\s\\\\\\\\t]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"}},\\\"contentName\\\":\\\"meta.property-value.less\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(;)|(?=[})]))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value-separator\\\"},{\\\"include\\\":\\\"#property-values\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.custom-property.prefix.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.custom-property.name.less\\\"}},\\\"match\\\":\\\"\\\\\\\\b(var-)(-?(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{9f}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{9f}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"invalid.deprecated.custom-property.less\\\"},{\\\"begin\\\":\\\"\\\\\\\\bfont(-family)?(?!-)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.property-name.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"name\\\":\\\"meta.property-name.less\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.property-value.less\\\"}},\\\"match\\\":\\\"(((\\\\\\\\+_?)?):)([\\\\\\\\s\\\\\\\\t]*)\\\"},{\\\"include\\\":\\\"#property-values\\\"},{\\\"match\\\":\\\"-?(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{9f}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{9f}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*(\\\\\\\\s+-?(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{9f}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{9f}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*)*\\\",\\\"name\\\":\\\"string.unquoted.less\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.less\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\banimation-timeline\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.property-name.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(((\\\\\\\\+_?)?):)(?=[\\\\\\\\s\\\\\\\\t]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"}},\\\"contentName\\\":\\\"meta.property-value.less\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(;)|(?=[})]))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#custom-property-name\\\"},{\\\"include\\\":\\\"#scroll-function\\\"},{\\\"include\\\":\\\"#view-function\\\"},{\\\"include\\\":\\\"#property-values\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#arbitrary-repetition\\\"},{\\\"include\\\":\\\"#important\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\banimation(?:-name)?(?=(?:\\\\\\\\+_?)?:)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.property-name.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(((\\\\\\\\+_?)?):)(?=[\\\\\\\\s\\\\\\\\t]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"}},\\\"contentName\\\":\\\"meta.property-value.less\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(;)|(?=[})]))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#less-functions\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#numeric-values\\\"},{\\\"include\\\":\\\"#property-value-constants\\\"},{\\\"match\\\":\\\"-?(?:[_a-zA-Z]|[^\\\\\\\\x{00}-\\\\\\\\x{7F}]|(?:(:?\\\\\\\\\\\\\\\\[0-9a-f]{1,6}(\\\\\\\\r\\\\\\\\n|[\\\\\\\\s\\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\f])?)|\\\\\\\\\\\\\\\\[^\\\\\\\\r\\\\\\\\n\\\\\\\\f0-9a-f]))(?:[-_a-zA-Z0-9]|[^\\\\\\\\x{00}-\\\\\\\\x{7F}]|(?:(:?\\\\\\\\\\\\\\\\[0-9a-f]{1,6}(\\\\\\\\r\\\\\\\\n|[\\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\f])?)|\\\\\\\\\\\\\\\\[^\\\\\\\\r\\\\\\\\n\\\\\\\\f0-9a-f]))*\\\",\\\"name\\\":\\\"variable.other.constant.animation-name.less string.unquoted.less\\\"},{\\\"include\\\":\\\"#less-math\\\"},{\\\"include\\\":\\\"#arbitrary-repetition\\\"},{\\\"include\\\":\\\"#important\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(transition(-(property|duration|delay|timing-function))?)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.property-name.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(((\\\\\\\\+_?)?):)(?=[\\\\\\\\s\\\\\\\\t]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"}},\\\"contentName\\\":\\\"meta.property-value.less\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(;)|(?=[})]))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#time-type\\\"},{\\\"include\\\":\\\"#property-values\\\"},{\\\"include\\\":\\\"#cubic-bezier-function\\\"},{\\\"include\\\":\\\"#steps-function\\\"},{\\\"include\\\":\\\"#arbitrary-repetition\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(?:backdrop-)?filter\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.property-name.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"name\\\":\\\"meta.property-name.less\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.property-value.less\\\"}},\\\"match\\\":\\\"(((\\\\\\\\+_?)?):)([\\\\\\\\s\\\\\\\\t]*)\\\"},{\\\"match\\\":\\\"\\\\\\\\b(inherit|initial|unset|none)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.property-value.less\\\"},{\\\"include\\\":\\\"#filter-functions\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bwill-change\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.property-name.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"name\\\":\\\"meta.property-name.less\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.property-value.less\\\"}},\\\"match\\\":\\\"(((\\\\\\\\+_?)?):)([\\\\\\\\s\\\\\\\\t]*)\\\"},{\\\"match\\\":\\\"unset|initial|inherit|will-change|auto|scroll-position|contents\\\",\\\"name\\\":\\\"invalid.illegal.property-value.less\\\"},{\\\"match\\\":\\\"-?(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{9f}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{9f}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"include\\\":\\\"#arbitrary-repetition\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bcounter-(increment|(re)?set)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.property-name.less\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"name\\\":\\\"meta.property-name.less\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.property-value.less\\\"}},\\\"match\\\":\\\"(((\\\\\\\\+_?)?):)([\\\\\\\\s\\\\\\\\t]*)\\\"},{\\\"match\\\":\\\"-?(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{9f}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{9f}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*\\\",\\\"name\\\":\\\"entity.name.constant.counter-name.less\\\"},{\\\"include\\\":\\\"#integer-type\\\"},{\\\"match\\\":\\\"unset|initial|inherit|auto\\\",\\\"name\\\":\\\"invalid.illegal.property-value.less\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bcontainer(?:-name)?(?=\\\\\\\\s*?:)\\\",\\\"end\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"name\\\":\\\"support.type.property-name.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(((\\\\\\\\+_?)?):)(?=[\\\\\\\\s\\\\\\\\t]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"}},\\\"contentName\\\":\\\"meta.property-value.less\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(;)|(?=[})]))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bdefault\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.property-value.less\\\"},{\\\"include\\\":\\\"#global-property-values\\\"},{\\\"include\\\":\\\"#custom-property-name\\\"},{\\\"contentName\\\":\\\"variable.other.constant.container-name.less\\\",\\\"match\\\":\\\"--|(?:-?(?:(?:[a-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R]))))(?:(?:[-\\\\\\\\da-zA-Z_]|[\\\\\\\\x{00B7}\\\\\\\\x{00C0}-\\\\\\\\x{00D6}\\\\\\\\x{00D8}-\\\\\\\\x{00F6}\\\\\\\\x{00F8}-\\\\\\\\x{037D}\\\\\\\\x{037F}-\\\\\\\\x{1FFF}\\\\\\\\x{200C}\\\\\\\\x{200D}\\\\\\\\x{203F}\\\\\\\\x{2040}\\\\\\\\x{2070}-\\\\\\\\x{218F}\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}\\\\\\\\x{3001}-\\\\\\\\x{D7FF}\\\\\\\\x{F900}-\\\\\\\\x{FDCF}\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}])|(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\N|[[:^xdigit:]]|[[:xdigit:]]{1,6}[\\\\\\\\s\\\\\\\\R])))*\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"include\\\":\\\"#property-values\\\"}]}]},{\\\"match\\\":\\\"\\\\\\\\b(accent-height|align-content|align-items|align-self|alignment-baseline|all|animation-timing-function|animation-range-start|animation-range-end|animation-range|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation-composition|animation|appearance|ascent|aspect-ratio|azimuth|backface-visibility|background-size|background-repeat-y|background-repeat-x|background-repeat|background-position-y|background-position-x|background-position|background-origin|background-image|background-color|background-clip|background-blend-mode|background-attachment|background|baseline-shift|begin|bias|blend-mode|border-top-left-radius|border-top-right-radius|border-bottom-left-radius|border-bottom-right-radius|border-end-end-radius|border-end-start-radius|border-start-end-radius|border-start-start-radius|border-block-start-color|border-block-start-style|border-block-start-width|border-block-start|border-block-end-color|border-block-end-style|border-block-end-width|border-block-end|border-block-color|border-block-style|border-block-width|border-block|border-inline-start-color|border-inline-start-style|border-inline-start-width|border-inline-start|border-inline-end-color|border-inline-end-style|border-inline-end-width|border-inline-end|border-inline-color|border-inline-style|border-inline-width|border-inline|border-top-color|border-top-style|border-top-width|border-top|border-right-color|border-right-style|border-right-width|border-right|border-bottom-color|border-bottom-style|border-bottom-width|border-bottom|border-left-color|border-left-style|border-left-width|border-left|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-image|border-color|border-style|border-width|border-radius|border-collapse|border-spacing|border|bottom|box-(align|decoration-break|direction|flex|ordinal-group|orient|pack|shadow|sizing)|break-(after|before|inside)|caption-side|clear|clip-path|clip-rule|clip|color(-(interpolation(-filters)?|profile|rendering))?|columns|column-(break-before|count|fill|gap|(rule(-(color|style|width))?)|span|width)|container-name|container-type|container|contain-intrinsic-block-size|contain-intrinsic-inline-size|contain-intrinsic-height|contain-intrinsic-size|contain-intrinsic-width|contain|content|counter-(increment|reset)|cursor|[cdf][xy]|direction|display|divisor|dominant-baseline|dur|elevation|empty-cells|enable-background|end|fallback|fill(-(opacity|rule))?|filter|flex(-(align|basis|direction|flow|grow|item-align|line-pack|negative|order|pack|positive|preferred-size|shrink|wrap))?|float|flood-(color|opacity)|font-display|font-family|font-feature-settings|font-kerning|font-language-override|font-size(-adjust)?|font-smoothing|font-stretch|font-style|font-synthesis|font-variant(-(alternates|caps|east-asian|ligatures|numeric|position))?|font-weight|font|fr|((column|row)-)?gap|glyph-orientation-(horizontal|vertical)|grid-(area|gap)|grid-auto-(columns|flow|rows)|grid-(column|row)(-(end|gap|start))?|grid-template(-(areas|columns|rows))?|grid|height|hyphens|image-(orientation|rendering|resolution)|inset(-(block|inline))?(-(start|end))?|isolation|justify-content|justify-items|justify-self|kerning|left|letter-spacing|lighting-color|line-(box-contain|break|clamp|height)|list-style(-(image|position|type))?|(margin|padding)(-(bottom|left|right|top)|(-(block|inline)?(-(end|start))?))?|marker(-(end|mid|start))?|mask(-(clip||composite|image|origin|position|repeat|size|type))?|(max|min)-(height|width)|mix-blend-mode|nbsp-mode|negative|object-(fit|position)|opacity|operator|order|orphans|outline(-(color|offset|style|width))?|overflow(-((inline|block)|scrolling|wrap|x|y))?|overscroll-behavior(-block|-(inline|x|y))?|pad(ding(-(bottom|left|right|top))?)?|page(-break-(after|before|inside))?|paint-order|pause(-(after|before))?|perspective(-origin(-(x|y))?)?|pitch(-range)?|place-content|place-self|pointer-events|position|prefix|quotes|range|resize|right|rotate|scale|scroll-behavior|shape-(image-threshold|margin|outside|rendering)|size|speak(-as)?|src|stop-(color|opacity)|stroke(-(dash(array|offset)|line(cap|join)|miterlimit|opacity|width))?|suffix|symbols|system|tab-size|table-layout|tap-highlight-color|text-align(-last)?|text-decoration(-(color|line|style))?|text-emphasis(-(color|position|style))?|text-(anchor|fill-color|height|indent|justify|orientation|overflow|rendering|size-adjust|shadow|transform|underline-position|wrap)|top|touch-action|transform(-origin(-(x|y))?)|transform(-style)?|transition(-(delay|duration|property|timing-function))?|translate|unicode-(bidi|range)|user-(drag|select)|vertical-align|visibility|white-space(-collapse)?|widows|width|will-change|word-(break|spacing|wrap)|writing-mode|z-index|zoom)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.property-name.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(((contain-intrinsic|max|min)-)?(block|inline)?-size)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.property-name.less\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b((?:(?:\\\\\\\\+_?)?):)([\\\\\\\\s\\\\\\\\t]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.property-value.less\\\"}},\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.less\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.property-value.less\\\"}},\\\"contentName\\\":\\\"meta.property-value.less\\\",\\\"end\\\":\\\"\\\\\\\\s*(;)|(?=[})])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.less\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"scroll-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(scroll)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.scroll.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"root|nearest|self\\\",\\\"name\\\":\\\"support.constant.scroller.less\\\"},{\\\"match\\\":\\\"block|inline|x|y\\\",\\\"name\\\":\\\"support.constant.axis.less\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"}]},\\\"selector\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[>~+/\\\\\\\\.*#a-zA-Z\\\\\\\\[&]|(\\\\\\\\:{1,2}[^\\\\\\\\s])|@\\\\\\\\{)\\\",\\\"contentName\\\":\\\"meta.selector.less\\\",\\\"end\\\":\\\"(?=@(?!\\\\\\\\{)|[{;])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-line\\\"},{\\\"include\\\":\\\"#selectors\\\"},{\\\"include\\\":\\\"#less-namespace-accessors\\\"},{\\\"include\\\":\\\"#less-variable-interpolation\\\"},{\\\"include\\\":\\\"#important\\\"}]}]},\\\"selectors\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([a-z](?:(?:[-_a-z0-9\\\\\\\\x{00B7}]|\\\\\\\\\\\\\\\\\\\\\\\\.|[[\\\\\\\\x{00C0}-\\\\\\\\x{00D6}][\\\\\\\\x{00D8}-\\\\\\\\x{00F6}][\\\\\\\\x{00F8}-\\\\\\\\x{02FF}][\\\\\\\\x{0300}-\\\\\\\\x{037D}][\\\\\\\\x{037F}-\\\\\\\\x{1FFF}][\\\\\\\\x{200C}-\\\\\\\\x{200D}][\\\\\\\\x{203F}-\\\\\\\\x{2040}][\\\\\\\\x{2070}-\\\\\\\\x{218F}][\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}][\\\\\\\\x{3001}-\\\\\\\\x{D7FF}][\\\\\\\\x{F900}-\\\\\\\\x{FDCF}][\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}][\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}]]))*-(?:(?:[-_a-z0-9\\\\\\\\x{00B7}]|\\\\\\\\\\\\\\\\\\\\\\\\.|[[\\\\\\\\x{00C0}-\\\\\\\\x{00D6}][\\\\\\\\x{00D8}-\\\\\\\\x{00F6}][\\\\\\\\x{00F8}-\\\\\\\\x{02FF}][\\\\\\\\x{0300}-\\\\\\\\x{037D}][\\\\\\\\x{037F}-\\\\\\\\x{1FFF}][\\\\\\\\x{200C}-\\\\\\\\x{200D}][\\\\\\\\x{203F}-\\\\\\\\x{2040}][\\\\\\\\x{2070}-\\\\\\\\x{218F}][\\\\\\\\x{2C00}-\\\\\\\\x{2FEF}][\\\\\\\\x{3001}-\\\\\\\\x{D7FF}][\\\\\\\\x{F900}-\\\\\\\\x{FDCF}][\\\\\\\\x{FDF0}-\\\\\\\\x{FFFD}][\\\\\\\\x{10000}-\\\\\\\\x{EFFFF}]]))*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.tag.custom.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(a|abbr|acronym|address|applet|area|article|aside|audio|b|base|basefont|bdi|bdo|big|blockquote|body|br|button|canvas|caption|circle|cite|clipPath|code|col|colgroup|content|data|dataList|dd|defs|del|details|dfn|dialog|dir|div|dl|dt|element|ellipse|em|embed|eventsource|fieldset|figcaption|figure|filter|footer|foreignObject|form|frame|frameset|g|glyph|glyphRef|h1|h2|h3|h4|h5|h6|head|header|hgroup|hr|html|i|iframe|image|img|input|ins|isindex|kbd|keygen|label|legend|li|line|linearGradient|link|main|map|mark|marker|mask|menu|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|path|pattern|picture|polygon|polyline|pre|progress|q|radialGradient|rect|rp|ruby|rt|rtc|s|samp|script|section|select|shadow|small|source|span|stop|strike|strong|style|sub|summary|sup|svg|switch|symbol|table|tbody|td|template|textarea|textPath|tfoot|th|thead|time|title|tr|track|tref|tspan|tt|u|ul|use|var|video|wbr|xmp)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.tag.less\\\"},{\\\"begin\\\":\\\"(\\\\\\\\.)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"}},\\\"end\\\":\\\"(?![-\\\\\\\\w]|[^\\\\\\\\x{00}-\\\\\\\\x{9f}]|\\\\\\\\\\\\\\\\([A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9])|(\\\\\\\\@(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"entity.other.attribute-name.class.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variable-interpolation\\\"}]},{\\\"begin\\\":\\\"(#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"}},\\\"end\\\":\\\"(?![-\\\\\\\\w]|[^\\\\\\\\x{00}-\\\\\\\\x{9f}]|\\\\\\\\\\\\\\\\([A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9])|(\\\\\\\\@(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"entity.other.attribute-name.id.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variable-interpolation\\\"}]},{\\\"begin\\\":\\\"(&)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.less\\\"}},\\\"contentName\\\":\\\"entity.other.attribute-name.parent.less\\\",\\\"end\\\":\\\"(?![-\\\\\\\\w]|[^\\\\\\\\x{00}-\\\\\\\\x{9f}]|\\\\\\\\\\\\\\\\([A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9])|(\\\\\\\\@(?=\\\\\\\\{)))\\\",\\\"name\\\":\\\"entity.other.attribute-name.parent.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variable-interpolation\\\"},{\\\"include\\\":\\\"#selectors\\\"}]},{\\\"include\\\":\\\"#pseudo-selectors\\\"},{\\\"include\\\":\\\"#less-extend\\\"},{\\\"match\\\":\\\"(?!\\\\\\\\+_?:)(?:>{1,3}|[~+])(?![>~+;}])\\\",\\\"name\\\":\\\"punctuation.separator.combinator.less\\\"},{\\\"match\\\":\\\"((?:>{1,3}|[~+])){2,}\\\",\\\"name\\\":\\\"invalid.illegal.combinator.less\\\"},{\\\"match\\\":\\\"\\\\\\\\/deep\\\\\\\\/\\\",\\\"name\\\":\\\"invalid.illegal.combinator.less\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.less\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.less\\\"}},\\\"name\\\":\\\"meta.attribute-selector.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variable-interpolation\\\"},{\\\"include\\\":\\\"#qualified-name\\\"},{\\\"match\\\":\\\"(-?(?:[[_a-zA-Z][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))(?:[[-\\\\\\\\w][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]|(?:\\\\\\\\\\\\\\\\\\\\\\\\h{1,6}[\\\\\\\\s\\\\\\\\t\\\\\\\\n\\\\\\\\f]?|\\\\\\\\\\\\\\\\[^\\\\\\\\n\\\\\\\\f\\\\\\\\h]))*)\\\",\\\"name\\\":\\\"entity.other.attribute-name.less\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*([~*|^$]?=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.attribute-selector.less\\\"}},\\\"end\\\":\\\"(?=(\\\\\\\\s|\\\\\\\\]))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variable-interpolation\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s\\\\\\\\]\\\\\\\\['\\\\\\\"]\\\",\\\"name\\\":\\\"string.unquoted.less\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.less\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\s+([iI]))?\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.entity.less\\\"}]}]},{\\\"include\\\":\\\"#arbitrary-repetition\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"entity.name.tag.wildcard.less\\\"}]},\\\"shape-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(rect)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.shape.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bauto\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(inset)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.shape.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bround\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.less\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#percentage-type\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(circle|ellipse)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.shape.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bat\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.less\\\"},{\\\"match\\\":\\\"\\\\\\\\b(top|right|bottom|left|center|closest-side|farthest-side)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#percentage-type\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(polygon)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.shape.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(nonzero|evenodd)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#percentage-type\\\"}]}]}]},\\\"steps-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(steps)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.timing.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"contentName\\\":\\\"meta.group.less\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"jump-start|jump-end|jump-none|jump-both|start|end\\\",\\\"name\\\":\\\"support.constant.step-position.less\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#integer-type\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#calc-function\\\"}]},\\\"string-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variable-interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.newline.less\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\h{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.less\\\"}]},\\\"style-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(style)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.style.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rule-list-body\\\"}]}]},\\\"symbols-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(symbols)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.counter.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(cyclic|numeric|alphabetic|symbolic|fixed)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.symbol-type.less\\\"},{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#image-type\\\"}]}]},\\\"time-type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.less\\\"}},\\\"match\\\":\\\"(?i:[-+]?(?:(?:\\\\\\\\d*\\\\\\\\.\\\\\\\\d+(?:[eE](?:[-+]?\\\\\\\\d+))*)|(?:[-+]?\\\\\\\\d+))(s|ms))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.less\\\"},\\\"transform-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(matrix3d|scale3d|matrix|scale)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.transform.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#number-type\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(translate(3d)?)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.transform.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#number-type\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(translate[XY])(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.transform.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#number-type\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(rotate[XYZ]?|skew[XY])(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.transform.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#angle-type\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#var-function\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(skew)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.transform.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#angle-type\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#var-function\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(translateZ|perspective)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.transform.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#var-function\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(rotate3d)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.transform.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#angle-type\\\"},{\\\"include\\\":\\\"#number-type\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#var-function\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(scale[XYZ])(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.transform.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#number-type\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#var-function\\\"}]}]}]},\\\"unicode-range\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.constant.unicode-range.prefix.less\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.codepoint-range.less\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.range.less\\\"}},\\\"match\\\":\\\"(?i)(u\\\\\\\\+)([0-9a-f?]{1,6}(?:(-)[0-9a-f]{1,6})?)\\\",\\\"name\\\":\\\"support.unicode-range.less\\\"},\\\"unquoted-string\\\":{\\\"match\\\":\\\"[^\\\\\\\\s'\\\\\\\"]\\\",\\\"name\\\":\\\"string.unquoted.less\\\"},\\\"url-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(url)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.url.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#literal-string\\\"},{\\\"include\\\":\\\"#unquoted-string\\\"},{\\\"include\\\":\\\"#var-function\\\"}]}]},\\\"value-separator\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.less\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(/)\\\\\\\\s*\\\"},\\\"var-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(var)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.var.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma-delimiter\\\"},{\\\"include\\\":\\\"#custom-property-name\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#property-values\\\"}]}]},\\\"view-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(view)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.view.less\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.end.less\\\"}},\\\"name\\\":\\\"meta.function-call.less\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.begin.less\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"block|inline|x|y|auto\\\",\\\"name\\\":\\\"support.constant.property-value.less\\\"},{\\\"include\\\":\\\"#percentage-type\\\"},{\\\"include\\\":\\\"#length-type\\\"},{\\\"include\\\":\\\"#less-variables\\\"},{\\\"include\\\":\\\"#var-function\\\"},{\\\"include\\\":\\\"#calc-function\\\"},{\\\"include\\\":\\\"#arbitrary-repetition\\\"}]}]}},\\\"scopeName\\\":\\\"source.css.less\\\"}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\nimport css from './css.mjs'\nimport json from './json.mjs'\nimport javascript from './javascript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Liquid\\\",\\\"fileTypes\\\":[\\\"liquid\\\"],\\\"foldingStartMarker\\\":\\\"{%-?\\\\\\\\s*(capture|case|comment|for|form|if|javascript|paginate|schema|style)[^(%})]+%}\\\",\\\"foldingStopMarker\\\":\\\"{%\\\\\\\\s*(endcapture|endcase|endcomment|endfor|endform|endif|endjavascript|endpaginate|endschema|endstyle)[^(%})]+%}\\\",\\\"injections\\\":{\\\"L:meta.embedded.block.js, L:meta.embedded.block.css, L:meta.embedded.block.html, L:string.quoted\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#injection\\\"}]}},\\\"name\\\":\\\"liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#core\\\"}],\\\"repository\\\":{\\\"attribute\\\":{\\\"begin\\\":\\\"\\\\\\\\w+:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.liquid\\\"}},\\\"end\\\":\\\"(?=,|%}|}}|\\\\\\\\|)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"attribute_liquid\\\":{\\\"begin\\\":\\\"\\\\\\\\w+:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.attribute-name.liquid\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\|)|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"comment_block\\\":{\\\"begin\\\":\\\"{%-?\\\\\\\\s*comment\\\\\\\\s*-?%}\\\",\\\"end\\\":\\\"{%-?\\\\\\\\s*endcomment\\\\\\\\s*-?%}\\\",\\\"name\\\":\\\"comment.block.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_block\\\"},{\\\"match\\\":\\\"(.(?!{%-?\\\\\\\\s*(comment|endcomment)\\\\\\\\s*-?%}))*.\\\"}]},\\\"core\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#raw_tag\\\"},{\\\"include\\\":\\\"#doc_tag\\\"},{\\\"include\\\":\\\"#comment_block\\\"},{\\\"include\\\":\\\"#style_codefence\\\"},{\\\"include\\\":\\\"#stylesheet_codefence\\\"},{\\\"include\\\":\\\"#json_codefence\\\"},{\\\"include\\\":\\\"#javascript_codefence\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"include\\\":\\\"#tag\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]},\\\"doc_tag\\\":{\\\"begin\\\":\\\"{%-?\\\\\\\\s*(doc)\\\\\\\\s*-?%}\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.liquid\\\"},\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.doc.liquid\\\"}},\\\"contentName\\\":\\\"comment.block.documentation.liquid\\\",\\\"end\\\":\\\"{%-?\\\\\\\\s*(enddoc)\\\\\\\\s*-?%}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.liquid\\\"},\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.doc.liquid\\\"}},\\\"name\\\":\\\"meta.block.doc.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#liquid_doc_param_tag\\\"},{\\\"include\\\":\\\"#liquid_doc_example_tag\\\"},{\\\"include\\\":\\\"#liquid_doc_fallback_tag\\\"}]},\\\"filter\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.liquid\\\"}},\\\"match\\\":\\\"\\\\\\\\|\\\\\\\\s*((?![\\\\\\\\.0-9])[a-zA-Z0-9_-]+\\\\\\\\:?)\\\\\\\\s*\\\"},\\\"injection\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#raw_tag\\\"},{\\\"include\\\":\\\"#comment_block\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"include\\\":\\\"#tag_injection\\\"}]},\\\"invalid_range\\\":{\\\"match\\\":\\\"\\\\\\\\((.(?!\\\\\\\\.\\\\\\\\.))+\\\\\\\\)\\\",\\\"name\\\":\\\"invalid.illegal.range.liquid\\\"},\\\"javascript_codefence\\\":{\\\"begin\\\":\\\"({%-?)\\\\\\\\s*(javascript)\\\\\\\\s*(-?%})\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.javascript.start.liquid\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.liquid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.javascript.liquid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.liquid\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.js\\\",\\\"end\\\":\\\"({%-?)\\\\\\\\s*(endjavascript)\\\\\\\\s*(-?%})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.javascript.end.liquid\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.javascript.liquid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"}},\\\"name\\\":\\\"meta.block.javascript.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},\\\"json_codefence\\\":{\\\"begin\\\":\\\"({%-?)\\\\\\\\s*(schema)\\\\\\\\s*(-?%})\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.schema.start.liquid\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.liquid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.schema.liquid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.liquid\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.json\\\",\\\"end\\\":\\\"({%-?)\\\\\\\\s*(endschema)\\\\\\\\s*(-?%})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.schema.end.liquid\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.schema.liquid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"}},\\\"name\\\":\\\"meta.block.schema.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json\\\"}]},\\\"language_constant\\\":{\\\"match\\\":\\\"\\\\\\\\b(false|true|nil|blank)\\\\\\\\b|empty(?!\\\\\\\\?)\\\",\\\"name\\\":\\\"constant.language.liquid\\\"},\\\"liquid_doc_example_tag\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.liquid\\\"}},\\\"match\\\":\\\"(@example)\\\\\\\\b\\\"},\\\"liquid_doc_fallback_tag\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.liquid\\\"}},\\\"match\\\":\\\"(@\\\\\\\\w+)\\\\\\\\b\\\"},\\\"liquid_doc_param_tag\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.liquid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.instance.liquid\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.liquid\\\"}},\\\"match\\\":\\\"(@param)\\\\\\\\s+(?:({[^}]*}?)\\\\\\\\s+)?([a-zA-Z_]\\\\\\\\w*)?\\\"},\\\"number\\\":{\\\"match\\\":\\\"((-|\\\\\\\\+)\\\\\\\\s*)?[0-9]+(\\\\\\\\.[0-9]+)?\\\",\\\"name\\\":\\\"constant.numeric.liquid\\\"},\\\"object\\\":{\\\"begin\\\":\\\"(?<!comment %})(?<!comment -%})(?<!comment%})(?<!comment-%})(?<!raw %})(?<!raw -%})(?<!raw%})(?<!raw-%}){{-?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.liquid\\\"}},\\\"end\\\":\\\"-?}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"}},\\\"name\\\":\\\"meta.object.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#filter\\\"},{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"operator\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.expression.liquid\\\"}},\\\"match\\\":\\\"(?:(?<=\\\\\\\\s)|\\\\\\\\b)(\\\\\\\\=\\\\\\\\=|!\\\\\\\\=|\\\\\\\\>|\\\\\\\\<|\\\\\\\\>\\\\\\\\=|\\\\\\\\<\\\\\\\\=|or|and|contains)(?:(?=\\\\\\\\s)|\\\\\\\\b)\\\"},\\\"range\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.liquid\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.liquid\\\"}},\\\"name\\\":\\\"meta.range.liquid\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.range.liquid\\\"},{\\\"include\\\":\\\"#variable_lookup\\\"},{\\\"include\\\":\\\"#number\\\"}]},\\\"raw_tag\\\":{\\\"begin\\\":\\\"{%-?\\\\\\\\s*(raw)\\\\\\\\s*-?%}\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.liquid\\\"}},\\\"contentName\\\":\\\"string.unquoted.liquid\\\",\\\"end\\\":\\\"{%-?\\\\\\\\s*(endraw)\\\\\\\\s*-?%}\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.liquid\\\"}},\\\"name\\\":\\\"meta.entity.tag.raw.liquid\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(.(?!{%-?\\\\\\\\s*endraw\\\\\\\\s*-?%}))*.\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string_single\\\"},{\\\"include\\\":\\\"#string_double\\\"}]},\\\"string_double\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.liquid\\\"},\\\"string_single\\\":{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.liquid\\\"},\\\"style_codefence\\\":{\\\"begin\\\":\\\"({%-?)\\\\\\\\s*(style)\\\\\\\\s*(-?%})\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.style.start.liquid\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.liquid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.style.liquid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.liquid\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.css\\\",\\\"end\\\":\\\"({%-?)\\\\\\\\s*(endstyle)\\\\\\\\s*(-?%})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.style.end.liquid\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.style.liquid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"}},\\\"name\\\":\\\"meta.block.style.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]},\\\"stylesheet_codefence\\\":{\\\"begin\\\":\\\"({%-?)\\\\\\\\s*(stylesheet)\\\\\\\\s*(-?%})\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.style.start.liquid\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.liquid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.style.liquid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.liquid\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.css\\\",\\\"end\\\":\\\"({%-?)\\\\\\\\s*(endstylesheet)\\\\\\\\s*(-?%})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.style.end.liquid\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.style.liquid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"}},\\\"name\\\":\\\"meta.block.style.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]},\\\"tag\\\":{\\\"begin\\\":\\\"(?<!comment %})(?<!comment -%})(?<!comment%})(?<!comment-%})(?<!raw %})(?<!raw -%})(?<!raw%})(?<!raw-%}){%-?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.liquid\\\"}},\\\"end\\\":\\\"-?%}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"}},\\\"name\\\":\\\"meta.tag.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_body\\\"}]},\\\"tag_assign\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(assign|echo)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.liquid\\\"}},\\\"end\\\":\\\"(?=%})\\\",\\\"name\\\":\\\"meta.entity.tag.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#filter\\\"},{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"tag_assign_liquid\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(assign|echo)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.liquid\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.entity.tag.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#filter\\\"},{\\\"include\\\":\\\"#attribute_liquid\\\"},{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"tag_body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_liquid\\\"},{\\\"include\\\":\\\"#tag_assign\\\"},{\\\"include\\\":\\\"#tag_comment_inline\\\"},{\\\"include\\\":\\\"#tag_case\\\"},{\\\"include\\\":\\\"#tag_conditional\\\"},{\\\"include\\\":\\\"#tag_for\\\"},{\\\"include\\\":\\\"#tag_paginate\\\"},{\\\"include\\\":\\\"#tag_render\\\"},{\\\"include\\\":\\\"#tag_tablerow\\\"},{\\\"include\\\":\\\"#tag_expression\\\"}]},\\\"tag_case\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(case|when)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.case.liquid\\\"}},\\\"end\\\":\\\"(?=%})\\\",\\\"name\\\":\\\"meta.entity.tag.case.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"tag_case_liquid\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(case|when)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.case.liquid\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.entity.tag.case.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"tag_comment_block_liquid\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*)(comment)\\\\\\\\b\\\",\\\"end\\\":\\\"(?:^\\\\\\\\s*)(endcomment)\\\\\\\\b\\\",\\\"name\\\":\\\"comment.block.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_comment_block_liquid\\\"},{\\\"match\\\":\\\"(?:^\\\\\\\\s*)(?!(comment|endcomment)).*\\\"}]},\\\"tag_comment_inline\\\":{\\\"begin\\\":\\\"#\\\",\\\"end\\\":\\\"(?=%})\\\",\\\"name\\\":\\\"comment.line.number-sign.liquid\\\"},\\\"tag_comment_inline_liquid\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*)#.*\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.number-sign.liquid\\\"},\\\"tag_conditional\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(if|elsif|unless)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.liquid\\\"}},\\\"end\\\":\\\"(?=%})\\\",\\\"name\\\":\\\"meta.entity.tag.conditional.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"tag_conditional_liquid\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(if|elsif|unless)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.liquid\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.entity.tag.conditional.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"tag_expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_expression_without_arguments\\\"},{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(\\\\\\\\w+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.liquid\\\"}},\\\"end\\\":\\\"(?=%})\\\",\\\"name\\\":\\\"meta.entity.tag.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value_expression\\\"}]}]},\\\"tag_expression_liquid\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_expression_without_arguments\\\"},{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(\\\\\\\\w+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.liquid\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.entity.tag.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value_expression\\\"}]}]},\\\"tag_expression_without_arguments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.liquid\\\"}},\\\"match\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(endunless|endif)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.loop.liquid\\\"}},\\\"match\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(endfor|endtablerow|endpaginate)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.case.liquid\\\"}},\\\"match\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(endcase)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.other.liquid\\\"}},\\\"match\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(capture|case|comment|for|form|if|javascript|paginate|schema|style)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.other.liquid\\\"}},\\\"match\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(endcapture|endcase|endcomment|endfor|endform|endif|endjavascript|endpaginate|endschema|endstyle)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.other.liquid\\\"}},\\\"match\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(else|break|continue)\\\\\\\\b\\\"}]},\\\"tag_for\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(for)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.for.liquid\\\"}},\\\"end\\\":\\\"(?=%})\\\",\\\"name\\\":\\\"meta.entity.tag.for.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_for_body\\\"}]},\\\"tag_for_body\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(in|reversed)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.liquid\\\"},{\\\"match\\\":\\\"\\\\\\\\b(offset|limit):\\\",\\\"name\\\":\\\"keyword.control.liquid\\\"},{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"tag_for_liquid\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(for)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.for.liquid\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.entity.tag.for.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_for_body\\\"}]},\\\"tag_injection\\\":{\\\"begin\\\":\\\"(?<!comment %})(?<!comment -%})(?<!comment%})(?<!comment-%})(?<!raw %})(?<!raw -%})(?<!raw%})(?<!raw-%}){%-?(?!-?\\\\\\\\s*(endstyle|endjavascript|endcomment|endraw))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"}},\\\"end\\\":\\\"-?%}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.liquid\\\"}},\\\"name\\\":\\\"meta.tag.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_body\\\"}]},\\\"tag_liquid\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(liquid)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.liquid.liquid\\\"}},\\\"end\\\":\\\"(?=%})\\\",\\\"name\\\":\\\"meta.entity.tag.liquid.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_comment_block_liquid\\\"},{\\\"include\\\":\\\"#tag_comment_inline_liquid\\\"},{\\\"include\\\":\\\"#tag_assign_liquid\\\"},{\\\"include\\\":\\\"#tag_case_liquid\\\"},{\\\"include\\\":\\\"#tag_conditional_liquid\\\"},{\\\"include\\\":\\\"#tag_for_liquid\\\"},{\\\"include\\\":\\\"#tag_paginate_liquid\\\"},{\\\"include\\\":\\\"#tag_render_liquid\\\"},{\\\"include\\\":\\\"#tag_tablerow_liquid\\\"},{\\\"include\\\":\\\"#tag_expression_liquid\\\"}]},\\\"tag_paginate\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(paginate)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.paginate.liquid\\\"}},\\\"end\\\":\\\"(?=%})\\\",\\\"name\\\":\\\"meta.entity.tag.paginate.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_paginate_body\\\"}]},\\\"tag_paginate_body\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(by)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.liquid\\\"},{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"tag_paginate_liquid\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(paginate)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.paginate.liquid\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.entity.tag.paginate.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_paginate_body\\\"}]},\\\"tag_render\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(render)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.render.liquid\\\"}},\\\"end\\\":\\\"(?=%})\\\",\\\"name\\\":\\\"meta.entity.tag.render.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_render_special_keywords\\\"},{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"tag_render_liquid\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(render)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.render.liquid\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.entity.tag.render.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_render_special_keywords\\\"},{\\\"include\\\":\\\"#attribute_liquid\\\"},{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"tag_render_special_keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(with|as|for)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.other.liquid\\\"},\\\"tag_tablerow\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(tablerow)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tablerow.liquid\\\"}},\\\"end\\\":\\\"(?=%})\\\",\\\"name\\\":\\\"meta.entity.tag.tablerow.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_tablerow_body\\\"}]},\\\"tag_tablerow_body\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.liquid\\\"},{\\\"match\\\":\\\"\\\\\\\\b(cols|offset|limit):\\\",\\\"name\\\":\\\"keyword.control.liquid\\\"},{\\\"include\\\":\\\"#value_expression\\\"}]},\\\"tag_tablerow_liquid\\\":{\\\"begin\\\":\\\"(?:(?:(?<={%)|(?<={%-)|^)\\\\\\\\s*)(tablerow)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tablerow.liquid\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.entity.tag.tablerow.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_tablerow_body\\\"}]},\\\"value_expression\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.filter.liquid\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.filter.liquid\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)(\\\\\\\\|)(?=[^\\\\\\\\]]*)(?=\\\\\\\\])\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s)(\\\\\\\\+|\\\\\\\\-|\\\\\\\\/|\\\\\\\\*)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"invalid.illegal.filter.liquid\\\"},{\\\"include\\\":\\\"#language_constant\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#invalid_range\\\"},{\\\"include\\\":\\\"#range\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#variable_lookup\\\"}]},\\\"variable_lookup\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(additional_checkout_buttons|address|all_country_option_tags|all_products|article|articles|block|blog|blogs|canonical_url|cart|checkout|collection|collections|comment|content_for_additional_checkout_buttons|content_for_header|content_for_index|content_for_layout|country_option_tags|currency|current_page|current_tags|customer|customer_address|discount_allocation|discount_application|external_video|font|forloop|form|fulfillment|gift_card|handle|image|images|line_item|link|linklist|linklists|location|localization|metafield|model|model_source|order|page|page_description|page_image|page_title|pages|paginate|part|policy|powered_by_link|predictive_search|product|product_option|product_variant|recommendations|request|routes|script|scripts|search|section|selling_plan|selling_plan_allocation|selling_plan_group|settings|shipping_method|shop|shop_locale|store_availability|tablerow|tax_line|template|theme|transaction|unit_price_measurement|variant|video|video_source)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.liquid\\\"},{\\\"match\\\":\\\"((?<=\\\\\\\\w\\\\\\\\:\\\\\\\\s)\\\\\\\\w+)\\\",\\\"name\\\":\\\"variable.parameter.liquid\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\w)\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.begin.liquid\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.end.liquid\\\"}},\\\"name\\\":\\\"meta.brackets.liquid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},{\\\"match\\\":\\\"(?<=(\\\\\\\\w|\\\\\\\\])\\\\\\\\.)([-\\\\\\\\w]+\\\\\\\\??)\\\",\\\"name\\\":\\\"variable.other.member.liquid\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\w)\\\\\\\\.(?=\\\\\\\\w)\\\",\\\"name\\\":\\\"punctuation.accessor.liquid\\\"},{\\\"match\\\":\\\"(?i)[a-z_](\\\\\\\\w|(?:-(?!\\\\\\\\}\\\\\\\\})))*\\\",\\\"name\\\":\\\"variable.other.liquid\\\"}]}},\\\"scopeName\\\":\\\"text.html.liquid\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"css\\\",\\\"json\\\",\\\"javascript\\\"]}\"))\n\nexport default [\n...html,\n...css,\n...json,\n...javascript,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Log file\\\",\\\"fileTypes\\\":[\\\"log\\\"],\\\"name\\\":\\\"log\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(Trace)\\\\\\\\b:\\\",\\\"name\\\":\\\"comment log.verbose\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\[(verbose|verb|vrb|vb|v)\\\\\\\\]\\\",\\\"name\\\":\\\"comment log.verbose\\\"},{\\\"match\\\":\\\"(?<=^[\\\\\\\\s\\\\\\\\d\\\\\\\\p]*)\\\\\\\\bV\\\\\\\\b\\\",\\\"name\\\":\\\"comment log.verbose\\\"},{\\\"match\\\":\\\"\\\\\\\\b(DEBUG|Debug)\\\\\\\\b|(?i)\\\\\\\\b(debug)\\\\\\\\:\\\",\\\"name\\\":\\\"markup.changed log.debug\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\[(debug|dbug|dbg|de|d)\\\\\\\\]\\\",\\\"name\\\":\\\"markup.changed log.debug\\\"},{\\\"match\\\":\\\"(?<=^[\\\\\\\\s\\\\\\\\d\\\\\\\\p]*)\\\\\\\\bD\\\\\\\\b\\\",\\\"name\\\":\\\"markup.changed log.debug\\\"},{\\\"match\\\":\\\"\\\\\\\\b(HINT|INFO|INFORMATION|Info|NOTICE|II)\\\\\\\\b|(?i)\\\\\\\\b(info|information)\\\\\\\\:\\\",\\\"name\\\":\\\"markup.inserted log.info\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\[(information|info|inf|in|i)\\\\\\\\]\\\",\\\"name\\\":\\\"markup.inserted log.info\\\"},{\\\"match\\\":\\\"(?<=^[\\\\\\\\s\\\\\\\\d\\\\\\\\p]*)\\\\\\\\bI\\\\\\\\b\\\",\\\"name\\\":\\\"markup.inserted log.info\\\"},{\\\"match\\\":\\\"\\\\\\\\b(WARNING|WARN|Warn|WW)\\\\\\\\b|(?i)\\\\\\\\b(warning)\\\\\\\\:\\\",\\\"name\\\":\\\"markup.deleted log.warning\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\[(warning|warn|wrn|wn|w)\\\\\\\\]\\\",\\\"name\\\":\\\"markup.deleted log.warning\\\"},{\\\"match\\\":\\\"(?<=^[\\\\\\\\s\\\\\\\\d\\\\\\\\p]*)\\\\\\\\bW\\\\\\\\b\\\",\\\"name\\\":\\\"markup.deleted log.warning\\\"},{\\\"match\\\":\\\"\\\\\\\\b(ALERT|CRITICAL|EMERGENCY|ERROR|FAILURE|FAIL|Fatal|FATAL|Error|EE)\\\\\\\\b|(?i)\\\\\\\\b(error)\\\\\\\\:\\\",\\\"name\\\":\\\"string.regexp, strong log.error\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\[(error|eror|err|er|e|fatal|fatl|ftl|fa|f)\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp, strong log.error\\\"},{\\\"match\\\":\\\"(?<=^[\\\\\\\\s\\\\\\\\d\\\\\\\\p]*)\\\\\\\\bE\\\\\\\\b\\\",\\\"name\\\":\\\"string.regexp, strong log.error\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d{4}-\\\\\\\\d{2}-\\\\\\\\d{2}(?=T|\\\\\\\\b)\\\",\\\"name\\\":\\\"comment log.date\\\"},{\\\"match\\\":\\\"(?<=(^|\\\\\\\\s))\\\\\\\\d{2}[^\\\\\\\\w\\\\\\\\s]\\\\\\\\d{2}[^\\\\\\\\w\\\\\\\\s]\\\\\\\\d{4}\\\\\\\\b\\\",\\\"name\\\":\\\"comment log.date\\\"},{\\\"match\\\":\\\"T?\\\\\\\\d{1,2}:\\\\\\\\d{2}(:\\\\\\\\d{2}([.,]\\\\\\\\d{1,})?)?(Z| ?[+-]\\\\\\\\d{1,2}:\\\\\\\\d{2})?\\\\\\\\b\\\",\\\"name\\\":\\\"comment log.date\\\"},{\\\"match\\\":\\\"T\\\\\\\\d{2}\\\\\\\\d{2}(\\\\\\\\d{2}([.,]\\\\\\\\d{1,})?)?(Z| ?[+-]\\\\\\\\d{1,2}\\\\\\\\d{2})?\\\\\\\\b\\\",\\\"name\\\":\\\"comment log.date\\\"},{\\\"match\\\":\\\"\\\\\\\\b([0-9a-fA-F]{40}|[0-9a-fA-F]{10}|[0-9a-fA-F]{7})\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9a-fA-F]{8}[-]?([0-9a-fA-F]{4}[-]?){3}[0-9a-fA-F]{12}\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language log.constant\\\"},{\\\"match\\\":\\\"\\\\\\\\b([0-9a-fA-F]{2,}[:-])+[0-9a-fA-F]{2,}+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language log.constant\\\"},{\\\"match\\\":\\\"\\\\\\\\b([0-9]+|true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language log.constant\\\"},{\\\"match\\\":\\\"\\\\\\\\b(0x[a-fA-F0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language log.constant\\\"},{\\\"match\\\":\\\"\\\\\\\"[^\\\\\\\"]*\\\\\\\"\\\",\\\"name\\\":\\\"string log.string\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w])'[^']*'\\\",\\\"name\\\":\\\"string log.string\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z.]*Exception)\\\\\\\\b\\\",\\\"name\\\":\\\"string.regexp, emphasis log.exceptiontype\\\"},{\\\"begin\\\":\\\"^[\\\\\\\\t ]*at[\\\\\\\\t ]\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"string.key, emphasis log.exception\\\"},{\\\"match\\\":\\\"\\\\\\\\b[a-z]+://\\\\\\\\S+\\\\\\\\b/?\\\",\\\"name\\\":\\\"constant.language log.constant\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w/\\\\\\\\\\\\\\\\])([\\\\\\\\w-]+\\\\\\\\.)+([\\\\\\\\w-])+(?![\\\\\\\\w/\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"constant.language log.constant\\\"}],\\\"scopeName\\\":\\\"text.log\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Logo\\\",\\\"fileTypes\\\":[],\\\"name\\\":\\\"logo\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"^to [\\\\\\\\w.]+\\\",\\\"name\\\":\\\"entity.name.function.logo\\\"},{\\\"match\\\":\\\"continue|do\\\\\\\\.until|do\\\\\\\\.while|end|for(each)?|if(else|falsetrue|)|repeat|stop|until\\\",\\\"name\\\":\\\"keyword.control.logo\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\.defmacro|\\\\\\\\.eq|\\\\\\\\.macro|\\\\\\\\.maybeoutput|\\\\\\\\.setbf|\\\\\\\\.setfirst|\\\\\\\\.setitem|\\\\\\\\.setsegmentsize|allopen|allowgetset|and|apply|arc|arctan|arity|array|arrayp|arraytolist|ascii|ashift|back|background|backslashedp|beforep|bitand|bitnot|bitor|bitxor|buried|buriedp|bury|buryall|buryname|butfirst|butfirsts|butlast|bye|cascade|case|caseignoredp|catch|char|clean|clearscreen|cleartext|close|closeall|combine|cond|contents|copydef|cos|count|crossmap|cursor|define|definedp|dequeue|difference|dribble|edall|edit|editfile|edn|edns|edpl|edpls|edps|emptyp|eofp|epspict|equalp|erall|erase|erasefile|ern|erns|erpl|erpls|erps|erract|error|exp|fence|filep|fill|filter|find|first|firsts|forever|form|forward|fput|fullprintp|fullscreen|fulltext|gc|gensym|global|goto|gprop|greaterp|heading|help|hideturtle|home|ignore|int|invoke|iseq|item|keyp|label|last|left|lessp|list|listp|listtoarray|ln|load|loadnoisily|loadpict|local|localmake|log10|lowercase|lput|lshift|macroexpand|macrop|make|map|map.se|mdarray|mditem|mdsetitem|member|memberp|minus|modulo|name|namelist|namep|names|nodes|nodribble|norefresh|not|numberp|openappend|openread|openupdate|openwrite|or|output|palette|parse|pause|pen|pencolor|pendown|pendownp|penerase|penmode|penpaint|penreverse|pensize|penup|pick|plist|plistp|plists|pllist|po|poall|pon|pons|pop|popl|popls|pops|pos|pot|pots|power|pprop|prefix|primitivep|print|printdepthlimit|printwidthlimit|procedurep|procedures|product|push|queue|quoted|quotient|radarctan|radcos|radsin|random|rawascii|readchar|readchars|reader|readlist|readpos|readrawline|readword|redefp|reduce|refresh|remainder|remdup|remove|remprop|repcount|rerandom|reverse|right|round|rseq|run|runparse|runresult|save|savel|savepict|screenmode|scrunch|sentence|setbackground|setcursor|seteditor|setheading|sethelploc|setitem|setlibloc|setmargins|setpalette|setpen|setpencolor|setpensize|setpos|setprefix|setread|setreadpos|setscrunch|settemploc|settextcolor|setwrite|setwritepos|setx|setxy|sety|shell|show|shownp|showturtle|sin|splitscreen|sqrt|standout|startup|step|stepped|steppedp|substringp|sum|tag|test|text|textscreen|thing|throw|towards|trace|traced|tracedp|transfer|turtlemode|type|unbury|unburyall|unburyname|unburyonedit|unstep|untrace|uppercase|usealternatenam|wait|while|window|word|wordp|wrap|writepos|writer|xcor|ycor)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.logo\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.logo\\\"}},\\\"match\\\":\\\"(\\\\\\\\:)(?:\\\\\\\\|[^|]*\\\\\\\\||[-\\\\\\\\w.]*)+\\\",\\\"name\\\":\\\"variable.parameter.logo\\\"},{\\\"match\\\":\\\"\\\\\\\"(?:\\\\\\\\|[^|]*\\\\\\\\||[-\\\\\\\\w.]*)+\\\",\\\"name\\\":\\\"string.other.word.logo\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=;)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.logo\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\";\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.logo\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.semicolon.logo\\\"}]}],\\\"scopeName\\\":\\\"source.logo\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Luau\\\",\\\"fileTypes\\\":[\\\"luau\\\"],\\\"name\\\":\\\"luau\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-definition\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#shebang\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#local-declaration\\\"},{\\\"include\\\":\\\"#for-loop\\\"},{\\\"include\\\":\\\"#type-alias-declaration\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#language_constant\\\"},{\\\"include\\\":\\\"#standard_library\\\"},{\\\"include\\\":\\\"#identifier\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#parentheses\\\"},{\\\"include\\\":\\\"#table\\\"},{\\\"include\\\":\\\"#type_cast\\\"},{\\\"include\\\":\\\"#type_annotation\\\"},{\\\"include\\\":\\\"#attribute\\\"}],\\\"repository\\\":{\\\"attribute\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.attribute.luau\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.attribute.luau\\\"}},\\\"match\\\":\\\"(@)([a-zA-Z_][a-zA-Z0-9_]*)\\\",\\\"name\\\":\\\"meta.attribute.luau\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"--\\\\\\\\[(=*)\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\1\\\\\\\\]\\\",\\\"name\\\":\\\"comment.block.luau\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(```luau?)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.luau\\\"}},\\\"end\\\":\\\"(```)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.luau\\\"}},\\\"name\\\":\\\"keyword.operator.other.luau\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.luau\\\"}]},{\\\"include\\\":\\\"#doc_comment_tags\\\"}]},{\\\"begin\\\":\\\"---\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-dash.documentation.luau\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#doc_comment_tags\\\"}]},{\\\"begin\\\":\\\"--\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-dash.luau\\\"}]},\\\"doc_comment_tags\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"@\\\\\\\\w+\\\",\\\"name\\\":\\\"storage.type.class.luadoc.luau\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.luadoc.luau\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.luau\\\"}},\\\"match\\\":\\\"((?<=[\\\\\\\\s*!\\\\\\\\/])[\\\\\\\\\\\\\\\\@]param)(?:\\\\\\\\s)+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b)\\\"}]},\\\"for-loop\\\":{\\\"begin\\\":\\\"\\\\\\\\b(for)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.luau\\\"}},\\\"end\\\":\\\"\\\\\\\\b(in)\\\\\\\\b|(=)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.luau\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.luau\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.luau\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*in\\\\\\\\b|\\\\\\\\s*[=,]|\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_literal\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.parameter.luau\\\"}]},\\\"function-definition\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?:(local)\\\\\\\\s+)?(function)\\\\\\\\b(?![,:])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.local.luau\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.luau\\\"}},\\\"end\\\":\\\"(?<=[\\\\\\\\)\\\\\\\\-{}\\\\\\\\[\\\\\\\\]\\\\\\\"'])\\\",\\\"name\\\":\\\"meta.function.luau\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#generics-declaration\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.luau\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.luau\\\"}},\\\"name\\\":\\\"meta.parameter.luau\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"variable.parameter.function.varargs.luau\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"variable.parameter.function.luau\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.arguments.luau\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.luau\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\),])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_literal\\\"}]}]},{\\\"match\\\":\\\"\\\\\\\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm|__iter|__idiv)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.metamethod.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.luau\\\"}]},\\\"generics-declaration\\\":{\\\"begin\\\":\\\"(<)\\\",\\\"end\\\":\\\"(>)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"entity.name.type.luau\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.luau\\\"},{\\\"include\\\":\\\"#type_literal\\\"}]},\\\"identifier\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b(?=\\\\\\\\s*(?:[({\\\\\\\"']|\\\\\\\\[\\\\\\\\[))\\\",\\\"name\\\":\\\"entity.name.function.luau\\\"},{\\\"match\\\":\\\"(?<=[^.]\\\\\\\\.|:)\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.property.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Z_][A-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.constant.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.luau\\\"}]},\\\"interpolated_string_expression\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.interpolated-string-expression.begin.luau\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.luau\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.interpolated-string-expression.end.luau\\\"}},\\\"name\\\":\\\"meta.template.expression.luau\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.luau\\\"}]},\\\"keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(break|do|else|for|if|elseif|return|then|repeat|while|until|end|in|continue)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\b(local)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.local.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\b(function)\\\\\\\\b(?![,:])\\\",\\\"name\\\":\\\"keyword.control.luau\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(self)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.self.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\b(and|or|not)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logical.luau keyword.operator.wordlike.luau\\\"},{\\\"match\\\":\\\"(?<=[^.]\\\\\\\\.|:)\\\\\\\\b(__add|__call|__concat|__div|__eq|__index|__le|__len|__lt|__metatable|__mod|__mode|__mul|__newindex|__pow|__sub|__tostring|__unm)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.metamethod.luau\\\"},{\\\"match\\\":\\\"(?<![.])\\\\\\\\.{3}(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.other.unit.luau\\\"}]},\\\"language_constant\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.false.luau\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(true)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.true.luau\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(nil(?!:))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.nil.luau\\\"}]},\\\"local-declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\b(local)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.local.luau\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*do\\\\\\\\b|\\\\\\\\s*[=;]|\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#attribute\\\"},{\\\"begin\\\":\\\"(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.luau\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*do\\\\\\\\b|\\\\\\\\s*[=;,]|\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_literal\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b([A-Z_][A-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.constant.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.luau\\\"}]},\\\"number\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b0_*[xX]_*[\\\\\\\\da-fA-F_]*(?:[eE][\\\\\\\\+\\\\\\\\-]?_*\\\\\\\\d[\\\\\\\\d_]*(?:\\\\\\\\.[\\\\\\\\d_]*)?)?\\\",\\\"name\\\":\\\"constant.numeric.hex.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\b0_*[bB][01_]+(?:[eE][\\\\\\\\+\\\\\\\\-]?_*\\\\\\\\d[\\\\\\\\d_]*(?:\\\\\\\\.[\\\\\\\\d_]*)?)?\\\",\\\"name\\\":\\\"constant.numeric.binary.luau\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\d[\\\\\\\\d_]*(?:\\\\\\\\.[\\\\\\\\d_]*)?|\\\\\\\\.\\\\\\\\d[\\\\\\\\d_]*)(?:[eE][\\\\\\\\+\\\\\\\\-]?_*\\\\\\\\d[\\\\\\\\d_]*(?:\\\\\\\\.[\\\\\\\\d_]*)?)?\\\",\\\"name\\\":\\\"constant.numeric.decimal.luau\\\"}]},\\\"operator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"==|~=|!=|<=?|>=?\\\",\\\"name\\\":\\\"keyword.operator.comparison.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\+=|-=|/=|//=|\\\\\\\\*=|%=|\\\\\\\\^=|\\\\\\\\.\\\\\\\\.=|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\+|-|%|\\\\\\\\*|\\\\\\\\/\\\\\\\\/|\\\\\\\\/|\\\\\\\\^\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.luau\\\"},{\\\"match\\\":\\\"#|(?<!\\\\\\\\.)\\\\\\\\.{2}(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.operator.other.luau\\\"}]},\\\"parentheses\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.arguments.begin.luau\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.arguments.end.luau\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.arguments.luau\\\"},{\\\"include\\\":\\\"source.luau\\\"}]},\\\"shebang\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.luau\\\"}},\\\"match\\\":\\\"\\\\\\\\A(#!).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.shebang.luau\\\"},\\\"standard_library\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(assert|collectgarbage|error|gcinfo|getfenv|getmetatable|ipairs|loadstring|newproxy|next|pairs|pcall|print|rawequal|rawset|require|select|setfenv|setmetatable|tonumber|tostring|type|typeof|unpack|xpcall)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.luau\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(_G|_VERSION)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.luau\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(bit32\\\\\\\\.(?:arshift|band|bnot|bor|btest|bxor|extract|lrotate|lshift|replace|rrotate|rshift|countlz|countrz|byteswap)|coroutine\\\\\\\\.(?:create|isyieldable|resume|running|status|wrap|yield|close)|debug\\\\\\\\.(?:info|loadmodule|profilebegin|profileend|traceback)|math\\\\\\\\.(?:abs|acos|asin|atan|atan2|ceil|clamp|cos|cosh|deg|exp|floor|fmod|frexp|ldexp|log|log10|max|min|modf|noise|pow|rad|random|randomseed|round|sign|sin|sinh|sqrt|tan|tanh)|os\\\\\\\\.(?:clock|date|difftime|time)|string\\\\\\\\.(?:byte|char|find|format|gmatch|gsub|len|lower|match|pack|packsize|rep|reverse|split|sub|unpack|upper)|table\\\\\\\\.(?:concat|create|find|foreach|foreachi|getn|insert|maxn|move|pack|remove|sort|unpack|clear|freeze|isfrozen|clone)|task\\\\\\\\.(?:spawn|synchronize|desynchronize|wait|defer|delay)|utf8\\\\\\\\.(?:char|codepoint|codes|graphemes|len|nfcnormalize|nfdnormalize|offset)|buffer\\\\\\\\.(?:create|fromstring|tostring|len|readi8|readu8|readi16|readu16|readi32|readu32|readf32|readf64|writei8|writeu8|writei16|writeu16|writei32|writeu32|writef32|writef64|readstring|writestring|copy|fill))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.luau\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(bit32|buffer|coroutine|debug|math(\\\\\\\\.(huge|pi))?|os|string|table|task|utf8(\\\\\\\\.charpattern)?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.luau\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(delay|DebuggerManager|elapsedTime|PluginManager|printidentity|settings|spawn|stats|tick|time|UserSettings|version|wait|warn)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.luau\\\"},{\\\"match\\\":\\\"(?<![^.]\\\\\\\\.|:)\\\\\\\\b(game|plugin|shared|script|workspace|Enum(?:\\\\\\\\.\\\\\\\\w+){0,2})\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.luau\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.luau\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escape\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.luau\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escape\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[(=*)\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\1\\\\\\\\]\\\",\\\"name\\\":\\\"string.other.multiline.luau\\\"},{\\\"begin\\\":\\\"`\\\",\\\"end\\\":\\\"`\\\",\\\"name\\\":\\\"string.interpolated.luau\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_string_expression\\\"},{\\\"include\\\":\\\"#string_escape\\\"}]}]},\\\"string_escape\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[abfnrtvz'\\\\\\\"`{\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\d{1,3}\\\",\\\"name\\\":\\\"constant.character.escape.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9a-fA-F]{2}\\\",\\\"name\\\":\\\"constant.character.escape.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u\\\\\\\\{[0-9a-fA-F]*\\\\\\\\}\\\",\\\"name\\\":\\\"constant.character.escape.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\$\\\",\\\"name\\\":\\\"constant.character.escape.luau\\\"}]},\\\"table\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.table.begin.luau\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.table.end.luau\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"[,;]\\\",\\\"name\\\":\\\"punctuation.separator.fields.luau\\\"},{\\\"include\\\":\\\"source.luau\\\"}]},\\\"type-alias-declaration\\\":{\\\"begin\\\":\\\"^\\\\\\\\b(?:(export)\\\\\\\\s+)?(type)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.visibility.luau\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.luau\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*$)|(?=\\\\\\\\s*;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_literal\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.luau\\\"}]},\\\"type_annotation\\\":{\\\"begin\\\":\\\":(?!\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b(?=\\\\\\\\s*(?:[({\\\\\\\"']|\\\\\\\\[\\\\\\\\[)))\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!\\\\\\\\s*->)|=|;|$|(?=\\\\\\\\breturn\\\\\\\\b)|(?=\\\\\\\\bend\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#type_literal\\\"}]},\\\"type_cast\\\":{\\\"begin\\\":\\\"(::)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.typecast.luau\\\"}},\\\"end\\\":\\\"(?=^|[;),}\\\\\\\\]:?\\\\\\\\-\\\\\\\\+\\\\\\\\>](?!\\\\\\\\s*[&\\\\\\\\|])|$|\\\\\\\\b(break|do|else|for|if|elseif|return|then|repeat|while|until|end|in|continue)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_literal\\\"}]},\\\"type_literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"\\\\\\\\?|\\\\\\\\&|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.type.luau\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"keyword.operator.type.function.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\b(false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.false.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.true.luau\\\"},{\\\"match\\\":\\\"\\\\\\\\b(nil|string|number|boolean|thread|userdata|symbol|any)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.primitive.luau\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(typeof)\\\\\\\\b(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.luau\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.arguments.begin.typeof.luau\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.arguments.end.typeof.luau\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.luau\\\"}]},{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.luau\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.luau\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.luau\\\"},{\\\"include\\\":\\\"#type_literal\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.luau\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_literal\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.property.luau\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.type.luau\\\"}},\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b(:)\\\"},{\\\"include\\\":\\\"#type_literal\\\"},{\\\"match\\\":\\\"[,;]\\\",\\\"name\\\":\\\"punctuation.separator.fields.type.luau\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.luau\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.type.luau\\\"}},\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\b(:)\\\",\\\"name\\\":\\\"variable.parameter.luau\\\"},{\\\"include\\\":\\\"#type_literal\\\"}]}]}},\\\"scopeName\\\":\\\"source.luau\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Makefile\\\",\\\"name\\\":\\\"make\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#variable-assignment\\\"},{\\\"include\\\":\\\"#directives\\\"},{\\\"include\\\":\\\"#recipe\\\"},{\\\"include\\\":\\\"#target\\\"}],\\\"repository\\\":{\\\"another-variable-braces\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<={)(?!})\\\",\\\"end\\\":\\\"(?=}|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"name\\\":\\\"variable.other.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.continuation.makefile\\\"}]}]},\\\"another-variable-parentheses\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\()(?!\\\\\\\\))\\\",\\\"end\\\":\\\"(?=\\\\\\\\)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"name\\\":\\\"variable.other.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.continuation.makefile\\\"}]}]},\\\"braces-interpolation\\\":{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"builtin-variable-braces\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<={)(MAKEFILES|VPATH|SHELL|MAKESHELL|MAKE|MAKELEVEL|MAKEFLAGS|MAKECMDGOALS|CURDIR|SUFFIXES|\\\\\\\\.LIBPATTERNS)(?=\\\\\\\\s*})\\\",\\\"name\\\":\\\"variable.language.makefile\\\"}]},\\\"builtin-variable-parentheses\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\()(MAKEFILES|VPATH|SHELL|MAKESHELL|MAKE|MAKELEVEL|MAKEFLAGS|MAKECMDGOALS|CURDIR|SUFFIXES|\\\\\\\\.LIBPATTERNS)(?=\\\\\\\\s*\\\\\\\\))\\\",\\\"name\\\":\\\"variable.language.makefile\\\"}]},\\\"comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimeter.comma.makefile\\\"},\\\"comment\\\":{\\\"begin\\\":\\\"(^[ ]+)?((?<!\\\\\\\\\\\\\\\\)(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\)*)(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.makefile\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.makefile\\\"}},\\\"end\\\":\\\"(?=[^\\\\\\\\\\\\\\\\])$\\\",\\\"name\\\":\\\"comment.line.number-sign.makefile\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.continuation.makefile\\\"}]}]},\\\"directives\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^[ ]*([s\\\\\\\\-]?include)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.include.makefile\\\"}},\\\"end\\\":\\\"^\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"match\\\":\\\"%\\\",\\\"name\\\":\\\"constant.other.placeholder.makefile\\\"}]},{\\\"begin\\\":\\\"^[ ]*(vpath)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.vpath.makefile\\\"}},\\\"end\\\":\\\"^\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"match\\\":\\\"%\\\",\\\"name\\\":\\\"constant.other.placeholder.makefile\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(?:(override)\\\\\\\\s*)?(define)\\\\\\\\s*([^\\\\\\\\s]+)\\\\\\\\s*(=|\\\\\\\\?=|:=|\\\\\\\\+=)?(?=\\\\\\\\s)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.override.makefile\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.define.makefile\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.makefile\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.makefile\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(endef)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.scope.conditional.makefile\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?!\\\\\\\\n)\\\",\\\"end\\\":\\\"^\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#directives\\\"}]},{\\\"begin\\\":\\\"^[ ]*(export)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.$1.makefile\\\"}},\\\"end\\\":\\\"^\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-assignment\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s]+\\\",\\\"name\\\":\\\"variable.other.makefile\\\"}]},{\\\"begin\\\":\\\"^[ ]*(override|private)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.$1.makefile\\\"}},\\\"end\\\":\\\"^\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variable-assignment\\\"}]},{\\\"begin\\\":\\\"^[ ]*(unexport|undefine)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.$1.makefile\\\"}},\\\"end\\\":\\\"^\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s]+\\\",\\\"name\\\":\\\"variable.other.makefile\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(ifeq|ifneq|ifdef|ifndef)(?=\\\\\\\\s)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.$1.makefile\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(endif)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.scope.conditional.makefile\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"^\\\",\\\"name\\\":\\\"meta.scope.condition.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*else(?=\\\\\\\\s)\\\\\\\\s*(ifeq|ifneq|ifdef|ifndef)*(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.else.makefile\\\"}},\\\"end\\\":\\\"^\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"flavor-variable-braces\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<={)(origin|flavor)\\\\\\\\s(?=[^\\\\\\\\s}]+\\\\\\\\s*})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.$1.makefile\\\"}},\\\"contentName\\\":\\\"variable.other.makefile\\\",\\\"end\\\":\\\"(?=})\\\",\\\"name\\\":\\\"meta.scope.function-call.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"}]}]},\\\"flavor-variable-parentheses\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\()(origin|flavor)\\\\\\\\s(?=[^\\\\\\\\s)]+\\\\\\\\s*\\\\\\\\))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.$1.makefile\\\"}},\\\"contentName\\\":\\\"variable.other.makefile\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.scope.function-call.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"}]}]},\\\"function-variable-braces\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<={)(subst|patsubst|strip|findstring|filter(-out)?|sort|word(list)?|firstword|lastword|dir|notdir|suffix|basename|addsuffix|addprefix|join|wildcard|realpath|abspath|info|error|warning|shell|foreach|if|or|and|call|eval|value|file|guile)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.$1.makefile\\\"}},\\\"end\\\":\\\"(?=}|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"name\\\":\\\"meta.scope.function-call.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*\\\",\\\"name\\\":\\\"constant.other.placeholder.makefile\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.continuation.makefile\\\"}]}]},\\\"function-variable-parentheses\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\()(subst|patsubst|strip|findstring|filter(-out)?|sort|word(list)?|firstword|lastword|dir|notdir|suffix|basename|addsuffix|addprefix|join|wildcard|realpath|abspath|info|error|warning|shell|foreach|if|or|and|call|eval|value|file|guile)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.$1.makefile\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"name\\\":\\\"meta.scope.function-call.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*\\\",\\\"name\\\":\\\"constant.other.placeholder.makefile\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.continuation.makefile\\\"}]}]},\\\"interpolation\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#parentheses-interpolation\\\"},{\\\"include\\\":\\\"#braces-interpolation\\\"}]},\\\"parentheses-interpolation\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"recipe\\\":{\\\"begin\\\":\\\"^\\\\\\\\t([+\\\\\\\\-@]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.$1.makefile\\\"}},\\\"end\\\":\\\"[^\\\\\\\\\\\\\\\\]$\\\",\\\"name\\\":\\\"meta.scope.recipe.makefile\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.continuation.makefile\\\"},{\\\"include\\\":\\\"#variables\\\"}]},\\\"simple-variable\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\$[^(){}]\\\",\\\"name\\\":\\\"variable.language.makefile\\\"}]},\\\"target\\\":{\\\"begin\\\":\\\"^(?!\\\\\\\\t)([^:]*)(:)(?!\\\\\\\\=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.target.$1.makefile\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\.(PHONY|SUFFIXES|DEFAULT|PRECIOUS|INTERMEDIATE|SECONDARY|SECONDEXPANSION|DELETE_ON_ERROR|IGNORE|LOW_RESOLUTION_TIME|SILENT|EXPORT_ALL_VARIABLES|NOTPARALLEL|ONESHELL|POSIX))\\\\\\\\s*$\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\S)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"entity.name.function.target.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"match\\\":\\\"%\\\",\\\"name\\\":\\\"constant.other.placeholder.makefile\\\"}]}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.makefile\\\"}},\\\"end\\\":\\\"[^\\\\\\\\\\\\\\\\]$\\\",\\\"name\\\":\\\"meta.scope.target.makefile\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=[^\\\\\\\\\\\\\\\\])$\\\",\\\"name\\\":\\\"meta.scope.prerequisites.makefile\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.continuation.makefile\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*\\\",\\\"name\\\":\\\"constant.other.placeholder.makefile\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variables\\\"}]}]},\\\"variable-assignment\\\":{\\\"begin\\\":\\\"(^[ ]*|\\\\\\\\G\\\\\\\\s*)([^\\\\\\\\s:#=]+)\\\\\\\\s*((?<![?:+!])=|\\\\\\\\?=|:=|\\\\\\\\+=|!=)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"variable.other.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.makefile\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.continuation.makefile\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variables\\\"}]},\\\"variable-braces\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\${\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.makefile\\\"}},\\\"end\\\":\\\"}|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"name\\\":\\\"string.interpolated.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#builtin-variable-braces\\\"},{\\\"include\\\":\\\"#function-variable-braces\\\"},{\\\"include\\\":\\\"#flavor-variable-braces\\\"},{\\\"include\\\":\\\"#another-variable-braces\\\"}]}]},\\\"variable-parentheses\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.makefile\\\"}},\\\"end\\\":\\\"\\\\\\\\)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"name\\\":\\\"string.interpolated.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#builtin-variable-parentheses\\\"},{\\\"include\\\":\\\"#function-variable-parentheses\\\"},{\\\"include\\\":\\\"#flavor-variable-parentheses\\\"},{\\\"include\\\":\\\"#another-variable-parentheses\\\"}]}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#simple-variable\\\"},{\\\"include\\\":\\\"#variable-parentheses\\\"},{\\\"include\\\":\\\"#variable-braces\\\"}]}},\\\"scopeName\\\":\\\"source.makefile\\\",\\\"aliases\\\":[\\\"makefile\\\"]}\"))\n\nexport default [\nlang\n]\n", "import css from './css.mjs'\nimport less from './less.mjs'\nimport scss from './scss.mjs'\nimport javascript from './javascript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Marko\\\",\\\"fileTypes\\\":[\\\"marko\\\"],\\\"name\\\":\\\"marko\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(style)\\\\\\\\s+(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.marko.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko.css\\\"}},\\\"comment\\\":\\\"CSS style block, eg: style { color: green }\\\",\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.marko.css\\\"}},\\\"name\\\":\\\"meta.embedded.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(style)\\\\\\\\.(less)\\\\\\\\s+(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.marko.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.marko.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko.css\\\"}},\\\"comment\\\":\\\"Less style block, eg: style.less { color: green }\\\",\\\"contentName\\\":\\\"source.less\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.marko.css\\\"}},\\\"name\\\":\\\"meta.embedded.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.less\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(style)\\\\\\\\.(scss)\\\\\\\\s+(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.marko.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.marko.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko.css\\\"}},\\\"comment\\\":\\\"SCSS style block, eg: style.scss { color: green }\\\",\\\"contentName\\\":\\\"source.scss\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.marko.css\\\"}},\\\"name\\\":\\\"meta.embedded.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.scss\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(?:(static )|(?=(?:class|import|export) ))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.static.marko\\\"}},\\\"comment\\\":\\\"Top level blocks parsed as JavaScript\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?=\\\\\\\\n|$)\\\",\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javascript-statement\\\"}]},{\\\"include\\\":\\\"#content-concise-mode\\\"}],\\\"repository\\\":{\\\"attrs\\\":{\\\"patterns\\\":[{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?:\\\\\\\\s+|,)(?:(key|on[a-zA-Z0-9_$-]+|[a-zA-Z0-9_$]+Change|no-update(?:-body)?(?:-if)?)|([a-zA-Z0-9_$][a-zA-Z0-9_$-]*))(:[a-zA-Z0-9_$][a-zA-Z0-9_$-]*)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.attribute-name.marko\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.marko\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.attribute-name.marko\\\"}},\\\"comment\\\":\\\"Attribute with optional value\\\",\\\"end\\\":\\\"(?=.|$)\\\",\\\"name\\\":\\\"meta.marko-attribute\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#html-args-or-method\\\"},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*(:?=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"comment\\\":\\\"Attribute value\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?=.|$)\\\",\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javascript-expression\\\"}]}]},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?:\\\\\\\\s+|,)\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.spread.marko\\\"}},\\\"comment\\\":\\\"A ...spread attribute\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?=.|$)\\\",\\\"name\\\":\\\"meta.marko-spread-attribute\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javascript-expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(,(?!,))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"comment\\\":\\\"Consume any whitespace after a comma\\\",\\\"end\\\":\\\"(?!\\\\\\\\S)\\\"},{\\\"include\\\":\\\"#javascript-comment-multiline\\\"},{\\\"include\\\":\\\"#invalid\\\"}]},\\\"concise-html-block\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(--+)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"}},\\\"comment\\\":\\\"--- HTML block within concise mode content. ---\\\",\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.marko\\\"}},\\\"name\\\":\\\"meta.section.marko-html-block\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#content-html-mode\\\"}]},\\\"concise-html-line\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#html-comments\\\"},{\\\"include\\\":\\\"#tag-html\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"string\\\"},{\\\"include\\\":\\\"#placeholder\\\"},{\\\"match\\\":\\\".+?\\\",\\\"name\\\":\\\"string\\\"}]}},\\\"comment\\\":\\\"-- HTML line within concise mode content. (content-html-mode w/o scriptlet)\\\",\\\"match\\\":\\\"\\\\\\\\s*(--+)(?=\\\\\\\\s+\\\\\\\\S)(.*$)\\\",\\\"name\\\":\\\"meta.section.marko-html-line\\\"},\\\"concise-open-tag-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-before-attrs\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attrs\\\"},{\\\"include\\\":\\\"#invalid\\\"}]},{\\\"begin\\\":\\\"(?!^)(?= )\\\",\\\"end\\\":\\\"(?=--)|(?<!,)(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attrs\\\"},{\\\"include\\\":\\\"#invalid\\\"}]}]},\\\"concise-script-block\\\":{\\\"begin\\\":\\\"(\\\\\\\\s+)(--+)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"}},\\\"comment\\\":\\\"--- Embedded concise script content block. ---\\\",\\\"end\\\":\\\"(\\\\\\\\2)|(?=^(?!\\\\\\\\1)\\\\\\\\s*\\\\\\\\S)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.marko\\\"}},\\\"name\\\":\\\"meta.section.marko-script-block\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-script\\\"}]},\\\"concise-script-line\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*(--+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"}},\\\"comment\\\":\\\"-- Embedded concise script content line.\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.section.marko-script-line\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-script\\\"}]},\\\"concise-style-block\\\":{\\\"begin\\\":\\\"(\\\\\\\\s+)(--+)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"}},\\\"comment\\\":\\\"--- Embedded concise style content block. ---\\\",\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"(\\\\\\\\2)|(?=^(?!\\\\\\\\1)\\\\\\\\s*\\\\\\\\S)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.marko\\\"}},\\\"name\\\":\\\"meta.section.marko-style-block\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-style\\\"}]},\\\"concise-style-block-less\\\":{\\\"begin\\\":\\\"(\\\\\\\\s+)(--+)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"}},\\\"comment\\\":\\\"--- Embedded concise style content block. ---\\\",\\\"contentName\\\":\\\"source.less\\\",\\\"end\\\":\\\"(\\\\\\\\2)|(?=^(?!\\\\\\\\1)\\\\\\\\s*\\\\\\\\S)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.marko\\\"}},\\\"name\\\":\\\"meta.section.marko-style-block\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-style-less\\\"}]},\\\"concise-style-block-scss\\\":{\\\"begin\\\":\\\"(\\\\\\\\s+)(--+)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"}},\\\"comment\\\":\\\"--- Embedded concise style content block. ---\\\",\\\"contentName\\\":\\\"source.scss\\\",\\\"end\\\":\\\"(\\\\\\\\2)|(?=^(?!\\\\\\\\1)\\\\\\\\s*\\\\\\\\S)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.marko\\\"}},\\\"name\\\":\\\"meta.section.marko-style-block\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-style-scss\\\"}]},\\\"concise-style-line\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*(--+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"}},\\\"comment\\\":\\\"-- Embedded concise style content line.\\\",\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.section.marko-style-line\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-style\\\"}]},\\\"concise-style-line-less\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*(--+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"}},\\\"comment\\\":\\\"-- Embedded concise style content line.\\\",\\\"contentName\\\":\\\"source.less\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.section.marko-style-line\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-style-less\\\"}]},\\\"concise-style-line-scss\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*(--+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"}},\\\"comment\\\":\\\"-- Embedded concise style content line.\\\",\\\"contentName\\\":\\\"source.scss\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.section.marko-style-line\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-style-scss\\\"}]},\\\"content-concise-mode\\\":{\\\"comment\\\":\\\"Concise mode content block.\\\",\\\"name\\\":\\\"meta.marko-concise-content\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#scriptlet\\\"},{\\\"include\\\":\\\"#javascript-comments\\\"},{\\\"include\\\":\\\"#html-comments\\\"},{\\\"include\\\":\\\"#concise-html-block\\\"},{\\\"include\\\":\\\"#concise-html-line\\\"},{\\\"include\\\":\\\"#tag-html\\\"},{\\\"comment\\\":\\\"A concise html tag.\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^(\\\\\\\\s*)(?=style\\\\\\\\.less\\\\\\\\b)\\\",\\\"comment\\\":\\\"Concise style tag less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#concise-open-tag-content\\\"},{\\\"include\\\":\\\"#concise-style-block-less\\\"},{\\\"include\\\":\\\"#concise-style-line-less\\\"}],\\\"while\\\":\\\"(?=^\\\\\\\\1\\\\\\\\s+(\\\\\\\\S|$))\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(?=style\\\\\\\\.scss\\\\\\\\b)\\\",\\\"comment\\\":\\\"Concise style tag scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#concise-open-tag-content\\\"},{\\\"include\\\":\\\"#concise-style-block-scss\\\"},{\\\"include\\\":\\\"#concise-style-line-scss\\\"}],\\\"while\\\":\\\"(?=^\\\\\\\\1\\\\\\\\s+(\\\\\\\\S|$))\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(?=style\\\\\\\\b)\\\",\\\"comment\\\":\\\"Concise style tag\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#concise-open-tag-content\\\"},{\\\"include\\\":\\\"#concise-style-block\\\"},{\\\"include\\\":\\\"#concise-style-line\\\"}],\\\"while\\\":\\\"(?=^\\\\\\\\1\\\\\\\\s+(\\\\\\\\S|$))\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(?=script\\\\\\\\b)\\\",\\\"comment\\\":\\\"Concise script tag\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#concise-open-tag-content\\\"},{\\\"include\\\":\\\"#concise-script-block\\\"},{\\\"include\\\":\\\"#concise-script-line\\\"}],\\\"while\\\":\\\"(?=^\\\\\\\\1\\\\\\\\s+(\\\\\\\\S|$))\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(?=[a-zA-Z0-9_$@])\\\",\\\"comment\\\":\\\"Normal concise tag\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#concise-open-tag-content\\\"},{\\\"include\\\":\\\"#content-concise-mode\\\"}],\\\"while\\\":\\\"(?=^\\\\\\\\1\\\\\\\\s+(\\\\\\\\S|$))\\\"}]},{\\\"include\\\":\\\"#invalid\\\"}]},\\\"content-embedded-script\\\":{\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#placeholder\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"content-embedded-style\\\":{\\\"name\\\":\\\"meta.embedded.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#placeholder\\\"},{\\\"include\\\":\\\"source.css\\\"}]},\\\"content-embedded-style-less\\\":{\\\"name\\\":\\\"meta.embedded.css.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#placeholder\\\"},{\\\"include\\\":\\\"source.css.less\\\"}]},\\\"content-embedded-style-scss\\\":{\\\"name\\\":\\\"meta.embedded.css.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#placeholder\\\"},{\\\"include\\\":\\\"source.css.scss\\\"}]},\\\"content-html-mode\\\":{\\\"comment\\\":\\\"HTML mode content block.\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#scriptlet\\\"},{\\\"include\\\":\\\"#html-comments\\\"},{\\\"include\\\":\\\"#tag-html\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"string\\\"},{\\\"include\\\":\\\"#placeholder\\\"},{\\\"match\\\":\\\".+?\\\",\\\"name\\\":\\\"string\\\"}]},\\\"html-args-or-method\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#javascript-args\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"comment\\\":\\\"Attribute method shorthand following parens\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"html-comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(<!(--)?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.marko\\\"}},\\\"comment\\\":\\\"HTML comments, doctypes & cdata\\\",\\\"end\\\":\\\"\\\\\\\\2>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.marko\\\"}},\\\"name\\\":\\\"comment.block.marko\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*(<html-comment>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.marko\\\"}},\\\"comment\\\":\\\"Preserved HTML comment tag\\\",\\\"end\\\":\\\"</html-comment>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.marko\\\"}},\\\"name\\\":\\\"comment.block.marko\\\"}]},\\\"invalid\\\":{\\\"match\\\":\\\"[^\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.marko\\\"},\\\"javascript-args\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\()\\\",\\\"comment\\\":\\\"Javascript style arguments\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},\\\"javascript-comment-line\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"comment\\\":\\\"JavaScript // single line comment\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"match\\\":\\\"\\\\\\\\s*//.*$\\\"},\\\"javascript-comment-multiline\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(?=/\\\\\\\\*)\\\",\\\"comment\\\":\\\"JavaScript /* block comment */\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?<=\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},\\\"javascript-comments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#javascript-comment-multiline\\\"},{\\\"include\\\":\\\"#javascript-comment-line\\\"}]},\\\"javascript-enclosed\\\":{\\\"comment\\\":\\\"Matches JavaScript content and ensures enclosed blocks are matched.\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javascript-comments\\\"},{\\\"include\\\":\\\"#javascript-args\\\"},{\\\"begin\\\":\\\"(?={)\\\",\\\"end\\\":\\\"(?<=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?<=])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\")\\\",\\\"end\\\":\\\"(?<=\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(?=')\\\",\\\"end\\\":\\\"(?<=')\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(?=`)\\\",\\\"end\\\":\\\"(?<=`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"/(?!<[\\\\\\\\]})A-Z0-9.<%]\\\\\\\\s*/)(?!/?>|$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.regexp.js\\\"}},\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"/[gimsuy]*\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js#regexp\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(?:(?:\\\\\\\\b(?:new|typeof|instanceof|in)\\\\\\\\b)|\\\\\\\\&\\\\\\\\&|\\\\\\\\|\\\\\\\\||[\\\\\\\\^|&]|[!=]=|[!=]==|<|<[=<]|=>|[?:]|[-+*%](?!-))\\\",\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\S)\\\"}]},\\\"javascript-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#javascript-enclosed\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"comment\\\":\\\"Match identifiers and member expressions\\\",\\\"match\\\":\\\"[0-9a-zA-Z$_.]+\\\"}]},\\\"javascript-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#javascript-enclosed\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"open-tag-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-before-attrs\\\"},{\\\"begin\\\":\\\"(?= )\\\",\\\"comment\\\":\\\"Attributes begin after the first space within the tag name\\\",\\\"end\\\":\\\"(?=/?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attrs\\\"}]}]},\\\"placeholder\\\":{\\\"begin\\\":\\\"\\\\\\\\$!?{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.js\\\"}},\\\"comment\\\":\\\"${ } placeholder\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},\\\"scriptlet\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(\\\\\\\\$)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.scriptlet.marko\\\"}},\\\"comment\\\":\\\"An inline JavaScript scriptlet.\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javascript-statement\\\"}]},\\\"tag-before-attrs\\\":{\\\"comment\\\":\\\"Everything in a tag before the attributes content\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-name\\\"},{\\\"comment\\\":\\\"Shorthand class or ID attribute\\\",\\\"match\\\":\\\"[#.][a-zA-Z0-9_$][a-zA-Z0-9_$-]*\\\",\\\"name\\\":\\\"entity.other.attribute-name.marko\\\"},{\\\"begin\\\":\\\"/(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.marko\\\"}},\\\"comment\\\":\\\"Variable for a tag\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?=:?\\\\\\\\=|\\\\\\\\s|>|$|\\\\\\\\||\\\\\\\\(|/)\\\",\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Match identifiers\\\",\\\"match\\\":\\\"[a-zA-Z$_][0-9a-zA-Z$_]*\\\",\\\"name\\\":\\\"variable.other.constant.object.js\\\"},{\\\"include\\\":\\\"source.js#object-binding-pattern\\\"},{\\\"include\\\":\\\"source.js#array-binding-pattern\\\"},{\\\"include\\\":\\\"source.js#var-single-variable\\\"},{\\\"include\\\":\\\"#javascript-expression\\\"}]},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\s*(:?=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"comment\\\":\\\"Default attribute value\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?=.|$)\\\",\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#javascript-expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.marko\\\"}},\\\"comment\\\":\\\"Parameters for a tag\\\",\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.js#function-parameters-body\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"include\\\":\\\"#html-args-or-method\\\"}]},\\\"tag-html\\\":{\\\"comment\\\":\\\"Matches an HTML tag and its contents\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(<)(?=(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"comment\\\":\\\"HTML void elements\\\",\\\"end\\\":\\\"/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#open-tag-content\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(<)(?=style\\\\\\\\.less\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.marko\\\"}},\\\"comment\\\":\\\"HTML style tag with less\\\",\\\"end\\\":\\\"/>|(?<=\\\\\\\\>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#open-tag-content\\\"},{\\\"begin\\\":\\\">\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"comment\\\":\\\"Style body content\\\",\\\"contentName\\\":\\\"source.less\\\",\\\"end\\\":\\\"\\\\\\\\s*(</)(style)?(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-name\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-style-less\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*(<)(?=style\\\\\\\\.scss\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.marko\\\"}},\\\"comment\\\":\\\"HTML style tag with scss\\\",\\\"end\\\":\\\"/>|(?<=\\\\\\\\>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#open-tag-content\\\"},{\\\"begin\\\":\\\">\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"comment\\\":\\\"Style body content\\\",\\\"contentName\\\":\\\"source.less\\\",\\\"end\\\":\\\"\\\\\\\\s*(</)(style)?(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-name\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-style-scss\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*(<)(?=style\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.marko\\\"}},\\\"comment\\\":\\\"HTML style tag\\\",\\\"end\\\":\\\"/>|(?<=\\\\\\\\>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#open-tag-content\\\"},{\\\"begin\\\":\\\">\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"comment\\\":\\\"Style body content\\\",\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"\\\\\\\\s*(</)(style)?(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-name\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-style\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*(<)(?=script\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.marko\\\"}},\\\"comment\\\":\\\"HTML script tag\\\",\\\"end\\\":\\\"/>|(?<=\\\\\\\\>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#open-tag-content\\\"},{\\\"begin\\\":\\\">\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"comment\\\":\\\"Script body content\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"\\\\\\\\s*(</)(script)?(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-name\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#content-embedded-script\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\s*(<)(?=[a-zA-Z0-9_$@])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.marko\\\"}},\\\"comment\\\":\\\"HTML normal tag\\\",\\\"end\\\":\\\"/>|(?<=\\\\\\\\>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#open-tag-content\\\"},{\\\"begin\\\":\\\">\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"comment\\\":\\\"Body content\\\",\\\"end\\\":\\\"\\\\\\\\s*(</)([a-zA-Z0-9_$:@-]+)?(.*?)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-name\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#invalid\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.marko\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#content-html-mode\\\"}]}]}]},\\\"tag-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\${\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.js\\\"}},\\\"comment\\\":\\\"Dynamic tag.\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.marko\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.marko.css\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Core tag.\\\",\\\"match\\\":\\\"(attrs|return|import)(?=\\\\\\\\b)\\\",\\\"name\\\":\\\"support.type.builtin.marko\\\"},{\\\"comment\\\":\\\"Core tag.\\\",\\\"match\\\":\\\"(for|if|while|else-if|else|macro|tag|await|let|const|effect|set|get|id|lifecycle)(?=\\\\\\\\b)\\\",\\\"name\\\":\\\"support.function.marko\\\"},{\\\"comment\\\":\\\"Attribute tag.\\\",\\\"match\\\":\\\"@.+\\\",\\\"name\\\":\\\"entity.other.attribute-name.marko\\\"},{\\\"comment\\\":\\\"Native or userland tag.\\\",\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"entity.name.tag.marko\\\"}]}},\\\"match\\\":\\\"(style)\\\\\\\\.([a-zA-Z0-9$_-]+(?:\\\\\\\\.[a-zA-Z0-9$_-]+)*)|([a-zA-Z0-9_$@][a-zA-Z0-9_$@:-]*)\\\"}]}},\\\"scopeName\\\":\\\"text.marko\\\",\\\"embeddedLangs\\\":[\\\"css\\\",\\\"less\\\",\\\"scss\\\",\\\"javascript\\\"]}\"))\n\nexport default [\n...css,\n...less,\n...scss,\n...javascript,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"MATLAB\\\",\\\"fileTypes\\\":[\\\"m\\\"],\\\"name\\\":\\\"matlab\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"This and #all_after_command_dual are split out so #command_dual can be excluded in things like (), {}, []\\\",\\\"include\\\":\\\"#all_before_command_dual\\\"},{\\\"include\\\":\\\"#command_dual\\\"},{\\\"include\\\":\\\"#all_after_command_dual\\\"}],\\\"repository\\\":{\\\"all_after_command_dual\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#conjugate_transpose\\\"},{\\\"include\\\":\\\"#transpose\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#operators\\\"}]},\\\"all_before_command_dual\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#classdef\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#blocks\\\"},{\\\"include\\\":\\\"#control_statements\\\"},{\\\"include\\\":\\\"#global_persistent\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#square_brackets\\\"},{\\\"include\\\":\\\"#indexing_curly_brackets\\\"},{\\\"include\\\":\\\"#curly_brackets\\\"}]},\\\"blocks\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(for)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.for.matlab\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.for.matlab\\\"}},\\\"name\\\":\\\"meta.for.matlab\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(if)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.if.matlab\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.if.matlab\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"name\\\":\\\"meta.if.matlab\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.elseif.matlab\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"end\\\":\\\"^\\\",\\\"match\\\":\\\"(\\\\\\\\s*)(?:^|[\\\\\\\\s,;])(elseif)\\\\\\\\b(.*)$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.elseif.matlab\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.else.matlab\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"end\\\":\\\"^\\\",\\\"match\\\":\\\"(\\\\\\\\s*)(?:^|[\\\\\\\\s,;])(else)\\\\\\\\b(.*)?$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.else.matlab\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(parfor)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.for.matlab\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.for.matlab\\\"}},\\\"name\\\":\\\"meta.parfor.matlab\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?!$)\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.parfor-quantity.matlab\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(spmd)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.spmd.matlab\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.spmd.matlab\\\"}},\\\"name\\\":\\\"meta.spmd.matlab\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?!$)\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.spmd-statement.matlab\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(switch)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.switch.matlab\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.switch.matlab\\\"}},\\\"name\\\":\\\"meta.switch.matlab\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.case.matlab\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"end\\\":\\\"^\\\",\\\"match\\\":\\\"(\\\\\\\\s*)(?:^|[\\\\\\\\s,;])(case)\\\\\\\\b(.*)$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.case.matlab\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.otherwise.matlab\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"end\\\":\\\"^\\\",\\\"match\\\":\\\"(\\\\\\\\s*)(?:^|[\\\\\\\\s,;])(otherwise)\\\\\\\\b(.*)?$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.otherwise.matlab\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(try)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.try.matlab\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.try.matlab\\\"}},\\\"name\\\":\\\"meta.try.matlab\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.catch.matlab\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"end\\\":\\\"^\\\",\\\"match\\\":\\\"(\\\\\\\\s*)(?:^|[\\\\\\\\s,;])(catch)\\\\\\\\b(.*)?$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.catch.matlab\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(while)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.while.matlab\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.while.matlab\\\"}},\\\"name\\\":\\\"meta.while.matlab\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"braced_validator_list\\\":{\\\"begin\\\":\\\"\\\\\\\\s*({)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.matlab\\\"}},\\\"comment\\\":\\\"Validator functions. Treated as a recursive group to permit nested brackets, quotes, etc.\\\",\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.matlab\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#braced_validator_list\\\"},{\\\"include\\\":\\\"#validator_strings\\\"},{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.matlab\\\"}},\\\"match\\\":\\\"([^{}}'\\\\\\\"\\\\\\\\.]+)\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"storage.type.matlab\\\"}]},\\\"classdef\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^\\\\\\\\s*)(classdef)\\\\\\\\b\\\\\\\\s*(.*)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.matlab\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"variable.parameter.class.matlab\\\"},{\\\"begin\\\":\\\"=\\\\\\\\s*\\\",\\\"end\\\":\\\",|(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"true|false\\\",\\\"name\\\":\\\"constant.language.boolean.matlab\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"2\\\":{\\\"name\\\":\\\"meta.class-declaration.matlab\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.section.class.matlab\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.other.matlab\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z][a-zA-Z0-9_]*(\\\\\\\\.[a-zA-Z][a-zA-Z0-9_]*)*\\\",\\\"name\\\":\\\"entity.other.inherited-class.matlab\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"keyword.operator.other.matlab\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\([^)]*\\\\\\\\))?\\\\\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)(?:\\\\\\\\s*(<)\\\\\\\\s*([^%]*))?)\\\\\\\\s*($|(?=(%|...)).*)\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.class.matlab\\\"}},\\\"name\\\":\\\"meta.class.matlab\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^\\\\\\\\s*)(properties)\\\\\\\\b([^%]*)\\\\\\\\s*(\\\\\\\\([^)]*\\\\\\\\))?\\\\\\\\s*($|(?=%))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.properties.matlab\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"variable.parameter.properties.matlab\\\"},{\\\"begin\\\":\\\"=\\\\\\\\s*\\\",\\\"end\\\":\\\",|(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"true|false\\\",\\\"name\\\":\\\"constant.language.boolean.matlab\\\"},{\\\"match\\\":\\\"public|protected|private\\\",\\\"name\\\":\\\"constant.language.access.matlab\\\"}]}]}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.properties.matlab\\\"}},\\\"name\\\":\\\"meta.properties.matlab\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#validators\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(^\\\\\\\\s*)(methods)\\\\\\\\b([^%]*)\\\\\\\\s*(\\\\\\\\([^)]*\\\\\\\\))?\\\\\\\\s*($|(?=%))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.methods.matlab\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"variable.parameter.methods.matlab\\\"},{\\\"begin\\\":\\\"=\\\\\\\\s*\\\",\\\"end\\\":\\\",|(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"true|false\\\",\\\"name\\\":\\\"constant.language.boolean.matlab\\\"},{\\\"match\\\":\\\"public|protected|private\\\",\\\"name\\\":\\\"constant.language.access.matlab\\\"}]}]}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.methods.matlab\\\"}},\\\"name\\\":\\\"meta.methods.matlab\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(^\\\\\\\\s*)(events)\\\\\\\\b([^%]*)\\\\\\\\s*(\\\\\\\\([^)]*\\\\\\\\))?\\\\\\\\s*($|(?=%))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.events.matlab\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"variable.parameter.events.matlab\\\"},{\\\"begin\\\":\\\"=\\\\\\\\s*\\\",\\\"end\\\":\\\",|(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"true|false\\\",\\\"name\\\":\\\"constant.language.boolean.matlab\\\"},{\\\"match\\\":\\\"public|protected|private\\\",\\\"name\\\":\\\"constant.language.access.matlab\\\"}]}]}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.events.matlab\\\"}},\\\"name\\\":\\\"meta.events.matlab\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(^\\\\\\\\s*)(enumeration)\\\\\\\\b([^%]*)\\\\\\\\s*($|(?=%))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.enumeration.matlab\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.enumeration.matlab\\\"}},\\\"name\\\":\\\"meta.enumeration.matlab\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"command_dual\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.matlab\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.command.matlab\\\"},\\\"28\\\":{\\\"name\\\":\\\"comment.line.percentage.matlab\\\"}},\\\"comment\\\":\\\" 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1516 17 18 19 20 21 22 23 24 25 26 27 28\\\",\\\"match\\\":\\\"^\\\\\\\\s*(([b-df-hk-moq-zA-HJ-MO-Z]\\\\\\\\w*|a|an|a([A-Za-mo-z0-9_]\\\\\\\\w*|n[A-Za-rt-z0-9_]\\\\\\\\w*|ns\\\\\\\\w+)|e|ep|e([A-Za-oq-z0-9_]\\\\\\\\w*|p[A-Za-rt-z0-9_]\\\\\\\\w*|ps\\\\\\\\w+)|in|i([A-Za-mo-z0-9_]\\\\\\\\w*|n[A-Za-eg-z0-9_]\\\\\\\\w*|nf\\\\\\\\w+)|I|In|I([A-Za-mo-z0-9_]\\\\\\\\w*|n[A-Za-eg-z0-9_]\\\\\\\\w*|nf\\\\\\\\w+)|j\\\\\\\\w+|N|Na|N([A-Zb-z0-9_]\\\\\\\\w*|a[A-MO-Za-z0-9_]\\\\\\\\w*|aN\\\\\\\\w+)|n|na|nar|narg|nargi|nargo|nargou|n([A-Zb-z0-9_]\\\\\\\\w*|a([A-Za-mo-qs-z0-9_]\\\\\\\\w*|n\\\\\\\\w+|r([A-Za-fh-z0-9_]\\\\\\\\w*|g([A-Za-hj-nq-z0-9_]\\\\\\\\w*|i([A-Za-mo-z0-9_]\\\\\\\\w*|n\\\\\\\\w+)|o([A-Za-tv-z0-9_]\\\\\\\\w*|u([A-Za-su-z]\\\\\\\\w*|t\\\\\\\\w+))))))|p|p[A-Za-hj-z0-9_]\\\\\\\\w*|pi\\\\\\\\w+)\\\\\\\\s+((([^\\\\\\\\s;,%()=.{&|~<>:+\\\\\\\\-*/\\\\\\\\\\\\\\\\@^'\\\\\\\"]|(?=')|(?=\\\\\\\"))|(\\\\\\\\.\\\\\\\\^|\\\\\\\\.\\\\\\\\*|\\\\\\\\./|\\\\\\\\.\\\\\\\\\\\\\\\\|\\\\\\\\.'|\\\\\\\\.\\\\\\\\(|&&|==|\\\\\\\\|\\\\\\\\||&(?=[^&])|\\\\\\\\|(?=[^\\\\\\\\|])|~=|<=|>=|~(?!=)|<(?!=)|>(?!=)|:|\\\\\\\\+|-|\\\\\\\\*|/|\\\\\\\\\\\\\\\\|@|\\\\\\\\^)([^\\\\\\\\s]|\\\\\\\\s*(?=%)|\\\\\\\\s+$|\\\\\\\\s+(,|;|\\\\\\\\)|}|\\\\\\\\]|&|\\\\\\\\||<|>|=|:|\\\\\\\\*|/|\\\\\\\\\\\\\\\\|\\\\\\\\^|@|(\\\\\\\\.[^\\\\\\\\d.]|\\\\\\\\.\\\\\\\\.[^.])))|(\\\\\\\\.[^^*/\\\\\\\\\\\\\\\\'(\\\\\\\\sA-Za-z]))([^%]|'[^']*'|\\\\\\\"[^\\\\\\\"]*\\\\\\\")*|(\\\\\\\\.(?=\\\\\\\\s)|\\\\\\\\.[A-Za-z]|(?={))([^(=\\\\\\\\'\\\\\\\"%]|==|'[^']*'|\\\\\\\"[^\\\\\\\"]*\\\\\\\"|\\\\\\\\(|\\\\\\\\([^)%]*\\\\\\\\)|\\\\\\\\[|\\\\\\\\[[^\\\\\\\\]%]*\\\\\\\\]|{|{[^}%]*})*(\\\\\\\\.\\\\\\\\.\\\\\\\\.[^%]*)?((?=%)|$)))(%.*)?$\\\"},\\\"comment_block\\\":{\\\"begin\\\":\\\"(^[\\\\\\\\s]*)%\\\\\\\\{[^\\\\\\\\n\\\\\\\\S]*+\\\\\\\\n\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.matlab\\\"}},\\\"end\\\":\\\"^[\\\\\\\\s]*%\\\\\\\\}[^\\\\\\\\n\\\\\\\\S]*+(?:\\\\\\\\n|$)\\\",\\\"name\\\":\\\"comment.block.percentage.matlab\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_block\\\"},{\\\"match\\\":\\\"^[^\\\\\\\\n]*\\\\\\\\n\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=%%\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.matlab\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"%%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.matlab\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-percentage.matlab\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G[^\\\\\\\\S\\\\\\\\n]*(?![\\\\\\\\n\\\\\\\\s])\\\",\\\"contentName\\\":\\\"meta.cell.matlab\\\",\\\"end\\\":\\\"(?=\\\\\\\\n)\\\"}]}]},{\\\"include\\\":\\\"#comment_block\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=%)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.matlab\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"%\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.matlab\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.percentage.matlab\\\"}]}]},\\\"conjugate_transpose\\\":{\\\"match\\\":\\\"((?<=[^\\\\\\\\s])|(?<=\\\\\\\\])|(?<=\\\\\\\\))|(?<=\\\\\\\\}))'\\\",\\\"name\\\":\\\"keyword.operator.transpose.matlab\\\"},\\\"constants\\\":{\\\"comment\\\":\\\"MATLAB Constants\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(eps|false|Inf|inf|intmax|intmin|namelengthmax|NaN|nan|on|off|realmax|realmin|true|pi)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.matlab\\\"},\\\"control_statements\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.matlab\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(break|continue|return)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.control.matlab\\\"},\\\"curly_brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"comment\\\":\\\"We don't include $self here to avoid matching command syntax inside (), [], {}\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#end_in_parens\\\"},{\\\"include\\\":\\\"#all_before_command_dual\\\"},{\\\"include\\\":\\\"#all_after_command_dual\\\"},{\\\"include\\\":\\\"#end_in_parens\\\"},{\\\"comment\\\":\\\"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written\\\",\\\"include\\\":\\\"#block_keywords\\\"}]},\\\"end_in_parens\\\":{\\\"comment\\\":\\\"end as operator symbol\\\",\\\"match\\\":\\\"\\\\\\\\bend\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.symbols.matlab\\\"},\\\"function\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^\\\\\\\\s*)(function)\\\\\\\\s+(?:(?:(\\\\\\\\[)([^\\\\\\\\]]*)(\\\\\\\\])|([a-zA-Z][a-zA-Z0-9_]*))\\\\\\\\s*=\\\\\\\\s*)?([a-zA-Z][a-zA-Z0-9_]*(\\\\\\\\.[a-zA-Z][a-zA-Z0-9_]*)*)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.matlab\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.matlab\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.parameter.output.matlab\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.matlab\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.output.function.matlab\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.function.matlab\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b(\\\\\\\\s*\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.function.matlab\\\"}},\\\"name\\\":\\\"meta.function.matlab\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.arguments.function.matlab\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"variable.parameter.input.matlab\\\"}]},{\\\"begin\\\":\\\"(^\\\\\\\\s*)(arguments)\\\\\\\\b([^%]*)\\\\\\\\s*(\\\\\\\\([^)]*\\\\\\\\))?\\\\\\\\s*($|(?=%))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.arguments.matlab\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"variable.parameter.arguments.matlab\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*(?:^|[\\\\\\\\s,;])(end)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.end.arguments.matlab\\\"}},\\\"name\\\":\\\"meta.arguments.matlab\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#validators\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"global_persistent\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.globalpersistent.matlab\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(global|persistent)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.globalpersistent.matlab\\\"},\\\"indexing_curly_brackets\\\":{\\\"Comment\\\":\\\"Match identifier{idx, idx, } and stop at newline without ... This helps with partially written code like x{idx \\\",\\\"begin\\\":\\\"([a-zA-Z][a-zA-Z0-9_\\\\\\\\.]*\\\\\\\\s*)\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"comment\\\":\\\"We don't include $self here to avoid matching command syntax inside (), [], {}\\\",\\\"end\\\":\\\"(\\\\\\\\}|(?<!\\\\\\\\.\\\\\\\\.\\\\\\\\.).\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#end_in_parens\\\"},{\\\"include\\\":\\\"#all_before_command_dual\\\"},{\\\"include\\\":\\\"#all_after_command_dual\\\"},{\\\"include\\\":\\\"#end_in_parens\\\"},{\\\"comment\\\":\\\"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written\\\",\\\"include\\\":\\\"#block_keywords\\\"}]},\\\"line_continuation\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.symbols.matlab\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.continuation.matlab\\\"}},\\\"comment\\\":\\\"Line continuations\\\",\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\.\\\\\\\\.)(.*)$\\\",\\\"name\\\":\\\"meta.linecontinuation.matlab\\\"},\\\"numbers\\\":{\\\"comment\\\":\\\"Valid numbers: 1, .1, 1.1, .1e1, 1.1e1, 1e1, 1i, 1j, 1e2j\\\",\\\"match\\\":\\\"(?<=[\\\\\\\\s\\\\\\\\-\\\\\\\\+\\\\\\\\*\\\\\\\\/\\\\\\\\\\\\\\\\=:\\\\\\\\[\\\\\\\\(\\\\\\\\{,]|^)\\\\\\\\d*\\\\\\\\.?\\\\\\\\d+([eE][+-]?\\\\\\\\d)?([0-9&&[^\\\\\\\\.]])*(i|j)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.matlab\\\"},\\\"operators\\\":{\\\"comment\\\":\\\"Operator symbols\\\",\\\"match\\\":\\\"(?<=\\\\\\\\s)(==|~=|>|>=|<|<=|&|&&|:|\\\\\\\\||\\\\\\\\|\\\\\\\\||\\\\\\\\+|-|\\\\\\\\*|\\\\\\\\.\\\\\\\\*|/|\\\\\\\\./|\\\\\\\\\\\\\\\\|\\\\\\\\.\\\\\\\\\\\\\\\\|\\\\\\\\^|\\\\\\\\.\\\\\\\\^)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.operator.symbols.matlab\\\"},\\\"parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"comment\\\":\\\"We don't include $self here to avoid matching command syntax inside (), [], {}\\\",\\\"end\\\":\\\"(\\\\\\\\)|(?<!\\\\\\\\.\\\\\\\\.\\\\\\\\.).\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#end_in_parens\\\"},{\\\"include\\\":\\\"#all_before_command_dual\\\"},{\\\"include\\\":\\\"#all_after_command_dual\\\"},{\\\"comment\\\":\\\"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written\\\",\\\"include\\\":\\\"#block_keywords\\\"}]},\\\"square_brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"comment\\\":\\\"We don't include $self here to avoid matching command syntax inside (), [], {}\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#all_before_command_dual\\\"},{\\\"include\\\":\\\"#all_after_command_dual\\\"},{\\\"comment\\\":\\\"These block keywords pick up any such missed keywords when the block matching for things like (), if-end, etc. don't work. Useful for when someone has partially written\\\",\\\"include\\\":\\\"#block_keywords\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.matlab\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.matlab\\\"}},\\\"comment\\\":\\\"Shell command\\\",\\\"match\\\":\\\"^\\\\\\\\s*((!).*$\\\\\\\\n?)\\\"},{\\\"begin\\\":\\\"((?<=(\\\\\\\\[|\\\\\\\\(|\\\\\\\\{|=|\\\\\\\\s|;|:|,|~|<|>|&|\\\\\\\\||-|\\\\\\\\+|\\\\\\\\*|/|\\\\\\\\\\\\\\\\|\\\\\\\\.|\\\\\\\\^))|^)'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.matlab\\\"}},\\\"comment\\\":\\\"Character vector literal (single-quoted)\\\",\\\"end\\\":\\\"'(?=(\\\\\\\\[|\\\\\\\\(|\\\\\\\\{|\\\\\\\\]|\\\\\\\\)|\\\\\\\\}|=|~|<|>|&|\\\\\\\\||-|\\\\\\\\+|\\\\\\\\*|/|\\\\\\\\\\\\\\\\|\\\\\\\\.|\\\\\\\\^|\\\\\\\\s|;|:|,))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.matlab\\\"}},\\\"name\\\":\\\"string.quoted.single.matlab\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"''\\\",\\\"name\\\":\\\"constant.character.escape.matlab\\\"},{\\\"match\\\":\\\"'(?=.)\\\",\\\"name\\\":\\\"invalid.illegal.unescaped-quote.matlab\\\"},{\\\"comment\\\":\\\"Operator symbols\\\",\\\"match\\\":\\\"((\\\\\\\\%([\\\\\\\\+\\\\\\\\-0]?\\\\\\\\d{0,3}(\\\\\\\\.\\\\\\\\d{1,3})?)(c|d|e|E|f|g|G|s|((b|t)?(o|u|x|X))))|\\\\\\\\%\\\\\\\\%|\\\\\\\\\\\\\\\\(b|f|n|r|t|\\\\\\\\\\\\\\\\))\\\",\\\"name\\\":\\\"constant.character.escape.matlab\\\"}]},{\\\"begin\\\":\\\"((?<=(\\\\\\\\[|\\\\\\\\(|\\\\\\\\{|=|\\\\\\\\s|;|:|,|~|<|>|&|\\\\\\\\||-|\\\\\\\\+|\\\\\\\\*|/|\\\\\\\\\\\\\\\\|\\\\\\\\.|\\\\\\\\^))|^)\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.matlab\\\"}},\\\"comment\\\":\\\"String literal (double-quoted)\\\",\\\"end\\\":\\\"\\\\\\\"(?=(\\\\\\\\[|\\\\\\\\(|\\\\\\\\{|\\\\\\\\]|\\\\\\\\)|\\\\\\\\}|=|~|<|>|&|\\\\\\\\||-|\\\\\\\\+|\\\\\\\\*|/|\\\\\\\\\\\\\\\\|\\\\\\\\.|\\\\\\\\^|\\\\\\\\||\\\\\\\\s|;|:|,))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.matlab\\\"}},\\\"name\\\":\\\"string.quoted.double.matlab\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.matlab\\\"},{\\\"match\\\":\\\"\\\\\\\"(?=.)\\\",\\\"name\\\":\\\"invalid.illegal.unescaped-quote.matlab\\\"}]}]},\\\"transpose\\\":{\\\"match\\\":\\\"\\\\\\\\.'\\\",\\\"name\\\":\\\"keyword.operator.transpose.matlab\\\"},\\\"validator_strings\\\":{\\\"comment\\\":\\\"Simplified string patterns nested inside validator functions which don't change scopes of matches.\\\",\\\"patterns\\\":[{\\\"patterns\\\":[{\\\"begin\\\":\\\"((?<=(\\\\\\\\[|\\\\\\\\(|\\\\\\\\{|=|\\\\\\\\s|;|:|,|~|<|>|&|\\\\\\\\||-|\\\\\\\\+|\\\\\\\\*|/|\\\\\\\\\\\\\\\\|\\\\\\\\.|\\\\\\\\^))|^)'\\\",\\\"comment\\\":\\\"Character vector literal (single-quoted)\\\",\\\"end\\\":\\\"'(?=(\\\\\\\\[|\\\\\\\\(|\\\\\\\\{|\\\\\\\\]|\\\\\\\\)|\\\\\\\\}|=|~|<|>|&|\\\\\\\\||-|\\\\\\\\+|\\\\\\\\*|/|\\\\\\\\\\\\\\\\|\\\\\\\\.|\\\\\\\\^|\\\\\\\\s|;|:|,))\\\",\\\"name\\\":\\\"storage.type.matlab\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"''\\\"},{\\\"match\\\":\\\"'(?=.)\\\"},{\\\"match\\\":\\\"([^']+)\\\"}]},{\\\"begin\\\":\\\"((?<=(\\\\\\\\[|\\\\\\\\(|\\\\\\\\{|=|\\\\\\\\s|;|:|,|~|<|>|&|\\\\\\\\||-|\\\\\\\\+|\\\\\\\\*|/|\\\\\\\\\\\\\\\\|\\\\\\\\.|\\\\\\\\^))|^)\\\\\\\"\\\",\\\"comment\\\":\\\"String literal (double-quoted)\\\",\\\"end\\\":\\\"\\\\\\\"(?=(\\\\\\\\[|\\\\\\\\(|\\\\\\\\{|\\\\\\\\]|\\\\\\\\)|\\\\\\\\}|=|~|<|>|&|\\\\\\\\||-|\\\\\\\\+|\\\\\\\\*|/|\\\\\\\\\\\\\\\\|\\\\\\\\.|\\\\\\\\^|\\\\\\\\||\\\\\\\\s|;|:|,))\\\",\\\"name\\\":\\\"storage.type.matlab\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"\\\\\\\"\\\"},{\\\"match\\\":\\\"\\\\\\\"(?=.)\\\"},{\\\"match\\\":\\\"[^\\\\\\\"]+\\\"}]}]}]},\\\"validators\\\":{\\\"begin\\\":\\\"\\\\\\\\s*[;]?\\\\\\\\s*([a-zA-Z][a-zA-Z0-9_\\\\\\\\.\\\\\\\\?]*)\\\",\\\"comment\\\":\\\"Property and argument validation. Match an identifier allowing . and ?.\\\",\\\"end\\\":\\\"([;\\\\\\\\n%=].*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"comment\\\":\\\"Match comments\\\",\\\"match\\\":\\\"([%].*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"comment\\\":\\\"Handle things like arg = val; nextArg\\\",\\\"match\\\":\\\"(=[^;]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#validators\\\"}]}},\\\"comment\\\":\\\"End of property/argument patterns which start a new property/argument. Look for beginning of identifier after semicolon. Otherwise treat as regular code.\\\",\\\"match\\\":\\\"([\\\\\\\\n;]\\\\\\\\s*[a-zA-Z].*)\\\"},{\\\"include\\\":\\\"$self\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation\\\"},{\\\"comment\\\":\\\"Size declaration\\\",\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\([^\\\\\\\\)]*\\\\\\\\))\\\",\\\"name\\\":\\\"storage.type.matlab\\\"},{\\\"comment\\\":\\\"Type declaration\\\",\\\"match\\\":\\\"([a-zA-Z][a-zA-Z0-9_\\\\\\\\.]*)\\\",\\\"name\\\":\\\"storage.type.matlab\\\"},{\\\"include\\\":\\\"#braced_validator_list\\\"}]},\\\"variables\\\":{\\\"comment\\\":\\\"MATLAB variables\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(nargin|nargout|varargin|varargout)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.function.matlab\\\"}},\\\"scopeName\\\":\\\"source.matlab\\\"}\"))\n\nexport default [\nlang\n]\n", "import markdown from './markdown.mjs'\nimport yaml from './yaml.mjs'\nimport html_derivative from './html-derivative.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"MDC\\\",\\\"injectionSelector\\\":\\\"L:text.html.markdown\\\",\\\"name\\\":\\\"mdc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown#frontMatter\\\"},{\\\"include\\\":\\\"#block\\\"}],\\\"repository\\\":{\\\"attribute\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-interior\\\"}]}},\\\"match\\\":\\\"(([^=><\\\\\\\\s]*)(=[\\\\\\\"]([^\\\\\\\"]*)([\\\\\\\"])|[']([^']*)(['])|=[^\\\\\\\\s'\\\\\\\"}]*)?\\\\\\\\s*)\\\"}]},\\\"attribute-interior\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html\\\"}},\\\"end\\\":\\\"(?<=[^\\\\\\\\s=])(?!\\\\\\\\s*=)|(?=/?>)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([^\\\\\\\\s\\\\\\\"'=<>`/]|/(?!>))+\\\",\\\"name\\\":\\\"string.unquoted.html\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.double.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entities\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.single.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entities\\\"}]},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"invalid.illegal.unexpected-equals-sign.html\\\"}]}]},\\\"attributes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.start.component\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.component\\\"}},\\\"match\\\":\\\"(({)([^{]*)(}))\\\",\\\"name\\\":\\\"attributes.mdc\\\"},\\\"block\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#component_block\\\"},{\\\"include\\\":\\\"text.html.markdown#separator\\\"},{\\\"include\\\":\\\"#heading\\\"},{\\\"include\\\":\\\"#blockquote\\\"},{\\\"include\\\":\\\"#lists\\\"},{\\\"include\\\":\\\"text.html.markdown#fenced_code_block\\\"},{\\\"include\\\":\\\"text.html.markdown#link-def\\\"},{\\\"include\\\":\\\"text.html.markdown#html\\\"},{\\\"include\\\":\\\"#paragraph\\\"}]},\\\"blockquote\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)[ ]*(>) ?\\\",\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.quote.begin.markdown\\\"}},\\\"name\\\":\\\"markup.quote.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)\\\\\\\\s*(>) ?\\\"},\\\"component_block\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(:{2,})(?i:(\\\\\\\\w[\\\\\\\\w\\\\\\\\d-]+)(\\\\\\\\s*|\\\\\\\\s*({[^{]*}))$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.start.mdc\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.mdc\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes\\\"}]}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2)(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.mdc\\\"}},\\\"name\\\":\\\"block.component.mdc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.mdc\\\"}},\\\"match\\\":\\\"(^|\\\\\\\\G)\\\\\\\\s*([:]{2,})$\\\"},{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(-{3})(\\\\\\\\s*)$\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*(-{3})(\\\\\\\\s*)$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}]},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"comment.block.html\\\"}},\\\"match\\\":\\\"^(\\\\\\\\s*)(#[\\\\\\\\w\\\\\\\\-\\\\\\\\_]*)\\\\\\\\s*(<!--(.*)-->)?$\\\"},{\\\"include\\\":\\\"#block\\\"}]},\\\"component_inline\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.start.component\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.component\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#span\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#span\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes\\\"}]}},\\\"match\\\":\\\"(^|\\\\\\\\G|\\\\\\\\s+)(:)(?i:(\\\\\\\\w[\\\\\\\\w\\\\\\\\d-]*))(({[^}]*})(\\\\\\\\[[^\\\\\\\\]]*\\\\\\\\])?|(\\\\\\\\[[^\\\\\\\\]]*\\\\\\\\])({[^}]*})?)?\\\\\\\\s\\\",\\\"name\\\":\\\"inline.component.mdc\\\"},\\\"entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"},\\\"912\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"}},\\\"match\\\":\\\"(&)(?=[a-zA-Z])((a(s(ymp(eq)?|cr|t)|n(d(slope|d|v|and)?|g(s(t|ph)|zarr|e|le|rt(vb(d)?)?|msd(a(h|c|d|e|f|a|g|b))?)?)|c(y|irc|d|ute|E)?|tilde|o(pf|gon)|uml|p(id|os|prox(eq)?|e|E|acir)?|elig|f(r)?|w(conint|int)|l(pha|e(ph|fsym))|acute|ring|grave|m(p|a(cr|lg))|breve)|A(s(sign|cr)|nd|MP|c(y|irc)|tilde|o(pf|gon)|uml|pplyFunction|fr|Elig|lpha|acute|ring|grave|macr|breve))|(B(scr|cy|opf|umpeq|e(cause|ta|rnoullis)|fr|a(ckslash|r(v|wed))|reve)|b(s(cr|im(e)?|ol(hsub|b)?|emi)|n(ot|e(quiv)?)|c(y|ong)|ig(s(tar|qcup)|c(irc|up|ap)|triangle(down|up)|o(times|dot|plus)|uplus|vee|wedge)|o(t(tom)?|pf|wtie|x(h(d|u|D|U)?|times|H(d|u|D|U)?|d(R|l|r|L)|u(R|l|r|L)|plus|D(R|l|r|L)|v(R|h|H|l|r|L)?|U(R|l|r|L)|V(R|h|H|l|r|L)?|minus|box))|Not|dquo|u(ll(et)?|mp(e(q)?|E)?)|prime|e(caus(e)?|t(h|ween|a)|psi|rnou|mptyv)|karow|fr|l(ock|k(1(2|4)|34)|a(nk|ck(square|triangle(down|left|right)?|lozenge)))|a(ck(sim(eq)?|cong|prime|epsilon)|r(vee|wed(ge)?))|r(eve|vbar)|brk(tbrk)?))|(c(s(cr|u(p(e)?|b(e)?))|h(cy|i|eck(mark)?)|ylcty|c(irc|ups(sm)?|edil|a(ps|ron))|tdot|ir(scir|c(eq|le(d(R|circ|S|dash|ast)|arrow(left|right)))?|e|fnint|E|mid)?|o(n(int|g(dot)?)|p(y(sr)?|f|rod)|lon(e(q)?)?|m(p(fn|le(xes|ment))?|ma(t)?))|dot|u(darr(l|r)|p(s|c(up|ap)|or|dot|brcap)?|e(sc|pr)|vee|wed|larr(p)?|r(vearrow(left|right)|ly(eq(succ|prec)|vee|wedge)|arr(m)?|ren))|e(nt(erdot)?|dil|mptyv)|fr|w(conint|int)|lubs(uit)?|a(cute|p(s|c(up|ap)|dot|and|brcup)?|r(on|et))|r(oss|arr))|C(scr|hi|c(irc|onint|edil|aron)|ircle(Minus|Times|Dot|Plus)|Hcy|o(n(tourIntegral|int|gruent)|unterClockwiseContourIntegral|p(f|roduct)|lon(e)?)|dot|up(Cap)?|OPY|e(nterDot|dilla)|fr|lo(seCurly(DoubleQuote|Quote)|ckwiseContourIntegral)|a(yleys|cute|p(italDifferentialD)?)|ross))|(d(s(c(y|r)|trok|ol)|har(l|r)|c(y|aron)|t(dot|ri(f)?)|i(sin|e|v(ide(ontimes)?|onx)?|am(s|ond(suit)?)?|gamma)|Har|z(cy|igrarr)|o(t(square|plus|eq(dot)?|minus)?|ublebarwedge|pf|wn(harpoon(left|right)|downarrows|arrow)|llar)|d(otseq|a(rr|gger))?|u(har|arr)|jcy|e(lta|g|mptyv)|f(isht|r)|wangle|lc(orn|rop)|a(sh(v)?|leth|rr|gger)|r(c(orn|rop)|bkarow)|b(karow|lac)|Arr)|D(s(cr|trok)|c(y|aron)|Scy|i(fferentialD|a(critical(Grave|Tilde|Do(t|ubleAcute)|Acute)|mond))|o(t(Dot|Equal)?|uble(Right(Tee|Arrow)|ContourIntegral|Do(t|wnArrow)|Up(DownArrow|Arrow)|VerticalBar|L(ong(RightArrow|Left(RightArrow|Arrow))|eft(RightArrow|Tee|Arrow)))|pf|wn(Right(TeeVector|Vector(Bar)?)|Breve|Tee(Arrow)?|arrow|Left(RightVector|TeeVector|Vector(Bar)?)|Arrow(Bar|UpArrow)?))|Zcy|el(ta)?|D(otrahd)?|Jcy|fr|a(shv|rr|gger)))|(e(s(cr|im|dot)|n(sp|g)|c(y|ir(c)?|olon|aron)|t(h|a)|o(pf|gon)|dot|u(ro|ml)|p(si(v|lon)?|lus|ar(sl)?)|e|D(ot|Dot)|q(s(im|lant(less|gtr))|c(irc|olon)|u(iv(DD)?|est|als)|vparsl)|f(Dot|r)|l(s(dot)?|inters|l)?|a(ster|cute)|r(Dot|arr)|g(s(dot)?|rave)?|x(cl|ist|p(onentiale|ectation))|m(sp(1(3|4))?|pty(set|v)?|acr))|E(s(cr|im)|c(y|irc|aron)|ta|o(pf|gon)|NG|dot|uml|TH|psilon|qu(ilibrium|al(Tilde)?)|fr|lement|acute|grave|x(ists|ponentialE)|m(pty(SmallSquare|VerySmallSquare)|acr)))|(f(scr|nof|cy|ilig|o(pf|r(k(v)?|all))|jlig|partint|emale|f(ilig|l(ig|lig)|r)|l(tns|lig|at)|allingdotseq|r(own|a(sl|c(1(2|8|3|4|5|6)|78|2(3|5)|3(8|4|5)|45|5(8|6)))))|F(scr|cy|illed(SmallSquare|VerySmallSquare)|o(uriertrf|pf|rAll)|fr))|(G(scr|c(y|irc|edil)|t|opf|dot|T|Jcy|fr|amma(d)?|reater(Greater|SlantEqual|Tilde|Equal(Less)?|FullEqual|Less)|g|breve)|g(s(cr|im(e|l)?)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|irc)|t(c(c|ir)|dot|quest|lPar|r(sim|dot|eq(qless|less)|less|a(pprox|rr)))?|imel|opf|dot|jcy|e(s(cc|dot(o(l)?)?|l(es)?)?|q(slant|q)?|l)?|v(nE|ertneqq)|fr|E(l)?|l(j|E|a)?|a(cute|p|mma(d)?)|rave|g(g)?|breve))|(h(s(cr|trok|lash)|y(phen|bull)|circ|o(ok(leftarrow|rightarrow)|pf|arr|rbar|mtht)|e(llip|arts(uit)?|rcon)|ks(earow|warow)|fr|a(irsp|lf|r(dcy|r(cir|w)?)|milt)|bar|Arr)|H(s(cr|trok)|circ|ilbertSpace|o(pf|rizontalLine)|ump(DownHump|Equal)|fr|a(cek|t)|ARDcy))|(i(s(cr|in(s(v)?|dot|v|E)?)|n(care|t(cal|prod|e(rcal|gers)|larhk)?|odot|fin(tie)?)?|c(y|irc)?|t(ilde)?|i(nfin|i(nt|int)|ota)?|o(cy|ta|pf|gon)|u(kcy|ml)|jlig|prod|e(cy|xcl)|quest|f(f|r)|acute|grave|m(of|ped|a(cr|th|g(part|e|line))))|I(scr|n(t(e(rsection|gral))?|visible(Comma|Times))|c(y|irc)|tilde|o(ta|pf|gon)|dot|u(kcy|ml)|Ocy|Jlig|fr|Ecy|acute|grave|m(plies|a(cr|ginaryI))?))|(j(s(cr|ercy)|c(y|irc)|opf|ukcy|fr|math)|J(s(cr|ercy)|c(y|irc)|opf|ukcy|fr))|(k(scr|hcy|c(y|edil)|opf|jcy|fr|appa(v)?|green)|K(scr|c(y|edil)|Hcy|opf|Jcy|fr|appa))|(l(s(h|cr|trok|im(e|g)?|q(uo(r)?|b)|aquo)|h(ar(d|u(l)?)|blk)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|ub|e(il|dil)|aron)|Barr|t(hree|c(c|ir)|imes|dot|quest|larr|r(i(e|f)?|Par))?|Har|o(ng(left(arrow|rightarrow)|rightarrow|mapsto)|times|z(enge|f)?|oparrow(left|right)|p(f|lus|ar)|w(ast|bar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|r(dhar|ushar))|ur(dshar|uhar)|jcy|par(lt)?|e(s(s(sim|dot|eq(qgtr|gtr)|approx|gtr)|cc|dot(o(r)?)?|g(es)?)?|q(slant|q)?|ft(harpoon(down|up)|threetimes|leftarrows|arrow(tail)?|right(squigarrow|harpoons|arrow(s)?))|g)?|v(nE|ertneqq)|f(isht|loor|r)|E(g)?|l(hard|corner|tri|arr)?|a(ng(d|le)?|cute|t(e(s)?|ail)?|p|emptyv|quo|rr(sim|hk|tl|pl|fs|lp|b(fs)?)?|gran|mbda)|r(har(d)?|corner|tri|arr|m)|g(E)?|m(idot|oust(ache)?)|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr))|L(s(h|cr|trok)|c(y|edil|aron)|t|o(ng(RightArrow|left(arrow|rightarrow)|rightarrow|Left(RightArrow|Arrow))|pf|wer(RightArrow|LeftArrow))|T|e(ss(Greater|SlantEqual|Tilde|EqualGreater|FullEqual|Less)|ft(Right(Vector|Arrow)|Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|rightarrow|Floor|A(ngleBracket|rrow(RightArrow|Bar)?)))|Jcy|fr|l(eftarrow)?|a(ng|cute|placetrf|rr|mbda)|midot))|(M(scr|cy|inusPlus|opf|u|e(diumSpace|llintrf)|fr|ap)|m(s(cr|tpos)|ho|nplus|c(y|omma)|i(nus(d(u)?|b)?|cro|d(cir|dot|ast)?)|o(dels|pf)|dash|u(ltimap|map)?|p|easuredangle|DDot|fr|l(cp|dr)|a(cr|p(sto(down|up|left)?)?|l(t(ese)?|e)|rker)))|(n(s(hort(parallel|mid)|c(cue|e|r)?|im(e(q)?)?|u(cc(eq)?|p(set(eq(q)?)?|e|E)?|b(set(eq(q)?)?|e|E)?)|par|qsu(pe|be)|mid)|Rightarrow|h(par|arr|Arr)|G(t(v)?|g)|c(y|ong(dot)?|up|edil|a(p|ron))|t(ilde|lg|riangle(left(eq)?|right(eq)?)|gl)|i(s(d)?|v)?|o(t(ni(v(c|a|b))?|in(dot|v(c|a|b)|E)?)?|pf)|dash|u(m(sp|ero)?)?|jcy|p(olint|ar(sl|t|allel)?|r(cue|e(c(eq)?)?)?)|e(s(im|ear)|dot|quiv|ar(hk|r(ow)?)|xist(s)?|Arr)?|v(sim|infin|Harr|dash|Dash|l(t(rie)?|e|Arr)|ap|r(trie|Arr)|g(t|e))|fr|w(near|ar(hk|r(ow)?)|Arr)|V(dash|Dash)|l(sim|t(ri(e)?)?|dr|e(s(s)?|q(slant|q)?|ft(arrow|rightarrow))?|E|arr|Arr)|a(ng|cute|tur(al(s)?)?|p(id|os|prox|E)?|bla)|r(tri(e)?|ightarrow|arr(c|w)?|Arr)|g(sim|t(r)?|e(s|q(slant|q)?)?|E)|mid|L(t(v)?|eft(arrow|rightarrow)|l)|b(sp|ump(e)?))|N(scr|c(y|edil|aron)|tilde|o(nBreakingSpace|Break|t(R(ightTriangle(Bar|Equal)?|everseElement)|Greater(Greater|SlantEqual|Tilde|Equal|FullEqual|Less)?|S(u(cceeds(SlantEqual|Tilde|Equal)?|perset(Equal)?|bset(Equal)?)|quareSu(perset(Equal)?|bset(Equal)?))|Hump(DownHump|Equal)|Nested(GreaterGreater|LessLess)|C(ongruent|upCap)|Tilde(Tilde|Equal|FullEqual)?|DoubleVerticalBar|Precedes(SlantEqual|Equal)?|E(qual(Tilde)?|lement|xists)|VerticalBar|Le(ss(Greater|SlantEqual|Tilde|Equal|Less)?|ftTriangle(Bar|Equal)?))?|pf)|u|e(sted(GreaterGreater|LessLess)|wLine|gative(MediumSpace|Thi(nSpace|ckSpace)|VeryThinSpace))|Jcy|fr|acute))|(o(s(cr|ol|lash)|h(m|bar)|c(y|ir(c)?)|ti(lde|mes(as)?)|S|int|opf|d(sold|iv|ot|ash|blac)|uml|p(erp|lus|ar)|elig|vbar|f(cir|r)|l(c(ir|ross)|t|ine|arr)|a(st|cute)|r(slope|igof|or|d(er(of)?|f|m)?|v|arr)?|g(t|on|rave)|m(i(nus|cron|d)|ega|acr))|O(s(cr|lash)|c(y|irc)|ti(lde|mes)|opf|dblac|uml|penCurly(DoubleQuote|Quote)|ver(B(ar|rac(e|ket))|Parenthesis)|fr|Elig|acute|r|grave|m(icron|ega|acr)))|(p(s(cr|i)|h(i(v)?|one|mmat)|cy|i(tchfork|v)?|o(intint|und|pf)|uncsp|er(cnt|tenk|iod|p|mil)|fr|l(us(sim|cir|two|d(o|u)|e|acir|mn|b)?|an(ck(h)?|kv))|ar(s(im|l)|t|a(llel)?)?|r(sim|n(sim|E|ap)|cue|ime(s)?|o(d|p(to)?|f(surf|line|alar))|urel|e(c(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?)?|E|ap)?|m)|P(s(cr|i)|hi|cy|i|o(incareplane|pf)|fr|lusMinus|artialD|r(ime|o(duct|portion(al)?)|ecedes(SlantEqual|Tilde|Equal)?)?))|(q(scr|int|opf|u(ot|est(eq)?|at(int|ernions))|prime|fr)|Q(scr|opf|UOT|fr))|(R(s(h|cr)|ho|c(y|edil|aron)|Barr|ight(Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|Floor|A(ngleBracket|rrow(Bar|LeftArrow)?))|o(undImplies|pf)|uleDelayed|e(verse(UpEquilibrium|E(quilibrium|lement)))?|fr|EG|a(ng|cute|rr(tl)?)|rightarrow)|r(s(h|cr|q(uo(r)?|b)|aquo)|h(o(v)?|ar(d|u(l)?))|nmid|c(y|ub|e(il|dil)|aron)|Barr|t(hree|imes|ri(e|f|ltri)?)|i(singdotseq|ng|ght(squigarrow|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(tail)?|rightarrows))|Har|o(times|p(f|lus|ar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|ldhar)|uluhar|p(polint|ar(gt)?)|e(ct|al(s|ine|part)?|g)|f(isht|loor|r)|l(har|arr|m)|a(ng(d|e|le)?|c(ute|e)|t(io(nals)?|ail)|dic|emptyv|quo|rr(sim|hk|c|tl|pl|fs|w|lp|ap|b(fs)?)?)|rarr|x|moust(ache)?|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr)))|(s(s(cr|tarf|etmn|mile)|h(y|c(hcy|y)|ort(parallel|mid)|arp)|c(sim|y|n(sim|E|ap)|cue|irc|polint|e(dil)?|E|a(p|ron))?|t(ar(f)?|r(ns|aight(phi|epsilon)))|i(gma(v|f)?|m(ne|dot|plus|e(q)?|l(E)?|rarr|g(E)?)?)|zlig|o(pf|ftcy|l(b(ar)?)?)|dot(e|b)?|u(ng|cc(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?|p(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|hs(ol|ub)|1|n(e|E)|2|d(sub|ot)|3|plus|e(dot)?|E|larr|mult)?|m|b(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|n(e|E)|dot|plus|e(dot)?|E|rarr|mult)?)|pa(des(uit)?|r)|e(swar|ct|tm(n|inus)|ar(hk|r(ow)?)|xt|mi|Arr)|q(su(p(set(eq)?|e)?|b(set(eq)?|e)?)|c(up(s)?|ap(s)?)|u(f|ar(e|f))?)|fr(own)?|w(nwar|ar(hk|r(ow)?)|Arr)|larr|acute|rarr|m(t(e(s)?)?|i(d|le)|eparsl|a(shp|llsetminus))|bquo)|S(scr|hort(RightArrow|DownArrow|UpArrow|LeftArrow)|c(y|irc|edil|aron)?|tar|igma|H(cy|CHcy)|opf|u(c(hThat|ceeds(SlantEqual|Tilde|Equal)?)|p(set|erset(Equal)?)?|m|b(set(Equal)?)?)|OFTcy|q(uare(Su(perset(Equal)?|bset(Equal)?)|Intersection|Union)?|rt)|fr|acute|mallCircle))|(t(s(hcy|c(y|r)|trok)|h(i(nsp|ck(sim|approx))|orn|e(ta(sym|v)?|re(4|fore))|k(sim|ap))|c(y|edil|aron)|i(nt|lde|mes(d|b(ar)?)?)|o(sa|p(cir|f(ork)?|bot)?|ea)|dot|prime|elrec|fr|w(ixt|ohead(leftarrow|rightarrow))|a(u|rget)|r(i(sb|time|dot|plus|e|angle(down|q|left(eq)?|right(eq)?)?|minus)|pezium|ade)|brk)|T(s(cr|trok)|RADE|h(i(nSpace|ckSpace)|e(ta|refore))|c(y|edil|aron)|S(cy|Hcy)|ilde(Tilde|Equal|FullEqual)?|HORN|opf|fr|a(u|b)|ripleDot))|(u(scr|h(ar(l|r)|blk)|c(y|irc)|t(ilde|dot|ri(f)?)|Har|o(pf|gon)|d(har|arr|blac)|u(arr|ml)|p(si(h|lon)?|harpoon(left|right)|downarrow|uparrows|lus|arrow)|f(isht|r)|wangle|l(c(orn(er)?|rop)|tri)|a(cute|rr)|r(c(orn(er)?|rop)|tri|ing)|grave|m(l|acr)|br(cy|eve)|Arr)|U(scr|n(ion(Plus)?|der(B(ar|rac(e|ket))|Parenthesis))|c(y|irc)|tilde|o(pf|gon)|dblac|uml|p(si(lon)?|downarrow|Tee(Arrow)?|per(RightArrow|LeftArrow)|DownArrow|Equilibrium|arrow|Arrow(Bar|DownArrow)?)|fr|a(cute|rr(ocir)?)|ring|grave|macr|br(cy|eve)))|(v(s(cr|u(pn(e|E)|bn(e|E)))|nsu(p|b)|cy|Bar(v)?|zigzag|opf|dash|prop|e(e(eq|bar)?|llip|r(t|bar))|Dash|fr|ltri|a(ngrt|r(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|t(heta|riangle(left|right))|p(hi|i|ropto)|epsilon|kappa|r(ho)?))|rtri|Arr)|V(scr|cy|opf|dash(l)?|e(e|r(yThinSpace|t(ical(Bar|Separator|Tilde|Line))?|bar))|Dash|vdash|fr|bar))|(w(scr|circ|opf|p|e(ierp|d(ge(q)?|bar))|fr|r(eath)?)|W(scr|circ|opf|edge|fr))|(X(scr|i|opf|fr)|x(s(cr|qcup)|h(arr|Arr)|nis|c(irc|up|ap)|i|o(time|dot|p(f|lus))|dtri|u(tri|plus)|vee|fr|wedge|l(arr|Arr)|r(arr|Arr)|map))|(y(scr|c(y|irc)|icy|opf|u(cy|ml)|en|fr|ac(y|ute))|Y(scr|c(y|irc)|opf|uml|Icy|Ucy|fr|acute|Acy))|(z(scr|hcy|c(y|aron)|igrarr|opf|dot|e(ta|etrf)|fr|w(nj|j)|acute)|Z(scr|c(y|aron)|Hcy|opf|dot|e(ta|roWidthSpace)|fr|acute)))(;)\\\",\\\"name\\\":\\\"constant.character.entity.named.$2.html\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"}},\\\"match\\\":\\\"(&)#[0-9]+(;)\\\",\\\"name\\\":\\\"constant.character.entity.numeric.decimal.html\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"}},\\\"match\\\":\\\"(&)#[xX][0-9a-fA-F]+(;)\\\",\\\"name\\\":\\\"constant.character.entity.numeric.hexadecimal.html\\\"},{\\\"match\\\":\\\"&(?=[a-zA-Z0-9]+;)\\\",\\\"name\\\":\\\"invalid.illegal.ambiguous-ampersand.html\\\"}]},\\\"heading\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{6})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.6.markdown\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{5})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.5.markdown\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{4})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.4.markdown\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{3})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.3.markdown\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{2})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.2.markdown\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.markdown\\\"}},\\\"match\\\":\\\"(#{1})\\\\\\\\s+(.*?)(?:\\\\\\\\s+(#+))?\\\\\\\\s*$\\\",\\\"name\\\":\\\"heading.1.markdown\\\"}]}},\\\"match\\\":\\\"(?:^|\\\\\\\\G)[ ]*(#{1,6}\\\\\\\\s+(.*?)(\\\\\\\\s+#{1,6})?\\\\\\\\s*)$\\\",\\\"name\\\":\\\"markup.heading.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown#inline\\\"}]},\\\"heading-setext\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^(={3,})(?=[ \\\\\\\\t]*$\\\\\\\\n?)\\\",\\\"name\\\":\\\"markup.heading.setext.1.markdown\\\"},{\\\"match\\\":\\\"^(-{3,})(?=[ \\\\\\\\t]*$\\\\\\\\n?)\\\",\\\"name\\\":\\\"markup.heading.setext.2.markdown\\\"}]},\\\"inline\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#component_inline\\\"},{\\\"include\\\":\\\"#span\\\"},{\\\"include\\\":\\\"#attributes\\\"}]},\\\"lists\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)([ ]*)([*+-])([ \\\\\\\\t])\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.list.begin.markdown\\\"}},\\\"name\\\":\\\"markup.list.unnumbered.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"text.html.markdown#list_paragraph\\\"}],\\\"while\\\":\\\"((^|\\\\\\\\G)([ ]*|\\\\\\\\t))|(^[ \\\\\\\\t]*$)\\\"},{\\\"begin\\\":\\\"(^|\\\\\\\\G)([ ]*)([0-9]+\\\\\\\\.)([ \\\\\\\\t])\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.list.begin.markdown\\\"}},\\\"name\\\":\\\"markup.list.numbered.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"text.html.markdown#list_paragraph\\\"}],\\\"while\\\":\\\"((^|\\\\\\\\G)([ ]*|\\\\\\\\t))|(^[ \\\\\\\\t]*$)\\\"}]},\\\"paragraph\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)[ ]*(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"meta.paragraph.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown#inline\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"},{\\\"include\\\":\\\"#heading-setext\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)((?=\\\\\\\\s*[-=]{3,}\\\\\\\\s*$)|[ ]{4,}(?=\\\\\\\\S))\\\"},\\\"span\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.start.component\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.link.description.title.markdown\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.component\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\[)([^]]*)(\\\\\\\\])(({)([^{]*)(}))?\\\\\\\\s\\\",\\\"name\\\":\\\"span.component.mdc\\\"}},\\\"scopeName\\\":\\\"text.markdown.mdc.standalone\\\",\\\"embeddedLangs\\\":[\\\"markdown\\\",\\\"yaml\\\",\\\"html-derivative\\\"]}\"))\n\nexport default [\n...markdown,\n...yaml,\n...html_derivative,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"MDX\\\",\\\"fileTypes\\\":[\\\"mdx\\\"],\\\"name\\\":\\\"mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-frontmatter\\\"},{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"repository\\\":{\\\"commonmark-attention\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\S)\\\\\\\\*{3,}|\\\\\\\\*{3,}(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"string.other.strong.emphasis.asterisk.mdx\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\p{L}\\\\\\\\p{N}])_{3,}(?![\\\\\\\\p{L}\\\\\\\\p{N}])|(?<=\\\\\\\\p{P})_{3,}|(?<![\\\\\\\\p{L}\\\\\\\\p{N}]|\\\\\\\\p{P})_{3,}(?!\\\\\\\\s)\\\",\\\"name\\\":\\\"string.other.strong.emphasis.underscore.mdx\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\S)\\\\\\\\*{2}|\\\\\\\\*{2}(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"string.other.strong.asterisk.mdx\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\p{L}\\\\\\\\p{N}])_{2}(?![\\\\\\\\p{L}\\\\\\\\p{N}])|(?<=\\\\\\\\p{P})_{2}|(?<![\\\\\\\\p{L}\\\\\\\\p{N}]|\\\\\\\\p{P})_{2}(?!\\\\\\\\s)\\\",\\\"name\\\":\\\"string.other.strong.underscore.mdx\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\S)\\\\\\\\*|\\\\\\\\*(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"string.other.emphasis.asterisk.mdx\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\p{L}\\\\\\\\p{N}])_(?![\\\\\\\\p{L}\\\\\\\\p{N}])|(?<=\\\\\\\\p{P})_|(?<![\\\\\\\\p{L}\\\\\\\\p{N}]|\\\\\\\\p{P})_(?!\\\\\\\\s)\\\",\\\"name\\\":\\\"string.other.emphasis.underscore.mdx\\\"}]},\\\"commonmark-block-quote\\\":{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(>)[ ]?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.quote.mdx\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.quote.begin.mdx\\\"}},\\\"name\\\":\\\"markup.quote.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"(>)[ ]?\\\",\\\"whileCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.quote.mdx\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.quote.begin.mdx\\\"}}},\\\"commonmark-character-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[!\\\\\\\"#$%&'()*+,\\\\\\\\-.\\\\\\\\/:;<=>?@\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]^_`{|}~])\\\",\\\"name\\\":\\\"constant.language.character-escape.mdx\\\"},\\\"commonmark-character-reference\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#whatwg-html-data-character-reference-named-terminated\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-reference.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.character-reference.numeric.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.character-reference.numeric.hexadecimal.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.html\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.character-reference.end.html\\\"}},\\\"match\\\":\\\"(&)(#)([Xx])([0-9A-Fa-f]{1,6})(;)\\\",\\\"name\\\":\\\"constant.language.character-reference.numeric.hexadecimal.html\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-reference.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.character-reference.numeric.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.character-reference.end.html\\\"}},\\\"match\\\":\\\"(&)(#)([0-9]{1,7})(;)\\\",\\\"name\\\":\\\"constant.language.character-reference.numeric.decimal.html\\\"}]},\\\"commonmark-code-fenced\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#commonmark-code-fenced-apib\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-asciidoc\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-c\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-clojure\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-coffee\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-console\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-cpp\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-cs\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-css\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-diff\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-dockerfile\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-elixir\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-elm\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-erlang\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-gitconfig\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-go\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-graphql\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-haskell\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-html\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-ini\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-java\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-js\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-json\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-julia\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-kotlin\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-less\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-less\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-lua\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-makefile\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-md\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-mdx\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-objc\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-perl\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-php\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-php\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-python\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-r\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-raku\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-ruby\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-rust\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-scala\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-scss\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-shell\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-shell-session\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-sql\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-svg\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-swift\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-toml\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-ts\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-tsx\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-vbnet\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-xml\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-yaml\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced-unknown\\\"}]},\\\"commonmark-code-fenced-apib\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:api\\\\\\\\x2dblueprint|(?:.*\\\\\\\\.)?apib))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.apib.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.apib\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown.source.gfm.apib\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:api\\\\\\\\x2dblueprint|(?:.*\\\\\\\\.)?apib))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.apib.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.apib\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown.source.gfm.apib\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-asciidoc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?(?:adoc|asciidoc)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.asciidoc.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.asciidoc\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?(?:adoc|asciidoc)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.asciidoc.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.asciidoc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.asciidoc\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-c\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:dtrace|dtrace\\\\\\\\x2dscript|oncrpc|rpc|rpcgen|unified\\\\\\\\x2dparallel\\\\\\\\x2dc|x\\\\\\\\x2dbitmap|x\\\\\\\\x2dpixmap|xdr|(?:.*\\\\\\\\.)?(?:c|cats|h|idc|opencl|upc|xbm|xpm|xs)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.c.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.c\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:dtrace|dtrace\\\\\\\\x2dscript|oncrpc|rpc|rpcgen|unified\\\\\\\\x2dparallel\\\\\\\\x2dc|x\\\\\\\\x2dbitmap|x\\\\\\\\x2dpixmap|xdr|(?:.*\\\\\\\\.)?(?:c|cats|h|idc|opencl|upc|xbm|xpm|xs)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.c.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.c\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-clojure\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:clojure|rouge|(?:.*\\\\\\\\.)?(?:boot|cl2|clj|cljc|cljs|cljs\\\\\\\\.hl|cljscm|cljx|edn|hic|rg|wisp)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.clojure.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.clojure\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:clojure|rouge|(?:.*\\\\\\\\.)?(?:boot|cl2|clj|cljc|cljs|cljs\\\\\\\\.hl|cljscm|cljx|edn|hic|rg|wisp)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.clojure.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.clojure\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.clojure\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-coffee\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:coffee\\\\\\\\x2dscript|coffeescript|(?:.*\\\\\\\\.)?(?:_coffee|cjsx|coffee|cson|em|emberscript|iced)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.coffee.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.coffee\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:coffee\\\\\\\\x2dscript|coffeescript|(?:.*\\\\\\\\.)?(?:_coffee|cjsx|coffee|cson|em|emberscript|iced)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.coffee.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.coffee\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-console\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:pycon|python\\\\\\\\x2dconsole))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.console.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.console\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.python.console\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:pycon|python\\\\\\\\x2dconsole))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.console.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.console\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.python.console\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-cpp\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:ags|ags\\\\\\\\x2dscript|asymptote|c\\\\\\\\+\\\\\\\\+|edje\\\\\\\\x2ddata\\\\\\\\x2dcollection|game\\\\\\\\x2dmaker\\\\\\\\x2dlanguage|swig|(?:.*\\\\\\\\.)?(?:asc|ash|asy|c\\\\\\\\+\\\\\\\\+|cc|cp|cpp|cppm|cxx|edc|gml|h\\\\\\\\+\\\\\\\\+|hh|hpp|hxx|inl|ino|ipp|ixx|metal|re|tcc|tpp|txx)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.cpp.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.c++\\\"},{\\\"include\\\":\\\"source.cpp\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:ags|ags\\\\\\\\x2dscript|asymptote|c\\\\\\\\+\\\\\\\\+|edje\\\\\\\\x2ddata\\\\\\\\x2dcollection|game\\\\\\\\x2dmaker\\\\\\\\x2dlanguage|swig|(?:.*\\\\\\\\.)?(?:asc|ash|asy|c\\\\\\\\+\\\\\\\\+|cc|cp|cpp|cppm|cxx|edc|gml|h\\\\\\\\+\\\\\\\\+|hh|hpp|hxx|inl|ino|ipp|ixx|metal|re|tcc|tpp|txx)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.cpp.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.c++\\\"},{\\\"include\\\":\\\"source.cpp\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-cs\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:beef|c#|cakescript|csharp|(?:.*\\\\\\\\.)?(?:bf|cake|cs|cs\\\\\\\\.pp|csx|eq|linq|uno)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.cs.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.cs\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:beef|c#|cakescript|csharp|(?:.*\\\\\\\\.)?(?:bf|cake|cs|cs\\\\\\\\.pp|csx|eq|linq|uno)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.cs.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.cs\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-css\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?css))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.css.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?css))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.css.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-diff\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:udiff|(?:.*\\\\\\\\.)?(?:diff|patch)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.diff.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.diff\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.diff\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:udiff|(?:.*\\\\\\\\.)?(?:diff|patch)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.diff.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.diff\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.diff\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-dockerfile\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:containerfile|(?:.*\\\\\\\\.)?dockerfile))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.dockerfile.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.dockerfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.dockerfile\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:containerfile|(?:.*\\\\\\\\.)?dockerfile))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.dockerfile.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.dockerfile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.dockerfile\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-elixir\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:elixir|(?:.*\\\\\\\\.)?(?:ex|exs)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.elixir.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.elixir\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:elixir|(?:.*\\\\\\\\.)?(?:ex|exs)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.elixir.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.elixir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.elixir\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-elm\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?elm))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.elm.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.elm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.elm\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?elm))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.elm.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.elm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.elm\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-erlang\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:erlang|(?:.*\\\\\\\\.)?(?:app|app\\\\\\\\.src|erl|es|escript|hrl|xrl|yrl)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.erlang.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.erlang\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:erlang|(?:.*\\\\\\\\.)?(?:app|app\\\\\\\\.src|erl|es|escript|hrl|xrl|yrl)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.erlang.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.erlang\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.erlang\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-gitconfig\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:git\\\\\\\\x2dconfig|gitmodules|(?:.*\\\\\\\\.)?gitconfig))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.gitconfig.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.gitconfig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.gitconfig\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:git\\\\\\\\x2dconfig|gitmodules|(?:.*\\\\\\\\.)?gitconfig))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.gitconfig.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.gitconfig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.gitconfig\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-go\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:golang|(?:.*\\\\\\\\.)?go))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.go.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.go\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:golang|(?:.*\\\\\\\\.)?go))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.go.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.go\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-graphql\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?(?:gql|graphql|graphqls)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.graphql.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.graphql\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?(?:gql|graphql|graphqls)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.graphql.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.graphql\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-haskell\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:c2hs|c2hs\\\\\\\\x2dhaskell|frege|haskell|(?:.*\\\\\\\\.)?(?:chs|dhall|hs|hs\\\\\\\\x2dboot|hsc)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.haskell.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.haskell\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:c2hs|c2hs\\\\\\\\x2dhaskell|frege|haskell|(?:.*\\\\\\\\.)?(?:chs|dhall|hs|hs\\\\\\\\x2dboot|hsc)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.haskell.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.haskell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.haskell\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-html\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:html|(?:.*\\\\\\\\.)?(?:hta|htm|html\\\\\\\\.hl|kit|mtml|xht|xhtml)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.html.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:html|(?:.*\\\\\\\\.)?(?:hta|htm|html\\\\\\\\.hl|kit|mtml|xht|xhtml)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.html.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-ini\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:altium|altium\\\\\\\\x2ddesigner|dosini|(?:.*\\\\\\\\.)?(?:cnf|dof|ini|lektorproject|outjob|pcbdoc|prefs|prjpcb|properties|schdoc|url)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.ini.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.ini\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ini\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:altium|altium\\\\\\\\x2ddesigner|dosini|(?:.*\\\\\\\\.)?(?:cnf|dof|ini|lektorproject|outjob|pcbdoc|prefs|prjpcb|properties|schdoc|url)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.ini.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.ini\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ini\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-java\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:chuck|unrealscript|(?:.*\\\\\\\\.)?(?:ck|jav|java|jsh|uc)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.java.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.java\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:chuck|unrealscript|(?:.*\\\\\\\\.)?(?:ck|jav|java|jsh|uc)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.java.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.java\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-js\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:cycript|javascript\\\\\\\\+erb|json\\\\\\\\x2dwith\\\\\\\\x2dcomments|node|qt\\\\\\\\x2dscript|(?:.*\\\\\\\\.)?(?:_js|bones|cjs|code\\\\\\\\x2dsnippets|code\\\\\\\\x2dworkspace|cy|es6|jake|javascript|js|js\\\\\\\\.erb|jsb|jscad|jsfl|jslib|jsm|json5|jsonc|jsonld|jspre|jss|jsx|mjs|njs|pac|sjs|ssjs|sublime\\\\\\\\x2dbuild|sublime\\\\\\\\x2dcolor\\\\\\\\x2dscheme|sublime\\\\\\\\x2dcommands|sublime\\\\\\\\x2dcompletions|sublime\\\\\\\\x2dkeymap|sublime\\\\\\\\x2dmacro|sublime\\\\\\\\x2dmenu|sublime\\\\\\\\x2dmousemap|sublime\\\\\\\\x2dproject|sublime\\\\\\\\x2dsettings|sublime\\\\\\\\x2dtheme|sublime\\\\\\\\x2dworkspace|sublime_metrics|sublime_session|xsjs|xsjslib)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.js.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:cycript|javascript\\\\\\\\+erb|json\\\\\\\\x2dwith\\\\\\\\x2dcomments|node|qt\\\\\\\\x2dscript|(?:.*\\\\\\\\.)?(?:_js|bones|cjs|code\\\\\\\\x2dsnippets|code\\\\\\\\x2dworkspace|cy|es6|jake|javascript|js|js\\\\\\\\.erb|jsb|jscad|jsfl|jslib|jsm|json5|jsonc|jsonld|jspre|jss|jsx|mjs|njs|pac|sjs|ssjs|sublime\\\\\\\\x2dbuild|sublime\\\\\\\\x2dcolor\\\\\\\\x2dscheme|sublime\\\\\\\\x2dcommands|sublime\\\\\\\\x2dcompletions|sublime\\\\\\\\x2dkeymap|sublime\\\\\\\\x2dmacro|sublime\\\\\\\\x2dmenu|sublime\\\\\\\\x2dmousemap|sublime\\\\\\\\x2dproject|sublime\\\\\\\\x2dsettings|sublime\\\\\\\\x2dtheme|sublime\\\\\\\\x2dworkspace|sublime_metrics|sublime_session|xsjs|xsjslib)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.js.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-json\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:ecere\\\\\\\\x2dprojects|ipython\\\\\\\\x2dnotebook|jupyter\\\\\\\\x2dnotebook|max|max/msp|maxmsp|oasv2\\\\\\\\x2djson|oasv3\\\\\\\\x2djson|(?:.*\\\\\\\\.)?(?:4dform|4dproject|avsc|epj|geojson|gltf|har|ice|ipynb|json|json|json|json\\\\\\\\x2dtmlanguage|jsonl|maxhelp|maxpat|maxproj|mcmeta|mxt|pat|sarif|tfstate|tfstate\\\\\\\\.backup|topojson|webapp|webmanifest|yy|yyp)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.json.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:ecere\\\\\\\\x2dprojects|ipython\\\\\\\\x2dnotebook|jupyter\\\\\\\\x2dnotebook|max|max/msp|maxmsp|oasv2\\\\\\\\x2djson|oasv3\\\\\\\\x2djson|(?:.*\\\\\\\\.)?(?:4dform|4dproject|avsc|epj|geojson|gltf|har|ice|ipynb|json|json|json|json\\\\\\\\x2dtmlanguage|jsonl|maxhelp|maxpat|maxproj|mcmeta|mxt|pat|sarif|tfstate|tfstate\\\\\\\\.backup|topojson|webapp|webmanifest|yy|yyp)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.json.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-julia\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:julia|(?:.*\\\\\\\\.)?jl))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.julia.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.julia\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:julia|(?:.*\\\\\\\\.)?jl))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.julia.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.julia\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.julia\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-kotlin\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:gradle\\\\\\\\x2dkotlin\\\\\\\\x2ddsl|kotlin|(?:.*\\\\\\\\.)?(?:gradle\\\\\\\\.kts|kt|ktm|kts)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.kotlin.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.kotlin\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.kotlin\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:gradle\\\\\\\\x2dkotlin\\\\\\\\x2ddsl|kotlin|(?:.*\\\\\\\\.)?(?:gradle\\\\\\\\.kts|kt|ktm|kts)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.kotlin.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.kotlin\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.kotlin\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-less\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:less\\\\\\\\x2dcss|(?:.*\\\\\\\\.)?less))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.less.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.less\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:less\\\\\\\\x2dcss|(?:.*\\\\\\\\.)?less))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.less.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.less\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-lua\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?(?:fcgi|lua|nse|p8|pd_lua|rbxs|rockspec|wlua)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.lua.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.lua\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lua\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?(?:fcgi|lua|nse|p8|pd_lua|rbxs|rockspec|wlua)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.lua.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.lua\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lua\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-makefile\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:bsdmake|mf|(?:.*\\\\\\\\.)?(?:mak|make|makefile|mk|mkfile)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.makefile.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.makefile\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:bsdmake|mf|(?:.*\\\\\\\\.)?(?:mak|make|makefile|mk|mkfile)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.makefile.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.makefile\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.makefile\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-md\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:md|pandoc|rmarkdown|(?:.*\\\\\\\\.)?(?:livemd|markdown|mdown|mdwn|mkd|mkdn|mkdown|qmd|rmd|ronn|scd|workbook)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.md.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.md\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.md\\\"},{\\\"include\\\":\\\"source.gfm\\\"},{\\\"include\\\":\\\"text.html.markdown\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:md|pandoc|rmarkdown|(?:.*\\\\\\\\.)?(?:livemd|markdown|mdown|mdwn|mkd|mkdn|mkdown|qmd|rmd|ronn|scd|workbook)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.md.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.md\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.md\\\"},{\\\"include\\\":\\\"source.gfm\\\"},{\\\"include\\\":\\\"text.html.markdown\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-mdx\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?mdx))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.mdx.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.mdx\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?mdx))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.mdx.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.mdx\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-objc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:obj\\\\\\\\x2dc|objc|objective\\\\\\\\x2dc|objectivec))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.objc.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.objc\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:obj\\\\\\\\x2dc|objc|objective\\\\\\\\x2dc|objectivec))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.objc.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.objc\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-perl\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:cperl|(?:.*\\\\\\\\.)?(?:cgi|perl|ph|pl|plx|pm|psgi|t)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.perl.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.perl\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:cperl|(?:.*\\\\\\\\.)?(?:cgi|perl|ph|pl|plx|pm|psgi|t)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.perl.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.perl\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-php\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:html\\\\\\\\+php|inc|php|(?:.*\\\\\\\\.)?(?:aw|ctp|php3|php4|php5|phps|phpt|phtml)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.php.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.php\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:html\\\\\\\\+php|inc|php|(?:.*\\\\\\\\.)?(?:aw|ctp|php3|php4|php5|phps|phpt|phtml)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.php.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.php\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-python\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:bazel|easybuild|python|python3|rusthon|snakemake|starlark|xonsh|(?:.*\\\\\\\\.)?(?:bzl|eb|gyp|gypi|lmi|py|py3|pyde|pyi|pyp|pyt|pyw|rpy|sage|sagews|smk|snakefile|spec|tac|wsgi|xpy|xsh)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.python.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:bazel|easybuild|python|python3|rusthon|snakemake|starlark|xonsh|(?:.*\\\\\\\\.)?(?:bzl|eb|gyp|gypi|lmi|py|py3|pyde|pyi|pyp|pyt|pyw|rpy|sage|sagews|smk|snakefile|spec|tac|wsgi|xpy|xsh)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.python.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-r\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:rscript|splus|(?:.*\\\\\\\\.)?(?:r|rd|rsx)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.r.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.r\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:rscript|splus|(?:.*\\\\\\\\.)?(?:r|rd|rsx)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.r.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.r\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-raku\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:perl\\\\\\\\x2d6|perl6|pod\\\\\\\\x2d6|(?:.*\\\\\\\\.)?(?:6pl|6pm|nqp|p6|p6l|p6m|pl6|pm6|pod|pod6|raku|rakumod)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.raku.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.raku\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.raku\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:perl\\\\\\\\x2d6|perl6|pod\\\\\\\\x2d6|(?:.*\\\\\\\\.)?(?:6pl|6pm|nqp|p6|p6l|p6m|pl6|pm6|pod|pod6|raku|rakumod)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.raku.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.raku\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.raku\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-ruby\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:jruby|macruby|(?:.*\\\\\\\\.)?(?:builder|druby|duby|eye|gemspec|god|jbuilder|mirah|mspec|pluginspec|podspec|prawn|rabl|rake|rb|rbi|rbuild|rbw|rbx|ru|ruby|thor|watchr)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.ruby.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:jruby|macruby|(?:.*\\\\\\\\.)?(?:builder|druby|duby|eye|gemspec|god|jbuilder|mirah|mspec|pluginspec|podspec|prawn|rabl|rake|rb|rbi|rbuild|rbw|rbx|ru|ruby|thor|watchr)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.ruby.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.ruby\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-rust\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:rust|(?:.*\\\\\\\\.)?(?:rs|rs\\\\\\\\.in)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.rust.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.rust\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:rust|(?:.*\\\\\\\\.)?(?:rs|rs\\\\\\\\.in)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.rust.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.rust\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-scala\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?(?:kojo|sbt|sc|scala)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.scala.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.scala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.scala\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?(?:kojo|sbt|sc|scala)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.scala.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.scala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.scala\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-scss\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?scss))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.scss.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.scss\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?scss))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.scss.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.scss\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-shell\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:abuild|alpine\\\\\\\\x2dabuild|apkbuild|envrc|gentoo\\\\\\\\x2debuild|gentoo\\\\\\\\x2declass|openrc|openrc\\\\\\\\x2drunscript|shell|shell\\\\\\\\x2dscript|(?:.*\\\\\\\\.)?(?:bash|bats|command|csh|ebuild|eclass|ksh|sh|sh\\\\\\\\.in|tcsh|tmux|tool|zsh|zsh\\\\\\\\x2dtheme)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.shell.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.shell\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:abuild|alpine\\\\\\\\x2dabuild|apkbuild|envrc|gentoo\\\\\\\\x2debuild|gentoo\\\\\\\\x2declass|openrc|openrc\\\\\\\\x2drunscript|shell|shell\\\\\\\\x2dscript|(?:.*\\\\\\\\.)?(?:bash|bats|command|csh|ebuild|eclass|ksh|sh|sh\\\\\\\\.in|tcsh|tmux|tool|zsh|zsh\\\\\\\\x2dtheme)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.shell.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.shell\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-shell-session\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:bash\\\\\\\\x2dsession|console|shellsession|(?:.*\\\\\\\\.)?sh\\\\\\\\x2dsession))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.shell-session.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.shell-session\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.shell-session\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:bash\\\\\\\\x2dsession|console|shellsession|(?:.*\\\\\\\\.)?sh\\\\\\\\x2dsession))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.shell-session.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.shell-session\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.shell-session\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-sql\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:plpgsql|sqlpl|(?:.*\\\\\\\\.)?(?:cql|db2|ddl|mysql|pgsql|prc|sql|sql|sql|tab|udf|viw)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.sql.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sql\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:plpgsql|sqlpl|(?:.*\\\\\\\\.)?(?:cql|db2|ddl|mysql|pgsql|prc|sql|sql|sql|tab|udf|viw)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.sql.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sql\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-svg\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?svg))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.svg.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.svg\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml.svg\\\"},{\\\"include\\\":\\\"text.xml\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?svg))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.svg.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.svg\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml.svg\\\"},{\\\"include\\\":\\\"text.xml\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-swift\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?swift))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.swift.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.swift\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?swift))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.swift.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.swift\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-toml\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?toml))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.toml.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.toml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.toml\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?toml))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.toml.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.toml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.toml\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-ts\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:typescript|(?:.*\\\\\\\\.)?(?:cts|mts|ts)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.ts.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:typescript|(?:.*\\\\\\\\.)?(?:cts|mts|ts)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.ts.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-tsx\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?tsx))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.tsx.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:(?:.*\\\\\\\\.)?tsx))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.tsx.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-unknown\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?:[^\\\\\\\\t\\\\\\\\n\\\\\\\\r` ])+)(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)?(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"contentName\\\":\\\"markup.raw.code.fenced.mdx\\\",\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.other.mdx\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?:[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])+)(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)?(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"contentName\\\":\\\"markup.raw.code.fenced.mdx\\\",\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.other.mdx\\\"}]},\\\"commonmark-code-fenced-vbnet\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:fb|freebasic|realbasic|vb\\\\\\\\x2d\\\\\\\\.net|vb\\\\\\\\.net|vbnet|vbscript|visual\\\\\\\\x2dbasic|visual\\\\\\\\x2dbasic\\\\\\\\x2d\\\\\\\\.net|(?:.*\\\\\\\\.)?(?:bi|rbbas|rbfrm|rbmnu|rbres|rbtbar|rbuistate|vb|vbhtml|vbs)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.vbnet.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.vbnet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.vbnet\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:fb|freebasic|realbasic|vb\\\\\\\\x2d\\\\\\\\.net|vb\\\\\\\\.net|vbnet|vbscript|visual\\\\\\\\x2dbasic|visual\\\\\\\\x2dbasic\\\\\\\\x2d\\\\\\\\.net|(?:.*\\\\\\\\.)?(?:bi|rbbas|rbfrm|rbmnu|rbres|rbtbar|rbuistate|vb|vbhtml|vbs)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.vbnet.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.vbnet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.vbnet\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-xml\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:collada|eagle|labview|web\\\\\\\\x2dontology\\\\\\\\x2dlanguage|xpages|(?:.*\\\\\\\\.)?(?:adml|admx|ant|axaml|axml|brd|builds|ccproj|ccxml|clixml|cproject|cscfg|csdef|csproj|ct|dae|depproj|dita|ditamap|ditaval|dll\\\\\\\\.config|dotsettings|filters|fsproj|fxml|glade|gmx|grxml|hzp|iml|ivy|jelly|jsproj|kml|launch|lvclass|lvlib|lvproj|mdpolicy|mjml|mxml|natvis|ndproj|nproj|nuspec|odd|osm|owl|pkgproj|proj|props|ps1xml|psc1|pt|qhelp|rdf|resx|rss|sch|sch|scxml|sfproj|shproj|srdf|storyboard|sublime\\\\\\\\x2dsnippet|targets|tml|ui|urdf|ux|vbproj|vcxproj|vsixmanifest|vssettings|vstemplate|vxml|wixproj|wsdl|wsf|wxi|wxl|wxs|x3d|xacro|xaml|xib|xlf|xliff|xmi|xml|xml\\\\\\\\.dist|xmp|xpl|xproc|xproj|xsd|xsp\\\\\\\\x2dconfig|xsp\\\\\\\\.metadata|xspec|xul|zcml)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.xml.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:collada|eagle|labview|web\\\\\\\\x2dontology\\\\\\\\x2dlanguage|xpages|(?:.*\\\\\\\\.)?(?:adml|admx|ant|axaml|axml|brd|builds|ccproj|ccxml|clixml|cproject|cscfg|csdef|csproj|ct|dae|depproj|dita|ditamap|ditaval|dll\\\\\\\\.config|dotsettings|filters|fsproj|fxml|glade|gmx|grxml|hzp|iml|ivy|jelly|jsproj|kml|launch|lvclass|lvlib|lvproj|mdpolicy|mjml|mxml|natvis|ndproj|nproj|nuspec|odd|osm|owl|pkgproj|proj|props|ps1xml|psc1|pt|qhelp|rdf|resx|rss|sch|sch|scxml|sfproj|shproj|srdf|storyboard|sublime\\\\\\\\x2dsnippet|targets|tml|ui|urdf|ux|vbproj|vcxproj|vsixmanifest|vssettings|vstemplate|vxml|wixproj|wsdl|wsf|wxi|wxl|wxs|x3d|xacro|xaml|xib|xlf|xliff|xmi|xml|xml\\\\\\\\.dist|xmp|xpl|xproc|xproj|xsd|xsp\\\\\\\\x2dconfig|xsp\\\\\\\\.metadata|xspec|xul|zcml)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.xml.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-fenced-yaml\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(`{3,})(?:[\\\\\\\\t ]*((?i:jar\\\\\\\\x2dmanifest|kaitai\\\\\\\\x2dstruct|oasv2\\\\\\\\x2dyaml|oasv3\\\\\\\\x2dyaml|unity3d\\\\\\\\x2dasset|yaml|yml|(?:.*\\\\\\\\.)?(?:anim|asset|ksy|lkml|lookml|mat|meta|mir|prefab|raml|reek|rviz|sublime\\\\\\\\x2dsyntax|syntax|unity|yaml\\\\\\\\x2dtmlanguage|yaml\\\\\\\\.sed|yml\\\\\\\\.mysql)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r`])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.yaml.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(~{3,})(?:[\\\\\\\\t ]*((?i:jar\\\\\\\\x2dmanifest|kaitai\\\\\\\\x2dstruct|oasv2\\\\\\\\x2dyaml|oasv3\\\\\\\\x2dyaml|unity3d\\\\\\\\x2dasset|yaml|yml|(?:.*\\\\\\\\.)?(?:anim|asset|ksy|lkml|lookml|mat|meta|mir|prefab|raml|reek|rviz|sublime\\\\\\\\x2dsyntax|syntax|unity|yaml\\\\\\\\x2dtmlanguage|yaml\\\\\\\\.sed|yml\\\\\\\\.mysql)))(?:[\\\\\\\\t ]+((?:[^\\\\\\\\n\\\\\\\\r])+))?)(?:[\\\\\\\\t ]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.fenced.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"end\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.code.fenced.mdx\\\"}},\\\"name\\\":\\\"markup.code.yaml.mdx\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(.*)\\\",\\\"contentName\\\":\\\"meta.embedded.yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}],\\\"while\\\":\\\"(^|\\\\\\\\G)(?![\\\\\\\\t ]*([`~]{3,})[\\\\\\\\t ]*$)\\\"}]}]},\\\"commonmark-code-text\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.code.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.raw.code.mdx markup.inline.raw.code.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.end.code.mdx\\\"}},\\\"match\\\":\\\"(?<!`)(`+)(?!`)(.+?)(?<!`)(\\\\\\\\1)(?!`)\\\",\\\"name\\\":\\\"markup.code.other.mdx\\\"},\\\"commonmark-definition\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.identifier.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.mdx\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.other.begin.destination.mdx\\\"},\\\"6\\\":{\\\"name\\\":\\\"string.other.link.destination.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"string.other.end.destination.mdx\\\"},\\\"8\\\":{\\\"name\\\":\\\"string.other.link.destination.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"string.other.begin.mdx\\\"},\\\"10\\\":{\\\"name\\\":\\\"string.quoted.double.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"11\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"},\\\"12\\\":{\\\"name\\\":\\\"string.other.begin.mdx\\\"},\\\"13\\\":{\\\"name\\\":\\\"string.quoted.single.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"14\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"},\\\"15\\\":{\\\"name\\\":\\\"string.other.begin.mdx\\\"},\\\"16\\\":{\\\"name\\\":\\\"string.quoted.paren.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"17\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\[)((?:[^\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]]|\\\\\\\\\\\\\\\\[\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]]?)+?)(\\\\\\\\])(:)[ \\\\\\\\t]*(?:(<)((?:[^\\\\\\\\n<\\\\\\\\\\\\\\\\>]|\\\\\\\\\\\\\\\\[<\\\\\\\\\\\\\\\\>]?)*)(>)|(\\\\\\\\g<destination_raw>))(?:[\\\\\\\\t ]+(?:(\\\\\\\")((?:[^\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\[\\\\\\\"\\\\\\\\\\\\\\\\]?)*)(\\\\\\\")|(')((?:[^'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]?)*)(')|(\\\\\\\\()((?:[^\\\\\\\\)\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\[\\\\\\\\)\\\\\\\\\\\\\\\\]?)*)(\\\\\\\\))))?$(?<destination_raw>(?!\\\\\\\\<)(?:(?:[^\\\\\\\\p{Cc}\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\(\\\\\\\\)]|\\\\\\\\\\\\\\\\[\\\\\\\\(\\\\\\\\)\\\\\\\\\\\\\\\\]?)|\\\\\\\\(\\\\\\\\g<destination_raw>*\\\\\\\\))+){0}\\\",\\\"name\\\":\\\"meta.link.reference.def.mdx\\\"},\\\"commonmark-hard-break-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\$\\\",\\\"name\\\":\\\"constant.language.character-escape.line-ending.mdx\\\"},\\\"commonmark-hard-break-trailing\\\":{\\\"match\\\":\\\"( ){2,}$\\\",\\\"name\\\":\\\"carriage-return constant.language.character-escape.line-ending.mdx\\\"},\\\"commonmark-heading-atx\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-text\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(#{1}(?!#))(?:[ \\\\\\\\t]+([^\\\\\\\\r\\\\\\\\n]+?)(?:[ \\\\\\\\t]+(#+?))?)?[ \\\\\\\\t]*$\\\",\\\"name\\\":\\\"markup.heading.atx.1.mdx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-text\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(#{2}(?!#))(?:[ \\\\\\\\t]+([^\\\\\\\\r\\\\\\\\n]+?)(?:[ \\\\\\\\t]+(#+?))?)?[ \\\\\\\\t]*$\\\",\\\"name\\\":\\\"markup.heading.atx.2.mdx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-text\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(#{3}(?!#))(?:[ \\\\\\\\t]+([^\\\\\\\\r\\\\\\\\n]+?)(?:[ \\\\\\\\t]+(#+?))?)?[ \\\\\\\\t]*$\\\",\\\"name\\\":\\\"markup.heading.atx.3.mdx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-text\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(#{4}(?!#))(?:[ \\\\\\\\t]+([^\\\\\\\\r\\\\\\\\n]+?)(?:[ \\\\\\\\t]+(#+?))?)?[ \\\\\\\\t]*$\\\",\\\"name\\\":\\\"markup.heading.atx.4.mdx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-text\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(#{5}(?!#))(?:[ \\\\\\\\t]+([^\\\\\\\\r\\\\\\\\n]+?)(?:[ \\\\\\\\t]+(#+?))?)?[ \\\\\\\\t]*$\\\",\\\"name\\\":\\\"markup.heading.atx.5.mdx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-text\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.heading.mdx\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(#{6}(?!#))(?:[ \\\\\\\\t]+([^\\\\\\\\r\\\\\\\\n]+?)(?:[ \\\\\\\\t]+(#+?))?)?[ \\\\\\\\t]*$\\\",\\\"name\\\":\\\"markup.heading.atx.6.mdx\\\"}]},\\\"commonmark-heading-setext\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(={1,})[ \\\\\\\\t]*$\\\",\\\"name\\\":\\\"markup.heading.setext.1.mdx\\\"},{\\\"match\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(-{1,})[ \\\\\\\\t]*$\\\",\\\"name\\\":\\\"markup.heading.setext.2.mdx\\\"}]},\\\"commonmark-label-end\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.begin.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.begin.destination.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.other.link.destination.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"string.other.end.destination.mdx\\\"},\\\"6\\\":{\\\"name\\\":\\\"string.other.link.destination.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"string.other.begin.mdx\\\"},\\\"8\\\":{\\\"name\\\":\\\"string.quoted.double.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"},\\\"10\\\":{\\\"name\\\":\\\"string.other.begin.mdx\\\"},\\\"11\\\":{\\\"name\\\":\\\"string.quoted.single.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"},\\\"13\\\":{\\\"name\\\":\\\"string.other.begin.mdx\\\"},\\\"14\\\":{\\\"name\\\":\\\"string.quoted.paren.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"15\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"},\\\"16\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"}},\\\"match\\\":\\\"(\\\\\\\\])(\\\\\\\\()[\\\\\\\\t ]*(?:(?:(<)((?:[^\\\\\\\\n<\\\\\\\\\\\\\\\\>]|\\\\\\\\\\\\\\\\[<\\\\\\\\\\\\\\\\>]?)*)(>)|(\\\\\\\\g<destination_raw>))(?:[\\\\\\\\t ]+(?:(\\\\\\\")((?:[^\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\[\\\\\\\"\\\\\\\\\\\\\\\\]?)*)(\\\\\\\")|(')((?:[^'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]?)*)(')|(\\\\\\\\()((?:[^\\\\\\\\)\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\[\\\\\\\\)\\\\\\\\\\\\\\\\]?)*)(\\\\\\\\))))?)?[\\\\\\\\t ]*(\\\\\\\\))(?<destination_raw>(?!\\\\\\\\<)(?:(?:[^\\\\\\\\p{Cc}\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\(\\\\\\\\)]|\\\\\\\\\\\\\\\\[\\\\\\\\(\\\\\\\\)\\\\\\\\\\\\\\\\]?)|\\\\\\\\(\\\\\\\\g<destination_raw>*\\\\\\\\))+){0}\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.begin.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.identifier.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"}},\\\"match\\\":\\\"(\\\\\\\\])(\\\\\\\\[)((?:[^\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]]|\\\\\\\\\\\\\\\\[\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]]?)+?)(\\\\\\\\])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.mdx\\\"}},\\\"match\\\":\\\"(\\\\\\\\])\\\"}]},\\\"commonmark-label-start\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\!\\\\\\\\[(?!\\\\\\\\^)\\\",\\\"name\\\":\\\"string.other.begin.image.mdx\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"string.other.begin.link.mdx\\\"}]},\\\"commonmark-list-item\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*((?:[*+-]))(?:[ ]{4}(?![ ])|\\\\\\\\t)(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.unordered.list.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t)[ ]{1}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*((?:[*+-]))(?:[ ]{3}(?![ ]))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.unordered.list.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t)\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*((?:[*+-]))(?:[ ]{2}(?![ ]))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.unordered.list.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)[ ]{3}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*((?:[*+-]))(?:[ ]{1}|(?=\\\\\\\\n))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.unordered.list.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)[ ]{2}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*([0-9]{9})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{4}(?![ ])|\\\\\\\\t(?![\\\\\\\\t ]))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t){3}[ ]{2}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(?:([0-9]{9})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{8})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{4}(?![ ])))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t){3}[ ]{1}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(?:([0-9]{9})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{8})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{7})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{4}(?![ ])))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t){3}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(?:([0-9]{9})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{1}|(?=[ \\\\\\\\t]*\\\\\\\\n))|([0-9]{8})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{7})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{6})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{4}(?![ ])))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"7\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t){2}[ ]{3}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(?:([0-9]{8})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{1}|(?=[ \\\\\\\\t]*\\\\\\\\n))|([0-9]{7})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{6})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{5})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{4}(?![ ])))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"7\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t){2}[ ]{2}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(?:([0-9]{7})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{1}|(?=[ \\\\\\\\t]*\\\\\\\\n))|([0-9]{6})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{5})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{4})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{4}(?![ ])))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"7\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t){2}[ ]{1}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(?:([0-9]{6})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{1}|(?=[ \\\\\\\\t]*\\\\\\\\n))|([0-9]{5})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{4})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{3})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{4}(?![ ])))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"7\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t){2}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(?:([0-9]{5})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{1}|(?=[ \\\\\\\\t]*\\\\\\\\n))|([0-9]{4})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{3})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{2})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{4}(?![ ])))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"7\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t)[ ]{3}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(?:([0-9]{4})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{1}|(?=[ \\\\\\\\t]*\\\\\\\\n))|([0-9]{3})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{2})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{3}(?![ ]))|([0-9]{1})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{4}(?![ ])))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"7\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t)[ ]{2}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(?:([0-9]{3})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{1}|(?=[ \\\\\\\\t]*\\\\\\\\n))|([0-9]{2})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{2}(?![ ]))|([0-9]{1})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{3}(?![ ])))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t)[ ]{1}\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(?:([0-9]{2})((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{1}|(?=[ \\\\\\\\t]*\\\\\\\\n))|([0-9])((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{2}(?![ ])))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t)\\\"},{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*([0-9])((?:\\\\\\\\.|\\\\\\\\)))(?:[ ]{1}|(?=[ \\\\\\\\t]*\\\\\\\\n))(\\\\\\\\[[\\\\\\\\t Xx]\\\\\\\\](?=[\\\\\\\\t\\\\\\\\n\\\\\\\\r ]+(?:$|[^\\\\\\\\t\\\\\\\\n\\\\\\\\r ])))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.number.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.ordered.list.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.tasklist.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)[ ]{3}\\\"}]},\\\"commonmark-paragraph\\\":{\\\"begin\\\":\\\"(?![\\\\\\\\t ]*$)\\\",\\\"name\\\":\\\"meta.paragraph.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-text\\\"}],\\\"while\\\":\\\"(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t)\\\"},\\\"commonmark-thematic-break\\\":{\\\"match\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*([-*_])[ \\\\\\\\t]*(?:\\\\\\\\1[ \\\\\\\\t]*){2,}$\\\",\\\"name\\\":\\\"meta.separator.mdx\\\"},\\\"extension-gfm-autolink-literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[\\\\\\\\t\\\\\\\\n\\\\\\\\r \\\\\\\\(\\\\\\\\*\\\\\\\\_\\\\\\\\[\\\\\\\\]~])(?=(?i:www)\\\\\\\\.[^\\\\\\\\n\\\\\\\\r])(?:(?:[\\\\\\\\p{L}\\\\\\\\p{N}]|-|[\\\\\\\\._](?!(?:[!\\\\\\\"'\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;<\\\\\\\\?_~]*(?:[\\\\\\\\s<]|\\\\\\\\][\\\\\\\\t\\\\\\\\n \\\\\\\\(\\\\\\\\[]))))+\\\\\\\\g<path>?)?(?<path>(?:(?:[^\\\\\\\\t\\\\\\\\n\\\\\\\\r !\\\\\\\"&'\\\\\\\\(\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;<\\\\\\\\?\\\\\\\\]_~]|&(?![A-Za-z]*;(?:[!\\\\\\\"'\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;<\\\\\\\\?_~]*(?:[\\\\\\\\s<]|\\\\\\\\][\\\\\\\\t\\\\\\\\n \\\\\\\\(\\\\\\\\[])))|[!\\\\\\\"'\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;\\\\\\\\?_~](?!(?:[!\\\\\\\"'\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;<\\\\\\\\?_~]*(?:[\\\\\\\\s<]|\\\\\\\\][\\\\\\\\t\\\\\\\\n \\\\\\\\(\\\\\\\\[]))))|\\\\\\\\(\\\\\\\\g<path>*\\\\\\\\))+){0}\\\",\\\"name\\\":\\\"string.other.link.autolink.literal.www.mdx\\\"},{\\\"match\\\":\\\"(?<=^|[^A-Za-z])(?i:https?://)(?=[\\\\\\\\p{L}\\\\\\\\p{N}])(?:(?:[\\\\\\\\p{L}\\\\\\\\p{N}]|-|[\\\\\\\\._](?!(?:[!\\\\\\\"'\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;<\\\\\\\\?_~]*(?:[\\\\\\\\s<]|\\\\\\\\][\\\\\\\\t\\\\\\\\n \\\\\\\\(\\\\\\\\[]))))+\\\\\\\\g<path>?)?(?<path>(?:(?:[^\\\\\\\\t\\\\\\\\n\\\\\\\\r !\\\\\\\"&'\\\\\\\\(\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;<\\\\\\\\?\\\\\\\\]_~]|&(?![A-Za-z]*;(?:[!\\\\\\\"'\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;<\\\\\\\\?_~]*(?:[\\\\\\\\s<]|\\\\\\\\][\\\\\\\\t\\\\\\\\n \\\\\\\\(\\\\\\\\[])))|[!\\\\\\\"'\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;\\\\\\\\?_~](?!(?:[!\\\\\\\"'\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;<\\\\\\\\?_~]*(?:[\\\\\\\\s<]|\\\\\\\\][\\\\\\\\t\\\\\\\\n \\\\\\\\(\\\\\\\\[]))))|\\\\\\\\(\\\\\\\\g<path>*\\\\\\\\))+){0}\\\",\\\"name\\\":\\\"string.other.link.autolink.literal.http.mdx\\\"},{\\\"match\\\":\\\"(?<=^|[^A-Za-z/])(?i:mailto:|xmpp:)?(?:[0-9A-Za-z+\\\\\\\\-\\\\\\\\._])+@(?:(?:[0-9A-Za-z]|[-_](?!(?:[!\\\\\\\"'\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;<\\\\\\\\?_~]*(?:[\\\\\\\\s<]|\\\\\\\\][\\\\\\\\t\\\\\\\\n \\\\\\\\(\\\\\\\\[]))))+(?:\\\\\\\\.(?!(?:[!\\\\\\\"'\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;<\\\\\\\\?_~]*(?:[\\\\\\\\s<]|\\\\\\\\][\\\\\\\\t\\\\\\\\n \\\\\\\\(\\\\\\\\[])))))+(?:[A-Za-z]|[-_](?!(?:[!\\\\\\\"'\\\\\\\\)\\\\\\\\*,\\\\\\\\.:;<\\\\\\\\?_~]*(?:[\\\\\\\\s<]|\\\\\\\\][\\\\\\\\t\\\\\\\\n \\\\\\\\(\\\\\\\\[]))))+\\\",\\\"name\\\":\\\"string.other.link.autolink.literal.email.mdx\\\"}]},\\\"extension-gfm-footnote-call\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.link.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.begin.footnote.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.identifier.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"string.other.end.footnote.mdx\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)((?:[^\\\\\\\\t\\\\\\\\n\\\\\\\\r \\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]]|\\\\\\\\\\\\\\\\[\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]]?)+)(\\\\\\\\])\\\"},\\\"extension-gfm-footnote-definition\\\":{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\[)(\\\\\\\\^)((?:[^\\\\\\\\t\\\\\\\\n\\\\\\\\r \\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]]|\\\\\\\\\\\\\\\\[\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\]]?)+)(\\\\\\\\])(:)[\\\\\\\\t ]*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.link.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.begin.footnote.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.identifier.mdx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"string.other.end.footnote.mdx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-sections\\\"}],\\\"while\\\":\\\"^(?=[\\\\\\\\t ]*$)|(?:^|\\\\\\\\G)(?:[ ]{4}|\\\\\\\\t)\\\"},\\\"extension-gfm-strikethrough\\\":{\\\"match\\\":\\\"(?<=\\\\\\\\S)(?<!~)~{1,2}(?!~)|(?<!~)~{1,2}(?=\\\\\\\\S)(?!~)\\\",\\\"name\\\":\\\"string.other.strikethrough.mdx\\\"},\\\"extension-gfm-table\\\":{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(?=\\\\\\\\|[^\\\\\\\\n\\\\\\\\r]+\\\\\\\\|[ \\\\\\\\t]*$)\\\",\\\"end\\\":\\\"^(?=[\\\\\\\\t ]*$)|$\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-text\\\"}]}},\\\"match\\\":\\\"(?<=\\\\\\\\||(?:^|\\\\\\\\G))[\\\\\\\\t ]*((?:[^\\\\\\\\n\\\\\\\\r\\\\\\\\\\\\\\\\\\\\\\\\|]|\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\\|]?)+?)[\\\\\\\\t ]*(?=\\\\\\\\||$)\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\|)\\\",\\\"name\\\":\\\"markup.list.table-delimiter.mdx\\\"}]},\\\"extension-github-gemoji\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.gemoji.begin.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.gemoji.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.gemoji.end.mdx\\\"}},\\\"match\\\":\\\"(:)((?:(?:(?:hand_with_index_finger_and_thumb_cros|mailbox_clo|fist_rai|confu)s|r(?:aised_hand_with_fingers_splay|e(?:gister|l(?:iev|ax)))|disappointed_reliev|confound|(?:a(?:ston|ngu)i|flu)sh|unamus|hush)e|(?:chart_with_(?:down|up)wards_tre|large_orange_diamo|small_(?:orang|blu)e_diamo|large_blue_diamo|parasol_on_grou|loud_sou|rewi)n|(?:rightwards_pushing_h|hourglass_flowing_s|leftwards_(?:pushing_)?h|(?:raised_back_of|palm_(?:down|up)|call_me)_h|(?:(?:(?:clippert|ascensi)on|norfolk)_is|christmas_is|desert_is|bouvet_is|new_zea|thai|eng|fin|ire)l|rightwards_h|pinching_h|writing_h|s(?:w(?:itzer|azi)|cot)l|magic_w|ok_h|icel)an|s(?:un_behind_(?:large|small|rain)_clou|hallow_pan_of_foo|tar_of_davi|leeping_be|kateboar|a(?:tisfie|uropo)|hiel|oun|qui)|(?:ear_with_hearing_a|pouring_liqu)i|(?:identification_c|(?:arrow_(?:back|for)|fast_for)w|credit_c|woman_be|biohaz|man_be|l(?:eop|iz))ar|m(?:usical_key|ortar_)boar|(?:drop_of_bl|canned_f)oo|c(?:apital_abc|upi)|person_bal|(?:black_bi|(?:cust|plac)a)r|(?:clip|key)boar|mermai|pea_po|worrie|po(?:la|u)n|threa|dv)d|(?:(?:(?:face_with_open_eyes_and_hand_over|face_with_diagonal|open|no)_mou|h(?:and_over_mou|yacin)|mammo)t|running_shirt_with_sas|(?:(?:fishing_pole_and_|blow)fi|(?:tropical_f|petri_d)i|(?:paint|tooth)bru|banglade|jellyfi)s|(?:camera_fl|wavy_d)as|triump|menora|pouc|blus|watc|das|has)h|(?:s(?:o(?:(?:uth_georgia_south_sandwich|lomon)_island|ck)|miling_face_with_three_heart|t_kitts_nevi|weat_drop|agittariu|c(?:orpiu|issor)|ymbol|hort)|twisted_rightwards_arrow|(?:northern_mariana|heard_mcdonald|(?:british_virgi|us_virgi|pitcair|cayma)n|turks_caicos|us_outlying|(?:falk|a)land|marshall|c(?:anary|ocos)|faroe)_island|(?:face_holding_back_tea|(?:c(?:ard_index_divid|rossed_fing)|pinched_fing)e|night_with_sta)r|(?:two_(?:wo)?men_holding|people_holding|heart|open)_hand|(?:sunrise_over_mountai|(?:congratul|united_n)atio|jea)n|(?:caribbean_)?netherland|(?:f(?:lower_playing_car|ace_in_clou)|crossed_swor|prayer_bea)d|(?:money_with_win|nest_with_eg|crossed_fla|hotsprin)g|revolving_heart|(?:high_brightne|(?:expression|wire)le|(?:tumbler|wine)_gla|milk_gla|compa|dre)s|performing_art|earth_america|orthodox_cros|l(?:ow_brightnes|a(?:tin_cros|o)|ung)|no_pedestrian|c(?:ontrol_kno|lu)b|b(?:ookmark_tab|rick|ean)|nesting_doll|cook_island|(?:fleur_de_l|tenn)i|(?:o(?:ncoming_b|phiuch|ctop)|hi(?:ppopotam|bisc)|trolleyb|m(?:(?:rs|x)_cla|auriti|inib)|belar|cact|abac|(?:cyp|tau)r)u|medal_sport|(?:chopstic|firewor)k|rhinocero|(?:p(?:aw_prin|eanu)|footprin)t|two_heart|princes|(?:hondur|baham)a|barbado|aquariu|c(?:ustom|hain)|maraca|comoro|flag|wale|hug|vh)s|(?:(?:diamond_shape_with_a_dot_ins|playground_sl)id|(?:(?:first_quarter|last_quarter|full|new)_moon_with|(?:zipper|money)_mouth|dotted_line|upside_down|c(?:rying_c|owboy_h)at|(?:disguis|nauseat)ed|neutral|monocle|panda|tired|woozy|clown|nerd|zany|fox)_fac|s(?:t(?:uck_out_tongue_winking_ey|eam_locomotiv)|(?:lightly_(?:frown|smil)|neez|h(?:ush|ak))ing_fac|(?:tudio_micropho|(?:hinto_shr|lot_mach)i|ierra_leo|axopho)n|mall_airplan|un_with_fac|a(?:luting_fac|tellit|k)|haved_ic|y(?:nagogu|ring)|n(?:owfl)?ak|urinam|pong)|(?:black_(?:medium_)?small|white_(?:(?:medium_)?small|large)|(?:black|white)_medium|black_large|orange|purple|yellow|b(?:rown|lue)|red)_squar|(?:(?:perso|woma)n_with_|man_with_)?probing_can|(?:p(?:ut_litter_in_its_pl|outing_f)|frowning_f|cold_f|wind_f|hot_f)ac|(?:arrows_c(?:ounterc)?lockwi|computer_mou|derelict_hou|carousel_hor|c(?:ity_sunri|hee)|heartpul|briefca|racehor|pig_no|lacros)s|(?:(?:face_with_head_band|ideograph_advant|adhesive_band|under|pack)a|currency_exchan|l(?:eft_l)?ugga|woman_jud|name_bad|man_jud|jud)g|face_with_peeking_ey|(?:(?:e(?:uropean_post_off|ar_of_r)|post_off)i|information_sour|ambulan)c|artificial_satellit|(?:busts?_in_silhouet|(?:vulcan_sal|parach)u|m(?:usical_no|ayot)|ro(?:ller_ska|set)|timor_les|ice_ska)t|(?:(?:incoming|red)_envelo|s(?:ao_tome_princi|tethosco)|(?:micro|tele)sco|citysca)p|(?:(?:(?:convenience|department)_st|musical_sc)o|f(?:light_depar|ramed_pic)tu|love_you_gestu|heart_on_fi|japanese_og|cote_divoi|perseve|singapo)r|b(?:ullettrain_sid|eliz|on)|(?:(?:female_|male_)?dete|radioa)ctiv|(?:christmas|deciduous|evergreen|tanabata|palm)_tre|(?:vibration_mo|cape_ver)d|(?:fortune_cook|neckt|self)i|(?:fork_and_)?knif|athletic_sho|(?:p(?:lead|arty)|drool|curs|melt|yawn|ly)ing_fac|vomiting_fac|(?:(?:c(?:urling_st|ycl)|meat_on_b|repeat_|headst)o|(?:fire_eng|tanger|ukra)i|rice_sce|(?:micro|i)pho|champag|pho)n|(?:cricket|video)_gam|(?:boxing_glo|oli)v|(?:d(?:ragon|izzy)|monkey)_fac|(?:m(?:artin|ozamb)iq|fond)u|wind_chim|test_tub|flat_sho|m(?:a(?:ns_sho|t)|icrob|oos|ut)|(?:handsh|fish_c|moon_c|cupc)ak|nail_car|zimbabw|ho(?:neybe|l)|ice_cub|airplan|pensiv|c(?:a(?:n(?:dl|o)|k)|o(?:ffe|oki))|tongu|purs|f(?:lut|iv)|d(?:at|ov)|n(?:iu|os)|kit|rag|ax)e|(?:(?:british_indian_ocean_territo|(?:plate_with_cutl|batt)e|medal_milita|low_batte|hunga|wea)r|family_(?:woman_(?:woman_(?:girl|boy)|girl|boy)|man_(?:woman_(?:girl|boy)|man_(?:girl|boy)|girl|boy))_bo|person_feeding_bab|woman_feeding_bab|s(?:u(?:spension_railwa|nn)|t(?:atue_of_libert|_barthelem|rawberr))|(?:m(?:ountain_cable|ilky_)|aerial_tram)wa|articulated_lorr|man_feeding_bab|mountain_railwa|partly_sunn|(?:vatican_c|infin)it|(?:outbox_tr|inbox_tr|birthd|motorw|paragu|urugu|norw|x_r)a|butterfl|ring_buo|t(?:urke|roph)|angr|fogg)y|(?:(?:perso|woma)n_in_motorized_wheelchai|(?:(?:notebook_with_decorative_c|four_leaf_cl)ov|(?:index_pointing_at_the_vie|white_flo)w|(?:face_with_thermome|non\\\\\\\\-potable_wa|woman_firefigh|desktop_compu|m(?:an_firefigh|otor_scoo)|(?:ro(?:ller_coa|o)|oy)s|potable_wa|kick_scoo|thermome|firefigh|helicop|ot)t|(?:woman_factory_wor|(?:woman_office|woman_health|health)_wor|man_(?:factory|office|health)_wor|(?:factory|office)_wor|rice_crac|black_jo|firecrac)k|telephone_receiv|(?:palms_up_toget|f(?:ire_extinguis|eat)|teac)h|(?:(?:open_)?file_fol|level_sli)d|police_offic|f(?:lying_sauc|arm)|woman_teach|roll_of_pap|(?:m(?:iddle_f|an_s)in|woman_sin|hambur|plun|dag)g|do_not_litt|wilted_flow|woman_farm|man_(?:teach|farm)|(?:bell_pe|hot_pe|fli)pp|l(?:o(?:udspeak|ve_lett|bst)|edg|add)|tokyo_tow|c(?:ucumb|lapp|anc)|b(?:e(?:ginn|av)|adg)|print|hamst)e|(?:perso|woma)n_in_manual_wheelchai|m(?:an(?:_in_motorized|(?:_in_man)?ual)|otorized)_wheelchai|(?:person_(?:white|curly|red)_|wheelc)hai|triangular_rule|(?:film_project|e(?:l_salv|cu)ad|elevat|tract|anch)o|s(?:traight_rul|pace_invad|crewdriv|nowboard|unflow|peak|wimm|ing|occ|how|urf|ki)e|r(?:ed_ca|unne|azo)|d(?:o(?:lla|o)|ee)|barbe)r|(?:(?:cloud_with_(?:lightning_and_)?ra|japanese_gobl|round_pushp|liechtenste|mandar|pengu|dolph|bahra|pushp|viol)i|(?:couple(?:_with_heart_wo|kiss_)man|construction_worker|(?:mountain_bik|bow|row)ing|lotus_position|(?:w(?:eight_lift|alk)|climb)ing|white_haired|curly_haired|raising_hand|super(?:villain|hero)|red_haired|basketball|s(?:(?:wimm|urf)ing|assy)|haircut|no_good|(?:vampir|massag)e|b(?:iking|ald)|zombie|fairy|mage|elf|ng)_(?:wo)?ma|(?:(?:couple_with_heart_man|isle_of)_m|(?:couplekiss_woman_|(?:b(?:ouncing_ball|lond_haired)|tipping_hand|pregnant|kneeling|deaf)_|frowning_|s(?:tanding|auna)_|po(?:uting_|lice)|running_|blonde_|o(?:lder|k)_)wom|(?:perso|woma)n_with_turb|(?:b(?:ouncing_ball|lond_haired)|tipping_hand|pregnant|kneeling|deaf)_m|f(?:olding_hand_f|rowning_m)|man_with_turb|(?:turkmen|afghan|pak)ist|s(?:tanding_m|(?:outh_s)?ud|auna_m)|po(?:uting_|lice)m|running_m|azerbaij|k(?:yrgyz|azakh)st|tajikist|uzbekist|o(?:lder_m|k_m|ce)|(?:orang|bh)ut|taiw|jord)a|s(?:mall_red_triangle_dow|(?:valbard_jan_may|int_maart|ev)e|afety_pi|top_sig|t_marti|(?:corpi|po|o)o|wede)|(?:heavy_(?:d(?:ivision|ollar)|equals|minus|plus)|no_entry|female|male)_sig|(?:arrow_(?:heading|double)_d|p(?:erson_with_cr|oint_d)|arrow_up_d|thumbsd)ow|(?:house_with_gard|l(?:ock_with_ink_p|eafy_gre)|dancing_(?:wo)?m|fountain_p|keycap_t|chick|ali|yem|od)e|(?:izakaya|jack_o)_lanter|(?:funeral_u|(?:po(?:stal_h|pc)|capric)o|unico)r|chess_paw|b(?:a(?:llo|c)o|eni|rai)|l(?:anter|io)|c(?:o(?:ff)?i|row)|melo|rame|oma|yar)n|(?:s(?:t(?:uck_out_tongue_closed_ey|_vincent_grenadin)|kull_and_crossbon|unglass|pad)|(?:french_souther|palestinia)n_territori|(?:face_with_spiral|kissing_smiling)_ey|united_arab_emirat|kissing_closed_ey|(?:clinking_|dark_sun|eye)glass|(?:no_mobile_|head)phon|womans_cloth|b(?:allet_sho|lueberri)|philippin|(?:no_bicyc|seychel)l|roll_ey|(?:cher|a)ri|p(?:ancak|isc)|maldiv|leav)es|(?:f(?:amily_(?:woman_(?:woman_)?|man_(?:woman_|man_)?)girl_gir|earfu)|(?:woman_playing_hand|m(?:an_playing_hand|irror_)|c(?:onfetti|rystal)_|volley|track|base|8)bal|(?:(?:m(?:ailbox_with_(?:no_)?m|onor)|cockt|e\\\\\\\\-m)a|(?:person|bride|woman)_with_ve|man_with_ve|light_ra|braz|ema)i|(?:transgender|baby)_symbo|passport_contro|(?:arrow_(?:down|up)_sm|rice_b|footb)al|(?:dromedary_cam|ferris_whe|love_hot|high_he|pretz|falaf|isra)e|page_with_cur|me(?:dical_symbo|ta)|(?:n(?:ewspaper_ro|o_be)|bellhop_be)l|rugby_footbal|s(?:chool_satche|(?:peak|ee)_no_evi|oftbal|crol|anda|nai|hel)|(?:peace|atom)_symbo|hear_no_evi|cora|hote|bage|labe|rof|ow)l|(?:(?:negative_squared_cross|heavy_exclamation|part_alternation)_mar|(?:eight_spoked_)?asteris|(?:ballot_box_with_che|(?:(?:mantelpiece|alarm|timer)_c|un)lo|(?:ha(?:(?:mmer_and|ir)_p|tch(?:ing|ed)_ch)|baby_ch|joyst)i|railway_tra|lipsti|peaco)c|heavy_check_mar|white_check_mar|tr(?:opical_drin|uc)|national_par|pickup_truc|diving_mas|floppy_dis|s(?:tar_struc|hamroc|kun|har)|chipmun|denmar|duc|hoo|lin)k|(?:leftwards_arrow_with_h|arrow_right_h|(?:o(?:range|pen)|closed|blue)_b)ook|(?:woman_playing_water_pol|m(?:an(?:_(?:playing_water_pol|with_gua_pi_ma|in_tuxed)|g)|ontenegr|o(?:roc|na)c|e(?:xic|tr|m))|(?:perso|woma)n_in_tuxed|(?:trinidad_toba|vir)g|water_buffal|b(?:urkina_fas|a(?:mbo|nj)|ent)|puerto_ric|water_pol|flaming|kangaro|(?:mosqu|burr)it|(?:avoc|torn)ad|curaca|lesoth|potat|ko(?:sov|k)|tomat|d(?:ang|od)|yo_y|hoch|t(?:ac|og)|zer)o|(?:c(?:entral_african|zech)|dominican)_republic|(?:eight_pointed_black_s|six_pointed_s|qa)tar|(?:business_suit_levitat|(?:classical_buil|breast_fee)d|(?:woman_cartwhee|m(?:an_(?:cartwhee|jugg)|en_wrest)|women_wrest|woman_jugg|face_exha|cartwhee|wrest|dump)l|c(?:hildren_cross|amp)|woman_facepalm|woman_shrugg|man_(?:facepalm|shrugg)|people_hugg|(?:person_fe|woman_da|man_da)nc|fist_oncom|horse_rac|(?:no_smo|thin)k|laugh|s(?:eedl|mok)|park|w(?:arn|edd))ing|f(?:a(?:mily(?:_(?:woman_(?:woman_(?:girl|boy)|girl|boy)|man_(?:woman_(?:girl|boy)|man_(?:girl|boy)|girl|boy)))?|ctory)|o(?:u(?:ntain|r)|ot|g)|r(?:owning)?|i(?:re|s[ht])|ly|u)|(?:(?:(?:information_desk|handball|bearded)_|(?:frowning|ok)_|juggling_|mer)pers|(?:previous_track|p(?:lay_or_p)?ause|black_square|white_square|next_track|r(?:ecord|adio)|eject)_butt|(?:wa[nx]ing_(?:crescent|gibbous)_m|bowl_with_sp|crescent_m|racc)o|(?:b(?:ouncing_ball|lond_haired)|tipping_hand|pregnant|kneeling|deaf)_pers|s(?:t(?:_pierre_miquel|op_butt|ati)|tanding_pers|peech_ballo|auna_pers)|r(?:eminder_r)?ibb|thought_ballo|watermel|badmint|c(?:amero|ray)|le(?:ban|m)|oni|bis)on|(?:heavy_heart_exclama|building_construc|heart_decora|exclama)tion|(?:(?:triangular_flag_on_po|(?:(?:woman_)?technolog|m(?:ountain_bicycl|an_technolog)|bicycl)i|(?:wo)?man_scienti|(?:wo)?man_arti|s(?:afety_ve|cienti)|empty_ne)s|(?:vertical_)?traffic_ligh|(?:rescue_worker_helm|military_helm|nazar_amul|city_suns|wastebask|dropl|t(?:rump|oil)|bouqu|buck|magn|secr)e|one_piece_swimsui|(?:(?:arrow_(?:low|upp)er|point)_r|bridge_at_n|copyr|mag_r)igh|(?:bullettrain_fro|(?:potted_pl|croiss|e(?:ggpl|leph))a)n|s(?:t(?:ar_and_cresc|ud)en|cream_ca|mi(?:ley?|rk)_ca|(?:peed|ail)boa|hir)|(?:arrow_(?:low|upp)er|point)_lef|woman_astronau|r(?:o(?:tating_ligh|cke)|eceip)|heart_eyes_ca|man_astronau|(?:woman_stud|circus_t|man_stud|trid)en|(?:ringed_pla|file_cabi)ne|nut_and_bol|(?:older_)?adul|k(?:i(?:ssing_ca|wi_frui)|uwai|no)|(?:pouting_c|c(?:ut_of_m|old_sw)e|womans_h|montserr|(?:(?:motor_|row)b|lab_c)o|heartbe|toph)a|(?:woman_pil|honey_p|man_pil|[cp]arr|teap|rob)o|hiking_boo|arrow_lef|fist_righ|flashligh|f(?:ist_lef|ee)|black_ca|astronau|(?:c(?:hest|oco)|dough)nu|innocen|joy_ca|artis|(?:acce|egy)p|co(?:me|a)|pilo)t|(?:heavy_multiplication_|t\\\\\\\\-re)x|(?:s(?:miling_face_with_te|piral_calend)|oncoming_police_c|chocolate_b|ra(?:ilway|cing)_c|police_c|polar_be|teddy_be|madagasc|blue_c|calend|myanm)ar|c(?:l(?:o(?:ud(?:_with_lightning)?|ck(?:1[0-2]?|[2-9]))|ap)?|o(?:uple(?:_with_heart|kiss)?|nstruction|mputer|ok|p|w)|a(?:r(?:d_index)?|mera)|r(?:icket|y)|h(?:art|ild))|(?:m(?:artial_arts_unifo|echanical_a)r|(?:cherry_)?blosso|b(?:aggage_clai|roo)|ice_?crea|facepal|mushroo|restroo|vietna|dru|yu)m|(?:woman_with_headscar|m(?:obile_phone_of|aple_lea)|fallen_lea|wol)f|(?:(?:closed_lock_with|old)_|field_hoc|ice_hoc|han|don)key|g(?:lobe_with_meridians|r(?:e(?:y_(?:exclama|ques)tion|e(?:n(?:_(?:square|circle|salad|apple|heart|book)|land)|ce)|y_heart|nada)|i(?:mac|nn)ing|apes)|u(?:inea_bissau|ernsey|am|n)|(?:(?:olfing|enie)_(?:wo)?|uards(?:wo)?)man|(?:inger_roo|oal_ne|hos)t|(?:uadeloup|ame_di|iraff|oos)e|ift_heart|i(?:braltar|rl)|(?:uatemal|(?:eorg|amb)i|orill|uyan|han)a|uide_dog|(?:oggl|lov)es|arlic|emini|uitar|abon|oat|ear|b)|construction_worker|(?:(?:envelope_with|bow_and)_ar|left_right_ar|raised_eyeb)row|(?:(?:oncoming_automob|crocod)i|right_anger_bubb|l(?:eft_speech_bubb|otion_bott|ady_beet)|congo_brazzavil|eye_speech_bubb|(?:large_blue|orange|purple|yellow|brown)_circ|(?:(?:european|japanese)_cas|baby_bot)t|b(?:alance_sca|eet)|s(?:ewing_need|weat_smi)|(?:black|white|red)_circ|(?:motor|re)cyc|pood|turt|tama|waff|musc|eag)le|first_quarter_moon|s(?:m(?:all_red_triangle|i(?:ley?|rk))|t(?:uck_out_tongue|ar)|hopping|leeping|p(?:arkle|ider)|unrise|nowman|chool|cream|k(?:ull|i)|weat|ix|a)|(?:(?:b(?:osnia_herzegovi|ana)|wallis_futu|(?:french_gui|botsw)a|argenti|st_hele)n|(?:(?:equatorial|papua_new)_guin|north_kor|eritr)e|t(?:ristan_da_cunh|ad)|(?:(?:(?:french_poly|indo)ne|tuni)s|(?:new_caledo|ma(?:urita|cedo)|lithua|(?:tanz|alb|rom)a|arme|esto)n|diego_garc|s(?:audi_arab|t_luc|lov(?:ak|en)|omal|erb)|e(?:arth_as|thiop)|m(?:icrone|alay)s|(?:austra|mongo)l|c(?:ambod|roat)|(?:bulga|alge)r|(?:colom|nami|zam)b|boliv|l(?:iber|atv))i|(?:wheel_of_dhar|cine|pana)m|(?:(?:(?:closed|beach|open)_)?umbrel|ceuta_melil|venezue|ang(?:uil|o)|koa)l|c(?:ongo_kinshas|anad|ub)|(?:western_saha|a(?:mpho|ndor)|zeb)r|american_samo|video_camer|m(?:o(?:vie_camer|ldov)|alt|eg)|(?:earth_af|costa_)ric|s(?:outh_afric|ri_lank|a(?:mo|nt))|bubble_te|(?:antarct|jama)ic|ni(?:caragu|geri|nj)|austri|pi(?:nat|zz)|arub|k(?:eny|aab)|indi|u7a7|l(?:lam|ib[ry])|dn)a|l(?:ast_quarter_moon|o(?:tus|ck)|ips|eo)|(?:hammer_and_wren|c(?:ockroa|hur)|facepun|wren|crut|pun)ch|s(?:nowman_with_snow|ignal_strength|weet_potato|miling_imp|p(?:ider_web|arkle[rs])|w(?:im_brief|an)|a(?:n(?:_marino|dwich)|lt)|topwatch|t(?:a(?:dium|r[2s])|ew)|l(?:e(?:epy|d)|oth)|hrimp|yria|carf|(?:hee|oa)p|ea[lt]|h(?:oe|i[pt])|o[bs])|(?:s(?:tuffed_flatbre|p(?:iral_notep|eaking_he))|(?:exploding_h|baguette_br|flatbr)e)ad|(?:arrow_(?:heading|double)_u|(?:p(?:lace_of_wor|assenger_)sh|film_str|tul)i|page_facing_u|biting_li|(?:billed_c|world_m)a|mouse_tra|(?:curly_lo|busst)o|thumbsu|lo(?:llip)?o|clam|im)p|(?:anatomical|light_blue|sparkling|kissing|mending|orange|purple|yellow|broken|b(?:rown|l(?:ack|ue))|pink)_heart|(?:(?:transgender|black)_fla|mechanical_le|(?:checkered|pirate)_fla|electric_plu|rainbow_fla|poultry_le|service_do|white_fla|luxembour|fried_eg|moneyba|h(?:edgeh|otd)o|shru)g|(?:cloud_with|mountain)_snow|(?:(?:antigua_barb|berm)u|(?:kh|ug)an|rwan)da|(?:3r|2n)d_place_medal|1(?:st_place_medal|234|00)|lotus_position|(?:w(?:eight_lift|alk)|climb)ing|(?:(?:cup_with_str|auto_ricksh)a|carpentry_sa|windo|jigsa)w|(?:(?:couch_and|diya)_la|f(?:ried_shri|uelpu))mp|(?:woman_mechan|man_mechan|alemb)ic|(?:european_un|accord|collis|reun)ion|(?:flight_arriv|hospit|portug|seneg|nep)al|card_file_box|(?:(?:oncoming_)?tax|m(?:o(?:unt_fuj|ya)|alaw)|s(?:paghett|ush|ar)|b(?:r(?:occol|une)|urund)|(?:djibou|kiriba)t|hait|fij)i|(?:shopping_c|white_he|bar_ch)art|d(?:isappointed|ominica|e(?:sert)?)|raising_hand|super(?:villain|hero)|b(?:e(?:verage_box|ers|d)|u(?:bbles|lb|g)|i(?:k(?:ini|e)|rd)|o(?:o(?:ks|t)|a[rt]|y)|read|a[cn]k)|ra(?:ised_hands|bbit2|t)|(?:hindu_tem|ap)ple|thong_sandal|a(?:r(?:row_(?:right|down|up)|t)|bc?|nt)?|r(?:a(?:i(?:sed_hand|nbow)|bbit|dio|m)|u(?:nning)?|epeat|i(?:ng|ce)|o(?:ck|se))|takeout_box|(?:flying_|mini)disc|(?:(?:interrob|yin_y)a|b(?:o(?:omera|wli)|angba)|(?:ping_p|hong_k)o|calli|mahjo)ng|b(?:a(?:llot_box|sket|th?|by)|o(?:o(?:k(?:mark)?|m)|w)|u(?:tter|s)|e(?:ll|er?|ar))?|heart_eyes|basketball|(?:paperclip|dancer|ticket)s|point_up_2|(?:wo)?man_cook|n(?:ew(?:spaper)?|o(?:tebook|_entry)|iger)|t(?:e(?:lephone|a)|o(?:oth|p)|r(?:oll)?|wo)|h(?:o(?:u(?:rglass|se)|rse)|a(?:mmer|nd)|eart)|paperclip|full_moon|(?:b(?:lack_ni|athtu|om)|her)b|(?:long|oil)_drum|pineapple|(?:clock(?:1[0-2]?|[2-9])3|u6e8)0|p(?:o(?:int_up|ut)|r(?:ince|ay)|i(?:ck|g)|en)|e(?:nvelope|ight|u(?:ro)?|gg|ar|ye|s)|m(?:o(?:u(?:ntain|se)|nkey|on)|echanic|a(?:ilbox|g|n)|irror)?|new_moon|d(?:iamonds|olls|art)|question|k(?:iss(?:ing)?|ey)|haircut|no_good|(?:vampir|massag)e|g(?:olf(?:ing)?|u(?:inea|ard)|e(?:nie|m)|ift|rin)|h(?:a(?:ndbag|msa)|ouses|earts|ut)|postbox|toolbox|(?:pencil|t(?:rain|iger)|whale|cat|dog)2|belgium|(?:volca|kimo)no|(?:vanuat|tuval|pala|naur|maca)u|tokelau|o(?:range|ne?|m|k)?|office|dancer|ticket|dragon|pencil|zombie|w(?:o(?:mens|rm|od)|ave|in[gk]|c)|m(?:o(?:sque|use2)|e(?:rman|ns)|a(?:li|sk))|jersey|tshirt|w(?:heel|oman)|dizzy|j(?:apan|oy)|t(?:rain|iger)|whale|fairy|a(?:nge[lr]|bcd|tm)|c(?:h(?:a(?:ir|d)|ile)|a(?:ndy|mel)|urry|rab|o(?:rn|ol|w2)|[dn])|p(?:ager|e(?:a(?:ch|r)|ru)|i(?:g2|ll|e)|oop)|n(?:otes|ine)|t(?:onga|hree|ent|ram|[mv])|f(?:erry|r(?:ies|ee|og)|ax)|u(?:7(?:533|981|121)|5(?:5b6|408|272)|6(?:307|70[89]))|mage|e(?:yes|nd)|i(?:ra[nq]|t)|cat|dog|elf|z(?:zz|ap)|yen|j(?:ar|p)|leg|id|u[kps]|ng|o[2x]|vs|kr|[\\\\\\\\+\\\\\\\\x2D]1|x|v)(:)\\\",\\\"name\\\":\\\"string.emoji.mdx\\\"},\\\"extension-github-mention\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.mention.begin.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.link.mention.mdx\\\"}},\\\"match\\\":\\\"(?<![0-9A-Za-z_`])(@)((?:[0-9A-Za-z][0-9A-Za-z-]{0,38})(?:\\\\\\\\/(?:[0-9A-Za-z][0-9A-Za-z-]{0,38}))?)(?![0-9A-Za-z_`])\\\",\\\"name\\\":\\\"string.mention.mdx\\\"},\\\"extension-github-reference\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.reference.begin.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.link.reference.security-advisory.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.reference.begin.mdx\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.other.link.reference.issue-or-pr.mdx\\\"}},\\\"match\\\":\\\"(?<![0-9A-Za-z_])(?:((?i:ghsa-|cve-))([A-Za-z0-9]+)|((?i:gh-|#))([0-9]+))(?![0-9A-Za-z_])\\\",\\\"name\\\":\\\"string.reference.mdx\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.link.reference.user.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.reference.begin.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.link.reference.issue-or-pr.mdx\\\"}},\\\"match\\\":\\\"(?<![^\\\\\\\\t\\\\\\\\n\\\\\\\\r \\\\\\\\(@\\\\\\\\[\\\\\\\\{])((?:[0-9A-Za-z][0-9A-Za-z-]{0,38})(?:\\\\\\\\/(?:(?:\\\\\\\\.git[0-9A-Za-z_-]|\\\\\\\\.(?!git)|[0-9A-Za-z_-])+))?)(#)([0-9]+)(?![0-9A-Za-z_])\\\",\\\"name\\\":\\\"string.reference.mdx\\\"}]},\\\"extension-math-flow\\\":{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\${2,})([^\\\\\\\\n\\\\\\\\r\\\\\\\\$]*)$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.math.flow.mdx\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#markdown-string\\\"}]}},\\\"contentName\\\":\\\"markup.raw.math.flow.mdx\\\",\\\"end\\\":\\\"(\\\\\\\\1)(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.end.math.flow.mdx\\\"}},\\\"name\\\":\\\"markup.code.other.mdx\\\"},\\\"extension-math-text\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.math.mdx\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.raw.math.mdx markup.inline.raw.math.mdx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.end.math.mdx\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\${2,})(?!\\\\\\\\$)(.+?)(?<!\\\\\\\\$)(\\\\\\\\1)(?!\\\\\\\\$)\\\"},\\\"extension-mdx-esm\\\":{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)(?=(?i:export|import)[ ])\\\",\\\"end\\\":\\\"^(?=[\\\\\\\\t ]*$)|$\\\",\\\"name\\\":\\\"meta.embedded.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx#statements\\\"}]},\\\"extension-mdx-expression-flow\\\":{\\\"begin\\\":\\\"(?:^|\\\\\\\\G)[\\\\\\\\t ]*(\\\\\\\\{)(?!.*\\\\\\\\}[\\\\\\\\t ]*.)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.expression.mdx.js\\\"}},\\\"contentName\\\":\\\"meta.embedded.tsx\\\",\\\"end\\\":\\\"(\\\\\\\\})(?:[\\\\\\\\t ]*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.other.begin.expression.mdx.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx#expression\\\"}]},\\\"extension-mdx-expression-text\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.other.begin.expression.mdx.js\\\"}},\\\"contentName\\\":\\\"meta.embedded.tsx\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.other.begin.expression.mdx.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx#expression\\\"}]},\\\"extension-mdx-jsx-flow\\\":{\\\"begin\\\":\\\"(?<=^|\\\\\\\\G|\\\\\\\\>)[\\\\\\\\t ]*(<)(?=(?![\\\\\\\\t\\\\\\\\n\\\\\\\\r ]))(?:\\\\\\\\s*(/))?(?:\\\\\\\\s*(?:(?:((?:[_$[:alpha:]][-_$[:alnum:]]*))\\\\\\\\s*(:)\\\\\\\\s*((?:[_$[:alpha:]][-_$[:alnum:]]*)))|((?:(?:[_$[:alpha:]][_$[:alnum:]]*)(?:\\\\\\\\s*\\\\\\\\.\\\\\\\\s*(?:[_$[:alpha:]][-_$[:alnum:]]*))+))|((?:[_$[:upper:]][_$[:alnum:]]*))|((?:[_$[:alpha:]][-_$[:alnum:]]*)))(?=[\\\\\\\\s\\\\\\\\/\\\\\\\\>\\\\\\\\{]))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.closing.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.tag.local.jsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.class.component.jsx\\\"},\\\"7\\\":{\\\"name\\\":\\\"support.class.component.jsx\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.tag.jsx\\\"}},\\\"end\\\":\\\"(?:(\\\\\\\\/)\\\\\\\\s*)?(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.self-closing.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx#jsx-tag-attribute-name\\\"},{\\\"include\\\":\\\"source.tsx#jsx-tag-attribute-assignment\\\"},{\\\"include\\\":\\\"source.tsx#jsx-string-double-quoted\\\"},{\\\"include\\\":\\\"source.tsx#jsx-string-single-quoted\\\"},{\\\"include\\\":\\\"source.tsx#jsx-evaluated-code\\\"},{\\\"include\\\":\\\"source.tsx#jsx-tag-attributes-illegal\\\"}]},\\\"extension-mdx-jsx-text\\\":{\\\"begin\\\":\\\"(<)(?=(?![\\\\\\\\t\\\\\\\\n\\\\\\\\r ]))(?:\\\\\\\\s*(/))?(?:\\\\\\\\s*(?:(?:((?:[_$[:alpha:]][-_$[:alnum:]]*))\\\\\\\\s*(:)\\\\\\\\s*((?:[_$[:alpha:]][-_$[:alnum:]]*)))|((?:(?:[_$[:alpha:]][_$[:alnum:]]*)(?:\\\\\\\\s*\\\\\\\\.\\\\\\\\s*(?:[_$[:alpha:]][-_$[:alnum:]]*))+))|((?:[_$[:upper:]][_$[:alnum:]]*))|((?:[_$[:alpha:]][-_$[:alnum:]]*)))(?=[\\\\\\\\s\\\\\\\\/\\\\\\\\>\\\\\\\\{]))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.closing.jsx\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.jsx\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.jsx\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.tag.local.jsx\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.class.component.jsx\\\"},\\\"7\\\":{\\\"name\\\":\\\"support.class.component.jsx\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.tag.jsx\\\"}},\\\"end\\\":\\\"(?:(\\\\\\\\/)\\\\\\\\s*)?(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.self-closing.jsx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.jsx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx#jsx-tag-attribute-name\\\"},{\\\"include\\\":\\\"source.tsx#jsx-tag-attribute-assignment\\\"},{\\\"include\\\":\\\"source.tsx#jsx-string-double-quoted\\\"},{\\\"include\\\":\\\"source.tsx#jsx-string-single-quoted\\\"},{\\\"include\\\":\\\"source.tsx#jsx-evaluated-code\\\"},{\\\"include\\\":\\\"source.tsx#jsx-tag-attributes-illegal\\\"}]},\\\"extension-toml\\\":{\\\"begin\\\":\\\"\\\\\\\\A\\\\\\\\+{3}$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.other.begin.toml\\\"}},\\\"contentName\\\":\\\"meta.embedded.toml\\\",\\\"end\\\":\\\"^\\\\\\\\+{3}$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.other.end.toml\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.toml\\\"}]},\\\"extension-yaml\\\":{\\\"begin\\\":\\\"\\\\\\\\A-{3}$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.other.begin.yaml\\\"}},\\\"contentName\\\":\\\"meta.embedded.yaml\\\",\\\"end\\\":\\\"^-{3}$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.other.end.yaml\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}]},\\\"markdown-frontmatter\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#extension-toml\\\"},{\\\"include\\\":\\\"#extension-yaml\\\"}]},\\\"markdown-sections\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#commonmark-block-quote\\\"},{\\\"include\\\":\\\"#commonmark-code-fenced\\\"},{\\\"include\\\":\\\"#extension-gfm-footnote-definition\\\"},{\\\"include\\\":\\\"#commonmark-definition\\\"},{\\\"include\\\":\\\"#commonmark-heading-atx\\\"},{\\\"include\\\":\\\"#commonmark-thematic-break\\\"},{\\\"include\\\":\\\"#commonmark-heading-setext\\\"},{\\\"include\\\":\\\"#commonmark-list-item\\\"},{\\\"include\\\":\\\"#extension-gfm-table\\\"},{\\\"include\\\":\\\"#extension-math-flow\\\"},{\\\"include\\\":\\\"#extension-mdx-esm\\\"},{\\\"include\\\":\\\"#extension-mdx-expression-flow\\\"},{\\\"include\\\":\\\"#extension-mdx-jsx-flow\\\"},{\\\"include\\\":\\\"#commonmark-paragraph\\\"}]},\\\"markdown-string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#commonmark-character-escape\\\"},{\\\"include\\\":\\\"#commonmark-character-reference\\\"}]},\\\"markdown-text\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#commonmark-attention\\\"},{\\\"include\\\":\\\"#commonmark-character-escape\\\"},{\\\"include\\\":\\\"#commonmark-character-reference\\\"},{\\\"include\\\":\\\"#commonmark-code-text\\\"},{\\\"include\\\":\\\"#commonmark-hard-break-trailing\\\"},{\\\"include\\\":\\\"#commonmark-hard-break-escape\\\"},{\\\"include\\\":\\\"#commonmark-label-end\\\"},{\\\"include\\\":\\\"#extension-gfm-footnote-call\\\"},{\\\"include\\\":\\\"#commonmark-label-start\\\"},{\\\"include\\\":\\\"#extension-gfm-autolink-literal\\\"},{\\\"include\\\":\\\"#extension-gfm-strikethrough\\\"},{\\\"include\\\":\\\"#extension-github-gemoji\\\"},{\\\"include\\\":\\\"#extension-github-mention\\\"},{\\\"include\\\":\\\"#extension-github-reference\\\"},{\\\"include\\\":\\\"#extension-math-text\\\"},{\\\"include\\\":\\\"#extension-mdx-expression-text\\\"},{\\\"include\\\":\\\"#extension-mdx-jsx-text\\\"}]},\\\"whatwg-html-data-character-reference-named-terminated\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-reference.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.character-reference.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.character-reference.end.html\\\"}},\\\"match\\\":\\\"(&)((?:C(?:(?:o(?:unterClockwiseCo)?|lockwiseCo)ntourIntegra|cedi)|(?:(?:Not(?:S(?:quareSu(?:per|b)set|u(?:cceeds|(?:per|b)set))|Precedes|Greater|Tilde|Less)|Not(?:Righ|Lef)tTriangle|(?:Not(?:(?:Succeed|Precede|Les)s|Greater)|(?:Precede|Succeed)s|Less)Slant|SquareSu(?:per|b)set|(?:Not(?:Greater|Tilde)|Tilde|Less)Full|RightTriangle|LeftTriangle|Greater(?:Slant|Full)|Precedes|Succeeds|Superset|NotHump|Subset|Tilde|Hump)Equ|int(?:er)?c|DotEqu)a|DoubleContourIntegra|(?:n(?:short)?parall|shortparall|p(?:arall|rur))e|(?:rightarrowta|l(?:eftarrowta|ced|ata|Ata)|sced|rata|perm|rced|rAta|ced)i|Proportiona|smepars|e(?:qvpars|pars|xc|um)|Integra|suphso|rarr[pt]|n(?:pars|tg)|l(?:arr[pt]|cei)|Rarrt|(?:hybu|fora)l|ForAl|[GKLNR-Tcknt]cedi|rcei|iexc|gime|fras|[uy]um|oso|dso|ium|Ium)l|D(?:o(?:uble(?:(?:L(?:ong(?:Left)?R|eftR)ight|L(?:ongL)?eft|UpDown|Right|Up)Arrow|Do(?:wnArrow|t))|wn(?:ArrowUpA|TeeA|a)rrow)|iacriticalDot|strok|ashv|cy)|(?:(?:(?:N(?:(?:otN)?estedGreater|ot(?:Greater|Less))|Less(?:Equal)?)Great|GreaterGreat|l[lr]corn|mark|east)e|Not(?:Double)?VerticalBa|(?:Not(?:Righ|Lef)tTriangleB|(?:(?:Righ|Lef)tDown|Right(?:Up)?|Left(?:Up)?)VectorB|RightTriangleB|Left(?:Triangle|Arrow)B|RightArrowB|V(?:er(?:ticalB|b)|b)|UpArrowB|l(?:ur(?:ds|u)h|dr(?:us|d)h|trP|owb|H)|profal|r(?:ulu|dld)h|b(?:igst|rvb)|(?:wed|ve[er])b|s(?:wn|es)w|n(?:wne|ese|sp|hp)|gtlP|d(?:oll|uh|H)|(?:hor|ov)b|u(?:dh|H)|r(?:lh|H)|ohb|hb|St)a|D(?:o(?:wn(?:(?:Left(?:Right|Tee)|RightTee)Vecto|(?:(?:Righ|Lef)tVector|Arrow)Ba)|ubleVerticalBa)|a(?:gge|r)|sc|f)|(?:(?:(?:Righ|Lef)tDown|(?:Righ|Lef)tUp)Tee|(?:Righ|Lef)tUpDown)Vecto|VerticalSeparato|(?:Left(?:Right|Tee)|RightTee)Vecto|less(?:eqq?)?gt|e(?:qslantgt|sc)|(?:RightF|LeftF|[lr]f)loo|u(?:[lr]corne|ar)|timesba|(?:plusa|cirs|apa)ci|U(?:arroci|f)|(?:dzigr|s(?:u(?:pl|br)|imr|[lr])|zigr|angz|nvH|l(?:tl|B)|r[Br])ar|UnderBa|(?:plus|harr|top|mid|of)ci|O(?:verBa|sc|f)|dd?agge|s(?:olba|sc)|g(?:t(?:rar|ci)|sc|f)|c(?:opys|u(?:po|ep)|sc|f)|(?:n(?:(?:v[lr]|w|r)A|l[Aa]|h[Aa]|eA)|x[hlr][Aa]|u(?:ua|da|A)|s[ew]A|rla|o[lr]a|rba|rAa|l[Ablr]a|h(?:oa|A)|era|d(?:ua|A)|cra|vA)r|o(?:lci|sc|ro|pa)|ropa|roar|l(?:o(?:pa|ar)|sc|Ar)|i(?:ma|s)c|ltci|dd?ar|a(?:ma|s)c|R(?:Bar|sc|f)|I(?:mac|f)|(?:u(?:ma|s)|oma|ema|Oma|Ema|[wyz]s|qs|ks|fs|Zs|Ys|Xs|Ws|Vs|Us|Ss|Qs|Ns|Ms|Ks|Is|Gs|Fs|Cs|Bs)c|Umac|x(?:sc|f)|v(?:sc|f)|rsc|n(?:ld|f)|m(?:sc|ld|ac|f)|rAr|h(?:sc|f)|b(?:sc|f)|psc|P(?:sc|f)|L(?:sc|ar|f)|jsc|J(?:sc|f)|E(?:sc|f)|[HT]sc|[yz]f|wf|tf|qf|pf|kf|jf|Zf|Yf|Xf|Wf|Vf|Tf|Sf|Qf|Nf|Mf|Kf|Hf|Gf|Ff|Cf|Bf)r|(?:Diacritical(?:Double)?A|[EINOSYZaisz]a)cute|(?:(?:N(?:egative(?:VeryThin|Thi(?:ck|n))|onBreaking)|NegativeMedium|ZeroWidth|VeryThin|Medium|Thi(?:ck|n))Spac|Filled(?:Very)?SmallSquar|Empty(?:Very)?SmallSquar|(?:N(?:ot(?:Succeeds|Greater|Tilde|Less)T|t)|DiacriticalT|VerticalT|PrecedesT|SucceedsT|NotEqualT|GreaterT|TildeT|EqualT|LessT|at|Ut|It)ild|(?:(?:DiacriticalG|[EIOUaiu]g)ra|(?:u|U)?bre|(?:o|e)?gra)v|(?:doublebar|curly|big|x)wedg|H(?:orizontalLin|ilbertSpac)|Double(?:Righ|Lef)tTe|(?:(?:measured|uw)ang|exponentia|dwang|ssmi|fema)l|(?:Poincarepla|reali|pho|oli)n|(?:black)?lozeng|(?:VerticalL|(?:prof|imag)l)in|SmallCircl|(?:black|dot)squar|rmoustach|l(?:moustach|angl)|(?:b(?:ack)?pr|(?:tri|xo)t|[qt]pr)im|[Tt]herefor|(?:DownB|[Gag]b)rev|(?:infint|nv[lr]tr)i|b(?:arwedg|owti)|an(?:dslop|gl)|(?:cu(?:rly)?v|rthr|lthr|b(?:ig|ar)v|xv)e|n(?:s(?:qsu[bp]|ccu)|prcu)|orslop|NewLin|maltes|Becaus|rangl|incar|(?:otil|Otil|t(?:ra|il))d|[inu]tild|s(?:mil|imn)|(?:sc|pr)cu|Wedg|Prim|Brev)e|(?:CloseCurly(?:Double)?Quo|OpenCurly(?:Double)?Quo|[ry]?acu)te|(?:Reverse(?:Up)?|Up)Equilibrium|C(?:apitalDifferentialD|(?:oproduc|(?:ircleD|enterD|d)o)t|on(?:grue|i)nt|conint|upCap|o(?:lone|pf)|OPY|hi)|(?:(?:(?:left)?rightsquig|(?:longleftr|twoheadr|nleftr|nLeftr|longr|hookr|nR|Rr)ight|(?:twohead|hook)left|longleft|updown|Updown|nright|Right|nleft|nLeft|down|up|Up)a|L(?:(?:ong(?:left)?righ|(?:ong)?lef)ta|eft(?:(?:right)?a|RightA|TeeA))|RightTeeA|LongLeftA|UpTeeA)rrow|(?:(?:RightArrow|Short|Upper|Lower)Left|(?:L(?:eftArrow|o(?:wer|ng))|LongLeft|Short|Upper)Right|ShortUp)Arrow|(?:b(?:lacktriangle(?:righ|lef)|ulle|no)|RightDoubleBracke|RightAngleBracke|Left(?:Doub|Ang)leBracke|(?:vartriangle|downharpoon|c(?:ircl|urv)earrow|upharpoon|looparrow)righ|(?:vartriangle|downharpoon|c(?:ircl|urv)earrow|upharpoon|looparrow|mapsto)lef|(?:UnderBrack|OverBrack|emptys|targ|Sups)e|diamondsui|c(?:ircledas|lubsui|are)|(?:spade|heart)sui|(?:(?:c(?:enter|t)|lmi|ino)d|(?:Triple|mD)D|n(?:otin|e)d|(?:ncong|doteq|su[bp]e|e[gl]s)d|l(?:ess|t)d|isind|c(?:ong|up|ap)?d|b(?:igod|N)|t(?:(?:ri)?d|opb)|s(?:ub|im)d|midd|g(?:tr?)?d|Lmid|DotD|(?:xo|ut|z)d|e(?:s?d|rD|fD|DD)|dtd|Zd|Id|Gd|Ed)o|realpar|i(?:magpar|iin)|S(?:uchTha|qr)|su[bp]mul|(?:(?:lt|i)que|gtque|(?:mid|low)a|e(?:que|xi))s|Produc|s(?:updo|e[cx])|r(?:parg|ec)|lparl|vangr|hamil|(?:homt|[lr]fis|ufis|dfis)h|phmma|t(?:wix|in)|quo|o(?:do|as)|fla|eDo)t|(?:(?:Square)?Intersecti|(?:straight|back|var)epsil|SquareUni|expectati|upsil|epsil|Upsil|eq?col|Epsil|(?:omic|Omic|rca|lca|eca|Sca|[NRTt]ca|Lca|Eca|[Zdz]ca|Dca)r|scar|ncar|herc|ccar|Ccar|iog|Iog)on|Not(?:S(?:quareSu(?:per|b)set|u(?:cceeds|(?:per|b)set))|Precedes|Greater|Tilde|Less)?|(?:(?:(?:Not(?:Reverse)?|Reverse)E|comp|E)leme|NotCongrue|(?:n[gl]|l)eqsla|geqsla|q(?:uat)?i|perc|iiii|coni|cwi|awi|oi)nt|(?:(?:rightleftharpo|leftrightharpo|quaterni)on|(?:(?:N(?:ot(?:NestedLess|Greater|Less)|estedLess)L|(?:eqslant|gtr(?:eqq?)?)l|LessL)e|Greater(?:Equal)?Le|cro)s|(?:rightright|leftleft|upup)arrow|rightleftarrow|(?:(?:(?:righ|lef)tthree|divideon|b(?:igo|ox)|[lr]o)t|InvisibleT)ime|downdownarrow|(?:(?:smallset|tri|dot|box)m|PlusM)inu|(?:RoundImpli|complex|Impli|Otim)e|C(?:ircle(?:Time|Minu|Plu)|ayley|ros)|(?:rationa|mode)l|NotExist|(?:(?:UnionP|MinusP|(?:b(?:ig[ou]|ox)|tri|s(?:u[bp]|im)|dot|xu|mn)p)l|(?:xo|u)pl|o(?:min|pl)|ropl|lopl|epl)u|otimesa|integer|e(?:linter|qual)|setminu|rarrbf|larrb?f|olcros|rarrf|mstpo|lesge|gesle|Exist|[lr]time|strn|napo|fltn|ccap|apo)s|(?:b(?:(?:lack|ig)triangledow|etwee)|(?:righ|lef)tharpoondow|(?:triangle|mapsto)dow|(?:nv|i)infi|ssetm|plusm|lagra|d(?:[lr]cor|isi)|c(?:ompf|aro)|s?frow|(?:hyph|curr)e|kgree|thor|ogo|ye)n|Not(?:Righ|Lef)tTriangle|(?:Up(?:Arrow)?|Short)DownArrow|(?:(?:n(?:triangle(?:righ|lef)t|succ|prec)|(?:trianglerigh|trianglelef|sqsu[bp]se|ques)t|backsim)e|lvertneq|gvertneq|(?:suc|pre)cneq|a(?:pprox|symp)e|(?:succ|prec|vee)e|circe)q|(?:UnderParenthes|OverParenthes|xn)is|(?:(?:Righ|Lef)tDown|Right(?:Up)?|Left(?:Up)?)Vector|D(?:o(?:wn(?:RightVector|LeftVector|Arrow|Tee)|t)|el|D)|l(?:eftrightarrows|br(?:k(?:sl[du]|e)|ac[ek])|tri[ef]|s(?:im[eg]|qb|h)|hard|a(?:tes|ngd|p)|o[pz]f|rm|gE|fr|eg|cy)|(?:NotHumpDownHum|(?:righ|lef)tharpoonu|big(?:(?:triangle|sqc)u|c[au])|HumpDownHum|m(?:apstou|lc)|(?:capbr|xsq)cu|smash|rarr[al]|(?:weie|sha)r|larrl|velli|(?:thin|punc)s|h(?:elli|airs)|(?:u[lr]c|vp)ro|d[lr]cro|c(?:upc[au]|apc[au])|thka|scna|prn?a|oper|n(?:ums|va|cu|bs)|ens|xc[au]|Ma)p|l(?:eftrightarrow|e(?:ftarrow|s(?:dot)?)?|moust|a(?:rrb?|te?|ng)|t(?:ri)?|sim|par|oz|l|g)|n(?:triangle(?:righ|lef)t|succ|prec)|SquareSu(?:per|b)set|(?:I(?:nvisibleComm|ot)|(?:varthe|iio)t|varkapp|(?:vars|S)igm|(?:diga|mco)mm|Cedill|lambd|Lambd|delt|Thet|omeg|Omeg|Kapp|Delt|nabl|zet|to[es]|rdc|ldc|iot|Zet|Bet|Et)a|b(?:lacktriangle|arwed|u(?:mpe?|ll)|sol|o(?:x[HVhv]|t)|brk|ne)|(?:trianglerigh|trianglelef|sqsu[bp]se|ques)t|RightT(?:riangl|e)e|(?:(?:varsu[bp]setn|su(?:psetn?|bsetn?))eq|nsu[bp]seteq|colone|(?:wedg|sim)e|nsime|lneq|gneq)q|DifferentialD|(?:(?:fall|ris)ingdots|(?:suc|pre)ccurly|ddots)eq|A(?:pplyFunction|ssign|(?:tild|grav|brev)e|acute|o(?:gon|pf)|lpha|(?:mac|sc|f)r|c(?:irc|y)|ring|Elig|uml|nd|MP)|(?:varsu[bp]setn|su(?:psetn?|bsetn?))eq|L(?:eft(?:T(?:riangl|e)e|Arrow)|l)|G(?:reaterEqual|amma)|E(?:xponentialE|quilibrium|sim|cy|TH|NG)|(?:(?:RightCeil|LeftCeil|varnoth|ar|Ur)in|(?:b(?:ack)?co|uri)n|vzigza|roan|loan|ffli|amal|sun|rin|n(?:tl|an)|Ran|Lan)g|(?:thick|succn?|precn?|less|g(?:tr|n)|ln|n)approx|(?:s(?:traightph|em)|(?:rtril|xu|u[lr]|xd|v[lr])tr|varph|l[lr]tr|b(?:sem|eps)|Ph)i|(?:circledd|osl|n(?:v[Dd]|V[Dd]|d)|hsl|V(?:vd|D)|Osl|v[Dd]|md)ash|(?:(?:RuleDelay|imp|cuw)e|(?:n(?:s(?:hort)?)?|short|rn)mi|D(?:Dotrah|iamon)|(?:i(?:nt)?pr|peri)o|odsol|llhar|c(?:opro|irmi)|(?:capa|anda|pou)n|Barwe|napi|api)d|(?:cu(?:rlyeq(?:suc|pre)|es)|telre|[ou]dbla|Udbla|Odbla|radi|lesc|gesc|dbla)c|(?:circled|big|eq|[is]|c|x|a|S|[hw]|W|H|G|E|C)circ|rightarrow|R(?:ightArrow|arr|e)|Pr(?:oportion)?|(?:longmapst|varpropt|p(?:lustw|ropt)|varrh|numer|(?:rsa|lsa|sb)qu|m(?:icr|h)|[lr]aqu|bdqu|eur)o|UnderBrace|ImaginaryI|B(?:ernoullis|a(?:ckslash|rv)|umpeq|cy)|(?:(?:Laplace|Mellin|zee)tr|Fo(?:uriertr|p)|(?:profsu|ssta)r|ordero|origo|[ps]op|nop|mop|i(?:op|mo)|h(?:op|al)|f(?:op|no)|dop|bop|Rop|Pop|Nop|Lop|Iop|Hop|Dop|[GJKMOQSTV-Zgjkoqvwyz]op|Bop)f|nsu[bp]seteq|t(?:ri(?:angleq|e)|imesd|he(?:tav|re4)|au)|O(?:verBrace|r)|(?:(?:pitchfo|checkma|t(?:opfo|b)|rob|rbb|l[bo]b)r|intlarh|b(?:brktbr|l(?:oc|an))|perten|NoBrea|rarrh|s[ew]arh|n[ew]arh|l(?:arrh|hbl)|uhbl|Hace)k|(?:NotCupC|(?:mu(?:lti)?|x)m|cupbrc)ap|t(?:riangle|imes|heta|opf?)|Precedes|Succeeds|Superset|NotEqual|(?:n(?:atural|exist|les)|s(?:qc[au]p|mte)|prime)s|c(?:ir(?:cled[RS]|[Ee])|u(?:rarrm|larrp|darr[lr]|ps)|o(?:mmat|pf)|aps|hi)|b(?:sol(?:hsu)?b|ump(?:eq|E)|ox(?:box|[Vv][HLRhlr]|[Hh][DUdu]|[DUdu][LRlr])|e(?:rnou|t[ah])|lk(?:34|1[24])|cy)|(?:l(?:esdot|squ|dqu)o|rsquo|rdquo|ngt)r|a(?:n(?:g(?:msda[a-h]|st|e)|d[dv])|st|p[Ee]|mp|fr|c[Edy])|(?:g(?:esdoto|E)|[lr]haru)l|(?:angrtvb|lrhar|nis)d|(?:(?:th(?:ic)?k|succn?|p(?:r(?:ecn?|n)?|lus)|rarr|l(?:ess|arr)|su[bp]|par|scn|g(?:tr|n)|ne|sc|n[glv]|ln|eq?)si|thetasy|ccupss|alefsy|botto)m|trpezium|(?:hks[ew]|dr?bk|bk)arow|(?:(?:[lr]a|d|c)empty|b(?:nequi|empty)|plank|nequi|odi)v|(?:(?:sc|rp|n)pol|point|fpart)int|(?:c(?:irf|wco)|awco)nint|PartialD|n(?:s(?:u[bp](?:set)?|c)|rarr|ot(?:ni|in)?|warr|e(?:arr)?|a(?:tur|p)|vlt|p(?:re?|ar)|um?|l[et]|ge|i)|n(?:atural|exist|les)|d(?:i(?:am(?:ond)?|v(?:ide)?)|tri|ash|ot|d)|backsim|l(?:esdot|squ|dqu)o|g(?:esdoto|E)|U(?:p(?:Arrow|si)|nion|arr)|angrtvb|p(?:l(?:anckh|us(?:d[ou]|[be]))|ar(?:sl|t)|r(?:od|nE|E)|erp|iv|m)|n(?:ot(?:niv[a-c]|in(?:v[a-c]|E))|rarr[cw]|s(?:u[bp][Ee]|c[er])|part|v(?:le|g[et])|g(?:es|E)|c(?:ap|y)|apE|lE|iv|Ll|Gg)|m(?:inus(?:du|b)|ale|cy|p)|rbr(?:k(?:sl[du]|e)|ac[ek])|(?:suphsu|tris|rcu|lcu)b|supdsub|(?:s[ew]a|n[ew]a)rrow|(?:b(?:ecaus|sim)|n(?:[lr]tri|bump)|csu[bp])e|equivDD|u(?:rcorn|lcorn|psi)|timesb|s(?:u(?:p(?:set)?|b(?:set)?)|q(?:su[bp]|u)|i(?:gma|m)|olb?|dot|mt|fr|ce?)|p(?:l(?:anck|us)|r(?:op|ec?)?|ara?|i)|o(?:times|r(?:d(?:er)?)?)|m(?:i(?:nusd?|d)|a(?:p(?:sto)?|lt)|u)|rmoust|g(?:e(?:s(?:dot|l)?|q)?|sim|n(?:ap|e)|t|l|g)|(?:spade|heart)s|c(?:u(?:rarr|larr|p)|o(?:m(?:ma|p)|lon|py|ng)|lubs|heck|cups|irc?|ent|ap)|colone|a(?:p(?:prox)?|n(?:g(?:msd|rt)?|d)|symp|f|c)|S(?:quare|u[bp]|c)|Subset|b(?:ecaus|sim)|vsu[bp]n[Ee]|s(?:u(?:psu[bp]|b(?:su[bp]|n[Ee]|E)|pn[Ee]|p[1-3E]|m)|q(?:u(?:ar[ef]|f)|su[bp]e)|igma[fv]|etmn|dot[be]|par|mid|hc?y|c[Ey])|f(?:rac(?:78|5[68]|45|3[458]|2[35]|1[2-68])|fr)|e(?:m(?:sp1[34]|ptyv)|psiv|c(?:irc|y)|t[ah]|ng|ll|fr|e)|(?:kappa|isins|vBar|fork|rho|phi|n[GL]t)v|divonx|V(?:dashl|ee)|gammad|G(?:ammad|cy|[Tgt])|[Ldhlt]strok|[HT]strok|(?:c(?:ylct|hc)|(?:s(?:oft|hch)|hard|S(?:OFT|HCH)|jser|J(?:ser|uk)|HARD|tsh|TSH|juk|iuk|I(?:uk|[EO])|zh|yi|nj|lj|k[hj]|gj|dj|ZH|Y[AIU]|NJ|LJ|K[HJ]|GJ|D[JSZ])c|ubrc|Ubrc|(?:yu|i[eo]|dz|v|p|f)c|TSc|SHc|CHc|Vc|Pc|Mc|Fc)y|(?:(?:wre|jm)at|dalet|a(?:ngs|le)p|imat|[lr]ds)h|[CLRUceglnou]acute|ff?llig|(?:f(?:fi|[ij])|sz|oe|ij|ae|OE|IJ)lig|r(?:a(?:tio|rr|ng)|tri|par|eal)|s[ew]arr|s(?:qc[au]p|mte)|prime|rarrb|i(?:n(?:fin|t)?|sin|t|i|c)|e(?:quiv|m(?:pty|sp)|p(?:si|ar)|cir|l|g)|kappa|isins|ncong|doteq|(?:wedg|sim)e|nsime|rsquo|rdquo|[lr]haru|V(?:dash|ert)|Tilde|lrhar|gamma|Equal|UpTee|n(?:[lr]tri|bump)|C(?:olon|up|ap)|v(?:arpi|ert)|u(?:psih|ml)|vnsu[bp]|r(?:tri[ef]|e(?:als|g)|a(?:rr[cw]|ng[de]|ce)|sh|lm|x)|rhard|sim[gl]E|i(?:sin[Ev]|mage|f[fr]|cy)|harrw|(?:n[gl]|l)eqq|g(?:sim[el]|tcc|e(?:qq|l)|nE|l[Eaj]|gg|ap)|ocirc|starf|utrif|d(?:trif|i(?:ams|e)|ashv|sc[ry]|fr|eg)|[du]har[lr]|T(?:HORN|a[bu])|(?:TRAD|[gl]vn)E|odash|[EUaeu]o(?:gon|pf)|alpha|[IJOUYgjuy]c(?:irc|y)|v(?:arr|ee)|succ|sim[gl]|harr|ln(?:ap|e)|lesg|(?:n[gl]|l)eq|ocir|star|utri|vBar|fork|su[bp]e|nsim|lneq|gneq|csu[bp]|zwn?j|yacy|x(?:opf|i)|scnE|o(?:r(?:d[fm]|v)|mid|lt|hm|gt|fr|cy|S)|scap|rsqb|ropf|ltcc|tsc[ry]|QUOT|[EOUYao]uml|rho|phi|n[GL]t|e[gl]s|ngt|I(?:nt|m)|nis|rfr|rcy|lnE|lEg|ufr|S(?:um|cy)|R(?:sh|ho)|psi|Ps?i|[NRTt]cy|L(?:sh|cy|[Tt])|kcy|Kcy|Hat|REG|[Zdz]cy|wr|lE|wp|Xi|Nu|Mu)(;)\\\",\\\"name\\\":\\\"constant.language.character-reference.named.html\\\"}},\\\"scopeName\\\":\\\"source.mdx\\\",\\\"embeddedLangs\\\":[],\\\"embeddedLangsLazy\\\":[\\\"tsx\\\",\\\"toml\\\",\\\"yaml\\\",\\\"c\\\",\\\"clojure\\\",\\\"coffee\\\",\\\"cpp\\\",\\\"csharp\\\",\\\"css\\\",\\\"diff\\\",\\\"docker\\\",\\\"elixir\\\",\\\"elm\\\",\\\"erlang\\\",\\\"go\\\",\\\"graphql\\\",\\\"haskell\\\",\\\"html\\\",\\\"ini\\\",\\\"java\\\",\\\"javascript\\\",\\\"json\\\",\\\"julia\\\",\\\"kotlin\\\",\\\"less\\\",\\\"lua\\\",\\\"make\\\",\\\"markdown\\\",\\\"objective-c\\\",\\\"perl\\\",\\\"python\\\",\\\"r\\\",\\\"ruby\\\",\\\"rust\\\",\\\"scala\\\",\\\"scss\\\",\\\"shellscript\\\",\\\"shellsession\\\",\\\"sql\\\",\\\"xml\\\",\\\"swift\\\",\\\"typescript\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Mermaid\\\",\\\"fileTypes\\\":[],\\\"injectionSelector\\\":\\\"L:text.html.markdown\\\",\\\"name\\\":\\\"mermaid\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#mermaid-code-block\\\"},{\\\"include\\\":\\\"#mermaid-code-block-with-attributes\\\"},{\\\"include\\\":\\\"#mermaid-ado-code-block\\\"}],\\\"repository\\\":{\\\"mermaid\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(architecture-beta)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"Architecture Diagram\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"string\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"6\\\":{\\\"name\\\":\\\"string\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"9\\\":{\\\"name\\\":\\\"string\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"},\\\"11\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"12\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"(group|service)(group id)(icon name)?(title)(in)?(parent)?\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(group|service)\\\\\\\\s+([\\\\\\\\w-]+)\\\\\\\\s*(\\\\\\\\()?([\\\\\\\\w\\\\\\\\s-]+)?(:)?([\\\\\\\\w\\\\\\\\s-]+)?(\\\\\\\\))?\\\\\\\\s*(\\\\\\\\[)?([\\\\\\\\w\\\\\\\\s-]+)?\\\\\\\\s*(\\\\\\\\])?\\\\\\\\s*(in)?\\\\\\\\s*([\\\\\\\\w-]+)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"10\\\":{\\\"name\\\":\\\"variable\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"12\\\":{\\\"name\\\":\\\"variable\\\"},\\\"13\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"}},\\\"comment\\\":\\\"(service id)(group id)?:(T|B|L|R) <?-->? (T|B|L|R):(service id)(group id)?\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([\\\\\\\\w-]+)\\\\\\\\s*(\\\\\\\\{)?\\\\\\\\s*(group)?(\\\\\\\\})?\\\\\\\\s*(:)\\\\\\\\s*(T|B|L|R)\\\\\\\\s+(<?-->?)\\\\\\\\s+(T|B|L|R)\\\\\\\\s*(:)\\\\\\\\s*([\\\\\\\\w-]+)\\\\\\\\s*(\\\\\\\\{)?\\\\\\\\s*(group)?(\\\\\\\\})?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"(junction)(junction id)(in)?(group)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(junction)\\\\\\\\s+([\\\\\\\\w-]+)\\\\\\\\s*(in)?\\\\\\\\s*([\\\\\\\\w-]+)?\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(classDiagram)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"Class Diagram\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.class.mermaid\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"7\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(class name) (\\\\\\\"multiplicity relationship\\\\\\\")? (relationship) (\\\\\\\"multiplicity relationship\\\\\\\")? (class name) :? (labelText)?\\\",\\\"match\\\":\\\"(?i)([\\\\\\\\w-]+)\\\\\\\\s(\\\\\\\"(?:\\\\\\\\d+|\\\\\\\\*|0..\\\\\\\\d+|1..\\\\\\\\d+|1..\\\\\\\\*)\\\\\\\")?\\\\\\\\s?(--o|--\\\\\\\\*|\\\\\\\\<--|--\\\\\\\\>|<\\\\\\\\.\\\\\\\\.|\\\\\\\\.\\\\\\\\.\\\\\\\\>|\\\\\\\\<\\\\\\\\|\\\\\\\\.\\\\\\\\.|\\\\\\\\.\\\\\\\\.\\\\\\\\|\\\\\\\\>|\\\\\\\\<\\\\\\\\|--|--\\\\\\\\|>|--\\\\\\\\*|--|\\\\\\\\.\\\\\\\\.|\\\\\\\\*--|o--)\\\\\\\\s(\\\\\\\"(?:\\\\\\\\d+|\\\\\\\\*|0..\\\\\\\\d+|1..\\\\\\\\d+|1..\\\\\\\\*)\\\\\\\")?\\\\\\\\s?([\\\\\\\\w-]+)\\\\\\\\s?(:)?\\\\\\\\s(.*)$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.mermaid\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"8\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"},\\\"10\\\":{\\\"name\\\":\\\"entity.name.variable.parameter.mermaid\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.parenthesis.closed.mermaid\\\"},\\\"12\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"13\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"14\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"15\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"16\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"}},\\\"comment\\\":\\\"(class name) : (visibility)?(function)( (function param/generic param)? )(classifier)? (return/generic return)?$\\\",\\\"match\\\":\\\"(?i)([\\\\\\\\w-]+)\\\\\\\\s?(:)\\\\\\\\s([\\\\\\\\+~#-])?([\\\\\\\\w-]+)(\\\\\\\\()([\\\\\\\\w-]+)?(~)?([\\\\\\\\w-]+)?(~)?\\\\\\\\s?([\\\\\\\\w-]+)?(\\\\\\\\))([*\\\\\\\\$]{0,2})\\\\\\\\s?([\\\\\\\\w-]+)?(~)?([\\\\\\\\w-]+)?(~)?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.class.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.variable.field.mermaid\\\"}},\\\"comment\\\":\\\"(class name) : (visibility)?(datatype/generic data type) (attribute name)$\\\",\\\"match\\\":\\\"(?i)([\\\\\\\\w-]+)\\\\\\\\s?(:)\\\\\\\\s([\\\\\\\\+~#-])?([\\\\\\\\w-]+)(~)?([\\\\\\\\w-]+)?(~)?\\\\\\\\s([\\\\\\\\w-]+)?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.mermaid\\\"}},\\\"comment\\\":\\\"<<(Annotation)>> (class name)\\\",\\\"match\\\":\\\"(?i)(<<)([\\\\\\\\w-]+)(>>)\\\\\\\\s?([\\\\\\\\w-]+)?\\\"},{\\\"begin\\\":\\\"(?i)(class)\\\\\\\\s+([\\\\\\\\w-]+)(~)?([\\\\\\\\w-]+)?(~)?\\\\\\\\s?({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"class (class name) ~?(generic type)?~? ({)\\\",\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\s([\\\\\\\\+~#-])?([\\\\\\\\w-]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.mermaid\\\"}},\\\"comment\\\":\\\"(visibility)?(function)( (function param/generic param)? )(classifier)? (return/generic return)?$\\\",\\\"end\\\":\\\"(?i)(\\\\\\\\))([*\\\\\\\\$]{0,2})\\\\\\\\s?([\\\\\\\\w-]+)?(~)?([\\\\\\\\w-]+)?(~)?$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.closed.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.variable.parameter.mermaid\\\"}},\\\"comment\\\":\\\"(TBD)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*,?\\\\\\\\s*([\\\\\\\\w-]+)?(~)?([\\\\\\\\w-]+)?(~)?\\\\\\\\s?([\\\\\\\\w-]+)?\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.variable.field.mermaid\\\"}},\\\"comment\\\":\\\"(visibility)?(datatype/generic data type) (attribute name)$\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s([\\\\\\\\+~#-])?([\\\\\\\\w-]+)(~)?([\\\\\\\\w-]+)?(~)?\\\\\\\\s([\\\\\\\\w-]+)?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.mermaid\\\"}},\\\"comment\\\":\\\"<<(Annotation)>> (class name)\\\",\\\"match\\\":\\\"(?i)(<<)([\\\\\\\\w-]+)(>>)\\\\\\\\s?([\\\\\\\\w-]+)?\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.mermaid\\\"}},\\\"comment\\\":\\\"class (class name) ~?(generic type)?~?\\\",\\\"match\\\":\\\"(?i)(class)\\\\\\\\s+([\\\\\\\\w-]+)(~)?([\\\\\\\\w-]+)?(~)?\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(erDiagram)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"Entity Relationship Diagram\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(entity)\\\",\\\"match\\\":\\\"(?i)^\\\\\\\\s*([\\\\\\\\w-]+)\\\\\\\\s*(\\\\\\\\[)?\\\\\\\\s*((?:[\\\\\\\\w-]+)|(?:\\\\\\\"[\\\\\\\\w\\\\\\\\s-]+\\\\\\\"))?\\\\\\\\s*(\\\\\\\\])?$\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\s+([\\\\\\\\w-]+)\\\\\\\\s*(\\\\\\\\[)?\\\\\\\\s*((?:[\\\\\\\\w-]+)|(?:\\\\\\\"[\\\\\\\\w\\\\\\\\s-]+\\\\\\\"))?\\\\\\\\s*(\\\\\\\\])?\\\\\\\\s*({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(entity) {\\\",\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(type) (name) (PK|FK)? (\\\\\\\"comment\\\\\\\")?\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([\\\\\\\\w-]+)\\\\\\\\s+([\\\\\\\\w-]+)\\\\\\\\s+(PK|FK)?\\\\\\\\s*(\\\\\\\"[\\\\\\\"\\\\\\\\($&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*\\\\\\\")?\\\\\\\\s*\\\"},{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(entity) (relationship) (entity) : (label)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([\\\\\\\\w-]+)\\\\\\\\s*((?:\\\\\\\\|o|\\\\\\\\|\\\\\\\\||}o|}\\\\\\\\||one or (?:zero|more|many)|zero or (?:one|more|many)|many\\\\\\\\((?:0|1)\\\\\\\\)|only one|0\\\\\\\\+|1\\\\\\\\+?)(?:..|--)(?:o\\\\\\\\||\\\\\\\\|\\\\\\\\||o{|\\\\\\\\|{|one or (?:zero|more|many)|zero or (?:one|more|many)|many\\\\\\\\((?:0|1)\\\\\\\\)|only one|0\\\\\\\\+|1\\\\\\\\+?))\\\\\\\\s*([\\\\\\\\w-]+)\\\\\\\\s*(:)\\\\\\\\s*((?:\\\\\\\"[\\\\\\\\w\\\\\\\\s]*\\\\\\\")|(?:[\\\\\\\\w-]+))\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(gantt)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"Gantt Diagram\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(dateFormat)\\\\\\\\s+([\\\\\\\\w\\\\\\\\-\\\\\\\\.]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(axisFormat)\\\\\\\\s+([\\\\\\\\w\\\\\\\\%\\\\\\\\/\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\.]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"match\\\":\\\"(?i)(tickInterval)\\\\\\\\s+(([1-9][0-9]*)(millisecond|second|minute|hour|day|week|month))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(title)\\\\\\\\s+(\\\\\\\\s*[\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(excludes)\\\\\\\\s+((?:[\\\\\\\\d\\\\\\\\-,\\\\\\\\s]+|monday|tuesday|wednesday|thursday|friday|saturday|sunday|weekends)+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s+(todayMarker)\\\\\\\\s+(.*)$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(section)\\\\\\\\s+(\\\\\\\\s*[\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\"},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s(.*)(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(crit|done|active|after)\\\",\\\"name\\\":\\\"entity.name.function.mermaid\\\"},{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"}]}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(gitGraph)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"Git Graph\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(commit)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"commit\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(id)(:) (\\\\\\\"id\\\\\\\")\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(id)(:)\\\\\\\\s?(\\\\\\\"[^\\\\\\\"\\\\\\\\n]*\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"}},\\\"comment\\\":\\\"(type)(:) (COMMIT_TYPE)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(type)(:)\\\\\\\\s?(NORMAL|REVERSE|HIGHLIGHT)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(tag)(:) (\\\\\\\"tag\\\\\\\")\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(tag)(:)\\\\\\\\s?(\\\\\\\"[\\\\\\\\($&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*\\\\\\\")\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"(checkout) (branch-name)\\\",\\\"match\\\":\\\"(?i)^\\\\\\\\s*(checkout)\\\\\\\\s*([^\\\\\\\\s\\\\\\\"]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.decimal.mermaid\\\"}},\\\"comment\\\":\\\"(branch) (branch-name) (order)?(:) (number)\\\",\\\"match\\\":\\\"(?i)^\\\\\\\\s*(branch)\\\\\\\\s*([^\\\\\\\\s\\\\\\\"]*)\\\\\\\\s*(?:(order)(:)\\\\\\\\s?(\\\\\\\\d+))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(merge) (branch-name) (tag: \\\\\\\"tag-name\\\\\\\")?\\\",\\\"match\\\":\\\"(?i)^\\\\\\\\s*(merge)\\\\\\\\s*([^\\\\\\\\s\\\\\\\"]*)\\\\\\\\s*(?:(tag)(:)\\\\\\\\s?(\\\\\\\"[^\\\\\\\"\\\\\\\\n]*\\\\\\\"))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(cherry-pick) (id)(:)(\\\\\\\"commit-id\\\\\\\")\\\",\\\"match\\\":\\\"(?i)^\\\\\\\\s*(cherry-pick)\\\\\\\\s+(id)(:)\\\\\\\\s*(\\\\\\\"[^\\\\\\\"\\\\\\\\n]*\\\\\\\")\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(graph|flowchart)\\\\\\\\s+([\\\\\\\\p{Letter}\\\\\\\\ 0-9]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"}},\\\"comment\\\":\\\"Graph\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"string\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"\\\",\\\"match\\\":\\\"(?i)^\\\\\\\\s*(subgraph)\\\\\\\\s+(\\\\\\\\w+)(\\\\\\\\[)(\\\\\\\"?[\\\\\\\\w\\\\\\\\s*+%=\\\\\\\\\\\\\\\\/:\\\\\\\\.\\\\\\\\-'`,&^#$!?<>]*\\\\\\\"?)(\\\\\\\\])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(subgraph)\\\\\\\\s+([\\\\\\\\p{Letter}\\\\\\\\ 0-9<>]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"}},\\\"match\\\":\\\"^(?i)\\\\\\\\s*(direction)\\\\\\\\s+(RB|BT|RL|TD|LR)\\\"},{\\\"match\\\":\\\"\\\\\\\\b(end)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.mermaid\\\"},{\\\"begin\\\":\\\"(?i)(\\\\\\\\b(?:(?!--|==)[-\\\\\\\\w])+\\\\\\\\b\\\\\\\\s*)(\\\\\\\\(\\\\\\\\[|\\\\\\\\[\\\\\\\\[|\\\\\\\\[\\\\\\\\(|\\\\\\\\[|\\\\\\\\(+|\\\\\\\\>|\\\\\\\\{|\\\\\\\\(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(Entity)(Edge/Shape)(Text)(Edge/Shape)\\\",\\\"end\\\":\\\"(?i)(\\\\\\\\]\\\\\\\\)|\\\\\\\\]\\\\\\\\]|\\\\\\\\)\\\\\\\\]|\\\\\\\\]|\\\\\\\\)+|\\\\\\\\}|\\\\\\\\)\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(\\\\\\\"multi-line text\\\\\\\")\\\",\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)([^\\\\\\\"]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"capture inner text between quotes\\\",\\\"end\\\":\\\"(?=\\\\\\\")\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment\\\"}},\\\"match\\\":\\\"([^\\\\\\\"]*)\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(single line text)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([$&%\\\\\\\\^/#.,?!;:*+<>_\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+)\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*((?:-{2,5}|={2,5})[xo>]?\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(Graph Link)(\\\\\\\"Multiline text\\\\\\\")(Graph Link)\\\",\\\"end\\\":\\\"(?i)(\\\\\\\\|)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(\\\\\\\"multi-line text\\\\\\\")\\\",\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)([^\\\\\\\"]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"capture inner text between quotes\\\",\\\"end\\\":\\\"(?=\\\\\\\")\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment\\\"}},\\\"match\\\":\\\"([^\\\\\\\"]*)\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(single line text)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([$&%\\\\\\\\^/#.,?!;:*+<>_\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+)\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(Graph Link Start Arrow)(Text)(Graph Link End Arrow)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([xo<]?(?:-{2,5}|={2,5}|-\\\\\\\\.{1,3}|-\\\\\\\\.))((?:(?!--|==)[\\\\\\\\w\\\\\\\\s*+%=\\\\\\\\\\\\\\\\/:\\\\\\\\.\\\\\\\\-'`,\\\\\\\"&^#$!?<>\\\\\\\\[\\\\\\\\]])*)((?:-{2,5}|={2,5}|\\\\\\\\.{1,3}-|\\\\\\\\.-)[xo>]?)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(Graph Link)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([ox<]?(?:-.{1,3}-|-{1,3}|={1,3})[ox>]?)\\\"},{\\\"comment\\\":\\\"Entity\\\",\\\"match\\\":\\\"(\\\\\\\\b(?:(?!--|==)[-\\\\\\\\w])+\\\\\\\\b\\\\\\\\s*)\\\",\\\"name\\\":\\\"variable\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(Class)(Node(s))(ClassName)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(class)\\\\\\\\s+(\\\\\\\\b[-,\\\\\\\\w]+)\\\\\\\\s+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(ClassDef)(ClassName)(Styles)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(classDef)\\\\\\\\s+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b)\\\\\\\\s+(\\\\\\\\b[-,:;#\\\\\\\\w]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable\\\"},\\\"4\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(Click)(Entity)(Link)?(Tooltip)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(click)\\\\\\\\s+(\\\\\\\\b[-\\\\\\\\w]+\\\\\\\\b\\\\\\\\s*)(\\\\\\\\b\\\\\\\\w+\\\\\\\\b)?\\\\\\\\s(\\\\\\\"*.*\\\\\\\")\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(pie)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"Pie Chart\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(title)\\\\\\\\s+(\\\\\\\\s*[\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\s(.*)(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"}]}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(quadrantChart)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"Quadrant Chart\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(title)\\\\\\\\s*([\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\"},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*([xy]-axis)\\\\\\\\s+((?:(?!-->)[$&%/#.,?!*+=\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s])*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(x|y-axis) (text) (-->)? (text)?\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(-->) (text)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(-->)\\\\\\\\s*([$&%/#.,?!*+=\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(quadrant-[1234])\\\\\\\\s*([\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.decimal.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.decimal.mermaid\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(text)(:) ([)(decimal)(,) (decimal)(])\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([$&%/#.,?!*+=\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\\\\\\s*(:)\\\\\\\\s*(\\\\\\\\[)\\\\\\\\s*(\\\\\\\\d\\\\\\\\.\\\\\\\\d+)\\\\\\\\s*(,)\\\\\\\\s*(\\\\\\\\d\\\\\\\\.\\\\\\\\d+)\\\\\\\\s*(\\\\\\\\])\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(requirementDiagram)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"Requirement Diagram\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*((?:functional|interface|performance|physical)?requirement|designConstraint)\\\\\\\\s*([\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\\\\\\s*({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(requirement) (name) ({)\\\",\\\"end\\\":\\\"(?i)\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"(id:) (variable id)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(id:)\\\\\\\\s*([$&%\\\\\\\\^/#.,?!;:*+<>_\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(text:) (text string)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(text:)\\\\\\\\s*([$&%\\\\\\\\^/#.,?!;:*+<>_\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"}},\\\"comment\\\":\\\"(risk:) (risk option)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(risk:)\\\\\\\\s*(low|medium|high)\\\\\\\\s*$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"}},\\\"comment\\\":\\\"(verifyMethod)(:) (method)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(verifymethod:)\\\\\\\\s*(analysis|inspection|test|demonstration)\\\\\\\\s*$\\\"}]},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(element)\\\\\\\\s*([\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\\\\\\s*({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(element) (name) ({)\\\",\\\"end\\\":\\\"(?i)\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"(type:) (user type)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(type:)\\\\\\\\s*([\\\\\\\"$&%\\\\\\\\^/#.,?!;:*+<>_\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"(docref:) (user ref)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(docref:)\\\\\\\\s*([$&%\\\\\\\\^/#.,?!;:*+<>_\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+)\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"(source) (-) (type) (->) (destination)\\\",\\\"match\\\":\\\"(?i)^\\\\\\\\s*([\\\\\\\\w]+)\\\\\\\\s*(-)\\\\\\\\s*(contains|copies|derives|satisfies|verifies|refines|traces)\\\\\\\\s*(->)\\\\\\\\s*([\\\\\\\\w]+)\\\\\\\\s*$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"(destination) (<-) (type) (-) (source)\\\",\\\"match\\\":\\\"(?i)^\\\\\\\\s*([\\\\\\\\w]+)\\\\\\\\s*(<-)\\\\\\\\s*(contains|copies|derives|satisfies|verifies|refines|traces)\\\\\\\\s*(-)\\\\\\\\s*([\\\\\\\\w]+)\\\\\\\\s*$\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(sequenceDiagram)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"Sequence Diagram\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\%%|#).*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(title)(title text)\\\",\\\"match\\\":\\\"(?i)(title)\\\\\\\\s*(:)?\\\\\\\\s+(\\\\\\\\s*[\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.,?!:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(participant)(Actor)(as)?(Label)?\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(participant|actor)\\\\\\\\s+((?:(?! as )[\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.?!*=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s])+)\\\\\\\\s*(as)?\\\\\\\\s([\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.,?!*=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"(activate/deactivate)(Actor)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*((?:de)?activate)\\\\\\\\s+(\\\\\\\\b[\\\\\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+\\\\\\\\b\\\\\\\\)?\\\\\\\\s*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"7\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(Note)(direction)(Actor)(,)?(Actor)?(:)(Message)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(Note)\\\\\\\\s+((?:left|right)\\\\\\\\sof|over)\\\\\\\\s+(\\\\\\\\b[\\\\\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+\\\\\\\\b\\\\\\\\)?\\\\\\\\s*)(,)?(\\\\\\\\b[\\\\\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+\\\\\\\\b\\\\\\\\)?\\\\\\\\s*)?(:)(?:\\\\\\\\s+([^;#]*))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(loop)(loop text)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(loop)(?:\\\\\\\\s+([^;#]*))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(end)\\\",\\\"match\\\":\\\"\\\\\\\\s*(end)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(alt/else/option/par/and/autonumber/critical/opt)(text)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(alt|else|option|par|and|rect|autonumber|critical|opt)(?:\\\\\\\\s+([^#;]*))?$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(Actor)(Arrow)(Actor)(:)(Message)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(\\\\\\\\b[\\\\\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+\\\\\\\\b\\\\\\\\)?)\\\\\\\\s*(-?-(?:\\\\\\\\>|x|\\\\\\\\))\\\\\\\\>?[+-]?)\\\\\\\\s*([\\\\\\\"()$&%^/#.?!*=<>'\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s]+\\\\\\\\b\\\\\\\\)?)\\\\\\\\s*(:)\\\\\\\\s*([^;#]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(box transparent text)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(box)\\\\\\\\s+(transparent)(?:\\\\\\\\s+([^;#]*))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(box text)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(box)(?:\\\\\\\\s+([^;#]*))?\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(stateDiagram(?:-v2)?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"State Diagram\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"}\\\",\\\"match\\\":\\\"\\\\\\\\s+(})\\\\\\\\s+\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"--\\\",\\\"match\\\":\\\"\\\\\\\\s+(--)\\\\\\\\s+\\\"},{\\\"comment\\\":\\\"(state)\\\",\\\"match\\\":\\\"^\\\\\\\\s*([\\\\\\\\w-]+)$\\\",\\\"name\\\":\\\"variable\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(state) : (description)\\\",\\\"match\\\":\\\"(?i)([\\\\\\\\w-]+)\\\\\\\\s+(:)\\\\\\\\s+(\\\\\\\\s*[-\\\\\\\\w\\\\\\\\s]+\\\\\\\\b)\\\"},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(state)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"state\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"\\\\\\\"(description)\\\\\\\" as (state)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(\\\\\\\"[-\\\\\\\\w\\\\\\\\s]+\\\\\\\\b\\\\\\\")\\\\\\\\s+(as)\\\\\\\\s+([\\\\\\\\w-]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(state name) {\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([\\\\\\\\w-]+)\\\\\\\\s+({)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(state name) <<fork|join>>\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([\\\\\\\\w-]+)\\\\\\\\s+(<<(?:fork|join)>>)\\\"}]},{\\\"begin\\\":\\\"(?i)([\\\\\\\\w-]+)\\\\\\\\s+(-->)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(state) -->\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(state) (:)? (transition text)?\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s+([\\\\\\\\w-]+)\\\\\\\\s*(:)?\\\\\\\\s*([^\\\\\\\\n:]+)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"[*] (:)? (transition text)?\\\",\\\"match\\\":\\\"(?i)(\\\\\\\\[\\\\\\\\*\\\\\\\\])\\\\\\\\s*(:)?\\\\\\\\s*([^\\\\\\\\n:]+)?\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"5\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"[*] --> (state) (:)? (transition text)?\\\",\\\"match\\\":\\\"(?i)(\\\\\\\\[\\\\\\\\*\\\\\\\\])\\\\\\\\s+(-->)\\\\\\\\s+([\\\\\\\\w-]+)\\\\\\\\s*(:)?\\\\\\\\s*([^\\\\\\\\n:]+)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"note left|right of (state name)\\\",\\\"match\\\":\\\"(?i)^\\\\\\\\s*(note (?:left|right) of)\\\\\\\\s+([\\\\\\\\w-]+)\\\\\\\\s+(:)\\\\\\\\s*([^\\\\\\\\n:]+)\\\"},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(note (?:left|right) of)\\\\\\\\s+([\\\\\\\\w-]+)(.|\\\\\\\\n)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"note left|right of (state name) (note text) end note\\\",\\\"contentName\\\":\\\"string\\\",\\\"end\\\":\\\"(?i)(end note)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}}}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(journey)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"User Journey\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(title|section)\\\\\\\\s+(\\\\\\\\s*[\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\s*([\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/.,?!*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\\\\\\s*(:)\\\\\\\\s*(\\\\\\\\d+)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.decimal.mermaid\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"comment\\\":\\\"(taskName)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*,?\\\\\\\\s*([^,#\\\\\\\\n]+)\\\"}]}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(xychart(?:-beta)?(?:\\\\\\\\s+horizontal)?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"XY Chart\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`:~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\%%.*\\\",\\\"name\\\":\\\"comment\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"string\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(title)\\\\\\\\s+(\\\\\\\\s*[\\\\\\\"\\\\\\\\(\\\\\\\\)$&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*)\\\"},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(x-axis)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(x-axis)\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.decimal.mermaid\\\"}},\\\"comment\\\":\\\"(decimal) (-->) (decimal)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([-+]?\\\\\\\\d+\\\\\\\\.?\\\\\\\\d*)\\\\\\\\s*(-->)\\\\\\\\s*([-+]?\\\\\\\\d+\\\\\\\\.?\\\\\\\\d*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(\\\\\\\"text\\\\\\\")\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s+(\\\\\\\"[\\\\\\\\($&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(text)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s+([\\\\\\\\($&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w]*)\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"([)(text)(,)(text)*(])\\\",\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.mermaid\\\"}},\\\"comment\\\":\\\"(decimal)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([-+]?\\\\\\\\d+\\\\\\\\.?\\\\\\\\d*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(\\\\\\\"text\\\\\\\")\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(\\\\\\\"[\\\\\\\\($&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(text)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([\\\\\\\\($&%\\\\\\\\^/#.?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(,)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(,)\\\"}]}]},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(y-axis)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(y-axis)\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.decimal.mermaid\\\"}},\\\"comment\\\":\\\"(decimal) (-->) (decimal)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([-+]?\\\\\\\\d+\\\\\\\\.?\\\\\\\\d*)\\\\\\\\s*(-->)\\\\\\\\s*([-+]?\\\\\\\\d+\\\\\\\\.?\\\\\\\\d*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(\\\\\\\"text\\\\\\\")\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s+(\\\\\\\"[\\\\\\\\($&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w\\\\\\\\s]*\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string\\\"}},\\\"comment\\\":\\\"(text)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s+([\\\\\\\\($&%\\\\\\\\^/#.,?!;:*+=<>\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\-\\\\\\\\w]*)\\\"}]},{\\\"begin\\\":\\\"(?i)^\\\\\\\\s*(line|bar)\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(line|bar) ([)(decimal)+(])\\\",\\\"end\\\":\\\"\\\\\\\\s*(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.decimal.mermaid\\\"}},\\\"comment\\\":\\\"(decimal)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*([-+]?\\\\\\\\d+\\\\\\\\.?\\\\\\\\d*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.mermaid\\\"}},\\\"comment\\\":\\\"(,)\\\",\\\"match\\\":\\\"(?i)\\\\\\\\s*(,)\\\"}]}]}]},\\\"mermaid-ado-code-block\\\":{\\\"begin\\\":\\\"(?i)\\\\\\\\s*:::\\\\\\\\s*mermaid\\\\\\\\s*$\\\",\\\"contentName\\\":\\\"meta.embedded.block.mermaid\\\",\\\"end\\\":\\\"\\\\\\\\s*:::\\\\\\\\s*\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#mermaid\\\"}]},\\\"mermaid-code-block\\\":{\\\"begin\\\":\\\"(?i)(?<=[`~])mermaid(\\\\\\\\s+[^`~]*)?$\\\",\\\"contentName\\\":\\\"meta.embedded.block.mermaid\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#mermaid\\\"}]},\\\"mermaid-code-block-with-attributes\\\":{\\\"begin\\\":\\\"(?i)(?<=[`~])\\\\\\\\{\\\\\\\\s*\\\\\\\\.?mermaid(\\\\\\\\s+[^`~]*)?$\\\",\\\"contentName\\\":\\\"meta.embedded.block.mermaid\\\",\\\"end\\\":\\\"(^|\\\\\\\\G)(?=\\\\\\\\s*[`~]{3,}\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#mermaid\\\"}]}},\\\"scopeName\\\":\\\"markdown.mermaid.codeblock\\\",\\\"aliases\\\":[\\\"mmd\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"MIPS Assembly\\\",\\\"fileTypes\\\":[\\\"s\\\",\\\"mips\\\",\\\"spim\\\",\\\"asm\\\"],\\\"name\\\":\\\"mipsasm\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"ok actually this are instructions, but one also could call them funtions\u2026\\\",\\\"match\\\":\\\"\\\\\\\\b(mul|abs|div|divu|mulo|mulou|neg|negu|not|rem|remu|rol|ror|li|seq|sge|sgeu|sgt|sgtu|sle|sleu|sne|b|beqz|bge|bgeu|bgt|bgtu|ble|bleu|blt|bltu|bnez|la|ld|ulh|ulhu|ulw|sd|ush|usw|move|mfc1\\\\\\\\.d|l\\\\\\\\.d|l\\\\\\\\.s|s\\\\\\\\.d|s\\\\\\\\.s)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.pseudo.mips\\\"},{\\\"match\\\":\\\"\\\\\\\\b(abs\\\\\\\\.d|abs\\\\\\\\.s|add|add\\\\\\\\.d|add\\\\\\\\.s|addi|addiu|addu|and|andi|bc1f|bc1t|beq|bgez|bgezal|bgtz|blez|bltz|bltzal|bne|break|c\\\\\\\\.eq\\\\\\\\.d|c\\\\\\\\.eq\\\\\\\\.s|c\\\\\\\\.le\\\\\\\\.d|c\\\\\\\\.le\\\\\\\\.s|c\\\\\\\\.lt\\\\\\\\.d|c\\\\\\\\.lt\\\\\\\\.s|ceil\\\\\\\\.w\\\\\\\\.d|ceil\\\\\\\\.w\\\\\\\\.s|clo|clz|cvt\\\\\\\\.d\\\\\\\\.s|cvt\\\\\\\\.d\\\\\\\\.w|cvt\\\\\\\\.s\\\\\\\\.d|cvt\\\\\\\\.s\\\\\\\\.w|cvt\\\\\\\\.w\\\\\\\\.d|cvt\\\\\\\\.w\\\\\\\\.s|div|div\\\\\\\\.d|div\\\\\\\\.s|divu|eret|floor\\\\\\\\.w\\\\\\\\.d|floor\\\\\\\\.w\\\\\\\\.s|j|jal|jalr|jr|lb|lbu|lh|lhu|ll|lui|lw|lwc1|lwl|lwr|madd|maddu|mfc0|mfc1|mfhi|mflo|mov\\\\\\\\.d|mov\\\\\\\\.s|movf|movf\\\\\\\\.d|movf\\\\\\\\.s|movn|movn\\\\\\\\.d|movn\\\\\\\\.s|movt|movt\\\\\\\\.d|movt\\\\\\\\.s|movz|movz\\\\\\\\.d|movz\\\\\\\\.s|msub|mtc0|mtc1|mthi|mtlo|mul|mul\\\\\\\\.d|mul\\\\\\\\.s|mult|multu|neg\\\\\\\\.d|neg\\\\\\\\.s|nop|nor|or|ori|round\\\\\\\\.w\\\\\\\\.d|round\\\\\\\\.w\\\\\\\\.s|sb|sc|sdc1|sh|sll|sllv|slt|slti|sltiu|sltu|sqrt\\\\\\\\.d|sqrt\\\\\\\\.s|sra|srav|srl|srlv|sub|sub\\\\\\\\.d|sub\\\\\\\\.s|subu|sw|swc1|swl|swr|syscall|teq|teqi|tge|tgei|tgeiu|tgeu|tlt|tlti|tltiu|tltu|trunc\\\\\\\\.w\\\\\\\\.d|trunc\\\\\\\\.w\\\\\\\\.s|xor|xori)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mips\\\"},{\\\"match\\\":\\\"\\\\\\\\.(ascii|asciiz|byte|data|double|float|half|kdata|ktext|space|text|word|set\\\\\\\\s*(noat|at))\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.mips\\\"},{\\\"match\\\":\\\"\\\\\\\\.(align|extern||globl)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.mips\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.label.mips\\\"}},\\\"match\\\":\\\"\\\\\\\\b([A-Za-z0-9_]+):\\\",\\\"name\\\":\\\"meta.function.label.mips\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.mips\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)(0|[2-9]|1[0-9]|2[0-5]|2[89]|3[0-1])\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.register.usable.by-number.mips\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.mips\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)(zero|v[01]|a[0-3]|t[0-9]|s[0-7]|gp|sp|fp|ra)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.register.usable.by-name.mips\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.mips\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)(at|k[01]|1|2[67])\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.register.reserved.mips\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.mips\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)f([0-9]|1[0-9]|2[0-9]|3[0-1])\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.register.usable.floating-point.mips\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+\\\\\\\\.\\\\\\\\d+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.mips\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+|0(x|X)[a-fA-F0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.mips\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.mips\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.mips\\\"}},\\\"name\\\":\\\"string.quoted.double.mips\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[rnt\\\\\\\\\\\\\\\\\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.mips\\\"}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.mips\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.mips\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.mips\\\"}]}],\\\"scopeName\\\":\\\"source.mips\\\",\\\"aliases\\\":[\\\"mips\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Mojo\\\",\\\"name\\\":\\\"mojo\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"},{\\\"include\\\":\\\"#expression\\\"}],\\\"repository\\\":{\\\"annotated-parameter\\\":{\\\"begin\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.annotation.python\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"match\\\":\\\"=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}]},\\\"assignment-operator\\\":{\\\"match\\\":\\\"<<=|>>=|//=|\\\\\\\\*\\\\\\\\*=|\\\\\\\\+=|-=|/=|@=|\\\\\\\\*=|%=|~=|\\\\\\\\^=|&=|\\\\\\\\|=|=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"},\\\"backticks\\\":{\\\"begin\\\":\\\"\\\\\\\\`\\\",\\\"end\\\":\\\"(?:\\\\\\\\`|(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\n))\\\",\\\"name\\\":\\\"string.quoted.single.python\\\"},\\\"builtin-callables\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#builtin-exceptions\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#builtin-types\\\"}]},\\\"builtin-exceptions\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b((Arithmetic|Assertion|Attribute|Buffer|BlockingIO|BrokenPipe|ChildProcess|(Connection(Aborted|Refused|Reset)?)|EOF|Environment|FileExists|FileNotFound|FloatingPoint|IO|Import|Indentation|Index|Interrupted|IsADirectory|NotADirectory|Permission|ProcessLookup|Timeout|Key|Lookup|Memory|Name|NotImplemented|OS|Overflow|Reference|Runtime|Recursion|Syntax|System|Tab|Type|UnboundLocal|Unicode(Encode|Decode|Translate)?|Value|Windows|ZeroDivision|ModuleNotFound)Error|((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes|Resource)?Warning|SystemExit|Stop(Async)?Iteration|KeyboardInterrupt|GeneratorExit|(Base)?Exception)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.exception.python\\\"},\\\"builtin-functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(__import__|abs|aiter|all|any|anext|ascii|bin|breakpoint|callable|chr|compile|copyright|credits|delattr|dir|divmod|enumerate|eval|exec|exit|filter|format|getattr|globals|hasattr|hash|help|hex|id|input|isinstance|issubclass|iter|len|license|locals|map|max|memoryview|min|next|oct|open|ord|pow|print|quit|range|reload|repr|reversed|round|setattr|sorted|sum|vars|zip)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.python\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(file|reduce|intern|raw_input|unicode|cmp|basestring|execfile|long|xrange)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.legacy.builtin.python\\\"}]},\\\"builtin-possible-callables\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-callables\\\"},{\\\"include\\\":\\\"#magic-names\\\"}]},\\\"builtin-types\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(__mlir_attr|__mlir_op|__mlir_type|bool|bytearray|bytes|classmethod|complex|dict|float|frozenset|int|list|object|property|set|slice|staticmethod|str|tuple|type|super)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.python\\\"},\\\"call-wrapper-inheritance\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?=([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(\\\\\\\\())\\\",\\\"comment\\\":\\\"same as a function call, but in inheritance context\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"name\\\":\\\"meta.function-call.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inheritance-name\\\"},{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"class-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(class|struct|trait)\\\\\\\\s+(?=[[:alpha:]_]\\\\\\\\w*\\\\\\\\s*(:|\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.python\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.class.begin.python\\\"}},\\\"name\\\":\\\"meta.class.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#class-inheritance\\\"}]}]},\\\"class-inheritance\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.inheritance.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.inheritance.end.python\\\"}},\\\"name\\\":\\\"meta.class.inheritance.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\*\\\\\\\\*|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.unpacking.arguments.python\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.python\\\"},{\\\"match\\\":\\\"=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"},{\\\"match\\\":\\\"\\\\\\\\bmetaclass\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.metaclass.python\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#class-kwarg\\\"},{\\\"include\\\":\\\"#call-wrapper-inheritance\\\"},{\\\"include\\\":\\\"#expression-base\\\"},{\\\"include\\\":\\\"#member-access-class\\\"},{\\\"include\\\":\\\"#inheritance-identifier\\\"}]},\\\"class-kwarg\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.python variable.parameter.class.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(=)(?!=)\\\"},\\\"class-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.class.python\\\"}]},\\\"codetags\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.codetag.notation.python\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\b(NOTE|XXX|HACK|FIXME|BUG|TODO)\\\\\\\\b)\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:\\\\\\\\#\\\\\\\\s*(type:)\\\\\\\\s*+(?!$|\\\\\\\\#))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.typehint.comment.python\\\"},\\\"1\\\":{\\\"name\\\":\\\"comment.typehint.directive.notation.python\\\"}},\\\"contentName\\\":\\\"meta.typehint.comment.python\\\",\\\"end\\\":\\\"(?:$|(?=\\\\\\\\#))\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\Gignore(?=\\\\\\\\s*(?:$|\\\\\\\\#))\\\",\\\"name\\\":\\\"comment.typehint.ignore.notation.python\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(bool|bytes|float|int|object|str|List|Dict|Iterable|Sequence|Set|FrozenSet|Callable|Union|Tuple|Any|None)\\\\\\\\b\\\",\\\"name\\\":\\\"comment.typehint.type.notation.python\\\"},{\\\"match\\\":\\\"([\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\),\\\\\\\\.\\\\\\\\=\\\\\\\\*]|(->))\\\",\\\"name\\\":\\\"comment.typehint.punctuation.notation.python\\\"},{\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)\\\",\\\"name\\\":\\\"comment.typehint.variable.notation.python\\\"}]},{\\\"include\\\":\\\"#comments-base\\\"}]},\\\"comments-base\\\":{\\\"begin\\\":\\\"(\\\\\\\\#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.python\\\"}},\\\"end\\\":\\\"($)\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"comments-string-double-three\\\":{\\\"begin\\\":\\\"(\\\\\\\\#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.python\\\"}},\\\"end\\\":\\\"($|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"comments-string-single-three\\\":{\\\"begin\\\":\\\"(\\\\\\\\#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.python\\\"}},\\\"end\\\":\\\"($|(?='''))\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"curly-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dict.begin.python\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dict.end.python\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.dict.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"decorator\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((@))\\\\\\\\s*(?=[[:alpha:]_]\\\\\\\\w*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.decorator.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.decorator.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\))(?:(.*?)(?=\\\\\\\\s*(?:\\\\\\\\#|$)))|(?=\\\\\\\\n|\\\\\\\\#)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.decorator.python\\\"}},\\\"name\\\":\\\"meta.function.decorator.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#decorator-name\\\"},{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"decorator-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-callables\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.period.python\\\"}},\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)|(\\\\\\\\.)\\\",\\\"name\\\":\\\"entity.name.function.decorator.python\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.decorator.python\\\"}},\\\"match\\\":\\\"\\\\\\\\s*([^([:alpha:]\\\\\\\\s_\\\\\\\\.#\\\\\\\\\\\\\\\\].*?)(?=\\\\\\\\#|$)\\\",\\\"name\\\":\\\"invalid.illegal.decorator.python\\\"}]},\\\"double-one-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"double-one-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"double-one-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#double-one-regexp-character-set\\\"},{\\\"include\\\":\\\"#double-one-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#double-one-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookahead\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#double-one-regexp-conditional\\\"},{\\\"include\\\":\\\"#double-one-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#double-one-regexp-parentheses\\\"}]},\\\"double-one-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-three-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"double-three-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"double-three-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#double-three-regexp-character-set\\\"},{\\\"include\\\":\\\"#double-three-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#double-three-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookahead\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#double-three-regexp-conditional\\\"},{\\\"include\\\":\\\"#double-three-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#double-three-regexp-parentheses\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"ellipsis\\\":{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"constant.other.ellipsis.python\\\"},\\\"escape-sequence\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|[0-7]{1,3}|[\\\\\\\\\\\\\\\\\\\\\\\"'abfnrtv])\\\",\\\"name\\\":\\\"constant.character.escape.python\\\"},\\\"escape-sequence-unicode\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\\\\\\\\{[\\\\\\\\w\\\\\\\\s]+?\\\\\\\\})\\\",\\\"name\\\":\\\"constant.character.escape.python\\\"}]},\\\"expression\\\":{\\\"comment\\\":\\\"All valid Python expressions\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-base\\\"},{\\\"include\\\":\\\"#member-access\\\"},{\\\"comment\\\":\\\"Tokenize identifiers to help linters\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\"}]},\\\"expression-bare\\\":{\\\"comment\\\":\\\"valid Python expressions w/o comments and line continuation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#backticks\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#lambda\\\"},{\\\"include\\\":\\\"#generator\\\"},{\\\"include\\\":\\\"#illegal-operator\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#curly-braces\\\"},{\\\"include\\\":\\\"#item-access\\\"},{\\\"include\\\":\\\"#list\\\"},{\\\"include\\\":\\\"#odd-function-call\\\"},{\\\"include\\\":\\\"#round-braces\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#builtin-types\\\"},{\\\"include\\\":\\\"#builtin-exceptions\\\"},{\\\"include\\\":\\\"#magic-names\\\"},{\\\"include\\\":\\\"#special-names\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#special-variables\\\"},{\\\"include\\\":\\\"#ellipsis\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#line-continuation\\\"}]},\\\"expression-base\\\":{\\\"comment\\\":\\\"valid Python expressions with comments and line continuation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#expression-bare\\\"},{\\\"include\\\":\\\"#line-continuation\\\"}]},\\\"f-expression\\\":{\\\"comment\\\":\\\"All valid Python expressions, except comments and line continuation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-bare\\\"},{\\\"include\\\":\\\"#member-access\\\"},{\\\"comment\\\":\\\"Tokenize identifiers to help linters\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\"}]},\\\"fregexp-base-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#fregexp-quantifier\\\"},{\\\"include\\\":\\\"#fstring-formatting-braces\\\"},{\\\"match\\\":\\\"\\\\\\\\{.*?\\\\\\\\}\\\"},{\\\"include\\\":\\\"#regexp-base-common\\\"}]},\\\"fregexp-quantifier\\\":{\\\"match\\\":\\\"\\\\\\\\{\\\\\\\\{(\\\\\\\\d+|\\\\\\\\d+,(\\\\\\\\d+)?|,\\\\\\\\d+)\\\\\\\\}\\\\\\\\}\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},\\\"fstring-fnorm-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[fF])([bBuU])?('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.multi.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.interpolated.python string.quoted.multi.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-core\\\"}]},\\\"fstring-fnorm-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[fF])([bBuU])?((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.single.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.interpolated.python string.quoted.single.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-core\\\"}]},\\\"fstring-formatting\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-formatting-braces\\\"},{\\\"include\\\":\\\"#fstring-formatting-singe-brace\\\"}]},\\\"fstring-formatting-braces\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.brace.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"empty braces are illegal\\\",\\\"match\\\":\\\"({)(\\\\\\\\s*?)(})\\\"},{\\\"match\\\":\\\"({{|}})\\\",\\\"name\\\":\\\"constant.character.escape.python\\\"}]},\\\"fstring-formatting-singe-brace\\\":{\\\"match\\\":\\\"(}(?!}))\\\",\\\"name\\\":\\\"invalid.illegal.brace.python\\\"},\\\"fstring-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"},{\\\"include\\\":\\\"#fstring-formatting\\\"}]},\\\"fstring-illegal-multi-brace\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#impossible\\\"}]},\\\"fstring-illegal-single-brace\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)(?=[^\\\\\\\\n}]*$\\\\\\\\n?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"it is illegal to have a multiline brace inside a single-line string\\\",\\\"end\\\":\\\"(\\\\\\\\})|(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-terminator-single\\\"},{\\\"include\\\":\\\"#f-expression\\\"}]},\\\"fstring-multi-brace\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"value interpolation using { ... }\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-terminator-multi\\\"},{\\\"include\\\":\\\"#f-expression\\\"}]},\\\"fstring-multi-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|'''|\\\\\\\"\\\\\\\"\\\\\\\"))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.multi.python\\\"},\\\"fstring-normf-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bBuU])([fF])('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.multi.python storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.multi.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-core\\\"}]},\\\"fstring-normf-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bBuU])([fF])((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.single.python storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.single.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-core\\\"}]},\\\"fstring-raw-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#fstring-formatting\\\"}]},\\\"fstring-raw-multi-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|'''|\\\\\\\"\\\\\\\"\\\\\\\"))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.multi.python\\\"},\\\"fstring-raw-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:[rR][fF]|[fF][rR]))('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.multi.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.raw.multi.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.multi.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-raw-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-raw-multi-core\\\"}]},\\\"fstring-raw-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:[rR][fF]|[fF][rR]))((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.single.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.raw.single.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.single.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-raw-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"include\\\":\\\"#fstring-raw-single-core\\\"}]},\\\"fstring-raw-single-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.single.python\\\"},\\\"fstring-single-brace\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"value interpolation using { ... }\\\",\\\"end\\\":\\\"(\\\\\\\\})|(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-terminator-single\\\"},{\\\"include\\\":\\\"#f-expression\\\"}]},\\\"fstring-single-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.single.python\\\"},\\\"fstring-terminator-multi\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(=(![rsa])?)(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(=?![rsa])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"((?:=?)(?:![rsa])?)(:\\\\\\\\w?[<>=^]?[-+ ]?\\\\\\\\#?\\\\\\\\d*,?(\\\\\\\\.\\\\\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})\\\"},{\\\"include\\\":\\\"#fstring-terminator-multi-tail\\\"}]},\\\"fstring-terminator-multi-tail\\\":{\\\"begin\\\":\\\"((?:=?)(?:![rsa])?)(:)(?=.*?{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"match\\\":\\\"([bcdeEfFgGnosxX%])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\#)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([-+ ])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([<>=^])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"}]},\\\"fstring-terminator-single\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(=(![rsa])?)(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(=?![rsa])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"((?:=?)(?:![rsa])?)(:\\\\\\\\w?[<>=^]?[-+ ]?\\\\\\\\#?\\\\\\\\d*,?(\\\\\\\\.\\\\\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})\\\"},{\\\"include\\\":\\\"#fstring-terminator-single-tail\\\"}]},\\\"fstring-terminator-single-tail\\\":{\\\"begin\\\":\\\"((?:=?)(?:![rsa])?)(:)(?=.*?{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"end\\\":\\\"(?=})|(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"match\\\":\\\"([bcdeEfFgGnosxX%])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\#)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([-+ ])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([<>=^])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"}]},\\\"function-arguments\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.python\\\"}},\\\"contentName\\\":\\\"meta.function-call.arguments.python\\\",\\\"end\\\":\\\"(?=\\\\\\\\))(?!\\\\\\\\)\\\\\\\\s*\\\\\\\\()\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"punctuation.separator.arguments.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.unpacking.arguments.python\\\"}},\\\"match\\\":\\\"(?:(?<=[,(])|^)\\\\\\\\s*(\\\\\\\\*{1,2})\\\"},{\\\"include\\\":\\\"#lambda-incomplete\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function-call.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(=)(?!=)\\\"},{\\\"match\\\":\\\"=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.python\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\))\\\\\\\\s*(\\\\\\\\()\\\"}]},\\\"function-call\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?=([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(\\\\\\\\())\\\",\\\"comment\\\":\\\"Regular function call of the type \\\\\\\"name(args)\\\\\\\"\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"name\\\":\\\"meta.function-call.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#special-variables\\\"},{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"function-declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(?:\\\\\\\\b(async)\\\\\\\\s+)?\\\\\\\\b(def|fn)\\\\\\\\s+(?=[[:alpha:]_][[:word:]]*\\\\\\\\s*[\\\\\\\\(\\\\\\\\[])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.async.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.python\\\"}},\\\"end\\\":\\\"(:|(?=[#'\\\\\\\"\\\\\\\\n]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.python\\\"}},\\\"name\\\":\\\"meta.function.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-modifier\\\"},{\\\"include\\\":\\\"#function-def-name\\\"},{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#meta_parameters\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"include\\\":\\\"#return-annotation\\\"}]},\\\"function-def-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.python\\\"}]},\\\"function-modifier\\\":{\\\"match\\\":\\\"(raises|capturing)\\\",\\\"name\\\":\\\"storage.modifier\\\"},\\\"function-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"comment\\\":\\\"Some color schemas support meta.function-call.generic scope\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.function-call.generic.python\\\"}]},\\\"generator\\\":{\\\"begin\\\":\\\"\\\\\\\\bfor\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"comment\\\":\\\"Match \\\\\\\"for ... in\\\\\\\" construct used in generators and for loops to\\\\ncorrectly identify the \\\\\\\"in\\\\\\\" as a control flow keyword.\\\\n\\\",\\\"end\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"illegal-names\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.import.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(and|assert|async|await|break|class|struct|trait|continue|del|elif|else|except|finally|for|from|global|if|in|is|(?<=\\\\\\\\.)lambda|lambda(?=\\\\\\\\s*[\\\\\\\\.=])|nonlocal|not|or|pass|raise|return|try|while|with|yield)|(def|fn|capturing|raises)|(as|import))\\\\\\\\b\\\"},\\\"illegal-object-name\\\":{\\\"comment\\\":\\\"It's illegal to name class or function \\\\\\\"True\\\\\\\"\\\",\\\"match\\\":\\\"\\\\\\\\b(True|False|None)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.illegal.name.python\\\"},\\\"illegal-operator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"&&|\\\\\\\\|\\\\\\\\||--|\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"invalid.illegal.operator.python\\\"},{\\\"match\\\":\\\"[?$]\\\",\\\"name\\\":\\\"invalid.illegal.operator.python\\\"},{\\\"comment\\\":\\\"We don't want `!` to flash when we're typing `!=`\\\",\\\"match\\\":\\\"!\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.operator.python\\\"}]},\\\"import\\\":{\\\"comment\\\":\\\"Import statements used to correctly mark `from`, `import`, and `as`\\\\n\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(from)\\\\\\\\b(?=.+import)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.python\\\"}},\\\"end\\\":\\\"$|(?=import)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.+\\\",\\\"name\\\":\\\"punctuation.separator.period.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(import)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.python\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)as\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"impossible\\\":{\\\"comment\\\":\\\"This is a special rule that should be used where no match is desired. It is not a good idea to match something like '1{0}' because in some cases that can result in infinite loops in token generation. So the rule instead matches and impossible expression to allow a match to fail and move to the next token.\\\",\\\"match\\\":\\\"$.^\\\"},\\\"inheritance-identifier\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\"},\\\"inheritance-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#lambda-incomplete\\\"},{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"include\\\":\\\"#inheritance-identifier\\\"}]},\\\"item-access\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?=[[:alpha:]_]\\\\\\\\w*\\\\\\\\s*\\\\\\\\[)\\\",\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"name\\\":\\\"meta.item-access.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#item-name\\\"},{\\\"include\\\":\\\"#item-index\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"item-index\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.python\\\"}},\\\"contentName\\\":\\\"meta.item-access.arguments.python\\\",\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.slice.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"item-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special-variables\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#special-names\\\"},{\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.indexed-name.python\\\"}]},\\\"lambda\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"match\\\":\\\"((?<=\\\\\\\\.)lambda|lambda(?=\\\\\\\\s*[\\\\\\\\.=]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.lambda.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(lambda)\\\\\\\\s*?(?=[,\\\\\\\\n]|$)\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(lambda)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.lambda.python\\\"}},\\\"contentName\\\":\\\"meta.function.lambda.parameters.python\\\",\\\"end\\\":\\\"(:)|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.lambda.begin.python\\\"}},\\\"name\\\":\\\"meta.lambda-function.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(owned|borrowed|inout)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier\\\"},{\\\"match\\\":\\\"/\\\",\\\"name\\\":\\\"keyword.operator.positional.parameter.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\*\\\\\\\\*|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.unpacking.parameter.python\\\"},{\\\"include\\\":\\\"#lambda-nested-incomplete\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(?:(,)|(?=:|$))\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#backticks\\\"},{\\\"include\\\":\\\"#lambda-parameter-with-default\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"include\\\":\\\"#illegal-operator\\\"}]}]},\\\"lambda-incomplete\\\":{\\\"match\\\":\\\"\\\\\\\\blambda(?=\\\\\\\\s*[,)])\\\",\\\"name\\\":\\\"storage.type.function.lambda.python\\\"},\\\"lambda-nested-incomplete\\\":{\\\"match\\\":\\\"\\\\\\\\blambda(?=\\\\\\\\s*[:,)])\\\",\\\"name\\\":\\\"storage.type.function.lambda.python\\\"},\\\"lambda-parameter-with-default\\\":{\\\"begin\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.python\\\"}},\\\"end\\\":\\\"(,)|(?=:|$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"line-continuation\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.continuation.line.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.line.continuation.python\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\s*(\\\\\\\\S.*$\\\\\\\\n?)\\\"},{\\\"begin\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\s*$\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.continuation.line.python\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*$)|(?!(\\\\\\\\s*[rR]?(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"|\\\\\\\\'|\\\\\\\\\\\\\\\"))|(\\\\\\\\G$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"list\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.list.begin.python\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.list.end.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(True|False|None|NotImplemented|Ellipsis)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.python\\\"},{\\\"include\\\":\\\"#number\\\"}]},\\\"loose-default\\\":{\\\"begin\\\":\\\"(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.python\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"magic-function-names\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.magic.python\\\"}},\\\"comment\\\":\\\"these methods have magic interpretation by python and are generally called\\\\nindirectly through syntactic constructs\\\\n\\\",\\\"match\\\":\\\"\\\\\\\\b(__(?:abs|add|aenter|aexit|aiter|and|anext|await|bool|call|ceil|class_getitem|cmp|coerce|complex|contains|copy|deepcopy|del|delattr|delete|delitem|delslice|dir|div|divmod|enter|eq|exit|float|floor|floordiv|format|ge|get|getattr|getattribute|getinitargs|getitem|getnewargs|getslice|getstate|gt|hash|hex|iadd|iand|idiv|ifloordiv||ilshift|imod|imul|index|init|instancecheck|int|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|long|lshift|lt|missing|mod|mul|ne|neg|new|next|nonzero|oct|or|pos|pow|radd|rand|rdiv|rdivmod|reduce|reduce_ex|repr|reversed|rfloordiv||rlshift|rmod|rmul|ror|round|rpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|set_name|setslice|setstate|sizeof|str|sub|subclasscheck|truediv|trunc|unicode|xor|matmul|rmatmul|imatmul|init_subclass|set_name|fspath|bytes|prepare|length_hint)__)\\\\\\\\b\\\"},\\\"magic-names\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#magic-function-names\\\"},{\\\"include\\\":\\\"#magic-variable-names\\\"}]},\\\"magic-variable-names\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.variable.magic.python\\\"}},\\\"comment\\\":\\\"magic variables which a class/module may have.\\\",\\\"match\\\":\\\"\\\\\\\\b(__(?:all|annotations|bases|builtins|class|struct|trait|closure|code|debug|defaults|dict|doc|file|func|globals|kwdefaults|match_args|members|metaclass|methods|module|mro|mro_entries|name|qualname|post_init|self|signature|slots|subclasses|version|weakref|wrapped|classcell|spec|path|package|future|traceback)__)\\\\\\\\b\\\"},\\\"member-access\\\":{\\\"begin\\\":\\\"(\\\\\\\\.)\\\\\\\\s*(?!\\\\\\\\.)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.python\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\S)(?=\\\\\\\\W)|(^|(?<=\\\\\\\\s))(?=[^\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s])|$\\\",\\\"name\\\":\\\"meta.member.access.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#member-access-base\\\"},{\\\"include\\\":\\\"#member-access-attribute\\\"}]},\\\"member-access-attribute\\\":{\\\"comment\\\":\\\"Highlight attribute access in otherwise non-specialized cases.\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.attribute.python\\\"},\\\"member-access-base\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#magic-names\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#special-names\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"include\\\":\\\"#item-access\\\"}]},\\\"member-access-class\\\":{\\\"begin\\\":\\\"(\\\\\\\\.)\\\\\\\\s*(?!\\\\\\\\.)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.python\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\S)(?=\\\\\\\\W)|$\\\",\\\"name\\\":\\\"meta.member.access.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#call-wrapper-inheritance\\\"},{\\\"include\\\":\\\"#member-access-base\\\"},{\\\"include\\\":\\\"#inheritance-identifier\\\"}]},\\\"meta_parameters\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.python\\\"}},\\\"name\\\":\\\"meta.function.parameters.python\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.annotation.python\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#comments\\\"}]},\\\"number\\\":{\\\"name\\\":\\\"constant.numeric.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#number-float\\\"},{\\\"include\\\":\\\"#number-dec\\\"},{\\\"include\\\":\\\"#number-hex\\\"},{\\\"include\\\":\\\"#number-oct\\\"},{\\\"include\\\":\\\"#number-bin\\\"},{\\\"include\\\":\\\"#number-long\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9]+\\\\\\\\w+\\\",\\\"name\\\":\\\"invalid.illegal.name.python\\\"}]},\\\"number-bin\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(0[bB])(_?[01])+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.bin.python\\\"},\\\"number-dec\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.imaginary.number.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.dec.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(?:[1-9](?:_?[0-9])*|0+|[0-9](?:_?[0-9])*([jJ])|0([0-9]+)(?![eE\\\\\\\\.]))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.dec.python\\\"},\\\"number-float\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.imaginary.number.python\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:\\\\\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\\\\\.)(?:[eE][+-]?[0-9](?:_?[0-9])*)?|[0-9](?:_?[0-9])*(?:[eE][+-]?[0-9](?:_?[0-9])*))([jJ])?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.python\\\"},\\\"number-hex\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(0[xX])(_?[0-9a-fA-F])+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.python\\\"},\\\"number-long\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"comment\\\":\\\"this is to support python2 syntax for long ints\\\",\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])([1-9][0-9]*|0)([lL])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.bin.python\\\"},\\\"number-oct\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(0[oO])(_?[0-7])+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.oct.python\\\"},\\\"odd-function-call\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\]|\\\\\\\\))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"comment\\\":\\\"A bit obscured function call where there may have been an\\\\narbitrary number of other operations to get the function.\\\\nE.g. \\\\\\\"arr[idx](args)\\\\\\\"\\\\n\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"operator\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.bitwise.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.comparison.python\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(?:(and|or|not|in|is)|(for|if|else|await|(?:yield(?:\\\\\\\\s+from)?)))(?!\\\\\\\\s*:)\\\\\\\\b|(<<|>>|&|\\\\\\\\||\\\\\\\\^|~)|(\\\\\\\\*\\\\\\\\*|\\\\\\\\*|\\\\\\\\+|-|%|//|/|@)|(!=|==|>=|<=|<|>)|(:=)\\\"},\\\"parameter-special\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.language.special.self.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.function.language.special.cls.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b((self)|(cls))\\\\\\\\b\\\\\\\\s*(?:(,)|(?=\\\\\\\\)))\\\"},\\\"parameters\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.python\\\"}},\\\"name\\\":\\\"meta.function.parameters.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(owned|borrowed|inout)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier\\\"},{\\\"match\\\":\\\"/\\\",\\\"name\\\":\\\"keyword.operator.positional.parameter.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\*\\\\\\\\*|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.unpacking.parameter.python\\\"},{\\\"include\\\":\\\"#lambda-incomplete\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#parameter-special\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(?:(,)|(?=[)#\\\\\\\\n=]))\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#loose-default\\\"},{\\\"include\\\":\\\"#annotated-parameter\\\"}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.colon.python\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.element.python\\\"}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-single-three-line\\\"},{\\\"include\\\":\\\"#regexp-double-three-line\\\"},{\\\"include\\\":\\\"#regexp-single-one-line\\\"},{\\\"include\\\":\\\"#regexp-double-one-line\\\"}]},\\\"regexp-backreference\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.backreference.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(\\\\\\\\?P=\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?)(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.backreference.named.regexp\\\"},\\\"regexp-backreference-number\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.backreference.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d?)\\\",\\\"name\\\":\\\"meta.backreference.regexp\\\"},\\\"regexp-base-common\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"support.other.match.any.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\^\\\",\\\"name\\\":\\\"support.other.match.begin.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\",\\\"name\\\":\\\"support.other.match.end.regexp\\\"},{\\\"match\\\":\\\"[+*?]\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.disjunction.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-sequence\\\"}]},\\\"regexp-base-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-quantifier\\\"},{\\\"include\\\":\\\"#regexp-base-common\\\"}]},\\\"regexp-charecter-set-escapes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[abfnrtv\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-special\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{1,3})\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-character\\\"},{\\\"include\\\":\\\"#regexp-escape-unicode\\\"},{\\\"include\\\":\\\"#regexp-escape-catchall\\\"}]},\\\"regexp-double-one-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\")|(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"regexp-double-three-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"}]},\\\"regexp-escape-catchall\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(.|\\\\\\\\n)\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},\\\"regexp-escape-character\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|0[0-7]{1,2}|[0-7]{3})\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},\\\"regexp-escape-sequence\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-escape-special\\\"},{\\\"include\\\":\\\"#regexp-escape-character\\\"},{\\\"include\\\":\\\"#regexp-escape-unicode\\\"},{\\\"include\\\":\\\"#regexp-backreference-number\\\"},{\\\"include\\\":\\\"#regexp-escape-catchall\\\"}]},\\\"regexp-escape-special\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([AbBdDsSwWZ])\\\",\\\"name\\\":\\\"support.other.escape.special.regexp\\\"},\\\"regexp-escape-unicode\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.unicode.regexp\\\"},\\\"regexp-flags\\\":{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\?[aiLmsux]+\\\\\\\\)\\\",\\\"name\\\":\\\"storage.modifier.flag.regexp\\\"},\\\"regexp-quantifier\\\":{\\\"match\\\":\\\"\\\\\\\\{(\\\\\\\\d+|\\\\\\\\d+,(\\\\\\\\d+)?|,\\\\\\\\d+)\\\\\\\\}\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},\\\"regexp-single-one-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\\')\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"regexp-single-three-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\\'\\\\\\\\'\\\\\\\\')\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\'\\\\\\\\'\\\\\\\\')\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"}]},\\\"return-annotation\\\":{\\\"begin\\\":\\\"(->)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.annotation.result.python\\\"}},\\\"end\\\":\\\"(?=:)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"round-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.begin.python\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.end.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"semicolon\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\;$\\\",\\\"name\\\":\\\"invalid.deprecated.semicolon.python\\\"}]},\\\"single-one-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"single-one-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"single-one-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#single-one-regexp-character-set\\\"},{\\\"include\\\":\\\"#single-one-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#single-one-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookahead\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#single-one-regexp-conditional\\\"},{\\\"include\\\":\\\"#single-one-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#single-one-regexp-parentheses\\\"}]},\\\"single-one-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-three-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"single-three-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"single-three-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#single-three-regexp-character-set\\\"},{\\\"include\\\":\\\"#single-three-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#single-three-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookahead\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#single-three-regexp-conditional\\\"},{\\\"include\\\":\\\"#single-three-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#single-three-regexp-parentheses\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"special-names\\\":{\\\"match\\\":\\\"\\\\\\\\b(_*[[:upper:]][_\\\\\\\\d]*[[:upper:]])[[:upper:]\\\\\\\\d]*(_\\\\\\\\w*)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.caps.python\\\"},\\\"special-variables\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.language.special.self.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.language.special.cls.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(?:(self)|(cls))\\\\\\\\b\\\"},\\\"statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#function-declaration\\\"},{\\\"include\\\":\\\"#generator\\\"},{\\\"include\\\":\\\"#statement-keyword\\\"},{\\\"include\\\":\\\"#assignment-operator\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#semicolon\\\"}]},\\\"statement-keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((async\\\\\\\\s+)?\\\\\\\\s*(def|fn))\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.function.python\\\"},{\\\"comment\\\":\\\"if `as` is eventually followed by `:` or line continuation\\\\nit's probably control flow like:\\\\n with foo as bar, \\\\\\\\\\\\n Foo as Bar:\\\\n try:\\\\n do_stuff()\\\\n except Exception as e:\\\\n pass\\\\n\\\",\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)as\\\\\\\\b(?=.*[:\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"keyword.control.flow.python\\\"},{\\\"comment\\\":\\\"other legal use of `as` is in an import\\\",\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)as\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.python\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(async|continue|del|assert|break|finally|for|from|elif|else|if|except|pass|raise|return|try|while|with)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.python\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(global|nonlocal)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.declaration.python\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(class|struct|trait)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(case|match)(?=\\\\\\\\s*([-+\\\\\\\\w\\\\\\\\d(\\\\\\\\[{'\\\\\\\":#]|$))\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.declaration.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(var|let|alias) \\\\\\\\s*([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-quoted-single-line\\\"},{\\\"include\\\":\\\"#string-bin-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-bin-quoted-single-line\\\"},{\\\"include\\\":\\\"#string-raw-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-raw-quoted-single-line\\\"},{\\\"include\\\":\\\"#string-raw-bin-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-raw-bin-quoted-single-line\\\"},{\\\"include\\\":\\\"#fstring-fnorm-quoted-multi-line\\\"},{\\\"include\\\":\\\"#fstring-fnorm-quoted-single-line\\\"},{\\\"include\\\":\\\"#fstring-normf-quoted-multi-line\\\"},{\\\"include\\\":\\\"#fstring-normf-quoted-single-line\\\"},{\\\"include\\\":\\\"#fstring-raw-quoted-multi-line\\\"},{\\\"include\\\":\\\"#fstring-raw-quoted-single-line\\\"}]},\\\"string-bin-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bB])('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.binary.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-bin-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bB])((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.binary.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-brace-formatting\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"({{|}}|(?:{\\\\\\\\w*(\\\\\\\\.[[:alpha:]_]\\\\\\\\w*|\\\\\\\\[[^\\\\\\\\]'\\\\\\\"]+\\\\\\\\])*(![rsa])?(:\\\\\\\\w?[<>=^]?[-+ ]?\\\\\\\\#?\\\\\\\\d*,?(\\\\\\\\.\\\\\\\\d+)?[bcdeEfFgGnosxX%]?)?}))\\\",\\\"name\\\":\\\"meta.format.brace.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"({\\\\\\\\w*(\\\\\\\\.[[:alpha:]_]\\\\\\\\w*|\\\\\\\\[[^\\\\\\\\]'\\\\\\\"]+\\\\\\\\])*(![rsa])?(:)[^'\\\\\\\"{}\\\\\\\\n]*(?:\\\\\\\\{[^'\\\\\\\"}\\\\\\\\n]*?\\\\\\\\}[^'\\\\\\\"{}\\\\\\\\n]*)*})\\\",\\\"name\\\":\\\"meta.format.brace.python\\\"}]},\\\"string-consume-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\"\\\\\\\\n\\\\\\\\\\\\\\\\]\\\"},\\\"string-entity\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-formatting\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"match\\\":\\\"(%(\\\\\\\\([\\\\\\\\w\\\\\\\\s]*\\\\\\\\))?[-+#0 ]*(\\\\\\\\d+|\\\\\\\\*)?(\\\\\\\\.(\\\\\\\\d+|\\\\\\\\*))?([hlL])?[diouxXeEfFgGcrsab%])\\\",\\\"name\\\":\\\"meta.format.percent.python\\\"},\\\"string-line-continuation\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\$\\\",\\\"name\\\":\\\"constant.language.python\\\"},\\\"string-mojo-code-block\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*\\\\\\\\`{3,})(mojo)$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.single.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.single.python\\\"}},\\\"contentName\\\":\\\"source.mojo\\\",\\\"end\\\":\\\"^(\\\\\\\\1)$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.single.python\\\"}},\\\"name\\\":\\\"meta.embedded.block.mojo\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.mojo\\\"}]},\\\"string-multi-bad-brace1-formatting-raw\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\"))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"}]},\\\"string-multi-bad-brace1-formatting-unicode\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\"))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"}]},\\\"string-multi-bad-brace2-formatting-raw\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-multi-bad-brace2-formatting-unicode\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-quoted-multi-line\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b([rR])(?=[uU]))?([uU])?('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-multi-bad-brace1-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-multi-bad-brace2-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-unicode-guts\\\"}]},\\\"string-quoted-single-line\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b([rR])(?=[uU]))?([uU])?((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-single-bad-brace1-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-single-bad-brace2-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-unicode-guts\\\"}]},\\\"string-raw-bin-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-raw-bin-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:R[bB]|[bB]R))('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.binary.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-raw-bin-guts\\\"}]},\\\"string-raw-bin-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:R[bB]|[bB]R))((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.binary.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-raw-bin-guts\\\"}]},\\\"string-raw-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"},{\\\"include\\\":\\\"#string-brace-formatting\\\"}]},\\\"string-raw-quoted-multi-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]R)|(R))('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\4)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-multi-bad-brace1-formatting-raw\\\"},{\\\"include\\\":\\\"#string-multi-bad-brace2-formatting-raw\\\"},{\\\"include\\\":\\\"#string-raw-guts\\\"}]},\\\"string-raw-quoted-single-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]R)|(R))((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\4)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-single-bad-brace1-formatting-raw\\\"},{\\\"include\\\":\\\"#string-single-bad-brace2-formatting-raw\\\"},{\\\"include\\\":\\\"#string-raw-guts\\\"}]},\\\"string-single-bad-brace1-formatting-raw\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"}]},\\\"string-single-bad-brace1-formatting-unicode\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"}]},\\\"string-single-bad-brace2-formatting-raw\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-single-bad-brace2-formatting-unicode\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-unicode-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-mojo-code-block\\\"},{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#string-entity\\\"},{\\\"include\\\":\\\"#string-brace-formatting\\\"}]}},\\\"scopeName\\\":\\\"source.mojo\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Move\\\",\\\"name\\\":\\\"move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#address\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#module\\\"},{\\\"include\\\":\\\"#script\\\"},{\\\"include\\\":\\\"#annotation\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#annotation\\\"},{\\\"include\\\":\\\"#entry\\\"},{\\\"include\\\":\\\"#public-scope\\\"},{\\\"include\\\":\\\"#public\\\"},{\\\"include\\\":\\\"#native\\\"},{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#friend\\\"},{\\\"include\\\":\\\"#const\\\"},{\\\"include\\\":\\\"#struct\\\"},{\\\"include\\\":\\\"#has_ability\\\"},{\\\"include\\\":\\\"#enum\\\"},{\\\"include\\\":\\\"#macro\\\"},{\\\"include\\\":\\\"#fun\\\"},{\\\"include\\\":\\\"#spec\\\"}],\\\"repository\\\":{\\\"=== DEPRECATED_BELOW ===\\\":{},\\\"abilities\\\":{\\\"comment\\\":\\\"Ability\\\",\\\"match\\\":\\\"\\\\\\\\b(store|key|drop|copy)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.ability.move\\\"},\\\"address\\\":{\\\"begin\\\":\\\"\\\\\\\\b(address)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.type.address.keyword.move\\\"}},\\\"comment\\\":\\\"Address block\\\",\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.address_block.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?<=address)\\\",\\\"comment\\\":\\\"Address value/const\\\",\\\"end\\\":\\\"(?=[{])\\\",\\\"name\\\":\\\"meta.address.definition.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#address_literal\\\"},{\\\"comment\\\":\\\"Named Address\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.move\\\"}]},{\\\"include\\\":\\\"#module\\\"}]},\\\"annotation\\\":{\\\"begin\\\":\\\"#\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"support.constant.annotation.move\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Annotation name\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\s*(?=\\\\\\\\=)\\\",\\\"name\\\":\\\"meta.annotation.name.move\\\"},{\\\"begin\\\":\\\"=\\\",\\\"comment\\\":\\\"Annotation value\\\",\\\"end\\\":\\\"(?=[,\\\\\\\\]])\\\",\\\"name\\\":\\\"meta.annotation.value.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literals\\\"}]}]},\\\"as\\\":{\\\"comment\\\":\\\"Keyword as (highlighted)\\\",\\\"match\\\":\\\"\\\\\\\\b(as)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.as.move\\\"},\\\"as-import\\\":{\\\"comment\\\":\\\"Keyword as in import statement; not highlighted\\\",\\\"match\\\":\\\"\\\\\\\\b(as)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.import.as.move\\\"},\\\"block\\\":{\\\"begin\\\":\\\"{\\\",\\\"comment\\\":\\\"Block expression or definition\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.block.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"}]},\\\"block-comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*[\\\\\\\\*!](?![\\\\\\\\*/])\\\",\\\"comment\\\":\\\"Block documentation comment\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.move\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"comment\\\":\\\"Block comment\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.move\\\"}]},\\\"capitalized\\\":{\\\"comment\\\":\\\"MyType - capitalized type name\\\",\\\"match\\\":\\\"\\\\\\\\b([A-Z][a-zA-Z_0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.use.move\\\"},\\\"comments\\\":{\\\"name\\\":\\\"meta.comments.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#doc-comments\\\"},{\\\"include\\\":\\\"#line-comments\\\"},{\\\"include\\\":\\\"#block-comments\\\"}]},\\\"const\\\":{\\\"begin\\\":\\\"\\\\\\\\b(const)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.const.move\\\"}},\\\"end\\\":\\\";\\\",\\\"name\\\":\\\"meta.const.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#primitives\\\"},{\\\"include\\\":\\\"#literals\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Z][A-Z_0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.move\\\"},{\\\"include\\\":\\\"#error_const\\\"}]},\\\"control\\\":{\\\"comment\\\":\\\"Control flow\\\",\\\"match\\\":\\\"\\\\\\\\b(return|while|loop|if|else|break|continue|abort)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.move\\\"},\\\"doc-comments\\\":{\\\"begin\\\":\\\"///\\\",\\\"comment\\\":\\\"Documentation comment\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.block.documentation.move\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.underline.link.move\\\"}},\\\"comment\\\":\\\"Escaped member / link\\\",\\\"match\\\":\\\"`(\\\\\\\\w+)`\\\"}]},\\\"entry\\\":{\\\"comment\\\":\\\"entry\\\",\\\"match\\\":\\\"\\\\\\\\b(entry)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.visibility.entry.move\\\"},\\\"enum\\\":{\\\"begin\\\":\\\"\\\\\\\\b(enum)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.enum.move\\\"}},\\\"comment\\\":\\\"Enum syntax\\\",\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.enum.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"},{\\\"include\\\":\\\"#type_param\\\"},{\\\"comment\\\":\\\"Enum name (ident)\\\",\\\"match\\\":\\\"\\\\\\\\b[A-Z][a-zA-Z_0-9]*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.enum.move\\\"},{\\\"include\\\":\\\"#has\\\"},{\\\"include\\\":\\\"#abilities\\\"},{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.enum.definition.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Z][A-Za-z_0-9]*)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.enum.move\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Z][A-Za-z_0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.enum.move\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.enum.tuple.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#expr_generic\\\"},{\\\"include\\\":\\\"#capitalized\\\"},{\\\"include\\\":\\\"#types\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.enum.struct.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"},{\\\"include\\\":\\\"#expr_generic\\\"},{\\\"include\\\":\\\"#capitalized\\\"},{\\\"include\\\":\\\"#types\\\"}]}]}]},\\\"error_const\\\":{\\\"match\\\":\\\"\\\\\\\\b(E[A-Z][A-Za-z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.error.const.move\\\"},\\\"escaped_identifier\\\":{\\\"begin\\\":\\\"`\\\",\\\"comment\\\":\\\"Escaped variable\\\",\\\"end\\\":\\\"`\\\",\\\"name\\\":\\\"variable.language.escaped.move\\\"},\\\"expr\\\":{\\\"comment\\\":\\\"Aggregate Expression\\\",\\\"name\\\":\\\"meta.expression.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"},{\\\"include\\\":\\\"#expr_generic\\\"},{\\\"include\\\":\\\"#packed_field\\\"},{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#as\\\"},{\\\"include\\\":\\\"#mut\\\"},{\\\"include\\\":\\\"#let\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#literals\\\"},{\\\"include\\\":\\\"#control\\\"},{\\\"include\\\":\\\"#move_copy\\\"},{\\\"include\\\":\\\"#resource_methods\\\"},{\\\"include\\\":\\\"#self_access\\\"},{\\\"include\\\":\\\"#module_access\\\"},{\\\"include\\\":\\\"#label\\\"},{\\\"include\\\":\\\"#macro_call\\\"},{\\\"include\\\":\\\"#local_call\\\"},{\\\"include\\\":\\\"#method_call\\\"},{\\\"include\\\":\\\"#path_access\\\"},{\\\"include\\\":\\\"#match_expression\\\"},{\\\"match\\\":\\\"\\\\\\\\$(?=[a-z])\\\",\\\"name\\\":\\\"keyword.operator.macro.dollar.move\\\"},{\\\"match\\\":\\\"(?<=[$])[a-z][A-Z_0-9a-z]*\\\",\\\"name\\\":\\\"variable.other.meta.move\\\"},{\\\"comment\\\":\\\"ALL_CONST_CAPS\\\",\\\"match\\\":\\\"\\\\\\\\b([A-Z][A-Z_]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.move\\\"},{\\\"include\\\":\\\"#error_const\\\"},{\\\"comment\\\":\\\"CustomType\\\",\\\"match\\\":\\\"\\\\\\\\b([A-Z][a-zA-Z_0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.move\\\"},{\\\"include\\\":\\\"#paren\\\"},{\\\"include\\\":\\\"#block\\\"}]},\\\"expr_generic\\\":{\\\"begin\\\":\\\"<(?=([\\\\\\\\sa-z_,0-9A-Z<>]+>))\\\",\\\"comment\\\":\\\"< angle brackets >\\\",\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"meta.expression.generic.type.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#capitalized\\\"},{\\\"include\\\":\\\"#expr_generic\\\"}]},\\\"friend\\\":{\\\"begin\\\":\\\"\\\\\\\\b(friend)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.type.move\\\"}},\\\"end\\\":\\\";\\\",\\\"name\\\":\\\"meta.friend.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#address_literal\\\"},{\\\"comment\\\":\\\"Name of the imported module\\\",\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z][A-Za-z_0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.module.move\\\"}]},\\\"fun\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#fun_signature\\\"},{\\\"include\\\":\\\"#block\\\"}]},\\\"fun_body\\\":{\\\"begin\\\":\\\"{\\\",\\\"comment\\\":\\\"Function body\\\",\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.fun_body.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"}]},\\\"fun_call\\\":{\\\"begin\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\s*(?:<[\\\\\\\\w\\\\\\\\s,]+>)?\\\\\\\\s*[(]\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.move\\\"}},\\\"comment\\\":\\\"Function call\\\",\\\"end\\\":\\\"[)]\\\",\\\"name\\\":\\\"meta.fun_call.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#resource_methods\\\"},{\\\"include\\\":\\\"#self_access\\\"},{\\\"include\\\":\\\"#module_access\\\"},{\\\"include\\\":\\\"#move_copy\\\"},{\\\"include\\\":\\\"#literals\\\"},{\\\"include\\\":\\\"#fun_call\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#mut\\\"},{\\\"include\\\":\\\"#as\\\"}]},\\\"fun_signature\\\":{\\\"begin\\\":\\\"\\\\\\\\b(fun)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.fun.move\\\"}},\\\"comment\\\":\\\"Function signature\\\",\\\"end\\\":\\\"(?=[;{])\\\",\\\"name\\\":\\\"meta.fun_signature.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#module_access\\\"},{\\\"include\\\":\\\"#capitalized\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#mut\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\bfun)\\\",\\\"comment\\\":\\\"Function name\\\",\\\"end\\\":\\\"(?=[<(])\\\",\\\"name\\\":\\\"meta.function_name.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.move\\\"}]},{\\\"include\\\":\\\"#type_param\\\"},{\\\"begin\\\":\\\"[(]\\\",\\\"comment\\\":\\\"Parentheses\\\",\\\"end\\\":\\\"[)]\\\",\\\"name\\\":\\\"meta.parentheses.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#self_access\\\"},{\\\"include\\\":\\\"#expr_generic\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"},{\\\"include\\\":\\\"#module_access\\\"},{\\\"include\\\":\\\"#capitalized\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#mut\\\"}]},{\\\"comment\\\":\\\"Keyword acquires\\\",\\\"match\\\":\\\"\\\\\\\\b(acquires)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier\\\"}]},\\\"has\\\":{\\\"comment\\\":\\\"Has Abilities\\\",\\\"match\\\":\\\"\\\\\\\\b(has)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.ability.has.move\\\"},\\\"has_ability\\\":{\\\"begin\\\":\\\"(?<=[})])\\\\\\\\s+(has)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.type.move\\\"}},\\\"end\\\":\\\";\\\",\\\"name\\\":\\\"meta.has.ability.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#abilities\\\"}]},\\\"ident\\\":{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z][A-Z_a-z0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.identifier.move\\\"},\\\"import\\\":{\\\"begin\\\":\\\"\\\\\\\\b(use)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.type.move\\\"}},\\\"end\\\":\\\";\\\",\\\"name\\\":\\\"meta.import.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#use_fun\\\"},{\\\"include\\\":\\\"#address_literal\\\"},{\\\"include\\\":\\\"#as-import\\\"},{\\\"comment\\\":\\\"Uppercase entities\\\",\\\"match\\\":\\\"\\\\\\\\b([A-Z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.move\\\"},{\\\"begin\\\":\\\"{\\\",\\\"comment\\\":\\\"Module members\\\",\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#as-import\\\"},{\\\"comment\\\":\\\"Uppercase entities\\\",\\\"match\\\":\\\"\\\\\\\\b([A-Z]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.move\\\"}]},{\\\"comment\\\":\\\"Name of the imported module\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.entity.name.type.module.move\\\"}]},\\\"inline\\\":{\\\"comment\\\":\\\"inline\\\",\\\"match\\\":\\\"\\\\\\\\b(inline)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.visibility.inline.move\\\"},\\\"label\\\":{\\\"comment\\\":\\\"Label\\\",\\\"match\\\":\\\"'[a-z][a-z_0-9]*\\\",\\\"name\\\":\\\"string.quoted.single.label.move\\\"},\\\"let\\\":{\\\"comment\\\":\\\"Keyword let\\\",\\\"match\\\":\\\"\\\\\\\\b(let)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.move\\\"},\\\"line-comments\\\":{\\\"begin\\\":\\\"//\\\",\\\"comment\\\":\\\"Single-line comment\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.move\\\"},\\\"literals\\\":{\\\"comment\\\":\\\"Literals supported in Move\\\",\\\"name\\\":\\\"meta.literal.move\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"base16 address literal\\\",\\\"match\\\":\\\"@0x[A-F0-9a-f]+\\\",\\\"name\\\":\\\"support.constant.address.base16.move\\\"},{\\\"comment\\\":\\\"named address literal @[ident]\\\",\\\"match\\\":\\\"@[a-zA-Z][a-zA-Z_0-9]*\\\",\\\"name\\\":\\\"support.constant.address.name.move\\\"},{\\\"comment\\\":\\\"Hex literal\\\",\\\"match\\\":\\\"0x[_a-fA-F0-9]+(?:u(?:8|16|32|64|128|256))?\\\",\\\"name\\\":\\\"constant.numeric.hex.move\\\"},{\\\"comment\\\":\\\"Numeric literal\\\",\\\"match\\\":\\\"(?<!(?:\\\\\\\\w|(?:(?<!\\\\\\\\.)\\\\\\\\.)))[0-9][_0-9]*(?:\\\\\\\\.(?!\\\\\\\\.)(?:[0-9][_0-9]*)?)?(?:[eE][+\\\\\\\\-]?[_0-9]+)?(?:[u](?:8|16|32|64|128|256))?\\\",\\\"name\\\":\\\"constant.numeric.move\\\"},{\\\"begin\\\":\\\"\\\\\\\\bb\\\\\\\"\\\",\\\"comment\\\":\\\"vector ascii bytestring literal\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"meta.vector.literal.ascii.move\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"character escape\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.move\\\"},{\\\"comment\\\":\\\"Special symbol escape\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[nrt\\\\\\\\0\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.move\\\"},{\\\"comment\\\":\\\"HEX Escape\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[a-fA-F0-9][A-Fa-f0-9]\\\",\\\"name\\\":\\\"constant.character.escape.hex.move\\\"},{\\\"comment\\\":\\\"ASCII Character\\\",\\\"match\\\":\\\"[\\\\\\\\x00-\\\\\\\\x7F]\\\",\\\"name\\\":\\\"string.quoted.double.raw.move\\\"}]},{\\\"begin\\\":\\\"x\\\\\\\"\\\",\\\"comment\\\":\\\"vector hex literal\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"meta.vector.literal.hex.move\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"vector hex literal\\\",\\\"match\\\":\\\"[A-Fa-f0-9]+\\\",\\\"name\\\":\\\"constant.character.move\\\"}]},{\\\"comment\\\":\\\"bool literal\\\",\\\"match\\\":\\\"\\\\\\\\b(?:true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.move\\\"},{\\\"begin\\\":\\\"vector\\\\\\\\[\\\",\\\"comment\\\":\\\"vector literal (macro?)\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"meta.vector.literal.macro.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"}]}]},\\\"local_call\\\":{\\\"comment\\\":\\\"call to a local / imported fun\\\",\\\"match\\\":\\\"\\\\\\\\b([a-z][_a-z0-9]*)(?=[<\\\\\\\\(])\\\",\\\"name\\\":\\\"entity.name.function.call.local.move\\\"},\\\"macro\\\":{\\\"begin\\\":\\\"\\\\\\\\b(macro)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.macro.move\\\"}},\\\"comment\\\":\\\"macro fun [ident] {}\\\",\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.macro.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#fun\\\"}]},\\\"macro_call\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"support.function.macro.move\\\"}},\\\"comment\\\":\\\"Macro fun call\\\",\\\"match\\\":\\\"(\\\\\\\\b|\\\\\\\\.)([a-z][A-Za-z0-9_]*)!\\\",\\\"name\\\":\\\"meta.macro.call\\\"},\\\"match_expression\\\":{\\\"begin\\\":\\\"\\\\\\\\b(match)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.match.move\\\"}},\\\"comment\\\":\\\"enum pattern matching\\\",\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.match.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"begin\\\":\\\"{\\\",\\\"comment\\\":\\\"Block expression or definition\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.match.block.move\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"arrow operator\\\",\\\"match\\\":\\\"\\\\\\\\b(=>)\\\\\\\\b\\\",\\\"name\\\":\\\"operator.match.move\\\"},{\\\"include\\\":\\\"#expr\\\"}]},{\\\"include\\\":\\\"#expr\\\"}]},\\\"method_call\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.path.move\\\"}},\\\"comment\\\":\\\"<expr>.[ident]<>?() call\\\",\\\"match\\\":\\\"\\\\\\\\.([a-z][_a-z0-9]*)(?=[<\\\\\\\\(])\\\",\\\"name\\\":\\\"meta.path.call.move\\\"},\\\"module\\\":{\\\"begin\\\":\\\"\\\\\\\\b(module)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.type.move\\\"}},\\\"comment\\\":\\\"Module definition\\\",\\\"end\\\":\\\"(?<=[;}])\\\",\\\"name\\\":\\\"meta.module.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\b(module)\\\\\\\\b)\\\",\\\"comment\\\":\\\"Module name\\\",\\\"end\\\":\\\"(?=[;{])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\b(module))\\\",\\\"comment\\\":\\\"Module namespace / address\\\",\\\"end\\\":\\\"(?=[(::){])\\\",\\\"name\\\":\\\"constant.other.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"}]},{\\\"begin\\\":\\\"(?<=::)\\\",\\\"comment\\\":\\\"Module name\\\",\\\"end\\\":\\\"(?=[\\\\\\\\s;{])\\\",\\\"name\\\":\\\"entity.name.type.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"}]}]},{\\\"begin\\\":\\\"{\\\",\\\"comment\\\":\\\"Module scope\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.module_scope.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#annotation\\\"},{\\\"include\\\":\\\"#entry\\\"},{\\\"include\\\":\\\"#public-scope\\\"},{\\\"include\\\":\\\"#public\\\"},{\\\"include\\\":\\\"#native\\\"},{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#friend\\\"},{\\\"include\\\":\\\"#const\\\"},{\\\"include\\\":\\\"#struct\\\"},{\\\"include\\\":\\\"#has_ability\\\"},{\\\"include\\\":\\\"#enum\\\"},{\\\"include\\\":\\\"#macro\\\"},{\\\"include\\\":\\\"#fun\\\"},{\\\"include\\\":\\\"#spec\\\"}]}]},\\\"module_access\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.entity.name.type.accessed.module.move\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.call.move\\\"}},\\\"comment\\\":\\\"Use of module type or method\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)::(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.module_access.move\\\"},\\\"module_label\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(module)\\\\\\\\b\\\",\\\"comment\\\":\\\"Module label, inline module definition\\\",\\\"end\\\":\\\";\\\\\\\\s*$\\\",\\\"name\\\":\\\"meta.module.label.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\bmodule\\\\\\\\b)\\\",\\\"comment\\\":\\\"Module namespace / address\\\",\\\"end\\\":\\\"(?=[(::){])\\\",\\\"name\\\":\\\"constant.other.move\\\"},{\\\"begin\\\":\\\"(?<=::)\\\",\\\"comment\\\":\\\"Module name\\\",\\\"end\\\":\\\"(?=[\\\\\\\\s{])\\\",\\\"name\\\":\\\"entity.name.type.move\\\"}]},\\\"move_copy\\\":{\\\"comment\\\":\\\"Keywords move and copy\\\",\\\"match\\\":\\\"\\\\\\\\b(move|copy)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.move\\\"},\\\"mut\\\":{\\\"comment\\\":\\\"Mutable reference and let mut\\\",\\\"match\\\":\\\"\\\\\\\\b(mut)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.mut.move\\\"},\\\"native\\\":{\\\"comment\\\":\\\"native\\\",\\\"match\\\":\\\"\\\\\\\\b(native)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.visibility.native.move\\\"},\\\"packed_field\\\":{\\\"comment\\\":\\\"[ident]: \\\",\\\"match\\\":\\\"[a-z][a-z0-9_]+\\\\\\\\s*:\\\\\\\\s*(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.struct.field.move\\\"},\\\"paren\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.paren.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expr\\\"}]},\\\"path_access\\\":{\\\"comment\\\":\\\"<expr>.[ident] access\\\",\\\"match\\\":\\\"\\\\\\\\.[a-z][_a-z0-9]*\\\\\\\\b\\\",\\\"name\\\":\\\"meta.path.access.move\\\"},\\\"phantom\\\":{\\\"comment\\\":\\\"Keyword phantom inside type parameters\\\",\\\"match\\\":\\\"\\\\\\\\b(phantom)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.phantom.move\\\"},\\\"primitives\\\":{\\\"comment\\\":\\\"Primitive types\\\",\\\"match\\\":\\\"\\\\\\\\b(u8|u16|u32|u64|u128|u256|address|bool|signer)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.primitives.move\\\"},\\\"public\\\":{\\\"comment\\\":\\\"public\\\",\\\"match\\\":\\\"\\\\\\\\b(public)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.visibility.public.move\\\"},\\\"public-scope\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\b(public))\\\\\\\\s*\\\\\\\\(\\\",\\\"comment\\\":\\\"public (friend/script/package)\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.public.scoped.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b(friend|script|package)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.public.scope.move\\\"}]},\\\"resource_methods\\\":{\\\"comment\\\":\\\"Methods to work with resource\\\",\\\"match\\\":\\\"\\\\\\\\b(borrow_global|borrow_global_mut|exists|move_from|move_to_sender|move_to)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.typed.move\\\"},\\\"script\\\":{\\\"begin\\\":\\\"\\\\\\\\b(script)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.script.move\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.script.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"{\\\",\\\"comment\\\":\\\"Script scope\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.script_scope.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#const\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#fun\\\"}]}]},\\\"self_access\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.language.self.move\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.call.move\\\"}},\\\"comment\\\":\\\"Use of Self\\\",\\\"match\\\":\\\"\\\\\\\\b(Self)::(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.self_access.move\\\"},\\\"spec\\\":{\\\"begin\\\":\\\"\\\\\\\\b(spec)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.spec.move\\\"}},\\\"end\\\":\\\"(?<=[;}])\\\",\\\"name\\\":\\\"meta.spec.move\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Spec target\\\",\\\"match\\\":\\\"\\\\\\\\b(module|schema|struct|fun)\\\",\\\"name\\\":\\\"storage.modifier.spec.target.move\\\"},{\\\"comment\\\":\\\"Spec define inline\\\",\\\"match\\\":\\\"\\\\\\\\b(define)\\\",\\\"name\\\":\\\"storage.modifier.spec.define.move\\\"},{\\\"comment\\\":\\\"Target name\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.move\\\"},{\\\"begin\\\":\\\"{\\\",\\\"comment\\\":\\\"Spec block\\\",\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#spec_block\\\"},{\\\"include\\\":\\\"#spec_types\\\"},{\\\"include\\\":\\\"#spec_define\\\"},{\\\"include\\\":\\\"#spec_keywords\\\"},{\\\"include\\\":\\\"#control\\\"},{\\\"include\\\":\\\"#fun_call\\\"},{\\\"include\\\":\\\"#literals\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#let\\\"}]}]},\\\"spec_block\\\":{\\\"begin\\\":\\\"{\\\",\\\"comment\\\":\\\"Spec block\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.spec_block.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#spec_block\\\"},{\\\"include\\\":\\\"#spec_types\\\"},{\\\"include\\\":\\\"#fun_call\\\"},{\\\"include\\\":\\\"#literals\\\"},{\\\"include\\\":\\\"#control\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#let\\\"}]},\\\"spec_define\\\":{\\\"begin\\\":\\\"\\\\\\\\b(define)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.move.spec\\\"}},\\\"comment\\\":\\\"Spec define keyword\\\",\\\"end\\\":\\\"(?=[;{])\\\",\\\"name\\\":\\\"meta.spec_define.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#spec_types\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\bdefine)\\\",\\\"comment\\\":\\\"Function name\\\",\\\"end\\\":\\\"(?=[(])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.move\\\"}]}]},\\\"spec_keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(global|pack|unpack|pragma|native|include|ensures|requires|invariant|apply|aborts_if|modifies)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.move.spec\\\"},\\\"spec_types\\\":{\\\"comment\\\":\\\"Spec-only types\\\",\\\"match\\\":\\\"\\\\\\\\b(range|num|vector|bool|u8|u16|u32|u64|u128|u256|address)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.vector.move\\\"},\\\"struct\\\":{\\\"begin\\\":\\\"\\\\\\\\b(struct)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.type.move\\\"}},\\\"end\\\":\\\"(?<=[};\\\\\\\\)])\\\",\\\"name\\\":\\\"meta.struct.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"},{\\\"include\\\":\\\"#has\\\"},{\\\"include\\\":\\\"#abilities\\\"},{\\\"comment\\\":\\\"Struct name (ident)\\\",\\\"match\\\":\\\"\\\\\\\\b[A-Z][a-zA-Z_0-9]*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.struct.move\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"comment\\\":\\\"Positional fields\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.struct.paren.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#capitalized\\\"},{\\\"include\\\":\\\"#types\\\"}]},{\\\"include\\\":\\\"#type_param\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"comment\\\":\\\"Simple struct\\\",\\\"end\\\":\\\"(?<=[)])\\\",\\\"name\\\":\\\"meta.struct.paren.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#types\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"comment\\\":\\\"Struct body\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.struct.body.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#self_access\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"},{\\\"include\\\":\\\"#module_access\\\"},{\\\"include\\\":\\\"#expr_generic\\\"},{\\\"include\\\":\\\"#capitalized\\\"},{\\\"include\\\":\\\"#types\\\"}]},{\\\"include\\\":\\\"#has_ability\\\"}]},\\\"struct_pack\\\":{\\\"begin\\\":\\\"(?<=[A-Za-z0-9_>])\\\\\\\\s*{\\\",\\\"comment\\\":\\\"Struct { field: value... }; identified as generic / ident followed by curly's\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.struct.pack.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},\\\"type_param\\\":{\\\"begin\\\":\\\"<\\\",\\\"comment\\\":\\\"Generic type param\\\",\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"meta.generic_param.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#phantom\\\"},{\\\"include\\\":\\\"#capitalized\\\"},{\\\"include\\\":\\\"#module_access\\\"},{\\\"include\\\":\\\"#abilities\\\"}]},\\\"types\\\":{\\\"comment\\\":\\\"Built-in types + vector\\\",\\\"name\\\":\\\"meta.types.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#primitives\\\"},{\\\"include\\\":\\\"#vector\\\"}]},\\\"use_fun\\\":{\\\"begin\\\":\\\"\\\\\\\\b(fun)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.fun.move\\\"}},\\\"comment\\\":\\\"use { fun } internals\\\",\\\"end\\\":\\\"(?=;)\\\",\\\"name\\\":\\\"meta.import.fun.move\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"comment\\\":\\\"as keyword\\\",\\\"match\\\":\\\"\\\\\\\\b(as)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.as.move\\\"},{\\\"comment\\\":\\\"Self keyword\\\",\\\"match\\\":\\\"\\\\\\\\b(Self)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.self.use.fun.move\\\"},{\\\"comment\\\":\\\"Function name\\\",\\\"match\\\":\\\"\\\\\\\\b(_______[a-z][a-z_0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.use.move\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#escaped_identifier\\\"},{\\\"include\\\":\\\"#capitalized\\\"}]},\\\"vector\\\":{\\\"comment\\\":\\\"vector type\\\",\\\"match\\\":\\\"\\\\\\\\b(vector)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.vector.move\\\"}},\\\"scopeName\\\":\\\"source.move\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Narrat Language\\\",\\\"name\\\":\\\"narrat\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#expression\\\"}],\\\"repository\\\":{\\\"commands\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(set|var)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.commands.variables.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(talk|think)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.commands.text.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(jump|run|wait|return|save|save_prompt)\\\",\\\"name\\\":\\\"keyword.commands.flow.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(log|clear_dialog)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.commands.helpers.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(set_screen|empty_layer|set_button)\\\",\\\"name\\\":\\\"keyword.commands.screens.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(play|pause|stop)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.commands.audio.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(notify|enable_notifications|disable_notifications)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.commands.notifications.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(set_stat|get_stat_value|add_stat)\\\",\\\"name\\\":\\\"keyword.commands.stats.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(neg|abs|random|random_float|random_from_args|min|max|clamp|floor|round|ceil|sqrt|^)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.commands.math.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(concat|join)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.commands.string.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(text_field)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.commands.text_field.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(add_level|set_level|add_xp|roll|get_level|get_xp)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.commands.skills.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(add_item|remove_item|enable_interaction|disable_interaction|has_item?|item_amount?)\\\",\\\"name\\\":\\\"keyword.commands.inventory.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\b(start_quest|start_objective|complete_objective|complete_quest|quest_started?|objective_started?|quest_completed?|objective_completed?)\\\",\\\"name\\\":\\\"keyword.commands.quests.narrat\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\/\\\\\\\\/.*$\\\",\\\"name\\\":\\\"comment.line.narrat\\\"}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#commands\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#primitives\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},\\\"interpolation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\w|\\\\\\\\.)+\\\",\\\"name\\\":\\\"variable.interpolation.narrat\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(if|else|choice)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\$[\\\\\\\\w|\\\\\\\\.]+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.value.narrat\\\"},{\\\"match\\\":\\\"^\\\\\\\\w+(?=(\\\\\\\\s|\\\\\\\\w)*:)\\\",\\\"name\\\":\\\"entity.name.function.narrat\\\"},{\\\"match\\\":\\\"^\\\\\\\\w+(?!(\\\\\\\\s|\\\\\\\\w)*:)\\\",\\\"name\\\":\\\"invalid.label.narrat\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\w)[^^](\\\\\\\\b\\\\\\\\w+\\\\\\\\b)(?=(\\\\\\\\s|\\\\\\\\w)*:)\\\",\\\"name\\\":\\\"entity.other.attribute-name\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(&&|\\\\\\\\|\\\\\\\\||!=|==|>=|<=|<|>|!|\\\\\\\\?)\\\\\\\\s\\\",\\\"name\\\":\\\"keyword.operator.logic.narrat\\\"},{\\\"match\\\":\\\"(\\\\\\\\+|-|\\\\\\\\*|\\\\\\\\/)\\\\\\\\s\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.narrat\\\"}]},\\\"paren-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.paren.open\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.paren.close\\\"}},\\\"name\\\":\\\"expression.group\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"primitives\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\btrue\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.true.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\bfalse\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.false.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\bnull\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.null.narrat\\\"},{\\\"match\\\":\\\"\\\\\\\\bundefined\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.undefined.narrat\\\"}]},\\\"strings\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.narrat\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.narrat\\\"},{\\\"begin\\\":\\\"%{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.template.open\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.template.close.narrat\\\"}},\\\"name\\\":\\\"expression.template\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]}]}},\\\"scopeName\\\":\\\"source.narrat\\\",\\\"aliases\\\":[\\\"nar\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Nextflow\\\",\\\"name\\\":\\\"nextflow\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nextflow\\\"}],\\\"repository\\\":{\\\"enum-def\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(enum)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s*{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.nextflow\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.groovy\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nextflow-groovy#comments\\\"},{\\\"include\\\":\\\"#enum-values\\\"}]},\\\"enum-values\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=;|^)\\\\\\\\s*\\\\\\\\b([A-Z0-9_]+)(?=\\\\\\\\s*(?:,|}|\\\\\\\\(|$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.enum.name.groovy\\\"}},\\\"end\\\":\\\",|(?=})|^(?!\\\\\\\\s*\\\\\\\\w+\\\\\\\\s*(?:,|$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.enum.value.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.seperator.parameter.groovy\\\"},{\\\"include\\\":\\\"#groovy-code\\\"}]}]}]},\\\"function-body\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s\\\"},{\\\"begin\\\":\\\"(?=(?:\\\\\\\\w|<)[^\\\\\\\\(]*\\\\\\\\s+(?:[\\\\\\\\w$]|<)+\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?=[\\\\\\\\w$]+\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"meta.method.return-type.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nextflow-groovy#types\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\\w$]+)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.nextflow\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.definition.method.signature.java\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[^)])\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.method.parameters.groovy\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[^,)])\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\))\\\",\\\"name\\\":\\\"meta.method.parameter.groovy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.separator.groovy\\\"},{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.groovy\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\))\\\",\\\"name\\\":\\\"meta.parameter.default.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nextflow-groovy#groovy-code\\\"}]},{\\\"include\\\":\\\"source.nextflow-groovy#parameters\\\"}]}]}]},{\\\"begin\\\":\\\"(?=<)\\\",\\\"end\\\":\\\"(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"meta.method.paramerised-type.groovy\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"<\\\",\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"storage.type.parameters.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nextflow-groovy#types\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.seperator.groovy\\\"}]}]},{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"(?=})\\\",\\\"name\\\":\\\"meta.method.body.java\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nextflow-groovy#groovy-code\\\"}]}]},\\\"function-def\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?:(?<=;|^|{)(?=\\\\\\\\s*(?:(?:def)|(?:(?:(?:boolean|byte|char|short|int|float|long|double)|(?:@?(?:[a-zA-Z]\\\\\\\\w*\\\\\\\\.)*[A-Z]+\\\\\\\\w*))[\\\\\\\\[\\\\\\\\]]*(?:<.*>)?)n)\\\\\\\\s+([^=]+\\\\\\\\s+)?\\\\\\\\w+\\\\\\\\s*\\\\\\\\())\\\",\\\"end\\\":\\\"}|(?=[^{])\\\",\\\"name\\\":\\\"meta.definition.method.groovy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-body\\\"}]},\\\"include-decl\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\b(include)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.nextflow\\\"},{\\\"match\\\":\\\"\\\\\\\\b(from)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.nextflow\\\"}]},\\\"nextflow\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#enum-def\\\"},{\\\"include\\\":\\\"#function-def\\\"},{\\\"include\\\":\\\"#process-def\\\"},{\\\"include\\\":\\\"#workflow-def\\\"},{\\\"include\\\":\\\"#output-def\\\"},{\\\"include\\\":\\\"#include-decl\\\"},{\\\"include\\\":\\\"source.nextflow-groovy\\\"}]},\\\"output-def\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(output)\\\\\\\\s*{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.nextflow\\\"}},\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"output.nextflow\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nextflow-groovy#groovy\\\"}]},\\\"process-body\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:input|output|when|script|shell|exec):\\\",\\\"name\\\":\\\"constant.block.nextflow\\\"},{\\\"match\\\":\\\"\\\\\\\\b(val|env|file|path|stdin|stdout|tuple)(\\\\\\\\(|\\\\\\\\s)\\\",\\\"name\\\":\\\"entity.name.function.nextflow\\\"},{\\\"include\\\":\\\"source.nextflow-groovy#groovy\\\"}]},\\\"process-def\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(process)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s*{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.nextflow\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.nextflow\\\"}},\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"process.nextflow\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#process-body\\\"}]},\\\"workflow-body\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:take|main|emit|publish):\\\",\\\"name\\\":\\\"constant.block.nextflow\\\"},{\\\"include\\\":\\\"source.nextflow-groovy#groovy\\\"}]},\\\"workflow-def\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(workflow)(?:\\\\\\\\s+(\\\\\\\\w+))?\\\\\\\\s*{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.nextflow\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.nextflow\\\"}},\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"workflow.nextflow\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#workflow-body\\\"}]}},\\\"scopeName\\\":\\\"source.nextflow\\\",\\\"aliases\\\":[\\\"nf\\\"]}\"))\n\nexport default [\nlang\n]\n", "import lua from './lua.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Nginx\\\",\\\"fileTypes\\\":[\\\"conf.erb\\\",\\\"conf\\\",\\\"ngx\\\",\\\"nginx.conf\\\",\\\"mime.types\\\",\\\"fastcgi_params\\\",\\\"scgi_params\\\",\\\"uwsgi_params\\\"],\\\"foldingStartMarker\\\":\\\"\\\\\\\\{\\\\\\\\s*$\\\",\\\"foldingStopMarker\\\":\\\"^\\\\\\\\s*\\\\\\\\}\\\",\\\"name\\\":\\\"nginx\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\#.*\\\",\\\"name\\\":\\\"comment.line.number-sign\\\"},{\\\"begin\\\":\\\"\\\\\\\\b((?:content|rewrite|access|init_worker|init|set|log|balancer|ssl_(?:client_hello|session_fetch|certificate))_by_lua(?:_block)?)\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.lua\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.lua.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lua\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b((?:content|rewrite|access|init_worker|init|set|log|balancer|ssl_(?:client_hello|session_fetch|certificate))_by_lua)\\\\\\\\s*'\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.lua\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"meta.context.lua.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lua\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(events) +\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.events.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(http) +\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.http.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(mail) +\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.mail.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(stream) +\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.stream.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(server) +\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.server.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(location) +([\\\\\\\\^]?~[\\\\\\\\*]?|=) +(.*?)\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.regexp.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.location.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(location) +(.*?)\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.context.location.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.location.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(limit_except) +\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.limit_except.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(if) +\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.context.if.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#if_condition\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(upstream) +(.*?)\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.context.location.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.upstream.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(types) +\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.types.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(map) +(\\\\\\\\$)([A-Za-z0-9\\\\\\\\_]+) +(\\\\\\\\$)([A-Za-z0-9\\\\\\\\_]+) *\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.directive.context.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.nginx\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.nginx\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.context.map.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.nginx\\\"},{\\\"match\\\":\\\"\\\\\\\\#.*\\\",\\\"name\\\":\\\"comment.line.number-sign\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.block.nginx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(return)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(rewrite)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\"(last|break|redirect|permanent)?(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(server)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#server_parameters\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(internal|empty_gif|f4f|flv|hls|mp4|break|status|stub_status|ip_hash|ntlm|least_conn|upstream_conf|least_conn|zone_sync)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\"(;|$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}}},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(accept_)(mutex|mutex_delay)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(debug_)(connection|points)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(error_)(log|page)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(ssl_)(engine|buffer_size|certificate|certificate_key|ciphers|client_certificate|conf_command|crl|dhparam|early_data|ecdh_curve|ocsp|ocsp_cache|ocsp_responder|password_file|prefer_server_ciphers|protocols|reject_handshake|session_cache|session_ticket_key|session_tickets|session_timeout|stapling|stapling_file|stapling_responder|stapling_verify|trusted_certificate|verify_client|verify_depth|alpn|handshake_timeout|preread)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(worker_)(aio_requests|connections|cpu_affinity|priority|processes|rlimit_core|rlimit_nofile|shutdown_timeout)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(auth_)(delay|basic|basic_user_file|jwt|jwt_claim_set|jwt_header_set|jwt_key_cache|jwt_key_file|jwt_key_request|jwt_leeway|jwt_type|jwt_require|request|request_set|http|http_header|http_pass_client_cert|http_timeout)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(client_)(body_buffer_size|body_in_file_only|body_in_single_buffer|body_temp_path|body_timeout|header_buffer_size|header_timeout|max_body_size)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(keepalive_)(disable|requests|time|timeout)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(limit_)(rate|rate_after|conn|conn_dry_run|conn_log_level|conn_status|conn_zone|zone|req|req_dry_run|req_log_level|req_status|req_zone)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(lingering_)(close|time|timeout)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(log_)(not_found|subrequest|format)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(max_)(ranges|errors)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(msie_)(padding|refresh)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(open_)(file_cache|file_cache_errors|file_cache_min_uses|file_cache_valid|log_file_cache)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(send_)(lowat|timeout)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(server_)(name|name_in_redirect|names_hash_bucket_size|names_hash_max_size|tokens)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(tcp_)(nodelay|nopush)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(types_)(hash_bucket_size|hash_max_size)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(variables_)(hash_bucket_size|hash_max_size)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(add_)(before_body|after_body|header|trailer)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(status_)(zone|format)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(autoindex_)(exact_size|format|localtime)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(ancient_)(browser|browser_value)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(modern_)(browser|browser_value)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(charset_)(map|types)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(dav_)(access|methods)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(fastcgi_)(bind|buffer_size|buffering|buffers|busy_buffers_size|cache|cache_background_update|cache_bypass|cache_key|cache_lock|cache_lock_age|cache_lock_timeout|cache_max_range_offset|cache_methods|cache_min_uses|cache_path|cache_purge|cache_revalidate|cache_use_stale|cache_valid|catch_stderr|connect_timeout|force_ranges|hide_header|ignore_client_abort|ignore_headers|index|intercept_errors|keep_conn|limit_rate|max_temp_file_size|next_upstream|next_upstream_timeout|next_upstream_tries|no_cache|param|pass|pass_header|pass_request_body|pass_request_headers|read_timeout|request_buffering|send_lowat|send_timeout|socket_keepalive|split_path_info|store|store_access|temp_file_write_size|temp_path)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(geoip_)(country|city|org|proxy|proxy_recursive)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(grpc_)(bind|buffer_size|connect_timeout|hide_header|ignore_headers|intercept_errors|next_upstream|next_upstream_timeout|next_upstream_tries|pass|pass_header|read_timeout|send_timeout|set_header|socket_keepalive|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_conf_command|ssl_crl|ssl_name|ssl_password_file|ssl_protocols|ssl_server_name|ssl_session_reuse|ssl_trusted_certificate|ssl_verify|ssl_verify_depth)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(gzip_)(buffers|comp_level|disable|http_version|min_length|proxied|types|vary|static)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(hls_)(buffers|forward_args|fragment|mp4_buffer_size|mp4_max_buffer_size)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(image_)(filter|filter_buffer|filter_interlace|filter_jpeg_quality|filter_sharpen|filter_transparency|filter_webp_quality)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(map_)(hash_bucket_size|hash_max_size)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(memcached_)(bind|buffer_size|connect_timeout|gzip_flag|next_upstream|next_upstream_timeout|next_upstream_tries|pass|read_timeout|send_timeout|socket_keepalive)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(mp4_)(buffer_size|max_buffer_size|limit_rate|limit_rate_after|start_key_frame)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(perl_)(modules|require|set)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(proxy_)(bind|buffer_size|buffering|buffers|busy_buffers_size|cache|cache_background_update|cache_bypass|cache_convert_head|cache_key|cache_lock|cache_lock_age|cache_lock_timeout|cache_max_range_offset|cache_methods|cache_min_uses|cache_path|cache_purge|cache_revalidate|cache_use_stale|cache_valid|connect_timeout|cookie_domain|cookie_flags|cookie_path|force_ranges|headers_hash_bucket_size|headers_hash_max_size|hide_header|http_version|ignore_client_abort|ignore_headers|intercept_errors|limit_rate|max_temp_file_size|method|next_upstream|next_upstream_timeout|next_upstream_tries|no_cache|pass|pass_header|pass_request_body|pass_request_headers|read_timeout|redirect|request_buffering|send_lowat|send_timeout|set_body|set_header|socket_keepalive|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_conf_command|ssl_crl|ssl_name|ssl_password_file|ssl_protocols|ssl_server_name|ssl_session_reuse|ssl_trusted_certificate|ssl_verify|ssl_verify_depth|store|store_access|temp_file_write_size|temp_path|buffer|pass_error_message|protocol|smtp_auth|timeout|protocol_timeout|download_rate|half_close|requests|responses|session_drop|ssl|upload_rate)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(real_)(ip_header|ip_recursive)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(referer_)(hash_bucket_size|hash_max_size)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(scgi_)(bind|buffer_size|buffering|buffers|busy_buffers_size|cache|cache_background_update|cache_bypass|cache_key|cache_lock|cache_lock_age|cache_lock_timeout|cache_max_range_offset|cache_methods|cache_min_uses|cache_path|cache_purge|cache_revalidate|cache_use_stale|cache_valid|connect_timeout|force_ranges|hide_header|ignore_client_abort|ignore_headers|intercept_errors|limit_rate|max_temp_file_size|next_upstream|next_upstream_timeout|next_upstream_tries|no_cache|param|pass|pass_header|pass_request_body|pass_request_headers|read_timeout|request_buffering|send_timeout|socket_keepalive|store|store_access|temp_file_write_size|temp_path)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(secure_)(link|link_md5|link_secret)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(session_)(log|log_format|log_zone)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(ssi_)(last_modified|min_file_chunk|silent_errors|types|value_length)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(sub_)(filter|filter_last_modified|filter_once|filter_types)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(health_)(check|check_timeout)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(userid_)(domain|expires|flags|mark|name|p3p|path|service)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(uwsgi_)(bind|buffer_size|buffering|buffers|busy_buffers_size|cache|cache_background_update|cache_bypass|cache_key|cache_lock|cache_lock_age|cache_lock_timeout|cache_max_range_offset|cache_methods|cache_min_uses|cache_path|cache_purge|cache_revalidate|cache_use_stale|cache_valid|connect_timeout|force_ranges|hide_header|ignore_client_abort|ignore_headers|intercept_errors|limit_rate|max_temp_file_size|modifier1|modifier2|next_upstream|next_upstream_timeout|next_upstream_tries|no_cache|param|pass|pass_header|pass_request_body|pass_request_headers|read_timeout|request_buffering|send_timeout|socket_keepalive|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_conf_command|ssl_crl|ssl_name|ssl_password_file|ssl_protocols|ssl_server_name|ssl_session_reuse|ssl_trusted_certificate|ssl_verify|ssl_verify_depth|store|store_access|temp_file_write_size|temp_path)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(http2_)(body_preread_size|chunk_size|idle_timeout|max_concurrent_pushes|max_concurrent_streams|max_field_size|max_header_size|max_requests|push|push_preload|recv_buffer_size|recv_timeout)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(http3_)(hq|max_concurrent_streams|stream_buffer_size)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(quic_)(active_connection_id_limit|bpf|gso|host_key|retry)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(xslt_)(last_modified|param|string_param|stylesheet|types)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(imap_)(auth|capabilities|client_buffer)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(pop3_)(auth|capabilities)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(smtp_)(auth|capabilities|client_buffer|greeting_delay)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(preread_)(buffer_size|timeout)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(mqtt_)(preread|buffers|rewrite_buffer_size|set_connect)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(zone_)(sync_buffers|sync_connect_retry_interval|sync_connect_timeout|sync_interval|sync_recv_buffer_size|sync_server|sync_ssl|sync_ssl_certificate|sync_ssl_certificate_key|sync_ssl_ciphers|sync_ssl_conf_command|sync_ssl_crl|sync_ssl_name|sync_ssl_password_file|sync_ssl_protocols|sync_ssl_server_name|sync_ssl_trusted_certificate|sync_ssl_verify|sync_ssl_verify_depth|sync_timeout)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(otel_)(exporter|service_name|trace|trace_context|span_name|span_attr)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(js_)(body_filter|content|fetch_buffer_size|fetch_ciphers|fetch_max_response_buffer_size|fetch_protocols|fetch_timeout|fetch_trusted_certificate|fetch_verify|fetch_verify_depth|header_filter|import|include|path|periodic|preload_object|set|shared_dict_zone|var|access|filter|preread)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"([\\\\\\\"'\\\\\\\\s]|^)(daemon|env|include|pid|use|user|aio|alias|directio|etag|listen|resolver|root|satisfy|sendfile|allow|deny|api|autoindex|charset|geo|gunzip|gzip|expires|index|keyval|mirror|perl|set|slice|ssi|ssl|zone|state|hash|keepalive|queue|random|sticky|match|userid|http2|http3|protocol|timeout|xclient|starttls|mqtt|load_module|lock_file|master_process|multi_accept|pcre_jit|thread_pool|timer_resolution|working_directory|absolute_redirect|aio_write|chunked_transfer_encoding|connection_pool_size|default_type|directio_alignment|disable_symlinks|if_modified_since|ignore_invalid_headers|large_client_header_buffers|merge_slashes|output_buffers|port_in_redirect|postpone_output|read_ahead|recursive_error_pages|request_pool_size|reset_timedout_connection|resolver_timeout|sendfile_max_chunk|subrequest_output_buffer_size|try_files|underscores_in_headers|addition_types|override_charset|source_charset|create_full_put_path|min_delete_depth|f4f_buffer_size|gunzip_buffers|internal_redirect|keyval_zone|access_log|mirror_request_body|random_index|set_real_ip_from|valid_referers|rewrite_log|uninitialized_variable_warn|split_clients|least_time|sticky_cookie_insert|xml_entities|google_perftools_profiles)([\\\\\\\"'\\\\\\\\s]|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.directive.nginx\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b([a-zA-Z0-9\\\\\\\\_]+)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.unknown.nginx\\\"}},\\\"end\\\":\\\"(;|$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b([a-z]+\\\\\\\\/[A-Za-z0-9\\\\\\\\-\\\\\\\\.\\\\\\\\+]+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.mediatype.nginx\\\"}},\\\"end\\\":\\\"(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.nginx\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#values\\\"}]}],\\\"repository\\\":{\\\"if_condition\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"match\\\":\\\"\\\\\\\\!?\\\\\\\\~\\\\\\\\*?\\\\\\\\s\\\",\\\"name\\\":\\\"keyword.operator.nginx\\\"},{\\\"match\\\":\\\"\\\\\\\\!?\\\\\\\\-[fdex]\\\\\\\\s\\\",\\\"name\\\":\\\"keyword.operator.nginx\\\"},{\\\"match\\\":\\\"\\\\\\\\!?=[^=]\\\",\\\"name\\\":\\\"keyword.operator.nginx\\\"},{\\\"include\\\":\\\"#regexp_and_string\\\"}]},\\\"regexp_and_string\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\^.*?\\\\\\\\$\\\",\\\"name\\\":\\\"string.regexp.nginx\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.nginx\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\"'nt\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.nginx\\\"},{\\\"include\\\":\\\"#variables\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.nginx\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\"'nt\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.nginx\\\"},{\\\"include\\\":\\\"#variables\\\"}]}]},\\\"server_parameters\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.nginx\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\s)(weight|max_conn|max_fails|fail_timeout|slow_start)(=)(\\\\\\\\d[\\\\\\\\d\\\\\\\\.]*[bBkKmMgGtTsShHdD]?)(?:\\\\\\\\s|;|$)\\\"},{\\\"include\\\":\\\"#values\\\"}]},\\\"values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"match\\\":\\\"\\\\\\\\#.*\\\",\\\"name\\\":\\\"comment.line.number-sign\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.nginx\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\G|\\\\\\\\s)(=?[0-9][0-9\\\\\\\\.]*[bBkKmMgGtTsShHdD]?)(?=[\\\\\\\\t ;])\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\G|\\\\\\\\s)(on|off|true|false)(?=[\\\\\\\\t ;])\\\",\\\"name\\\":\\\"constant.language.nginx\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\G|\\\\\\\\s)(kqueue|rtsig|epoll|\\\\\\\\/dev\\\\\\\\/poll|select|poll|eventport|max|all|default_server|default|main|crit|error|debug|warn|notice|last)(?=[\\\\\\\\t ;])\\\",\\\"name\\\":\\\"constant.language.nginx\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.*\\\\\\\\ |\\\\\\\\~\\\\\\\\*|\\\\\\\\~|\\\\\\\\!\\\\\\\\~\\\\\\\\*|\\\\\\\\!\\\\\\\\~\\\",\\\"name\\\":\\\"keyword.operator.nginx\\\"},{\\\"include\\\":\\\"#regexp_and_string\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.nginx\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)([A-Za-z0-9\\\\\\\\_]+)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.nginx\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.nginx\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.nginx\\\"}},\\\"match\\\":\\\"(\\\\\\\\$\\\\\\\\{)([A-Za-z0-9\\\\\\\\_]+)(\\\\\\\\})\\\"}]}},\\\"scopeName\\\":\\\"source.nginx\\\",\\\"embeddedLangs\\\":[\\\"lua\\\"]}\"))\n\nexport default [\n...lua,\nlang\n]\n", "import c from './c.mjs'\nimport html from './html.mjs'\nimport xml from './xml.mjs'\nimport javascript from './javascript.mjs'\nimport css from './css.mjs'\nimport glsl from './glsl.mjs'\nimport markdown from './markdown.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Nim\\\",\\\"fileTypes\\\":[\\\"nim\\\"],\\\"name\\\":\\\"nim\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"[ \\\\\\\\t]*##\\\\\\\\[\\\",\\\"contentName\\\":\\\"comment.block.doc-comment.content.nim\\\",\\\"end\\\":\\\"\\\\\\\\]##\\\",\\\"name\\\":\\\"comment.block.doc-comment.nim\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multilinedoccomment\\\",\\\"name\\\":\\\"comment.block.doc-comment.nested.nim\\\"}]},{\\\"begin\\\":\\\"[ \\\\\\\\t]*#\\\\\\\\[\\\",\\\"contentName\\\":\\\"comment.block.content.nim\\\",\\\"end\\\":\\\"\\\\\\\\]#\\\",\\\"name\\\":\\\"comment.block.nim\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multilinecomment\\\",\\\"name\\\":\\\"comment.block.nested.nim\\\"}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=##)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.nim\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"##\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.doc-comment.nim\\\"}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#[^\\\\\\\\[])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.nim\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.nim\\\"}]},{\\\"comment\\\":\\\"A nim procedure or method\\\",\\\"name\\\":\\\"meta.proc.nim\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(proc|method|template|macro|iterator|converter|func)\\\\\\\\s+\\\\\\\\`?([^\\\\\\\\:\\\\\\\\{\\\\\\\\s\\\\\\\\`\\\\\\\\*\\\\\\\\(]*)\\\\\\\\`?(\\\\\\\\s*\\\\\\\\*)?\\\\\\\\s*(?=\\\\\\\\(|\\\\\\\\=|:|\\\\\\\\[|\\\\\\\\n|\\\\\\\\{)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.nim\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.export\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]}]},{\\\"begin\\\":\\\"discard \\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"comment\\\":\\\"A discarded triple string literal comment\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"name\\\":\\\"comment.line.discarded.nim\\\"},{\\\"include\\\":\\\"#float_literal\\\"},{\\\"include\\\":\\\"#integer_literal\\\"},{\\\"comment\\\":\\\"Operator as function name\\\",\\\"match\\\":\\\"(?<=\\\\\\\\`)[^\\\\\\\\` ]+(?=\\\\\\\\`)\\\",\\\"name\\\":\\\"entity.name.function.nim\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.export\\\"}},\\\"comment\\\":\\\"Export qualifier.\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\s*(\\\\\\\\*)(?:\\\\\\\\s*(?=[,:])|\\\\\\\\s+(?=[=]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.export\\\"}},\\\"comment\\\":\\\"Export qualifier following a type def.\\\",\\\"match\\\":\\\"\\\\\\\\b([A-Z]\\\\\\\\w+)(\\\\\\\\*)\\\"},{\\\"include\\\":\\\"#string_literal\\\"},{\\\"comment\\\":\\\"Language Constants.\\\",\\\"match\\\":\\\"\\\\\\\\b(true|false|Inf|NegInf|NaN|nil)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.nim\\\"},{\\\"comment\\\":\\\"Keywords that affect program control flow or scope.\\\",\\\"match\\\":\\\"\\\\\\\\b(block|break|case|continue|do|elif|else|end|except|finally|for|if|raise|return|try|when|while|yield)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.nim\\\"},{\\\"comment\\\":\\\"Keyword boolean operators for expressions.\\\",\\\"match\\\":\\\"(\\\\\\\\b(and|in|is|isnot|not|notin|or|xor)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.boolean.nim\\\"},{\\\"comment\\\":\\\"Generic operators for expressions.\\\",\\\"match\\\":\\\"(=|\\\\\\\\+|-|\\\\\\\\*|/|<|>|@|\\\\\\\\$|~|&|%|!|\\\\\\\\?|\\\\\\\\^|\\\\\\\\.|:|\\\\\\\\\\\\\\\\)+\\\",\\\"name\\\":\\\"keyword.operator.nim\\\"},{\\\"comment\\\":\\\"Other keywords.\\\",\\\"match\\\":\\\"(\\\\\\\\b(addr|as|asm|atomic|bind|cast|const|converter|concept|defer|discard|distinct|div|enum|export|from|import|include|let|mod|mixin|object|of|ptr|ref|shl|shr|static|type|using|var|tuple|iterator|macro|func|method|proc|template)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.other.nim\\\"},{\\\"comment\\\":\\\"Invalid and unused keywords.\\\",\\\"match\\\":\\\"(\\\\\\\\b(generic|interface|lambda|out|shared)\\\\\\\\b)\\\",\\\"name\\\":\\\"invalid.illegal.invalid-keyword.nim\\\"},{\\\"comment\\\":\\\"Common functions\\\",\\\"match\\\":\\\"\\\\\\\\b(new|await|assert|echo|defined|declared|newException|countup|countdown|high|low)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.common.function.nim\\\"},{\\\"comment\\\":\\\"Built-in, concrete types.\\\",\\\"match\\\":\\\"\\\\\\\\b(((uint|int)(8|16|32|64)?)|float(32|64)?|bool|string|auto|cstring|char|byte|tobject|typedesc|stmt|expr|any|untyped|typed)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.concrete.nim\\\"},{\\\"comment\\\":\\\"Built-in, generic types.\\\",\\\"match\\\":\\\"\\\\\\\\b(range|array|seq|set|pointer)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.generic.nim\\\"},{\\\"comment\\\":\\\"Special types.\\\",\\\"match\\\":\\\"\\\\\\\\b(openarray|varargs|void)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.generic.nim\\\"},{\\\"comment\\\":\\\"Other constants.\\\",\\\"match\\\":\\\"\\\\\\\\b[A-Z][A-Z0-9_]+\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.nim\\\"},{\\\"comment\\\":\\\"Other types.\\\",\\\"match\\\":\\\"\\\\\\\\b[A-Z]\\\\\\\\w+\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.nim\\\"},{\\\"comment\\\":\\\"Function call.\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+\\\\\\\\b(?=(\\\\\\\\[([a-zA-Z0-9_,]|\\\\\\\\s)+\\\\\\\\])?\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.any-method.nim\\\"},{\\\"comment\\\":\\\"Function call (no parenthesis).\\\",\\\"match\\\":\\\"(?!(openarray|varargs|void|range|array|seq|set|pointer|new|await|assert|echo|defined|declared|newException|countup|countdown|high|low|((uint|int)(8|16|32|64)?)|float(32|64)?|bool|string|auto|cstring|char|byte|tobject|typedesc|stmt|expr|any|untyped|typed|addr|as|asm|atomic|bind|cast|const|converter|concept|defer|discard|distinct|div|enum|export|from|import|include|let|mod|mixin|object|of|ptr|ref|shl|shr|static|type|using|var|tuple|iterator|macro|func|method|proc|template|and|in|is|isnot|not|notin|or|xor|proc|method|template|macro|iterator|converter|func|true|false|Inf|NegInf|NaN|nil|block|break|case|continue|do|elif|else|end|except|finally|for|if|raise|return|try|when|while|yield)\\\\\\\\b)\\\\\\\\w+\\\\\\\\s+(?!(and|in|is|isnot|not|notin|or|xor|[^a-zA-Z0-9_\\\\\\\"'`(-+]+)\\\\\\\\b)(?=[a-zA-Z0-9_\\\\\\\"'`(-+])\\\",\\\"name\\\":\\\"support.function.any-method.nim\\\"},{\\\"begin\\\":\\\"(^\\\\\\\\s*)?(?=\\\\\\\\{\\\\\\\\.emit: ?\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.nim\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.nim\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\\\\\\.(emit:) ?(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.nim\\\"}},\\\"contentName\\\":\\\"source.c\\\",\\\"end\\\":\\\"(\\\\\\\")\\\\\\\"\\\\\\\"(?!\\\\\\\")(\\\\\\\\.{0,1}\\\\\\\\})?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.nim\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.c\\\"}},\\\"name\\\":\\\"meta.embedded.block.c\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\`\\\",\\\"end\\\":\\\"\\\\\\\\`\\\",\\\"name\\\":\\\"keyword.operator.nim\\\"},{\\\"include\\\":\\\"source.c\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.pragma.start.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\.?\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.pragma.end.nim\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([[:alpha:]]\\\\\\\\w*)(?:\\\\\\\\s|\\\\\\\\s*:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.pragma.nim\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\.?\\\\\\\\}|,)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b([[:alpha:]]\\\\\\\\w*)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.pragma.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.pragma.nim\\\"}},\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]]\\\\\\\\w*)(?=\\\\\\\\.?\\\\\\\\}|,)\\\"},{\\\"begin\\\":\\\"\\\\\\\\b([[:alpha:]]\\\\\\\\w*)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.pragma.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.triple.raw.nim\\\"},{\\\"begin\\\":\\\"\\\\\\\\b([[:alpha:]]\\\\\\\\w*)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.pragma.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.double.raw.nim\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(hint\\\\\\\\[\\\\\\\\w+\\\\\\\\]):\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.pragma.nim\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\.?\\\\\\\\}|,)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.nim\\\"}]},{\\\"begin\\\":\\\"(^\\\\\\\\s*)?(?=asm \\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.nim\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.nim\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(asm) (\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.nim\\\"}},\\\"contentName\\\":\\\"source.asm\\\",\\\"end\\\":\\\"(\\\\\\\")\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.nim\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.asm\\\"}},\\\"name\\\":\\\"meta.embedded.block.asm\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\`\\\",\\\"end\\\":\\\"\\\\\\\\`\\\",\\\"name\\\":\\\"keyword.operator.nim\\\"},{\\\"include\\\":\\\"source.asm\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"comment\\\":\\\"tmpl specifier\\\",\\\"match\\\":\\\"(tmpl(i)?)(?=( (html|xml|js|css|glsl|md))?\\\\\\\"\\\\\\\"\\\\\\\")\\\"},{\\\"begin\\\":\\\"(^\\\\\\\\s*)?(?=html\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.nim\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.nim\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(html)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.nim\\\"}},\\\"contentName\\\":\\\"text.html\\\",\\\"end\\\":\\\"(\\\\\\\")\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.nim\\\"},\\\"1\\\":{\\\"name\\\":\\\"text.html\\\"}},\\\"name\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\(\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\{\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)(for|while|case|of|when|if|else|elif)( )\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"(\\\\\\\\{|\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"plain\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$\\\\\\\\w+)\\\",\\\"name\\\":\\\"keyword.operator.nim\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]}]},{\\\"begin\\\":\\\"(^\\\\\\\\s*)?(?=xml\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.nim\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.nim\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(xml)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.nim\\\"}},\\\"contentName\\\":\\\"text.xml\\\",\\\"end\\\":\\\"(\\\\\\\")\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.nim\\\"},\\\"1\\\":{\\\"name\\\":\\\"text.xml\\\"}},\\\"name\\\":\\\"meta.embedded.block.xml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\(\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\{\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)(for|while|case|of|when|if|else|elif)( )\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"(\\\\\\\\{|\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"plain\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$\\\\\\\\w+)\\\",\\\"name\\\":\\\"keyword.operator.nim\\\"},{\\\"include\\\":\\\"text.xml\\\"}]}]},{\\\"begin\\\":\\\"(^\\\\\\\\s*)?(?=js\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.nim\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.nim\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(js)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.nim\\\"}},\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(\\\\\\\")\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.nim\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.js\\\"}},\\\"name\\\":\\\"meta.embedded.block.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\(\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\{\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)(for|while|case|of|when|if|else|elif)( )\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"(\\\\\\\\{|\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"plain\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$\\\\\\\\w+)\\\",\\\"name\\\":\\\"keyword.operator.nim\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"(^\\\\\\\\s*)?(?=css\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.nim\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.nim\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(css)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.nim\\\"}},\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"(\\\\\\\")\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.nim\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.css\\\"}},\\\"name\\\":\\\"meta.embedded.block.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\(\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\{\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)(for|while|case|of|when|if|else|elif)( )\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"(\\\\\\\\{|\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"plain\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$\\\\\\\\w+)\\\",\\\"name\\\":\\\"keyword.operator.nim\\\"},{\\\"include\\\":\\\"source.css\\\"}]}]},{\\\"begin\\\":\\\"(^\\\\\\\\s*)?(?=glsl\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.nim\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.nim\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(glsl)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.nim\\\"}},\\\"contentName\\\":\\\"source.glsl\\\",\\\"end\\\":\\\"(\\\\\\\")\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.nim\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.glsl\\\"}},\\\"name\\\":\\\"meta.embedded.block.glsl\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\(\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\{\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)(for|while|case|of|when|if|else|elif)( )\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"(\\\\\\\\{|\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"plain\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$\\\\\\\\w+)\\\",\\\"name\\\":\\\"keyword.operator.nim\\\"},{\\\"include\\\":\\\"source.glsl\\\"}]}]},{\\\"begin\\\":\\\"(^\\\\\\\\s*)?(?=md\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.leading.nim\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(\\\\\\\\s*$\\\\\\\\n?)?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.whitespace.embedded.trailing.nim\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(md)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.nim\\\"}},\\\"contentName\\\":\\\"text.html.markdown\\\",\\\"end\\\":\\\"(\\\\\\\")\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.nim\\\"},\\\"1\\\":{\\\"name\\\":\\\"text.html.markdown\\\"}},\\\"name\\\":\\\"meta.embedded.block.html.markdown\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\(\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)\\\\\\\\{\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$)(for|while|case|of|when|if|else|elif)( )\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"}},\\\"end\\\":\\\"(\\\\\\\\{|\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"plain\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.nim\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\$)(\\\\\\\\$\\\\\\\\w+)\\\",\\\"name\\\":\\\"keyword.operator.nim\\\"},{\\\"include\\\":\\\"text.html.markdown\\\"}]}]}],\\\"repository\\\":{\\\"char_escapes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[cC]|\\\\\\\\\\\\\\\\[rR]\\\",\\\"name\\\":\\\"constant.character.escape.carriagereturn.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[lL]|\\\\\\\\\\\\\\\\[nN]\\\",\\\"name\\\":\\\"constant.character.escape.linefeed.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[fF]\\\",\\\"name\\\":\\\"constant.character.escape.formfeed.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[tT]\\\",\\\"name\\\":\\\"constant.character.escape.tabulator.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[vV]\\\",\\\"name\\\":\\\"constant.character.escape.verticaltabulator.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.double-quote.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\'\\\",\\\"name\\\":\\\"constant.character.escape.single-quote.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-9]+\\\",\\\"name\\\":\\\"constant.character.escape.chardecimalvalue.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[aA]\\\",\\\"name\\\":\\\"constant.character.escape.alert.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[bB]\\\",\\\"name\\\":\\\"constant.character.escape.backspace.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[eE]\\\",\\\"name\\\":\\\"constant.character.escape.escape.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[xX]\\\\\\\\h\\\\\\\\h\\\",\\\"name\\\":\\\"constant.character.escape.hex.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"constant.character.escape.backslash.nim\\\"}]},\\\"extended_string_quoted_double_raw\\\":{\\\"begin\\\":\\\"\\\\\\\\b(\\\\\\\\w+)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.double.raw.nim\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#raw_string_escapes\\\"}]},\\\"extended_string_quoted_triple_raw\\\":{\\\"begin\\\":\\\"\\\\\\\\b(\\\\\\\\w+)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.triple.raw.nim\\\"},\\\"float_literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d[_\\\\\\\\d]*((\\\\\\\\.\\\\\\\\d[_\\\\\\\\d]*([eE][\\\\\\\\+\\\\\\\\-]?\\\\\\\\d[_\\\\\\\\d]*)?)|([eE][\\\\\\\\+\\\\\\\\-]?\\\\\\\\d[_\\\\\\\\d]*))('([fF](32|64|128)|[fFdD]))?\\\",\\\"name\\\":\\\"constant.numeric.float.decimal.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\b0[xX]\\\\\\\\h[_\\\\\\\\h]*'([fF](32|64|128)|[fFdD])\\\",\\\"name\\\":\\\"constant.numeric.float.hexadecimal.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\b0o[0-7][_0-7]*'([fF](32|64|128)|[fFdD])\\\",\\\"name\\\":\\\"constant.numeric.float.octal.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\b0(b|B)[01][_01]*'([fF](32|64|128)|[fFdD])\\\",\\\"name\\\":\\\"constant.numeric.float.binary.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d[_\\\\\\\\d]*)'([fF](32|64|128)|[fFdD])\\\",\\\"name\\\":\\\"constant.numeric.float.decimal.nim\\\"}]},\\\"fmt_interpolation\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.nim\\\"}},\\\"name\\\":\\\"meta.template.expression.nim\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\":\\\",\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.template.format-specifier.nim\\\"},{\\\"include\\\":\\\"source.nim\\\"}]},\\\"fmt_string\\\":{\\\"begin\\\":\\\"\\\\\\\\b(fmt)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.double.raw.nim\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\")\\\\\\\"(?!\\\\\\\")\\\",\\\"name\\\":\\\"invalid.illegal.nim\\\"},{\\\"include\\\":\\\"#raw_string_escapes\\\"},{\\\"include\\\":\\\"#fmt_interpolation\\\"}]},\\\"fmt_string_call\\\":{\\\"begin\\\":\\\"(fmt)\\\\\\\\((?=\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.nim\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"end\\\":\\\"\\\\\\\"(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.double.nim\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"invalid.illegal.nim\\\"},{\\\"include\\\":\\\"#string_escapes\\\"},{\\\"include\\\":\\\"#fmt_interpolation\\\"}]}]},\\\"fmt_string_operator\\\":{\\\"begin\\\":\\\"(&)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.double.nim\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"invalid.illegal.nim\\\"},{\\\"include\\\":\\\"#string_escapes\\\"},{\\\"include\\\":\\\"#fmt_interpolation\\\"}]},\\\"fmt_string_triple\\\":{\\\"begin\\\":\\\"\\\\\\\\b(fmt)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.triple.raw.nim\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fmt_interpolation\\\"}]},\\\"fmt_string_triple_operator\\\":{\\\"begin\\\":\\\"(&)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nim\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.triple.raw.nim\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fmt_interpolation\\\"}]},\\\"integer_literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(0[xX]\\\\\\\\h[_\\\\\\\\h]*)('(([iIuU](8|16|32|64))|[uU]))?\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\b(0o[0-7][_0-7]*)('(([iIuU](8|16|32|64))|[uU]))?\\\",\\\"name\\\":\\\"constant.numeric.integer.octal.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\b(0(b|B)[01][_01]*)('(([iIuU](8|16|32|64))|[uU]))?\\\",\\\"name\\\":\\\"constant.numeric.integer.binary.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d[_\\\\\\\\d]*)('(([iIuU](8|16|32|64))|[uU]))?\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.nim\\\"}]},\\\"multilinecomment\\\":{\\\"begin\\\":\\\"#\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]#\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multilinecomment\\\"}]},\\\"multilinedoccomment\\\":{\\\"begin\\\":\\\"##\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]##\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#multilinedoccomment\\\"}]},\\\"raw_string_escapes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.double-quote.nim\\\"}},\\\"match\\\":\\\"[^\\\\\\\"](\\\\\\\"\\\\\\\")\\\"},\\\"string_escapes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[pP]\\\",\\\"name\\\":\\\"constant.character.escape.newline.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[uU]\\\\\\\\h\\\\\\\\h\\\\\\\\h\\\\\\\\h\\\",\\\"name\\\":\\\"constant.character.escape.hex.nim\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[uU]\\\\\\\\{\\\\\\\\h+\\\\\\\\}\\\",\\\"name\\\":\\\"constant.character.escape.hex.nim\\\"},{\\\"include\\\":\\\"#char_escapes\\\"}]},\\\"string_literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#fmt_string_triple\\\"},{\\\"include\\\":\\\"#fmt_string_triple_operator\\\"},{\\\"include\\\":\\\"#extended_string_quoted_triple_raw\\\"},{\\\"include\\\":\\\"#string_quoted_triple_raw\\\"},{\\\"include\\\":\\\"#fmt_string_operator\\\"},{\\\"include\\\":\\\"#fmt_string\\\"},{\\\"include\\\":\\\"#fmt_string_call\\\"},{\\\"include\\\":\\\"#string_quoted_double_raw\\\"},{\\\"include\\\":\\\"#extended_string_quoted_double_raw\\\"},{\\\"include\\\":\\\"#string_quoted_single\\\"},{\\\"include\\\":\\\"#string_quoted_triple\\\"},{\\\"include\\\":\\\"#string_quoted_double\\\"}]},\\\"string_quoted_double\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"comment\\\":\\\"Double Quoted String\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.double.nim\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escapes\\\"}]},\\\"string_quoted_double_raw\\\":{\\\"begin\\\":\\\"\\\\\\\\br\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.double.raw.nim\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#raw_string_escapes\\\"}]},\\\"string_quoted_single\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"comment\\\":\\\"Single quoted character literal\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.single.nim\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#char_escapes\\\"},{\\\"match\\\":\\\"([^']{2,}?)\\\",\\\"name\\\":\\\"invalid.illegal.character.nim\\\"}]},\\\"string_quoted_triple\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"comment\\\":\\\"Triple Quoted String\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.triple.nim\\\"},\\\"string_quoted_triple_raw\\\":{\\\"begin\\\":\\\"r\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nim\\\"}},\\\"comment\\\":\\\"Raw Triple Quoted String\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nim\\\"}},\\\"name\\\":\\\"string.quoted.triple.raw.nim\\\"}},\\\"scopeName\\\":\\\"source.nim\\\",\\\"embeddedLangs\\\":[\\\"c\\\",\\\"html\\\",\\\"xml\\\",\\\"javascript\\\",\\\"css\\\",\\\"glsl\\\",\\\"markdown\\\"]}\"))\n\nexport default [\n...c,\n...html,\n...xml,\n...javascript,\n...css,\n...glsl,\n...markdown,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Nix\\\",\\\"fileTypes\\\":[\\\"nix\\\"],\\\"name\\\":\\\"nix\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}],\\\"repository\\\":{\\\"attribute-bind\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-name\\\"},{\\\"include\\\":\\\"#attribute-bind-from-equals\\\"}]},\\\"attribute-bind-from-equals\\\":{\\\"begin\\\":\\\"\\\\\\\\=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.bind.nix\\\"}},\\\"end\\\":\\\"\\\\\\\\;\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.bind.nix\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"attribute-inherit\\\":{\\\"begin\\\":\\\"\\\\\\\\binherit\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.inherit.nix\\\"}},\\\"end\\\":\\\"\\\\\\\\;\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.inherit.nix\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.arguments.nix\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\;)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.arguments.nix\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#bad-reserved\\\"},{\\\"include\\\":\\\"#attribute-name-single\\\"},{\\\"include\\\":\\\"#others\\\"}]},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?=[a-zA-Z\\\\\\\\_])\\\",\\\"end\\\":\\\"(?=\\\\\\\\;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#bad-reserved\\\"},{\\\"include\\\":\\\"#attribute-name-single\\\"},{\\\"include\\\":\\\"#others\\\"}]},{\\\"include\\\":\\\"#others\\\"}]},\\\"attribute-name\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*\\\",\\\"name\\\":\\\"entity.other.attribute-name.multipart.nix\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\"},{\\\"include\\\":\\\"#string-quoted\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"attribute-name-single\\\":{\\\"match\\\":\\\"\\\\\\\\b[a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*\\\",\\\"name\\\":\\\"entity.other.attribute-name.single.nix\\\"},\\\"attrset-contents\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-inherit\\\"},{\\\"include\\\":\\\"#bad-reserved\\\"},{\\\"include\\\":\\\"#attribute-bind\\\"},{\\\"include\\\":\\\"#others\\\"}]},\\\"attrset-definition\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.attrset.nix\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.attrset.nix\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attrset-contents\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\})\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-cont\\\"}]}]},\\\"attrset-definition-brace-opened\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\})\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-cont\\\"}]},{\\\"begin\\\":\\\"(?=.?)\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.attrset.nix\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attrset-contents\\\"}]}]},\\\"attrset-for-sure\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\brec\\\\\\\\b)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\brec\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.nix\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#others\\\"}]},{\\\"include\\\":\\\"#attrset-definition\\\"},{\\\"include\\\":\\\"#others\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\\{\\\\\\\\s*(\\\\\\\\}|[^,?]*(=|;)))\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attrset-definition\\\"},{\\\"include\\\":\\\"#others\\\"}]}]},\\\"attrset-or-function\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.attrset-or-function.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(\\\\\\\\s*\\\\\\\\}|\\\\\\\\\\\\\\\"|\\\\\\\\binherit\\\\\\\\b|\\\\\\\\$\\\\\\\\{|\\\\\\\\b[a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*(\\\\\\\\s*\\\\\\\\.|\\\\\\\\s*=[^=])))\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attrset-definition-brace-opened\\\"}]},{\\\"begin\\\":\\\"(?=(\\\\\\\\.\\\\\\\\.\\\\\\\\.|\\\\\\\\b[a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*\\\\\\\\s*[,?]))\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-definition-brace-opened\\\"}]},{\\\"include\\\":\\\"#bad-reserved\\\"},{\\\"begin\\\":\\\"\\\\\\\\b[a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.parameter.function.maybe.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\.)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attrset-definition-brace-opened\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\,)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-definition-brace-opened\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\\=)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-bind-from-equals\\\"},{\\\"include\\\":\\\"#attrset-definition-brace-opened\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\\?)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameter-default\\\"},{\\\"begin\\\":\\\"\\\\\\\\,\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-definition-brace-opened\\\"}]}]},{\\\"include\\\":\\\"#others\\\"}]},{\\\"include\\\":\\\"#others\\\"}]},\\\"bad-reserved\\\":{\\\"match\\\":\\\"(?<![\\\\\\\\w'-])(if|then|else|assert|with|let|in|rec|inherit)(?![\\\\\\\\w'-])\\\",\\\"name\\\":\\\"invalid.illegal.reserved.nix\\\"},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*([^*]|\\\\\\\\*[^\\\\\\\\/])*\\\",\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.nix\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-remark\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\#\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.number-sign.nix\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-remark\\\"}]}]},\\\"comment-remark\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.bold.comment.nix\\\"}},\\\"match\\\":\\\"(TODO|FIXME|BUG|\\\\\\\\!\\\\\\\\!\\\\\\\\!):?\\\"},\\\"constants\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(builtins|true|false|null)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-cont\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(scopedImport|import|isNull|abort|throw|baseNameOf|dirOf|removeAttrs|map|toString|derivationStrict|derivation)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.function.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-cont\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b[0-9]+\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-cont\\\"}]}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#parens-and-cont\\\"},{\\\"include\\\":\\\"#list-and-cont\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#with-assert\\\"},{\\\"include\\\":\\\"#function-for-sure\\\"},{\\\"include\\\":\\\"#attrset-for-sure\\\"},{\\\"include\\\":\\\"#attrset-or-function\\\"},{\\\"include\\\":\\\"#let\\\"},{\\\"include\\\":\\\"#if\\\"},{\\\"include\\\":\\\"#operator-unary\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#bad-reserved\\\"},{\\\"include\\\":\\\"#parameter-name-and-cont\\\"},{\\\"include\\\":\\\"#others\\\"}]},\\\"expression-cont\\\":{\\\"begin\\\":\\\"(?=.?)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#list\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#function-for-sure\\\"},{\\\"include\\\":\\\"#attrset-for-sure\\\"},{\\\"include\\\":\\\"#attrset-or-function\\\"},{\\\"match\\\":\\\"(\\\\\\\\bor\\\\\\\\b|\\\\\\\\.|==|!=|!|\\\\\\\\<\\\\\\\\=|\\\\\\\\<|\\\\\\\\>\\\\\\\\=|\\\\\\\\>|&&|\\\\\\\\|\\\\\\\\||-\\\\\\\\>|//|\\\\\\\\?|\\\\\\\\+\\\\\\\\+|-|\\\\\\\\*|/(?=([^*]|$))|\\\\\\\\+)\\\",\\\"name\\\":\\\"keyword.operator.nix\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#bad-reserved\\\"},{\\\"include\\\":\\\"#parameter-name\\\"},{\\\"include\\\":\\\"#others\\\"}]},\\\"function-body\\\":{\\\"begin\\\":\\\"(@\\\\\\\\s*([a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*)\\\\\\\\s*)?(\\\\\\\\:)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"function-body-from-colon\\\":{\\\"begin\\\":\\\"(\\\\\\\\:)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.function.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"function-contents\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#bad-reserved\\\"},{\\\"include\\\":\\\"#function-parameter\\\"},{\\\"include\\\":\\\"#others\\\"}]},\\\"function-definition\\\":{\\\"begin\\\":\\\"(?=.?)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-body-from-colon\\\"},{\\\"begin\\\":\\\"(?=.?)\\\",\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\b[a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.parameter.function.4.nix\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\@\\\",\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-header-until-colon-no-arg\\\"},{\\\"include\\\":\\\"#others\\\"}]},{\\\"include\\\":\\\"#others\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-header-until-colon-with-arg\\\"}]}]},{\\\"include\\\":\\\"#others\\\"}]},\\\"function-definition-brace-opened\\\":{\\\"begin\\\":\\\"(?=.?)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-body-from-colon\\\"},{\\\"begin\\\":\\\"(?=.?)\\\",\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-header-close-brace-with-arg\\\"},{\\\"begin\\\":\\\"(?=.?)\\\",\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-contents\\\"}]}]},{\\\"include\\\":\\\"#others\\\"}]},\\\"function-for-sure\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=(\\\\\\\\b[a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*\\\\\\\\s*[:@]|\\\\\\\\{[^}]*\\\\\\\\}\\\\\\\\s*:|\\\\\\\\{[^#}\\\\\\\"'/=]*[,\\\\\\\\?]))\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-definition\\\"}]}]},\\\"function-header-close-brace-no-arg\\\":{\\\"begin\\\":\\\"\\\\\\\\}\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.entity.function.nix\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#others\\\"}]},\\\"function-header-close-brace-with-arg\\\":{\\\"begin\\\":\\\"\\\\\\\\}\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.entity.function.nix\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-header-terminal-arg\\\"},{\\\"include\\\":\\\"#others\\\"}]},\\\"function-header-open-brace\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.entity.function.2.nix\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-contents\\\"}]},\\\"function-header-terminal-arg\\\":{\\\"begin\\\":\\\"(?=@)\\\",\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\@\\\",\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\b[a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*)\\\",\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"name\\\":\\\"variable.parameter.function.3.nix\\\"},{\\\"include\\\":\\\"#others\\\"}]},{\\\"include\\\":\\\"#others\\\"}]},\\\"function-header-until-colon-no-arg\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-header-open-brace\\\"},{\\\"include\\\":\\\"#function-header-close-brace-no-arg\\\"}]},\\\"function-header-until-colon-with-arg\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=\\\\\\\\:)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-header-open-brace\\\"},{\\\"include\\\":\\\"#function-header-close-brace-with-arg\\\"}]},\\\"function-parameter\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\",\\\"end\\\":\\\"(,|(?=\\\\\\\\}))\\\",\\\"name\\\":\\\"keyword.operator.nix\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#others\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b[a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.parameter.function.1.nix\\\"}},\\\"end\\\":\\\"(,|(?=\\\\\\\\}))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.nix\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#function-parameter-default\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"include\\\":\\\"#others\\\"}]},\\\"function-parameter-default\\\":{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.nix\\\"}},\\\"end\\\":\\\"(?=[,}])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"if\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\bif\\\\\\\\b)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bif\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.nix\\\"}},\\\"end\\\":\\\"\\\\\\\\bth(?=en\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.nix\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<=th)en\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.nix\\\"}},\\\"end\\\":\\\"\\\\\\\\bel(?=se\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.nix\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"(?<=el)se\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.nix\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"illegal\\\":{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"invalid.illegal\\\"},\\\"interpolation\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.nix\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.nix\\\"}},\\\"name\\\":\\\"meta.embedded\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"let\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\blet\\\\\\\\b)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\blet\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(in|else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attrset-contents\\\"}]},{\\\"begin\\\":\\\"(^|(?<=\\\\\\\\}))\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-cont\\\"}]},{\\\"include\\\":\\\"#others\\\"}]},{\\\"include\\\":\\\"#attrset-contents\\\"},{\\\"include\\\":\\\"#others\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"list\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.list.nix\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.list.nix\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"list-and-cont\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#list\\\"},{\\\"include\\\":\\\"#expression-cont\\\"}]},\\\"operator-unary\\\":{\\\"match\\\":\\\"(!|-)\\\",\\\"name\\\":\\\"keyword.operator.unary.nix\\\"},\\\"others\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#whitespace\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},\\\"parameter-name\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.parameter.name.nix\\\"}},\\\"match\\\":\\\"\\\\\\\\b[a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*\\\"},\\\"parameter-name-and-cont\\\":{\\\"begin\\\":\\\"\\\\\\\\b[a-zA-Z\\\\\\\\_][a-zA-Z0-9\\\\\\\\_\\\\\\\\'\\\\\\\\-]*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.parameter.name.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-cont\\\"}]},\\\"parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.expression.nix\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.expression.nix\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"parens-and-cont\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\()\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parens\\\"},{\\\"include\\\":\\\"#expression-cont\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\'\\\\\\\\')\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\'\\\\\\\\'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.other.start.nix\\\"}},\\\"end\\\":\\\"\\\\\\\\'\\\\\\\\'(?!\\\\\\\\$|\\\\\\\\'|\\\\\\\\\\\\\\\\.)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.other.end.nix\\\"}},\\\"name\\\":\\\"string.quoted.other.nix\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\'\\\\\\\\'(\\\\\\\\$|\\\\\\\\'|\\\\\\\\\\\\\\\\.)\\\",\\\"name\\\":\\\"constant.character.escape.nix\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"include\\\":\\\"#expression-cont\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\\\\\\\\\")\\\",\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-quoted\\\"},{\\\"include\\\":\\\"#expression-cont\\\"}]},{\\\"begin\\\":\\\"(~?[a-zA-Z0-9\\\\\\\\.\\\\\\\\_\\\\\\\\-\\\\\\\\+]*(\\\\\\\\/[a-zA-Z0-9\\\\\\\\.\\\\\\\\_\\\\\\\\-\\\\\\\\+]+)+)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.unquoted.path.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-cont\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\<[a-zA-Z0-9\\\\\\\\.\\\\\\\\_\\\\\\\\-\\\\\\\\+]+(\\\\\\\\/[a-zA-Z0-9\\\\\\\\.\\\\\\\\_\\\\\\\\-\\\\\\\\+]+)*\\\\\\\\>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.unquoted.spath.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-cont\\\"}]},{\\\"begin\\\":\\\"([a-zA-Z][a-zA-Z0-9\\\\\\\\+\\\\\\\\-\\\\\\\\.]*\\\\\\\\:[a-zA-Z0-9\\\\\\\\%\\\\\\\\/\\\\\\\\?\\\\\\\\:\\\\\\\\@\\\\\\\\&\\\\\\\\=\\\\\\\\+\\\\\\\\$\\\\\\\\,\\\\\\\\-\\\\\\\\_\\\\\\\\.\\\\\\\\!\\\\\\\\~\\\\\\\\*\\\\\\\\']+)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.unquoted.url.nix\\\"}},\\\"end\\\":\\\"(?=([\\\\\\\\])};,]|\\\\\\\\b(else|then)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-cont\\\"}]}]},\\\"string-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.double.start.nix\\\"}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.double.end.nix\\\"}},\\\"name\\\":\\\"string.quoted.double.nix\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.nix\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"whitespace\\\":{\\\"match\\\":\\\"\\\\\\\\s+\\\"},\\\"with-assert\\\":{\\\"begin\\\":\\\"(?<![\\\\\\\\w'-])(with|assert)(?![\\\\\\\\w'-])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.nix\\\"}},\\\"end\\\":\\\"\\\\\\\\;\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}},\\\"scopeName\\\":\\\"source.nix\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"nushell\\\",\\\"name\\\":\\\"nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#define-variable\\\"},{\\\"include\\\":\\\"#define-alias\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#extern\\\"},{\\\"include\\\":\\\"#module\\\"},{\\\"include\\\":\\\"#use-module\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comment\\\"}],\\\"repository\\\":{\\\"binary\\\":{\\\"begin\\\":\\\"\\\\\\\\b(0x)(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.square.begin.nushell\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.begin.nushell\\\"}},\\\"name\\\":\\\"constant.binary.nushell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[0-9a-fA-F]{2}\\\",\\\"name\\\":\\\"constant.numeric.nushell\\\"}]},\\\"braced-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.nushell\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.nushell\\\"}},\\\"name\\\":\\\"meta.expression.braced.nushell\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\{)\\\\\\\\s*\\\\\\\\|\\\",\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"meta.closure.parameters.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameter\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.nushell\\\"}},\\\"match\\\":\\\"(\\\\\\\\w+)\\\\\\\\s*(:)\\\\\\\\s*\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.nushell\\\"}},\\\"match\\\":\\\"(\\\\\\\\$\\\\\\\"((?:[^\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*)\\\\\\\")\\\\\\\\s*(:)\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.record-entry.nushell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.nushell\\\"}},\\\"match\\\":\\\"(\\\\\\\"(?:[^\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\")\\\\\\\\s*(:)\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.record-entry.nushell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.nushell\\\"}},\\\"match\\\":\\\"(\\\\\\\\$'([^']*)')\\\\\\\\s*(:)\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.record-entry.nushell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.nushell\\\"}},\\\"match\\\":\\\"('[^']*')\\\\\\\\s*(:)\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.record-entry.nushell\\\"},{\\\"include\\\":\\\"#spread\\\"},{\\\"include\\\":\\\"source.nushell\\\"}]},\\\"command\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(?:(\\\\\\\\^)|(?![0-9]|\\\\\\\\$))([\\\\\\\\w.!]+(?:(?: (?!-)[\\\\\\\\w\\\\\\\\-.!]+(?:(?= |\\\\\\\\))|$)|[\\\\\\\\w\\\\\\\\-.!]+))*|(?<=\\\\\\\\^)\\\\\\\\$?(?:\\\\\\\"[^\\\\\\\"]+\\\\\\\"|'[^']+'))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nushell\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#control-keywords\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.builtin.nushell\\\"}},\\\"match\\\":\\\"(?:ansi|char) \\\\\\\\w+\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.builtin.nushell\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}]}},\\\"comment\\\":\\\"Regex generated with list-to-tree (https://github.com/glcraft/list-to-tree)\\\",\\\"match\\\":\\\"(a(?:l(?:ias|l)|n(?:si(?: (?:gradient|link|strip))?|y)|ppend|st)|b(?:g|its(?: (?:and|not|or|ro(?:l|r)|sh(?:l|r)|xor))?|reak|ytes(?: (?:a(?:dd|t)|build|collect|ends-with|index-of|length|re(?:move|place|verse)|starts-with))?)|c(?:al|d|h(?:ar|unks)|lear|o(?:l(?:lect|umns)|m(?:mandline(?: (?:edit|get-cursor|set-cursor))?|p(?:act|lete))|n(?:fig(?: (?:env|nu|reset))?|st|tinue))|p)|d(?:ate(?: (?:format|humanize|list-timezone|now|to-(?:record|t(?:able|imezone))))?|e(?:bug(?: (?:info|profile))?|code(?: (?:base(?:32(?:hex)?|64)|hex|new-base64))?|f(?:ault)?|scribe|tect columns)|o|rop(?: (?:column|nth))?|t(?: (?:add|diff|format|now|part|to|utcnow))?|u)|e(?:ach(?: while)?|cho|moji|n(?:code(?: (?:base(?:32(?:hex)?|64)|hex|new-base64))?|umerate)|rror make|very|x(?:ec|it|p(?:l(?:ain|ore)|ort(?: (?:alias|const|def|extern|module|use)|-env)?)|tern))|f(?:i(?:l(?:e|l|ter)|nd|rst)|latten|mt|or(?:mat(?: (?:d(?:ate|uration)|filesize|pattern))?)?|rom(?: (?:csv|eml|i(?:cs|ni)|json|msgpack(?:z)?|nuon|ods|p(?:arquet|list)|ssv|t(?:oml|sv)|url|vcf|x(?:lsx|ml)|y(?:aml|ml)))?)|g(?:e(?:nerate|t)|lob|r(?:id|oup(?:-by)?)|stat)|h(?:ash(?: (?:md5|sha256))?|e(?:aders|lp(?: (?:aliases|commands|e(?:scapes|xterns)|modules|operators))?)|i(?:de(?:-env)?|sto(?:gram|ry(?: session)?))|ttp(?: (?:delete|get|head|options|p(?:atch|ost|ut)))?)|i(?:f|gnore|n(?:c|put(?: list(?:en)?)?|s(?:ert|pect)|t(?:erleave|o(?: (?:b(?:i(?:nary|ts)|ool)|cell-path|d(?:atetime|uration)|f(?:ilesize|loat)|glob|int|record|s(?:qlite|tring)|value))?))|s-(?:admin|empty|not-empty|terminal)|tems)|j(?:oin|son path|walk)|k(?:eybindings(?: (?:default|list(?:en)?))?|ill)|l(?:ast|e(?:ngth|t(?:-env)?)|ines|o(?:ad-env|op)|s)|m(?:at(?:ch|h(?: (?:a(?:bs|rc(?:cos(?:h)?|sin(?:h)?|tan(?:h)?)|vg)|c(?:eil|os(?:h)?)|exp|floor|l(?:n|og)|m(?:ax|edian|in|ode)|product|round|s(?:in(?:h)?|qrt|tddev|um)|tan(?:h)?|variance))?)|d|e(?:rge|tadata(?: (?:access|set))?)|k(?:dir|temp)|o(?:dule|ve)|ut|v)|nu-(?:check|highlight)|o(?:pen|verlay(?: (?:hide|list|new|use))?)|p(?:a(?:nic|r(?:-each|se)|th(?: (?:basename|dirname|ex(?:ists|pand)|join|parse|relative-to|split|type))?)|lugin(?: (?:add|list|rm|stop|use))?|net|o(?:lars(?: (?:a(?:gg(?:-groups)?|ll-(?:false|true)|ppend|rg-(?:m(?:ax|in)|sort|true|unique|where)|s(?:-date(?:time)?)?)|c(?:a(?:che|st)|o(?:l(?:lect|umns)?|n(?:cat(?:-str)?|tains)|unt(?:-null)?)|umulative)|d(?:atepart|ecimal|rop(?:-(?:duplicates|nulls))?|ummies)|exp(?:lode|r-not)|f(?:etch|i(?:l(?:l-n(?:an|ull)|ter(?:-with)?)|rst)|latten)|g(?:et(?:-(?:day|hour|m(?:inute|onth)|nanosecond|ordinal|second|week(?:day)?|year))?|roup-by)|i(?:mplode|nt(?:eger|o-(?:df|lazy|nu))|s-(?:duplicated|in|n(?:ot-null|ull)|unique))|join|l(?:ast|it|owercase)|m(?:ax|e(?:an|dian)|in)|n(?:-unique|ot)|o(?:pen|therwise)|p(?:ivot|rofile)|qu(?:antile|ery)|r(?:e(?:name|place(?:-all)?|verse)|olling)|s(?:a(?:mple|ve)|chema|e(?:lect|t(?:-with-idx)?)|h(?:ape|ift)|lice|ort-by|t(?:d|ore-(?:get|ls|rm)|r(?:-(?:join|lengths|slice)|ftime))|um(?:mary)?)|take|u(?:n(?:ique|pivot)|ppercase)|va(?:lue-counts|r)|w(?:hen|ith-column)))?|rt)|r(?:epend|int)|s)|query(?: (?:db|git|json|web(?:page-info)?|xml))?|r(?:an(?:dom(?: (?:b(?:inary|ool)|chars|dice|float|int|uuid))?|ge)|e(?:duce|g(?:ex|istry query)|ject|name|turn|verse)|m|o(?:ll(?: (?:down|left|right|up))?|tate)|un-external)|s(?:ave|c(?:hema|ope(?: (?:aliases|commands|e(?:ngine-stats|xterns)|modules|variables))?)|e(?:lect|q(?: (?:char|date))?)|huffle|kip(?: (?:until|while))?|leep|o(?:rt(?:-by)?|urce(?:-env)?)|plit(?: (?:c(?:ell-path|hars|olumn)|list|row|words)|-by)?|t(?:art|or(?: (?:create|delete|export|i(?:mport|nsert)|open|reset|update))?|r(?: (?:c(?:a(?:mel-case|pitalize)|ontains)|d(?:istance|owncase)|e(?:nds-with|xpand)|index-of|join|kebab-case|length|pascal-case|re(?:place|verse)|s(?:creaming-snake-case|imilarity|nake-case|ta(?:rts-with|ts)|ubstring)|t(?:itle-case|rim)|upcase)|ess_internals)?)|ys(?: (?:cpu|disks|host|mem|net|temp|users))?)|t(?:a(?:ble|ke(?: (?:until|while))?)|e(?:e|rm size)|imeit|o(?: (?:csv|html|json|m(?:d|sgpack(?:z)?)|nuon|p(?:arquet|list)|t(?:ext|oml|sv)|xml|yaml)|uch)?|r(?:anspose|y)|utor)|u(?:limit|n(?:ame|iq(?:-by)?)|p(?:date(?: cells)?|sert)|rl(?: (?:build-query|decode|encode|join|parse))?|se)|v(?:alues|ersion|iew(?: (?:files|ir|s(?:ource|pan)))?)|w(?:atch|h(?:ere|i(?:ch|le)|oami)|i(?:ndow|th-env)|rap)|zip)(?![\\\\\\\\w-])( (.*))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression\\\"}]}},\\\"match\\\":\\\"(?<=\\\\\\\\^)(?:\\\\\\\\$(\\\\\\\"[^\\\\\\\"]+\\\\\\\"|'[^']+')|\\\\\\\"[^\\\\\\\"]+\\\\\\\"|'[^']+')\\\",\\\"name\\\":\\\"entity.name.type.external.nushell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.external.nushell\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}]}},\\\"match\\\":\\\"([\\\\\\\\w.]+(?:-[\\\\\\\\w.!]+)*)(?: (.*))?\\\"},{\\\"include\\\":\\\"#value\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\||\\\\\\\\)|\\\\\\\\}|;)|$\\\",\\\"name\\\":\\\"meta.command.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#spread\\\"},{\\\"include\\\":\\\"#value\\\"}]},\\\"comment\\\":{\\\"match\\\":\\\"(#.*)$\\\",\\\"name\\\":\\\"comment.nushell\\\"},\\\"constant-keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.nushell\\\"},\\\"constant-value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constant-keywords\\\"},{\\\"include\\\":\\\"#datetime\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#numbers-hexa\\\"},{\\\"include\\\":\\\"#binary\\\"}]},\\\"control-keywords\\\":{\\\"comment\\\":\\\"Regex generated with list-to-tree (https://github.com/glcraft/list-to-tree)\\\",\\\"match\\\":\\\"(?<![0-9a-zA-Z_\\\\\\\\-.\\\\\\\\/:\\\\\\\\\\\\\\\\])(?:break|continue|else(?: if)?|for|if|loop|mut|return|try|while)(?![0-9a-zA-Z_\\\\\\\\-.\\\\\\\\/:\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"keyword.control.nushell\\\"},\\\"datetime\\\":{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d{4}-\\\\\\\\d{2}-\\\\\\\\d{2}(?:T\\\\\\\\d{2}:\\\\\\\\d{2}:\\\\\\\\d{2}(?:\\\\\\\\.\\\\\\\\d+)?(?:\\\\\\\\+\\\\\\\\d{2}:?\\\\\\\\d{2}|Z)?)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.nushell\\\"},\\\"define-alias\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.nushell\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#operators\\\"}]}},\\\"match\\\":\\\"((?:export )?alias)\\\\\\\\s+([\\\\\\\\w\\\\\\\\-!]+)\\\\\\\\s*(=)\\\"},\\\"define-variable\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.nushell\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#operators\\\"}]}},\\\"match\\\":\\\"(let|mut|(?:export\\\\\\\\s+)?const)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s+(=)\\\"},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#pre-command\\\"},{\\\"include\\\":\\\"#for-loop\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.control.nushell\\\"},{\\\"include\\\":\\\"#control-keywords\\\"},{\\\"include\\\":\\\"#constant-value\\\"},{\\\"include\\\":\\\"#command\\\"},{\\\"include\\\":\\\"#value\\\"}]},\\\"extern\\\":{\\\"begin\\\":\\\"((?:export\\\\\\\\s+)?extern)\\\\\\\\s+([\\\\\\\\w\\\\\\\\-]+|\\\\\\\"[\\\\\\\\w\\\\\\\\- ]+\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.nushell\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.function.end.nushell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},\\\"for-loop\\\":{\\\"begin\\\":\\\"(for)\\\\\\\\s+(\\\\\\\\$?\\\\\\\\w+)\\\\\\\\s+(in)\\\\\\\\s+(.+)\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.nushell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.nushell\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.nushell\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.nushell\\\"}},\\\"name\\\":\\\"meta.for-loop.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nushell\\\"}]},\\\"function\\\":{\\\"begin\\\":\\\"((?:export\\\\\\\\s+)?def(?:\\\\\\\\s+--\\\\\\\\w+)*)\\\\\\\\s+([\\\\\\\\w\\\\\\\\-]+|\\\\\\\"[\\\\\\\\w\\\\\\\\- ]+\\\\\\\"|'[\\\\\\\\w\\\\\\\\- ]+'|`[\\\\\\\\w\\\\\\\\- ]+`)(\\\\\\\\s+--\\\\\\\\w+)*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.nushell\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.nushell\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"},{\\\"include\\\":\\\"#function-body\\\"},{\\\"include\\\":\\\"#function-inout\\\"}]},\\\"function-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.function.begin.nushell\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.function.end.nushell\\\"}},\\\"name\\\":\\\"meta.function.body.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nushell\\\"}]},\\\"function-inout\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#types\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"keyword.operator.nushell\\\"},{\\\"include\\\":\\\"#function-multiple-inout\\\"}]},\\\"function-multiple-inout\\\":{\\\"begin\\\":\\\"(?<=]\\\\\\\\s*)(:)\\\\\\\\s+(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.in-out.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.brace.square.begin.nushell\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.end.nushell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#types\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.nushell\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(,)\\\\\\\\s*\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nushell\\\"}},\\\"match\\\":\\\"\\\\\\\\s+(->)\\\\\\\\s+\\\"}]},\\\"function-parameter\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.nushell\\\"}},\\\"match\\\":\\\"(-{0,2}|\\\\\\\\.{3})[\\\\\\\\w-]+(?:\\\\\\\\((-[\\\\\\\\w?])\\\\\\\\))?\\\",\\\"name\\\":\\\"variable.parameter.nushell\\\"},{\\\"begin\\\":\\\"\\\\\\\\??:\\\\\\\\s*\\\",\\\"end\\\":\\\"(?=(?:\\\\\\\\s+(?:-{0,2}|\\\\\\\\.{3})[\\\\\\\\w-]+)|(?:\\\\\\\\s*(?:,|\\\\\\\\]|\\\\\\\\||@|=|#|$)))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#types\\\"}]},{\\\"begin\\\":\\\"@(?=\\\\\\\"|')\\\",\\\"end\\\":\\\"(?<=\\\\\\\"|')\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"=\\\\\\\\s*\\\",\\\"end\\\":\\\"(?=(?:\\\\\\\\s+-{0,2}[\\\\\\\\w-]+)|(?:\\\\\\\\s*(?:,|\\\\\\\\]|\\\\\\\\||#|$)))\\\",\\\"name\\\":\\\"default.value.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}]}]},\\\"function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.begin.nushell\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.end.nushell\\\"}},\\\"name\\\":\\\"meta.function.parameters.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameter\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"internal-variables\\\":{\\\"match\\\":\\\"\\\\\\\\$(?:nu|env)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.nushell\\\"},\\\"keyword\\\":{\\\"match\\\":\\\"(?:def(?:-env)?)\\\",\\\"name\\\":\\\"keyword.other.nushell\\\"},\\\"module\\\":{\\\"begin\\\":\\\"((?:export\\\\\\\\s+)?module)\\\\\\\\s+([\\\\\\\\w\\\\\\\\-]+)\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.nushell\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.module.end.nushell\\\"}},\\\"name\\\":\\\"meta.module.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.nushell\\\"}]},\\\"numbers\\\":{\\\"match\\\":\\\"(?<![\\\\\\\\w-])[-+]?(?:\\\\\\\\d+|\\\\\\\\d{1,3}(?:_\\\\\\\\d{3})*)(?:\\\\\\\\.\\\\\\\\d*)?(?i:ns|us|ms|sec|min|hr|day|wk|b|kb|mb|gb|tb|pt|eb|zb|kib|mib|gib|tib|pit|eib|zib)?(?:(?![\\\\\\\\w.])|(?=\\\\\\\\.\\\\\\\\.))\\\",\\\"name\\\":\\\"constant.numeric.nushell\\\"},\\\"numbers-hexa\\\":{\\\"match\\\":\\\"(?<![\\\\\\\\w-])0x[0-9a-fA-F]+(?![\\\\\\\\w.])\\\",\\\"name\\\":\\\"constant.numeric.nushell\\\"},\\\"operators\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#operators-word\\\"},{\\\"include\\\":\\\"#operators-symbols\\\"},{\\\"include\\\":\\\"#ranges\\\"}]},\\\"operators-symbols\\\":{\\\"match\\\":\\\"(?<= )(?:(?:\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\/)=?|\\\\\\\\/\\\\\\\\/|\\\\\\\\*\\\\\\\\*|!=|[<>=]=?|[!=]~|\\\\\\\\+\\\\\\\\+=?)(?= |$)\\\",\\\"name\\\":\\\"keyword.control.nushell\\\"},\\\"operators-word\\\":{\\\"match\\\":\\\"(?<= |\\\\\\\\()(?:mod|in|not-in|not|and|or|xor|bit-or|bit-and|bit-xor|bit-shl|bit-shr|starts-with|ends-with)(?= |\\\\\\\\)|$)\\\",\\\"name\\\":\\\"keyword.control.nushell\\\"},\\\"parameters\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.nushell\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\s)(-{1,2})[\\\\\\\\w-]+\\\",\\\"name\\\":\\\"variable.parameter.nushell\\\"},\\\"paren-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.begin.nushell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.end.nushell\\\"}},\\\"name\\\":\\\"meta.expression.parenthesis.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"pre-command\\\":{\\\"begin\\\":\\\"(\\\\\\\\w+)(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.nushell\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#operators\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\s+)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}]},\\\"ranges\\\":{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.<?\\\",\\\"name\\\":\\\"keyword.control.nushell\\\"},\\\"spread\\\":{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.(?=[^\\\\\\\\s\\\\\\\\]}])\\\",\\\"name\\\":\\\"keyword.control.nushell\\\"},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-single-quote\\\"},{\\\"include\\\":\\\"#string-backtick\\\"},{\\\"include\\\":\\\"#string-double-quote\\\"},{\\\"include\\\":\\\"#string-interpolated-double\\\"},{\\\"include\\\":\\\"#string-interpolated-single\\\"},{\\\"include\\\":\\\"#string-bare\\\"}]},\\\"string-backtick\\\":{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nushell\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nushell\\\"}},\\\"name\\\":\\\"string.quoted.single.nushell\\\"},\\\"string-bare\\\":{\\\"match\\\":\\\"[^$\\\\\\\\[{(\\\\\\\"',|#\\\\\\\\s|][^\\\\\\\\[\\\\\\\\]{}()\\\\\\\"'\\\\\\\\s#,|]*\\\",\\\"name\\\":\\\"string.bare.nushell\\\"},\\\"string-double-quote\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nushell\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nushell\\\"}},\\\"name\\\":\\\"string.quoted.double.nushell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\w+\\\"},{\\\"include\\\":\\\"#string-escape\\\"}]},\\\"string-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[bfrnt\\\\\\\\\\\\\\\\'\\\\\\\"/]|u[0-9a-fA-F]{4})\\\",\\\"name\\\":\\\"constant.character.escape.nushell\\\"},\\\"string-interpolated-double\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nushell\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nushell\\\"}},\\\"name\\\":\\\"string.interpolated.double.nushell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[()]\\\",\\\"name\\\":\\\"constant.character.escape.nushell\\\"},{\\\"include\\\":\\\"#string-escape\\\"},{\\\"include\\\":\\\"#paren-expression\\\"}]},\\\"string-interpolated-single\\\":{\\\"begin\\\":\\\"\\\\\\\\$'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nushell\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nushell\\\"}},\\\"name\\\":\\\"string.interpolated.single.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#paren-expression\\\"}]},\\\"string-single-quote\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.nushell\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.nushell\\\"}},\\\"name\\\":\\\"string.quoted.single.nushell\\\"},\\\"table\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.begin.nushell\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.square.end.nushell\\\"}},\\\"name\\\":\\\"meta.table.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#spread\\\"},{\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.nushell\\\"}]},\\\"types\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(list)\\\\\\\\s*<\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.nushell\\\"}},\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"meta.list.nushell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#types\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(record)\\\\\\\\s*<\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.nushell\\\"}},\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"meta.record.nushell\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.nushell\\\"}},\\\"match\\\":\\\"([\\\\\\\\w\\\\\\\\-]+|\\\\\\\"[\\\\\\\\w\\\\\\\\- ]+\\\\\\\"|'[^']+')\\\\\\\\s*:\\\\\\\\s*\\\"},{\\\"include\\\":\\\"#types\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.nushell\\\"}]},\\\"use-module\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.nushell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.nushell\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*((?:export )?use)\\\\\\\\s+([\\\\\\\\w\\\\\\\\-]+|\\\\\\\"[\\\\\\\\w\\\\\\\\- ]+\\\\\\\"|'[\\\\\\\\w\\\\\\\\- ]+')(?:\\\\\\\\s+([\\\\\\\\w\\\\\\\\-]+|\\\\\\\"[\\\\\\\\w\\\\\\\\- ]+\\\\\\\"|'[\\\\\\\\w\\\\\\\\- ]+'|\\\\\\\\*))?\\\\\\\\s*;?$\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((?:export )?use)\\\\\\\\s+([\\\\\\\\w\\\\\\\\-]+|\\\\\\\"[\\\\\\\\w\\\\\\\\- ]+\\\\\\\"|'[\\\\\\\\w\\\\\\\\- ]+')\\\\\\\\s*\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.nushell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.nushell\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\\\\\\s*;?\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.end.nushell\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.nushell\\\"}},\\\"match\\\":\\\"([\\\\\\\\w\\\\\\\\-]+|\\\\\\\"[\\\\\\\\w\\\\\\\\- ]+\\\\\\\"|'[\\\\\\\\w\\\\\\\\- ]+'|\\\\\\\\*),?\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.nushell\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.bare.nushell\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.namespace.nushell\\\"}},\\\"match\\\":\\\"([\\\\\\\\w\\\\\\\\- ]+)(?:\\\\\\\\.nu)?(?=$|\\\\\\\"|')\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.nushell\\\"}},\\\"match\\\":\\\"(?<path>(?:/|\\\\\\\\\\\\\\\\|~[\\\\\\\\/\\\\\\\\\\\\\\\\]|\\\\\\\\.\\\\\\\\.?[\\\\\\\\/\\\\\\\\\\\\\\\\])?(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\]+[\\\\\\\\/\\\\\\\\\\\\\\\\])*[\\\\\\\\w\\\\\\\\- ]+(?:\\\\\\\\.nu)?){0}^\\\\\\\\s*((?:export )?use)\\\\\\\\s+(\\\\\\\"\\\\\\\\g<path>\\\\\\\"|'\\\\\\\\g<path>\\\\\\\\'|(?![\\\\\\\"'])\\\\\\\\g<path>)(?:\\\\\\\\s+([\\\\\\\\w\\\\\\\\-]+|\\\\\\\"[\\\\\\\\w\\\\\\\\- ]+\\\\\\\"|'[^']+'|\\\\\\\\*))?\\\\\\\\s*;?$\\\"},{\\\"begin\\\":\\\"(?<path>(?:/|\\\\\\\\\\\\\\\\|~[\\\\\\\\/\\\\\\\\\\\\\\\\]|\\\\\\\\.\\\\\\\\.?[\\\\\\\\/\\\\\\\\\\\\\\\\])?(?:[^\\\\\\\\/\\\\\\\\\\\\\\\\]+[\\\\\\\\/\\\\\\\\\\\\\\\\])*[\\\\\\\\w\\\\\\\\- ]+(?:\\\\\\\\.nu)?){0}^\\\\\\\\s*((?:export )?use)\\\\\\\\s+(\\\\\\\"\\\\\\\\g<path>\\\\\\\"|'\\\\\\\\g<path>\\\\\\\\'|(?![\\\\\\\"'])\\\\\\\\g<path>)\\\\\\\\s+\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.nushell\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.bare.nushell\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.namespace.nushell\\\"}},\\\"match\\\":\\\"([\\\\\\\\w\\\\\\\\- ]+)(?:\\\\\\\\.nu)?(?=$|\\\\\\\"|')\\\"}]}},\\\"end\\\":\\\"(\\\\\\\\])\\\\\\\\s*;?\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.square.end.nushell\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.nushell\\\"}},\\\"match\\\":\\\"([\\\\\\\\w\\\\\\\\-]+|\\\\\\\"[\\\\\\\\w\\\\\\\\- ]+\\\\\\\"|'[\\\\\\\\w\\\\\\\\- ]+'|\\\\\\\\*),?\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.function.nushell\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(?:export )?use\\\\\\\\b\\\"}]},\\\"value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#variable-fields\\\"},{\\\"include\\\":\\\"#control-keywords\\\"},{\\\"include\\\":\\\"#constant-value\\\"},{\\\"include\\\":\\\"#table\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#paren-expression\\\"},{\\\"include\\\":\\\"#braced-expression\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"variable-fields\\\":{\\\"match\\\":\\\"(?<=\\\\\\\\)|\\\\\\\\}|\\\\\\\\])(?:\\\\\\\\.(?:[\\\\\\\\w-]+|\\\\\\\"[\\\\\\\\w\\\\\\\\- ]+\\\\\\\"))+\\\",\\\"name\\\":\\\"variable.other.nushell\\\"},\\\"variables\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#internal-variables\\\"},{\\\"match\\\":\\\"\\\\\\\\$.+\\\",\\\"name\\\":\\\"variable.other.nushell\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"variable.other.nushell\\\"}},\\\"match\\\":\\\"(\\\\\\\\$[a-zA-Z0-9_]+)((?:\\\\\\\\.(?:[\\\\\\\\w-]+|\\\\\\\"[\\\\\\\\w\\\\\\\\- ]+\\\\\\\"))*)\\\"}},\\\"scopeName\\\":\\\"source.nushell\\\",\\\"aliases\\\":[\\\"nu\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Objective-C\\\",\\\"name\\\":\\\"objective-c\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#anonymous_pattern_1\\\"},{\\\"include\\\":\\\"#anonymous_pattern_2\\\"},{\\\"include\\\":\\\"#anonymous_pattern_3\\\"},{\\\"include\\\":\\\"#anonymous_pattern_4\\\"},{\\\"include\\\":\\\"#anonymous_pattern_5\\\"},{\\\"include\\\":\\\"#apple_foundation_functional_macros\\\"},{\\\"include\\\":\\\"#anonymous_pattern_7\\\"},{\\\"include\\\":\\\"#anonymous_pattern_8\\\"},{\\\"include\\\":\\\"#anonymous_pattern_9\\\"},{\\\"include\\\":\\\"#anonymous_pattern_10\\\"},{\\\"include\\\":\\\"#anonymous_pattern_11\\\"},{\\\"include\\\":\\\"#anonymous_pattern_12\\\"},{\\\"include\\\":\\\"#anonymous_pattern_13\\\"},{\\\"include\\\":\\\"#anonymous_pattern_14\\\"},{\\\"include\\\":\\\"#anonymous_pattern_15\\\"},{\\\"include\\\":\\\"#anonymous_pattern_16\\\"},{\\\"include\\\":\\\"#anonymous_pattern_17\\\"},{\\\"include\\\":\\\"#anonymous_pattern_18\\\"},{\\\"include\\\":\\\"#anonymous_pattern_19\\\"},{\\\"include\\\":\\\"#anonymous_pattern_20\\\"},{\\\"include\\\":\\\"#anonymous_pattern_21\\\"},{\\\"include\\\":\\\"#anonymous_pattern_22\\\"},{\\\"include\\\":\\\"#anonymous_pattern_23\\\"},{\\\"include\\\":\\\"#anonymous_pattern_24\\\"},{\\\"include\\\":\\\"#anonymous_pattern_25\\\"},{\\\"include\\\":\\\"#anonymous_pattern_26\\\"},{\\\"include\\\":\\\"#anonymous_pattern_27\\\"},{\\\"include\\\":\\\"#anonymous_pattern_28\\\"},{\\\"include\\\":\\\"#anonymous_pattern_29\\\"},{\\\"include\\\":\\\"#anonymous_pattern_30\\\"},{\\\"include\\\":\\\"#bracketed_content\\\"},{\\\"include\\\":\\\"#c_lang\\\"}],\\\"repository\\\":{\\\"anonymous_pattern_1\\\":{\\\"begin\\\":\\\"((@)(interface|protocol))(?!.+;)\\\\\\\\s+([A-Za-z_][A-Za-z0-9_]*)\\\\\\\\s*((:)(?:\\\\\\\\s*)([A-Za-z][A-Za-z0-9]*))?(\\\\\\\\s|\\\\\\\\n)?\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objc\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.objc\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.entity.other.inherited-class.objc\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.other.inherited-class.objc\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.divider.objc\\\"},\\\"9\\\":{\\\"name\\\":\\\"meta.inherited-class.objc\\\"}},\\\"contentName\\\":\\\"meta.scope.interface.objc\\\",\\\"end\\\":\\\"((@)end)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.interface-or-protocol.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_innards\\\"}]},\\\"anonymous_pattern_10\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objc\\\"}},\\\"match\\\":\\\"(@)(defs|encode)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.objc\\\"},\\\"anonymous_pattern_11\\\":{\\\"match\\\":\\\"\\\\\\\\bid\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.id.objc\\\"},\\\"anonymous_pattern_12\\\":{\\\"match\\\":\\\"\\\\\\\\b(IBOutlet|IBAction|BOOL|SEL|id|unichar|IMP|Class|instancetype)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.objc\\\"},\\\"anonymous_pattern_13\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objc\\\"}},\\\"match\\\":\\\"(@)(class|protocol)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.objc\\\"},\\\"anonymous_pattern_14\\\":{\\\"begin\\\":\\\"((@)selector)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objc\\\"}},\\\"contentName\\\":\\\"meta.selector.method-name.objc\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objc\\\"}},\\\"name\\\":\\\"meta.selector.objc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objc\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:[a-zA-Z_:][\\\\\\\\w]*)+\\\",\\\"name\\\":\\\"support.function.any-method.name-of-parameter.objc\\\"}]},\\\"anonymous_pattern_15\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.storage.modifier.objc\\\"}},\\\"match\\\":\\\"(@)(synchronized|public|package|private|protected)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.objc\\\"},\\\"anonymous_pattern_16\\\":{\\\"match\\\":\\\"\\\\\\\\b(YES|NO|Nil|nil)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.objc\\\"},\\\"anonymous_pattern_17\\\":{\\\"match\\\":\\\"\\\\\\\\bNSApp\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.foundation.objc\\\"},\\\"anonymous_pattern_18\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.support.function.cocoa.leopard.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.cocoa.leopard.objc\\\"}},\\\"match\\\":\\\"(\\\\\\\\s*)\\\\\\\\b(NS(Rect(ToCGRect|FromCGRect)|MakeCollectable|S(tringFromProtocol|ize(ToCGSize|FromCGSize))|Draw(NinePartImage|ThreePartImage)|P(oint(ToCGPoint|FromCGPoint)|rotocolFromString)|EventMaskFromType|Value))\\\\\\\\b\\\"},\\\"anonymous_pattern_19\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.support.function.leading.cocoa.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.cocoa.objc\\\"}},\\\"match\\\":\\\"(\\\\\\\\s*)\\\\\\\\b(NS(R(ound(DownToMultipleOfPageSize|UpToMultipleOfPageSize)|un(CriticalAlertPanel(RelativeToWindow)?|InformationalAlertPanel(RelativeToWindow)?|AlertPanel(RelativeToWindow)?)|e(set(MapTable|HashTable)|c(ycleZone|t(Clip(List)?|F(ill(UsingOperation|List(UsingOperation|With(Grays|Colors(UsingOperation)?))?)?|romString))|ordAllocationEvent)|turnAddress|leaseAlertPanel|a(dPixel|l(MemoryAvailable|locateCollectable))|gisterServicesProvider)|angeFromString)|Get(SizeAndAlignment|CriticalAlertPanel|InformationalAlertPanel|UncaughtExceptionHandler|FileType(s)?|WindowServerMemory|AlertPanel)|M(i(n(X|Y)|d(X|Y))|ouseInRect|a(p(Remove|Get|Member|Insert(IfAbsent|KnownAbsent)?)|ke(R(ect|ange)|Size|Point)|x(Range|X|Y)))|B(itsPer(SampleFromDepth|PixelFromDepth)|e(stDepth|ep|gin(CriticalAlertSheet|InformationalAlertSheet|AlertSheet)))|S(ho(uldRetainWithZone|w(sServicesMenuItem|AnimationEffect))|tringFrom(R(ect|ange)|MapTable|S(ize|elector)|HashTable|Class|Point)|izeFromString|e(t(ShowsServicesMenuItem|ZoneName|UncaughtExceptionHandler|FocusRingStyle)|lectorFromString|archPathForDirectoriesInDomains)|wap(Big(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|Short|Host(ShortTo(Big|Little)|IntTo(Big|Little)|DoubleTo(Big|Little)|FloatTo(Big|Little)|Long(To(Big|Little)|LongTo(Big|Little)))|Int|Double|Float|L(ittle(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|ong(Long)?)))|H(ighlightRect|o(stByteOrder|meDirectory(ForUser)?)|eight|ash(Remove|Get|Insert(IfAbsent|KnownAbsent)?)|FSType(CodeFromFileType|OfFile))|N(umberOfColorComponents|ext(MapEnumeratorPair|HashEnumeratorItem))|C(o(n(tainsRect|vert(GlyphsToPackedGlyphs|Swapped(DoubleToHost|FloatToHost)|Host(DoubleToSwapped|FloatToSwapped)))|unt(MapTable|HashTable|Frames|Windows(ForContext)?)|py(M(emoryPages|apTableWithZone)|Bits|HashTableWithZone|Object)|lorSpaceFromDepth|mpare(MapTables|HashTables))|lassFromString|reate(MapTable(WithZone)?|HashTable(WithZone)?|Zone|File(namePboardType|ContentsPboardType)))|TemporaryDirectory|I(s(ControllerMarker|EmptyRect|FreedObject)|n(setRect|crementExtraRefCount|te(r(sect(sRect|ionR(ect|ange))|faceStyleForKey)|gralRect)))|Zone(Realloc|Malloc|Name|Calloc|Fr(omPointer|ee))|O(penStepRootDirectory|ffsetRect)|D(i(sableScreenUpdates|videRect)|ottedFrameRect|e(c(imal(Round|Multiply|S(tring|ubtract)|Normalize|Co(py|mpa(ct|re))|IsNotANumber|Divide|Power|Add)|rementExtraRefCountWasZero)|faultMallocZone|allocate(MemoryPages|Object))|raw(Gr(oove|ayBezel)|B(itmap|utton)|ColorTiledRects|TiledRects|DarkBezel|W(hiteBezel|indowBackground)|LightBezel))|U(serName|n(ionR(ect|ange)|registerServicesProvider)|pdateDynamicServices)|Java(Bundle(Setup|Cleanup)|Setup(VirtualMachine)?|Needs(ToLoadClasses|VirtualMachine)|ClassesF(orBundle|romPath)|ObjectNamedInPath|ProvidesClasses)|P(oint(InRect|FromString)|erformService|lanarFromDepth|ageSize)|E(n(d(MapTableEnumeration|HashTableEnumeration)|umerate(MapTable|HashTable)|ableScreenUpdates)|qual(R(ects|anges)|Sizes|Points)|raseRect|xtraRefCount)|F(ileTypeForHFSTypeCode|ullUserName|r(ee(MapTable|HashTable)|ame(Rect(WithWidth(UsingOperation)?)?|Address)))|Wi(ndowList(ForContext)?|dth)|Lo(cationInRange|g(v|PageSize)?)|A(ccessibility(R(oleDescription(ForUIElement)?|aiseBadArgumentException)|Unignored(Children(ForOnlyChild)?|Descendant|Ancestor)|PostNotification|ActionDescription)|pplication(Main|Load)|vailableWindowDepths|ll(MapTable(Values|Keys)|HashTableObjects|ocate(MemoryPages|Collectable|Object)))))\\\\\\\\b\\\"},\\\"anonymous_pattern_2\\\":{\\\"begin\\\":\\\"((@)(implementation))\\\\\\\\s+([A-Za-z_][A-Za-z0-9_]*)\\\\\\\\s*(?::\\\\\\\\s*([A-Za-z][A-Za-z0-9]*))?\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objc\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.objc\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.other.inherited-class.objc\\\"}},\\\"contentName\\\":\\\"meta.scope.implementation.objc\\\",\\\"end\\\":\\\"((@)end)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.implementation.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#implementation_innards\\\"}]},\\\"anonymous_pattern_20\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(RuleEditor|G(arbageCollector|radient)|MapTable|HashTable|Co(ndition|llectionView(Item)?)|T(oolbarItemGroup|extInputClient|r(eeNode|ackingArea))|InvocationOperation|Operation(Queue)?|D(ictionaryController|ockTile)|P(ointer(Functions|Array)|athC(o(ntrol(Delegate)?|mponentCell)|ell(Delegate)?)|r(intPanelAccessorizing|edicateEditor(RowTemplate)?))|ViewController|FastEnumeration|Animat(ionContext|ablePropertyContainer))\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.cocoa.leopard.objc\\\"},\\\"anonymous_pattern_21\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(R(u(nLoop|ler(Marker|View))|e(sponder|cursiveLock|lativeSpecifier)|an(domSpecifier|geSpecifier))|G(etCommand|lyph(Generator|Storage|Info)|raphicsContext)|XML(Node|D(ocument|TD(Node)?)|Parser|Element)|M(iddleSpecifier|ov(ie(View)?|eCommand)|utable(S(tring|et)|C(haracterSet|opying)|IndexSet|D(ictionary|ata)|URLRequest|ParagraphStyle|A(ttributedString|rray))|e(ssagePort(NameServer)?|nu(Item(Cell)?|View)?|t(hodSignature|adata(Item|Query(ResultGroup|AttributeValueTuple)?)))|a(ch(BootstrapServer|Port)|trix))|B(itmapImageRep|ox|u(ndle|tton(Cell)?)|ezierPath|rowser(Cell)?)|S(hadow|c(anner|r(ipt(SuiteRegistry|C(o(ercionHandler|mmand(Description)?)|lassDescription)|ObjectSpecifier|ExecutionContext|WhoseTest)|oll(er|View)|een))|t(epper(Cell)?|atus(Bar|Item)|r(ing|eam))|imple(HorizontalTypesetter|CString)|o(cketPort(NameServer)?|und|rtDescriptor)|p(e(cifierTest|ech(Recognizer|Synthesizer)|ll(Server|Checker))|litView)|e(cureTextField(Cell)?|t(Command)?|archField(Cell)?|rializer|gmentedC(ontrol|ell))|lider(Cell)?|avePanel)|H(ost|TTP(Cookie(Storage)?|URLResponse)|elpManager)|N(ib(Con(nector|trolConnector)|OutletConnector)?|otification(Center|Queue)?|u(ll|mber(Formatter)?)|etService(Browser)?|ameSpecifier)|C(ha(ngeSpelling|racterSet)|o(n(stantString|nection|trol(ler)?|ditionLock)|d(ing|er)|unt(Command|edSet)|pying|lor(Space|P(ick(ing(Custom|Default)|er)|anel)|Well|List)?|m(p(oundPredicate|arisonPredicate)|boBox(Cell)?))|u(stomImageRep|rsor)|IImageRep|ell|l(ipView|o(seCommand|neCommand)|assDescription)|a(ched(ImageRep|URLResponse)|lendar(Date)?)|reateCommand)|T(hread|ypesetter|ime(Zone|r)|o(olbar(Item(Validations)?)?|kenField(Cell)?)|ext(Block|Storage|Container|Tab(le(Block)?)?|Input|View|Field(Cell)?|List|Attachment(Cell)?)?|a(sk|b(le(Header(Cell|View)|Column|View)|View(Item)?))|reeController)|I(n(dex(S(pecifier|et)|Path)|put(Manager|S(tream|erv(iceProvider|er(MouseTracker)?)))|vocation)|gnoreMisspelledWords|mage(Rep|Cell|View)?)|O(ut(putStream|lineView)|pen(GL(Context|Pixel(Buffer|Format)|View)|Panel)|bj(CTypeSerializationCallBack|ect(Controller)?))|D(i(st(antObject(Request)?|ributed(NotificationCenter|Lock))|ctionary|rectoryEnumerator)|ocument(Controller)?|e(serializer|cimalNumber(Behaviors|Handler)?|leteCommand)|at(e(Components|Picker(Cell)?|Formatter)?|a)|ra(wer|ggingInfo))|U(ser(InterfaceValidations|Defaults(Controller)?)|RL(Re(sponse|quest)|Handle(Client)?|C(onnection|ache|redential(Storage)?)|Download(Delegate)?|Prot(ocol(Client)?|ectionSpace)|AuthenticationChallenge(Sender)?)?|n(iqueIDSpecifier|doManager|archiver))|P(ipe|o(sitionalSpecifier|pUpButton(Cell)?|rt(Message|NameServer|Coder)?)|ICTImageRep|ersistentDocument|DFImageRep|a(steboard|nel|ragraphStyle|geLayout)|r(int(Info|er|Operation|Panel)|o(cessInfo|tocolChecker|perty(Specifier|ListSerialization)|gressIndicator|xy)|edicate))|E(numerator|vent|PSImageRep|rror|x(ception|istsCommand|pression))|V(iew(Animation)?|al(idated(ToobarItem|UserInterfaceItem)|ue(Transformer)?))|Keyed(Unarchiver|Archiver)|Qui(ckDrawView|tCommand)|F(ile(Manager|Handle|Wrapper)|o(nt(Manager|Descriptor|Panel)?|rm(Cell|atter)))|W(hoseSpecifier|indow(Controller)?|orkspace)|L(o(c(k(ing)?|ale)|gicalTest)|evelIndicator(Cell)?|ayoutManager)|A(ssertionHandler|nimation|ctionCell|ttributedString|utoreleasePool|TSTypesetter|ppl(ication|e(Script|Event(Manager|Descriptor)))|ffineTransform|lert|r(chiver|ray(Controller)?)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.cocoa.objc\\\"},\\\"anonymous_pattern_22\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(R(oundingMode|ule(Editor(RowType|NestingMode)|rOrientation)|e(questUserAttentionType|lativePosition))|G(lyphInscription|radientDrawingOptions)|XML(NodeKind|D(ocumentContentKind|TDNodeKind)|ParserError)|M(ultibyteGlyphPacking|apTableOptions)|B(itmapFormat|oxType|ezierPathElement|ackgroundStyle|rowserDropOperation)|S(tr(ing(CompareOptions|DrawingOptions|EncodingConversionOptions)|eam(Status|Event))|p(eechBoundary|litViewDividerStyle)|e(archPathD(irectory|omainMask)|gmentS(tyle|witchTracking))|liderType|aveOptions)|H(TTPCookieAcceptPolicy|ashTableOptions)|N(otification(SuspensionBehavior|Coalescing)|umberFormatter(RoundingMode|Behavior|Style|PadPosition)|etService(sError|Options))|C(haracterCollection|o(lor(RenderingIntent|SpaceModel|PanelMode)|mp(oundPredicateType|arisonPredicateModifier))|ellStateValue|al(culationError|endarUnit))|T(ypesetterControlCharacterAction|imeZoneNameStyle|e(stComparisonOperation|xt(Block(Dimension|V(erticalAlignment|alueType)|Layer)|TableLayoutAlgorithm|FieldBezelStyle))|ableView(SelectionHighlightStyle|ColumnAutoresizingStyle)|rackingAreaOptions)|I(n(sertionPosition|te(rfaceStyle|ger))|mage(RepLoadStatus|Scaling|CacheMode|FrameStyle|LoadStatus|Alignment))|Ope(nGLPixelFormatAttribute|rationQueuePriority)|Date(Picker(Mode|Style)|Formatter(Behavior|Style))|U(RL(RequestCachePolicy|HandleStatus|C(acheStoragePolicy|redentialPersistence))|Integer)|P(o(stingStyle|int(ingDeviceType|erFunctionsOptions)|pUpArrowPosition)|athStyle|r(int(ing(Orientation|PaginationMode)|erTableStatus|PanelOptions)|opertyList(MutabilityOptions|Format)|edicateOperatorType))|ExpressionType|KeyValue(SetMutationKind|Change)|QTMovieLoopMode|F(indPanel(SubstringMatchType|Action)|o(nt(RenderingMode|FamilyClass)|cusRingPlacement))|W(hoseSubelementIdentifier|ind(ingRule|ow(B(utton|ackingLocation)|SharingType|CollectionBehavior)))|L(ine(MovementDirection|SweepDirection|CapStyle|JoinStyle)|evelIndicatorStyle)|Animation(BlockingMode|Curve))\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.cocoa.leopard.objc\\\"},\\\"anonymous_pattern_23\\\":{\\\"match\\\":\\\"\\\\\\\\bC(I(Sampler|Co(ntext|lor)|Image(Accumulator)?|PlugIn(Registration)?|Vector|Kernel|Filter(Generator|Shape)?)|A(Renderer|MediaTiming(Function)?|BasicAnimation|ScrollLayer|Constraint(LayoutManager)?|T(iledLayer|extLayer|rans(ition|action))|OpenGLLayer|PropertyAnimation|KeyframeAnimation|Layer|A(nimation(Group)?|ction)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.quartz.objc\\\"},\\\"anonymous_pattern_24\\\":{\\\"match\\\":\\\"\\\\\\\\bC(G(Float|Point|Size|Rect)|IFormat|AConstraintAttribute)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.quartz.objc\\\"},\\\"anonymous_pattern_25\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(R(ect(Edge)?|ange)|G(lyph(Relation|LayoutMode)?|radientType)|M(odalSession|a(trixMode|p(Table|Enumerator)))|B(itmapImageFileType|orderType|uttonType|ezelStyle|ackingStoreType|rowserColumnResizingType)|S(cr(oll(er(Part|Arrow)|ArrowPosition)|eenAuxiliaryOpaque)|tringEncoding|ize|ocketNativeHandle|election(Granularity|Direction|Affinity)|wapped(Double|Float)|aveOperationType)|Ha(sh(Table|Enumerator)|ndler(2)?)|C(o(ntrol(Size|Tint)|mp(ositingOperation|arisonResult))|ell(State|Type|ImagePosition|Attribute))|T(hreadPrivate|ypesetterGlyphInfo|i(ckMarkPosition|tlePosition|meInterval)|o(ol(TipTag|bar(SizeMode|DisplayMode))|kenStyle)|IFFCompression|ext(TabType|Alignment)|ab(State|leViewDropOperation|ViewType)|rackingRectTag)|ImageInterpolation|Zone|OpenGL(ContextAuxiliary|PixelFormatAuxiliary)|D(ocumentChangeType|atePickerElementFlags|ra(werState|gOperation))|UsableScrollerParts|P(oint|r(intingPageOrder|ogressIndicator(Style|Th(ickness|readInfo))))|EventType|KeyValueObservingOptions|Fo(nt(SymbolicTraits|TraitMask|Action)|cusRingType)|W(indow(OrderingMode|Depth)|orkspace(IconCreationOptions|LaunchOptions)|ritingDirection)|L(ineBreakMode|ayout(Status|Direction))|A(nimation(Progress|Effect)|ppl(ication(TerminateReply|DelegateReply|PrintReply)|eEventManagerSuspensionID)|ffineTransformStruct|lertStyle))\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.cocoa.objc\\\"},\\\"anonymous_pattern_26\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(NotFound|Ordered(Ascending|Descending|Same))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.cocoa.objc\\\"},\\\"anonymous_pattern_27\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(MenuDidBeginTracking|ViewDidUpdateTrackingAreas)?Notification\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.notification.cocoa.leopard.objc\\\"},\\\"anonymous_pattern_28\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(Menu(Did(RemoveItem|SendAction|ChangeItem|EndTracking|AddItem)|WillSendAction)|S(ystemColorsDidChange|plitView(DidResizeSubviews|WillResizeSubviews))|C(o(nt(extHelpModeDid(Deactivate|Activate)|rolT(intDidChange|extDid(BeginEditing|Change|EndEditing)))|lor(PanelColorDidChange|ListDidChange)|mboBox(Selection(IsChanging|DidChange)|Will(Dismiss|PopUp)))|lassDescriptionNeededForClass)|T(oolbar(DidRemoveItem|WillAddItem)|ext(Storage(DidProcessEditing|WillProcessEditing)|Did(BeginEditing|Change|EndEditing)|View(DidChange(Selection|TypingAttributes)|WillChangeNotifyingTextView))|ableView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)))|ImageRepRegistryDidChange|OutlineView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)|Item(Did(Collapse|Expand)|Will(Collapse|Expand)))|Drawer(Did(Close|Open)|Will(Close|Open))|PopUpButton(CellWillPopUp|WillPopUp)|View(GlobalFrameDidChange|BoundsDidChange|F(ocusDidChange|rameDidChange))|FontSetChanged|W(indow(Did(Resi(ze|gn(Main|Key))|M(iniaturize|ove)|Become(Main|Key)|ChangeScreen(|Profile)|Deminiaturize|Update|E(ndSheet|xpose))|Will(M(iniaturize|ove)|BeginSheet|Close))|orkspace(SessionDid(ResignActive|BecomeActive)|Did(Mount|TerminateApplication|Unmount|PerformFileOperation|Wake|LaunchApplication)|Will(Sleep|Unmount|PowerOff|LaunchApplication)))|A(ntialiasThresholdChanged|ppl(ication(Did(ResignActive|BecomeActive|Hide|ChangeScreenParameters|U(nhide|pdate)|FinishLaunching)|Will(ResignActive|BecomeActive|Hide|Terminate|U(nhide|pdate)|FinishLaunching))|eEventManagerWillProcessFirstEvent)))Notification\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.notification.cocoa.objc\\\"},\\\"anonymous_pattern_29\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(RuleEditor(RowType(Simple|Compound)|NestingMode(Si(ngle|mple)|Compound|List))|GradientDraws(BeforeStartingLocation|AfterEndingLocation)|M(inusSetExpressionType|a(chPortDeallocate(ReceiveRight|SendRight|None)|pTable(StrongMemory|CopyIn|ZeroingWeakMemory|ObjectPointerPersonality)))|B(oxCustom|undleExecutableArchitecture(X86|I386|PPC(64)?)|etweenPredicateOperatorType|ackgroundStyle(Raised|Dark|L(ight|owered)))|S(tring(DrawingTruncatesLastVisibleLine|EncodingConversion(ExternalRepresentation|AllowLossy))|ubqueryExpressionType|p(e(ech(SentenceBoundary|ImmediateBoundary|WordBoundary)|llingState(GrammarFlag|SpellingFlag))|litViewDividerStyleThi(n|ck))|e(rvice(RequestTimedOutError|M(iscellaneousError|alformedServiceDictionaryError)|InvalidPasteboardDataError|ErrorM(inimum|aximum)|Application(NotFoundError|LaunchFailedError))|gmentStyle(Round(Rect|ed)|SmallSquare|Capsule|Textured(Rounded|Square)|Automatic)))|H(UDWindowMask|ashTable(StrongMemory|CopyIn|ZeroingWeakMemory|ObjectPointerPersonality))|N(oModeColorPanel|etServiceNoAutoRename)|C(hangeRedone|o(ntainsPredicateOperatorType|l(orRenderingIntent(RelativeColorimetric|Saturation|Default|Perceptual|AbsoluteColorimetric)|lectorDisabledOption))|ellHit(None|ContentArea|TrackableArea|EditableTextArea))|T(imeZoneNameStyle(S(hort(Standard|DaylightSaving)|tandard)|DaylightSaving)|extFieldDatePickerStyle|ableViewSelectionHighlightStyle(Regular|SourceList)|racking(Mouse(Moved|EnteredAndExited)|CursorUpdate|InVisibleRect|EnabledDuringMouseDrag|A(ssumeInside|ctive(In(KeyWindow|ActiveApp)|WhenFirstResponder|Always))))|I(n(tersectSetExpressionType|dexedColorSpaceModel)|mageScale(None|Proportionally(Down|UpOrDown)|AxesIndependently))|Ope(nGLPFAAllowOfflineRenderers|rationQueue(DefaultMaxConcurrentOperationCount|Priority(High|Normal|Very(High|Low)|Low)))|D(iacriticInsensitiveSearch|ownloadsDirectory)|U(nionSetExpressionType|TF(16(BigEndianStringEncoding|StringEncoding|LittleEndianStringEncoding)|32(BigEndianStringEncoding|StringEncoding|LittleEndianStringEncoding)))|P(ointerFunctions(Ma(chVirtualMemory|llocMemory)|Str(ongMemory|uctPersonality)|C(StringPersonality|opyIn)|IntegerPersonality|ZeroingWeakMemory|O(paque(Memory|Personality)|bjectP(ointerPersonality|ersonality)))|at(hStyle(Standard|NavigationBar|PopUp)|ternColorSpaceModel)|rintPanelShows(Scaling|Copies|Orientation|P(a(perSize|ge(Range|SetupAccessory))|review)))|Executable(RuntimeMismatchError|NotLoadableError|ErrorM(inimum|aximum)|L(inkError|oadError)|ArchitectureMismatchError)|KeyValueObservingOption(Initial|Prior)|F(i(ndPanelSubstringMatchType(StartsWith|Contains|EndsWith|FullWord)|leRead(TooLargeError|UnknownStringEncodingError))|orcedOrderingSearch)|Wi(ndow(BackingLocation(MainMemory|Default|VideoMemory)|Sharing(Read(Only|Write)|None)|CollectionBehavior(MoveToActiveSpace|CanJoinAllSpaces|Default))|dthInsensitiveSearch)|AggregateExpressionType)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.cocoa.leopard.objc\\\"},\\\"anonymous_pattern_3\\\":{\\\"begin\\\":\\\"@\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objc\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objc\\\"}},\\\"name\\\":\\\"string.quoted.double.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"match\\\":\\\"%(\\\\\\\\d+\\\\\\\\$)?[#0\\\\\\\\- +']*((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?(\\\\\\\\.((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?)?[@]\\\",\\\"name\\\":\\\"constant.other.placeholder.objc\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"}]},\\\"anonymous_pattern_30\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(R(GB(ModeColorPanel|ColorSpaceModel)|ight(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey)|ound(RectBezelStyle|Bankers|ed(BezelStyle|TokenStyle|DisclosureBezelStyle)|Down|Up|Plain|Line(CapStyle|JoinStyle))|un(StoppedResponse|ContinuesResponse|AbortedResponse)|e(s(izableWindowMask|et(CursorRectsRunLoopOrdering|FunctionKey))|ce(ssedBezelStyle|iver(sCantHandleCommandScriptError|EvaluationScriptError))|turnTextMovement|doFunctionKey|quiredArgumentsMissingScriptError|l(evancyLevelIndicatorStyle|ative(Before|After))|gular(SquareBezelStyle|ControlSize)|moveTraitFontAction)|a(n(domSubelement|geDateMode)|tingLevelIndicatorStyle|dio(ModeMatrix|Button)))|G(IFFileType|lyph(Below|Inscribe(B(elow|ase)|Over(strike|Below)|Above)|Layout(WithPrevious|A(tAPoint|gainstAPoint))|A(ttribute(BidiLevel|Soft|Inscribe|Elastic)|bove))|r(ooveBorder|eaterThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|a(y(ModeColorPanel|ColorSpaceModel)|dient(None|Con(cave(Strong|Weak)|vex(Strong|Weak)))|phiteControlTint)))|XML(N(o(tationDeclarationKind|de(CompactEmptyElement|IsCDATA|OptionsNone|Use(SingleQuotes|DoubleQuotes)|Pre(serve(NamespaceOrder|C(haracterReferences|DATA)|DTD|Prefixes|E(ntities|mptyElements)|Quotes|Whitespace|A(ttributeOrder|ll))|ttyPrint)|ExpandEmptyElement))|amespaceKind)|CommentKind|TextKind|InvalidKind|D(ocument(X(MLKind|HTMLKind|Include)|HTMLKind|T(idy(XML|HTML)|extKind)|IncludeContentTypeDeclaration|Validate|Kind)|TDKind)|P(arser(GTRequiredError|XMLDeclNot(StartedError|FinishedError)|Mi(splaced(XMLDeclarationError|CDATAEndStringError)|xedContentDeclNot(StartedError|FinishedError))|S(t(andaloneValueError|ringNot(StartedError|ClosedError))|paceRequiredError|eparatorRequiredError)|N(MTOKENRequiredError|o(t(ationNot(StartedError|FinishedError)|WellBalancedError)|DTDError)|amespaceDeclarationError|AMERequiredError)|C(haracterRef(In(DTDError|PrologError|EpilogError)|AtEOFError)|o(nditionalSectionNot(StartedError|FinishedError)|mment(NotFinishedError|ContainsDoubleHyphenError))|DATANotFinishedError)|TagNameMismatchError|In(ternalError|valid(HexCharacterRefError|C(haracter(RefError|InEntityError|Error)|onditionalSectionError)|DecimalCharacterRefError|URIError|Encoding(NameError|Error)))|OutOfMemoryError|D(ocumentStartError|elegateAbortedParseError|OCTYPEDeclNotFinishedError)|U(RI(RequiredError|FragmentError)|n(declaredEntityError|parsedEntityError|knownEncodingError|finishedTagError))|P(CDATARequiredError|ublicIdentifierRequiredError|arsedEntityRef(MissingSemiError|NoNameError|In(Internal(SubsetError|Error)|PrologError|EpilogError)|AtEOFError)|r(ocessingInstructionNot(StartedError|FinishedError)|ematureDocumentEndError))|E(n(codingNotSupportedError|tity(Ref(In(DTDError|PrologError|EpilogError)|erence(MissingSemiError|WithoutNameError)|LoopError|AtEOFError)|BoundaryError|Not(StartedError|FinishedError)|Is(ParameterError|ExternalError)|ValueRequiredError))|qualExpectedError|lementContentDeclNot(StartedError|FinishedError)|xt(ernalS(tandaloneEntityError|ubsetNotFinishedError)|raContentError)|mptyDocumentError)|L(iteralNot(StartedError|FinishedError)|T(RequiredError|SlashRequiredError)|essThanSymbolInAttributeError)|Attribute(RedefinedError|HasNoValueError|Not(StartedError|FinishedError)|ListNot(StartedError|FinishedError)))|rocessingInstructionKind)|E(ntity(GeneralKind|DeclarationKind|UnparsedKind|P(ar(sedKind|ameterKind)|redefined))|lement(Declaration(MixedKind|UndefinedKind|E(lementKind|mptyKind)|Kind|AnyKind)|Kind))|Attribute(N(MToken(sKind|Kind)|otationKind)|CDATAKind|ID(Ref(sKind|Kind)|Kind)|DeclarationKind|En(tit(yKind|iesKind)|umerationKind)|Kind))|M(i(n(XEdge|iaturizableWindowMask|YEdge|uteCalendarUnit)|terLineJoinStyle|ddleSubelement|xedState)|o(nthCalendarUnit|deSwitchFunctionKey|use(Moved(Mask)?|E(ntered(Mask)?|ventSubtype|xited(Mask)?))|veToBezierPathElement|mentary(ChangeButton|Push(Button|InButton)|Light(Button)?))|enuFunctionKey|a(c(intoshInterfaceStyle|OSRomanStringEncoding)|tchesPredicateOperatorType|ppedRead|x(XEdge|YEdge))|ACHOperatingSystem)|B(MPFileType|o(ttomTabsBezelBorder|ldFontMask|rderlessWindowMask|x(Se(condary|parator)|OldStyle|Primary))|uttLineCapStyle|e(zelBorder|velLineJoinStyle|low(Bottom|Top)|gin(sWith(Comparison|PredicateOperatorType)|FunctionKey))|lueControlTint|ack(spaceCharacter|tabTextMovement|ingStore(Retained|Buffered|Nonretained)|TabCharacter|wardsSearch|groundTab)|r(owser(NoColumnResizing|UserColumnResizing|AutoColumnResizing)|eakFunctionKey))|S(h(ift(JISStringEncoding|KeyMask)|ow(ControlGlyphs|InvisibleGlyphs)|adowlessSquareBezelStyle)|y(s(ReqFunctionKey|tem(D(omainMask|efined(Mask)?)|FunctionKey))|mbolStringEncoding)|c(a(nnedOption|le(None|ToFit|Proportionally))|r(oll(er(NoPart|Increment(Page|Line|Arrow)|Decrement(Page|Line|Arrow)|Knob(Slot)?|Arrows(M(inEnd|axEnd)|None|DefaultSetting))|Wheel(Mask)?|LockFunctionKey)|eenChangedEventType))|t(opFunctionKey|r(ingDrawing(OneShot|DisableScreenFontSubstitution|Uses(DeviceMetrics|FontLeading|LineFragmentOrigin))|eam(Status(Reading|NotOpen|Closed|Open(ing)?|Error|Writing|AtEnd)|Event(Has(BytesAvailable|SpaceAvailable)|None|OpenCompleted|E(ndEncountered|rrorOccurred)))))|i(ngle(DateMode|UnderlineStyle)|ze(DownFontAction|UpFontAction))|olarisOperatingSystem|unOSOperatingSystem|pecialPageOrder|e(condCalendarUnit|lect(By(Character|Paragraph|Word)|i(ng(Next|Previous)|onAffinity(Downstream|Upstream))|edTab|FunctionKey)|gmentSwitchTracking(Momentary|Select(One|Any)))|quareLineCapStyle|witchButton|ave(ToOperation|Op(tions(Yes|No|Ask)|eration)|AsOperation)|mall(SquareBezelStyle|C(ontrolSize|apsFontMask)|IconButtonBezelStyle))|H(ighlightModeMatrix|SBModeColorPanel|o(ur(Minute(SecondDatePickerElementFlag|DatePickerElementFlag)|CalendarUnit)|rizontalRuler|meFunctionKey)|TTPCookieAcceptPolicy(Never|OnlyFromMainDocumentDomain|Always)|e(lp(ButtonBezelStyle|KeyMask|FunctionKey)|avierFontAction)|PUXOperatingSystem)|Year(MonthDa(yDatePickerElementFlag|tePickerElementFlag)|CalendarUnit)|N(o(n(StandardCharacterSetFontMask|ZeroWindingRule|activatingPanelMask|LossyASCIIStringEncoding)|Border|t(ification(SuspensionBehavior(Hold|Coalesce|D(eliverImmediately|rop))|NoCoalescing|CoalescingOn(Sender|Name)|DeliverImmediately|PostToAllSessions)|PredicateType|EqualToPredicateOperatorType)|S(cr(iptError|ollerParts)|ubelement|pecifierError)|CellMask|T(itle|opLevelContainersSpecifierError|abs(BezelBorder|NoBorder|LineBorder))|I(nterfaceStyle|mage)|UnderlineStyle|FontChangeAction)|u(ll(Glyph|CellType)|m(eric(Search|PadKeyMask)|berFormatter(Round(Half(Down|Up|Even)|Ceiling|Down|Up|Floor)|Behavior(10|Default)|S(cientificStyle|pellOutStyle)|NoStyle|CurrencyStyle|DecimalStyle|P(ercentStyle|ad(Before(Suffix|Prefix)|After(Suffix|Prefix))))))|e(t(Services(BadArgumentError|NotFoundError|C(ollisionError|ancelledError)|TimeoutError|InvalidError|UnknownError|ActivityInProgress)|workDomainMask)|wlineCharacter|xt(StepInterfaceStyle|FunctionKey))|EXTSTEPStringEncoding|a(t(iveShortGlyphPacking|uralTextAlignment)|rrowFontMask))|C(hange(ReadOtherContents|GrayCell(Mask)?|BackgroundCell(Mask)?|Cleared|Done|Undone|Autosaved)|MYK(ModeColorPanel|ColorSpaceModel)|ircular(BezelStyle|Slider)|o(n(stantValueExpressionType|t(inuousCapacityLevelIndicatorStyle|entsCellMask|ain(sComparison|erSpecifierError)|rol(Glyph|KeyMask))|densedFontMask)|lor(Panel(RGBModeMask|GrayModeMask|HSBModeMask|C(MYKModeMask|olorListModeMask|ustomPaletteModeMask|rayonModeMask)|WheelModeMask|AllModesMask)|ListModeColorPanel)|reServiceDirectory|m(p(osite(XOR|Source(In|O(ut|ver)|Atop)|Highlight|C(opy|lear)|Destination(In|O(ut|ver)|Atop)|Plus(Darker|Lighter))|ressedFontMask)|mandKeyMask))|u(stom(SelectorPredicateOperatorType|PaletteModeColorPanel)|r(sor(Update(Mask)?|PointingDevice)|veToBezierPathElement))|e(nterT(extAlignment|abStopType)|ll(State|H(ighlighted|as(Image(Horizontal|OnLeftOrBottom)|OverlappingImage))|ChangesContents|Is(Bordered|InsetButton)|Disabled|Editable|LightsBy(Gray|Background|Contents)|AllowsMixedState))|l(ipPagination|o(s(ePathBezierPathElement|ableWindowMask)|ckAndCalendarDatePickerStyle)|ear(ControlTint|DisplayFunctionKey|LineFunctionKey))|a(seInsensitive(Search|PredicateOption)|n(notCreateScriptCommandError|cel(Button|TextMovement))|chesDirectory|lculation(NoError|Overflow|DivideByZero|Underflow|LossOfPrecision)|rriageReturnCharacter)|r(itical(Request|AlertStyle)|ayonModeColorPanel))|T(hick(SquareBezelStyle|erSquareBezelStyle)|ypesetter(Behavior|HorizontalTabAction|ContainerBreakAction|ZeroAdvancementAction|OriginalBehavior|ParagraphBreakAction|WhitespaceAction|L(ineBreakAction|atestBehavior))|i(ckMark(Right|Below|Left|Above)|tledWindowMask|meZoneDatePickerElementFlag)|o(olbarItemVisibilityPriority(Standard|High|User|Low)|pTabsBezelBorder|ggleButton)|IFF(Compression(N(one|EXT)|CCITTFAX(3|4)|OldJPEG|JPEG|PackBits|LZW)|FileType)|e(rminate(Now|Cancel|Later)|xt(Read(InapplicableDocumentTypeError|WriteErrorM(inimum|aximum))|Block(M(i(nimum(Height|Width)|ddleAlignment)|a(rgin|ximum(Height|Width)))|B(o(ttomAlignment|rder)|aselineAlignment)|Height|TopAlignment|P(ercentageValueType|adding)|Width|AbsoluteValueType)|StorageEdited(Characters|Attributes)|CellType|ured(RoundedBezelStyle|BackgroundWindowMask|SquareBezelStyle)|Table(FixedLayoutAlgorithm|AutomaticLayoutAlgorithm)|Field(RoundedBezel|SquareBezel|AndStepperDatePickerStyle)|WriteInapplicableDocumentTypeError|ListPrependEnclosingMarker))|woByteGlyphPacking|ab(Character|TextMovement|le(tP(oint(Mask|EventSubtype)?|roximity(Mask|EventSubtype)?)|Column(NoResizing|UserResizingMask|AutoresizingMask)|View(ReverseSequentialColumnAutoresizingStyle|GridNone|S(olid(HorizontalGridLineMask|VerticalGridLineMask)|equentialColumnAutoresizingStyle)|NoColumnAutoresizing|UniformColumnAutoresizingStyle|FirstColumnOnlyAutoresizingStyle|LastColumnOnlyAutoresizingStyle)))|rackModeMatrix)|I(n(sert(CharFunctionKey|FunctionKey|LineFunctionKey)|t(Type|ernalS(criptError|pecifierError))|dexSubelement|validIndexSpecifierError|formational(Request|AlertStyle)|PredicateOperatorType)|talicFontMask|SO(2022JPStringEncoding|Latin(1StringEncoding|2StringEncoding))|dentityMappingCharacterCollection|llegalTextMovement|mage(R(ight|ep(MatchesDevice|LoadStatus(ReadingHeader|Completed|InvalidData|Un(expectedEOF|knownType)|WillNeedAllData)))|Below|C(ellType|ache(BySize|Never|Default|Always))|Interpolation(High|None|Default|Low)|O(nly|verlaps)|Frame(Gr(oove|ayBezel)|Button|None|Photo)|L(oadStatus(ReadError|C(ompleted|ancelled)|InvalidData|UnexpectedEOF)|eft)|A(lign(Right|Bottom(Right|Left)?|Center|Top(Right|Left)?|Left)|bove)))|O(n(State|eByteGlyphPacking|OffButton|lyScrollerArrows)|ther(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|TextMovement)|SF1OperatingSystem|pe(n(GL(GO(Re(setLibrary|tainRenderers)|ClearFormatCache|FormatCacheSize)|PFA(R(obust|endererID)|M(inimumPolicy|ulti(sample|Screen)|PSafe|aximumPolicy)|BackingStore|S(creenMask|te(ncilSize|reo)|ingleRenderer|upersample|ample(s|Buffers|Alpha))|NoRecovery|C(o(lor(Size|Float)|mpliant)|losestPolicy)|OffScreen|D(oubleBuffer|epthSize)|PixelBuffer|VirtualScreenCount|FullScreen|Window|A(cc(umSize|elerated)|ux(Buffers|DepthStencil)|l(phaSize|lRenderers))))|StepUnicodeReservedBase)|rationNotSupportedForKeyS(criptError|pecifierError))|ffState|KButton|rPredicateType|bjC(B(itfield|oolType)|S(hortType|tr(ingType|uctType)|electorType)|NoType|CharType|ObjectType|DoubleType|UnionType|PointerType|VoidType|FloatType|Long(Type|longType)|ArrayType))|D(i(s(c(losureBezelStyle|reteCapacityLevelIndicatorStyle)|playWindowRunLoopOrdering)|acriticInsensitivePredicateOption|rect(Selection|PredicateModifier))|o(c(ModalWindowMask|ument(Directory|ationDirectory))|ubleType|wn(TextMovement|ArrowFunctionKey))|e(s(cendingPageOrder|ktopDirectory)|cimalTabStopType|v(ice(NColorSpaceModel|IndependentModifierFlagsMask)|eloper(Directory|ApplicationDirectory))|fault(ControlTint|TokenStyle)|lete(Char(acter|FunctionKey)|FunctionKey|LineFunctionKey)|moApplicationDirectory)|a(yCalendarUnit|teFormatter(MediumStyle|Behavior(10|Default)|ShortStyle|NoStyle|FullStyle|LongStyle))|ra(wer(Clos(ingState|edState)|Open(ingState|State))|gOperation(Generic|Move|None|Copy|Delete|Private|Every|Link|All)))|U(ser(CancelledError|D(irectory|omainMask)|FunctionKey)|RL(Handle(NotLoaded|Load(Succeeded|InProgress|Failed))|CredentialPersistence(None|Permanent|ForSession))|n(scaledWindowMask|cachedRead|i(codeStringEncoding|talicFontMask|fiedTitleAndToolbarWindowMask)|d(o(CloseGroupingRunLoopOrdering|FunctionKey)|e(finedDateComponent|rline(Style(Single|None|Thick|Double)|Pattern(Solid|D(ot|ash(Dot(Dot)?)?)))))|known(ColorSpaceModel|P(ointingDevice|ageOrder)|KeyS(criptError|pecifierError))|boldFontMask)|tilityWindowMask|TF8StringEncoding|p(dateWindowsRunLoopOrdering|TextMovement|ArrowFunctionKey))|J(ustifiedTextAlignment|PEG(2000FileType|FileType)|apaneseEUC(GlyphPacking|StringEncoding))|P(o(s(t(Now|erFontMask|WhenIdle|ASAP)|iti(on(Replace|Be(fore|ginning)|End|After)|ve(IntType|DoubleType|FloatType)))|pUp(NoArrow|ArrowAt(Bottom|Center))|werOffEventType|rtraitOrientation)|NGFileType|ush(InCell(Mask)?|OnPushOffButton)|e(n(TipMask|UpperSideMask|PointingDevice|LowerSideMask)|riodic(Mask)?)|P(S(caleField|tatus(Title|Field)|aveButton)|N(ote(Title|Field)|ame(Title|Field))|CopiesField|TitleField|ImageButton|OptionsButton|P(a(perFeedButton|ge(Range(To|From)|ChoiceMatrix))|reviewButton)|LayoutButton)|lainTextTokenStyle|a(useFunctionKey|ragraphSeparatorCharacter|ge(DownFunctionKey|UpFunctionKey))|r(int(ing(ReplyLater|Success|Cancelled|Failure)|ScreenFunctionKey|erTable(NotFound|OK|Error)|FunctionKey)|o(p(ertyList(XMLFormat|MutableContainers(AndLeaves)?|BinaryFormat|Immutable|OpenStepFormat)|rietaryStringEncoding)|gressIndicator(BarStyle|SpinningStyle|Preferred(SmallThickness|Thickness|LargeThickness|AquaThickness)))|e(ssedTab|vFunctionKey))|L(HeightForm|CancelButton|TitleField|ImageButton|O(KButton|rientationMatrix)|UnitsButton|PaperNameButton|WidthForm))|E(n(terCharacter|d(sWith(Comparison|PredicateOperatorType)|FunctionKey))|v(e(nOddWindingRule|rySubelement)|aluatedObjectExpressionType)|qualTo(Comparison|PredicateOperatorType)|ra(serPointingDevice|CalendarUnit|DatePickerElementFlag)|x(clude(10|QuickDrawElementsIconCreationOption)|pandedFontMask|ecuteFunctionKey))|V(i(ew(M(in(XMargin|YMargin)|ax(XMargin|YMargin))|HeightSizable|NotSizable|WidthSizable)|aPanelFontAction)|erticalRuler|a(lidationErrorM(inimum|aximum)|riableExpressionType))|Key(SpecifierEvaluationScriptError|Down(Mask)?|Up(Mask)?|PathExpressionType|Value(MinusSetMutation|SetSetMutation|Change(Re(placement|moval)|Setting|Insertion)|IntersectSetMutation|ObservingOption(New|Old)|UnionSetMutation|ValidationError))|QTMovie(NormalPlayback|Looping(BackAndForthPlayback|Playback))|F(1(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|7FunctionKey|i(nd(PanelAction(Replace(A(ndFind|ll(InSelection)?))?|S(howFindPanel|e(tFindString|lectAll(InSelection)?))|Next|Previous)|FunctionKey)|tPagination|le(Read(No(SuchFileError|PermissionError)|CorruptFileError|In(validFileNameError|applicableStringEncodingError)|Un(supportedSchemeError|knownError))|HandlingPanel(CancelButton|OKButton)|NoSuchFileError|ErrorM(inimum|aximum)|Write(NoPermissionError|In(validFileNameError|applicableStringEncodingError)|OutOfSpaceError|Un(supportedSchemeError|knownError))|LockingError)|xedPitchFontMask)|2(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|o(nt(Mo(noSpaceTrait|dernSerifsClass)|BoldTrait|S(ymbolicClass|criptsClass|labSerifsClass|ansSerifClass)|C(o(ndensedTrait|llectionApplicationOnlyMask)|larendonSerifsClass)|TransitionalSerifsClass|I(ntegerAdvancementsRenderingMode|talicTrait)|O(ldStyleSerifsClass|rnamentalsClass)|DefaultRenderingMode|U(nknownClass|IOptimizedTrait)|Panel(S(hadowEffectModeMask|t(andardModesMask|rikethroughEffectModeMask)|izeModeMask)|CollectionModeMask|TextColorEffectModeMask|DocumentColorEffectModeMask|UnderlineEffectModeMask|FaceModeMask|All(ModesMask|EffectsModeMask))|ExpandedTrait|VerticalTrait|F(amilyClassMask|reeformSerifsClass)|Antialiased(RenderingMode|IntegerAdvancementsRenderingMode))|cusRing(Below|Type(None|Default|Exterior)|Only|Above)|urByteGlyphPacking|rm(attingError(M(inimum|aximum))?|FeedCharacter))|8FunctionKey|unction(ExpressionType|KeyMask)|3(1FunctionKey|2FunctionKey|3FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey)|9FunctionKey|4FunctionKey|P(RevertButton|S(ize(Title|Field)|etButton)|CurrentField|Preview(Button|Field))|l(oat(ingPointSamplesBitmapFormat|Type)|agsChanged(Mask)?)|axButton|5FunctionKey|6FunctionKey)|W(heelModeColorPanel|indow(s(NTOperatingSystem|CP125(1StringEncoding|2StringEncoding|3StringEncoding|4StringEncoding|0StringEncoding)|95(InterfaceStyle|OperatingSystem))|M(iniaturizeButton|ovedEventType)|Below|CloseButton|ToolbarButton|ZoomButton|Out|DocumentIconButton|ExposedEventType|Above)|orkspaceLaunch(NewInstance|InhibitingBackgroundOnly|Default|PreferringClassic|WithoutA(ctivation|ddingToRecents)|A(sync|nd(Hide(Others)?|Print)|llowingClassicStartup))|eek(day(CalendarUnit|OrdinalCalendarUnit)|CalendarUnit)|a(ntsBidiLevels|rningAlertStyle)|r(itingDirection(RightToLeft|Natural|LeftToRight)|apCalendarComponents))|L(i(stModeMatrix|ne(Moves(Right|Down|Up|Left)|B(order|reakBy(C(harWrapping|lipping)|Truncating(Middle|Head|Tail)|WordWrapping))|S(eparatorCharacter|weep(Right|Down|Up|Left))|ToBezierPathElement|DoesntMove|arSlider)|teralSearch|kePredicateOperatorType|ghterFontAction|braryDirectory)|ocalDomainMask|e(ssThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|ft(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey))|a(yout(RightToLeft|NotDone|CantFit|OutOfGlyphs|Done|LeftToRight)|ndscapeOrientation)|ABColorSpaceModel)|A(sc(iiWithDoubleByteEUCGlyphPacking|endingPageOrder)|n(y(Type|PredicateModifier|EventMask)|choredSearch|imation(Blocking|Nonblocking(Threaded)?|E(ffect(DisappearingItemDefault|Poof)|ase(In(Out)?|Out))|Linear)|dPredicateType)|t(Bottom|tachmentCharacter|omicWrite|Top)|SCIIStringEncoding|d(obe(GB1CharacterCollection|CNS1CharacterCollection|Japan(1CharacterCollection|2CharacterCollection)|Korea1CharacterCollection)|dTraitFontAction|minApplicationDirectory)|uto(saveOperation|Pagination)|pp(lication(SupportDirectory|D(irectory|e(fined(Mask)?|legateReply(Success|Cancel|Failure)|activatedEventType))|ActivatedEventType)|KitDefined(Mask)?)|l(ternateKeyMask|pha(ShiftKeyMask|NonpremultipliedBitmapFormat|FirstBitmapFormat)|ert(SecondButtonReturn|ThirdButtonReturn|OtherReturn|DefaultReturn|ErrorReturn|FirstButtonReturn|AlternateReturn)|l(ScrollerParts|DomainsMask|PredicateModifier|LibrariesDirectory|ApplicationsDirectory))|rgument(sWrongScriptError|EvaluationScriptError)|bove(Bottom|Top)|WTEventType))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.cocoa.objc\\\"},\\\"anonymous_pattern_4\\\":{\\\"begin\\\":\\\"\\\\\\\\b(id)\\\\\\\\s*(?=<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.objc\\\"}},\\\"end\\\":\\\"(?<=>)\\\",\\\"name\\\":\\\"meta.id-with-protocol.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#protocol_list\\\"}]},\\\"anonymous_pattern_5\\\":{\\\"match\\\":\\\"\\\\\\\\b(NS_DURING|NS_HANDLER|NS_ENDHANDLER)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.macro.objc\\\"},\\\"anonymous_pattern_7\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objc\\\"}},\\\"match\\\":\\\"(@)(try|catch|finally|throw)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.exception.objc\\\"},\\\"anonymous_pattern_8\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objc\\\"}},\\\"match\\\":\\\"(@)(synchronized)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.synchronize.objc\\\"},\\\"anonymous_pattern_9\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objc\\\"}},\\\"match\\\":\\\"(@)(required|optional)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.protocol-specification.objc\\\"},\\\"apple_foundation_functional_macros\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:API_AVAILABLE|API_DEPRECATED|API_UNAVAILABLE|NS_AVAILABLE|NS_AVAILABLE_MAC|NS_AVAILABLE_IOS|NS_DEPRECATED|NS_DEPRECATED_MAC|NS_DEPRECATED_IOS|NS_SWIFT_NAME))(?:(?:\\\\\\\\s)+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.apple-foundation.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.macro.arguments.begin.bracket.round.apple-foundation.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.macro.arguments.end.bracket.round.apple-foundation.objc\\\"}},\\\"name\\\":\\\"meta.preprocessor.macro.callable.apple-foundation.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#c_lang\\\"}]},\\\"bracketed_content\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.objc\\\"}},\\\"name\\\":\\\"meta.bracketed.objc\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=predicateWithFormat:)(?<=NSPredicate )(predicateWithFormat:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"name\\\":\\\"meta.function-call.predicate.objc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objc\\\"}},\\\"match\\\":\\\"\\\\\\\\bargument(Array|s)(:)\\\",\\\"name\\\":\\\"support.function.any-method.name-of-parameter.objc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objc\\\"}},\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+(:)\\\",\\\"name\\\":\\\"invalid.illegal.unknown-method.objc\\\"},{\\\"begin\\\":\\\"@\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objc\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objc\\\"}},\\\"name\\\":\\\"string.quoted.double.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(AND|OR|NOT|IN)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logical.predicate.cocoa.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(ALL|ANY|SOME|NONE)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.predicate.cocoa.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(NULL|NIL|SELF|TRUE|YES|FALSE|NO|FIRST|LAST|SIZE)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.predicate.cocoa.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(MATCHES|CONTAINS|BEGINSWITH|ENDSWITH|BETWEEN)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.comparison.predicate.cocoa.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\bC(ASEINSENSITIVE|I)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.modifier.predicate.cocoa.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(ANYKEY|SUBQUERY|CAST|TRUEPREDICATE|FALSEPREDICATE)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.predicate.cocoa.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[abefnrtv'\\\\\\\"?]|[0-3]\\\\\\\\d{,2}|[4-7]\\\\\\\\d?|x[a-zA-Z0-9]+)\\\",\\\"name\\\":\\\"constant.character.escape.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape.objc\\\"}]},{\\\"include\\\":\\\"#special_variables\\\"},{\\\"include\\\":\\\"#c_functions\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\\w)(?<=[\\\\\\\\w\\\\\\\\])\\\\\\\"] )(\\\\\\\\w+(?:(:)|(?=\\\\\\\\])))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"name\\\":\\\"meta.function-call.objc\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objc\\\"}},\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+(:)\\\",\\\"name\\\":\\\"support.function.any-method.name-of-parameter.objc\\\"},{\\\"include\\\":\\\"#special_variables\\\"},{\\\"include\\\":\\\"#c_functions\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"#special_variables\\\"},{\\\"include\\\":\\\"#c_functions\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"c_functions\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.support.function.leading.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.C99.objc\\\"}},\\\"match\\\":\\\"(\\\\\\\\s*)\\\\\\\\b(hypot(f|l)?|s(scanf|ystem|nprintf|ca(nf|lb(n(f|l)?|ln(f|l)?))|i(n(h(f|l)?|f|l)?|gn(al|bit))|tr(s(tr|pn)|nc(py|at|mp)|c(spn|hr|oll|py|at|mp)|to(imax|d|u(l(l)?|max)|k|f|l(d|l)?)|error|pbrk|ftime|len|rchr|xfrm)|printf|et(jmp|vbuf|locale|buf)|qrt(f|l)?|w(scanf|printf)|rand)|n(e(arbyint(f|l)?|xt(toward(f|l)?|after(f|l)?))|an(f|l)?)|c(s(in(h(f|l)?|f|l)?|qrt(f|l)?)|cos(h(f)?|f|l)?|imag(f|l)?|t(ime|an(h(f|l)?|f|l)?)|o(s(h(f|l)?|f|l)?|nj(f|l)?|pysign(f|l)?)|p(ow(f|l)?|roj(f|l)?)|e(il(f|l)?|xp(f|l)?)|l(o(ck|g(f|l)?)|earerr)|a(sin(h(f|l)?|f|l)?|cos(h(f|l)?|f|l)?|tan(h(f|l)?|f|l)?|lloc|rg(f|l)?|bs(f|l)?)|real(f|l)?|brt(f|l)?)|t(ime|o(upper|lower)|an(h(f|l)?|f|l)?|runc(f|l)?|gamma(f|l)?|mp(nam|file))|i(s(space|n(ormal|an)|cntrl|inf|digit|u(nordered|pper)|p(unct|rint)|finite|w(space|c(ntrl|type)|digit|upper|p(unct|rint)|lower|al(num|pha)|graph|xdigit|blank)|l(ower|ess(equal|greater)?)|al(num|pha)|gr(eater(equal)?|aph)|xdigit|blank)|logb(f|l)?|max(div|abs))|di(v|fftime)|_Exit|unget(c|wc)|p(ow(f|l)?|ut(s|c(har)?|wc(har)?)|error|rintf)|e(rf(c(f|l)?|f|l)?|x(it|p(2(f|l)?|f|l|m1(f|l)?)?))|v(s(scanf|nprintf|canf|printf|w(scanf|printf))|printf|f(scanf|printf|w(scanf|printf))|w(scanf|printf)|a_(start|copy|end|arg))|qsort|f(s(canf|e(tpos|ek))|close|tell|open|dim(f|l)?|p(classify|ut(s|c|w(s|c))|rintf)|e(holdexcept|set(e(nv|xceptflag)|round)|clearexcept|testexcept|of|updateenv|r(aiseexcept|ror)|get(e(nv|xceptflag)|round))|flush|w(scanf|ide|printf|rite)|loor(f|l)?|abs(f|l)?|get(s|c|pos|w(s|c))|re(open|e|ad|xp(f|l)?)|m(in(f|l)?|od(f|l)?|a(f|l|x(f|l)?)?))|l(d(iv|exp(f|l)?)|o(ngjmp|cal(time|econv)|g(1(p(f|l)?|0(f|l)?)|2(f|l)?|f|l|b(f|l)?)?)|abs|l(div|abs|r(int(f|l)?|ound(f|l)?))|r(int(f|l)?|ound(f|l)?)|gamma(f|l)?)|w(scanf|c(s(s(tr|pn)|nc(py|at|mp)|c(spn|hr|oll|py|at|mp)|to(imax|d|u(l(l)?|max)|k|f|l(d|l)?|mbs)|pbrk|ftime|len|r(chr|tombs)|xfrm)|to(b|mb)|rtomb)|printf|mem(set|c(hr|py|mp)|move))|a(s(sert|ctime|in(h(f|l)?|f|l)?)|cos(h(f|l)?|f|l)?|t(o(i|f|l(l)?)|exit|an(h(f|l)?|2(f|l)?|f|l)?)|b(s|ort))|g(et(s|c(har)?|env|wc(har)?)|mtime)|r(int(f|l)?|ound(f|l)?|e(name|alloc|wind|m(ove|quo(f|l)?|ainder(f|l)?))|a(nd|ise))|b(search|towc)|m(odf(f|l)?|em(set|c(hr|py|mp)|move)|ktime|alloc|b(s(init|towcs|rtowcs)|towc|len|r(towc|len))))\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.function-call.leading.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.any-method.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.objc\\\"}},\\\"match\\\":\\\"(?:(?=\\\\\\\\s)(?:(?<=else|new|return)|(?<!\\\\\\\\w))(\\\\\\\\s+))?(\\\\\\\\b(?!(while|for|do|if|else|switch|catch|enumerate|return|r?iterate)\\\\\\\\s*\\\\\\\\()(?:(?!NS)[A-Za-z_][A-Za-z0-9_]*+\\\\\\\\b|::)++)\\\\\\\\s*(\\\\\\\\()\\\",\\\"name\\\":\\\"meta.function-call.objc\\\"}]},\\\"c_lang\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled\\\"},{\\\"include\\\":\\\"#preprocessor-rule-conditional\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#switch_statement\\\"},{\\\"match\\\":\\\"\\\\\\\\b(break|continue|do|else|for|goto|if|_Pragma|return|while)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.objc\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"match\\\":\\\"typedef\\\",\\\"name\\\":\\\"keyword.other.typedef.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.in.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(const|extern|register|restrict|static|volatile|inline|__block)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\bk[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.variable.mac-classic.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\bg[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.global.mac-classic.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\bs[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.static.mac-classic.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(NULL|true|false|TRUE|FALSE)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.objc\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#special_variables\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((\\\\\\\\#)\\\\\\\\s*define)\\\\\\\\s+((?<id>[a-zA-Z_$][\\\\\\\\w$]*))(?:(\\\\\\\\()(\\\\\\\\s*\\\\\\\\g<id>\\\\\\\\s*((,)\\\\\\\\s*\\\\\\\\g<id>\\\\\\\\s*)*(?:\\\\\\\\.\\\\\\\\.\\\\\\\\.)?)(\\\\\\\\)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.define.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.objc\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.objc\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.preprocessor.objc\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.objc\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.objc\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.macro.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(error|warning))\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.diagnostic.$3.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.diagnostic.objc\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objc\\\"}},\\\"end\\\":\\\"\\\\\\\"|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objc\\\"}},\\\"name\\\":\\\"string.quoted.double.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objc\\\"}},\\\"end\\\":\\\"'|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objc\\\"}},\\\"name\\\":\\\"string.quoted.single.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"[^'\\\\\\\"]\\\",\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"string.unquoted.single.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"include\\\":\\\"#comments\\\"}]}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(include(?:_next)?|import))\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.$3.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.include.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objc\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objc\\\"}},\\\"name\\\":\\\"string.quoted.double.include.objc\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objc\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objc\\\"}},\\\"name\\\":\\\"string.quoted.other.lt-gt.include.objc\\\"}]},{\\\"include\\\":\\\"#pragma-mark\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*line)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.line.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(?:((#)\\\\\\\\s*undef))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.undef.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w$]*\\\",\\\"name\\\":\\\"entity.name.function.preprocessor.objc\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(?:((#)\\\\\\\\s*pragma))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.pragma.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.pragma.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w\\\\\\\\-$]*\\\",\\\"name\\\":\\\"entity.other.attribute-name.pragma.preprocessor.objc\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.sys-types.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.pthread.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.stdint.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(noErr|kNilOptions|kInvalidID|kVariableLengthArray)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.mac-classic.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(AbsoluteTime|Boolean|Byte|ByteCount|ByteOffset|BytePtr|CompTimeValue|ConstLogicalAddress|ConstStrFileNameParam|ConstStringPtr|Duration|Fixed|FixedPtr|Float32|Float32Point|Float64|Float80|Float96|FourCharCode|Fract|FractPtr|Handle|ItemCount|LogicalAddress|OptionBits|OSErr|OSStatus|OSType|OSTypePtr|PhysicalAddress|ProcessSerialNumber|ProcessSerialNumberPtr|ProcHandle|Ptr|ResType|ResTypePtr|ShortFixed|ShortFixedPtr|SignedByte|SInt16|SInt32|SInt64|SInt8|Size|StrFileName|StringHandle|StringPtr|TimeBase|TimeRecord|TimeScale|TimeValue|TimeValue64|UInt16|UInt32|UInt64|UInt8|UniChar|UniCharCount|UniCharCountPtr|UniCharPtr|UnicodeScalarValue|UniversalProcHandle|UniversalProcPtr|UnsignedFixed|UnsignedFixedPtr|UnsignedWide|UTF16Char|UTF32Char|UTF8Char)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.mac-classic.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Za-z0-9_]+_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.posix-reserved.objc\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(?!\\\\\\\\s*(?:not|compl|sizeof|not_eq|bitand|xor|bitor|and|or|and_eq|xor_eq|or_eq|alignof|alignas|_Alignof|_Alignas|while|for|do|if|else|goto|switch|return|break|case|continue|default|void|char|short|int|signed|unsigned|long|float|double|bool|_Bool|_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|NULL|true|false|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t|struct|union|enum|typedef|auto|register|static|extern|thread_local|inline|_Noreturn|const|volatile|restrict|_Atomic)\\\\\\\\s*\\\\\\\\()(?=[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-innards\\\"}]},{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\\\\\]\\\\\\\\)]))?(\\\\\\\\[)(?!\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.object.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.objc\\\"}},\\\"name\\\":\\\"meta.bracket.square.access.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\s*\\\\\\\\]\\\",\\\"name\\\":\\\"storage.modifier.array.bracket.square.objc\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.objc\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.objc\\\"}],\\\"repository\\\":{\\\"access-method\\\":{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\\\\\]\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\.)|(->))((?:(?:[a-zA-Z_][a-zA-Z_0-9]*)\\\\\\\\s*(?:(?:\\\\\\\\.)|(?:->)))*)\\\\\\\\s*([a-zA-Z_][a-zA-Z_0-9]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.object.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objc\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.dot-access.objc\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"punctuation.separator.pointer-access.objc\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z_0-9]*\\\",\\\"name\\\":\\\"variable.object.objc\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"everything.else.objc\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.member.objc\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.member.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.member.objc\\\"}},\\\"name\\\":\\\"meta.function-call.member.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},\\\"block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objc\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objc\\\"}},\\\"name\\\":\\\"meta.block.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]}]},\\\"block_innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-conditional-block\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#c_function_call\\\"},{\\\"begin\\\":\\\"(?:(?:(?=\\\\\\\\s)(?<!else|new|return)(?<=\\\\\\\\w)\\\\\\\\s+(and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)))((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.initialization.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.initialization.objc\\\"}},\\\"name\\\":\\\"meta.initialization.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objc\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"include\\\":\\\"#parens-block\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"c_function_call\\\":{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\\\\\s*\\\\\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\]))\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"meta.function-call.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},\\\"case_statement\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)case(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.case.objc\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.case.objc\\\"}},\\\"name\\\":\\\"meta.conditional.case.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#conditional_context\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.toc-list.banner.block.objc\\\"}},\\\"match\\\":\\\"^/\\\\\\\\* =(\\\\\\\\s*.*?)\\\\\\\\s*= \\\\\\\\*/$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.block.objc\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.objc\\\"}},\\\"name\\\":\\\"comment.block.objc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.toc-list.banner.line.objc\\\"}},\\\"match\\\":\\\"^// =(\\\\\\\\s*.*?)\\\\\\\\s*=\\\\\\\\s*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.banner.objc\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.objc\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.objc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line.double-slash.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]}]}]},\\\"conditional_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"},{\\\"include\\\":\\\"#block_innards\\\"}]},\\\"default_statement\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)default(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.default.objc\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.case.default.objc\\\"}},\\\"name\\\":\\\"meta.conditional.case.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#conditional_context\\\"}]},\\\"disabled\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*if(n?def)?\\\\\\\\b.*$\\\",\\\"end\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},\\\"function-call-innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.objc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]},\\\"function-innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#vararg_ellipses\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.objc\\\"}},\\\"name\\\":\\\"meta.function.definition.parameters.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#probably_a_parameter\\\"},{\\\"include\\\":\\\"#function-innards\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-innards\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},\\\"line_continuation_character\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.line-continuation.objc\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\n\\\"}]},\\\"member_access\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special_variables\\\"},{\\\"match\\\":\\\"(.+)\\\",\\\"name\\\":\\\"variable.other.object.access.objc\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objc\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special_variables\\\"},{\\\"match\\\":\\\"(.+)\\\",\\\"name\\\":\\\"variable.other.object.access.objc\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objc\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"variable.other.member.objc\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?-mix:(?:(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|(?:(?:->\\\\\\\\*|->)))\\\\\\\\s*)*)\\\\\\\\s*(\\\\\\\\b(?!(?:void|char|short|int|signed|unsigned|long|float|double|bool|_Bool|_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t))[a-zA-Z_]\\\\\\\\w*\\\\\\\\b(?!\\\\\\\\())\\\"},\\\"method_access\\\":{\\\"begin\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?-mix:(?:(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|(?:(?:->\\\\\\\\*|->)))\\\\\\\\s*)*)\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special_variables\\\"},{\\\"match\\\":\\\"(.+)\\\",\\\"name\\\":\\\"variable.other.object.access.objc\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objc\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special_variables\\\"},{\\\"match\\\":\\\"(.+)\\\",\\\"name\\\":\\\"variable.other.object.access.objc\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objc\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.member.objc\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.member.objc\\\"}},\\\"contentName\\\":\\\"meta.function-call.member.objc\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.member.objc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},\\\"numbers\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(?=\\\\\\\\d|\\\\\\\\.\\\\\\\\d)\\\",\\\"end\\\":\\\"(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objc\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.objc\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.objc\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.objc\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.floating-point.objc\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])(?:([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?((?:(?<=[0-9a-fA-F])\\\\\\\\.|\\\\\\\\.(?=[0-9a-fA-F])))(?:([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?(?:((?<!')([pP])(\\\\\\\\+)?(\\\\\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:([lLfF](?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.decimal.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.decimal.point.objc\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.decimal.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.objc\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.objc\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.objc\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.floating-point.objc\\\"}},\\\"match\\\":\\\"(\\\\\\\\G(?=[0-9.])(?!0[xXbB]))(?:([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?((?:(?<=[0-9])\\\\\\\\.|\\\\\\\\.(?=[0-9])))(?:([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?(?:((?<!')([eE])(\\\\\\\\+)?(\\\\\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:([lLfF](?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.binary.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.binary.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.objc\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[bB])([01](?:(?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.octal.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.octal.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.objc\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0)((?:(?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))+)(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.objc\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.objc\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.objc\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.objc\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?<!')([pP])(\\\\\\\\+)?(\\\\\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.decimal.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.objc\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.objc\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.objc\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objc\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.objc\\\"}},\\\"match\\\":\\\"(\\\\\\\\G(?=[0-9.])(?!0[xXbB]))([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?<!')([eE])(\\\\\\\\+)?(\\\\\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"match\\\":\\\"(?:(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))+\\\",\\\"name\\\":\\\"invalid.illegal.constant.numeric.objc\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![\\\\\\\\w$])(sizeof)(?![\\\\\\\\w$])\\\",\\\"name\\\":\\\"keyword.operator.sizeof.objc\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.objc\\\"},{\\\"match\\\":\\\"%=|\\\\\\\\+=|-=|\\\\\\\\*=|(?<!\\\\\\\\()/=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.objc\\\"},{\\\"match\\\":\\\"&=|\\\\\\\\^=|<<=|>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.objc\\\"},{\\\"match\\\":\\\"<<|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.objc\\\"},{\\\"match\\\":\\\"!=|<=|>=|==|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.objc\\\"},{\\\"match\\\":\\\"&&|!|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.objc\\\"},{\\\"match\\\":\\\"&|\\\\\\\\||\\\\\\\\^|~\\\",\\\"name\\\":\\\"keyword.operator.objc\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.objc\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.objc\\\"},{\\\"begin\\\":\\\"(\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objc\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"},{\\\"include\\\":\\\"$base\\\"}]}]},\\\"parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objc\\\"}},\\\"name\\\":\\\"meta.parens.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"parens-block\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objc\\\"}},\\\"name\\\":\\\"meta.parens.block.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"},{\\\"match\\\":\\\"(?-mix:(?<!:):(?!:))\\\",\\\"name\\\":\\\"punctuation.range-based.objc\\\"}]},\\\"pragma-mark\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.pragma.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.pragma.pragma-mark.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.pragma-mark.objc\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(((#)\\\\\\\\s*pragma\\\\\\\\s+mark)\\\\\\\\s+(.*))\\\",\\\"name\\\":\\\"meta.section.objc\\\"},\\\"preprocessor-rule-conditional\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if(?:n?def)?\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"invalid.illegal.stray-$1.objc\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(else|elif|endif)\\\\\\\\b\\\"}]},\\\"preprocessor-rule-conditional-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if(?:n?def)?\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"invalid.illegal.stray-$1.objc\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(else|elif|endif)\\\\\\\\b\\\"}]},\\\"preprocessor-rule-conditional-line\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\bdefined\\\\\\\\b\\\\\\\\s*$)|(?:\\\\\\\\bdefined\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\s*(?:(?!defined\\\\\\\\b)[a-zA-Z_$][\\\\\\\\w$]*\\\\\\\\b)\\\\\\\\s*\\\\\\\\)*\\\\\\\\s*(?:\\\\\\\\n|//|/\\\\\\\\*|\\\\\\\\?|\\\\\\\\:|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)))\\\",\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\bdefined\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.macro-name.objc\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objc\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#operators\\\"},{\\\"match\\\":\\\"\\\\\\\\b(NULL|true|false|TRUE|FALSE)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.objc\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w$]*\\\",\\\"name\\\":\\\"entity.name.function.preprocessor.objc\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]}]},\\\"preprocessor-rule-define-line-blocks\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objc\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-blocks\\\"},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},\\\"preprocessor-rule-define-line-contents\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#vararg_ellipses\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objc\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objc\\\"}},\\\"name\\\":\\\"meta.block.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-blocks\\\"}]},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objc\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas|asm|__asm__|auto|bool|_Bool|char|_Complex|double|enum|float|_Imaginary|int|long|short|signed|struct|typedef|union|unsigned|void)\\\\\\\\s*\\\\\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\\\\\s*\\\\\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\]))\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!\\\\\\\\w)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.function.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objc\\\"}},\\\"end\\\":\\\"\\\\\\\"|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objc\\\"}},\\\"name\\\":\\\"string.quoted.double.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objc\\\"}},\\\"end\\\":\\\"'|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objc\\\"}},\\\"name\\\":\\\"string.quoted.single.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"preprocessor-rule-define-line-functions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#vararg_ellipses\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.objc\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.objc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objc\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objc\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},\\\"preprocessor-rule-disabled\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]}]},\\\"preprocessor-rule-disabled-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.in-block.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]}]},\\\"preprocessor-rule-disabled-elif\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]},\\\"preprocessor-rule-enabled\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]}]},\\\"preprocessor-rule-enabled-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.in-block.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.in-block.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]}]}]},\\\"preprocessor-rule-enabled-elif\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(elif)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"include\\\":\\\"$base\\\"}]}]},\\\"preprocessor-rule-enabled-elif-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.in-block.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(elif)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]}]},\\\"preprocessor-rule-enabled-else\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"preprocessor-rule-enabled-else-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objc\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]},\\\"probably_a_parameter\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.probably.objc\\\"}},\\\"match\\\":\\\"(?<=(?:[a-zA-Z_0-9] |[&*>\\\\\\\\]\\\\\\\\)]))\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(?=(?:\\\\\\\\[\\\\\\\\]\\\\\\\\s*)?(?:,|\\\\\\\\)))\\\"},\\\"static_assert\\\":{\\\"begin\\\":\\\"(static_assert|_Static_assert)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.static_assert.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.objc\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.objc\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=(?:L|u8|u|U\\\\\\\\s*\\\\\\\\\\\\\\\")?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.objc\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.static_assert.message.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#string_context_c\\\"}]},{\\\"include\\\":\\\"#function_call_context\\\"}]},\\\"storage_types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?-mix:(?<!\\\\\\\\w)(?:void|char|short|int|signed|unsigned|long|float|double|bool|_Bool)(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"storage.type.built-in.primitive.objc\\\"},{\\\"match\\\":\\\"(?-mix:(?<!\\\\\\\\w)(?:_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t)(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"storage.type.built-in.objc\\\"},{\\\"match\\\":\\\"(?-mix:\\\\\\\\b(asm|__asm__|enum|struct|union)\\\\\\\\b)\\\",\\\"name\\\":\\\"storage.type.$1.objc\\\"}]},\\\"string_escaped_char\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[abefnprtv'\\\\\\\"?]|[0-3]\\\\\\\\d{,2}|[4-7]\\\\\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})\\\",\\\"name\\\":\\\"constant.character.escape.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape.objc\\\"}]},\\\"string_placeholder\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"%(\\\\\\\\d+\\\\\\\\$)?[#0\\\\\\\\- +']*[,;:_]?((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?(\\\\\\\\.((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]\\\",\\\"name\\\":\\\"constant.other.placeholder.objc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.placeholder.objc\\\"}},\\\"match\\\":\\\"(%)(?!\\\\\\\"\\\\\\\\s*(PRI|SCN))\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objc\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objc\\\"}},\\\"name\\\":\\\"string.quoted.double.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objc\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objc\\\"}},\\\"name\\\":\\\"string.quoted.single.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]}]},\\\"switch_conditional_parentheses\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.conditional.switch.objc\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.conditional.switch.objc\\\"}},\\\"name\\\":\\\"meta.conditional.switch.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#conditional_context\\\"}]},\\\"switch_statement\\\":{\\\"begin\\\":\\\"(((?<!\\\\\\\\w)switch(?!\\\\\\\\w)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.head.switch.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.switch.objc\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\})|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"name\\\":\\\"meta.block.switch.objc\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"end\\\":\\\"((?:\\\\\\\\{|(?=;)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.switch.objc\\\"}},\\\"name\\\":\\\"meta.head.switch.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#switch_conditional_parentheses\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{)\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.switch.objc\\\"}},\\\"name\\\":\\\"meta.body.switch.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#default_statement\\\"},{\\\"include\\\":\\\"#case_statement\\\"},{\\\"include\\\":\\\"$base\\\"},{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"begin\\\":\\\"(?<=})[\\\\\\\\s\\\\\\\\n]*\\\",\\\"end\\\":\\\"[\\\\\\\\s\\\\\\\\n]*(?=;)\\\",\\\"name\\\":\\\"meta.tail.switch.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]},\\\"vararg_ellipses\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\.\\\\\\\\.\\\\\\\\.(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"punctuation.vararg-ellipses.objc\\\"}}},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.objc\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.objc\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.objc\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.objc\\\"}]}]}]},\\\"disabled\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*if(n?def)?\\\\\\\\b.*$\\\",\\\"comment\\\":\\\"eat nested preprocessor if(def)s\\\",\\\"end\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},\\\"implementation_innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled-implementation\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-implementation\\\"},{\\\"include\\\":\\\"#preprocessor-rule-other-implementation\\\"},{\\\"include\\\":\\\"#property_directive\\\"},{\\\"include\\\":\\\"#method_super\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"interface_innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled-interface\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-interface\\\"},{\\\"include\\\":\\\"#preprocessor-rule-other-interface\\\"},{\\\"include\\\":\\\"#properties\\\"},{\\\"include\\\":\\\"#protocol_list\\\"},{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"method\\\":{\\\"begin\\\":\\\"^(-|\\\\\\\\+)\\\\\\\\s*\\\",\\\"end\\\":\\\"(?=\\\\\\\\{|#)|;\\\",\\\"name\\\":\\\"meta.function.objc\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.type.begin.objc\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*(\\\\\\\\w+\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.type.end.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.objc\\\"}},\\\"name\\\":\\\"meta.return-type.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#protocol_list\\\"},{\\\"include\\\":\\\"#protocol_type_qualifier\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+(?=:)\\\",\\\"name\\\":\\\"entity.name.function.name-of-parameter.objc\\\"},{\\\"begin\\\":\\\"((:))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.name-of-parameter.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.type.begin.objc\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*(\\\\\\\\w+\\\\\\\\b)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.type.end.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.objc\\\"}},\\\"name\\\":\\\"meta.argument-type.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#protocol_list\\\"},{\\\"include\\\":\\\"#protocol_type_qualifier\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"#comment\\\"}]},\\\"method_super\\\":{\\\"begin\\\":\\\"^(?=-|\\\\\\\\+)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=#)\\\",\\\"name\\\":\\\"meta.function-with-body.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"pragma-mark\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.pragma.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.toc-list.pragma-mark.objc\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(pragma\\\\\\\\s+mark)\\\\\\\\s+(.*))\\\",\\\"name\\\":\\\"meta.section.objc\\\"},\\\"preprocessor-rule-disabled-implementation\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.objc\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_innards\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"name\\\":\\\"comment.block.preprocessor.if-branch.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]},\\\"preprocessor-rule-disabled-interface\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.objc\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_innards\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"name\\\":\\\"comment.block.preprocessor.if-branch.objc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]},\\\"preprocessor-rule-enabled-implementation\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0*1)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.objc\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#implementation_innards\\\"}]}]},\\\"preprocessor-rule-enabled-interface\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0*1)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.objc\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.objc\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_innards\\\"}]}]},\\\"preprocessor-rule-other-implementation\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(if(n?def)?)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b).*?(?:(?=(?://|/\\\\\\\\*))|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#implementation_innards\\\"}]},\\\"preprocessor-rule-other-interface\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(if(n?def)?)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.objc\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b).*?(?:(?=(?://|/\\\\\\\\*))|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_innards\\\"}]},\\\"properties\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((@)property)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.property.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objc\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.objc\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.objc\\\"}},\\\"name\\\":\\\"meta.property-with-attributes.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(getter|setter|readonly|readwrite|assign|retain|copy|nonatomic|atomic|strong|weak|nonnull|nullable|null_resettable|null_unspecified|class|direct)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.property.attribute.objc\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.property.objc\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objc\\\"}},\\\"match\\\":\\\"((@)property)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.property.objc\\\"}]},\\\"property_directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objc\\\"}},\\\"match\\\":\\\"(@)(dynamic|synthesize)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.property.directive.objc\\\"},\\\"protocol_list\\\":{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.objc\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.objc\\\"}},\\\"name\\\":\\\"meta.protocol-list.objc\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bNS(GlyphStorage|M(utableCopying|enuItem)|C(hangeSpelling|o(ding|pying|lorPicking(Custom|Default)))|T(oolbarItemValidations|ext(Input|AttachmentCell))|I(nputServ(iceProvider|erMouseTracker)|gnoreMisspelledWords)|Obj(CTypeSerializationCallBack|ect)|D(ecimalNumberBehaviors|raggingInfo)|U(serInterfaceValidations|RL(HandleClient|DownloadDelegate|ProtocolClient|AuthenticationChallengeSender))|Validated(ToobarItem|UserInterfaceItem)|Locking)\\\\\\\\b\\\",\\\"name\\\":\\\"support.other.protocol.objc\\\"}]},\\\"protocol_type_qualifier\\\":{\\\"match\\\":\\\"\\\\\\\\b(in|out|inout|oneway|bycopy|byref|nonnull|nullable|_Nonnull|_Nullable|_Null_unspecified)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.protocol.objc\\\"},\\\"special_variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b_cmd\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.selector.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\b(self|super)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.objc\\\"}]},\\\"string_escaped_char\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[abefnprtv'\\\\\\\"?]|[0-3]\\\\\\\\d{,2}|[4-7]\\\\\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})\\\",\\\"name\\\":\\\"constant.character.escape.objc\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape.objc\\\"}]},\\\"string_placeholder\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"%(\\\\\\\\d+\\\\\\\\$)?[#0\\\\\\\\- +']*[,;:_]?((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?(\\\\\\\\.((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]\\\",\\\"name\\\":\\\"constant.other.placeholder.objc\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.placeholder.objc\\\"}},\\\"match\\\":\\\"(%)(?!\\\\\\\"\\\\\\\\s*(PRI|SCN))\\\"}]}},\\\"scopeName\\\":\\\"source.objc\\\",\\\"aliases\\\":[\\\"objc\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Objective-C++\\\",\\\"name\\\":\\\"objective-cpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#cpp_lang\\\"},{\\\"include\\\":\\\"#anonymous_pattern_1\\\"},{\\\"include\\\":\\\"#anonymous_pattern_2\\\"},{\\\"include\\\":\\\"#anonymous_pattern_3\\\"},{\\\"include\\\":\\\"#anonymous_pattern_4\\\"},{\\\"include\\\":\\\"#anonymous_pattern_5\\\"},{\\\"include\\\":\\\"#apple_foundation_functional_macros\\\"},{\\\"include\\\":\\\"#anonymous_pattern_7\\\"},{\\\"include\\\":\\\"#anonymous_pattern_8\\\"},{\\\"include\\\":\\\"#anonymous_pattern_9\\\"},{\\\"include\\\":\\\"#anonymous_pattern_10\\\"},{\\\"include\\\":\\\"#anonymous_pattern_11\\\"},{\\\"include\\\":\\\"#anonymous_pattern_12\\\"},{\\\"include\\\":\\\"#anonymous_pattern_13\\\"},{\\\"include\\\":\\\"#anonymous_pattern_14\\\"},{\\\"include\\\":\\\"#anonymous_pattern_15\\\"},{\\\"include\\\":\\\"#anonymous_pattern_16\\\"},{\\\"include\\\":\\\"#anonymous_pattern_17\\\"},{\\\"include\\\":\\\"#anonymous_pattern_18\\\"},{\\\"include\\\":\\\"#anonymous_pattern_19\\\"},{\\\"include\\\":\\\"#anonymous_pattern_20\\\"},{\\\"include\\\":\\\"#anonymous_pattern_21\\\"},{\\\"include\\\":\\\"#anonymous_pattern_22\\\"},{\\\"include\\\":\\\"#anonymous_pattern_23\\\"},{\\\"include\\\":\\\"#anonymous_pattern_24\\\"},{\\\"include\\\":\\\"#anonymous_pattern_25\\\"},{\\\"include\\\":\\\"#anonymous_pattern_26\\\"},{\\\"include\\\":\\\"#anonymous_pattern_27\\\"},{\\\"include\\\":\\\"#anonymous_pattern_28\\\"},{\\\"include\\\":\\\"#anonymous_pattern_29\\\"},{\\\"include\\\":\\\"#anonymous_pattern_30\\\"},{\\\"include\\\":\\\"#bracketed_content\\\"},{\\\"include\\\":\\\"#c_lang\\\"}],\\\"repository\\\":{\\\"anonymous_pattern_1\\\":{\\\"begin\\\":\\\"((@)(interface|protocol))(?!.+;)\\\\\\\\s+([A-Za-z_][A-Za-z0-9_]*)\\\\\\\\s*((:)(?:\\\\\\\\s*)([A-Za-z][A-Za-z0-9]*))?(\\\\\\\\s|\\\\\\\\n)?\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.entity.other.inherited-class.objcpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.other.inherited-class.objcpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"meta.divider.objcpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"meta.inherited-class.objcpp\\\"}},\\\"contentName\\\":\\\"meta.scope.interface.objcpp\\\",\\\"end\\\":\\\"((@)end)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.interface-or-protocol.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_innards\\\"}]},\\\"anonymous_pattern_10\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objcpp\\\"}},\\\"match\\\":\\\"(@)(defs|encode)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.objcpp\\\"},\\\"anonymous_pattern_11\\\":{\\\"match\\\":\\\"\\\\\\\\bid\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.id.objcpp\\\"},\\\"anonymous_pattern_12\\\":{\\\"match\\\":\\\"\\\\\\\\b(IBOutlet|IBAction|BOOL|SEL|id|unichar|IMP|Class|instancetype)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.objcpp\\\"},\\\"anonymous_pattern_13\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objcpp\\\"}},\\\"match\\\":\\\"(@)(class|protocol)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.objcpp\\\"},\\\"anonymous_pattern_14\\\":{\\\"begin\\\":\\\"((@)selector)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objcpp\\\"}},\\\"contentName\\\":\\\"meta.selector.method-name.objcpp\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objcpp\\\"}},\\\"name\\\":\\\"meta.selector.objcpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objcpp\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:[a-zA-Z_:][\\\\\\\\w]*)+\\\",\\\"name\\\":\\\"support.function.any-method.name-of-parameter.objcpp\\\"}]},\\\"anonymous_pattern_15\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.storage.modifier.objcpp\\\"}},\\\"match\\\":\\\"(@)(synchronized|public|package|private|protected)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.objcpp\\\"},\\\"anonymous_pattern_16\\\":{\\\"match\\\":\\\"\\\\\\\\b(YES|NO|Nil|nil)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.objcpp\\\"},\\\"anonymous_pattern_17\\\":{\\\"match\\\":\\\"\\\\\\\\bNSApp\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.foundation.objcpp\\\"},\\\"anonymous_pattern_18\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.support.function.cocoa.leopard.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.cocoa.leopard.objcpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\s*)\\\\\\\\b(NS(Rect(ToCGRect|FromCGRect)|MakeCollectable|S(tringFromProtocol|ize(ToCGSize|FromCGSize))|Draw(NinePartImage|ThreePartImage)|P(oint(ToCGPoint|FromCGPoint)|rotocolFromString)|EventMaskFromType|Value))\\\\\\\\b\\\"},\\\"anonymous_pattern_19\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.support.function.leading.cocoa.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.cocoa.objcpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\s*)\\\\\\\\b(NS(R(ound(DownToMultipleOfPageSize|UpToMultipleOfPageSize)|un(CriticalAlertPanel(RelativeToWindow)?|InformationalAlertPanel(RelativeToWindow)?|AlertPanel(RelativeToWindow)?)|e(set(MapTable|HashTable)|c(ycleZone|t(Clip(List)?|F(ill(UsingOperation|List(UsingOperation|With(Grays|Colors(UsingOperation)?))?)?|romString))|ordAllocationEvent)|turnAddress|leaseAlertPanel|a(dPixel|l(MemoryAvailable|locateCollectable))|gisterServicesProvider)|angeFromString)|Get(SizeAndAlignment|CriticalAlertPanel|InformationalAlertPanel|UncaughtExceptionHandler|FileType(s)?|WindowServerMemory|AlertPanel)|M(i(n(X|Y)|d(X|Y))|ouseInRect|a(p(Remove|Get|Member|Insert(IfAbsent|KnownAbsent)?)|ke(R(ect|ange)|Size|Point)|x(Range|X|Y)))|B(itsPer(SampleFromDepth|PixelFromDepth)|e(stDepth|ep|gin(CriticalAlertSheet|InformationalAlertSheet|AlertSheet)))|S(ho(uldRetainWithZone|w(sServicesMenuItem|AnimationEffect))|tringFrom(R(ect|ange)|MapTable|S(ize|elector)|HashTable|Class|Point)|izeFromString|e(t(ShowsServicesMenuItem|ZoneName|UncaughtExceptionHandler|FocusRingStyle)|lectorFromString|archPathForDirectoriesInDomains)|wap(Big(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|Short|Host(ShortTo(Big|Little)|IntTo(Big|Little)|DoubleTo(Big|Little)|FloatTo(Big|Little)|Long(To(Big|Little)|LongTo(Big|Little)))|Int|Double|Float|L(ittle(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|ong(Long)?)))|H(ighlightRect|o(stByteOrder|meDirectory(ForUser)?)|eight|ash(Remove|Get|Insert(IfAbsent|KnownAbsent)?)|FSType(CodeFromFileType|OfFile))|N(umberOfColorComponents|ext(MapEnumeratorPair|HashEnumeratorItem))|C(o(n(tainsRect|vert(GlyphsToPackedGlyphs|Swapped(DoubleToHost|FloatToHost)|Host(DoubleToSwapped|FloatToSwapped)))|unt(MapTable|HashTable|Frames|Windows(ForContext)?)|py(M(emoryPages|apTableWithZone)|Bits|HashTableWithZone|Object)|lorSpaceFromDepth|mpare(MapTables|HashTables))|lassFromString|reate(MapTable(WithZone)?|HashTable(WithZone)?|Zone|File(namePboardType|ContentsPboardType)))|TemporaryDirectory|I(s(ControllerMarker|EmptyRect|FreedObject)|n(setRect|crementExtraRefCount|te(r(sect(sRect|ionR(ect|ange))|faceStyleForKey)|gralRect)))|Zone(Realloc|Malloc|Name|Calloc|Fr(omPointer|ee))|O(penStepRootDirectory|ffsetRect)|D(i(sableScreenUpdates|videRect)|ottedFrameRect|e(c(imal(Round|Multiply|S(tring|ubtract)|Normalize|Co(py|mpa(ct|re))|IsNotANumber|Divide|Power|Add)|rementExtraRefCountWasZero)|faultMallocZone|allocate(MemoryPages|Object))|raw(Gr(oove|ayBezel)|B(itmap|utton)|ColorTiledRects|TiledRects|DarkBezel|W(hiteBezel|indowBackground)|LightBezel))|U(serName|n(ionR(ect|ange)|registerServicesProvider)|pdateDynamicServices)|Java(Bundle(Setup|Cleanup)|Setup(VirtualMachine)?|Needs(ToLoadClasses|VirtualMachine)|ClassesF(orBundle|romPath)|ObjectNamedInPath|ProvidesClasses)|P(oint(InRect|FromString)|erformService|lanarFromDepth|ageSize)|E(n(d(MapTableEnumeration|HashTableEnumeration)|umerate(MapTable|HashTable)|ableScreenUpdates)|qual(R(ects|anges)|Sizes|Points)|raseRect|xtraRefCount)|F(ileTypeForHFSTypeCode|ullUserName|r(ee(MapTable|HashTable)|ame(Rect(WithWidth(UsingOperation)?)?|Address)))|Wi(ndowList(ForContext)?|dth)|Lo(cationInRange|g(v|PageSize)?)|A(ccessibility(R(oleDescription(ForUIElement)?|aiseBadArgumentException)|Unignored(Children(ForOnlyChild)?|Descendant|Ancestor)|PostNotification|ActionDescription)|pplication(Main|Load)|vailableWindowDepths|ll(MapTable(Values|Keys)|HashTableObjects|ocate(MemoryPages|Collectable|Object)))))\\\\\\\\b\\\"},\\\"anonymous_pattern_2\\\":{\\\"begin\\\":\\\"((@)(implementation))\\\\\\\\s+([A-Za-z_][A-Za-z0-9_]*)\\\\\\\\s*(?::\\\\\\\\s*([A-Za-z][A-Za-z0-9]*))?\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.storage.type.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.other.inherited-class.objcpp\\\"}},\\\"contentName\\\":\\\"meta.scope.implementation.objcpp\\\",\\\"end\\\":\\\"((@)end)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.implementation.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#implementation_innards\\\"}]},\\\"anonymous_pattern_20\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(RuleEditor|G(arbageCollector|radient)|MapTable|HashTable|Co(ndition|llectionView(Item)?)|T(oolbarItemGroup|extInputClient|r(eeNode|ackingArea))|InvocationOperation|Operation(Queue)?|D(ictionaryController|ockTile)|P(ointer(Functions|Array)|athC(o(ntrol(Delegate)?|mponentCell)|ell(Delegate)?)|r(intPanelAccessorizing|edicateEditor(RowTemplate)?))|ViewController|FastEnumeration|Animat(ionContext|ablePropertyContainer))\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.cocoa.leopard.objcpp\\\"},\\\"anonymous_pattern_21\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(R(u(nLoop|ler(Marker|View))|e(sponder|cursiveLock|lativeSpecifier)|an(domSpecifier|geSpecifier))|G(etCommand|lyph(Generator|Storage|Info)|raphicsContext)|XML(Node|D(ocument|TD(Node)?)|Parser|Element)|M(iddleSpecifier|ov(ie(View)?|eCommand)|utable(S(tring|et)|C(haracterSet|opying)|IndexSet|D(ictionary|ata)|URLRequest|ParagraphStyle|A(ttributedString|rray))|e(ssagePort(NameServer)?|nu(Item(Cell)?|View)?|t(hodSignature|adata(Item|Query(ResultGroup|AttributeValueTuple)?)))|a(ch(BootstrapServer|Port)|trix))|B(itmapImageRep|ox|u(ndle|tton(Cell)?)|ezierPath|rowser(Cell)?)|S(hadow|c(anner|r(ipt(SuiteRegistry|C(o(ercionHandler|mmand(Description)?)|lassDescription)|ObjectSpecifier|ExecutionContext|WhoseTest)|oll(er|View)|een))|t(epper(Cell)?|atus(Bar|Item)|r(ing|eam))|imple(HorizontalTypesetter|CString)|o(cketPort(NameServer)?|und|rtDescriptor)|p(e(cifierTest|ech(Recognizer|Synthesizer)|ll(Server|Checker))|litView)|e(cureTextField(Cell)?|t(Command)?|archField(Cell)?|rializer|gmentedC(ontrol|ell))|lider(Cell)?|avePanel)|H(ost|TTP(Cookie(Storage)?|URLResponse)|elpManager)|N(ib(Con(nector|trolConnector)|OutletConnector)?|otification(Center|Queue)?|u(ll|mber(Formatter)?)|etService(Browser)?|ameSpecifier)|C(ha(ngeSpelling|racterSet)|o(n(stantString|nection|trol(ler)?|ditionLock)|d(ing|er)|unt(Command|edSet)|pying|lor(Space|P(ick(ing(Custom|Default)|er)|anel)|Well|List)?|m(p(oundPredicate|arisonPredicate)|boBox(Cell)?))|u(stomImageRep|rsor)|IImageRep|ell|l(ipView|o(seCommand|neCommand)|assDescription)|a(ched(ImageRep|URLResponse)|lendar(Date)?)|reateCommand)|T(hread|ypesetter|ime(Zone|r)|o(olbar(Item(Validations)?)?|kenField(Cell)?)|ext(Block|Storage|Container|Tab(le(Block)?)?|Input|View|Field(Cell)?|List|Attachment(Cell)?)?|a(sk|b(le(Header(Cell|View)|Column|View)|View(Item)?))|reeController)|I(n(dex(S(pecifier|et)|Path)|put(Manager|S(tream|erv(iceProvider|er(MouseTracker)?)))|vocation)|gnoreMisspelledWords|mage(Rep|Cell|View)?)|O(ut(putStream|lineView)|pen(GL(Context|Pixel(Buffer|Format)|View)|Panel)|bj(CTypeSerializationCallBack|ect(Controller)?))|D(i(st(antObject(Request)?|ributed(NotificationCenter|Lock))|ctionary|rectoryEnumerator)|ocument(Controller)?|e(serializer|cimalNumber(Behaviors|Handler)?|leteCommand)|at(e(Components|Picker(Cell)?|Formatter)?|a)|ra(wer|ggingInfo))|U(ser(InterfaceValidations|Defaults(Controller)?)|RL(Re(sponse|quest)|Handle(Client)?|C(onnection|ache|redential(Storage)?)|Download(Delegate)?|Prot(ocol(Client)?|ectionSpace)|AuthenticationChallenge(Sender)?)?|n(iqueIDSpecifier|doManager|archiver))|P(ipe|o(sitionalSpecifier|pUpButton(Cell)?|rt(Message|NameServer|Coder)?)|ICTImageRep|ersistentDocument|DFImageRep|a(steboard|nel|ragraphStyle|geLayout)|r(int(Info|er|Operation|Panel)|o(cessInfo|tocolChecker|perty(Specifier|ListSerialization)|gressIndicator|xy)|edicate))|E(numerator|vent|PSImageRep|rror|x(ception|istsCommand|pression))|V(iew(Animation)?|al(idated(ToobarItem|UserInterfaceItem)|ue(Transformer)?))|Keyed(Unarchiver|Archiver)|Qui(ckDrawView|tCommand)|F(ile(Manager|Handle|Wrapper)|o(nt(Manager|Descriptor|Panel)?|rm(Cell|atter)))|W(hoseSpecifier|indow(Controller)?|orkspace)|L(o(c(k(ing)?|ale)|gicalTest)|evelIndicator(Cell)?|ayoutManager)|A(ssertionHandler|nimation|ctionCell|ttributedString|utoreleasePool|TSTypesetter|ppl(ication|e(Script|Event(Manager|Descriptor)))|ffineTransform|lert|r(chiver|ray(Controller)?)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.cocoa.objcpp\\\"},\\\"anonymous_pattern_22\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(R(oundingMode|ule(Editor(RowType|NestingMode)|rOrientation)|e(questUserAttentionType|lativePosition))|G(lyphInscription|radientDrawingOptions)|XML(NodeKind|D(ocumentContentKind|TDNodeKind)|ParserError)|M(ultibyteGlyphPacking|apTableOptions)|B(itmapFormat|oxType|ezierPathElement|ackgroundStyle|rowserDropOperation)|S(tr(ing(CompareOptions|DrawingOptions|EncodingConversionOptions)|eam(Status|Event))|p(eechBoundary|litViewDividerStyle)|e(archPathD(irectory|omainMask)|gmentS(tyle|witchTracking))|liderType|aveOptions)|H(TTPCookieAcceptPolicy|ashTableOptions)|N(otification(SuspensionBehavior|Coalescing)|umberFormatter(RoundingMode|Behavior|Style|PadPosition)|etService(sError|Options))|C(haracterCollection|o(lor(RenderingIntent|SpaceModel|PanelMode)|mp(oundPredicateType|arisonPredicateModifier))|ellStateValue|al(culationError|endarUnit))|T(ypesetterControlCharacterAction|imeZoneNameStyle|e(stComparisonOperation|xt(Block(Dimension|V(erticalAlignment|alueType)|Layer)|TableLayoutAlgorithm|FieldBezelStyle))|ableView(SelectionHighlightStyle|ColumnAutoresizingStyle)|rackingAreaOptions)|I(n(sertionPosition|te(rfaceStyle|ger))|mage(RepLoadStatus|Scaling|CacheMode|FrameStyle|LoadStatus|Alignment))|Ope(nGLPixelFormatAttribute|rationQueuePriority)|Date(Picker(Mode|Style)|Formatter(Behavior|Style))|U(RL(RequestCachePolicy|HandleStatus|C(acheStoragePolicy|redentialPersistence))|Integer)|P(o(stingStyle|int(ingDeviceType|erFunctionsOptions)|pUpArrowPosition)|athStyle|r(int(ing(Orientation|PaginationMode)|erTableStatus|PanelOptions)|opertyList(MutabilityOptions|Format)|edicateOperatorType))|ExpressionType|KeyValue(SetMutationKind|Change)|QTMovieLoopMode|F(indPanel(SubstringMatchType|Action)|o(nt(RenderingMode|FamilyClass)|cusRingPlacement))|W(hoseSubelementIdentifier|ind(ingRule|ow(B(utton|ackingLocation)|SharingType|CollectionBehavior)))|L(ine(MovementDirection|SweepDirection|CapStyle|JoinStyle)|evelIndicatorStyle)|Animation(BlockingMode|Curve))\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.cocoa.leopard.objcpp\\\"},\\\"anonymous_pattern_23\\\":{\\\"match\\\":\\\"\\\\\\\\bC(I(Sampler|Co(ntext|lor)|Image(Accumulator)?|PlugIn(Registration)?|Vector|Kernel|Filter(Generator|Shape)?)|A(Renderer|MediaTiming(Function)?|BasicAnimation|ScrollLayer|Constraint(LayoutManager)?|T(iledLayer|extLayer|rans(ition|action))|OpenGLLayer|PropertyAnimation|KeyframeAnimation|Layer|A(nimation(Group)?|ction)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.quartz.objcpp\\\"},\\\"anonymous_pattern_24\\\":{\\\"match\\\":\\\"\\\\\\\\bC(G(Float|Point|Size|Rect)|IFormat|AConstraintAttribute)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.quartz.objcpp\\\"},\\\"anonymous_pattern_25\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(R(ect(Edge)?|ange)|G(lyph(Relation|LayoutMode)?|radientType)|M(odalSession|a(trixMode|p(Table|Enumerator)))|B(itmapImageFileType|orderType|uttonType|ezelStyle|ackingStoreType|rowserColumnResizingType)|S(cr(oll(er(Part|Arrow)|ArrowPosition)|eenAuxiliaryOpaque)|tringEncoding|ize|ocketNativeHandle|election(Granularity|Direction|Affinity)|wapped(Double|Float)|aveOperationType)|Ha(sh(Table|Enumerator)|ndler(2)?)|C(o(ntrol(Size|Tint)|mp(ositingOperation|arisonResult))|ell(State|Type|ImagePosition|Attribute))|T(hreadPrivate|ypesetterGlyphInfo|i(ckMarkPosition|tlePosition|meInterval)|o(ol(TipTag|bar(SizeMode|DisplayMode))|kenStyle)|IFFCompression|ext(TabType|Alignment)|ab(State|leViewDropOperation|ViewType)|rackingRectTag)|ImageInterpolation|Zone|OpenGL(ContextAuxiliary|PixelFormatAuxiliary)|D(ocumentChangeType|atePickerElementFlags|ra(werState|gOperation))|UsableScrollerParts|P(oint|r(intingPageOrder|ogressIndicator(Style|Th(ickness|readInfo))))|EventType|KeyValueObservingOptions|Fo(nt(SymbolicTraits|TraitMask|Action)|cusRingType)|W(indow(OrderingMode|Depth)|orkspace(IconCreationOptions|LaunchOptions)|ritingDirection)|L(ineBreakMode|ayout(Status|Direction))|A(nimation(Progress|Effect)|ppl(ication(TerminateReply|DelegateReply|PrintReply)|eEventManagerSuspensionID)|ffineTransformStruct|lertStyle))\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.cocoa.objcpp\\\"},\\\"anonymous_pattern_26\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(NotFound|Ordered(Ascending|Descending|Same))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.cocoa.objcpp\\\"},\\\"anonymous_pattern_27\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(MenuDidBeginTracking|ViewDidUpdateTrackingAreas)?Notification\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.notification.cocoa.leopard.objcpp\\\"},\\\"anonymous_pattern_28\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(Menu(Did(RemoveItem|SendAction|ChangeItem|EndTracking|AddItem)|WillSendAction)|S(ystemColorsDidChange|plitView(DidResizeSubviews|WillResizeSubviews))|C(o(nt(extHelpModeDid(Deactivate|Activate)|rolT(intDidChange|extDid(BeginEditing|Change|EndEditing)))|lor(PanelColorDidChange|ListDidChange)|mboBox(Selection(IsChanging|DidChange)|Will(Dismiss|PopUp)))|lassDescriptionNeededForClass)|T(oolbar(DidRemoveItem|WillAddItem)|ext(Storage(DidProcessEditing|WillProcessEditing)|Did(BeginEditing|Change|EndEditing)|View(DidChange(Selection|TypingAttributes)|WillChangeNotifyingTextView))|ableView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)))|ImageRepRegistryDidChange|OutlineView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)|Item(Did(Collapse|Expand)|Will(Collapse|Expand)))|Drawer(Did(Close|Open)|Will(Close|Open))|PopUpButton(CellWillPopUp|WillPopUp)|View(GlobalFrameDidChange|BoundsDidChange|F(ocusDidChange|rameDidChange))|FontSetChanged|W(indow(Did(Resi(ze|gn(Main|Key))|M(iniaturize|ove)|Become(Main|Key)|ChangeScreen(|Profile)|Deminiaturize|Update|E(ndSheet|xpose))|Will(M(iniaturize|ove)|BeginSheet|Close))|orkspace(SessionDid(ResignActive|BecomeActive)|Did(Mount|TerminateApplication|Unmount|PerformFileOperation|Wake|LaunchApplication)|Will(Sleep|Unmount|PowerOff|LaunchApplication)))|A(ntialiasThresholdChanged|ppl(ication(Did(ResignActive|BecomeActive|Hide|ChangeScreenParameters|U(nhide|pdate)|FinishLaunching)|Will(ResignActive|BecomeActive|Hide|Terminate|U(nhide|pdate)|FinishLaunching))|eEventManagerWillProcessFirstEvent)))Notification\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.notification.cocoa.objcpp\\\"},\\\"anonymous_pattern_29\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(RuleEditor(RowType(Simple|Compound)|NestingMode(Si(ngle|mple)|Compound|List))|GradientDraws(BeforeStartingLocation|AfterEndingLocation)|M(inusSetExpressionType|a(chPortDeallocate(ReceiveRight|SendRight|None)|pTable(StrongMemory|CopyIn|ZeroingWeakMemory|ObjectPointerPersonality)))|B(oxCustom|undleExecutableArchitecture(X86|I386|PPC(64)?)|etweenPredicateOperatorType|ackgroundStyle(Raised|Dark|L(ight|owered)))|S(tring(DrawingTruncatesLastVisibleLine|EncodingConversion(ExternalRepresentation|AllowLossy))|ubqueryExpressionType|p(e(ech(SentenceBoundary|ImmediateBoundary|WordBoundary)|llingState(GrammarFlag|SpellingFlag))|litViewDividerStyleThi(n|ck))|e(rvice(RequestTimedOutError|M(iscellaneousError|alformedServiceDictionaryError)|InvalidPasteboardDataError|ErrorM(inimum|aximum)|Application(NotFoundError|LaunchFailedError))|gmentStyle(Round(Rect|ed)|SmallSquare|Capsule|Textured(Rounded|Square)|Automatic)))|H(UDWindowMask|ashTable(StrongMemory|CopyIn|ZeroingWeakMemory|ObjectPointerPersonality))|N(oModeColorPanel|etServiceNoAutoRename)|C(hangeRedone|o(ntainsPredicateOperatorType|l(orRenderingIntent(RelativeColorimetric|Saturation|Default|Perceptual|AbsoluteColorimetric)|lectorDisabledOption))|ellHit(None|ContentArea|TrackableArea|EditableTextArea))|T(imeZoneNameStyle(S(hort(Standard|DaylightSaving)|tandard)|DaylightSaving)|extFieldDatePickerStyle|ableViewSelectionHighlightStyle(Regular|SourceList)|racking(Mouse(Moved|EnteredAndExited)|CursorUpdate|InVisibleRect|EnabledDuringMouseDrag|A(ssumeInside|ctive(In(KeyWindow|ActiveApp)|WhenFirstResponder|Always))))|I(n(tersectSetExpressionType|dexedColorSpaceModel)|mageScale(None|Proportionally(Down|UpOrDown)|AxesIndependently))|Ope(nGLPFAAllowOfflineRenderers|rationQueue(DefaultMaxConcurrentOperationCount|Priority(High|Normal|Very(High|Low)|Low)))|D(iacriticInsensitiveSearch|ownloadsDirectory)|U(nionSetExpressionType|TF(16(BigEndianStringEncoding|StringEncoding|LittleEndianStringEncoding)|32(BigEndianStringEncoding|StringEncoding|LittleEndianStringEncoding)))|P(ointerFunctions(Ma(chVirtualMemory|llocMemory)|Str(ongMemory|uctPersonality)|C(StringPersonality|opyIn)|IntegerPersonality|ZeroingWeakMemory|O(paque(Memory|Personality)|bjectP(ointerPersonality|ersonality)))|at(hStyle(Standard|NavigationBar|PopUp)|ternColorSpaceModel)|rintPanelShows(Scaling|Copies|Orientation|P(a(perSize|ge(Range|SetupAccessory))|review)))|Executable(RuntimeMismatchError|NotLoadableError|ErrorM(inimum|aximum)|L(inkError|oadError)|ArchitectureMismatchError)|KeyValueObservingOption(Initial|Prior)|F(i(ndPanelSubstringMatchType(StartsWith|Contains|EndsWith|FullWord)|leRead(TooLargeError|UnknownStringEncodingError))|orcedOrderingSearch)|Wi(ndow(BackingLocation(MainMemory|Default|VideoMemory)|Sharing(Read(Only|Write)|None)|CollectionBehavior(MoveToActiveSpace|CanJoinAllSpaces|Default))|dthInsensitiveSearch)|AggregateExpressionType)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.cocoa.leopard.objcpp\\\"},\\\"anonymous_pattern_3\\\":{\\\"begin\\\":\\\"@\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"match\\\":\\\"%(\\\\\\\\d+\\\\\\\\$)?[#0\\\\\\\\- +']*((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?(\\\\\\\\.((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?)?[@]\\\",\\\"name\\\":\\\"constant.other.placeholder.objcpp\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"}]},\\\"anonymous_pattern_30\\\":{\\\"match\\\":\\\"\\\\\\\\bNS(R(GB(ModeColorPanel|ColorSpaceModel)|ight(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey)|ound(RectBezelStyle|Bankers|ed(BezelStyle|TokenStyle|DisclosureBezelStyle)|Down|Up|Plain|Line(CapStyle|JoinStyle))|un(StoppedResponse|ContinuesResponse|AbortedResponse)|e(s(izableWindowMask|et(CursorRectsRunLoopOrdering|FunctionKey))|ce(ssedBezelStyle|iver(sCantHandleCommandScriptError|EvaluationScriptError))|turnTextMovement|doFunctionKey|quiredArgumentsMissingScriptError|l(evancyLevelIndicatorStyle|ative(Before|After))|gular(SquareBezelStyle|ControlSize)|moveTraitFontAction)|a(n(domSubelement|geDateMode)|tingLevelIndicatorStyle|dio(ModeMatrix|Button)))|G(IFFileType|lyph(Below|Inscribe(B(elow|ase)|Over(strike|Below)|Above)|Layout(WithPrevious|A(tAPoint|gainstAPoint))|A(ttribute(BidiLevel|Soft|Inscribe|Elastic)|bove))|r(ooveBorder|eaterThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|a(y(ModeColorPanel|ColorSpaceModel)|dient(None|Con(cave(Strong|Weak)|vex(Strong|Weak)))|phiteControlTint)))|XML(N(o(tationDeclarationKind|de(CompactEmptyElement|IsCDATA|OptionsNone|Use(SingleQuotes|DoubleQuotes)|Pre(serve(NamespaceOrder|C(haracterReferences|DATA)|DTD|Prefixes|E(ntities|mptyElements)|Quotes|Whitespace|A(ttributeOrder|ll))|ttyPrint)|ExpandEmptyElement))|amespaceKind)|CommentKind|TextKind|InvalidKind|D(ocument(X(MLKind|HTMLKind|Include)|HTMLKind|T(idy(XML|HTML)|extKind)|IncludeContentTypeDeclaration|Validate|Kind)|TDKind)|P(arser(GTRequiredError|XMLDeclNot(StartedError|FinishedError)|Mi(splaced(XMLDeclarationError|CDATAEndStringError)|xedContentDeclNot(StartedError|FinishedError))|S(t(andaloneValueError|ringNot(StartedError|ClosedError))|paceRequiredError|eparatorRequiredError)|N(MTOKENRequiredError|o(t(ationNot(StartedError|FinishedError)|WellBalancedError)|DTDError)|amespaceDeclarationError|AMERequiredError)|C(haracterRef(In(DTDError|PrologError|EpilogError)|AtEOFError)|o(nditionalSectionNot(StartedError|FinishedError)|mment(NotFinishedError|ContainsDoubleHyphenError))|DATANotFinishedError)|TagNameMismatchError|In(ternalError|valid(HexCharacterRefError|C(haracter(RefError|InEntityError|Error)|onditionalSectionError)|DecimalCharacterRefError|URIError|Encoding(NameError|Error)))|OutOfMemoryError|D(ocumentStartError|elegateAbortedParseError|OCTYPEDeclNotFinishedError)|U(RI(RequiredError|FragmentError)|n(declaredEntityError|parsedEntityError|knownEncodingError|finishedTagError))|P(CDATARequiredError|ublicIdentifierRequiredError|arsedEntityRef(MissingSemiError|NoNameError|In(Internal(SubsetError|Error)|PrologError|EpilogError)|AtEOFError)|r(ocessingInstructionNot(StartedError|FinishedError)|ematureDocumentEndError))|E(n(codingNotSupportedError|tity(Ref(In(DTDError|PrologError|EpilogError)|erence(MissingSemiError|WithoutNameError)|LoopError|AtEOFError)|BoundaryError|Not(StartedError|FinishedError)|Is(ParameterError|ExternalError)|ValueRequiredError))|qualExpectedError|lementContentDeclNot(StartedError|FinishedError)|xt(ernalS(tandaloneEntityError|ubsetNotFinishedError)|raContentError)|mptyDocumentError)|L(iteralNot(StartedError|FinishedError)|T(RequiredError|SlashRequiredError)|essThanSymbolInAttributeError)|Attribute(RedefinedError|HasNoValueError|Not(StartedError|FinishedError)|ListNot(StartedError|FinishedError)))|rocessingInstructionKind)|E(ntity(GeneralKind|DeclarationKind|UnparsedKind|P(ar(sedKind|ameterKind)|redefined))|lement(Declaration(MixedKind|UndefinedKind|E(lementKind|mptyKind)|Kind|AnyKind)|Kind))|Attribute(N(MToken(sKind|Kind)|otationKind)|CDATAKind|ID(Ref(sKind|Kind)|Kind)|DeclarationKind|En(tit(yKind|iesKind)|umerationKind)|Kind))|M(i(n(XEdge|iaturizableWindowMask|YEdge|uteCalendarUnit)|terLineJoinStyle|ddleSubelement|xedState)|o(nthCalendarUnit|deSwitchFunctionKey|use(Moved(Mask)?|E(ntered(Mask)?|ventSubtype|xited(Mask)?))|veToBezierPathElement|mentary(ChangeButton|Push(Button|InButton)|Light(Button)?))|enuFunctionKey|a(c(intoshInterfaceStyle|OSRomanStringEncoding)|tchesPredicateOperatorType|ppedRead|x(XEdge|YEdge))|ACHOperatingSystem)|B(MPFileType|o(ttomTabsBezelBorder|ldFontMask|rderlessWindowMask|x(Se(condary|parator)|OldStyle|Primary))|uttLineCapStyle|e(zelBorder|velLineJoinStyle|low(Bottom|Top)|gin(sWith(Comparison|PredicateOperatorType)|FunctionKey))|lueControlTint|ack(spaceCharacter|tabTextMovement|ingStore(Retained|Buffered|Nonretained)|TabCharacter|wardsSearch|groundTab)|r(owser(NoColumnResizing|UserColumnResizing|AutoColumnResizing)|eakFunctionKey))|S(h(ift(JISStringEncoding|KeyMask)|ow(ControlGlyphs|InvisibleGlyphs)|adowlessSquareBezelStyle)|y(s(ReqFunctionKey|tem(D(omainMask|efined(Mask)?)|FunctionKey))|mbolStringEncoding)|c(a(nnedOption|le(None|ToFit|Proportionally))|r(oll(er(NoPart|Increment(Page|Line|Arrow)|Decrement(Page|Line|Arrow)|Knob(Slot)?|Arrows(M(inEnd|axEnd)|None|DefaultSetting))|Wheel(Mask)?|LockFunctionKey)|eenChangedEventType))|t(opFunctionKey|r(ingDrawing(OneShot|DisableScreenFontSubstitution|Uses(DeviceMetrics|FontLeading|LineFragmentOrigin))|eam(Status(Reading|NotOpen|Closed|Open(ing)?|Error|Writing|AtEnd)|Event(Has(BytesAvailable|SpaceAvailable)|None|OpenCompleted|E(ndEncountered|rrorOccurred)))))|i(ngle(DateMode|UnderlineStyle)|ze(DownFontAction|UpFontAction))|olarisOperatingSystem|unOSOperatingSystem|pecialPageOrder|e(condCalendarUnit|lect(By(Character|Paragraph|Word)|i(ng(Next|Previous)|onAffinity(Downstream|Upstream))|edTab|FunctionKey)|gmentSwitchTracking(Momentary|Select(One|Any)))|quareLineCapStyle|witchButton|ave(ToOperation|Op(tions(Yes|No|Ask)|eration)|AsOperation)|mall(SquareBezelStyle|C(ontrolSize|apsFontMask)|IconButtonBezelStyle))|H(ighlightModeMatrix|SBModeColorPanel|o(ur(Minute(SecondDatePickerElementFlag|DatePickerElementFlag)|CalendarUnit)|rizontalRuler|meFunctionKey)|TTPCookieAcceptPolicy(Never|OnlyFromMainDocumentDomain|Always)|e(lp(ButtonBezelStyle|KeyMask|FunctionKey)|avierFontAction)|PUXOperatingSystem)|Year(MonthDa(yDatePickerElementFlag|tePickerElementFlag)|CalendarUnit)|N(o(n(StandardCharacterSetFontMask|ZeroWindingRule|activatingPanelMask|LossyASCIIStringEncoding)|Border|t(ification(SuspensionBehavior(Hold|Coalesce|D(eliverImmediately|rop))|NoCoalescing|CoalescingOn(Sender|Name)|DeliverImmediately|PostToAllSessions)|PredicateType|EqualToPredicateOperatorType)|S(cr(iptError|ollerParts)|ubelement|pecifierError)|CellMask|T(itle|opLevelContainersSpecifierError|abs(BezelBorder|NoBorder|LineBorder))|I(nterfaceStyle|mage)|UnderlineStyle|FontChangeAction)|u(ll(Glyph|CellType)|m(eric(Search|PadKeyMask)|berFormatter(Round(Half(Down|Up|Even)|Ceiling|Down|Up|Floor)|Behavior(10|Default)|S(cientificStyle|pellOutStyle)|NoStyle|CurrencyStyle|DecimalStyle|P(ercentStyle|ad(Before(Suffix|Prefix)|After(Suffix|Prefix))))))|e(t(Services(BadArgumentError|NotFoundError|C(ollisionError|ancelledError)|TimeoutError|InvalidError|UnknownError|ActivityInProgress)|workDomainMask)|wlineCharacter|xt(StepInterfaceStyle|FunctionKey))|EXTSTEPStringEncoding|a(t(iveShortGlyphPacking|uralTextAlignment)|rrowFontMask))|C(hange(ReadOtherContents|GrayCell(Mask)?|BackgroundCell(Mask)?|Cleared|Done|Undone|Autosaved)|MYK(ModeColorPanel|ColorSpaceModel)|ircular(BezelStyle|Slider)|o(n(stantValueExpressionType|t(inuousCapacityLevelIndicatorStyle|entsCellMask|ain(sComparison|erSpecifierError)|rol(Glyph|KeyMask))|densedFontMask)|lor(Panel(RGBModeMask|GrayModeMask|HSBModeMask|C(MYKModeMask|olorListModeMask|ustomPaletteModeMask|rayonModeMask)|WheelModeMask|AllModesMask)|ListModeColorPanel)|reServiceDirectory|m(p(osite(XOR|Source(In|O(ut|ver)|Atop)|Highlight|C(opy|lear)|Destination(In|O(ut|ver)|Atop)|Plus(Darker|Lighter))|ressedFontMask)|mandKeyMask))|u(stom(SelectorPredicateOperatorType|PaletteModeColorPanel)|r(sor(Update(Mask)?|PointingDevice)|veToBezierPathElement))|e(nterT(extAlignment|abStopType)|ll(State|H(ighlighted|as(Image(Horizontal|OnLeftOrBottom)|OverlappingImage))|ChangesContents|Is(Bordered|InsetButton)|Disabled|Editable|LightsBy(Gray|Background|Contents)|AllowsMixedState))|l(ipPagination|o(s(ePathBezierPathElement|ableWindowMask)|ckAndCalendarDatePickerStyle)|ear(ControlTint|DisplayFunctionKey|LineFunctionKey))|a(seInsensitive(Search|PredicateOption)|n(notCreateScriptCommandError|cel(Button|TextMovement))|chesDirectory|lculation(NoError|Overflow|DivideByZero|Underflow|LossOfPrecision)|rriageReturnCharacter)|r(itical(Request|AlertStyle)|ayonModeColorPanel))|T(hick(SquareBezelStyle|erSquareBezelStyle)|ypesetter(Behavior|HorizontalTabAction|ContainerBreakAction|ZeroAdvancementAction|OriginalBehavior|ParagraphBreakAction|WhitespaceAction|L(ineBreakAction|atestBehavior))|i(ckMark(Right|Below|Left|Above)|tledWindowMask|meZoneDatePickerElementFlag)|o(olbarItemVisibilityPriority(Standard|High|User|Low)|pTabsBezelBorder|ggleButton)|IFF(Compression(N(one|EXT)|CCITTFAX(3|4)|OldJPEG|JPEG|PackBits|LZW)|FileType)|e(rminate(Now|Cancel|Later)|xt(Read(InapplicableDocumentTypeError|WriteErrorM(inimum|aximum))|Block(M(i(nimum(Height|Width)|ddleAlignment)|a(rgin|ximum(Height|Width)))|B(o(ttomAlignment|rder)|aselineAlignment)|Height|TopAlignment|P(ercentageValueType|adding)|Width|AbsoluteValueType)|StorageEdited(Characters|Attributes)|CellType|ured(RoundedBezelStyle|BackgroundWindowMask|SquareBezelStyle)|Table(FixedLayoutAlgorithm|AutomaticLayoutAlgorithm)|Field(RoundedBezel|SquareBezel|AndStepperDatePickerStyle)|WriteInapplicableDocumentTypeError|ListPrependEnclosingMarker))|woByteGlyphPacking|ab(Character|TextMovement|le(tP(oint(Mask|EventSubtype)?|roximity(Mask|EventSubtype)?)|Column(NoResizing|UserResizingMask|AutoresizingMask)|View(ReverseSequentialColumnAutoresizingStyle|GridNone|S(olid(HorizontalGridLineMask|VerticalGridLineMask)|equentialColumnAutoresizingStyle)|NoColumnAutoresizing|UniformColumnAutoresizingStyle|FirstColumnOnlyAutoresizingStyle|LastColumnOnlyAutoresizingStyle)))|rackModeMatrix)|I(n(sert(CharFunctionKey|FunctionKey|LineFunctionKey)|t(Type|ernalS(criptError|pecifierError))|dexSubelement|validIndexSpecifierError|formational(Request|AlertStyle)|PredicateOperatorType)|talicFontMask|SO(2022JPStringEncoding|Latin(1StringEncoding|2StringEncoding))|dentityMappingCharacterCollection|llegalTextMovement|mage(R(ight|ep(MatchesDevice|LoadStatus(ReadingHeader|Completed|InvalidData|Un(expectedEOF|knownType)|WillNeedAllData)))|Below|C(ellType|ache(BySize|Never|Default|Always))|Interpolation(High|None|Default|Low)|O(nly|verlaps)|Frame(Gr(oove|ayBezel)|Button|None|Photo)|L(oadStatus(ReadError|C(ompleted|ancelled)|InvalidData|UnexpectedEOF)|eft)|A(lign(Right|Bottom(Right|Left)?|Center|Top(Right|Left)?|Left)|bove)))|O(n(State|eByteGlyphPacking|OffButton|lyScrollerArrows)|ther(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|TextMovement)|SF1OperatingSystem|pe(n(GL(GO(Re(setLibrary|tainRenderers)|ClearFormatCache|FormatCacheSize)|PFA(R(obust|endererID)|M(inimumPolicy|ulti(sample|Screen)|PSafe|aximumPolicy)|BackingStore|S(creenMask|te(ncilSize|reo)|ingleRenderer|upersample|ample(s|Buffers|Alpha))|NoRecovery|C(o(lor(Size|Float)|mpliant)|losestPolicy)|OffScreen|D(oubleBuffer|epthSize)|PixelBuffer|VirtualScreenCount|FullScreen|Window|A(cc(umSize|elerated)|ux(Buffers|DepthStencil)|l(phaSize|lRenderers))))|StepUnicodeReservedBase)|rationNotSupportedForKeyS(criptError|pecifierError))|ffState|KButton|rPredicateType|bjC(B(itfield|oolType)|S(hortType|tr(ingType|uctType)|electorType)|NoType|CharType|ObjectType|DoubleType|UnionType|PointerType|VoidType|FloatType|Long(Type|longType)|ArrayType))|D(i(s(c(losureBezelStyle|reteCapacityLevelIndicatorStyle)|playWindowRunLoopOrdering)|acriticInsensitivePredicateOption|rect(Selection|PredicateModifier))|o(c(ModalWindowMask|ument(Directory|ationDirectory))|ubleType|wn(TextMovement|ArrowFunctionKey))|e(s(cendingPageOrder|ktopDirectory)|cimalTabStopType|v(ice(NColorSpaceModel|IndependentModifierFlagsMask)|eloper(Directory|ApplicationDirectory))|fault(ControlTint|TokenStyle)|lete(Char(acter|FunctionKey)|FunctionKey|LineFunctionKey)|moApplicationDirectory)|a(yCalendarUnit|teFormatter(MediumStyle|Behavior(10|Default)|ShortStyle|NoStyle|FullStyle|LongStyle))|ra(wer(Clos(ingState|edState)|Open(ingState|State))|gOperation(Generic|Move|None|Copy|Delete|Private|Every|Link|All)))|U(ser(CancelledError|D(irectory|omainMask)|FunctionKey)|RL(Handle(NotLoaded|Load(Succeeded|InProgress|Failed))|CredentialPersistence(None|Permanent|ForSession))|n(scaledWindowMask|cachedRead|i(codeStringEncoding|talicFontMask|fiedTitleAndToolbarWindowMask)|d(o(CloseGroupingRunLoopOrdering|FunctionKey)|e(finedDateComponent|rline(Style(Single|None|Thick|Double)|Pattern(Solid|D(ot|ash(Dot(Dot)?)?)))))|known(ColorSpaceModel|P(ointingDevice|ageOrder)|KeyS(criptError|pecifierError))|boldFontMask)|tilityWindowMask|TF8StringEncoding|p(dateWindowsRunLoopOrdering|TextMovement|ArrowFunctionKey))|J(ustifiedTextAlignment|PEG(2000FileType|FileType)|apaneseEUC(GlyphPacking|StringEncoding))|P(o(s(t(Now|erFontMask|WhenIdle|ASAP)|iti(on(Replace|Be(fore|ginning)|End|After)|ve(IntType|DoubleType|FloatType)))|pUp(NoArrow|ArrowAt(Bottom|Center))|werOffEventType|rtraitOrientation)|NGFileType|ush(InCell(Mask)?|OnPushOffButton)|e(n(TipMask|UpperSideMask|PointingDevice|LowerSideMask)|riodic(Mask)?)|P(S(caleField|tatus(Title|Field)|aveButton)|N(ote(Title|Field)|ame(Title|Field))|CopiesField|TitleField|ImageButton|OptionsButton|P(a(perFeedButton|ge(Range(To|From)|ChoiceMatrix))|reviewButton)|LayoutButton)|lainTextTokenStyle|a(useFunctionKey|ragraphSeparatorCharacter|ge(DownFunctionKey|UpFunctionKey))|r(int(ing(ReplyLater|Success|Cancelled|Failure)|ScreenFunctionKey|erTable(NotFound|OK|Error)|FunctionKey)|o(p(ertyList(XMLFormat|MutableContainers(AndLeaves)?|BinaryFormat|Immutable|OpenStepFormat)|rietaryStringEncoding)|gressIndicator(BarStyle|SpinningStyle|Preferred(SmallThickness|Thickness|LargeThickness|AquaThickness)))|e(ssedTab|vFunctionKey))|L(HeightForm|CancelButton|TitleField|ImageButton|O(KButton|rientationMatrix)|UnitsButton|PaperNameButton|WidthForm))|E(n(terCharacter|d(sWith(Comparison|PredicateOperatorType)|FunctionKey))|v(e(nOddWindingRule|rySubelement)|aluatedObjectExpressionType)|qualTo(Comparison|PredicateOperatorType)|ra(serPointingDevice|CalendarUnit|DatePickerElementFlag)|x(clude(10|QuickDrawElementsIconCreationOption)|pandedFontMask|ecuteFunctionKey))|V(i(ew(M(in(XMargin|YMargin)|ax(XMargin|YMargin))|HeightSizable|NotSizable|WidthSizable)|aPanelFontAction)|erticalRuler|a(lidationErrorM(inimum|aximum)|riableExpressionType))|Key(SpecifierEvaluationScriptError|Down(Mask)?|Up(Mask)?|PathExpressionType|Value(MinusSetMutation|SetSetMutation|Change(Re(placement|moval)|Setting|Insertion)|IntersectSetMutation|ObservingOption(New|Old)|UnionSetMutation|ValidationError))|QTMovie(NormalPlayback|Looping(BackAndForthPlayback|Playback))|F(1(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|7FunctionKey|i(nd(PanelAction(Replace(A(ndFind|ll(InSelection)?))?|S(howFindPanel|e(tFindString|lectAll(InSelection)?))|Next|Previous)|FunctionKey)|tPagination|le(Read(No(SuchFileError|PermissionError)|CorruptFileError|In(validFileNameError|applicableStringEncodingError)|Un(supportedSchemeError|knownError))|HandlingPanel(CancelButton|OKButton)|NoSuchFileError|ErrorM(inimum|aximum)|Write(NoPermissionError|In(validFileNameError|applicableStringEncodingError)|OutOfSpaceError|Un(supportedSchemeError|knownError))|LockingError)|xedPitchFontMask)|2(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|o(nt(Mo(noSpaceTrait|dernSerifsClass)|BoldTrait|S(ymbolicClass|criptsClass|labSerifsClass|ansSerifClass)|C(o(ndensedTrait|llectionApplicationOnlyMask)|larendonSerifsClass)|TransitionalSerifsClass|I(ntegerAdvancementsRenderingMode|talicTrait)|O(ldStyleSerifsClass|rnamentalsClass)|DefaultRenderingMode|U(nknownClass|IOptimizedTrait)|Panel(S(hadowEffectModeMask|t(andardModesMask|rikethroughEffectModeMask)|izeModeMask)|CollectionModeMask|TextColorEffectModeMask|DocumentColorEffectModeMask|UnderlineEffectModeMask|FaceModeMask|All(ModesMask|EffectsModeMask))|ExpandedTrait|VerticalTrait|F(amilyClassMask|reeformSerifsClass)|Antialiased(RenderingMode|IntegerAdvancementsRenderingMode))|cusRing(Below|Type(None|Default|Exterior)|Only|Above)|urByteGlyphPacking|rm(attingError(M(inimum|aximum))?|FeedCharacter))|8FunctionKey|unction(ExpressionType|KeyMask)|3(1FunctionKey|2FunctionKey|3FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey)|9FunctionKey|4FunctionKey|P(RevertButton|S(ize(Title|Field)|etButton)|CurrentField|Preview(Button|Field))|l(oat(ingPointSamplesBitmapFormat|Type)|agsChanged(Mask)?)|axButton|5FunctionKey|6FunctionKey)|W(heelModeColorPanel|indow(s(NTOperatingSystem|CP125(1StringEncoding|2StringEncoding|3StringEncoding|4StringEncoding|0StringEncoding)|95(InterfaceStyle|OperatingSystem))|M(iniaturizeButton|ovedEventType)|Below|CloseButton|ToolbarButton|ZoomButton|Out|DocumentIconButton|ExposedEventType|Above)|orkspaceLaunch(NewInstance|InhibitingBackgroundOnly|Default|PreferringClassic|WithoutA(ctivation|ddingToRecents)|A(sync|nd(Hide(Others)?|Print)|llowingClassicStartup))|eek(day(CalendarUnit|OrdinalCalendarUnit)|CalendarUnit)|a(ntsBidiLevels|rningAlertStyle)|r(itingDirection(RightToLeft|Natural|LeftToRight)|apCalendarComponents))|L(i(stModeMatrix|ne(Moves(Right|Down|Up|Left)|B(order|reakBy(C(harWrapping|lipping)|Truncating(Middle|Head|Tail)|WordWrapping))|S(eparatorCharacter|weep(Right|Down|Up|Left))|ToBezierPathElement|DoesntMove|arSlider)|teralSearch|kePredicateOperatorType|ghterFontAction|braryDirectory)|ocalDomainMask|e(ssThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|ft(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey))|a(yout(RightToLeft|NotDone|CantFit|OutOfGlyphs|Done|LeftToRight)|ndscapeOrientation)|ABColorSpaceModel)|A(sc(iiWithDoubleByteEUCGlyphPacking|endingPageOrder)|n(y(Type|PredicateModifier|EventMask)|choredSearch|imation(Blocking|Nonblocking(Threaded)?|E(ffect(DisappearingItemDefault|Poof)|ase(In(Out)?|Out))|Linear)|dPredicateType)|t(Bottom|tachmentCharacter|omicWrite|Top)|SCIIStringEncoding|d(obe(GB1CharacterCollection|CNS1CharacterCollection|Japan(1CharacterCollection|2CharacterCollection)|Korea1CharacterCollection)|dTraitFontAction|minApplicationDirectory)|uto(saveOperation|Pagination)|pp(lication(SupportDirectory|D(irectory|e(fined(Mask)?|legateReply(Success|Cancel|Failure)|activatedEventType))|ActivatedEventType)|KitDefined(Mask)?)|l(ternateKeyMask|pha(ShiftKeyMask|NonpremultipliedBitmapFormat|FirstBitmapFormat)|ert(SecondButtonReturn|ThirdButtonReturn|OtherReturn|DefaultReturn|ErrorReturn|FirstButtonReturn|AlternateReturn)|l(ScrollerParts|DomainsMask|PredicateModifier|LibrariesDirectory|ApplicationsDirectory))|rgument(sWrongScriptError|EvaluationScriptError)|bove(Bottom|Top)|WTEventType))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.cocoa.objcpp\\\"},\\\"anonymous_pattern_4\\\":{\\\"begin\\\":\\\"\\\\\\\\b(id)\\\\\\\\s*(?=<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.objcpp\\\"}},\\\"end\\\":\\\"(?<=>)\\\",\\\"name\\\":\\\"meta.id-with-protocol.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#protocol_list\\\"}]},\\\"anonymous_pattern_5\\\":{\\\"match\\\":\\\"\\\\\\\\b(NS_DURING|NS_HANDLER|NS_ENDHANDLER)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.macro.objcpp\\\"},\\\"anonymous_pattern_7\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objcpp\\\"}},\\\"match\\\":\\\"(@)(try|catch|finally|throw)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.exception.objcpp\\\"},\\\"anonymous_pattern_8\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objcpp\\\"}},\\\"match\\\":\\\"(@)(synchronized)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.synchronize.objcpp\\\"},\\\"anonymous_pattern_9\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objcpp\\\"}},\\\"match\\\":\\\"(@)(required|optional)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.protocol-specification.objcpp\\\"},\\\"apple_foundation_functional_macros\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:API_AVAILABLE|API_DEPRECATED|API_UNAVAILABLE|NS_AVAILABLE|NS_AVAILABLE_MAC|NS_AVAILABLE_IOS|NS_DEPRECATED|NS_DEPRECATED_MAC|NS_DEPRECATED_IOS|NS_SWIFT_NAME))(?:(?:\\\\\\\\s)+)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.apple-foundation.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.macro.arguments.begin.bracket.round.apple-foundation.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.macro.arguments.end.bracket.round.apple-foundation.objcpp\\\"}},\\\"name\\\":\\\"meta.preprocessor.macro.callable.apple-foundation.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#c_lang\\\"}]},\\\"bracketed_content\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.objcpp\\\"}},\\\"name\\\":\\\"meta.bracketed.objcpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=predicateWithFormat:)(?<=NSPredicate )(predicateWithFormat:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objcpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"name\\\":\\\"meta.function-call.predicate.objcpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objcpp\\\"}},\\\"match\\\":\\\"\\\\\\\\bargument(Array|s)(:)\\\",\\\"name\\\":\\\"support.function.any-method.name-of-parameter.objcpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objcpp\\\"}},\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+(:)\\\",\\\"name\\\":\\\"invalid.illegal.unknown-method.objcpp\\\"},{\\\"begin\\\":\\\"@\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(AND|OR|NOT|IN)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logical.predicate.cocoa.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(ALL|ANY|SOME|NONE)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.predicate.cocoa.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(NULL|NIL|SELF|TRUE|YES|FALSE|NO|FIRST|LAST|SIZE)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.predicate.cocoa.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(MATCHES|CONTAINS|BEGINSWITH|ENDSWITH|BETWEEN)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.comparison.predicate.cocoa.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\bC(ASEINSENSITIVE|I)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.modifier.predicate.cocoa.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(ANYKEY|SUBQUERY|CAST|TRUEPREDICATE|FALSEPREDICATE)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.predicate.cocoa.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[abefnrtv'\\\\\\\"?]|[0-3]\\\\\\\\d{,2}|[4-7]\\\\\\\\d?|x[a-zA-Z0-9]+)\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape.objcpp\\\"}]},{\\\"include\\\":\\\"#special_variables\\\"},{\\\"include\\\":\\\"#c_functions\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\\w)(?<=[\\\\\\\\w\\\\\\\\])\\\\\\\"] )(\\\\\\\\w+(?:(:)|(?=\\\\\\\\])))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objcpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"name\\\":\\\"meta.function-call.objcpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objcpp\\\"}},\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+(:)\\\",\\\"name\\\":\\\"support.function.any-method.name-of-parameter.objcpp\\\"},{\\\"include\\\":\\\"#special_variables\\\"},{\\\"include\\\":\\\"#c_functions\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"#special_variables\\\"},{\\\"include\\\":\\\"#c_functions\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"c_functions\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.support.function.leading.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.C99.objcpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\s*)\\\\\\\\b(hypot(f|l)?|s(scanf|ystem|nprintf|ca(nf|lb(n(f|l)?|ln(f|l)?))|i(n(h(f|l)?|f|l)?|gn(al|bit))|tr(s(tr|pn)|nc(py|at|mp)|c(spn|hr|oll|py|at|mp)|to(imax|d|u(l(l)?|max)|k|f|l(d|l)?)|error|pbrk|ftime|len|rchr|xfrm)|printf|et(jmp|vbuf|locale|buf)|qrt(f|l)?|w(scanf|printf)|rand)|n(e(arbyint(f|l)?|xt(toward(f|l)?|after(f|l)?))|an(f|l)?)|c(s(in(h(f|l)?|f|l)?|qrt(f|l)?)|cos(h(f)?|f|l)?|imag(f|l)?|t(ime|an(h(f|l)?|f|l)?)|o(s(h(f|l)?|f|l)?|nj(f|l)?|pysign(f|l)?)|p(ow(f|l)?|roj(f|l)?)|e(il(f|l)?|xp(f|l)?)|l(o(ck|g(f|l)?)|earerr)|a(sin(h(f|l)?|f|l)?|cos(h(f|l)?|f|l)?|tan(h(f|l)?|f|l)?|lloc|rg(f|l)?|bs(f|l)?)|real(f|l)?|brt(f|l)?)|t(ime|o(upper|lower)|an(h(f|l)?|f|l)?|runc(f|l)?|gamma(f|l)?|mp(nam|file))|i(s(space|n(ormal|an)|cntrl|inf|digit|u(nordered|pper)|p(unct|rint)|finite|w(space|c(ntrl|type)|digit|upper|p(unct|rint)|lower|al(num|pha)|graph|xdigit|blank)|l(ower|ess(equal|greater)?)|al(num|pha)|gr(eater(equal)?|aph)|xdigit|blank)|logb(f|l)?|max(div|abs))|di(v|fftime)|_Exit|unget(c|wc)|p(ow(f|l)?|ut(s|c(har)?|wc(har)?)|error|rintf)|e(rf(c(f|l)?|f|l)?|x(it|p(2(f|l)?|f|l|m1(f|l)?)?))|v(s(scanf|nprintf|canf|printf|w(scanf|printf))|printf|f(scanf|printf|w(scanf|printf))|w(scanf|printf)|a_(start|copy|end|arg))|qsort|f(s(canf|e(tpos|ek))|close|tell|open|dim(f|l)?|p(classify|ut(s|c|w(s|c))|rintf)|e(holdexcept|set(e(nv|xceptflag)|round)|clearexcept|testexcept|of|updateenv|r(aiseexcept|ror)|get(e(nv|xceptflag)|round))|flush|w(scanf|ide|printf|rite)|loor(f|l)?|abs(f|l)?|get(s|c|pos|w(s|c))|re(open|e|ad|xp(f|l)?)|m(in(f|l)?|od(f|l)?|a(f|l|x(f|l)?)?))|l(d(iv|exp(f|l)?)|o(ngjmp|cal(time|econv)|g(1(p(f|l)?|0(f|l)?)|2(f|l)?|f|l|b(f|l)?)?)|abs|l(div|abs|r(int(f|l)?|ound(f|l)?))|r(int(f|l)?|ound(f|l)?)|gamma(f|l)?)|w(scanf|c(s(s(tr|pn)|nc(py|at|mp)|c(spn|hr|oll|py|at|mp)|to(imax|d|u(l(l)?|max)|k|f|l(d|l)?|mbs)|pbrk|ftime|len|r(chr|tombs)|xfrm)|to(b|mb)|rtomb)|printf|mem(set|c(hr|py|mp)|move))|a(s(sert|ctime|in(h(f|l)?|f|l)?)|cos(h(f|l)?|f|l)?|t(o(i|f|l(l)?)|exit|an(h(f|l)?|2(f|l)?|f|l)?)|b(s|ort))|g(et(s|c(har)?|env|wc(har)?)|mtime)|r(int(f|l)?|ound(f|l)?|e(name|alloc|wind|m(ove|quo(f|l)?|ainder(f|l)?))|a(nd|ise))|b(search|towc)|m(odf(f|l)?|em(set|c(hr|py|mp)|move)|ktime|alloc|b(s(init|towcs|rtowcs)|towc|len|r(towc|len))))\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.function-call.leading.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.any-method.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.objcpp\\\"}},\\\"match\\\":\\\"(?:(?=\\\\\\\\s)(?:(?<=else|new|return)|(?<!\\\\\\\\w))(\\\\\\\\s+))?(\\\\\\\\b(?!(while|for|do|if|else|switch|catch|enumerate|return|r?iterate)\\\\\\\\s*\\\\\\\\()(?:(?!NS)[A-Za-z_][A-Za-z0-9_]*+\\\\\\\\b|::)++)\\\\\\\\s*(\\\\\\\\()\\\",\\\"name\\\":\\\"meta.function-call.objcpp\\\"}]},\\\"c_lang\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled\\\"},{\\\"include\\\":\\\"#preprocessor-rule-conditional\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#switch_statement\\\"},{\\\"match\\\":\\\"\\\\\\\\b(break|continue|do|else|for|goto|if|_Pragma|return|while)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.objcpp\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"match\\\":\\\"typedef\\\",\\\"name\\\":\\\"keyword.other.typedef.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.in.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(const|extern|register|restrict|static|volatile|inline|__block)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\bk[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.variable.mac-classic.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\bg[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.global.mac-classic.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\bs[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.static.mac-classic.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(NULL|true|false|TRUE|FALSE)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.objcpp\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#special_variables\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((\\\\\\\\#)\\\\\\\\s*define)\\\\\\\\s+((?<id>[a-zA-Z_$][\\\\\\\\w$]*))(?:(\\\\\\\\()(\\\\\\\\s*\\\\\\\\g<id>\\\\\\\\s*((,)\\\\\\\\s*\\\\\\\\g<id>\\\\\\\\s*)*(?:\\\\\\\\.\\\\\\\\.\\\\\\\\.)?)(\\\\\\\\)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.define.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.preprocessor.objcpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.objcpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.objcpp\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.macro.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(error|warning))\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.diagnostic.$3.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.diagnostic.objcpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"'|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.single.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"[^'\\\\\\\"]\\\",\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"string.unquoted.single.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"include\\\":\\\"#comments\\\"}]}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(include(?:_next)?|import))\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.$3.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.include.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.include.objcpp\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.other.lt-gt.include.objcpp\\\"}]},{\\\"include\\\":\\\"#pragma-mark\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*line)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.line.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(?:((#)\\\\\\\\s*undef))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.undef.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w$]*\\\",\\\"name\\\":\\\"entity.name.function.preprocessor.objcpp\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(?:((#)\\\\\\\\s*pragma))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.pragma.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.pragma.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w\\\\\\\\-$]*\\\",\\\"name\\\":\\\"entity.other.attribute-name.pragma.preprocessor.objcpp\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.sys-types.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.pthread.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.stdint.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(noErr|kNilOptions|kInvalidID|kVariableLengthArray)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.mac-classic.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(AbsoluteTime|Boolean|Byte|ByteCount|ByteOffset|BytePtr|CompTimeValue|ConstLogicalAddress|ConstStrFileNameParam|ConstStringPtr|Duration|Fixed|FixedPtr|Float32|Float32Point|Float64|Float80|Float96|FourCharCode|Fract|FractPtr|Handle|ItemCount|LogicalAddress|OptionBits|OSErr|OSStatus|OSType|OSTypePtr|PhysicalAddress|ProcessSerialNumber|ProcessSerialNumberPtr|ProcHandle|Ptr|ResType|ResTypePtr|ShortFixed|ShortFixedPtr|SignedByte|SInt16|SInt32|SInt64|SInt8|Size|StrFileName|StringHandle|StringPtr|TimeBase|TimeRecord|TimeScale|TimeValue|TimeValue64|UInt16|UInt32|UInt64|UInt8|UniChar|UniCharCount|UniCharCountPtr|UniCharPtr|UnicodeScalarValue|UniversalProcHandle|UniversalProcPtr|UnsignedFixed|UnsignedFixedPtr|UnsignedWide|UTF16Char|UTF32Char|UTF8Char)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.mac-classic.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Za-z0-9_]+_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.posix-reserved.objcpp\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#parens\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(?!\\\\\\\\s*(?:not|compl|sizeof|not_eq|bitand|xor|bitor|and|or|and_eq|xor_eq|or_eq|alignof|alignas|_Alignof|_Alignas|while|for|do|if|else|goto|switch|return|break|case|continue|default|void|char|short|int|signed|unsigned|long|float|double|bool|_Bool|_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|NULL|true|false|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t|struct|union|enum|typedef|auto|register|static|extern|thread_local|inline|_Noreturn|const|volatile|restrict|_Atomic)\\\\\\\\s*\\\\\\\\()(?=[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-innards\\\"}]},{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\\\\\]\\\\\\\\)]))?(\\\\\\\\[)(?!\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.object.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.objcpp\\\"}},\\\"name\\\":\\\"meta.bracket.square.access.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\s*\\\\\\\\]\\\",\\\"name\\\":\\\"storage.modifier.array.bracket.square.objcpp\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.objcpp\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.objcpp\\\"}],\\\"repository\\\":{\\\"access-method\\\":{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\\\\\]\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\.)|(->))((?:(?:[a-zA-Z_][a-zA-Z_0-9]*)\\\\\\\\s*(?:(?:\\\\\\\\.)|(?:->)))*)\\\\\\\\s*([a-zA-Z_][a-zA-Z_0-9]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.object.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objcpp\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.dot-access.objcpp\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"punctuation.separator.pointer-access.objcpp\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z_0-9]*\\\",\\\"name\\\":\\\"variable.object.objcpp\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"everything.else.objcpp\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.member.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.member.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.member.objcpp\\\"}},\\\"name\\\":\\\"meta.function-call.member.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},\\\"block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"name\\\":\\\"meta.block.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]}]},\\\"block_innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-conditional-block\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#c_function_call\\\"},{\\\"begin\\\":\\\"(?:(?:(?=\\\\\\\\s)(?<!else|new|return)(?<=\\\\\\\\w)\\\\\\\\s+(and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)))((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.initialization.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.initialization.objcpp\\\"}},\\\"name\\\":\\\"meta.initialization.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"include\\\":\\\"#parens-block\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"c_function_call\\\":{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\\\\\s*\\\\\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\]))\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"meta.function-call.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},\\\"case_statement\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)case(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.case.objcpp\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.case.objcpp\\\"}},\\\"name\\\":\\\"meta.conditional.case.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#conditional_context\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.toc-list.banner.block.objcpp\\\"}},\\\"match\\\":\\\"^/\\\\\\\\* =(\\\\\\\\s*.*?)\\\\\\\\s*= \\\\\\\\*/$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.block.objcpp\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.objcpp\\\"}},\\\"name\\\":\\\"comment.block.objcpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.toc-list.banner.line.objcpp\\\"}},\\\"match\\\":\\\"^// =(\\\\\\\\s*.*?)\\\\\\\\s*=\\\\\\\\s*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.banner.objcpp\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.objcpp\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.objcpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line.double-slash.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]}]}]},\\\"conditional_context\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"},{\\\"include\\\":\\\"#block_innards\\\"}]},\\\"default_statement\\\":{\\\"begin\\\":\\\"((?<!\\\\\\\\w)default(?!\\\\\\\\w))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.default.objcpp\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.case.default.objcpp\\\"}},\\\"name\\\":\\\"meta.conditional.case.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#conditional_context\\\"}]},\\\"disabled\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*if(n?def)?\\\\\\\\b.*$\\\",\\\"end\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},\\\"function-call-innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]},\\\"function-innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#vararg_ellipses\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.objcpp\\\"}},\\\"name\\\":\\\"meta.function.definition.parameters.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#probably_a_parameter\\\"},{\\\"include\\\":\\\"#function-innards\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-innards\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},\\\"line_continuation_character\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.line-continuation.objcpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\n\\\"}]},\\\"member_access\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special_variables\\\"},{\\\"match\\\":\\\"(.+)\\\",\\\"name\\\":\\\"variable.other.object.access.objcpp\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objcpp\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special_variables\\\"},{\\\"match\\\":\\\"(.+)\\\",\\\"name\\\":\\\"variable.other.object.access.objcpp\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objcpp\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"variable.other.member.objcpp\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?-mix:(?:(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|(?:(?:->\\\\\\\\*|->)))\\\\\\\\s*)*)\\\\\\\\s*(\\\\\\\\b(?!(?:void|char|short|int|signed|unsigned|long|float|double|bool|_Bool|_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t))[a-zA-Z_]\\\\\\\\w*\\\\\\\\b(?!\\\\\\\\())\\\"},\\\"method_access\\\":{\\\"begin\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?-mix:(?:(?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|(?:(?:->\\\\\\\\*|->)))\\\\\\\\s*)*)\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special_variables\\\"},{\\\"match\\\":\\\"(.+)\\\",\\\"name\\\":\\\"variable.other.object.access.objcpp\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objcpp\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special_variables\\\"},{\\\"match\\\":\\\"(.+)\\\",\\\"name\\\":\\\"variable.other.object.access.objcpp\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objcpp\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*|(?<=\\\\\\\\]|\\\\\\\\)))\\\\\\\\s*)(?:((?:\\\\\\\\.\\\\\\\\*|\\\\\\\\.))|((?:->\\\\\\\\*|->)))\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.member.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.member.objcpp\\\"}},\\\"contentName\\\":\\\"meta.function-call.member.objcpp\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.member.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"}]},\\\"numbers\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(?=\\\\\\\\d|\\\\\\\\.\\\\\\\\d)\\\",\\\"end\\\":\\\"(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.objcpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.objcpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.objcpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.floating-point.objcpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])(?:([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?((?:(?<=[0-9a-fA-F])\\\\\\\\.|\\\\\\\\.(?=[0-9a-fA-F])))(?:([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?(?:((?<!')([pP])(\\\\\\\\+)?(\\\\\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:([lLfF](?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.decimal.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.decimal.point.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.decimal.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.objcpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.objcpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.objcpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.floating-point.objcpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G(?=[0-9.])(?!0[xXbB]))(?:([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?((?:(?<=[0-9])\\\\\\\\.|\\\\\\\\.(?=[0-9])))(?:([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*))?(?:((?<!')([eE])(\\\\\\\\+)?(\\\\\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:([lLfF](?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.binary.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.binary.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.objcpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[bB])([01](?:(?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.octal.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.octal.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.objcpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0)((?:(?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))+)(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.objcpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.objcpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.objcpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G0[xX])([0-9a-fA-F](?:(?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?<!')([pP])(\\\\\\\\+)?(\\\\\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.decimal.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.objcpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.objcpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.objcpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\G(?=[0-9.])(?!0[xXbB]))([0-9](?:(?:[0-9]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)(?:((?<!')([eE])(\\\\\\\\+)?(\\\\\\\\-)?((?-mix:(?:[0-9](?:(?:[0-9]|(?:(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))))*)))))?(?:((?:(?:(?:(?:(?:[uU]|[uU]ll?)|[uU]LL?)|ll?[uU]?)|LL?[uU]?)|[fF])(?!\\\\\\\\w)))?(?!(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))\\\"},{\\\"match\\\":\\\"(?:(?:['0-9a-zA-Z_\\\\\\\\.']|(?<=[eEpP])[+-]))+\\\",\\\"name\\\":\\\"invalid.illegal.constant.numeric.objcpp\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![\\\\\\\\w$])(sizeof)(?![\\\\\\\\w$])\\\",\\\"name\\\":\\\"keyword.operator.sizeof.objcpp\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.objcpp\\\"},{\\\"match\\\":\\\"%=|\\\\\\\\+=|-=|\\\\\\\\*=|(?<!\\\\\\\\()/=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.objcpp\\\"},{\\\"match\\\":\\\"&=|\\\\\\\\^=|<<=|>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.objcpp\\\"},{\\\"match\\\":\\\"<<|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.objcpp\\\"},{\\\"match\\\":\\\"!=|<=|>=|==|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.objcpp\\\"},{\\\"match\\\":\\\"&&|!|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.objcpp\\\"},{\\\"match\\\":\\\"&|\\\\\\\\||\\\\\\\\^|~\\\",\\\"name\\\":\\\"keyword.operator.objcpp\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.objcpp\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.objcpp\\\"},{\\\"begin\\\":\\\"(\\\\\\\\?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objcpp\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards\\\"},{\\\"include\\\":\\\"$base\\\"}]}]},\\\"parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"name\\\":\\\"meta.parens.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"parens-block\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"name\\\":\\\"meta.parens.block.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"},{\\\"match\\\":\\\"(?-mix:(?<!:):(?!:))\\\",\\\"name\\\":\\\"punctuation.range-based.objcpp\\\"}]},\\\"pragma-mark\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.pragma.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.pragma.pragma-mark.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.pragma-mark.objcpp\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(((#)\\\\\\\\s*pragma\\\\\\\\s+mark)\\\\\\\\s+(.*))\\\",\\\"name\\\":\\\"meta.section.objcpp\\\"},\\\"preprocessor-rule-conditional\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if(?:n?def)?\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"invalid.illegal.stray-$1.objcpp\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(else|elif|endif)\\\\\\\\b\\\"}]},\\\"preprocessor-rule-conditional-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if(?:n?def)?\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"invalid.illegal.stray-$1.objcpp\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(else|elif|endif)\\\\\\\\b\\\"}]},\\\"preprocessor-rule-conditional-line\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\bdefined\\\\\\\\b\\\\\\\\s*$)|(?:\\\\\\\\bdefined\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\s*(?:(?!defined\\\\\\\\b)[a-zA-Z_$][\\\\\\\\w$]*\\\\\\\\b)\\\\\\\\s*\\\\\\\\)*\\\\\\\\s*(?:\\\\\\\\n|//|/\\\\\\\\*|\\\\\\\\?|\\\\\\\\:|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)))\\\",\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\bdefined\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.macro-name.objcpp\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objcpp\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#operators\\\"},{\\\"match\\\":\\\"\\\\\\\\b(NULL|true|false|TRUE|FALSE)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.objcpp\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w$]*\\\",\\\"name\\\":\\\"entity.name.function.preprocessor.objcpp\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]}]},\\\"preprocessor-rule-define-line-blocks\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-blocks\\\"},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},\\\"preprocessor-rule-define-line-contents\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#vararg_ellipses\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"name\\\":\\\"meta.block.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-blocks\\\"}]},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas|asm|__asm__|auto|bool|_Bool|char|_Complex|double|enum|float|_Imaginary|int|long|short|signed|struct|typedef|union|unsigned|void)\\\\\\\\s*\\\\\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\\\\\s*\\\\\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\]))\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!\\\\\\\\w)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.function.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"'|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.single.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"preprocessor-rule-define-line-functions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#storage_types\\\"},{\\\"include\\\":\\\"#vararg_ellipses\\\"},{\\\"include\\\":\\\"#method_access\\\"},{\\\"include\\\":\\\"#member_access\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|enumerate|return|typeid|alignof|alignas|sizeof|[cr]?iterate|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},\\\"preprocessor-rule-disabled\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]}]},\\\"preprocessor-rule-disabled-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.in-block.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]}]},\\\"preprocessor-rule-disabled-elif\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]},\\\"preprocessor-rule-enabled\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]}]},\\\"preprocessor-rule-enabled-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.in-block.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.in-block.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]}]}]},\\\"preprocessor-rule-enabled-elif\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(elif)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"include\\\":\\\"$base\\\"}]}]},\\\"preprocessor-rule-enabled-elif-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.in-block.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(elif)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"include\\\":\\\"#block_innards\\\"}]}]},\\\"preprocessor-rule-enabled-else\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"preprocessor-rule-enabled-else-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards\\\"}]},\\\"probably_a_parameter\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.probably.objcpp\\\"}},\\\"match\\\":\\\"(?<=(?:[a-zA-Z_0-9] |[&*>\\\\\\\\]\\\\\\\\)]))\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(?=(?:\\\\\\\\[\\\\\\\\]\\\\\\\\s*)?(?:,|\\\\\\\\)))\\\"},\\\"static_assert\\\":{\\\"begin\\\":\\\"(static_assert|_Static_assert)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.static_assert.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(,)\\\\\\\\s*(?=(?:L|u8|u|U\\\\\\\\s*\\\\\\\\\\\\\\\")?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.delimiter.objcpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.static_assert.message.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_context\\\"},{\\\"include\\\":\\\"#string_context_c\\\"}]},{\\\"include\\\":\\\"#function_call_context\\\"}]},\\\"storage_types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?-mix:(?<!\\\\\\\\w)(?:void|char|short|int|signed|unsigned|long|float|double|bool|_Bool)(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"storage.type.built-in.primitive.objcpp\\\"},{\\\"match\\\":\\\"(?-mix:(?<!\\\\\\\\w)(?:_Complex|_Imaginary|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|memory_order|atomic_bool|atomic_char|atomic_schar|atomic_uchar|atomic_short|atomic_ushort|atomic_int|atomic_uint|atomic_long|atomic_ulong|atomic_llong|atomic_ullong|atomic_char16_t|atomic_char32_t|atomic_wchar_t|atomic_int_least8_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_least16_t|atomic_int_least32_t|atomic_uint_least32_t|atomic_int_least64_t|atomic_uint_least64_t|atomic_int_fast8_t|atomic_uint_fast8_t|atomic_int_fast16_t|atomic_uint_fast16_t|atomic_int_fast32_t|atomic_uint_fast32_t|atomic_int_fast64_t|atomic_uint_fast64_t|atomic_intptr_t|atomic_uintptr_t|atomic_size_t|atomic_ptrdiff_t|atomic_intmax_t|atomic_uintmax_t)(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"storage.type.built-in.objcpp\\\"},{\\\"match\\\":\\\"(?-mix:\\\\\\\\b(asm|__asm__|enum|struct|union)\\\\\\\\b)\\\",\\\"name\\\":\\\"storage.type.$1.objcpp\\\"}]},\\\"string_escaped_char\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[abefnprtv'\\\\\\\"?]|[0-3]\\\\\\\\d{,2}|[4-7]\\\\\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape.objcpp\\\"}]},\\\"string_placeholder\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"%(\\\\\\\\d+\\\\\\\\$)?[#0\\\\\\\\- +']*[,;:_]?((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?(\\\\\\\\.((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]\\\",\\\"name\\\":\\\"constant.other.placeholder.objcpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.placeholder.objcpp\\\"}},\\\"match\\\":\\\"(%)(?!\\\\\\\"\\\\\\\\s*(PRI|SCN))\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.single.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]}]},\\\"switch_conditional_parentheses\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.conditional.switch.objcpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.conditional.switch.objcpp\\\"}},\\\"name\\\":\\\"meta.conditional.switch.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#conditional_context\\\"}]},\\\"switch_statement\\\":{\\\"begin\\\":\\\"(((?<!\\\\\\\\w)switch(?!\\\\\\\\w)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.head.switch.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.switch.objcpp\\\"}},\\\"end\\\":\\\"(?:(?<=\\\\\\\\})|(?=[;>\\\\\\\\[\\\\\\\\]=]))\\\",\\\"name\\\":\\\"meta.block.switch.objcpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G ?\\\",\\\"end\\\":\\\"((?:\\\\\\\\{|(?=;)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.switch.objcpp\\\"}},\\\"name\\\":\\\"meta.head.switch.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#switch_conditional_parentheses\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{)\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.switch.objcpp\\\"}},\\\"name\\\":\\\"meta.body.switch.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#default_statement\\\"},{\\\"include\\\":\\\"#case_statement\\\"},{\\\"include\\\":\\\"$base\\\"},{\\\"include\\\":\\\"#block_innards\\\"}]},{\\\"begin\\\":\\\"(?<=})[\\\\\\\\s\\\\\\\\n]*\\\",\\\"end\\\":\\\"[\\\\\\\\s\\\\\\\\n]*(?=;)\\\",\\\"name\\\":\\\"meta.tail.switch.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]},\\\"vararg_ellipses\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\.\\\\\\\\.\\\\\\\\.(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"punctuation.vararg-ellipses.objcpp\\\"}}},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.objcpp\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.objcpp\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.objcpp\\\"}]}]}]},\\\"cpp_lang\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special_block\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"match\\\":\\\"\\\\\\\\b(friend|explicit|virtual|override|final|noexcept)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(private:|protected:|public:)\\\",\\\"name\\\":\\\"storage.type.modifier.access.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(catch|try|throw|using)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\bdelete\\\\\\\\b(\\\\\\\\s*\\\\\\\\[\\\\\\\\])?|\\\\\\\\bnew\\\\\\\\b(?!])\\\",\\\"name\\\":\\\"keyword.control.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(f|m)[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.member.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\bthis\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.this.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\bnullptr\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.objcpp\\\"},{\\\"include\\\":\\\"#template_definition\\\"},{\\\"match\\\":\\\"\\\\\\\\btemplate\\\\\\\\b\\\\\\\\s*\\\",\\\"name\\\":\\\"storage.type.template.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(const_cast|dynamic_cast|reinterpret_cast|static_cast)\\\\\\\\b\\\\\\\\s*\\\",\\\"name\\\":\\\"keyword.operator.cast.objcpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.scope.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.scope.name.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.objcpp\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_][a-zA-Z_0-9]*::)*)([a-zA-Z_][a-zA-Z_0-9]*)(::)\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(decltype|wchar_t|char16_t|char32_t)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(constexpr|export|mutable|typename|thread_local)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.objcpp\\\"},{\\\"begin\\\":\\\"(?:^|(?:(?<!else|new|=)))((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.objcpp\\\"}},\\\"name\\\":\\\"meta.function.destructor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?:^|(?:(?<!else|new|=)))((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.objcpp\\\"}},\\\"name\\\":\\\"meta.function.destructor.prototype.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"#c_lang\\\"}],\\\"repository\\\":{\\\"angle_brackets\\\":{\\\"begin\\\":\\\"<\\\",\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"meta.angle-brackets.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#angle_brackets\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"name\\\":\\\"meta.block.objcpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.objcpp\\\"}},\\\"match\\\":\\\"((?!while|for|do|if|else|switch|catch|enumerate|return|r?iterate)(?:\\\\\\\\b[A-Za-z_][A-Za-z0-9_]*+\\\\\\\\b|::)*+)\\\\\\\\s*(\\\\\\\\()\\\",\\\"name\\\":\\\"meta.function-call.objcpp\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"constructor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^\\\\\\\\s*)((?!while|for|do|if|else|switch|catch|enumerate|r?iterate)[A-Za-z_][A-Za-z0-9_:]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.constructor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.objcpp\\\"}},\\\"name\\\":\\\"meta.function.constructor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#probably_a_parameter\\\"},{\\\"include\\\":\\\"#function-innards\\\"}]},{\\\"begin\\\":\\\"(:)((?=\\\\\\\\s*[A-Za-z_][A-Za-z0-9_:]*\\\\\\\\s*(\\\\\\\\()))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.objcpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.function.constructor.initializer-list.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]},\\\"special_block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(using)\\\\\\\\b\\\\\\\\s*(namespace)\\\\\\\\b\\\\\\\\s*((?:[_A-Za-z][_A-Za-z0-9]*\\\\\\\\b(::)?)*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.namespace.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.objcpp\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.objcpp\\\"}},\\\"name\\\":\\\"meta.using-namespace-declaration.objcpp\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(namespace)\\\\\\\\b\\\\\\\\s*([_A-Za-z][_A-Za-z0-9]*\\\\\\\\b)?+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.namespace.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.objcpp\\\"}},\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.namespace.$2.objcpp\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=(;|,|\\\\\\\\(|\\\\\\\\)|>|\\\\\\\\[|\\\\\\\\]|=))\\\",\\\"name\\\":\\\"meta.namespace-block.objcpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.scope.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.scope.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#special_block\\\"},{\\\"include\\\":\\\"#constructor\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(?:(class)|(struct))\\\\\\\\b\\\\\\\\s*([_A-Za-z][_A-Za-z0-9]*\\\\\\\\b)?+(\\\\\\\\s*:\\\\\\\\s*(public|protected|private)\\\\\\\\s*([_A-Za-z][_A-Za-z0-9]*\\\\\\\\b)((\\\\\\\\s*,\\\\\\\\s*(public|protected|private)\\\\\\\\s*[_A-Za-z][_A-Za-z0-9]*\\\\\\\\b)*))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.struct.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.modifier.access.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.type.inherited.objcpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(public|protected|private)\\\",\\\"name\\\":\\\"storage.type.modifier.access.objcpp\\\"},{\\\"match\\\":\\\"[_A-Za-z][_A-Za-z0-9]*\\\",\\\"name\\\":\\\"entity.name.type.inherited.objcpp\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=(;|\\\\\\\\(|\\\\\\\\)|>|\\\\\\\\[|\\\\\\\\]|=))\\\",\\\"name\\\":\\\"meta.class-struct-block.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#angle_brackets\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\})(\\\\\\\\s*\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.you-forgot-semicolon.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#special_block\\\"},{\\\"include\\\":\\\"#constructor\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(extern)(?=\\\\\\\\s*\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.objcpp\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=\\\\\\\\w)|(?=\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.extern-block.objcpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\}|(?=\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#special_block\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(u|u8|U|L)?\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u\\\\\\\\h{4}|\\\\\\\\\\\\\\\\U\\\\\\\\h{8}\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\"?\\\\\\\\\\\\\\\\abfnrtv]\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-7]{1,3}\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x\\\\\\\\h+\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"include\\\":\\\"#string_placeholder\\\"}]},{\\\"begin\\\":\\\"(u|u8|U|L)?R\\\\\\\"(?:([^ ()\\\\\\\\\\\\\\\\\\\\\\\\t]{0,16})|([^ ()\\\\\\\\\\\\\\\\\\\\\\\\t]*))\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.delimiter-too-long.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\\\\\\2(\\\\\\\\3)\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.delimiter-too-long.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.raw.objcpp\\\"}]},\\\"template_definition\\\":{\\\"begin\\\":\\\"\\\\\\\\b(template)\\\\\\\\s*(<)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.template.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.template.angle-brackets.start.objcpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.template.angle-brackets.end.objcpp\\\"}},\\\"name\\\":\\\"template.definition.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template_definition_argument\\\"}]},\\\"template_definition_argument\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.template.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.template.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.template.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.template.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.template.operator.ellipsis.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.type.template.objcpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.type.template.objcpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.type.template.objcpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.assignment.objcpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"constant.language.objcpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"meta.template.operator.comma.objcpp\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(?:([a-zA-Z_][a-zA-Z_0-9]*\\\\\\\\s*)|((?:[a-zA-Z_][a-zA-Z_0-9]*\\\\\\\\s+)*)([a-zA-Z_][a-zA-Z_0-9]*)|([a-zA-Z_][a-zA-Z_0-9]*)\\\\\\\\s*(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*([a-zA-Z_][a-zA-Z_0-9]*)|((?:[a-zA-Z_][a-zA-Z_0-9]*\\\\\\\\s+)*)([a-zA-Z_][a-zA-Z_0-9]*)\\\\\\\\s*(=)\\\\\\\\s*(\\\\\\\\w+))(,|(?=>))\\\"}}},\\\"cpp_lang_newish\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special_block\\\"},{\\\"match\\\":\\\"(?-mix:##[a-zA-Z_]\\\\\\\\w*(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"variable.other.macro.argument.objcpp\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)((?:inline|constexpr|mutable|friend|explicit|virtual))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.modifier.specificer.functional.pre-parameters.$1.objcpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)((?:final|override|volatile|const|noexcept))(?!\\\\\\\\w)(?=\\\\\\\\s*(?:(?:(?:(?:\\\\\\\\{|;))|[\\\\\\\\n\\\\\\\\r])))\\\",\\\"name\\\":\\\"storage.modifier.specifier.functional.post-parameters.$1.objcpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)((?:const|static|volatile|register|restrict|extern))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.modifier.specifier.$1.objcpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)((?:private|protected|public)) *:\\\",\\\"name\\\":\\\"storage.type.modifier.access.control.$1.objcpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:throw|try|catch)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"keyword.control.exception.$1.objcpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(using|typedef)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"keyword.other.$1.objcpp\\\"},{\\\"include\\\":\\\"#memory_operators\\\"},{\\\"match\\\":\\\"\\\\\\\\bthis\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.this.objcpp\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#template_definition\\\"},{\\\"match\\\":\\\"\\\\\\\\btemplate\\\\\\\\b\\\\\\\\s*\\\",\\\"name\\\":\\\"storage.type.template.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(const_cast|dynamic_cast|reinterpret_cast|static_cast)\\\\\\\\b\\\\\\\\s*\\\",\\\"name\\\":\\\"keyword.operator.cast.$1.objcpp\\\"},{\\\"include\\\":\\\"#scope_resolution\\\"},{\\\"match\\\":\\\"\\\\\\\\b(decltype|wchar_t|char16_t|char32_t)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(constexpr|export|mutable|typename|thread_local)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.objcpp\\\"},{\\\"begin\\\":\\\"(?:^|(?:(?<!else|new|=)))((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.destructor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.destructor.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.destructor.objcpp\\\"}},\\\"name\\\":\\\"meta.function.destructor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"(?:^|(?:(?<!else|new|=)))((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.objcpp\\\"}},\\\"name\\\":\\\"meta.function.destructor.prototype.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-enabled\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled\\\"},{\\\"include\\\":\\\"#preprocessor-rule-conditional\\\"},{\\\"include\\\":\\\"#comments-c\\\"},{\\\"match\\\":\\\"\\\\\\\\b(break|case|continue|default|do|else|for|goto|if|_Pragma|return|switch|while)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.$1.objcpp\\\"},{\\\"include\\\":\\\"#storage_types_c\\\"},{\\\"match\\\":\\\"\\\\\\\\b(const|extern|register|restrict|static|volatile|inline)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.objcpp\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#operator_overload\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#strings-c\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((\\\\\\\\#)\\\\\\\\s*define)\\\\\\\\s+((?<id>[a-zA-Z_$][\\\\\\\\w$]*))(?:(\\\\\\\\()(\\\\\\\\s*\\\\\\\\g<id>\\\\\\\\s*((,)\\\\\\\\s*\\\\\\\\g<id>\\\\\\\\s*)*(?:\\\\\\\\.\\\\\\\\.\\\\\\\\.)?)(\\\\\\\\)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.define.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.preprocessor.objcpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.objcpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.objcpp\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.macro.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(error|warning))\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.diagnostic.$3.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.diagnostic.objcpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"'|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.single.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"[^'\\\\\\\"]\\\",\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"string.unquoted.single.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"include\\\":\\\"#comments-c\\\"}]}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(include(?:_next)?|import))\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.$3.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.include.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.include.objcpp\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.other.lt-gt.include.objcpp\\\"}]},{\\\"include\\\":\\\"#pragma-mark\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*line)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.line.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings-c\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(?:((#)\\\\\\\\s*undef))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.undef.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w$]*\\\",\\\"name\\\":\\\"entity.name.function.preprocessor.objcpp\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(?:((#)\\\\\\\\s*pragma))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.pragma.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.pragma.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings-c\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w\\\\\\\\-$]*\\\",\\\"name\\\":\\\"entity.other.attribute-name.pragma.preprocessor.objcpp\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.sys-types.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.pthread.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.stdint.objcpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)[a-zA-Z_](?:\\\\\\\\w)*_t(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"support.type.posix-reserved.objcpp\\\"},{\\\"include\\\":\\\"#block-c\\\"},{\\\"include\\\":\\\"#parens-c\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(?!\\\\\\\\s*(?:not|compl|sizeof|new|delete|not_eq|bitand|xor|bitor|and|or|throw|and_eq|xor_eq|or_eq|alignof|alignas|typeid|noexcept|static_cast|dynamic_cast|const_cast|reinterpret_cast|while|for|do|if|else|goto|switch|try|catch|return|break|case|continue|default|auto|void|char|short|int|signed|unsigned|long|float|double|bool|wchar_t|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|NULL|true|false|nullptr|class|struct|union|enum|const|static|volatile|register|restrict|extern|inline|constexpr|mutable|friend|explicit|virtual|volatile|const|noexcept|constexpr|mutable|constexpr|consteval|private|protected|public|this|template|namespace|using|operator|typedef|decltype|typename|asm|__asm__|concept|requires|export|thread_local|atomic_cancel|atomic_commit|atomic_noexcept|co_await|co_return|co_yield|import|module|reflexpr|synchronized)\\\\\\\\s*\\\\\\\\()(?=[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.definition.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-innards-c\\\"}]},{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\\\\\]\\\\\\\\)]))?(\\\\\\\\[)(?!\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.objcpp\\\"}},\\\"name\\\":\\\"meta.bracket.square.access.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards-c\\\"}]},{\\\"match\\\":\\\"(?-mix:(?<!delete))\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\s*\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"storage.modifier.array.bracket.square.objcpp\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.objcpp\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.objcpp\\\"}],\\\"repository\\\":{\\\"access-member\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objcpp\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.dot-access.objcpp\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"punctuation.separator.pointer-access.objcpp\\\"},{\\\"match\\\":\\\"[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.object.objcpp\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"everything.else.objcpp\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"variable.other.member.objcpp\\\"}},\\\"match\\\":\\\"(?:(?:([a-zA-Z_]\\\\\\\\w*)|(?<=\\\\\\\\]|\\\\\\\\))))\\\\\\\\s*(?:(?:((?:(?:\\\\\\\\.|\\\\\\\\.\\\\\\\\*)))|((?:(?:->|->\\\\\\\\*)))))\\\\\\\\s*((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?:(?:\\\\\\\\.|->))\\\\\\\\s*)*)\\\\\\\\b(?!(?:auto|void|char|short|int|signed|unsigned|long|float|double|bool|wchar_t|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t))([a-zA-Z_]\\\\\\\\w*)\\\\\\\\b(?!\\\\\\\\()\\\",\\\"name\\\":\\\"variable.other.object.access.objcpp\\\"},\\\"access-method\\\":{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\\\\\\\]\\\\\\\\)]))\\\\\\\\s*(?:(\\\\\\\\.)|(->))((?:(?:[a-zA-Z_][a-zA-Z_0-9]*)\\\\\\\\s*(?:(?:\\\\\\\\.)|(?:->)))*)\\\\\\\\s*([a-zA-Z_][a-zA-Z_0-9]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dot-access.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.pointer-access.objcpp\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.dot-access.objcpp\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"punctuation.separator.pointer-access.objcpp\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z_0-9]*\\\",\\\"name\\\":\\\"variable.other.object.objcpp\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"everything.else.objcpp\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.member.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.function.member.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.function.member.objcpp\\\"}},\\\"name\\\":\\\"meta.function-call.member.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards-c\\\"}]},\\\"angle_brackets\\\":{\\\"begin\\\":\\\"<\\\",\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"meta.angle-brackets.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#angle_brackets\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"name\\\":\\\"meta.block.objcpp\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.objcpp\\\"}},\\\"match\\\":\\\"((?!while|for|do|if|else|switch|catch|return)(?:\\\\\\\\b[A-Za-z_][A-Za-z0-9_]*+\\\\\\\\b|::)*+)\\\\\\\\s*(\\\\\\\\()\\\",\\\"name\\\":\\\"meta.function-call.objcpp\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"block-c\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"name\\\":\\\"meta.block.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards-c\\\"}]}]},\\\"block_innards-c\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-conditional-block\\\"},{\\\"include\\\":\\\"#access-method\\\"},{\\\"include\\\":\\\"#access-member\\\"},{\\\"include\\\":\\\"#c_function_call\\\"},{\\\"begin\\\":\\\"(?:(?:(?=\\\\\\\\s)(?<!else|new|return)(?<=\\\\\\\\w)\\\\\\\\s+(and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)))((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.initialization.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.initialization.objcpp\\\"}},\\\"name\\\":\\\"meta.initialization.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards-c\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards-c\\\"}]},{\\\"include\\\":\\\"#parens-block-c\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"c_function_call\\\":{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|return|typeid|alignof|alignas|sizeof|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\\\\\s*(?:(?:<(?:[\\\\\\\\s<>,\\\\\\\\w])*>\\\\\\\\s*))?\\\\\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\]))\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"meta.function-call.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards-c\\\"}]},\\\"comments-c\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.toc-list.banner.block.objcpp\\\"}},\\\"match\\\":\\\"^/\\\\\\\\* =(\\\\\\\\s*.*?)\\\\\\\\s*= \\\\\\\\*/$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.block.objcpp\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.objcpp\\\"}},\\\"name\\\":\\\"comment.block.objcpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.toc-list.banner.line.objcpp\\\"}},\\\"match\\\":\\\"^// =(\\\\\\\\s*.*?)\\\\\\\\s*=\\\\\\\\s*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.banner.objcpp\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.objcpp\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.objcpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line.double-slash.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_continuation_character\\\"}]}]}]},\\\"constants\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:NULL|true|false|nullptr)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.language.objcpp\\\"},\\\"constructor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:^\\\\\\\\s*)((?!while|for|do|if|else|switch|catch)[A-Za-z_][A-Za-z0-9_:]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.constructor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.constructor.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.constructor.objcpp\\\"}},\\\"name\\\":\\\"meta.function.constructor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#probably_a_parameter\\\"},{\\\"include\\\":\\\"#function-innards-c\\\"}]},{\\\"begin\\\":\\\"(:)((?=\\\\\\\\s*[A-Za-z_][A-Za-z0-9_:]*\\\\\\\\s*(\\\\\\\\()))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.initializer-list.parameters.objcpp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.function.constructor.initializer-list.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]},\\\"disabled\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*if(n?def)?\\\\\\\\b.*$\\\",\\\"end\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},\\\"function-call-innards-c\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-c\\\"},{\\\"include\\\":\\\"#storage_types_c\\\"},{\\\"include\\\":\\\"#access-method\\\"},{\\\"include\\\":\\\"#access-member\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|return|typeid|alignof|alignas|sizeof|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:new)\\\\\\\\s*((?:(?:<(?:[\\\\\\\\s<>,\\\\\\\\w])*>\\\\\\\\s*))?)|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.memory.new.objcpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_innards\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards-c\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(?!\\\\\\\\s*(?:not|compl|sizeof|new|delete|not_eq|bitand|xor|bitor|and|or|throw|and_eq|xor_eq|or_eq|alignof|alignas|typeid|noexcept|static_cast|dynamic_cast|const_cast|reinterpret_cast|while|for|do|if|else|goto|switch|try|catch|return|break|case|continue|default|auto|void|char|short|int|signed|unsigned|long|float|double|bool|wchar_t|u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t|NULL|true|false|nullptr|class|struct|union|enum|const|static|volatile|register|restrict|extern|inline|constexpr|mutable|friend|explicit|virtual|volatile|const|noexcept|constexpr|mutable|constexpr|consteval|private|protected|public|this|template|namespace|using|operator|typedef|decltype|typename|asm|__asm__|concept|requires|export|thread_local|atomic_cancel|atomic_commit|atomic_noexcept|co_await|co_return|co_yield|import|module|reflexpr|synchronized)\\\\\\\\s*\\\\\\\\()((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?:(?:<(?:[\\\\\\\\s<>,\\\\\\\\w])*>\\\\\\\\s*))?::)*)\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(?:((?:<(?:[\\\\\\\\s<>,\\\\\\\\w])*>\\\\\\\\s*)))?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.call.objcpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_innards\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards-c\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call-innards-c\\\"}]},{\\\"include\\\":\\\"#block_innards-c\\\"}]},\\\"function-innards-c\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-c\\\"},{\\\"include\\\":\\\"#storage_types_c\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#vararg_ellipses-c\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|return|typeid|alignof|alignas|sizeof|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|:\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.objcpp\\\"}},\\\"name\\\":\\\"meta.function.definition.parameters.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#probably_a_parameter\\\"},{\\\"include\\\":\\\"#function-innards-c\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-innards-c\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},\\\"line_continuation_character\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.line-continuation.objcpp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\n\\\"}]},\\\"literal_numeric_seperator\\\":{\\\"match\\\":\\\"(?<!')'(?!')\\\",\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"memory_operators\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.memory.delete.array.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.memory.delete.array.bracket.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.memory.delete.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.memory.new.objcpp\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:(delete)\\\\\\\\s*(\\\\\\\\[\\\\\\\\])|(delete))|(new))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"keyword.operator.memory.objcpp\\\"},\\\"number_literal\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.objcpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.objcpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.objcpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"12\\\":{\\\"name\\\":\\\"constant.numeric.decimal.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"13\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"14\\\":{\\\"name\\\":\\\"constant.numeric.decimal.point.objcpp\\\"},\\\"15\\\":{\\\"name\\\":\\\"constant.numeric.decimal.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"16\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"17\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.objcpp\\\"},\\\"18\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.objcpp\\\"},\\\"19\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.objcpp\\\"},\\\"20\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"21\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.floating-point.objcpp\\\"},\\\"22\\\":{\\\"name\\\":\\\"keyword.other.unit.binary.objcpp\\\"},\\\"23\\\":{\\\"name\\\":\\\"constant.numeric.binary.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"24\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"25\\\":{\\\"name\\\":\\\"keyword.other.unit.octal.objcpp\\\"},\\\"26\\\":{\\\"name\\\":\\\"constant.numeric.octal.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"27\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"28\\\":{\\\"name\\\":\\\"keyword.other.unit.hexadecimal.objcpp\\\"},\\\"29\\\":{\\\"name\\\":\\\"constant.numeric.hexadecimal.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"30\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"31\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.hexadecimal.objcpp\\\"},\\\"32\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.hexadecimal.objcpp\\\"},\\\"33\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.hexadecimal.objcpp\\\"},\\\"34\\\":{\\\"name\\\":\\\"constant.numeric.exponent.hexadecimal.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"35\\\":{\\\"name\\\":\\\"constant.numeric.decimal.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"36\\\":{\\\"name\\\":\\\"punctuation.separator.constant.numeric.objcpp\\\"},\\\"37\\\":{\\\"name\\\":\\\"keyword.other.unit.exponent.decimal.objcpp\\\"},\\\"38\\\":{\\\"name\\\":\\\"keyword.operator.plus.exponent.decimal.objcpp\\\"},\\\"39\\\":{\\\"name\\\":\\\"keyword.operator.minus.exponent.decimal.objcpp\\\"},\\\"40\\\":{\\\"name\\\":\\\"constant.numeric.exponent.decimal.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_numeric_seperator\\\"}]},\\\"41\\\":{\\\"name\\\":\\\"keyword.other.unit.suffix.integer.objcpp\\\"},\\\"42\\\":{\\\"name\\\":\\\"keyword.other.unit.user-defined.objcpp\\\"}},\\\"match\\\":\\\"((?<!\\\\\\\\w)(?:(?:(?:(0[xX])(?:([0-9a-fA-F](?:(?:(?:[0-9a-fA-F]|((?<!')'(?!')))))*))?((?:(?:(?<=[0-9a-fA-F])\\\\\\\\.|\\\\\\\\.(?=[0-9a-fA-F]))))(?:([0-9a-fA-F](?:(?:(?:[0-9a-fA-F]|((?<!')'(?!')))))*))?(?:([pP])(\\\\\\\\+)?(\\\\\\\\-)?((?:[0-9](?:(?:(?:[0-9]|(?:(?<!')'(?!')))))*)))?|(?:([0-9](?:(?:(?:[0-9]|((?<!')'(?!')))))*))?((?:(?:(?<=[0-9])\\\\\\\\.|\\\\\\\\.(?=[0-9]))))(?:([0-9](?:(?:(?:[0-9]|((?<!')'(?!')))))*))?(?:([eE])(\\\\\\\\+)?(\\\\\\\\-)?((?:[0-9](?:(?:(?:[0-9]|(?:(?<!')'(?!')))))*)))?)(?:([lLfF](?!\\\\\\\\w)))?|(?:(?:(?:(?:(?:(0[bB])((?:(?:(?:[01]|((?<!')'(?!')))))+)|(0)((?:(?:(?:[0-7]|((?<!')'(?!')))))+)))|(0[xX])([0-9a-fA-F](?:(?:(?:[0-9a-fA-F]|((?<!')'(?!')))))*)(?:([pP])(\\\\\\\\+)?(\\\\\\\\-)?((?:[0-9](?:(?:(?:[0-9]|(?:(?<!')'(?!')))))*)))?))|([0-9](?:(?:(?:[0-9]|((?<!')'(?!')))))*)(?:([eE])(\\\\\\\\+)?(\\\\\\\\-)?((?:[0-9](?:(?:(?:[0-9]|(?:(?<!')'(?!')))))*)))?)(?:((?:(?:(?:(?:(?:(?:(?:(?:(?:(?:(?:(?:LL[uU]|ll[uU]))|[uU]LL))|[uU]ll))|ll))|LL))|[uUlL]))(?!\\\\\\\\w)))?))(\\\\\\\\w*))\\\"},\\\"operator_overload\\\":{\\\"begin\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?:(?:<(?:[\\\\\\\\s<>,\\\\\\\\w])*>\\\\\\\\s*))?::)*)\\\\\\\\s*(operator)((?:(?:\\\\\\\\s*(?:\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\]|\\\\\\\\->|\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-|\\\\\\\\+|\\\\\\\\-|!|~|\\\\\\\\*|&|\\\\\\\\->\\\\\\\\*|\\\\\\\\*|\\\\\\\\/|%|\\\\\\\\+|\\\\\\\\-|<<|>>|<=>|<|<=|>|>=|==|!=|&|\\\\\\\\^|\\\\\\\\||&&|\\\\\\\\|\\\\\\\\||=|\\\\\\\\+=|\\\\\\\\-=|\\\\\\\\*=|\\\\\\\\/=|%=|<<=|>>=|&=|\\\\\\\\^=|\\\\\\\\|=|,)|\\\\\\\\s+(?:(?:(?:new|new\\\\\\\\[\\\\\\\\]|delete|delete\\\\\\\\[\\\\\\\\])|(?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?:(?:<(?:[\\\\\\\\s<>,\\\\\\\\w])*>\\\\\\\\s*))?::)*[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?:&)?)))))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.scope.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.operator.overload.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.operator.overloadee.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end.bracket.round.objcpp\\\"}},\\\"name\\\":\\\"meta.function.definition.parameters.operator-overload.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#probably_a_parameter\\\"},{\\\"include\\\":\\\"#function-innards-c\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?-mix:(?<!\\\\\\\\w)((?:not|compl|sizeof|new|delete|not_eq|bitand|xor|bitor|and|or|and_eq|xor_eq|or_eq|alignof|alignas|typeid|noexcept))(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"keyword.operator.$1.objcpp\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.objcpp\\\"},{\\\"match\\\":\\\"%=|\\\\\\\\+=|-=|\\\\\\\\*=|(?<!\\\\\\\\()/=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.objcpp\\\"},{\\\"match\\\":\\\"&=|\\\\\\\\^=|<<=|>>=|\\\\\\\\|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.bitwise.objcpp\\\"},{\\\"match\\\":\\\"<<|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.objcpp\\\"},{\\\"match\\\":\\\"!=|<=|>=|==|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.objcpp\\\"},{\\\"match\\\":\\\"&&|!|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.objcpp\\\"},{\\\"match\\\":\\\"&|\\\\\\\\||\\\\\\\\^|~\\\",\\\"name\\\":\\\"keyword.operator.objcpp\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.objcpp\\\"},{\\\"match\\\":\\\"%|\\\\\\\\*|/|-|\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.objcpp\\\"},{\\\"applyEndPatternLast\\\":true,\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objcpp\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#access-method\\\"},{\\\"include\\\":\\\"#access-member\\\"},{\\\"include\\\":\\\"#c_function_call\\\"},{\\\"include\\\":\\\"$base\\\"}]}]},\\\"parens-block-c\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"name\\\":\\\"meta.block.parens.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards-c\\\"},{\\\"match\\\":\\\"(?<!:):(?!:)\\\",\\\"name\\\":\\\"punctuation.range-based.objcpp\\\"}]},\\\"parens-c\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"name\\\":\\\"punctuation.section.parens-c\\\\b.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"pragma-mark\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.pragma.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.pragma.pragma-mark.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.pragma-mark.objcpp\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(((#)\\\\\\\\s*pragma\\\\\\\\s+mark)\\\\\\\\s+(.*))\\\",\\\"name\\\":\\\"meta.section.objcpp\\\"},\\\"preprocessor-rule-conditional\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if(?:n?def)?\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"invalid.illegal.stray-$1.objcpp\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(else|elif|endif)\\\\\\\\b\\\"}]},\\\"preprocessor-rule-conditional-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if(?:n?def)?\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#block_innards-c\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"invalid.illegal.stray-$1.objcpp\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(else|elif|endif)\\\\\\\\b\\\"}]},\\\"preprocessor-rule-conditional-line\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\bdefined\\\\\\\\b\\\\\\\\s*$)|(?:\\\\\\\\bdefined\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\s*(?:(?!defined\\\\\\\\b)[a-zA-Z_$][\\\\\\\\w$]*\\\\\\\\b)\\\\\\\\s*\\\\\\\\)*\\\\\\\\s*(?:\\\\\\\\n|//|/\\\\\\\\*|\\\\\\\\?|\\\\\\\\:|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)))\\\",\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\bdefined\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.macro-name.objcpp\\\"},{\\\"include\\\":\\\"#comments-c\\\"},{\\\"include\\\":\\\"#strings-c\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objcpp\\\"}},\\\"end\\\":\\\":\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"match\\\":\\\"[a-zA-Z_$][\\\\\\\\w$]*\\\",\\\"name\\\":\\\"entity.name.function.preprocessor.objcpp\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]}]},\\\"preprocessor-rule-define-line-blocks\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-blocks\\\"},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},\\\"preprocessor-rule-define-line-contents\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#vararg_ellipses-c\\\"},{\\\"match\\\":\\\"(?-mix:##?[a-zA-Z_]\\\\\\\\w*(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"variable.other.macro.argument.objcpp\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\s*#\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"name\\\":\\\"meta.block.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-blocks\\\"}]},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|return|typeid|alignof|alignas|sizeof|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas|asm|__asm__|auto|bool|_Bool|char|_Complex|double|enum|float|_Imaginary|int|long|short|signed|struct|typedef|union|unsigned|void)\\\\\\\\s*\\\\\\\\()(?=(?:[A-Za-z_][A-Za-z0-9_]*+|::)++\\\\\\\\s*\\\\\\\\(|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\]))\\\\\\\\s*\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))(?!\\\\\\\\w)|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.function.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char-c\\\"},{\\\"include\\\":\\\"#string_placeholder-c\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"'|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.single.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char-c\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"include\\\":\\\"#access-method\\\"},{\\\"include\\\":\\\"#access-member\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"preprocessor-rule-define-line-functions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-c\\\"},{\\\"include\\\":\\\"#storage_types_c\\\"},{\\\"include\\\":\\\"#vararg_ellipses-c\\\"},{\\\"include\\\":\\\"#access-method\\\"},{\\\"include\\\":\\\"#access-member\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"begin\\\":\\\"(?!(?:while|for|do|if|else|switch|catch|return|typeid|alignof|alignas|sizeof|and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq|alignof|alignas)\\\\\\\\s*\\\\\\\\()((?:[A-Za-z_][A-Za-z0-9_]*+|::)++|(?:(?<=operator)(?:[-*&<>=+!]+|\\\\\\\\(\\\\\\\\)|\\\\\\\\[\\\\\\\\])))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.arguments.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.arguments.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.bracket.round.objcpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\s*\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.bracket.round.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-define-line-functions\\\"}]},{\\\"include\\\":\\\"#preprocessor-rule-define-line-contents\\\"}]},\\\"preprocessor-rule-disabled\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments-c\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]}]},\\\"preprocessor-rule-disabled-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments-c\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-elif-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-enabled-else-block\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-elif\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#block_innards-c\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.in-block.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]}]},\\\"preprocessor-rule-disabled-elif\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0+\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:elif|else|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments-c\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]},\\\"preprocessor-rule-enabled\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments-c\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]}]},\\\"preprocessor-rule-enabled-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*if\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments-c\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.in-block.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.if-branch.in-block.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards-c\\\"}]}]}]},\\\"preprocessor-rule-enabled-elif\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments-c\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(elif)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"include\\\":\\\"$base\\\"}]}]},\\\"preprocessor-rule-enabled-elif-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*elif\\\\\\\\b)(?=\\\\\\\\s*\\\\\\\\(*\\\\\\\\b0*1\\\\\\\\b\\\\\\\\)*\\\\\\\\s*(?:$|//|/\\\\\\\\*))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=.)(?!//|/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))\\\",\\\"end\\\":\\\"(?=//)|(?=/\\\\\\\\*(?!.*\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n))|(?<!\\\\\\\\\\\\\\\\)(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"meta.preprocessor.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-conditional-line\\\"}]},{\\\"include\\\":\\\"#comments-c\\\"},{\\\"begin\\\":\\\"\\\\\\\\n\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.in-block.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*(elif)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.elif-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*(?:else|elif|endif)\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"include\\\":\\\"#block_innards-c\\\"}]}]},\\\"preprocessor-rule-enabled-else\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},\\\"preprocessor-rule-enabled-else-block\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((#)\\\\\\\\s*else\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.conditional.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.directive.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*((#)\\\\\\\\s*endif\\\\\\\\b))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_innards-c\\\"}]},\\\"probably_a_parameter\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.probably.defaulted.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.probably.objcpp\\\"}},\\\"match\\\":\\\"(?:(?:([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(?==)|(?<=\\\\\\\\w\\\\\\\\s|\\\\\\\\*\\\\\\\\/|[&*>\\\\\\\\]\\\\\\\\)])\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(?=(?:\\\\\\\\[\\\\\\\\]\\\\\\\\s*)?(?:(?:,|\\\\\\\\))))))\\\"},\\\"scope_resolution\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"entity.name.namespace.scope-resolution.objcpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template_call_innards\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.access.objcpp\\\"}},\\\"match\\\":\\\"((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?:(?:<(?:[\\\\\\\\s<>,\\\\\\\\w])*>\\\\\\\\s*))?::)*\\\\\\\\s*)([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*((?:<(?:[\\\\\\\\s<>,\\\\\\\\w])*>\\\\\\\\s*))?(::)\\\",\\\"name\\\":\\\"meta.scope-resolution.objcpp\\\"},\\\"special_block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(using)\\\\\\\\s+(namespace)\\\\\\\\s+(?:((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?:(?:<(?:[\\\\\\\\s<>,\\\\\\\\w])*>\\\\\\\\s*))?::)*)\\\\\\\\s*)?((?<!\\\\\\\\w)[a-zA-Z_]\\\\\\\\w*(?!\\\\\\\\w))(?=;|\\\\\\\\n)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.using.directive.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.namespace.directive.objcpp storage.type.namespace.directive.objcpp\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.namespace.objcpp\\\"}},\\\"comment\\\":\\\"https://en.cppreference.com/w/cpp/language/namespace\\\",\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.objcpp\\\"}},\\\"name\\\":\\\"meta.using-namespace-declaration.objcpp\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(namespace)\\\\\\\\s+(?:(?:((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*(?:(?:<(?:[\\\\\\\\s<>,\\\\\\\\w])*>\\\\\\\\s*))?::)*[a-zA-Z_]\\\\\\\\w*)|(?={)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.namespace.definition.objcpp storage.type.namespace.definition.objcpp\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?-mix:(?<!\\\\\\\\w)[a-zA-Z_]\\\\\\\\w*(?!\\\\\\\\w))\\\",\\\"name\\\":\\\"entity.name.type.objcpp\\\"},{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"punctuation.separator.namespace.access.objcpp\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=(;|,|\\\\\\\\(|\\\\\\\\)|>|\\\\\\\\[|\\\\\\\\]|=))\\\",\\\"name\\\":\\\"meta.namespace-block.objcpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.scope.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.scope.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#special_block\\\"},{\\\"include\\\":\\\"#constructor\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(?:(class)|(struct))\\\\\\\\b\\\\\\\\s*([_A-Za-z][_A-Za-z0-9]*\\\\\\\\b)?+(\\\\\\\\s*:\\\\\\\\s*(public|protected|private)\\\\\\\\s*([_A-Za-z][_A-Za-z0-9]*\\\\\\\\b)((\\\\\\\\s*,\\\\\\\\s*(public|protected|private)\\\\\\\\s*[_A-Za-z][_A-Za-z0-9]*\\\\\\\\b)*))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.struct.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.modifier.access.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.type.inherited.objcpp\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(public|protected|private)\\\",\\\"name\\\":\\\"storage.type.modifier.access.objcpp\\\"},{\\\"match\\\":\\\"[_A-Za-z][_A-Za-z0-9]*\\\",\\\"name\\\":\\\"entity.name.type.inherited.objcpp\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(;)|(?=(\\\\\\\\(|\\\\\\\\)|>|\\\\\\\\[|\\\\\\\\]|=))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.objcpp\\\"}},\\\"name\\\":\\\"meta.class-struct-block.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#angle_brackets\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\})(\\\\\\\\s*\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.you-forgot-semicolon.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#special_block\\\"},{\\\"include\\\":\\\"#constructor\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(extern)(?=\\\\\\\\s*\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.objcpp\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=\\\\\\\\w)|(?=\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.extern-block.objcpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.bracket.curly.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\}|(?=\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.bracket.curly.objcpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#special_block\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"$base\\\"}]}]},\\\"storage_types_c\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:auto|void|char|short|int|signed|unsigned|long|float|double|bool|wchar_t)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.primitive.objcpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t|pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t|uintmax_t|uintmax_t)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.objcpp\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)(asm|__asm__|enum|union|struct)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.$1.objcpp\\\"}]},\\\"string_escaped_char-c\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[abefnprtv'\\\\\\\"?]|[0-3]\\\\\\\\d{,2}|[4-7]\\\\\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape.objcpp\\\"}]},\\\"string_placeholder-c\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"%(\\\\\\\\d+\\\\\\\\$)?[#0\\\\\\\\- +']*[,;:_]?((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?(\\\\\\\\.((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]\\\",\\\"name\\\":\\\"constant.other.placeholder.objcpp\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(u|u8|U|L)?\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u\\\\\\\\h{4}|\\\\\\\\\\\\\\\\U\\\\\\\\h{8}\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\"?\\\\\\\\\\\\\\\\abfnrtv]\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-7]{1,3}\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x\\\\\\\\h+\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"include\\\":\\\"#string_placeholder-c\\\"}]},{\\\"begin\\\":\\\"(u|u8|U|L)?R\\\\\\\"(?:([^ ()\\\\\\\\\\\\\\\\\\\\\\\\t]{0,16})|([^ ()\\\\\\\\\\\\\\\\\\\\\\\\t]*))\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.encoding.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.delimiter-too-long.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\\\\\\2(\\\\\\\\3)\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"},\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.delimiter-too-long.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.raw.objcpp\\\"}]},\\\"strings-c\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.double.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char-c\\\"},{\\\"include\\\":\\\"#string_placeholder-c\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]},{\\\"begin\\\":\\\"(?-mix:(?<![\\\\\\\\da-fA-F])')\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.objcpp\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.objcpp\\\"}},\\\"name\\\":\\\"string.quoted.single.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_char-c\\\"},{\\\"include\\\":\\\"#line_continuation_character\\\"}]}]},\\\"template_call_innards\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.template.call.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#storage_types_c\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#scope_resolution\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)[a-zA-Z_]\\\\\\\\w*(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.user-defined.objcpp\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#number_literal\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.template.argument.objcpp\\\"}]}},\\\"match\\\":\\\"<(?:[\\\\\\\\s<>,\\\\\\\\w])*>\\\\\\\\s*\\\"},\\\"template_definition\\\":{\\\"begin\\\":\\\"(?-mix:(?<!\\\\\\\\w)(template)\\\\\\\\s*(<))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.template.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.start.template.definition.objcpp\\\"}},\\\"end\\\":\\\"(?-mix:(>))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.angle-brackets.end.template.definition.objcpp\\\"}},\\\"name\\\":\\\"meta.template.definition.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#scope_resolution\\\"},{\\\"include\\\":\\\"#template_definition_argument\\\"},{\\\"include\\\":\\\"#template_call_innards\\\"}]},\\\"template_definition_argument\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"storage.type.template.argument.$1.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.template.argument.$2.objcpp\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.template.objcpp\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.type.template.objcpp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.ellipsis.template.definition.objcpp\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.type.template.objcpp\\\"},\\\"8\\\":{\\\"name\\\":\\\"storage.type.template.objcpp\\\"},\\\"9\\\":{\\\"name\\\":\\\"entity.name.type.template.objcpp\\\"},\\\"10\\\":{\\\"name\\\":\\\"keyword.operator.assignment.objcpp\\\"},\\\"11\\\":{\\\"name\\\":\\\"constant.other.objcpp\\\"},\\\"12\\\":{\\\"name\\\":\\\"punctuation.separator.comma.template.argument.objcpp\\\"}},\\\"match\\\":\\\"((?:(?:(?:(?:(?:(?:\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)|((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s+)+)([a-zA-Z_]\\\\\\\\w*)))|([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)))|((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s+)*)([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*([=])\\\\\\\\s*(\\\\\\\\w+)))\\\\\\\\s*(?:(?:(,)|(?=>))))\\\"},\\\"vararg_ellipses-c\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\.\\\\\\\\.\\\\\\\\.(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"punctuation.vararg-ellipses.objcpp\\\"}}},\\\"disabled\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*if(n?def)?\\\\\\\\b.*$\\\",\\\"comment\\\":\\\"eat nested preprocessor if(def)s\\\",\\\"end\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},\\\"implementation_innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled-implementation\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-implementation\\\"},{\\\"include\\\":\\\"#preprocessor-rule-other-implementation\\\"},{\\\"include\\\":\\\"#property_directive\\\"},{\\\"include\\\":\\\"#method_super\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"interface_innards\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#preprocessor-rule-enabled-interface\\\"},{\\\"include\\\":\\\"#preprocessor-rule-disabled-interface\\\"},{\\\"include\\\":\\\"#preprocessor-rule-other-interface\\\"},{\\\"include\\\":\\\"#properties\\\"},{\\\"include\\\":\\\"#protocol_list\\\"},{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"method\\\":{\\\"begin\\\":\\\"^(-|\\\\\\\\+)\\\\\\\\s*\\\",\\\"end\\\":\\\"(?=\\\\\\\\{|#)|;\\\",\\\"name\\\":\\\"meta.function.objcpp\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.type.begin.objcpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*(\\\\\\\\w+\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.type.end.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.objcpp\\\"}},\\\"name\\\":\\\"meta.return-type.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#protocol_list\\\"},{\\\"include\\\":\\\"#protocol_type_qualifier\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+(?=:)\\\",\\\"name\\\":\\\"entity.name.function.name-of-parameter.objcpp\\\"},{\\\"begin\\\":\\\"((:))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.name-of-parameter.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.arguments.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.type.begin.objcpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*(\\\\\\\\w+\\\\\\\\b)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.type.end.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.objcpp\\\"}},\\\"name\\\":\\\"meta.argument-type.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#protocol_list\\\"},{\\\"include\\\":\\\"#protocol_type_qualifier\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"include\\\":\\\"#comment\\\"}]},\\\"method_super\\\":{\\\"begin\\\":\\\"^(?=-|\\\\\\\\+)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=#)\\\",\\\"name\\\":\\\"meta.function-with-body.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#method\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"pragma-mark\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.pragma.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.toc-list.pragma-mark.objcpp\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(pragma\\\\\\\\s+mark)\\\\\\\\s+(.*))\\\",\\\"name\\\":\\\"meta.section.objcpp\\\"},\\\"preprocessor-rule-disabled-implementation\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_innards\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"name\\\":\\\"comment.block.preprocessor.if-branch.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]},\\\"preprocessor-rule-disabled-interface\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.objcpp\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_innards\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"name\\\":\\\"comment.block.preprocessor.if-branch.objcpp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]}]},\\\"preprocessor-rule-enabled-implementation\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0*1)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#implementation_innards\\\"}]}]},\\\"preprocessor-rule-enabled-interface\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#(if)\\\\\\\\s+(0*1)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.if.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.preprocessor.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(else)\\\\\\\\b).*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.else.objcpp\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.else-branch.objcpp\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*endif\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#disabled\\\"},{\\\"include\\\":\\\"#pragma-mark\\\"}]},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*#\\\\\\\\s*(else|endif)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_innards\\\"}]}]},\\\"preprocessor-rule-other-implementation\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(if(n?def)?)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b).*?(?:(?=(?://|/\\\\\\\\*))|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#implementation_innards\\\"}]},\\\"preprocessor-rule-other-interface\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(if(n?def)?)\\\\\\\\b.*?(?:(?=(?://|/\\\\\\\\*))|$))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.preprocessor.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.objcpp\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(#\\\\\\\\s*(endif)\\\\\\\\b).*?(?:(?=(?://|/\\\\\\\\*))|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interface_innards\\\"}]},\\\"properties\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((@)property)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.property.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objcpp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.objcpp\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.objcpp\\\"}},\\\"name\\\":\\\"meta.property-with-attributes.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(getter|setter|readonly|readwrite|assign|retain|copy|nonatomic|atomic|strong|weak|nonnull|nullable|null_resettable|null_unspecified|class|direct)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.property.attribute.objcpp\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.property.objcpp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objcpp\\\"}},\\\"match\\\":\\\"((@)property)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.property.objcpp\\\"}]},\\\"property_directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.objcpp\\\"}},\\\"match\\\":\\\"(@)(dynamic|synthesize)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.property.directive.objcpp\\\"},\\\"protocol_list\\\":{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.objcpp\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.objcpp\\\"}},\\\"name\\\":\\\"meta.protocol-list.objcpp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bNS(GlyphStorage|M(utableCopying|enuItem)|C(hangeSpelling|o(ding|pying|lorPicking(Custom|Default)))|T(oolbarItemValidations|ext(Input|AttachmentCell))|I(nputServ(iceProvider|erMouseTracker)|gnoreMisspelledWords)|Obj(CTypeSerializationCallBack|ect)|D(ecimalNumberBehaviors|raggingInfo)|U(serInterfaceValidations|RL(HandleClient|DownloadDelegate|ProtocolClient|AuthenticationChallengeSender))|Validated(ToobarItem|UserInterfaceItem)|Locking)\\\\\\\\b\\\",\\\"name\\\":\\\"support.other.protocol.objcpp\\\"}]},\\\"protocol_type_qualifier\\\":{\\\"match\\\":\\\"\\\\\\\\b(in|out|inout|oneway|bycopy|byref|nonnull|nullable|_Nonnull|_Nullable|_Null_unspecified)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.protocol.objcpp\\\"},\\\"special_variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b_cmd\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.selector.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(self|super)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.objcpp\\\"}]},\\\"string_escaped_char\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\\\\\\\\\|[abefnprtv'\\\\\\\"?]|[0-3]\\\\\\\\d{,2}|[4-7]\\\\\\\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8})\\\",\\\"name\\\":\\\"constant.character.escape.objcpp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape.objcpp\\\"}]},\\\"string_placeholder\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"%(\\\\\\\\d+\\\\\\\\$)?[#0\\\\\\\\- +']*[,;:_]?((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?(\\\\\\\\.((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?)?(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)?[diouxXDOUeEfFgGaACcSspn%]\\\",\\\"name\\\":\\\"constant.other.placeholder.objcpp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.placeholder.objcpp\\\"}},\\\"match\\\":\\\"(%)(?!\\\\\\\"\\\\\\\\s*(PRI|SCN))\\\"}]}},\\\"scopeName\\\":\\\"source.objcpp\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"OCaml\\\",\\\"fileTypes\\\":[\\\".ml\\\",\\\".mli\\\"],\\\"name\\\":\\\"ocaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#decl\\\"}],\\\"repository\\\":{\\\"attribute\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)[[:space:]]*((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])@{1,3}(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributePayload\\\"}]},\\\"attributeIdentifier\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"match\\\":\\\"((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])%(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))((?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))\\\"},\\\"attributePayload\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]%|^%))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])[:\\\\\\\\?](?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|(?<=[[:space:]])|(?=\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#pathModuleExtended\\\"},{\\\"include\\\":\\\"#pathRecord\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#signature\\\"},{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]\\\\\\\\?|^\\\\\\\\?))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]\\\\\\\\?|^\\\\\\\\?))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(?=\\\\\\\\])|\\\\\\\\bwhen\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{}},\\\"patterns\\\":[{\\\"include\\\":\\\"#pattern\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]when|^when))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]}]},{\\\"include\\\":\\\"#term\\\"}]},\\\"bindClassTerm\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]class|^class|[^[:word:]]type|^type))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])(:)|(=)(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]class|^class|[^[:word:]]type|^type))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)[[:space:]]*,|[^[:space:][:lower:]%])|(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)|(?=\\\\\\\\btype\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.function strong emphasis\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributeIdentifier\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#bindTermArgs\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#literalClassType\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"\\\\\\\\band\\\\\\\\b|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp markup.underline\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]}]},\\\"bindClassType\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]class|^class|[^[:word:]]type|^type))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])(:)|(=)(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]class|^class|[^[:word:]]type|^type))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)[[:space:]]*,|[^[:space:][:lower:]%])|(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)|(?=\\\\\\\\btype\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.function strong emphasis\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributeIdentifier\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#bindTermArgs\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#literalClassType\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"\\\\\\\\band\\\\\\\\b|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp markup.underline\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#literalClassType\\\"}]}]},\\\"bindConstructor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]exception|^exception))(?![[:word:]]))|(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]\\\\\\\\+=|^\\\\\\\\+=|[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=|[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]\\\\\\\\||^\\\\\\\\|))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(:)|(\\\\\\\\bof\\\\\\\\b)|((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\\\\\\|(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributeIdentifier\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)\\\\\\\\b(?![[:space:]]*(?:\\\\\\\\.|\\\\\\\\([^\\\\\\\\*]))\\\",\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"},{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|(?:(?<=(?:[^[:word:]]of|^of))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\\\\\\|(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"bindSignature\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pathModuleExtended\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"\\\\\\\\band\\\\\\\\b|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp markup.underline\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#signature\\\"}]}]},\\\"bindStructure\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]and|^and))(?![[:word:]]))|(?=[[:upper:]])\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])(:(?!=))|(:?=)(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"\\\\\\\\bmodule\\\\\\\\b\\\",\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"entity.name.function strong emphasis\\\"},{\\\"begin\\\":\\\"\\\\\\\\((?!\\\\\\\\))\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$]):(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#signature\\\"}]},{\\\"include\\\":\\\"#variableModule\\\"}]},{\\\"include\\\":\\\"#literalUnit\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"\\\\\\\\b(and)\\\\\\\\b|((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp markup.underline\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#signature\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:=|^:=|[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"\\\\\\\\b(?:(and)|(with))\\\\\\\\b|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp markup.underline\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp markup.underline\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#structure\\\"}]}]},\\\"bindTerm\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]!|^!))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]external|^external|[^[:word:]]let|^let|[^[:word:]]method|^method|[^[:word:]]val|^val))(?![[:word:]]))\\\",\\\"end\\\":\\\"(\\\\\\\\bmodule\\\\\\\\b)|(\\\\\\\\bopen\\\\\\\\b)|(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])(:)|((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]!|^!))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]external|^external|[^[:word:]]let|^let|[^[:word:]]method|^method|[^[:word:]]val|^val))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=\\\\\\\\b(?:module|open)\\\\\\\\b)|(?=(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)[[:space:]]*,|[^[:space:][:lower:]%])|(\\\\\\\\brec\\\\\\\\b)|((?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function strong emphasis\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributeIdentifier\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]rec|^rec))(?![[:word:]]))\\\",\\\"end\\\":\\\"((?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))|(?=[^[:space:][:alpha:]])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.function strong emphasis\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#bindTermArgs\\\"}]},{\\\"include\\\":\\\"#bindTermArgs\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]module|^module))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declModule\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]open|^open))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=\\\\\\\\bin\\\\\\\\b)|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pathModuleSimple\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"\\\\\\\\btype\\\\\\\\b|(?=[^[:space:]])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}}},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\\\\\\.(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#pattern\\\"}]},{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"\\\\\\\\band\\\\\\\\b|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp markup.underline\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]}]},\\\"bindTermArgs\\\":{\\\"patterns\\\":[{\\\"applyEndPatternLast\\\":true,\\\"begin\\\":\\\"~|\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\":|(?=[^[:space:]])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]~|^~|[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]\\\\\\\\?|^\\\\\\\\?))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)|(?<=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"\\\\\\\\((?!\\\\\\\\*)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\()\\\",\\\"end\\\":\\\":|=\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename\\\"}]},{\\\"begin\\\":\\\"(?<=:)\\\",\\\"end\\\":\\\"=|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]}]}]}]},{\\\"include\\\":\\\"#pattern\\\"}]},\\\"bindType\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]type|^type))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\\\\\\+=|=(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributeIdentifier\\\"},{\\\"include\\\":\\\"#pathType\\\"},{\\\"match\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"entity.name.function strong\\\"},{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]\\\\\\\\+=|^\\\\\\\\+=|[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"\\\\\\\\band\\\\\\\\b|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp markup.underline\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#bindConstructor\\\"}]}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#extension\\\"},{\\\"include\\\":\\\"#commentBlock\\\"},{\\\"include\\\":\\\"#commentDoc\\\"}]},\\\"commentBlock\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\*(?!\\\\\\\\*[^\\\\\\\\)])\\\",\\\"contentName\\\":\\\"emphasis\\\",\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\)\\\",\\\"name\\\":\\\"comment constant.regexp meta.separator.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#commentBlock\\\"},{\\\"include\\\":\\\"#commentDoc\\\"}]},\\\"commentDoc\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\*\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\)\\\",\\\"name\\\":\\\"comment constant.regexp meta.separator.markdown\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"decl\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#declClass\\\"},{\\\"include\\\":\\\"#declException\\\"},{\\\"include\\\":\\\"#declInclude\\\"},{\\\"include\\\":\\\"#declModule\\\"},{\\\"include\\\":\\\"#declOpen\\\"},{\\\"include\\\":\\\"#declTerm\\\"},{\\\"include\\\":\\\"#declType\\\"}]},\\\"declClass\\\":{\\\"begin\\\":\\\"\\\\\\\\bclass\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.class constant.numeric markup.underline\\\"}},\\\"end\\\":\\\";;|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]class|^class))(?![[:word:]]))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.class constant.numeric markup.underline\\\"}},\\\"end\\\":\\\"\\\\\\\\btype\\\\\\\\b|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#bindClassTerm\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#bindClassType\\\"}]}]},\\\"declException\\\":{\\\"begin\\\":\\\"\\\\\\\\bexception\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword markup.underline\\\"}},\\\"end\\\":\\\";;|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributeIdentifier\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#bindConstructor\\\"}]},\\\"declInclude\\\":{\\\"begin\\\":\\\"\\\\\\\\binclude\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\";;|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributeIdentifier\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#signature\\\"}]},\\\"declModule\\\":{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]module|^module))(?![[:word:]]))|\\\\\\\\bmodule\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename markup.underline\\\"}},\\\"end\\\":\\\";;|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]module|^module))(?![[:word:]]))\\\",\\\"end\\\":\\\"(\\\\\\\\btype\\\\\\\\b)|(?=[[:upper:]])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributeIdentifier\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"\\\\\\\\brec\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#bindSignature\\\"}]},{\\\"begin\\\":\\\"(?=[[:upper:]])\\\",\\\"end\\\":\\\"(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#bindStructure\\\"}]}]},\\\"declOpen\\\":{\\\"begin\\\":\\\"\\\\\\\\bopen\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\";;|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributeIdentifier\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#pathModuleExtended\\\"}]},\\\"declTerm\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?:(external|val)|(method)|(let))\\\\\\\\b(!?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type markup.underline\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type markup.underline\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control markup.underline\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\";;|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#bindTerm\\\"}]},\\\"declType\\\":{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))|\\\\\\\\btype\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword markup.underline\\\"}},\\\"end\\\":\\\";;|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#bindType\\\"}]},\\\"extension\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])%{1,3}(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attributePayload\\\"}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#termConstructor\\\"},{\\\"include\\\":\\\"#literalArray\\\"},{\\\"include\\\":\\\"#literalBoolean\\\"},{\\\"include\\\":\\\"#literalCharacter\\\"},{\\\"include\\\":\\\"#literalList\\\"},{\\\"include\\\":\\\"#literalNumber\\\"},{\\\"include\\\":\\\"#literalObjectTerm\\\"},{\\\"include\\\":\\\"#literalString\\\"},{\\\"include\\\":\\\"#literalRecord\\\"},{\\\"include\\\":\\\"#literalUnit\\\"}]},\\\"literalArray\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\\\\\\|\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]},\\\"literalBoolean\\\":{\\\"match\\\":\\\"\\\\\\\\bfalse|true\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"},\\\"literalCharacter\\\":{\\\"begin\\\":\\\"(?<![[:word:]])'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"markup.punctuation.quote.beginning\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literalCharacterEscape\\\"}]},\\\"literalCharacterEscape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[\\\\\\\\\\\\\\\\\\\\\\\"'ntbr]|[[:digit:]][[:digit:]][[:digit:]]|x[[:xdigit:]][[:xdigit:]]|o[0-3][0-7][0-7])\\\"},\\\"literalClassType\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"\\\\\\\\bobject\\\\\\\\b\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag emphasis\\\"}},\\\"end\\\":\\\"\\\\\\\\bend\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\binherit\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\";;|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bas\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\";;|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variablePattern\\\"}]},{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#pattern\\\"},{\\\"include\\\":\\\"#declTerm\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\"}]},\\\"literalList\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]}]},\\\"literalNumber\\\":{\\\"match\\\":\\\"(?<![[:alpha:]])[[:digit:]][[:digit:]]*(\\\\\\\\.[[:digit:]][[:digit:]]*)?\\\",\\\"name\\\":\\\"constant.numeric\\\"},\\\"literalObjectTerm\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"\\\\\\\\bobject\\\\\\\\b\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag emphasis\\\"}},\\\"end\\\":\\\"\\\\\\\\bend\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\binherit\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\";;|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bas\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\";;|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variablePattern\\\"}]},{\\\"include\\\":\\\"#term\\\"}]},{\\\"include\\\":\\\"#pattern\\\"},{\\\"include\\\":\\\"#declTerm\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\"}]},\\\"literalRecord\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong strong\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\{|;)\\\",\\\"end\\\":\\\"(:)|(=)|(;)|(with)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pathModulePrefixSimple\\\"},{\\\"match\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]with|^with))(?![[:word:]]))\\\",\\\"end\\\":\\\"(:)|(=)|(;)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(;)|(=)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\";|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]}]},\\\"literalString\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string beginning.punctuation.definition.quote.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literalStringEscape\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\{)([_[:lower:]]*?)(\\\\\\\\|)\\\",\\\"end\\\":\\\"(\\\\\\\\|)(\\\\\\\\2)(\\\\\\\\})\\\",\\\"name\\\":\\\"string beginning.punctuation.definition.quote.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literalStringEscape\\\"}]}]},\\\"literalStringEscape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[\\\\\\\\\\\\\\\\\\\\\\\"ntbr]|[[:digit:]][[:digit:]][[:digit:]]|x[[:xdigit:]][[:xdigit:]]|o[0-3][0-7][0-7])\\\"},\\\"literalUnit\\\":{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\)\\\",\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"},\\\"pathModuleExtended\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#pathModulePrefixExtended\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"entity.name.class constant.numeric\\\"}]},\\\"pathModulePrefixExtended\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\\\\\.|$|\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.class constant.numeric\\\"}},\\\"end\\\":\\\"(?![[:space:]\\\\\\\\.]|$|\\\\\\\\()\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"((?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\\\\\)))\\\",\\\"name\\\":\\\"string.other.link variable.language variable.parameter emphasis\\\"},{\\\"include\\\":\\\"#structure\\\"}]},{\\\"begin\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\\\\\\.(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword strong\\\"}},\\\"end\\\":\\\"((?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\\\\\.|$))|((?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*(?:$|\\\\\\\\()))|((?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\\\\\)))|(?![[:space:]\\\\\\\\.[:upper:]]|$|\\\\\\\\()\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.class constant.numeric\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function strong\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.link variable.language variable.parameter emphasis\\\"}}}]},\\\"pathModulePrefixExtendedParens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"((?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\\\\\)))\\\",\\\"name\\\":\\\"string.other.link variable.language variable.parameter emphasis\\\"},{\\\"include\\\":\\\"#structure\\\"}]},\\\"pathModulePrefixSimple\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\\\\\.)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.class constant.numeric\\\"}},\\\"end\\\":\\\"(?![[:space:]\\\\\\\\.])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\\\\\\.(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword strong\\\"}},\\\"end\\\":\\\"((?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*\\\\\\\\.))|((?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)(?=[[:space:]]*))|(?![[:space:]\\\\\\\\.[:upper:]])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.class constant.numeric\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"}}}]},\\\"pathModuleSimple\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#pathModulePrefixSimple\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"entity.name.class constant.numeric\\\"}]},\\\"pathRecord\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"end\\\":\\\"(?=[^[:space:]\\\\\\\\.])(?!\\\\\\\\(\\\\\\\\*)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]\\\\\\\\.|^\\\\\\\\.))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\\\\\\.(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword strong\\\"}},\\\"end\\\":\\\"((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\\\\\\.(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|((?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|mutable|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))|(?<=\\\\\\\\))|(?<=\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pathModulePrefixSimple\\\"},{\\\"begin\\\":\\\"\\\\\\\\((?!\\\\\\\\*)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pattern\\\"}]}]}]}]},\\\"pattern\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#patternArray\\\"},{\\\"include\\\":\\\"#patternLazy\\\"},{\\\"include\\\":\\\"#patternList\\\"},{\\\"include\\\":\\\"#patternMisc\\\"},{\\\"include\\\":\\\"#patternModule\\\"},{\\\"include\\\":\\\"#patternRecord\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#patternParens\\\"},{\\\"include\\\":\\\"#patternType\\\"},{\\\"include\\\":\\\"#variablePattern\\\"},{\\\"include\\\":\\\"#termOperator\\\"}]},\\\"patternArray\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\\\\\\|\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pattern\\\"}]},\\\"patternLazy\\\":{\\\"match\\\":\\\"lazy\\\",\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"patternList\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pattern\\\"}]},\\\"patternMisc\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"match\\\":\\\"((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$]),(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|([#\\\\\\\\-:!?.@*/&%^+<=>|~$]+)|\\\\\\\\b(as)\\\\\\\\b\\\"},\\\"patternModule\\\":{\\\"begin\\\":\\\"\\\\\\\\bmodule\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declModule\\\"}]},\\\"patternParens\\\":{\\\"begin\\\":\\\"\\\\\\\\((?!\\\\\\\\))\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$]):(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#pattern\\\"}]},\\\"patternRecord\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong strong\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\{|;)\\\",\\\"end\\\":\\\"(:)|(=)|(;)|(with)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pathModulePrefixSimple\\\"},{\\\"match\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]with|^with))(?![[:word:]]))\\\",\\\"end\\\":\\\"(:)|(=)|(;)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(;)|(=)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\";|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#pattern\\\"}]}]},\\\"patternType\\\":{\\\"begin\\\":\\\"\\\\\\\\btype\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declType\\\"}]},\\\"pragma\\\":{\\\"begin\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])#(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#literalNumber\\\"},{\\\"include\\\":\\\"#literalString\\\"}]},\\\"signature\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#signatureLiteral\\\"},{\\\"include\\\":\\\"#signatureFunctor\\\"},{\\\"include\\\":\\\"#pathModuleExtended\\\"},{\\\"include\\\":\\\"#signatureParens\\\"},{\\\"include\\\":\\\"#signatureRecovered\\\"},{\\\"include\\\":\\\"#signatureConstraints\\\"}]},\\\"signatureConstraints\\\":{\\\"begin\\\":\\\"\\\\\\\\bwith\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp markup.underline\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]with|^with))(?![[:word:]]))\\\",\\\"end\\\":\\\"\\\\\\\\b(?:(module)|(type))\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword\\\"}}},{\\\"include\\\":\\\"#declModule\\\"},{\\\"include\\\":\\\"#declType\\\"}]},\\\"signatureFunctor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bfunctor\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"end\\\":\\\"(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]functor|^functor))(?![[:word:]]))\\\",\\\"end\\\":\\\"(\\\\\\\\(\\\\\\\\))|(\\\\\\\\((?!\\\\\\\\)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}}},{\\\"begin\\\":\\\"(?<=\\\\\\\\()\\\",\\\"end\\\":\\\"(:)|(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#variableModule\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#signature\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\",\\\"end\\\":\\\"(\\\\\\\\()|((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}}},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]->|^->))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#signature\\\"}]}]},{\\\"match\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"name\\\":\\\"support.type strong\\\"}]},\\\"signatureLiteral\\\":{\\\"begin\\\":\\\"\\\\\\\\bsig\\\\\\\\b\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag emphasis\\\"}},\\\"end\\\":\\\"\\\\\\\\bend\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#decl\\\"}]},\\\"signatureParens\\\":{\\\"begin\\\":\\\"\\\\\\\\((?!\\\\\\\\))\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$]):(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#signature\\\"}]},{\\\"include\\\":\\\"#signature\\\"}]},\\\"signatureRecovered\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(|(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:|[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]->|^->))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|(?:(?<=(?:[^[:word:]]include|^include|[^[:word:]]open|^open))(?![[:word:]]))\\\",\\\"end\\\":\\\"\\\\\\\\bmodule\\\\\\\\b|(?!$|[[:space:]]|\\\\\\\\bmodule\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename\\\"}}},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]module|^module))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]module|^module))(?![[:word:]]))\\\",\\\"end\\\":\\\"\\\\\\\\btype\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}}},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]type|^type))(?![[:word:]]))\\\",\\\"end\\\":\\\"\\\\\\\\bof\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}}},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]of|^of))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#signature\\\"}]}]}]},\\\"structure\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#structureLiteral\\\"},{\\\"include\\\":\\\"#structureFunctor\\\"},{\\\"include\\\":\\\"#pathModuleExtended\\\"},{\\\"include\\\":\\\"#structureParens\\\"}]},\\\"structureFunctor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bfunctor\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"end\\\":\\\"(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]functor|^functor))(?![[:word:]]))\\\",\\\"end\\\":\\\"(\\\\\\\\(\\\\\\\\))|(\\\\\\\\((?!\\\\\\\\)))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}}},{\\\"begin\\\":\\\"(?<=\\\\\\\\()\\\",\\\"end\\\":\\\"(:)|(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#variableModule\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#signature\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\",\\\"end\\\":\\\"(\\\\\\\\()|((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}}},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]->|^->))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#structure\\\"}]}]},{\\\"match\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"name\\\":\\\"support.type strong\\\"}]},\\\"structureLiteral\\\":{\\\"begin\\\":\\\"\\\\\\\\bstruct\\\\\\\\b\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag emphasis\\\"}},\\\"end\\\":\\\"\\\\\\\\bend\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pragma\\\"},{\\\"include\\\":\\\"#decl\\\"}]},\\\"structureParens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#structureUnpack\\\"},{\\\"include\\\":\\\"#structure\\\"}]},\\\"structureUnpack\\\":{\\\"begin\\\":\\\"\\\\\\\\bval\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\"},\\\"term\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#termLet\\\"},{\\\"include\\\":\\\"#termAtomic\\\"}]},\\\"termAtomic\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#termConditional\\\"},{\\\"include\\\":\\\"#termConstructor\\\"},{\\\"include\\\":\\\"#termDelim\\\"},{\\\"include\\\":\\\"#termFor\\\"},{\\\"include\\\":\\\"#termFunction\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#termMatch\\\"},{\\\"include\\\":\\\"#termMatchRule\\\"},{\\\"include\\\":\\\"#termPun\\\"},{\\\"include\\\":\\\"#termOperator\\\"},{\\\"include\\\":\\\"#termTry\\\"},{\\\"include\\\":\\\"#termWhile\\\"},{\\\"include\\\":\\\"#pathRecord\\\"}]},\\\"termConditional\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:if|then|else)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control\\\"},\\\"termConstructor\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#pathModulePrefixSimple\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong\\\"}]},\\\"termDelim\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\((?!\\\\\\\\))\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bbegin\\\\\\\\b\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"\\\\\\\\bend\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributeIdentifier\\\"},{\\\"include\\\":\\\"#term\\\"}]}]},\\\"termFor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bfor\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"\\\\\\\\bdone\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]for|^for))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])=(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#pattern\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"\\\\\\\\b(?:downto|to)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]to|^to))(?![[:word:]]))\\\",\\\"end\\\":\\\"\\\\\\\\bdo\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]do|^do))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=\\\\\\\\bdone\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]}]}]},\\\"termFunction\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(fun)|(function))\\\\\\\\b\\\"},\\\"termLet\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=|[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]->|^->))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|(?<=;|\\\\\\\\())(?=[[:space:]]|\\\\\\\\blet\\\\\\\\b)|(?:(?<=(?:[^[:word:]]begin|^begin|[^[:word:]]do|^do|[^[:word:]]else|^else|[^[:word:]]in|^in|[^[:word:]]struct|^struct|[^[:word:]]then|^then|[^[:word:]]try|^try))(?![[:word:]]))|(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]@@|^@@))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))[[:space:]]+\\\",\\\"end\\\":\\\"\\\\\\\\b(?:(and)|(let))\\\\\\\\b|(?=[^[:space:]])(?!\\\\\\\\(\\\\\\\\*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp markup.underline\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type markup.underline\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]and|^and|[^[:word:]]let|^let))(?![[:word:]]))|(let)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type markup.underline\\\"}},\\\"end\\\":\\\"\\\\\\\\b(?:(and)|(in))\\\\\\\\b|(?=\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|class|exception|external|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp markup.underline\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type markup.underline\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#bindTerm\\\"}]}]},\\\"termMatch\\\":{\\\"begin\\\":\\\"\\\\\\\\bmatch\\\\\\\\b\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"\\\\\\\\bwith\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]},\\\"termMatchRule\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]fun|^fun|[^[:word:]]function|^function|[^[:word:]]with|^with))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])(\\\\\\\\|)|(->)(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#attributeIdentifier\\\"},{\\\"include\\\":\\\"#pattern\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^\\\\\\\\[#\\\\\\\\-:!?.@*/&%^+<=>|~$]\\\\\\\\||^\\\\\\\\|))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))|(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\\\\\\|(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"end\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])(\\\\\\\\|)|(->)(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#pattern\\\"},{\\\"begin\\\":\\\"\\\\\\\\bwhen\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\"(?=(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]}]}]},\\\"termOperator\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])#(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"end\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.name.function\\\"}}},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control strong\\\"}},\\\"match\\\":\\\"<-\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"match\\\":\\\"(,|[#\\\\\\\\-:!?.@*/&%^+<=>|~$]+)|(;)\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:and|assert|asr|land|lazy|lsr|lxor|mod|new|or)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}]},\\\"termPun\\\":{\\\"applyEndPatternLast\\\":true,\\\"begin\\\":\\\"(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\\\\\\?|~(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"end\\\":\\\":|(?=[^[:space:]:])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]\\\\\\\\?|^\\\\\\\\?|[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]~|^~))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename\\\"}}}]},\\\"termTry\\\":{\\\"begin\\\":\\\"\\\\\\\\btry\\\\\\\\b\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"\\\\\\\\bwith\\\\\\\\b\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]},\\\"termWhile\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bwhile\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"\\\\\\\\bdone\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]while|^while))(?![[:word:]]))\\\",\\\"end\\\":\\\"\\\\\\\\bdo\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]do|^do))(?![[:word:]]))\\\",\\\"end\\\":\\\"(?=\\\\\\\\bdone\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]}]}]},\\\"type\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\"\\\\\\\\bnonrec\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},{\\\"include\\\":\\\"#pathModulePrefixExtended\\\"},{\\\"include\\\":\\\"#typeLabel\\\"},{\\\"include\\\":\\\"#typeObject\\\"},{\\\"include\\\":\\\"#typeOperator\\\"},{\\\"include\\\":\\\"#typeParens\\\"},{\\\"include\\\":\\\"#typePolymorphicVariant\\\"},{\\\"include\\\":\\\"#typeRecord\\\"},{\\\"include\\\":\\\"#typeConstructor\\\"}]},\\\"typeConstructor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(_)|((?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))|(')((?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))|(?<=[^\\\\\\\\*]\\\\\\\\)|\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment constant.regexp meta.separator.markdown\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.link variable.language variable.parameter emphasis strong emphasis\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control emphasis\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\((?!\\\\\\\\*)|\\\\\\\\*|:|,|=|\\\\\\\\.|>|-|\\\\\\\\{|\\\\\\\\[|\\\\\\\\+|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|\\\\\\\\|)|((?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))[:space:]*(?!\\\\\\\\(\\\\\\\\*|[[:word:]])|(?=;;|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|\\\\\\\\b(?:end|and|class|exception|external|in|include|inherit|initializer|let|method|module|open|type|val)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pathModulePrefixExtended\\\"}]}]},\\\"typeLabel\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\??)((?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))[[:space:]]*((?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$]):(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword strong emphasis\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword\\\"}},\\\"end\\\":\\\"(?=(?<![#\\\\\\\\-:!?.@*/&%^+<=>|~$])->(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"typeModule\\\":{\\\"begin\\\":\\\"\\\\\\\\bmodule\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pathModuleExtended\\\"},{\\\"include\\\":\\\"#signatureConstraints\\\"}]},\\\"typeObject\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong strong\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=<|;)\\\",\\\"end\\\":\\\"(:)|(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pathModulePrefixSimple\\\"},{\\\"match\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(;)|(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"typeOperator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",|;|[#\\\\\\\\-:!?.@*/&%^+<=>|~$]+\\\",\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"}]},\\\"typeParens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},{\\\"include\\\":\\\"#typeModule\\\"},{\\\"include\\\":\\\"#type\\\"}]},\\\"typePolymorphicVariant\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[]},\\\"typeRecord\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language constant.numeric entity.other.attribute-name.id.css strong strong\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\{|;)\\\",\\\"end\\\":\\\"(:)|(=)|(;)|(with)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pathModulePrefixSimple\\\"},{\\\"match\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^[:word:]]with|^with))(?![[:word:]]))\\\",\\\"end\\\":\\\"(:)|(=)|(;)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp strong\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*)\\\",\\\"name\\\":\\\"markup.inserted constant.language support.constant.property-value entity.name.filename emphasis\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]:|^:))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\"(;)|(=)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type strong\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"begin\\\":\\\"(?:(?<=(?:[^#\\\\\\\\-:!?.@*/&%^+<=>|~$]=|^=))(?![#\\\\\\\\-:!?.@*/&%^+<=>|~$]))\\\",\\\"end\\\":\\\";|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.class.js message.error variable.interpolation string.regexp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"variableModule\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.other.link variable.language variable.parameter emphasis\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\b(?=[[:upper:]])[[:alpha:]_][[:word:]']*)\\\"},\\\"variablePattern\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment constant.regexp meta.separator.markdown\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.link variable.language variable.parameter emphasis\\\"}},\\\"match\\\":\\\"(\\\\\\\\b_\\\\\\\\b)|((?:(?!\\\\\\\\b(?:and|'|as|asr|assert|\\\\\\\\*|begin|class|:|,|@|constraint|do|done|downto|else|end|=|exception|external|false|for|\\\\\\\\.|fun|function|functor|>|-|if|in|include|inherit|initializer|land|lazy|\\\\\\\\{|\\\\\\\\(|\\\\\\\\[|<|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|nonrec|#|object|of|open|or|%|\\\\\\\\+|private|\\\\\\\\?|\\\\\\\"|rec|\\\\\\\\\\\\\\\\|\\\\\\\\}|\\\\\\\\)|\\\\\\\\]|;|sig|/|struct|then|~|to|true|try|type|val|\\\\\\\\||virtual|when|while|with)\\\\\\\\b(?:[^']|$))\\\\\\\\b(?=[[:lower:]_])[[:alpha:]_][[:word:]']*))\\\"}},\\\"scopeName\\\":\\\"source.ocaml\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Pascal\\\",\\\"fileTypes\\\":[\\\"pas\\\",\\\"p\\\",\\\"pp\\\",\\\"dfm\\\",\\\"fmx\\\",\\\"dpr\\\",\\\"dpk\\\",\\\"lfm\\\",\\\"lpr\\\"],\\\"name\\\":\\\"pascal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?i:(absolute|abstract|add|all|and_then|array|as|asc|asm|assembler|async|attribute|autoreleasepool|await|begin|bindable|block|by|case|cdecl|class|concat|const|constref|copy|cppdecl|contains|default|delegate|deprecated|desc|distinct|div|each|else|empty|end|ensure|enum|equals|event|except|export|exports|extension|external|far|file|finalization|finalizer|finally|flags|forward|from|future|generic|goto|group|has|helper|if|implements|implies|import|in|index|inherited|initialization|inline|interrupt|into|invariants|is|iterator|label|library|join|lazy|lifetimestrategy|locked|locking|loop|mapped|matching|message|method|mod|module|name|namespace|near|nested|new|nostackframe|not|notify|nullable|object|of|old|oldfpccall|on|only|operator|optional|or_else|order|otherwise|out|override|package|packed|parallel|params|partial|pascal|pinned|platform|pow|private|program|protected|public|published|interface|implementation|qualified|queryable|raises|read|readonly|record|reference|register|remove|resident|require|requires|resourcestring|restricted|result|reverse|safecall|sealed|segment|select|selector|sequence|set|shl|shr|skip|specialize|soft|static|stored|stdcall|step|strict|strong|take|then|threadvar|to|try|tuple|type|unconstrained|unit|unmanaged|unretained|unsafe|uses|using|var|view|virtual|volatile|weak|dynamic|overload|reintroduce|where|with|write|xor|yield))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.pascal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.prototype.pascal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.prototype.pascal\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?i:(function|procedure|constructor|destructor))\\\\\\\\b\\\\\\\\s+(\\\\\\\\w+(\\\\\\\\.\\\\\\\\w+)?)(\\\\\\\\(.*?\\\\\\\\))?;\\\\\\\\s*(?=(?i:attribute|forward|external))\\\",\\\"name\\\":\\\"meta.function.prototype.pascal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pascal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.pascal\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?i:(function|procedure|constructor|destructor|property|read|write))\\\\\\\\b\\\\\\\\s+(\\\\\\\\w+(\\\\\\\\.\\\\\\\\w+)?)\\\",\\\"name\\\":\\\"meta.function.pascal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:(self|result))\\\\\\\\b\\\",\\\"name\\\":\\\"token.variable\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:(and|or))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.pascal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:(break|continue|exit|abort|while|do|downto|for|raise|repeat|until))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.pascal\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\\\\\\$\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"string.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:(ansichar|ansistring|boolean|byte|cardinal|char|comp|currency|double|dword|extended|file|integer|int8|int16|int32|int64|longint|longword|nativeint|nativeuint|olevariant|pansichar|pchar|pwidechar|pointer|real|shortint|shortstring|single|smallint|string|uint8|uint16|uint32|uint64|variant|widechar|widestring|word|wordbool|uintptr|intptr))\\\\\\\\b\\\",\\\"name\\\":\\\"storage.support.type.pascal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+)|(\\\\\\\\d*\\\\\\\\.\\\\\\\\d+([eE][\\\\\\\\-+]?\\\\\\\\d+)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.pascal\\\"},{\\\"match\\\":\\\"\\\\\\\\$[0-9a-fA-F]{1,16}\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.pascal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:(true|false|nil))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.pascal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:(Assert))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.pascal\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.pascal\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.pascal.two\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.pascal\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\)\\\",\\\"name\\\":\\\"comment.block.pascal.one\\\"},{\\\"begin\\\":\\\"\\\\\\\\{(?!\\\\\\\\$)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.pascal\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"comment.block.pascal.two\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.pascal\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.pascal\\\"}},\\\"name\\\":\\\"string.quoted.single.pascal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"''\\\",\\\"name\\\":\\\"constant.character.escape.apostrophe.pascal\\\"}]},{\\\"match\\\":\\\"\\\\\\\\#\\\\\\\\d+\\\",\\\"name\\\":\\\"string.other.pascal\\\"}],\\\"scopeName\\\":\\\"source.pascal\\\"}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\nimport xml from './xml.mjs'\nimport css from './css.mjs'\nimport javascript from './javascript.mjs'\nimport sql from './sql.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Perl\\\",\\\"name\\\":\\\"perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_comment\\\"},{\\\"begin\\\":\\\"^(?==[a-zA-Z]+)\\\",\\\"end\\\":\\\"^(=cut\\\\\\\\b.*$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#pod\\\"}]}},\\\"name\\\":\\\"comment.block.documentation.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pod\\\"}]},{\\\"include\\\":\\\"#variable\\\"},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\b(?=qr\\\\\\\\s*[^\\\\\\\\s\\\\\\\\w])\\\",\\\"comment\\\":\\\"string.regexp.compile.perl\\\",\\\"end\\\":\\\"((([egimosxradlupcn]*)))(?=(\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*[;\\\\\\\\,\\\\\\\\#\\\\\\\\{\\\\\\\\}\\\\\\\\)]|\\\\\\\\s*$))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.compile.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.regexp-option.perl\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(qr)\\\\\\\\s*\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"string.regexp.compile.nested_braces.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_braces_interpolated\\\"}]},{\\\"begin\\\":\\\"(qr)\\\\\\\\s*\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.compile.nested_brackets.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_brackets_interpolated\\\"}]},{\\\"begin\\\":\\\"(qr)\\\\\\\\s*<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"string.regexp.compile.nested_ltgt.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_ltgt_interpolated\\\"}]},{\\\"begin\\\":\\\"(qr)\\\\\\\\s*\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"string.regexp.compile.nested_parens.perl\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"This is to prevent thinks like qr/foo$/ to treat $/ as a variable\\\",\\\"match\\\":\\\"\\\\\\\\$(?=[^\\\\\\\\s\\\\\\\\w\\\\\\\\\\\\\\\\'\\\\\\\\{\\\\\\\\[\\\\\\\\(\\\\\\\\<])\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_parens_interpolated\\\"}]},{\\\"begin\\\":\\\"(qr)\\\\\\\\s*'\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.regexp.compile.single-quote.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(qr)\\\\\\\\s*([^\\\\\\\\s\\\\\\\\w'\\\\\\\\{\\\\\\\\[\\\\\\\\(\\\\\\\\<])\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\2\\\",\\\"name\\\":\\\"string.regexp.compile.simple-delimiter.perl\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"This is to prevent thinks like qr/foo$/ to treat $/ as a variable\\\",\\\"match\\\":\\\"\\\\\\\\$(?=[^\\\\\\\\s\\\\\\\\w'\\\\\\\\{\\\\\\\\[\\\\\\\\(\\\\\\\\<])\\\",\\\"name\\\":\\\"keyword.control.anchor.perl\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_parens_interpolated\\\"}]}]},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?<!\\\\\\\\{|\\\\\\\\+|\\\\\\\\-)\\\\\\\\b(?=m\\\\\\\\s*[^\\\\\\\\sa-zA-Z0-9])\\\",\\\"comment\\\":\\\"string.regexp.find-m.perl\\\",\\\"end\\\":\\\"((([egimosxradlupcn]*)))(?=(\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*[;\\\\\\\\,\\\\\\\\#\\\\\\\\{\\\\\\\\}\\\\\\\\)]|\\\\\\\\s*$))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.find-m.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.regexp-option.perl\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(m)\\\\\\\\s*\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"string.regexp.find-m.nested_braces.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_braces_interpolated\\\"}]},{\\\"begin\\\":\\\"(m)\\\\\\\\s*\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.find-m.nested_brackets.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_brackets_interpolated\\\"}]},{\\\"begin\\\":\\\"(m)\\\\\\\\s*<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"string.regexp.find-m.nested_ltgt.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_ltgt_interpolated\\\"}]},{\\\"begin\\\":\\\"(m)\\\\\\\\s*\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"string.regexp.find-m.nested_parens.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_parens_interpolated\\\"}]},{\\\"begin\\\":\\\"(m)\\\\\\\\s*'\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.regexp.find-m.single-quote.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G(?<!\\\\\\\\{|\\\\\\\\+|\\\\\\\\-)(m)(?!_)\\\\\\\\s*([^\\\\\\\\sa-zA-Z0-9'\\\\\\\\{\\\\\\\\[\\\\\\\\(\\\\\\\\<])\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\2\\\",\\\"name\\\":\\\"string.regexp.find-m.simple-delimiter.perl\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"This is to prevent thinks like qr/foo$/ to treat $/ as a variable\\\",\\\"match\\\":\\\"\\\\\\\\$(?=[^\\\\\\\\sa-zA-Z0-9'\\\\\\\\{\\\\\\\\[\\\\\\\\(\\\\\\\\<])\\\",\\\"name\\\":\\\"keyword.control.anchor.perl\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.end.perl\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.perl\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"This is to prevent thinks like qr/foo$/ to treat $/ as a variable\\\",\\\"match\\\":\\\"\\\\\\\\$(?=[^\\\\\\\\s\\\\\\\\w'\\\\\\\\{\\\\\\\\[\\\\\\\\(\\\\\\\\<])\\\",\\\"name\\\":\\\"keyword.control.anchor.perl\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"include\\\":\\\"#nested_parens_interpolated\\\"}]}]},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\b(?=(?<!\\\\\\\\&)(s)(\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*[;\\\\\\\\,\\\\\\\\{\\\\\\\\}\\\\\\\\(\\\\\\\\)\\\\\\\\[<]|$))\\\",\\\"comment\\\":\\\"string.regexp.replace.perl\\\",\\\"end\\\":\\\"((([egimosxradlupcn]*)))(?=(\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*[;\\\\\\\\,\\\\\\\\{\\\\\\\\}\\\\\\\\)\\\\\\\\]>]|\\\\\\\\s*$))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.replace.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.regexp-option.perl\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(s)\\\\\\\\s*\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"string.regexp.nested_braces.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_braces\\\"}]},{\\\"begin\\\":\\\"(s)\\\\\\\\s*\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.nested_brackets.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_brackets\\\"}]},{\\\"begin\\\":\\\"(s)\\\\\\\\s*<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"string.regexp.nested_ltgt.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_ltgt\\\"}]},{\\\"begin\\\":\\\"(s)\\\\\\\\s*\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"string.regexp.nested_parens.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_parens\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"string.regexp.format.nested_braces.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_braces_interpolated\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.format.nested_brackets.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_brackets_interpolated\\\"}]},{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"string.regexp.format.nested_ltgt.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_ltgt_interpolated\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"string.regexp.format.nested_parens.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_parens_interpolated\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.regexp.format.single_quote.perl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"}]},{\\\"begin\\\":\\\"([^\\\\\\\\s\\\\\\\\w\\\\\\\\[({<;])\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"name\\\":\\\"string.regexp.format.simple_delimiter.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"match\\\":\\\"\\\\\\\\s+\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(?=s([^\\\\\\\\sa-zA-Z0-9\\\\\\\\[({<]).*\\\\\\\\1([egimosxradlupcn]*)([\\\\\\\\}\\\\\\\\)\\\\\\\\;\\\\\\\\,]|\\\\\\\\s+))\\\",\\\"comment\\\":\\\"string.regexp.replaceXXX\\\",\\\"end\\\":\\\"((([egimosxradlupcn]*)))(?=([\\\\\\\\}\\\\\\\\)\\\\\\\\;\\\\\\\\,]|\\\\\\\\s+|\\\\\\\\s*$))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.replace.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.regexp-option.perl\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(s\\\\\\\\s*)([^\\\\\\\\sa-zA-Z0-9\\\\\\\\[({<])\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\2)\\\",\\\"name\\\":\\\"string.regexp.replaceXXX.simple_delimiter.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.regexp.replaceXXX.format.single_quote.perl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.perl.perl\\\"}]},{\\\"begin\\\":\\\"([^\\\\\\\\sa-zA-Z0-9\\\\\\\\[({<])\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"name\\\":\\\"string.regexp.replaceXXX.format.simple_delimiter.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(?=(?<!\\\\\\\\\\\\\\\\)s\\\\\\\\s*([^\\\\\\\\s\\\\\\\\w\\\\\\\\[({<>]))\\\",\\\"comment\\\":\\\"string.regexp.replace.extended\\\",\\\"end\\\":\\\"((([egimosradlupc]*x[egimosradlupc]*)))\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.replace.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.regexp-option.perl\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(s)\\\\\\\\s*(.)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\2)\\\",\\\"name\\\":\\\"string.regexp.replace.extended.simple_delimiter.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"end\\\":\\\"'(?=[egimosradlupc]*x[egimosradlupc]*)\\\\\\\\b\\\",\\\"name\\\":\\\"string.regexp.replace.extended.simple_delimiter.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(.)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\1(?=[egimosradlupc]*x[egimosradlupc]*)\\\\\\\\b\\\",\\\"name\\\":\\\"string.regexp.replace.extended.simple_delimiter.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"}]}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\(|\\\\\\\\{|~|&|\\\\\\\\||if|unless|^)\\\\\\\\s*((\\\\\\\\/))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.find.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"contentName\\\":\\\"string.regexp.find.perl\\\",\\\"end\\\":\\\"((\\\\\\\\1([egimosxradlupcn]*)))(?=(\\\\\\\\s+\\\\\\\\S|\\\\\\\\s*[;\\\\\\\\,\\\\\\\\#\\\\\\\\{\\\\\\\\}\\\\\\\\)]|\\\\\\\\s*$))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.find.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.regexp-option.perl\\\"}},\\\"patterns\\\":[{\\\"comment\\\":\\\"This is to prevent thinks like /foo$/ to treat $/ as a variable\\\",\\\"match\\\":\\\"\\\\\\\\$(?=\\\\\\\\/)\\\",\\\"name\\\":\\\"keyword.control.anchor.perl\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.other.key.perl\\\"}},\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\s*(?==>)\\\"},{\\\"match\\\":\\\"(?<={)\\\\\\\\s*\\\\\\\\w+\\\\\\\\s*(?=})\\\",\\\"name\\\":\\\"constant.other.bareword.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.perl\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(package)\\\\\\\\s+([^\\\\\\\\s;]+)\\\",\\\"name\\\":\\\"meta.class.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.sub.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.method.perl\\\"}},\\\"match\\\":\\\"\\\\\\\\b(sub)(?:\\\\\\\\s+([-a-zA-Z0-9_]+))?\\\\\\\\s*(?:\\\\\\\\([\\\\\\\\$\\\\\\\\@\\\\\\\\*;]*\\\\\\\\))?[^\\\\\\\\w\\\\\\\\{]\\\",\\\"name\\\":\\\"meta.function.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.function.perl\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(BEGIN|UNITCHECK|CHECK|INIT|END|DESTROY)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.function.perl\\\"},{\\\"begin\\\":\\\"^(?=(\\\\\\\\t| {4}))\\\",\\\"end\\\":\\\"(?=[^\\\\\\\\t\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.leading-tabs\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.odd-tab\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.even-tab\\\"}},\\\"match\\\":\\\"(\\\\\\\\t| {4})(\\\\\\\\t| {4})?\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.string.perl\\\"}},\\\"match\\\":\\\"\\\\\\\\b(tr|y)\\\\\\\\s*([^A-Za-z0-9\\\\\\\\s])(.*?)(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\\\\\\\\\{2})*(\\\\\\\\2)(.*?)(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\\\\\\\\\{2})*(\\\\\\\\2)\\\",\\\"name\\\":\\\"string.regexp.replace.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(__FILE__|__LINE__|__PACKAGE__|__SUB__)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.perl\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(__DATA__|__END__)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.perl\\\"}},\\\"contentName\\\":\\\"comment.block.documentation.perl\\\",\\\"end\\\":\\\"\\\\\\\\z\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pod\\\"}]},{\\\"match\\\":\\\"(?<!->)\\\\\\\\b(continue|default|die|do|else|elsif|exit|for|foreach|given|goto|if|last|next|redo|return|select|unless|until|wait|when|while|switch|case|require|use|eval)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(my|our|local)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.perl\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)\\\\\\\\-[rwxoRWXOezsfdlpSbctugkTBMAC]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.filetest.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(and|or|xor|as|not)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logical.perl\\\"},{\\\"match\\\":\\\"(<=>|=>|->)\\\",\\\"name\\\":\\\"keyword.operator.comparison.perl\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"begin\\\":\\\"\\\\\\\\bqq\\\\\\\\s*([^\\\\\\\\(\\\\\\\\{\\\\\\\\[\\\\\\\\<\\\\\\\\w\\\\\\\\s])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.other.qq.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bqx\\\\\\\\s*([^'\\\\\\\\(\\\\\\\\{\\\\\\\\[\\\\\\\\<\\\\\\\\w\\\\\\\\s])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.interpolated.qx.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bqx\\\\\\\\s*'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.interpolated.qx.single-quote.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.double.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"(?<!->)\\\\\\\\bqw?\\\\\\\\s*([^\\\\\\\\(\\\\\\\\{\\\\\\\\[\\\\\\\\<\\\\\\\\w\\\\\\\\s])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.other.q.perl\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.single.perl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"}]},{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.interpolated.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"(?<!->)\\\\\\\\bqq\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.other.qq-paren.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_parens_interpolated\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bqq\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.other.qq-brace.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_braces_interpolated\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bqq\\\\\\\\s*\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.other.qq-bracket.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_brackets_interpolated\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bqq\\\\\\\\s*\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.other.qq-ltgt.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_ltgt_interpolated\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"(?<!->)\\\\\\\\bqx\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.interpolated.qx-paren.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_parens_interpolated\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bqx\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.interpolated.qx-brace.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_braces_interpolated\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bqx\\\\\\\\s*\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.interpolated.qx-bracket.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_brackets_interpolated\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bqx\\\\\\\\s*\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.interpolated.qx-ltgt.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_ltgt_interpolated\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"(?<!->)\\\\\\\\bqw?\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.other.q-paren.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nested_parens\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bqw?\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.other.q-brace.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nested_braces\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bqw?\\\\\\\\s*\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.other.q-bracket.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nested_brackets\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\bqw?\\\\\\\\s*\\\\\\\\<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.other.q-ltgt.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nested_ltgt\\\"}]},{\\\"begin\\\":\\\"^__\\\\\\\\w+__\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.unquoted.program-block.perl\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(format)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s*=\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.format.perl\\\"}},\\\"end\\\":\\\"^\\\\\\\\.\\\\\\\\s*$\\\",\\\"name\\\":\\\"meta.format.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_comment\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.perl\\\"}},\\\"match\\\":\\\"\\\\\\\\b(x)\\\\\\\\s*(\\\\\\\\d+)\\\\\\\\b\\\"},{\\\"match\\\":\\\"\\\\\\\\b(ARGV|DATA|ENV|SIG|STDERR|STDIN|STDOUT|atan2|bind|binmode|bless|caller|chdir|chmod|chomp|chop|chown|chr|chroot|close|closedir|cmp|connect|cos|crypt|dbmclose|dbmopen|defined|delete|dump|each|endgrent|endhostent|endnetent|endprotoent|endpwent|endservent|eof|eq|eval|exec|exists|exp|fcntl|fileno|flock|fork|formline|ge|getc|getgrent|getgrgid|getgrnam|gethostbyaddr|gethostbyname|gethostent|getlogin|getnetbyaddr|getnetbyname|getnetent|getpeername|getpgrp|getppid|getpriority|getprotobyname|getprotobynumber|getprotoent|getpwent|getpwnam|getpwuid|getservbyname|getservbyport|getservent|getsockname|getsockopt|glob|gmtime|grep|gt|hex|import|index|int|ioctl|join|keys|kill|lc|lcfirst|le|length|link|listen|local|localtime|log|lstat|lt|m|map|mkdir|msgctl|msgget|msgrcv|msgsnd|ne|no|oct|open|opendir|ord|pack|pipe|pop|pos|print|printf|push|quotemeta|rand|read|readdir|readlink|recv|ref|rename|reset|reverse|rewinddir|rindex|rmdir|s|say|scalar|seek|seekdir|semctl|semget|semop|send|setgrent|sethostent|setnetent|setpgrp|setpriority|setprotoent|setpwent|setservent|setsockopt|shift|shmctl|shmget|shmread|shmwrite|shutdown|sin|sleep|socket|socketpair|sort|splice|split|sprintf|sqrt|srand|stat|study|substr|symlink|syscall|sysopen|sysread|system|syswrite|tell|telldir|tie|tied|time|times|tr|truncate|uc|ucfirst|umask|undef|unlink|unpack|unshift|untie|utime|values|vec|waitpid|wantarray|warn|write|y)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.perl\\\"}},\\\"comment\\\":\\\"Match empty brackets for \u21A9 snippet\\\",\\\"match\\\":\\\"(\\\\\\\\{)(\\\\\\\\})\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.perl\\\"}},\\\"comment\\\":\\\"Match empty parenthesis for \u21A9 snippet\\\",\\\"match\\\":\\\"(\\\\\\\\()(\\\\\\\\))\\\"}],\\\"repository\\\":{\\\"escaped_char\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c[^\\\\\\\\s\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\g(?:\\\\\\\\{(?:\\\\\\\\w*|-\\\\\\\\d+)\\\\\\\\}|\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\k(?:\\\\\\\\{\\\\\\\\w*\\\\\\\\}|<\\\\\\\\w*>|'\\\\\\\\w*')\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\N\\\\\\\\{[^\\\\\\\\}]*\\\\\\\\}\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\o\\\\\\\\{\\\\\\\\d*\\\\\\\\}\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:p|P)(?:\\\\\\\\{\\\\\\\\w*\\\\\\\\}|P)\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x(?:[0-9a-zA-Z]{2}|\\\\\\\\{\\\\\\\\w*\\\\\\\\})?\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"}]},\\\"heredoc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((((<<(~)?) *')(HTML)(')))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.raw.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"text.html.basic\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *')(XML)(')))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.raw.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.xml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"text.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *')(CSS)(')))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.raw.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *')(JAVASCRIPT)(')))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.raw.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *')(SQL)(')))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.raw.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.sql\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sql\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *')(POSTSCRIPT)(')))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.raw.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.postscript\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.postscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.postscript\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *')([^']*)(')))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.raw.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}}},{\\\"begin\\\":\\\"((((<<(~)?) *\\\\\\\\\\\\\\\\)((?![=\\\\\\\\d\\\\\\\\$\\\\\\\\( ])[^;,'\\\\\\\"`\\\\\\\\s\\\\\\\\)]*)()))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.raw.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.raw.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}}},{\\\"begin\\\":\\\"((((<<(~)?) *\\\\\\\")(HTML)(\\\\\\\")))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"text.html.basic\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *\\\\\\\")(XML)(\\\\\\\")))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.xml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"text.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"text.xml\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *\\\\\\\")(CSS)(\\\\\\\")))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"source.css\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *\\\\\\\")(JAVASCRIPT)(\\\\\\\")))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *\\\\\\\")(SQL)(\\\\\\\")))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.sql\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"source.sql\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *\\\\\\\")(POSTSCRIPT)(\\\\\\\")))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.postscript\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.postscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"source.postscript\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *\\\\\\\")([^\\\\\\\"]*)(\\\\\\\")))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"((((<<(~)?) *)(HTML)()))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"text.html.basic\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *)(XML)()))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.xml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"text.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"text.xml\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *)(CSS)()))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"source.css\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *)(JAVASCRIPT)()))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.js\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *)(SQL)()))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.sql\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"source.sql\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *)(POSTSCRIPT)()))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"meta.embedded.block.postscript\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"source.postscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"source.postscript\\\"}]}]},{\\\"begin\\\":\\\"((((<<(~)?) *)((?![=\\\\\\\\d\\\\\\\\$\\\\\\\\( ])[^;,'\\\\\\\"`\\\\\\\\s\\\\\\\\)]*)()))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"((((<<(~)?) *`)([^`]*)(`)))(.*)\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.begin.perl\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.delimiter.end.perl\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"contentName\\\":\\\"string.unquoted.heredoc.shell.perl\\\",\\\"end\\\":\\\"^((?!\\\\\\\\5)\\\\\\\\s+)?((\\\\\\\\6))$\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.heredoc.interpolated.perl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"}]}]},\\\"line_comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.perl\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.perl\\\"}]}]},\\\"nested_braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_braces\\\"}]},\\\"nested_braces_interpolated\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_braces_interpolated\\\"}]},\\\"nested_brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_brackets\\\"}]},\\\"nested_brackets_interpolated\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_brackets_interpolated\\\"}]},\\\"nested_ltgt\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.perl\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nested_ltgt\\\"}]},\\\"nested_ltgt_interpolated\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.perl\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_ltgt_interpolated\\\"}]},\\\"nested_parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_parens\\\"}]},\\\"nested_parens_interpolated\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"This is to prevent thinks like qr/foo$/ to treat $/ as a variable\\\",\\\"match\\\":\\\"\\\\\\\\$(?=[^\\\\\\\\s\\\\\\\\w'\\\\\\\\{\\\\\\\\[\\\\\\\\(\\\\\\\\<])\\\",\\\"name\\\":\\\"keyword.control.anchor.perl\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_parens_interpolated\\\"}]},\\\"pod\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^=(pod|back|cut)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.pod.perl\\\"},{\\\"begin\\\":\\\"^(=begin)\\\\\\\\s+(html)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.pod.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.pod.perl\\\"}},\\\"contentName\\\":\\\"text.embedded.html.basic\\\",\\\"end\\\":\\\"^(=end)\\\\\\\\s+(html)|^(?==cut)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.pod.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.pod.perl\\\"}},\\\"name\\\":\\\"meta.embedded.pod.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.pod.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.pod.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pod-formatting\\\"}]}},\\\"match\\\":\\\"^(=(?:head[1-4]|item|over|encoding|begin|end|for))\\\\\\\\b\\\\\\\\s*(.*)\\\"},{\\\"include\\\":\\\"#pod-formatting\\\"}]},\\\"pod-formatting\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.italic.pod.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.italic.pod.perl\\\"}},\\\"match\\\":\\\"I(?:<([^<>]+)>|<+(\\\\\\\\s+(?:(?<!\\\\\\\\s)>|[^>])+\\\\\\\\s+)>+)\\\",\\\"name\\\":\\\"entity.name.type.instance.pod.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.bold.pod.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.bold.pod.perl\\\"}},\\\"match\\\":\\\"B(?:<([^<>]+)>|<+(\\\\\\\\s+(?:(?<!\\\\\\\\s)>|[^>])+\\\\\\\\s+)>+)\\\",\\\"name\\\":\\\"entity.name.type.instance.pod.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.raw.pod.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.raw.pod.perl\\\"}},\\\"match\\\":\\\"C(?:<([^<>]+)>|<+(\\\\\\\\\\\\\\\\s+(?:(?<!\\\\\\\\\\\\\\\\s)>|[^>])+\\\\\\\\\\\\\\\\s+)>+)\\\",\\\"name\\\":\\\"entity.name.type.instance.pod.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.underline.link.hyperlink.pod.perl\\\"}},\\\"match\\\":\\\"L<([^>]+)>\\\",\\\"name\\\":\\\"entity.name.type.instance.pod.perl\\\"},{\\\"match\\\":\\\"[EFSXZ]<[^>]*>\\\",\\\"name\\\":\\\"entity.name.type.instance.pod.perl\\\"}]},\\\"variable\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)&(?![A-Za-z0-9_])\\\",\\\"name\\\":\\\"variable.other.regexp.match.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)`(?![A-Za-z0-9_])\\\",\\\"name\\\":\\\"variable.other.regexp.pre-match.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)'(?![A-Za-z0-9_])\\\",\\\"name\\\":\\\"variable.other.regexp.post-match.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)\\\\\\\\+(?![A-Za-z0-9_])\\\",\\\"name\\\":\\\"variable.other.regexp.last-paren-match.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)\\\\\\\"(?![A-Za-z0-9_])\\\",\\\"name\\\":\\\"variable.other.readwrite.list-separator.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)0(?![A-Za-z0-9_])\\\",\\\"name\\\":\\\"variable.other.predefined.program-name.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)[_ab\\\\\\\\*\\\\\\\\.\\\\\\\\/\\\\\\\\|,\\\\\\\\\\\\\\\\;#%=\\\\\\\\-~^:?!\\\\\\\\$<>\\\\\\\\(\\\\\\\\)\\\\\\\\[\\\\\\\\]@](?![A-Za-z0-9_])\\\",\\\"name\\\":\\\"variable.other.predefined.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)[0-9]+(?![A-Za-z0-9_])\\\",\\\"name\\\":\\\"variable.other.subpattern.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"}},\\\"match\\\":\\\"([\\\\\\\\$\\\\\\\\@\\\\\\\\%](#)?)([a-zA-Zx7f-xff\\\\\\\\$]|::)([a-zA-Z0-9_x7f-xff\\\\\\\\$]|::)*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.global.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"}},\\\"match\\\":\\\"(\\\\\\\\$\\\\\\\\{)(?:[a-zA-Zx7f-xff\\\\\\\\$]|::)(?:[a-zA-Z0-9_x7f-xff\\\\\\\\$]|::)*(\\\\\\\\})\\\",\\\"name\\\":\\\"variable.other.readwrite.global.perl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.perl\\\"}},\\\"match\\\":\\\"([\\\\\\\\$\\\\\\\\@\\\\\\\\%](#)?)[0-9_]\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.global.special.perl\\\"}]}},\\\"scopeName\\\":\\\"source.perl\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"xml\\\",\\\"css\\\",\\\"javascript\\\",\\\"sql\\\"]}\"))\n\nexport default [\n...html,\n...xml,\n...css,\n...javascript,\n...sql,\nlang\n]\n", "import html from './html.mjs'\nimport xml from './xml.mjs'\nimport sql from './sql.mjs'\nimport javascript from './javascript.mjs'\nimport json from './json.mjs'\nimport css from './css.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"PHP\\\",\\\"name\\\":\\\"php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.namespace.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.namespace.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}]}},\\\"match\\\":\\\"(?i)(?:^|(?<=<\\\\\\\\?php))\\\\\\\\s*(namespace)\\\\\\\\s+([a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)(?=\\\\\\\\s*;)\\\",\\\"name\\\":\\\"meta.namespace.php\\\"},{\\\"begin\\\":\\\"(?i)(?:^|(?<=<\\\\\\\\?php))\\\\\\\\s*(namespace)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.namespace.php\\\"}},\\\"end\\\":\\\"(?<=})|(?=\\\\\\\\?>)\\\",\\\"name\\\":\\\"meta.namespace.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}]}},\\\"match\\\":\\\"(?i)[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+\\\",\\\"name\\\":\\\"entity.name.type.namespace.php\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.namespace.begin.bracket.curly.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.namespace.end.bracket.curly.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"[^\\\\\\\\s]+\\\",\\\"name\\\":\\\"invalid.illegal.identifier.php\\\"}]},{\\\"match\\\":\\\"\\\\\\\\s+(?=use\\\\\\\\b)\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\buse\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.use.php\\\"}},\\\"end\\\":\\\"(?<=})|(?=;)|(?=\\\\\\\\?>)\\\",\\\"name\\\":\\\"meta.use.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(const|function)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.${1:/downcase}.php\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.use.begin.bracket.curly.php\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.use.end.bracket.curly.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#scope-resolution\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.use-as.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.alias.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n\\\\\\\\b(as)\\\\n\\\\\\\\s+(final|abstract|public|private|protected|static)\\\\n\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.use-as.php\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^(?:final|abstract|public|private|protected|static)$\\\",\\\"name\\\":\\\"storage.modifier.php\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"entity.other.alias.php\\\"}]}},\\\"match\\\":\\\"(?xi)\\\\n\\\\\\\\b(as)\\\\n\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.use-insteadof.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.class.php\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(insteadof)\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.expression.php\\\"},{\\\"include\\\":\\\"#use-inner\\\"}]},{\\\"include\\\":\\\"#use-inner\\\"}]},{\\\"begin\\\":\\\"(?ix)\\\\n\\\\\\\\b(trait)\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.trait.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.trait.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.trait.end.bracket.curly.php\\\"}},\\\"name\\\":\\\"meta.trait.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.trait.begin.bracket.curly.php\\\"}},\\\"contentName\\\":\\\"meta.trait.body.php\\\",\\\"end\\\":\\\"(?=}|\\\\\\\\?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"begin\\\":\\\"(?ix)\\\\n\\\\\\\\b(interface)\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.interface.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.interface.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.interface.end.bracket.curly.php\\\"}},\\\"name\\\":\\\"meta.interface.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#interface-extends\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.interface.begin.bracket.curly.php\\\"}},\\\"contentName\\\":\\\"meta.interface.body.php\\\",\\\"end\\\":\\\"(?=}|\\\\\\\\?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-constant\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"begin\\\":\\\"(?ix)\\\\n\\\\\\\\b(enum)\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\\n(?: \\\\\\\\s* (:) \\\\\\\\s* (int | string) \\\\\\\\b )?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.enum.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.return-value.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.type.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.enum.end.bracket.curly.php\\\"}},\\\"name\\\":\\\"meta.enum.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#class-implements\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.enum.begin.bracket.curly.php\\\"}},\\\"contentName\\\":\\\"meta.enum.body.php\\\",\\\"end\\\":\\\"(?=}|\\\\\\\\?>)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.enum.php\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(case)\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\"},{\\\"include\\\":\\\"#class-constant\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"begin\\\":\\\"(?ix)\\\\n(?:\\\\n \\\\\\\\b((?:(?:final|abstract|readonly)\\\\\\\\s+)*)(class)\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\\n |\\\\\\\\b(new)\\\\\\\\b\\\\\\\\s*(\\\\\\\\#\\\\\\\\[.*\\\\\\\\])?\\\\\\\\s*(?:(readonly)\\\\\\\\s+)?\\\\\\\\b(class)\\\\\\\\b # anonymous class\\\\n)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"final|abstract\\\",\\\"name\\\":\\\"storage.modifier.${0:/downcase}.php\\\"},{\\\"match\\\":\\\"readonly\\\",\\\"name\\\":\\\"storage.modifier.php\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.new.php\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"7\\\":{\\\"name\\\":\\\"storage.type.class.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.class.end.bracket.curly.php\\\"}},\\\"name\\\":\\\"meta.class.php\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=class)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.function-call.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#named-arguments\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#class-extends\\\"},{\\\"include\\\":\\\"#class-implements\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.class.begin.bracket.curly.php\\\"}},\\\"contentName\\\":\\\"meta.class.body.php\\\",\\\"end\\\":\\\"(?=}|\\\\\\\\?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-constant\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"include\\\":\\\"#match_statement\\\"},{\\\"include\\\":\\\"#switch_statement\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.yield-from.php\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b(yield\\\\\\\\s+from)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.${1:/downcase}.php\\\"}},\\\"match\\\":\\\"\\\\\\\\b(break|case|continue|declare|default|die|do|else(if)?|end(declare|for(each)?|if|switch|while)|exit|for(each)?|if|return|switch|use|while|yield)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b((?:require|include)(?:_once)?)(\\\\\\\\s+|(?=\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.include.php\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s|;|$|\\\\\\\\?>)\\\",\\\"name\\\":\\\"meta.include.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(catch)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.exception.catch.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.catch.php\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"},{\\\"begin\\\":\\\"(?i)(?=[\\\\\\\\\\\\\\\\a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"end\\\":\\\"(?xi)\\\\n( [a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}] [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]* )\\\\n(?![a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.exception.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]}]},\\\"2\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n([a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ (?: \\\\\\\\s*\\\\\\\\|\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)*) # union or single exception class\\\\n\\\\\\\\s*\\\\n((\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)? # Variable\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(catch|try|throw|exception|finally)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.exception.php\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(function)\\\\\\\\s*(?=&?\\\\\\\\s*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.php\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*{)\\\",\\\"name\\\":\\\"meta.function.closure.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(&)?\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"}},\\\"contentName\\\":\\\"meta.function.parameters.php\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},{\\\"begin\\\":\\\"(?i)(use)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.function.use.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.function.closure.use.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?i)((?:(&)\\\\\\\\s*)?(\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\\\\\\s*(?=,|\\\\\\\\))\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.return-value.php\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#php-types\\\"}]}},\\\"match\\\":\\\"(?xi)\\\\n(:)\\\\\\\\s*\\\\n(\\\\n # nullable type\\\\n (?:\\\\\\\\?\\\\\\\\s*)? [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ |\\\\n # union, intersection or DNF type\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n (?: \\\\\\\\s*[|&]\\\\\\\\s*\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n )+\\\\n)\\\\n(?=\\\\\\\\s*(?:{|/[/*]|\\\\\\\\#|$))\\\"}]},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(fn)\\\\\\\\s*(?=&?\\\\\\\\s*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.php\\\"}},\\\"end\\\":\\\"=>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arrow.php\\\"}},\\\"name\\\":\\\"meta.function.closure.php\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(&)\\\\\\\\s*)?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"}},\\\"contentName\\\":\\\"meta.function.parameters.php\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.return-value.php\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#php-types\\\"}]}},\\\"match\\\":\\\"(?xi)\\\\n(:)\\\\\\\\s*\\\\n(\\\\n # nullable type\\\\n (?:\\\\\\\\?\\\\\\\\s*)? [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ |\\\\n # union, intersection or DNF type\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n (?: \\\\\\\\s*[|&]\\\\\\\\s*\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n )+\\\\n)\\\\n(?=\\\\\\\\s*(?:=>|/[/*]|\\\\\\\\#|$))\\\"}]},{\\\"begin\\\":\\\"((?:(?:final|abstract|public|private|protected)\\\\\\\\s+)*)(function)\\\\\\\\s+(__construct)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"final|abstract|public|private|protected\\\",\\\"name\\\":\\\"storage.modifier.php\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.constructor.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"}},\\\"contentName\\\":\\\"meta.function.parameters.php\\\",\\\"end\\\":\\\"(?xi)\\\\n(\\\\\\\\)) \\\\\\\\s* ( : \\\\\\\\s*\\\\n (?:\\\\\\\\?\\\\\\\\s*)? (?!\\\\\\\\s) [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\\\\\\\\\s\\\\\\\\|&()]+ (?<!\\\\\\\\s)\\\\n)?\\\\n(?=\\\\\\\\s*(?:{|/[/*]|\\\\\\\\#|$|;))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.return-type.php\\\"}},\\\"name\\\":\\\"meta.function.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"},{\\\"begin\\\":\\\"(?xi)\\\\n((?:(?:public|private|protected|readonly)(?:\\\\\\\\s+|(?=\\\\\\\\?)))++)\\\\n(?: (\\\\n # nullable type\\\\n (?:\\\\\\\\?\\\\\\\\s*)? [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ |\\\\n # union, intersection or DNF type\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n (?: \\\\\\\\s*[|&]\\\\\\\\s*\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n )+\\\\n) \\\\\\\\s+ )?\\\\n((?:(&)\\\\\\\\s*)?(\\\\\\\\$)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*) # Variable name with possible reference\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"public|private|protected|readonly\\\",\\\"name\\\":\\\"storage.modifier.php\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#php-types\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*(?:,|\\\\\\\\)|/[/*]|\\\\\\\\#))\\\",\\\"name\\\":\\\"meta.function.parameter.promoted-property.php\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.php\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*(?:,|\\\\\\\\)|/[/*]|\\\\\\\\#))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-default-types\\\"}]}]},{\\\"include\\\":\\\"#function-parameters\\\"}]},{\\\"begin\\\":\\\"((?:(?:final|abstract|public|private|protected|static)\\\\\\\\s+)*)(function)\\\\\\\\s+(?i:(__(?:call|construct|debugInfo|destruct|get|set|isset|unset|toString|clone|set_state|sleep|wakeup|autoload|invoke|callStatic|serialize|unserialize))|(?:(&)?\\\\\\\\s*([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"final|abstract|public|private|protected|static\\\",\\\"name\\\":\\\"storage.modifier.php\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.magic.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.php\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php\\\"}},\\\"contentName\\\":\\\"meta.function.parameters.php\\\",\\\"end\\\":\\\"(?xi)\\\\n(\\\\\\\\)) (?: \\\\\\\\s* (:) \\\\\\\\s* (\\\\n # nullable type\\\\n (?:\\\\\\\\?\\\\\\\\s*)? [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ |\\\\n # union, intersection or DNF type\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n (?: \\\\\\\\s*[|&]\\\\\\\\s*\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n )+\\\\n) )?\\\\n(?=\\\\\\\\s*(?:{|/[/*]|\\\\\\\\#|$|;))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bracket.round.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.return-value.php\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(static)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.php\\\"},{\\\"match\\\":\\\"\\\\\\\\b(never)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.type.never.php\\\"},{\\\"include\\\":\\\"#php-types\\\"}]}},\\\"name\\\":\\\"meta.function.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-parameters\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"public|private|protected|static|readonly\\\",\\\"name\\\":\\\"storage.modifier.php\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#php-types\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n((?:(?:public|private|protected|static|readonly)(?:\\\\\\\\s+|(?=\\\\\\\\?)))++) # At least one modifier\\\\n(\\\\n # nullable type\\\\n (?:\\\\\\\\?\\\\\\\\s*)? [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ |\\\\n # union, intersection or DNF type\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n (?: \\\\\\\\s*[|&]\\\\\\\\s*\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n )+\\\\n)?\\\\n\\\\\\\\s+ ((\\\\\\\\$)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*) # Variable name\\\"},{\\\"include\\\":\\\"#invoke-call\\\"},{\\\"include\\\":\\\"#scope-resolution\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.construct.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.bracket.round.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.bracket.round.php\\\"}},\\\"match\\\":\\\"(array)(\\\\\\\\()(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.array.empty.php\\\"},{\\\"begin\\\":\\\"(array)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.construct.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.array.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.storage-type.begin.bracket.round.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.storage-type.end.bracket.round.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\()\\\\\\\\s*(array|real|double|float|int(?:eger)?|bool(?:ean)?|string|object|binary|unset)\\\\\\\\s*(\\\\\\\\))\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(array|real|double|float|int(eger)?|bool(ean)?|string|class|var|function|interface|trait|parent|self|object|mixed)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(global|abstract|const|final|private|protected|public|static)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.php\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.expression.php\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.terminator.statement.php\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bclone\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.clone.php\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.spread.php\\\"},{\\\"match\\\":\\\"\\\\\\\\.=?\\\",\\\"name\\\":\\\"keyword.operator.string.php\\\"},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.operator.key.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\=)(&)|(&)(?=[$a-z_])\\\"},{\\\"match\\\":\\\"@\\\",\\\"name\\\":\\\"keyword.operator.error-control.php\\\"},{\\\"match\\\":\\\"===|==|!==|!=|<>\\\",\\\"name\\\":\\\"keyword.operator.comparison.php\\\"},{\\\"match\\\":\\\"=|\\\\\\\\+=|\\\\\\\\-=|\\\\\\\\*\\\\\\\\*?=|/=|%=|&=|\\\\\\\\|=|\\\\\\\\^=|<<=|>>=|\\\\\\\\?\\\\\\\\?=\\\",\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},{\\\"match\\\":\\\"<=>|<=|>=|<|>\\\",\\\"name\\\":\\\"keyword.operator.comparison.php\\\"},{\\\"match\\\":\\\"\\\\\\\\-\\\\\\\\-|\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment-decrement.php\\\"},{\\\"match\\\":\\\"\\\\\\\\-|\\\\\\\\+|\\\\\\\\*\\\\\\\\*?|/|%\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.php\\\"},{\\\"match\\\":\\\"(?i)(!|&&|\\\\\\\\|\\\\\\\\|)|\\\\\\\\b(and|or|xor|as)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logical.php\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"match\\\":\\\"<<|>>|~|\\\\\\\\^|&|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.bitwise.php\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(instanceof)\\\\\\\\s+(?=[\\\\\\\\\\\\\\\\$a-z_])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.php\\\"}},\\\"end\\\":\\\"(?i)(?=[^\\\\\\\\\\\\\\\\$a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#variable-name\\\"}]},{\\\"include\\\":\\\"#instantiation\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.goto.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.other.php\\\"}},\\\"match\\\":\\\"(?i)(goto)\\\\\\\\s+([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.goto-label.php\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*(?<!default))\\\\\\\\s*:(?!:)\\\"},{\\\"include\\\":\\\"#string-backtick\\\"},{\\\"include\\\":\\\"#ternary_shorthand\\\"},{\\\"include\\\":\\\"#null_coalescing\\\"},{\\\"include\\\":\\\"#ternary_expression\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#constants\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"}],\\\"repository\\\":{\\\"attribute\\\":{\\\"begin\\\":\\\"\\\\\\\\#\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"meta.attribute.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"},{\\\"begin\\\":\\\"([a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute-name\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.bracket.round.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#named-arguments\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#attribute-name\\\"}]},\\\"attribute-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\\\\\\\\\?[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*\\\\\\\\\\\\\\\\)\\\",\\\"end\\\":\\\"(?xi)\\\\n( [a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}] [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]* )?\\\\n(?![a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.attribute.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(\\\\\\\\\\\\\\\\)?\\\\\\\\b(Attribute|SensitiveParameter|AllowDynamicProperties|ReturnTypeWillChange)\\\\\\\\b\\\",\\\"name\\\":\\\"support.attribute.builtin.php\\\"},{\\\"begin\\\":\\\"(?i)(?=[\\\\\\\\\\\\\\\\a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"end\\\":\\\"(?xi)\\\\n( [a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}] [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]* )?\\\\n(?![a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.attribute.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]}]},\\\"class-builtin\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(\\\\\\\\\\\\\\\\)?\\\\\\\\b\\\\n(Attribute|(APC|Append)Iterator|Array(Access|Iterator|Object)\\\\n|Bad(Function|Method)CallException\\\\n|(Caching|CallbackFilter)Iterator|Collator|Collectable|Cond|Countable|CURLFile\\\\n|Date(Interval|Period|Time(Interface|Immutable|Zone)?)?|Directory(Iterator)?|DomainException\\\\n|DOM(Attr|CdataSection|CharacterData|Comment|Document(Fragment)?|Element|EntityReference\\\\n |Implementation|NamedNodeMap|Node(list)?|ProcessingInstruction|Text|XPath)\\\\n|(Error)?Exception|EmptyIterator\\\\n|finfo\\\\n|Ev(Check|Child|Embed|Fork|Idle|Io|Loop|Periodic|Prepare|Signal|Stat|Timer|Watcher)?\\\\n|Event(Base|Buffer(Event)?|SslContext|Http(Request|Connection)?|Config|DnsBase|Util|Listener)?\\\\n|FANNConnection|(Filter|Filesystem)Iterator\\\\n|Gender\\\\\\\\\\\\\\\\Gender|GlobIterator|Gmagick(Draw|Pixel)?\\\\n|Haru(Annotation|Destination|Doc|Encoder|Font|Image|Outline|Page)\\\\n|Http((Inflate|Deflate)?Stream|Message|Request(Pool)?|Response|QueryString)\\\\n|HRTime\\\\\\\\\\\\\\\\(PerformanceCounter|StopWatch)\\\\n|Intl(Calendar|((CodePoint|RuleBased)?Break|Parts)?Iterator|DateFormatter|TimeZone)\\\\n|Imagick(Draw|Pixel(Iterator)?)?\\\\n|InfiniteIterator|InvalidArgumentException|Iterator(Aggregate|Iterator)?\\\\n|JsonSerializable\\\\n|KTaglib_(MPEG_(File|AudioProperties)|Tag|ID3v2_(Tag|(AttachedPicture)?Frame))\\\\n|Lapack|(Length|Locale|Logic)Exception|LimitIterator|Lua(Closure)?\\\\n|Mongo(BinData|Client|Code|Collection|CommandCursor|Cursor(Exception)?|Date|DB(Ref)?|DeleteBatch\\\\n |Grid(FS(Cursor|File)?)|Id|InsertBatch|Int(32|64)|Log|Pool|Regex|ResultException|Timestamp\\\\n |UpdateBatch|Write(Batch|ConcernException))?\\\\n|Memcache(d)?|MessageFormatter|MultipleIterator|Mutex\\\\n|mysqli(_(driver|stmt|warning|result))?\\\\n|MysqlndUh(Connection|PreparedStatement)\\\\n|NoRewindIterator|Normalizer|NumberFormatter\\\\n|OCI-(Collection|Lob)|OuterIterator|(OutOf(Bounds|Range)|Overflow)Exception\\\\n|ParentIterator|PDO(Statement)?|Phar(Data|FileInfo)?|php_user_filter|Pool\\\\n|QuickHash(Int(Set|StringHash)|StringIntHash)\\\\n|Recursive(Array|Caching|Directory|Fallback|Filter|Iterator|Regex|Tree)?Iterator\\\\n|Reflection(Class|Function(Abstract)?|Method|Object|Parameter|Property|(Zend)?Extension)?\\\\n|RangeException|Reflector|RegexIterator|ResourceBundle|RuntimeException|RRD(Creator|Graph|Updater)\\\\n|SAM(Connection|Message)|SCA(_(SoapProxy|LocalProxy))?\\\\n|SDO_(DAS_(ChangeSummary|Data(Factory|Object)|Relational|Setting|XML(_Document)?)\\\\n |Data(Factory|Object)|Exception|List|Model_(Property|ReflectionDataObject|Type)|Sequence)\\\\n|SeekableIterator|Serializable|SessionHandler(Interface)?|SimpleXML(Iterator|Element)|SNMP\\\\n|Soap(Client|Fault|Header|Param|Server|Var)\\\\n|SphinxClient|Spoofchecker\\\\n|Spl(DoublyLinkedList|Enum|File(Info|Object)|FixedArray|(Max|Min)?Heap|Observer|ObjectStorage\\\\n |(Priority)?Queue|Stack|Subject|Type|TempFileObject)\\\\n|SQLite(3(Result|Stmt)?|Database|Result|Unbuffered)\\\\n|stdClass|streamWrapper|SVM(Model)?|Swish(Result(s)?|Search)?|Sync(Event|Mutex|ReaderWriter|Semaphore)\\\\n|Thread(ed)?|tidy(Node)?|TokyoTyrant(Table|Iterator|Query)?|Transliterator|Traversable\\\\n|UConverter|(Underflow|UnexpectedValue)Exception\\\\n|V8Js(Exception)?|Varnish(Admin|Log|Stat)\\\\n|Worker|Weak(Map|Ref)\\\\n|XML(Diff\\\\\\\\\\\\\\\\(Base|DOM|File|Memory)|Reader|Writer)|XsltProcessor\\\\n|Yaf_(Route_(Interface|Map|Regex|Rewrite|Simple|Supervar)\\\\n |Action_Abstract|Application|Config_(Simple|Ini|Abstract)|Controller_Abstract\\\\n |Dispatcher|Exception|Loader|Plugin_Abstract|Registry|Request_(Abstract|Simple|Http)\\\\n |Response_Abstract|Router|Session|View_(Simple|Interface))\\\\n|Yar_(Client(_Exception)?|Concurrent_Client|Server(_Exception)?)\\\\n|ZipArchive|ZMQ(Context|Device|Poll|Socket)?)\\\\n\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.builtin.php\\\"}]},\\\"class-constant\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.php\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(const)\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\"}]},\\\"class-extends\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(extends)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.extends.php\\\"}},\\\"end\\\":\\\"(?i)(?=[^A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#inheritance-single\\\"}]}]},\\\"class-implements\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(implements)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.implements.php\\\"}},\\\"end\\\":\\\"(?i)(?={)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.classes.php\\\"},{\\\"include\\\":\\\"#inheritance-single\\\"}]}]},\\\"class-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\\\\\\\\\?[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*\\\\\\\\\\\\\\\\)\\\",\\\"end\\\":\\\"(?xi)\\\\n( [a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}] [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]* )?\\\\n(?![a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},{\\\"include\\\":\\\"#class-builtin\\\"},{\\\"begin\\\":\\\"(?i)(?=[\\\\\\\\\\\\\\\\a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"end\\\":\\\"(?xi)\\\\n( [a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}] [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]* )?\\\\n(?![a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"name\\\":\\\"comment.block.documentation.phpdoc.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#php_doc\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.php\\\"},{\\\"begin\\\":\\\"(^\\\\\\\\s+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.php\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"\\\\\\\\n|(?=\\\\\\\\?>)\\\",\\\"name\\\":\\\"comment.line.double-slash.php\\\"}]},{\\\"begin\\\":\\\"(^\\\\\\\\s+)?(?=#)(?!#\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.php\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"\\\\\\\\n|(?=\\\\\\\\?>)\\\",\\\"name\\\":\\\"comment.line.number-sign.php\\\"}]}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b(TRUE|FALSE|NULL|__(FILE|DIR|FUNCTION|CLASS|METHOD|LINE|NAMESPACE)__|ON|OFF|YES|NO|NL|BR|TAB)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\b(DEFAULT_INCLUDE_PATH|EAR_(INSTALL|EXTENSION)_DIR|E_(ALL|COMPILE_(ERROR|WARNING)|CORE_(ERROR|WARNING)|DEPRECATED|ERROR|NOTICE|PARSE|RECOVERABLE_ERROR|STRICT|USER_(DEPRECATED|ERROR|NOTICE|WARNING)|WARNING)|PHP_(ROUND_HALF_(DOWN|EVEN|ODD|UP)|(MAJOR|MINOR|RELEASE)_VERSION|MAXPATHLEN|BINDIR|SHLIB_SUFFIX|SYSCONFDIR|SAPI|CONFIG_FILE_(PATH|SCAN_DIR)|INT_(MAX|SIZE)|ZTS|OS|OUTPUT_HANDLER_(START|CONT|END)|DEBUG|DATADIR|URL_(SCHEME|HOST|USER|PORT|PASS|PATH|QUERY|FRAGMENT)|PREFIX|EXTRA_VERSION|EXTENSION_DIR|EOL|VERSION(_ID)?|WINDOWS_(NT_(SERVER|DOMAIN_CONTROLLER|WORKSTATION)|VERSION_(MAJOR|MINOR)|BUILD|SUITEMASK|SP_(MAJOR|MINOR)|PRODUCTTYPE|PLATFORM)|LIBDIR|LOCALSTATEDIR)|STD(ERR|IN|OUT)|ZEND_(DEBUG_BUILD|THREAD_SAFE))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.core.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\b(__COMPILER_HALT_OFFSET__|AB(MON_(1|2|3|4|5|6|7|8|9|10|11|12)|DAY[1-7])|AM_STR|ASSERT_(ACTIVE|BAIL|CALLBACK_QUIET_EVAL|WARNING)|ALT_DIGITS|CASE_(UPPER|LOWER)|CHAR_MAX|CONNECTION_(ABORTED|NORMAL|TIMEOUT)|CODESET|COUNT_(NORMAL|RECURSIVE)|CREDITS_(ALL|DOCS|FULLPAGE|GENERAL|GROUP|MODULES|QA|SAPI)|CRYPT_(BLOWFISH|EXT_DES|MD5|SHA(256|512)|SALT_LENGTH|STD_DES)|CURRENCY_SYMBOL|D_(T_)?FMT|DATE_(ATOM|COOKIE|ISO8601|RFC(822|850|1036|1123|2822|3339)|RSS|W3C)|DAY_[1-7]|DECIMAL_POINT|DIRECTORY_SEPARATOR|ENT_(COMPAT|IGNORE|(NO)?QUOTES)|EXTR_(IF_EXISTS|OVERWRITE|PREFIX_(ALL|IF_EXISTS|INVALID|SAME)|REFS|SKIP)|ERA(_(D_(T_)?FMT)|T_FMT|YEAR)?|FRAC_DIGITS|GROUPING|HASH_HMAC|HTML_(ENTITIES|SPECIALCHARS)|INF|INFO_(ALL|CREDITS|CONFIGURATION|ENVIRONMENT|GENERAL|LICENSEMODULES|VARIABLES)|INI_(ALL|CANNER_(NORMAL|RAW)|PERDIR|SYSTEM|USER)|INT_(CURR_SYMBOL|FRAC_DIGITS)|LC_(ALL|COLLATE|CTYPE|MESSAGES|MONETARY|NUMERIC|TIME)|LOCK_(EX|NB|SH|UN)|LOG_(ALERT|AUTH(PRIV)?|CRIT|CRON|CONS|DAEMON|DEBUG|EMERG|ERR|INFO|LOCAL[1-7]|LPR|KERN|MAIL|NEWS|NODELAY|NOTICE|NOWAIT|ODELAY|PID|PERROR|WARNING|SYSLOG|UCP|USER)|M_(1_PI|SQRT(1_2|2|3|PI)|2_(SQRT)?PI|PI(_(2|4))?|E(ULER)?|LN(10|2|PI)|LOG(10|2)E)|MON_(1|2|3|4|5|6|7|8|9|10|11|12|DECIMAL_POINT|GROUPING|THOUSANDS_SEP)|N_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|NAN|NEGATIVE_SIGN|NO(EXPR|STR)|P_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|PM_STR|POSITIVE_SIGN|PATH(_SEPARATOR|INFO_(EXTENSION|(BASE|DIR|FILE)NAME))|RADIXCHAR|SEEK_(CUR|END|SET)|SORT_(ASC|DESC|LOCALE_STRING|REGULAR|STRING)|STR_PAD_(BOTH|LEFT|RIGHT)|T_FMT(_AMPM)?|THOUSEP|THOUSANDS_SEP|UPLOAD_ERR_(CANT_WRITE|EXTENSION|(FORM|INI)_SIZE|NO_(FILE|TMP_DIR)|OK|PARTIAL)|YES(EXPR|STR))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.std.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\b(GLOB_(MARK|BRACE|NO(SORT|CHECK|ESCAPE)|ONLYDIR|ERR|AVAILABLE_FLAGS)|XML_(SAX_IMPL|(DTD|DOCUMENT(_(FRAG|TYPE))?|HTML_DOCUMENT|NOTATION|NAMESPACE_DECL|PI|COMMENT|DATA_SECTION|TEXT)_NODE|OPTION_(SKIP_(TAGSTART|WHITE)|CASE_FOLDING|TARGET_ENCODING)|ERROR_((BAD_CHAR|(ATTRIBUTE_EXTERNAL|BINARY|PARAM|RECURSIVE)_ENTITY)_REF|MISPLACED_XML_PI|SYNTAX|NONE|NO_(MEMORY|ELEMENTS)|TAG_MISMATCH|INCORRECT_ENCODING|INVALID_TOKEN|DUPLICATE_ATTRIBUTE|UNCLOSED_(CDATA_SECTION|TOKEN)|UNDEFINED_ENTITY|UNKNOWN_ENCODING|JUNK_AFTER_DOC_ELEMENT|PARTIAL_CHAR|EXTERNAL_ENTITY_HANDLING|ASYNC_ENTITY)|ENTITY_(((REF|DECL)_)?NODE)|ELEMENT(_DECL)?_NODE|LOCAL_NAMESPACE|ATTRIBUTE_(NMTOKEN(S)?|NOTATION|NODE)|CDATA|ID(REF(S)?)?|DECL_NODE|ENTITY|ENUMERATION)|MHASH_(RIPEMD(128|160|256|320)|GOST|MD(2|4|5)|SHA(1|224|256|384|512)|SNEFRU256|HAVAL(128|160|192|224|256)|CRC23(B)?|TIGER(128|160)?|WHIRLPOOL|ADLER32)|MYSQL_(BOTH|NUM|CLIENT_(SSL|COMPRESS|IGNORE_SPACE|INTERACTIVE|ASSOC))|MYSQLI_(REPORT_(STRICT|INDEX|OFF|ERROR|ALL)|REFRESH_(GRANT|MASTER|BACKUP_LOG|STATUS|SLAVE|HOSTS|THREADS|TABLES|LOG)|READ_DEFAULT_(FILE|GROUP)|(GROUP|MULTIPLE_KEY|BINARY|BLOB)_FLAG|BOTH|STMT_ATTR_(CURSOR_TYPE|UPDATE_MAX_LENGTH|PREFETCH_ROWS)|STORE_RESULT|SERVER_QUERY_(NO_((GOOD_)?INDEX_USED)|WAS_SLOW)|SET_(CHARSET_NAME|FLAG)|NO_(DEFAULT_VALUE_FLAG|DATA)|NOT_NULL_FLAG|NUM(_FLAG)?|CURSOR_TYPE_(READ_ONLY|SCROLLABLE|NO_CURSOR|FOR_UPDATE)|CLIENT_(SSL|NO_SCHEMA|COMPRESS|IGNORE_SPACE|INTERACTIVE|FOUND_ROWS)|TYPE_(GEOMETRY|((MEDIUM|LONG|TINY)_)?BLOB|BIT|SHORT|STRING|SET|YEAR|NULL|NEWDECIMAL|NEWDATE|CHAR|TIME(STAMP)?|TINY|INT24|INTERVAL|DOUBLE|DECIMAL|DATE(TIME)?|ENUM|VAR_STRING|FLOAT|LONG(LONG)?)|TIME_STAMP_FLAG|INIT_COMMAND|ZEROFILL_FLAG|ON_UPDATE_NOW_FLAG|OPT_(NET_((CMD|READ)_BUFFER_SIZE)|CONNECT_TIMEOUT|INT_AND_FLOAT_NATIVE|LOCAL_INFILE)|DEBUG_TRACE_ENABLED|DATA_TRUNCATED|USE_RESULT|(ENUM|(PART|PRI|UNIQUE)_KEY|UNSIGNED)_FLAG|ASSOC|ASYNC|AUTO_INCREMENT_FLAG)|MCRYPT_(RC(2|6)|RIJNDAEL_(128|192|256)|RAND|GOST|XTEA|MODE_(STREAM|NOFB|CBC|CFB|OFB|ECB)|MARS|BLOWFISH(_COMPAT)?|SERPENT|SKIPJACK|SAFER(64|128|PLUS)|CRYPT|CAST_(128|256)|TRIPLEDES|THREEWAY|TWOFISH|IDEA|(3)?DES|DECRYPT|DEV_(U)?RANDOM|PANAMA|ENCRYPT|ENIGNA|WAKE|LOKI97|ARCFOUR(_IV)?)|STREAM_(REPORT_ERRORS|MUST_SEEK|MKDIR_RECURSIVE|BUFFER_(NONE|FULL|LINE)|SHUT_(RD)?WR|SOCK_(RDM|RAW|STREAM|SEQPACKET|DGRAM)|SERVER_(BIND|LISTEN)|NOTIFY_(REDIRECTED|RESOLVE|MIME_TYPE_IS|SEVERITY_(INFO|ERR|WARN)|COMPLETED|CONNECT|PROGRESS|FILE_SIZE_IS|FAILURE|AUTH_(REQUIRED|RESULT))|CRYPTO_METHOD_((SSLv2(3)?|SSLv3|TLS)_(CLIENT|SERVER))|CLIENT_((ASYNC_)?CONNECT|PERSISTENT)|CAST_(AS_STREAM|FOR_SELECT)|(IGNORE|IS)_URL|IPPROTO_(RAW|TCP|ICMP|IP|UDP)|OOB|OPTION_(READ_(BUFFER|TIMEOUT)|BLOCKING|WRITE_BUFFER)|URL_STAT_(LINK|QUIET)|USE_PATH|PEEK|PF_(INET(6)?|UNIX)|ENFORCE_SAFE_MODE|FILTER_(ALL|READ|WRITE))|SUNFUNCS_RET_(DOUBLE|STRING|TIMESTAMP)|SQLITE_(READONLY|ROW|MISMATCH|MISUSE|BOTH|BUSY|SCHEMA|NOMEM|NOTFOUND|NOTADB|NOLFS|NUM|CORRUPT|CONSTRAINT|CANTOPEN|TOOBIG|INTERRUPT|INTERNAL|IOERR|OK|DONE|PROTOCOL|PERM|ERROR|EMPTY|FORMAT|FULL|LOCKED|ABORT|ASSOC|AUTH)|SQLITE3_(BOTH|BLOB|NUM|NULL|TEXT|INTEGER|OPEN_(READ(ONLY|WRITE)|CREATE)|FLOAT_ASSOC)|CURL(M_(BAD_((EASY)?HANDLE)|CALL_MULTI_PERFORM|INTERNAL_ERROR|OUT_OF_MEMORY|OK)|MSG_DONE|SSH_AUTH_(HOST|NONE|DEFAULT|PUBLICKEY|PASSWORD|KEYBOARD)|CLOSEPOLICY_(SLOWEST|CALLBACK|OLDEST|LEAST_(RECENTLY_USED|TRAFFIC)|INFO_(REDIRECT_(COUNT|TIME)|REQUEST_SIZE|SSL_VERIFYRESULT|STARTTRANSFER_TIME|(SIZE|SPEED)_(DOWNLOAD|UPLOAD)|HTTP_CODE|HEADER_(OUT|SIZE)|NAMELOOKUP_TIME|CONNECT_TIME|CONTENT_(TYPE|LENGTH_(DOWNLOAD|UPLOAD))|CERTINFO|TOTAL_TIME|PRIVATE|PRETRANSFER_TIME|EFFECTIVE_URL|FILETIME)|OPT_(RESUME_FROM|RETURNTRANSFER|REDIR_PROTOCOLS|REFERER|READ(DATA|FUNCTION)|RANGE|RANDOM_FILE|MAX(CONNECTS|REDIRS)|BINARYTRANSFER|BUFFERSIZE|SSH_(HOST_PUBLIC_KEY_MD5|(PRIVATE|PUBLIC)_KEYFILE)|AUTH_TYPES)|SSL(CERT(TYPE|PASSWD)?|ENGINE(_DEFAULT)?|VERSION|KEY(TYPE|PASSWD)?)|SSL_(CIPHER_LIST|VERIFY(HOST|PEER))|STDERR|HTTP(GET|HEADER|200ALIASES|_VERSION|PROXYTUNNEL|AUTH)|HEADER(FUNCTION)?|NO(BODY|SIGNAL|PROGRESS)|NETRC|CRLF|CONNECTTIMEOUT(_MS)?|COOKIE(SESSION|JAR|FILE)?|CUSTOMREQUEST|CERTINFO|CLOSEPOLICY|CA(INFO|PATH)|TRANSFERTEXT|TCP_NODELAY|TIME(CONDITION|OUT(_MS)?|VALUE)|INTERFACE|INFILE(SIZE)?|IPRESOLVE|DNS_(CACHE_TIMEOUT|USE_GLOBAL_CACHE)|URL|USER(AGENT|PWD)|UNRESTRICTED_AUTH|UPLOAD|PRIVATE|PROGRESSFUNCTION|PROXY(TYPE|USERPWD|PORT|AUTH)?|PROTOCOLS|PORT|POST(REDIR|QUOTE|FIELDS)?|PUT|EGDSOCKET|ENCODING|VERBOSE|KRB4LEVEL|KEYPASSWD|QUOTE|FRESH_CONNECT|FTP(APPEND|LISTONLY|PORT|SSLAUTH)|FTP_(SSL|SKIP_PASV_IP|CREATE_MISSING_DIRS|USE_EP(RT|SV)|FILEMETHOD)|FILE(TIME)?|FORBID_REUSE|FOLLOWLOCATION|FAILONERROR|WRITE(FUNCTION|HEADER)|LOW_SPEED_(LIMIT|TIME)|AUTOREFERER)|PROXY_(HTTP|SOCKS(4|5))|PROTO_(SCP|SFTP|HTTP(S)?|TELNET|TFTP|DICT|FTP(S)?|FILE|LDAP(S)?|ALL)|E_((RECV|READ)_ERROR|GOT_NOTHING|MALFORMAT_USER|BAD_(CONTENT_ENCODING|CALLING_ORDER|PASSWORD_ENTERED|FUNCTION_ARGUMENT)|SSH|SSL_(CIPHER|CONNECT_ERROR|CERTPROBLEM|CACERT|PEER_CERTIFICATE|ENGINE_(NOTFOUND|SETFAILED))|SHARE_IN_USE|SEND_ERROR|HTTP_(RANGE_ERROR|NOT_FOUND|PORT_FAILED|POST_ERROR)|COULDNT_(RESOLVE_(HOST|PROXY)|CONNECT)|TOO_MANY_REDIRECTS|TELNET_OPTION_SYNTAX|OBSOLETE|OUT_OF_MEMORY|OPERATION|TIMEOUTED|OK|URL_MALFORMAT(_USER)?|UNSUPPORTED_PROTOCOL|UNKNOWN_TELNET_OPTION|PARTIAL_FILE|FTP_(BAD_DOWNLOAD_RESUME|SSL_FAILED|COULDNT_(RETR_FILE|GET_SIZE|STOR_FILE|SET_(BINARY|ASCII)|USE_REST)|CANT_(GET_HOST|RECONNECT)|USER_PASSWORD_INCORRECT|PORT_FAILED|QUOTE_ERROR|WRITE_ERROR|WEIRD_((PASS|PASV|SERVER|USER)_REPLY|227_FORMAT)|ACCESS_DENIED)|FILESIZE_EXCEEDED|FILE_COULDNT_READ_FILE|FUNCTION_NOT_FOUND|FAILED_INIT|WRITE_ERROR|LIBRARY_NOT_FOUND|LDAP_(SEARCH_FAILED|CANNOT_BIND|INVALID_URL)|ABORTED_BY_CALLBACK)|VERSION_NOW|FTP(METHOD_(MULTI|SINGLE|NO)CWD|SSL_(ALL|NONE|CONTROL|TRY)|AUTH_(DEFAULT|SSL|TLS))|AUTH_(ANY(SAFE)?|BASIC|DIGEST|GSSNEGOTIATE|NTLM))|CURL_(HTTP_VERSION_(1_(0|1)|NONE)|NETRC_(REQUIRED|IGNORED|OPTIONAL)|TIMECOND_(IF(UN)?MODSINCE|LASTMOD)|IPRESOLVE_(V(4|6)|WHATEVER)|VERSION_(SSL|IPV6|KERBEROS4|LIBZ))|IMAGETYPE_(GIF|XBM|BMP|SWF|COUNT|TIFF_(MM|II)|ICO|IFF|UNKNOWN|JB2|JPX|JP2|JPC|JPEG(2000)?|PSD|PNG|WBMP)|INPUT_(REQUEST|GET|SERVER|SESSION|COOKIE|POST|ENV)|ICONV_(MIME_DECODE_(STRICT|CONTINUE_ON_ERROR)|IMPL|VERSION)|DNS_(MX|SRV|SOA|HINFO|NS|NAPTR|CNAME|TXT|PTR|ANY|ALL|AAAA|A(6)?)|DOM(STRING_SIZE_ERR)|DOM_((SYNTAX|HIERARCHY_REQUEST|NO_(MODIFICATION_ALLOWED|DATA_ALLOWED)|NOT_(FOUND|SUPPORTED)|NAMESPACE|INDEX_SIZE|USE_ATTRIBUTE|VALID_(MODIFICATION|STATE|CHARACTER|ACCESS)|PHP|VALIDATION|WRONG_DOCUMENT)_ERR)|JSON_(HEX_(TAG|QUOT|AMP|APOS)|NUMERIC_CHECK|ERROR_(SYNTAX|STATE_MISMATCH|NONE|CTRL_CHAR|DEPTH|UTF8)|FORCE_OBJECT)|PREG_((D_UTF8(_OFFSET)?|NO|INTERNAL|(BACKTRACK|RECURSION)_LIMIT)_ERROR|GREP_INVERT|SPLIT_(NO_EMPTY|(DELIM|OFFSET)_CAPTURE)|SET_ORDER|OFFSET_CAPTURE|PATTERN_ORDER)|PSFS_(PASS_ON|ERR_FATAL|FEED_ME|FLAG_(NORMAL|FLUSH_(CLOSE|INC)))|PCRE_VERSION|POSIX_((F|R|W|X)_OK|S_IF(REG|BLK|SOCK|CHR|IFO))|FNM_(NOESCAPE|CASEFOLD|PERIOD|PATHNAME)|FILTER_(REQUIRE_(SCALAR|ARRAY)|NULL_ON_FAILURE|CALLBACK|DEFAULT|UNSAFE_RAW|SANITIZE_(MAGIC_QUOTES|STRING|STRIPPED|SPECIAL_CHARS|NUMBER_(INT|FLOAT)|URL|EMAIL|ENCODED|FULL_SPCIAL_CHARS)|VALIDATE_(REGEXP|BOOLEAN|INT|IP|URL|EMAIL|FLOAT)|FORCE_ARRAY|FLAG_(SCHEME_REQUIRED|STRIP_(BACKTICK|HIGH|LOW)|HOST_REQUIRED|NONE|NO_(RES|PRIV)_RANGE|ENCODE_QUOTES|IPV(4|6)|PATH_REQUIRED|EMPTY_STRING_NULL|ENCODE_(HIGH|LOW|AMP)|QUERY_REQUIRED|ALLOW_(SCIENTIFIC|HEX|THOUSAND|OCTAL|FRACTION)))|FILE_(BINARY|SKIP_EMPTY_LINES|NO_DEFAULT_CONTEXT|TEXT|IGNORE_NEW_LINES|USE_INCLUDE_PATH|APPEND)|FILEINFO_(RAW|MIME(_(ENCODING|TYPE))?|SYMLINK|NONE|CONTINUE|DEVICES|PRESERVE_ATIME)|FORCE_(DEFLATE|GZIP)|LIBXML_(XINCLUDE|NSCLEAN|NO(XMLDECL|BLANKS|NET|CDATA|ERROR|EMPTYTAG|ENT|WARNING)|COMPACT|DTD(VALID|LOAD|ATTR)|((DOTTED|LOADED)_)?VERSION|PARSEHUGE|ERR_(NONE|ERROR|FATAL|WARNING)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.ext.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)?\\\\\\\\b(T_(RETURN|REQUIRE(_ONCE)?|GOTO|GLOBAL|(MINUS|MOD|MUL|XOR)_EQUAL|METHOD_C|ML_COMMENT|BREAK|BOOL_CAST|BOOLEAN_(AND|OR)|BAD_CHARACTER|SR(_EQUAL)?|STRING(_CAST|VARNAME)?|START_HEREDOC|STATIC|SWITCH|SL(_EQUAL)?|HALT_COMPILER|NS_(C|SEPARATOR)|NUM_STRING|NEW|NAMESPACE|CHARACTER|COMMENT|CONSTANT(_ENCAPSED_STRING)?|CONCAT_EQUAL|CONTINUE|CURLY_OPEN|CLOSE_TAG|CLONE|CLASS(_C)?|CASE|CATCH|TRY|THROW|IMPLEMENTS|ISSET|IS_((GREATER|SMALLER)_OR_EQUAL|(NOT_)?(IDENTICAL|EQUAL))|INSTANCEOF|INCLUDE(_ONCE)?|INC|INT_CAST|INTERFACE|INLINE_HTML|IF|OR_EQUAL|OBJECT_(CAST|OPERATOR)|OPEN_TAG(_WITH_ECHO)?|OLD_FUNCTION|DNUMBER|DIR|DIV_EQUAL|DOC_COMMENT|DOUBLE_(ARROW|CAST|COLON)|DOLLAR_OPEN_CURLY_BRACES|DO|DEC|DECLARE|DEFAULT|USE|UNSET(_CAST)?|PRINT|PRIVATE|PROTECTED|PUBLIC|PLUS_EQUAL|PAAMAYIM_NEKUDOTAYIM|EXTENDS|EXIT|EMPTY|ENCAPSED_AND_WHITESPACE|END(SWITCH|IF|DECLARE|FOR(EACH)?|WHILE)|END_HEREDOC|ECHO|EVAL|ELSE(IF)?|VAR(IABLE)?|FINAL|FILE|FOR(EACH)?|FUNC_C|FUNCTION|WHITESPACE|WHILE|LNUMBER|LIST|LINE|LOGICAL_(AND|OR|XOR)|ARRAY_(CAST)?|ABSTRACT|AS|AND_EQUAL))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.parser-token.php\\\"},{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*\\\",\\\"name\\\":\\\"constant.other.php\\\"}]},\\\"function-call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\\\\\\\\\?(?<![a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*(?:\\\\\\\\\\\\\\\\[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)+)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"},{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*\\\",\\\"name\\\":\\\"entity.name.function.php\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.function-call.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#named-arguments\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\\\\\\\\\)?(?<![a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#support\\\"},{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*\\\",\\\"name\\\":\\\"entity.name.function.php\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.function-call.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#named-arguments\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"(?i)\\\\\\\\b(print|echo)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.construct.output.php\\\"}]},\\\"function-parameters\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#php-types\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.variadic.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(?: (\\\\n # nullable type\\\\n (?:\\\\\\\\?\\\\\\\\s*)? [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ |\\\\n # union, intersection or DNF type\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n (?: \\\\\\\\s*[|&]\\\\\\\\s*\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n )+\\\\n) \\\\\\\\s+ )?\\\\n((?:(&)\\\\\\\\s*)?(\\\\\\\\.\\\\\\\\.\\\\\\\\.)(\\\\\\\\$)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*) # Variable name with possible reference\\\\n(?=\\\\\\\\s*(?:,|\\\\\\\\)|/[/*]|\\\\\\\\#|$)) # A closing parentheses (end of argument list) or a comma or a comment\\\",\\\"name\\\":\\\"meta.function.parameter.variadic.php\\\"},{\\\"begin\\\":\\\"(?xi)\\\\n(\\\\n # nullable type\\\\n (?:\\\\\\\\?\\\\\\\\s*)? [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ |\\\\n # union, intersection or DNF type\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n (?: \\\\\\\\s*[|&]\\\\\\\\s*\\\\n (?: [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+ | \\\\\\\\(\\\\\\\\s* [a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+(?:\\\\\\\\s*&\\\\\\\\s*[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+)+ \\\\\\\\s*\\\\\\\\) )\\\\n )+\\\\n)\\\\n\\\\\\\\s+ ((?:(&)\\\\\\\\s*)?(\\\\\\\\$)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*) # Variable name with possible reference\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#php-types\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*(?:,|\\\\\\\\)|/[/*]|\\\\\\\\#))\\\",\\\"name\\\":\\\"meta.function.parameter.typehinted.php\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.php\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*(?:,|\\\\\\\\)|/[/*]|\\\\\\\\#))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-default-types\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n((?:(&)\\\\\\\\s*)?(\\\\\\\\$)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*) # Variable name with possible reference\\\\n(?=\\\\\\\\s*(?:,|\\\\\\\\)|/[/*]|\\\\\\\\#|$)) # A closing parentheses (end of argument list) or a comma or a comment\\\",\\\"name\\\":\\\"meta.function.parameter.no-default.php\\\"},{\\\"begin\\\":\\\"(?xi)\\\\n((?:(&)\\\\\\\\s*)?(\\\\\\\\$)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*) # Variable name with possible reference\\\\n\\\\\\\\s*(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.reference.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.assignment.php\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*(?:,|\\\\\\\\)|/[/*]|\\\\\\\\#))\\\",\\\"name\\\":\\\"meta.function.parameter.default.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-default-types\\\"}]}]},\\\"heredoc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=<<<\\\\\\\\s*(\\\\\\\"?)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)(\\\\\\\\1)\\\\\\\\s*$)\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"string.unquoted.heredoc.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc_interior\\\"}]},{\\\"begin\\\":\\\"(?=<<<\\\\\\\\s*'([a-zA-Z_]+[a-zA-Z0-9_]*)'\\\\\\\\s*$)\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"string.unquoted.nowdoc.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nowdoc_interior\\\"}]}]},\\\"heredoc_interior\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(HTML)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"text.html\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\3)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(XML)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"text.xml\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\3)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"text.xml\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)([DS]QL)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.sql\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\3)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(JAVASCRIPT|JS)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\3)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(JSON)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.json\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\3)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"source.json\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(CSS)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\3)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(REGEXP?)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"string.regexp.heredoc.php\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\3)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\){1,2}[.$^\\\\\\\\[\\\\\\\\]{}]\\\",\\\"name\\\":\\\"constant.character.escape.regex.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repitition.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repitition.php\\\"}},\\\"match\\\":\\\"({)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repitition.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?\\\\\\\\])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.character-class.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\'\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"}]},{\\\"match\\\":\\\"[$^+*]\\\",\\\"name\\\":\\\"keyword.operator.regexp.php\\\"},{\\\"begin\\\":\\\"(?i)(?<=^|\\\\\\\\s)(#)\\\\\\\\s(?=[[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff},. \\\\\\\\t?!-][^\\\\\\\\x{00}-\\\\\\\\x{7f}]]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"name\\\":\\\"comment.line.number-sign.php\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*(\\\\\\\"?)(BLADE)(\\\\\\\\2)(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"text.html.php.blade\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\3)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.php.blade\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(?i)(<<<)\\\\\\\\s*(\\\\\\\"?)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]+[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)(\\\\\\\\2)(\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\3)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]}]},\\\"inheritance-single\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(?=\\\\\\\\\\\\\\\\?[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*\\\\\\\\\\\\\\\\)\\\",\\\"end\\\":\\\"(?i)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)?(?=[^a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace\\\"}]},{\\\"include\\\":\\\"#class-builtin\\\"},{\\\"include\\\":\\\"#namespace\\\"},{\\\"match\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*\\\",\\\"name\\\":\\\"entity.other.inherited-class.php\\\"}]},\\\"instantiation\\\":{\\\"begin\\\":\\\"(?i)(new)\\\\\\\\s+(?!class\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.new.php\\\"}},\\\"end\\\":\\\"(?i)(?=[^a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(parent|static|self)(?![a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"name\\\":\\\"storage.type.php\\\"},{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#variable-name\\\"}]},\\\"interface-extends\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(extends)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.extends.php\\\"}},\\\"end\\\":\\\"(?i)(?={)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.classes.php\\\"},{\\\"include\\\":\\\"#inheritance-single\\\"}]}]},\\\"interpolation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-7]{1,3}\\\",\\\"name\\\":\\\"constant.character.escape.octal.php\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\x[0-9A-Fa-f]{1,2}\\\",\\\"name\\\":\\\"constant.character.escape.hex.php\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u{[0-9A-Fa-f]+}\\\",\\\"name\\\":\\\"constant.character.escape.unicode.php\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[nrtvef$\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"begin\\\":\\\"{(?=\\\\\\\\$.*?})\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#variable-name\\\"}]},\\\"interpolation_double_quoted\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"invoke-call\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?i)((\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"meta.function-call.invoke.php\\\"},\\\"match_statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s+(?=match\\\\\\\\b)\\\"},{\\\"begin\\\":\\\"\\\\\\\\bmatch\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.match.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.section.match-block.end.bracket.curly.php\\\"}},\\\"name\\\":\\\"meta.match-statement.php\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.match-expression.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.match-expression.end.bracket.round.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.section.match-block.begin.bracket.curly.php\\\"}},\\\"end\\\":\\\"(?=}|\\\\\\\\?>)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.definition.arrow.php\\\"},{\\\"include\\\":\\\"$self\\\"}]}]}]},\\\"named-arguments\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.variable.parameter.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.colon.php\\\"}},\\\"match\\\":\\\"(?i)(?<=^|\\\\\\\\(|,)\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\\\\\\s*(:)(?!:)\\\"},\\\"namespace\\\":{\\\"begin\\\":\\\"(?i)(?:(namespace)|[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)?(\\\\\\\\\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.language.namespace.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}},\\\"end\\\":\\\"(?i)(?![a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*\\\\\\\\\\\\\\\\)\\\",\\\"name\\\":\\\"support.other.namespace.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.php\\\"}]},\\\"nowdoc_interior\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(HTML)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"text.html\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\2)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(XML)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"text.xml\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\2)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'([DS]QL)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.sql\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\2)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sql\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(JAVASCRIPT|JS)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\2)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(JSON)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.json\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\2)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(CSS)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\2)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(REGEXP?)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"string.regexp.nowdoc.php\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\2)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\){1,2}[.$^\\\\\\\\[\\\\\\\\]{}]\\\",\\\"name\\\":\\\"constant.character.escape.regex.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repitition.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repitition.php\\\"}},\\\"match\\\":\\\"({)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repitition.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?\\\\\\\\])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.character-class.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\'\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"}]},{\\\"match\\\":\\\"[$^+*]\\\",\\\"name\\\":\\\"keyword.operator.regexp.php\\\"},{\\\"begin\\\":\\\"(?i)(?<=^|\\\\\\\\s)(#)\\\\\\\\s(?=[[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff},. \\\\\\\\t?!-][^\\\\\\\\x{00}-\\\\\\\\x{7f}]]*$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"end\\\":\\\"$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.php\\\"}},\\\"name\\\":\\\"comment.line.number-sign.php\\\"}]},{\\\"begin\\\":\\\"(<<<)\\\\\\\\s*'(BLADE)'(\\\\\\\\s*)$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"contentName\\\":\\\"text.html.php.blade\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\2)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.php\\\"},\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}},\\\"name\\\":\\\"meta.embedded.php.blade\\\"},{\\\"begin\\\":\\\"(?i)(<<<)\\\\\\\\s*'([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]+[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)'(\\\\\\\\s*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.trailing-whitespace.php\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\2)(?![A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.nowdoc.php\\\"}}}]},\\\"null_coalescing\\\":{\\\"match\\\":\\\"\\\\\\\\?\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.null-coalescing.php\\\"},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"0[xX][0-9a-fA-F]+(?:_[0-9a-fA-F]+)*\\\",\\\"name\\\":\\\"constant.numeric.hex.php\\\"},{\\\"match\\\":\\\"0[bB][01]+(?:_[01]+)*\\\",\\\"name\\\":\\\"constant.numeric.binary.php\\\"},{\\\"match\\\":\\\"0[oO][0-7]+(?:_[0-7]+)*\\\",\\\"name\\\":\\\"constant.numeric.octal.php\\\"},{\\\"match\\\":\\\"0(?:_?[0-7]+)+\\\",\\\"name\\\":\\\"constant.numeric.octal.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.period.php\\\"}},\\\"match\\\":\\\"(?:(?:[0-9]+(?:_[0-9]+)*)?(\\\\\\\\.)[0-9]+(?:_[0-9]+)*(?:[eE][+-]?[0-9]+(?:_[0-9]+)*)?|[0-9]+(?:_[0-9]+)*(\\\\\\\\.)(?:[0-9]+(?:_[0-9]+)*)?(?:[eE][+-]?[0-9]+(?:_[0-9]+)*)?|[0-9]+(?:_[0-9]+)*[eE][+-]?[0-9]+(?:_[0-9]+)*)\\\",\\\"name\\\":\\\"constant.numeric.decimal.php\\\"},{\\\"match\\\":\\\"0|[1-9](?:_?[0-9]+)*\\\",\\\"name\\\":\\\"constant.numeric.decimal.php\\\"}]},\\\"object\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\??->)\\\\\\\\s*(\\\\\\\\$?{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(?i)(\\\\\\\\??->)\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.method-call.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#named-arguments\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.property.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\??->)\\\\\\\\s*((\\\\\\\\$+)?[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)?\\\"}]},\\\"parameter-default-types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#string-backtick\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.operator.key.php\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.php\\\"},{\\\"match\\\":\\\"&(?=\\\\\\\\s*\\\\\\\\$)\\\",\\\"name\\\":\\\"storage.modifier.reference.php\\\"},{\\\"begin\\\":\\\"(array)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.construct.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.array.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-default-types\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#instantiation\\\"},{\\\"begin\\\":\\\"(?xi)\\\\n(?=[a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]+\\\\n (::)\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)?\\\\n)\\\",\\\"end\\\":\\\"(?i)(::)\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.class.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#class-name\\\"}]},{\\\"include\\\":\\\"#constants\\\"}]},\\\"php-types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.nullable-type.php\\\"},{\\\"match\\\":\\\"[|&]\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(null|int|float|bool|string|array|object|callable|iterable|true|false|mixed|void)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.type.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(parent|self)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.php\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.type.begin.bracket.round.php\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.definition.type.end.bracket.round.php\\\"},{\\\"include\\\":\\\"#class-name\\\"}]},\\\"php_doc\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^(?!\\\\\\\\s*\\\\\\\\*).*?(?:(?=\\\\\\\\*\\\\\\\\/)|$\\\\\\\\n?)\\\",\\\"name\\\":\\\"invalid.illegal.missing-asterisk.phpdoc.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.wrong-access-type.phpdoc.php\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\*\\\\\\\\s*(@access)\\\\\\\\s+((public|private|protected)|(.+))\\\\\\\\s*$\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.underline.link.php\\\"}},\\\"match\\\":\\\"(@xlink)\\\\\\\\s+(.+)\\\\\\\\s*$\\\"},{\\\"begin\\\":\\\"(@(?:global|param|property(-(read|write))?|return|throws|var))\\\\\\\\s+(?=[?A-Za-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]|\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"}},\\\"contentName\\\":\\\"meta.other.type.phpdoc.php\\\",\\\"end\\\":\\\"(?=\\\\\\\\s|\\\\\\\\*/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#php_doc_types_array_multiple\\\"},{\\\"include\\\":\\\"#php_doc_types_array_single\\\"},{\\\"include\\\":\\\"#php_doc_types\\\"}]},{\\\"match\\\":\\\"@(api|abstract|author|category|copyright|example|global|inherit[Dd]oc|internal|license|link|method|property(-(read|write))?|package|param|return|see|since|source|static|subpackage|throws|todo|var|version|uses|deprecated|final|ignore)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.phpdoc.php\\\"}},\\\"match\\\":\\\"{(@(link|inherit[Dd]oc)).+?}\\\",\\\"name\\\":\\\"meta.tag.inline.phpdoc.php\\\"}]},\\\"php_doc_types\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.nullable-type.php\\\"},{\\\"match\\\":\\\"\\\\\\\\b(string|integer|int|boolean|bool|float|double|object|mixed|array|resource|void|null|callback|false|true|self|static)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.type.php\\\"},{\\\"include\\\":\\\"#class-name\\\"},{\\\"match\\\":\\\"[|&]\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.type.begin.bracket.round.php\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.definition.type.end.bracket.round.php\\\"}]}},\\\"match\\\":\\\"(?i)\\\\\\\\??[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]*([|&]\\\\\\\\??[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]*)*\\\"},\\\"php_doc_types_array_multiple\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.begin.bracket.round.phpdoc.php\\\"}},\\\"end\\\":\\\"(\\\\\\\\))(\\\\\\\\[\\\\\\\\])|(?=\\\\\\\\*/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.type.end.bracket.round.phpdoc.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.array.phpdoc.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#php_doc_types_array_multiple\\\"},{\\\"include\\\":\\\"#php_doc_types_array_single\\\"},{\\\"include\\\":\\\"#php_doc_types\\\"},{\\\"match\\\":\\\"[|&]\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"}]},\\\"php_doc_types_array_single\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#php_doc_types\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.array.phpdoc.php\\\"}},\\\"match\\\":\\\"(?i)([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]*)(\\\\\\\\[\\\\\\\\])\\\"},\\\"regex-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"/(?=(\\\\\\\\\\\\\\\\.|[^\\\\\\\"/])++/[imsxeADSUXu]*\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"(/)([imsxeADSUXu]*)(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.regexp.double-quoted.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\){1,2}[.$^\\\\\\\\[\\\\\\\\]{}]\\\",\\\"name\\\":\\\"constant.character.escape.regex.php\\\"},{\\\"include\\\":\\\"#interpolation_double_quoted\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"}},\\\"match\\\":\\\"({)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repetition.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?\\\\\\\\])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.character-class.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation_double_quoted\\\"}]},{\\\"match\\\":\\\"[$^+*]\\\",\\\"name\\\":\\\"keyword.operator.regexp.php\\\"}]},\\\"regex-single-quoted\\\":{\\\"begin\\\":\\\"'/(?=(\\\\\\\\\\\\\\\\(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\']?|[^'])|.)|[^'/])++/[imsxeADSUXu]*')\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"(/)([imsxeADSUXu]*)(')\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.regexp.single-quoted.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single_quote_regex_escape\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.php\\\"}},\\\"match\\\":\\\"({)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repetition.php\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?\\\\\\\\])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.php\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.regexp.character-class.php\\\"},{\\\"match\\\":\\\"[$^+*]\\\",\\\"name\\\":\\\"keyword.operator.regexp.php\\\"}]},\\\"scope-resolution\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(self|static|parent)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.php\\\"},{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#variable-name\\\"}]}},\\\"match\\\":\\\"([A-Za-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\][A-Za-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}\\\\\\\\\\\\\\\\]*)(?=\\\\\\\\s*::)\\\"},{\\\"begin\\\":\\\"(?i)(::)\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.bracket.round.php\\\"}},\\\"name\\\":\\\"meta.method-call.static.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#named-arguments\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.class.php\\\"}},\\\"match\\\":\\\"(?i)(::)\\\\\\\\s*(class)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.class.php\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.other.class.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n(::)\\\\\\\\s*\\\\n(?:\\\\n ((\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*) # Variable\\\\n |\\\\n ([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*) # Constant\\\\n)?\\\"}]},\\\"single_quote_regex_escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:\\\\\\\\\\\\\\\\(?:\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\']?|[^'])|.)\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},\\\"sql-string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND|WITH)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"contentName\\\":\\\"source.sql.embedded.php\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.double.sql.php\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.sql\\\"}},\\\"match\\\":\\\"(#)(\\\\\\\\\\\\\\\\\\\\\\\"|[^\\\\\\\"])*(?=\\\\\\\"|$)\\\",\\\"name\\\":\\\"comment.line.number-sign.sql\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.sql\\\"}},\\\"match\\\":\\\"(--)(\\\\\\\\\\\\\\\\\\\\\\\"|[^\\\\\\\"])*(?=\\\\\\\"|$)\\\",\\\"name\\\":\\\"comment.line.double-dash.sql\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\"`']\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"match\\\":\\\"'(?=((\\\\\\\\\\\\\\\\')|[^'\\\\\\\"])*(\\\\\\\"|$))\\\",\\\"name\\\":\\\"string.quoted.single.unclosed.sql\\\"},{\\\"match\\\":\\\"`(?=((\\\\\\\\\\\\\\\\`)|[^`\\\\\\\"])*(\\\\\\\"|$))\\\",\\\"name\\\":\\\"string.quoted.other.backtick.unclosed.sql\\\"},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation_double_quoted\\\"}]},{\\\"begin\\\":\\\"`\\\",\\\"end\\\":\\\"`\\\",\\\"name\\\":\\\"string.quoted.other.backtick.sql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation_double_quoted\\\"}]},{\\\"include\\\":\\\"#interpolation_double_quoted\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},\\\"sql-string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\\\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND|WITH)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"contentName\\\":\\\"source.sql.embedded.php\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.single.sql.php\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.sql\\\"}},\\\"match\\\":\\\"(#)(\\\\\\\\\\\\\\\\'|[^'])*(?='|$)\\\",\\\"name\\\":\\\"comment.line.number-sign.sql\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.sql\\\"}},\\\"match\\\":\\\"(--)(\\\\\\\\\\\\\\\\'|[^'])*(?='|$)\\\",\\\"name\\\":\\\"comment.line.double-dash.sql\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\'`\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"match\\\":\\\"`(?=((\\\\\\\\\\\\\\\\`)|[^`'])*('|$))\\\",\\\"name\\\":\\\"string.quoted.other.backtick.unclosed.sql\\\"},{\\\"match\\\":\\\"\\\\\\\"(?=((\\\\\\\\\\\\\\\\\\\\\\\")|[^\\\\\\\"'])*('|$))\\\",\\\"name\\\":\\\"string.quoted.double.unclosed.sql\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},\\\"string-backtick\\\":{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.interpolated.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\`\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},\\\"string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.double.php\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation_double_quoted\\\"}]},\\\"string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.php\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.php\\\"}},\\\"name\\\":\\\"string.quoted.single.php\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\']\\\",\\\"name\\\":\\\"constant.character.escape.php\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regex-double-quoted\\\"},{\\\"include\\\":\\\"#sql-string-double-quoted\\\"},{\\\"include\\\":\\\"#string-double-quoted\\\"},{\\\"include\\\":\\\"#regex-single-quoted\\\"},{\\\"include\\\":\\\"#sql-string-single-quoted\\\"},{\\\"include\\\":\\\"#string-single-quoted\\\"}]},\\\"support\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?xi)\\\\n\\\\\\\\b\\\\napc_(\\\\n store|sma_info|compile_file|clear_cache|cas|cache_info|inc|dec|define_constants|delete(_file)?|\\\\n exists|fetch|load_constants|add|bin_(dump|load)(file)?\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.apc.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n shuffle|sizeof|sort|next|nat(case)?sort|count|compact|current|in_array|usort|uksort|uasort|\\\\n pos|prev|end|each|extract|ksort|key(_exists)?|krsort|list|asort|arsort|rsort|reset|range|\\\\n array(_(shift|sum|splice|search|slice|chunk|change_key_case|count_values|column|combine|\\\\n (diff|intersect)(_(u)?(key|assoc))?|u(diff|intersect)(_(u)?assoc)?|unshift|unique|\\\\n pop|push|pad|product|values|keys|key_exists|filter|fill(_keys)?|flip|walk(_recursive)?|\\\\n reduce|replace(_recursive)?|reverse|rand|multisort|merge(_recursive)?|map)?)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.array.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n show_source|sys_getloadavg|sleep|highlight_(file|string)|constant|connection_(aborted|status)|\\\\n time_(nanosleep|sleep_until)|ignore_user_abort|die|define(d)?|usleep|uniqid|unpack|__halt_compiler|\\\\n php_(check_syntax|strip_whitespace)|pack|eval|exit|get_browser\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.basic_functions.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bbc(scale|sub|sqrt|comp|div|pow(mod)?|add|mod|mul)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.bcmath.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bblenc_encrypt\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.blenc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bbz(compress|close|open|decompress|errstr|errno|error|flush|write|read)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.bz2.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n (French|Gregorian|Jewish|Julian)ToJD|cal_(to_jd|info|days_in_month|from_jd)|unixtojd|\\\\n jdto(unix|jewish)|easter_(date|days)|JD(MonthName|To(Gregorian|Julian|French)|DayOfWeek)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.calendar.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n class_alias|all_user_method(_array)?|is_(a|subclass_of)|__autoload|(class|interface|method|property|trait)_exists|\\\\n get_(class(_(vars|methods))?|(called|parent)_class|object_vars|declared_(classes|interfaces|traits))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.classobj.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n com_(create_guid|print_typeinfo|event_sink|load_typelib|get_active_object|message_pump)|\\\\n variant_(sub|set(_type)?|not|neg|cast|cat|cmp|int|idiv|imp|or|div|date_(from|to)_timestamp|\\\\n pow|eqv|fix|and|add|abs|round|get_type|xor|mod|mul)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.com.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(isset|unset|eval|empty|list)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.construct.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(print|echo)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.construct.output.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bctype_(space|cntrl|digit|upper|punct|print|lower|alnum|alpha|graph|xdigit)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ctype.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\ncurl_(\\\\n share_(close|init|setopt)|strerror|setopt(_array)?|copy_handle|close|init|unescape|pause|escape|\\\\n errno|error|exec|version|file_create|reset|getinfo|\\\\n multi_(strerror|setopt|select|close|init|info_read|(add|remove)_handle|getcontent|exec)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.curl.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n strtotime|str[fp]time|checkdate|time|timezone_name_(from_abbr|get)|idate|\\\\n timezone_((location|offset|transitions|version)_get|(abbreviations|identifiers)_list|open)|\\\\n date(_(sun(rise|set)|sun_info|sub|create(_(immutable_)?from_format)?|timestamp_(get|set)|timezone_(get|set)|time_set|\\\\n isodate_set|interval_(create_from_date_string|format)|offset_get|diff|default_timezone_(get|set)|date_set|\\\\n parse(_from_format)?|format|add|get_last_errors|modify))?|\\\\n localtime|get(date|timeofday)|gm(strftime|date|mktime)|microtime|mktime\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.datetime.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bdba_(sync|handlers|nextkey|close|insert|optimize|open|delete|popen|exists|key_split|firstkey|fetch|list|replace)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.dba.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bdbx_(sort|connect|compare|close|escape_string|error|query|fetch_row)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.dbx.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(scandir|chdir|chroot|closedir|opendir|dir|rewinddir|readdir|getcwd)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.dir.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\neio_(\\\\n sync(fs)?|sync_file_range|symlink|stat(vfs)?|sendfile|set_min_parallel|set_max_(idle|poll_(reqs|time)|parallel)|\\\\n seek|n(threads|op|pending|reqs|ready)|chown|chmod|custom|close|cancel|truncate|init|open|dup2|unlink|utime|poll|\\\\n event_loop|f(sync|stat(vfs)?|chown|chmod|truncate|datasync|utime|allocate)|write|lstat|link|rename|realpath|\\\\n read(ahead|dir|link)?|rmdir|get_(event_stream|last_error)|grp(_(add|cancel|limit))?|mknod|mkdir|busy\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.eio.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nenchant_(\\\\n dict_(store_replacement|suggest|check|is_in_session|describe|quick_check|add_to_(personal|session)|get_error)|\\\\n broker_(set_ordering|init|dict_exists|describe|free(_dict)?|list_dicts|request_(pwl_)?dict|get_error)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.enchant.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(split(i)?|sql_regcase|ereg(i)?(_replace)?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ereg.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((restore|set)_(error_handler|exception_handler)|trigger_error|debug_(print_)?backtrace|user_error|error_(log|reporting|get_last))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.errorfunc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(shell_exec|system|passthru|proc_(nice|close|terminate|open|get_status)|escapeshell(arg|cmd)|exec)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.exec.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(exif_(thumbnail|tagname|imagetype|read_data)|read_exif_data)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.exif.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nfann_(\\\\n (duplicate|length|merge|shuffle|subset)_train_data|scale_(train(_data)?|(input|output)(_train_data)?)|\\\\n set_(scaling_params|sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|\\\\n cascade_(num_candidate_groups|candidate_(change_fraction|limit|stagnation_epochs)|\\\\n output_(change_fraction|stagnation_epochs)|weight_multiplier|activation_(functions|steepnesses)|\\\\n (max|min)_(cand|out)_epochs)|\\\\n callback|training_algorithm|train_(error|stop)_function|(input|output)_scaling_params|error_log|\\\\n quickprop_(decay|mu)|weight(_array)?|learning_(momentum|rate)|bit_fail_limit|\\\\n activation_(function|steepness)(_(hidden|layer|output))?|\\\\n rprop_((decrease|increase)_factor|delta_(max|min|zero)))|\\\\n save(_train)?|num_(input|output)_train_data|copy|clear_scaling_params|cascadetrain_on_(file|data)|\\\\n create_((sparse|shortcut|standard)(_array)?|train(_from_callback)?|from_file)|\\\\n test(_data)?|train(_(on_(file|data)|epoch))?|init_weights|descale_(input|output|train)|destroy(_train)?|\\\\n print_error|run|reset_(MSE|err(no|str))|read_train_from_file|randomize_weights|\\\\n get_(sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|num_(input|output|layers)|\\\\n network_type|MSE|connection_(array|rate)|bias_array|bit_fail(_limit)?|\\\\n cascade_(num_(candidates|candidate_groups)|(candidate|output)_(change_fraction|limit|stagnation_epochs)|\\\\n weight_multiplier|activation_(functions|steepnesses)(_count)?|(max|min)_(cand|out)_epochs)|\\\\n total_(connections|neurons)|training_algorithm|train_(error|stop)_function|err(no|str)|\\\\n quickprop_(decay|mu)|learning_(momentum|rate)|layer_array|activation_(function|steepness)|\\\\n rprop_((decrease|increase)_factor|delta_(max|min|zero)))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.fann.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n symlink|stat|set_file_buffer|chown|chgrp|chmod|copy|clearstatcache|touch|tempnam|tmpfile|\\\\n is_(dir|(uploaded_)?file|executable|link|readable|writ(e)?able)|disk_(free|total)_space|diskfreespace|\\\\n dirname|delete|unlink|umask|pclose|popen|pathinfo|parse_ini_(file|string)|fscanf|fstat|fseek|fnmatch|\\\\n fclose|ftell|ftruncate|file(size|[acm]time|type|inode|owner|perms|group)?|file_(exists|(get|put)_contents)|\\\\n f(open|puts|putcsv|passthru|eof|flush|write|lock|read|gets(s)?|getc(sv)?)|lstat|lchown|lchgrp|link(info)?|\\\\n rename|rewind|read(file|link)|realpath(_cache_(get|size))?|rmdir|glob|move_uploaded_file|mkdir|basename\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.file.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(finfo_(set_flags|close|open|file|buffer)|mime_content_type)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.fileinfo.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bfilter_(has_var|input(_array)?|id|var(_array)?|list)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.filter.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bfastcgi_finish_request\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.fpm.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(call_user_(func|method)(_array)?|create_function|unregister_tick_function|forward_static_call(_array)?|function_exists|func_(num_args|get_arg(s)?)|register_(shutdown|tick)_function|get_defined_functions)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.funchand.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b((n)?gettext|textdomain|d((n)?gettext|c(n)?gettext)|bind(textdomain|_textdomain_codeset))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.gettext.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\ngmp_(\\\\n scan[01]|strval|sign|sub|setbit|sqrt(rem)?|hamdist|neg|nextprime|com|clrbit|cmp|testbit|\\\\n intval|init|invert|import|or|div(exact)?|div_(q|qr|r)|jacobi|popcount|pow(m)?|perfect_square|\\\\n prob_prime|export|fact|legendre|and|add|abs|root(rem)?|random(_(bits|range))?|gcd(ext)?|xor|mod|mul\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.gmp.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bhash(_(hmac(_file)?|copy|init|update(_(file|stream))?|pbkdf2|equals|file|final|algos))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.hash.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n http_(support|send_(status|stream|content_(disposition|type)|data|file|last_modified)|head|\\\\n negotiate_(charset|content_type|language)|chunked_decode|cache_(etag|last_modified)|throttle|\\\\n inflate|deflate|date|post_(data|fields)|put_(data|file|stream)|persistent_handles_(count|clean|ident)|\\\\n parse_(cookie|headers|message|params)|redirect|request(_(method_(exists|name|(un)?register)|body_encode))?|\\\\n get(_request_(headers|body(_stream)?))?|match_(etag|modified|request_header)|build_(cookie|str|url))|\\\\n ob_(etag|deflate|inflate)handler\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.http.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(iconv(_(str(pos|len|rpos)|substr|(get|set)_encoding|mime_(decode(_headers)?|encode)))?|ob_iconv_handler)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.iconv.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\biis_((start|stop)_(service|server)|set_(script_map|server_rights|dir_security|app_settings)|(add|remove)_server|get_(script_map|service_state|server_(rights|by_(comment|path))|dir_security))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.iisfunc.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n iptc(embed|parse)|(jpeg|png)2wbmp|gd_info|getimagesize(fromstring)?|\\\\n image(s[xy]|scale|(char|string)(up)?|set(style|thickness|tile|interpolation|pixel|brush)|savealpha|\\\\n convolution|copy(resampled|resized|merge(gray)?)?|colors(forindex|total)|\\\\n color(set|closest(alpha|hwb)?|transparent|deallocate|(allocate|exact|resolve)(alpha)?|at|match)|\\\\n crop(auto)?|create(truecolor|from(string|jpeg|png|wbmp|webp|gif|gd(2(part)?)?|xpm|xbm))?|\\\\n types|ttf(bbox|text)|truecolortopalette|istruecolor|interlace|2wbmp|destroy|dashedline|jpeg|\\\\n _type_to_(extension|mime_type)|ps(slantfont|text|(encode|extend|free|load)font|bbox)|png|polygon|\\\\n palette(copy|totruecolor)|ellipse|ft(text|bbox)|filter|fill|filltoborder|\\\\n filled(arc|ellipse|polygon|rectangle)|font(height|width)|flip|webp|wbmp|line|loadfont|layereffect|\\\\n antialias|affine(matrix(concat|get))?|alphablending|arc|rotate|rectangle|gif|gd(2)?|gammacorrect|\\\\n grab(screen|window)|xbm)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.image.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n sys_get_temp_dir|set_(time_limit|include_path|magic_quotes_runtime)|cli_(get|set)_process_title|\\\\n ini_(alter|get(_all)?|restore|set)|zend_(thread_id|version|logo_guid)|dl|php(credits|info|version)|\\\\n php_(sapi_name|ini_(scanned_files|loaded_file)|uname|logo_guid)|putenv|extension_loaded|version_compare|\\\\n assert(_options)?|restore_include_path|gc_(collect_cycles|disable|enable(d)?)|getopt|\\\\n get_(cfg_var|current_user|defined_constants|extension_funcs|include_path|included_files|loaded_extensions|\\\\n magic_quotes_(gpc|runtime)|required_files|resources)|\\\\n get(env|lastmod|rusage|my(inode|[gup]id))|\\\\n memory_get_(peak_)?usage|main|magic_quotes_runtime\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.info.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nibase_(\\\\n set_event_handler|service_(attach|detach)|server_info|num_(fields|params)|name_result|connect|\\\\n commit(_ret)?|close|trans|delete_user|drop_db|db_info|pconnect|param_info|prepare|err(code|msg)|\\\\n execute|query|field_info|fetch_(assoc|object|row)|free_(event_handler|query|result)|wait_event|\\\\n add_user|affected_rows|rollback(_ret)?|restore|gen_id|modify_user|maintain_db|backup|\\\\n blob_(cancel|close|create|import|info|open|echo|add|get)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.interbase.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n normalizer_(normalize|is_normalized)|idn_to_(unicode|utf8|ascii)|\\\\n numfmt_(set_(symbol|(text_)?attribute|pattern)|create|(parse|format)(_currency)?|\\\\n get_(symbol|(text_)?attribute|pattern|error_(code|message)|locale))|\\\\n collator_(sort(_with_sort_keys)?|set_(attribute|strength)|compare|create|asort|\\\\n get_(strength|sort_key|error_(code|message)|locale|attribute))|\\\\n transliterator_(create(_(inverse|from_rules))?|transliterate|list_ids|get_error_(code|message))|\\\\n intl(cal|tz)_get_error_(code|message)|intl_(is_failure|error_name|get_error_(code|message))|\\\\n datefmt_(set_(calendar|lenient|pattern|timezone(_id)?)|create|is_lenient|parse|format(_object)?|localtime|\\\\n get_(calendar(_object)?|time(type|zone(_id)?)|datetype|pattern|error_(code|message)|locale))|\\\\n locale_(set_default|compose|canonicalize|parse|filter_matches|lookup|accept_from_http|\\\\n get_(script|display_(script|name|variant|language|region)|default|primary_language|keywords|all_variants|region))|\\\\n resourcebundle_(create|count|locales|get(_(error_(code|message)))?)|\\\\n grapheme_(str(i?str|r?i?pos|len)|substr|extract)|\\\\n msgfmt_(set_pattern|create|(format|parse)(_message)?|get_(pattern|error_(code|message)|locale))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.intl.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bjson_(decode|encode|last_error(_msg)?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.json.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nldap_(\\\\n start|tls|sort|search|sasl_bind|set_(option|rebind_proc)|(first|next)_(attribute|entry|reference)|\\\\n connect|control_paged_result(_response)?|count_entries|compare|close|t61_to_8859|8859_to_t61|\\\\n dn2ufn|delete|unbind|parse_(reference|result)|escape|errno|err2str|error|explode_dn|bind|\\\\n free_result|list|add|rename|read|get_(option|dn|entries|values(_len)?|attributes)|modify(_batch)?|\\\\n mod_(add|del|replace)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ldap.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\blibxml_(set_(streams_context|external_entity_loader)|clear_errors|disable_entity_loader|use_internal_errors|get_(errors|last_error))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.libxml.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(ezmlm_hash|mail)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mail.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n (a)?(cos|sin|tan)(h)?|sqrt|srand|hypot|hexdec|ceil|is_(nan|(in)?finite)|octdec|dec(hex|oct|bin)|deg2rad|\\\\n pi|pow|exp(m1)?|floor|fmod|lcg_value|log(1(p|0))?|atan2|abs|round|rand|rad2deg|getrandmax|\\\\n mt_(srand|rand|getrandmax)|max|min|bindec|base_convert\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.math.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nmb_(\\\\n str(cut|str|to(lower|upper)|istr|ipos|imwidth|pos|width|len|rchr|richr|ripos|rpos)|\\\\n substitute_character|substr(_count)?|split|send_mail|http_(input|output)|check_encoding|\\\\n convert_(case|encoding|kana|variables)|internal_encoding|output_handler|decode_(numericentity|mimeheader)|\\\\n detect_(encoding|order)|parse_str|preferred_mime_name|encoding_aliases|encode_(numericentity|mimeheader)|\\\\n ereg(i(_replace)?)?|ereg_(search(_(get(pos|regs)|init|regs|(set)?pos))?|replace(_callback)?|match)|\\\\n list_encodings|language|regex_(set_options|encoding)|get_info\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mbstring.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n mcrypt_(\\\\n cfb|create_iv|cbc|ofb|decrypt|encrypt|ecb|list_(algorithms|modes)|generic(_((de)?init|end))?|\\\\n enc_(self_test|is_block_(algorithm|algorithm_mode|mode)|\\\\n get_(supported_key_sizes|(block|iv|key)_size|(algorithms|modes)_name))|\\\\n get_(cipher_name|(block|iv|key)_size)|\\\\n module_(close|self_test|is_block_(algorithm|algorithm_mode|mode)|open|\\\\n get_(supported_key_sizes|algo_(block|key)_size)))|\\\\n mdecrypt_generic\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mcrypt.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmemcache_debug\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.memcache.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmhash(_(count|keygen_s2k|get_(hash_name|block_size)))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mhash.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(log_(cmd_(insert|delete|update)|killcursor|write_batch|reply|getmore)|bson_(decode|encode))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mongo.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nmysql_(\\\\n stat|set_charset|select_db|num_(fields|rows)|connect|client_encoding|close|create_db|escape_string|\\\\n thread_id|tablename|insert_id|info|data_seek|drop_db|db_(name|query)|unbuffered_query|pconnect|ping|\\\\n errno|error|query|field_(seek|name|type|table|flags|len)|fetch_(object|field|lengths|assoc|array|row)|\\\\n free_result|list_(tables|dbs|processes|fields)|affected_rows|result|real_escape_string|\\\\n get_(client|host|proto|server)_info\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysql.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nmysqli_(\\\\n ssl_set|store_result|stat|send_(query|long_data)|set_(charset|opt|local_infile_(default|handler))|\\\\n stmt_(store_result|send_long_data|next_result|close|init|data_seek|prepare|execute|fetch|free_result|\\\\n attr_(get|set)|result_metadata|reset|get_(result|warnings)|more_results|bind_(param|result))|\\\\n select_db|slave_query|savepoint|next_result|change_user|character_set_name|connect|commit|\\\\n client_encoding|close|thread_safe|init|options|(enable|disable)_(reads_from_master|rpl_parse)|\\\\n dump_debug_info|debug|data_seek|use_result|ping|poll|param_count|prepare|escape_string|execute|\\\\n embedded_server_(start|end)|kill|query|field_seek|free_result|autocommit|rollback|report|refresh|\\\\n fetch(_(object|fields|field(_direct)?|assoc|all|array|row))?|rpl_(parse_enabled|probe|query_type)|\\\\n release_savepoint|reap_async_query|real_(connect|escape_string|query)|more_results|multi_query|\\\\n get_(charset|connection_stats|client_(stats|info|version)|cache_stats|warnings|links_stats|metadata)|\\\\n master_query|bind_(param|result)|begin_transaction\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqli.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_memcache_(set|get_config)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-memcache.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_ms_(set_(user_pick_server|qos)|dump_servers|query_is_select|fabric_select_(shard|global)|get_(stats|last_(used_connection|gtid))|xa_(commit|rollback|gc|begin)|match_wild)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-ms.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_qc_(set_(storage_handler|cache_condition|is_select|user_handlers)|clear_cache|get_(normalized_query_trace_log|core_stats|cache_info|query_trace_log|available_handlers))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-qc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bmysqlnd_uh_(set_(statement|connection)_proxy|convert_to_mysqlnd)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.mysqlnd-uh.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n syslog|socket_(set_(blocking|timeout)|get_status)|set(raw)?cookie|http_response_code|openlog|\\\\n headers_(list|sent)|header(_(register_callback|remove))?|checkdnsrr|closelog|inet_(ntop|pton)|ip2long|\\\\n openlog|dns_(check_record|get_(record|mx))|define_syslog_variables|(p)?fsockopen|long2ip|\\\\n get(servby(name|port)|host(name|by(name(l)?|addr))|protoby(name|number)|mxrr)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.network.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bnsapi_(virtual|response_headers|request_headers)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.nsapi.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n oci(statementtype|setprefetch|serverversion|savelob(file)?|numcols|new(collection|cursor|descriptor)|nlogon|\\\\n column(scale|size|name|type(raw)?|isnull|precision)|coll(size|trim|assign(elem)?|append|getelem|max)|commit|\\\\n closelob|cancel|internaldebug|definebyname|plogon|parse|error|execute|fetch(statement|into)?|\\\\n free(statement|collection|cursor|desc)|write(temporarylob|lobtofile)|loadlob|log(on|off)|rowcount|rollback|\\\\n result|bindbyname)|\\\\n oci_(statement_type|set_(client_(info|identifier)|prefetch|edition|action|module_name)|server_version|\\\\n num_(fields|rows)|new_(connect|collection|cursor|descriptor)|connect|commit|client_version|close|cancel|\\\\n internal_debug|define_by_name|pconnect|password_change|parse|error|execute|bind_(array_)?by_name|\\\\n field_(scale|size|name|type(_raw)?|is_null|precision)|fetch(_(object|assoc|all|array|row))?|\\\\n free_(statement|descriptor)|lob_(copy|is_equal)|rollback|result|get_implicit_resultset)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.oci8.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bopcache_(compile_file|invalidate|reset|get_(status|configuration))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.opcache.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nopenssl_(\\\\n sign|spki_(new|export(_challenge)?|verify)|seal|csr_(sign|new|export(_to_file)?|get_(subject|public_key))|\\\\n cipher_iv_length|open|dh_compute_key|digest|decrypt|public_(decrypt|encrypt)|encrypt|error_string|\\\\n pkcs12_(export(_to_file)?|read)|pkcs7_(sign|decrypt|encrypt|verify)|verify|free_key|random_pseudo_bytes|\\\\n pkey_(new|export(_to_file)?|free|get_(details|public|private))|private_(decrypt|encrypt)|pbkdf2|\\\\n get_((cipher|md)_methods|cert_locations|(public|private)key)|\\\\n x509_(check_private_key|checkpurpose|parse|export(_to_file)?|fingerprint|free|read)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.openssl.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n output_(add_rewrite_var|reset_rewrite_vars)|flush|\\\\n ob_(start|clean|implicit_flush|end_(clean|flush)|flush|list_handlers|gzhandler|\\\\n get_(status|contents|clean|flush|length|level))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.output.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bpassword_(hash|needs_rehash|verify|get_info)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.password.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\npcntl_(\\\\n strerror|signal(_dispatch)?|sig(timedwait|procmask|waitinfo)|setpriority|errno|exec|fork|\\\\n w(stopsig|termsig|if(stopped|signaled|exited))|wait(pid)?|alarm|getpriority|get_last_error\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.pcntl.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\npg_(\\\\n socket|send_(prepare|execute|query(_params)?)|set_(client_encoding|error_verbosity)|select|host|\\\\n num_(fields|rows)|consume_input|connection_(status|reset|busy)|connect(_poll)?|convert|copy_(from|to)|\\\\n client_encoding|close|cancel_query|tty|transaction_status|trace|insert|options|delete|dbname|untrace|\\\\n unescape_bytea|update|pconnect|ping|port|put_line|parameter_status|prepare|version|query(_params)?|\\\\n escape_(string|identifier|literal|bytea)|end_copy|execute|flush|free_result|last_(notice|error|oid)|\\\\n field_(size|num|name|type(_oid)?|table|is_null|prtlen)|affected_rows|result_(status|seek|error(_field)?)|\\\\n fetch_(object|assoc|all(_columns)?|array|row|result)|get_(notify|pid|result)|meta_data|\\\\n lo_(seek|close|create|tell|truncate|import|open|unlink|export|write|read(_all)?)|\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.pgsql.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(virtual|getallheaders|apache_((get|set)env|note|child_terminate|lookup_uri|response_headers|reset_timeout|request_headers|get_(version|modules)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_apache.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bdom_import_simplexml\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_dom.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nftp_(\\\\n ssl_connect|systype|site|size|set_option|nlist|nb_(continue|f?(put|get))|ch(dir|mod)|connect|cdup|close|\\\\n delete|put|pwd|pasv|exec|quit|f(put|get)|login|alloc|rename|raw(list)?|rmdir|get(_option)?|mdtm|mkdir\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_ftp.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nimap_(\\\\n (create|delete|list|rename|scan)(mailbox)?|status|sort|subscribe|set_quota|set(flag_full|acl)|search|savebody|\\\\n num_(recent|msg)|check|close|clearflag_full|thread|timeout|open|header(info)?|headers|append|alerts|reopen|\\\\n 8bit|unsubscribe|undelete|utf7_(decode|encode)|utf8|uid|ping|errors|expunge|qprint|gc|\\\\n fetch(structure|header|text|mime|body)|fetch_overview|lsub|list(scan|subscribed)|last_error|\\\\n rfc822_(parse_(headers|adrlist)|write_address)|get(subscribed|acl|mailboxes)|get_quota(root)?|\\\\n msgno|mime_header_decode|mail_(copy|compose|move)|mail|mailboxmsginfo|binary|body(struct)?|base64\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_imap.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nmssql_(\\\\n select_db|num_(fields|rows)|next_result|connect|close|init|data_seek|pconnect|execute|query|\\\\n field_(seek|name|type|length)|fetch_(object|field|assoc|array|row|batch)|free_(statement|result)|\\\\n rows_affected|result|guid_string|get_last_message|min_(error|message)_severity|bind\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_mssql.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nodbc_(\\\\n statistics|specialcolumns|setoption|num_(fields|rows)|next_result|connect|columns|columnprivileges|commit|\\\\n cursor|close(_all)?|tables|tableprivileges|do|data_source|pconnect|primarykeys|procedures|procedurecolumns|\\\\n prepare|error(msg)?|exec(ute)?|field_(scale|num|name|type|precision|len)|foreignkeys|free_result|\\\\n fetch_(into|object|array|row)|longreadlen|autocommit|rollback|result(_all)?|gettypeinfo|binmode\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_odbc.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bpreg_(split|quote|filter|last_error|replace(_callback)?|grep|match(_all)?)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_pcre.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(spl_(classes|object_hash|autoload(_(call|unregister|extensions|functions|register))?)|class_(implements|uses|parents)|iterator_(count|to_array|apply))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_spl.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bzip_(close|open|entry_(name|compressionmethod|compressedsize|close|open|filesize|read)|read)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.php_zip.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nposix_(\\\\n strerror|set(s|e?u|[ep]?g)id|ctermid|ttyname|times|isatty|initgroups|uname|errno|kill|access|\\\\n get(sid|cwd|uid|pid|ppid|pwnam|pwuid|pgid|pgrp|euid|egid|login|rlimit|gid|grnam|groups|grgid)|\\\\n get_last_error|mknod|mkfifo\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.posix.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bset(thread|proc)title\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.proctitle.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\npspell_(\\\\n store_replacement|suggest|save_wordlist|new(_(config|personal))?|check|clear_session|\\\\n config_(save_repl|create|ignore|(data|dict)_dir|personal|runtogether|repl|mode)|add_to_(session|personal)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.pspell.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\breadline(_(completion_function|clear_history|callback_(handler_(install|remove)|read_char)|info|on_new_line|write_history|list_history|add_history|redisplay|read_history))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.readline.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\brecode(_(string|file))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.recode.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\brrd(c_disconnect|_(create|tune|info|update|error|version|first|fetch|last(update)?|restore|graph|xport))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.rrd.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n shm_((get|has|remove|put)_var|detach|attach|remove)|sem_(acquire|release|remove|get)|ftok|\\\\n msg_((get|remove|set|stat)_queue|send|queue_exists|receive)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sem.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nsession_(\\\\n status|start|set_(save_handler|cookie_params)|save_path|name|commit|cache_(expire|limiter)|\\\\n is_registered|id|destroy|decode|unset|unregister|encode|write_close|abort|reset|register(_shutdown)?|\\\\n regenerate_id|get_cookie_params|module_name\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.session.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bshmop_(size|close|open|delete|write|read)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.shmop.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bsimplexml_(import_dom|load_(string|file))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.simplexml.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n snmp(walk(oid)?|realwalk|get(next)?|set)|\\\\n snmp_(set_(valueretrieval|quick_print|enum_print|oid_(numeric_print|output_format))|read_mib|\\\\n get_(valueretrieval|quick_print))|\\\\n snmp[23]_(set|walk|real_walk|get(next)?)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.snmp.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(is_soap_fault|use_soap_error_handler)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.soap.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nsocket_(\\\\n shutdown|strerror|send(to|msg)?|set_((non)?block|option)|select|connect|close|clear_error|bind|\\\\n create(_(pair|listen))?|cmsg_space|import_stream|write|listen|last_error|accept|recv(from|msg)?|\\\\n read|get(peer|sock)name|get_option\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sockets.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nsqlite_(\\\\n single_query|seek|has_(more|prev)|num_(fields|rows)|next|changes|column|current|close|\\\\n create_(aggregate|function)|open|unbuffered_query|udf_(decode|encode)_binary|popen|prev|\\\\n escape_string|error_string|exec|valid|key|query|field_name|factory|\\\\n fetch_(string|single|column_types|object|all|array)|lib(encoding|version)|\\\\n last_(insert_rowid|error)|array_query|rewind|busy_timeout\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sqlite.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nsqlsrv_(\\\\n send_stream_data|server_info|has_rows|num_(fields|rows)|next_result|connect|configure|commit|\\\\n client_info|close|cancel|prepare|errors|execute|query|field_metadata|fetch(_(array|object))?|\\\\n free_stmt|rows_affected|rollback|get_(config|field)|begin_transaction\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sqlsrv.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nstats_(\\\\n harmonic_mean|covariance|standard_deviation|skew|\\\\n cdf_(noncentral_(chisquare|f)|negative_binomial|chisquare|cauchy|t|uniform|poisson|exponential|f|weibull|\\\\n logistic|laplace|gamma|binomial|beta)|\\\\n stat_(noncentral_t|correlation|innerproduct|independent_t|powersum|percentile|paired_t|gennch|binomial_coef)|\\\\n dens_(normal|negative_binomial|chisquare|cauchy|t|pmf_(hypergeometric|poisson|binomial)|exponential|f|\\\\n weibull|logistic|laplace|gamma|beta)|\\\\n den_uniform|variance|kurtosis|absolute_deviation|\\\\n rand_(setall|phrase_to_seeds|ranf|get_seeds|\\\\n gen_(noncentral_[ft]|noncenral_chisquare|normal|chisquare|t|int|\\\\n i(uniform|poisson|binomial(_negative)?)|exponential|f(uniform)?|gamma|beta))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.stats.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n set_socket_blocking|\\\\n stream_(socket_(shutdown|sendto|server|client|pair|enable_crypto|accept|recvfrom|get_name)|\\\\n set_(chunk_size|timeout|(read|write)_buffer|blocking)|select|notification_callback|supports_lock|\\\\n context_(set_(option|default|params)|create|get_(options|default|params))|copy_to_stream|is_local|\\\\n encoding|filter_(append|prepend|register|remove)|wrapper_((un)?register|restore)|\\\\n resolve_include_path|register_wrapper|get_(contents|transports|filters|wrappers|line|meta_data)|\\\\n bucket_(new|prepend|append|make_writeable)\\\\n )\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.streamsfuncs.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n money_format|md5(_file)?|metaphone|bin2hex|sscanf|sha1(_file)?|\\\\n str(str|c?spn|n(at)?(case)?cmp|chr|coll|(case)?cmp|to(upper|lower)|tok|tr|istr|pos|pbrk|len|rchr|ri?pos|rev)|\\\\n str_(getcsv|ireplace|pad|repeat|replace|rot13|shuffle|split|word_count)|\\\\n strip(c?slashes|os)|strip_tags|similar_text|soundex|substr(_(count|compare|replace))?|setlocale|\\\\n html(specialchars(_decode)?|entities)|html_entity_decode|hex2bin|hebrev(c)?|number_format|nl2br|nl_langinfo|\\\\n chop|chunk_split|chr|convert_(cyr_string|uu(decode|encode))|count_chars|crypt|crc32|trim|implode|ord|\\\\n uc(first|words)|join|parse_str|print(f)?|echo|explode|v?[fs]?printf|quoted_printable_(decode|encode)|\\\\n quotemeta|wordwrap|lcfirst|[lr]trim|localeconv|levenshtein|addc?slashes|get_html_translation_table\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.string.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nsybase_(\\\\n set_message_handler|select_db|num_(fields|rows)|connect|close|deadlock_retry_count|data_seek|\\\\n unbuffered_query|pconnect|query|field_seek|fetch_(object|field|assoc|array|row)|free_result|\\\\n affected_rows|result|get_last_message|min_(client|error|message|server)_severity\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sybase.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(taint|is_tainted|untaint)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.taint.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n tidy_((get|set)opt|set_encoding|save_config|config_count|clean_repair|is_(xhtml|xml)|diagnose|\\\\n (access|error|warning)_count|load_config|reset_config|(parse|repair)_(string|file)|\\\\n get_(status|html(_ver)?|head|config|output|opt_doc|root|release|body))|\\\\n ob_tidyhandler\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.tidy.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\btoken_(name|get_all)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.tokenizer.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\ntrader_(\\\\n stoch(f|r|rsi)?|stddev|sin(h)?|sum|sub|set_(compat|unstable_period)|sqrt|sar(ext)?|sma|\\\\n ht_(sine|trend(line|mode)|dc(period|phase)|phasor)|natr|cci|cos(h)?|correl|\\\\n cdl(shootingstar|shortline|sticksandwich|stalledpattern|spinningtop|separatinglines|\\\\n hikkake(mod)?|highwave|homingpigeon|hangingman|harami(cross)?|hammer|concealbabyswall|\\\\n counterattack|closingmarubozu|thrusting|tasukigap|takuri|tristar|inneck|invertedhammer|\\\\n identical3crows|2crows|onneck|doji(star)?|darkcloudcover|dragonflydoji|unique3river|\\\\n upsidegap2crows|3(starsinsouth|inside|outside|whitesoldiers|linestrike|blackcrows)|\\\\n piercing|engulfing|evening(doji)?star|kicking(bylength)?|longline|longleggeddoji|\\\\n ladderbottom|advanceblock|abandonedbaby|risefall3methods|rickshawman|gapsidesidewhite|\\\\n gravestonedoji|xsidegap3methods|morning(doji)?star|mathold|matchinglow|marubozu|\\\\n belthold|breakaway)|\\\\n ceil|cmo|tsf|typprice|t3|tema|tan(h)?|trix|trima|trange|obv|div|dema|dx|ultosc|ppo|\\\\n plus_d[im]|errno|exp|ema|var|kama|floor|wclprice|willr|wma|ln|log10|bop|beta|bbands|\\\\n linearreg(_(slope|intercept|angle))?|asin|acos|atan|atr|adosc|ad|add|adx(r)?|apo|avgprice|\\\\n aroon(osc)?|rsi|roc|rocp|rocr(100)?|get_(compat|unstable_period)|min(index)?|minus_d[im]|\\\\n minmax(index)?|mid(point|price)|mom|mult|medprice|mfi|macd(ext|fix)?|mavp|max(index)?|ma(ma)?\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.trader.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\buopz_(copy|compose|implement|overload|delete|undefine|extend|function|flags|restore|rename|redefine|backup)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.uopz.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(http_build_query|(raw)?url(decode|encode)|parse_url|get_(headers|meta_tags)|base64_(decode|encode))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.url.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n strval|settype|serialize|(bool|double|float)val|debug_zval_dump|intval|import_request_variables|isset|\\\\n is_(scalar|string|null|numeric|callable|int(eger)?|object|double|float|long|array|resource|real|bool)|\\\\n unset|unserialize|print_r|empty|var_(dump|export)|gettype|get_(defined_vars|resource_type)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.var.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bwddx_(serialize_(value|vars)|deserialize|packet_(start|end)|add_vars)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.wddx.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bxhprof_(sample_)?(disable|enable)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xhprof.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\n\\\\\\\\b\\\\n(\\\\n utf8_(decode|encode)|\\\\n xml_(set_((notation|(end|start)_namespace|unparsed_entity)_decl_handler|\\\\n (character_data|default|element|external_entity_ref|processing_instruction)_handler|object)|\\\\n parse(_into_struct)?|parser_((get|set)_option|create(_ns)?|free)|error_string|\\\\n get_(current_((column|line)_number|byte_index)|error_code))\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xml.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nxmlrpc_(\\\\n server_(call_method|create|destroy|add_introspection_data|register_(introspection_callback|method))|\\\\n is_fault|decode(_request)?|parse_method_descriptions|encode(_request)?|(get|set)_type\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xmlrpc.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\nxmlwriter_(\\\\n (end|start|write)_(comment|cdata|dtd(_(attlist|entity|element))?|document|pi|attribute|element)|\\\\n (start|write)_(attribute|element)_ns|write_raw|set_indent(_string)?|text|output_memory|open_(memory|uri)|\\\\n full_end_element|flush|\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.xmlwriter.php\\\"},{\\\"match\\\":\\\"(?xi)\\\\\\\\b\\\\n(\\\\n zlib_(decode|encode|get_coding_type)|readgzfile|\\\\n gz(seek|compress|close|tell|inflate|open|decode|deflate|uncompress|puts|passthru|encode|eof|file|\\\\n write|rewind|read|getc|getss?)\\\\n)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.zlib.php\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\bis_int(eger)?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.alias.php\\\"}]},\\\"switch_statement\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s+(?=switch\\\\\\\\b)\\\"},{\\\"begin\\\":\\\"\\\\\\\\bswitch\\\\\\\\b(?!\\\\\\\\s*\\\\\\\\(.*\\\\\\\\)\\\\\\\\s*:)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.switch.php\\\"}},\\\"end\\\":\\\"}|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.section.switch-block.end.bracket.curly.php\\\"}},\\\"name\\\":\\\"meta.switch-statement.php\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.switch-expression.begin.bracket.round.php\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=\\\\\\\\?>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.switch-expression.end.bracket.round.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.section.switch-block.begin.bracket.curly.php\\\"}},\\\"end\\\":\\\"(?=}|\\\\\\\\?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]}]},\\\"ternary_expression\\\":{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.php\\\"}},\\\"end\\\":\\\"(?<!:):(?!:)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.ternary.php\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)\\\\\\\\s*(?=:(?!:))\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"ternary_shorthand\\\":{\\\"match\\\":\\\"\\\\\\\\?:\\\",\\\"name\\\":\\\"keyword.operator.ternary.php\\\"},\\\"use-inner\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?i)\\\\\\\\b(as)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.use-as.php\\\"}},\\\"end\\\":\\\"(?i)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"entity.other.alias.php\\\"}}},{\\\"include\\\":\\\"#class-name\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.delimiter.php\\\"}]},\\\"var_basic\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\$+)[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*\\\",\\\"name\\\":\\\"variable.other.php\\\"}]},\\\"var_global\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)((_(COOKIE|FILES|GET|POST|REQUEST))|arg(v|c))\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.global.php\\\"},\\\"var_global_safer\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)((GLOBALS|_(ENV|SERVER|SESSION)))\\\",\\\"name\\\":\\\"variable.other.global.safer.php\\\"},\\\"var_language\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)this\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.this.php\\\"},\\\"variable-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#var_global\\\"},{\\\"include\\\":\\\"#var_global_safer\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.class.php\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.property.php\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.php\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.index.php\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.other.index.php\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"10\\\":{\\\"name\\\":\\\"string.unquoted.index.php\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.section.array.end.php\\\"}},\\\"match\\\":\\\"(?xi)\\\\n((\\\\\\\\$)(?<name>[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*))\\\\\\\\s*\\\\n(?:\\\\n (\\\\\\\\??->)\\\\\\\\s*(\\\\\\\\g<name>)\\\\n |\\\\n (\\\\\\\\[)(?:(\\\\\\\\d+)|((\\\\\\\\$)\\\\\\\\g<name>)|([a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*))(\\\\\\\\])\\\\n)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"match\\\":\\\"(?i)((\\\\\\\\${)(?<name>[a-z_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}][a-z0-9_\\\\\\\\x{7f}-\\\\\\\\x{10ffff}]*)(}))\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#var_language\\\"},{\\\"include\\\":\\\"#var_global\\\"},{\\\"include\\\":\\\"#var_global_safer\\\"},{\\\"include\\\":\\\"#var_basic\\\"},{\\\"begin\\\":\\\"\\\\\\\\${(?=.*?})\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.php\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]}},\\\"scopeName\\\":\\\"source.php\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"xml\\\",\\\"sql\\\",\\\"javascript\\\",\\\"json\\\",\\\"css\\\"]}\"))\n\nexport default [\n...html,\n...xml,\n...sql,\n...javascript,\n...json,\n...css,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"PL/SQL\\\",\\\"fileTypes\\\":[\\\"sql\\\",\\\"ddl\\\",\\\"dml\\\",\\\"pkh\\\",\\\"pks\\\",\\\"pkb\\\",\\\"pck\\\",\\\"pls\\\",\\\"plb\\\"],\\\"foldingStartMarker\\\":\\\"(?i)^\\\\\\\\s*(begin|if|loop)\\\\\\\\b\\\",\\\"foldingStopMarker\\\":\\\"(?i)^\\\\\\\\s*(end)\\\\\\\\b\\\",\\\"name\\\":\\\"plsql\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.oracle\\\"},{\\\"match\\\":\\\"--.*$\\\",\\\"name\\\":\\\"comment.line.double-dash.oracle\\\"},{\\\"match\\\":\\\"(?i)(?:^\\\\\\\\s*)rem(?:\\\\\\\\s+.*$)\\\",\\\"name\\\":\\\"comment.line.sqlplus.oracle\\\"},{\\\"match\\\":\\\"(?i)(?:^\\\\\\\\s*)prompt(?:\\\\\\\\s+.*$)\\\",\\\"name\\\":\\\"comment.line.sqlplus-prompt.oracle\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.oracle\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.oracle\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(create)(\\\\\\\\s+or\\\\\\\\s+replace)?\\\\\\\\s+\\\",\\\"name\\\":\\\"meta.create.oracle\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.oracle\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.oracle\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.oracle\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(package)(\\\\\\\\s+body)?\\\\\\\\s+(\\\\\\\\S+)\\\",\\\"name\\\":\\\"meta.package.oracle\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.oracle\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.oracle\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(type)\\\\\\\\s+\\\\\\\"([^\\\\\\\"]+)\\\\\\\"\\\",\\\"name\\\":\\\"meta.type.oracle\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.oracle\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.oracle\\\"}},\\\"match\\\":\\\"(?i)^\\\\\\\\s*(function|procedure)\\\\\\\\s+\\\\\\\"?([-a-z0-9_]+)\\\\\\\"?\\\",\\\"name\\\":\\\"meta.procedure.oracle\\\"},{\\\"match\\\":\\\"[!<>:]?=|<>|<|>|\\\\\\\\+|(?<!\\\\\\\\.)\\\\\\\\*|-|(?<!^)/|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(true|false|null|is\\\\\\\\s+(not\\\\\\\\s+)?null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.oracle\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+(\\\\\\\\.\\\\\\\\d+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(if|elsif|else|end\\\\\\\\s+if|loop|end\\\\\\\\s+loop|for|while|case|end\\\\\\\\s+case|continue|return|goto)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(or|and|not|like)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(%(isopen|found|notfound|rowcount)|commit|rollback|sqlerrm)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(sql|sqlcode)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(ascii|asciistr|chr|compose|concat|convert|decompose|dump|initcap|instr|instrb|instrc|instr2|instr4|unistr|length|lengthb|lengthc|length2|length4|lower|lpad|ltrim|nchr|replace|rpad|rtrim|soundex|substr|translate|trim|upper|vsize)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.char.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(add_months|current_date|current_timestamp|dbtimezone|last_day|localtimestamp|months_between|new_time|next_day|round|sessiontimezone|sysdate|tz_offset|systimestamp)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.date.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(avg|count|sum|max|min|median|corr|corr_\\\\\\\\w+|covar_(pop|samp)|cume_dist|dense_rank|first|group_id|grouping|grouping_id|last|percentile_cont|percentile_disc|percent_rank|rank|regr_\\\\\\\\w+|row_number|stats_binomial_test|stats_crosstab|stats_f_test|stats_ks_test|stats_mode|stats_mw_test|stats_one_way_anova|stats_t_test_\\\\\\\\w+|stats_wsr_test|stddev|stddev_pop|stddev_samp|var_pop|var_samp|variance)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.aggregate.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(bfilename|cardinality|coalesce|decode|empty_(blob|clob)|lag|lead|listagg|lnnvl|nanvl|nullif|nvl|nvl2|sys_(context|guid|typeid|connect_by_path|extract_utc)|uid|(current\\\\\\\\s+)?user|userenv|cardinality|(bulk\\\\\\\\s+)?collect|powermultiset(_by_cardinality)?|ora_hash|standard_hash|execute\\\\\\\\s+immediate|alter\\\\\\\\s+session)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.advanced.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(bin_to_num|cast|chartorowid|from_tz|hextoraw|numtodsinterval|numtoyminterval|rawtohex|rawtonhex|to_char|to_clob|to_date|to_dsinterval|to_lob|to_multi_byte|to_nclob|to_number|to_single_byte|to_timestamp|to_timestamp_tz|to_yminterval|scn_to_timestamp|timestamp_to_scn|rowidtochar|rowidtonchar|to_binary_double|to_binary_float|to_blob|to_nchar|con_dbid_to_id|con_guid_to_id|con_name_to_id|con_uid_to_id)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.convert.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(abs|acos|asin|atan|atan2|bit_(and|or|xor)|ceil|cos|cosh|exp|extract|floor|greatest|least|ln|log|mod|power|remainder|round|sign|sin|sinh|sqrt|tan|tanh|trunc)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.math.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(\\\\\\\\.(count|delete|exists|extend|first|last|limit|next|prior|trim|reverse))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.collection.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(cluster_details|cluster_distance|cluster_id|cluster_probability|cluster_set|feature_details|feature_id|feature_set|feature_value|prediction|prediction_bounds|prediction_cost|prediction_details|prediction_probability|prediction_set)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.data_mining.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(appendchildxml|deletexml|depth|extract|existsnode|extractvalue|insertchildxml|insertxmlbefore|xmlcast|xmldiff|xmlelement|xmlexists|xmlisvalid|insertchildxmlafter|insertchildxmlbefore|path|sys_dburigen|sys_xmlagg|sys_xmlgen|updatexml|xmlagg|xmlcdata|xmlcolattval|xmlcomment|xmlconcat|xmlforest|xmlparse|xmlpi|xmlquery|xmlroot|xmlsequence|xmlserialize|xmltable|xmltransform)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.xml.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(pragma\\\\\\\\s+(autonomous_transaction|serially_reusable|restrict_references|exception_init|inline))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.pragma.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(p(i|o|io)_[-a-z0-9_]+)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.parameter.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(l_[-a-z0-9_]+)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.oracle\\\"},{\\\"match\\\":\\\"(?i):\\\\\\\\b(new|old)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.trigger.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(connect\\\\\\\\s+by\\\\\\\\s+(nocycle\\\\\\\\s+)?(prior|level)|connect_by_(root|icycle)|level|start\\\\\\\\s+with)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.hierarchical.sql.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(language|name|java|c)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.wrapper.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(end|then|deterministic|exception|when|declare|begin|in|out|nocopy|is|as|exit|open|fetch|into|close|subtype|type|rowtype|default|exclusive|mode|lock|record|index\\\\\\\\s+by|result_cache|constant|comment|\\\\\\\\.(nextval|currval))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(grant|revoke|alter|drop|force|add|check|constraint|primary\\\\\\\\s+key|foreign\\\\\\\\s+key|references|unique(\\\\\\\\s+index)?|column|sequence|increment\\\\\\\\s+by|cache|(materialized\\\\\\\\s+)?view|trigger|storage|tablespace|pct(free|used)|(init|max)trans|logging)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ddl.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(with|select|from|where|order\\\\\\\\s+(siblings\\\\\\\\s+)?by|group\\\\\\\\s+by|rollup|cube|((left|right|cross|natural)\\\\\\\\s+(outer\\\\\\\\s+)?)?join|on|asc|desc|update|set|insert|into|values|delete|distinct|union|minus|intersect|having|limit|table|between|like|of|row|(range|rows)\\\\\\\\s+between|nulls\\\\\\\\s+first|nulls\\\\\\\\s+last|before|after|all|any|exists|rownum|cursor|returning|over|partition\\\\\\\\s+by|merge|using|matched|pivot|unpivot)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.sql.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(define|whenever\\\\\\\\s+sqlerror|exec|timing\\\\\\\\s+start|timing\\\\\\\\s+stop)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.sqlplus.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(access_into_null|case_not_found|collection_is_null|cursor_already_open|dup_val_on_index|invalid_cursor|invalid_number|login_denied|no_data_found|not_logged_on|program_error|rowtype_mismatch|self_is_null|storage_error|subscript_beyond_count|subscript_outside_limit|sys_invalid_rowid|timeout_on_resource|too_many_rows|value_error|zero_divide|others)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.exception.oracle\\\"},{\\\"captures\\\":{\\\"3\\\":{\\\"name\\\":\\\"support.class.oracle\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b((dbms|utl|owa|apex)_\\\\\\\\w+\\\\\\\\.(\\\\\\\\w+))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.oracle\\\"},{\\\"captures\\\":{\\\"3\\\":{\\\"name\\\":\\\"support.class.oracle\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b((htf|htp)\\\\\\\\.(\\\\\\\\w+))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.oracle\\\"},{\\\"captures\\\":{\\\"3\\\":{\\\"name\\\":\\\"support.class.user-defined.oracle\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b((\\\\\\\\w+_pkg|pkg_\\\\\\\\w+)\\\\\\\\.(\\\\\\\\w+))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.user-defined.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(raise|raise_application_error)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.oracle\\\"},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.oracle\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.oracle\\\"},{\\\"match\\\":\\\"(?i)\\\\\\\\b(char|varchar|varchar2|nchar|nvarchar2|boolean|date|timestamp(\\\\\\\\s+with(\\\\\\\\s+local)?\\\\\\\\s+time\\\\\\\\s+zone)?|interval\\\\\\\\s*day(\\\\\\\\(\\\\\\\\d*\\\\\\\\))?\\\\\\\\s*to\\\\\\\\s*month|interval\\\\\\\\s*year(\\\\\\\\(\\\\\\\\d*\\\\\\\\))?\\\\\\\\s*to\\\\\\\\s*second(\\\\\\\\(\\\\\\\\d*\\\\\\\\))?|xmltype|blob|clob|nclob|bfile|long|long\\\\\\\\s+raw|raw|number|integer|decimal|smallint|float|binary_(float|double|integer)|pls_(float|double|integer)|rowid|urowid|vararray|natural|naturaln|positive|positiven|signtype|simple_(float|double|integer))\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.oracle\\\"}],\\\"scopeName\\\":\\\"source.plsql.oracle\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Gettext PO\\\",\\\"fileTypes\\\":[\\\"po\\\",\\\"pot\\\",\\\"potx\\\"],\\\"name\\\":\\\"po\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^(?=(msgid(_plural)?|msgctxt)\\\\\\\\s*\\\\\\\"[^\\\\\\\"])|^\\\\\\\\s*$\\\",\\\"comment\\\":\\\"Start of body of document, after header\\\",\\\"end\\\":\\\"\\\\\\\\z\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#body\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"^msg(id|str)\\\\\\\\s+\\\\\\\"\\\\\\\"\\\\\\\\s*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.po\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.po\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.po\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.po\\\"}},\\\"match\\\":\\\"^\\\\\\\"(?:([^\\\\\\\\s:]+)(:)\\\\\\\\s+)?([^\\\\\\\"]*)\\\\\\\"\\\\\\\\s*$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.header.po\\\"}],\\\"repository\\\":{\\\"body\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(msgid(_plural)?)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.msgid.po\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\")\\\",\\\"name\\\":\\\"meta.scope.msgid.po\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\G|^)\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.po\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.po\\\"}]}]},{\\\"begin\\\":\\\"^(msgstr)(?:(\\\\\\\\[)(\\\\\\\\d+)(\\\\\\\\]))?\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.msgstr.po\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.msgstr.po\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.po\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.msgstr.po\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\")\\\",\\\"name\\\":\\\"meta.scope.msgstr.po\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\G|^)\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.po\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.po\\\"}]}]},{\\\"begin\\\":\\\"^(msgctxt)(?:(\\\\\\\\[)(\\\\\\\\d+)(\\\\\\\\]))?\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.msgctxt.po\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.msgctxt.po\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.po\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.msgctxt.po\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\")\\\",\\\"name\\\":\\\"meta.scope.msgctxt.po\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\G|^)\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.po\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.po\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.po\\\"}},\\\"match\\\":\\\"^(#~).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.obsolete.po\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"comment\\\":\\\"a line that does not begin with # or \\\\\\\". Could improve this regexp\\\",\\\"match\\\":\\\"^(?!\\\\\\\\s*$)[^#\\\\\\\"].*$\\\\\\\\n?\\\",\\\"name\\\":\\\"invalid.illegal.po\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(?=#)\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(#,)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.po\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.flag.po\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.flag.po\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\G|,\\\\\\\\s*)((?:fuzzy)|(?:no-)?(?:c|objc|sh|lisp|elisp|librep|scheme|smalltalk|java|csharp|awk|object-pascal|ycp|tcl|perl|perl-brace|php|gcc-internal|qt|boost)-format)\\\"}]},{\\\"begin\\\":\\\"#\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.po\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.extracted.po\\\"},{\\\"begin\\\":\\\"(#:)[ \\\\\\\\t]*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.po\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.reference.po\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\S+:)([\\\\\\\\d;]*)\\\",\\\"name\\\":\\\"storage.type.class.po\\\"}]},{\\\"begin\\\":\\\"#\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.po\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.previous.po\\\"},{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.po\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.po\\\"}]}]}},\\\"scopeName\\\":\\\"source.po\\\",\\\"aliases\\\":[\\\"pot\\\",\\\"potx\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Polar\\\",\\\"name\\\":\\\"polar\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#rule\\\"},{\\\"include\\\":\\\"#rule-type\\\"},{\\\"include\\\":\\\"#inline-query\\\"},{\\\"include\\\":\\\"#resource-block\\\"},{\\\"include\\\":\\\"#test-block\\\"},{\\\"include\\\":\\\"#fixture\\\"}],\\\"repository\\\":{\\\"boolean\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean\\\"},\\\"comment\\\":{\\\"match\\\":\\\"#.*\\\",\\\"name\\\":\\\"comment.line.number-sign\\\"},\\\"fixture\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bfixture\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control\\\"},{\\\"begin\\\":\\\"\\\\\\\\btest\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"\\\\\\\\bfixture\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}}}]},\\\"inline-query\\\":{\\\"begin\\\":\\\"\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\";\\\",\\\"name\\\":\\\"meta.inline-query\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]},\\\"keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(cut|or|debug|print|in|forall|if|and|of|not|matches|type|on|global)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.character\\\"}]},\\\"number\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[+-]?\\\\\\\\d+(?:(\\\\\\\\.)\\\\\\\\d+(?:e[+-]?\\\\\\\\d+)?|(?:e[+-]?\\\\\\\\d+))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\+|\\\\\\\\-)[\\\\\\\\d]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer\\\"},{\\\"match\\\":\\\"\\\\\\\\b[\\\\\\\\d]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.natural\\\"}]},\\\"object-literal\\\":{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.resource\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"constant.other.object-literal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#boolean\\\"}]},\\\"operator\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"match\\\":\\\"(\\\\\\\\+|-|\\\\\\\\*|\\\\\\\\/|<|>|=|!)\\\"},\\\"resource-block\\\":{\\\"begin\\\":\\\"(?<resourceType>[a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*){0}((?:(resource|actor)\\\\\\\\s+(\\\\\\\\g<resourceType>)(?:\\\\\\\\s+(extends)\\\\\\\\s+(\\\\\\\\g<resourceType>(?:\\\\\\\\s*,\\\\\\\\s*\\\\\\\\g<resourceType>)*)\\\\\\\\s*,?\\\\\\\\s*)?)|(global))\\\\\\\\s*{\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"comment\\\":\\\"actor|resource\\\",\\\"name\\\":\\\"keyword.control\\\"},\\\"4\\\":{\\\"comment\\\":\\\"declared resource type\\\",\\\"name\\\":\\\"entity.name.type\\\"},\\\"5\\\":{\\\"comment\\\":\\\"extends\\\",\\\"name\\\":\\\"keyword.control\\\"},\\\"6\\\":{\\\"comment\\\":\\\"list of extended resources\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)\\\",\\\"name\\\":\\\"entity.name.type\\\"}]},\\\"7\\\":{\\\"comment\\\":\\\"global\\\",\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.resource-block\\\",\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.separator.sequence.declarations\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.relation-declaration\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#specializer\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.sequence.dict\\\"}]},{\\\"include\\\":\\\"#term\\\"}]},\\\"rule\\\":{\\\"name\\\":\\\"meta.rule\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rule-functor\\\"},{\\\"begin\\\":\\\"\\\\\\\\bif\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.if\\\"}},\\\"end\\\":\\\";\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]},{\\\"match\\\":\\\";\\\"}]},\\\"rule-functor\\\":{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.rule\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#specializer\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.sequence.list\\\"},{\\\"include\\\":\\\"#term\\\"}]},\\\"rule-type\\\":{\\\"begin\\\":\\\"\\\\\\\\btype\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.type-decl\\\"}},\\\"end\\\":\\\";\\\",\\\"name\\\":\\\"meta.rule-type\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rule-functor\\\"}]},\\\"specializer\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.resource\\\"}},\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*\\\\\\\\s*:\\\\\\\\s*([a-zA-Z_][a-zA-Z0-9_]*(?:::[a-zA-Z0-9_]+)*)\\\"},\\\"string\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape\\\"}]},\\\"term\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#object-literal\\\"},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"meta.bracket.list\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.sequence.list\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.bracket.dict\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.sequence.dict\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.parens\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#term\\\"}]}]},\\\"test-block\\\":{\\\"begin\\\":\\\"(test)\\\\\\\\s+(\\\\\\\"[^\\\\\\\"]*\\\\\\\")\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.double\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.test-block\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(setup)\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"meta.test-setup\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rule\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#fixture\\\"}]},{\\\"include\\\":\\\"#rule\\\"},{\\\"match\\\":\\\"\\\\\\\\b(assert|assert_not)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other\\\"},{\\\"include\\\":\\\"#comment\\\"}]}},\\\"scopeName\\\":\\\"source.polar\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"PowerQuery\\\",\\\"fileTypes\\\":[\\\"pq\\\",\\\"pqm\\\"],\\\"name\\\":\\\"powerquery\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#Noise\\\"},{\\\"include\\\":\\\"#LiteralExpression\\\"},{\\\"include\\\":\\\"#Keywords\\\"},{\\\"include\\\":\\\"#ImplicitVariable\\\"},{\\\"include\\\":\\\"#IntrinsicVariable\\\"},{\\\"include\\\":\\\"#Operators\\\"},{\\\"include\\\":\\\"#DotOperators\\\"},{\\\"include\\\":\\\"#TypeName\\\"},{\\\"include\\\":\\\"#RecordExpression\\\"},{\\\"include\\\":\\\"#Punctuation\\\"},{\\\"include\\\":\\\"#QuotedIdentifier\\\"},{\\\"include\\\":\\\"#Identifier\\\"}],\\\"repository\\\":{\\\"BlockComment\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.powerquery\\\"},\\\"DecimalNumber\\\":{\\\"match\\\":\\\"(?<![\\\\\\\\d\\\\\\\\w])(\\\\\\\\d*\\\\\\\\.\\\\\\\\d+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.powerquery\\\"},\\\"DotOperators\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.ellipsis.powerquery\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.list.powerquery\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)(?:(\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(\\\\\\\\.\\\\\\\\.))(?!\\\\\\\\.)\\\"},\\\"EscapeSequence\\\":{\\\"begin\\\":\\\"#\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.escapesequence.begin.powerquery\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.escapesequence.end.powerquery\\\"}},\\\"name\\\":\\\"constant.character.escapesequence.powerquery\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(#|\\\\\\\\h{4}|\\\\\\\\h{8}|cr|lf|tab)(?:,(#|\\\\\\\\h{4}|\\\\\\\\h{8}|cr|lf|tab))*\\\"},{\\\"match\\\":\\\"[^\\\\\\\\)]\\\",\\\"name\\\":\\\"invalid.illegal.escapesequence.powerquery\\\"}]},\\\"FloatNumber\\\":{\\\"match\\\":\\\"(\\\\\\\\d*\\\\\\\\.)?\\\\\\\\d+(e|E)(\\\\\\\\+|-)?\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.numeric.float.powerquery\\\"},\\\"HexNumber\\\":{\\\"match\\\":\\\"0(x|X)\\\\\\\\h+\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.powerquery\\\"},\\\"Identifier\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.inclusiveidentifier.powerquery\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.powerquery\\\"}},\\\"match\\\":\\\"(?:(?<![\\\\\\\\._\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Nd}\\\\\\\\p{Pc}\\\\\\\\p{Mn}\\\\\\\\p{Mc}\\\\\\\\p{Cf}])(@?)([_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}][_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Nd}\\\\\\\\p{Pc}\\\\\\\\p{Mn}\\\\\\\\p{Mc}\\\\\\\\p{Cf}]*(?:\\\\\\\\.[_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}][_\\\\\\\\p{Lu}\\\\\\\\p{Ll}\\\\\\\\p{Lt}\\\\\\\\p{Lm}\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Nd}\\\\\\\\p{Pc}\\\\\\\\p{Mn}\\\\\\\\p{Mc}\\\\\\\\p{Cf}])*)\\\\\\\\b)\\\"},\\\"ImplicitVariable\\\":{\\\"match\\\":\\\"\\\\\\\\b_\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.implicitvariable.powerquery\\\"},\\\"InclusiveIdentifier\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"inclusiveidentifier.powerquery\\\"}},\\\"match\\\":\\\"@\\\"},\\\"IntNumber\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.integer.powerquery\\\"}},\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+)\\\\\\\\b\\\"},\\\"IntrinsicVariable\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.intrinsicvariable.powerquery\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\d\\\\\\\\w])(#sections|#shared)\\\\\\\\b\\\"},\\\"Keywords\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.word.logical.powerquery\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.conditional.powerquery\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.exception.powerquery\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.powerquery\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.powerquery\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(and|or|not)|(if|then|else)|(try|otherwise)|(as|each|in|is|let|meta|type|error)|(section|shared))\\\\\\\\b\\\"},\\\"LineComment\\\":{\\\"match\\\":\\\"//.*\\\",\\\"name\\\":\\\"comment.line.double-slash.powerquery\\\"},\\\"LiteralExpression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#String\\\"},{\\\"include\\\":\\\"#NumericConstant\\\"},{\\\"include\\\":\\\"#LogicalConstant\\\"},{\\\"include\\\":\\\"#NullConstant\\\"},{\\\"include\\\":\\\"#FloatNumber\\\"},{\\\"include\\\":\\\"#DecimalNumber\\\"},{\\\"include\\\":\\\"#HexNumber\\\"},{\\\"include\\\":\\\"#IntNumber\\\"}]},\\\"LogicalConstant\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.logical.powerquery\\\"},\\\"Noise\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#BlockComment\\\"},{\\\"include\\\":\\\"#LineComment\\\"},{\\\"include\\\":\\\"#Whitespace\\\"}]},\\\"NullConstant\\\":{\\\"match\\\":\\\"\\\\\\\\b(null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.null.powerquery\\\"},\\\"NumericConstant\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.numeric.float.powerquery\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\d\\\\\\\\w])(#infinity|#nan)\\\\\\\\b\\\"},\\\"Operators\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.function.powerquery\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment-or-comparison.powerquery\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.comparison.powerquery\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.combination.powerquery\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.powerquery\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.sectionaccess.powerquery\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.optional.powerquery\\\"}},\\\"match\\\":\\\"(=>)|(=)|(<>|<|>|<=|>=)|(&)|(\\\\\\\\+|-|\\\\\\\\*|\\\\\\\\/)|(!)|(\\\\\\\\?)\\\"},\\\"Punctuation\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.powerquery\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.powerquery\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.powerquery\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.powerquery\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.powerquery\\\"}},\\\"match\\\":\\\"(,)|(\\\\\\\\()|(\\\\\\\\))|({)|(})\\\"},\\\"QuotedIdentifier\\\":{\\\"begin\\\":\\\"#\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.quotedidentifier.begin.powerquery\\\"}},\\\"end\\\":\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.quotedidentifier.end.powerquery\\\"}},\\\"name\\\":\\\"entity.name.powerquery\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.quote.powerquery\\\"},{\\\"include\\\":\\\"#EscapeSequence\\\"}]},\\\"RecordExpression\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.begin.powerquery\\\"}},\\\"contentName\\\":\\\"meta.recordexpression.powerquery\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.end.powerquery\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"String\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.powerquery\\\"}},\\\"end\\\":\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.powerquery\\\"}},\\\"name\\\":\\\"string.quoted.double.powerquery\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.quote.powerquery\\\"},{\\\"include\\\":\\\"#EscapeSequence\\\"}]},\\\"TypeName\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.powerquery\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.powerquery\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(optional|nullable)|(action|any|anynonnull|binary|date|datetime|datetimezone|duration|function|list|logical|none|null|number|record|table|text|type))\\\\\\\\b\\\"},\\\"Whitespace\\\":{\\\"match\\\":\\\"\\\\\\\\s+\\\"}},\\\"scopeName\\\":\\\"source.powerquery\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"PowerShell\\\",\\\"name\\\":\\\"powershell\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"<#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.block.begin.powershell\\\"}},\\\"end\\\":\\\"#>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.block.end.powershell\\\"}},\\\"name\\\":\\\"comment.block.powershell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#commentEmbeddedDocs\\\"}]},{\\\"match\\\":\\\"[2-6]>&1|>>|>|<<|<|>|>\\\\\\\\||[1-6]>|[1-6]>>\\\",\\\"name\\\":\\\"keyword.operator.redirection.powershell\\\"},{\\\"include\\\":\\\"#commands\\\"},{\\\"include\\\":\\\"#commentLine\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#subexpression\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#UsingDirective\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#hashtable\\\"},{\\\"include\\\":\\\"#doubleQuotedString\\\"},{\\\"include\\\":\\\"#scriptblock\\\"},{\\\"comment\\\":\\\"Needed to parse stuff correctly in 'argument mode'. (See about_parsing.)\\\",\\\"include\\\":\\\"#doubleQuotedStringEscapes\\\"},{\\\"applyEndPatternLast\\\":true,\\\"begin\\\":\\\"['\\\\\\\\x{2018}-\\\\\\\\x{201B}]\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.powershell\\\"}},\\\"end\\\":\\\"['\\\\\\\\x{2018}-\\\\\\\\x{201B}]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.powershell\\\"}},\\\"name\\\":\\\"string.quoted.single.powershell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"['\\\\\\\\x{2018}-\\\\\\\\x{201B}]{2}\\\",\\\"name\\\":\\\"constant.character.escape.powershell\\\"}]},{\\\"begin\\\":\\\"(@[\\\\\\\"\\\\\\\\x{201C}-\\\\\\\\x{201E}])\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.powershell\\\"}},\\\"end\\\":\\\"^[\\\\\\\"\\\\\\\\x{201C}-\\\\\\\\x{201E}]@\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.powershell\\\"}},\\\"name\\\":\\\"string.quoted.double.heredoc.powershell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variableNoProperty\\\"},{\\\"include\\\":\\\"#doubleQuotedStringEscapes\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(@['\\\\\\\\x{2018}-\\\\\\\\x{201B}])\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.powershell\\\"}},\\\"end\\\":\\\"^['\\\\\\\\x{2018}-\\\\\\\\x{201B}]@\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.powershell\\\"}},\\\"name\\\":\\\"string.quoted.single.heredoc.powershell\\\"},{\\\"include\\\":\\\"#numericConstant\\\"},{\\\"begin\\\":\\\"(@)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.array.begin.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.group.begin.powershell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.group.end.powershell\\\"}},\\\"name\\\":\\\"meta.group.array-expression.powershell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"((\\\\\\\\$))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.substatement.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.subexpression.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.group.begin.powershell\\\"}},\\\"comment\\\":\\\"TODO: move to repo; make recursive.\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.group.end.powershell\\\"}},\\\"name\\\":\\\"meta.group.complex.subexpression.powershell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"(\\\\\\\\b(([A-Za-z0-9\\\\\\\\-_\\\\\\\\.]+)\\\\\\\\.(?i:exe|com|cmd|bat))\\\\\\\\b)\\\",\\\"name\\\":\\\"support.function.powershell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w|-|\\\\\\\\.)((?i:begin|break|catch|clean|continue|data|default|define|do|dynamicparam|else|elseif|end|exit|finally|for|from|if|in|inlinescript|parallel|param|process|return|sequence|switch|throw|trap|try|until|var|while)|%|\\\\\\\\?)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"keyword.control.powershell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w|-|[^\\\\\\\\)]\\\\\\\\.)((?i:(foreach|where)(?!-object))|%|\\\\\\\\?)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"keyword.control.powershell\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(--%)(?!\\\\\\\\w)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.powershell\\\"}},\\\"comment\\\":\\\"This should be moved to the repository at some point.\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"string.unquoted.powershell\\\"}]},{\\\"comment\\\":\\\"This should only be relevant inside a class but will require a rework of how classes are matched. This is a temp fix.\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w)((?i:hidden|static))(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.modifier.powershell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function\\\"}},\\\"comment\\\":\\\"capture should be entity.name.type, but it doesn't provide a good color in the default schema.\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w|-)((?i:class)|%|\\\\\\\\?)(?:\\\\\\\\s)+((?:\\\\\\\\p{L}|\\\\\\\\d|_|-|)+)\\\\\\\\b\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)-(?i:is(?:not)?|as)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.comparison.powershell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)-(?i:[ic]?(?:eq|ne|[gl][te]|(?:not)?(?:like|match|contains|in)|replace))(?!\\\\\\\\p{L})\\\",\\\"name\\\":\\\"keyword.operator.comparison.powershell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)-(?i:join|split)(?!\\\\\\\\p{L})|!\\\",\\\"name\\\":\\\"keyword.operator.unary.powershell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)-(?i:and|or|not|xor)(?!\\\\\\\\p{L})|!\\\",\\\"name\\\":\\\"keyword.operator.logical.powershell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)-(?i:band|bor|bnot|bxor|shl|shr)(?!\\\\\\\\p{L})\\\",\\\"name\\\":\\\"keyword.operator.bitwise.powershell\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)-(?i:f)(?!\\\\\\\\p{L})\\\",\\\"name\\\":\\\"keyword.operator.string-format.powershell\\\"},{\\\"match\\\":\\\"[+%*/-]?=|[+/*%-]\\\",\\\"name\\\":\\\"keyword.operator.assignment.powershell\\\"},{\\\"match\\\":\\\"\\\\\\\\|{2}|&{2}|;\\\",\\\"name\\\":\\\"punctuation.terminator.statement.powershell\\\"},{\\\"match\\\":\\\"&|(?<!\\\\\\\\w)\\\\\\\\.(?= )|`|,|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.other.powershell\\\"},{\\\"comment\\\":\\\"This is very imprecise, is there a syntax for 'must come after...' \\\",\\\"match\\\":\\\"(?<!\\\\\\\\s|^)\\\\\\\\.\\\\\\\\.(?=\\\\\\\\-?\\\\\\\\d|\\\\\\\\(|\\\\\\\\$)\\\",\\\"name\\\":\\\"keyword.operator.range.powershell\\\"}],\\\"repository\\\":{\\\"RequiresDirective\\\":{\\\"begin\\\":\\\"(?<=#)(?i:(requires))\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.requires.powershell\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.requires.powershell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\-(?i:Modules|PSSnapin|RunAsAdministrator|ShellId|Version|Assembly|PSEdition)\\\",\\\"name\\\":\\\"keyword.other.powershell\\\"},{\\\"match\\\":\\\"(?<!-)\\\\\\\\b\\\\\\\\p{L}+|\\\\\\\\d+(?:\\\\\\\\.\\\\\\\\d+)*\\\",\\\"name\\\":\\\"variable.parameter.powershell\\\"},{\\\"include\\\":\\\"#hashtable\\\"}]},\\\"UsingDirective\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.using.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.powershell\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(?i:(using))\\\\\\\\s+(?i:(namespace|module))\\\\\\\\s+(?i:((?:\\\\\\\\w+(?:\\\\\\\\.)?)+))\\\"},\\\"attribute\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\\\\\\s*\\\\\\\\b(?i)(cmdletbinding|alias|outputtype|parameter|validatenotnull|validatenotnullorempty|validatecount|validateset|allownull|allowemptycollection|allowemptystring|validatescript|validaterange|validatepattern|validatelength|supportswildcards)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.bracket.begin.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.attribute.powershell\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.bracket.end.powershell\\\"}},\\\"name\\\":\\\"meta.attribute.powershell\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.group.begin.powershell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.group.end.powershell\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.attribute.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.powershell\\\"}},\\\"match\\\":\\\"(?i)\\\\\\\\b(mandatory|valuefrompipeline|valuefrompipelinebypropertyname|valuefromremainingarguments|position|parametersetname|defaultparametersetname|supportsshouldprocess|supportspaging|positionalbinding|helpuri|confirmimpact|helpmessage)\\\\\\\\b(?:\\\\\\\\s+)?(=)?\\\"}]}]},\\\"commands\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Verb-Noun pattern:\\\",\\\"match\\\":\\\"(?:(\\\\\\\\p{L}|\\\\\\\\d|_|-|\\\\\\\\\\\\\\\\|\\\\\\\\:)*\\\\\\\\\\\\\\\\)?\\\\\\\\b(?i:Add|Approve|Assert|Backup|Block|Build|Checkpoint|Clear|Close|Compare|Complete|Compress|Confirm|Connect|Convert|ConvertFrom|ConvertTo|Copy|Debug|Deny|Deploy|Disable|Disconnect|Dismount|Edit|Enable|Enter|Exit|Expand|Export|Find|Format|Get|Grant|Group|Hide|Import|Initialize|Install|Invoke|Join|Limit|Lock|Measure|Merge|Mount|Move|New|Open|Optimize|Out|Ping|Pop|Protect|Publish|Push|Read|Receive|Redo|Register|Remove|Rename|Repair|Request|Reset|Resize|Resolve|Restart|Restore|Resume|Revoke|Save|Search|Select|Send|Set|Show|Skip|Split|Start|Step|Stop|Submit|Suspend|Switch|Sync|Test|Trace|Unblock|Undo|Uninstall|Unlock|Unprotect|Unpublish|Unregister|Update|Use|Wait|Watch|Write)\\\\\\\\-.+?(?:\\\\\\\\.(?i:exe|cmd|bat|ps1))?\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.powershell\\\"},{\\\"comment\\\":\\\"Builtin cmdlets with reserved verbs\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w)(?i:foreach-object)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"support.function.powershell\\\"},{\\\"comment\\\":\\\"Builtin cmdlets with reserved verbs\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w)(?i:where-object)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"support.function.powershell\\\"},{\\\"comment\\\":\\\"Builtin cmdlets with reserved verbs\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w)(?i:sort-object)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"support.function.powershell\\\"},{\\\"comment\\\":\\\"Builtin cmdlets with reserved verbs\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w)(?i:tee-object)(?!\\\\\\\\w)\\\",\\\"name\\\":\\\"support.function.powershell\\\"}]},\\\"commentEmbeddedDocs\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.string.documentation.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.documentation.powershell\\\"}},\\\"comment\\\":\\\"these embedded doc keywords do not support arguments, must be the only thing on the line\\\",\\\"match\\\":\\\"(?:^|\\\\\\\\G)(?i:\\\\\\\\s*(\\\\\\\\.)(COMPONENT|DESCRIPTION|EXAMPLE|FUNCTIONALITY|INPUTS|LINK|NOTES|OUTPUTS|ROLE|SYNOPSIS))\\\\\\\\s*$\\\",\\\"name\\\":\\\"comment.documentation.embedded.powershell\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.string.documentation.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.documentation.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.documentation.powershell\\\"}},\\\"comment\\\":\\\"these embedded doc keywords require arguments though the type required may be inconsistent, they may not all be able to use the same argument match\\\",\\\"match\\\":\\\"(?:^|\\\\\\\\G)(?i:\\\\\\\\s*(\\\\\\\\.)(EXTERNALHELP|FORWARDHELP(?:CATEGORY|TARGETNAME)|PARAMETER|REMOTEHELPRUNSPACE))\\\\\\\\s+(.+?)\\\\\\\\s*$\\\",\\\"name\\\":\\\"comment.documentation.embedded.powershell\\\"}]},\\\"commentLine\\\":{\\\"begin\\\":\\\"(?<![`\\\\\\\\\\\\\\\\-])(#)#*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.powershell\\\"}},\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.powershell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#commentEmbeddedDocs\\\"},{\\\"include\\\":\\\"#RequiresDirective\\\"}]},\\\"doubleQuotedString\\\":{\\\"applyEndPatternLast\\\":true,\\\"begin\\\":\\\"[\\\\\\\"\\\\\\\\x{201C}-\\\\\\\\x{201E}]\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.powershell\\\"}},\\\"end\\\":\\\"[\\\\\\\"\\\\\\\\x{201C}-\\\\\\\\x{201E}]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.powershell\\\"}},\\\"name\\\":\\\"string.quoted.double.powershell\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)\\\\\\\\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\\\\\.[A-Z]{2,64}\\\\\\\\b\\\"},{\\\"include\\\":\\\"#variableNoProperty\\\"},{\\\"include\\\":\\\"#doubleQuotedStringEscapes\\\"},{\\\"match\\\":\\\"[\\\\\\\"\\\\\\\\x{201C}-\\\\\\\\x{201E}]{2}\\\",\\\"name\\\":\\\"constant.character.escape.powershell\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"match\\\":\\\"`\\\\\\\\s*$\\\",\\\"name\\\":\\\"keyword.other.powershell\\\"}]},\\\"doubleQuotedStringEscapes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"`[`0abefnrtv'\\\\\\\"\\\\\\\\x{2018}-\\\\\\\\x{201E}$]\\\",\\\"name\\\":\\\"constant.character.escape.powershell\\\"},{\\\"include\\\":\\\"#unicodeEscape\\\"}]},\\\"function\\\":{\\\"begin\\\":\\\"^(?:\\\\\\\\s*+)(?i)(function|filter|configuration|workflow)\\\\\\\\s+(?:(global|local|script|private):)?((?:\\\\\\\\p{L}|\\\\\\\\d|_|-|\\\\\\\\.)+)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.function.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.type.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.scope.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.powershell\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{|\\\\\\\\()\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#commentLine\\\"}]},\\\"hashtable\\\":{\\\"begin\\\":\\\"(@)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.hashtable.begin.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.powershell\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.powershell\\\"}},\\\"name\\\":\\\"meta.hashtable.powershell\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.powershell\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.assignment.powershell\\\"}},\\\"match\\\":\\\"\\\\\\\\b((?:\\\\\\\\'|\\\\\\\\\\\\\\\")?)(\\\\\\\\w+)((?:\\\\\\\\'|\\\\\\\\\\\\\\\")?)(?:\\\\\\\\s+)?(=)(?:\\\\\\\\s+)?\\\",\\\"name\\\":\\\"meta.hashtable.assignment.powershell\\\"},{\\\"include\\\":\\\"#scriptblock\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"interpolation\\\":{\\\"begin\\\":\\\"(((\\\\\\\\$)))((\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.substatement.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.substatement.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.embedded.substatement.begin.powershell\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.group.begin.powershell\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.embedded.substatement.begin.powershell\\\"}},\\\"contentName\\\":\\\"interpolated.complex.source.powershell\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.group.end.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.embedded.substatement.end.powershell\\\"}},\\\"name\\\":\\\"meta.embedded.substatement.powershell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"numericConstant\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.hex.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.powershell\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)([-+]?0(?:x|X)[0-9a-fA-F_]+(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.integer.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.powershell\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)([-+]?(?:[0-9_]+)?\\\\\\\\.[0-9_]+(?:(?:e|E)[0-9]+)?(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.octal.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.powershell\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)([-+]?0(?:b|B)[01_]+(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.integer.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.powershell\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)([-+]?[0-9_]+(?:e|E)(?:[0-9_])?+(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.integer.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.powershell\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)([-+]?[0-9_]+\\\\\\\\.(?:e|E)(?:[0-9_])?+(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.integer.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.powershell\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)([-+]?[0-9_]+[\\\\\\\\.]?(?:F|f|D|d|M|m))((?i:[kmgtp]b)?)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.integer.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.powershell\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)([-+]?[0-9_]+[\\\\\\\\.]?(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\\\\\\\b\\\"}]},\\\"scriptblock\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.powershell\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.powershell\\\"}},\\\"name\\\":\\\"meta.scriptblock.powershell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"subexpression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.group.begin.powershell\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.group.end.powershell\\\"}},\\\"name\\\":\\\"meta.group.simple.subexpression.powershell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"type\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.bracket.begin.powershell\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.bracket.end.powershell\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(?!\\\\\\\\d+|\\\\\\\\.)(?:\\\\\\\\p{L}|\\\\\\\\p{N}|\\\\\\\\.)+\\\",\\\"name\\\":\\\"storage.type.powershell\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"unicodeEscape\\\":{\\\"comment\\\":\\\"`u{xxxx} added in PowerShell 6.0\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"`u\\\\\\\\{(?:(?:10)?([0-9a-fA-F]){1,4}|0?\\\\\\\\g<1>{1,5})}\\\",\\\"name\\\":\\\"constant.character.escape.powershell\\\"},{\\\"match\\\":\\\"`u(?:\\\\\\\\{[0-9a-fA-F]{,6}.)?\\\",\\\"name\\\":\\\"invalid.character.escape.powershell\\\"}]},\\\"variable\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"}},\\\"comment\\\":\\\"These are special constants.\\\",\\\"match\\\":\\\"(\\\\\\\\$)(?i:(False|Null|True))\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.constant.variable.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"comment\\\":\\\"These are the other built-in constants.\\\",\\\"match\\\":\\\"(\\\\\\\\$)(?i:(Error|ExecutionContext|Host|Home|PID|PsHome|PsVersionTable|ShellID))((?:\\\\\\\\.(?:\\\\\\\\p{L}|\\\\\\\\d|_)+)*\\\\\\\\b)?\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.variable.automatic.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"comment\\\":\\\"Automatic variables are not constants, but they are read-only. In monokai (default) color schema support.variable doesn't have color, so we use constant.\\\",\\\"match\\\":\\\"(\\\\\\\\$)((?:[$^?])|(?i:_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This)\\\\\\\\b)((?:\\\\\\\\.(?:\\\\\\\\p{L}|\\\\\\\\d|_)+)*\\\\\\\\b)?\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.language.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"comment\\\":\\\"Style preference variables as language variables so that they stand out.\\\",\\\"match\\\":\\\"(\\\\\\\\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|InformationPreference|LogCommandHealthEvent|LogCommandLifecycleEvent|LogEngineHealthEvent|LogEngineLifecycleEvent|LogProviderHealthEvent|LogProviderLifecycleEvent|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|PSCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoLoadingPreference|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|ProgressPreference|VerbosePreference|WarningPreference|WhatIfPreference))((?:\\\\\\\\.(?:\\\\\\\\p{L}|\\\\\\\\d|_)+)*\\\\\\\\b)?\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.readwrite.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.scope.powershell\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"match\\\":\\\"(?i:(\\\\\\\\$|@)(global|local|private|script|using|workflow):((?:\\\\\\\\p{L}|\\\\\\\\d|_)+))((?:\\\\\\\\.(?:\\\\\\\\p{L}|\\\\\\\\d|_)+)*\\\\\\\\b)?\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.readwrite.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.scope.powershell\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.powershell\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"match\\\":\\\"(?i:(\\\\\\\\$)(\\\\\\\\{)(global|local|private|script|using|workflow):([^}]*[^}`])(\\\\\\\\}))((?:\\\\\\\\.(?:\\\\\\\\p{L}|\\\\\\\\d|_)+)*\\\\\\\\b)?\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.readwrite.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.variable.drive.powershell\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"match\\\":\\\"(?i:(\\\\\\\\$|@)((?:\\\\\\\\p{L}|\\\\\\\\d|_)+:)?((?:\\\\\\\\p{L}|\\\\\\\\d|_)+))((?:\\\\\\\\.(?:\\\\\\\\p{L}|\\\\\\\\d|_)+)*\\\\\\\\b)?\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.readwrite.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.variable.drive.powershell\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.powershell\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"match\\\":\\\"(?i:(\\\\\\\\$)(\\\\\\\\{)((?:\\\\\\\\p{L}|\\\\\\\\d|_)+:)?([^}]*[^}`])(\\\\\\\\}))((?:\\\\\\\\.(?:\\\\\\\\p{L}|\\\\\\\\d|_)+)*\\\\\\\\b)?\\\"}]},\\\"variableNoProperty\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"}},\\\"comment\\\":\\\"These are special constants.\\\",\\\"match\\\":\\\"(\\\\\\\\$)(?i:(False|Null|True))\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.constant.variable.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"comment\\\":\\\"These are the other built-in constants.\\\",\\\"match\\\":\\\"(\\\\\\\\$)(?i:(Error|ExecutionContext|Host|Home|PID|PsHome|PsVersionTable|ShellID))\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.variable.automatic.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"comment\\\":\\\"Automatic variables are not constants, but they are read-only...\\\",\\\"match\\\":\\\"(\\\\\\\\$)((?:[$^?])|(?i:_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This)\\\\\\\\b)\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.language.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"comment\\\":\\\"Style preference variables as language variables so that they stand out.\\\",\\\"match\\\":\\\"(\\\\\\\\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|InformationPreference|LogCommandHealthEvent|LogCommandLifecycleEvent|LogEngineHealthEvent|LogEngineLifecycleEvent|LogProviderHealthEvent|LogProviderLifecycleEvent|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|PSCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoLoadingPreference|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|ProgressPreference|VerbosePreference|WarningPreference|WhatIfPreference))\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.readwrite.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.scope.powershell\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"match\\\":\\\"(?i:(\\\\\\\\$)(global|local|private|script|using|workflow):((?:\\\\\\\\p{L}|\\\\\\\\d|_)+))\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.readwrite.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.scope.powershell\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.powershell\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"match\\\":\\\"(?i:(\\\\\\\\$)(\\\\\\\\{)(global|local|private|script|using|workflow):([^}]*[^}`])(\\\\\\\\}))\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.readwrite.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.variable.drive.powershell\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.member.powershell\\\"}},\\\"match\\\":\\\"(?i:(\\\\\\\\$)((?:\\\\\\\\p{L}|\\\\\\\\d|_)+:)?((?:\\\\\\\\p{L}|\\\\\\\\d|_)+))\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.readwrite.powershell\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.powershell\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.variable.drive.powershell\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.braces.end\\\"}},\\\"match\\\":\\\"(?i:(\\\\\\\\$)(\\\\\\\\{)((?:\\\\\\\\p{L}|\\\\\\\\d|_)+:)?([^}]*[^}`])(\\\\\\\\}))\\\"}]}},\\\"scopeName\\\":\\\"source.powershell\\\",\\\"aliases\\\":[\\\"ps\\\",\\\"ps1\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Prisma\\\",\\\"fileTypes\\\":[\\\"prisma\\\"],\\\"name\\\":\\\"prisma\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#triple_comment\\\"},{\\\"include\\\":\\\"#double_comment\\\"},{\\\"include\\\":\\\"#multi_line_comment\\\"},{\\\"include\\\":\\\"#model_block_definition\\\"},{\\\"include\\\":\\\"#config_block_definition\\\"},{\\\"include\\\":\\\"#enum_block_definition\\\"},{\\\"include\\\":\\\"#type_definition\\\"}],\\\"repository\\\":{\\\"array\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"name\\\":\\\"source.prisma.array\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}]},\\\"assignment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(\\\\\\\\w+)\\\\\\\\s*(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.assignment.prisma\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.terraform\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"},{\\\"include\\\":\\\"#double_comment_inline\\\"}]}]},\\\"attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.attribute.prisma\\\"}},\\\"match\\\":\\\"(@@?[\\\\\\\\w\\\\\\\\.]+)\\\",\\\"name\\\":\\\"source.prisma.attribute\\\"},\\\"attribute_with_arguments\\\":{\\\"begin\\\":\\\"(@@?[\\\\\\\\w\\\\\\\\.]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.attribute.prisma\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"name\\\":\\\"source.prisma.attribute.with_arguments\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#named_argument\\\"},{\\\"include\\\":\\\"#value\\\"}]},\\\"boolean\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.prisma\\\"},\\\"config_block_definition\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(generator|datasource)\\\\\\\\s+([A-Za-z][\\\\\\\\w]*)\\\\\\\\s+({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.config.prisma\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.config.prisma\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"name\\\":\\\"source.prisma.embedded.source\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#triple_comment\\\"},{\\\"include\\\":\\\"#double_comment\\\"},{\\\"include\\\":\\\"#multi_line_comment\\\"},{\\\"include\\\":\\\"#assignment\\\"}]},\\\"double_comment\\\":{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.prisma\\\"},\\\"double_comment_inline\\\":{\\\"match\\\":\\\"//[^\\\\\\\\n]*\\\",\\\"name\\\":\\\"comment.prisma\\\"},\\\"double_quoted_string\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.double.start.prisma\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.double.end.prisma\\\"}},\\\"name\\\":\\\"unnamed\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_interpolation\\\"},{\\\"match\\\":\\\"([\\\\\\\\w\\\\\\\\-\\\\\\\\/\\\\\\\\._\\\\\\\\\\\\\\\\%@:\\\\\\\\?=]+)\\\",\\\"name\\\":\\\"string.quoted.double.prisma\\\"}]},\\\"enum_block_definition\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(enum)\\\\\\\\s+([A-Za-z][\\\\\\\\w]*)\\\\\\\\s+({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum.prisma\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.enum.prisma\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"name\\\":\\\"source.prisma.embedded.source\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#triple_comment\\\"},{\\\"include\\\":\\\"#double_comment\\\"},{\\\"include\\\":\\\"#multi_line_comment\\\"},{\\\"include\\\":\\\"#enum_value_definition\\\"}]},\\\"enum_value_definition\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.assignment.prisma\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\w+)\\\\\\\\s*\\\"},{\\\"include\\\":\\\"#attribute_with_arguments\\\"},{\\\"include\\\":\\\"#attribute\\\"}]},\\\"field_definition\\\":{\\\"name\\\":\\\"scalar.field\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.assignment.prisma\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.colon.prisma\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.language.relations.prisma\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.type.primitive.prisma\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.list_type.prisma\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.optional_type.prisma\\\"},\\\"7\\\":{\\\"name\\\":\\\"invalid.illegal.required_type.prisma\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\w+)(\\\\\\\\s*:)?\\\\\\\\s+((?!(?:Int|BigInt|String|DateTime|Bytes|Decimal|Float|Json|Boolean)\\\\\\\\b)\\\\\\\\b\\\\\\\\w+)?(Int|BigInt|String|DateTime|Bytes|Decimal|Float|Json|Boolean)?(\\\\\\\\[\\\\\\\\])?(\\\\\\\\?)?(\\\\\\\\!)?\\\"},{\\\"include\\\":\\\"#attribute_with_arguments\\\"},{\\\"include\\\":\\\"#attribute\\\"}]},\\\"functional\\\":{\\\"begin\\\":\\\"(\\\\\\\\w+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.functional.prisma\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"name\\\":\\\"source.prisma.functional\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}]},\\\"identifier\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w)+\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.constant.prisma\\\"}]},\\\"literal\\\":{\\\"name\\\":\\\"source.prisma.literal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#double_quoted_string\\\"},{\\\"include\\\":\\\"#identifier\\\"}]},\\\"map_key\\\":{\\\"name\\\":\\\"source.prisma.key\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.key.prisma\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.separator.key-value.prisma\\\"}},\\\"match\\\":\\\"(\\\\\\\\w+)\\\\\\\\s*(:)\\\\\\\\s*\\\"}]},\\\"model_block_definition\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(model|type|view)\\\\\\\\s+([A-Za-z][\\\\\\\\w]*)\\\\\\\\s*({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.model.prisma\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.model.prisma\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.prisma\\\"}},\\\"name\\\":\\\"source.prisma.embedded.source\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#triple_comment\\\"},{\\\"include\\\":\\\"#double_comment\\\"},{\\\"include\\\":\\\"#multi_line_comment\\\"},{\\\"include\\\":\\\"#field_definition\\\"}]},\\\"multi_line_comment\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.prisma\\\"},\\\"named_argument\\\":{\\\"name\\\":\\\"source.prisma.named_argument\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#map_key\\\"},{\\\"include\\\":\\\"#value\\\"}]},\\\"number\\\":{\\\"match\\\":\\\"((0(x|X)[0-9a-fA-F]*)|(\\\\\\\\+|-)?\\\\\\\\b(([0-9]+\\\\\\\\.?[0-9]*)|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)([LlFfUuDdg]|UL|ul)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.prisma\\\"},\\\"string_interpolation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.interpolation.start.prisma\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.interpolation.end.prisma\\\"}},\\\"name\\\":\\\"source.tag.embedded.source.prisma\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}]}]},\\\"triple_comment\\\":{\\\"begin\\\":\\\"///\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.prisma\\\"},\\\"type_definition\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.type.prisma\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.type.prisma\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.primitive.prisma\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(type)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s*=\\\\\\\\s*(\\\\\\\\w+)\\\"},{\\\"include\\\":\\\"#attribute_with_arguments\\\"},{\\\"include\\\":\\\"#attribute\\\"}]},\\\"value\\\":{\\\"name\\\":\\\"source.prisma.value\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#functional\\\"},{\\\"include\\\":\\\"#literal\\\"}]}},\\\"scopeName\\\":\\\"source.prisma\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Prolog\\\",\\\"fileTypes\\\":[\\\"pl\\\",\\\"pro\\\"],\\\"name\\\":\\\"prolog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?<=:-)\\\\\\\\s*\\\",\\\"end\\\":\\\"(\\\\\\\\.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.clause.bodyend.prolog\\\"}},\\\"name\\\":\\\"meta.clause.body.prolog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#builtin\\\"},{\\\"include\\\":\\\"#controlandkeywords\\\"},{\\\"include\\\":\\\"#atom\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"meta.clause.body.prolog\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*([a-z][a-zA-Z0-9_]*)(\\\\\\\\(?)(?=.*:-.*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.clause.prolog\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin\\\"}},\\\"end\\\":\\\"((\\\\\\\\)?))\\\\\\\\s*(:-)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.clause.bodybegin.prolog\\\"}},\\\"name\\\":\\\"meta.clause.head.prolog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#atom\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#constants\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*([a-z][a-zA-Z0-9_]*)(\\\\\\\\(?)(?=.*-->.*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.dcg.prolog\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin\\\"}},\\\"end\\\":\\\"((\\\\\\\\)?))\\\\\\\\s*(-->)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.dcg.bodybegin.prolog\\\"}},\\\"name\\\":\\\"meta.dcg.head.prolog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#atom\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#constants\\\"}]},{\\\"begin\\\":\\\"(?<=-->)\\\\\\\\s*\\\",\\\"end\\\":\\\"(\\\\\\\\.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.dcg.bodyend.prolog\\\"}},\\\"name\\\":\\\"meta.dcg.body.prolog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#controlandkeywords\\\"},{\\\"include\\\":\\\"#atom\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"meta.dcg.body.prolog\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*([a-zA-Z][a-zA-Z0-9_]*)(\\\\\\\\(?)(?!.*(:-|-->).*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.fact.prolog\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin\\\"}},\\\"end\\\":\\\"((\\\\\\\\)?))\\\\\\\\s*(\\\\\\\\.)(?!\\\\\\\\d+)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.fact.end.prolog\\\"}},\\\"name\\\":\\\"meta.fact.prolog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#atom\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#constants\\\"}]}],\\\"repository\\\":{\\\"atom\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![a-zA-Z0-9_])[a-z][a-zA-Z0-9_]*(?!\\\\\\\\s*\\\\\\\\(|[a-zA-Z0-9_])\\\",\\\"name\\\":\\\"constant.other.atom.simple.prolog\\\"},{\\\"match\\\":\\\"'.*?'\\\",\\\"name\\\":\\\"constant.other.atom.quoted.prolog\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\]\\\",\\\"name\\\":\\\"constant.other.atom.emptylist.prolog\\\"}]},\\\"builtin\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(op|nl|fail|dynamic|discontiguous|initialization|meta_predicate|module_transparent|multifile|public|thread_local|thread_initialization|volatile)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other\\\"},{\\\"match\\\":\\\"\\\\\\\\b(abolish|abort|abs|absolute_file_name|access_file|acos|acosh|acyclic_term|add_import_module|append|apropos|arg|asin|asinh|assert|asserta|assertz|at_end_of_stream|at_halt|atan|atanh|atom|atom_chars|atom_codes|atom_concat|atom_length|atom_number|atom_prefix|atom_string|atom_to_stem_list|atom_to_term|atomic|atomic_concat|atomic_list_concat|atomics_to_string|attach_packs|attr_portray_hook|attr_unify_hook|attribute_goals|attvar|autoload|autoload_path|b_getval|b_set_dict|b_setval|bagof|begin_tests|between|blob|break|byte_count|call_dcg|call_residue_vars|callable|cancel_halt|catch|ceil|ceiling|char_code|char_conversion|char_type|character_count|chdir|chr_leash|chr_notrace|chr_show_store|chr_trace|clause|clause_property|close|close_dde_conversation|close_table|code_type|collation_key|compare|compare_strings|compile_aux_clauses|compile_predicates|compiling|compound|compound_name_arguments|compound_name_arity|consult|context_module|copy_predicate_clauses|copy_stream_data|copy_term|copy_term_nat|copysign|cos|cosh|cputime|create_prolog_flag|current_arithmetic_function|current_atom|current_blob|current_char_conversion|current_engine|current_flag|current_format_predicate|current_functor|current_input|current_key|current_locale|current_module|current_op|current_output|current_predicate|current_prolog_flag|current_signal|current_stream|current_trie|cyclic_term|date_time_stamp|date_time_value|day_of_the_week|dcg_translate_rule|dde_current_connection|dde_current_service|dde_execute|dde_poke|dde_register_service|dde_request|dde_unregister_service|debug|debugging|default_module|del_attr|del_attrs|del_dict|delete_directory|delete_file|delete_import_module|deterministic|dict_create|dict_pairs|dif|directory_files|divmod|doc_browser|doc_collect|doc_load_library|doc_server|double_metaphone|downcase_atom|dtd|dtd_property|duplicate_term|dwim_match|dwim_predicate|e|edit|encoding|engine_create|engine_fetch|engine_next|engine_next_reified|engine_post|engine_self|engine_yield|ensure_loaded|epsilon|erase|erf|erfc|eval|exception|exists_directory|exists_file|exists_source|exp|expand_answer|expand_file_name|expand_file_search_path|expand_goal|expand_query|expand_term|explain|fast_read|fast_term_serialized|fast_write|file_base_name|file_directory_name|file_name_extension|file_search_path|fill_buffer|find_chr_constraint|findall|findnsols|flag|float|float_fractional_part|float_integer_part|floor|flush_output|forall|format|format_predicate|format_time|free_dtd|free_sgml_parser|free_table|freeze|frozen|functor|garbage_collect|garbage_collect_atoms|garbage_collect_clauses|gdebug|get|get_attr|get_attrs|get_byte|get_char|get_code|get_dict|get_flag|get_sgml_parser|get_single_char|get_string_code|get_table_attribute|get_time|getbit|getenv|goal_expansion|ground|gspy|gtrace|guitracer|gxref|gzopen|halt|help|import_module|in_pce_thread|in_pce_thread_sync|in_table|include|inf|instance|integer|iri_xml_namespace|is_absolute_file_name|is_dict|is_engine|is_list|is_stream|is_thread|keysort|known_licenses|leash|length|lgamma|library_directory|license|line_count|line_position|list_strings|listing|load_dtd|load_files|load_html|load_rdf|load_sgml|load_structure|load_test_files|load_xml|locale_create|locale_destroy|locale_property|locale_sort|log|lsb|make|make_directory|make_library_index|max|memberchk|message_hook|message_property|message_queue_create|message_queue_destroy|message_queue_property|message_to_string|min|module|module_property|msb|msort|mutex_create|mutex_destroy|mutex_lock|mutex_property|mutex_statistics|mutex_trylock|mutex_unlock|name|nan|nb_current|nb_delete|nb_getval|nb_link_dict|nb_linkarg|nb_linkval|nb_set_dict|nb_setarg|nb_setval|new_dtd|new_order_table|new_sgml_parser|new_table|nl|nodebug|noguitracer|nonvar|noprotocol|normalize_space|nospy|nospyall|notrace|nth_clause|nth_integer_root_and_remainder|number|number_chars|number_codes|number_string|numbervars|odbc_close_statement|odbc_connect|odbc_current_connection|odbc_current_table|odbc_data_source|odbc_debug|odbc_disconnect|odbc_driver_connect|odbc_end_transaction|odbc_execute|odbc_fetch|odbc_free_statement|odbc_get_connection|odbc_prepare|odbc_query|odbc_set_connection|odbc_statistics|odbc_table_column|odbc_table_foreign_key|odbc_table_primary_key|odbc_type|on_signal|op|open|open_dde_conversation|open_dtd|open_null_stream|open_resource|open_string|open_table|order_table_mapping|parse_time|passed|pce_dispatch|pdt_install_console|peek_byte|peek_char|peek_code|peek_string|phrase|plus|popcount|porter_stem|portray|portray_clause|powm|predicate_property|predsort|prefix_string|print|print_message|print_message_lines|process_rdf|profile|profiler|project_attributes|prolog|prolog_choice_attribute|prolog_current_choice|prolog_current_frame|prolog_cut_to|prolog_debug|prolog_exception_hook|prolog_file_type|prolog_frame_attribute|prolog_ide|prolog_list_goal|prolog_load_context|prolog_load_file|prolog_nodebug|prolog_skip_frame|prolog_skip_level|prolog_stack_property|prolog_to_os_filename|prolog_trace_interception|prompt|protocol|protocola|protocolling|put|put_attr|put_attrs|put_byte|put_char|put_code|put_dict|qcompile|qsave_program|random|random_float|random_property|rational|rationalize|rdf_write_xml|read|read_clause|read_history|read_link|read_pending_chars|read_pending_codes|read_string|read_table_fields|read_table_record|read_table_record_data|read_term|read_term_from_atom|recorda|recorded|recordz|redefine_system_predicate|reexport|reload_library_index|rename_file|require|reset|reset_profiler|resource|retract|retractall|round|run_tests|running_tests|same_file|same_term|see|seeing|seek|seen|select_dict|set_end_of_stream|set_flag|set_input|set_locale|set_module|set_output|set_prolog_IO|set_prolog_flag|set_prolog_stack|set_random|set_sgml_parser|set_stream|set_stream_position|set_test_options|setarg|setenv|setlocale|setof|sgml_parse|shell|shift|show_coverage|show_profile|sign|sin|sinh|size_file|skip|sleep|sort|source_exports|source_file|source_file_property|source_location|split_string|spy|sqrt|stamp_date_time|statistics|stream_pair|stream_position_data|stream_property|string|string_chars|string_code|string_codes|string_concat|string_length|string_lower|string_upper|strip_module|style_check|sub_atom|sub_atom_icasechk|sub_string|subsumes_term|succ|suite|swritef|tab|table_previous_record|table_start_of_record|table_version|table_window|tan|tanh|tell|telling|term_attvars|term_expansion|term_hash|term_string|term_subsumer|term_to_atom|term_variables|test|test_report|text_to_string|thread_at_exit|thread_create|thread_detach|thread_exit|thread_get_message|thread_join|thread_message_hook|thread_peek_message|thread_property|thread_self|thread_send_message|thread_setconcurrency|thread_signal|thread_statistics|throw|time|time_file|tmp_file|tmp_file_stream|tokenize_atom|told|trace|tracing|trie_destroy|trie_gen|trie_insert|trie_insert_new|trie_lookup|trie_new|trie_property|trie_term|trim_stacks|truncate|tty_get_capability|tty_goto|tty_put|tty_size|ttyflush|unaccent_atom|unifiable|unify_with_occurs_check|unix|unknown|unload_file|unsetenv|upcase_atom|use_module|var|var_number|var_property|variant_hash|version|visible|wait_for_input|when|wildcard_match|win_add_dll_directory|win_exec|win_folder|win_has_menu|win_insert_menu|win_insert_menu_item|win_registry_get_value|win_remove_dll_directory|win_shell|win_window_pos|window_title|with_mutex|with_output_to|working_directory|write|write_canonical|write_length|write_term|writef|writeln|writeq|xml_is_dom|xml_to_rdf|zopen)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.prolog\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"%.*\\\",\\\"name\\\":\\\"comment.line.percent-sign.prolog\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.prolog\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.prolog\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![a-zA-Z]|/)(\\\\\\\\d+|(\\\\\\\\d+\\\\\\\\.\\\\\\\\d+))\\\",\\\"name\\\":\\\"constant.numeric.integer.prolog\\\"},{\\\"match\\\":\\\"\\\\\\\".*?\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.prolog\\\"}]},\\\"controlandkeywords\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(->)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.if.prolog\\\"}},\\\"end\\\":\\\"(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.else.prolog\\\"}},\\\"name\\\":\\\"meta.if.prolog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"include\\\":\\\"#builtin\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#atom\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"meta.if.body.prolog\\\"}]},{\\\"match\\\":\\\"!\\\",\\\"name\\\":\\\"keyword.control.cut.prolog\\\"},{\\\"match\\\":\\\"(\\\\\\\\s(is)\\\\\\\\s)|=:=|=\\\\\\\\.\\\\\\\\.|=?\\\\\\\\\\\\\\\\?=|\\\\\\\\\\\\\\\\\\\\\\\\+|@?>|@?=?<|\\\\\\\\+|\\\\\\\\*|\\\\\\\\-\\\",\\\"name\\\":\\\"keyword.operator.prolog\\\"}]},\\\"variable\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![a-zA-Z0-9_])[A-Z][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"variable.parameter.uppercase.prolog\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)_\\\",\\\"name\\\":\\\"variable.language.anonymous.prolog\\\"}]}},\\\"scopeName\\\":\\\"source.prolog\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Protocol Buffer 3\\\",\\\"fileTypes\\\":[\\\"proto\\\"],\\\"name\\\":\\\"proto\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#syntax\\\"},{\\\"include\\\":\\\"#package\\\"},{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#optionStmt\\\"},{\\\"include\\\":\\\"#message\\\"},{\\\"include\\\":\\\"#enum\\\"},{\\\"include\\\":\\\"#service\\\"}],\\\"repository\\\":{\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.proto\\\"},{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.proto\\\"}]},\\\"constants\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false|max|[A-Z_]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.proto\\\"},\\\"enum\\\":{\\\"begin\\\":\\\"(enum)(\\\\\\\\s+)([A-Za-z][A-Za-z0-9_]*)(\\\\\\\\s*)(\\\\\\\\{)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.class.proto\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#reserved\\\"},{\\\"include\\\":\\\"#optionStmt\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"([A-Za-z][A-Za-z0-9_]*)\\\\\\\\s*(=)\\\\\\\\s*(0[xX][0-9a-fA-F]+|[0-9]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.proto\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.proto\\\"}},\\\"end\\\":\\\"(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.proto\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fieldOptions\\\"}]}]},\\\"field\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(optional|repeated|required)?\\\\\\\\s*\\\\\\\\b([\\\\\\\\w.]+)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s*(=)\\\\\\\\s*(0[xX][0-9a-fA-F]+|[0-9]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.proto\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.proto\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.assignment.proto\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.proto\\\"}},\\\"end\\\":\\\"(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.proto\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fieldOptions\\\"}]},\\\"fieldOptions\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#subMsgOption\\\"},{\\\"include\\\":\\\"#optionName\\\"}]},\\\"ident\\\":{\\\"match\\\":\\\"[A-Za-z][A-Za-z0-9_]*\\\",\\\"name\\\":\\\"entity.name.class.proto\\\"},\\\"import\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.quoted.double.proto.import\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.terminator.proto\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(import)\\\\\\\\s+(weak|public)?\\\\\\\\s*(\\\\\\\"[^\\\\\\\"]+\\\\\\\")\\\\\\\\s*(;)\\\"},\\\"kv\\\":{\\\"begin\\\":\\\"(\\\\\\\\w+)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.proto\\\"}},\\\"end\\\":\\\"(;)|,|(?=[}/_a-zA-Z])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.proto\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#subMsgOption\\\"}]},\\\"mapfield\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(map)\\\\\\\\s*(<)\\\\\\\\s*([\\\\\\\\w.]+)\\\\\\\\s*,\\\\\\\\s*([\\\\\\\\w.]+)\\\\\\\\s*(>)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\s*(=)\\\\\\\\s*(\\\\\\\\d+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.proto\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.proto\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.proto\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.proto\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.other.proto\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.assignment.proto\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.numeric.proto\\\"}},\\\"end\\\":\\\"(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.proto\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fieldOptions\\\"}]},\\\"message\\\":{\\\"begin\\\":\\\"(message|extend)(\\\\\\\\s+)([A-Za-z_][A-Za-z0-9_.]*)(\\\\\\\\s*)(\\\\\\\\{)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.class.message.proto\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#reserved\\\"},{\\\"include\\\":\\\"$self\\\"},{\\\"include\\\":\\\"#enum\\\"},{\\\"include\\\":\\\"#optionStmt\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#oneof\\\"},{\\\"include\\\":\\\"#field\\\"},{\\\"include\\\":\\\"#mapfield\\\"}]},\\\"method\\\":{\\\"begin\\\":\\\"(rpc)\\\\\\\\s+([A-Za-z][A-Za-z0-9_]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function\\\"}},\\\"end\\\":\\\"\\\\\\\\}|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.proto\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#optionStmt\\\"},{\\\"include\\\":\\\"#rpcKeywords\\\"},{\\\"include\\\":\\\"#ident\\\"}]},\\\"number\\\":{\\\"match\\\":\\\"\\\\\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\\\\\.?[0-9]*)|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.proto\\\"},\\\"oneof\\\":{\\\"begin\\\":\\\"(oneof)\\\\\\\\s+([A-Za-z][A-Za-z0-9_]*)\\\\\\\\s*\\\\\\\\{?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.proto\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#optionStmt\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#field\\\"}]},\\\"optionName\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.other.proto\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.other.proto\\\"}},\\\"match\\\":\\\"(\\\\\\\\w+|\\\\\\\\(\\\\\\\\w+(\\\\\\\\.\\\\\\\\w+)*\\\\\\\\))(\\\\\\\\.\\\\\\\\w+)*\\\"},\\\"optionStmt\\\":{\\\"begin\\\":\\\"(option)\\\\\\\\s+(\\\\\\\\w+|\\\\\\\\(\\\\\\\\w+(\\\\\\\\.\\\\\\\\w+)*\\\\\\\\))(\\\\\\\\.\\\\\\\\w+)*\\\\\\\\s*(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.other.proto\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.other.proto\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.other.proto\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.assignment.proto\\\"}},\\\"end\\\":\\\"(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.proto\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#subMsgOption\\\"}]},\\\"package\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.proto.package\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.terminator.proto\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(package)\\\\\\\\s+([\\\\\\\\w.]+)\\\\\\\\s*(;)\\\"},\\\"reserved\\\":{\\\"begin\\\":\\\"(reserved)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"}},\\\"end\\\":\\\"(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.proto\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.proto\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.proto\\\"}},\\\"match\\\":\\\"(\\\\\\\\d+)(\\\\\\\\s+(to)\\\\\\\\s+(\\\\\\\\d+))?\\\"},{\\\"include\\\":\\\"#string\\\"}]},\\\"rpcKeywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(stream|returns)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"service\\\":{\\\"begin\\\":\\\"(service)\\\\\\\\s+([A-Za-z][A-Za-z0-9_.]*)\\\\\\\\s*\\\\\\\\{?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.message.proto\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#optionStmt\\\"},{\\\"include\\\":\\\"#method\\\"}]},\\\"storagetypes\\\":{\\\"match\\\":\\\"\\\\\\\\b(double|float|int32|int64|uint32|uint64|sint32|sint64|fixed32|fixed64|sfixed32|sfixed64|bool|string|bytes)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.proto\\\"},\\\"string\\\":{\\\"match\\\":\\\"('([^']|\\\\\\\\')*')|(\\\\\\\"([^\\\\\\\"]|\\\\\\\\\\\\\\\")*\\\\\\\")\\\",\\\"name\\\":\\\"string.quoted.double.proto\\\"},\\\"subMsgOption\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#kv\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"syntax\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.proto\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.proto\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.quoted.double.proto.syntax\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.terminator.proto\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(syntax)\\\\\\\\s*(=)\\\\\\\\s*(\\\\\\\"proto[23]\\\\\\\")\\\\\\\\s*(;)\\\"}},\\\"scopeName\\\":\\\"source.proto\\\",\\\"aliases\\\":[\\\"protobuf\\\"]}\"))\n\nexport default [\nlang\n]\n", "import javascript from './javascript.mjs'\nimport css from './css.mjs'\nimport html from './html.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Pug\\\",\\\"name\\\":\\\"pug\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Doctype declaration.\\\",\\\"match\\\":\\\"^(!!!|doctype)(\\\\\\\\s*[a-zA-Z0-9-_]+)?\\\",\\\"name\\\":\\\"meta.tag.sgml.doctype.html\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)//-\\\",\\\"comment\\\":\\\"Unbuffered (pug-only) comments.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"comment.unbuffered.block.pug\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)//\\\",\\\"comment\\\":\\\"Buffered (html) comments.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"string.comment.buffered.block.pug\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.comment.comment.block.pug\\\"}},\\\"comment\\\":\\\"Buffered comments inside buffered comments will generate invalid html.\\\",\\\"match\\\":\\\"^\\\\\\\\s*(//)(?!-)\\\",\\\"name\\\":\\\"string.comment.buffered.block.pug\\\"}]},{\\\"begin\\\":\\\"<!--\\\",\\\"end\\\":\\\"--\\\\\\\\s*>\\\",\\\"name\\\":\\\"comment.unbuffered.block.pug\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"invalid.illegal.comment.comment.block.pug\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)-$\\\",\\\"comment\\\":\\\"Unbuffered code block.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(script)((\\\\\\\\.$)|(?=[^\\\\\\\\n]*((text|application)/javascript|module).*\\\\\\\\.$))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.pug\\\"}},\\\"comment\\\":\\\"Script tag with JavaScript code.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"meta.tag.other\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=\\\\\\\\()\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G(?=[.#])\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#complete_tag\\\"}]},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(style)((\\\\\\\\.$)|(?=[.#(].*\\\\\\\\.$))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.pug\\\"}},\\\"comment\\\":\\\"Style tag with CSS code.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"meta.tag.other\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=\\\\\\\\()\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G(?=[.#])\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#complete_tag\\\"}]},{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(sass)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.sass.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.sass.filter.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.sass\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(scss)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.scss.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.css.scss.filter.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.css.scss\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(less)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.less.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.less.filter.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.less\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(stylus)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.stylus.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.stylus\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(coffee(-?script)?)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.coffeescript.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.coffeescript.filter.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.coffee\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(uglify-js)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.js.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.js.filter.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)((:(?=.))|(:$))\\\",\\\"beginCaptures\\\":{\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.empty.generic.filter.pug\\\"}},\\\"comment\\\":\\\"Generic Pug filter.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?<=:)(?=.)\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"name.generic.filter.pug\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G\\\\\\\\(\\\",\\\"name\\\":\\\"invalid.illegal.name.generic.filter.pug\\\"},{\\\"match\\\":\\\"[\\\\\\\\w-]\\\",\\\"name\\\":\\\"constant.language.name.generic.filter.pug\\\"},{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"match\\\":\\\"\\\\\\\\W\\\",\\\"name\\\":\\\"invalid.illegal.name.generic.filter.pug\\\"}]}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(?:(?=\\\\\\\\.$)|(?:(?=[\\\\\\\\w.#].*?\\\\\\\\.$)(?=(?:(?:(?:(?:(?:#[\\\\\\\\w-]+)|(?:\\\\\\\\.[\\\\\\\\w-]+))|(?:(?:[#!]\\\\\\\\{[^}]*\\\\\\\\})|(?:\\\\\\\\w(?:(?:[\\\\\\\\w:-]+[\\\\\\\\w-])|(?:[\\\\\\\\w-]*)))))(?:(?:#[\\\\\\\\w-]+)|(?:\\\\\\\\.[\\\\\\\\w-]+)|(?:\\\\\\\\((?:[^()\\\\\\\\'\\\\\\\\\\\\\\\"]*(?:(?:\\\\\\\\'(?:[^\\\\\\\\']|(?:(?<!\\\\\\\\\\\\\\\\)\\\\\\\\\\\\\\\\\\\\\\\\'))*\\\\\\\\')|(?:\\\\\\\\\\\\\\\"(?:[^\\\\\\\\\\\\\\\"]|(?:(?<!\\\\\\\\\\\\\\\\)\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"))*\\\\\\\\\\\\\\\")))*[^()]*\\\\\\\\))*)*)(?:(?:(?::\\\\\\\\s+)|(?<=\\\\\\\\)))(?:(?:(?:(?:#[\\\\\\\\w-]+)|(?:\\\\\\\\.[\\\\\\\\w-]+))|(?:(?:[#!]\\\\\\\\{[^}]*\\\\\\\\})|(?:\\\\\\\\w(?:(?:[\\\\\\\\w:-]+[\\\\\\\\w-])|(?:[\\\\\\\\w-]*)))))(?:(?:#[\\\\\\\\w-]+)|(?:\\\\\\\\.[\\\\\\\\w-]+)|(?:\\\\\\\\((?:[^()\\\\\\\\'\\\\\\\\\\\\\\\"]*(?:(?:\\\\\\\\'(?:[^\\\\\\\\']|(?:(?<!\\\\\\\\\\\\\\\\)\\\\\\\\\\\\\\\\\\\\\\\\'))*\\\\\\\\')|(?:\\\\\\\\\\\\\\\"(?:[^\\\\\\\\\\\\\\\"]|(?:(?<!\\\\\\\\\\\\\\\\)\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"))*\\\\\\\\\\\\\\\")))*[^()]*\\\\\\\\))*)*))*)\\\\\\\\.$)(?:(?:(#[\\\\\\\\w-]+)|(\\\\\\\\.[\\\\\\\\w-]+))|((?:[#!]\\\\\\\\{[^}]*\\\\\\\\})|(?:\\\\\\\\w(?:(?:[\\\\\\\\w:-]+[\\\\\\\\w-])|(?:[\\\\\\\\w-]*)))))))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"meta.selector.css entity.other.attribute-name.id.css.pug\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.selector.css entity.other.attribute-name.class.css.pug\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.tag.other entity.name.tag.pug\\\"}},\\\"comment\\\":\\\"Generated from dot_block_tag.py\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.$\\\",\\\"name\\\":\\\"storage.type.function.pug.dot-block-dot\\\"},{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"#complete_tag\\\"},{\\\"begin\\\":\\\"^(?=.)\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"text.block.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#embedded_html\\\"},{\\\"include\\\":\\\"#html_entity\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]}]},{\\\"begin\\\":\\\"^\\\\\\\\s*\\\",\\\"comment\\\":\\\"All constructs that generally span a single line starting with any number of white-spaces.\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#blocks_and_includes\\\"},{\\\"include\\\":\\\"#unbuffered_code\\\"},{\\\"include\\\":\\\"#mixin_definition\\\"},{\\\"include\\\":\\\"#mixin_call\\\"},{\\\"include\\\":\\\"#flow_control\\\"},{\\\"include\\\":\\\"#flow_control_each\\\"},{\\\"include\\\":\\\"#case_conds\\\"},{\\\"begin\\\":\\\"\\\\\\\\|\\\",\\\"comment\\\":\\\"Tag pipe text line.\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"text.block.pipe.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#embedded_html\\\"},{\\\"include\\\":\\\"#html_entity\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},{\\\"include\\\":\\\"#printed_expression\\\"},{\\\"begin\\\":\\\"\\\\\\\\G(?=(#[^\\\\\\\\{\\\\\\\\w-])|[^\\\\\\\\w.#])\\\",\\\"comment\\\":\\\"Line starting with characters incompatible with tag name/id/class is standalone text.\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"</?(?=[!#])\\\",\\\"end\\\":\\\">|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#embedded_html\\\"},{\\\"include\\\":\\\"#html_entity\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},{\\\"include\\\":\\\"#complete_tag\\\"}]}],\\\"repository\\\":{\\\"babel_parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)|(({\\\\\\\\s*)?$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#babel_parens\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"blocks_and_includes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.import.include.pug\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.control.import.include.pug\\\"}},\\\"comment\\\":\\\"Template blocks and includes.\\\",\\\"match\\\":\\\"(extends|include|yield|append|prepend|block( (append|prepend))?)\\\\\\\\s+(.*)$\\\",\\\"name\\\":\\\"meta.first-class.pug\\\"},\\\"case_conds\\\":{\\\"begin\\\":\\\"(default|when)((\\\\\\\\s+|(?=:))|$)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug\\\"}},\\\"comment\\\":\\\"Pug case conditionals.\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.control.flow.pug\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?!:)\\\",\\\"end\\\":\\\"(?=:\\\\\\\\s+)|$\\\",\\\"name\\\":\\\"js.embedded.control.flow.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#case_when_paren\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\":\\\\\\\\s+\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"tag.case.control.flow.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#complete_tag\\\"}]}]},\\\"case_when_paren\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"js.when.control.flow.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#case_when_paren\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"invalid.illegal.name.tag.pug\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"complete_tag\\\":{\\\"begin\\\":\\\"(?=[\\\\\\\\w.#])|(:\\\\\\\\s*)\\\",\\\"end\\\":\\\"(\\\\\\\\.?$)|(?=:.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug.dot-block-dot\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#blocks_and_includes\\\"},{\\\"include\\\":\\\"#unbuffered_code\\\"},{\\\"include\\\":\\\"#mixin_call\\\"},{\\\"include\\\":\\\"#flow_control\\\"},{\\\"include\\\":\\\"#flow_control_each\\\"},{\\\"match\\\":\\\"(?<=:)\\\\\\\\w.*$\\\",\\\"name\\\":\\\"invalid.illegal.name.tag.pug\\\"},{\\\"include\\\":\\\"#tag_name\\\"},{\\\"include\\\":\\\"#tag_id\\\"},{\\\"include\\\":\\\"#tag_classes\\\"},{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"#tag_mixin_attributes\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.end.tag.pug\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.end.tag.pug\\\"}},\\\"match\\\":\\\"((\\\\\\\\.)\\\\\\\\s+$)|((:)\\\\\\\\s*$)\\\"},{\\\"include\\\":\\\"#printed_expression\\\"},{\\\"include\\\":\\\"#tag_text\\\"}]},\\\"embedded_html\\\":{\\\"begin\\\":\\\"(?=<[^>]*>)\\\",\\\"end\\\":\\\"$|(?=>)\\\",\\\"name\\\":\\\"html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},\\\"flow_control\\\":{\\\"begin\\\":\\\"(for|if|else if|else|until|while|unless|case)(\\\\\\\\s+|$)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug\\\"}},\\\"comment\\\":\\\"Pug control flow.\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.control.flow.pug\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"js.embedded.control.flow.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"flow_control_each\\\":{\\\"begin\\\":\\\"(each)(\\\\\\\\s+|$)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.control.flow.pug.each\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([\\\\\\\\w$_]+)(?:\\\\\\\\s*,\\\\\\\\s*([\\\\\\\\w$_]+))?\\\",\\\"name\\\":\\\"variable.other.pug.each-var\\\"},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"js.embedded.control.flow.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"html_entity\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.html.text.pug\\\"},{\\\"match\\\":\\\"[<>&]\\\",\\\"name\\\":\\\"invalid.illegal.html_entity.text.pug\\\"}]},\\\"inline_pug\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(#\\\\\\\\[)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.pug\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.pug\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"name\\\":\\\"inline.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#mixin_call\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\])(?=[\\\\\\\\w.#])|(:\\\\\\\\s*)\\\",\\\"end\\\":\\\"(?=\\\\\\\\]|(:.)|=|\\\\\\\\s)\\\",\\\"name\\\":\\\"tag.inline.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_name\\\"},{\\\"include\\\":\\\"#tag_id\\\"},{\\\"include\\\":\\\"#tag_classes\\\"},{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"#tag_mixin_attributes\\\"},{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"}]},{\\\"include\\\":\\\"#unbuffered_code\\\"},{\\\"include\\\":\\\"#printed_expression\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"},{\\\"include\\\":\\\"#inline_pug_text\\\"}]},\\\"inline_pug_text\\\":{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug_text\\\"}]},{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#embedded_html\\\"},{\\\"include\\\":\\\"#html_entity\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},\\\"interpolated_error\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)[#!]\\\\\\\\{(?=[^}]*$)\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"},\\\"interpolated_value\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)[#!]\\\\\\\\{(?=.*?\\\\\\\\})\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"string.interpolated.pug\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"{\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"js_braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_braces\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"js_brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_brackets\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"js_parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_parens\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"mixin_call\\\":{\\\"begin\\\":\\\"((?:mixin\\\\\\\\s+)|\\\\\\\\+)([\\\\\\\\w-]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.tag.other entity.name.function.pug\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\()|$\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\))\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"args.mixin.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_parens\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.tag.other entity.other.attribute-name.tag.pug\\\"}},\\\"match\\\":\\\"([^\\\\\\\\s(),=/]+)\\\\\\\\s*=\\\\\\\\s*\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"include\\\":\\\"#tag_attributes\\\"}]},\\\"mixin_definition\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.tag.other entity.name.function.pug\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.js\\\"}},\\\"match\\\":\\\"(mixin\\\\\\\\s+)([\\\\\\\\w-]+)(?:(\\\\\\\\()\\\\\\\\s*((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*)(?:,\\\\\\\\s*[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*)*)(\\\\\\\\)))?$\\\"},\\\"printed_expression\\\":{\\\"begin\\\":\\\"(!?\\\\\\\\=)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\])|$\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_brackets\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"tag_attribute_name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.tag.pug\\\"}},\\\"match\\\":\\\"([^\\\\\\\\s(),=/!]+)\\\\\\\\s*\\\"},\\\"tag_attribute_name_paren\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\s*\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"entity.other.attribute-name.tag.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attribute_name_paren\\\"},{\\\"include\\\":\\\"#tag_attribute_name\\\"}]},\\\"tag_attributes\\\":{\\\"begin\\\":\\\"(\\\\\\\\(\\\\\\\\s*)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.name.attribute.tag.pug\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.tag.other\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attribute_name_paren\\\"},{\\\"include\\\":\\\"#tag_attribute_name\\\"},{\\\"match\\\":\\\"!(?!=)\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"},{\\\"begin\\\":\\\"=\\\\\\\\s*\\\",\\\"end\\\":\\\"$|(?=,|(?:\\\\\\\\s+[^!%&*\\\\\\\\-+~|<>?/])|\\\\\\\\))\\\",\\\"name\\\":\\\"attribute_value\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_parens\\\"},{\\\"include\\\":\\\"#js_brackets\\\"},{\\\"include\\\":\\\"#js_braces\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(?<=[%&*\\\\\\\\-+~|<>:?/])\\\\\\\\s+\\\",\\\"end\\\":\\\"$|(?=,|(?:\\\\\\\\s+[^!%&*\\\\\\\\-+~|<>?/])|\\\\\\\\))\\\",\\\"name\\\":\\\"attribute_value2\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_parens\\\"},{\\\"include\\\":\\\"#js_brackets\\\"},{\\\"include\\\":\\\"#js_braces\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"tag_classes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"}},\\\"match\\\":\\\"\\\\\\\\.([^\\\\\\\\w-])?[\\\\\\\\w-]*\\\",\\\"name\\\":\\\"meta.selector.css entity.other.attribute-name.class.css.pug\\\"},\\\"tag_id\\\":{\\\"match\\\":\\\"#[\\\\\\\\w-]+\\\",\\\"name\\\":\\\"meta.selector.css entity.other.attribute-name.id.css.pug\\\"},\\\"tag_mixin_attributes\\\":{\\\"begin\\\":\\\"(&attributes\\\\\\\\()\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.pug\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.tag.other\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"attributes(?=\\\\\\\\))\\\",\\\"name\\\":\\\"storage.type.keyword.pug\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"tag_name\\\":{\\\"begin\\\":\\\"([#!]\\\\\\\\{(?=.*?\\\\\\\\}))|(\\\\\\\\w(([\\\\\\\\w:-]+[\\\\\\\\w-])|([\\\\\\\\w-]*)))\\\",\\\"end\\\":\\\"(\\\\\\\\G(?<!\\\\\\\\5[^\\\\\\\\w-]))|\\\\\\\\}|$\\\",\\\"name\\\":\\\"meta.tag.other entity.name.tag.pug\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?<=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.tag.other entity.name.tag.pug\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"{\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"tag_text\\\":{\\\"begin\\\":\\\"(?=.)\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#embedded_html\\\"},{\\\"include\\\":\\\"#html_entity\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},\\\"unbuffered_code\\\":{\\\"begin\\\":\\\"(-|(([a-zA-Z0-9_]+)\\\\\\\\s+=))\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.javascript.embedded.pug\\\"}},\\\"comment\\\":\\\"name = function() {}\\\",\\\"end\\\":\\\"(?=\\\\\\\\])|(({\\\\\\\\s*)?$)\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_brackets\\\"},{\\\"include\\\":\\\"#babel_parens\\\"},{\\\"include\\\":\\\"source.js\\\"}]}},\\\"scopeName\\\":\\\"text.pug\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\",\\\"css\\\",\\\"html\\\"],\\\"aliases\\\":[\\\"jade\\\"],\\\"embeddedLangsLazy\\\":[\\\"sass\\\",\\\"scss\\\",\\\"stylus\\\",\\\"coffee\\\"]}\"))\n\nexport default [\n...javascript,\n...css,\n...html,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Puppet\\\",\\\"fileTypes\\\":[\\\"pp\\\"],\\\"foldingStartMarker\\\":\\\"(^\\\\\\\\s*/\\\\\\\\*|(\\\\\\\\{|\\\\\\\\[|\\\\\\\\()\\\\\\\\s*$)\\\",\\\"foldingStopMarker\\\":\\\"(\\\\\\\\*/|^\\\\\\\\s*(\\\\\\\\}|\\\\\\\\]|\\\\\\\\)))\\\",\\\"name\\\":\\\"puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_comment\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.puppet\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(node)\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.puppet\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.puppet\\\"}},\\\"end\\\":\\\"(?={)\\\",\\\"name\\\":\\\"meta.definition.class.puppet\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bdefault\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.puppet\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#regex-literal\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(class)\\\\\\\\s+((?:[a-z][a-z0-9_]*)?(?:::[a-z][a-z0-9_]*)+|[a-z][a-z0-9_]*)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.puppet\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.puppet\\\"}},\\\"end\\\":\\\"(?={)\\\",\\\"name\\\":\\\"meta.definition.class.puppet\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(inherits)\\\\\\\\b\\\\\\\\s+\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.puppet\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\(|{)\\\",\\\"name\\\":\\\"meta.definition.class.inherits.puppet\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((?:[-_A-Za-z0-9\\\\\\\".]+::)*[-_A-Za-z0-9\\\\\\\".]+)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.puppet\\\"}]},{\\\"include\\\":\\\"#line_comment\\\"},{\\\"include\\\":\\\"#resource-parameters\\\"},{\\\"include\\\":\\\"#parameter-default-types\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(plan)\\\\\\\\s+((?:[a-z][a-z0-9_]*)?(?:::[a-z][a-z0-9_]*)+|[a-z][a-z0-9_]*)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.puppet\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.plan.puppet\\\"}},\\\"end\\\":\\\"(?={)\\\",\\\"name\\\":\\\"meta.definition.plan.puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_comment\\\"},{\\\"include\\\":\\\"#resource-parameters\\\"},{\\\"include\\\":\\\"#parameter-default-types\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(define|function)\\\\\\\\s+([a-z][a-z0-9_]*|(?:[a-z][a-z0-9_]*)?(?:::[a-z][a-z0-9_]*)+)\\\\\\\\s*(\\\\\\\\()\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.puppet\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.puppet\\\"}},\\\"end\\\":\\\"(?={)\\\",\\\"name\\\":\\\"meta.function.puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_comment\\\"},{\\\"include\\\":\\\"#resource-parameters\\\"},{\\\"include\\\":\\\"#parameter-default-types\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.puppet\\\"}},\\\"match\\\":\\\"\\\\\\\\b(case|else|elsif|if|unless)(?!::)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#resource-definition\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#puppet-datatypes\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"match\\\":\\\"((\\\\\\\\$?)\\\\\\\"?[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\\\\\"?):(?=\\\\\\\\s+|$)\\\",\\\"name\\\":\\\"entity.name.section.puppet\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(import|include|contain|require)\\\\\\\\s+(?!.*=>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.include.puppet\\\"}},\\\"contentName\\\":\\\"variable.parameter.include.puppet\\\",\\\"end\\\":\\\"(?=\\\\\\\\s|$)\\\",\\\"name\\\":\\\"meta.include.puppet\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+\\\\\\\\s*(?==>)\\\\\\\\s*\\\",\\\"name\\\":\\\"constant.other.key.puppet\\\"},{\\\"match\\\":\\\"(?<={)\\\\\\\\s*\\\\\\\\w+\\\\\\\\s*(?=})\\\",\\\"name\\\":\\\"constant.other.bareword.puppet\\\"},{\\\"match\\\":\\\"\\\\\\\\b(alert|crit|debug|defined|emerg|err|escape|fail|failed|file|generate|gsub|info|notice|package|realize|search|tag|tagged|template|warning)\\\\\\\\b(?!.*{)\\\",\\\"name\\\":\\\"support.function.puppet\\\"},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"punctuation.separator.key-value.puppet\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"keyword.control.orderarrow.puppet\\\"},{\\\"match\\\":\\\"~>\\\",\\\"name\\\":\\\"keyword.control.notifyarrow.puppet\\\"},{\\\"include\\\":\\\"#regex-literal\\\"}],\\\"repository\\\":{\\\"array\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.puppet\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.puppet\\\"}},\\\"name\\\":\\\"meta.array.puppet\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s*,\\\\\\\\s*\\\"},{\\\"include\\\":\\\"#parameter-default-types\\\"},{\\\"include\\\":\\\"#line_comment\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(absent|directory|false|file|present|running|stopped|true)\\\\\\\\b(?!.*{)\\\",\\\"name\\\":\\\"constant.language.puppet\\\"}]},\\\"double-quoted-string\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.puppet\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.puppet\\\"}},\\\"name\\\":\\\"string.quoted.double.interpolated.puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#interpolated_puppet\\\"}]},\\\"escaped_char\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.puppet\\\"},\\\"function_call\\\":{\\\"begin\\\":\\\"([a-zA-Z_][a-zA-Z0-9_]*)(\\\\\\\\()\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.function-call.puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-default-types\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameters.puppet\\\"}]},\\\"hash\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.hash.begin.puppet\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.hash.end.puppet\\\"}},\\\"name\\\":\\\"meta.hash.puppet\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+\\\\\\\\s*(?==>)\\\\\\\\s*\\\",\\\"name\\\":\\\"constant.other.key.puppet\\\"},{\\\"include\\\":\\\"#parameter-default-types\\\"},{\\\"include\\\":\\\"#line_comment\\\"}]},\\\"heredoc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"@\\\\\\\\([[:blank:]]*\\\\\\\"([^:\\\\\\\\/) \\\\\\\\t]+)\\\\\\\"[[:blank:]]*(:[[:blank:]]*[a-z][a-zA-Z0-9_+]*[[:blank:]]*)?(\\\\\\\\/[[:blank:]]*[tsrnL$]*)?[[:blank:]]*\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.puppet\\\"}},\\\"end\\\":\\\"^[[:blank:]]*(\\\\\\\\|[[:blank:]]*-|\\\\\\\\||-)?[[:blank:]]*\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.puppet\\\"}},\\\"name\\\":\\\"string.interpolated.heredoc.puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#interpolated_puppet\\\"}]},{\\\"begin\\\":\\\"@\\\\\\\\([[:blank:]]*([^:\\\\\\\\/) \\\\\\\\t]+)[[:blank:]]*(:[[:blank:]]*[a-z][a-zA-Z0-9_+]*[[:blank:]]*)?(\\\\\\\\/[[:blank:]]*[tsrnL$]*)?[[:blank:]]*\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.puppet\\\"}},\\\"end\\\":\\\"^[[:blank:]]*(\\\\\\\\|[[:blank:]]*-|\\\\\\\\||-)?[[:blank:]]*\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.puppet\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.puppet\\\"}]},\\\"interpolated_puppet\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\${)(\\\\\\\\d+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.puppet\\\"},\\\"2\\\":{\\\"name\\\":\\\"source.puppet variable.other.readwrite.global.pre-defined.puppet\\\"}},\\\"contentName\\\":\\\"source.puppet\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.puppet\\\"}},\\\"name\\\":\\\"meta.embedded.line.puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\${)(_[a-zA-Z0-9_]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.puppet\\\"},\\\"2\\\":{\\\"name\\\":\\\"source.puppet variable.other.readwrite.global.puppet\\\"}},\\\"contentName\\\":\\\"source.puppet\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.puppet\\\"}},\\\"name\\\":\\\"meta.embedded.line.puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\${)(([a-z][a-z0-9_]*)?(?:::[a-z][a-z0-9_]*)*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.puppet\\\"},\\\"2\\\":{\\\"name\\\":\\\"source.puppet variable.other.readwrite.global.puppet\\\"}},\\\"contentName\\\":\\\"source.puppet\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.puppet\\\"}},\\\"name\\\":\\\"meta.embedded.line.puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\${\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.puppet\\\"}},\\\"contentName\\\":\\\"source.puppet\\\",\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.puppet\\\"}},\\\"name\\\":\\\"meta.embedded.line.puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"keywords\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.puppet\\\"}},\\\"match\\\":\\\"\\\\\\\\b(undef)\\\\\\\\b\\\"},\\\"line_comment\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.number-sign.puppet\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.puppet\\\"}},\\\"match\\\":\\\"^((#).*$\\\\\\\\n?)\\\",\\\"name\\\":\\\"meta.comment.full-line.puppet\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.puppet\\\"}},\\\"match\\\":\\\"(#).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.puppet\\\"}]},\\\"nested_braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.puppet\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_braces\\\"}]},\\\"nested_braces_interpolated\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.puppet\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_braces_interpolated\\\"}]},\\\"nested_brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.puppet\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_brackets\\\"}]},\\\"nested_brackets_interpolated\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.puppet\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_brackets_interpolated\\\"}]},\\\"nested_parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.puppet\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nested_parens\\\"}]},\\\"nested_parens_interpolated\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.scope.puppet\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#nested_parens_interpolated\\\"}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"HEX 0x 0-f\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w|\\\\\\\\d)([-+]?)(?i:0x)(?i:[0-9a-f])+(?!\\\\\\\\w|\\\\\\\\d)\\\",\\\"name\\\":\\\"constant.numeric.hexadecimal.puppet\\\"},{\\\"comment\\\":\\\"INTEGERS [(+|-)] digits [e [(+|-)] digits]\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w|\\\\\\\\.)([-+]?)(?<!\\\\\\\\d)\\\\\\\\d+(?i:e(\\\\\\\\+|-){0,1}\\\\\\\\d+){0,1}(?!\\\\\\\\w|\\\\\\\\d|\\\\\\\\.)\\\",\\\"name\\\":\\\"constant.numeric.integer.puppet\\\"},{\\\"comment\\\":\\\"FLOAT [(+|-)] digits . digits [e [(+|-)] digits]\\\",\\\"match\\\":\\\"(?<!\\\\\\\\w)([-+]?)\\\\\\\\d+\\\\\\\\.\\\\\\\\d+(?i:e(\\\\\\\\+|-){0,1}\\\\\\\\d+){0,1}(?!\\\\\\\\w|\\\\\\\\d)\\\",\\\"name\\\":\\\"constant.numeric.integer.puppet\\\"}]},\\\"parameter-default-types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#hash\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#function_call\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#puppet-datatypes\\\"}]},\\\"puppet-datatypes\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Puppet Data type\\\",\\\"match\\\":\\\"(?<![a-zA-Z\\\\\\\\$])([A-Z][a-zA-Z0-9_]*)(?![a-zA-Z0-9_])\\\",\\\"name\\\":\\\"storage.type.puppet\\\"}]},\\\"regex-literal\\\":{\\\"comment\\\":\\\"Puppet Regular expression literal without interpolation\\\",\\\"match\\\":\\\"(\\\\\\\\/)(.+?)(?:[^\\\\\\\\\\\\\\\\]\\\\\\\\/)\\\",\\\"name\\\":\\\"string.regexp.literal.puppet\\\"},\\\"resource-definition\\\":{\\\"begin\\\":\\\"(?:^|\\\\\\\\b)(::[a-z][a-z0-9_]*|[a-z][a-z0-9_]*|(?:[a-z][a-z0-9_]*)?(?:::[a-z][a-z0-9_]*)+)\\\\\\\\s*({)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.definition.resource.puppet storage.type.puppet\\\"}},\\\"contentName\\\":\\\"entity.name.section.puppet\\\",\\\"end\\\":\\\":\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#array\\\"}]},\\\"resource-parameters\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.puppet\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.puppet\\\"}},\\\"match\\\":\\\"((\\\\\\\\$+)[a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\s*(?=,|\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.argument.puppet\\\"},{\\\"begin\\\":\\\"((\\\\\\\\$+)[a-zA-Z_][a-zA-Z0-9_]*)(?:\\\\\\\\s*(=)\\\\\\\\s*)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.puppet\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.puppet\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.puppet\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.argument.puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameter-default-types\\\"}]}]},\\\"single-quoted-string\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.puppet\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.puppet\\\"}},\\\"name\\\":\\\"string.quoted.single.puppet\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#double-quoted-string\\\"},{\\\"include\\\":\\\"#single-quoted-string\\\"}]},\\\"variable\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.puppet\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)(\\\\\\\\d+)\\\",\\\"name\\\":\\\"variable.other.readwrite.global.pre-defined.puppet\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.puppet\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)_[a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"variable.other.readwrite.global.puppet\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.puppet\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)(([a-z][a-zA-Z0-9_]*)?(?:::[a-z][a-zA-Z0-9_]*)*)\\\",\\\"name\\\":\\\"variable.other.readwrite.global.puppet\\\"}]}},\\\"scopeName\\\":\\\"source.puppet\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"PureScript\\\",\\\"fileTypes\\\":[\\\"purs\\\"],\\\"name\\\":\\\"purescript\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.purescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.purescript\\\"}},\\\"match\\\":\\\"(`)(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\\\\\\.)?[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(`)\\\",\\\"name\\\":\\\"keyword.operator.function.infix.purescript\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\b(module)(?!')\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"}},\\\"end\\\":\\\"(where)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"}},\\\"name\\\":\\\"meta.declaration.module.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#module_name\\\"},{\\\"include\\\":\\\"#module_exports\\\"},{\\\"match\\\":\\\"[a-z]+\\\",\\\"name\\\":\\\"invalid.purescript\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\b(class)(?!')\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.purescript\\\"}},\\\"end\\\":\\\"\\\\\\\\b(where)\\\\\\\\b|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"}},\\\"name\\\":\\\"meta.declaration.typeclass.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\b(else\\\\\\\\s+)?(derive\\\\\\\\s+)?(newtype\\\\\\\\s+)?(instance)(?!')\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"}},\\\"contentName\\\":\\\"meta.type-signature.purescript\\\",\\\"end\\\":\\\"\\\\\\\\b(where)\\\\\\\\b|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"}},\\\"name\\\":\\\"meta.declaration.instance.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(foreign)\\\\\\\\s+(import)\\\\\\\\s+(data)\\\\\\\\s+([\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.purescript\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.other.double-colon.purescript\\\"}},\\\"contentName\\\":\\\"meta.kind-signature.purescript\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1[ \\\\\\\\t]|[ \\\\\\\\t]*$)\\\",\\\"name\\\":\\\"meta.foreign.data.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double_colon\\\"},{\\\"include\\\":\\\"#kind_signature\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(foreign)\\\\\\\\s+(import)\\\\\\\\s+([\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.purescript\\\"}},\\\"contentName\\\":\\\"meta.type-signature.purescript\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1[ \\\\\\\\t]|[ \\\\\\\\t]*$)\\\",\\\"name\\\":\\\"meta.foreign.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double_colon\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\b(import)(?!')\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"}},\\\"end\\\":\\\"($|(?=--))\\\",\\\"name\\\":\\\"meta.import.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#module_name\\\"},{\\\"include\\\":\\\"#module_exports\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.purescript\\\"}},\\\"match\\\":\\\"\\\\\\\\b(as|hiding)\\\\\\\\b\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s)*(data|newtype)\\\\\\\\s+(.+?)\\\\\\\\s*(?=\\\\\\\\=|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"storage.type.data.purescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.type-signature.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]}},\\\"end\\\":\\\"^(?!\\\\\\\\1[ \\\\\\\\t]|[ \\\\\\\\t]*$)\\\",\\\"name\\\":\\\"meta.declaration.type.data.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.purescript\\\"}},\\\"match\\\":\\\"=\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#data_ctor\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"meta.type-signature.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]}},\\\"match\\\":\\\"(?:(?:\\\\\\\\b([\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*)\\\\\\\\s+)(?:(?<ctorArgs>(?:(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*|(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\\\\\\.)?[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*|(?:(?:[\\\\\\\\w()'\u2192\u21D2\\\\\\\\[\\\\\\\\],]|->|=>)+\\\\\\\\s*)+))(?:\\\\\\\\s*(?:\\\\\\\\s+)\\\\\\\\s*\\\\\\\\g<ctorArgs>)?)?))\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.pipe.purescript\\\"}},\\\"match\\\":\\\"\\\\\\\\|\\\"},{\\\"include\\\":\\\"#record_types\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s)*(type)\\\\\\\\s+(.+?)\\\\\\\\s*(?=\\\\\\\\=|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"storage.type.data.purescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.type-signature.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]}},\\\"contentName\\\":\\\"meta.type-signature.purescript\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1[ \\\\\\\\t]|[ \\\\\\\\t]*$)\\\",\\\"name\\\":\\\"meta.declaration.type.type.purescript\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.purescript\\\"}},\\\"match\\\":\\\"=\\\"},{\\\"include\\\":\\\"#type_signature\\\"},{\\\"include\\\":\\\"#record_types\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\b(derive|where|data|type|newtype|infix[lr]?|foreign(\\\\\\\\s+import)?(\\\\\\\\s+data)?)(?!')\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.purescript\\\"},{\\\"match\\\":\\\"\\\\\\\\?(?:[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*|[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)\\\",\\\"name\\\":\\\"entity.name.function.typed-hole.purescript\\\"},{\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\b(data|type|newtype)(?!')\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.purescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(do|ado|if|then|else|case|of|let|in)(?!('|\\\\\\\\s*(:|=)))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.purescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\$)0(x|X)[0-9a-fA-F]+\\\\\\\\b(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.hex.purescript\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.numeric.decimal.purescript\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.purescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.purescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.purescript\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.purescript\\\"},\\\"5\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.purescript\\\"},\\\"6\\\":{\\\"name\\\":\\\"meta.delimiter.decimal.period.purescript\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9]+(\\\\\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\\\\\b)|(?:\\\\\\\\b[0-9]+[eE][+-]?[0-9]+\\\\\\\\b)|(?:\\\\\\\\b[0-9]+(\\\\\\\\.)[0-9]+\\\\\\\\b)|(?:\\\\\\\\b[0-9]+\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$)\\\",\\\"name\\\":\\\"constant.numeric.decimal.purescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.purescript\\\"},{\\\"match\\\":\\\"\\\\\\\\b(([0-9]+_?)*[0-9]+|0([xX][0-9a-fA-F]+|[oO][0-7]+))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.purescript\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.purescript\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.purescript\\\"}},\\\"name\\\":\\\"string.quoted.triple.purescript\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.purescript\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.purescript\\\"}},\\\"name\\\":\\\"string.quoted.double.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#characters\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.other.escape.newline.begin.purescript\\\"}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"markup.other.escape.newline.end.purescript\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.purescript\\\"}]}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\$\\\",\\\"name\\\":\\\"markup.other.escape.newline.purescript\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.purescript\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#characters\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.purescript\\\"}},\\\"match\\\":\\\"(')((?:[ -\\\\\\\\[\\\\\\\\]-~]|(\\\\\\\\\\\\\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\&]))|(\\\\\\\\\\\\\\\\o[0-7]+)|(\\\\\\\\\\\\\\\\x[0-9A-Fa-f]+)|(\\\\\\\\^[A-Z@\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\\\\\\\\\^_])))(')\\\",\\\"name\\\":\\\"string.quoted.single.purescript\\\"},{\\\"include\\\":\\\"#function_type_declaration\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.double-colon.purescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.type-signature.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]}},\\\"match\\\":\\\"\\\\\\\\((?<paren>(?:[^()]|\\\\\\\\(\\\\\\\\g<paren>\\\\\\\\))*)(::|\u2237)(?<paren2>(?:[^()]|\\\\\\\\(\\\\\\\\g<paren2>\\\\\\\\))*)\\\\\\\\)\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(?:(::|\u2237))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.other.double-colon.purescript\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\\1[ \\\\\\\\t]*|[ \\\\\\\\t]*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"}]},{\\\"include\\\":\\\"#data_ctor\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#infix_op\\\"},{\\\"match\\\":\\\"\\\\\\\\<-|-\\\\\\\\>\\\",\\\"name\\\":\\\"keyword.other.arrow.purescript\\\"},{\\\"match\\\":\\\"[\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+\\\",\\\"name\\\":\\\"keyword.operator.purescript\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.purescript\\\"}],\\\"repository\\\":{\\\"block_comment\\\":{\\\"patterns\\\":[{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\{-\\\\\\\\s*\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.documentation.purescript\\\"}},\\\"end\\\":\\\"-\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.documentation.purescript\\\"}},\\\"name\\\":\\\"comment.block.documentation.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_comment\\\"}]},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"\\\\\\\\{-\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.purescript\\\"}},\\\"end\\\":\\\"-\\\\\\\\}\\\",\\\"name\\\":\\\"comment.block.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_comment\\\"}]}]},\\\"characters\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.purescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.octal.purescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.hexadecimal.purescript\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.escape.control.purescript\\\"}},\\\"match\\\":\\\"(?:[ -\\\\\\\\[\\\\\\\\]-~]|(\\\\\\\\\\\\\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\&]))|(\\\\\\\\\\\\\\\\o[0-7]+)|(\\\\\\\\\\\\\\\\x[0-9A-Fa-f]+)|(\\\\\\\\^[A-Z@\\\\\\\\[\\\\\\\\]\\\\\\\\\\\\\\\\\\\\\\\\^_]))\\\"}]},\\\"class_constraint\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\",\\\"name\\\":\\\"entity.name.type.purescript\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type_name\\\"},{\\\"include\\\":\\\"#generic_type\\\"}]}},\\\"match\\\":\\\"(?:(?:([\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*)\\\\\\\\s+)(?:(?<classConstraint>(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*|(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\\\\\\.)?[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)(?:\\\\\\\\s*(?:\\\\\\\\s+)\\\\\\\\s*\\\\\\\\g<classConstraint>)?)))\\\",\\\"name\\\":\\\"meta.class-constraint.purescript\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=--+\\\\\\\\s+\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.purescript\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(--+)\\\\\\\\s+(\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.purescript\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.documentation.purescript\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-dash.documentation.purescript\\\"}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=--+(?![\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.purescript\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"--\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.purescript\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-dash.purescript\\\"}]},{\\\"include\\\":\\\"#block_comment\\\"}]},\\\"data_ctor\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\",\\\"name\\\":\\\"entity.name.tag.purescript\\\"}]},\\\"double_colon\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:::|\u2237)\\\",\\\"name\\\":\\\"keyword.other.double-colon.purescript\\\"}]},\\\"function_type_declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^(\\\\\\\\s*)([\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)\\\\\\\\s*(?:(::|\u2237)(?!.*<-))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.purescript\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.double-colon.purescript\\\"}},\\\"contentName\\\":\\\"meta.type-signature.purescript\\\",\\\"end\\\":\\\"^(?!\\\\\\\\1[ \\\\\\\\t]|[ \\\\\\\\t]*$)\\\",\\\"name\\\":\\\"meta.function.type-declaration.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double_colon\\\"},{\\\"include\\\":\\\"#type_signature\\\"}]}]},\\\"generic_type\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\\\\\\.)?[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\",\\\"name\\\":\\\"variable.other.generic-type.purescript\\\"}]},\\\"infix_op\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\((?!--+\\\\\\\\))[\\\\\\\\p{S}\\\\\\\\p{P}&&[^(),;\\\\\\\\[\\\\\\\\]`{}_\\\\\\\"']]+\\\\\\\\))\\\",\\\"name\\\":\\\"entity.name.function.infix.purescript\\\"}]},\\\"kind_signature\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.other.star.purescript\\\"},{\\\"match\\\":\\\"!\\\",\\\"name\\\":\\\"keyword.other.exclaimation-point.purescript\\\"},{\\\"match\\\":\\\"#\\\",\\\"name\\\":\\\"keyword.other.pound-sign.purescript\\\"},{\\\"match\\\":\\\"->|\u2192\\\",\\\"name\\\":\\\"keyword.other.arrow.purescript\\\"}]},\\\"module_exports\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.declaration.exports.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\\\\\\.)?[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\",\\\"name\\\":\\\"entity.name.function.purescript\\\"},{\\\"include\\\":\\\"#type_name\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.purescript\\\"},{\\\"include\\\":\\\"#infix_op\\\"},{\\\"match\\\":\\\"\\\\\\\\(.*?\\\\\\\\)\\\",\\\"name\\\":\\\"meta.other.constructor-list.purescript\\\"}]}]},\\\"module_name\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\\\\\\.)*[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\\\\\\.?\\\",\\\"name\\\":\\\"support.other.module.purescript\\\"}]},\\\"record_field_declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)\\\\\\\\s*(::|\u2237)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\\\\\\.)?[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*\\\",\\\"name\\\":\\\"entity.other.attribute-name.purescript\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.double-colon.purescript\\\"}},\\\"contentName\\\":\\\"meta.type-signature.purescript\\\",\\\"end\\\":\\\"(?=([\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)\\\\\\\\s*(::|\u2237)|})\\\",\\\"name\\\":\\\"meta.record-field.type-declaration.purescript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type_signature\\\"},{\\\"include\\\":\\\"#record_types\\\"}]}]},\\\"record_types\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.record.begin.purescript\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.type.record.end.purescript\\\"}},\\\"name\\\":\\\"meta.type.record.purescript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.purescript\\\"},{\\\"include\\\":\\\"#record_field_declaration\\\"},{\\\"include\\\":\\\"#comments\\\"}]}]},\\\"type_name\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\",\\\"name\\\":\\\"entity.name.type.purescript\\\"}]},\\\"type_signature\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#class_constraint\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.big-arrow.purescript\\\"}},\\\"match\\\":\\\"(?:(?:\\\\\\\\()(?:(?<classConstraints>(?:(?:(?:([\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*)\\\\\\\\s+)(?:(?<classConstraint>(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*|(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\\\\\\.)?[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)(?:\\\\\\\\s*(?:\\\\\\\\s+)\\\\\\\\s*\\\\\\\\g<classConstraint>)?))))(?:\\\\\\\\s*(?:,)\\\\\\\\s*\\\\\\\\g<classConstraints>)?))(?:\\\\\\\\))(?:\\\\\\\\s*(=>|<=|\u21D0|\u21D2)))\\\",\\\"name\\\":\\\"meta.class-constraints.purescript\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#class_constraint\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.big-arrow.purescript\\\"}},\\\"match\\\":\\\"((?:(?:([\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*)\\\\\\\\s+)(?:(?<classConstraint>(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*|(?:[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*(?:\\\\\\\\.[\\\\\\\\p{Lu}\\\\\\\\p{Lt}][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)*\\\\\\\\.)?[\\\\\\\\p{Ll}_][\\\\\\\\p{Ll}_\\\\\\\\p{Lu}\\\\\\\\p{Lt}\\\\\\\\p{Nd}']*)(?:\\\\\\\\s*(?:\\\\\\\\s+)\\\\\\\\s*\\\\\\\\g<classConstraint>)?))))\\\\\\\\s*(=>|<=|\u21D0|\u21D2)\\\",\\\"name\\\":\\\"meta.class-constraints.purescript\\\"},{\\\"match\\\":\\\"->|\u2192\\\",\\\"name\\\":\\\"keyword.other.arrow.purescript\\\"},{\\\"match\\\":\\\"=>|\u21D2\\\",\\\"name\\\":\\\"keyword.other.big-arrow.purescript\\\"},{\\\"match\\\":\\\"<=|\u21D0\\\",\\\"name\\\":\\\"keyword.other.big-arrow-left.purescript\\\"},{\\\"match\\\":\\\"forall|\u2200\\\",\\\"name\\\":\\\"keyword.other.forall.purescript\\\"},{\\\"include\\\":\\\"#generic_type\\\"},{\\\"include\\\":\\\"#type_name\\\"},{\\\"include\\\":\\\"#comments\\\"}]}},\\\"scopeName\\\":\\\"source.purescript\\\"}\"))\n\nexport default [\nlang\n]\n", "import javascript from './javascript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"QML\\\",\\\"name\\\":\\\"qml\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bpragma\\\\\\\\s+Singleton\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.qml\\\"},{\\\"include\\\":\\\"#import-statements\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"include\\\":\\\"#comment\\\"}],\\\"repository\\\":{\\\"attributes-dictionary\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#typename\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#identifier\\\"},{\\\"include\\\":\\\"#attributes-value\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"attributes-value\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\w)\\\\\\\\s*\\\\\\\\:\\\\\\\\s*(?=[A-Z]\\\\\\\\w*\\\\\\\\s*\\\\\\\\{)\\\",\\\"description\\\":\\\"A QML object as value.\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#object\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\w)\\\\\\\\s*\\\\\\\\:\\\\\\\\s*\\\\\\\\[\\\",\\\"description\\\":\\\"A list as value.\\\",\\\"end\\\":\\\"\\\\\\\\](.*)$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#object\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\w)\\\\\\\\s*\\\\\\\\:(?=\\\\\\\\s*\\\\\\\\{?\\\\\\\\s*$)\\\",\\\"description\\\":\\\"A block of JavaScript code as value.\\\",\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"contentName\\\":\\\"meta.embedded.block.js\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\w)\\\\\\\\s*\\\\\\\\:\\\",\\\"contentName\\\":\\\"meta.embedded.line.js\\\",\\\"description\\\":\\\"A JavaScript expression as value.\\\",\\\"end\\\":\\\";|$|(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\/\\\\\\\\/:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.qml.tr\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-contents\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\/\\\\\\\\/[~|=])\\\\\\\\s*([A-Za-z_$][\\\\\\\\w$.\\\\\\\\[\\\\\\\\]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.qml.tr\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.qml.tr\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-contents\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.double-slash.qml\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-contents\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\/\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.double-slash.qml\\\"}},\\\"end\\\":\\\"(\\\\\\\\*\\\\\\\\/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.double-slash.qml\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-contents\\\"}]}]},\\\"comment-contents\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(TODO|DEBUG|XXX)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.qml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(BUG|FIXME)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"comment.line.double-slash.qml\\\"}]},\\\"data-types\\\":{\\\"patterns\\\":[{\\\"description\\\":\\\"QML basic data types.\\\",\\\"match\\\":\\\"\\\\\\\\b(bool|double|enum|int|list|real|string|url|variant|var)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.qml\\\"},{\\\"description\\\":\\\"QML modules basic data types.\\\",\\\"match\\\":\\\"\\\\\\\\b(date|point|rect|size)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.qml\\\"}]},\\\"group-attributes\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([_a-zA-Z]\\\\\\\\w*)\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.qml\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#attributes-dictionary\\\"}]}]},\\\"identifier\\\":{\\\"description\\\":\\\"The name of variable, key, signal and etc.\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[_a-zA-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.parameter.qml\\\"}]},\\\"import-statements\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(import)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.qml\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bas\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.as.qml\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"description\\\":\\\"<Version.Number>\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+\\\\\\\\.\\\\\\\\d+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.qml\\\"},{\\\"description\\\":\\\"as <Namespace>\\\",\\\"match\\\":\\\"(?<=as)\\\\\\\\s+[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.qml\\\"},{\\\"include\\\":\\\"#identifier\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#data-types\\\"},{\\\"include\\\":\\\"#reserved-words\\\"}]},\\\"method-attributes\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(function)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.qml\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"([_a-zA-Z]\\\\\\\\w*)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.qml\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#identifier\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"contentName\\\":\\\"meta.embedded.block.js\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]}]},\\\"object\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([A-Z]\\\\\\\\w*)\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.qml\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"include\\\":\\\"#group-attributes\\\"},{\\\"include\\\":\\\"#method-attributes\\\"},{\\\"include\\\":\\\"#signal-attributes\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#attributes-dictionary\\\"}]}]},\\\"reserved-words\\\":{\\\"patterns\\\":[{\\\"description\\\":\\\"Attribute modifier.\\\",\\\"match\\\":\\\"\\\\\\\\b(default|alias|readonly|required)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.qml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(property|id|on)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.qml\\\"},{\\\"description\\\":\\\"Special words for signal handlers including property change.\\\",\\\"match\\\":\\\"\\\\\\\\b(on[A-Z]\\\\\\\\w*(Changed)?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.qml\\\"}]},\\\"signal-attributes\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(signal)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.qml\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"([_a-zA-Z]\\\\\\\\w*)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.qml\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#identifier\\\"}]},{\\\"include\\\":\\\"#identifier\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"string\\\":{\\\"description\\\":\\\"String literal with double or signle quote.\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.qml\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.qml\\\"}]},\\\"typename\\\":{\\\"description\\\":\\\"The name of type. First letter must be uppercase.\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.qml\\\"}]}},\\\"scopeName\\\":\\\"source.qml\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\"]}\"))\n\nexport default [\n...javascript,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"QML Directory\\\",\\\"name\\\":\\\"qmldir\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#version\\\"},{\\\"include\\\":\\\"#names\\\"}],\\\"repository\\\":{\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.number-sign.qmldir\\\"}]},\\\"file-name\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+\\\\\\\\.(qmltypes|qml|js)\\\\\\\\b\\\",\\\"name\\\":\\\"string.unquoted.qmldir\\\"}]},\\\"identifier\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.parameter.qmldir\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(module|singleton|internal|plugin|classname|typeinfo|depends|designersupported)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.qmldir\\\"}]},\\\"module-name\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.qmldir\\\"}]},\\\"names\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#file-name\\\"},{\\\"include\\\":\\\"#module-name\\\"},{\\\"include\\\":\\\"#identifier\\\"}]},\\\"version\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+\\\\\\\\.\\\\\\\\d+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.qml\\\"}]}},\\\"scopeName\\\":\\\"source.qmldir\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Qt Style Sheets\\\",\\\"name\\\":\\\"qss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#rule-list\\\"},{\\\"include\\\":\\\"#selector\\\"}],\\\"repository\\\":{\\\"color\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(rgb|rgba|hsv|hsva|hsl|hsla)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.qss\\\"}},\\\"description\\\":\\\"Color Type\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#number\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(white|black|red|darkred|green|darkgreen|blue|darkblue|cyan|darkcyan|magenta|darkmagenta|yellow|darkyellow|gray|darkgray|lightgray|transparent|color0|color1)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.named-color.qss\\\"},{\\\"match\\\":\\\"#([0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.color.qss\\\"}]},\\\"comment-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.qss\\\"}]},\\\"icon-properties\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(backward-icon|cd-icon|computer-icon|desktop-icon|dialog-apply-icon|dialog-cancel-icon|dialog-close-icon|dialog-discard-icon|dialog-help-icon|dialog-no-icon|dialog-ok-icon|dialog-open-icon|dialog-reset-icon|dialog-save-icon|dialog-yes-icon|directory-closed-icon|directory-icon|directory-link-icon|directory-open-icon|dockwidget-close-icon|downarrow-icon|dvd-icon|file-icon|file-link-icon|filedialog-contentsview-icon|filedialog-detailedview-icon|filedialog-end-icon|filedialog-infoview-icon|filedialog-listview-icon|filedialog-new-directory-icon|filedialog-parent-directory-icon|filedialog-start-icon|floppy-icon|forward-icon|harddisk-icon|home-icon|leftarrow-icon|messagebox-critical-icon|messagebox-information-icon|messagebox-question-icon|messagebox-warning-icon|network-icon|rightarrow-icon|titlebar-contexthelp-icon|titlebar-maximize-icon|titlebar-menu-icon|titlebar-minimize-icon|titlebar-normal-icon|titlebar-close-icon|titlebar-shade-icon|titlebar-unshade-icon|trash-icon|uparrow-icon)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.property-name.qss\\\"}]},\\\"id-selector\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.qss\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.qss\\\"}},\\\"match\\\":\\\"(#)([a-zA-Z][a-zA-Z0-9_-]*)\\\"}]},\\\"number\\\":{\\\"patterns\\\":[{\\\"description\\\":\\\"floating number\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+)?\\\\\\\\.(\\\\\\\\d+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.qss\\\"},{\\\"description\\\":\\\"percentage\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+)%\\\",\\\"name\\\":\\\"constant.numeric.qss\\\"},{\\\"description\\\":\\\"length\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+)(px|pt|em|ex)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.qss\\\"},{\\\"description\\\":\\\"integer\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.qss\\\"}]},\\\"properties\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#property-values\\\"},{\\\"match\\\":\\\"\\\\\\\\b(paint-alternating-row-colors-for-empty-area|dialogbuttonbox-buttons-have-icons|titlebar-show-tooltips-on-buttons|messagebox-text-interaction-flags|lineedit-password-mask-delay|outline-bottom-right-radius|lineedit-password-character|selection-background-color|outline-bottom-left-radius|border-bottom-right-radius|alternate-background-color|widget-animation-duration|border-bottom-left-radius|show-decoration-selected|outline-top-right-radius|outline-top-left-radius|border-top-right-radius|border-top-left-radius|background-attachment|subcontrol-position|border-bottom-width|border-bottom-style|border-bottom-color|background-position|border-right-width|border-right-style|border-right-color|subcontrol-origin|border-left-width|border-left-style|border-left-color|background-origin|background-repeat|border-top-width|border-top-style|border-top-color|background-image|background-color|text-decoration|selection-color|background-clip|padding-bottom|outline-radius|outline-offset|image-position|gridline-color|padding-right|outline-style|outline-color|margin-bottom|button-layout|border-radius|border-bottom|padding-left|margin-right|border-width|border-style|border-image|border-color|border-right|padding-top|margin-left|font-weight|font-family|border-left|text-align|min-height|max-height|margin-top|font-style|border-top|background|min-width|max-width|icon-size|font-size|position|spacing|padding|outline|opacity|margin|height|bottom|border|width|right|image|color|left|font|top)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.property-name.qss\\\"},{\\\"include\\\":\\\"#icon-properties\\\"}]},\\\"property-selector\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"\\\\\\\\b[_a-zA-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.parameter.qml\\\"}]}]},\\\"property-values\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\":\\\",\\\"end\\\":\\\";|(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#color\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(qlineargradient|qradialgradient|qconicalgradient)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.qss\\\"}},\\\"description\\\":\\\"Gradient Type\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"match\\\":\\\"\\\\\\\\b(x1|y1|x2|y2|stop|angle|radius|cx|cy|fx|fy)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.parameter.qss\\\"},{\\\"include\\\":\\\"#color\\\"},{\\\"include\\\":\\\"#number\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(url)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.qss\\\"}},\\\"contentName\\\":\\\"string.unquoted.qss\\\",\\\"description\\\":\\\"URL Type\\\",\\\"end\\\":\\\"\\\\\\\\)\\\"},{\\\"match\\\":\\\"\\\\\\\\bpalette\\\\\\\\s*(?=\\\\\\\\()\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.qss\\\"},{\\\"match\\\":\\\"\\\\\\\\b(highlighted-text|alternate-base|line-through|link-visited|dot-dot-dash|window-text|button-text|bright-text|underline|no-repeat|highlight|overline|absolute|relative|repeat-y|repeat-x|midlight|selected|disabled|dot-dash|content|padding|oblique|stretch|repeat|window|shadow|button|border|margin|active|italic|normal|outset|groove|double|dotted|dashed|repeat|scroll|center|bottom|light|solid|ridge|inset|fixed|right|text|link|dark|base|bold|none|left|mid|off|top|on)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.qss\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.qss\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#number\\\"}]}]},\\\"pseudo-states\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(active|adjoins-item|alternate|bottom|checked|closable|closed|default|disabled|editable|edit-focus|enabled|exclusive|first|flat|floatable|focus|has-children|has-siblings|horizontal|hover|indeterminate|last|left|maximized|middle|minimized|movable|no-frame|non-exclusive|off|on|only-one|open|next-selected|pressed|previous-selected|read-only|right|selected|top|unchecked|vertical|window)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.qss\\\"}]},\\\"rule-list\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#properties\\\"},{\\\"include\\\":\\\"#icon-properties\\\"}]}]},\\\"selector\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#stylable-widgets\\\"},{\\\"include\\\":\\\"#sub-controls\\\"},{\\\"include\\\":\\\"#pseudo-states\\\"},{\\\"include\\\":\\\"#property-selector\\\"},{\\\"include\\\":\\\"#id-selector\\\"}]},\\\"string\\\":{\\\"description\\\":\\\"String literal with double or signle quote.\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.qml\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.qml\\\"}]},\\\"stylable-widgets\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(QAbstractScrollArea|QAbstractItemView|QCheckBox|QColumnView|QComboBox|QDateEdit|QDateTimeEdit|QDialog|QDialogButtonBox|QDockWidget|QDoubleSpinBox|QFrame|QGroupBox|QHeaderView|QLabel|QLineEdit|QListView|QListWidget|QMainWindow|QMenu|QMenuBar|QMessageBox|QProgressBar|QPlainTextEdit|QPushButton|QRadioButton|QScrollBar|QSizeGrip|QSlider|QSpinBox|QSplitter|QStatusBar|QTabBar|QTabWidget|QTableView|QTableWidget|QTextEdit|QTimeEdit|QToolBar|QToolButton|QToolBox|QToolTip|QTreeView|QTreeWidget|QWidget)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.qss\\\"}]},\\\"sub-controls\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(add-line|add-page|branch|chunk|close-button|corner|down-arrow|down-button|drop-down|float-button|groove|indicator|handle|icon|item|left-arrow|left-corner|menu-arrow|menu-button|menu-indicator|right-arrow|pane|right-corner|scroller|section|separator|sub-line|sub-page|tab|tab-bar|tear|tearoff|text|title|up-arrow|up-button)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.inherited-class.qss\\\"}]}},\\\"scopeName\\\":\\\"source.qss\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Racket\\\",\\\"name\\\":\\\"racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#not-atom\\\"},{\\\"include\\\":\\\"#atom\\\"},{\\\"include\\\":\\\"#quote\\\"},{\\\"match\\\":\\\"^#lang\\\",\\\"name\\\":\\\"keyword.other.racket\\\"}],\\\"repository\\\":{\\\"args\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#default-args\\\"},{\\\"match\\\":\\\"[^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*\\\",\\\"name\\\":\\\"variable.parameter.racket\\\"}]},\\\"argument\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.verbatim.begin.racket\\\"}},\\\"contentName\\\":\\\"variable.parameter.racket\\\",\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.end.racket\\\"}},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(\\\\\\\\#%|\\\\\\\\\\\\\\\\\\\\\\\\ |[^\\\\\\\\#()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.racket\\\"}},\\\"contentName\\\":\\\"variable.parameter.racket\\\",\\\"end\\\":\\\"(?=[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\ \\\"},{\\\"begin\\\":\\\"\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.begin.racket\\\"},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.end.racket\\\"}}]}]},\\\"argument-struct\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.verbatim.begin.racket\\\"}},\\\"contentName\\\":\\\"variable.other.member.racket\\\",\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.end.racket\\\"}},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(\\\\\\\\#%|\\\\\\\\\\\\\\\\\\\\\\\\ |[^\\\\\\\\#()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.member.racket\\\"}},\\\"contentName\\\":\\\"variable.other.member.racket\\\",\\\"end\\\":\\\"(?=[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\ \\\"},{\\\"begin\\\":\\\"\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.begin.racket\\\"},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.end.racket\\\"}}]}]},\\\"atom\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#bool\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#character\\\"},{\\\"include\\\":\\\"#symbol\\\"},{\\\"include\\\":\\\"#variable\\\"}]},\\\"base-string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":[{\\\"name\\\":\\\"punctuation.definition.string.begin.racket\\\"}]},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":[{\\\"name\\\":\\\"punctuation.definition.string.end.racket\\\"}]},\\\"name\\\":\\\"string.quoted.double.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-char\\\"}]}]},\\\"binding\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.verbatim.begin.racket\\\"}},\\\"contentName\\\":\\\"entity.name.constant\\\",\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.end.racket\\\"}},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(\\\\\\\\#%|\\\\\\\\\\\\\\\\\\\\\\\\ |[^\\\\\\\\#()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.constant\\\"}},\\\"contentName\\\":\\\"entity.name.constant\\\",\\\"end\\\":\\\"(?=[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\ \\\"},{\\\"begin\\\":\\\"\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.begin.racket\\\"},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.end.racket\\\"}}]}]},\\\"bool\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\\\\\\#(?:[tT](?:rue)?|[fF](?:alse)?)(?=[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"name\\\":\\\"constant.language.racket\\\"}]},\\\"builtin-functions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#format\\\"},{\\\"include\\\":\\\"#define\\\"},{\\\"include\\\":\\\"#lambda\\\"},{\\\"include\\\":\\\"#struct\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.racket\\\"}},\\\"match\\\":\\\"(?<=$|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])(\\\\\\\\.\\\\\\\\.\\\\\\\\.|_|syntax-id-rules|syntax-rules|\\\\\\\\#%app|\\\\\\\\#%datum|\\\\\\\\#%declare|\\\\\\\\#%expression|\\\\\\\\#%module-begin|\\\\\\\\#%plain-app|\\\\\\\\#%plain-lambda|\\\\\\\\#%plain-module-begin|\\\\\\\\#%printing-module-begin|\\\\\\\\#%provide|\\\\\\\\#%require|\\\\\\\\#%stratified-body|\\\\\\\\#%top|\\\\\\\\#%top-interaction|\\\\\\\\#%variable-reference|\\\\\\\\.\\\\\\\\.\\\\\\\\.|:do-in|=>|_|all-defined-out|all-from-out|and|apply|arity-at-least|begin|begin-for-syntax|begin0|call-with-input-file|call-with-input-file\\\\\\\\*|call-with-output-file|call-with-output-file\\\\\\\\*|case|case-lambda|combine-in|combine-out|cond|date|date\\\\\\\\*|define|define-for-syntax|define-logger|define-namespace-anchor|define-sequence-syntax|define-struct|define-struct\\\\\\\\/derived|define-syntax|define-syntax-rule|define-syntaxes|define-values|define-values-for-syntax|do|else|except-in|except-out|exn|exn:break|exn:break:hang-up|exn:break:terminate|exn:fail|exn:fail:contract|exn:fail:contract:arity|exn:fail:contract:continuation|exn:fail:contract:divide-by-zero|exn:fail:contract:non-fixnum-result|exn:fail:contract:variable|exn:fail:filesystem|exn:fail:filesystem:errno|exn:fail:filesystem:exists|exn:fail:filesystem:missing-module|exn:fail:filesystem:version|exn:fail:network|exn:fail:network:errno|exn:fail:out-of-memory|exn:fail:read|exn:fail:read:eof|exn:fail:read:non-char|exn:fail:syntax|exn:fail:syntax:missing-module|exn:fail:syntax:unbound|exn:fail:unsupported|exn:fail:user|file|for|for\\\\\\\\*|for\\\\\\\\*\\\\\\\\/and|for\\\\\\\\*\\\\\\\\/first|for\\\\\\\\*\\\\\\\\/fold|for\\\\\\\\*\\\\\\\\/fold\\\\\\\\/derived|for\\\\\\\\*\\\\\\\\/hash|for\\\\\\\\*\\\\\\\\/hasheq|for\\\\\\\\*\\\\\\\\/hasheqv|for\\\\\\\\*\\\\\\\\/last|for\\\\\\\\*\\\\\\\\/list|for\\\\\\\\*\\\\\\\\/lists|for\\\\\\\\*\\\\\\\\/or|for\\\\\\\\*\\\\\\\\/product|for\\\\\\\\*\\\\\\\\/sum|for\\\\\\\\*\\\\\\\\/vector|for-label|for-meta|for-syntax|for-template|for\\\\\\\\/and|for\\\\\\\\/first|for\\\\\\\\/fold|for\\\\\\\\/fold\\\\\\\\/derived|for\\\\\\\\/hash|for\\\\\\\\/hasheq|for\\\\\\\\/hasheqv|for\\\\\\\\/last|for\\\\\\\\/list|for\\\\\\\\/lists|for\\\\\\\\/or|for\\\\\\\\/product|for\\\\\\\\/sum|for\\\\\\\\/vector|gen:custom-write|gen:equal\\\\\\\\+hash|if|in-bytes|in-bytes-lines|in-directory|in-hash|in-hash-keys|in-hash-pairs|in-hash-values|in-immutable-hash|in-immutable-hash-keys|in-immutable-hash-pairs|in-immutable-hash-values|in-indexed|in-input-port-bytes|in-input-port-chars|in-lines|in-list|in-mlist|in-mutable-hash|in-mutable-hash-keys|in-mutable-hash-pairs|in-mutable-hash-values|in-naturals|in-port|in-producer|in-range|in-string|in-value|in-vector|in-weak-hash|in-weak-hash-keys|in-weak-hash-pairs|in-weak-hash-values|lambda|let|let\\\\\\\\*|let\\\\\\\\*-values|let-syntax|let-syntaxes|let-values|let\\\\\\\\/cc|let\\\\\\\\/ec|letrec|letrec-syntax|letrec-syntaxes|letrec-syntaxes\\\\\\\\+values|letrec-values|lib|local-require|log-debug|log-error|log-fatal|log-info|log-warning|module|module\\\\\\\\*|module\\\\\\\\+|only-in|only-meta-in|open-input-file|open-input-output-file|open-output-file|or|parameterize|parameterize\\\\\\\\*|parameterize-break|planet|prefix-in|prefix-out|protect-out|provide|quasiquote|quasisyntax|quasisyntax\\\\\\\\/loc|quote|quote-syntax|quote-syntax\\\\\\\\/prune|regexp-match\\\\\\\\*|regexp-match-peek-positions\\\\\\\\*|regexp-match-positions\\\\\\\\*|relative-in|rename-in|rename-out|require|set!|set!-values|sort|srcloc|struct|struct-copy|struct-field-index|struct-out|submod|syntax|syntax-case|syntax-case\\\\\\\\*|syntax-id-rules|syntax-rules|syntax\\\\\\\\/loc|time|unless|unquote|unquote-splicing|unsyntax|unsyntax-splicing|when|with-continuation-mark|with-handlers|with-handlers\\\\\\\\*|with-input-from-file|with-output-to-file|with-syntax|\u03BB|\\\\\\\\#%app|\\\\\\\\#%datum|\\\\\\\\#%declare|\\\\\\\\#%expression|\\\\\\\\#%module-begin|\\\\\\\\#%plain-app|\\\\\\\\#%plain-lambda|\\\\\\\\#%plain-module-begin|\\\\\\\\#%printing-module-begin|\\\\\\\\#%provide|\\\\\\\\#%require|\\\\\\\\#%stratified-body|\\\\\\\\#%top|\\\\\\\\#%top-interaction|\\\\\\\\#%variable-reference|->|->\\\\\\\\*|->\\\\\\\\*m|->d|->dm|->i|->m|\\\\\\\\.\\\\\\\\.\\\\\\\\.|:do-in|<=\\\\\\\\/c|=\\\\\\\\/c|==|=>|>=\\\\\\\\/c|_|absent|abstract|add-between|all-defined-out|all-from-out|and|and\\\\\\\\/c|any|any\\\\\\\\/c|apply|arity-at-least|arrow-contract-info|augment|augment\\\\\\\\*|augment-final|augment-final\\\\\\\\*|augride|augride\\\\\\\\*|bad-number-of-results|begin|begin-for-syntax|begin0|between\\\\\\\\/c|blame-add-context|box-immutable\\\\\\\\/c|box\\\\\\\\/c|call-with-atomic-output-file|call-with-file-lock\\\\\\\\/timeout|call-with-input-file|call-with-input-file\\\\\\\\*|call-with-output-file|call-with-output-file\\\\\\\\*|case|case->|case->m|case-lambda|channel\\\\\\\\/c|char-in\\\\\\\\/c|check-duplicates|class|class\\\\\\\\*|class-field-accessor|class-field-mutator|class\\\\\\\\/c|class\\\\\\\\/derived|combine-in|combine-out|command-line|compound-unit|compound-unit\\\\\\\\/infer|cond|cons\\\\\\\\/c|cons\\\\\\\\/dc|continuation-mark-key\\\\\\\\/c|contract|contract-exercise|contract-out|contract-struct|contracted|copy-directory\\\\\\\\/files|current-contract-region|date|date\\\\\\\\*|define|define-compound-unit|define-compound-unit\\\\\\\\/infer|define-contract-struct|define-custom-hash-types|define-custom-set-types|define-for-syntax|define-local-member-name|define-logger|define-match-expander|define-member-name|define-module-boundary-contract|define-namespace-anchor|define-opt\\\\\\\\/c|define-sequence-syntax|define-serializable-class|define-serializable-class\\\\\\\\*|define-signature|define-signature-form|define-struct|define-struct\\\\\\\\/contract|define-struct\\\\\\\\/derived|define-syntax|define-syntax-rule|define-syntaxes|define-unit|define-unit-binding|define-unit-from-context|define-unit\\\\\\\\/contract|define-unit\\\\\\\\/new-import-export|define-unit\\\\\\\\/s|define-values|define-values-for-export|define-values-for-syntax|define-values\\\\\\\\/invoke-unit|define-values\\\\\\\\/invoke-unit\\\\\\\\/infer|define\\\\\\\\/augment|define\\\\\\\\/augment-final|define\\\\\\\\/augride|define\\\\\\\\/contract|define\\\\\\\\/final-prop|define\\\\\\\\/match|define\\\\\\\\/overment|define\\\\\\\\/override|define\\\\\\\\/override-final|define\\\\\\\\/private|define\\\\\\\\/public|define\\\\\\\\/public-final|define\\\\\\\\/pubment|define\\\\\\\\/subexpression-pos-prop|define\\\\\\\\/subexpression-pos-prop\\\\\\\\/name|delay|delay\\\\\\\\/idle|delay\\\\\\\\/name|delay\\\\\\\\/strict|delay\\\\\\\\/sync|delay\\\\\\\\/thread|delete-directory\\\\\\\\/files|dict->list|dict-can-functional-set\\\\\\\\?|dict-can-remove-keys\\\\\\\\?|dict-clear|dict-clear!|dict-copy|dict-count|dict-empty\\\\\\\\?|dict-for-each|dict-has-key\\\\\\\\?|dict-implements\\\\\\\\/c|dict-implements\\\\\\\\?|dict-iterate-first|dict-iterate-key|dict-iterate-next|dict-iterate-value|dict-keys|dict-map|dict-mutable\\\\\\\\?|dict-ref|dict-ref!|dict-remove|dict-remove!|dict-set|dict-set!|dict-set\\\\\\\\*|dict-set\\\\\\\\*!|dict-update|dict-update!|dict-values|dict\\\\\\\\?|display-lines|display-lines-to-file|display-to-file|do|dynamic->\\\\\\\\*|dynamic-place|dynamic-place\\\\\\\\*|else|eof-evt|except|except-in|except-out|exn|exn:break|exn:break:hang-up|exn:break:terminate|exn:fail|exn:fail:contract|exn:fail:contract:arity|exn:fail:contract:blame|exn:fail:contract:continuation|exn:fail:contract:divide-by-zero|exn:fail:contract:non-fixnum-result|exn:fail:contract:variable|exn:fail:filesystem|exn:fail:filesystem:errno|exn:fail:filesystem:exists|exn:fail:filesystem:missing-module|exn:fail:filesystem:version|exn:fail:network|exn:fail:network:errno|exn:fail:object|exn:fail:out-of-memory|exn:fail:read|exn:fail:read:eof|exn:fail:read:non-char|exn:fail:syntax|exn:fail:syntax:missing-module|exn:fail:syntax:unbound|exn:fail:unsupported|exn:fail:user|export|extends|failure-cont|field|field-bound\\\\\\\\?|file|file->bytes|file->bytes-lines|file->lines|file->list|file->string|file->value|find-files|find-relative-path|first-or\\\\\\\\/c|flat-contract-with-explanation|flat-murec-contract|flat-rec-contract|for|for\\\\\\\\*|for\\\\\\\\*\\\\\\\\/and|for\\\\\\\\*\\\\\\\\/async|for\\\\\\\\*\\\\\\\\/first|for\\\\\\\\*\\\\\\\\/fold|for\\\\\\\\*\\\\\\\\/fold\\\\\\\\/derived|for\\\\\\\\*\\\\\\\\/hash|for\\\\\\\\*\\\\\\\\/hasheq|for\\\\\\\\*\\\\\\\\/hasheqv|for\\\\\\\\*\\\\\\\\/last|for\\\\\\\\*\\\\\\\\/list|for\\\\\\\\*\\\\\\\\/lists|for\\\\\\\\*\\\\\\\\/mutable-set|for\\\\\\\\*\\\\\\\\/mutable-seteq|for\\\\\\\\*\\\\\\\\/mutable-seteqv|for\\\\\\\\*\\\\\\\\/or|for\\\\\\\\*\\\\\\\\/product|for\\\\\\\\*\\\\\\\\/set|for\\\\\\\\*\\\\\\\\/seteq|for\\\\\\\\*\\\\\\\\/seteqv|for\\\\\\\\*\\\\\\\\/stream|for\\\\\\\\*\\\\\\\\/sum|for\\\\\\\\*\\\\\\\\/vector|for\\\\\\\\*\\\\\\\\/weak-set|for\\\\\\\\*\\\\\\\\/weak-seteq|for\\\\\\\\*\\\\\\\\/weak-seteqv|for-label|for-meta|for-syntax|for-template|for\\\\\\\\/and|for\\\\\\\\/async|for\\\\\\\\/first|for\\\\\\\\/fold|for\\\\\\\\/fold\\\\\\\\/derived|for\\\\\\\\/hash|for\\\\\\\\/hasheq|for\\\\\\\\/hasheqv|for\\\\\\\\/last|for\\\\\\\\/list|for\\\\\\\\/lists|for\\\\\\\\/mutable-set|for\\\\\\\\/mutable-seteq|for\\\\\\\\/mutable-seteqv|for\\\\\\\\/or|for\\\\\\\\/product|for\\\\\\\\/set|for\\\\\\\\/seteq|for\\\\\\\\/seteqv|for\\\\\\\\/stream|for\\\\\\\\/sum|for\\\\\\\\/vector|for\\\\\\\\/weak-set|for\\\\\\\\/weak-seteq|for\\\\\\\\/weak-seteqv|gen:custom-write|gen:dict|gen:equal\\\\\\\\+hash|gen:set|gen:stream|generic|get-field|get-preference|hash\\\\\\\\/c|hash\\\\\\\\/dc|if|implies|import|in-bytes|in-bytes-lines|in-dict|in-dict-keys|in-dict-values|in-directory|in-hash|in-hash-keys|in-hash-pairs|in-hash-values|in-immutable-hash|in-immutable-hash-keys|in-immutable-hash-pairs|in-immutable-hash-values|in-immutable-set|in-indexed|in-input-port-bytes|in-input-port-chars|in-lines|in-list|in-mlist|in-mutable-hash|in-mutable-hash-keys|in-mutable-hash-pairs|in-mutable-hash-values|in-mutable-set|in-naturals|in-port|in-producer|in-range|in-set|in-slice|in-stream|in-string|in-syntax|in-value|in-vector|in-weak-hash|in-weak-hash-keys|in-weak-hash-pairs|in-weak-hash-values|in-weak-set|include|include-at\\\\\\\\/relative-to|include-at\\\\\\\\/relative-to\\\\\\\\/reader|include\\\\\\\\/reader|inherit|inherit-field|inherit\\\\\\\\/inner|inherit\\\\\\\\/super|init|init-depend|init-field|init-rest|inner|inspect|instantiate|integer-in|interface|interface\\\\\\\\*|invariant-assertion|invoke-unit|invoke-unit\\\\\\\\/infer|lambda|lazy|let|let\\\\\\\\*|let\\\\\\\\*-values|let-syntax|let-syntaxes|let-values|let\\\\\\\\/cc|let\\\\\\\\/ec|letrec|letrec-syntax|letrec-syntaxes|letrec-syntaxes\\\\\\\\+values|letrec-values|lib|link|list\\\\\\\\*of|list\\\\\\\\/c|listof|local|local-require|log-debug|log-error|log-fatal|log-info|log-warning|make-custom-hash|make-custom-hash-types|make-custom-set|make-custom-set-types|make-handle-get-preference-locked|make-immutable-custom-hash|make-mutable-custom-set|make-object|make-temporary-file|make-weak-custom-hash|make-weak-custom-set|match|match\\\\\\\\*|match\\\\\\\\*\\\\\\\\/derived|match-define|match-define-values|match-lambda|match-lambda\\\\\\\\*|match-lambda\\\\\\\\*\\\\\\\\*|match-let|match-let\\\\\\\\*|match-let\\\\\\\\*-values|match-let-values|match-letrec|match-letrec-values|match\\\\\\\\/derived|match\\\\\\\\/values|member-name-key|mixin|module|module\\\\\\\\*|module\\\\\\\\+|nand|new|new-\u2200\\\\\\\\/c|new-\u2203\\\\\\\\/c|non-empty-listof|none\\\\\\\\/c|nor|not\\\\\\\\/c|object-contract|object\\\\\\\\/c|one-of\\\\\\\\/c|only|only-in|only-meta-in|open|open-input-file|open-input-output-file|open-output-file|opt\\\\\\\\/c|or|or\\\\\\\\/c|overment|overment\\\\\\\\*|override|override\\\\\\\\*|override-final|override-final\\\\\\\\*|parameter\\\\\\\\/c|parameterize|parameterize\\\\\\\\*|parameterize-break|parametric->\\\\\\\\/c|pathlist-closure|peek-bytes!-evt|peek-bytes-avail!-evt|peek-bytes-evt|peek-string!-evt|peek-string-evt|peeking-input-port|place|place\\\\\\\\*|place\\\\\\\\/context|planet|port->bytes|port->bytes-lines|port->lines|port->string|prefix|prefix-in|prefix-out|pretty-format|private|private\\\\\\\\*|procedure-arity-includes\\\\\\\\/c|process|process\\\\\\\\*|process\\\\\\\\*\\\\\\\\/ports|process\\\\\\\\/ports|promise\\\\\\\\/c|prompt-tag\\\\\\\\/c|prop:dict\\\\\\\\/contract|protect-out|provide|provide-signature-elements|provide\\\\\\\\/contract|public|public\\\\\\\\*|public-final|public-final\\\\\\\\*|pubment|pubment\\\\\\\\*|quasiquote|quasisyntax|quasisyntax\\\\\\\\/loc|quote|quote-syntax|quote-syntax\\\\\\\\/prune|raise-blame-error|raise-not-cons-blame-error|range|read-bytes!-evt|read-bytes-avail!-evt|read-bytes-evt|read-bytes-line-evt|read-line-evt|read-string!-evt|read-string-evt|real-in|recontract-out|recursive-contract|regexp-match\\\\\\\\*|regexp-match-evt|regexp-match-peek-positions\\\\\\\\*|regexp-match-positions\\\\\\\\*|relative-in|relocate-input-port|relocate-output-port|remove-duplicates|rename|rename-in|rename-inner|rename-out|rename-super|require|send|send\\\\\\\\*|send\\\\\\\\+|send-generic|send\\\\\\\\/apply|send\\\\\\\\/keyword-apply|sequence\\\\\\\\/c|set!|set!-values|set-field!|set\\\\\\\\/c|shared|sort|srcloc|stream|stream\\\\\\\\*|stream-cons|string-join|string-len\\\\\\\\/c|string-normalize-spaces|string-replace|string-split|string-trim|struct|struct\\\\\\\\*|struct-copy|struct-field-index|struct-out|struct\\\\\\\\/c|struct\\\\\\\\/ctc|struct\\\\\\\\/dc|submod|super|super-instantiate|super-make-object|super-new|symbols|syntax|syntax-case|syntax-case\\\\\\\\*|syntax-id-rules|syntax-rules|syntax\\\\\\\\/c|syntax\\\\\\\\/loc|system|system\\\\\\\\*|system\\\\\\\\*\\\\\\\\/exit-code|system\\\\\\\\/exit-code|tag|this|this%|thunk|thunk\\\\\\\\*|time|transplant-input-port|transplant-output-port|unconstrained-domain->|unit|unit-from-context|unit\\\\\\\\/c|unit\\\\\\\\/new-import-export|unit\\\\\\\\/s|unless|unquote|unquote-splicing|unsyntax|unsyntax-splicing|values\\\\\\\\/drop|vector-immutable\\\\\\\\/c|vector-immutableof|vector-sort|vector-sort!|vector\\\\\\\\/c|vectorof|when|with-continuation-mark|with-contract|with-contract-continuation-mark|with-handlers|with-handlers\\\\\\\\*|with-input-from-file|with-method|with-output-to-file|with-syntax|wrapped-extra-arg-arrow|write-to-file|~\\\\\\\\.a|~\\\\\\\\.s|~\\\\\\\\.v|~a|~e|~r|~s|~v|\u03BB|expand-for-clause|for-clause-syntax-protect|syntax-pattern-variable\\\\\\\\?|\\\\\\\\*|\\\\\\\\+|-|\\\\\\\\/|<|<=|=|>|>=|abort-current-continuation|abs|absolute-path\\\\\\\\?|acos|add1|alarm-evt|always-evt|andmap|angle|append|arithmetic-shift|arity-at-least-value|arity-at-least\\\\\\\\?|asin|assf|assoc|assq|assv|atan|banner|bitwise-and|bitwise-bit-field|bitwise-bit-set\\\\\\\\?|bitwise-ior|bitwise-not|bitwise-xor|boolean\\\\\\\\?|bound-identifier=\\\\\\\\?|box|box-cas!|box-immutable|box\\\\\\\\?|break-enabled|break-parameterization\\\\\\\\?|break-thread|build-list|build-path|build-path\\\\\\\\/convention-type|build-string|build-vector|byte-pregexp|byte-pregexp\\\\\\\\?|byte-ready\\\\\\\\?|byte-regexp|byte-regexp\\\\\\\\?|byte\\\\\\\\?|bytes|bytes->immutable-bytes|bytes->list|bytes->path|bytes->path-element|bytes->string\\\\\\\\/latin-1|bytes->string\\\\\\\\/locale|bytes->string\\\\\\\\/utf-8|bytes-append|bytes-close-converter|bytes-convert|bytes-convert-end|bytes-converter\\\\\\\\?|bytes-copy|bytes-copy!|bytes-environment-variable-name\\\\\\\\?|bytes-fill!|bytes-length|bytes-open-converter|bytes-ref|bytes-set!|bytes-utf-8-index|bytes-utf-8-length|bytes-utf-8-ref|bytes<\\\\\\\\?|bytes=\\\\\\\\?|bytes>\\\\\\\\?|bytes\\\\\\\\?|caaaar|caaadr|caaar|caadar|caaddr|caadr|caar|cadaar|cadadr|cadar|caddar|cadddr|caddr|cadr|call-in-nested-thread|call-with-break-parameterization|call-with-composable-continuation|call-with-continuation-barrier|call-with-continuation-prompt|call-with-current-continuation|call-with-default-reading-parameterization|call-with-escape-continuation|call-with-exception-handler|call-with-immediate-continuation-mark|call-with-parameterization|call-with-semaphore|call-with-semaphore\\\\\\\\/enable-break|call-with-values|call\\\\\\\\/cc|call\\\\\\\\/ec|car|cdaaar|cdaadr|cdaar|cdadar|cdaddr|cdadr|cdar|cddaar|cddadr|cddar|cdddar|cddddr|cdddr|cddr|cdr|ceiling|channel-get|channel-put|channel-put-evt|channel-put-evt\\\\\\\\?|channel-try-get|channel\\\\\\\\?|chaperone-box|chaperone-channel|chaperone-continuation-mark-key|chaperone-evt|chaperone-hash|chaperone-of\\\\\\\\?|chaperone-procedure|chaperone-procedure\\\\\\\\*|chaperone-prompt-tag|chaperone-struct|chaperone-struct-type|chaperone-vector|chaperone-vector\\\\\\\\*|chaperone\\\\\\\\?|char->integer|char-alphabetic\\\\\\\\?|char-blank\\\\\\\\?|char-ci<=\\\\\\\\?|char-ci<\\\\\\\\?|char-ci=\\\\\\\\?|char-ci>=\\\\\\\\?|char-ci>\\\\\\\\?|char-downcase|char-foldcase|char-general-category|char-graphic\\\\\\\\?|char-iso-control\\\\\\\\?|char-lower-case\\\\\\\\?|char-numeric\\\\\\\\?|char-punctuation\\\\\\\\?|char-ready\\\\\\\\?|char-symbolic\\\\\\\\?|char-title-case\\\\\\\\?|char-titlecase|char-upcase|char-upper-case\\\\\\\\?|char-utf-8-length|char-whitespace\\\\\\\\?|char<=\\\\\\\\?|char<\\\\\\\\?|char=\\\\\\\\?|char>=\\\\\\\\?|char>\\\\\\\\?|char\\\\\\\\?|check-duplicate-identifier|check-tail-contract|checked-procedure-check-and-extract|choice-evt|cleanse-path|close-input-port|close-output-port|collect-garbage|collection-file-path|collection-path|compile|compile-allow-set!-undefined|compile-context-preservation-enabled|compile-enforce-module-constants|compile-syntax|compiled-expression-recompile|compiled-expression\\\\\\\\?|compiled-module-expression\\\\\\\\?|complete-path\\\\\\\\?|complex\\\\\\\\?|compose|compose1|cons|continuation-mark-key\\\\\\\\?|continuation-mark-set->context|continuation-mark-set->list|continuation-mark-set->list\\\\\\\\*|continuation-mark-set-first|continuation-mark-set\\\\\\\\?|continuation-marks|continuation-prompt-available\\\\\\\\?|continuation-prompt-tag\\\\\\\\?|continuation\\\\\\\\?|copy-file|cos|current-break-parameterization|current-code-inspector|current-command-line-arguments|current-compile|current-compiled-file-roots|current-continuation-marks|current-custodian|current-directory|current-directory-for-user|current-drive|current-environment-variables|current-error-port|current-eval|current-evt-pseudo-random-generator|current-force-delete-permissions|current-gc-milliseconds|current-get-interaction-input-port|current-inexact-milliseconds|current-input-port|current-inspector|current-library-collection-links|current-library-collection-paths|current-load|current-load-extension|current-load-relative-directory|current-load\\\\\\\\/use-compiled|current-locale|current-logger|current-memory-use|current-milliseconds|current-module-declare-name|current-module-declare-source|current-module-name-resolver|current-module-path-for-load|current-namespace|current-output-port|current-parameterization|current-plumber|current-preserved-thread-cell-values|current-print|current-process-milliseconds|current-prompt-read|current-pseudo-random-generator|current-read-interaction|current-reader-guard|current-readtable|current-seconds|current-security-guard|current-subprocess-custodian-mode|current-thread|current-thread-group|current-thread-initial-stack-size|current-write-relative-directory|custodian-box-value|custodian-box\\\\\\\\?|custodian-limit-memory|custodian-managed-list|custodian-memory-accounting-available\\\\\\\\?|custodian-require-memory|custodian-shut-down\\\\\\\\?|custodian-shutdown-all|custodian\\\\\\\\?|custom-print-quotable-accessor|custom-print-quotable\\\\\\\\?|custom-write-accessor|custom-write\\\\\\\\?|date\\\\\\\\*-nanosecond|date\\\\\\\\*-time-zone-name|date\\\\\\\\*\\\\\\\\?|date-day|date-dst\\\\\\\\?|date-hour|date-minute|date-month|date-second|date-time-zone-offset|date-week-day|date-year|date-year-day|date\\\\\\\\?|datum->syntax|datum-intern-literal|default-continuation-prompt-tag|delete-directory|delete-file|denominator|directory-exists\\\\\\\\?|directory-list|display|displayln|double-flonum\\\\\\\\?|dump-memory-stats|dynamic-require|dynamic-require-for-syntax|dynamic-wind|environment-variables-copy|environment-variables-names|environment-variables-ref|environment-variables-set!|environment-variables\\\\\\\\?|eof|eof-object\\\\\\\\?|ephemeron-value|ephemeron\\\\\\\\?|eprintf|eq-hash-code|eq\\\\\\\\?|equal-hash-code|equal-secondary-hash-code|equal\\\\\\\\?|equal\\\\\\\\?\\\\\\\\/recur|eqv-hash-code|eqv\\\\\\\\?|error|error-display-handler|error-escape-handler|error-print-context-length|error-print-source-location|error-print-width|error-value->string-handler|eval|eval-jit-enabled|eval-syntax|even\\\\\\\\?|evt\\\\\\\\?|exact->inexact|exact-integer\\\\\\\\?|exact-nonnegative-integer\\\\\\\\?|exact-positive-integer\\\\\\\\?|exact\\\\\\\\?|executable-yield-handler|exit|exit-handler|exn-continuation-marks|exn-message|exn:break-continuation|exn:break:hang-up\\\\\\\\?|exn:break:terminate\\\\\\\\?|exn:break\\\\\\\\?|exn:fail:contract:arity\\\\\\\\?|exn:fail:contract:continuation\\\\\\\\?|exn:fail:contract:divide-by-zero\\\\\\\\?|exn:fail:contract:non-fixnum-result\\\\\\\\?|exn:fail:contract:variable-id|exn:fail:contract:variable\\\\\\\\?|exn:fail:contract\\\\\\\\?|exn:fail:filesystem:errno-errno|exn:fail:filesystem:errno\\\\\\\\?|exn:fail:filesystem:exists\\\\\\\\?|exn:fail:filesystem:missing-module-path|exn:fail:filesystem:missing-module\\\\\\\\?|exn:fail:filesystem:version\\\\\\\\?|exn:fail:filesystem\\\\\\\\?|exn:fail:network:errno-errno|exn:fail:network:errno\\\\\\\\?|exn:fail:network\\\\\\\\?|exn:fail:out-of-memory\\\\\\\\?|exn:fail:read-srclocs|exn:fail:read:eof\\\\\\\\?|exn:fail:read:non-char\\\\\\\\?|exn:fail:read\\\\\\\\?|exn:fail:syntax-exprs|exn:fail:syntax:missing-module-path|exn:fail:syntax:missing-module\\\\\\\\?|exn:fail:syntax:unbound\\\\\\\\?|exn:fail:syntax\\\\\\\\?|exn:fail:unsupported\\\\\\\\?|exn:fail:user\\\\\\\\?|exn:fail\\\\\\\\?|exn:missing-module-accessor|exn:missing-module\\\\\\\\?|exn:srclocs-accessor|exn:srclocs\\\\\\\\?|exn\\\\\\\\?|exp|expand|expand-for-clause|expand-once|expand-syntax|expand-syntax-once|expand-syntax-to-top-form|expand-to-top-form|expand-user-path|explode-path|expt|file-exists\\\\\\\\?|file-or-directory-identity|file-or-directory-modify-seconds|file-or-directory-permissions|file-position|file-position\\\\\\\\*|file-size|file-stream-buffer-mode|file-stream-port\\\\\\\\?|file-truncate|filesystem-change-evt|filesystem-change-evt-cancel|filesystem-change-evt\\\\\\\\?|filesystem-root-list|filter|find-executable-path|find-library-collection-links|find-library-collection-paths|find-system-path|findf|fixnum\\\\\\\\?|floating-point-bytes->real|flonum\\\\\\\\?|floor|flush-output|foldl|foldr|for-clause-syntax-protect|for-each|format|fprintf|free-identifier=\\\\\\\\?|free-label-identifier=\\\\\\\\?|free-template-identifier=\\\\\\\\?|free-transformer-identifier=\\\\\\\\?|gcd|generate-temporaries|gensym|get-output-bytes|get-output-string|getenv|global-port-print-handler|guard-evt|handle-evt|handle-evt\\\\\\\\?|hash|hash->list|hash-clear|hash-clear!|hash-copy|hash-copy-clear|hash-count|hash-empty\\\\\\\\?|hash-eq\\\\\\\\?|hash-equal\\\\\\\\?|hash-eqv\\\\\\\\?|hash-for-each|hash-has-key\\\\\\\\?|hash-iterate-first|hash-iterate-key|hash-iterate-key\\\\\\\\+value|hash-iterate-next|hash-iterate-pair|hash-iterate-value|hash-keys|hash-keys-subset\\\\\\\\?|hash-map|hash-placeholder\\\\\\\\?|hash-ref|hash-ref!|hash-remove|hash-remove!|hash-set|hash-set!|hash-set\\\\\\\\*|hash-set\\\\\\\\*!|hash-update|hash-update!|hash-values|hash-weak\\\\\\\\?|hash\\\\\\\\?|hasheq|hasheqv|identifier-binding|identifier-binding-symbol|identifier-label-binding|identifier-prune-lexical-context|identifier-prune-to-source-module|identifier-remove-from-definition-context|identifier-template-binding|identifier-transformer-binding|identifier\\\\\\\\?|imag-part|immutable\\\\\\\\?|impersonate-box|impersonate-channel|impersonate-continuation-mark-key|impersonate-hash|impersonate-procedure|impersonate-procedure\\\\\\\\*|impersonate-prompt-tag|impersonate-struct|impersonate-vector|impersonate-vector\\\\\\\\*|impersonator-ephemeron|impersonator-of\\\\\\\\?|impersonator-prop:application-mark|impersonator-property-accessor-procedure\\\\\\\\?|impersonator-property\\\\\\\\?|impersonator\\\\\\\\?|in-cycle|in-parallel|in-sequences|in-values\\\\\\\\*-sequence|in-values-sequence|inexact->exact|inexact-real\\\\\\\\?|inexact\\\\\\\\?|input-port\\\\\\\\?|inspector-superior\\\\\\\\?|inspector\\\\\\\\?|integer->char|integer->integer-bytes|integer-bytes->integer|integer-length|integer-sqrt|integer-sqrt\\\\\\\\/remainder|integer\\\\\\\\?|internal-definition-context-binding-identifiers|internal-definition-context-introduce|internal-definition-context-seal|internal-definition-context\\\\\\\\?|keyword->string|keyword-apply|keyword<\\\\\\\\?|keyword\\\\\\\\?|kill-thread|lcm|legacy-match-expander\\\\\\\\?|length|liberal-define-context\\\\\\\\?|link-exists\\\\\\\\?|list|list\\\\\\\\*|list->bytes|list->string|list->vector|list-ref|list-tail|list\\\\\\\\?|load|load-extension|load-on-demand-enabled|load-relative|load-relative-extension|load\\\\\\\\/cd|load\\\\\\\\/use-compiled|local-expand|local-expand\\\\\\\\/capture-lifts|local-transformer-expand|local-transformer-expand\\\\\\\\/capture-lifts|locale-string-encoding|log|log-all-levels|log-level-evt|log-level\\\\\\\\?|log-max-level|log-message|log-receiver\\\\\\\\?|logger-name|logger\\\\\\\\?|magnitude|make-arity-at-least|make-base-empty-namespace|make-base-namespace|make-bytes|make-channel|make-continuation-mark-key|make-continuation-prompt-tag|make-custodian|make-custodian-box|make-date|make-date\\\\\\\\*|make-derived-parameter|make-directory|make-do-sequence|make-empty-namespace|make-environment-variables|make-ephemeron|make-exn|make-exn:break|make-exn:break:hang-up|make-exn:break:terminate|make-exn:fail|make-exn:fail:contract|make-exn:fail:contract:arity|make-exn:fail:contract:continuation|make-exn:fail:contract:divide-by-zero|make-exn:fail:contract:non-fixnum-result|make-exn:fail:contract:variable|make-exn:fail:filesystem|make-exn:fail:filesystem:errno|make-exn:fail:filesystem:exists|make-exn:fail:filesystem:missing-module|make-exn:fail:filesystem:version|make-exn:fail:network|make-exn:fail:network:errno|make-exn:fail:out-of-memory|make-exn:fail:read|make-exn:fail:read:eof|make-exn:fail:read:non-char|make-exn:fail:syntax|make-exn:fail:syntax:missing-module|make-exn:fail:syntax:unbound|make-exn:fail:unsupported|make-exn:fail:user|make-file-or-directory-link|make-hash|make-hash-placeholder|make-hasheq|make-hasheq-placeholder|make-hasheqv|make-hasheqv-placeholder|make-immutable-hash|make-immutable-hasheq|make-immutable-hasheqv|make-impersonator-property|make-input-port|make-inspector|make-keyword-procedure|make-known-char-range-list|make-log-receiver|make-logger|make-output-port|make-parameter|make-phantom-bytes|make-pipe|make-placeholder|make-plumber|make-polar|make-prefab-struct|make-pseudo-random-generator|make-reader-graph|make-readtable|make-rectangular|make-rename-transformer|make-resolved-module-path|make-security-guard|make-semaphore|make-set!-transformer|make-shared-bytes|make-sibling-inspector|make-special-comment|make-srcloc|make-string|make-struct-field-accessor|make-struct-field-mutator|make-struct-type|make-struct-type-property|make-syntax-delta-introducer|make-syntax-introducer|make-thread-cell|make-thread-group|make-vector|make-weak-box|make-weak-hash|make-weak-hasheq|make-weak-hasheqv|make-will-executor|map|match-\\\\\\\\.\\\\\\\\.\\\\\\\\.-nesting|match-expander\\\\\\\\?|max|mcar|mcdr|mcons|member|memf|memq|memv|min|module->exports|module->imports|module->indirect-exports|module->language-info|module->namespace|module-compiled-cross-phase-persistent\\\\\\\\?|module-compiled-exports|module-compiled-imports|module-compiled-indirect-exports|module-compiled-language-info|module-compiled-name|module-compiled-submodules|module-declared\\\\\\\\?|module-path-index-join|module-path-index-resolve|module-path-index-split|module-path-index-submodule|module-path-index\\\\\\\\?|module-path\\\\\\\\?|module-predefined\\\\\\\\?|module-provide-protected\\\\\\\\?|modulo|mpair\\\\\\\\?|nack-guard-evt|namespace-anchor->empty-namespace|namespace-anchor->namespace|namespace-anchor\\\\\\\\?|namespace-attach-module|namespace-attach-module-declaration|namespace-base-phase|namespace-mapped-symbols|namespace-module-identifier|namespace-module-registry|namespace-require|namespace-require\\\\\\\\/constant|namespace-require\\\\\\\\/copy|namespace-require\\\\\\\\/expansion-time|namespace-set-variable-value!|namespace-symbol->identifier|namespace-syntax-introduce|namespace-undefine-variable!|namespace-unprotect-module|namespace-variable-value|namespace\\\\\\\\?|negative\\\\\\\\?|never-evt|newline|normal-case-path|not|null|null\\\\\\\\?|number->string|number\\\\\\\\?|numerator|object-name|odd\\\\\\\\?|open-input-bytes|open-input-string|open-output-bytes|open-output-string|ormap|output-port\\\\\\\\?|pair\\\\\\\\?|parameter-procedure=\\\\\\\\?|parameter\\\\\\\\?|parameterization\\\\\\\\?|parse-leftover->\\\\\\\\*|path->bytes|path->complete-path|path->directory-path|path->string|path-add-extension|path-add-suffix|path-convention-type|path-element->bytes|path-element->string|path-for-some-system\\\\\\\\?|path-list-string->path-list|path-replace-extension|path-replace-suffix|path-string\\\\\\\\?|path<\\\\\\\\?|path\\\\\\\\?|peek-byte|peek-byte-or-special|peek-bytes|peek-bytes!|peek-bytes-avail!|peek-bytes-avail!\\\\\\\\*|peek-bytes-avail!\\\\\\\\/enable-break|peek-char|peek-char-or-special|peek-string|peek-string!|phantom-bytes\\\\\\\\?|pipe-content-length|placeholder-get|placeholder-set!|placeholder\\\\\\\\?|plumber-add-flush!|plumber-flush-all|plumber-flush-handle-remove!|plumber-flush-handle\\\\\\\\?|plumber\\\\\\\\?|poll-guard-evt|port-closed-evt|port-closed\\\\\\\\?|port-commit-peeked|port-count-lines!|port-count-lines-enabled|port-counts-lines\\\\\\\\?|port-display-handler|port-file-identity|port-file-unlock|port-next-location|port-print-handler|port-progress-evt|port-provides-progress-evts\\\\\\\\?|port-read-handler|port-try-file-lock\\\\\\\\?|port-write-handler|port-writes-atomic\\\\\\\\?|port-writes-special\\\\\\\\?|port\\\\\\\\?|positive\\\\\\\\?|prefab-key->struct-type|prefab-key\\\\\\\\?|prefab-struct-key|pregexp|pregexp\\\\\\\\?|primitive-closure\\\\\\\\?|primitive-result-arity|primitive\\\\\\\\?|print|print-as-expression|print-boolean-long-form|print-box|print-graph|print-hash-table|print-mpair-curly-braces|print-pair-curly-braces|print-reader-abbreviations|print-struct|print-syntax-width|print-unreadable|print-vector-length|printf|println|procedure->method|procedure-arity|procedure-arity-includes\\\\\\\\?|procedure-arity\\\\\\\\?|procedure-closure-contents-eq\\\\\\\\?|procedure-extract-target|procedure-impersonator\\\\\\\\*\\\\\\\\?|procedure-keywords|procedure-reduce-arity|procedure-reduce-keyword-arity|procedure-rename|procedure-result-arity|procedure-specialize|procedure-struct-type\\\\\\\\?|procedure\\\\\\\\?|progress-evt\\\\\\\\?|prop:arity-string|prop:authentic|prop:checked-procedure|prop:custom-print-quotable|prop:custom-write|prop:equal\\\\\\\\+hash|prop:evt|prop:exn:missing-module|prop:exn:srclocs|prop:expansion-contexts|prop:impersonator-of|prop:input-port|prop:legacy-match-expander|prop:liberal-define-context|prop:match-expander|prop:object-name|prop:output-port|prop:procedure|prop:rename-transformer|prop:sequence|prop:set!-transformer|pseudo-random-generator->vector|pseudo-random-generator-vector\\\\\\\\?|pseudo-random-generator\\\\\\\\?|putenv|quotient|quotient\\\\\\\\/remainder|raise|raise-argument-error|raise-arguments-error|raise-arity-error|raise-mismatch-error|raise-range-error|raise-result-error|raise-syntax-error|raise-type-error|raise-user-error|random|random-seed|rational\\\\\\\\?|rationalize|read|read-accept-bar-quote|read-accept-box|read-accept-compiled|read-accept-dot|read-accept-graph|read-accept-infix-dot|read-accept-lang|read-accept-quasiquote|read-accept-reader|read-byte|read-byte-or-special|read-bytes|read-bytes!|read-bytes-avail!|read-bytes-avail!\\\\\\\\*|read-bytes-avail!\\\\\\\\/enable-break|read-bytes-line|read-case-sensitive|read-cdot|read-char|read-char-or-special|read-curly-brace-as-paren|read-curly-brace-with-tag|read-decimal-as-inexact|read-eval-print-loop|read-language|read-line|read-on-demand-source|read-square-bracket-as-paren|read-square-bracket-with-tag|read-string|read-string!|read-syntax|read-syntax\\\\\\\\/recursive|read\\\\\\\\/recursive|readtable-mapping|readtable\\\\\\\\?|real->decimal-string|real->double-flonum|real->floating-point-bytes|real->single-flonum|real-part|real\\\\\\\\?|regexp|regexp-match|regexp-match-exact\\\\\\\\?|regexp-match-peek|regexp-match-peek-immediate|regexp-match-peek-positions|regexp-match-peek-positions-immediate|regexp-match-peek-positions-immediate\\\\\\\\/end|regexp-match-peek-positions\\\\\\\\/end|regexp-match-positions|regexp-match-positions\\\\\\\\/end|regexp-match\\\\\\\\/end|regexp-match\\\\\\\\?|regexp-max-lookbehind|regexp-quote|regexp-replace|regexp-replace\\\\\\\\*|regexp-replace-quote|regexp-replaces|regexp-split|regexp-try-match|regexp\\\\\\\\?|relative-path\\\\\\\\?|remainder|remove|remove\\\\\\\\*|remq|remq\\\\\\\\*|remv|remv\\\\\\\\*|rename-file-or-directory|rename-transformer-target|rename-transformer\\\\\\\\?|replace-evt|reroot-path|resolve-path|resolved-module-path-name|resolved-module-path\\\\\\\\?|reverse|round|seconds->date|security-guard\\\\\\\\?|semaphore-peek-evt|semaphore-peek-evt\\\\\\\\?|semaphore-post|semaphore-try-wait\\\\\\\\?|semaphore-wait|semaphore-wait\\\\\\\\/enable-break|semaphore\\\\\\\\?|sequence->stream|sequence-generate|sequence-generate\\\\\\\\*|sequence\\\\\\\\?|set!-transformer-procedure|set!-transformer\\\\\\\\?|set-box!|set-mcar!|set-mcdr!|set-phantom-bytes!|set-port-next-location!|shared-bytes|shell-execute|simplify-path|sin|single-flonum\\\\\\\\?|sleep|special-comment-value|special-comment\\\\\\\\?|split-path|sqrt|srcloc->string|srcloc-column|srcloc-line|srcloc-position|srcloc-source|srcloc-span|srcloc\\\\\\\\?|stop-after|stop-before|string|string->bytes\\\\\\\\/latin-1|string->bytes\\\\\\\\/locale|string->bytes\\\\\\\\/utf-8|string->immutable-string|string->keyword|string->list|string->number|string->path|string->path-element|string->symbol|string->uninterned-symbol|string->unreadable-symbol|string-append|string-ci<=\\\\\\\\?|string-ci<\\\\\\\\?|string-ci=\\\\\\\\?|string-ci>=\\\\\\\\?|string-ci>\\\\\\\\?|string-copy|string-copy!|string-downcase|string-environment-variable-name\\\\\\\\?|string-fill!|string-foldcase|string-length|string-locale-ci<\\\\\\\\?|string-locale-ci=\\\\\\\\?|string-locale-ci>\\\\\\\\?|string-locale-downcase|string-locale-upcase|string-locale<\\\\\\\\?|string-locale=\\\\\\\\?|string-locale>\\\\\\\\?|string-normalize-nfc|string-normalize-nfd|string-normalize-nfkc|string-normalize-nfkd|string-port\\\\\\\\?|string-ref|string-set!|string-titlecase|string-upcase|string-utf-8-length|string<=\\\\\\\\?|string<\\\\\\\\?|string=\\\\\\\\?|string>=\\\\\\\\?|string>\\\\\\\\?|string\\\\\\\\?|struct->vector|struct-accessor-procedure\\\\\\\\?|struct-constructor-procedure\\\\\\\\?|struct-info|struct-mutator-procedure\\\\\\\\?|struct-predicate-procedure\\\\\\\\?|struct-type-info|struct-type-make-constructor|struct-type-make-predicate|struct-type-property-accessor-procedure\\\\\\\\?|struct-type-property\\\\\\\\?|struct-type\\\\\\\\?|struct:arity-at-least|struct:date|struct:date\\\\\\\\*|struct:exn|struct:exn:break|struct:exn:break:hang-up|struct:exn:break:terminate|struct:exn:fail|struct:exn:fail:contract|struct:exn:fail:contract:arity|struct:exn:fail:contract:continuation|struct:exn:fail:contract:divide-by-zero|struct:exn:fail:contract:non-fixnum-result|struct:exn:fail:contract:variable|struct:exn:fail:filesystem|struct:exn:fail:filesystem:errno|struct:exn:fail:filesystem:exists|struct:exn:fail:filesystem:missing-module|struct:exn:fail:filesystem:version|struct:exn:fail:network|struct:exn:fail:network:errno|struct:exn:fail:out-of-memory|struct:exn:fail:read|struct:exn:fail:read:eof|struct:exn:fail:read:non-char|struct:exn:fail:syntax|struct:exn:fail:syntax:missing-module|struct:exn:fail:syntax:unbound|struct:exn:fail:unsupported|struct:exn:fail:user|struct:srcloc|struct\\\\\\\\?|sub1|subbytes|subprocess|subprocess-group-enabled|subprocess-kill|subprocess-pid|subprocess-status|subprocess-wait|subprocess\\\\\\\\?|substring|symbol->string|symbol-interned\\\\\\\\?|symbol-unreadable\\\\\\\\?|symbol<\\\\\\\\?|symbol\\\\\\\\?|sync|sync\\\\\\\\/enable-break|sync\\\\\\\\/timeout|sync\\\\\\\\/timeout\\\\\\\\/enable-break|syntax->datum|syntax->list|syntax-arm|syntax-column|syntax-debug-info|syntax-disarm|syntax-e|syntax-line|syntax-local-bind-syntaxes|syntax-local-certifier|syntax-local-context|syntax-local-expand-expression|syntax-local-get-shadower|syntax-local-identifier-as-binding|syntax-local-introduce|syntax-local-lift-context|syntax-local-lift-expression|syntax-local-lift-module|syntax-local-lift-module-end-declaration|syntax-local-lift-provide|syntax-local-lift-require|syntax-local-lift-values-expression|syntax-local-make-definition-context|syntax-local-make-delta-introducer|syntax-local-match-introduce|syntax-local-module-defined-identifiers|syntax-local-module-exports|syntax-local-module-required-identifiers|syntax-local-name|syntax-local-phase-level|syntax-local-submodules|syntax-local-transforming-module-provides\\\\\\\\?|syntax-local-value|syntax-local-value\\\\\\\\/immediate|syntax-original\\\\\\\\?|syntax-pattern-variable\\\\\\\\?|syntax-position|syntax-property|syntax-property-preserved\\\\\\\\?|syntax-property-symbol-keys|syntax-protect|syntax-rearm|syntax-recertify|syntax-shift-phase-level|syntax-source|syntax-source-module|syntax-span|syntax-taint|syntax-tainted\\\\\\\\?|syntax-track-origin|syntax-transforming-module-expression\\\\\\\\?|syntax-transforming-with-lifts\\\\\\\\?|syntax-transforming\\\\\\\\?|syntax\\\\\\\\?|system-big-endian\\\\\\\\?|system-idle-evt|system-language\\\\\\\\+country|system-library-subpath|system-path-convention-type|system-type|tan|terminal-port\\\\\\\\?|thread|thread-cell-ref|thread-cell-set!|thread-cell-values\\\\\\\\?|thread-cell\\\\\\\\?|thread-dead-evt|thread-dead\\\\\\\\?|thread-group\\\\\\\\?|thread-receive|thread-receive-evt|thread-resume|thread-resume-evt|thread-rewind-receive|thread-running\\\\\\\\?|thread-send|thread-suspend|thread-suspend-evt|thread-try-receive|thread-wait|thread\\\\\\\\/suspend-to-kill|thread\\\\\\\\?|time-apply|truncate|unbox|uncaught-exception-handler|unquoted-printing-string|unquoted-printing-string-value|unquoted-printing-string\\\\\\\\?|use-collection-link-paths|use-compiled-file-check|use-compiled-file-paths|use-user-specific-search-paths|values|variable-reference->empty-namespace|variable-reference->module-base-phase|variable-reference->module-declaration-inspector|variable-reference->module-path-index|variable-reference->module-source|variable-reference->namespace|variable-reference->phase|variable-reference->resolved-module-path|variable-reference-constant\\\\\\\\?|variable-reference\\\\\\\\?|vector|vector->immutable-vector|vector->list|vector->pseudo-random-generator|vector->pseudo-random-generator!|vector->values|vector-cas!|vector-copy!|vector-fill!|vector-immutable|vector-length|vector-ref|vector-set!|vector-set-performance-stats!|vector\\\\\\\\?|version|void|void\\\\\\\\?|weak-box-value|weak-box\\\\\\\\?|will-execute|will-executor\\\\\\\\?|will-register|will-try-execute|wrap-evt|write|write-byte|write-bytes|write-bytes-avail|write-bytes-avail\\\\\\\\*|write-bytes-avail-evt|write-bytes-avail\\\\\\\\/enable-break|write-char|write-special|write-special-avail\\\\\\\\*|write-special-evt|write-string|writeln|zero\\\\\\\\?|\\\\\\\\*|\\\\\\\\*list\\\\\\\\/c|\\\\\\\\+|-|\\\\\\\\/|<|<\\\\\\\\/c|<=|=|>|>\\\\\\\\/c|>=|abort-current-continuation|abs|absolute-path\\\\\\\\?|acos|add1|alarm-evt|always-evt|andmap|angle|append|append\\\\\\\\*|append-map|argmax|argmin|arithmetic-shift|arity-at-least-value|arity-at-least\\\\\\\\?|arity-checking-wrapper|arity-includes\\\\\\\\?|arity=\\\\\\\\?|arrow-contract-info-accepts-arglist|arrow-contract-info-chaperone-procedure|arrow-contract-info-check-first-order|arrow-contract-info\\\\\\\\?|asin|assf|assoc|assq|assv|atan|banner|base->-doms\\\\\\\\/c|base->-rngs\\\\\\\\/c|base->\\\\\\\\?|bitwise-and|bitwise-bit-field|bitwise-bit-set\\\\\\\\?|bitwise-ior|bitwise-not|bitwise-xor|blame-add-car-context|blame-add-cdr-context|blame-add-missing-party|blame-add-nth-arg-context|blame-add-range-context|blame-add-unknown-context|blame-context|blame-contract|blame-fmt->-string|blame-missing-party\\\\\\\\?|blame-negative|blame-original\\\\\\\\?|blame-positive|blame-replace-negative|blame-source|blame-swap|blame-swapped\\\\\\\\?|blame-update|blame-value|blame\\\\\\\\?|boolean=\\\\\\\\?|boolean\\\\\\\\?|bound-identifier=\\\\\\\\?|box|box-cas!|box-immutable|box\\\\\\\\?|break-enabled|break-parameterization\\\\\\\\?|break-thread|build-chaperone-contract-property|build-compound-type-name|build-contract-property|build-flat-contract-property|build-list|build-path|build-path\\\\\\\\/convention-type|build-string|build-vector|byte-pregexp|byte-pregexp\\\\\\\\?|byte-ready\\\\\\\\?|byte-regexp|byte-regexp\\\\\\\\?|byte\\\\\\\\?|bytes|bytes->immutable-bytes|bytes->list|bytes->path|bytes->path-element|bytes->string\\\\\\\\/latin-1|bytes->string\\\\\\\\/locale|bytes->string\\\\\\\\/utf-8|bytes-append|bytes-append\\\\\\\\*|bytes-close-converter|bytes-convert|bytes-convert-end|bytes-converter\\\\\\\\?|bytes-copy|bytes-copy!|bytes-environment-variable-name\\\\\\\\?|bytes-fill!|bytes-join|bytes-length|bytes-no-nuls\\\\\\\\?|bytes-open-converter|bytes-ref|bytes-set!|bytes-utf-8-index|bytes-utf-8-length|bytes-utf-8-ref|bytes<\\\\\\\\?|bytes=\\\\\\\\?|bytes>\\\\\\\\?|bytes\\\\\\\\?|caaaar|caaadr|caaar|caadar|caaddr|caadr|caar|cadaar|cadadr|cadar|caddar|cadddr|caddr|cadr|call-in-nested-thread|call-with-break-parameterization|call-with-composable-continuation|call-with-continuation-barrier|call-with-continuation-prompt|call-with-current-continuation|call-with-default-reading-parameterization|call-with-escape-continuation|call-with-exception-handler|call-with-immediate-continuation-mark|call-with-input-bytes|call-with-input-string|call-with-output-bytes|call-with-output-string|call-with-parameterization|call-with-semaphore|call-with-semaphore\\\\\\\\/enable-break|call-with-values|call\\\\\\\\/cc|call\\\\\\\\/ec|car|cartesian-product|cdaaar|cdaadr|cdaar|cdadar|cdaddr|cdadr|cdar|cddaar|cddadr|cddar|cdddar|cddddr|cdddr|cddr|cdr|ceiling|channel-get|channel-put|channel-put-evt|channel-put-evt\\\\\\\\?|channel-try-get|channel\\\\\\\\?|chaperone-box|chaperone-channel|chaperone-continuation-mark-key|chaperone-contract-property\\\\\\\\?|chaperone-contract\\\\\\\\?|chaperone-evt|chaperone-hash|chaperone-hash-set|chaperone-of\\\\\\\\?|chaperone-procedure|chaperone-procedure\\\\\\\\*|chaperone-prompt-tag|chaperone-struct|chaperone-struct-type|chaperone-vector|chaperone-vector\\\\\\\\*|chaperone\\\\\\\\?|char->integer|char-alphabetic\\\\\\\\?|char-blank\\\\\\\\?|char-ci<=\\\\\\\\?|char-ci<\\\\\\\\?|char-ci=\\\\\\\\?|char-ci>=\\\\\\\\?|char-ci>\\\\\\\\?|char-downcase|char-foldcase|char-general-category|char-graphic\\\\\\\\?|char-in|char-iso-control\\\\\\\\?|char-lower-case\\\\\\\\?|char-numeric\\\\\\\\?|char-punctuation\\\\\\\\?|char-ready\\\\\\\\?|char-symbolic\\\\\\\\?|char-title-case\\\\\\\\?|char-titlecase|char-upcase|char-upper-case\\\\\\\\?|char-utf-8-length|char-whitespace\\\\\\\\?|char<=\\\\\\\\?|char<\\\\\\\\?|char=\\\\\\\\?|char>=\\\\\\\\?|char>\\\\\\\\?|char\\\\\\\\?|check-duplicate-identifier|checked-procedure-check-and-extract|choice-evt|class->interface|class-info|class-seal|class-unseal|class\\\\\\\\?|cleanse-path|close-input-port|close-output-port|coerce-chaperone-contract|coerce-chaperone-contracts|coerce-contract|coerce-contract\\\\\\\\/f|coerce-contracts|coerce-flat-contract|coerce-flat-contracts|collect-garbage|collection-file-path|collection-path|combinations|compile|compile-allow-set!-undefined|compile-context-preservation-enabled|compile-enforce-module-constants|compile-syntax|compiled-expression-recompile|compiled-expression\\\\\\\\?|compiled-module-expression\\\\\\\\?|complete-path\\\\\\\\?|complex\\\\\\\\?|compose|compose1|conjoin|conjugate|cons|cons\\\\\\\\?|const|continuation-mark-key\\\\\\\\?|continuation-mark-set->context|continuation-mark-set->list|continuation-mark-set->list\\\\\\\\*|continuation-mark-set-first|continuation-mark-set\\\\\\\\?|continuation-marks|continuation-prompt-available\\\\\\\\?|continuation-prompt-tag\\\\\\\\?|continuation\\\\\\\\?|contract-continuation-mark-key|contract-custom-write-property-proc|contract-first-order|contract-first-order-passes\\\\\\\\?|contract-late-neg-projection|contract-name|contract-proc|contract-projection|contract-property\\\\\\\\?|contract-random-generate|contract-random-generate-fail|contract-random-generate-fail\\\\\\\\?|contract-random-generate-get-current-environment|contract-random-generate-stash|contract-random-generate\\\\\\\\/choose|contract-stronger\\\\\\\\?|contract-struct-exercise|contract-struct-generate|contract-struct-late-neg-projection|contract-struct-list-contract\\\\\\\\?|contract-val-first-projection|contract\\\\\\\\?|convert-stream|copy-file|copy-port|cos|cosh|count|current-blame-format|current-break-parameterization|current-code-inspector|current-command-line-arguments|current-compile|current-compiled-file-roots|current-continuation-marks|current-custodian|current-directory|current-directory-for-user|current-drive|current-environment-variables|current-error-port|current-eval|current-evt-pseudo-random-generator|current-force-delete-permissions|current-future|current-gc-milliseconds|current-get-interaction-input-port|current-inexact-milliseconds|current-input-port|current-inspector|current-library-collection-links|current-library-collection-paths|current-load|current-load-extension|current-load-relative-directory|current-load\\\\\\\\/use-compiled|current-locale|current-logger|current-memory-use|current-milliseconds|current-module-declare-name|current-module-declare-source|current-module-name-resolver|current-module-path-for-load|current-namespace|current-output-port|current-parameterization|current-plumber|current-preserved-thread-cell-values|current-print|current-process-milliseconds|current-prompt-read|current-pseudo-random-generator|current-read-interaction|current-reader-guard|current-readtable|current-seconds|current-security-guard|current-subprocess-custodian-mode|current-thread|current-thread-group|current-thread-initial-stack-size|current-write-relative-directory|curry|curryr|custodian-box-value|custodian-box\\\\\\\\?|custodian-limit-memory|custodian-managed-list|custodian-memory-accounting-available\\\\\\\\?|custodian-require-memory|custodian-shut-down\\\\\\\\?|custodian-shutdown-all|custodian\\\\\\\\?|custom-print-quotable-accessor|custom-print-quotable\\\\\\\\?|custom-write-accessor|custom-write-property-proc|custom-write\\\\\\\\?|date\\\\\\\\*-nanosecond|date\\\\\\\\*-time-zone-name|date\\\\\\\\*\\\\\\\\?|date-day|date-dst\\\\\\\\?|date-hour|date-minute|date-month|date-second|date-time-zone-offset|date-week-day|date-year|date-year-day|date\\\\\\\\?|datum->syntax|datum-intern-literal|default-continuation-prompt-tag|degrees->radians|delete-directory|delete-file|denominator|dict-iter-contract|dict-key-contract|dict-value-contract|directory-exists\\\\\\\\?|directory-list|disjoin|display|displayln|double-flonum\\\\\\\\?|drop|drop-common-prefix|drop-right|dropf|dropf-right|dump-memory-stats|dup-input-port|dup-output-port|dynamic-get-field|dynamic-object\\\\\\\\/c|dynamic-require|dynamic-require-for-syntax|dynamic-send|dynamic-set-field!|dynamic-wind|eighth|empty|empty-sequence|empty-stream|empty\\\\\\\\?|environment-variables-copy|environment-variables-names|environment-variables-ref|environment-variables-set!|environment-variables\\\\\\\\?|eof|eof-object\\\\\\\\?|ephemeron-value|ephemeron\\\\\\\\?|eprintf|eq-contract-val|eq-contract\\\\\\\\?|eq-hash-code|eq\\\\\\\\?|equal-contract-val|equal-contract\\\\\\\\?|equal-hash-code|equal-secondary-hash-code|equal<%>|equal\\\\\\\\?|equal\\\\\\\\?\\\\\\\\/recur|eqv-hash-code|eqv\\\\\\\\?|error|error-display-handler|error-escape-handler|error-print-context-length|error-print-source-location|error-print-width|error-value->string-handler|eval|eval-jit-enabled|eval-syntax|even\\\\\\\\?|evt\\\\\\\\/c|evt\\\\\\\\?|exact->inexact|exact-ceiling|exact-floor|exact-integer\\\\\\\\?|exact-nonnegative-integer\\\\\\\\?|exact-positive-integer\\\\\\\\?|exact-round|exact-truncate|exact\\\\\\\\?|executable-yield-handler|exit|exit-handler|exn-continuation-marks|exn-message|exn:break-continuation|exn:break:hang-up\\\\\\\\?|exn:break:terminate\\\\\\\\?|exn:break\\\\\\\\?|exn:fail:contract:arity\\\\\\\\?|exn:fail:contract:blame-object|exn:fail:contract:blame\\\\\\\\?|exn:fail:contract:continuation\\\\\\\\?|exn:fail:contract:divide-by-zero\\\\\\\\?|exn:fail:contract:non-fixnum-result\\\\\\\\?|exn:fail:contract:variable-id|exn:fail:contract:variable\\\\\\\\?|exn:fail:contract\\\\\\\\?|exn:fail:filesystem:errno-errno|exn:fail:filesystem:errno\\\\\\\\?|exn:fail:filesystem:exists\\\\\\\\?|exn:fail:filesystem:missing-module-path|exn:fail:filesystem:missing-module\\\\\\\\?|exn:fail:filesystem:version\\\\\\\\?|exn:fail:filesystem\\\\\\\\?|exn:fail:network:errno-errno|exn:fail:network:errno\\\\\\\\?|exn:fail:network\\\\\\\\?|exn:fail:object\\\\\\\\?|exn:fail:out-of-memory\\\\\\\\?|exn:fail:read-srclocs|exn:fail:read:eof\\\\\\\\?|exn:fail:read:non-char\\\\\\\\?|exn:fail:read\\\\\\\\?|exn:fail:syntax-exprs|exn:fail:syntax:missing-module-path|exn:fail:syntax:missing-module\\\\\\\\?|exn:fail:syntax:unbound\\\\\\\\?|exn:fail:syntax\\\\\\\\?|exn:fail:unsupported\\\\\\\\?|exn:fail:user\\\\\\\\?|exn:fail\\\\\\\\?|exn:misc:match\\\\\\\\?|exn:missing-module-accessor|exn:missing-module\\\\\\\\?|exn:srclocs-accessor|exn:srclocs\\\\\\\\?|exn\\\\\\\\?|exp|expand|expand-once|expand-syntax|expand-syntax-once|expand-syntax-to-top-form|expand-to-top-form|expand-user-path|explode-path|expt|externalizable<%>|failure-result\\\\\\\\/c|false|false\\\\\\\\/c|false\\\\\\\\?|field-names|fifth|file-exists\\\\\\\\?|file-name-from-path|file-or-directory-identity|file-or-directory-modify-seconds|file-or-directory-permissions|file-position|file-position\\\\\\\\*|file-size|file-stream-buffer-mode|file-stream-port\\\\\\\\?|file-truncate|filename-extension|filesystem-change-evt|filesystem-change-evt-cancel|filesystem-change-evt\\\\\\\\?|filesystem-root-list|filter|filter-map|filter-not|filter-read-input-port|find-executable-path|find-library-collection-links|find-library-collection-paths|find-system-path|findf|first|fixnum\\\\\\\\?|flat-contract|flat-contract-predicate|flat-contract-property\\\\\\\\?|flat-contract\\\\\\\\?|flat-named-contract|flatten|floating-point-bytes->real|flonum\\\\\\\\?|floor|flush-output|fold-files|foldl|foldr|for-each|force|format|fourth|fprintf|free-identifier=\\\\\\\\?|free-label-identifier=\\\\\\\\?|free-template-identifier=\\\\\\\\?|free-transformer-identifier=\\\\\\\\?|fsemaphore-count|fsemaphore-post|fsemaphore-try-wait\\\\\\\\?|fsemaphore-wait|fsemaphore\\\\\\\\?|future|future\\\\\\\\?|futures-enabled\\\\\\\\?|gcd|generate-member-key|generate-temporaries|generic-set\\\\\\\\?|generic\\\\\\\\?|gensym|get-output-bytes|get-output-string|get\\\\\\\\/build-late-neg-projection|get\\\\\\\\/build-val-first-projection|getenv|global-port-print-handler|group-by|group-execute-bit|group-read-bit|group-write-bit|guard-evt|handle-evt|handle-evt\\\\\\\\?|has-blame\\\\\\\\?|has-contract\\\\\\\\?|hash|hash->list|hash-clear|hash-clear!|hash-copy|hash-copy-clear|hash-count|hash-empty\\\\\\\\?|hash-eq\\\\\\\\?|hash-equal\\\\\\\\?|hash-eqv\\\\\\\\?|hash-for-each|hash-has-key\\\\\\\\?|hash-iterate-first|hash-iterate-key|hash-iterate-key\\\\\\\\+value|hash-iterate-next|hash-iterate-pair|hash-iterate-value|hash-keys|hash-keys-subset\\\\\\\\?|hash-map|hash-placeholder\\\\\\\\?|hash-ref|hash-ref!|hash-remove|hash-remove!|hash-set|hash-set!|hash-set\\\\\\\\*|hash-set\\\\\\\\*!|hash-update|hash-update!|hash-values|hash-weak\\\\\\\\?|hash\\\\\\\\?|hasheq|hasheqv|identifier-binding|identifier-binding-symbol|identifier-label-binding|identifier-prune-lexical-context|identifier-prune-to-source-module|identifier-remove-from-definition-context|identifier-template-binding|identifier-transformer-binding|identifier\\\\\\\\?|identity|if\\\\\\\\/c|imag-part|immutable\\\\\\\\?|impersonate-box|impersonate-channel|impersonate-continuation-mark-key|impersonate-hash|impersonate-hash-set|impersonate-procedure|impersonate-procedure\\\\\\\\*|impersonate-prompt-tag|impersonate-struct|impersonate-vector|impersonate-vector\\\\\\\\*|impersonator-contract\\\\\\\\?|impersonator-ephemeron|impersonator-of\\\\\\\\?|impersonator-prop:application-mark|impersonator-prop:blame|impersonator-prop:contracted|impersonator-property-accessor-procedure\\\\\\\\?|impersonator-property\\\\\\\\?|impersonator\\\\\\\\?|implementation\\\\\\\\?|implementation\\\\\\\\?\\\\\\\\/c|in-combinations|in-cycle|in-dict-pairs|in-parallel|in-permutations|in-sequences|in-values\\\\\\\\*-sequence|in-values-sequence|index-of|index-where|indexes-of|indexes-where|inexact->exact|inexact-real\\\\\\\\?|inexact\\\\\\\\?|infinite\\\\\\\\?|input-port-append|input-port\\\\\\\\?|inspector-superior\\\\\\\\?|inspector\\\\\\\\?|instanceof\\\\\\\\/c|integer->char|integer->integer-bytes|integer-bytes->integer|integer-length|integer-sqrt|integer-sqrt\\\\\\\\/remainder|integer\\\\\\\\?|interface->method-names|interface-extension\\\\\\\\?|interface\\\\\\\\?|internal-definition-context-binding-identifiers|internal-definition-context-introduce|internal-definition-context-seal|internal-definition-context\\\\\\\\?|is-a\\\\\\\\?|is-a\\\\\\\\?\\\\\\\\/c|keyword->string|keyword-apply|keyword<\\\\\\\\?|keyword\\\\\\\\?|keywords-match|kill-thread|last|last-pair|lcm|length|liberal-define-context\\\\\\\\?|link-exists\\\\\\\\?|list|list\\\\\\\\*|list->bytes|list->mutable-set|list->mutable-seteq|list->mutable-seteqv|list->set|list->seteq|list->seteqv|list->string|list->vector|list->weak-set|list->weak-seteq|list->weak-seteqv|list-contract\\\\\\\\?|list-prefix\\\\\\\\?|list-ref|list-set|list-tail|list-update|list\\\\\\\\?|listen-port-number\\\\\\\\?|load|load-extension|load-on-demand-enabled|load-relative|load-relative-extension|load\\\\\\\\/cd|load\\\\\\\\/use-compiled|local-expand|local-expand\\\\\\\\/capture-lifts|local-transformer-expand|local-transformer-expand\\\\\\\\/capture-lifts|locale-string-encoding|log|log-all-levels|log-level-evt|log-level\\\\\\\\?|log-max-level|log-message|log-receiver\\\\\\\\?|logger-name|logger\\\\\\\\?|magnitude|make-arity-at-least|make-base-empty-namespace|make-base-namespace|make-bytes|make-channel|make-chaperone-contract|make-continuation-mark-key|make-continuation-prompt-tag|make-contract|make-custodian|make-custodian-box|make-date|make-date\\\\\\\\*|make-derived-parameter|make-directory|make-directory\\\\\\\\*|make-do-sequence|make-empty-namespace|make-environment-variables|make-ephemeron|make-exn|make-exn:break|make-exn:break:hang-up|make-exn:break:terminate|make-exn:fail|make-exn:fail:contract|make-exn:fail:contract:arity|make-exn:fail:contract:blame|make-exn:fail:contract:continuation|make-exn:fail:contract:divide-by-zero|make-exn:fail:contract:non-fixnum-result|make-exn:fail:contract:variable|make-exn:fail:filesystem|make-exn:fail:filesystem:errno|make-exn:fail:filesystem:exists|make-exn:fail:filesystem:missing-module|make-exn:fail:filesystem:version|make-exn:fail:network|make-exn:fail:network:errno|make-exn:fail:object|make-exn:fail:out-of-memory|make-exn:fail:read|make-exn:fail:read:eof|make-exn:fail:read:non-char|make-exn:fail:syntax|make-exn:fail:syntax:missing-module|make-exn:fail:syntax:unbound|make-exn:fail:unsupported|make-exn:fail:user|make-file-or-directory-link|make-flat-contract|make-fsemaphore|make-generic|make-hash|make-hash-placeholder|make-hasheq|make-hasheq-placeholder|make-hasheqv|make-hasheqv-placeholder|make-immutable-hash|make-immutable-hasheq|make-immutable-hasheqv|make-impersonator-property|make-input-port|make-input-port\\\\\\\\/read-to-peek|make-inspector|make-keyword-procedure|make-known-char-range-list|make-limited-input-port|make-list|make-lock-file-name|make-log-receiver|make-logger|make-mixin-contract|make-none\\\\\\\\/c|make-output-port|make-parameter|make-parent-directory\\\\\\\\*|make-phantom-bytes|make-pipe|make-pipe-with-specials|make-placeholder|make-plumber|make-polar|make-prefab-struct|make-primitive-class|make-proj-contract|make-pseudo-random-generator|make-reader-graph|make-readtable|make-rectangular|make-rename-transformer|make-resolved-module-path|make-security-guard|make-semaphore|make-set!-transformer|make-shared-bytes|make-sibling-inspector|make-special-comment|make-srcloc|make-string|make-struct-field-accessor|make-struct-field-mutator|make-struct-type|make-struct-type-property|make-syntax-delta-introducer|make-syntax-introducer|make-tentative-pretty-print-output-port|make-thread-cell|make-thread-group|make-vector|make-weak-box|make-weak-hash|make-weak-hasheq|make-weak-hasheqv|make-will-executor|map|match-equality-test|matches-arity-exactly\\\\\\\\?|max|mcar|mcdr|mcons|member|member-name-key-hash-code|member-name-key=\\\\\\\\?|member-name-key\\\\\\\\?|memf|memq|memv|merge-input|method-in-interface\\\\\\\\?|min|mixin-contract|module->exports|module->imports|module->indirect-exports|module->language-info|module->namespace|module-compiled-cross-phase-persistent\\\\\\\\?|module-compiled-exports|module-compiled-imports|module-compiled-indirect-exports|module-compiled-language-info|module-compiled-name|module-compiled-submodules|module-declared\\\\\\\\?|module-path-index-join|module-path-index-resolve|module-path-index-split|module-path-index-submodule|module-path-index\\\\\\\\?|module-path\\\\\\\\?|module-predefined\\\\\\\\?|module-provide-protected\\\\\\\\?|modulo|mpair\\\\\\\\?|mutable-set|mutable-seteq|mutable-seteqv|n->th|nack-guard-evt|namespace-anchor->empty-namespace|namespace-anchor->namespace|namespace-anchor\\\\\\\\?|namespace-attach-module|namespace-attach-module-declaration|namespace-base-phase|namespace-mapped-symbols|namespace-module-identifier|namespace-module-registry|namespace-require|namespace-require\\\\\\\\/constant|namespace-require\\\\\\\\/copy|namespace-require\\\\\\\\/expansion-time|namespace-set-variable-value!|namespace-symbol->identifier|namespace-syntax-introduce|namespace-undefine-variable!|namespace-unprotect-module|namespace-variable-value|namespace\\\\\\\\?|nan\\\\\\\\?|natural-number\\\\\\\\/c|natural\\\\\\\\?|negate|negative-integer\\\\\\\\?|negative\\\\\\\\?|never-evt|newline|ninth|non-empty-string\\\\\\\\?|nonnegative-integer\\\\\\\\?|nonpositive-integer\\\\\\\\?|normal-case-path|normalize-arity|normalize-path|normalized-arity\\\\\\\\?|not|null|null\\\\\\\\?|number->string|number\\\\\\\\?|numerator|object%|object->vector|object-info|object-interface|object-method-arity-includes\\\\\\\\?|object-name|object-or-false=\\\\\\\\?|object=\\\\\\\\?|object\\\\\\\\?|odd\\\\\\\\?|open-input-bytes|open-input-string|open-output-bytes|open-output-nowhere|open-output-string|order-of-magnitude|ormap|other-execute-bit|other-read-bit|other-write-bit|output-port\\\\\\\\?|pair\\\\\\\\?|parameter-procedure=\\\\\\\\?|parameter\\\\\\\\?|parameterization\\\\\\\\?|parse-command-line|partition|path->bytes|path->complete-path|path->directory-path|path->string|path-add-extension|path-add-suffix|path-convention-type|path-element->bytes|path-element->string|path-element\\\\\\\\?|path-for-some-system\\\\\\\\?|path-get-extension|path-has-extension\\\\\\\\?|path-list-string->path-list|path-only|path-replace-extension|path-replace-suffix|path-string\\\\\\\\?|path<\\\\\\\\?|path\\\\\\\\?|peek-byte|peek-byte-or-special|peek-bytes|peek-bytes!|peek-bytes-avail!|peek-bytes-avail!\\\\\\\\*|peek-bytes-avail!\\\\\\\\/enable-break|peek-char|peek-char-or-special|peek-string|peek-string!|permutations|phantom-bytes\\\\\\\\?|pi|pi\\\\\\\\.f|pipe-content-length|place-break|place-channel|place-channel-get|place-channel-put|place-channel-put\\\\\\\\/get|place-channel\\\\\\\\?|place-dead-evt|place-enabled\\\\\\\\?|place-kill|place-location\\\\\\\\?|place-message-allowed\\\\\\\\?|place-sleep|place-wait|place\\\\\\\\?|placeholder-get|placeholder-set!|placeholder\\\\\\\\?|plumber-add-flush!|plumber-flush-all|plumber-flush-handle-remove!|plumber-flush-handle\\\\\\\\?|plumber\\\\\\\\?|poll-guard-evt|port->list|port-closed-evt|port-closed\\\\\\\\?|port-commit-peeked|port-count-lines!|port-count-lines-enabled|port-counts-lines\\\\\\\\?|port-display-handler|port-file-identity|port-file-unlock|port-next-location|port-number\\\\\\\\?|port-print-handler|port-progress-evt|port-provides-progress-evts\\\\\\\\?|port-read-handler|port-try-file-lock\\\\\\\\?|port-write-handler|port-writes-atomic\\\\\\\\?|port-writes-special\\\\\\\\?|port\\\\\\\\?|positive-integer\\\\\\\\?|positive\\\\\\\\?|predicate\\\\\\\\/c|prefab-key->struct-type|prefab-key\\\\\\\\?|prefab-struct-key|preferences-lock-file-mode|pregexp|pregexp\\\\\\\\?|pretty-display|pretty-print|pretty-print-\\\\\\\\.-symbol-without-bars|pretty-print-abbreviate-read-macros|pretty-print-columns|pretty-print-current-style-table|pretty-print-depth|pretty-print-exact-as-decimal|pretty-print-extend-style-table|pretty-print-handler|pretty-print-newline|pretty-print-post-print-hook|pretty-print-pre-print-hook|pretty-print-print-hook|pretty-print-print-line|pretty-print-remap-stylable|pretty-print-show-inexactness|pretty-print-size-hook|pretty-print-style-table\\\\\\\\?|pretty-printing|pretty-write|primitive-closure\\\\\\\\?|primitive-result-arity|primitive\\\\\\\\?|print|print-as-expression|print-boolean-long-form|print-box|print-graph|print-hash-table|print-mpair-curly-braces|print-pair-curly-braces|print-reader-abbreviations|print-struct|print-syntax-width|print-unreadable|print-vector-length|printable\\\\\\\\/c|printable<%>|printf|println|procedure->method|procedure-arity|procedure-arity-includes\\\\\\\\?|procedure-arity\\\\\\\\?|procedure-closure-contents-eq\\\\\\\\?|procedure-extract-target|procedure-impersonator\\\\\\\\*\\\\\\\\?|procedure-keywords|procedure-reduce-arity|procedure-reduce-keyword-arity|procedure-rename|procedure-result-arity|procedure-specialize|procedure-struct-type\\\\\\\\?|procedure\\\\\\\\?|processor-count|progress-evt\\\\\\\\?|promise-forced\\\\\\\\?|promise-running\\\\\\\\?|promise\\\\\\\\/name\\\\\\\\?|promise\\\\\\\\?|prop:arity-string|prop:arrow-contract|prop:arrow-contract-get-info|prop:arrow-contract\\\\\\\\?|prop:authentic|prop:blame|prop:chaperone-contract|prop:checked-procedure|prop:contract|prop:contracted|prop:custom-print-quotable|prop:custom-write|prop:dict|prop:equal\\\\\\\\+hash|prop:evt|prop:exn:missing-module|prop:exn:srclocs|prop:expansion-contexts|prop:flat-contract|prop:impersonator-of|prop:input-port|prop:liberal-define-context|prop:object-name|prop:opt-chaperone-contract|prop:opt-chaperone-contract-get-test|prop:opt-chaperone-contract\\\\\\\\?|prop:orc-contract|prop:orc-contract-get-subcontracts|prop:orc-contract\\\\\\\\?|prop:output-port|prop:place-location|prop:procedure|prop:recursive-contract|prop:recursive-contract-unroll|prop:recursive-contract\\\\\\\\?|prop:rename-transformer|prop:sequence|prop:set!-transformer|prop:stream|proper-subset\\\\\\\\?|pseudo-random-generator->vector|pseudo-random-generator-vector\\\\\\\\?|pseudo-random-generator\\\\\\\\?|put-preferences|putenv|quotient|quotient\\\\\\\\/remainder|radians->degrees|raise|raise-argument-error|raise-arguments-error|raise-arity-error|raise-contract-error|raise-mismatch-error|raise-range-error|raise-result-error|raise-syntax-error|raise-type-error|raise-user-error|random|random-seed|rational\\\\\\\\?|rationalize|read|read-accept-bar-quote|read-accept-box|read-accept-compiled|read-accept-dot|read-accept-graph|read-accept-infix-dot|read-accept-lang|read-accept-quasiquote|read-accept-reader|read-byte|read-byte-or-special|read-bytes|read-bytes!|read-bytes-avail!|read-bytes-avail!\\\\\\\\*|read-bytes-avail!\\\\\\\\/enable-break|read-bytes-line|read-case-sensitive|read-cdot|read-char|read-char-or-special|read-curly-brace-as-paren|read-curly-brace-with-tag|read-decimal-as-inexact|read-eval-print-loop|read-language|read-line|read-on-demand-source|read-square-bracket-as-paren|read-square-bracket-with-tag|read-string|read-string!|read-syntax|read-syntax\\\\\\\\/recursive|read\\\\\\\\/recursive|readtable-mapping|readtable\\\\\\\\?|real->decimal-string|real->double-flonum|real->floating-point-bytes|real->single-flonum|real-part|real\\\\\\\\?|reencode-input-port|reencode-output-port|regexp|regexp-match|regexp-match-exact\\\\\\\\?|regexp-match-peek|regexp-match-peek-immediate|regexp-match-peek-positions|regexp-match-peek-positions-immediate|regexp-match-peek-positions-immediate\\\\\\\\/end|regexp-match-peek-positions\\\\\\\\/end|regexp-match-positions|regexp-match-positions\\\\\\\\/end|regexp-match\\\\\\\\/end|regexp-match\\\\\\\\?|regexp-max-lookbehind|regexp-quote|regexp-replace|regexp-replace\\\\\\\\*|regexp-replace-quote|regexp-replaces|regexp-split|regexp-try-match|regexp\\\\\\\\?|relative-path\\\\\\\\?|remainder|remf|remf\\\\\\\\*|remove|remove\\\\\\\\*|remq|remq\\\\\\\\*|remv|remv\\\\\\\\*|rename-contract|rename-file-or-directory|rename-transformer-target|rename-transformer\\\\\\\\?|replace-evt|reroot-path|resolve-path|resolved-module-path-name|resolved-module-path\\\\\\\\?|rest|reverse|round|second|seconds->date|security-guard\\\\\\\\?|semaphore-peek-evt|semaphore-peek-evt\\\\\\\\?|semaphore-post|semaphore-try-wait\\\\\\\\?|semaphore-wait|semaphore-wait\\\\\\\\/enable-break|semaphore\\\\\\\\?|sequence->list|sequence->stream|sequence-add-between|sequence-andmap|sequence-append|sequence-count|sequence-filter|sequence-fold|sequence-for-each|sequence-generate|sequence-generate\\\\\\\\*|sequence-length|sequence-map|sequence-ormap|sequence-ref|sequence-tail|sequence\\\\\\\\?|set|set!-transformer-procedure|set!-transformer\\\\\\\\?|set->list|set->stream|set-add|set-add!|set-box!|set-clear|set-clear!|set-copy|set-copy-clear|set-count|set-empty\\\\\\\\?|set-eq\\\\\\\\?|set-equal\\\\\\\\?|set-eqv\\\\\\\\?|set-first|set-for-each|set-implements\\\\\\\\/c|set-implements\\\\\\\\?|set-intersect|set-intersect!|set-map|set-mcar!|set-mcdr!|set-member\\\\\\\\?|set-mutable\\\\\\\\?|set-phantom-bytes!|set-port-next-location!|set-remove|set-remove!|set-rest|set-subtract|set-subtract!|set-symmetric-difference|set-symmetric-difference!|set-union|set-union!|set-weak\\\\\\\\?|set=\\\\\\\\?|set\\\\\\\\?|seteq|seteqv|seventh|sgn|shared-bytes|shell-execute|shrink-path-wrt|shuffle|simple-form-path|simplify-path|sin|single-flonum\\\\\\\\?|sinh|sixth|skip-projection-wrapper\\\\\\\\?|sleep|some-system-path->string|special-comment-value|special-comment\\\\\\\\?|special-filter-input-port|split-at|split-at-right|split-common-prefix|split-path|splitf-at|splitf-at-right|sqr|sqrt|srcloc->string|srcloc-column|srcloc-line|srcloc-position|srcloc-source|srcloc-span|srcloc\\\\\\\\?|stop-after|stop-before|stream->list|stream-add-between|stream-andmap|stream-append|stream-count|stream-empty\\\\\\\\?|stream-filter|stream-first|stream-fold|stream-for-each|stream-length|stream-map|stream-ormap|stream-ref|stream-rest|stream-tail|stream\\\\\\\\/c|stream\\\\\\\\?|string|string->bytes\\\\\\\\/latin-1|string->bytes\\\\\\\\/locale|string->bytes\\\\\\\\/utf-8|string->immutable-string|string->keyword|string->list|string->number|string->path|string->path-element|string->some-system-path|string->symbol|string->uninterned-symbol|string->unreadable-symbol|string-append|string-append\\\\\\\\*|string-ci<=\\\\\\\\?|string-ci<\\\\\\\\?|string-ci=\\\\\\\\?|string-ci>=\\\\\\\\?|string-ci>\\\\\\\\?|string-contains\\\\\\\\?|string-copy|string-copy!|string-downcase|string-environment-variable-name\\\\\\\\?|string-fill!|string-foldcase|string-length|string-locale-ci<\\\\\\\\?|string-locale-ci=\\\\\\\\?|string-locale-ci>\\\\\\\\?|string-locale-downcase|string-locale-upcase|string-locale<\\\\\\\\?|string-locale=\\\\\\\\?|string-locale>\\\\\\\\?|string-no-nuls\\\\\\\\?|string-normalize-nfc|string-normalize-nfd|string-normalize-nfkc|string-normalize-nfkd|string-port\\\\\\\\?|string-prefix\\\\\\\\?|string-ref|string-set!|string-suffix\\\\\\\\?|string-titlecase|string-upcase|string-utf-8-length|string<=\\\\\\\\?|string<\\\\\\\\?|string=\\\\\\\\?|string>=\\\\\\\\?|string>\\\\\\\\?|string\\\\\\\\?|struct->vector|struct-accessor-procedure\\\\\\\\?|struct-constructor-procedure\\\\\\\\?|struct-info|struct-mutator-procedure\\\\\\\\?|struct-predicate-procedure\\\\\\\\?|struct-type-info|struct-type-make-constructor|struct-type-make-predicate|struct-type-property-accessor-procedure\\\\\\\\?|struct-type-property\\\\\\\\/c|struct-type-property\\\\\\\\?|struct-type\\\\\\\\?|struct:arity-at-least|struct:arrow-contract-info|struct:date|struct:date\\\\\\\\*|struct:exn|struct:exn:break|struct:exn:break:hang-up|struct:exn:break:terminate|struct:exn:fail|struct:exn:fail:contract|struct:exn:fail:contract:arity|struct:exn:fail:contract:blame|struct:exn:fail:contract:continuation|struct:exn:fail:contract:divide-by-zero|struct:exn:fail:contract:non-fixnum-result|struct:exn:fail:contract:variable|struct:exn:fail:filesystem|struct:exn:fail:filesystem:errno|struct:exn:fail:filesystem:exists|struct:exn:fail:filesystem:missing-module|struct:exn:fail:filesystem:version|struct:exn:fail:network|struct:exn:fail:network:errno|struct:exn:fail:object|struct:exn:fail:out-of-memory|struct:exn:fail:read|struct:exn:fail:read:eof|struct:exn:fail:read:non-char|struct:exn:fail:syntax|struct:exn:fail:syntax:missing-module|struct:exn:fail:syntax:unbound|struct:exn:fail:unsupported|struct:exn:fail:user|struct:srcloc|struct:wrapped-extra-arg-arrow|struct\\\\\\\\?|sub1|subbytes|subclass\\\\\\\\?|subclass\\\\\\\\?\\\\\\\\/c|subprocess|subprocess-group-enabled|subprocess-kill|subprocess-pid|subprocess-status|subprocess-wait|subprocess\\\\\\\\?|subset\\\\\\\\?|substring|suggest\\\\\\\\/c|symbol->string|symbol-interned\\\\\\\\?|symbol-unreadable\\\\\\\\?|symbol<\\\\\\\\?|symbol=\\\\\\\\?|symbol\\\\\\\\?|sync|sync\\\\\\\\/enable-break|sync\\\\\\\\/timeout|sync\\\\\\\\/timeout\\\\\\\\/enable-break|syntax->datum|syntax->list|syntax-arm|syntax-column|syntax-debug-info|syntax-disarm|syntax-e|syntax-line|syntax-local-bind-syntaxes|syntax-local-certifier|syntax-local-context|syntax-local-expand-expression|syntax-local-get-shadower|syntax-local-identifier-as-binding|syntax-local-introduce|syntax-local-lift-context|syntax-local-lift-expression|syntax-local-lift-module|syntax-local-lift-module-end-declaration|syntax-local-lift-provide|syntax-local-lift-require|syntax-local-lift-values-expression|syntax-local-make-definition-context|syntax-local-make-delta-introducer|syntax-local-module-defined-identifiers|syntax-local-module-exports|syntax-local-module-required-identifiers|syntax-local-name|syntax-local-phase-level|syntax-local-submodules|syntax-local-transforming-module-provides\\\\\\\\?|syntax-local-value|syntax-local-value\\\\\\\\/immediate|syntax-original\\\\\\\\?|syntax-position|syntax-property|syntax-property-preserved\\\\\\\\?|syntax-property-symbol-keys|syntax-protect|syntax-rearm|syntax-recertify|syntax-shift-phase-level|syntax-source|syntax-source-module|syntax-span|syntax-taint|syntax-tainted\\\\\\\\?|syntax-track-origin|syntax-transforming-module-expression\\\\\\\\?|syntax-transforming-with-lifts\\\\\\\\?|syntax-transforming\\\\\\\\?|syntax\\\\\\\\?|system-big-endian\\\\\\\\?|system-idle-evt|system-language\\\\\\\\+country|system-library-subpath|system-path-convention-type|system-type|tail-marks-match\\\\\\\\?|take|take-common-prefix|take-right|takef|takef-right|tan|tanh|tcp-abandon-port|tcp-accept|tcp-accept-evt|tcp-accept-ready\\\\\\\\?|tcp-accept\\\\\\\\/enable-break|tcp-addresses|tcp-close|tcp-connect|tcp-connect\\\\\\\\/enable-break|tcp-listen|tcp-listener\\\\\\\\?|tcp-port\\\\\\\\?|tentative-pretty-print-port-cancel|tentative-pretty-print-port-transfer|tenth|terminal-port\\\\\\\\?|the-unsupplied-arg|third|thread|thread-cell-ref|thread-cell-set!|thread-cell-values\\\\\\\\?|thread-cell\\\\\\\\?|thread-dead-evt|thread-dead\\\\\\\\?|thread-group\\\\\\\\?|thread-receive|thread-receive-evt|thread-resume|thread-resume-evt|thread-rewind-receive|thread-running\\\\\\\\?|thread-send|thread-suspend|thread-suspend-evt|thread-try-receive|thread-wait|thread\\\\\\\\/suspend-to-kill|thread\\\\\\\\?|time-apply|touch|true|truncate|udp-addresses|udp-bind!|udp-bound\\\\\\\\?|udp-close|udp-connect!|udp-connected\\\\\\\\?|udp-multicast-interface|udp-multicast-join-group!|udp-multicast-leave-group!|udp-multicast-loopback\\\\\\\\?|udp-multicast-set-interface!|udp-multicast-set-loopback!|udp-multicast-set-ttl!|udp-multicast-ttl|udp-open-socket|udp-receive!|udp-receive!\\\\\\\\*|udp-receive!-evt|udp-receive!\\\\\\\\/enable-break|udp-receive-ready-evt|udp-send|udp-send\\\\\\\\*|udp-send-evt|udp-send-ready-evt|udp-send-to|udp-send-to\\\\\\\\*|udp-send-to-evt|udp-send-to\\\\\\\\/enable-break|udp-send\\\\\\\\/enable-break|udp\\\\\\\\?|unbox|uncaught-exception-handler|unit\\\\\\\\?|unquoted-printing-string|unquoted-printing-string-value|unquoted-printing-string\\\\\\\\?|unspecified-dom|unsupplied-arg\\\\\\\\?|use-collection-link-paths|use-compiled-file-check|use-compiled-file-paths|use-user-specific-search-paths|user-execute-bit|user-read-bit|user-write-bit|value-blame|value-contract|values|variable-reference->empty-namespace|variable-reference->module-base-phase|variable-reference->module-declaration-inspector|variable-reference->module-path-index|variable-reference->module-source|variable-reference->namespace|variable-reference->phase|variable-reference->resolved-module-path|variable-reference-constant\\\\\\\\?|variable-reference\\\\\\\\?|vector|vector->immutable-vector|vector->list|vector->pseudo-random-generator|vector->pseudo-random-generator!|vector->values|vector-append|vector-argmax|vector-argmin|vector-cas!|vector-copy|vector-copy!|vector-count|vector-drop|vector-drop-right|vector-fill!|vector-filter|vector-filter-not|vector-immutable|vector-length|vector-map|vector-map!|vector-member|vector-memq|vector-memv|vector-ref|vector-set!|vector-set\\\\\\\\*!|vector-set-performance-stats!|vector-split-at|vector-split-at-right|vector-take|vector-take-right|vector\\\\\\\\?|version|void|void\\\\\\\\?|weak-box-value|weak-box\\\\\\\\?|weak-set|weak-seteq|weak-seteqv|will-execute|will-executor\\\\\\\\?|will-register|will-try-execute|with-input-from-bytes|with-input-from-string|with-output-to-bytes|with-output-to-string|would-be-future|wrap-evt|wrapped-extra-arg-arrow-extra-neg-party-argument|wrapped-extra-arg-arrow-real-func|wrapped-extra-arg-arrow\\\\\\\\?|writable<%>|write|write-byte|write-bytes|write-bytes-avail|write-bytes-avail\\\\\\\\*|write-bytes-avail-evt|write-bytes-avail\\\\\\\\/enable-break|write-char|write-special|write-special-avail\\\\\\\\*|write-special-evt|write-string|writeln|xor|zero\\\\\\\\?)(?=$|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\"}]},\\\"byte-string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":[{\\\"name\\\":\\\"punctuation.definition.string.begin.racket\\\"}]},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":[{\\\"name\\\":\\\"punctuation.definition.string.end.racket\\\"}]},\\\"name\\\":\\\"string.byte.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-char-base\\\"}]}]},\\\"character\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\#\\\\\\\\\\\\\\\\(?:(?:[0-7]{3})|(?:u[0-9a-fA-F]{1,4})|(?:U[0-9a-fA-F]{1,6})|(?:(?:null?|newline|linefeed|backspace|v?tab|page|return|space|rubout|(?:[^\\\\\\\\w\\\\\\\\s]|\\\\\\\\d))(?![a-zA-Z]))|(?:[^\\\\\\\\W\\\\\\\\d](?=[\\\\\\\\W\\\\\\\\d])|\\\\\\\\W))\\\",\\\"name\\\":\\\"string.quoted.single.racket\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-line\\\"},{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#comment-sexp\\\"}]},\\\"comment-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\|#\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.racket\\\"}},\\\"name\\\":\\\"comment.block.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-block\\\"}]}]},\\\"comment-line\\\":{\\\"patterns\\\":[{\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.racket\\\"}},\\\"match\\\":\\\"(#!)[ /].*$\\\",\\\"name\\\":\\\"comment.line.unix.racket\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.racket\\\"}},\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])(;).*$\\\",\\\"name\\\":\\\"comment.line.semicolon.racket\\\"}]},\\\"comment-sexp\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])#;\\\",\\\"name\\\":\\\"comment.sexp.racket\\\"}]},\\\"default-args\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#default-args-content\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#default-args-content\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#default-args-content\\\"}]}]},\\\"default-args-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#argument\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"default-args-struct\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#default-args-struct-content\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#default-args-struct-content\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#default-args-struct-content\\\"}]}]},\\\"default-args-struct-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#argument-struct\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"define\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#define-func\\\"},{\\\"include\\\":\\\"#define-vals\\\"},{\\\"include\\\":\\\"#define-val\\\"}]},\\\"define-func\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(define(?:(?:-for)?-syntax)?)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.lambda.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#func-args\\\"}]},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(define(?:(?:-for)?-syntax)?)\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.lambda.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#func-args\\\"}]},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(define(?:(?:-for)?-syntax)?)\\\\\\\\s*({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.lambda.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#func-args\\\"}]}]},\\\"define-val\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.constant.racket\\\"}},\\\"match\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(define(?:(?:-for)?-syntax)?)\\\\\\\\s+([^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*)\\\"}]},\\\"define-vals\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(define-(?:values(?:-for-syntax)?|syntaxes)?)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"[^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*\\\",\\\"name\\\":\\\"entity.name.constant\\\"}]},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(define-(?:values(?:-for-syntax)?|syntaxes)?)\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"[^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*\\\",\\\"name\\\":\\\"entity.name.constant\\\"}]},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(define-(?:values(?:-for-syntax)?|syntaxes)?)\\\\\\\\s*({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"[^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*\\\",\\\"name\\\":\\\"entity.name.constant\\\"}]}]},\\\"dot\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\\\\\\.(?=$|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"name\\\":\\\"punctuation.accessor.racket\\\"}]},\\\"escape-char\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-char-base\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:(?:u[\\\\\\\\da-fA-F]{1,4})|(?:U[\\\\\\\\da-fA-F]{1,8}))\\\",\\\"name\\\":\\\"constant.character.escape.racket\\\"},{\\\"include\\\":\\\"#escape-char-error\\\"}]},\\\"escape-char-base\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:(?:[abtnvfre\\\\\\\"'\\\\\\\\\\\\\\\\])|(?:[0-7]{1,3})|(?:x[\\\\\\\\da-fA-F]{1,2}))\\\",\\\"name\\\":\\\"constant.character.escape.racket\\\"}]},\\\"escape-char-error\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.escape.racket\\\"}]},\\\"format\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(e?printf|format)\\\\\\\\s*(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.double.racket\\\"}},\\\"contentName\\\":\\\"string.quoted.double.racket\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.double.racket\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#format-string\\\"},{\\\"include\\\":\\\"#escape-char\\\"}]}]},\\\"format-string\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"~(?:(?:\\\\\\\\.?[n%aAsSvV])|[cCbBoOxX~\\\\\\\\s])\\\",\\\"name\\\":\\\"constant.other.placeholder.racket\\\"}]},\\\"func-args\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#dot\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#args\\\"}]},\\\"function-name\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.verbatim.begin.racket\\\"}},\\\"contentName\\\":\\\"entity.name.function.racket\\\",\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.end.racket\\\"},\\\"name\\\":\\\"entity.name.function.racket\\\"},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(\\\\\\\\#%|\\\\\\\\\\\\\\\\\\\\\\\\ |[^\\\\\\\\#()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.racket\\\"}},\\\"contentName\\\":\\\"entity.name.function.racket\\\",\\\"end\\\":\\\"(?=[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\ \\\"},{\\\"begin\\\":\\\"\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.begin.racket\\\"},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":\\\"punctuation.verbatim.end.racket\\\"}}]}]},\\\"hash\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\#hash(?:eq(?:v)?)?\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.hash.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.hash.end.racket\\\"}},\\\"name\\\":\\\"meta.hash.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#hash-content\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\#hash(?:eq(?:v)?)?\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.hash.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.hash.end.racket\\\"}},\\\"name\\\":\\\"meta.hash.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#hash-content\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\#hash(?:eq(?:v)?)?\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.hash.begin.racket\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.hash.end.racket\\\"}},\\\"name\\\":\\\"meta.hash.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#hash-content\\\"}]}]},\\\"hash-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#pairing\\\"}]},\\\"here-string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#<<(.*)$\\\",\\\"end\\\":\\\"^\\\\\\\\1$\\\",\\\"name\\\":\\\"string.here.racket\\\"}]},\\\"keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\\\\\\#:[^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]+\\\",\\\"name\\\":\\\"keyword.other.racket\\\"}]},\\\"lambda\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#lambda-onearg\\\"},{\\\"include\\\":\\\"#lambda-args\\\"}]},\\\"lambda-args\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(lambda|\u03BB)\\\\\\\\s+(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.lambda.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"name\\\":\\\"meta.lambda.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#args\\\"}]},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(lambda|\u03BB)\\\\\\\\s+({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.lambda.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"name\\\":\\\"meta.lambda.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#args\\\"}]},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(lambda|\u03BB)\\\\\\\\s+(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.lambda.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.end.racket\\\"}},\\\"name\\\":\\\"meta.lambda.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#args\\\"}]}]},\\\"lambda-onearg\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.lambda.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.racket\\\"}},\\\"match\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(lambda|\u03BB)\\\\\\\\s+([^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*)\\\",\\\"name\\\":\\\"meta.lambda.racket\\\"}],\\\"list\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.list.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.list.end.racket\\\"}},\\\"name\\\":\\\"meta.list.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#list-content\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.list.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.list.end.racket\\\"}},\\\"name\\\":\\\"meta.list.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#list-content\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.list.begin.racket\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.list.end.racket\\\"}},\\\"name\\\":\\\"meta.list.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#list-content\\\"}]}]},\\\"list-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#dot\\\"},{\\\"include\\\":\\\"$base\\\"}]},\\\"not-atom\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#vector\\\"},{\\\"include\\\":\\\"#hash\\\"},{\\\"include\\\":\\\"#prefab-struct\\\"},{\\\"include\\\":\\\"#list\\\"},{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\\\\\\\\\",'`;\\\\\\\\s])(?:\\\\\\\\#[cC][iI]|\\\\\\\\#[cC][sS])(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.control.racket\\\"},{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\\\\\\\\\",'`;\\\\\\\\s])(?:\\\\\\\\#&)\\\",\\\"name\\\":\\\"support.function.racket\\\"}]},\\\"number\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#number-dec\\\"},{\\\"include\\\":\\\"#number-oct\\\"},{\\\"include\\\":\\\"#number-bin\\\"},{\\\"include\\\":\\\"#number-hex\\\"}]},\\\"number-bin\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])(?:\\\\\\\\#[bB](?:\\\\\\\\#[eEiI])?|(?:\\\\\\\\#[eEiI])?\\\\\\\\#[bB])(?:(?:(?:(?:(?:(?:[+-]?[01]+\\\\\\\\#*\\\\\\\\/[01]+\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\.[01]+\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\#*))(?:[sldefSLDEF][+-]?[01]+)?)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f]))@(?:(?:(?:(?:[+-]?[01]+\\\\\\\\#*\\\\\\\\/[01]+\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\.[01]+\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\#*))(?:[sldefSLDEF][+-]?[01]+)?)|(?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])))|(?:(?:(?:(?:(?:[+-]?[01]+\\\\\\\\#*\\\\\\\\/[01]+\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\.[01]+\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\#*))(?:[sldefSLDEF][+-]?[01]+)?)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f]))?[+-](?:(?:(?:(?:[+-]?[01]+\\\\\\\\#*\\\\\\\\/[01]+\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\.[01]+\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\#*))(?:[sldefSLDEF][+-]?[01]+)?)|(?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])|)i)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])|(?:(?:[+-]?[01]+\\\\\\\\#*\\\\\\\\/[01]+\\\\\\\\#*)|(?:[+-]?[01]*\\\\\\\\.[01]+\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[01]+\\\\\\\\#*))(?:[sldefSLDEF][+-]?[01]+)?)(?=$|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"name\\\":\\\"constant.numeric.bin.racket\\\"}]},\\\"number-dec\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])(?:(?:\\\\\\\\#[dD])?(?:\\\\\\\\#[eEiI])?|(?:\\\\\\\\#[eEiI])?(?:\\\\\\\\#[dD])?)(?:(?:(?:(?:(?:(?:[+-]?\\\\\\\\d+\\\\\\\\#*\\\\\\\\/\\\\\\\\d+\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\.\\\\\\\\d+\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\#*))(?:[sldefSLDEF][+-]?\\\\\\\\d+)?)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f]))@(?:(?:(?:(?:[+-]?\\\\\\\\d+\\\\\\\\#*\\\\\\\\/\\\\\\\\d+\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\.\\\\\\\\d+\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\#*))(?:[sldefSLDEF][+-]?\\\\\\\\d+)?)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])))|(?:(?:(?:(?:(?:[+-]?\\\\\\\\d+\\\\\\\\#*\\\\\\\\/\\\\\\\\d+\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\.\\\\\\\\d+\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\#*))(?:[sldefSLDEF][+-]?\\\\\\\\d+)?)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f]))?[+-](?:(?:(?:(?:[+-]?\\\\\\\\d+\\\\\\\\#*\\\\\\\\/\\\\\\\\d+\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\.\\\\\\\\d+\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\#*))(?:[sldefSLDEF][+-]?\\\\\\\\d+)?)|(?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])|)i)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])|(?:(?:[+-]?\\\\\\\\d+\\\\\\\\#*\\\\\\\\/\\\\\\\\d+\\\\\\\\#*)|(?:[+-]?\\\\\\\\d*\\\\\\\\.\\\\\\\\d+\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?\\\\\\\\d+\\\\\\\\#*))(?:[sldefSLDEF][+-]?\\\\\\\\d+)?)(?=$|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"name\\\":\\\"constant.numeric.racket\\\"}]},\\\"number-hex\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])(?:\\\\\\\\#[xX](?:\\\\\\\\#[eEiI])?|(?:\\\\\\\\#[eEiI])?\\\\\\\\#[xX])(?:(?:(?:(?:(?:(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*\\\\\\\\/[0-9a-fA-F]+\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]\\\\\\\\.[0-9a-fA-F]+\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*))(?:[slSL][+-]?[0-9a-fA-F]+)?)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f]))@(?:(?:(?:(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*\\\\\\\\/[0-9a-fA-F]+\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\.[0-9a-fA-F]+\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*))(?:[slSL][+-]?[0-9a-fA-F]+)?)|(?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])))|(?:(?:(?:(?:(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*\\\\\\\\/[0-9a-fA-F]+\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\.[0-9a-fA-F]+\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*))(?:[slSL][+-]?[0-9a-fA-F]+)?)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f]))?[+-](?:(?:(?:(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*\\\\\\\\/[0-9a-fA-F]+\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\.[0-9a-fA-F]+\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*))(?:[slSL][+-]?[0-9a-fA-F]+)?)|(?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])|)i)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])|(?:(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*\\\\\\\\/[0-9a-fA-F]+\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]*\\\\\\\\.[0-9a-fA-F]+\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[0-9a-fA-F]+\\\\\\\\#*))(?:[slSL][+-]?[0-9a-fA-F]+)?)(?=$|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"name\\\":\\\"constant.numeric.hex.racket\\\"}]},\\\"number-oct\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])(?:\\\\\\\\#[oO](?:\\\\\\\\#[eEiI])?|(?:\\\\\\\\#[eEiI])?\\\\\\\\#[oO])(?:(?:(?:(?:(?:(?:[+-]?[0-7]+\\\\\\\\#*\\\\\\\\/[0-7]+\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\.[0-7]+\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\#*))(?:[sldefSLDEF][+-]?[0-7]+)?)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f]))@(?:(?:(?:(?:[+-]?[0-7]+\\\\\\\\#*\\\\\\\\/[0-7]+\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\.[0-7]+\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\#*))(?:[sldefSLDEF][+-]?[0-7]+)?)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])))|(?:(?:(?:(?:(?:[+-]?[0-7]+\\\\\\\\#*\\\\\\\\/[0-7]+\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\.[0-7]+\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\#*))(?:[sldefSLDEF][+-]?[0-7]+)?)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f]))?[+-](?:(?:(?:(?:[+-]?[0-7]+\\\\\\\\#*\\\\\\\\/[0-7]+\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\.[0-7]+\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\#*))(?:[sldefSLDEF][+-]?[0-7]+)?)|(?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])|)i)|[+-](?:(?:[iI][nN][fF])\\\\\\\\.[0f]|(?:[nN][aA][nN])\\\\\\\\.[0f])|(?:(?:[+-]?[0-7]+\\\\\\\\#*\\\\\\\\/[0-7]+\\\\\\\\#*)|(?:[+-]?[0-7]*\\\\\\\\.[0-7]+\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\#*\\\\\\\\.\\\\\\\\#*)|(?:[+-]?[0-7]+\\\\\\\\#*))(?:[sldefSLDEF][+-]?[0-7]+)?)(?=$|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"name\\\":\\\"constant.numeric.octal.racket\\\"}]},\\\"pair-content\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#dot\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#atom\\\"}]},\\\"pairing\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.pair.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.pair.end.racket\\\"}},\\\"name\\\":\\\"meta.list.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pair-content\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.pair.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.pair.end.racket\\\"}},\\\"name\\\":\\\"meta.list.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pair-content\\\"}]},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.pair.begin.racket\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.pair.end.racket\\\"}},\\\"name\\\":\\\"meta.list.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#pair-content\\\"}]}]},\\\"prefab-struct\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#s\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.prefab-struct.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.prefab-struct.end.racket\\\"}},\\\"name\\\":\\\"meta.prefab-struct.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"#s\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.prefab-struct.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.prefab-struct.end.racket\\\"}},\\\"name\\\":\\\"meta.prefab-struct.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"#s{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.prefab-struct.begin.racket\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.prefab-struct.end.racket\\\"}},\\\"name\\\":\\\"meta.prefab-struct.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]},\\\"quote\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\\\\\\\\\",'`;\\\\\\\\s])(?:,@|'|`|,|\\\\\\\\#'|\\\\\\\\#`|\\\\\\\\#,|\\\\\\\\#~|\\\\\\\\#,@)+(?=[()\\\\\\\\[\\\\\\\\]{}\\\\\\\\\\\\\\\",'`;\\\\\\\\s]|\\\\\\\\#[^%]|[^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"name\\\":\\\"support.function.racket\\\"}]},\\\"regexp-byte-string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#(r|p)x#\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":[{\\\"name\\\":\\\"punctuation.definition.string.begin.racket\\\"}]},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":[{\\\"name\\\":\\\"punctuation.definition.string.end.racket\\\"}]},\\\"name\\\":\\\"string.regexp.byte.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-char-base\\\"}]}]},\\\"regexp-string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#(r|p)x\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":[{\\\"name\\\":\\\"punctuation.definition.string.begin.racket\\\"}]},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":[{\\\"name\\\":\\\"punctuation.definition.string.end.racket\\\"}]},\\\"name\\\":\\\"string.regexp.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-char-base\\\"}]}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#byte-string\\\"},{\\\"include\\\":\\\"#regexp-byte-string\\\"},{\\\"include\\\":\\\"#regexp-string\\\"},{\\\"include\\\":\\\"#base-string\\\"},{\\\"include\\\":\\\"#here-string\\\"}]},\\\"struct\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(struct)\\\\\\\\s+([^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*)(?:\\\\\\\\s+[^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*)?\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.struct.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.struct.racket\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.fields.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.fields.end.racket\\\"}},\\\"name\\\":\\\"meta.struct.fields.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#default-args-struct\\\"},{\\\"include\\\":\\\"#struct-field\\\"}]},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(struct)\\\\\\\\s+([^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*)(?:\\\\\\\\s+[^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*)?\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.struct.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.struct.racket\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.fields.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.fields.end.racket\\\"}},\\\"name\\\":\\\"meta.struct.fields.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#default-args-struct\\\"},{\\\"include\\\":\\\"#struct-field\\\"}]},{\\\"begin\\\":\\\"(?<=[(\\\\\\\\[{])\\\\\\\\s*(struct)\\\\\\\\s+([^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*)(?:\\\\\\\\s+[^(\\\\\\\\#)\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s][^()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s]*)?\\\\\\\\s*(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.struct.racket\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.struct.racket\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.fields.begin.racket\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.fields.end.racket\\\"}},\\\"name\\\":\\\"meta.struct.fields.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#default-args-struct\\\"},{\\\"include\\\":\\\"#struct-field\\\"}]}]},\\\"struct-field\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])(\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.verbatim.begin.racket\\\"}},\\\"contentName\\\":\\\"variable.other.member.racket\\\",\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.verbatim.end.racket\\\"}}},{\\\"begin\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])(\\\\\\\\#%|\\\\\\\\\\\\\\\\\\\\\\\\ |[^\\\\\\\\#()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.member.racket\\\"}},\\\"contentName\\\":\\\"variable.other.member.racket\\\",\\\"end\\\":\\\"(?=[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\ \\\"},{\\\"begin\\\":\\\"\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.verbatim.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.verbatim.end.racket\\\"}}}]}]},\\\"symbol\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",;\\\\\\\\s])(?:`|')+(\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.verbatim.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.verbatim.end.racket\\\"}},\\\"name\\\":\\\"string.quoted.single.racket\\\"},{\\\"begin\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",;\\\\\\\\s])(?:`|')+(?:\\\\\\\\#%|\\\\\\\\\\\\\\\\\\\\\\\\ |[^\\\\\\\\#()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"end\\\":\\\"(?=[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"name\\\":\\\"string.quoted.single.racket\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\ \\\"},{\\\"begin\\\":\\\"\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.verbatim.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.verbatim.end.racket\\\"}}}]}]},\\\"variable\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])(\\\\\\\\|)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.verbatim.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.verbatim.end.racket\\\"}}},{\\\"begin\\\":\\\"(?<=^|[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])(?:\\\\\\\\#%|\\\\\\\\\\\\\\\\\\\\\\\\ |[^\\\\\\\\#()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"end\\\":\\\"(?=[()\\\\\\\\[\\\\\\\\]{}\\\\\\\",'`;\\\\\\\\s])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\ \\\"},{\\\"begin\\\":\\\"\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.verbatim.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.verbatim.end.racket\\\"}}}]}]},\\\"vector\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\#(?:fl|Fl|fx|Fx)?[0-9]*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.vector.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.vector.end.racket\\\"}},\\\"name\\\":\\\"meta.vector.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\#(?:fl|Fl|fx|Fx)?[0-9]*\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.vector.begin.racket\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.vector.end.racket\\\"}},\\\"name\\\":\\\"meta.vector.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\#(?:fl|Fl|fx|Fx)?[0-9]*{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.vector.begin.racket\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.vector.end.racket\\\"}},\\\"name\\\":\\\"meta.vector.racket\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$base\\\"}]}]}},\\\"scopeName\\\":\\\"source.racket\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Raku\\\",\\\"name\\\":\\\"raku\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^=begin\\\",\\\"end\\\":\\\"^=end\\\",\\\"name\\\":\\\"comment.block.perl\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.perl\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.perl\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.perl\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.perl.6\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.perl.6\\\"}},\\\"match\\\":\\\"(class|enum|grammar|knowhow|module|package|role|slang|subset)(\\\\\\\\s+)(((?:::|')?(?:([a-zA-Z_\\\\\\\\x{C0}-\\\\\\\\x{FF}\\\\\\\\$])([a-zA-Z0-9_\\\\\\\\x{C0}-\\\\\\\\x{FF}\\\\\\\\\\\\\\\\$]|[\\\\\\\\-'][a-zA-Z0-9_\\\\\\\\x{C0}-\\\\\\\\x{FF}\\\\\\\\$])*))+)\\\",\\\"name\\\":\\\"meta.class.perl.6\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\s)'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.single.perl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.perl\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.perl\\\"}},\\\"name\\\":\\\"string.quoted.double.perl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[abtnfre\\\\\\\"\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.perl\\\"}]},{\\\"begin\\\":\\\"q(q|to|heredoc)*\\\\\\\\s*:?(q|to|heredoc)*\\\\\\\\s*/(.+)/\\\",\\\"end\\\":\\\"\\\\\\\\3\\\",\\\"name\\\":\\\"string.quoted.single.heredoc.perl\\\"},{\\\"begin\\\":\\\"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*{{\\\",\\\"end\\\":\\\"}}\\\",\\\"name\\\":\\\"string.quoted.double.heredoc.brace.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_brace_string_content\\\"}]},{\\\"begin\\\":\\\"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*\\\\\\\\(\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\\\\\\)\\\",\\\"name\\\":\\\"string.quoted.double.heredoc.paren.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_paren_string_content\\\"}]},{\\\"begin\\\":\\\"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*\\\\\\\\[\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\]\\\",\\\"name\\\":\\\"string.quoted.double.heredoc.bracket.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_bracket_string_content\\\"}]},{\\\"begin\\\":\\\"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*{\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"string.quoted.single.heredoc.brace.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_brace_string_content\\\"}]},{\\\"begin\\\":\\\"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*/\\\",\\\"end\\\":\\\"/\\\",\\\"name\\\":\\\"string.quoted.single.heredoc.slash.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_slash_string_content\\\"}]},{\\\"begin\\\":\\\"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"string.quoted.single.heredoc.paren.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_paren_string_content\\\"}]},{\\\"begin\\\":\\\"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"string.quoted.single.heredoc.bracket.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_bracket_string_content\\\"}]},{\\\"begin\\\":\\\"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.heredoc.single.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_single_string_content\\\"}]},{\\\"begin\\\":\\\"(q|Q)(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*:?(x|exec|w|words|ww|quotewords|v|val|q|single|qq|double|s|scalar|a|array|h|hash|f|function|c|closure|b|blackslash|regexp|substr|trans|codes|p|path)*\\\\\\\\s*\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.single.heredoc.double.perl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_double_string_content\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\$\\\\\\\\w+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(macro|sub|submethod|method|multi|proto|only|rule|token|regex|category)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.declare.routine.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(self)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(use|require)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.include.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(if|else|elsif|unless)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.conditional.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(let|my|our|state|temp|has|constant)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.variable.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(for|loop|repeat|while|until|gather|given)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.repeat.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(take|do|when|next|last|redo|return|contend|maybe|defer|default|exit|make|continue|break|goto|leave|async|lift)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flowcontrol.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(is|as|but|trusts|of|returns|handles|where|augment|supersede)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.type.constraints.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(BEGIN|CHECK|INIT|START|FIRST|ENTER|LEAVE|KEEP|UNDO|NEXT|LAST|PRE|POST|END|CATCH|CONTROL|TEMP)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.function.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(die|fail|try|warn)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.control-handlers.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(prec|irs|ofs|ors|export|deep|binary|unary|reparsed|rw|parsed|cached|readonly|defequiv|will|ref|copy|inline|tighter|looser|equiv|assoc|required)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(NaN|Inf)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(oo|fatal)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.pragma.perl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(Object|Any|Junction|Whatever|Capture|MatchSignature|Proxy|Matcher|Package|Module|ClassGrammar|Scalar|Array|Hash|KeyHash|KeySet|KeyBagPair|List|Seq|Range|Set|Bag|Mapping|Void|UndefFailure|Exception|Code|Block|Routine|Sub|MacroMethod|Submethod|Regex|Str|str|Blob|Char|ByteCodepoint|Grapheme|StrPos|StrLen|Version|NumComplex|num|complex|Bit|bit|bool|True|FalseIncreasing|Decreasing|Ordered|Callable|AnyCharPositional|Associative|Ordering|KeyExtractorComparator|OrderingPair|IO|KitchenSink|RoleInt|int|int1|int2|int4|int8|int16|int32|int64Rat|rat|rat1|rat2|rat4|rat8|rat16|rat32|rat64Buf|buf|buf1|buf2|buf4|buf8|buf16|buf32|buf64UInt|uint|uint1|uint2|uint4|uint8|uint16|uint32uint64|Abstraction|utf8|utf16|utf32)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.perl6\\\"},{\\\"match\\\":\\\"\\\\\\\\b(div|xx|x|mod|also|leg|cmp|before|after|eq|ne|le|lt|not|gt|ge|eqv|ff|fff|and|andthen|or|xor|orelse|extra|lcm|gcd)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.perl\\\"},{\\\"match\\\":\\\"(\\\\\\\\$|@|%|&)(\\\\\\\\*|:|!|\\\\\\\\^|~|=|\\\\\\\\?|(<(?=.+>)))?([a-zA-Z_\\\\\\\\x{C0}-\\\\\\\\x{FF}\\\\\\\\$])([a-zA-Z0-9_\\\\\\\\x{C0}-\\\\\\\\x{FF}\\\\\\\\$]|[\\\\\\\\-'][a-zA-Z0-9_\\\\\\\\x{C0}-\\\\\\\\x{FF}\\\\\\\\$])*\\\",\\\"name\\\":\\\"variable.other.identifier.perl.6\\\"},{\\\"match\\\":\\\"\\\\\\\\b(eager|hyper|substr|index|rindex|grep|map|sort|join|lines|hints|chmod|split|reduce|min|max|reverse|truncate|zip|cat|roundrobin|classify|first|sum|keys|values|pairs|defined|delete|exists|elems|end|kv|any|all|one|wrap|shape|key|value|name|pop|push|shift|splice|unshift|floor|ceiling|abs|exp|log|log10|rand|sign|sqrt|sin|cos|tan|round|strand|roots|cis|unpolar|polar|atan2|pick|chop|p5chop|chomp|p5chomp|lc|lcfirst|uc|ucfirst|capitalize|normalize|pack|unpack|quotemeta|comb|samecase|sameaccent|chars|nfd|nfc|nfkd|nfkc|printf|sprintf|caller|evalfile|run|runinstead|nothing|want|bless|chr|ord|gmtime|time|eof|localtime|gethost|getpw|chroot|getlogin|getpeername|kill|fork|wait|perl|graphs|codes|bytes|clone|print|open|read|write|readline|say|seek|close|opendir|readdir|slurp|spurt|shell|run|pos|fmt|vec|link|unlink|symlink|uniq|pair|asin|atan|sec|cosec|cotan|asec|acosec|acotan|sinh|cosh|tanh|asinh|done|acos|acosh|atanh|sech|cosech|cotanh|sech|acosech|acotanh|asech|ok|nok|plan_ok|dies_ok|lives_ok|skip|todo|pass|flunk|force_todo|use_ok|isa_ok|diag|is_deeply|isnt|like|skip_rest|unlike|cmp_ok|eval_dies_ok|nok_error|eval_lives_ok|approx|is_approx|throws_ok|version_lt|plan|EVAL|succ|pred|times|nonce|once|signature|new|connect|operator|undef|undefine|sleep|from|to|infix|postfix|prefix|circumfix|postcircumfix|minmax|lazy|count|unwrap|getc|pi|e|context|void|quasi|body|each|contains|rewinddir|subst|can|isa|flush|arity|assuming|rewind|callwith|callsame|nextwith|nextsame|attr|eval_elsewhere|none|srand|trim|trim_start|trim_end|lastcall|WHAT|WHERE|HOW|WHICH|VAR|WHO|WHENCE|ACCEPTS|REJECTS|not|true|iterator|by|re|im|invert|flip|gist|flat|tree|is-prime|throws_like|trans)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.perl\\\"}],\\\"repository\\\":{\\\"qq_brace_string_content\\\":{\\\"begin\\\":\\\"{\\\",\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_brace_string_content\\\"}]},\\\"qq_bracket_string_content\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_bracket_string_content\\\"}]},\\\"qq_double_string_content\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_double_string_content\\\"}]},\\\"qq_paren_string_content\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_paren_string_content\\\"}]},\\\"qq_single_string_content\\\":{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_single_string_content\\\"}]},\\\"qq_slash_string_content\\\":{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\/\\\",\\\"end\\\":\\\"\\\\\\\\\\\\\\\\/\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#qq_slash_string_content\\\"}]}},\\\"scopeName\\\":\\\"source.perl.6\\\",\\\"aliases\\\":[\\\"perl6\\\"]}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\nimport csharp from './csharp.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"ASP.NET Razor\\\",\\\"fileTypes\\\":[\\\"razor\\\",\\\"cshtml\\\"],\\\"injections\\\":{\\\"string.quoted.double.html\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#explicit-razor-expression\\\"},{\\\"include\\\":\\\"#implicit-expression\\\"}]},\\\"string.quoted.single.html\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#explicit-razor-expression\\\"},{\\\"include\\\":\\\"#implicit-expression\\\"}]}},\\\"name\\\":\\\"razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#razor-control-structures\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}],\\\"repository\\\":{\\\"addTagHelper-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.addTagHelper\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tagHelper-directive-argument\\\"}]}},\\\"match\\\":\\\"(@)(addTagHelper)\\\\\\\\s+([^$]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"attribute-directive\\\":{\\\"begin\\\":\\\"(@)(attribute)\\\\\\\\b\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.attribute\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\])|$\\\",\\\"name\\\":\\\"meta.directive\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#attribute-section\\\"}]},\\\"await-prefix\\\":{\\\"match\\\":\\\"(await)\\\\\\\\s+\\\",\\\"name\\\":\\\"keyword.other.await.cs\\\"},\\\"balanced-brackets-csharp\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.squarebracket.open.cs\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.squarebracket.close.cs\\\"}},\\\"name\\\":\\\"razor.test.balanced.brackets\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs\\\"}]},\\\"balanced-parenthesis-csharp\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.cs\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.cs\\\"}},\\\"name\\\":\\\"razor.test.balanced.parenthesis\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs\\\"}]},\\\"catch-clause\\\":{\\\"begin\\\":\\\"(?:^|(?<=}))\\\\\\\\s*(catch)\\\\\\\\b\\\\\\\\s*?(?=[\\\\\\\\n\\\\\\\\(\\\\\\\\{])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.try.catch.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.catch.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#catch-condition\\\"},{\\\"include\\\":\\\"source.cs#when-clause\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"catch-condition\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.cs\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.cs\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#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*(?:(\\\\\\\\g<identifier>)\\\\\\\\b)?\\\"}]},\\\"code-directive\\\":{\\\"begin\\\":\\\"(@)(code)((?=\\\\\\\\{)|\\\\\\\\s+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.code\\\"}},\\\"end\\\":\\\"(?<=})|\\\\\\\\s\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#directive-codeblock\\\"}]},\\\"csharp-code-block\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.cs\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.cs\\\"}},\\\"name\\\":\\\"meta.structure.razor.csharp.codeblock\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"csharp-condition\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.cs\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.cs\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#local-variable-declaration\\\"},{\\\"include\\\":\\\"source.cs#expression\\\"},{\\\"include\\\":\\\"source.cs#punctuation-comma\\\"},{\\\"include\\\":\\\"source.cs#punctuation-semicolon\\\"}]},\\\"directive-codeblock\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.codeblock.open\\\"}},\\\"contentName\\\":\\\"source.cs\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.codeblock.close\\\"}},\\\"name\\\":\\\"meta.structure.razor.directive.codeblock\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#class-or-struct-members\\\"}]},\\\"directive-markupblock\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.codeblock.open\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.codeblock.close\\\"}},\\\"name\\\":\\\"meta.structure.razor.directive.markblock\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"directives\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#code-directive\\\"},{\\\"include\\\":\\\"#functions-directive\\\"},{\\\"include\\\":\\\"#page-directive\\\"},{\\\"include\\\":\\\"#addTagHelper-directive\\\"},{\\\"include\\\":\\\"#removeTagHelper-directive\\\"},{\\\"include\\\":\\\"#tagHelperPrefix-directive\\\"},{\\\"include\\\":\\\"#model-directive\\\"},{\\\"include\\\":\\\"#inherits-directive\\\"},{\\\"include\\\":\\\"#implements-directive\\\"},{\\\"include\\\":\\\"#namespace-directive\\\"},{\\\"include\\\":\\\"#inject-directive\\\"},{\\\"include\\\":\\\"#attribute-directive\\\"},{\\\"include\\\":\\\"#section-directive\\\"},{\\\"include\\\":\\\"#layout-directive\\\"},{\\\"include\\\":\\\"#using-directive\\\"},{\\\"include\\\":\\\"#rendermode-directive\\\"},{\\\"include\\\":\\\"#preservewhitespace-directive\\\"},{\\\"include\\\":\\\"#typeparam-directive\\\"}]},\\\"do-statement\\\":{\\\"begin\\\":\\\"(?:(@))(do)\\\\\\\\b\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.loop.do.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.do.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"do-statement-with-optional-transition\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*|(@))(do)\\\\\\\\b\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.loop.do.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.do.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"else-part\\\":{\\\"begin\\\":\\\"(?:^|(?<=}))\\\\\\\\s*(else)\\\\\\\\b\\\\\\\\s*?(?: (if))?\\\\\\\\s*?(?=[\\\\\\\\n\\\\\\\\(\\\\\\\\{])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.else.cs\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.conditional.if.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.else.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"escaped-transition\\\":{\\\"match\\\":\\\"@@\\\",\\\"name\\\":\\\"constant.character.escape.razor.transition\\\"},\\\"explicit-razor-expression\\\":{\\\"begin\\\":\\\"(@)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.cshtml\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.cshtml\\\"}},\\\"name\\\":\\\"meta.expression.explicit.cshtml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#expression\\\"}]},\\\"finally-clause\\\":{\\\"begin\\\":\\\"(?:^|(?<=}))\\\\\\\\s*(finally)\\\\\\\\b\\\\\\\\s*?(?=[\\\\\\\\n\\\\\\\\{])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.try.finally.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.finally.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"for-statement\\\":{\\\"begin\\\":\\\"(?:(@))(for)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.loop.for.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.for.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"for-statement-with-optional-transition\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*|(@))(for)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.loop.for.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.for.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"foreach-condition\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.cs\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.cs\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.var.cs\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#type\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"entity.name.variable.local.cs\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.control.loop.in.cs\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\bvar\\\\\\\\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+(\\\\\\\\g<identifier>)\\\\\\\\s+\\\\\\\\b(in)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.var.cs\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#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\\\":\\\"source.cs#expression\\\"}]},\\\"foreach-statement\\\":{\\\"begin\\\":\\\"(?:(@)(await\\\\\\\\s+)?)(foreach)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#await-prefix\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.loop.foreach.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.foreach.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#foreach-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"foreach-statement-with-optional-transition\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*|(@)(await\\\\\\\\s+)?)(foreach)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#await-prefix\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.loop.foreach.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.foreach.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#foreach-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"functions-directive\\\":{\\\"begin\\\":\\\"(@)(functions)((?=\\\\\\\\{)|\\\\\\\\s+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.functions\\\"}},\\\"end\\\":\\\"(?<=})|\\\\\\\\s\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#directive-codeblock\\\"}]},\\\"if-statement\\\":{\\\"begin\\\":\\\"(?:(@))(if)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.conditional.if.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.if.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"if-statement-with-optional-transition\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*|(@))(if)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.conditional.if.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.if.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"implements-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.implements\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#type\\\"}]}},\\\"match\\\":\\\"(@)(implements)\\\\\\\\s+([^$]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"implicit-expression\\\":{\\\"begin\\\":\\\"(?<![[:alpha:][:alnum:]])(@)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]}},\\\"contentName\\\":\\\"source.cs\\\",\\\"end\\\":\\\"(?=[\\\\\\\\s<>\\\\\\\\{\\\\\\\\}\\\\\\\\)\\\\\\\\]'\\\\\\\"])\\\",\\\"name\\\":\\\"meta.expression.implicit.cshtml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#await-prefix\\\"},{\\\"include\\\":\\\"#implicit-expression-body\\\"}]},\\\"implicit-expression-accessor\\\":{\\\"match\\\":\\\"(?<=\\\\\\\\.)[_[:alpha:]][_[:alnum:]]*\\\",\\\"name\\\":\\\"variable.other.object.property.cs\\\"},\\\"implicit-expression-accessor-start\\\":{\\\"begin\\\":\\\"([_[:alpha:]][_[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.object.cs\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\s<>\\\\\\\\{\\\\\\\\}\\\\\\\\)\\\\\\\\]'\\\\\\\"])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#implicit-expression-continuation\\\"}]},\\\"implicit-expression-body\\\":{\\\"end\\\":\\\"(?=[\\\\\\\\s<>\\\\\\\\{\\\\\\\\}\\\\\\\\)\\\\\\\\]'\\\\\\\"])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#implicit-expression-invocation-start\\\"},{\\\"include\\\":\\\"#implicit-expression-accessor-start\\\"}]},\\\"implicit-expression-continuation\\\":{\\\"end\\\":\\\"(?=[\\\\\\\\s<>\\\\\\\\{\\\\\\\\}\\\\\\\\)\\\\\\\\]'\\\\\\\"])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#balanced-parenthesis-csharp\\\"},{\\\"include\\\":\\\"#balanced-brackets-csharp\\\"},{\\\"include\\\":\\\"#implicit-expression-invocation\\\"},{\\\"include\\\":\\\"#implicit-expression-accessor\\\"},{\\\"include\\\":\\\"#implicit-expression-extension\\\"}]},\\\"implicit-expression-dot-operator\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.accessor.cs\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)(?=[_[:alpha:]][_[:alnum:]]*)\\\"},\\\"implicit-expression-invocation\\\":{\\\"match\\\":\\\"(?<=\\\\\\\\.)[_[:alpha:]][_[:alnum:]]*(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.cs\\\"},\\\"implicit-expression-invocation-start\\\":{\\\"begin\\\":\\\"([_[:alpha:]][_[:alnum:]]*)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.cs\\\"}},\\\"end\\\":\\\"(?=[\\\\\\\\s<>\\\\\\\\{\\\\\\\\}\\\\\\\\)\\\\\\\\]'\\\\\\\"])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#implicit-expression-continuation\\\"}]},\\\"implicit-expression-null-conditional-operator\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.null-conditional.cs\\\"}},\\\"match\\\":\\\"(\\\\\\\\?)(?=[.\\\\\\\\[])\\\"},\\\"implicit-expression-null-forgiveness-operator\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.cs\\\"}},\\\"match\\\":\\\"(\\\\\\\\!)(?=(?:\\\\\\\\.[_[:alpha:]][_[:alnum:]]*)|\\\\\\\\?|[\\\\\\\\[\\\\\\\\(])\\\"},\\\"implicit-expression-operator\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#implicit-expression-dot-operator\\\"},{\\\"include\\\":\\\"#implicit-expression-null-conditional-operator\\\"},{\\\"include\\\":\\\"#implicit-expression-null-forgiveness-operator\\\"}]},\\\"inherits-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.inherits\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#type\\\"}]}},\\\"match\\\":\\\"(@)(inherits)\\\\\\\\s+([^$]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"inject-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.inject\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#type\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.variable.property.cs\\\"}},\\\"match\\\":\\\"(@)(inject)\\\\\\\\s*([\\\\\\\\S\\\\\\\\s]+?)?\\\\\\\\s*([_[:alpha:]][_[:alnum:]]*)?\\\\\\\\s*(?=$)\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"layout-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.layout\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#type\\\"}]}},\\\"match\\\":\\\"(@)(layout)\\\\\\\\s+([^$]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"lock-statement\\\":{\\\"begin\\\":\\\"(?:(@))(lock)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.lock.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.lock.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"lock-statement-with-optional-transition\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*|(@))(lock)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.lock.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.lock.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"model-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.model\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#type\\\"}]}},\\\"match\\\":\\\"(@)(model)\\\\\\\\s+([^$]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"namespace-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.namespace\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#namespace-directive-argument\\\"}]}},\\\"match\\\":\\\"(@)(namespace)\\\\\\\\s+([^\\\\\\\\s]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"namespace-directive-argument\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.namespace.cs\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.accessor.cs\\\"}},\\\"match\\\":\\\"([_[:alpha:]][_[:alnum:]]*)(\\\\\\\\.)?\\\"},\\\"non-void-tag\\\":{\\\"begin\\\":\\\"(?=<(!)?([^/\\\\\\\\s>]+)(\\\\\\\\s|/?>))\\\",\\\"end\\\":\\\"(</)(\\\\\\\\2)\\\\\\\\s*(>)|(/>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)(!)?([^/\\\\\\\\s>]+)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.razor.tagHelperOptOut\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(?=/?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#razor-control-structures\\\"},{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]},{\\\"begin\\\":\\\">\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"end\\\":\\\"(?=</)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#wellformed-html\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"optionally-transitioned-csharp-control-structures\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#using-statement-with-optional-transition\\\"},{\\\"include\\\":\\\"#if-statement-with-optional-transition\\\"},{\\\"include\\\":\\\"#else-part\\\"},{\\\"include\\\":\\\"#foreach-statement-with-optional-transition\\\"},{\\\"include\\\":\\\"#for-statement-with-optional-transition\\\"},{\\\"include\\\":\\\"#while-statement\\\"},{\\\"include\\\":\\\"#switch-statement-with-optional-transition\\\"},{\\\"include\\\":\\\"#lock-statement-with-optional-transition\\\"},{\\\"include\\\":\\\"#do-statement-with-optional-transition\\\"},{\\\"include\\\":\\\"#try-statement-with-optional-transition\\\"}]},\\\"optionally-transitioned-razor-control-structures\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#razor-comment\\\"},{\\\"include\\\":\\\"#razor-codeblock\\\"},{\\\"include\\\":\\\"#explicit-razor-expression\\\"},{\\\"include\\\":\\\"#escaped-transition\\\"},{\\\"include\\\":\\\"#directives\\\"},{\\\"include\\\":\\\"#optionally-transitioned-csharp-control-structures\\\"},{\\\"include\\\":\\\"#implicit-expression\\\"}]},\\\"page-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.page\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#string-literal\\\"}]}},\\\"match\\\":\\\"(@)(page)\\\\\\\\s+([^$]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"preservewhitespace-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.preservewhitespace\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#boolean-literal\\\"}]}},\\\"match\\\":\\\"(@)(preservewhitespace)\\\\\\\\s+([^$]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"razor-codeblock\\\":{\\\"begin\\\":\\\"(@)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.codeblock.open\\\"}},\\\"contentName\\\":\\\"source.cs\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.codeblock.close\\\"}},\\\"name\\\":\\\"meta.structure.razor.codeblock\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"razor-codeblock-body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#text-tag\\\"},{\\\"include\\\":\\\"#wellformed-html\\\"},{\\\"include\\\":\\\"#razor-single-line-markup\\\"},{\\\"include\\\":\\\"#optionally-transitioned-razor-control-structures\\\"},{\\\"include\\\":\\\"source.cs\\\"}]},\\\"razor-comment\\\":{\\\"begin\\\":\\\"(@)(\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.comment.star\\\"}},\\\"contentName\\\":\\\"comment.block.razor\\\",\\\"end\\\":\\\"(\\\\\\\\*)(@)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.razor.comment.star\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]}},\\\"name\\\":\\\"meta.comment.razor\\\"},\\\"razor-control-structures\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#razor-comment\\\"},{\\\"include\\\":\\\"#razor-codeblock\\\"},{\\\"include\\\":\\\"#explicit-razor-expression\\\"},{\\\"include\\\":\\\"#escaped-transition\\\"},{\\\"include\\\":\\\"#directives\\\"},{\\\"include\\\":\\\"#transitioned-csharp-control-structures\\\"},{\\\"include\\\":\\\"#implicit-expression\\\"}]},\\\"razor-single-line-markup\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.razor.singleLineMarkup\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#razor-control-structures\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\@\\\\\\\\:)([^$]*)$\\\"},\\\"removeTagHelper-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.removeTagHelper\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tagHelper-directive-argument\\\"}]}},\\\"match\\\":\\\"(@)(removeTagHelper)\\\\\\\\s+([^$]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"rendermode-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.rendermode\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#type\\\"}]}},\\\"match\\\":\\\"(@)(rendermode)\\\\\\\\s+([^$]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"section-directive\\\":{\\\"begin\\\":\\\"(@)(section)\\\\\\\\b\\\\\\\\s+([_[:alpha:]][_[:alnum:]]*)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.section\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.razor.directive.sectionName\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.directive.block\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#directive-markupblock\\\"}]},\\\"switch-code-block\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.cs\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.cs\\\"}},\\\"name\\\":\\\"meta.structure.razor.csharp.codeblock.switch\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#switch-label\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"switch-statement\\\":{\\\"begin\\\":\\\"(?:(@))(switch)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.switch.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.switch.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#switch-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"switch-statement-with-optional-transition\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*|(@))(switch)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.switch.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.switch.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#switch-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"tagHelper-directive-argument\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#string-literal\\\"},{\\\"include\\\":\\\"#unquoted-string-argument\\\"}]},\\\"tagHelperPrefix-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.tagHelperPrefix\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tagHelper-directive-argument\\\"}]}},\\\"match\\\":\\\"(@)(tagHelperPrefix)\\\\\\\\s+([^$]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"text-tag\\\":{\\\"begin\\\":\\\"(<text\\\\\\\\s*>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.cshtml.transition.textTag.open\\\"}},\\\"end\\\":\\\"(</text>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.cshtml.transition.textTag.close\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#wellformed-html\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"transition\\\":{\\\"match\\\":\\\"@\\\",\\\"name\\\":\\\"keyword.control.cshtml.transition\\\"},\\\"transitioned-csharp-control-structures\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#using-statement\\\"},{\\\"include\\\":\\\"#if-statement\\\"},{\\\"include\\\":\\\"#else-part\\\"},{\\\"include\\\":\\\"#foreach-statement\\\"},{\\\"include\\\":\\\"#for-statement\\\"},{\\\"include\\\":\\\"#while-statement\\\"},{\\\"include\\\":\\\"#switch-statement\\\"},{\\\"include\\\":\\\"#lock-statement\\\"},{\\\"include\\\":\\\"#do-statement\\\"},{\\\"include\\\":\\\"#try-statement\\\"}]},\\\"try-block\\\":{\\\"begin\\\":\\\"(?:(@))(try)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.try.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.try.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"try-block-with-optional-transition\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*|(@))(try)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.try.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.try.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"try-statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#try-block\\\"},{\\\"include\\\":\\\"#catch-clause\\\"},{\\\"include\\\":\\\"#finally-clause\\\"}]},\\\"try-statement-with-optional-transition\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#try-block-with-optional-transition\\\"},{\\\"include\\\":\\\"#catch-clause\\\"},{\\\"include\\\":\\\"#finally-clause\\\"}]},\\\"typeparam-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.razor.directive.typeparam\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#type\\\"}]}},\\\"match\\\":\\\"(@)(typeparam)\\\\\\\\s+([^$]+)?\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"unquoted-string-argument\\\":{\\\"match\\\":\\\"[^$]+\\\",\\\"name\\\":\\\"string.quoted.double.cs\\\"},\\\"using-alias-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.alias.cs\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.cs\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#type\\\"}]}},\\\"match\\\":\\\"([_[:alpha:]][_[:alnum:]]*)\\\\\\\\b\\\\\\\\s*(=)\\\\\\\\s*(.+)\\\\\\\\s*\\\"},\\\"using-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.using.cs\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#using-static-directive\\\"},{\\\"include\\\":\\\"#using-alias-directive\\\"},{\\\"include\\\":\\\"#using-standard-directive\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.razor.optionalSemicolon\\\"}},\\\"match\\\":\\\"(@)(using)\\\\\\\\b\\\\\\\\s+(?!\\\\\\\\(|\\\\\\\\s)(.+?)?(;)?$\\\",\\\"name\\\":\\\"meta.directive\\\"},\\\"using-standard-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.namespace.cs\\\"}},\\\"match\\\":\\\"([_[:alpha:]][_[:alnum:]]*)\\\\\\\\s*\\\"},\\\"using-statement\\\":{\\\"begin\\\":\\\"(?:(@))(using)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.using.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.using.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"using-statement-with-optional-transition\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*|(@))(using)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.using.cs\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.statement.using.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]},\\\"using-static-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.static.cs\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs#type\\\"}]}},\\\"match\\\":\\\"(static)\\\\\\\\b\\\\\\\\s+(.+)\\\"},\\\"void-tag\\\":{\\\"begin\\\":\\\"(?i)(<)(!)?(area|base|br|col|command|embed|hr|img|input|keygen|link|meta|param|source|track|wbr)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.razor.tagHelperOptOut\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.$3.void.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]},\\\"wellformed-html\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#void-tag\\\"},{\\\"include\\\":\\\"#non-void-tag\\\"}]},\\\"while-statement\\\":{\\\"begin\\\":\\\"(?:(@)|^\\\\\\\\s*|(?<=})\\\\\\\\s*)(while)\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#transition\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.loop.while.cs\\\"}},\\\"end\\\":\\\"(?<=})|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.cs\\\"}},\\\"name\\\":\\\"meta.statement.while.razor\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#csharp-condition\\\"},{\\\"include\\\":\\\"#csharp-code-block\\\"},{\\\"include\\\":\\\"#razor-codeblock-body\\\"}]}},\\\"scopeName\\\":\\\"text.aspnetcorerazor\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"csharp\\\"]}\"))\n\nexport default [\n...html,\n...csharp,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Windows Registry Script\\\",\\\"fileTypes\\\":[\\\"reg\\\",\\\"REG\\\"],\\\"name\\\":\\\"reg\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"Windows Registry Editor Version 5\\\\\\\\.00|REGEDIT4\\\",\\\"name\\\":\\\"keyword.control.import.reg\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.reg\\\"}},\\\"match\\\":\\\"(;).*$\\\",\\\"name\\\":\\\"comment.line.semicolon.reg\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.section.reg\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.section.reg\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.section.reg\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\[(?!-))(.*?)(\\\\\\\\])\\\",\\\"name\\\":\\\"entity.name.function.section.add.reg\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.section.reg\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.section.reg\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.section.reg\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\[-)(.*?)(\\\\\\\\])\\\",\\\"name\\\":\\\"entity.name.function.section.delete.reg\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.quote.reg\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.regname.ini\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.quote.reg\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.equals.reg\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.minus.reg\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.quote.reg\\\"},\\\"10\\\":{\\\"name\\\":\\\"string.name.regdata.reg\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.definition.quote.reg\\\"},\\\"13\\\":{\\\"name\\\":\\\"support.type.dword.reg\\\"},\\\"14\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.colon.reg\\\"},\\\"15\\\":{\\\"name\\\":\\\"constant.numeric.dword.reg\\\"},\\\"17\\\":{\\\"name\\\":\\\"support.type.dword.reg\\\"},\\\"18\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.parenthesis.reg\\\"},\\\"19\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.parenthesis.reg\\\"},\\\"20\\\":{\\\"name\\\":\\\"constant.numeric.hex.size.reg\\\"},\\\"21\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.parenthesis.reg\\\"},\\\"22\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.colon.reg\\\"},\\\"23\\\":{\\\"name\\\":\\\"constant.numeric.hex.reg\\\"},\\\"24\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.linecontinuation.reg\\\"},\\\"25\\\":{\\\"name\\\":\\\"comment.declarationline.semicolon.reg\\\"}},\\\"match\\\":\\\"^(\\\\\\\\s*([\\\\\\\"']?)(.+?)([\\\\\\\"']?)\\\\\\\\s*(=))?\\\\\\\\s*((-)|(([\\\\\\\"'])(.*?)([\\\\\\\"']))|(((?i:dword))(\\\\\\\\:)\\\\\\\\s*([\\\\\\\\dabcdefABCDEF]{1,8}))|(((?i:hex))((\\\\\\\\()([\\\\\\\\d]*)(\\\\\\\\)))?(\\\\\\\\:)(.*?)(\\\\\\\\\\\\\\\\?)))\\\\\\\\s*(;.*)?$\\\",\\\"name\\\":\\\"meta.declaration.reg\\\"},{\\\"match\\\":\\\"[0-9]+\\\",\\\"name\\\":\\\"constant.numeric.reg\\\"},{\\\"match\\\":\\\"[a-fA-F]+\\\",\\\"name\\\":\\\"constant.numeric.hex.reg\\\"},{\\\"match\\\":\\\",+\\\",\\\"name\\\":\\\"constant.numeric.hex.comma.reg\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.linecontinuation.reg\\\"}],\\\"scopeName\\\":\\\"source.reg\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Rel\\\",\\\"name\\\":\\\"rel\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#single-line-comment-consuming-line-ending\\\"},{\\\"include\\\":\\\"#deprecated-temporary\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#symbols\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#otherkeywords\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#constants\\\"}],\\\"repository\\\":{\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.rel\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.rel\\\"}},\\\"name\\\":\\\"comment.block.documentation.rel\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docblock\\\"}]},{\\\"begin\\\":\\\"(/\\\\\\\\*)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|(\\\\\\\\*/)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.rel\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.rel\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.rel\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.rel\\\"}},\\\"name\\\":\\\"comment.block.rel\\\"},{\\\"begin\\\":\\\"doc\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"comment.block.documentation.rel\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.rel\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.rel\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.rel\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.rel\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.rel\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.rel\\\",\\\"end\\\":\\\"(?=$)\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\b(true|false)\\\\\\\\b)\\\",\\\"name\\\":\\\"constant.language.rel\\\"}]},\\\"deprecated-temporary\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"@inspect\\\",\\\"name\\\":\\\"keyword.other.rel\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\b(def|entity|bound|include|ic|forall|exists|\u2200|\u2203|return|module|^end)\\\\\\\\b)|(((\\\\\\\\<)?\\\\\\\\|(\\\\\\\\>)?)|\u2200|\u2203)\\\",\\\"name\\\":\\\"keyword.control.rel\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\b(if|then|else|and|or|not|eq|neq|lt|lt_eq|gt|gt_eq)\\\\\\\\b)|(\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\/|\u00F7|\\\\\\\\^|\\\\\\\\%|\\\\\\\\=|\\\\\\\\!\\\\\\\\=|\u2260|\\\\\\\\<|\\\\\\\\<\\\\\\\\=|\u2264|\\\\\\\\>|\\\\\\\\>\\\\\\\\=|\u2265|\\\\\\\\&)|\\\\\\\\s+(end)\\\",\\\"name\\\":\\\"keyword.other.rel\\\"}]},\\\"otherkeywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s*(@inline)\\\\\\\\s*|\\\\\\\\s*(@auto_number)\\\\\\\\s*|\\\\\\\\s*(function)\\\\\\\\s|(\\\\\\\\b(implies|select|from|\u2208|where|for|in)\\\\\\\\b)|(((\\\\\\\\<)?\\\\\\\\|(\\\\\\\\>)?)|\u2208)\\\",\\\"name\\\":\\\"keyword.other.rel\\\"}]},\\\"single-line-comment-consuming-line-ending\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?((//)(?:\\\\\\\\s*((@)internal)(?=\\\\\\\\s|$))?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.rel\\\"},\\\"2\\\":{\\\"name\\\":\\\"comment.line.double-slash.rel\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.comment.rel\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.internaldeclaration.rel\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.decorator.internaldeclaration.rel\\\"}},\\\"contentName\\\":\\\"comment.line.double-slash.rel\\\",\\\"end\\\":\\\"(?=^)\\\"},\\\"strings\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.rel\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.rel\\\"}]},\\\"symbols\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(:[\\\\\\\\[_$[:alpha:]](\\\\\\\\]|[_$[:alnum:]]*))\\\",\\\"name\\\":\\\"variable.parameter.rel\\\"}]},\\\"types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\b(Symbol|Char|Bool|Rational|FixedDecimal|Float16|Float32|Float64|Int8|Int16|Int32|Int64|Int128|UInt8|UInt16|UInt32|UInt64|UInt128|Date|DateTime|Day|Week|Month|Year|Nanosecond|Microsecond|Millisecond|Second|Minute|Hour|FilePos|HashValue|AutoNumberValue)\\\\\\\\b)\\\",\\\"name\\\":\\\"entity.name.type.rel\\\"}]}},\\\"scopeName\\\":\\\"source.rel\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"RISC-V\\\",\\\"fileTypes\\\":[\\\"S\\\",\\\"s\\\",\\\"riscv\\\",\\\"asm\\\"],\\\"name\\\":\\\"riscv\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"ok actually this are instructions, but one also could call them funtions\u2026\\\",\\\"match\\\":\\\"\\\\\\\\b(la|lb|lh|lw|ld|nop|li|mv|not|neg|negw|sext\\\\\\\\.w|seqz|snez|sltz|sgtz|beqz|bnez|blez|bgez|bltz|bgtz|bgt|ble|bgtu|bleu|j|jal|jr|ret|call|tail|fence|csr[r|w|s|c]|csr[w|s|c]i)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.pseudo.riscv\\\"},{\\\"match\\\":\\\"\\\\\\\\b(add|addw|auipc|lui|jalr|beq|bne|blt|bge|bltu|bgeu|lb|lh|lw|ld|lbu|lhu|sb|sh|sw|sd|addi|addiw|slti|sltiu|xori|ori|andi|slli|slliw|srli|srliw|srai|sraiw|sub|subw|sll|sllw|slt|sltu|xor|srl|srlw|sra|sraw|or|and|fence|fence\\\\\\\\.i|csrrw|csrrs|csrrc|csrrwi|csrrsi|csrrci)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.riscv\\\"},{\\\"comment\\\":\\\"priviledged instructions\\\",\\\"match\\\":\\\"\\\\\\\\b(ecall|ebreak|sfence\\\\\\\\.vma|mret|sret|uret|wfi)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.riscv.privileged\\\"},{\\\"comment\\\":\\\"M extension (multiplication and division)\\\",\\\"match\\\":\\\"\\\\\\\\b(mul|mulh|mulhsu|mulhu|div|divu|rem|remu|mulw|divw|divuw|remw|remuw)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.riscv.m\\\"},{\\\"comment\\\":\\\"C extension (compressed instructions)\\\",\\\"match\\\":\\\"\\\\\\\\b(c\\\\\\\\.addi4spn|c\\\\\\\\.fld|c\\\\\\\\.lq|c\\\\\\\\.lw|c\\\\\\\\.flw|c\\\\\\\\.ld|c\\\\\\\\.fsd|c\\\\\\\\.sq|c\\\\\\\\.sw|c\\\\\\\\.fsw|c\\\\\\\\.sd|c\\\\\\\\.nop|c\\\\\\\\.addi|c\\\\\\\\.jal|c\\\\\\\\.addiw|c\\\\\\\\.li|c\\\\\\\\.addi16sp|c\\\\\\\\.lui|c\\\\\\\\.srli|c\\\\\\\\.srli64|c\\\\\\\\.srai|c\\\\\\\\.srai64|c\\\\\\\\.andi|c\\\\\\\\.sub|c\\\\\\\\.xor|c\\\\\\\\.or|c\\\\\\\\.and|c\\\\\\\\.subw|c\\\\\\\\.addw|c\\\\\\\\.j|c\\\\\\\\.beqz|c\\\\\\\\.bnez)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.riscv.c\\\"},{\\\"comment\\\":\\\"A extension (atomic instructions)\\\",\\\"match\\\":\\\"\\\\\\\\b(lr\\\\\\\\.[w|d]|sc\\\\\\\\.[w|d]|amoswap\\\\\\\\.[w|d]|amoadd\\\\\\\\.[w|d]|amoxor\\\\\\\\.[w|d]|amoand\\\\\\\\.[w|d]|amoor\\\\\\\\.[w|d]|amomin\\\\\\\\.[w|d]|amomax\\\\\\\\.[w|d]|amominu\\\\\\\\.[w|d]|amomaxu\\\\\\\\.[w|d])\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.riscv.a\\\"},{\\\"comment\\\":\\\"F extension (single precision floating point)\\\",\\\"match\\\":\\\"\\\\\\\\b(flw|fsw|fmadd\\\\\\\\.s|fmsub\\\\\\\\.s|fnmsub\\\\\\\\.s|fnmadd\\\\\\\\.s|fadd\\\\\\\\.s|fsub\\\\\\\\.s|fmul\\\\\\\\.s|fdiv\\\\\\\\.s|fsqrt\\\\\\\\.s|fsgnj\\\\\\\\.s|fsgnjn\\\\\\\\.s|fsgnjx\\\\\\\\.s|fmin\\\\\\\\.s|fmax\\\\\\\\.s|fcvt\\\\\\\\.w\\\\\\\\.s|fcvt\\\\\\\\.wu\\\\\\\\.s|fmv\\\\\\\\.x\\\\\\\\.w|feq\\\\\\\\.s|flt\\\\\\\\.s|fle\\\\\\\\.s|fclass\\\\\\\\.s|fcvt\\\\\\\\.s\\\\\\\\.w|fcvt\\\\\\\\.s\\\\\\\\.wu|fmv\\\\\\\\.w\\\\\\\\.x|fcvt\\\\\\\\.l\\\\\\\\.s|fcvt\\\\\\\\.lu\\\\\\\\.s|fcvt\\\\\\\\.s\\\\\\\\.l|fcvt\\\\\\\\.s\\\\\\\\.lu)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.riscv.f\\\"},{\\\"comment\\\":\\\"D extension (double precision floating point)\\\",\\\"match\\\":\\\"\\\\\\\\b(fld|fsd|fmadd\\\\\\\\.d|fmsub\\\\\\\\.d|fnmsub\\\\\\\\.d|fnmadd\\\\\\\\.d|fadd\\\\\\\\.d|fsub\\\\\\\\.d|fmul\\\\\\\\.d|fdiv\\\\\\\\.d|fsqrt\\\\\\\\.d|fsgnj\\\\\\\\.d|fsgnjn\\\\\\\\.d|fsgnjx\\\\\\\\.d|fmin\\\\\\\\.d|fmax\\\\\\\\.d|fcvt\\\\\\\\.s\\\\\\\\.d|fcvt\\\\\\\\.d\\\\\\\\.s|feq\\\\\\\\.d|flt\\\\\\\\.d|fle\\\\\\\\.d|fclass\\\\\\\\.d|fcvt\\\\\\\\.w\\\\\\\\.d|fcvt\\\\\\\\.wu\\\\\\\\.d|fcvt\\\\\\\\.d\\\\\\\\.w|fcvt\\\\\\\\.d\\\\\\\\.wu|fcvt\\\\\\\\.l\\\\\\\\.d|fcvt\\\\\\\\.lu\\\\\\\\.d|fmv\\\\\\\\.x\\\\\\\\.d|fcvt\\\\\\\\.d\\\\\\\\.l|fcvt\\\\\\\\.d\\\\\\\\.lu|fmv\\\\\\\\.d\\\\\\\\.x)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.riscv.d\\\"},{\\\"match\\\":\\\"\\\\\\\\.(skip|ascii|asciiz|byte|[2|4|8]byte|data|double|float|half|kdata|ktext|space|text|word|dword|dtprelword|dtpreldword|set\\\\\\\\s*(noat|at)|[s|u]leb128|string|incbin|zero|rodata|comm|common)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.riscv\\\"},{\\\"match\\\":\\\"\\\\\\\\.(balign|align|p2align|extern|globl|global|local|pushsection|section|bss|insn|option|type|equ|macro|endm|file|ident)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.riscv\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.label.riscv\\\"}},\\\"match\\\":\\\"\\\\\\\\b([A-Za-z0-9_]+):\\\",\\\"name\\\":\\\"meta.function.label.riscv\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.riscv\\\"}},\\\"match\\\":\\\"\\\\\\\\b(x([0-9]|1[0-9]|2[0-9]|3[0-1]))\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.register.usable.by-number.riscv\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.riscv\\\"}},\\\"match\\\":\\\"\\\\\\\\b(zero|ra|sp|gp|tp|t[0-6]|a[0-7]|s[0-9]|fp|s1[0-1])\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.register.usable.by-name.riscv\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.riscv\\\"}},\\\"match\\\":\\\"\\\\\\\\b(([umsh]|vs)status|([umsh]|vs)ie|([ums]|vs)tvec|([ums]|vs)scratch|([ums]|vs)epc|([ums]|vs)cause|([umsh]|vs)tval|([umsh]|vs)ip|fflags|frm|fcsr|m?cycleh?|timeh?|m?instreth?|m?hpmcounter([3-9]|[12][0-9]|3[01])h?|[msh][ei]deleg|[msh]counteren|v?satp|hgeie|hgeip|[hm]tinst|hvip|hgatp|htimedeltah?|mvendorid|marchid|mimpid|mhartid|misa|mstatush|mtval2|pmpcfg[0-3]|pmpaddr([0-9]|1[0-5])|mcountinhibit|mhpmevent([3-9]|[12][0-9]|3[01])|tselect|tdata[1-3]|dcsr|dpc|dscratch[0-1])\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.csr.names.riscv\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.riscv\\\"}},\\\"match\\\":\\\"\\\\\\\\bf([0-9]|1[0-9]|2[0-9]|3[0-1])\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.register.usable.floating-point.riscv\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+\\\\\\\\.\\\\\\\\d+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.riscv\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+|0(x|X)[a-fA-F0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.riscv\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.riscv\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.riscv\\\"}},\\\"name\\\":\\\"string.quoted.double.riscv\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[rnt\\\\\\\\\\\\\\\\\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.riscv\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.riscv\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.riscv\\\"}},\\\"name\\\":\\\"string.quoted.single.riscv\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[rnt\\\\\\\\\\\\\\\\\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.riscv\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block\\\"},{\\\"begin\\\":\\\"\\\\\\\\/\\\\\\\\/\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\#\\\\\\\\s*(define)\\\\\\\\s+((?<id>[a-zA-Z_][a-zA-Z0-9_]*))(?:(\\\\\\\\()(\\\\\\\\s*\\\\\\\\g<id>\\\\\\\\s*((,)\\\\\\\\s*\\\\\\\\g<id>\\\\\\\\s*)*(?:\\\\\\\\.\\\\\\\\.\\\\\\\\.)?)(\\\\\\\\)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.define.c\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.preprocessor.c\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.c\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.parameter.preprocessor.c\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.c\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.c\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|$\\\",\\\"name\\\":\\\"meta.preprocessor.macro.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.c\\\"},{\\\"include\\\":\\\"$base\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(error|warning)\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.error.c\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.preprocessor.diagnostic.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.c\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(include|import)\\\\\\\\b\\\\\\\\s+\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.include.c\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|$\\\",\\\"name\\\":\\\"meta.preprocessor.c.include\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.c\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.double.include.c\\\"},{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.c\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.c\\\"}},\\\"name\\\":\\\"string.quoted.other.lt-gt.include.c\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*#\\\\\\\\s*(define|defined|elif|else|if|ifdef|ifndef|line|pragma|undef|endif)\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.c\\\"}},\\\"end\\\":\\\"(?=(?://|/\\\\\\\\*))|$\\\",\\\"name\\\":\\\"meta.preprocessor.c\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?>\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n)\\\",\\\"name\\\":\\\"punctuation.separator.continuation.c\\\"}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.riscv\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#|(\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.riscv\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.riscv\\\"}]}],\\\"scopeName\\\":\\\"source.riscv\\\"}\"))\n\nexport default [\nlang\n]\n", "import html_derivative from './html-derivative.mjs'\nimport cpp from './cpp.mjs'\nimport python from './python.mjs'\nimport javascript from './javascript.mjs'\nimport shellscript from './shellscript.mjs'\nimport yaml from './yaml.mjs'\nimport cmake from './cmake.mjs'\nimport ruby from './ruby.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"reStructuredText\\\",\\\"name\\\":\\\"rst\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#body\\\"}],\\\"repository\\\":{\\\"anchor\\\":{\\\"match\\\":\\\"^\\\\\\\\.{2}\\\\\\\\s+(_[^:]+:)\\\\\\\\s*\\\",\\\"name\\\":\\\"entity.name.tag.anchor\\\"},\\\"block\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+\\\\\\\\S+::)(.*)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"end\\\":\\\"^(?!\\\\\\\\1\\\\\\\\s|\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"#body\\\"}]},\\\"block-comment\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)\\\\\\\\.{2}(\\\\\\\\s+|$)\\\",\\\"end\\\":\\\"^(?=\\\\\\\\S)|^\\\\\\\\s*$\\\",\\\"name\\\":\\\"comment.block\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s{3,}(?=\\\\\\\\S)\\\",\\\"name\\\":\\\"comment.block\\\",\\\"while\\\":\\\"^\\\\\\\\s{3}.*|^\\\\\\\\s*$\\\"}]},\\\"block-param\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter\\\"}},\\\"match\\\":\\\"(:param\\\\\\\\s+(.+?):)(?:\\\\\\\\s|$)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(0x[a-fA-F\\\\\\\\d]+|\\\\\\\\d+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric\\\"},{\\\"include\\\":\\\"#inline-markup\\\"}]}},\\\"match\\\":\\\"(:.+?:)(?:$|\\\\\\\\s+(.*))\\\"}]},\\\"blocks\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#domains\\\"},{\\\"include\\\":\\\"#doctest\\\"},{\\\"include\\\":\\\"#code-block-cpp\\\"},{\\\"include\\\":\\\"#code-block-py\\\"},{\\\"include\\\":\\\"#code-block-console\\\"},{\\\"include\\\":\\\"#code-block-javascript\\\"},{\\\"include\\\":\\\"#code-block-yaml\\\"},{\\\"include\\\":\\\"#code-block-cmake\\\"},{\\\"include\\\":\\\"#code-block-kconfig\\\"},{\\\"include\\\":\\\"#code-block-ruby\\\"},{\\\"include\\\":\\\"#code-block-dts\\\"},{\\\"include\\\":\\\"#code-block\\\"},{\\\"include\\\":\\\"#doctest-block\\\"},{\\\"include\\\":\\\"#raw-html\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#literal-block\\\"},{\\\"include\\\":\\\"#block-comment\\\"}]},\\\"body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#title\\\"},{\\\"include\\\":\\\"#inline-markup\\\"},{\\\"include\\\":\\\"#anchor\\\"},{\\\"include\\\":\\\"#line-block\\\"},{\\\"include\\\":\\\"#replace-include\\\"},{\\\"include\\\":\\\"#footnote\\\"},{\\\"include\\\":\\\"#substitution\\\"},{\\\"include\\\":\\\"#blocks\\\"},{\\\"include\\\":\\\"#table\\\"},{\\\"include\\\":\\\"#simple-table\\\"},{\\\"include\\\":\\\"#options-list\\\"}]},\\\"bold\\\":{\\\"begin\\\":\\\"(?<=[\\\\\\\\s\\\\\\\"'(\\\\\\\\[{<]|^)\\\\\\\\*{2}[^\\\\\\\\s*]\\\",\\\"end\\\":\\\"\\\\\\\\*{2}|^\\\\\\\\s*$\\\",\\\"name\\\":\\\"markup.bold\\\"},\\\"citation\\\":{\\\"applyEndPatternLast\\\":0,\\\"begin\\\":\\\"(?<=[\\\\\\\\s\\\\\\\"'(\\\\\\\\[{<]|^)`[^\\\\\\\\s`]\\\",\\\"end\\\":\\\"`_{,2}|^\\\\\\\\s*$\\\",\\\"name\\\":\\\"entity.name.tag\\\"},\\\"code-block\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+(code|code-block)::)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"code-block-cmake\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+(code|code-block)::)\\\\\\\\s*(cmake)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.codeblock.cmake\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"source.cmake\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"code-block-console\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+(code|code-block)::)\\\\\\\\s*(console|shell|bash)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.codeblock.console\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"source.shell\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"code-block-cpp\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+(code|code-block)::)\\\\\\\\s*(c|c\\\\\\\\+\\\\\\\\+|cpp|C|C\\\\\\\\+\\\\\\\\+|CPP|Cpp)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.codeblock.cpp\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"source.cpp\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"code-block-dts\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+(code|code-block)::)\\\\\\\\s*(dts|DTS|devicetree)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.codeblock.dts\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"source.dts\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"code-block-javascript\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+(code|code-block)::)\\\\\\\\s*(javascript)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.codeblock.js\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"source.js\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"code-block-kconfig\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+(code|code-block)::)\\\\\\\\s*([kK]config)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.codeblock.kconfig\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"source.kconfig\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"code-block-py\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+(code|code-block)::)\\\\\\\\s*(python)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.codeblock.py\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"source.python\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"code-block-ruby\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+(code|code-block)::)\\\\\\\\s*(ruby)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.codeblock.ruby\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"source.ruby\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"code-block-yaml\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+(code|code-block)::)\\\\\\\\s*(ya?ml)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.codeblock.yaml\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"source.yaml\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"doctest\\\":{\\\"begin\\\":\\\"^(>>>)\\\\\\\\s*(.*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]}},\\\"end\\\":\\\"^\\\\\\\\s*$\\\"},\\\"doctest-block\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+doctest::)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"source.python\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"domain-auto\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+auto(?:class|module|exception|function|decorator|data|method|attribute|property)::)\\\\\\\\s*(.*)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control.py\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"#body\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"domain-cpp\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+(?:cpp|c):(?:class|struct|function|member|var|type|enum|enum-struct|enum-class|enumerator|union|concept)::)\\\\\\\\s*(?:(@\\\\\\\\w+)|(.*))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"#body\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"domain-js\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+js:\\\\\\\\w+::)\\\\\\\\s*(.*)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}},\\\"end\\\":\\\"^(?!\\\\\\\\1[ \\\\\\\\t]|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"#body\\\"}]},\\\"domain-py\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+py:(?:module|function|data|exception|class|attribute|property|method|staticmethod|classmethod|decorator|decoratormethod)::)\\\\\\\\s*(.*)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"#body\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"domains\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#domain-cpp\\\"},{\\\"include\\\":\\\"#domain-py\\\"},{\\\"include\\\":\\\"#domain-auto\\\"},{\\\"include\\\":\\\"#domain-js\\\"}]},\\\"escaped\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape\\\"},\\\"footnote\\\":{\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\.{2}\\\\\\\\s+\\\\\\\\[(?:[\\\\\\\\w\\\\\\\\.-]+|[#*]|#\\\\\\\\w+)\\\\\\\\]\\\\\\\\s+\\\",\\\"name\\\":\\\"entity.name.tag\\\"},\\\"footnote-ref\\\":{\\\"match\\\":\\\"\\\\\\\\[(?:[\\\\\\\\w\\\\\\\\.-]+|[#*])\\\\\\\\]_\\\",\\\"name\\\":\\\"entity.name.tag\\\"},\\\"ignore\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"'[`*]+'\\\"},{\\\"match\\\":\\\"<[`*]+>\\\"},{\\\"match\\\":\\\"{[`*]+}\\\"},{\\\"match\\\":\\\"\\\\\\\\([`*]+\\\\\\\\)\\\"},{\\\"match\\\":\\\"\\\\\\\\[[`*]+\\\\\\\\]\\\"},{\\\"match\\\":\\\"\\\\\\\"[`*]+\\\\\\\"\\\"}]},\\\"inline-markup\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped\\\"},{\\\"include\\\":\\\"#ignore\\\"},{\\\"include\\\":\\\"#ref\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#monospaced\\\"},{\\\"include\\\":\\\"#citation\\\"},{\\\"include\\\":\\\"#bold\\\"},{\\\"include\\\":\\\"#italic\\\"},{\\\"include\\\":\\\"#list\\\"},{\\\"include\\\":\\\"#macro\\\"},{\\\"include\\\":\\\"#reference\\\"},{\\\"include\\\":\\\"#footnote-ref\\\"}]},\\\"italic\\\":{\\\"begin\\\":\\\"(?<=[\\\\\\\\s\\\\\\\"'(\\\\\\\\[{<]|^)\\\\\\\\*[^\\\\\\\\s*]\\\",\\\"end\\\":\\\"\\\\\\\\*|^\\\\\\\\s*$\\\",\\\"name\\\":\\\"markup.italic\\\"},\\\"line-block\\\":{\\\"match\\\":\\\"^\\\\\\\\|\\\\\\\\s+\\\",\\\"name\\\":\\\"keyword.control\\\"},\\\"list\\\":{\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\d+\\\\\\\\.|\\\\\\\\* -|[a-zA-Z#]\\\\\\\\.|[iIvVxXmMcC]+\\\\\\\\.|\\\\\\\\(\\\\\\\\d+\\\\\\\\)|\\\\\\\\d+\\\\\\\\)|[*+-])\\\\\\\\s+\\\",\\\"name\\\":\\\"keyword.control\\\"},\\\"literal\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag\\\"}},\\\"match\\\":\\\"(:\\\\\\\\S+:)(`.*?`\\\\\\\\\\\\\\\\?)\\\"},\\\"literal-block\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(.*)(::)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#inline-markup\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"macro\\\":{\\\"match\\\":\\\"\\\\\\\\|[^\\\\\\\\|]+\\\\\\\\|\\\",\\\"name\\\":\\\"entity.name.tag\\\"},\\\"monospaced\\\":{\\\"begin\\\":\\\"(?<=[\\\\\\\\s\\\\\\\"'(\\\\\\\\[{<]|^)``[^\\\\\\\\s`]\\\",\\\"end\\\":\\\"``|^\\\\\\\\s*$\\\",\\\"name\\\":\\\"string.interpolated\\\"},\\\"options-list\\\":{\\\"match\\\":\\\"(?:(?:^|,\\\\\\\\s+)(?:[-+]\\\\\\\\w|--?[a-zA-Z][\\\\\\\\w-]+|/\\\\\\\\w+)(?:[ =](?:\\\\\\\\w+|<[^<>]+?>))?)+(?= |\\\\\\\\t|$)\\\",\\\"name\\\":\\\"variable.parameter\\\"},\\\"raw-html\\\":{\\\"begin\\\":\\\"^(\\\\\\\\s*)(\\\\\\\\.{2}\\\\\\\\s+raw\\\\\\\\s*::)\\\\\\\\s+(html)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.html\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-param\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"}],\\\"while\\\":\\\"^\\\\\\\\1(?=\\\\\\\\s)|^\\\\\\\\s*$\\\"},\\\"ref\\\":{\\\"begin\\\":\\\"(:ref:)`\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"`|^\\\\\\\\s*$\\\",\\\"name\\\":\\\"entity.name.tag\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"<.*?>\\\",\\\"name\\\":\\\"markup.underline.link\\\"}]},\\\"reference\\\":{\\\"match\\\":\\\"[\\\\\\\\w-]*[a-zA-Z\\\\\\\\d-]__?\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.tag\\\"},\\\"replace-include\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\.{2})\\\\\\\\s+(\\\\\\\\|[^\\\\\\\\|]+\\\\\\\\|)\\\\\\\\s+(replace::)\\\"},\\\"simple-table\\\":{\\\"match\\\":\\\"^[=\\\\\\\\s]+$\\\",\\\"name\\\":\\\"keyword.control.table\\\"},\\\"substitution\\\":{\\\"match\\\":\\\"^\\\\\\\\.{2}\\\\\\\\s*\\\\\\\\|([^|]+)\\\\\\\\|\\\",\\\"name\\\":\\\"entity.name.tag\\\"},\\\"table\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\+[=+-]+\\\\\\\\+\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.table\\\"}},\\\"end\\\":\\\"^(?![+|])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[=+|-]\\\",\\\"name\\\":\\\"keyword.control.table\\\"}]},\\\"title\\\":{\\\"match\\\":\\\"^(\\\\\\\\*{3,}|#{3,}|\\\\\\\\={3,}|~{3,}|\\\\\\\\+{3,}|-{3,}|`{3,}|\\\\\\\\^{3,}|:{3,}|\\\\\\\"{3,}|_{3,}|'{3,})$\\\",\\\"name\\\":\\\"markup.heading\\\"}},\\\"scopeName\\\":\\\"source.rst\\\",\\\"embeddedLangs\\\":[\\\"html-derivative\\\",\\\"cpp\\\",\\\"python\\\",\\\"javascript\\\",\\\"shellscript\\\",\\\"yaml\\\",\\\"cmake\\\",\\\"ruby\\\"]}\"))\n\nexport default [\n...html_derivative,\n...cpp,\n...python,\n...javascript,\n...shellscript,\n...yaml,\n...cmake,\n...ruby,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Rust\\\",\\\"name\\\":\\\"rust\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brackets.angle.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.brackets.square.rust\\\"}},\\\"comment\\\":\\\"boxed slice literal\\\",\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.brackets.angle.rust\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#gtypes\\\"},{\\\"include\\\":\\\"#lvariables\\\"},{\\\"include\\\":\\\"#lifetimes\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#types\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.macro.dollar.rust\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.crate.rust\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.metavariable.rust\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.key-value.rust\\\"},\\\"7\\\":{\\\"name\\\":\\\"variable.other.metavariable.specifier.rust\\\"}},\\\"comment\\\":\\\"macro type metavariables\\\",\\\"match\\\":\\\"(\\\\\\\\$)((crate)|([A-Z][A-Za-z0-9_]*))((:)(block|expr|ident|item|lifetime|literal|meta|path?|stmt|tt|ty|vis))?\\\",\\\"name\\\":\\\"meta.macro.metavariable.type.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.macro.dollar.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.metavariable.name.rust\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.key-value.rust\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.metavariable.specifier.rust\\\"}},\\\"comment\\\":\\\"macro metavariables\\\",\\\"match\\\":\\\"(\\\\\\\\$)([a-z][A-Za-z0-9_]*)((:)(block|expr|ident|item|lifetime|literal|meta|path?|stmt|tt|ty|vis))?\\\",\\\"name\\\":\\\"meta.macro.metavariable.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.macro.rules.rust\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.macro.rust\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.macro.rust\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.brackets.curly.rust\\\"}},\\\"comment\\\":\\\"macro rules\\\",\\\"match\\\":\\\"\\\\\\\\b(macro_rules!)\\\\\\\\s+(([a-z0-9_]+)|([A-Z][a-z0-9_]*))\\\\\\\\s+(\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.macro.rules.rust\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.module.rust\\\"}},\\\"comment\\\":\\\"modules\\\",\\\"match\\\":\\\"(mod)\\\\\\\\s+((?:r#(?!crate|[Ss]elf|super))?[a-z][A-Za-z0-9_]*)\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(extern)\\\\\\\\s+(crate)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.crate.rust\\\"}},\\\"comment\\\":\\\"external crate imports\\\",\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.semi.rust\\\"}},\\\"name\\\":\\\"meta.import.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(use)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.rust\\\"}},\\\"comment\\\":\\\"use statements\\\",\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.semi.rust\\\"}},\\\"name\\\":\\\"meta.use.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#namespaces\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#lvariables\\\"}]},{\\\"include\\\":\\\"#block-comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#lvariables\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#gtypes\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#lifetimes\\\"},{\\\"include\\\":\\\"#macros\\\"},{\\\"include\\\":\\\"#namespaces\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#variables\\\"}],\\\"repository\\\":{\\\"attributes\\\":{\\\"begin\\\":\\\"(#)(\\\\\\\\!?)(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.attribute.rust\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.brackets.attribute.rust\\\"}},\\\"comment\\\":\\\"attributes\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.brackets.attribute.rust\\\"}},\\\"name\\\":\\\"meta.attribute.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#lifetimes\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#gtypes\\\"},{\\\"include\\\":\\\"#types\\\"}]},\\\"block-comments\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"empty block comments\\\",\\\"match\\\":\\\"/\\\\\\\\*\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.rust\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*\\\",\\\"comment\\\":\\\"block documentation comments\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*(?!\\\\\\\\*)\\\",\\\"comment\\\":\\\"block comments\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.rust\\\"}},\\\"comment\\\":\\\"documentation comments\\\",\\\"match\\\":\\\"(///).*$\\\",\\\"name\\\":\\\"comment.line.documentation.rust\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.rust\\\"}},\\\"comment\\\":\\\"line comments\\\",\\\"match\\\":\\\"(//).*$\\\",\\\"name\\\":\\\"comment.line.double-slash.rust\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"ALL CAPS constants\\\",\\\"match\\\":\\\"\\\\\\\\b[A-Z]{2}[A-Z0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.caps.rust\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.caps.rust\\\"}},\\\"comment\\\":\\\"constant declarations\\\",\\\"match\\\":\\\"\\\\\\\\b(const)\\\\\\\\s+([A-Z][A-Za-z0-9_]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.dot.decimal.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.exponent.rust\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.exponent.sign.rust\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.decimal.exponent.mantissa.rust\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.numeric.rust\\\"}},\\\"comment\\\":\\\"decimal integers and floats\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d[\\\\\\\\d_]*(\\\\\\\\.?)[\\\\\\\\d_]*(?:(E|e)([+-]?)([\\\\\\\\d_]+))?(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.rust\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.numeric.rust\\\"}},\\\"comment\\\":\\\"hexadecimal integers\\\",\\\"match\\\":\\\"\\\\\\\\b0x[\\\\\\\\da-fA-F_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.rust\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.numeric.rust\\\"}},\\\"comment\\\":\\\"octal integers\\\",\\\"match\\\":\\\"\\\\\\\\b0o[0-7_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.oct.rust\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.numeric.rust\\\"}},\\\"comment\\\":\\\"binary integers\\\",\\\"match\\\":\\\"\\\\\\\\b0b[01_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.bin.rust\\\"},{\\\"comment\\\":\\\"booleans\\\",\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.bool.rust\\\"}]},\\\"escapes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.bit.rust\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.escape.unicode.rust\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.escape.unicode.punctuation.rust\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.escape.unicode.punctuation.rust\\\"}},\\\"comment\\\":\\\"escapes: ASCII, byte, Unicode, quote, regex\\\",\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)(?:(?:(x[0-7][\\\\\\\\da-fA-F])|(u(\\\\\\\\{)[\\\\\\\\da-fA-F]{4,6}(\\\\\\\\}))|.))\\\",\\\"name\\\":\\\"constant.character.escape.rust\\\"},\\\"functions\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.brackets.round.rust\\\"}},\\\"comment\\\":\\\"pub as a function\\\",\\\"match\\\":\\\"\\\\\\\\b(pub)(\\\\\\\\()\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(fn)\\\\\\\\s+((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)((\\\\\\\\()|(<))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.fn.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.rust\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.brackets.round.rust\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.brackets.angle.rust\\\"}},\\\"comment\\\":\\\"function definition\\\",\\\"end\\\":\\\"(\\\\\\\\{)|(;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brackets.curly.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.semi.rust\\\"}},\\\"name\\\":\\\"meta.function.definition.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#lvariables\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#gtypes\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#lifetimes\\\"},{\\\"include\\\":\\\"#macros\\\"},{\\\"include\\\":\\\"#namespaces\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#variables\\\"}]},{\\\"begin\\\":\\\"((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.brackets.round.rust\\\"}},\\\"comment\\\":\\\"function/method calls, chaining\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.brackets.round.rust\\\"}},\\\"name\\\":\\\"meta.function.call.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#lvariables\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#gtypes\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#lifetimes\\\"},{\\\"include\\\":\\\"#macros\\\"},{\\\"include\\\":\\\"#namespaces\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#variables\\\"}]},{\\\"begin\\\":\\\"((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)(?=::<.*>\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.rust\\\"}},\\\"comment\\\":\\\"function/method calls with turbofish\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.brackets.round.rust\\\"}},\\\"name\\\":\\\"meta.function.call.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#lvariables\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#gtypes\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#lifetimes\\\"},{\\\"include\\\":\\\"#macros\\\"},{\\\"include\\\":\\\"#namespaces\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#variables\\\"}]}]},\\\"gtypes\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"option types\\\",\\\"match\\\":\\\"\\\\\\\\b(Some|None)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.option.rust\\\"},{\\\"comment\\\":\\\"result types\\\",\\\"match\\\":\\\"\\\\\\\\b(Ok|Err)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.result.rust\\\"}]},\\\"interpolations\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.interpolation.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.interpolation.rust\\\"}},\\\"comment\\\":\\\"curly brace interpolations\\\",\\\"match\\\":\\\"({)[^\\\\\\\"{}]*(})\\\",\\\"name\\\":\\\"meta.interpolation.rust\\\"},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"control flow keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(await|break|continue|do|else|for|if|loop|match|return|try|while|yield)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.rust\\\"},{\\\"comment\\\":\\\"storage keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(extern|let|macro|mod)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.rust storage.type.rust\\\"},{\\\"comment\\\":\\\"const keyword\\\",\\\"match\\\":\\\"\\\\\\\\b(const)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.rust\\\"},{\\\"comment\\\":\\\"type keyword\\\",\\\"match\\\":\\\"\\\\\\\\b(type)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.declaration.type.rust storage.type.rust\\\"},{\\\"comment\\\":\\\"enum keyword\\\",\\\"match\\\":\\\"\\\\\\\\b(enum)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.declaration.enum.rust storage.type.rust\\\"},{\\\"comment\\\":\\\"trait keyword\\\",\\\"match\\\":\\\"\\\\\\\\b(trait)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.declaration.trait.rust storage.type.rust\\\"},{\\\"comment\\\":\\\"struct keyword\\\",\\\"match\\\":\\\"\\\\\\\\b(struct)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.declaration.struct.rust storage.type.rust\\\"},{\\\"comment\\\":\\\"storage modifiers\\\",\\\"match\\\":\\\"\\\\\\\\b(abstract|static)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.rust\\\"},{\\\"comment\\\":\\\"other keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(as|async|become|box|dyn|move|final|gen|impl|in|override|priv|pub|ref|typeof|union|unsafe|unsized|use|virtual|where)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.rust\\\"},{\\\"comment\\\":\\\"fn\\\",\\\"match\\\":\\\"\\\\\\\\bfn\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.fn.rust\\\"},{\\\"comment\\\":\\\"crate\\\",\\\"match\\\":\\\"\\\\\\\\bcrate\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.crate.rust\\\"},{\\\"comment\\\":\\\"mut\\\",\\\"match\\\":\\\"\\\\\\\\bmut\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.mut.rust\\\"},{\\\"comment\\\":\\\"logical operators\\\",\\\"match\\\":\\\"(\\\\\\\\^|\\\\\\\\||\\\\\\\\|\\\\\\\\||&&|<<|>>|!)(?!=)\\\",\\\"name\\\":\\\"keyword.operator.logical.rust\\\"},{\\\"comment\\\":\\\"logical AND, borrow references\\\",\\\"match\\\":\\\"&(?![&=])\\\",\\\"name\\\":\\\"keyword.operator.borrow.and.rust\\\"},{\\\"comment\\\":\\\"assignment operators\\\",\\\"match\\\":\\\"(\\\\\\\\+=|-=|\\\\\\\\*=|/=|%=|\\\\\\\\^=|&=|\\\\\\\\|=|<<=|>>=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.rust\\\"},{\\\"comment\\\":\\\"single equal\\\",\\\"match\\\":\\\"(?<![<>])=(?!=|>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.equal.rust\\\"},{\\\"comment\\\":\\\"comparison operators\\\",\\\"match\\\":\\\"(=(=)?(?!>)|!=|<=|(?<!=)>=)\\\",\\\"name\\\":\\\"keyword.operator.comparison.rust\\\"},{\\\"comment\\\":\\\"math operators\\\",\\\"match\\\":\\\"(([+%]|(\\\\\\\\*(?!\\\\\\\\w)))(?!=))|(-(?!>))|(/(?!/))\\\",\\\"name\\\":\\\"keyword.operator.math.rust\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brackets.round.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.brackets.square.rust\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.brackets.curly.rust\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.comparison.rust\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.brackets.round.rust\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.brackets.square.rust\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.brackets.curly.rust\\\"}},\\\"comment\\\":\\\"less than, greater than (special case)\\\",\\\"match\\\":\\\"(?:\\\\\\\\b|(?:(\\\\\\\\))|(\\\\\\\\])|(\\\\\\\\})))[ \\\\\\\\t]+([<>])[ \\\\\\\\t]+(?:\\\\\\\\b|(?:(\\\\\\\\()|(\\\\\\\\[)|(\\\\\\\\{)))\\\"},{\\\"comment\\\":\\\"namespace operator\\\",\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"keyword.operator.namespace.rust\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.dereference.rust\\\"}},\\\"comment\\\":\\\"dereference asterisk\\\",\\\"match\\\":\\\"(\\\\\\\\*)(?=\\\\\\\\w+)\\\"},{\\\"comment\\\":\\\"subpattern binding\\\",\\\"match\\\":\\\"@\\\",\\\"name\\\":\\\"keyword.operator.subpattern.rust\\\"},{\\\"comment\\\":\\\"dot access\\\",\\\"match\\\":\\\"\\\\\\\\.(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.operator.access.dot.rust\\\"},{\\\"comment\\\":\\\"ranges, range patterns\\\",\\\"match\\\":\\\"\\\\\\\\.{2}(=|\\\\\\\\.)?\\\",\\\"name\\\":\\\"keyword.operator.range.rust\\\"},{\\\"comment\\\":\\\"colon\\\",\\\"match\\\":\\\":(?!:)\\\",\\\"name\\\":\\\"keyword.operator.key-value.rust\\\"},{\\\"comment\\\":\\\"dashrocket, skinny arrow\\\",\\\"match\\\":\\\"->|<-\\\",\\\"name\\\":\\\"keyword.operator.arrow.skinny.rust\\\"},{\\\"comment\\\":\\\"hashrocket, fat arrow\\\",\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"keyword.operator.arrow.fat.rust\\\"},{\\\"comment\\\":\\\"dollar macros\\\",\\\"match\\\":\\\"\\\\\\\\$\\\",\\\"name\\\":\\\"keyword.operator.macro.dollar.rust\\\"},{\\\"comment\\\":\\\"question mark operator, questionably sized, macro kleene matcher\\\",\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.question.rust\\\"}]},\\\"lifetimes\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.lifetime.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.lifetime.rust\\\"}},\\\"comment\\\":\\\"named lifetime parameters\\\",\\\"match\\\":\\\"(['])([a-zA-Z_][0-9a-zA-Z_]*)(?!['])\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.borrow.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.lifetime.rust\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.lifetime.rust\\\"}},\\\"comment\\\":\\\"borrowing references to named lifetimes\\\",\\\"match\\\":\\\"(\\\\\\\\&)(['])([a-zA-Z_][0-9a-zA-Z_]*)(?!['])\\\\\\\\b\\\"}]},\\\"lvariables\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"self\\\",\\\"match\\\":\\\"\\\\\\\\b[Ss]elf\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.self.rust\\\"},{\\\"comment\\\":\\\"super\\\",\\\"match\\\":\\\"\\\\\\\\bsuper\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.super.rust\\\"}]},\\\"macros\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.macro.rust\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.macro.rust\\\"}},\\\"comment\\\":\\\"macros\\\",\\\"match\\\":\\\"(([a-z_][A-Za-z0-9_]*!)|([A-Z_][A-Za-z0-9_]*!))\\\",\\\"name\\\":\\\"meta.macro.rust\\\"}]},\\\"namespaces\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.namespace.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.namespace.rust\\\"}},\\\"comment\\\":\\\"namespace (non-type, non-function path segment)\\\",\\\"match\\\":\\\"(?<![A-Za-z0-9_])([A-Za-z0-9_]+)((?<!super|self)::)\\\"}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"comma\\\",\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.comma.rust\\\"},{\\\"comment\\\":\\\"curly braces\\\",\\\"match\\\":\\\"[{}]\\\",\\\"name\\\":\\\"punctuation.brackets.curly.rust\\\"},{\\\"comment\\\":\\\"parentheses, round brackets\\\",\\\"match\\\":\\\"[()]\\\",\\\"name\\\":\\\"punctuation.brackets.round.rust\\\"},{\\\"comment\\\":\\\"semicolon\\\",\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.semi.rust\\\"},{\\\"comment\\\":\\\"square brackets\\\",\\\"match\\\":\\\"[\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"punctuation.brackets.square.rust\\\"},{\\\"comment\\\":\\\"angle brackets\\\",\\\"match\\\":\\\"(?<!=)[<>]\\\",\\\"name\\\":\\\"punctuation.brackets.angle.rust\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(b?)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.byte.raw.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.rust\\\"}},\\\"comment\\\":\\\"double-quoted strings and byte strings\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.rust\\\"}},\\\"name\\\":\\\"string.quoted.double.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"},{\\\"include\\\":\\\"#interpolations\\\"}]},{\\\"begin\\\":\\\"(b?r)(#*)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.byte.raw.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.rust\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.rust\\\"}},\\\"comment\\\":\\\"double-quoted raw strings and raw byte strings\\\",\\\"end\\\":\\\"(\\\\\\\")(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.raw.rust\\\"}},\\\"name\\\":\\\"string.quoted.double.rust\\\"},{\\\"begin\\\":\\\"(b)?(')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.byte.raw.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.char.rust\\\"}},\\\"comment\\\":\\\"characters and bytes\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.char.rust\\\"}},\\\"name\\\":\\\"string.quoted.single.char.rust\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escapes\\\"}]}]},\\\"types\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.numeric.rust\\\"}},\\\"comment\\\":\\\"numeric types\\\",\\\"match\\\":\\\"(?<![A-Za-z])(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(_?[A-Z][A-Za-z0-9_]*)(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.brackets.angle.rust\\\"}},\\\"comment\\\":\\\"parameterized types\\\",\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.brackets.angle.rust\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#lvariables\\\"},{\\\"include\\\":\\\"#lifetimes\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#variables\\\"}]},{\\\"comment\\\":\\\"primitive types\\\",\\\"match\\\":\\\"\\\\\\\\b(bool|char|str)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.primitive.rust\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.trait.rust storage.type.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.trait.rust\\\"}},\\\"comment\\\":\\\"trait declarations\\\",\\\"match\\\":\\\"\\\\\\\\b(trait)\\\\\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.struct.rust storage.type.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.struct.rust\\\"}},\\\"comment\\\":\\\"struct declarations\\\",\\\"match\\\":\\\"\\\\\\\\b(struct)\\\\\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.enum.rust storage.type.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.enum.rust\\\"}},\\\"comment\\\":\\\"enum declarations\\\",\\\"match\\\":\\\"\\\\\\\\b(enum)\\\\\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.type.rust storage.type.rust\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.declaration.rust\\\"}},\\\"comment\\\":\\\"type declarations\\\",\\\"match\\\":\\\"\\\\\\\\b(type)\\\\\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\\\\\b\\\"},{\\\"comment\\\":\\\"types\\\",\\\"match\\\":\\\"\\\\\\\\b_?[A-Z][A-Za-z0-9_]*\\\\\\\\b(?!!)\\\",\\\"name\\\":\\\"entity.name.type.rust\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"variables\\\",\\\"match\\\":\\\"\\\\\\\\b(?<!(?<!\\\\\\\\.)\\\\\\\\.)(?:r#(?!(crate|[Ss]elf|super)))?[a-z0-9_]+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.rust\\\"}]}},\\\"scopeName\\\":\\\"source.rust\\\",\\\"aliases\\\":[\\\"rs\\\"]}\"))\n\nexport default [\nlang\n]\n", "import sql from './sql.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"SAS\\\",\\\"fileTypes\\\":[\\\"sas\\\"],\\\"foldingStartMarker\\\":\\\"(?i:(proc|data|%macro).*;$)\\\",\\\"foldingStopMarker\\\":\\\"(?i:(run|quit|%mend)\\\\\\\\s?);\\\",\\\"name\\\":\\\"sas\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#starComment\\\"},{\\\"include\\\":\\\"#blockComment\\\"},{\\\"include\\\":\\\"#macro\\\"},{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#quote\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(?i:(data))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.sas\\\"}},\\\"comment\\\":\\\"Begins a DATA step and provides names for any output SAS data sets, views, or programs.\\\",\\\"end\\\":\\\"(;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#blockComment\\\"},{\\\"include\\\":\\\"#dataSet\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.sas\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.sas\\\"}},\\\"match\\\":\\\"(?i:(?:(stack|pgm|view|source)\\\\\\\\s?=\\\\\\\\s?)|(debug|nesting|nolist))\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(?i:(set|update|modify|merge))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.sas\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.sas\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.class.sas\\\"}},\\\"comment\\\":\\\"DATA set File-Handling Statements for DATA step\\\",\\\"end\\\":\\\"(;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#blockComment\\\"},{\\\"include\\\":\\\"#dataSet\\\"}]},{\\\"match\\\":\\\"(?i:\\\\\\\\b(if|while|until|for|do|end|then|else|run|quit|cancel|options)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.control.sas\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.sas\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.sas\\\"}},\\\"match\\\":\\\"(?i:(%(bquote|do|else|end|eval|global|goto|if|inc|include|index|input|length|let|list|local|lowcase|macro|mend|nrbquote|nrquote|nrstr|put|qscan|qsysfunc|quote|run|scan|str|substr|syscall|sysevalf|sysexec|sysfunc|sysrc|then|to|unquote|upcase|until|while|window)\\\\\\\\b))\\\\\\\\s*(\\\\\\\\w*)\\\",\\\"name\\\":\\\"keyword.other.sas\\\"},{\\\"begin\\\":\\\"(?i:\\\\\\\\b(proc\\\\\\\\s*(sql))\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.sas\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.class.sas\\\"}},\\\"comment\\\":\\\"Looks like for this to work there must be a *name* as well as the patterns/include bit.\\\",\\\"end\\\":\\\"(?i:\\\\\\\\b(quit)\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.sas\\\"}},\\\"name\\\":\\\"meta.sql.sas\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#starComment\\\"},{\\\"include\\\":\\\"#blockComment\\\"},{\\\"include\\\":\\\"source.sql\\\"}]},{\\\"match\\\":\\\"(?i:\\\\\\\\b(by|label|format)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.datastep.sas\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.sas\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.class.sas\\\"}},\\\"match\\\":\\\"(?i:\\\\\\\\b(proc (\\\\\\\\w+))\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.function-call.sas\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(_n_|_error_)\\\\\\\\b)\\\",\\\"name\\\":\\\"variable.language.sas\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.sas\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?i:(_all_|_character_|_cmd_|_freq_|_i_|_infile_|_last_|_msg_|_null_|_numeric_|_temporary_|_type_|abort|abs|addr|adjrsq|airy|alpha|alter|altlog|altprint|and|arcos|array|arsin|as|atan|attrc|attrib|attrn|authserver|autoexec|awscontrol|awsdef|awsmenu|awsmenumerge|awstitle|backward|band|base|betainv|between|blocksize|blshift|bnot|bor|brshift|bufno|bufsize|bxor|by|byerr|byline|byte|calculated|call|cards|cards4|case|catcache|cbufno|cdf|ceil|center|cexist|change|chisq|cinv|class|cleanup|close|cnonct|cntllev|coalesce|codegen|col|collate|collin|column|comamid|comaux1|comaux2|comdef|compbl|compound|compress|config|continue|convert|cos|cosh|cpuid|create|cross|crosstab|css|curobs|cv|daccdb|daccdbsl|daccsl|daccsyd|dacctab|dairy|datalines|datalines4|date|datejul|datepart|datetime|day|dbcslang|dbcstype|dclose|ddm|delete|delimiter|depdb|depdbsl|depsl|depsyd|deptab|dequote|descending|descript|design=|device|dflang|dhms|dif|digamma|dim|dinfo|display|distinct|dkricond|dkrocond|dlm|dnum|do|dopen|doptname|doptnum|dread|drop|dropnote|dsname|dsnferr|echo|else|emaildlg|emailid|emailpw|emailserver|emailsys|encrypt|end|endsas|engine|eof|eov|erf|erfc|error|errorcheck|errors|exist|exp|fappend|fclose|fcol|fdelete|feedback|fetch|fetchobs|fexist|fget|file|fileclose|fileexist|filefmt|filename|fileref|filevar|finfo|finv|fipname|fipnamel|fipstate|first|firstobs|floor|fmterr|fmtsearch|fnonct|fnote|font|fontalias|footnote[1-9]?|fopen|foptname|foptnum|force|formatted|formchar|formdelim|formdlim|forward|fpoint|fpos|fput|fread|frewind|frlen|from|fsep|full|fullstimer|fuzz|fwrite|gaminv|gamma|getoption|getvarc|getvarn|go|goto|group|gwindow|hbar|hbound|helpenv|helploc|hms|honorappearance|hosthelp|hostprint|hour|hpct|html|hvar|ibessel|ibr|id|if|index|indexc|indexw|infile|informat|initcmd|initstmt|inner|input|inputc|inputn|inr|insert|int|intck|intnx|into|intrr|invaliddata|irr|is|jbessel|join|juldate|keep|kentb|kurtosis|label|lag|last|lbound|leave|left|length|levels|lgamma|lib|libname|library|libref|line|linesize|link|list|log|log10|log2|logpdf|logpmf|logsdf|lostcard|lowcase|lrecl|ls|macro|macrogen|maps|mautosource|max|maxdec|maxr|mdy|mean|measures|median|memtype|merge|merror|min|minute|missing|missover|mlogic|mod|mode|model|modify|month|mopen|mort|mprint|mrecall|msglevel|msymtabmax|mvarsize|myy|n|nest|netpv|new|news|nmiss|no|nobatch|nobs|nocaps|nocardimage|nocenter|nocharcode|nocmdmac|nocol|nocum|nodate|nodbcs|nodetails|nodmr|nodms|nodmsbatch|nodup|nodupkey|noduplicates|noechoauto|noequals|noerrorabend|noexitwindows|nofullstimer|noicon|noimplmac|noint|nolist|noloadlist|nomiss|nomlogic|nomprint|nomrecall|nomsgcase|nomstored|nomultenvappl|nonotes|nonumber|noobs|noovp|nopad|nopercent|noprint|noprintinit|normal|norow|norsasuser|nosetinit|nosource|nosource2|nosplash|nosymbolgen|note|notes|notitle|notitles|notsorted|noverbose|noxsync|noxwait|npv|null|number|numkeys|nummousekeys|nway|obs|ods|on|open|option|order|ordinal|otherwise|out|outer|outp=|output|over|ovp|p(1|5|10|25|50|75|90|95|99)|pad|pad2|page|pageno|pagesize|paired|parm|parmcards|path|pathdll|pathname|pdf|peek|peekc|pfkey|pmf|point|poisson|poke|position|printer|probbeta|probbnml|probchi|probf|probgam|probhypr|probit|probnegb|probnorm|probsig|probt|procleave|project|prt|propcase|prxmatch|prxparse|prxchange|prxposn|ps|put|putc|putn|pw|pwreq|qtr|quote|r|ranbin|rancau|ranexp|rangam|range|ranks|rannor|ranpoi|rantbl|rantri|ranuni|read|recfm|register|regr|remote|remove|rename|repeat|replace|resolve|retain|return|reuse|reverse|rewind|right|round|rsquare|rtf|rtrace|rtraceloc|s|s2|samploc|sasautos|sascontrol|sasfrscr|sashelp|sasmsg|sasmstore|sasscript|sasuser|saving|scan|sdf|second|select|selection|separated|seq|serror|set|setcomm|setot|sign|simple|sin|sinh|siteinfo|skewness|skip|sle|sls|sortedby|sortpgm|sortseq|sortsize|soundex|source2|spedis|splashlocation|split|spool|sqrt|start|std|stderr|stdin|stfips|stimer|stname|stnamel|stop|stopover|strip|subgroup|subpopn|substr|sum|sumwgt|symbol|symbolgen|symget|symput|sysget|sysin|sysleave|sysmsg|sysparm|sysprint|sysprintfont|sysprod|sysrc|system|t|table|tables|tan|tanh|tapeclose|tbufsize|terminal|test|then|time|timepart|tinv|title[1-9]?|tnonct|to|today|tol|tooldef|totper|transformout|translate|trantab|tranwrd|trigamma|trim|trimn|trunc|truncover|type|unformatted|uniform|union|until|upcase|update|user|usericon|uss|validate|value|var|varfmt|varinfmt|varlabel|varlen|varname|varnum|varray|varrayx|vartype|verify|vformat|vformatd|vformatdx|vformatn|vformatnx|vformatw|vformatwx|vformatx|vinarray|vinarrayx|vinformat|vinformatd|vinformatdx|vinformatn|vinformatnx|vinformatw|vinformatwx|vinformatx|vlabel|vlabelx|vlength|vlengthx|vname|vnamex|vnferr|vtype|vtypex|weekday|weight|when|where|while|wincharset|window|work|workinit|workterm|write|wsum|wsumx|x|xsync|xwait|year|yearcutoff|yes|yyq|zipfips|zipname|zipnamel|zipstate))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sas\\\"}],\\\"repository\\\":{\\\"blockComment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"name\\\":\\\"comment.block.slashstar.sas\\\"}]},\\\"constant\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"numeric constant\\\",\\\"match\\\":\\\"(?<![&\\\\\\\\}])\\\\\\\\b[0-9]*\\\\\\\\.?[0-9]+([eEdD][-+]?[0-9]+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.sas\\\"},{\\\"comment\\\":\\\"single quote numeric-type constant\\\",\\\"match\\\":\\\"(')([^']+)(')(dt|[dt])\\\",\\\"name\\\":\\\"constant.numeric.quote.single.sas\\\"},{\\\"comment\\\":\\\"double quote numeric-type constant\\\",\\\"match\\\":\\\"(\\\\\\\")([^\\\\\\\"]+)(\\\\\\\")(dt|[dt])\\\",\\\"name\\\":\\\"constant.numeric.quote.double.sas\\\"}]},\\\"dataSet\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((\\\\\\\\w+)\\\\\\\\.)?(\\\\\\\\w+)\\\\\\\\s?\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.libref.sas\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.class.dsname.sas\\\"}},\\\"comment\\\":\\\"data set with options\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#dataSetOptions\\\"},{\\\"include\\\":\\\"#blockComment\\\"},{\\\"include\\\":\\\"#macro\\\"},{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#quote\\\"},{\\\"include\\\":\\\"#operator\\\"}]},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.libref.sas\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.class.dsname.sas\\\"}},\\\"comment\\\":\\\"data set without options\\\",\\\"match\\\":\\\"\\\\\\\\b((\\\\\\\\w+)\\\\\\\\.)?(\\\\\\\\w+)\\\\\\\\b\\\"}]},\\\"dataSetOptions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\s|\\\\\\\\(|\\\\\\\\))(?i:ALTER|BUFNO|BUFSIZE|CNTLLEV|COMPRESS|DLDMGACTION|ENCRYPT|ENCRYPTKEY|EXTENDOBSCOUNTER|GENMAX|GENNUM|INDEX|LABEL|OBSBUF|OUTREP|PW|PWREQ|READ|REPEMPTY|REPLACE|REUSE|ROLE|SORTEDBY|SPILL|TOBSNO|TYPE|WRITE|FILECLOSE|FIRSTOBS|IN|OBS|POINTOBS|WHERE|WHEREUP|IDXNAME|IDXWHERE|DROP|KEEP|RENAME)\\\\\\\\s?=\\\",\\\"name\\\":\\\"keyword.other.sas\\\"}]},\\\"macro\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(&+(?i:[a-z_]([a-z0-9_]+)?)(\\\\\\\\.+)?)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.macro.sas\\\"}]},\\\"operator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\^\\\\\\\\/])\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.sas\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:(eq|ne|gt|lt|ge|le|in|not|&|and|or|min|max))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.comparison.sas\\\"},{\\\"match\\\":\\\"([\u00AC<>^~]?=(:)?|>|<|\\\\\\\\||!|\u00A6|\u00AC|^|~|<>|><|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.sas\\\"}]},\\\"quote\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!%)(')\\\",\\\"comment\\\":\\\"single quoted string block\\\",\\\"end\\\":\\\"(')([bx])?\\\",\\\"name\\\":\\\"string.quoted.single.sas\\\"},{\\\"begin\\\":\\\"(\\\\\\\")\\\",\\\"comment\\\":\\\"double quoted string block\\\",\\\"end\\\":\\\"(\\\\\\\")([bx])?\\\",\\\"name\\\":\\\"string.quoted.double.sas\\\"}]},\\\"starComment\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#blockcomment\\\"},{\\\"begin\\\":\\\"(?<=;)[\\\\\\\\s%]*\\\\\\\\*\\\",\\\"end\\\":\\\";\\\",\\\"name\\\":\\\"comment.line.inline.star.sas\\\"},{\\\"begin\\\":\\\"^[\\\\\\\\s%]*\\\\\\\\*\\\",\\\"end\\\":\\\";\\\",\\\"name\\\":\\\"comment.line.start.sas\\\"}]}},\\\"scopeName\\\":\\\"source.sas\\\",\\\"embeddedLangs\\\":[\\\"sql\\\"]}\"))\n\nexport default [\n...sql,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Sass\\\",\\\"fileTypes\\\":[\\\"sass\\\"],\\\"foldingStartMarker\\\":\\\"/\\\\\\\\*|^#|^\\\\\\\\*|^\\\\\\\\b|*#?region|^\\\\\\\\.\\\",\\\"foldingStopMarker\\\":\\\"\\\\\\\\*/|*#?endregion|^\\\\\\\\s*$\\\",\\\"name\\\":\\\"sass\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"^(\\\\\\\\s*)(/\\\\\\\\*)\\\",\\\"end\\\":\\\"(\\\\\\\\*/)|^(?!\\\\\\\\s\\\\\\\\1)\\\",\\\"name\\\":\\\"comment.block.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-tag\\\"},{\\\"include\\\":\\\"#comment-param\\\"}]},{\\\"match\\\":\\\"^[\\\\\\\\t ]*/?//[\\\\\\\\t ]*[SRI][\\\\\\\\t ]*$\\\",\\\"name\\\":\\\"keyword.other.sass.formatter.action\\\"},{\\\"begin\\\":\\\"^[\\\\\\\\t ]*//[\\\\\\\\t ]*(import)[\\\\\\\\t ]*(css-variables)[\\\\\\\\t ]*(from)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control\\\"}},\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.import.css.variables\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import-quotes\\\"}]},{\\\"include\\\":\\\"#double-slash\\\"},{\\\"include\\\":\\\"#double-quoted\\\"},{\\\"include\\\":\\\"#single-quoted\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#curly-brackets\\\"},{\\\"include\\\":\\\"#placeholder-selector\\\"},{\\\"begin\\\":\\\"\\\\\\\\$[a-zA-Z0-9_-]+(?=:)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"variable.other.name\\\"}},\\\"end\\\":\\\"$\\\\\\\\n?|(?=\\\\\\\\)\\\\\\\\s\\\\\\\\)|\\\\\\\\)\\\\\\\\n)\\\",\\\"name\\\":\\\"sass.script.maps\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-slash\\\"},{\\\"include\\\":\\\"#double-quoted\\\"},{\\\"include\\\":\\\"#single-quoted\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#rgb-value\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#unit\\\"},{\\\"include\\\":\\\"#flag\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#function-content\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#reserved-words\\\"},{\\\"include\\\":\\\"#parent-selector\\\"},{\\\"include\\\":\\\"#property-value\\\"},{\\\"include\\\":\\\"#semicolon\\\"},{\\\"include\\\":\\\"#dotdotdot\\\"}]},{\\\"include\\\":\\\"#variable-root\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#unit\\\"},{\\\"include\\\":\\\"#flag\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#semicolon\\\"},{\\\"include\\\":\\\"#dotdotdot\\\"},{\\\"begin\\\":\\\"@include|\\\\\\\\+(?!\\\\\\\\W|\\\\\\\\d)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.css.sass\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n|\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.name.sass.library\\\"},{\\\"begin\\\":\\\"^(@use)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.css.sass.use\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"sass.use\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"as|with\\\",\\\"name\\\":\\\"support.type.css.sass\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#unit\\\"},{\\\"include\\\":\\\"#variable-root\\\"},{\\\"include\\\":\\\"#rgb-value\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#parenthesis-open\\\"},{\\\"include\\\":\\\"#parenthesis-close\\\"},{\\\"include\\\":\\\"#colon\\\"},{\\\"include\\\":\\\"#import-quotes\\\"}]},{\\\"begin\\\":\\\"^@import(.*?)( as.*)?$\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.css.sass\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"keyword.control.at-rule.use\\\"},{\\\"begin\\\":\\\"@mixin|^[\\\\\\\\t ]*=|@function\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.at-rule.css.sass\\\"}},\\\"end\\\":\\\"$\\\\\\\\n?|(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.name.sass\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[\\\\\\\\w-]+\\\",\\\"name\\\":\\\"entity.name.function\\\"}]},{\\\"begin\\\":\\\"@\\\",\\\"end\\\":\\\"$\\\\\\\\n?|\\\\\\\\s(?!(all|braille|embossed|handheld|print|projection|screen|speech|tty|tv|if|only|not)(\\\\\\\\s|,))\\\",\\\"name\\\":\\\"keyword.control.at-rule.css.sass\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\-|\\\\\\\\()\\\\\\\\b(a|abbr|acronym|address|applet|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|datalist|dd|del|details|dfn|dialog|div|dl|dt|em|embed|eventsource|fieldset|figure|figcaption|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|label|legend|li|link|map|mark|menu|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|picture|pre|progress|q|samp|script|section|select|small|source|span|strike|strong|style|sub|summary|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video|main|svg|rect|ruby|center|circle|ellipse|line|polyline|polygon|path|text|u|slot)\\\\\\\\b(?!-|\\\\\\\\)|:\\\\\\\\s)|&\\\",\\\"end\\\":\\\"$\\\\\\\\n?|(?=\\\\\\\\s|,|\\\\\\\\(|\\\\\\\\)|\\\\\\\\.|\\\\\\\\#|\\\\\\\\[|>|-|_)\\\",\\\"name\\\":\\\"entity.name.tag.css.sass.symbol\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#pseudo-class\\\"}]},{\\\"begin\\\":\\\"#\\\",\\\"end\\\":\\\"$\\\\\\\\n?|(?=\\\\\\\\s|,|\\\\\\\\(|\\\\\\\\)|\\\\\\\\.|\\\\\\\\[|>)\\\",\\\"name\\\":\\\"entity.other.attribute-name.id.css.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#pseudo-class\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\.|(?<=&)(-|_)\\\",\\\"end\\\":\\\"$\\\\\\\\n?|(?=\\\\\\\\s|,|\\\\\\\\(|\\\\\\\\)|\\\\\\\\[|>)\\\",\\\"name\\\":\\\"entity.other.attribute-name.class.css.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#pseudo-class\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"entity.other.attribute-selector.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-quoted\\\"},{\\\"include\\\":\\\"#single-quoted\\\"},{\\\"match\\\":\\\"\\\\\\\\^|\\\\\\\\$|\\\\\\\\*|~\\\",\\\"name\\\":\\\"keyword.other.regex.sass\\\"}]},{\\\"match\\\":\\\"^((?<=\\\\\\\\]|\\\\\\\\)|not\\\\\\\\(|\\\\\\\\*|>|>\\\\\\\\s)|\\\\n*):[a-z:-]+|(::|:-)[a-z:-]+\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css.sass\\\"},{\\\"include\\\":\\\"#module\\\"},{\\\"match\\\":\\\"[\\\\\\\\w-]*\\\\\\\\(\\\",\\\"name\\\":\\\"entity.name.function\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"entity.name.function.close\\\"},{\\\"begin\\\":\\\":\\\",\\\"end\\\":\\\"$\\\\\\\\n?|(?=\\\\\\\\s\\\\\\\\(|and\\\\\\\\(|\\\\\\\\),)\\\",\\\"name\\\":\\\"meta.property-list.css.sass.prop\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=:)[a-z-]+\\\\\\\\s\\\",\\\"name\\\":\\\"support.type.property-name.css.sass.prop.name\\\"},{\\\"include\\\":\\\"#double-slash\\\"},{\\\"include\\\":\\\"#double-quoted\\\"},{\\\"include\\\":\\\"#single-quoted\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#curly-brackets\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#rgb-value\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#unit\\\"},{\\\"include\\\":\\\"#module\\\"},{\\\"match\\\":\\\"--.+?(?=\\\\\\\\))\\\",\\\"name\\\":\\\"variable.css\\\"},{\\\"match\\\":\\\"[\\\\\\\\w-]*\\\\\\\\(\\\",\\\"name\\\":\\\"entity.name.function\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"entity.name.function.close\\\"},{\\\"include\\\":\\\"#flag\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#semicolon\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#function-content\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#parent-selector\\\"},{\\\"include\\\":\\\"#property-value\\\"}]},{\\\"include\\\":\\\"#rgb-value\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#function-content\\\"},{\\\"begin\\\":\\\"(?<=})(?!\\\\\\\\n|\\\\\\\\(|\\\\\\\\)|[a-zA-Z0-9_-]+:)\\\",\\\"end\\\":\\\"\\\\\\\\s|(?=,|\\\\\\\\.|\\\\\\\\[|\\\\\\\\)|\\\\\\\\n)\\\",\\\"name\\\":\\\"entity.name.tag.css.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#pseudo-class\\\"}]},{\\\"include\\\":\\\"#operator\\\"},{\\\"match\\\":\\\"[a-z-]+((?=:|#{))\\\",\\\"name\\\":\\\"support.type.property-name.css.sass.prop.name\\\"},{\\\"include\\\":\\\"#reserved-words\\\"},{\\\"include\\\":\\\"#property-value\\\"}],\\\"repository\\\":{\\\"colon\\\":{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"meta.property-list.css.sass.colon\\\"},\\\"comma\\\":{\\\"match\\\":\\\"\\\\\\\\band\\\\\\\\b|\\\\\\\\bor\\\\\\\\b|,\\\",\\\"name\\\":\\\"comment.punctuation.comma.sass\\\"},\\\"comment-param\\\":{\\\"match\\\":\\\"\\\\\\\\@(\\\\\\\\w+)\\\",\\\"name\\\":\\\"storage.type.class.jsdoc\\\"},\\\"comment-tag\\\":{\\\"begin\\\":\\\"(?<={{)\\\",\\\"end\\\":\\\"(?=}})\\\",\\\"name\\\":\\\"comment.tag.sass\\\"},\\\"curly-brackets\\\":{\\\"match\\\":\\\"{|}\\\",\\\"name\\\":\\\"invalid\\\"},\\\"dotdotdot\\\":{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"variable.other\\\"},\\\"double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.css.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#quoted-interpolation\\\"}]},\\\"double-slash\\\":{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-tag\\\"}]},\\\"flag\\\":{\\\"match\\\":\\\"!(important|default|optional|global)\\\",\\\"name\\\":\\\"keyword.other.important.css.sass\\\"},\\\"function\\\":{\\\"match\\\":\\\"(?<=[\\\\\\\\s|\\\\\\\\(|,|:])(?!url|format|attr)[a-zA-Z0-9_-][\\\\\\\\w-]*(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.name.sass\\\"},\\\"function-content\\\":{\\\"begin\\\":\\\"(?<=url\\\\\\\\(|format\\\\\\\\(|attr\\\\\\\\()\\\",\\\"end\\\":\\\".(?=\\\\\\\\))\\\",\\\"name\\\":\\\"string.quoted.double.css.sass\\\"},\\\"import-quotes\\\":{\\\"match\\\":\\\"[\\\\\\\"']?\\\\\\\\.{0,2}[\\\\\\\\w/]+[\\\\\\\"']?\\\",\\\"name\\\":\\\"constant.character.css.sass\\\"},\\\"interpolation\\\":{\\\"begin\\\":\\\"#{\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"support.function.interpolation.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#unit\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#double-quoted\\\"},{\\\"include\\\":\\\"#single-quoted\\\"}]},\\\"module\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.module.name\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.module.dot\\\"}},\\\"match\\\":\\\"([\\\\\\\\w-]+?)(\\\\\\\\.)\\\",\\\"name\\\":\\\"constant.character.module\\\"},\\\"numeric\\\":{\\\"match\\\":\\\"(-|\\\\\\\\.)?[0-9]+(\\\\\\\\.[0-9]+)?\\\",\\\"name\\\":\\\"constant.numeric.css.sass\\\"},\\\"operator\\\":{\\\"match\\\":\\\"\\\\\\\\+|\\\\\\\\s-\\\\\\\\s|\\\\\\\\s-(?=\\\\\\\\$)|(?<=\\\\\\\\()-(?=\\\\\\\\$)|\\\\\\\\s-(?=\\\\\\\\()|\\\\\\\\*|/|%|=|!|<|>|~\\\",\\\"name\\\":\\\"keyword.operator.sass\\\"},\\\"parent-selector\\\":{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"entity.name.tag.css.sass\\\"},\\\"parenthesis-close\\\":{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"entity.name.function.parenthesis.close\\\"},\\\"parenthesis-open\\\":{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"entity.name.function.parenthesis.open\\\"},\\\"placeholder-selector\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\d)%(?!\\\\\\\\d)\\\",\\\"end\\\":\\\"$\\\\\\\\n?|\\\\\\\\s\\\",\\\"name\\\":\\\"entity.other.inherited-class.placeholder-selector.css.sass\\\"},\\\"property-value\\\":{\\\"match\\\":\\\"[a-zA-Z0-9_-]+\\\",\\\"name\\\":\\\"meta.property-value.css.sass support.constant.property-value.css.sass\\\"},\\\"pseudo-class\\\":{\\\"match\\\":\\\":[a-z:-]+\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css.sass\\\"},\\\"quoted-interpolation\\\":{\\\"begin\\\":\\\"#{\\\",\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"support.function.interpolation.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#unit\\\"},{\\\"include\\\":\\\"#comma\\\"}]},\\\"reserved-words\\\":{\\\"match\\\":\\\"\\\\\\\\b(false|from|in|not|null|through|to|true)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.property-name.css.sass\\\"},\\\"rgb-value\\\":{\\\"match\\\":\\\"(#)([0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.color.rgb-value.css.sass\\\"},\\\"semicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"invalid\\\"},\\\"single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.css.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#quoted-interpolation\\\"}]},\\\"unit\\\":{\\\"match\\\":\\\"(?<=[\\\\\\\\d]|})(ch|cm|deg|dpcm|dpi|dppx|em|ex|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vw|fr|%)\\\",\\\"name\\\":\\\"keyword.control.unit.css.sass\\\"},\\\"variable\\\":{\\\"match\\\":\\\"\\\\\\\\$[a-zA-Z0-9_-]+\\\",\\\"name\\\":\\\"variable.other.value\\\"},\\\"variable-root\\\":{\\\"match\\\":\\\"\\\\\\\\$[a-zA-Z0-9_-]+\\\",\\\"name\\\":\\\"variable.other.root\\\"}},\\\"scopeName\\\":\\\"source.sass\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Scala\\\",\\\"fileTypes\\\":[\\\"scala\\\"],\\\"firstLineMatch\\\":\\\"^#!/.*\\\\\\\\b\\\\\\\\w*scala\\\\\\\\b\\\",\\\"foldingStartMarker\\\":\\\"/\\\\\\\\*\\\\\\\\*|\\\\\\\\{\\\\\\\\s*$\\\",\\\"foldingStopMarker\\\":\\\"\\\\\\\\*\\\\\\\\*/|^\\\\\\\\s*\\\\\\\\}\\\",\\\"name\\\":\\\"scala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}],\\\"repository\\\":{\\\"backQuotedVariable\\\":{\\\"match\\\":\\\"`[^`]+`\\\"},\\\"block-comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.scala\\\"}},\\\"match\\\":\\\"/\\\\\\\\*\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.empty.scala\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*(/\\\\\\\\*\\\\\\\\*)(?!/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.scala\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.scala\\\"}},\\\"name\\\":\\\"comment.block.documentation.scala\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.scaladoc.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.scala\\\"}},\\\"match\\\":\\\"(@param)\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.scaladoc.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class\\\"}},\\\"match\\\":\\\"(@(?:tparam|throws))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"match\\\":\\\"@(return|see|note|example|constructor|usecase|author|version|since|todo|deprecated|migration|define|inheritdoc|groupname|groupprio|groupdesc|group|contentDiagram|documentable|syntax)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.documentation.scaladoc.scala\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.documentation.link.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.other.link.title.markdown\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.documentation.link.scala\\\"}},\\\"match\\\":\\\"(\\\\\\\\[\\\\\\\\[)([^\\\\\\\\]]+)(\\\\\\\\]\\\\\\\\])\\\"},{\\\"include\\\":\\\"#block-comments\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.scala\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.scala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"}]}]},\\\"char-literal\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character.begin.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.character.end.scala\\\"}},\\\"match\\\":\\\"(')'(')\\\",\\\"name\\\":\\\"string.quoted.other constant.character.literal.scala\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character.begin.scala\\\"}},\\\"end\\\":\\\"'|$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character.end.scala\\\"}},\\\"name\\\":\\\"string.quoted.other constant.character.literal.scala\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[btnfr\\\\\\\\\\\\\\\\\\\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})\\\",\\\"name\\\":\\\"constant.character.escape.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-character-escape.scala\\\"},{\\\"match\\\":\\\"[^']{2,}\\\",\\\"name\\\":\\\"invalid.illegal.character-literal-too-long\\\"},{\\\"match\\\":\\\"(?<!')[^']\\\",\\\"name\\\":\\\"invalid.illegal.character-literal-too-long\\\"}]}]},\\\"code\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#using-directive\\\"},{\\\"include\\\":\\\"#script-header\\\"},{\\\"include\\\":\\\"#storage-modifiers\\\"},{\\\"include\\\":\\\"#declarations\\\"},{\\\"include\\\":\\\"#inheritance\\\"},{\\\"include\\\":\\\"#extension\\\"},{\\\"include\\\":\\\"#imports\\\"},{\\\"include\\\":\\\"#exports\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#initialization\\\"},{\\\"include\\\":\\\"#xml-literal\\\"},{\\\"include\\\":\\\"#namedBounds\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#using\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#singleton-type\\\"},{\\\"include\\\":\\\"#inline\\\"},{\\\"include\\\":\\\"#scala-quoted-or-symbol\\\"},{\\\"include\\\":\\\"#char-literal\\\"},{\\\"include\\\":\\\"#empty-parentheses\\\"},{\\\"include\\\":\\\"#parameter-list\\\"},{\\\"include\\\":\\\"#qualifiedClassName\\\"},{\\\"include\\\":\\\"#backQuotedVariable\\\"},{\\\"include\\\":\\\"#curly-braces\\\"},{\\\"include\\\":\\\"#meta-brackets\\\"},{\\\"include\\\":\\\"#meta-bounds\\\"},{\\\"include\\\":\\\"#meta-colons\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comments\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.scala\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.scala\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.scala\\\"}]}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(false|null|true)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\b(0[xX][0-9a-fA-F_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\b(([0-9][0-9_]*(\\\\\\\\.[0-9][0-9_]*)?)([eE](\\\\\\\\+|-)?[0-9][0-9_]*)?|[0-9][0-9_]*)[LlFfDd]?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.scala\\\"},{\\\"match\\\":\\\"(\\\\\\\\.[0-9][0-9_]*)([eE](\\\\\\\\+|-)?[0-9][0-9_]*)?[LlFfDd]?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\b0[bB][01]([01_]*[01])?[Ll]?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\b(this|super)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.scala\\\"}]},\\\"curly-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.scala\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.scala\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},\\\"declarations\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.declaration\\\"}},\\\"match\\\":\\\"\\\\\\\\b(def)\\\\\\\\b\\\\\\\\s*(?!//|/\\\\\\\\*)((?:(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)|`[^`]+`))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.declaration\\\"}},\\\"match\\\":\\\"\\\\\\\\b(trait)\\\\\\\\b\\\\\\\\s*(?!//|/\\\\\\\\*)((?:(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)|`[^`]+`))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.scala\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.class.declaration\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(case)\\\\\\\\s+)?(class|object|enum)\\\\\\\\b\\\\\\\\s*(?!//|/\\\\\\\\*)((?:(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)|`[^`]+`))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.declaration\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(type)\\\\\\\\b\\\\\\\\s*(?!//|/\\\\\\\\*)((?:(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)|`[^`]+`))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.stable.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.volatile.scala\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(val)|(var))\\\\\\\\b\\\\\\\\s*(?!//|/\\\\\\\\*)(?=(?:(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)|`[^`]+`)?\\\\\\\\()\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.stable.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.stable.declaration.scala\\\"}},\\\"match\\\":\\\"\\\\\\\\b(val)\\\\\\\\b\\\\\\\\s*(?!//|/\\\\\\\\*)((?:(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)|`[^`]+`)(?:\\\\\\\\s*,\\\\\\\\s*(?:(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)|`[^`]+`))*)?(?!\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.volatile.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.volatile.declaration.scala\\\"}},\\\"match\\\":\\\"\\\\\\\\b(var)\\\\\\\\b\\\\\\\\s*(?!//|/\\\\\\\\*)((?:(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)|`[^`]+`)(?:\\\\\\\\s*,\\\\\\\\s*(?:(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)|`[^`]+`))*)?(?!\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.package.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.scala\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.class.declaration\\\"}},\\\"match\\\":\\\"\\\\\\\\b(package)\\\\\\\\s+(object)\\\\\\\\b\\\\\\\\s*(?!//|/\\\\\\\\*)((?:(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)|`[^`]+`))?\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(package)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.package.scala\\\"}},\\\"end\\\":\\\"(?<=[\\\\\\\\n;])\\\",\\\"name\\\":\\\"meta.package.scala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"(`[^`]+`|(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+))\\\",\\\"name\\\":\\\"entity.name.package.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.definition.package\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.given.declaration\\\"}},\\\"match\\\":\\\"\\\\\\\\b(given)\\\\\\\\b\\\\\\\\s*([_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|`[^`]+`)?\\\"}]},\\\"empty-parentheses\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.bracket.scala\\\"}},\\\"match\\\":\\\"(\\\\\\\\(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.parentheses.scala\\\"},\\\"exports\\\":{\\\"begin\\\":\\\"\\\\\\\\b(export)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.export.scala\\\"}},\\\"end\\\":\\\"(?<=[\\\\\\\\n;])\\\",\\\"name\\\":\\\"meta.export.scala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b(given)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.export.given.scala\\\"},{\\\"match\\\":\\\"[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?\\\",\\\"name\\\":\\\"entity.name.class.export.scala\\\"},{\\\"match\\\":\\\"(`[^`]+`|(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+))\\\",\\\"name\\\":\\\"entity.name.export.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.definition.export\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.bracket.scala\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.bracket.scala\\\"}},\\\"name\\\":\\\"meta.export.selector.scala\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.export.given.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.export.renamed-from.scala\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.export.renamed-from.scala\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.arrow.scala\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.class.export.renamed-to.scala\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.export.renamed-to.scala\\\"}},\\\"match\\\":\\\"(given\\\\\\\\s)?\\\\\\\\s*(?:([A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)))\\\\\\\\s*(=>)\\\\\\\\s*(?:([A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)))\\\\\\\\s*\\\"},{\\\"match\\\":\\\"\\\\\\\\b(given)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.export.given.scala\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.export.given.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.export.scala\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.export.scala\\\"}},\\\"match\\\":\\\"(given\\\\\\\\s+)?(?:([A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)))\\\"}]}]},\\\"extension\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.scala\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(extension)\\\\\\\\s+(?=[\\\\\\\\[\\\\\\\\(])\\\"}]},\\\"imports\\\":{\\\"begin\\\":\\\"\\\\\\\\b(import)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import.scala\\\"}},\\\"end\\\":\\\"(?<=[\\\\\\\\n;])\\\",\\\"name\\\":\\\"meta.import.scala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b(given)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.import.given.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\s(as)\\\\\\\\s\\\",\\\"name\\\":\\\"keyword.other.import.as.scala\\\"},{\\\"match\\\":\\\"[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?\\\",\\\"name\\\":\\\"entity.name.class.import.scala\\\"},{\\\"match\\\":\\\"(`[^`]+`|(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+))\\\",\\\"name\\\":\\\"entity.name.import.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.definition.import\\\"},{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.bracket.scala\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.bracket.scala\\\"}},\\\"name\\\":\\\"meta.import.selector.scala\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import.given.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.import.renamed-from.scala\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.import.renamed-from.scala\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.other.arrow.scala\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.class.import.renamed-to.scala\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.import.renamed-to.scala\\\"}},\\\"match\\\":\\\"(given\\\\\\\\s)?\\\\\\\\s*(?:([A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)))\\\\\\\\s*(=>)\\\\\\\\s*(?:([A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)))\\\\\\\\s*\\\"},{\\\"match\\\":\\\"\\\\\\\\b(given)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.import.given.scala\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import.given.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class.import.scala\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.import.scala\\\"}},\\\"match\\\":\\\"(given\\\\\\\\s+)?(?:([A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)))\\\"}]}]},\\\"inheritance\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.class\\\"}},\\\"match\\\":\\\"\\\\\\\\b(extends|with|derives)\\\\\\\\b\\\\\\\\s*([A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|`[^`]+`|(?=\\\\\\\\([^\\\\\\\\)]+=>)|(?=(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+))|(?=\\\\\\\"))?\\\"}]},\\\"initialization\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.scala\\\"}},\\\"match\\\":\\\"\\\\\\\\b(new)\\\\\\\\b\\\"},\\\"inline\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(inline)(?=\\\\\\\\s+((?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)|`[^`]+`)\\\\\\\\s*:)\\\",\\\"name\\\":\\\"storage.modifier.other\\\"},{\\\"match\\\":\\\"\\\\\\\\b(inline)\\\\\\\\b(?=(?:.(?!\\\\\\\\b(?:val|def|given)\\\\\\\\b))*\\\\\\\\b(if|match)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.control.flow.scala\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(return|throw)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.jump.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\b(classOf|isInstanceOf|asInstanceOf)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.type-of.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\b(else|if|then|do|while|for|yield|match|case)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.scala\\\"},{\\\"match\\\":\\\"^\\\\\\\\s*(end)\\\\\\\\s+(if|while|for|match)(?=\\\\\\\\s*(//.*|/\\\\\\\\*(?!.*\\\\\\\\*/\\\\\\\\s*\\\\\\\\S.*).*)?$)\\\",\\\"name\\\":\\\"keyword.control.flow.end.scala\\\"},{\\\"match\\\":\\\"^\\\\\\\\s*(end)\\\\\\\\s+(val)(?=\\\\\\\\s*(//.*|/\\\\\\\\*(?!.*\\\\\\\\*/\\\\\\\\s*\\\\\\\\S.*).*)?$)\\\",\\\"name\\\":\\\"keyword.declaration.stable.end.scala\\\"},{\\\"match\\\":\\\"^\\\\\\\\s*(end)\\\\\\\\s+(var)(?=\\\\\\\\s*(//.*|/\\\\\\\\*(?!.*\\\\\\\\*/\\\\\\\\s*\\\\\\\\S.*).*)?$)\\\",\\\"name\\\":\\\"keyword.declaration.volatile.end.scala\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.end.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.declaration.end.scala\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.declaration\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(end)\\\\\\\\s+(?:(new|extension)|([A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?))(?=\\\\\\\\s*(//.*|/\\\\\\\\*(?!.*\\\\\\\\*/\\\\\\\\s*\\\\\\\\S.*).*)?$)\\\"},{\\\"match\\\":\\\"\\\\\\\\b(catch|finally|try)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.exception.scala\\\"},{\\\"match\\\":\\\"^\\\\\\\\s*(end)\\\\\\\\s+(try)(?=\\\\\\\\s*(//.*|/\\\\\\\\*(?!.*\\\\\\\\*/\\\\\\\\s*\\\\\\\\S.*).*)?$)\\\",\\\"name\\\":\\\"keyword.control.exception.end.scala\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.end.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.declaration\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(end)\\\\\\\\s+(`[^`]+`|(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+))?(?=\\\\\\\\s*(//.*|/\\\\\\\\*(?!.*\\\\\\\\*/\\\\\\\\s*\\\\\\\\S.*).*)?$)\\\"},{\\\"match\\\":\\\"([!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]|[\\\\\\\\\\\\\\\\]){3,}\\\",\\\"name\\\":\\\"keyword.operator.scala\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\|\\\\\\\\||&&)\\\",\\\"name\\\":\\\"keyword.operator.logical.scala\\\"},{\\\"match\\\":\\\"(\\\\\\\\!=|==|\\\\\\\\<=|>=)\\\",\\\"name\\\":\\\"keyword.operator.comparison.scala\\\"},{\\\"match\\\":\\\"..\\\",\\\"name\\\":\\\"keyword.operator.scala\\\"}]}},\\\"match\\\":\\\"((?:[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]|[\\\\\\\\\\\\\\\\]){2,}|_\\\\\\\\*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\!)\\\",\\\"name\\\":\\\"keyword.operator.logical.scala\\\"},{\\\"match\\\":\\\"(\\\\\\\\*|-|\\\\\\\\+|/|%|~)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.scala\\\"},{\\\"match\\\":\\\"(=|\\\\\\\\<|>)\\\",\\\"name\\\":\\\"keyword.operator.comparison.scala\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"keyword.operator.scala\\\"}]}},\\\"match\\\":\\\"(?<!_)([!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]|\\\\\\\\\\\\\\\\)\\\"}]},\\\"meta-bounds\\\":{\\\"comment\\\":\\\"For themes: Matching view bounds\\\",\\\"match\\\":\\\"<%|=:=|<:<|<%<|>:|<:\\\",\\\"name\\\":\\\"meta.bounds.scala\\\"},\\\"meta-brackets\\\":{\\\"comment\\\":\\\"For themes: Brackets look nice when colored.\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"The punctuation.section.*.begin is needed for return snippet in source bundle\\\",\\\"match\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"punctuation.section.block.begin.scala\\\"},{\\\"comment\\\":\\\"The punctuation.section.*.end is needed for return snippet in source bundle\\\",\\\"match\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.section.block.end.scala\\\"},{\\\"match\\\":\\\"{|}|\\\\\\\\(|\\\\\\\\)|\\\\\\\\[|\\\\\\\\]\\\",\\\"name\\\":\\\"meta.bracket.scala\\\"}]},\\\"meta-colons\\\":{\\\"comment\\\":\\\"For themes: Matching type colons\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!:):(?!:)\\\",\\\"name\\\":\\\"meta.colon.scala\\\"}]},\\\"namedBounds\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.import.as.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.stable.declaration.scala\\\"}},\\\"match\\\":\\\"\\\\\\\\s+(as)\\\\\\\\s+([_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?)\\\\\\\\b\\\"}]},\\\"parameter-list\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.colon.scala\\\"}},\\\"match\\\":\\\"(?<=[^\\\\\\\\._$a-zA-Z0-9])(`[^`]+`|[_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?)\\\\\\\\s*(:)\\\\\\\\s+\\\"}]},\\\"qualifiedClassName\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.class\\\"}},\\\"match\\\":\\\"(\\\\\\\\b([A-Z][\\\\\\\\w]*)(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?)\\\"},\\\"scala-quoted-or-symbol\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.staging.scala constant.other.symbol.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.symbol.scala\\\"}},\\\"match\\\":\\\"(')((?>(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)))(?!')\\\"},{\\\"match\\\":\\\"'(?=\\\\\\\\s*\\\\\\\\{(?!'))\\\",\\\"name\\\":\\\"keyword.control.flow.staging.scala\\\"},{\\\"match\\\":\\\"'(?=\\\\\\\\s*\\\\\\\\[(?!'))\\\",\\\"name\\\":\\\"keyword.control.flow.staging.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\$(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"name\\\":\\\"keyword.control.flow.staging.scala\\\"}]},\\\"script-header\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.unquoted.shebang.scala\\\"}},\\\"match\\\":\\\"^#!(.*)$\\\",\\\"name\\\":\\\"comment.block.shebang.scala\\\"},\\\"singleton-type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.type.scala\\\"}},\\\"match\\\":\\\"\\\\\\\\.(type)(?![A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[0-9])\\\"},\\\"storage-modifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(private\\\\\\\\[\\\\\\\\S+\\\\\\\\]|protected\\\\\\\\[\\\\\\\\S+\\\\\\\\]|private|protected)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.access\\\"},{\\\"match\\\":\\\"\\\\\\\\b(synchronized|@volatile|abstract|final|lazy|sealed|implicit|override|@transient|@native)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.other\\\"},{\\\"match\\\":\\\"(?<=^|\\\\\\\\s)\\\\\\\\b(transparent|opaque|infix|open|inline)\\\\\\\\b(?=[a-z\\\\\\\\s]*\\\\\\\\b(def|val|var|given|type|class|trait|object|enum)\\\\\\\\b)\\\",\\\"name\\\":\\\"storage.modifier.other\\\"}]},\\\"string-interpolation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\$\\\\\\\\$\\\",\\\"name\\\":\\\"constant.character.escape.interpolation.scala\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.scala\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)([A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*)\\\",\\\"name\\\":\\\"meta.template.expression.scala\\\"},{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.scala\\\"}},\\\"contentName\\\":\\\"meta.embedded.line.scala\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.scala\\\"}},\\\"name\\\":\\\"meta.template.expression.scala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.scala\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.scala\\\"}},\\\"name\\\":\\\"string.quoted.triple.scala\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|\\\\\\\\\\\\\\\\u[0-9A-Fa-f]{4}\\\",\\\"name\\\":\\\"constant.character.escape.scala\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(raw)(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.interpolation.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala\\\"}},\\\"end\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\")(?!\\\\\\\")|\\\\\\\\$\\\\n|(\\\\\\\\$[^\\\\\\\\$\\\\\\\"_{A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.scala\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\$[\\\\\\\\$\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.scala\\\"},{\\\"include\\\":\\\"#string-interpolation\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string.quoted.triple.interpolated.scala\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b((?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?))(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.interpolation.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala\\\"}},\\\"end\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\")(?!\\\\\\\")|\\\\\\\\$\\\\n|(\\\\\\\\$[^\\\\\\\\$\\\\\\\"_{A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.scala\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#string-interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|\\\\\\\\\\\\\\\\u[0-9A-Fa-f]{4}\\\",\\\"name\\\":\\\"constant.character.escape.scala\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string.quoted.triple.interpolated.scala\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.scala\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.scala\\\"}},\\\"name\\\":\\\"string.quoted.double.scala\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[btnfr\\\\\\\\\\\\\\\\\\\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})\\\",\\\"name\\\":\\\"constant.character.escape.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.scala\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(raw)(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.interpolation.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala\\\"}},\\\"end\\\":\\\"(\\\\\\\")|\\\\\\\\$\\\\n|(\\\\\\\\$[^\\\\\\\\$\\\\\\\"_{A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.scala\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\$[\\\\\\\\$\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.scala\\\"},{\\\"include\\\":\\\"#string-interpolation\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string.quoted.double.interpolated.scala\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b((?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?))(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.interpolation.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala\\\"}},\\\"end\\\":\\\"(\\\\\\\")|\\\\\\\\$\\\\n|(\\\\\\\\$[^\\\\\\\\$\\\\\\\"_{A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.scala\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\$[\\\\\\\\$\\\\\\\"]\\\",\\\"name\\\":\\\"constant.character.escape.scala\\\"},{\\\"include\\\":\\\"#string-interpolation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[btnfr\\\\\\\\\\\\\\\\\\\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})\\\",\\\"name\\\":\\\"constant.character.escape.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.scala\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string.quoted.double.interpolated.scala\\\"}]}]},\\\"using\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.declaration.scala\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\()\\\\\\\\s*(using)\\\\\\\\s\\\"}]},\\\"using-directive\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(//>)\\\\\\\\s*(using)[^\\\\\\\\S\\\\\\\\n]+(?:(\\\\\\\\S+))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.scala\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.import.scala\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|`[^`]+`|(?:[A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}][A-Z\\\\\\\\p{Lt}\\\\\\\\p{Lu}_a-z\\\\\\\\$\\\\\\\\p{Lo}\\\\\\\\p{Nl}\\\\\\\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)?|[!#%&*+\\\\\\\\-\\\\\\\\/:<>=?@^|~\\\\\\\\p{Sm}\\\\\\\\p{So}]+)\\\",\\\"name\\\":\\\"entity.name.import.scala\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.definition.import\\\"}]}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.shebang.scala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s,]+\\\",\\\"name\\\":\\\"string.quoted.double.scala\\\"}]},\\\"xml-doublequotedString\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.xml\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.xml\\\"}},\\\"name\\\":\\\"string.quoted.double.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xml-entity\\\"}]},\\\"xml-embedded-content\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.bracket.scala\\\"}},\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.source.embedded.scala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.namespace.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.xml\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.other.attribute-name.localname.xml\\\"}},\\\"match\\\":\\\" (?:([-_a-zA-Z0-9]+)((:)))?([_a-zA-Z-]+)=\\\"},{\\\"include\\\":\\\"#xml-doublequotedString\\\"},{\\\"include\\\":\\\"#xml-singlequotedString\\\"}]},\\\"xml-entity\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.constant.xml\\\"}},\\\"match\\\":\\\"(&)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.xml\\\"},\\\"xml-literal\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)((?:([_a-zA-Z0-9][_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*))(?=(\\\\\\\\s[^>]*)?></\\\\\\\\2>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.xml\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.xml\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.xml\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.tag.localname.xml\\\"}},\\\"comment\\\":\\\"We do not allow a tag name to start with a - since this would likely conflict with the <- operator. This is not very common for tag names anyway. Also code such as -- if (val <val2 || val> val3) will falsly be recognized as an xml tag. The solution is to put a space on either side of the comparison operator\\\",\\\"end\\\":\\\"(>(<))/(?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]*[_a-zA-Z0-9])(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.scope.between-tag-pair.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.xml\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.xml\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.xml\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.tag.localname.xml\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"}},\\\"name\\\":\\\"meta.tag.no-content.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xml-embedded-content\\\"}]},{\\\"begin\\\":\\\"(</?)(?:([_a-zA-Z0-9][-_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*)(?=[^>]*?>)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.xml\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.xml\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.tag.localname.xml\\\"}},\\\"end\\\":\\\"(/?>)\\\",\\\"name\\\":\\\"meta.tag.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xml-embedded-content\\\"}]},{\\\"include\\\":\\\"#xml-entity\\\"}]},\\\"xml-singlequotedString\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.xml\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.xml\\\"}},\\\"name\\\":\\\"string.quoted.single.xml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#xml-entity\\\"}]}},\\\"scopeName\\\":\\\"source.scala\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Scheme\\\",\\\"fileTypes\\\":[\\\"scm\\\",\\\"ss\\\",\\\"sch\\\",\\\"rkt\\\"],\\\"name\\\":\\\"scheme\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#block-comment\\\"},{\\\"include\\\":\\\"#sexp\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#language-functions\\\"},{\\\"include\\\":\\\"#quote\\\"},{\\\"include\\\":\\\"#illegal\\\"}],\\\"repository\\\":{\\\"block-comment\\\":{\\\"begin\\\":\\\"\\\\\\\\#\\\\\\\\|\\\",\\\"contentName\\\":\\\"comment\\\",\\\"end\\\":\\\"\\\\\\\\|\\\\\\\\#\\\",\\\"name\\\":\\\"comment\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block-comment\\\",\\\"name\\\":\\\"comment\\\"}]},\\\"comment\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=;)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.scheme\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\";\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.scheme\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.semicolon.scheme\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"#[t|f]\\\",\\\"name\\\":\\\"constant.language.boolean.scheme\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\(\\\\\\\\s])((#e|#i)?[0-9]+(\\\\\\\\.[0-9]+)?|(#x)[0-9a-fA-F]+|(#o)[0-7]+|(#b)[01]+)(?=[\\\\\\\\s;()'\\\\\\\",\\\\\\\\[\\\\\\\\]])\\\",\\\"name\\\":\\\"constant.numeric.scheme\\\"}]},\\\"illegal\\\":{\\\"match\\\":\\\"[()\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"invalid.illegal.parenthesis.scheme\\\"},\\\"language-functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=(\\\\\\\\s|\\\\\\\\(|\\\\\\\\[))(do|or|and|else|quasiquote|begin|if|case|set!|cond|let|unquote|define|let\\\\\\\\*|unquote-splicing|delay|letrec)(?=(\\\\\\\\s|\\\\\\\\())\\\",\\\"name\\\":\\\"keyword.control.scheme\\\"},{\\\"comment\\\":\\\"\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tThese functions run a test, and return a boolean\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tanswer.\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\",\\\"match\\\":\\\"(?<=(\\\\\\\\s|\\\\\\\\())(char-alphabetic|char-lower-case|char-numeric|char-ready|char-upper-case|char-whitespace|(?:char|string)(?:-ci)?(?:=|<=?|>=?)|atom|boolean|bound-identifier=|char|complex|identifier|integer|symbol|free-identifier=|inexact|eof-object|exact|list|(?:input|output)-port|pair|real|rational|zero|vector|negative|odd|null|string|eq|equal|eqv|even|number|positive|procedure)(\\\\\\\\?)(?=(\\\\\\\\s|\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.boolean-test.scheme\\\"},{\\\"comment\\\":\\\"\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tThese functions change one type into another.\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\",\\\"match\\\":\\\"(?<=(\\\\\\\\s|\\\\\\\\())(char->integer|exact->inexact|inexact->exact|integer->char|symbol->string|list->vector|list->string|identifier->symbol|vector->list|string->list|string->number|string->symbol|number->string)(?=(\\\\\\\\s|\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.convert-type.scheme\\\"},{\\\"comment\\\":\\\"\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tThese functions are potentially dangerous because\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tthey have side-effects which could affect other\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tparts of the program.\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\",\\\"match\\\":\\\"(?<=(\\\\\\\\s|\\\\\\\\())(set-(?:car|cdr)|(?:vector|string)-(?:fill|set))(!)(?=(\\\\\\\\s|\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.with-side-effects.scheme\\\"},{\\\"comment\\\":\\\"\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t+, -, *, /, =, >, etc. \\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\",\\\"match\\\":\\\"(?<=(\\\\\\\\s|\\\\\\\\())(>=?|<=?|=|[*/+-])(?=(\\\\\\\\s|\\\\\\\\())\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.scheme\\\"},{\\\"match\\\":\\\"(?<=(\\\\\\\\s|\\\\\\\\())(append|apply|approximate|call-with-current-continuation|call/cc|catch|construct-identifier|define-syntax|display|foo|for-each|force|format|cd|gen-counter|gen-loser|generate-identifier|last-pair|length|let-syntax|letrec-syntax|list|list-ref|list-tail|load|log|macro|magnitude|map|map-streams|max|member|memq|memv|min|newline|nil|not|peek-char|rationalize|read|read-char|return|reverse|sequence|substring|syntax|syntax-rules|transcript-off|transcript-on|truncate|unwrap-syntax|values-list|write|write-char|cons|c(a|d){1,4}r|abs|acos|angle|asin|assoc|assq|assv|atan|ceiling|cos|floor|round|sin|sqrt|tan|(?:real|imag)-part|numerator|denominatormodulo|exp|expt|remainder|quotient|lcm|call-with-(?:input|output)-file|(?:close|current)-(?:input|output)-port|with-(?:input|output)-from-file|open-(?:input|output)-file|char-(?:downcase|upcase|ready)|make-(?:polar|promise|rectangular|string|vector)string(?:-(?:append|copy|length|ref))?|vector(?:-length|-ref))(?=(\\\\\\\\s|\\\\\\\\())\\\",\\\"name\\\":\\\"support.function.general.scheme\\\"}]},\\\"quote\\\":{\\\"comment\\\":\\\"\\\\n\\\\t\\\\t\\\\t\\\\tWe need to be able to quote any kind of item, which creates\\\\n\\\\t\\\\t\\\\t\\\\ta tiny bit of complexity in our grammar. It is hopefully\\\\n\\\\t\\\\t\\\\t\\\\tnot overwhelming complexity.\\\\n\\\\t\\\\t\\\\t\\\\t\\\\n\\\\t\\\\t\\\\t\\\\tNote: the first two matches are special cases. quoted\\\\n\\\\t\\\\t\\\\t\\\\tsymbols, and quoted empty lists are considered constant.other\\\\n\\\\t\\\\t\\\\t\\\\t\\\\n\\\\t\\\\t\\\\t\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.quoted.symbol.scheme\\\"}},\\\"match\\\":\\\"(')\\\\\\\\s*([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*)\\\",\\\"name\\\":\\\"constant.other.symbol.scheme\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.quoted.empty-list.scheme\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.expression.scheme\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.scheme\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.scheme\\\"}},\\\"match\\\":\\\"(')\\\\\\\\s*((\\\\\\\\()\\\\\\\\s*(\\\\\\\\)))\\\",\\\"name\\\":\\\"constant.other.empty-list.schem\\\"},{\\\"begin\\\":\\\"(')\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.quoted.scheme\\\"}},\\\"comment\\\":\\\"quoted double-quoted string or s-expression\\\",\\\"end\\\":\\\"(?=[\\\\\\\\s()])|(?<=\\\\\\\\n)\\\",\\\"name\\\":\\\"string.other.quoted-object.scheme\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#quoted\\\"}]}]},\\\"quote-sexp\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\()\\\\\\\\s*(quote)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.quote.scheme\\\"}},\\\"comment\\\":\\\"\\\\n\\\\t\\\\t\\\\t\\\\tSomething quoted with (quote \u00ABthing\u00BB). In this case \u00ABthing\u00BB\\\\n\\\\t\\\\t\\\\t\\\\twill not be evaluated, so we are considering it a string.\\\\n\\\\t\\\\t\\\\t\\\",\\\"contentName\\\":\\\"string.other.quote.scheme\\\",\\\"end\\\":\\\"(?=[\\\\\\\\s)])|(?<=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#quoted\\\"}]},\\\"quoted\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.scheme\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.scheme\\\"}},\\\"name\\\":\\\"meta.expression.scheme\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#quoted\\\"}]},{\\\"include\\\":\\\"#quote\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},\\\"sexp\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.begin.scheme\\\"}},\\\"end\\\":\\\"(\\\\\\\\))(\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.expression.end.scheme\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.after-expression.scheme\\\"}},\\\"name\\\":\\\"meta.expression.scheme\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\()(define)\\\\\\\\s+(\\\\\\\\()([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*)((\\\\\\\\s+([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*|[._]))*)\\\\\\\\s*(\\\\\\\\))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.scheme\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.scheme\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.scheme\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.scheme\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.function.scheme\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.declaration.procedure.scheme\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#sexp\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\()(lambda)\\\\\\\\s+(\\\\\\\\()((?:([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*|[._])\\\\\\\\s+)*(?:([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*|[._]))?)(\\\\\\\\))\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.scheme\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.scheme\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.scheme\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.variable.scheme\\\"}},\\\"comment\\\":\\\"\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tNot sure this one is quite correct. That \\\\\\\\s* is\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tparticularly troubling\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.declaration.procedure.scheme\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#sexp\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\()(define)\\\\\\\\s([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*)\\\\\\\\s*.*?\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.scheme\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.scheme\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.declaration.variable.scheme\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#sexp\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},{\\\"include\\\":\\\"#quote-sexp\\\"},{\\\"include\\\":\\\"#quote\\\"},{\\\"include\\\":\\\"#language-functions\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\(\\\\\\\\s])(#\\\\\\\\\\\\\\\\)(space|newline|tab)(?=[\\\\\\\\s\\\\\\\\)])\\\",\\\"name\\\":\\\"constant.character.named.scheme\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\(\\\\\\\\s])(#\\\\\\\\\\\\\\\\)x[0-9A-F]{2,4}(?=[\\\\\\\\s\\\\\\\\)])\\\",\\\"name\\\":\\\"constant.character.hex-literal.scheme\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\(\\\\\\\\s])(#\\\\\\\\\\\\\\\\).(?=[\\\\\\\\s\\\\\\\\)])\\\",\\\"name\\\":\\\"constant.character.escape.scheme\\\"},{\\\"comment\\\":\\\"\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\tthe . in (a . b) which conses together two elements\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\ta and b. (a b c) == (a . (b . (c . nil)))\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\",\\\"match\\\":\\\"(?<=[ ()])\\\\\\\\.(?=[ ()])\\\",\\\"name\\\":\\\"punctuation.separator.cons.scheme\\\"},{\\\"include\\\":\\\"#sexp\\\"},{\\\"include\\\":\\\"#illegal\\\"}]},\\\"string\\\":{\\\"begin\\\":\\\"(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.scheme\\\"}},\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.scheme\\\"}},\\\"name\\\":\\\"string.quoted.double.scheme\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.scheme\\\"}]}},\\\"scopeName\\\":\\\"source.scheme\\\"}\"))\n\nexport default [\nlang\n]\n", "import hlsl from './hlsl.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"ShaderLab\\\",\\\"name\\\":\\\"shaderlab\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Range|Float|Int|Color|Vector|2D|3D|Cube|Any)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.basic.shaderlab\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Shader|Properties|SubShader|Pass|Category)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.structure.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Name|Tags|Fallback|CustomEditor|Cull|ZWrite|ZTest|Offset|Blend|BlendOp|ColorMask|AlphaToMask|LOD|Lighting|Stencil|Ref|ReadMask|WriteMask|Comp|CompBack|CompFront|Fail|ZFail|UsePass|GrabPass|Dependency|Material|Diffuse|Ambient|Shininess|Specular|Emission|Fog|Mode|Density|SeparateSpecular|SetTexture|Combine|ConstantColor|Matrix|AlphaTest|ColorMaterial|BindChannels|Bind)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.propertyname.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Back|Front|On|Off|[RGBA]{1,3}|AmbientAndDiffuse|Emission)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Less|Greater|LEqual|GEqual|Equal|NotEqual|Always|Never)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.comparisonfunction.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Keep|Zero|Replace|IncrSat|DecrSat|Invert|IncrWrap|DecrWrap)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.stenciloperation.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Previous|Primary|Texture|Constant|Lerp|Double|Quad|Alpha)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.texturecombiners.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Global|Linear|Exp2|Exp)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.fog.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Vertex|Normal|Tangent|TexCoord0|TexCoord1)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.bindchannels.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:Add|Sub|RevSub|Min|Max|LogicalClear|LogicalSet|LogicalCopyInverted|LogicalCopy|LogicalNoop|LogicalInvert|LogicalAnd|LogicalNand|LogicalOr|LogicalNor|LogicalXor|LogicalEquiv|LogicalAndReverse|LogicalAndInverted|LogicalOrReverse|LogicalOrInverted)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.blendoperations.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:One|Zero|SrcColor|SrcAlpha|DstColor|DstAlpha|OneMinusSrcColor|OneMinusSrcAlpha|OneMinusDstColor|OneMinusDstAlpha)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.property-value.blendfactors.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\[([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\](?!\\\\\\\\s*[a-zA-Z_][a-zA-Z0-9_]*\\\\\\\\s*\\\\\\\\(\\\\\\\")\\\",\\\"name\\\":\\\"support.variable.reference.shaderlab\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"name\\\":\\\"meta.attribute.shaderlab\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G([a-zA-Z]+)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.attributename.shaderlab\\\"},{\\\"include\\\":\\\"#numbers\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\s*\\\\\\\\(\\\",\\\"name\\\":\\\"support.variable.declaration.shaderlab\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(CGPROGRAM|CGINCLUDE)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other\\\"}},\\\"end\\\":\\\"\\\\\\\\b(ENDCG)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other\\\"}},\\\"name\\\":\\\"meta.cgblock\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#hlsl-embedded\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(HLSLPROGRAM|HLSLINCLUDE)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other\\\"}},\\\"end\\\":\\\"\\\\\\\\b(ENDHLSL)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other\\\"}},\\\"name\\\":\\\"meta.hlslblock\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#hlsl-embedded\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.shaderlab\\\"}],\\\"repository\\\":{\\\"hlsl-embedded\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.hlsl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(fixed([1-4](x[1-4])?)?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.basic.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(UNITY_MATRIX_MVP|UNITY_MATRIX_MV|UNITY_MATRIX_M|UNITY_MATRIX_V|UNITY_MATRIX_P|UNITY_MATRIX_VP|UNITY_MATRIX_T_MV|UNITY_MATRIX_I_V|UNITY_MATRIX_IT_MV|_Object2World|_World2Object|unity_ObjectToWorld|unity_WorldToObject)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.transformations.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(_WorldSpaceCameraPos|_ProjectionParams|_ScreenParams|_ZBufferParams|unity_OrthoParams|unity_CameraProjection|unity_CameraInvProjection|unity_CameraWorldClipPlanes)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.camera.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(_Time|_SinTime|_CosTime|unity_DeltaTime)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.time.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(_LightColor0|_WorldSpaceLightPos0|_LightMatrix0|unity_4LightPosX0|unity_4LightPosY0|unity_4LightPosZ0|unity_4LightAtten0|unity_LightColor|_LightColor|unity_LightPosition|unity_LightAtten|unity_SpotDirection)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.lighting.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(unity_AmbientSky|unity_AmbientEquator|unity_AmbientGround|UNITY_LIGHTMODEL_AMBIENT|unity_FogColor|unity_FogParams)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.fog.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(unity_LODFade)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.various.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(SHADER_API_D3D9|SHADER_API_D3D11|SHADER_API_GLCORE|SHADER_API_OPENGL|SHADER_API_GLES|SHADER_API_GLES3|SHADER_API_METAL|SHADER_API_D3D11_9X|SHADER_API_PSSL|SHADER_API_XBOXONE|SHADER_API_PSP2|SHADER_API_WIIU|SHADER_API_MOBILE|SHADER_API_GLSL)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.preprocessor.targetplatform.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(SHADER_TARGET)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.preprocessor.targetmodel.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(UNITY_VERSION)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.preprocessor.unityversion.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(UNITY_BRANCH|UNITY_FLATTEN|UNITY_NO_SCREENSPACE_SHADOWS|UNITY_NO_LINEAR_COLORSPACE|UNITY_NO_RGBM|UNITY_NO_DXT5nm|UNITY_FRAMEBUFFER_FETCH_AVAILABLE|UNITY_USE_RGBA_FOR_POINT_SHADOWS|UNITY_ATTEN_CHANNEL|UNITY_HALF_TEXEL_OFFSET|UNITY_UV_STARTS_AT_TOP|UNITY_MIGHT_NOT_HAVE_DEPTH_Texture|UNITY_NEAR_CLIP_VALUE|UNITY_VPOS_TYPE|UNITY_CAN_COMPILE_TESSELLATION|UNITY_COMPILER_HLSL|UNITY_COMPILER_HLSL2GLSL|UNITY_COMPILER_CG|UNITY_REVERSED_Z)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.preprocessor.platformdifference.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(UNITY_PASS_FORWARDBASE|UNITY_PASS_FORWARDADD|UNITY_PASS_DEFERRED|UNITY_PASS_SHADOWCASTER|UNITY_PASS_PREPASSBASE|UNITY_PASS_PREPASSFINAL)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.preprocessor.texture2D.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(appdata_base|appdata_tan|appdata_full|appdata_img)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.structures.shaderlab\\\"},{\\\"match\\\":\\\"\\\\\\\\b(SurfaceOutputStandardSpecular|SurfaceOutputStandard|SurfaceOutput|Input)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.surface.shaderlab\\\"}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([0-9]+\\\\\\\\.?[0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.shaderlab\\\"}]}},\\\"scopeName\\\":\\\"source.shaderlab\\\",\\\"embeddedLangs\\\":[\\\"hlsl\\\"],\\\"aliases\\\":[\\\"shader\\\"]}\"))\n\nexport default [\n...hlsl,\nlang\n]\n", "import shellscript from './shellscript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Shell Session\\\",\\\"fileTypes\\\":[\\\"sh-session\\\"],\\\"name\\\":\\\"shellsession\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.prompt-prefix.shell-session\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.prompt.shell-session\\\"},\\\"3\\\":{\\\"name\\\":\\\"source.shell\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.shell\\\"}]}},\\\"match\\\":\\\"^(?:((?:\\\\\\\\(\\\\\\\\S+\\\\\\\\)\\\\\\\\s*)?(?:sh\\\\\\\\S*?|\\\\\\\\w+\\\\\\\\S+[@:]\\\\\\\\S+(?:\\\\\\\\s+\\\\\\\\S+)?|\\\\\\\\[\\\\\\\\S+?[@:][^\\\\\\\\n]+?\\\\\\\\].*?))\\\\\\\\s*)?([>$#%\u276F\u279C]|\\\\\\\\p{Greek})\\\\\\\\s+(.*)$\\\"},{\\\"match\\\":\\\"^.+$\\\",\\\"name\\\":\\\"meta.output.shell-session\\\"}],\\\"scopeName\\\":\\\"text.shell-session\\\",\\\"embeddedLangs\\\":[\\\"shellscript\\\"],\\\"aliases\\\":[\\\"console\\\"]}\"))\n\nexport default [\n...shellscript,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Smalltalk\\\",\\\"fileTypes\\\":[\\\"st\\\"],\\\"foldingStartMarker\\\":\\\"\\\\\\\\[\\\",\\\"foldingStopMarker\\\":\\\"^\\\\\\\\s*\\\\\\\\]|^\\\\\\\\s\\\\\\\\]\\\",\\\"name\\\":\\\"smalltalk\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\$.\\\",\\\"name\\\":\\\"constant.character.smalltalk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(class)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.$1.smalltalk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(extend|super|self)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.$1.smalltalk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(yourself|new|Smalltalk)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.$1.smalltalk\\\"},{\\\"match\\\":\\\":=\\\",\\\"name\\\":\\\"keyword.operator.assignment.smalltalk\\\"},{\\\"comment\\\":\\\"Parse the variable declaration like: |a b c|\\\",\\\"match\\\":\\\"/^:\\\\\\\\w*\\\\\\\\s*\\\\\\\\|/\\\",\\\"name\\\":\\\"constant.other.block.smalltalk\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.instance-variables.begin.smalltalk\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"support.type.variable.declaration.smalltalk\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.instance-variables.end.smalltalk\\\"}},\\\"match\\\":\\\"(\\\\\\\\|)(\\\\\\\\s*\\\\\\\\w[\\\\\\\\w ]*)(\\\\\\\\|)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\":\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.function.block.smalltalk\\\"}]}},\\\"comment\\\":\\\"Parse the blocks like: [ :a :b | ...... ]\\\",\\\"match\\\":\\\"\\\\\\\\[((\\\\\\\\s+|:\\\\\\\\w+)*)\\\\\\\\|\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"match\\\":\\\"<(?!<|=)|>(?!<|=|>)|<=|>=|=|==|~=|~~|>>|\\\\\\\\^\\\",\\\"name\\\":\\\"keyword.operator.comparison.smalltalk\\\"},{\\\"match\\\":\\\"(\\\\\\\\*|\\\\\\\\+|\\\\\\\\-|/|\\\\\\\\\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.smalltalk\\\"},{\\\"match\\\":\\\"(?<=[ \\\\\\\\t])!+|\\\\\\\\bnot\\\\\\\\b|&|\\\\\\\\band\\\\\\\\b|\\\\\\\\||\\\\\\\\bor\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.logical.smalltalk\\\"},{\\\"comment\\\":\\\"Fake reserved word -> main Smalltalk messages\\\",\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(ensure|resume|retry|signal)\\\\\\\\b(?![?!])\\\",\\\"name\\\":\\\"keyword.control.smalltalk\\\"},{\\\"comment\\\":\\\"Fake conditionals. Smalltalk Methods.\\\",\\\"match\\\":\\\"ifCurtailed:|ifTrue:|ifFalse:|whileFalse:|whileTrue:\\\",\\\"name\\\":\\\"keyword.control.conditionals.smalltalk\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.smalltalk\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.smalltalk\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.smalltalk\\\"}},\\\"match\\\":\\\"(\\\\\\\\w+)(\\\\\\\\s+(subclass:))\\\\\\\\s*(\\\\\\\\w*)\\\",\\\"name\\\":\\\"meta.class.smalltalk\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.comment.begin.smalltalk\\\"}],\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.comment.end.smalltalk\\\"}],\\\"name\\\":\\\"comment.block.smalltalk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.smalltalk\\\"},{\\\"match\\\":\\\"\\\\\\\\b(nil)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.nil.smalltalk\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.smalltalk\\\"}},\\\"comment\\\":\\\"messages/methods\\\",\\\"match\\\":\\\"(?>[a-zA-Z_]\\\\\\\\w*(?>[?!])?)(:)(?!:)\\\",\\\"name\\\":\\\"constant.other.messages.smalltalk\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.smalltalk\\\"}},\\\"comment\\\":\\\"symbols\\\",\\\"match\\\":\\\"(#)[a-zA-Z_][a-zA-Z0-9_:]*\\\",\\\"name\\\":\\\"constant.other.symbol.smalltalk\\\"},{\\\"begin\\\":\\\"#\\\\\\\\[\\\",\\\"beginCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.constant.begin.smalltalk\\\"}],\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.constant.end.smalltalk\\\"}],\\\"name\\\":\\\"meta.array.byte.smalltalk\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[0-9]+(r[a-zA-Z0-9]+)?\\\",\\\"name\\\":\\\"constant.numeric.integer.smalltalk\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s\\\\\\\\]]+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.smalltalk\\\"}]},{\\\"begin\\\":\\\"#\\\\\\\\(\\\",\\\"beginCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.constant.begin.smalltalk\\\"}],\\\"comment\\\":\\\"Array Constructor\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.constant.end.smalltalk\\\"}],\\\"name\\\":\\\"constant.other.array.smalltalk\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.string.begin.smalltalk\\\"}],\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":[{\\\"name\\\":\\\"punctuation.definition.string.end.smalltalk\\\"}],\\\"name\\\":\\\"string.quoted.single.smalltalk\\\"},{\\\"match\\\":\\\"\\\\\\\\b[A-Z]\\\\\\\\w*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.constant.smalltalk\\\"}],\\\"repository\\\":{\\\"numeric\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\w)[0-9]+\\\\\\\\.[0-9]+s[0-9]*\\\",\\\"name\\\":\\\"constant.numeric.float.scaled.smalltalk\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)[0-9]+\\\\\\\\.[0-9]+([edq]-?[0-9]+)?\\\",\\\"name\\\":\\\"constant.numeric.float.smalltalk\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)-?[0-9]+r[a-zA-Z0-9]+\\\",\\\"name\\\":\\\"constant.numeric.integer.radix.smalltalk\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\w)-?[0-9]+([edq]-?[0-9]+)?\\\",\\\"name\\\":\\\"constant.numeric.integer.smalltalk\\\"}]}},\\\"scopeName\\\":\\\"source.smalltalk\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Solidity\\\",\\\"fileTypes\\\":[\\\"sol\\\"],\\\"name\\\":\\\"solidity\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#natspec\\\"},{\\\"include\\\":\\\"#declaration-userType\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#control\\\"},{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#primitive\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#type-modifier-extended-scope\\\"},{\\\"include\\\":\\\"#declaration\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#assembly\\\"},{\\\"include\\\":\\\"#punctuation\\\"}],\\\"repository\\\":{\\\"assembly\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(assembly)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.assembly\\\"},{\\\"match\\\":\\\"\\\\\\\\b(let)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.assembly\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-line\\\"},{\\\"include\\\":\\\"#comment-block\\\"}]},\\\"comment-block\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-todo\\\"}]},\\\"comment-line\\\":{\\\"begin\\\":\\\"(?<!tp:)//\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-todo\\\"}]},\\\"comment-todo\\\":{\\\"match\\\":\\\"(?i)\\\\\\\\b(FIXME|TODO|CHANGED|XXX|IDEA|HACK|NOTE|REVIEW|NB|BUG|QUESTION|COMBAK|TEMP|SUPPRESS|LINT|\\\\\\\\w+-disable|\\\\\\\\w+-suppress)\\\\\\\\b(?-i)\\\",\\\"name\\\":\\\"keyword.comment.todo\\\"},\\\"constant\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constant-boolean\\\"},{\\\"include\\\":\\\"#constant-time\\\"},{\\\"include\\\":\\\"#constant-currency\\\"}]},\\\"constant-boolean\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean\\\"},\\\"constant-currency\\\":{\\\"match\\\":\\\"\\\\\\\\b(ether|wei|gwei|finney|szabo)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.currency\\\"},\\\"constant-time\\\":{\\\"match\\\":\\\"\\\\\\\\b(seconds|minutes|hours|days|weeks|years)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.time\\\"},\\\"control\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#control-flow\\\"},{\\\"include\\\":\\\"#control-using\\\"},{\\\"include\\\":\\\"#control-import\\\"},{\\\"include\\\":\\\"#control-pragma\\\"},{\\\"include\\\":\\\"#control-underscore\\\"},{\\\"include\\\":\\\"#control-unchecked\\\"},{\\\"include\\\":\\\"#control-other\\\"}]},\\\"control-flow\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(if|else|for|while|do|break|continue|try|catch|finally|throw|return|global)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(returns)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.return\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration-function-parameters\\\"}]}]},\\\"control-import\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(import)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\;)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"((?=\\\\\\\\{))\\\",\\\"end\\\":\\\"((?=\\\\\\\\}))\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.interface\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(from)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.from\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(import)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import\\\"}]},\\\"control-other\\\":{\\\"match\\\":\\\"\\\\\\\\b(new|delete|emit)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control\\\"},\\\"control-pragma\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.pragma\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.pragma\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.other.pragma\\\"}},\\\"match\\\":\\\"\\\\\\\\b(pragma)(?:\\\\\\\\s+([A-Za-z_]\\\\\\\\w+)\\\\\\\\s+([^\\\\\\\\s]+))?\\\\\\\\b\\\"},\\\"control-unchecked\\\":{\\\"match\\\":\\\"\\\\\\\\b(unchecked)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.unchecked\\\"},\\\"control-underscore\\\":{\\\"match\\\":\\\"\\\\\\\\b(_)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.underscore\\\"},\\\"control-using\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.using\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.library\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.for\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type\\\"}},\\\"match\\\":\\\"\\\\\\\\b(using)\\\\\\\\b\\\\\\\\s+\\\\\\\\b([A-Za-z\\\\\\\\d_]+)\\\\\\\\b\\\\\\\\s+\\\\\\\\b(for)\\\\\\\\b\\\\\\\\s+\\\\\\\\b([A-Za-z\\\\\\\\d_]+)\\\"},{\\\"match\\\":\\\"\\\\\\\\b(using)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.using\\\"}]},\\\"declaration\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration-contract\\\"},{\\\"include\\\":\\\"#declaration-userType\\\"},{\\\"include\\\":\\\"#declaration-interface\\\"},{\\\"include\\\":\\\"#declaration-library\\\"},{\\\"include\\\":\\\"#declaration-function\\\"},{\\\"include\\\":\\\"#declaration-modifier\\\"},{\\\"include\\\":\\\"#declaration-constructor\\\"},{\\\"include\\\":\\\"#declaration-event\\\"},{\\\"include\\\":\\\"#declaration-storage\\\"},{\\\"include\\\":\\\"#declaration-error\\\"}]},\\\"declaration-constructor\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(constructor)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.constructor\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration-function-parameters\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\",\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-modifier-access\\\"},{\\\"include\\\":\\\"#function-call\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.constructor\\\"}},\\\"match\\\":\\\"\\\\\\\\b(constructor)\\\\\\\\b\\\"}]},\\\"declaration-contract\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(contract)\\\\\\\\b\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\b\\\\\\\\s+\\\\\\\\b(is)\\\\\\\\b\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.contract\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.contract\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.is\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.contract.extend\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.contract\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.contract\\\"}},\\\"match\\\":\\\"\\\\\\\\b(contract)(\\\\\\\\s+([A-Za-z_]\\\\\\\\w*))?\\\\\\\\b\\\"}]},\\\"declaration-enum\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(enum)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.enum\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.enummember\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.enum\\\"}},\\\"match\\\":\\\"\\\\\\\\b(enum)(\\\\\\\\s+([A-Za-z_]\\\\\\\\w*))?\\\\\\\\b\\\"}]},\\\"declaration-error\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.error\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.error\\\"}},\\\"match\\\":\\\"\\\\\\\\b(error)(\\\\\\\\s+([A-Za-z_]\\\\\\\\w*))?\\\\\\\\b\\\"},\\\"declaration-event\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(event)\\\\\\\\b(?:\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\b)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.event\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.event\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier.indexed\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.event\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(indexed)\\\\\\\\s)?(\\\\\\\\w+)(?:,\\\\\\\\s*|)\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.event\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.event\\\"}},\\\"match\\\":\\\"\\\\\\\\b(event)(\\\\\\\\s+([A-Za-z_]\\\\\\\\w*))?\\\\\\\\b\\\"}]},\\\"declaration-function\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(function)\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{|;)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#natspec\\\"},{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#declaration-function-parameters\\\"},{\\\"include\\\":\\\"#type-modifier-access\\\"},{\\\"include\\\":\\\"#type-modifier-payable\\\"},{\\\"include\\\":\\\"#type-modifier-immutable\\\"},{\\\"include\\\":\\\"#type-modifier-extended-scope\\\"},{\\\"include\\\":\\\"#control-flow\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#modifier-call\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function\\\"}},\\\"match\\\":\\\"\\\\\\\\b(function)\\\\\\\\s+([A-Za-z_]\\\\\\\\w*)\\\\\\\\b\\\"}]},\\\"declaration-function-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#type-modifier-extended-scope\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.struct\\\"}},\\\"match\\\":\\\"\\\\\\\\b([A-Z]\\\\\\\\w*)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#comment\\\"}]},\\\"declaration-interface\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(interface)\\\\\\\\b\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\b\\\\\\\\s+\\\\\\\\b(is)\\\\\\\\b\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.interface\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.interface\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.is\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.interface.extend\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.interface\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.interface\\\"}},\\\"match\\\":\\\"\\\\\\\\b(interface)(\\\\\\\\s+([A-Za-z_]\\\\\\\\w*))?\\\\\\\\b\\\"}]},\\\"declaration-library\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.library\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.library\\\"}},\\\"match\\\":\\\"\\\\\\\\b(library)(\\\\\\\\s+([A-Za-z_]\\\\\\\\w*))?\\\\\\\\b\\\"},\\\"declaration-modifier\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(modifier)\\\\\\\\b\\\\\\\\s*(\\\\\\\\w+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.modifier\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.modifier\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration-function-parameters\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\",\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration-function-parameters\\\"},{\\\"include\\\":\\\"#type-modifier-access\\\"},{\\\"include\\\":\\\"#type-modifier-payable\\\"},{\\\"include\\\":\\\"#type-modifier-immutable\\\"},{\\\"include\\\":\\\"#type-modifier-extended-scope\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#modifier-call\\\"},{\\\"include\\\":\\\"#control-flow\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.modifier\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function\\\"}},\\\"match\\\":\\\"\\\\\\\\b(modifier)(\\\\\\\\s+([A-Za-z_]\\\\\\\\w*))?\\\\\\\\b\\\"}]},\\\"declaration-storage\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration-storage-mapping\\\"},{\\\"include\\\":\\\"#declaration-struct\\\"},{\\\"include\\\":\\\"#declaration-enum\\\"},{\\\"include\\\":\\\"#declaration-storage-field\\\"}]},\\\"declaration-storage-field\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#control\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#type-modifier-access\\\"},{\\\"include\\\":\\\"#type-modifier-immutable\\\"},{\\\"include\\\":\\\"#type-modifier-extend-scope\\\"},{\\\"include\\\":\\\"#type-modifier-payable\\\"},{\\\"include\\\":\\\"#type-modifier-constant\\\"},{\\\"include\\\":\\\"#primitive\\\"},{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]},\\\"declaration-storage-mapping\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(mapping)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.mapping\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declaration-storage-mapping\\\"},{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#operator\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(mapping)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.mapping\\\"}]},\\\"declaration-struct\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.struct\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.struct\\\"}},\\\"match\\\":\\\"\\\\\\\\b(struct)(\\\\\\\\s+([A-Za-z_]\\\\\\\\w*))?\\\\\\\\b\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(struct)\\\\\\\\b\\\\\\\\s*(\\\\\\\\w+)?\\\\\\\\b\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.struct\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.struct\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-primitive\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#comment\\\"}]}]},\\\"declaration-userType\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.userType\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.userType\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.is\\\"}},\\\"match\\\":\\\"\\\\\\\\b(type)\\\\\\\\b\\\\\\\\s+(\\\\\\\\w+)\\\\\\\\b\\\\\\\\s+\\\\\\\\b(is)\\\\\\\\b\\\"},\\\"function-call\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parameters.begin\\\"}},\\\"match\\\":\\\"\\\\\\\\b([A-Za-z_]\\\\\\\\w*)\\\\\\\\s*(\\\\\\\\()\\\"},\\\"global\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#global-variables\\\"},{\\\"include\\\":\\\"#global-functions\\\"}]},\\\"global-functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(require|assert|revert)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.exceptions\\\"},{\\\"match\\\":\\\"\\\\\\\\b(selfdestruct|suicide)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.contract\\\"},{\\\"match\\\":\\\"\\\\\\\\b(addmod|mulmod|keccak256|sha256|sha3|ripemd160|ecrecover)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.math\\\"},{\\\"match\\\":\\\"\\\\\\\\b(unicode)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.string\\\"},{\\\"match\\\":\\\"\\\\\\\\b(blockhash|gasleft)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.transaction\\\"},{\\\"match\\\":\\\"\\\\\\\\b(type)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.type\\\"}]},\\\"global-variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(this)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.this\\\"},{\\\"match\\\":\\\"\\\\\\\\b(super)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.super\\\"},{\\\"match\\\":\\\"\\\\\\\\b(abi)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.builtin.abi\\\"},{\\\"match\\\":\\\"\\\\\\\\b(msg\\\\\\\\.sender|msg|block|tx|now)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.transaction\\\"},{\\\"match\\\":\\\"\\\\\\\\b(tx\\\\\\\\.origin|tx\\\\\\\\.gasprice|msg\\\\\\\\.data|msg\\\\\\\\.sig|msg\\\\\\\\.value)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.transaction\\\"}]},\\\"modifier-call\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.modifier\\\"}]},\\\"natspec\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#natspec-tags\\\"}]},{\\\"begin\\\":\\\"///\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.block.documentation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#natspec-tags\\\"}]}]},\\\"natspec-tag-author\\\":{\\\"match\\\":\\\"(@author)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.author.natspec\\\"},\\\"natspec-tag-custom\\\":{\\\"match\\\":\\\"(@custom:\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.dev.natspec\\\"},\\\"natspec-tag-dev\\\":{\\\"match\\\":\\\"(@dev)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.dev.natspec\\\"},\\\"natspec-tag-inheritdoc\\\":{\\\"match\\\":\\\"(@inheritdoc)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.author.natspec\\\"},\\\"natspec-tag-notice\\\":{\\\"match\\\":\\\"(@notice)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.dev.natspec\\\"},\\\"natspec-tag-param\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.param.natspec\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.natspec\\\"}},\\\"match\\\":\\\"(@param)(\\\\\\\\s+([A-Za-z_]\\\\\\\\w*))?\\\\\\\\b\\\"},\\\"natspec-tag-return\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.return.natspec\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.natspec\\\"}},\\\"match\\\":\\\"(@return)(\\\\\\\\s+([A-Za-z_]\\\\\\\\w*))?\\\\\\\\b\\\"},\\\"natspec-tag-title\\\":{\\\"match\\\":\\\"(@title)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.title.natspec\\\"},\\\"natspec-tags\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-todo\\\"},{\\\"include\\\":\\\"#natspec-tag-title\\\"},{\\\"include\\\":\\\"#natspec-tag-author\\\"},{\\\"include\\\":\\\"#natspec-tag-notice\\\"},{\\\"include\\\":\\\"#natspec-tag-dev\\\"},{\\\"include\\\":\\\"#natspec-tag-param\\\"},{\\\"include\\\":\\\"#natspec-tag-return\\\"},{\\\"include\\\":\\\"#natspec-tag-custom\\\"},{\\\"include\\\":\\\"#natspec-tag-inheritdoc\\\"}]},\\\"number\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#number-decimal\\\"},{\\\"include\\\":\\\"#number-hex\\\"},{\\\"include\\\":\\\"#number-scientific\\\"}]},\\\"number-decimal\\\":{\\\"match\\\":\\\"\\\\\\\\b([0-9_]+(\\\\\\\\.[0-9_]+)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal\\\"},\\\"number-hex\\\":{\\\"match\\\":\\\"\\\\\\\\b(0[xX][a-fA-F0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hexadecimal\\\"},\\\"number-scientific\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:0\\\\\\\\.(?:0[0-9]|[0-9][0-9_]?)|[0-9][0-9_]*(?:\\\\\\\\.\\\\\\\\d{1,2})?)(?:e[+-]?[0-9_]+)?\\\",\\\"name\\\":\\\"constant.numeric.scientific\\\"},\\\"operator\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#operator-logic\\\"},{\\\"include\\\":\\\"#operator-mapping\\\"},{\\\"include\\\":\\\"#operator-arithmetic\\\"},{\\\"include\\\":\\\"#operator-binary\\\"},{\\\"include\\\":\\\"#operator-assignment\\\"}]},\\\"operator-arithmetic\\\":{\\\"match\\\":\\\"(\\\\\\\\+|\\\\\\\\-|\\\\\\\\/|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic\\\"},\\\"operator-assignment\\\":{\\\"match\\\":\\\"(\\\\\\\\:?=)\\\",\\\"name\\\":\\\"keyword.operator.assignment\\\"},\\\"operator-binary\\\":{\\\"match\\\":\\\"(\\\\\\\\^|\\\\\\\\&|\\\\\\\\||<<|>>)\\\",\\\"name\\\":\\\"keyword.operator.binary\\\"},\\\"operator-logic\\\":{\\\"match\\\":\\\"(==|\\\\\\\\!=|<(?!<)|<=|>(?!>)|>=|\\\\\\\\&\\\\\\\\&|\\\\\\\\|\\\\\\\\||\\\\\\\\:(?!=)|\\\\\\\\?|\\\\\\\\!)\\\",\\\"name\\\":\\\"keyword.operator.logic\\\"},\\\"operator-mapping\\\":{\\\"match\\\":\\\"(=>)\\\",\\\"name\\\":\\\"keyword.operator.mapping\\\"},\\\"primitive\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#number-decimal\\\"},{\\\"include\\\":\\\"#number-hex\\\"},{\\\"include\\\":\\\"#number-scientific\\\"},{\\\"include\\\":\\\"#string\\\"}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.accessor\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator\\\"},{\\\"match\\\":\\\"\\\\\\\\{\\\",\\\"name\\\":\\\"punctuation.brace.curly.begin\\\"},{\\\"match\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"punctuation.brace.curly.end\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.brace.square.begin\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.brace.square.end\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.parameters.begin\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.parameters.end\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\"(?:\\\\\\\\\\\\\\\\\\\\\\\"|[^\\\\\\\\\\\\\\\"])*\\\\\\\\\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double\\\"},{\\\"match\\\":\\\"\\\\\\\\'(?:\\\\\\\\\\\\\\\\'|[^\\\\\\\\'])*\\\\\\\\'\\\",\\\"name\\\":\\\"string.quoted.single\\\"}]},\\\"type-modifier-access\\\":{\\\"match\\\":\\\"\\\\\\\\b(internal|external|private|public)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.modifier.access\\\"},\\\"type-modifier-constant\\\":{\\\"match\\\":\\\"\\\\\\\\b(constant)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.modifier.readonly\\\"},\\\"type-modifier-extended-scope\\\":{\\\"match\\\":\\\"\\\\\\\\b(pure|view|inherited|indexed|storage|memory|virtual|calldata|override|abstract)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.modifier.extendedscope\\\"},\\\"type-modifier-immutable\\\":{\\\"match\\\":\\\"\\\\\\\\b(immutable)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.modifier.readonly\\\"},\\\"type-modifier-payable\\\":{\\\"match\\\":\\\"\\\\\\\\b(nonpayable|payable)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.modifier.payable\\\"},\\\"type-primitive\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(address|string\\\\\\\\d*|bytes\\\\\\\\d*|int\\\\\\\\d*|uint\\\\\\\\d*|bool|hash\\\\\\\\d*)\\\\\\\\b(?:\\\\\\\\[\\\\\\\\])(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.primitive\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#primitive\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#global\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(address|string\\\\\\\\d*|bytes\\\\\\\\d*|int\\\\\\\\d*|uint\\\\\\\\d*|bool|hash\\\\\\\\d*)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.primitive\\\"}]},\\\"variable\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function\\\"}},\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\_\\\\\\\\w+)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.variable.property\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\.)(\\\\\\\\w+)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.other\\\"}},\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\b\\\"}]}},\\\"scopeName\\\":\\\"source.solidity\\\"}\"))\n\nexport default [\nlang\n]\n", "import html from './html.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Closure Templates\\\",\\\"fileTypes\\\":[\\\"soy\\\"],\\\"injections\\\":{\\\"meta.tag\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#body\\\"}]}},\\\"name\\\":\\\"soy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#alias\\\"},{\\\"include\\\":\\\"#delpackage\\\"},{\\\"include\\\":\\\"#namespace\\\"},{\\\"include\\\":\\\"#template\\\"},{\\\"include\\\":\\\"#comment\\\"}],\\\"repository\\\":{\\\"alias\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.soy\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.soy\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.soy\\\"}},\\\"match\\\":\\\"{(alias)\\\\\\\\s+([\\\\\\\\w\\\\\\\\.]+)(?:\\\\\\\\s+(as)\\\\\\\\s+(\\\\\\\\w+))?}\\\"},\\\"attribute\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.other.attribute.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.double.quoted.soy\\\"}},\\\"match\\\":\\\"(\\\\\\\\w+)=(\\\\\\\"(?:\\\\\\\\\\\\\\\\?.)*?\\\\\\\")\\\"},\\\"body\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#let\\\"},{\\\"include\\\":\\\"#call\\\"},{\\\"include\\\":\\\"#css\\\"},{\\\"include\\\":\\\"#xid\\\"},{\\\"include\\\":\\\"#condition\\\"},{\\\"include\\\":\\\"#condition-control\\\"},{\\\"include\\\":\\\"#for\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#msg\\\"},{\\\"include\\\":\\\"#special-character\\\"},{\\\"include\\\":\\\"#print\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]},\\\"boolean\\\":{\\\"match\\\":\\\"true|false\\\",\\\"name\\\":\\\"language.constant.boolean.soy\\\"},\\\"call\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{((?:del)?call)\\\\\\\\s+([\\\\\\\\w\\\\\\\\.]+)(?=[^/]*?})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.soy\\\"}},\\\"end\\\":\\\"{/(\\\\\\\\1)}\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.soy\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#variant\\\"},{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#param\\\"}]},{\\\"begin\\\":\\\"{((?:del)?call)(\\\\\\\\s+[\\\\\\\\w\\\\\\\\.]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.soy\\\"}},\\\"end\\\":\\\"/}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variant\\\"},{\\\"include\\\":\\\"#attribute\\\"}]}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.soy\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.parameter.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.soy\\\"}},\\\"match\\\":\\\"(@param\\\\\\\\??)\\\\\\\\s+(\\\\\\\\S+)\\\"}]},{\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\/\\\\\\\\/.*)$\\\",\\\"name\\\":\\\"comment.line.double-slash.soy\\\"}]},\\\"condition\\\":{\\\"begin\\\":\\\"{/?(if|elseif|switch|case)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.soy\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"condition-control\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.soy\\\"}},\\\"match\\\":\\\"{(else|ifempty|default)}\\\"},\\\"css\\\":{\\\"begin\\\":\\\"{(css)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.soy\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"delpackage\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.soy\\\"}},\\\"match\\\":\\\"{(delpackage)\\\\\\\\s+([\\\\\\\\w\\\\\\\\.]+)}\\\"},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#boolean\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#null\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#variable-ref\\\"},{\\\"include\\\":\\\"#operator\\\"}]},\\\"for\\\":{\\\"begin\\\":\\\"{/?(foreach|for)(?=\\\\\\\\s|})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.soy\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"in\\\",\\\"name\\\":\\\"keyword.control.soy\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#body\\\"}]},\\\"function\\\":{\\\"begin\\\":\\\"(\\\\\\\\w+)\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.soy\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"let\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{(let)\\\\\\\\s+(\\\\\\\\$\\\\\\\\w+\\\\\\\\s*:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.soy\\\"}},\\\"end\\\":\\\"/}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"{(let)\\\\\\\\s+(\\\\\\\\$\\\\\\\\w+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.soy\\\"}},\\\"end\\\":\\\"{/(\\\\\\\\1)}\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.soy\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#body\\\"}]}]},\\\"literal\\\":{\\\"begin\\\":\\\"{(literal)}\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.soy\\\"}},\\\"end\\\":\\\"{/(\\\\\\\\1)}\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.soy\\\"}},\\\"name\\\":\\\"meta.literal\\\"},\\\"msg\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.soy\\\"}},\\\"end\\\":\\\"}\\\",\\\"match\\\":\\\"{/?(msg|fallbackmsg)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"}]},\\\"namespace\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.soy\\\"}},\\\"match\\\":\\\"{(namespace)\\\\\\\\s+([\\\\\\\\w\\\\\\\\.]+)}\\\"},\\\"null\\\":{\\\"match\\\":\\\"null\\\",\\\"name\\\":\\\"language.constant.null.soy\\\"},\\\"number\\\":{\\\"match\\\":\\\"-?\\\\\\\\.?\\\\\\\\d+|\\\\\\\\d[\\\\\\\\.\\\\\\\\d]*\\\",\\\"name\\\":\\\"language.constant.numeric\\\"},\\\"operator\\\":{\\\"match\\\":\\\"-|not|\\\\\\\\*|\\\\\\\\/|%|\\\\\\\\+|<=|>=|<|>|==|!=|and|or|\\\\\\\\?:|\\\\\\\\?|:\\\",\\\"name\\\":\\\"keyword.operator.soy\\\"},\\\"param\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{(param)\\\\\\\\s+(\\\\\\\\w+\\\\\\\\s*\\\\\\\\:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.soy\\\"}},\\\"end\\\":\\\"/}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"{(param)\\\\\\\\s+(\\\\\\\\w+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.soy\\\"}},\\\"end\\\":\\\"{/(\\\\\\\\1)}\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.soy\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#attribute\\\"},{\\\"include\\\":\\\"#body\\\"}]}]},\\\"print\\\":{\\\"begin\\\":\\\"{(print)?\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.soy\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.soy\\\"}},\\\"match\\\":\\\"\\\\\\\\|\\\\\\\\s*(changeNewlineToBr|truncate|bidiSpanWrap|bidiUnicodeWrap)\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"special-character\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"language.support.constant\\\"}},\\\"match\\\":\\\"{(sp|nil|\\\\\\\\\\\\\\\\r|\\\\\\\\\\\\\\\\n|\\\\\\\\\\\\\\\\t|lb|rb)}\\\"},\\\"string\\\":{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.soy\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[\\\\\\\\\\\\\\\\'\\\\\\\"nrtbf]|u[0-9a-fA-F]{4})\\\",\\\"name\\\":\\\"constant.character.escape.soy\\\"}]},\\\"template\\\":{\\\"begin\\\":\\\"{(template|deltemplate)\\\\\\\\s([\\\\\\\\w\\\\\\\\.]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.soy\\\"}},\\\"end\\\":\\\"{(/\\\\\\\\1)}\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.soy\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"{(@param)(\\\\\\\\??)\\\\\\\\s+(\\\\\\\\S+\\\\\\\\s*:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.parameter.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.keyword.operator.soy\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.soy\\\"}},\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.parameter.soy\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]},{\\\"include\\\":\\\"#variant\\\"},{\\\"include\\\":\\\"#body\\\"},{\\\"include\\\":\\\"#attribute\\\"}]},\\\"type\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"any|null|\\\\\\\\?|string|bool|int|float|number|html|uri|js|css|attributes\\\",\\\"name\\\":\\\"support.type.soy\\\"},{\\\"begin\\\":\\\"(list|map)(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.punctuation.soy\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.modifier.soy\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type\\\"}]}]},\\\"variable-ref\\\":{\\\"match\\\":\\\"\\\\\\\\$[\\\\\\\\a-zA-Z_][\\\\\\\\w\\\\\\\\.]*\\\",\\\"name\\\":\\\"variable.other.soy\\\"},\\\"variant\\\":{\\\"begin\\\":\\\"(variant)=(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.other.attribute.soy\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.double.quoted.soy\\\"}},\\\"contentName\\\":\\\"string.double.quoted.soy\\\",\\\"end\\\":\\\"(\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.double.quoted.soy\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"xid\\\":{\\\"begin\\\":\\\"{(xid)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.soy\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}},\\\"scopeName\\\":\\\"text.html.soy\\\",\\\"embeddedLangs\\\":[\\\"html\\\"],\\\"aliases\\\":[\\\"closure-templates\\\"]}\"))\n\nexport default [\n...html,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Turtle\\\",\\\"fileTypes\\\":[\\\"turtle\\\",\\\"ttl\\\",\\\"acl\\\"],\\\"name\\\":\\\"turtle\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#rule-constraint\\\"},{\\\"include\\\":\\\"#iriref\\\"},{\\\"include\\\":\\\"#prefix\\\"},{\\\"include\\\":\\\"#prefixed-name\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#special-predicate\\\"},{\\\"include\\\":\\\"#literals\\\"},{\\\"include\\\":\\\"#language-tag\\\"}],\\\"repository\\\":{\\\"boolean\\\":{\\\"match\\\":\\\"\\\\\\\\b(?i:true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.sparql\\\"},\\\"comment\\\":{\\\"match\\\":\\\"#.*$\\\",\\\"name\\\":\\\"comment.line.number-sign.turtle\\\"},\\\"integer\\\":{\\\"match\\\":\\\"[+-]?(?:\\\\\\\\d+|[0-9]+\\\\\\\\.[0-9]*|\\\\\\\\.[0-9]+(?:[eE][+-]?\\\\\\\\d+)?)\\\",\\\"name\\\":\\\"constant.numeric.turtle\\\"},\\\"iriref\\\":{\\\"match\\\":\\\"<[^\\\\\\\\x20-\\\\\\\\x20<>\\\\\\\"{}|^`\\\\\\\\\\\\\\\\]*>\\\",\\\"name\\\":\\\"entity.name.type.iriref.turtle\\\"},\\\"language-tag\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.class.turtle\\\"}},\\\"match\\\":\\\"@(\\\\\\\\w+)\\\",\\\"name\\\":\\\"meta.string-literal-language-tag.turtle\\\"},\\\"literals\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#boolean\\\"}]},\\\"numeric\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#integer\\\"}]},\\\"prefix\\\":{\\\"match\\\":\\\"(?i:@?base|@?prefix)\\\\\\\\s\\\",\\\"name\\\":\\\"keyword.operator.turtle\\\"},\\\"prefixed-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.PNAME_NS.turtle\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.variable.PN_LOCAL.turtle\\\"}},\\\"match\\\":\\\"(\\\\\\\\w*:)(\\\\\\\\w*)\\\",\\\"name\\\":\\\"constant.complex.turtle\\\"},\\\"rule-constraint\\\":{\\\"begin\\\":\\\"(rule:content) (\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#prefixed-name\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.triple.turtle\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"string.quoted.triple.turtle\\\"}},\\\"name\\\":\\\"meta.rule-constraint.turtle\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.srs\\\"}]},\\\"single-dquote-string-literal\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.turtle\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.turtle\\\"}},\\\"name\\\":\\\"string.quoted.double.turtle\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"single-squote-string-literal\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.turtle\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.turtle\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.turtle\\\"}},\\\"name\\\":\\\"string.quoted.single.turtle\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"special-predicate\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.turtle\\\"}},\\\"match\\\":\\\"\\\\\\\\s(a)\\\\\\\\s\\\",\\\"name\\\":\\\"meta.specialPredicate.turtle\\\"},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#triple-squote-string-literal\\\"},{\\\"include\\\":\\\"#triple-dquote-string-literal\\\"},{\\\"include\\\":\\\"#single-squote-string-literal\\\"},{\\\"include\\\":\\\"#single-dquote-string-literal\\\"},{\\\"include\\\":\\\"#triple-tick-string-literal\\\"}]},\\\"string-character-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x\\\\\\\\h{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)\\\",\\\"name\\\":\\\"constant.character.escape.turtle\\\"},\\\"triple-dquote-string-literal\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.turtle\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.turtle\\\"}},\\\"name\\\":\\\"string.quoted.triple.turtle\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"triple-squote-string-literal\\\":{\\\"begin\\\":\\\"'''\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.turtle\\\"}},\\\"end\\\":\\\"'''\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.turtle\\\"}},\\\"name\\\":\\\"string.quoted.triple.turtle\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]},\\\"triple-tick-string-literal\\\":{\\\"begin\\\":\\\"```\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.turtle\\\"}},\\\"end\\\":\\\"```\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.turtle\\\"}},\\\"name\\\":\\\"string.quoted.triple.turtle\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-character-escape\\\"}]}},\\\"scopeName\\\":\\\"source.turtle\\\"}\"))\n\nexport default [\nlang\n]\n", "import turtle from './turtle.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"SPARQL\\\",\\\"fileTypes\\\":[\\\"rq\\\",\\\"sparql\\\",\\\"sq\\\"],\\\"name\\\":\\\"sparql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.turtle\\\"},{\\\"include\\\":\\\"#query-keyword-operators\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#expression-operators\\\"}],\\\"repository\\\":{\\\"expression-operators\\\":{\\\"match\\\":\\\"(?:\\\\\\\\|\\\\\\\\||&&|=|!=|<|>|<=|>=|\\\\\\\\*|/|\\\\\\\\+|-|\\\\\\\\||\\\\\\\\^|\\\\\\\\?|\\\\\\\\!)\\\",\\\"name\\\":\\\"support.class.sparql\\\"},\\\"functions\\\":{\\\"match\\\":\\\"\\\\\\\\b(?i:concat|regex|asc|desc|bound|isiri|isuri|isblank|isliteral|isnumeric|str|lang|datatype|sameterm|langmatches|avg|count|group_concat|separator|max|min|sample|sum|iri|uri|bnode|strdt|uuid|struuid|strlang|strlen|substr|ucase|lcase|strstarts|strends|contains|strbefore|strafter|encode_for_uri|replace|abs|round|ceil|floor|rand|now|year|month|day|hours|minutes|seconds|timezone|tz|md5|sha1|sha256|sha384|sha512|coalesce|if)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.sparql\\\"},\\\"query-keyword-operators\\\":{\\\"match\\\":\\\"\\\\\\\\b(?i:define|select|distinct|reduced|from|named|construct|ask|describe|where|graph|having|bind|as|filter|optional|union|order|by|group|limit|offset|values|insert data|delete data|with|delete|insert|clear|silent|default|all|create|drop|copy|move|add|to|using|service|not exists|exists|not in|in|minus|load)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.sparql\\\"},\\\"variables\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\w)[?$]\\\\\\\\w+\\\",\\\"name\\\":\\\"constant.variable.sparql.turtle\\\"}},\\\"scopeName\\\":\\\"source.sparql\\\",\\\"embeddedLangs\\\":[\\\"turtle\\\"]}\"))\n\nexport default [\n...turtle,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Splunk Query Language\\\",\\\"fileTypes\\\":[\\\"splunk\\\",\\\"spl\\\"],\\\"name\\\":\\\"splunk\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Splunk Built-in functions\\\",\\\"match\\\":\\\"(?<=(\\\\\\\\||\\\\\\\\[))([\\\\\\\\s]*)\\\\\\\\b(abstract|accum|addcoltotals|addinfo|addtotals|analyzefields|anomalies|anomalousvalue|append|appendcols|appendpipe|arules|associate|audit|autoregress|bucket|bucketdir|chart|cluster|collect|concurrency|contingency|convert|correlate|crawl|datamodel|dbinspect|dbxquery|dbxlookup|dedup|delete|delta|diff|dispatch|erex|eval|eventcount|eventstats|extract|fieldformat|fields|fieldsummary|file|filldown|fillnull|findtypes|folderize|foreach|format|from|gauge|gentimes|geostats|head|highlight|history|input|inputcsv|inputlookup|iplocation|join|kmeans|kvform|loadjob|localize|localop|lookup|makecontinuous|makemv|makeresults|map|metadata|metasearch|multikv|multisearch|mvcombine|mvexpand|nomv|outlier|outputcsv|outputlookup|outputtext|overlap|pivot|predict|rangemap|rare|regex|relevancy|reltime|rename|replace|rest|return|reverse|rex|rtorder|run|savedsearch|script|scrub|search|searchtxn|selfjoin|sendemail|set|setfields|sichart|sirare|sistats|sitimechart|sitop|sort|spath|stats|strcat|streamstats|table|tags|tail|timechart|top|transaction|transpose|trendline|tscollect|tstats|typeahead|typelearner|typer|uniq|untable|where|x11|xmlkv|xmlunescape|xpath|xyseries)\\\\\\\\b(?=[\\\\\\\\s])\\\",\\\"name\\\":\\\"support.class.splunk_search\\\"},{\\\"comment\\\":\\\"Splunk Eval functions\\\",\\\"match\\\":\\\"\\\\\\\\b(abs|acos|acosh|asin|asinh|atan|atan2|atanh|case|cidrmatch|ceiling|coalesce|commands|cos|cosh|exact|exp|floor|hypot|if|in|isbool|isint|isnotnull|isnull|isnum|isstr|len|like|ln|log|lower|ltrim|match|max|md5|min|mvappend|mvcount|mvdedup|mvfilter|mvfind|mvindex|mvjoin|mvrange|mvsort|mvzip|now|null|nullif|pi|pow|printf|random|relative_time|replace|round|rtrim|searchmatch|sha1|sha256|sha512|sigfig|sin|sinh|spath|split|sqrt|strftime|strptime|substr|tan|tanh|time|tonumber|tostring|trim|typeof|upper|urldecode|validate)(?=\\\\\\\\()\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.splunk_search\\\"},{\\\"comment\\\":\\\"Splunk Transforming functions\\\",\\\"match\\\":\\\"\\\\\\\\b(avg|count|distinct_count|estdc|estdc_error|eval|max|mean|median|min|mode|percentile|range|stdev|stdevp|sum|sumsq|var|varp|first|last|list|values|earliest|earliest_time|latest|latest_time|per_day|per_hour|per_minute|per_second|rate)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.splunk_search\\\"},{\\\"comment\\\":\\\"Splunk Macro Names\\\",\\\"match\\\":\\\"(?<=\\\\\\\\`)[\\\\\\\\w]+(?=\\\\\\\\(|\\\\\\\\`)\\\",\\\"name\\\":\\\"entity.name.function.splunk_search\\\"},{\\\"comment\\\":\\\"Digits\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.splunk_search\\\"},{\\\"comment\\\":\\\"Escape Characters\\\",\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|\\\\\\\\\\\\\\\\\\\\\\\\||\\\\\\\\\\\\\\\\\\\\\\\\*|\\\\\\\\\\\\\\\\\\\\\\\\=)\\\",\\\"name\\\":\\\"contant.character.escape.splunk_search\\\"},{\\\"comment\\\":\\\"Splunk Operators\\\",\\\"match\\\":\\\"(\\\\\\\\|,)\\\",\\\"name\\\":\\\"keyword.operator.splunk_search\\\"},{\\\"comment\\\":\\\"Splunk Language Constants\\\",\\\"match\\\":\\\"(?i)\\\\\\\\b(as|by|or|and|over|where|output|outputnew)\\\\\\\\b|(?-i)\\\\\\\\b(NOT|true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.splunk_search\\\"},{\\\"comment\\\":\\\"Splunk Macro Parameters\\\",\\\"match\\\":\\\"(?<=\\\\\\\\(|,|[^=]\\\\\\\\s{300})([^\\\\\\\\(\\\\\\\\)\\\\\\\\\\\\\\\",=]+)(?=\\\\\\\\)|,)\\\",\\\"name\\\":\\\"variable.parameter.splunk_search\\\"},{\\\"comment\\\":\\\"Splunk Variables\\\",\\\"match\\\":\\\"([\\\\\\\\w\\\\\\\\.]+)(\\\\\\\\[\\\\\\\\]|\\\\\\\\{\\\\\\\\})?([\\\\\\\\s]*)(?=\\\\\\\\=)\\\",\\\"name\\\":\\\"variable.splunk_search\\\"},{\\\"comment\\\":\\\"Comparison or assignment\\\",\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.splunk_search\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\"\\\",\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.splunk_search\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)'\\\",\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)'\\\",\\\"name\\\":\\\"string.quoted.single.splunk_search\\\"},{\\\"begin\\\":\\\"query=\\\\\\\\\\\\\\\"\\\",\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\"\\\",\\\"name\\\":\\\"meta.embedded.block.sql\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)```\\\",\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)```\\\",\\\"name\\\":\\\"comment.block.splunk_search\\\"},{\\\"begin\\\":\\\"`comment\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)`\\\",\\\"name\\\":\\\"comment.block.splunk_search\\\"}],\\\"scopeName\\\":\\\"source.splunk_search\\\",\\\"aliases\\\":[\\\"spl\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"SSH Config\\\",\\\"fileTypes\\\":[\\\"ssh_config\\\",\\\".ssh/config\\\",\\\"sshd_config\\\"],\\\"name\\\":\\\"ssh-config\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(A(cceptEnv|dd(ressFamily|KeysToAgent)|llow(AgentForwarding|Groups|StreamLocalForwarding|TcpForwarding|Users)|uth(enticationMethods|orized((Keys(Command(User)?|File)|Principals(Command(User)?|File)))))|B(anner|atchMode|ind(Address|Interface))|C(anonical(Domains|ize(FallbackLocal|Hostname|MaxDots|PermittedCNAMEs))|ertificateFile|hallengeResponseAuthentication|heckHostIP|hrootDirectory|iphers?|learAllForwardings|ientAlive(CountMax|Interval)|ompression(Level)?|onnect(Timeout|ionAttempts)|ontrolMaster|ontrolPath|ontrolPersist)|D(eny(Groups|Users)|isableForwarding|ynamicForward)|E(nableSSHKeysign|scapeChar|xitOnForwardFailure|xposeAuthInfo)|F(ingerprintHash|orceCommand|orward(Agent|X11(Timeout|Trusted)?))|G(atewayPorts|SSAPI(Authentication|CleanupCredentials|ClientIdentity|DelegateCredentials|KeyExchange|RenewalForcesRekey|ServerIdentity|StrictAcceptorCheck|TrustDns)|atewayPorts|lobalKnownHostsFile)|H(ashKnownHosts|ost(based(AcceptedKeyTypes|Authentication|KeyTypes|UsesNameFromPacketOnly)|Certificate|Key(Agent|Algorithms|Alias)?|Name))|I(dentit(iesOnly|y(Agent|File))|gnore(Rhosts|Unknown|UserKnownHosts)|nclude|PQoS)|K(bdInteractive(Authentication|Devices)|erberos(Authentication|GetAFSToken|OrLocalPasswd|TicketCleanup)|exAlgorithms)|L(istenAddress|ocal(Command|Forward)|oginGraceTime|ogLevel)|M(ACs|atch|ax(AuthTries|Sessions|Startups))|N(oHostAuthenticationForLocalhost|umberOfPasswordPrompts)|P(KCS11Provider|asswordAuthentication|ermit(EmptyPasswords|LocalCommand|Open|RootLogin|TTY|Tunnel|User(Environment|RC))|idFile|ort|referredAuthentications|rint(LastLog|Motd)|rotocol|roxy(Command|Jump|UseFdpass)|ubkey(AcceptedKeyTypes|Authentication))|R(Domain|SAAuthentication|ekeyLimit|emote(Command|Forward)|equestTTY|evoked(HostKeys|Keys)|hostsRSAAuthentication)|S(endEnv|erverAlive(CountMax|Interval)|treamLocalBind(Mask|Unlink)|trict(HostKeyChecking|Modes)|ubsystem|yslogFacility)|T(CPKeepAlive|rustedUserCAKeys|unnel(Device)?)|U(pdateHostKeys|se(BlacklistedKeys|DNS|Keychain|PAM|PrivilegedPort|r(KnownHostsFile)?))|V(erifyHostKeyDNS|ersionAddendum|isualHostKey)|X(11(DisplayOffset|Forwarding|UseLocalhost)|AuthLocation))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ssh-config\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ssh-config\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ssh-config\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.ssh-config\\\"}]},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ssh-config\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ssh-config\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.ssh-config\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.ssh-config\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.ssh-config\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.toc-list.ssh-config\\\"}},\\\"match\\\":\\\"(?:^| |\\\\\\\\t)(Host)\\\\\\\\s+((.*))$\\\"},{\\\"match\\\":\\\"\\\\\\\\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\\\\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\\\\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\\\\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.ssh-config\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.ssh-config\\\"},{\\\"match\\\":\\\"\\\\\\\\b(yes|no)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.ssh-config\\\"},{\\\"match\\\":\\\"\\\\\\\\b[A-Z_]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.ssh-config\\\"}],\\\"scopeName\\\":\\\"source.ssh-config\\\"}\"))\n\nexport default [\nlang\n]\n", "import sql from './sql.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Stata\\\",\\\"fileTypes\\\":[\\\"do\\\",\\\"ado\\\",\\\"mata\\\"],\\\"foldingStartMarker\\\":\\\"\\\\\\\\{\\\\\\\\s*$\\\",\\\"foldingStopMarker\\\":\\\"^\\\\\\\\s*\\\\\\\\}\\\",\\\"name\\\":\\\"stata\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ascii-regex-functions\\\"},{\\\"include\\\":\\\"#unicode-regex-functions\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#subscripts\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#builtin_variables\\\"},{\\\"include\\\":\\\"#macro-commands\\\"},{\\\"comment\\\":\\\"keywords that delimit flow conditionals\\\",\\\"match\\\":\\\"\\\\\\\\b(if|else if|else)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.conditional.stata\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.scalar.stata\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(sca(lar|la|l)?(\\\\\\\\s+de(fine|fin|fi|f)?)?)\\\\\\\\s+(?!(drop|dir?|l(ist|is|i)?)\\\\\\\\s+)\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(mer(ge|g)?)\\\\\\\\s+(1|m|n)(:)(1|m|n)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"match\\\":\\\"m|n\\\",\\\"name\\\":\\\"\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.key-value\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"match\\\":\\\"m|n\\\",\\\"name\\\":\\\"\\\"}]}},\\\"end\\\":\\\"using\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin_variables\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#comments\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.stata\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local-identifiers\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.flow.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(foreach)\\\\\\\\s+((?!in|of).+)\\\\\\\\s+(in|of var(list|lis|li|l)?|of new(list|lis|li|l)?|of num(list|lis|li|l)?)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(foreach)\\\\\\\\s+((?!in|of).+)\\\\\\\\s+(of loc(al|a)?|of glo(bal|ba|b)?)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.stata\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local-identifiers\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.flow.stata\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local-identifiers\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(forvalues|forvalue|forvalu|forval|forva|forv)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.stata\\\"}},\\\"end\\\":\\\"\\\\\\\\s*(=)\\\\\\\\s*([^\\\\\\\\{]+)\\\\\\\\s*|(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.stata\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local-identifiers\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]},{\\\"comment\\\":\\\"keywords that delimit loops\\\",\\\"match\\\":\\\"\\\\\\\\b(while|continue)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.stata\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.stata\\\"}},\\\"comment\\\":\\\"keywords that haven't fit into other groups (yet).\\\",\\\"match\\\":\\\"\\\\\\\\b(as|ass|asse|asser|assert)\\\\\\\\b\\\"},{\\\"comment\\\":\\\"prefixes that require a colon\\\",\\\"match\\\":\\\"\\\\\\\\b(by(sort|sor|so|s)?|statsby|rolling|bootstrap|jackknife|permute|simulate|svy|mi est(imate|imat|ima|im|i)?|nestreg|stepwise|xi|fp|mfp|vers(ion|io|i)?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.function.stata\\\"},{\\\"comment\\\":\\\"prefixes that don't need a colon\\\",\\\"match\\\":\\\"\\\\\\\\b(qui(etly|etl|et|e)?|n(oisily|oisil|oisi|ois|oi|o)?|cap(ture|tur|tu|t)?)\\\\\\\\b:?\\\",\\\"name\\\":\\\"keyword.control.flow.stata\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.function.stata\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.function.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(pr(ogram|ogra|ogr|og|o)?)\\\\\\\\s+((di(r)?|drop|l(ist|is|i)?)\\\\\\\\s+)([\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31})\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*(pr(ogram|ogra|ogr|og|o)?)\\\\\\\\s+(de(fine|fin|fi|f)?\\\\\\\\s+)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.function.stata\\\"}},\\\"end\\\":\\\"(?=,|\\\\\\\\n|/)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"entity.name.function.stata\\\"},{\\\"match\\\":\\\"[^A-za-z_0-9,\\\\\\\\n/ ]+\\\",\\\"name\\\":\\\"invalid.illegal.name.stata\\\"}]},{\\\"captures\\\":{\\\"1\\\":\\\"keyword.functions.data.stata.test\\\"},\\\"match\\\":\\\"\\\\\\\\b(form(at|a)?)\\\\\\\\s*([\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31})*\\\\\\\\s*(%)(-)?(0)?([0-9]+)(.)([0-9]+)(e|f|g)(c)?\\\"},{\\\"include\\\":\\\"#braces-with-error\\\"},{\\\"begin\\\":\\\"(?=syntax)\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"syntax\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.functions.program.stata\\\"}},\\\"comment\\\":\\\"color before the comma\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"///\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.block.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\b(varlist|varname|newvarlist|newvarname|namelist|name|anything)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.class.stata\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b((if|in|using|fweight|aweight|pweight|iweight))\\\\\\\\b(/)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.stata\\\"}},\\\"match\\\":\\\"(/)?(exp)\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#builtin_variables\\\"}]},{\\\"begin\\\":\\\",\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"}},\\\"comment\\\":\\\"things to color after the comma\\\",\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"///\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.block.stata\\\"},{\\\"begin\\\":\\\"([^\\\\\\\\s\\\\\\\\[\\\\\\\\]]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"comment\\\":\\\"these are the names that become macros\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local-identifiers\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.parentheses.stata\\\"}},\\\"comment\\\":\\\"color options with parentheses\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.parentheses.stata\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.stata\\\"}},\\\"comment\\\":\\\"the first word is often a type\\\",\\\"match\\\":\\\"\\\\\\\\b(integer|intege|integ|inte|int|real|string|strin|stri|str)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#builtin_variables\\\"}]},{\\\"include\\\":\\\"#macro-local-identifiers\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#builtin_variables\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"}},\\\"comment\\\":\\\"one-word commands\\\",\\\"match\\\":\\\"\\\\\\\\b(sa(v|ve)|saveold|destring|tostring|u(se|s)?|note(s)?|form(at|a)?)\\\\\\\\b\\\"},{\\\"comment\\\":\\\"programming commands\\\",\\\"match\\\":\\\"\\\\\\\\b(exit|end)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.functions.data.stata\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.assignment.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(replace)\\\\\\\\s+([^=]+)\\\\\\\\s*((==)|(=))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.stata\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#reserved-names\\\"},{\\\"include\\\":\\\"#macro-local\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.operator.assignment.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(g(enerate|enerat|enera|ener|ene|en|e)?|egen)\\\\\\\\s+((byte|int|long|float|double|str[1-9]?[0-9]?[0-9]?[0-9]?|strL)\\\\\\\\s+)?([^=\\\\\\\\s]+)\\\\\\\\s*((==)|(=))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(set ty(pe|p)?)\\\\\\\\s+((byte|int|long|float|double|str[1-9]?[0-9]?[0-9]?[0-9]?|strL)?\\\\\\\\s+)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#macro-local-escaped\\\"},{\\\"include\\\":\\\"#macro-global-escaped\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"match\\\":\\\"[^`\\\\\\\\$]{81,}\\\",\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string.quoted.double.compound.stata\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(la(bel|be|b)?)\\\\\\\\s+(var(iable|iabl|iab|ia|i)?)\\\\\\\\s+([\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31})\\\\\\\\s+(`\\\\\\\")(.+)(\\\\\\\"')\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local-escaped\\\"},{\\\"include\\\":\\\"#macro-global-escaped\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"match\\\":\\\"[^`\\\\\\\\$]{81,}\\\",\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},{\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string.quoted.double.stata\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(la(bel|be|b)?)\\\\\\\\s+(var(iable|iabl|iab|ia|i)?)\\\\\\\\s+([\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31})\\\\\\\\s+(\\\\\\\")(.+)(\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(la(bel|be|b)?)\\\\\\\\s+(da(ta|t)?|var(iable|iabl|iab|ia|i)?|de(f|fi|fin|fine)?|val(ues|ue|u)?|di(r)?|l(ist|is|i)?|copy|drop|save|lang(uage|uag|ua|u)?)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(drop|keep)\\\\\\\\b(?!\\\\\\\\s+(if|in)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(if|in)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#operators\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.functions.data.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(drop|keep)\\\\\\\\s+(if|in)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*mata:?\\\\\\\\s*$\\\",\\\"comment\\\":\\\"won't match single-line Mata statements\\\",\\\"end\\\":\\\"^\\\\\\\\s*end\\\\\\\\s*$\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.embedded.block.mata\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![^$\\\\\\\\s])(version|pragma|if|else|for|while|do|break|continue|goto|return)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.control.mata\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.eltype.mata\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.orgtype.mata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(transmorphic|string|numeric|real|complex|(pointer(\\\\\\\\([^)]+\\\\\\\\))?))\\\\\\\\s+(matrix|vector|rowvector|colvector|scalar)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.mata\\\"},{\\\"comment\\\":\\\"need to end with whitespace character here or last group doesn't match\\\",\\\"match\\\":\\\"\\\\\\\\b(transmorphic|string|numeric|real|complex|(pointer(\\\\\\\\([^)]+\\\\\\\\))?))\\\\\\\\s\\\",\\\"name\\\":\\\"storage.type.eltype.mata\\\"},{\\\"match\\\":\\\"\\\\\\\\b(matrix|vector|rowvector|colvector|scalar)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.orgtype.mata\\\"},{\\\"match\\\":\\\"\\\\\\\\!|\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-|\\\\\\\\&|\\\\\\\\'|\\\\\\\\?|\\\\\\\\\\\\\\\\|\\\\\\\\:\\\\\\\\:|\\\\\\\\,|\\\\\\\\.\\\\\\\\.|\\\\\\\\||\\\\\\\\=|\\\\\\\\=\\\\\\\\=|\\\\\\\\>\\\\\\\\=|\\\\\\\\<\\\\\\\\=|\\\\\\\\<|\\\\\\\\>|\\\\\\\\!\\\\\\\\=|\\\\\\\\#|\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\^|\\\\\\\\/\\\",\\\"name\\\":\\\"keyword.operator.mata\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(odbc)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.stata\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"///\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.block.stata\\\"},{\\\"begin\\\":\\\"(exec?)(\\\\\\\\(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.sql\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},{\\\"include\\\":\\\"#commands-other\\\"}],\\\"repository\\\":{\\\"ascii-regex-character-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\*\\\\\\\\+\\\\\\\\?\\\\\\\\-\\\\\\\\.\\\\\\\\^\\\\\\\\$\\\\\\\\|\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\)\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.backslash.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.character-class.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"illegal.invalid.character-class.stata\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.stata\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.stata\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.stata\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#ascii-regex-character-class\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.stata\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.stata\\\"}},\\\"match\\\":\\\"((\\\\\\\\\\\\\\\\.)|.)\\\\\\\\-((\\\\\\\\\\\\\\\\.)|[^\\\\\\\\]])\\\",\\\"name\\\":\\\"constant.other.character-class.range.stata\\\"}]}]},\\\"ascii-regex-functions\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments-triple-slash\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ascii-regex-internals\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"},\\\"8\\\":{\\\"name\\\":\\\"invalid.illegal.punctuation.stata\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"comment\\\":\\\"color regexm with regular quotes i.e. \\\\\\\" \\\",\\\"match\\\":\\\"\\\\\\\\b(regexm)(\\\\\\\\()([^,]+)(,)\\\\\\\\s*(\\\\\\\")([^\\\\\\\"]+)(\\\\\\\"(')?)\\\\\\\\s*(\\\\\\\\))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments-triple-slash\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ascii-regex-internals\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"comment\\\":\\\"color regexm with compound quotes\\\",\\\"match\\\":\\\"\\\\\\\\b(regexm)(\\\\\\\\()([^,]+)(,)\\\\\\\\s*(`\\\\\\\")([^\\\\\\\"]+)(\\\\\\\"')\\\\\\\\s*(\\\\\\\\))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ascii-regex-internals\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"},\\\"8\\\":{\\\"name\\\":\\\"invalid.illegal.punctuation.stata\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments-triple-slash\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"comment\\\":\\\"color regexr with regular quotes i.e. \\\\\\\" \\\",\\\"match\\\":\\\"\\\\\\\\b(regexr)(\\\\\\\\()([^,]+)(,)\\\\\\\\s*(\\\\\\\")([^\\\\\\\"]+)(\\\\\\\"(')?)\\\\\\\\s*([^\\\\\\\\)]*)(\\\\\\\\))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ascii-regex-internals\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments-triple-slash\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"comment\\\":\\\"color regexr with compound quotes i.e. `\\\\\\\"text\\\\\\\"' \\\",\\\"match\\\":\\\"\\\\\\\\b(regexr)(\\\\\\\\()([^,]+)(,)\\\\\\\\s*(`\\\\\\\")([^\\\\\\\"]+)(\\\\\\\"')\\\\\\\\s*([^\\\\\\\\)]*)(\\\\\\\\))\\\"}]},\\\"ascii-regex-internals\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\^\\\",\\\"name\\\":\\\"keyword.control.anchor.stata\\\"},{\\\"comment\\\":\\\"matched when not a global, but must be ascii\\\",\\\"match\\\":\\\"\\\\\\\\$(?![a-zA-Z_\\\\\\\\{])\\\",\\\"name\\\":\\\"keyword.control.anchor.stata\\\"},{\\\"match\\\":\\\"[\\\\\\\\?\\\\\\\\+\\\\\\\\*]\\\",\\\"name\\\":\\\"keyword.control.quantifier.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.control.or.stata\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()(?=\\\\\\\\?|\\\\\\\\*|\\\\\\\\+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.group.stata\\\"}},\\\"contentName\\\":\\\"invalid.illegal.regexm.stata\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.group.stata\\\"}}},{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.group.stata\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.group.stata\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#ascii-regex-internals\\\"}]},{\\\"include\\\":\\\"#ascii-regex-character-class\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"comment\\\":\\\"NOTE: Error if I have .+ No idea why but it works fine it seems with just .\\\",\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string.quoted.stata\\\"}]},\\\"braces-with-error\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\{)\\\\\\\\s*([^\\\\\\\\n]*)(?=\\\\\\\\n)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.block.begin.stata\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]+\\\",\\\"name\\\":\\\"illegal.invalid.name.stata\\\"}]}},\\\"comment\\\":\\\"correct with nothing else on the line but whitespace; before and after; before; after; correct\\\",\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\})\\\\\\\\s*$|^\\\\\\\\s*([^\\\\\\\\*\\\\\\\"\\\\\\\\}]+)\\\\\\\\s+(\\\\\\\\})\\\\\\\\s*([^\\\\\\\\*\\\\\\\"\\\\\\\\}/\\\\\\\\n]+)|^\\\\\\\\s*([^\\\\\\\"\\\\\\\\*\\\\\\\\}]+)\\\\\\\\s+(\\\\\\\\})|\\\\\\\\s*(\\\\\\\\})\\\\\\\\s*([^\\\\\\\"\\\\\\\\*\\\\\\\\}/\\\\\\\\n]+)|(\\\\\\\\})$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.block.end.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.block.end.stata\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.block.end.stata\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.control.block.end.stata\\\"},\\\"8\\\":{\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.control.block.end.stata\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"braces-without-error\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.block.begin.stata\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.block.end.stata\\\"}}}]},\\\"builtin_types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(byte|int|long|float|double|str[1-9]?[0-9]?[0-9]?[0-9]?|strL)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.stata\\\"}]},\\\"builtin_variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(_b|_coef|_cons|_n|_N|_rc|_se)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.object.stata\\\"}]},\\\"commands-other\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Add on commands\\\",\\\"match\\\":\\\"\\\\\\\\b(reghdfe|ivreghdfe|ivreg2|outreg|gcollapse|gcontract|gegen|gisid|glevelsof|gquantiles)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.stata\\\"},{\\\"comment\\\":\\\"Built in commands\\\",\\\"match\\\":\\\"\\\\\\\\b(about|ac|acprplot|ado|adopath|adoupdate|alpha|ameans|an|ano|anov|anova|anova_terms|anovadef|aorder|ap|app|appe|appen|append|arch|arch_dr|arch_estat|arch_p|archlm|areg|areg_p|args|arima|arima_dr|arima_estat|arima_p|asmprobit|asmprobit_estat|asmprobit_lf|asmprobit_mfx__dlg|asmprobit_p|avplot|avplots|bcskew0|bgodfrey|binreg|bip0_lf|biplot|bipp_lf|bipr_lf|bipr_p|biprobit|bitest|bitesti|bitowt|blogit|bmemsize|boot|bootsamp|boxco_l|boxco_p|boxcox|boxcox_p|bprobit|br|break|brier|bro|brow|brows|browse|brr|brrstat|bs|bsampl_w|bsample|bsqreg|bstat|bstrap|ca|ca_estat|ca_p|cabiplot|camat|canon|canon_estat|canon_p|caprojection|cat|cc|cchart|cci|cd|censobs_table|centile|cf|char|chdir|checkdlgfiles|checkestimationsample|checkhlpfiles|checksum|chelp|ci|cii|cl|class|classutil|clear|cli|clis|clist|clog|clog_lf|clog_p|clogi|clogi_sw|clogit|clogit_lf|clogit_p|clogitp|clogl_sw|cloglog|clonevar|clslistarray|cluster|cluster_measures|cluster_stop|cluster_tree|cluster_tree_8|clustermat|cmdlog|cnr|cnre|cnreg|cnreg_p|cnreg_sw|cnsreg|codebook|collaps4|collapse|colormult_nb|colormult_nw|compare|compress|conf|confi|confir|confirm|conren|cons|const|constr|constra|constrai|constrain|constraint|contract|copy|copyright|copysource|cor|corc|corr|corr2data|corr_anti|corr_kmo|corr_smc|corre|correl|correla|correlat|correlate|corrgram|cou|coun|count|cprplot|crc|cret|cretu|cretur|creturn|cross|cs|cscript|cscript_log|csi|ct|ct_is|ctset|ctst_st|cttost|cumsp|cumul|cusum|cutil|d|datasig|datasign|datasigna|datasignat|datasignatu|datasignatur|datasignature|datetof|db|dbeta|de|dec|deco|decod|decode|deff|des|desc|descr|descri|describ|describe|dfbeta|dfgls|dfuller|di|di_g|dir|dirstats|dis|discard|disp|disp_res|disp_s|displ|displa|display|do|doe|doed|doedi|doedit|dotplot|dprobit|drawnorm|ds|ds_util|dstdize|duplicates|durbina|dwstat|dydx|ed|edi|edit|eivreg|emdef|en|enc|enco|encod|encode|eq|erase|ereg|ereg_lf|ereg_p|ereg_sw|ereghet|ereghet_glf|ereghet_glf_sh|ereghet_gp|ereghet_ilf|ereghet_ilf_sh|ereghet_ip|eret|eretu|eretur|ereturn|err|erro|error|est|est_cfexist|est_cfname|est_clickable|est_expand|est_hold|est_table|est_unhold|est_unholdok|estat|estat_default|estat_summ|estat_vce_only|esti|estimates|etodow|etof|etomdy|expand|expandcl|fac|fact|facto|factor|factor_estat|factor_p|factor_pca_rotated|factor_rotate|factormat|fcast|fcast_compute|fcast_graph|fdades|fdadesc|fdadescr|fdadescri|fdadescrib|fdadescribe|fdasav|fdasave|fdause|fh_st|file|filefilter|fillin|find_hlp_file|findfile|findit|fit|fl|fli|flis|flist|fpredict|frac_adj|frac_chk|frac_cox|frac_ddp|frac_dis|frac_dv|frac_in|frac_mun|frac_pp|frac_pq|frac_pv|frac_wgt|frac_xo|fracgen|fracplot|fracpoly|fracpred|fron_ex|fron_hn|fron_p|fron_tn|fron_tn2|frontier|ftodate|ftoe|ftomdy|ftowdate|gamhet_glf|gamhet_gp|gamhet_ilf|gamhet_ip|gamma|gamma_d2|gamma_p|gamma_sw|gammahet|gdi_hexagon|gdi_spokes|genrank|genstd|genvmean|gettoken|gladder|glim_l01|glim_l02|glim_l03|glim_l04|glim_l05|glim_l06|glim_l07|glim_l08|glim_l09|glim_l10|glim_l11|glim_l12|glim_lf|glim_mu|glim_nw1|glim_nw2|glim_nw3|glim_p|glim_v1|glim_v2|glim_v3|glim_v4|glim_v5|glim_v6|glim_v7|glm|glm_p|glm_sw|glmpred|glogit|glogit_p|gmeans|gnbre_lf|gnbreg|gnbreg_p|gomp_lf|gompe_sw|gomper_p|gompertz|gompertzhet|gomphet_glf|gomphet_glf_sh|gomphet_gp|gomphet_ilf|gomphet_ilf_sh|gomphet_ip|gphdot|gphpen|gphprint|gprefs|gprobi_p|gprobit|gr|gr7|gr_copy|gr_current|gr_db|gr_describe|gr_dir|gr_draw|gr_draw_replay|gr_drop|gr_edit|gr_editviewopts|gr_example|gr_example2|gr_export|gr_print|gr_qscheme|gr_query|gr_read|gr_rename|gr_replay|gr_save|gr_set|gr_setscheme|gr_table|gr_undo|gr_use|graph|grebar|greigen|grmeanby|gs_fileinfo|gs_filetype|gs_graphinfo|gs_stat|gsort|gwood|h|hareg|hausman|haver|he|heck_d2|heckma_p|heckman|heckp_lf|heckpr_p|heckprob|hel|help|hereg|hetpr_lf|hetpr_p|hetprob|hettest|hexdump|hilite|hist|histogram|hlogit|hlu|hmeans|hotel|hotelling|hprobit|hreg|hsearch|icd9|icd9_ff|icd9p|iis|impute|imtest|inbase|include|inf|infi|infil|infile|infix|inp|inpu|input|ins|insheet|insp|inspe|inspec|inspect|integ|inten|intreg|intreg_p|intrg2_ll|intrg_ll|intrg_ll2|ipolate|iqreg|ir|irf|irf_create|irfm|iri|is_svy|is_svysum|isid|istdize|ivprobit|ivprobit_p|ivreg|ivreg_footnote|ivtob_lf|ivtobit|ivtobit_p|jacknife|jknife|jkstat|joinby|kalarma1|kap|kapmeier|kappa|kapwgt|kdensity|ksm|ksmirnov|ktau|kwallis|labelbook|ladder|levelsof|leverage|lfit|lfit_p|li|lincom|line|linktest|lis|list|lloghet_glf|lloghet_glf_sh|lloghet_gp|lloghet_ilf|lloghet_ilf_sh|lloghet_ip|llogi_sw|llogis_p|llogist|llogistic|llogistichet|lnorm_lf|lnorm_sw|lnorma_p|lnormal|lnormalhet|lnormhet_glf|lnormhet_glf_sh|lnormhet_gp|lnormhet_ilf|lnormhet_ilf_sh|lnormhet_ip|lnskew0|loadingplot|(?<!\\\\\\\\.)log|logi|logis_lf|logistic|logistic_p|logit|logit_estat|logit_p|loglogs|logrank|loneway|lookfor|lookup|lowess|lpredict|lrecomp|lroc|lrtest|ls|lsens|lsens_x|lstat|ltable|ltriang|lv|lvr2plot|m|ma|mac|macr|macro|makecns|man|manova|manovatest|mantel|mark|markin|markout|marksample|mat|mat_capp|mat_order|mat_put_rr|mat_rapp|mata|mata_clear|mata_describe|mata_drop|mata_matdescribe|mata_matsave|mata_matuse|mata_memory|mata_mlib|mata_mosave|mata_rename|mata_which|matalabel|matcproc|matlist|matname|matr|matri|matrix|matrix_input__dlg|matstrik|mcc|mcci|md0_|md1_|md1debug_|md2_|md2debug_|mds|mds_estat|mds_p|mdsconfig|mdslong|mdsmat|mdsshepard|mdytoe|mdytof|me_derd|mean|means|median|memory|memsize|mfp|mfx|mhelp|mhodds|minbound|mixed_ll|mixed_ll_reparm|mkassert|mkdir|mkmat|mkspline|ml|ml_adjs|ml_bhhhs|ml_c_d|ml_check|ml_clear|ml_cnt|ml_debug|ml_defd|ml_e0|ml_e0_bfgs|ml_e0_cycle|ml_e0_dfp|ml_e0i|ml_e1|ml_e1_bfgs|ml_e1_bhhh|ml_e1_cycle|ml_e1_dfp|ml_e2|ml_e2_cycle|ml_ebfg0|ml_ebfr0|ml_ebfr1|ml_ebh0q|ml_ebhh0|ml_ebhr0|ml_ebr0i|ml_ecr0i|ml_edfp0|ml_edfr0|ml_edfr1|ml_edr0i|ml_eds|ml_eer0i|ml_egr0i|ml_elf|ml_elf_bfgs|ml_elf_bhhh|ml_elf_cycle|ml_elf_dfp|ml_elfi|ml_elfs|ml_enr0i|ml_enrr0|ml_erdu0|ml_erdu0_bfgs|ml_erdu0_bhhh|ml_erdu0_bhhhq|ml_erdu0_cycle|ml_erdu0_dfp|ml_erdu0_nrbfgs|ml_exde|ml_footnote|ml_geqnr|ml_grad0|ml_graph|ml_hbhhh|ml_hd0|ml_hold|ml_init|ml_inv|ml_log|ml_max|ml_mlout|ml_mlout_8|ml_model|ml_nb0|ml_opt|ml_p|ml_plot|ml_query|ml_rdgrd|ml_repor|ml_s_e|ml_score|ml_searc|ml_technique|ml_unhold|mleval|mlf_|mlmatbysum|mlmatsum|mlog|mlogi|mlogit|mlogit_footnote|mlogit_p|mlopts|mlsum|mlvecsum|mnl0_|mor|more|mov|move|mprobit|mprobit_lf|mprobit_p|mrdu0_|mrdu1_|mvdecode|mvencode|mvreg|mvreg_estat|nbreg|nbreg_al|nbreg_lf|nbreg_p|nbreg_sw|nestreg|net|newey|newey_p|news|nl|nlcom|nlcom_p|nlexp2|nlexp2a|nlexp3|nlgom3|nlgom4|nlinit|nllog3|nllog4|nlog_rd|nlogit|nlogit_p|nlogitgen|nlogittree|nlpred|nobreak|notes_dlg|nptrend|numlabel|numlist|old_ver|olo|olog|ologi|ologi_sw|ologit|ologit_p|ologitp|on|one|onew|onewa|oneway|op_colnm|op_comp|op_diff|op_inv|op_str|opr|opro|oprob|oprob_sw|oprobi|oprobi_p|oprobit|oprobitp|opts_exclusive|order|orthog|orthpoly|ou|out|outf|outfi|outfil|outfile|outs|outsh|outshe|outshee|outsheet|ovtest|pac|palette|parse_dissim|pause|pca|pca_display|pca_estat|pca_p|pca_rotate|pcamat|pchart|pchi|pcorr|pctile|pentium|pergram|personal|peto_st|pkcollapse|pkcross|pkequiv|pkexamine|pkshape|pksumm|plugin|pnorm|poisgof|poiss_lf|poiss_sw|poisso_p|poisson|poisson_estat|post|postclose|postfile|postutil|pperron|prais|prais_e|prais_e2|prais_p|predict|predictnl|preserve|print|prob|probi|probit|probit_estat|probit_p|proc_time|procoverlay|procrustes|procrustes_estat|procrustes_p|profiler|prop|proportion|prtest|prtesti|pwcorr|pwd|qs|qby|qbys|qchi|qladder|qnorm|qqplot|qreg|qreg_c|qreg_p|qreg_sw|qu|quadchk|quantile|que|quer|query|range|ranksum|ratio|rchart|rcof|recast|recode|reg|reg3|reg3_p|regdw|regr|regre|regre_p2|regres|regres_p|regress|regress_estat|regriv_p|remap|ren|rena|renam|rename|renpfix|repeat|reshape|restore|ret|retu|retur|return|rmdir|robvar|roccomp|rocf_lf|rocfit|rocgold|rocplot|roctab|rologit|rologit_p|rot|rota|rotat|rotate|rotatemat|rreg|rreg_p|ru|run|runtest|rvfplot|rvpplot|safesum|sample|sampsi|savedresults|sc|scatter|scm_mine|sco|scob_lf|scob_p|scobi_sw|scobit|scor|score|scoreplot|scoreplot_help|scree|screeplot|screeplot_help|sdtest|sdtesti|se|search|separate|seperate|serrbar|serset|set|set_defaults|sfrancia|sh|she|shel|shell|shewhart|signestimationsample|signrank|signtest|simul|sktest|sleep|slogit|slogit_d2|slogit_p|smooth|snapspan|so|sor|sort|spearman|spikeplot|spikeplt|spline_x|split|sqreg|sqreg_p|sret|sretu|sretur|sreturn|ssc|st|st_ct|st_hc|st_hcd|st_hcd_sh|st_is|st_issys|st_note|st_promo|st_set|st_show|st_smpl|st_subid|stack|stbase|stci|stcox|stcox_estat|stcox_fr|stcox_fr_ll|stcox_p|stcox_sw|stcoxkm|stcstat|stcurv|stcurve|stdes|stem|stepwise|stfill|stgen|stir|stjoin|stmc|stmh|stphplot|stphtest|stptime|strate|streg|streg_sw|streset|sts|stset|stsplit|stsum|sttocc|sttoct|stvary|su|suest|sum|summ|summa|summar|summari|summariz|summarize|sunflower|sureg|survcurv|survsum|svar|svar_p|svmat|svy_disp|svy_dreg|svy_est|svy_est_7|svy_estat|svy_get|svy_gnbreg_p|svy_head|svy_header|svy_heckman_p|svy_heckprob_p|svy_intreg_p|svy_ivreg_p|svy_logistic_p|svy_logit_p|svy_mlogit_p|svy_nbreg_p|svy_ologit_p|svy_oprobit_p|svy_poisson_p|svy_probit_p|svy_regress_p|svy_sub|svy_sub_7|svy_x|svy_x_7|svy_x_p|svydes|svygen|svygnbreg|svyheckman|svyheckprob|svyintreg|svyintrg|svyivreg|svylc|svylog_p|svylogit|svymarkout|svymean|svymlog|svymlogit|svynbreg|svyolog|svyologit|svyoprob|svyoprobit|svyopts|svypois|svypoisson|svyprobit|svyprobt|svyprop|svyratio|svyreg|svyreg_p|svyregress|svyset|svytab|svytest|svytotal|sw|swilk|symmetry|symmi|symplot|sysdescribe|sysdir|sysuse|szroeter|ta|tab|tab1|tab2|tab_or|tabd|tabdi|tabdis|tabdisp|tabi|table|tabodds|tabstat|tabu|tabul|tabula|tabulat|tabulate|te|tes|test|testnl|testparm|teststd|tetrachoric|time_it|timer|tis|tob|tobi|tobit|tobit_p|tobit_sw|token|tokeni|tokeniz|tokenize|total|translate|translator|transmap|treat_ll|treatr_p|treatreg|trim|trnb_cons|trnb_mean|trpoiss_d2|trunc_ll|truncr_p|truncreg|tsappend|tset|tsfill|tsline|tsline_ex|tsreport|tsrevar|tsrline|tsset|tssmooth|tsunab|ttest|ttesti|tut_chk|tut_wait|tutorial|tw|tware_st|two|twoway|twoway__fpfit_serset|twoway__function_gen|twoway__histogram_gen|twoway__ipoint_serset|twoway__ipoints_serset|twoway__kdensity_gen|twoway__lfit_serset|twoway__normgen_gen|twoway__pci_serset|twoway__qfit_serset|twoway__scatteri_serset|twoway__sunflower_gen|twoway_ksm_serset|ty|typ|type|typeof|unab|unabbrev|unabcmd|update|uselabel|var|var_mkcompanion|var_p|varbasic|varfcast|vargranger|varirf|varirf_add|varirf_cgraph|varirf_create|varirf_ctable|varirf_describe|varirf_dir|varirf_drop|varirf_erase|varirf_graph|varirf_ograph|varirf_rename|varirf_set|varirf_table|varlmar|varnorm|varsoc|varstable|varstable_w|varstable_w2|varwle|vec|vec_fevd|vec_mkphi|vec_p|vec_p_w|vecirf_create|veclmar|veclmar_w|vecnorm|vecnorm_w|vecrank|vecstable|verinst|vers|versi|versio|version|view|viewsource|vif|vwls|wdatetof|webdescribe|webseek|webuse|wh|whelp|whi|which|wilc_st|wilcoxon|win|wind|windo|window|winexec|wntestb|wntestq|xchart|xcorr|xi|xmlsav|xmlsave|xmluse|xpose|xsh|xshe|xshel|xshell|xt_iis|xt_tis|xtab_p|xtabond|xtbin_p|xtclog|xtcloglog|xtcloglog_d2|xtcloglog_pa_p|xtcloglog_re_p|xtcnt_p|xtcorr|xtdata|xtdes|xtfront_p|xtfrontier|xtgee|xtgee_elink|xtgee_estat|xtgee_makeivar|xtgee_p|xtgee_plink|xtgls|xtgls_p|xthaus|xthausman|xtht_p|xthtaylor|xtile|xtint_p|xtintreg|xtintreg_d2|xtintreg_p|xtivreg|xtline|xtline_ex|xtlogit|xtlogit_d2|xtlogit_fe_p|xtlogit_pa_p|xtlogit_re_p|xtmixed|xtmixed_estat|xtmixed_p|xtnb_fe|xtnb_lf|xtnbreg|xtnbreg_pa_p|xtnbreg_refe_p|xtpcse|xtpcse_p|xtpois|xtpoisson|xtpoisson_d2|xtpoisson_pa_p|xtpoisson_refe_p|xtpred|xtprobit|xtprobit_d2|xtprobit_re_p|xtps_fe|xtps_lf|xtps_ren|xtps_ren_8|xtrar_p|xtrc|xtrc_p|xtrchh|xtrefe_p|yx|yxview__barlike_draw|yxview_area_draw|yxview_bar_draw|yxview_dot_draw|yxview_dropline_draw|yxview_function_draw|yxview_iarrow_draw|yxview_ilabels_draw|yxview_normal_draw|yxview_pcarrow_draw|yxview_pcbarrow_draw|yxview_pccapsym_draw|yxview_pcscatter_draw|yxview_pcspike_draw|yxview_rarea_draw|yxview_rbar_draw|yxview_rbarm_draw|yxview_rcap_draw|yxview_rcapsym_draw|yxview_rconnected_draw|yxview_rline_draw|yxview_rscatter_draw|yxview_rspike_draw|yxview_spike_draw|yxview_sunflower_draw|zap_s|zinb|zinb_llf|zinb_plf|zip|zip_llf|zip_p|zip_plf|zt_ct_5|zt_hc_5|zt_hcd_5|zt_is_5|zt_iss_5|zt_sho_5|zt_smp_5|ztnb|ztnb_p|ztp|ztp_p|prtab|prchange|eststo|estout|esttab|estadd|estpost|ivregress|xtreg|xtreg_be|xtreg_fe|xtreg_ml|xtreg_pa_p|xtreg_re|xtregar|xtrere_p|xtset|xtsf_ll|xtsf_llti|xtsum|xttab|xttest0|xttobit|xttobit_p|xttrans)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.stata\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-double-slash\\\"},{\\\"include\\\":\\\"#comments-star\\\"},{\\\"include\\\":\\\"#comments-block\\\"},{\\\"include\\\":\\\"#comments-triple-slash\\\"}]},\\\"comments-block\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.stata\\\"}},\\\"end\\\":\\\"(\\\\\\\\*/\\\\\\\\s+\\\\\\\\*[^\\\\\\\\n]*)|(\\\\\\\\*/(?!\\\\\\\\*))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.stata\\\"}},\\\"name\\\":\\\"comment.block.stata\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"this ends and restarts a comment block. but need to catch this so that it doesn't start _another_ level of comment blocks\\\",\\\"match\\\":\\\"\\\\\\\\*/\\\\\\\\*\\\"},{\\\"include\\\":\\\"#docblockr-comment\\\"},{\\\"include\\\":\\\"#comments-block\\\"},{\\\"include\\\":\\\"#docstring\\\"}]}]},\\\"comments-double-slash\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^//|(?<=\\\\\\\\s)//)(?!/)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.stata\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line.double-slash.stata\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docblockr-comment\\\"}]}]},\\\"comments-star\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(\\\\\\\\*)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.stata\\\"}},\\\"comment\\\":\\\"TODO! need to except out the occasion that a * comes after a /// on the previous line. May be easiest to join with the comment.line.triple-slash.stata below\\\",\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line.star.stata\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docblockr-comment\\\"},{\\\"begin\\\":\\\"///\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line-continuation.stata\\\"},{\\\"include\\\":\\\"#comments\\\"}]}]},\\\"comments-triple-slash\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^///|(?<=\\\\\\\\s)///)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.stata\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line.triple-slash.stata\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docblockr-comment\\\"}]}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#factorvariables\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:(\\\\\\\\d+\\\\\\\\.\\\\\\\\d*(e[\\\\\\\\-\\\\\\\\+]?\\\\\\\\d+)?))(?=[^a-zA-Z_])\\\",\\\"name\\\":\\\"constant.numeric.float.stata\\\"},{\\\"match\\\":\\\"(?<=[^0-9a-zA-Z_])(?i:(\\\\\\\\.\\\\\\\\d+(e[\\\\\\\\-\\\\\\\\+]?\\\\\\\\d+)?))\\\",\\\"name\\\":\\\"constant.numeric.float.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:(\\\\\\\\d+e[\\\\\\\\-\\\\\\\\+]?\\\\\\\\d+))\\\",\\\"name\\\":\\\"constant.numeric.float.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.stata\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w])(\\\\\\\\.(?![\\\\\\\\./]))(?![\\\\\\\\w])\\\",\\\"name\\\":\\\"constant.language.missing.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\b_all\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.allvars.stata\\\"}]},\\\"docblockr-comment\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.name.stata\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(@(error|ERROR|Error))\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.docblockr.stata\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(@\\\\\\\\w+)\\\\\\\\b\\\"}]},\\\"docstring\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"'''\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"end\\\":\\\"'''\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"name\\\":\\\"string.quoted.docstring.stata\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"name\\\":\\\"string.quoted.docstring.stata\\\"}]},\\\"factorvariables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(i|c|o)\\\\\\\\.(?=[\\\\\\\\w&&[^0-9]]|\\\\\\\\([\\\\\\\\w&&[^0-9]])\\\",\\\"name\\\":\\\"constant.language.factorvars.stata\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language.factorvars.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b(i?b)((\\\\\\\\d+)|n)\\\\\\\\.(?=[\\\\\\\\w&&[^0-9]]|\\\\\\\\([\\\\\\\\w&&[^0-9]])\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language.factorvars.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.parentheses.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.parentheses.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(i?b)(\\\\\\\\()(#\\\\\\\\d+|first|last|freq)(\\\\\\\\))\\\\\\\\.(?=[\\\\\\\\w&&[^0-9]]|\\\\\\\\([\\\\\\\\w&&[^0-9]])\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.language.factorvars.stata\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b(i?o?)(\\\\\\\\d+)\\\\\\\\.(?=[\\\\\\\\w&&[^0-9]]|\\\\\\\\([\\\\\\\\w&&[^0-9]])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.factorvars.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.parentheses.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.parentheses.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.language.factorvars.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(i?o?)(\\\\\\\\()(.*?)(\\\\\\\\))(\\\\\\\\.)(?=[\\\\\\\\w&&[^0-9]]|\\\\\\\\([\\\\\\\\w&&[^0-9]])\\\"}]},\\\"functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((abbrev|abs|acos|acosh|asin|asinh|atan|atan2|atanh|autocode|betaden|binomial|binomialp|binomialtail|binormalbofd|byteorder|c|cauchy|cauchyden|cauchytail|Cdhms|ceil|char|chi2|chi2den|chi2tail|Chms|cholesky|chop|clip|clock|Clock|cloglog|Cmdyhms|cofC|Cofc|cofd|Cofd|coleqnumb|collatorlocale|collatorversion|colnfreeparms|colnumb|colsof|comb|cond|corr|cos|cosh|daily|date|day|det|dgammapda|dgammapdada|dgammapdadx|dgammapdx|dgammapdxdx|dhms|diag|diag0cnt|digamma|dofb|dofc|dofC|dofh|dofm|dofq|dofw|dofy|dow|doy|dunnettprob|e|el|epsdouble|epsfloat|exp|exponential|exponentialden|exponentialtail|F|Fden|fileexists|fileread|filereaderror|filewrite|float|floor|fmtwidth|Ftail|gammaden|gammap|gammaptail|get|hadamard|halfyear|halfyearly|hh|hhC|hms|hofd|hours|hypergeometric|hypergeometricp|I|ibeta|ibetatail|igaussian|igaussianden|igaussiantail|indexnot|inlist|inrange|int|inv|invbinomial|invbinomialtail|invcauchy|invcauchytail|invchi2|invchi2tail|invcloglog|invdunnettprob|invexponential|invexponentialtail|invF|invFtail|invgammap|invgammaptail|invibeta|invibetatail|invigaussian|invigaussiantail|invlaplace|invlaplacetail|invlogistic|invlogistictail|invlogit|invnbinomial|invnbinomialtail|invnchi2|invnchi2tail|invnF|invnFtail|invnibeta|invnormal|invnt|invnttail|invpoisson|invpoissontail|invsym|invt|invttail|invtukeyprob|invweibull|invweibullph|invweibullphtail|invweibulltail|irecode|issymmetric|itrim|J|laplace|laplaceden|laplacetail|length|ln|lncauchyden|lnfactorial|lngamma|lnigammaden|lnigaussianden|lniwishartden|lnlaplaceden|lnmvnormalden|lnnormal|lnnormalden|lnwishartden|log|log10|logistic|logisticden|logistictail|logit|lower|ltrim|matmissing|matrix|matuniform|max|maxbyte|maxdouble|maxfloat|maxint|maxlong|mdy|mdyhms|mi|min|minbyte|mindouble|minfloat|minint|minlong|minutes|missing|mm|mmC|mod|mofd|month|monthly|mreldif|msofhours|msofminutes|msofseconds|nbetaden|nbinomial|nbinomialp|nbinomialtail|nchi2|nchi2den|nchi2tail|nF|nFden|nFtail|nibeta|normal|normalden|npnchi2|npnF|npnt|nt|ntden|nttail|nullmat|plural|poisson|poissonp|poissontail|proper|qofd|quarter|quarterly|r|rbeta|rbinomial|rcauchy|rchi2|real|recode|regexs|reldif|replay|return|reverse|rexponential|rgamma|rhypergeometric|rigaussian|rlaplace|rlogistic|rnbinomial|rnormal|round|roweqnumb|rownfreeparms|rownumb|rowsof|rpoisson|rt|rtrim|runiform|runiformint|rweibull|rweibullph|s|scalar|seconds|sign|sin|sinh|smallestdouble|soundex|sqrt|ss|ssC|string|stritrim|strlen|strlower|strltrim|strmatch|strofreal|strpos|strproper|strreverse|strrpos|strrtrim|strtoname|strtrim|strupper|subinstr|subinword|substr|sum|sweep|t|tan|tanh|tc|tC|td|tden|th|tin|tm|tobytes|tq|trace|trigamma|trim|trunc|ttail|tukeyprob|tw|twithin|uchar|udstrlen|udsubstr|uisdigit|uisletter|upper|ustrcompare|ustrcompareex|ustrfix|ustrfrom|ustrinvalidcnt|ustrleft|ustrlen|ustrlower|ustrltrim|ustrnormalize|ustrpos|ustrregexs|ustrreverse|ustrright|ustrrpos|ustrrtrim|ustrsortkey|ustrsortkeyex|ustrtitle|ustrto|ustrtohex|ustrtoname|ustrtrim|ustrunescape|ustrupper|ustrword|ustrwordcount|usubinstr|usubstr|vec|vecdiag|week|weekly|weibull|weibullden|weibullph|weibullphden|weibullphtail|weibulltail|wofd|word|wordbreaklocale|wordcount|year|yearly|yh|ym|yofd|yq|yw)|([\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}))(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.custom.stata\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.parentheses.stata\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.parentheses.stata\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#ascii-regex-functions\\\"},{\\\"include\\\":\\\"#unicode-regex-functions\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#subscripts\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#builtin_variables\\\"},{\\\"include\\\":\\\"#macro-commands\\\"},{\\\"include\\\":\\\"#braces-without-error\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"}]},{\\\"include\\\":\\\"#ascii-regex-functions\\\"},{\\\"include\\\":\\\"#unicode-regex-functions\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#subscripts\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#builtin_variables\\\"},{\\\"include\\\":\\\"#macro-commands\\\"},{\\\"include\\\":\\\"#braces-without-error\\\"}]}]},\\\"macro-commands\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(loc(al|a)?)\\\\\\\\s+([\\\\\\\\w'`\\\\\\\\$\\\\\\\\(\\\\\\\\)\\\\\\\\{\\\\\\\\}]+)\\\\\\\\s*(?=:|=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.macro.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local-identifiers\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.stata\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.stata\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-extended-functions\\\"}]}]},{\\\"begin\\\":\\\"\\\\\\\\b(gl(obal|oba|ob|o)?)\\\\\\\\s+(?=[\\\\\\\\w`\\\\\\\\$])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.macro.stata\\\"}},\\\"end\\\":\\\"(\\\\\\\\})|(?=\\\\\\\\\\\\\\\"|\\\\\\\\s|\\\\\\\\n|/|,|=)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#reserved-names\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9_]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"entity.name.type.class.stata\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(loc(al|a)?)\\\\\\\\s+(\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-)?(?=[\\\\\\\\w`\\\\\\\\$])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.macro.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.stata\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\\\\\\\\"|\\\\\\\\s|\\\\\\\\n|/|,|=)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local-identifiers\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(tempvar|tempname|tempfile)\\\\\\\\s*(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.macro.stata\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"///\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.block.stata\\\"},{\\\"include\\\":\\\"#macro-local-identifiers\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(ma(cro|cr|c)?)\\\\\\\\s+(drop|l(ist|is|i)?)\\\\\\\\s*(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.macro.stata\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"///\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.block.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.stata\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\w{1,31}\\\",\\\"name\\\":\\\"entity.name.type.class.stata\\\"}]}]},\\\"macro-extended-functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(properties)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\b(t(ype|yp|y)?|f(ormat|orma|orm|or|o)?|val(ue|u)?\\\\\\\\s+l(able|abl|ab|a)?|var(iable|iabl|iab|ia|i)?\\\\\\\\s+l(abel|abe|ab|a)?|data\\\\\\\\s+l(able|abl|ab|a)?|sort(edby|edb|ed|e)?|lab(el|e)?|maxlength|constraint|char)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\b(permname)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\b(adosubdir|dir|files?|dirs?|other|sysdir)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\b(env(ironment|ironmen|ironme|ironm|iron|iro|ir|i)?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\b(all\\\\\\\\s+(globals|scalars|matrices)|((numeric|string)\\\\\\\\s+scalars))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(list)\\\\\\\\s+(uniq|dups|sort|clean|retok(enize|eniz|eni|en|e)?|sizeof)\\\\\\\\s+(\\\\\\\\w{1,32})\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.list.stata\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(list)\\\\\\\\s+(\\\\\\\\w{1,32})\\\\\\\\s+(\\\\\\\\||&|\\\\\\\\-|===|==|in)\\\\\\\\s+(\\\\\\\\w{1,32})\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.quoted.double.stata\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.type.class.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(list\\\\\\\\s+posof)\\\\\\\\s+(\\\\\\\")(\\\\\\\\w+)(\\\\\\\")\\\\\\\\s+(in)\\\\\\\\s+(\\\\\\\\w{1,32})\\\"},{\\\"match\\\":\\\"\\\\\\\\b(rown(ames|ame|am|a)?|coln(ames|ame|am|a)?|rowf(ullnames|ullname|ullnam|ullna|ulln|ull|ul|u)?|colf(ullnames|ullname|ullnam|ullna|ulln|ull|ul|u)?|roweq?|coleq?|rownumb|colnumb|roweqnumb|coleqnumb|rownfreeparms|colnfreeparms|rownlfs|colnlfs|rowsof|colsof|rowvarlist|colvarlist|rowlfnames|collfnames)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\b(tsnorm)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b((copy|(ud|u)?strlen)\\\\\\\\s+(loc(al|a)?|gl(obal|oba|ob|o)?))\\\\\\\\s+([^']+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"}},\\\"match\\\":\\\"\\\\\\\\b(word\\\\\\\\s+count)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#constants\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"}},\\\"match\\\":\\\"(word|piece)\\\\\\\\s+([\\\\\\\\s`'\\\\\\\\w]+)\\\\\\\\s+(of)\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(subinstr\\\\\\\\s+(loc(al|a)?|gl(obal|oba|ob|o)?))\\\\\\\\s+(\\\\\\\\w{1,32})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.class.stata\\\"}},\\\"end\\\":\\\"(?=//|\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.macro.extendedfcn.stata\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"match\\\":\\\"(count|coun|cou|co|c)(\\\\\\\\()(local|loca|loc|global|globa|glob|glo|gl)\\\\\\\\s+(\\\\\\\\w{1,32})(\\\\\\\\))\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"macro-global\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\$)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#comments-block\\\"},{\\\"begin\\\":\\\"[^\\\\\\\\w]\\\",\\\"end\\\":\\\"\\\\\\\\n|(?=})\\\",\\\"name\\\":\\\"comment.line.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\w{1,32}\\\",\\\"name\\\":\\\"entity.name.type.class.stata\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\$\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\w)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9_]]\\\\\\\\w{0,31}|_\\\\\\\\w{1,31}\\\",\\\"name\\\":\\\"entity.name.type.class.stata\\\"}]}]},\\\"macro-global-escaped\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\\\\\\\\\\\\\\\\\$)(\\\\\\\\\\\\\\\\\\\\\\\\{)?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"end\\\":\\\"(\\\\\\\\\\\\\\\\\\\\\\\\})|(?=\\\\\\\\\\\\\\\"|\\\\\\\\s|\\\\\\\\n|/|,)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9_]]\\\\\\\\w{0,31}|_\\\\\\\\w{1,31}\\\",\\\"name\\\":\\\"entity.name.type.class.stata\\\"}]}]},\\\"macro-local\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(`)(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.comparison.stata\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"(`)(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.comparison.stata\\\"}},\\\"contentName\\\":\\\"meta.macro-extended-function.stata\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-extended-functions\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"}]},{\\\"begin\\\":\\\"(`)(macval)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"}},\\\"contentName\\\":\\\"meta.macro-extended-function.stata\\\",\\\"end\\\":\\\"(\\\\\\\\))(')\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"match\\\":\\\"\\\\\\\\w{1,31}\\\",\\\"name\\\":\\\"entity.name.type.class.stata\\\"}]},{\\\"begin\\\":\\\"`(?!\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.stata\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#comments-block\\\"},{\\\"begin\\\":\\\"[^\\\\\\\\w]\\\",\\\"end\\\":\\\"\\\\\\\\n|(?=')\\\",\\\"name\\\":\\\"comment.line.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\w{1,31}\\\",\\\"name\\\":\\\"entity.name.type.class.stata\\\"}]}]},\\\"macro-local-escaped\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\`(?!\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"comment\\\":\\\"appropriately color macros that have embedded escaped `,', and $ characters for lazy evaluation\\\",\\\"end\\\":\\\"\\\\\\\\\\\\\\\\'|'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"match\\\":\\\"\\\\\\\\w{1,31}\\\",\\\"name\\\":\\\"entity.name.type.class.stata\\\"}]}]},\\\"macro-local-identifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[^\\\\\\\\w'`\\\\\\\\$\\\\\\\\(\\\\\\\\)\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\w{32,}\\\",\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\w{1,31}\\\",\\\"name\\\":\\\"entity.name.type.class.stata\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"++ and -- must come first to support ligatures\\\",\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-|\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\^\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.stata\\\"},{\\\"comment\\\":\\\"match division operator but not path separator\\\",\\\"match\\\":\\\"(?<![\\\\\\\\w.&&[^0-9]])/(?![\\\\\\\\w.&&[^0-9]]|$)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.stata\\\"},{\\\"comment\\\":\\\"match division operator but not path separator\\\",\\\"match\\\":\\\"(?<![\\\\\\\\w.&&[^0-9]])\\\\\\\\\\\\\\\\(?![\\\\\\\\w.&&[^0-9]]|$)\\\",\\\"name\\\":\\\"keyword.operator.matrix.addrow.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.graphcombine.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\&|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.stata\\\"},{\\\"match\\\":\\\"(?:<=|>=|:=|==|!=|~=|<|>|=|!!|!)\\\",\\\"name\\\":\\\"keyword.operator.comparison.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\(|\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.operator.parentheses.stata\\\"},{\\\"match\\\":\\\"(##|#)\\\",\\\"name\\\":\\\"keyword.operator.factor-variables.stata\\\"},{\\\"match\\\":\\\"%\\\",\\\"name\\\":\\\"keyword.operator.format.stata\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"keyword.operator.delimiter.stata\\\"}]},\\\"reserved-names\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(_all|_b|byte|_coef|_cons|double|float|if|in|int|long|_n|_N|_pi|_pred|_rc|_skip|str[0-9]+|strL|using|with)\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},{\\\"match\\\":\\\"[^\\\\\\\\w'`\\\\\\\\$\\\\\\\\(\\\\\\\\)\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},{\\\"match\\\":\\\"[0-9][\\\\\\\\w]{31,}\\\",\\\"name\\\":\\\"invalid.illegal.name.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\w{33,}\\\",\\\"name\\\":\\\"invalid.illegal.name.stata\\\"}]},\\\"string-compound\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"`\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"end\\\":\\\"\\\\\\\"'|(?=\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"}},\\\"name\\\":\\\"string.quoted.double.compound.stata\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"This must come before #string-regular and #string-compound to accurately color `\\\\\\\"\\\\\\\"\\\\\\\"' in strings\\\",\\\"match\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.compound.stata\\\"},{\\\"comment\\\":\\\"see https://github.com/kylebarron/language-stata/issues/53\\\",\\\"match\\\":\\\"```(?=[^']*\\\\\\\")\\\",\\\"name\\\":\\\"meta.markdown.code.block.stata\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#macro-local-escaped\\\"},{\\\"include\\\":\\\"#macro-global-escaped\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]}]},\\\"string-regular\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!`)\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"}},\\\"end\\\":\\\"(\\\\\\\")(')?|(?=\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.punctuation.stata\\\"}},\\\"name\\\":\\\"string.quoted.double.stata\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"see https://github.com/kylebarron/language-stata/issues/53\\\",\\\"match\\\":\\\"```(?=[^']*\\\\\\\")\\\",\\\"name\\\":\\\"meta.markdown.code.block.stata\\\"},{\\\"include\\\":\\\"#macro-local-escaped\\\"},{\\\"include\\\":\\\"#macro-global-escaped\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"}]}]},\\\"subscripts\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[\\\\\\\\w'])(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"}},\\\"comment\\\":\\\"highlight expressions, like [_n], when using subscripts on a variable\\\",\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"name\\\":\\\"meta.subscripts.stata\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#builtin_variables\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#functions\\\"}]}]},\\\"unicode-regex-character-class\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[wWsSdD]|\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.character-class.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.backslash.stata\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.stata\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.stata\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.stata\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#unicode-regex-character-class\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.stata\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.stata\\\"}},\\\"match\\\":\\\"((\\\\\\\\\\\\\\\\.)|.)\\\\\\\\-((\\\\\\\\\\\\\\\\.)|[^\\\\\\\\]])\\\",\\\"name\\\":\\\"constant.other.character-class.range.stata\\\"}]}]},\\\"unicode-regex-functions\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments-triple-slash\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#unicode-regex-internals\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"},\\\"8\\\":{\\\"name\\\":\\\"invalid.illegal.punctuation.stata\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"comment\\\":\\\"color regexm with regular quotes i.e. \\\\\\\" \\\",\\\"match\\\":\\\"\\\\\\\\b(ustrregexm)(\\\\\\\\()([^,]+)(,)\\\\\\\\s*(\\\\\\\")([^\\\\\\\"]+)(\\\\\\\"(')?)([,0-9\\\\\\\\s]*)?\\\\\\\\s*(\\\\\\\\))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments-triple-slash\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#unicode-regex-internals\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"comment\\\":\\\"color regexm with compound quotes\\\",\\\"match\\\":\\\"\\\\\\\\b(ustrregexm)(\\\\\\\\()([^,]+)(,)\\\\\\\\s*(`\\\\\\\")([^\\\\\\\"]+)(\\\\\\\"')([,0-9\\\\\\\\s]*)?\\\\\\\\s*(\\\\\\\\))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#unicode-regex-internals\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"},\\\"8\\\":{\\\"name\\\":\\\"invalid.illegal.punctuation.stata\\\"},\\\"9\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments-triple-slash\\\"},{\\\"include\\\":\\\"#constants\\\"}]},\\\"10\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"comment\\\":\\\"color regexr with regular quotes i.e. \\\\\\\" \\\",\\\"match\\\":\\\"\\\\\\\\b(ustrregexrf|ustrregexra)(\\\\\\\\()([^,]+)(,)\\\\\\\\s*(\\\\\\\")([^\\\\\\\"]+)(\\\\\\\"(')?)\\\\\\\\s*([^\\\\\\\\)]*)(\\\\\\\\))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.builtin.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.stata\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.stata\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#unicode-regex-internals\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.stata\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.definition.variable.begin.stata\\\"},{\\\"include\\\":\\\"#string-compound\\\"},{\\\"include\\\":\\\"#string-regular\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"[\\\\\\\\w&&[^0-9]]\\\\\\\\w{0,31}\\\",\\\"name\\\":\\\"variable.parameter.function.stata\\\"},{\\\"include\\\":\\\"#comments-triple-slash\\\"},{\\\"include\\\":\\\"#constants\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.stata\\\"}},\\\"comment\\\":\\\"color regexr with compound quotes i.e. `\\\\\\\"text\\\\\\\"' \\\",\\\"match\\\":\\\"\\\\\\\\b(ustrregexrf|ustrregexra)(\\\\\\\\()([^,]+)(,)\\\\\\\\s*(`\\\\\\\")([^\\\\\\\"]+)(\\\\\\\"')\\\\\\\\s*([^\\\\\\\\)]*)(\\\\\\\\))\\\"}]},\\\"unicode-regex-internals\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[bBAZzG]|\\\\\\\\^\\\",\\\"name\\\":\\\"keyword.control.anchor.stata\\\"},{\\\"comment\\\":\\\"matched when not a global\\\",\\\"match\\\":\\\"\\\\\\\\$(?![[\\\\\\\\w&&[^0-9_]][\\\\\\\\w]{0,31}|_[\\\\\\\\w]{1,31}\\\\\\\\{])\\\",\\\"name\\\":\\\"keyword.control.anchor.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[1-9][0-9]?\\\",\\\"name\\\":\\\"keyword.other.back-reference.stata\\\"},{\\\"match\\\":\\\"[?+*][?+]?|\\\\\\\\{(\\\\\\\\d+,\\\\\\\\d+|\\\\\\\\d+,|,\\\\\\\\d+|\\\\\\\\d+)\\\\\\\\}\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.or.stata\\\"},{\\\"begin\\\":\\\"\\\\\\\\((?!\\\\\\\\?\\\\\\\\#|\\\\\\\\?=|\\\\\\\\?!|\\\\\\\\?<=|\\\\\\\\?<!)\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.operator.group.stata\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#unicode-regex-internals\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?\\\\\\\\#\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"comment.block.stata\\\"},{\\\"comment\\\":\\\"We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.\\\",\\\"match\\\":\\\"(?<=^|\\\\\\\\s)#\\\\\\\\s[[a-zA-Z0-9,. \\\\\\\\t?!-:][^\\\\\\\\x{00}-\\\\\\\\x{7F}]]*$\\\",\\\"name\\\":\\\"comment.line.number-sign.stata\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\?[iLmsux]+\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.other.option-toggle.stata\\\"},{\\\"begin\\\":\\\"(\\\\\\\\()((\\\\\\\\?=)|(\\\\\\\\?!)|(\\\\\\\\?<=)|(\\\\\\\\?<!))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.group.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.assertion.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.assertion.look-ahead.stata\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.assertion.negative-look-ahead.stata\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.assertion.look-behind.stata\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.assertion.negative-look-behind.stata\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.group.stata\\\"}},\\\"name\\\":\\\"meta.group.assertion.stata\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#unicode-regex-internals\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?\\\\\\\\(([1-9][0-9]?|[a-zA-Z_][a-zA-Z_0-9]*)\\\\\\\\))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.stata\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.group.assertion.conditional.stata\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.section.back-reference.stata\\\"}},\\\"comment\\\":\\\"we can make this more sophisticated to match the | character that separates yes-pattern from no-pattern, but it's not really necessary.\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.group.assertion.conditional.stata\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#unicode-regex-internals\\\"}]},{\\\"include\\\":\\\"#unicode-regex-character-class\\\"},{\\\"include\\\":\\\"#macro-local\\\"},{\\\"include\\\":\\\"#macro-global\\\"},{\\\"comment\\\":\\\"NOTE: Error if I have .+ No idea why but it works fine it seems with just .\\\",\\\"match\\\":\\\".\\\",\\\"name\\\":\\\"string.quoted.stata\\\"}]}},\\\"scopeName\\\":\\\"source.stata\\\",\\\"embeddedLangs\\\":[\\\"sql\\\"]}\"))\n\nexport default [\n...sql,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Stylus\\\",\\\"fileTypes\\\":[\\\"styl\\\",\\\"stylus\\\",\\\"css.styl\\\",\\\"css.stylus\\\"],\\\"name\\\":\\\"stylus\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#at_rule\\\"},{\\\"include\\\":\\\"#language_keywords\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#variable_declaration\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#selector\\\"},{\\\"include\\\":\\\"#declaration\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.property-list.begin.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.property-list.end.css\\\"}},\\\"match\\\":\\\"(\\\\\\\\{)(\\\\\\\\})\\\",\\\"name\\\":\\\"meta.brace.curly.css\\\"},{\\\"match\\\":\\\"\\\\\\\\{|\\\\\\\\}\\\",\\\"name\\\":\\\"meta.brace.curly.css\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#operator\\\"}],\\\"repository\\\":{\\\"at_rule\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*((@)(import|require))\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.import.stylus\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.stylus\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((?=;|$|\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"name\\\":\\\"meta.at-rule.import.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*((@)(extend[s]?)\\\\\\\\b)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.extend.stylus\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.stylus\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((?=;|$|\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"name\\\":\\\"meta.at-rule.extend.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#selector\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.fontface.stylus\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.stylus\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*((@)font-face)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.at-rule.fontface.stylus\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.css.stylus\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.stylus\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*((@)css)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.at-rule.css.stylus\\\"},{\\\"begin\\\":\\\"\\\\\\\\s*((@)charset)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.charset.stylus\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.stylus\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((?=;|$|\\\\\\\\n))\\\",\\\"name\\\":\\\"meta.at-rule.charset.stylus\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\s*((@)keyframes)\\\\\\\\b\\\\\\\\s+([a-zA-Z_-][a-zA-Z0-9_-]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.keyframes.stylus\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.stylus\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.keyframe.stylus\\\"}},\\\"end\\\":\\\"\\\\\\\\s*((?=\\\\\\\\{|$|\\\\\\\\n))\\\",\\\"name\\\":\\\"meta.at-rule.keyframes.stylus\\\"},{\\\"begin\\\":\\\"(?=(\\\\\\\\b(\\\\\\\\d+%|from\\\\\\\\b|to\\\\\\\\b)))\\\",\\\"end\\\":\\\"(?=(\\\\\\\\{|\\\\\\\\n))\\\",\\\"name\\\":\\\"meta.at-rule.keyframes.stylus\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\b(\\\\\\\\d+%|from\\\\\\\\b|to\\\\\\\\b))\\\",\\\"name\\\":\\\"entity.other.attribute-name.stylus\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.at-rule.media.stylus\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.stylus\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*((@)media)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.at-rule.media.stylus\\\"},{\\\"match\\\":\\\"(?:(?=\\\\\\\\w)(?<![\\\\\\\\w-]))(width|scan|resolution|orientation|monochrome|min-width|min-resolution|min-monochrome|min-height|min-device-width|min-device-height|min-device-aspect-ratio|min-color-index|min-color|min-aspect-ratio|max-width|max-resolution|max-monochrome|max-height|max-device-width|max-device-height|max-device-aspect-ratio|max-color-index|max-color|max-aspect-ratio|height|grid|device-width|device-height|device-aspect-ratio|color-index|color|aspect-ratio)(?:(?<=\\\\\\\\w)(?![\\\\\\\\w-]))\\\",\\\"name\\\":\\\"support.type.property-name.media-feature.media.css\\\"},{\\\"match\\\":\\\"(?:(?=\\\\\\\\w)(?<![\\\\\\\\w-]))(tv|tty|screen|projection|print|handheld|embossed|braille|aural|all)(?:(?<=\\\\\\\\w)(?![\\\\\\\\w-]))\\\",\\\"name\\\":\\\"support.constant.media-type.media.css\\\"},{\\\"match\\\":\\\"(?:(?=\\\\\\\\w)(?<![\\\\\\\\w-]))(portrait|landscape)(?:(?<=\\\\\\\\w)(?![\\\\\\\\w-]))\\\",\\\"name\\\":\\\"support.constant.property-value.media-property.media.css\\\"}]},\\\"char_escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(.)\\\",\\\"name\\\":\\\"constant.character.escape.stylus\\\"},\\\"color\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(rgb|rgba|hsl|hsla)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.color.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"name\\\":\\\"meta.function.color.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s*(,)\\\\\\\\s*\\\",\\\"name\\\":\\\"punctuation.separator.parameter.css\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#property_variable\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.css\\\"}},\\\"match\\\":\\\"(#)([0-9a-fA-F]{3}|[0-9a-fA-F]{6})\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.color.rgb-value.css\\\"},{\\\"comment\\\":\\\"http://www.w3.org/TR/CSS21/syndata.html#value-def-color\\\",\\\"match\\\":\\\"\\\\\\\\b(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.color.w3c-standard-color-name.css\\\"},{\\\"comment\\\":\\\"http://www.w3.org/TR/css3-color/#svg-color\\\",\\\"match\\\":\\\"\\\\\\\\b(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato|turquoise|violet|wheat|whitesmoke|yellowgreen)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.color.w3c-extended-color-name.css\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment_block\\\"},{\\\"include\\\":\\\"#comment_line\\\"}]},\\\"comment_block\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.css\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.css\\\"}},\\\"name\\\":\\\"comment.block.css\\\"},\\\"comment_line\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.stylus\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.stylus\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n)\\\",\\\"name\\\":\\\"comment.line.double-slash.stylus\\\"}]},\\\"declaration\\\":{\\\"begin\\\":\\\"((?<=^)[^\\\\\\\\S\\\\\\\\n]+)|((?<=;)[^\\\\\\\\S\\\\\\\\n]*)|((?<=\\\\\\\\{)[^\\\\\\\\S\\\\\\\\n]*)\\\",\\\"end\\\":\\\"(?=\\\\\\\\n)|(;)|(?=\\\\\\\\})|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"name\\\":\\\"meta.property-list.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![\\\\\\\\w-])--(?:[-a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*\\\",\\\"name\\\":\\\"variable.css\\\"},{\\\"include\\\":\\\"#language_keywords\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"match\\\":\\\"(?:(?<=^)[^\\\\\\\\S\\\\\\\\n]+(\\\\\\\\n))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.property-name.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.section.css\\\"}},\\\"match\\\":\\\"\\\\\\\\G\\\\\\\\s*(counter-reset|counter-increment)(?:(:)|[^\\\\\\\\S\\\\\\\\n])[^\\\\\\\\S\\\\\\\\n]*([a-zA-Z_-][a-zA-Z0-9_-]*)\\\",\\\"name\\\":\\\"meta.property.counter.css\\\"},{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(filter)(?:(:)|[^\\\\\\\\S\\\\\\\\n])[^\\\\\\\\S\\\\\\\\n]*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.property-name.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n|;|\\\\\\\\}|$)\\\",\\\"name\\\":\\\"meta.property.filter.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#property_values\\\"}]},{\\\"include\\\":\\\"#property\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"font_name\\\":{\\\"match\\\":\\\"(\\\\\\\\b(?i:arial|century|comic|courier|cursive|fantasy|futura|garamond|georgia|helvetica|impact|lucida|monospace|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif)\\\\\\\\b)\\\",\\\"name\\\":\\\"support.constant.font-name.css\\\"},\\\"function\\\":{\\\"begin\\\":\\\"(?=[a-zA-Z_-][a-zA-Z0-9_-]*\\\\\\\\()\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(format|url|local)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.misc.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\()[^\\\\\\\\)\\\\\\\\s]*(?=\\\\\\\\))\\\",\\\"name\\\":\\\"string.css\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"match\\\":\\\"\\\\\\\\s*\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.counter.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.section.css\\\"}},\\\"match\\\":\\\"(counter)(\\\\\\\\()([a-zA-Z_-][a-zA-Z0-9_-]*)(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.misc.counter.css\\\"},{\\\"begin\\\":\\\"(counters)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.counters.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.misc.counters.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G[a-zA-Z_-][a-zA-Z0-9_-]*\\\",\\\"name\\\":\\\"variable.section.css\\\"},{\\\"match\\\":\\\"\\\\\\\\s*(,)\\\\\\\\s*\\\",\\\"name\\\":\\\"punctuation.separator.parameter.css\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(attr)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.attr.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.misc.attr.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G[a-zA-Z_-][a-zA-Z0-9_-]*\\\",\\\"name\\\":\\\"entity.other.attribute-name.attribute.css\\\"},{\\\"match\\\":\\\"(?<=[a-zA-Z0-9_-])\\\\\\\\s*\\\\\\\\b(string|color|url|integer|number|length|em|ex|px|rem|vw|vh|vmin|vmax|mm|cm|in|pt|pc|angle|deg|grad|rad|time|s|ms|frequency|Hz|kHz|%)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.attr.css\\\"},{\\\"match\\\":\\\"\\\\\\\\s*(,)\\\\\\\\s*\\\",\\\"name\\\":\\\"punctuation.separator.parameter.css\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(calc)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.misc.calc.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.misc.calc.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property_values\\\"}]},{\\\"begin\\\":\\\"(cubic-bezier)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.timing.cubic-bezier.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.timing.cubic-bezier.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s*(,)\\\\\\\\s*\\\",\\\"name\\\":\\\"punctuation.separator.parameter.css\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(steps)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.timing.steps.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.timing.steps.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s*(,)\\\\\\\\s*\\\",\\\"name\\\":\\\"punctuation.separator.parameter.css\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"match\\\":\\\"\\\\\\\\b(start|end)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.timing.steps.direction.css\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.gradient.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.gradient.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\s*(,)\\\\\\\\s*\\\",\\\"name\\\":\\\"punctuation.separator.parameter.css\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#color\\\"},{\\\"match\\\":\\\"\\\\\\\\b(to|bottom|right|left|top|circle|ellipse|center|closest-side|closest-corner|farthest-side|farthest-corner|at)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.gradient.css\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(blur|brightness|contrast|grayscale|hue-rotate|invert|opacity|saturate|sepia)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.filter.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.filter.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#property_variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(drop-shadow)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.filter.drop-shadow.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.filter.drop-shadow.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#color\\\"},{\\\"include\\\":\\\"#property_variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(matrix|matrix3d|perspective|rotate|rotate3d|rotate[Xx]|rotate[yY]|rotate[zZ]|scale|scale3d|scale[xX]|scale[yY]|scale[zZ]|skew|skew[xX]|skew[yY]|translate|translate3d|translate[xX]|translate[yY]|translate[zZ])(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.transform.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.transform.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#property_variable\\\"},{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"match\\\":\\\"(url|local|format|counter|counters|attr|calc)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.misc.css\\\"},{\\\"match\\\":\\\"(cubic-bezier|steps)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.timing.css\\\"},{\\\"match\\\":\\\"(linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.gradient.css\\\"},{\\\"match\\\":\\\"(blur|brightness|contrast|drop-shadow|grayscale|hue-rotate|invert|opacity|saturate|sepia)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.filter.css\\\"},{\\\"match\\\":\\\"(matrix|matrix3d|perspective|rotate|rotate3d|rotate[Xx]|rotate[yY]|rotate[zZ]|scale|scale3d|scale[xX]|scale[yY]|scale[zZ]|skew|skew[xX]|skew[yY]|translate|translate3d|translate[xX]|translate[yY]|translate[zZ])(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.transform.css\\\"},{\\\"begin\\\":\\\"([a-zA-Z_-][a-zA-Z0-9_-]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.stylus\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function.stylus\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"--(?:[-a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*\\\",\\\"name\\\":\\\"variable.argument.stylus\\\"},{\\\"match\\\":\\\"\\\\\\\\s*(,)\\\\\\\\s*\\\",\\\"name\\\":\\\"punctuation.separator.parameter.css\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#property_values\\\"}]},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.section.function.css\\\"}]},\\\"interpolation\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\{)[^\\\\\\\\S\\\\\\\\n]*)(?=[^;=]*[^\\\\\\\\S\\\\\\\\n]*\\\\\\\\})\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.curly\\\"}},\\\"end\\\":\\\"(?:[^\\\\\\\\S\\\\\\\\n]*(\\\\\\\\}))|\\\\\\\\n|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.brace.curly\\\"}},\\\"name\\\":\\\"meta.interpolation.stylus\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#operator\\\"}]},\\\"language_constants\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.stylus\\\"},\\\"language_keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\b|\\\\\\\\s)(return|else|for|unless|if|else)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.stylus\\\"},{\\\"match\\\":\\\"(\\\\\\\\b|\\\\\\\\s)(!important|in|is defined|is a)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.stylus\\\"},{\\\"match\\\":\\\"\\\\\\\\barguments\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.stylus\\\"}]},\\\"numeric\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.css\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w|-)(?:(?:-|\\\\\\\\+)?(?:[0-9]+(?:\\\\\\\\.[0-9]+)?)|(?:\\\\\\\\.[0-9]+))((?:px|pt|ch|cm|mm|in|r?em|ex|pc|deg|g?rad|dpi|dpcm|dppx|fr|ms|s|turn|vh|vmax|vmin|vw)\\\\\\\\b|%)?\\\",\\\"name\\\":\\\"constant.numeric.css\\\"}]},\\\"operator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"((?:\\\\\\\\?|:|!|~|\\\\\\\\+|(\\\\\\\\s-\\\\\\\\s)|(?:\\\\\\\\*)?\\\\\\\\*|\\\\\\\\/|%|(\\\\\\\\.)?\\\\\\\\.\\\\\\\\.|<|>|(?:=|:|\\\\\\\\?|\\\\\\\\+|-|\\\\\\\\*|\\\\\\\\/|%|<|>)?=|!=)|\\\\\\\\b(?:in|is(?:nt)?|(?<!:)not|or|and)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.operator.stylus\\\"},{\\\"include\\\":\\\"#char_escape\\\"}]},\\\"property\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\G\\\\\\\\s*(?:(-webkit-[-A-Za-z]+|-moz-[-A-Za-z]+|-o-[-A-Za-z]+|-ms-[-A-Za-z]+|-khtml-[-A-Za-z]+|zoom|z-index|y|x|wrap|word-wrap|word-spacing|word-break|word|width|widows|white-space-collapse|white-space|white|weight|volume|voice-volume|voice-stress|voice-rate|voice-pitch-range|voice-pitch|voice-family|voice-duration|voice-balance|voice|visibility|vertical-align|variant|user-select|up|unicode-bidi|unicode-range|unicode|trim|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform|touch-action|top-width|top-style|top-right-radius|top-left-radius|top-color|top|timing-function|text-wrap|text-transform|text-shadow|text-replace|text-rendering|text-overflow|text-outline|text-justify|text-indent|text-height|text-emphasis|text-decoration|text-align-last|text-align|text|target-position|target-new|target-name|target|table-layout|tab-size|style-type|style-position|style-image|style|string-set|stretch|stress|stacking-strategy|stacking-shift|stacking-ruby|stacking|src|speed|speech-rate|speech|speak-punctuation|speak-numeral|speak-header|speak|span|spacing|space-collapse|space|sizing|size-adjust|size|shadow|respond-to|rule-width|rule-style|rule-color|rule|ruby-span|ruby-position|ruby-overhang|ruby-align|ruby|rows|rotation-point|rotation|role|right-width|right-style|right-color|right|richness|rest-before|rest-after|rest|resource|resize|reset|replace|repeat|rendering-intent|rate|radius|quotes|punctuation-trim|punctuation|property|profile|presentation-level|presentation|position|pointer-events|point|play-state|play-during|play-count|pitch-range|pitch|phonemes|pause-before|pause-after|pause|page-policy|page-break-inside|page-break-before|page-break-after|page|padding-top|padding-right|padding-left|padding-bottom|padding|pack|overhang|overflow-y|overflow-x|overflow-style|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|origin|orientation|orient|ordinal-group|order|opacity|offset|numeral|new|nav-up|nav-right|nav-left|nav-index|nav-down|nav|name|move-to|model|mix-blend-mode|min-width|min-height|min|max-width|max-height|max|marquee-style|marquee-speed|marquee-play-count|marquee-direction|marquee|marks|mark-before|mark-after|mark|margin-top|margin-right|margin-left|margin-bottom|margin|mask-image|list-style-type|list-style-position|list-style-image|list-style|list|lines|line-stacking-strategy|line-stacking-shift|line-stacking-ruby|line-stacking|line-height|line-break|level|letter-spacing|length|left-width|left-style|left-color|left|label|justify-content|justify|iteration-count|inline-box-align|initial-value|initial-size|initial-before-align|initial-before-adjust|initial-after-align|initial-after-adjust|index|indent|increment|image-resolution|image-orientation|image|icon|hyphens|hyphenate-resource|hyphenate-lines|hyphenate-character|hyphenate-before|hyphenate-after|hyphenate|height|header|hanging-punctuation|gap|grid|grid-area|grid-auto-columns|grid-auto-flow|grid-auto-rows|grid-column|grid-column-end|grid-column-start|grid-row|grid-row-end|grid-row-start|grid-template|grid-template-areas|grid-template-columns|grid-template-rows|row-gap|gap|font-kerning|font-language-override|font-weight|font-variant-caps|font-variant|font-style|font-synthesis|font-stretch|font-size-adjust|font-size|font-family|font|float-offset|float|flex-wrap|flex-shrink|flex-grow|flex-group|flex-flow|flex-direction|flex-basis|flex|fit-position|fit|fill|filter|family|empty-cells|emphasis|elevation|duration|drop-initial-value|drop-initial-size|drop-initial-before-align|drop-initial-before-adjust|drop-initial-after-align|drop-initial-after-adjust|drop|down|dominant-baseline|display-role|display-model|display|direction|delay|decoration-break|decoration|cursor|cue-before|cue-after|cue|crop|counter-reset|counter-increment|counter|count|content|columns|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|column-break-before|column-break-after|column|color-profile|color|collapse|clip|clear|character|caption-side|break-inside|break-before|break-after|break|box-sizing|box-shadow|box-pack|box-orient|box-ordinal-group|box-lines|box-flex-group|box-flex|box-direction|box-decoration-break|box-align|box|bottom-width|bottom-style|bottom-right-radius|bottom-left-radius|bottom-color|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-length|border-left-width|border-left-style|border-left-color|border-left|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|bookmark-target|bookmark-level|bookmark-label|bookmark|binding|bidi|before|baseline-shift|baseline|balance|background-blend-mode|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-break|background-attachment|background|azimuth|attachment|appearance|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-duration|animation-direction|animation-delay|animation-fill-mode|animation|alignment-baseline|alignment-adjust|alignment|align-self|align-last|align-items|align-content|align|after|adjust|will-change)|(writing-mode|text-anchor|stroke-width|stroke-opacity|stroke-miterlimit|stroke-linejoin|stroke-linecap|stroke-dashoffset|stroke-dasharray|stroke|stop-opacity|stop-color|shape-rendering|marker-start|marker-mid|marker-end|lighting-color|kerning|image-rendering|glyph-orientation-vertical|glyph-orientation-horizontal|flood-opacity|flood-color|fill-rule|fill-opacity|fill|enable-background|color-rendering|color-interpolation-filters|color-interpolation|clip-rule|clip-path)|([a-zA-Z_-][a-zA-Z0-9_-]*))(?!([^\\\\\\\\S\\\\\\\\n]*&)|([^\\\\\\\\S\\\\\\\\n]*\\\\\\\\{))(?=:|([^\\\\\\\\S\\\\\\\\n]+[^\\\\\\\\s])))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.property-name.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.property-name.svg.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.mixin.stylus\\\"}},\\\"end\\\":\\\"(;)|(?=\\\\\\\\n|\\\\\\\\}|$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#property_value\\\"}]},\\\"property_value\\\":{\\\"begin\\\":\\\"\\\\\\\\G(?:(:)|(\\\\\\\\s))(\\\\\\\\s*)(?!&)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.css\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\n|;|\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"name\\\":\\\"meta.property-value.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#property_values\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]+?\\\"}]},\\\"property_values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#language_keywords\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"match\\\":\\\"(?:(?=\\\\\\\\w)(?<![\\\\\\\\w-]))(wrap-reverse|wrap|whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|unicase|underline|ultra-expanded|ultra-condensed|transparent|transform|top|titling-caps|thin|thick|text-top|text-bottom|text|tb-rl|table-row-group|table-row|table-header-group|table-footer-group|table-column-group|table-column|table-cell|table|sw-resize|super|strict|stretch|step-start|step-end|static|square|space-between|space-around|space|solid|soft-light|small-caps|separate|semi-expanded|semi-condensed|se-resize|scroll|screen|saturation|s-resize|running|rtl|row-reverse|row-resize|row|round|right|ridge|reverse|repeat-y|repeat-x|repeat|relative|progressive|progress|pre-wrap|pre-line|pre|pointer|petite-caps|paused|pan-x|pan-left|pan-right|pan-y|pan-up|pan-down|padding-box|overline|overlay|outside|outset|optimizeSpeed|optimizeLegibility|opacity|oblique|nw-resize|nowrap|not-allowed|normal|none|no-repeat|no-drop|newspaper|ne-resize|n-resize|multiply|move|middle|medium|max-height|manipulation|main-size|luminosity|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|local|list-item|linear(?!-)|line-through|line-edge|line|lighter|lighten|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline-block|inline|inherit|infinite|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|hue|horizontal|hidden|help|hard-light|hand|groove|geometricPrecision|forwards|flex-start|flex-end|flex|fixed|extra-expanded|extra-condensed|expanded|exclusion|ellipsis|ease-out|ease-in-out|ease-in|ease|e-resize|double|dotted|distribute-space|distribute-letter|distribute-all-lines|distribute|disc|disabled|difference|default|decimal|dashed|darken|currentColor|crosshair|cover|content-box|contain|condensed|column-reverse|column|color-dodge|color-burn|color|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|border-box|bolder|bold|block|bidi-override|below|baseline|balance|backwards|auto|antialiased|always|alternate-reverse|alternate|all-small-caps|all-scroll|all-petite-caps|all|absolute)(?:(?<=\\\\\\\\w)(?![\\\\\\\\w-]))\\\",\\\"name\\\":\\\"support.constant.property-value.css\\\"},{\\\"match\\\":\\\"(?:(?=\\\\\\\\w)(?<![\\\\\\\\w-]))(start|sRGB|square|round|optimizeSpeed|optimizeQuality|nonzero|miter|middle|linearRGB|geometricPrecision |evenodd |end |crispEdges|butt|bevel)(?:(?<=\\\\\\\\w)(?![\\\\\\\\w-]))\\\",\\\"name\\\":\\\"support.constant.property-value.svg.css\\\"},{\\\"include\\\":\\\"#font_name\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"include\\\":\\\"#color\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\\\\\\s*important\\\",\\\"name\\\":\\\"keyword.other.important.css\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#stylus_keywords\\\"},{\\\"include\\\":\\\"#property_variable\\\"}]},\\\"property_variable\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"match\\\":\\\"(?<!^)(\\\\\\\\@[a-zA-Z_-][a-zA-Z0-9_-]*)\\\",\\\"name\\\":\\\"variable.property.stylus\\\"}]},\\\"selector\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:(?=\\\\\\\\w)(?<![\\\\\\\\w-]))(a|abbr|acronym|address|area|article|aside|audio|b|base|bdi|bdo|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|data|datalist|dd|del|details|dfn|dialog|div|dl|dt|em|embed|eventsource|fieldset|figure|figcaption|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|main|map|mark|math|menu|menuitem|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|picture|pre|progress|q|rb|rp|rt|rtc|ruby|s|samp|script|section|select|small|source|span|strike|strong|style|sub|summary|sup|svg|table|tbody|td|template|textarea|tfoot|th|thead|time|title|tr|track|tt|u|ul|var|video|wbr)(?:(?<=\\\\\\\\w)(?![\\\\\\\\w-]))\\\",\\\"name\\\":\\\"entity.name.tag.css\\\"},{\\\"match\\\":\\\"(?:(?=\\\\\\\\w)(?<![\\\\\\\\w-]))(vkern|view|use|tspan|tref|title|textPath|text|symbol|switch|svg|style|stop|set|script|rect|radialGradient|polyline|polygon|pattern|path|mpath|missing-glyph|metadata|mask|marker|linearGradient|line|image|hkern|glyphRef|glyph|g|foreignObject|font-face-uri|font-face-src|font-face-name|font-face-format|font-face|font|filter|feTurbulence|feTile|feSpotLight|feSpecularLighting|fePointLight|feOffset|feMorphology|feMergeNode|feMerge|feImage|feGaussianBlur|feFuncR|feFuncG|feFuncB|feFuncA|feFlood|feDistantLight|feDisplacementMap|feDiffuseLighting|feConvolveMatrix|feComposite|feComponentTransfer|feColorMatrix|feBlend|ellipse|desc|defs|cursor|color-profile|clipPath|circle|animateTransform|animateMotion|animateColor|animate|altGlyphItem|altGlyphDef|altGlyph|a)(?:(?<=\\\\\\\\w)(?![\\\\\\\\w-]))\\\",\\\"name\\\":\\\"entity.name.tag.svg.css\\\"},{\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\,)\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.selector.stylus\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"meta.selector.stylus\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.parent-selector-suffix.stylus\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\&)([a-zA-Z0-9_-]+)\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.selector.stylus\\\"},{\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\&)\\\\\\\\s*\\\",\\\"name\\\":\\\"meta.selector.stylus\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"}},\\\"match\\\":\\\"(\\\\\\\\.)[a-zA-Z0-9_-]+\\\",\\\"name\\\":\\\"entity.other.attribute-name.class.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"}},\\\"match\\\":\\\"(#)[a-zA-Z][a-zA-Z0-9_-]*\\\",\\\"name\\\":\\\"entity.other.attribute-name.id.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"}},\\\"match\\\":\\\"(:+)(after|before|content|first-letter|first-line|host|(-(moz|webkit|ms)-)?selection)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-element.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"}},\\\"match\\\":\\\"(:)((first|last)-child|(first|last|only)-of-type|empty|root|target|first|left|right)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"}},\\\"match\\\":\\\"(:)(checked|enabled|default|disabled|indeterminate|invalid|optional|required|valid)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.ui-state.css\\\"},{\\\"begin\\\":\\\"((:)not)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#selector\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.css\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"match\\\":\\\"((:)nth-(?:(?:last-)?child|(?:last-)?of-type))(\\\\\\\\()(\\\\\\\\-?(?:\\\\\\\\d+n?|n)(?:\\\\\\\\+\\\\\\\\d+)?|even|odd)(\\\\\\\\))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"puncutation.definition.entity.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.language.css\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"match\\\":\\\"((:)dir)\\\\\\\\s*(?:(\\\\\\\\()(ltr|rtl)?(\\\\\\\\)))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"puncutation.definition.entity.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.language.css\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.function.css\\\"}},\\\"match\\\":\\\"((:)lang)\\\\\\\\s*(?:(\\\\\\\\()(\\\\\\\\w+(-\\\\\\\\w+)?)?(\\\\\\\\)))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"}},\\\"match\\\":\\\"(:)(active|hover|link|visited|focus)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"}},\\\"match\\\":\\\"(::)(shadow)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.attribute-name.pseudo-class.css\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.attribute.css\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.operator.css\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.unquoted.attribute-value.css\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.quoted.double.attribute-value.css\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.css\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.css\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.entity.css\\\"}},\\\"match\\\":\\\"(?i)(\\\\\\\\[)\\\\\\\\s*(-?[_a-z\\\\\\\\\\\\\\\\[[:^ascii:]]][_a-z0-9\\\\\\\\-\\\\\\\\\\\\\\\\[[:^ascii:]]]*)(?:\\\\\\\\s*([~|^$*]?=)\\\\\\\\s*(?:(-?[_a-z\\\\\\\\\\\\\\\\[[:^ascii:]]][_a-z0-9\\\\\\\\-\\\\\\\\\\\\\\\\[[:^ascii:]]]*)|((?>(['\\\\\\\"])(?:[^\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*?(\\\\\\\\6)))))?\\\\\\\\s*(\\\\\\\\])\\\",\\\"name\\\":\\\"meta.attribute-selector.css\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"include\\\":\\\"#variable\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.css\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.css\\\"}},\\\"name\\\":\\\"string.quoted.double.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([a-fA-F0-9]{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.css\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.css\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.css\\\"}},\\\"name\\\":\\\"string.quoted.single.css\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([a-fA-F0-9]{1,6}|.)\\\",\\\"name\\\":\\\"constant.character.escape.css\\\"}]}]},\\\"variable\\\":{\\\"match\\\":\\\"(\\\\\\\\$[a-zA-Z_-][a-zA-Z0-9_-]*)\\\",\\\"name\\\":\\\"variable.stylus\\\"},\\\"variable_declaration\\\":{\\\"begin\\\":\\\"^[^\\\\\\\\S\\\\\\\\n]*(\\\\\\\\$?[a-zA-Z_-][a-zA-Z0-9_-]*)[^\\\\\\\\S\\\\\\\\n]*(\\\\\\\\=|\\\\\\\\?\\\\\\\\=|\\\\\\\\:\\\\\\\\=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.stylus\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.stylus\\\"}},\\\"end\\\":\\\"(\\\\\\\\n)|(;)|(?=\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#property_values\\\"}]}},\\\"scopeName\\\":\\\"source.stylus\\\",\\\"aliases\\\":[\\\"styl\\\"]}\"))\n\nexport default [\nlang\n]\n", "import javascript from './javascript.mjs'\nimport typescript from './typescript.mjs'\nimport css from './css.mjs'\nimport postcss from './postcss.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Svelte\\\",\\\"fileTypes\\\":[\\\"svelte\\\"],\\\"injections\\\":{\\\"L:(meta.script.svelte | meta.style.svelte) (meta.lang.js | meta.lang.javascript) - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"L:(meta.script.svelte | meta.style.svelte) (meta.lang.ts | meta.lang.typescript) - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.ts\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]}]},\\\"L:(meta.script.svelte | meta.style.svelte) meta.lang.coffee - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.coffee\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.coffee\\\"}]}]},\\\"L:(source.ts, source.js, source.coffee)\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![_$./'\\\\\\\"[:alnum:]])\\\\\\\\$(?=[_[:alpha:]][_$[:alnum:]]*)\\\",\\\"name\\\":\\\"punctuation.definition.variable.svelte\\\"},{\\\"match\\\":\\\"(?<![_$./'\\\\\\\"[:alnum:]])(\\\\\\\\$\\\\\\\\$)(?=props|restProps|slots)\\\",\\\"name\\\":\\\"punctuation.definition.variable.svelte\\\"}]},\\\"L:meta.script.svelte - meta.lang - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.js\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"L:meta.style.svelte - meta.lang - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]},\\\"L:meta.style.svelte meta.lang.css - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.css\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]},\\\"L:meta.style.svelte meta.lang.less - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.css.less\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.less\\\"}]}]},\\\"L:meta.style.svelte meta.lang.postcss - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.css.postcss\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.postcss\\\"}]}]},\\\"L:meta.style.svelte meta.lang.sass - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.sass\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sass\\\"}]}]},\\\"L:meta.style.svelte meta.lang.scss - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.css.scss\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.scss\\\"}]}]},\\\"L:meta.style.svelte meta.lang.stylus - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"source.stylus\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.stylus\\\"}]}]},\\\"L:meta.template.svelte - meta.lang - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)\\\\\\\\s\\\",\\\"end\\\":\\\"(?=</template)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#scope\\\"}]}]},\\\"L:meta.template.svelte meta.lang.pug - (meta source)\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=>)(?!</)\\\",\\\"contentName\\\":\\\"text.pug\\\",\\\"end\\\":\\\"(?=</)\\\",\\\"name\\\":\\\"meta.embedded.block.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.pug\\\"}]}]}},\\\"name\\\":\\\"svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#scope\\\"}],\\\"repository\\\":{\\\"attributes\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes-directives\\\"},{\\\"include\\\":\\\"#attributes-keyvalue\\\"},{\\\"include\\\":\\\"#attributes-interpolated\\\"}]},\\\"attributes-directives\\\":{\\\"begin\\\":\\\"(?<!<)(on|use|bind|transition|in|out|animate|let|class|style)(:)(?:((?:--)?[_$[:alpha:]][_\\\\\\\\-$[:alnum:]]*(?=\\\\\\\\s*=))|((?:--)?[_$[:alpha:]][_\\\\\\\\-$[:alnum:]]*))((\\\\\\\\|\\\\\\\\w+)*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes-directives-keywords\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.svelte\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes-directives-types-assigned\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes-directives-types\\\"}]},\\\"5\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"support.function.svelte\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.separator.svelte\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.directive.$1.svelte\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.svelte\\\"}},\\\"end\\\":\\\"(?<=[^\\\\\\\\s=])(?!\\\\\\\\s*=)|(?=/?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes-value\\\"}]}]},\\\"attributes-directives-keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"on|use|bind\\\",\\\"name\\\":\\\"keyword.control.svelte\\\"},{\\\"match\\\":\\\"transition|in|out|animate\\\",\\\"name\\\":\\\"keyword.other.animation.svelte\\\"},{\\\"match\\\":\\\"let\\\",\\\"name\\\":\\\"storage.type.svelte\\\"},{\\\"match\\\":\\\"class|style\\\",\\\"name\\\":\\\"entity.other.attribute-name.svelte\\\"}]},\\\"attributes-directives-types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=(on):).*$\\\",\\\"name\\\":\\\"entity.name.type.svelte\\\"},{\\\"match\\\":\\\"(?<=(bind):).*$\\\",\\\"name\\\":\\\"variable.parameter.svelte\\\"},{\\\"match\\\":\\\"(?<=(use|transition|in|out|animate):).*$\\\",\\\"name\\\":\\\"variable.function.svelte\\\"},{\\\"match\\\":\\\"(?<=(let|class|style):).*$\\\",\\\"name\\\":\\\"variable.parameter.svelte\\\"}]},\\\"attributes-directives-types-assigned\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=(bind):)this$\\\",\\\"name\\\":\\\"variable.language.svelte\\\"},{\\\"match\\\":\\\"(?<=(bind):).*$\\\",\\\"name\\\":\\\"entity.name.type.svelte\\\"},{\\\"match\\\":\\\"(?<=(class):).*$\\\",\\\"name\\\":\\\"entity.other.attribute-name.class.svelte\\\"},{\\\"match\\\":\\\"(?<=(style):).*$\\\",\\\"name\\\":\\\"support.type.property-name.svelte\\\"},{\\\"include\\\":\\\"#attributes-directives-types\\\"}]},\\\"attributes-generics\\\":{\\\"begin\\\":\\\"(generics)(=)([\\\\\\\"'])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.svelte\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.svelte\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.svelte\\\"}},\\\"contentName\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"end\\\":\\\"(\\\\\\\\3)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.svelte\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"}]},\\\"attributes-interpolated\\\":{\\\"begin\\\":\\\"(?<!:|=)\\\\\\\\s*({)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.svelte\\\"}},\\\"contentName\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]},\\\"attributes-keyvalue\\\":{\\\"begin\\\":\\\"((?:--)?[_$[:alpha:]][_\\\\\\\\-$[:alnum:]]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"--.*\\\",\\\"name\\\":\\\"support.type.property-name.svelte\\\"},{\\\"match\\\":\\\".*\\\",\\\"name\\\":\\\"entity.other.attribute-name.svelte\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.$1.svelte\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.svelte\\\"}},\\\"end\\\":\\\"(?<=[^\\\\\\\\s=])(?!\\\\\\\\s*=)|(?=/?>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes-value\\\"}]}]},\\\"attributes-value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.svelte\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.decimal.svelte\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.svelte\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.decimal.svelte\\\"}},\\\"match\\\":\\\"(?:(['\\\\\\\"])([0-9._]+[\\\\\\\\w%]{,4})(\\\\\\\\1))|(?:([0-9._]+[\\\\\\\\w%]{,4})(?=\\\\\\\\s|/?>))\\\"},{\\\"match\\\":\\\"([^\\\\\\\\s\\\\\\\"'=<>`/]|/(?!>))+\\\",\\\"name\\\":\\\"string.unquoted.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]},{\\\"begin\\\":\\\"(['\\\\\\\"])\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.svelte\\\"}},\\\"end\\\":\\\"\\\\\\\\1\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.svelte\\\"}},\\\"name\\\":\\\"string.quoted.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolation\\\"}]}]},\\\"comments\\\":{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.svelte\\\"}},\\\"end\\\":\\\"-->\\\",\\\"name\\\":\\\"comment.block.svelte\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(@)(component)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.svelte\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.component.svelte keyword.declaration.class.component.svelte\\\"}},\\\"contentName\\\":\\\"comment.block.documentation.svelte\\\",\\\"end\\\":\\\"(?=-->)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown\\\"}]}},\\\"match\\\":\\\".*?(?=-->)\\\"},{\\\"include\\\":\\\"text.html.markdown\\\"}]},{\\\"match\\\":\\\"\\\\\\\\G-?>|<!--(?!>)|<!-(?=-->)|--!>\\\",\\\"name\\\":\\\"invalid.illegal.characters-not-allowed-here.svelte\\\"}]},\\\"destructuring\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?={)\\\",\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#object-binding-pattern\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\])\\\",\\\"name\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#array-binding-pattern\\\"}]}]},\\\"destructuring-const\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?={)\\\",\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#object-binding-pattern-const\\\"}]},{\\\"begin\\\":\\\"(?=\\\\\\\\[)\\\",\\\"end\\\":\\\"(?<=\\\\\\\\])\\\",\\\"name\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#array-binding-pattern-const\\\"}]}]},\\\"interpolation\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.svelte\\\"}},\\\"contentName\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.svelte\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*(?={)\\\",\\\"end\\\":\\\"(?<=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#object-literal\\\"}]},{\\\"include\\\":\\\"source.ts\\\"}]}]},\\\"scope\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#special-tags\\\"},{\\\"include\\\":\\\"#tags\\\"},{\\\"include\\\":\\\"#interpolation\\\"},{\\\"begin\\\":\\\"(?<=>|})\\\",\\\"end\\\":\\\"(?=<|{)\\\",\\\"name\\\":\\\"text.svelte\\\"}]},\\\"special-tags\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special-tags-void\\\"},{\\\"include\\\":\\\"#special-tags-block-begin\\\"},{\\\"include\\\":\\\"#special-tags-block-end\\\"}]},\\\"special-tags-block-begin\\\":{\\\"begin\\\":\\\"({)\\\\\\\\s*(#([a-z]*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.svelte\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special-tags-keywords\\\"}]}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.svelte\\\"}},\\\"name\\\":\\\"meta.special.$3.svelte meta.special.start.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#special-tags-modes\\\"}]},\\\"special-tags-block-end\\\":{\\\"begin\\\":\\\"({)\\\\\\\\s*(/([a-z]*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.svelte\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special-tags-keywords\\\"}]}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.svelte\\\"}},\\\"name\\\":\\\"meta.special.$3.svelte meta.special.end.svelte\\\"},\\\"special-tags-keywords\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.svelte\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"if|else\\\\\\\\s+if|else\\\",\\\"name\\\":\\\"keyword.control.conditional.svelte\\\"},{\\\"match\\\":\\\"each|key\\\",\\\"name\\\":\\\"keyword.control.svelte\\\"},{\\\"match\\\":\\\"await|then|catch\\\",\\\"name\\\":\\\"keyword.control.flow.svelte\\\"},{\\\"match\\\":\\\"snippet\\\",\\\"name\\\":\\\"keyword.control.svelte\\\"},{\\\"match\\\":\\\"html\\\",\\\"name\\\":\\\"keyword.other.svelte\\\"},{\\\"match\\\":\\\"render\\\",\\\"name\\\":\\\"keyword.other.svelte\\\"},{\\\"match\\\":\\\"debug\\\",\\\"name\\\":\\\"keyword.other.debugger.svelte\\\"},{\\\"match\\\":\\\"const\\\",\\\"name\\\":\\\"storage.type.svelte\\\"}]}},\\\"match\\\":\\\"([#@/:])(else\\\\\\\\s+if|[a-z]*)\\\"},\\\"special-tags-modes\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=(if|key|then|catch|snippet|html|render).*?)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=})\\\",\\\"name\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]},{\\\"begin\\\":\\\"(?<=const.*?)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#destructuring-const\\\"},{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]+)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.svelte\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\=)\\\"},{\\\"begin\\\":\\\"(?=\\\\\\\\=)\\\",\\\"end\\\":\\\"(?=})\\\",\\\"name\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]}]},{\\\"begin\\\":\\\"(?<=each.*?)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*?(?=\\\\\\\\S)\\\",\\\"contentName\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"end\\\":\\\"(?=(?:(?:^\\\\\\\\s*|\\\\\\\\s+)(as))|\\\\\\\\s*(}|,))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]},{\\\"begin\\\":\\\"(as)|(?=}|,)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.as.svelte\\\"}},\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#destructuring\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.brace.round.svelte\\\"}},\\\"contentName\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"end\\\":\\\"\\\\\\\\)|(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\\\\\s*)\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.svelte\\\"}]}]},{\\\"begin\\\":\\\"(?<=await.*?)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*?(?=\\\\\\\\S)\\\",\\\"contentName\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"end\\\":\\\"\\\\\\\\s+(then)|(?=})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.svelte\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]},{\\\"begin\\\":\\\"(?<=then\\\\\\\\b)\\\",\\\"contentName\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]}]},{\\\"begin\\\":\\\"(?<=debug.*?)\\\\\\\\G\\\",\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.embedded.expression.svelte source.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]}},\\\"match\\\":\\\"[_$[:alpha:]][_$[:alnum:]]*\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.svelte\\\"}]}]},\\\"special-tags-void\\\":{\\\"begin\\\":\\\"({)\\\\\\\\s*((?:[@:])(else\\\\\\\\s+if|[a-z]*))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.svelte\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special-tags-keywords\\\"}]}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.svelte\\\"}},\\\"name\\\":\\\"meta.special.$3.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#special-tags-modes\\\"}]},\\\"tags\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-lang\\\"},{\\\"include\\\":\\\"#tags-void\\\"},{\\\"include\\\":\\\"#tags-general-end\\\"},{\\\"include\\\":\\\"#tags-general-start\\\"}]},\\\"tags-end-node\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.tag.end.svelte punctuation.definition.tag.begin.svelte\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.tag.end.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-name\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"meta.tag.end.svelte punctuation.definition.tag.end.svelte\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.tag.start.svelte punctuation.definition.tag.end.svelte\\\"}},\\\"match\\\":\\\"(</)(.*?)\\\\\\\\s*(>)|(/>)\\\"},\\\"tags-general-end\\\":{\\\"begin\\\":\\\"(</)([^/\\\\\\\\s>]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.tag.end.svelte punctuation.definition.tag.begin.svelte\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.tag.end.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-name\\\"}]}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.tag.end.svelte punctuation.definition.tag.end.svelte\\\"}},\\\"name\\\":\\\"meta.scope.tag.$2.svelte\\\"},\\\"tags-general-start\\\":{\\\"begin\\\":\\\"(<)([^/\\\\\\\\s>/]*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-start-node\\\"}]}},\\\"end\\\":\\\"(/?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.tag.start.svelte punctuation.definition.tag.end.svelte\\\"}},\\\"name\\\":\\\"meta.scope.tag.$2.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-start-attributes\\\"}]},\\\"tags-lang\\\":{\\\"begin\\\":\\\"<(script|style|template)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-start-node\\\"}]}},\\\"end\\\":\\\"</\\\\\\\\1\\\\\\\\s*>|/>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-end-node\\\"}]}},\\\"name\\\":\\\"meta.$1.svelte\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=\\\\\\\\s*[^>]*?(type|lang)\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]|)(?:text/)?(\\\\\\\\w+)\\\\\\\\2)\\\",\\\"end\\\":\\\"(?=</|/>)\\\",\\\"name\\\":\\\"meta.lang.$3.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-lang-start-attributes\\\"}]},{\\\"include\\\":\\\"#tags-lang-start-attributes\\\"}]},\\\"tags-lang-start-attributes\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.svelte\\\"}},\\\"name\\\":\\\"meta.tag.start.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes-generics\\\"},{\\\"include\\\":\\\"#attributes\\\"}]},\\\"tags-name\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.svelte\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.svelte\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.svelte\\\"}},\\\"match\\\":\\\"(svelte)(:)([a-z][\\\\\\\\w:-]*)\\\"},{\\\"match\\\":\\\"slot\\\",\\\"name\\\":\\\"keyword.control.svelte\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"support.class.component.svelte\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.definition.keyword.svelte\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"support.class.component.svelte\\\"}},\\\"match\\\":\\\"([\\\\\\\\w]+(?:\\\\\\\\.[\\\\\\\\w]+)+)|([A-Z][\\\\\\\\w]+)\\\"},{\\\"match\\\":\\\"[a-z][\\\\\\\\w0-9:]*-[\\\\\\\\w0-9:-]*\\\",\\\"name\\\":\\\"meta.tag.custom.svelte entity.name.tag.svelte\\\"},{\\\"match\\\":\\\"[a-z][\\\\\\\\w0-9:-]*\\\",\\\"name\\\":\\\"entity.name.tag.svelte\\\"}]},\\\"tags-start-attributes\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/?>)\\\",\\\"name\\\":\\\"meta.tag.start.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes\\\"}]},\\\"tags-start-node\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.svelte\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tags-name\\\"}]}},\\\"match\\\":\\\"(<)([^/\\\\\\\\s>/]*)\\\",\\\"name\\\":\\\"meta.tag.start.svelte\\\"},\\\"tags-void\\\":{\\\"begin\\\":\\\"(<)(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)(?=\\\\\\\\s|/?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.svelte\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.svelte\\\"}},\\\"end\\\":\\\"/?>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.svelte\\\"}},\\\"name\\\":\\\"meta.tag.void.svelte\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#attributes\\\"}]},\\\"type-parameters\\\":{\\\"name\\\":\\\"meta.type.parameters.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#comment\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends|in|out|const)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.ts\\\"},{\\\"include\\\":\\\"source.ts#type\\\"},{\\\"include\\\":\\\"source.ts#punctuation-comma\\\"},{\\\"match\\\":\\\"(=)(?!>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}]}},\\\"scopeName\\\":\\\"source.svelte\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\",\\\"typescript\\\",\\\"css\\\",\\\"postcss\\\"],\\\"embeddedLangsLazy\\\":[\\\"coffee\\\",\\\"stylus\\\",\\\"sass\\\",\\\"scss\\\",\\\"less\\\",\\\"pug\\\",\\\"markdown\\\"]}\"))\n\nexport default [\n...javascript,\n...typescript,\n...css,\n...postcss,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Swift\\\",\\\"fileTypes\\\":[\\\"swift\\\"],\\\"firstLineMatch\\\":\\\"^#!/.*\\\\\\\\bswift\\\",\\\"name\\\":\\\"swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#root\\\"}],\\\"repository\\\":{\\\"async-throws\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.await-must-precede-throws.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.exception.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.async.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(throws\\\\\\\\s+async|rethrows\\\\\\\\s+async)|(throws|rethrows)|(async))\\\\\\\\b\\\"},\\\"attributes\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((@)available)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.attribute.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.attribute.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.swift\\\"}},\\\"name\\\":\\\"meta.attribute.available.swift\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.platform.os.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b(swift|(?:iOS|macOS|OSX|watchOS|tvOS|visionOS|UIKitForMac)(?:ApplicationExtension)?)\\\\\\\\b(?:\\\\\\\\s+([0-9]+(?:\\\\\\\\.[0-9]+)*\\\\\\\\b))?\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(introduced|deprecated|obsoleted)\\\\\\\\s*(:)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[0-9]+(?:\\\\\\\\.[0-9]+)*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.swift\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(message|renamed)\\\\\\\\s*(:)\\\\\\\\s*(?=\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literals\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.platform.all.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.swift\\\"}},\\\"match\\\":\\\"(?:(\\\\\\\\*)|\\\\\\\\b(deprecated|unavailable|noasync)\\\\\\\\b)\\\\\\\\s*(.*?)(?=[,)])\\\"}]},{\\\"begin\\\":\\\"((@)objc)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.attribute.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.attribute.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.swift\\\"}},\\\"name\\\":\\\"meta.attribute.objc.swift\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.missing-colon-after-selector-piece.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\w*(?::(?:\\\\\\\\w*:)*(\\\\\\\\w*))?\\\",\\\"name\\\":\\\"entity.name.function.swift\\\"}]},{\\\"begin\\\":\\\"(@)(?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.modifier.attribute.swift\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.attribute.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G\\\\\\\\()\\\",\\\"name\\\":\\\"meta.attribute.swift\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.swift\\\"}},\\\"name\\\":\\\"meta.arguments.attribute.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]}]}]},\\\"builtin-functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\.)(?:s(?:ort(?:ed)?|plit)|contains|index|partition|f(?:i(?:lter|rst)|orEach|latMap)|with(?:MutableCharacters|CString|U(?:nsafe(?:Mutable(?:BufferPointer|Pointer(?:s|To(?:Header|Elements)))|BufferPointer)|TF8Buffer))|m(?:in|a(?:p|x)))(?=\\\\\\\\s*[({])\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.swift\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\.)(?:s(?:ymmetricDifference|t(?:oreBytes|arts|ride)|ortInPlace|u(?:ccessor|ffix|btract(?:ing|InPlace|WithOverflow)?)|quareRoot|amePosition)|h(?:oldsUnique(?:Reference|OrPinnedReference)|as(?:Suffix|Prefix))|ne(?:gate(?:d)?|xt)|c(?:o(?:untByEnumerating|py(?:Bytes)?)|lamp(?:ed)?|reate)|t(?:o(?:IntMax|Opaque|UIntMax)|ake(?:RetainedValue|UnretainedValue)|r(?:uncatingRemainder|a(?:nscodedLength|ilSurrogate)))|i(?:s(?:MutableAndUniquelyReferenced(?:OrPinned)?|S(?:trictSu(?:perset(?:Of)?|bset(?:Of)?)|u(?:perset(?:Of)?|bset(?:Of)?))|Continuation|T(?:otallyOrdered|railSurrogate)|Disjoint(?:With)?|Unique(?:Reference|lyReferenced(?:OrPinned)?)|Equal|Le(?:ss(?:ThanOrEqualTo)?|adSurrogate))|n(?:sert(?:ContentsOf)?|tersect(?:ion|InPlace)?|itialize(?:Memory|From)?|dex(?:Of|ForKey)))|o(?:verlaps|bjectAt)|d(?:i(?:stance(?:To)?|vide(?:d|WithOverflow)?)|e(?:s(?:cendant|troy)|code(?:CString)?|initialize|alloc(?:ate(?:Capacity)?)?)|rop(?:First|Last))|u(?:n(?:ion(?:InPlace)?|derestimateCount|wrappedOrError)|p(?:date(?:Value)?|percased))|join(?:ed|WithSeparator)|p(?:op(?:First|Last)|ass(?:Retained|Unretained)|re(?:decessor|fix))|e(?:scape(?:d)?|n(?:code|umerate(?:d)?)|lementsEqual|xclusiveOr(?:InPlace)?)|f(?:orm(?:Remainder|S(?:ymmetricDifference|quareRoot)|TruncatingRemainder|In(?:tersection|dex)|Union)|latten|rom(?:CString(?:RepairingIllFormedUTF8)?|Opaque))|w(?:i(?:thMemoryRebound|dth)|rite(?:To)?)|l(?:o(?:wercased|ad)|e(?:adSurrogate|xicographical(?:Compare|lyPrecedes)))|a(?:ss(?:ign(?:BackwardFrom|From)?|umingMemoryBound)|d(?:d(?:ing(?:Product)?|Product|WithOverflow)?|vanced(?:By)?)|utorelease|ppend(?:ContentsOf)?|lloc(?:ate)?|bs)|r(?:ound(?:ed)?|e(?:serveCapacity|tain|duce|place(?:Range|Subrange)?|verse(?:d)?|quest(?:NativeBuffer|UniqueMutableBackingBuffer)|lease|m(?:ove(?:Range|Subrange|Value(?:ForKey)?|First|Last|A(?:tIndex|ll))?|ainder(?:WithOverflow)?)))|ge(?:nerate|t(?:Objects|Element))|m(?:in(?:imum(?:Magnitude)?|Element)|ove(?:Initialize(?:Memory|BackwardFrom|From)?|Assign(?:From)?)?|ultipl(?:y(?:WithOverflow)?|ied)|easure|a(?:ke(?:Iterator|Description)|x(?:imum(?:Magnitude)?|Element)))|bindMemory)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.swift\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\.)(?:s(?:uperclassMirror|amePositionIn|tartsWith)|nextObject|c(?:haracterAtIndex|o(?:untByEnumeratingWithState|pyWithZone)|ustom(?:Mirror|PlaygroundQuickLook))|is(?:EmptyInput|ASCII)|object(?:Enumerator|ForKey|AtIndex)|join|put|keyEnumerator|withUnsafeMutablePointerToValue|length|getMirror|m(?:oveInitializeAssignFrom|ember))(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.swift\\\"}]},\\\"builtin-global-functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(type)(\\\\\\\\()\\\\\\\\s*(of)(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.dynamic-type.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.variable.parameter.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.argument-label.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.swift\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(?:anyGenerator|autoreleasepool)(?=\\\\\\\\s*[({])\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:s(?:tride(?:of(?:Value)?)?|izeof(?:Value)?|equence|wap)|numericCast|transcode|is(?:UniquelyReferenced(?:NonObjC)?|KnownUniquelyReferenced)|zip|d(?:ump|ebugPrint)|unsafe(?:BitCast|Downcast|Unwrap|Address(?:Of)?)|pr(?:int|econdition(?:Failure)?)|fatalError|with(?:Unsafe(?:MutablePointer|Pointer)|ExtendedLifetime|VaList)|a(?:ssert(?:ionFailure)?|lignof(?:Value)?|bs)|re(?:peatElement|adLine)|getVaList|m(?:in|ax))(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:s(?:ort|uffix|pli(?:ce|t))|insert|overlaps|d(?:istance|rop(?:First|Last))|join|prefix|extend|withUnsafe(?:MutablePointers|Pointers)|lazy|advance|re(?:flect|move(?:Range|Last|A(?:tIndex|ll))))(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.swift\\\"}]},\\\"builtin-properties\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^Process\\\\\\\\.|\\\\\\\\WProcess\\\\\\\\.|^CommandLine\\\\\\\\.|\\\\\\\\WCommandLine\\\\\\\\.)(arguments|argc|unsafeArgv)\\\",\\\"name\\\":\\\"support.variable.swift\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\.)(?:s(?:t(?:artIndex|ri(?:ngValue|de))|i(?:ze|gn(?:BitIndex|ificand(?:Bit(?:Count|Pattern)|Width)?|alingNaN)?)|u(?:perclassMirror|mmary|bscriptBaseAddress))|h(?:eader|as(?:hValue|PointerRepresentation))|n(?:ulTerminatedUTF8|ext(?:Down|Up)|a(?:n|tiveOwner))|c(?:haracters|ount(?:TrailingZeros)?|ustom(?:Mirror|PlaygroundQuickLook)|apacity)|i(?:s(?:S(?:ign(?:Minus|aling(?:NaN)?)|ubnormal)|N(?:ormal|aN)|Canonical|Infinite|Zero|Empty|Finite|ASCII)|n(?:dices|finity)|dentity)|owner|de(?:scription|bugDescription)|u(?:n(?:safelyUnwrapped|icodeScalar(?:s)?|derestimatedCount)|tf(?:16|8(?:Start|C(?:String|odeUnitCount))?)|intValue|ppercaseString|lp(?:OfOne)?)|p(?:i|ointee)|e(?:ndIndex|lements|xponent(?:Bit(?:Count|Pattern))?)|value(?:s)?|keys|quietNaN|f(?:irst(?:ElementAddress(?:IfContiguous)?)?|loatingPointClass)|l(?:ittleEndian|owercaseString|eastNo(?:nzeroMagnitude|rmalMagnitude)|a(?:st|zy))|a(?:l(?:ignment|l(?:ocatedElementCount|Zeros))|rray(?:PropertyIsNativeTypeChecked)?)|ra(?:dix|wValue)|greatestFiniteMagnitude|m(?:in|emory|ax)|b(?:yteS(?:ize|wapped)|i(?:nade|tPattern|gEndian)|uffer|ase(?:Address)?))\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.swift\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\.)(?:boolValue|disposition|end|objectIdentifier|quickLookObject|start|valueType)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.swift\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\.)(?:s(?:calarValue|i(?:ze|gnalingNaN)|o(?:und|me)|uppressed|prite|et)|n(?:one|egative(?:Subnormal|Normal|Infinity|Zero))|c(?:ol(?:or|lection)|ustomized)|t(?:o(?:NearestOr(?:Even|AwayFromZero)|wardZero)|uple|ext)|i(?:nt|mage)|optional|d(?:ictionary|o(?:uble|wn))|u(?:Int|p|rl)|p(?:o(?:sitive(?:Subnormal|Normal|Infinity|Zero)|int)|lus)|e(?:rror|mptyInput)|view|quietNaN|float|a(?:ttributedString|wayFromZero)|r(?:ectangle|ange)|generated|minus|b(?:ool|ezierPath))\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.swift\\\"}]},\\\"builtin-types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-types-builtin-class-type\\\"},{\\\"include\\\":\\\"#builtin-types-builtin-enum-type\\\"},{\\\"include\\\":\\\"#builtin-types-builtin-protocol-type\\\"},{\\\"include\\\":\\\"#builtin-types-builtin-struct-type\\\"},{\\\"include\\\":\\\"#builtin-types-builtin-typealias\\\"},{\\\"match\\\":\\\"\\\\\\\\bAny\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.any.swift\\\"}]},\\\"builtin-types-builtin-class-type\\\":{\\\"match\\\":\\\"\\\\\\\\b(Managed(Buffer|ProtoBuffer)|NonObjectiveCBase|AnyGenerator)\\\\\\\\b\\\",\\\"name\\\":\\\"support.class.swift\\\"},\\\"builtin-types-builtin-enum-type\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:CommandLine|Process(?=\\\\\\\\.))\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\bNever\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.never.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:ImplicitlyUnwrappedOptional|Representation|MemoryLayout|FloatingPointClassification|SetIndexRepresentation|SetIteratorRepresentation|FloatingPointRoundingRule|UnicodeDecodingResult|Optional|DictionaryIndexRepresentation|AncestorRepresentation|DisplayStyle|PlaygroundQuickLook|Never|FloatingPointSign|Bit|DictionaryIteratorRepresentation)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:MirrorDisposition|QuickLookObject)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.swift\\\"}]},\\\"builtin-types-builtin-protocol-type\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:Ra(?:n(?:domAccess(?:Collection|Indexable)|geReplaceable(?:Collection|Indexable))|wRepresentable)|M(?:irrorPath|utable(?:Collection|Indexable))|Bi(?:naryFloatingPoint|twiseOperations|directional(?:Collection|Indexable))|S(?:tr(?:ideable|eamable)|igned(?:Number|Integer)|e(?:tAlgebra|quence))|Hashable|C(?:o(?:llection|mparable)|ustom(?:Reflectable|StringConvertible|DebugStringConvertible|PlaygroundQuickLookable|LeafReflectable)|VarArg)|TextOutputStream|I(?:n(?:teger(?:Arithmetic)?|dexable(?:Base)?)|teratorProtocol)|OptionSet|Un(?:signedInteger|icodeCodec)|E(?:quatable|rror|xpressibleBy(?:BooleanLiteral|String(?:Interpolation|Literal)|NilLiteral|IntegerLiteral|DictionaryLiteral|UnicodeScalarLiteral|ExtendedGraphemeClusterLiteral|FloatLiteral|ArrayLiteral))|FloatingPoint|L(?:osslessStringConvertible|azy(?:SequenceProtocol|CollectionProtocol))|A(?:nyObject|bsoluteValuable))\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:Ran(?:domAccessIndexType|geReplaceableCollectionType)|GeneratorType|M(?:irror(?:Type|PathType)|utable(?:Sliceable|CollectionType))|B(?:i(?:twiseOperationsType|directionalIndexType)|oolean(?:Type|LiteralConvertible))|S(?:tring(?:InterpolationConvertible|LiteralConvertible)|i(?:nkType|gned(?:NumberType|IntegerType))|e(?:tAlgebraType|quenceType)|liceable)|NilLiteralConvertible|C(?:ollectionType|VarArgType)|Inte(?:rvalType|ger(?:Type|LiteralConvertible|ArithmeticType))|O(?:utputStreamType|ptionSetType)|DictionaryLiteralConvertible|Un(?:signedIntegerType|icode(?:ScalarLiteralConvertible|CodecType))|E(?:rrorType|xten(?:sibleCollectionType|dedGraphemeClusterLiteralConvertible))|F(?:orwardIndexType|loat(?:ingPointType|LiteralConvertible))|A(?:nyCollectionType|rrayLiteralConvertible))\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.swift\\\"}]},\\\"builtin-types-builtin-struct-type\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:R(?:e(?:peat(?:ed)?|versed(?:RandomAccess(?:Collection|Index)|Collection|Index))|an(?:domAccessSlice|ge(?:Replaceable(?:RandomAccessSlice|BidirectionalSlice|Slice)|Generator)?))|Generator(?:Sequence|OfOne)|M(?:irror|utable(?:Ran(?:domAccessSlice|geReplaceable(?:RandomAccessSlice|BidirectionalSlice|Slice))|BidirectionalSlice|Slice)|anagedBufferPointer)|B(?:idirectionalSlice|ool)|S(?:t(?:aticString|ri(?:ng|deT(?:hrough(?:Generator|Iterator)?|o(?:Generator|Iterator)?)))|et(?:I(?:ndex|terator))?|lice)|HalfOpenInterval|C(?:haracter(?:View)?|o(?:ntiguousArray|untable(?:Range|ClosedRange)|llectionOfOne)|OpaquePointer|losed(?:Range(?:I(?:ndex|terator))?|Interval)|VaListPointer)|I(?:n(?:t(?:16|8|32|64)?|d(?:ices|ex(?:ing(?:Generator|Iterator))?))|terator(?:Sequence|OverOne)?)|Zip2(?:Sequence|Iterator)|O(?:paquePointer|bjectIdentifier)|D(?:ictionary(?:I(?:ndex|terator)|Literal)?|ouble|efault(?:RandomAccessIndices|BidirectionalIndices|Indices))|U(?:n(?:safe(?:RawPointer|Mutable(?:RawPointer|BufferPointer|Pointer)|BufferPointer(?:Generator|Iterator)?|Pointer)|icodeScalar(?:View)?|foldSequence|managed)|TF(?:16(?:View)?|8(?:View)?|32)|Int(?:16|8|32|64)?)|Join(?:Generator|ed(?:Sequence|Iterator))|PermutationGenerator|E(?:numerate(?:Generator|Sequence|d(?:Sequence|Iterator))|mpty(?:Generator|Collection|Iterator))|Fl(?:oat(?:80)?|atten(?:Generator|BidirectionalCollection(?:Index)?|Sequence|Collection(?:Index)?|Iterator))|L(?:egacyChildren|azy(?:RandomAccessCollection|Map(?:RandomAccessCollection|Generator|BidirectionalCollection|Sequence|Collection|Iterator)|BidirectionalCollection|Sequence|Collection|Filter(?:Generator|BidirectionalCollection|Sequence|Collection|I(?:ndex|terator))))|A(?:ny(?:RandomAccessCollection|Generator|BidirectionalCollection|Sequence|Hashable|Collection|I(?:ndex|terator))|utoreleasingUnsafeMutablePointer|rray(?:Slice)?))\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:R(?:everse(?:RandomAccess(?:Collection|Index)|Collection|Index)|awByte)|Map(?:Generator|Sequence|Collection)|S(?:inkOf|etGenerator)|Zip2Generator|DictionaryGenerator|Filter(?:Generator|Sequence|Collection(?:Index)?)|LazyForwardCollection|Any(?:RandomAccessIndex|BidirectionalIndex|Forward(?:Collection|Index)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.swift\\\"}]},\\\"builtin-types-builtin-typealias\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:Raw(?:Significand|Exponent|Value)|B(?:ooleanLiteralType|uffer|ase)|S(?:t(?:orage|r(?:i(?:ngLiteralType|de)|eam(?:1|2)))|ubSequence)|NativeBuffer|C(?:hild(?:ren)?|Bool|S(?:hort|ignedChar)|odeUnit|Char(?:16|32)?|Int|Double|Unsigned(?:Short|Char|Int|Long(?:Long)?)|Float|WideChar|Long(?:Long)?)|I(?:n(?:t(?:Max|egerLiteralType)|d(?:ices|ex(?:Distance)?))|terator)|Distance|U(?:n(?:icodeScalar(?:Type|Index|View|LiteralType)|foldFirstSequence)|TF(?:16(?:Index|View)|8Index)|IntMax)|E(?:lement(?:s)?|x(?:tendedGraphemeCluster(?:Type|LiteralType)|ponent))|V(?:oid|alue)|Key|Float(?:32|LiteralType|64)|AnyClass)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:Generator|PlaygroundQuickLook|UWord|Word)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.swift\\\"}]},\\\"code-block\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.end.swift\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\A^(#!).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.swift\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.swift\\\"}},\\\"name\\\":\\\"comment.block.documentation.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-nested\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.swift\\\"}},\\\"name\\\":\\\"comment.block.documentation.playground.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-nested\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.swift\\\"}},\\\"name\\\":\\\"comment.block.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-nested\\\"}]},{\\\"match\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"invalid.illegal.unexpected-end-of-block-comment.swift\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"///\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.swift\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.triple-slash.documentation.swift\\\"},{\\\"begin\\\":\\\"//:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.swift\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.documentation.swift\\\"},{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.swift\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.swift\\\"}]}]},\\\"comments-nested\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments-nested\\\"}]},\\\"compiler-control\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(#)(if|elseif)\\\\\\\\s+(false)\\\\\\\\b.*?(?=$|//|/\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.preprocessor.conditional.swift\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.preprocessor.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.preprocessor.conditional.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.language.boolean.swift\\\"}},\\\"contentName\\\":\\\"comment.block.preprocessor.swift\\\",\\\"end\\\":\\\"(?=^\\\\\\\\s*(#(elseif|else|endif)\\\\\\\\b))\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*(#)(if|elseif)\\\\\\\\s+\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.preprocessor.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.preprocessor.conditional.swift\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*(?://|/\\\\\\\\*))|$\\\",\\\"name\\\":\\\"meta.preprocessor.conditional.swift\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(&&|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.logical.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.swift\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.condition.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.platform.architecture.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b(arch)\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*(?:(arm|arm64|powerpc64|powerpc64le|i386|x86_64|s390x)|\\\\\\\\w+)\\\\\\\\s*(\\\\\\\\))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.condition.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.constant.platform.os.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b(os)\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*(?:(macOS|OSX|iOS|tvOS|watchOS|visionOS|Android|Linux|FreeBSD|Windows|PS4)|\\\\\\\\w+)\\\\\\\\s*(\\\\\\\\))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.condition.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.module.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b(canImport)\\\\\\\\s*(\\\\\\\\()([\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*)(\\\\\\\\))\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(targetEnvironment)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.condition.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.swift\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.swift\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(simulator|UIKitForMac)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.platform.environment.swift\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(swift|compiler)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.condition.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.swift\\\"}},\\\"end\\\":\\\"(\\\\\\\\))|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.swift\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\">=|<\\\",\\\"name\\\":\\\"keyword.operator.comparison.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9]+(?:\\\\\\\\.[0-9]+)*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.swift\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.preprocessor.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.preprocessor.conditional.swift\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.swift\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\s*(#)(else|endif)(.*?)(?=$|//|/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.preprocessor.conditional.swift\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.preprocessor.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.preprocessor.sourcelocation.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.swift\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(file)\\\\\\\\s*(:)\\\\\\\\s*(?=\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.variable.parameter.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literals\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.variable.parameter.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.integer.swift\\\"}},\\\"match\\\":\\\"(line)\\\\\\\\s*(:)\\\\\\\\s*([0-9]+)\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.parameters.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.swift\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.swift\\\"},\\\"7\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\S+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.swift\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\s*(#)(sourceLocation)((\\\\\\\\()([^)]*)(\\\\\\\\)))(.*?)(?=$|//|/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.preprocessor.sourcelocation.swift\\\"}]},\\\"conditionals\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(if|guard|switch|for)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions-without-trailing-closures\\\"}]},{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(while)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"}]}},\\\"end\\\":\\\"(?=\\\\\\\\{)|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions-without-trailing-closures\\\"}]}]},\\\"declarations\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-function\\\"},{\\\"include\\\":\\\"#declarations-function-initializer\\\"},{\\\"include\\\":\\\"#declarations-function-subscript\\\"},{\\\"include\\\":\\\"#declarations-typed-variable-declaration\\\"},{\\\"include\\\":\\\"#declarations-import\\\"},{\\\"include\\\":\\\"#declarations-operator\\\"},{\\\"include\\\":\\\"#declarations-precedencegroup\\\"},{\\\"include\\\":\\\"#declarations-protocol\\\"},{\\\"include\\\":\\\"#declarations-type\\\"},{\\\"include\\\":\\\"#declarations-extension\\\"},{\\\"include\\\":\\\"#declarations-typealias\\\"},{\\\"include\\\":\\\"#declarations-macro\\\"}]},\\\"declarations-available-types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#builtin-types\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"match\\\":\\\"\\\\\\\\basync\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.async.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:throws|rethrows)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.exception.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\bsome\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.operator.type.opaque.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\bany\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.operator.type.existential.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:repeat|each)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.loop.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:inout|isolated|borrowing|consuming)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\bSelf\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.swift\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.function.swift\\\"}},\\\"match\\\":\\\"(?<![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])(->)(?![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.composition.swift\\\"}},\\\"match\\\":\\\"(?<![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])(&)(?![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])\\\"},{\\\"match\\\":\\\"[?!]\\\",\\\"name\\\":\\\"keyword.operator.type.optional.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.function.variadic-parameter.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\bprotocol\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.type.composition.swift\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\.)(?:Protocol|Type)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.type.metatype.swift\\\"},{\\\"include\\\":\\\"#declarations-available-types-tuple-type\\\"},{\\\"include\\\":\\\"#declarations-available-types-collection-type\\\"},{\\\"include\\\":\\\"#declarations-generic-argument-clause\\\"}]},\\\"declarations-available-types-collection-type\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.collection-type.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\]|(?=[>){}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.collection-type.end.swift\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.swift\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\]|[>){}])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"invalid.illegal.extra-colon-in-dictionary-type.swift\\\"},{\\\"include\\\":\\\"#declarations-available-types\\\"}]}]},\\\"declarations-available-types-tuple-type\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tuple-type.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=[>\\\\\\\\]{}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tuple-type.end.swift\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"}]},\\\"declarations-extension\\\":{\\\"begin\\\":\\\"\\\\\\\\b(extension)\\\\\\\\s+((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.definition.type.$1.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"},{\\\"include\\\":\\\"#declarations-inheritance-clause\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.end.swift\\\"}},\\\"name\\\":\\\"meta.definition.type.body.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"declarations-function\\\":{\\\"begin\\\":\\\"\\\\\\\\b(func)\\\\\\\\s+((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>)|(?:((?<oph>[/=\\\\\\\\-+!*%<>&|^~?]|[\\\\\\\\x{00A1}-\\\\\\\\x{00A7}]|[\\\\\\\\x{00A9}\\\\\\\\x{00AB}]|[\\\\\\\\x{00AC}\\\\\\\\x{00AE}]|[\\\\\\\\x{00B0}-\\\\\\\\x{00B1}\\\\\\\\x{00B6}\\\\\\\\x{00BB}\\\\\\\\x{00BF}\\\\\\\\x{00D7}\\\\\\\\x{00F7}]|[\\\\\\\\x{2016}-\\\\\\\\x{2017}\\\\\\\\x{2020}-\\\\\\\\x{2027}]|[\\\\\\\\x{2030}-\\\\\\\\x{203E}]|[\\\\\\\\x{2041}-\\\\\\\\x{2053}]|[\\\\\\\\x{2055}-\\\\\\\\x{205E}]|[\\\\\\\\x{2190}-\\\\\\\\x{23FF}]|[\\\\\\\\x{2500}-\\\\\\\\x{2775}]|[\\\\\\\\x{2794}-\\\\\\\\x{2BFF}]|[\\\\\\\\x{2E00}-\\\\\\\\x{2E7F}]|[\\\\\\\\x{3001}-\\\\\\\\x{3003}]|[\\\\\\\\x{3008}-\\\\\\\\x{3030}])(\\\\\\\\g<oph>|(?<opc>[\\\\\\\\x{0300}-\\\\\\\\x{036F}]|[\\\\\\\\x{1DC0}-\\\\\\\\x{1DFF}]|[\\\\\\\\x{20D0}-\\\\\\\\x{20FF}]|[\\\\\\\\x{FE00}-\\\\\\\\x{FE0F}]|[\\\\\\\\x{FE20}-\\\\\\\\x{FE2F}]|[\\\\\\\\x{E0100}-\\\\\\\\x{E01EF}]))*)|(\\\\\\\\.(\\\\\\\\g<oph>|\\\\\\\\g<opc>|\\\\\\\\.)+)))\\\\\\\\s*(?=\\\\\\\\(|<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|$\\\",\\\"name\\\":\\\"meta.definition.function.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-generic-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-function-result\\\"},{\\\"include\\\":\\\"#async-throws\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"},{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.swift\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.end.swift\\\"}},\\\"name\\\":\\\"meta.definition.function.body.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"declarations-function-initializer\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(init[?!]*)\\\\\\\\s*(?=\\\\\\\\(|<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.swift\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[?!])[?!]+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.swift\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\})|$\\\",\\\"name\\\":\\\"meta.definition.function.initializer.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-generic-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-parameter-clause\\\"},{\\\"include\\\":\\\"#async-throws\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"},{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.swift\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.end.swift\\\"}},\\\"name\\\":\\\"meta.definition.function.body.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"declarations-function-result\\\":{\\\"begin\\\":\\\"(?<![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])(->)(?![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.function-result.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(?=\\\\\\\\{|\\\\\\\\bwhere\\\\\\\\b|;|=)|$\\\",\\\"name\\\":\\\"meta.function-result.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"}]},\\\"declarations-function-subscript\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(subscript)\\\\\\\\s*(?=\\\\\\\\(|<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.swift\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|$\\\",\\\"name\\\":\\\"meta.definition.function.subscript.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-generic-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-function-result\\\"},{\\\"include\\\":\\\"#async-throws\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"},{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.swift\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.end.swift\\\"}},\\\"name\\\":\\\"meta.definition.function.body.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"declarations-generic-argument-clause\\\":{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.generic-argument-clause.begin.swift\\\"}},\\\"end\\\":\\\">|(?=[)\\\\\\\\]{}])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.generic-argument-clause.end.swift\\\"}},\\\"name\\\":\\\"meta.generic-argument-clause.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"}]},\\\"declarations-generic-parameter-clause\\\":{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.generic-parameter-clause.begin.swift\\\"}},\\\"end\\\":\\\">|(?=[^\\\\\\\\w\\\\\\\\d:<>\\\\\\\\s,=&`])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.generic-parameter-clause.end.swift\\\"}},\\\"name\\\":\\\"meta.generic-parameter-clause.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"},{\\\"match\\\":\\\"\\\\\\\\beach\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.loop.swift\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.language.generic-parameter.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b((?!\\\\\\\\d)\\\\\\\\w[\\\\\\\\w\\\\\\\\d]*)\\\\\\\\b\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.generic-parameters.swift\\\"},{\\\"begin\\\":\\\"(:)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.generic-parameter-constraint.swift\\\"}},\\\"end\\\":\\\"(?=[,>]|(?!\\\\\\\\G)\\\\\\\\bwhere\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.generic-parameter-constraint.swift\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=[,>]|(?!\\\\\\\\G)\\\\\\\\bwhere\\\\\\\\b)\\\",\\\"name\\\":\\\"entity.other.inherited-class.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-type-identifier\\\"},{\\\"include\\\":\\\"#declarations-type-operators\\\"}]}]}]},\\\"declarations-generic-where-clause\\\":{\\\"begin\\\":\\\"\\\\\\\\b(where)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.generic-constraint-introducer.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)$|(?=[>{};\\\\\\\\n]|//|/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.generic-where-clause.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause-requirement-list\\\"}]},\\\"declarations-generic-where-clause-requirement-list\\\":{\\\"begin\\\":\\\"\\\\\\\\G|,\\\\\\\\s*\\\",\\\"end\\\":\\\"(?=[,>{};\\\\\\\\n]|//|/\\\\\\\\*)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constraint\\\"},{\\\"include\\\":\\\"#declarations-available-types\\\"},{\\\"begin\\\":\\\"(?<![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])(==)(?![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.generic-constraint.same-type.swift\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*[,>{};\\\\\\\\n]|//|/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.generic-where-clause.same-type-requirement.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"}]},{\\\"begin\\\":\\\"(?<![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])(:)(?![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.generic-constraint.conforms-to.swift\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*[,>{};\\\\\\\\n]|//|/\\\\\\\\*)\\\",\\\"name\\\":\\\"meta.generic-where-clause.conformance-requirement.swift\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\s*\\\",\\\"contentName\\\":\\\"entity.other.inherited-class.swift\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*[,>{};\\\\\\\\n]|//|/\\\\\\\\*)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"}]}]}]},\\\"declarations-import\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(import)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.swift\\\"}},\\\"end\\\":\\\"(;)|$\\\\\\\\n?|(?=//|/\\\\\\\\*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.swift\\\"}},\\\"name\\\":\\\"meta.import.swift\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?!;|$|//|/\\\\\\\\*)(?:(typealias|struct|class|actor|enum|protocol|var|func)\\\\\\\\s+)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.swift\\\"}},\\\"end\\\":\\\"(?=;|$|//|/\\\\\\\\*)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\G|\\\\\\\\.)(?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>)\\\",\\\"name\\\":\\\"entity.name.type.swift\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\G|\\\\\\\\.)\\\\\\\\$[0-9]+\\\",\\\"name\\\":\\\"entity.name.type.swift\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.dot-not-allowed-here.swift\\\"}]}},\\\"match\\\":\\\"(?<=\\\\\\\\G|\\\\\\\\.)(?:((?<oph>[/=\\\\\\\\-+!*%<>&|^~?]|[\\\\\\\\x{00A1}-\\\\\\\\x{00A7}]|[\\\\\\\\x{00A9}\\\\\\\\x{00AB}]|[\\\\\\\\x{00AC}\\\\\\\\x{00AE}]|[\\\\\\\\x{00B0}-\\\\\\\\x{00B1}\\\\\\\\x{00B6}\\\\\\\\x{00BB}\\\\\\\\x{00BF}\\\\\\\\x{00D7}\\\\\\\\x{00F7}]|[\\\\\\\\x{2016}-\\\\\\\\x{2017}\\\\\\\\x{2020}-\\\\\\\\x{2027}]|[\\\\\\\\x{2030}-\\\\\\\\x{203E}]|[\\\\\\\\x{2041}-\\\\\\\\x{2053}]|[\\\\\\\\x{2055}-\\\\\\\\x{205E}]|[\\\\\\\\x{2190}-\\\\\\\\x{23FF}]|[\\\\\\\\x{2500}-\\\\\\\\x{2775}]|[\\\\\\\\x{2794}-\\\\\\\\x{2BFF}]|[\\\\\\\\x{2E00}-\\\\\\\\x{2E7F}]|[\\\\\\\\x{3001}-\\\\\\\\x{3003}]|[\\\\\\\\x{3008}-\\\\\\\\x{3030}])(\\\\\\\\g<oph>|(?<opc>[\\\\\\\\x{0300}-\\\\\\\\x{036F}]|[\\\\\\\\x{1DC0}-\\\\\\\\x{1DFF}]|[\\\\\\\\x{20D0}-\\\\\\\\x{20FF}]|[\\\\\\\\x{FE00}-\\\\\\\\x{FE0F}]|[\\\\\\\\x{FE20}-\\\\\\\\x{FE2F}]|[\\\\\\\\x{E0100}-\\\\\\\\x{E01EF}]))*)|(\\\\\\\\.(\\\\\\\\g<oph>|\\\\\\\\g<opc>|\\\\\\\\.)+))(?=\\\\\\\\.|;|$|//|/\\\\\\\\*|\\\\\\\\s)\\\",\\\"name\\\":\\\"entity.name.type.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.import.swift\\\"},{\\\"begin\\\":\\\"(?!\\\\\\\\s*(;|$|//|/\\\\\\\\*))\\\",\\\"end\\\":\\\"(?=\\\\\\\\s*(;|$|//|/\\\\\\\\*))\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.swift\\\"}]}]},\\\"declarations-inheritance-clause\\\":{\\\"begin\\\":\\\"(:)(?=\\\\\\\\s*\\\\\\\\{)|(:)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.empty-inheritance-clause.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance-clause.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)$|(?=[={}]|(?!\\\\\\\\G)\\\\\\\\bwhere\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.inheritance-clause.swift\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\bclass\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.class.swift\\\"}},\\\"end\\\":\\\"(?=[={}]|(?!\\\\\\\\G)\\\\\\\\bwhere\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-inheritance-clause-more-types\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)$|(?=[={}]|(?!\\\\\\\\G)\\\\\\\\bwhere\\\\\\\\b)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-inheritance-clause-inherited-type\\\"},{\\\"include\\\":\\\"#declarations-inheritance-clause-more-types\\\"},{\\\"include\\\":\\\"#declarations-type-operators\\\"}]}]},\\\"declarations-inheritance-clause-inherited-type\\\":{\\\"begin\\\":\\\"(?=[`\\\\\\\\p{L}_])\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"entity.other.inherited-class.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-type-identifier\\\"}]},\\\"declarations-inheritance-clause-more-types\\\":{\\\"begin\\\":\\\",\\\\\\\\s*\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)(?!//|/\\\\\\\\*)|(?=[,={}]|(?!\\\\\\\\G)\\\\\\\\bwhere\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.inheritance-list.more-types\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-inheritance-clause-inherited-type\\\"},{\\\"include\\\":\\\"#declarations-inheritance-clause-more-types\\\"},{\\\"include\\\":\\\"#declarations-type-operators\\\"}]},\\\"declarations-macro\\\":{\\\"begin\\\":\\\"\\\\\\\\b(macro)\\\\\\\\s+((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\\\\\\s*(?=\\\\\\\\(|<|=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"$|(?=;|//|/\\\\\\\\*|\\\\\\\\}|=)\\\",\\\"name\\\":\\\"meta.definition.macro.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-generic-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-function-result\\\"},{\\\"include\\\":\\\"#async-throws\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"}]},\\\"declarations-operator\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b(prefix|infix|postfix)\\\\\\\\s+)?\\\\\\\\b(operator)\\\\\\\\s+(((?<oph>[/=\\\\\\\\-+!*%<>&|^~?]|[\\\\\\\\x{00A1}-\\\\\\\\x{00A7}]|[\\\\\\\\x{00A9}\\\\\\\\x{00AB}]|[\\\\\\\\x{00AC}\\\\\\\\x{00AE}]|[\\\\\\\\x{00B0}-\\\\\\\\x{00B1}\\\\\\\\x{00B6}\\\\\\\\x{00BB}\\\\\\\\x{00BF}\\\\\\\\x{00D7}\\\\\\\\x{00F7}]|[\\\\\\\\x{2016}-\\\\\\\\x{2017}\\\\\\\\x{2020}-\\\\\\\\x{2027}]|[\\\\\\\\x{2030}-\\\\\\\\x{203E}]|[\\\\\\\\x{2041}-\\\\\\\\x{2053}]|[\\\\\\\\x{2055}-\\\\\\\\x{205E}]|[\\\\\\\\x{2190}-\\\\\\\\x{23FF}]|[\\\\\\\\x{2500}-\\\\\\\\x{2775}]|[\\\\\\\\x{2794}-\\\\\\\\x{2BFF}]|[\\\\\\\\x{2E00}-\\\\\\\\x{2E7F}]|[\\\\\\\\x{3001}-\\\\\\\\x{3003}]|[\\\\\\\\x{3008}-\\\\\\\\x{3030}])(\\\\\\\\g<oph>|\\\\\\\\.|(?<opc>[\\\\\\\\x{0300}-\\\\\\\\x{036F}]|[\\\\\\\\x{1DC0}-\\\\\\\\x{1DFF}]|[\\\\\\\\x{20D0}-\\\\\\\\x{20FF}]|[\\\\\\\\x{FE00}-\\\\\\\\x{FE0F}]|[\\\\\\\\x{FE20}-\\\\\\\\x{FE2F}]|[\\\\\\\\x{E0100}-\\\\\\\\x{E01EF}]))*+)|(\\\\\\\\.(\\\\\\\\g<oph>|\\\\\\\\g<opc>|\\\\\\\\.)++))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.operator.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.operator.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.operator.swift\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.dot-not-allowed-here.swift\\\"}]}},\\\"end\\\":\\\"(;)|$\\\\\\\\n?|(?=//|/\\\\\\\\*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.swift\\\"}},\\\"name\\\":\\\"meta.definition.operator.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-operator-swift2\\\"},{\\\"include\\\":\\\"#declarations-operator-swift3\\\"},{\\\"match\\\":\\\"((?!$|;|//|/\\\\\\\\*)\\\\\\\\S)+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.swift\\\"}]},\\\"declarations-operator-swift2\\\":{\\\"begin\\\":\\\"\\\\\\\\G(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.operator.begin.swift\\\"}},\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.operator.end.swift\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.operator.associativity.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b(associativity)\\\\\\\\s+(left|right)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.integer.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b(precedence)\\\\\\\\s+([0-9]+)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b(assignment)\\\\\\\\b\\\"}]},\\\"declarations-operator-swift3\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.other.inherited-class.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-types-precedencegroup\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\G(:)\\\\\\\\s*((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\"},\\\"declarations-parameter-clause\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.swift\\\"}},\\\"end\\\":\\\"(\\\\\\\\))(?:\\\\\\\\s*(async)\\\\\\\\b)?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.async.swift\\\"}},\\\"name\\\":\\\"meta.parameter-clause.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-parameter-list\\\"}]},\\\"declarations-parameter-list\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.swift\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"match\\\":\\\"((?<q1>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q1>))\\\\\\\\s+((?<q2>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q2>))(?=\\\\\\\\s*:)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"match\\\":\\\"(((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>)))(?=\\\\\\\\s*:)\\\"},{\\\"begin\\\":\\\":\\\\\\\\s*(?!\\\\\\\\s)\\\",\\\"end\\\":\\\"(?=[,)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"invalid.illegal.extra-colon-in-parameter-list.swift\\\"},{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.swift\\\"}},\\\"end\\\":\\\"(?=[,)])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]}]}]},\\\"declarations-precedencegroup\\\":{\\\"begin\\\":\\\"\\\\\\\\b(precedencegroup)\\\\\\\\s+((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\\\\\\s*(?=\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.precedencegroup.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.precedencegroup.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"name\\\":\\\"meta.definition.precedencegroup.swift\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.precedencegroup.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.precedencegroup.end.swift\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.inherited-class.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-types-precedencegroup\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b(higherThan|lowerThan)\\\\\\\\s*:\\\\\\\\s*((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.operator.associativity.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b(associativity)\\\\\\\\b(?:\\\\\\\\s*:\\\\\\\\s*(right|left|none)\\\\\\\\b)?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.language.boolean.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\b(assignment)\\\\\\\\b(?:\\\\\\\\s*:\\\\\\\\s*(true|false)\\\\\\\\b)?\\\"}]}]},\\\"declarations-protocol\\\":{\\\"begin\\\":\\\"\\\\\\\\b(protocol)\\\\\\\\s+((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.$1.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.definition.type.protocol.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-inheritance-clause\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.end.swift\\\"}},\\\"name\\\":\\\"meta.definition.type.body.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-protocol-protocol-method\\\"},{\\\"include\\\":\\\"#declarations-protocol-protocol-initializer\\\"},{\\\"include\\\":\\\"#declarations-protocol-associated-type\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"declarations-protocol-associated-type\\\":{\\\"begin\\\":\\\"\\\\\\\\b(associatedtype)\\\\\\\\s+((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.declaration-specifier.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.language.associatedtype.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)$|(?=[;}]|$)\\\",\\\"name\\\":\\\"meta.definition.associatedtype.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-inheritance-clause\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"},{\\\"include\\\":\\\"#declarations-typealias-assignment\\\"}]},\\\"declarations-protocol-protocol-initializer\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(init[?!]*)\\\\\\\\s*(?=\\\\\\\\(|<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.swift\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=[?!])[?!]+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.swift\\\"}]}},\\\"end\\\":\\\"$|(?=;|//|/\\\\\\\\*|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.definition.function.initializer.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-generic-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-parameter-clause\\\"},{\\\"include\\\":\\\"#async-throws\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.swift\\\"}},\\\"name\\\":\\\"invalid.illegal.function-body-not-allowed-in-protocol.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"declarations-protocol-protocol-method\\\":{\\\"begin\\\":\\\"\\\\\\\\b(func)\\\\\\\\s+((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>)|(?:((?<oph>[/=\\\\\\\\-+!*%<>&|^~?]|[\\\\\\\\x{00A1}-\\\\\\\\x{00A7}]|[\\\\\\\\x{00A9}\\\\\\\\x{00AB}]|[\\\\\\\\x{00AC}\\\\\\\\x{00AE}]|[\\\\\\\\x{00B0}-\\\\\\\\x{00B1}\\\\\\\\x{00B6}\\\\\\\\x{00BB}\\\\\\\\x{00BF}\\\\\\\\x{00D7}\\\\\\\\x{00F7}]|[\\\\\\\\x{2016}-\\\\\\\\x{2017}\\\\\\\\x{2020}-\\\\\\\\x{2027}]|[\\\\\\\\x{2030}-\\\\\\\\x{203E}]|[\\\\\\\\x{2041}-\\\\\\\\x{2053}]|[\\\\\\\\x{2055}-\\\\\\\\x{205E}]|[\\\\\\\\x{2190}-\\\\\\\\x{23FF}]|[\\\\\\\\x{2500}-\\\\\\\\x{2775}]|[\\\\\\\\x{2794}-\\\\\\\\x{2BFF}]|[\\\\\\\\x{2E00}-\\\\\\\\x{2E7F}]|[\\\\\\\\x{3001}-\\\\\\\\x{3003}]|[\\\\\\\\x{3008}-\\\\\\\\x{3030}])(\\\\\\\\g<oph>|(?<opc>[\\\\\\\\x{0300}-\\\\\\\\x{036F}]|[\\\\\\\\x{1DC0}-\\\\\\\\x{1DFF}]|[\\\\\\\\x{20D0}-\\\\\\\\x{20FF}]|[\\\\\\\\x{FE00}-\\\\\\\\x{FE0F}]|[\\\\\\\\x{FE20}-\\\\\\\\x{FE2F}]|[\\\\\\\\x{E0100}-\\\\\\\\x{E01EF}]))*)|(\\\\\\\\.(\\\\\\\\g<oph>|\\\\\\\\g<opc>|\\\\\\\\.)+)))\\\\\\\\s*(?=\\\\\\\\(|<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"$|(?=;|//|/\\\\\\\\*|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.definition.function.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-generic-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-function-result\\\"},{\\\"include\\\":\\\"#async-throws\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.function.end.swift\\\"}},\\\"name\\\":\\\"invalid.illegal.function-body-not-allowed-in-protocol.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"declarations-type\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(class(?!\\\\\\\\s+(?:func|var|let)\\\\\\\\b)|struct|actor)\\\\\\\\b\\\\\\\\s*((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.$1.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.definition.type.$1.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-generic-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"},{\\\"include\\\":\\\"#declarations-inheritance-clause\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.end.swift\\\"}},\\\"name\\\":\\\"meta.definition.type.body.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"include\\\":\\\"#declarations-type-enum\\\"}]},\\\"declarations-type-enum\\\":{\\\"begin\\\":\\\"\\\\\\\\b(enum)\\\\\\\\s+((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.$1.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.definition.type.$1.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-generic-parameter-clause\\\"},{\\\"include\\\":\\\"#declarations-generic-where-clause\\\"},{\\\"include\\\":\\\"#declarations-inheritance-clause\\\"},{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.type.end.swift\\\"}},\\\"name\\\":\\\"meta.definition.type.body.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-type-enum-enum-case-clause\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"declarations-type-enum-associated-values\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.swift\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"(?:(_)|((?<q1>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*\\\\\\\\k<q1>))\\\\\\\\s+(((?<q2>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*\\\\\\\\k<q2>))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.distinct-labels-not-allowed.swift\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.parameter.function.swift\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.argument-label.swift\\\"}},\\\"end\\\":\\\"(?=[,)\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"}]},{\\\"begin\\\":\\\"(((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*\\\\\\\\k<q>))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.argument-label.swift\\\"}},\\\"end\\\":\\\"(?=[,)\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"}]},{\\\"begin\\\":\\\"(?![,)\\\\\\\\]])(?=\\\\\\\\S)\\\",\\\"end\\\":\\\"(?=[,)\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"invalid.illegal.extra-colon-in-parameter-list.swift\\\"}]}]},\\\"declarations-type-enum-enum-case\\\":{\\\"begin\\\":\\\"((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.enummember.swift\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))|(?![=(])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-type-enum-associated-values\\\"},{\\\"include\\\":\\\"#declarations-type-enum-raw-value-assignment\\\"}]},\\\"declarations-type-enum-enum-case-clause\\\":{\\\"begin\\\":\\\"\\\\\\\\b(case)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.enum.case.swift\\\"}},\\\"end\\\":\\\"(?=[;}])|(?!\\\\\\\\G)(?!//|/\\\\\\\\*)(?=[^\\\\\\\\s,])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-type-enum-enum-case\\\"},{\\\"include\\\":\\\"#declarations-type-enum-more-cases\\\"}]},\\\"declarations-type-enum-more-cases\\\":{\\\"begin\\\":\\\",\\\\\\\\s*\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)(?!//|/\\\\\\\\*)(?=[;}]|[^\\\\\\\\s,])\\\",\\\"name\\\":\\\"meta.enum-case.more-cases\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#declarations-type-enum-enum-case\\\"},{\\\"include\\\":\\\"#declarations-type-enum-more-cases\\\"}]},\\\"declarations-type-enum-raw-value-assignment\\\":{\\\"begin\\\":\\\"(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#literals\\\"}]},\\\"declarations-type-identifier\\\":{\\\"begin\\\":\\\"((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.type-name.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-types\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"(?!<)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=<)\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-generic-argument-clause\\\"}]}]},\\\"declarations-type-operators\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.composition.swift\\\"}},\\\"match\\\":\\\"(?<![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])(&)(?![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.type.requirement-suppression.swift\\\"}},\\\"match\\\":\\\"(?<![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])(~)(?![/=\\\\\\\\-+!*%<>&|\\\\\\\\^~.])\\\"}]},\\\"declarations-typealias\\\":{\\\"begin\\\":\\\"\\\\\\\\b(typealias)\\\\\\\\s+((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.declaration-specifier.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.typealias.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)$|(?=;|//|/\\\\\\\\*|$)\\\",\\\"name\\\":\\\"meta.definition.typealias.swift\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=<)\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-generic-parameter-clause\\\"}]},{\\\"include\\\":\\\"#declarations-typealias-assignment\\\"}]},\\\"declarations-typealias-assignment\\\":{\\\"begin\\\":\\\"(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.swift\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)$|(?=;|//|/\\\\\\\\*|$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"}]},\\\"declarations-typed-variable-declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?:(async)\\\\\\\\s+)?(let|var)\\\\\\\\b\\\\\\\\s+(?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>)\\\\\\\\s*:\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.declaration-specifier.swift\\\"}},\\\"end\\\":\\\"(?=$|[={])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#declarations-available-types\\\"}]},\\\"declarations-types-precedencegroup\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:BitwiseShift|Assignment|RangeFormation|Casting|Addition|NilCoalescing|Comparison|LogicalConjunction|LogicalDisjunction|Default|Ternary|Multiplication|FunctionArrow)Precedence\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.swift\\\"}]},\\\"expressions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references\\\"},{\\\"include\\\":\\\"#expressions-trailing-closure\\\"},{\\\"include\\\":\\\"#member-reference\\\"}]},\\\"expressions-trailing-closure\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"match\\\":\\\"(#?(?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))(?=\\\\\\\\s*\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.function-call.trailing-closure-only.swift\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.trailing-closure-label.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.argument-label.swift\\\"}},\\\"match\\\":\\\"((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\\\\\\s*(:)(?=\\\\\\\\s*\\\\\\\\{)\\\"}]},\\\"expressions-without-trailing-closures\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references\\\"},{\\\"include\\\":\\\"#member-references\\\"}]},\\\"expressions-without-trailing-closures-or-member-references\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#code-block\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references-closure-parameter\\\"},{\\\"include\\\":\\\"#literals\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#builtin-types\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#builtin-global-functions\\\"},{\\\"include\\\":\\\"#builtin-properties\\\"},{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references-compound-name\\\"},{\\\"include\\\":\\\"#conditionals\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references-availability-condition\\\"},{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references-function-or-macro-call-expression\\\"},{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references-macro-expansion\\\"},{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references-subscript-expression\\\"},{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references-parenthesized-expression\\\"},{\\\"match\\\":\\\"\\\\\\\\b_\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.discard-value.swift\\\"}]},\\\"expressions-without-trailing-closures-or-member-references-availability-condition\\\":{\\\"begin\\\":\\\"\\\\\\\\B(#(?:un)?available)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.availability-condition.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.swift\\\"}},\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.platform.os.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.swift\\\"}},\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\b((?:iOS|macOS|OSX|watchOS|tvOS|visionOS|UIKitForMac)(?:ApplicationExtension)?)\\\\\\\\b(?:\\\\\\\\s+([0-9]+(?:\\\\\\\\.[0-9]+)*\\\\\\\\b))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.platform.all.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.swift\\\"}},\\\"match\\\":\\\"(\\\\\\\\*)\\\\\\\\s*(.*?)(?=[,)])\\\"},{\\\"match\\\":\\\"[^\\\\\\\\s,)]+\\\",\\\"name\\\":\\\"invalid.illegal.character-not-allowed-here.swift\\\"}]},\\\"expressions-without-trailing-closures-or-member-references-closure-parameter\\\":{\\\"match\\\":\\\"\\\\\\\\$[0-9]+\\\",\\\"name\\\":\\\"variable.language.closure-parameter.swift\\\"},\\\"expressions-without-trailing-closures-or-member-references-compound-name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.compound-name.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.swift\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.entity.swift\\\"}},\\\"match\\\":\\\"(?<q>`?)(?!_:)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>):\\\",\\\"name\\\":\\\"entity.name.function.compound-name.swift\\\"}]}},\\\"match\\\":\\\"((?<q1>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q1>))\\\\\\\\(((((?<q2>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q2>)):)+)\\\\\\\\)\\\"},\\\"expressions-without-trailing-closures-or-member-references-expression-element-list\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.argument-label.swift\\\"}},\\\"end\\\":\\\"(?=[,)\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]},{\\\"begin\\\":\\\"(?![,)\\\\\\\\]])(?=\\\\\\\\S)\\\",\\\"end\\\":\\\"(?=[,)\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]}]},\\\"expressions-without-trailing-closures-or-member-references-function-or-macro-call-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(#?(?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.any-method.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.swift\\\"}},\\\"name\\\":\\\"meta.function-call.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references-expression-element-list\\\"}]},{\\\"begin\\\":\\\"(?<=[`\\\\\\\\])}>\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}])\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.swift\\\"}},\\\"name\\\":\\\"meta.function-call.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references-expression-element-list\\\"}]}]},\\\"expressions-without-trailing-closures-or-member-references-macro-expansion\\\":{\\\"match\\\":\\\"(#(?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\",\\\"name\\\":\\\"support.function.any-method.swift\\\"},\\\"expressions-without-trailing-closures-or-member-references-parenthesized-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tuple.begin.swift\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*((?:\\\\\\\\b(?:async|throws|rethrows)\\\\\\\\s)*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.tuple.end.swift\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\brethrows\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.rethrows-only-allowed-on-function-declarations.swift\\\"},{\\\"include\\\":\\\"#async-throws\\\"}]}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references-expression-element-list\\\"}]},\\\"expressions-without-trailing-closures-or-member-references-subscript-expression\\\":{\\\"begin\\\":\\\"(?<=[`\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}])\\\\\\\\s*(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.swift\\\"}},\\\"name\\\":\\\"meta.subscript-expression.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions-without-trailing-closures-or-member-references-expression-element-list\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:if|else|guard|where|switch|case|default|fallthrough)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.branch.swift\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:continue|break|fallthrough|return)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.transfer.swift\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:while|for|in|each)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.loop.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\bany\\\\\\\\b(?=\\\\\\\\s*`?[\\\\\\\\p{L}_])\\\",\\\"name\\\":\\\"keyword.other.operator.type.existential.swift\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.loop.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.whitespace.trailing.repeat.swift\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(repeat)\\\\\\\\b(\\\\\\\\s*)\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bdefer\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.defer.swift\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.try-must-precede-await.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.await.swift\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:(await\\\\\\\\s+try)|(await))\\\\\\\\b\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:catch|throw|try)\\\\\\\\b|\\\\\\\\btry[?!]\\\\\\\\B\\\",\\\"name\\\":\\\"keyword.control.exception.swift\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:throws|rethrows)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.exception.swift\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.exception.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.whitespace.trailing.do.swift\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(do)\\\\\\\\b(\\\\\\\\s*)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.async.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.declaration-specifier.swift\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:(async)\\\\\\\\s+)?(let|var)\\\\\\\\b\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:associatedtype|operator|typealias)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.declaration-specifier.swift\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(class|enum|extension|precedencegroup|protocol|struct|actor)\\\\\\\\b(?=\\\\\\\\s*`?[\\\\\\\\p{L}_])\\\",\\\"name\\\":\\\"storage.type.$1.swift\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:inout|static|final|lazy|mutating|nonmutating|optional|indirect|required|override|dynamic|convenience|infix|prefix|postfix|distributed|nonisolated|borrowing|consuming)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\binit[?!]|\\\\\\\\binit\\\\\\\\b|(?<!\\\\\\\\.)\\\\\\\\b(?:func|deinit|subscript|didSet|get|set|willSet)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.function.swift\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:fileprivate|private|internal|public|open|package)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.declaration-specifier.accessibility.swift\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bunowned\\\\\\\\((?:safe|unsafe)\\\\\\\\)|(?<!\\\\\\\\.)\\\\\\\\b(?:weak|unowned)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.capture-specifier.swift\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.type.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.type.metatype.swift\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\.)(?:(dynamicType|self)|(Protocol|Type))\\\\\\\\b\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(?:super|self|Self)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\B(?:#file|#filePath|#fileID|#line|#column|#function|#dsohandle)\\\\\\\\b|\\\\\\\\b(?:__FILE__|__LINE__|__COLUMN__|__FUNCTION__|__DSO_HANDLE__)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.swift\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bimport\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.swift\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bconsume(?=\\\\\\\\s+`?[\\\\\\\\p{L}_])\\\",\\\"name\\\":\\\"keyword.control.consume.swift\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bcopy(?=\\\\\\\\s+`?[\\\\\\\\p{L}_])\\\",\\\"name\\\":\\\"keyword.control.copy.swift\\\"}]},\\\"literals\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literals-boolean\\\"},{\\\"include\\\":\\\"#literals-numeric\\\"},{\\\"include\\\":\\\"#literals-string\\\"},{\\\"match\\\":\\\"\\\\\\\\bnil\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.nil.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\B#(colorLiteral|imageLiteral|fileLiteral)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.object-literal.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\B#externalMacro\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin-macro.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\B#keyPath\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.key-path.swift\\\"},{\\\"begin\\\":\\\"\\\\\\\\B(#selector)(\\\\\\\\()(?:\\\\\\\\s*(getter|setter)\\\\\\\\s*(:))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.selector-reference.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.variable.parameter.swift\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.argument-label.swift\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.swift\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]},{\\\"include\\\":\\\"#literals-regular-expression-literal\\\"}]},\\\"literals-boolean\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.swift\\\"},\\\"literals-numeric\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)(?<![\\\\\\\\[\\\\\\\\](){}\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]\\\\\\\\.)[0-9][0-9_]*(?=\\\\\\\\.[0-9]|[eE])(?:\\\\\\\\.[0-9][0-9_]*)?(?:[eE][-+]?[0-9][0-9_]*)?\\\\\\\\b(?!\\\\\\\\.[0-9])\\\",\\\"name\\\":\\\"constant.numeric.float.decimal.swift\\\"},{\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)(?<![\\\\\\\\[\\\\\\\\](){}\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]\\\\\\\\.)(0x[0-9a-fA-F][0-9a-fA-F_]*)(?:\\\\\\\\.[0-9a-fA-F][0-9a-fA-F_]*)?[pP][-+]?[0-9][0-9_]*\\\\\\\\b(?!\\\\\\\\.[0-9])\\\",\\\"name\\\":\\\"constant.numeric.float.hexadecimal.swift\\\"},{\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)(?<![\\\\\\\\[\\\\\\\\](){}\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]\\\\\\\\.)(0x[0-9a-fA-F][0-9a-fA-F_]*)(?:\\\\\\\\.[0-9a-fA-F][0-9a-fA-F_]*)?(?:[pP][-+]?\\\\\\\\w*)\\\\\\\\b(?!\\\\\\\\.[0-9])\\\",\\\"name\\\":\\\"invalid.illegal.numeric.float.invalid-exponent.swift\\\"},{\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)(?<![\\\\\\\\[\\\\\\\\](){}\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]\\\\\\\\.)(0x[0-9a-fA-F][0-9a-fA-F_]*)\\\\\\\\.[0-9][\\\\\\\\w.]*\\\",\\\"name\\\":\\\"invalid.illegal.numeric.float.missing-exponent.swift\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\s|^)\\\\\\\\-?\\\\\\\\.[0-9][\\\\\\\\w.]*\\\",\\\"name\\\":\\\"invalid.illegal.numeric.float.missing-leading-zero.swift\\\"},{\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)0[box]_[0-9a-fA-F_]*(?:[pPeE][+-]?\\\\\\\\w+)?[\\\\\\\\w.]+\\\",\\\"name\\\":\\\"invalid.illegal.numeric.leading-underscore.swift\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\[\\\\\\\\](){}\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]\\\\\\\\.)[0-9]+\\\\\\\\b\\\"},{\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)(?<![\\\\\\\\[\\\\\\\\](){}\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]\\\\\\\\.)0b[01][01_]*\\\\\\\\b(?!\\\\\\\\.[0-9])\\\",\\\"name\\\":\\\"constant.numeric.integer.binary.swift\\\"},{\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)(?<![\\\\\\\\[\\\\\\\\](){}\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]\\\\\\\\.)0o[0-7][0-7_]*\\\\\\\\b(?!\\\\\\\\.[0-9])\\\",\\\"name\\\":\\\"constant.numeric.integer.octal.swift\\\"},{\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)(?<![\\\\\\\\[\\\\\\\\](){}\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]\\\\\\\\.)[0-9][0-9_]*\\\\\\\\b(?!\\\\\\\\.[0-9])\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.swift\\\"},{\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)(?<![\\\\\\\\[\\\\\\\\](){}\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]\\\\\\\\.)0x[0-9a-fA-F][0-9a-fA-F_]*\\\\\\\\b(?!\\\\\\\\.[0-9])\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.swift\\\"},{\\\"match\\\":\\\"(\\\\\\\\B\\\\\\\\-|\\\\\\\\b)[0-9][\\\\\\\\w.]*\\\",\\\"name\\\":\\\"invalid.illegal.numeric.other.swift\\\"}]},\\\"literals-regular-expression-literal\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(#+)/\\\\\\\\n\\\",\\\"end\\\":\\\"/\\\\\\\\1\\\",\\\"name\\\":\\\"string.regexp.block.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literals-regular-expression-literal-regex-guts\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-line-comment\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literals-regular-expression-literal-regex-guts\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.regexp.swift\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.regexp.swift\\\"},\\\"9\\\":{\\\"name\\\":\\\"invalid.illegal.returns-not-allowed.regexp\\\"}},\\\"match\\\":\\\"(?!/\\\\\\\\s)(?!//)(((\\\\\\\\#+)?)/)(\\\\\\\\\\\\\\\\\\\\\\\\s)?(?<guts>(?>(?:\\\\\\\\\\\\\\\\Q(?:(?!\\\\\\\\\\\\\\\\E)(?!/\\\\\\\\2).)*+(?:\\\\\\\\\\\\\\\\E|(?(3)|(?<!\\\\\\\\s))(?=/\\\\\\\\2))|\\\\\\\\\\\\\\\\.|\\\\\\\\(\\\\\\\\?\\\\\\\\#[^)]*\\\\\\\\)|\\\\\\\\(\\\\\\\\?(?>(\\\\\\\\{(?:\\\\\\\\g<-1>|(?!{).*?)\\\\\\\\}))(?:\\\\\\\\[(?!\\\\\\\\d)\\\\\\\\w+\\\\\\\\])?[X<>]?\\\\\\\\)|(?<class>\\\\\\\\[(?:\\\\\\\\\\\\\\\\.|[^\\\\\\\\[\\\\\\\\]]|\\\\\\\\g<class>)+\\\\\\\\])|\\\\\\\\(\\\\\\\\g<guts>?+\\\\\\\\)|(?:(?!/\\\\\\\\2)[^()\\\\\\\\[\\\\\\\\\\\\\\\\])+)+))?+(?(3)|(?(5)(?<!\\\\\\\\s)))(/\\\\\\\\2)|\\\\\\\\#+/.+(\\\\\\\\n)\\\",\\\"name\\\":\\\"string.regexp.line.swift\\\"}]},\\\"literals-regular-expression-literal-backreference-or-subpattern\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.group-name.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\g\\\\\\\\{)(?:((?!\\\\\\\\d)\\\\\\\\w+)(?:([+-])(\\\\\\\\d+))?|([+-]?\\\\\\\\d+)(?:([+-])(\\\\\\\\d+))?)(\\\\\\\\})\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\g)([+-]?\\\\\\\\d+)(?:([+-])(\\\\\\\\d+))?\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.group-name.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\[gk]<)(?:((?!\\\\\\\\d)\\\\\\\\w+)(?:([+-])(\\\\\\\\d+))?|([+-]?\\\\\\\\d+)(?:([+-])(\\\\\\\\d+))?)(>)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.group-name.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"8\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\[gk]')(?:((?!\\\\\\\\d)\\\\\\\\w+)(?:([+-])(\\\\\\\\d+))?|([+-]?\\\\\\\\d+)(?:([+-])(\\\\\\\\d+))?)(')\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.group-name.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\k\\\\\\\\{)((?!\\\\\\\\d)\\\\\\\\w+)(?:([+-])(\\\\\\\\d+))?(\\\\\\\\})\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[1-9][0-9]+\\\",\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.group-name.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\(\\\\\\\\?(?:P[=>]|&))((?!\\\\\\\\d)\\\\\\\\w+)(?:([+-])(\\\\\\\\d+))?(\\\\\\\\))\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\?R\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.other.back-reference.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\(\\\\\\\\?)([+-]?\\\\\\\\d+)(?:([+-])(\\\\\\\\d+))?(\\\\\\\\))\\\"}]},\\\"literals-regular-expression-literal-backtracking-directive-or-global-matching-option\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.directive.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.directive.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.directive.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.language.tag.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.directive.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.regexp\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.control.directive.regexp\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.control.directive.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\(\\\\\\\\*)(?:(ACCEPT|FAIL|F|MARK(?=:)|(?=:)|COMMIT|PRUNE|SKIP|THEN)(?:(:)([^)]+))?|(?:(LIMIT_(?:DEPTH|HEAP|MATCH))(=)(\\\\\\\\d+))|(CRLF|CR|ANYCRLF|ANY|LF|NUL|BSR_ANYCRLF|BSR_UNICODE|NOTEMPTY_ATSTART|NOTEMPTY|NO_AUTO_POSSESS|NO_DOTSTAR_ANCHOR|NO_JIT|NO_START_OPT|UTF|UCP))(\\\\\\\\))\\\"},\\\"literals-regular-expression-literal-callout\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.callout.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.callout.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.callout.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.function.callout.regexp\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.function.callout.regexp\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.function.callout.regexp\\\"},\\\"9\\\":{\\\"name\\\":\\\"entity.name.function.callout.regexp\\\"},\\\"10\\\":{\\\"name\\\":\\\"entity.name.function.callout.regexp\\\"},\\\"11\\\":{\\\"name\\\":\\\"entity.name.function.callout.regexp\\\"},\\\"12\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"13\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"14\\\":{\\\"name\\\":\\\"keyword.control.callout.regexp\\\"},\\\"15\\\":{\\\"name\\\":\\\"entity.name.function.callout.regexp\\\"},\\\"16\\\":{\\\"name\\\":\\\"variable.language.tag-name.regexp\\\"},\\\"17\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"18\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"19\\\":{\\\"name\\\":\\\"keyword.control.callout.regexp\\\"},\\\"21\\\":{\\\"name\\\":\\\"variable.language.tag-name.regexp\\\"},\\\"22\\\":{\\\"name\\\":\\\"keyword.control.callout.regexp\\\"},\\\"23\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(?<keyw>\\\\\\\\?C)(?:(?<num>\\\\\\\\d+)|`(?<name>(?:[^`]|``)*)`|'(?<name>(?:[^']|'')*)'|\\\\\\\"(?<name>(?:[^\\\\\\\"]|\\\\\\\"\\\\\\\")*)\\\\\\\"|\\\\\\\\^(?<name>(?:[^\\\\\\\\^]|\\\\\\\\^\\\\\\\\^)*)\\\\\\\\^|%(?<name>(?:[^%]|%%)*)%|\\\\\\\\#(?<name>(?:[^#]|\\\\\\\\#\\\\\\\\#)*)\\\\\\\\#|\\\\\\\\$(?<name>(?:[^$]|\\\\\\\\$\\\\\\\\$)*)\\\\\\\\$|\\\\\\\\{(?<name>(?:[^}]|\\\\\\\\}\\\\\\\\})*)\\\\\\\\})?(\\\\\\\\))|(\\\\\\\\()(?<keyw>\\\\\\\\*)(?<name>(?!\\\\\\\\d)\\\\\\\\w+)(?:\\\\\\\\[(?<tag>(?!\\\\\\\\d)\\\\\\\\w+)\\\\\\\\])?(?:\\\\\\\\{[^,}]+(?:,[^,}]+)*\\\\\\\\})?(\\\\\\\\))|(\\\\\\\\()(?<keyw>\\\\\\\\?)(?>(\\\\\\\\{(?:\\\\\\\\g<-1>|(?!{).*?)\\\\\\\\}))(?:\\\\\\\\[(?<tag>(?!\\\\\\\\d)\\\\\\\\w+)\\\\\\\\])?(?<keyw>[X<>]?)(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.callout.regexp\\\"},\\\"literals-regular-expression-literal-character-properties\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.variable.character-property.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.variable.character-property.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"}},\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[pP]\\\\\\\\{([\\\\\\\\s\\\\\\\\w-]+(?:=[\\\\\\\\s\\\\\\\\w-]+)?)\\\\\\\\}|(\\\\\\\\[:)([\\\\\\\\s\\\\\\\\w-]+(?:=[\\\\\\\\s\\\\\\\\w-]+)?)(:\\\\\\\\])\\\",\\\"name\\\":\\\"constant.other.character-class.set.regexp\\\"},\\\"literals-regular-expression-literal-custom-char-class\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.regexp\\\"}},\\\"name\\\":\\\"constant.other.character-class.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literals-regular-expression-literal-custom-char-class-members\\\"}]}]},\\\"literals-regular-expression-literal-custom-char-class-members\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\b\\\",\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-custom-char-class\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-quote\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-set-operators\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-unicode-scalars\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-character-properties\\\"}]},\\\"literals-regular-expression-literal-group-option-toggle\\\":{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\?(?:\\\\\\\\^(?:[iJmnsUxwDPSW]|xx|y\\\\\\\\{[gw]\\\\\\\\})*|(?:[iJmnsUxwDPSW]|xx|y\\\\\\\\{[gw]\\\\\\\\})+|(?:[iJmnsUxwDPSW]|xx|y\\\\\\\\{[gw]\\\\\\\\})*-(?:[iJmnsUxwDPSW]|xx|y\\\\\\\\{[gw]\\\\\\\\})*)\\\\\\\\)\\\",\\\"name\\\":\\\"keyword.other.option-toggle.regexp\\\"},\\\"literals-regular-expression-literal-group-or-conditional\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?~)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.conditional.absent.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.absent.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literals-regular-expression-literal-regex-guts\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\()(?<cond>\\\\\\\\?\\\\\\\\()(?:(?<NumberRef>(?<num>[+-]?\\\\\\\\d+)(?:(?<op>[+-])(?<num>\\\\\\\\d+))?)|(?<cond>R)\\\\\\\\g<NumberRef>?|(?<cond>R&)(?<NamedRef>(?<name>(?!\\\\\\\\d)\\\\\\\\w+)(?:(?<op>[+-])(?<num>\\\\\\\\d+))?)|(?<cond><)(?:\\\\\\\\g<NamedRef>|\\\\\\\\g<NumberRef>)(?<cond>>)|(?<cond>')(?:\\\\\\\\g<NamedRef>|\\\\\\\\g<NumberRef>)(?<cond>')|(?<cond>DEFINE)|(?<cond>VERSION)(?<compar>>?=)(?<num>\\\\\\\\d+\\\\\\\\.\\\\\\\\d+))(?<cond>\\\\\\\\))|(\\\\\\\\()(?<cond>\\\\\\\\?)(?=\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.conditional.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.control.conditional.regexp\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.control.conditional.regexp\\\"},\\\"10\\\":{\\\"name\\\":\\\"variable.other.group-name.regexp\\\"},\\\"11\\\":{\\\"name\\\":\\\"keyword.operator.recursion-level.regexp\\\"},\\\"12\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"13\\\":{\\\"name\\\":\\\"keyword.control.conditional.regexp\\\"},\\\"14\\\":{\\\"name\\\":\\\"keyword.control.conditional.regexp\\\"},\\\"15\\\":{\\\"name\\\":\\\"keyword.control.conditional.regexp\\\"},\\\"16\\\":{\\\"name\\\":\\\"keyword.control.conditional.regexp\\\"},\\\"17\\\":{\\\"name\\\":\\\"keyword.control.conditional.regexp\\\"},\\\"18\\\":{\\\"name\\\":\\\"keyword.control.conditional.regexp\\\"},\\\"19\\\":{\\\"name\\\":\\\"keyword.operator.comparison.regexp\\\"},\\\"20\\\":{\\\"name\\\":\\\"constant.numeric.integer.decimal.regexp\\\"},\\\"21\\\":{\\\"name\\\":\\\"keyword.control.conditional.regexp\\\"},\\\"22\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"23\\\":{\\\"name\\\":\\\"keyword.control.conditional.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.conditional.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literals-regular-expression-literal-regex-guts\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\()((\\\\\\\\?)(?:([:|>=!*]|<[=!*])|P?<(?:((?!\\\\\\\\d)\\\\\\\\w+)(-))?((?!\\\\\\\\d)\\\\\\\\w+)>|'(?:((?!\\\\\\\\d)\\\\\\\\w+)(-))?((?!\\\\\\\\d)\\\\\\\\w+)'|(?:\\\\\\\\^(?:[iJmnsUxwDPSW]|xx|y\\\\\\\\{[gw]\\\\\\\\})*|(?:[iJmnsUxwDPSW]|xx|y\\\\\\\\{[gw]\\\\\\\\})+|(?:[iJmnsUxwDPSW]|xx|y\\\\\\\\{[gw]\\\\\\\\})*-(?:[iJmnsUxwDPSW]|xx|y\\\\\\\\{[gw]\\\\\\\\})*):)|\\\\\\\\*(atomic|pla|positive_lookahead|nla|negative_lookahead|plb|positive_lookbehind|nlb|negative_lookbehind|napla|non_atomic_positive_lookahead|naplb|non_atomic_positive_lookbehind|sr|script_run|asr|atomic_script_run):)?+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.group-options.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.group-name.regexp\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.balancing-group.regexp\\\"},\\\"7\\\":{\\\"name\\\":\\\"variable.other.group-name.regexp\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.other.group-name.regexp\\\"},\\\"9\\\":{\\\"name\\\":\\\"keyword.operator.balancing-group.regexp\\\"},\\\"10\\\":{\\\"name\\\":\\\"variable.other.group-name.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.regexp\\\"}},\\\"name\\\":\\\"meta.group.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#literals-regular-expression-literal-regex-guts\\\"}]}]},\\\"literals-regular-expression-literal-line-comment\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\#).*$\\\",\\\"name\\\":\\\"comment.line.regexp\\\"},\\\"literals-regular-expression-literal-quote\\\":{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\Q\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\\E|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.returns-not-allowed.regexp\\\"}},\\\"name\\\":\\\"string.quoted.other.regexp.swift\\\"},\\\"literals-regular-expression-literal-regex-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literals-regular-expression-literal-quote\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?\\\\\\\\#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.regexp\\\"}},\\\"name\\\":\\\"comment.block.regexp\\\"},{\\\"begin\\\":\\\"<\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.regexp\\\"}},\\\"end\\\":\\\"\\\\\\\\}>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.regexp\\\"}},\\\"name\\\":\\\"meta.embedded.expression.regexp\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-unicode-scalars\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-character-properties\\\"},{\\\"match\\\":\\\"[$^]|\\\\\\\\\\\\\\\\[AbBGyYzZ]|\\\\\\\\\\\\\\\\K\\\",\\\"name\\\":\\\"keyword.control.anchor.regexp\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-backtracking-directive-or-global-matching-option\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-callout\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-backreference-or-subpattern\\\"},{\\\"match\\\":\\\"\\\\\\\\.|\\\\\\\\\\\\\\\\[CdDhHNORsSvVwWX]\\\",\\\"name\\\":\\\"constant.character.character-class.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\c.\\\",\\\"name\\\":\\\"constant.character.entity.control-character.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^c]\\\",\\\"name\\\":\\\"constant.character.escape.backslash.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.or.regexp\\\"},{\\\"match\\\":\\\"[*+?]\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\{\\\\\\\\s*\\\\\\\\d+\\\\\\\\s*(?:,\\\\\\\\s*\\\\\\\\d*\\\\\\\\s*)?\\\\\\\\}|\\\\\\\\{\\\\\\\\s*,\\\\\\\\s*\\\\\\\\d+\\\\\\\\s*\\\\\\\\}\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-custom-char-class\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-group-option-toggle\\\"},{\\\"include\\\":\\\"#literals-regular-expression-literal-group-or-conditional\\\"}]},\\\"literals-regular-expression-literal-set-operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"&&\\\",\\\"name\\\":\\\"keyword.operator.intersection.regexp.swift\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.subtraction.regexp.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\~\\\\\\\\~\\\",\\\"name\\\":\\\"keyword.operator.symmetric-difference.regexp.swift\\\"}]},\\\"literals-regular-expression-literal-unicode-scalars\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u\\\\\\\\{\\\\\\\\s*(?:[0-9a-fA-F]+\\\\\\\\s*)+\\\\\\\\}|\\\\\\\\\\\\\\\\u[0-9a-fA-F]{4}|\\\\\\\\\\\\\\\\x\\\\\\\\{[0-9a-fA-F]+\\\\\\\\}|\\\\\\\\\\\\\\\\x[0-9a-fA-F]{0,2}|\\\\\\\\\\\\\\\\U[0-9a-fA-F]{8}|\\\\\\\\\\\\\\\\o\\\\\\\\{[0-7]+\\\\\\\\}|\\\\\\\\\\\\\\\\0[0-7]{0,3}|\\\\\\\\\\\\\\\\N\\\\\\\\{(?:U\\\\\\\\+[0-9a-fA-F]{1,8}|[\\\\\\\\s\\\\\\\\w-]+)\\\\\\\\}\\\",\\\"name\\\":\\\"constant.character.numeric.regexp\\\"},\\\"literals-string\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"(#*)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.swift\\\"},\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.extra-closing-delimiter.swift\\\"}},\\\"name\\\":\\\"string.quoted.double.block.swift\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G.+(?=\\\\\\\"\\\\\\\"\\\\\\\")|\\\\\\\\G.+\\\",\\\"name\\\":\\\"invalid.illegal.content-after-opening-delimiter.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\s*\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.newline.swift\\\"},{\\\"include\\\":\\\"#literals-string-string-guts\\\"},{\\\"match\\\":\\\"\\\\\\\\S((?!\\\\\\\\\\\\\\\\\\\\\\\\().)*(?=\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"name\\\":\\\"invalid.illegal.content-before-closing-delimiter.swift\\\"}]},{\\\"begin\\\":\\\"#\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"#(#*)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.swift\\\"},\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.extra-closing-delimiter.swift\\\"}},\\\"name\\\":\\\"string.quoted.double.block.raw.swift\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G.+(?=\\\\\\\"\\\\\\\"\\\\\\\")|\\\\\\\\G.+\\\",\\\"name\\\":\\\"invalid.illegal.content-after-opening-delimiter.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#\\\\\\\\s*\\\\\\\\n\\\",\\\"name\\\":\\\"constant.character.escape.newline.swift\\\"},{\\\"include\\\":\\\"#literals-string-raw-string-guts\\\"},{\\\"match\\\":\\\"\\\\\\\\S((?!\\\\\\\\\\\\\\\\#\\\\\\\\().)*(?=\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"name\\\":\\\"invalid.illegal.content-before-closing-delimiter.swift\\\"}]},{\\\"begin\\\":\\\"(##+)\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\\\\\\1(#*)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.swift\\\"},\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.extra-closing-delimiter.swift\\\"}},\\\"name\\\":\\\"string.quoted.double.block.raw.swift\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G.+(?=\\\\\\\"\\\\\\\"\\\\\\\")|\\\\\\\\G.+\\\",\\\"name\\\":\\\"invalid.illegal.content-after-opening-delimiter.swift\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.swift\\\"}},\\\"end\\\":\\\"\\\\\\\"(#*)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.swift\\\"},\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.extra-closing-delimiter.swift\\\"}},\\\"name\\\":\\\"string.quoted.double.single-line.swift\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\r|\\\\\\\\n\\\",\\\"name\\\":\\\"invalid.illegal.returns-not-allowed.swift\\\"},{\\\"include\\\":\\\"#literals-string-string-guts\\\"}]},{\\\"begin\\\":\\\"(##+)\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.raw.swift\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\\\\\\1(#*)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.raw.swift\\\"},\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.extra-closing-delimiter.swift\\\"}},\\\"name\\\":\\\"string.quoted.double.single-line.raw.swift\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\r|\\\\\\\\n\\\",\\\"name\\\":\\\"invalid.illegal.returns-not-allowed.swift\\\"}]},{\\\"begin\\\":\\\"#\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.raw.swift\\\"}},\\\"end\\\":\\\"\\\\\\\"#(#*)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.raw.swift\\\"},\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.extra-closing-delimiter.swift\\\"}},\\\"name\\\":\\\"string.quoted.double.single-line.raw.swift\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\r|\\\\\\\\n\\\",\\\"name\\\":\\\"invalid.illegal.returns-not-allowed.swift\\\"},{\\\"include\\\":\\\"#literals-string-raw-string-guts\\\"}]}]},\\\"literals-string-raw-string-guts\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#[0\\\\\\\\\\\\\\\\tnr\\\\\\\"']\\\",\\\"name\\\":\\\"constant.character.escape.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#u\\\\\\\\{[0-9a-fA-F]{1,8}\\\\\\\\}\\\",\\\"name\\\":\\\"constant.character.escape.unicode.swift\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\#\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.swift\\\"}},\\\"contentName\\\":\\\"source.swift\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.swift\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.swift\\\"}},\\\"name\\\":\\\"meta.embedded.line.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\#.\\\",\\\"name\\\":\\\"invalid.illegal.escape-not-recognized\\\"}]},\\\"literals-string-string-guts\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0\\\\\\\\\\\\\\\\tnr\\\\\\\"']\\\",\\\"name\\\":\\\"constant.character.escape.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\u\\\\\\\\{[0-9a-fA-F]{1,8}\\\\\\\\}\\\",\\\"name\\\":\\\"constant.character.escape.unicode.swift\\\"},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.swift\\\"}},\\\"contentName\\\":\\\"source.swift\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.swift\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.swift\\\"}},\\\"name\\\":\\\"meta.embedded.line.swift\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\"}]},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.escape-not-recognized\\\"}]},\\\"member-reference\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.swift\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.identifier.swift\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\.)((?<q>`?)[\\\\\\\\p{L}_][\\\\\\\\p{L}_\\\\\\\\p{N}\\\\\\\\p{M}]*(\\\\\\\\k<q>))\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(is\\\\\\\\b|as([!?]\\\\\\\\B|\\\\\\\\b))\\\",\\\"name\\\":\\\"keyword.operator.type-casting.swift\\\"},{\\\"begin\\\":\\\"(?=(?<oph>[/=\\\\\\\\-+!*%<>&|^~?]|[\\\\\\\\x{00A1}-\\\\\\\\x{00A7}]|[\\\\\\\\x{00A9}\\\\\\\\x{00AB}]|[\\\\\\\\x{00AC}\\\\\\\\x{00AE}]|[\\\\\\\\x{00B0}-\\\\\\\\x{00B1}\\\\\\\\x{00B6}\\\\\\\\x{00BB}\\\\\\\\x{00BF}\\\\\\\\x{00D7}\\\\\\\\x{00F7}]|[\\\\\\\\x{2016}-\\\\\\\\x{2017}\\\\\\\\x{2020}-\\\\\\\\x{2027}]|[\\\\\\\\x{2030}-\\\\\\\\x{203E}]|[\\\\\\\\x{2041}-\\\\\\\\x{2053}]|[\\\\\\\\x{2055}-\\\\\\\\x{205E}]|[\\\\\\\\x{2190}-\\\\\\\\x{23FF}]|[\\\\\\\\x{2500}-\\\\\\\\x{2775}]|[\\\\\\\\x{2794}-\\\\\\\\x{2BFF}]|[\\\\\\\\x{2E00}-\\\\\\\\x{2E7F}]|[\\\\\\\\x{3001}-\\\\\\\\x{3003}]|[\\\\\\\\x{3008}-\\\\\\\\x{3030}])|\\\\\\\\.(\\\\\\\\g<oph>|\\\\\\\\.|[\\\\\\\\x{0300}-\\\\\\\\x{036F}]|[\\\\\\\\x{1DC0}-\\\\\\\\x{1DFF}]|[\\\\\\\\x{20D0}-\\\\\\\\x{20FF}]|[\\\\\\\\x{FE00}-\\\\\\\\x{FE0F}]|[\\\\\\\\x{FE20}-\\\\\\\\x{FE2F}]|[\\\\\\\\x{E0100}-\\\\\\\\x{E01EF}]))\\\",\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G(\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-)$\\\",\\\"name\\\":\\\"keyword.operator.increment-or-decrement.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G(\\\\\\\\+|\\\\\\\\-)$\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.unary.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G!$\\\",\\\"name\\\":\\\"keyword.operator.logical.not.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G~$\\\",\\\"name\\\":\\\"keyword.operator.bitwise.not.swift\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"keyword.operator.custom.prefix.swift\\\"}]}},\\\"match\\\":\\\"\\\\\\\\G(?<=^|[\\\\\\\\s(\\\\\\\\[{,;:])((?!(//|/\\\\\\\\*|\\\\\\\\*/))([/=\\\\\\\\-+!*%<>&|^~?]|[\\\\\\\\x{00A1}-\\\\\\\\x{00A7}]|[\\\\\\\\x{00A9}\\\\\\\\x{00AB}]|[\\\\\\\\x{00AC}\\\\\\\\x{00AE}]|[\\\\\\\\x{00B0}-\\\\\\\\x{00B1}\\\\\\\\x{00B6}\\\\\\\\x{00BB}\\\\\\\\x{00BF}\\\\\\\\x{00D7}\\\\\\\\x{00F7}]|[\\\\\\\\x{2016}-\\\\\\\\x{2017}\\\\\\\\x{2020}-\\\\\\\\x{2027}]|[\\\\\\\\x{2030}-\\\\\\\\x{203E}]|[\\\\\\\\x{2041}-\\\\\\\\x{2053}]|[\\\\\\\\x{2055}-\\\\\\\\x{205E}]|[\\\\\\\\x{2190}-\\\\\\\\x{23FF}]|[\\\\\\\\x{2500}-\\\\\\\\x{2775}]|[\\\\\\\\x{2794}-\\\\\\\\x{2BFF}]|[\\\\\\\\x{2E00}-\\\\\\\\x{2E7F}]|[\\\\\\\\x{3001}-\\\\\\\\x{3003}]|[\\\\\\\\x{3008}-\\\\\\\\x{3030}]|[\\\\\\\\x{0300}-\\\\\\\\x{036F}]|[\\\\\\\\x{1DC0}-\\\\\\\\x{1DFF}]|[\\\\\\\\x{20D0}-\\\\\\\\x{20FF}]|[\\\\\\\\x{FE00}-\\\\\\\\x{FE0F}]|[\\\\\\\\x{FE20}-\\\\\\\\x{FE2F}]|[\\\\\\\\x{E0100}-\\\\\\\\x{E01EF}]))++(?![\\\\\\\\s)\\\\\\\\]},;:]|\\\\\\\\z)\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G(\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-)$\\\",\\\"name\\\":\\\"keyword.operator.increment-or-decrement.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G!$\\\",\\\"name\\\":\\\"keyword.operator.increment-or-decrement.swift\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"keyword.operator.custom.postfix.swift\\\"}]}},\\\"match\\\":\\\"\\\\\\\\G(?<!^|[\\\\\\\\s(\\\\\\\\[{,;:])((?!(//|/\\\\\\\\*|\\\\\\\\*/))([/=\\\\\\\\-+!*%<>&|^~?]|[\\\\\\\\x{00A1}-\\\\\\\\x{00A7}]|[\\\\\\\\x{00A9}\\\\\\\\x{00AB}]|[\\\\\\\\x{00AC}\\\\\\\\x{00AE}]|[\\\\\\\\x{00B0}-\\\\\\\\x{00B1}\\\\\\\\x{00B6}\\\\\\\\x{00BB}\\\\\\\\x{00BF}\\\\\\\\x{00D7}\\\\\\\\x{00F7}]|[\\\\\\\\x{2016}-\\\\\\\\x{2017}\\\\\\\\x{2020}-\\\\\\\\x{2027}]|[\\\\\\\\x{2030}-\\\\\\\\x{203E}]|[\\\\\\\\x{2041}-\\\\\\\\x{2053}]|[\\\\\\\\x{2055}-\\\\\\\\x{205E}]|[\\\\\\\\x{2190}-\\\\\\\\x{23FF}]|[\\\\\\\\x{2500}-\\\\\\\\x{2775}]|[\\\\\\\\x{2794}-\\\\\\\\x{2BFF}]|[\\\\\\\\x{2E00}-\\\\\\\\x{2E7F}]|[\\\\\\\\x{3001}-\\\\\\\\x{3003}]|[\\\\\\\\x{3008}-\\\\\\\\x{3030}]|[\\\\\\\\x{0300}-\\\\\\\\x{036F}]|[\\\\\\\\x{1DC0}-\\\\\\\\x{1DFF}]|[\\\\\\\\x{20D0}-\\\\\\\\x{20FF}]|[\\\\\\\\x{FE00}-\\\\\\\\x{FE0F}]|[\\\\\\\\x{FE20}-\\\\\\\\x{FE2F}]|[\\\\\\\\x{E0100}-\\\\\\\\x{E01EF}]))++(?=[\\\\\\\\s)\\\\\\\\]},;:]|\\\\\\\\z)\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G=$\\\",\\\"name\\\":\\\"keyword.operator.assignment.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G(\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|/|%|<<|>>|&|\\\\\\\\^|\\\\\\\\||&&|\\\\\\\\|\\\\\\\\|)=$\\\",\\\"name\\\":\\\"keyword.operator.assignment.compound.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G(\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|/)$\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G&(\\\\\\\\+|\\\\\\\\-|\\\\\\\\*)$\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.overflow.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G%$\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.remainder.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G(==|!=|>|<|>=|<=|~=)$\\\",\\\"name\\\":\\\"keyword.operator.comparison.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G\\\\\\\\?\\\\\\\\?$\\\",\\\"name\\\":\\\"keyword.operator.coalescing.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G(&&|\\\\\\\\|\\\\\\\\|)$\\\",\\\"name\\\":\\\"keyword.operator.logical.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G(&|\\\\\\\\||\\\\\\\\^|<<|>>)$\\\",\\\"name\\\":\\\"keyword.operator.bitwise.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G(===|!==)$\\\",\\\"name\\\":\\\"keyword.operator.bitwise.swift\\\"},{\\\"match\\\":\\\"\\\\\\\\G\\\\\\\\?$\\\",\\\"name\\\":\\\"keyword.operator.ternary.swift\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"keyword.operator.custom.infix.swift\\\"}]}},\\\"match\\\":\\\"\\\\\\\\G((?!(//|/\\\\\\\\*|\\\\\\\\*/))([/=\\\\\\\\-+!*%<>&|^~?]|[\\\\\\\\x{00A1}-\\\\\\\\x{00A7}]|[\\\\\\\\x{00A9}\\\\\\\\x{00AB}]|[\\\\\\\\x{00AC}\\\\\\\\x{00AE}]|[\\\\\\\\x{00B0}-\\\\\\\\x{00B1}\\\\\\\\x{00B6}\\\\\\\\x{00BB}\\\\\\\\x{00BF}\\\\\\\\x{00D7}\\\\\\\\x{00F7}]|[\\\\\\\\x{2016}-\\\\\\\\x{2017}\\\\\\\\x{2020}-\\\\\\\\x{2027}]|[\\\\\\\\x{2030}-\\\\\\\\x{203E}]|[\\\\\\\\x{2041}-\\\\\\\\x{2053}]|[\\\\\\\\x{2055}-\\\\\\\\x{205E}]|[\\\\\\\\x{2190}-\\\\\\\\x{23FF}]|[\\\\\\\\x{2500}-\\\\\\\\x{2775}]|[\\\\\\\\x{2794}-\\\\\\\\x{2BFF}]|[\\\\\\\\x{2E00}-\\\\\\\\x{2E7F}]|[\\\\\\\\x{3001}-\\\\\\\\x{3003}]|[\\\\\\\\x{3008}-\\\\\\\\x{3030}]|[\\\\\\\\x{0300}-\\\\\\\\x{036F}]|[\\\\\\\\x{1DC0}-\\\\\\\\x{1DFF}]|[\\\\\\\\x{20D0}-\\\\\\\\x{20FF}]|[\\\\\\\\x{FE00}-\\\\\\\\x{FE0F}]|[\\\\\\\\x{FE20}-\\\\\\\\x{FE2F}]|[\\\\\\\\x{E0100}-\\\\\\\\x{E01EF}]))++\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"keyword.operator.custom.prefix.dot.swift\\\"}]}},\\\"match\\\":\\\"\\\\\\\\G(?<=^|[\\\\\\\\s(\\\\\\\\[{,;:])\\\\\\\\.((?!(//|/\\\\\\\\*|\\\\\\\\*/))(\\\\\\\\.|[/=\\\\\\\\-+!*%<>&|^~?]|[\\\\\\\\x{00A1}-\\\\\\\\x{00A7}]|[\\\\\\\\x{00A9}\\\\\\\\x{00AB}]|[\\\\\\\\x{00AC}\\\\\\\\x{00AE}]|[\\\\\\\\x{00B0}-\\\\\\\\x{00B1}\\\\\\\\x{00B6}\\\\\\\\x{00BB}\\\\\\\\x{00BF}\\\\\\\\x{00D7}\\\\\\\\x{00F7}]|[\\\\\\\\x{2016}-\\\\\\\\x{2017}\\\\\\\\x{2020}-\\\\\\\\x{2027}]|[\\\\\\\\x{2030}-\\\\\\\\x{203E}]|[\\\\\\\\x{2041}-\\\\\\\\x{2053}]|[\\\\\\\\x{2055}-\\\\\\\\x{205E}]|[\\\\\\\\x{2190}-\\\\\\\\x{23FF}]|[\\\\\\\\x{2500}-\\\\\\\\x{2775}]|[\\\\\\\\x{2794}-\\\\\\\\x{2BFF}]|[\\\\\\\\x{2E00}-\\\\\\\\x{2E7F}]|[\\\\\\\\x{3001}-\\\\\\\\x{3003}]|[\\\\\\\\x{3008}-\\\\\\\\x{3030}]|[\\\\\\\\x{0300}-\\\\\\\\x{036F}]|[\\\\\\\\x{1DC0}-\\\\\\\\x{1DFF}]|[\\\\\\\\x{20D0}-\\\\\\\\x{20FF}]|[\\\\\\\\x{FE00}-\\\\\\\\x{FE0F}]|[\\\\\\\\x{FE20}-\\\\\\\\x{FE2F}]|[\\\\\\\\x{E0100}-\\\\\\\\x{E01EF}]))++(?![\\\\\\\\s)\\\\\\\\]},;:]|\\\\\\\\z)\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"keyword.operator.custom.postfix.dot.swift\\\"}]}},\\\"match\\\":\\\"\\\\\\\\G(?<!^|[\\\\\\\\s(\\\\\\\\[{,;:])\\\\\\\\.((?!(//|/\\\\\\\\*|\\\\\\\\*/))(\\\\\\\\.|[/=\\\\\\\\-+!*%<>&|^~?]|[\\\\\\\\x{00A1}-\\\\\\\\x{00A7}]|[\\\\\\\\x{00A9}\\\\\\\\x{00AB}]|[\\\\\\\\x{00AC}\\\\\\\\x{00AE}]|[\\\\\\\\x{00B0}-\\\\\\\\x{00B1}\\\\\\\\x{00B6}\\\\\\\\x{00BB}\\\\\\\\x{00BF}\\\\\\\\x{00D7}\\\\\\\\x{00F7}]|[\\\\\\\\x{2016}-\\\\\\\\x{2017}\\\\\\\\x{2020}-\\\\\\\\x{2027}]|[\\\\\\\\x{2030}-\\\\\\\\x{203E}]|[\\\\\\\\x{2041}-\\\\\\\\x{2053}]|[\\\\\\\\x{2055}-\\\\\\\\x{205E}]|[\\\\\\\\x{2190}-\\\\\\\\x{23FF}]|[\\\\\\\\x{2500}-\\\\\\\\x{2775}]|[\\\\\\\\x{2794}-\\\\\\\\x{2BFF}]|[\\\\\\\\x{2E00}-\\\\\\\\x{2E7F}]|[\\\\\\\\x{3001}-\\\\\\\\x{3003}]|[\\\\\\\\x{3008}-\\\\\\\\x{3030}]|[\\\\\\\\x{0300}-\\\\\\\\x{036F}]|[\\\\\\\\x{1DC0}-\\\\\\\\x{1DFF}]|[\\\\\\\\x{20D0}-\\\\\\\\x{20FF}]|[\\\\\\\\x{FE00}-\\\\\\\\x{FE0F}]|[\\\\\\\\x{FE20}-\\\\\\\\x{FE2F}]|[\\\\\\\\x{E0100}-\\\\\\\\x{E01EF}]))++(?=[\\\\\\\\s)\\\\\\\\]},;:]|\\\\\\\\z)\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G\\\\\\\\.\\\\\\\\.[.<]$\\\",\\\"name\\\":\\\"keyword.operator.range.swift\\\"},{\\\"match\\\":\\\".+\\\",\\\"name\\\":\\\"keyword.operator.custom.infix.dot.swift\\\"}]}},\\\"match\\\":\\\"\\\\\\\\G\\\\\\\\.((?!(//|/\\\\\\\\*|\\\\\\\\*/))(\\\\\\\\.|[/=\\\\\\\\-+!*%<>&|^~?]|[\\\\\\\\x{00A1}-\\\\\\\\x{00A7}]|[\\\\\\\\x{00A9}\\\\\\\\x{00AB}]|[\\\\\\\\x{00AC}\\\\\\\\x{00AE}]|[\\\\\\\\x{00B0}-\\\\\\\\x{00B1}\\\\\\\\x{00B6}\\\\\\\\x{00BB}\\\\\\\\x{00BF}\\\\\\\\x{00D7}\\\\\\\\x{00F7}]|[\\\\\\\\x{2016}-\\\\\\\\x{2017}\\\\\\\\x{2020}-\\\\\\\\x{2027}]|[\\\\\\\\x{2030}-\\\\\\\\x{203E}]|[\\\\\\\\x{2041}-\\\\\\\\x{2053}]|[\\\\\\\\x{2055}-\\\\\\\\x{205E}]|[\\\\\\\\x{2190}-\\\\\\\\x{23FF}]|[\\\\\\\\x{2500}-\\\\\\\\x{2775}]|[\\\\\\\\x{2794}-\\\\\\\\x{2BFF}]|[\\\\\\\\x{2E00}-\\\\\\\\x{2E7F}]|[\\\\\\\\x{3001}-\\\\\\\\x{3003}]|[\\\\\\\\x{3008}-\\\\\\\\x{3030}]|[\\\\\\\\x{0300}-\\\\\\\\x{036F}]|[\\\\\\\\x{1DC0}-\\\\\\\\x{1DFF}]|[\\\\\\\\x{20D0}-\\\\\\\\x{20FF}]|[\\\\\\\\x{FE00}-\\\\\\\\x{FE0F}]|[\\\\\\\\x{FE20}-\\\\\\\\x{FE2F}]|[\\\\\\\\x{E0100}-\\\\\\\\x{E01EF}]))++\\\"}]},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"keyword.operator.ternary.swift\\\"}]},\\\"root\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#compiler-control\\\"},{\\\"include\\\":\\\"#declarations\\\"},{\\\"include\\\":\\\"#expressions\\\"}]}},\\\"scopeName\\\":\\\"source.swift\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"SystemVerilog\\\",\\\"fileTypes\\\":[\\\"v\\\",\\\"vh\\\",\\\"sv\\\",\\\"svh\\\"],\\\"name\\\":\\\"system-verilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#typedef-enum-struct-union\\\"},{\\\"include\\\":\\\"#typedef\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#tables\\\"},{\\\"include\\\":\\\"#function-task\\\"},{\\\"include\\\":\\\"#module-declaration\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#enum-struct-union\\\"},{\\\"include\\\":\\\"#sequence\\\"},{\\\"include\\\":\\\"#all-types\\\"},{\\\"include\\\":\\\"#module-parameters\\\"},{\\\"include\\\":\\\"#module-no-parameters\\\"},{\\\"include\\\":\\\"#port-net-parameter\\\"},{\\\"include\\\":\\\"#system-tf\\\"},{\\\"include\\\":\\\"#assertion\\\"},{\\\"include\\\":\\\"#bind-directive\\\"},{\\\"include\\\":\\\"#cast-operator\\\"},{\\\"include\\\":\\\"#storage-scope\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#imports\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#selects\\\"}],\\\"repository\\\":{\\\"all-types\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#built-ins\\\"},{\\\"include\\\":\\\"#modifiers\\\"}]},\\\"assertion\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.goto-label.php\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.sva.systemverilog\\\"}},\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(:)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(assert|assume|cover|restrict)\\\\\\\\b\\\"},\\\"attributes\\\":{\\\"begin\\\":\\\"(?<!@[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]?)\\\\\\\\(\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.attribute.rounds.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.attribute.rounds.end\\\"}},\\\"name\\\":\\\"meta.attribute.systemverilog\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.systemverilog\\\"}},\\\"match\\\":\\\"([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(=)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*)?\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"}]},\\\"base-grammar\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#all-types\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.interface.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+[a-zA-Z_][a-zA-Z0-9_,= \\\\\\\\t\\\\\\\\n]*\\\"},{\\\"include\\\":\\\"#storage-scope\\\"}]},\\\"bind-directive\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.module.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(bind)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+([a-zA-Z_][a-zA-Z0-9_$\\\\\\\\.]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.definition.systemverilog\\\"},\\\"built-ins\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(bit|logic|reg)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.vector.systemverilog\\\"},{\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(byte|shortint|int|longint|integer|time|genvar)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.atom.systemverilog\\\"},{\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(shortreal|real|realtime)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.notint.systemverilog\\\"},{\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.net.systemverilog\\\"},{\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(genvar|var|void|signed|unsigned|string|const|process)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.built-in.systemverilog\\\"},{\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(uvm_(?:root|transaction|component|monitor|driver|test|env|object|agent|sequence_base|sequence_item|sequence_state|sequencer|sequencer_base|sequence|component_registry|analysis_imp|analysis_port|analysis_export|config_db|active_passive_enum|phase|verbosity|tlm_analysis_fifo|tlm_fifo|report_server|objection|recorder|domain|reg_field|reg_block|reg|bitstream_t|radix_enum|printer|packer|comparer|scope_stack))\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.uvm.systemverilog\\\"}]},\\\"cast-operator\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#built-ins\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z0-9_$]*\\\",\\\"name\\\":\\\"storage.type.user-defined.systemverilog\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.cast.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*([0-9]+|[a-zA-Z_][a-zA-Z0-9_$]*)(')(?=\\\\\\\\()\\\",\\\"name\\\":\\\"meta.cast.systemverilog\\\"},\\\"class-declaration\\\":{\\\"begin\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(virtual[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+)?(class)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(static|automatic))?[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(extends|implements)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.class.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.systemverilog\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.systemverilog\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.type.class.systemverilog\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.class.end.systemverilog\\\"}},\\\"name\\\":\\\"meta.class.systemverilog\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+\\\\\\\\b(extends|implements)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*,[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*([a-zA-Z_][a-zA-Z0-9_$:]*))*\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.userdefined.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.param.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(#)\\\\\\\\(\\\",\\\"name\\\":\\\"meta.typedef.class.systemverilog\\\"},{\\\"include\\\":\\\"#port-net-parameter\\\"},{\\\"include\\\":\\\"#base-grammar\\\"},{\\\"include\\\":\\\"#module-binding\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.systemverilog\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.systemverilog\\\"}},\\\"name\\\":\\\"comment.block.systemverilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fixme-todo\\\"}]},{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.systemverilog\\\"}},\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.systemverilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fixme-todo\\\"}]}]},\\\"compiler-directives\\\":{\\\"name\\\":\\\"meta.preprocessor.systemverilog\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.directive.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.regexp.systemverilog\\\"}},\\\"match\\\":\\\"(`)(else|endif|endcelldefine|celldefine|nounconnected_drive|resetall|undefineall|end_keywords|__FILE__|__LINE__)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.directive.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.regexp.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.constant.preprocessor.systemverilog\\\"}},\\\"match\\\":\\\"(`)(ifdef|ifndef|elsif|define|undef|pragma)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.directive.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.regexp.systemverilog\\\"}},\\\"match\\\":\\\"(`)(include|timescale|default_nettype|unconnected_drive|line|begin_keywords)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"(`)(protected)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.directive.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.regexp.systemverilog\\\"}},\\\"end\\\":\\\"(`)(endprotected)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.directive.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.regexp.systemverilog\\\"}},\\\"name\\\":\\\"meta.crypto.systemverilog\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.directive.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.constant.preprocessor.systemverilog\\\"}},\\\"match\\\":\\\"(`)([a-zA-Z_][a-zA-Z0-9_$]*)\\\\\\\\b\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\b[1-9][0-9_]*)?'([sS]?[bB][ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*[0-1xXzZ?][0-1_xXzZ?]*|[sS]?[oO][ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*[0-7xXzZ?][0-7_xXzZ?]*|[sS]?[dD][ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*[0-9xXzZ?][0-9_xXzZ?]*|[sS]?[hH][ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*[0-9a-fA-FxXzZ?][0-9a-fA-F_xXzZ?]*)((e|E)(\\\\\\\\+|-)?[0-9]+)?(?!'|\\\\\\\\w)\\\",\\\"name\\\":\\\"constant.numeric.systemverilog\\\"},{\\\"match\\\":\\\"'[01xXzZ]\\\",\\\"name\\\":\\\"constant.numeric.bit.systemverilog\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:\\\\\\\\d[\\\\\\\\d_\\\\\\\\.]*(?<!\\\\\\\\.)(?:e|E)(?:\\\\\\\\+|-)?[0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.exp.systemverilog\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:\\\\\\\\d[\\\\\\\\d_\\\\\\\\.]*(?!(?:[\\\\\\\\d\\\\\\\\.]|[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(?:e|E|fs|ps|ns|us|ms|s))))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.systemverilog\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:\\\\\\\\d[\\\\\\\\d\\\\\\\\.]*[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(?:fs|ps|ns|us|ms|s))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.time.systemverilog\\\"},{\\\"include\\\":\\\"#compiler-directives\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:this|super|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.systemverilog\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Z][A-Z0-9_]*)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.net.systemverilog\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)([A-Z0-9_]+)(?!\\\\\\\\.)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.parameter.uppercase.systemverilog\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"}]},\\\"enum-struct-union\\\":{\\\"begin\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(enum|struct|union(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+tagged)?|class|interface[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+class)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(?!packed|signed|unsigned)([a-zA-Z_][a-zA-Z0-9_$]*)?(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(\\\\\\\\[[a-zA-Z0-9_:$\\\\\\\\.\\\\\\\\-\\\\\\\\+\\\\\\\\*/%`' \\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\)]*\\\\\\\\])?))?(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(packed))?(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(signed|unsigned))?(?=[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(?:{|$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#built-ins\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#selects\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.systemverilog\\\"},\\\"5\\\":{\\\"name\\\":\\\"storage.modifier.systemverilog\\\"}},\\\"end\\\":\\\"(?<=})[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|(?<=^|[ \\\\\\\\t\\\\\\\\r\\\\\\\\n])\\\\\\\\\\\\\\\\[!-~]+(?=$|[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]))(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(\\\\\\\\[[a-zA-Z0-9_:$\\\\\\\\.\\\\\\\\-\\\\\\\\+\\\\\\\\*/%`' \\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\)]*\\\\\\\\])?)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*[,;]\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#selects\\\"}]}},\\\"name\\\":\\\"meta.enum-struct-union.systemverilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#base-grammar\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"fixme-todo\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i:fixme)\\\",\\\"name\\\":\\\"invalid.broken.fixme.systemverilog\\\"},{\\\"match\\\":\\\"(?i:todo)\\\",\\\"name\\\":\\\"invalid.unimplemented.todo.systemverilog\\\"}]},\\\"function-task\\\":{\\\"begin\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(?:\\\\\\\\b(virtual)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+)?(?:\\\\\\\\b(function|task)\\\\\\\\b)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+\\\\\\\\b(static|automatic)\\\\\\\\b)?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.systemverilog\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.function.end.systemverilog\\\"}},\\\"name\\\":\\\"meta.function.systemverilog\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.scope.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.scope.systemverilog\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#built-ins\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z0-9_$]*\\\",\\\"name\\\":\\\"storage.type.user-defined.systemverilog\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#modifiers\\\"}]},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#selects\\\"}]},\\\"6\\\":{\\\"name\\\":\\\"entity.name.function.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(?:\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::))?([a-zA-Z_][a-zA-Z0-9_$]*\\\\\\\\b[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+)?(?:\\\\\\\\b(signed|unsigned)\\\\\\\\b[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*)?(?:(\\\\\\\\[[a-zA-Z0-9_:$\\\\\\\\.\\\\\\\\-\\\\\\\\+\\\\\\\\*/%`' \\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\)]*\\\\\\\\])[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*)?(?:\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\\\\\b[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*)(?=\\\\\\\\(|;)\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#port-net-parameter\\\"},{\\\"include\\\":\\\"#base-grammar\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"functions\\\":{\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(?!while|for|if|iff|else|case|casex|casez)([a-zA-Z_][a-zA-Z0-9_$]*)(?=[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.systemverilog\\\"},\\\"identifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[a-zA-Z_][a-zA-Z0-9_$]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.identifier.systemverilog\\\"},{\\\"match\\\":\\\"(?<=^|[ \\\\\\\\t\\\\\\\\r\\\\\\\\n])\\\\\\\\\\\\\\\\[!-~]+(?=$|[ \\\\\\\\t\\\\\\\\r\\\\\\\\n])\\\",\\\"name\\\":\\\"string.regexp.identifier.systemverilog\\\"}]},\\\"imports\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.type.scope.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.scope.systemverilog\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(import|export)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*|\\\\\\\\*)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(::)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|\\\\\\\\*)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(,|;)\\\",\\\"name\\\":\\\"meta.import.systemverilog\\\"},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(edge|negedge|posedge|cell|config|defparam|design|disable|endgenerate|endspecify|event|generate|ifnone|incdir|instance|liblist|library|noshowcancelled|pulsestyle_onevent|pulsestyle_ondetect|scalared|showcancelled|specify|specparam|use|vectored)\\\\\\\\b\\\"},{\\\"include\\\":\\\"#sv-control\\\"},{\\\"include\\\":\\\"#sv-control-begin\\\"},{\\\"include\\\":\\\"#sv-control-end\\\"},{\\\"include\\\":\\\"#sv-definition\\\"},{\\\"include\\\":\\\"#sv-cover-cross\\\"},{\\\"include\\\":\\\"#sv-std\\\"},{\\\"include\\\":\\\"#sv-option\\\"},{\\\"include\\\":\\\"#sv-local\\\"},{\\\"include\\\":\\\"#sv-rand\\\"}]},\\\"modifiers\\\":{\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(?:(?:un)?signed|packed|small|medium|large|supply[01]|strong[01]|pull[01]|weak[01]|highz[01])\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.systemverilog\\\"},\\\"module-binding\\\":{\\\"begin\\\":\\\"\\\\\\\\.([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.port.systemverilog\\\"}},\\\"end\\\":\\\"\\\\\\\\),?\\\",\\\"name\\\":\\\"meta.port.binding.systemverilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#storage-scope\\\"},{\\\"include\\\":\\\"#cast-operator\\\"},{\\\"include\\\":\\\"#system-tf\\\"},{\\\"match\\\":\\\"\\\\\\\\bvirtual\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.systemverilog\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"module-declaration\\\":{\\\"begin\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b((?:macro)?module|interface|program|package|modport)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(?:(static|automatic)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+)?([a-zA-Z_][a-zA-Z0-9_$]*)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.module.systemverilog\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.module.end.systemverilog\\\"}},\\\"name\\\":\\\"meta.module.systemverilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#port-net-parameter\\\"},{\\\"include\\\":\\\"#imports\\\"},{\\\"include\\\":\\\"#base-grammar\\\"},{\\\"include\\\":\\\"#system-tf\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"module-no-parameters\\\":{\\\"begin\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(?:(bind|pullup|pulldown)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(?:([a-zA-Z_][a-zA-Z0-9_$\\\\\\\\.]*)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+)?)?((?:\\\\\\\\b(?:and|nand|or|nor|xor|xnor|buf|not|bufif[01]|notif[01]|r?[npc]mos|r?tran|r?tranif[01])\\\\\\\\b|[a-zA-Z_][a-zA-Z0-9_$]*))[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(?!intersect|and|or|throughout|within)([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(\\\\\\\\[[a-zA-Z0-9_:$\\\\\\\\.\\\\\\\\-\\\\\\\\+\\\\\\\\*/%`' \\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\)]*\\\\\\\\])?)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(?=\\\\\\\\(|$)(?!;)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.module.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.module.systemverilog\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.module.systemverilog\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#selects\\\"}]}},\\\"end\\\":\\\"\\\\\\\\)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(;))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.module.instantiation.end.systemverilog\\\"}},\\\"name\\\":\\\"meta.module.no_parameters.systemverilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#module-binding\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#port-net-parameter\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\\\\\b(?=[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(\\\\\\\\(|$))\\\",\\\"name\\\":\\\"variable.other.module.systemverilog\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"module-parameters\\\":{\\\"begin\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(?:(bind)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+([a-zA-Z_][a-zA-Z0-9_$\\\\\\\\.]*)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+)?([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(?!intersect|and|or|throughout|within)(?=#[^#])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.module.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.module.systemverilog\\\"}},\\\"end\\\":\\\"\\\\\\\\)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(;))?\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.module.instantiation.end.systemverilog\\\"}},\\\"name\\\":\\\"meta.module.parameters.systemverilog\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\\\\\b(?=[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\()\\\",\\\"name\\\":\\\"variable.other.module.systemverilog\\\"},{\\\"include\\\":\\\"#module-binding\\\"},{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#port-net-parameter\\\"},{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\\\\\b(?=[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*$)\\\",\\\"name\\\":\\\"variable.other.module.systemverilog\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:dist|inside|with|intersect|and|or|throughout|within|first_match)\\\\\\\\b|:=|:/|\\\\\\\\|->|\\\\\\\\|=>|->>|\\\\\\\\*>|#-#|#=#|&&&\\\",\\\"name\\\":\\\"keyword.operator.logical.systemverilog\\\"},{\\\"match\\\":\\\"@|##|#|->|<->\\\",\\\"name\\\":\\\"keyword.operator.channel.systemverilog\\\"},{\\\"match\\\":\\\"\\\\\\\\+=|-=|/=|\\\\\\\\*=|%=|&=|\\\\\\\\|=|\\\\\\\\^=|>>>=|>>=|<<<=|<<=|<=|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.systemverilog\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.increment.systemverilog\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"keyword.operator.decrement.systemverilog\\\"},{\\\"match\\\":\\\"\\\\\\\\+|-|\\\\\\\\*\\\\\\\\*|\\\\\\\\*|/|%\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.systemverilog\\\"},{\\\"match\\\":\\\"!|&&|\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.systemverilog\\\"},{\\\"match\\\":\\\"<<<|<<|>>>|>>\\\",\\\"name\\\":\\\"keyword.operator.bitwise.shift.systemverilog\\\"},{\\\"match\\\":\\\"~&|~\\\\\\\\||~|\\\\\\\\^~|~\\\\\\\\^|&|\\\\\\\\||\\\\\\\\^|{|'{|}|:|\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.bitwise.systemverilog\\\"},{\\\"match\\\":\\\"<=|<|>=|>|==\\\\\\\\?|!=\\\\\\\\?|===|!==|==|!=\\\",\\\"name\\\":\\\"keyword.operator.comparison.systemverilog\\\"}]},\\\"parameters\\\":{\\\"begin\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(#)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.channel.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parameters.begin\\\"}},\\\"end\\\":\\\"(\\\\\\\\))[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(?=;|\\\\\\\\(|[a-zA-Z_]|\\\\\\\\\\\\\\\\|$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parameters.end\\\"}},\\\"name\\\":\\\"meta.parameters.systemverilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#port-net-parameter\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#system-tf\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"match\\\":\\\"\\\\\\\\bvirtual\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.systemverilog\\\"},{\\\"include\\\":\\\"#module-binding\\\"}]},\\\"port-net-parameter\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.direction.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.net.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.type.scope.systemverilog\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.scope.systemverilog\\\"},\\\"5\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#built-ins\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z0-9_$]*\\\",\\\"name\\\":\\\"storage.type.user-defined.systemverilog\\\"}]},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#modifiers\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#selects\\\"}]},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"9\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#selects\\\"}]}},\\\"match\\\":\\\",?[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(?:\\\\\\\\b(output|input|inout|ref)\\\\\\\\b[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*)?(?:\\\\\\\\b(localparam|parameter|var|supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\\\\\\\\b[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*)?(?:\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::))?(?:([a-zA-Z_][a-zA-Z0-9_$]*)\\\\\\\\b[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*)?(?:\\\\\\\\b(signed|unsigned)\\\\\\\\b[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*)?(?:(\\\\\\\\[[a-zA-Z0-9_:$\\\\\\\\.\\\\\\\\-\\\\\\\\+\\\\\\\\*/%`' \\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\)]*\\\\\\\\])[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*)?(?<!(?<!#)[:&|=+\\\\\\\\-*/%?><^!~\\\\\\\\(][ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*)\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\\\\\b[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(\\\\\\\\[[a-zA-Z0-9_:$\\\\\\\\.\\\\\\\\-\\\\\\\\+\\\\\\\\*/%`' \\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\)]*\\\\\\\\])?[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(?=,|;|=|\\\\\\\\)|/|$)\\\",\\\"name\\\":\\\"meta.port-net-parameter.declaration.systemverilog\\\"}]},\\\"selects\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.slice.brackets.begin\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.slice.brackets.end\\\"}},\\\"name\\\":\\\"meta.brackets.select.systemverilog\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\$(?![a-z])\\\",\\\"name\\\":\\\"constant.language.systemverilog\\\"},{\\\"include\\\":\\\"#system-tf\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#cast-operator\\\"},{\\\"include\\\":\\\"#storage-scope\\\"},{\\\"match\\\":\\\"[a-zA-Z_][a-zA-Z0-9_$]*\\\",\\\"name\\\":\\\"variable.other.identifier.systemverilog\\\"}]},\\\"sequence\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(sequence)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.sequence.systemverilog\\\"},\\\"storage-scope\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.scope.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.scope.systemverilog\\\"}},\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::)\\\",\\\"name\\\":\\\"meta.scope.systemverilog\\\"},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"`?\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.systemverilog\\\"}},\\\"end\\\":\\\"\\\\\\\"`?\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.systemverilog\\\"}},\\\"name\\\":\\\"string.quoted.double.systemverilog\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[nt\\\\\\\\\\\\\\\\\\\\\\\"vfa]|[0-7]{3}|x[0-9a-fA-F]{2})\\\",\\\"name\\\":\\\"constant.character.escape.systemverilog\\\"},{\\\"match\\\":\\\"%(\\\\\\\\d+\\\\\\\\$)?['\\\\\\\\-+0 #]*[,;:_]?((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?(\\\\\\\\.((-?\\\\\\\\d+)|\\\\\\\\*(-?\\\\\\\\d+\\\\\\\\$)?)?)?(hh|h|ll|l|j|z|t|L)?[xXhHdDoObBcClLvVmMpPsStTuUzZeEfFgG%]\\\",\\\"name\\\":\\\"constant.character.format.placeholder.systemverilog\\\"},{\\\"match\\\":\\\"%\\\",\\\"name\\\":\\\"invalid.illegal.placeholder.systemverilog\\\"},{\\\"include\\\":\\\"#fixme-todo\\\"}]},{\\\"begin\\\":\\\"(?<=include)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.systemverilog\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.systemverilog\\\"}},\\\"name\\\":\\\"string.quoted.other.lt-gt.include.systemverilog\\\"}]},\\\"sv-control\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(initial|always|always_comb|always_ff|always_latch|final|assign|deassign|force|release|wait|forever|repeat|alias|while|for|if|iff|else|case|casex|casez|default|endcase|return|break|continue|do|foreach|clocking|coverpoint|property|bins|binsof|illegal_bins|ignore_bins|randcase|matches|solve|before|expect|cross|ref|srandom|struct|chandle|tagged|extern|throughout|timeprecision|timeunit|priority|type|union|wait_order|triggered|randsequence|context|pure|wildcard|new|forkjoin|unique|unique0|priority)\\\\\\\\b\\\"},\\\"sv-control-begin\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.label.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.section.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(begin|fork)\\\\\\\\b(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(:)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*))?\\\",\\\"name\\\":\\\"meta.item.begin.systemverilog\\\"},\\\"sv-control-end\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.label.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.section.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(end|endmodule|endinterface|endprogram|endchecker|endclass|endpackage|endconfig|endfunction|endtask|endproperty|endsequence|endgroup|endprimitive|endclocking|endgenerate|join|join_any|join_none)\\\\\\\\b(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(:)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*))?\\\",\\\"name\\\":\\\"meta.item.end.systemverilog\\\"},\\\"sv-cover-cross\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.systemverilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.other.systemverilog\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"}},\\\"match\\\":\\\"(([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(:))?[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(coverpoint|cross)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)\\\",\\\"name\\\":\\\"meta.definition.systemverilog\\\"},\\\"sv-definition\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(primitive|package|constraint|interface|covergroup|program)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+\\\\\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.definition.systemverilog\\\"},\\\"sv-local\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(const|static|protected|virtual|localparam|parameter|local)\\\\\\\\b\\\"},\\\"sv-option\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.cover.systemverilog\\\"}},\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(option)\\\\\\\\.\\\"},\\\"sv-rand\\\":{\\\"match\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(?:rand|randc)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.rand.systemverilog\\\"},\\\"sv-std\\\":{\\\"match\\\":\\\"\\\\\\\\b(std)\\\\\\\\b::\\\",\\\"name\\\":\\\"support.class.systemverilog\\\"},\\\"system-tf\\\":{\\\"match\\\":\\\"\\\\\\\\$[a-zA-Z0-9_$][a-zA-Z0-9_$]*\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.systemverilog\\\"},\\\"tables\\\":{\\\"begin\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(table)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.table.systemverilog.begin\\\"}},\\\"end\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(endtable)\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.table.systemverilog.end\\\"}},\\\"name\\\":\\\"meta.table.systemverilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"match\\\":\\\"\\\\\\\\b[01xXbBrRfFpPnN]\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.systemverilog\\\"},{\\\"match\\\":\\\"[-*?]\\\",\\\"name\\\":\\\"constant.language.systemverilog\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.language.systemverilog\\\"}},\\\"match\\\":\\\"\\\\\\\\(([01xX?]{2})\\\\\\\\)\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.definition.label.systemverilog\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]},\\\"typedef\\\":{\\\"begin\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(?:(typedef)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+)(?:([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+\\\\\\\\b(signed|unsigned)\\\\\\\\b)?(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(\\\\\\\\[[a-zA-Z0-9_:$\\\\\\\\.\\\\\\\\-\\\\\\\\+\\\\\\\\*/%`' \\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\)]*\\\\\\\\])?))?(?=[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*[a-zA-Z_\\\\\\\\\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#built-ins\\\"},{\\\"match\\\":\\\"\\\\\\\\bvirtual\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.systemverilog\\\"}]},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#modifiers\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#selects\\\"}]}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typedef.end.systemverilog\\\"}},\\\"name\\\":\\\"meta.typedef.systemverilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#identifiers\\\"},{\\\"include\\\":\\\"#selects\\\"}]},\\\"typedef-enum-struct-union\\\":{\\\"begin\\\":\\\"[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*\\\\\\\\b(typedef)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(enum|struct|union(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+tagged)?|class|interface[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+class)(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(?!packed|signed|unsigned)([a-zA-Z_][a-zA-Z0-9_$]*)?(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(\\\\\\\\[[a-zA-Z0-9_:$\\\\\\\\.\\\\\\\\-\\\\\\\\+\\\\\\\\*/%`' \\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\)]*\\\\\\\\])?))?(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(packed))?(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]+(signed|unsigned))?(?=[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(?:{|$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.systemverilog\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#built-ins\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#selects\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"storage.modifier.systemverilog\\\"},\\\"6\\\":{\\\"name\\\":\\\"storage.modifier.systemverilog\\\"}},\\\"end\\\":\\\"(?<=})[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|(?<=^|[ \\\\\\\\t\\\\\\\\r\\\\\\\\n])\\\\\\\\\\\\\\\\[!-~]+(?=$|[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]))(?:[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*(\\\\\\\\[[a-zA-Z0-9_:$\\\\\\\\.\\\\\\\\-\\\\\\\\+\\\\\\\\*/%`' \\\\\\\\t\\\\\\\\r\\\\\\\\n\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\)]*\\\\\\\\])?)[ \\\\\\\\t\\\\\\\\r\\\\\\\\n]*[,;]\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.systemverilog\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#selects\\\"}]}},\\\"name\\\":\\\"meta.typedef-enum-struct-union.systemverilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#port-net-parameter\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#base-grammar\\\"},{\\\"include\\\":\\\"#identifiers\\\"}]}},\\\"scopeName\\\":\\\"source.systemverilog\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Systemd Units\\\",\\\"name\\\":\\\"systemd\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*(InaccessableDirectories|InaccessibleDirectories|ReadOnlyDirectories|ReadWriteDirectories|Capabilities|TableId|UseDomainName|IPv6AcceptRouterAdvertisements|SysVStartPriority|StartLimitInterval|RequiresOverridable|RequisiteOverridable|PropagateReloadTo|PropagateReloadFrom|OnFailureIsolate|BindTo)\\\\\\\\s*(=)[ \\\\\\\\t]*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.deprecated\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#quotedString\\\"},{\\\"include\\\":\\\"#booleans\\\"},{\\\"include\\\":\\\"#timeSpans\\\"},{\\\"include\\\":\\\"#sizes\\\"},{\\\"include\\\":\\\"#numbers\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(Environment)\\\\\\\\s*(=)[ \\\\\\\\t]*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n\\\",\\\"name\\\":\\\"meta.config-entry.systemd\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\G|[\\\\\\\\s\\\\\\\"'])([A-Za-z0-9\\\\\\\\_]+)(=)(?=[^\\\\\\\\s\\\\\\\"'])\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#booleans\\\"},{\\\"include\\\":\\\"#numbers\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(OnCalendar)\\\\\\\\s*(=)[ \\\\\\\\t]*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n\\\",\\\"name\\\":\\\"meta.config-entry.systemd\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#calendarShorthands\\\"},{\\\"include\\\":\\\"#numbers\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(CapabilityBoundingSet|AmbientCapabilities|AddCapability|DropCapability)\\\\\\\\s*(=)[ \\\\\\\\t]*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n\\\",\\\"name\\\":\\\"meta.config-entry.systemd\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#capabilities\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(Restart)\\\\\\\\s*(=)[ \\\\\\\\t]*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n\\\",\\\"name\\\":\\\"meta.config-entry.systemd\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#restartOptions\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(Type)\\\\\\\\s*(=)[ \\\\\\\\t]*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n\\\",\\\"name\\\":\\\"meta.config-entry.systemd\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#typeOptions\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(Exec(?:Start(?:Pre|Post)?|Reload|Stop(?:Post)?))\\\\\\\\s*(=)[ \\\\\\\\t]*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n\\\",\\\"name\\\":\\\"meta.config-entry.systemd\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#executablePrefixes\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#quotedString\\\"},{\\\"include\\\":\\\"#booleans\\\"},{\\\"include\\\":\\\"#numbers\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*([\\\\\\\\w\\\\\\\\-\\\\\\\\.]+)\\\\\\\\s*(=)[ \\\\\\\\t]*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n\\\",\\\"name\\\":\\\"meta.config-entry.systemd\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#quotedString\\\"},{\\\"include\\\":\\\"#booleans\\\"},{\\\"include\\\":\\\"#timeSpans\\\"},{\\\"include\\\":\\\"#sizes\\\"},{\\\"include\\\":\\\"#numbers\\\"}]},{\\\"include\\\":\\\"#sections\\\"}],\\\"repository\\\":{\\\"booleans\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?<![-\\\\\\\\/\\\\\\\\.])(true|false|on|off|yes|no)(?![-\\\\\\\\/\\\\\\\\.])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language\\\"}]},\\\"calendarShorthands\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:minute|hour|dai|month|week|quarter|semiannual)ly\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language\\\"}]},\\\"capabilities\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:CAP_(?:AUDIT_CONTROL|AUDIT_READ|AUDIT_WRITE|BLOCK_SUSPEND|BPF|CHECKPOINT_RESTORE|CHOWN|DAC_OVERRIDE|DAC_READ_SEARCH|FOWNER|FSETID|IPC_LOCK|IPC_OWNER|KILL|LEASE|LINUX_IMMUTABLE|MAC_ADMIN|MAC_OVERRIDE|MKNOD|NET_ADMIN|NET_BIND_SERVICE|NET_BROADCAST|NET_RAW|PERFMON|SETFCAP|SETGID|SETPCAP|SETUID|SYS_ADMIN|SYS_BOOT|SYS_CHROOT|SYS_MODULE|SYS_NICE|SYS_PACCT|SYS_PTRACE|SYS_RAWIO|SYS_RESOURCE|SYS_TIME|SYS_TTY_CONFIG|SYSLOG|WAKE_ALARM))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.systemd\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\s*[#;].*\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign\\\"}]},\\\"executablePrefixes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G([@\\\\\\\\-\\\\\\\\:]+(?:\\\\\\\\+|\\\\\\\\!\\\\\\\\!?)?|(?:\\\\\\\\+|\\\\\\\\!\\\\\\\\!?)[@\\\\\\\\-\\\\\\\\:]*)\\\",\\\"name\\\":\\\"keyword.operator.prefix.systemd\\\"}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\s|=)\\\\\\\\d+(?:\\\\\\\\.\\\\\\\\d+)?(?=[\\\\\\\\s:]|$)\\\",\\\"name\\\":\\\"constant.numeric\\\"}]},\\\"quotedString\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\G|\\\\\\\\s)'\\\",\\\"end\\\":\\\"['\\\\\\\\n]\\\",\\\"name\\\":\\\"string.quoted.single\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[abfnrtvs\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\n]|x[0-9A-Fa-f]{2}|[0-8]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\G|\\\\\\\\s)\\\\\\\"\\\",\\\"end\\\":\\\"[\\\\\\\"\\\\\\\\n]\\\",\\\"name\\\":\\\"string.quoted.double\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[abfnrtvs\\\\\\\\\\\\\\\\\\\\\\\"'\\\\\\\\n]|x[0-9A-Fa-f]{2}|[0-8]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape\\\"}]}]},\\\"restartOptions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(no|always|on\\\\\\\\-(?:success|failure|abnormal|abort|watchdog))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language\\\"}]},\\\"sections\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\s*\\\\\\\\[(Address|Automount|BFIFO|BandMultiQueueing|BareUDP|BatmanAdvanced|Bond|Bridge|BridgeFDB|BridgeMDB|BridgeVLAN|CAKE|CAN|ClassfulMultiQueueing|Container|Content|ControlledDelay|Coredump|D-BUS Service|DHCP|DHCPPrefixDelegation|DHCPServer|DHCPServerStaticLease|DHCPv4|DHCPv6|DHCPv6PrefixDelegation|DeficitRoundRobinScheduler|DeficitRoundRobinSchedulerClass|Distribution|EnhancedTransmissionSelection|Exec|FairQueueing|FairQueueingControlledDelay|Feature|Files|FlowQueuePIE|FooOverUDP|GENEVE|GenericRandomEarlyDetection|HeavyHitterFilter|HierarchyTokenBucket|HierarchyTokenBucketClass|Home|IOCost|IPVLAN|IPVTAP|IPoIB|IPv6AcceptRA|IPv6AddressLabel|IPv6PREF64Prefix|IPv6Prefix|IPv6PrefixDelegation|IPv6RoutePrefix|IPv6SendRA|Image|Install|Journal|Kube|L2TP|L2TPSession|LLDP|Link|Login|MACVLAN|MACVTAP|MACsec|MACsecReceiveAssociation|MACsecReceiveChannel|MACsecTransmitAssociation|Manager|Match|Mount|Neighbor|NetDev|Network|NetworkEmulator|NextHop|OOM|Output|PFIFO|PFIFOFast|PFIFOHeadDrop|PIE|PStore|Packages|Partition|Path|Peer|Pod|QDisc|Quadlet|QuickFairQueueing|QuickFairQueueingClass|Remote|Resolve|Route|RoutingPolicyRule|SR-IOV|Scope|Service|Sleep|Socket|Source|StochasticFairBlue|StochasticFairnessQueueing|Swap|Tap|Target|Time|Timer|TokenBucketFilter|TrafficControlQueueingDiscipline|Transfer|TrivialLinkEqualizer|Tun|Tunnel|UKI|Unit|Upload|VLAN|VRF|VXCAN|VXLAN|Volume|WLAN|WireGuard|WireGuardPeer|Xfrm)\\\\\\\\]\\\",\\\"name\\\":\\\"entity.name.section\\\"},{\\\"match\\\":\\\"\\\\\\\\s*\\\\\\\\[[\\\\\\\\w-]+\\\\\\\\]\\\",\\\"name\\\":\\\"entity.name.unknown-section\\\"}]},\\\"sizes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\s|=)\\\\\\\\d+(?:\\\\\\\\.\\\\\\\\d+)?[KMGT](?=[\\\\\\\\s:]|$)\\\",\\\"name\\\":\\\"constant.numeric\\\"},{\\\"match\\\":\\\"(?<==)infinity(?=[\\\\\\\\s:]|$)\\\",\\\"name\\\":\\\"constant.numeric\\\"}]},\\\"timeSpans\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:\\\\\\\\d+(?:[u\u03BC]s(?:ec)?|ms(?:ec)?|s(?:ec|econds?)?|m(?:in|inutes?)?|h(?:r|ours?)?|d(?:ays?)?|w(?:eeks)?|M|months?|y(?:ears?)?)){1,}\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric\\\"}]},\\\"typeOptions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:simple|exec|forking|oneshot|dbus|notify(?:-reload)?|idle|unicast|local|broadcast|anycast|multicast|blackhole|unreachable|prohibit|throw|nat|xresolve|blackhole|unreachable|prohibit|ad-hoc|station|ap(?:-vlan)?|wds|monitor|mesh-point|p2p-(?:client|go|device)|ocb|nan)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.systemd\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)([A-Za-z0-9\\\\\\\\_]+)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.systemd\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.systemd\\\"}},\\\"match\\\":\\\"(\\\\\\\\$\\\\\\\\{)([A-Za-z0-9\\\\\\\\_]+)(\\\\\\\\})\\\"},{\\\"match\\\":\\\"%%\\\",\\\"name\\\":\\\"constant.other.placeholder\\\"},{\\\"match\\\":\\\"%[aAbBCEfgGhHiIjJlLmMnNopPsStTuUvVwW]\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.placeholder\\\"}]}},\\\"scopeName\\\":\\\"source.systemd\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"TalonScript\\\",\\\"name\\\":\\\"talonscript\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#body-header\\\"},{\\\"include\\\":\\\"#header\\\"},{\\\"include\\\":\\\"#body-noheader\\\"},{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#settings\\\"}],\\\"repository\\\":{\\\"action\\\":{\\\"begin\\\":\\\"([a-zA-Z0-9._]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.talon\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.talon\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.talon\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.talon\\\"}},\\\"name\\\":\\\"variable.parameter.talon\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#action\\\"},{\\\"include\\\":\\\"#qstring-long\\\"},{\\\"include\\\":\\\"#qstring\\\"},{\\\"include\\\":\\\"#argsep\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#varname\\\"}]},\\\"action-gamepad\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.talon\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.talon\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#key-mods\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.key.talon\\\"}},\\\"match\\\":\\\"(deck|gamepad|action|face|parrot)(\\\\\\\\()(.*)(\\\\\\\\))\\\",\\\"name\\\":\\\"entity.name.function.talon\\\"},\\\"action-key\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.talon\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.talon\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#key-prefixes\\\"},{\\\"include\\\":\\\"#key-mods\\\"},{\\\"include\\\":\\\"#keystring\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.key.talon\\\"}},\\\"match\\\":\\\"key(\\\\\\\\()(.*)(\\\\\\\\))\\\",\\\"name\\\":\\\"entity.name.function.talon\\\"},\\\"argsep\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.talon\\\"},\\\"assignment\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.talon\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.talon\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.talon\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#expression\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\S*)(\\\\\\\\s?=\\\\\\\\s?)(.*)\\\"},\\\"body-header\\\":{\\\"begin\\\":\\\"^-$\\\",\\\"end\\\":\\\"(?=not)possible\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#body-noheader\\\"}]},\\\"body-noheader\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#other-rule-definition\\\"},{\\\"include\\\":\\\"#speech-rule-definition\\\"}]},\\\"capture\\\":{\\\"match\\\":\\\"(\\\\\\\\<[a-zA-Z0-9._]+\\\\\\\\>)\\\",\\\"name\\\":\\\"variable.parameter.talon\\\"},\\\"comment\\\":{\\\"match\\\":\\\"(\\\\\\\\s*#.*)$\\\",\\\"name\\\":\\\"comment.line.number-sign.talon\\\"},\\\"context\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.talon\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(and |or )\\\",\\\"name\\\":\\\"keyword.operator.talon\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.talon\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#regexp\\\"}]}},\\\"match\\\":\\\"(.*): (.*)\\\"},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#qstring-long\\\"},{\\\"include\\\":\\\"#action-key\\\"},{\\\"include\\\":\\\"#action\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#qstring\\\"},{\\\"include\\\":\\\"#varname\\\"}]},\\\"fstring\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#action\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#varname\\\"},{\\\"include\\\":\\\"#qstring\\\"}]}},\\\"match\\\":\\\"{(.+?)}\\\",\\\"name\\\":\\\"constant.character.format.placeholder.talon\\\"},\\\"header\\\":{\\\"begin\\\":\\\"(?=^app:|title:|os:|tag:|list:|language:)\\\",\\\"end\\\":\\\"(?=^-$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#context\\\"}]},\\\"key-mods\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.talon\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.talon\\\"}},\\\"match\\\":\\\"(:)(up|down|change|repeat|start|stop|\\\\\\\\d+)\\\",\\\"name\\\":\\\"keyword.operator.talon\\\"},\\\"key-prefixes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.talon\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.talon\\\"}},\\\"match\\\":\\\"(ctrl|shift|cmd|alt|win|super)(-)\\\"},\\\"keystring\\\":{\\\"begin\\\":\\\"(\\\\\\\"|')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.talon\\\"}},\\\"end\\\":\\\"(\\\\\\\\1)|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.talon\\\"}},\\\"name\\\":\\\"string.quoted.double.talon\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-body\\\"},{\\\"include\\\":\\\"#key-mods\\\"},{\\\"include\\\":\\\"#key-prefixes\\\"}]},\\\"list\\\":{\\\"match\\\":\\\"({[a-zA-Z0-9._]+?})\\\",\\\"name\\\":\\\"string.interpolated.talon\\\"},\\\"number\\\":{\\\"match\\\":\\\"(?<=\\\\\\\\b)\\\\\\\\d+(\\\\\\\\.\\\\\\\\d+)?\\\",\\\"name\\\":\\\"constant.numeric.talon\\\"},\\\"operator\\\":{\\\"match\\\":\\\"\\\\\\\\s(\\\\\\\\+|-|\\\\\\\\*|/|or)\\\\\\\\s\\\",\\\"name\\\":\\\"keyword.operator.talon\\\"},\\\"other-rule-definition\\\":{\\\"begin\\\":\\\"^([a-z]+\\\\\\\\(.*[^\\\\\\\\-]\\\\\\\\)|[a-z]+\\\\\\\\(.*--\\\\\\\\)|[a-z]+\\\\\\\\(-\\\\\\\\)|[a-z]+\\\\\\\\(\\\\\\\\)):\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.talon\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#action-key\\\"},{\\\"include\\\":\\\"#action-gamepad\\\"},{\\\"include\\\":\\\"#rule-specials\\\"}]}},\\\"end\\\":\\\"(?=^[^\\\\\\\\s#])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]},\\\"qstring\\\":{\\\"begin\\\":\\\"(\\\\\\\"|')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.talon\\\"}},\\\"end\\\":\\\"(\\\\\\\\1)|$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.talon\\\"}},\\\"name\\\":\\\"string.quoted.double.talon\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-body\\\"}]},\\\"qstring-long\\\":{\\\"begin\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\"|''')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.talon\\\"}},\\\"end\\\":\\\"(\\\\\\\\1)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.talon\\\"}},\\\"name\\\":\\\"string.quoted.double.talon\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-body\\\"}]},\\\"regexp\\\":{\\\"begin\\\":\\\"(/)\\\",\\\"end\\\":\\\"(/)\\\",\\\"name\\\":\\\"string.regexp.talon\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"support.other.match.any.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\",\\\"name\\\":\\\"support.other.match.end.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\^\\\",\\\"name\\\":\\\"support.other.match.begin.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\.|\\\\\\\\\\\\\\\\\\\\\\\\*|\\\\\\\\\\\\\\\\\\\\\\\\^|\\\\\\\\\\\\\\\\\\\\\\\\$|\\\\\\\\\\\\\\\\\\\\\\\\+|\\\\\\\\\\\\\\\\\\\\\\\\?\\\",\\\"name\\\":\\\"constant.character.escape.talon\\\"},{\\\"match\\\":\\\"\\\\\\\\[(\\\\\\\\\\\\\\\\\\\\\\\\]|[^\\\\\\\\]])*\\\\\\\\]\\\",\\\"name\\\":\\\"constant.other.set.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\*|\\\\\\\\+|\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"}]},\\\"rule-specials\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.talon\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.talon\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.talon\\\"}},\\\"match\\\":\\\"(settings|tag)(\\\\\\\\()(\\\\\\\\))\\\"},\\\"speech-rule-definition\\\":{\\\"begin\\\":\\\"^(.*?):\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.talon\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"^\\\\\\\\^\\\",\\\"name\\\":\\\"string.regexp.talon\\\"},{\\\"match\\\":\\\"\\\\\\\\$$\\\",\\\"name\\\":\\\"string.regexp.talon\\\"},{\\\"match\\\":\\\"\\\\\\\\(\\\",\\\"name\\\":\\\"punctuation.definition.parameters.begin.talon\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"punctuation.definition.parameters.end.talon\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"punctuation.separator.talon\\\"},{\\\"include\\\":\\\"#capture\\\"},{\\\"include\\\":\\\"#list\\\"}]}},\\\"end\\\":\\\"(?=^[^\\\\\\\\s#])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]},\\\"statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#qstring-long\\\"},{\\\"include\\\":\\\"#action-key\\\"},{\\\"include\\\":\\\"#action\\\"},{\\\"include\\\":\\\"#qstring\\\"},{\\\"include\\\":\\\"#assignment\\\"}]},\\\"string-body\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"{{|}}\\\",\\\"name\\\":\\\"string.quoted.double.talon\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|\\\\\\\\\\\\\\\\n|\\\\\\\\\\\\\\\\t|\\\\\\\\\\\\\\\\r|\\\\\\\\\\\\\\\\\\\\\\\"|\\\\\\\\\\\\\\\\'\\\",\\\"name\\\":\\\"constant.character.escape.python\\\"},{\\\"include\\\":\\\"#fstring\\\"}]},\\\"varname\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.talon\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"_\\\",\\\"name\\\":\\\"keyword.operator.talon\\\"}]}},\\\"match\\\":\\\"([a-zA-Z0-9._])(_(list|\\\\\\\\d+))?\\\",\\\"name\\\":\\\"variable.parameter.talon\\\"}},\\\"scopeName\\\":\\\"source.talon\\\",\\\"aliases\\\":[\\\"talon\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Tasl\\\",\\\"fileTypes\\\":[\\\"tasl\\\"],\\\"name\\\":\\\"tasl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#namespace\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#edge\\\"}],\\\"repository\\\":{\\\"class\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*)(class)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tasl.class\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#key\\\"},{\\\"include\\\":\\\"#export\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"comment\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tasl\\\"}},\\\"match\\\":\\\"(#).*$\\\",\\\"name\\\":\\\"comment.line.number-sign.tasl\\\"},\\\"component\\\":{\\\"begin\\\":\\\"->\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.tasl.component\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"coproduct\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tasl.coproduct\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tasl.coproduct\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#term\\\"},{\\\"include\\\":\\\"#option\\\"}]},\\\"datatype\\\":{\\\"match\\\":\\\"[a-zA-Z][a-zA-Z0-9]*:(?:[A-Za-z0-9\\\\\\\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})+\\\",\\\"name\\\":\\\"string.regexp\\\"},\\\"edge\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*)(edge)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tasl.edge\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#key\\\"},{\\\"include\\\":\\\"#export\\\"},{\\\"match\\\":\\\"=/\\\",\\\"name\\\":\\\"punctuation.separator.tasl.edge.source\\\"},{\\\"match\\\":\\\"/=>\\\",\\\"name\\\":\\\"punctuation.separator.tasl.edge.target\\\"},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"punctuation.separator.tasl.edge\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"export\\\":{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"keyword.operator.tasl.export\\\"},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#uri\\\"},{\\\"include\\\":\\\"#product\\\"},{\\\"include\\\":\\\"#coproduct\\\"},{\\\"include\\\":\\\"#reference\\\"},{\\\"include\\\":\\\"#optional\\\"},{\\\"include\\\":\\\"#identifier\\\"}]},\\\"identifier\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable\\\"}},\\\"match\\\":\\\"([a-zA-Z][a-zA-Z0-9]*)\\\\\\\\b\\\"},\\\"key\\\":{\\\"match\\\":\\\"[a-zA-Z][a-zA-Z0-9]*:(?:[A-Za-z0-9\\\\\\\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})+\\\",\\\"name\\\":\\\"markup.bold entity.name.class\\\"},\\\"literal\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#datatype\\\"}]},\\\"namespace\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tasl.namespace\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#namespaceURI\\\"},{\\\"match\\\":\\\"[a-zA-Z][a-zA-Z0-9]*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name\\\"}]}},\\\"match\\\":\\\"(?:^\\\\\\\\s*)(namespace)\\\\\\\\b(.*)\\\"},\\\"namespaceURI\\\":{\\\"match\\\":\\\"[a-z]+:[a-zA-Z0-9-._~:\\\\\\\\/?#\\\\\\\\[\\\\\\\\]@!$&'()*+,;%=]+\\\",\\\"name\\\":\\\"markup.underline.link\\\"},\\\"option\\\":{\\\"begin\\\":\\\"<-\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.tasl.option\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"optional\\\":{\\\"begin\\\":\\\"\\\\\\\\?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"product\\\":{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tasl.product\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.tasl.product\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#term\\\"},{\\\"include\\\":\\\"#component\\\"}]},\\\"reference\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"markup.bold keyword.operator\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#key\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\*)\\\\\\\\s*(.*)\\\"},\\\"term\\\":{\\\"match\\\":\\\"[a-zA-Z][a-zA-Z0-9]*:(?:[A-Za-z0-9\\\\\\\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})+\\\",\\\"name\\\":\\\"entity.other.tasl.key\\\"},\\\"type\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*)(type)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tasl.type\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"uri\\\":{\\\"match\\\":\\\"<>\\\",\\\"name\\\":\\\"variable.other.constant\\\"}},\\\"scopeName\\\":\\\"source.tasl\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Tcl\\\",\\\"fileTypes\\\":[\\\"tcl\\\"],\\\"foldingStartMarker\\\":\\\"\\\\\\\\{\\\\\\\\s*$\\\",\\\"foldingStopMarker\\\":\\\"^\\\\\\\\s*\\\\\\\\}\\\",\\\"name\\\":\\\"tcl\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=^|;)\\\\\\\\s*((#))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.number-sign.tcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.tcl\\\"}},\\\"contentName\\\":\\\"comment.line.number-sign.tcl\\\",\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|\\\\\\\\\\\\\\\\\\\\\\\\n)\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tcl\\\"}},\\\"match\\\":\\\"(?<=^|[\\\\\\\\[{;])\\\\\\\\s*(if|while|for|catch|default|return|break|continue|switch|exit|foreach|try|throw)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.tcl\\\"}},\\\"match\\\":\\\"(?<=^|})\\\\\\\\s*(then|elseif|else)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.tcl\\\"}},\\\"match\\\":\\\"(?<=^|{)\\\\\\\\s*(proc)\\\\\\\\s+([^\\\\\\\\s]+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tcl\\\"}},\\\"match\\\":\\\"(?<=^|[\\\\\\\\[{;])\\\\\\\\s*(after|append|array|auto_execok|auto_import|auto_load|auto_mkindex|auto_mkindex_old|auto_qualify|auto_reset|bgerror|binary|cd|clock|close|concat|dde|encoding|eof|error|eval|exec|expr|fblocked|fconfigure|fcopy|file|fileevent|filename|flush|format|gets|glob|global|history|http|incr|info|interp|join|lappend|library|lindex|linsert|list|llength|load|lrange|lreplace|lsearch|lset|lsort|memory|msgcat|namespace|open|package|parray|pid|pkg::create|pkg_mkIndex|proc|puts|pwd|re_syntax|read|registry|rename|resource|scan|seek|set|socket|SafeBase|source|split|string|subst|Tcl|tcl_endOfWord|tcl_findLibrary|tcl_startOfNextWord|tcl_startOfPreviousWord|tcl_wordBreakAfter|tcl_wordBreakBefore|tcltest|tclvars|tell|time|trace|unknown|unset|update|uplevel|upvar|variable|vwait)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"(?<=^|[\\\\\\\\[{;])\\\\\\\\s*(regexp|regsub)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tcl\\\"}},\\\"comment\\\":\\\"special-case regexp/regsub keyword in order to handle the expression\\\",\\\"end\\\":\\\"[\\\\\\\\n;\\\\\\\\]]\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:.|\\\\\\\\n)\\\",\\\"name\\\":\\\"constant.character.escape.tcl\\\"},{\\\"comment\\\":\\\"switch for regexp\\\",\\\"match\\\":\\\"-\\\\\\\\w+\\\\\\\\s*\\\"},{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"--\\\\\\\\s*\\\",\\\"comment\\\":\\\"end of switches\\\",\\\"end\\\":\\\"\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"include\\\":\\\"#regexp\\\"}]},{\\\"include\\\":\\\"#escape\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#numeric\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.tcl\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.tcl\\\"}},\\\"name\\\":\\\"string.quoted.double.tcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#embedded\\\"}]}],\\\"repository\\\":{\\\"bare-string\\\":{\\\"begin\\\":\\\"(?:^|(?<=\\\\\\\\s))\\\\\\\"\\\",\\\"comment\\\":\\\"matches a single quote-enclosed word without scoping\\\",\\\"end\\\":\\\"\\\\\\\"([^\\\\\\\\s\\\\\\\\]]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.tcl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#escape\\\"},{\\\"include\\\":\\\"#variable\\\"}]},\\\"braces\\\":{\\\"begin\\\":\\\"(?:^|(?<=\\\\\\\\s))\\\\\\\\{\\\",\\\"comment\\\":\\\"matches a single brace-enclosed word\\\",\\\"end\\\":\\\"\\\\\\\\}([^\\\\\\\\s\\\\\\\\]]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.tcl\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[{}\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.escape.tcl\\\"},{\\\"include\\\":\\\"#inner-braces\\\"}]},\\\"embedded\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.tcl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.tcl\\\"}},\\\"name\\\":\\\"source.tcl.embedded\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.tcl\\\"}]},\\\"escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(\\\\\\\\d{1,3}|x[a-fA-F0-9]+|u[a-fA-F0-9]{1,4}|.|\\\\\\\\n)\\\",\\\"name\\\":\\\"constant.character.escape.tcl\\\"},\\\"inner-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"comment\\\":\\\"matches a nested brace in a brace-enclosed word\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[{}\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.escape.tcl\\\"},{\\\"include\\\":\\\"#inner-braces\\\"}]},\\\"numeric\\\":{\\\"match\\\":\\\"(?<![a-zA-Z])([+-]?([0-9]*[.])?[0-9]+f?)(?![\\\\\\\\.a-zA-Z])\\\",\\\"name\\\":\\\"constant.numeric.tcl\\\"},\\\"operator\\\":{\\\"match\\\":\\\"(?<= |\\\\\\\\d)(-|\\\\\\\\+|~|&{1,2}|\\\\\\\\|{1,2}|<{1,2}|>{1,2}|\\\\\\\\*{1,2}|!|%|\\\\\\\\/|<=|>=|={1,2}|!=|\\\\\\\\^)(?= |\\\\\\\\d)\\\",\\\"name\\\":\\\"keyword.operator.tcl\\\"},\\\"regexp\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\S)(?![\\\\\\\\n;\\\\\\\\]])\\\",\\\"comment\\\":\\\"matches a single word, named as a regexp, then swallows the rest of the command\\\",\\\"end\\\":\\\"(?=[\\\\\\\\n;\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[^ \\\\\\\\t\\\\\\\\n;])\\\",\\\"end\\\":\\\"(?=[ \\\\\\\\t\\\\\\\\n;])\\\",\\\"name\\\":\\\"string.regexp.tcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#braces\\\"},{\\\"include\\\":\\\"#bare-string\\\"},{\\\"include\\\":\\\"#escape\\\"},{\\\"include\\\":\\\"#variable\\\"}]},{\\\"begin\\\":\\\"[ \\\\\\\\t]\\\",\\\"comment\\\":\\\"swallow the rest of the command\\\",\\\"end\\\":\\\"(?=[\\\\\\\\n;\\\\\\\\]])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#embedded\\\"},{\\\"include\\\":\\\"#escape\\\"},{\\\"include\\\":\\\"#braces\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"string\\\":{\\\"applyEndPatternLast\\\":1,\\\"begin\\\":\\\"(?:^|(?<=\\\\\\\\s))(?=\\\\\\\")\\\",\\\"comment\\\":\\\"matches a single quote-enclosed word with scoping\\\",\\\"end\\\":\\\"\\\",\\\"name\\\":\\\"string.quoted.double.tcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#bare-string\\\"}]},\\\"variable\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.tcl\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)((?:[a-zA-Z0-9_]|::)+(\\\\\\\\([^\\\\\\\\)]+\\\\\\\\))?|\\\\\\\\{[^\\\\\\\\}]*\\\\\\\\})\\\",\\\"name\\\":\\\"support.function.tcl\\\"}},\\\"scopeName\\\":\\\"source.tcl\\\"}\"))\n\nexport default [\nlang\n]\n", "import go from './go.mjs'\nimport javascript from './javascript.mjs'\nimport css from './css.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Templ\\\",\\\"name\\\":\\\"templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#script-template\\\"},{\\\"include\\\":\\\"#css-template\\\"},{\\\"include\\\":\\\"#html-template\\\"},{\\\"include\\\":\\\"source.go\\\"}],\\\"repository\\\":{\\\"block-element\\\":{\\\"begin\\\":\\\"(</?)((?i:address|blockquote|dd|div|section|article|aside|header|footer|nav|menu|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|pre)(?=\\\\\\\\s|\\\\\\\\\\\\\\\\|>))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.block.any.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.block.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},\\\"call-expression\\\":{\\\"begin\\\":\\\"({\\\\\\\\!)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"start.call-expression.templ\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.open\\\"}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"end.call-expression.templ\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.close\\\"}},\\\"name\\\":\\\"call-expression.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},\\\"case-expression\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*case .+?:$\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"case.switch.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]}},\\\"end\\\":\\\"(^\\\\\\\\s*case .+?:$)|(^\\\\\\\\s*default:$)|(\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-node\\\"}]},\\\"close-element\\\":{\\\"begin\\\":\\\"(</?)([a-zA-Z0-9:\\\\\\\\-]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},\\\"css-template\\\":{\\\"begin\\\":\\\"^(css) ([A-z_][A-z_0-9]*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]}},\\\"end\\\":\\\"(?<=^}$)\\\",\\\"name\\\":\\\"css-template.templ\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\()\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"name\\\":\\\"params.css-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\)) ({)$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"end\\\":\\\"^(})$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"name\\\":\\\"block.css-template.templ\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*((?:-(?:webkit|moz|o|ms|khtml)-)?(?:zoom|z-index|y|x|writing-mode|wrap|wrap-through|wrap-inside|wrap-flow|wrap-before|wrap-after|word-wrap|word-spacing|word-break|word|will-change|width|widows|white-space-collapse|white-space|white|weight|volume|voice-volume|voice-stress|voice-rate|voice-pitch-range|voice-pitch|voice-family|voice-duration|voice-balance|voice|visibility|vertical-align|vector-effect|variant|user-zoom|user-select|up|unicode-(bidi|range)|trim|translate|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform-box|transform|touch-action|top-width|top-style|top-right-radius|top-left-radius|top-color|top|timing-function|text-wrap|text-underline-position|text-transform|text-spacing|text-space-trim|text-space-collapse|text-size-adjust|text-shadow|text-replace|text-rendering|text-overflow|text-outline|text-orientation|text-justify|text-indent|text-height|text-emphasis-style|text-emphasis-skip|text-emphasis-position|text-emphasis-color|text-emphasis|text-decoration-style|text-decoration-stroke|text-decoration-skip|text-decoration-line|text-decoration-fill|text-decoration-color|text-decoration|text-combine-upright|text-anchor|text-align-last|text-align-all|text-align|text|target-position|target-new|target-name|target|table-layout|tab-size|system|symbols|suffix|style-type|style-position|style-image|style|stroke-width|stroke-opacity|stroke-miterlimit|stroke-linejoin|stroke-linecap|stroke-dashoffset|stroke-dasharray|stroke|string-set|stretch|stress|stop-opacity|stop-color|stacking-strategy|stacking-shift|stacking-ruby|stacking|src|speed|speech-rate|speech|speak-punctuation|speak-numeral|speak-header|speak-as|speak|span|spacing|space-collapse|space|solid-opacity|solid-color|sizing|size-adjust|size|shape-rendering|shape-padding|shape-outside|shape-margin|shape-inside|shape-image-threshold|shadow|scroll-snap-type|scroll-snap-points-y|scroll-snap-points-x|scroll-snap-destination|scroll-snap-coordinate|scroll-behavior|scale|ry|rx|respond-to|rule-width|rule-style|rule-color|rule|ruby-span|ruby-position|ruby-overhang|ruby-merge|ruby-align|ruby|rows|rotation-point|rotation|rotate|role|right-width|right-style|right-color|right|richness|rest-before|rest-after|rest|resource|resolution|resize|reset|replace|repeat|rendering-intent|region-fragment|rate|range|radius|r|quotes|punctuation-trim|punctuation|property|profile|presentation-level|presentation|prefix|position|pointer-events|point|play-state|play-during|play-count|pitch-range|pitch|phonemes|perspective-origin|perspective|pause-before|pause-after|pause|page-policy|page-break-inside|page-break-before|page-break-after|page|padding-top|padding-right|padding-left|padding-inline-start|padding-inline-end|padding-bottom|padding-block-start|padding-block-end|padding|pad|pack|overhang|overflow-y|overflow-x|overflow-wrap|overflow-style|overflow-inline|overflow-block|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|origin|orientation|orient|ordinal-group|order|opacity|offset-start|offset-inline-start|offset-inline-end|offset-end|offset-block-start|offset-block-end|offset-before|offset-after|offset|object-position|object-fit|numeral|new|negative|nav-up|nav-right|nav-left|nav-index|nav-down|nav|name|move-to|motion-rotation|motion-path|motion-offset|motion|model|mix-blend-mode|min-zoom|min-width|min-inline-size|min-height|min-block-size|min|max-zoom|max-width|max-lines|max-inline-size|max-height|max-block-size|max|mask-type|mask-size|mask-repeat|mask-position|mask-origin|mask-mode|mask-image|mask-composite|mask-clip|mask-border-width|mask-border-source|mask-border-slice|mask-border-repeat|mask-border-outset|mask-border-mode|mask-border|mask|marquee-style|marquee-speed|marquee-play-count|marquee-loop|marquee-direction|marquee|marks|marker-start|marker-side|marker-mid|marker-end|marker|margin-top|margin-right|margin-left|margin-inline-start|margin-inline-end|margin-bottom|margin-block-start|margin-block-end|margin|list-style-type|list-style-position|list-style-image|list-style|list|lines|line-stacking-strategy|line-stacking-shift|line-stacking-ruby|line-stacking|line-snap|line-height|line-grid|line-break|line|lighting-color|level|letter-spacing|length|left-width|left-style|left-color|left|label|kerning|justify-self|justify-items|justify-content|justify|iteration-count|isolation|inline-size|inline-box-align|initial-value|initial-size|initial-letter-wrap|initial-letter-align|initial-letter|initial-before-align|initial-before-adjust|initial-after-align|initial-after-adjust|index|indent|increment|image-rendering|image-resolution|image-orientation|image|icon|hyphens|hyphenate-limit-zone|hyphenate-limit-lines|hyphenate-limit-last|hyphenate-limit-chars|hyphenate-character|hyphenate|height|header|hanging-punctuation|grid-template-rows|grid-template-columns|grid-template-areas|grid-template|grid-row-start|grid-row-gap|grid-row-end|grid-row|grid-rows|grid-gap|grid-column-start|grid-column-gap|grid-column-end|grid-column|grid-columns|grid-auto-rows|grid-auto-flow|grid-auto-columns|grid-area|grid|glyph-orientation-vertical|glyph-orientation-horizontal|gap|font-weight|font-variant-position|font-variant-numeric|font-variant-ligatures|font-variant-east-asian|font-variant-caps|font-variant-alternates|font-variant|font-synthesis|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|flow-into|flow-from|flow|flood-opacity|flood-color|float-offset|float|flex-wrap|flex-shrink|flex-grow|flex-group|flex-flow|flex-direction|flex-basis|flex|fit-position|fit|filter|fill-rule|fill-opacity|fill|family|fallback|enable-background|empty-cells|emphasis|elevation|duration|drop-initial-value|drop-initial-size|drop-initial-before-align|drop-initial-before-adjust|drop-initial-after-align|drop-initial-after-adjust|drop|down|dominant-baseline|display-role|display-model|display|direction|delay|decoration-break|decoration|cy|cx|cursor|cue-before|cue-after|cue|crop|counter-set|counter-reset|counter-increment|counter|count|corner-shape|corners|continue|content|contain|columns|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|column-break-before|column-break-after|column|color-rendering|color-profile|color-interpolation-filters|color-interpolation|color-adjust|color|collapse|clip-rule|clip-path|clip|clear|character|caret-shape|caret-color|caret|caption-side|buffered-rendering|break-inside|break-before|break-after|break|box-suppress|box-snap|box-sizing|box-shadow|box-pack|box-orient|box-ordinal-group|box-lines|box-flex-group|box-flex|box-direction|box-decoration-break|box-align|box|bottom-width|bottom-style|bottom-right-radius|bottom-left-radius|bottom-color|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-limit|border-length|border-left-width|border-left-style|border-left-color|border-left|border-inline-start-width|border-inline-start-style|border-inline-start-color|border-inline-start|border-inline-end-width|border-inline-end-style|border-inline-end-color|border-inline-end|border-image-width|border-image-transform|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-clip-top|border-clip-right|border-clip-left|border-clip-bottom|border-clip|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border-block-start-width|border-block-start-style|border-block-start-color|border-block-start|border-block-end-width|border-block-end-style|border-block-end-color|border-block-end|border|bookmark-target|bookmark-level|bookmark-label|bookmark|block-size|binding|bidi|before|baseline-shift|baseline|balance|background-size|background-repeat|background-position-y|background-position-x|background-position-inline|background-position-block|background-position|background-origin|background-image|background-color|background-clip|background-blend-mode|background-attachment|background|backface-visibility|backdrop-filter|azimuth|attachment|appearance|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|alt|all|alignment-baseline|alignment-adjust|alignment|align-last|align-self|align-items|align-content|align|after|adjust|additive-symbols)):\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.property-name.css\\\"}},\\\"end\\\":\\\"(?<=;$)\\\",\\\"name\\\":\\\"property.css-template.templ\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"end\\\":\\\"(})(;)$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"name\\\":\\\"expression.property.css-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.property-value.css\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"match\\\":\\\"(.*)(;)$\\\",\\\"name\\\":\\\"constant.property.css-template.templ\\\"}]}]}]},\\\"default-expression\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*default:$\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"default.switch.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]}},\\\"end\\\":\\\"(^\\\\\\\\s*case .+?:$)|(^\\\\\\\\s*default:$)|(\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-node\\\"}]},\\\"element\\\":{\\\"begin\\\":\\\"(<)([a-zA-Z0-9:\\\\\\\\-]++)(?=[^>]*></\\\\\\\\2>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(>(<)/)(\\\\\\\\2)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.scope.between-tag-pair.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"name\\\":\\\"meta.tag.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},\\\"else-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\s+(else)\\\\\\\\s+({)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(})$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"name\\\":\\\"else.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-node\\\"}]},\\\"else-if-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\s(else if)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"else-if.html-template.templ\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=if\\\\\\\\s)\\\",\\\"end\\\":\\\"({)$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"name\\\":\\\"expression.else-if.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"(?<={)$\\\",\\\"end\\\":\\\"^\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"name\\\":\\\"block.else-if.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-node\\\"}]}]},\\\"entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"}},\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#[0-9]+|#[xX][0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.html\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"invalid.illegal.bad-ampersand.html\\\"}]},\\\"for-expression\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*for .+{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.embedded.block.go\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]}},\\\"end\\\":\\\"\\\\\\\\s*}\\\\\\\\s*\\\\n\\\",\\\"name\\\":\\\"for.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-node\\\"}]},\\\"go-comment-block\\\":{\\\"begin\\\":\\\"(\\\\\\\\/\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.go\\\"}},\\\"end\\\":\\\"(\\\\\\\\*\\\\\\\\/)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.go\\\"}},\\\"name\\\":\\\"comment.block.go\\\"},\\\"go-comment-double-slash\\\":{\\\"begin\\\":\\\"(\\\\\\\\/\\\\\\\\/)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.go\\\"}},\\\"end\\\":\\\"(?:\\\\\\\\n|$)\\\",\\\"name\\\":\\\"comment.line.double-slash.go\\\"},\\\"html-comment\\\":{\\\"begin\\\":\\\"<!--\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html\\\"}},\\\"end\\\":\\\"-->\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html\\\"}},\\\"name\\\":\\\"comment.block.html\\\"},\\\"html-template\\\":{\\\"begin\\\":\\\"^(templ) ((?:\\\\\\\\([A-z_][A-z_0-9]* \\\\\\\\*?[A-z_][A-z_0-9]*\\\\\\\\) )?[A-z_][A-z_0-9]*(\\\\\\\\(|\\\\\\\\[))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]}},\\\"end\\\":\\\"(?<=^}$)\\\",\\\"name\\\":\\\"html-template.templ\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\()\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"name\\\":\\\"params.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\[)\\\",\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.go\\\"}},\\\"name\\\":\\\"type-params.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\)) ({)$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"end\\\":\\\"^(})$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"name\\\":\\\"block.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-node\\\"}]}]},\\\"if-expression\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(if)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"if.html-template.templ\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=if\\\\\\\\s)\\\",\\\"end\\\":\\\"({)$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"name\\\":\\\"expression.if.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"(?<={)$\\\",\\\"end\\\":\\\"^\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"name\\\":\\\"block.if.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-node\\\"}]}]},\\\"import-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(@)((?:[A-z_][A-z_0-9]*\\\\\\\\.)?[A-z_][A-z_0-9]*(?:\\\\\\\\(|{|$))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]}},\\\"end\\\":\\\"(?<=\\\\\\\\))$|(?<=})$|(?<=$)\\\",\\\"name\\\":\\\"import-expression.templ\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=[A-z_0-9]{)\\\",\\\"end\\\":\\\"\\\\\\\\s*(})(\\\\\\\\.[A-z_][A-z_0-9]*\\\\\\\\()\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]}},\\\"name\\\":\\\"struct-method.import-expression.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\()\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"name\\\":\\\"params.import-expression.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s({)$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.open\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(})$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.close\\\"}},\\\"name\\\":\\\"children.import-expression.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-node\\\"}]}]}]},\\\"inline-element\\\":{\\\"begin\\\":\\\"(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)(?=\\\\\\\\s|\\\\\\\\\\\\\\\\|>))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.inline.any.html\\\"}},\\\"end\\\":\\\"((?: ?/)?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.inline.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},\\\"raw-go\\\":{\\\"begin\\\":\\\"{{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"start.raw-go.templ\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.open\\\"}},\\\"end\\\":\\\"}}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"end.raw-go.templ\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.open\\\"}},\\\"name\\\":\\\"raw-go.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},\\\"script-element\\\":{\\\"begin\\\":\\\"(<)(script)([^>]*)(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\"</script>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#close-element\\\"}]}},\\\"name\\\":\\\"meta.tag.script.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},\\\"script-template\\\":{\\\"begin\\\":\\\"^(script) ([A-z_][A-z_0-9]*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]}},\\\"end\\\":\\\"(?<=^}$)\\\",\\\"name\\\":\\\"script-template.templ\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=\\\\\\\\()\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.round.go\\\"}},\\\"name\\\":\\\"params.script-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\)) ({)$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.curly.go\\\"}},\\\"end\\\":\\\"^(})$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.curly.go\\\"}},\\\"name\\\":\\\"block.script-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"sgml\\\":{\\\"begin\\\":\\\"<!\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"meta.tag.sgml.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i:DOCTYPE)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.doctype.html\\\"}},\\\"end\\\":\\\"(?=>)\\\",\\\"name\\\":\\\"meta.tag.sgml.doctype.html\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"[^\\\\\\\">]*\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.doctype.identifiers-and-DTDs.html\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[CDATA\\\\\\\\[\\\",\\\"end\\\":\\\"]](?=>)\\\",\\\"name\\\":\\\"constant.other.inline-data.html\\\"},{\\\"match\\\":\\\"(\\\\\\\\s*)(?!--|>)\\\\\\\\S(\\\\\\\\s*)\\\",\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.html\\\"}]},\\\"string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.double.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entities\\\"}]},\\\"string-expression\\\":{\\\"begin\\\":\\\"{\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"start.string-expression.templ\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"end.string-expression.templ\\\"}},\\\"name\\\":\\\"expression.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},\\\"style-element\\\":{\\\"begin\\\":\\\"(<)(style)([^>]*)(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\"</style>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#close-element\\\"}]}},\\\"name\\\":\\\"meta.tag.style.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]},\\\"switch-expression\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*switch .+?{$\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.embedded.block.go\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]}},\\\"end\\\":\\\"^\\\\\\\\s*}$\\\",\\\"name\\\":\\\"switch.html-template.templ\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-node\\\"},{\\\"include\\\":\\\"#case-expression\\\"},{\\\"include\\\":\\\"#default-expression\\\"}]},\\\"tag-else-attribute\\\":{\\\"begin\\\":\\\"\\\\\\\\s(else)\\\\\\\\s({)$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.brace.open\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*(})$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.close\\\"}},\\\"name\\\":\\\"else.attribute.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},\\\"tag-else-if-attribute\\\":{\\\"begin\\\":\\\"\\\\\\\\s(else if)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"else-if.attribute.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=if\\\\\\\\s)\\\",\\\"end\\\":\\\"({)$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.open\\\"}},\\\"name\\\":\\\"expression.else-if.attribute.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"(?<={)$\\\",\\\"end\\\":\\\"^\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.close\\\"}},\\\"name\\\":\\\"block.else-if.attribute.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]}]},\\\"tag-generic-attribute\\\":{\\\"match\\\":\\\"(?<=[^=])\\\\\\\\b([a-zA-Z0-9:-]+)\\\",\\\"name\\\":\\\"entity.other.attribute-name.html\\\"},\\\"tag-id-attribute\\\":{\\\"begin\\\":\\\"\\\\\\\\b(id)\\\\\\\\b\\\\\\\\s*(=)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.id.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(?<='|\\\\\\\"|[^\\\\\\\\s<>/])\\\",\\\"name\\\":\\\"meta.attribute-with-value.id.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"contentName\\\":\\\"meta.toc-list.id.html\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.double.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entities\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"contentName\\\":\\\"meta.toc-list.id.html\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.single.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#entities\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.toc-list.id.html\\\"}},\\\"match\\\":\\\"(?<==)(?:[^\\\\\\\\s{}<>/'\\\\\\\"]|/(?!>))+\\\",\\\"name\\\":\\\"string.unquoted.html\\\"}]},\\\"tag-if-attribute\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(if)\\\\\\\\s\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.go\\\"}},\\\"end\\\":\\\"(?<=})\\\",\\\"name\\\":\\\"if.attribute.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=if\\\\\\\\s)\\\",\\\"end\\\":\\\"({)$\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.open\\\"}},\\\"name\\\":\\\"expression.if.attribute.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]},{\\\"begin\\\":\\\"(?<={)$\\\",\\\"end\\\":\\\"^\\\\\\\\s*(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.brace.close\\\"}},\\\"name\\\":\\\"block.if.attribute.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]}]},\\\"tag-stuff\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-id-attribute\\\"},{\\\"include\\\":\\\"#tag-generic-attribute\\\"},{\\\"include\\\":\\\"#string-double-quoted\\\"},{\\\"include\\\":\\\"#string-expression\\\"},{\\\"include\\\":\\\"#tag-if-attribute\\\"},{\\\"include\\\":\\\"#tag-else-if-attribute\\\"},{\\\"include\\\":\\\"#tag-else-attribute\\\"}]},\\\"template-node\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-expression\\\"},{\\\"include\\\":\\\"#call-expression\\\"},{\\\"include\\\":\\\"#import-expression\\\"},{\\\"include\\\":\\\"#script-element\\\"},{\\\"include\\\":\\\"#style-element\\\"},{\\\"include\\\":\\\"#element\\\"},{\\\"include\\\":\\\"#html-comment\\\"},{\\\"include\\\":\\\"#go-comment-block\\\"},{\\\"include\\\":\\\"#go-comment-double-slash\\\"},{\\\"include\\\":\\\"#sgml\\\"},{\\\"include\\\":\\\"#block-element\\\"},{\\\"include\\\":\\\"#inline-element\\\"},{\\\"include\\\":\\\"#close-element\\\"},{\\\"include\\\":\\\"#else-if-expression\\\"},{\\\"include\\\":\\\"#if-expression\\\"},{\\\"include\\\":\\\"#else-expression\\\"},{\\\"include\\\":\\\"#for-expression\\\"},{\\\"include\\\":\\\"#switch-expression\\\"},{\\\"include\\\":\\\"#raw-go\\\"}]}},\\\"scopeName\\\":\\\"source.templ\\\",\\\"embeddedLangs\\\":[\\\"go\\\",\\\"javascript\\\",\\\"css\\\"]}\"))\n\nexport default [\n...go,\n...javascript,\n...css,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Terraform\\\",\\\"fileTypes\\\":[\\\"tf\\\",\\\"tfvars\\\"],\\\"name\\\":\\\"terraform\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#attribute_definition\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#expressions\\\"}],\\\"repository\\\":{\\\"attribute_access\\\":{\\\"begin\\\":\\\"\\\\\\\\.(?!\\\\\\\\*)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.accessor.hcl\\\"}},\\\"comment\\\":\\\"Matches traversal attribute access such as .attr\\\",\\\"end\\\":\\\"[[:alpha:]][\\\\\\\\w-]*|\\\\\\\\d*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Attribute name\\\",\\\"match\\\":\\\"(?!null|false|true)[[:alpha:]][\\\\\\\\w-]*\\\",\\\"name\\\":\\\"variable.other.member.hcl\\\"},{\\\"comment\\\":\\\"Optional attribute index\\\",\\\"match\\\":\\\"\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.numeric.integer.hcl\\\"}]}}},\\\"attribute_definition\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.readwrite.hcl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.hcl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.assignment.hcl\\\"}},\\\"comment\\\":\\\"Identifier \\\\\\\"=\\\\\\\" with optional parens\\\",\\\"match\\\":\\\"(\\\\\\\\()?(\\\\\\\\b(?!null\\\\\\\\b|false\\\\\\\\b|true\\\\\\\\b)[[:alpha:]][[:alnum:]_-]*)(\\\\\\\\))?\\\\\\\\s*(\\\\\\\\=(?!\\\\\\\\=|\\\\\\\\>))\\\\\\\\s*\\\",\\\"name\\\":\\\"variable.declaration.hcl\\\"},\\\"attribute_splat\\\":{\\\"begin\\\":\\\"\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.accessor.hcl\\\"}},\\\"comment\\\":\\\"Legacy attribute-only splat\\\",\\\"end\\\":\\\"\\\\\\\\*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.splat.hcl\\\"}}},\\\"block\\\":{\\\"begin\\\":\\\"([\\\\\\\\w][\\\\\\\\-\\\\\\\\w]*)([\\\\\\\\s\\\\\\\\\\\\\\\"\\\\\\\\-\\\\\\\\w]*)(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Known block type\\\",\\\"match\\\":\\\"\\\\\\\\bdata|check|import|locals|module|output|provider|resource|terraform|variable\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.terraform\\\"},{\\\"comment\\\":\\\"Unknown block type\\\",\\\"match\\\":\\\"\\\\\\\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.hcl\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Block label\\\",\\\"match\\\":\\\"[\\\\\\\\\\\\\\\"\\\\\\\\-\\\\\\\\w]+\\\",\\\"name\\\":\\\"variable.other.enummember.hcl\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.hcl\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.block.begin.hcl\\\"}},\\\"comment\\\":\\\"This will match Terraform blocks like `resource \\\\\\\"aws_instance\\\\\\\" \\\\\\\"web\\\\\\\" {` or `module {`\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.block.end.hcl\\\"}},\\\"name\\\":\\\"meta.block.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#attribute_definition\\\"},{\\\"include\\\":\\\"#block\\\"},{\\\"include\\\":\\\"#expressions\\\"}]},\\\"block_inline_comments\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hcl\\\"}},\\\"comment\\\":\\\"Inline comments start with the /* sequence and end with the */ sequence, and may have any characters within except the ending sequence. An inline comment is considered equivalent to a whitespace sequence\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.hcl\\\"},\\\"brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.begin.hcl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.end.hcl\\\"}},\\\"patterns\\\":[{\\\"comment\\\":\\\"Splat operator\\\",\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.operator.splat.hcl\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#inline_for_expression\\\"},{\\\"include\\\":\\\"#inline_if_expression\\\"},{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#local_identifiers\\\"}]},\\\"char_escapes\\\":{\\\"comment\\\":\\\"Character Escapes\\\",\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[nrt\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\u(\\\\\\\\h{8}|\\\\\\\\h{4})\\\",\\\"name\\\":\\\"constant.character.escape.hcl\\\"},\\\"comma\\\":{\\\"comment\\\":\\\"Commas - used in certain expressions\\\",\\\"match\\\":\\\"\\\\\\\\,\\\",\\\"name\\\":\\\"punctuation.separator.hcl\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#hash_line_comments\\\"},{\\\"include\\\":\\\"#double_slash_line_comments\\\"},{\\\"include\\\":\\\"#block_inline_comments\\\"}]},\\\"double_slash_line_comments\\\":{\\\"begin\\\":\\\"//\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hcl\\\"}},\\\"comment\\\":\\\"Line comments start with // sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.hcl\\\"},\\\"expressions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#literal_values\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#tuple_for_expression\\\"},{\\\"include\\\":\\\"#object_for_expression\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#objects\\\"},{\\\"include\\\":\\\"#attribute_access\\\"},{\\\"include\\\":\\\"#attribute_splat\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#parens\\\"}]},\\\"for_expression_body\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"in keyword\\\",\\\"match\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.hcl\\\"},{\\\"comment\\\":\\\"if keyword\\\",\\\"match\\\":\\\"\\\\\\\\bif\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.conditional.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\:\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#local_identifiers\\\"}]},\\\"functions\\\":{\\\"begin\\\":\\\"([:\\\\\\\\-\\\\\\\\w]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(core::)?(abs|abspath|alltrue|anytrue|base64decode|base64encode|base64gzip|base64sha256|base64sha512|basename|bcrypt|can|ceil|chomp|chunklist|cidrhost|cidrnetmask|cidrsubnet|cidrsubnets|coalesce|coalescelist|compact|concat|contains|csvdecode|dirname|distinct|element|endswith|file|filebase64|filebase64sha256|filebase64sha512|fileexists|filemd5|fileset|filesha1|filesha256|filesha512|flatten|floor|format|formatdate|formatlist|indent|index|join|jsondecode|jsonencode|keys|length|log|lookup|lower|matchkeys|max|md5|merge|min|nonsensitive|one|parseint|pathexpand|plantimestamp|pow|range|regex|regexall|replace|reverse|rsadecrypt|sensitive|setintersection|setproduct|setsubtract|setunion|sha1|sha256|sha512|signum|slice|sort|split|startswith|strcontains|strrev|substr|sum|templatefile|textdecodebase64|textencodebase64|timeadd|timecmp|timestamp|title|tobool|tolist|tomap|tonumber|toset|tostring|transpose|trim|trimprefix|trimspace|trimsuffix|try|upper|urlencode|uuid|uuidv5|values|yamldecode|yamlencode|zipmap)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.terraform\\\"},{\\\"match\\\":\\\"\\\\\\\\bprovider::[[:alpha:]][\\\\\\\\w_-]*::[[:alpha:]][\\\\\\\\w_-]*\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.provider.terraform\\\"}]},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.hcl\\\"}},\\\"comment\\\":\\\"Built-in function calls\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.hcl\\\"}},\\\"name\\\":\\\"meta.function-call.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#comma\\\"}]},\\\"hash_line_comments\\\":{\\\"begin\\\":\\\"#\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.hcl\\\"}},\\\"comment\\\":\\\"Line comments start with # sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence\\\",\\\"end\\\":\\\"$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.hcl\\\"},\\\"hcl_type_keywords\\\":{\\\"comment\\\":\\\"Type keywords known to HCL.\\\",\\\"match\\\":\\\"\\\\\\\\b(any|string|number|bool|list|set|map|tuple|object)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.hcl\\\"},\\\"heredoc\\\":{\\\"begin\\\":\\\"(\\\\\\\\<\\\\\\\\<\\\\\\\\-?)\\\\\\\\s*(\\\\\\\\w+)\\\\\\\\s*$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.heredoc.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.heredoc.hcl\\\"}},\\\"comment\\\":\\\"String Heredoc\\\",\\\"end\\\":\\\"^\\\\\\\\s*\\\\\\\\2\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.heredoc.hcl\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_interpolation\\\"}]},\\\"inline_for_expression\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.hcl\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\=\\\\\\\\>\\\",\\\"name\\\":\\\"storage.type.function.hcl\\\"},{\\\"include\\\":\\\"#for_expression_body\\\"}]}},\\\"match\\\":\\\"(for)\\\\\\\\b(.*)\\\\\\\\n\\\"},\\\"inline_if_expression\\\":{\\\"begin\\\":\\\"(if)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.conditional.hcl\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#comma\\\"},{\\\"include\\\":\\\"#local_identifiers\\\"}]},\\\"language_constants\\\":{\\\"comment\\\":\\\"Language Constants\\\",\\\"match\\\":\\\"\\\\\\\\b(true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.hcl\\\"},\\\"literal_values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#numeric_literals\\\"},{\\\"include\\\":\\\"#language_constants\\\"},{\\\"include\\\":\\\"#string_literals\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#hcl_type_keywords\\\"},{\\\"include\\\":\\\"#named_value_references\\\"}]},\\\"local_identifiers\\\":{\\\"comment\\\":\\\"Local Identifiers\\\",\\\"match\\\":\\\"\\\\\\\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.hcl\\\"},\\\"named_value_references\\\":{\\\"comment\\\":\\\"Constant values available only to Terraform.\\\",\\\"match\\\":\\\"\\\\\\\\b(var|local|module|data|path|terraform)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.readwrite.terraform\\\"},\\\"numeric_literals\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.exponent.hcl\\\"}},\\\"comment\\\":\\\"Integer, no fraction, optional exponent\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+([Ee][+-]?)\\\\\\\\d+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.hcl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.decimal.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.exponent.hcl\\\"}},\\\"comment\\\":\\\"Integer, fraction, optional exponent\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+(\\\\\\\\.)\\\\\\\\d+(?:([Ee][+-]?)\\\\\\\\d+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.hcl\\\"},{\\\"comment\\\":\\\"Integers\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.hcl\\\"}]},\\\"object_for_expression\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\\\\\\s?(for)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.hcl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.hcl\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\=\\\\\\\\>\\\",\\\"name\\\":\\\"storage.type.function.hcl\\\"},{\\\"include\\\":\\\"#for_expression_body\\\"}]},\\\"object_key_values\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#literal_values\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#tuple_for_expression\\\"},{\\\"include\\\":\\\"#object_for_expression\\\"},{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#functions\\\"}]},\\\"objects\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.hcl\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.hcl\\\"}},\\\"name\\\":\\\"meta.braces.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#objects\\\"},{\\\"include\\\":\\\"#inline_for_expression\\\"},{\\\"include\\\":\\\"#inline_if_expression\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.mapping.key.hcl variable.other.readwrite.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.hcl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\=\\\\\\\\>\\\",\\\"name\\\":\\\"storage.type.function.hcl\\\"}]}},\\\"comment\\\":\\\"Literal, named object key\\\",\\\"match\\\":\\\"\\\\\\\\b((?!null|false|true)[[:alpha:]][[:alnum:]_-]*)\\\\\\\\s*(\\\\\\\\=\\\\\\\\>?)\\\\\\\\s*\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#named_value_references\\\"}]},\\\"1\\\":{\\\"name\\\":\\\"meta.mapping.key.hcl string.quoted.double.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hcl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hcl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.hcl\\\"}},\\\"comment\\\":\\\"String object key\\\",\\\"match\\\":\\\"\\\\\\\\b((\\\\\\\").*(\\\\\\\"))\\\\\\\\s*(\\\\\\\\=)\\\\\\\\s*\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.hcl\\\"}},\\\"comment\\\":\\\"Computed object key (any expression between parens)\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\\\\\\s*(=|:)\\\\\\\\s*\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.hcl\\\"}},\\\"name\\\":\\\"meta.mapping.key.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#named_value_references\\\"},{\\\"include\\\":\\\"#attribute_access\\\"}]},{\\\"include\\\":\\\"#object_key_values\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\>\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\<\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\-\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\/\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\%\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\&\\\\\\\\&\\\",\\\"name\\\":\\\"keyword.operator.logical.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.logical.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\!\\\",\\\"name\\\":\\\"keyword.operator.logical.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\>\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\<\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\:\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"},{\\\"match\\\":\\\"\\\\\\\\=\\\\\\\\>\\\",\\\"name\\\":\\\"keyword.operator.hcl\\\"}]},\\\"parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.hcl\\\"}},\\\"comment\\\":\\\"Parens - matched *after* function syntax\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.hcl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#expressions\\\"}]},\\\"string_interpolation\\\":{\\\"begin\\\":\\\"(?<![%$])([%$]{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.interpolation.begin.hcl\\\"}},\\\"comment\\\":\\\"String interpolation\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.interpolation.end.hcl\\\"}},\\\"name\\\":\\\"meta.interpolation.hcl\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Trim left whitespace\\\",\\\"match\\\":\\\"\\\\\\\\~\\\\\\\\s\\\",\\\"name\\\":\\\"keyword.operator.template.left.trim.hcl\\\"},{\\\"comment\\\":\\\"Trim right whitespace\\\",\\\"match\\\":\\\"\\\\\\\\s\\\\\\\\~\\\",\\\"name\\\":\\\"keyword.operator.template.right.trim.hcl\\\"},{\\\"comment\\\":\\\"if/else/endif and for/in/endfor directives\\\",\\\"match\\\":\\\"\\\\\\\\b(if|else|endif|for|in|endfor)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.hcl\\\"},{\\\"include\\\":\\\"#expressions\\\"},{\\\"include\\\":\\\"#local_identifiers\\\"}]},\\\"string_literals\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.hcl\\\"}},\\\"comment\\\":\\\"Strings\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.hcl\\\"}},\\\"name\\\":\\\"string.quoted.double.hcl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_interpolation\\\"},{\\\"include\\\":\\\"#char_escapes\\\"}]},\\\"tuple_for_expression\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\\\\\\s?(for)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.brackets.begin.hcl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.hcl\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.end.hcl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#for_expression_body\\\"}]}},\\\"scopeName\\\":\\\"source.hcl.terraform\\\",\\\"aliases\\\":[\\\"tf\\\",\\\"tfvars\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"TOML\\\",\\\"fileTypes\\\":[\\\"toml\\\"],\\\"name\\\":\\\"toml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#groups\\\"},{\\\"include\\\":\\\"#key_pair\\\"},{\\\"include\\\":\\\"#invalid\\\"}],\\\"repository\\\":{\\\"comments\\\":{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.toml\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.toml\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.toml\\\"}]},\\\"groups\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.section.begin.toml\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[^\\\\\\\\s.]+\\\",\\\"name\\\":\\\"entity.name.section.toml\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.section.begin.toml\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\[)([^\\\\\\\\[\\\\\\\\]]*)(\\\\\\\\])\\\",\\\"name\\\":\\\"meta.group.toml\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.section.begin.toml\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[^\\\\\\\\s.]+\\\",\\\"name\\\":\\\"entity.name.section.toml\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.section.begin.toml\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\[\\\\\\\\[)([^\\\\\\\\[\\\\\\\\]]*)(\\\\\\\\]\\\\\\\\])\\\",\\\"name\\\":\\\"meta.group.double.toml\\\"}]},\\\"invalid\\\":{\\\"match\\\":\\\"\\\\\\\\S+(\\\\\\\\s*(?=\\\\\\\\S))?\\\",\\\"name\\\":\\\"invalid.illegal.not-allowed-here.toml\\\"},\\\"key_pair\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([A-Za-z0-9_-]+)\\\\\\\\s*(=)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.key.toml\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.toml\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\S)(?<!=)|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#primatives\\\"}]},{\\\"begin\\\":\\\"((\\\\\\\")(.*?)(\\\\\\\"))\\\\\\\\s*(=)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.key.toml\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.toml\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([btnfr\\\\\\\"\\\\\\\\\\\\\\\\]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^btnfr\\\\\\\"\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"invalid.illegal.escape.toml\\\"},{\\\"match\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"invalid.illegal.not-allowed-here.toml\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.end.toml\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.toml\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\S)(?<!=)|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#primatives\\\"}]},{\\\"begin\\\":\\\"((')([^']*)('))\\\\\\\\s*(=)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.key.toml\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.toml\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.variable.end.toml\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.toml\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\S)(?<!=)|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#primatives\\\"}]},{\\\"begin\\\":\\\"(((?:[A-Za-z0-9_-]+|\\\\\\\"(?:[^\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\"|'[^']*')(?:\\\\\\\\s*\\\\\\\\.\\\\\\\\s*|(?=\\\\\\\\s*=))){2,})\\\\\\\\s*(=)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.key.toml\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.separator.variable.toml\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.toml\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([btnfr\\\\\\\"\\\\\\\\\\\\\\\\]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^btnfr\\\\\\\"\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"invalid.illegal.escape.toml\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.variable.end.toml\\\"}},\\\"match\\\":\\\"(\\\\\\\")((?:[^\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*)(\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.begin.toml\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.variable.end.toml\\\"}},\\\"match\\\":\\\"(')[^']*(')\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.toml\\\"}},\\\"comment\\\":\\\"Dotted key\\\",\\\"end\\\":\\\"(?<=\\\\\\\\S)(?<!=)|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#primatives\\\"}]}]},\\\"primatives\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.toml\\\"}},\\\"end\\\":\\\"\\\\\\\"{3,5}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.toml\\\"}},\\\"name\\\":\\\"string.quoted.triple.double.toml\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([btnfr\\\\\\\"\\\\\\\\\\\\\\\\]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^btnfr\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\n]\\\",\\\"name\\\":\\\"invalid.illegal.escape.toml\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.toml\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.toml\\\"}},\\\"name\\\":\\\"string.quoted.double.toml\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([btnfr\\\\\\\"\\\\\\\\\\\\\\\\]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.escape.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^btnfr\\\\\\\"\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"invalid.illegal.escape.toml\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G'''\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.toml\\\"}},\\\"end\\\":\\\"'{3,5}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.toml\\\"}},\\\"name\\\":\\\"string.quoted.triple.single.toml\\\"},{\\\"begin\\\":\\\"\\\\\\\\G'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.toml\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.toml\\\"}},\\\"name\\\":\\\"string.quoted.single.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\G[0-9]{4}-(0[1-9]|1[012])-(?!00|3[2-9])[0-3][0-9]([Tt ](?!2[5-9])[0-2][0-9]:[0-5][0-9]:(?!6[1-9])[0-6][0-9](\\\\\\\\.[0-9]+)?(Z|[+-](?!2[5-9])[0-2][0-9]:[0-5][0-9])?)?\\\",\\\"name\\\":\\\"constant.other.date.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\G(?!2[5-9])[0-2][0-9]:[0-5][0-9]:(?!6[1-9])[0-6][0-9](\\\\\\\\.[0-9]+)?\\\",\\\"name\\\":\\\"constant.other.time.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\G(true|false)\\\",\\\"name\\\":\\\"constant.language.boolean.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\G0x\\\\\\\\h(\\\\\\\\h|_\\\\\\\\h)*\\\",\\\"name\\\":\\\"constant.numeric.hex.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\G0o[0-7]([0-7]|_[0-7])*\\\",\\\"name\\\":\\\"constant.numeric.octal.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\G0b[01]([01]|_[01])*\\\",\\\"name\\\":\\\"constant.numeric.binary.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\G[+-]?(inf|nan)\\\",\\\"name\\\":\\\"constant.numeric.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\G([+-]?(0|([1-9](([0-9]|_[0-9])+)?)))(?=[.eE])(\\\\\\\\.([0-9](([0-9]|_[0-9])+)?))?([eE]([+-]?[0-9](([0-9]|_[0-9])+)?))?\\\",\\\"name\\\":\\\"constant.numeric.float.toml\\\"},{\\\"match\\\":\\\"\\\\\\\\G([+-]?(0|([1-9](([0-9]|_[0-9])+)?)))\\\",\\\"name\\\":\\\"constant.numeric.integer.toml\\\"},{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.toml\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.toml\\\"}},\\\"name\\\":\\\"meta.array.toml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[\\\\\\\"'']|[+-]?[0-9]|[+-]?(inf|nan)|true|false|\\\\\\\\[|\\\\\\\\{)\\\",\\\"end\\\":\\\",|(?=])\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.array.toml\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#primatives\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#invalid\\\"}]},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#invalid\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.inline-table.begin.toml\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.inline-table.end.toml\\\"}},\\\"name\\\":\\\"meta.inline-table.toml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=\\\\\\\\S)\\\",\\\"end\\\":\\\",|(?=})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.inline-table.toml\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#key_pair\\\"}]},{\\\"include\\\":\\\"#comments\\\"}]}]}},\\\"scopeName\\\":\\\"source.toml\\\"}\"))\n\nexport default [\nlang\n]\n", "import typescript from './typescript.mjs'\nimport css from './css.mjs'\nimport javascript from './javascript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"fileTypes\\\":[\\\"js\\\",\\\"jsx\\\",\\\"ts\\\",\\\"tsx\\\",\\\"html\\\",\\\"vue\\\",\\\"svelte\\\",\\\"php\\\",\\\"res\\\"],\\\"injectTo\\\":[\\\"source.ts\\\",\\\"source.js\\\"],\\\"injectionSelector\\\":\\\"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string, L:source.vue -comment -string, L:source.svelte -comment -string, L:source.php -comment -string, L:source.rescript -comment -string\\\",\\\"injections\\\":{\\\"L:source\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"}]}},\\\"name\\\":\\\"es-tag-css\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(\\\\\\\\s?\\\\\\\\/\\\\\\\\*\\\\\\\\s?(css|inline-css)\\\\\\\\s?\\\\\\\\*\\\\\\\\/\\\\\\\\s?)(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block\\\"}},\\\"end\\\":\\\"(`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.css\\\"},{\\\"include\\\":\\\"inline.es6-htmlx#template\\\"}]},{\\\"begin\\\":\\\"(?i)(\\\\\\\\s*(css|inline-css))(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block\\\"}},\\\"end\\\":\\\"(`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.css\\\"},{\\\"include\\\":\\\"inline.es6-htmlx#template\\\"},{\\\"include\\\":\\\"string.quoted.other.template.js\\\"}]},{\\\"begin\\\":\\\"(?i)(?<=\\\\\\\\s|\\\\\\\\,|\\\\\\\\=|\\\\\\\\:|\\\\\\\\(|\\\\\\\\$\\\\\\\\()\\\\\\\\s{0,}(((\\\\\\\\/\\\\\\\\*)|(\\\\\\\\/\\\\\\\\/))\\\\\\\\s?(css|inline-css)[ ]{0,1000}\\\\\\\\*?\\\\\\\\/?)[ ]{0,1000}$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line\\\"}},\\\"end\\\":\\\"(`).*\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\G)\\\",\\\"end\\\":\\\"(`)\\\"},{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\${)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.js\\\"}]}],\\\"scopeName\\\":\\\"inline.es6-css\\\",\\\"embeddedLangs\\\":[\\\"typescript\\\",\\\"css\\\",\\\"javascript\\\"]}\"))\n\nexport default [\n...typescript,\n...css,\n...javascript,\nlang\n]\n", "import typescript from './typescript.mjs'\nimport glsl from './glsl.mjs'\nimport javascript from './javascript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"fileTypes\\\":[\\\"js\\\",\\\"jsx\\\",\\\"ts\\\",\\\"tsx\\\",\\\"html\\\",\\\"vue\\\",\\\"svelte\\\",\\\"php\\\",\\\"res\\\"],\\\"injectTo\\\":[\\\"source.ts\\\",\\\"source.js\\\"],\\\"injectionSelector\\\":\\\"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string\\\",\\\"injections\\\":{\\\"L:source\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"}]}},\\\"name\\\":\\\"es-tag-glsl\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(\\\\\\\\s?\\\\\\\\/\\\\\\\\*\\\\\\\\s?(glsl|inline-glsl)\\\\\\\\s?\\\\\\\\*\\\\\\\\/\\\\\\\\s?)(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block\\\"}},\\\"end\\\":\\\"(`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.glsl\\\"},{\\\"include\\\":\\\"inline.es6-htmlx#template\\\"}]},{\\\"begin\\\":\\\"(?i)(\\\\\\\\s*(glsl|inline-glsl))(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block\\\"}},\\\"end\\\":\\\"(`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.glsl\\\"},{\\\"include\\\":\\\"inline.es6-htmlx#template\\\"},{\\\"include\\\":\\\"string.quoted.other.template.js\\\"}]},{\\\"begin\\\":\\\"(?i)(?<=\\\\\\\\s|\\\\\\\\,|\\\\\\\\=|\\\\\\\\:|\\\\\\\\(|\\\\\\\\$\\\\\\\\()\\\\\\\\s{0,}(((\\\\\\\\/\\\\\\\\*)|(\\\\\\\\/\\\\\\\\/))\\\\\\\\s?(glsl|inline-glsl)[ ]{0,1000}\\\\\\\\*?\\\\\\\\/?)[ ]{0,1000}$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line\\\"}},\\\"end\\\":\\\"(`).*\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\G)\\\",\\\"end\\\":\\\"(`)\\\"},{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.glsl\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\${)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.js\\\"}]}],\\\"scopeName\\\":\\\"inline.es6-glsl\\\",\\\"embeddedLangs\\\":[\\\"typescript\\\",\\\"glsl\\\",\\\"javascript\\\"]}\"))\n\nexport default [\n...typescript,\n...glsl,\n...javascript,\nlang\n]\n", "import typescript from './typescript.mjs'\nimport html from './html.mjs'\nimport javascript from './javascript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"fileTypes\\\":[\\\"js\\\",\\\"jsx\\\",\\\"ts\\\",\\\"tsx\\\",\\\"html\\\",\\\"vue\\\",\\\"svelte\\\",\\\"php\\\",\\\"res\\\"],\\\"injectTo\\\":[\\\"source.ts\\\",\\\"source.js\\\"],\\\"injectionSelector\\\":\\\"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string\\\",\\\"injections\\\":{\\\"L:source\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"}]}},\\\"name\\\":\\\"es-tag-html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(\\\\\\\\s?\\\\\\\\/\\\\\\\\*\\\\\\\\s?(html|template|inline-html|inline-template)\\\\\\\\s?\\\\\\\\*\\\\\\\\/\\\\\\\\s?)(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block\\\"}},\\\"end\\\":\\\"(`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"inline.es6-htmlx#template\\\"}]},{\\\"begin\\\":\\\"(?i)(\\\\\\\\s*(html|template|inline-html|inline-template))(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block\\\"}},\\\"end\\\":\\\"(`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"inline.es6-htmlx#template\\\"},{\\\"include\\\":\\\"string.quoted.other.template.js\\\"}]},{\\\"begin\\\":\\\"(?i)(?<=\\\\\\\\s|\\\\\\\\,|\\\\\\\\=|\\\\\\\\:|\\\\\\\\(|\\\\\\\\$\\\\\\\\()\\\\\\\\s{0,}(((\\\\\\\\/\\\\\\\\*)|(\\\\\\\\/\\\\\\\\/))\\\\\\\\s?(html|template|inline-html|inline-template)[ ]{0,1000}\\\\\\\\*?\\\\\\\\/?)[ ]{0,1000}$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line\\\"}},\\\"end\\\":\\\"(`).*\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\G)\\\",\\\"end\\\":\\\"(`)\\\"},{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\${)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\$\\\\\\\\(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"}},\\\"end\\\":\\\"(`\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.js\\\"}]}],\\\"scopeName\\\":\\\"inline.es6-html\\\",\\\"embeddedLangs\\\":[\\\"typescript\\\",\\\"html\\\",\\\"javascript\\\"]}\"))\n\nexport default [\n...typescript,\n...html,\n...javascript,\nlang\n]\n", "import typescript from './typescript.mjs'\nimport sql from './sql.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"fileTypes\\\":[\\\"js\\\",\\\"jsx\\\",\\\"ts\\\",\\\"tsx\\\",\\\"html\\\",\\\"vue\\\",\\\"svelte\\\",\\\"php\\\",\\\"res\\\"],\\\"injectTo\\\":[\\\"source.ts\\\",\\\"source.js\\\"],\\\"injectionSelector\\\":\\\"L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string\\\",\\\"injections\\\":{\\\"L:source\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"}]}},\\\"name\\\":\\\"es-tag-sql\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)\\\\\\\\b(\\\\\\\\w+\\\\\\\\.sql)\\\\\\\\s*(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter\\\"}},\\\"end\\\":\\\"(`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.ts#string-character-escape\\\"},{\\\"include\\\":\\\"source.sql\\\"},{\\\"include\\\":\\\"source.plpgsql.postgres\\\"},{\\\"match\\\":\\\".\\\"}]},{\\\"begin\\\":\\\"(?i)(\\\\\\\\s?\\\\\\\\/?\\\\\\\\*?\\\\\\\\s?(sql|inline-sql)\\\\\\\\s?\\\\\\\\*?\\\\\\\\/?\\\\\\\\s?)(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block\\\"}},\\\"end\\\":\\\"(`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.ts#string-character-escape\\\"},{\\\"include\\\":\\\"source.sql\\\"},{\\\"include\\\":\\\"source.plpgsql.postgres\\\"},{\\\"match\\\":\\\".\\\"}]},{\\\"begin\\\":\\\"(?i)(?<=\\\\\\\\s|\\\\\\\\,|\\\\\\\\=|\\\\\\\\:|\\\\\\\\(|\\\\\\\\$\\\\\\\\()\\\\\\\\s{0,}(((\\\\\\\\/\\\\\\\\*)|(\\\\\\\\/\\\\\\\\/))\\\\\\\\s?(sql|inline-sql)[ ]{0,1000}\\\\\\\\*?\\\\\\\\/?)[ ]{0,1000}$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line\\\"}},\\\"end\\\":\\\"(`)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\G)\\\",\\\"end\\\":\\\"(`)\\\"},{\\\"include\\\":\\\"source.ts#template-substitution-element\\\"},{\\\"include\\\":\\\"source.ts#string-character-escape\\\"},{\\\"include\\\":\\\"source.sql\\\"},{\\\"include\\\":\\\"source.plpgsql.postgres\\\"},{\\\"match\\\":\\\".\\\"}]}],\\\"scopeName\\\":\\\"inline.es6-sql\\\",\\\"embeddedLangs\\\":[\\\"typescript\\\",\\\"sql\\\"]}\"))\n\nexport default [\n...typescript,\n...sql,\nlang\n]\n", "import xml from './xml.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"fileTypes\\\":[\\\"js\\\",\\\"jsx\\\",\\\"ts\\\",\\\"tsx\\\",\\\"html\\\",\\\"vue\\\",\\\"svelte\\\",\\\"php\\\",\\\"res\\\"],\\\"injectTo\\\":[\\\"source.ts\\\",\\\"source.js\\\"],\\\"injectionSelector\\\":\\\"L:source.js -comment -string, L:source.js -comment -string, L:source.jsx -comment -string, L:source.js.jsx -comment -string, L:source.ts -comment -string, L:source.tsx -comment -string, L:source.rescript -comment -string\\\",\\\"injections\\\":{\\\"L:source\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"}]}},\\\"name\\\":\\\"es-tag-xml\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i)(\\\\\\\\s?\\\\\\\\/\\\\\\\\*\\\\\\\\s?(xml|svg|inline-svg|inline-xml)\\\\\\\\s?\\\\\\\\*\\\\\\\\/\\\\\\\\s?)(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block\\\"}},\\\"end\\\":\\\"(`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}]},{\\\"begin\\\":\\\"(?i)(\\\\\\\\s*(xml|inline-xml))(`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.block\\\"}},\\\"end\\\":\\\"(`)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}]},{\\\"begin\\\":\\\"(?i)(?<=\\\\\\\\s|\\\\\\\\,|\\\\\\\\=|\\\\\\\\:|\\\\\\\\(|\\\\\\\\$\\\\\\\\()\\\\\\\\s{0,}(((\\\\\\\\/\\\\\\\\*)|(\\\\\\\\/\\\\\\\\/))\\\\\\\\s?(xml|svg|inline-svg|inline-xml)[ ]{0,1000}\\\\\\\\*?\\\\\\\\/?)[ ]{0,1000}$\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line\\\"}},\\\"end\\\":\\\"(`).*\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\G)\\\",\\\"end\\\":\\\"(`)\\\"},{\\\"include\\\":\\\"text.xml\\\"}]}],\\\"scopeName\\\":\\\"inline.es6-xml\\\",\\\"embeddedLangs\\\":[\\\"xml\\\"]}\"))\n\nexport default [\n...xml,\nlang\n]\n", "import typescript from './typescript.mjs'\nimport es_tag_css from './es-tag-css.mjs'\nimport es_tag_glsl from './es-tag-glsl.mjs'\nimport es_tag_html from './es-tag-html.mjs'\nimport es_tag_sql from './es-tag-sql.mjs'\nimport es_tag_xml from './es-tag-xml.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"TypeScript with Tags\\\",\\\"name\\\":\\\"ts-tags\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}],\\\"scopeName\\\":\\\"source.ts.tags\\\",\\\"embeddedLangs\\\":[\\\"typescript\\\",\\\"es-tag-css\\\",\\\"es-tag-glsl\\\",\\\"es-tag-html\\\",\\\"es-tag-sql\\\",\\\"es-tag-xml\\\"],\\\"aliases\\\":[\\\"lit\\\"]}\"))\n\nexport default [\n...typescript,\n...es_tag_css,\n...es_tag_glsl,\n...es_tag_html,\n...es_tag_sql,\n...es_tag_xml,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"TSV\\\",\\\"fileTypes\\\":[\\\"tsv\\\",\\\"tab\\\"],\\\"name\\\":\\\"tsv\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"rainbow1\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.rainbow2\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.rainbow3\\\"},\\\"4\\\":{\\\"name\\\":\\\"comment.rainbow4\\\"},\\\"5\\\":{\\\"name\\\":\\\"string.rainbow5\\\"},\\\"6\\\":{\\\"name\\\":\\\"variable.parameter.rainbow6\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.rainbow7\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.type.rainbow8\\\"},\\\"9\\\":{\\\"name\\\":\\\"markup.bold.rainbow9\\\"},\\\"10\\\":{\\\"name\\\":\\\"invalid.rainbow10\\\"}},\\\"match\\\":\\\"([^\\\\\\\\t]*\\\\\\\\t?)([^\\\\\\\\t]*\\\\\\\\t?)([^\\\\\\\\t]*\\\\\\\\t?)([^\\\\\\\\t]*\\\\\\\\t?)([^\\\\\\\\t]*\\\\\\\\t?)([^\\\\\\\\t]*\\\\\\\\t?)([^\\\\\\\\t]*\\\\\\\\t?)([^\\\\\\\\t]*\\\\\\\\t?)([^\\\\\\\\t]*\\\\\\\\t?)([^\\\\\\\\t]*\\\\\\\\t?)\\\",\\\"name\\\":\\\"rainbowgroup\\\"}],\\\"scopeName\\\":\\\"text.tsv\\\"}\"))\n\nexport default [\nlang\n]\n", "import css from './css.mjs'\nimport javascript from './javascript.mjs'\nimport scss from './scss.mjs'\nimport php from './php.mjs'\nimport python from './python.mjs'\nimport ruby from './ruby.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Twig\\\",\\\"fileTypes\\\":[\\\"twig\\\",\\\"html.twig\\\"],\\\"firstLineMatch\\\":\\\"<!(?i:DOCTYPE)|<(?i:html)|<\\\\\\\\?(?i:php)|\\\\\\\\{\\\\\\\\{|\\\\\\\\{%|\\\\\\\\{#\\\",\\\"foldingStartMarker\\\":\\\"(<(?i:body|div|dl|fieldset|form|head|li|ol|script|select|style|table|tbody|tfoot|thead|tr|ul)\\\\\\\\b.*?>|<!--(?!.*--\\\\\\\\s*>)|^<!--\\\\\\\\ \\\\\\\\#tminclude\\\\\\\\ (?>.*?-->)$|\\\\\\\\{%\\\\\\\\s+(autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim))\\\",\\\"foldingStopMarker\\\":\\\"(</(?i:body|div|dl|fieldset|form|head|li|ol|script|select|style|table|tbody|tfoot|thead|tr|ul)>|^(?!.*?<!--).*?--\\\\\\\\s*>|^<!--\\\\\\\\ end\\\\\\\\ tminclude\\\\\\\\ -->$|\\\\\\\\{%\\\\\\\\s+end(autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim))\\\",\\\"name\\\":\\\"twig\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)([a-zA-Z0-9:]++)(?=[^>]*></\\\\\\\\2>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(>(<)/)(\\\\\\\\2)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.scope.between-tag-pair.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"name\\\":\\\"meta.tag.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(<\\\\\\\\?)(xml)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.xml.html\\\"}},\\\"end\\\":\\\"(\\\\\\\\?>)\\\",\\\"name\\\":\\\"meta.tag.preprocessor.xml.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-generic-attribute\\\"},{\\\"include\\\":\\\"#string-double-quoted\\\"},{\\\"include\\\":\\\"#string-single-quoted\\\"}]},{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html\\\"}},\\\"end\\\":\\\"--\\\\\\\\s*>\\\",\\\"name\\\":\\\"comment.block.html\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.html\\\"},{\\\"include\\\":\\\"#embedded-code\\\"}]},{\\\"begin\\\":\\\"<!\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"meta.tag.sgml.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i:DOCTYPE)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.doctype.html\\\"}},\\\"end\\\":\\\"(?=>)\\\",\\\"name\\\":\\\"meta.tag.sgml.doctype.html\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"[^\\\\\\\">]*\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.doctype.identifiers-and-DTDs.html\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[CDATA\\\\\\\\[\\\",\\\"end\\\":\\\"]](?=>)\\\",\\\"name\\\":\\\"constant.other.inline-data.html\\\"},{\\\"match\\\":\\\"(\\\\\\\\s*)(?!--|>)\\\\\\\\S(\\\\\\\\s*)\\\",\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.html\\\"}]},{\\\"include\\\":\\\"#embedded-code\\\"},{\\\"begin\\\":\\\"(?:^\\\\\\\\s+)?(<)((?i:style))\\\\\\\\b(?![^>]*/>)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.style.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\"(</)((?i:style))(>)(?:\\\\\\\\s*\\\\\\\\n)?\\\",\\\"name\\\":\\\"source.css.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\"(?=</(?i:style))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#embedded-code\\\"},{\\\"include\\\":\\\"source.css\\\"}]}]},{\\\"begin\\\":\\\"(?:^\\\\\\\\s+)?(<)((?i:script))\\\\\\\\b(?![^>]*/>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.script.html\\\"}},\\\"end\\\":\\\"(?<=</(script|SCRIPT))(>)(?:\\\\\\\\s*\\\\\\\\n)?\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"name\\\":\\\"source.js.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<!</(?:script|SCRIPT))(>)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.script.html\\\"}},\\\"end\\\":\\\"(</)((?i:script))\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"match\\\":\\\"(//).*?((?=</script)|$\\\\\\\\n?)\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.js\\\"}},\\\"end\\\":\\\"\\\\\\\\*/|(?=</script)\\\",\\\"name\\\":\\\"comment.block.js\\\"},{\\\"include\\\":\\\"#php\\\"},{\\\"include\\\":\\\"#twig-print-tag\\\"},{\\\"include\\\":\\\"#twig-statement-tag\\\"},{\\\"include\\\":\\\"#twig-comment-tag\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"(?ix) # Enable free spacing mode, case insensitive\\\\n # Make sure our opening js tag has word boundaries\\\\n (?<=\\\\\\\\{\\\\\\\\%\\\\\\\\sjs\\\\\\\\s\\\\\\\\%\\\\\\\\}|\\\\\\\\{\\\\\\\\%\\\\\\\\sincludejs\\\\\\\\s\\\\\\\\%\\\\\\\\})\\\\n \\\",\\\"comment\\\":\\\"Add JS support to set tags that use the pattern \\\\\\\"css\\\\\\\" in their name\\\",\\\"end\\\":\\\"(?ix)(?=\\\\\\\\{\\\\\\\\%\\\\\\\\sendjs\\\\\\\\s\\\\\\\\%\\\\\\\\}|\\\\\\\\{\\\\\\\\%\\\\\\\\sendincludejs\\\\\\\\s\\\\\\\\%\\\\\\\\})\\\",\\\"name\\\":\\\"source.js.embedded.twig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(?ix) # Enable free spacing mode, case insensitive\\\\n (?<=\\\\\\\\{\\\\\\\\%\\\\\\\\scss\\\\\\\\s\\\\\\\\%\\\\\\\\}|\\\\\\\\{\\\\\\\\%\\\\\\\\sincludecss\\\\\\\\s\\\\\\\\%\\\\\\\\}|\\\\\\\\{\\\\\\\\%\\\\\\\\sincludehirescss\\\\\\\\s\\\\\\\\%\\\\\\\\})\\\\n \\\",\\\"comment\\\":\\\"Add CSS support to set tags that use the pattern \\\\\\\"css\\\\\\\" in their name\\\",\\\"end\\\":\\\"(?ix)(?=\\\\\\\\{\\\\\\\\%\\\\\\\\sendcss\\\\\\\\s\\\\\\\\%\\\\\\\\}|\\\\\\\\{\\\\\\\\%\\\\\\\\sendincludecss\\\\\\\\s\\\\\\\\%\\\\\\\\}|\\\\\\\\{\\\\\\\\%\\\\\\\\sendincludehirescss\\\\\\\\s\\\\\\\\%\\\\\\\\})\\\",\\\"name\\\":\\\"source.css.embedded.twig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"(?ix) # Enable free spacing mode, case insensitive\\\\n (?<=\\\\\\\\{\\\\\\\\%\\\\\\\\sscss\\\\\\\\s\\\\\\\\%\\\\\\\\}|\\\\\\\\{\\\\\\\\%\\\\\\\\sincludescss\\\\\\\\s\\\\\\\\%\\\\\\\\}|\\\\\\\\{\\\\\\\\%\\\\\\\\sincludehiresscss\\\\\\\\s\\\\\\\\%\\\\\\\\})\\\\n \\\",\\\"comment\\\":\\\"Add SCSS support to set tags that use the pattern \\\\\\\"scss\\\\\\\" in their name\\\",\\\"end\\\":\\\"(?ix)(?=\\\\\\\\{\\\\\\\\%\\\\\\\\sendscss\\\\\\\\s\\\\\\\\%\\\\\\\\}|\\\\\\\\{\\\\\\\\%\\\\\\\\sendincludescss\\\\\\\\s\\\\\\\\%\\\\\\\\}|\\\\\\\\{\\\\\\\\%\\\\\\\\sendincludehiresscss\\\\\\\\s\\\\\\\\%\\\\\\\\})\\\",\\\"name\\\":\\\"source.css.scss.embedded.twig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.scss\\\"}]},{\\\"begin\\\":\\\"(</?)((?i:body|head|html)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.structure.any.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"name\\\":\\\"meta.tag.structure.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)((?i:address|blockquote|dd|div|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.block.any.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.block.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.inline.any.html\\\"}},\\\"end\\\":\\\"((?: ?/)?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.inline.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)([a-zA-Z0-9:]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"include\\\":\\\"#entities\\\"},{\\\"match\\\":\\\"<>\\\",\\\"name\\\":\\\"invalid.illegal.incomplete.html\\\"},{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"},{\\\"include\\\":\\\"#twig-print-tag\\\"},{\\\"include\\\":\\\"#twig-statement-tag\\\"},{\\\"include\\\":\\\"#twig-comment-tag\\\"}],\\\"repository\\\":{\\\"embedded-code\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#ruby\\\"},{\\\"include\\\":\\\"#php\\\"},{\\\"include\\\":\\\"#twig-print-tag\\\"},{\\\"include\\\":\\\"#twig-statement-tag\\\"},{\\\"include\\\":\\\"#twig-comment-tag\\\"},{\\\"include\\\":\\\"#python\\\"}]},\\\"entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"}},\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.html\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"invalid.illegal.bad-ampersand.html\\\"}]},\\\"php\\\":{\\\"begin\\\":\\\"(?=(^\\\\\\\\s*)?<\\\\\\\\?)\\\",\\\"end\\\":\\\"(?!(^\\\\\\\\s*)?<\\\\\\\\?)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.php\\\"}]},\\\"python\\\":{\\\"begin\\\":\\\"(?:^\\\\\\\\s*)<\\\\\\\\?python(?!.*\\\\\\\\?>)\\\",\\\"end\\\":\\\"\\\\\\\\?>(?:\\\\\\\\s*$\\\\\\\\n)?\\\",\\\"name\\\":\\\"source.python.embedded.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]},\\\"ruby\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"<%+#\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.erb\\\"}},\\\"end\\\":\\\"%>\\\",\\\"name\\\":\\\"comment.block.erb\\\"},{\\\"begin\\\":\\\"<%+(?!>)=?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.ruby\\\"}},\\\"end\\\":\\\"-?%>\\\",\\\"name\\\":\\\"source.ruby.embedded.html\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby\\\"}},\\\"match\\\":\\\"(#).*?(?=-?%>)\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby\\\"},{\\\"include\\\":\\\"source.ruby\\\"}]},{\\\"begin\\\":\\\"<\\\\\\\\?r(?!>)=?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.ruby.nitro\\\"}},\\\"end\\\":\\\"-?\\\\\\\\?>\\\",\\\"name\\\":\\\"source.ruby.nitro.embedded.html\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ruby.nitro\\\"}},\\\"match\\\":\\\"(#).*?(?=-?\\\\\\\\?>)\\\",\\\"name\\\":\\\"comment.line.number-sign.ruby.nitro\\\"},{\\\"include\\\":\\\"source.ruby\\\"}]}]},\\\"string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.double.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#embedded-code\\\"},{\\\"include\\\":\\\"#entities\\\"}]},\\\"string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.single.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#embedded-code\\\"},{\\\"include\\\":\\\"#entities\\\"}]},\\\"tag-generic-attribute\\\":{\\\"match\\\":\\\"\\\\\\\\b([a-zA-Z\\\\\\\\-:]+)\\\",\\\"name\\\":\\\"entity.other.attribute-name.html\\\"},\\\"tag-id-attribute\\\":{\\\"begin\\\":\\\"\\\\\\\\b(id)\\\\\\\\b\\\\\\\\s*(=)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.id.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html\\\"}},\\\"end\\\":\\\"(?<='|\\\\\\\")\\\",\\\"name\\\":\\\"meta.attribute-with-value.id.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"contentName\\\":\\\"meta.toc-list.id.html\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.double.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#embedded-code\\\"},{\\\"include\\\":\\\"#entities\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"contentName\\\":\\\"meta.toc-list.id.html\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.single.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#embedded-code\\\"},{\\\"include\\\":\\\"#entities\\\"}]}]},\\\"tag-stuff\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-id-attribute\\\"},{\\\"include\\\":\\\"#tag-generic-attribute\\\"},{\\\"include\\\":\\\"#string-double-quoted\\\"},{\\\"include\\\":\\\"#string-single-quoted\\\"},{\\\"include\\\":\\\"#embedded-code\\\"}]},\\\"twig-arrays\\\":{\\\"begin\\\":\\\"(?<=[\\\\\\\\s\\\\\\\\(\\\\\\\\{\\\\\\\\[:,])\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.twig\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.array.end.twig\\\"}},\\\"name\\\":\\\"meta.array.twig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#twig-arrays\\\"},{\\\"include\\\":\\\"#twig-hashes\\\"},{\\\"include\\\":\\\"#twig-constants\\\"},{\\\"include\\\":\\\"#twig-operators\\\"},{\\\"include\\\":\\\"#twig-strings\\\"},{\\\"include\\\":\\\"#twig-functions-warg\\\"},{\\\"include\\\":\\\"#twig-functions\\\"},{\\\"include\\\":\\\"#twig-macros\\\"},{\\\"include\\\":\\\"#twig-objects\\\"},{\\\"include\\\":\\\"#twig-properties\\\"},{\\\"include\\\":\\\"#twig-filters-warg\\\"},{\\\"include\\\":\\\"#twig-filters\\\"},{\\\"include\\\":\\\"#twig-filters-warg-ud\\\"},{\\\"include\\\":\\\"#twig-filters-ud\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.object.twig\\\"}]},\\\"twig-comment-tag\\\":{\\\"begin\\\":\\\"\\\\\\\\{#-?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.twig\\\"}},\\\"end\\\":\\\"-?#\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.twig\\\"}},\\\"name\\\":\\\"comment.block.twig\\\"},\\\"twig-constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(?<=[\\\\\\\\s\\\\\\\\[\\\\\\\\(\\\\\\\\{:,])(?:true|false|null|none)(?=[\\\\\\\\s\\\\\\\\)\\\\\\\\]\\\\\\\\}\\\\\\\\,])\\\",\\\"name\\\":\\\"constant.language.twig\\\"},{\\\"match\\\":\\\"(?<=[\\\\\\\\s\\\\\\\\[\\\\\\\\(\\\\\\\\{:,]|\\\\\\\\.\\\\\\\\.|\\\\\\\\*\\\\\\\\*)[0-9]+(?:\\\\\\\\.[0-9]+)?(?=[\\\\\\\\s\\\\\\\\)\\\\\\\\]\\\\\\\\}\\\\\\\\,]|\\\\\\\\.\\\\\\\\.|\\\\\\\\*\\\\\\\\*)\\\",\\\"name\\\":\\\"constant.numeric.twig\\\"}]},\\\"twig-filters\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.twig\\\"}},\\\"match\\\":\\\"(?<=(?:[a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\]\\\\\\\\)\\\\\\\\'\\\\\\\\\\\\\\\"]\\\\\\\\|)|\\\\\\\\{%\\\\\\\\sfilter\\\\\\\\s)(abs|capitalize|e(?:scape)?|first|join|(?:json|url)_encode|keys|last|length|lower|nl2br|number_format|raw|reverse|round|sort|striptags|title|trim|upper)(?=[\\\\\\\\s\\\\\\\\|\\\\\\\\]\\\\\\\\}\\\\\\\\):,]|\\\\\\\\.\\\\\\\\.|\\\\\\\\*\\\\\\\\*)\\\"},\\\"twig-filters-ud\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.function-call.other.twig\\\"}},\\\"match\\\":\\\"(?<=(?:[a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\]\\\\\\\\)\\\\\\\\'\\\\\\\\\\\\\\\"]\\\\\\\\|)|\\\\\\\\{%\\\\\\\\sfilter\\\\\\\\s)([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)\\\"},\\\"twig-filters-warg\\\":{\\\"begin\\\":\\\"(?<=(?:[a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\]\\\\\\\\)\\\\\\\\'\\\\\\\\\\\\\\\"]\\\\\\\\|)|\\\\\\\\{%\\\\\\\\sfilter\\\\\\\\s)(batch|convert_encoding|date|date_modify|default|e(?:scape)?|format|join|merge|number_format|replace|round|slice|split|trim)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.twig\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.twig\\\"}},\\\"contentName\\\":\\\"meta.function.arguments.twig\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.twig\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#twig-constants\\\"},{\\\"include\\\":\\\"#twig-operators\\\"},{\\\"include\\\":\\\"#twig-functions-warg\\\"},{\\\"include\\\":\\\"#twig-functions\\\"},{\\\"include\\\":\\\"#twig-macros\\\"},{\\\"include\\\":\\\"#twig-objects\\\"},{\\\"include\\\":\\\"#twig-properties\\\"},{\\\"include\\\":\\\"#twig-filters-warg\\\"},{\\\"include\\\":\\\"#twig-filters\\\"},{\\\"include\\\":\\\"#twig-filters-warg-ud\\\"},{\\\"include\\\":\\\"#twig-filters-ud\\\"},{\\\"include\\\":\\\"#twig-strings\\\"},{\\\"include\\\":\\\"#twig-arrays\\\"},{\\\"include\\\":\\\"#twig-hashes\\\"}]},\\\"twig-filters-warg-ud\\\":{\\\"begin\\\":\\\"(?<=(?:[a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\]\\\\\\\\)\\\\\\\\'\\\\\\\\\\\\\\\"]\\\\\\\\|)|\\\\\\\\{%\\\\\\\\sfilter\\\\\\\\s)([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.function-call.other.twig\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.twig\\\"}},\\\"contentName\\\":\\\"meta.function.arguments.twig\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.twig\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#twig-constants\\\"},{\\\"include\\\":\\\"#twig-functions-warg\\\"},{\\\"include\\\":\\\"#twig-functions\\\"},{\\\"include\\\":\\\"#twig-macros\\\"},{\\\"include\\\":\\\"#twig-objects\\\"},{\\\"include\\\":\\\"#twig-properties\\\"},{\\\"include\\\":\\\"#twig-filters-warg\\\"},{\\\"include\\\":\\\"#twig-filters\\\"},{\\\"include\\\":\\\"#twig-filters-warg-ud\\\"},{\\\"include\\\":\\\"#twig-filters-ud\\\"},{\\\"include\\\":\\\"#twig-strings\\\"},{\\\"include\\\":\\\"#twig-arrays\\\"},{\\\"include\\\":\\\"#twig-hashes\\\"}]},\\\"twig-functions\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.twig\\\"}},\\\"match\\\":\\\"(?<=is\\\\\\\\s)(defined|empty|even|iterable|odd)\\\"},\\\"twig-functions-warg\\\":{\\\"begin\\\":\\\"(?<=[\\\\\\\\s\\\\\\\\(\\\\\\\\[\\\\\\\\{:,])(attribute|block|constant|cycle|date|divisible by|dump|include|max|min|parent|random|range|same as|source|template_from_string)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.twig\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.twig\\\"}},\\\"contentName\\\":\\\"meta.function.arguments.twig\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.twig\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#twig-constants\\\"},{\\\"include\\\":\\\"#twig-functions-warg\\\"},{\\\"include\\\":\\\"#twig-functions\\\"},{\\\"include\\\":\\\"#twig-macros\\\"},{\\\"include\\\":\\\"#twig-objects\\\"},{\\\"include\\\":\\\"#twig-properties\\\"},{\\\"include\\\":\\\"#twig-filters-warg\\\"},{\\\"include\\\":\\\"#twig-filters\\\"},{\\\"include\\\":\\\"#twig-filters-warg-ud\\\"},{\\\"include\\\":\\\"#twig-filters-ud\\\"},{\\\"include\\\":\\\"#twig-strings\\\"},{\\\"include\\\":\\\"#twig-arrays\\\"}]},\\\"twig-hashes\\\":{\\\"begin\\\":\\\"(?<=[\\\\\\\\s\\\\\\\\(\\\\\\\\{\\\\\\\\[:,])\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.hash.begin.twig\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.hash.end.twig\\\"}},\\\"name\\\":\\\"meta.hash.twig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#twig-hashes\\\"},{\\\"include\\\":\\\"#twig-arrays\\\"},{\\\"include\\\":\\\"#twig-constants\\\"},{\\\"include\\\":\\\"#twig-operators\\\"},{\\\"include\\\":\\\"#twig-strings\\\"},{\\\"include\\\":\\\"#twig-functions-warg\\\"},{\\\"include\\\":\\\"#twig-functions\\\"},{\\\"include\\\":\\\"#twig-macros\\\"},{\\\"include\\\":\\\"#twig-objects\\\"},{\\\"include\\\":\\\"#twig-properties\\\"},{\\\"include\\\":\\\"#twig-filters-warg\\\"},{\\\"include\\\":\\\"#twig-filters\\\"},{\\\"include\\\":\\\"#twig-filters-warg-ud\\\"},{\\\"include\\\":\\\"#twig-filters-ud\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.twig\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.object.twig\\\"}]},\\\"twig-keywords\\\":{\\\"match\\\":\\\"(?<=\\\\\\\\s)((?:end)?(?:autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim)|as|do|else|elseif|extends|flush|from|ignore missing|import|include|only|use|with)(?=\\\\\\\\s)\\\",\\\"name\\\":\\\"keyword.control.twig\\\"},\\\"twig-macros\\\":{\\\"begin\\\":\\\"(?<=[\\\\\\\\s\\\\\\\\(\\\\\\\\[\\\\\\\\{:,])([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(?:(\\\\\\\\.)([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*))?(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.function-call.twig\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.property.twig\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.property.twig\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.twig\\\"}},\\\"contentName\\\":\\\"meta.function.arguments.twig\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.twig\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#twig-constants\\\"},{\\\"include\\\":\\\"#twig-operators\\\"},{\\\"include\\\":\\\"#twig-functions-warg\\\"},{\\\"include\\\":\\\"#twig-functions\\\"},{\\\"include\\\":\\\"#twig-macros\\\"},{\\\"include\\\":\\\"#twig-objects\\\"},{\\\"include\\\":\\\"#twig-properties\\\"},{\\\"include\\\":\\\"#twig-filters-warg\\\"},{\\\"include\\\":\\\"#twig-filters\\\"},{\\\"include\\\":\\\"#twig-filters-warg-ud\\\"},{\\\"include\\\":\\\"#twig-filters-ud\\\"},{\\\"include\\\":\\\"#twig-strings\\\"},{\\\"include\\\":\\\"#twig-arrays\\\"},{\\\"include\\\":\\\"#twig-hashes\\\"}]},\\\"twig-objects\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.twig\\\"}},\\\"match\\\":\\\"(?<=[\\\\\\\\s\\\\\\\\{\\\\\\\\[\\\\\\\\(:,])([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(?=[\\\\\\\\s\\\\\\\\}\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\)\\\\\\\\.\\\\\\\\|,:])\\\"},\\\"twig-operators\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.twig\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\s)(\\\\\\\\+|-|//?|%|\\\\\\\\*\\\\\\\\*?)(?=\\\\\\\\s)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.twig\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\s)(=|~)(?=\\\\\\\\s)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.bitwise.twig\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\s)(b-(?:and|or|xor))(?=\\\\\\\\s)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.comparison.twig\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\s)((?:!|=)=|<=?|>=?|(?:not )?in|is(?: not)?|(?:ends|starts) with|matches)(?=\\\\\\\\s)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.twig\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\s)(\\\\\\\\?|:|\\\\\\\\?:|\\\\\\\\?\\\\\\\\?|and|not|or)(?=\\\\\\\\s)\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.other.twig\\\"}},\\\"match\\\":\\\"(?<=[a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\]\\\\\\\\)'\\\\\\\"])\\\\\\\\.\\\\\\\\.(?=[a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}'\\\\\\\"])\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.other.twig\\\"}},\\\"match\\\":\\\"(?<=[a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\]\\\\\\\\}\\\\\\\\)'\\\\\\\"])\\\\\\\\|(?=[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}])\\\"}]},\\\"twig-print-tag\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\\\\\\{-?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tag.twig\\\"}},\\\"end\\\":\\\"-?\\\\\\\\}\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tag.twig\\\"}},\\\"name\\\":\\\"meta.tag.template.value.twig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#twig-constants\\\"},{\\\"include\\\":\\\"#twig-operators\\\"},{\\\"include\\\":\\\"#twig-functions-warg\\\"},{\\\"include\\\":\\\"#twig-functions\\\"},{\\\"include\\\":\\\"#twig-macros\\\"},{\\\"include\\\":\\\"#twig-objects\\\"},{\\\"include\\\":\\\"#twig-properties\\\"},{\\\"include\\\":\\\"#twig-filters-warg\\\"},{\\\"include\\\":\\\"#twig-filters\\\"},{\\\"include\\\":\\\"#twig-filters-warg-ud\\\"},{\\\"include\\\":\\\"#twig-filters-ud\\\"},{\\\"include\\\":\\\"#twig-strings\\\"},{\\\"include\\\":\\\"#twig-arrays\\\"},{\\\"include\\\":\\\"#twig-hashes\\\"}]},\\\"twig-properties\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.property.twig\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.property.twig\\\"}},\\\"match\\\":\\\"(?<=[a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}])(\\\\\\\\.)([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(?=[\\\\\\\\.\\\\\\\\s\\\\\\\\|\\\\\\\\[\\\\\\\\)\\\\\\\\]\\\\\\\\}:,])\\\"},{\\\"begin\\\":\\\"(?<=[a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}])(\\\\\\\\.)([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.property.twig\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.property.twig\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.twig\\\"}},\\\"contentName\\\":\\\"meta.function.arguments.twig\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.twig\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#twig-constants\\\"},{\\\"include\\\":\\\"#twig-functions-warg\\\"},{\\\"include\\\":\\\"#twig-functions\\\"},{\\\"include\\\":\\\"#twig-macros\\\"},{\\\"include\\\":\\\"#twig-objects\\\"},{\\\"include\\\":\\\"#twig-properties\\\"},{\\\"include\\\":\\\"#twig-filters-warg\\\"},{\\\"include\\\":\\\"#twig-filters\\\"},{\\\"include\\\":\\\"#twig-filters-warg-ud\\\"},{\\\"include\\\":\\\"#twig-filters-ud\\\"},{\\\"include\\\":\\\"#twig-strings\\\"},{\\\"include\\\":\\\"#twig-arrays\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.twig\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.property.twig\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.section.array.end.twig\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.twig\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.property.twig\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.section.array.end.twig\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.section.array.begin.twig\\\"},\\\"8\\\":{\\\"name\\\":\\\"variable.other.property.twig\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.section.array.end.twig\\\"}},\\\"match\\\":\\\"(?<=[a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}\\\\\\\\]])(?:(\\\\\\\\[)('[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*')(\\\\\\\\])|(\\\\\\\\[)(\\\\\\\"[a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*\\\\\\\")(\\\\\\\\])|(\\\\\\\\[)([a-zA-Z_\\\\\\\\x{7f}-\\\\\\\\x{ff}][a-zA-Z0-9_\\\\\\\\x{7f}-\\\\\\\\x{ff}]*)(\\\\\\\\]))\\\"}]},\\\"twig-statement-tag\\\":{\\\"begin\\\":\\\"\\\\\\\\{%-?\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tag.twig\\\"}},\\\"end\\\":\\\"-?%\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.tag.twig\\\"}},\\\"name\\\":\\\"meta.tag.template.block.twig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#twig-constants\\\"},{\\\"include\\\":\\\"#twig-keywords\\\"},{\\\"include\\\":\\\"#twig-operators\\\"},{\\\"include\\\":\\\"#twig-functions-warg\\\"},{\\\"include\\\":\\\"#twig-functions\\\"},{\\\"include\\\":\\\"#twig-macros\\\"},{\\\"include\\\":\\\"#twig-filters-warg\\\"},{\\\"include\\\":\\\"#twig-filters\\\"},{\\\"include\\\":\\\"#twig-filters-warg-ud\\\"},{\\\"include\\\":\\\"#twig-filters-ud\\\"},{\\\"include\\\":\\\"#twig-objects\\\"},{\\\"include\\\":\\\"#twig-properties\\\"},{\\\"include\\\":\\\"#twig-strings\\\"},{\\\"include\\\":\\\"#twig-arrays\\\"},{\\\"include\\\":\\\"#twig-hashes\\\"}]},\\\"twig-strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:(?<!\\\\\\\\\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\))'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.twig\\\"}},\\\"end\\\":\\\"(?:(?<!\\\\\\\\\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\))'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.twig\\\"}},\\\"name\\\":\\\"string.quoted.single.twig\\\"},{\\\"begin\\\":\\\"(?:(?<!\\\\\\\\\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\))\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.twig\\\"}},\\\"end\\\":\\\"(?:(?<!\\\\\\\\\\\\\\\\)|(?<=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\))\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.twig\\\"}},\\\"name\\\":\\\"string.quoted.double.twig\\\"}]}},\\\"scopeName\\\":\\\"text.html.twig\\\",\\\"embeddedLangs\\\":[\\\"css\\\",\\\"javascript\\\",\\\"scss\\\",\\\"php\\\",\\\"python\\\",\\\"ruby\\\"]}\"))\n\nexport default [\n...css,\n...javascript,\n...scss,\n...php,\n...python,\n...ruby,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"TypeSpec\\\",\\\"fileTypes\\\":[\\\"tsp\\\"],\\\"name\\\":\\\"typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}],\\\"repository\\\":{\\\"alias-id\\\":{\\\"begin\\\":\\\"(=)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.assignment.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.alias-id.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"alias-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(alias)\\\\\\\\b\\\\\\\\s+(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.alias-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#alias-id\\\"},{\\\"include\\\":\\\"#type-parameters\\\"}]},\\\"augment-decorator-statement\\\":{\\\"begin\\\":\\\"((@@)\\\\\\\\b[_$[:alpha:]](?:[_$[:alnum:]]|\\\\\\\\.[_$[:alpha:]])*\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.tsp\\\"}},\\\"end\\\":\\\"(?=[_$[:alpha:]])|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.augment-decorator-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#parenthesized-expression\\\"}]},\\\"block-comment\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.tsp\\\"},\\\"boolean-literal\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.tsp\\\"},\\\"callExpression\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[_$[:alpha:]](?:[_$[:alnum:]]|\\\\\\\\.[_$[:alpha:]])*\\\\\\\\b)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.tsp\\\"}},\\\"name\\\":\\\"meta.callExpression.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"const-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(const)\\\\\\\\b\\\\\\\\s+(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.name.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.const-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#operator-assignment\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"decorator\\\":{\\\"begin\\\":\\\"((@)\\\\\\\\b[_$[:alpha:]](?:[_$[:alnum:]]|\\\\\\\\.[_$[:alpha:]])*\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.tsp\\\"}},\\\"end\\\":\\\"(?=[_$[:alpha:]])|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.decorator.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#parenthesized-expression\\\"}]},\\\"decorator-declaration-statement\\\":{\\\"begin\\\":\\\"(?:(extern)\\\\\\\\s+)?\\\\\\\\b(dec)\\\\\\\\b\\\\\\\\s+(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.decorator-declaration-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#operation-parameters\\\"}]},\\\"directive\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(#\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.directive.name.tsp\\\"}},\\\"end\\\":\\\"$|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.directive.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-literal\\\"},{\\\"include\\\":\\\"#identifier-expression\\\"}]},\\\"doc-comment\\\":{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.block.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.block.tsp\\\"}},\\\"name\\\":\\\"comment.block.tsp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#doc-comment-block\\\"}]},\\\"doc-comment-block\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#doc-comment-param\\\"},{\\\"include\\\":\\\"#doc-comment-return-tag\\\"},{\\\"include\\\":\\\"#doc-comment-unknown-tag\\\"}]},\\\"doc-comment-param\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.tag.tspdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.tag.tspdoc\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.name.tsp\\\"}},\\\"match\\\":\\\"((@)(?:param|template|prop))\\\\\\\\s+(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\\\\\\b\\\",\\\"name\\\":\\\"comment.block.tsp\\\"},\\\"doc-comment-return-tag\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.tag.tspdoc\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.tag.tspdoc\\\"}},\\\"match\\\":\\\"((@)(?:returns))\\\\\\\\b\\\",\\\"name\\\":\\\"comment.block.tsp\\\"},\\\"doc-comment-unknown-tag\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.tsp\\\"}},\\\"match\\\":\\\"((@)(?:\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`))\\\\\\\\b\\\",\\\"name\\\":\\\"comment.block.tsp\\\"},\\\"else-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\b(else)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"((?<=\\\\\\\\})|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.else-expression.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#projection-expression\\\"},{\\\"include\\\":\\\"#projection-body\\\"}]},\\\"else-if-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\b(else)\\\\\\\\s+(if)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"((?<=\\\\\\\\})|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.else-if-expression.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#projection-expression\\\"},{\\\"include\\\":\\\"#projection-body\\\"}]},\\\"enum-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.tsp\\\"}},\\\"name\\\":\\\"meta.enum-body.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#enum-member\\\"},{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#directive\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"enum-member\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\\\\\\s*(:?))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.name.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.enum-member.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#type-annotation\\\"}]},\\\"enum-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(enum)\\\\\\\\b\\\\\\\\s+(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.tsp\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.enum-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#enum-body\\\"}]},\\\"escape-character\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.tsp\\\"},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#directive\\\"},{\\\"include\\\":\\\"#parenthesized-expression\\\"},{\\\"include\\\":\\\"#valueof\\\"},{\\\"include\\\":\\\"#typeof\\\"},{\\\"include\\\":\\\"#type-arguments\\\"},{\\\"include\\\":\\\"#object-literal\\\"},{\\\"include\\\":\\\"#tuple-literal\\\"},{\\\"include\\\":\\\"#tuple-expression\\\"},{\\\"include\\\":\\\"#model-expression\\\"},{\\\"include\\\":\\\"#callExpression\\\"},{\\\"include\\\":\\\"#identifier-expression\\\"}]},\\\"function-call\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.tsp\\\"}},\\\"name\\\":\\\"meta.function-call.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"function-declaration-statement\\\":{\\\"begin\\\":\\\"(?:(extern)\\\\\\\\s+)?\\\\\\\\b(fn)\\\\\\\\b\\\\\\\\s+(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.function-declaration-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#operation-parameters\\\"},{\\\"include\\\":\\\"#type-annotation\\\"}]},\\\"identifier-expression\\\":{\\\"match\\\":\\\"\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`\\\",\\\"name\\\":\\\"entity.name.type.tsp\\\"},\\\"if-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\b(if)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"((?<=\\\\\\\\})|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.if-expression.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#projection-expression\\\"},{\\\"include\\\":\\\"#projection-body\\\"}]},\\\"import-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(import)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.import-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"}]},\\\"interface-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.tsp\\\"}},\\\"name\\\":\\\"meta.interface-body.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#directive\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#interface-member\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"interface-heritage\\\":{\\\"begin\\\":\\\"\\\\\\\\b(extends)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"((?=\\\\\\\\{)|(?=;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.interface-heritage.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"interface-member\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b(op)\\\\\\\\b\\\\\\\\s+)?(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.interface-member.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#operation-signature\\\"}]},\\\"interface-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(interface)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.interface-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#interface-heritage\\\"},{\\\"include\\\":\\\"#interface-body\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"line-comment\\\":{\\\"match\\\":\\\"//.*$\\\",\\\"name\\\":\\\"comment.line.double-slash.tsp\\\"},\\\"model-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.tsp\\\"}},\\\"name\\\":\\\"meta.model-expression.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#model-property\\\"},{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#directive\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#spread-operator\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"model-heritage\\\":{\\\"begin\\\":\\\"\\\\\\\\b(extends|is)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"((?=\\\\\\\\{)|(?=;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.model-heritage.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"model-property\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)|(\\\\\\\\\\\\\\\"(?:[^\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\\\\\\\\\\\\\"))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.name.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.quoted.double.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.model-property.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#operator-assignment\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"model-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(model)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.model-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#model-heritage\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"namespace-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.tsp\\\"}},\\\"name\\\":\\\"meta.namespace-body.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"}]},\\\"namespace-name\\\":{\\\"begin\\\":\\\"(?=[_$[:alpha:]])\\\",\\\"end\\\":\\\"((?=\\\\\\\\{)|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.namespace-name.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#identifier-expression\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"namespace-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(namespace)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"((?<=\\\\\\\\})|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.namespace-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#namespace-name\\\"},{\\\"include\\\":\\\"#namespace-body\\\"}]},\\\"numeric-literal\\\":{\\\"match\\\":\\\"(?:\\\\\\\\b(?<!\\\\\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\\\\\b(?!\\\\\\\\$)|\\\\\\\\b(?<!\\\\\\\\$)0(?:b|B)[01][01_]*(n)?\\\\\\\\b(?!\\\\\\\\$)|(?<!\\\\\\\\$)(?:(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.)(n)?\\\\\\\\B)|(?:\\\\\\\\B(\\\\\\\\.)[0-9][0-9_]*(n)?\\\\\\\\b)|(?:\\\\\\\\b[0-9][0-9_]*(n)?\\\\\\\\b(?!\\\\\\\\.)))(?!\\\\\\\\$))\\\",\\\"name\\\":\\\"constant.numeric.tsp\\\"},\\\"object-literal\\\":{\\\"begin\\\":\\\"#\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.hashcurlybrace.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.tsp\\\"}},\\\"name\\\":\\\"meta.object-literal.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#object-literal-property\\\"},{\\\"include\\\":\\\"#directive\\\"},{\\\"include\\\":\\\"#spread-operator\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"object-literal-property\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\\\\\\s*(:))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.name.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.object-literal-property.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"operation-heritage\\\":{\\\"begin\\\":\\\"\\\\\\\\b(is)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.operation-heritage.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"operation-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.tsp\\\"}},\\\"name\\\":\\\"meta.operation-parameters.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#model-property\\\"},{\\\"include\\\":\\\"#spread-operator\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"operation-signature\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#operation-heritage\\\"},{\\\"include\\\":\\\"#operation-parameters\\\"},{\\\"include\\\":\\\"#type-annotation\\\"}]},\\\"operation-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(op)\\\\\\\\b\\\\\\\\s+(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.operation-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#operation-signature\\\"}]},\\\"operator-assignment\\\":{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.tsp\\\"},\\\"parenthesized-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.tsp\\\"}},\\\"name\\\":\\\"meta.parenthesized-expression.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"projection\\\":{\\\"begin\\\":\\\"(from|to)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"((?<=\\\\\\\\})|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.projection.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#projection-parameters\\\"},{\\\"include\\\":\\\"#projection-body\\\"}]},\\\"projection-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.tsp\\\"}},\\\"name\\\":\\\"meta.projection-body.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#projection-expression\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"projection-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#else-if-expression\\\"},{\\\"include\\\":\\\"#if-expression\\\"},{\\\"include\\\":\\\"#else-expression\\\"},{\\\"include\\\":\\\"#function-call\\\"}]},\\\"projection-parameter\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.name.tsp\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\))|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.projection-parameter.typespec\\\",\\\"patterns\\\":[]},\\\"projection-parameters\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.close.tsp\\\"}},\\\"name\\\":\\\"meta.projection-parameters.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#projection-parameter\\\"}]},\\\"projection-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(projection)\\\\\\\\b\\\\\\\\s+(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)(#)(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.selector.tsp\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.name.tsp\\\"}},\\\"end\\\":\\\"((?<=\\\\\\\\})|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b))\\\",\\\"name\\\":\\\"meta.projection-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#projection-statement-body\\\"}]},\\\"projection-statement-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.tsp\\\"}},\\\"name\\\":\\\"meta.projection-statement-body.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#projection\\\"}]},\\\"punctuation-accessor\\\":{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.accessor.tsp\\\"},\\\"punctuation-comma\\\":{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.comma.tsp\\\"},\\\"punctuation-semicolon\\\":{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.tsp\\\"},\\\"scalar-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.tsp\\\"}},\\\"name\\\":\\\"meta.scalar-body.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#directive\\\"},{\\\"include\\\":\\\"#scalar-constructor\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"scalar-constructor\\\":{\\\"begin\\\":\\\"\\\\\\\\b(init)\\\\\\\\b\\\\\\\\s+(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.scalar-constructor.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#operation-parameters\\\"}]},\\\"scalar-extends\\\":{\\\"begin\\\":\\\"\\\\\\\\b(extends)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"(?=;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.scalar-extends.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"scalar-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(scalar)\\\\\\\\b\\\\\\\\s+(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.tsp\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.scalar-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#type-parameters\\\"},{\\\"include\\\":\\\"#scalar-extends\\\"},{\\\"include\\\":\\\"#scalar-body\\\"}]},\\\"spread-operator\\\":{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.spread.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.spread-operator.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#directive\\\"},{\\\"include\\\":\\\"#augment-decorator-statement\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#model-statement\\\"},{\\\"include\\\":\\\"#scalar-statement\\\"},{\\\"include\\\":\\\"#union-statement\\\"},{\\\"include\\\":\\\"#interface-statement\\\"},{\\\"include\\\":\\\"#enum-statement\\\"},{\\\"include\\\":\\\"#alias-statement\\\"},{\\\"include\\\":\\\"#const-statement\\\"},{\\\"include\\\":\\\"#namespace-statement\\\"},{\\\"include\\\":\\\"#operation-statement\\\"},{\\\"include\\\":\\\"#import-statement\\\"},{\\\"include\\\":\\\"#using-statement\\\"},{\\\"include\\\":\\\"#decorator-declaration-statement\\\"},{\\\"include\\\":\\\"#function-declaration-statement\\\"},{\\\"include\\\":\\\"#projection-statement\\\"},{\\\"include\\\":\\\"#punctuation-semicolon\\\"}]},\\\"string-literal\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"|$\\\",\\\"name\\\":\\\"string.quoted.double.tsp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-expression\\\"},{\\\"include\\\":\\\"#escape-character\\\"}]},\\\"template-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\$\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end.tsp\\\"}},\\\"name\\\":\\\"meta.template-expression.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"token\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#doc-comment\\\"},{\\\"include\\\":\\\"#line-comment\\\"},{\\\"include\\\":\\\"#block-comment\\\"},{\\\"include\\\":\\\"#triple-quoted-string-literal\\\"},{\\\"include\\\":\\\"#string-literal\\\"},{\\\"include\\\":\\\"#boolean-literal\\\"},{\\\"include\\\":\\\"#numeric-literal\\\"}]},\\\"triple-quoted-string-literal\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.triple.tsp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#template-expression\\\"},{\\\"include\\\":\\\"#escape-character\\\"}]},\\\"tuple-expression\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.squarebracket.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.squarebracket.close.tsp\\\"}},\\\"name\\\":\\\"meta.tuple-expression.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"tuple-literal\\\":{\\\"begin\\\":\\\"#\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.hashsquarebracket.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.squarebracket.close.tsp\\\"}},\\\"name\\\":\\\"meta.tuple-literal.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-annotation\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(\\\\\\\\??)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.optional.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|=|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.type-annotation.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"type-argument\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\\\\\\s*(=))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.tsp\\\"}},\\\"end\\\":\\\"(?=>)|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.tsp\\\"}},\\\"name\\\":\\\"meta.type-argument.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-arguments\\\":{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.tsp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.tsp\\\"}},\\\"name\\\":\\\"meta.type-arguments.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-argument\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"type-parameter\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.tsp\\\"}},\\\"end\\\":\\\"(?=>)|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.type-parameter.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#type-parameter-constraint\\\"},{\\\"include\\\":\\\"#type-parameter-default\\\"}]},\\\"type-parameter-constraint\\\":{\\\"begin\\\":\\\"extends\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"(?=>)|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.type-parameter-constraint.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"type-parameter-default\\\":{\\\"begin\\\":\\\"=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.assignment.tsp\\\"}},\\\"end\\\":\\\"(?=>)|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.type-parameter-default.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"type-parameters\\\":{\\\"begin\\\":\\\"<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.begin.tsp\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.typeparameters.end.tsp\\\"}},\\\"name\\\":\\\"meta.type-parameters.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"typeof\\\":{\\\"begin\\\":\\\"\\\\\\\\b(typeof)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"(?=>)|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.typeof.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"union-body\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.open.tsp\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.curlybrace.close.tsp\\\"}},\\\"name\\\":\\\"meta.union-body.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#union-variant\\\"},{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#directive\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#punctuation-comma\\\"}]},\\\"union-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(union)\\\\\\\\b\\\\\\\\s+(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.tsp\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\})|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.union-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#union-body\\\"}]},\\\"union-variant\\\":{\\\"begin\\\":\\\"(?:(\\\\\\\\b[_$[:alpha:]][_$[:alnum:]]*\\\\\\\\b|`(?:[^`\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*`)\\\\\\\\s*(:))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.name.tsp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.type.annotation.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.union-variant.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"using-statement\\\":{\\\"begin\\\":\\\"\\\\\\\\b(using)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.using-statement.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#token\\\"},{\\\"include\\\":\\\"#identifier-expression\\\"},{\\\"include\\\":\\\"#punctuation-accessor\\\"}]},\\\"valueof\\\":{\\\"begin\\\":\\\"\\\\\\\\b(valueof)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.tsp\\\"}},\\\"end\\\":\\\"(?=>)|(?=,|;|@|\\\\\\\\)|\\\\\\\\}|\\\\\\\\b(?:extern)\\\\\\\\b|\\\\\\\\b(?:namespace|model|op|using|import|enum|alias|union|interface|dec|fn)\\\\\\\\b)\\\",\\\"name\\\":\\\"meta.valueof.typespec\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]}},\\\"scopeName\\\":\\\"source.tsp\\\",\\\"aliases\\\":[\\\"tsp\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Typst\\\",\\\"name\\\":\\\"typst\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markup\\\"}],\\\"repository\\\":{\\\"arguments\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[[:alpha:]_][[:alnum:]_-]*(?=:)\\\",\\\"name\\\":\\\"variable.parameter.typst\\\"},{\\\"include\\\":\\\"#code\\\"}]},\\\"code\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#common\\\"},{\\\"begin\\\":\\\"{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.code.typst\\\"}},\\\"end\\\":\\\"}\\\",\\\"name\\\":\\\"meta.block.code.typst\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.content.typst\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"meta.block.content.typst\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markup\\\"}]},{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.typst\\\"}},\\\"end\\\":\\\"\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.typst\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.colon.typst\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.comma.typst\\\"},{\\\"match\\\":\\\"=>|\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.typst\\\"},{\\\"match\\\":\\\"==|!=|<=|<|>=|>\\\",\\\"name\\\":\\\"keyword.operator.relational.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\+=|-=|\\\\\\\\*=|/=|=\\\",\\\"name\\\":\\\"keyword.operator.assignment.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\+|\\\\\\\\*|/|(?<![[:alpha:]_][[:alnum:]_-]*)-(?![:alnum:]_-]*[[:alpha:]_])\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(and|or|not)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(let|as|in|set|show)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(if|else)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.conditional.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(for|while|break|continue)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.loop.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(import|include|export)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(return)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.typst\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"comment\\\":\\\"Function name\\\",\\\"match\\\":\\\"\\\\\\\\b[[:alpha:]_][[:alnum:]_-]*!?(?=\\\\\\\\[|\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.typst\\\"},{\\\"comment\\\":\\\"Function name\\\",\\\"match\\\":\\\"(?<=\\\\\\\\bshow\\\\\\\\s*)\\\\\\\\b[[:alpha:]_][[:alnum:]_-]*(?=\\\\\\\\s*[:.])\\\",\\\"name\\\":\\\"entity.name.function.typst\\\"},{\\\"begin\\\":\\\"(?<=\\\\\\\\b[[:alpha:]_][[:alnum:]_-]*!?)\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.typst\\\"}},\\\"comment\\\":\\\"Function arguments\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arguments\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b[[:alpha:]_][[:alnum:]_-]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.typst\\\"},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.typst\\\"}},\\\"end\\\":\\\"\\\\\\\\)|(?=;)\\\",\\\"name\\\":\\\"meta.group.typst\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.typst\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.typst\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"(?<!:)//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.typst\\\"}},\\\"end\\\":\\\"\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.typst\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]}]},\\\"common\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bnone\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.none.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\bauto\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.auto.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d*)?\\\\\\\\.?\\\\\\\\d+([eE][+-]?\\\\\\\\d+)?(mm|pt|cm|in|em)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.length.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d*)?\\\\\\\\.?\\\\\\\\d+([eE][+-]?\\\\\\\\d+)?(rad|deg)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.angle.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d*)?\\\\\\\\.?\\\\\\\\d+([eE][+-]?\\\\\\\\d+)?%\\\",\\\"name\\\":\\\"constant.numeric.percentage.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d*)?\\\\\\\\.?\\\\\\\\d+([eE][+-]?\\\\\\\\d+)?fr\\\",\\\"name\\\":\\\"constant.numeric.fr.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d*)?\\\\\\\\.?\\\\\\\\d+([eE][+-]?\\\\\\\\d+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.typst\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.typst\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.typst\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([\\\\\\\\\\\\\\\\\\\\\\\"nrt]|u\\\\\\\\{?[0-9a-zA-Z]*\\\\\\\\}?)\\\",\\\"name\\\":\\\"constant.character.escape.string.typst\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\$\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.math.typst\\\"}},\\\"end\\\":\\\"\\\\\\\\$\\\",\\\"name\\\":\\\"string.other.math.typst\\\"}]},\\\"markup\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#common\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([\\\\\\\\\\\\\\\\/\\\\\\\\[\\\\\\\\]{}#*_=~`$-.]|u\\\\\\\\{[0-9a-zA-Z]*\\\\\\\\}?)\\\",\\\"name\\\":\\\"constant.character.escape.content.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"punctuation.definition.linebreak.typst\\\"},{\\\"match\\\":\\\"~\\\",\\\"name\\\":\\\"punctuation.definition.nonbreaking-space.typst\\\"},{\\\"match\\\":\\\"-\\\\\\\\?\\\",\\\"name\\\":\\\"punctuation.definition.shy.typst\\\"},{\\\"match\\\":\\\"---\\\",\\\"name\\\":\\\"punctuation.definition.em-dash.typst\\\"},{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"punctuation.definition.en-dash.typst\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.definition.ellipsis.typst\\\"},{\\\"match\\\":\\\":([a-zA-Z0-9]+:)+\\\",\\\"name\\\":\\\"constant.symbol.typst\\\"},{\\\"begin\\\":\\\"(^\\\\\\\\*|\\\\\\\\*$|((?<=\\\\\\\\W|_)\\\\\\\\*)|(\\\\\\\\*(?=\\\\\\\\W|_)))\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bold.typst\\\"}},\\\"end\\\":\\\"(^\\\\\\\\*|\\\\\\\\*$|((?<=\\\\\\\\W|_)\\\\\\\\*)|(\\\\\\\\*(?=\\\\\\\\W|_)))|\\\\n|(?=\\\\\\\\])\\\",\\\"name\\\":\\\"markup.bold.typst\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markup\\\"}]},{\\\"begin\\\":\\\"(^_|_$|((?<=\\\\\\\\W|_)_)|(_(?=\\\\\\\\W|_)))\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.italic.typst\\\"}},\\\"end\\\":\\\"(^_|_$|((?<=\\\\\\\\W|_)_)|(_(?=\\\\\\\\W|_)))|\\\\n|(?=\\\\\\\\])\\\",\\\"name\\\":\\\"markup.italic.typst\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markup\\\"}]},{\\\"match\\\":\\\"https?://[0-9a-zA-Z~/%#&=',;\\\\\\\\.\\\\\\\\+\\\\\\\\?]*\\\",\\\"name\\\":\\\"markup.underline.link.typst\\\"},{\\\"begin\\\":\\\"`{3,}\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.raw.typst\\\"}},\\\"end\\\":\\\"\\\\\\\\0\\\",\\\"name\\\":\\\"markup.raw.block.typst\\\"},{\\\"begin\\\":\\\"`\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.raw.typst\\\"}},\\\"end\\\":\\\"`\\\",\\\"name\\\":\\\"markup.raw.inline.typst\\\"},{\\\"begin\\\":\\\"\\\\\\\\$\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.math.typst\\\"}},\\\"end\\\":\\\"\\\\\\\\$\\\",\\\"name\\\":\\\"string.other.math.typst\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*=+\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.heading.typst\\\"}},\\\"contentName\\\":\\\"entity.name.section.typst\\\",\\\"end\\\":\\\"\\\\n|(?=<)\\\",\\\"name\\\":\\\"markup.heading.typst\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#markup\\\"}]},{\\\"match\\\":\\\"^\\\\\\\\s*-\\\\\\\\s+\\\",\\\"name\\\":\\\"punctuation.definition.list.unnumbered.typst\\\"},{\\\"match\\\":\\\"^\\\\\\\\s*([0-9]*\\\\\\\\.|\\\\\\\\+)\\\\\\\\s+\\\",\\\"name\\\":\\\"punctuation.definition.list.numbered.typst\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.list.description.typst\\\"},\\\"2\\\":{\\\"name\\\":\\\"markup.list.term.typst\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(/)\\\\\\\\s+([^:]*:)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.label.typst\\\"}},\\\"match\\\":\\\"<[[:alpha:]_][[:alnum:]_-]*>\\\",\\\"name\\\":\\\"entity.other.label.typst\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.reference.typst\\\"}},\\\"match\\\":\\\"(@)[[:alpha:]_][[:alnum:]_-]*\\\",\\\"name\\\":\\\"entity.other.reference.typst\\\"},{\\\"begin\\\":\\\"(#)(let|set|show)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.other.typst\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.typst\\\"}},\\\"end\\\":\\\"\\\\n|(;)|(?=])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.typst\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.typst\\\"}},\\\"match\\\":\\\"(#)(as|in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.typst\\\"},{\\\"begin\\\":\\\"((#)if|(?<=(}|])\\\\\\\\s*)else)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.conditional.typst\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.typst\\\"}},\\\"end\\\":\\\"\\\\n|(?=])|(?<=}|])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"begin\\\":\\\"(#)(for|while)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.loop.typst\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.typst\\\"}},\\\"end\\\":\\\"\\\\n|(?=])|(?<=}|])\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.typst\\\"}},\\\"match\\\":\\\"(#)(break|continue)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.loop.typst\\\"},{\\\"begin\\\":\\\"(#)(import|include|export)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.import.typst\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.typst\\\"}},\\\"end\\\":\\\"\\\\n|(;)|(?=])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.typst\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.keyword.typst\\\"}},\\\"match\\\":\\\"(#)(return)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.typst\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.function.typst\\\"}},\\\"comment\\\":\\\"Function name\\\",\\\"match\\\":\\\"((#)[[:alpha:]_][[:alnum:]_-]*!?)(?=\\\\\\\\[|\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.typst\\\"},{\\\"begin\\\":\\\"(?<=#[[:alpha:]_][[:alnum:]_-]*!?)\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.typst\\\"}},\\\"comment\\\":\\\"Function arguments\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#arguments\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.typst\\\"}},\\\"match\\\":\\\"(#)[[:alpha:]_][.[:alnum:]_-]*\\\",\\\"name\\\":\\\"entity.other.interpolated.typst\\\"},{\\\"begin\\\":\\\"#\\\",\\\"end\\\":\\\"\\\\\\\\s\\\",\\\"name\\\":\\\"meta.block.content.typst\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]}]}},\\\"scopeName\\\":\\\"source.typst\\\",\\\"aliases\\\":[\\\"typ\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"V\\\",\\\"fileTypes\\\":[\\\".v\\\",\\\".vh\\\",\\\".vsh\\\",\\\".vv\\\",\\\"v.mod\\\"],\\\"name\\\":\\\"v\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#function-decl\\\"},{\\\"include\\\":\\\"#as-is\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#assignment\\\"},{\\\"include\\\":\\\"#module-decl\\\"},{\\\"include\\\":\\\"#import-decl\\\"},{\\\"include\\\":\\\"#hash-decl\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#builtin-fix\\\"},{\\\"include\\\":\\\"#escaped-fix\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#function-limited-overload-decl\\\"},{\\\"include\\\":\\\"#function-extend-decl\\\"},{\\\"include\\\":\\\"#function-exist\\\"},{\\\"include\\\":\\\"#generic\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#type\\\"},{\\\"include\\\":\\\"#enum\\\"},{\\\"include\\\":\\\"#interface\\\"},{\\\"include\\\":\\\"#struct\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#storage\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#punctuations\\\"},{\\\"include\\\":\\\"#variable-assign\\\"},{\\\"include\\\":\\\"#function-decl\\\"}],\\\"repository\\\":{\\\"as-is\\\":{\\\"begin\\\":\\\"\\\\\\\\s+(as|is)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.$1.v\\\"}},\\\"end\\\":\\\"([\\\\\\\\w.]*)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.alias.v\\\"}}},\\\"assignment\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#operators\\\"}]}},\\\"match\\\":\\\"\\\\\\\\s+((?:\\\\\\\\:|\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|/|\\\\\\\\%|\\\\\\\\&|\\\\\\\\||\\\\\\\\^)?=)\\\\\\\\s+\\\",\\\"name\\\":\\\"meta.definition.variable.v\\\"},\\\"attributes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.function.attribute.v\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.begin.bracket.square.v\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.modifier.attribute.v\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.end.bracket.square.v\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*((\\\\\\\\[)(deprecated|unsafe|console|heap|manualfree|typedef|live|inline|flag|ref_only|direct_array_access|callconv)(\\\\\\\\]))\\\",\\\"name\\\":\\\"meta.definition.attribute.v\\\"},\\\"brackets\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.v\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.v\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.round.begin.v\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.round.end.v\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.begin.v\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.square.end.v\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"builtin-fix\\\":{\\\"patterns\\\":[{\\\"patterns\\\":[{\\\"match\\\":\\\"(const)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"storage.modifier.v\\\"},{\\\"match\\\":\\\"\\\\\\\\b(fn|type|enum|struct|union|interface|map|assert|sizeof|typeof|__offsetof)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.$1.v\\\"}]},{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\$if|\\\\\\\\$else)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.control.v\\\"},{\\\"match\\\":\\\"\\\\\\\\b(as|in|is|or|break|continue|default|unsafe|match|if|else|for|go|spawn|goto|defer|return|shared|select|rlock|lock|atomic|asm)\\\\\\\\b(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"keyword.control.v\\\"}]},{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.numeric.v\\\"}},\\\"match\\\":\\\"(?<!.)(i?(?:8|16|nt|64|128)|u?(?:16|32|64|128)|f?(?:32|64))(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"meta.expr.numeric.cast.v\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.$1.v\\\"}},\\\"match\\\":\\\"(bool|byte|byteptr|charptr|voidptr|string|rune|size_t|[ui]size)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"meta.expr.bool.cast.v\\\"}]}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.v\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.v\\\"}},\\\"name\\\":\\\"comment.block.documentation.v\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.v\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.v\\\"}]},\\\"constants\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false|none)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.v\\\"},\\\"enum\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.$1.v\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.enum.v\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.enum.v\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(?:(pub)?\\\\\\\\s+)?(enum)\\\\\\\\s+(?:\\\\\\\\w+\\\\\\\\.)?(\\\\\\\\w*)\\\",\\\"name\\\":\\\"meta.definition.enum.v\\\"},\\\"function-decl\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.v\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.fn.v\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.v\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#generic\\\"}]}},\\\"match\\\":\\\"^(\\\\\\\\bpub\\\\\\\\b\\\\\\\\s+)?(\\\\\\\\bfn\\\\\\\\b)\\\\\\\\s+(?:\\\\\\\\([^\\\\\\\\)]+\\\\\\\\)\\\\\\\\s+)?(?:(?:C\\\\\\\\.)?)(\\\\\\\\w+)\\\\\\\\s*((?<=[\\\\\\\\w\\\\\\\\s+])(\\\\\\\\<)(\\\\\\\\w+)(\\\\\\\\>))?\\\",\\\"name\\\":\\\"meta.definition.function.v\\\"},\\\"function-exist\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.function.call.v\\\"},\\\"1\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-name\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.function.v\\\"}]},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#generic\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\w+)((?<=[\\\\\\\\w\\\\\\\\s+])(\\\\\\\\<)(\\\\\\\\w+)(\\\\\\\\>))?(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"meta.support.function.v\\\"},\\\"function-extend-decl\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.v\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.fn.v\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.round.begin.v\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#storage\\\"},{\\\"include\\\":\\\"#generic\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.round.end.v\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-name\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.function.v\\\"}]},\\\"7\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#generic\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\s*(pub)?\\\\\\\\s*(fn)\\\\\\\\s*(\\\\\\\\()([^\\\\\\\\)]*)(\\\\\\\\))\\\\\\\\s*(?:(?:C\\\\\\\\.)?)(\\\\\\\\w+)\\\\\\\\s*((?<=[\\\\\\\\w\\\\\\\\s+])(\\\\\\\\<)(\\\\\\\\w+)(\\\\\\\\>))?\\\",\\\"name\\\":\\\"meta.definition.function.v\\\"},\\\"function-limited-overload-decl\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.v\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.fn.v\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.round.begin.v\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#storage\\\"},{\\\"include\\\":\\\"#generic\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.round.end.v\\\"},\\\"6\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#operators\\\"}]},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.round.begin.v\\\"},\\\"8\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#storage\\\"},{\\\"include\\\":\\\"#generic\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]},\\\"9\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.round.end.v\\\"},\\\"10\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-name\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.function.v\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\s*(pub)?\\\\\\\\s*(fn)\\\\\\\\s*(\\\\\\\\()([^\\\\\\\\)]*)(\\\\\\\\))\\\\\\\\s*([\\\\\\\\+\\\\\\\\-\\\\\\\\*\\\\\\\\/])?\\\\\\\\s*(\\\\\\\\()([^\\\\\\\\)]*)(\\\\\\\\))\\\\\\\\s*(?:(?:C\\\\\\\\.)?)(\\\\\\\\w+)\\\",\\\"name\\\":\\\"meta.definition.function.v\\\"},\\\"generic\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.begin.v\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-name\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.generic.v\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.angle.end.v\\\"}},\\\"match\\\":\\\"(?<=[\\\\\\\\w\\\\\\\\s+])(\\\\\\\\<)(\\\\\\\\w+)(\\\\\\\\>)\\\",\\\"name\\\":\\\"meta.definition.generic.v\\\"}]},\\\"hash-decl\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(#)\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"markup.bold.v\\\"},\\\"illegal-name\\\":{\\\"match\\\":\\\"\\\\\\\\d\\\\\\\\w+\\\",\\\"name\\\":\\\"invalid.illegal.v\\\"},\\\"import-decl\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(import)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.import.v\\\"}},\\\"end\\\":\\\"([\\\\\\\\w.]+)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.import.v\\\"}},\\\"name\\\":\\\"meta.import.v\\\"},\\\"interface\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.$1.v\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.interface.v\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-name\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.interface.v\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\s*(?:(pub)?\\\\\\\\s+)?(interface)\\\\\\\\s+(\\\\\\\\w*)\\\",\\\"name\\\":\\\"meta.definition.interface.v\\\"},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\$if|\\\\\\\\$else)\\\",\\\"name\\\":\\\"keyword.control.v\\\"},{\\\"match\\\":\\\"(?<!@)\\\\\\\\b(as|it|is|in|or|break|continue|default|unsafe|match|if|else|for|go|spawn|goto|defer|return|shared|select|rlock|lock|atomic|asm)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.v\\\"},{\\\"match\\\":\\\"(?<!@)\\\\\\\\b(fn|type|typeof|enum|struct|interface|map|assert|sizeof|__offsetof)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.$1.v\\\"}]},\\\"module-decl\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*(module)\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.module.v\\\"}},\\\"end\\\":\\\"([\\\\\\\\w.]+)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.module.v\\\"}},\\\"name\\\":\\\"meta.module.v\\\"},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([0-9]+(_?))+(\\\\\\\\.)([0-9]+[eE][-+]?[0-9]+)\\\",\\\"name\\\":\\\"constant.numeric.exponential.v\\\"},{\\\"match\\\":\\\"([0-9]+(_?))+(\\\\\\\\.)([0-9]+)\\\",\\\"name\\\":\\\"constant.numeric.float.v\\\"},{\\\"match\\\":\\\"(?:0b)(?:(?:[0-1]+)(?:_?))+\\\",\\\"name\\\":\\\"constant.numeric.binary.v\\\"},{\\\"match\\\":\\\"(?:0o)(?:(?:[0-7]+)(?:_?))+\\\",\\\"name\\\":\\\"constant.numeric.octal.v\\\"},{\\\"match\\\":\\\"(?:0x)(?:(?:[0-9a-fA-F]+)(?:_?))+\\\",\\\"name\\\":\\\"constant.numeric.hex.v\\\"},{\\\"match\\\":\\\"(?:(?:[0-9]+)(?:[_]?))+\\\",\\\"name\\\":\\\"constant.numeric.integer.v\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\+|\\\\\\\\-|\\\\\\\\*|\\\\\\\\/|\\\\\\\\%|\\\\\\\\+\\\\\\\\+|\\\\\\\\-\\\\\\\\-|\\\\\\\\>\\\\\\\\>|\\\\\\\\<\\\\\\\\<)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.v\\\"},{\\\"match\\\":\\\"(\\\\\\\\=\\\\\\\\=|\\\\\\\\!\\\\\\\\=|\\\\\\\\>|\\\\\\\\<|\\\\\\\\>\\\\\\\\=|\\\\\\\\<\\\\\\\\=)\\\",\\\"name\\\":\\\"keyword.operator.relation.v\\\"},{\\\"match\\\":\\\"(\\\\\\\\:\\\\\\\\=|\\\\\\\\=|\\\\\\\\+\\\\\\\\=|\\\\\\\\-\\\\\\\\=|\\\\\\\\*\\\\\\\\=|\\\\\\\\/\\\\\\\\=|\\\\\\\\%\\\\\\\\=|\\\\\\\\&\\\\\\\\=|\\\\\\\\|\\\\\\\\=|\\\\\\\\^\\\\\\\\=|\\\\\\\\~\\\\\\\\=|\\\\\\\\&\\\\\\\\&\\\\\\\\=|\\\\\\\\|\\\\\\\\|\\\\\\\\=|\\\\\\\\>\\\\\\\\>\\\\\\\\=|\\\\\\\\<\\\\\\\\<\\\\\\\\=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.v\\\"},{\\\"match\\\":\\\"(\\\\\\\\&|\\\\\\\\||\\\\\\\\^|\\\\\\\\~|<(?!<)|>(?!>))\\\",\\\"name\\\":\\\"keyword.operator.bitwise.v\\\"},{\\\"match\\\":\\\"(\\\\\\\\&\\\\\\\\&|\\\\\\\\|\\\\\\\\||\\\\\\\\!)\\\",\\\"name\\\":\\\"keyword.operator.logical.v\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.optional.v\\\"}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.delimiter.period.dot.v\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.delimiter.comma.v\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.colon.v\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.definition.other.semicolon.v\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"punctuation.definition.other.questionmark.v\\\"},{\\\"match\\\":\\\"#\\\",\\\"name\\\":\\\"punctuation.hash.v\\\"}]},\\\"punctuations\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\.)\\\",\\\"name\\\":\\\"punctuation.accessor.v\\\"},{\\\"match\\\":\\\"(?:,)\\\",\\\"name\\\":\\\"punctuation.separator.comma.v\\\"}]},\\\"storage\\\":{\\\"match\\\":\\\"\\\\\\\\b(const|mut|pub)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.v\\\"},\\\"string-escaped-char\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{3}|[\\\\\\\\$abfnrtv\\\\\\\\\\\\\\\\'\\\\\\\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})\\\",\\\"name\\\":\\\"constant.character.escape.v\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[^0-7\\\\\\\\$xuUabfnrtv\\\\\\\\'\\\\\\\"]\\\",\\\"name\\\":\\\"invalid.illegal.unknown-escape.v\\\"}]},\\\"string-interpolation\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\$\\\\\\\\d[\\\\\\\\.\\\\\\\\w]+\\\",\\\"name\\\":\\\"invalid.illegal.v\\\"},{\\\"match\\\":\\\"\\\\\\\\$([\\\\\\\\.\\\\\\\\w]+|\\\\\\\\{.*?\\\\\\\\})\\\",\\\"name\\\":\\\"variable.other.interpolated.v\\\"}]}},\\\"match\\\":\\\"(\\\\\\\\$([\\\\\\\\w.]+|\\\\\\\\{.*?\\\\\\\\}))\\\",\\\"name\\\":\\\"meta.string.interpolation.v\\\"},\\\"string-placeholder\\\":{\\\"match\\\":\\\"%(\\\\\\\\[\\\\\\\\d+\\\\\\\\])?([\\\\\\\\+#\\\\\\\\-0\\\\\\\\x20]{,2}((\\\\\\\\d+|\\\\\\\\*)?(\\\\\\\\.?(\\\\\\\\d+|\\\\\\\\*|(\\\\\\\\[\\\\\\\\d+\\\\\\\\])\\\\\\\\*?)?(\\\\\\\\[\\\\\\\\d+\\\\\\\\])?)?))?[vT%tbcdoqxXUbeEfFgGsp]\\\",\\\"name\\\":\\\"constant.other.placeholder.v\\\"},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"`\\\",\\\"end\\\":\\\"`\\\",\\\"name\\\":\\\"string.quoted.rune.v\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-escaped-char\\\"},{\\\"include\\\":\\\"#string-interpolation\\\"},{\\\"include\\\":\\\"#string-placeholder\\\"}]},{\\\"begin\\\":\\\"(r)'\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.v\\\"}},\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.raw.v\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-interpolation\\\"},{\\\"include\\\":\\\"#string-placeholder\\\"}]},{\\\"begin\\\":\\\"(r)\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.v\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.raw.v\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-interpolation\\\"},{\\\"include\\\":\\\"#string-placeholder\\\"}]},{\\\"begin\\\":\\\"(c?)'\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.v\\\"}},\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.v\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-escaped-char\\\"},{\\\"include\\\":\\\"#string-interpolation\\\"},{\\\"include\\\":\\\"#string-placeholder\\\"}]},{\\\"begin\\\":\\\"(c?)\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.v\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.v\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-escaped-char\\\"},{\\\"include\\\":\\\"#string-interpolation\\\"},{\\\"include\\\":\\\"#string-placeholder\\\"}]}]},\\\"struct\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(?:(mut|pub(?:\\\\\\\\s+mut)?|__global)\\\\\\\\s+)?(struct|union)\\\\\\\\s+([\\\\\\\\w.]+)\\\\\\\\s*|({)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.$1.v\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.struct.v\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.v\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.begin.v\\\"}},\\\"end\\\":\\\"\\\\\\\\s*|(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.bracket.curly.end.v\\\"}},\\\"name\\\":\\\"meta.definition.struct.v\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#struct-access-modifier\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.property.v\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"storage.type.other.v\\\"}]},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.assignment.v\\\"},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\s+([\\\\\\\\w\\\\\\\\[\\\\\\\\]\\\\\\\\*&.]+)(?:\\\\\\\\s*(=)\\\\\\\\s*((?:.(?=$|//|/\\\\\\\\*))*+))?\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.$1.v\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.struct.v\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.struct.v\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(?:(mut|pub(?:\\\\\\\\s+mut)?|__global))\\\\\\\\s+?(struct)\\\\\\\\s+(?:\\\\\\\\s+([\\\\\\\\w.]+))?\\\",\\\"name\\\":\\\"meta.definition.struct.v\\\"}]},\\\"struct-access-modifier\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.$1.v\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.struct.key-value.v\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\s|^)(mut|pub(?:\\\\\\\\s+mut)?|__global)(:|\\\\\\\\b)\\\"},\\\"type\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.$1.v\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.type.v\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-name\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.v\\\"}]},\\\"4\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-name\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"match\\\":\\\"\\\\\\\\w+\\\",\\\"name\\\":\\\"entity.name.type.v\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\s*(?:(pub)?\\\\\\\\s+)?(type)\\\\\\\\s+(\\\\\\\\w*)\\\\\\\\s+(?:\\\\\\\\w+\\\\\\\\.+)?(\\\\\\\\w*)\\\",\\\"name\\\":\\\"meta.definition.type.v\\\"},\\\"types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(i(8|16|nt|64|128)|u(8|16|32|64|128)|f(32|64))\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.numeric.v\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(bool|byte|byteptr|charptr|voidptr|string|ustring|rune)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.$1.v\\\"}]},\\\"variable-assign\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[a-zA-Z_]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.assignment.v\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]}},\\\"match\\\":\\\"[a-zA-Z_]\\\\\\\\w*(?:,\\\\\\\\s*[a-zA-Z_]\\\\\\\\w*)*(?=\\\\\\\\s*(?:=|:=))\\\"}},\\\"scopeName\\\":\\\"source.v\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Vala\\\",\\\"fileTypes\\\":[\\\"vala\\\",\\\"vapi\\\",\\\"gs\\\"],\\\"name\\\":\\\"vala\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}],\\\"repository\\\":{\\\"code\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#variables\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.vala\\\"}},\\\"match\\\":\\\"/\\\\\\\\*\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.empty.vala\\\"},{\\\"include\\\":\\\"text.html.javadoc\\\"},{\\\"include\\\":\\\"#comments-inline\\\"}]},\\\"comments-inline\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.vala\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.vala\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"comment.line.double-slash.vala\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.comment.vala\\\"}},\\\"match\\\":\\\"\\\\\\\\s*((//).*$\\\\\\\\n?)\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\\\\\.?[0-9]*)|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.vala\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Z][A-Z0-9_]+)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.constant.vala\\\"}]},\\\"functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\w+)(?=\\\\\\\\s*(<[\\\\\\\\s\\\\\\\\w.]+>\\\\\\\\s*)?\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.vala\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[^@\\\\\\\\w\\\\\\\\.])(as|do|if|in|is|not|or|and|for|get|new|out|ref|set|try|var|base|case|else|enum|lock|null|this|true|void|weak|async|break|catch|class|const|false|owned|throw|using|while|with|yield|delete|extern|inline|params|public|return|sealed|signal|sizeof|static|struct|switch|throws|typeof|unlock|default|dynamic|ensures|finally|foreach|private|unowned|virtual|abstract|continue|delegate|internal|override|requires|volatile|construct|interface|namespace|protected|errordomain)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.vala\\\"},{\\\"match\\\":\\\"(?<=^|[^@\\\\\\\\w\\\\\\\\.])(bool|double|float|unichar|unichar2|char|uchar|int|uint|long|ulong|short|ushort|size_t|ssize_t|string|string16|string32|void|signal|int8|int16|int32|int64|uint8|uint16|uint32|uint64|va_list|time_t)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.vala\\\"},{\\\"match\\\":\\\"(#if|#elif|#else|#endif)\\\",\\\"name\\\":\\\"keyword.vala\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.triple.vala\\\"},{\\\"begin\\\":\\\"@\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.interpolated.vala\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.vala\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\\\\\\w+\\\",\\\"name\\\":\\\"constant.character.escape.vala\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\\\\\\(([^)(]|\\\\\\\\(([^)(]|\\\\\\\\([^)]*\\\\\\\\))*\\\\\\\\))*\\\\\\\\)\\\",\\\"name\\\":\\\"constant.character.escape.vala\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.vala\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.vala\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.vala\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.vala\\\"}]},{\\\"match\\\":\\\"/((\\\\\\\\\\\\\\\\/)|([^/]))*/(?=\\\\\\\\s*[,;)\\\\\\\\.\\\\\\\\n])\\\",\\\"name\\\":\\\"string.regexp.vala\\\"}]},\\\"types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=^|[^@\\\\\\\\w\\\\\\\\.])(bool|double|float|unichar|unichar2|char|uchar|int|uint|long|ulong|short|ushort|size_t|ssize_t|string|string16|string32|void|signal|int8|int16|int32|int64|uint8|uint16|uint32|uint64|va_list|time_t)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.primitive.vala\\\"},{\\\"match\\\":\\\"\\\\\\\\b([A-Z]+\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.vala\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([_a-z]+\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.vala\\\"}]}},\\\"scopeName\\\":\\\"source.vala\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Visual Basic\\\",\\\"name\\\":\\\"vb\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"meta.ending-space\\\"},{\\\"include\\\":\\\"#round-brackets\\\"},{\\\"begin\\\":\\\"^(?=\\\\\\\\t)\\\",\\\"end\\\":\\\"(?=[^\\\\\\\\t])\\\",\\\"name\\\":\\\"meta.leading-space\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.odd-tab.tabs\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.even-tab.tabs\\\"}},\\\"match\\\":\\\"(\\\\\\\\t)(\\\\\\\\t)?\\\"}]},{\\\"begin\\\":\\\"^(?= )\\\",\\\"end\\\":\\\"(?=[^ ])\\\",\\\"name\\\":\\\"meta.leading-space\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.odd-tab.spaces\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.even-tab.spaces\\\"}},\\\"match\\\":\\\"( )( )?\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.asp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.asp\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.asp\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.asp\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.asp\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*((?i:function|sub))\\\\\\\\s*([a-zA-Z_]\\\\\\\\w*)\\\\\\\\s*(\\\\\\\\()([^)]*)(\\\\\\\\)).*\\\\\\\\n?\\\",\\\"name\\\":\\\"meta.function.asp\\\"},{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=')\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.asp\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.asp\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.apostrophe.asp\\\"}]},{\\\"match\\\":\\\"(?i:\\\\\\\\b(If|Then|Else|ElseIf|Else If|End If|While|Wend|For|To|Each|Case|Select|End Select|Return|Continue|Do|Until|Loop|Next|With|Exit Do|Exit For|Exit Function|Exit Property|Exit Sub|IIf)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.control.asp\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(Mod|And|Not|Or|Xor|as)\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.operator.asp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.asp\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.bfeac.asp\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.separator.comma.asp\\\"}},\\\"match\\\":\\\"(?i:(dim)\\\\\\\\s*(?:(\\\\\\\\b[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\\\\\\\b)\\\\\\\\s*(,?)))\\\",\\\"name\\\":\\\"variable.other.dim.asp\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\s*\\\\\\\\b(Call|Class|Const|Dim|Redim|Function|Sub|Private Sub|Public Sub|End Sub|End Function|End Class|End Property|Public Property|Private Property|Set|Let|Get|New|Randomize|Option Explicit|On Error Resume Next|On Error GoTo)\\\\\\\\b\\\\\\\\s*)\\\",\\\"name\\\":\\\"storage.type.asp\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(Private|Public|Default)\\\\\\\\b)\\\",\\\"name\\\":\\\"storage.modifier.asp\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\s*\\\\\\\\b(Empty|False|Nothing|Null|True)\\\\\\\\b)\\\",\\\"name\\\":\\\"constant.language.asp\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.asp\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.asp\\\"}},\\\"name\\\":\\\"string.quoted.double.asp\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"constant.character.escape.apostrophe.asp\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.asp\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\\\\\\\b\\\\\\\\s*\\\",\\\"name\\\":\\\"variable.other.asp\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(Application|ObjectContext|Request|Response|Server|Session)\\\\\\\\b)\\\",\\\"name\\\":\\\"support.class.asp\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(Contents|StaticObjects|ClientCertificate|Cookies|Form|QueryString|ServerVariables)\\\\\\\\b)\\\",\\\"name\\\":\\\"support.class.collection.asp\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(TotalBytes|Buffer|CacheControl|Charset|ContentType|Expires|ExpiresAbsolute|IsClientConnected|PICS|Status|ScriptTimeout|CodePage|LCID|SessionID|Timeout)\\\\\\\\b)\\\",\\\"name\\\":\\\"support.constant.asp\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(Lock|Unlock|SetAbort|SetComplete|BinaryRead|AddHeader|AppendToLog|BinaryWrite|Clear|End|Flush|Redirect|Write|CreateObject|HTMLEncode|MapPath|URLEncode|Abandon|Convert|Regex)\\\\\\\\b)\\\",\\\"name\\\":\\\"support.function.asp\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(Application_OnEnd|Application_OnStart|OnTransactionAbort|OnTransactionCommit|Session_OnEnd|Session_OnStart)\\\\\\\\b)\\\",\\\"name\\\":\\\"support.function.event.asp\\\"},{\\\"match\\\":\\\"(?i:(?<=as )(\\\\\\\\b[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\\\\\\\b))\\\",\\\"name\\\":\\\"support.type.vb.asp\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(Array|Add|Asc|Atn|CBool|CByte|CCur|CDate|CDbl|Chr|CInt|CLng|Conversions|Cos|CreateObject|CSng|CStr|Date|DateAdd|DateDiff|DatePart|DateSerial|DateValue|Day|Derived|Math|Escape|Eval|Exists|Exp|Filter|FormatCurrency|FormatDateTime|FormatNumber|FormatPercent|GetLocale|GetObject|GetRef|Hex|Hour|InputBox|InStr|InStrRev|Int|Fix|IsArray|IsDate|IsEmpty|IsNull|IsNumeric|IsObject|Item|Items|Join|Keys|LBound|LCase|Left|Len|LoadPicture|Log|LTrim|RTrim|Trim|Maths|Mid|Minute|Month|MonthName|MsgBox|Now|Oct|Remove|RemoveAll|Replace|RGB|Right|Rnd|Round|ScriptEngine|ScriptEngineBuildVersion|ScriptEngineMajorVersion|ScriptEngineMinorVersion|Second|SetLocale|Sgn|Sin|Space|Split|Sqr|StrComp|String|StrReverse|Tan|Time|Timer|TimeSerial|TimeValue|TypeName|UBound|UCase|Unescape|VarType|Weekday|WeekdayName|Year)\\\\\\\\b)\\\",\\\"name\\\":\\\"support.function.vb.asp\\\"},{\\\"match\\\":\\\"-?\\\\\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\\\\\.?[0-9]*)|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.asp\\\"},{\\\"match\\\":\\\"(?i:\\\\\\\\b(vbtrue|vbfalse|vbcr|vbcrlf|vbformfeed|vblf|vbnewline|vbnullchar|vbnullstring|int32|vbtab|vbverticaltab|vbbinarycompare|vbtextcomparevbsunday|vbmonday|vbtuesday|vbwednesday|vbthursday|vbfriday|vbsaturday|vbusesystemdayofweek|vbfirstjan1|vbfirstfourdays|vbfirstfullweek|vbgeneraldate|vblongdate|vbshortdate|vblongtime|vbshorttime|vbobjecterror|vbEmpty|vbNull|vbInteger|vbLong|vbSingle|vbDouble|vbCurrency|vbDate|vbString|vbObject|vbError|vbBoolean|vbVariant|vbDataObject|vbDecimal|vbByte|vbArray)\\\\\\\\b)\\\",\\\"name\\\":\\\"support.type.vb.asp\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.asp\\\"}},\\\"match\\\":\\\"(?i:(\\\\\\\\b[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\\\\\\\b)(?=\\\\\\\\(\\\\\\\\)?))\\\",\\\"name\\\":\\\"support.function.asp\\\"},{\\\"match\\\":\\\"(?i:((?<=(\\\\\\\\+|=|-|\\\\\\\\&|\\\\\\\\\\\\\\\\|/|<|>|\\\\\\\\(|,))\\\\\\\\s*\\\\\\\\b([a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?)\\\\\\\\b(?!(\\\\\\\\(|\\\\\\\\.))|\\\\\\\\b([a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?)\\\\\\\\b(?=\\\\\\\\s*(\\\\\\\\+|=|-|\\\\\\\\&|\\\\\\\\\\\\\\\\|/|<|>|\\\\\\\\(|\\\\\\\\)))))\\\",\\\"name\\\":\\\"variable.other.asp\\\"},{\\\"match\\\":\\\"!|\\\\\\\\$|%|&|\\\\\\\\*|\\\\\\\\-\\\\\\\\-|\\\\\\\\-|\\\\\\\\+\\\\\\\\+|\\\\\\\\+|~|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\?\\\\\\\\:|\\\\\\\\*=|/=|%=|\\\\\\\\+=|\\\\\\\\-=|&=|\\\\\\\\^=|\\\\\\\\b(in|instanceof|new|delete|typeof|void)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.js\\\"}],\\\"repository\\\":{\\\"round-brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.round-brackets.begin.asp\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.round-brackets.end.asp\\\"}},\\\"name\\\":\\\"meta.round-brackets\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.asp.vb.net\\\"}]}},\\\"scopeName\\\":\\\"source.asp.vb.net\\\",\\\"aliases\\\":[\\\"cmd\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Verilog\\\",\\\"fileTypes\\\":[\\\"v\\\",\\\"vh\\\"],\\\"name\\\":\\\"verilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#module_pattern\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#operators\\\"}],\\\"repository\\\":{\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[ \\\\\\\\t]+)?(?=//)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.verilog\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"//\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.verilog\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.double-slash.verilog\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.c-style.verilog\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"`(?!(celldefine|endcelldefine|default_nettype|define|undef|ifdef|ifndef|else|endif|include|resetall|timescale|unconnected_drive|nounconnected_drive))[a-z_A-Z][a-zA-Z0-9_$]*\\\",\\\"name\\\":\\\"variable.other.constant.verilog\\\"},{\\\"match\\\":\\\"[0-9]*'[bBoOdDhH][a-fA-F0-9_xXzZ]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.sized_integer.verilog\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.numeric.integer.verilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.range.verilog\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.integer.verilog\\\"}},\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\d+)(:)(\\\\\\\\d+)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.block.numeric.range.verilog\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d[\\\\\\\\d_]*(?i:e\\\\\\\\d+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.verilog\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+\\\\\\\\.\\\\\\\\d+(?i:e\\\\\\\\d+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.real.verilog\\\"},{\\\"match\\\":\\\"#\\\\\\\\d+\\\",\\\"name\\\":\\\"constant.numeric.delay.verilog\\\"},{\\\"match\\\":\\\"\\\\\\\\b[01xXzZ]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.logic.verilog\\\"}]},\\\"instantiation_patterns\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*(?!always|and|assign|output|input|inout|wire|module)([a-zA-Z][a-zA-Z0-9_]*)\\\\\\\\s+([a-zA-Z][a-zA-Z0-9_]*)(?<!begin|if)\\\\\\\\s*(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.module.reference.verilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.module.identifier.verilog\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.expression.verilog\\\"}},\\\"name\\\":\\\"meta.block.instantiation.parameterless.verilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*([a-zA-Z][a-zA-Z0-9_]*)\\\\\\\\s*(#)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.module.reference.verilog\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.expression.verilog\\\"}},\\\"name\\\":\\\"meta.block.instantiation.with.parameters.verilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthetical_list\\\"},{\\\"match\\\":\\\"[a-zA-Z][a-zA-Z0-9_]*\\\",\\\"name\\\":\\\"entity.name.tag.module.identifier.verilog\\\"}]}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(always|and|assign|attribute|begin|buf|bufif0|bufif1|case[xz]?|cmos|deassign|default|defparam|disable|edge|else|end(attribute|case|function|generate|module|primitive|specify|table|task)?|event|for|force|forever|fork|function|generate|genvar|highz(01)|if(none)?|initial|inout|input|integer|join|localparam|medium|module|large|macromodule|nand|negedge|nmos|nor|not|notif(01)|or|output|parameter|pmos|posedge|primitive|pull0|pull1|pulldown|pullup|rcmos|real|realtime|reg|release|repeat|rnmos|rpmos|rtran|rtranif(01)|scalared|signed|small|specify|specparam|strength|strong0|strong1|supply0|supply1|table|task|time|tran|tranif(01)|tri(01)?|tri(and|or|reg)|unsigned|vectored|wait|wand|weak(01)|while|wire|wor|xnor|xor)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.verilog\\\"},{\\\"match\\\":\\\"^\\\\\\\\s*`((cell)?define|default_(decay_time|nettype|trireg_strength)|delay_mode_(path|unit|zero)|ifdef|ifndef|include|end(if|celldefine)|else|(no)?unconnected_drive|resetall|timescale|undef)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.compiler.directive.verilog\\\"},{\\\"match\\\":\\\"\\\\\\\\$(f(open|close)|readmem(b|h)|timeformat|printtimescale|stop|finish|(s|real)?time|realtobits|bitstoreal|rtoi|itor|(f)?(display|write(h|b)))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.system.console.tasks.verilog\\\"},{\\\"match\\\":\\\"\\\\\\\\$(random|dist_(chi_square|erlang|exponential|normal|poisson|t|uniform))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.system.random_number.tasks.verilog\\\"},{\\\"match\\\":\\\"\\\\\\\\$((a)?sync\\\\\\\\$((n)?and|(n)or)\\\\\\\\$(array|plane))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.system.pld_modeling.tasks.verilog\\\"},{\\\"match\\\":\\\"\\\\\\\\$(q_(initialize|add|remove|full|exam))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.system.stochastic.tasks.verilog\\\"},{\\\"match\\\":\\\"\\\\\\\\$(hold|nochange|period|recovery|setup(hold)?|skew|width)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.system.timing.tasks.verilog\\\"},{\\\"match\\\":\\\"\\\\\\\\$(dump(file|vars|off|on|all|limit|flush))\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.system.vcd.tasks.verilog\\\"},{\\\"match\\\":\\\"\\\\\\\\$(countdrivers|list|input|scope|showscopes|(no)?(key|log)|reset(_count|_value)?|(inc)?save|restart|showvars|getpattern|sreadmem(b|h)|scale)\\\",\\\"name\\\":\\\"support.function.non-standard.tasks.verilog\\\"}]},\\\"module_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(module)\\\\\\\\s+([a-zA-Z][a-zA-Z0-9_]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.module.verilog\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.module.verilog\\\"}},\\\"end\\\":\\\"\\\\\\\\bendmodule\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.module.verilog\\\"}},\\\"name\\\":\\\"meta.block.module.verilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#instantiation_patterns\\\"},{\\\"include\\\":\\\"#operators\\\"}]}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\+|-|\\\\\\\\*|/|%|(<|>)=?|(!|=)?==?|!|&&?|\\\\\\\\|\\\\\\\\|?|\\\\\\\\^?~|~\\\\\\\\^?\\\",\\\"name\\\":\\\"keyword.operator.verilog\\\"}]},\\\"parenthetical_list\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.list.verilog\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.list.verilog\\\"}},\\\"name\\\":\\\"meta.block.parenthetical_list.verilog\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthetical_list\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#strings\\\"}]}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.verilog\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.verilog\\\"}]}]}},\\\"scopeName\\\":\\\"source.verilog\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"VHDL\\\",\\\"fileTypes\\\":[\\\"vhd\\\",\\\"vhdl\\\",\\\"vho\\\",\\\"vht\\\"],\\\"name\\\":\\\"vhdl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_processing\\\"},{\\\"include\\\":\\\"#cleanup\\\"}],\\\"repository\\\":{\\\"architecture_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((?i:architecture))\\\\\\\\s+(([a-zA-z][a-zA-z0-9_]*)|(.+))(?=\\\\\\\\s)\\\\\\\\s+((?i:of))\\\\\\\\s+(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))(?=\\\\\\\\s*(?i:is))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.architecture.begin.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.type.entity.reference.vhdl\\\"},\\\"8\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end))(\\\\\\\\s+((?i:architecture)))?(\\\\\\\\s+((\\\\\\\\3)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.type.architecture.end.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"name\\\":\\\"support.block.architecture\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_pattern\\\"},{\\\"include\\\":\\\"#function_definition_pattern\\\"},{\\\"include\\\":\\\"#procedure_definition_pattern\\\"},{\\\"include\\\":\\\"#component_pattern\\\"},{\\\"include\\\":\\\"#if_pattern\\\"},{\\\"include\\\":\\\"#process_pattern\\\"},{\\\"include\\\":\\\"#type_pattern\\\"},{\\\"include\\\":\\\"#record_pattern\\\"},{\\\"include\\\":\\\"#for_pattern\\\"},{\\\"include\\\":\\\"#entity_instantiation_pattern\\\"},{\\\"include\\\":\\\"#component_instantiation_pattern\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"attribute_list\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\'\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthetical_list\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"block_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)\\\\\\\\s*(:)\\\\\\\\s*)?(\\\\\\\\s*(?i:block))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"meta.block.block.name\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"((?i:end\\\\\\\\s+block))(\\\\\\\\s+((\\\\\\\\2)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.block.block.end\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"name\\\":\\\"meta.block.block\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#control_patterns\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"block_processing\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#package_pattern\\\"},{\\\"include\\\":\\\"#package_body_pattern\\\"},{\\\"include\\\":\\\"#entity_pattern\\\"},{\\\"include\\\":\\\"#architecture_pattern\\\"}]},\\\"case_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((([a-zA-Z][a-zA-Z0-9_]*)|(.+?))\\\\\\\\s*:\\\\\\\\s*)?\\\\\\\\b((?i:case))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.case.begin.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end))\\\\\\\\s*(\\\\\\\\s+(((?i:case))|(.*?)))(\\\\\\\\s+((\\\\\\\\2)|(.*?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.case.required.vhdl\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.tag.case.end.vhdl\\\"},\\\"9\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#control_patterns\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"cleanup\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#constants_numeric\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#attribute_list\\\"},{\\\"include\\\":\\\"#syntax_highlighting\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"--.*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-dash.vhdl\\\"}]},\\\"component_instantiation_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*([a-zA-Z][a-zA-Z0-9_]*)\\\\\\\\s*(:)\\\\\\\\s*([a-zA-Z][a-zA-Z0-9_]*)\\\\\\\\b(?=\\\\\\\\s*($|generic|port))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.section.component_instantiation.vhdl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.component.reference.vhdl\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthetical_list\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"component_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*\\\\\\\\b((?i:component))\\\\\\\\s+(([a-zA-Z_][a-zA-Z0-9_]*)\\\\\\\\s*|(.+?))(?=\\\\\\\\b(?i:is|port)\\\\\\\\b|$|--)(\\\\\\\\b((?i:is\\\\\\\\b)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.component.begin.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end))\\\\\\\\s+(((?i:component\\\\\\\\b))|(.+?))(?=\\\\\\\\s*|;)(\\\\\\\\s+((\\\\\\\\3)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.component.keyword.required.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.type.component.end.vhdl\\\"},\\\"8\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#generic_list_pattern\\\"},{\\\"include\\\":\\\"#port_list_pattern\\\"},{\\\"include\\\":\\\"#comments\\\"}]}]},\\\"constants_numeric\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b([+\\\\\\\\-]?[\\\\\\\\d_]+\\\\\\\\.[\\\\\\\\d_]+([eE][+\\\\\\\\-]?[\\\\\\\\d_]+)?)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.floating_point.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d+#[\\\\\\\\h_]+#\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.base_pound_number_pound.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b[\\\\\\\\d_]+([eE][\\\\\\\\d_]+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.vhdl\\\"},{\\\"match\\\":\\\"[xX]\\\\\\\"[0-9a-fA-F_uUxXzZwWlLhH\\\\\\\\-]+\\\\\\\"\\\",\\\"name\\\":\\\"constant.numeric.quoted.double.string.hex.vhdl\\\"},{\\\"match\\\":\\\"[oO]\\\\\\\"[0-7_uUxXzZwWlLhH\\\\\\\\-]+\\\\\\\"\\\",\\\"name\\\":\\\"constant.numeric.quoted.double.string.octal.vhdl\\\"},{\\\"match\\\":\\\"[bB]?\\\\\\\"[01_uUxXzZwWlLhH\\\\\\\\-]+\\\\\\\"\\\",\\\"name\\\":\\\"constant.numeric.quoted.double.string.binary.vhdl\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.quoted.double.string.vhdl\\\"}},\\\"match\\\":\\\"([bBoOxX]\\\\\\\".+?\\\\\\\")\\\",\\\"name\\\":\\\"constant.numeric.quoted.double.string.illegal.vhdl\\\"},{\\\"match\\\":\\\"'[01uUxXzZwWlLhH\\\\\\\\-]'\\\",\\\"name\\\":\\\"constant.numeric.quoted.single.std_logic\\\"}]},\\\"control_patterns\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#case_pattern\\\"},{\\\"include\\\":\\\"#if_pattern\\\"},{\\\"include\\\":\\\"#for_pattern\\\"},{\\\"include\\\":\\\"#while_pattern\\\"}]},\\\"entity_instantiation_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*([a-zA-Z][a-zA-Z0-9_]*)\\\\\\\\s*(:)\\\\\\\\s*(((?i:use))\\\\\\\\s+)?((?i:entity))\\\\\\\\s+((([a-zA-Z][a-zA-Z0-9_]*)|(.+?))(\\\\\\\\.))?(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))(?=\\\\\\\\s*(\\\\\\\\(|$|(?i:port|generic)))(\\\\\\\\s*(\\\\\\\\()\\\\\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))(?=\\\\\\\\s*\\\\\\\\))\\\\\\\\s*(\\\\\\\\)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.section.entity_instantiation.vhdl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.tag.library.reference.vhdl\\\"},\\\"9\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"10\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"},\\\"12\\\":{\\\"name\\\":\\\"entity.name.tag.entity.reference.vhdl\\\"},\\\"13\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"16\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"},\\\"18\\\":{\\\"name\\\":\\\"entity.name.tag.architecture.reference.vhdl\\\"},\\\"19\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"21\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthetical_list\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"entity_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((?i:entity\\\\\\\\b))\\\\\\\\s+(([a-zA-Z][a-zA-Z\\\\\\\\d_]*)|(.+?))(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.entity.begin.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end\\\\\\\\b))(\\\\\\\\s+((?i:entity)))?(\\\\\\\\s+((\\\\\\\\3)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.type.entity.end.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#generic_list_pattern\\\"},{\\\"include\\\":\\\"#port_list_pattern\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"for_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)\\\\\\\\s*(:)\\\\\\\\s*)?(?!(?i:wait\\\\\\\\s*))\\\\\\\\b((?i:for))\\\\\\\\b(?!\\\\\\\\s*(?i:all))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.for.generate.begin.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end))\\\\\\\\s+(((?i:generate|loop))|(\\\\\\\\S+))\\\\\\\\b(\\\\\\\\s+((\\\\\\\\2)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.loop.or.generate.required.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.tag.for.generate.end.vhdl\\\"},\\\"8\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#control_patterns\\\"},{\\\"include\\\":\\\"#entity_instantiation_pattern\\\"},{\\\"include\\\":\\\"#component_pattern\\\"},{\\\"include\\\":\\\"#component_instantiation_pattern\\\"},{\\\"include\\\":\\\"#process_pattern\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"function_definition_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((?i:impure)?\\\\\\\\s*(?i:function))\\\\\\\\s+(([a-zA-Z][a-zA-Z\\\\\\\\d_]*)|(\\\\\\\"\\\\\\\\S+\\\\\\\")|(\\\\\\\\\\\\\\\\.+\\\\\\\\\\\\\\\\)|(.+?))(?=\\\\\\\\s*(\\\\\\\\(|(?i:\\\\\\\\breturn\\\\\\\\b)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.function.begin.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.function.begin.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.function.begin.vhdl\\\"},\\\"6\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((?i:end))(\\\\\\\\s+((?i:function)))?(\\\\\\\\s+((\\\\\\\\3|\\\\\\\\4|\\\\\\\\5)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.function.function.end.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#control_patterns\\\"},{\\\"include\\\":\\\"#parenthetical_list\\\"},{\\\"include\\\":\\\"#type_pattern\\\"},{\\\"include\\\":\\\"#record_pattern\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"function_prototype_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((?i:impure)?\\\\\\\\s*(?i:function))\\\\\\\\s+(([a-zA-Z][a-zA-Z\\\\\\\\d_]*)|(\\\\\\\"\\\\\\\\S+\\\\\\\")|(\\\\\\\\\\\\\\\\.+\\\\\\\\\\\\\\\\)|(.+?))(?=\\\\\\\\s*(\\\\\\\\(|(?i:\\\\\\\\breturn\\\\\\\\b)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.function.prototype.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.function.prototype.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.function.prototype.vhdl\\\"},\\\"6\\\":{\\\"name\\\":\\\"invalid.illegal.function.name.vhdl\\\"}},\\\"end\\\":\\\"(?<=;)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?i:return)(?=\\\\\\\\s+[^;]+\\\\\\\\s*;)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\;\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.function_prototype.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthetical_list\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]},{\\\"include\\\":\\\"#parenthetical_list\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"generic_list_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?i:generic)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthetical_list\\\"}]}]},\\\"if_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(([a-zA-Z][a-zA-Z0-9_]*)\\\\\\\\s*(:)\\\\\\\\s*)?\\\\\\\\b((?i:if))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.if.generate.begin.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end))\\\\\\\\s+((((?i:generate|if))|(\\\\\\\\S+))\\\\\\\\b(\\\\\\\\s+((\\\\\\\\2)|(.+?)))?)?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.if.or.generate.required.vhdl\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.tag.if.generate.end.vhdl\\\"},\\\"9\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#control_patterns\\\"},{\\\"include\\\":\\\"#process_pattern\\\"},{\\\"include\\\":\\\"#entity_instantiation_pattern\\\"},{\\\"include\\\":\\\"#component_pattern\\\"},{\\\"include\\\":\\\"#component_instantiation_pattern\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"'(?i:active|ascending|base|delayed|driving|driving_value|event|high|image|instance|instance_name|last|last_value|left|leftof|length|low|path|path_name|pos|pred|quiet|range|reverse|reverse_range|right|rightof|simple|simple_name|stable|succ|transaction|val|value)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.attributes.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:abs|access|after|alias|all|and|architecture|array|assert|attribute|begin|block|body|buffer|bus|case|component|configuration|constant|context|deallocate|disconnect|downto|else|elsif|end|entity|exit|file|for|force|function|generate|generic|group|guarded|if|impure|in|inertial|inout|is|label|library|linkage|literal|loop|map|mod|nand|new|next|nor|not|null|of|on|open|or|others|out|package|port|postponed|procedure|process|protected|pure|range|record|register|reject|release|rem|report|return|rol|ror|select|severity|shared|signal|sla|sll|sra|srl|subtype|then|to|transport|type|unaffected|units|until|use|variable|wait|when|while|with|xnor|xor)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.language.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:std|ieee|work|standard|textio|std_logic_1164|std_logic_arith|std_logic_misc|std_logic_signed|std_logic_textio|std_logic_unsigned|numeric_bit|numeric_std|math_complex|math_real|vital_primitives|vital_timing)\\\\\\\\b\\\",\\\"name\\\":\\\"standard.library.language.vhdl\\\"},{\\\"match\\\":\\\"(\\\\\\\\+|\\\\\\\\-|<=|=|=>|:=|>=|>|<|/|\\\\\\\\||&|(\\\\\\\\*{1,2}))\\\",\\\"name\\\":\\\"keyword.operator.vhdl\\\"}]},\\\"package_body_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((?i:package))\\\\\\\\s+((?i:body))\\\\\\\\s+(([a-zA-Z][a-zA-Z\\\\\\\\d_]*)|(.+?))\\\\\\\\s+((?i:is))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.section.package_body.begin.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end\\\\\\\\b))(\\\\\\\\s+((?i:package))\\\\\\\\s+((?i:body)))?(\\\\\\\\s+((\\\\\\\\4)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.section.package_body.end.vhdl\\\"},\\\"8\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#protected_body_pattern\\\"},{\\\"include\\\":\\\"#function_definition_pattern\\\"},{\\\"include\\\":\\\"#procedure_definition_pattern\\\"},{\\\"include\\\":\\\"#type_pattern\\\"},{\\\"include\\\":\\\"#subtype_pattern\\\"},{\\\"include\\\":\\\"#record_pattern\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"package_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((?i:package))\\\\\\\\s+(?!(?i:body))(([a-zA-Z][a-zA-Z\\\\\\\\d_]*)|(.+?))\\\\\\\\s+((?i:is))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.section.package.begin.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end\\\\\\\\b))(\\\\\\\\s+((?i:package)))?(\\\\\\\\s+((\\\\\\\\2)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.section.package.end.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#protected_pattern\\\"},{\\\"include\\\":\\\"#function_prototype_pattern\\\"},{\\\"include\\\":\\\"#procedure_prototype_pattern\\\"},{\\\"include\\\":\\\"#type_pattern\\\"},{\\\"include\\\":\\\"#subtype_pattern\\\"},{\\\"include\\\":\\\"#record_pattern\\\"},{\\\"include\\\":\\\"#component_pattern\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"parenthetical_list\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=['\\\\\\\"a-zA-Z0-9])\\\",\\\"end\\\":\\\"(;|\\\\\\\\)|,)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"name\\\":\\\"source.vhdl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#parenthetical_pair\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"invalid.illegal.unexpected.parenthesis.vhdl\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"parenthetical_pair\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthetical_pair\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"port_list_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?i:port)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\))\\\\\\\\s*;\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthetical_list\\\"}]}]},\\\"procedure_definition_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*((?i:procedure))\\\\\\\\s+(([a-zA-Z][a-zA-Z\\\\\\\\d_]*)|(\\\\\\\"\\\\\\\\S+\\\\\\\")|(.+?))(?=\\\\\\\\s*(\\\\\\\\(|(?i:is)))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.procedure.begin.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.function.procedure.begin.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"}},\\\"end\\\":\\\"^\\\\\\\\s*((?i:end))(\\\\\\\\s+((?i:procedure)))?(\\\\\\\\s+((\\\\\\\\3|\\\\\\\\4)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.function.procedure.end.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthetical_list\\\"},{\\\"include\\\":\\\"#control_patterns\\\"},{\\\"include\\\":\\\"#type_pattern\\\"},{\\\"include\\\":\\\"#record_pattern\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"procedure_prototype_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((?i:procedure))\\\\\\\\s+(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))(?=\\\\\\\\s*(\\\\\\\\(|;))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.procedure.begin.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctual.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#parenthetical_list\\\"}]}]},\\\"process_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)\\\\\\\\s*(:)\\\\\\\\s*)?((?:postponed\\\\\\\\s+)?(?i:process\\\\\\\\b))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.section.process.begin.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"((?i:end))(\\\\\\\\s+((?:postponed\\\\\\\\s+)?(?i:process)))(\\\\\\\\s+((\\\\\\\\2)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"6\\\":{\\\"name\\\":\\\"entity.name.section.process.end.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#control_patterns\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"protected_body_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((?i:type))\\\\\\\\s+(([a-zA-Z][a-zA-Z\\\\\\\\d_]*)|(.+?))\\\\\\\\s+\\\\\\\\b((?i:is\\\\\\\\s+protected\\\\\\\\s+body))\\\\\\\\s+\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.section.protected_body.begin.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end\\\\\\\\s+protected\\\\\\\\s+body))(\\\\\\\\s+((\\\\\\\\3)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.section.protected_body.end.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_definition_pattern\\\"},{\\\"include\\\":\\\"#procedure_definition_pattern\\\"},{\\\"include\\\":\\\"#type_pattern\\\"},{\\\"include\\\":\\\"#subtype_pattern\\\"},{\\\"include\\\":\\\"#record_pattern\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"protected_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((?i:type))\\\\\\\\s+(([a-zA-Z][a-zA-Z\\\\\\\\d_]*)|(.+?))\\\\\\\\s+\\\\\\\\b((?i:is\\\\\\\\s+protected))\\\\\\\\s+(?!(?i:body))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdls\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.section.protected.begin.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end\\\\\\\\s+protected))(\\\\\\\\s+((\\\\\\\\3)|(.+?)))?(?!(?i:body))(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.section.protected.end.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function_prototype_pattern\\\"},{\\\"include\\\":\\\"#procedure_prototype_pattern\\\"},{\\\"include\\\":\\\"#type_pattern\\\"},{\\\"include\\\":\\\"#subtype_pattern\\\"},{\\\"include\\\":\\\"#record_pattern\\\"},{\\\"include\\\":\\\"#component_pattern\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\.|,|:|;|\\\\\\\\(|\\\\\\\\))\\\",\\\"name\\\":\\\"punctuation.vhdl\\\"}]},\\\"record_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?i:record)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end))\\\\\\\\s+((?i:record))(\\\\\\\\s+(([a-zA-Z][a-zA-Z\\\\\\\\d_]*)|(.*?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.type.record.vhdl\\\"},\\\"6\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#cleanup\\\"}]},{\\\"include\\\":\\\"#cleanup\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"'.'\\\",\\\"name\\\":\\\"string.quoted.single.vhdl\\\"},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.vhdl\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.vhdl\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"end\\\":\\\"\\\\\\\\\\\\\\\\\\\",\\\"name\\\":\\\"string.other.backslash.vhdl\\\"}]},\\\"subtype_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((?i:subtype))\\\\\\\\s+(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))\\\\\\\\s+((?i:is))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.subtype.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"support_constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?i:math_1_over_e|math_1_over_pi|math_1_over_sqrt_2|math_2_pi|math_3_pi_over_2|math_deg_to_rad|math_e|math_log10_of_e|math_log2_of_e|math_log_of_10|math_log_of_2|math_pi|math_pi_over_2|math_pi_over_3|math_pi_over_4|math_rad_to_deg|math_sqrt_2|math_sqrt_pi)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.ieee.math_real.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:math_cbase_1|math_cbase_j|math_czero|positive_real|principal_value)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.ieee.math_complex.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"support.constant.std.standard.vhdl\\\"}]},\\\"support_functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?i:finish|stop|resolution_limit)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.std.env.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:readline|read|writeline|write|endfile|endline)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.std.textio.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:rising_edge|falling_edge|to_bit|to_bitvector|to_stdulogic|to_stdlogicvector|to_stdulogicvector|is_x)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ieee.std_logic_1164.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:shift_left|shift_right|rotate_left|rotate_right|resize|to_integer|to_unsigned|to_signed)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ieee.numeric_std.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:arccos(h?)|arcsin(h?)|arctan|arctanh|cbrt|ceil|cos|cosh|exp|floor|log10|log2|log|realmax|realmin|round|sign|sin|sinh|sqrt|tan|tanh|trunc)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ieee.math_real.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:arg|cmplx|complex_to_polar|conj|get_principal_value|polar_to_complex)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.ieee.math_complex.vhdl\\\"}]},\\\"support_types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?i:boolean|bit|character|severity_level|integer|real|time|delay_length|now|natural|positive|string|bit_vector|file_open_kind|file_open_status|fs|ps|ns|us|ms|sec|min|hr|severity_level|note|warning|error|failure)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.std.standard.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:line|text|side|width|input|output)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.std.textio.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:std_logic|std_ulogic|std_logic_vector|std_ulogic_vector)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.ieee.std_logic_1164.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:signed|unsigned)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.ieee.numeric_std.vhdl\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?i:complex|complex_polar)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.ieee.math_complex.vhdl\\\"}]},\\\"syntax_highlighting\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#support_constants\\\"},{\\\"include\\\":\\\"#support_types\\\"},{\\\"include\\\":\\\"#support_functions\\\"}]},\\\"type_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b((?i:type))\\\\\\\\s+(([a-zA-Z][a-zA-Z0-9_]*)|(.+?))((?=\\\\\\\\s*;)|(\\\\\\\\s+((?i:is))))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.type.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.invalid.identifier.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#record_pattern\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]},\\\"while_pattern\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(([a-zA-Z][a-zA-Z0-9_]*)\\\\\\\\s*(:)\\\\\\\\s*)?\\\\\\\\b((?i:while))\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"}},\\\"end\\\":\\\"\\\\\\\\b((?i:end))\\\\\\\\s+(((?i:loop))|(\\\\\\\\S+))\\\\\\\\b(\\\\\\\\s+((\\\\\\\\2)|(.+?)))?(?=\\\\\\\\s*;)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.language.vhdl\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.loop.keyword.required.vhdl\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.name.tag.while.loop.vhdl\\\"},\\\"8\\\":{\\\"name\\\":\\\"invalid.illegal.mismatched.identifier\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#control_patterns\\\"},{\\\"include\\\":\\\"#cleanup\\\"}]}]}},\\\"scopeName\\\":\\\"source.vhdl\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Vim Script\\\",\\\"name\\\":\\\"viml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comment\\\"},{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#entity\\\"},{\\\"include\\\":\\\"#keyword\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#storage\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#support\\\"},{\\\"include\\\":\\\"#variable\\\"},{\\\"include\\\":\\\"#syntax\\\"},{\\\"include\\\":\\\"#commands\\\"},{\\\"include\\\":\\\"#option\\\"},{\\\"include\\\":\\\"#map\\\"}],\\\"repository\\\":{\\\"commands\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bcom(\\\\\\\\s|\\\\\\\\!)\\\",\\\"name\\\":\\\"storage.other.command.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\bau(\\\\\\\\s|\\\\\\\\!)\\\",\\\"name\\\":\\\"storage.other.command.viml\\\"},{\\\"match\\\":\\\"-bang\\\",\\\"name\\\":\\\"storage.other.command.bang.viml\\\"},{\\\"match\\\":\\\"-nargs=[*+0-9]+\\\",\\\"name\\\":\\\"storage.other.command.args.viml\\\"},{\\\"match\\\":\\\"-complete=\\\\\\\\S+\\\",\\\"name\\\":\\\"storage.other.command.completion.viml\\\"},{\\\"begin\\\":\\\"(aug(roup)?)\\\",\\\"end\\\":\\\"(augroup\\\\\\\\sEND|$)\\\",\\\"name\\\":\\\"support.function.augroup.viml\\\"}]},\\\"comment\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"((\\\\\\\\s+)?\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"end\\\":\\\"^(?!\\\\\\\")\\\",\\\"name\\\":\\\"comment.block.documentation.viml\\\"},{\\\"match\\\":\\\"^\\\\\\\"\\\\\\\\svim:.*\\\",\\\"name\\\":\\\"comment.block.modeline.viml\\\"},{\\\"begin\\\":\\\"(\\\\\\\\s+\\\\\\\"\\\\\\\\s+)(?!\\\\\\\")\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.viml\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\{\\\\\\\\{\\\\\\\\{\\\\\\\\d?$\\\",\\\"name\\\":\\\"comment.line.foldmarker.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\}\\\\\\\\}\\\\\\\\}\\\\\\\\d?\\\",\\\"name\\\":\\\"comment.line.foldmarker.viml\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s+)?\\\\\\\"\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.viml\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\{\\\\\\\\{\\\\\\\\{\\\\\\\\d?$\\\",\\\"name\\\":\\\"comment.line.foldmarker.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\}\\\\\\\\}\\\\\\\\}\\\\\\\\d?\\\",\\\"name\\\":\\\"comment.line.foldmarker.viml\\\"}]}]},\\\"constant\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b([0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.viml\\\"}]},\\\"entity\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(([absg]\\\\\\\\:)?[a-zA-Z0-9_#.]{2,})\\\\\\\\b(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.viml\\\"}]},\\\"keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(if|while|for|return|au(g|group)|else(if|)?|do|in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(end|endif|endfor|endwhile)\\\\\\\\s|$\\\",\\\"name\\\":\\\"keyword.control.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(break|continue|try|catch|endtry|finally|finish|throw|range)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(fun|func|function|endfunction|endfunc)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.function.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(normal|silent)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.viml\\\"},{\\\"include\\\":\\\"#operators\\\"}]},\\\"map\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.map.viml\\\"}},\\\"end\\\":\\\"(\\\\\\\\>|\\\\\\\\s)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.map.viml\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=:\\\\\\\\s)(.+)\\\",\\\"name\\\":\\\"constant.character.map.rhs.viml\\\"},{\\\"match\\\":\\\"(?i:(bang|buffer|expr|nop|plug|sid|silent))\\\",\\\"name\\\":\\\"constant.character.map.special.viml\\\"},{\\\"match\\\":\\\"(?i:([adcms]-\\\\\\\\w))\\\",\\\"name\\\":\\\"constant.character.map.key.viml\\\"},{\\\"match\\\":\\\"(?i:(F[0-9]+))\\\",\\\"name\\\":\\\"constant.character.map.key.fn.viml\\\"},{\\\"match\\\":\\\"(?i:(bs|bar|cr|del|down|esc|left|right|space|tab|up|leader))\\\",\\\"name\\\":\\\"constant.character.map.viml\\\"}]},{\\\"match\\\":\\\"(\\\\\\\\b([cinostvx]?(nore)?map)\\\\\\\\b)\\\",\\\"name\\\":\\\"storage.type.map.viml\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([#+?!=~\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"keyword.operator.viml\\\"},{\\\"match\\\":\\\" ([:\\\\\\\\-.]|[&|]{2})( |$)\\\",\\\"name\\\":\\\"keyword.operator.viml\\\"},{\\\"match\\\":\\\"([.]{3})\\\",\\\"name\\\":\\\"keyword.operator.viml\\\"},{\\\"match\\\":\\\"( [<>] )\\\",\\\"name\\\":\\\"keyword.operator.viml\\\"},{\\\"match\\\":\\\"(>=)\\\",\\\"name\\\":\\\"keyword.operator.viml\\\"}]},\\\"option\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"&?\\\\\\\\b(al|aleph|anti|antialias|arab|arabic|arshape|arabicshape|ari|allowrevins|akm|altkeymap|ambw|ambiwidth|acd|autochdir|ai|autoindent|ar|autoread|aw|autowrite|awa|autowriteall|bg|background|bs|backspace|bk|backup|bkc|backupcopy|bdir|backupdir|bex|backupext|bsk|backupskip|bdlay|balloondelay|beval|ballooneval|bevalterm|balloonevalterm|bexpr|balloonexpr|bo|belloff|bin|binary|bomb|brk|breakat|bri|breakindent|briopt|breakindentopt|bsdir|browsedir|bh|bufhidden|bl|buflisted|bt|buftype|cmp|casemap|cd|cdpath|cedit|ccv|charconvert|cin|cindent|cink|cinkeys|cino|cinoptions|cinw|cinwords|cb|clipboard|ch|cmdheight|cwh|cmdwinheight|cc|colorcolumn|co|columns|com|comments|cms|commentstring|cp|compatible|cpt|complete|cocu|concealcursor|cole|conceallevel|cfu|completefunc|cot|completeopt|cf|confirm|ci|copyindent|cpo|cpoptions|cm|cryptmethod|cspc|cscopepathcomp|csprg|cscopeprg|csqf|cscopequickfix|csre|cscoperelative|cst|cscopetag|csto|cscopetagorder|csverb|cscopeverbose|crb|cursorbind|cuc|cursorcolumn|cul|cursorline|debug|def|define|deco|delcombine|dict|dictionary|diff|dex|diffexpr|dip|diffopt|dg|digraph|dir|directory|dy|display|ead|eadirection|ed|edcompatible|emo|emoji|enc|encoding|eol|endofline|ea|equalalways|ep|equalprg|eb|errorbells|ef|errorfile|efm|errorformat|ek|esckeys|ei|eventignore|et|expandtab|ex|exrc|fenc|fileencoding|fencs|fileencodings|ff|fileformat|ffs|fileformats|fic|fileignorecase|ft|filetype|fcs|fillchars|fixeol|fixendofline|fk|fkmap|fcl|foldclose|fdc|foldcolumn|fen|foldenable|fde|foldexpr|fdi|foldignore|fdl|foldlevel|fdls|foldlevelstart|fmr|foldmarker|fdm|foldmethod|fml|foldminlines|fdn|foldnestmax|fdo|foldopen|fdt|foldtext|fex|formatexpr|fo|formatoptions|flp|formatlistpat|fp|formatprg|fs|fsync|gd|gdefault|gfm|grepformat|gp|grepprg|gcr|guicursor|gfn|guifont|gfs|guifontset|gfw|guifontwide|ghr|guiheadroom|go|guioptions|guipty|gtl|guitablabel|gtt|guitabtooltip|hf|helpfile|hh|helpheight|hlg|helplang|hid|hidden|hl|highlight|hi|history|hk|hkmap|hkp|hkmapp|hls|hlsearch|icon|iconstring|ic|ignorecase|imaf|imactivatefunc|imak|imactivatekey|imc|imcmdline|imd|imdisable|imi|iminsert|ims|imsearch|imsf|imstatusfunc|imst|imstyle|inc|include|inex|includeexpr|is|incsearch|inde|indentexpr|indk|indentkeys|inf|infercase|im|insertmode|isf|isfname|isi|isident|isk|iskeyword|isp|isprint|js|joinspaces|key|kmp|keymap|km|keymodel|kp|keywordprg|lmap|langmap|lm|langmenu|lnr|langnoremap|lrm|langremap|ls|laststatus|lz|lazyredraw|lbr|linebreak|lines|lsp|linespace|lisp|lw|lispwords|list|lcs|listchars|lpl|loadplugins|luadll|macatsui|magic|mef|makeef|menc|makeencoding|mp|makeprg|mps|matchpairs|mat|matchtime|mco|maxcombine|mfd|maxfuncdepth|mmd|maxmapdepth|mm|maxmem|mmp|maxmempattern|mmt|maxmemtot|mis|menuitems|msm|mkspellmem|ml|modeline|mls|modelines|ma|modifiable|mod|modified|more|mouse|mousef|mousefocus|mh|mousehide|mousem|mousemodel|mouses|mouseshape|mouset|mousetime|mzschemedll|mzschemegcdll|mzq|mzquantum|nf|nrformats|nu|number|nuw|numberwidth|ofu|omnifunc|odev|opendevice|opfunc|operatorfunc|pp|packpath|para|paragraphs|paste|pt|pastetoggle|pex|patchexpr|pm|patchmode|pa|path|perldll|pi|preserveindent|pvh|previewheight|pvw|previewwindow|pdev|printdevice|penc|printencoding|pexpr|printexpr|pfn|printfont|pheader|printheader|pmbcs|printmbcharset|pmbfn|printmbfont|popt|printoptions|prompt|ph|pumheight|pythonthreedll|pythondll|pyx|pyxversion|qe|quoteescape|ro|readonly|rdt|redrawtime|re|regexpengine|rnu|relativenumber|remap|rop|renderoptions|report|rs|restorescreen|ri|revins|rl|rightleft|rlc|rightleftcmd|rubydll|ru|ruler|ruf|rulerformat|rtp|runtimepath|scr|scroll|scb|scrollbind|sj|scrolljump|so|scrolloff|sbo|scrollopt|sect|sections|secure|sel|selection|slm|selectmode|ssop|sessionoptions|sh|shell|shcf|shellcmdflag|sp|shellpipe|shq|shellquote|srr|shellredir|ssl|shellslash|stmp|shelltemp|st|shelltype|sxq|shellxquote|sxe|shellxescape|sr|shiftround|sw|shiftwidth|shm|shortmess|sn|shortname|sbr|showbreak|sc|showcmd|sft|showfulltag|sm|showmatch|smd|showmode|stal|showtabline|ss|sidescroll|siso|sidescrolloff|scl|signcolumn|scs|smartcase|si|smartindent|sta|smarttab|sts|softtabstop|spell|spc|spellcapcheck|spf|spellfile|spl|spelllang|sps|spellsuggest|sb|splitbelow|spr|splitright|sol|startofline|stl|statusline|su|suffixes|sua|suffixesadd|swf|swapfile|sws|swapsync|swb|switchbuf|smc|synmaxcol|syn|syntax|tal|tabline|tpm|tabpagemax|ts|tabstop|tbs|tagbsearch|tc|tagcase|tl|taglength|tr|tagrelative|tag|tags|tgst|tagstack|tcldll|term|tbidi|termbidi|tenc|termencoding|tgc|termguicolors|tk|termkey|tms|termsize|terse|ta|textauto|tx|textmode|tw|textwidth|tsr|thesaurus|top|tildeop|to|timeout|tm|timeoutlen|title|titlelen|titleold|titlestring|tb|toolbar|tbis|toolbariconsize|ttimeout|ttm|ttimeoutlen|tbi|ttybuiltin|tf|ttyfast|ttym|ttymouse|tsl|ttyscroll|tty|ttytype|udir|undodir|udf|undofile|ul|undolevels|ur|undoreload|uc|updatecount|ut|updatetime|vbs|verbose|vfile|verbosefile|vdir|viewdir|vop|viewoptions|vi|viminfo|vif|viminfofile|ve|virtualedit|vb|visualbell|warn|wiv|weirdinvert|ww|whichwrap|wc|wildchar|wcm|wildcharm|wig|wildignore|wic|wildignorecase|wmnu|wildmenu|wim|wildmode|wop|wildoptions|wak|winaltkeys|wi|window|wh|winheight|wfh|winfixheight|wfw|winfixwidth|wmh|winminheight|wmw|winminwidth|winptydll|wiw|winwidth|wrap|wm|wrapmargin|ws|wrapscan|write|wa|writeany|wb|writebackup|wd|writedelay)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.option.viml\\\"},{\\\"match\\\":\\\"&?\\\\\\\\b(aleph|allowrevins|altkeymap|ambiwidth|autochdir|arabic|arabicshape|autoindent|autoread|autowrite|autowriteall|background|backspace|backup|backupcopy|backupdir|backupext|backupskip|balloondelay|ballooneval|balloonexpr|belloff|binary|bomb|breakat|breakindent|breakindentopt|browsedir|bufhidden|buflisted|buftype|casemap|cdpath|cedit|charconvert|cindent|cinkeys|cinoptions|cinwords|clipboard|cmdheight|cmdwinheight|colorcolumn|columns|comments|commentstring|complete|completefunc|completeopt|concealcursor|conceallevel|confirm|copyindent|cpoptions|cscopepathcomp|cscopeprg|cscopequickfix|cscoperelative|cscopetag|cscopetagorder|cscopeverbose|cursorbind|cursorcolumn|cursorline|debug|define|delcombine|dictionary|diff|diffexpr|diffopt|digraph|directory|display|eadirection|encoding|endofline|equalalways|equalprg|errorbells|errorfile|errorformat|eventignore|expandtab|exrc|fileencoding|fileencodings|fileformat|fileformats|fileignorecase|filetype|fillchars|fixendofline|fkmap|foldclose|foldcolumn|foldenable|foldexpr|foldignore|foldlevel|foldlevelstart|foldmarker|foldmethod|foldminlines|foldnestmax|foldopen|foldtext|formatexpr|formatlistpat|formatoptions|formatprg|fsync|gdefault|grepformat|grepprg|guicursor|guifont|guifontset|guifontwide|guioptions|guitablabel|guitabtooltip|helpfile|helpheight|helplang|hidden|hlsearch|history|hkmap|hkmapp|icon|iconstring|ignorecase|imcmdline|imdisable|iminsert|imsearch|include|includeexpr|incsearch|indentexpr|indentkeys|infercase|insertmode|isfname|isident|iskeyword|isprint|joinspaces|keymap|keymodel|keywordprg|langmap|langmenu|langremap|laststatus|lazyredraw|linebreak|lines|linespace|lisp|lispwords|list|listchars|loadplugins|magic|makeef|makeprg|matchpairs|matchtime|maxcombine|maxfuncdepth|maxmapdepth|maxmem|maxmempattern|maxmemtot|menuitems|mkspellmem|modeline|modelines|modifiable|modified|more|mouse|mousefocus|mousehide|mousemodel|mouseshape|mousetime|nrformats|number|numberwidth|omnifunc|opendevice|operatorfunc|packpath|paragraphs|paste|pastetoggle|patchexpr|patchmode|path|perldll|preserveindent|previewheight|previewwindow|printdevice|printencoding|printexpr|printfont|printheader|printmbcharset|printmbfont|printoptions|prompt|pumheight|pythondll|pythonthreedll|quoteescape|readonly|redrawtime|regexpengine|relativenumber|remap|report|revins|rightleft|rightleftcmd|rubydll|ruler|rulerformat|runtimepath|scroll|scrollbind|scrolljump|scrolloff|scrollopt|sections|secure|selection|selectmode|sessionoptions|shada|shell|shellcmdflag|shellpipe|shellquote|shellredir|shellslash|shelltemp|shellxescape|shellxquote|shiftround|shiftwidth|shortmess|showbreak|showcmd|showfulltag|showmatch|showmode|showtabline|sidescroll|sidescrolloff|signcolumn|smartcase|smartindent|smarttab|softtabstop|spell|spellcapcheck|spellfile|spelllang|spellsuggest|splitbelow|splitright|startofline|statusline|suffixes|suffixesadd|swapfile|switchbuf|synmaxcol|syntax|tabline|tabpagemax|tabstop|tagbsearch|tagcase|taglength|tagrelative|tags|tagstack|term|termbidi|terse|textwidth|thesaurus|tildeop|timeout|timeoutlen|title|titlelen|titleold|titlestring|ttimeout|ttimeoutlen|ttytype|undodir|undofile|undolevels|undoreload|updatecount|updatetime|verbose|verbosefile|viewdir|viewoptions|virtualedit|visualbell|warn|whichwrap|wildchar|wildcharm|wildignore|wildignorecase|wildmenu|wildmode|wildoptions|winaltkeys|window|winheight|winfixheight|winfixwidth|winminheight|winminwidth|winwidth|wrap|wrapmargin|wrapscan|write|writeany|writebackup|writedelay)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.option.viml\\\"},{\\\"match\\\":\\\"&?\\\\\\\\b(al|ari|akm|ambw|acd|arab|arshape|ai|ar|aw|awa|bg|bs|bk|bkc|bdir|bex|bsk|bdlay|beval|bexpr|bo|bin|bomb|brk|bri|briopt|bsdir|bh|bl|bt|cmp|cd|cedit|ccv|cin|cink|cino|cinw|cb|ch|cwh|cc|co|com|cms|cpt|cfu|cot|cocu|cole|cf|ci|cpo|cspc|csprg|csqf|csre|cst|csto|cpo|crb|cuc|cul|debug|def|deco|dict|diff|dex|dip|dg|dir|dy|ead|enc|eol|ea|ep|eb|ef|efm|ei|et|ex|fenc|fencs|ff|ffs|fic|ft|fcs|fixeol|fk|fcl|fdc|fen|fde|fdi|fdl|fdls|fmr|fdm|fml|fdn|fdo|fdt|fex|flp|fo|fp|fs|gd|gfm|gp|gcr|gfn|gfs|gfw|go|gtl|gtt|hf|hh|hlg|hid|hls|hi|hk|hkp|icon|iconstring|ic|imc|imd|imi|ims|inc|inex|is|inde|indk|inf|im|isf|isi|isk|isp|js|kmp|km|kp|lmap|lm|lrm|ls|lz|lbr|lines|lsp|lisp|lw|list|lcs|lpl|magic|mef|mp|mps|mat|mco|mfd|mmd|mm|mmp|mmt|mis|msm|ml|mls|ma|mod|more|mouse|mousef|mh|mousem|mouses|mouset|nf|nu|nuw|ofu|odev|opfunc|pp|para|paste|pt|pex|pm|pa|perldll|pi|pvh|pvw|pdev|penc|pexpr|pfn|pheader|pmbcs|pmbfn|popt|prompt|ph|pythondll|pythonthreedlll|qe|ro|rdt|re|rnu|remap|report|ri|rl|rlc|rubydll|ru|ruf|rtp|scr|scb|sj|so|sbo|sect|secure|sel|slm|ssop|sd|sh|shcf|sp|shq|srr|ssl|stmp|sxe|sxq|sr|sw|shm|sbr|sc|sft|sm|smd|stal|ss|siso|scl|scs|si|sta|sts|spell|spc|spf|spl|sps|sb|spr|sol|stl|su|sua|swf|swb|smc|syn|tal|tpm|ts|tbs|tc|tl|tr|tag|tgst|term|tbidi|terse|tw|tsr|top|to|tm|title|titlelen|titleold|titlestring|ttimeout|ttm|tty|udir|udf|ul|ur|uc|ut|vbs|vfile|vdir|vop|ve|vb|warn|ww|wc|wcm|wig|wic|wmnu|wim|wop|wak|wi|wh|wfh|wfw|wmh|wmw|wiw|wrap|wm|ws|write|wa|wb|wd)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.option.shortname.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(noanti|noantialias|noarab|noarabic|noarshape|noarabicshape|noari|noallowrevins|noakm|noaltkeymap|noacd|noautochdir|noai|noautoindent|noar|noautoread|noaw|noautowrite|noawa|noautowriteall|nobk|nobackup|nobeval|noballooneval|nobevalterm|noballoonevalterm|nobin|nobinary|nobomb|nobri|nobreakindent|nobl|nobuflisted|nocin|nocindent|nocp|nocompatible|nocf|noconfirm|noci|nocopyindent|nocsre|nocscoperelative|nocst|nocscopetag|nocsverb|nocscopeverbose|nocrb|nocursorbind|nocuc|nocursorcolumn|nocul|nocursorline|nodeco|nodelcombine|nodiff|nodg|nodigraph|noed|noedcompatible|noemo|noemoji|noeol|noendofline|noea|noequalalways|noeb|noerrorbells|noek|noesckeys|noet|noexpandtab|noex|noexrc|nofic|nofileignorecase|nofixeol|nofixendofline|nofk|nofkmap|nofen|nofoldenable|nofs|nofsync|nogd|nogdefault|noguipty|nohid|nohidden|nohk|nohkmap|nohkp|nohkmapp|nohls|nohlsearch|noicon|noic|noignorecase|noimc|noimcmdline|noimd|noimdisable|nois|noincsearch|noinf|noinfercase|noim|noinsertmode|nojs|nojoinspaces|nolnr|nolangnoremap|nolrm|nolangremap|nolz|nolazyredraw|nolbr|nolinebreak|nolisp|nolist|nolpl|noloadplugins|nomacatsui|nomagic|noml|nomodeline|noma|nomodifiable|nomod|nomodified|nomore|nomousef|nomousefocus|nomh|nomousehide|nonu|nonumber|noodev|noopendevice|nopaste|nopi|nopreserveindent|nopvw|nopreviewwindow|noprompt|noro|noreadonly|nornu|norelativenumber|nors|norestorescreen|nori|norevins|norl|norightleft|noru|noruler|noscb|noscrollbind|nosecure|nossl|noshellslash|nostmp|noshelltemp|nosr|noshiftround|nosn|noshortname|nosc|noshowcmd|nosft|noshowfulltag|nosm|noshowmatch|nosmd|noshowmode|noscs|nosmartcase|nosi|nosmartindent|nosta|nosmarttab|nospell|nosb|nosplitbelow|nospr|nosplitright|nosol|nostartofline|noswf|noswapfile|notbs|notagbsearch|notr|notagrelative|notgst|notagstack|notbidi|notermbidi|notgc|notermguicolors|noterse|nota|notextauto|notx|notextmode|notop|notildeop|noto|notimeout|notitle|nottimeout|notbi|nottybuiltin|notf|nottyfast|noudf|noundofile|novb|novisualbell|nowarn|nowiv|noweirdinvert|nowic|nowildignorecase|nowmnu|nowildmenu|nowfh|nowinfixheight|nowfw|nowinfixwidth|nowrapscan|nowrap|nows|nowrite|nowa|nowriteany|nowb|nowritebackup)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.option.off.viml\\\"}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"([()])\\\",\\\"name\\\":\\\"punctuation.parens.viml\\\"},{\\\"match\\\":\\\"([,])\\\",\\\"name\\\":\\\"punctuation.comma.viml\\\"}]},\\\"storage\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(call|let|unlet)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(abort|autocmd)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(set(l|local)?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(com(mand)?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(color(scheme)?)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(Plug|Plugin)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.plugin.viml\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"(\\\\\\\"|$)\\\",\\\"name\\\":\\\"string.quoted.double.viml\\\",\\\"patterns\\\":[]},{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"('|$)\\\",\\\"name\\\":\\\"string.quoted.single.viml\\\",\\\"patterns\\\":[]},{\\\"match\\\":\\\"/(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\|\\\\\\\\\\\\\\\\/|[^\\\\\\\\n/])*/\\\",\\\"name\\\":\\\"string.regexp.viml\\\"}]},\\\"support\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(add|call|delete|empty|extend|get|has|isdirectory|join|printf)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"support.function.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(echo(m|hl)?|exe(cute)?|redir|redraw|sleep|so(urce)?|wincmd|setf)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.viml\\\"},{\\\"match\\\":\\\"(v\\\\\\\\:(beval_col|beval_bufnr|beval_lnum|beval_text|beval_winnr|char|charconvert_from|charconvert_to|cmdarg|cmdbang|count|count1|ctype|dying|errmsg|exception|fcs_reason|fcs_choice|fname_in|fname_out|fname_new|fname_diff|folddashes|foldlevel|foldend|foldstart|insertmode|key|lang|lc_time|lnum|mouse_win|mouse_lnum|mouse_col|oldfiles|operator|prevcount|profiling|progname|register|scrollstart|servername|searchforward|shell_error|statusmsg|swapname|swapchoice|swapcommand|termresponse|this_session|throwpoint|val|version|warningmsg|windowid))\\\",\\\"name\\\":\\\"support.type.builtin.vim-variable.viml\\\"},{\\\"match\\\":\\\"(&(cpo|isk|omnifunc|paste|previewwindow|rtp|tags|term|wrap))\\\",\\\"name\\\":\\\"support.type.builtin.viml\\\"},{\\\"match\\\":\\\"(&(shell(cmdflag|redir)?))\\\",\\\"name\\\":\\\"support.type.builtin.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\<args\\\\\\\\>\\\",\\\"name\\\":\\\"support.variable.args.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(None|ErrorMsg|WarningMsg)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.syntax.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(BufNewFile|BufReadPre|BufRead|BufReadPost|BufReadCmd|FileReadPre|FileReadPost|FileReadCmd|FilterReadPre|FilterReadPost|StdinReadPre|StdinReadPost|BufWrite|BufWritePre|BufWritePost|BufWriteCmd|FileWritePre|FileWritePost|FileWriteCmd|FileAppendPre|FileAppendPost|FileAppendCmd|FilterWritePre|FilterWritePost|BufAdd|BufCreate|BufDelete|BufWipeout|BufFilePre|BufFilePost|BufEnter|BufLeave|BufWinEnter|BufWinLeave|BufUnload|BufHidden|BufNew|SwapExists|TermOpen|TermClose|FileType|Syntax|OptionSet|VimEnter|GUIEnter|GUIFailed|TermResponse|QuitPre|VimLeavePre|VimLeave|DirChanged|FileChangedShell|FileChangedShellPost|FileChangedRO|ShellCmdPost|ShellFilterPost|CmdUndefined|FuncUndefined|SpellFileMissing|SourcePre|SourceCmd|VimResized|FocusGained|FocusLost|CursorHold|CursorHoldI|CursorMoved|CursorMovedI|WinNew|WinEnter|WinLeave|TabEnter|TabLeave|TabNew|TabNewEntered|TabClosed|CmdlineEnter|CmdlineLeave|CmdwinEnter|CmdwinLeave|InsertEnter|InsertChange|InsertLeave|InsertCharPre|TextYankPost|TextChanged|TextChangedI|ColorScheme|RemoteReply|QuickFixCmdPre|QuickFixCmdPost|SessionLoadPost|MenuPopup|CompleteDone|User)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.event.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(Comment|Constant|String|Character|Number|Boolean|Float|Identifier|Function|Statement|Conditional|Repeat|Label|Operator|Keyword|Exception|PreProc|Include|Define|Macro|PreCondit|Type|StorageClass|Structure|Typedef|Special|SpecialChar|Tag|Delimiter|SpecialComment|Debug|Underlined|Ignore|Error|Todo)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.syntax-group.viml\\\"}]},\\\"syntax\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"syn(tax)? case (ignore|match)\\\",\\\"name\\\":\\\"keyword.control.syntax.viml\\\"},{\\\"match\\\":\\\"syn(tax)? (clear|enable|include|off|on|manual|sync)\\\",\\\"name\\\":\\\"keyword.control.syntax.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(contained|display|excludenl|fold|keepend|oneline|skipnl|skipwhite|transparent)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.syntax.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b(add|containedin|contains|matchgroup|nextgroup)\\\\\\\\=\\\",\\\"name\\\":\\\"keyword.other.syntax.viml\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.syntax-range.viml\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.regexp.viml\\\"}},\\\"match\\\":\\\"((start|skip|end)\\\\\\\\=)(\\\\\\\\+\\\\\\\\S+\\\\\\\\+\\\\\\\\s)?\\\"},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.type.syntax.viml\\\"},\\\"1\\\":{\\\"name\\\":\\\"storage.syntax.viml\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.other.syntax-scope.viml\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.modifier.syntax.viml\\\"}},\\\"match\\\":\\\"(syn|syntax)\\\\\\\\s+(cluster|keyword|match|region)(\\\\\\\\s+\\\\\\\\w+\\\\\\\\s+)(contained)?\\\",\\\"patterns\\\":[]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.highlight.viml\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.modifier.syntax.viml\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.function.highlight.viml\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.viml\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.viml\\\"}},\\\"match\\\":\\\"(hi|highlight)(?:\\\\\\\\s+)(def|default)(?:\\\\\\\\s+)(link)(?:\\\\\\\\s+)(\\\\\\\\w+)(?:\\\\\\\\s+)(\\\\\\\\w+)\\\",\\\"patterns\\\":[]}]},\\\"variable\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"https?://\\\\\\\\S+\\\",\\\"name\\\":\\\"variable.other.link.viml\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\()([a-zA-Z]+)(?=\\\\\\\\))\\\",\\\"name\\\":\\\"variable.parameter.viml\\\"},{\\\"match\\\":\\\"\\\\\\\\b([absgl]:[a-zA-Z0-9_.#]+)\\\\\\\\b(?!\\\\\\\\()\\\",\\\"name\\\":\\\"variable.other.viml\\\"}]}},\\\"scopeName\\\":\\\"source.viml\\\",\\\"aliases\\\":[\\\"vim\\\",\\\"vimscript\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"fileTypes\\\":[],\\\"injectTo\\\":[\\\"text.html.markdown\\\"],\\\"injectionSelector\\\":\\\"L:text.html.markdown\\\",\\\"name\\\":\\\"markdown-vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#vue-code-block\\\"}],\\\"repository\\\":{\\\"vue-code-block\\\":{\\\"begin\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\s*)(`{3,}|~{3,})\\\\\\\\s*(?i:(vue)((\\\\\\\\s+|:|,|\\\\\\\\{|\\\\\\\\?)[^`~]*)?$)\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"},\\\"4\\\":{\\\"name\\\":\\\"fenced_code.block.language.markdown\\\"},\\\"5\\\":{\\\"name\\\":\\\"fenced_code.block.language.attributes.markdown\\\",\\\"patterns\\\":[]}},\\\"end\\\":\\\"(^|\\\\\\\\G)(\\\\\\\\2|\\\\\\\\s{0,3})(\\\\\\\\3)\\\\\\\\s*$\\\",\\\"endCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.markdown\\\"}},\\\"name\\\":\\\"markup.fenced_code.block.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.vue\\\"}]}},\\\"scopeName\\\":\\\"markdown.vue.codeblock\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"fileTypes\\\":[],\\\"injectTo\\\":[\\\"source.vue\\\",\\\"text.html.markdown\\\",\\\"text.html.derivative\\\",\\\"text.pug\\\"],\\\"injectionSelector\\\":\\\"L:meta.tag -meta.attribute -meta.ng-binding -entity.name.tag.pug -attribute_value -source.tsx -source.js.jsx, L:meta.element -meta.attribute\\\",\\\"name\\\":\\\"vue-directives\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.vue#vue-directives\\\"}],\\\"scopeName\\\":\\\"vue.directives\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"fileTypes\\\":[],\\\"injectTo\\\":[\\\"source.vue\\\",\\\"text.html.markdown\\\",\\\"text.html.derivative\\\",\\\"text.pug\\\"],\\\"injectionSelector\\\":\\\"L:text.pug -comment -string.comment, L:text.html.derivative -comment.block, L:text.html.markdown -comment.block\\\",\\\"name\\\":\\\"vue-interpolations\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.vue#vue-interpolations\\\"}],\\\"scopeName\\\":\\\"vue.interpolations\\\"}\"))\n\nexport default [\nlang\n]\n", "import javascript from './javascript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"fileTypes\\\":[],\\\"injectTo\\\":[\\\"source.vue\\\"],\\\"injectionSelector\\\":\\\"L:source.css -comment, L:source.postcss -comment, L:source.sass -comment, L:source.stylus -comment\\\",\\\"name\\\":\\\"vue-sfc-style-variable-injection\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#vue-sfc-style-variable-injection\\\"}],\\\"repository\\\":{\\\"vue-sfc-style-variable-injection\\\":{\\\"begin\\\":\\\"\\\\\\\\b(v-bind)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"vue.sfc.style.variable.injection.v-bind\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"('|\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"}},\\\"end\\\":\\\"(\\\\\\\\1)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"source.ts.embedded.html.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"include\\\":\\\"source.js\\\"}]}},\\\"scopeName\\\":\\\"vue.sfc.style.variable.injection\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\"]}\"))\n\nexport default [\n...javascript,\nlang\n]\n", "import html from './html.mjs'\nimport css from './css.mjs'\nimport javascript from './javascript.mjs'\nimport typescript from './typescript.mjs'\nimport json from './json.mjs'\nimport html_derivative from './html-derivative.mjs'\nimport markdown_vue from './markdown-vue.mjs'\nimport vue_directives from './vue-directives.mjs'\nimport vue_interpolations from './vue-interpolations.mjs'\nimport vue_sfc_style_variable_injection from './vue-sfc-style-variable-injection.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Vue\\\",\\\"name\\\":\\\"vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#vue-comments\\\"},{\\\"include\\\":\\\"text.html.basic#comment\\\"},{\\\"include\\\":\\\"#self-closing-tag\\\"},{\\\"begin\\\":\\\"(<)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html.vue\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)md\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"text.html.markdown\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)html\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"text.html.derivative\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#html-stuff\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)pug\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"text.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.pug\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)stylus\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.stylus\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.stylus\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)postcss\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.postcss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.postcss\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)sass\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.sass\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sass\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)css\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)scss\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.css.scss\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.scss\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)less\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.css.less\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.less\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)js\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)ts\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.ts\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)jsx\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.js.jsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js.jsx\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)tsx\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.tsx\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.tsx\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)coffee\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.coffee\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.coffee\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)json\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.json\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)jsonc\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.json.comments\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json.comments\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)json5\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.json5\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json5\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)yaml\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.yaml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)toml\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.toml\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.toml\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)(gql|graphql)\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.graphql\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.graphql\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\\\\\\b(?=[^>]*\\\\\\\\blang\\\\\\\\s*=\\\\\\\\s*(['\\\\\\\"]?)vue\\\\\\\\b\\\\\\\\2)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"source.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.vue\\\"}]}]},{\\\"begin\\\":\\\"(template)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/template\\\\\\\\b)\\\",\\\"name\\\":\\\"text.html.derivative\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#html-stuff\\\"}]}]},{\\\"begin\\\":\\\"(script)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/script\\\\\\\\b)\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},{\\\"begin\\\":\\\"(style)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/style\\\\\\\\b)\\\",\\\"name\\\":\\\"source.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]},{\\\"begin\\\":\\\"([a-zA-Z0-9:-]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.$1.html.vue\\\"}},\\\"end\\\":\\\"(</)(\\\\\\\\1)\\\\\\\\s*(?=>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"begin\\\":\\\"(?<=>)\\\",\\\"end\\\":\\\"(?=<\\\\\\\\/)\\\",\\\"name\\\":\\\"text\\\"}]}]}],\\\"repository\\\":{\\\"html-stuff\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-tag\\\"},{\\\"include\\\":\\\"text.html.derivative\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}]},\\\"self-closing-tag\\\":{\\\"begin\\\":\\\"(<)([a-zA-Z0-9:-]+)(?=([^>]+/>))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"end\\\":\\\"(/>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html.vue\\\"}},\\\"name\\\":\\\"self-closing-tag\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},\\\"tag-stuff\\\":{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html.vue\\\"}},\\\"name\\\":\\\"meta.tag-stuff\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#vue-directives\\\"},{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]},\\\"template-tag\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#template-tag-1\\\"},{\\\"include\\\":\\\"#template-tag-2\\\"}]},\\\"template-tag-1\\\":{\\\"begin\\\":\\\"(<)(template)\\\\\\\\b(>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html.vue\\\"}},\\\"end\\\":\\\"(/?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html.vue\\\"}},\\\"name\\\":\\\"meta.template-tag.start\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|((</)(template)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.$3.html.vue\\\"}},\\\"name\\\":\\\"meta.template-tag.end\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#html-stuff\\\"}]}]},\\\"template-tag-2\\\":{\\\"begin\\\":\\\"(<)(template)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.$2.html.vue\\\"}},\\\"end\\\":\\\"(/?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html.vue\\\"}},\\\"name\\\":\\\"meta.template-tag.start\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=/>)|((</)(template)\\\\\\\\b)\\\",\\\"endCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html.vue\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.$3.html.vue\\\"}},\\\"name\\\":\\\"meta.template-tag.end\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"},{\\\"include\\\":\\\"#html-stuff\\\"}]}]},\\\"vue-comments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#vue-comments-key-value\\\"}]},\\\"vue-comments-key-value\\\":{\\\"begin\\\":\\\"(<!--)\\\\\\\\s*(@)([\\\\\\\\w$]+)(?=\\\\\\\\s)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.block.tag.comment.vue\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.class.comment.vue\\\"}},\\\"end\\\":\\\"(-->)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.vue\\\"}},\\\"name\\\":\\\"comment.block.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json#value\\\"}]},\\\"vue-directives\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#vue-directives-control\\\"},{\\\"include\\\":\\\"#vue-directives-style-attr\\\"},{\\\"include\\\":\\\"#vue-directives-original\\\"},{\\\"include\\\":\\\"#vue-directives-generic-attr\\\"}]},\\\"vue-directives-control\\\":{\\\"begin\\\":\\\"(v-for)|(v-if|v-else-if|v-else)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.loop.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.conditional.vue\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*+[^=\\\\\\\\s])\\\",\\\"name\\\":\\\"meta.attribute.directive.control.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#vue-directives-expression\\\"}]},\\\"vue-directives-expression\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(=)\\\\\\\\s*('|\\\\\\\"|`)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html.vue\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html.vue\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<=('|\\\\\\\"|`))\\\",\\\"end\\\":\\\"(?=\\\\\\\\1)\\\",\\\"name\\\":\\\"source.ts.embedded.html.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#expression\\\"}]}]},{\\\"begin\\\":\\\"(=)\\\\\\\\s*(?=[^'\\\\\\\"`])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.vue\\\"}},\\\"end\\\":\\\"(?=(\\\\\\\\s|>|\\\\\\\\/>))\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?=[^'\\\\\\\"`])\\\",\\\"end\\\":\\\"(?=(\\\\\\\\s|>|\\\\\\\\/>))\\\",\\\"name\\\":\\\"source.ts.embedded.html.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#expression\\\"}]}]}]},\\\"vue-directives-generic-attr\\\":{\\\"begin\\\":\\\"\\\\\\\\b(generic)\\\\\\\\s*(=)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.vue\\\"}},\\\"end\\\":\\\"(?<='|\\\\\\\")\\\",\\\"name\\\":\\\"meta.attribute.generic.vue\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"('|\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html.vue\\\"}},\\\"comment\\\":\\\"https://github.com/microsoft/vscode/blob/fd4346210f59135fad81a8b8c4cea7bf5a9ca6b4/extensions/typescript-basics/syntaxes/TypeScript.tmLanguage.json#L4002-L4020\\\",\\\"end\\\":\\\"(\\\\\\\\1)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html.vue\\\"}},\\\"name\\\":\\\"meta.type.parameters.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#comment\\\"},{\\\"match\\\":\\\"(?<![_$[:alnum:]])(?:(?<=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?<!\\\\\\\\.))(extends|in|out)(?![_$[:alnum:]])(?:(?=\\\\\\\\.\\\\\\\\.\\\\\\\\.)|(?!\\\\\\\\.))\\\",\\\"name\\\":\\\"storage.modifier.ts\\\"},{\\\"include\\\":\\\"source.ts#type\\\"},{\\\"include\\\":\\\"source.ts#punctuation-comma\\\"},{\\\"match\\\":\\\"(=)(?!>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.ts\\\"}]}]},\\\"vue-directives-original\\\":{\\\"begin\\\":\\\"(?:(?:(v-[\\\\\\\\w-]+)(:)?)|([:\\\\\\\\.])|(@)|(#))(?:(?:(\\\\\\\\[)([^\\\\\\\\]]*)(\\\\\\\\]))|([\\\\\\\\w-]+))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.vue\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.attribute-shorthand.bind.html.vue\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.attribute-shorthand.event.html.vue\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.attribute-shorthand.slot.html.vue\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.vue\\\"},\\\"7\\\":{\\\"name\\\":\\\"source.ts.embedded.html.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#expression\\\"}]},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.vue\\\"},\\\"9\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html.vue\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\s*[^=\\\\\\\\s])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html.vue\\\"}},\\\"name\\\":\\\"meta.attribute.directive.vue\\\",\\\"patterns\\\":[{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html.vue\\\"},\\\"match\\\":\\\"(\\\\\\\\.)([\\\\\\\\w-]*)\\\"},{\\\"include\\\":\\\"#vue-directives-expression\\\"}]},\\\"vue-directives-style-attr\\\":{\\\"begin\\\":\\\"\\\\\\\\b(style)\\\\\\\\s*(=)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html.vue\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html.vue\\\"}},\\\"end\\\":\\\"(?<='|\\\\\\\")\\\",\\\"name\\\":\\\"meta.attribute.style.vue\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"('|\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html.vue\\\"}},\\\"comment\\\":\\\"Copy from source.css#rule-list-innards\\\",\\\"end\\\":\\\"(\\\\\\\\1)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html.vue\\\"}},\\\"name\\\":\\\"source.css.embedded.html.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css#comment-block\\\"},{\\\"include\\\":\\\"source.css#escapes\\\"},{\\\"include\\\":\\\"source.css#font-features\\\"},{\\\"match\\\":\\\"(?<![\\\\\\\\w-])--(?:[-a-zA-Z_]|[^\\\\\\\\x00-\\\\\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\\\\\x00-\\\\\\\\x7F]|\\\\\\\\\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*\\\",\\\"name\\\":\\\"variable.css\\\"},{\\\"begin\\\":\\\"(?<![-a-zA-Z])(?=[-a-zA-Z])\\\",\\\"end\\\":\\\"$|(?![-a-zA-Z])\\\",\\\"name\\\":\\\"meta.property-name.css\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css#property-names\\\"}]},{\\\"begin\\\":\\\"(:)\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.css\\\"}},\\\"comment\\\":\\\"Modify end to fix #199. TODO: handle ' character.\\\",\\\"contentName\\\":\\\"meta.property-value.css\\\",\\\"end\\\":\\\"\\\\\\\\s*(;)|\\\\\\\\s*(?='|\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.css#comment-block\\\"},{\\\"include\\\":\\\"source.css#property-values\\\"}]},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.rule.css\\\"}]}]},\\\"vue-interpolations\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\{\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.interpolation.begin.html.vue\\\"}},\\\"end\\\":\\\"(\\\\\\\\}\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.interpolation.end.html.vue\\\"}},\\\"name\\\":\\\"expression.embedded.vue\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G\\\",\\\"end\\\":\\\"(?=\\\\\\\\}\\\\\\\\})\\\",\\\"name\\\":\\\"source.ts.embedded.html.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts#expression\\\"}]}]}]}},\\\"scopeName\\\":\\\"source.vue\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"css\\\",\\\"javascript\\\",\\\"typescript\\\",\\\"json\\\",\\\"html-derivative\\\",\\\"markdown-vue\\\",\\\"vue-directives\\\",\\\"vue-interpolations\\\",\\\"vue-sfc-style-variable-injection\\\"],\\\"embeddedLangsLazy\\\":[\\\"markdown\\\",\\\"pug\\\",\\\"stylus\\\",\\\"sass\\\",\\\"scss\\\",\\\"less\\\",\\\"jsx\\\",\\\"tsx\\\",\\\"coffee\\\",\\\"jsonc\\\",\\\"json5\\\",\\\"yaml\\\",\\\"toml\\\",\\\"graphql\\\"]}\"))\n\nexport default [\n...html,\n...css,\n...javascript,\n...typescript,\n...json,\n...html_derivative,\n...markdown_vue,\n...vue_directives,\n...vue_interpolations,\n...vue_sfc_style_variable_injection,\nlang\n]\n", "import vue from './vue.mjs'\nimport javascript from './javascript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Vue HTML\\\",\\\"fileTypes\\\":[],\\\"name\\\":\\\"vue-html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.vue#vue-interpolations\\\"},{\\\"begin\\\":\\\"(<)([A-Z][a-zA-Z0-9:-]*)(?=[^>]*></\\\\\\\\2>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.class.component.html\\\"}},\\\"end\\\":\\\"(>)(<)(/)(\\\\\\\\2)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html meta.scope.between-tag-pair.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.class.component.html\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(<)([a-z][a-zA-Z0-9:-]*)(?=[^>]*></\\\\\\\\2>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"}},\\\"end\\\":\\\"(>)(<)(/)(\\\\\\\\2)(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html meta.scope.between-tag-pair.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.tag.html\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(<\\\\\\\\?)(xml)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.xml.html\\\"}},\\\"end\\\":\\\"(\\\\\\\\?>)\\\",\\\"name\\\":\\\"meta.tag.preprocessor.xml.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-generic-attribute\\\"},{\\\"include\\\":\\\"#string-double-quoted\\\"},{\\\"include\\\":\\\"#string-single-quoted\\\"}]},{\\\"begin\\\":\\\"<!--\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.html\\\"}},\\\"end\\\":\\\"-->\\\",\\\"name\\\":\\\"comment.block.html\\\"},{\\\"begin\\\":\\\"<!\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tag.html\\\"}},\\\"end\\\":\\\">\\\",\\\"name\\\":\\\"meta.tag.sgml.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?i:DOCTYPE)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.doctype.html\\\"}},\\\"end\\\":\\\"(?=>)\\\",\\\"name\\\":\\\"meta.tag.sgml.doctype.html\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\"[^\\\\\\\">]*\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.doctype.identifiers-and-DTDs.html\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[CDATA\\\\\\\\[\\\",\\\"end\\\":\\\"]](?=>)\\\",\\\"name\\\":\\\"constant.other.inline-data.html\\\"},{\\\"match\\\":\\\"(\\\\\\\\s*)(?!--|>)\\\\\\\\S(\\\\\\\\s*)\\\",\\\"name\\\":\\\"invalid.illegal.bad-comments-or-CDATA.html\\\"}]},{\\\"begin\\\":\\\"(</?)([A-Z][a-zA-Z0-9:-]*\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.class.component.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.block.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)([a-z][a-zA-Z0-9:-]*\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.block.any.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.block.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)((?i:body|head|html)\\\\\\\\b)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.structure.any.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.structure.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)((?i:address|blockquote|dd|div|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre)(?!-)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.block.any.html\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.block.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)(?!-)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.inline.any.html\\\"}},\\\"end\\\":\\\"(/?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.inline.any.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"begin\\\":\\\"(</?)([a-zA-Z0-9:-]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.other.html\\\"}},\\\"end\\\":\\\"(/?>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.html\\\"}},\\\"name\\\":\\\"meta.tag.other.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag-stuff\\\"}]},{\\\"include\\\":\\\"#entities\\\"},{\\\"match\\\":\\\"<>\\\",\\\"name\\\":\\\"invalid.illegal.incomplete.html\\\"},{\\\"match\\\":\\\"<\\\",\\\"name\\\":\\\"invalid.illegal.bad-angle-bracket.html\\\"}],\\\"repository\\\":{\\\"entities\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.html\\\"}},\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.html\\\"},{\\\"match\\\":\\\"&\\\",\\\"name\\\":\\\"invalid.illegal.bad-ampersand.html\\\"}]},\\\"string-double-quoted\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.double.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.vue#vue-interpolations\\\"},{\\\"include\\\":\\\"#entities\\\"}]},\\\"string-single-quoted\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.single.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.vue#vue-interpolations\\\"},{\\\"include\\\":\\\"#entities\\\"}]},\\\"tag-generic-attribute\\\":{\\\"match\\\":\\\"(?<=[^=])\\\\\\\\b([a-zA-Z0-9:\\\\\\\\-_]+)\\\",\\\"name\\\":\\\"entity.other.attribute-name.html\\\"},\\\"tag-id-attribute\\\":{\\\"begin\\\":\\\"\\\\\\\\b(id)\\\\\\\\b\\\\\\\\s*(=)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.id.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)(?<='|\\\\\\\"|[^\\\\\\\\s<>/])\\\",\\\"name\\\":\\\"meta.attribute-with-value.id.html\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"contentName\\\":\\\"meta.toc-list.id.html\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.double.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.vue#vue-interpolations\\\"},{\\\"include\\\":\\\"#entities\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"contentName\\\":\\\"meta.toc-list.id.html\\\",\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"string.quoted.single.html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.vue#vue-interpolations\\\"},{\\\"include\\\":\\\"#entities\\\"}]},{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.toc-list.id.html\\\"}},\\\"match\\\":\\\"(?<==)(?:[^\\\\\\\\s<>/'\\\\\\\"]|/(?!>))+\\\",\\\"name\\\":\\\"string.unquoted.html\\\"}]},\\\"tag-stuff\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#vue-directives\\\"},{\\\"include\\\":\\\"#tag-id-attribute\\\"},{\\\"include\\\":\\\"#tag-generic-attribute\\\"},{\\\"include\\\":\\\"#string-double-quoted\\\"},{\\\"include\\\":\\\"#string-single-quoted\\\"},{\\\"include\\\":\\\"#unquoted-attribute\\\"}]},\\\"unquoted-attribute\\\":{\\\"match\\\":\\\"(?<==)(?:[^\\\\\\\\s<>/'\\\\\\\"]|/(?!>))+\\\",\\\"name\\\":\\\"string.unquoted.html\\\"},\\\"vue-directives\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b(v-)|(:|@|#))([a-zA-Z0-9\\\\\\\\-_]+)(?:\\\\\\\\:([a-zA-Z\\\\\\\\-_]+))?(?:\\\\\\\\.([a-zA-Z\\\\\\\\-_]+))*\\\\\\\\s*(=)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.other.attribute-name.html\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.html\\\"}},\\\"end\\\":\\\"(?<='|\\\\\\\")|(?=[\\\\\\\\s<>`])\\\",\\\"name\\\":\\\"meta.directive.vue\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"source.directive.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"source.directive.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js#expression\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.html\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.html\\\"}},\\\"name\\\":\\\"source.directive.vue\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js#expression\\\"}]}]}},\\\"scopeName\\\":\\\"text.html.vue-html\\\",\\\"embeddedLangs\\\":[\\\"vue\\\",\\\"javascript\\\"],\\\"embeddedLangsLazy\\\":[]}\"))\n\nexport default [\n...vue,\n...javascript,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Vyper\\\",\\\"name\\\":\\\"vyper\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#statement\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#reserved-names-vyper\\\"}],\\\"repository\\\":{\\\"annotated-parameter\\\":{\\\"begin\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(:)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.annotation.python\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"},{\\\"match\\\":\\\"=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}]},\\\"assignment-operator\\\":{\\\"match\\\":\\\"<<=|>>=|//=|\\\\\\\\*\\\\\\\\*=|\\\\\\\\+=|-=|/=|@=|\\\\\\\\*=|%=|~=|\\\\\\\\^=|&=|\\\\\\\\|=|=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"},\\\"backticks\\\":{\\\"begin\\\":\\\"\\\\\\\\`\\\",\\\"end\\\":\\\"(?:\\\\\\\\`|(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\n))\\\",\\\"name\\\":\\\"invalid.deprecated.backtick.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"builtin-callables\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#builtin-exceptions\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#builtin-types\\\"}]},\\\"builtin-exceptions\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b((Arithmetic|Assertion|Attribute|Buffer|BlockingIO|BrokenPipe|ChildProcess|(Connection(Aborted|Refused|Reset)?)|EOF|Environment|FileExists|FileNotFound|FloatingPoint|IO|Import|Indentation|Index|Interrupted|IsADirectory|NotADirectory|Permission|ProcessLookup|Timeout|Key|Lookup|Memory|Name|NotImplemented|OS|Overflow|Reference|Runtime|Recursion|Syntax|System|Tab|Type|UnboundLocal|Unicode(Encode|Decode|Translate)?|Value|Windows|ZeroDivision|ModuleNotFound)Error|((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes|Resource)?Warning|SystemExit|Stop(Async)?Iteration|KeyboardInterrupt|GeneratorExit|(Base)?Exception)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.exception.python\\\"},\\\"builtin-functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(__import__|abs|aiter|all|any|anext|ascii|bin|breakpoint|callable|chr|compile|copyright|credits|delattr|dir|divmod|enumerate|eval|exec|exit|filter|format|getattr|globals|hasattr|hash|help|hex|id|input|isinstance|issubclass|iter|len|license|locals|map|max|memoryview|min|next|oct|open|ord|pow|print|quit|range|reload|repr|reversed|round|setattr|sorted|sum|vars|zip)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.python\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(file|reduce|intern|raw_input|unicode|cmp|basestring|execfile|long|xrange)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.legacy.builtin.python\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(abi_encode|abi_decode|_abi_encode|_abi_decode|floor|ceil|convert|slice|len|concat|sha256|method_id|keccak256|ecrecover|ecadd|ecmul|extract32|as_wei_value|raw_call|blockhash|blobhash|bitwise_and|bitwise_or|bitwise_xor|bitwise_not|uint256_addmod|uint256_mulmod|unsafe_add|unsafe_sub|unsafe_mul|unsafe_div|pow_mod256|uint2str|isqrt|sqrt|shift|create_minimal_proxy_to|create_forwarder_to|create_copy_of|create_from_blueprint|min|max|empty|abs|min_value|max_value|epsilon)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(send|print|breakpoint|selfdestruct|raw_call|raw_log|raw_revert|create_minimal_proxy_to|create_forwarder_to|create_copy_of|create_from_blueprint)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.lowlevel.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(struct|enum|flag|event|interface|HashMap|DynArray|Bytes|String)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.reference.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(nonreentrant|internal|view|pure|private|immutable|constant)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.modifiers.safe.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(deploy|nonpayable|payable|external|modifying)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.modifiers.unsafe.vyper\\\"}]},\\\"builtin-possible-callables\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-callables\\\"},{\\\"include\\\":\\\"#magic-names\\\"}]},\\\"builtin-types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(bool|bytearray|bytes|classmethod|complex|dict|float|frozenset|int|list|object|property|set|slice|staticmethod|str|tuple|type|super)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.python\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(uint248|HashMap|bytes22|int88|bytes24|bytes11|int24|bytes28|bytes19|uint136|decimal|uint40|uint168|uint120|int112|bytes4|uint192|String|int104|bytes29|int120|uint232|bytes8|bool|bytes14|int56|uint32|int232|uint48|bytes17|bytes12|uint24|int160|int72|int256|uint56|uint80|uint104|uint144|uint200|bytes20|uint160|bytes18|bytes16|uint8|int40|Bytes|uint72|bytes2|bytes23|int48|bytes6|bytes13|int192|bytes15|uint96|address|uint64|uint88|bytes7|int64|bytes32|bytes30|int176|int248|uint128|int8|int136|int216|bytes31|int144|bytes1|int168|bytes5|uint216|int200|bytes25|uint112|int128|bytes10|uint16|DynArray|int16|int32|int208|int184|bytes9|int224|bytes3|int80|uint152|bytes21|int96|uint256|uint176|uint240|bytes27|bytes26|int240|uint224|uint184|uint208|int152)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.basetype.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(max_int128|min_int128|nonlocal|babbage|_default_|___init___|await|indexed|____init____|true|constant|with|from|nonpayable|finally|enum|zero_wei|del|for|____default____|if|none|or|global|def|not|class|twei|struct|mwei|empty_bytes32|nonreentrant|transient|false|assert|event|pass|finney|init|lovelace|min_decimal|shannon|public|external|internal|flagunreachable|_init_|return|in|and|raise|try|gwei|break|zero_address|pwei|range|wei|while|ada|yield|as|immutable|continue|async|lambda|default|is|szabo|kwei|import|max_uint256|elif|___default___|else|except|max_decimal|interface|payable|ether)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.keywords.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(ZERO_ADDRESS|EMPTY_BYTES32|MAX_INT128|MIN_INT128|MAX_DECIMAL|MIN_DECIMAL|MIN_UINT256|MAX_UINT256|super)\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.constant.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(implements|uses|initializes|exports)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.inherited-class.modules.vyper\\\"}]},\\\"call-wrapper-inheritance\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?=([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(\\\\\\\\())\\\",\\\"comment\\\":\\\"same as a function call, but in inheritance context\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"name\\\":\\\"meta.function-call.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inheritance-name\\\"},{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"class-declaration\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\s*(class)\\\\\\\\s+(?=[[:alpha:]_]\\\\\\\\w*\\\\\\\\s*(:|\\\\\\\\())\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.class.python\\\"}},\\\"end\\\":\\\"(:)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.class.begin.python\\\"}},\\\"name\\\":\\\"meta.class.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#class-name\\\"},{\\\"include\\\":\\\"#class-inheritance\\\"}]}]},\\\"class-inheritance\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.inheritance.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.inheritance.end.python\\\"}},\\\"name\\\":\\\"meta.class.inheritance.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(\\\\\\\\*\\\\\\\\*|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.unpacking.arguments.python\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.inheritance.python\\\"},{\\\"match\\\":\\\"=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"},{\\\"match\\\":\\\"\\\\\\\\bmetaclass\\\\\\\\b\\\",\\\"name\\\":\\\"support.type.metaclass.python\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#class-kwarg\\\"},{\\\"include\\\":\\\"#call-wrapper-inheritance\\\"},{\\\"include\\\":\\\"#expression-base\\\"},{\\\"include\\\":\\\"#member-access-class\\\"},{\\\"include\\\":\\\"#inheritance-identifier\\\"}]},\\\"class-kwarg\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.python variable.parameter.class.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(=)(?!=)\\\"},\\\"class-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.class.python\\\"}]},\\\"codetags\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.codetag.notation.python\\\"}},\\\"match\\\":\\\"(?:\\\\\\\\b(NOTE|XXX|HACK|FIXME|BUG|TODO)\\\\\\\\b)\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(?:\\\\\\\\#\\\\\\\\s*(type:)\\\\\\\\s*+(?!$|\\\\\\\\#))\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.typehint.comment.python\\\"},\\\"1\\\":{\\\"name\\\":\\\"comment.typehint.directive.notation.python\\\"}},\\\"contentName\\\":\\\"meta.typehint.comment.python\\\",\\\"end\\\":\\\"(?:$|(?=\\\\\\\\#))\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\Gignore(?=\\\\\\\\s*(?:$|\\\\\\\\#))\\\",\\\"name\\\":\\\"comment.typehint.ignore.notation.python\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(bool|bytes|float|int|object|str|List|Dict|Iterable|Sequence|Set|FrozenSet|Callable|Union|Tuple|Any|None)\\\\\\\\b\\\",\\\"name\\\":\\\"comment.typehint.type.notation.python\\\"},{\\\"match\\\":\\\"([\\\\\\\\[\\\\\\\\]\\\\\\\\(\\\\\\\\),\\\\\\\\.\\\\\\\\=\\\\\\\\*]|(->))\\\",\\\"name\\\":\\\"comment.typehint.punctuation.notation.python\\\"},{\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)\\\",\\\"name\\\":\\\"comment.typehint.variable.notation.python\\\"}]},{\\\"include\\\":\\\"#comments-base\\\"}]},\\\"comments-base\\\":{\\\"begin\\\":\\\"(\\\\\\\\#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.python\\\"}},\\\"end\\\":\\\"($)\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"comments-string-double-three\\\":{\\\"begin\\\":\\\"(\\\\\\\\#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.python\\\"}},\\\"end\\\":\\\"($|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"comments-string-single-three\\\":{\\\"begin\\\":\\\"(\\\\\\\\#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.python\\\"}},\\\"end\\\":\\\"($|(?='''))\\\",\\\"name\\\":\\\"comment.line.number-sign.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"curly-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dict.begin.python\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dict.end.python\\\"}},\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.dict.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"decorator\\\":{\\\"begin\\\":\\\"^\\\\\\\\s*((@))\\\\\\\\s*(?=[[:alpha:]_]\\\\\\\\w*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.decorator.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.decorator.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\))(?:(.*?)(?=\\\\\\\\s*(?:\\\\\\\\#|$)))|(?=\\\\\\\\n|\\\\\\\\#)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.decorator.python\\\"}},\\\"name\\\":\\\"meta.function.decorator.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#decorator-name\\\"},{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"decorator-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-callables\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.period.python\\\"}},\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)|(\\\\\\\\.)\\\",\\\"name\\\":\\\"entity.name.function.decorator.python\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.decorator.python\\\"}},\\\"match\\\":\\\"\\\\\\\\s*([^([:alpha:]\\\\\\\\s_\\\\\\\\.#\\\\\\\\\\\\\\\\].*?)(?=\\\\\\\\#|$)\\\",\\\"name\\\":\\\"invalid.illegal.decorator.python\\\"}]},\\\"docstring\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\1)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"}},\\\"name\\\":\\\"string.quoted.docstring.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docstring-prompt\\\"},{\\\"include\\\":\\\"#codetags\\\"},{\\\"include\\\":\\\"#docstring-guts-unicode\\\"}]},{\\\"begin\\\":\\\"([rR])(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"}},\\\"name\\\":\\\"string.quoted.docstring.raw.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#docstring-prompt\\\"},{\\\"include\\\":\\\"#codetags\\\"}]},{\\\"begin\\\":\\\"(\\\\\\\\'|\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\1)|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.docstring.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"},{\\\"include\\\":\\\"#docstring-guts-unicode\\\"}]},{\\\"begin\\\":\\\"([rR])(\\\\\\\\'|\\\\\\\\\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.docstring.raw.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#codetags\\\"}]}]},\\\"docstring-guts-unicode\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"}]},\\\"docstring-prompt\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"match\\\":\\\"(?:(?:^|\\\\\\\\G)\\\\\\\\s*((?:>>>|\\\\\\\\.\\\\\\\\.\\\\\\\\.)\\\\\\\\s)(?=\\\\\\\\s*\\\\\\\\S))\\\"},\\\"docstring-statement\\\":{\\\"begin\\\":\\\"^(?=\\\\\\\\s*[rR]?(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"|\\\\\\\\'|\\\\\\\\\\\\\\\"))\\\",\\\"comment\\\":\\\"the string either terminates correctly or by the beginning of a new line (this is for single line docstrings that aren't terminated) AND it's not followed by another docstring\\\",\\\"end\\\":\\\"((?<=\\\\\\\\1)|^)(?!\\\\\\\\s*[rR]?(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"|\\\\\\\\'|\\\\\\\\\\\\\\\"))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#docstring\\\"}]},\\\"double-one-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"double-one-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"double-one-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#double-one-regexp-character-set\\\"},{\\\"include\\\":\\\"#double-one-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#double-one-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookahead\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#double-one-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#double-one-regexp-conditional\\\"},{\\\"include\\\":\\\"#double-one-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#double-one-regexp-parentheses\\\"}]},\\\"double-one-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-one-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"double-three-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"double-three-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"double-three-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#double-three-regexp-character-set\\\"},{\\\"include\\\":\\\"#double-three-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#double-three-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookahead\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#double-three-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#double-three-regexp-conditional\\\"},{\\\"include\\\":\\\"#double-three-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#double-three-regexp-parentheses\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"double-three-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\"\\\\\\\"\\\\\\\"))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-double-three\\\"}]},\\\"ellipsis\\\":{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"constant.other.ellipsis.python\\\"},\\\"escape-sequence\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|[0-7]{1,3}|[\\\\\\\\\\\\\\\\\\\\\\\"'abfnrtv])\\\",\\\"name\\\":\\\"constant.character.escape.python\\\"},\\\"escape-sequence-unicode\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\\\\\\\\{[\\\\\\\\w\\\\\\\\s]+?\\\\\\\\})\\\",\\\"name\\\":\\\"constant.character.escape.python\\\"}]},\\\"expression\\\":{\\\"comment\\\":\\\"All valid Python expressions\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-base\\\"},{\\\"include\\\":\\\"#member-access\\\"},{\\\"comment\\\":\\\"Tokenize identifiers to help linters\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\"}]},\\\"expression-bare\\\":{\\\"comment\\\":\\\"valid Python expressions w/o comments and line continuation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#backticks\\\"},{\\\"include\\\":\\\"#illegal-anno\\\"},{\\\"include\\\":\\\"#literal\\\"},{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#lambda\\\"},{\\\"include\\\":\\\"#generator\\\"},{\\\"include\\\":\\\"#illegal-operator\\\"},{\\\"include\\\":\\\"#operator\\\"},{\\\"include\\\":\\\"#curly-braces\\\"},{\\\"include\\\":\\\"#item-access\\\"},{\\\"include\\\":\\\"#list\\\"},{\\\"include\\\":\\\"#odd-function-call\\\"},{\\\"include\\\":\\\"#round-braces\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#builtin-types\\\"},{\\\"include\\\":\\\"#builtin-exceptions\\\"},{\\\"include\\\":\\\"#magic-names\\\"},{\\\"include\\\":\\\"#special-names\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#special-variables\\\"},{\\\"include\\\":\\\"#ellipsis\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"include\\\":\\\"#special-variables-types\\\"}]},\\\"expression-base\\\":{\\\"comment\\\":\\\"valid Python expressions with comments and line continuation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#expression-bare\\\"},{\\\"include\\\":\\\"#line-continuation\\\"}]},\\\"f-expression\\\":{\\\"comment\\\":\\\"All valid Python expressions, except comments and line continuation\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression-bare\\\"},{\\\"include\\\":\\\"#member-access\\\"},{\\\"comment\\\":\\\"Tokenize identifiers to help linters\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\"}]},\\\"fregexp-base-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#fregexp-quantifier\\\"},{\\\"include\\\":\\\"#fstring-formatting-braces\\\"},{\\\"match\\\":\\\"\\\\\\\\{.*?\\\\\\\\}\\\"},{\\\"include\\\":\\\"#regexp-base-common\\\"}]},\\\"fregexp-quantifier\\\":{\\\"match\\\":\\\"\\\\\\\\{\\\\\\\\{(\\\\\\\\d+|\\\\\\\\d+,(\\\\\\\\d+)?|,\\\\\\\\d+)\\\\\\\\}\\\\\\\\}\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},\\\"fstring-fnorm-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[fF])([bBuU])?('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.multi.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.interpolated.python string.quoted.multi.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-core\\\"}]},\\\"fstring-fnorm-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[fF])([bBuU])?((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.single.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.interpolated.python string.quoted.single.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-core\\\"}]},\\\"fstring-formatting\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-formatting-braces\\\"},{\\\"include\\\":\\\"#fstring-formatting-singe-brace\\\"}]},\\\"fstring-formatting-braces\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.brace.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"empty braces are illegal\\\",\\\"match\\\":\\\"({)(\\\\\\\\s*?)(})\\\"},{\\\"match\\\":\\\"({{|}})\\\",\\\"name\\\":\\\"constant.character.escape.python\\\"}]},\\\"fstring-formatting-singe-brace\\\":{\\\"match\\\":\\\"(}(?!}))\\\",\\\"name\\\":\\\"invalid.illegal.brace.python\\\"},\\\"fstring-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"},{\\\"include\\\":\\\"#fstring-formatting\\\"}]},\\\"fstring-illegal-multi-brace\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#impossible\\\"}]},\\\"fstring-illegal-single-brace\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)(?=[^\\\\\\\\n}]*$\\\\\\\\n?)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"it is illegal to have a multiline brace inside a single-line string\\\",\\\"end\\\":\\\"(\\\\\\\\})|(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-terminator-single\\\"},{\\\"include\\\":\\\"#f-expression\\\"}]},\\\"fstring-multi-brace\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"value interpolation using { ... }\\\",\\\"end\\\":\\\"(\\\\\\\\})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-terminator-multi\\\"},{\\\"include\\\":\\\"#f-expression\\\"}]},\\\"fstring-multi-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|'''|\\\\\\\"\\\\\\\"\\\\\\\"))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.multi.python\\\"},\\\"fstring-normf-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bBuU])([fF])('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.multi.python storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.multi.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-core\\\"}]},\\\"fstring-normf-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bBuU])([fF])((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.single.python storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.single.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-core\\\"}]},\\\"fstring-raw-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#fstring-formatting\\\"}]},\\\"fstring-raw-multi-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|'''|\\\\\\\"\\\\\\\"\\\\\\\"))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.multi.python\\\"},\\\"fstring-raw-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:[rR][fF]|[fF][rR]))('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.multi.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.raw.multi.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.multi.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-raw-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-raw-multi-core\\\"}]},\\\"fstring-raw-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:[rR][fF]|[fF][rR]))((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.single.python storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python string.quoted.raw.single.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.single.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.fstring.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-raw-guts\\\"},{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"include\\\":\\\"#fstring-raw-single-core\\\"}]},\\\"fstring-raw-single-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.raw.single.python\\\"},\\\"fstring-single-brace\\\":{\\\"begin\\\":\\\"(\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"comment\\\":\\\"value interpolation using { ... }\\\",\\\"end\\\":\\\"(\\\\\\\\})|(?=\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-terminator-single\\\"},{\\\"include\\\":\\\"#f-expression\\\"}]},\\\"fstring-single-core\\\":{\\\"match\\\":\\\"(.+?)(($\\\\\\\\n?)|(?=[\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\{]|(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))|\\\\\\\\n\\\",\\\"name\\\":\\\"string.interpolated.python string.quoted.single.python\\\"},\\\"fstring-terminator-multi\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(=(![rsa])?)(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(=?![rsa])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"((?:=?)(?:![rsa])?)(:\\\\\\\\w?[<>=^]?[-+ ]?\\\\\\\\#?\\\\\\\\d*,?(\\\\\\\\.\\\\\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})\\\"},{\\\"include\\\":\\\"#fstring-terminator-multi-tail\\\"}]},\\\"fstring-terminator-multi-tail\\\":{\\\"begin\\\":\\\"((?:=?)(?:![rsa])?)(:)(?=.*?{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"end\\\":\\\"(?=})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-illegal-multi-brace\\\"},{\\\"include\\\":\\\"#fstring-multi-brace\\\"},{\\\"match\\\":\\\"([bcdeEfFgGnosxX%])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\#)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([-+ ])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([<>=^])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"}]},\\\"fstring-terminator-single\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(=(![rsa])?)(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(=?![rsa])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"((?:=?)(?:![rsa])?)(:\\\\\\\\w?[<>=^]?[-+ ]?\\\\\\\\#?\\\\\\\\d*,?(\\\\\\\\.\\\\\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})\\\"},{\\\"include\\\":\\\"#fstring-terminator-single-tail\\\"}]},\\\"fstring-terminator-single-tail\\\":{\\\"begin\\\":\\\"((?:=?)(?:![rsa])?)(:)(?=.*?{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"end\\\":\\\"(?=})|(?=\\\\\\\\n)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#fstring-illegal-single-brace\\\"},{\\\"include\\\":\\\"#fstring-single-brace\\\"},{\\\"match\\\":\\\"([bcdeEfFgGnosxX%])(?=})\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\d+)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\#)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([-+ ])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"([<>=^])\\\",\\\"name\\\":\\\"storage.type.format.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\w)\\\",\\\"name\\\":\\\"storage.type.format.python\\\"}]},\\\"function-arguments\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.python\\\"}},\\\"contentName\\\":\\\"meta.function-call.arguments.python\\\",\\\"end\\\":\\\"(?=\\\\\\\\))(?!\\\\\\\\)\\\\\\\\s*\\\\\\\\()\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(,)\\\",\\\"name\\\":\\\"punctuation.separator.arguments.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.unpacking.arguments.python\\\"}},\\\"match\\\":\\\"(?:(?<=[,(])|^)\\\\\\\\s*(\\\\\\\\*{1,2})\\\"},{\\\"include\\\":\\\"#lambda-incomplete\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function-call.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(=)(?!=)\\\"},{\\\"match\\\":\\\"=(?!=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.python\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.python\\\"}},\\\"match\\\":\\\"\\\\\\\\s*(\\\\\\\\))\\\\\\\\s*(\\\\\\\\()\\\"}]},\\\"function-call\\\":{\\\"begin\\\":\\\"\\\\\\\\b(?=([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(\\\\\\\\())\\\",\\\"comment\\\":\\\"Regular function call of the type \\\\\\\"name(args)\\\\\\\"\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"name\\\":\\\"meta.function-call.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#special-variables\\\"},{\\\"include\\\":\\\"#function-name\\\"},{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"function-declaration\\\":{\\\"begin\\\":\\\"\\\\\\\\s*(?:\\\\\\\\b(async)\\\\\\\\s+)?\\\\\\\\b(def)\\\\\\\\s+(?=[[:alpha:]_][[:word:]]*\\\\\\\\s*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.async.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.function.python\\\"}},\\\"end\\\":\\\"(:|(?=[#'\\\\\\\"\\\\\\\\n]))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.begin.python\\\"}},\\\"name\\\":\\\"meta.function.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-def-name\\\"},{\\\"include\\\":\\\"#parameters\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"include\\\":\\\"#return-annotation\\\"}]},\\\"function-def-name\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(__default__)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.fallback.vyper\\\"},{\\\"match\\\":\\\"\\\\\\\\b(__init__)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.constructor.vyper\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.python\\\"}]},\\\"function-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"comment\\\":\\\"Some color schemas support meta.function-call.generic scope\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.function-call.generic.python\\\"}]},\\\"generator\\\":{\\\"begin\\\":\\\"\\\\\\\\bfor\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"comment\\\":\\\"Match \\\\\\\"for ... in\\\\\\\" construct used in generators and for loops to\\\\ncorrectly identify the \\\\\\\"in\\\\\\\" as a control flow keyword.\\\\n\\\",\\\"end\\\":\\\"\\\\\\\\bin\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"illegal-anno\\\":{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"invalid.illegal.annotation.python\\\"},\\\"illegal-names\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.import.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?:(and|assert|async|await|break|class|continue|def|del|elif|else|except|finally|for|from|global|if|in|is|(?<=\\\\\\\\.)lambda|lambda(?=\\\\\\\\s*[\\\\\\\\.=])|nonlocal|not|or|pass|raise|return|try|while|with|yield)|(as|import))\\\\\\\\b\\\"},\\\"illegal-object-name\\\":{\\\"comment\\\":\\\"It's illegal to name class or function \\\\\\\"True\\\\\\\"\\\",\\\"match\\\":\\\"\\\\\\\\b(True|False|None)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.illegal.name.python\\\"},\\\"illegal-operator\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"&&|\\\\\\\\|\\\\\\\\||--|\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"invalid.illegal.operator.python\\\"},{\\\"match\\\":\\\"[?$]\\\",\\\"name\\\":\\\"invalid.illegal.operator.python\\\"},{\\\"comment\\\":\\\"We don't want `!` to flash when we're typing `!=`\\\",\\\"match\\\":\\\"!\\\\\\\\b\\\",\\\"name\\\":\\\"invalid.illegal.operator.python\\\"}]},\\\"import\\\":{\\\"comment\\\":\\\"Import statements used to correctly mark `from`, `import`, and `as`\\\\n\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(from)\\\\\\\\b(?=.+import)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.python\\\"}},\\\"end\\\":\\\"$|(?=import)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.+\\\",\\\"name\\\":\\\"punctuation.separator.period.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(import)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import.python\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)as\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"impossible\\\":{\\\"comment\\\":\\\"This is a special rule that should be used where no match is desired. It is not a good idea to match something like '1{0}' because in some cases that can result in infinite loops in token generation. So the rule instead matches and impossible expression to allow a match to fail and move to the next token.\\\",\\\"match\\\":\\\"$.^\\\"},\\\"inheritance-identifier\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.inherited-class.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\"},\\\"inheritance-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#lambda-incomplete\\\"},{\\\"include\\\":\\\"#builtin-possible-callables\\\"},{\\\"include\\\":\\\"#inheritance-identifier\\\"}]},\\\"item-access\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(?=[[:alpha:]_]\\\\\\\\w*\\\\\\\\s*\\\\\\\\[)\\\",\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"name\\\":\\\"meta.item-access.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#item-name\\\"},{\\\"include\\\":\\\"#item-index\\\"},{\\\"include\\\":\\\"#expression\\\"}]}]},\\\"item-index\\\":{\\\"begin\\\":\\\"(\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.begin.python\\\"}},\\\"contentName\\\":\\\"meta.item-access.arguments.python\\\",\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.slice.python\\\"},{\\\"include\\\":\\\"#expression\\\"}]},\\\"item-name\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#special-variables\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#special-names\\\"},{\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.indexed-name.python\\\"},{\\\"include\\\":\\\"#special-variables-types\\\"}]},\\\"lambda\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"match\\\":\\\"((?<=\\\\\\\\.)lambda|lambda(?=\\\\\\\\s*[\\\\\\\\.=]))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.lambda.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(lambda)\\\\\\\\s*?(?=[,\\\\\\\\n]|$)\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(lambda)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.lambda.python\\\"}},\\\"contentName\\\":\\\"meta.function.lambda.parameters.python\\\",\\\"end\\\":\\\"(:)|(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.section.function.lambda.begin.python\\\"}},\\\"name\\\":\\\"meta.lambda-function.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"/\\\",\\\"name\\\":\\\"keyword.operator.positional.parameter.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\*\\\\\\\\*|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.unpacking.parameter.python\\\"},{\\\"include\\\":\\\"#lambda-nested-incomplete\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(?:(,)|(?=:|$))\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#backticks\\\"},{\\\"include\\\":\\\"#illegal-anno\\\"},{\\\"include\\\":\\\"#lambda-parameter-with-default\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"include\\\":\\\"#illegal-operator\\\"}]}]},\\\"lambda-incomplete\\\":{\\\"match\\\":\\\"\\\\\\\\blambda(?=\\\\\\\\s*[,)])\\\",\\\"name\\\":\\\"storage.type.function.lambda.python\\\"},\\\"lambda-nested-incomplete\\\":{\\\"match\\\":\\\"\\\\\\\\blambda(?=\\\\\\\\s*[:,)])\\\",\\\"name\\\":\\\"storage.type.function.lambda.python\\\"},\\\"lambda-parameter-with-default\\\":{\\\"begin\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.python\\\"}},\\\"end\\\":\\\"(,)|(?=:|$)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"line-continuation\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.continuation.line.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.line.continuation.python\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\s*(\\\\\\\\S.*$\\\\\\\\n?)\\\"},{\\\"begin\\\":\\\"(\\\\\\\\\\\\\\\\)\\\\\\\\s*$\\\\\\\\n?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.continuation.line.python\\\"}},\\\"end\\\":\\\"(?=^\\\\\\\\s*$)|(?!(\\\\\\\\s*[rR]?(\\\\\\\\'\\\\\\\\'\\\\\\\\'|\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\"|\\\\\\\\'|\\\\\\\\\\\\\\\"))|(\\\\\\\\G$))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp\\\"},{\\\"include\\\":\\\"#string\\\"}]}]},\\\"list\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.list.begin.python\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.list.end.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"literal\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(True|False|None|NotImplemented|Ellipsis)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.python\\\"},{\\\"include\\\":\\\"#number\\\"}]},\\\"loose-default\\\":{\\\"begin\\\":\\\"(=)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.python\\\"}},\\\"end\\\":\\\"(,)|(?=\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"magic-function-names\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.magic.python\\\"}},\\\"comment\\\":\\\"these methods have magic interpretation by python and are generally called\\\\nindirectly through syntactic constructs\\\\n\\\",\\\"match\\\":\\\"\\\\\\\\b(__(?:abs|add|aenter|aexit|aiter|and|anext|await|bool|call|ceil|class_getitem|cmp|coerce|complex|contains|copy|deepcopy|del|delattr|delete|delitem|delslice|dir|div|divmod|enter|eq|exit|float|floor|floordiv|format|ge|get|getattr|getattribute|getinitargs|getitem|getnewargs|getslice|getstate|gt|hash|hex|iadd|iand|idiv|ifloordiv||ilshift|imod|imul|index|init|instancecheck|int|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|long|lshift|lt|missing|mod|mul|ne|neg|new|next|nonzero|oct|or|pos|pow|radd|rand|rdiv|rdivmod|reduce|reduce_ex|repr|reversed|rfloordiv||rlshift|rmod|rmul|ror|round|rpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|set_name|setslice|setstate|sizeof|str|sub|subclasscheck|truediv|trunc|unicode|xor|matmul|rmatmul|imatmul|init_subclass|set_name|fspath|bytes|prepare|length_hint)__)\\\\\\\\b\\\"},\\\"magic-names\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#magic-function-names\\\"},{\\\"include\\\":\\\"#magic-variable-names\\\"}]},\\\"magic-variable-names\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.variable.magic.python\\\"}},\\\"comment\\\":\\\"magic variables which a class/module may have.\\\",\\\"match\\\":\\\"\\\\\\\\b(__(?:all|annotations|bases|builtins|class|closure|code|debug|defaults|dict|doc|file|func|globals|kwdefaults|match_args|members|metaclass|methods|module|mro|mro_entries|name|qualname|post_init|self|signature|slots|subclasses|version|weakref|wrapped|classcell|spec|path|package|future|traceback)__)\\\\\\\\b\\\"},\\\"member-access\\\":{\\\"begin\\\":\\\"(\\\\\\\\.)\\\\\\\\s*(?!\\\\\\\\.)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.python\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\S)(?=\\\\\\\\W)|(^|(?<=\\\\\\\\s))(?=[^\\\\\\\\\\\\\\\\\\\\\\\\w\\\\\\\\s])|$\\\",\\\"name\\\":\\\"meta.member.access.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#member-access-base\\\"},{\\\"include\\\":\\\"#member-access-attribute\\\"}]},\\\"member-access-attribute\\\":{\\\"comment\\\":\\\"Highlight attribute access in otherwise non-specialized cases.\\\",\\\"match\\\":\\\"\\\\\\\\b([[:alpha:]_]\\\\\\\\w*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.attribute.python\\\"},\\\"member-access-base\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#magic-names\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#special-names\\\"},{\\\"include\\\":\\\"#line-continuation\\\"},{\\\"include\\\":\\\"#item-access\\\"},{\\\"include\\\":\\\"#special-variables-types\\\"}]},\\\"member-access-class\\\":{\\\"begin\\\":\\\"(\\\\\\\\.)\\\\\\\\s*(?!\\\\\\\\.)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.period.python\\\"}},\\\"end\\\":\\\"(?<=\\\\\\\\S)(?=\\\\\\\\W)|$\\\",\\\"name\\\":\\\"meta.member.access.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#call-wrapper-inheritance\\\"},{\\\"include\\\":\\\"#member-access-base\\\"},{\\\"include\\\":\\\"#inheritance-identifier\\\"}]},\\\"number\\\":{\\\"name\\\":\\\"constant.numeric.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#number-float\\\"},{\\\"include\\\":\\\"#number-dec\\\"},{\\\"include\\\":\\\"#number-hex\\\"},{\\\"include\\\":\\\"#number-oct\\\"},{\\\"include\\\":\\\"#number-bin\\\"},{\\\"include\\\":\\\"#number-long\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9]+\\\\\\\\w+\\\",\\\"name\\\":\\\"invalid.illegal.name.python\\\"}]},\\\"number-bin\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(0[bB])(_?[01])+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.bin.python\\\"},\\\"number-dec\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.imaginary.number.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.dec.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(?:[1-9](?:_?[0-9])*|0+|[0-9](?:_?[0-9])*([jJ])|0([0-9]+)(?![eE\\\\\\\\.]))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.dec.python\\\"},\\\"number-float\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.imaginary.number.python\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\w)(?:(?:\\\\\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\\\\\.)(?:[eE][+-]?[0-9](?:_?[0-9])*)?|[0-9](?:_?[0-9])*(?:[eE][+-]?[0-9](?:_?[0-9])*))([jJ])?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.python\\\"},\\\"number-hex\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(0[xX])(_?[0-9a-fA-F])+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.python\\\"},\\\"number-long\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"comment\\\":\\\"this is to support python2 syntax for long ints\\\",\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])([1-9][0-9]*|0)([lL])\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.bin.python\\\"},\\\"number-oct\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.number.python\\\"}},\\\"match\\\":\\\"(?<![\\\\\\\\w\\\\\\\\.])(0[oO])(_?[0-7])+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.oct.python\\\"},\\\"odd-function-call\\\":{\\\"begin\\\":\\\"(?<=\\\\\\\\]|\\\\\\\\))\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"comment\\\":\\\"A bit obscured function call where there may have been an\\\\narbitrary number of other operations to get the function.\\\\nE.g. \\\\\\\"arr[idx](args)\\\\\\\"\\\\n\\\",\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arguments.end.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#function-arguments\\\"}]},\\\"operator\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.logical.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.bitwise.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.arithmetic.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.operator.comparison.python\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(?:(and|or|not|in|is)|(for|if|else|await|(?:yield(?:\\\\\\\\s+from)?)))(?!\\\\\\\\s*:)\\\\\\\\b|(<<|>>|&|\\\\\\\\||\\\\\\\\^|~)|(\\\\\\\\*\\\\\\\\*|\\\\\\\\*|\\\\\\\\+|-|%|//|/|@)|(!=|==|>=|<=|<|>)|(:=)\\\"},\\\"parameter-special\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.function.language.special.self.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.function.language.special.cls.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b((self)|(cls))\\\\\\\\b\\\\\\\\s*(?:(,)|(?=\\\\\\\\)))\\\"},\\\"parameters\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.python\\\"}},\\\"name\\\":\\\"meta.function.parameters.python\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"/\\\",\\\"name\\\":\\\"keyword.operator.positional.parameter.python\\\"},{\\\"match\\\":\\\"(\\\\\\\\*\\\\\\\\*|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.unpacking.parameter.python\\\"},{\\\"include\\\":\\\"#lambda-incomplete\\\"},{\\\"include\\\":\\\"#illegal-names\\\"},{\\\"include\\\":\\\"#illegal-object-name\\\"},{\\\"include\\\":\\\"#parameter-special\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.function.language.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.parameters.python\\\"}},\\\"match\\\":\\\"([[:alpha:]_]\\\\\\\\w*)\\\\\\\\s*(?:(,)|(?=[)#\\\\\\\\n=]))\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#loose-default\\\"},{\\\"include\\\":\\\"#annotated-parameter\\\"}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.colon.python\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.element.python\\\"}]},\\\"regexp\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-single-three-line\\\"},{\\\"include\\\":\\\"#regexp-double-three-line\\\"},{\\\"include\\\":\\\"#regexp-single-one-line\\\"},{\\\"include\\\":\\\"#regexp-double-one-line\\\"}]},\\\"regexp-backreference\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.backreference.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\()(\\\\\\\\?P=\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?)(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.backreference.named.regexp\\\"},\\\"regexp-backreference-number\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.backreference.regexp\\\"}},\\\"match\\\":\\\"(\\\\\\\\\\\\\\\\[1-9]\\\\\\\\d?)\\\",\\\"name\\\":\\\"meta.backreference.regexp\\\"},\\\"regexp-base-common\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"support.other.match.any.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\^\\\",\\\"name\\\":\\\"support.other.match.begin.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\$\\\",\\\"name\\\":\\\"support.other.match.end.regexp\\\"},{\\\"match\\\":\\\"[+*?]\\\\\\\\??\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.disjunction.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-sequence\\\"}]},\\\"regexp-base-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-quantifier\\\"},{\\\"include\\\":\\\"#regexp-base-common\\\"}]},\\\"regexp-charecter-set-escapes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[abfnrtv\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-special\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([0-7]{1,3})\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},{\\\"include\\\":\\\"#regexp-escape-character\\\"},{\\\"include\\\":\\\"#regexp-escape-unicode\\\"},{\\\"include\\\":\\\"#regexp-escape-catchall\\\"}]},\\\"regexp-double-one-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\")|(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-one-regexp-expression\\\"}]},\\\"regexp-double-three-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#double-three-regexp-expression\\\"}]},\\\"regexp-escape-catchall\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(.|\\\\\\\\n)\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},\\\"regexp-escape-character\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(x[0-9A-Fa-f]{2}|0[0-7]{1,2}|[0-7]{3})\\\",\\\"name\\\":\\\"constant.character.escape.regexp\\\"},\\\"regexp-escape-sequence\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-escape-special\\\"},{\\\"include\\\":\\\"#regexp-escape-character\\\"},{\\\"include\\\":\\\"#regexp-escape-unicode\\\"},{\\\"include\\\":\\\"#regexp-backreference-number\\\"},{\\\"include\\\":\\\"#regexp-escape-catchall\\\"}]},\\\"regexp-escape-special\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([AbBdDsSwWZ])\\\",\\\"name\\\":\\\"support.other.escape.special.regexp\\\"},\\\"regexp-escape-unicode\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})\\\",\\\"name\\\":\\\"constant.character.unicode.regexp\\\"},\\\"regexp-flags\\\":{\\\"match\\\":\\\"\\\\\\\\(\\\\\\\\?[aiLmsux]+\\\\\\\\)\\\",\\\"name\\\":\\\"storage.modifier.flag.regexp\\\"},\\\"regexp-quantifier\\\":{\\\"match\\\":\\\"\\\\\\\\{(\\\\\\\\d+|\\\\\\\\d+,(\\\\\\\\d+)?|,\\\\\\\\d+)\\\\\\\\}\\\",\\\"name\\\":\\\"keyword.operator.quantifier.regexp\\\"},\\\"regexp-single-one-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\\')\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\')|(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"regexp-single-three-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\\\\\'\\\\\\\\'\\\\\\\\')\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\'\\\\\\\\'\\\\\\\\')\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.regexp.quoted.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"}]},\\\"reserved-names-vyper\\\":{\\\"match\\\":\\\"\\\\\\\\b(max_int128|min_int128|nonlocal|babbage|_default_|___init___|await|indexed|____init____|true|constant|with|from|nonpayable|finally|enum|zero_wei|del|for|____default____|if|none|or|global|def|not|class|twei|struct|mwei|empty_bytes32|nonreentrant|transient|false|assert|event|pass|finney|init|lovelace|min_decimal|shannon|public|external|internal|flagunreachable|_init_|return|in|and|raise|try|gwei|break|zero_address|pwei|range|wei|while|ada|yield|as|immutable|continue|async|lambda|default|is|szabo|kwei|import|max_uint256|elif|___default___|else|except|max_decimal|interface|payable|ether)\\\\\\\\b\\\",\\\"name\\\":\\\"name.reserved.vyper\\\"},\\\"return-annotation\\\":{\\\"begin\\\":\\\"(->)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.annotation.result.python\\\"}},\\\"end\\\":\\\"(?=:)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"round-braces\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.begin.python\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.parenthesis.end.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#expression\\\"}]},\\\"semicolon\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\;$\\\",\\\"name\\\":\\\"invalid.deprecated.semicolon.python\\\"}]},\\\"single-one-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"single-one-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"single-one-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#single-one-regexp-character-set\\\"},{\\\"include\\\":\\\"#single-one-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#single-one-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookahead\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#single-one-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#single-one-regexp-conditional\\\"},{\\\"include\\\":\\\"#single-one-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#single-one-regexp-parentheses\\\"}]},\\\"single-one-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-one-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'))|((?=(?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-one-regexp-expression\\\"}]},\\\"single-three-regexp-character-set\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\^?\\\\\\\\](?!.*?\\\\\\\\])\\\"},{\\\"begin\\\":\\\"(\\\\\\\\[)(\\\\\\\\^)?(\\\\\\\\])?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.begin.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.negation.regexp\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.character.set.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\]|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.character.set.end.regexp constant.other.set.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.character.set.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-charecter-set-escapes\\\"},{\\\"match\\\":\\\"[^\\\\\\\\n]\\\",\\\"name\\\":\\\"constant.character.set.regexp\\\"}]}]},\\\"single-three-regexp-comments\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.comment.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.comment.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"comment.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#codetags\\\"}]},\\\"single-three-regexp-conditional\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?\\\\\\\\((\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?|\\\\\\\\d+)\\\\\\\\)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.conditional.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.conditional.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#regexp-base-expression\\\"},{\\\"include\\\":\\\"#single-three-regexp-character-set\\\"},{\\\"include\\\":\\\"#single-three-regexp-comments\\\"},{\\\"include\\\":\\\"#regexp-flags\\\"},{\\\"include\\\":\\\"#single-three-regexp-named-group\\\"},{\\\"include\\\":\\\"#regexp-backreference\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookahead\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookahead-negative\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookbehind\\\"},{\\\"include\\\":\\\"#single-three-regexp-lookbehind-negative\\\"},{\\\"include\\\":\\\"#single-three-regexp-conditional\\\"},{\\\"include\\\":\\\"#single-three-regexp-parentheses-non-capturing\\\"},{\\\"include\\\":\\\"#single-three-regexp-parentheses\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookahead\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookahead-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookahead.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookbehind\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-lookbehind-negative\\\":{\\\"begin\\\":\\\"(\\\\\\\\()\\\\\\\\?<!\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.parenthesis.lookbehind.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-named-group\\\":{\\\"begin\\\":\\\"(\\\\\\\\()(\\\\\\\\?P<\\\\\\\\w+(?:\\\\\\\\s+[[:alnum:]]+)?>)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.named.group.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"meta.named.regexp\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-parentheses\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"single-three-regexp-parentheses-non-capturing\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\?:\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\\\"}},\\\"end\\\":\\\"(\\\\\\\\)|(?=\\\\\\\\'\\\\\\\\'\\\\\\\\'))\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#single-three-regexp-expression\\\"},{\\\"include\\\":\\\"#comments-string-single-three\\\"}]},\\\"special-names\\\":{\\\"match\\\":\\\"\\\\\\\\b(_*[[:upper:]][_\\\\\\\\d]*[[:upper:]])[[:upper:]\\\\\\\\d]*(_\\\\\\\\w*)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.other.caps.python\\\"},\\\"special-variables\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.language.special.self.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.language.special.cls.python\\\"}},\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(?:(self)|(cls))\\\\\\\\b\\\"},\\\"special-variables-types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(log)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.special.log.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(msg)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.special.msg.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(block)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.special.block.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(tx)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.special.tx.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(chain)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.special.chain.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(extcall)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.special.extcall.vyper\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(staticcall)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.special.staticcall.vyper\\\"},{\\\"match\\\":\\\"\\\\\\\\b(__interface__)\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.special.__interface__.vyper\\\"}]},\\\"statement\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#function-declaration\\\"},{\\\"include\\\":\\\"#generator\\\"},{\\\"include\\\":\\\"#statement-keyword\\\"},{\\\"include\\\":\\\"#assignment-operator\\\"},{\\\"include\\\":\\\"#decorator\\\"},{\\\"include\\\":\\\"#docstring-statement\\\"},{\\\"include\\\":\\\"#semicolon\\\"}]},\\\"statement-keyword\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b((async\\\\\\\\s+)?\\\\\\\\s*def)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.function.python\\\"},{\\\"comment\\\":\\\"if `as` is eventually followed by `:` or line continuation\\\\nit's probably control flow like:\\\\n with foo as bar, \\\\\\\\\\\\n Foo as Bar:\\\\n try:\\\\n do_stuff()\\\\n except Exception as e:\\\\n pass\\\\n\\\",\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)as\\\\\\\\b(?=.*[:\\\\\\\\\\\\\\\\])\\\",\\\"name\\\":\\\"keyword.control.flow.python\\\"},{\\\"comment\\\":\\\"other legal use of `as` is in an import\\\",\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)as\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.import.python\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(async|continue|del|assert|break|finally|for|from|elif|else|if|except|pass|raise|return|try|while|with)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.python\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(global|nonlocal)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.declaration.python\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?<!\\\\\\\\.)(class)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.class.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.flow.python\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(case|match)(?=\\\\\\\\s*([-+\\\\\\\\w\\\\\\\\d(\\\\\\\\[{'\\\\\\\":#]|$))\\\\\\\\b\\\"}]},\\\"string\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-quoted-single-line\\\"},{\\\"include\\\":\\\"#string-bin-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-bin-quoted-single-line\\\"},{\\\"include\\\":\\\"#string-raw-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-raw-quoted-single-line\\\"},{\\\"include\\\":\\\"#string-raw-bin-quoted-multi-line\\\"},{\\\"include\\\":\\\"#string-raw-bin-quoted-single-line\\\"},{\\\"include\\\":\\\"#fstring-fnorm-quoted-multi-line\\\"},{\\\"include\\\":\\\"#fstring-fnorm-quoted-single-line\\\"},{\\\"include\\\":\\\"#fstring-normf-quoted-multi-line\\\"},{\\\"include\\\":\\\"#fstring-normf-quoted-single-line\\\"},{\\\"include\\\":\\\"#fstring-raw-quoted-multi-line\\\"},{\\\"include\\\":\\\"#fstring-raw-quoted-single-line\\\"}]},\\\"string-bin-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bB])('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.binary.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-bin-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b[bB])((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.binary.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-brace-formatting\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"({{|}}|(?:{\\\\\\\\w*(\\\\\\\\.[[:alpha:]_]\\\\\\\\w*|\\\\\\\\[[^\\\\\\\\]'\\\\\\\"]+\\\\\\\\])*(![rsa])?(:\\\\\\\\w?[<>=^]?[-+ ]?\\\\\\\\#?\\\\\\\\d*,?(\\\\\\\\.\\\\\\\\d+)?[bcdeEfFgGnosxX%]?)?}))\\\",\\\"name\\\":\\\"meta.format.brace.python\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"storage.type.format.python\\\"}},\\\"match\\\":\\\"({\\\\\\\\w*(\\\\\\\\.[[:alpha:]_]\\\\\\\\w*|\\\\\\\\[[^\\\\\\\\]'\\\\\\\"]+\\\\\\\\])*(![rsa])?(:)[^'\\\\\\\"{}\\\\\\\\n]*(?:\\\\\\\\{[^'\\\\\\\"}\\\\\\\\n]*?\\\\\\\\}[^'\\\\\\\"{}\\\\\\\\n]*)*})\\\",\\\"name\\\":\\\"meta.format.brace.python\\\"}]},\\\"string-consume-escape\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\"\\\\\\\\n\\\\\\\\\\\\\\\\]\\\"},\\\"string-entity\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-formatting\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.character.format.placeholder.other.python\\\"}},\\\"match\\\":\\\"(%(\\\\\\\\([\\\\\\\\w\\\\\\\\s]*\\\\\\\\))?[-+#0 ]*(\\\\\\\\d+|\\\\\\\\*)?(\\\\\\\\.(\\\\\\\\d+|\\\\\\\\*))?([hlL])?[diouxXeEfFgGcrsab%])\\\",\\\"name\\\":\\\"meta.format.percent.python\\\"},\\\"string-line-continuation\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\$\\\",\\\"name\\\":\\\"constant.language.python\\\"},\\\"string-multi-bad-brace1-formatting-raw\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\"))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"}]},\\\"string-multi-bad-brace1-formatting-unicode\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\"))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"}]},\\\"string-multi-bad-brace2-formatting-raw\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-multi-bad-brace2-formatting-unicode\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!'''|\\\\\\\"\\\\\\\"\\\\\\\")\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?='''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-quoted-multi-line\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b([rR])(?=[uU]))?([uU])?('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-multi-bad-brace1-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-multi-bad-brace2-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-unicode-guts\\\"}]},\\\"string-quoted-single-line\\\":{\\\"begin\\\":\\\"(?:\\\\\\\\b([rR])(?=[uU]))?([uU])?((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.prefix.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\3)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-single-bad-brace1-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-single-bad-brace2-formatting-unicode\\\"},{\\\"include\\\":\\\"#string-unicode-guts\\\"}]},\\\"string-raw-bin-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-raw-bin-quoted-multi-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:R[bB]|[bB]R))('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.binary.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-raw-bin-guts\\\"}]},\\\"string-raw-bin-quoted-single-line\\\":{\\\"begin\\\":\\\"(\\\\\\\\b(?:R[bB]|[bB]R))((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\2)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.binary.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-raw-bin-guts\\\"}]},\\\"string-raw-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"},{\\\"include\\\":\\\"#string-brace-formatting\\\"}]},\\\"string-raw-quoted-multi-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]R)|(R))('''|\\\\\\\"\\\\\\\"\\\\\\\")\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\4)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.multi.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-multi-bad-brace1-formatting-raw\\\"},{\\\"include\\\":\\\"#string-multi-bad-brace2-formatting-raw\\\"},{\\\"include\\\":\\\"#string-raw-guts\\\"}]},\\\"string-raw-quoted-single-line\\\":{\\\"begin\\\":\\\"\\\\\\\\b(([uU]R)|(R))((['\\\\\\\"]))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.deprecated.prefix.python\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.string.python\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.python\\\"}},\\\"end\\\":\\\"(\\\\\\\\4)|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.python\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.newline.python\\\"}},\\\"name\\\":\\\"string.quoted.raw.single.python\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-single-bad-brace1-formatting-raw\\\"},{\\\"include\\\":\\\"#string-single-bad-brace2-formatting-raw\\\"},{\\\"include\\\":\\\"#string-raw-guts\\\"}]},\\\"string-single-bad-brace1-formatting-raw\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"}]},\\\"string-single-bad-brace1-formatting-unicode\\\":{\\\"begin\\\":\\\"(?=\\\\\\\\{%(.*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n)))%\\\\\\\\})\\\",\\\"comment\\\":\\\"template using {% ... %}\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#escape-sequence\\\"},{\\\"include\\\":\\\"#string-line-continuation\\\"}]},\\\"string-single-bad-brace2-formatting-raw\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string-consume-escape\\\"},{\\\"include\\\":\\\"#string-formatting\\\"}]},\\\"string-single-bad-brace2-formatting-unicode\\\":{\\\"begin\\\":\\\"(?!\\\\\\\\{\\\\\\\\{)(?=\\\\\\\\{(\\\\\\\\w*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))[^!:\\\\\\\\.\\\\\\\\[}\\\\\\\\w]).*?(?!(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\\\\\\})\\\",\\\"comment\\\":\\\"odd format or format-like syntax\\\",\\\"end\\\":\\\"(?=(['\\\\\\\"])|((?<!\\\\\\\\\\\\\\\\)\\\\\\\\n))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#string-entity\\\"}]},\\\"string-unicode-guts\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#escape-sequence-unicode\\\"},{\\\"include\\\":\\\"#string-entity\\\"},{\\\"include\\\":\\\"#string-brace-formatting\\\"}]}},\\\"scopeName\\\":\\\"source.vyper\\\",\\\"aliases\\\":[\\\"vy\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"WebAssembly\\\",\\\"name\\\":\\\"wasm\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#instructions\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#modules\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#invalid\\\"}],\\\"repository\\\":{\\\"comments\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.wat\\\"}},\\\"comment\\\":\\\"Line comment\\\",\\\"match\\\":\\\"(;;).*$\\\",\\\"name\\\":\\\"comment.line.wat\\\"},{\\\"begin\\\":\\\"\\\\\\\\(;\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.wat\\\"}},\\\"comment\\\":\\\"Block comment\\\",\\\"end\\\":\\\";\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.wat\\\"}},\\\"name\\\":\\\"comment.block.wat\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Fixed-width SIMD\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.wat\\\"}},\\\"comment\\\":\\\"Vector literal (i8x16) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(i8x16)(?:\\\\\\\\s+0x[0-9a-fA-F]{1,2}){16}\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.vector.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.wat\\\"}},\\\"comment\\\":\\\"Vector literal (i16x8) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(i16x8)(?:\\\\\\\\s+0x[0-9a-fA-F]{1,4}){8}\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.vector.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.wat\\\"}},\\\"comment\\\":\\\"Vector literal (i32x4) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(i32x4)(?:\\\\\\\\s+0x[0-9a-fA-F]{1,8}){4}\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.vector.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.wat\\\"}},\\\"comment\\\":\\\"Vector literal (i64x2) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(i64x2)(?:\\\\\\\\s+0x[0-9a-fA-F]{1,16}){2}\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.vector.wat\\\"}]},{\\\"comment\\\":\\\"MVP\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Floating point literal\\\",\\\"match\\\":\\\"[+-]?\\\\\\\\b[0-9][0-9]*(?:\\\\\\\\.[0-9][0-9]*)?(?:[eE][+-]?[0-9]+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.wat\\\"},{\\\"comment\\\":\\\"Floating point hexadecimal literal\\\",\\\"match\\\":\\\"[+-]?\\\\\\\\b0x([0-9a-fA-F]*\\\\\\\\.[0-9a-fA-F]+|[0-9a-fA-F]+\\\\\\\\.?)[Pp][+-]?[0-9]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.wat\\\"},{\\\"comment\\\":\\\"Floating point infinity\\\",\\\"match\\\":\\\"[+-]?\\\\\\\\binf\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.wat\\\"},{\\\"comment\\\":\\\"Floating point literal (NaN)\\\",\\\"match\\\":\\\"[+-]?\\\\\\\\bnan:0x[0-9a-fA-F][0-9a-fA-F]*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.wat\\\"},{\\\"comment\\\":\\\"Integer literal\\\",\\\"match\\\":\\\"[+-]?\\\\\\\\b(?:0x[0-9a-fA-F][0-9a-fA-F]*|\\\\\\\\d[\\\\\\\\d]*)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.wat\\\"}]}]},\\\"instructions\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Non-trapping float-to-int conversions\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Conversion instruction [nontrapping-float-to-int-conversions]\\\",\\\"match\\\":\\\"\\\\\\\\b(i32|i64)\\\\\\\\.trunc_sat_f(?:32|64)_[su]\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"}]},{\\\"comment\\\":\\\"Sign-extension operators\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Numeric instruction (i32) [sign-extension-ops]\\\",\\\"match\\\":\\\"\\\\\\\\b(i32)\\\\\\\\.(?:extend(?:8|16)_s)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Numeric instruction (i64) [sign-extension-ops]\\\",\\\"match\\\":\\\"\\\\\\\\b(i64)\\\\\\\\.(?:extend(?:8|16|32)_s)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"}]},{\\\"comment\\\":\\\"Bulk memory operations\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Memory instruction [bulk-memory-operations]\\\",\\\"match\\\":\\\"\\\\\\\\b(memory)\\\\\\\\.(?:copy|fill|init|drop)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"}]},{\\\"comment\\\":\\\"Fixed-width SIMD\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Vector instruction (v128) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(v128)\\\\\\\\.(?:const|and|or|xor|not|andnot|bitselect|load|store)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Vector instruction (i8x16) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(i8x16)\\\\\\\\.(?:shuffle|swizzle|splat|replace_lane|add|sub|mul|neg|shl|shr_[su]|eq|ne|lt_[su]|le_[su]|gt_[su]|ge_[su]|min_[su]|max_[su]|any_true|all_true|extract_lane_[su]|add_saturate_[su]|sub_saturate_[su]|avgr_u|narrow_i16x8_[su])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Vector instruction (i16x8) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(i16x8)\\\\\\\\.(?:splat|replace_lane|add|sub|mul|neg|shl|shr_[su]|eq|ne|lt_[su]|le_[su]|gt_[su]|ge_[su]|min_[su]|max_[su]|any_true|all_true|extract_lane_[su]|add_saturate_[su]|sub_saturate_[su]|avgr_u|load8x8_[su]|narrow_i32x4_[su]|widen_(low|high)_i8x16_[su])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Vector instruction (i32x4) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(i32x4)\\\\\\\\.(?:splat|replace_lane|add|sub|mul|neg|shl|shr_[su]|eq|ne|lt_[su]|le_[su]|gt_[su]|ge_[su]|min_[su]|max_[su]|any_true|all_true|extract_lane|load16x4_[su]|trunc_sat_f32x4_[su]|widen_(low|high)_i16x8_[su])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Vector instruction (i64x2) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(i64x2)\\\\\\\\.(?:splat|replace_lane|add|sub|mul|neg|shl|shr_[su]|extract_lane|load32x2_[su])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Vector instruction (f32x4) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(f32x4)\\\\\\\\.(?:splat|replace_lane|add|sub|mul|neg|extract_lane|eq|ne|lt|le|gt|ge|abs|min|max|div|sqrt|convert_i32x4_[su])\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Vector instruction (f64x2) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(f64x2)\\\\\\\\.(?:splat|replace_lane|add|sub|mul|neg|extract_lane|eq|ne|lt|le|gt|ge|abs|min|max|div|sqrt)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Vector instruction (v8x16) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(v8x16)\\\\\\\\.(?:load_splat|shuffle|swizzle)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Vector instruction (v16x8) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(v16x8)\\\\\\\\.load_splat\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Vector instruction (v32x4) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(v32x4)\\\\\\\\.load_splat\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Vector instruction (v64x2) [simd]\\\",\\\"match\\\":\\\"\\\\\\\\b(v64x2)\\\\\\\\.load_splat\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"}]},{\\\"comment\\\":\\\"Threads\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.class.wat\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.class.wat\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Atomic instruction (i32) [threads]\\\",\\\"match\\\":\\\"\\\\\\\\b(i32)\\\\\\\\.(atomic)\\\\\\\\.(?:load(?:8_u|16_u)?|store(?:8|16)?|wait|(rmw)\\\\\\\\.(?:add|sub|and|or|xor|xchg|cmpxchg)|(rmw8|rmw16)\\\\\\\\.(?:add_u|sub_u|and_u|or_u|xor_u|xchg_u|cmpxchg_u))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"},\\\"2\\\":{\\\"name\\\":\\\"support.class.wat\\\"},\\\"3\\\":{\\\"name\\\":\\\"support.class.wat\\\"},\\\"4\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Atomic instruction (i64) [threads]\\\",\\\"match\\\":\\\"\\\\\\\\b(i64)\\\\\\\\.(atomic)\\\\\\\\.(?:load(?:8_u|16_u|32_u)?|store(?:8|16|32)?|wait|(rmw)\\\\\\\\.(?:add|sub|and|or|xor|xchg|cmpxchg)|(rmw8|rmw16|rmw32)\\\\\\\\.(?:add_u|sub_u|and_u|or_u|xor_u|xchg_u|cmpxchg_u))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Atomic instruction [threads]\\\",\\\"match\\\":\\\"\\\\\\\\b(atomic)\\\\\\\\.(?:notify|fence)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"comment\\\":\\\"Shared modifier [threads]\\\",\\\"match\\\":\\\"\\\\\\\\bshared\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.wat\\\"}]},{\\\"comment\\\":\\\"Reference types\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Reference instruction [reference-types]\\\",\\\"match\\\":\\\"\\\\\\\\b(ref)\\\\\\\\.(?:null|is_null|func|extern)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Table instruction [reference-types]\\\",\\\"match\\\":\\\"\\\\\\\\b(table)\\\\\\\\.(?:get|size|grow|fill|init|copy)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"comment\\\":\\\"Type name [reference-types]\\\",\\\"match\\\":\\\"\\\\\\\\b(?:externref|funcref|nullref)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.wat\\\"}]},{\\\"comment\\\":\\\"Tail Call\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Control instruction [tail-call]\\\",\\\"match\\\":\\\"\\\\\\\\breturn_call(?:_indirect)?\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.wat\\\"}]},{\\\"comment\\\":\\\"Exception handling\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Control instruction [exception-handling]\\\",\\\"match\\\":\\\"\\\\\\\\b(?:try|catch|throw|rethrow|br_on_exn)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.wat\\\"},{\\\"comment\\\":\\\"Module element [exception-handling]\\\",\\\"match\\\":\\\"(?<=\\\\\\\\()event\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.wat\\\"}]},{\\\"comment\\\":\\\"Binaryen extensions\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Pseudo stack instruction [binaryen]\\\",\\\"match\\\":\\\"\\\\\\\\b(i32|i64|f32|f64|externref|funcref|nullref|exnref)\\\\\\\\.(?:push|pop)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"}]},{\\\"comment\\\":\\\"MVP\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.type.wat\\\"}},\\\"comment\\\":\\\"Memory instruction (i32) [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(i32)\\\\\\\\.(?:load|load(?:8|16)(?:_[su])?|store(?:8|16)?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.type.wat\\\"}},\\\"comment\\\":\\\"Memory instruction (i64) [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(i64)\\\\\\\\.(?:load|load(?:8|16|32)(?:_[su])?|store(?:8|16|32)?)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.type.wat\\\"}},\\\"comment\\\":\\\"Memory instruction (f32/f64) [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(f32|f64)\\\\\\\\.(?:load|store)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.memory.wat\\\"}},\\\"comment\\\":\\\"Memory instruction [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(memory)\\\\\\\\.(?:size|grow)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.wat\\\"}},\\\"comment\\\":\\\"Memory instruction attribute [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(offset|align)=\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.local.wat\\\"}},\\\"comment\\\":\\\"Variable instruction (local) [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(local)\\\\\\\\.(?:get|set|tee)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.global.wat\\\"}},\\\"comment\\\":\\\"Variable instruction (global) [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(global)\\\\\\\\.(?:get|set)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.type.wat\\\"}},\\\"comment\\\":\\\"Numeric instruction (i32/i64) [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(i32|i64)\\\\\\\\.(const|eqz|eq|ne|lt_[su]|gt_[su]|le_[su]|ge_[su]|clz|ctz|popcnt|add|sub|mul|div_[su]|rem_[su]|and|or|xor|shl|shr_[su]|rotl|rotr)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.type.wat\\\"}},\\\"comment\\\":\\\"Numeric instruction (f32/f64) [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(f32|f64)\\\\\\\\.(const|eq|ne|lt|gt|le|ge|abs|neg|ceil|floor|trunc|nearest|sqrt|add|sub|mul|div|min|max|copysign)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.type.wat\\\"}},\\\"comment\\\":\\\"Conversion instruction (i32) [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(i32)\\\\\\\\.(wrap_i64|trunc_(f32|f64)_[su]|reinterpret_f32)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.type.wat\\\"}},\\\"comment\\\":\\\"Conversion instruction (i64) [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(i64)\\\\\\\\.(extend_i32_[su]|trunc_f(32|64)_[su]|reinterpret_f64)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.type.wat\\\"}},\\\"comment\\\":\\\"Conversion instruction (f32) [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(f32)\\\\\\\\.(convert_i(32|64)_[su]|demote_f64|reinterpret_i32)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.type.wat\\\"}},\\\"comment\\\":\\\"Conversion instruction (f64) [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(f64)\\\\\\\\.(convert_i(32|64)_[su]|promote_f32|reinterpret_i64)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"comment\\\":\\\"Control instruction [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(?:unreachable|nop|block|loop|if|then|else|end|br|br_if|br_table|return|call|call_indirect)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.wat\\\"},{\\\"comment\\\":\\\"Parametric instruction [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(?:drop|select)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"}]},{\\\"comment\\\":\\\"GC Instructions\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Reference Instructions [GC]\\\",\\\"match\\\":\\\"\\\\\\\\b(ref)\\\\\\\\.(?:eq|test|cast)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Struct Instructions [GC]\\\",\\\"match\\\":\\\"\\\\\\\\b(struct)\\\\\\\\.(?:new_canon|new_canon_default|get|get_s|get_u|set)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Array Instructions [GC]\\\",\\\"match\\\":\\\"\\\\\\\\b(array)\\\\\\\\.(?:new_canon|new_canon_default|get|get_s|get_u|set|len|new_canon_fixed|new_canon_data|new_canon_elem)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"i31 Instructions [GC]\\\",\\\"match\\\":\\\"\\\\\\\\b(i31)\\\\\\\\.(?:new|get_s|get_u)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Branch Instructions [GC]\\\",\\\"match\\\":\\\"\\\\\\\\b(?:br_on_non_null|br_on_cast|br_on_cast_fail)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.class.wat\\\"}},\\\"comment\\\":\\\"Reference Instructions [GC]\\\",\\\"match\\\":\\\"\\\\\\\\b(extern)\\\\\\\\.(?:internalize|externalize)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.operator.word.wat\\\"}]}]},\\\"invalid\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"[^\\\\\\\\s()]+\\\",\\\"name\\\":\\\"invalid.wat\\\"}]},\\\"modules\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Bulk memory operations\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.wat\\\"}},\\\"comment\\\":\\\"Passive modifier [bulk-memory-operations]\\\",\\\"match\\\":\\\"(?<=\\\\\\\\(data)\\\\\\\\s+(passive)\\\\\\\\b\\\"}]},{\\\"comment\\\":\\\"MVP\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Module element [mvp]\\\",\\\"match\\\":\\\"(?<=\\\\\\\\()(?:module|import|export|memory|data|table|elem|start|func|type|param|result|global|local)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.modifier.wat\\\"}},\\\"comment\\\":\\\"Mutable global modifier [mvp]\\\",\\\"match\\\":\\\"(?<=\\\\\\\\()\\\\\\\\s*(mut)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.wat\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.wat\\\"}},\\\"comment\\\":\\\"Function name [mvp]\\\",\\\"match\\\":\\\"(?<=\\\\\\\\(func|\\\\\\\\(start|call|return_call|ref\\\\\\\\.func)\\\\\\\\s+(\\\\\\\\$[0-9A-Za-z!#$%&'*+\\\\\\\\-./:<=>?@\\\\\\\\\\\\\\\\^_`|~]*)\\\"},{\\\"begin\\\":\\\"\\\\\\\\)\\\\\\\\s+(\\\\\\\\$[0-9A-Za-z!#$%&'*+\\\\\\\\-./:<=>?@\\\\\\\\\\\\\\\\^_`|~]*)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.wat\\\"}},\\\"comment\\\":\\\"Function name(s) (elem) [mvp]\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\s)\\\\\\\\$[0-9A-Za-z!#$%&'*+\\\\\\\\-./:<=>?@\\\\\\\\\\\\\\\\^_`|~]*\\\",\\\"name\\\":\\\"entity.name.function.wat\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.type.function.wat\\\"}},\\\"comment\\\":\\\"Function type [mvp]\\\",\\\"match\\\":\\\"(?<=\\\\\\\\(type)\\\\\\\\s+(\\\\\\\\$[0-9A-Za-z!#$%&'*+\\\\\\\\-./:<=>?@\\\\\\\\\\\\\\\\^_`|~]*)\\\"},{\\\"comment\\\":\\\"Variable name or branch label [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\$[0-9A-Za-z!#$%&'*+\\\\\\\\-./:<=>?@\\\\\\\\\\\\\\\\^_`|~]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.wat\\\"}]}]},\\\"strings\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"}},\\\"comment\\\":\\\"String literal\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"name\\\":\\\"string.quoted.double.wat\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(n|t|\\\\\\\\\\\\\\\\|'|\\\\\\\"|[0-9a-fA-F]{2})\\\",\\\"name\\\":\\\"constant.character.escape.wat\\\"}]},\\\"types\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Fixed-width SIMD\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Type name [simd]\\\",\\\"match\\\":\\\"\\\\\\\\bv128\\\\\\\\b(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"entity.name.type.wat\\\"}]},{\\\"comment\\\":\\\"Reference types\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Type name [reference-types]\\\",\\\"match\\\":\\\"\\\\\\\\b(?:externref|funcref|nullref)\\\\\\\\b(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"entity.name.type.wat\\\"}]},{\\\"comment\\\":\\\"Exception handling\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Type name [exception-handling]\\\",\\\"match\\\":\\\"\\\\\\\\bexnref\\\\\\\\b(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"entity.name.type.wat\\\"}]},{\\\"comment\\\":\\\"MVP\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Type name [mvp]\\\",\\\"match\\\":\\\"\\\\\\\\b(?:i32|i64|f32|f64)\\\\\\\\b(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"entity.name.type.wat\\\"}]},{\\\"comment\\\":\\\"GC Types\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Type name [GC]\\\",\\\"match\\\":\\\"\\\\\\\\b(?:i8|i16|ref|funcref|externref|anyref|eqref|i31ref|nullfuncref|nullexternref|structref|arrayref|nullref)\\\\\\\\b(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"entity.name.type.wat\\\"}]},{\\\"comment\\\":\\\"GC Heap Types\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Type name [GC]\\\",\\\"match\\\":\\\"\\\\\\\\b(?:type|func|extern|any|eq|nofunc|noextern|struct|array|none)\\\\\\\\b(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"entity.name.type.wat\\\"}]},{\\\"comment\\\":\\\"GC Structured and sub Types\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Type name [GC]\\\",\\\"match\\\":\\\"\\\\\\\\b(?:struct|array|sub|final|rec|field|mut)\\\\\\\\b(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"entity.name.type.wat\\\"}]}]}},\\\"scopeName\\\":\\\"source.wat\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Wenyan\\\",\\\"name\\\":\\\"wenyan\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#symbols\\\"},{\\\"include\\\":\\\"#expression\\\"},{\\\"include\\\":\\\"#comment-blocks\\\"},{\\\"include\\\":\\\"#comment-lines\\\"}],\\\"repository\\\":{\\\"comment-blocks\\\":{\\\"begin\\\":\\\"(\u6CE8\u66F0|\u758F\u66F0|\u6279\u66F0)\u3002?(\u300C\u300C|\u300E)\\\",\\\"end\\\":\\\"(\u300D\u300D|\u300F)\\\",\\\"name\\\":\\\"comment.block\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character\\\"}]},\\\"comment-lines\\\":{\\\"begin\\\":\\\"\u6CE8\u66F0|\u758F\u66F0|\u6279\u66F0\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\u8CA0|\u00B7|\u53C8|\u96F6|\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D|\u5341|\u767E|\u5343|\u842C|\u5104|\u5146|\u4EAC|\u5793|\u79ED|\u7A70|\u6E9D|\u6F97|\u6B63|\u8F09|\u6975|\u5206|\u91D0|\u6BEB|\u7D72|\u5FFD|\u5FAE|\u7E96|\u6C99|\u5875|\u57C3|\u6E3A|\u6F20\\\",\\\"name\\\":\\\"constant.numeric\\\"},{\\\"match\\\":\\\"\u5176|\u9670|\u967D\\\",\\\"name\\\":\\\"constant.language\\\"},{\\\"begin\\\":\\\"\u300C\u300C|\u300E\\\",\\\"end\\\":\\\"\u300D\u300D|\u300F\\\",\\\"name\\\":\\\"string.quoted\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character\\\"}]}]},\\\"expression\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#variables\\\"}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\u6578|\u5217|\u8A00|\u8853|\u723B|\u7269|\u5143\\\",\\\"name\\\":\\\"storage.type\\\"},{\\\"match\\\":\\\"\u4E43\u884C\u662F\u8853\u66F0|\u82E5\u5176\u4E0D\u7136\u8005|\u4E43\u6B78\u7A7A\u7121|\u6B32\u884C\u662F\u8853|\u4E43\u6B62\u662F\u904D|\u82E5\u5176\u7136\u8005|\u5176\u7269\u5982\u662F|\u4E43\u5F97\u77E3|\u4E4B\u8853\u4E5F|\u5FC5\u5148\u5F97|\u662F\u8853\u66F0|\u6046\u70BA\u662F|\u4E4B\u7269\u4E5F|\u4E43\u5F97|\u662F\u8B02|\u4E91\u4E91|\u4E2D\u4E4B|\u70BA\u662F|\u4E43\u6B62|\u82E5\u975E|\u6216\u82E5|\u4E4B\u9577|\u5176\u9918\\\",\\\"name\\\":\\\"keyword.control\\\"},{\\\"match\\\":\\\"\u6216\u4E91|\u84CB\u8B02\\\",\\\"name\\\":\\\"keyword.control\\\"},{\\\"match\\\":\\\"\u4E2D\u6709\u967D\u4E4E|\u4E2D\u7121\u9670\u4E4E|\u6240\u9918\u5E7E\u4F55|\u4E0D\u7B49\u65BC|\u4E0D\u5927\u65BC|\u4E0D\u5C0F\u65BC|\u7B49\u65BC|\u5927\u65BC|\u5C0F\u65BC|\u52A0|\u6E1B|\u4E58|\u9664|\u8B8A|\u4EE5|\u65BC\\\",\\\"name\\\":\\\"keyword.operator\\\"},{\\\"match\\\":\\\"\u4E0D\u77E5\u4F55\u798D\u6B5F|\u4E0D\u5FA9\u5B58\u77E3|\u59D1\u5984\u884C\u6B64|\u5982\u4E8B\u4E0D\u8AE7|\u540D\u4E4B\u66F0|\u543E\u5617\u89C0|\u4E4B\u798D\u6B5F|\u4E43\u4F5C\u7F77|\u543E\u6709|\u4ECA\u6709|\u7269\u4E4B|\u66F8\u4E4B|\u4EE5\u65BD|\u6614\u4E4B|\u662F\u77E3|\u4E4B\u66F8|\u65B9\u609F|\u4E4B\u7FA9|\u55DA\u547C|\u4E4B\u798D|\u6709|\u65BD|\u66F0|\u566B|\u53D6|\u4ECA|\u592B|\u4E2D|\u8C48\\\",\\\"name\\\":\\\"keyword.other\\\"},{\\\"match\\\":\\\"\u4E5F|\u51E1|\u904D|\u82E5|\u8005|\u4E4B|\u5145|\u929C\\\",\\\"name\\\":\\\"keyword.control\\\"}]},\\\"symbols\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\u3002|\u3001\\\",\\\"name\\\":\\\"punctuation.separator\\\"}]},\\\"variables\\\":{\\\"begin\\\":\\\"\u300C\\\",\\\"end\\\":\\\"\u300D\\\",\\\"name\\\":\\\"variable.other\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character\\\"}]}},\\\"scopeName\\\":\\\"source.wenyan\\\",\\\"aliases\\\":[\\\"\u6587\u8A00\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"WGSL\\\",\\\"name\\\":\\\"wgsl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_comments\\\"},{\\\"include\\\":\\\"#block_comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#function_calls\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#punctuation\\\"}],\\\"repository\\\":{\\\"attributes\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.attribute.at\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.attribute.wgsl\\\"}},\\\"comment\\\":\\\"attribute declaration\\\",\\\"match\\\":\\\"(@)([A-Za-z_]+)\\\",\\\"name\\\":\\\"meta.attribute.wgsl\\\"}]},\\\"block_comments\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"empty block comments\\\",\\\"match\\\":\\\"/\\\\\\\\*\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.wgsl\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*\\\",\\\"comment\\\":\\\"block documentation comments\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.wgsl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_comments\\\"}]},{\\\"begin\\\":\\\"/\\\\\\\\*(?!\\\\\\\\*)\\\",\\\"comment\\\":\\\"block comments\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.wgsl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#block_comments\\\"}]}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"decimal float literal\\\",\\\"match\\\":\\\"(-?\\\\\\\\b[0-9][0-9]*\\\\\\\\.[0-9][0-9]*)([eE][+-]?[0-9]+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.wgsl\\\"},{\\\"comment\\\":\\\"int literal\\\",\\\"match\\\":\\\"-?\\\\\\\\b0x[0-9a-fA-F]+\\\\\\\\b|\\\\\\\\b0\\\\\\\\b|-?\\\\\\\\b[1-9][0-9]*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.wgsl\\\"},{\\\"comment\\\":\\\"uint literal\\\",\\\"match\\\":\\\"\\\\\\\\b0x[0-9a-fA-F]+u\\\\\\\\b|\\\\\\\\b0u\\\\\\\\b|\\\\\\\\b[1-9][0-9]*u\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.wgsl\\\"},{\\\"comment\\\":\\\"boolean constant\\\",\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.wgsl\\\"}]},\\\"function_calls\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"([A-Za-z0-9_]+)(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.wgsl\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.brackets.round.wgsl\\\"}},\\\"comment\\\":\\\"function/method calls\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.brackets.round.wgsl\\\"}},\\\"name\\\":\\\"meta.function.call.wgsl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_comments\\\"},{\\\"include\\\":\\\"#block_comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#function_calls\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]}]},\\\"functions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(fn)\\\\\\\\s+([A-Za-z0-9_]+)((\\\\\\\\()|(<))\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.fn.wgsl\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.wgsl\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.brackets.round.wgsl\\\"}},\\\"comment\\\":\\\"function definition\\\",\\\"end\\\":\\\"\\\\\\\\{\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.brackets.curly.wgsl\\\"}},\\\"name\\\":\\\"meta.function.definition.wgsl\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#line_comments\\\"},{\\\"include\\\":\\\"#block_comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#attributes\\\"},{\\\"include\\\":\\\"#function_calls\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#types\\\"},{\\\"include\\\":\\\"#variables\\\"},{\\\"include\\\":\\\"#punctuation\\\"}]}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"other keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(bitcast|block|break|case|continue|continuing|default|discard|else|elseif|enable|fallthrough|for|function|if|loop|private|read|read_write|return|storage|switch|uniform|while|workgroup|write)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.wgsl\\\"},{\\\"comment\\\":\\\"reserved keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(asm|const|do|enum|handle|mat|premerge|regardless|typedef|unless|using|vec|void)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.wgsl\\\"},{\\\"comment\\\":\\\"storage keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(let|var)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.wgsl storage.type.wgsl\\\"},{\\\"comment\\\":\\\"type keyword\\\",\\\"match\\\":\\\"\\\\\\\\b(type)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.declaration.type.wgsl storage.type.wgsl\\\"},{\\\"comment\\\":\\\"enum keyword\\\",\\\"match\\\":\\\"\\\\\\\\b(enum)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.declaration.enum.wgsl storage.type.wgsl\\\"},{\\\"comment\\\":\\\"struct keyword\\\",\\\"match\\\":\\\"\\\\\\\\b(struct)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.declaration.struct.wgsl storage.type.wgsl\\\"},{\\\"comment\\\":\\\"fn\\\",\\\"match\\\":\\\"\\\\\\\\bfn\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.fn.wgsl\\\"},{\\\"comment\\\":\\\"logical operators\\\",\\\"match\\\":\\\"(\\\\\\\\^|\\\\\\\\||\\\\\\\\|\\\\\\\\||&&|<<|>>|!)(?!=)\\\",\\\"name\\\":\\\"keyword.operator.logical.wgsl\\\"},{\\\"comment\\\":\\\"logical AND, borrow references\\\",\\\"match\\\":\\\"&(?![&=])\\\",\\\"name\\\":\\\"keyword.operator.borrow.and.wgsl\\\"},{\\\"comment\\\":\\\"assignment operators\\\",\\\"match\\\":\\\"(\\\\\\\\+=|-=|\\\\\\\\*=|/=|%=|\\\\\\\\^=|&=|\\\\\\\\|=|<<=|>>=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.wgsl\\\"},{\\\"comment\\\":\\\"single equal\\\",\\\"match\\\":\\\"(?<![<>])=(?!=|>)\\\",\\\"name\\\":\\\"keyword.operator.assignment.equal.wgsl\\\"},{\\\"comment\\\":\\\"comparison operators\\\",\\\"match\\\":\\\"(=(=)?(?!>)|!=|<=|(?<!=)>=)\\\",\\\"name\\\":\\\"keyword.operator.comparison.wgsl\\\"},{\\\"comment\\\":\\\"math operators\\\",\\\"match\\\":\\\"(([+%]|(\\\\\\\\*(?!\\\\\\\\w)))(?!=))|(-(?!>))|(/(?!/))\\\",\\\"name\\\":\\\"keyword.operator.math.wgsl\\\"},{\\\"comment\\\":\\\"dot access\\\",\\\"match\\\":\\\"\\\\\\\\.(?!\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.operator.access.dot.wgsl\\\"},{\\\"comment\\\":\\\"dashrocket, skinny arrow\\\",\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"keyword.operator.arrow.skinny.wgsl\\\"}]},\\\"line_comments\\\":{\\\"comment\\\":\\\"single line comment\\\",\\\"match\\\":\\\"\\\\\\\\s*//.*\\\",\\\"name\\\":\\\"comment.line.double-slash.wgsl\\\"},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"comma\\\",\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.comma.wgsl\\\"},{\\\"comment\\\":\\\"curly braces\\\",\\\"match\\\":\\\"[{}]\\\",\\\"name\\\":\\\"punctuation.brackets.curly.wgsl\\\"},{\\\"comment\\\":\\\"parentheses, round brackets\\\",\\\"match\\\":\\\"[()]\\\",\\\"name\\\":\\\"punctuation.brackets.round.wgsl\\\"},{\\\"comment\\\":\\\"semicolon\\\",\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.semi.wgsl\\\"},{\\\"comment\\\":\\\"square brackets\\\",\\\"match\\\":\\\"[\\\\\\\\[\\\\\\\\]]\\\",\\\"name\\\":\\\"punctuation.brackets.square.wgsl\\\"},{\\\"comment\\\":\\\"angle brackets\\\",\\\"match\\\":\\\"(?<![=-])[<>]\\\",\\\"name\\\":\\\"punctuation.brackets.angle.wgsl\\\"}]},\\\"types\\\":{\\\"comment\\\":\\\"types\\\",\\\"name\\\":\\\"storage.type.wgsl\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"scalar Types\\\",\\\"match\\\":\\\"\\\\\\\\b(bool|i32|u32|f32)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.wgsl\\\"},{\\\"comment\\\":\\\"reserved scalar Types\\\",\\\"match\\\":\\\"\\\\\\\\b(i64|u64|f64)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.wgsl\\\"},{\\\"comment\\\":\\\"vector type aliasses\\\",\\\"match\\\":\\\"\\\\\\\\b(vec2i|vec3i|vec4i|vec2u|vec3u|vec4u|vec2f|vec3f|vec4f|vec2h|vec3h|vec4h)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.wgsl\\\"},{\\\"comment\\\":\\\"matrix type aliasses\\\",\\\"match\\\":\\\"\\\\\\\\b(mat2x2f|mat2x3f|mat2x4f|mat3x2f|mat3x3f|mat3x4f|mat4x2f|mat4x3f|mat4x4f|mat2x2h|mat2x3h|mat2x4h|mat3x2h|mat3x3h|mat3x4h|mat4x2h|mat4x3h|mat4x4h)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.wgsl\\\"},{\\\"comment\\\":\\\"vector/matrix types\\\",\\\"match\\\":\\\"\\\\\\\\b(vec[2-4]|mat[2-4]x[2-4])\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.wgsl\\\"},{\\\"comment\\\":\\\"atomic types\\\",\\\"match\\\":\\\"\\\\\\\\b(atomic)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.wgsl\\\"},{\\\"comment\\\":\\\"array types\\\",\\\"match\\\":\\\"\\\\\\\\b(array)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.wgsl\\\"},{\\\"comment\\\":\\\"Custom type\\\",\\\"match\\\":\\\"\\\\\\\\b([A-Z][A-Za-z0-9]*)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.wgsl\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"variables\\\",\\\"match\\\":\\\"\\\\\\\\b(?<!(?<!\\\\\\\\.)\\\\\\\\.)(?:r#(?!(crate|[Ss]elf|super)))?[a-z0-9_]+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.wgsl\\\"}]}},\\\"scopeName\\\":\\\"source.wgsl\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Wikitext\\\",\\\"name\\\":\\\"wikitext\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#wikitext\\\"},{\\\"include\\\":\\\"text.html.basic\\\"}],\\\"repository\\\":{\\\"wikitext\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#signature\\\"},{\\\"include\\\":\\\"#redirect\\\"},{\\\"include\\\":\\\"#magic-words\\\"},{\\\"include\\\":\\\"#argument\\\"},{\\\"include\\\":\\\"#template\\\"},{\\\"include\\\":\\\"#convert\\\"},{\\\"include\\\":\\\"#list\\\"},{\\\"include\\\":\\\"#table\\\"},{\\\"include\\\":\\\"#font-style\\\"},{\\\"include\\\":\\\"#internal-link\\\"},{\\\"include\\\":\\\"#external-link\\\"},{\\\"include\\\":\\\"#heading\\\"},{\\\"include\\\":\\\"#break\\\"},{\\\"include\\\":\\\"#wikixml\\\"},{\\\"include\\\":\\\"#extension-comments\\\"}],\\\"repository\\\":{\\\"argument\\\":{\\\"begin\\\":\\\"({{{)\\\",\\\"end\\\":\\\"(}}})\\\",\\\"name\\\":\\\"variable.parameter.wikitext\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.wikitext\\\"}},\\\"match\\\":\\\"(?:^|\\\\\\\\G)([^#:\\\\\\\\|\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}\\\\\\\\|]*)(\\\\\\\\|)\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"break\\\":{\\\"match\\\":\\\"^-{4,}\\\",\\\"name\\\":\\\"markup.changed.wikitext\\\"},\\\"convert\\\":{\\\"begin\\\":\\\"(-\\\\\\\\{(?!\\\\\\\\{))([a-zA-Z](\\\\\\\\|))?\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.template.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.type.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.operator.wikitext\\\"}},\\\"end\\\":\\\"(\\\\\\\\}-)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.tag.language.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.unquoted.text.wikitext\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.terminator.rule.wikitext\\\"}},\\\"match\\\":\\\"(?:([a-zA-Z\\\\\\\\-]*)(:))?(.*?)(?:(;)|(?=\\\\\\\\}-))\\\"}]},\\\"extension-comments\\\":{\\\"begin\\\":\\\"(<%--)\\\\\\\\s*(\\\\\\\\[)([A-Z_]*)(\\\\\\\\])\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.extension.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.extension.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"storage.type.extension.wikitext\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.extension.wikitext\\\"}},\\\"end\\\":\\\"(\\\\\\\\[)([A-Z_]*)(\\\\\\\\])\\\\\\\\s*(--%>)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.extension.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"storage.type.extension.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.extension.wikitext\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.comment.extension.wikitext\\\"}},\\\"name\\\":\\\"comment.block.documentation.special.extension.wikitext\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.object.member.extension.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"meta.object-literal.key.extension.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.key-value.extension.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.extension.wikitext\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.other.extension.wikitext\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.extension.wikitext\\\"}},\\\"match\\\":\\\"(\\\\\\\\w*)\\\\\\\\s*(=)\\\\\\\\s*(#)(.*?)(#)\\\"}]},\\\"external-link\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.link.external.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.url.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.link.external.title.wikitext\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.link.external.wikitext\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)((?:(?:(?:http(?:s)?)|(?:ftp(?:s)?)):\\\\\\\\/\\\\\\\\/)[\\\\\\\\w.-]+(?:\\\\\\\\.[\\\\\\\\w\\\\\\\\.-]+)+[\\\\\\\\w\\\\\\\\-\\\\\\\\.~:\\\\\\\\/?#%@!\\\\\\\\$&'\\\\\\\\(\\\\\\\\)\\\\\\\\*\\\\\\\\+,;=.]+)\\\\\\\\s*?([^\\\\\\\\]]*)(\\\\\\\\])\\\",\\\"name\\\":\\\"meta.link.external.wikitext\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.link.external.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.bad-url.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"string.other.link.external.title.wikitext\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.link.external.wikitext\\\"}},\\\"match\\\":\\\"(\\\\\\\\[)([\\\\\\\\w.-]+(?:\\\\\\\\.[\\\\\\\\w\\\\\\\\.-]+)+[\\\\\\\\w\\\\\\\\-\\\\\\\\.~:\\\\\\\\/?#%@!\\\\\\\\$&'\\\\\\\\(\\\\\\\\)\\\\\\\\*\\\\\\\\+,;=.]+)\\\\\\\\s*?([^\\\\\\\\]]*)(\\\\\\\\])\\\",\\\"name\\\":\\\"invalid.illegal.bad-link.wikitext\\\"}]},\\\"font-style\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#bold\\\"},{\\\"include\\\":\\\"#italic\\\"}],\\\"repository\\\":{\\\"bold\\\":{\\\"begin\\\":\\\"(''')\\\",\\\"end\\\":\\\"(''')|$\\\",\\\"name\\\":\\\"markup.bold.wikitext\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#italic\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"italic\\\":{\\\"begin\\\":\\\"('')\\\",\\\"end\\\":\\\"((?=[^'])|(?=''))''((?=[^'])|(?=''))|$\\\",\\\"name\\\":\\\"markup.italic.wikitext\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#bold\\\"},{\\\"include\\\":\\\"$self\\\"}]}}},\\\"heading\\\":{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"string.quoted.other.heading.wikitext\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}},\\\"match\\\":\\\"^(={1,6})\\\\\\\\s*(.+?)\\\\\\\\s*(\\\\\\\\1)$\\\",\\\"name\\\":\\\"markup.heading.wikitext\\\"},\\\"internal-link\\\":{\\\"TODO\\\":\\\"SINGLE LINE\\\",\\\"begin\\\":\\\"(\\\\\\\\[\\\\\\\\[)(([^#:\\\\\\\\|\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}]*:)*)?([^\\\\\\\\|\\\\\\\\[\\\\\\\\]]*)?\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.link.internal.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.wikitext\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.other.attribute-name.wikitext\\\"}},\\\"end\\\":\\\"(\\\\\\\\]\\\\\\\\])\\\",\\\"name\\\":\\\"string.quoted.internal-link.wikitext\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.wikitext\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.other.attribute-name.localname.wikitext\\\"}},\\\"match\\\":\\\"(\\\\\\\\|)|(?:\\\\\\\\s*)(?:([-\\\\\\\\w.]+)((:)))?([-\\\\\\\\w.:]+)\\\\\\\\s*(=)\\\"}]},\\\"list\\\":{\\\"name\\\":\\\"markup.list.wikitext\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.list.begin.markdown.wikitext\\\"}},\\\"match\\\":\\\"^([#*;:]+)\\\"}]},\\\"magic-words\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#behavior-switches\\\"},{\\\"include\\\":\\\"#outdated-behavior-switches\\\"},{\\\"include\\\":\\\"#variables\\\"}],\\\"repository\\\":{\\\"behavior-switches\\\":{\\\"match\\\":\\\"(?i)(__)(NOTOC|FORCETOC|TOC|NOEDITSECTION|NEWSECTIONLINK|NOGALLERY|HIDDENCAT|EXPECTUNUSEDCATEGORY|NOCONTENTCONVERT|NOCC|NOTITLECONVERT|NOTC|INDEX|NOINDEX|STATICREDIRECT|NOGLOBAL|DISAMBIG)(__)\\\",\\\"name\\\":\\\"constant.language.behavior-switcher.wikitext\\\"},\\\"outdated-behavior-switches\\\":{\\\"match\\\":\\\"(?i)(__)(START|END)(__)\\\",\\\"name\\\":\\\"invalid.deprecated.behavior-switcher.wikitext\\\"},\\\"variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?i)(\\\\\\\\{\\\\\\\\{)(CURRENTYEAR|CURRENTMONTH|CURRENTMONTH1|CURRENTMONTHNAME|CURRENTMONTHNAMEGEN|CURRENTMONTHABBREV|CURRENTDAY|CURRENTDAY2|CURRENTDOW|CURRENTDAYNAME|CURRENTTIME|CURRENTHOUR|CURRENTWEEK|CURRENTTIMESTAMP|LOCALYEAR|LOCALMONTH|LOCALMONTH1|LOCALMONTHNAME|LOCALMONTHNAMEGEN|LOCALMONTHABBREV|LOCALDAY|LOCALDAY2|LOCALDOW|LOCALDAYNAME|LOCALTIME|LOCALHOUR|LOCALWEEK|LOCALTIMESTAMP)(\\\\\\\\}\\\\\\\\})\\\",\\\"name\\\":\\\"constant.language.variables.time.wikitext\\\"},{\\\"match\\\":\\\"(?i)(\\\\\\\\{\\\\\\\\{)(SITENAME|SERVER|SERVERNAME|DIRMARK|DIRECTIONMARK|SCRIPTPATH|STYLEPATH|CURRENTVERSION|CONTENTLANGUAGE|CONTENTLANG|PAGEID|PAGELANGUAGE|CASCADINGSOURCES|REVISIONID|REVISIONDAY|REVISIONDAY2|REVISIONMONTH|REVISIONMONTH1|REVISIONYEAR|REVISIONTIMESTAMP|REVISIONUSER|REVISIONSIZE)(\\\\\\\\}\\\\\\\\})\\\",\\\"name\\\":\\\"constant.language.variables.metadata.wikitext\\\"},{\\\"match\\\":\\\"ISBN\\\\\\\\s+((9[\\\\\\\\-\\\\\\\\s]?7[\\\\\\\\-\\\\\\\\s]?[89][\\\\\\\\-\\\\\\\\s]?)?([0-9][\\\\\\\\-\\\\\\\\s]?){10})\\\",\\\"name\\\":\\\"constant.language.variables.isbn.wikitext\\\"},{\\\"match\\\":\\\"RFC\\\\\\\\s+[0-9]+\\\",\\\"name\\\":\\\"constant.language.variables.rfc.wikitext\\\"},{\\\"match\\\":\\\"PMID\\\\\\\\s+[0-9]+\\\",\\\"name\\\":\\\"constant.language.variables.pmid.wikitext\\\"}]}}},\\\"redirect\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.redirect.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.tag.link.internal.begin.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.wikitext\\\"},\\\"4\\\":null,\\\"5\\\":{\\\"name\\\":\\\"entity.other.attribute-name.wikitext\\\"},\\\"6\\\":{\\\"name\\\":\\\"invalid.deprecated.ineffective.wikitext\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.definition.tag.link.internal.end.wikitext\\\"}},\\\"match\\\":\\\"(?i)(^\\\\\\\\s*?#REDIRECT)\\\\\\\\s*(\\\\\\\\[\\\\\\\\[)(([^#:\\\\\\\\|\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}]*?:)*)?([^\\\\\\\\|\\\\\\\\[\\\\\\\\]]*)?(\\\\\\\\|[^\\\\\\\\[\\\\\\\\]]*?)?(\\\\\\\\]\\\\\\\\])\\\"}]},\\\"signature\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"~{3,5}\\\",\\\"name\\\":\\\"keyword.other.signature.wikitext\\\"}]},\\\"table\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"^\\\\\\\\s*(\\\\\\\\{\\\\\\\\|)(.*)$\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.table.wikitext\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]}},\\\"end\\\":\\\"^\\\\\\\\s*(\\\\\\\\|\\\\\\\\})\\\",\\\"name\\\":\\\"meta.tag.block.table.wikitext\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"match\\\":\\\"\\\\\\\\|.*\\\",\\\"name\\\":\\\"invalid.illegal.bad-table-context.wikitext\\\"},{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]}},\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\|-)\\\\\\\\s*(.*)$\\\",\\\"name\\\":\\\"meta.tag.block.table-row.wikitext\\\"},{\\\"begin\\\":\\\"^\\\\\\\\s*(!)(([^\\\\\\\\[]*?)(\\\\\\\\|))?(.*?)(?=(!!)|$)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":null,\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.wikitext\\\"},\\\"5\\\":{\\\"name\\\":\\\"markup.bold.style.wikitext\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.tag.block.th.heading\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.wikitext\\\"},\\\"5\\\":{\\\"name\\\":\\\"markup.bold.style.wikitext\\\"}},\\\"match\\\":\\\"(!!)(([^\\\\\\\\[]*?)(\\\\\\\\|))?(.*?)(?=(!!)|$)\\\",\\\"name\\\":\\\"meta.tag.block.th.inline.wikitext\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.caption.wikitext\\\"}},\\\"end\\\":\\\"$\\\",\\\"match\\\":\\\"^\\\\\\\\s*(\\\\\\\\|\\\\\\\\+)(.*?)$\\\",\\\"name\\\":\\\"meta.tag.block.caption.wikitext\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"^\\\\\\\\s*(\\\\\\\\|)(([^\\\\\\\\[]*?)((?<!\\\\\\\\|)\\\\\\\\|(?!\\\\\\\\|)))?\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"include\\\":\\\"text.html.basic#attribute\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.wikitext\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"match\\\":\\\"\\\\\\\\|\\\\\\\\|\\\",\\\"name\\\":\\\"keyword.operator.wikitext\\\"}]}]}]},\\\"template\\\":{\\\"begin\\\":\\\"(\\\\\\\\{\\\\\\\\{)\\\\\\\\s*(([^#:\\\\\\\\|\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}]*(:))*)\\\\\\\\s*((#[^#:\\\\\\\\|\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}]+(:))*)([^#:\\\\\\\\|\\\\\\\\[\\\\\\\\]\\\\\\\\{\\\\\\\\}]*)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.template.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.local-name.wikitext\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.wikitext\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.wikitext\\\"},\\\"7\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.wikitext\\\"},\\\"8\\\":{\\\"name\\\":\\\"entity.name.tag.local-name.wikitext\\\"}},\\\"end\\\":\\\"(\\\\\\\\}\\\\\\\\})\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"},{\\\"match\\\":\\\"(\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.wikitext\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.namespace.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.attribute-name.local-name.wikitext\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.operator.equal.wikitext\\\"}},\\\"match\\\":\\\"(?<=\\\\\\\\|)\\\\\\\\s*(?:([-\\\\\\\\w.]+)(:))?([-\\\\\\\\w\\\\\\\\s\\\\\\\\.:]+)\\\\\\\\s*(=)\\\"}]},\\\"wikixml\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#wiki-self-closed-tags\\\"},{\\\"include\\\":\\\"#normal-wiki-tags\\\"},{\\\"include\\\":\\\"#nowiki\\\"},{\\\"include\\\":\\\"#ref\\\"},{\\\"include\\\":\\\"#jsonin\\\"},{\\\"include\\\":\\\"#math\\\"},{\\\"include\\\":\\\"#syntax-highlight\\\"}],\\\"repository\\\":{\\\"jsonin\\\":{\\\"begin\\\":\\\"(?i)(<)(graph|templatedata)(\\\\\\\\s+[^>]+)?\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.json\\\",\\\"end\\\":\\\"(?i)(</)(\\\\\\\\2)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"source.json\\\"}]},\\\"math\\\":{\\\"begin\\\":\\\"(?i)(<)(math|chem|ce)(\\\\\\\\s+[^>]+)?\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.latex\\\",\\\"end\\\":\\\"(?i)(</)(\\\\\\\\2)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown.math#math\\\"}]},\\\"normal-wiki-tags\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"match\\\":\\\"(?i)(</?)(includeonly|onlyinclude|noinclude)(\\\\\\\\s+[^>]+)?\\\\\\\\s*(>)\\\",\\\"name\\\":\\\"meta.tag.metedata.normal.wikitext\\\"},\\\"nowiki\\\":{\\\"begin\\\":\\\"(?i)(<)(nowiki)(\\\\\\\\s+[^>]+)?\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.nowiki.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"contentName\\\":\\\"meta.embedded.block.plaintext\\\",\\\"end\\\":\\\"(?i)(</)(nowiki)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.nowiki.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}}},\\\"ref\\\":{\\\"begin\\\":\\\"(?i)(<)(ref)(\\\\\\\\s+[^>]+)?\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.ref.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"contentName\\\":\\\"meta.block.ref.wikitext\\\",\\\"end\\\":\\\"(?i)(</)(ref)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.ref.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"syntax-highlight\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#hl-css\\\"},{\\\"include\\\":\\\"#hl-html\\\"},{\\\"include\\\":\\\"#hl-ini\\\"},{\\\"include\\\":\\\"#hl-java\\\"},{\\\"include\\\":\\\"#hl-lua\\\"},{\\\"include\\\":\\\"#hl-makefile\\\"},{\\\"include\\\":\\\"#hl-perl\\\"},{\\\"include\\\":\\\"#hl-r\\\"},{\\\"include\\\":\\\"#hl-ruby\\\"},{\\\"include\\\":\\\"#hl-php\\\"},{\\\"include\\\":\\\"#hl-sql\\\"},{\\\"include\\\":\\\"#hl-vb-net\\\"},{\\\"include\\\":\\\"#hl-xml\\\"},{\\\"include\\\":\\\"#hl-xslt\\\"},{\\\"include\\\":\\\"#hl-yaml\\\"},{\\\"include\\\":\\\"#hl-bat\\\"},{\\\"include\\\":\\\"#hl-clojure\\\"},{\\\"include\\\":\\\"#hl-coffee\\\"},{\\\"include\\\":\\\"#hl-c\\\"},{\\\"include\\\":\\\"#hl-cpp\\\"},{\\\"include\\\":\\\"#hl-diff\\\"},{\\\"include\\\":\\\"#hl-dockerfile\\\"},{\\\"include\\\":\\\"#hl-go\\\"},{\\\"include\\\":\\\"#hl-groovy\\\"},{\\\"include\\\":\\\"#hl-pug\\\"},{\\\"include\\\":\\\"#hl-js\\\"},{\\\"include\\\":\\\"#hl-json\\\"},{\\\"include\\\":\\\"#hl-less\\\"},{\\\"include\\\":\\\"#hl-objc\\\"},{\\\"include\\\":\\\"#hl-swift\\\"},{\\\"include\\\":\\\"#hl-scss\\\"},{\\\"include\\\":\\\"#hl-perl6\\\"},{\\\"include\\\":\\\"#hl-powershell\\\"},{\\\"include\\\":\\\"#hl-python\\\"},{\\\"include\\\":\\\"#hl-julia\\\"},{\\\"include\\\":\\\"#hl-rust\\\"},{\\\"include\\\":\\\"#hl-scala\\\"},{\\\"include\\\":\\\"#hl-shell\\\"},{\\\"include\\\":\\\"#hl-ts\\\"},{\\\"include\\\":\\\"#hl-csharp\\\"},{\\\"include\\\":\\\"#hl-fsharp\\\"},{\\\"include\\\":\\\"#hl-dart\\\"},{\\\"include\\\":\\\"#hl-handlebars\\\"},{\\\"include\\\":\\\"#hl-markdown\\\"},{\\\"include\\\":\\\"#hl-erlang\\\"},{\\\"include\\\":\\\"#hl-elixir\\\"},{\\\"include\\\":\\\"#hl-latex\\\"},{\\\"include\\\":\\\"#hl-bibtex\\\"}],\\\"repository\\\":{\\\"hl-bat\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(['\\\\\\\"]?)(?:batch|bat|dosbatch|winbatch)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.bat\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.batchfile\\\"}]}]},\\\"hl-bibtex\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:bibtex|bib)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.bibtex\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.bibtex\\\"}]}]},\\\"hl-c\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)c\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.c\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.c\\\"}]}]},\\\"hl-clojure\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:clojure|clj)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.clojure\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.clojure\\\"}]}]},\\\"hl-coffee\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:coffeescript|coffee-script|coffee)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.coffee\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.coffee\\\"}]}]},\\\"hl-cpp\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:cpp|c\\\\\\\\+\\\\\\\\+)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.cpp\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cpp\\\"}]}]},\\\"hl-csharp\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:csharp|c#|cs)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.csharp\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.cs\\\"}]}]},\\\"hl-css\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)css\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.css\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css\\\"}]}]},\\\"hl-dart\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)dart\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.dart\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.dart\\\"}]}]},\\\"hl-diff\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:diff|udiff)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.diff\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.diff\\\"}]}]},\\\"hl-dockerfile\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:docker|dockerfile)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.dockerfile\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.dockerfile\\\"}]}]},\\\"hl-elixir\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:elixir|ex|exs)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.elixir\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.elixir\\\"}]}]},\\\"hl-erlang\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)erlang\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.erlang\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.erlang\\\"}]}]},\\\"hl-fsharp\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:fsharp|f#)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.fsharp\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.fsharp\\\"}]}]},\\\"hl-go\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:go|golang)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.go\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.go\\\"}]}]},\\\"hl-groovy\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)groovy\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.groovy\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.groovy\\\"}]}]},\\\"hl-handlebars\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)handlebars\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.handlebars\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.handlebars\\\"}]}]},\\\"hl-html\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)html\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.html\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"}]}]},\\\"hl-ini\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:ini|cfg|dosini)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.ini\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ini\\\"}]}]},\\\"hl-java\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)java\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.java\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.java\\\"}]}]},\\\"hl-js\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:javascript|js)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.js\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"hl-json\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"json\\\\\\\"|'json'|\\\\\\\"json-object\\\\\\\"|'json-object'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.json\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.json.comments\\\"}]}]},\\\"hl-julia\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"julia\\\\\\\"|'julia'|\\\\\\\"jl\\\\\\\"|'jl'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.julia\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.julia\\\"}]}]},\\\"hl-latex\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:tex|latex)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.latex\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.tex.latex\\\"}]}]},\\\"hl-less\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"less\\\\\\\"|'less'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.less\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.less\\\"}]}]},\\\"hl-lua\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)lua\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.lua\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.lua\\\"}]}]},\\\"hl-makefile\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:make|makefile|mf|bsdmake)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.makefile\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.makefile\\\"}]}]},\\\"hl-markdown\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:markdown|md)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.markdown\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.markdown\\\"}]}]},\\\"hl-objc\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"objective-c\\\\\\\"|'objective-c'|\\\\\\\"objectivec\\\\\\\"|'objectivec'|\\\\\\\"obj-c\\\\\\\"|'obj-c'|\\\\\\\"objc\\\\\\\"|'objc'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.objc\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.objc\\\"}]}]},\\\"hl-perl\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:perl|ple)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.perl\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.perl\\\"}]}]},\\\"hl-perl6\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"perl6\\\\\\\"|'perl6'|\\\\\\\"pl6\\\\\\\"|'pl6'|\\\\\\\"raku\\\\\\\"|'raku'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.perl6\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.perl.6\\\"}]}]},\\\"hl-php\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:php|php3|php4|php5)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.php\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.php\\\"}]}]},\\\"hl-powershell\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"powershell\\\\\\\"|'powershell'|\\\\\\\"pwsh\\\\\\\"|'pwsh'|\\\\\\\"posh\\\\\\\"|'posh'|\\\\\\\"ps1\\\\\\\"|'ps1'|\\\\\\\"psm1\\\\\\\"|'psm1'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.powershell\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.powershell\\\"}]}]},\\\"hl-pug\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:pug|jade)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.pug\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.pug\\\"}]}]},\\\"hl-python\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"python\\\\\\\"|'python'|\\\\\\\"py\\\\\\\"|'py'|\\\\\\\"sage\\\\\\\"|'sage'|\\\\\\\"python3\\\\\\\"|'python3'|\\\\\\\"py3\\\\\\\"|'py3'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.python\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.python\\\"}]}]},\\\"hl-r\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:splus|s|r)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.r\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.r\\\"}]}]},\\\"hl-ruby\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:ruby|rb|duby)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.ruby\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ruby\\\"}]}]},\\\"hl-rust\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"rust\\\\\\\"|'rust'|\\\\\\\"rs\\\\\\\"|'rs'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":null,\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.rust\\\"}]}]},\\\"hl-scala\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"scala\\\\\\\"|'scala'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.scala\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.scala\\\"}]}]},\\\"hl-scss\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"scss\\\\\\\"|'scss'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.scss\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.css.scss\\\"}]}]},\\\"hl-shell\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"bash\\\\\\\"|'bash'|\\\\\\\"sh\\\\\\\"|'sh'|\\\\\\\"ksh\\\\\\\"|'ksh'|\\\\\\\"zsh\\\\\\\"|'zsh'|\\\\\\\"shell\\\\\\\"|'shell'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.shell\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.shell\\\"}]}]},\\\"hl-sql\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)sql\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.sql\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.sql\\\"}]}]},\\\"hl-swift\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"swift\\\\\\\"|'swift'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.swift\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.swift\\\"}]}]},\\\"hl-ts\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:\\\\\\\"typescript\\\\\\\"|'typescript'|\\\\\\\"ts\\\\\\\"|'ts'))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.ts\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.ts\\\"}]}]},\\\"hl-vb-net\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)(?:vb\\\\\\\\.net|vbnet|lobas|oobas|sobas)\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.vb-net\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.asp.vb.net\\\"}]}]},\\\"hl-xml\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)xml\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.xml\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml\\\"}]}]},\\\"hl-xslt\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)xslt\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.xslt\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.xml.xsl\\\"}]}]},\\\"hl-yaml\\\":{\\\"begin\\\":\\\"(?i)(<)(syntaxhighlight)((?:\\\\\\\\s+[^>]+)?(?:\\\\\\\\s+lang=(?:(['\\\\\\\"]?)yaml\\\\\\\\4))(?:\\\\\\\\s+[^>]+)?)\\\\\\\\s*(>)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.start.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"end\\\":\\\"(?i)(</)(syntaxhighlight)\\\\\\\\s*(>)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"meta.tag.metadata.end.wikitext\\\"},\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"patterns\\\":[{\\\"begin\\\":\\\"(^|\\\\\\\\G)\\\",\\\"contentName\\\":\\\"meta.embedded.block.yaml\\\",\\\"end\\\":\\\"(?i)(?=</syntaxhighlight\\\\\\\\s*>)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.yaml\\\"}]}]}}},\\\"wiki-self-closed-tags\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.begin.wikitext\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.wikitext\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic#attribute\\\"},{\\\"include\\\":\\\"$self\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"punctuation.definition.tag.end.wikitext\\\"}},\\\"match\\\":\\\"(?i)(<)(templatestyles|ref|nowiki|onlyinclude|includeonly)(\\\\\\\\s+[^>]+)?\\\\\\\\s*(/>)\\\",\\\"name\\\":\\\"meta.tag.metedata.void.wikitext\\\"}}}}}},\\\"scopeName\\\":\\\"source.wikitext\\\",\\\"embeddedLangs\\\":[],\\\"aliases\\\":[\\\"mediawiki\\\",\\\"wiki\\\"],\\\"embeddedLangsLazy\\\":[\\\"html\\\",\\\"css\\\",\\\"ini\\\",\\\"java\\\",\\\"lua\\\",\\\"make\\\",\\\"perl\\\",\\\"r\\\",\\\"ruby\\\",\\\"php\\\",\\\"sql\\\",\\\"vb\\\",\\\"xml\\\",\\\"xsl\\\",\\\"yaml\\\",\\\"bat\\\",\\\"clojure\\\",\\\"coffee\\\",\\\"c\\\",\\\"cpp\\\",\\\"diff\\\",\\\"docker\\\",\\\"go\\\",\\\"groovy\\\",\\\"pug\\\",\\\"javascript\\\",\\\"jsonc\\\",\\\"less\\\",\\\"objective-c\\\",\\\"swift\\\",\\\"scss\\\",\\\"raku\\\",\\\"powershell\\\",\\\"python\\\",\\\"julia\\\",\\\"rust\\\",\\\"scala\\\",\\\"shellscript\\\",\\\"typescript\\\",\\\"csharp\\\",\\\"fsharp\\\",\\\"dart\\\",\\\"handlebars\\\",\\\"markdown\\\",\\\"erlang\\\",\\\"elixir\\\",\\\"latex\\\",\\\"bibtex\\\",\\\"json\\\"]}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Wolfram\\\",\\\"fileTypes\\\":[\\\"wl\\\",\\\"m\\\",\\\"wls\\\",\\\"wlt\\\",\\\"mt\\\"],\\\"name\\\":\\\"wolfram\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#main\\\"}],\\\"repository\\\":{\\\"association-group\\\":{\\\"begin\\\":\\\"<\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.associations.begin.wolfram\\\"}},\\\"end\\\":\\\"\\\\\\\\|>\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.associations.end.wolfram\\\"}},\\\"name\\\":\\\"meta.associations.wolfram\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]},\\\"brace-group\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.begin.wolfram\\\"}},\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.braces.end.wolfram\\\"}},\\\"name\\\":\\\"meta.braces.wolfram\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]},\\\"bracket-group\\\":{\\\"begin\\\":\\\"::\\\\\\\\[|\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.begin.wolfram\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.brackets.end.wolfram\\\"}},\\\"name\\\":\\\"meta.brackets.wolfram\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.wolfram\\\"}},\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.wolfram\\\"}},\\\"name\\\":\\\"comment.block\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},{\\\"match\\\":\\\"\\\\\\\\*\\\\\\\\)\\\",\\\"name\\\":\\\"invalid.illegal.stray-comment-end.wolfram\\\"}]},\\\"escaped_character_symbols\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"System`\\\\\\\\\\\\\\\\\\\\\\\\[(?:F(?:ormalA|ormalAlpha|ormalB|ormalBeta|ormalC|ormalCapitalA|ormalCapitalAlpha|ormalCapitalB|ormalCapitalBeta|ormalCapitalC|ormalCapitalChi|ormalCapitalD|ormalCapitalDelta|ormalCapitalDigamma|ormalCapitalE|ormalCapitalEpsilon|ormalCapitalEta|ormalCapitalF|ormalCapitalG|ormalCapitalGamma|ormalCapitalH|ormalCapitalI|ormalCapitalIota|ormalCapitalJ|ormalCapitalK|ormalCapitalKappa|ormalCapitalKoppa|ormalCapitalL|ormalCapitalLambda|ormalCapitalM|ormalCapitalMu|ormalCapitalN|ormalCapitalNu|ormalCapitalO|ormalCapitalOmega|ormalCapitalOmicron|ormalCapitalP|ormalCapitalPhi|ormalCapitalPi|ormalCapitalPsi|ormalCapitalQ|ormalCapitalR|ormalCapitalRho|ormalCapitalS|ormalCapitalSampi|ormalCapitalSigma|ormalCapitalStigma|ormalCapitalT|ormalCapitalTau|ormalCapitalTheta|ormalCapitalU|ormalCapitalUpsilon|ormalCapitalV|ormalCapitalW|ormalCapitalX|ormalCapitalXi|ormalCapitalY|ormalCapitalZ|ormalCapitalZeta|ormalChi|ormalCurlyCapitalUpsilon|ormalCurlyEpsilon|ormalCurlyKappa|ormalCurlyPhi|ormalCurlyPi|ormalCurlyRho|ormalCurlyTheta|ormalD|ormalDelta|ormalDigamma|ormalE|ormalEpsilon|ormalEta|ormalF|ormalFinalSigma|ormalG|ormalGamma|ormalH|ormalI|ormalIota|ormalJ|ormalK|ormalKappa|ormalKoppa|ormalL|ormalLambda|ormalM|ormalMu|ormalN|ormalNu|ormalO|ormalOmega|ormalOmicron|ormalP|ormalPhi|ormalPi|ormalPsi|ormalQ|ormalR|ormalRho|ormalS|ormalSampi|ormalScriptA|ormalScriptB|ormalScriptC|ormalScriptCapitalA|ormalScriptCapitalB|ormalScriptCapitalC|ormalScriptCapitalD|ormalScriptCapitalE|ormalScriptCapitalF|ormalScriptCapitalG|ormalScriptCapitalH|ormalScriptCapitalI|ormalScriptCapitalJ|ormalScriptCapitalK|ormalScriptCapitalL|ormalScriptCapitalM|ormalScriptCapitalN|ormalScriptCapitalO|ormalScriptCapitalP|ormalScriptCapitalQ|ormalScriptCapitalR|ormalScriptCapitalS|ormalScriptCapitalT|ormalScriptCapitalU|ormalScriptCapitalV|ormalScriptCapitalW|ormalScriptCapitalX|ormalScriptCapitalY|ormalScriptCapitalZ|ormalScriptD|ormalScriptE|ormalScriptF|ormalScriptG|ormalScriptH|ormalScriptI|ormalScriptJ|ormalScriptK|ormalScriptL|ormalScriptM|ormalScriptN|ormalScriptO|ormalScriptP|ormalScriptQ|ormalScriptR|ormalScriptS|ormalScriptT|ormalScriptU|ormalScriptV|ormalScriptW|ormalScriptX|ormalScriptY|ormalScriptZ|ormalSigma|ormalStigma|ormalT|ormalTau|ormalTheta|ormalU|ormalUpsilon|ormalV|ormalW|ormalX|ormalXi|ormalY|ormalZ|ormalZeta))\\\\\\\\](?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`\\\\\\\\\\\\\\\\\\\\\\\\[(?:S(?:ystemsModelDelay))\\\\\\\\](?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:F(?:ormalA|ormalAlpha|ormalB|ormalBeta|ormalC|ormalCapitalA|ormalCapitalAlpha|ormalCapitalB|ormalCapitalBeta|ormalCapitalC|ormalCapitalChi|ormalCapitalD|ormalCapitalDelta|ormalCapitalDigamma|ormalCapitalE|ormalCapitalEpsilon|ormalCapitalEta|ormalCapitalF|ormalCapitalG|ormalCapitalGamma|ormalCapitalH|ormalCapitalI|ormalCapitalIota|ormalCapitalJ|ormalCapitalK|ormalCapitalKappa|ormalCapitalKoppa|ormalCapitalL|ormalCapitalLambda|ormalCapitalM|ormalCapitalMu|ormalCapitalN|ormalCapitalNu|ormalCapitalO|ormalCapitalOmega|ormalCapitalOmicron|ormalCapitalP|ormalCapitalPhi|ormalCapitalPi|ormalCapitalPsi|ormalCapitalQ|ormalCapitalR|ormalCapitalRho|ormalCapitalS|ormalCapitalSampi|ormalCapitalSigma|ormalCapitalStigma|ormalCapitalT|ormalCapitalTau|ormalCapitalTheta|ormalCapitalU|ormalCapitalUpsilon|ormalCapitalV|ormalCapitalW|ormalCapitalX|ormalCapitalXi|ormalCapitalY|ormalCapitalZ|ormalCapitalZeta|ormalChi|ormalCurlyCapitalUpsilon|ormalCurlyEpsilon|ormalCurlyKappa|ormalCurlyPhi|ormalCurlyPi|ormalCurlyRho|ormalCurlyTheta|ormalD|ormalDelta|ormalDigamma|ormalE|ormalEpsilon|ormalEta|ormalF|ormalFinalSigma|ormalG|ormalGamma|ormalH|ormalI|ormalIota|ormalJ|ormalK|ormalKappa|ormalKoppa|ormalL|ormalLambda|ormalM|ormalMu|ormalN|ormalNu|ormalO|ormalOmega|ormalOmicron|ormalP|ormalPhi|ormalPi|ormalPsi|ormalQ|ormalR|ormalRho|ormalS|ormalSampi|ormalScriptA|ormalScriptB|ormalScriptC|ormalScriptCapitalA|ormalScriptCapitalB|ormalScriptCapitalC|ormalScriptCapitalD|ormalScriptCapitalE|ormalScriptCapitalF|ormalScriptCapitalG|ormalScriptCapitalH|ormalScriptCapitalI|ormalScriptCapitalJ|ormalScriptCapitalK|ormalScriptCapitalL|ormalScriptCapitalM|ormalScriptCapitalN|ormalScriptCapitalO|ormalScriptCapitalP|ormalScriptCapitalQ|ormalScriptCapitalR|ormalScriptCapitalS|ormalScriptCapitalT|ormalScriptCapitalU|ormalScriptCapitalV|ormalScriptCapitalW|ormalScriptCapitalX|ormalScriptCapitalY|ormalScriptCapitalZ|ormalScriptD|ormalScriptE|ormalScriptF|ormalScriptG|ormalScriptH|ormalScriptI|ormalScriptJ|ormalScriptK|ormalScriptL|ormalScriptM|ormalScriptN|ormalScriptO|ormalScriptP|ormalScriptQ|ormalScriptR|ormalScriptS|ormalScriptT|ormalScriptU|ormalScriptV|ormalScriptW|ormalScriptX|ormalScriptY|ormalScriptZ|ormalSigma|ormalStigma|ormalT|ormalTau|ormalTheta|ormalU|ormalUpsilon|ormalV|ormalW|ormalX|ormalXi|ormalY|ormalZ|ormalZeta))\\\\\\\\](?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:S(?:ystemsModelDelay))\\\\\\\\](?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:D(?:egree))\\\\\\\\](?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:E(?:xponentialE))\\\\\\\\](?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:I(?:maginaryI|maginaryJ|nfinity))\\\\\\\\](?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:P(?:i))\\\\\\\\](?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"}]},\\\"escaped_characters\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[!%&()*+/@^_` ]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:A(?:kuz|ndy))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:C(?:ontinuedFractionK|url))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:D(?:ivergence|ivisionSlash))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:E(?:xpectationE))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:F(?:reeformPrompt))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:G(?:radient))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:L(?:aplacian))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:M(?:inus|oon))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:N(?:umberComma))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:P(?:ageBreakAbove|ageBreakBelow|robabilityPr))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:S(?:pooky|tepperDown|tepperLeft|tepperRight|tepperUp|un))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:U(?:nknownGlyph))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:V(?:illa))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:W(?:olframAlphaPrompt))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape.undocumented\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:C(?:OMPATIBILITYKanjiSpace|OMPATIBILITYNoBreak))\\\\\\\\]\\\",\\\"name\\\":\\\"invalid.illegal.unsupported\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:I(?:nlinePart))\\\\\\\\]\\\",\\\"name\\\":\\\"invalid.illegal.unsupported\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:A(?:Acute|Bar|Cup|DoubleDot|E|Grave|Hat|Ring|Tilde|leph|liasDelimiter|liasIndicator|lignmentMarker|lpha|ltKey|nd|ngle|ngstrom|pplication|quariusSign|riesSign|scendingEllipsis|utoLeftMatch|utoOperand|utoPlaceholder|utoRightMatch|utoSpace))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:B(?:ackslash|eamedEighthNote|eamedSixteenthNote|ecause|et|eta|lackBishop|lackKing|lackKnight|lackPawn|lackQueen|lackRook|reve|ullet))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:C(?:Acute|Cedilla|Hacek|ancerSign|ap|apitalAAcute|apitalABar|apitalACup|apitalADoubleDot|apitalAE|apitalAGrave|apitalAHat|apitalARing|apitalATilde|apitalAlpha|apitalBeta|apitalCAcute|apitalCCedilla|apitalCHacek|apitalChi|apitalDHacek|apitalDelta|apitalDifferentialD|apitalDigamma|apitalEAcute|apitalEBar|apitalECup|apitalEDoubleDot|apitalEGrave|apitalEHacek|apitalEHat|apitalEpsilon|apitalEta|apitalEth|apitalGamma|apitalIAcute|apitalICup|apitalIDoubleDot|apitalIGrave|apitalIHat|apitalIota|apitalKappa|apitalKoppa|apitalLSlash|apitalLambda|apitalMu|apitalNHacek|apitalNTilde|apitalNu|apitalOAcute|apitalODoubleAcute|apitalODoubleDot|apitalOE|apitalOGrave|apitalOHat|apitalOSlash|apitalOTilde|apitalOmega|apitalOmicron|apitalPhi|apitalPi|apitalPsi|apitalRHacek|apitalRho|apitalSHacek|apitalSampi|apitalSigma|apitalStigma|apitalTHacek|apitalTau|apitalTheta|apitalThorn|apitalUAcute|apitalUDoubleAcute|apitalUDoubleDot|apitalUGrave|apitalUHat|apitalURing|apitalUpsilon|apitalXi|apitalYAcute|apitalZHacek|apitalZeta|apricornSign|edilla|ent|enterDot|enterEllipsis|heckedBox|heckmark|heckmarkedBox|hi|ircleDot|ircleMinus|irclePlus|ircleTimes|lockwiseContourIntegral|loseCurlyDoubleQuote|loseCurlyQuote|loverLeaf|lubSuit|olon|ommandKey|onditioned|ongruent|onjugate|onjugateTranspose|onstantC|ontinuation|ontourIntegral|ontrolKey|oproduct|opyright|ounterClockwiseContourIntegral|ross|ubeRoot|up|upCap|urlyCapitalUpsilon|urlyEpsilon|urlyKappa|urlyPhi|urlyPi|urlyRho|urlyTheta|urrency))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:D(?:Hacek|agger|alet|ash|egree|el|eleteKey|elta|escendingEllipsis|iameter|iamond|iamondSuit|ifferenceDelta|ifferentialD|igamma|irectedEdge|iscreteRatio|iscreteShift|iscretionaryHyphen|iscretionaryLineSeparator|iscretionaryPageBreakAbove|iscretionaryPageBreakBelow|iscretionaryParagraphSeparator|istributed|ivide|ivides|otEqual|otlessI|otlessJ|ottedSquare|oubleContourIntegral|oubleDagger|oubleDot|oubleDownArrow|oubleLeftArrow|oubleLeftRightArrow|oubleLeftTee|oubleLongLeftArrow|oubleLongLeftRightArrow|oubleLongRightArrow|oublePrime|oubleRightArrow|oubleRightTee|oubleStruckA|oubleStruckB|oubleStruckC|oubleStruckCapitalA|oubleStruckCapitalB|oubleStruckCapitalC|oubleStruckCapitalD|oubleStruckCapitalE|oubleStruckCapitalF|oubleStruckCapitalG|oubleStruckCapitalH|oubleStruckCapitalI|oubleStruckCapitalJ|oubleStruckCapitalK|oubleStruckCapitalL|oubleStruckCapitalM|oubleStruckCapitalN|oubleStruckCapitalO|oubleStruckCapitalP|oubleStruckCapitalQ|oubleStruckCapitalR|oubleStruckCapitalS|oubleStruckCapitalT|oubleStruckCapitalU|oubleStruckCapitalV|oubleStruckCapitalW|oubleStruckCapitalX|oubleStruckCapitalY|oubleStruckCapitalZ|oubleStruckD|oubleStruckE|oubleStruckEight|oubleStruckF|oubleStruckFive|oubleStruckFour|oubleStruckG|oubleStruckH|oubleStruckI|oubleStruckJ|oubleStruckK|oubleStruckL|oubleStruckM|oubleStruckN|oubleStruckNine|oubleStruckO|oubleStruckOne|oubleStruckP|oubleStruckQ|oubleStruckR|oubleStruckS|oubleStruckSeven|oubleStruckSix|oubleStruckT|oubleStruckThree|oubleStruckTwo|oubleStruckU|oubleStruckV|oubleStruckW|oubleStruckX|oubleStruckY|oubleStruckZ|oubleStruckZero|oubleUpArrow|oubleUpDownArrow|oubleVerticalBar|oubledGamma|oubledPi|ownArrow|ownArrowBar|ownArrowUpArrow|ownBreve|ownExclamation|ownLeftRightVector|ownLeftTeeVector|ownLeftVector|ownLeftVectorBar|ownPointer|ownQuestion|ownRightTeeVector|ownRightVector|ownRightVectorBar|ownTee|ownTeeArrow))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:E(?:Acute|Bar|Cup|DoubleDot|Grave|Hacek|Hat|arth|ighthNote|lement|llipsis|mptyCircle|mptyDiamond|mptyDownTriangle|mptyRectangle|mptySet|mptySmallCircle|mptySmallSquare|mptySquare|mptyUpTriangle|mptyVerySmallSquare|nterKey|ntityEnd|ntityStart|psilon|qual|qualTilde|quilibrium|quivalent|rrorIndicator|scapeKey|ta|th|uro|xists|xponentialE))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:F(?:iLigature|illedCircle|illedDiamond|illedDownTriangle|illedLeftTriangle|illedRectangle|illedRightTriangle|illedSmallCircle|illedSmallSquare|illedSquare|illedUpTriangle|illedVerySmallSquare|inalSigma|irstPage|ivePointedStar|lLigature|lat|lorin|orAll|ormalA|ormalAlpha|ormalB|ormalBeta|ormalC|ormalCapitalA|ormalCapitalAlpha|ormalCapitalB|ormalCapitalBeta|ormalCapitalC|ormalCapitalChi|ormalCapitalD|ormalCapitalDelta|ormalCapitalDigamma|ormalCapitalE|ormalCapitalEpsilon|ormalCapitalEta|ormalCapitalF|ormalCapitalG|ormalCapitalGamma|ormalCapitalH|ormalCapitalI|ormalCapitalIota|ormalCapitalJ|ormalCapitalK|ormalCapitalKappa|ormalCapitalKoppa|ormalCapitalL|ormalCapitalLambda|ormalCapitalM|ormalCapitalMu|ormalCapitalN|ormalCapitalNu|ormalCapitalO|ormalCapitalOmega|ormalCapitalOmicron|ormalCapitalP|ormalCapitalPhi|ormalCapitalPi|ormalCapitalPsi|ormalCapitalQ|ormalCapitalR|ormalCapitalRho|ormalCapitalS|ormalCapitalSampi|ormalCapitalSigma|ormalCapitalStigma|ormalCapitalT|ormalCapitalTau|ormalCapitalTheta|ormalCapitalU|ormalCapitalUpsilon|ormalCapitalV|ormalCapitalW|ormalCapitalX|ormalCapitalXi|ormalCapitalY|ormalCapitalZ|ormalCapitalZeta|ormalChi|ormalCurlyCapitalUpsilon|ormalCurlyEpsilon|ormalCurlyKappa|ormalCurlyPhi|ormalCurlyPi|ormalCurlyRho|ormalCurlyTheta|ormalD|ormalDelta|ormalDigamma|ormalE|ormalEpsilon|ormalEta|ormalF|ormalFinalSigma|ormalG|ormalGamma|ormalH|ormalI|ormalIota|ormalJ|ormalK|ormalKappa|ormalKoppa|ormalL|ormalLambda|ormalM|ormalMu|ormalN|ormalNu|ormalO|ormalOmega|ormalOmicron|ormalP|ormalPhi|ormalPi|ormalPsi|ormalQ|ormalR|ormalRho|ormalS|ormalSampi|ormalScriptA|ormalScriptB|ormalScriptC|ormalScriptCapitalA|ormalScriptCapitalB|ormalScriptCapitalC|ormalScriptCapitalD|ormalScriptCapitalE|ormalScriptCapitalF|ormalScriptCapitalG|ormalScriptCapitalH|ormalScriptCapitalI|ormalScriptCapitalJ|ormalScriptCapitalK|ormalScriptCapitalL|ormalScriptCapitalM|ormalScriptCapitalN|ormalScriptCapitalO|ormalScriptCapitalP|ormalScriptCapitalQ|ormalScriptCapitalR|ormalScriptCapitalS|ormalScriptCapitalT|ormalScriptCapitalU|ormalScriptCapitalV|ormalScriptCapitalW|ormalScriptCapitalX|ormalScriptCapitalY|ormalScriptCapitalZ|ormalScriptD|ormalScriptE|ormalScriptF|ormalScriptG|ormalScriptH|ormalScriptI|ormalScriptJ|ormalScriptK|ormalScriptL|ormalScriptM|ormalScriptN|ormalScriptO|ormalScriptP|ormalScriptQ|ormalScriptR|ormalScriptS|ormalScriptT|ormalScriptU|ormalScriptV|ormalScriptW|ormalScriptX|ormalScriptY|ormalScriptZ|ormalSigma|ormalStigma|ormalT|ormalTau|ormalTheta|ormalU|ormalUpsilon|ormalV|ormalW|ormalX|ormalXi|ormalY|ormalZ|ormalZeta|reakedSmiley|unction))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:G(?:amma|eminiSign|imel|othicA|othicB|othicC|othicCapitalA|othicCapitalB|othicCapitalC|othicCapitalD|othicCapitalE|othicCapitalF|othicCapitalG|othicCapitalH|othicCapitalI|othicCapitalJ|othicCapitalK|othicCapitalL|othicCapitalM|othicCapitalN|othicCapitalO|othicCapitalP|othicCapitalQ|othicCapitalR|othicCapitalS|othicCapitalT|othicCapitalU|othicCapitalV|othicCapitalW|othicCapitalX|othicCapitalY|othicCapitalZ|othicD|othicE|othicEight|othicF|othicFive|othicFour|othicG|othicH|othicI|othicJ|othicK|othicL|othicM|othicN|othicNine|othicO|othicOne|othicP|othicQ|othicR|othicS|othicSeven|othicSix|othicT|othicThree|othicTwo|othicU|othicV|othicW|othicX|othicY|othicZ|othicZero|rayCircle|raySquare|reaterEqual|reaterEqualLess|reaterFullEqual|reaterGreater|reaterLess|reaterSlantEqual|reaterTilde))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:H(?:Bar|acek|appySmiley|eartSuit|ermitianConjugate|orizontalLine|umpDownHump|umpEqual|yphen))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:I(?:Acute|Cup|DoubleDot|Grave|Hat|maginaryI|maginaryJ|mplicitPlus|mplies|ndentingNewLine|nfinity|ntegral|ntersection|nvisibleApplication|nvisibleComma|nvisiblePostfixScriptBase|nvisiblePrefixScriptBase|nvisibleSpace|nvisibleTimes|ota))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:J(?:upiter))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:K(?:appa|ernelIcon|eyBar|oppa))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:L(?:Slash|ambda|astPage|eftAngleBracket|eftArrow|eftArrowBar|eftArrowRightArrow|eftAssociation|eftBracketingBar|eftCeiling|eftDoubleBracket|eftDoubleBracketingBar|eftDownTeeVector|eftDownVector|eftDownVectorBar|eftFloor|eftGuillemet|eftModified|eftPointer|eftRightArrow|eftRightVector|eftSkeleton|eftTee|eftTeeArrow|eftTeeVector|eftTriangle|eftTriangleBar|eftTriangleEqual|eftUpDownVector|eftUpTeeVector|eftUpVector|eftUpVectorBar|eftVector|eftVectorBar|eoSign|essEqual|essEqualGreater|essFullEqual|essGreater|essLess|essSlantEqual|essTilde|etterSpace|ibraSign|ightBulb|imit|ineSeparator|ongDash|ongEqual|ongLeftArrow|ongLeftRightArrow|ongRightArrow|owerLeftArrow|owerRightArrow))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:M(?:ars|athematicaIcon|axLimit|easuredAngle|ediumSpace|ercury|ho|icro|inLimit|inusPlus|od1Key|od2Key|u))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:N(?:Hacek|Tilde|and|atural|egativeMediumSpace|egativeThickSpace|egativeThinSpace|egativeVeryThinSpace|eptune|estedGreaterGreater|estedLessLess|eutralSmiley|ewLine|oBreak|onBreakingSpace|or|ot|otCongruent|otCupCap|otDoubleVerticalBar|otElement|otEqual|otEqualTilde|otExists|otGreater|otGreaterEqual|otGreaterFullEqual|otGreaterGreater|otGreaterLess|otGreaterSlantEqual|otGreaterTilde|otHumpDownHump|otHumpEqual|otLeftTriangle|otLeftTriangleBar|otLeftTriangleEqual|otLess|otLessEqual|otLessFullEqual|otLessGreater|otLessLess|otLessSlantEqual|otLessTilde|otNestedGreaterGreater|otNestedLessLess|otPrecedes|otPrecedesEqual|otPrecedesSlantEqual|otPrecedesTilde|otReverseElement|otRightTriangle|otRightTriangleBar|otRightTriangleEqual|otSquareSubset|otSquareSubsetEqual|otSquareSuperset|otSquareSupersetEqual|otSubset|otSubsetEqual|otSucceeds|otSucceedsEqual|otSucceedsSlantEqual|otSucceedsTilde|otSuperset|otSupersetEqual|otTilde|otTildeEqual|otTildeFullEqual|otTildeTilde|otVerticalBar|u|ull|umberSign))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:O(?:Acute|DoubleAcute|DoubleDot|E|Grave|Hat|Slash|Tilde|mega|micron|penCurlyDoubleQuote|penCurlyQuote|ptionKey|r|verBrace|verBracket|verParenthesis))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:P(?:aragraph|aragraphSeparator|artialD|ermutationProduct|erpendicular|hi|i|iecewise|iscesSign|laceholder|lusMinus|luto|recedes|recedesEqual|recedesSlantEqual|recedesTilde|rime|roduct|roportion|roportional|si))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:Q(?:uarterNote))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:R(?:Hacek|awAmpersand|awAt|awBackquote|awBackslash|awColon|awComma|awDash|awDollar|awDot|awDoubleQuote|awEqual|awEscape|awExclamation|awGreater|awLeftBrace|awLeftBracket|awLeftParenthesis|awLess|awNumberSign|awPercent|awPlus|awQuestion|awQuote|awReturn|awRightBrace|awRightBracket|awRightParenthesis|awSemicolon|awSlash|awSpace|awStar|awTab|awTilde|awUnderscore|awVerticalBar|awWedge|egisteredTrademark|eturnIndicator|eturnKey|everseDoublePrime|everseElement|everseEquilibrium|eversePrime|everseUpEquilibrium|ho|ightAngle|ightAngleBracket|ightArrow|ightArrowBar|ightArrowLeftArrow|ightAssociation|ightBracketingBar|ightCeiling|ightDoubleBracket|ightDoubleBracketingBar|ightDownTeeVector|ightDownVector|ightDownVectorBar|ightFloor|ightGuillemet|ightModified|ightPointer|ightSkeleton|ightTee|ightTeeArrow|ightTeeVector|ightTriangle|ightTriangleBar|ightTriangleEqual|ightUpDownVector|ightUpTeeVector|ightUpVector|ightUpVectorBar|ightVector|ightVectorBar|oundImplies|oundSpaceIndicator|ule|uleDelayed|upee))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:S(?:Hacek|Z|adSmiley|agittariusSign|ampi|aturn|corpioSign|criptA|criptB|criptC|criptCapitalA|criptCapitalB|criptCapitalC|criptCapitalD|criptCapitalE|criptCapitalF|criptCapitalG|criptCapitalH|criptCapitalI|criptCapitalJ|criptCapitalK|criptCapitalL|criptCapitalM|criptCapitalN|criptCapitalO|criptCapitalP|criptCapitalQ|criptCapitalR|criptCapitalS|criptCapitalT|criptCapitalU|criptCapitalV|criptCapitalW|criptCapitalX|criptCapitalY|criptCapitalZ|criptD|criptDotlessI|criptDotlessJ|criptE|criptEight|criptF|criptFive|criptFour|criptG|criptH|criptI|criptJ|criptK|criptL|criptM|criptN|criptNine|criptO|criptOne|criptP|criptQ|criptR|criptS|criptSeven|criptSix|criptT|criptThree|criptTwo|criptU|criptV|criptW|criptX|criptY|criptZ|criptZero|ection|electionPlaceholder|hah|harp|hiftKey|hortDownArrow|hortLeftArrow|hortRightArrow|hortUpArrow|igma|ixPointedStar|keletonIndicator|mallCircle|paceIndicator|paceKey|padeSuit|panFromAbove|panFromBoth|panFromLeft|phericalAngle|qrt|quare|quareIntersection|quareSubset|quareSubsetEqual|quareSuperset|quareSupersetEqual|quareUnion|tar|terling|tigma|ubset|ubsetEqual|ucceeds|ucceedsEqual|ucceedsSlantEqual|ucceedsTilde|uchThat|um|uperset|upersetEqual|ystemEnterKey|ystemsModelDelay))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:T(?:Hacek|abKey|au|aurusSign|ensorProduct|ensorWedge|herefore|heta|hickSpace|hinSpace|horn|ilde|ildeEqual|ildeFullEqual|ildeTilde|imes|rademark|ranspose|ripleDot|woWayRule))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:U(?:Acute|DoubleAcute|DoubleDot|Grave|Hat|Ring|nderBrace|nderBracket|nderParenthesis|ndirectedEdge|nion|nionPlus|pArrow|pArrowBar|pArrowDownArrow|pDownArrow|pEquilibrium|pPointer|pTee|pTeeArrow|pperLeftArrow|pperRightArrow|psilon|ranus))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:V(?:ectorGreater|ectorGreaterEqual|ectorLess|ectorLessEqual|ee|enus|erticalBar|erticalEllipsis|erticalLine|erticalSeparator|erticalTilde|eryThinSpace|irgoSign))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:W(?:arningSign|atchIcon|edge|eierstrassP|hiteBishop|hiteKing|hiteKnight|hitePawn|hiteQueen|hiteRook|olf|olframLanguageLogo|olframLanguageLogoCircle))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:X(?:i|nor|or))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:Y(?:Acute|DoubleDot|en))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:Z(?:Hacek|eta))\\\\\\\\]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\[(?:[$[:alpha:]][$[:alnum:]]*)?\\\\\\\\]?\\\",\\\"name\\\":\\\"invalid.illegal.BadLongName\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[$[:alpha:]][$[:alnum:]]*)\\\\\\\\]\\\",\\\"name\\\":\\\"invalid.illegal.BadLongName\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\:\\\\\\\\h{4}\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\:\\\\\\\\h{1,3}\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\.\\\\\\\\h{2}\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\.\\\\\\\\h{1}\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\|0\\\\\\\\h{5}\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\|10\\\\\\\\h{4}\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\|\\\\\\\\h{1,6}\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-7]{3}\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[0-7]{1,2}\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\$\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape punctuation.separator.continuation\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal\\\"}]},\\\"expressions\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#escaped_character_symbols\\\"},{\\\"include\\\":\\\"#escaped_characters\\\"},{\\\"include\\\":\\\"#out\\\"},{\\\"include\\\":\\\"#slot\\\"},{\\\"include\\\":\\\"#literals\\\"},{\\\"include\\\":\\\"#groups\\\"},{\\\"include\\\":\\\"#stringifying-operators\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#pattern-operators\\\"},{\\\"include\\\":\\\"#symbols\\\"},{\\\"match\\\":\\\"(?:!|&|'|\\\\\\\\*|\\\\\\\\+|,|-|\\\\\\\\.|/|:|;|<|=|>|\\\\\\\\?|@|\\\\\\\\\\\\\\\\|\\\\\\\\^|\\\\\\\\||~)\\\",\\\"name\\\":\\\"invalid.illegal\\\"}]},\\\"groups\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\)\\\",\\\"name\\\":\\\"invalid.illegal.stray-linearsyntaxparens-end.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"invalid.illegal.stray-parens-end.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\\\\\\s+\\\\\\\\[\\\",\\\"name\\\":\\\"invalid.whitespace.Part.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\\\\\\s+\\\\\\\\]\\\",\\\"name\\\":\\\"invalid.whitespace.Part.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\\\\\\]\\\",\\\"name\\\":\\\"invalid.illegal.stray-parts-end.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\]\\\",\\\"name\\\":\\\"invalid.illegal.stray-brackets-end.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"invalid.illegal.stray-braces-end.wolfram\\\"},{\\\"match\\\":\\\"\\\\\\\\|>\\\",\\\"name\\\":\\\"invalid.illegal.stray-associations-end.wolfram\\\"},{\\\"include\\\":\\\"#linearsyntaxparen-group\\\"},{\\\"include\\\":\\\"#paren-group\\\"},{\\\"include\\\":\\\"#part-group\\\"},{\\\"include\\\":\\\"#bracket-group\\\"},{\\\"include\\\":\\\"#brace-group\\\"},{\\\"include\\\":\\\"#association-group\\\"}]},\\\"linearsyntaxparen-group\\\":{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.linearsyntaxparens.begin.wolfram\\\"}},\\\"end\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.linearsyntaxparens.end.wolfram\\\"}},\\\"name\\\":\\\"meta.linearsyntaxparens.wolfram\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]},\\\"literals\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#strings\\\"}]},\\\"main\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#shebang\\\"},{\\\"include\\\":\\\"#simple-toplevel-definitions\\\"},{\\\"include\\\":\\\"#expressions\\\"}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"2\\\\\\\\^\\\\\\\\^(?:(?:0|1)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1)+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"2\\\\\\\\^\\\\\\\\^(?:(?:0|1)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1)+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"2\\\\\\\\^\\\\\\\\^(?:(?:0|1)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1)+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"2\\\\\\\\^\\\\\\\\^(?:(?:0|1)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1)+)``\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"2\\\\\\\\^\\\\\\\\^(?:(?:0|1)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1)+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"2\\\\\\\\^\\\\\\\\^(?:(?:0|1)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1)+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"2\\\\\\\\^\\\\\\\\^(?:(?:0|1)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1)+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"2\\\\\\\\^\\\\\\\\^(?:(?:0|1)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1)+)(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"2\\\\\\\\^\\\\\\\\^(?:(?:0|1)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1)+)\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"2\\\\\\\\^\\\\\\\\^(?:(?:0|1)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1)+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"2\\\\\\\\^\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"8\\\\\\\\^\\\\\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"8\\\\\\\\^\\\\\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"8\\\\\\\\^\\\\\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"8\\\\\\\\^\\\\\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)+)``\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"8\\\\\\\\^\\\\\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"8\\\\\\\\^\\\\\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"8\\\\\\\\^\\\\\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"8\\\\\\\\^\\\\\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)+)(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"8\\\\\\\\^\\\\\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)+)\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"8\\\\\\\\^\\\\\\\\^(?:(?:0|1|2|3|4|5|6|7)+(?:\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)*)?+|\\\\\\\\.(?!\\\\\\\\.)(?:0|1|2|3|4|5|6|7)+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"8\\\\\\\\^\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"16\\\\\\\\^\\\\\\\\^(?:\\\\\\\\h+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"16\\\\\\\\^\\\\\\\\^(?:\\\\\\\\h+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"16\\\\\\\\^\\\\\\\\^(?:\\\\\\\\h+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"16\\\\\\\\^\\\\\\\\^(?:\\\\\\\\h+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h+)``\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"16\\\\\\\\^\\\\\\\\^(?:\\\\\\\\h+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"16\\\\\\\\^\\\\\\\\^(?:\\\\\\\\h+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"16\\\\\\\\^\\\\\\\\^(?:\\\\\\\\h+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"16\\\\\\\\^\\\\\\\\^(?:\\\\\\\\h+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h+)(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"16\\\\\\\\^\\\\\\\\^(?:\\\\\\\\h+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h+)\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"16\\\\\\\\^\\\\\\\\^(?:\\\\\\\\h+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\h+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"16\\\\\\\\^\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)(?:``(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)))\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)``\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)(?:`(?:(?:-|\\\\\\\\+)?+(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+))?+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)(?:\\\\\\\\*\\\\\\\\^(?:-|\\\\\\\\+)?+\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)\\\\\\\\*\\\\\\\\^\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\d+(?:\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d*)?+|\\\\\\\\.(?!\\\\\\\\.)\\\\\\\\d+)\\\",\\\"name\\\":\\\"constant.numeric.wolfram\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?:\\\\\\\\^:=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.UpSetDelayed.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\^:)\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"match\\\":\\\"(?:===)\\\",\\\"name\\\":\\\"keyword.operator.SameQ.wolfram\\\"},{\\\"match\\\":\\\"(?:=!=|\\\\\\\\.\\\\\\\\.\\\\\\\\.|//\\\\\\\\.|@@@|<->|//@)\\\",\\\"name\\\":\\\"keyword.operator.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\|->)\\\",\\\"name\\\":\\\"keyword.operator.Function.wolfram\\\"},{\\\"match\\\":\\\"(?://=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.ApplyTo.wolfram\\\"},{\\\"match\\\":\\\"(?:--|\\\\\\\\+\\\\\\\\+)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\|\\\\\\\\||&&)\\\",\\\"name\\\":\\\"keyword.operator.logical.wolfram\\\"},{\\\"match\\\":\\\"(?::=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.SetDelayed.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\^=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.UpSet.wolfram\\\"},{\\\"match\\\":\\\"(?:/=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.DivideBy.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\+=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.AddTo.wolfram\\\"},{\\\"match\\\":\\\"(?:=\\\\\\\\s+\\\\\\\\.(?![0-9]))\\\",\\\"name\\\":\\\"invalid.whitespace.Unset.wolfram\\\"},{\\\"match\\\":\\\"(?:=\\\\\\\\.(?![0-9]))\\\",\\\"name\\\":\\\"keyword.operator.assignment.Unset.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\*=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.TimesBy.wolfram\\\"},{\\\"match\\\":\\\"(?:-=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.SubtractFrom.wolfram\\\"},{\\\"match\\\":\\\"(?:/:)\\\",\\\"name\\\":\\\"keyword.operator.assignment.Tag.wolfram\\\"},{\\\"match\\\":\\\"(?:;;)$\\\",\\\"name\\\":\\\"invalid.endofline.Span.wolfram\\\"},{\\\"match\\\":\\\"(?:;;)\\\",\\\"name\\\":\\\"keyword.operator.Span.wolfram\\\"},{\\\"match\\\":\\\"(?:!=)\\\",\\\"name\\\":\\\"keyword.operator.Unequal.wolfram\\\"},{\\\"match\\\":\\\"(?:==)\\\",\\\"name\\\":\\\"keyword.operator.Equal.wolfram\\\"},{\\\"match\\\":\\\"(?:!!)\\\",\\\"name\\\":\\\"keyword.operator.BangBang.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\?\\\\\\\\?)\\\",\\\"name\\\":\\\"invalid.illegal.Information.wolfram\\\"},{\\\"match\\\":\\\"(?:<=|>=|\\\\\\\\.\\\\\\\\.|:>|<>|->|/@|/;|/\\\\\\\\.|//|/\\\\\\\\*|@@|@\\\\\\\\*|~~|\\\\\\\\*\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.wolfram\\\"},{\\\"match\\\":\\\"(?:-|\\\\\\\\+|/|\\\\\\\\*)\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.wolfram\\\"},{\\\"match\\\":\\\"(?:=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.Set.wolfram\\\"},{\\\"match\\\":\\\"(?:<)\\\",\\\"name\\\":\\\"keyword.operator.Less.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.Alternatives.wolfram\\\"},{\\\"match\\\":\\\"(?:!)\\\",\\\"name\\\":\\\"keyword.operator.Bang.wolfram\\\"},{\\\"match\\\":\\\"(?:;)\\\",\\\"name\\\":\\\"keyword.operator.CompoundExpression.wolfram punctuation.terminator\\\"},{\\\"match\\\":\\\"(?:,)\\\",\\\"name\\\":\\\"keyword.operator.Comma.wolfram punctuation.separator\\\"},{\\\"match\\\":\\\"^(?:\\\\\\\\?)\\\",\\\"name\\\":\\\"invalid.startofline.Information.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\?)\\\",\\\"name\\\":\\\"keyword.operator.PatternTest.wolfram\\\"},{\\\"match\\\":\\\"(?:')\\\",\\\"name\\\":\\\"keyword.operator.Derivative.wolfram\\\"},{\\\"match\\\":\\\"(?:&)\\\",\\\"name\\\":\\\"keyword.operator.Function.wolfram\\\"},{\\\"match\\\":\\\"(?:>|\\\\\\\\^|\\\\\\\\.|:|@|~)\\\",\\\"name\\\":\\\"keyword.operator.wolfram\\\"}]},\\\"out\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"%\\\\\\\\d+\\\",\\\"name\\\":\\\"keyword.other.Out.wolfram\\\"},{\\\"match\\\":\\\"%+\\\",\\\"name\\\":\\\"keyword.other.Out.wolfram\\\"}]},\\\"paren-group\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.begin.wolfram\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parens.end.wolfram\\\"}},\\\"name\\\":\\\"meta.parens.wolfram\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]},\\\"part-group\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parts.begin.wolfram\\\"}},\\\"end\\\":\\\"\\\\\\\\]\\\\\\\\]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.parts.end.wolfram\\\"}},\\\"name\\\":\\\"meta.parts.wolfram\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#expressions\\\"}]},\\\"pattern-operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"___\\\",\\\"name\\\":\\\"keyword.operator.BlankNullSequence.wolfram\\\"},{\\\"match\\\":\\\"__\\\",\\\"name\\\":\\\"keyword.operator.BlankSequence.wolfram\\\"},{\\\"match\\\":\\\"_\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.Optional.wolfram\\\"},{\\\"match\\\":\\\"_\\\",\\\"name\\\":\\\"keyword.operator.Blank.wolfram\\\"}]},\\\"shebang\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.wolfram\\\"}},\\\"match\\\":\\\"\\\\\\\\A(#!).*(?=$)\\\",\\\"name\\\":\\\"comment.line.shebang.wolfram\\\"},\\\"simple-toplevel-definitions\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.section.brackets.begin.wolfram\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.function.wolfram entity.name.Context.wolfram\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.function.wolfram entity.name.function.wolfram\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.section.brackets.end.wolfram\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.operator.assignment.wolfram\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(Attributes|Format|Options)\\\\\\\\s*(\\\\\\\\[)(`?(?:(?:[$[:alpha:]][$[:alnum:]]*)`)*)((?:[$[:alpha:]][$[:alnum:]]*))(\\\\\\\\])\\\\\\\\s*(:=|=(?!!|=|\\\\\\\\.))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.function.wolfram entity.name.Context.wolfram\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.function.wolfram entity.name.function.wolfram\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(`?(?:(?:[$[:alpha:]][$[:alnum:]]*)`)*)((?:[$[:alpha:]][$[:alnum:]]*))(?=\\\\\\\\s*(\\\\\\\\[(?>[^\\\\\\\\[\\\\\\\\]]+|\\\\\\\\g<-1>)*\\\\\\\\])\\\\\\\\s*(?:/;.*)?(?::=|=(?!!|=|\\\\\\\\.)))\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.function.wolfram entity.name.Context.wolfram\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.function.wolfram entity.name.constant.wolfram\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(`?(?:(?:[$[:alpha:]][$[:alnum:]]*)`)*)((?:[$[:alpha:]][$[:alnum:]]*))(?=\\\\\\\\s*(?:/;.*)?(?::=|=(?!!|=|\\\\\\\\.)))\\\"}]},\\\"slot\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"#[[:alpha:]][[:alnum:]]*\\\",\\\"name\\\":\\\"keyword.other.Slot.wolfram\\\"},{\\\"match\\\":\\\"##\\\\\\\\d*\\\",\\\"name\\\":\\\"keyword.other.SlotSequence.wolfram\\\"},{\\\"match\\\":\\\"#\\\\\\\\d*\\\",\\\"name\\\":\\\"keyword.other.Slot.wolfram\\\"}]},\\\"string_escaped_characters\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[bfnrt\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\<>]\\\",\\\"name\\\":\\\"donothighlight.constant.character.escape\\\"},{\\\"include\\\":\\\"#escaped_characters\\\"}]},\\\"stringifying-operators\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.PutAppend.wolfram\\\"}},\\\"match\\\":\\\"(>>>)(?=\\\\\\\\s*\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.PutAppend.wolfram\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.wolfram\\\"}},\\\"match\\\":\\\"(>>>)\\\\\\\\s*(\\\\\\\\w+)\\\"},{\\\"match\\\":\\\">>>\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.MessageName.wolfram\\\"}},\\\"match\\\":\\\"(::)(?=\\\\\\\\s*\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.MessageName.wolfram\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.wolfram\\\"}},\\\"match\\\":\\\"(::)([[:alpha:]][[:alnum:]]*)\\\"},{\\\"match\\\":\\\"::\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.Get.wolfram\\\"}},\\\"match\\\":\\\"(<<)(?=\\\\\\\\s*\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.Get.wolfram\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.wolfram\\\"}},\\\"match\\\":\\\"(<<)\\\\\\\\s*([`[:alpha:]][`[:alnum:]]*)\\\"},{\\\"match\\\":\\\"<<\\\",\\\"name\\\":\\\"invalid.illegal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.Put.wolfram\\\"}},\\\"match\\\":\\\"(>>)(?=\\\\\\\\s*\\\\\\\")\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.operator.Put.wolfram\\\"},\\\"2\\\":{\\\"name\\\":\\\"string.unquoted.wolfram\\\"}},\\\"match\\\":\\\"(>>)\\\\\\\\s*(\\\\\\\\w*)\\\"},{\\\"match\\\":\\\">>\\\",\\\"name\\\":\\\"invalid.illegal\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end\\\"}},\\\"name\\\":\\\"string.quoted.double\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#string_escaped_characters\\\"}]}]},\\\"symbols\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"System`(?:A(?:ASTriangle|PIFunction|RCHProcess|RIMAProcess|RMAProcess|RProcess|SATriangle|belianGroup|bort|bortKernels|bortProtect|bs|bsArg|bsArgPlot|bsoluteCorrelation|bsoluteCorrelationFunction|bsoluteCurrentValue|bsoluteDashing|bsoluteFileName|bsoluteOptions|bsolutePointSize|bsoluteThickness|bsoluteTime|bsoluteTiming|ccountingForm|ccumulate|ccuracy|cousticAbsorbingValue|cousticImpedanceValue|cousticNormalVelocityValue|cousticPDEComponent|cousticPressureCondition|cousticRadiationValue|cousticSoundHardValue|cousticSoundSoftCondition|ctionMenu|ctivate|cyclicGraphQ|ddSides|ddTo|ddUsers|djacencyGraph|djacencyList|djacencyMatrix|djacentMeshCells|djugate|djustTimeSeriesForecast|djustmentBox|dministrativeDivisionData|ffineHalfSpace|ffineSpace|ffineStateSpaceModel|ffineTransform|irPressureData|irSoundAttenuation|irTemperatureData|ircraftData|irportData|iryAi|iryAiPrime|iryAiZero|iryBi|iryBiPrime|iryBiZero|lgebraicIntegerQ|lgebraicNumber|lgebraicNumberDenominator|lgebraicNumberNorm|lgebraicNumberPolynomial|lgebraicNumberTrace|lgebraicUnitQ|llTrue|lphaChannel|lphabet|lphabeticOrder|lphabeticSort|lternatingFactorial|lternatingGroup|lternatives|mbientLight|mbiguityList|natomyData|natomyPlot3D|natomyStyling|nd|ndersonDarlingTest|ngerJ|ngleBracket|nglePath|nglePath3D|ngleVector|ngularGauge|nimate|nimator|nnotate|nnotation|nnotationDelete|nnotationKeys|nnotationValue|nnuity|nnuityDue|nnulus|nomalyDetection|nomalyDetectorFunction|ntihermitian|ntihermitianMatrixQ|ntisymmetric|ntisymmetricMatrixQ|ntonyms|nyOrder|nySubset|nyTrue|part|partSquareFree|ppellF1|ppend|ppendTo|pply|pplySides|pplyTo|rcCos|rcCosh|rcCot|rcCoth|rcCsc|rcCsch|rcCurvature|rcLength|rcSec|rcSech|rcSin|rcSinDistribution|rcSinh|rcTan|rcTanh|rea|rg|rgMax|rgMin|rgumentsOptions|rithmeticGeometricMean|rray|rrayComponents|rrayDepth|rrayFilter|rrayFlatten|rrayMesh|rrayPad|rrayPlot|rrayPlot3D|rrayQ|rrayResample|rrayReshape|rrayRules|rrays|rrow|rrowheads|ssert|ssociateTo|ssociation|ssociationMap|ssociationQ|ssociationThread|ssuming|symptotic|symptoticDSolveValue|symptoticEqual|symptoticEquivalent|symptoticExpectation|symptoticGreater|symptoticGreaterEqual|symptoticIntegrate|symptoticLess|symptoticLessEqual|symptoticOutputTracker|symptoticProbability|symptoticProduct|symptoticRSolveValue|symptoticSolve|symptoticSum|tomQ|ttributes|udio|udioAmplify|udioBlockMap|udioCapture|udioChannelCombine|udioChannelMix|udioChannelSeparate|udioChannels|udioData|udioDelay|udioDelete|udioDistance|udioFade|udioFrequencyShift|udioGenerator|udioInsert|udioIntervals|udioJoin|udioLength|udioLocalMeasurements|udioLoudness|udioMeasurements|udioNormalize|udioOverlay|udioPad|udioPan|udioPartition|udioPitchShift|udioPlot|udioQ|udioReplace|udioResample|udioReverb|udioReverse|udioSampleRate|udioSpectralMap|udioSpectralTransformation|udioSplit|udioTimeStretch|udioTrim|udioType|ugmentedPolyhedron|ugmentedSymmetricPolynomial|uthenticationDialog|utoRefreshed|utoSubmitting|utocorrelationTest))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:B(?:SplineBasis|SplineCurve|SplineFunction|SplineSurface|abyMonsterGroupB|ackslash|all|and|andpassFilter|andstopFilter|arChart|arChart3D|arLegend|arabasiAlbertGraphDistribution|arcodeImage|arcodeRecognize|aringhausHenzeTest|arlowProschanImportance|arnesG|artlettHannWindow|artlettWindow|aseDecode|aseEncode|aseForm|atesDistribution|attleLemarieWavelet|ecause|eckmannDistribution|eep|egin|eginDialogPacket|eginPackage|ellB|ellY|enfordDistribution|eniniDistribution|enktanderGibratDistribution|enktanderWeibullDistribution|ernoulliB|ernoulliDistribution|ernoulliGraphDistribution|ernoulliProcess|ernsteinBasis|esselFilterModel|esselI|esselJ|esselJZero|esselK|esselY|esselYZero|eta|etaBinomialDistribution|etaDistribution|etaNegativeBinomialDistribution|etaPrimeDistribution|etaRegularized|etween|etweennessCentrality|eveledPolyhedron|ezierCurve|ezierFunction|ilateralFilter|ilateralLaplaceTransform|ilateralZTransform|inCounts|inLists|inarize|inaryDeserialize|inaryDistance|inaryImageQ|inaryRead|inaryReadList|inarySerialize|inaryWrite|inomial|inomialDistribution|inomialProcess|inormalDistribution|iorthogonalSplineWavelet|ipartiteGraphQ|iquadraticFilterModel|irnbaumImportance|irnbaumSaundersDistribution|itAnd|itClear|itGet|itLength|itNot|itOr|itSet|itShiftLeft|itShiftRight|itXor|iweightLocation|iweightMidvariance|lackmanHarrisWindow|lackmanNuttallWindow|lackmanWindow|lank|lankNullSequence|lankSequence|lend|lock|lockMap|lockRandom|lomqvistBeta|lomqvistBetaTest|lur|lurring|odePlot|ohmanWindow|oole|ooleanConsecutiveFunction|ooleanConvert|ooleanCountingFunction|ooleanFunction|ooleanGraph|ooleanMaxterms|ooleanMinimize|ooleanMinterms|ooleanQ|ooleanRegion|ooleanTable|ooleanVariables|orderDimensions|orelTannerDistribution|ottomHatTransform|oundaryDiscretizeGraphics|oundaryDiscretizeRegion|oundaryMesh|oundaryMeshRegion|oundaryMeshRegionQ|oundedRegionQ|oundingRegion|oxData|oxMatrix|oxObject|oxWhiskerChart|racketingBar|rayCurtisDistance|readthFirstScan|reak|ridgeData|rightnessEqualize|roadcastStationData|rownForsytheTest|rownianBridgeProcess|ubbleChart|ubbleChart3D|uckyballGraph|uildingData|ulletGauge|usinessDayQ|utterflyGraph|utterworthFilterModel|utton|uttonBar|uttonBox|uttonNotebook|yteArray|yteArrayFormat|yteArrayFormatQ|yteArrayQ|yteArrayToString|yteCount))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:C(?:|DF|DFDeploy|DFWavelet|Form|MYKColor|SGRegion|SGRegionQ|SGRegionTree|alendarConvert|alendarData|allPacket|allout|anberraDistance|ancel|ancelButton|andlestickChart|anonicalGraph|anonicalName|anonicalWarpingCorrespondence|anonicalWarpingDistance|anonicalizePolygon|anonicalizePolyhedron|anonicalizeRegion|antorMesh|antorStaircase|ap|apForm|apitalDifferentialD|apitalize|apsuleShape|aputoD|arlemanLinearize|arlsonRC|arlsonRD|arlsonRE|arlsonRF|arlsonRG|arlsonRJ|arlsonRK|arlsonRM|armichaelLambda|aseSensitive|ases|ashflow|asoratian|atalanNumber|atch|atenate|auchyDistribution|auchyMatrix|auchyWindow|ayleyGraph|eiling|ell|ellGroup|ellGroupData|ellObject|ellPrint|ells|ellularAutomaton|ensoredDistribution|ensoring|enterArray|enterDot|enteredInterval|entralFeature|entralMoment|entralMomentGeneratingFunction|epstrogram|epstrogramArray|epstrumArray|hampernowneNumber|hanVeseBinarize|haracterCounts|haracterName|haracterRange|haracteristicFunction|haracteristicPolynomial|haracters|hebyshev1FilterModel|hebyshev2FilterModel|hebyshevT|hebyshevU|heck|heckAbort|heckArguments|heckbox|heckboxBar|hemicalData|hessboardDistance|hiDistribution|hiSquareDistribution|hineseRemainder|hoiceButtons|hoiceDialog|holeskyDecomposition|hop|hromaticPolynomial|hromaticityPlot|hromaticityPlot3D|ircle|ircleDot|ircleMinus|irclePlus|irclePoints|ircleThrough|ircleTimes|irculantGraph|ircularArcThrough|ircularOrthogonalMatrixDistribution|ircularQuaternionMatrixDistribution|ircularRealMatrixDistribution|ircularSymplecticMatrixDistribution|ircularUnitaryMatrixDistribution|ircumsphere|ityData|lassifierFunction|lassifierMeasurements|lassifierMeasurementsObject|lassify|lear|learAll|learAttributes|learCookies|learPermissions|learSystemCache|lebschGordan|lickPane|lickToCopy|lip|lock|lockGauge|lose|loseKernels|losenessCentrality|losing|loudAccountData|loudConnect|loudDeploy|loudDirectory|loudDisconnect|loudEvaluate|loudExport|loudFunction|loudGet|loudImport|loudLoggingData|loudObject|loudObjects|loudPublish|loudPut|loudSave|loudShare|loudSubmit|loudSymbol|loudUnshare|lusterClassify|lusteringComponents|lusteringMeasurements|lusteringTree|oefficient|oefficientArrays|oefficientList|oefficientRules|oifletWavelet|ollect|ollinearPoints|olon|olorBalance|olorCombine|olorConvert|olorData|olorDataFunction|olorDetect|olorDistance|olorNegate|olorProfileData|olorQ|olorQuantize|olorReplace|olorSeparate|olorSetter|olorSlider|olorToneMapping|olorize|olorsNear|olumn|ometData|ommonName|ommonUnits|ommonest|ommonestFilter|ommunityGraphPlot|ompanyData|ompatibleUnitQ|ompile|ompiledFunction|omplement|ompleteGraph|ompleteGraphQ|ompleteIntegral|ompleteKaryTree|omplex|omplexArrayPlot|omplexContourPlot|omplexExpand|omplexListPlot|omplexPlot|omplexPlot3D|omplexRegionPlot|omplexStreamPlot|omplexVectorPlot|omponentMeasurements|omposeList|omposeSeries|ompositeQ|omposition|ompoundElement|ompoundExpression|ompoundPoissonDistribution|ompoundPoissonProcess|ompoundRenewalProcess|ompress|oncaveHullMesh|ondition|onditionalExpression|onditioned|one|onfirm|onfirmAssert|onfirmBy|onfirmMatch|onformAudio|onformImages|ongruent|onicGradientFilling|onicHullRegion|onicOptimization|onjugate|onjugateTranspose|onjunction|onnectLibraryCallbackFunction|onnectedComponents|onnectedGraphComponents|onnectedGraphQ|onnectedMeshComponents|onnesWindow|onoverTest|onservativeConvectionPDETerm|onstantArray|onstantImage|onstantRegionQ|onstellationData|onstruct|ontainsAll|ontainsAny|ontainsExactly|ontainsNone|ontainsOnly|ontext|ontextToFileName|ontexts|ontinue|ontinuedFraction|ontinuedFractionK|ontinuousMarkovProcess|ontinuousTask|ontinuousTimeModelQ|ontinuousWaveletData|ontinuousWaveletTransform|ontourDetect|ontourPlot|ontourPlot3D|ontraharmonicMean|ontrol|ontrolActive|ontrollabilityGramian|ontrollabilityMatrix|ontrollableDecomposition|ontrollableModelQ|ontrollerInformation|ontrollerManipulate|ontrollerState|onvectionPDETerm|onvergents|onvexHullMesh|onvexHullRegion|onvexOptimization|onvexPolygonQ|onvexPolyhedronQ|onvexRegionQ|onvolve|onwayGroupCo1|onwayGroupCo2|onwayGroupCo3|oordinateBoundingBox|oordinateBoundingBoxArray|oordinateBounds|oordinateBoundsArray|oordinateChartData|oordinateTransform|oordinateTransformData|oplanarPoints|oprimeQ|oproduct|opulaDistribution|opyDatabin|opyDirectory|opyFile|opyToClipboard|oreNilpotentDecomposition|ornerFilter|orrelation|orrelationDistance|orrelationFunction|orrelationTest|os|osIntegral|osh|oshIntegral|osineDistance|osineWindow|ot|oth|oulombF|oulombG|oulombH1|oulombH2|ount|ountDistinct|ountDistinctBy|ountRoots|ountryData|ounts|ountsBy|ovariance|ovarianceFunction|oxIngersollRossProcess|oxModel|oxModelFit|oxianDistribution|ramerVonMisesTest|reateArchive|reateDatabin|reateDialog|reateDirectory|reateDocument|reateFile|reateManagedLibraryExpression|reateNotebook|reatePacletArchive|reatePalette|reatePermissionsGroup|reateUUID|reateWindow|riticalSection|riticalityFailureImportance|riticalitySuccessImportance|ross|rossMatrix|rossingCount|rossingDetect|rossingPolygon|sc|sch|ube|ubeRoot|uboid|umulant|umulantGeneratingFunction|umulativeFeatureImpactPlot|up|upCap|url|urrencyConvert|urrentDate|urrentImage|urrentValue|urvatureFlowFilter|ycleGraph|ycleIndexPolynomial|ycles|yclicGroup|yclotomic|ylinder|ylindricalDecomposition|ylindricalDecompositionFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:D(?:|Eigensystem|Eigenvalues|GaussianWavelet|MSList|MSString|Solve|SolveValue|agumDistribution|amData|amerauLevenshteinDistance|arker|ashing|ataDistribution|atabin|atabinAdd|atabinUpload|atabins|ataset|ateBounds|ateDifference|ateHistogram|ateList|ateListLogPlot|ateListPlot|ateListStepPlot|ateObject|ateObjectQ|ateOverlapsQ|atePattern|atePlus|ateRange|ateScale|ateSelect|ateString|ateValue|ateWithinQ|ated|atedUnit|aubechiesWavelet|avisDistribution|awsonF|ayCount|ayHemisphere|ayMatchQ|ayName|ayNightTerminator|ayPlus|ayRange|ayRound|aylightQ|eBruijnGraph|eBruijnSequence|ecapitalize|ecimalForm|eclarePackage|ecompose|ecrement|ecrypt|edekindEta|eepSpaceProbeData|efault|efaultButton|efaultValues|efer|efineInputStreamMethod|efineOutputStreamMethod|efineResourceFunction|efinition|egreeCentrality|egreeGraphDistribution|el|elaunayMesh|elayed|elete|eleteAdjacentDuplicates|eleteAnomalies|eleteBorderComponents|eleteCases|eleteDirectory|eleteDuplicates|eleteDuplicatesBy|eleteFile|eleteMissing|eleteObject|eletePermissionsKey|eleteSmallComponents|eleteStopwords|elimitedSequence|endrogram|enominator|ensityHistogram|ensityPlot|ensityPlot3D|eploy|epth|epthFirstScan|erivative|erivativeFilter|erivativePDETerm|esignMatrix|et|eviceClose|eviceConfigure|eviceExecute|eviceExecuteAsynchronous|eviceObject|eviceOpen|eviceRead|eviceReadBuffer|eviceReadLatest|eviceReadList|eviceReadTimeSeries|eviceStreams|eviceWrite|eviceWriteBuffer|evices|iagonal|iagonalMatrix|iagonalMatrixQ|iagonalizableMatrixQ|ialog|ialogInput|ialogNotebook|ialogReturn|iamond|iamondMatrix|iceDissimilarity|ictionaryLookup|ictionaryWordQ|ifferenceDelta|ifferenceQuotient|ifferenceRoot|ifferenceRootReduce|ifferences|ifferentialD|ifferentialRoot|ifferentialRootReduce|ifferentiatorFilter|iffusionPDETerm|igitCount|igitQ|ihedralAngle|ihedralGroup|ilation|imensionReduce|imensionReducerFunction|imensionReduction|imensionalCombinations|imensionalMeshComponents|imensions|iracComb|iracDelta|irectedEdge|irectedGraph|irectedGraphQ|irectedInfinity|irectionalLight|irective|irectory|irectoryName|irectoryQ|irectoryStack|irichletBeta|irichletCharacter|irichletCondition|irichletConvolve|irichletDistribution|irichletEta|irichletL|irichletLambda|irichletTransform|irichletWindow|iscreteAsymptotic|iscreteChirpZTransform|iscreteConvolve|iscreteDelta|iscreteHadamardTransform|iscreteIndicator|iscreteInputOutputModel|iscreteLQEstimatorGains|iscreteLQRegulatorGains|iscreteLimit|iscreteLyapunovSolve|iscreteMarkovProcess|iscreteMaxLimit|iscreteMinLimit|iscretePlot|iscretePlot3D|iscreteRatio|iscreteRiccatiSolve|iscreteShift|iscreteTimeModelQ|iscreteUniformDistribution|iscreteWaveletData|iscreteWaveletPacketTransform|iscreteWaveletTransform|iscretizeGraphics|iscretizeRegion|iscriminant|isjointQ|isjunction|isk|iskMatrix|iskSegment|ispatch|isplayEndPacket|isplayForm|isplayPacket|istanceMatrix|istanceTransform|istribute|istributeDefinitions|istributed|istributionChart|istributionFitTest|istributionParameterAssumptions|istributionParameterQ|iv|ivide|ivideBy|ivideSides|ivisible|ivisorSigma|ivisorSum|ivisors|o|ocumentGenerator|ocumentGeneratorInformation|ocumentGenerators|ocumentNotebook|odecahedron|ominantColors|ominatorTreeGraph|ominatorVertexList|ot|otEqual|oubleBracketingBar|oubleDownArrow|oubleLeftArrow|oubleLeftRightArrow|oubleLeftTee|oubleLongLeftArrow|oubleLongLeftRightArrow|oubleLongRightArrow|oubleRightArrow|oubleRightTee|oubleUpArrow|oubleUpDownArrow|oubleVerticalBar|ownArrow|ownArrowBar|ownArrowUpArrow|ownLeftRightVector|ownLeftTeeVector|ownLeftVector|ownLeftVectorBar|ownRightTeeVector|ownRightVector|ownRightVectorBar|ownTee|ownTeeArrow|ownValues|ownsample|razinInverse|rop|ropShadowing|t|ualPlanarGraph|ualPolyhedron|ualSystemsModel|umpSave|uplicateFreeQ|uration|ynamic|ynamicGeoGraphics|ynamicModule|ynamicSetting|ynamicWrapper))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:E(?:arthImpactData|arthquakeData|ccentricityCentrality|choEvaluation|choFunction|choLabel|dgeAdd|dgeBetweennessCentrality|dgeChromaticNumber|dgeConnectivity|dgeContract|dgeCount|dgeCoverQ|dgeCycleMatrix|dgeDelete|dgeDetect|dgeForm|dgeIndex|dgeList|dgeQ|dgeRules|dgeTaggedGraph|dgeTaggedGraphQ|dgeTags|dgeTransitiveGraphQ|dgeWeightedGraphQ|ditDistance|ffectiveInterest|igensystem|igenvalues|igenvectorCentrality|igenvectors|lement|lementData|liminate|llipsoid|llipticE|llipticExp|llipticExpPrime|llipticF|llipticFilterModel|llipticK|llipticLog|llipticNomeQ|llipticPi|llipticTheta|llipticThetaPrime|mbedCode|mbeddedHTML|mbeddedService|mitSound|mpiricalDistribution|mptyGraphQ|mptyRegion|nclose|ncode|ncrypt|ncryptedObject|nd|ndDialogPacket|ndPackage|ngineeringForm|nterExpressionPacket|nterTextPacket|ntity|ntityClass|ntityClassList|ntityCopies|ntityGroup|ntityInstance|ntityList|ntityPrefetch|ntityProperties|ntityProperty|ntityPropertyClass|ntityRegister|ntityStores|ntityTypeName|ntityUnregister|ntityValue|ntropy|ntropyFilter|nvironment|qual|qualTilde|qualTo|quilibrium|quirippleFilterKernel|quivalent|rf|rfc|rfi|rlangB|rlangC|rlangDistribution|rosion|rrorBox|stimatedBackground|stimatedDistribution|stimatedPointNormals|stimatedProcess|stimatorGains|stimatorRegulator|uclideanDistance|ulerAngles|ulerCharacteristic|ulerE|ulerMatrix|ulerPhi|ulerianGraphQ|valuate|valuatePacket|valuationBox|valuationCell|valuationData|valuationNotebook|valuationObject|venQ|ventData|ventHandler|ventSeries|xactBlackmanWindow|xactNumberQ|xampleData|xcept|xists|xoplanetData|xp|xpGammaDistribution|xpIntegralE|xpIntegralEi|xpToTrig|xpand|xpandAll|xpandDenominator|xpandFileName|xpandNumerator|xpectation|xponent|xponentialDistribution|xponentialGeneratingFunction|xponentialMovingAverage|xponentialPowerDistribution|xport|xportByteArray|xportForm|xportString|xpressionCell|xpressionGraph|xtendedGCD|xternalBundle|xtract|xtractArchive|xtractPacletArchive|xtremeValueDistribution))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:F(?:ARIMAProcess|RatioDistribution|aceAlign|aceForm|acialFeatures|actor|actorInteger|actorList|actorSquareFree|actorSquareFreeList|actorTerms|actorTermsList|actorial|actorial2|actorialMoment|actorialMomentGeneratingFunction|actorialPower|ailure|ailureDistribution|ailureQ|areySequence|eatureImpactPlot|eatureNearest|eatureSpacePlot|eatureSpacePlot3D|eatureValueDependencyPlot|eatureValueImpactPlot|eedbackLinearize|etalGrowthData|ibonacci|ibonorial|ile|ileBaseName|ileByteCount|ileDate|ileExistsQ|ileExtension|ileFormat|ileFormatQ|ileHash|ileNameDepth|ileNameDrop|ileNameJoin|ileNameSetter|ileNameSplit|ileNameTake|ileNames|ilePrint|ileSize|ileSystemMap|ileSystemScan|ileTemplate|ileTemplateApply|ileType|illedCurve|illedTorus|illingTransform|ilterRules|inancialBond|inancialData|inancialDerivative|inancialIndicator|ind|indAnomalies|indArgMax|indArgMin|indClique|indClusters|indCookies|indCurvePath|indCycle|indDevices|indDistribution|indDistributionParameters|indDivisions|indEdgeColoring|indEdgeCover|indEdgeCut|indEdgeIndependentPaths|indEulerianCycle|indFaces|indFile|indFit|indFormula|indFundamentalCycles|indGeneratingFunction|indGeoLocation|indGeometricTransform|indGraphCommunities|indGraphIsomorphism|indGraphPartition|indHamiltonianCycle|indHamiltonianPath|indHiddenMarkovStates|indIndependentEdgeSet|indIndependentVertexSet|indInstance|indIntegerNullVector|indIsomorphicSubgraph|indKClan|indKClique|indKClub|indKPlex|indLibrary|indLinearRecurrence|indList|indMatchingColor|indMaxValue|indMaximum|indMaximumCut|indMaximumFlow|indMeshDefects|indMinValue|indMinimum|indMinimumCostFlow|indMinimumCut|indPath|indPeaks|indPermutation|indPlanarColoring|indPostmanTour|indProcessParameters|indRegionTransform|indRepeat|indRoot|indSequenceFunction|indShortestPath|indShortestTour|indSpanningTree|indSubgraphIsomorphism|indThreshold|indTransientRepeat|indVertexColoring|indVertexCover|indVertexCut|indVertexIndependentPaths|inishDynamic|initeAbelianGroupCount|initeGroupCount|initeGroupData|irst|irstCase|irstPassageTimeDistribution|irstPosition|ischerGroupFi22|ischerGroupFi23|ischerGroupFi24Prime|isherHypergeometricDistribution|isherRatioTest|isherZDistribution|it|ittedModel|ixedOrder|ixedPoint|ixedPointList|latShading|latTopWindow|latten|lattenAt|lightData|lipView|loor|lowPolynomial|old|oldList|oldPair|oldPairList|oldWhile|oldWhileList|or|orAll|ormBox|ormFunction|ormObject|ormPage|ormat|ormulaData|ormulaLookup|ortranForm|ourier|ourierCoefficient|ourierCosCoefficient|ourierCosSeries|ourierCosTransform|ourierDCT|ourierDCTFilter|ourierDCTMatrix|ourierDST|ourierDSTMatrix|ourierMatrix|ourierSequenceTransform|ourierSeries|ourierSinCoefficient|ourierSinSeries|ourierSinTransform|ourierTransform|ourierTrigSeries|oxH|ractionBox|ractionalBrownianMotionProcess|ractionalD|ractionalGaussianNoiseProcess|ractionalPart|rameBox|ramed|rechetDistribution|reeQ|renetSerretSystem|requencySamplingFilterKernel|resnelC|resnelF|resnelG|resnelS|robeniusNumber|robeniusSolve|romAbsoluteTime|romCharacterCode|romCoefficientRules|romContinuedFraction|romDMS|romDateString|romDigits|romEntity|romJulianDate|romLetterNumber|romPolarCoordinates|romRomanNumeral|romSphericalCoordinates|romUnixTime|rontEndExecute|rontEndToken|rontEndTokenExecute|ullDefinition|ullForm|ullGraphics|ullInformationOutputRegulator|ullRegion|ullSimplify|unction|unctionAnalytic|unctionBijective|unctionContinuous|unctionConvexity|unctionDiscontinuities|unctionDomain|unctionExpand|unctionInjective|unctionInterpolation|unctionMeromorphic|unctionMonotonicity|unctionPeriod|unctionRange|unctionSign|unctionSingularities|unctionSurjective|ussellVeselyImportance))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:G(?:ARCHProcess|CD|aborFilter|aborMatrix|aborWavelet|ainMargins|ainPhaseMargins|alaxyData|amma|ammaDistribution|ammaRegularized|ather|atherBy|aussianFilter|aussianMatrix|aussianOrthogonalMatrixDistribution|aussianSymplecticMatrixDistribution|aussianUnitaryMatrixDistribution|aussianWindow|egenbauerC|eneralizedLinearModelFit|enerateAsymmetricKeyPair|enerateDocument|enerateHTTPResponse|enerateSymmetricKey|eneratingFunction|enericCylindricalDecomposition|enomeData|enomeLookup|eoAntipode|eoArea|eoBoundary|eoBoundingBox|eoBounds|eoBoundsRegion|eoBoundsRegionBoundary|eoBubbleChart|eoCircle|eoContourPlot|eoDensityPlot|eoDestination|eoDirection|eoDisk|eoDisplacement|eoDistance|eoDistanceList|eoElevationData|eoEntities|eoGraphPlot|eoGraphics|eoGridDirectionDifference|eoGridPosition|eoGridUnitArea|eoGridUnitDistance|eoGridVector|eoGroup|eoHemisphere|eoHemisphereBoundary|eoHistogram|eoIdentify|eoImage|eoLength|eoListPlot|eoMarker|eoNearest|eoPath|eoPolygon|eoPosition|eoPositionENU|eoPositionXYZ|eoProjectionData|eoRegionValuePlot|eoSmoothHistogram|eoStreamPlot|eoStyling|eoVariant|eoVector|eoVectorENU|eoVectorPlot|eoVectorXYZ|eoVisibleRegion|eoVisibleRegionBoundary|eoWithinQ|eodesicClosing|eodesicDilation|eodesicErosion|eodesicOpening|eodesicPolyhedron|eodesyData|eogravityModelData|eologicalPeriodData|eomagneticModelData|eometricBrownianMotionProcess|eometricDistribution|eometricMean|eometricMeanFilter|eometricOptimization|eometricTransformation|estureHandler|et|etEnvironment|lobalClusteringCoefficient|low|ompertzMakehamDistribution|oochShading|oodmanKruskalGamma|oodmanKruskalGammaTest|oto|ouraudShading|rad|radientFilter|radientFittedMesh|radientOrientationFilter|rammarApply|rammarRules|rammarToken|raph|raph3D|raphAssortativity|raphAutomorphismGroup|raphCenter|raphComplement|raphData|raphDensity|raphDiameter|raphDifference|raphDisjointUnion|raphDistance|raphDistanceMatrix|raphEmbedding|raphHub|raphIntersection|raphJoin|raphLinkEfficiency|raphPeriphery|raphPlot|raphPlot3D|raphPower|raphProduct|raphPropertyDistribution|raphQ|raphRadius|raphReciprocity|raphSum|raphUnion|raphics|raphics3D|raphicsColumn|raphicsComplex|raphicsGrid|raphicsGroup|raphicsRow|rayLevel|reater|reaterEqual|reaterEqualLess|reaterEqualThan|reaterFullEqual|reaterGreater|reaterLess|reaterSlantEqual|reaterThan|reaterTilde|reenFunction|rid|ridBox|ridGraph|roebnerBasis|roupBy|roupCentralizer|roupElementFromWord|roupElementPosition|roupElementQ|roupElementToWord|roupElements|roupGenerators|roupMultiplicationTable|roupOrbits|roupOrder|roupSetwiseStabilizer|roupStabilizer|roupStabilizerChain|roupings|rowCutComponents|udermannian|uidedFilter|umbelDistribution))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:H(?:ITSCentrality|TTPErrorResponse|TTPRedirect|TTPRequest|TTPRequestData|TTPResponse|aarWavelet|adamardMatrix|alfLine|alfNormalDistribution|alfPlane|alfSpace|alftoneShading|amiltonianGraphQ|ammingDistance|ammingWindow|ankelH1|ankelH2|ankelMatrix|ankelTransform|annPoissonWindow|annWindow|aradaNortonGroupHN|araryGraph|armonicMean|armonicMeanFilter|armonicNumber|ash|atchFilling|atchShading|aversine|azardFunction|ead|eatFluxValue|eatInsulationValue|eatOutflowValue|eatRadiationValue|eatSymmetryValue|eatTemperatureCondition|eatTransferPDEComponent|eatTransferValue|eavisideLambda|eavisidePi|eavisideTheta|eldGroupHe|elmholtzPDEComponent|ermiteDecomposition|ermiteH|ermitian|ermitianMatrixQ|essenbergDecomposition|eunB|eunBPrime|eunC|eunCPrime|eunD|eunDPrime|eunG|eunGPrime|eunT|eunTPrime|exahedron|iddenMarkovProcess|ighlightGraph|ighlightImage|ighlightMesh|ighlighted|ighpassFilter|igmanSimsGroupHS|ilbertCurve|ilbertFilter|ilbertMatrix|istogram|istogram3D|istogramDistribution|istogramList|istogramTransform|istogramTransformInterpolation|istoricalPeriodData|itMissTransform|jorthDistribution|odgeDual|oeffdingD|oeffdingDTest|old|oldComplete|oldForm|oldPattern|orizontalGauge|ornerForm|ostLookup|otellingTSquareDistribution|oytDistribution|ue|umanGrowthData|umpDownHump|umpEqual|urwitzLerchPhi|urwitzZeta|yperbolicDistribution|ypercubeGraph|yperexponentialDistribution|yperfactorial|ypergeometric0F1|ypergeometric0F1Regularized|ypergeometric1F1|ypergeometric1F1Regularized|ypergeometric2F1|ypergeometric2F1Regularized|ypergeometricDistribution|ypergeometricPFQ|ypergeometricPFQRegularized|ypergeometricU|yperlink|yperplane|ypoexponentialDistribution|ypothesisTestData))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:I(?:PAddress|conData|conize|cosahedron|dentity|dentityMatrix|f|fCompiled|gnoringInactive|m|mage|mage3D|mage3DProjection|mage3DSlices|mageAccumulate|mageAdd|mageAdjust|mageAlign|mageApply|mageApplyIndexed|mageAspectRatio|mageAssemble|mageCapture|mageChannels|mageClip|mageCollage|mageColorSpace|mageCompose|mageConvolve|mageCooccurrence|mageCorners|mageCorrelate|mageCorrespondingPoints|mageCrop|mageData|mageDeconvolve|mageDemosaic|mageDifference|mageDimensions|mageDisplacements|mageDistance|mageEffect|mageExposureCombine|mageFeatureTrack|mageFileApply|mageFileFilter|mageFileScan|mageFilter|mageFocusCombine|mageForestingComponents|mageForwardTransformation|mageHistogram|mageIdentify|mageInstanceQ|mageKeypoints|mageLevels|mageLines|mageMarker|mageMeasurements|mageMesh|mageMultiply|magePad|magePartition|magePeriodogram|magePerspectiveTransformation|mageQ|mageRecolor|mageReflect|mageResize|mageRestyle|mageRotate|mageSaliencyFilter|mageScaled|mageScan|mageSubtract|mageTake|mageTransformation|mageTrim|mageType|mageValue|mageValuePositions|mageVectorscopePlot|mageWaveformPlot|mplicitD|mplicitRegion|mplies|mport|mportByteArray|mportString|mprovementImportance|nactivate|nactive|ncidenceGraph|ncidenceList|ncidenceMatrix|ncrement|ndefiniteMatrixQ|ndependenceTest|ndependentEdgeSetQ|ndependentPhysicalQuantity|ndependentUnit|ndependentUnitDimension|ndependentVertexSetQ|ndexEdgeTaggedGraph|ndexGraph|ndexed|nexactNumberQ|nfiniteLine|nfiniteLineThrough|nfinitePlane|nfix|nflationAdjust|nformation|nhomogeneousPoissonProcess|nner|nnerPolygon|nnerPolyhedron|npaint|nput|nputField|nputForm|nputNamePacket|nputNotebook|nputPacket|nputStream|nputString|nputStringPacket|nsert|nsertLinebreaks|nset|nsphere|nstall|nstallService|ntegerDigits|ntegerExponent|ntegerLength|ntegerName|ntegerPart|ntegerPartitions|ntegerQ|ntegerReverse|ntegerString|ntegrate|nteractiveTradingChart|nternallyBalancedDecomposition|nterpolatingFunction|nterpolatingPolynomial|nterpolation|nterpretation|nterpretationBox|nterpreter|nterquartileRange|nterrupt|ntersectingQ|ntersection|nterval|ntervalIntersection|ntervalMemberQ|ntervalSlider|ntervalUnion|nverse|nverseBetaRegularized|nverseBilateralLaplaceTransform|nverseBilateralZTransform|nverseCDF|nverseChiSquareDistribution|nverseContinuousWaveletTransform|nverseDistanceTransform|nverseEllipticNomeQ|nverseErf|nverseErfc|nverseFourier|nverseFourierCosTransform|nverseFourierSequenceTransform|nverseFourierSinTransform|nverseFourierTransform|nverseFunction|nverseGammaDistribution|nverseGammaRegularized|nverseGaussianDistribution|nverseGudermannian|nverseHankelTransform|nverseHaversine|nverseJacobiCD|nverseJacobiCN|nverseJacobiCS|nverseJacobiDC|nverseJacobiDN|nverseJacobiDS|nverseJacobiNC|nverseJacobiND|nverseJacobiNS|nverseJacobiSC|nverseJacobiSD|nverseJacobiSN|nverseLaplaceTransform|nverseMellinTransform|nversePermutation|nverseRadon|nverseRadonTransform|nverseSeries|nverseShortTimeFourier|nverseSpectrogram|nverseSurvivalFunction|nverseTransformedRegion|nverseWaveletTransform|nverseWeierstrassP|nverseWishartMatrixDistribution|nverseZTransform|nvisible|rreduciblePolynomialQ|slandData|solatingInterval|somorphicGraphQ|somorphicSubgraphQ|sotopeData|tem|toProcess))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:J(?:accardDissimilarity|acobiAmplitude|acobiCD|acobiCN|acobiCS|acobiDC|acobiDN|acobiDS|acobiEpsilon|acobiNC|acobiND|acobiNS|acobiP|acobiSC|acobiSD|acobiSN|acobiSymbol|acobiZN|acobiZeta|ankoGroupJ1|ankoGroupJ2|ankoGroupJ3|ankoGroupJ4|arqueBeraALMTest|ohnsonDistribution|oin|oinAcross|oinForm|oinedCurve|ordanDecomposition|ordanModelDecomposition|uliaSetBoettcher|uliaSetIterationCount|uliaSetPlot|uliaSetPoints|ulianDate))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:K(?:CoreComponents|Distribution|EdgeConnectedComponents|EdgeConnectedGraphQ|VertexConnectedComponents|VertexConnectedGraphQ|agiChart|aiserBesselWindow|aiserWindow|almanEstimator|almanFilter|arhunenLoeveDecomposition|aryTree|atzCentrality|elvinBei|elvinBer|elvinKei|elvinKer|endallTau|endallTauTest|ernelMixtureDistribution|ernelObject|ernels|ey|eyComplement|eyDrop|eyDropFrom|eyExistsQ|eyFreeQ|eyIntersection|eyMap|eyMemberQ|eySelect|eySort|eySortBy|eyTake|eyUnion|eyValueMap|eyValuePattern|eys|illProcess|irchhoffGraph|irchhoffMatrix|leinInvariantJ|napsackSolve|nightTourGraph|notData|nownUnitQ|ochCurve|olmogorovSmirnovTest|roneckerDelta|roneckerModelDecomposition|roneckerProduct|roneckerSymbol|uiperTest|umaraswamyDistribution|urtosis|uwaharaFilter))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:L(?:ABColor|CHColor|CM|QEstimatorGains|QGRegulator|QOutputRegulatorGains|QRegulatorGains|UDecomposition|UVColor|abel|abeled|aguerreL|akeData|ambdaComponents|ameC|ameCPrime|ameEigenvalueA|ameEigenvalueB|ameS|ameSPrime|aminaData|anczosWindow|andauDistribution|anguageData|anguageIdentify|aplaceDistribution|aplaceTransform|aplacian|aplacianFilter|aplacianGaussianFilter|aplacianPDETerm|ast|atitude|atitudeLongitude|atticeData|atticeReduce|aunchKernels|ayeredGraphPlot|ayeredGraphPlot3D|eafCount|eapVariant|eapYearQ|earnDistribution|earnedDistribution|eastSquares|eastSquaresFilterKernel|eftArrow|eftArrowBar|eftArrowRightArrow|eftDownTeeVector|eftDownVector|eftDownVectorBar|eftRightArrow|eftRightVector|eftTee|eftTeeArrow|eftTeeVector|eftTriangle|eftTriangleBar|eftTriangleEqual|eftUpDownVector|eftUpTeeVector|eftUpVector|eftUpVectorBar|eftVector|eftVectorBar|egended|egendreP|egendreQ|ength|engthWhile|erchPhi|ess|essEqual|essEqualGreater|essEqualThan|essFullEqual|essGreater|essLess|essSlantEqual|essThan|essTilde|etterCounts|etterNumber|etterQ|evel|eveneTest|eviCivitaTensor|evyDistribution|exicographicOrder|exicographicSort|ibraryDataType|ibraryFunction|ibraryFunctionError|ibraryFunctionInformation|ibraryFunctionLoad|ibraryFunctionUnload|ibraryLoad|ibraryUnload|iftingFilterData|iftingWaveletTransform|ighter|ikelihood|imit|indleyDistribution|ine|ineBreakChart|ineGraph|ineIntegralConvolutionPlot|ineLegend|inearFractionalOptimization|inearFractionalTransform|inearGradientFilling|inearGradientImage|inearModelFit|inearOptimization|inearRecurrence|inearSolve|inearSolveFunction|inearizingTransformationData|inkActivate|inkClose|inkConnect|inkCreate|inkInterrupt|inkLaunch|inkObject|inkPatterns|inkRankCentrality|inkRead|inkReadyQ|inkWrite|inks|iouvilleLambda|ist|istAnimate|istContourPlot|istContourPlot3D|istConvolve|istCorrelate|istCurvePathPlot|istDeconvolve|istDensityPlot|istDensityPlot3D|istFourierSequenceTransform|istInterpolation|istLineIntegralConvolutionPlot|istLinePlot|istLinePlot3D|istLogLinearPlot|istLogLogPlot|istLogPlot|istPicker|istPickerBox|istPlay|istPlot|istPlot3D|istPointPlot3D|istPolarPlot|istQ|istSliceContourPlot3D|istSliceDensityPlot3D|istSliceVectorPlot3D|istStepPlot|istStreamDensityPlot|istStreamPlot|istStreamPlot3D|istSurfacePlot3D|istVectorDensityPlot|istVectorDisplacementPlot|istVectorDisplacementPlot3D|istVectorPlot|istVectorPlot3D|istZTransform|ocalAdaptiveBinarize|ocalCache|ocalClusteringCoefficient|ocalEvaluate|ocalObject|ocalObjects|ocalSubmit|ocalSymbol|ocalTime|ocalTimeZone|ocationEquivalenceTest|ocationTest|ocator|ocatorPane|og|og10|og2|ogBarnesG|ogGamma|ogGammaDistribution|ogIntegral|ogLikelihood|ogLinearPlot|ogLogPlot|ogLogisticDistribution|ogMultinormalDistribution|ogNormalDistribution|ogPlot|ogRankTest|ogSeriesDistribution|ogicalExpand|ogisticDistribution|ogisticSigmoid|ogitModelFit|ongLeftArrow|ongLeftRightArrow|ongRightArrow|ongest|ongestCommonSequence|ongestCommonSequencePositions|ongestCommonSubsequence|ongestCommonSubsequencePositions|ongestOrderedSequence|ongitude|ookup|oopFreeGraphQ|owerCaseQ|owerLeftArrow|owerRightArrow|owerTriangularMatrix|owerTriangularMatrixQ|owerTriangularize|owpassFilter|ucasL|uccioSamiComponents|unarEclipse|yapunovSolve|yonsGroupLy))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:M(?:AProcess|achineNumberQ|agnify|ailReceiverFunction|ajority|akeBoxes|akeExpression|anagedLibraryExpressionID|anagedLibraryExpressionQ|andelbrotSetBoettcher|andelbrotSetDistance|andelbrotSetIterationCount|andelbrotSetMemberQ|andelbrotSetPlot|angoldtLambda|anhattanDistance|anipulate|anipulator|annWhitneyTest|annedSpaceMissionData|antissaExponent|ap|apAll|apApply|apAt|apIndexed|apThread|archenkoPasturDistribution|arcumQ|ardiaCombinedTest|ardiaKurtosisTest|ardiaSkewnessTest|arginalDistribution|arkovProcessProperties|assConcentrationCondition|assFluxValue|assImpermeableBoundaryValue|assOutflowValue|assSymmetryValue|assTransferValue|assTransportPDEComponent|atchQ|atchingDissimilarity|aterialShading|athMLForm|athematicalFunctionData|athieuC|athieuCPrime|athieuCharacteristicA|athieuCharacteristicB|athieuCharacteristicExponent|athieuGroupM11|athieuGroupM12|athieuGroupM22|athieuGroupM23|athieuGroupM24|athieuS|athieuSPrime|atrices|atrixExp|atrixForm|atrixFunction|atrixLog|atrixNormalDistribution|atrixPlot|atrixPower|atrixPropertyDistribution|atrixQ|atrixRank|atrixTDistribution|ax|axDate|axDetect|axFilter|axLimit|axMemoryUsed|axStableDistribution|axValue|aximalBy|aximize|axwellDistribution|cLaughlinGroupMcL|ean|eanClusteringCoefficient|eanDegreeConnectivity|eanDeviation|eanFilter|eanGraphDistance|eanNeighborDegree|eanShift|eanShiftFilter|edian|edianDeviation|edianFilter|edicalTestData|eijerG|eijerGReduce|eixnerDistribution|ellinConvolve|ellinTransform|emberQ|emoryAvailable|emoryConstrained|emoryInUse|engerMesh|enuPacket|enuView|erge|ersennePrimeExponent|ersennePrimeExponentQ|eshCellCount|eshCellIndex|eshCells|eshConnectivityGraph|eshCoordinates|eshPrimitives|eshRegion|eshRegionQ|essage|essageDialog|essageList|essageName|essagePacket|essages|eteorShowerData|exicanHatWavelet|eyerWavelet|in|inDate|inDetect|inFilter|inLimit|inMax|inStableDistribution|inValue|ineralData|inimalBy|inimalPolynomial|inimalStateSpaceModel|inimize|inimumTimeIncrement|inkowskiQuestionMark|inorPlanetData|inors|inus|inusPlus|issing|issingQ|ittagLefflerE|ixedFractionParts|ixedGraphQ|ixedMagnitude|ixedRadix|ixedRadixQuantity|ixedUnit|ixtureDistribution|od|odelPredictiveController|odularInverse|odularLambda|odule|oebiusMu|oment|omentConvert|omentEvaluate|omentGeneratingFunction|omentOfInertia|onitor|onomialList|onsterGroupM|oonPhase|oonPosition|orletWavelet|orphologicalBinarize|orphologicalBranchPoints|orphologicalComponents|orphologicalEulerNumber|orphologicalGraph|orphologicalPerimeter|orphologicalTransform|ortalityData|ost|ountainData|ouseAnnotation|ouseAppearance|ousePosition|ouseover|ovieData|ovingAverage|ovingMap|ovingMedian|oyalDistribution|ulticolumn|ultigraphQ|ultinomial|ultinomialDistribution|ultinormalDistribution|ultiplicativeOrder|ultiplySides|ultivariateHypergeometricDistribution|ultivariatePoissonDistribution|ultivariateTDistribution))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:N(?:|ArgMax|ArgMin|Cache|CaputoD|DEigensystem|DEigenvalues|DSolve|DSolveValue|Expectation|FractionalD|Integrate|MaxValue|Maximize|MinValue|Minimize|Probability|Product|Roots|Solve|SolveValues|Sum|akagamiDistribution|ameQ|ames|and|earest|earestFunction|earestMeshCells|earestNeighborGraph|earestTo|ebulaData|eedlemanWunschSimilarity|eeds|egative|egativeBinomialDistribution|egativeDefiniteMatrixQ|egativeMultinomialDistribution|egativeSemidefiniteMatrixQ|egativelyOrientedPoints|eighborhoodData|eighborhoodGraph|est|estGraph|estList|estWhile|estWhileList|estedGreaterGreater|estedLessLess|eumannValue|evilleThetaC|evilleThetaD|evilleThetaN|evilleThetaS|extCell|extDate|extPrime|icholsPlot|ightHemisphere|onCommutativeMultiply|onNegative|onPositive|oncentralBetaDistribution|oncentralChiSquareDistribution|oncentralFRatioDistribution|oncentralStudentTDistribution|ondimensionalizationTransform|oneTrue|onlinearModelFit|onlinearStateSpaceModel|onlocalMeansFilter|or|orlundB|orm|ormal|ormalDistribution|ormalMatrixQ|ormalize|ormalizedSquaredEuclideanDistance|ot|otCongruent|otCupCap|otDoubleVerticalBar|otElement|otEqualTilde|otExists|otGreater|otGreaterEqual|otGreaterFullEqual|otGreaterGreater|otGreaterLess|otGreaterSlantEqual|otGreaterTilde|otHumpDownHump|otHumpEqual|otLeftTriangle|otLeftTriangleBar|otLeftTriangleEqual|otLess|otLessEqual|otLessFullEqual|otLessGreater|otLessLess|otLessSlantEqual|otLessTilde|otNestedGreaterGreater|otNestedLessLess|otPrecedes|otPrecedesEqual|otPrecedesSlantEqual|otPrecedesTilde|otReverseElement|otRightTriangle|otRightTriangleBar|otRightTriangleEqual|otSquareSubset|otSquareSubsetEqual|otSquareSuperset|otSquareSupersetEqual|otSubset|otSubsetEqual|otSucceeds|otSucceedsEqual|otSucceedsSlantEqual|otSucceedsTilde|otSuperset|otSupersetEqual|otTilde|otTildeEqual|otTildeFullEqual|otTildeTilde|otVerticalBar|otebook|otebookApply|otebookClose|otebookDelete|otebookDirectory|otebookEvaluate|otebookFileName|otebookFind|otebookGet|otebookImport|otebookInformation|otebookLocate|otebookObject|otebookOpen|otebookPrint|otebookPut|otebookRead|otebookSave|otebookSelection|otebookTemplate|otebookWrite|otebooks|othing|uclearExplosionData|uclearReactorData|ullSpace|umberCompose|umberDecompose|umberDigit|umberExpand|umberFieldClassNumber|umberFieldDiscriminant|umberFieldFundamentalUnits|umberFieldIntegralBasis|umberFieldNormRepresentatives|umberFieldRegulator|umberFieldRootsOfUnity|umberFieldSignature|umberForm|umberLinePlot|umberQ|umerator|umeratorDenominator|umericQ|umericalOrder|umericalSort|uttallWindow|yquistPlot))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:O(?:|NanGroupON|bservabilityGramian|bservabilityMatrix|bservableDecomposition|bservableModelQ|ceanData|ctahedron|ddQ|ff|ffset|n|nce|pacity|penAppend|penRead|penWrite|pener|penerView|pening|perate|ptimumFlowData|ptionValue|ptional|ptionalElement|ptions|ptionsPattern|r|rder|rderDistribution|rderedQ|rdering|rderingBy|rderlessPatternSequence|rnsteinUhlenbeckProcess|rthogonalMatrixQ|rthogonalize|uter|uterPolygon|uterPolyhedron|utputControllabilityMatrix|utputControllableModelQ|utputForm|utputNamePacket|utputResponse|utputStream|verBar|verDot|verHat|verTilde|verVector|verflow|verlay|verscript|verscriptBox|wenT|wnValues))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:P(?:DF|ERTDistribution|IDTune|acletDataRebuild|acletDirectoryLoad|acletDirectoryUnload|acletDisable|acletEnable|acletFind|acletFindRemote|acletInstall|acletInstallSubmit|acletNewerQ|acletObject|acletSiteObject|acletSiteRegister|acletSiteUnregister|acletSiteUpdate|acletSites|acletUninstall|adLeft|adRight|addedForm|adeApproximant|ageRankCentrality|airedBarChart|airedHistogram|airedSmoothHistogram|airedTTest|airedZTest|aletteNotebook|alindromeQ|ane|aneSelector|anel|arabolicCylinderD|arallelArray|arallelAxisPlot|arallelCombine|arallelDo|arallelEvaluate|arallelKernels|arallelMap|arallelNeeds|arallelProduct|arallelSubmit|arallelSum|arallelTable|arallelTry|arallelepiped|arallelize|arallelogram|arameterMixtureDistribution|arametricConvexOptimization|arametricFunction|arametricNDSolve|arametricNDSolveValue|arametricPlot|arametricPlot3D|arametricRegion|arentBox|arentCell|arentDirectory|arentNotebook|aretoDistribution|aretoPickandsDistribution|arkData|art|artOfSpeech|artialCorrelationFunction|articleAcceleratorData|articleData|artition|artitionsP|artitionsQ|arzenWindow|ascalDistribution|aste|asteButton|athGraph|athGraphQ|attern|atternSequence|atternTest|aulWavelet|auliMatrix|ause|eakDetect|eanoCurve|earsonChiSquareTest|earsonCorrelationTest|earsonDistribution|ercentForm|erfectNumber|erfectNumberQ|erimeter|eriodicBoundaryCondition|eriodogram|eriodogramArray|ermanent|ermissionsGroup|ermissionsGroupMemberQ|ermissionsGroups|ermissionsKey|ermissionsKeys|ermutationCycles|ermutationCyclesQ|ermutationGroup|ermutationLength|ermutationList|ermutationListQ|ermutationMatrix|ermutationMax|ermutationMin|ermutationOrder|ermutationPower|ermutationProduct|ermutationReplace|ermutationSupport|ermutations|ermute|eronaMalikFilter|ersonData|etersenGraph|haseMargins|hongShading|hysicalSystemData|ick|ieChart|ieChart3D|iecewise|iecewiseExpand|illaiTrace|illaiTraceTest|ingTime|ixelValue|ixelValuePositions|laced|laceholder|lanarAngle|lanarFaceList|lanarGraph|lanarGraphQ|lanckRadiationLaw|laneCurveData|lanetData|lanetaryMoonData|lantData|lay|lot|lot3D|luralize|lus|lusMinus|ochhammer|oint|ointFigureChart|ointLegend|ointLight|ointSize|oissonConsulDistribution|oissonDistribution|oissonPDEComponent|oissonProcess|oissonWindow|olarPlot|olyGamma|olyLog|olyaAeppliDistribution|olygon|olygonAngle|olygonCoordinates|olygonDecomposition|olygonalNumber|olyhedron|olyhedronAngle|olyhedronCoordinates|olyhedronData|olyhedronDecomposition|olyhedronGenus|olynomialExpressionQ|olynomialExtendedGCD|olynomialGCD|olynomialLCM|olynomialMod|olynomialQ|olynomialQuotient|olynomialQuotientRemainder|olynomialReduce|olynomialRemainder|olynomialSumOfSquaresList|opupMenu|opupView|opupWindow|osition|ositionIndex|ositionLargest|ositionSmallest|ositive|ositiveDefiniteMatrixQ|ositiveSemidefiniteMatrixQ|ositivelyOrientedPoints|ossibleZeroQ|ostfix|ower|owerDistribution|owerExpand|owerMod|owerModList|owerRange|owerSpectralDensity|owerSymmetricPolynomial|owersRepresentations|reDecrement|reIncrement|recedenceForm|recedes|recedesEqual|recedesSlantEqual|recedesTilde|recision|redict|redictorFunction|redictorMeasurements|redictorMeasurementsObject|reemptProtect|refix|repend|rependTo|reviousCell|reviousDate|riceGraphDistribution|rime|rimeNu|rimeOmega|rimePi|rimePowerQ|rimeQ|rimeZetaP|rimitivePolynomialQ|rimitiveRoot|rimitiveRootList|rincipalComponents|rintTemporary|rintableASCIIQ|rintout3D|rism|rivateKey|robability|robabilityDistribution|robabilityPlot|robabilityScalePlot|robitModelFit|rocessConnection|rocessInformation|rocessObject|rocessParameterAssumptions|rocessParameterQ|rocessStatus|rocesses|roduct|roductDistribution|roductLog|rogressIndicator|rojection|roportion|roportional|rotect|roteinData|runing|seudoInverse|sychrometricPropertyData|ublicKey|ulsarData|ut|utAppend|yramid))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:Q(?:Binomial|Factorial|Gamma|HypergeometricPFQ|Pochhammer|PolyGamma|RDecomposition|nDispersion|uadraticIrrationalQ|uadraticOptimization|uantile|uantilePlot|uantity|uantityArray|uantityDistribution|uantityForm|uantityMagnitude|uantityQ|uantityUnit|uantityVariable|uantityVariableCanonicalUnit|uantityVariableDimensions|uantityVariableIdentifier|uantityVariablePhysicalQuantity|uartileDeviation|uartileSkewness|uartiles|uery|ueueProperties|ueueingNetworkProcess|ueueingProcess|uiet|uietEcho|uotient|uotientRemainder))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:R(?:GBColor|Solve|SolveValue|adialAxisPlot|adialGradientFilling|adialGradientImage|adialityCentrality|adicalBox|adioButton|adioButtonBar|adon|adonTransform|amanujanTau|amanujanTauL|amanujanTauTheta|amanujanTauZ|amp|andomChoice|andomColor|andomComplex|andomDate|andomEntity|andomFunction|andomGeneratorState|andomGeoPosition|andomGraph|andomImage|andomInteger|andomPermutation|andomPoint|andomPolygon|andomPolyhedron|andomPrime|andomReal|andomSample|andomTime|andomVariate|andomWalkProcess|andomWord|ange|angeFilter|ankedMax|ankedMin|arerProbability|aster|aster3D|asterize|ational|ationalExpressionQ|ationalize|atios|awBoxes|awData|ayleighDistribution|e|eIm|eImPlot|eactionPDETerm|ead|eadByteArray|eadLine|eadList|eadString|ealAbs|ealDigits|ealExponent|ealSign|eap|econstructionMesh|ectangle|ectangleChart|ectangleChart3D|ectangularRepeatingElement|ecurrenceFilter|ecurrenceTable|educe|efine|eflectionMatrix|eflectionTransform|efresh|egion|egionBinarize|egionBoundary|egionBounds|egionCentroid|egionCongruent|egionConvert|egionDifference|egionDilation|egionDimension|egionDisjoint|egionDistance|egionDistanceFunction|egionEmbeddingDimension|egionEqual|egionErosion|egionFit|egionImage|egionIntersection|egionMeasure|egionMember|egionMemberFunction|egionMoment|egionNearest|egionNearestFunction|egionPlot|egionPlot3D|egionProduct|egionQ|egionResize|egionSimilar|egionSymmetricDifference|egionUnion|egionWithin|egularExpression|egularPolygon|egularlySampledQ|elationGraph|eleaseHold|eliabilityDistribution|eliefImage|eliefPlot|emove|emoveAlphaChannel|emoveBackground|emoveDiacritics|emoveInputStreamMethod|emoveOutputStreamMethod|emoveUsers|enameDirectory|enameFile|enewalProcess|enkoChart|epairMesh|epeated|epeatedNull|epeatedTiming|epeatingElement|eplace|eplaceAll|eplaceAt|eplaceImageValue|eplaceList|eplacePart|eplacePixelValue|eplaceRepeated|esamplingAlgorithmData|escale|escalingTransform|esetDirectory|esidue|esidueSum|esolve|esourceData|esourceObject|esourceSearch|esponseForm|est|estricted|esultant|eturn|eturnExpressionPacket|eturnPacket|eturnTextPacket|everse|everseBiorthogonalSplineWavelet|everseElement|everseEquilibrium|everseGraph|everseSort|everseSortBy|everseUpEquilibrium|evolutionPlot3D|iccatiSolve|iceDistribution|idgeFilter|iemannR|iemannSiegelTheta|iemannSiegelZ|iemannXi|iffle|ightArrow|ightArrowBar|ightArrowLeftArrow|ightComposition|ightCosetRepresentative|ightDownTeeVector|ightDownVector|ightDownVectorBar|ightTee|ightTeeArrow|ightTeeVector|ightTriangle|ightTriangleBar|ightTriangleEqual|ightUpDownVector|ightUpTeeVector|ightUpVector|ightUpVectorBar|ightVector|ightVectorBar|iskAchievementImportance|iskReductionImportance|obustConvexOptimization|ogersTanimotoDissimilarity|ollPitchYawAngles|ollPitchYawMatrix|omanNumeral|oot|ootApproximant|ootIntervals|ootLocusPlot|ootMeanSquare|ootOfUnityQ|ootReduce|ootSum|oots|otate|otateLeft|otateRight|otationMatrix|otationTransform|ound|ow|owBox|owReduce|udinShapiro|udvalisGroupRu|ule|uleDelayed|ulePlot|un|unProcess|unThrough|ussellRaoDissimilarity))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:S(?:ARIMAProcess|ARMAProcess|ASTriangle|SSTriangle|ameAs|ameQ|ampledSoundFunction|ampledSoundList|atelliteData|atisfiabilityCount|atisfiabilityInstances|atisfiableQ|ave|avitzkyGolayMatrix|awtoothWave|cale|caled|calingMatrix|calingTransform|can|cheduledTask|churDecomposition|cientificForm|corerGi|corerGiPrime|corerHi|corerHiPrime|ec|ech|echDistribution|econdOrderConeOptimization|ectorChart|ectorChart3D|eedRandom|elect|electComponents|electFirst|electedCells|electedNotebook|electionCreateCell|electionEvaluate|electionEvaluateCreateCell|electionMove|emanticImport|emanticImportString|emanticInterpretation|emialgebraicComponentInstances|emidefiniteOptimization|endMail|endMessage|equence|equenceAlignment|equenceCases|equenceCount|equenceFold|equenceFoldList|equencePosition|equenceReplace|equenceSplit|eries|eriesCoefficient|eriesData|erviceConnect|erviceDisconnect|erviceExecute|erviceObject|essionSubmit|essionTime|et|etAccuracy|etAlphaChannel|etAttributes|etCloudDirectory|etCookies|etDelayed|etDirectory|etEnvironment|etFileDate|etOptions|etPermissions|etPrecision|etSelectedNotebook|etSharedFunction|etSharedVariable|etStreamPosition|etSystemOptions|etUsers|etter|etterBar|etting|hallow|hannonWavelet|hapiroWilkTest|hare|harpen|hearingMatrix|hearingTransform|hellRegion|henCastanMatrix|hiftRegisterSequence|hiftedGompertzDistribution|hort|hortDownArrow|hortLeftArrow|hortRightArrow|hortTimeFourier|hortTimeFourierData|hortUpArrow|hortest|hortestPathFunction|how|iderealTime|iegelTheta|iegelTukeyTest|ierpinskiCurve|ierpinskiMesh|ign|ignTest|ignature|ignedRankTest|ignedRegionDistance|impleGraph|impleGraphQ|implePolygonQ|implePolyhedronQ|implex|implify|in|inIntegral|inc|inghMaddalaDistribution|ingularValueDecomposition|ingularValueList|ingularValuePlot|inh|inhIntegral|ixJSymbol|keleton|keletonTransform|kellamDistribution|kewNormalDistribution|kewness|kip|liceContourPlot3D|liceDensityPlot3D|liceDistribution|liceVectorPlot3D|lideView|lider|lider2D|liderBox|lot|lotSequence|mallCircle|mithDecomposition|mithDelayCompensator|mithWatermanSimilarity|moothDensityHistogram|moothHistogram|moothHistogram3D|moothKernelDistribution|nDispersion|ocketConnect|ocketListen|ocketListener|ocketObject|ocketOpen|ocketReadMessage|ocketReadyQ|ocketWaitAll|ocketWaitNext|ockets|okalSneathDissimilarity|olarEclipse|olarSystemFeatureData|olarTime|olidAngle|olidData|olidRegionQ|olve|olveAlways|olveValues|ort|ortBy|ound|oundNote|ourcePDETerm|ow|paceCurveData|pacer|pan|parseArray|parseArrayQ|patialGraphDistribution|patialMedian|peak|pearmanRankTest|pearmanRho|peciesData|pectralLineData|pectrogram|pectrogramArray|pecularity|peechSynthesize|pellingCorrectionList|phere|pherePoints|phericalBesselJ|phericalBesselY|phericalHankelH1|phericalHankelH2|phericalHarmonicY|phericalPlot3D|phericalShell|pheroidalEigenvalue|pheroidalJoiningFactor|pheroidalPS|pheroidalPSPrime|pheroidalQS|pheroidalQSPrime|pheroidalRadialFactor|pheroidalS1|pheroidalS1Prime|pheroidalS2|pheroidalS2Prime|plicedDistribution|plit|plitBy|pokenString|potLight|qrt|qrtBox|quare|quareFreeQ|quareIntersection|quareMatrixQ|quareRepeatingElement|quareSubset|quareSubsetEqual|quareSuperset|quareSupersetEqual|quareUnion|quareWave|quaredEuclideanDistance|quaresR|tableDistribution|tack|tackBegin|tackComplete|tackInhibit|tackedDateListPlot|tackedListPlot|tadiumShape|tandardAtmosphereData|tandardDeviation|tandardDeviationFilter|tandardForm|tandardOceanData|tandardize|tandbyDistribution|tar|tarClusterData|tarData|tarGraph|tartProcess|tateFeedbackGains|tateOutputEstimator|tateResponse|tateSpaceModel|tateSpaceTransform|tateTransformationLinearize|tationaryDistribution|tationaryWaveletPacketTransform|tationaryWaveletTransform|tatusArea|tatusCentrality|tieltjesGamma|tippleShading|tirlingS1|tirlingS2|toppingPowerData|tratonovichProcess|treamDensityPlot|treamPlot|treamPlot3D|treamPosition|treams|tringCases|tringContainsQ|tringCount|tringDelete|tringDrop|tringEndsQ|tringExpression|tringExtract|tringForm|tringFormat|tringFormatQ|tringFreeQ|tringInsert|tringJoin|tringLength|tringMatchQ|tringPadLeft|tringPadRight|tringPart|tringPartition|tringPosition|tringQ|tringRepeat|tringReplace|tringReplaceList|tringReplacePart|tringReverse|tringRiffle|tringRotateLeft|tringRotateRight|tringSkeleton|tringSplit|tringStartsQ|tringTake|tringTakeDrop|tringTemplate|tringToByteArray|tringToStream|tringTrim|tripBoxes|tructuralImportance|truveH|truveL|tudentTDistribution|tyle|tyleBox|tyleData|ubMinus|ubPlus|ubStar|ubValues|ubdivide|ubfactorial|ubgraph|ubresultantPolynomialRemainders|ubresultantPolynomials|ubresultants|ubscript|ubscriptBox|ubsequences|ubset|ubsetEqual|ubsetMap|ubsetQ|ubsets|ubstitutionSystem|ubsuperscript|ubsuperscriptBox|ubtract|ubtractFrom|ubtractSides|ucceeds|ucceedsEqual|ucceedsSlantEqual|ucceedsTilde|uccess|uchThat|um|umConvergence|unPosition|unrise|unset|uperDagger|uperMinus|uperPlus|uperStar|upernovaData|uperscript|uperscriptBox|uperset|upersetEqual|urd|urfaceArea|urfaceData|urvivalDistribution|urvivalFunction|urvivalModel|urvivalModelFit|uzukiDistribution|uzukiGroupSuz|watchLegend|witch|ymbol|ymbolName|ymletWavelet|ymmetric|ymmetricGroup|ymmetricKey|ymmetricMatrixQ|ymmetricPolynomial|ymmetricReduction|ymmetrize|ymmetrizedArray|ymmetrizedArrayRules|ymmetrizedDependentComponents|ymmetrizedIndependentComponents|ymmetrizedReplacePart|ynonyms|yntaxInformation|yntaxLength|yntaxPacket|yntaxQ|ystemDialogInput|ystemInformation|ystemOpen|ystemOptions|ystemProcessData|ystemProcesses|ystemsConnectionsModel|ystemsModelControllerData|ystemsModelDelay|ystemsModelDelayApproximate|ystemsModelDelete|ystemsModelDimensions|ystemsModelExtract|ystemsModelFeedbackConnect|ystemsModelLinearity|ystemsModelMerge|ystemsModelOrder|ystemsModelParallelConnect|ystemsModelSeriesConnect|ystemsModelStateFeedbackConnect|ystemsModelVectorRelativeOrders))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:T(?:Test|abView|able|ableForm|agBox|agSet|agSetDelayed|agUnset|ake|akeDrop|akeLargest|akeLargestBy|akeList|akeSmallest|akeSmallestBy|akeWhile|ally|an|anh|askAbort|askExecute|askObject|askRemove|askResume|askSuspend|askWait|asks|autologyQ|eXForm|elegraphProcess|emplateApply|emplateBox|emplateExpression|emplateIf|emplateObject|emplateSequence|emplateSlot|emplateWith|emporalData|ensorContract|ensorDimensions|ensorExpand|ensorProduct|ensorRank|ensorReduce|ensorSymmetry|ensorTranspose|ensorWedge|erminatedEvaluation|estReport|estReportObject|estResultObject|etrahedron|ext|extCell|extData|extGrid|extPacket|extRecognize|extSentences|extString|extTranslation|extWords|exture|herefore|hermodynamicData|hermometerGauge|hickness|hinning|hompsonGroupTh|hread|hreeJSymbol|hreshold|hrough|hrow|hueMorse|humbnail|ideData|ilde|ildeEqual|ildeFullEqual|ildeTilde|imeConstrained|imeObject|imeObjectQ|imeRemaining|imeSeries|imeSeriesAggregate|imeSeriesForecast|imeSeriesInsert|imeSeriesInvertibility|imeSeriesMap|imeSeriesMapThread|imeSeriesModel|imeSeriesModelFit|imeSeriesResample|imeSeriesRescale|imeSeriesShift|imeSeriesThread|imeSeriesWindow|imeSystemConvert|imeUsed|imeValue|imeZoneConvert|imeZoneOffset|imelinePlot|imes|imesBy|iming|itsGroupT|oBoxes|oCharacterCode|oContinuousTimeModel|oDiscreteTimeModel|oEntity|oExpression|oInvertibleTimeSeries|oLowerCase|oNumberField|oPolarCoordinates|oRadicals|oRules|oSphericalCoordinates|oString|oUpperCase|oeplitzMatrix|ogether|oggler|ogglerBar|ooltip|oonShading|opHatTransform|opologicalSort|orus|orusGraph|otal|otalVariationFilter|ouchPosition|r|race|raceDialog|racePrint|raceScan|racyWidomDistribution|radingChart|raditionalForm|ransferFunctionCancel|ransferFunctionExpand|ransferFunctionFactor|ransferFunctionModel|ransferFunctionPoles|ransferFunctionTransform|ransferFunctionZeros|ransformationFunction|ransformationMatrix|ransformedDistribution|ransformedField|ransformedProcess|ransformedRegion|ransitiveClosureGraph|ransitiveReductionGraph|ranslate|ranslationTransform|ransliterate|ranspose|ravelDirections|ravelDirectionsData|ravelDistance|ravelDistanceList|ravelTime|reeForm|reeGraph|reeGraphQ|reePlot|riangle|riangleWave|riangularDistribution|riangulateMesh|rigExpand|rigFactor|rigFactorList|rigReduce|rigToExp|rigger|rimmedMean|rimmedVariance|ropicalStormData|rueQ|runcatedDistribution|runcatedPolyhedron|sallisQExponentialDistribution|sallisQGaussianDistribution|ube|ukeyLambdaDistribution|ukeyWindow|unnelData|uples|uranGraph|uringMachine|uttePolynomial|woWayRule|ypeHint))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:U(?:RL|RLBuild|RLDecode|RLDispatcher|RLDownload|RLEncode|RLExecute|RLExpand|RLParse|RLQueryDecode|RLQueryEncode|RLRead|RLResponseTime|RLShorten|RLSubmit|nateQ|ncompress|nderBar|nderflow|nderoverscript|nderoverscriptBox|nderscript|nderscriptBox|nderseaFeatureData|ndirectedEdge|ndirectedGraph|ndirectedGraphQ|nequal|nequalTo|nevaluated|niformDistribution|niformGraphDistribution|niformPolyhedron|niformSumDistribution|ninstall|nion|nionPlus|nique|nitBox|nitConvert|nitDimensions|nitRootTest|nitSimplify|nitStep|nitTriangle|nitVector|nitaryMatrixQ|nitize|niverseModelData|niversityData|nixTime|nprotect|nsameQ|nset|nsetShared|ntil|pArrow|pArrowBar|pArrowDownArrow|pDownArrow|pEquilibrium|pSet|pSetDelayed|pTee|pTeeArrow|pTo|pValues|pdate|pperCaseQ|pperLeftArrow|pperRightArrow|pperTriangularMatrix|pperTriangularMatrixQ|pperTriangularize|psample|singFrontEnd))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:V(?:alueQ|alues|ariables|ariance|arianceEquivalenceTest|arianceGammaDistribution|arianceTest|ectorAngle|ectorDensityPlot|ectorDisplacementPlot|ectorDisplacementPlot3D|ectorGreater|ectorGreaterEqual|ectorLess|ectorLessEqual|ectorPlot|ectorPlot3D|ectorQ|ectors|ee|erbatim|erificationTest|ertexAdd|ertexChromaticNumber|ertexComponent|ertexConnectivity|ertexContract|ertexCorrelationSimilarity|ertexCosineSimilarity|ertexCount|ertexCoverQ|ertexDegree|ertexDelete|ertexDiceSimilarity|ertexEccentricity|ertexInComponent|ertexInComponentGraph|ertexInDegree|ertexIndex|ertexJaccardSimilarity|ertexList|ertexOutComponent|ertexOutComponentGraph|ertexOutDegree|ertexQ|ertexReplace|ertexTransitiveGraphQ|ertexWeightedGraphQ|erticalBar|erticalGauge|erticalSeparator|erticalSlider|erticalTilde|oiceStyleData|oigtDistribution|olcanoData|olume|onMisesDistribution|oronoiMesh))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:W(?:aitAll|aitNext|akebyDistribution|alleniusHypergeometricDistribution|aringYuleDistribution|arpingCorrespondence|arpingDistance|atershedComponents|atsonUSquareTest|attsStrogatzGraphDistribution|avePDEComponent|aveletBestBasis|aveletFilterCoefficients|aveletImagePlot|aveletListPlot|aveletMapIndexed|aveletMatrixPlot|aveletPhi|aveletPsi|aveletScalogram|aveletThreshold|eakStationarity|eaklyConnectedComponents|eaklyConnectedGraphComponents|eaklyConnectedGraphQ|eatherData|eatherForecastData|eberE|edge|eibullDistribution|eierstrassE1|eierstrassE2|eierstrassE3|eierstrassEta1|eierstrassEta2|eierstrassEta3|eierstrassHalfPeriodW1|eierstrassHalfPeriodW2|eierstrassHalfPeriodW3|eierstrassHalfPeriods|eierstrassInvariantG2|eierstrassInvariantG3|eierstrassInvariants|eierstrassP|eierstrassPPrime|eierstrassSigma|eierstrassZeta|eightedAdjacencyGraph|eightedAdjacencyMatrix|eightedData|eightedGraphQ|elchWindow|heelGraph|henEvent|hich|hile|hiteNoiseProcess|hittakerM|hittakerW|ienerFilter|ienerProcess|ignerD|ignerSemicircleDistribution|ikipediaData|ilksW|ilksWTest|indDirectionData|indSpeedData|indVectorData|indingCount|indingPolygon|insorizedMean|insorizedVariance|ishartMatrixDistribution|ith|olframAlpha|olframLanguageData|ordCloud|ordCount|ordCounts|ordData|ordDefinition|ordFrequency|ordFrequencyData|ordList|ordStem|ordTranslation|rite|riteLine|riteString|ronskian))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:X(?:MLElement|MLObject|MLTemplate|YZColor|nor|or))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:Y(?:uleDissimilarity))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:Z(?:IPCodeData|Test|Transform|ernikeR|eroSymmetric|eta|etaZero|ipfDistribution))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"System`(?:A(?:cceptanceThreshold|ccuracyGoal|ctiveStyle|ddOnHelpPath|djustmentBoxOptions|lignment|lignmentPoint|llowGroupClose|llowInlineCells|llowLooseGrammar|llowReverseGroupClose|llowScriptLevelChange|llowVersionUpdate|llowedCloudExtraParameters|llowedCloudParameterExtensions|llowedDimensions|llowedFrequencyRange|llowedHeads|lternativeHypothesis|ltitudeMethod|mbiguityFunction|natomySkinStyle|nchoredSearch|nimationDirection|nimationRate|nimationRepetitions|nimationRunTime|nimationRunning|nimationTimeIndex|nnotationRules|ntialiasing|ppearance|ppearanceElements|ppearanceRules|spectRatio|ssociationFormat|ssumptions|synchronous|ttachedCell|udioChannelAssignment|udioEncoding|udioInputDevice|udioLabel|udioOutputDevice|uthentication|utoAction|utoCopy|utoDelete|utoGeneratedPackage|utoIndent|utoItalicWords|utoMultiplicationSymbol|utoOpenNotebooks|utoOpenPalettes|utoOperatorRenderings|utoRemove|utoScroll|utoSpacing|utoloadPath|utorunSequencing|xes|xesEdge|xesLabel|xesOrigin|xesStyle))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:B(?:ackground|arOrigin|arSpacing|aseStyle|aselinePosition|inaryFormat|ookmarks|ooleanStrings|oundaryStyle|oxBaselineShift|oxFormFormatTypes|oxFrame|oxMargins|oxRatios|oxStyle|oxed|ubbleScale|ubbleSizes|uttonBoxOptions|uttonData|uttonFunction|uttonMinHeight|uttonSource|yteOrdering))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:C(?:alendarType|alloutMarker|alloutStyle|aptureRunning|aseOrdering|elestialSystem|ellAutoOverwrite|ellBaseline|ellBracketOptions|ellChangeTimes|ellContext|ellDingbat|ellDingbatMargin|ellDynamicExpression|ellEditDuplicate|ellEpilog|ellEvaluationDuplicate|ellEvaluationFunction|ellEventActions|ellFrame|ellFrameColor|ellFrameLabelMargins|ellFrameLabels|ellFrameMargins|ellGrouping|ellGroupingRules|ellHorizontalScrolling|ellID|ellLabel|ellLabelAutoDelete|ellLabelMargins|ellLabelPositioning|ellLabelStyle|ellLabelTemplate|ellMargins|ellOpen|ellProlog|ellSize|ellTags|haracterEncoding|haracterEncodingsPath|hartBaseStyle|hartElementFunction|hartElements|hartLabels|hartLayout|hartLegends|hartStyle|lassPriors|lickToCopyEnabled|lipPlanes|lipPlanesStyle|lipRange|lippingStyle|losingAutoSave|loudBase|loudObjectNameFormat|loudObjectURLType|lusterDissimilarityFunction|odeAssistOptions|olorCoverage|olorFunction|olorFunctionBinning|olorFunctionScaling|olorRules|olorSelectorSettings|olorSpace|olumnAlignments|olumnLines|olumnSpacings|olumnWidths|olumnsEqual|ombinerFunction|ommonDefaultFormatTypes|ommunityBoundaryStyle|ommunityLabels|ommunityRegionStyle|ompilationOptions|ompilationTarget|ompiled|omplexityFunction|ompressionLevel|onfidenceLevel|onfidenceRange|onfidenceTransform|onfigurationPath|onstants|ontentPadding|ontentSelectable|ontentSize|ontinuousAction|ontourLabels|ontourShading|ontourStyle|ontours|ontrolPlacement|ontrolType|ontrollerLinking|ontrollerMethod|ontrollerPath|ontrolsRendering|onversionRules|ookieFunction|oordinatesToolOptions|opyFunction|opyable|ornerNeighbors|ounterAssignments|ounterFunction|ounterIncrements|ounterStyleMenuListing|ovarianceEstimatorFunction|reateCellID|reateIntermediateDirectories|riterionFunction|ubics|urveClosed))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:D(?:ataRange|ataReversed|atasetTheme|ateFormat|ateFunction|ateGranularity|ateReduction|ateTicksFormat|ayCountConvention|efaultDuplicateCellStyle|efaultDuration|efaultElement|efaultFontProperties|efaultFormatType|efaultInlineFormatType|efaultNaturalLanguage|efaultNewCellStyle|efaultNewInlineCellStyle|efaultNotebook|efaultOptions|efaultPrintPrecision|efaultStyleDefinitions|einitialization|eletable|eleteContents|eletionWarning|elimiterAutoMatching|elimiterFlashTime|elimiterMatching|elimiters|eliveryFunction|ependentVariables|eployed|escriptorStateSpace|iacriticalPositioning|ialogProlog|ialogSymbols|igitBlock|irectedEdges|irection|iscreteVariables|ispersionEstimatorFunction|isplayAllSteps|isplayFunction|istanceFunction|istributedContexts|ithering|ividers|ockedCell|ockedCells|ynamicEvaluationTimeout|ynamicModuleValues|ynamicUpdating))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:E(?:clipseType|dgeCapacity|dgeCost|dgeLabelStyle|dgeLabels|dgeShapeFunction|dgeStyle|dgeValueRange|dgeValueSizes|dgeWeight|ditCellTagsSettings|ditable|lidedForms|nabled|pilog|pilogFunction|scapeRadius|valuatable|valuationCompletionAction|valuationElements|valuationMonitor|valuator|valuatorNames|ventLabels|xcludePods|xcludedContexts|xcludedForms|xcludedLines|xcludedPhysicalQuantities|xclusions|xclusionsStyle|xponentFunction|xponentPosition|xponentStep|xponentialFamily|xportAutoReplacements|xpressionUUID|xtension|xtentElementFunction|xtentMarkers|xtentSize|xternalDataCharacterEncoding|xternalOptions|xternalTypeSignature))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:F(?:aceGrids|aceGridsStyle|ailureAction|eatureNames|eatureTypes|eedbackSector|eedbackSectorStyle|eedbackType|ieldCompletionFunction|ieldHint|ieldHintStyle|ieldMasked|ieldSize|ileNameDialogSettings|ileNameForms|illing|illingStyle|indSettings|itRegularization|ollowRedirects|ontColor|ontFamily|ontSize|ontSlant|ontSubstitutions|ontTracking|ontVariations|ontWeight|orceVersionInstall|ormBoxOptions|ormLayoutFunction|ormProtectionMethod|ormatType|ormatTypeAutoConvert|ourierParameters|ractionBoxOptions|ractionLine|rame|rameBoxOptions|rameLabel|rameMargins|rameRate|rameStyle|rameTicks|rameTicksStyle|rontEndEventActions|unctionSpace))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:G(?:apPenalty|augeFaceElementFunction|augeFaceStyle|augeFrameElementFunction|augeFrameSize|augeFrameStyle|augeLabels|augeMarkers|augeStyle|aussianIntegers|enerateConditions|eneratedCell|eneratedDocumentBinding|eneratedParameters|eneratedQuantityMagnitudes|eneratorDescription|eneratorHistoryLength|eneratorOutputType|eoArraySize|eoBackground|eoCenter|eoGridLines|eoGridLinesStyle|eoGridRange|eoGridRangePadding|eoLabels|eoLocation|eoModel|eoProjection|eoRange|eoRangePadding|eoResolution|eoScaleBar|eoServer|eoStylingImageFunction|eoZoomLevel|radient|raphHighlight|raphHighlightStyle|raphLayerStyle|raphLayers|raphLayout|ridCreationSettings|ridDefaultElement|ridFrame|ridFrameMargins|ridLines|ridLinesStyle|roupActionBase|roupPageBreakWithin))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:H(?:eaderAlignment|eaderBackground|eaderDisplayFunction|eaderLines|eaderSize|eaderStyle|eads|elpBrowserSettings|iddenItems|olidayCalendar|yperlinkAction|yphenation))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:I(?:conRules|gnoreCase|gnoreDiacritics|gnorePunctuation|mageCaptureFunction|mageFormattingWidth|mageLabels|mageLegends|mageMargins|magePadding|magePreviewFunction|mageRegion|mageResolution|mageSize|mageSizeAction|mageSizeMultipliers|magingDevice|mportAutoReplacements|mportOptions|ncludeConstantBasis|ncludeDefinitions|ncludeDirectories|ncludeFileExtension|ncludeGeneratorTasks|ncludeInflections|ncludeMetaInformation|ncludePods|ncludeQuantities|ncludeSingularSolutions|ncludeWindowTimes|ncludedContexts|ndeterminateThreshold|nflationMethod|nheritScope|nitialSeeding|nitialization|nitializationCell|nitializationCellEvaluation|nitializationCellWarning|nputAliases|nputAssumptions|nputAutoReplacements|nsertResults|nsertionFunction|nteractive|nterleaving|nterpolationOrder|nterpolationPoints|nterpretationBoxOptions|nterpretationFunction|ntervalMarkers|ntervalMarkersStyle|nverseFunctions|temAspectRatio|temDisplayFunction|temSize|temStyle))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:J(?:oined))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:K(?:eepExistingVersion|eyCollisionFunction|eypointStrength))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:L(?:abelStyle|abelVisibility|abelingFunction|abelingSize|anguage|anguageCategory|ayerSizeFunction|eaderSize|earningRate|egendAppearance|egendFunction|egendLabel|egendLayout|egendMargins|egendMarkerSize|egendMarkers|ighting|ightingAngle|imitsPositioning|imitsPositioningTokens|ineBreakWithin|ineIndent|ineIndentMaxFraction|ineIntegralConvolutionScale|ineSpacing|inearOffsetFunction|inebreakAdjustments|inkFunction|inkProtocol|istFormat|istPickerBoxOptions|ocalizeVariables|ocatorAutoCreate|ocatorRegion|ooping))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:M(?:agnification|ailAddressValidation|ailResponseFunction|ailSettings|asking|atchLocalNames|axCellMeasure|axColorDistance|axDuration|axExtraBandwidths|axExtraConditions|axFeatureDisplacement|axFeatures|axItems|axIterations|axMixtureKernels|axOverlapFraction|axPlotPoints|axRecursion|axStepFraction|axStepSize|axSteps|emoryConstraint|enuCommandKey|enuSortingValue|enuStyle|esh|eshCellHighlight|eshCellLabel|eshCellMarker|eshCellShapeFunction|eshCellStyle|eshFunctions|eshQualityGoal|eshRefinementFunction|eshShading|eshStyle|etaInformation|ethod|inColorDistance|inIntervalSize|inPointSeparation|issingBehavior|issingDataMethod|issingDataRules|issingString|issingStyle|odal|odulus|ultiaxisArrangement|ultiedgeStyle|ultilaunchWarning|ultilineFunction|ultiselection))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:N(?:icholsGridLines|ominalVariables|onConstants|ormFunction|ormalized|ormalsFunction|otebookAutoSave|otebookBrowseDirectory|otebookConvertSettings|otebookDynamicExpression|otebookEventActions|otebookPath|otebooksMenu|otificationFunction|ullRecords|ullWords|umberFormat|umberMarks|umberMultiplier|umberPadding|umberPoint|umberSeparator|umberSigns|yquistGridLines))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:O(?:pacityFunction|pacityFunctionScaling|peratingSystem|ptionInspectorSettings|utputAutoOverwrite|utputSizeLimit|verlaps|verscriptBoxOptions|verwriteTarget))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:P(?:IDDerivativeFilter|IDFeedforward|acletSite|adding|addingSize|ageBreakAbove|ageBreakBelow|ageBreakWithin|ageFooterLines|ageFooters|ageHeaderLines|ageHeaders|ageTheme|ageWidth|alettePath|aneled|aragraphIndent|aragraphSpacing|arallelization|arameterEstimator|artBehavior|artitionGranularity|assEventsDown|assEventsUp|asteBoxFormInlineCells|ath|erformanceGoal|ermissions|haseRange|laceholderReplace|layRange|lotLabel|lotLabels|lotLayout|lotLegends|lotMarkers|lotPoints|lotRange|lotRangeClipping|lotRangePadding|lotRegion|lotStyle|lotTheme|odStates|odWidth|olarAxes|olarAxesOrigin|olarGridLines|olarTicks|oleZeroMarkers|recisionGoal|referencesPath|reprocessingRules|reserveColor|reserveImageOptions|rincipalValue|rintAction|rintPrecision|rintingCopies|rintingOptions|rintingPageRange|rintingStartingPageNumber|rintingStyleEnvironment|rintout3DPreviewer|rivateCellOptions|rivateEvaluationOptions|rivateFontOptions|rivateNotebookOptions|rivatePaths|rocessDirectory|rocessEnvironment|rocessEstimator|rogressReporting|rolog|ropagateAborts))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:Q(?:uartics))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:R(?:adicalBoxOptions|andomSeeding|asterSize|eImLabels|eImStyle|ealBlockDiagonalForm|ecognitionPrior|ecordLists|ecordSeparators|eferenceLineStyle|efreshRate|egionBoundaryStyle|egionFillingStyle|egionFunction|egionSize|egularization|enderingOptions|equiredPhysicalQuantities|esampling|esamplingMethod|esolveContextAliases|estartInterval|eturnReceiptFunction|evolutionAxis|otateLabel|otationAction|oundingRadius|owAlignments|owLines|owMinHeight|owSpacings|owsEqual|ulerUnits|untimeAttributes|untimeOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:S(?:ameTest|ampleDepth|ampleRate|amplingPeriod|aveConnection|aveDefinitions|aveable|caleDivisions|caleOrigin|calePadding|caleRangeStyle|caleRanges|calingFunctions|cientificNotationThreshold|creenStyleEnvironment|criptBaselineShifts|criptLevel|criptMinSize|criptSizeMultipliers|crollPosition|crollbars|crollingOptions|ectorOrigin|ectorSpacing|electable|elfLoopStyle|eriesTermGoal|haringList|howAutoSpellCheck|howAutoStyles|howCellBracket|howCellLabel|howCellTags|howClosedCellArea|howContents|howCursorTracker|howGroupOpener|howPageBreaks|howSelection|howShortBoxForm|howSpecialCharacters|howStringCharacters|hrinkingDelay|ignPadding|ignificanceLevel|imilarityRules|ingleLetterItalics|liderBoxOptions|ortedBy|oundVolume|pacings|panAdjustments|panCharacterRounding|panLineThickness|panMaxSize|panMinSize|panSymmetric|pecificityGoal|pellingCorrection|pellingDictionaries|pellingDictionariesPath|pellingOptions|phericalRegion|plineClosed|plineDegree|plineKnots|plineWeights|qrtBoxOptions|tabilityMargins|tabilityMarginsStyle|tandardized|tartingStepSize|tateSpaceRealization|tepMonitor|trataVariables|treamColorFunction|treamColorFunctionScaling|treamMarkers|treamPoints|treamScale|treamStyle|trictInequalities|tripOnInput|tripWrapperBoxes|tructuredSelection|tyleBoxAutoDelete|tyleDefinitions|tyleHints|tyleMenuListing|tyleNameDialogSettings|tyleSheetPath|ubscriptBoxOptions|ubsuperscriptBoxOptions|ubtitleEncoding|uperscriptBoxOptions|urdForm|ynchronousInitialization|ynchronousUpdating|yntaxForm|ystemHelpPath|ystemsModelLabels))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:T(?:abFilling|abSpacings|ableAlignments|ableDepth|ableDirections|ableHeadings|ableSpacing|agBoxOptions|aggingRules|argetFunctions|argetUnits|emplateBoxOptions|emporalRegularity|estID|extAlignment|extClipboardType|extJustification|extureCoordinateFunction|extureCoordinateScaling|icks|icksStyle|imeConstraint|imeDirection|imeFormat|imeGoal|imeSystem|imeZone|okenWords|olerance|ooltipDelay|ooltipStyle|otalWidth|ouchscreenAutoZoom|ouchscreenControlPlacement|raceAbove|raceBackward|raceDepth|raceForward|raceOff|raceOn|raceOriginal|rackedSymbols|rackingFunction|raditionalFunctionNotation|ransformationClass|ransformationFunctions|ransitionDirection|ransitionDuration|ransitionEffect|ranslationOptions|ravelMethod|rendStyle|rig))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:U(?:nderoverscriptBoxOptions|nderscriptBoxOptions|ndoOptions|ndoTrackedVariables|nitSystem|nityDimensions|nsavedVariables|pdateInterval|pdatePacletSites|tilityFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:V(?:alidationLength|alidationSet|alueDimensions|arianceEstimatorFunction|ectorAspectRatio|ectorColorFunction|ectorColorFunctionScaling|ectorMarkers|ectorPoints|ectorRange|ectorScaling|ectorSizes|ectorStyle|erifyConvergence|erifySecurityCertificates|erifySolutions|erifyTestAssumptions|ersionedPreferences|ertexCapacity|ertexColors|ertexCoordinates|ertexDataCoordinates|ertexLabelStyle|ertexLabels|ertexNormals|ertexShape|ertexShapeFunction|ertexSize|ertexStyle|ertexTextureCoordinates|ertexWeight|ideoEncoding|iewAngle|iewCenter|iewMatrix|iewPoint|iewProjection|iewRange|iewVector|iewVertical|isible))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:W(?:aveletScale|eights|hitePoint|indowClickSelect|indowElements|indowFloating|indowFrame|indowFrameElements|indowMargins|indowOpacity|indowSize|indowStatusArea|indowTitle|indowToolbars|ordOrientation|ordSearch|ordSelectionFunction|ordSeparators|ordSpacings|orkingPrecision|rapAround))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:Z(?:eroTest|eroWidthTimes))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:A(?:bove|fter|lgebraics|ll|nonymous|utomatic|xis))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:B(?:ack|ackward|aseline|efore|elow|lack|lue|old|ooleans|ottom|oxes|rown|yte))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:C(?:atalan|ellStyle|enter|haracter|omplexInfinity|omplexes|onstant|yan))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:D(?:ashed|efaultAxesStyle|efaultBaseStyle|efaultBoxStyle|efaultFaceGridsStyle|efaultFieldHintStyle|efaultFrameStyle|efaultFrameTicksStyle|efaultGridLinesStyle|efaultLabelStyle|efaultMenuStyle|efaultTicksStyle|efaultTooltipStyle|egree|elimiter|igitCharacter|otDashed|otted))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:E(?:|ndOfBuffer|ndOfFile|ndOfLine|ndOfString|ulerGamma|xpression))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:F(?:alse|lat|ontProperties|orward|orwardBackward|riday|ront|rontEndDynamicExpression|ull))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:G(?:eneral|laisher|oldenAngle|oldenRatio|ray|reen))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:H(?:ere|exadecimalCharacter|oldAll|oldAllComplete|oldFirst|oldRest))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:I(?:|ndeterminate|nfinity|nherited|nteger|ntegers|talic))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:K(?:hinchin))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:L(?:arge|arger|eft|etterCharacter|ightBlue|ightBrown|ightCyan|ightGray|ightGreen|ightMagenta|ightOrange|ightPink|ightPurple|ightRed|ightYellow|istable|ocked))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:M(?:achinePrecision|agenta|anual|edium|eshCellCentroid|eshCellMeasure|eshCellQuality|onday))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:N(?:HoldAll|HoldFirst|HoldRest|egativeIntegers|egativeRationals|egativeReals|oWhitespace|onNegativeIntegers|onNegativeRationals|onNegativeReals|onPositiveIntegers|onPositiveRationals|onPositiveReals|one|ow|ull|umber|umberString|umericFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:O(?:neIdentity|range|rderless))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:P(?:i|ink|lain|ositiveIntegers|ositiveRationals|ositiveReals|rimes|rotected|unctuationCharacter|urple))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:R(?:ationals|eadProtected|eal|eals|ecord|ed|ight))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:S(?:aturday|equenceHold|mall|maller|panFromAbove|panFromBoth|panFromLeft|tartOfLine|tartOfString|tring|truckthrough|tub|unday))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:T(?:emporary|hick|hin|hursday|iny|oday|omorrow|op|ransparent|rue|uesday))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:U(?:ndefined|nderlined))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:W(?:ednesday|hite|hitespace|hitespaceCharacter|ord|ordBoundary|ordCharacter))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:Y(?:ellow|esterday))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:\\\\\\\\$(?:Aborted|ActivationKey|AllowDataUpdates|AllowInternet|AssertFunction|Assumptions|AudioInputDevices|AudioOutputDevices|BaseDirectory|BasePacletsDirectory|BatchInput|BatchOutput|ByteOrdering|CacheBaseDirectory|Canceled|CharacterEncoding|CharacterEncodings|CloudAccountName|CloudBase|CloudConnected|CloudCreditsAvailable|CloudEvaluation|CloudExpressionBase|CloudObjectNameFormat|CloudObjectURLType|CloudRootDirectory|CloudSymbolBase|CloudUserID|CloudUserUUID|CloudVersion|CommandLine|CompilationTarget|Context|ContextAliases|ContextPath|ControlActiveSetting|Cookies|CreationDate|CurrentLink|CurrentTask|DateStringFormat|DefaultAudioInputDevice|DefaultAudioOutputDevice|DefaultFrontEnd|DefaultImagingDevice|DefaultKernels|DefaultLocalBase|DefaultLocalKernel|Display|DisplayFunction|DistributedContexts|DynamicEvaluation|Echo|EmbedCodeEnvironments|EmbeddableServices|Epilog|EvaluationCloudBase|EvaluationCloudObject|EvaluationEnvironment|ExportFormats|Failed|FontFamilies|FrontEnd|FrontEndSession|GeoLocation|GeoLocationCity|GeoLocationCountry|GeoLocationSource|HomeDirectory|IgnoreEOF|ImageFormattingWidth|ImageResolution|ImagingDevice|ImagingDevices|ImportFormats|InitialDirectory|Input|InputFileName|InputStreamMethods|Inspector|InstallationDirectory|InterpreterTypes|IterationLimit|KernelCount|KernelID|Language|LibraryPath|LicenseExpirationDate|LicenseID|LicenseServer|Linked|LocalBase|LocalSymbolBase|MachineAddresses|MachineDomains|MachineEpsilon|MachineID|MachineName|MachinePrecision|MachineType|MaxExtraPrecision|MaxMachineNumber|MaxNumber|MaxPiecewiseCases|MaxPrecision|MaxRootDegree|MessageGroups|MessageList|MessagePrePrint|Messages|MinMachineNumber|MinNumber|MinPrecision|MobilePhone|ModuleNumber|NetworkConnected|NewMessage|NewSymbol|NotebookInlineStorageLimit|Notebooks|NumberMarks|OperatingSystem|Output|OutputSizeLimit|OutputStreamMethods|Packages|ParentLink|ParentProcessID|PasswordFile|Path|PathnameSeparator|PerformanceGoal|Permissions|PlotTheme|Printout3DPreviewer|ProcessID|ProcessorCount|ProcessorType|ProgressReporting|RandomGeneratorState|RecursionLimit|ReleaseNumber|RequesterAddress|RequesterCloudUserID|RequesterCloudUserUUID|RequesterWolframID|RequesterWolframUUID|RootDirectory|ScriptCommandLine|ScriptInputString|Services|SessionID|SharedFunctions|SharedVariables|SoundDisplayFunction|SynchronousEvaluation|System|SystemCharacterEncoding|SystemID|SystemShell|SystemTimeZone|SystemWordLength|TemplatePath|TemporaryDirectory|TimeUnit|TimeZone|TimeZoneEntity|TimedOut|UnitSystem|Urgent|UserAgentString|UserBaseDirectory|UserBasePacletsDirectory|UserDocumentsDirectory|UserURLBase|Username|Version|VersionNumber|WolframDocumentsDirectory|WolframID|WolframUUID))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"System`(?:A(?:bortScheduledTask|ctive|lgebraicRules|lternateImage|natomyForm|nimationCycleOffset|nimationCycleRepetitions|nimationDisplayTime|spectRatioFixed|stronomicalData|synchronousTaskObject|synchronousTasks|udioDevice|udioLooping))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:B(?:uttonEvaluator|uttonExpandable|uttonFrame|uttonMargins|uttonNote|uttonStyle))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:C(?:DFInformation|hebyshevDistance|lassifierInformation|lipFill|olorOutput|olumnForm|ompose|onstantArrayLayer|onstantPlusLayer|onstantTimesLayer|onstrainedMax|onstrainedMin|ontourGraphics|ontourLines|onversionOptions|reateScheduledTask|reateTemporary|urry))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:D(?:atabinRemove|ate|ebug|efaultColor|efaultFont|ensityGraphics|isplay|isplayString|otPlusLayer|ragAndDrop))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:E(?:dgeLabeling|dgeRenderingFunction|valuateScheduledTask|xpectedValue))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:F(?:actorComplete|ontForm|ormTheme|romDate|ullOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:G(?:raphStyle|raphicsArray|raphicsSpacing|ridBaseline))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:H(?:TMLSave|eldPart|iddenSurface|omeDirectory))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:I(?:mageRotated|nstanceNormalizationLayer))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:L(?:UBackSubstitution|egendreType|ightSources|inearProgramming|inkOpen|iteral|ongestMatch))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:M(?:eshRange|oleculeEquivalentQ))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:N(?:etInformation|etSharedArray|extScheduledTaskTime|otebookCreate))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:O(?:penTemporary))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:P(?:IDData|ackingMethod|ersistentValue|ixelConstrained|lot3Matrix|lotDivision|lotJoined|olygonIntersections|redictorInformation|roperties|roperty|ropertyList|ropertyValue))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:R(?:andom|asterArray|ecognitionThreshold|elease|emoteKernelObject|emoveAsynchronousTask|emoveProperty|emoveScheduledTask|enderAll|eplaceHeldPart|esetScheduledTask|esumePacket|unScheduledTask))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:S(?:cheduledTaskActiveQ|cheduledTaskInformation|cheduledTaskObject|cheduledTasks|creenRectangle|electionAnimate|equenceAttentionLayer|equenceForm|etProperty|hading|hortestMatch|ingularValues|kinStyle|ocialMediaData|tartAsynchronousTask|tartScheduledTask|tateDimensions|topAsynchronousTask|topScheduledTask|tructuredArray|tyleForm|tylePrint|ubscripted|urfaceColor|urfaceGraphics|uspendPacket|ystemModelProgressReporting))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:T(?:eXSave|extStyle|imeWarpingCorrespondence|imeWarpingDistance|oDate|oFileName|oHeldExpression))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:U(?:RLFetch|RLFetchAsynchronous|RLSave|RLSaveAsynchronous))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:V(?:ectorScale|ertexCoordinateRules|ertexLabeling|ertexRenderingFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:W(?:aitAsynchronousTask|indowMovable))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:\\\\\\\\$(?:AsynchronousTask|ConfiguredKernels|DefaultFont|EntityStores|FormatType|HTTPCookies|InstallationDate|MachineDomain|ProductInformation|ProgramName|RandomState|ScheduledTask|SummaryBoxDataSizeLimit|TemporaryPrefix|TextStyle|TopDirectory|UserAddOnsDirectory))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"System`(?:A(?:ctionDelay|ctionMenuBox|ctionMenuBoxOptions|ctiveItem|lgebraicRulesData|lignmentMarker|llowAdultContent|llowChatServices|llowIncomplete|nalytic|nimatorBox|nimatorBoxOptions|nimatorElements|ppendCheck|rgumentCountQ|rrow3DBox|rrowBox|uthenticate|utoEvaluateEvents|utoIndentSpacings|utoMatch|utoNumberFormatting|utoQuoteCharacters|utoScaling|utoStyleOptions|utoStyleWords|utomaticImageSize|xis3DBox|xis3DBoxOptions|xisBox|xisBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:B(?:SplineCurve3DBox|SplineCurve3DBoxOptions|SplineCurveBox|SplineCurveBoxOptions|SplineSurface3DBox|SplineSurface3DBoxOptions|ackFaceColor|ackFaceGlowColor|ackFaceOpacity|ackFaceSpecularColor|ackFaceSpecularExponent|ackFaceSurfaceAppearance|ackFaceTexture|ackgroundAppearance|ackgroundTasksSettings|acksubstitution|eveled|ezierCurve3DBox|ezierCurve3DBoxOptions|ezierCurveBox|ezierCurveBoxOptions|lankForm|ounds|ox|oxDimensions|oxForm|oxID|oxRotation|oxRotationPoint|ra|raKet|rowserCategory|uttonCell|uttonContents|uttonStyleMenuListing))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:C(?:acheGraphics|achedValue|ardinalBSplineBasis|ellBoundingBox|ellContents|ellElementSpacings|ellElementsBoundingBox|ellFrameStyle|ellInsertionPointCell|ellTrayPosition|ellTrayWidgets|hangeOptions|hannelDatabin|hannelListenerWait|hannelPreSendFunction|hartElementData|hartElementDataFunction|heckAll|heckboxBox|heckboxBoxOptions|ircleBox|lipboardNotebook|lockwiseContourIntegral|losed|losingEvent|loudConnections|loudObjectInformation|loudObjectInformationData|loudUserID|oarse|oefficientDomain|olonForm|olorSetterBox|olorSetterBoxOptions|olumnBackgrounds|ompilerEnvironmentAppend|ompletionsListPacket|omponentwiseContextMenu|ompressedData|oneBox|onicHullRegion3DBox|onicHullRegion3DBoxOptions|onicHullRegionBox|onicHullRegionBoxOptions|onnect|ontentsBoundingBox|ontextMenu|ontinuation|ontourIntegral|ontourSmoothing|ontrolAlignment|ontrollerDuration|ontrollerInformationData|onvertToPostScript|onvertToPostScriptPacket|ookies|opyTag|ounterBox|ounterBoxOptions|ounterClockwiseContourIntegral|ounterEvaluator|ounterStyle|uboidBox|uboidBoxOptions|urlyDoubleQuote|urlyQuote|ylinderBox|ylinderBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:D(?:OSTextFormat|ampingFactor|ataCompression|atasetDisplayPanel|ateDelimiters|ebugTag|ecimal|efault2DTool|efault3DTool|efaultAttachedCellStyle|efaultControlPlacement|efaultDockedCellStyle|efaultInputFormatType|efaultOutputFormatType|efaultStyle|efaultTextFormatType|efaultTextInlineFormatType|efaultValue|efineExternal|egreeLexicographic|egreeReverseLexicographic|eleteWithContents|elimitedArray|estroyAfterEvaluation|eviceOpenQ|ialogIndent|ialogLevel|ifferenceOrder|igitBlockMinimum|isableConsolePrintPacket|iskBox|iskBoxOptions|ispatchQ|isplayRules|isplayTemporary|istributionDomain|ivergence|ocumentGeneratorInformationData|omainRegistrationInformation|oubleContourIntegral|oublyInfinite|own|rawBackFaces|rawFrontFaces|rawHighlighted|ualLinearProgramming|umpGet|ynamicBox|ynamicBoxOptions|ynamicLocation|ynamicModuleBox|ynamicModuleBoxOptions|ynamicModuleParent|ynamicName|ynamicNamespace|ynamicReference|ynamicWrapperBox|ynamicWrapperBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:E(?:ditButtonSettings|liminationOrder|llipticReducedHalfPeriods|mbeddingObject|mphasizeSyntaxErrors|mpty|nableConsolePrintPacket|ndAdd|ngineEnvironment|nter|qualColumns|qualRows|quatedTo|rrorBoxOptions|rrorNorm|rrorPacket|rrorsDialogSettings|valuated|valuationMode|valuationOrder|valuationRateLimit|ventEvaluator|ventHandlerTag|xactRootIsolation|xitDialog|xpectationE|xportPacket|xpressionPacket|xternalCall|xternalFunctionName))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:F(?:EDisableConsolePrintPacket|EEnableConsolePrintPacket|ail|ileInformation|ileName|illForm|illedCurveBox|illedCurveBoxOptions|ine|itAll|lashSelection|ont|ontName|ontOpacity|ontPostScriptName|ontReencoding|ormatRules|ormatValues|rameInset|rameless|rontEndObject|rontEndResource|rontEndResourceString|rontEndStackSize|rontEndValueCache|rontEndVersion|rontFaceColor|rontFaceGlowColor|rontFaceOpacity|rontFaceSpecularColor|rontFaceSpecularExponent|rontFaceSurfaceAppearance|rontFaceTexture|ullAxes))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:G(?:eneratedCellStyles|eneric|eometricTransformation3DBox|eometricTransformation3DBoxOptions|eometricTransformationBox|eometricTransformationBoxOptions|estureHandlerTag|etContext|etFileName|etLinebreakInformationPacket|lobalPreferences|lobalSession|raphLayerLabels|raphRoot|raphics3DBox|raphics3DBoxOptions|raphicsBaseline|raphicsBox|raphicsBoxOptions|raphicsComplex3DBox|raphicsComplex3DBoxOptions|raphicsComplexBox|raphicsComplexBoxOptions|raphicsContents|raphicsData|raphicsGridBox|raphicsGroup3DBox|raphicsGroup3DBoxOptions|raphicsGroupBox|raphicsGroupBoxOptions|raphicsGrouping|raphicsStyle|reekStyle|ridBoxAlignment|ridBoxBackground|ridBoxDividers|ridBoxFrame|ridBoxItemSize|ridBoxItemStyle|ridBoxOptions|ridBoxSpacings|ridElementStyleOptions|roupOpenerColor|roupOpenerInsideFrame|roupTogetherGrouping|roupTogetherNestedGrouping))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:H(?:eadCompose|eaders|elpBrowserLookup|elpBrowserNotebook|elpViewerSettings|essian|exahedronBox|exahedronBoxOptions|ighlightString|omePage|orizontal|orizontalForm|orizontalScrollPosition|yperlinkCreationSettings|yphenationOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:I(?:conizedObject|gnoreSpellCheck|mageCache|mageCacheValid|mageEditMode|mageMarkers|mageOffset|mageRangeCache|mageSizeCache|mageSizeRaw|nactiveStyle|ncludeSingularTerm|ndent|ndentMaxFraction|ndentingNewlineSpacings|ndexCreationOptions|ndexTag|nequality|nexactNumbers|nformationData|nformationDataGrid|nlineCounterAssignments|nlineCounterIncrements|nlineRules|nputFieldBox|nputFieldBoxOptions|nputGrouping|nputSettings|nputToBoxFormPacket|nsertionPointObject|nset3DBox|nset3DBoxOptions|nsetBox|nsetBoxOptions|ntegral|nterlaced|nterpolationPrecision|nterpretTemplate|nterruptSettings|nto|nvisibleApplication|nvisibleTimes|temBox|temBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:J(?:acobian|oinedCurveBox|oinedCurveBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:K(?:|ernelExecute|et))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:L(?:abeledSlider|ambertW|anguageOptions|aunch|ayoutInformation|exicographic|icenseID|ine3DBox|ine3DBoxOptions|ineBox|ineBoxOptions|ineBreak|ineWrapParts|inearFilter|inebreakSemicolonWeighting|inkConnectedQ|inkError|inkFlush|inkHost|inkMode|inkOptions|inkReadHeld|inkService|inkWriteHeld|istPickerBoxBackground|isten|iteralSearch|ocalizeDefinitions|ocatorBox|ocatorBoxOptions|ocatorCentering|ocatorPaneBox|ocatorPaneBoxOptions|ongEqual|ongForm|oopback))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:M(?:achineID|achineName|acintoshSystemPageSetup|ainSolve|aintainDynamicCaches|akeRules|atchLocalNameQ|aterial|athMLText|athematicaNotation|axBend|axPoints|enu|enuAppearance|enuEvaluator|enuItem|enuList|ergeDifferences|essageObject|essageOptions|essagesNotebook|etaCharacters|ethodOptions|inRecursion|inSize|ode|odular|onomialOrder|ouseAppearanceTag|ouseButtons|ousePointerNote|ultiLetterItalics|ultiLetterStyle|ultiplicity|ultiscriptBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:N(?:BernoulliB|ProductFactors|SumTerms|Values|amespaceBox|amespaceBoxOptions|estedScriptRules|etworkPacketRecordingDuring|ext|onAssociative|ormalGrouping|otebookDefault|otebookInterfaceObject))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:O(?:LEData|bjectExistsQ|pen|penFunctionInspectorPacket|penSpecialOptions|penerBox|penerBoxOptions|ptionQ|ptionValueBox|ptionValueBoxOptions|ptionsPacket|utputFormData|utputGrouping|utputMathEditExpression|ver|verlayBox|verlayBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:P(?:ackPaclet|ackage|acletDirectoryAdd|acletDirectoryRemove|acletInformation|acletObjectQ|acletUpdate|ageHeight|alettesMenuSettings|aneBox|aneBoxOptions|aneSelectorBox|aneSelectorBoxOptions|anelBox|anelBoxOptions|aperWidth|arameter|arameterVariables|arentConnect|arentForm|arentList|arenthesize|artialD|asteAutoQuoteCharacters|ausedTime|eriodicInterpolation|erpendicular|ickMode|ickedElements|ivoting|lotRangeClipPlanesStyle|oint3DBox|oint3DBoxOptions|ointBox|ointBoxOptions|olygon3DBox|olygon3DBoxOptions|olygonBox|olygonBoxOptions|olygonHoleScale|olygonScale|olyhedronBox|olyhedronBoxOptions|olynomialForm|olynomials|opupMenuBox|opupMenuBoxOptions|ostScript|recedence|redictionRoot|referencesSettings|revious|rimaryPlaceholder|rintForm|rismBox|rismBoxOptions|rivateFrontEndOptions|robabilityPr|rocessStateDomain|rocessTimeDomain|rogressIndicatorBox|rogressIndicatorBoxOptions|romptForm|yramidBox|yramidBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:R(?:adioButtonBox|adioButtonBoxOptions|andomSeed|angeSpecification|aster3DBox|aster3DBoxOptions|asterBox|asterBoxOptions|ationalFunctions|awArray|awMedium|ebuildPacletData|ectangleBox|ecurringDigitsForm|eferenceMarkerStyle|eferenceMarkers|einstall|emoved|epeatedString|esourceAcquire|esourceSubmissionObject|eturnCreatesNewCell|eturnEntersInput|eturnInputFormPacket|otationBox|otationBoxOptions|oundImplies|owBackgrounds|owHeights|uleCondition|uleForm))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:S(?:aveAutoDelete|caledMousePosition|cheduledTaskInformationData|criptForm|criptRules|ectionGrouping|electWithContents|election|electionCell|electionCellCreateCell|electionCellDefaultStyle|electionCellParentStyle|electionPlaceholder|elfLoops|erviceResponse|etOptionsPacket|etSecuredAuthenticationKey|etbacks|etterBox|etterBoxOptions|howAutoConvert|howCodeAssist|howControls|howGroupOpenCloseIcon|howInvisibleCharacters|howPredictiveInterface|howSyntaxStyles|hrinkWrapBoundingBox|ingleEvaluation|ingleLetterStyle|lider2DBox|lider2DBoxOptions|ocket|olveDelayed|oundAndGraphics|pace|paceForm|panningCharacters|phereBox|phereBoxOptions|tartupSound|tringBreak|tringByteCount|tripStyleOnPaste|trokeForm|tructuredArrayHeadQ|tyleKeyMapping|tyleNames|urfaceAppearance|yntax|ystemException|ystemGet|ystemInformationData|ystemStub|ystemTest))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:T(?:ab|abViewBox|abViewBoxOptions|ableViewBox|ableViewBoxAlignment|ableViewBoxBackground|ableViewBoxHeaders|ableViewBoxItemSize|ableViewBoxItemStyle|ableViewBoxOptions|agBoxNote|agStyle|emplateEvaluate|emplateSlotSequence|emplateUnevaluated|emplateVerbatim|emporaryVariable|ensorQ|etrahedronBox|etrahedronBoxOptions|ext3DBox|ext3DBoxOptions|extBand|extBoundingBox|extBox|extForm|extLine|extParagraph|hisLink|itleGrouping|oColor|oggle|oggleFalse|ogglerBox|ogglerBoxOptions|ooBig|ooltipBox|ooltipBoxOptions|otalHeight|raceAction|raceInternal|raceLevel|rackCellChangeTimes|raditionalNotation|raditionalOrder|ransparentColor|rapEnterKey|rapSelection|ubeBSplineCurveBox|ubeBSplineCurveBoxOptions|ubeBezierCurveBox|ubeBezierCurveBoxOptions|ubeBox|ubeBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:U(?:ntrackedVariables|p|seGraphicsRange|serDefinedWavelet|sing))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:V(?:2Get|alueBox|alueBoxOptions|alueForm|aluesData|ectorGlyphData|erbose|ertical|erticalForm|iewPointSelectorSettings|iewPort|irtualGroupData|isibleCell))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:W(?:aitUntil|ebPageMetaInformation|holeCellGroupOpener|indowPersistentStyles|indowSelected|indowWidth|olframAlphaDate|olframAlphaQuantity|olframAlphaResult|olframCloudSettings))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:\\\\\\\\$(?:ActivationGroupID|ActivationUserRegistered|AddOnsDirectory|BoxForms|CloudConnection|CloudVersionNumber|CloudWolframEngineVersionNumber|ConditionHold|DefaultMailbox|DefaultPath|FinancialDataSource|GeoEntityTypes|GeoLocationPrecision|HTMLExportRules|HTTPRequest|LaunchDirectory|LicenseProcesses|LicenseSubprocesses|LicenseType|LinkSupported|LoadedFiles|MaxLicenseProcesses|MaxLicenseSubprocesses|MinorReleaseNumber|NetworkLicense|Off|OutputForms|PatchLevelID|PermissionsGroupBase|PipeSupported|PreferencesDirectory|PrintForms|PrintLiteral|RegisteredDeviceClasses|RegisteredUserName|SecuredAuthenticationKeyTokens|SetParentLink|SoundDisplay|SuppressInputFormHeads|SystemMemory|TraceOff|TraceOn|TracePattern|TracePostAction|TracePreAction|UserAgentLanguages|UserAgentMachine|UserAgentName|UserAgentOperatingSystem|UserAgentVersion|UserName))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"System`(?:A(?:ctiveClassification|ctiveClassificationObject|ctivePrediction|ctivePredictionObject|ddToSearchIndex|ggregatedEntityClass|ggregationLayer|ngleBisector|nimatedImage|nimationVideo|nomalyDetector|ppendLayer|pplication|pplyReaction|round|roundReplace|rrayReduce|sk|skAppend|skConfirm|skDisplay|skFunction|skState|skTemplateDisplay|skedQ|skedValue|ssessmentFunction|ssessmentResultObject|ssumeDeterministic|stroAngularSeparation|stroBackground|stroCenter|stroDistance|stroGraphics|stroGridLines|stroGridLinesStyle|stroPosition|stroProjection|stroRange|stroRangePadding|stroReferenceFrame|stroStyling|stroZoomLevel|tom|tomCoordinates|tomCount|tomDiagramCoordinates|tomLabelStyle|tomLabels|tomList|ttachCell|ttentionLayer|udioAnnotate|udioAnnotationLookup|udioIdentify|udioInstanceQ|udioPause|udioPlay|udioRecord|udioStop|udioStream|udioStreams|udioTrackApply|udioTrackSelection|utocomplete|utocompletionFunction|xiomaticTheory|xisLabel|xisObject|xisStyle))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:B(?:asicRecurrentLayer|atchNormalizationLayer|atchSize|ayesianMaximization|ayesianMaximizationObject|ayesianMinimization|ayesianMinimizationObject|esagL|innedVariogramList|inomialPointProcess|ioSequence|ioSequenceBackTranslateList|ioSequenceComplement|ioSequenceInstances|ioSequenceModify|ioSequencePlot|ioSequenceQ|ioSequenceReverseComplement|ioSequenceTranscribe|ioSequenceTranslate|itRate|lockDiagonalMatrix|lockLowerTriangularMatrix|lockUpperTriangularMatrix|lockchainAddressData|lockchainBase|lockchainBlockData|lockchainContractValue|lockchainData|lockchainGet|lockchainKeyEncode|lockchainPut|lockchainTokenData|lockchainTransaction|lockchainTransactionData|lockchainTransactionSign|lockchainTransactionSubmit|ond|ondCount|ondLabelStyle|ondLabels|ondList|ondQ|uildCompiledComponent))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:C(?:TCLossLayer|achePersistence|anvas|ast|ategoricalDistribution|atenateLayer|auchyPointProcess|hannelBase|hannelBrokerAction|hannelHistoryLength|hannelListen|hannelListener|hannelListeners|hannelObject|hannelReceiverFunction|hannelSend|hannelSubscribers|haracterNormalize|hemicalConvert|hemicalFormula|hemicalInstance|hemicalReaction|loudExpression|loudExpressions|loudRenderingMethod|ombinatorB|ombinatorC|ombinatorI|ombinatorK|ombinatorS|ombinatorW|ombinatorY|ombinedEntityClass|ompiledCodeFunction|ompiledComponent|ompiledExpressionDeclaration|ompiledLayer|ompilerCallback|ompilerEnvironment|ompilerEnvironmentAppendTo|ompilerEnvironmentObject|ompilerOptions|omplementedEntityClass|omputeUncertainty|onfirmQuiet|onformationMethod|onnectSystemModelComponents|onnectSystemModelController|onnectedMoleculeComponents|onnectedMoleculeQ|onnectionSettings|ontaining|ontentDetectorFunction|ontentFieldOptions|ontentLocationFunction|ontentObject|ontrastiveLossLayer|onvolutionLayer|reateChannel|reateCloudExpression|reateCompilerEnvironment|reateDataStructure|reateDataSystemModel|reateLicenseEntitlement|reateSearchIndex|reateSystemModel|reateTypeInstance|rossEntropyLossLayer|urrentNotebookImage|urrentScreenImage|urryApplied))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:D(?:SolveChangeVariables|ataStructure|ataStructureQ|atabaseConnect|atabaseDisconnect|atabaseReference|atabinSubmit|ateInterval|eclareCompiledComponent|econvolutionLayer|ecryptFile|eleteChannel|eleteCloudExpression|eleteElements|eleteSearchIndex|erivedKey|iggleGatesPointProcess|iggleGrattonPointProcess|igitalSignature|isableFormatting|ocumentWeightingRules|otLayer|ownValuesFunction|ropoutLayer|ynamicImage))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:E(?:choTiming|lementwiseLayer|mbeddedSQLEntityClass|mbeddedSQLExpression|mbeddingLayer|mptySpaceF|ncryptFile|ntityFunction|ntityStore|stimatedPointProcess|stimatedVariogramModel|valuationEnvironment|valuationPrivileges|xpirationDate|xpressionTree|xtendedEntityClass|xternalEvaluate|xternalFunction|xternalIdentifier|xternalObject|xternalSessionObject|xternalSessions|xternalStorageBase|xternalStorageDownload|xternalStorageGet|xternalStorageObject|xternalStoragePut|xternalStorageUpload|xternalValue|xtractLayer))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:F(?:aceRecognize|eatureDistance|eatureExtract|eatureExtraction|eatureExtractor|eatureExtractorFunction|ileConvert|ileFormatProperties|ileNameToFormatList|ileSystemTree|ilteredEntityClass|indChannels|indEquationalProof|indExternalEvaluators|indGeometricConjectures|indImageText|indIsomers|indMoleculeSubstructure|indPointProcessParameters|indSystemModelEquilibrium|indTextualAnswer|lattenLayer|orAllType|ormControl|orwardCloudCredentials|oxHReduce|rameListVideo|romRawPointer|unctionCompile|unctionCompileExport|unctionCompileExportByteArray|unctionCompileExportLibrary|unctionCompileExportString|unctionDeclaration|unctionLayer|unctionPoles))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:G(?:alleryView|atedRecurrentLayer|enerateDerivedKey|enerateDigitalSignature|enerateFileSignature|enerateSecuredAuthenticationKey|eneratedAssetFormat|eneratedAssetLocation|eoGraphValuePlot|eoOrientationData|eometricAssertion|eometricScene|eometricStep|eometricStylingRules|eometricTest|ibbsPointProcess|raphTree|ridVideo))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:H(?:andlerFunctions|andlerFunctionsKeys|ardcorePointProcess|istogramPointDensity))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:I(?:gnoreIsotopes|gnoreStereochemistry|mageAugmentationLayer|mageBoundingBoxes|mageCases|mageContainsQ|mageContents|mageGraphics|magePosition|magePyramid|magePyramidApply|mageStitch|mportedObject|ncludeAromaticBonds|ncludeHydrogens|ncludeRelatedTables|nertEvaluate|nertExpression|nfiniteFuture|nfinitePast|nhomogeneousPoissonPointProcess|nitialEvaluationHistory|nitializationObject|nitializationObjects|nitializationValue|nitialize|nputPorts|ntegrateChangeVariables|nterfaceSwitched|ntersectedEntityClass|nverseImagePyramid))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:K(?:ernelConfiguration|ernelFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:L(?:earningRateMultipliers|ibraryFunctionDeclaration|icenseEntitlementObject|icenseEntitlements|icensingSettings|inearLayer|iteralType|oadCompiledComponent|ocalResponseNormalizationLayer|ongShortTermMemoryLayer|ossFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:M(?:IMETypeToFormatList|ailExecute|ailFolder|ailItem|ailSearch|ailServerConnect|ailServerConnection|aternPointProcess|axDisplayedChildren|axTrainingRounds|axWordGap|eanAbsoluteLossLayer|eanAround|eanPointDensity|eanSquaredLossLayer|ergingFunction|idpoint|issingValuePattern|issingValueSynthesis|olecule|oleculeAlign|oleculeContainsQ|oleculeDraw|oleculeFreeQ|oleculeGraph|oleculeMatchQ|oleculeMaximumCommonSubstructure|oleculeModify|oleculeName|oleculePattern|oleculePlot|oleculePlot3D|oleculeProperty|oleculeQ|oleculeRecognize|oleculeSubstructureCount|oleculeValue))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:N(?:BodySimulation|BodySimulationData|earestNeighborG|estTree|etAppend|etArray|etArrayLayer|etBidirectionalOperator|etChain|etDecoder|etDelete|etDrop|etEncoder|etEvaluationMode|etExternalObject|etExtract|etFlatten|etFoldOperator|etGANOperator|etGraph|etInitialize|etInsert|etInsertSharedArrays|etJoin|etMapOperator|etMapThreadOperator|etMeasurements|etModel|etNestOperator|etPairEmbeddingOperator|etPort|etPortGradient|etPrepend|etRename|etReplace|etReplacePart|etStateObject|etTake|etTrain|etTrainResultsObject|etUnfold|etworkPacketCapture|etworkPacketRecording|etworkPacketTrace|eymanScottPointProcess|ominalScale|ormalizationLayer|umericArray|umericArrayQ|umericArrayType))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:O(?:peratorApplied|rderingLayer|rdinalScale|utputPorts|verlayVideo))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:P(?:acletSymbol|addingLayer|agination|airCorrelationG|arametricRampLayer|arentEdgeLabel|arentEdgeLabelFunction|arentEdgeLabelStyle|arentEdgeShapeFunction|arentEdgeStyle|arentEdgeStyleFunction|artLayer|artProtection|atternFilling|atternReaction|enttinenPointProcess|erpendicularBisector|ersistenceLocation|ersistenceTime|ersistentObject|ersistentObjects|ersistentSymbol|itchRecognize|laceholderLayer|laybackSettings|ointCountDistribution|ointDensity|ointDensityFunction|ointProcessEstimator|ointProcessFitTest|ointProcessParameterAssumptions|ointProcessParameterQ|ointStatisticFunction|ointValuePlot|oissonPointProcess|oolingLayer|rependLayer|roofObject|ublisherID))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:Q(?:uestionGenerator|uestionInterface|uestionObject|uestionSelector))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:R(?:andomArrayLayer|andomInstance|andomPointConfiguration|andomTree|eactionBalance|eactionBalancedQ|ecalibrationFunction|egisterExternalEvaluator|elationalDatabase|emoteAuthorizationCaching|emoteBatchJobAbort|emoteBatchJobObject|emoteBatchJobs|emoteBatchMapSubmit|emoteBatchSubmissionEnvironment|emoteBatchSubmit|emoteConnect|emoteConnectionObject|emoteEvaluate|emoteFile|emoteInputFiles|emoteProviderSettings|emoteRun|emoteRunProcess|emovalConditions|emoveAudioStream|emoveChannelListener|emoveChannelSubscribers|emoveVideoStream|eplicateLayer|eshapeLayer|esizeLayer|esourceFunction|esourceRegister|esourceRemove|esourceSubmit|esourceSystemBase|esourceSystemPath|esourceUpdate|esourceVersion|everseApplied|ipleyK|ipleyRassonRegion|ootTree|ulesTree))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:S(?:ameTestProperties|ampledEntityClass|earchAdjustment|earchIndexObject|earchIndices|earchQueryString|earchResultObject|ecuredAuthenticationKey|ecuredAuthenticationKeys|ecurityCertificate|equenceIndicesLayer|equenceLastLayer|equenceMostLayer|equencePredict|equencePredictorFunction|equenceRestLayer|equenceReverseLayer|erviceRequest|erviceSubmit|etFileFormatProperties|etSystemModel|lideShowVideo|moothPointDensity|nippet|nippetsVideo|nubPolyhedron|oftmaxLayer|olidBoundaryLoadValue|olidDisplacementCondition|olidFixedCondition|olidMechanicsPDEComponent|olidMechanicsStrain|olidMechanicsStress|ortedEntityClass|ourceLink|patialBinnedPointData|patialBoundaryCorrection|patialEstimate|patialEstimatorFunction|patialJ|patialNoiseLevel|patialObservationRegionQ|patialPointData|patialPointSelect|patialRandomnessTest|patialTransformationLayer|patialTrendFunction|peakerMatchQ|peechCases|peechInterpreter|peechRecognize|plice|tartExternalSession|tartWebSession|tereochemistryElements|traussHardcorePointProcess|traussPointProcess|ubsetCases|ubsetCount|ubsetPosition|ubsetReplace|ubtitleTrackSelection|ummationLayer|ymmetricDifference|ynthesizeMissingValues|ystemCredential|ystemCredentialData|ystemCredentialKey|ystemCredentialKeys|ystemCredentialStoreObject|ystemInstall|ystemModel|ystemModelExamples|ystemModelLinearize|ystemModelMeasurements|ystemModelParametricSimulate|ystemModelPlot|ystemModelReliability|ystemModelSimulate|ystemModelSimulateSensitivity|ystemModelSimulationData|ystemModeler|ystemModels))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:T(?:ableView|argetDevice|argetSystem|ernaryListPlot|ernaryPlotCorners|extCases|extContents|extElement|extPosition|extSearch|extSearchReport|extStructure|homasPointProcess|hreaded|hreadingLayer|ickDirection|ickLabelOrientation|ickLabelPositioning|ickLabels|ickLengths|ickPositions|oRawPointer|otalLayer|ourVideo|rainImageContentDetector|rainTextContentDetector|rainingProgressCheckpointing|rainingProgressFunction|rainingProgressMeasurements|rainingProgressReporting|rainingStoppingCriterion|rainingUpdateSchedule|ransposeLayer|ree|reeCases|reeChildren|reeCount|reeData|reeDelete|reeDepth|reeElementCoordinates|reeElementLabel|reeElementLabelFunction|reeElementLabelStyle|reeElementShape|reeElementShapeFunction|reeElementSize|reeElementSizeFunction|reeElementStyle|reeElementStyleFunction|reeExpression|reeExtract|reeFold|reeInsert|reeLayout|reeLeafCount|reeLeafQ|reeLeaves|reeLevel|reeMap|reeMapAt|reeOutline|reePosition|reeQ|reeReplacePart|reeRules|reeScan|reeSelect|reeSize|reeTraversalOrder|riangleCenter|riangleConstruct|riangleMeasurement|ypeDeclaration|ypeEvaluate|ypeOf|ypeSpecifier|yped))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:U(?:RLDownloadSubmit|nconstrainedParameters|nionedEntityClass|niqueElements|nitVectorLayer|nlabeledTree|nmanageObject|nregisterExternalEvaluator|pdateSearchIndex|seEmbeddedLibrary))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:V(?:alenceErrorHandling|alenceFilling|aluePreprocessingFunction|andermondeMatrix|arianceGammaPointProcess|ariogramFunction|ariogramModel|ectorAround|erifyDerivedKey|erifyDigitalSignature|erifyFileSignature|erifyInterpretation|ideo|ideoCapture|ideoCombine|ideoDelete|ideoExtractFrames|ideoFrameList|ideoFrameMap|ideoGenerator|ideoInsert|ideoIntervals|ideoJoin|ideoMap|ideoMapList|ideoMapTimeSeries|ideoPadding|ideoPause|ideoPlay|ideoQ|ideoRecord|ideoReplace|ideoScreenCapture|ideoSplit|ideoStop|ideoStream|ideoStreams|ideoTimeStretch|ideoTrackSelection|ideoTranscode|ideoTransparency|ideoTrim))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:W(?:ebAudioSearch|ebColumn|ebElementObject|ebExecute|ebImage|ebImageSearch|ebItem|ebRow|ebSearch|ebSessionObject|ebSessions|ebWindowObject|ikidataData|ikidataSearch|ikipediaSearch|ithCleanup|ithLock))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:Z(?:oomCenter|oomFactor))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:\\\\\\\\$(?:AllowExternalChannelFunctions|AudioDecoders|AudioEncoders|BlockchainBase|ChannelBase|CompilerEnvironment|CookieStore|CryptographicEllipticCurveNames|CurrentWebSession|DataStructures|DefaultNetworkInterface|DefaultProxyRules|DefaultRemoteBatchSubmissionEnvironment|DefaultRemoteKernel|DefaultSystemCredentialStore|ExternalIdentifierTypes|ExternalStorageBase|GeneratedAssetLocation|IncomingMailSettings|Initialization|InitializationContexts|MaxDisplayedChildren|NetworkInterfaces|NoValue|PersistenceBase|PersistencePath|PreInitialization|PublisherID|ResourceSystemBase|ResourceSystemPath|SSHAuthentication|ServiceCreditsAvailable|SourceLink|SubtitleDecoders|SubtitleEncoders|SystemCredentialStore|TargetSystems|TestFileName|VideoDecoders|VideoEncoders|VoiceStyles))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"System`(?:E(?:cho|xit))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"System`(?:I(?:n|nString))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"System`(?:O(?:ut))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"System`(?:P(?:rint))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"System`(?:Q(?:uit))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"System`(?:\\\\\\\\$(?:HistoryLength|Line|Post|Pre|PrePrint|PreRead|SyntaxHandler))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"System`(?:[$[:alpha:]][$[:alnum:]]*)(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.illegal.system.wolfram\\\"},{\\\"match\\\":\\\"(?:[$[:alpha:]][$[:alnum:]]*)(?:`(?:[$[:alpha:]][$[:alnum:]]*))+(?=\\\\\\\\s*(\\\\\\\\[(?!\\\\\\\\s*\\\\\\\\[)|@(?!@)))\\\",\\\"name\\\":\\\"variable.function.wolfram\\\"},{\\\"match\\\":\\\"(?:[$[:alpha:]][$[:alnum:]]*)(?:`(?:[$[:alpha:]][$[:alnum:]]*))+\\\",\\\"name\\\":\\\"symbol.unrecognized.wolfram\\\"},{\\\"match\\\":\\\"(?:[$[:alpha:]][$[:alnum:]]*)`\\\",\\\"name\\\":\\\"invalid.illegal.wolfram\\\"},{\\\"match\\\":\\\"(?:`(?:[$[:alpha:]][$[:alnum:]]*))+(?=\\\\\\\\s*(\\\\\\\\[(?!\\\\\\\\s*\\\\\\\\[)|@(?!@)))\\\",\\\"name\\\":\\\"variable.function.wolfram\\\"},{\\\"match\\\":\\\"(?:`(?:[$[:alpha:]][$[:alnum:]]*))+\\\",\\\"name\\\":\\\"symbol.unrecognized.wolfram\\\"},{\\\"match\\\":\\\"`\\\",\\\"name\\\":\\\"invalid.illegal.wolfram\\\"},{\\\"match\\\":\\\"(?:A(?:ASTriangle|PIFunction|RCHProcess|RIMAProcess|RMAProcess|RProcess|SATriangle|belianGroup|bort|bortKernels|bortProtect|bs|bsArg|bsArgPlot|bsoluteCorrelation|bsoluteCorrelationFunction|bsoluteCurrentValue|bsoluteDashing|bsoluteFileName|bsoluteOptions|bsolutePointSize|bsoluteThickness|bsoluteTime|bsoluteTiming|ccountingForm|ccumulate|ccuracy|cousticAbsorbingValue|cousticImpedanceValue|cousticNormalVelocityValue|cousticPDEComponent|cousticPressureCondition|cousticRadiationValue|cousticSoundHardValue|cousticSoundSoftCondition|ctionMenu|ctivate|cyclicGraphQ|ddSides|ddTo|ddUsers|djacencyGraph|djacencyList|djacencyMatrix|djacentMeshCells|djugate|djustTimeSeriesForecast|djustmentBox|dministrativeDivisionData|ffineHalfSpace|ffineSpace|ffineStateSpaceModel|ffineTransform|irPressureData|irSoundAttenuation|irTemperatureData|ircraftData|irportData|iryAi|iryAiPrime|iryAiZero|iryBi|iryBiPrime|iryBiZero|lgebraicIntegerQ|lgebraicNumber|lgebraicNumberDenominator|lgebraicNumberNorm|lgebraicNumberPolynomial|lgebraicNumberTrace|lgebraicUnitQ|llTrue|lphaChannel|lphabet|lphabeticOrder|lphabeticSort|lternatingFactorial|lternatingGroup|lternatives|mbientLight|mbiguityList|natomyData|natomyPlot3D|natomyStyling|nd|ndersonDarlingTest|ngerJ|ngleBracket|nglePath|nglePath3D|ngleVector|ngularGauge|nimate|nimator|nnotate|nnotation|nnotationDelete|nnotationKeys|nnotationValue|nnuity|nnuityDue|nnulus|nomalyDetection|nomalyDetectorFunction|ntihermitian|ntihermitianMatrixQ|ntisymmetric|ntisymmetricMatrixQ|ntonyms|nyOrder|nySubset|nyTrue|part|partSquareFree|ppellF1|ppend|ppendTo|pply|pplySides|pplyTo|rcCos|rcCosh|rcCot|rcCoth|rcCsc|rcCsch|rcCurvature|rcLength|rcSec|rcSech|rcSin|rcSinDistribution|rcSinh|rcTan|rcTanh|rea|rg|rgMax|rgMin|rgumentsOptions|rithmeticGeometricMean|rray|rrayComponents|rrayDepth|rrayFilter|rrayFlatten|rrayMesh|rrayPad|rrayPlot|rrayPlot3D|rrayQ|rrayResample|rrayReshape|rrayRules|rrays|rrow|rrowheads|ssert|ssociateTo|ssociation|ssociationMap|ssociationQ|ssociationThread|ssuming|symptotic|symptoticDSolveValue|symptoticEqual|symptoticEquivalent|symptoticExpectation|symptoticGreater|symptoticGreaterEqual|symptoticIntegrate|symptoticLess|symptoticLessEqual|symptoticOutputTracker|symptoticProbability|symptoticProduct|symptoticRSolveValue|symptoticSolve|symptoticSum|tomQ|ttributes|udio|udioAmplify|udioBlockMap|udioCapture|udioChannelCombine|udioChannelMix|udioChannelSeparate|udioChannels|udioData|udioDelay|udioDelete|udioDistance|udioFade|udioFrequencyShift|udioGenerator|udioInsert|udioIntervals|udioJoin|udioLength|udioLocalMeasurements|udioLoudness|udioMeasurements|udioNormalize|udioOverlay|udioPad|udioPan|udioPartition|udioPitchShift|udioPlot|udioQ|udioReplace|udioResample|udioReverb|udioReverse|udioSampleRate|udioSpectralMap|udioSpectralTransformation|udioSplit|udioTimeStretch|udioTrim|udioType|ugmentedPolyhedron|ugmentedSymmetricPolynomial|uthenticationDialog|utoRefreshed|utoSubmitting|utocorrelationTest))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:B(?:SplineBasis|SplineCurve|SplineFunction|SplineSurface|abyMonsterGroupB|ackslash|all|and|andpassFilter|andstopFilter|arChart|arChart3D|arLegend|arabasiAlbertGraphDistribution|arcodeImage|arcodeRecognize|aringhausHenzeTest|arlowProschanImportance|arnesG|artlettHannWindow|artlettWindow|aseDecode|aseEncode|aseForm|atesDistribution|attleLemarieWavelet|ecause|eckmannDistribution|eep|egin|eginDialogPacket|eginPackage|ellB|ellY|enfordDistribution|eniniDistribution|enktanderGibratDistribution|enktanderWeibullDistribution|ernoulliB|ernoulliDistribution|ernoulliGraphDistribution|ernoulliProcess|ernsteinBasis|esselFilterModel|esselI|esselJ|esselJZero|esselK|esselY|esselYZero|eta|etaBinomialDistribution|etaDistribution|etaNegativeBinomialDistribution|etaPrimeDistribution|etaRegularized|etween|etweennessCentrality|eveledPolyhedron|ezierCurve|ezierFunction|ilateralFilter|ilateralLaplaceTransform|ilateralZTransform|inCounts|inLists|inarize|inaryDeserialize|inaryDistance|inaryImageQ|inaryRead|inaryReadList|inarySerialize|inaryWrite|inomial|inomialDistribution|inomialProcess|inormalDistribution|iorthogonalSplineWavelet|ipartiteGraphQ|iquadraticFilterModel|irnbaumImportance|irnbaumSaundersDistribution|itAnd|itClear|itGet|itLength|itNot|itOr|itSet|itShiftLeft|itShiftRight|itXor|iweightLocation|iweightMidvariance|lackmanHarrisWindow|lackmanNuttallWindow|lackmanWindow|lank|lankNullSequence|lankSequence|lend|lock|lockMap|lockRandom|lomqvistBeta|lomqvistBetaTest|lur|lurring|odePlot|ohmanWindow|oole|ooleanConsecutiveFunction|ooleanConvert|ooleanCountingFunction|ooleanFunction|ooleanGraph|ooleanMaxterms|ooleanMinimize|ooleanMinterms|ooleanQ|ooleanRegion|ooleanTable|ooleanVariables|orderDimensions|orelTannerDistribution|ottomHatTransform|oundaryDiscretizeGraphics|oundaryDiscretizeRegion|oundaryMesh|oundaryMeshRegion|oundaryMeshRegionQ|oundedRegionQ|oundingRegion|oxData|oxMatrix|oxObject|oxWhiskerChart|racketingBar|rayCurtisDistance|readthFirstScan|reak|ridgeData|rightnessEqualize|roadcastStationData|rownForsytheTest|rownianBridgeProcess|ubbleChart|ubbleChart3D|uckyballGraph|uildingData|ulletGauge|usinessDayQ|utterflyGraph|utterworthFilterModel|utton|uttonBar|uttonBox|uttonNotebook|yteArray|yteArrayFormat|yteArrayFormatQ|yteArrayQ|yteArrayToString|yteCount))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:C(?:|DF|DFDeploy|DFWavelet|Form|MYKColor|SGRegion|SGRegionQ|SGRegionTree|alendarConvert|alendarData|allPacket|allout|anberraDistance|ancel|ancelButton|andlestickChart|anonicalGraph|anonicalName|anonicalWarpingCorrespondence|anonicalWarpingDistance|anonicalizePolygon|anonicalizePolyhedron|anonicalizeRegion|antorMesh|antorStaircase|ap|apForm|apitalDifferentialD|apitalize|apsuleShape|aputoD|arlemanLinearize|arlsonRC|arlsonRD|arlsonRE|arlsonRF|arlsonRG|arlsonRJ|arlsonRK|arlsonRM|armichaelLambda|aseSensitive|ases|ashflow|asoratian|atalanNumber|atch|atenate|auchyDistribution|auchyMatrix|auchyWindow|ayleyGraph|eiling|ell|ellGroup|ellGroupData|ellObject|ellPrint|ells|ellularAutomaton|ensoredDistribution|ensoring|enterArray|enterDot|enteredInterval|entralFeature|entralMoment|entralMomentGeneratingFunction|epstrogram|epstrogramArray|epstrumArray|hampernowneNumber|hanVeseBinarize|haracterCounts|haracterName|haracterRange|haracteristicFunction|haracteristicPolynomial|haracters|hebyshev1FilterModel|hebyshev2FilterModel|hebyshevT|hebyshevU|heck|heckAbort|heckArguments|heckbox|heckboxBar|hemicalData|hessboardDistance|hiDistribution|hiSquareDistribution|hineseRemainder|hoiceButtons|hoiceDialog|holeskyDecomposition|hop|hromaticPolynomial|hromaticityPlot|hromaticityPlot3D|ircle|ircleDot|ircleMinus|irclePlus|irclePoints|ircleThrough|ircleTimes|irculantGraph|ircularArcThrough|ircularOrthogonalMatrixDistribution|ircularQuaternionMatrixDistribution|ircularRealMatrixDistribution|ircularSymplecticMatrixDistribution|ircularUnitaryMatrixDistribution|ircumsphere|ityData|lassifierFunction|lassifierMeasurements|lassifierMeasurementsObject|lassify|lear|learAll|learAttributes|learCookies|learPermissions|learSystemCache|lebschGordan|lickPane|lickToCopy|lip|lock|lockGauge|lose|loseKernels|losenessCentrality|losing|loudAccountData|loudConnect|loudDeploy|loudDirectory|loudDisconnect|loudEvaluate|loudExport|loudFunction|loudGet|loudImport|loudLoggingData|loudObject|loudObjects|loudPublish|loudPut|loudSave|loudShare|loudSubmit|loudSymbol|loudUnshare|lusterClassify|lusteringComponents|lusteringMeasurements|lusteringTree|oefficient|oefficientArrays|oefficientList|oefficientRules|oifletWavelet|ollect|ollinearPoints|olon|olorBalance|olorCombine|olorConvert|olorData|olorDataFunction|olorDetect|olorDistance|olorNegate|olorProfileData|olorQ|olorQuantize|olorReplace|olorSeparate|olorSetter|olorSlider|olorToneMapping|olorize|olorsNear|olumn|ometData|ommonName|ommonUnits|ommonest|ommonestFilter|ommunityGraphPlot|ompanyData|ompatibleUnitQ|ompile|ompiledFunction|omplement|ompleteGraph|ompleteGraphQ|ompleteIntegral|ompleteKaryTree|omplex|omplexArrayPlot|omplexContourPlot|omplexExpand|omplexListPlot|omplexPlot|omplexPlot3D|omplexRegionPlot|omplexStreamPlot|omplexVectorPlot|omponentMeasurements|omposeList|omposeSeries|ompositeQ|omposition|ompoundElement|ompoundExpression|ompoundPoissonDistribution|ompoundPoissonProcess|ompoundRenewalProcess|ompress|oncaveHullMesh|ondition|onditionalExpression|onditioned|one|onfirm|onfirmAssert|onfirmBy|onfirmMatch|onformAudio|onformImages|ongruent|onicGradientFilling|onicHullRegion|onicOptimization|onjugate|onjugateTranspose|onjunction|onnectLibraryCallbackFunction|onnectedComponents|onnectedGraphComponents|onnectedGraphQ|onnectedMeshComponents|onnesWindow|onoverTest|onservativeConvectionPDETerm|onstantArray|onstantImage|onstantRegionQ|onstellationData|onstruct|ontainsAll|ontainsAny|ontainsExactly|ontainsNone|ontainsOnly|ontext|ontextToFileName|ontexts|ontinue|ontinuedFraction|ontinuedFractionK|ontinuousMarkovProcess|ontinuousTask|ontinuousTimeModelQ|ontinuousWaveletData|ontinuousWaveletTransform|ontourDetect|ontourPlot|ontourPlot3D|ontraharmonicMean|ontrol|ontrolActive|ontrollabilityGramian|ontrollabilityMatrix|ontrollableDecomposition|ontrollableModelQ|ontrollerInformation|ontrollerManipulate|ontrollerState|onvectionPDETerm|onvergents|onvexHullMesh|onvexHullRegion|onvexOptimization|onvexPolygonQ|onvexPolyhedronQ|onvexRegionQ|onvolve|onwayGroupCo1|onwayGroupCo2|onwayGroupCo3|oordinateBoundingBox|oordinateBoundingBoxArray|oordinateBounds|oordinateBoundsArray|oordinateChartData|oordinateTransform|oordinateTransformData|oplanarPoints|oprimeQ|oproduct|opulaDistribution|opyDatabin|opyDirectory|opyFile|opyToClipboard|oreNilpotentDecomposition|ornerFilter|orrelation|orrelationDistance|orrelationFunction|orrelationTest|os|osIntegral|osh|oshIntegral|osineDistance|osineWindow|ot|oth|oulombF|oulombG|oulombH1|oulombH2|ount|ountDistinct|ountDistinctBy|ountRoots|ountryData|ounts|ountsBy|ovariance|ovarianceFunction|oxIngersollRossProcess|oxModel|oxModelFit|oxianDistribution|ramerVonMisesTest|reateArchive|reateDatabin|reateDialog|reateDirectory|reateDocument|reateFile|reateManagedLibraryExpression|reateNotebook|reatePacletArchive|reatePalette|reatePermissionsGroup|reateUUID|reateWindow|riticalSection|riticalityFailureImportance|riticalitySuccessImportance|ross|rossMatrix|rossingCount|rossingDetect|rossingPolygon|sc|sch|ube|ubeRoot|uboid|umulant|umulantGeneratingFunction|umulativeFeatureImpactPlot|up|upCap|url|urrencyConvert|urrentDate|urrentImage|urrentValue|urvatureFlowFilter|ycleGraph|ycleIndexPolynomial|ycles|yclicGroup|yclotomic|ylinder|ylindricalDecomposition|ylindricalDecompositionFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:D(?:|Eigensystem|Eigenvalues|GaussianWavelet|MSList|MSString|Solve|SolveValue|agumDistribution|amData|amerauLevenshteinDistance|arker|ashing|ataDistribution|atabin|atabinAdd|atabinUpload|atabins|ataset|ateBounds|ateDifference|ateHistogram|ateList|ateListLogPlot|ateListPlot|ateListStepPlot|ateObject|ateObjectQ|ateOverlapsQ|atePattern|atePlus|ateRange|ateScale|ateSelect|ateString|ateValue|ateWithinQ|ated|atedUnit|aubechiesWavelet|avisDistribution|awsonF|ayCount|ayHemisphere|ayMatchQ|ayName|ayNightTerminator|ayPlus|ayRange|ayRound|aylightQ|eBruijnGraph|eBruijnSequence|ecapitalize|ecimalForm|eclarePackage|ecompose|ecrement|ecrypt|edekindEta|eepSpaceProbeData|efault|efaultButton|efaultValues|efer|efineInputStreamMethod|efineOutputStreamMethod|efineResourceFunction|efinition|egreeCentrality|egreeGraphDistribution|el|elaunayMesh|elayed|elete|eleteAdjacentDuplicates|eleteAnomalies|eleteBorderComponents|eleteCases|eleteDirectory|eleteDuplicates|eleteDuplicatesBy|eleteFile|eleteMissing|eleteObject|eletePermissionsKey|eleteSmallComponents|eleteStopwords|elimitedSequence|endrogram|enominator|ensityHistogram|ensityPlot|ensityPlot3D|eploy|epth|epthFirstScan|erivative|erivativeFilter|erivativePDETerm|esignMatrix|et|eviceClose|eviceConfigure|eviceExecute|eviceExecuteAsynchronous|eviceObject|eviceOpen|eviceRead|eviceReadBuffer|eviceReadLatest|eviceReadList|eviceReadTimeSeries|eviceStreams|eviceWrite|eviceWriteBuffer|evices|iagonal|iagonalMatrix|iagonalMatrixQ|iagonalizableMatrixQ|ialog|ialogInput|ialogNotebook|ialogReturn|iamond|iamondMatrix|iceDissimilarity|ictionaryLookup|ictionaryWordQ|ifferenceDelta|ifferenceQuotient|ifferenceRoot|ifferenceRootReduce|ifferences|ifferentialD|ifferentialRoot|ifferentialRootReduce|ifferentiatorFilter|iffusionPDETerm|igitCount|igitQ|ihedralAngle|ihedralGroup|ilation|imensionReduce|imensionReducerFunction|imensionReduction|imensionalCombinations|imensionalMeshComponents|imensions|iracComb|iracDelta|irectedEdge|irectedGraph|irectedGraphQ|irectedInfinity|irectionalLight|irective|irectory|irectoryName|irectoryQ|irectoryStack|irichletBeta|irichletCharacter|irichletCondition|irichletConvolve|irichletDistribution|irichletEta|irichletL|irichletLambda|irichletTransform|irichletWindow|iscreteAsymptotic|iscreteChirpZTransform|iscreteConvolve|iscreteDelta|iscreteHadamardTransform|iscreteIndicator|iscreteInputOutputModel|iscreteLQEstimatorGains|iscreteLQRegulatorGains|iscreteLimit|iscreteLyapunovSolve|iscreteMarkovProcess|iscreteMaxLimit|iscreteMinLimit|iscretePlot|iscretePlot3D|iscreteRatio|iscreteRiccatiSolve|iscreteShift|iscreteTimeModelQ|iscreteUniformDistribution|iscreteWaveletData|iscreteWaveletPacketTransform|iscreteWaveletTransform|iscretizeGraphics|iscretizeRegion|iscriminant|isjointQ|isjunction|isk|iskMatrix|iskSegment|ispatch|isplayEndPacket|isplayForm|isplayPacket|istanceMatrix|istanceTransform|istribute|istributeDefinitions|istributed|istributionChart|istributionFitTest|istributionParameterAssumptions|istributionParameterQ|iv|ivide|ivideBy|ivideSides|ivisible|ivisorSigma|ivisorSum|ivisors|o|ocumentGenerator|ocumentGeneratorInformation|ocumentGenerators|ocumentNotebook|odecahedron|ominantColors|ominatorTreeGraph|ominatorVertexList|ot|otEqual|oubleBracketingBar|oubleDownArrow|oubleLeftArrow|oubleLeftRightArrow|oubleLeftTee|oubleLongLeftArrow|oubleLongLeftRightArrow|oubleLongRightArrow|oubleRightArrow|oubleRightTee|oubleUpArrow|oubleUpDownArrow|oubleVerticalBar|ownArrow|ownArrowBar|ownArrowUpArrow|ownLeftRightVector|ownLeftTeeVector|ownLeftVector|ownLeftVectorBar|ownRightTeeVector|ownRightVector|ownRightVectorBar|ownTee|ownTeeArrow|ownValues|ownsample|razinInverse|rop|ropShadowing|t|ualPlanarGraph|ualPolyhedron|ualSystemsModel|umpSave|uplicateFreeQ|uration|ynamic|ynamicGeoGraphics|ynamicModule|ynamicSetting|ynamicWrapper))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:E(?:arthImpactData|arthquakeData|ccentricityCentrality|choEvaluation|choFunction|choLabel|dgeAdd|dgeBetweennessCentrality|dgeChromaticNumber|dgeConnectivity|dgeContract|dgeCount|dgeCoverQ|dgeCycleMatrix|dgeDelete|dgeDetect|dgeForm|dgeIndex|dgeList|dgeQ|dgeRules|dgeTaggedGraph|dgeTaggedGraphQ|dgeTags|dgeTransitiveGraphQ|dgeWeightedGraphQ|ditDistance|ffectiveInterest|igensystem|igenvalues|igenvectorCentrality|igenvectors|lement|lementData|liminate|llipsoid|llipticE|llipticExp|llipticExpPrime|llipticF|llipticFilterModel|llipticK|llipticLog|llipticNomeQ|llipticPi|llipticTheta|llipticThetaPrime|mbedCode|mbeddedHTML|mbeddedService|mitSound|mpiricalDistribution|mptyGraphQ|mptyRegion|nclose|ncode|ncrypt|ncryptedObject|nd|ndDialogPacket|ndPackage|ngineeringForm|nterExpressionPacket|nterTextPacket|ntity|ntityClass|ntityClassList|ntityCopies|ntityGroup|ntityInstance|ntityList|ntityPrefetch|ntityProperties|ntityProperty|ntityPropertyClass|ntityRegister|ntityStores|ntityTypeName|ntityUnregister|ntityValue|ntropy|ntropyFilter|nvironment|qual|qualTilde|qualTo|quilibrium|quirippleFilterKernel|quivalent|rf|rfc|rfi|rlangB|rlangC|rlangDistribution|rosion|rrorBox|stimatedBackground|stimatedDistribution|stimatedPointNormals|stimatedProcess|stimatorGains|stimatorRegulator|uclideanDistance|ulerAngles|ulerCharacteristic|ulerE|ulerMatrix|ulerPhi|ulerianGraphQ|valuate|valuatePacket|valuationBox|valuationCell|valuationData|valuationNotebook|valuationObject|venQ|ventData|ventHandler|ventSeries|xactBlackmanWindow|xactNumberQ|xampleData|xcept|xists|xoplanetData|xp|xpGammaDistribution|xpIntegralE|xpIntegralEi|xpToTrig|xpand|xpandAll|xpandDenominator|xpandFileName|xpandNumerator|xpectation|xponent|xponentialDistribution|xponentialGeneratingFunction|xponentialMovingAverage|xponentialPowerDistribution|xport|xportByteArray|xportForm|xportString|xpressionCell|xpressionGraph|xtendedGCD|xternalBundle|xtract|xtractArchive|xtractPacletArchive|xtremeValueDistribution))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:F(?:ARIMAProcess|RatioDistribution|aceAlign|aceForm|acialFeatures|actor|actorInteger|actorList|actorSquareFree|actorSquareFreeList|actorTerms|actorTermsList|actorial|actorial2|actorialMoment|actorialMomentGeneratingFunction|actorialPower|ailure|ailureDistribution|ailureQ|areySequence|eatureImpactPlot|eatureNearest|eatureSpacePlot|eatureSpacePlot3D|eatureValueDependencyPlot|eatureValueImpactPlot|eedbackLinearize|etalGrowthData|ibonacci|ibonorial|ile|ileBaseName|ileByteCount|ileDate|ileExistsQ|ileExtension|ileFormat|ileFormatQ|ileHash|ileNameDepth|ileNameDrop|ileNameJoin|ileNameSetter|ileNameSplit|ileNameTake|ileNames|ilePrint|ileSize|ileSystemMap|ileSystemScan|ileTemplate|ileTemplateApply|ileType|illedCurve|illedTorus|illingTransform|ilterRules|inancialBond|inancialData|inancialDerivative|inancialIndicator|ind|indAnomalies|indArgMax|indArgMin|indClique|indClusters|indCookies|indCurvePath|indCycle|indDevices|indDistribution|indDistributionParameters|indDivisions|indEdgeColoring|indEdgeCover|indEdgeCut|indEdgeIndependentPaths|indEulerianCycle|indFaces|indFile|indFit|indFormula|indFundamentalCycles|indGeneratingFunction|indGeoLocation|indGeometricTransform|indGraphCommunities|indGraphIsomorphism|indGraphPartition|indHamiltonianCycle|indHamiltonianPath|indHiddenMarkovStates|indIndependentEdgeSet|indIndependentVertexSet|indInstance|indIntegerNullVector|indIsomorphicSubgraph|indKClan|indKClique|indKClub|indKPlex|indLibrary|indLinearRecurrence|indList|indMatchingColor|indMaxValue|indMaximum|indMaximumCut|indMaximumFlow|indMeshDefects|indMinValue|indMinimum|indMinimumCostFlow|indMinimumCut|indPath|indPeaks|indPermutation|indPlanarColoring|indPostmanTour|indProcessParameters|indRegionTransform|indRepeat|indRoot|indSequenceFunction|indShortestPath|indShortestTour|indSpanningTree|indSubgraphIsomorphism|indThreshold|indTransientRepeat|indVertexColoring|indVertexCover|indVertexCut|indVertexIndependentPaths|inishDynamic|initeAbelianGroupCount|initeGroupCount|initeGroupData|irst|irstCase|irstPassageTimeDistribution|irstPosition|ischerGroupFi22|ischerGroupFi23|ischerGroupFi24Prime|isherHypergeometricDistribution|isherRatioTest|isherZDistribution|it|ittedModel|ixedOrder|ixedPoint|ixedPointList|latShading|latTopWindow|latten|lattenAt|lightData|lipView|loor|lowPolynomial|old|oldList|oldPair|oldPairList|oldWhile|oldWhileList|or|orAll|ormBox|ormFunction|ormObject|ormPage|ormat|ormulaData|ormulaLookup|ortranForm|ourier|ourierCoefficient|ourierCosCoefficient|ourierCosSeries|ourierCosTransform|ourierDCT|ourierDCTFilter|ourierDCTMatrix|ourierDST|ourierDSTMatrix|ourierMatrix|ourierSequenceTransform|ourierSeries|ourierSinCoefficient|ourierSinSeries|ourierSinTransform|ourierTransform|ourierTrigSeries|oxH|ractionBox|ractionalBrownianMotionProcess|ractionalD|ractionalGaussianNoiseProcess|ractionalPart|rameBox|ramed|rechetDistribution|reeQ|renetSerretSystem|requencySamplingFilterKernel|resnelC|resnelF|resnelG|resnelS|robeniusNumber|robeniusSolve|romAbsoluteTime|romCharacterCode|romCoefficientRules|romContinuedFraction|romDMS|romDateString|romDigits|romEntity|romJulianDate|romLetterNumber|romPolarCoordinates|romRomanNumeral|romSphericalCoordinates|romUnixTime|rontEndExecute|rontEndToken|rontEndTokenExecute|ullDefinition|ullForm|ullGraphics|ullInformationOutputRegulator|ullRegion|ullSimplify|unction|unctionAnalytic|unctionBijective|unctionContinuous|unctionConvexity|unctionDiscontinuities|unctionDomain|unctionExpand|unctionInjective|unctionInterpolation|unctionMeromorphic|unctionMonotonicity|unctionPeriod|unctionRange|unctionSign|unctionSingularities|unctionSurjective|ussellVeselyImportance))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:G(?:ARCHProcess|CD|aborFilter|aborMatrix|aborWavelet|ainMargins|ainPhaseMargins|alaxyData|amma|ammaDistribution|ammaRegularized|ather|atherBy|aussianFilter|aussianMatrix|aussianOrthogonalMatrixDistribution|aussianSymplecticMatrixDistribution|aussianUnitaryMatrixDistribution|aussianWindow|egenbauerC|eneralizedLinearModelFit|enerateAsymmetricKeyPair|enerateDocument|enerateHTTPResponse|enerateSymmetricKey|eneratingFunction|enericCylindricalDecomposition|enomeData|enomeLookup|eoAntipode|eoArea|eoBoundary|eoBoundingBox|eoBounds|eoBoundsRegion|eoBoundsRegionBoundary|eoBubbleChart|eoCircle|eoContourPlot|eoDensityPlot|eoDestination|eoDirection|eoDisk|eoDisplacement|eoDistance|eoDistanceList|eoElevationData|eoEntities|eoGraphPlot|eoGraphics|eoGridDirectionDifference|eoGridPosition|eoGridUnitArea|eoGridUnitDistance|eoGridVector|eoGroup|eoHemisphere|eoHemisphereBoundary|eoHistogram|eoIdentify|eoImage|eoLength|eoListPlot|eoMarker|eoNearest|eoPath|eoPolygon|eoPosition|eoPositionENU|eoPositionXYZ|eoProjectionData|eoRegionValuePlot|eoSmoothHistogram|eoStreamPlot|eoStyling|eoVariant|eoVector|eoVectorENU|eoVectorPlot|eoVectorXYZ|eoVisibleRegion|eoVisibleRegionBoundary|eoWithinQ|eodesicClosing|eodesicDilation|eodesicErosion|eodesicOpening|eodesicPolyhedron|eodesyData|eogravityModelData|eologicalPeriodData|eomagneticModelData|eometricBrownianMotionProcess|eometricDistribution|eometricMean|eometricMeanFilter|eometricOptimization|eometricTransformation|estureHandler|et|etEnvironment|lobalClusteringCoefficient|low|ompertzMakehamDistribution|oochShading|oodmanKruskalGamma|oodmanKruskalGammaTest|oto|ouraudShading|rad|radientFilter|radientFittedMesh|radientOrientationFilter|rammarApply|rammarRules|rammarToken|raph|raph3D|raphAssortativity|raphAutomorphismGroup|raphCenter|raphComplement|raphData|raphDensity|raphDiameter|raphDifference|raphDisjointUnion|raphDistance|raphDistanceMatrix|raphEmbedding|raphHub|raphIntersection|raphJoin|raphLinkEfficiency|raphPeriphery|raphPlot|raphPlot3D|raphPower|raphProduct|raphPropertyDistribution|raphQ|raphRadius|raphReciprocity|raphSum|raphUnion|raphics|raphics3D|raphicsColumn|raphicsComplex|raphicsGrid|raphicsGroup|raphicsRow|rayLevel|reater|reaterEqual|reaterEqualLess|reaterEqualThan|reaterFullEqual|reaterGreater|reaterLess|reaterSlantEqual|reaterThan|reaterTilde|reenFunction|rid|ridBox|ridGraph|roebnerBasis|roupBy|roupCentralizer|roupElementFromWord|roupElementPosition|roupElementQ|roupElementToWord|roupElements|roupGenerators|roupMultiplicationTable|roupOrbits|roupOrder|roupSetwiseStabilizer|roupStabilizer|roupStabilizerChain|roupings|rowCutComponents|udermannian|uidedFilter|umbelDistribution))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:H(?:ITSCentrality|TTPErrorResponse|TTPRedirect|TTPRequest|TTPRequestData|TTPResponse|aarWavelet|adamardMatrix|alfLine|alfNormalDistribution|alfPlane|alfSpace|alftoneShading|amiltonianGraphQ|ammingDistance|ammingWindow|ankelH1|ankelH2|ankelMatrix|ankelTransform|annPoissonWindow|annWindow|aradaNortonGroupHN|araryGraph|armonicMean|armonicMeanFilter|armonicNumber|ash|atchFilling|atchShading|aversine|azardFunction|ead|eatFluxValue|eatInsulationValue|eatOutflowValue|eatRadiationValue|eatSymmetryValue|eatTemperatureCondition|eatTransferPDEComponent|eatTransferValue|eavisideLambda|eavisidePi|eavisideTheta|eldGroupHe|elmholtzPDEComponent|ermiteDecomposition|ermiteH|ermitian|ermitianMatrixQ|essenbergDecomposition|eunB|eunBPrime|eunC|eunCPrime|eunD|eunDPrime|eunG|eunGPrime|eunT|eunTPrime|exahedron|iddenMarkovProcess|ighlightGraph|ighlightImage|ighlightMesh|ighlighted|ighpassFilter|igmanSimsGroupHS|ilbertCurve|ilbertFilter|ilbertMatrix|istogram|istogram3D|istogramDistribution|istogramList|istogramTransform|istogramTransformInterpolation|istoricalPeriodData|itMissTransform|jorthDistribution|odgeDual|oeffdingD|oeffdingDTest|old|oldComplete|oldForm|oldPattern|orizontalGauge|ornerForm|ostLookup|otellingTSquareDistribution|oytDistribution|ue|umanGrowthData|umpDownHump|umpEqual|urwitzLerchPhi|urwitzZeta|yperbolicDistribution|ypercubeGraph|yperexponentialDistribution|yperfactorial|ypergeometric0F1|ypergeometric0F1Regularized|ypergeometric1F1|ypergeometric1F1Regularized|ypergeometric2F1|ypergeometric2F1Regularized|ypergeometricDistribution|ypergeometricPFQ|ypergeometricPFQRegularized|ypergeometricU|yperlink|yperplane|ypoexponentialDistribution|ypothesisTestData))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:I(?:PAddress|conData|conize|cosahedron|dentity|dentityMatrix|f|fCompiled|gnoringInactive|m|mage|mage3D|mage3DProjection|mage3DSlices|mageAccumulate|mageAdd|mageAdjust|mageAlign|mageApply|mageApplyIndexed|mageAspectRatio|mageAssemble|mageCapture|mageChannels|mageClip|mageCollage|mageColorSpace|mageCompose|mageConvolve|mageCooccurrence|mageCorners|mageCorrelate|mageCorrespondingPoints|mageCrop|mageData|mageDeconvolve|mageDemosaic|mageDifference|mageDimensions|mageDisplacements|mageDistance|mageEffect|mageExposureCombine|mageFeatureTrack|mageFileApply|mageFileFilter|mageFileScan|mageFilter|mageFocusCombine|mageForestingComponents|mageForwardTransformation|mageHistogram|mageIdentify|mageInstanceQ|mageKeypoints|mageLevels|mageLines|mageMarker|mageMeasurements|mageMesh|mageMultiply|magePad|magePartition|magePeriodogram|magePerspectiveTransformation|mageQ|mageRecolor|mageReflect|mageResize|mageRestyle|mageRotate|mageSaliencyFilter|mageScaled|mageScan|mageSubtract|mageTake|mageTransformation|mageTrim|mageType|mageValue|mageValuePositions|mageVectorscopePlot|mageWaveformPlot|mplicitD|mplicitRegion|mplies|mport|mportByteArray|mportString|mprovementImportance|nactivate|nactive|ncidenceGraph|ncidenceList|ncidenceMatrix|ncrement|ndefiniteMatrixQ|ndependenceTest|ndependentEdgeSetQ|ndependentPhysicalQuantity|ndependentUnit|ndependentUnitDimension|ndependentVertexSetQ|ndexEdgeTaggedGraph|ndexGraph|ndexed|nexactNumberQ|nfiniteLine|nfiniteLineThrough|nfinitePlane|nfix|nflationAdjust|nformation|nhomogeneousPoissonProcess|nner|nnerPolygon|nnerPolyhedron|npaint|nput|nputField|nputForm|nputNamePacket|nputNotebook|nputPacket|nputStream|nputString|nputStringPacket|nsert|nsertLinebreaks|nset|nsphere|nstall|nstallService|ntegerDigits|ntegerExponent|ntegerLength|ntegerName|ntegerPart|ntegerPartitions|ntegerQ|ntegerReverse|ntegerString|ntegrate|nteractiveTradingChart|nternallyBalancedDecomposition|nterpolatingFunction|nterpolatingPolynomial|nterpolation|nterpretation|nterpretationBox|nterpreter|nterquartileRange|nterrupt|ntersectingQ|ntersection|nterval|ntervalIntersection|ntervalMemberQ|ntervalSlider|ntervalUnion|nverse|nverseBetaRegularized|nverseBilateralLaplaceTransform|nverseBilateralZTransform|nverseCDF|nverseChiSquareDistribution|nverseContinuousWaveletTransform|nverseDistanceTransform|nverseEllipticNomeQ|nverseErf|nverseErfc|nverseFourier|nverseFourierCosTransform|nverseFourierSequenceTransform|nverseFourierSinTransform|nverseFourierTransform|nverseFunction|nverseGammaDistribution|nverseGammaRegularized|nverseGaussianDistribution|nverseGudermannian|nverseHankelTransform|nverseHaversine|nverseJacobiCD|nverseJacobiCN|nverseJacobiCS|nverseJacobiDC|nverseJacobiDN|nverseJacobiDS|nverseJacobiNC|nverseJacobiND|nverseJacobiNS|nverseJacobiSC|nverseJacobiSD|nverseJacobiSN|nverseLaplaceTransform|nverseMellinTransform|nversePermutation|nverseRadon|nverseRadonTransform|nverseSeries|nverseShortTimeFourier|nverseSpectrogram|nverseSurvivalFunction|nverseTransformedRegion|nverseWaveletTransform|nverseWeierstrassP|nverseWishartMatrixDistribution|nverseZTransform|nvisible|rreduciblePolynomialQ|slandData|solatingInterval|somorphicGraphQ|somorphicSubgraphQ|sotopeData|tem|toProcess))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:J(?:accardDissimilarity|acobiAmplitude|acobiCD|acobiCN|acobiCS|acobiDC|acobiDN|acobiDS|acobiEpsilon|acobiNC|acobiND|acobiNS|acobiP|acobiSC|acobiSD|acobiSN|acobiSymbol|acobiZN|acobiZeta|ankoGroupJ1|ankoGroupJ2|ankoGroupJ3|ankoGroupJ4|arqueBeraALMTest|ohnsonDistribution|oin|oinAcross|oinForm|oinedCurve|ordanDecomposition|ordanModelDecomposition|uliaSetBoettcher|uliaSetIterationCount|uliaSetPlot|uliaSetPoints|ulianDate))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:K(?:CoreComponents|Distribution|EdgeConnectedComponents|EdgeConnectedGraphQ|VertexConnectedComponents|VertexConnectedGraphQ|agiChart|aiserBesselWindow|aiserWindow|almanEstimator|almanFilter|arhunenLoeveDecomposition|aryTree|atzCentrality|elvinBei|elvinBer|elvinKei|elvinKer|endallTau|endallTauTest|ernelMixtureDistribution|ernelObject|ernels|ey|eyComplement|eyDrop|eyDropFrom|eyExistsQ|eyFreeQ|eyIntersection|eyMap|eyMemberQ|eySelect|eySort|eySortBy|eyTake|eyUnion|eyValueMap|eyValuePattern|eys|illProcess|irchhoffGraph|irchhoffMatrix|leinInvariantJ|napsackSolve|nightTourGraph|notData|nownUnitQ|ochCurve|olmogorovSmirnovTest|roneckerDelta|roneckerModelDecomposition|roneckerProduct|roneckerSymbol|uiperTest|umaraswamyDistribution|urtosis|uwaharaFilter))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:L(?:ABColor|CHColor|CM|QEstimatorGains|QGRegulator|QOutputRegulatorGains|QRegulatorGains|UDecomposition|UVColor|abel|abeled|aguerreL|akeData|ambdaComponents|ameC|ameCPrime|ameEigenvalueA|ameEigenvalueB|ameS|ameSPrime|aminaData|anczosWindow|andauDistribution|anguageData|anguageIdentify|aplaceDistribution|aplaceTransform|aplacian|aplacianFilter|aplacianGaussianFilter|aplacianPDETerm|ast|atitude|atitudeLongitude|atticeData|atticeReduce|aunchKernels|ayeredGraphPlot|ayeredGraphPlot3D|eafCount|eapVariant|eapYearQ|earnDistribution|earnedDistribution|eastSquares|eastSquaresFilterKernel|eftArrow|eftArrowBar|eftArrowRightArrow|eftDownTeeVector|eftDownVector|eftDownVectorBar|eftRightArrow|eftRightVector|eftTee|eftTeeArrow|eftTeeVector|eftTriangle|eftTriangleBar|eftTriangleEqual|eftUpDownVector|eftUpTeeVector|eftUpVector|eftUpVectorBar|eftVector|eftVectorBar|egended|egendreP|egendreQ|ength|engthWhile|erchPhi|ess|essEqual|essEqualGreater|essEqualThan|essFullEqual|essGreater|essLess|essSlantEqual|essThan|essTilde|etterCounts|etterNumber|etterQ|evel|eveneTest|eviCivitaTensor|evyDistribution|exicographicOrder|exicographicSort|ibraryDataType|ibraryFunction|ibraryFunctionError|ibraryFunctionInformation|ibraryFunctionLoad|ibraryFunctionUnload|ibraryLoad|ibraryUnload|iftingFilterData|iftingWaveletTransform|ighter|ikelihood|imit|indleyDistribution|ine|ineBreakChart|ineGraph|ineIntegralConvolutionPlot|ineLegend|inearFractionalOptimization|inearFractionalTransform|inearGradientFilling|inearGradientImage|inearModelFit|inearOptimization|inearRecurrence|inearSolve|inearSolveFunction|inearizingTransformationData|inkActivate|inkClose|inkConnect|inkCreate|inkInterrupt|inkLaunch|inkObject|inkPatterns|inkRankCentrality|inkRead|inkReadyQ|inkWrite|inks|iouvilleLambda|ist|istAnimate|istContourPlot|istContourPlot3D|istConvolve|istCorrelate|istCurvePathPlot|istDeconvolve|istDensityPlot|istDensityPlot3D|istFourierSequenceTransform|istInterpolation|istLineIntegralConvolutionPlot|istLinePlot|istLinePlot3D|istLogLinearPlot|istLogLogPlot|istLogPlot|istPicker|istPickerBox|istPlay|istPlot|istPlot3D|istPointPlot3D|istPolarPlot|istQ|istSliceContourPlot3D|istSliceDensityPlot3D|istSliceVectorPlot3D|istStepPlot|istStreamDensityPlot|istStreamPlot|istStreamPlot3D|istSurfacePlot3D|istVectorDensityPlot|istVectorDisplacementPlot|istVectorDisplacementPlot3D|istVectorPlot|istVectorPlot3D|istZTransform|ocalAdaptiveBinarize|ocalCache|ocalClusteringCoefficient|ocalEvaluate|ocalObject|ocalObjects|ocalSubmit|ocalSymbol|ocalTime|ocalTimeZone|ocationEquivalenceTest|ocationTest|ocator|ocatorPane|og|og10|og2|ogBarnesG|ogGamma|ogGammaDistribution|ogIntegral|ogLikelihood|ogLinearPlot|ogLogPlot|ogLogisticDistribution|ogMultinormalDistribution|ogNormalDistribution|ogPlot|ogRankTest|ogSeriesDistribution|ogicalExpand|ogisticDistribution|ogisticSigmoid|ogitModelFit|ongLeftArrow|ongLeftRightArrow|ongRightArrow|ongest|ongestCommonSequence|ongestCommonSequencePositions|ongestCommonSubsequence|ongestCommonSubsequencePositions|ongestOrderedSequence|ongitude|ookup|oopFreeGraphQ|owerCaseQ|owerLeftArrow|owerRightArrow|owerTriangularMatrix|owerTriangularMatrixQ|owerTriangularize|owpassFilter|ucasL|uccioSamiComponents|unarEclipse|yapunovSolve|yonsGroupLy))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:M(?:AProcess|achineNumberQ|agnify|ailReceiverFunction|ajority|akeBoxes|akeExpression|anagedLibraryExpressionID|anagedLibraryExpressionQ|andelbrotSetBoettcher|andelbrotSetDistance|andelbrotSetIterationCount|andelbrotSetMemberQ|andelbrotSetPlot|angoldtLambda|anhattanDistance|anipulate|anipulator|annWhitneyTest|annedSpaceMissionData|antissaExponent|ap|apAll|apApply|apAt|apIndexed|apThread|archenkoPasturDistribution|arcumQ|ardiaCombinedTest|ardiaKurtosisTest|ardiaSkewnessTest|arginalDistribution|arkovProcessProperties|assConcentrationCondition|assFluxValue|assImpermeableBoundaryValue|assOutflowValue|assSymmetryValue|assTransferValue|assTransportPDEComponent|atchQ|atchingDissimilarity|aterialShading|athMLForm|athematicalFunctionData|athieuC|athieuCPrime|athieuCharacteristicA|athieuCharacteristicB|athieuCharacteristicExponent|athieuGroupM11|athieuGroupM12|athieuGroupM22|athieuGroupM23|athieuGroupM24|athieuS|athieuSPrime|atrices|atrixExp|atrixForm|atrixFunction|atrixLog|atrixNormalDistribution|atrixPlot|atrixPower|atrixPropertyDistribution|atrixQ|atrixRank|atrixTDistribution|ax|axDate|axDetect|axFilter|axLimit|axMemoryUsed|axStableDistribution|axValue|aximalBy|aximize|axwellDistribution|cLaughlinGroupMcL|ean|eanClusteringCoefficient|eanDegreeConnectivity|eanDeviation|eanFilter|eanGraphDistance|eanNeighborDegree|eanShift|eanShiftFilter|edian|edianDeviation|edianFilter|edicalTestData|eijerG|eijerGReduce|eixnerDistribution|ellinConvolve|ellinTransform|emberQ|emoryAvailable|emoryConstrained|emoryInUse|engerMesh|enuPacket|enuView|erge|ersennePrimeExponent|ersennePrimeExponentQ|eshCellCount|eshCellIndex|eshCells|eshConnectivityGraph|eshCoordinates|eshPrimitives|eshRegion|eshRegionQ|essage|essageDialog|essageList|essageName|essagePacket|essages|eteorShowerData|exicanHatWavelet|eyerWavelet|in|inDate|inDetect|inFilter|inLimit|inMax|inStableDistribution|inValue|ineralData|inimalBy|inimalPolynomial|inimalStateSpaceModel|inimize|inimumTimeIncrement|inkowskiQuestionMark|inorPlanetData|inors|inus|inusPlus|issing|issingQ|ittagLefflerE|ixedFractionParts|ixedGraphQ|ixedMagnitude|ixedRadix|ixedRadixQuantity|ixedUnit|ixtureDistribution|od|odelPredictiveController|odularInverse|odularLambda|odule|oebiusMu|oment|omentConvert|omentEvaluate|omentGeneratingFunction|omentOfInertia|onitor|onomialList|onsterGroupM|oonPhase|oonPosition|orletWavelet|orphologicalBinarize|orphologicalBranchPoints|orphologicalComponents|orphologicalEulerNumber|orphologicalGraph|orphologicalPerimeter|orphologicalTransform|ortalityData|ost|ountainData|ouseAnnotation|ouseAppearance|ousePosition|ouseover|ovieData|ovingAverage|ovingMap|ovingMedian|oyalDistribution|ulticolumn|ultigraphQ|ultinomial|ultinomialDistribution|ultinormalDistribution|ultiplicativeOrder|ultiplySides|ultivariateHypergeometricDistribution|ultivariatePoissonDistribution|ultivariateTDistribution))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:N(?:|ArgMax|ArgMin|Cache|CaputoD|DEigensystem|DEigenvalues|DSolve|DSolveValue|Expectation|FractionalD|Integrate|MaxValue|Maximize|MinValue|Minimize|Probability|Product|Roots|Solve|SolveValues|Sum|akagamiDistribution|ameQ|ames|and|earest|earestFunction|earestMeshCells|earestNeighborGraph|earestTo|ebulaData|eedlemanWunschSimilarity|eeds|egative|egativeBinomialDistribution|egativeDefiniteMatrixQ|egativeMultinomialDistribution|egativeSemidefiniteMatrixQ|egativelyOrientedPoints|eighborhoodData|eighborhoodGraph|est|estGraph|estList|estWhile|estWhileList|estedGreaterGreater|estedLessLess|eumannValue|evilleThetaC|evilleThetaD|evilleThetaN|evilleThetaS|extCell|extDate|extPrime|icholsPlot|ightHemisphere|onCommutativeMultiply|onNegative|onPositive|oncentralBetaDistribution|oncentralChiSquareDistribution|oncentralFRatioDistribution|oncentralStudentTDistribution|ondimensionalizationTransform|oneTrue|onlinearModelFit|onlinearStateSpaceModel|onlocalMeansFilter|or|orlundB|orm|ormal|ormalDistribution|ormalMatrixQ|ormalize|ormalizedSquaredEuclideanDistance|ot|otCongruent|otCupCap|otDoubleVerticalBar|otElement|otEqualTilde|otExists|otGreater|otGreaterEqual|otGreaterFullEqual|otGreaterGreater|otGreaterLess|otGreaterSlantEqual|otGreaterTilde|otHumpDownHump|otHumpEqual|otLeftTriangle|otLeftTriangleBar|otLeftTriangleEqual|otLess|otLessEqual|otLessFullEqual|otLessGreater|otLessLess|otLessSlantEqual|otLessTilde|otNestedGreaterGreater|otNestedLessLess|otPrecedes|otPrecedesEqual|otPrecedesSlantEqual|otPrecedesTilde|otReverseElement|otRightTriangle|otRightTriangleBar|otRightTriangleEqual|otSquareSubset|otSquareSubsetEqual|otSquareSuperset|otSquareSupersetEqual|otSubset|otSubsetEqual|otSucceeds|otSucceedsEqual|otSucceedsSlantEqual|otSucceedsTilde|otSuperset|otSupersetEqual|otTilde|otTildeEqual|otTildeFullEqual|otTildeTilde|otVerticalBar|otebook|otebookApply|otebookClose|otebookDelete|otebookDirectory|otebookEvaluate|otebookFileName|otebookFind|otebookGet|otebookImport|otebookInformation|otebookLocate|otebookObject|otebookOpen|otebookPrint|otebookPut|otebookRead|otebookSave|otebookSelection|otebookTemplate|otebookWrite|otebooks|othing|uclearExplosionData|uclearReactorData|ullSpace|umberCompose|umberDecompose|umberDigit|umberExpand|umberFieldClassNumber|umberFieldDiscriminant|umberFieldFundamentalUnits|umberFieldIntegralBasis|umberFieldNormRepresentatives|umberFieldRegulator|umberFieldRootsOfUnity|umberFieldSignature|umberForm|umberLinePlot|umberQ|umerator|umeratorDenominator|umericQ|umericalOrder|umericalSort|uttallWindow|yquistPlot))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:O(?:|NanGroupON|bservabilityGramian|bservabilityMatrix|bservableDecomposition|bservableModelQ|ceanData|ctahedron|ddQ|ff|ffset|n|nce|pacity|penAppend|penRead|penWrite|pener|penerView|pening|perate|ptimumFlowData|ptionValue|ptional|ptionalElement|ptions|ptionsPattern|r|rder|rderDistribution|rderedQ|rdering|rderingBy|rderlessPatternSequence|rnsteinUhlenbeckProcess|rthogonalMatrixQ|rthogonalize|uter|uterPolygon|uterPolyhedron|utputControllabilityMatrix|utputControllableModelQ|utputForm|utputNamePacket|utputResponse|utputStream|verBar|verDot|verHat|verTilde|verVector|verflow|verlay|verscript|verscriptBox|wenT|wnValues))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:P(?:DF|ERTDistribution|IDTune|acletDataRebuild|acletDirectoryLoad|acletDirectoryUnload|acletDisable|acletEnable|acletFind|acletFindRemote|acletInstall|acletInstallSubmit|acletNewerQ|acletObject|acletSiteObject|acletSiteRegister|acletSiteUnregister|acletSiteUpdate|acletSites|acletUninstall|adLeft|adRight|addedForm|adeApproximant|ageRankCentrality|airedBarChart|airedHistogram|airedSmoothHistogram|airedTTest|airedZTest|aletteNotebook|alindromeQ|ane|aneSelector|anel|arabolicCylinderD|arallelArray|arallelAxisPlot|arallelCombine|arallelDo|arallelEvaluate|arallelKernels|arallelMap|arallelNeeds|arallelProduct|arallelSubmit|arallelSum|arallelTable|arallelTry|arallelepiped|arallelize|arallelogram|arameterMixtureDistribution|arametricConvexOptimization|arametricFunction|arametricNDSolve|arametricNDSolveValue|arametricPlot|arametricPlot3D|arametricRegion|arentBox|arentCell|arentDirectory|arentNotebook|aretoDistribution|aretoPickandsDistribution|arkData|art|artOfSpeech|artialCorrelationFunction|articleAcceleratorData|articleData|artition|artitionsP|artitionsQ|arzenWindow|ascalDistribution|aste|asteButton|athGraph|athGraphQ|attern|atternSequence|atternTest|aulWavelet|auliMatrix|ause|eakDetect|eanoCurve|earsonChiSquareTest|earsonCorrelationTest|earsonDistribution|ercentForm|erfectNumber|erfectNumberQ|erimeter|eriodicBoundaryCondition|eriodogram|eriodogramArray|ermanent|ermissionsGroup|ermissionsGroupMemberQ|ermissionsGroups|ermissionsKey|ermissionsKeys|ermutationCycles|ermutationCyclesQ|ermutationGroup|ermutationLength|ermutationList|ermutationListQ|ermutationMatrix|ermutationMax|ermutationMin|ermutationOrder|ermutationPower|ermutationProduct|ermutationReplace|ermutationSupport|ermutations|ermute|eronaMalikFilter|ersonData|etersenGraph|haseMargins|hongShading|hysicalSystemData|ick|ieChart|ieChart3D|iecewise|iecewiseExpand|illaiTrace|illaiTraceTest|ingTime|ixelValue|ixelValuePositions|laced|laceholder|lanarAngle|lanarFaceList|lanarGraph|lanarGraphQ|lanckRadiationLaw|laneCurveData|lanetData|lanetaryMoonData|lantData|lay|lot|lot3D|luralize|lus|lusMinus|ochhammer|oint|ointFigureChart|ointLegend|ointLight|ointSize|oissonConsulDistribution|oissonDistribution|oissonPDEComponent|oissonProcess|oissonWindow|olarPlot|olyGamma|olyLog|olyaAeppliDistribution|olygon|olygonAngle|olygonCoordinates|olygonDecomposition|olygonalNumber|olyhedron|olyhedronAngle|olyhedronCoordinates|olyhedronData|olyhedronDecomposition|olyhedronGenus|olynomialExpressionQ|olynomialExtendedGCD|olynomialGCD|olynomialLCM|olynomialMod|olynomialQ|olynomialQuotient|olynomialQuotientRemainder|olynomialReduce|olynomialRemainder|olynomialSumOfSquaresList|opupMenu|opupView|opupWindow|osition|ositionIndex|ositionLargest|ositionSmallest|ositive|ositiveDefiniteMatrixQ|ositiveSemidefiniteMatrixQ|ositivelyOrientedPoints|ossibleZeroQ|ostfix|ower|owerDistribution|owerExpand|owerMod|owerModList|owerRange|owerSpectralDensity|owerSymmetricPolynomial|owersRepresentations|reDecrement|reIncrement|recedenceForm|recedes|recedesEqual|recedesSlantEqual|recedesTilde|recision|redict|redictorFunction|redictorMeasurements|redictorMeasurementsObject|reemptProtect|refix|repend|rependTo|reviousCell|reviousDate|riceGraphDistribution|rime|rimeNu|rimeOmega|rimePi|rimePowerQ|rimeQ|rimeZetaP|rimitivePolynomialQ|rimitiveRoot|rimitiveRootList|rincipalComponents|rintTemporary|rintableASCIIQ|rintout3D|rism|rivateKey|robability|robabilityDistribution|robabilityPlot|robabilityScalePlot|robitModelFit|rocessConnection|rocessInformation|rocessObject|rocessParameterAssumptions|rocessParameterQ|rocessStatus|rocesses|roduct|roductDistribution|roductLog|rogressIndicator|rojection|roportion|roportional|rotect|roteinData|runing|seudoInverse|sychrometricPropertyData|ublicKey|ulsarData|ut|utAppend|yramid))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:Q(?:Binomial|Factorial|Gamma|HypergeometricPFQ|Pochhammer|PolyGamma|RDecomposition|nDispersion|uadraticIrrationalQ|uadraticOptimization|uantile|uantilePlot|uantity|uantityArray|uantityDistribution|uantityForm|uantityMagnitude|uantityQ|uantityUnit|uantityVariable|uantityVariableCanonicalUnit|uantityVariableDimensions|uantityVariableIdentifier|uantityVariablePhysicalQuantity|uartileDeviation|uartileSkewness|uartiles|uery|ueueProperties|ueueingNetworkProcess|ueueingProcess|uiet|uietEcho|uotient|uotientRemainder))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:R(?:GBColor|Solve|SolveValue|adialAxisPlot|adialGradientFilling|adialGradientImage|adialityCentrality|adicalBox|adioButton|adioButtonBar|adon|adonTransform|amanujanTau|amanujanTauL|amanujanTauTheta|amanujanTauZ|amp|andomChoice|andomColor|andomComplex|andomDate|andomEntity|andomFunction|andomGeneratorState|andomGeoPosition|andomGraph|andomImage|andomInteger|andomPermutation|andomPoint|andomPolygon|andomPolyhedron|andomPrime|andomReal|andomSample|andomTime|andomVariate|andomWalkProcess|andomWord|ange|angeFilter|ankedMax|ankedMin|arerProbability|aster|aster3D|asterize|ational|ationalExpressionQ|ationalize|atios|awBoxes|awData|ayleighDistribution|e|eIm|eImPlot|eactionPDETerm|ead|eadByteArray|eadLine|eadList|eadString|ealAbs|ealDigits|ealExponent|ealSign|eap|econstructionMesh|ectangle|ectangleChart|ectangleChart3D|ectangularRepeatingElement|ecurrenceFilter|ecurrenceTable|educe|efine|eflectionMatrix|eflectionTransform|efresh|egion|egionBinarize|egionBoundary|egionBounds|egionCentroid|egionCongruent|egionConvert|egionDifference|egionDilation|egionDimension|egionDisjoint|egionDistance|egionDistanceFunction|egionEmbeddingDimension|egionEqual|egionErosion|egionFit|egionImage|egionIntersection|egionMeasure|egionMember|egionMemberFunction|egionMoment|egionNearest|egionNearestFunction|egionPlot|egionPlot3D|egionProduct|egionQ|egionResize|egionSimilar|egionSymmetricDifference|egionUnion|egionWithin|egularExpression|egularPolygon|egularlySampledQ|elationGraph|eleaseHold|eliabilityDistribution|eliefImage|eliefPlot|emove|emoveAlphaChannel|emoveBackground|emoveDiacritics|emoveInputStreamMethod|emoveOutputStreamMethod|emoveUsers|enameDirectory|enameFile|enewalProcess|enkoChart|epairMesh|epeated|epeatedNull|epeatedTiming|epeatingElement|eplace|eplaceAll|eplaceAt|eplaceImageValue|eplaceList|eplacePart|eplacePixelValue|eplaceRepeated|esamplingAlgorithmData|escale|escalingTransform|esetDirectory|esidue|esidueSum|esolve|esourceData|esourceObject|esourceSearch|esponseForm|est|estricted|esultant|eturn|eturnExpressionPacket|eturnPacket|eturnTextPacket|everse|everseBiorthogonalSplineWavelet|everseElement|everseEquilibrium|everseGraph|everseSort|everseSortBy|everseUpEquilibrium|evolutionPlot3D|iccatiSolve|iceDistribution|idgeFilter|iemannR|iemannSiegelTheta|iemannSiegelZ|iemannXi|iffle|ightArrow|ightArrowBar|ightArrowLeftArrow|ightComposition|ightCosetRepresentative|ightDownTeeVector|ightDownVector|ightDownVectorBar|ightTee|ightTeeArrow|ightTeeVector|ightTriangle|ightTriangleBar|ightTriangleEqual|ightUpDownVector|ightUpTeeVector|ightUpVector|ightUpVectorBar|ightVector|ightVectorBar|iskAchievementImportance|iskReductionImportance|obustConvexOptimization|ogersTanimotoDissimilarity|ollPitchYawAngles|ollPitchYawMatrix|omanNumeral|oot|ootApproximant|ootIntervals|ootLocusPlot|ootMeanSquare|ootOfUnityQ|ootReduce|ootSum|oots|otate|otateLeft|otateRight|otationMatrix|otationTransform|ound|ow|owBox|owReduce|udinShapiro|udvalisGroupRu|ule|uleDelayed|ulePlot|un|unProcess|unThrough|ussellRaoDissimilarity))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:S(?:ARIMAProcess|ARMAProcess|ASTriangle|SSTriangle|ameAs|ameQ|ampledSoundFunction|ampledSoundList|atelliteData|atisfiabilityCount|atisfiabilityInstances|atisfiableQ|ave|avitzkyGolayMatrix|awtoothWave|cale|caled|calingMatrix|calingTransform|can|cheduledTask|churDecomposition|cientificForm|corerGi|corerGiPrime|corerHi|corerHiPrime|ec|ech|echDistribution|econdOrderConeOptimization|ectorChart|ectorChart3D|eedRandom|elect|electComponents|electFirst|electedCells|electedNotebook|electionCreateCell|electionEvaluate|electionEvaluateCreateCell|electionMove|emanticImport|emanticImportString|emanticInterpretation|emialgebraicComponentInstances|emidefiniteOptimization|endMail|endMessage|equence|equenceAlignment|equenceCases|equenceCount|equenceFold|equenceFoldList|equencePosition|equenceReplace|equenceSplit|eries|eriesCoefficient|eriesData|erviceConnect|erviceDisconnect|erviceExecute|erviceObject|essionSubmit|essionTime|et|etAccuracy|etAlphaChannel|etAttributes|etCloudDirectory|etCookies|etDelayed|etDirectory|etEnvironment|etFileDate|etOptions|etPermissions|etPrecision|etSelectedNotebook|etSharedFunction|etSharedVariable|etStreamPosition|etSystemOptions|etUsers|etter|etterBar|etting|hallow|hannonWavelet|hapiroWilkTest|hare|harpen|hearingMatrix|hearingTransform|hellRegion|henCastanMatrix|hiftRegisterSequence|hiftedGompertzDistribution|hort|hortDownArrow|hortLeftArrow|hortRightArrow|hortTimeFourier|hortTimeFourierData|hortUpArrow|hortest|hortestPathFunction|how|iderealTime|iegelTheta|iegelTukeyTest|ierpinskiCurve|ierpinskiMesh|ign|ignTest|ignature|ignedRankTest|ignedRegionDistance|impleGraph|impleGraphQ|implePolygonQ|implePolyhedronQ|implex|implify|in|inIntegral|inc|inghMaddalaDistribution|ingularValueDecomposition|ingularValueList|ingularValuePlot|inh|inhIntegral|ixJSymbol|keleton|keletonTransform|kellamDistribution|kewNormalDistribution|kewness|kip|liceContourPlot3D|liceDensityPlot3D|liceDistribution|liceVectorPlot3D|lideView|lider|lider2D|liderBox|lot|lotSequence|mallCircle|mithDecomposition|mithDelayCompensator|mithWatermanSimilarity|moothDensityHistogram|moothHistogram|moothHistogram3D|moothKernelDistribution|nDispersion|ocketConnect|ocketListen|ocketListener|ocketObject|ocketOpen|ocketReadMessage|ocketReadyQ|ocketWaitAll|ocketWaitNext|ockets|okalSneathDissimilarity|olarEclipse|olarSystemFeatureData|olarTime|olidAngle|olidData|olidRegionQ|olve|olveAlways|olveValues|ort|ortBy|ound|oundNote|ourcePDETerm|ow|paceCurveData|pacer|pan|parseArray|parseArrayQ|patialGraphDistribution|patialMedian|peak|pearmanRankTest|pearmanRho|peciesData|pectralLineData|pectrogram|pectrogramArray|pecularity|peechSynthesize|pellingCorrectionList|phere|pherePoints|phericalBesselJ|phericalBesselY|phericalHankelH1|phericalHankelH2|phericalHarmonicY|phericalPlot3D|phericalShell|pheroidalEigenvalue|pheroidalJoiningFactor|pheroidalPS|pheroidalPSPrime|pheroidalQS|pheroidalQSPrime|pheroidalRadialFactor|pheroidalS1|pheroidalS1Prime|pheroidalS2|pheroidalS2Prime|plicedDistribution|plit|plitBy|pokenString|potLight|qrt|qrtBox|quare|quareFreeQ|quareIntersection|quareMatrixQ|quareRepeatingElement|quareSubset|quareSubsetEqual|quareSuperset|quareSupersetEqual|quareUnion|quareWave|quaredEuclideanDistance|quaresR|tableDistribution|tack|tackBegin|tackComplete|tackInhibit|tackedDateListPlot|tackedListPlot|tadiumShape|tandardAtmosphereData|tandardDeviation|tandardDeviationFilter|tandardForm|tandardOceanData|tandardize|tandbyDistribution|tar|tarClusterData|tarData|tarGraph|tartProcess|tateFeedbackGains|tateOutputEstimator|tateResponse|tateSpaceModel|tateSpaceTransform|tateTransformationLinearize|tationaryDistribution|tationaryWaveletPacketTransform|tationaryWaveletTransform|tatusArea|tatusCentrality|tieltjesGamma|tippleShading|tirlingS1|tirlingS2|toppingPowerData|tratonovichProcess|treamDensityPlot|treamPlot|treamPlot3D|treamPosition|treams|tringCases|tringContainsQ|tringCount|tringDelete|tringDrop|tringEndsQ|tringExpression|tringExtract|tringForm|tringFormat|tringFormatQ|tringFreeQ|tringInsert|tringJoin|tringLength|tringMatchQ|tringPadLeft|tringPadRight|tringPart|tringPartition|tringPosition|tringQ|tringRepeat|tringReplace|tringReplaceList|tringReplacePart|tringReverse|tringRiffle|tringRotateLeft|tringRotateRight|tringSkeleton|tringSplit|tringStartsQ|tringTake|tringTakeDrop|tringTemplate|tringToByteArray|tringToStream|tringTrim|tripBoxes|tructuralImportance|truveH|truveL|tudentTDistribution|tyle|tyleBox|tyleData|ubMinus|ubPlus|ubStar|ubValues|ubdivide|ubfactorial|ubgraph|ubresultantPolynomialRemainders|ubresultantPolynomials|ubresultants|ubscript|ubscriptBox|ubsequences|ubset|ubsetEqual|ubsetMap|ubsetQ|ubsets|ubstitutionSystem|ubsuperscript|ubsuperscriptBox|ubtract|ubtractFrom|ubtractSides|ucceeds|ucceedsEqual|ucceedsSlantEqual|ucceedsTilde|uccess|uchThat|um|umConvergence|unPosition|unrise|unset|uperDagger|uperMinus|uperPlus|uperStar|upernovaData|uperscript|uperscriptBox|uperset|upersetEqual|urd|urfaceArea|urfaceData|urvivalDistribution|urvivalFunction|urvivalModel|urvivalModelFit|uzukiDistribution|uzukiGroupSuz|watchLegend|witch|ymbol|ymbolName|ymletWavelet|ymmetric|ymmetricGroup|ymmetricKey|ymmetricMatrixQ|ymmetricPolynomial|ymmetricReduction|ymmetrize|ymmetrizedArray|ymmetrizedArrayRules|ymmetrizedDependentComponents|ymmetrizedIndependentComponents|ymmetrizedReplacePart|ynonyms|yntaxInformation|yntaxLength|yntaxPacket|yntaxQ|ystemDialogInput|ystemInformation|ystemOpen|ystemOptions|ystemProcessData|ystemProcesses|ystemsConnectionsModel|ystemsModelControllerData|ystemsModelDelay|ystemsModelDelayApproximate|ystemsModelDelete|ystemsModelDimensions|ystemsModelExtract|ystemsModelFeedbackConnect|ystemsModelLinearity|ystemsModelMerge|ystemsModelOrder|ystemsModelParallelConnect|ystemsModelSeriesConnect|ystemsModelStateFeedbackConnect|ystemsModelVectorRelativeOrders))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:T(?:Test|abView|able|ableForm|agBox|agSet|agSetDelayed|agUnset|ake|akeDrop|akeLargest|akeLargestBy|akeList|akeSmallest|akeSmallestBy|akeWhile|ally|an|anh|askAbort|askExecute|askObject|askRemove|askResume|askSuspend|askWait|asks|autologyQ|eXForm|elegraphProcess|emplateApply|emplateBox|emplateExpression|emplateIf|emplateObject|emplateSequence|emplateSlot|emplateWith|emporalData|ensorContract|ensorDimensions|ensorExpand|ensorProduct|ensorRank|ensorReduce|ensorSymmetry|ensorTranspose|ensorWedge|erminatedEvaluation|estReport|estReportObject|estResultObject|etrahedron|ext|extCell|extData|extGrid|extPacket|extRecognize|extSentences|extString|extTranslation|extWords|exture|herefore|hermodynamicData|hermometerGauge|hickness|hinning|hompsonGroupTh|hread|hreeJSymbol|hreshold|hrough|hrow|hueMorse|humbnail|ideData|ilde|ildeEqual|ildeFullEqual|ildeTilde|imeConstrained|imeObject|imeObjectQ|imeRemaining|imeSeries|imeSeriesAggregate|imeSeriesForecast|imeSeriesInsert|imeSeriesInvertibility|imeSeriesMap|imeSeriesMapThread|imeSeriesModel|imeSeriesModelFit|imeSeriesResample|imeSeriesRescale|imeSeriesShift|imeSeriesThread|imeSeriesWindow|imeSystemConvert|imeUsed|imeValue|imeZoneConvert|imeZoneOffset|imelinePlot|imes|imesBy|iming|itsGroupT|oBoxes|oCharacterCode|oContinuousTimeModel|oDiscreteTimeModel|oEntity|oExpression|oInvertibleTimeSeries|oLowerCase|oNumberField|oPolarCoordinates|oRadicals|oRules|oSphericalCoordinates|oString|oUpperCase|oeplitzMatrix|ogether|oggler|ogglerBar|ooltip|oonShading|opHatTransform|opologicalSort|orus|orusGraph|otal|otalVariationFilter|ouchPosition|r|race|raceDialog|racePrint|raceScan|racyWidomDistribution|radingChart|raditionalForm|ransferFunctionCancel|ransferFunctionExpand|ransferFunctionFactor|ransferFunctionModel|ransferFunctionPoles|ransferFunctionTransform|ransferFunctionZeros|ransformationFunction|ransformationMatrix|ransformedDistribution|ransformedField|ransformedProcess|ransformedRegion|ransitiveClosureGraph|ransitiveReductionGraph|ranslate|ranslationTransform|ransliterate|ranspose|ravelDirections|ravelDirectionsData|ravelDistance|ravelDistanceList|ravelTime|reeForm|reeGraph|reeGraphQ|reePlot|riangle|riangleWave|riangularDistribution|riangulateMesh|rigExpand|rigFactor|rigFactorList|rigReduce|rigToExp|rigger|rimmedMean|rimmedVariance|ropicalStormData|rueQ|runcatedDistribution|runcatedPolyhedron|sallisQExponentialDistribution|sallisQGaussianDistribution|ube|ukeyLambdaDistribution|ukeyWindow|unnelData|uples|uranGraph|uringMachine|uttePolynomial|woWayRule|ypeHint))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:U(?:RL|RLBuild|RLDecode|RLDispatcher|RLDownload|RLEncode|RLExecute|RLExpand|RLParse|RLQueryDecode|RLQueryEncode|RLRead|RLResponseTime|RLShorten|RLSubmit|nateQ|ncompress|nderBar|nderflow|nderoverscript|nderoverscriptBox|nderscript|nderscriptBox|nderseaFeatureData|ndirectedEdge|ndirectedGraph|ndirectedGraphQ|nequal|nequalTo|nevaluated|niformDistribution|niformGraphDistribution|niformPolyhedron|niformSumDistribution|ninstall|nion|nionPlus|nique|nitBox|nitConvert|nitDimensions|nitRootTest|nitSimplify|nitStep|nitTriangle|nitVector|nitaryMatrixQ|nitize|niverseModelData|niversityData|nixTime|nprotect|nsameQ|nset|nsetShared|ntil|pArrow|pArrowBar|pArrowDownArrow|pDownArrow|pEquilibrium|pSet|pSetDelayed|pTee|pTeeArrow|pTo|pValues|pdate|pperCaseQ|pperLeftArrow|pperRightArrow|pperTriangularMatrix|pperTriangularMatrixQ|pperTriangularize|psample|singFrontEnd))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:V(?:alueQ|alues|ariables|ariance|arianceEquivalenceTest|arianceGammaDistribution|arianceTest|ectorAngle|ectorDensityPlot|ectorDisplacementPlot|ectorDisplacementPlot3D|ectorGreater|ectorGreaterEqual|ectorLess|ectorLessEqual|ectorPlot|ectorPlot3D|ectorQ|ectors|ee|erbatim|erificationTest|ertexAdd|ertexChromaticNumber|ertexComponent|ertexConnectivity|ertexContract|ertexCorrelationSimilarity|ertexCosineSimilarity|ertexCount|ertexCoverQ|ertexDegree|ertexDelete|ertexDiceSimilarity|ertexEccentricity|ertexInComponent|ertexInComponentGraph|ertexInDegree|ertexIndex|ertexJaccardSimilarity|ertexList|ertexOutComponent|ertexOutComponentGraph|ertexOutDegree|ertexQ|ertexReplace|ertexTransitiveGraphQ|ertexWeightedGraphQ|erticalBar|erticalGauge|erticalSeparator|erticalSlider|erticalTilde|oiceStyleData|oigtDistribution|olcanoData|olume|onMisesDistribution|oronoiMesh))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:W(?:aitAll|aitNext|akebyDistribution|alleniusHypergeometricDistribution|aringYuleDistribution|arpingCorrespondence|arpingDistance|atershedComponents|atsonUSquareTest|attsStrogatzGraphDistribution|avePDEComponent|aveletBestBasis|aveletFilterCoefficients|aveletImagePlot|aveletListPlot|aveletMapIndexed|aveletMatrixPlot|aveletPhi|aveletPsi|aveletScalogram|aveletThreshold|eakStationarity|eaklyConnectedComponents|eaklyConnectedGraphComponents|eaklyConnectedGraphQ|eatherData|eatherForecastData|eberE|edge|eibullDistribution|eierstrassE1|eierstrassE2|eierstrassE3|eierstrassEta1|eierstrassEta2|eierstrassEta3|eierstrassHalfPeriodW1|eierstrassHalfPeriodW2|eierstrassHalfPeriodW3|eierstrassHalfPeriods|eierstrassInvariantG2|eierstrassInvariantG3|eierstrassInvariants|eierstrassP|eierstrassPPrime|eierstrassSigma|eierstrassZeta|eightedAdjacencyGraph|eightedAdjacencyMatrix|eightedData|eightedGraphQ|elchWindow|heelGraph|henEvent|hich|hile|hiteNoiseProcess|hittakerM|hittakerW|ienerFilter|ienerProcess|ignerD|ignerSemicircleDistribution|ikipediaData|ilksW|ilksWTest|indDirectionData|indSpeedData|indVectorData|indingCount|indingPolygon|insorizedMean|insorizedVariance|ishartMatrixDistribution|ith|olframAlpha|olframLanguageData|ordCloud|ordCount|ordCounts|ordData|ordDefinition|ordFrequency|ordFrequencyData|ordList|ordStem|ordTranslation|rite|riteLine|riteString|ronskian))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:X(?:MLElement|MLObject|MLTemplate|YZColor|nor|or))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:Y(?:uleDissimilarity))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:Z(?:IPCodeData|Test|Transform|ernikeR|eroSymmetric|eta|etaZero|ipfDistribution))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.builtin.wolfram\\\"},{\\\"match\\\":\\\"(?:A(?:cceptanceThreshold|ccuracyGoal|ctiveStyle|ddOnHelpPath|djustmentBoxOptions|lignment|lignmentPoint|llowGroupClose|llowInlineCells|llowLooseGrammar|llowReverseGroupClose|llowScriptLevelChange|llowVersionUpdate|llowedCloudExtraParameters|llowedCloudParameterExtensions|llowedDimensions|llowedFrequencyRange|llowedHeads|lternativeHypothesis|ltitudeMethod|mbiguityFunction|natomySkinStyle|nchoredSearch|nimationDirection|nimationRate|nimationRepetitions|nimationRunTime|nimationRunning|nimationTimeIndex|nnotationRules|ntialiasing|ppearance|ppearanceElements|ppearanceRules|spectRatio|ssociationFormat|ssumptions|synchronous|ttachedCell|udioChannelAssignment|udioEncoding|udioInputDevice|udioLabel|udioOutputDevice|uthentication|utoAction|utoCopy|utoDelete|utoGeneratedPackage|utoIndent|utoItalicWords|utoMultiplicationSymbol|utoOpenNotebooks|utoOpenPalettes|utoOperatorRenderings|utoRemove|utoScroll|utoSpacing|utoloadPath|utorunSequencing|xes|xesEdge|xesLabel|xesOrigin|xesStyle))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:B(?:ackground|arOrigin|arSpacing|aseStyle|aselinePosition|inaryFormat|ookmarks|ooleanStrings|oundaryStyle|oxBaselineShift|oxFormFormatTypes|oxFrame|oxMargins|oxRatios|oxStyle|oxed|ubbleScale|ubbleSizes|uttonBoxOptions|uttonData|uttonFunction|uttonMinHeight|uttonSource|yteOrdering))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:C(?:alendarType|alloutMarker|alloutStyle|aptureRunning|aseOrdering|elestialSystem|ellAutoOverwrite|ellBaseline|ellBracketOptions|ellChangeTimes|ellContext|ellDingbat|ellDingbatMargin|ellDynamicExpression|ellEditDuplicate|ellEpilog|ellEvaluationDuplicate|ellEvaluationFunction|ellEventActions|ellFrame|ellFrameColor|ellFrameLabelMargins|ellFrameLabels|ellFrameMargins|ellGrouping|ellGroupingRules|ellHorizontalScrolling|ellID|ellLabel|ellLabelAutoDelete|ellLabelMargins|ellLabelPositioning|ellLabelStyle|ellLabelTemplate|ellMargins|ellOpen|ellProlog|ellSize|ellTags|haracterEncoding|haracterEncodingsPath|hartBaseStyle|hartElementFunction|hartElements|hartLabels|hartLayout|hartLegends|hartStyle|lassPriors|lickToCopyEnabled|lipPlanes|lipPlanesStyle|lipRange|lippingStyle|losingAutoSave|loudBase|loudObjectNameFormat|loudObjectURLType|lusterDissimilarityFunction|odeAssistOptions|olorCoverage|olorFunction|olorFunctionBinning|olorFunctionScaling|olorRules|olorSelectorSettings|olorSpace|olumnAlignments|olumnLines|olumnSpacings|olumnWidths|olumnsEqual|ombinerFunction|ommonDefaultFormatTypes|ommunityBoundaryStyle|ommunityLabels|ommunityRegionStyle|ompilationOptions|ompilationTarget|ompiled|omplexityFunction|ompressionLevel|onfidenceLevel|onfidenceRange|onfidenceTransform|onfigurationPath|onstants|ontentPadding|ontentSelectable|ontentSize|ontinuousAction|ontourLabels|ontourShading|ontourStyle|ontours|ontrolPlacement|ontrolType|ontrollerLinking|ontrollerMethod|ontrollerPath|ontrolsRendering|onversionRules|ookieFunction|oordinatesToolOptions|opyFunction|opyable|ornerNeighbors|ounterAssignments|ounterFunction|ounterIncrements|ounterStyleMenuListing|ovarianceEstimatorFunction|reateCellID|reateIntermediateDirectories|riterionFunction|ubics|urveClosed))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:D(?:ataRange|ataReversed|atasetTheme|ateFormat|ateFunction|ateGranularity|ateReduction|ateTicksFormat|ayCountConvention|efaultDuplicateCellStyle|efaultDuration|efaultElement|efaultFontProperties|efaultFormatType|efaultInlineFormatType|efaultNaturalLanguage|efaultNewCellStyle|efaultNewInlineCellStyle|efaultNotebook|efaultOptions|efaultPrintPrecision|efaultStyleDefinitions|einitialization|eletable|eleteContents|eletionWarning|elimiterAutoMatching|elimiterFlashTime|elimiterMatching|elimiters|eliveryFunction|ependentVariables|eployed|escriptorStateSpace|iacriticalPositioning|ialogProlog|ialogSymbols|igitBlock|irectedEdges|irection|iscreteVariables|ispersionEstimatorFunction|isplayAllSteps|isplayFunction|istanceFunction|istributedContexts|ithering|ividers|ockedCell|ockedCells|ynamicEvaluationTimeout|ynamicModuleValues|ynamicUpdating))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:E(?:clipseType|dgeCapacity|dgeCost|dgeLabelStyle|dgeLabels|dgeShapeFunction|dgeStyle|dgeValueRange|dgeValueSizes|dgeWeight|ditCellTagsSettings|ditable|lidedForms|nabled|pilog|pilogFunction|scapeRadius|valuatable|valuationCompletionAction|valuationElements|valuationMonitor|valuator|valuatorNames|ventLabels|xcludePods|xcludedContexts|xcludedForms|xcludedLines|xcludedPhysicalQuantities|xclusions|xclusionsStyle|xponentFunction|xponentPosition|xponentStep|xponentialFamily|xportAutoReplacements|xpressionUUID|xtension|xtentElementFunction|xtentMarkers|xtentSize|xternalDataCharacterEncoding|xternalOptions|xternalTypeSignature))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:F(?:aceGrids|aceGridsStyle|ailureAction|eatureNames|eatureTypes|eedbackSector|eedbackSectorStyle|eedbackType|ieldCompletionFunction|ieldHint|ieldHintStyle|ieldMasked|ieldSize|ileNameDialogSettings|ileNameForms|illing|illingStyle|indSettings|itRegularization|ollowRedirects|ontColor|ontFamily|ontSize|ontSlant|ontSubstitutions|ontTracking|ontVariations|ontWeight|orceVersionInstall|ormBoxOptions|ormLayoutFunction|ormProtectionMethod|ormatType|ormatTypeAutoConvert|ourierParameters|ractionBoxOptions|ractionLine|rame|rameBoxOptions|rameLabel|rameMargins|rameRate|rameStyle|rameTicks|rameTicksStyle|rontEndEventActions|unctionSpace))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:G(?:apPenalty|augeFaceElementFunction|augeFaceStyle|augeFrameElementFunction|augeFrameSize|augeFrameStyle|augeLabels|augeMarkers|augeStyle|aussianIntegers|enerateConditions|eneratedCell|eneratedDocumentBinding|eneratedParameters|eneratedQuantityMagnitudes|eneratorDescription|eneratorHistoryLength|eneratorOutputType|eoArraySize|eoBackground|eoCenter|eoGridLines|eoGridLinesStyle|eoGridRange|eoGridRangePadding|eoLabels|eoLocation|eoModel|eoProjection|eoRange|eoRangePadding|eoResolution|eoScaleBar|eoServer|eoStylingImageFunction|eoZoomLevel|radient|raphHighlight|raphHighlightStyle|raphLayerStyle|raphLayers|raphLayout|ridCreationSettings|ridDefaultElement|ridFrame|ridFrameMargins|ridLines|ridLinesStyle|roupActionBase|roupPageBreakWithin))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:H(?:eaderAlignment|eaderBackground|eaderDisplayFunction|eaderLines|eaderSize|eaderStyle|eads|elpBrowserSettings|iddenItems|olidayCalendar|yperlinkAction|yphenation))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:I(?:conRules|gnoreCase|gnoreDiacritics|gnorePunctuation|mageCaptureFunction|mageFormattingWidth|mageLabels|mageLegends|mageMargins|magePadding|magePreviewFunction|mageRegion|mageResolution|mageSize|mageSizeAction|mageSizeMultipliers|magingDevice|mportAutoReplacements|mportOptions|ncludeConstantBasis|ncludeDefinitions|ncludeDirectories|ncludeFileExtension|ncludeGeneratorTasks|ncludeInflections|ncludeMetaInformation|ncludePods|ncludeQuantities|ncludeSingularSolutions|ncludeWindowTimes|ncludedContexts|ndeterminateThreshold|nflationMethod|nheritScope|nitialSeeding|nitialization|nitializationCell|nitializationCellEvaluation|nitializationCellWarning|nputAliases|nputAssumptions|nputAutoReplacements|nsertResults|nsertionFunction|nteractive|nterleaving|nterpolationOrder|nterpolationPoints|nterpretationBoxOptions|nterpretationFunction|ntervalMarkers|ntervalMarkersStyle|nverseFunctions|temAspectRatio|temDisplayFunction|temSize|temStyle))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:J(?:oined))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:K(?:eepExistingVersion|eyCollisionFunction|eypointStrength))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:L(?:abelStyle|abelVisibility|abelingFunction|abelingSize|anguage|anguageCategory|ayerSizeFunction|eaderSize|earningRate|egendAppearance|egendFunction|egendLabel|egendLayout|egendMargins|egendMarkerSize|egendMarkers|ighting|ightingAngle|imitsPositioning|imitsPositioningTokens|ineBreakWithin|ineIndent|ineIndentMaxFraction|ineIntegralConvolutionScale|ineSpacing|inearOffsetFunction|inebreakAdjustments|inkFunction|inkProtocol|istFormat|istPickerBoxOptions|ocalizeVariables|ocatorAutoCreate|ocatorRegion|ooping))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:M(?:agnification|ailAddressValidation|ailResponseFunction|ailSettings|asking|atchLocalNames|axCellMeasure|axColorDistance|axDuration|axExtraBandwidths|axExtraConditions|axFeatureDisplacement|axFeatures|axItems|axIterations|axMixtureKernels|axOverlapFraction|axPlotPoints|axRecursion|axStepFraction|axStepSize|axSteps|emoryConstraint|enuCommandKey|enuSortingValue|enuStyle|esh|eshCellHighlight|eshCellLabel|eshCellMarker|eshCellShapeFunction|eshCellStyle|eshFunctions|eshQualityGoal|eshRefinementFunction|eshShading|eshStyle|etaInformation|ethod|inColorDistance|inIntervalSize|inPointSeparation|issingBehavior|issingDataMethod|issingDataRules|issingString|issingStyle|odal|odulus|ultiaxisArrangement|ultiedgeStyle|ultilaunchWarning|ultilineFunction|ultiselection))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:N(?:icholsGridLines|ominalVariables|onConstants|ormFunction|ormalized|ormalsFunction|otebookAutoSave|otebookBrowseDirectory|otebookConvertSettings|otebookDynamicExpression|otebookEventActions|otebookPath|otebooksMenu|otificationFunction|ullRecords|ullWords|umberFormat|umberMarks|umberMultiplier|umberPadding|umberPoint|umberSeparator|umberSigns|yquistGridLines))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:O(?:pacityFunction|pacityFunctionScaling|peratingSystem|ptionInspectorSettings|utputAutoOverwrite|utputSizeLimit|verlaps|verscriptBoxOptions|verwriteTarget))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:P(?:IDDerivativeFilter|IDFeedforward|acletSite|adding|addingSize|ageBreakAbove|ageBreakBelow|ageBreakWithin|ageFooterLines|ageFooters|ageHeaderLines|ageHeaders|ageTheme|ageWidth|alettePath|aneled|aragraphIndent|aragraphSpacing|arallelization|arameterEstimator|artBehavior|artitionGranularity|assEventsDown|assEventsUp|asteBoxFormInlineCells|ath|erformanceGoal|ermissions|haseRange|laceholderReplace|layRange|lotLabel|lotLabels|lotLayout|lotLegends|lotMarkers|lotPoints|lotRange|lotRangeClipping|lotRangePadding|lotRegion|lotStyle|lotTheme|odStates|odWidth|olarAxes|olarAxesOrigin|olarGridLines|olarTicks|oleZeroMarkers|recisionGoal|referencesPath|reprocessingRules|reserveColor|reserveImageOptions|rincipalValue|rintAction|rintPrecision|rintingCopies|rintingOptions|rintingPageRange|rintingStartingPageNumber|rintingStyleEnvironment|rintout3DPreviewer|rivateCellOptions|rivateEvaluationOptions|rivateFontOptions|rivateNotebookOptions|rivatePaths|rocessDirectory|rocessEnvironment|rocessEstimator|rogressReporting|rolog|ropagateAborts))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:Q(?:uartics))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:R(?:adicalBoxOptions|andomSeeding|asterSize|eImLabels|eImStyle|ealBlockDiagonalForm|ecognitionPrior|ecordLists|ecordSeparators|eferenceLineStyle|efreshRate|egionBoundaryStyle|egionFillingStyle|egionFunction|egionSize|egularization|enderingOptions|equiredPhysicalQuantities|esampling|esamplingMethod|esolveContextAliases|estartInterval|eturnReceiptFunction|evolutionAxis|otateLabel|otationAction|oundingRadius|owAlignments|owLines|owMinHeight|owSpacings|owsEqual|ulerUnits|untimeAttributes|untimeOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:S(?:ameTest|ampleDepth|ampleRate|amplingPeriod|aveConnection|aveDefinitions|aveable|caleDivisions|caleOrigin|calePadding|caleRangeStyle|caleRanges|calingFunctions|cientificNotationThreshold|creenStyleEnvironment|criptBaselineShifts|criptLevel|criptMinSize|criptSizeMultipliers|crollPosition|crollbars|crollingOptions|ectorOrigin|ectorSpacing|electable|elfLoopStyle|eriesTermGoal|haringList|howAutoSpellCheck|howAutoStyles|howCellBracket|howCellLabel|howCellTags|howClosedCellArea|howContents|howCursorTracker|howGroupOpener|howPageBreaks|howSelection|howShortBoxForm|howSpecialCharacters|howStringCharacters|hrinkingDelay|ignPadding|ignificanceLevel|imilarityRules|ingleLetterItalics|liderBoxOptions|ortedBy|oundVolume|pacings|panAdjustments|panCharacterRounding|panLineThickness|panMaxSize|panMinSize|panSymmetric|pecificityGoal|pellingCorrection|pellingDictionaries|pellingDictionariesPath|pellingOptions|phericalRegion|plineClosed|plineDegree|plineKnots|plineWeights|qrtBoxOptions|tabilityMargins|tabilityMarginsStyle|tandardized|tartingStepSize|tateSpaceRealization|tepMonitor|trataVariables|treamColorFunction|treamColorFunctionScaling|treamMarkers|treamPoints|treamScale|treamStyle|trictInequalities|tripOnInput|tripWrapperBoxes|tructuredSelection|tyleBoxAutoDelete|tyleDefinitions|tyleHints|tyleMenuListing|tyleNameDialogSettings|tyleSheetPath|ubscriptBoxOptions|ubsuperscriptBoxOptions|ubtitleEncoding|uperscriptBoxOptions|urdForm|ynchronousInitialization|ynchronousUpdating|yntaxForm|ystemHelpPath|ystemsModelLabels))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:T(?:abFilling|abSpacings|ableAlignments|ableDepth|ableDirections|ableHeadings|ableSpacing|agBoxOptions|aggingRules|argetFunctions|argetUnits|emplateBoxOptions|emporalRegularity|estID|extAlignment|extClipboardType|extJustification|extureCoordinateFunction|extureCoordinateScaling|icks|icksStyle|imeConstraint|imeDirection|imeFormat|imeGoal|imeSystem|imeZone|okenWords|olerance|ooltipDelay|ooltipStyle|otalWidth|ouchscreenAutoZoom|ouchscreenControlPlacement|raceAbove|raceBackward|raceDepth|raceForward|raceOff|raceOn|raceOriginal|rackedSymbols|rackingFunction|raditionalFunctionNotation|ransformationClass|ransformationFunctions|ransitionDirection|ransitionDuration|ransitionEffect|ranslationOptions|ravelMethod|rendStyle|rig))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:U(?:nderoverscriptBoxOptions|nderscriptBoxOptions|ndoOptions|ndoTrackedVariables|nitSystem|nityDimensions|nsavedVariables|pdateInterval|pdatePacletSites|tilityFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:V(?:alidationLength|alidationSet|alueDimensions|arianceEstimatorFunction|ectorAspectRatio|ectorColorFunction|ectorColorFunctionScaling|ectorMarkers|ectorPoints|ectorRange|ectorScaling|ectorSizes|ectorStyle|erifyConvergence|erifySecurityCertificates|erifySolutions|erifyTestAssumptions|ersionedPreferences|ertexCapacity|ertexColors|ertexCoordinates|ertexDataCoordinates|ertexLabelStyle|ertexLabels|ertexNormals|ertexShape|ertexShapeFunction|ertexSize|ertexStyle|ertexTextureCoordinates|ertexWeight|ideoEncoding|iewAngle|iewCenter|iewMatrix|iewPoint|iewProjection|iewRange|iewVector|iewVertical|isible))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:W(?:aveletScale|eights|hitePoint|indowClickSelect|indowElements|indowFloating|indowFrame|indowFrameElements|indowMargins|indowOpacity|indowSize|indowStatusArea|indowTitle|indowToolbars|ordOrientation|ordSearch|ordSelectionFunction|ordSeparators|ordSpacings|orkingPrecision|rapAround))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:Z(?:eroTest|eroWidthTimes))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:A(?:bove|fter|lgebraics|ll|nonymous|utomatic|xis))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:B(?:ack|ackward|aseline|efore|elow|lack|lue|old|ooleans|ottom|oxes|rown|yte))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:C(?:atalan|ellStyle|enter|haracter|omplexInfinity|omplexes|onstant|yan))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:D(?:ashed|efaultAxesStyle|efaultBaseStyle|efaultBoxStyle|efaultFaceGridsStyle|efaultFieldHintStyle|efaultFrameStyle|efaultFrameTicksStyle|efaultGridLinesStyle|efaultLabelStyle|efaultMenuStyle|efaultTicksStyle|efaultTooltipStyle|egree|elimiter|igitCharacter|otDashed|otted))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:E(?:|ndOfBuffer|ndOfFile|ndOfLine|ndOfString|ulerGamma|xpression))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:F(?:alse|lat|ontProperties|orward|orwardBackward|riday|ront|rontEndDynamicExpression|ull))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:G(?:eneral|laisher|oldenAngle|oldenRatio|ray|reen))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:H(?:ere|exadecimalCharacter|oldAll|oldAllComplete|oldFirst|oldRest))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:I(?:|ndeterminate|nfinity|nherited|nteger|ntegers|talic))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:K(?:hinchin))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:L(?:arge|arger|eft|etterCharacter|ightBlue|ightBrown|ightCyan|ightGray|ightGreen|ightMagenta|ightOrange|ightPink|ightPurple|ightRed|ightYellow|istable|ocked))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:M(?:achinePrecision|agenta|anual|edium|eshCellCentroid|eshCellMeasure|eshCellQuality|onday))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:N(?:HoldAll|HoldFirst|HoldRest|egativeIntegers|egativeRationals|egativeReals|oWhitespace|onNegativeIntegers|onNegativeRationals|onNegativeReals|onPositiveIntegers|onPositiveRationals|onPositiveReals|one|ow|ull|umber|umberString|umericFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:O(?:neIdentity|range|rderless))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:P(?:i|ink|lain|ositiveIntegers|ositiveRationals|ositiveReals|rimes|rotected|unctuationCharacter|urple))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:R(?:ationals|eadProtected|eal|eals|ecord|ed|ight))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:S(?:aturday|equenceHold|mall|maller|panFromAbove|panFromBoth|panFromLeft|tartOfLine|tartOfString|tring|truckthrough|tub|unday))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:T(?:emporary|hick|hin|hursday|iny|oday|omorrow|op|ransparent|rue|uesday))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:U(?:ndefined|nderlined))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:W(?:ednesday|hite|hitespace|hitespaceCharacter|ord|ordBoundary|ordCharacter))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:Y(?:ellow|esterday))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\$(?:Aborted|ActivationKey|AllowDataUpdates|AllowInternet|AssertFunction|Assumptions|AudioInputDevices|AudioOutputDevices|BaseDirectory|BasePacletsDirectory|BatchInput|BatchOutput|ByteOrdering|CacheBaseDirectory|Canceled|CharacterEncoding|CharacterEncodings|CloudAccountName|CloudBase|CloudConnected|CloudCreditsAvailable|CloudEvaluation|CloudExpressionBase|CloudObjectNameFormat|CloudObjectURLType|CloudRootDirectory|CloudSymbolBase|CloudUserID|CloudUserUUID|CloudVersion|CommandLine|CompilationTarget|Context|ContextAliases|ContextPath|ControlActiveSetting|Cookies|CreationDate|CurrentLink|CurrentTask|DateStringFormat|DefaultAudioInputDevice|DefaultAudioOutputDevice|DefaultFrontEnd|DefaultImagingDevice|DefaultKernels|DefaultLocalBase|DefaultLocalKernel|Display|DisplayFunction|DistributedContexts|DynamicEvaluation|Echo|EmbedCodeEnvironments|EmbeddableServices|Epilog|EvaluationCloudBase|EvaluationCloudObject|EvaluationEnvironment|ExportFormats|Failed|FontFamilies|FrontEnd|FrontEndSession|GeoLocation|GeoLocationCity|GeoLocationCountry|GeoLocationSource|HomeDirectory|IgnoreEOF|ImageFormattingWidth|ImageResolution|ImagingDevice|ImagingDevices|ImportFormats|InitialDirectory|Input|InputFileName|InputStreamMethods|Inspector|InstallationDirectory|InterpreterTypes|IterationLimit|KernelCount|KernelID|Language|LibraryPath|LicenseExpirationDate|LicenseID|LicenseServer|Linked|LocalBase|LocalSymbolBase|MachineAddresses|MachineDomains|MachineEpsilon|MachineID|MachineName|MachinePrecision|MachineType|MaxExtraPrecision|MaxMachineNumber|MaxNumber|MaxPiecewiseCases|MaxPrecision|MaxRootDegree|MessageGroups|MessageList|MessagePrePrint|Messages|MinMachineNumber|MinNumber|MinPrecision|MobilePhone|ModuleNumber|NetworkConnected|NewMessage|NewSymbol|NotebookInlineStorageLimit|Notebooks|NumberMarks|OperatingSystem|Output|OutputSizeLimit|OutputStreamMethods|Packages|ParentLink|ParentProcessID|PasswordFile|Path|PathnameSeparator|PerformanceGoal|Permissions|PlotTheme|Printout3DPreviewer|ProcessID|ProcessorCount|ProcessorType|ProgressReporting|RandomGeneratorState|RecursionLimit|ReleaseNumber|RequesterAddress|RequesterCloudUserID|RequesterCloudUserUUID|RequesterWolframID|RequesterWolframUUID|RootDirectory|ScriptCommandLine|ScriptInputString|Services|SessionID|SharedFunctions|SharedVariables|SoundDisplayFunction|SynchronousEvaluation|System|SystemCharacterEncoding|SystemID|SystemShell|SystemTimeZone|SystemWordLength|TemplatePath|TemporaryDirectory|TimeUnit|TimeZone|TimeZoneEntity|TimedOut|UnitSystem|Urgent|UserAgentString|UserBaseDirectory|UserBasePacletsDirectory|UserDocumentsDirectory|UserURLBase|Username|Version|VersionNumber|WolframDocumentsDirectory|WolframID|WolframUUID))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"constant.language.wolfram\\\"},{\\\"match\\\":\\\"(?:A(?:bortScheduledTask|ctive|lgebraicRules|lternateImage|natomyForm|nimationCycleOffset|nimationCycleRepetitions|nimationDisplayTime|spectRatioFixed|stronomicalData|synchronousTaskObject|synchronousTasks|udioDevice|udioLooping))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:B(?:uttonEvaluator|uttonExpandable|uttonFrame|uttonMargins|uttonNote|uttonStyle))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:C(?:DFInformation|hebyshevDistance|lassifierInformation|lipFill|olorOutput|olumnForm|ompose|onstantArrayLayer|onstantPlusLayer|onstantTimesLayer|onstrainedMax|onstrainedMin|ontourGraphics|ontourLines|onversionOptions|reateScheduledTask|reateTemporary|urry))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:D(?:atabinRemove|ate|ebug|efaultColor|efaultFont|ensityGraphics|isplay|isplayString|otPlusLayer|ragAndDrop))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:E(?:dgeLabeling|dgeRenderingFunction|valuateScheduledTask|xpectedValue))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:F(?:actorComplete|ontForm|ormTheme|romDate|ullOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:G(?:raphStyle|raphicsArray|raphicsSpacing|ridBaseline))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:H(?:TMLSave|eldPart|iddenSurface|omeDirectory))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:I(?:mageRotated|nstanceNormalizationLayer))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:L(?:UBackSubstitution|egendreType|ightSources|inearProgramming|inkOpen|iteral|ongestMatch))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:M(?:eshRange|oleculeEquivalentQ))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:N(?:etInformation|etSharedArray|extScheduledTaskTime|otebookCreate))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:O(?:penTemporary))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:P(?:IDData|ackingMethod|ersistentValue|ixelConstrained|lot3Matrix|lotDivision|lotJoined|olygonIntersections|redictorInformation|roperties|roperty|ropertyList|ropertyValue))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:R(?:andom|asterArray|ecognitionThreshold|elease|emoteKernelObject|emoveAsynchronousTask|emoveProperty|emoveScheduledTask|enderAll|eplaceHeldPart|esetScheduledTask|esumePacket|unScheduledTask))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:S(?:cheduledTaskActiveQ|cheduledTaskInformation|cheduledTaskObject|cheduledTasks|creenRectangle|electionAnimate|equenceAttentionLayer|equenceForm|etProperty|hading|hortestMatch|ingularValues|kinStyle|ocialMediaData|tartAsynchronousTask|tartScheduledTask|tateDimensions|topAsynchronousTask|topScheduledTask|tructuredArray|tyleForm|tylePrint|ubscripted|urfaceColor|urfaceGraphics|uspendPacket|ystemModelProgressReporting))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:T(?:eXSave|extStyle|imeWarpingCorrespondence|imeWarpingDistance|oDate|oFileName|oHeldExpression))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:U(?:RLFetch|RLFetchAsynchronous|RLSave|RLSaveAsynchronous))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:V(?:ectorScale|ertexCoordinateRules|ertexLabeling|ertexRenderingFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:W(?:aitAsynchronousTask|indowMovable))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\$(?:AsynchronousTask|ConfiguredKernels|DefaultFont|EntityStores|FormatType|HTTPCookies|InstallationDate|MachineDomain|ProductInformation|ProgramName|RandomState|ScheduledTask|SummaryBoxDataSizeLimit|TemporaryPrefix|TextStyle|TopDirectory|UserAddOnsDirectory))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.deprecated.wolfram\\\"},{\\\"match\\\":\\\"(?:A(?:ctionDelay|ctionMenuBox|ctionMenuBoxOptions|ctiveItem|lgebraicRulesData|lignmentMarker|llowAdultContent|llowChatServices|llowIncomplete|nalytic|nimatorBox|nimatorBoxOptions|nimatorElements|ppendCheck|rgumentCountQ|rrow3DBox|rrowBox|uthenticate|utoEvaluateEvents|utoIndentSpacings|utoMatch|utoNumberFormatting|utoQuoteCharacters|utoScaling|utoStyleOptions|utoStyleWords|utomaticImageSize|xis3DBox|xis3DBoxOptions|xisBox|xisBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:B(?:SplineCurve3DBox|SplineCurve3DBoxOptions|SplineCurveBox|SplineCurveBoxOptions|SplineSurface3DBox|SplineSurface3DBoxOptions|ackFaceColor|ackFaceGlowColor|ackFaceOpacity|ackFaceSpecularColor|ackFaceSpecularExponent|ackFaceSurfaceAppearance|ackFaceTexture|ackgroundAppearance|ackgroundTasksSettings|acksubstitution|eveled|ezierCurve3DBox|ezierCurve3DBoxOptions|ezierCurveBox|ezierCurveBoxOptions|lankForm|ounds|ox|oxDimensions|oxForm|oxID|oxRotation|oxRotationPoint|ra|raKet|rowserCategory|uttonCell|uttonContents|uttonStyleMenuListing))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:C(?:acheGraphics|achedValue|ardinalBSplineBasis|ellBoundingBox|ellContents|ellElementSpacings|ellElementsBoundingBox|ellFrameStyle|ellInsertionPointCell|ellTrayPosition|ellTrayWidgets|hangeOptions|hannelDatabin|hannelListenerWait|hannelPreSendFunction|hartElementData|hartElementDataFunction|heckAll|heckboxBox|heckboxBoxOptions|ircleBox|lipboardNotebook|lockwiseContourIntegral|losed|losingEvent|loudConnections|loudObjectInformation|loudObjectInformationData|loudUserID|oarse|oefficientDomain|olonForm|olorSetterBox|olorSetterBoxOptions|olumnBackgrounds|ompilerEnvironmentAppend|ompletionsListPacket|omponentwiseContextMenu|ompressedData|oneBox|onicHullRegion3DBox|onicHullRegion3DBoxOptions|onicHullRegionBox|onicHullRegionBoxOptions|onnect|ontentsBoundingBox|ontextMenu|ontinuation|ontourIntegral|ontourSmoothing|ontrolAlignment|ontrollerDuration|ontrollerInformationData|onvertToPostScript|onvertToPostScriptPacket|ookies|opyTag|ounterBox|ounterBoxOptions|ounterClockwiseContourIntegral|ounterEvaluator|ounterStyle|uboidBox|uboidBoxOptions|urlyDoubleQuote|urlyQuote|ylinderBox|ylinderBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:D(?:OSTextFormat|ampingFactor|ataCompression|atasetDisplayPanel|ateDelimiters|ebugTag|ecimal|efault2DTool|efault3DTool|efaultAttachedCellStyle|efaultControlPlacement|efaultDockedCellStyle|efaultInputFormatType|efaultOutputFormatType|efaultStyle|efaultTextFormatType|efaultTextInlineFormatType|efaultValue|efineExternal|egreeLexicographic|egreeReverseLexicographic|eleteWithContents|elimitedArray|estroyAfterEvaluation|eviceOpenQ|ialogIndent|ialogLevel|ifferenceOrder|igitBlockMinimum|isableConsolePrintPacket|iskBox|iskBoxOptions|ispatchQ|isplayRules|isplayTemporary|istributionDomain|ivergence|ocumentGeneratorInformationData|omainRegistrationInformation|oubleContourIntegral|oublyInfinite|own|rawBackFaces|rawFrontFaces|rawHighlighted|ualLinearProgramming|umpGet|ynamicBox|ynamicBoxOptions|ynamicLocation|ynamicModuleBox|ynamicModuleBoxOptions|ynamicModuleParent|ynamicName|ynamicNamespace|ynamicReference|ynamicWrapperBox|ynamicWrapperBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:E(?:ditButtonSettings|liminationOrder|llipticReducedHalfPeriods|mbeddingObject|mphasizeSyntaxErrors|mpty|nableConsolePrintPacket|ndAdd|ngineEnvironment|nter|qualColumns|qualRows|quatedTo|rrorBoxOptions|rrorNorm|rrorPacket|rrorsDialogSettings|valuated|valuationMode|valuationOrder|valuationRateLimit|ventEvaluator|ventHandlerTag|xactRootIsolation|xitDialog|xpectationE|xportPacket|xpressionPacket|xternalCall|xternalFunctionName))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:F(?:EDisableConsolePrintPacket|EEnableConsolePrintPacket|ail|ileInformation|ileName|illForm|illedCurveBox|illedCurveBoxOptions|ine|itAll|lashSelection|ont|ontName|ontOpacity|ontPostScriptName|ontReencoding|ormatRules|ormatValues|rameInset|rameless|rontEndObject|rontEndResource|rontEndResourceString|rontEndStackSize|rontEndValueCache|rontEndVersion|rontFaceColor|rontFaceGlowColor|rontFaceOpacity|rontFaceSpecularColor|rontFaceSpecularExponent|rontFaceSurfaceAppearance|rontFaceTexture|ullAxes))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:G(?:eneratedCellStyles|eneric|eometricTransformation3DBox|eometricTransformation3DBoxOptions|eometricTransformationBox|eometricTransformationBoxOptions|estureHandlerTag|etContext|etFileName|etLinebreakInformationPacket|lobalPreferences|lobalSession|raphLayerLabels|raphRoot|raphics3DBox|raphics3DBoxOptions|raphicsBaseline|raphicsBox|raphicsBoxOptions|raphicsComplex3DBox|raphicsComplex3DBoxOptions|raphicsComplexBox|raphicsComplexBoxOptions|raphicsContents|raphicsData|raphicsGridBox|raphicsGroup3DBox|raphicsGroup3DBoxOptions|raphicsGroupBox|raphicsGroupBoxOptions|raphicsGrouping|raphicsStyle|reekStyle|ridBoxAlignment|ridBoxBackground|ridBoxDividers|ridBoxFrame|ridBoxItemSize|ridBoxItemStyle|ridBoxOptions|ridBoxSpacings|ridElementStyleOptions|roupOpenerColor|roupOpenerInsideFrame|roupTogetherGrouping|roupTogetherNestedGrouping))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:H(?:eadCompose|eaders|elpBrowserLookup|elpBrowserNotebook|elpViewerSettings|essian|exahedronBox|exahedronBoxOptions|ighlightString|omePage|orizontal|orizontalForm|orizontalScrollPosition|yperlinkCreationSettings|yphenationOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:I(?:conizedObject|gnoreSpellCheck|mageCache|mageCacheValid|mageEditMode|mageMarkers|mageOffset|mageRangeCache|mageSizeCache|mageSizeRaw|nactiveStyle|ncludeSingularTerm|ndent|ndentMaxFraction|ndentingNewlineSpacings|ndexCreationOptions|ndexTag|nequality|nexactNumbers|nformationData|nformationDataGrid|nlineCounterAssignments|nlineCounterIncrements|nlineRules|nputFieldBox|nputFieldBoxOptions|nputGrouping|nputSettings|nputToBoxFormPacket|nsertionPointObject|nset3DBox|nset3DBoxOptions|nsetBox|nsetBoxOptions|ntegral|nterlaced|nterpolationPrecision|nterpretTemplate|nterruptSettings|nto|nvisibleApplication|nvisibleTimes|temBox|temBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:J(?:acobian|oinedCurveBox|oinedCurveBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:K(?:|ernelExecute|et))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:L(?:abeledSlider|ambertW|anguageOptions|aunch|ayoutInformation|exicographic|icenseID|ine3DBox|ine3DBoxOptions|ineBox|ineBoxOptions|ineBreak|ineWrapParts|inearFilter|inebreakSemicolonWeighting|inkConnectedQ|inkError|inkFlush|inkHost|inkMode|inkOptions|inkReadHeld|inkService|inkWriteHeld|istPickerBoxBackground|isten|iteralSearch|ocalizeDefinitions|ocatorBox|ocatorBoxOptions|ocatorCentering|ocatorPaneBox|ocatorPaneBoxOptions|ongEqual|ongForm|oopback))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:M(?:achineID|achineName|acintoshSystemPageSetup|ainSolve|aintainDynamicCaches|akeRules|atchLocalNameQ|aterial|athMLText|athematicaNotation|axBend|axPoints|enu|enuAppearance|enuEvaluator|enuItem|enuList|ergeDifferences|essageObject|essageOptions|essagesNotebook|etaCharacters|ethodOptions|inRecursion|inSize|ode|odular|onomialOrder|ouseAppearanceTag|ouseButtons|ousePointerNote|ultiLetterItalics|ultiLetterStyle|ultiplicity|ultiscriptBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:N(?:BernoulliB|ProductFactors|SumTerms|Values|amespaceBox|amespaceBoxOptions|estedScriptRules|etworkPacketRecordingDuring|ext|onAssociative|ormalGrouping|otebookDefault|otebookInterfaceObject))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:O(?:LEData|bjectExistsQ|pen|penFunctionInspectorPacket|penSpecialOptions|penerBox|penerBoxOptions|ptionQ|ptionValueBox|ptionValueBoxOptions|ptionsPacket|utputFormData|utputGrouping|utputMathEditExpression|ver|verlayBox|verlayBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:P(?:ackPaclet|ackage|acletDirectoryAdd|acletDirectoryRemove|acletInformation|acletObjectQ|acletUpdate|ageHeight|alettesMenuSettings|aneBox|aneBoxOptions|aneSelectorBox|aneSelectorBoxOptions|anelBox|anelBoxOptions|aperWidth|arameter|arameterVariables|arentConnect|arentForm|arentList|arenthesize|artialD|asteAutoQuoteCharacters|ausedTime|eriodicInterpolation|erpendicular|ickMode|ickedElements|ivoting|lotRangeClipPlanesStyle|oint3DBox|oint3DBoxOptions|ointBox|ointBoxOptions|olygon3DBox|olygon3DBoxOptions|olygonBox|olygonBoxOptions|olygonHoleScale|olygonScale|olyhedronBox|olyhedronBoxOptions|olynomialForm|olynomials|opupMenuBox|opupMenuBoxOptions|ostScript|recedence|redictionRoot|referencesSettings|revious|rimaryPlaceholder|rintForm|rismBox|rismBoxOptions|rivateFrontEndOptions|robabilityPr|rocessStateDomain|rocessTimeDomain|rogressIndicatorBox|rogressIndicatorBoxOptions|romptForm|yramidBox|yramidBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:R(?:adioButtonBox|adioButtonBoxOptions|andomSeed|angeSpecification|aster3DBox|aster3DBoxOptions|asterBox|asterBoxOptions|ationalFunctions|awArray|awMedium|ebuildPacletData|ectangleBox|ecurringDigitsForm|eferenceMarkerStyle|eferenceMarkers|einstall|emoved|epeatedString|esourceAcquire|esourceSubmissionObject|eturnCreatesNewCell|eturnEntersInput|eturnInputFormPacket|otationBox|otationBoxOptions|oundImplies|owBackgrounds|owHeights|uleCondition|uleForm))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:S(?:aveAutoDelete|caledMousePosition|cheduledTaskInformationData|criptForm|criptRules|ectionGrouping|electWithContents|election|electionCell|electionCellCreateCell|electionCellDefaultStyle|electionCellParentStyle|electionPlaceholder|elfLoops|erviceResponse|etOptionsPacket|etSecuredAuthenticationKey|etbacks|etterBox|etterBoxOptions|howAutoConvert|howCodeAssist|howControls|howGroupOpenCloseIcon|howInvisibleCharacters|howPredictiveInterface|howSyntaxStyles|hrinkWrapBoundingBox|ingleEvaluation|ingleLetterStyle|lider2DBox|lider2DBoxOptions|ocket|olveDelayed|oundAndGraphics|pace|paceForm|panningCharacters|phereBox|phereBoxOptions|tartupSound|tringBreak|tringByteCount|tripStyleOnPaste|trokeForm|tructuredArrayHeadQ|tyleKeyMapping|tyleNames|urfaceAppearance|yntax|ystemException|ystemGet|ystemInformationData|ystemStub|ystemTest))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:T(?:ab|abViewBox|abViewBoxOptions|ableViewBox|ableViewBoxAlignment|ableViewBoxBackground|ableViewBoxHeaders|ableViewBoxItemSize|ableViewBoxItemStyle|ableViewBoxOptions|agBoxNote|agStyle|emplateEvaluate|emplateSlotSequence|emplateUnevaluated|emplateVerbatim|emporaryVariable|ensorQ|etrahedronBox|etrahedronBoxOptions|ext3DBox|ext3DBoxOptions|extBand|extBoundingBox|extBox|extForm|extLine|extParagraph|hisLink|itleGrouping|oColor|oggle|oggleFalse|ogglerBox|ogglerBoxOptions|ooBig|ooltipBox|ooltipBoxOptions|otalHeight|raceAction|raceInternal|raceLevel|rackCellChangeTimes|raditionalNotation|raditionalOrder|ransparentColor|rapEnterKey|rapSelection|ubeBSplineCurveBox|ubeBSplineCurveBoxOptions|ubeBezierCurveBox|ubeBezierCurveBoxOptions|ubeBox|ubeBoxOptions))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:U(?:ntrackedVariables|p|seGraphicsRange|serDefinedWavelet|sing))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:V(?:2Get|alueBox|alueBoxOptions|alueForm|aluesData|ectorGlyphData|erbose|ertical|erticalForm|iewPointSelectorSettings|iewPort|irtualGroupData|isibleCell))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:W(?:aitUntil|ebPageMetaInformation|holeCellGroupOpener|indowPersistentStyles|indowSelected|indowWidth|olframAlphaDate|olframAlphaQuantity|olframAlphaResult|olframCloudSettings))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\$(?:ActivationGroupID|ActivationUserRegistered|AddOnsDirectory|BoxForms|CloudConnection|CloudVersionNumber|CloudWolframEngineVersionNumber|ConditionHold|DefaultMailbox|DefaultPath|FinancialDataSource|GeoEntityTypes|GeoLocationPrecision|HTMLExportRules|HTTPRequest|LaunchDirectory|LicenseProcesses|LicenseSubprocesses|LicenseType|LinkSupported|LoadedFiles|MaxLicenseProcesses|MaxLicenseSubprocesses|MinorReleaseNumber|NetworkLicense|Off|OutputForms|PatchLevelID|PermissionsGroupBase|PipeSupported|PreferencesDirectory|PrintForms|PrintLiteral|RegisteredDeviceClasses|RegisteredUserName|SecuredAuthenticationKeyTokens|SetParentLink|SoundDisplay|SuppressInputFormHeads|SystemMemory|TraceOff|TraceOn|TracePattern|TracePostAction|TracePreAction|UserAgentLanguages|UserAgentMachine|UserAgentName|UserAgentOperatingSystem|UserAgentVersion|UserName))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.undocumented.wolfram\\\"},{\\\"match\\\":\\\"(?:A(?:ctiveClassification|ctiveClassificationObject|ctivePrediction|ctivePredictionObject|ddToSearchIndex|ggregatedEntityClass|ggregationLayer|ngleBisector|nimatedImage|nimationVideo|nomalyDetector|ppendLayer|pplication|pplyReaction|round|roundReplace|rrayReduce|sk|skAppend|skConfirm|skDisplay|skFunction|skState|skTemplateDisplay|skedQ|skedValue|ssessmentFunction|ssessmentResultObject|ssumeDeterministic|stroAngularSeparation|stroBackground|stroCenter|stroDistance|stroGraphics|stroGridLines|stroGridLinesStyle|stroPosition|stroProjection|stroRange|stroRangePadding|stroReferenceFrame|stroStyling|stroZoomLevel|tom|tomCoordinates|tomCount|tomDiagramCoordinates|tomLabelStyle|tomLabels|tomList|ttachCell|ttentionLayer|udioAnnotate|udioAnnotationLookup|udioIdentify|udioInstanceQ|udioPause|udioPlay|udioRecord|udioStop|udioStream|udioStreams|udioTrackApply|udioTrackSelection|utocomplete|utocompletionFunction|xiomaticTheory|xisLabel|xisObject|xisStyle))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:B(?:asicRecurrentLayer|atchNormalizationLayer|atchSize|ayesianMaximization|ayesianMaximizationObject|ayesianMinimization|ayesianMinimizationObject|esagL|innedVariogramList|inomialPointProcess|ioSequence|ioSequenceBackTranslateList|ioSequenceComplement|ioSequenceInstances|ioSequenceModify|ioSequencePlot|ioSequenceQ|ioSequenceReverseComplement|ioSequenceTranscribe|ioSequenceTranslate|itRate|lockDiagonalMatrix|lockLowerTriangularMatrix|lockUpperTriangularMatrix|lockchainAddressData|lockchainBase|lockchainBlockData|lockchainContractValue|lockchainData|lockchainGet|lockchainKeyEncode|lockchainPut|lockchainTokenData|lockchainTransaction|lockchainTransactionData|lockchainTransactionSign|lockchainTransactionSubmit|ond|ondCount|ondLabelStyle|ondLabels|ondList|ondQ|uildCompiledComponent))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:C(?:TCLossLayer|achePersistence|anvas|ast|ategoricalDistribution|atenateLayer|auchyPointProcess|hannelBase|hannelBrokerAction|hannelHistoryLength|hannelListen|hannelListener|hannelListeners|hannelObject|hannelReceiverFunction|hannelSend|hannelSubscribers|haracterNormalize|hemicalConvert|hemicalFormula|hemicalInstance|hemicalReaction|loudExpression|loudExpressions|loudRenderingMethod|ombinatorB|ombinatorC|ombinatorI|ombinatorK|ombinatorS|ombinatorW|ombinatorY|ombinedEntityClass|ompiledCodeFunction|ompiledComponent|ompiledExpressionDeclaration|ompiledLayer|ompilerCallback|ompilerEnvironment|ompilerEnvironmentAppendTo|ompilerEnvironmentObject|ompilerOptions|omplementedEntityClass|omputeUncertainty|onfirmQuiet|onformationMethod|onnectSystemModelComponents|onnectSystemModelController|onnectedMoleculeComponents|onnectedMoleculeQ|onnectionSettings|ontaining|ontentDetectorFunction|ontentFieldOptions|ontentLocationFunction|ontentObject|ontrastiveLossLayer|onvolutionLayer|reateChannel|reateCloudExpression|reateCompilerEnvironment|reateDataStructure|reateDataSystemModel|reateLicenseEntitlement|reateSearchIndex|reateSystemModel|reateTypeInstance|rossEntropyLossLayer|urrentNotebookImage|urrentScreenImage|urryApplied))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:D(?:SolveChangeVariables|ataStructure|ataStructureQ|atabaseConnect|atabaseDisconnect|atabaseReference|atabinSubmit|ateInterval|eclareCompiledComponent|econvolutionLayer|ecryptFile|eleteChannel|eleteCloudExpression|eleteElements|eleteSearchIndex|erivedKey|iggleGatesPointProcess|iggleGrattonPointProcess|igitalSignature|isableFormatting|ocumentWeightingRules|otLayer|ownValuesFunction|ropoutLayer|ynamicImage))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:E(?:choTiming|lementwiseLayer|mbeddedSQLEntityClass|mbeddedSQLExpression|mbeddingLayer|mptySpaceF|ncryptFile|ntityFunction|ntityStore|stimatedPointProcess|stimatedVariogramModel|valuationEnvironment|valuationPrivileges|xpirationDate|xpressionTree|xtendedEntityClass|xternalEvaluate|xternalFunction|xternalIdentifier|xternalObject|xternalSessionObject|xternalSessions|xternalStorageBase|xternalStorageDownload|xternalStorageGet|xternalStorageObject|xternalStoragePut|xternalStorageUpload|xternalValue|xtractLayer))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:F(?:aceRecognize|eatureDistance|eatureExtract|eatureExtraction|eatureExtractor|eatureExtractorFunction|ileConvert|ileFormatProperties|ileNameToFormatList|ileSystemTree|ilteredEntityClass|indChannels|indEquationalProof|indExternalEvaluators|indGeometricConjectures|indImageText|indIsomers|indMoleculeSubstructure|indPointProcessParameters|indSystemModelEquilibrium|indTextualAnswer|lattenLayer|orAllType|ormControl|orwardCloudCredentials|oxHReduce|rameListVideo|romRawPointer|unctionCompile|unctionCompileExport|unctionCompileExportByteArray|unctionCompileExportLibrary|unctionCompileExportString|unctionDeclaration|unctionLayer|unctionPoles))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:G(?:alleryView|atedRecurrentLayer|enerateDerivedKey|enerateDigitalSignature|enerateFileSignature|enerateSecuredAuthenticationKey|eneratedAssetFormat|eneratedAssetLocation|eoGraphValuePlot|eoOrientationData|eometricAssertion|eometricScene|eometricStep|eometricStylingRules|eometricTest|ibbsPointProcess|raphTree|ridVideo))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:H(?:andlerFunctions|andlerFunctionsKeys|ardcorePointProcess|istogramPointDensity))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:I(?:gnoreIsotopes|gnoreStereochemistry|mageAugmentationLayer|mageBoundingBoxes|mageCases|mageContainsQ|mageContents|mageGraphics|magePosition|magePyramid|magePyramidApply|mageStitch|mportedObject|ncludeAromaticBonds|ncludeHydrogens|ncludeRelatedTables|nertEvaluate|nertExpression|nfiniteFuture|nfinitePast|nhomogeneousPoissonPointProcess|nitialEvaluationHistory|nitializationObject|nitializationObjects|nitializationValue|nitialize|nputPorts|ntegrateChangeVariables|nterfaceSwitched|ntersectedEntityClass|nverseImagePyramid))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:K(?:ernelConfiguration|ernelFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:L(?:earningRateMultipliers|ibraryFunctionDeclaration|icenseEntitlementObject|icenseEntitlements|icensingSettings|inearLayer|iteralType|oadCompiledComponent|ocalResponseNormalizationLayer|ongShortTermMemoryLayer|ossFunction))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:M(?:IMETypeToFormatList|ailExecute|ailFolder|ailItem|ailSearch|ailServerConnect|ailServerConnection|aternPointProcess|axDisplayedChildren|axTrainingRounds|axWordGap|eanAbsoluteLossLayer|eanAround|eanPointDensity|eanSquaredLossLayer|ergingFunction|idpoint|issingValuePattern|issingValueSynthesis|olecule|oleculeAlign|oleculeContainsQ|oleculeDraw|oleculeFreeQ|oleculeGraph|oleculeMatchQ|oleculeMaximumCommonSubstructure|oleculeModify|oleculeName|oleculePattern|oleculePlot|oleculePlot3D|oleculeProperty|oleculeQ|oleculeRecognize|oleculeSubstructureCount|oleculeValue))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:N(?:BodySimulation|BodySimulationData|earestNeighborG|estTree|etAppend|etArray|etArrayLayer|etBidirectionalOperator|etChain|etDecoder|etDelete|etDrop|etEncoder|etEvaluationMode|etExternalObject|etExtract|etFlatten|etFoldOperator|etGANOperator|etGraph|etInitialize|etInsert|etInsertSharedArrays|etJoin|etMapOperator|etMapThreadOperator|etMeasurements|etModel|etNestOperator|etPairEmbeddingOperator|etPort|etPortGradient|etPrepend|etRename|etReplace|etReplacePart|etStateObject|etTake|etTrain|etTrainResultsObject|etUnfold|etworkPacketCapture|etworkPacketRecording|etworkPacketTrace|eymanScottPointProcess|ominalScale|ormalizationLayer|umericArray|umericArrayQ|umericArrayType))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:O(?:peratorApplied|rderingLayer|rdinalScale|utputPorts|verlayVideo))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:P(?:acletSymbol|addingLayer|agination|airCorrelationG|arametricRampLayer|arentEdgeLabel|arentEdgeLabelFunction|arentEdgeLabelStyle|arentEdgeShapeFunction|arentEdgeStyle|arentEdgeStyleFunction|artLayer|artProtection|atternFilling|atternReaction|enttinenPointProcess|erpendicularBisector|ersistenceLocation|ersistenceTime|ersistentObject|ersistentObjects|ersistentSymbol|itchRecognize|laceholderLayer|laybackSettings|ointCountDistribution|ointDensity|ointDensityFunction|ointProcessEstimator|ointProcessFitTest|ointProcessParameterAssumptions|ointProcessParameterQ|ointStatisticFunction|ointValuePlot|oissonPointProcess|oolingLayer|rependLayer|roofObject|ublisherID))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:Q(?:uestionGenerator|uestionInterface|uestionObject|uestionSelector))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:R(?:andomArrayLayer|andomInstance|andomPointConfiguration|andomTree|eactionBalance|eactionBalancedQ|ecalibrationFunction|egisterExternalEvaluator|elationalDatabase|emoteAuthorizationCaching|emoteBatchJobAbort|emoteBatchJobObject|emoteBatchJobs|emoteBatchMapSubmit|emoteBatchSubmissionEnvironment|emoteBatchSubmit|emoteConnect|emoteConnectionObject|emoteEvaluate|emoteFile|emoteInputFiles|emoteProviderSettings|emoteRun|emoteRunProcess|emovalConditions|emoveAudioStream|emoveChannelListener|emoveChannelSubscribers|emoveVideoStream|eplicateLayer|eshapeLayer|esizeLayer|esourceFunction|esourceRegister|esourceRemove|esourceSubmit|esourceSystemBase|esourceSystemPath|esourceUpdate|esourceVersion|everseApplied|ipleyK|ipleyRassonRegion|ootTree|ulesTree))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:S(?:ameTestProperties|ampledEntityClass|earchAdjustment|earchIndexObject|earchIndices|earchQueryString|earchResultObject|ecuredAuthenticationKey|ecuredAuthenticationKeys|ecurityCertificate|equenceIndicesLayer|equenceLastLayer|equenceMostLayer|equencePredict|equencePredictorFunction|equenceRestLayer|equenceReverseLayer|erviceRequest|erviceSubmit|etFileFormatProperties|etSystemModel|lideShowVideo|moothPointDensity|nippet|nippetsVideo|nubPolyhedron|oftmaxLayer|olidBoundaryLoadValue|olidDisplacementCondition|olidFixedCondition|olidMechanicsPDEComponent|olidMechanicsStrain|olidMechanicsStress|ortedEntityClass|ourceLink|patialBinnedPointData|patialBoundaryCorrection|patialEstimate|patialEstimatorFunction|patialJ|patialNoiseLevel|patialObservationRegionQ|patialPointData|patialPointSelect|patialRandomnessTest|patialTransformationLayer|patialTrendFunction|peakerMatchQ|peechCases|peechInterpreter|peechRecognize|plice|tartExternalSession|tartWebSession|tereochemistryElements|traussHardcorePointProcess|traussPointProcess|ubsetCases|ubsetCount|ubsetPosition|ubsetReplace|ubtitleTrackSelection|ummationLayer|ymmetricDifference|ynthesizeMissingValues|ystemCredential|ystemCredentialData|ystemCredentialKey|ystemCredentialKeys|ystemCredentialStoreObject|ystemInstall|ystemModel|ystemModelExamples|ystemModelLinearize|ystemModelMeasurements|ystemModelParametricSimulate|ystemModelPlot|ystemModelReliability|ystemModelSimulate|ystemModelSimulateSensitivity|ystemModelSimulationData|ystemModeler|ystemModels))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:T(?:ableView|argetDevice|argetSystem|ernaryListPlot|ernaryPlotCorners|extCases|extContents|extElement|extPosition|extSearch|extSearchReport|extStructure|homasPointProcess|hreaded|hreadingLayer|ickDirection|ickLabelOrientation|ickLabelPositioning|ickLabels|ickLengths|ickPositions|oRawPointer|otalLayer|ourVideo|rainImageContentDetector|rainTextContentDetector|rainingProgressCheckpointing|rainingProgressFunction|rainingProgressMeasurements|rainingProgressReporting|rainingStoppingCriterion|rainingUpdateSchedule|ransposeLayer|ree|reeCases|reeChildren|reeCount|reeData|reeDelete|reeDepth|reeElementCoordinates|reeElementLabel|reeElementLabelFunction|reeElementLabelStyle|reeElementShape|reeElementShapeFunction|reeElementSize|reeElementSizeFunction|reeElementStyle|reeElementStyleFunction|reeExpression|reeExtract|reeFold|reeInsert|reeLayout|reeLeafCount|reeLeafQ|reeLeaves|reeLevel|reeMap|reeMapAt|reeOutline|reePosition|reeQ|reeReplacePart|reeRules|reeScan|reeSelect|reeSize|reeTraversalOrder|riangleCenter|riangleConstruct|riangleMeasurement|ypeDeclaration|ypeEvaluate|ypeOf|ypeSpecifier|yped))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:U(?:RLDownloadSubmit|nconstrainedParameters|nionedEntityClass|niqueElements|nitVectorLayer|nlabeledTree|nmanageObject|nregisterExternalEvaluator|pdateSearchIndex|seEmbeddedLibrary))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:V(?:alenceErrorHandling|alenceFilling|aluePreprocessingFunction|andermondeMatrix|arianceGammaPointProcess|ariogramFunction|ariogramModel|ectorAround|erifyDerivedKey|erifyDigitalSignature|erifyFileSignature|erifyInterpretation|ideo|ideoCapture|ideoCombine|ideoDelete|ideoExtractFrames|ideoFrameList|ideoFrameMap|ideoGenerator|ideoInsert|ideoIntervals|ideoJoin|ideoMap|ideoMapList|ideoMapTimeSeries|ideoPadding|ideoPause|ideoPlay|ideoQ|ideoRecord|ideoReplace|ideoScreenCapture|ideoSplit|ideoStop|ideoStream|ideoStreams|ideoTimeStretch|ideoTrackSelection|ideoTranscode|ideoTransparency|ideoTrim))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:W(?:ebAudioSearch|ebColumn|ebElementObject|ebExecute|ebImage|ebImageSearch|ebItem|ebRow|ebSearch|ebSessionObject|ebSessions|ebWindowObject|ikidataData|ikidataSearch|ikipediaSearch|ithCleanup|ithLock))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:Z(?:oomCenter|oomFactor))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\$(?:AllowExternalChannelFunctions|AudioDecoders|AudioEncoders|BlockchainBase|ChannelBase|CompilerEnvironment|CookieStore|CryptographicEllipticCurveNames|CurrentWebSession|DataStructures|DefaultNetworkInterface|DefaultProxyRules|DefaultRemoteBatchSubmissionEnvironment|DefaultRemoteKernel|DefaultSystemCredentialStore|ExternalIdentifierTypes|ExternalStorageBase|GeneratedAssetLocation|IncomingMailSettings|Initialization|InitializationContexts|MaxDisplayedChildren|NetworkInterfaces|NoValue|PersistenceBase|PersistencePath|PreInitialization|PublisherID|ResourceSystemBase|ResourceSystemPath|SSHAuthentication|ServiceCreditsAvailable|SourceLink|SubtitleDecoders|SubtitleEncoders|SystemCredentialStore|TargetSystems|TestFileName|VideoDecoders|VideoEncoders|VoiceStyles))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"support.function.experimental.wolfram\\\"},{\\\"match\\\":\\\"(?:A(?:llFalse|nyFalse))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:B(?:oolean))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:C(?:loudbase|omplexQ))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:D(?:ataSet))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:E(?:xpandFilename|xportPacket))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:F(?:ailed|alseQ))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:I(?:nterpolationFunction|nterpolationPolynomial))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:M(?:atch))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:O(?:ptionPattern|ptionsQ))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:R(?:ationalQ|ealQ))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:S(?:tringMatch|ymbolQ))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:U(?:nSameQ|rlExecute))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\$(?:PathNameSeparator|RegisteredUsername))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.bad.wolfram\\\"},{\\\"match\\\":\\\"(?:E(?:cho|xit))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"(?:I(?:n|nString))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"(?:O(?:ut))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"(?:P(?:rint))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"(?:Q(?:uit))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"(?:\\\\\\\\$(?:HistoryLength|Line|Post|Pre|PrePrint|PreRead|SyntaxHandler))(?![`$[:alnum:]])\\\",\\\"name\\\":\\\"invalid.session.wolfram\\\"},{\\\"match\\\":\\\"(?:[$[:alpha:]][$[:alnum:]]*)(?=\\\\\\\\s*(\\\\\\\\[(?!\\\\\\\\s*\\\\\\\\[)|@(?!@)))\\\",\\\"name\\\":\\\"variable.function.wolfram\\\"},{\\\"match\\\":\\\"(?:[$[:alpha:]][$[:alnum:]]*)\\\",\\\"name\\\":\\\"symbol.unrecognized.wolfram\\\"}]}},\\\"scopeName\\\":\\\"source.wolfram\\\",\\\"aliases\\\":[\\\"wl\\\"]}\"))\n\nexport default [\nlang\n]\n", "import xml from './xml.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"XSL\\\",\\\"name\\\":\\\"xsl\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(<)(xsl)((:))(template)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.tag.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.namespace.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.tag.xml\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.xml\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.tag.localname.xml\\\"}},\\\"end\\\":\\\"(>)\\\",\\\"name\\\":\\\"meta.tag.xml.template\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.namespace.xml\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.other.attribute-name.xml\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.separator.namespace.xml\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.other.attribute-name.localname.xml\\\"}},\\\"match\\\":\\\" (?:([-_a-zA-Z0-9]+)((:)))?([a-zA-Z-]+)\\\"},{\\\"include\\\":\\\"#doublequotedString\\\"},{\\\"include\\\":\\\"#singlequotedString\\\"}]},{\\\"include\\\":\\\"text.xml\\\"}],\\\"repository\\\":{\\\"doublequotedString\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.xml\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.xml\\\"}},\\\"name\\\":\\\"string.quoted.double.xml\\\"},\\\"singlequotedString\\\":{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.xml\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.xml\\\"}},\\\"name\\\":\\\"string.quoted.single.xml\\\"}},\\\"scopeName\\\":\\\"text.xml.xsl\\\",\\\"embeddedLangs\\\":[\\\"xml\\\"]}\"))\n\nexport default [\n...xml,\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"ZenScript\\\",\\\"fileTypes\\\":[\\\"zs\\\"],\\\"name\\\":\\\"zenscript\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"numbers\\\",\\\"match\\\":\\\"\\\\\\\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\\\\\\\.?[0-9]*)|(\\\\\\\\.[0-9]+))((e|E)(\\\\\\\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.zenscript\\\"},{\\\"comment\\\":\\\"prefixedNumbers\\\",\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\-?(0b|0x|0o|0B|0X|0O)(0|[1-9a-fA-F][0-9a-fA-F_]*)[a-zA-Z_]*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.zenscript\\\"},{\\\"include\\\":\\\"#code\\\"},{\\\"comment\\\":\\\"arrays\\\",\\\"match\\\":\\\"\\\\\\\\b((?:[a-z]\\\\\\\\w*\\\\\\\\.)*[A-Z]+\\\\\\\\w*)(?=\\\\\\\\[)\\\",\\\"name\\\":\\\"storage.type.object.array.zenscript\\\"}],\\\"repository\\\":{\\\"brackets\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.zenscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.zenscript\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.zenscript\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.other.zenscript\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.zenscript\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.zenscript\\\"},\\\"7\\\":{\\\"name\\\":\\\"keyword.control.zenscript\\\"}},\\\"comment\\\":\\\"items and blocks\\\",\\\"match\\\":\\\"(<)\\\\\\\\b(.*?)(:(.*?(:(\\\\\\\\*|\\\\\\\\d+)?)?)?)(>)\\\",\\\"name\\\":\\\"keyword.other.zenscript\\\"}]},\\\"class\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.zenscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.zenscript\\\"}},\\\"comment\\\":\\\"class\\\",\\\"match\\\":\\\"(zenClass)\\\\\\\\s+(\\\\\\\\w+)\\\",\\\"name\\\":\\\"meta.class.zenscript\\\"},\\\"code\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#class\\\"},{\\\"include\\\":\\\"#functions\\\"},{\\\"include\\\":\\\"#dots\\\"},{\\\"include\\\":\\\"#quotes\\\"},{\\\"include\\\":\\\"#brackets\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#var\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#operators\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"inline comments\\\",\\\"match\\\":\\\"//[^\\\\n]*\\\",\\\"name\\\":\\\"comment.line.double=slash\\\"},{\\\"begin\\\":\\\"\\\\\\\\/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.block\\\"}},\\\"comment\\\":\\\"block comments\\\",\\\"end\\\":\\\"\\\\\\\\*\\\\\\\\/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"comment.block\\\"}},\\\"name\\\":\\\"comment.block\\\"}]},\\\"dots\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.zenscript\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.zenscript\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.zenscript\\\"}},\\\"comment\\\":\\\"dots\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w+)(\\\\\\\\.)(\\\\\\\\w+)((\\\\\\\\.)(\\\\\\\\w+))*\\\",\\\"name\\\":\\\"plain.text.zenscript\\\"},\\\"functions\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"storage.type.function.zenscript\\\"},\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.zenscript\\\"}},\\\"comment\\\":\\\"functions\\\",\\\"match\\\":\\\"function\\\\\\\\s+([A-Za-z_$][\\\\\\\\w$]*)\\\\\\\\s*(?=\\\\\\\\()\\\",\\\"name\\\":\\\"meta.function.zenscript\\\"},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"statement keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(instanceof|get|implements|set|import|function|override|const|if|else|do|while|for|throw|panic|lock|try|catch|finally|return|break|continue|switch|case|default|in|is|as|match|throws|super|new)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.zenscript\\\"},{\\\"comment\\\":\\\"storage keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(zenClass|zenConstructor|alias|class|interface|enum|struct|expand|variant|set|void|bool|byte|sbyte|short|ushort|int|uint|long|ulong|usize|float|double|char|string)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.zenscript\\\"},{\\\"comment\\\":\\\"modifier keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(variant|abstract|final|private|public|export|internal|static|protected|implicit|virtual|extern|immutable)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.zenscript\\\"},{\\\"comment\\\":\\\"annotation keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(Native|Precondition)\\\\\\\\b\\\",\\\"name\\\":\\\"entity.other.attribute-name\\\"},{\\\"comment\\\":\\\"language keywords\\\",\\\"match\\\":\\\"\\\\\\\\b(null|true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"math operators\\\",\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\.|\\\\\\\\.\\\\\\\\.|\\\\\\\\.\\\\\\\\.\\\\\\\\.|,|\\\\\\\\+|\\\\\\\\+=|\\\\\\\\+\\\\\\\\+|-|-=|--|~|~=|\\\\\\\\*|\\\\\\\\*=|/|/=|%|%=|\\\\\\\\||\\\\\\\\|=|\\\\\\\\|\\\\\\\\||&|&=|&&|\\\\\\\\^|\\\\\\\\^=|\\\\\\\\?|\\\\\\\\?\\\\\\\\.|\\\\\\\\?\\\\\\\\?|<|<=|<<|<<=|>|>=|>>|>>=|>>>|>>>=|=>|=|==|===|!|!=|!==|\\\\\\\\$|`)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control\\\"},{\\\"comment\\\":\\\"colons\\\",\\\"match\\\":\\\"\\\\\\\\b(;|:)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control\\\"}]},\\\"quotes\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.zenscript\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.zenscript\\\"}},\\\"name\\\":\\\"string.quoted.double.zenscript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.zenscript\\\"}]},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.zenscript\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.zenscript\\\"}},\\\"name\\\":\\\"string.quoted.single.zenscript\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.zenscript\\\"}]}]},\\\"var\\\":{\\\"comment\\\":\\\"var\\\",\\\"match\\\":\\\"\\\\\\\\b(val|var)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type\\\"}},\\\"scopeName\\\":\\\"source.zenscript\\\"}\"))\n\nexport default [\nlang\n]\n", "const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Zig\\\",\\\"fileTypes\\\":[\\\"zig\\\",\\\"zon\\\"],\\\"name\\\":\\\"zig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#punctuation\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#support\\\"},{\\\"include\\\":\\\"#variables\\\"}],\\\"repository\\\":{\\\"commentContents\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(TODO|FIXME|XXX|NOTE)\\\\\\\\b:?\\\",\\\"name\\\":\\\"keyword.todo.zig\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"//[!/](?=[^/])\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.documentation.zig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#commentContents\\\"}]},{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.zig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#commentContents\\\"}]}]},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\binline\\\\\\\\b(?!\\\\\\\\s*\\\\\\\\bfn\\\\\\\\b)\\\",\\\"name\\\":\\\"keyword.control.repeat.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(while|for)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.repeat.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(extern|packed|export|pub|noalias|inline|comptime|volatile|align|linksection|threadlocal|allowzero|noinline|callconv)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.storage.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(struct|enum|union|opaque)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.structure.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(asm|unreachable)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.statement.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(break|return|continue|defer|errdefer)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(await|resume|suspend|async|nosuspend)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.async.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(try|catch)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.trycatch.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(if|else|switch|orelse)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.conditional.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(null|undefined)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.constant.default.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.constant.bool.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(usingnamespace|test|and|or)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.default.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(bool|void|noreturn|type|error|anyerror|anyframe|anytype|anyopaque)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.type.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(f16|f32|f64|f80|f128|u\\\\\\\\d+|i\\\\\\\\d+|isize|usize|comptime_int|comptime_float)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.type.integer.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b(c_char|c_short|c_ushort|c_int|c_uint|c_long|c_ulong|c_longlong|c_ulonglong|c_longdouble)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.type.c.zig\\\"}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b0x[0-9a-fA-F][0-9a-fA-F_]*(\\\\\\\\.[0-9a-fA-F][0-9a-fA-F_]*)?([pP][+-]?[0-9a-fA-F_]+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hexfloat.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.[0-9][0-9_]*)?([eE][+-]?[0-9_]+)?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9][0-9_]*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b0x[a-fA-F0-9_]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hexadecimal.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b0o[0-7_]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.octal.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b0b[01_]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.binary.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9](([eEpP][+-])|[0-9a-zA-Z_])*(\\\\\\\\.(([eEpP][+-])|[0-9a-zA-Z_])*)?([eEpP][+-])?[0-9a-zA-Z_]*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.invalid.zig\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\[)\\\\\\\\*c(?=\\\\\\\\])\\\",\\\"name\\\":\\\"keyword.operator.c-pointer.zig\\\"},{\\\"match\\\":\\\"(\\\\\\\\b(and|or)\\\\\\\\b)|(==|!=|<=|>=|<|>)\\\",\\\"name\\\":\\\"keyword.operator.comparison.zig\\\"},{\\\"match\\\":\\\"(-%?|\\\\\\\\+%?|\\\\\\\\*%?|/|%)=?\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.zig\\\"},{\\\"match\\\":\\\"(<<%?|>>|!|~|&|\\\\\\\\^|\\\\\\\\|)=?\\\",\\\"name\\\":\\\"keyword.operator.bitwise.zig\\\"},{\\\"match\\\":\\\"(==|\\\\\\\\+\\\\\\\\+|\\\\\\\\*\\\\\\\\*|->)\\\",\\\"name\\\":\\\"keyword.operator.special.zig\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.question.zig\\\"}]},\\\"punctuation\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"punctuation.accessor.zig\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.comma.zig\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.key-value.zig\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.zig\\\"}]},\\\"stringcontent\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\([nrt'\\\\\\\"\\\\\\\\\\\\\\\\]|(x[0-9a-fA-F]{2})|(u\\\\\\\\{[0-9a-fA-F]+\\\\\\\\}))\\\",\\\"name\\\":\\\"constant.character.escape.zig\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.zig\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.zig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringcontent\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"string.multiline.zig\\\"},{\\\"match\\\":\\\"'([^'\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\(x\\\\\\\\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.))'\\\",\\\"name\\\":\\\"string.quoted.single.zig\\\"}]},\\\"support\\\":{\\\"patterns\\\":[{\\\"comment\\\":\\\"Built-in functions\\\",\\\"match\\\":\\\"@[_a-zA-Z][_a-zA-Z0-9]*\\\",\\\"name\\\":\\\"support.function.builtin.zig\\\"}]},\\\"variables\\\":{\\\"patterns\\\":[{\\\"name\\\":\\\"meta.function.declaration.zig\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.zig\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.zig\\\"}},\\\"match\\\":\\\"\\\\\\\\b(fn)\\\\\\\\s+([A-Z][a-zA-Z0-9]*)\\\\\\\\b\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.zig\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.zig\\\"}},\\\"match\\\":\\\"\\\\\\\\b(fn)\\\\\\\\s+([_a-zA-Z][_a-zA-Z0-9]*)\\\\\\\\b\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(fn)\\\\\\\\s+@\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.zig\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"entity.name.function.string.zig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringcontent\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b(const|var|fn)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.default.zig\\\"}]},{\\\"name\\\":\\\"meta.function.call.zig\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([A-Z][a-zA-Z0-9]*)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.type.zig\\\"},{\\\"match\\\":\\\"([_a-zA-Z][_a-zA-Z0-9]*)(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.zig\\\"}]},{\\\"name\\\":\\\"meta.variable.zig\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[_a-zA-Z][_a-zA-Z0-9]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.zig\\\"},{\\\"begin\\\":\\\"@\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"variable.string.zig\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringcontent\\\"}]}]}]}},\\\"scopeName\\\":\\\"source.zig\\\"}\"))\n\nexport default [\nlang\n]\n", "/* Theme: andromeeda */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#23262E\\\",\\\"activityBar.dropBackground\\\":\\\"#3a404e\\\",\\\"activityBar.foreground\\\":\\\"#BAAFC0\\\",\\\"activityBarBadge.background\\\":\\\"#00b0ff\\\",\\\"activityBarBadge.foreground\\\":\\\"#20232B\\\",\\\"badge.background\\\":\\\"#00b0ff\\\",\\\"badge.foreground\\\":\\\"#20232B\\\",\\\"button.background\\\":\\\"#00e8c5cc\\\",\\\"button.hoverBackground\\\":\\\"#07d4b6cc\\\",\\\"debugExceptionWidget.background\\\":\\\"#FF9F2E60\\\",\\\"debugExceptionWidget.border\\\":\\\"#FF9F2E60\\\",\\\"debugToolBar.background\\\":\\\"#20232A\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#29BF1220\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#F21B3F20\\\",\\\"dropdown.background\\\":\\\"#2b303b\\\",\\\"dropdown.border\\\":\\\"#363c49\\\",\\\"editor.background\\\":\\\"#23262E\\\",\\\"editor.findMatchBackground\\\":\\\"#f39d1256\\\",\\\"editor.findMatchBorder\\\":\\\"#f39d12b6\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#59b8b377\\\",\\\"editor.foreground\\\":\\\"#D5CED9\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#373941\\\",\\\"editor.lineHighlightBackground\\\":\\\"#2e323d\\\",\\\"editor.lineHighlightBorder\\\":\\\"#2e323d\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#372F3C\\\",\\\"editor.selectionBackground\\\":\\\"#3D4352\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#4F435580\\\",\\\"editor.wordHighlightBackground\\\":\\\"#4F4355\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#db45a280\\\",\\\"editorBracketMatch.background\\\":\\\"#746f77\\\",\\\"editorBracketMatch.border\\\":\\\"#746f77\\\",\\\"editorCodeLens.foreground\\\":\\\"#746f77\\\",\\\"editorCursor.foreground\\\":\\\"#FFF\\\",\\\"editorError.foreground\\\":\\\"#FC644D\\\",\\\"editorGroup.background\\\":\\\"#23262E\\\",\\\"editorGroup.dropBackground\\\":\\\"#495061d7\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#23262E\\\",\\\"editorGutter.addedBackground\\\":\\\"#9BC53DBB\\\",\\\"editorGutter.deletedBackground\\\":\\\"#FC644DBB\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#5BC0EBBB\\\",\\\"editorHoverWidget.background\\\":\\\"#373941\\\",\\\"editorHoverWidget.border\\\":\\\"#00e8c5cc\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#585C66\\\",\\\"editorIndentGuide.background\\\":\\\"#333844\\\",\\\"editorLineNumber.foreground\\\":\\\"#746f77\\\",\\\"editorLink.activeForeground\\\":\\\"#3B79C7\\\",\\\"editorOverviewRuler.border\\\":\\\"#1B1D23\\\",\\\"editorRuler.foreground\\\":\\\"#4F4355\\\",\\\"editorSuggestWidget.background\\\":\\\"#20232A\\\",\\\"editorSuggestWidget.border\\\":\\\"#372F3C\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#373941\\\",\\\"editorWarning.foreground\\\":\\\"#FF9F2E\\\",\\\"editorWhitespace.foreground\\\":\\\"#333844\\\",\\\"editorWidget.background\\\":\\\"#20232A\\\",\\\"errorForeground\\\":\\\"#FC644D\\\",\\\"extensionButton.prominentBackground\\\":\\\"#07d4b6cc\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#07d4b5b0\\\",\\\"focusBorder\\\":\\\"#746f77\\\",\\\"foreground\\\":\\\"#D5CED9\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#555555\\\",\\\"input.background\\\":\\\"#2b303b\\\",\\\"input.placeholderForeground\\\":\\\"#746f77\\\",\\\"inputOption.activeBorder\\\":\\\"#C668BA\\\",\\\"inputValidation.errorBackground\\\":\\\"#D65343\\\",\\\"inputValidation.errorBorder\\\":\\\"#D65343\\\",\\\"inputValidation.infoBackground\\\":\\\"#3A6395\\\",\\\"inputValidation.infoBorder\\\":\\\"#3A6395\\\",\\\"inputValidation.warningBackground\\\":\\\"#DE9237\\\",\\\"inputValidation.warningBorder\\\":\\\"#DE9237\\\",\\\"list.activeSelectionBackground\\\":\\\"#23262E\\\",\\\"list.activeSelectionForeground\\\":\\\"#00e8c6\\\",\\\"list.dropBackground\\\":\\\"#3a404e\\\",\\\"list.focusBackground\\\":\\\"#282b35\\\",\\\"list.focusForeground\\\":\\\"#eee\\\",\\\"list.hoverBackground\\\":\\\"#23262E\\\",\\\"list.hoverForeground\\\":\\\"#eee\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#23262E\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#00e8c6\\\",\\\"merge.currentContentBackground\\\":\\\"#F9267240\\\",\\\"merge.currentHeaderBackground\\\":\\\"#F92672\\\",\\\"merge.incomingContentBackground\\\":\\\"#3B79C740\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#3B79C7BB\\\",\\\"minimapSlider.activeBackground\\\":\\\"#60698060\\\",\\\"minimapSlider.background\\\":\\\"#58607460\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#60698060\\\",\\\"notification.background\\\":\\\"#2d313b\\\",\\\"notification.buttonBackground\\\":\\\"#00e8c5cc\\\",\\\"notification.buttonHoverBackground\\\":\\\"#07d4b5b0\\\",\\\"notification.errorBackground\\\":\\\"#FC644D\\\",\\\"notification.infoBackground\\\":\\\"#00b0ff\\\",\\\"notification.warningBackground\\\":\\\"#FF9F2E\\\",\\\"panel.background\\\":\\\"#23262E\\\",\\\"panel.border\\\":\\\"#1B1D23\\\",\\\"panelTitle.activeBorder\\\":\\\"#23262E\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#746f77\\\",\\\"peekView.border\\\":\\\"#23262E\\\",\\\"peekViewEditor.background\\\":\\\"#1A1C22\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#FF9F2E60\\\",\\\"peekViewResult.background\\\":\\\"#1A1C22\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#FF9F2E60\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#23262E\\\",\\\"peekViewTitle.background\\\":\\\"#1A1C22\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#746f77\\\",\\\"pickerGroup.border\\\":\\\"#4F4355\\\",\\\"pickerGroup.foreground\\\":\\\"#746f77\\\",\\\"progressBar.background\\\":\\\"#C668BA\\\",\\\"scrollbar.shadow\\\":\\\"#23262E\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#3A3F4CCC\\\",\\\"scrollbarSlider.background\\\":\\\"#3A3F4C77\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#3A3F4CAA\\\",\\\"selection.background\\\":\\\"#746f77\\\",\\\"sideBar.background\\\":\\\"#23262E\\\",\\\"sideBar.foreground\\\":\\\"#999999\\\",\\\"sideBarSectionHeader.background\\\":\\\"#23262E\\\",\\\"sideBarTitle.foreground\\\":\\\"#00e8c6\\\",\\\"statusBar.background\\\":\\\"#23262E\\\",\\\"statusBar.debuggingBackground\\\":\\\"#FC644D\\\",\\\"statusBar.noFolderBackground\\\":\\\"#23262E\\\",\\\"statusBarItem.activeBackground\\\":\\\"#00e8c5cc\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#07d4b5b0\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#07d4b5b0\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#00e8c5cc\\\",\\\"tab.activeBackground\\\":\\\"#23262e\\\",\\\"tab.activeBorder\\\":\\\"#00e8c6\\\",\\\"tab.activeForeground\\\":\\\"#00e8c6\\\",\\\"tab.inactiveBackground\\\":\\\"#23262E\\\",\\\"tab.inactiveForeground\\\":\\\"#746f77\\\",\\\"terminal.ansiBlue\\\":\\\"#7cb7ff\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#7cb7ff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#00e8c6\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#96E072\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#ff00aa\\\",\\\"terminal.ansiBrightRed\\\":\\\"#ee5d43\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#FFE66D\\\",\\\"terminal.ansiCyan\\\":\\\"#00e8c6\\\",\\\"terminal.ansiGreen\\\":\\\"#96E072\\\",\\\"terminal.ansiMagenta\\\":\\\"#ff00aa\\\",\\\"terminal.ansiRed\\\":\\\"#ee5d43\\\",\\\"terminal.ansiYellow\\\":\\\"#FFE66D\\\",\\\"terminalCursor.background\\\":\\\"#23262E\\\",\\\"terminalCursor.foreground\\\":\\\"#FFE66D\\\",\\\"titleBar.activeBackground\\\":\\\"#23262E\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#23262E\\\",\\\"widget.shadow\\\":\\\"#14151A\\\"},\\\"displayName\\\":\\\"Andromeeda\\\",\\\"name\\\":\\\"andromeeda\\\",\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"background\\\":\\\"#23262E\\\",\\\"foreground\\\":\\\"#D5CED9\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"markup.quote.markdown\\\",\\\"meta.diff\\\",\\\"meta.diff.header\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A1A7cc\\\"}},{\\\"scope\\\":[\\\"meta.template.expression.js\\\",\\\"constant.name.attribute.tag.jade\\\",\\\"punctuation.definition.metadata.markdown\\\",\\\"punctuation.definition.string.end.markdown\\\",\\\"punctuation.definition.string.begin.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D5CED9\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"support.variable\\\",\\\"entity.name.tag.yaml\\\",\\\"constant.character.entity.html\\\",\\\"source.css entity.name.tag.reference\\\",\\\"beginning.punctuation.definition.list.markdown\\\",\\\"source.css entity.other.attribute-name.parent-selector\\\",\\\"meta.structure.dictionary.json support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00e8c6\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"constant.numeric\\\",\\\"meta.group.regexp\\\",\\\"constant.other.php\\\",\\\"support.constant.ext.php\\\",\\\"constant.other.class.php\\\",\\\"support.constant.core.php\\\",\\\"fenced_code.block.language\\\",\\\"constant.other.caps.python\\\",\\\"entity.other.attribute-name\\\",\\\"support.type.exception.python\\\",\\\"source.css keyword.other.unit\\\",\\\"variable.other.object.property.js.jsx\\\",\\\"variable.other.object.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f39c12\\\"}},{\\\"scope\\\":[\\\"markup.list\\\",\\\"text.xml string\\\",\\\"entity.name.type\\\",\\\"support.function\\\",\\\"entity.other.attribute-name\\\",\\\"meta.at-rule.extend\\\",\\\"entity.name.function\\\",\\\"entity.other.inherited-class\\\",\\\"entity.other.keyframe-offset.css\\\",\\\"text.html.markdown string.quoted\\\",\\\"meta.function-call.generic.python\\\",\\\"meta.at-rule.extend support.constant\\\",\\\"entity.other.attribute-name.class.jade\\\",\\\"source.css entity.other.attribute-name\\\",\\\"text.xml punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFE66D\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"variable.language.this.js\\\",\\\"variable.language.special.self.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff00aa\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.interpolation\\\",\\\"punctuation.section.embedded.end.php\\\",\\\"punctuation.section.embedded.end.ruby\\\",\\\"punctuation.section.embedded.begin.php\\\",\\\"punctuation.section.embedded.begin.ruby\\\",\\\"punctuation.definition.template-expression\\\",\\\"entity.name.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f92672\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"keyword\\\",\\\"meta.link\\\",\\\"meta.image\\\",\\\"markup.italic\\\",\\\"source.js support.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c74ded\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\",\\\"markup.changed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7cb7ff\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"support.class\\\",\\\"keyword.operator\\\",\\\"support.constant\\\",\\\"text.html.markdown string\\\",\\\"source.css support.function\\\",\\\"source.php support.function\\\",\\\"support.function.magic.python\\\",\\\"entity.other.attribute-name.id\\\",\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ee5d43\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"text.html.php string\\\",\\\"markup.inline.raw\\\",\\\"markup.inserted\\\",\\\"punctuation.definition.string\\\",\\\"punctuation.definition.markdown\\\",\\\"text.html meta.embedded source.js string\\\",\\\"text.html.php punctuation.definition.string\\\",\\\"text.html meta.embedded source.js punctuation.definition.string\\\",\\\"text.html punctuation.definition.string\\\",\\\"text.html string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#96E072\\\"}},{\\\"scope\\\":[\\\"entity.other.inherited-class\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: aurora-x */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#07090F\\\",\\\"activityBar.foreground\\\":\\\"#86A5FF\\\",\\\"activityBar.inactiveForeground\\\":\\\"#576dafc5\\\",\\\"activityBarBadge.background\\\":\\\"#86A5FF\\\",\\\"activityBarBadge.foreground\\\":\\\"#07090F\\\",\\\"badge.background\\\":\\\"#86A5FF\\\",\\\"badge.foreground\\\":\\\"#07090F\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#86A5FF\\\",\\\"breadcrumb.focusForeground\\\":\\\"#576daf\\\",\\\"breadcrumb.foreground\\\":\\\"#576dafa6\\\",\\\"breadcrumbPicker.background\\\":\\\"#07090F\\\",\\\"button.background\\\":\\\"#86A5FF\\\",\\\"button.foreground\\\":\\\"#07090F\\\",\\\"button.hoverBackground\\\":\\\"#A8BEFF\\\",\\\"descriptionForeground\\\":\\\"#576daf79\\\",\\\"diffEditor.diagonalFill\\\":\\\"#15182B\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#64d3892c\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#dd50742c\\\",\\\"dropdown.background\\\":\\\"#15182B\\\",\\\"dropdown.foreground\\\":\\\"#c7d5ff99\\\",\\\"editor.background\\\":\\\"#07090F\\\",\\\"editor.findMatchBackground\\\":\\\"#576daf\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#262E47\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#262e47be\\\",\\\"editor.selectionBackground\\\":\\\"#262E47\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#262E47\\\",\\\"editor.wordHighlightBackground\\\":\\\"#262E47\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#262E47\\\",\\\"editorCodeLens.foreground\\\":\\\"#262E47\\\",\\\"editorCursor.background\\\":\\\"#01030b\\\",\\\"editorCursor.foreground\\\":\\\"#86A5FF\\\",\\\"editorGroup.background\\\":\\\"#07090F\\\",\\\"editorGroup.border\\\":\\\"#15182B\\\",\\\"editorGroup.dropBackground\\\":\\\"#0C0E19\\\",\\\"editorGroup.emptyBackground\\\":\\\"#07090F\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#07090F\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#576dafd8\\\",\\\"editorLineNumber.foreground\\\":\\\"#262e47bb\\\",\\\"editorWidget.background\\\":\\\"#15182B\\\",\\\"editorWidget.border\\\":\\\"#576daf\\\",\\\"extensionButton.prominentBackground\\\":\\\"#C7D5FF\\\",\\\"extensionButton.prominentForeground\\\":\\\"#07090F\\\",\\\"focusBorder\\\":\\\"#262E47\\\",\\\"foreground\\\":\\\"#576daf\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#64d389fd\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#dd5074\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#576daf90\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#c778db\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#576daf90\\\",\\\"icon.foreground\\\":\\\"#576daf\\\",\\\"input.background\\\":\\\"#15182B\\\",\\\"input.foreground\\\":\\\"#86A5FF\\\",\\\"inputOption.activeForeground\\\":\\\"#86A5FF\\\",\\\"inputValidation.errorBackground\\\":\\\"#dd5073\\\",\\\"inputValidation.errorBorder\\\":\\\"#dd5073\\\",\\\"inputValidation.errorForeground\\\":\\\"#07090F\\\",\\\"list.activeSelectionBackground\\\":\\\"#000000\\\",\\\"list.activeSelectionForeground\\\":\\\"#86A5FF\\\",\\\"list.dropBackground\\\":\\\"#000000\\\",\\\"list.errorForeground\\\":\\\"#dd5074\\\",\\\"list.focusBackground\\\":\\\"#01030b\\\",\\\"list.focusForeground\\\":\\\"#86A5FF\\\",\\\"list.highlightForeground\\\":\\\"#A8BEFF\\\",\\\"list.hoverBackground\\\":\\\"#000000\\\",\\\"list.hoverForeground\\\":\\\"#A8BEFF\\\",\\\"list.inactiveFocusBackground\\\":\\\"#01030b\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#000000\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#86A5FF\\\",\\\"list.warningForeground\\\":\\\"#e6db7f\\\",\\\"notificationCenterHeader.background\\\":\\\"#15182B\\\",\\\"notifications.background\\\":\\\"#15182B\\\",\\\"panel.border\\\":\\\"#15182B\\\",\\\"panelTitle.activeBorder\\\":\\\"#86A5FF\\\",\\\"panelTitle.activeForeground\\\":\\\"#C7D5FF\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#576daf\\\",\\\"peekViewTitle.background\\\":\\\"#262E47\\\",\\\"quickInput.background\\\":\\\"#0C0E19\\\",\\\"scrollbar.shadow\\\":\\\"#01030b\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#576daf\\\",\\\"scrollbarSlider.background\\\":\\\"#262E47\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#576daf\\\",\\\"selection.background\\\":\\\"#01030b\\\",\\\"sideBar.background\\\":\\\"#07090F\\\",\\\"sideBar.border\\\":\\\"#15182B\\\",\\\"sideBarSectionHeader.background\\\":\\\"#07090F\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#86A5FF\\\",\\\"statusBar.background\\\":\\\"#86A5FF\\\",\\\"statusBar.debuggingBackground\\\":\\\"#c778db\\\",\\\"statusBar.foreground\\\":\\\"#07090F\\\",\\\"tab.activeBackground\\\":\\\"#07090F\\\",\\\"tab.activeBorder\\\":\\\"#86A5FF\\\",\\\"tab.activeForeground\\\":\\\"#C7D5FF\\\",\\\"tab.border\\\":\\\"#07090F\\\",\\\"tab.inactiveBackground\\\":\\\"#07090F\\\",\\\"tab.inactiveForeground\\\":\\\"#576dafd8\\\",\\\"terminal.ansiBrightRed\\\":\\\"#dd5073\\\",\\\"terminal.ansiGreen\\\":\\\"#63eb90\\\",\\\"terminal.ansiRed\\\":\\\"#dd5073\\\",\\\"terminal.foreground\\\":\\\"#A8BEFF\\\",\\\"textLink.foreground\\\":\\\"#86A5FF\\\",\\\"titleBar.activeBackground\\\":\\\"#07090F\\\",\\\"titleBar.activeForeground\\\":\\\"#86A5FF\\\",\\\"titleBar.inactiveBackground\\\":\\\"#07090F\\\",\\\"tree.indentGuidesStroke\\\":\\\"#576daf\\\",\\\"widget.shadow\\\":\\\"#01030b\\\"},\\\"displayName\\\":\\\"Aurora X\\\",\\\"name\\\":\\\"aurora-x\\\",\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#546E7A\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"string constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":[\\\"constant.other.color\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":[\\\"invalid\\\",\\\"invalid.illegal\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5370\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"storage.type\\\",\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\",\\\"constant.other.color\\\",\\\"punctuation\\\",\\\"meta.tag\\\",\\\"punctuation.definition.tag\\\",\\\"punctuation.separator.inheritance.php\\\",\\\"punctuation.definition.tag.html\\\",\\\"punctuation.definition.tag.begin.html\\\",\\\"punctuation.definition.tag.end.html\\\",\\\"punctuation.section.embedded\\\",\\\"keyword.other.template\\\",\\\"keyword.other.substitution\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"meta.tag.sgml\\\",\\\"markup.deleted.git_gutter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.function-call\\\",\\\"variable.function\\\",\\\"support.function\\\",\\\"keyword.other.special-method\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"meta.block variable.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"support.other.variable\\\",\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"constant.language\\\",\\\"support.constant\\\",\\\"constant.character\\\",\\\"constant.escape\\\",\\\"variable.parameter\\\",\\\"keyword.other.unit\\\",\\\"keyword.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"constant.other.symbol\\\",\\\"constant.other.key\\\",\\\"entity.other.inherited-class\\\",\\\"markup.heading\\\",\\\"markup.inserted.git_gutter\\\",\\\"meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":[\\\"entity.name\\\",\\\"support.type\\\",\\\"support.class\\\",\\\"support.orther.namespace.use.php\\\",\\\"meta.use.php\\\",\\\"support.other.namespace.php\\\",\\\"markup.changed.git_gutter\\\",\\\"support.type.sys-types\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":[\\\"support.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B2CCD6\\\"}},{\\\"scope\\\":[\\\"source.css support.type.property-name\\\",\\\"source.sass support.type.property-name\\\",\\\"source.scss support.type.property-name\\\",\\\"source.less support.type.property-name\\\",\\\"source.stylus support.type.property-name\\\",\\\"source.postcss support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B2CCD6\\\"}},{\\\"scope\\\":[\\\"entity.name.module.js\\\",\\\"variable.import.parameter.js\\\",\\\"variable.other.class.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5370\\\"}},{\\\"scope\\\":[\\\"variable.language\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FF5370\\\"}},{\\\"scope\\\":[\\\"entity.name.method.js\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"meta.class-method.js entity.name.function.js\\\",\\\"variable.function.constructor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"text.html.basic entity.other.attribute-name.html\\\",\\\"text.html.basic entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":[\\\"source.sass keyword.control\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5370\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":[\\\"constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":[\\\"*url*\\\",\\\"*link*\\\",\\\"*uri*\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"tag.decorator.js entity.name.tag.js\\\",\\\"tag.decorator.js punctuation.definition.tag.js\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"source.js constant.other.object.key.js string.unquoted.label.js\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FF5370\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5370\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C17E70\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":[\\\"text.html.markdown\\\",\\\"punctuation.definition.list_item.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#65737E\\\"}},{\\\"scope\\\":[\\\"markdown.heading\\\",\\\"markup.heading | markup.heading entity.name\\\",\\\"markup.heading.markdown punctuation.definition.heading.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.bold markup.italic\\\",\\\"markup.italic markup.bold\\\",\\\"markup.quote markup.bold\\\",\\\"markup.bold markup.italic string\\\",\\\"markup.italic markup.bold string\\\",\\\"markup.quote markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"markup.quote punctuation.definition.blockquote.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#65737E\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"string.other.link.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"string.other.link.description.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":[\\\"markup.raw.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00000050\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00000050\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\",\\\"variable.language.fenced.markdown\\\",\\\"punctuation.section.class.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":[\\\"variable.language.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#65737E\\\"}},{\\\"scope\\\":[\\\"meta.separator\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#65737E\\\"}},{\\\"scope\\\":[\\\"markup.table\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: ayu-dark */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#e6b450b3\\\",\\\"activityBar.background\\\":\\\"#0b0e14\\\",\\\"activityBar.border\\\":\\\"#0b0e14\\\",\\\"activityBar.foreground\\\":\\\"#565b66cc\\\",\\\"activityBar.inactiveForeground\\\":\\\"#565b6699\\\",\\\"activityBarBadge.background\\\":\\\"#e6b450\\\",\\\"activityBarBadge.foreground\\\":\\\"#0b0e14\\\",\\\"badge.background\\\":\\\"#e6b45033\\\",\\\"badge.foreground\\\":\\\"#e6b450\\\",\\\"button.background\\\":\\\"#e6b450\\\",\\\"button.foreground\\\":\\\"#0b0e14\\\",\\\"button.hoverBackground\\\":\\\"#e1af4b\\\",\\\"button.secondaryBackground\\\":\\\"#565b6633\\\",\\\"button.secondaryForeground\\\":\\\"#bfbdb6\\\",\\\"button.secondaryHoverBackground\\\":\\\"#565b6680\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#e6b450\\\",\\\"debugExceptionWidget.background\\\":\\\"#0f131a\\\",\\\"debugExceptionWidget.border\\\":\\\"#11151c\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#f2966880\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#f29668\\\",\\\"debugToolBar.background\\\":\\\"#0f131a\\\",\\\"descriptionForeground\\\":\\\"#565b66\\\",\\\"diffEditor.diagonalFill\\\":\\\"#11151c\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#7fd9621f\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#f26d781f\\\",\\\"dropdown.background\\\":\\\"#0d1017\\\",\\\"dropdown.border\\\":\\\"#565b6645\\\",\\\"dropdown.foreground\\\":\\\"#565b66\\\",\\\"editor.background\\\":\\\"#0b0e14\\\",\\\"editor.findMatchBackground\\\":\\\"#6c5980\\\",\\\"editor.findMatchBorder\\\":\\\"#6c5980\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#6c598066\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#5f4c7266\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#6c598040\\\",\\\"editor.foreground\\\":\\\"#bfbdb6\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#409fff21\\\",\\\"editor.lineHighlightBackground\\\":\\\"#131721\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#6c598033\\\",\\\"editor.selectionBackground\\\":\\\"#409fff4d\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#7fd96226\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#7fd96200\\\",\\\"editor.snippetTabstopHighlightBackground\\\":\\\"#7fd96233\\\",\\\"editor.wordHighlightBackground\\\":\\\"#73b8ff14\\\",\\\"editor.wordHighlightBorder\\\":\\\"#73b8ff80\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#7fd96214\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#7fd96280\\\",\\\"editorBracketMatch.background\\\":\\\"#6c73804d\\\",\\\"editorBracketMatch.border\\\":\\\"#6c73804d\\\",\\\"editorCodeLens.foreground\\\":\\\"#acb6bf8c\\\",\\\"editorCursor.foreground\\\":\\\"#e6b450\\\",\\\"editorError.foreground\\\":\\\"#d95757\\\",\\\"editorGroup.background\\\":\\\"#0f131a\\\",\\\"editorGroup.border\\\":\\\"#11151c\\\",\\\"editorGroupHeader.noTabsBackground\\\":\\\"#0b0e14\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#0b0e14\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#0b0e14\\\",\\\"editorGutter.addedBackground\\\":\\\"#7fd962cc\\\",\\\"editorGutter.deletedBackground\\\":\\\"#f26d78cc\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#73b8ffcc\\\",\\\"editorHoverWidget.background\\\":\\\"#0f131a\\\",\\\"editorHoverWidget.border\\\":\\\"#11151c\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#6c738080\\\",\\\"editorIndentGuide.background\\\":\\\"#6c738033\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#6c7380e6\\\",\\\"editorLineNumber.foreground\\\":\\\"#6c738099\\\",\\\"editorLink.activeForeground\\\":\\\"#e6b450\\\",\\\"editorMarkerNavigation.background\\\":\\\"#0f131a\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#7fd962\\\",\\\"editorOverviewRuler.border\\\":\\\"#11151c\\\",\\\"editorOverviewRuler.bracketMatchForeground\\\":\\\"#6c7380b3\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#f26d78\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#d95757\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#6c5980\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#73b8ff\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#e6b450\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#73b8ff66\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#7fd96266\\\",\\\"editorRuler.foreground\\\":\\\"#6c738033\\\",\\\"editorSuggestWidget.background\\\":\\\"#0f131a\\\",\\\"editorSuggestWidget.border\\\":\\\"#11151c\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#e6b450\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#47526640\\\",\\\"editorWarning.foreground\\\":\\\"#e6b450\\\",\\\"editorWhitespace.foreground\\\":\\\"#6c738099\\\",\\\"editorWidget.background\\\":\\\"#0f131a\\\",\\\"editorWidget.border\\\":\\\"#11151c\\\",\\\"errorForeground\\\":\\\"#d95757\\\",\\\"extensionButton.prominentBackground\\\":\\\"#e6b450\\\",\\\"extensionButton.prominentForeground\\\":\\\"#0d1017\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#e1af4b\\\",\\\"focusBorder\\\":\\\"#e6b450b3\\\",\\\"foreground\\\":\\\"#565b66\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#f26d78b3\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#565b6680\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#73b8ffb3\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#d2a6ffb3\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#7fd962b3\\\",\\\"icon.foreground\\\":\\\"#565b66\\\",\\\"input.background\\\":\\\"#0d1017\\\",\\\"input.border\\\":\\\"#565b6645\\\",\\\"input.foreground\\\":\\\"#bfbdb6\\\",\\\"input.placeholderForeground\\\":\\\"#565b6680\\\",\\\"inputOption.activeBackground\\\":\\\"#e6b45033\\\",\\\"inputOption.activeBorder\\\":\\\"#e6b4504d\\\",\\\"inputOption.activeForeground\\\":\\\"#e6b450\\\",\\\"inputValidation.errorBackground\\\":\\\"#0d1017\\\",\\\"inputValidation.errorBorder\\\":\\\"#d95757\\\",\\\"inputValidation.infoBackground\\\":\\\"#0b0e14\\\",\\\"inputValidation.infoBorder\\\":\\\"#39bae6\\\",\\\"inputValidation.warningBackground\\\":\\\"#0b0e14\\\",\\\"inputValidation.warningBorder\\\":\\\"#ffb454\\\",\\\"keybindingLabel.background\\\":\\\"#565b661a\\\",\\\"keybindingLabel.border\\\":\\\"#bfbdb61a\\\",\\\"keybindingLabel.bottomBorder\\\":\\\"#bfbdb61a\\\",\\\"keybindingLabel.foreground\\\":\\\"#bfbdb6\\\",\\\"list.activeSelectionBackground\\\":\\\"#47526640\\\",\\\"list.activeSelectionForeground\\\":\\\"#bfbdb6\\\",\\\"list.deemphasizedForeground\\\":\\\"#d95757\\\",\\\"list.errorForeground\\\":\\\"#d95757\\\",\\\"list.filterMatchBackground\\\":\\\"#5f4c7266\\\",\\\"list.filterMatchBorder\\\":\\\"#6c598066\\\",\\\"list.focusBackground\\\":\\\"#47526640\\\",\\\"list.focusForeground\\\":\\\"#bfbdb6\\\",\\\"list.focusOutline\\\":\\\"#47526640\\\",\\\"list.highlightForeground\\\":\\\"#e6b450\\\",\\\"list.hoverBackground\\\":\\\"#47526640\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#47526633\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#565b66\\\",\\\"list.invalidItemForeground\\\":\\\"#565b664d\\\",\\\"listFilterWidget.background\\\":\\\"#0f131a\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#d95757\\\",\\\"listFilterWidget.outline\\\":\\\"#e6b450\\\",\\\"minimap.background\\\":\\\"#0b0e14\\\",\\\"minimap.errorHighlight\\\":\\\"#d95757\\\",\\\"minimap.findMatchHighlight\\\":\\\"#6c5980\\\",\\\"minimap.selectionHighlight\\\":\\\"#409fff4d\\\",\\\"minimapGutter.addedBackground\\\":\\\"#7fd962\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#f26d78\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#73b8ff\\\",\\\"panel.background\\\":\\\"#0b0e14\\\",\\\"panel.border\\\":\\\"#11151c\\\",\\\"panelTitle.activeBorder\\\":\\\"#e6b450\\\",\\\"panelTitle.activeForeground\\\":\\\"#bfbdb6\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#565b66\\\",\\\"peekView.border\\\":\\\"#47526640\\\",\\\"peekViewEditor.background\\\":\\\"#0f131a\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#6c598066\\\",\\\"peekViewEditor.matchHighlightBorder\\\":\\\"#5f4c7266\\\",\\\"peekViewResult.background\\\":\\\"#0f131a\\\",\\\"peekViewResult.fileForeground\\\":\\\"#bfbdb6\\\",\\\"peekViewResult.lineForeground\\\":\\\"#565b66\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#6c598066\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#47526640\\\",\\\"peekViewTitle.background\\\":\\\"#47526640\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#565b66\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#bfbdb6\\\",\\\"pickerGroup.border\\\":\\\"#11151c\\\",\\\"pickerGroup.foreground\\\":\\\"#565b6680\\\",\\\"progressBar.background\\\":\\\"#e6b450\\\",\\\"scrollbar.shadow\\\":\\\"#11151c00\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#565b66b3\\\",\\\"scrollbarSlider.background\\\":\\\"#565b6666\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#565b6699\\\",\\\"selection.background\\\":\\\"#409fff4d\\\",\\\"settings.headerForeground\\\":\\\"#bfbdb6\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#73b8ff\\\",\\\"sideBar.background\\\":\\\"#0b0e14\\\",\\\"sideBar.border\\\":\\\"#0b0e14\\\",\\\"sideBarSectionHeader.background\\\":\\\"#0b0e14\\\",\\\"sideBarSectionHeader.border\\\":\\\"#0b0e14\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#565b66\\\",\\\"sideBarTitle.foreground\\\":\\\"#565b66\\\",\\\"statusBar.background\\\":\\\"#0b0e14\\\",\\\"statusBar.border\\\":\\\"#0b0e14\\\",\\\"statusBar.debuggingBackground\\\":\\\"#f29668\\\",\\\"statusBar.debuggingForeground\\\":\\\"#0d1017\\\",\\\"statusBar.foreground\\\":\\\"#565b66\\\",\\\"statusBar.noFolderBackground\\\":\\\"#0f131a\\\",\\\"statusBarItem.activeBackground\\\":\\\"#565b6633\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#565b6633\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#11151c\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#00000030\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#e6b450\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#0d1017\\\",\\\"tab.activeBackground\\\":\\\"#0b0e14\\\",\\\"tab.activeBorder\\\":\\\"#e6b450\\\",\\\"tab.activeForeground\\\":\\\"#bfbdb6\\\",\\\"tab.border\\\":\\\"#0b0e14\\\",\\\"tab.inactiveBackground\\\":\\\"#0b0e14\\\",\\\"tab.inactiveForeground\\\":\\\"#565b66\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#565b66\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#565b66\\\",\\\"tab.unfocusedInactiveForeground\\\":\\\"#565b66\\\",\\\"terminal.ansiBlack\\\":\\\"#11151c\\\",\\\"terminal.ansiBlue\\\":\\\"#53bdfa\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#686868\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#59c2ff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#95e6cb\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#aad94c\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#d2a6ff\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f07178\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#ffb454\\\",\\\"terminal.ansiCyan\\\":\\\"#90e1c6\\\",\\\"terminal.ansiGreen\\\":\\\"#7fd962\\\",\\\"terminal.ansiMagenta\\\":\\\"#cda1fa\\\",\\\"terminal.ansiRed\\\":\\\"#ea6c73\\\",\\\"terminal.ansiWhite\\\":\\\"#c7c7c7\\\",\\\"terminal.ansiYellow\\\":\\\"#f9af4f\\\",\\\"terminal.background\\\":\\\"#0b0e14\\\",\\\"terminal.foreground\\\":\\\"#bfbdb6\\\",\\\"textBlockQuote.background\\\":\\\"#0f131a\\\",\\\"textLink.activeForeground\\\":\\\"#e6b450\\\",\\\"textLink.foreground\\\":\\\"#e6b450\\\",\\\"textPreformat.foreground\\\":\\\"#bfbdb6\\\",\\\"titleBar.activeBackground\\\":\\\"#0b0e14\\\",\\\"titleBar.activeForeground\\\":\\\"#bfbdb6\\\",\\\"titleBar.border\\\":\\\"#0b0e14\\\",\\\"titleBar.inactiveBackground\\\":\\\"#0b0e14\\\",\\\"titleBar.inactiveForeground\\\":\\\"#565b66\\\",\\\"tree.indentGuidesStroke\\\":\\\"#6c738080\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#0f131a\\\",\\\"welcomePage.buttonBackground\\\":\\\"#e6b45066\\\",\\\"welcomePage.progress.background\\\":\\\"#131721\\\",\\\"welcomePage.tileBackground\\\":\\\"#0b0e14\\\",\\\"welcomePage.tileShadow\\\":\\\"#00000080\\\",\\\"widget.shadow\\\":\\\"#00000080\\\"},\\\"displayName\\\":\\\"Ayu Dark\\\",\\\"name\\\":\\\"ayu-dark\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"parameter.label\\\":\\\"#bfbdb6\\\"},\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"background\\\":\\\"#0b0e14\\\",\\\"foreground\\\":\\\"#bfbdb6\\\"}},{\\\"scope\\\":[\\\"comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#acb6bf8c\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"constant.other.symbol\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#aad94c\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\",\\\"constant.character\\\",\\\"constant.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#95e6cb\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d2a6ff\\\"}},{\\\"scope\\\":[\\\"constant.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d2a6ff\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"variable.parameter.function-call\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bfbdb6\\\"}},{\\\"scope\\\":[\\\"variable.member\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"variable.language\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#39bae6\\\"}},{\\\"scope\\\":[\\\"storage\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff8f40\\\"}},{\\\"scope\\\":[\\\"keyword\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff8f40\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f29668\\\"}},{\\\"scope\\\":[\\\"punctuation.separator\\\",\\\"punctuation.terminator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bfbdb6b3\\\"}},{\\\"scope\\\":[\\\"punctuation.section\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bfbdb6\\\"}},{\\\"scope\\\":[\\\"punctuation.accessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f29668\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.template-expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff8f40\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff8f40\\\"}},{\\\"scope\\\":[\\\"meta.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bfbdb6\\\"}},{\\\"scope\\\":[\\\"source.java storage.type\\\",\\\"source.haskell storage.type\\\",\\\"source.c storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#59c2ff\\\"}},{\\\"scope\\\":[\\\"entity.other.inherited-class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#39bae6\\\"}},{\\\"scope\\\":[\\\"storage.type.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff8f40\\\"}},{\\\"scope\\\":[\\\"source.java storage.type.primitive\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#39bae6\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb454\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\",\\\"meta.parameter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d2a6ff\\\"}},{\\\"scope\\\":[\\\"variable.function\\\",\\\"variable.annotation\\\",\\\"meta.function-call.generic\\\",\\\"support.function.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb454\\\"}},{\\\"scope\\\":[\\\"support.function\\\",\\\"support.macro\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"entity.name.import\\\",\\\"entity.name.package\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#aad94c\\\"}},{\\\"scope\\\":[\\\"entity.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#59c2ff\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"meta.tag.sgml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#39bae6\\\"}},{\\\"scope\\\":[\\\"support.class.component\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#59c2ff\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.tag.end\\\",\\\"punctuation.definition.tag.begin\\\",\\\"punctuation.definition.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#39bae680\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb454\\\"}},{\\\"scope\\\":[\\\"support.constant\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f29668\\\"}},{\\\"scope\\\":[\\\"support.type\\\",\\\"support.class\\\",\\\"source.go storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#39bae6\\\"}},{\\\"scope\\\":[\\\"meta.decorator variable.other\\\",\\\"meta.decorator punctuation.decorator\\\",\\\"storage.type.annotation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e6b673\\\"}},{\\\"scope\\\":[\\\"invalid\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d95757\\\"}},{\\\"scope\\\":[\\\"meta.diff\\\",\\\"meta.diff.header\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c594c5\\\"}},{\\\"scope\\\":[\\\"source.ruby variable.other.readwrite\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb454\\\"}},{\\\"scope\\\":[\\\"source.css entity.name.tag\\\",\\\"source.sass entity.name.tag\\\",\\\"source.scss entity.name.tag\\\",\\\"source.less entity.name.tag\\\",\\\"source.stylus entity.name.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#59c2ff\\\"}},{\\\"scope\\\":[\\\"source.css support.type\\\",\\\"source.sass support.type\\\",\\\"source.scss support.type\\\",\\\"source.less support.type\\\",\\\"source.stylus support.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acb6bf8c\\\"}},{\\\"scope\\\":[\\\"support.type.property-name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\",\\\"foreground\\\":\\\"#39bae6\\\"}},{\\\"scope\\\":[\\\"constant.numeric.line-number.find-in-files - match\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acb6bf8c\\\"}},{\\\"scope\\\":[\\\"constant.numeric.line-number.match\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff8f40\\\"}},{\\\"scope\\\":[\\\"entity.name.filename.find-in-files\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#aad94c\\\"}},{\\\"scope\\\":[\\\"message.error\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d95757\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading entity.name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#aad94c\\\"}},{\\\"scope\\\":[\\\"markup.underline.link\\\",\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#39bae6\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.italic markup.bold\\\",\\\"markup.bold markup.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold italic\\\"}},{\\\"scope\\\":[\\\"markup.raw\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#bfbdb605\\\"}},{\\\"scope\\\":[\\\"markup.raw.inline\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#bfbdb60f\\\"}},{\\\"scope\\\":[\\\"meta.separator\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#bfbdb60f\\\",\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#acb6bf8c\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#95e6cb\\\"}},{\\\"scope\\\":[\\\"markup.list punctuation.definition.list.begin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb454\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7fd962\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#73b8ff\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f26d78\\\"}},{\\\"scope\\\":[\\\"markup.strike\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e6b673\\\"}},{\\\"scope\\\":[\\\"markup.table\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#bfbdb60f\\\",\\\"foreground\\\":\\\"#39bae6\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f29668\\\"}},{\\\"scope\\\":[\\\"text.html.markdown meta.dummy.line-break\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#acb6bf8c\\\",\\\"foreground\\\":\\\"#acb6bf8c\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.markdown\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#bfbdb6\\\",\\\"foreground\\\":\\\"#acb6bf8c\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: catppuccin-frappe */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBackground\\\":\\\"#00000000\\\",\\\"activityBar.activeBorder\\\":\\\"#00000000\\\",\\\"activityBar.activeFocusBorder\\\":\\\"#00000000\\\",\\\"activityBar.background\\\":\\\"#232634\\\",\\\"activityBar.border\\\":\\\"#00000000\\\",\\\"activityBar.dropBorder\\\":\\\"#ca9ee633\\\",\\\"activityBar.foreground\\\":\\\"#ca9ee6\\\",\\\"activityBar.inactiveForeground\\\":\\\"#737994\\\",\\\"activityBarBadge.background\\\":\\\"#ca9ee6\\\",\\\"activityBarBadge.foreground\\\":\\\"#232634\\\",\\\"activityBarTop.activeBorder\\\":\\\"#00000000\\\",\\\"activityBarTop.dropBorder\\\":\\\"#ca9ee633\\\",\\\"activityBarTop.foreground\\\":\\\"#ca9ee6\\\",\\\"activityBarTop.inactiveForeground\\\":\\\"#737994\\\",\\\"badge.background\\\":\\\"#51576d\\\",\\\"badge.foreground\\\":\\\"#c6d0f5\\\",\\\"banner.background\\\":\\\"#51576d\\\",\\\"banner.foreground\\\":\\\"#c6d0f5\\\",\\\"banner.iconForeground\\\":\\\"#c6d0f5\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#ca9ee6\\\",\\\"breadcrumb.background\\\":\\\"#303446\\\",\\\"breadcrumb.focusForeground\\\":\\\"#ca9ee6\\\",\\\"breadcrumb.foreground\\\":\\\"#c6d0f5cc\\\",\\\"breadcrumbPicker.background\\\":\\\"#292c3c\\\",\\\"button.background\\\":\\\"#ca9ee6\\\",\\\"button.border\\\":\\\"#00000000\\\",\\\"button.foreground\\\":\\\"#232634\\\",\\\"button.hoverBackground\\\":\\\"#d9baed\\\",\\\"button.secondaryBackground\\\":\\\"#626880\\\",\\\"button.secondaryBorder\\\":\\\"#ca9ee6\\\",\\\"button.secondaryForeground\\\":\\\"#c6d0f5\\\",\\\"button.secondaryHoverBackground\\\":\\\"#727993\\\",\\\"button.separator\\\":\\\"#00000000\\\",\\\"charts.blue\\\":\\\"#8caaee\\\",\\\"charts.foreground\\\":\\\"#c6d0f5\\\",\\\"charts.green\\\":\\\"#a6d189\\\",\\\"charts.lines\\\":\\\"#b5bfe2\\\",\\\"charts.orange\\\":\\\"#ef9f76\\\",\\\"charts.purple\\\":\\\"#ca9ee6\\\",\\\"charts.red\\\":\\\"#e78284\\\",\\\"charts.yellow\\\":\\\"#e5c890\\\",\\\"checkbox.background\\\":\\\"#51576d\\\",\\\"checkbox.border\\\":\\\"#00000000\\\",\\\"checkbox.foreground\\\":\\\"#ca9ee6\\\",\\\"commandCenter.activeBackground\\\":\\\"#62688033\\\",\\\"commandCenter.activeBorder\\\":\\\"#ca9ee6\\\",\\\"commandCenter.activeForeground\\\":\\\"#ca9ee6\\\",\\\"commandCenter.background\\\":\\\"#292c3c\\\",\\\"commandCenter.border\\\":\\\"#00000000\\\",\\\"commandCenter.foreground\\\":\\\"#b5bfe2\\\",\\\"commandCenter.inactiveBorder\\\":\\\"#00000000\\\",\\\"commandCenter.inactiveForeground\\\":\\\"#b5bfe2\\\",\\\"debugConsole.errorForeground\\\":\\\"#e78284\\\",\\\"debugConsole.infoForeground\\\":\\\"#8caaee\\\",\\\"debugConsole.sourceForeground\\\":\\\"#f2d5cf\\\",\\\"debugConsole.warningForeground\\\":\\\"#ef9f76\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#c6d0f5\\\",\\\"debugExceptionWidget.background\\\":\\\"#232634\\\",\\\"debugExceptionWidget.border\\\":\\\"#ca9ee6\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#626880\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#e7828499\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#e78284\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#626880\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#a57582\\\",\\\"debugIcon.continueForeground\\\":\\\"#a6d189\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#626880\\\",\\\"debugIcon.pauseForeground\\\":\\\"#8caaee\\\",\\\"debugIcon.restartForeground\\\":\\\"#81c8be\\\",\\\"debugIcon.startForeground\\\":\\\"#a6d189\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#626880\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#c6d0f5\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#c6d0f5\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#ca9ee6\\\",\\\"debugIcon.stopForeground\\\":\\\"#e78284\\\",\\\"debugTokenExpression.boolean\\\":\\\"#ca9ee6\\\",\\\"debugTokenExpression.error\\\":\\\"#e78284\\\",\\\"debugTokenExpression.number\\\":\\\"#ef9f76\\\",\\\"debugTokenExpression.string\\\":\\\"#a6d189\\\",\\\"debugToolBar.background\\\":\\\"#232634\\\",\\\"debugToolBar.border\\\":\\\"#00000000\\\",\\\"descriptionForeground\\\":\\\"#c6d0f5\\\",\\\"diffEditor.border\\\":\\\"#626880\\\",\\\"diffEditor.diagonalFill\\\":\\\"#62688099\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#a6d18926\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#a6d1891a\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#e7828426\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#e782841a\\\",\\\"diffEditorOverview.insertedForeground\\\":\\\"#a6d189cc\\\",\\\"diffEditorOverview.removedForeground\\\":\\\"#e78284cc\\\",\\\"disabledForeground\\\":\\\"#a5adce\\\",\\\"dropdown.background\\\":\\\"#292c3c\\\",\\\"dropdown.border\\\":\\\"#ca9ee6\\\",\\\"dropdown.foreground\\\":\\\"#c6d0f5\\\",\\\"dropdown.listBackground\\\":\\\"#626880\\\",\\\"editor.background\\\":\\\"#303446\\\",\\\"editor.findMatchBackground\\\":\\\"#674b59\\\",\\\"editor.findMatchBorder\\\":\\\"#e7828433\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#506373\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#99d1db33\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#506373\\\",\\\"editor.findRangeHighlightBorder\\\":\\\"#99d1db33\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#a6d18926\\\",\\\"editor.foldBackground\\\":\\\"#99d1db40\\\",\\\"editor.foreground\\\":\\\"#c6d0f5\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#99d1db40\\\",\\\"editor.lineHighlightBackground\\\":\\\"#c6d0f512\\\",\\\"editor.lineHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#99d1db40\\\",\\\"editor.rangeHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.selectionBackground\\\":\\\"#949cbb40\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#949cbb33\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#949cbb33\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#e5c89026\\\",\\\"editor.wordHighlightBackground\\\":\\\"#949cbb33\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#8caaee33\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#e78284\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#ef9f76\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#e5c890\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#a6d189\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#85c1dc\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#ca9ee6\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#ea999c\\\",\\\"editorBracketMatch.background\\\":\\\"#949cbb1a\\\",\\\"editorBracketMatch.border\\\":\\\"#949cbb\\\",\\\"editorCodeLens.foreground\\\":\\\"#838ba7\\\",\\\"editorCursor.background\\\":\\\"#303446\\\",\\\"editorCursor.foreground\\\":\\\"#f2d5cf\\\",\\\"editorError.background\\\":\\\"#00000000\\\",\\\"editorError.border\\\":\\\"#00000000\\\",\\\"editorError.foreground\\\":\\\"#e78284\\\",\\\"editorGroup.border\\\":\\\"#626880\\\",\\\"editorGroup.dropBackground\\\":\\\"#ca9ee633\\\",\\\"editorGroup.emptyBackground\\\":\\\"#303446\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#232634\\\",\\\"editorGutter.addedBackground\\\":\\\"#a6d189\\\",\\\"editorGutter.background\\\":\\\"#303446\\\",\\\"editorGutter.commentGlyphForeground\\\":\\\"#ca9ee6\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#414559\\\",\\\"editorGutter.deletedBackground\\\":\\\"#e78284\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#949cbb\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#e5c890\\\",\\\"editorHoverWidget.background\\\":\\\"#292c3c\\\",\\\"editorHoverWidget.border\\\":\\\"#626880\\\",\\\"editorHoverWidget.foreground\\\":\\\"#c6d0f5\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#626880\\\",\\\"editorIndentGuide.background\\\":\\\"#51576d\\\",\\\"editorInfo.background\\\":\\\"#00000000\\\",\\\"editorInfo.border\\\":\\\"#00000000\\\",\\\"editorInfo.foreground\\\":\\\"#8caaee\\\",\\\"editorInlayHint.background\\\":\\\"#292c3cbf\\\",\\\"editorInlayHint.foreground\\\":\\\"#626880\\\",\\\"editorInlayHint.parameterBackground\\\":\\\"#292c3cbf\\\",\\\"editorInlayHint.parameterForeground\\\":\\\"#a5adce\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#292c3cbf\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#b5bfe2\\\",\\\"editorLightBulb.foreground\\\":\\\"#e5c890\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#ca9ee6\\\",\\\"editorLineNumber.foreground\\\":\\\"#838ba7\\\",\\\"editorLink.activeForeground\\\":\\\"#ca9ee6\\\",\\\"editorMarkerNavigation.background\\\":\\\"#292c3c\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#e78284\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#8caaee\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#ef9f76\\\",\\\"editorOverviewRuler.background\\\":\\\"#292c3c\\\",\\\"editorOverviewRuler.border\\\":\\\"#c6d0f512\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#e5c890\\\",\\\"editorRuler.foreground\\\":\\\"#626880\\\",\\\"editorStickyScrollHover.background\\\":\\\"#414559\\\",\\\"editorSuggestWidget.background\\\":\\\"#292c3c\\\",\\\"editorSuggestWidget.border\\\":\\\"#626880\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#c6d0f5\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#ca9ee6\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#414559\\\",\\\"editorWarning.background\\\":\\\"#00000000\\\",\\\"editorWarning.border\\\":\\\"#00000000\\\",\\\"editorWarning.foreground\\\":\\\"#ef9f76\\\",\\\"editorWhitespace.foreground\\\":\\\"#949cbb66\\\",\\\"editorWidget.background\\\":\\\"#292c3c\\\",\\\"editorWidget.foreground\\\":\\\"#c6d0f5\\\",\\\"editorWidget.resizeBorder\\\":\\\"#626880\\\",\\\"errorForeground\\\":\\\"#e78284\\\",\\\"errorLens.errorBackground\\\":\\\"#e7828426\\\",\\\"errorLens.errorBackgroundLight\\\":\\\"#e7828426\\\",\\\"errorLens.errorForeground\\\":\\\"#e78284\\\",\\\"errorLens.errorForegroundLight\\\":\\\"#e78284\\\",\\\"errorLens.errorMessageBackground\\\":\\\"#e7828426\\\",\\\"errorLens.hintBackground\\\":\\\"#a6d18926\\\",\\\"errorLens.hintBackgroundLight\\\":\\\"#a6d18926\\\",\\\"errorLens.hintForeground\\\":\\\"#a6d189\\\",\\\"errorLens.hintForegroundLight\\\":\\\"#a6d189\\\",\\\"errorLens.hintMessageBackground\\\":\\\"#a6d18926\\\",\\\"errorLens.infoBackground\\\":\\\"#8caaee26\\\",\\\"errorLens.infoBackgroundLight\\\":\\\"#8caaee26\\\",\\\"errorLens.infoForeground\\\":\\\"#8caaee\\\",\\\"errorLens.infoForegroundLight\\\":\\\"#8caaee\\\",\\\"errorLens.infoMessageBackground\\\":\\\"#8caaee26\\\",\\\"errorLens.statusBarErrorForeground\\\":\\\"#e78284\\\",\\\"errorLens.statusBarHintForeground\\\":\\\"#a6d189\\\",\\\"errorLens.statusBarIconErrorForeground\\\":\\\"#e78284\\\",\\\"errorLens.statusBarIconWarningForeground\\\":\\\"#ef9f76\\\",\\\"errorLens.statusBarInfoForeground\\\":\\\"#8caaee\\\",\\\"errorLens.statusBarWarningForeground\\\":\\\"#ef9f76\\\",\\\"errorLens.warningBackground\\\":\\\"#ef9f7626\\\",\\\"errorLens.warningBackgroundLight\\\":\\\"#ef9f7626\\\",\\\"errorLens.warningForeground\\\":\\\"#ef9f76\\\",\\\"errorLens.warningForegroundLight\\\":\\\"#ef9f76\\\",\\\"errorLens.warningMessageBackground\\\":\\\"#ef9f7626\\\",\\\"extensionBadge.remoteBackground\\\":\\\"#8caaee\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#232634\\\",\\\"extensionButton.prominentBackground\\\":\\\"#ca9ee6\\\",\\\"extensionButton.prominentForeground\\\":\\\"#232634\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#d9baed\\\",\\\"extensionButton.separator\\\":\\\"#303446\\\",\\\"extensionIcon.preReleaseForeground\\\":\\\"#626880\\\",\\\"extensionIcon.sponsorForeground\\\":\\\"#f4b8e4\\\",\\\"extensionIcon.starForeground\\\":\\\"#e5c890\\\",\\\"extensionIcon.verifiedForeground\\\":\\\"#a6d189\\\",\\\"focusBorder\\\":\\\"#ca9ee6\\\",\\\"foreground\\\":\\\"#c6d0f5\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#a6d189\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#ca9ee6\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#e78284\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#737994\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#e5c890\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#e78284\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#e5c890\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#8caaee\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#a6d189\\\",\\\"gitlens.closedAutolinkedIssueIconColor\\\":\\\"#ca9ee6\\\",\\\"gitlens.closedPullRequestIconColor\\\":\\\"#e78284\\\",\\\"gitlens.decorations.branchAheadForegroundColor\\\":\\\"#a6d189\\\",\\\"gitlens.decorations.branchBehindForegroundColor\\\":\\\"#ef9f76\\\",\\\"gitlens.decorations.branchDivergedForegroundColor\\\":\\\"#e5c890\\\",\\\"gitlens.decorations.branchMissingUpstreamForegroundColor\\\":\\\"#ef9f76\\\",\\\"gitlens.decorations.branchUnpublishedForegroundColor\\\":\\\"#a6d189\\\",\\\"gitlens.decorations.statusMergingOrRebasingConflictForegroundColor\\\":\\\"#ea999c\\\",\\\"gitlens.decorations.statusMergingOrRebasingForegroundColor\\\":\\\"#e5c890\\\",\\\"gitlens.decorations.workspaceCurrentForegroundColor\\\":\\\"#ca9ee6\\\",\\\"gitlens.decorations.workspaceRepoMissingForegroundColor\\\":\\\"#a5adce\\\",\\\"gitlens.decorations.workspaceRepoOpenForegroundColor\\\":\\\"#ca9ee6\\\",\\\"gitlens.decorations.worktreeHasUncommittedChangesForegroundColor\\\":\\\"#ef9f76\\\",\\\"gitlens.decorations.worktreeMissingForegroundColor\\\":\\\"#ea999c\\\",\\\"gitlens.graphChangesColumnAddedColor\\\":\\\"#a6d189\\\",\\\"gitlens.graphChangesColumnDeletedColor\\\":\\\"#e78284\\\",\\\"gitlens.graphLane10Color\\\":\\\"#f4b8e4\\\",\\\"gitlens.graphLane1Color\\\":\\\"#ca9ee6\\\",\\\"gitlens.graphLane2Color\\\":\\\"#e5c890\\\",\\\"gitlens.graphLane3Color\\\":\\\"#8caaee\\\",\\\"gitlens.graphLane4Color\\\":\\\"#eebebe\\\",\\\"gitlens.graphLane5Color\\\":\\\"#a6d189\\\",\\\"gitlens.graphLane6Color\\\":\\\"#babbf1\\\",\\\"gitlens.graphLane7Color\\\":\\\"#f2d5cf\\\",\\\"gitlens.graphLane8Color\\\":\\\"#e78284\\\",\\\"gitlens.graphLane9Color\\\":\\\"#81c8be\\\",\\\"gitlens.graphMinimapMarkerHeadColor\\\":\\\"#a6d189\\\",\\\"gitlens.graphMinimapMarkerHighlightsColor\\\":\\\"#e5c890\\\",\\\"gitlens.graphMinimapMarkerLocalBranchesColor\\\":\\\"#8caaee\\\",\\\"gitlens.graphMinimapMarkerRemoteBranchesColor\\\":\\\"#769aeb\\\",\\\"gitlens.graphMinimapMarkerStashesColor\\\":\\\"#ca9ee6\\\",\\\"gitlens.graphMinimapMarkerTagsColor\\\":\\\"#eebebe\\\",\\\"gitlens.graphMinimapMarkerUpstreamColor\\\":\\\"#98ca77\\\",\\\"gitlens.graphScrollMarkerHeadColor\\\":\\\"#a6d189\\\",\\\"gitlens.graphScrollMarkerHighlightsColor\\\":\\\"#e5c890\\\",\\\"gitlens.graphScrollMarkerLocalBranchesColor\\\":\\\"#8caaee\\\",\\\"gitlens.graphScrollMarkerRemoteBranchesColor\\\":\\\"#769aeb\\\",\\\"gitlens.graphScrollMarkerStashesColor\\\":\\\"#ca9ee6\\\",\\\"gitlens.graphScrollMarkerTagsColor\\\":\\\"#eebebe\\\",\\\"gitlens.graphScrollMarkerUpstreamColor\\\":\\\"#98ca77\\\",\\\"gitlens.gutterBackgroundColor\\\":\\\"#4145594d\\\",\\\"gitlens.gutterForegroundColor\\\":\\\"#c6d0f5\\\",\\\"gitlens.gutterUncommittedForegroundColor\\\":\\\"#ca9ee6\\\",\\\"gitlens.lineHighlightBackgroundColor\\\":\\\"#ca9ee626\\\",\\\"gitlens.lineHighlightOverviewRulerColor\\\":\\\"#ca9ee6cc\\\",\\\"gitlens.mergedPullRequestIconColor\\\":\\\"#ca9ee6\\\",\\\"gitlens.openAutolinkedIssueIconColor\\\":\\\"#a6d189\\\",\\\"gitlens.openPullRequestIconColor\\\":\\\"#a6d189\\\",\\\"gitlens.trailingLineBackgroundColor\\\":\\\"#00000000\\\",\\\"gitlens.trailingLineForegroundColor\\\":\\\"#c6d0f54d\\\",\\\"gitlens.unpublishedChangesIconColor\\\":\\\"#a6d189\\\",\\\"gitlens.unpublishedCommitIconColor\\\":\\\"#a6d189\\\",\\\"gitlens.unpulledChangesIconColor\\\":\\\"#ef9f76\\\",\\\"icon.foreground\\\":\\\"#ca9ee6\\\",\\\"input.background\\\":\\\"#414559\\\",\\\"input.border\\\":\\\"#00000000\\\",\\\"input.foreground\\\":\\\"#c6d0f5\\\",\\\"input.placeholderForeground\\\":\\\"#c6d0f573\\\",\\\"inputOption.activeBackground\\\":\\\"#626880\\\",\\\"inputOption.activeBorder\\\":\\\"#ca9ee6\\\",\\\"inputOption.activeForeground\\\":\\\"#c6d0f5\\\",\\\"inputValidation.errorBackground\\\":\\\"#e78284\\\",\\\"inputValidation.errorBorder\\\":\\\"#23263433\\\",\\\"inputValidation.errorForeground\\\":\\\"#232634\\\",\\\"inputValidation.infoBackground\\\":\\\"#8caaee\\\",\\\"inputValidation.infoBorder\\\":\\\"#23263433\\\",\\\"inputValidation.infoForeground\\\":\\\"#232634\\\",\\\"inputValidation.warningBackground\\\":\\\"#ef9f76\\\",\\\"inputValidation.warningBorder\\\":\\\"#23263433\\\",\\\"inputValidation.warningForeground\\\":\\\"#232634\\\",\\\"issues.closed\\\":\\\"#ca9ee6\\\",\\\"issues.newIssueDecoration\\\":\\\"#f2d5cf\\\",\\\"issues.open\\\":\\\"#a6d189\\\",\\\"list.activeSelectionBackground\\\":\\\"#414559\\\",\\\"list.activeSelectionForeground\\\":\\\"#c6d0f5\\\",\\\"list.dropBackground\\\":\\\"#ca9ee633\\\",\\\"list.focusAndSelectionBackground\\\":\\\"#51576d\\\",\\\"list.focusBackground\\\":\\\"#414559\\\",\\\"list.focusForeground\\\":\\\"#c6d0f5\\\",\\\"list.focusOutline\\\":\\\"#00000000\\\",\\\"list.highlightForeground\\\":\\\"#ca9ee6\\\",\\\"list.hoverBackground\\\":\\\"#41455980\\\",\\\"list.hoverForeground\\\":\\\"#c6d0f5\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#414559\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#c6d0f5\\\",\\\"list.warningForeground\\\":\\\"#ef9f76\\\",\\\"listFilterWidget.background\\\":\\\"#51576d\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#e78284\\\",\\\"listFilterWidget.outline\\\":\\\"#00000000\\\",\\\"menu.background\\\":\\\"#303446\\\",\\\"menu.border\\\":\\\"#30344680\\\",\\\"menu.foreground\\\":\\\"#c6d0f5\\\",\\\"menu.selectionBackground\\\":\\\"#626880\\\",\\\"menu.selectionBorder\\\":\\\"#00000000\\\",\\\"menu.selectionForeground\\\":\\\"#c6d0f5\\\",\\\"menu.separatorBackground\\\":\\\"#626880\\\",\\\"menubar.selectionBackground\\\":\\\"#51576d\\\",\\\"menubar.selectionForeground\\\":\\\"#c6d0f5\\\",\\\"merge.commonContentBackground\\\":\\\"#51576d\\\",\\\"merge.commonHeaderBackground\\\":\\\"#626880\\\",\\\"merge.currentContentBackground\\\":\\\"#a6d18933\\\",\\\"merge.currentHeaderBackground\\\":\\\"#a6d18966\\\",\\\"merge.incomingContentBackground\\\":\\\"#8caaee33\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#8caaee66\\\",\\\"minimap.background\\\":\\\"#292c3c80\\\",\\\"minimap.errorHighlight\\\":\\\"#e78284bf\\\",\\\"minimap.findMatchHighlight\\\":\\\"#99d1db4d\\\",\\\"minimap.selectionHighlight\\\":\\\"#626880bf\\\",\\\"minimap.selectionOccurrenceHighlight\\\":\\\"#626880bf\\\",\\\"minimap.warningHighlight\\\":\\\"#ef9f76bf\\\",\\\"minimapGutter.addedBackground\\\":\\\"#a6d189bf\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#e78284bf\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#e5c890bf\\\",\\\"minimapSlider.activeBackground\\\":\\\"#ca9ee699\\\",\\\"minimapSlider.background\\\":\\\"#ca9ee633\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#ca9ee666\\\",\\\"notificationCenter.border\\\":\\\"#ca9ee6\\\",\\\"notificationCenterHeader.background\\\":\\\"#292c3c\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#c6d0f5\\\",\\\"notificationLink.foreground\\\":\\\"#8caaee\\\",\\\"notificationToast.border\\\":\\\"#ca9ee6\\\",\\\"notifications.background\\\":\\\"#292c3c\\\",\\\"notifications.border\\\":\\\"#ca9ee6\\\",\\\"notifications.foreground\\\":\\\"#c6d0f5\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#e78284\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#8caaee\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#ef9f76\\\",\\\"panel.background\\\":\\\"#303446\\\",\\\"panel.border\\\":\\\"#626880\\\",\\\"panelSection.border\\\":\\\"#626880\\\",\\\"panelSection.dropBackground\\\":\\\"#ca9ee633\\\",\\\"panelTitle.activeBorder\\\":\\\"#ca9ee6\\\",\\\"panelTitle.activeForeground\\\":\\\"#c6d0f5\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#a5adce\\\",\\\"peekView.border\\\":\\\"#ca9ee6\\\",\\\"peekViewEditor.background\\\":\\\"#292c3c\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#99d1db4d\\\",\\\"peekViewEditor.matchHighlightBorder\\\":\\\"#00000000\\\",\\\"peekViewEditorGutter.background\\\":\\\"#292c3c\\\",\\\"peekViewResult.background\\\":\\\"#292c3c\\\",\\\"peekViewResult.fileForeground\\\":\\\"#c6d0f5\\\",\\\"peekViewResult.lineForeground\\\":\\\"#c6d0f5\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#99d1db4d\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#414559\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#c6d0f5\\\",\\\"peekViewTitle.background\\\":\\\"#303446\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#b5bfe2b3\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#c6d0f5\\\",\\\"pickerGroup.border\\\":\\\"#ca9ee6\\\",\\\"pickerGroup.foreground\\\":\\\"#ca9ee6\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#e78284\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#8caaee\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#ef9f76\\\",\\\"progressBar.background\\\":\\\"#ca9ee6\\\",\\\"pullRequests.closed\\\":\\\"#e78284\\\",\\\"pullRequests.draft\\\":\\\"#949cbb\\\",\\\"pullRequests.merged\\\":\\\"#ca9ee6\\\",\\\"pullRequests.notification\\\":\\\"#c6d0f5\\\",\\\"pullRequests.open\\\":\\\"#a6d189\\\",\\\"sash.hoverBorder\\\":\\\"#ca9ee6\\\",\\\"scrollbar.shadow\\\":\\\"#232634\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#41455966\\\",\\\"scrollbarSlider.background\\\":\\\"#62688080\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#737994\\\",\\\"selection.background\\\":\\\"#ca9ee666\\\",\\\"settings.dropdownBackground\\\":\\\"#51576d\\\",\\\"settings.dropdownListBorder\\\":\\\"#00000000\\\",\\\"settings.focusedRowBackground\\\":\\\"#62688033\\\",\\\"settings.headerForeground\\\":\\\"#c6d0f5\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#ca9ee6\\\",\\\"settings.numberInputBackground\\\":\\\"#51576d\\\",\\\"settings.numberInputBorder\\\":\\\"#00000000\\\",\\\"settings.textInputBackground\\\":\\\"#51576d\\\",\\\"settings.textInputBorder\\\":\\\"#00000000\\\",\\\"sideBar.background\\\":\\\"#292c3c\\\",\\\"sideBar.border\\\":\\\"#00000000\\\",\\\"sideBar.dropBackground\\\":\\\"#ca9ee633\\\",\\\"sideBar.foreground\\\":\\\"#c6d0f5\\\",\\\"sideBarSectionHeader.background\\\":\\\"#292c3c\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#c6d0f5\\\",\\\"sideBarTitle.foreground\\\":\\\"#ca9ee6\\\",\\\"statusBar.background\\\":\\\"#232634\\\",\\\"statusBar.border\\\":\\\"#00000000\\\",\\\"statusBar.debuggingBackground\\\":\\\"#ef9f76\\\",\\\"statusBar.debuggingBorder\\\":\\\"#00000000\\\",\\\"statusBar.debuggingForeground\\\":\\\"#232634\\\",\\\"statusBar.foreground\\\":\\\"#c6d0f5\\\",\\\"statusBar.noFolderBackground\\\":\\\"#232634\\\",\\\"statusBar.noFolderBorder\\\":\\\"#00000000\\\",\\\"statusBar.noFolderForeground\\\":\\\"#c6d0f5\\\",\\\"statusBarItem.activeBackground\\\":\\\"#62688066\\\",\\\"statusBarItem.errorBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.errorForeground\\\":\\\"#e78284\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#62688033\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.prominentForeground\\\":\\\"#ca9ee6\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#62688033\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#8caaee\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#232634\\\",\\\"statusBarItem.warningBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.warningForeground\\\":\\\"#ef9f76\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#ef9f76\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#ca9ee6\\\",\\\"symbolIcon.classForeground\\\":\\\"#e5c890\\\",\\\"symbolIcon.colorForeground\\\":\\\"#f4b8e4\\\",\\\"symbolIcon.constantForeground\\\":\\\"#ef9f76\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#babbf1\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#e5c890\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#e5c890\\\",\\\"symbolIcon.eventForeground\\\":\\\"#f4b8e4\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#c6d0f5\\\",\\\"symbolIcon.fileForeground\\\":\\\"#ca9ee6\\\",\\\"symbolIcon.folderForeground\\\":\\\"#ca9ee6\\\",\\\"symbolIcon.functionForeground\\\":\\\"#8caaee\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#e5c890\\\",\\\"symbolIcon.keyForeground\\\":\\\"#81c8be\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#ca9ee6\\\",\\\"symbolIcon.methodForeground\\\":\\\"#8caaee\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#c6d0f5\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#e5c890\\\",\\\"symbolIcon.nullForeground\\\":\\\"#ea999c\\\",\\\"symbolIcon.numberForeground\\\":\\\"#ef9f76\\\",\\\"symbolIcon.objectForeground\\\":\\\"#e5c890\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#81c8be\\\",\\\"symbolIcon.packageForeground\\\":\\\"#eebebe\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#ea999c\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#e5c890\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#eebebe\\\",\\\"symbolIcon.stringForeground\\\":\\\"#a6d189\\\",\\\"symbolIcon.structForeground\\\":\\\"#81c8be\\\",\\\"symbolIcon.textForeground\\\":\\\"#c6d0f5\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#ea999c\\\",\\\"symbolIcon.unitForeground\\\":\\\"#c6d0f5\\\",\\\"symbolIcon.variableForeground\\\":\\\"#c6d0f5\\\",\\\"tab.activeBackground\\\":\\\"#303446\\\",\\\"tab.activeBorder\\\":\\\"#00000000\\\",\\\"tab.activeBorderTop\\\":\\\"#ca9ee6\\\",\\\"tab.activeForeground\\\":\\\"#ca9ee6\\\",\\\"tab.activeModifiedBorder\\\":\\\"#e5c890\\\",\\\"tab.border\\\":\\\"#292c3c\\\",\\\"tab.hoverBackground\\\":\\\"#3a3f55\\\",\\\"tab.hoverBorder\\\":\\\"#00000000\\\",\\\"tab.hoverForeground\\\":\\\"#ca9ee6\\\",\\\"tab.inactiveBackground\\\":\\\"#292c3c\\\",\\\"tab.inactiveForeground\\\":\\\"#737994\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#e5c8904d\\\",\\\"tab.lastPinnedBorder\\\":\\\"#ca9ee6\\\",\\\"tab.unfocusedActiveBackground\\\":\\\"#292c3c\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#00000000\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#ca9ee64d\\\",\\\"tab.unfocusedInactiveBackground\\\":\\\"#1f212d\\\",\\\"table.headerBackground\\\":\\\"#414559\\\",\\\"table.headerForeground\\\":\\\"#c6d0f5\\\",\\\"terminal.ansiBlack\\\":\\\"#51576d\\\",\\\"terminal.ansiBlue\\\":\\\"#8caaee\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#626880\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#7b9ef0\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#5abfb5\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#8ec772\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#f2a4db\\\",\\\"terminal.ansiBrightRed\\\":\\\"#e67172\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#b5bfe2\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#d9ba73\\\",\\\"terminal.ansiCyan\\\":\\\"#81c8be\\\",\\\"terminal.ansiGreen\\\":\\\"#a6d189\\\",\\\"terminal.ansiMagenta\\\":\\\"#f4b8e4\\\",\\\"terminal.ansiRed\\\":\\\"#e78284\\\",\\\"terminal.ansiWhite\\\":\\\"#a5adce\\\",\\\"terminal.ansiYellow\\\":\\\"#e5c890\\\",\\\"terminal.border\\\":\\\"#626880\\\",\\\"terminal.dropBackground\\\":\\\"#ca9ee633\\\",\\\"terminal.foreground\\\":\\\"#c6d0f5\\\",\\\"terminal.inactiveSelectionBackground\\\":\\\"#62688080\\\",\\\"terminal.selectionBackground\\\":\\\"#626880\\\",\\\"terminal.tab.activeBorder\\\":\\\"#ca9ee6\\\",\\\"terminalCommandDecoration.defaultBackground\\\":\\\"#626880\\\",\\\"terminalCommandDecoration.errorBackground\\\":\\\"#e78284\\\",\\\"terminalCommandDecoration.successBackground\\\":\\\"#a6d189\\\",\\\"terminalCursor.background\\\":\\\"#303446\\\",\\\"terminalCursor.foreground\\\":\\\"#f2d5cf\\\",\\\"textBlockQuote.background\\\":\\\"#292c3c\\\",\\\"textBlockQuote.border\\\":\\\"#232634\\\",\\\"textCodeBlock.background\\\":\\\"#303446\\\",\\\"textLink.activeForeground\\\":\\\"#99d1db\\\",\\\"textLink.foreground\\\":\\\"#8caaee\\\",\\\"textPreformat.foreground\\\":\\\"#c6d0f5\\\",\\\"textSeparator.foreground\\\":\\\"#ca9ee6\\\",\\\"titleBar.activeBackground\\\":\\\"#232634\\\",\\\"titleBar.activeForeground\\\":\\\"#c6d0f5\\\",\\\"titleBar.border\\\":\\\"#00000000\\\",\\\"titleBar.inactiveBackground\\\":\\\"#232634\\\",\\\"titleBar.inactiveForeground\\\":\\\"#c6d0f580\\\",\\\"tree.inactiveIndentGuidesStroke\\\":\\\"#51576d\\\",\\\"tree.indentGuidesStroke\\\":\\\"#949cbb\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#3034464d\\\",\\\"welcomePage.progress.background\\\":\\\"#232634\\\",\\\"welcomePage.progress.foreground\\\":\\\"#ca9ee6\\\",\\\"welcomePage.tileBackground\\\":\\\"#292c3c\\\",\\\"widget.shadow\\\":\\\"#292c3c80\\\",\\\"window.activeBorder\\\":\\\"#00000000\\\",\\\"window.inactiveBorder\\\":\\\"#00000000\\\"},\\\"displayName\\\":\\\"Catppuccin Frapp\u00E9\\\",\\\"name\\\":\\\"catppuccin-frappe\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"boolean\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"},\\\"builtinAttribute.attribute.library:rust\\\":{\\\"foreground\\\":\\\"#8caaee\\\"},\\\"class.builtin:python\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"},\\\"class:python\\\":{\\\"foreground\\\":\\\"#e5c890\\\"},\\\"constant.builtin.readonly:nix\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"},\\\"enumMember\\\":{\\\"foreground\\\":\\\"#81c8be\\\"},\\\"function.decorator:python\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"},\\\"generic.attribute:rust\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"},\\\"heading\\\":{\\\"foreground\\\":\\\"#e78284\\\"},\\\"number\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"},\\\"pol\\\":{\\\"foreground\\\":\\\"#eebebe\\\"},\\\"property.readonly:javascript\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"},\\\"property.readonly:javascriptreact\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"},\\\"property.readonly:typescript\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"},\\\"property.readonly:typescriptreact\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"},\\\"selfKeyword\\\":{\\\"foreground\\\":\\\"#e78284\\\"},\\\"text.emph\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e78284\\\"},\\\"text.math\\\":{\\\"foreground\\\":\\\"#eebebe\\\"},\\\"text.strong\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#e78284\\\"},\\\"tomlArrayKey\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8caaee\\\"},\\\"tomlTableKey\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8caaee\\\"},\\\"type.defaultLibrary:go\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"},\\\"variable.defaultLibrary\\\":{\\\"foreground\\\":\\\"#ea999c\\\"},\\\"variable.readonly.defaultLibrary:go\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"},\\\"variable.readonly:javascript\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"},\\\"variable.readonly:javascriptreact\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"},\\\"variable.readonly:scala\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"},\\\"variable.readonly:typescript\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"},\\\"variable.readonly:typescriptreact\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"},\\\"variable.typeHint:python\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"text\\\",\\\"source\\\",\\\"variable.other.readwrite\\\",\\\"punctuation.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":\\\"punctuation\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#949cbb\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#737994\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6d189\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"variable.other.constant\\\",\\\"entity.name.constant\\\",\\\"constant.language.boolean\\\",\\\"constant.language.false\\\",\\\"constant.language.true\\\",\\\"keyword.other.unit.user-defined\\\",\\\"keyword.other.unit.suffix.floating-point\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"keyword.operator.word\\\",\\\"keyword.operator.new\\\",\\\"variable.language.super\\\",\\\"support.type.primitive\\\",\\\"storage.type\\\",\\\"storage.modifier\\\",\\\"punctuation.definition.keyword\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":\\\"entity.name.tag.documentation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\",\\\"punctuation.accessor\\\",\\\"punctuation.definition.generic\\\",\\\"meta.function.closure punctuation.section.parameters\\\",\\\"punctuation.definition.tag\\\",\\\"punctuation.separator.key-value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.function-call.method\\\",\\\"support.function\\\",\\\"support.function.misc\\\",\\\"variable.function\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":[\\\"entity.name.class\\\",\\\"entity.other.inherited-class\\\",\\\"support.class\\\",\\\"meta.function-call.constructor\\\",\\\"entity.name.struct\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"entity.name.enum\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":[\\\"meta.enum variable.other.readwrite\\\",\\\"variable.other.enummember\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"meta.property.object\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":[\\\"meta.type\\\",\\\"meta.type-alias\\\",\\\"support.type\\\",\\\"entity.name.type\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":[\\\"meta.annotation variable.function\\\",\\\"meta.annotation variable.annotation.function\\\",\\\"meta.annotation punctuation.definition.annotation\\\",\\\"meta.decorator\\\",\\\"punctuation.decorator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\",\\\"meta.function.parameters\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ea999c\\\"}},{\\\"scope\\\":[\\\"constant.language\\\",\\\"support.function.builtin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e78284\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.documentation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e78284\\\"}},{\\\"scope\\\":[\\\"keyword.control.directive\\\",\\\"punctuation.definition.directive\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"punctuation.definition.typeparameters\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#99d1db\\\"}},{\\\"scope\\\":\\\"entity.name.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":[\\\"variable.language.this\\\",\\\"variable.language.this punctuation.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e78284\\\"}},{\\\"scope\\\":\\\"variable.object.property\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":[\\\"string.template variable\\\",\\\"string variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":\\\"keyword.operator.new\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"storage.modifier.specifier.extern.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":[\\\"entity.name.scope-resolution.template.call.cpp\\\",\\\"entity.name.scope-resolution.parameter.cpp\\\",\\\"entity.name.scope-resolution.cpp\\\",\\\"entity.name.scope-resolution.function.definition.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"storage.type.class.doxygen\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"storage.modifier.reference.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"meta.interpolation.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":\\\"comment.block.documentation.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":[\\\"source.css entity.other.attribute-name.class.css\\\",\\\"entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"punctuation.separator.operator.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"source.css entity.other.attribute-name.pseudo-class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"source.css constant.other.unicode-range\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":\\\"source.css variable.parameter.url\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#a6d189\\\"}},{\\\"scope\\\":[\\\"support.type.vendored.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#99d1db\\\"}},{\\\"scope\\\":[\\\"source.css meta.property-value variable\\\",\\\"source.css meta.property-value variable.other.less\\\",\\\"source.css meta.property-value variable.other.less punctuation.definition.variable.less\\\",\\\"meta.definition.variable.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ea999c\\\"}},{\\\"scope\\\":[\\\"source.css meta.property-list variable\\\",\\\"meta.property-list variable.other.less\\\",\\\"meta.property-list variable.other.less punctuation.definition.variable.less\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":\\\"keyword.other.unit.percentage.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":\\\"source.css meta.attribute-selector\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a6d189\\\"}},{\\\"scope\\\":[\\\"keyword.other.definition.ini\\\",\\\"punctuation.support.type.property-name.json\\\",\\\"support.type.property-name.json\\\",\\\"punctuation.support.type.property-name.toml\\\",\\\"support.type.property-name.toml\\\",\\\"entity.name.tag.yaml\\\",\\\"punctuation.support.type.property-name.yaml\\\",\\\"support.type.property-name.yaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":[\\\"constant.language.json\\\",\\\"constant.language.yaml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":[\\\"entity.name.type.anchor.yaml\\\",\\\"variable.other.alias.yaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":[\\\"support.type.property-name.table\\\",\\\"entity.name.section.group-title.ini\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"constant.other.time.datetime.offset.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.anchor.yaml\\\",\\\"punctuation.definition.alias.yaml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":\\\"entity.other.document.begin.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":\\\"markup.changed.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":[\\\"meta.diff.header.from-file\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.from-file.diff\\\",\\\"punctuation.definition.to-file.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":\\\"markup.inserted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a6d189\\\"}},{\\\"scope\\\":\\\"markup.deleted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e78284\\\"}},{\\\"scope\\\":[\\\"variable.other.env\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":[\\\"string.quoted variable.other.env\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":\\\"support.function.builtin.gdscript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":\\\"constant.language.gdscript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":\\\"comment meta.annotation.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea999c\\\"}},{\\\"scope\\\":\\\"comment meta.annotation.parameters.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":\\\"constant.language.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":\\\"variable.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":\\\"string.unquoted.alias.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eebebe\\\"}},{\\\"scope\\\":\\\"constant.character.enum.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eebebe\\\"}},{\\\"scope\\\":[\\\"keyword.other.doctype\\\",\\\"meta.tag.sgml.doctype punctuation.definition.tag\\\",\\\"meta.tag.metadata.doctype entity.name.tag\\\",\\\"meta.tag.metadata.doctype punctuation.definition.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":[\\\"text.html constant.character.entity\\\",\\\"text.html constant.character.entity punctuation\\\",\\\"constant.character.entity.xml\\\",\\\"constant.character.entity.xml punctuation\\\",\\\"constant.character.entity.js.jsx\\\",\\\"constant.charactger.entity.js.jsx punctuation\\\",\\\"constant.character.entity.tsx\\\",\\\"constant.character.entity.tsx punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e78284\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":[\\\"support.class.component\\\",\\\"support.class.component.jsx\\\",\\\"support.class.component.tsx\\\",\\\"support.class.component.vue\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.annotation\\\",\\\"storage.type.annotation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":\\\"constant.other.enum.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"storage.modifier.import.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":\\\"comment.block.javadoc.java keyword.other.documentation.javadoc.java\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":\\\"meta.export variable.other.readwrite.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea999c\\\"}},{\\\"scope\\\":[\\\"variable.other.constant.js\\\",\\\"variable.other.constant.ts\\\",\\\"variable.other.property.js\\\",\\\"variable.other.property.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":[\\\"variable.other.jsdoc\\\",\\\"comment.block.documentation variable.other\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ea999c\\\"}},{\\\"scope\\\":\\\"storage.type.class.jsdoc\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":\\\"support.type.object.console.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":[\\\"support.constant.node\\\",\\\"support.type.object.module.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":\\\"storage.modifier.implements\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":[\\\"constant.language.null.js\\\",\\\"constant.language.null.ts\\\",\\\"constant.language.undefined.js\\\",\\\"constant.language.undefined.ts\\\",\\\"support.type.builtin.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":\\\"variable.parameter.generic\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":[\\\"keyword.declaration.function.arrow.js\\\",\\\"storage.type.function.arrow.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"punctuation.decorator.ts\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":[\\\"keyword.operator.expression.in.js\\\",\\\"keyword.operator.expression.in.ts\\\",\\\"keyword.operator.expression.infer.ts\\\",\\\"keyword.operator.expression.instanceof.js\\\",\\\"keyword.operator.expression.instanceof.ts\\\",\\\"keyword.operator.expression.is\\\",\\\"keyword.operator.expression.keyof.ts\\\",\\\"keyword.operator.expression.of.js\\\",\\\"keyword.operator.expression.of.ts\\\",\\\"keyword.operator.expression.typeof.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":\\\"support.function.macro.julia\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"constant.language.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":\\\"constant.other.symbol.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea999c\\\"}},{\\\"scope\\\":\\\"text.tex keyword.control.preamble\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"text.tex support.function.be\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#99d1db\\\"}},{\\\"scope\\\":\\\"constant.other.general.math.tex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eebebe\\\"}},{\\\"scope\\\":\\\"variable.language.liquid\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":\\\"comment.line.double-dash.documentation.lua storage.type.annotation.lua\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":[\\\"comment.line.double-dash.documentation.lua entity.name.variable.lua\\\",\\\"comment.line.double-dash.documentation.lua variable.lua\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":[\\\"heading.1.markdown punctuation.definition.heading.markdown\\\",\\\"heading.1.markdown\\\",\\\"heading.1.quarto punctuation.definition.heading.quarto\\\",\\\"heading.1.quarto\\\",\\\"markup.heading.atx.1.mdx\\\",\\\"markup.heading.atx.1.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.setext.1.markdown\\\",\\\"markup.heading.heading-0.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e78284\\\"}},{\\\"scope\\\":[\\\"heading.2.markdown punctuation.definition.heading.markdown\\\",\\\"heading.2.markdown\\\",\\\"heading.2.quarto punctuation.definition.heading.quarto\\\",\\\"heading.2.quarto\\\",\\\"markup.heading.atx.2.mdx\\\",\\\"markup.heading.atx.2.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.setext.2.markdown\\\",\\\"markup.heading.heading-1.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":[\\\"heading.3.markdown punctuation.definition.heading.markdown\\\",\\\"heading.3.markdown\\\",\\\"heading.3.quarto punctuation.definition.heading.quarto\\\",\\\"heading.3.quarto\\\",\\\"markup.heading.atx.3.mdx\\\",\\\"markup.heading.atx.3.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-2.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":[\\\"heading.4.markdown punctuation.definition.heading.markdown\\\",\\\"heading.4.markdown\\\",\\\"heading.4.quarto punctuation.definition.heading.quarto\\\",\\\"heading.4.quarto\\\",\\\"markup.heading.atx.4.mdx\\\",\\\"markup.heading.atx.4.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-3.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6d189\\\"}},{\\\"scope\\\":[\\\"heading.5.markdown punctuation.definition.heading.markdown\\\",\\\"heading.5.markdown\\\",\\\"heading.5.quarto punctuation.definition.heading.quarto\\\",\\\"heading.5.quarto\\\",\\\"markup.heading.atx.5.mdx\\\",\\\"markup.heading.atx.5.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-4.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":[\\\"heading.6.markdown punctuation.definition.heading.markdown\\\",\\\"heading.6.markdown\\\",\\\"heading.6.quarto punctuation.definition.heading.quarto\\\",\\\"heading.6.quarto\\\",\\\"markup.heading.atx.6.mdx\\\",\\\"markup.heading.atx.6.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-5.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#e78284\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e78284\\\"}},{\\\"scope\\\":\\\"markup.strikethrough\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\",\\\"foreground\\\":\\\"#a5adce\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.link\\\",\\\"markup.underline.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":[\\\"text.html.markdown punctuation.definition.link.title\\\",\\\"text.html.quarto punctuation.definition.link.title\\\",\\\"string.other.link.title.markdown\\\",\\\"string.other.link.title.quarto\\\",\\\"markup.link\\\",\\\"punctuation.definition.constant.markdown\\\",\\\"punctuation.definition.constant.quarto\\\",\\\"constant.other.reference.link.markdown\\\",\\\"constant.other.reference.link.quarto\\\",\\\"markup.substitution.attribute-reference\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#babbf1\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.raw.markdown\\\",\\\"punctuation.definition.raw.quarto\\\",\\\"markup.inline.raw.string.markdown\\\",\\\"markup.inline.raw.string.quarto\\\",\\\"markup.raw.block.markdown\\\",\\\"markup.raw.block.quarto\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6d189\\\"}},{\\\"scope\\\":\\\"fenced_code.block.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#99d1db\\\"}},{\\\"scope\\\":[\\\"markup.fenced_code.block punctuation.definition\\\",\\\"markup.raw support.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#949cbb\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\",\\\"punctuation.definition.quote.begin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":\\\"meta.separator.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.list.begin.markdown\\\",\\\"punctuation.definition.list.begin.quarto\\\",\\\"markup.list.bullet\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"markup.heading.quarto\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.multipart.nix\\\",\\\"entity.other.attribute-name.single.nix\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":\\\"variable.parameter.name.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":\\\"meta.embedded variable.parameter.name.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#babbf1\\\"}},{\\\"scope\\\":\\\"string.unquoted.path.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":[\\\"support.attribute.builtin\\\",\\\"meta.attribute.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"meta.function.parameters.php punctuation.definition.variable.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea999c\\\"}},{\\\"scope\\\":\\\"constant.language.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":\\\"text.html.php support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#99d1db\\\"}},{\\\"scope\\\":\\\"keyword.other.phpdoc.php\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"support.variable.magic.python\\\",\\\"meta.function-call.arguments.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":[\\\"support.function.magic.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#99d1db\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.language.special.self.python\\\",\\\"variable.language.special.self.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e78284\\\"}},{\\\"scope\\\":[\\\"keyword.control.flow.python\\\",\\\"keyword.operator.logical.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":\\\"storage.type.function.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":[\\\"support.token.decorator.python\\\",\\\"meta.function.decorator.identifier.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#99d1db\\\"}},{\\\"scope\\\":[\\\"meta.function-call.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":[\\\"entity.name.function.decorator.python\\\",\\\"punctuation.definition.decorator.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":\\\"constant.character.format.placeholder.other.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":[\\\"support.type.exception.python\\\",\\\"support.function.builtin.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":[\\\"support.type.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":\\\"constant.language.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":[\\\"meta.indexed-name.python\\\",\\\"meta.item-access.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ea999c\\\"}},{\\\"scope\\\":\\\"storage.type.string.python\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#a6d189\\\"}},{\\\"scope\\\":\\\"meta.function.parameters.python\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"string.regexp punctuation.definition.string.begin\\\",\\\"string.regexp punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":\\\"keyword.control.anchor.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":\\\"string.regexp.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.regexp\\\",\\\"keyword.other.back-reference.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6d189\\\"}},{\\\"scope\\\":\\\"punctuation.definition.character-class.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"constant.other.character-class.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":\\\"constant.other.character-class.range.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f2d5cf\\\"}},{\\\"scope\\\":\\\"keyword.operator.quantifier.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"constant.character.numeric.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.no-capture.regexp\\\",\\\"meta.assertion.look-ahead.regexp\\\",\\\"meta.assertion.negative-look-ahead.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":[\\\"meta.annotation.rust\\\",\\\"meta.annotation.rust punctuation\\\",\\\"meta.attribute.rust\\\",\\\"punctuation.definition.attribute.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":[\\\"meta.attribute.rust string.quoted.double.rust\\\",\\\"meta.attribute.rust string.quoted.single.char.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"entity.name.function.macro.rules.rust\\\",\\\"storage.type.module.rust\\\",\\\"storage.modifier.rust\\\",\\\"storage.type.struct.rust\\\",\\\"storage.type.enum.rust\\\",\\\"storage.type.trait.rust\\\",\\\"storage.type.union.rust\\\",\\\"storage.type.impl.rust\\\",\\\"storage.type.rust\\\",\\\"storage.type.function.rust\\\",\\\"storage.type.type.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":\\\"entity.name.type.numeric.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":\\\"meta.generic.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":\\\"entity.name.impl.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"entity.name.module.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":\\\"entity.name.trait.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"storage.type.source.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"entity.name.union.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c890\\\"}},{\\\"scope\\\":\\\"meta.enum.rust storage.type.source.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":[\\\"support.macro.rust\\\",\\\"meta.macro.rust support.function.rust\\\",\\\"entity.name.function.macro.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":[\\\"storage.modifier.lifetime.rust\\\",\\\"entity.name.type.lifetime\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":\\\"string.quoted.double.rust constant.other.placeholder.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":\\\"meta.function.return-type.rust meta.generic.rust storage.type.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":\\\"meta.function.call.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8caaee\\\"}},{\\\"scope\\\":\\\"punctuation.brackets.angle.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#99d1db\\\"}},{\\\"scope\\\":\\\"constant.other.caps.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":[\\\"meta.function.definition.rust variable.other.rust\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ea999c\\\"}},{\\\"scope\\\":\\\"meta.function.call.rust variable.other.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}},{\\\"scope\\\":\\\"variable.language.self.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e78284\\\"}},{\\\"scope\\\":[\\\"variable.other.metavariable.name.rust\\\",\\\"meta.macro.metavariable.rust keyword.operator.macro.dollar.rust\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":[\\\"comment.line.shebang\\\",\\\"comment.line.shebang punctuation.definition.comment\\\",\\\"comment.line.shebang\\\",\\\"punctuation.definition.comment.shebang.shell\\\",\\\"meta.shebang.shell\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f4b8e4\\\"}},{\\\"scope\\\":\\\"comment.line.shebang constant.language\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":[\\\"meta.function-call.arguments.shell punctuation.definition.variable.shell\\\",\\\"meta.function-call.arguments.shell punctuation.section.interpolation\\\",\\\"meta.function-call.arguments.shell punctuation.definition.variable.shell\\\",\\\"meta.function-call.arguments.shell punctuation.section.interpolation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e78284\\\"}},{\\\"scope\\\":\\\"meta.string meta.interpolation.parameter.shell variable.other.readwrite\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ef9f76\\\"}},{\\\"scope\\\":[\\\"source.shell punctuation.section.interpolation\\\",\\\"punctuation.definition.evaluation.backticks.shell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#81c8be\\\"}},{\\\"scope\\\":\\\"entity.name.tag.heredoc.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ca9ee6\\\"}},{\\\"scope\\\":\\\"string.quoted.double.shell variable.other.normal.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6d0f5\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: catppuccin-latte */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBackground\\\":\\\"#00000000\\\",\\\"activityBar.activeBorder\\\":\\\"#00000000\\\",\\\"activityBar.activeFocusBorder\\\":\\\"#00000000\\\",\\\"activityBar.background\\\":\\\"#dce0e8\\\",\\\"activityBar.border\\\":\\\"#00000000\\\",\\\"activityBar.dropBorder\\\":\\\"#8839ef33\\\",\\\"activityBar.foreground\\\":\\\"#8839ef\\\",\\\"activityBar.inactiveForeground\\\":\\\"#9ca0b0\\\",\\\"activityBarBadge.background\\\":\\\"#8839ef\\\",\\\"activityBarBadge.foreground\\\":\\\"#dce0e8\\\",\\\"activityBarTop.activeBorder\\\":\\\"#00000000\\\",\\\"activityBarTop.dropBorder\\\":\\\"#8839ef33\\\",\\\"activityBarTop.foreground\\\":\\\"#8839ef\\\",\\\"activityBarTop.inactiveForeground\\\":\\\"#9ca0b0\\\",\\\"badge.background\\\":\\\"#bcc0cc\\\",\\\"badge.foreground\\\":\\\"#4c4f69\\\",\\\"banner.background\\\":\\\"#bcc0cc\\\",\\\"banner.foreground\\\":\\\"#4c4f69\\\",\\\"banner.iconForeground\\\":\\\"#4c4f69\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#8839ef\\\",\\\"breadcrumb.background\\\":\\\"#eff1f5\\\",\\\"breadcrumb.focusForeground\\\":\\\"#8839ef\\\",\\\"breadcrumb.foreground\\\":\\\"#4c4f69cc\\\",\\\"breadcrumbPicker.background\\\":\\\"#e6e9ef\\\",\\\"button.background\\\":\\\"#8839ef\\\",\\\"button.border\\\":\\\"#00000000\\\",\\\"button.foreground\\\":\\\"#dce0e8\\\",\\\"button.hoverBackground\\\":\\\"#9c5af2\\\",\\\"button.secondaryBackground\\\":\\\"#acb0be\\\",\\\"button.secondaryBorder\\\":\\\"#8839ef\\\",\\\"button.secondaryForeground\\\":\\\"#4c4f69\\\",\\\"button.secondaryHoverBackground\\\":\\\"#c0c3ce\\\",\\\"button.separator\\\":\\\"#00000000\\\",\\\"charts.blue\\\":\\\"#1e66f5\\\",\\\"charts.foreground\\\":\\\"#4c4f69\\\",\\\"charts.green\\\":\\\"#40a02b\\\",\\\"charts.lines\\\":\\\"#5c5f77\\\",\\\"charts.orange\\\":\\\"#fe640b\\\",\\\"charts.purple\\\":\\\"#8839ef\\\",\\\"charts.red\\\":\\\"#d20f39\\\",\\\"charts.yellow\\\":\\\"#df8e1d\\\",\\\"checkbox.background\\\":\\\"#bcc0cc\\\",\\\"checkbox.border\\\":\\\"#00000000\\\",\\\"checkbox.foreground\\\":\\\"#8839ef\\\",\\\"commandCenter.activeBackground\\\":\\\"#acb0be33\\\",\\\"commandCenter.activeBorder\\\":\\\"#8839ef\\\",\\\"commandCenter.activeForeground\\\":\\\"#8839ef\\\",\\\"commandCenter.background\\\":\\\"#e6e9ef\\\",\\\"commandCenter.border\\\":\\\"#00000000\\\",\\\"commandCenter.foreground\\\":\\\"#5c5f77\\\",\\\"commandCenter.inactiveBorder\\\":\\\"#00000000\\\",\\\"commandCenter.inactiveForeground\\\":\\\"#5c5f77\\\",\\\"debugConsole.errorForeground\\\":\\\"#d20f39\\\",\\\"debugConsole.infoForeground\\\":\\\"#1e66f5\\\",\\\"debugConsole.sourceForeground\\\":\\\"#dc8a78\\\",\\\"debugConsole.warningForeground\\\":\\\"#fe640b\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#4c4f69\\\",\\\"debugExceptionWidget.background\\\":\\\"#dce0e8\\\",\\\"debugExceptionWidget.border\\\":\\\"#8839ef\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#acb0be\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#d20f3999\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#d20f39\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#acb0be\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#bf607c\\\",\\\"debugIcon.continueForeground\\\":\\\"#40a02b\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#acb0be\\\",\\\"debugIcon.pauseForeground\\\":\\\"#1e66f5\\\",\\\"debugIcon.restartForeground\\\":\\\"#179299\\\",\\\"debugIcon.startForeground\\\":\\\"#40a02b\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#acb0be\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#4c4f69\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#4c4f69\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#8839ef\\\",\\\"debugIcon.stopForeground\\\":\\\"#d20f39\\\",\\\"debugTokenExpression.boolean\\\":\\\"#8839ef\\\",\\\"debugTokenExpression.error\\\":\\\"#d20f39\\\",\\\"debugTokenExpression.number\\\":\\\"#fe640b\\\",\\\"debugTokenExpression.string\\\":\\\"#40a02b\\\",\\\"debugToolBar.background\\\":\\\"#dce0e8\\\",\\\"debugToolBar.border\\\":\\\"#00000000\\\",\\\"descriptionForeground\\\":\\\"#4c4f69\\\",\\\"diffEditor.border\\\":\\\"#acb0be\\\",\\\"diffEditor.diagonalFill\\\":\\\"#acb0be99\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#40a02b26\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#40a02b1a\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#d20f3926\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#d20f391a\\\",\\\"diffEditorOverview.insertedForeground\\\":\\\"#40a02bcc\\\",\\\"diffEditorOverview.removedForeground\\\":\\\"#d20f39cc\\\",\\\"disabledForeground\\\":\\\"#6c6f85\\\",\\\"dropdown.background\\\":\\\"#e6e9ef\\\",\\\"dropdown.border\\\":\\\"#8839ef\\\",\\\"dropdown.foreground\\\":\\\"#4c4f69\\\",\\\"dropdown.listBackground\\\":\\\"#acb0be\\\",\\\"editor.background\\\":\\\"#eff1f5\\\",\\\"editor.findMatchBackground\\\":\\\"#e6adbd\\\",\\\"editor.findMatchBorder\\\":\\\"#d20f3933\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#a9daf0\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#04a5e533\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#a9daf0\\\",\\\"editor.findRangeHighlightBorder\\\":\\\"#04a5e533\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#40a02b26\\\",\\\"editor.foldBackground\\\":\\\"#04a5e540\\\",\\\"editor.foreground\\\":\\\"#4c4f69\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#04a5e540\\\",\\\"editor.lineHighlightBackground\\\":\\\"#4c4f6912\\\",\\\"editor.lineHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#04a5e540\\\",\\\"editor.rangeHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.selectionBackground\\\":\\\"#7c7f934d\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#7c7f9333\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#7c7f9333\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#df8e1d26\\\",\\\"editor.wordHighlightBackground\\\":\\\"#7c7f9333\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#1e66f526\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#d20f39\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#fe640b\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#df8e1d\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#40a02b\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#209fb5\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#8839ef\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#e64553\\\",\\\"editorBracketMatch.background\\\":\\\"#7c7f931a\\\",\\\"editorBracketMatch.border\\\":\\\"#7c7f93\\\",\\\"editorCodeLens.foreground\\\":\\\"#8c8fa1\\\",\\\"editorCursor.background\\\":\\\"#eff1f5\\\",\\\"editorCursor.foreground\\\":\\\"#dc8a78\\\",\\\"editorError.background\\\":\\\"#00000000\\\",\\\"editorError.border\\\":\\\"#00000000\\\",\\\"editorError.foreground\\\":\\\"#d20f39\\\",\\\"editorGroup.border\\\":\\\"#acb0be\\\",\\\"editorGroup.dropBackground\\\":\\\"#8839ef33\\\",\\\"editorGroup.emptyBackground\\\":\\\"#eff1f5\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#dce0e8\\\",\\\"editorGutter.addedBackground\\\":\\\"#40a02b\\\",\\\"editorGutter.background\\\":\\\"#eff1f5\\\",\\\"editorGutter.commentGlyphForeground\\\":\\\"#8839ef\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#ccd0da\\\",\\\"editorGutter.deletedBackground\\\":\\\"#d20f39\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#7c7f93\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#df8e1d\\\",\\\"editorHoverWidget.background\\\":\\\"#e6e9ef\\\",\\\"editorHoverWidget.border\\\":\\\"#acb0be\\\",\\\"editorHoverWidget.foreground\\\":\\\"#4c4f69\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#acb0be\\\",\\\"editorIndentGuide.background\\\":\\\"#bcc0cc\\\",\\\"editorInfo.background\\\":\\\"#00000000\\\",\\\"editorInfo.border\\\":\\\"#00000000\\\",\\\"editorInfo.foreground\\\":\\\"#1e66f5\\\",\\\"editorInlayHint.background\\\":\\\"#e6e9efbf\\\",\\\"editorInlayHint.foreground\\\":\\\"#acb0be\\\",\\\"editorInlayHint.parameterBackground\\\":\\\"#e6e9efbf\\\",\\\"editorInlayHint.parameterForeground\\\":\\\"#6c6f85\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#e6e9efbf\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#5c5f77\\\",\\\"editorLightBulb.foreground\\\":\\\"#df8e1d\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#8839ef\\\",\\\"editorLineNumber.foreground\\\":\\\"#8c8fa1\\\",\\\"editorLink.activeForeground\\\":\\\"#8839ef\\\",\\\"editorMarkerNavigation.background\\\":\\\"#e6e9ef\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#d20f39\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#1e66f5\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#fe640b\\\",\\\"editorOverviewRuler.background\\\":\\\"#e6e9ef\\\",\\\"editorOverviewRuler.border\\\":\\\"#4c4f6912\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#df8e1d\\\",\\\"editorRuler.foreground\\\":\\\"#acb0be\\\",\\\"editorStickyScrollHover.background\\\":\\\"#ccd0da\\\",\\\"editorSuggestWidget.background\\\":\\\"#e6e9ef\\\",\\\"editorSuggestWidget.border\\\":\\\"#acb0be\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#4c4f69\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#8839ef\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#ccd0da\\\",\\\"editorWarning.background\\\":\\\"#00000000\\\",\\\"editorWarning.border\\\":\\\"#00000000\\\",\\\"editorWarning.foreground\\\":\\\"#fe640b\\\",\\\"editorWhitespace.foreground\\\":\\\"#7c7f9366\\\",\\\"editorWidget.background\\\":\\\"#e6e9ef\\\",\\\"editorWidget.foreground\\\":\\\"#4c4f69\\\",\\\"editorWidget.resizeBorder\\\":\\\"#acb0be\\\",\\\"errorForeground\\\":\\\"#d20f39\\\",\\\"errorLens.errorBackground\\\":\\\"#d20f3926\\\",\\\"errorLens.errorBackgroundLight\\\":\\\"#d20f3926\\\",\\\"errorLens.errorForeground\\\":\\\"#d20f39\\\",\\\"errorLens.errorForegroundLight\\\":\\\"#d20f39\\\",\\\"errorLens.errorMessageBackground\\\":\\\"#d20f3926\\\",\\\"errorLens.hintBackground\\\":\\\"#40a02b26\\\",\\\"errorLens.hintBackgroundLight\\\":\\\"#40a02b26\\\",\\\"errorLens.hintForeground\\\":\\\"#40a02b\\\",\\\"errorLens.hintForegroundLight\\\":\\\"#40a02b\\\",\\\"errorLens.hintMessageBackground\\\":\\\"#40a02b26\\\",\\\"errorLens.infoBackground\\\":\\\"#1e66f526\\\",\\\"errorLens.infoBackgroundLight\\\":\\\"#1e66f526\\\",\\\"errorLens.infoForeground\\\":\\\"#1e66f5\\\",\\\"errorLens.infoForegroundLight\\\":\\\"#1e66f5\\\",\\\"errorLens.infoMessageBackground\\\":\\\"#1e66f526\\\",\\\"errorLens.statusBarErrorForeground\\\":\\\"#d20f39\\\",\\\"errorLens.statusBarHintForeground\\\":\\\"#40a02b\\\",\\\"errorLens.statusBarIconErrorForeground\\\":\\\"#d20f39\\\",\\\"errorLens.statusBarIconWarningForeground\\\":\\\"#fe640b\\\",\\\"errorLens.statusBarInfoForeground\\\":\\\"#1e66f5\\\",\\\"errorLens.statusBarWarningForeground\\\":\\\"#fe640b\\\",\\\"errorLens.warningBackground\\\":\\\"#fe640b26\\\",\\\"errorLens.warningBackgroundLight\\\":\\\"#fe640b26\\\",\\\"errorLens.warningForeground\\\":\\\"#fe640b\\\",\\\"errorLens.warningForegroundLight\\\":\\\"#fe640b\\\",\\\"errorLens.warningMessageBackground\\\":\\\"#fe640b26\\\",\\\"extensionBadge.remoteBackground\\\":\\\"#1e66f5\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#dce0e8\\\",\\\"extensionButton.prominentBackground\\\":\\\"#8839ef\\\",\\\"extensionButton.prominentForeground\\\":\\\"#dce0e8\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#9c5af2\\\",\\\"extensionButton.separator\\\":\\\"#eff1f5\\\",\\\"extensionIcon.preReleaseForeground\\\":\\\"#acb0be\\\",\\\"extensionIcon.sponsorForeground\\\":\\\"#ea76cb\\\",\\\"extensionIcon.starForeground\\\":\\\"#df8e1d\\\",\\\"extensionIcon.verifiedForeground\\\":\\\"#40a02b\\\",\\\"focusBorder\\\":\\\"#8839ef\\\",\\\"foreground\\\":\\\"#4c4f69\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#40a02b\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#8839ef\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#d20f39\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#9ca0b0\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#df8e1d\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#d20f39\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#df8e1d\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#1e66f5\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#40a02b\\\",\\\"gitlens.closedAutolinkedIssueIconColor\\\":\\\"#8839ef\\\",\\\"gitlens.closedPullRequestIconColor\\\":\\\"#d20f39\\\",\\\"gitlens.decorations.branchAheadForegroundColor\\\":\\\"#40a02b\\\",\\\"gitlens.decorations.branchBehindForegroundColor\\\":\\\"#fe640b\\\",\\\"gitlens.decorations.branchDivergedForegroundColor\\\":\\\"#df8e1d\\\",\\\"gitlens.decorations.branchMissingUpstreamForegroundColor\\\":\\\"#fe640b\\\",\\\"gitlens.decorations.branchUnpublishedForegroundColor\\\":\\\"#40a02b\\\",\\\"gitlens.decorations.statusMergingOrRebasingConflictForegroundColor\\\":\\\"#e64553\\\",\\\"gitlens.decorations.statusMergingOrRebasingForegroundColor\\\":\\\"#df8e1d\\\",\\\"gitlens.decorations.workspaceCurrentForegroundColor\\\":\\\"#8839ef\\\",\\\"gitlens.decorations.workspaceRepoMissingForegroundColor\\\":\\\"#6c6f85\\\",\\\"gitlens.decorations.workspaceRepoOpenForegroundColor\\\":\\\"#8839ef\\\",\\\"gitlens.decorations.worktreeHasUncommittedChangesForegroundColor\\\":\\\"#fe640b\\\",\\\"gitlens.decorations.worktreeMissingForegroundColor\\\":\\\"#e64553\\\",\\\"gitlens.graphChangesColumnAddedColor\\\":\\\"#40a02b\\\",\\\"gitlens.graphChangesColumnDeletedColor\\\":\\\"#d20f39\\\",\\\"gitlens.graphLane10Color\\\":\\\"#ea76cb\\\",\\\"gitlens.graphLane1Color\\\":\\\"#8839ef\\\",\\\"gitlens.graphLane2Color\\\":\\\"#df8e1d\\\",\\\"gitlens.graphLane3Color\\\":\\\"#1e66f5\\\",\\\"gitlens.graphLane4Color\\\":\\\"#dd7878\\\",\\\"gitlens.graphLane5Color\\\":\\\"#40a02b\\\",\\\"gitlens.graphLane6Color\\\":\\\"#7287fd\\\",\\\"gitlens.graphLane7Color\\\":\\\"#dc8a78\\\",\\\"gitlens.graphLane8Color\\\":\\\"#d20f39\\\",\\\"gitlens.graphLane9Color\\\":\\\"#179299\\\",\\\"gitlens.graphMinimapMarkerHeadColor\\\":\\\"#40a02b\\\",\\\"gitlens.graphMinimapMarkerHighlightsColor\\\":\\\"#df8e1d\\\",\\\"gitlens.graphMinimapMarkerLocalBranchesColor\\\":\\\"#1e66f5\\\",\\\"gitlens.graphMinimapMarkerRemoteBranchesColor\\\":\\\"#0b57ef\\\",\\\"gitlens.graphMinimapMarkerStashesColor\\\":\\\"#8839ef\\\",\\\"gitlens.graphMinimapMarkerTagsColor\\\":\\\"#dd7878\\\",\\\"gitlens.graphMinimapMarkerUpstreamColor\\\":\\\"#388c26\\\",\\\"gitlens.graphScrollMarkerHeadColor\\\":\\\"#40a02b\\\",\\\"gitlens.graphScrollMarkerHighlightsColor\\\":\\\"#df8e1d\\\",\\\"gitlens.graphScrollMarkerLocalBranchesColor\\\":\\\"#1e66f5\\\",\\\"gitlens.graphScrollMarkerRemoteBranchesColor\\\":\\\"#0b57ef\\\",\\\"gitlens.graphScrollMarkerStashesColor\\\":\\\"#8839ef\\\",\\\"gitlens.graphScrollMarkerTagsColor\\\":\\\"#dd7878\\\",\\\"gitlens.graphScrollMarkerUpstreamColor\\\":\\\"#388c26\\\",\\\"gitlens.gutterBackgroundColor\\\":\\\"#ccd0da4d\\\",\\\"gitlens.gutterForegroundColor\\\":\\\"#4c4f69\\\",\\\"gitlens.gutterUncommittedForegroundColor\\\":\\\"#8839ef\\\",\\\"gitlens.lineHighlightBackgroundColor\\\":\\\"#8839ef26\\\",\\\"gitlens.lineHighlightOverviewRulerColor\\\":\\\"#8839efcc\\\",\\\"gitlens.mergedPullRequestIconColor\\\":\\\"#8839ef\\\",\\\"gitlens.openAutolinkedIssueIconColor\\\":\\\"#40a02b\\\",\\\"gitlens.openPullRequestIconColor\\\":\\\"#40a02b\\\",\\\"gitlens.trailingLineBackgroundColor\\\":\\\"#00000000\\\",\\\"gitlens.trailingLineForegroundColor\\\":\\\"#4c4f694d\\\",\\\"gitlens.unpublishedChangesIconColor\\\":\\\"#40a02b\\\",\\\"gitlens.unpublishedCommitIconColor\\\":\\\"#40a02b\\\",\\\"gitlens.unpulledChangesIconColor\\\":\\\"#fe640b\\\",\\\"icon.foreground\\\":\\\"#8839ef\\\",\\\"input.background\\\":\\\"#ccd0da\\\",\\\"input.border\\\":\\\"#00000000\\\",\\\"input.foreground\\\":\\\"#4c4f69\\\",\\\"input.placeholderForeground\\\":\\\"#4c4f6973\\\",\\\"inputOption.activeBackground\\\":\\\"#acb0be\\\",\\\"inputOption.activeBorder\\\":\\\"#8839ef\\\",\\\"inputOption.activeForeground\\\":\\\"#4c4f69\\\",\\\"inputValidation.errorBackground\\\":\\\"#d20f39\\\",\\\"inputValidation.errorBorder\\\":\\\"#dce0e833\\\",\\\"inputValidation.errorForeground\\\":\\\"#dce0e8\\\",\\\"inputValidation.infoBackground\\\":\\\"#1e66f5\\\",\\\"inputValidation.infoBorder\\\":\\\"#dce0e833\\\",\\\"inputValidation.infoForeground\\\":\\\"#dce0e8\\\",\\\"inputValidation.warningBackground\\\":\\\"#fe640b\\\",\\\"inputValidation.warningBorder\\\":\\\"#dce0e833\\\",\\\"inputValidation.warningForeground\\\":\\\"#dce0e8\\\",\\\"issues.closed\\\":\\\"#8839ef\\\",\\\"issues.newIssueDecoration\\\":\\\"#dc8a78\\\",\\\"issues.open\\\":\\\"#40a02b\\\",\\\"list.activeSelectionBackground\\\":\\\"#ccd0da\\\",\\\"list.activeSelectionForeground\\\":\\\"#4c4f69\\\",\\\"list.dropBackground\\\":\\\"#8839ef33\\\",\\\"list.focusAndSelectionBackground\\\":\\\"#bcc0cc\\\",\\\"list.focusBackground\\\":\\\"#ccd0da\\\",\\\"list.focusForeground\\\":\\\"#4c4f69\\\",\\\"list.focusOutline\\\":\\\"#00000000\\\",\\\"list.highlightForeground\\\":\\\"#8839ef\\\",\\\"list.hoverBackground\\\":\\\"#ccd0da80\\\",\\\"list.hoverForeground\\\":\\\"#4c4f69\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#ccd0da\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#4c4f69\\\",\\\"list.warningForeground\\\":\\\"#fe640b\\\",\\\"listFilterWidget.background\\\":\\\"#bcc0cc\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#d20f39\\\",\\\"listFilterWidget.outline\\\":\\\"#00000000\\\",\\\"menu.background\\\":\\\"#eff1f5\\\",\\\"menu.border\\\":\\\"#eff1f580\\\",\\\"menu.foreground\\\":\\\"#4c4f69\\\",\\\"menu.selectionBackground\\\":\\\"#acb0be\\\",\\\"menu.selectionBorder\\\":\\\"#00000000\\\",\\\"menu.selectionForeground\\\":\\\"#4c4f69\\\",\\\"menu.separatorBackground\\\":\\\"#acb0be\\\",\\\"menubar.selectionBackground\\\":\\\"#bcc0cc\\\",\\\"menubar.selectionForeground\\\":\\\"#4c4f69\\\",\\\"merge.commonContentBackground\\\":\\\"#bcc0cc\\\",\\\"merge.commonHeaderBackground\\\":\\\"#acb0be\\\",\\\"merge.currentContentBackground\\\":\\\"#40a02b33\\\",\\\"merge.currentHeaderBackground\\\":\\\"#40a02b66\\\",\\\"merge.incomingContentBackground\\\":\\\"#1e66f533\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#1e66f566\\\",\\\"minimap.background\\\":\\\"#e6e9ef80\\\",\\\"minimap.errorHighlight\\\":\\\"#d20f39bf\\\",\\\"minimap.findMatchHighlight\\\":\\\"#04a5e54d\\\",\\\"minimap.selectionHighlight\\\":\\\"#acb0bebf\\\",\\\"minimap.selectionOccurrenceHighlight\\\":\\\"#acb0bebf\\\",\\\"minimap.warningHighlight\\\":\\\"#fe640bbf\\\",\\\"minimapGutter.addedBackground\\\":\\\"#40a02bbf\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#d20f39bf\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#df8e1dbf\\\",\\\"minimapSlider.activeBackground\\\":\\\"#8839ef99\\\",\\\"minimapSlider.background\\\":\\\"#8839ef33\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#8839ef66\\\",\\\"notificationCenter.border\\\":\\\"#8839ef\\\",\\\"notificationCenterHeader.background\\\":\\\"#e6e9ef\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#4c4f69\\\",\\\"notificationLink.foreground\\\":\\\"#1e66f5\\\",\\\"notificationToast.border\\\":\\\"#8839ef\\\",\\\"notifications.background\\\":\\\"#e6e9ef\\\",\\\"notifications.border\\\":\\\"#8839ef\\\",\\\"notifications.foreground\\\":\\\"#4c4f69\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#d20f39\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#1e66f5\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#fe640b\\\",\\\"panel.background\\\":\\\"#eff1f5\\\",\\\"panel.border\\\":\\\"#acb0be\\\",\\\"panelSection.border\\\":\\\"#acb0be\\\",\\\"panelSection.dropBackground\\\":\\\"#8839ef33\\\",\\\"panelTitle.activeBorder\\\":\\\"#8839ef\\\",\\\"panelTitle.activeForeground\\\":\\\"#4c4f69\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#6c6f85\\\",\\\"peekView.border\\\":\\\"#8839ef\\\",\\\"peekViewEditor.background\\\":\\\"#e6e9ef\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#04a5e54d\\\",\\\"peekViewEditor.matchHighlightBorder\\\":\\\"#00000000\\\",\\\"peekViewEditorGutter.background\\\":\\\"#e6e9ef\\\",\\\"peekViewResult.background\\\":\\\"#e6e9ef\\\",\\\"peekViewResult.fileForeground\\\":\\\"#4c4f69\\\",\\\"peekViewResult.lineForeground\\\":\\\"#4c4f69\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#04a5e54d\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#ccd0da\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#4c4f69\\\",\\\"peekViewTitle.background\\\":\\\"#eff1f5\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#5c5f77b3\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#4c4f69\\\",\\\"pickerGroup.border\\\":\\\"#8839ef\\\",\\\"pickerGroup.foreground\\\":\\\"#8839ef\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#d20f39\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#1e66f5\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#fe640b\\\",\\\"progressBar.background\\\":\\\"#8839ef\\\",\\\"pullRequests.closed\\\":\\\"#d20f39\\\",\\\"pullRequests.draft\\\":\\\"#7c7f93\\\",\\\"pullRequests.merged\\\":\\\"#8839ef\\\",\\\"pullRequests.notification\\\":\\\"#4c4f69\\\",\\\"pullRequests.open\\\":\\\"#40a02b\\\",\\\"sash.hoverBorder\\\":\\\"#8839ef\\\",\\\"scrollbar.shadow\\\":\\\"#dce0e8\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#ccd0da66\\\",\\\"scrollbarSlider.background\\\":\\\"#acb0be80\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#9ca0b0\\\",\\\"selection.background\\\":\\\"#8839ef66\\\",\\\"settings.dropdownBackground\\\":\\\"#bcc0cc\\\",\\\"settings.dropdownListBorder\\\":\\\"#00000000\\\",\\\"settings.focusedRowBackground\\\":\\\"#acb0be33\\\",\\\"settings.headerForeground\\\":\\\"#4c4f69\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#8839ef\\\",\\\"settings.numberInputBackground\\\":\\\"#bcc0cc\\\",\\\"settings.numberInputBorder\\\":\\\"#00000000\\\",\\\"settings.textInputBackground\\\":\\\"#bcc0cc\\\",\\\"settings.textInputBorder\\\":\\\"#00000000\\\",\\\"sideBar.background\\\":\\\"#e6e9ef\\\",\\\"sideBar.border\\\":\\\"#00000000\\\",\\\"sideBar.dropBackground\\\":\\\"#8839ef33\\\",\\\"sideBar.foreground\\\":\\\"#4c4f69\\\",\\\"sideBarSectionHeader.background\\\":\\\"#e6e9ef\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#4c4f69\\\",\\\"sideBarTitle.foreground\\\":\\\"#8839ef\\\",\\\"statusBar.background\\\":\\\"#dce0e8\\\",\\\"statusBar.border\\\":\\\"#00000000\\\",\\\"statusBar.debuggingBackground\\\":\\\"#fe640b\\\",\\\"statusBar.debuggingBorder\\\":\\\"#00000000\\\",\\\"statusBar.debuggingForeground\\\":\\\"#dce0e8\\\",\\\"statusBar.foreground\\\":\\\"#4c4f69\\\",\\\"statusBar.noFolderBackground\\\":\\\"#dce0e8\\\",\\\"statusBar.noFolderBorder\\\":\\\"#00000000\\\",\\\"statusBar.noFolderForeground\\\":\\\"#4c4f69\\\",\\\"statusBarItem.activeBackground\\\":\\\"#acb0be66\\\",\\\"statusBarItem.errorBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.errorForeground\\\":\\\"#d20f39\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#acb0be33\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.prominentForeground\\\":\\\"#8839ef\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#acb0be33\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#1e66f5\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#dce0e8\\\",\\\"statusBarItem.warningBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.warningForeground\\\":\\\"#fe640b\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#fe640b\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#8839ef\\\",\\\"symbolIcon.classForeground\\\":\\\"#df8e1d\\\",\\\"symbolIcon.colorForeground\\\":\\\"#ea76cb\\\",\\\"symbolIcon.constantForeground\\\":\\\"#fe640b\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#7287fd\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#df8e1d\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#df8e1d\\\",\\\"symbolIcon.eventForeground\\\":\\\"#ea76cb\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#4c4f69\\\",\\\"symbolIcon.fileForeground\\\":\\\"#8839ef\\\",\\\"symbolIcon.folderForeground\\\":\\\"#8839ef\\\",\\\"symbolIcon.functionForeground\\\":\\\"#1e66f5\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#df8e1d\\\",\\\"symbolIcon.keyForeground\\\":\\\"#179299\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#8839ef\\\",\\\"symbolIcon.methodForeground\\\":\\\"#1e66f5\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#4c4f69\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#df8e1d\\\",\\\"symbolIcon.nullForeground\\\":\\\"#e64553\\\",\\\"symbolIcon.numberForeground\\\":\\\"#fe640b\\\",\\\"symbolIcon.objectForeground\\\":\\\"#df8e1d\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#179299\\\",\\\"symbolIcon.packageForeground\\\":\\\"#dd7878\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#e64553\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#df8e1d\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#dd7878\\\",\\\"symbolIcon.stringForeground\\\":\\\"#40a02b\\\",\\\"symbolIcon.structForeground\\\":\\\"#179299\\\",\\\"symbolIcon.textForeground\\\":\\\"#4c4f69\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#e64553\\\",\\\"symbolIcon.unitForeground\\\":\\\"#4c4f69\\\",\\\"symbolIcon.variableForeground\\\":\\\"#4c4f69\\\",\\\"tab.activeBackground\\\":\\\"#eff1f5\\\",\\\"tab.activeBorder\\\":\\\"#00000000\\\",\\\"tab.activeBorderTop\\\":\\\"#8839ef\\\",\\\"tab.activeForeground\\\":\\\"#8839ef\\\",\\\"tab.activeModifiedBorder\\\":\\\"#df8e1d\\\",\\\"tab.border\\\":\\\"#e6e9ef\\\",\\\"tab.hoverBackground\\\":\\\"#ffffff\\\",\\\"tab.hoverBorder\\\":\\\"#00000000\\\",\\\"tab.hoverForeground\\\":\\\"#8839ef\\\",\\\"tab.inactiveBackground\\\":\\\"#e6e9ef\\\",\\\"tab.inactiveForeground\\\":\\\"#9ca0b0\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#df8e1d4d\\\",\\\"tab.lastPinnedBorder\\\":\\\"#8839ef\\\",\\\"tab.unfocusedActiveBackground\\\":\\\"#e6e9ef\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#00000000\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#8839ef4d\\\",\\\"tab.unfocusedInactiveBackground\\\":\\\"#d6dbe5\\\",\\\"table.headerBackground\\\":\\\"#ccd0da\\\",\\\"table.headerForeground\\\":\\\"#4c4f69\\\",\\\"terminal.ansiBlack\\\":\\\"#5c5f77\\\",\\\"terminal.ansiBlue\\\":\\\"#1e66f5\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#6c6f85\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#456eff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#2d9fa8\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#49af3d\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#fe85d8\\\",\\\"terminal.ansiBrightRed\\\":\\\"#de293e\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#bcc0cc\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#eea02d\\\",\\\"terminal.ansiCyan\\\":\\\"#179299\\\",\\\"terminal.ansiGreen\\\":\\\"#40a02b\\\",\\\"terminal.ansiMagenta\\\":\\\"#ea76cb\\\",\\\"terminal.ansiRed\\\":\\\"#d20f39\\\",\\\"terminal.ansiWhite\\\":\\\"#acb0be\\\",\\\"terminal.ansiYellow\\\":\\\"#df8e1d\\\",\\\"terminal.border\\\":\\\"#acb0be\\\",\\\"terminal.dropBackground\\\":\\\"#8839ef33\\\",\\\"terminal.foreground\\\":\\\"#4c4f69\\\",\\\"terminal.inactiveSelectionBackground\\\":\\\"#acb0be80\\\",\\\"terminal.selectionBackground\\\":\\\"#acb0be\\\",\\\"terminal.tab.activeBorder\\\":\\\"#8839ef\\\",\\\"terminalCommandDecoration.defaultBackground\\\":\\\"#acb0be\\\",\\\"terminalCommandDecoration.errorBackground\\\":\\\"#d20f39\\\",\\\"terminalCommandDecoration.successBackground\\\":\\\"#40a02b\\\",\\\"terminalCursor.background\\\":\\\"#eff1f5\\\",\\\"terminalCursor.foreground\\\":\\\"#dc8a78\\\",\\\"textBlockQuote.background\\\":\\\"#e6e9ef\\\",\\\"textBlockQuote.border\\\":\\\"#dce0e8\\\",\\\"textCodeBlock.background\\\":\\\"#eff1f5\\\",\\\"textLink.activeForeground\\\":\\\"#04a5e5\\\",\\\"textLink.foreground\\\":\\\"#1e66f5\\\",\\\"textPreformat.foreground\\\":\\\"#4c4f69\\\",\\\"textSeparator.foreground\\\":\\\"#8839ef\\\",\\\"titleBar.activeBackground\\\":\\\"#dce0e8\\\",\\\"titleBar.activeForeground\\\":\\\"#4c4f69\\\",\\\"titleBar.border\\\":\\\"#00000000\\\",\\\"titleBar.inactiveBackground\\\":\\\"#dce0e8\\\",\\\"titleBar.inactiveForeground\\\":\\\"#4c4f6980\\\",\\\"tree.inactiveIndentGuidesStroke\\\":\\\"#bcc0cc\\\",\\\"tree.indentGuidesStroke\\\":\\\"#7c7f93\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#eff1f54d\\\",\\\"welcomePage.progress.background\\\":\\\"#dce0e8\\\",\\\"welcomePage.progress.foreground\\\":\\\"#8839ef\\\",\\\"welcomePage.tileBackground\\\":\\\"#e6e9ef\\\",\\\"widget.shadow\\\":\\\"#e6e9ef80\\\",\\\"window.activeBorder\\\":\\\"#00000000\\\",\\\"window.inactiveBorder\\\":\\\"#00000000\\\"},\\\"displayName\\\":\\\"Catppuccin Latte\\\",\\\"name\\\":\\\"catppuccin-latte\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"boolean\\\":{\\\"foreground\\\":\\\"#fe640b\\\"},\\\"builtinAttribute.attribute.library:rust\\\":{\\\"foreground\\\":\\\"#1e66f5\\\"},\\\"class.builtin:python\\\":{\\\"foreground\\\":\\\"#8839ef\\\"},\\\"class:python\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"},\\\"constant.builtin.readonly:nix\\\":{\\\"foreground\\\":\\\"#8839ef\\\"},\\\"enumMember\\\":{\\\"foreground\\\":\\\"#179299\\\"},\\\"function.decorator:python\\\":{\\\"foreground\\\":\\\"#fe640b\\\"},\\\"generic.attribute:rust\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"},\\\"heading\\\":{\\\"foreground\\\":\\\"#d20f39\\\"},\\\"number\\\":{\\\"foreground\\\":\\\"#fe640b\\\"},\\\"pol\\\":{\\\"foreground\\\":\\\"#dd7878\\\"},\\\"property.readonly:javascript\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"},\\\"property.readonly:javascriptreact\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"},\\\"property.readonly:typescript\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"},\\\"property.readonly:typescriptreact\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"},\\\"selfKeyword\\\":{\\\"foreground\\\":\\\"#d20f39\\\"},\\\"text.emph\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#d20f39\\\"},\\\"text.math\\\":{\\\"foreground\\\":\\\"#dd7878\\\"},\\\"text.strong\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#d20f39\\\"},\\\"tomlArrayKey\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#1e66f5\\\"},\\\"tomlTableKey\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#1e66f5\\\"},\\\"type.defaultLibrary:go\\\":{\\\"foreground\\\":\\\"#8839ef\\\"},\\\"variable.defaultLibrary\\\":{\\\"foreground\\\":\\\"#e64553\\\"},\\\"variable.readonly.defaultLibrary:go\\\":{\\\"foreground\\\":\\\"#8839ef\\\"},\\\"variable.readonly:javascript\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"},\\\"variable.readonly:javascriptreact\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"},\\\"variable.readonly:scala\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"},\\\"variable.readonly:typescript\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"},\\\"variable.readonly:typescriptreact\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"},\\\"variable.typeHint:python\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"text\\\",\\\"source\\\",\\\"variable.other.readwrite\\\",\\\"punctuation.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":\\\"punctuation\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#7c7f93\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#9ca0b0\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#40a02b\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"variable.other.constant\\\",\\\"entity.name.constant\\\",\\\"constant.language.boolean\\\",\\\"constant.language.false\\\",\\\"constant.language.true\\\",\\\"keyword.other.unit.user-defined\\\",\\\"keyword.other.unit.suffix.floating-point\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"keyword.operator.word\\\",\\\"keyword.operator.new\\\",\\\"variable.language.super\\\",\\\"support.type.primitive\\\",\\\"storage.type\\\",\\\"storage.modifier\\\",\\\"punctuation.definition.keyword\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":\\\"entity.name.tag.documentation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\",\\\"punctuation.accessor\\\",\\\"punctuation.definition.generic\\\",\\\"meta.function.closure punctuation.section.parameters\\\",\\\"punctuation.definition.tag\\\",\\\"punctuation.separator.key-value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.function-call.method\\\",\\\"support.function\\\",\\\"support.function.misc\\\",\\\"variable.function\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":[\\\"entity.name.class\\\",\\\"entity.other.inherited-class\\\",\\\"support.class\\\",\\\"meta.function-call.constructor\\\",\\\"entity.name.struct\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"entity.name.enum\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":[\\\"meta.enum variable.other.readwrite\\\",\\\"variable.other.enummember\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"meta.property.object\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":[\\\"meta.type\\\",\\\"meta.type-alias\\\",\\\"support.type\\\",\\\"entity.name.type\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":[\\\"meta.annotation variable.function\\\",\\\"meta.annotation variable.annotation.function\\\",\\\"meta.annotation punctuation.definition.annotation\\\",\\\"meta.decorator\\\",\\\"punctuation.decorator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\",\\\"meta.function.parameters\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e64553\\\"}},{\\\"scope\\\":[\\\"constant.language\\\",\\\"support.function.builtin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d20f39\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.documentation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d20f39\\\"}},{\\\"scope\\\":[\\\"keyword.control.directive\\\",\\\"punctuation.definition.directive\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"punctuation.definition.typeparameters\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#04a5e5\\\"}},{\\\"scope\\\":\\\"entity.name.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":[\\\"variable.language.this\\\",\\\"variable.language.this punctuation.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d20f39\\\"}},{\\\"scope\\\":\\\"variable.object.property\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":[\\\"string.template variable\\\",\\\"string variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":\\\"keyword.operator.new\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"storage.modifier.specifier.extern.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":[\\\"entity.name.scope-resolution.template.call.cpp\\\",\\\"entity.name.scope-resolution.parameter.cpp\\\",\\\"entity.name.scope-resolution.cpp\\\",\\\"entity.name.scope-resolution.function.definition.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"storage.type.class.doxygen\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"storage.modifier.reference.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"meta.interpolation.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":\\\"comment.block.documentation.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":[\\\"source.css entity.other.attribute-name.class.css\\\",\\\"entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"punctuation.separator.operator.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"source.css entity.other.attribute-name.pseudo-class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"source.css constant.other.unicode-range\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":\\\"source.css variable.parameter.url\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#40a02b\\\"}},{\\\"scope\\\":[\\\"support.type.vendored.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#04a5e5\\\"}},{\\\"scope\\\":[\\\"source.css meta.property-value variable\\\",\\\"source.css meta.property-value variable.other.less\\\",\\\"source.css meta.property-value variable.other.less punctuation.definition.variable.less\\\",\\\"meta.definition.variable.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e64553\\\"}},{\\\"scope\\\":[\\\"source.css meta.property-list variable\\\",\\\"meta.property-list variable.other.less\\\",\\\"meta.property-list variable.other.less punctuation.definition.variable.less\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":\\\"keyword.other.unit.percentage.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":\\\"source.css meta.attribute-selector\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#40a02b\\\"}},{\\\"scope\\\":[\\\"keyword.other.definition.ini\\\",\\\"punctuation.support.type.property-name.json\\\",\\\"support.type.property-name.json\\\",\\\"punctuation.support.type.property-name.toml\\\",\\\"support.type.property-name.toml\\\",\\\"entity.name.tag.yaml\\\",\\\"punctuation.support.type.property-name.yaml\\\",\\\"support.type.property-name.yaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":[\\\"constant.language.json\\\",\\\"constant.language.yaml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":[\\\"entity.name.type.anchor.yaml\\\",\\\"variable.other.alias.yaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":[\\\"support.type.property-name.table\\\",\\\"entity.name.section.group-title.ini\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"constant.other.time.datetime.offset.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.anchor.yaml\\\",\\\"punctuation.definition.alias.yaml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":\\\"entity.other.document.begin.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":\\\"markup.changed.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":[\\\"meta.diff.header.from-file\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.from-file.diff\\\",\\\"punctuation.definition.to-file.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":\\\"markup.inserted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#40a02b\\\"}},{\\\"scope\\\":\\\"markup.deleted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d20f39\\\"}},{\\\"scope\\\":[\\\"variable.other.env\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":[\\\"string.quoted variable.other.env\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":\\\"support.function.builtin.gdscript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":\\\"constant.language.gdscript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":\\\"comment meta.annotation.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e64553\\\"}},{\\\"scope\\\":\\\"comment meta.annotation.parameters.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":\\\"constant.language.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":\\\"variable.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":\\\"string.unquoted.alias.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dd7878\\\"}},{\\\"scope\\\":\\\"constant.character.enum.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dd7878\\\"}},{\\\"scope\\\":[\\\"keyword.other.doctype\\\",\\\"meta.tag.sgml.doctype punctuation.definition.tag\\\",\\\"meta.tag.metadata.doctype entity.name.tag\\\",\\\"meta.tag.metadata.doctype punctuation.definition.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":[\\\"text.html constant.character.entity\\\",\\\"text.html constant.character.entity punctuation\\\",\\\"constant.character.entity.xml\\\",\\\"constant.character.entity.xml punctuation\\\",\\\"constant.character.entity.js.jsx\\\",\\\"constant.charactger.entity.js.jsx punctuation\\\",\\\"constant.character.entity.tsx\\\",\\\"constant.character.entity.tsx punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d20f39\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":[\\\"support.class.component\\\",\\\"support.class.component.jsx\\\",\\\"support.class.component.tsx\\\",\\\"support.class.component.vue\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.annotation\\\",\\\"storage.type.annotation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":\\\"constant.other.enum.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"storage.modifier.import.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":\\\"comment.block.javadoc.java keyword.other.documentation.javadoc.java\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":\\\"meta.export variable.other.readwrite.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e64553\\\"}},{\\\"scope\\\":[\\\"variable.other.constant.js\\\",\\\"variable.other.constant.ts\\\",\\\"variable.other.property.js\\\",\\\"variable.other.property.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":[\\\"variable.other.jsdoc\\\",\\\"comment.block.documentation variable.other\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#e64553\\\"}},{\\\"scope\\\":\\\"storage.type.class.jsdoc\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":\\\"support.type.object.console.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":[\\\"support.constant.node\\\",\\\"support.type.object.module.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":\\\"storage.modifier.implements\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":[\\\"constant.language.null.js\\\",\\\"constant.language.null.ts\\\",\\\"constant.language.undefined.js\\\",\\\"constant.language.undefined.ts\\\",\\\"support.type.builtin.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":\\\"variable.parameter.generic\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":[\\\"keyword.declaration.function.arrow.js\\\",\\\"storage.type.function.arrow.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"punctuation.decorator.ts\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":[\\\"keyword.operator.expression.in.js\\\",\\\"keyword.operator.expression.in.ts\\\",\\\"keyword.operator.expression.infer.ts\\\",\\\"keyword.operator.expression.instanceof.js\\\",\\\"keyword.operator.expression.instanceof.ts\\\",\\\"keyword.operator.expression.is\\\",\\\"keyword.operator.expression.keyof.ts\\\",\\\"keyword.operator.expression.of.js\\\",\\\"keyword.operator.expression.of.ts\\\",\\\"keyword.operator.expression.typeof.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":\\\"support.function.macro.julia\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"constant.language.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":\\\"constant.other.symbol.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e64553\\\"}},{\\\"scope\\\":\\\"text.tex keyword.control.preamble\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"text.tex support.function.be\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#04a5e5\\\"}},{\\\"scope\\\":\\\"constant.other.general.math.tex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dd7878\\\"}},{\\\"scope\\\":\\\"variable.language.liquid\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":\\\"comment.line.double-dash.documentation.lua storage.type.annotation.lua\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":[\\\"comment.line.double-dash.documentation.lua entity.name.variable.lua\\\",\\\"comment.line.double-dash.documentation.lua variable.lua\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":[\\\"heading.1.markdown punctuation.definition.heading.markdown\\\",\\\"heading.1.markdown\\\",\\\"heading.1.quarto punctuation.definition.heading.quarto\\\",\\\"heading.1.quarto\\\",\\\"markup.heading.atx.1.mdx\\\",\\\"markup.heading.atx.1.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.setext.1.markdown\\\",\\\"markup.heading.heading-0.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d20f39\\\"}},{\\\"scope\\\":[\\\"heading.2.markdown punctuation.definition.heading.markdown\\\",\\\"heading.2.markdown\\\",\\\"heading.2.quarto punctuation.definition.heading.quarto\\\",\\\"heading.2.quarto\\\",\\\"markup.heading.atx.2.mdx\\\",\\\"markup.heading.atx.2.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.setext.2.markdown\\\",\\\"markup.heading.heading-1.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":[\\\"heading.3.markdown punctuation.definition.heading.markdown\\\",\\\"heading.3.markdown\\\",\\\"heading.3.quarto punctuation.definition.heading.quarto\\\",\\\"heading.3.quarto\\\",\\\"markup.heading.atx.3.mdx\\\",\\\"markup.heading.atx.3.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-2.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":[\\\"heading.4.markdown punctuation.definition.heading.markdown\\\",\\\"heading.4.markdown\\\",\\\"heading.4.quarto punctuation.definition.heading.quarto\\\",\\\"heading.4.quarto\\\",\\\"markup.heading.atx.4.mdx\\\",\\\"markup.heading.atx.4.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-3.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#40a02b\\\"}},{\\\"scope\\\":[\\\"heading.5.markdown punctuation.definition.heading.markdown\\\",\\\"heading.5.markdown\\\",\\\"heading.5.quarto punctuation.definition.heading.quarto\\\",\\\"heading.5.quarto\\\",\\\"markup.heading.atx.5.mdx\\\",\\\"markup.heading.atx.5.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-4.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":[\\\"heading.6.markdown punctuation.definition.heading.markdown\\\",\\\"heading.6.markdown\\\",\\\"heading.6.quarto punctuation.definition.heading.quarto\\\",\\\"heading.6.quarto\\\",\\\"markup.heading.atx.6.mdx\\\",\\\"markup.heading.atx.6.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-5.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#d20f39\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#d20f39\\\"}},{\\\"scope\\\":\\\"markup.strikethrough\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\",\\\"foreground\\\":\\\"#6c6f85\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.link\\\",\\\"markup.underline.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":[\\\"text.html.markdown punctuation.definition.link.title\\\",\\\"text.html.quarto punctuation.definition.link.title\\\",\\\"string.other.link.title.markdown\\\",\\\"string.other.link.title.quarto\\\",\\\"markup.link\\\",\\\"punctuation.definition.constant.markdown\\\",\\\"punctuation.definition.constant.quarto\\\",\\\"constant.other.reference.link.markdown\\\",\\\"constant.other.reference.link.quarto\\\",\\\"markup.substitution.attribute-reference\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7287fd\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.raw.markdown\\\",\\\"punctuation.definition.raw.quarto\\\",\\\"markup.inline.raw.string.markdown\\\",\\\"markup.inline.raw.string.quarto\\\",\\\"markup.raw.block.markdown\\\",\\\"markup.raw.block.quarto\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#40a02b\\\"}},{\\\"scope\\\":\\\"fenced_code.block.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#04a5e5\\\"}},{\\\"scope\\\":[\\\"markup.fenced_code.block punctuation.definition\\\",\\\"markup.raw support.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7c7f93\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\",\\\"punctuation.definition.quote.begin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":\\\"meta.separator.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.list.begin.markdown\\\",\\\"punctuation.definition.list.begin.quarto\\\",\\\"markup.list.bullet\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"markup.heading.quarto\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.multipart.nix\\\",\\\"entity.other.attribute-name.single.nix\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":\\\"variable.parameter.name.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":\\\"meta.embedded variable.parameter.name.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#7287fd\\\"}},{\\\"scope\\\":\\\"string.unquoted.path.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":[\\\"support.attribute.builtin\\\",\\\"meta.attribute.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"meta.function.parameters.php punctuation.definition.variable.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e64553\\\"}},{\\\"scope\\\":\\\"constant.language.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":\\\"text.html.php support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#04a5e5\\\"}},{\\\"scope\\\":\\\"keyword.other.phpdoc.php\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"support.variable.magic.python\\\",\\\"meta.function-call.arguments.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":[\\\"support.function.magic.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#04a5e5\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.language.special.self.python\\\",\\\"variable.language.special.self.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#d20f39\\\"}},{\\\"scope\\\":[\\\"keyword.control.flow.python\\\",\\\"keyword.operator.logical.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":\\\"storage.type.function.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":[\\\"support.token.decorator.python\\\",\\\"meta.function.decorator.identifier.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#04a5e5\\\"}},{\\\"scope\\\":[\\\"meta.function-call.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":[\\\"entity.name.function.decorator.python\\\",\\\"punctuation.definition.decorator.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":\\\"constant.character.format.placeholder.other.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":[\\\"support.type.exception.python\\\",\\\"support.function.builtin.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":[\\\"support.type.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":\\\"constant.language.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":[\\\"meta.indexed-name.python\\\",\\\"meta.item-access.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e64553\\\"}},{\\\"scope\\\":\\\"storage.type.string.python\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#40a02b\\\"}},{\\\"scope\\\":\\\"meta.function.parameters.python\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"string.regexp punctuation.definition.string.begin\\\",\\\"string.regexp punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":\\\"keyword.control.anchor.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":\\\"string.regexp.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.regexp\\\",\\\"keyword.other.back-reference.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#40a02b\\\"}},{\\\"scope\\\":\\\"punctuation.definition.character-class.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"constant.other.character-class.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":\\\"constant.other.character-class.range.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dc8a78\\\"}},{\\\"scope\\\":\\\"keyword.operator.quantifier.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"constant.character.numeric.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.no-capture.regexp\\\",\\\"meta.assertion.look-ahead.regexp\\\",\\\"meta.assertion.negative-look-ahead.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":[\\\"meta.annotation.rust\\\",\\\"meta.annotation.rust punctuation\\\",\\\"meta.attribute.rust\\\",\\\"punctuation.definition.attribute.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":[\\\"meta.attribute.rust string.quoted.double.rust\\\",\\\"meta.attribute.rust string.quoted.single.char.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"entity.name.function.macro.rules.rust\\\",\\\"storage.type.module.rust\\\",\\\"storage.modifier.rust\\\",\\\"storage.type.struct.rust\\\",\\\"storage.type.enum.rust\\\",\\\"storage.type.trait.rust\\\",\\\"storage.type.union.rust\\\",\\\"storage.type.impl.rust\\\",\\\"storage.type.rust\\\",\\\"storage.type.function.rust\\\",\\\"storage.type.type.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":\\\"entity.name.type.numeric.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":\\\"meta.generic.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":\\\"entity.name.impl.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"entity.name.module.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":\\\"entity.name.trait.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"storage.type.source.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"entity.name.union.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df8e1d\\\"}},{\\\"scope\\\":\\\"meta.enum.rust storage.type.source.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":[\\\"support.macro.rust\\\",\\\"meta.macro.rust support.function.rust\\\",\\\"entity.name.function.macro.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":[\\\"storage.modifier.lifetime.rust\\\",\\\"entity.name.type.lifetime\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":\\\"string.quoted.double.rust constant.other.placeholder.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":\\\"meta.function.return-type.rust meta.generic.rust storage.type.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":\\\"meta.function.call.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#1e66f5\\\"}},{\\\"scope\\\":\\\"punctuation.brackets.angle.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#04a5e5\\\"}},{\\\"scope\\\":\\\"constant.other.caps.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":[\\\"meta.function.definition.rust variable.other.rust\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e64553\\\"}},{\\\"scope\\\":\\\"meta.function.call.rust variable.other.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}},{\\\"scope\\\":\\\"variable.language.self.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d20f39\\\"}},{\\\"scope\\\":[\\\"variable.other.metavariable.name.rust\\\",\\\"meta.macro.metavariable.rust keyword.operator.macro.dollar.rust\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":[\\\"comment.line.shebang\\\",\\\"comment.line.shebang punctuation.definition.comment\\\",\\\"comment.line.shebang\\\",\\\"punctuation.definition.comment.shebang.shell\\\",\\\"meta.shebang.shell\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ea76cb\\\"}},{\\\"scope\\\":\\\"comment.line.shebang constant.language\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":[\\\"meta.function-call.arguments.shell punctuation.definition.variable.shell\\\",\\\"meta.function-call.arguments.shell punctuation.section.interpolation\\\",\\\"meta.function-call.arguments.shell punctuation.definition.variable.shell\\\",\\\"meta.function-call.arguments.shell punctuation.section.interpolation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d20f39\\\"}},{\\\"scope\\\":\\\"meta.string meta.interpolation.parameter.shell variable.other.readwrite\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fe640b\\\"}},{\\\"scope\\\":[\\\"source.shell punctuation.section.interpolation\\\",\\\"punctuation.definition.evaluation.backticks.shell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#179299\\\"}},{\\\"scope\\\":\\\"entity.name.tag.heredoc.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8839ef\\\"}},{\\\"scope\\\":\\\"string.quoted.double.shell variable.other.normal.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4c4f69\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: catppuccin-macchiato */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBackground\\\":\\\"#00000000\\\",\\\"activityBar.activeBorder\\\":\\\"#00000000\\\",\\\"activityBar.activeFocusBorder\\\":\\\"#00000000\\\",\\\"activityBar.background\\\":\\\"#181926\\\",\\\"activityBar.border\\\":\\\"#00000000\\\",\\\"activityBar.dropBorder\\\":\\\"#c6a0f633\\\",\\\"activityBar.foreground\\\":\\\"#c6a0f6\\\",\\\"activityBar.inactiveForeground\\\":\\\"#6e738d\\\",\\\"activityBarBadge.background\\\":\\\"#c6a0f6\\\",\\\"activityBarBadge.foreground\\\":\\\"#181926\\\",\\\"activityBarTop.activeBorder\\\":\\\"#00000000\\\",\\\"activityBarTop.dropBorder\\\":\\\"#c6a0f633\\\",\\\"activityBarTop.foreground\\\":\\\"#c6a0f6\\\",\\\"activityBarTop.inactiveForeground\\\":\\\"#6e738d\\\",\\\"badge.background\\\":\\\"#494d64\\\",\\\"badge.foreground\\\":\\\"#cad3f5\\\",\\\"banner.background\\\":\\\"#494d64\\\",\\\"banner.foreground\\\":\\\"#cad3f5\\\",\\\"banner.iconForeground\\\":\\\"#cad3f5\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#c6a0f6\\\",\\\"breadcrumb.background\\\":\\\"#24273a\\\",\\\"breadcrumb.focusForeground\\\":\\\"#c6a0f6\\\",\\\"breadcrumb.foreground\\\":\\\"#cad3f5cc\\\",\\\"breadcrumbPicker.background\\\":\\\"#1e2030\\\",\\\"button.background\\\":\\\"#c6a0f6\\\",\\\"button.border\\\":\\\"#00000000\\\",\\\"button.foreground\\\":\\\"#181926\\\",\\\"button.hoverBackground\\\":\\\"#dac1f9\\\",\\\"button.secondaryBackground\\\":\\\"#5b6078\\\",\\\"button.secondaryBorder\\\":\\\"#c6a0f6\\\",\\\"button.secondaryForeground\\\":\\\"#cad3f5\\\",\\\"button.secondaryHoverBackground\\\":\\\"#6a708c\\\",\\\"button.separator\\\":\\\"#00000000\\\",\\\"charts.blue\\\":\\\"#8aadf4\\\",\\\"charts.foreground\\\":\\\"#cad3f5\\\",\\\"charts.green\\\":\\\"#a6da95\\\",\\\"charts.lines\\\":\\\"#b8c0e0\\\",\\\"charts.orange\\\":\\\"#f5a97f\\\",\\\"charts.purple\\\":\\\"#c6a0f6\\\",\\\"charts.red\\\":\\\"#ed8796\\\",\\\"charts.yellow\\\":\\\"#eed49f\\\",\\\"checkbox.background\\\":\\\"#494d64\\\",\\\"checkbox.border\\\":\\\"#00000000\\\",\\\"checkbox.foreground\\\":\\\"#c6a0f6\\\",\\\"commandCenter.activeBackground\\\":\\\"#5b607833\\\",\\\"commandCenter.activeBorder\\\":\\\"#c6a0f6\\\",\\\"commandCenter.activeForeground\\\":\\\"#c6a0f6\\\",\\\"commandCenter.background\\\":\\\"#1e2030\\\",\\\"commandCenter.border\\\":\\\"#00000000\\\",\\\"commandCenter.foreground\\\":\\\"#b8c0e0\\\",\\\"commandCenter.inactiveBorder\\\":\\\"#00000000\\\",\\\"commandCenter.inactiveForeground\\\":\\\"#b8c0e0\\\",\\\"debugConsole.errorForeground\\\":\\\"#ed8796\\\",\\\"debugConsole.infoForeground\\\":\\\"#8aadf4\\\",\\\"debugConsole.sourceForeground\\\":\\\"#f4dbd6\\\",\\\"debugConsole.warningForeground\\\":\\\"#f5a97f\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#cad3f5\\\",\\\"debugExceptionWidget.background\\\":\\\"#181926\\\",\\\"debugExceptionWidget.border\\\":\\\"#c6a0f6\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#5b6078\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#ed879699\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#ed8796\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#5b6078\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#a47487\\\",\\\"debugIcon.continueForeground\\\":\\\"#a6da95\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#5b6078\\\",\\\"debugIcon.pauseForeground\\\":\\\"#8aadf4\\\",\\\"debugIcon.restartForeground\\\":\\\"#8bd5ca\\\",\\\"debugIcon.startForeground\\\":\\\"#a6da95\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#5b6078\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#cad3f5\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#cad3f5\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#c6a0f6\\\",\\\"debugIcon.stopForeground\\\":\\\"#ed8796\\\",\\\"debugTokenExpression.boolean\\\":\\\"#c6a0f6\\\",\\\"debugTokenExpression.error\\\":\\\"#ed8796\\\",\\\"debugTokenExpression.number\\\":\\\"#f5a97f\\\",\\\"debugTokenExpression.string\\\":\\\"#a6da95\\\",\\\"debugToolBar.background\\\":\\\"#181926\\\",\\\"debugToolBar.border\\\":\\\"#00000000\\\",\\\"descriptionForeground\\\":\\\"#cad3f5\\\",\\\"diffEditor.border\\\":\\\"#5b6078\\\",\\\"diffEditor.diagonalFill\\\":\\\"#5b607899\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#a6da9526\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#a6da951a\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#ed879626\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ed87961a\\\",\\\"diffEditorOverview.insertedForeground\\\":\\\"#a6da95cc\\\",\\\"diffEditorOverview.removedForeground\\\":\\\"#ed8796cc\\\",\\\"disabledForeground\\\":\\\"#a5adcb\\\",\\\"dropdown.background\\\":\\\"#1e2030\\\",\\\"dropdown.border\\\":\\\"#c6a0f6\\\",\\\"dropdown.foreground\\\":\\\"#cad3f5\\\",\\\"dropdown.listBackground\\\":\\\"#5b6078\\\",\\\"editor.background\\\":\\\"#24273a\\\",\\\"editor.findMatchBackground\\\":\\\"#604456\\\",\\\"editor.findMatchBorder\\\":\\\"#ed879633\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#455c6d\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#91d7e333\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#455c6d\\\",\\\"editor.findRangeHighlightBorder\\\":\\\"#91d7e333\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#a6da9526\\\",\\\"editor.foldBackground\\\":\\\"#91d7e340\\\",\\\"editor.foreground\\\":\\\"#cad3f5\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#91d7e340\\\",\\\"editor.lineHighlightBackground\\\":\\\"#cad3f512\\\",\\\"editor.lineHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#91d7e340\\\",\\\"editor.rangeHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.selectionBackground\\\":\\\"#939ab740\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#939ab733\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#939ab733\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#eed49f26\\\",\\\"editor.wordHighlightBackground\\\":\\\"#939ab733\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#8aadf433\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#ed8796\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#f5a97f\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#eed49f\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#a6da95\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#7dc4e4\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#c6a0f6\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#ee99a0\\\",\\\"editorBracketMatch.background\\\":\\\"#939ab71a\\\",\\\"editorBracketMatch.border\\\":\\\"#939ab7\\\",\\\"editorCodeLens.foreground\\\":\\\"#8087a2\\\",\\\"editorCursor.background\\\":\\\"#24273a\\\",\\\"editorCursor.foreground\\\":\\\"#f4dbd6\\\",\\\"editorError.background\\\":\\\"#00000000\\\",\\\"editorError.border\\\":\\\"#00000000\\\",\\\"editorError.foreground\\\":\\\"#ed8796\\\",\\\"editorGroup.border\\\":\\\"#5b6078\\\",\\\"editorGroup.dropBackground\\\":\\\"#c6a0f633\\\",\\\"editorGroup.emptyBackground\\\":\\\"#24273a\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#181926\\\",\\\"editorGutter.addedBackground\\\":\\\"#a6da95\\\",\\\"editorGutter.background\\\":\\\"#24273a\\\",\\\"editorGutter.commentGlyphForeground\\\":\\\"#c6a0f6\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#363a4f\\\",\\\"editorGutter.deletedBackground\\\":\\\"#ed8796\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#939ab7\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#eed49f\\\",\\\"editorHoverWidget.background\\\":\\\"#1e2030\\\",\\\"editorHoverWidget.border\\\":\\\"#5b6078\\\",\\\"editorHoverWidget.foreground\\\":\\\"#cad3f5\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#5b6078\\\",\\\"editorIndentGuide.background\\\":\\\"#494d64\\\",\\\"editorInfo.background\\\":\\\"#00000000\\\",\\\"editorInfo.border\\\":\\\"#00000000\\\",\\\"editorInfo.foreground\\\":\\\"#8aadf4\\\",\\\"editorInlayHint.background\\\":\\\"#1e2030bf\\\",\\\"editorInlayHint.foreground\\\":\\\"#5b6078\\\",\\\"editorInlayHint.parameterBackground\\\":\\\"#1e2030bf\\\",\\\"editorInlayHint.parameterForeground\\\":\\\"#a5adcb\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#1e2030bf\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#b8c0e0\\\",\\\"editorLightBulb.foreground\\\":\\\"#eed49f\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#c6a0f6\\\",\\\"editorLineNumber.foreground\\\":\\\"#8087a2\\\",\\\"editorLink.activeForeground\\\":\\\"#c6a0f6\\\",\\\"editorMarkerNavigation.background\\\":\\\"#1e2030\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#ed8796\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#8aadf4\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#f5a97f\\\",\\\"editorOverviewRuler.background\\\":\\\"#1e2030\\\",\\\"editorOverviewRuler.border\\\":\\\"#cad3f512\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#eed49f\\\",\\\"editorRuler.foreground\\\":\\\"#5b6078\\\",\\\"editorStickyScrollHover.background\\\":\\\"#363a4f\\\",\\\"editorSuggestWidget.background\\\":\\\"#1e2030\\\",\\\"editorSuggestWidget.border\\\":\\\"#5b6078\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#cad3f5\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#c6a0f6\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#363a4f\\\",\\\"editorWarning.background\\\":\\\"#00000000\\\",\\\"editorWarning.border\\\":\\\"#00000000\\\",\\\"editorWarning.foreground\\\":\\\"#f5a97f\\\",\\\"editorWhitespace.foreground\\\":\\\"#939ab766\\\",\\\"editorWidget.background\\\":\\\"#1e2030\\\",\\\"editorWidget.foreground\\\":\\\"#cad3f5\\\",\\\"editorWidget.resizeBorder\\\":\\\"#5b6078\\\",\\\"errorForeground\\\":\\\"#ed8796\\\",\\\"errorLens.errorBackground\\\":\\\"#ed879626\\\",\\\"errorLens.errorBackgroundLight\\\":\\\"#ed879626\\\",\\\"errorLens.errorForeground\\\":\\\"#ed8796\\\",\\\"errorLens.errorForegroundLight\\\":\\\"#ed8796\\\",\\\"errorLens.errorMessageBackground\\\":\\\"#ed879626\\\",\\\"errorLens.hintBackground\\\":\\\"#a6da9526\\\",\\\"errorLens.hintBackgroundLight\\\":\\\"#a6da9526\\\",\\\"errorLens.hintForeground\\\":\\\"#a6da95\\\",\\\"errorLens.hintForegroundLight\\\":\\\"#a6da95\\\",\\\"errorLens.hintMessageBackground\\\":\\\"#a6da9526\\\",\\\"errorLens.infoBackground\\\":\\\"#8aadf426\\\",\\\"errorLens.infoBackgroundLight\\\":\\\"#8aadf426\\\",\\\"errorLens.infoForeground\\\":\\\"#8aadf4\\\",\\\"errorLens.infoForegroundLight\\\":\\\"#8aadf4\\\",\\\"errorLens.infoMessageBackground\\\":\\\"#8aadf426\\\",\\\"errorLens.statusBarErrorForeground\\\":\\\"#ed8796\\\",\\\"errorLens.statusBarHintForeground\\\":\\\"#a6da95\\\",\\\"errorLens.statusBarIconErrorForeground\\\":\\\"#ed8796\\\",\\\"errorLens.statusBarIconWarningForeground\\\":\\\"#f5a97f\\\",\\\"errorLens.statusBarInfoForeground\\\":\\\"#8aadf4\\\",\\\"errorLens.statusBarWarningForeground\\\":\\\"#f5a97f\\\",\\\"errorLens.warningBackground\\\":\\\"#f5a97f26\\\",\\\"errorLens.warningBackgroundLight\\\":\\\"#f5a97f26\\\",\\\"errorLens.warningForeground\\\":\\\"#f5a97f\\\",\\\"errorLens.warningForegroundLight\\\":\\\"#f5a97f\\\",\\\"errorLens.warningMessageBackground\\\":\\\"#f5a97f26\\\",\\\"extensionBadge.remoteBackground\\\":\\\"#8aadf4\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#181926\\\",\\\"extensionButton.prominentBackground\\\":\\\"#c6a0f6\\\",\\\"extensionButton.prominentForeground\\\":\\\"#181926\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#dac1f9\\\",\\\"extensionButton.separator\\\":\\\"#24273a\\\",\\\"extensionIcon.preReleaseForeground\\\":\\\"#5b6078\\\",\\\"extensionIcon.sponsorForeground\\\":\\\"#f5bde6\\\",\\\"extensionIcon.starForeground\\\":\\\"#eed49f\\\",\\\"extensionIcon.verifiedForeground\\\":\\\"#a6da95\\\",\\\"focusBorder\\\":\\\"#c6a0f6\\\",\\\"foreground\\\":\\\"#cad3f5\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#a6da95\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#c6a0f6\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#ed8796\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#6e738d\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#eed49f\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#ed8796\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#eed49f\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#8aadf4\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#a6da95\\\",\\\"gitlens.closedAutolinkedIssueIconColor\\\":\\\"#c6a0f6\\\",\\\"gitlens.closedPullRequestIconColor\\\":\\\"#ed8796\\\",\\\"gitlens.decorations.branchAheadForegroundColor\\\":\\\"#a6da95\\\",\\\"gitlens.decorations.branchBehindForegroundColor\\\":\\\"#f5a97f\\\",\\\"gitlens.decorations.branchDivergedForegroundColor\\\":\\\"#eed49f\\\",\\\"gitlens.decorations.branchMissingUpstreamForegroundColor\\\":\\\"#f5a97f\\\",\\\"gitlens.decorations.branchUnpublishedForegroundColor\\\":\\\"#a6da95\\\",\\\"gitlens.decorations.statusMergingOrRebasingConflictForegroundColor\\\":\\\"#ee99a0\\\",\\\"gitlens.decorations.statusMergingOrRebasingForegroundColor\\\":\\\"#eed49f\\\",\\\"gitlens.decorations.workspaceCurrentForegroundColor\\\":\\\"#c6a0f6\\\",\\\"gitlens.decorations.workspaceRepoMissingForegroundColor\\\":\\\"#a5adcb\\\",\\\"gitlens.decorations.workspaceRepoOpenForegroundColor\\\":\\\"#c6a0f6\\\",\\\"gitlens.decorations.worktreeHasUncommittedChangesForegroundColor\\\":\\\"#f5a97f\\\",\\\"gitlens.decorations.worktreeMissingForegroundColor\\\":\\\"#ee99a0\\\",\\\"gitlens.graphChangesColumnAddedColor\\\":\\\"#a6da95\\\",\\\"gitlens.graphChangesColumnDeletedColor\\\":\\\"#ed8796\\\",\\\"gitlens.graphLane10Color\\\":\\\"#f5bde6\\\",\\\"gitlens.graphLane1Color\\\":\\\"#c6a0f6\\\",\\\"gitlens.graphLane2Color\\\":\\\"#eed49f\\\",\\\"gitlens.graphLane3Color\\\":\\\"#8aadf4\\\",\\\"gitlens.graphLane4Color\\\":\\\"#f0c6c6\\\",\\\"gitlens.graphLane5Color\\\":\\\"#a6da95\\\",\\\"gitlens.graphLane6Color\\\":\\\"#b7bdf8\\\",\\\"gitlens.graphLane7Color\\\":\\\"#f4dbd6\\\",\\\"gitlens.graphLane8Color\\\":\\\"#ed8796\\\",\\\"gitlens.graphLane9Color\\\":\\\"#8bd5ca\\\",\\\"gitlens.graphMinimapMarkerHeadColor\\\":\\\"#a6da95\\\",\\\"gitlens.graphMinimapMarkerHighlightsColor\\\":\\\"#eed49f\\\",\\\"gitlens.graphMinimapMarkerLocalBranchesColor\\\":\\\"#8aadf4\\\",\\\"gitlens.graphMinimapMarkerRemoteBranchesColor\\\":\\\"#739df2\\\",\\\"gitlens.graphMinimapMarkerStashesColor\\\":\\\"#c6a0f6\\\",\\\"gitlens.graphMinimapMarkerTagsColor\\\":\\\"#f0c6c6\\\",\\\"gitlens.graphMinimapMarkerUpstreamColor\\\":\\\"#96d382\\\",\\\"gitlens.graphScrollMarkerHeadColor\\\":\\\"#a6da95\\\",\\\"gitlens.graphScrollMarkerHighlightsColor\\\":\\\"#eed49f\\\",\\\"gitlens.graphScrollMarkerLocalBranchesColor\\\":\\\"#8aadf4\\\",\\\"gitlens.graphScrollMarkerRemoteBranchesColor\\\":\\\"#739df2\\\",\\\"gitlens.graphScrollMarkerStashesColor\\\":\\\"#c6a0f6\\\",\\\"gitlens.graphScrollMarkerTagsColor\\\":\\\"#f0c6c6\\\",\\\"gitlens.graphScrollMarkerUpstreamColor\\\":\\\"#96d382\\\",\\\"gitlens.gutterBackgroundColor\\\":\\\"#363a4f4d\\\",\\\"gitlens.gutterForegroundColor\\\":\\\"#cad3f5\\\",\\\"gitlens.gutterUncommittedForegroundColor\\\":\\\"#c6a0f6\\\",\\\"gitlens.lineHighlightBackgroundColor\\\":\\\"#c6a0f626\\\",\\\"gitlens.lineHighlightOverviewRulerColor\\\":\\\"#c6a0f6cc\\\",\\\"gitlens.mergedPullRequestIconColor\\\":\\\"#c6a0f6\\\",\\\"gitlens.openAutolinkedIssueIconColor\\\":\\\"#a6da95\\\",\\\"gitlens.openPullRequestIconColor\\\":\\\"#a6da95\\\",\\\"gitlens.trailingLineBackgroundColor\\\":\\\"#00000000\\\",\\\"gitlens.trailingLineForegroundColor\\\":\\\"#cad3f54d\\\",\\\"gitlens.unpublishedChangesIconColor\\\":\\\"#a6da95\\\",\\\"gitlens.unpublishedCommitIconColor\\\":\\\"#a6da95\\\",\\\"gitlens.unpulledChangesIconColor\\\":\\\"#f5a97f\\\",\\\"icon.foreground\\\":\\\"#c6a0f6\\\",\\\"input.background\\\":\\\"#363a4f\\\",\\\"input.border\\\":\\\"#00000000\\\",\\\"input.foreground\\\":\\\"#cad3f5\\\",\\\"input.placeholderForeground\\\":\\\"#cad3f573\\\",\\\"inputOption.activeBackground\\\":\\\"#5b6078\\\",\\\"inputOption.activeBorder\\\":\\\"#c6a0f6\\\",\\\"inputOption.activeForeground\\\":\\\"#cad3f5\\\",\\\"inputValidation.errorBackground\\\":\\\"#ed8796\\\",\\\"inputValidation.errorBorder\\\":\\\"#18192633\\\",\\\"inputValidation.errorForeground\\\":\\\"#181926\\\",\\\"inputValidation.infoBackground\\\":\\\"#8aadf4\\\",\\\"inputValidation.infoBorder\\\":\\\"#18192633\\\",\\\"inputValidation.infoForeground\\\":\\\"#181926\\\",\\\"inputValidation.warningBackground\\\":\\\"#f5a97f\\\",\\\"inputValidation.warningBorder\\\":\\\"#18192633\\\",\\\"inputValidation.warningForeground\\\":\\\"#181926\\\",\\\"issues.closed\\\":\\\"#c6a0f6\\\",\\\"issues.newIssueDecoration\\\":\\\"#f4dbd6\\\",\\\"issues.open\\\":\\\"#a6da95\\\",\\\"list.activeSelectionBackground\\\":\\\"#363a4f\\\",\\\"list.activeSelectionForeground\\\":\\\"#cad3f5\\\",\\\"list.dropBackground\\\":\\\"#c6a0f633\\\",\\\"list.focusAndSelectionBackground\\\":\\\"#494d64\\\",\\\"list.focusBackground\\\":\\\"#363a4f\\\",\\\"list.focusForeground\\\":\\\"#cad3f5\\\",\\\"list.focusOutline\\\":\\\"#00000000\\\",\\\"list.highlightForeground\\\":\\\"#c6a0f6\\\",\\\"list.hoverBackground\\\":\\\"#363a4f80\\\",\\\"list.hoverForeground\\\":\\\"#cad3f5\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#363a4f\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#cad3f5\\\",\\\"list.warningForeground\\\":\\\"#f5a97f\\\",\\\"listFilterWidget.background\\\":\\\"#494d64\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#ed8796\\\",\\\"listFilterWidget.outline\\\":\\\"#00000000\\\",\\\"menu.background\\\":\\\"#24273a\\\",\\\"menu.border\\\":\\\"#24273a80\\\",\\\"menu.foreground\\\":\\\"#cad3f5\\\",\\\"menu.selectionBackground\\\":\\\"#5b6078\\\",\\\"menu.selectionBorder\\\":\\\"#00000000\\\",\\\"menu.selectionForeground\\\":\\\"#cad3f5\\\",\\\"menu.separatorBackground\\\":\\\"#5b6078\\\",\\\"menubar.selectionBackground\\\":\\\"#494d64\\\",\\\"menubar.selectionForeground\\\":\\\"#cad3f5\\\",\\\"merge.commonContentBackground\\\":\\\"#494d64\\\",\\\"merge.commonHeaderBackground\\\":\\\"#5b6078\\\",\\\"merge.currentContentBackground\\\":\\\"#a6da9533\\\",\\\"merge.currentHeaderBackground\\\":\\\"#a6da9566\\\",\\\"merge.incomingContentBackground\\\":\\\"#8aadf433\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#8aadf466\\\",\\\"minimap.background\\\":\\\"#1e203080\\\",\\\"minimap.errorHighlight\\\":\\\"#ed8796bf\\\",\\\"minimap.findMatchHighlight\\\":\\\"#91d7e34d\\\",\\\"minimap.selectionHighlight\\\":\\\"#5b6078bf\\\",\\\"minimap.selectionOccurrenceHighlight\\\":\\\"#5b6078bf\\\",\\\"minimap.warningHighlight\\\":\\\"#f5a97fbf\\\",\\\"minimapGutter.addedBackground\\\":\\\"#a6da95bf\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#ed8796bf\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#eed49fbf\\\",\\\"minimapSlider.activeBackground\\\":\\\"#c6a0f699\\\",\\\"minimapSlider.background\\\":\\\"#c6a0f633\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#c6a0f666\\\",\\\"notificationCenter.border\\\":\\\"#c6a0f6\\\",\\\"notificationCenterHeader.background\\\":\\\"#1e2030\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#cad3f5\\\",\\\"notificationLink.foreground\\\":\\\"#8aadf4\\\",\\\"notificationToast.border\\\":\\\"#c6a0f6\\\",\\\"notifications.background\\\":\\\"#1e2030\\\",\\\"notifications.border\\\":\\\"#c6a0f6\\\",\\\"notifications.foreground\\\":\\\"#cad3f5\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#ed8796\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#8aadf4\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#f5a97f\\\",\\\"panel.background\\\":\\\"#24273a\\\",\\\"panel.border\\\":\\\"#5b6078\\\",\\\"panelSection.border\\\":\\\"#5b6078\\\",\\\"panelSection.dropBackground\\\":\\\"#c6a0f633\\\",\\\"panelTitle.activeBorder\\\":\\\"#c6a0f6\\\",\\\"panelTitle.activeForeground\\\":\\\"#cad3f5\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#a5adcb\\\",\\\"peekView.border\\\":\\\"#c6a0f6\\\",\\\"peekViewEditor.background\\\":\\\"#1e2030\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#91d7e34d\\\",\\\"peekViewEditor.matchHighlightBorder\\\":\\\"#00000000\\\",\\\"peekViewEditorGutter.background\\\":\\\"#1e2030\\\",\\\"peekViewResult.background\\\":\\\"#1e2030\\\",\\\"peekViewResult.fileForeground\\\":\\\"#cad3f5\\\",\\\"peekViewResult.lineForeground\\\":\\\"#cad3f5\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#91d7e34d\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#363a4f\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#cad3f5\\\",\\\"peekViewTitle.background\\\":\\\"#24273a\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#b8c0e0b3\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#cad3f5\\\",\\\"pickerGroup.border\\\":\\\"#c6a0f6\\\",\\\"pickerGroup.foreground\\\":\\\"#c6a0f6\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#ed8796\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#8aadf4\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#f5a97f\\\",\\\"progressBar.background\\\":\\\"#c6a0f6\\\",\\\"pullRequests.closed\\\":\\\"#ed8796\\\",\\\"pullRequests.draft\\\":\\\"#939ab7\\\",\\\"pullRequests.merged\\\":\\\"#c6a0f6\\\",\\\"pullRequests.notification\\\":\\\"#cad3f5\\\",\\\"pullRequests.open\\\":\\\"#a6da95\\\",\\\"sash.hoverBorder\\\":\\\"#c6a0f6\\\",\\\"scrollbar.shadow\\\":\\\"#181926\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#363a4f66\\\",\\\"scrollbarSlider.background\\\":\\\"#5b607880\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#6e738d\\\",\\\"selection.background\\\":\\\"#c6a0f666\\\",\\\"settings.dropdownBackground\\\":\\\"#494d64\\\",\\\"settings.dropdownListBorder\\\":\\\"#00000000\\\",\\\"settings.focusedRowBackground\\\":\\\"#5b607833\\\",\\\"settings.headerForeground\\\":\\\"#cad3f5\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#c6a0f6\\\",\\\"settings.numberInputBackground\\\":\\\"#494d64\\\",\\\"settings.numberInputBorder\\\":\\\"#00000000\\\",\\\"settings.textInputBackground\\\":\\\"#494d64\\\",\\\"settings.textInputBorder\\\":\\\"#00000000\\\",\\\"sideBar.background\\\":\\\"#1e2030\\\",\\\"sideBar.border\\\":\\\"#00000000\\\",\\\"sideBar.dropBackground\\\":\\\"#c6a0f633\\\",\\\"sideBar.foreground\\\":\\\"#cad3f5\\\",\\\"sideBarSectionHeader.background\\\":\\\"#1e2030\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#cad3f5\\\",\\\"sideBarTitle.foreground\\\":\\\"#c6a0f6\\\",\\\"statusBar.background\\\":\\\"#181926\\\",\\\"statusBar.border\\\":\\\"#00000000\\\",\\\"statusBar.debuggingBackground\\\":\\\"#f5a97f\\\",\\\"statusBar.debuggingBorder\\\":\\\"#00000000\\\",\\\"statusBar.debuggingForeground\\\":\\\"#181926\\\",\\\"statusBar.foreground\\\":\\\"#cad3f5\\\",\\\"statusBar.noFolderBackground\\\":\\\"#181926\\\",\\\"statusBar.noFolderBorder\\\":\\\"#00000000\\\",\\\"statusBar.noFolderForeground\\\":\\\"#cad3f5\\\",\\\"statusBarItem.activeBackground\\\":\\\"#5b607866\\\",\\\"statusBarItem.errorBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.errorForeground\\\":\\\"#ed8796\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#5b607833\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.prominentForeground\\\":\\\"#c6a0f6\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#5b607833\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#8aadf4\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#181926\\\",\\\"statusBarItem.warningBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.warningForeground\\\":\\\"#f5a97f\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#f5a97f\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#c6a0f6\\\",\\\"symbolIcon.classForeground\\\":\\\"#eed49f\\\",\\\"symbolIcon.colorForeground\\\":\\\"#f5bde6\\\",\\\"symbolIcon.constantForeground\\\":\\\"#f5a97f\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#b7bdf8\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#eed49f\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#eed49f\\\",\\\"symbolIcon.eventForeground\\\":\\\"#f5bde6\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#cad3f5\\\",\\\"symbolIcon.fileForeground\\\":\\\"#c6a0f6\\\",\\\"symbolIcon.folderForeground\\\":\\\"#c6a0f6\\\",\\\"symbolIcon.functionForeground\\\":\\\"#8aadf4\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#eed49f\\\",\\\"symbolIcon.keyForeground\\\":\\\"#8bd5ca\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#c6a0f6\\\",\\\"symbolIcon.methodForeground\\\":\\\"#8aadf4\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#cad3f5\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#eed49f\\\",\\\"symbolIcon.nullForeground\\\":\\\"#ee99a0\\\",\\\"symbolIcon.numberForeground\\\":\\\"#f5a97f\\\",\\\"symbolIcon.objectForeground\\\":\\\"#eed49f\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#8bd5ca\\\",\\\"symbolIcon.packageForeground\\\":\\\"#f0c6c6\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#ee99a0\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#eed49f\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#f0c6c6\\\",\\\"symbolIcon.stringForeground\\\":\\\"#a6da95\\\",\\\"symbolIcon.structForeground\\\":\\\"#8bd5ca\\\",\\\"symbolIcon.textForeground\\\":\\\"#cad3f5\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#ee99a0\\\",\\\"symbolIcon.unitForeground\\\":\\\"#cad3f5\\\",\\\"symbolIcon.variableForeground\\\":\\\"#cad3f5\\\",\\\"tab.activeBackground\\\":\\\"#24273a\\\",\\\"tab.activeBorder\\\":\\\"#00000000\\\",\\\"tab.activeBorderTop\\\":\\\"#c6a0f6\\\",\\\"tab.activeForeground\\\":\\\"#c6a0f6\\\",\\\"tab.activeModifiedBorder\\\":\\\"#eed49f\\\",\\\"tab.border\\\":\\\"#1e2030\\\",\\\"tab.hoverBackground\\\":\\\"#2e324a\\\",\\\"tab.hoverBorder\\\":\\\"#00000000\\\",\\\"tab.hoverForeground\\\":\\\"#c6a0f6\\\",\\\"tab.inactiveBackground\\\":\\\"#1e2030\\\",\\\"tab.inactiveForeground\\\":\\\"#6e738d\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#eed49f4d\\\",\\\"tab.lastPinnedBorder\\\":\\\"#c6a0f6\\\",\\\"tab.unfocusedActiveBackground\\\":\\\"#1e2030\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#00000000\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#c6a0f64d\\\",\\\"tab.unfocusedInactiveBackground\\\":\\\"#141620\\\",\\\"table.headerBackground\\\":\\\"#363a4f\\\",\\\"table.headerForeground\\\":\\\"#cad3f5\\\",\\\"terminal.ansiBlack\\\":\\\"#494d64\\\",\\\"terminal.ansiBlue\\\":\\\"#8aadf4\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#5b6078\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#78a1f6\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#63cbc0\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#8ccf7f\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#f2a9dd\\\",\\\"terminal.ansiBrightRed\\\":\\\"#ec7486\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#b8c0e0\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#e1c682\\\",\\\"terminal.ansiCyan\\\":\\\"#8bd5ca\\\",\\\"terminal.ansiGreen\\\":\\\"#a6da95\\\",\\\"terminal.ansiMagenta\\\":\\\"#f5bde6\\\",\\\"terminal.ansiRed\\\":\\\"#ed8796\\\",\\\"terminal.ansiWhite\\\":\\\"#a5adcb\\\",\\\"terminal.ansiYellow\\\":\\\"#eed49f\\\",\\\"terminal.border\\\":\\\"#5b6078\\\",\\\"terminal.dropBackground\\\":\\\"#c6a0f633\\\",\\\"terminal.foreground\\\":\\\"#cad3f5\\\",\\\"terminal.inactiveSelectionBackground\\\":\\\"#5b607880\\\",\\\"terminal.selectionBackground\\\":\\\"#5b6078\\\",\\\"terminal.tab.activeBorder\\\":\\\"#c6a0f6\\\",\\\"terminalCommandDecoration.defaultBackground\\\":\\\"#5b6078\\\",\\\"terminalCommandDecoration.errorBackground\\\":\\\"#ed8796\\\",\\\"terminalCommandDecoration.successBackground\\\":\\\"#a6da95\\\",\\\"terminalCursor.background\\\":\\\"#24273a\\\",\\\"terminalCursor.foreground\\\":\\\"#f4dbd6\\\",\\\"textBlockQuote.background\\\":\\\"#1e2030\\\",\\\"textBlockQuote.border\\\":\\\"#181926\\\",\\\"textCodeBlock.background\\\":\\\"#24273a\\\",\\\"textLink.activeForeground\\\":\\\"#91d7e3\\\",\\\"textLink.foreground\\\":\\\"#8aadf4\\\",\\\"textPreformat.foreground\\\":\\\"#cad3f5\\\",\\\"textSeparator.foreground\\\":\\\"#c6a0f6\\\",\\\"titleBar.activeBackground\\\":\\\"#181926\\\",\\\"titleBar.activeForeground\\\":\\\"#cad3f5\\\",\\\"titleBar.border\\\":\\\"#00000000\\\",\\\"titleBar.inactiveBackground\\\":\\\"#181926\\\",\\\"titleBar.inactiveForeground\\\":\\\"#cad3f580\\\",\\\"tree.inactiveIndentGuidesStroke\\\":\\\"#494d64\\\",\\\"tree.indentGuidesStroke\\\":\\\"#939ab7\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#24273a4d\\\",\\\"welcomePage.progress.background\\\":\\\"#181926\\\",\\\"welcomePage.progress.foreground\\\":\\\"#c6a0f6\\\",\\\"welcomePage.tileBackground\\\":\\\"#1e2030\\\",\\\"widget.shadow\\\":\\\"#1e203080\\\",\\\"window.activeBorder\\\":\\\"#00000000\\\",\\\"window.inactiveBorder\\\":\\\"#00000000\\\"},\\\"displayName\\\":\\\"Catppuccin Macchiato\\\",\\\"name\\\":\\\"catppuccin-macchiato\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"boolean\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"},\\\"builtinAttribute.attribute.library:rust\\\":{\\\"foreground\\\":\\\"#8aadf4\\\"},\\\"class.builtin:python\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"},\\\"class:python\\\":{\\\"foreground\\\":\\\"#eed49f\\\"},\\\"constant.builtin.readonly:nix\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"},\\\"enumMember\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"},\\\"function.decorator:python\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"},\\\"generic.attribute:rust\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"},\\\"heading\\\":{\\\"foreground\\\":\\\"#ed8796\\\"},\\\"number\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"},\\\"pol\\\":{\\\"foreground\\\":\\\"#f0c6c6\\\"},\\\"property.readonly:javascript\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"},\\\"property.readonly:javascriptreact\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"},\\\"property.readonly:typescript\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"},\\\"property.readonly:typescriptreact\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"},\\\"selfKeyword\\\":{\\\"foreground\\\":\\\"#ed8796\\\"},\\\"text.emph\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ed8796\\\"},\\\"text.math\\\":{\\\"foreground\\\":\\\"#f0c6c6\\\"},\\\"text.strong\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#ed8796\\\"},\\\"tomlArrayKey\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8aadf4\\\"},\\\"tomlTableKey\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8aadf4\\\"},\\\"type.defaultLibrary:go\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"},\\\"variable.defaultLibrary\\\":{\\\"foreground\\\":\\\"#ee99a0\\\"},\\\"variable.readonly.defaultLibrary:go\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"},\\\"variable.readonly:javascript\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"},\\\"variable.readonly:javascriptreact\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"},\\\"variable.readonly:scala\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"},\\\"variable.readonly:typescript\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"},\\\"variable.readonly:typescriptreact\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"},\\\"variable.typeHint:python\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"text\\\",\\\"source\\\",\\\"variable.other.readwrite\\\",\\\"punctuation.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":\\\"punctuation\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#939ab7\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#6e738d\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6da95\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"variable.other.constant\\\",\\\"entity.name.constant\\\",\\\"constant.language.boolean\\\",\\\"constant.language.false\\\",\\\"constant.language.true\\\",\\\"keyword.other.unit.user-defined\\\",\\\"keyword.other.unit.suffix.floating-point\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"keyword.operator.word\\\",\\\"keyword.operator.new\\\",\\\"variable.language.super\\\",\\\"support.type.primitive\\\",\\\"storage.type\\\",\\\"storage.modifier\\\",\\\"punctuation.definition.keyword\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":\\\"entity.name.tag.documentation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\",\\\"punctuation.accessor\\\",\\\"punctuation.definition.generic\\\",\\\"meta.function.closure punctuation.section.parameters\\\",\\\"punctuation.definition.tag\\\",\\\"punctuation.separator.key-value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.function-call.method\\\",\\\"support.function\\\",\\\"support.function.misc\\\",\\\"variable.function\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":[\\\"entity.name.class\\\",\\\"entity.other.inherited-class\\\",\\\"support.class\\\",\\\"meta.function-call.constructor\\\",\\\"entity.name.struct\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"entity.name.enum\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":[\\\"meta.enum variable.other.readwrite\\\",\\\"variable.other.enummember\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"meta.property.object\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":[\\\"meta.type\\\",\\\"meta.type-alias\\\",\\\"support.type\\\",\\\"entity.name.type\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":[\\\"meta.annotation variable.function\\\",\\\"meta.annotation variable.annotation.function\\\",\\\"meta.annotation punctuation.definition.annotation\\\",\\\"meta.decorator\\\",\\\"punctuation.decorator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\",\\\"meta.function.parameters\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ee99a0\\\"}},{\\\"scope\\\":[\\\"constant.language\\\",\\\"support.function.builtin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ed8796\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.documentation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ed8796\\\"}},{\\\"scope\\\":[\\\"keyword.control.directive\\\",\\\"punctuation.definition.directive\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"punctuation.definition.typeparameters\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91d7e3\\\"}},{\\\"scope\\\":\\\"entity.name.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":[\\\"variable.language.this\\\",\\\"variable.language.this punctuation.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ed8796\\\"}},{\\\"scope\\\":\\\"variable.object.property\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":[\\\"string.template variable\\\",\\\"string variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":\\\"keyword.operator.new\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"storage.modifier.specifier.extern.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":[\\\"entity.name.scope-resolution.template.call.cpp\\\",\\\"entity.name.scope-resolution.parameter.cpp\\\",\\\"entity.name.scope-resolution.cpp\\\",\\\"entity.name.scope-resolution.function.definition.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"storage.type.class.doxygen\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"storage.modifier.reference.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"meta.interpolation.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":\\\"comment.block.documentation.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":[\\\"source.css entity.other.attribute-name.class.css\\\",\\\"entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"punctuation.separator.operator.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"source.css entity.other.attribute-name.pseudo-class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"source.css constant.other.unicode-range\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":\\\"source.css variable.parameter.url\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#a6da95\\\"}},{\\\"scope\\\":[\\\"support.type.vendored.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91d7e3\\\"}},{\\\"scope\\\":[\\\"source.css meta.property-value variable\\\",\\\"source.css meta.property-value variable.other.less\\\",\\\"source.css meta.property-value variable.other.less punctuation.definition.variable.less\\\",\\\"meta.definition.variable.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ee99a0\\\"}},{\\\"scope\\\":[\\\"source.css meta.property-list variable\\\",\\\"meta.property-list variable.other.less\\\",\\\"meta.property-list variable.other.less punctuation.definition.variable.less\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":\\\"keyword.other.unit.percentage.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":\\\"source.css meta.attribute-selector\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a6da95\\\"}},{\\\"scope\\\":[\\\"keyword.other.definition.ini\\\",\\\"punctuation.support.type.property-name.json\\\",\\\"support.type.property-name.json\\\",\\\"punctuation.support.type.property-name.toml\\\",\\\"support.type.property-name.toml\\\",\\\"entity.name.tag.yaml\\\",\\\"punctuation.support.type.property-name.yaml\\\",\\\"support.type.property-name.yaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":[\\\"constant.language.json\\\",\\\"constant.language.yaml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":[\\\"entity.name.type.anchor.yaml\\\",\\\"variable.other.alias.yaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":[\\\"support.type.property-name.table\\\",\\\"entity.name.section.group-title.ini\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"constant.other.time.datetime.offset.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.anchor.yaml\\\",\\\"punctuation.definition.alias.yaml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":\\\"entity.other.document.begin.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":\\\"markup.changed.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":[\\\"meta.diff.header.from-file\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.from-file.diff\\\",\\\"punctuation.definition.to-file.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":\\\"markup.inserted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a6da95\\\"}},{\\\"scope\\\":\\\"markup.deleted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ed8796\\\"}},{\\\"scope\\\":[\\\"variable.other.env\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":[\\\"string.quoted variable.other.env\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":\\\"support.function.builtin.gdscript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":\\\"constant.language.gdscript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":\\\"comment meta.annotation.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ee99a0\\\"}},{\\\"scope\\\":\\\"comment meta.annotation.parameters.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":\\\"constant.language.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":\\\"variable.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":\\\"string.unquoted.alias.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f0c6c6\\\"}},{\\\"scope\\\":\\\"constant.character.enum.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f0c6c6\\\"}},{\\\"scope\\\":[\\\"keyword.other.doctype\\\",\\\"meta.tag.sgml.doctype punctuation.definition.tag\\\",\\\"meta.tag.metadata.doctype entity.name.tag\\\",\\\"meta.tag.metadata.doctype punctuation.definition.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":[\\\"text.html constant.character.entity\\\",\\\"text.html constant.character.entity punctuation\\\",\\\"constant.character.entity.xml\\\",\\\"constant.character.entity.xml punctuation\\\",\\\"constant.character.entity.js.jsx\\\",\\\"constant.charactger.entity.js.jsx punctuation\\\",\\\"constant.character.entity.tsx\\\",\\\"constant.character.entity.tsx punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ed8796\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":[\\\"support.class.component\\\",\\\"support.class.component.jsx\\\",\\\"support.class.component.tsx\\\",\\\"support.class.component.vue\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.annotation\\\",\\\"storage.type.annotation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":\\\"constant.other.enum.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"storage.modifier.import.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":\\\"comment.block.javadoc.java keyword.other.documentation.javadoc.java\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":\\\"meta.export variable.other.readwrite.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ee99a0\\\"}},{\\\"scope\\\":[\\\"variable.other.constant.js\\\",\\\"variable.other.constant.ts\\\",\\\"variable.other.property.js\\\",\\\"variable.other.property.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":[\\\"variable.other.jsdoc\\\",\\\"comment.block.documentation variable.other\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ee99a0\\\"}},{\\\"scope\\\":\\\"storage.type.class.jsdoc\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":\\\"support.type.object.console.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":[\\\"support.constant.node\\\",\\\"support.type.object.module.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":\\\"storage.modifier.implements\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":[\\\"constant.language.null.js\\\",\\\"constant.language.null.ts\\\",\\\"constant.language.undefined.js\\\",\\\"constant.language.undefined.ts\\\",\\\"support.type.builtin.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":\\\"variable.parameter.generic\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":[\\\"keyword.declaration.function.arrow.js\\\",\\\"storage.type.function.arrow.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"punctuation.decorator.ts\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":[\\\"keyword.operator.expression.in.js\\\",\\\"keyword.operator.expression.in.ts\\\",\\\"keyword.operator.expression.infer.ts\\\",\\\"keyword.operator.expression.instanceof.js\\\",\\\"keyword.operator.expression.instanceof.ts\\\",\\\"keyword.operator.expression.is\\\",\\\"keyword.operator.expression.keyof.ts\\\",\\\"keyword.operator.expression.of.js\\\",\\\"keyword.operator.expression.of.ts\\\",\\\"keyword.operator.expression.typeof.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":\\\"support.function.macro.julia\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"constant.language.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":\\\"constant.other.symbol.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ee99a0\\\"}},{\\\"scope\\\":\\\"text.tex keyword.control.preamble\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"text.tex support.function.be\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91d7e3\\\"}},{\\\"scope\\\":\\\"constant.other.general.math.tex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f0c6c6\\\"}},{\\\"scope\\\":\\\"variable.language.liquid\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":\\\"comment.line.double-dash.documentation.lua storage.type.annotation.lua\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":[\\\"comment.line.double-dash.documentation.lua entity.name.variable.lua\\\",\\\"comment.line.double-dash.documentation.lua variable.lua\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":[\\\"heading.1.markdown punctuation.definition.heading.markdown\\\",\\\"heading.1.markdown\\\",\\\"heading.1.quarto punctuation.definition.heading.quarto\\\",\\\"heading.1.quarto\\\",\\\"markup.heading.atx.1.mdx\\\",\\\"markup.heading.atx.1.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.setext.1.markdown\\\",\\\"markup.heading.heading-0.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ed8796\\\"}},{\\\"scope\\\":[\\\"heading.2.markdown punctuation.definition.heading.markdown\\\",\\\"heading.2.markdown\\\",\\\"heading.2.quarto punctuation.definition.heading.quarto\\\",\\\"heading.2.quarto\\\",\\\"markup.heading.atx.2.mdx\\\",\\\"markup.heading.atx.2.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.setext.2.markdown\\\",\\\"markup.heading.heading-1.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":[\\\"heading.3.markdown punctuation.definition.heading.markdown\\\",\\\"heading.3.markdown\\\",\\\"heading.3.quarto punctuation.definition.heading.quarto\\\",\\\"heading.3.quarto\\\",\\\"markup.heading.atx.3.mdx\\\",\\\"markup.heading.atx.3.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-2.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":[\\\"heading.4.markdown punctuation.definition.heading.markdown\\\",\\\"heading.4.markdown\\\",\\\"heading.4.quarto punctuation.definition.heading.quarto\\\",\\\"heading.4.quarto\\\",\\\"markup.heading.atx.4.mdx\\\",\\\"markup.heading.atx.4.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-3.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6da95\\\"}},{\\\"scope\\\":[\\\"heading.5.markdown punctuation.definition.heading.markdown\\\",\\\"heading.5.markdown\\\",\\\"heading.5.quarto punctuation.definition.heading.quarto\\\",\\\"heading.5.quarto\\\",\\\"markup.heading.atx.5.mdx\\\",\\\"markup.heading.atx.5.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-4.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":[\\\"heading.6.markdown punctuation.definition.heading.markdown\\\",\\\"heading.6.markdown\\\",\\\"heading.6.quarto punctuation.definition.heading.quarto\\\",\\\"heading.6.quarto\\\",\\\"markup.heading.atx.6.mdx\\\",\\\"markup.heading.atx.6.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-5.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#ed8796\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ed8796\\\"}},{\\\"scope\\\":\\\"markup.strikethrough\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\",\\\"foreground\\\":\\\"#a5adcb\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.link\\\",\\\"markup.underline.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":[\\\"text.html.markdown punctuation.definition.link.title\\\",\\\"text.html.quarto punctuation.definition.link.title\\\",\\\"string.other.link.title.markdown\\\",\\\"string.other.link.title.quarto\\\",\\\"markup.link\\\",\\\"punctuation.definition.constant.markdown\\\",\\\"punctuation.definition.constant.quarto\\\",\\\"constant.other.reference.link.markdown\\\",\\\"constant.other.reference.link.quarto\\\",\\\"markup.substitution.attribute-reference\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b7bdf8\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.raw.markdown\\\",\\\"punctuation.definition.raw.quarto\\\",\\\"markup.inline.raw.string.markdown\\\",\\\"markup.inline.raw.string.quarto\\\",\\\"markup.raw.block.markdown\\\",\\\"markup.raw.block.quarto\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6da95\\\"}},{\\\"scope\\\":\\\"fenced_code.block.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91d7e3\\\"}},{\\\"scope\\\":[\\\"markup.fenced_code.block punctuation.definition\\\",\\\"markup.raw support.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#939ab7\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\",\\\"punctuation.definition.quote.begin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":\\\"meta.separator.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.list.begin.markdown\\\",\\\"punctuation.definition.list.begin.quarto\\\",\\\"markup.list.bullet\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"markup.heading.quarto\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.multipart.nix\\\",\\\"entity.other.attribute-name.single.nix\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":\\\"variable.parameter.name.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":\\\"meta.embedded variable.parameter.name.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#b7bdf8\\\"}},{\\\"scope\\\":\\\"string.unquoted.path.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":[\\\"support.attribute.builtin\\\",\\\"meta.attribute.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"meta.function.parameters.php punctuation.definition.variable.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ee99a0\\\"}},{\\\"scope\\\":\\\"constant.language.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":\\\"text.html.php support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91d7e3\\\"}},{\\\"scope\\\":\\\"keyword.other.phpdoc.php\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"support.variable.magic.python\\\",\\\"meta.function-call.arguments.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":[\\\"support.function.magic.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#91d7e3\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.language.special.self.python\\\",\\\"variable.language.special.self.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ed8796\\\"}},{\\\"scope\\\":[\\\"keyword.control.flow.python\\\",\\\"keyword.operator.logical.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":\\\"storage.type.function.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":[\\\"support.token.decorator.python\\\",\\\"meta.function.decorator.identifier.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91d7e3\\\"}},{\\\"scope\\\":[\\\"meta.function-call.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":[\\\"entity.name.function.decorator.python\\\",\\\"punctuation.definition.decorator.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":\\\"constant.character.format.placeholder.other.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":[\\\"support.type.exception.python\\\",\\\"support.function.builtin.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":[\\\"support.type.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":\\\"constant.language.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":[\\\"meta.indexed-name.python\\\",\\\"meta.item-access.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ee99a0\\\"}},{\\\"scope\\\":\\\"storage.type.string.python\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#a6da95\\\"}},{\\\"scope\\\":\\\"meta.function.parameters.python\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"string.regexp punctuation.definition.string.begin\\\",\\\"string.regexp punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":\\\"keyword.control.anchor.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":\\\"string.regexp.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.regexp\\\",\\\"keyword.other.back-reference.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6da95\\\"}},{\\\"scope\\\":\\\"punctuation.definition.character-class.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"constant.other.character-class.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":\\\"constant.other.character-class.range.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f4dbd6\\\"}},{\\\"scope\\\":\\\"keyword.operator.quantifier.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"constant.character.numeric.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.no-capture.regexp\\\",\\\"meta.assertion.look-ahead.regexp\\\",\\\"meta.assertion.negative-look-ahead.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":[\\\"meta.annotation.rust\\\",\\\"meta.annotation.rust punctuation\\\",\\\"meta.attribute.rust\\\",\\\"punctuation.definition.attribute.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":[\\\"meta.attribute.rust string.quoted.double.rust\\\",\\\"meta.attribute.rust string.quoted.single.char.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"entity.name.function.macro.rules.rust\\\",\\\"storage.type.module.rust\\\",\\\"storage.modifier.rust\\\",\\\"storage.type.struct.rust\\\",\\\"storage.type.enum.rust\\\",\\\"storage.type.trait.rust\\\",\\\"storage.type.union.rust\\\",\\\"storage.type.impl.rust\\\",\\\"storage.type.rust\\\",\\\"storage.type.function.rust\\\",\\\"storage.type.type.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":\\\"entity.name.type.numeric.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":\\\"meta.generic.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":\\\"entity.name.impl.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"entity.name.module.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":\\\"entity.name.trait.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"storage.type.source.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"entity.name.union.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eed49f\\\"}},{\\\"scope\\\":\\\"meta.enum.rust storage.type.source.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":[\\\"support.macro.rust\\\",\\\"meta.macro.rust support.function.rust\\\",\\\"entity.name.function.macro.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":[\\\"storage.modifier.lifetime.rust\\\",\\\"entity.name.type.lifetime\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":\\\"string.quoted.double.rust constant.other.placeholder.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":\\\"meta.function.return-type.rust meta.generic.rust storage.type.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":\\\"meta.function.call.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8aadf4\\\"}},{\\\"scope\\\":\\\"punctuation.brackets.angle.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91d7e3\\\"}},{\\\"scope\\\":\\\"constant.other.caps.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":[\\\"meta.function.definition.rust variable.other.rust\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ee99a0\\\"}},{\\\"scope\\\":\\\"meta.function.call.rust variable.other.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}},{\\\"scope\\\":\\\"variable.language.self.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ed8796\\\"}},{\\\"scope\\\":[\\\"variable.other.metavariable.name.rust\\\",\\\"meta.macro.metavariable.rust keyword.operator.macro.dollar.rust\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":[\\\"comment.line.shebang\\\",\\\"comment.line.shebang punctuation.definition.comment\\\",\\\"comment.line.shebang\\\",\\\"punctuation.definition.comment.shebang.shell\\\",\\\"meta.shebang.shell\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f5bde6\\\"}},{\\\"scope\\\":\\\"comment.line.shebang constant.language\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":[\\\"meta.function-call.arguments.shell punctuation.definition.variable.shell\\\",\\\"meta.function-call.arguments.shell punctuation.section.interpolation\\\",\\\"meta.function-call.arguments.shell punctuation.definition.variable.shell\\\",\\\"meta.function-call.arguments.shell punctuation.section.interpolation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ed8796\\\"}},{\\\"scope\\\":\\\"meta.string meta.interpolation.parameter.shell variable.other.readwrite\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f5a97f\\\"}},{\\\"scope\\\":[\\\"source.shell punctuation.section.interpolation\\\",\\\"punctuation.definition.evaluation.backticks.shell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8bd5ca\\\"}},{\\\"scope\\\":\\\"entity.name.tag.heredoc.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c6a0f6\\\"}},{\\\"scope\\\":\\\"string.quoted.double.shell variable.other.normal.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cad3f5\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: catppuccin-mocha */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBackground\\\":\\\"#00000000\\\",\\\"activityBar.activeBorder\\\":\\\"#00000000\\\",\\\"activityBar.activeFocusBorder\\\":\\\"#00000000\\\",\\\"activityBar.background\\\":\\\"#11111b\\\",\\\"activityBar.border\\\":\\\"#00000000\\\",\\\"activityBar.dropBorder\\\":\\\"#cba6f733\\\",\\\"activityBar.foreground\\\":\\\"#cba6f7\\\",\\\"activityBar.inactiveForeground\\\":\\\"#6c7086\\\",\\\"activityBarBadge.background\\\":\\\"#cba6f7\\\",\\\"activityBarBadge.foreground\\\":\\\"#11111b\\\",\\\"activityBarTop.activeBorder\\\":\\\"#00000000\\\",\\\"activityBarTop.dropBorder\\\":\\\"#cba6f733\\\",\\\"activityBarTop.foreground\\\":\\\"#cba6f7\\\",\\\"activityBarTop.inactiveForeground\\\":\\\"#6c7086\\\",\\\"badge.background\\\":\\\"#45475a\\\",\\\"badge.foreground\\\":\\\"#cdd6f4\\\",\\\"banner.background\\\":\\\"#45475a\\\",\\\"banner.foreground\\\":\\\"#cdd6f4\\\",\\\"banner.iconForeground\\\":\\\"#cdd6f4\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#cba6f7\\\",\\\"breadcrumb.background\\\":\\\"#1e1e2e\\\",\\\"breadcrumb.focusForeground\\\":\\\"#cba6f7\\\",\\\"breadcrumb.foreground\\\":\\\"#cdd6f4cc\\\",\\\"breadcrumbPicker.background\\\":\\\"#181825\\\",\\\"button.background\\\":\\\"#cba6f7\\\",\\\"button.border\\\":\\\"#00000000\\\",\\\"button.foreground\\\":\\\"#11111b\\\",\\\"button.hoverBackground\\\":\\\"#dec7fa\\\",\\\"button.secondaryBackground\\\":\\\"#585b70\\\",\\\"button.secondaryBorder\\\":\\\"#cba6f7\\\",\\\"button.secondaryForeground\\\":\\\"#cdd6f4\\\",\\\"button.secondaryHoverBackground\\\":\\\"#686b84\\\",\\\"button.separator\\\":\\\"#00000000\\\",\\\"charts.blue\\\":\\\"#89b4fa\\\",\\\"charts.foreground\\\":\\\"#cdd6f4\\\",\\\"charts.green\\\":\\\"#a6e3a1\\\",\\\"charts.lines\\\":\\\"#bac2de\\\",\\\"charts.orange\\\":\\\"#fab387\\\",\\\"charts.purple\\\":\\\"#cba6f7\\\",\\\"charts.red\\\":\\\"#f38ba8\\\",\\\"charts.yellow\\\":\\\"#f9e2af\\\",\\\"checkbox.background\\\":\\\"#45475a\\\",\\\"checkbox.border\\\":\\\"#00000000\\\",\\\"checkbox.foreground\\\":\\\"#cba6f7\\\",\\\"commandCenter.activeBackground\\\":\\\"#585b7033\\\",\\\"commandCenter.activeBorder\\\":\\\"#cba6f7\\\",\\\"commandCenter.activeForeground\\\":\\\"#cba6f7\\\",\\\"commandCenter.background\\\":\\\"#181825\\\",\\\"commandCenter.border\\\":\\\"#00000000\\\",\\\"commandCenter.foreground\\\":\\\"#bac2de\\\",\\\"commandCenter.inactiveBorder\\\":\\\"#00000000\\\",\\\"commandCenter.inactiveForeground\\\":\\\"#bac2de\\\",\\\"debugConsole.errorForeground\\\":\\\"#f38ba8\\\",\\\"debugConsole.infoForeground\\\":\\\"#89b4fa\\\",\\\"debugConsole.sourceForeground\\\":\\\"#f5e0dc\\\",\\\"debugConsole.warningForeground\\\":\\\"#fab387\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#cdd6f4\\\",\\\"debugExceptionWidget.background\\\":\\\"#11111b\\\",\\\"debugExceptionWidget.border\\\":\\\"#cba6f7\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#585b70\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#f38ba899\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#f38ba8\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#585b70\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#a6738c\\\",\\\"debugIcon.continueForeground\\\":\\\"#a6e3a1\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#585b70\\\",\\\"debugIcon.pauseForeground\\\":\\\"#89b4fa\\\",\\\"debugIcon.restartForeground\\\":\\\"#94e2d5\\\",\\\"debugIcon.startForeground\\\":\\\"#a6e3a1\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#585b70\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#cdd6f4\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#cdd6f4\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#cba6f7\\\",\\\"debugIcon.stopForeground\\\":\\\"#f38ba8\\\",\\\"debugTokenExpression.boolean\\\":\\\"#cba6f7\\\",\\\"debugTokenExpression.error\\\":\\\"#f38ba8\\\",\\\"debugTokenExpression.number\\\":\\\"#fab387\\\",\\\"debugTokenExpression.string\\\":\\\"#a6e3a1\\\",\\\"debugToolBar.background\\\":\\\"#11111b\\\",\\\"debugToolBar.border\\\":\\\"#00000000\\\",\\\"descriptionForeground\\\":\\\"#cdd6f4\\\",\\\"diffEditor.border\\\":\\\"#585b70\\\",\\\"diffEditor.diagonalFill\\\":\\\"#585b7099\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#a6e3a126\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#a6e3a11a\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#f38ba826\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#f38ba81a\\\",\\\"diffEditorOverview.insertedForeground\\\":\\\"#a6e3a1cc\\\",\\\"diffEditorOverview.removedForeground\\\":\\\"#f38ba8cc\\\",\\\"disabledForeground\\\":\\\"#a6adc8\\\",\\\"dropdown.background\\\":\\\"#181825\\\",\\\"dropdown.border\\\":\\\"#cba6f7\\\",\\\"dropdown.foreground\\\":\\\"#cdd6f4\\\",\\\"dropdown.listBackground\\\":\\\"#585b70\\\",\\\"editor.background\\\":\\\"#1e1e2e\\\",\\\"editor.findMatchBackground\\\":\\\"#5e3f53\\\",\\\"editor.findMatchBorder\\\":\\\"#f38ba833\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#3e5767\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#89dceb33\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#3e5767\\\",\\\"editor.findRangeHighlightBorder\\\":\\\"#89dceb33\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#a6e3a126\\\",\\\"editor.foldBackground\\\":\\\"#89dceb40\\\",\\\"editor.foreground\\\":\\\"#cdd6f4\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#89dceb40\\\",\\\"editor.lineHighlightBackground\\\":\\\"#cdd6f412\\\",\\\"editor.lineHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#89dceb40\\\",\\\"editor.rangeHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.selectionBackground\\\":\\\"#9399b240\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#9399b233\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#9399b233\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#f9e2af26\\\",\\\"editor.wordHighlightBackground\\\":\\\"#9399b233\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#89b4fa33\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#f38ba8\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#fab387\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#f9e2af\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#a6e3a1\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#74c7ec\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#cba6f7\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#eba0ac\\\",\\\"editorBracketMatch.background\\\":\\\"#9399b21a\\\",\\\"editorBracketMatch.border\\\":\\\"#9399b2\\\",\\\"editorCodeLens.foreground\\\":\\\"#7f849c\\\",\\\"editorCursor.background\\\":\\\"#1e1e2e\\\",\\\"editorCursor.foreground\\\":\\\"#f5e0dc\\\",\\\"editorError.background\\\":\\\"#00000000\\\",\\\"editorError.border\\\":\\\"#00000000\\\",\\\"editorError.foreground\\\":\\\"#f38ba8\\\",\\\"editorGroup.border\\\":\\\"#585b70\\\",\\\"editorGroup.dropBackground\\\":\\\"#cba6f733\\\",\\\"editorGroup.emptyBackground\\\":\\\"#1e1e2e\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#11111b\\\",\\\"editorGutter.addedBackground\\\":\\\"#a6e3a1\\\",\\\"editorGutter.background\\\":\\\"#1e1e2e\\\",\\\"editorGutter.commentGlyphForeground\\\":\\\"#cba6f7\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#313244\\\",\\\"editorGutter.deletedBackground\\\":\\\"#f38ba8\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#9399b2\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#f9e2af\\\",\\\"editorHoverWidget.background\\\":\\\"#181825\\\",\\\"editorHoverWidget.border\\\":\\\"#585b70\\\",\\\"editorHoverWidget.foreground\\\":\\\"#cdd6f4\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#585b70\\\",\\\"editorIndentGuide.background\\\":\\\"#45475a\\\",\\\"editorInfo.background\\\":\\\"#00000000\\\",\\\"editorInfo.border\\\":\\\"#00000000\\\",\\\"editorInfo.foreground\\\":\\\"#89b4fa\\\",\\\"editorInlayHint.background\\\":\\\"#181825bf\\\",\\\"editorInlayHint.foreground\\\":\\\"#585b70\\\",\\\"editorInlayHint.parameterBackground\\\":\\\"#181825bf\\\",\\\"editorInlayHint.parameterForeground\\\":\\\"#a6adc8\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#181825bf\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#bac2de\\\",\\\"editorLightBulb.foreground\\\":\\\"#f9e2af\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#cba6f7\\\",\\\"editorLineNumber.foreground\\\":\\\"#7f849c\\\",\\\"editorLink.activeForeground\\\":\\\"#cba6f7\\\",\\\"editorMarkerNavigation.background\\\":\\\"#181825\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#f38ba8\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#89b4fa\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#fab387\\\",\\\"editorOverviewRuler.background\\\":\\\"#181825\\\",\\\"editorOverviewRuler.border\\\":\\\"#cdd6f412\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#f9e2af\\\",\\\"editorRuler.foreground\\\":\\\"#585b70\\\",\\\"editorStickyScrollHover.background\\\":\\\"#313244\\\",\\\"editorSuggestWidget.background\\\":\\\"#181825\\\",\\\"editorSuggestWidget.border\\\":\\\"#585b70\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#cdd6f4\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#cba6f7\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#313244\\\",\\\"editorWarning.background\\\":\\\"#00000000\\\",\\\"editorWarning.border\\\":\\\"#00000000\\\",\\\"editorWarning.foreground\\\":\\\"#fab387\\\",\\\"editorWhitespace.foreground\\\":\\\"#9399b266\\\",\\\"editorWidget.background\\\":\\\"#181825\\\",\\\"editorWidget.foreground\\\":\\\"#cdd6f4\\\",\\\"editorWidget.resizeBorder\\\":\\\"#585b70\\\",\\\"errorForeground\\\":\\\"#f38ba8\\\",\\\"errorLens.errorBackground\\\":\\\"#f38ba826\\\",\\\"errorLens.errorBackgroundLight\\\":\\\"#f38ba826\\\",\\\"errorLens.errorForeground\\\":\\\"#f38ba8\\\",\\\"errorLens.errorForegroundLight\\\":\\\"#f38ba8\\\",\\\"errorLens.errorMessageBackground\\\":\\\"#f38ba826\\\",\\\"errorLens.hintBackground\\\":\\\"#a6e3a126\\\",\\\"errorLens.hintBackgroundLight\\\":\\\"#a6e3a126\\\",\\\"errorLens.hintForeground\\\":\\\"#a6e3a1\\\",\\\"errorLens.hintForegroundLight\\\":\\\"#a6e3a1\\\",\\\"errorLens.hintMessageBackground\\\":\\\"#a6e3a126\\\",\\\"errorLens.infoBackground\\\":\\\"#89b4fa26\\\",\\\"errorLens.infoBackgroundLight\\\":\\\"#89b4fa26\\\",\\\"errorLens.infoForeground\\\":\\\"#89b4fa\\\",\\\"errorLens.infoForegroundLight\\\":\\\"#89b4fa\\\",\\\"errorLens.infoMessageBackground\\\":\\\"#89b4fa26\\\",\\\"errorLens.statusBarErrorForeground\\\":\\\"#f38ba8\\\",\\\"errorLens.statusBarHintForeground\\\":\\\"#a6e3a1\\\",\\\"errorLens.statusBarIconErrorForeground\\\":\\\"#f38ba8\\\",\\\"errorLens.statusBarIconWarningForeground\\\":\\\"#fab387\\\",\\\"errorLens.statusBarInfoForeground\\\":\\\"#89b4fa\\\",\\\"errorLens.statusBarWarningForeground\\\":\\\"#fab387\\\",\\\"errorLens.warningBackground\\\":\\\"#fab38726\\\",\\\"errorLens.warningBackgroundLight\\\":\\\"#fab38726\\\",\\\"errorLens.warningForeground\\\":\\\"#fab387\\\",\\\"errorLens.warningForegroundLight\\\":\\\"#fab387\\\",\\\"errorLens.warningMessageBackground\\\":\\\"#fab38726\\\",\\\"extensionBadge.remoteBackground\\\":\\\"#89b4fa\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#11111b\\\",\\\"extensionButton.prominentBackground\\\":\\\"#cba6f7\\\",\\\"extensionButton.prominentForeground\\\":\\\"#11111b\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#dec7fa\\\",\\\"extensionButton.separator\\\":\\\"#1e1e2e\\\",\\\"extensionIcon.preReleaseForeground\\\":\\\"#585b70\\\",\\\"extensionIcon.sponsorForeground\\\":\\\"#f5c2e7\\\",\\\"extensionIcon.starForeground\\\":\\\"#f9e2af\\\",\\\"extensionIcon.verifiedForeground\\\":\\\"#a6e3a1\\\",\\\"focusBorder\\\":\\\"#cba6f7\\\",\\\"foreground\\\":\\\"#cdd6f4\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#a6e3a1\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#cba6f7\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#f38ba8\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#6c7086\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#f9e2af\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#f38ba8\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#f9e2af\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#89b4fa\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#a6e3a1\\\",\\\"gitlens.closedAutolinkedIssueIconColor\\\":\\\"#cba6f7\\\",\\\"gitlens.closedPullRequestIconColor\\\":\\\"#f38ba8\\\",\\\"gitlens.decorations.branchAheadForegroundColor\\\":\\\"#a6e3a1\\\",\\\"gitlens.decorations.branchBehindForegroundColor\\\":\\\"#fab387\\\",\\\"gitlens.decorations.branchDivergedForegroundColor\\\":\\\"#f9e2af\\\",\\\"gitlens.decorations.branchMissingUpstreamForegroundColor\\\":\\\"#fab387\\\",\\\"gitlens.decorations.branchUnpublishedForegroundColor\\\":\\\"#a6e3a1\\\",\\\"gitlens.decorations.statusMergingOrRebasingConflictForegroundColor\\\":\\\"#eba0ac\\\",\\\"gitlens.decorations.statusMergingOrRebasingForegroundColor\\\":\\\"#f9e2af\\\",\\\"gitlens.decorations.workspaceCurrentForegroundColor\\\":\\\"#cba6f7\\\",\\\"gitlens.decorations.workspaceRepoMissingForegroundColor\\\":\\\"#a6adc8\\\",\\\"gitlens.decorations.workspaceRepoOpenForegroundColor\\\":\\\"#cba6f7\\\",\\\"gitlens.decorations.worktreeHasUncommittedChangesForegroundColor\\\":\\\"#fab387\\\",\\\"gitlens.decorations.worktreeMissingForegroundColor\\\":\\\"#eba0ac\\\",\\\"gitlens.graphChangesColumnAddedColor\\\":\\\"#a6e3a1\\\",\\\"gitlens.graphChangesColumnDeletedColor\\\":\\\"#f38ba8\\\",\\\"gitlens.graphLane10Color\\\":\\\"#f5c2e7\\\",\\\"gitlens.graphLane1Color\\\":\\\"#cba6f7\\\",\\\"gitlens.graphLane2Color\\\":\\\"#f9e2af\\\",\\\"gitlens.graphLane3Color\\\":\\\"#89b4fa\\\",\\\"gitlens.graphLane4Color\\\":\\\"#f2cdcd\\\",\\\"gitlens.graphLane5Color\\\":\\\"#a6e3a1\\\",\\\"gitlens.graphLane6Color\\\":\\\"#b4befe\\\",\\\"gitlens.graphLane7Color\\\":\\\"#f5e0dc\\\",\\\"gitlens.graphLane8Color\\\":\\\"#f38ba8\\\",\\\"gitlens.graphLane9Color\\\":\\\"#94e2d5\\\",\\\"gitlens.graphMinimapMarkerHeadColor\\\":\\\"#a6e3a1\\\",\\\"gitlens.graphMinimapMarkerHighlightsColor\\\":\\\"#f9e2af\\\",\\\"gitlens.graphMinimapMarkerLocalBranchesColor\\\":\\\"#89b4fa\\\",\\\"gitlens.graphMinimapMarkerRemoteBranchesColor\\\":\\\"#71a4f9\\\",\\\"gitlens.graphMinimapMarkerStashesColor\\\":\\\"#cba6f7\\\",\\\"gitlens.graphMinimapMarkerTagsColor\\\":\\\"#f2cdcd\\\",\\\"gitlens.graphMinimapMarkerUpstreamColor\\\":\\\"#93dd8d\\\",\\\"gitlens.graphScrollMarkerHeadColor\\\":\\\"#a6e3a1\\\",\\\"gitlens.graphScrollMarkerHighlightsColor\\\":\\\"#f9e2af\\\",\\\"gitlens.graphScrollMarkerLocalBranchesColor\\\":\\\"#89b4fa\\\",\\\"gitlens.graphScrollMarkerRemoteBranchesColor\\\":\\\"#71a4f9\\\",\\\"gitlens.graphScrollMarkerStashesColor\\\":\\\"#cba6f7\\\",\\\"gitlens.graphScrollMarkerTagsColor\\\":\\\"#f2cdcd\\\",\\\"gitlens.graphScrollMarkerUpstreamColor\\\":\\\"#93dd8d\\\",\\\"gitlens.gutterBackgroundColor\\\":\\\"#3132444d\\\",\\\"gitlens.gutterForegroundColor\\\":\\\"#cdd6f4\\\",\\\"gitlens.gutterUncommittedForegroundColor\\\":\\\"#cba6f7\\\",\\\"gitlens.lineHighlightBackgroundColor\\\":\\\"#cba6f726\\\",\\\"gitlens.lineHighlightOverviewRulerColor\\\":\\\"#cba6f7cc\\\",\\\"gitlens.mergedPullRequestIconColor\\\":\\\"#cba6f7\\\",\\\"gitlens.openAutolinkedIssueIconColor\\\":\\\"#a6e3a1\\\",\\\"gitlens.openPullRequestIconColor\\\":\\\"#a6e3a1\\\",\\\"gitlens.trailingLineBackgroundColor\\\":\\\"#00000000\\\",\\\"gitlens.trailingLineForegroundColor\\\":\\\"#cdd6f44d\\\",\\\"gitlens.unpublishedChangesIconColor\\\":\\\"#a6e3a1\\\",\\\"gitlens.unpublishedCommitIconColor\\\":\\\"#a6e3a1\\\",\\\"gitlens.unpulledChangesIconColor\\\":\\\"#fab387\\\",\\\"icon.foreground\\\":\\\"#cba6f7\\\",\\\"input.background\\\":\\\"#313244\\\",\\\"input.border\\\":\\\"#00000000\\\",\\\"input.foreground\\\":\\\"#cdd6f4\\\",\\\"input.placeholderForeground\\\":\\\"#cdd6f473\\\",\\\"inputOption.activeBackground\\\":\\\"#585b70\\\",\\\"inputOption.activeBorder\\\":\\\"#cba6f7\\\",\\\"inputOption.activeForeground\\\":\\\"#cdd6f4\\\",\\\"inputValidation.errorBackground\\\":\\\"#f38ba8\\\",\\\"inputValidation.errorBorder\\\":\\\"#11111b33\\\",\\\"inputValidation.errorForeground\\\":\\\"#11111b\\\",\\\"inputValidation.infoBackground\\\":\\\"#89b4fa\\\",\\\"inputValidation.infoBorder\\\":\\\"#11111b33\\\",\\\"inputValidation.infoForeground\\\":\\\"#11111b\\\",\\\"inputValidation.warningBackground\\\":\\\"#fab387\\\",\\\"inputValidation.warningBorder\\\":\\\"#11111b33\\\",\\\"inputValidation.warningForeground\\\":\\\"#11111b\\\",\\\"issues.closed\\\":\\\"#cba6f7\\\",\\\"issues.newIssueDecoration\\\":\\\"#f5e0dc\\\",\\\"issues.open\\\":\\\"#a6e3a1\\\",\\\"list.activeSelectionBackground\\\":\\\"#313244\\\",\\\"list.activeSelectionForeground\\\":\\\"#cdd6f4\\\",\\\"list.dropBackground\\\":\\\"#cba6f733\\\",\\\"list.focusAndSelectionBackground\\\":\\\"#45475a\\\",\\\"list.focusBackground\\\":\\\"#313244\\\",\\\"list.focusForeground\\\":\\\"#cdd6f4\\\",\\\"list.focusOutline\\\":\\\"#00000000\\\",\\\"list.highlightForeground\\\":\\\"#cba6f7\\\",\\\"list.hoverBackground\\\":\\\"#31324480\\\",\\\"list.hoverForeground\\\":\\\"#cdd6f4\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#313244\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#cdd6f4\\\",\\\"list.warningForeground\\\":\\\"#fab387\\\",\\\"listFilterWidget.background\\\":\\\"#45475a\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#f38ba8\\\",\\\"listFilterWidget.outline\\\":\\\"#00000000\\\",\\\"menu.background\\\":\\\"#1e1e2e\\\",\\\"menu.border\\\":\\\"#1e1e2e80\\\",\\\"menu.foreground\\\":\\\"#cdd6f4\\\",\\\"menu.selectionBackground\\\":\\\"#585b70\\\",\\\"menu.selectionBorder\\\":\\\"#00000000\\\",\\\"menu.selectionForeground\\\":\\\"#cdd6f4\\\",\\\"menu.separatorBackground\\\":\\\"#585b70\\\",\\\"menubar.selectionBackground\\\":\\\"#45475a\\\",\\\"menubar.selectionForeground\\\":\\\"#cdd6f4\\\",\\\"merge.commonContentBackground\\\":\\\"#45475a\\\",\\\"merge.commonHeaderBackground\\\":\\\"#585b70\\\",\\\"merge.currentContentBackground\\\":\\\"#a6e3a133\\\",\\\"merge.currentHeaderBackground\\\":\\\"#a6e3a166\\\",\\\"merge.incomingContentBackground\\\":\\\"#89b4fa33\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#89b4fa66\\\",\\\"minimap.background\\\":\\\"#18182580\\\",\\\"minimap.errorHighlight\\\":\\\"#f38ba8bf\\\",\\\"minimap.findMatchHighlight\\\":\\\"#89dceb4d\\\",\\\"minimap.selectionHighlight\\\":\\\"#585b70bf\\\",\\\"minimap.selectionOccurrenceHighlight\\\":\\\"#585b70bf\\\",\\\"minimap.warningHighlight\\\":\\\"#fab387bf\\\",\\\"minimapGutter.addedBackground\\\":\\\"#a6e3a1bf\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#f38ba8bf\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#f9e2afbf\\\",\\\"minimapSlider.activeBackground\\\":\\\"#cba6f799\\\",\\\"minimapSlider.background\\\":\\\"#cba6f733\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#cba6f766\\\",\\\"notificationCenter.border\\\":\\\"#cba6f7\\\",\\\"notificationCenterHeader.background\\\":\\\"#181825\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#cdd6f4\\\",\\\"notificationLink.foreground\\\":\\\"#89b4fa\\\",\\\"notificationToast.border\\\":\\\"#cba6f7\\\",\\\"notifications.background\\\":\\\"#181825\\\",\\\"notifications.border\\\":\\\"#cba6f7\\\",\\\"notifications.foreground\\\":\\\"#cdd6f4\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#f38ba8\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#89b4fa\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#fab387\\\",\\\"panel.background\\\":\\\"#1e1e2e\\\",\\\"panel.border\\\":\\\"#585b70\\\",\\\"panelSection.border\\\":\\\"#585b70\\\",\\\"panelSection.dropBackground\\\":\\\"#cba6f733\\\",\\\"panelTitle.activeBorder\\\":\\\"#cba6f7\\\",\\\"panelTitle.activeForeground\\\":\\\"#cdd6f4\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#a6adc8\\\",\\\"peekView.border\\\":\\\"#cba6f7\\\",\\\"peekViewEditor.background\\\":\\\"#181825\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#89dceb4d\\\",\\\"peekViewEditor.matchHighlightBorder\\\":\\\"#00000000\\\",\\\"peekViewEditorGutter.background\\\":\\\"#181825\\\",\\\"peekViewResult.background\\\":\\\"#181825\\\",\\\"peekViewResult.fileForeground\\\":\\\"#cdd6f4\\\",\\\"peekViewResult.lineForeground\\\":\\\"#cdd6f4\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#89dceb4d\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#313244\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#cdd6f4\\\",\\\"peekViewTitle.background\\\":\\\"#1e1e2e\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#bac2deb3\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#cdd6f4\\\",\\\"pickerGroup.border\\\":\\\"#cba6f7\\\",\\\"pickerGroup.foreground\\\":\\\"#cba6f7\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#f38ba8\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#89b4fa\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#fab387\\\",\\\"progressBar.background\\\":\\\"#cba6f7\\\",\\\"pullRequests.closed\\\":\\\"#f38ba8\\\",\\\"pullRequests.draft\\\":\\\"#9399b2\\\",\\\"pullRequests.merged\\\":\\\"#cba6f7\\\",\\\"pullRequests.notification\\\":\\\"#cdd6f4\\\",\\\"pullRequests.open\\\":\\\"#a6e3a1\\\",\\\"sash.hoverBorder\\\":\\\"#cba6f7\\\",\\\"scrollbar.shadow\\\":\\\"#11111b\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#31324466\\\",\\\"scrollbarSlider.background\\\":\\\"#585b7080\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#6c7086\\\",\\\"selection.background\\\":\\\"#cba6f766\\\",\\\"settings.dropdownBackground\\\":\\\"#45475a\\\",\\\"settings.dropdownListBorder\\\":\\\"#00000000\\\",\\\"settings.focusedRowBackground\\\":\\\"#585b7033\\\",\\\"settings.headerForeground\\\":\\\"#cdd6f4\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#cba6f7\\\",\\\"settings.numberInputBackground\\\":\\\"#45475a\\\",\\\"settings.numberInputBorder\\\":\\\"#00000000\\\",\\\"settings.textInputBackground\\\":\\\"#45475a\\\",\\\"settings.textInputBorder\\\":\\\"#00000000\\\",\\\"sideBar.background\\\":\\\"#181825\\\",\\\"sideBar.border\\\":\\\"#00000000\\\",\\\"sideBar.dropBackground\\\":\\\"#cba6f733\\\",\\\"sideBar.foreground\\\":\\\"#cdd6f4\\\",\\\"sideBarSectionHeader.background\\\":\\\"#181825\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#cdd6f4\\\",\\\"sideBarTitle.foreground\\\":\\\"#cba6f7\\\",\\\"statusBar.background\\\":\\\"#11111b\\\",\\\"statusBar.border\\\":\\\"#00000000\\\",\\\"statusBar.debuggingBackground\\\":\\\"#fab387\\\",\\\"statusBar.debuggingBorder\\\":\\\"#00000000\\\",\\\"statusBar.debuggingForeground\\\":\\\"#11111b\\\",\\\"statusBar.foreground\\\":\\\"#cdd6f4\\\",\\\"statusBar.noFolderBackground\\\":\\\"#11111b\\\",\\\"statusBar.noFolderBorder\\\":\\\"#00000000\\\",\\\"statusBar.noFolderForeground\\\":\\\"#cdd6f4\\\",\\\"statusBarItem.activeBackground\\\":\\\"#585b7066\\\",\\\"statusBarItem.errorBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.errorForeground\\\":\\\"#f38ba8\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#585b7033\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.prominentForeground\\\":\\\"#cba6f7\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#585b7033\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#89b4fa\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#11111b\\\",\\\"statusBarItem.warningBackground\\\":\\\"#00000000\\\",\\\"statusBarItem.warningForeground\\\":\\\"#fab387\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#fab387\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#cba6f7\\\",\\\"symbolIcon.classForeground\\\":\\\"#f9e2af\\\",\\\"symbolIcon.colorForeground\\\":\\\"#f5c2e7\\\",\\\"symbolIcon.constantForeground\\\":\\\"#fab387\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#b4befe\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#f9e2af\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#f9e2af\\\",\\\"symbolIcon.eventForeground\\\":\\\"#f5c2e7\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#cdd6f4\\\",\\\"symbolIcon.fileForeground\\\":\\\"#cba6f7\\\",\\\"symbolIcon.folderForeground\\\":\\\"#cba6f7\\\",\\\"symbolIcon.functionForeground\\\":\\\"#89b4fa\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#f9e2af\\\",\\\"symbolIcon.keyForeground\\\":\\\"#94e2d5\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#cba6f7\\\",\\\"symbolIcon.methodForeground\\\":\\\"#89b4fa\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#cdd6f4\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#f9e2af\\\",\\\"symbolIcon.nullForeground\\\":\\\"#eba0ac\\\",\\\"symbolIcon.numberForeground\\\":\\\"#fab387\\\",\\\"symbolIcon.objectForeground\\\":\\\"#f9e2af\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#94e2d5\\\",\\\"symbolIcon.packageForeground\\\":\\\"#f2cdcd\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#eba0ac\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#f9e2af\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#f2cdcd\\\",\\\"symbolIcon.stringForeground\\\":\\\"#a6e3a1\\\",\\\"symbolIcon.structForeground\\\":\\\"#94e2d5\\\",\\\"symbolIcon.textForeground\\\":\\\"#cdd6f4\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#eba0ac\\\",\\\"symbolIcon.unitForeground\\\":\\\"#cdd6f4\\\",\\\"symbolIcon.variableForeground\\\":\\\"#cdd6f4\\\",\\\"tab.activeBackground\\\":\\\"#1e1e2e\\\",\\\"tab.activeBorder\\\":\\\"#00000000\\\",\\\"tab.activeBorderTop\\\":\\\"#cba6f7\\\",\\\"tab.activeForeground\\\":\\\"#cba6f7\\\",\\\"tab.activeModifiedBorder\\\":\\\"#f9e2af\\\",\\\"tab.border\\\":\\\"#181825\\\",\\\"tab.hoverBackground\\\":\\\"#28283d\\\",\\\"tab.hoverBorder\\\":\\\"#00000000\\\",\\\"tab.hoverForeground\\\":\\\"#cba6f7\\\",\\\"tab.inactiveBackground\\\":\\\"#181825\\\",\\\"tab.inactiveForeground\\\":\\\"#6c7086\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#f9e2af4d\\\",\\\"tab.lastPinnedBorder\\\":\\\"#cba6f7\\\",\\\"tab.unfocusedActiveBackground\\\":\\\"#181825\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#00000000\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#cba6f74d\\\",\\\"tab.unfocusedInactiveBackground\\\":\\\"#0e0e16\\\",\\\"table.headerBackground\\\":\\\"#313244\\\",\\\"table.headerForeground\\\":\\\"#cdd6f4\\\",\\\"terminal.ansiBlack\\\":\\\"#45475a\\\",\\\"terminal.ansiBlue\\\":\\\"#89b4fa\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#585b70\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#74a8fc\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#6bd7ca\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#89d88b\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#f2aede\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f37799\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#bac2de\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#ebd391\\\",\\\"terminal.ansiCyan\\\":\\\"#94e2d5\\\",\\\"terminal.ansiGreen\\\":\\\"#a6e3a1\\\",\\\"terminal.ansiMagenta\\\":\\\"#f5c2e7\\\",\\\"terminal.ansiRed\\\":\\\"#f38ba8\\\",\\\"terminal.ansiWhite\\\":\\\"#a6adc8\\\",\\\"terminal.ansiYellow\\\":\\\"#f9e2af\\\",\\\"terminal.border\\\":\\\"#585b70\\\",\\\"terminal.dropBackground\\\":\\\"#cba6f733\\\",\\\"terminal.foreground\\\":\\\"#cdd6f4\\\",\\\"terminal.inactiveSelectionBackground\\\":\\\"#585b7080\\\",\\\"terminal.selectionBackground\\\":\\\"#585b70\\\",\\\"terminal.tab.activeBorder\\\":\\\"#cba6f7\\\",\\\"terminalCommandDecoration.defaultBackground\\\":\\\"#585b70\\\",\\\"terminalCommandDecoration.errorBackground\\\":\\\"#f38ba8\\\",\\\"terminalCommandDecoration.successBackground\\\":\\\"#a6e3a1\\\",\\\"terminalCursor.background\\\":\\\"#1e1e2e\\\",\\\"terminalCursor.foreground\\\":\\\"#f5e0dc\\\",\\\"textBlockQuote.background\\\":\\\"#181825\\\",\\\"textBlockQuote.border\\\":\\\"#11111b\\\",\\\"textCodeBlock.background\\\":\\\"#1e1e2e\\\",\\\"textLink.activeForeground\\\":\\\"#89dceb\\\",\\\"textLink.foreground\\\":\\\"#89b4fa\\\",\\\"textPreformat.foreground\\\":\\\"#cdd6f4\\\",\\\"textSeparator.foreground\\\":\\\"#cba6f7\\\",\\\"titleBar.activeBackground\\\":\\\"#11111b\\\",\\\"titleBar.activeForeground\\\":\\\"#cdd6f4\\\",\\\"titleBar.border\\\":\\\"#00000000\\\",\\\"titleBar.inactiveBackground\\\":\\\"#11111b\\\",\\\"titleBar.inactiveForeground\\\":\\\"#cdd6f480\\\",\\\"tree.inactiveIndentGuidesStroke\\\":\\\"#45475a\\\",\\\"tree.indentGuidesStroke\\\":\\\"#9399b2\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#1e1e2e4d\\\",\\\"welcomePage.progress.background\\\":\\\"#11111b\\\",\\\"welcomePage.progress.foreground\\\":\\\"#cba6f7\\\",\\\"welcomePage.tileBackground\\\":\\\"#181825\\\",\\\"widget.shadow\\\":\\\"#18182580\\\",\\\"window.activeBorder\\\":\\\"#00000000\\\",\\\"window.inactiveBorder\\\":\\\"#00000000\\\"},\\\"displayName\\\":\\\"Catppuccin Mocha\\\",\\\"name\\\":\\\"catppuccin-mocha\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"boolean\\\":{\\\"foreground\\\":\\\"#fab387\\\"},\\\"builtinAttribute.attribute.library:rust\\\":{\\\"foreground\\\":\\\"#89b4fa\\\"},\\\"class.builtin:python\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"},\\\"class:python\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"},\\\"constant.builtin.readonly:nix\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"},\\\"enumMember\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"},\\\"function.decorator:python\\\":{\\\"foreground\\\":\\\"#fab387\\\"},\\\"generic.attribute:rust\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"},\\\"heading\\\":{\\\"foreground\\\":\\\"#f38ba8\\\"},\\\"number\\\":{\\\"foreground\\\":\\\"#fab387\\\"},\\\"pol\\\":{\\\"foreground\\\":\\\"#f2cdcd\\\"},\\\"property.readonly:javascript\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"},\\\"property.readonly:javascriptreact\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"},\\\"property.readonly:typescript\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"},\\\"property.readonly:typescriptreact\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"},\\\"selfKeyword\\\":{\\\"foreground\\\":\\\"#f38ba8\\\"},\\\"text.emph\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f38ba8\\\"},\\\"text.math\\\":{\\\"foreground\\\":\\\"#f2cdcd\\\"},\\\"text.strong\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f38ba8\\\"},\\\"tomlArrayKey\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#89b4fa\\\"},\\\"tomlTableKey\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#89b4fa\\\"},\\\"type.defaultLibrary:go\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"},\\\"variable.defaultLibrary\\\":{\\\"foreground\\\":\\\"#eba0ac\\\"},\\\"variable.readonly.defaultLibrary:go\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"},\\\"variable.readonly:javascript\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"},\\\"variable.readonly:javascriptreact\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"},\\\"variable.readonly:scala\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"},\\\"variable.readonly:typescript\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"},\\\"variable.readonly:typescriptreact\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"},\\\"variable.typeHint:python\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"text\\\",\\\"source\\\",\\\"variable.other.readwrite\\\",\\\"punctuation.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":\\\"punctuation\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#9399b2\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#6c7086\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6e3a1\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"variable.other.constant\\\",\\\"entity.name.constant\\\",\\\"constant.language.boolean\\\",\\\"constant.language.false\\\",\\\"constant.language.true\\\",\\\"keyword.other.unit.user-defined\\\",\\\"keyword.other.unit.suffix.floating-point\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"keyword.operator.word\\\",\\\"keyword.operator.new\\\",\\\"variable.language.super\\\",\\\"support.type.primitive\\\",\\\"storage.type\\\",\\\"storage.modifier\\\",\\\"punctuation.definition.keyword\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":\\\"entity.name.tag.documentation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\",\\\"punctuation.accessor\\\",\\\"punctuation.definition.generic\\\",\\\"meta.function.closure punctuation.section.parameters\\\",\\\"punctuation.definition.tag\\\",\\\"punctuation.separator.key-value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.function-call.method\\\",\\\"support.function\\\",\\\"support.function.misc\\\",\\\"variable.function\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":[\\\"entity.name.class\\\",\\\"entity.other.inherited-class\\\",\\\"support.class\\\",\\\"meta.function-call.constructor\\\",\\\"entity.name.struct\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"entity.name.enum\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":[\\\"meta.enum variable.other.readwrite\\\",\\\"variable.other.enummember\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"meta.property.object\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":[\\\"meta.type\\\",\\\"meta.type-alias\\\",\\\"support.type\\\",\\\"entity.name.type\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":[\\\"meta.annotation variable.function\\\",\\\"meta.annotation variable.annotation.function\\\",\\\"meta.annotation punctuation.definition.annotation\\\",\\\"meta.decorator\\\",\\\"punctuation.decorator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\",\\\"meta.function.parameters\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#eba0ac\\\"}},{\\\"scope\\\":[\\\"constant.language\\\",\\\"support.function.builtin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f38ba8\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.documentation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f38ba8\\\"}},{\\\"scope\\\":[\\\"keyword.control.directive\\\",\\\"punctuation.definition.directive\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"punctuation.definition.typeparameters\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89dceb\\\"}},{\\\"scope\\\":\\\"entity.name.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":[\\\"variable.language.this\\\",\\\"variable.language.this punctuation.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f38ba8\\\"}},{\\\"scope\\\":\\\"variable.object.property\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":[\\\"string.template variable\\\",\\\"string variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":\\\"keyword.operator.new\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"storage.modifier.specifier.extern.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":[\\\"entity.name.scope-resolution.template.call.cpp\\\",\\\"entity.name.scope-resolution.parameter.cpp\\\",\\\"entity.name.scope-resolution.cpp\\\",\\\"entity.name.scope-resolution.function.definition.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"storage.type.class.doxygen\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"storage.modifier.reference.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"meta.interpolation.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":\\\"comment.block.documentation.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":[\\\"source.css entity.other.attribute-name.class.css\\\",\\\"entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"punctuation.separator.operator.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"source.css entity.other.attribute-name.pseudo-class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"source.css constant.other.unicode-range\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":\\\"source.css variable.parameter.url\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#a6e3a1\\\"}},{\\\"scope\\\":[\\\"support.type.vendored.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89dceb\\\"}},{\\\"scope\\\":[\\\"source.css meta.property-value variable\\\",\\\"source.css meta.property-value variable.other.less\\\",\\\"source.css meta.property-value variable.other.less punctuation.definition.variable.less\\\",\\\"meta.definition.variable.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eba0ac\\\"}},{\\\"scope\\\":[\\\"source.css meta.property-list variable\\\",\\\"meta.property-list variable.other.less\\\",\\\"meta.property-list variable.other.less punctuation.definition.variable.less\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":\\\"keyword.other.unit.percentage.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":\\\"source.css meta.attribute-selector\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a6e3a1\\\"}},{\\\"scope\\\":[\\\"keyword.other.definition.ini\\\",\\\"punctuation.support.type.property-name.json\\\",\\\"support.type.property-name.json\\\",\\\"punctuation.support.type.property-name.toml\\\",\\\"support.type.property-name.toml\\\",\\\"entity.name.tag.yaml\\\",\\\"punctuation.support.type.property-name.yaml\\\",\\\"support.type.property-name.yaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":[\\\"constant.language.json\\\",\\\"constant.language.yaml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":[\\\"entity.name.type.anchor.yaml\\\",\\\"variable.other.alias.yaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":[\\\"support.type.property-name.table\\\",\\\"entity.name.section.group-title.ini\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"constant.other.time.datetime.offset.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.anchor.yaml\\\",\\\"punctuation.definition.alias.yaml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":\\\"entity.other.document.begin.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":\\\"markup.changed.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":[\\\"meta.diff.header.from-file\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.from-file.diff\\\",\\\"punctuation.definition.to-file.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":\\\"markup.inserted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a6e3a1\\\"}},{\\\"scope\\\":\\\"markup.deleted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f38ba8\\\"}},{\\\"scope\\\":[\\\"variable.other.env\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":[\\\"string.quoted variable.other.env\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":\\\"support.function.builtin.gdscript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":\\\"constant.language.gdscript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":\\\"comment meta.annotation.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eba0ac\\\"}},{\\\"scope\\\":\\\"comment meta.annotation.parameters.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":\\\"constant.language.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":\\\"variable.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":\\\"string.unquoted.alias.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f2cdcd\\\"}},{\\\"scope\\\":\\\"constant.character.enum.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f2cdcd\\\"}},{\\\"scope\\\":[\\\"keyword.other.doctype\\\",\\\"meta.tag.sgml.doctype punctuation.definition.tag\\\",\\\"meta.tag.metadata.doctype entity.name.tag\\\",\\\"meta.tag.metadata.doctype punctuation.definition.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":[\\\"text.html constant.character.entity\\\",\\\"text.html constant.character.entity punctuation\\\",\\\"constant.character.entity.xml\\\",\\\"constant.character.entity.xml punctuation\\\",\\\"constant.character.entity.js.jsx\\\",\\\"constant.charactger.entity.js.jsx punctuation\\\",\\\"constant.character.entity.tsx\\\",\\\"constant.character.entity.tsx punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f38ba8\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":[\\\"support.class.component\\\",\\\"support.class.component.jsx\\\",\\\"support.class.component.tsx\\\",\\\"support.class.component.vue\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.annotation\\\",\\\"storage.type.annotation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":\\\"constant.other.enum.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"storage.modifier.import.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":\\\"comment.block.javadoc.java keyword.other.documentation.javadoc.java\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":\\\"meta.export variable.other.readwrite.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eba0ac\\\"}},{\\\"scope\\\":[\\\"variable.other.constant.js\\\",\\\"variable.other.constant.ts\\\",\\\"variable.other.property.js\\\",\\\"variable.other.property.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":[\\\"variable.other.jsdoc\\\",\\\"comment.block.documentation variable.other\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#eba0ac\\\"}},{\\\"scope\\\":\\\"storage.type.class.jsdoc\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":\\\"support.type.object.console.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":[\\\"support.constant.node\\\",\\\"support.type.object.module.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":\\\"storage.modifier.implements\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":[\\\"constant.language.null.js\\\",\\\"constant.language.null.ts\\\",\\\"constant.language.undefined.js\\\",\\\"constant.language.undefined.ts\\\",\\\"support.type.builtin.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":\\\"variable.parameter.generic\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":[\\\"keyword.declaration.function.arrow.js\\\",\\\"storage.type.function.arrow.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"punctuation.decorator.ts\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":[\\\"keyword.operator.expression.in.js\\\",\\\"keyword.operator.expression.in.ts\\\",\\\"keyword.operator.expression.infer.ts\\\",\\\"keyword.operator.expression.instanceof.js\\\",\\\"keyword.operator.expression.instanceof.ts\\\",\\\"keyword.operator.expression.is\\\",\\\"keyword.operator.expression.keyof.ts\\\",\\\"keyword.operator.expression.of.js\\\",\\\"keyword.operator.expression.of.ts\\\",\\\"keyword.operator.expression.typeof.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":\\\"support.function.macro.julia\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"constant.language.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":\\\"constant.other.symbol.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eba0ac\\\"}},{\\\"scope\\\":\\\"text.tex keyword.control.preamble\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"text.tex support.function.be\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89dceb\\\"}},{\\\"scope\\\":\\\"constant.other.general.math.tex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f2cdcd\\\"}},{\\\"scope\\\":\\\"variable.language.liquid\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":\\\"comment.line.double-dash.documentation.lua storage.type.annotation.lua\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":[\\\"comment.line.double-dash.documentation.lua entity.name.variable.lua\\\",\\\"comment.line.double-dash.documentation.lua variable.lua\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":[\\\"heading.1.markdown punctuation.definition.heading.markdown\\\",\\\"heading.1.markdown\\\",\\\"heading.1.quarto punctuation.definition.heading.quarto\\\",\\\"heading.1.quarto\\\",\\\"markup.heading.atx.1.mdx\\\",\\\"markup.heading.atx.1.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.setext.1.markdown\\\",\\\"markup.heading.heading-0.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f38ba8\\\"}},{\\\"scope\\\":[\\\"heading.2.markdown punctuation.definition.heading.markdown\\\",\\\"heading.2.markdown\\\",\\\"heading.2.quarto punctuation.definition.heading.quarto\\\",\\\"heading.2.quarto\\\",\\\"markup.heading.atx.2.mdx\\\",\\\"markup.heading.atx.2.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.setext.2.markdown\\\",\\\"markup.heading.heading-1.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":[\\\"heading.3.markdown punctuation.definition.heading.markdown\\\",\\\"heading.3.markdown\\\",\\\"heading.3.quarto punctuation.definition.heading.quarto\\\",\\\"heading.3.quarto\\\",\\\"markup.heading.atx.3.mdx\\\",\\\"markup.heading.atx.3.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-2.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":[\\\"heading.4.markdown punctuation.definition.heading.markdown\\\",\\\"heading.4.markdown\\\",\\\"heading.4.quarto punctuation.definition.heading.quarto\\\",\\\"heading.4.quarto\\\",\\\"markup.heading.atx.4.mdx\\\",\\\"markup.heading.atx.4.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-3.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6e3a1\\\"}},{\\\"scope\\\":[\\\"heading.5.markdown punctuation.definition.heading.markdown\\\",\\\"heading.5.markdown\\\",\\\"heading.5.quarto punctuation.definition.heading.quarto\\\",\\\"heading.5.quarto\\\",\\\"markup.heading.atx.5.mdx\\\",\\\"markup.heading.atx.5.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-4.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":[\\\"heading.6.markdown punctuation.definition.heading.markdown\\\",\\\"heading.6.markdown\\\",\\\"heading.6.quarto punctuation.definition.heading.quarto\\\",\\\"heading.6.quarto\\\",\\\"markup.heading.atx.6.mdx\\\",\\\"markup.heading.atx.6.mdx punctuation.definition.heading.mdx\\\",\\\"markup.heading.heading-5.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f38ba8\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f38ba8\\\"}},{\\\"scope\\\":\\\"markup.strikethrough\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\",\\\"foreground\\\":\\\"#a6adc8\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.link\\\",\\\"markup.underline.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":[\\\"text.html.markdown punctuation.definition.link.title\\\",\\\"text.html.quarto punctuation.definition.link.title\\\",\\\"string.other.link.title.markdown\\\",\\\"string.other.link.title.quarto\\\",\\\"markup.link\\\",\\\"punctuation.definition.constant.markdown\\\",\\\"punctuation.definition.constant.quarto\\\",\\\"constant.other.reference.link.markdown\\\",\\\"constant.other.reference.link.quarto\\\",\\\"markup.substitution.attribute-reference\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b4befe\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.raw.markdown\\\",\\\"punctuation.definition.raw.quarto\\\",\\\"markup.inline.raw.string.markdown\\\",\\\"markup.inline.raw.string.quarto\\\",\\\"markup.raw.block.markdown\\\",\\\"markup.raw.block.quarto\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6e3a1\\\"}},{\\\"scope\\\":\\\"fenced_code.block.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89dceb\\\"}},{\\\"scope\\\":[\\\"markup.fenced_code.block punctuation.definition\\\",\\\"markup.raw support.asciidoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9399b2\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\",\\\"punctuation.definition.quote.begin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":\\\"meta.separator.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.list.begin.markdown\\\",\\\"punctuation.definition.list.begin.quarto\\\",\\\"markup.list.bullet\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"markup.heading.quarto\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.multipart.nix\\\",\\\"entity.other.attribute-name.single.nix\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":\\\"variable.parameter.name.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":\\\"meta.embedded variable.parameter.name.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#b4befe\\\"}},{\\\"scope\\\":\\\"string.unquoted.path.nix\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":[\\\"support.attribute.builtin\\\",\\\"meta.attribute.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"meta.function.parameters.php punctuation.definition.variable.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eba0ac\\\"}},{\\\"scope\\\":\\\"constant.language.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":\\\"text.html.php support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89dceb\\\"}},{\\\"scope\\\":\\\"keyword.other.phpdoc.php\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"support.variable.magic.python\\\",\\\"meta.function-call.arguments.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":[\\\"support.function.magic.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89dceb\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.language.special.self.python\\\",\\\"variable.language.special.self.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f38ba8\\\"}},{\\\"scope\\\":[\\\"keyword.control.flow.python\\\",\\\"keyword.operator.logical.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":\\\"storage.type.function.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":[\\\"support.token.decorator.python\\\",\\\"meta.function.decorator.identifier.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89dceb\\\"}},{\\\"scope\\\":[\\\"meta.function-call.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":[\\\"entity.name.function.decorator.python\\\",\\\"punctuation.definition.decorator.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":\\\"constant.character.format.placeholder.other.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":[\\\"support.type.exception.python\\\",\\\"support.function.builtin.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":[\\\"support.type.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":\\\"constant.language.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":[\\\"meta.indexed-name.python\\\",\\\"meta.item-access.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#eba0ac\\\"}},{\\\"scope\\\":\\\"storage.type.string.python\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#a6e3a1\\\"}},{\\\"scope\\\":\\\"meta.function.parameters.python\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"string.regexp punctuation.definition.string.begin\\\",\\\"string.regexp punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":\\\"keyword.control.anchor.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":\\\"string.regexp.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.regexp\\\",\\\"keyword.other.back-reference.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6e3a1\\\"}},{\\\"scope\\\":\\\"punctuation.definition.character-class.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"constant.other.character-class.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":\\\"constant.other.character-class.range.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5e0dc\\\"}},{\\\"scope\\\":\\\"keyword.operator.quantifier.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"constant.character.numeric.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.no-capture.regexp\\\",\\\"meta.assertion.look-ahead.regexp\\\",\\\"meta.assertion.negative-look-ahead.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":[\\\"meta.annotation.rust\\\",\\\"meta.annotation.rust punctuation\\\",\\\"meta.attribute.rust\\\",\\\"punctuation.definition.attribute.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":[\\\"meta.attribute.rust string.quoted.double.rust\\\",\\\"meta.attribute.rust string.quoted.single.char.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"entity.name.function.macro.rules.rust\\\",\\\"storage.type.module.rust\\\",\\\"storage.modifier.rust\\\",\\\"storage.type.struct.rust\\\",\\\"storage.type.enum.rust\\\",\\\"storage.type.trait.rust\\\",\\\"storage.type.union.rust\\\",\\\"storage.type.impl.rust\\\",\\\"storage.type.rust\\\",\\\"storage.type.function.rust\\\",\\\"storage.type.type.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":\\\"entity.name.type.numeric.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":\\\"meta.generic.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":\\\"entity.name.impl.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"entity.name.module.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":\\\"entity.name.trait.rust\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"storage.type.source.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"entity.name.union.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f9e2af\\\"}},{\\\"scope\\\":\\\"meta.enum.rust storage.type.source.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":[\\\"support.macro.rust\\\",\\\"meta.macro.rust support.function.rust\\\",\\\"entity.name.function.macro.rust\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":[\\\"storage.modifier.lifetime.rust\\\",\\\"entity.name.type.lifetime\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":\\\"string.quoted.double.rust constant.other.placeholder.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":\\\"meta.function.return-type.rust meta.generic.rust storage.type.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":\\\"meta.function.call.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89b4fa\\\"}},{\\\"scope\\\":\\\"punctuation.brackets.angle.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89dceb\\\"}},{\\\"scope\\\":\\\"constant.other.caps.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":[\\\"meta.function.definition.rust variable.other.rust\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eba0ac\\\"}},{\\\"scope\\\":\\\"meta.function.call.rust variable.other.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}},{\\\"scope\\\":\\\"variable.language.self.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f38ba8\\\"}},{\\\"scope\\\":[\\\"variable.other.metavariable.name.rust\\\",\\\"meta.macro.metavariable.rust keyword.operator.macro.dollar.rust\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":[\\\"comment.line.shebang\\\",\\\"comment.line.shebang punctuation.definition.comment\\\",\\\"comment.line.shebang\\\",\\\"punctuation.definition.comment.shebang.shell\\\",\\\"meta.shebang.shell\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f5c2e7\\\"}},{\\\"scope\\\":\\\"comment.line.shebang constant.language\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":[\\\"meta.function-call.arguments.shell punctuation.definition.variable.shell\\\",\\\"meta.function-call.arguments.shell punctuation.section.interpolation\\\",\\\"meta.function-call.arguments.shell punctuation.definition.variable.shell\\\",\\\"meta.function-call.arguments.shell punctuation.section.interpolation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f38ba8\\\"}},{\\\"scope\\\":\\\"meta.string meta.interpolation.parameter.shell variable.other.readwrite\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fab387\\\"}},{\\\"scope\\\":[\\\"source.shell punctuation.section.interpolation\\\",\\\"punctuation.definition.evaluation.backticks.shell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#94e2d5\\\"}},{\\\"scope\\\":\\\"entity.name.tag.heredoc.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cba6f7\\\"}},{\\\"scope\\\":\\\"string.quoted.double.shell variable.other.normal.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cdd6f4\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: dark-plus */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"actionBar.toggledBackground\\\":\\\"#383a49\\\",\\\"activityBarBadge.background\\\":\\\"#007ACC\\\",\\\"checkbox.border\\\":\\\"#6B6B6B\\\",\\\"editor.background\\\":\\\"#1E1E1E\\\",\\\"editor.foreground\\\":\\\"#D4D4D4\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#3A3D41\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#ADD6FF26\\\",\\\"editorIndentGuide.activeBackground1\\\":\\\"#707070\\\",\\\"editorIndentGuide.background1\\\":\\\"#404040\\\",\\\"input.placeholderForeground\\\":\\\"#A6A6A6\\\",\\\"list.activeSelectionIconForeground\\\":\\\"#FFF\\\",\\\"list.dropBackground\\\":\\\"#383B3D\\\",\\\"menu.background\\\":\\\"#252526\\\",\\\"menu.border\\\":\\\"#454545\\\",\\\"menu.foreground\\\":\\\"#CCCCCC\\\",\\\"menu.selectionBackground\\\":\\\"#0078d4\\\",\\\"menu.separatorBackground\\\":\\\"#454545\\\",\\\"ports.iconRunningProcessForeground\\\":\\\"#369432\\\",\\\"sideBarSectionHeader.background\\\":\\\"#0000\\\",\\\"sideBarSectionHeader.border\\\":\\\"#ccc3\\\",\\\"sideBarTitle.foreground\\\":\\\"#BBBBBB\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#16825D\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#FFF\\\",\\\"tab.lastPinnedBorder\\\":\\\"#ccc3\\\",\\\"tab.selectedBackground\\\":\\\"#222222\\\",\\\"tab.selectedForeground\\\":\\\"#ffffffa0\\\",\\\"terminal.inactiveSelectionBackground\\\":\\\"#3A3D41\\\",\\\"widget.border\\\":\\\"#303031\\\"},\\\"displayName\\\":\\\"Dark Plus\\\",\\\"name\\\":\\\"dark-plus\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"customLiteral\\\":\\\"#DCDCAA\\\",\\\"newOperator\\\":\\\"#C586C0\\\",\\\"numberLiteral\\\":\\\"#b5cea8\\\",\\\"stringLiteral\\\":\\\"#ce9178\\\"},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"meta.embedded\\\",\\\"source.groovy.embedded\\\",\\\"string meta.image.inline.markdown\\\",\\\"variable.legacy.builtin.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D4D4D4\\\"}},{\\\"scope\\\":\\\"emphasis\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"strong\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#000080\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6A9955\\\"}},{\\\"scope\\\":\\\"constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"variable.other.enummember\\\",\\\"keyword.operator.plus.exponent\\\",\\\"keyword.operator.minus.exponent\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b5cea8\\\"}},{\\\"scope\\\":\\\"constant.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#646695\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":[\\\"entity.name.tag.css\\\",\\\"entity.name.tag.less\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d7ba7d\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9cdcfe\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.class.css\\\",\\\"source.css entity.other.attribute-name.class\\\",\\\"entity.other.attribute-name.id.css\\\",\\\"entity.other.attribute-name.parent-selector.css\\\",\\\"entity.other.attribute-name.parent.less\\\",\\\"source.css entity.other.attribute-name.pseudo-class\\\",\\\"entity.other.attribute-name.pseudo-element.css\\\",\\\"source.css.less entity.other.attribute-name.id\\\",\\\"entity.other.attribute-name.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d7ba7d\\\"}},{\\\"scope\\\":\\\"invalid\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f44747\\\"}},{\\\"scope\\\":\\\"markup.underline\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.strikethrough\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b5cea8\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"markup.changed\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"punctuation.definition.quote.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6A9955\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6796e6\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#808080\\\"}},{\\\"scope\\\":[\\\"meta.preprocessor\\\",\\\"entity.name.function.preprocessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"meta.preprocessor.string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"meta.preprocessor.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b5cea8\\\"}},{\\\"scope\\\":\\\"meta.structure.dictionary.key.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9cdcfe\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"storage\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":[\\\"storage.modifier\\\",\\\"keyword.operator.noexcept\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"meta.embedded.assembly\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"string.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"string.value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"string.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d16969\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.template-expression.begin\\\",\\\"punctuation.definition.template-expression.end\\\",\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":[\\\"meta.template.expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d4d4d4\\\"}},{\\\"scope\\\":[\\\"support.type.vendored.property-name\\\",\\\"support.type.property-name\\\",\\\"source.css variable\\\",\\\"source.coffee.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9cdcfe\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"keyword.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"keyword.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d4d4d4\\\"}},{\\\"scope\\\":[\\\"keyword.operator.new\\\",\\\"keyword.operator.expression\\\",\\\"keyword.operator.cast\\\",\\\"keyword.operator.sizeof\\\",\\\"keyword.operator.alignof\\\",\\\"keyword.operator.typeid\\\",\\\"keyword.operator.alignas\\\",\\\"keyword.operator.instanceof\\\",\\\"keyword.operator.logical.python\\\",\\\"keyword.operator.wordlike\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"keyword.other.unit\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b5cea8\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded.begin.php\\\",\\\"punctuation.section.embedded.end.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"support.function.git-rebase\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9cdcfe\\\"}},{\\\"scope\\\":\\\"constant.sha.git-rebase\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b5cea8\\\"}},{\\\"scope\\\":[\\\"storage.modifier.import.java\\\",\\\"variable.language.wildcard.java\\\",\\\"storage.modifier.package.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d4d4d4\\\"}},{\\\"scope\\\":\\\"variable.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"support.function\\\",\\\"support.constant.handlebars\\\",\\\"source.powershell variable.other.member\\\",\\\"entity.name.operator.custom-literal\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCDCAA\\\"}},{\\\"scope\\\":[\\\"support.class\\\",\\\"support.type\\\",\\\"entity.name.type\\\",\\\"entity.name.namespace\\\",\\\"entity.other.attribute\\\",\\\"entity.name.scope-resolution\\\",\\\"entity.name.class\\\",\\\"storage.type.numeric.go\\\",\\\"storage.type.byte.go\\\",\\\"storage.type.boolean.go\\\",\\\"storage.type.string.go\\\",\\\"storage.type.uintptr.go\\\",\\\"storage.type.error.go\\\",\\\"storage.type.rune.go\\\",\\\"storage.type.cs\\\",\\\"storage.type.generic.cs\\\",\\\"storage.type.modifier.cs\\\",\\\"storage.type.variable.cs\\\",\\\"storage.type.annotation.java\\\",\\\"storage.type.generic.java\\\",\\\"storage.type.java\\\",\\\"storage.type.object.array.java\\\",\\\"storage.type.primitive.array.java\\\",\\\"storage.type.primitive.java\\\",\\\"storage.type.token.java\\\",\\\"storage.type.groovy\\\",\\\"storage.type.annotation.groovy\\\",\\\"storage.type.parameters.groovy\\\",\\\"storage.type.generic.groovy\\\",\\\"storage.type.object.array.groovy\\\",\\\"storage.type.primitive.array.groovy\\\",\\\"storage.type.primitive.groovy\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4EC9B0\\\"}},{\\\"scope\\\":[\\\"meta.type.cast.expr\\\",\\\"meta.type.new.expr\\\",\\\"support.constant.math\\\",\\\"support.constant.dom\\\",\\\"support.constant.json\\\",\\\"entity.other.inherited-class\\\",\\\"punctuation.separator.namespace.ruby\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4EC9B0\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\",\\\"source.cpp keyword.operator.new\\\",\\\"keyword.operator.delete\\\",\\\"keyword.other.using\\\",\\\"keyword.other.directive.using\\\",\\\"keyword.other.operator\\\",\\\"entity.name.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C586C0\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"meta.definition.variable.name\\\",\\\"support.variable\\\",\\\"entity.name.variable\\\",\\\"constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9CDCFE\\\"}},{\\\"scope\\\":[\\\"variable.other.constant\\\",\\\"variable.other.enummember\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4FC1FF\\\"}},{\\\"scope\\\":[\\\"meta.object-literal.key\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9CDCFE\\\"}},{\\\"scope\\\":[\\\"support.constant.property-value\\\",\\\"support.constant.font-name\\\",\\\"support.constant.media-type\\\",\\\"support.constant.media\\\",\\\"constant.other.color.rgb-value\\\",\\\"constant.other.rgb-value\\\",\\\"support.constant.color\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CE9178\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.regexp\\\",\\\"punctuation.definition.group.assertion.regexp\\\",\\\"punctuation.definition.character-class.regexp\\\",\\\"punctuation.character.set.begin.regexp\\\",\\\"punctuation.character.set.end.regexp\\\",\\\"keyword.operator.negation.regexp\\\",\\\"support.other.parenthesis.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CE9178\\\"}},{\\\"scope\\\":[\\\"constant.character.character-class.regexp\\\",\\\"constant.other.character-class.set.regexp\\\",\\\"constant.other.character-class.regexp\\\",\\\"constant.character.set.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d16969\\\"}},{\\\"scope\\\":[\\\"keyword.operator.or.regexp\\\",\\\"keyword.control.anchor.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCDCAA\\\"}},{\\\"scope\\\":\\\"keyword.operator.quantifier.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d7ba7d\\\"}},{\\\"scope\\\":[\\\"constant.character\\\",\\\"constant.other.option\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d7ba7d\\\"}},{\\\"scope\\\":\\\"entity.name.label\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C8C8C8\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: dracula */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBackground\\\":\\\"#BD93F910\\\",\\\"activityBar.activeBorder\\\":\\\"#FF79C680\\\",\\\"activityBar.background\\\":\\\"#343746\\\",\\\"activityBar.foreground\\\":\\\"#F8F8F2\\\",\\\"activityBar.inactiveForeground\\\":\\\"#6272A4\\\",\\\"activityBarBadge.background\\\":\\\"#FF79C6\\\",\\\"activityBarBadge.foreground\\\":\\\"#F8F8F2\\\",\\\"badge.background\\\":\\\"#44475A\\\",\\\"badge.foreground\\\":\\\"#F8F8F2\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#F8F8F2\\\",\\\"breadcrumb.background\\\":\\\"#282A36\\\",\\\"breadcrumb.focusForeground\\\":\\\"#F8F8F2\\\",\\\"breadcrumb.foreground\\\":\\\"#6272A4\\\",\\\"breadcrumbPicker.background\\\":\\\"#191A21\\\",\\\"button.background\\\":\\\"#44475A\\\",\\\"button.foreground\\\":\\\"#F8F8F2\\\",\\\"button.secondaryBackground\\\":\\\"#282A36\\\",\\\"button.secondaryForeground\\\":\\\"#F8F8F2\\\",\\\"button.secondaryHoverBackground\\\":\\\"#343746\\\",\\\"debugToolBar.background\\\":\\\"#21222C\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#50FA7B20\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#FF555550\\\",\\\"dropdown.background\\\":\\\"#343746\\\",\\\"dropdown.border\\\":\\\"#191A21\\\",\\\"dropdown.foreground\\\":\\\"#F8F8F2\\\",\\\"editor.background\\\":\\\"#282A36\\\",\\\"editor.findMatchBackground\\\":\\\"#FFB86C80\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#FFFFFF40\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#44475A75\\\",\\\"editor.foldBackground\\\":\\\"#21222C80\\\",\\\"editor.foreground\\\":\\\"#F8F8F2\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#8BE9FD50\\\",\\\"editor.lineHighlightBorder\\\":\\\"#44475A\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#BD93F915\\\",\\\"editor.selectionBackground\\\":\\\"#44475A\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#424450\\\",\\\"editor.snippetFinalTabstopHighlightBackground\\\":\\\"#282A36\\\",\\\"editor.snippetFinalTabstopHighlightBorder\\\":\\\"#50FA7B\\\",\\\"editor.snippetTabstopHighlightBackground\\\":\\\"#282A36\\\",\\\"editor.snippetTabstopHighlightBorder\\\":\\\"#6272A4\\\",\\\"editor.wordHighlightBackground\\\":\\\"#8BE9FD50\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#50FA7B50\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#F8F8F2\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#FF79C6\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#8BE9FD\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#50FA7B\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#BD93F9\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#FFB86C\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#FF5555\\\",\\\"editorCodeLens.foreground\\\":\\\"#6272A4\\\",\\\"editorError.foreground\\\":\\\"#FF5555\\\",\\\"editorGroup.border\\\":\\\"#BD93F9\\\",\\\"editorGroup.dropBackground\\\":\\\"#44475A70\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#191A21\\\",\\\"editorGutter.addedBackground\\\":\\\"#50FA7B80\\\",\\\"editorGutter.deletedBackground\\\":\\\"#FF555580\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#8BE9FD80\\\",\\\"editorHoverWidget.background\\\":\\\"#282A36\\\",\\\"editorHoverWidget.border\\\":\\\"#6272A4\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#FFFFFF45\\\",\\\"editorIndentGuide.background\\\":\\\"#FFFFFF1A\\\",\\\"editorLineNumber.foreground\\\":\\\"#6272A4\\\",\\\"editorLink.activeForeground\\\":\\\"#8BE9FD\\\",\\\"editorMarkerNavigation.background\\\":\\\"#21222C\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#50FA7B80\\\",\\\"editorOverviewRuler.border\\\":\\\"#191A21\\\",\\\"editorOverviewRuler.currentContentForeground\\\":\\\"#50FA7B\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#FF555580\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#FF555580\\\",\\\"editorOverviewRuler.incomingContentForeground\\\":\\\"#BD93F9\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#8BE9FD80\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#8BE9FD80\\\",\\\"editorOverviewRuler.selectionHighlightForeground\\\":\\\"#FFB86C\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#FFB86C80\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#8BE9FD\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#50FA7B\\\",\\\"editorRuler.foreground\\\":\\\"#FFFFFF1A\\\",\\\"editorSuggestWidget.background\\\":\\\"#21222C\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#F8F8F2\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#44475A\\\",\\\"editorWarning.foreground\\\":\\\"#8BE9FD\\\",\\\"editorWhitespace.foreground\\\":\\\"#FFFFFF1A\\\",\\\"editorWidget.background\\\":\\\"#21222C\\\",\\\"errorForeground\\\":\\\"#FF5555\\\",\\\"extensionButton.prominentBackground\\\":\\\"#50FA7B90\\\",\\\"extensionButton.prominentForeground\\\":\\\"#F8F8F2\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#50FA7B60\\\",\\\"focusBorder\\\":\\\"#6272A4\\\",\\\"foreground\\\":\\\"#F8F8F2\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#FFB86C\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#FF5555\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#6272A4\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#8BE9FD\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#50FA7B\\\",\\\"inlineChat.regionHighlight\\\":\\\"#343746\\\",\\\"input.background\\\":\\\"#282A36\\\",\\\"input.border\\\":\\\"#191A21\\\",\\\"input.foreground\\\":\\\"#F8F8F2\\\",\\\"input.placeholderForeground\\\":\\\"#6272A4\\\",\\\"inputOption.activeBorder\\\":\\\"#BD93F9\\\",\\\"inputValidation.errorBorder\\\":\\\"#FF5555\\\",\\\"inputValidation.infoBorder\\\":\\\"#FF79C6\\\",\\\"inputValidation.warningBorder\\\":\\\"#FFB86C\\\",\\\"list.activeSelectionBackground\\\":\\\"#44475A\\\",\\\"list.activeSelectionForeground\\\":\\\"#F8F8F2\\\",\\\"list.dropBackground\\\":\\\"#44475A\\\",\\\"list.errorForeground\\\":\\\"#FF5555\\\",\\\"list.focusBackground\\\":\\\"#44475A75\\\",\\\"list.highlightForeground\\\":\\\"#8BE9FD\\\",\\\"list.hoverBackground\\\":\\\"#44475A75\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#44475A75\\\",\\\"list.warningForeground\\\":\\\"#FFB86C\\\",\\\"listFilterWidget.background\\\":\\\"#343746\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#FF5555\\\",\\\"listFilterWidget.outline\\\":\\\"#424450\\\",\\\"merge.currentHeaderBackground\\\":\\\"#50FA7B90\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#BD93F990\\\",\\\"panel.background\\\":\\\"#282A36\\\",\\\"panel.border\\\":\\\"#BD93F9\\\",\\\"panelTitle.activeBorder\\\":\\\"#FF79C6\\\",\\\"panelTitle.activeForeground\\\":\\\"#F8F8F2\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#6272A4\\\",\\\"peekView.border\\\":\\\"#44475A\\\",\\\"peekViewEditor.background\\\":\\\"#282A36\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#F1FA8C80\\\",\\\"peekViewResult.background\\\":\\\"#21222C\\\",\\\"peekViewResult.fileForeground\\\":\\\"#F8F8F2\\\",\\\"peekViewResult.lineForeground\\\":\\\"#F8F8F2\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#F1FA8C80\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#44475A\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#F8F8F2\\\",\\\"peekViewTitle.background\\\":\\\"#191A21\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#6272A4\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#F8F8F2\\\",\\\"pickerGroup.border\\\":\\\"#BD93F9\\\",\\\"pickerGroup.foreground\\\":\\\"#8BE9FD\\\",\\\"progressBar.background\\\":\\\"#FF79C6\\\",\\\"selection.background\\\":\\\"#BD93F9\\\",\\\"settings.checkboxBackground\\\":\\\"#21222C\\\",\\\"settings.checkboxBorder\\\":\\\"#191A21\\\",\\\"settings.checkboxForeground\\\":\\\"#F8F8F2\\\",\\\"settings.dropdownBackground\\\":\\\"#21222C\\\",\\\"settings.dropdownBorder\\\":\\\"#191A21\\\",\\\"settings.dropdownForeground\\\":\\\"#F8F8F2\\\",\\\"settings.headerForeground\\\":\\\"#F8F8F2\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#FFB86C\\\",\\\"settings.numberInputBackground\\\":\\\"#21222C\\\",\\\"settings.numberInputBorder\\\":\\\"#191A21\\\",\\\"settings.numberInputForeground\\\":\\\"#F8F8F2\\\",\\\"settings.textInputBackground\\\":\\\"#21222C\\\",\\\"settings.textInputBorder\\\":\\\"#191A21\\\",\\\"settings.textInputForeground\\\":\\\"#F8F8F2\\\",\\\"sideBar.background\\\":\\\"#21222C\\\",\\\"sideBarSectionHeader.background\\\":\\\"#282A36\\\",\\\"sideBarSectionHeader.border\\\":\\\"#191A21\\\",\\\"sideBarTitle.foreground\\\":\\\"#F8F8F2\\\",\\\"statusBar.background\\\":\\\"#191A21\\\",\\\"statusBar.debuggingBackground\\\":\\\"#FF5555\\\",\\\"statusBar.debuggingForeground\\\":\\\"#191A21\\\",\\\"statusBar.foreground\\\":\\\"#F8F8F2\\\",\\\"statusBar.noFolderBackground\\\":\\\"#191A21\\\",\\\"statusBar.noFolderForeground\\\":\\\"#F8F8F2\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#FF5555\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#FFB86C\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#BD93F9\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#282A36\\\",\\\"tab.activeBackground\\\":\\\"#282A36\\\",\\\"tab.activeBorderTop\\\":\\\"#FF79C680\\\",\\\"tab.activeForeground\\\":\\\"#F8F8F2\\\",\\\"tab.border\\\":\\\"#191A21\\\",\\\"tab.inactiveBackground\\\":\\\"#21222C\\\",\\\"tab.inactiveForeground\\\":\\\"#6272A4\\\",\\\"terminal.ansiBlack\\\":\\\"#21222C\\\",\\\"terminal.ansiBlue\\\":\\\"#BD93F9\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#6272A4\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#D6ACFF\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#A4FFFF\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#69FF94\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#FF92DF\\\",\\\"terminal.ansiBrightRed\\\":\\\"#FF6E6E\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#FFFFFF\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#FFFFA5\\\",\\\"terminal.ansiCyan\\\":\\\"#8BE9FD\\\",\\\"terminal.ansiGreen\\\":\\\"#50FA7B\\\",\\\"terminal.ansiMagenta\\\":\\\"#FF79C6\\\",\\\"terminal.ansiRed\\\":\\\"#FF5555\\\",\\\"terminal.ansiWhite\\\":\\\"#F8F8F2\\\",\\\"terminal.ansiYellow\\\":\\\"#F1FA8C\\\",\\\"terminal.background\\\":\\\"#282A36\\\",\\\"terminal.foreground\\\":\\\"#F8F8F2\\\",\\\"titleBar.activeBackground\\\":\\\"#21222C\\\",\\\"titleBar.activeForeground\\\":\\\"#F8F8F2\\\",\\\"titleBar.inactiveBackground\\\":\\\"#191A21\\\",\\\"titleBar.inactiveForeground\\\":\\\"#6272A4\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#21222C\\\"},\\\"displayName\\\":\\\"Dracula Theme\\\",\\\"name\\\":\\\"dracula\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"emphasis\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"strong\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"header\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#BD93F9\\\"}},{\\\"scope\\\":[\\\"meta.diff\\\",\\\"meta.diff.header\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6272A4\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50FA7B\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5555\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"invalid\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline italic\\\",\\\"foreground\\\":\\\"#FF5555\\\"}},{\\\"scope\\\":[\\\"invalid.deprecated\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline italic\\\",\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":[\\\"entity.name.filename\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F1FA8C\\\"}},{\\\"scope\\\":[\\\"markup.error\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5555\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#BD93F9\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#F1FA8C\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.list.markdown\\\",\\\"beginning.punctuation.definition.quote.markdown\\\",\\\"punctuation.definition.link.restructuredtext\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8BE9FD\\\"}},{\\\"scope\\\":[\\\"markup.inline.raw\\\",\\\"markup.raw.restructuredtext\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50FA7B\\\"}},{\\\"scope\\\":[\\\"markup.underline.link\\\",\\\"markup.underline.link.image\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8BE9FD\\\"}},{\\\"scope\\\":[\\\"meta.link.reference.def.restructuredtext\\\",\\\"punctuation.definition.directive.restructuredtext\\\",\\\"string.other.link.description\\\",\\\"string.other.link.title\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"entity.name.directive.restructuredtext\\\",\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#F1FA8C\\\"}},{\\\"scope\\\":[\\\"meta.separator.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6272A4\\\"}},{\\\"scope\\\":[\\\"fenced_code.block.language\\\",\\\"markup.raw.inner.restructuredtext\\\",\\\"markup.fenced_code.block.markdown punctuation.definition.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50FA7B\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.constant.restructuredtext\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#BD93F9\\\"}},{\\\"scope\\\":[\\\"markup.heading.markdown punctuation.definition.string.begin\\\",\\\"markup.heading.markdown punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#BD93F9\\\"}},{\\\"scope\\\":[\\\"meta.paragraph.markdown punctuation.definition.string.begin\\\",\\\"meta.paragraph.markdown punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":[\\\"markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.begin\\\",\\\"markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F1FA8C\\\"}},{\\\"scope\\\":[\\\"entity.name.type.class\\\",\\\"entity.name.class\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\",\\\"foreground\\\":\\\"#8BE9FD\\\"}},{\\\"scope\\\":[\\\"keyword.expressions-and-types.swift\\\",\\\"keyword.other.this\\\",\\\"variable.language\\\",\\\"variable.language punctuation.definition.variable.php\\\",\\\"variable.other.readwrite.instance.ruby\\\",\\\"variable.parameter.function.language.special\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#BD93F9\\\"}},{\\\"scope\\\":[\\\"entity.other.inherited-class\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8BE9FD\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"unused.comment\\\",\\\"wildcard.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6272A4\\\"}},{\\\"scope\\\":[\\\"comment keyword.codetag.notation\\\",\\\"comment.block.documentation keyword\\\",\\\"comment.block.documentation storage.type.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"comment.block.documentation entity.name.type\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8BE9FD\\\"}},{\\\"scope\\\":[\\\"comment.block.documentation entity.name.type punctuation.definition.bracket\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8BE9FD\\\"}},{\\\"scope\\\":[\\\"comment.block.documentation variable\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"variable.other.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#BD93F9\\\"}},{\\\"scope\\\":[\\\"constant.character.escape\\\",\\\"constant.character.string.escape\\\",\\\"constant.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.parent-selector\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#50FA7B\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.function-call.object\\\",\\\"meta.function-call.php\\\",\\\"meta.function-call.static\\\",\\\"meta.method-call.java meta.method\\\",\\\"meta.method.groovy\\\",\\\"support.function.any-method.lua\\\",\\\"keyword.operator.function.infix\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50FA7B\\\"}},{\\\"scope\\\":[\\\"entity.name.variable.parameter\\\",\\\"meta.at-rule.function variable\\\",\\\"meta.at-rule.mixin variable\\\",\\\"meta.function.arguments variable.other.php\\\",\\\"meta.selectionset.graphql meta.arguments.graphql variable.arguments.graphql\\\",\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"meta.decorator variable.other.readwrite\\\",\\\"meta.decorator variable.other.property\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#50FA7B\\\"}},{\\\"scope\\\":[\\\"meta.decorator variable.other.object\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50FA7B\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"punctuation.definition.keyword\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"keyword.control.new\\\",\\\"keyword.operator.new\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"meta.selector\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"support\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8BE9FD\\\"}},{\\\"scope\\\":[\\\"support.function.magic\\\",\\\"support.variable\\\",\\\"variable.other.predefined\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#BD93F9\\\"}},{\\\"scope\\\":[\\\"support.function\\\",\\\"support.type.property-name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\"}},{\\\"scope\\\":[\\\"constant.other.symbol.hashkey punctuation.definition.constant.ruby\\\",\\\"entity.other.attribute-name.placeholder punctuation\\\",\\\"entity.other.attribute-name.pseudo-class punctuation\\\",\\\"entity.other.attribute-name.pseudo-element punctuation\\\",\\\"meta.group.double.toml\\\",\\\"meta.group.toml\\\",\\\"meta.object-binding-pattern-variable punctuation.destructuring\\\",\\\"punctuation.colon.graphql\\\",\\\"punctuation.definition.block.scalar.folded.yaml\\\",\\\"punctuation.definition.block.scalar.literal.yaml\\\",\\\"punctuation.definition.block.sequence.item.yaml\\\",\\\"punctuation.definition.entity.other.inherited-class\\\",\\\"punctuation.function.swift\\\",\\\"punctuation.separator.dictionary.key-value\\\",\\\"punctuation.separator.hash\\\",\\\"punctuation.separator.inheritance\\\",\\\"punctuation.separator.key-value\\\",\\\"punctuation.separator.key-value.mapping.yaml\\\",\\\"punctuation.separator.namespace\\\",\\\"punctuation.separator.pointer-access\\\",\\\"punctuation.separator.slice\\\",\\\"string.unquoted.heredoc punctuation.definition.string\\\",\\\"support.other.chomping-indicator.yaml\\\",\\\"punctuation.separator.annotation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"keyword.operator.other.powershell\\\",\\\"keyword.other.statement-separator.powershell\\\",\\\"meta.brace.round\\\",\\\"meta.function-call punctuation\\\",\\\"punctuation.definition.arguments.begin\\\",\\\"punctuation.definition.arguments.end\\\",\\\"punctuation.definition.entity.begin\\\",\\\"punctuation.definition.entity.end\\\",\\\"punctuation.definition.tag.cs\\\",\\\"punctuation.definition.type.begin\\\",\\\"punctuation.definition.type.end\\\",\\\"punctuation.section.scope.begin\\\",\\\"punctuation.section.scope.end\\\",\\\"punctuation.terminator.expression.php\\\",\\\"storage.type.generic.java\\\",\\\"string.template meta.brace\\\",\\\"string.template punctuation.accessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":[\\\"meta.string-contents.quoted.double punctuation.definition.variable\\\",\\\"punctuation.definition.interpolation.begin\\\",\\\"punctuation.definition.interpolation.end\\\",\\\"punctuation.definition.template-expression.begin\\\",\\\"punctuation.definition.template-expression.end\\\",\\\"punctuation.section.embedded.begin\\\",\\\"punctuation.section.embedded.coffee\\\",\\\"punctuation.section.embedded.end\\\",\\\"punctuation.section.embedded.end source.php\\\",\\\"punctuation.section.embedded.end source.ruby\\\",\\\"punctuation.definition.variable.makefile\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"entity.name.function.target.makefile\\\",\\\"entity.name.section.toml\\\",\\\"entity.name.tag.yaml\\\",\\\"variable.other.key.toml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8BE9FD\\\"}},{\\\"scope\\\":[\\\"constant.other.date\\\",\\\"constant.other.timestamp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"variable.other.alias.yaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#50FA7B\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"meta.implementation storage.type.objc\\\",\\\"meta.interface-or-protocol storage.type.objc\\\",\\\"source.groovy storage.type.def\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"entity.name.type\\\",\\\"keyword.primitive-datatypes.swift\\\",\\\"keyword.type.cs\\\",\\\"meta.protocol-list.objc\\\",\\\"meta.return-type.objc\\\",\\\"source.go storage.type\\\",\\\"source.groovy storage.type\\\",\\\"source.java storage.type\\\",\\\"source.powershell entity.other.attribute-name\\\",\\\"storage.class.std.rust\\\",\\\"storage.type.attribute.swift\\\",\\\"storage.type.c\\\",\\\"storage.type.core.rust\\\",\\\"storage.type.cs\\\",\\\"storage.type.groovy\\\",\\\"storage.type.objc\\\",\\\"storage.type.php\\\",\\\"storage.type.haskell\\\",\\\"storage.type.ocaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#8BE9FD\\\"}},{\\\"scope\\\":[\\\"entity.name.type.type-parameter\\\",\\\"meta.indexer.mappedtype.declaration entity.name.type\\\",\\\"meta.type.parameters entity.name.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\",\\\"constant.other.character-class.set.regexp\\\",\\\"constant.character.escape.backslash.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F1FA8C\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.capture.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF79C6\\\"}},{\\\"scope\\\":[\\\"string.regexp punctuation.definition.string.begin\\\",\\\"string.regexp punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5555\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.character-class.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8BE9FD\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.assertion.regexp\\\",\\\"keyword.operator.negation.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5555\\\"}},{\\\"scope\\\":[\\\"meta.assertion.look-ahead.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50FA7B\\\"}},{\\\"scope\\\":[\\\"string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F1FA8C\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string.begin\\\",\\\"punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E9F284\\\"}},{\\\"scope\\\":[\\\"punctuation.support.type.property-name.begin\\\",\\\"punctuation.support.type.property-name.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8BE9FE\\\"}},{\\\"scope\\\":[\\\"string.quoted.docstring.multi\\\",\\\"string.quoted.docstring.multi.python punctuation.definition.string.begin\\\",\\\"string.quoted.docstring.multi.python punctuation.definition.string.end\\\",\\\"string.quoted.docstring.multi.python constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6272A4\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"constant.other.key.perl\\\",\\\"support.variable.property\\\",\\\"variable.other.constant.js\\\",\\\"variable.other.constant.ts\\\",\\\"variable.other.constant.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":[\\\"meta.import variable.other.readwrite\\\",\\\"meta.variable.assignment.destructured.object.coffee variable\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"meta.import variable.other.readwrite.alias\\\",\\\"meta.export variable.other.readwrite.alias\\\",\\\"meta.variable.assignment.destructured.object.coffee variable variable\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\",\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":[\\\"meta.selectionset.graphql variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F1FA8C\\\"}},{\\\"scope\\\":[\\\"meta.selectionset.graphql meta.arguments variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":[\\\"entity.name.fragment.graphql\\\",\\\"variable.fragment.graphql\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8BE9FD\\\"}},{\\\"scope\\\":[\\\"constant.other.symbol.hashkey.ruby\\\",\\\"keyword.operator.dereference.java\\\",\\\"keyword.operator.navigation.groovy\\\",\\\"meta.scope.for-loop.shell punctuation.definition.string.begin\\\",\\\"meta.scope.for-loop.shell punctuation.definition.string.end\\\",\\\"meta.scope.for-loop.shell string\\\",\\\"storage.modifier.import\\\",\\\"punctuation.section.embedded.begin.tsx\\\",\\\"punctuation.section.embedded.end.tsx\\\",\\\"punctuation.section.embedded.begin.jsx\\\",\\\"punctuation.section.embedded.end.jsx\\\",\\\"punctuation.separator.list.comma.css\\\",\\\"constant.language.empty-list.haskell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":[\\\"source.shell variable.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#BD93F9\\\"}},{\\\"scope\\\":[\\\"support.constant\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\",\\\"foreground\\\":\\\"#BD93F9\\\"}},{\\\"scope\\\":[\\\"meta.scope.prerequisites.makefile\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F1FA8C\\\"}},{\\\"scope\\\":[\\\"meta.attribute-selector.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F1FA8C\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.attribute-selector.end.bracket.square.scss\\\",\\\"punctuation.definition.attribute-selector.begin.bracket.square.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":[\\\"meta.preprocessor.haskell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6272A4\\\"}},{\\\"scope\\\":[\\\"log.error\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#FF5555\\\"}},{\\\"scope\\\":[\\\"log.warning\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#F1FA8C\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: dracula-soft */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBackground\\\":\\\"#BD93F910\\\",\\\"activityBar.activeBorder\\\":\\\"#FF79C680\\\",\\\"activityBar.background\\\":\\\"#343746\\\",\\\"activityBar.foreground\\\":\\\"#f6f6f4\\\",\\\"activityBar.inactiveForeground\\\":\\\"#7b7f8b\\\",\\\"activityBarBadge.background\\\":\\\"#f286c4\\\",\\\"activityBarBadge.foreground\\\":\\\"#f6f6f4\\\",\\\"badge.background\\\":\\\"#44475A\\\",\\\"badge.foreground\\\":\\\"#f6f6f4\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#f6f6f4\\\",\\\"breadcrumb.background\\\":\\\"#282A36\\\",\\\"breadcrumb.focusForeground\\\":\\\"#f6f6f4\\\",\\\"breadcrumb.foreground\\\":\\\"#7b7f8b\\\",\\\"breadcrumbPicker.background\\\":\\\"#191A21\\\",\\\"button.background\\\":\\\"#44475A\\\",\\\"button.foreground\\\":\\\"#f6f6f4\\\",\\\"button.secondaryBackground\\\":\\\"#282A36\\\",\\\"button.secondaryForeground\\\":\\\"#f6f6f4\\\",\\\"button.secondaryHoverBackground\\\":\\\"#343746\\\",\\\"debugToolBar.background\\\":\\\"#262626\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#50FA7B20\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#FF555550\\\",\\\"dropdown.background\\\":\\\"#343746\\\",\\\"dropdown.border\\\":\\\"#191A21\\\",\\\"dropdown.foreground\\\":\\\"#f6f6f4\\\",\\\"editor.background\\\":\\\"#282A36\\\",\\\"editor.findMatchBackground\\\":\\\"#FFB86C80\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#FFFFFF40\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#44475A75\\\",\\\"editor.foldBackground\\\":\\\"#21222C80\\\",\\\"editor.foreground\\\":\\\"#f6f6f4\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#8BE9FD50\\\",\\\"editor.lineHighlightBorder\\\":\\\"#44475A\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#BD93F915\\\",\\\"editor.selectionBackground\\\":\\\"#44475A\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#424450\\\",\\\"editor.snippetFinalTabstopHighlightBackground\\\":\\\"#282A36\\\",\\\"editor.snippetFinalTabstopHighlightBorder\\\":\\\"#62e884\\\",\\\"editor.snippetTabstopHighlightBackground\\\":\\\"#282A36\\\",\\\"editor.snippetTabstopHighlightBorder\\\":\\\"#7b7f8b\\\",\\\"editor.wordHighlightBackground\\\":\\\"#8BE9FD50\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#50FA7B50\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#f6f6f4\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#f286c4\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#97e1f1\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#62e884\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#bf9eee\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#FFB86C\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#ee6666\\\",\\\"editorCodeLens.foreground\\\":\\\"#7b7f8b\\\",\\\"editorError.foreground\\\":\\\"#ee6666\\\",\\\"editorGroup.border\\\":\\\"#bf9eee\\\",\\\"editorGroup.dropBackground\\\":\\\"#44475A70\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#191A21\\\",\\\"editorGutter.addedBackground\\\":\\\"#50FA7B80\\\",\\\"editorGutter.deletedBackground\\\":\\\"#FF555580\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#8BE9FD80\\\",\\\"editorHoverWidget.background\\\":\\\"#282A36\\\",\\\"editorHoverWidget.border\\\":\\\"#7b7f8b\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#FFFFFF45\\\",\\\"editorIndentGuide.background\\\":\\\"#FFFFFF1A\\\",\\\"editorLineNumber.foreground\\\":\\\"#7b7f8b\\\",\\\"editorLink.activeForeground\\\":\\\"#97e1f1\\\",\\\"editorMarkerNavigation.background\\\":\\\"#262626\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#50FA7B80\\\",\\\"editorOverviewRuler.border\\\":\\\"#191A21\\\",\\\"editorOverviewRuler.currentContentForeground\\\":\\\"#62e884\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#FF555580\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#FF555580\\\",\\\"editorOverviewRuler.incomingContentForeground\\\":\\\"#bf9eee\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#8BE9FD80\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#8BE9FD80\\\",\\\"editorOverviewRuler.selectionHighlightForeground\\\":\\\"#FFB86C\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#FFB86C80\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#97e1f1\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#62e884\\\",\\\"editorRuler.foreground\\\":\\\"#FFFFFF1A\\\",\\\"editorSuggestWidget.background\\\":\\\"#262626\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#f6f6f4\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#44475A\\\",\\\"editorWarning.foreground\\\":\\\"#97e1f1\\\",\\\"editorWhitespace.foreground\\\":\\\"#FFFFFF1A\\\",\\\"editorWidget.background\\\":\\\"#262626\\\",\\\"errorForeground\\\":\\\"#ee6666\\\",\\\"extensionButton.prominentBackground\\\":\\\"#50FA7B90\\\",\\\"extensionButton.prominentForeground\\\":\\\"#f6f6f4\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#50FA7B60\\\",\\\"focusBorder\\\":\\\"#7b7f8b\\\",\\\"foreground\\\":\\\"#f6f6f4\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#FFB86C\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#ee6666\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#7b7f8b\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#97e1f1\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#62e884\\\",\\\"inlineChat.regionHighlight\\\":\\\"#343746\\\",\\\"input.background\\\":\\\"#282A36\\\",\\\"input.border\\\":\\\"#191A21\\\",\\\"input.foreground\\\":\\\"#f6f6f4\\\",\\\"input.placeholderForeground\\\":\\\"#7b7f8b\\\",\\\"inputOption.activeBorder\\\":\\\"#bf9eee\\\",\\\"inputValidation.errorBorder\\\":\\\"#ee6666\\\",\\\"inputValidation.infoBorder\\\":\\\"#f286c4\\\",\\\"inputValidation.warningBorder\\\":\\\"#FFB86C\\\",\\\"list.activeSelectionBackground\\\":\\\"#44475A\\\",\\\"list.activeSelectionForeground\\\":\\\"#f6f6f4\\\",\\\"list.dropBackground\\\":\\\"#44475A\\\",\\\"list.errorForeground\\\":\\\"#ee6666\\\",\\\"list.focusBackground\\\":\\\"#44475A75\\\",\\\"list.highlightForeground\\\":\\\"#97e1f1\\\",\\\"list.hoverBackground\\\":\\\"#44475A75\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#44475A75\\\",\\\"list.warningForeground\\\":\\\"#FFB86C\\\",\\\"listFilterWidget.background\\\":\\\"#343746\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#ee6666\\\",\\\"listFilterWidget.outline\\\":\\\"#424450\\\",\\\"merge.currentHeaderBackground\\\":\\\"#50FA7B90\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#BD93F990\\\",\\\"panel.background\\\":\\\"#282A36\\\",\\\"panel.border\\\":\\\"#bf9eee\\\",\\\"panelTitle.activeBorder\\\":\\\"#f286c4\\\",\\\"panelTitle.activeForeground\\\":\\\"#f6f6f4\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#7b7f8b\\\",\\\"peekView.border\\\":\\\"#44475A\\\",\\\"peekViewEditor.background\\\":\\\"#282A36\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#F1FA8C80\\\",\\\"peekViewResult.background\\\":\\\"#262626\\\",\\\"peekViewResult.fileForeground\\\":\\\"#f6f6f4\\\",\\\"peekViewResult.lineForeground\\\":\\\"#f6f6f4\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#F1FA8C80\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#44475A\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#f6f6f4\\\",\\\"peekViewTitle.background\\\":\\\"#191A21\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#7b7f8b\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#f6f6f4\\\",\\\"pickerGroup.border\\\":\\\"#bf9eee\\\",\\\"pickerGroup.foreground\\\":\\\"#97e1f1\\\",\\\"progressBar.background\\\":\\\"#f286c4\\\",\\\"selection.background\\\":\\\"#bf9eee\\\",\\\"settings.checkboxBackground\\\":\\\"#262626\\\",\\\"settings.checkboxBorder\\\":\\\"#191A21\\\",\\\"settings.checkboxForeground\\\":\\\"#f6f6f4\\\",\\\"settings.dropdownBackground\\\":\\\"#262626\\\",\\\"settings.dropdownBorder\\\":\\\"#191A21\\\",\\\"settings.dropdownForeground\\\":\\\"#f6f6f4\\\",\\\"settings.headerForeground\\\":\\\"#f6f6f4\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#FFB86C\\\",\\\"settings.numberInputBackground\\\":\\\"#262626\\\",\\\"settings.numberInputBorder\\\":\\\"#191A21\\\",\\\"settings.numberInputForeground\\\":\\\"#f6f6f4\\\",\\\"settings.textInputBackground\\\":\\\"#262626\\\",\\\"settings.textInputBorder\\\":\\\"#191A21\\\",\\\"settings.textInputForeground\\\":\\\"#f6f6f4\\\",\\\"sideBar.background\\\":\\\"#262626\\\",\\\"sideBarSectionHeader.background\\\":\\\"#282A36\\\",\\\"sideBarSectionHeader.border\\\":\\\"#191A21\\\",\\\"sideBarTitle.foreground\\\":\\\"#f6f6f4\\\",\\\"statusBar.background\\\":\\\"#191A21\\\",\\\"statusBar.debuggingBackground\\\":\\\"#ee6666\\\",\\\"statusBar.debuggingForeground\\\":\\\"#191A21\\\",\\\"statusBar.foreground\\\":\\\"#f6f6f4\\\",\\\"statusBar.noFolderBackground\\\":\\\"#191A21\\\",\\\"statusBar.noFolderForeground\\\":\\\"#f6f6f4\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#ee6666\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#FFB86C\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#bf9eee\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#282A36\\\",\\\"tab.activeBackground\\\":\\\"#282A36\\\",\\\"tab.activeBorderTop\\\":\\\"#FF79C680\\\",\\\"tab.activeForeground\\\":\\\"#f6f6f4\\\",\\\"tab.border\\\":\\\"#191A21\\\",\\\"tab.inactiveBackground\\\":\\\"#262626\\\",\\\"tab.inactiveForeground\\\":\\\"#7b7f8b\\\",\\\"terminal.ansiBlack\\\":\\\"#262626\\\",\\\"terminal.ansiBlue\\\":\\\"#bf9eee\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#7b7f8b\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#d6b4f7\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#adf6f6\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#78f09a\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#f49dda\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f07c7c\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#f6f6ae\\\",\\\"terminal.ansiCyan\\\":\\\"#97e1f1\\\",\\\"terminal.ansiGreen\\\":\\\"#62e884\\\",\\\"terminal.ansiMagenta\\\":\\\"#f286c4\\\",\\\"terminal.ansiRed\\\":\\\"#ee6666\\\",\\\"terminal.ansiWhite\\\":\\\"#f6f6f4\\\",\\\"terminal.ansiYellow\\\":\\\"#e7ee98\\\",\\\"terminal.background\\\":\\\"#282A36\\\",\\\"terminal.foreground\\\":\\\"#f6f6f4\\\",\\\"titleBar.activeBackground\\\":\\\"#262626\\\",\\\"titleBar.activeForeground\\\":\\\"#f6f6f4\\\",\\\"titleBar.inactiveBackground\\\":\\\"#191A21\\\",\\\"titleBar.inactiveForeground\\\":\\\"#7b7f8b\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#262626\\\"},\\\"displayName\\\":\\\"Dracula Theme Soft\\\",\\\"name\\\":\\\"dracula-soft\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"emphasis\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"strong\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"header\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bf9eee\\\"}},{\\\"scope\\\":[\\\"meta.diff\\\",\\\"meta.diff.header\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7b7f8b\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#62e884\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ee6666\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"invalid\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline italic\\\",\\\"foreground\\\":\\\"#ee6666\\\"}},{\\\"scope\\\":[\\\"invalid.deprecated\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline italic\\\",\\\"foreground\\\":\\\"#f6f6f4\\\"}},{\\\"scope\\\":[\\\"entity.name.filename\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e7ee98\\\"}},{\\\"scope\\\":[\\\"markup.error\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ee6666\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#bf9eee\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e7ee98\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.list.markdown\\\",\\\"beginning.punctuation.definition.quote.markdown\\\",\\\"punctuation.definition.link.restructuredtext\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#97e1f1\\\"}},{\\\"scope\\\":[\\\"markup.inline.raw\\\",\\\"markup.raw.restructuredtext\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#62e884\\\"}},{\\\"scope\\\":[\\\"markup.underline.link\\\",\\\"markup.underline.link.image\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#97e1f1\\\"}},{\\\"scope\\\":[\\\"meta.link.reference.def.restructuredtext\\\",\\\"punctuation.definition.directive.restructuredtext\\\",\\\"string.other.link.description\\\",\\\"string.other.link.title\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"entity.name.directive.restructuredtext\\\",\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e7ee98\\\"}},{\\\"scope\\\":[\\\"meta.separator.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7b7f8b\\\"}},{\\\"scope\\\":[\\\"fenced_code.block.language\\\",\\\"markup.raw.inner.restructuredtext\\\",\\\"markup.fenced_code.block.markdown punctuation.definition.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#62e884\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.constant.restructuredtext\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bf9eee\\\"}},{\\\"scope\\\":[\\\"markup.heading.markdown punctuation.definition.string.begin\\\",\\\"markup.heading.markdown punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bf9eee\\\"}},{\\\"scope\\\":[\\\"meta.paragraph.markdown punctuation.definition.string.begin\\\",\\\"meta.paragraph.markdown punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6f6f4\\\"}},{\\\"scope\\\":[\\\"markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.begin\\\",\\\"markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e7ee98\\\"}},{\\\"scope\\\":[\\\"entity.name.type.class\\\",\\\"entity.name.class\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\",\\\"foreground\\\":\\\"#97e1f1\\\"}},{\\\"scope\\\":[\\\"keyword.expressions-and-types.swift\\\",\\\"keyword.other.this\\\",\\\"variable.language\\\",\\\"variable.language punctuation.definition.variable.php\\\",\\\"variable.other.readwrite.instance.ruby\\\",\\\"variable.parameter.function.language.special\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#bf9eee\\\"}},{\\\"scope\\\":[\\\"entity.other.inherited-class\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#97e1f1\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"unused.comment\\\",\\\"wildcard.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7b7f8b\\\"}},{\\\"scope\\\":[\\\"comment keyword.codetag.notation\\\",\\\"comment.block.documentation keyword\\\",\\\"comment.block.documentation storage.type.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"comment.block.documentation entity.name.type\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#97e1f1\\\"}},{\\\"scope\\\":[\\\"comment.block.documentation entity.name.type punctuation.definition.bracket\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#97e1f1\\\"}},{\\\"scope\\\":[\\\"comment.block.documentation variable\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"variable.other.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bf9eee\\\"}},{\\\"scope\\\":[\\\"constant.character.escape\\\",\\\"constant.character.string.escape\\\",\\\"constant.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.parent-selector\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#62e884\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.function-call.object\\\",\\\"meta.function-call.php\\\",\\\"meta.function-call.static\\\",\\\"meta.method-call.java meta.method\\\",\\\"meta.method.groovy\\\",\\\"support.function.any-method.lua\\\",\\\"keyword.operator.function.infix\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#62e884\\\"}},{\\\"scope\\\":[\\\"entity.name.variable.parameter\\\",\\\"meta.at-rule.function variable\\\",\\\"meta.at-rule.mixin variable\\\",\\\"meta.function.arguments variable.other.php\\\",\\\"meta.selectionset.graphql meta.arguments.graphql variable.arguments.graphql\\\",\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"meta.decorator variable.other.readwrite\\\",\\\"meta.decorator variable.other.property\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#62e884\\\"}},{\\\"scope\\\":[\\\"meta.decorator variable.other.object\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#62e884\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"punctuation.definition.keyword\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"keyword.control.new\\\",\\\"keyword.operator.new\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"meta.selector\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"support\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#97e1f1\\\"}},{\\\"scope\\\":[\\\"support.function.magic\\\",\\\"support.variable\\\",\\\"variable.other.predefined\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#bf9eee\\\"}},{\\\"scope\\\":[\\\"support.function\\\",\\\"support.type.property-name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\"}},{\\\"scope\\\":[\\\"constant.other.symbol.hashkey punctuation.definition.constant.ruby\\\",\\\"entity.other.attribute-name.placeholder punctuation\\\",\\\"entity.other.attribute-name.pseudo-class punctuation\\\",\\\"entity.other.attribute-name.pseudo-element punctuation\\\",\\\"meta.group.double.toml\\\",\\\"meta.group.toml\\\",\\\"meta.object-binding-pattern-variable punctuation.destructuring\\\",\\\"punctuation.colon.graphql\\\",\\\"punctuation.definition.block.scalar.folded.yaml\\\",\\\"punctuation.definition.block.scalar.literal.yaml\\\",\\\"punctuation.definition.block.sequence.item.yaml\\\",\\\"punctuation.definition.entity.other.inherited-class\\\",\\\"punctuation.function.swift\\\",\\\"punctuation.separator.dictionary.key-value\\\",\\\"punctuation.separator.hash\\\",\\\"punctuation.separator.inheritance\\\",\\\"punctuation.separator.key-value\\\",\\\"punctuation.separator.key-value.mapping.yaml\\\",\\\"punctuation.separator.namespace\\\",\\\"punctuation.separator.pointer-access\\\",\\\"punctuation.separator.slice\\\",\\\"string.unquoted.heredoc punctuation.definition.string\\\",\\\"support.other.chomping-indicator.yaml\\\",\\\"punctuation.separator.annotation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"keyword.operator.other.powershell\\\",\\\"keyword.other.statement-separator.powershell\\\",\\\"meta.brace.round\\\",\\\"meta.function-call punctuation\\\",\\\"punctuation.definition.arguments.begin\\\",\\\"punctuation.definition.arguments.end\\\",\\\"punctuation.definition.entity.begin\\\",\\\"punctuation.definition.entity.end\\\",\\\"punctuation.definition.tag.cs\\\",\\\"punctuation.definition.type.begin\\\",\\\"punctuation.definition.type.end\\\",\\\"punctuation.section.scope.begin\\\",\\\"punctuation.section.scope.end\\\",\\\"punctuation.terminator.expression.php\\\",\\\"storage.type.generic.java\\\",\\\"string.template meta.brace\\\",\\\"string.template punctuation.accessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6f6f4\\\"}},{\\\"scope\\\":[\\\"meta.string-contents.quoted.double punctuation.definition.variable\\\",\\\"punctuation.definition.interpolation.begin\\\",\\\"punctuation.definition.interpolation.end\\\",\\\"punctuation.definition.template-expression.begin\\\",\\\"punctuation.definition.template-expression.end\\\",\\\"punctuation.section.embedded.begin\\\",\\\"punctuation.section.embedded.coffee\\\",\\\"punctuation.section.embedded.end\\\",\\\"punctuation.section.embedded.end source.php\\\",\\\"punctuation.section.embedded.end source.ruby\\\",\\\"punctuation.definition.variable.makefile\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"entity.name.function.target.makefile\\\",\\\"entity.name.section.toml\\\",\\\"entity.name.tag.yaml\\\",\\\"variable.other.key.toml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#97e1f1\\\"}},{\\\"scope\\\":[\\\"constant.other.date\\\",\\\"constant.other.timestamp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"variable.other.alias.yaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#62e884\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"meta.implementation storage.type.objc\\\",\\\"meta.interface-or-protocol storage.type.objc\\\",\\\"source.groovy storage.type.def\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"entity.name.type\\\",\\\"keyword.primitive-datatypes.swift\\\",\\\"keyword.type.cs\\\",\\\"meta.protocol-list.objc\\\",\\\"meta.return-type.objc\\\",\\\"source.go storage.type\\\",\\\"source.groovy storage.type\\\",\\\"source.java storage.type\\\",\\\"source.powershell entity.other.attribute-name\\\",\\\"storage.class.std.rust\\\",\\\"storage.type.attribute.swift\\\",\\\"storage.type.c\\\",\\\"storage.type.core.rust\\\",\\\"storage.type.cs\\\",\\\"storage.type.groovy\\\",\\\"storage.type.objc\\\",\\\"storage.type.php\\\",\\\"storage.type.haskell\\\",\\\"storage.type.ocaml\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#97e1f1\\\"}},{\\\"scope\\\":[\\\"entity.name.type.type-parameter\\\",\\\"meta.indexer.mappedtype.declaration entity.name.type\\\",\\\"meta.type.parameters entity.name.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\",\\\"constant.other.character-class.set.regexp\\\",\\\"constant.character.escape.backslash.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e7ee98\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.capture.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f286c4\\\"}},{\\\"scope\\\":[\\\"string.regexp punctuation.definition.string.begin\\\",\\\"string.regexp punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ee6666\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.character-class.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#97e1f1\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.assertion.regexp\\\",\\\"keyword.operator.negation.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ee6666\\\"}},{\\\"scope\\\":[\\\"meta.assertion.look-ahead.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#62e884\\\"}},{\\\"scope\\\":[\\\"string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e7ee98\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string.begin\\\",\\\"punctuation.definition.string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#dee492\\\"}},{\\\"scope\\\":[\\\"punctuation.support.type.property-name.begin\\\",\\\"punctuation.support.type.property-name.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#97e2f2\\\"}},{\\\"scope\\\":[\\\"string.quoted.docstring.multi\\\",\\\"string.quoted.docstring.multi.python punctuation.definition.string.begin\\\",\\\"string.quoted.docstring.multi.python punctuation.definition.string.end\\\",\\\"string.quoted.docstring.multi.python constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7b7f8b\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"constant.other.key.perl\\\",\\\"support.variable.property\\\",\\\"variable.other.constant.js\\\",\\\"variable.other.constant.ts\\\",\\\"variable.other.constant.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6f6f4\\\"}},{\\\"scope\\\":[\\\"meta.import variable.other.readwrite\\\",\\\"meta.variable.assignment.destructured.object.coffee variable\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FFB86C\\\"}},{\\\"scope\\\":[\\\"meta.import variable.other.readwrite.alias\\\",\\\"meta.export variable.other.readwrite.alias\\\",\\\"meta.variable.assignment.destructured.object.coffee variable variable\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\",\\\"foreground\\\":\\\"#f6f6f4\\\"}},{\\\"scope\\\":[\\\"meta.selectionset.graphql variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e7ee98\\\"}},{\\\"scope\\\":[\\\"meta.selectionset.graphql meta.arguments variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6f6f4\\\"}},{\\\"scope\\\":[\\\"entity.name.fragment.graphql\\\",\\\"variable.fragment.graphql\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#97e1f1\\\"}},{\\\"scope\\\":[\\\"constant.other.symbol.hashkey.ruby\\\",\\\"keyword.operator.dereference.java\\\",\\\"keyword.operator.navigation.groovy\\\",\\\"meta.scope.for-loop.shell punctuation.definition.string.begin\\\",\\\"meta.scope.for-loop.shell punctuation.definition.string.end\\\",\\\"meta.scope.for-loop.shell string\\\",\\\"storage.modifier.import\\\",\\\"punctuation.section.embedded.begin.tsx\\\",\\\"punctuation.section.embedded.end.tsx\\\",\\\"punctuation.section.embedded.begin.jsx\\\",\\\"punctuation.section.embedded.end.jsx\\\",\\\"punctuation.separator.list.comma.css\\\",\\\"constant.language.empty-list.haskell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6f6f4\\\"}},{\\\"scope\\\":[\\\"source.shell variable.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bf9eee\\\"}},{\\\"scope\\\":[\\\"support.constant\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\",\\\"foreground\\\":\\\"#bf9eee\\\"}},{\\\"scope\\\":[\\\"meta.scope.prerequisites.makefile\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e7ee98\\\"}},{\\\"scope\\\":[\\\"meta.attribute-selector.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e7ee98\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.attribute-selector.end.bracket.square.scss\\\",\\\"punctuation.definition.attribute-selector.begin.bracket.square.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6f6f4\\\"}},{\\\"scope\\\":[\\\"meta.preprocessor.haskell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7b7f8b\\\"}},{\\\"scope\\\":[\\\"log.error\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#ee6666\\\"}},{\\\"scope\\\":[\\\"log.warning\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#e7ee98\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: everforest-dark */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#a7c080d0\\\",\\\"activityBar.activeFocusBorder\\\":\\\"#a7c080\\\",\\\"activityBar.background\\\":\\\"#2d353b\\\",\\\"activityBar.border\\\":\\\"#2d353b\\\",\\\"activityBar.dropBackground\\\":\\\"#2d353b\\\",\\\"activityBar.foreground\\\":\\\"#d3c6aa\\\",\\\"activityBar.inactiveForeground\\\":\\\"#859289\\\",\\\"activityBarBadge.background\\\":\\\"#a7c080\\\",\\\"activityBarBadge.foreground\\\":\\\"#2d353b\\\",\\\"badge.background\\\":\\\"#a7c080\\\",\\\"badge.foreground\\\":\\\"#2d353b\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#d3c6aa\\\",\\\"breadcrumb.focusForeground\\\":\\\"#d3c6aa\\\",\\\"breadcrumb.foreground\\\":\\\"#859289\\\",\\\"button.background\\\":\\\"#a7c080\\\",\\\"button.foreground\\\":\\\"#2d353b\\\",\\\"button.hoverBackground\\\":\\\"#a7c080d0\\\",\\\"button.secondaryBackground\\\":\\\"#3d484d\\\",\\\"button.secondaryForeground\\\":\\\"#d3c6aa\\\",\\\"button.secondaryHoverBackground\\\":\\\"#475258\\\",\\\"charts.blue\\\":\\\"#7fbbb3\\\",\\\"charts.foreground\\\":\\\"#d3c6aa\\\",\\\"charts.green\\\":\\\"#a7c080\\\",\\\"charts.orange\\\":\\\"#e69875\\\",\\\"charts.purple\\\":\\\"#d699b6\\\",\\\"charts.red\\\":\\\"#e67e80\\\",\\\"charts.yellow\\\":\\\"#dbbc7f\\\",\\\"checkbox.background\\\":\\\"#2d353b\\\",\\\"checkbox.border\\\":\\\"#4f585e\\\",\\\"checkbox.foreground\\\":\\\"#e69875\\\",\\\"debugConsole.errorForeground\\\":\\\"#e67e80\\\",\\\"debugConsole.infoForeground\\\":\\\"#a7c080\\\",\\\"debugConsole.sourceForeground\\\":\\\"#d699b6\\\",\\\"debugConsole.warningForeground\\\":\\\"#dbbc7f\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#83c092\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#7fbbb3\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#da6362\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#e67e80\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#e67e80\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#9aa79d\\\",\\\"debugIcon.continueForeground\\\":\\\"#7fbbb3\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#d699b6\\\",\\\"debugIcon.pauseForeground\\\":\\\"#dbbc7f\\\",\\\"debugIcon.restartForeground\\\":\\\"#83c092\\\",\\\"debugIcon.startForeground\\\":\\\"#83c092\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#7fbbb3\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#7fbbb3\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#7fbbb3\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#7fbbb3\\\",\\\"debugIcon.stopForeground\\\":\\\"#e67e80\\\",\\\"debugTokenExpression.boolean\\\":\\\"#d699b6\\\",\\\"debugTokenExpression.error\\\":\\\"#e67e80\\\",\\\"debugTokenExpression.name\\\":\\\"#7fbbb3\\\",\\\"debugTokenExpression.number\\\":\\\"#d699b6\\\",\\\"debugTokenExpression.string\\\":\\\"#dbbc7f\\\",\\\"debugTokenExpression.value\\\":\\\"#a7c080\\\",\\\"debugToolBar.background\\\":\\\"#2d353b\\\",\\\"descriptionForeground\\\":\\\"#859289\\\",\\\"diffEditor.diagonalFill\\\":\\\"#4f585e\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#569d7930\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#da636230\\\",\\\"dropdown.background\\\":\\\"#2d353b\\\",\\\"dropdown.border\\\":\\\"#4f585e\\\",\\\"dropdown.foreground\\\":\\\"#9aa79d\\\",\\\"editor.background\\\":\\\"#2d353b\\\",\\\"editor.findMatchBackground\\\":\\\"#d77f4840\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#899c4040\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#47525860\\\",\\\"editor.foldBackground\\\":\\\"#4f585e80\\\",\\\"editor.foreground\\\":\\\"#d3c6aa\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#475258b0\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#47525860\\\",\\\"editor.lineHighlightBackground\\\":\\\"#3d484d90\\\",\\\"editor.lineHighlightBorder\\\":\\\"#4f585e00\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#3d484d80\\\",\\\"editor.selectionBackground\\\":\\\"#475258c0\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#47525860\\\",\\\"editor.snippetFinalTabstopHighlightBackground\\\":\\\"#899c4040\\\",\\\"editor.snippetFinalTabstopHighlightBorder\\\":\\\"#2d353b\\\",\\\"editor.snippetTabstopHighlightBackground\\\":\\\"#3d484d\\\",\\\"editor.symbolHighlightBackground\\\":\\\"#5a93a240\\\",\\\"editor.wordHighlightBackground\\\":\\\"#47525858\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#475258b0\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#e67e80\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#dbbc7f\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#a7c080\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#7fbbb3\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#e69875\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#d699b6\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#859289\\\",\\\"editorBracketMatch.background\\\":\\\"#4f585e\\\",\\\"editorBracketMatch.border\\\":\\\"#2d353b00\\\",\\\"editorCodeLens.foreground\\\":\\\"#7f897da0\\\",\\\"editorCursor.foreground\\\":\\\"#d3c6aa\\\",\\\"editorError.background\\\":\\\"#da636200\\\",\\\"editorError.foreground\\\":\\\"#da6362\\\",\\\"editorGhostText.background\\\":\\\"#2d353b00\\\",\\\"editorGhostText.foreground\\\":\\\"#7f897da0\\\",\\\"editorGroup.border\\\":\\\"#21272b\\\",\\\"editorGroup.dropBackground\\\":\\\"#4f585e60\\\",\\\"editorGroupHeader.noTabsBackground\\\":\\\"#2d353b\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#2d353b\\\",\\\"editorGutter.addedBackground\\\":\\\"#899c40a0\\\",\\\"editorGutter.background\\\":\\\"#2d353b00\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#7f897d\\\",\\\"editorGutter.deletedBackground\\\":\\\"#da6362a0\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#5a93a2a0\\\",\\\"editorHint.foreground\\\":\\\"#b87b9d\\\",\\\"editorHoverWidget.background\\\":\\\"#343f44\\\",\\\"editorHoverWidget.border\\\":\\\"#475258\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#9aa79d50\\\",\\\"editorIndentGuide.background\\\":\\\"#9aa79d20\\\",\\\"editorInfo.background\\\":\\\"#5a93a200\\\",\\\"editorInfo.foreground\\\":\\\"#5a93a2\\\",\\\"editorInlayHint.background\\\":\\\"#2d353b00\\\",\\\"editorInlayHint.foreground\\\":\\\"#7f897da0\\\",\\\"editorInlayHint.parameterBackground\\\":\\\"#2d353b00\\\",\\\"editorInlayHint.parameterForeground\\\":\\\"#7f897da0\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#2d353b00\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#7f897da0\\\",\\\"editorLightBulb.foreground\\\":\\\"#dbbc7f\\\",\\\"editorLightBulbAutoFix.foreground\\\":\\\"#83c092\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#9aa79de0\\\",\\\"editorLineNumber.foreground\\\":\\\"#7f897da0\\\",\\\"editorLink.activeForeground\\\":\\\"#a7c080\\\",\\\"editorMarkerNavigation.background\\\":\\\"#343f44\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#da636280\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#5a93a280\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#bf983d80\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#899c40a0\\\",\\\"editorOverviewRuler.border\\\":\\\"#2d353b00\\\",\\\"editorOverviewRuler.commonContentForeground\\\":\\\"#859289\\\",\\\"editorOverviewRuler.currentContentForeground\\\":\\\"#5a93a2\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#da6362a0\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#e67e80\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#569d79\\\",\\\"editorOverviewRuler.incomingContentForeground\\\":\\\"#569d79\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#d699b6\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#5a93a2a0\\\",\\\"editorOverviewRuler.rangeHighlightForeground\\\":\\\"#569d79\\\",\\\"editorOverviewRuler.selectionHighlightForeground\\\":\\\"#569d79\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#dbbc7f\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#4f585e\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#4f585e\\\",\\\"editorRuler.foreground\\\":\\\"#475258a0\\\",\\\"editorSuggestWidget.background\\\":\\\"#3d484d\\\",\\\"editorSuggestWidget.border\\\":\\\"#3d484d\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#d3c6aa\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#a7c080\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#475258\\\",\\\"editorUnnecessaryCode.border\\\":\\\"#2d353b\\\",\\\"editorUnnecessaryCode.opacity\\\":\\\"#00000080\\\",\\\"editorWarning.background\\\":\\\"#bf983d00\\\",\\\"editorWarning.foreground\\\":\\\"#bf983d\\\",\\\"editorWhitespace.foreground\\\":\\\"#475258\\\",\\\"editorWidget.background\\\":\\\"#2d353b\\\",\\\"editorWidget.border\\\":\\\"#4f585e\\\",\\\"editorWidget.foreground\\\":\\\"#d3c6aa\\\",\\\"errorForeground\\\":\\\"#e67e80\\\",\\\"extensionBadge.remoteBackground\\\":\\\"#a7c080\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#2d353b\\\",\\\"extensionButton.prominentBackground\\\":\\\"#a7c080\\\",\\\"extensionButton.prominentForeground\\\":\\\"#2d353b\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#a7c080d0\\\",\\\"extensionIcon.preReleaseForeground\\\":\\\"#e69875\\\",\\\"extensionIcon.starForeground\\\":\\\"#83c092\\\",\\\"extensionIcon.verifiedForeground\\\":\\\"#a7c080\\\",\\\"focusBorder\\\":\\\"#2d353b00\\\",\\\"foreground\\\":\\\"#9aa79d\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#a7c080a0\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#d699b6a0\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#e67e80a0\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#4f585e\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#7fbbb3a0\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#83c092a0\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#83c092a0\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#e69875a0\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#dbbc7fa0\\\",\\\"gitlens.closedPullRequestIconColor\\\":\\\"#e67e80\\\",\\\"gitlens.decorations.addedForegroundColor\\\":\\\"#a7c080\\\",\\\"gitlens.decorations.branchAheadForegroundColor\\\":\\\"#83c092\\\",\\\"gitlens.decorations.branchBehindForegroundColor\\\":\\\"#e69875\\\",\\\"gitlens.decorations.branchDivergedForegroundColor\\\":\\\"#dbbc7f\\\",\\\"gitlens.decorations.branchMissingUpstreamForegroundColor\\\":\\\"#e67e80\\\",\\\"gitlens.decorations.branchUnpublishedForegroundColor\\\":\\\"#7fbbb3\\\",\\\"gitlens.decorations.branchUpToDateForegroundColor\\\":\\\"#d3c6aa\\\",\\\"gitlens.decorations.copiedForegroundColor\\\":\\\"#d699b6\\\",\\\"gitlens.decorations.deletedForegroundColor\\\":\\\"#e67e80\\\",\\\"gitlens.decorations.ignoredForegroundColor\\\":\\\"#9aa79d\\\",\\\"gitlens.decorations.modifiedForegroundColor\\\":\\\"#7fbbb3\\\",\\\"gitlens.decorations.renamedForegroundColor\\\":\\\"#d699b6\\\",\\\"gitlens.decorations.untrackedForegroundColor\\\":\\\"#dbbc7f\\\",\\\"gitlens.gutterBackgroundColor\\\":\\\"#2d353b\\\",\\\"gitlens.gutterForegroundColor\\\":\\\"#d3c6aa\\\",\\\"gitlens.gutterUncommittedForegroundColor\\\":\\\"#7fbbb3\\\",\\\"gitlens.lineHighlightBackgroundColor\\\":\\\"#343f44\\\",\\\"gitlens.lineHighlightOverviewRulerColor\\\":\\\"#a7c080\\\",\\\"gitlens.mergedPullRequestIconColor\\\":\\\"#d699b6\\\",\\\"gitlens.openPullRequestIconColor\\\":\\\"#83c092\\\",\\\"gitlens.trailingLineForegroundColor\\\":\\\"#859289\\\",\\\"gitlens.unpublishedCommitIconColor\\\":\\\"#dbbc7f\\\",\\\"gitlens.unpulledChangesIconColor\\\":\\\"#e69875\\\",\\\"gitlens.unpushlishedChangesIconColor\\\":\\\"#7fbbb3\\\",\\\"icon.foreground\\\":\\\"#83c092\\\",\\\"imagePreview.border\\\":\\\"#2d353b\\\",\\\"input.background\\\":\\\"#2d353b00\\\",\\\"input.border\\\":\\\"#4f585e\\\",\\\"input.foreground\\\":\\\"#d3c6aa\\\",\\\"input.placeholderForeground\\\":\\\"#7f897d\\\",\\\"inputOption.activeBorder\\\":\\\"#83c092\\\",\\\"inputValidation.errorBackground\\\":\\\"#da6362\\\",\\\"inputValidation.errorBorder\\\":\\\"#e67e80\\\",\\\"inputValidation.errorForeground\\\":\\\"#d3c6aa\\\",\\\"inputValidation.infoBackground\\\":\\\"#5a93a2\\\",\\\"inputValidation.infoBorder\\\":\\\"#7fbbb3\\\",\\\"inputValidation.infoForeground\\\":\\\"#d3c6aa\\\",\\\"inputValidation.warningBackground\\\":\\\"#bf983d\\\",\\\"inputValidation.warningBorder\\\":\\\"#dbbc7f\\\",\\\"inputValidation.warningForeground\\\":\\\"#d3c6aa\\\",\\\"issues.closed\\\":\\\"#e67e80\\\",\\\"issues.open\\\":\\\"#83c092\\\",\\\"keybindingLabel.background\\\":\\\"#2d353b00\\\",\\\"keybindingLabel.border\\\":\\\"#272e33\\\",\\\"keybindingLabel.bottomBorder\\\":\\\"#21272b\\\",\\\"keybindingLabel.foreground\\\":\\\"#d3c6aa\\\",\\\"keybindingTable.headerBackground\\\":\\\"#3d484d\\\",\\\"keybindingTable.rowsBackground\\\":\\\"#343f44\\\",\\\"list.activeSelectionBackground\\\":\\\"#47525880\\\",\\\"list.activeSelectionForeground\\\":\\\"#d3c6aa\\\",\\\"list.dropBackground\\\":\\\"#343f4480\\\",\\\"list.errorForeground\\\":\\\"#e67e80\\\",\\\"list.focusBackground\\\":\\\"#47525880\\\",\\\"list.focusForeground\\\":\\\"#d3c6aa\\\",\\\"list.highlightForeground\\\":\\\"#a7c080\\\",\\\"list.hoverBackground\\\":\\\"#2d353b00\\\",\\\"list.hoverForeground\\\":\\\"#d3c6aa\\\",\\\"list.inactiveFocusBackground\\\":\\\"#47525860\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#47525880\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#9aa79d\\\",\\\"list.invalidItemForeground\\\":\\\"#da6362\\\",\\\"list.warningForeground\\\":\\\"#dbbc7f\\\",\\\"menu.background\\\":\\\"#2d353b\\\",\\\"menu.foreground\\\":\\\"#9aa79d\\\",\\\"menu.selectionBackground\\\":\\\"#343f44\\\",\\\"menu.selectionForeground\\\":\\\"#d3c6aa\\\",\\\"menubar.selectionBackground\\\":\\\"#2d353b\\\",\\\"menubar.selectionBorder\\\":\\\"#2d353b\\\",\\\"merge.border\\\":\\\"#2d353b00\\\",\\\"merge.currentContentBackground\\\":\\\"#5a93a240\\\",\\\"merge.currentHeaderBackground\\\":\\\"#5a93a280\\\",\\\"merge.incomingContentBackground\\\":\\\"#569d7940\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#569d7980\\\",\\\"minimap.errorHighlight\\\":\\\"#da636280\\\",\\\"minimap.findMatchHighlight\\\":\\\"#569d7960\\\",\\\"minimap.selectionHighlight\\\":\\\"#4f585ef0\\\",\\\"minimap.warningHighlight\\\":\\\"#bf983d80\\\",\\\"minimapGutter.addedBackground\\\":\\\"#899c40a0\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#da6362a0\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#5a93a2a0\\\",\\\"notebook.cellBorderColor\\\":\\\"#4f585e\\\",\\\"notebook.cellHoverBackground\\\":\\\"#2d353b\\\",\\\"notebook.cellStatusBarItemHoverBackground\\\":\\\"#343f44\\\",\\\"notebook.cellToolbarSeparator\\\":\\\"#4f585e\\\",\\\"notebook.focusedCellBackground\\\":\\\"#2d353b\\\",\\\"notebook.focusedCellBorder\\\":\\\"#4f585e\\\",\\\"notebook.focusedEditorBorder\\\":\\\"#4f585e\\\",\\\"notebook.focusedRowBorder\\\":\\\"#4f585e\\\",\\\"notebook.inactiveFocusedCellBorder\\\":\\\"#4f585e\\\",\\\"notebook.outputContainerBackgroundColor\\\":\\\"#272e33\\\",\\\"notebook.selectedCellBorder\\\":\\\"#4f585e\\\",\\\"notebookStatusErrorIcon.foreground\\\":\\\"#e67e80\\\",\\\"notebookStatusRunningIcon.foreground\\\":\\\"#7fbbb3\\\",\\\"notebookStatusSuccessIcon.foreground\\\":\\\"#a7c080\\\",\\\"notificationCenterHeader.background\\\":\\\"#3d484d\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#d3c6aa\\\",\\\"notificationLink.foreground\\\":\\\"#a7c080\\\",\\\"notifications.background\\\":\\\"#2d353b\\\",\\\"notifications.foreground\\\":\\\"#d3c6aa\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#e67e80\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#7fbbb3\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#dbbc7f\\\",\\\"panel.background\\\":\\\"#2d353b\\\",\\\"panel.border\\\":\\\"#2d353b\\\",\\\"panelInput.border\\\":\\\"#4f585e\\\",\\\"panelSection.border\\\":\\\"#21272b\\\",\\\"panelSectionHeader.background\\\":\\\"#2d353b\\\",\\\"panelTitle.activeBorder\\\":\\\"#a7c080d0\\\",\\\"panelTitle.activeForeground\\\":\\\"#d3c6aa\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#859289\\\",\\\"peekView.border\\\":\\\"#475258\\\",\\\"peekViewEditor.background\\\":\\\"#343f44\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#bf983d50\\\",\\\"peekViewEditorGutter.background\\\":\\\"#343f44\\\",\\\"peekViewResult.background\\\":\\\"#343f44\\\",\\\"peekViewResult.fileForeground\\\":\\\"#d3c6aa\\\",\\\"peekViewResult.lineForeground\\\":\\\"#9aa79d\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#bf983d50\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#569d7950\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#d3c6aa\\\",\\\"peekViewTitle.background\\\":\\\"#475258\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#d3c6aa\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#a7c080\\\",\\\"pickerGroup.border\\\":\\\"#a7c0801a\\\",\\\"pickerGroup.foreground\\\":\\\"#d3c6aa\\\",\\\"ports.iconRunningProcessForeground\\\":\\\"#e69875\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#e67e80\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#7fbbb3\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#dbbc7f\\\",\\\"progressBar.background\\\":\\\"#a7c080\\\",\\\"quickInputTitle.background\\\":\\\"#343f44\\\",\\\"rust_analyzer.inlayHints.background\\\":\\\"#2d353b00\\\",\\\"rust_analyzer.inlayHints.foreground\\\":\\\"#7f897da0\\\",\\\"rust_analyzer.syntaxTreeBorder\\\":\\\"#e67e80\\\",\\\"sash.hoverBorder\\\":\\\"#475258\\\",\\\"scrollbar.shadow\\\":\\\"#00000070\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#9aa79d\\\",\\\"scrollbarSlider.background\\\":\\\"#4f585e80\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#4f585e\\\",\\\"selection.background\\\":\\\"#475258e0\\\",\\\"settings.checkboxBackground\\\":\\\"#2d353b\\\",\\\"settings.checkboxBorder\\\":\\\"#4f585e\\\",\\\"settings.checkboxForeground\\\":\\\"#e69875\\\",\\\"settings.dropdownBackground\\\":\\\"#2d353b\\\",\\\"settings.dropdownBorder\\\":\\\"#4f585e\\\",\\\"settings.dropdownForeground\\\":\\\"#83c092\\\",\\\"settings.focusedRowBackground\\\":\\\"#343f44\\\",\\\"settings.headerForeground\\\":\\\"#9aa79d\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#7f897d\\\",\\\"settings.numberInputBackground\\\":\\\"#2d353b\\\",\\\"settings.numberInputBorder\\\":\\\"#4f585e\\\",\\\"settings.numberInputForeground\\\":\\\"#d699b6\\\",\\\"settings.rowHoverBackground\\\":\\\"#343f44\\\",\\\"settings.textInputBackground\\\":\\\"#2d353b\\\",\\\"settings.textInputBorder\\\":\\\"#4f585e\\\",\\\"settings.textInputForeground\\\":\\\"#7fbbb3\\\",\\\"sideBar.background\\\":\\\"#2d353b\\\",\\\"sideBar.foreground\\\":\\\"#859289\\\",\\\"sideBarSectionHeader.background\\\":\\\"#2d353b00\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#9aa79d\\\",\\\"sideBarTitle.foreground\\\":\\\"#9aa79d\\\",\\\"statusBar.background\\\":\\\"#2d353b\\\",\\\"statusBar.border\\\":\\\"#2d353b\\\",\\\"statusBar.debuggingBackground\\\":\\\"#2d353b\\\",\\\"statusBar.debuggingForeground\\\":\\\"#e69875\\\",\\\"statusBar.foreground\\\":\\\"#9aa79d\\\",\\\"statusBar.noFolderBackground\\\":\\\"#2d353b\\\",\\\"statusBar.noFolderBorder\\\":\\\"#2d353b\\\",\\\"statusBar.noFolderForeground\\\":\\\"#9aa79d\\\",\\\"statusBarItem.activeBackground\\\":\\\"#47525870\\\",\\\"statusBarItem.errorBackground\\\":\\\"#2d353b\\\",\\\"statusBarItem.errorForeground\\\":\\\"#e67e80\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#475258a0\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#2d353b\\\",\\\"statusBarItem.prominentForeground\\\":\\\"#d3c6aa\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#475258a0\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#2d353b\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#9aa79d\\\",\\\"statusBarItem.warningBackground\\\":\\\"#2d353b\\\",\\\"statusBarItem.warningForeground\\\":\\\"#dbbc7f\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#7fbbb3\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#d699b6\\\",\\\"symbolIcon.classForeground\\\":\\\"#dbbc7f\\\",\\\"symbolIcon.colorForeground\\\":\\\"#d3c6aa\\\",\\\"symbolIcon.constantForeground\\\":\\\"#83c092\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#d699b6\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#d699b6\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#83c092\\\",\\\"symbolIcon.eventForeground\\\":\\\"#dbbc7f\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#d3c6aa\\\",\\\"symbolIcon.fileForeground\\\":\\\"#d3c6aa\\\",\\\"symbolIcon.folderForeground\\\":\\\"#d3c6aa\\\",\\\"symbolIcon.functionForeground\\\":\\\"#a7c080\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#dbbc7f\\\",\\\"symbolIcon.keyForeground\\\":\\\"#a7c080\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#e67e80\\\",\\\"symbolIcon.methodForeground\\\":\\\"#a7c080\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#d699b6\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#d699b6\\\",\\\"symbolIcon.nullForeground\\\":\\\"#83c092\\\",\\\"symbolIcon.numberForeground\\\":\\\"#d699b6\\\",\\\"symbolIcon.objectForeground\\\":\\\"#d699b6\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#e69875\\\",\\\"symbolIcon.packageForeground\\\":\\\"#d699b6\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#83c092\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#7fbbb3\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#d3c6aa\\\",\\\"symbolIcon.stringForeground\\\":\\\"#a7c080\\\",\\\"symbolIcon.structForeground\\\":\\\"#dbbc7f\\\",\\\"symbolIcon.textForeground\\\":\\\"#d3c6aa\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#83c092\\\",\\\"symbolIcon.unitForeground\\\":\\\"#d3c6aa\\\",\\\"symbolIcon.variableForeground\\\":\\\"#7fbbb3\\\",\\\"tab.activeBackground\\\":\\\"#2d353b\\\",\\\"tab.activeBorder\\\":\\\"#a7c080d0\\\",\\\"tab.activeForeground\\\":\\\"#d3c6aa\\\",\\\"tab.border\\\":\\\"#2d353b\\\",\\\"tab.hoverBackground\\\":\\\"#2d353b\\\",\\\"tab.hoverForeground\\\":\\\"#d3c6aa\\\",\\\"tab.inactiveBackground\\\":\\\"#2d353b\\\",\\\"tab.inactiveForeground\\\":\\\"#7f897d\\\",\\\"tab.lastPinnedBorder\\\":\\\"#a7c080d0\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#859289\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#9aa79d\\\",\\\"tab.unfocusedHoverForeground\\\":\\\"#d3c6aa\\\",\\\"tab.unfocusedInactiveForeground\\\":\\\"#7f897d\\\",\\\"terminal.ansiBlack\\\":\\\"#343f44\\\",\\\"terminal.ansiBlue\\\":\\\"#7fbbb3\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#859289\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#7fbbb3\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#83c092\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#a7c080\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#d699b6\\\",\\\"terminal.ansiBrightRed\\\":\\\"#e67e80\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#d3c6aa\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#dbbc7f\\\",\\\"terminal.ansiCyan\\\":\\\"#83c092\\\",\\\"terminal.ansiGreen\\\":\\\"#a7c080\\\",\\\"terminal.ansiMagenta\\\":\\\"#d699b6\\\",\\\"terminal.ansiRed\\\":\\\"#e67e80\\\",\\\"terminal.ansiWhite\\\":\\\"#d3c6aa\\\",\\\"terminal.ansiYellow\\\":\\\"#dbbc7f\\\",\\\"terminal.foreground\\\":\\\"#d3c6aa\\\",\\\"terminalCursor.foreground\\\":\\\"#d3c6aa\\\",\\\"testing.iconErrored\\\":\\\"#e67e80\\\",\\\"testing.iconFailed\\\":\\\"#e67e80\\\",\\\"testing.iconPassed\\\":\\\"#83c092\\\",\\\"testing.iconQueued\\\":\\\"#7fbbb3\\\",\\\"testing.iconSkipped\\\":\\\"#d699b6\\\",\\\"testing.iconUnset\\\":\\\"#dbbc7f\\\",\\\"testing.runAction\\\":\\\"#83c092\\\",\\\"textBlockQuote.background\\\":\\\"#272e33\\\",\\\"textBlockQuote.border\\\":\\\"#475258\\\",\\\"textCodeBlock.background\\\":\\\"#272e33\\\",\\\"textLink.activeForeground\\\":\\\"#a7c080c0\\\",\\\"textLink.foreground\\\":\\\"#a7c080\\\",\\\"textPreformat.foreground\\\":\\\"#dbbc7f\\\",\\\"titleBar.activeBackground\\\":\\\"#2d353b\\\",\\\"titleBar.activeForeground\\\":\\\"#9aa79d\\\",\\\"titleBar.border\\\":\\\"#2d353b\\\",\\\"titleBar.inactiveBackground\\\":\\\"#2d353b\\\",\\\"titleBar.inactiveForeground\\\":\\\"#7f897d\\\",\\\"toolbar.hoverBackground\\\":\\\"#343f44\\\",\\\"tree.indentGuidesStroke\\\":\\\"#7f897d\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#272e33\\\",\\\"welcomePage.buttonBackground\\\":\\\"#343f44\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#343f44a0\\\",\\\"welcomePage.progress.foreground\\\":\\\"#a7c080\\\",\\\"welcomePage.tileHoverBackground\\\":\\\"#343f44\\\",\\\"widget.shadow\\\":\\\"#00000070\\\"},\\\"displayName\\\":\\\"Everforest Dark\\\",\\\"name\\\":\\\"everforest-dark\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"class:python\\\":\\\"#83c092\\\",\\\"class:typescript\\\":\\\"#83c092\\\",\\\"class:typescriptreact\\\":\\\"#83c092\\\",\\\"enum:typescript\\\":\\\"#d699b6\\\",\\\"enum:typescriptreact\\\":\\\"#d699b6\\\",\\\"enumMember:typescript\\\":\\\"#7fbbb3\\\",\\\"enumMember:typescriptreact\\\":\\\"#7fbbb3\\\",\\\"interface:typescript\\\":\\\"#83c092\\\",\\\"interface:typescriptreact\\\":\\\"#83c092\\\",\\\"intrinsic:python\\\":\\\"#d699b6\\\",\\\"macro:rust\\\":\\\"#83c092\\\",\\\"memberOperatorOverload\\\":\\\"#e69875\\\",\\\"module:python\\\":\\\"#7fbbb3\\\",\\\"namespace:rust\\\":\\\"#d699b6\\\",\\\"namespace:typescript\\\":\\\"#d699b6\\\",\\\"namespace:typescriptreact\\\":\\\"#d699b6\\\",\\\"operatorOverload\\\":\\\"#e69875\\\",\\\"property.defaultLibrary:javascript\\\":\\\"#d699b6\\\",\\\"property.defaultLibrary:javascriptreact\\\":\\\"#d699b6\\\",\\\"property.defaultLibrary:typescript\\\":\\\"#d699b6\\\",\\\"property.defaultLibrary:typescriptreact\\\":\\\"#d699b6\\\",\\\"selfKeyword:rust\\\":\\\"#d699b6\\\",\\\"variable.defaultLibrary:javascript\\\":\\\"#d699b6\\\",\\\"variable.defaultLibrary:javascriptreact\\\":\\\"#d699b6\\\",\\\"variable.defaultLibrary:typescript\\\":\\\"#d699b6\\\",\\\"variable.defaultLibrary:typescriptreact\\\":\\\"#d699b6\\\"},\\\"tokenColors\\\":[{\\\"scope\\\":\\\"keyword, storage.type.function, storage.type.class, storage.type.enum, storage.type.interface, storage.type.property, keyword.operator.new, keyword.operator.expression, keyword.operator.new, keyword.operator.delete, storage.type.extends\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"keyword.other.debugger\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"storage, modifier, keyword.var, entity.name.tag, keyword.control.case, keyword.control.switch\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"keyword.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"string, punctuation.definition.string.end, punctuation.definition.string.begin, punctuation.definition.string.template.begin, punctuation.definition.string.template.end\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"constant.character.escape, punctuation.quasi.element, punctuation.definition.template-expression, punctuation.section.embedded, storage.type.format, constant.other.placeholder, constant.other.placeholder, variable.interpolation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.name.function, support.function, meta.function, meta.function-call, meta.definition.method\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"keyword.control.at-rule, keyword.control.import, keyword.control.export, storage.type.namespace, punctuation.decorator, keyword.control.directive, keyword.preprocessor, punctuation.definition.preprocessor, punctuation.definition.directive, keyword.other.import, keyword.other.package, entity.name.type.namespace, entity.name.scope-resolution, keyword.other.using, keyword.package, keyword.import, keyword.map\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"storage.type.annotation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"entity.name.label, constant.other.label\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"support.module, support.node, support.other.module, support.type.object.module, entity.name.type.module, entity.name.type.class.module, keyword.control.module\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"storage.type, support.type, entity.name.type, keyword.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"entity.name.type.class, support.class, entity.name.class, entity.other.inherited-class, storage.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"constant.language.boolean\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"entity.name.function.preprocessor\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"variable.language.this, variable.language.self, variable.language.super, keyword.other.this, variable.language.special, constant.language.null, constant.language.undefined, constant.language.nan\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"constant.language, support.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"variable, support.variable, meta.definition.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"variable.object.property, support.variable.property, variable.other.property, variable.other.object.property, variable.other.enummember, variable.other.member, meta.object-literal.key\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"punctuation, meta.brace, meta.delimiter, meta.bracket\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"heading.1.markdown, markup.heading.setext.1.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"heading.2.markdown, markup.heading.setext.2.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"heading.3.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"heading.4.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"heading.5.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"heading.6.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"punctuation.definition.heading.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"string.other.link.title.markdown, constant.other.reference.link.markdown, string.other.link.description.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"markup.underline.link.image.markdown, markup.underline.link.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"punctuation.definition.string.begin.markdown, punctuation.definition.string.end.markdown, punctuation.definition.italic.markdown, punctuation.definition.quote.begin.markdown, punctuation.definition.metadata.markdown, punctuation.separator.key-value.markdown, punctuation.definition.constant.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"punctuation.definition.bold.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"meta.separator.markdown, punctuation.definition.constant.begin.markdown, punctuation.definition.constant.end.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.bold markup.italic, markup.italic markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic bold\\\"}},{\\\"scope\\\":\\\"punctuation.definition.markdown, punctuation.definition.raw.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"fenced_code.block.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"markup.fenced_code.block.markdown, markup.inline.raw.string.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"punctuation.definition.heading.restructuredtext\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"punctuation.definition.field.restructuredtext, punctuation.separator.key-value.restructuredtext, punctuation.definition.directive.restructuredtext, punctuation.definition.constant.restructuredtext, punctuation.definition.italic.restructuredtext, punctuation.definition.table.restructuredtext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"punctuation.definition.bold.restructuredtext\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"entity.name.tag.restructuredtext, punctuation.definition.link.restructuredtext, punctuation.definition.raw.restructuredtext, punctuation.section.raw.restructuredtext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"constant.other.footnote.link.restructuredtext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"support.directive.restructuredtext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"entity.name.directive.restructuredtext, markup.raw.restructuredtext, markup.raw.inner.restructuredtext, string.other.link.title.restructuredtext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"punctuation.definition.function.latex, punctuation.definition.function.tex, punctuation.definition.keyword.latex, constant.character.newline.tex, punctuation.definition.keyword.tex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"support.function.be.latex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"support.function.section.latex, keyword.control.table.cell.latex, keyword.control.table.newline.latex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"support.class.latex, variable.parameter.latex, variable.parameter.function.latex, variable.parameter.definition.label.latex, constant.other.reference.label.latex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"keyword.control.preamble.latex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"punctuation.separator.namespace.xml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"entity.name.tag.html, entity.name.tag.xml, entity.name.tag.localname.xml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.html, entity.other.attribute-name.xml, entity.other.attribute-name.localname.xml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.quoted.double.html, string.quoted.single.html, punctuation.definition.string.begin.html, punctuation.definition.string.end.html, punctuation.separator.key-value.html, punctuation.definition.string.begin.xml, punctuation.definition.string.end.xml, string.quoted.double.xml, string.quoted.single.xml, punctuation.definition.tag.begin.html, punctuation.definition.tag.end.html, punctuation.definition.tag.xml, meta.tag.xml, meta.tag.preprocessor.xml, meta.tag.other.html, meta.tag.block.any.html, meta.tag.inline.any.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"variable.language.documentroot.xml, meta.tag.sgml.doctype.xml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"storage.type.proto\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.quoted.double.proto.syntax, string.quoted.single.proto.syntax, string.quoted.double.proto, string.quoted.single.proto\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.name.class.proto, entity.name.class.message.proto\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"punctuation.definition.entity.css, punctuation.separator.key-value.css, punctuation.terminator.rule.css, punctuation.separator.list.comma.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.class.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"keyword.other.unit\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.quoted.single.css, string.quoted.double.css, support.constant.property-value.css, meta.property-value.css, punctuation.definition.string.begin.css, punctuation.definition.string.end.css, constant.numeric.css, support.constant.font-name.css, variable.parameter.keyframe-list.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"support.type.vendored.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"entity.name.tag.css, entity.other.keyframe-offset.css, punctuation.definition.keyword.css, keyword.control.at-rule.keyframes.css, meta.selector.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"punctuation.definition.entity.scss, punctuation.separator.key-value.scss, punctuation.terminator.rule.scss, punctuation.separator.list.comma.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"keyword.control.at-rule.keyframes.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"punctuation.definition.interpolation.begin.bracket.curly.scss, punctuation.definition.interpolation.end.bracket.curly.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"punctuation.definition.string.begin.scss, punctuation.definition.string.end.scss, string.quoted.double.scss, string.quoted.single.scss, constant.character.css.sass, meta.property-value.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"keyword.control.at-rule.include.scss, keyword.control.at-rule.use.scss, keyword.control.at-rule.mixin.scss, keyword.control.at-rule.extend.scss, keyword.control.at-rule.import.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"meta.function.stylus\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"entity.name.function.stylus\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.unquoted.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"punctuation.accessor.js, punctuation.separator.key-value.js, punctuation.separator.label.js, keyword.operator.accessor.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"punctuation.definition.block.tag.jsdoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"storage.type.js, storage.type.function.arrow.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"JSXNested\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag.jsx, entity.other.attribute-name.jsx, punctuation.definition.tag.begin.js.jsx, punctuation.definition.tag.end.js.jsx, entity.other.attribute-name.js.jsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.name.type.module.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"keyword.operator.type.annotation.ts, punctuation.accessor.ts, punctuation.separator.key-value.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag.directive.ts, entity.other.attribute-name.directive.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.name.type.ts, entity.name.type.interface.ts, entity.other.inherited-class.ts, entity.name.type.alias.ts, entity.name.type.class.ts, entity.name.type.enum.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"storage.type.ts, storage.type.function.arrow.ts, storage.type.type.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"entity.name.type.module.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"keyword.control.import.ts, keyword.control.export.ts, storage.type.namespace.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"entity.name.type.module.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"keyword.operator.type.annotation.tsx, punctuation.accessor.tsx, punctuation.separator.key-value.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag.directive.tsx, entity.other.attribute-name.directive.tsx, punctuation.definition.tag.begin.tsx, punctuation.definition.tag.end.tsx, entity.other.attribute-name.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.name.type.tsx, entity.name.type.interface.tsx, entity.other.inherited-class.tsx, entity.name.type.alias.tsx, entity.name.type.class.tsx, entity.name.type.enum.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"entity.name.type.module.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"keyword.control.import.tsx, keyword.control.export.tsx, storage.type.namespace.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"storage.type.tsx, storage.type.function.arrow.tsx, storage.type.type.tsx, support.class.component.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"storage.type.function.coffee\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"meta.type-signature.purescript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"keyword.other.double-colon.purescript, keyword.other.arrow.purescript, keyword.other.big-arrow.purescript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"entity.name.function.purescript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.quoted.single.purescript, string.quoted.double.purescript, punctuation.definition.string.begin.purescript, punctuation.definition.string.end.purescript, string.quoted.triple.purescript, entity.name.type.purescript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"support.other.module.purescript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"punctuation.dot.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"storage.type.primitive.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"support.class.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"entity.name.function.dart, string.interpolated.single.dart, string.interpolated.double.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"variable.language.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"keyword.other.import.dart, storage.type.annotation.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.class.pug\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"storage.type.function.pug\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.tag.pug\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"entity.name.tag.pug, storage.type.import.include.pug\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"meta.function-call.c, storage.modifier.array.bracket.square.c, meta.function.definition.parameters.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"punctuation.separator.dot-access.c, constant.character.escape.line-continuation.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"keyword.control.directive.include.c, punctuation.definition.directive.c, keyword.control.directive.pragma.c, keyword.control.directive.line.c, keyword.control.directive.define.c, keyword.control.directive.conditional.c, keyword.control.directive.diagnostic.error.c, keyword.control.directive.undef.c, keyword.control.directive.conditional.ifdef.c, keyword.control.directive.endif.c, keyword.control.directive.conditional.ifndef.c, keyword.control.directive.conditional.if.c, keyword.control.directive.else.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"punctuation.separator.pointer-access.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"variable.other.member.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"meta.function-call.cpp, storage.modifier.array.bracket.square.cpp, meta.function.definition.parameters.cpp, meta.body.function.definition.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"punctuation.separator.dot-access.cpp, constant.character.escape.line-continuation.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"keyword.control.directive.include.cpp, punctuation.definition.directive.cpp, keyword.control.directive.pragma.cpp, keyword.control.directive.line.cpp, keyword.control.directive.define.cpp, keyword.control.directive.conditional.cpp, keyword.control.directive.diagnostic.error.cpp, keyword.control.directive.undef.cpp, keyword.control.directive.conditional.ifdef.cpp, keyword.control.directive.endif.cpp, keyword.control.directive.conditional.ifndef.cpp, keyword.control.directive.conditional.if.cpp, keyword.control.directive.else.cpp, storage.type.namespace.definition.cpp, keyword.other.using.directive.cpp, storage.type.struct.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"punctuation.separator.pointer-access.cpp, punctuation.section.angle-brackets.begin.template.call.cpp, punctuation.section.angle-brackets.end.template.call.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"variable.other.member.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"keyword.other.using.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"keyword.type.cs, constant.character.escape.cs, punctuation.definition.interpolation.begin.cs, punctuation.definition.interpolation.end.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.quoted.double.cs, string.quoted.single.cs, punctuation.definition.string.begin.cs, punctuation.definition.string.end.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"variable.other.object.property.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"entity.name.type.namespace.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"keyword.symbol.fsharp, constant.language.unit.fsharp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"keyword.format.specifier.fsharp, entity.name.type.fsharp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.quoted.double.fsharp, string.quoted.single.fsharp, punctuation.definition.string.begin.fsharp, punctuation.definition.string.end.fsharp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.name.section.fsharp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"support.function.attribute.fsharp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"punctuation.separator.java, punctuation.separator.period.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"keyword.other.import.java, keyword.other.package.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"storage.type.function.arrow.java, keyword.control.ternary.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"variable.other.property.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"variable.language.wildcard.java, storage.modifier.import.java, storage.type.annotation.java, punctuation.definition.annotation.java, storage.modifier.package.java, entity.name.type.module.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"keyword.other.import.kotlin\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"storage.type.kotlin\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"constant.language.kotlin\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"entity.name.package.kotlin, storage.type.annotation.kotlin\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"entity.name.package.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"constant.language.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"entity.name.import.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"string.quoted.double.scala, string.quoted.single.scala, punctuation.definition.string.begin.scala, punctuation.definition.string.end.scala, string.quoted.double.interpolated.scala, string.quoted.single.interpolated.scala, string.quoted.triple.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.name.class, entity.other.inherited-class.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"keyword.declaration.stable.scala, keyword.other.arrow.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"keyword.other.import.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"keyword.operator.navigation.groovy, meta.method.body.java, meta.definition.method.groovy, meta.definition.method.signature.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"punctuation.separator.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"keyword.other.import.groovy, keyword.other.package.groovy, keyword.other.import.static.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"storage.type.def.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"variable.other.interpolated.groovy, meta.method.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"storage.modifier.import.groovy, storage.modifier.package.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"storage.type.annotation.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"keyword.type.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"entity.name.package.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"keyword.import.go, keyword.package.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"entity.name.type.mod.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"keyword.operator.path.rust, keyword.operator.member-access.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"storage.type.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"support.constant.core.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"meta.attribute.rust, variable.language.rust, storage.type.module.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"meta.function-call.swift, support.function.any-method.swift\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"support.variable.swift\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"keyword.operator.class.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"storage.type.trait.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"constant.language.php, support.other.namespace.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"storage.type.modifier.access.control.public.cpp, storage.type.modifier.access.control.private.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"keyword.control.import.include.php, storage.type.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"meta.function-call.arguments.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"punctuation.definition.decorator.python, punctuation.separator.period.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"constant.language.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"keyword.control.import.python, keyword.control.import.from.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"constant.language.lua\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"entity.name.class.lua\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"meta.function.method.with-arguments.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"punctuation.separator.method.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"keyword.control.pseudo-method.ruby, storage.type.variable.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"keyword.other.special-method.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"keyword.control.module.ruby, punctuation.definition.constant.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"string.regexp.character-class.ruby,string.regexp.interpolated.ruby,punctuation.definition.character-class.ruby,string.regexp.group.ruby, punctuation.section.regexp.ruby, punctuation.definition.group.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"variable.other.constant.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"keyword.other.arrow.haskell, keyword.other.big-arrow.haskell, keyword.other.double-colon.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"storage.type.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"constant.other.haskell, string.quoted.double.haskell, string.quoted.single.haskell, punctuation.definition.string.begin.haskell, punctuation.definition.string.end.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.name.function.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"entity.name.namespace, meta.preprocessor.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"keyword.control.import.julia, keyword.control.export.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"keyword.storage.modifier.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"constant.language.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"support.function.macro.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"keyword.other.period.elm\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"storage.type.elm\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"keyword.other.r\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"entity.name.function.r, variable.function.r\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"constant.language.r\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"entity.namespace.r\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"punctuation.separator.module-function.erlang, punctuation.section.directive.begin.erlang\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"keyword.control.directive.erlang, keyword.control.directive.define.erlang\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"entity.name.type.class.module.erlang\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.quoted.double.erlang, string.quoted.single.erlang, punctuation.definition.string.begin.erlang, punctuation.definition.string.end.erlang\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"keyword.control.directive.export.erlang, keyword.control.directive.module.erlang, keyword.control.directive.import.erlang, keyword.control.directive.behaviour.erlang\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"variable.other.readwrite.module.elixir, punctuation.definition.variable.elixir\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"constant.language.elixir\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"keyword.control.module.elixir\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"entity.name.type.value-signature.ocaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"keyword.other.ocaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"constant.language.variant.ocaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"storage.type.sub.perl, storage.type.declare.routine.perl\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"meta.function.lisp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"storage.type.function-type.lisp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"keyword.constant.lisp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.name.function.lisp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"constant.keyword.clojure, support.variable.clojure, meta.definition.variable.clojure\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.global.clojure\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"entity.name.function.clojure\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"meta.scope.if-block.shell, meta.scope.group.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"support.function.builtin.shell, entity.name.function.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.quoted.double.shell, string.quoted.single.shell, punctuation.definition.string.begin.shell, punctuation.definition.string.end.shell, string.unquoted.heredoc.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"keyword.control.heredoc-token.shell, variable.other.normal.shell, punctuation.definition.variable.shell, variable.other.special.shell, variable.other.positional.shell, variable.other.bracket.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"support.function.builtin.fish\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"support.function.unix.fish\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"variable.other.normal.fish, punctuation.definition.variable.fish, variable.other.fixed.fish, variable.other.special.fish\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"string.quoted.double.fish, punctuation.definition.string.end.fish, punctuation.definition.string.begin.fish, string.quoted.single.fish\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"constant.character.escape.single.fish\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"punctuation.definition.variable.powershell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"entity.name.function.powershell, support.function.attribute.powershell, support.function.powershell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.quoted.single.powershell, string.quoted.double.powershell, punctuation.definition.string.begin.powershell, punctuation.definition.string.end.powershell, string.quoted.double.heredoc.powershell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"variable.other.member.powershell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"string.unquoted.alias.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3c6aa\\\"}},{\\\"scope\\\":\\\"keyword.type.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"entity.name.fragment.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"entity.name.function.target.makefile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"variable.other.makefile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"meta.scope.prerequisites.makefile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"string.source.cmake\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.source.cmake\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"storage.source.cmake\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"punctuation.definition.map.viml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"storage.type.map.viml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"constant.character.map.viml, constant.character.map.key.viml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"constant.character.map.special.viml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"constant.language.tmux, constant.numeric.tmux\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"entity.name.function.package-manager.dockerfile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"keyword.operator.flag.dockerfile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.quoted.double.dockerfile, string.quoted.single.dockerfile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"constant.character.escape.dockerfile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"entity.name.type.base-image.dockerfile, entity.name.image.dockerfile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"punctuation.definition.separator.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"markup.deleted.diff, punctuation.definition.deleted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"meta.diff.range.context, punctuation.definition.range.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"meta.diff.header.from-file\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"markup.inserted.diff, punctuation.definition.inserted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"markup.changed.diff, punctuation.definition.changed.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"punctuation.definition.from-file.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"entity.name.section.group-title.ini, punctuation.definition.entity.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e67e80\\\"}},{\\\"scope\\\":\\\"punctuation.separator.key-value.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"string.quoted.double.ini, string.quoted.single.ini, punctuation.definition.string.begin.ini, punctuation.definition.string.end.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"keyword.other.definition.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"support.function.aggregate.sql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"string.quoted.single.sql, punctuation.definition.string.end.sql, punctuation.definition.string.begin.sql, string.quoted.double.sql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"support.type.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbbc7f\\\"}},{\\\"scope\\\":\\\"variable.parameter.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"constant.character.enum.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"punctuation.support.type.property-name.begin.json, punctuation.support.type.property-name.end.json, punctuation.separator.dictionary.key-value.json, punctuation.definition.string.begin.json, punctuation.definition.string.end.json, punctuation.separator.dictionary.pair.json, punctuation.separator.array.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"string.quoted.double.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"punctuation.separator.key-value.mapping.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859289\\\"}},{\\\"scope\\\":\\\"string.unquoted.plain.out.yaml, string.quoted.single.yaml, string.quoted.double.yaml, punctuation.definition.string.begin.yaml, punctuation.definition.string.end.yaml, string.unquoted.plain.in.yaml, string.unquoted.block.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"punctuation.definition.anchor.yaml, punctuation.definition.block.sequence.item.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#83c092\\\"}},{\\\"scope\\\":\\\"keyword.key.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e69875\\\"}},{\\\"scope\\\":\\\"string.quoted.single.basic.line.toml, string.quoted.single.literal.line.toml, punctuation.definition.keyValuePair.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a7c080\\\"}},{\\\"scope\\\":\\\"constant.other.boolean.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fbbb3\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.table.toml, punctuation.definition.table.toml, entity.other.attribute-name.table.array.toml, punctuation.definition.table.array.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d699b6\\\"}},{\\\"scope\\\":\\\"comment, string.comment, punctuation.definition.comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#859289\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: everforest-light */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#93b259d0\\\",\\\"activityBar.activeFocusBorder\\\":\\\"#93b259\\\",\\\"activityBar.background\\\":\\\"#fdf6e3\\\",\\\"activityBar.border\\\":\\\"#fdf6e3\\\",\\\"activityBar.dropBackground\\\":\\\"#fdf6e3\\\",\\\"activityBar.foreground\\\":\\\"#5c6a72\\\",\\\"activityBar.inactiveForeground\\\":\\\"#939f91\\\",\\\"activityBarBadge.background\\\":\\\"#93b259\\\",\\\"activityBarBadge.foreground\\\":\\\"#fdf6e3\\\",\\\"badge.background\\\":\\\"#93b259\\\",\\\"badge.foreground\\\":\\\"#fdf6e3\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#5c6a72\\\",\\\"breadcrumb.focusForeground\\\":\\\"#5c6a72\\\",\\\"breadcrumb.foreground\\\":\\\"#939f91\\\",\\\"button.background\\\":\\\"#93b259\\\",\\\"button.foreground\\\":\\\"#fdf6e3\\\",\\\"button.hoverBackground\\\":\\\"#93b259d0\\\",\\\"button.secondaryBackground\\\":\\\"#efebd4\\\",\\\"button.secondaryForeground\\\":\\\"#5c6a72\\\",\\\"button.secondaryHoverBackground\\\":\\\"#e6e2cc\\\",\\\"charts.blue\\\":\\\"#3a94c5\\\",\\\"charts.foreground\\\":\\\"#5c6a72\\\",\\\"charts.green\\\":\\\"#8da101\\\",\\\"charts.orange\\\":\\\"#f57d26\\\",\\\"charts.purple\\\":\\\"#df69ba\\\",\\\"charts.red\\\":\\\"#f85552\\\",\\\"charts.yellow\\\":\\\"#dfa000\\\",\\\"checkbox.background\\\":\\\"#fdf6e3\\\",\\\"checkbox.border\\\":\\\"#e0dcc7\\\",\\\"checkbox.foreground\\\":\\\"#f57d26\\\",\\\"debugConsole.errorForeground\\\":\\\"#f85552\\\",\\\"debugConsole.infoForeground\\\":\\\"#8da101\\\",\\\"debugConsole.sourceForeground\\\":\\\"#df69ba\\\",\\\"debugConsole.warningForeground\\\":\\\"#dfa000\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#35a77c\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#3a94c5\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#f1706f\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#f85552\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#f85552\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#879686\\\",\\\"debugIcon.continueForeground\\\":\\\"#3a94c5\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#df69ba\\\",\\\"debugIcon.pauseForeground\\\":\\\"#dfa000\\\",\\\"debugIcon.restartForeground\\\":\\\"#35a77c\\\",\\\"debugIcon.startForeground\\\":\\\"#35a77c\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#3a94c5\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#3a94c5\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#3a94c5\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#3a94c5\\\",\\\"debugIcon.stopForeground\\\":\\\"#f85552\\\",\\\"debugTokenExpression.boolean\\\":\\\"#df69ba\\\",\\\"debugTokenExpression.error\\\":\\\"#f85552\\\",\\\"debugTokenExpression.name\\\":\\\"#3a94c5\\\",\\\"debugTokenExpression.number\\\":\\\"#df69ba\\\",\\\"debugTokenExpression.string\\\":\\\"#dfa000\\\",\\\"debugTokenExpression.value\\\":\\\"#8da101\\\",\\\"debugToolBar.background\\\":\\\"#fdf6e3\\\",\\\"descriptionForeground\\\":\\\"#939f91\\\",\\\"diffEditor.diagonalFill\\\":\\\"#e0dcc7\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#6ec39830\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#f1706f30\\\",\\\"dropdown.background\\\":\\\"#fdf6e3\\\",\\\"dropdown.border\\\":\\\"#e0dcc7\\\",\\\"dropdown.foreground\\\":\\\"#879686\\\",\\\"editor.background\\\":\\\"#fdf6e3\\\",\\\"editor.findMatchBackground\\\":\\\"#f3945940\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#a4bb4a40\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#e6e2cc50\\\",\\\"editor.foldBackground\\\":\\\"#e0dcc780\\\",\\\"editor.foreground\\\":\\\"#5c6a72\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#e6e2cc90\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#e6e2cc50\\\",\\\"editor.lineHighlightBackground\\\":\\\"#efebd470\\\",\\\"editor.lineHighlightBorder\\\":\\\"#e0dcc700\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#efebd480\\\",\\\"editor.selectionBackground\\\":\\\"#e6e2cca0\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#e6e2cc50\\\",\\\"editor.snippetFinalTabstopHighlightBackground\\\":\\\"#a4bb4a40\\\",\\\"editor.snippetFinalTabstopHighlightBorder\\\":\\\"#fdf6e3\\\",\\\"editor.snippetTabstopHighlightBackground\\\":\\\"#efebd4\\\",\\\"editor.symbolHighlightBackground\\\":\\\"#6cb3c640\\\",\\\"editor.wordHighlightBackground\\\":\\\"#e6e2cc48\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#e6e2cc90\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#f85552\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#dfa000\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#8da101\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#3a94c5\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#f57d26\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#df69ba\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#939f91\\\",\\\"editorBracketMatch.background\\\":\\\"#e0dcc7\\\",\\\"editorBracketMatch.border\\\":\\\"#fdf6e300\\\",\\\"editorCodeLens.foreground\\\":\\\"#a4ad9ea0\\\",\\\"editorCursor.foreground\\\":\\\"#5c6a72\\\",\\\"editorError.background\\\":\\\"#f1706f00\\\",\\\"editorError.foreground\\\":\\\"#f1706f\\\",\\\"editorGhostText.background\\\":\\\"#fdf6e300\\\",\\\"editorGhostText.foreground\\\":\\\"#a4ad9ea0\\\",\\\"editorGroup.border\\\":\\\"#efebd4\\\",\\\"editorGroup.dropBackground\\\":\\\"#e0dcc760\\\",\\\"editorGroupHeader.noTabsBackground\\\":\\\"#fdf6e3\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#fdf6e3\\\",\\\"editorGutter.addedBackground\\\":\\\"#a4bb4aa0\\\",\\\"editorGutter.background\\\":\\\"#fdf6e300\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#a4ad9e\\\",\\\"editorGutter.deletedBackground\\\":\\\"#f1706fa0\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#6cb3c6a0\\\",\\\"editorHint.foreground\\\":\\\"#e092be\\\",\\\"editorHoverWidget.background\\\":\\\"#f4f0d9\\\",\\\"editorHoverWidget.border\\\":\\\"#e6e2cc\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#87968650\\\",\\\"editorIndentGuide.background\\\":\\\"#87968620\\\",\\\"editorInfo.background\\\":\\\"#6cb3c600\\\",\\\"editorInfo.foreground\\\":\\\"#6cb3c6\\\",\\\"editorInlayHint.background\\\":\\\"#fdf6e300\\\",\\\"editorInlayHint.foreground\\\":\\\"#a4ad9ea0\\\",\\\"editorInlayHint.parameterBackground\\\":\\\"#fdf6e300\\\",\\\"editorInlayHint.parameterForeground\\\":\\\"#a4ad9ea0\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#fdf6e300\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#a4ad9ea0\\\",\\\"editorLightBulb.foreground\\\":\\\"#dfa000\\\",\\\"editorLightBulbAutoFix.foreground\\\":\\\"#35a77c\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#879686e0\\\",\\\"editorLineNumber.foreground\\\":\\\"#a4ad9ea0\\\",\\\"editorLink.activeForeground\\\":\\\"#8da101\\\",\\\"editorMarkerNavigation.background\\\":\\\"#f4f0d9\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#f1706f80\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#6cb3c680\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#e4b64980\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#a4bb4aa0\\\",\\\"editorOverviewRuler.border\\\":\\\"#fdf6e300\\\",\\\"editorOverviewRuler.commonContentForeground\\\":\\\"#939f91\\\",\\\"editorOverviewRuler.currentContentForeground\\\":\\\"#6cb3c6\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#f1706fa0\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#f85552\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#6ec398\\\",\\\"editorOverviewRuler.incomingContentForeground\\\":\\\"#6ec398\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#df69ba\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#6cb3c6a0\\\",\\\"editorOverviewRuler.rangeHighlightForeground\\\":\\\"#6ec398\\\",\\\"editorOverviewRuler.selectionHighlightForeground\\\":\\\"#6ec398\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#dfa000\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#e0dcc7\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#e0dcc7\\\",\\\"editorRuler.foreground\\\":\\\"#e6e2cca0\\\",\\\"editorSuggestWidget.background\\\":\\\"#efebd4\\\",\\\"editorSuggestWidget.border\\\":\\\"#efebd4\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#5c6a72\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#8da101\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#e6e2cc\\\",\\\"editorUnnecessaryCode.border\\\":\\\"#fdf6e3\\\",\\\"editorUnnecessaryCode.opacity\\\":\\\"#00000080\\\",\\\"editorWarning.background\\\":\\\"#e4b64900\\\",\\\"editorWarning.foreground\\\":\\\"#e4b649\\\",\\\"editorWhitespace.foreground\\\":\\\"#e6e2cc\\\",\\\"editorWidget.background\\\":\\\"#fdf6e3\\\",\\\"editorWidget.border\\\":\\\"#e0dcc7\\\",\\\"editorWidget.foreground\\\":\\\"#5c6a72\\\",\\\"errorForeground\\\":\\\"#f85552\\\",\\\"extensionBadge.remoteBackground\\\":\\\"#93b259\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#fdf6e3\\\",\\\"extensionButton.prominentBackground\\\":\\\"#93b259\\\",\\\"extensionButton.prominentForeground\\\":\\\"#fdf6e3\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#93b259d0\\\",\\\"extensionIcon.preReleaseForeground\\\":\\\"#f57d26\\\",\\\"extensionIcon.starForeground\\\":\\\"#35a77c\\\",\\\"extensionIcon.verifiedForeground\\\":\\\"#8da101\\\",\\\"focusBorder\\\":\\\"#fdf6e300\\\",\\\"foreground\\\":\\\"#879686\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#8da101a0\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#df69baa0\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#f85552a0\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#e0dcc7\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#3a94c5a0\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#35a77ca0\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#35a77ca0\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#f57d26a0\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#dfa000a0\\\",\\\"gitlens.closedPullRequestIconColor\\\":\\\"#f85552\\\",\\\"gitlens.decorations.addedForegroundColor\\\":\\\"#8da101\\\",\\\"gitlens.decorations.branchAheadForegroundColor\\\":\\\"#35a77c\\\",\\\"gitlens.decorations.branchBehindForegroundColor\\\":\\\"#f57d26\\\",\\\"gitlens.decorations.branchDivergedForegroundColor\\\":\\\"#dfa000\\\",\\\"gitlens.decorations.branchMissingUpstreamForegroundColor\\\":\\\"#f85552\\\",\\\"gitlens.decorations.branchUnpublishedForegroundColor\\\":\\\"#3a94c5\\\",\\\"gitlens.decorations.branchUpToDateForegroundColor\\\":\\\"#5c6a72\\\",\\\"gitlens.decorations.copiedForegroundColor\\\":\\\"#df69ba\\\",\\\"gitlens.decorations.deletedForegroundColor\\\":\\\"#f85552\\\",\\\"gitlens.decorations.ignoredForegroundColor\\\":\\\"#879686\\\",\\\"gitlens.decorations.modifiedForegroundColor\\\":\\\"#3a94c5\\\",\\\"gitlens.decorations.renamedForegroundColor\\\":\\\"#df69ba\\\",\\\"gitlens.decorations.untrackedForegroundColor\\\":\\\"#dfa000\\\",\\\"gitlens.gutterBackgroundColor\\\":\\\"#fdf6e3\\\",\\\"gitlens.gutterForegroundColor\\\":\\\"#5c6a72\\\",\\\"gitlens.gutterUncommittedForegroundColor\\\":\\\"#3a94c5\\\",\\\"gitlens.lineHighlightBackgroundColor\\\":\\\"#f4f0d9\\\",\\\"gitlens.lineHighlightOverviewRulerColor\\\":\\\"#93b259\\\",\\\"gitlens.mergedPullRequestIconColor\\\":\\\"#df69ba\\\",\\\"gitlens.openPullRequestIconColor\\\":\\\"#35a77c\\\",\\\"gitlens.trailingLineForegroundColor\\\":\\\"#939f91\\\",\\\"gitlens.unpublishedCommitIconColor\\\":\\\"#dfa000\\\",\\\"gitlens.unpulledChangesIconColor\\\":\\\"#f57d26\\\",\\\"gitlens.unpushlishedChangesIconColor\\\":\\\"#3a94c5\\\",\\\"icon.foreground\\\":\\\"#35a77c\\\",\\\"imagePreview.border\\\":\\\"#fdf6e3\\\",\\\"input.background\\\":\\\"#fdf6e300\\\",\\\"input.border\\\":\\\"#e0dcc7\\\",\\\"input.foreground\\\":\\\"#5c6a72\\\",\\\"input.placeholderForeground\\\":\\\"#a4ad9e\\\",\\\"inputOption.activeBorder\\\":\\\"#35a77c\\\",\\\"inputValidation.errorBackground\\\":\\\"#f1706f\\\",\\\"inputValidation.errorBorder\\\":\\\"#f85552\\\",\\\"inputValidation.errorForeground\\\":\\\"#5c6a72\\\",\\\"inputValidation.infoBackground\\\":\\\"#6cb3c6\\\",\\\"inputValidation.infoBorder\\\":\\\"#3a94c5\\\",\\\"inputValidation.infoForeground\\\":\\\"#5c6a72\\\",\\\"inputValidation.warningBackground\\\":\\\"#e4b649\\\",\\\"inputValidation.warningBorder\\\":\\\"#dfa000\\\",\\\"inputValidation.warningForeground\\\":\\\"#5c6a72\\\",\\\"issues.closed\\\":\\\"#f85552\\\",\\\"issues.open\\\":\\\"#35a77c\\\",\\\"keybindingLabel.background\\\":\\\"#fdf6e300\\\",\\\"keybindingLabel.border\\\":\\\"#f4f0d9\\\",\\\"keybindingLabel.bottomBorder\\\":\\\"#efebd4\\\",\\\"keybindingLabel.foreground\\\":\\\"#5c6a72\\\",\\\"keybindingTable.headerBackground\\\":\\\"#efebd4\\\",\\\"keybindingTable.rowsBackground\\\":\\\"#f4f0d9\\\",\\\"list.activeSelectionBackground\\\":\\\"#e6e2cc80\\\",\\\"list.activeSelectionForeground\\\":\\\"#5c6a72\\\",\\\"list.dropBackground\\\":\\\"#f4f0d980\\\",\\\"list.errorForeground\\\":\\\"#f85552\\\",\\\"list.focusBackground\\\":\\\"#e6e2cc80\\\",\\\"list.focusForeground\\\":\\\"#5c6a72\\\",\\\"list.highlightForeground\\\":\\\"#8da101\\\",\\\"list.hoverBackground\\\":\\\"#fdf6e300\\\",\\\"list.hoverForeground\\\":\\\"#5c6a72\\\",\\\"list.inactiveFocusBackground\\\":\\\"#e6e2cc60\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#e6e2cc80\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#879686\\\",\\\"list.invalidItemForeground\\\":\\\"#f1706f\\\",\\\"list.warningForeground\\\":\\\"#dfa000\\\",\\\"menu.background\\\":\\\"#fdf6e3\\\",\\\"menu.foreground\\\":\\\"#879686\\\",\\\"menu.selectionBackground\\\":\\\"#f4f0d9\\\",\\\"menu.selectionForeground\\\":\\\"#5c6a72\\\",\\\"menubar.selectionBackground\\\":\\\"#fdf6e3\\\",\\\"menubar.selectionBorder\\\":\\\"#fdf6e3\\\",\\\"merge.border\\\":\\\"#fdf6e300\\\",\\\"merge.currentContentBackground\\\":\\\"#6cb3c640\\\",\\\"merge.currentHeaderBackground\\\":\\\"#6cb3c680\\\",\\\"merge.incomingContentBackground\\\":\\\"#6ec39840\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#6ec39880\\\",\\\"minimap.errorHighlight\\\":\\\"#f1706f80\\\",\\\"minimap.findMatchHighlight\\\":\\\"#6ec39860\\\",\\\"minimap.selectionHighlight\\\":\\\"#e0dcc7f0\\\",\\\"minimap.warningHighlight\\\":\\\"#e4b64980\\\",\\\"minimapGutter.addedBackground\\\":\\\"#a4bb4aa0\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#f1706fa0\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#6cb3c6a0\\\",\\\"notebook.cellBorderColor\\\":\\\"#e0dcc7\\\",\\\"notebook.cellHoverBackground\\\":\\\"#fdf6e3\\\",\\\"notebook.cellStatusBarItemHoverBackground\\\":\\\"#f4f0d9\\\",\\\"notebook.cellToolbarSeparator\\\":\\\"#e0dcc7\\\",\\\"notebook.focusedCellBackground\\\":\\\"#fdf6e3\\\",\\\"notebook.focusedCellBorder\\\":\\\"#e0dcc7\\\",\\\"notebook.focusedEditorBorder\\\":\\\"#e0dcc7\\\",\\\"notebook.focusedRowBorder\\\":\\\"#e0dcc7\\\",\\\"notebook.inactiveFocusedCellBorder\\\":\\\"#e0dcc7\\\",\\\"notebook.outputContainerBackgroundColor\\\":\\\"#f4f0d9\\\",\\\"notebook.selectedCellBorder\\\":\\\"#e0dcc7\\\",\\\"notebookStatusErrorIcon.foreground\\\":\\\"#f85552\\\",\\\"notebookStatusRunningIcon.foreground\\\":\\\"#3a94c5\\\",\\\"notebookStatusSuccessIcon.foreground\\\":\\\"#8da101\\\",\\\"notificationCenterHeader.background\\\":\\\"#efebd4\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#5c6a72\\\",\\\"notificationLink.foreground\\\":\\\"#8da101\\\",\\\"notifications.background\\\":\\\"#fdf6e3\\\",\\\"notifications.foreground\\\":\\\"#5c6a72\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#f85552\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#3a94c5\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#dfa000\\\",\\\"panel.background\\\":\\\"#fdf6e3\\\",\\\"panel.border\\\":\\\"#fdf6e3\\\",\\\"panelInput.border\\\":\\\"#e0dcc7\\\",\\\"panelSection.border\\\":\\\"#efebd4\\\",\\\"panelSectionHeader.background\\\":\\\"#fdf6e3\\\",\\\"panelTitle.activeBorder\\\":\\\"#93b259d0\\\",\\\"panelTitle.activeForeground\\\":\\\"#5c6a72\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#939f91\\\",\\\"peekView.border\\\":\\\"#e6e2cc\\\",\\\"peekViewEditor.background\\\":\\\"#f4f0d9\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#e4b64950\\\",\\\"peekViewEditorGutter.background\\\":\\\"#f4f0d9\\\",\\\"peekViewResult.background\\\":\\\"#f4f0d9\\\",\\\"peekViewResult.fileForeground\\\":\\\"#5c6a72\\\",\\\"peekViewResult.lineForeground\\\":\\\"#879686\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#e4b64950\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#6ec39850\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#5c6a72\\\",\\\"peekViewTitle.background\\\":\\\"#e6e2cc\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#5c6a72\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#8da101\\\",\\\"pickerGroup.border\\\":\\\"#93b2591a\\\",\\\"pickerGroup.foreground\\\":\\\"#5c6a72\\\",\\\"ports.iconRunningProcessForeground\\\":\\\"#f57d26\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#f85552\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#3a94c5\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#dfa000\\\",\\\"progressBar.background\\\":\\\"#93b259\\\",\\\"quickInputTitle.background\\\":\\\"#f4f0d9\\\",\\\"rust_analyzer.inlayHints.background\\\":\\\"#fdf6e300\\\",\\\"rust_analyzer.inlayHints.foreground\\\":\\\"#a4ad9ea0\\\",\\\"rust_analyzer.syntaxTreeBorder\\\":\\\"#f85552\\\",\\\"sash.hoverBorder\\\":\\\"#e6e2cc\\\",\\\"scrollbar.shadow\\\":\\\"#3c474d20\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#879686\\\",\\\"scrollbarSlider.background\\\":\\\"#e0dcc780\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#e0dcc7\\\",\\\"selection.background\\\":\\\"#e6e2ccc0\\\",\\\"settings.checkboxBackground\\\":\\\"#fdf6e3\\\",\\\"settings.checkboxBorder\\\":\\\"#e0dcc7\\\",\\\"settings.checkboxForeground\\\":\\\"#f57d26\\\",\\\"settings.dropdownBackground\\\":\\\"#fdf6e3\\\",\\\"settings.dropdownBorder\\\":\\\"#e0dcc7\\\",\\\"settings.dropdownForeground\\\":\\\"#35a77c\\\",\\\"settings.focusedRowBackground\\\":\\\"#f4f0d9\\\",\\\"settings.headerForeground\\\":\\\"#879686\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#a4ad9e\\\",\\\"settings.numberInputBackground\\\":\\\"#fdf6e3\\\",\\\"settings.numberInputBorder\\\":\\\"#e0dcc7\\\",\\\"settings.numberInputForeground\\\":\\\"#df69ba\\\",\\\"settings.rowHoverBackground\\\":\\\"#f4f0d9\\\",\\\"settings.textInputBackground\\\":\\\"#fdf6e3\\\",\\\"settings.textInputBorder\\\":\\\"#e0dcc7\\\",\\\"settings.textInputForeground\\\":\\\"#3a94c5\\\",\\\"sideBar.background\\\":\\\"#fdf6e3\\\",\\\"sideBar.foreground\\\":\\\"#939f91\\\",\\\"sideBarSectionHeader.background\\\":\\\"#fdf6e300\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#879686\\\",\\\"sideBarTitle.foreground\\\":\\\"#879686\\\",\\\"statusBar.background\\\":\\\"#fdf6e3\\\",\\\"statusBar.border\\\":\\\"#fdf6e3\\\",\\\"statusBar.debuggingBackground\\\":\\\"#fdf6e3\\\",\\\"statusBar.debuggingForeground\\\":\\\"#f57d26\\\",\\\"statusBar.foreground\\\":\\\"#879686\\\",\\\"statusBar.noFolderBackground\\\":\\\"#fdf6e3\\\",\\\"statusBar.noFolderBorder\\\":\\\"#fdf6e3\\\",\\\"statusBar.noFolderForeground\\\":\\\"#879686\\\",\\\"statusBarItem.activeBackground\\\":\\\"#e6e2cc70\\\",\\\"statusBarItem.errorBackground\\\":\\\"#fdf6e3\\\",\\\"statusBarItem.errorForeground\\\":\\\"#f85552\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#e6e2cca0\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#fdf6e3\\\",\\\"statusBarItem.prominentForeground\\\":\\\"#5c6a72\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#e6e2cca0\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#fdf6e3\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#879686\\\",\\\"statusBarItem.warningBackground\\\":\\\"#fdf6e3\\\",\\\"statusBarItem.warningForeground\\\":\\\"#dfa000\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#3a94c5\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#df69ba\\\",\\\"symbolIcon.classForeground\\\":\\\"#dfa000\\\",\\\"symbolIcon.colorForeground\\\":\\\"#5c6a72\\\",\\\"symbolIcon.constantForeground\\\":\\\"#35a77c\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#df69ba\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#df69ba\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#35a77c\\\",\\\"symbolIcon.eventForeground\\\":\\\"#dfa000\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#5c6a72\\\",\\\"symbolIcon.fileForeground\\\":\\\"#5c6a72\\\",\\\"symbolIcon.folderForeground\\\":\\\"#5c6a72\\\",\\\"symbolIcon.functionForeground\\\":\\\"#8da101\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#dfa000\\\",\\\"symbolIcon.keyForeground\\\":\\\"#8da101\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#f85552\\\",\\\"symbolIcon.methodForeground\\\":\\\"#8da101\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#df69ba\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#df69ba\\\",\\\"symbolIcon.nullForeground\\\":\\\"#35a77c\\\",\\\"symbolIcon.numberForeground\\\":\\\"#df69ba\\\",\\\"symbolIcon.objectForeground\\\":\\\"#df69ba\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#f57d26\\\",\\\"symbolIcon.packageForeground\\\":\\\"#df69ba\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#35a77c\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#3a94c5\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#5c6a72\\\",\\\"symbolIcon.stringForeground\\\":\\\"#8da101\\\",\\\"symbolIcon.structForeground\\\":\\\"#dfa000\\\",\\\"symbolIcon.textForeground\\\":\\\"#5c6a72\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#35a77c\\\",\\\"symbolIcon.unitForeground\\\":\\\"#5c6a72\\\",\\\"symbolIcon.variableForeground\\\":\\\"#3a94c5\\\",\\\"tab.activeBackground\\\":\\\"#fdf6e3\\\",\\\"tab.activeBorder\\\":\\\"#93b259d0\\\",\\\"tab.activeForeground\\\":\\\"#5c6a72\\\",\\\"tab.border\\\":\\\"#fdf6e3\\\",\\\"tab.hoverBackground\\\":\\\"#fdf6e3\\\",\\\"tab.hoverForeground\\\":\\\"#5c6a72\\\",\\\"tab.inactiveBackground\\\":\\\"#fdf6e3\\\",\\\"tab.inactiveForeground\\\":\\\"#a4ad9e\\\",\\\"tab.lastPinnedBorder\\\":\\\"#93b259d0\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#939f91\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#879686\\\",\\\"tab.unfocusedHoverForeground\\\":\\\"#5c6a72\\\",\\\"tab.unfocusedInactiveForeground\\\":\\\"#a4ad9e\\\",\\\"terminal.ansiBlack\\\":\\\"#5c6a72\\\",\\\"terminal.ansiBlue\\\":\\\"#3a94c5\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#5c6a72\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#3a94c5\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#35a77c\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#8da101\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#df69ba\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f85552\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#f4f0d9\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#dfa000\\\",\\\"terminal.ansiCyan\\\":\\\"#35a77c\\\",\\\"terminal.ansiGreen\\\":\\\"#8da101\\\",\\\"terminal.ansiMagenta\\\":\\\"#df69ba\\\",\\\"terminal.ansiRed\\\":\\\"#f85552\\\",\\\"terminal.ansiWhite\\\":\\\"#939f91\\\",\\\"terminal.ansiYellow\\\":\\\"#dfa000\\\",\\\"terminal.foreground\\\":\\\"#5c6a72\\\",\\\"terminalCursor.foreground\\\":\\\"#5c6a72\\\",\\\"testing.iconErrored\\\":\\\"#f85552\\\",\\\"testing.iconFailed\\\":\\\"#f85552\\\",\\\"testing.iconPassed\\\":\\\"#35a77c\\\",\\\"testing.iconQueued\\\":\\\"#3a94c5\\\",\\\"testing.iconSkipped\\\":\\\"#df69ba\\\",\\\"testing.iconUnset\\\":\\\"#dfa000\\\",\\\"testing.runAction\\\":\\\"#35a77c\\\",\\\"textBlockQuote.background\\\":\\\"#f4f0d9\\\",\\\"textBlockQuote.border\\\":\\\"#e6e2cc\\\",\\\"textCodeBlock.background\\\":\\\"#f4f0d9\\\",\\\"textLink.activeForeground\\\":\\\"#8da101c0\\\",\\\"textLink.foreground\\\":\\\"#8da101\\\",\\\"textPreformat.foreground\\\":\\\"#dfa000\\\",\\\"titleBar.activeBackground\\\":\\\"#fdf6e3\\\",\\\"titleBar.activeForeground\\\":\\\"#879686\\\",\\\"titleBar.border\\\":\\\"#fdf6e3\\\",\\\"titleBar.inactiveBackground\\\":\\\"#fdf6e3\\\",\\\"titleBar.inactiveForeground\\\":\\\"#a4ad9e\\\",\\\"toolbar.hoverBackground\\\":\\\"#f4f0d9\\\",\\\"tree.indentGuidesStroke\\\":\\\"#a4ad9e\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#f4f0d9\\\",\\\"welcomePage.buttonBackground\\\":\\\"#f4f0d9\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#f4f0d9a0\\\",\\\"welcomePage.progress.foreground\\\":\\\"#8da101\\\",\\\"welcomePage.tileHoverBackground\\\":\\\"#f4f0d9\\\",\\\"widget.shadow\\\":\\\"#3c474d20\\\"},\\\"displayName\\\":\\\"Everforest Light\\\",\\\"name\\\":\\\"everforest-light\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"class:python\\\":\\\"#35a77c\\\",\\\"class:typescript\\\":\\\"#35a77c\\\",\\\"class:typescriptreact\\\":\\\"#35a77c\\\",\\\"enum:typescript\\\":\\\"#df69ba\\\",\\\"enum:typescriptreact\\\":\\\"#df69ba\\\",\\\"enumMember:typescript\\\":\\\"#3a94c5\\\",\\\"enumMember:typescriptreact\\\":\\\"#3a94c5\\\",\\\"interface:typescript\\\":\\\"#35a77c\\\",\\\"interface:typescriptreact\\\":\\\"#35a77c\\\",\\\"intrinsic:python\\\":\\\"#df69ba\\\",\\\"macro:rust\\\":\\\"#35a77c\\\",\\\"memberOperatorOverload\\\":\\\"#f57d26\\\",\\\"module:python\\\":\\\"#3a94c5\\\",\\\"namespace:rust\\\":\\\"#df69ba\\\",\\\"namespace:typescript\\\":\\\"#df69ba\\\",\\\"namespace:typescriptreact\\\":\\\"#df69ba\\\",\\\"operatorOverload\\\":\\\"#f57d26\\\",\\\"property.defaultLibrary:javascript\\\":\\\"#df69ba\\\",\\\"property.defaultLibrary:javascriptreact\\\":\\\"#df69ba\\\",\\\"property.defaultLibrary:typescript\\\":\\\"#df69ba\\\",\\\"property.defaultLibrary:typescriptreact\\\":\\\"#df69ba\\\",\\\"selfKeyword:rust\\\":\\\"#df69ba\\\",\\\"variable.defaultLibrary:javascript\\\":\\\"#df69ba\\\",\\\"variable.defaultLibrary:javascriptreact\\\":\\\"#df69ba\\\",\\\"variable.defaultLibrary:typescript\\\":\\\"#df69ba\\\",\\\"variable.defaultLibrary:typescriptreact\\\":\\\"#df69ba\\\"},\\\"tokenColors\\\":[{\\\"scope\\\":\\\"keyword, storage.type.function, storage.type.class, storage.type.enum, storage.type.interface, storage.type.property, keyword.operator.new, keyword.operator.expression, keyword.operator.new, keyword.operator.delete, storage.type.extends\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"keyword.other.debugger\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"storage, modifier, keyword.var, entity.name.tag, keyword.control.case, keyword.control.switch\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"keyword.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"string, punctuation.definition.string.end, punctuation.definition.string.begin, punctuation.definition.string.template.begin, punctuation.definition.string.template.end\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"constant.character.escape, punctuation.quasi.element, punctuation.definition.template-expression, punctuation.section.embedded, storage.type.format, constant.other.placeholder, constant.other.placeholder, variable.interpolation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.name.function, support.function, meta.function, meta.function-call, meta.definition.method\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"keyword.control.at-rule, keyword.control.import, keyword.control.export, storage.type.namespace, punctuation.decorator, keyword.control.directive, keyword.preprocessor, punctuation.definition.preprocessor, punctuation.definition.directive, keyword.other.import, keyword.other.package, entity.name.type.namespace, entity.name.scope-resolution, keyword.other.using, keyword.package, keyword.import, keyword.map\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"storage.type.annotation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"entity.name.label, constant.other.label\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"support.module, support.node, support.other.module, support.type.object.module, entity.name.type.module, entity.name.type.class.module, keyword.control.module\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"storage.type, support.type, entity.name.type, keyword.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"entity.name.type.class, support.class, entity.name.class, entity.other.inherited-class, storage.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"constant.language.boolean\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"entity.name.function.preprocessor\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"variable.language.this, variable.language.self, variable.language.super, keyword.other.this, variable.language.special, constant.language.null, constant.language.undefined, constant.language.nan\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"constant.language, support.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"variable, support.variable, meta.definition.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"variable.object.property, support.variable.property, variable.other.property, variable.other.object.property, variable.other.enummember, variable.other.member, meta.object-literal.key\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"punctuation, meta.brace, meta.delimiter, meta.bracket\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"heading.1.markdown, markup.heading.setext.1.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"heading.2.markdown, markup.heading.setext.2.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"heading.3.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"heading.4.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"heading.5.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"heading.6.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"punctuation.definition.heading.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"string.other.link.title.markdown, constant.other.reference.link.markdown, string.other.link.description.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"markup.underline.link.image.markdown, markup.underline.link.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"punctuation.definition.string.begin.markdown, punctuation.definition.string.end.markdown, punctuation.definition.italic.markdown, punctuation.definition.quote.begin.markdown, punctuation.definition.metadata.markdown, punctuation.separator.key-value.markdown, punctuation.definition.constant.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"punctuation.definition.bold.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"meta.separator.markdown, punctuation.definition.constant.begin.markdown, punctuation.definition.constant.end.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.bold markup.italic, markup.italic markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic bold\\\"}},{\\\"scope\\\":\\\"punctuation.definition.markdown, punctuation.definition.raw.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"fenced_code.block.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"markup.fenced_code.block.markdown, markup.inline.raw.string.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"punctuation.definition.heading.restructuredtext\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"punctuation.definition.field.restructuredtext, punctuation.separator.key-value.restructuredtext, punctuation.definition.directive.restructuredtext, punctuation.definition.constant.restructuredtext, punctuation.definition.italic.restructuredtext, punctuation.definition.table.restructuredtext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"punctuation.definition.bold.restructuredtext\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"regular\\\",\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"entity.name.tag.restructuredtext, punctuation.definition.link.restructuredtext, punctuation.definition.raw.restructuredtext, punctuation.section.raw.restructuredtext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"constant.other.footnote.link.restructuredtext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"support.directive.restructuredtext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"entity.name.directive.restructuredtext, markup.raw.restructuredtext, markup.raw.inner.restructuredtext, string.other.link.title.restructuredtext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"punctuation.definition.function.latex, punctuation.definition.function.tex, punctuation.definition.keyword.latex, constant.character.newline.tex, punctuation.definition.keyword.tex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"support.function.be.latex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"support.function.section.latex, keyword.control.table.cell.latex, keyword.control.table.newline.latex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"support.class.latex, variable.parameter.latex, variable.parameter.function.latex, variable.parameter.definition.label.latex, constant.other.reference.label.latex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"keyword.control.preamble.latex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"punctuation.separator.namespace.xml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"entity.name.tag.html, entity.name.tag.xml, entity.name.tag.localname.xml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.html, entity.other.attribute-name.xml, entity.other.attribute-name.localname.xml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.quoted.double.html, string.quoted.single.html, punctuation.definition.string.begin.html, punctuation.definition.string.end.html, punctuation.separator.key-value.html, punctuation.definition.string.begin.xml, punctuation.definition.string.end.xml, string.quoted.double.xml, string.quoted.single.xml, punctuation.definition.tag.begin.html, punctuation.definition.tag.end.html, punctuation.definition.tag.xml, meta.tag.xml, meta.tag.preprocessor.xml, meta.tag.other.html, meta.tag.block.any.html, meta.tag.inline.any.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"variable.language.documentroot.xml, meta.tag.sgml.doctype.xml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"storage.type.proto\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.quoted.double.proto.syntax, string.quoted.single.proto.syntax, string.quoted.double.proto, string.quoted.single.proto\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.name.class.proto, entity.name.class.message.proto\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"punctuation.definition.entity.css, punctuation.separator.key-value.css, punctuation.terminator.rule.css, punctuation.separator.list.comma.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.class.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"keyword.other.unit\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.quoted.single.css, string.quoted.double.css, support.constant.property-value.css, meta.property-value.css, punctuation.definition.string.begin.css, punctuation.definition.string.end.css, constant.numeric.css, support.constant.font-name.css, variable.parameter.keyframe-list.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"support.type.vendored.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"entity.name.tag.css, entity.other.keyframe-offset.css, punctuation.definition.keyword.css, keyword.control.at-rule.keyframes.css, meta.selector.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"punctuation.definition.entity.scss, punctuation.separator.key-value.scss, punctuation.terminator.rule.scss, punctuation.separator.list.comma.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"keyword.control.at-rule.keyframes.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"punctuation.definition.interpolation.begin.bracket.curly.scss, punctuation.definition.interpolation.end.bracket.curly.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"punctuation.definition.string.begin.scss, punctuation.definition.string.end.scss, string.quoted.double.scss, string.quoted.single.scss, constant.character.css.sass, meta.property-value.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"keyword.control.at-rule.include.scss, keyword.control.at-rule.use.scss, keyword.control.at-rule.mixin.scss, keyword.control.at-rule.extend.scss, keyword.control.at-rule.import.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"meta.function.stylus\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"entity.name.function.stylus\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.unquoted.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"punctuation.accessor.js, punctuation.separator.key-value.js, punctuation.separator.label.js, keyword.operator.accessor.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"punctuation.definition.block.tag.jsdoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"storage.type.js, storage.type.function.arrow.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"JSXNested\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag.jsx, entity.other.attribute-name.jsx, punctuation.definition.tag.begin.js.jsx, punctuation.definition.tag.end.js.jsx, entity.other.attribute-name.js.jsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.name.type.module.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"keyword.operator.type.annotation.ts, punctuation.accessor.ts, punctuation.separator.key-value.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag.directive.ts, entity.other.attribute-name.directive.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.name.type.ts, entity.name.type.interface.ts, entity.other.inherited-class.ts, entity.name.type.alias.ts, entity.name.type.class.ts, entity.name.type.enum.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"storage.type.ts, storage.type.function.arrow.ts, storage.type.type.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"entity.name.type.module.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"keyword.control.import.ts, keyword.control.export.ts, storage.type.namespace.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"entity.name.type.module.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"keyword.operator.type.annotation.tsx, punctuation.accessor.tsx, punctuation.separator.key-value.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag.directive.tsx, entity.other.attribute-name.directive.tsx, punctuation.definition.tag.begin.tsx, punctuation.definition.tag.end.tsx, entity.other.attribute-name.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.name.type.tsx, entity.name.type.interface.tsx, entity.other.inherited-class.tsx, entity.name.type.alias.tsx, entity.name.type.class.tsx, entity.name.type.enum.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"entity.name.type.module.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"keyword.control.import.tsx, keyword.control.export.tsx, storage.type.namespace.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"storage.type.tsx, storage.type.function.arrow.tsx, storage.type.type.tsx, support.class.component.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"storage.type.function.coffee\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"meta.type-signature.purescript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"keyword.other.double-colon.purescript, keyword.other.arrow.purescript, keyword.other.big-arrow.purescript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"entity.name.function.purescript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.quoted.single.purescript, string.quoted.double.purescript, punctuation.definition.string.begin.purescript, punctuation.definition.string.end.purescript, string.quoted.triple.purescript, entity.name.type.purescript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"support.other.module.purescript\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"punctuation.dot.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"storage.type.primitive.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"support.class.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"entity.name.function.dart, string.interpolated.single.dart, string.interpolated.double.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"variable.language.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"keyword.other.import.dart, storage.type.annotation.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.class.pug\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"storage.type.function.pug\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.tag.pug\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"entity.name.tag.pug, storage.type.import.include.pug\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"meta.function-call.c, storage.modifier.array.bracket.square.c, meta.function.definition.parameters.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"punctuation.separator.dot-access.c, constant.character.escape.line-continuation.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"keyword.control.directive.include.c, punctuation.definition.directive.c, keyword.control.directive.pragma.c, keyword.control.directive.line.c, keyword.control.directive.define.c, keyword.control.directive.conditional.c, keyword.control.directive.diagnostic.error.c, keyword.control.directive.undef.c, keyword.control.directive.conditional.ifdef.c, keyword.control.directive.endif.c, keyword.control.directive.conditional.ifndef.c, keyword.control.directive.conditional.if.c, keyword.control.directive.else.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"punctuation.separator.pointer-access.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"variable.other.member.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"meta.function-call.cpp, storage.modifier.array.bracket.square.cpp, meta.function.definition.parameters.cpp, meta.body.function.definition.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"punctuation.separator.dot-access.cpp, constant.character.escape.line-continuation.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"keyword.control.directive.include.cpp, punctuation.definition.directive.cpp, keyword.control.directive.pragma.cpp, keyword.control.directive.line.cpp, keyword.control.directive.define.cpp, keyword.control.directive.conditional.cpp, keyword.control.directive.diagnostic.error.cpp, keyword.control.directive.undef.cpp, keyword.control.directive.conditional.ifdef.cpp, keyword.control.directive.endif.cpp, keyword.control.directive.conditional.ifndef.cpp, keyword.control.directive.conditional.if.cpp, keyword.control.directive.else.cpp, storage.type.namespace.definition.cpp, keyword.other.using.directive.cpp, storage.type.struct.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"punctuation.separator.pointer-access.cpp, punctuation.section.angle-brackets.begin.template.call.cpp, punctuation.section.angle-brackets.end.template.call.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"variable.other.member.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"keyword.other.using.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"keyword.type.cs, constant.character.escape.cs, punctuation.definition.interpolation.begin.cs, punctuation.definition.interpolation.end.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.quoted.double.cs, string.quoted.single.cs, punctuation.definition.string.begin.cs, punctuation.definition.string.end.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"variable.other.object.property.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"entity.name.type.namespace.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"keyword.symbol.fsharp, constant.language.unit.fsharp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"keyword.format.specifier.fsharp, entity.name.type.fsharp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.quoted.double.fsharp, string.quoted.single.fsharp, punctuation.definition.string.begin.fsharp, punctuation.definition.string.end.fsharp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.name.section.fsharp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"support.function.attribute.fsharp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"punctuation.separator.java, punctuation.separator.period.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"keyword.other.import.java, keyword.other.package.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"storage.type.function.arrow.java, keyword.control.ternary.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"variable.other.property.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"variable.language.wildcard.java, storage.modifier.import.java, storage.type.annotation.java, punctuation.definition.annotation.java, storage.modifier.package.java, entity.name.type.module.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"keyword.other.import.kotlin\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"storage.type.kotlin\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"constant.language.kotlin\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"entity.name.package.kotlin, storage.type.annotation.kotlin\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"entity.name.package.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"constant.language.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"entity.name.import.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"string.quoted.double.scala, string.quoted.single.scala, punctuation.definition.string.begin.scala, punctuation.definition.string.end.scala, string.quoted.double.interpolated.scala, string.quoted.single.interpolated.scala, string.quoted.triple.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.name.class, entity.other.inherited-class.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"keyword.declaration.stable.scala, keyword.other.arrow.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"keyword.other.import.scala\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"keyword.operator.navigation.groovy, meta.method.body.java, meta.definition.method.groovy, meta.definition.method.signature.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"punctuation.separator.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"keyword.other.import.groovy, keyword.other.package.groovy, keyword.other.import.static.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"storage.type.def.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"variable.other.interpolated.groovy, meta.method.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"storage.modifier.import.groovy, storage.modifier.package.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"storage.type.annotation.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"keyword.type.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"entity.name.package.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"keyword.import.go, keyword.package.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"entity.name.type.mod.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"keyword.operator.path.rust, keyword.operator.member-access.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"storage.type.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"support.constant.core.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"meta.attribute.rust, variable.language.rust, storage.type.module.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"meta.function-call.swift, support.function.any-method.swift\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"support.variable.swift\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"keyword.operator.class.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"storage.type.trait.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"constant.language.php, support.other.namespace.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"storage.type.modifier.access.control.public.cpp, storage.type.modifier.access.control.private.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"keyword.control.import.include.php, storage.type.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"meta.function-call.arguments.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"punctuation.definition.decorator.python, punctuation.separator.period.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"constant.language.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"keyword.control.import.python, keyword.control.import.from.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"constant.language.lua\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"entity.name.class.lua\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"meta.function.method.with-arguments.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"punctuation.separator.method.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"keyword.control.pseudo-method.ruby, storage.type.variable.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"keyword.other.special-method.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"keyword.control.module.ruby, punctuation.definition.constant.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"string.regexp.character-class.ruby,string.regexp.interpolated.ruby,punctuation.definition.character-class.ruby,string.regexp.group.ruby, punctuation.section.regexp.ruby, punctuation.definition.group.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"variable.other.constant.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"keyword.other.arrow.haskell, keyword.other.big-arrow.haskell, keyword.other.double-colon.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"storage.type.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"constant.other.haskell, string.quoted.double.haskell, string.quoted.single.haskell, punctuation.definition.string.begin.haskell, punctuation.definition.string.end.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.name.function.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"entity.name.namespace, meta.preprocessor.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"keyword.control.import.julia, keyword.control.export.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"keyword.storage.modifier.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"constant.language.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"support.function.macro.julia\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"keyword.other.period.elm\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"storage.type.elm\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"keyword.other.r\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"entity.name.function.r, variable.function.r\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"constant.language.r\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"entity.namespace.r\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"punctuation.separator.module-function.erlang, punctuation.section.directive.begin.erlang\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"keyword.control.directive.erlang, keyword.control.directive.define.erlang\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"entity.name.type.class.module.erlang\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.quoted.double.erlang, string.quoted.single.erlang, punctuation.definition.string.begin.erlang, punctuation.definition.string.end.erlang\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"keyword.control.directive.export.erlang, keyword.control.directive.module.erlang, keyword.control.directive.import.erlang, keyword.control.directive.behaviour.erlang\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"variable.other.readwrite.module.elixir, punctuation.definition.variable.elixir\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"constant.language.elixir\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"keyword.control.module.elixir\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"entity.name.type.value-signature.ocaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"keyword.other.ocaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"constant.language.variant.ocaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"storage.type.sub.perl, storage.type.declare.routine.perl\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"meta.function.lisp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"storage.type.function-type.lisp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"keyword.constant.lisp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.name.function.lisp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"constant.keyword.clojure, support.variable.clojure, meta.definition.variable.clojure\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.global.clojure\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"entity.name.function.clojure\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"meta.scope.if-block.shell, meta.scope.group.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"support.function.builtin.shell, entity.name.function.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.quoted.double.shell, string.quoted.single.shell, punctuation.definition.string.begin.shell, punctuation.definition.string.end.shell, string.unquoted.heredoc.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"keyword.control.heredoc-token.shell, variable.other.normal.shell, punctuation.definition.variable.shell, variable.other.special.shell, variable.other.positional.shell, variable.other.bracket.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"support.function.builtin.fish\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"support.function.unix.fish\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"variable.other.normal.fish, punctuation.definition.variable.fish, variable.other.fixed.fish, variable.other.special.fish\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"string.quoted.double.fish, punctuation.definition.string.end.fish, punctuation.definition.string.begin.fish, string.quoted.single.fish\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"constant.character.escape.single.fish\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"punctuation.definition.variable.powershell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"entity.name.function.powershell, support.function.attribute.powershell, support.function.powershell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.quoted.single.powershell, string.quoted.double.powershell, punctuation.definition.string.begin.powershell, punctuation.definition.string.end.powershell, string.quoted.double.heredoc.powershell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"variable.other.member.powershell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"string.unquoted.alias.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6a72\\\"}},{\\\"scope\\\":\\\"keyword.type.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"entity.name.fragment.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"entity.name.function.target.makefile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"variable.other.makefile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"meta.scope.prerequisites.makefile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"string.source.cmake\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.source.cmake\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"storage.source.cmake\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"punctuation.definition.map.viml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"storage.type.map.viml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"constant.character.map.viml, constant.character.map.key.viml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"constant.character.map.special.viml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"constant.language.tmux, constant.numeric.tmux\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"entity.name.function.package-manager.dockerfile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"keyword.operator.flag.dockerfile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.quoted.double.dockerfile, string.quoted.single.dockerfile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"constant.character.escape.dockerfile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"entity.name.type.base-image.dockerfile, entity.name.image.dockerfile\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"punctuation.definition.separator.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"markup.deleted.diff, punctuation.definition.deleted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"meta.diff.range.context, punctuation.definition.range.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"meta.diff.header.from-file\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"markup.inserted.diff, punctuation.definition.inserted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"markup.changed.diff, punctuation.definition.changed.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"punctuation.definition.from-file.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"entity.name.section.group-title.ini, punctuation.definition.entity.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f85552\\\"}},{\\\"scope\\\":\\\"punctuation.separator.key-value.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"string.quoted.double.ini, string.quoted.single.ini, punctuation.definition.string.begin.ini, punctuation.definition.string.end.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"keyword.other.definition.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"support.function.aggregate.sql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"string.quoted.single.sql, punctuation.definition.string.end.sql, punctuation.definition.string.begin.sql, string.quoted.double.sql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"support.type.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dfa000\\\"}},{\\\"scope\\\":\\\"variable.parameter.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"constant.character.enum.graphql\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"punctuation.support.type.property-name.begin.json, punctuation.support.type.property-name.end.json, punctuation.separator.dictionary.key-value.json, punctuation.definition.string.begin.json, punctuation.definition.string.end.json, punctuation.separator.dictionary.pair.json, punctuation.separator.array.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"string.quoted.double.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"punctuation.separator.key-value.mapping.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#939f91\\\"}},{\\\"scope\\\":\\\"string.unquoted.plain.out.yaml, string.quoted.single.yaml, string.quoted.double.yaml, punctuation.definition.string.begin.yaml, punctuation.definition.string.end.yaml, string.unquoted.plain.in.yaml, string.unquoted.block.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"punctuation.definition.anchor.yaml, punctuation.definition.block.sequence.item.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#35a77c\\\"}},{\\\"scope\\\":\\\"keyword.key.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f57d26\\\"}},{\\\"scope\\\":\\\"string.quoted.single.basic.line.toml, string.quoted.single.literal.line.toml, punctuation.definition.keyValuePair.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8da101\\\"}},{\\\"scope\\\":\\\"constant.other.boolean.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#3a94c5\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.table.toml, punctuation.definition.table.toml, entity.other.attribute-name.table.array.toml, punctuation.definition.table.array.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#df69ba\\\"}},{\\\"scope\\\":\\\"comment, string.comment, punctuation.definition.comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#939f91\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: github-dark */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#f9826c\\\",\\\"activityBar.background\\\":\\\"#24292e\\\",\\\"activityBar.border\\\":\\\"#1b1f23\\\",\\\"activityBar.foreground\\\":\\\"#e1e4e8\\\",\\\"activityBar.inactiveForeground\\\":\\\"#6a737d\\\",\\\"activityBarBadge.background\\\":\\\"#0366d6\\\",\\\"activityBarBadge.foreground\\\":\\\"#fff\\\",\\\"badge.background\\\":\\\"#044289\\\",\\\"badge.foreground\\\":\\\"#c8e1ff\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#d1d5da\\\",\\\"breadcrumb.focusForeground\\\":\\\"#e1e4e8\\\",\\\"breadcrumb.foreground\\\":\\\"#959da5\\\",\\\"breadcrumbPicker.background\\\":\\\"#2b3036\\\",\\\"button.background\\\":\\\"#176f2c\\\",\\\"button.foreground\\\":\\\"#dcffe4\\\",\\\"button.hoverBackground\\\":\\\"#22863a\\\",\\\"button.secondaryBackground\\\":\\\"#444d56\\\",\\\"button.secondaryForeground\\\":\\\"#fff\\\",\\\"button.secondaryHoverBackground\\\":\\\"#586069\\\",\\\"checkbox.background\\\":\\\"#444d56\\\",\\\"checkbox.border\\\":\\\"#1b1f23\\\",\\\"debugToolBar.background\\\":\\\"#2b3036\\\",\\\"descriptionForeground\\\":\\\"#959da5\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#28a74530\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#d73a4930\\\",\\\"dropdown.background\\\":\\\"#2f363d\\\",\\\"dropdown.border\\\":\\\"#1b1f23\\\",\\\"dropdown.foreground\\\":\\\"#e1e4e8\\\",\\\"dropdown.listBackground\\\":\\\"#24292e\\\",\\\"editor.background\\\":\\\"#24292e\\\",\\\"editor.findMatchBackground\\\":\\\"#ffd33d44\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#ffd33d22\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#2b6a3033\\\",\\\"editor.foldBackground\\\":\\\"#58606915\\\",\\\"editor.foreground\\\":\\\"#e1e4e8\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#3392FF22\\\",\\\"editor.lineHighlightBackground\\\":\\\"#2b3036\\\",\\\"editor.linkedEditingBackground\\\":\\\"#3392FF22\\\",\\\"editor.selectionBackground\\\":\\\"#3392FF44\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#17E5E633\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#17E5E600\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#C6902625\\\",\\\"editor.wordHighlightBackground\\\":\\\"#17E5E600\\\",\\\"editor.wordHighlightBorder\\\":\\\"#17E5E699\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#17E5E600\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#17E5E666\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#79b8ff\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#ffab70\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#b392f0\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#79b8ff\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#ffab70\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#b392f0\\\",\\\"editorBracketMatch.background\\\":\\\"#17E5E650\\\",\\\"editorBracketMatch.border\\\":\\\"#17E5E600\\\",\\\"editorCursor.foreground\\\":\\\"#c8e1ff\\\",\\\"editorError.foreground\\\":\\\"#f97583\\\",\\\"editorGroup.border\\\":\\\"#1b1f23\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#1f2428\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#1b1f23\\\",\\\"editorGutter.addedBackground\\\":\\\"#28a745\\\",\\\"editorGutter.deletedBackground\\\":\\\"#ea4a5a\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#2188ff\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#444d56\\\",\\\"editorIndentGuide.background\\\":\\\"#2f363d\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#e1e4e8\\\",\\\"editorLineNumber.foreground\\\":\\\"#444d56\\\",\\\"editorOverviewRuler.border\\\":\\\"#1b1f23\\\",\\\"editorWarning.foreground\\\":\\\"#ffea7f\\\",\\\"editorWhitespace.foreground\\\":\\\"#444d56\\\",\\\"editorWidget.background\\\":\\\"#1f2428\\\",\\\"errorForeground\\\":\\\"#f97583\\\",\\\"focusBorder\\\":\\\"#005cc5\\\",\\\"foreground\\\":\\\"#d1d5da\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#34d058\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#ffab70\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#ea4a5a\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#6a737d\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#79b8ff\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#6a737d\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#34d058\\\",\\\"input.background\\\":\\\"#2f363d\\\",\\\"input.border\\\":\\\"#1b1f23\\\",\\\"input.foreground\\\":\\\"#e1e4e8\\\",\\\"input.placeholderForeground\\\":\\\"#959da5\\\",\\\"list.activeSelectionBackground\\\":\\\"#39414a\\\",\\\"list.activeSelectionForeground\\\":\\\"#e1e4e8\\\",\\\"list.focusBackground\\\":\\\"#044289\\\",\\\"list.hoverBackground\\\":\\\"#282e34\\\",\\\"list.hoverForeground\\\":\\\"#e1e4e8\\\",\\\"list.inactiveFocusBackground\\\":\\\"#1d2d3e\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#282e34\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#e1e4e8\\\",\\\"notificationCenterHeader.background\\\":\\\"#24292e\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#959da5\\\",\\\"notifications.background\\\":\\\"#2f363d\\\",\\\"notifications.border\\\":\\\"#1b1f23\\\",\\\"notifications.foreground\\\":\\\"#e1e4e8\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#ea4a5a\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#79b8ff\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#ffab70\\\",\\\"panel.background\\\":\\\"#1f2428\\\",\\\"panel.border\\\":\\\"#1b1f23\\\",\\\"panelInput.border\\\":\\\"#2f363d\\\",\\\"panelTitle.activeBorder\\\":\\\"#f9826c\\\",\\\"panelTitle.activeForeground\\\":\\\"#e1e4e8\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#959da5\\\",\\\"peekViewEditor.background\\\":\\\"#1f242888\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#ffd33d33\\\",\\\"peekViewResult.background\\\":\\\"#1f2428\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#ffd33d33\\\",\\\"pickerGroup.border\\\":\\\"#444d56\\\",\\\"pickerGroup.foreground\\\":\\\"#e1e4e8\\\",\\\"progressBar.background\\\":\\\"#0366d6\\\",\\\"quickInput.background\\\":\\\"#24292e\\\",\\\"quickInput.foreground\\\":\\\"#e1e4e8\\\",\\\"scrollbar.shadow\\\":\\\"#0008\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#6a737d88\\\",\\\"scrollbarSlider.background\\\":\\\"#6a737d33\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#6a737d44\\\",\\\"settings.headerForeground\\\":\\\"#e1e4e8\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#0366d6\\\",\\\"sideBar.background\\\":\\\"#1f2428\\\",\\\"sideBar.border\\\":\\\"#1b1f23\\\",\\\"sideBar.foreground\\\":\\\"#d1d5da\\\",\\\"sideBarSectionHeader.background\\\":\\\"#1f2428\\\",\\\"sideBarSectionHeader.border\\\":\\\"#1b1f23\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#e1e4e8\\\",\\\"sideBarTitle.foreground\\\":\\\"#e1e4e8\\\",\\\"statusBar.background\\\":\\\"#24292e\\\",\\\"statusBar.border\\\":\\\"#1b1f23\\\",\\\"statusBar.debuggingBackground\\\":\\\"#931c06\\\",\\\"statusBar.debuggingForeground\\\":\\\"#fff\\\",\\\"statusBar.foreground\\\":\\\"#d1d5da\\\",\\\"statusBar.noFolderBackground\\\":\\\"#24292e\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#282e34\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#24292e\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#d1d5da\\\",\\\"tab.activeBackground\\\":\\\"#24292e\\\",\\\"tab.activeBorder\\\":\\\"#24292e\\\",\\\"tab.activeBorderTop\\\":\\\"#f9826c\\\",\\\"tab.activeForeground\\\":\\\"#e1e4e8\\\",\\\"tab.border\\\":\\\"#1b1f23\\\",\\\"tab.hoverBackground\\\":\\\"#24292e\\\",\\\"tab.inactiveBackground\\\":\\\"#1f2428\\\",\\\"tab.inactiveForeground\\\":\\\"#959da5\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#24292e\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#1b1f23\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#24292e\\\",\\\"terminal.ansiBlack\\\":\\\"#586069\\\",\\\"terminal.ansiBlue\\\":\\\"#2188ff\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#959da5\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#79b8ff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#56d4dd\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#85e89d\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#b392f0\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f97583\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#fafbfc\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#ffea7f\\\",\\\"terminal.ansiCyan\\\":\\\"#39c5cf\\\",\\\"terminal.ansiGreen\\\":\\\"#34d058\\\",\\\"terminal.ansiMagenta\\\":\\\"#b392f0\\\",\\\"terminal.ansiRed\\\":\\\"#ea4a5a\\\",\\\"terminal.ansiWhite\\\":\\\"#d1d5da\\\",\\\"terminal.ansiYellow\\\":\\\"#ffea7f\\\",\\\"terminal.foreground\\\":\\\"#d1d5da\\\",\\\"terminal.tab.activeBorder\\\":\\\"#f9826c\\\",\\\"terminalCursor.background\\\":\\\"#586069\\\",\\\"terminalCursor.foreground\\\":\\\"#79b8ff\\\",\\\"textBlockQuote.background\\\":\\\"#24292e\\\",\\\"textBlockQuote.border\\\":\\\"#444d56\\\",\\\"textCodeBlock.background\\\":\\\"#2f363d\\\",\\\"textLink.activeForeground\\\":\\\"#c8e1ff\\\",\\\"textLink.foreground\\\":\\\"#79b8ff\\\",\\\"textPreformat.foreground\\\":\\\"#d1d5da\\\",\\\"textSeparator.foreground\\\":\\\"#586069\\\",\\\"titleBar.activeBackground\\\":\\\"#24292e\\\",\\\"titleBar.activeForeground\\\":\\\"#e1e4e8\\\",\\\"titleBar.border\\\":\\\"#1b1f23\\\",\\\"titleBar.inactiveBackground\\\":\\\"#1f2428\\\",\\\"titleBar.inactiveForeground\\\":\\\"#959da5\\\",\\\"tree.indentGuidesStroke\\\":\\\"#2f363d\\\",\\\"welcomePage.buttonBackground\\\":\\\"#2f363d\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#444d56\\\"},\\\"displayName\\\":\\\"GitHub Dark\\\",\\\"name\\\":\\\"github-dark\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"string.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6a737d\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"entity.name.constant\\\",\\\"variable.other.constant\\\",\\\"variable.other.enummember\\\",\\\"variable.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":[\\\"entity\\\",\\\"entity.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b392f0\\\"}},{\\\"scope\\\":\\\"variable.parameter.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e1e4e8\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#85e89d\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f97583\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f97583\\\"}},{\\\"scope\\\":[\\\"storage.modifier.package\\\",\\\"storage.modifier.import\\\",\\\"storage.type.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e1e4e8\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"punctuation.definition.string\\\",\\\"string punctuation.section.embedded source\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9ecbff\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"meta.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffab70\\\"}},{\\\"scope\\\":\\\"variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e1e4e8\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"carriage-return\\\",\\\"settings\\\":{\\\"background\\\":\\\"#f97583\\\",\\\"content\\\":\\\"^M\\\",\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#24292e\\\"}},{\\\"scope\\\":\\\"message.error\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"string variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":[\\\"source.regexp\\\",\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#dbedff\\\"}},{\\\"scope\\\":[\\\"string.regexp.character-class\\\",\\\"string.regexp constant.character.escape\\\",\\\"string.regexp source.ruby.embedded\\\",\\\"string.regexp string.regexp.arbitrary-repitition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#dbedff\\\"}},{\\\"scope\\\":\\\"string.regexp constant.character.escape\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#85e89d\\\"}},{\\\"scope\\\":\\\"support.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"support.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"meta.module-reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffab70\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading entity.name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#85e89d\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e1e4e8\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#e1e4e8\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"markup.strikethrough\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\",\\\"meta.diff.header.from-file\\\",\\\"punctuation.definition.deleted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#86181d\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.inserted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#144620\\\",\\\"foreground\\\":\\\"#85e89d\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\",\\\"punctuation.definition.changed\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#c24e00\\\",\\\"foreground\\\":\\\"#ffab70\\\"}},{\\\"scope\\\":[\\\"markup.ignored\\\",\\\"markup.untracked\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#79b8ff\\\",\\\"foreground\\\":\\\"#2f363d\\\"}},{\\\"scope\\\":\\\"meta.diff.range\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#b392f0\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"meta.separator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"meta.output\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":[\\\"brackethighlighter.tag\\\",\\\"brackethighlighter.curly\\\",\\\"brackethighlighter.round\\\",\\\"brackethighlighter.square\\\",\\\"brackethighlighter.angle\\\",\\\"brackethighlighter.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d1d5da\\\"}},{\\\"scope\\\":\\\"brackethighlighter.unmatched\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link\\\",\\\"string.other.link\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#dbedff\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: github-dark-default */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#f78166\\\",\\\"activityBar.background\\\":\\\"#0d1117\\\",\\\"activityBar.border\\\":\\\"#30363d\\\",\\\"activityBar.foreground\\\":\\\"#e6edf3\\\",\\\"activityBar.inactiveForeground\\\":\\\"#7d8590\\\",\\\"activityBarBadge.background\\\":\\\"#1f6feb\\\",\\\"activityBarBadge.foreground\\\":\\\"#ffffff\\\",\\\"badge.background\\\":\\\"#1f6feb\\\",\\\"badge.foreground\\\":\\\"#ffffff\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#7d8590\\\",\\\"breadcrumb.focusForeground\\\":\\\"#e6edf3\\\",\\\"breadcrumb.foreground\\\":\\\"#7d8590\\\",\\\"breadcrumbPicker.background\\\":\\\"#161b22\\\",\\\"button.background\\\":\\\"#238636\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"button.hoverBackground\\\":\\\"#2ea043\\\",\\\"button.secondaryBackground\\\":\\\"#282e33\\\",\\\"button.secondaryForeground\\\":\\\"#c9d1d9\\\",\\\"button.secondaryHoverBackground\\\":\\\"#30363d\\\",\\\"checkbox.background\\\":\\\"#161b22\\\",\\\"checkbox.border\\\":\\\"#30363d\\\",\\\"debugConsole.errorForeground\\\":\\\"#ffa198\\\",\\\"debugConsole.infoForeground\\\":\\\"#8b949e\\\",\\\"debugConsole.sourceForeground\\\":\\\"#e3b341\\\",\\\"debugConsole.warningForeground\\\":\\\"#d29922\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#bc8cff\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#f85149\\\",\\\"debugTokenExpression.boolean\\\":\\\"#56d364\\\",\\\"debugTokenExpression.error\\\":\\\"#ffa198\\\",\\\"debugTokenExpression.name\\\":\\\"#79c0ff\\\",\\\"debugTokenExpression.number\\\":\\\"#56d364\\\",\\\"debugTokenExpression.string\\\":\\\"#a5d6ff\\\",\\\"debugTokenExpression.value\\\":\\\"#a5d6ff\\\",\\\"debugToolBar.background\\\":\\\"#161b22\\\",\\\"descriptionForeground\\\":\\\"#7d8590\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#23863626\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#3fb9504d\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#da363326\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ff7b724d\\\",\\\"dropdown.background\\\":\\\"#161b22\\\",\\\"dropdown.border\\\":\\\"#30363d\\\",\\\"dropdown.foreground\\\":\\\"#e6edf3\\\",\\\"dropdown.listBackground\\\":\\\"#161b22\\\",\\\"editor.background\\\":\\\"#0d1117\\\",\\\"editor.findMatchBackground\\\":\\\"#9e6a03\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#f2cc6080\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#2ea04366\\\",\\\"editor.foldBackground\\\":\\\"#6e76811a\\\",\\\"editor.foreground\\\":\\\"#e6edf3\\\",\\\"editor.lineHighlightBackground\\\":\\\"#6e76811a\\\",\\\"editor.linkedEditingBackground\\\":\\\"#2f81f712\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#3fb95040\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#bb800966\\\",\\\"editor.wordHighlightBackground\\\":\\\"#6e768180\\\",\\\"editor.wordHighlightBorder\\\":\\\"#6e768199\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#6e76814d\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#6e768199\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#79c0ff\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#56d364\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#e3b341\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#ffa198\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#ff9bce\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#d2a8ff\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#7d8590\\\",\\\"editorBracketMatch.background\\\":\\\"#3fb95040\\\",\\\"editorBracketMatch.border\\\":\\\"#3fb95099\\\",\\\"editorCursor.foreground\\\":\\\"#2f81f7\\\",\\\"editorGroup.border\\\":\\\"#30363d\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#010409\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#30363d\\\",\\\"editorGutter.addedBackground\\\":\\\"#2ea04366\\\",\\\"editorGutter.deletedBackground\\\":\\\"#f8514966\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#bb800966\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#e6edf33d\\\",\\\"editorIndentGuide.background\\\":\\\"#e6edf31f\\\",\\\"editorInlayHint.background\\\":\\\"#8b949e33\\\",\\\"editorInlayHint.foreground\\\":\\\"#7d8590\\\",\\\"editorInlayHint.paramBackground\\\":\\\"#8b949e33\\\",\\\"editorInlayHint.paramForeground\\\":\\\"#7d8590\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#8b949e33\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#7d8590\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#e6edf3\\\",\\\"editorLineNumber.foreground\\\":\\\"#6e7681\\\",\\\"editorOverviewRuler.border\\\":\\\"#010409\\\",\\\"editorWhitespace.foreground\\\":\\\"#484f58\\\",\\\"editorWidget.background\\\":\\\"#161b22\\\",\\\"errorForeground\\\":\\\"#f85149\\\",\\\"focusBorder\\\":\\\"#1f6feb\\\",\\\"foreground\\\":\\\"#e6edf3\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#3fb950\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#db6d28\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#f85149\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#6e7681\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#d29922\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#7d8590\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#3fb950\\\",\\\"icon.foreground\\\":\\\"#7d8590\\\",\\\"input.background\\\":\\\"#0d1117\\\",\\\"input.border\\\":\\\"#30363d\\\",\\\"input.foreground\\\":\\\"#e6edf3\\\",\\\"input.placeholderForeground\\\":\\\"#6e7681\\\",\\\"keybindingLabel.foreground\\\":\\\"#e6edf3\\\",\\\"list.activeSelectionBackground\\\":\\\"#6e768166\\\",\\\"list.activeSelectionForeground\\\":\\\"#e6edf3\\\",\\\"list.focusBackground\\\":\\\"#388bfd26\\\",\\\"list.focusForeground\\\":\\\"#e6edf3\\\",\\\"list.highlightForeground\\\":\\\"#2f81f7\\\",\\\"list.hoverBackground\\\":\\\"#6e76811a\\\",\\\"list.hoverForeground\\\":\\\"#e6edf3\\\",\\\"list.inactiveFocusBackground\\\":\\\"#388bfd26\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#6e768166\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#e6edf3\\\",\\\"minimapSlider.activeBackground\\\":\\\"#8b949e47\\\",\\\"minimapSlider.background\\\":\\\"#8b949e33\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#8b949e3d\\\",\\\"notificationCenterHeader.background\\\":\\\"#161b22\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#7d8590\\\",\\\"notifications.background\\\":\\\"#161b22\\\",\\\"notifications.border\\\":\\\"#30363d\\\",\\\"notifications.foreground\\\":\\\"#e6edf3\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#f85149\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#2f81f7\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#d29922\\\",\\\"panel.background\\\":\\\"#010409\\\",\\\"panel.border\\\":\\\"#30363d\\\",\\\"panelInput.border\\\":\\\"#30363d\\\",\\\"panelTitle.activeBorder\\\":\\\"#f78166\\\",\\\"panelTitle.activeForeground\\\":\\\"#e6edf3\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#7d8590\\\",\\\"peekViewEditor.background\\\":\\\"#6e76811a\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#bb800966\\\",\\\"peekViewResult.background\\\":\\\"#0d1117\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#bb800966\\\",\\\"pickerGroup.border\\\":\\\"#30363d\\\",\\\"pickerGroup.foreground\\\":\\\"#7d8590\\\",\\\"progressBar.background\\\":\\\"#1f6feb\\\",\\\"quickInput.background\\\":\\\"#161b22\\\",\\\"quickInput.foreground\\\":\\\"#e6edf3\\\",\\\"scrollbar.shadow\\\":\\\"#484f5833\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#8b949e47\\\",\\\"scrollbarSlider.background\\\":\\\"#8b949e33\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#8b949e3d\\\",\\\"settings.headerForeground\\\":\\\"#e6edf3\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#bb800966\\\",\\\"sideBar.background\\\":\\\"#010409\\\",\\\"sideBar.border\\\":\\\"#30363d\\\",\\\"sideBar.foreground\\\":\\\"#e6edf3\\\",\\\"sideBarSectionHeader.background\\\":\\\"#010409\\\",\\\"sideBarSectionHeader.border\\\":\\\"#30363d\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#e6edf3\\\",\\\"sideBarTitle.foreground\\\":\\\"#e6edf3\\\",\\\"statusBar.background\\\":\\\"#0d1117\\\",\\\"statusBar.border\\\":\\\"#30363d\\\",\\\"statusBar.debuggingBackground\\\":\\\"#da3633\\\",\\\"statusBar.debuggingForeground\\\":\\\"#ffffff\\\",\\\"statusBar.focusBorder\\\":\\\"#1f6feb80\\\",\\\"statusBar.foreground\\\":\\\"#7d8590\\\",\\\"statusBar.noFolderBackground\\\":\\\"#0d1117\\\",\\\"statusBarItem.activeBackground\\\":\\\"#e6edf31f\\\",\\\"statusBarItem.focusBorder\\\":\\\"#1f6feb\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#e6edf314\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#6e768166\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#30363d\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#e6edf3\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#f0883e\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#58a6ff\\\",\\\"symbolIcon.classForeground\\\":\\\"#f0883e\\\",\\\"symbolIcon.colorForeground\\\":\\\"#79c0ff\\\",\\\"symbolIcon.constantForeground\\\":[\\\"#aff5b4\\\",\\\"#7ee787\\\",\\\"#56d364\\\",\\\"#3fb950\\\",\\\"#2ea043\\\",\\\"#238636\\\",\\\"#196c2e\\\",\\\"#0f5323\\\",\\\"#033a16\\\",\\\"#04260f\\\"],\\\"symbolIcon.constructorForeground\\\":\\\"#d2a8ff\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#f0883e\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#58a6ff\\\",\\\"symbolIcon.eventForeground\\\":\\\"#6e7681\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#f0883e\\\",\\\"symbolIcon.fileForeground\\\":\\\"#d29922\\\",\\\"symbolIcon.folderForeground\\\":\\\"#d29922\\\",\\\"symbolIcon.functionForeground\\\":\\\"#bc8cff\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#f0883e\\\",\\\"symbolIcon.keyForeground\\\":\\\"#58a6ff\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#ff7b72\\\",\\\"symbolIcon.methodForeground\\\":\\\"#bc8cff\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#ff7b72\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#ff7b72\\\",\\\"symbolIcon.nullForeground\\\":\\\"#58a6ff\\\",\\\"symbolIcon.numberForeground\\\":\\\"#3fb950\\\",\\\"symbolIcon.objectForeground\\\":\\\"#f0883e\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#79c0ff\\\",\\\"symbolIcon.packageForeground\\\":\\\"#f0883e\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#f0883e\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#58a6ff\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#58a6ff\\\",\\\"symbolIcon.stringForeground\\\":\\\"#79c0ff\\\",\\\"symbolIcon.structForeground\\\":\\\"#f0883e\\\",\\\"symbolIcon.textForeground\\\":\\\"#79c0ff\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#79c0ff\\\",\\\"symbolIcon.unitForeground\\\":\\\"#58a6ff\\\",\\\"symbolIcon.variableForeground\\\":\\\"#f0883e\\\",\\\"tab.activeBackground\\\":\\\"#0d1117\\\",\\\"tab.activeBorder\\\":\\\"#0d1117\\\",\\\"tab.activeBorderTop\\\":\\\"#f78166\\\",\\\"tab.activeForeground\\\":\\\"#e6edf3\\\",\\\"tab.border\\\":\\\"#30363d\\\",\\\"tab.hoverBackground\\\":\\\"#0d1117\\\",\\\"tab.inactiveBackground\\\":\\\"#010409\\\",\\\"tab.inactiveForeground\\\":\\\"#7d8590\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#0d1117\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#30363d\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#6e76811a\\\",\\\"terminal.ansiBlack\\\":\\\"#484f58\\\",\\\"terminal.ansiBlue\\\":\\\"#58a6ff\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#6e7681\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#79c0ff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#56d4dd\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#56d364\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#d2a8ff\\\",\\\"terminal.ansiBrightRed\\\":\\\"#ffa198\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#e3b341\\\",\\\"terminal.ansiCyan\\\":\\\"#39c5cf\\\",\\\"terminal.ansiGreen\\\":\\\"#3fb950\\\",\\\"terminal.ansiMagenta\\\":\\\"#bc8cff\\\",\\\"terminal.ansiRed\\\":\\\"#ff7b72\\\",\\\"terminal.ansiWhite\\\":\\\"#b1bac4\\\",\\\"terminal.ansiYellow\\\":\\\"#d29922\\\",\\\"terminal.foreground\\\":\\\"#e6edf3\\\",\\\"textBlockQuote.background\\\":\\\"#010409\\\",\\\"textBlockQuote.border\\\":\\\"#30363d\\\",\\\"textCodeBlock.background\\\":\\\"#6e768166\\\",\\\"textLink.activeForeground\\\":\\\"#2f81f7\\\",\\\"textLink.foreground\\\":\\\"#2f81f7\\\",\\\"textPreformat.background\\\":\\\"#6e768166\\\",\\\"textPreformat.foreground\\\":\\\"#7d8590\\\",\\\"textSeparator.foreground\\\":\\\"#21262d\\\",\\\"titleBar.activeBackground\\\":\\\"#0d1117\\\",\\\"titleBar.activeForeground\\\":\\\"#7d8590\\\",\\\"titleBar.border\\\":\\\"#30363d\\\",\\\"titleBar.inactiveBackground\\\":\\\"#010409\\\",\\\"titleBar.inactiveForeground\\\":\\\"#7d8590\\\",\\\"tree.indentGuidesStroke\\\":\\\"#21262d\\\",\\\"welcomePage.buttonBackground\\\":\\\"#21262d\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#30363d\\\"},\\\"displayName\\\":\\\"GitHub Dark Default\\\",\\\"name\\\":\\\"github-dark-default\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"string.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8b949e\\\"}},{\\\"scope\\\":[\\\"constant.other.placeholder\\\",\\\"constant.character\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7b72\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"entity.name.constant\\\",\\\"variable.other.constant\\\",\\\"variable.other.enummember\\\",\\\"variable.language\\\",\\\"entity\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":[\\\"entity.name\\\",\\\"meta.export.default\\\",\\\"meta.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffa657\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function\\\",\\\"meta.jsx.children\\\",\\\"meta.block\\\",\\\"meta.tag.attributes\\\",\\\"entity.name.constant\\\",\\\"meta.object.member\\\",\\\"meta.embedded.expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e6edf3\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d2a8ff\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"support.class.component\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7ee787\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7b72\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7b72\\\"}},{\\\"scope\\\":[\\\"storage.modifier.package\\\",\\\"storage.modifier.import\\\",\\\"storage.type.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e6edf3\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"string punctuation.section.embedded source\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a5d6ff\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":\\\"meta.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffa657\\\"}},{\\\"scope\\\":\\\"variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e6edf3\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ffa198\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ffa198\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ffa198\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ffa198\\\"}},{\\\"scope\\\":\\\"carriage-return\\\",\\\"settings\\\":{\\\"background\\\":\\\"#ff7b72\\\",\\\"content\\\":\\\"^M\\\",\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#f0f6fc\\\"}},{\\\"scope\\\":\\\"message.error\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffa198\\\"}},{\\\"scope\\\":\\\"string variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":[\\\"source.regexp\\\",\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a5d6ff\\\"}},{\\\"scope\\\":[\\\"string.regexp.character-class\\\",\\\"string.regexp constant.character.escape\\\",\\\"string.regexp source.ruby.embedded\\\",\\\"string.regexp string.regexp.arbitrary-repitition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a5d6ff\\\"}},{\\\"scope\\\":\\\"string.regexp constant.character.escape\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#7ee787\\\"}},{\\\"scope\\\":\\\"support.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":\\\"support.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7ee787\\\"}},{\\\"scope\\\":\\\"meta.module-reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffa657\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading entity.name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7ee787\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e6edf3\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#e6edf3\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"markup.strikethrough\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\",\\\"meta.diff.header.from-file\\\",\\\"punctuation.definition.deleted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#490202\\\",\\\"foreground\\\":\\\"#ffa198\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7b72\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.inserted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#04260f\\\",\\\"foreground\\\":\\\"#7ee787\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\",\\\"punctuation.definition.changed\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#5a1e02\\\",\\\"foreground\\\":\\\"#ffa657\\\"}},{\\\"scope\\\":[\\\"markup.ignored\\\",\\\"markup.untracked\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#79c0ff\\\",\\\"foreground\\\":\\\"#161b22\\\"}},{\\\"scope\\\":\\\"meta.diff.range\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#d2a8ff\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":\\\"meta.separator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":\\\"meta.output\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79c0ff\\\"}},{\\\"scope\\\":[\\\"brackethighlighter.tag\\\",\\\"brackethighlighter.curly\\\",\\\"brackethighlighter.round\\\",\\\"brackethighlighter.square\\\",\\\"brackethighlighter.angle\\\",\\\"brackethighlighter.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8b949e\\\"}},{\\\"scope\\\":\\\"brackethighlighter.unmatched\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffa198\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link\\\",\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a5d6ff\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: github-dark-dimmed */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#ec775c\\\",\\\"activityBar.background\\\":\\\"#22272e\\\",\\\"activityBar.border\\\":\\\"#444c56\\\",\\\"activityBar.foreground\\\":\\\"#adbac7\\\",\\\"activityBar.inactiveForeground\\\":\\\"#768390\\\",\\\"activityBarBadge.background\\\":\\\"#316dca\\\",\\\"activityBarBadge.foreground\\\":\\\"#cdd9e5\\\",\\\"badge.background\\\":\\\"#316dca\\\",\\\"badge.foreground\\\":\\\"#cdd9e5\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#768390\\\",\\\"breadcrumb.focusForeground\\\":\\\"#adbac7\\\",\\\"breadcrumb.foreground\\\":\\\"#768390\\\",\\\"breadcrumbPicker.background\\\":\\\"#2d333b\\\",\\\"button.background\\\":\\\"#347d39\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"button.hoverBackground\\\":\\\"#46954a\\\",\\\"button.secondaryBackground\\\":\\\"#3d444d\\\",\\\"button.secondaryForeground\\\":\\\"#adbac7\\\",\\\"button.secondaryHoverBackground\\\":\\\"#444c56\\\",\\\"checkbox.background\\\":\\\"#2d333b\\\",\\\"checkbox.border\\\":\\\"#444c56\\\",\\\"debugConsole.errorForeground\\\":\\\"#ff938a\\\",\\\"debugConsole.infoForeground\\\":\\\"#768390\\\",\\\"debugConsole.sourceForeground\\\":\\\"#daaa3f\\\",\\\"debugConsole.warningForeground\\\":\\\"#c69026\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#b083f0\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#e5534b\\\",\\\"debugTokenExpression.boolean\\\":\\\"#6bc46d\\\",\\\"debugTokenExpression.error\\\":\\\"#ff938a\\\",\\\"debugTokenExpression.name\\\":\\\"#6cb6ff\\\",\\\"debugTokenExpression.number\\\":\\\"#6bc46d\\\",\\\"debugTokenExpression.string\\\":\\\"#96d0ff\\\",\\\"debugTokenExpression.value\\\":\\\"#96d0ff\\\",\\\"debugToolBar.background\\\":\\\"#2d333b\\\",\\\"descriptionForeground\\\":\\\"#768390\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#347d3926\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#57ab5a4d\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#c93c3726\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#f470674d\\\",\\\"dropdown.background\\\":\\\"#2d333b\\\",\\\"dropdown.border\\\":\\\"#444c56\\\",\\\"dropdown.foreground\\\":\\\"#adbac7\\\",\\\"dropdown.listBackground\\\":\\\"#2d333b\\\",\\\"editor.background\\\":\\\"#22272e\\\",\\\"editor.findMatchBackground\\\":\\\"#966600\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#eac55f80\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#46954a66\\\",\\\"editor.foldBackground\\\":\\\"#636e7b1a\\\",\\\"editor.foreground\\\":\\\"#adbac7\\\",\\\"editor.lineHighlightBackground\\\":\\\"#636e7b1a\\\",\\\"editor.linkedEditingBackground\\\":\\\"#539bf512\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#57ab5a40\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#ae7c1466\\\",\\\"editor.wordHighlightBackground\\\":\\\"#636e7b80\\\",\\\"editor.wordHighlightBorder\\\":\\\"#636e7b99\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#636e7b4d\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#636e7b99\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#6cb6ff\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#6bc46d\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#daaa3f\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#ff938a\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#fc8dc7\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#dcbdfb\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#768390\\\",\\\"editorBracketMatch.background\\\":\\\"#57ab5a40\\\",\\\"editorBracketMatch.border\\\":\\\"#57ab5a99\\\",\\\"editorCursor.foreground\\\":\\\"#539bf5\\\",\\\"editorGroup.border\\\":\\\"#444c56\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#1c2128\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#444c56\\\",\\\"editorGutter.addedBackground\\\":\\\"#46954a66\\\",\\\"editorGutter.deletedBackground\\\":\\\"#e5534b66\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#ae7c1466\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#adbac73d\\\",\\\"editorIndentGuide.background\\\":\\\"#adbac71f\\\",\\\"editorInlayHint.background\\\":\\\"#76839033\\\",\\\"editorInlayHint.foreground\\\":\\\"#768390\\\",\\\"editorInlayHint.paramBackground\\\":\\\"#76839033\\\",\\\"editorInlayHint.paramForeground\\\":\\\"#768390\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#76839033\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#768390\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#adbac7\\\",\\\"editorLineNumber.foreground\\\":\\\"#636e7b\\\",\\\"editorOverviewRuler.border\\\":\\\"#1c2128\\\",\\\"editorWhitespace.foreground\\\":\\\"#545d68\\\",\\\"editorWidget.background\\\":\\\"#2d333b\\\",\\\"errorForeground\\\":\\\"#e5534b\\\",\\\"focusBorder\\\":\\\"#316dca\\\",\\\"foreground\\\":\\\"#adbac7\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#57ab5a\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#cc6b2c\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#e5534b\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#636e7b\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#c69026\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#768390\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#57ab5a\\\",\\\"icon.foreground\\\":\\\"#768390\\\",\\\"input.background\\\":\\\"#22272e\\\",\\\"input.border\\\":\\\"#444c56\\\",\\\"input.foreground\\\":\\\"#adbac7\\\",\\\"input.placeholderForeground\\\":\\\"#636e7b\\\",\\\"keybindingLabel.foreground\\\":\\\"#adbac7\\\",\\\"list.activeSelectionBackground\\\":\\\"#636e7b66\\\",\\\"list.activeSelectionForeground\\\":\\\"#adbac7\\\",\\\"list.focusBackground\\\":\\\"#4184e426\\\",\\\"list.focusForeground\\\":\\\"#adbac7\\\",\\\"list.highlightForeground\\\":\\\"#539bf5\\\",\\\"list.hoverBackground\\\":\\\"#636e7b1a\\\",\\\"list.hoverForeground\\\":\\\"#adbac7\\\",\\\"list.inactiveFocusBackground\\\":\\\"#4184e426\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#636e7b66\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#adbac7\\\",\\\"minimapSlider.activeBackground\\\":\\\"#76839047\\\",\\\"minimapSlider.background\\\":\\\"#76839033\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#7683903d\\\",\\\"notificationCenterHeader.background\\\":\\\"#2d333b\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#768390\\\",\\\"notifications.background\\\":\\\"#2d333b\\\",\\\"notifications.border\\\":\\\"#444c56\\\",\\\"notifications.foreground\\\":\\\"#adbac7\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#e5534b\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#539bf5\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#c69026\\\",\\\"panel.background\\\":\\\"#1c2128\\\",\\\"panel.border\\\":\\\"#444c56\\\",\\\"panelInput.border\\\":\\\"#444c56\\\",\\\"panelTitle.activeBorder\\\":\\\"#ec775c\\\",\\\"panelTitle.activeForeground\\\":\\\"#adbac7\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#768390\\\",\\\"peekViewEditor.background\\\":\\\"#636e7b1a\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#ae7c1466\\\",\\\"peekViewResult.background\\\":\\\"#22272e\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#ae7c1466\\\",\\\"pickerGroup.border\\\":\\\"#444c56\\\",\\\"pickerGroup.foreground\\\":\\\"#768390\\\",\\\"progressBar.background\\\":\\\"#316dca\\\",\\\"quickInput.background\\\":\\\"#2d333b\\\",\\\"quickInput.foreground\\\":\\\"#adbac7\\\",\\\"scrollbar.shadow\\\":\\\"#545d6833\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#76839047\\\",\\\"scrollbarSlider.background\\\":\\\"#76839033\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#7683903d\\\",\\\"settings.headerForeground\\\":\\\"#adbac7\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#ae7c1466\\\",\\\"sideBar.background\\\":\\\"#1c2128\\\",\\\"sideBar.border\\\":\\\"#444c56\\\",\\\"sideBar.foreground\\\":\\\"#adbac7\\\",\\\"sideBarSectionHeader.background\\\":\\\"#1c2128\\\",\\\"sideBarSectionHeader.border\\\":\\\"#444c56\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#adbac7\\\",\\\"sideBarTitle.foreground\\\":\\\"#adbac7\\\",\\\"statusBar.background\\\":\\\"#22272e\\\",\\\"statusBar.border\\\":\\\"#444c56\\\",\\\"statusBar.debuggingBackground\\\":\\\"#c93c37\\\",\\\"statusBar.debuggingForeground\\\":\\\"#cdd9e5\\\",\\\"statusBar.focusBorder\\\":\\\"#316dca80\\\",\\\"statusBar.foreground\\\":\\\"#768390\\\",\\\"statusBar.noFolderBackground\\\":\\\"#22272e\\\",\\\"statusBarItem.activeBackground\\\":\\\"#adbac71f\\\",\\\"statusBarItem.focusBorder\\\":\\\"#316dca\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#adbac714\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#636e7b66\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#444c56\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#adbac7\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#e0823d\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#539bf5\\\",\\\"symbolIcon.classForeground\\\":\\\"#e0823d\\\",\\\"symbolIcon.colorForeground\\\":\\\"#6cb6ff\\\",\\\"symbolIcon.constantForeground\\\":[\\\"#b4f1b4\\\",\\\"#8ddb8c\\\",\\\"#6bc46d\\\",\\\"#57ab5a\\\",\\\"#46954a\\\",\\\"#347d39\\\",\\\"#2b6a30\\\",\\\"#245829\\\",\\\"#1b4721\\\",\\\"#113417\\\"],\\\"symbolIcon.constructorForeground\\\":\\\"#dcbdfb\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#e0823d\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#539bf5\\\",\\\"symbolIcon.eventForeground\\\":\\\"#636e7b\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#e0823d\\\",\\\"symbolIcon.fileForeground\\\":\\\"#c69026\\\",\\\"symbolIcon.folderForeground\\\":\\\"#c69026\\\",\\\"symbolIcon.functionForeground\\\":\\\"#b083f0\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#e0823d\\\",\\\"symbolIcon.keyForeground\\\":\\\"#539bf5\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#f47067\\\",\\\"symbolIcon.methodForeground\\\":\\\"#b083f0\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#f47067\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#f47067\\\",\\\"symbolIcon.nullForeground\\\":\\\"#539bf5\\\",\\\"symbolIcon.numberForeground\\\":\\\"#57ab5a\\\",\\\"symbolIcon.objectForeground\\\":\\\"#e0823d\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#6cb6ff\\\",\\\"symbolIcon.packageForeground\\\":\\\"#e0823d\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#e0823d\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#539bf5\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#539bf5\\\",\\\"symbolIcon.stringForeground\\\":\\\"#6cb6ff\\\",\\\"symbolIcon.structForeground\\\":\\\"#e0823d\\\",\\\"symbolIcon.textForeground\\\":\\\"#6cb6ff\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#6cb6ff\\\",\\\"symbolIcon.unitForeground\\\":\\\"#539bf5\\\",\\\"symbolIcon.variableForeground\\\":\\\"#e0823d\\\",\\\"tab.activeBackground\\\":\\\"#22272e\\\",\\\"tab.activeBorder\\\":\\\"#22272e\\\",\\\"tab.activeBorderTop\\\":\\\"#ec775c\\\",\\\"tab.activeForeground\\\":\\\"#adbac7\\\",\\\"tab.border\\\":\\\"#444c56\\\",\\\"tab.hoverBackground\\\":\\\"#22272e\\\",\\\"tab.inactiveBackground\\\":\\\"#1c2128\\\",\\\"tab.inactiveForeground\\\":\\\"#768390\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#22272e\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#444c56\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#636e7b1a\\\",\\\"terminal.ansiBlack\\\":\\\"#545d68\\\",\\\"terminal.ansiBlue\\\":\\\"#539bf5\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#636e7b\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#6cb6ff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#56d4dd\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#6bc46d\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#dcbdfb\\\",\\\"terminal.ansiBrightRed\\\":\\\"#ff938a\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#cdd9e5\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#daaa3f\\\",\\\"terminal.ansiCyan\\\":\\\"#39c5cf\\\",\\\"terminal.ansiGreen\\\":\\\"#57ab5a\\\",\\\"terminal.ansiMagenta\\\":\\\"#b083f0\\\",\\\"terminal.ansiRed\\\":\\\"#f47067\\\",\\\"terminal.ansiWhite\\\":\\\"#909dab\\\",\\\"terminal.ansiYellow\\\":\\\"#c69026\\\",\\\"terminal.foreground\\\":\\\"#adbac7\\\",\\\"textBlockQuote.background\\\":\\\"#1c2128\\\",\\\"textBlockQuote.border\\\":\\\"#444c56\\\",\\\"textCodeBlock.background\\\":\\\"#636e7b66\\\",\\\"textLink.activeForeground\\\":\\\"#539bf5\\\",\\\"textLink.foreground\\\":\\\"#539bf5\\\",\\\"textPreformat.background\\\":\\\"#636e7b66\\\",\\\"textPreformat.foreground\\\":\\\"#768390\\\",\\\"textSeparator.foreground\\\":\\\"#373e47\\\",\\\"titleBar.activeBackground\\\":\\\"#22272e\\\",\\\"titleBar.activeForeground\\\":\\\"#768390\\\",\\\"titleBar.border\\\":\\\"#444c56\\\",\\\"titleBar.inactiveBackground\\\":\\\"#1c2128\\\",\\\"titleBar.inactiveForeground\\\":\\\"#768390\\\",\\\"tree.indentGuidesStroke\\\":\\\"#373e47\\\",\\\"welcomePage.buttonBackground\\\":\\\"#373e47\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#444c56\\\"},\\\"displayName\\\":\\\"GitHub Dark Dimmed\\\",\\\"name\\\":\\\"github-dark-dimmed\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"string.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#768390\\\"}},{\\\"scope\\\":[\\\"constant.other.placeholder\\\",\\\"constant.character\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f47067\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"entity.name.constant\\\",\\\"variable.other.constant\\\",\\\"variable.other.enummember\\\",\\\"variable.language\\\",\\\"entity\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":[\\\"entity.name\\\",\\\"meta.export.default\\\",\\\"meta.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f69d50\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function\\\",\\\"meta.jsx.children\\\",\\\"meta.block\\\",\\\"meta.tag.attributes\\\",\\\"entity.name.constant\\\",\\\"meta.object.member\\\",\\\"meta.embedded.expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#adbac7\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dcbdfb\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"support.class.component\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8ddb8c\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f47067\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f47067\\\"}},{\\\"scope\\\":[\\\"storage.modifier.package\\\",\\\"storage.modifier.import\\\",\\\"storage.type.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#adbac7\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"string punctuation.section.embedded source\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#96d0ff\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":\\\"meta.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f69d50\\\"}},{\\\"scope\\\":\\\"variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#adbac7\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ff938a\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ff938a\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ff938a\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ff938a\\\"}},{\\\"scope\\\":\\\"carriage-return\\\",\\\"settings\\\":{\\\"background\\\":\\\"#f47067\\\",\\\"content\\\":\\\"^M\\\",\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#cdd9e5\\\"}},{\\\"scope\\\":\\\"message.error\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff938a\\\"}},{\\\"scope\\\":\\\"string variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":[\\\"source.regexp\\\",\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#96d0ff\\\"}},{\\\"scope\\\":[\\\"string.regexp.character-class\\\",\\\"string.regexp constant.character.escape\\\",\\\"string.regexp source.ruby.embedded\\\",\\\"string.regexp string.regexp.arbitrary-repitition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#96d0ff\\\"}},{\\\"scope\\\":\\\"string.regexp constant.character.escape\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#8ddb8c\\\"}},{\\\"scope\\\":\\\"support.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":\\\"support.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8ddb8c\\\"}},{\\\"scope\\\":\\\"meta.module-reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f69d50\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading entity.name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8ddb8c\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#adbac7\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#adbac7\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"markup.strikethrough\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\",\\\"meta.diff.header.from-file\\\",\\\"punctuation.definition.deleted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#5d0f12\\\",\\\"foreground\\\":\\\"#ff938a\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f47067\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.inserted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#113417\\\",\\\"foreground\\\":\\\"#8ddb8c\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\",\\\"punctuation.definition.changed\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#682d0f\\\",\\\"foreground\\\":\\\"#f69d50\\\"}},{\\\"scope\\\":[\\\"markup.ignored\\\",\\\"markup.untracked\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#6cb6ff\\\",\\\"foreground\\\":\\\"#2d333b\\\"}},{\\\"scope\\\":\\\"meta.diff.range\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#dcbdfb\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":\\\"meta.separator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":\\\"meta.output\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6cb6ff\\\"}},{\\\"scope\\\":[\\\"brackethighlighter.tag\\\",\\\"brackethighlighter.curly\\\",\\\"brackethighlighter.round\\\",\\\"brackethighlighter.square\\\",\\\"brackethighlighter.angle\\\",\\\"brackethighlighter.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#768390\\\"}},{\\\"scope\\\":\\\"brackethighlighter.unmatched\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff938a\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link\\\",\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#96d0ff\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: github-dark-high-contrast */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#ff967d\\\",\\\"activityBar.background\\\":\\\"#0a0c10\\\",\\\"activityBar.border\\\":\\\"#7a828e\\\",\\\"activityBar.foreground\\\":\\\"#f0f3f6\\\",\\\"activityBar.inactiveForeground\\\":\\\"#f0f3f6\\\",\\\"activityBarBadge.background\\\":\\\"#409eff\\\",\\\"activityBarBadge.foreground\\\":\\\"#0a0c10\\\",\\\"badge.background\\\":\\\"#409eff\\\",\\\"badge.foreground\\\":\\\"#0a0c10\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#f0f3f6\\\",\\\"breadcrumb.focusForeground\\\":\\\"#f0f3f6\\\",\\\"breadcrumb.foreground\\\":\\\"#f0f3f6\\\",\\\"breadcrumbPicker.background\\\":\\\"#272b33\\\",\\\"button.background\\\":\\\"#09b43a\\\",\\\"button.foreground\\\":\\\"#0a0c10\\\",\\\"button.hoverBackground\\\":\\\"#26cd4d\\\",\\\"button.secondaryBackground\\\":\\\"#4c525d\\\",\\\"button.secondaryForeground\\\":\\\"#f0f3f6\\\",\\\"button.secondaryHoverBackground\\\":\\\"#525964\\\",\\\"checkbox.background\\\":\\\"#272b33\\\",\\\"checkbox.border\\\":\\\"#7a828e\\\",\\\"debugConsole.errorForeground\\\":\\\"#ffb1af\\\",\\\"debugConsole.infoForeground\\\":\\\"#bdc4cc\\\",\\\"debugConsole.sourceForeground\\\":\\\"#f7c843\\\",\\\"debugConsole.warningForeground\\\":\\\"#f0b72f\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#cb9eff\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#ff6a69\\\",\\\"debugTokenExpression.boolean\\\":\\\"#4ae168\\\",\\\"debugTokenExpression.error\\\":\\\"#ffb1af\\\",\\\"debugTokenExpression.name\\\":\\\"#91cbff\\\",\\\"debugTokenExpression.number\\\":\\\"#4ae168\\\",\\\"debugTokenExpression.string\\\":\\\"#addcff\\\",\\\"debugTokenExpression.value\\\":\\\"#addcff\\\",\\\"debugToolBar.background\\\":\\\"#272b33\\\",\\\"descriptionForeground\\\":\\\"#f0f3f6\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#09b43a26\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#26cd4d4d\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#ff6a6926\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ff94924d\\\",\\\"dropdown.background\\\":\\\"#272b33\\\",\\\"dropdown.border\\\":\\\"#7a828e\\\",\\\"dropdown.foreground\\\":\\\"#f0f3f6\\\",\\\"dropdown.listBackground\\\":\\\"#272b33\\\",\\\"editor.background\\\":\\\"#0a0c10\\\",\\\"editor.findMatchBackground\\\":\\\"#e09b13\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#fbd66980\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#09b43a\\\",\\\"editor.foldBackground\\\":\\\"#9ea7b31a\\\",\\\"editor.foreground\\\":\\\"#f0f3f6\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#9ea7b3\\\",\\\"editor.lineHighlightBackground\\\":\\\"#9ea7b31a\\\",\\\"editor.lineHighlightBorder\\\":\\\"#71b7ff\\\",\\\"editor.linkedEditingBackground\\\":\\\"#71b7ff12\\\",\\\"editor.selectionBackground\\\":\\\"#ffffff\\\",\\\"editor.selectionForeground\\\":\\\"#0a0c10\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#26cd4d40\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#e09b13\\\",\\\"editor.wordHighlightBackground\\\":\\\"#9ea7b380\\\",\\\"editor.wordHighlightBorder\\\":\\\"#9ea7b399\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#9ea7b34d\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#9ea7b399\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#91cbff\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#4ae168\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#f7c843\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#ffb1af\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#ffadd4\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#dbb7ff\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#f0f3f6\\\",\\\"editorBracketMatch.background\\\":\\\"#26cd4d40\\\",\\\"editorBracketMatch.border\\\":\\\"#26cd4d99\\\",\\\"editorCursor.foreground\\\":\\\"#71b7ff\\\",\\\"editorGroup.border\\\":\\\"#7a828e\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#010409\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#7a828e\\\",\\\"editorGutter.addedBackground\\\":\\\"#09b43a\\\",\\\"editorGutter.deletedBackground\\\":\\\"#ff6a69\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#e09b13\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#f0f3f63d\\\",\\\"editorIndentGuide.background\\\":\\\"#f0f3f61f\\\",\\\"editorInlayHint.background\\\":\\\"#bdc4cc33\\\",\\\"editorInlayHint.foreground\\\":\\\"#f0f3f6\\\",\\\"editorInlayHint.paramBackground\\\":\\\"#bdc4cc33\\\",\\\"editorInlayHint.paramForeground\\\":\\\"#f0f3f6\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#bdc4cc33\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#f0f3f6\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#f0f3f6\\\",\\\"editorLineNumber.foreground\\\":\\\"#9ea7b3\\\",\\\"editorOverviewRuler.border\\\":\\\"#010409\\\",\\\"editorWhitespace.foreground\\\":\\\"#7a828e\\\",\\\"editorWidget.background\\\":\\\"#272b33\\\",\\\"errorForeground\\\":\\\"#ff6a69\\\",\\\"focusBorder\\\":\\\"#409eff\\\",\\\"foreground\\\":\\\"#f0f3f6\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#26cd4d\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#e7811d\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#ff6a69\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#9ea7b3\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#f0b72f\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#f0f3f6\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#26cd4d\\\",\\\"icon.foreground\\\":\\\"#f0f3f6\\\",\\\"input.background\\\":\\\"#0a0c10\\\",\\\"input.border\\\":\\\"#7a828e\\\",\\\"input.foreground\\\":\\\"#f0f3f6\\\",\\\"input.placeholderForeground\\\":\\\"#9ea7b3\\\",\\\"keybindingLabel.foreground\\\":\\\"#f0f3f6\\\",\\\"list.activeSelectionBackground\\\":\\\"#9ea7b366\\\",\\\"list.activeSelectionForeground\\\":\\\"#f0f3f6\\\",\\\"list.focusBackground\\\":\\\"#409eff26\\\",\\\"list.focusForeground\\\":\\\"#f0f3f6\\\",\\\"list.highlightForeground\\\":\\\"#71b7ff\\\",\\\"list.hoverBackground\\\":\\\"#9ea7b31a\\\",\\\"list.hoverForeground\\\":\\\"#f0f3f6\\\",\\\"list.inactiveFocusBackground\\\":\\\"#409eff26\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#9ea7b366\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#f0f3f6\\\",\\\"minimapSlider.activeBackground\\\":\\\"#bdc4cc47\\\",\\\"minimapSlider.background\\\":\\\"#bdc4cc33\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#bdc4cc3d\\\",\\\"notificationCenterHeader.background\\\":\\\"#272b33\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#f0f3f6\\\",\\\"notifications.background\\\":\\\"#272b33\\\",\\\"notifications.border\\\":\\\"#7a828e\\\",\\\"notifications.foreground\\\":\\\"#f0f3f6\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#ff6a69\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#71b7ff\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#f0b72f\\\",\\\"panel.background\\\":\\\"#010409\\\",\\\"panel.border\\\":\\\"#7a828e\\\",\\\"panelInput.border\\\":\\\"#7a828e\\\",\\\"panelTitle.activeBorder\\\":\\\"#ff967d\\\",\\\"panelTitle.activeForeground\\\":\\\"#f0f3f6\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#f0f3f6\\\",\\\"peekViewEditor.background\\\":\\\"#9ea7b31a\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#e09b13\\\",\\\"peekViewResult.background\\\":\\\"#0a0c10\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#e09b13\\\",\\\"pickerGroup.border\\\":\\\"#7a828e\\\",\\\"pickerGroup.foreground\\\":\\\"#f0f3f6\\\",\\\"progressBar.background\\\":\\\"#409eff\\\",\\\"quickInput.background\\\":\\\"#272b33\\\",\\\"quickInput.foreground\\\":\\\"#f0f3f6\\\",\\\"scrollbar.shadow\\\":\\\"#7a828e33\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#bdc4cc47\\\",\\\"scrollbarSlider.background\\\":\\\"#bdc4cc33\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#bdc4cc3d\\\",\\\"settings.headerForeground\\\":\\\"#f0f3f6\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#e09b13\\\",\\\"sideBar.background\\\":\\\"#010409\\\",\\\"sideBar.border\\\":\\\"#7a828e\\\",\\\"sideBar.foreground\\\":\\\"#f0f3f6\\\",\\\"sideBarSectionHeader.background\\\":\\\"#010409\\\",\\\"sideBarSectionHeader.border\\\":\\\"#7a828e\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#f0f3f6\\\",\\\"sideBarTitle.foreground\\\":\\\"#f0f3f6\\\",\\\"statusBar.background\\\":\\\"#0a0c10\\\",\\\"statusBar.border\\\":\\\"#7a828e\\\",\\\"statusBar.debuggingBackground\\\":\\\"#ff6a69\\\",\\\"statusBar.debuggingForeground\\\":\\\"#0a0c10\\\",\\\"statusBar.focusBorder\\\":\\\"#409eff80\\\",\\\"statusBar.foreground\\\":\\\"#f0f3f6\\\",\\\"statusBar.noFolderBackground\\\":\\\"#0a0c10\\\",\\\"statusBarItem.activeBackground\\\":\\\"#f0f3f61f\\\",\\\"statusBarItem.focusBorder\\\":\\\"#409eff\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#f0f3f614\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#9ea7b366\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#525964\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#f0f3f6\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#fe9a2d\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#71b7ff\\\",\\\"symbolIcon.classForeground\\\":\\\"#fe9a2d\\\",\\\"symbolIcon.colorForeground\\\":\\\"#91cbff\\\",\\\"symbolIcon.constantForeground\\\":[\\\"#acf7b6\\\",\\\"#72f088\\\",\\\"#4ae168\\\",\\\"#26cd4d\\\",\\\"#09b43a\\\",\\\"#09b43a\\\",\\\"#02a232\\\",\\\"#008c2c\\\",\\\"#007728\\\",\\\"#006222\\\"],\\\"symbolIcon.constructorForeground\\\":\\\"#dbb7ff\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#fe9a2d\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#71b7ff\\\",\\\"symbolIcon.eventForeground\\\":\\\"#9ea7b3\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#fe9a2d\\\",\\\"symbolIcon.fileForeground\\\":\\\"#f0b72f\\\",\\\"symbolIcon.folderForeground\\\":\\\"#f0b72f\\\",\\\"symbolIcon.functionForeground\\\":\\\"#cb9eff\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#fe9a2d\\\",\\\"symbolIcon.keyForeground\\\":\\\"#71b7ff\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#ff9492\\\",\\\"symbolIcon.methodForeground\\\":\\\"#cb9eff\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#ff9492\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#ff9492\\\",\\\"symbolIcon.nullForeground\\\":\\\"#71b7ff\\\",\\\"symbolIcon.numberForeground\\\":\\\"#26cd4d\\\",\\\"symbolIcon.objectForeground\\\":\\\"#fe9a2d\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#91cbff\\\",\\\"symbolIcon.packageForeground\\\":\\\"#fe9a2d\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#fe9a2d\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#71b7ff\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#71b7ff\\\",\\\"symbolIcon.stringForeground\\\":\\\"#91cbff\\\",\\\"symbolIcon.structForeground\\\":\\\"#fe9a2d\\\",\\\"symbolIcon.textForeground\\\":\\\"#91cbff\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#91cbff\\\",\\\"symbolIcon.unitForeground\\\":\\\"#71b7ff\\\",\\\"symbolIcon.variableForeground\\\":\\\"#fe9a2d\\\",\\\"tab.activeBackground\\\":\\\"#0a0c10\\\",\\\"tab.activeBorder\\\":\\\"#0a0c10\\\",\\\"tab.activeBorderTop\\\":\\\"#ff967d\\\",\\\"tab.activeForeground\\\":\\\"#f0f3f6\\\",\\\"tab.border\\\":\\\"#7a828e\\\",\\\"tab.hoverBackground\\\":\\\"#0a0c10\\\",\\\"tab.inactiveBackground\\\":\\\"#010409\\\",\\\"tab.inactiveForeground\\\":\\\"#f0f3f6\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#0a0c10\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#7a828e\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#9ea7b31a\\\",\\\"terminal.ansiBlack\\\":\\\"#7a828e\\\",\\\"terminal.ansiBlue\\\":\\\"#71b7ff\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#9ea7b3\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#91cbff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#56d4dd\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#4ae168\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#dbb7ff\\\",\\\"terminal.ansiBrightRed\\\":\\\"#ffb1af\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#f7c843\\\",\\\"terminal.ansiCyan\\\":\\\"#39c5cf\\\",\\\"terminal.ansiGreen\\\":\\\"#26cd4d\\\",\\\"terminal.ansiMagenta\\\":\\\"#cb9eff\\\",\\\"terminal.ansiRed\\\":\\\"#ff9492\\\",\\\"terminal.ansiWhite\\\":\\\"#d9dee3\\\",\\\"terminal.ansiYellow\\\":\\\"#f0b72f\\\",\\\"terminal.foreground\\\":\\\"#f0f3f6\\\",\\\"textBlockQuote.background\\\":\\\"#010409\\\",\\\"textBlockQuote.border\\\":\\\"#7a828e\\\",\\\"textCodeBlock.background\\\":\\\"#9ea7b366\\\",\\\"textLink.activeForeground\\\":\\\"#71b7ff\\\",\\\"textLink.foreground\\\":\\\"#71b7ff\\\",\\\"textPreformat.background\\\":\\\"#9ea7b366\\\",\\\"textPreformat.foreground\\\":\\\"#f0f3f6\\\",\\\"textSeparator.foreground\\\":\\\"#7a828e\\\",\\\"titleBar.activeBackground\\\":\\\"#0a0c10\\\",\\\"titleBar.activeForeground\\\":\\\"#f0f3f6\\\",\\\"titleBar.border\\\":\\\"#7a828e\\\",\\\"titleBar.inactiveBackground\\\":\\\"#010409\\\",\\\"titleBar.inactiveForeground\\\":\\\"#f0f3f6\\\",\\\"tree.indentGuidesStroke\\\":\\\"#7a828e\\\",\\\"welcomePage.buttonBackground\\\":\\\"#272b33\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#525964\\\"},\\\"displayName\\\":\\\"GitHub Dark High Contrast\\\",\\\"name\\\":\\\"github-dark-high-contrast\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"string.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bdc4cc\\\"}},{\\\"scope\\\":[\\\"constant.other.placeholder\\\",\\\"constant.character\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9492\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"entity.name.constant\\\",\\\"variable.other.constant\\\",\\\"variable.other.enummember\\\",\\\"variable.language\\\",\\\"entity\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":[\\\"entity.name\\\",\\\"meta.export.default\\\",\\\"meta.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb757\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function\\\",\\\"meta.jsx.children\\\",\\\"meta.block\\\",\\\"meta.tag.attributes\\\",\\\"entity.name.constant\\\",\\\"meta.object.member\\\",\\\"meta.embedded.expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f0f3f6\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbb7ff\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"support.class.component\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#72f088\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9492\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9492\\\"}},{\\\"scope\\\":[\\\"storage.modifier.package\\\",\\\"storage.modifier.import\\\",\\\"storage.type.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f0f3f6\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"string punctuation.section.embedded source\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#addcff\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":\\\"meta.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb757\\\"}},{\\\"scope\\\":\\\"variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f0f3f6\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ffb1af\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ffb1af\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ffb1af\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ffb1af\\\"}},{\\\"scope\\\":\\\"carriage-return\\\",\\\"settings\\\":{\\\"background\\\":\\\"#ff9492\\\",\\\"content\\\":\\\"^M\\\",\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"message.error\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb1af\\\"}},{\\\"scope\\\":\\\"string variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":[\\\"source.regexp\\\",\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#addcff\\\"}},{\\\"scope\\\":[\\\"string.regexp.character-class\\\",\\\"string.regexp constant.character.escape\\\",\\\"string.regexp source.ruby.embedded\\\",\\\"string.regexp string.regexp.arbitrary-repitition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#addcff\\\"}},{\\\"scope\\\":\\\"string.regexp constant.character.escape\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#72f088\\\"}},{\\\"scope\\\":\\\"support.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":\\\"support.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#72f088\\\"}},{\\\"scope\\\":\\\"meta.module-reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb757\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading entity.name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#72f088\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f0f3f6\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f0f3f6\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"markup.strikethrough\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\",\\\"meta.diff.header.from-file\\\",\\\"punctuation.definition.deleted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#ad0116\\\",\\\"foreground\\\":\\\"#ffb1af\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9492\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.inserted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#006222\\\",\\\"foreground\\\":\\\"#72f088\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\",\\\"punctuation.definition.changed\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#a74c00\\\",\\\"foreground\\\":\\\"#ffb757\\\"}},{\\\"scope\\\":[\\\"markup.ignored\\\",\\\"markup.untracked\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#91cbff\\\",\\\"foreground\\\":\\\"#272b33\\\"}},{\\\"scope\\\":\\\"meta.diff.range\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#dbb7ff\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":\\\"meta.separator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":\\\"meta.output\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91cbff\\\"}},{\\\"scope\\\":[\\\"brackethighlighter.tag\\\",\\\"brackethighlighter.curly\\\",\\\"brackethighlighter.round\\\",\\\"brackethighlighter.square\\\",\\\"brackethighlighter.angle\\\",\\\"brackethighlighter.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bdc4cc\\\"}},{\\\"scope\\\":\\\"brackethighlighter.unmatched\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb1af\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link\\\",\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#addcff\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: github-light */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#f9826c\\\",\\\"activityBar.background\\\":\\\"#fff\\\",\\\"activityBar.border\\\":\\\"#e1e4e8\\\",\\\"activityBar.foreground\\\":\\\"#2f363d\\\",\\\"activityBar.inactiveForeground\\\":\\\"#959da5\\\",\\\"activityBarBadge.background\\\":\\\"#2188ff\\\",\\\"activityBarBadge.foreground\\\":\\\"#fff\\\",\\\"badge.background\\\":\\\"#dbedff\\\",\\\"badge.foreground\\\":\\\"#005cc5\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#586069\\\",\\\"breadcrumb.focusForeground\\\":\\\"#2f363d\\\",\\\"breadcrumb.foreground\\\":\\\"#6a737d\\\",\\\"breadcrumbPicker.background\\\":\\\"#fafbfc\\\",\\\"button.background\\\":\\\"#159739\\\",\\\"button.foreground\\\":\\\"#fff\\\",\\\"button.hoverBackground\\\":\\\"#138934\\\",\\\"button.secondaryBackground\\\":\\\"#e1e4e8\\\",\\\"button.secondaryForeground\\\":\\\"#1b1f23\\\",\\\"button.secondaryHoverBackground\\\":\\\"#d1d5da\\\",\\\"checkbox.background\\\":\\\"#fafbfc\\\",\\\"checkbox.border\\\":\\\"#d1d5da\\\",\\\"debugToolBar.background\\\":\\\"#fff\\\",\\\"descriptionForeground\\\":\\\"#6a737d\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#34d05822\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#d73a4922\\\",\\\"dropdown.background\\\":\\\"#fafbfc\\\",\\\"dropdown.border\\\":\\\"#e1e4e8\\\",\\\"dropdown.foreground\\\":\\\"#2f363d\\\",\\\"dropdown.listBackground\\\":\\\"#fff\\\",\\\"editor.background\\\":\\\"#fff\\\",\\\"editor.findMatchBackground\\\":\\\"#ffdf5d\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#ffdf5d66\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#28a74525\\\",\\\"editor.foldBackground\\\":\\\"#d1d5da11\\\",\\\"editor.foreground\\\":\\\"#24292e\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#0366d611\\\",\\\"editor.lineHighlightBackground\\\":\\\"#f6f8fa\\\",\\\"editor.linkedEditingBackground\\\":\\\"#0366d611\\\",\\\"editor.selectionBackground\\\":\\\"#0366d625\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#34d05840\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#34d05800\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#ffd33d33\\\",\\\"editor.wordHighlightBackground\\\":\\\"#34d05800\\\",\\\"editor.wordHighlightBorder\\\":\\\"#24943e99\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#34d05800\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#24943e50\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#005cc5\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#e36209\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#5a32a3\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#005cc5\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#e36209\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#5a32a3\\\",\\\"editorBracketMatch.background\\\":\\\"#34d05840\\\",\\\"editorBracketMatch.border\\\":\\\"#34d05800\\\",\\\"editorCursor.foreground\\\":\\\"#044289\\\",\\\"editorError.foreground\\\":\\\"#cb2431\\\",\\\"editorGroup.border\\\":\\\"#e1e4e8\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#f6f8fa\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#e1e4e8\\\",\\\"editorGutter.addedBackground\\\":\\\"#28a745\\\",\\\"editorGutter.deletedBackground\\\":\\\"#d73a49\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#2188ff\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#d7dbe0\\\",\\\"editorIndentGuide.background\\\":\\\"#eff2f6\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#24292e\\\",\\\"editorLineNumber.foreground\\\":\\\"#1b1f234d\\\",\\\"editorOverviewRuler.border\\\":\\\"#fff\\\",\\\"editorWarning.foreground\\\":\\\"#f9c513\\\",\\\"editorWhitespace.foreground\\\":\\\"#d1d5da\\\",\\\"editorWidget.background\\\":\\\"#f6f8fa\\\",\\\"errorForeground\\\":\\\"#cb2431\\\",\\\"focusBorder\\\":\\\"#2188ff\\\",\\\"foreground\\\":\\\"#444d56\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#28a745\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#e36209\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#d73a49\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#959da5\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#005cc5\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#959da5\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#28a745\\\",\\\"input.background\\\":\\\"#fafbfc\\\",\\\"input.border\\\":\\\"#e1e4e8\\\",\\\"input.foreground\\\":\\\"#2f363d\\\",\\\"input.placeholderForeground\\\":\\\"#959da5\\\",\\\"list.activeSelectionBackground\\\":\\\"#e2e5e9\\\",\\\"list.activeSelectionForeground\\\":\\\"#2f363d\\\",\\\"list.focusBackground\\\":\\\"#cce5ff\\\",\\\"list.hoverBackground\\\":\\\"#ebf0f4\\\",\\\"list.hoverForeground\\\":\\\"#2f363d\\\",\\\"list.inactiveFocusBackground\\\":\\\"#dbedff\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#e8eaed\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#2f363d\\\",\\\"notificationCenterHeader.background\\\":\\\"#e1e4e8\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#6a737d\\\",\\\"notifications.background\\\":\\\"#fafbfc\\\",\\\"notifications.border\\\":\\\"#e1e4e8\\\",\\\"notifications.foreground\\\":\\\"#2f363d\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#d73a49\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#005cc5\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#e36209\\\",\\\"panel.background\\\":\\\"#f6f8fa\\\",\\\"panel.border\\\":\\\"#e1e4e8\\\",\\\"panelInput.border\\\":\\\"#e1e4e8\\\",\\\"panelTitle.activeBorder\\\":\\\"#f9826c\\\",\\\"panelTitle.activeForeground\\\":\\\"#2f363d\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#6a737d\\\",\\\"pickerGroup.border\\\":\\\"#e1e4e8\\\",\\\"pickerGroup.foreground\\\":\\\"#2f363d\\\",\\\"progressBar.background\\\":\\\"#2188ff\\\",\\\"quickInput.background\\\":\\\"#fafbfc\\\",\\\"quickInput.foreground\\\":\\\"#2f363d\\\",\\\"scrollbar.shadow\\\":\\\"#6a737d33\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#959da588\\\",\\\"scrollbarSlider.background\\\":\\\"#959da533\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#959da544\\\",\\\"settings.headerForeground\\\":\\\"#2f363d\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#2188ff\\\",\\\"sideBar.background\\\":\\\"#f6f8fa\\\",\\\"sideBar.border\\\":\\\"#e1e4e8\\\",\\\"sideBar.foreground\\\":\\\"#586069\\\",\\\"sideBarSectionHeader.background\\\":\\\"#f6f8fa\\\",\\\"sideBarSectionHeader.border\\\":\\\"#e1e4e8\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#2f363d\\\",\\\"sideBarTitle.foreground\\\":\\\"#2f363d\\\",\\\"statusBar.background\\\":\\\"#fff\\\",\\\"statusBar.border\\\":\\\"#e1e4e8\\\",\\\"statusBar.debuggingBackground\\\":\\\"#f9826c\\\",\\\"statusBar.debuggingForeground\\\":\\\"#fff\\\",\\\"statusBar.foreground\\\":\\\"#586069\\\",\\\"statusBar.noFolderBackground\\\":\\\"#fff\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#e8eaed\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#fff\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#586069\\\",\\\"tab.activeBackground\\\":\\\"#fff\\\",\\\"tab.activeBorder\\\":\\\"#fff\\\",\\\"tab.activeBorderTop\\\":\\\"#f9826c\\\",\\\"tab.activeForeground\\\":\\\"#2f363d\\\",\\\"tab.border\\\":\\\"#e1e4e8\\\",\\\"tab.hoverBackground\\\":\\\"#fff\\\",\\\"tab.inactiveBackground\\\":\\\"#f6f8fa\\\",\\\"tab.inactiveForeground\\\":\\\"#6a737d\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#fff\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#e1e4e8\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#fff\\\",\\\"terminal.ansiBlack\\\":\\\"#24292e\\\",\\\"terminal.ansiBlue\\\":\\\"#0366d6\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#959da5\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#005cc5\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#3192aa\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#22863a\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#5a32a3\\\",\\\"terminal.ansiBrightRed\\\":\\\"#cb2431\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#d1d5da\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#b08800\\\",\\\"terminal.ansiCyan\\\":\\\"#1b7c83\\\",\\\"terminal.ansiGreen\\\":\\\"#28a745\\\",\\\"terminal.ansiMagenta\\\":\\\"#5a32a3\\\",\\\"terminal.ansiRed\\\":\\\"#d73a49\\\",\\\"terminal.ansiWhite\\\":\\\"#6a737d\\\",\\\"terminal.ansiYellow\\\":\\\"#dbab09\\\",\\\"terminal.foreground\\\":\\\"#586069\\\",\\\"terminal.tab.activeBorder\\\":\\\"#f9826c\\\",\\\"terminalCursor.background\\\":\\\"#d1d5da\\\",\\\"terminalCursor.foreground\\\":\\\"#005cc5\\\",\\\"textBlockQuote.background\\\":\\\"#fafbfc\\\",\\\"textBlockQuote.border\\\":\\\"#e1e4e8\\\",\\\"textCodeBlock.background\\\":\\\"#f6f8fa\\\",\\\"textLink.activeForeground\\\":\\\"#005cc5\\\",\\\"textLink.foreground\\\":\\\"#0366d6\\\",\\\"textPreformat.foreground\\\":\\\"#586069\\\",\\\"textSeparator.foreground\\\":\\\"#d1d5da\\\",\\\"titleBar.activeBackground\\\":\\\"#fff\\\",\\\"titleBar.activeForeground\\\":\\\"#2f363d\\\",\\\"titleBar.border\\\":\\\"#e1e4e8\\\",\\\"titleBar.inactiveBackground\\\":\\\"#f6f8fa\\\",\\\"titleBar.inactiveForeground\\\":\\\"#6a737d\\\",\\\"tree.indentGuidesStroke\\\":\\\"#e1e4e8\\\",\\\"welcomePage.buttonBackground\\\":\\\"#f6f8fa\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#e1e4e8\\\"},\\\"displayName\\\":\\\"GitHub Light\\\",\\\"name\\\":\\\"github-light\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"string.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6a737d\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"entity.name.constant\\\",\\\"variable.other.constant\\\",\\\"variable.other.enummember\\\",\\\"variable.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":[\\\"entity\\\",\\\"entity.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6f42c1\\\"}},{\\\"scope\\\":\\\"variable.parameter.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#24292e\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#22863a\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d73a49\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d73a49\\\"}},{\\\"scope\\\":[\\\"storage.modifier.package\\\",\\\"storage.modifier.import\\\",\\\"storage.type.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#24292e\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"punctuation.definition.string\\\",\\\"string punctuation.section.embedded source\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#032f62\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":\\\"meta.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e36209\\\"}},{\\\"scope\\\":\\\"variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#24292e\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":\\\"carriage-return\\\",\\\"settings\\\":{\\\"background\\\":\\\"#d73a49\\\",\\\"content\\\":\\\"^M\\\",\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#fafbfc\\\"}},{\\\"scope\\\":\\\"message.error\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":\\\"string variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":[\\\"source.regexp\\\",\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#032f62\\\"}},{\\\"scope\\\":[\\\"string.regexp.character-class\\\",\\\"string.regexp constant.character.escape\\\",\\\"string.regexp source.ruby.embedded\\\",\\\"string.regexp string.regexp.arbitrary-repitition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#032f62\\\"}},{\\\"scope\\\":\\\"string.regexp constant.character.escape\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#22863a\\\"}},{\\\"scope\\\":\\\"support.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":\\\"support.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":\\\"meta.module-reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e36209\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading entity.name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#22863a\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#24292e\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#24292e\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"markup.strikethrough\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\",\\\"meta.diff.header.from-file\\\",\\\"punctuation.definition.deleted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#ffeef0\\\",\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.inserted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#f0fff4\\\",\\\"foreground\\\":\\\"#22863a\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\",\\\"punctuation.definition.changed\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#ffebda\\\",\\\"foreground\\\":\\\"#e36209\\\"}},{\\\"scope\\\":[\\\"markup.ignored\\\",\\\"markup.untracked\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#005cc5\\\",\\\"foreground\\\":\\\"#f6f8fa\\\"}},{\\\"scope\\\":\\\"meta.diff.range\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#6f42c1\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":\\\"meta.separator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":\\\"meta.output\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":[\\\"brackethighlighter.tag\\\",\\\"brackethighlighter.curly\\\",\\\"brackethighlighter.round\\\",\\\"brackethighlighter.square\\\",\\\"brackethighlighter.angle\\\",\\\"brackethighlighter.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#586069\\\"}},{\\\"scope\\\":\\\"brackethighlighter.unmatched\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link\\\",\\\"string.other.link\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#032f62\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: github-light-default */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#fd8c73\\\",\\\"activityBar.background\\\":\\\"#ffffff\\\",\\\"activityBar.border\\\":\\\"#d0d7de\\\",\\\"activityBar.foreground\\\":\\\"#1f2328\\\",\\\"activityBar.inactiveForeground\\\":\\\"#656d76\\\",\\\"activityBarBadge.background\\\":\\\"#0969da\\\",\\\"activityBarBadge.foreground\\\":\\\"#ffffff\\\",\\\"badge.background\\\":\\\"#0969da\\\",\\\"badge.foreground\\\":\\\"#ffffff\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#656d76\\\",\\\"breadcrumb.focusForeground\\\":\\\"#1f2328\\\",\\\"breadcrumb.foreground\\\":\\\"#656d76\\\",\\\"breadcrumbPicker.background\\\":\\\"#ffffff\\\",\\\"button.background\\\":\\\"#1f883d\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"button.hoverBackground\\\":\\\"#1a7f37\\\",\\\"button.secondaryBackground\\\":\\\"#ebecf0\\\",\\\"button.secondaryForeground\\\":\\\"#24292f\\\",\\\"button.secondaryHoverBackground\\\":\\\"#f3f4f6\\\",\\\"checkbox.background\\\":\\\"#f6f8fa\\\",\\\"checkbox.border\\\":\\\"#d0d7de\\\",\\\"debugConsole.errorForeground\\\":\\\"#cf222e\\\",\\\"debugConsole.infoForeground\\\":\\\"#57606a\\\",\\\"debugConsole.sourceForeground\\\":\\\"#9a6700\\\",\\\"debugConsole.warningForeground\\\":\\\"#7d4e00\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#6639ba\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#cf222e\\\",\\\"debugTokenExpression.boolean\\\":\\\"#116329\\\",\\\"debugTokenExpression.error\\\":\\\"#a40e26\\\",\\\"debugTokenExpression.name\\\":\\\"#0550ae\\\",\\\"debugTokenExpression.number\\\":\\\"#116329\\\",\\\"debugTokenExpression.string\\\":\\\"#0a3069\\\",\\\"debugTokenExpression.value\\\":\\\"#0a3069\\\",\\\"debugToolBar.background\\\":\\\"#ffffff\\\",\\\"descriptionForeground\\\":\\\"#656d76\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#aceebb4d\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#6fdd8b80\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#ffcecb4d\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ff818266\\\",\\\"dropdown.background\\\":\\\"#ffffff\\\",\\\"dropdown.border\\\":\\\"#d0d7de\\\",\\\"dropdown.foreground\\\":\\\"#1f2328\\\",\\\"dropdown.listBackground\\\":\\\"#ffffff\\\",\\\"editor.background\\\":\\\"#ffffff\\\",\\\"editor.findMatchBackground\\\":\\\"#bf8700\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#fae17d80\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#4ac26b66\\\",\\\"editor.foldBackground\\\":\\\"#6e77811a\\\",\\\"editor.foreground\\\":\\\"#1f2328\\\",\\\"editor.lineHighlightBackground\\\":\\\"#eaeef280\\\",\\\"editor.linkedEditingBackground\\\":\\\"#0969da12\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#4ac26b40\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#d4a72c66\\\",\\\"editor.wordHighlightBackground\\\":\\\"#eaeef280\\\",\\\"editor.wordHighlightBorder\\\":\\\"#afb8c199\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#afb8c14d\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#afb8c199\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#0969da\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#1a7f37\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#9a6700\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#cf222e\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#bf3989\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#8250df\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#656d76\\\",\\\"editorBracketMatch.background\\\":\\\"#4ac26b40\\\",\\\"editorBracketMatch.border\\\":\\\"#4ac26b99\\\",\\\"editorCursor.foreground\\\":\\\"#0969da\\\",\\\"editorGroup.border\\\":\\\"#d0d7de\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#f6f8fa\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#d0d7de\\\",\\\"editorGutter.addedBackground\\\":\\\"#4ac26b66\\\",\\\"editorGutter.deletedBackground\\\":\\\"#ff818266\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#d4a72c66\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#1f23283d\\\",\\\"editorIndentGuide.background\\\":\\\"#1f23281f\\\",\\\"editorInlayHint.background\\\":\\\"#afb8c133\\\",\\\"editorInlayHint.foreground\\\":\\\"#656d76\\\",\\\"editorInlayHint.paramBackground\\\":\\\"#afb8c133\\\",\\\"editorInlayHint.paramForeground\\\":\\\"#656d76\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#afb8c133\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#656d76\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#1f2328\\\",\\\"editorLineNumber.foreground\\\":\\\"#8c959f\\\",\\\"editorOverviewRuler.border\\\":\\\"#ffffff\\\",\\\"editorWhitespace.foreground\\\":\\\"#afb8c1\\\",\\\"editorWidget.background\\\":\\\"#ffffff\\\",\\\"errorForeground\\\":\\\"#cf222e\\\",\\\"focusBorder\\\":\\\"#0969da\\\",\\\"foreground\\\":\\\"#1f2328\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#1a7f37\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#bc4c00\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#cf222e\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#6e7781\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#9a6700\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#656d76\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#1a7f37\\\",\\\"icon.foreground\\\":\\\"#656d76\\\",\\\"input.background\\\":\\\"#ffffff\\\",\\\"input.border\\\":\\\"#d0d7de\\\",\\\"input.foreground\\\":\\\"#1f2328\\\",\\\"input.placeholderForeground\\\":\\\"#6e7781\\\",\\\"keybindingLabel.foreground\\\":\\\"#1f2328\\\",\\\"list.activeSelectionBackground\\\":\\\"#afb8c133\\\",\\\"list.activeSelectionForeground\\\":\\\"#1f2328\\\",\\\"list.focusBackground\\\":\\\"#ddf4ff\\\",\\\"list.focusForeground\\\":\\\"#1f2328\\\",\\\"list.highlightForeground\\\":\\\"#0969da\\\",\\\"list.hoverBackground\\\":\\\"#eaeef280\\\",\\\"list.hoverForeground\\\":\\\"#1f2328\\\",\\\"list.inactiveFocusBackground\\\":\\\"#ddf4ff\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#afb8c133\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#1f2328\\\",\\\"minimapSlider.activeBackground\\\":\\\"#8c959f47\\\",\\\"minimapSlider.background\\\":\\\"#8c959f33\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#8c959f3d\\\",\\\"notificationCenterHeader.background\\\":\\\"#f6f8fa\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#656d76\\\",\\\"notifications.background\\\":\\\"#ffffff\\\",\\\"notifications.border\\\":\\\"#d0d7de\\\",\\\"notifications.foreground\\\":\\\"#1f2328\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#cf222e\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#0969da\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#9a6700\\\",\\\"panel.background\\\":\\\"#f6f8fa\\\",\\\"panel.border\\\":\\\"#d0d7de\\\",\\\"panelInput.border\\\":\\\"#d0d7de\\\",\\\"panelTitle.activeBorder\\\":\\\"#fd8c73\\\",\\\"panelTitle.activeForeground\\\":\\\"#1f2328\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#656d76\\\",\\\"pickerGroup.border\\\":\\\"#d0d7de\\\",\\\"pickerGroup.foreground\\\":\\\"#656d76\\\",\\\"progressBar.background\\\":\\\"#0969da\\\",\\\"quickInput.background\\\":\\\"#ffffff\\\",\\\"quickInput.foreground\\\":\\\"#1f2328\\\",\\\"scrollbar.shadow\\\":\\\"#6e778133\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#8c959f47\\\",\\\"scrollbarSlider.background\\\":\\\"#8c959f33\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#8c959f3d\\\",\\\"settings.headerForeground\\\":\\\"#1f2328\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#d4a72c66\\\",\\\"sideBar.background\\\":\\\"#f6f8fa\\\",\\\"sideBar.border\\\":\\\"#d0d7de\\\",\\\"sideBar.foreground\\\":\\\"#1f2328\\\",\\\"sideBarSectionHeader.background\\\":\\\"#f6f8fa\\\",\\\"sideBarSectionHeader.border\\\":\\\"#d0d7de\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#1f2328\\\",\\\"sideBarTitle.foreground\\\":\\\"#1f2328\\\",\\\"statusBar.background\\\":\\\"#ffffff\\\",\\\"statusBar.border\\\":\\\"#d0d7de\\\",\\\"statusBar.debuggingBackground\\\":\\\"#cf222e\\\",\\\"statusBar.debuggingForeground\\\":\\\"#ffffff\\\",\\\"statusBar.focusBorder\\\":\\\"#0969da80\\\",\\\"statusBar.foreground\\\":\\\"#656d76\\\",\\\"statusBar.noFolderBackground\\\":\\\"#ffffff\\\",\\\"statusBarItem.activeBackground\\\":\\\"#1f23281f\\\",\\\"statusBarItem.focusBorder\\\":\\\"#0969da\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#1f232814\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#afb8c133\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#eaeef2\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#1f2328\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#953800\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#0550ae\\\",\\\"symbolIcon.classForeground\\\":\\\"#953800\\\",\\\"symbolIcon.colorForeground\\\":\\\"#0a3069\\\",\\\"symbolIcon.constantForeground\\\":\\\"#116329\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#3e1f79\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#953800\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#0550ae\\\",\\\"symbolIcon.eventForeground\\\":\\\"#57606a\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#953800\\\",\\\"symbolIcon.fileForeground\\\":\\\"#7d4e00\\\",\\\"symbolIcon.folderForeground\\\":\\\"#7d4e00\\\",\\\"symbolIcon.functionForeground\\\":\\\"#6639ba\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#953800\\\",\\\"symbolIcon.keyForeground\\\":\\\"#0550ae\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#a40e26\\\",\\\"symbolIcon.methodForeground\\\":\\\"#6639ba\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#a40e26\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#a40e26\\\",\\\"symbolIcon.nullForeground\\\":\\\"#0550ae\\\",\\\"symbolIcon.numberForeground\\\":\\\"#116329\\\",\\\"symbolIcon.objectForeground\\\":\\\"#953800\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#0a3069\\\",\\\"symbolIcon.packageForeground\\\":\\\"#953800\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#953800\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#0550ae\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#0550ae\\\",\\\"symbolIcon.stringForeground\\\":\\\"#0a3069\\\",\\\"symbolIcon.structForeground\\\":\\\"#953800\\\",\\\"symbolIcon.textForeground\\\":\\\"#0a3069\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#0a3069\\\",\\\"symbolIcon.unitForeground\\\":\\\"#0550ae\\\",\\\"symbolIcon.variableForeground\\\":\\\"#953800\\\",\\\"tab.activeBackground\\\":\\\"#ffffff\\\",\\\"tab.activeBorder\\\":\\\"#ffffff\\\",\\\"tab.activeBorderTop\\\":\\\"#fd8c73\\\",\\\"tab.activeForeground\\\":\\\"#1f2328\\\",\\\"tab.border\\\":\\\"#d0d7de\\\",\\\"tab.hoverBackground\\\":\\\"#ffffff\\\",\\\"tab.inactiveBackground\\\":\\\"#f6f8fa\\\",\\\"tab.inactiveForeground\\\":\\\"#656d76\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#ffffff\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#d0d7de\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#eaeef280\\\",\\\"terminal.ansiBlack\\\":\\\"#24292f\\\",\\\"terminal.ansiBlue\\\":\\\"#0969da\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#57606a\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#218bff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#3192aa\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#1a7f37\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#a475f9\\\",\\\"terminal.ansiBrightRed\\\":\\\"#a40e26\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#8c959f\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#633c01\\\",\\\"terminal.ansiCyan\\\":\\\"#1b7c83\\\",\\\"terminal.ansiGreen\\\":\\\"#116329\\\",\\\"terminal.ansiMagenta\\\":\\\"#8250df\\\",\\\"terminal.ansiRed\\\":\\\"#cf222e\\\",\\\"terminal.ansiWhite\\\":\\\"#6e7781\\\",\\\"terminal.ansiYellow\\\":\\\"#4d2d00\\\",\\\"terminal.foreground\\\":\\\"#1f2328\\\",\\\"textBlockQuote.background\\\":\\\"#f6f8fa\\\",\\\"textBlockQuote.border\\\":\\\"#d0d7de\\\",\\\"textCodeBlock.background\\\":\\\"#afb8c133\\\",\\\"textLink.activeForeground\\\":\\\"#0969da\\\",\\\"textLink.foreground\\\":\\\"#0969da\\\",\\\"textPreformat.background\\\":\\\"#afb8c133\\\",\\\"textPreformat.foreground\\\":\\\"#656d76\\\",\\\"textSeparator.foreground\\\":\\\"#d8dee4\\\",\\\"titleBar.activeBackground\\\":\\\"#ffffff\\\",\\\"titleBar.activeForeground\\\":\\\"#656d76\\\",\\\"titleBar.border\\\":\\\"#d0d7de\\\",\\\"titleBar.inactiveBackground\\\":\\\"#f6f8fa\\\",\\\"titleBar.inactiveForeground\\\":\\\"#656d76\\\",\\\"tree.indentGuidesStroke\\\":\\\"#d8dee4\\\",\\\"welcomePage.buttonBackground\\\":\\\"#f6f8fa\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#f3f4f6\\\"},\\\"displayName\\\":\\\"GitHub Light Default\\\",\\\"name\\\":\\\"github-light-default\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"string.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6e7781\\\"}},{\\\"scope\\\":[\\\"constant.other.placeholder\\\",\\\"constant.character\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cf222e\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"entity.name.constant\\\",\\\"variable.other.constant\\\",\\\"variable.other.enummember\\\",\\\"variable.language\\\",\\\"entity\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":[\\\"entity.name\\\",\\\"meta.export.default\\\",\\\"meta.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#953800\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function\\\",\\\"meta.jsx.children\\\",\\\"meta.block\\\",\\\"meta.tag.attributes\\\",\\\"entity.name.constant\\\",\\\"meta.object.member\\\",\\\"meta.embedded.expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1f2328\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8250df\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"support.class.component\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#116329\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cf222e\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cf222e\\\"}},{\\\"scope\\\":[\\\"storage.modifier.package\\\",\\\"storage.modifier.import\\\",\\\"storage.type.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1f2328\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"string punctuation.section.embedded source\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0a3069\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":\\\"meta.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#953800\\\"}},{\\\"scope\\\":\\\"variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#1f2328\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#82071e\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#82071e\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#82071e\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#82071e\\\"}},{\\\"scope\\\":\\\"carriage-return\\\",\\\"settings\\\":{\\\"background\\\":\\\"#cf222e\\\",\\\"content\\\":\\\"^M\\\",\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#f6f8fa\\\"}},{\\\"scope\\\":\\\"message.error\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82071e\\\"}},{\\\"scope\\\":\\\"string variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":[\\\"source.regexp\\\",\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0a3069\\\"}},{\\\"scope\\\":[\\\"string.regexp.character-class\\\",\\\"string.regexp constant.character.escape\\\",\\\"string.regexp source.ruby.embedded\\\",\\\"string.regexp string.regexp.arbitrary-repitition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0a3069\\\"}},{\\\"scope\\\":\\\"string.regexp constant.character.escape\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#116329\\\"}},{\\\"scope\\\":\\\"support.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":\\\"support.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#116329\\\"}},{\\\"scope\\\":\\\"meta.module-reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#953800\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading entity.name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#116329\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#1f2328\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#1f2328\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"markup.strikethrough\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\",\\\"meta.diff.header.from-file\\\",\\\"punctuation.definition.deleted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#ffebe9\\\",\\\"foreground\\\":\\\"#82071e\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cf222e\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.inserted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#dafbe1\\\",\\\"foreground\\\":\\\"#116329\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\",\\\"punctuation.definition.changed\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#ffd8b5\\\",\\\"foreground\\\":\\\"#953800\\\"}},{\\\"scope\\\":[\\\"markup.ignored\\\",\\\"markup.untracked\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#0550ae\\\",\\\"foreground\\\":\\\"#eaeef2\\\"}},{\\\"scope\\\":\\\"meta.diff.range\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#8250df\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":\\\"meta.separator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":\\\"meta.output\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0550ae\\\"}},{\\\"scope\\\":[\\\"brackethighlighter.tag\\\",\\\"brackethighlighter.curly\\\",\\\"brackethighlighter.round\\\",\\\"brackethighlighter.square\\\",\\\"brackethighlighter.angle\\\",\\\"brackethighlighter.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#57606a\\\"}},{\\\"scope\\\":\\\"brackethighlighter.unmatched\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82071e\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link\\\",\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0a3069\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: github-light-high-contrast */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#ef5b48\\\",\\\"activityBar.background\\\":\\\"#ffffff\\\",\\\"activityBar.border\\\":\\\"#20252c\\\",\\\"activityBar.foreground\\\":\\\"#0e1116\\\",\\\"activityBar.inactiveForeground\\\":\\\"#0e1116\\\",\\\"activityBarBadge.background\\\":\\\"#0349b4\\\",\\\"activityBarBadge.foreground\\\":\\\"#ffffff\\\",\\\"badge.background\\\":\\\"#0349b4\\\",\\\"badge.foreground\\\":\\\"#ffffff\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#0e1116\\\",\\\"breadcrumb.focusForeground\\\":\\\"#0e1116\\\",\\\"breadcrumb.foreground\\\":\\\"#0e1116\\\",\\\"breadcrumbPicker.background\\\":\\\"#ffffff\\\",\\\"button.background\\\":\\\"#055d20\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"button.hoverBackground\\\":\\\"#024c1a\\\",\\\"button.secondaryBackground\\\":\\\"#acb6c0\\\",\\\"button.secondaryForeground\\\":\\\"#0e1116\\\",\\\"button.secondaryHoverBackground\\\":\\\"#ced5dc\\\",\\\"checkbox.background\\\":\\\"#e7ecf0\\\",\\\"checkbox.border\\\":\\\"#20252c\\\",\\\"debugConsole.errorForeground\\\":\\\"#a0111f\\\",\\\"debugConsole.infoForeground\\\":\\\"#4b535d\\\",\\\"debugConsole.sourceForeground\\\":\\\"#744500\\\",\\\"debugConsole.warningForeground\\\":\\\"#603700\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#512598\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#a0111f\\\",\\\"debugTokenExpression.boolean\\\":\\\"#024c1a\\\",\\\"debugTokenExpression.error\\\":\\\"#86061d\\\",\\\"debugTokenExpression.name\\\":\\\"#023b95\\\",\\\"debugTokenExpression.number\\\":\\\"#024c1a\\\",\\\"debugTokenExpression.string\\\":\\\"#032563\\\",\\\"debugTokenExpression.value\\\":\\\"#032563\\\",\\\"debugToolBar.background\\\":\\\"#ffffff\\\",\\\"descriptionForeground\\\":\\\"#0e1116\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#82e5964d\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#43c66380\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#ffc1bc4d\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ee5a5d66\\\",\\\"dropdown.background\\\":\\\"#ffffff\\\",\\\"dropdown.border\\\":\\\"#20252c\\\",\\\"dropdown.foreground\\\":\\\"#0e1116\\\",\\\"dropdown.listBackground\\\":\\\"#ffffff\\\",\\\"editor.background\\\":\\\"#ffffff\\\",\\\"editor.findMatchBackground\\\":\\\"#744500\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#f0ce5380\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#26a148\\\",\\\"editor.foldBackground\\\":\\\"#66707b1a\\\",\\\"editor.foreground\\\":\\\"#0e1116\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#66707b\\\",\\\"editor.lineHighlightBackground\\\":\\\"#e7ecf0\\\",\\\"editor.linkedEditingBackground\\\":\\\"#0349b412\\\",\\\"editor.selectionBackground\\\":\\\"#0e1116\\\",\\\"editor.selectionForeground\\\":\\\"#ffffff\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#26a14840\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#b58407\\\",\\\"editor.wordHighlightBackground\\\":\\\"#e7ecf080\\\",\\\"editor.wordHighlightBorder\\\":\\\"#acb6c099\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#acb6c04d\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#acb6c099\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#0349b4\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#055d20\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#744500\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#a0111f\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#971368\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#622cbc\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#0e1116\\\",\\\"editorBracketMatch.background\\\":\\\"#26a14840\\\",\\\"editorBracketMatch.border\\\":\\\"#26a14899\\\",\\\"editorCursor.foreground\\\":\\\"#0349b4\\\",\\\"editorGroup.border\\\":\\\"#20252c\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#ffffff\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#20252c\\\",\\\"editorGutter.addedBackground\\\":\\\"#26a148\\\",\\\"editorGutter.deletedBackground\\\":\\\"#ee5a5d\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#b58407\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#0e11163d\\\",\\\"editorIndentGuide.background\\\":\\\"#0e11161f\\\",\\\"editorInlayHint.background\\\":\\\"#acb6c033\\\",\\\"editorInlayHint.foreground\\\":\\\"#0e1116\\\",\\\"editorInlayHint.paramBackground\\\":\\\"#acb6c033\\\",\\\"editorInlayHint.paramForeground\\\":\\\"#0e1116\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#acb6c033\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#0e1116\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#0e1116\\\",\\\"editorLineNumber.foreground\\\":\\\"#88929d\\\",\\\"editorOverviewRuler.border\\\":\\\"#ffffff\\\",\\\"editorWhitespace.foreground\\\":\\\"#acb6c0\\\",\\\"editorWidget.background\\\":\\\"#ffffff\\\",\\\"errorForeground\\\":\\\"#a0111f\\\",\\\"focusBorder\\\":\\\"#0349b4\\\",\\\"foreground\\\":\\\"#0e1116\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#055d20\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#873800\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#a0111f\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#66707b\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#744500\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#0e1116\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#055d20\\\",\\\"icon.foreground\\\":\\\"#0e1116\\\",\\\"input.background\\\":\\\"#ffffff\\\",\\\"input.border\\\":\\\"#20252c\\\",\\\"input.foreground\\\":\\\"#0e1116\\\",\\\"input.placeholderForeground\\\":\\\"#66707b\\\",\\\"keybindingLabel.foreground\\\":\\\"#0e1116\\\",\\\"list.activeSelectionBackground\\\":\\\"#acb6c033\\\",\\\"list.activeSelectionForeground\\\":\\\"#0e1116\\\",\\\"list.focusBackground\\\":\\\"#dff7ff\\\",\\\"list.focusForeground\\\":\\\"#0e1116\\\",\\\"list.highlightForeground\\\":\\\"#0349b4\\\",\\\"list.hoverBackground\\\":\\\"#e7ecf0\\\",\\\"list.hoverForeground\\\":\\\"#0e1116\\\",\\\"list.inactiveFocusBackground\\\":\\\"#dff7ff\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#acb6c033\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#0e1116\\\",\\\"minimapSlider.activeBackground\\\":\\\"#88929d47\\\",\\\"minimapSlider.background\\\":\\\"#88929d33\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#88929d3d\\\",\\\"notificationCenterHeader.background\\\":\\\"#e7ecf0\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#0e1116\\\",\\\"notifications.background\\\":\\\"#ffffff\\\",\\\"notifications.border\\\":\\\"#20252c\\\",\\\"notifications.foreground\\\":\\\"#0e1116\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#a0111f\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#0349b4\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#744500\\\",\\\"panel.background\\\":\\\"#ffffff\\\",\\\"panel.border\\\":\\\"#20252c\\\",\\\"panelInput.border\\\":\\\"#20252c\\\",\\\"panelTitle.activeBorder\\\":\\\"#ef5b48\\\",\\\"panelTitle.activeForeground\\\":\\\"#0e1116\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#0e1116\\\",\\\"pickerGroup.border\\\":\\\"#20252c\\\",\\\"pickerGroup.foreground\\\":\\\"#0e1116\\\",\\\"progressBar.background\\\":\\\"#0349b4\\\",\\\"quickInput.background\\\":\\\"#ffffff\\\",\\\"quickInput.foreground\\\":\\\"#0e1116\\\",\\\"scrollbar.shadow\\\":\\\"#66707b33\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#88929d47\\\",\\\"scrollbarSlider.background\\\":\\\"#88929d33\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#88929d3d\\\",\\\"settings.headerForeground\\\":\\\"#0e1116\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#b58407\\\",\\\"sideBar.background\\\":\\\"#ffffff\\\",\\\"sideBar.border\\\":\\\"#20252c\\\",\\\"sideBar.foreground\\\":\\\"#0e1116\\\",\\\"sideBarSectionHeader.background\\\":\\\"#ffffff\\\",\\\"sideBarSectionHeader.border\\\":\\\"#20252c\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#0e1116\\\",\\\"sideBarTitle.foreground\\\":\\\"#0e1116\\\",\\\"statusBar.background\\\":\\\"#ffffff\\\",\\\"statusBar.border\\\":\\\"#20252c\\\",\\\"statusBar.debuggingBackground\\\":\\\"#a0111f\\\",\\\"statusBar.debuggingForeground\\\":\\\"#ffffff\\\",\\\"statusBar.focusBorder\\\":\\\"#0349b480\\\",\\\"statusBar.foreground\\\":\\\"#0e1116\\\",\\\"statusBar.noFolderBackground\\\":\\\"#ffffff\\\",\\\"statusBarItem.activeBackground\\\":\\\"#0e11161f\\\",\\\"statusBarItem.focusBorder\\\":\\\"#0349b4\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#0e111614\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#acb6c033\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#e7ecf0\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#0e1116\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#702c00\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#023b95\\\",\\\"symbolIcon.classForeground\\\":\\\"#702c00\\\",\\\"symbolIcon.colorForeground\\\":\\\"#032563\\\",\\\"symbolIcon.constantForeground\\\":\\\"#024c1a\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#341763\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#702c00\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#023b95\\\",\\\"symbolIcon.eventForeground\\\":\\\"#4b535d\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#702c00\\\",\\\"symbolIcon.fileForeground\\\":\\\"#603700\\\",\\\"symbolIcon.folderForeground\\\":\\\"#603700\\\",\\\"symbolIcon.functionForeground\\\":\\\"#512598\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#702c00\\\",\\\"symbolIcon.keyForeground\\\":\\\"#023b95\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#86061d\\\",\\\"symbolIcon.methodForeground\\\":\\\"#512598\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#86061d\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#86061d\\\",\\\"symbolIcon.nullForeground\\\":\\\"#023b95\\\",\\\"symbolIcon.numberForeground\\\":\\\"#024c1a\\\",\\\"symbolIcon.objectForeground\\\":\\\"#702c00\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#032563\\\",\\\"symbolIcon.packageForeground\\\":\\\"#702c00\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#702c00\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#023b95\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#023b95\\\",\\\"symbolIcon.stringForeground\\\":\\\"#032563\\\",\\\"symbolIcon.structForeground\\\":\\\"#702c00\\\",\\\"symbolIcon.textForeground\\\":\\\"#032563\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#032563\\\",\\\"symbolIcon.unitForeground\\\":\\\"#023b95\\\",\\\"symbolIcon.variableForeground\\\":\\\"#702c00\\\",\\\"tab.activeBackground\\\":\\\"#ffffff\\\",\\\"tab.activeBorder\\\":\\\"#ffffff\\\",\\\"tab.activeBorderTop\\\":\\\"#ef5b48\\\",\\\"tab.activeForeground\\\":\\\"#0e1116\\\",\\\"tab.border\\\":\\\"#20252c\\\",\\\"tab.hoverBackground\\\":\\\"#ffffff\\\",\\\"tab.inactiveBackground\\\":\\\"#ffffff\\\",\\\"tab.inactiveForeground\\\":\\\"#0e1116\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#ffffff\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#20252c\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#e7ecf0\\\",\\\"terminal.ansiBlack\\\":\\\"#0e1116\\\",\\\"terminal.ansiBlue\\\":\\\"#0349b4\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#4b535d\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#1168e3\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#3192aa\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#055d20\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#844ae7\\\",\\\"terminal.ansiBrightRed\\\":\\\"#86061d\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#88929d\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#4e2c00\\\",\\\"terminal.ansiCyan\\\":\\\"#1b7c83\\\",\\\"terminal.ansiGreen\\\":\\\"#024c1a\\\",\\\"terminal.ansiMagenta\\\":\\\"#622cbc\\\",\\\"terminal.ansiRed\\\":\\\"#a0111f\\\",\\\"terminal.ansiWhite\\\":\\\"#66707b\\\",\\\"terminal.ansiYellow\\\":\\\"#3f2200\\\",\\\"terminal.foreground\\\":\\\"#0e1116\\\",\\\"textBlockQuote.background\\\":\\\"#ffffff\\\",\\\"textBlockQuote.border\\\":\\\"#20252c\\\",\\\"textCodeBlock.background\\\":\\\"#acb6c033\\\",\\\"textLink.activeForeground\\\":\\\"#0349b4\\\",\\\"textLink.foreground\\\":\\\"#0349b4\\\",\\\"textPreformat.background\\\":\\\"#acb6c033\\\",\\\"textPreformat.foreground\\\":\\\"#0e1116\\\",\\\"textSeparator.foreground\\\":\\\"#88929d\\\",\\\"titleBar.activeBackground\\\":\\\"#ffffff\\\",\\\"titleBar.activeForeground\\\":\\\"#0e1116\\\",\\\"titleBar.border\\\":\\\"#20252c\\\",\\\"titleBar.inactiveBackground\\\":\\\"#ffffff\\\",\\\"titleBar.inactiveForeground\\\":\\\"#0e1116\\\",\\\"tree.indentGuidesStroke\\\":\\\"#88929d\\\",\\\"welcomePage.buttonBackground\\\":\\\"#e7ecf0\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#ced5dc\\\"},\\\"displayName\\\":\\\"GitHub Light High Contrast\\\",\\\"name\\\":\\\"github-light-high-contrast\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"string.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#66707b\\\"}},{\\\"scope\\\":[\\\"constant.other.placeholder\\\",\\\"constant.character\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a0111f\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"entity.name.constant\\\",\\\"variable.other.constant\\\",\\\"variable.other.enummember\\\",\\\"variable.language\\\",\\\"entity\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":[\\\"entity.name\\\",\\\"meta.export.default\\\",\\\"meta.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#702c00\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function\\\",\\\"meta.jsx.children\\\",\\\"meta.block\\\",\\\"meta.tag.attributes\\\",\\\"entity.name.constant\\\",\\\"meta.object.member\\\",\\\"meta.embedded.expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0e1116\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#622cbc\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"support.class.component\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#024c1a\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a0111f\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a0111f\\\"}},{\\\"scope\\\":[\\\"storage.modifier.package\\\",\\\"storage.modifier.import\\\",\\\"storage.type.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0e1116\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"string punctuation.section.embedded source\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#032563\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":\\\"meta.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#702c00\\\"}},{\\\"scope\\\":\\\"variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0e1116\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#6e011a\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#6e011a\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#6e011a\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#6e011a\\\"}},{\\\"scope\\\":\\\"carriage-return\\\",\\\"settings\\\":{\\\"background\\\":\\\"#a0111f\\\",\\\"content\\\":\\\"^M\\\",\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"message.error\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6e011a\\\"}},{\\\"scope\\\":\\\"string variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":[\\\"source.regexp\\\",\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#032563\\\"}},{\\\"scope\\\":[\\\"string.regexp.character-class\\\",\\\"string.regexp constant.character.escape\\\",\\\"string.regexp source.ruby.embedded\\\",\\\"string.regexp string.regexp.arbitrary-repitition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#032563\\\"}},{\\\"scope\\\":\\\"string.regexp constant.character.escape\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#024c1a\\\"}},{\\\"scope\\\":\\\"support.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":\\\"support.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#024c1a\\\"}},{\\\"scope\\\":\\\"meta.module-reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#702c00\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading entity.name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#024c1a\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#0e1116\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#0e1116\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"markup.strikethrough\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\",\\\"meta.diff.header.from-file\\\",\\\"punctuation.definition.deleted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#fff0ee\\\",\\\"foreground\\\":\\\"#6e011a\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a0111f\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.inserted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#d2fedb\\\",\\\"foreground\\\":\\\"#024c1a\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\",\\\"punctuation.definition.changed\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#ffc67b\\\",\\\"foreground\\\":\\\"#702c00\\\"}},{\\\"scope\\\":[\\\"markup.ignored\\\",\\\"markup.untracked\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#023b95\\\",\\\"foreground\\\":\\\"#e7ecf0\\\"}},{\\\"scope\\\":\\\"meta.diff.range\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#622cbc\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":\\\"meta.separator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":\\\"meta.output\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#023b95\\\"}},{\\\"scope\\\":[\\\"brackethighlighter.tag\\\",\\\"brackethighlighter.curly\\\",\\\"brackethighlighter.round\\\",\\\"brackethighlighter.square\\\",\\\"brackethighlighter.angle\\\",\\\"brackethighlighter.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4b535d\\\"}},{\\\"scope\\\":\\\"brackethighlighter.unmatched\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6e011a\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link\\\",\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#032563\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: houston */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBackground\\\":\\\"#343841\\\",\\\"activityBar.background\\\":\\\"#17191e\\\",\\\"activityBar.border\\\":\\\"#343841\\\",\\\"activityBar.foreground\\\":\\\"#eef0f9\\\",\\\"activityBar.inactiveForeground\\\":\\\"#858b98\\\",\\\"activityBarBadge.background\\\":\\\"#4bf3c8\\\",\\\"activityBarBadge.foreground\\\":\\\"#000000\\\",\\\"badge.background\\\":\\\"#bfc1c9\\\",\\\"badge.foreground\\\":\\\"#17191e\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#eef0f9\\\",\\\"breadcrumb.background\\\":\\\"#17191e\\\",\\\"breadcrumb.focusForeground\\\":\\\"#eef0f9\\\",\\\"breadcrumb.foreground\\\":\\\"#858b98\\\",\\\"button.background\\\":\\\"#4bf3c8\\\",\\\"button.foreground\\\":\\\"#17191e\\\",\\\"button.hoverBackground\\\":\\\"#31c19c\\\",\\\"button.secondaryBackground\\\":\\\"#545864\\\",\\\"button.secondaryForeground\\\":\\\"#eef0f9\\\",\\\"button.secondaryHoverBackground\\\":\\\"#858b98\\\",\\\"checkbox.background\\\":\\\"#23262d\\\",\\\"checkbox.border\\\":\\\"#00000000\\\",\\\"checkbox.foreground\\\":\\\"#eef0f9\\\",\\\"debugExceptionWidget.background\\\":\\\"#23262d\\\",\\\"debugExceptionWidget.border\\\":\\\"#8996d5\\\",\\\"debugToolBar.background\\\":\\\"#000\\\",\\\"debugToolBar.border\\\":\\\"#ffffff00\\\",\\\"diffEditor.border\\\":\\\"#ffffff00\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#4bf3c824\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#dc365724\\\",\\\"dropdown.background\\\":\\\"#23262d\\\",\\\"dropdown.border\\\":\\\"#00000000\\\",\\\"dropdown.foreground\\\":\\\"#eef0f9\\\",\\\"editor.background\\\":\\\"#17191e\\\",\\\"editor.findMatchBackground\\\":\\\"#515c6a\\\",\\\"editor.findMatchBorder\\\":\\\"#74879f\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#ea5c0055\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#ffffff00\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#23262d\\\",\\\"editor.findRangeHighlightBorder\\\":\\\"#b2434300\\\",\\\"editor.foldBackground\\\":\\\"#ad5dca26\\\",\\\"editor.foreground\\\":\\\"#eef0f9\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#5495d740\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#2a2d34\\\",\\\"editor.lineHighlightBackground\\\":\\\"#23262d\\\",\\\"editor.lineHighlightBorder\\\":\\\"#ffffff00\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#ffffff0b\\\",\\\"editor.rangeHighlightBorder\\\":\\\"#ffffff00\\\",\\\"editor.selectionBackground\\\":\\\"#ad5dca44\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#add6ff34\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#495f77\\\",\\\"editor.wordHighlightBackground\\\":\\\"#494949b8\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#004972b8\\\",\\\"editorBracketMatch.background\\\":\\\"#545864\\\",\\\"editorBracketMatch.border\\\":\\\"#ffffff00\\\",\\\"editorCodeLens.foreground\\\":\\\"#bfc1c9\\\",\\\"editorCursor.background\\\":\\\"#000000\\\",\\\"editorCursor.foreground\\\":\\\"#aeafad\\\",\\\"editorError.background\\\":\\\"#ffffff00\\\",\\\"editorError.border\\\":\\\"#ffffff00\\\",\\\"editorError.foreground\\\":\\\"#f4587e\\\",\\\"editorGroup.border\\\":\\\"#343841\\\",\\\"editorGroup.emptyBackground\\\":\\\"#17191e\\\",\\\"editorGroupHeader.border\\\":\\\"#ffffff00\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#23262d\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#ffffff00\\\",\\\"editorGutter.addedBackground\\\":\\\"#4bf3c8\\\",\\\"editorGutter.background\\\":\\\"#17191e\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#545864\\\",\\\"editorGutter.deletedBackground\\\":\\\"#f06788\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#545864\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#54b9ff\\\",\\\"editorHoverWidget.background\\\":\\\"#252526\\\",\\\"editorHoverWidget.border\\\":\\\"#454545\\\",\\\"editorHoverWidget.foreground\\\":\\\"#cccccc\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#858b98\\\",\\\"editorIndentGuide.background\\\":\\\"#343841\\\",\\\"editorInfo.background\\\":\\\"#4490bf00\\\",\\\"editorInfo.border\\\":\\\"#4490bf00\\\",\\\"editorInfo.foreground\\\":\\\"#54b9ff\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#858b98\\\",\\\"editorLineNumber.foreground\\\":\\\"#545864\\\",\\\"editorLink.activeForeground\\\":\\\"#54b9ff\\\",\\\"editorMarkerNavigation.background\\\":\\\"#23262d\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#dc3657\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#54b9ff\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#ffd493\\\",\\\"editorOverviewRuler.background\\\":\\\"#ffffff00\\\",\\\"editorOverviewRuler.border\\\":\\\"#ffffff00\\\",\\\"editorRuler.foreground\\\":\\\"#545864\\\",\\\"editorSuggestWidget.background\\\":\\\"#252526\\\",\\\"editorSuggestWidget.border\\\":\\\"#454545\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#d4d4d4\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#0097fb\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#062f4a\\\",\\\"editorWarning.background\\\":\\\"#a9904000\\\",\\\"editorWarning.border\\\":\\\"#ffffff00\\\",\\\"editorWarning.foreground\\\":\\\"#fbc23b\\\",\\\"editorWhitespace.foreground\\\":\\\"#cc75f450\\\",\\\"editorWidget.background\\\":\\\"#343841\\\",\\\"editorWidget.foreground\\\":\\\"#ffffff\\\",\\\"editorWidget.resizeBorder\\\":\\\"#cc75f4\\\",\\\"focusBorder\\\":\\\"#00daef\\\",\\\"foreground\\\":\\\"#cccccc\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#4bf3c8\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#00daef\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#f4587e\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#858b98\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#ffd493\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#c74e39\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#ffd493\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#54b9ff\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#4bf3c8\\\",\\\"icon.foreground\\\":\\\"#cccccc\\\",\\\"input.background\\\":\\\"#23262d\\\",\\\"input.border\\\":\\\"#bfc1c9\\\",\\\"input.foreground\\\":\\\"#eef0f9\\\",\\\"input.placeholderForeground\\\":\\\"#858b98\\\",\\\"inputOption.activeBackground\\\":\\\"#54b9ff\\\",\\\"inputOption.activeBorder\\\":\\\"#007acc00\\\",\\\"inputOption.activeForeground\\\":\\\"#17191e\\\",\\\"list.activeSelectionBackground\\\":\\\"#2d4860\\\",\\\"list.activeSelectionForeground\\\":\\\"#ffffff\\\",\\\"list.dropBackground\\\":\\\"#17191e\\\",\\\"list.focusBackground\\\":\\\"#54b9ff\\\",\\\"list.focusForeground\\\":\\\"#ffffff\\\",\\\"list.highlightForeground\\\":\\\"#ffffff\\\",\\\"list.hoverBackground\\\":\\\"#343841\\\",\\\"list.hoverForeground\\\":\\\"#eef0f9\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#17191e\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#eef0f9\\\",\\\"listFilterWidget.background\\\":\\\"#2d4860\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#dc3657\\\",\\\"listFilterWidget.outline\\\":\\\"#54b9ff\\\",\\\"menu.background\\\":\\\"#252526\\\",\\\"menu.border\\\":\\\"#00000085\\\",\\\"menu.foreground\\\":\\\"#cccccc\\\",\\\"menu.selectionBackground\\\":\\\"#094771\\\",\\\"menu.selectionBorder\\\":\\\"#00000000\\\",\\\"menu.selectionForeground\\\":\\\"#4bf3c8\\\",\\\"menu.separatorBackground\\\":\\\"#bbbbbb\\\",\\\"menubar.selectionBackground\\\":\\\"#ffffff1a\\\",\\\"menubar.selectionForeground\\\":\\\"#cccccc\\\",\\\"merge.commonContentBackground\\\":\\\"#282828\\\",\\\"merge.commonHeaderBackground\\\":\\\"#383838\\\",\\\"merge.currentContentBackground\\\":\\\"#27403b\\\",\\\"merge.currentHeaderBackground\\\":\\\"#367366\\\",\\\"merge.incomingContentBackground\\\":\\\"#28384b\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#395f8f\\\",\\\"minimap.background\\\":\\\"#17191e\\\",\\\"minimap.errorHighlight\\\":\\\"#dc3657\\\",\\\"minimap.findMatchHighlight\\\":\\\"#515c6a\\\",\\\"minimap.selectionHighlight\\\":\\\"#3757b942\\\",\\\"minimap.warningHighlight\\\":\\\"#fbc23b\\\",\\\"minimapGutter.addedBackground\\\":\\\"#4bf3c8\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#f06788\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#54b9ff\\\",\\\"notificationCenter.border\\\":\\\"#ffffff00\\\",\\\"notificationCenterHeader.background\\\":\\\"#343841\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#17191e\\\",\\\"notificationToast.border\\\":\\\"#ffffff00\\\",\\\"notifications.background\\\":\\\"#343841\\\",\\\"notifications.border\\\":\\\"#bfc1c9\\\",\\\"notifications.foreground\\\":\\\"#ffffff\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#f4587e\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#54b9ff\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#ff8551\\\",\\\"panel.background\\\":\\\"#23262d\\\",\\\"panel.border\\\":\\\"#17191e\\\",\\\"panelSection.border\\\":\\\"#17191e\\\",\\\"panelTitle.activeBorder\\\":\\\"#e7e7e7\\\",\\\"panelTitle.activeForeground\\\":\\\"#eef0f9\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#bfc1c9\\\",\\\"peekView.border\\\":\\\"#007acc\\\",\\\"peekViewEditor.background\\\":\\\"#001f33\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#ff8f0099\\\",\\\"peekViewEditor.matchHighlightBorder\\\":\\\"#ee931e\\\",\\\"peekViewEditorGutter.background\\\":\\\"#001f33\\\",\\\"peekViewResult.background\\\":\\\"#252526\\\",\\\"peekViewResult.fileForeground\\\":\\\"#ffffff\\\",\\\"peekViewResult.lineForeground\\\":\\\"#bbbbbb\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#f00\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#3399ff33\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#ffffff\\\",\\\"peekViewTitle.background\\\":\\\"#1e1e1e\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#ccccccb3\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#ffffff\\\",\\\"pickerGroup.border\\\":\\\"#ffffff00\\\",\\\"pickerGroup.foreground\\\":\\\"#eef0f9\\\",\\\"progressBar.background\\\":\\\"#4bf3c8\\\",\\\"scrollbar.shadow\\\":\\\"#000000\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#54b9ff66\\\",\\\"scrollbarSlider.background\\\":\\\"#54586466\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#545864B3\\\",\\\"selection.background\\\":\\\"#00daef56\\\",\\\"settings.focusedRowBackground\\\":\\\"#ffffff07\\\",\\\"settings.headerForeground\\\":\\\"#cccccc\\\",\\\"sideBar.background\\\":\\\"#23262d\\\",\\\"sideBar.border\\\":\\\"#17191e\\\",\\\"sideBar.dropBackground\\\":\\\"#17191e\\\",\\\"sideBar.foreground\\\":\\\"#bfc1c9\\\",\\\"sideBarSectionHeader.background\\\":\\\"#343841\\\",\\\"sideBarSectionHeader.border\\\":\\\"#17191e\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#eef0f9\\\",\\\"sideBarTitle.foreground\\\":\\\"#eef0f9\\\",\\\"statusBar.background\\\":\\\"#17548b\\\",\\\"statusBar.debuggingBackground\\\":\\\"#cc75f4\\\",\\\"statusBar.debuggingForeground\\\":\\\"#eef0f9\\\",\\\"statusBar.foreground\\\":\\\"#eef0f9\\\",\\\"statusBar.noFolderBackground\\\":\\\"#6c3c7d\\\",\\\"statusBar.noFolderForeground\\\":\\\"#eef0f9\\\",\\\"statusBarItem.activeBackground\\\":\\\"#ffffff25\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#ffffff1f\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#297763\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#eef0f9\\\",\\\"tab.activeBackground\\\":\\\"#17191e\\\",\\\"tab.activeBorder\\\":\\\"#ffffff00\\\",\\\"tab.activeBorderTop\\\":\\\"#eef0f9\\\",\\\"tab.activeForeground\\\":\\\"#eef0f9\\\",\\\"tab.border\\\":\\\"#17191e\\\",\\\"tab.hoverBackground\\\":\\\"#343841\\\",\\\"tab.hoverForeground\\\":\\\"#eef0f9\\\",\\\"tab.inactiveBackground\\\":\\\"#23262d\\\",\\\"tab.inactiveForeground\\\":\\\"#858b98\\\",\\\"terminal.ansiBlack\\\":\\\"#17191e\\\",\\\"terminal.ansiBlue\\\":\\\"#2b7eca\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#545864\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#54b9ff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#00daef\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#4bf3c8\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#cc75f4\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f4587e\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#fafafa\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#ffd493\\\",\\\"terminal.ansiCyan\\\":\\\"#24c0cf\\\",\\\"terminal.ansiGreen\\\":\\\"#23d18b\\\",\\\"terminal.ansiMagenta\\\":\\\"#ad5dca\\\",\\\"terminal.ansiRed\\\":\\\"#dc3657\\\",\\\"terminal.ansiWhite\\\":\\\"#eef0f9\\\",\\\"terminal.ansiYellow\\\":\\\"#ffc368\\\",\\\"terminal.border\\\":\\\"#80808059\\\",\\\"terminal.foreground\\\":\\\"#cccccc\\\",\\\"terminal.selectionBackground\\\":\\\"#ffffff40\\\",\\\"terminalCursor.background\\\":\\\"#0087ff\\\",\\\"terminalCursor.foreground\\\":\\\"#ffffff\\\",\\\"textLink.foreground\\\":\\\"#54b9ff\\\",\\\"titleBar.activeBackground\\\":\\\"#17191e\\\",\\\"titleBar.activeForeground\\\":\\\"#cccccc\\\",\\\"titleBar.border\\\":\\\"#00000000\\\",\\\"titleBar.inactiveBackground\\\":\\\"#3c3c3c99\\\",\\\"titleBar.inactiveForeground\\\":\\\"#cccccc99\\\",\\\"tree.indentGuidesStroke\\\":\\\"#545864\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#00000050\\\",\\\"widget.shadow\\\":\\\"#ffffff00\\\"},\\\"displayName\\\":\\\"Houston\\\",\\\"name\\\":\\\"houston\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"enumMember\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"},\\\"variable.constant\\\":{\\\"foreground\\\":\\\"#ffd493\\\"},\\\"variable.defaultLibrary\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},\\\"tokenColors\\\":[{\\\"scope\\\":\\\"punctuation.definition.delayed.unison,punctuation.definition.list.begin.unison,punctuation.definition.list.end.unison,punctuation.definition.ability.begin.unison,punctuation.definition.ability.end.unison,punctuation.operator.assignment.as.unison,punctuation.separator.pipe.unison,punctuation.separator.delimiter.unison,punctuation.definition.hash.unison\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"variable.other.generic-type.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"storage.type.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"support.variable.magic.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"punctuation.separator.period.python,punctuation.separator.element.python,punctuation.parenthesis.begin.python,punctuation.parenthesis.end.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"variable.parameter.function.language.special.self.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"storage.modifier.lifetime.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"support.function.std.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"entity.name.lifetime.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"variable.language.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"support.constant.edge\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"constant.other.character-class.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"keyword.operator.quantifier.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"punctuation.definition.string.begin,punctuation.definition.string.end\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"variable.parameter.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"comment markup.link\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#545864\\\"}},{\\\"scope\\\":\\\"markup.changed.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"meta.diff.header.from-file,meta.diff.header.to-file,punctuation.definition.from-file.diff,punctuation.definition.to-file.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"markup.inserted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"markup.deleted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"meta.function.c,meta.function.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"punctuation.section.block.begin.bracket.curly.cpp,punctuation.section.block.end.bracket.curly.cpp,punctuation.terminator.statement.c,punctuation.section.block.begin.bracket.curly.c,punctuation.section.block.end.bracket.curly.c,punctuation.section.parens.begin.bracket.round.c,punctuation.section.parens.end.bracket.round.c,punctuation.section.parameters.begin.bracket.round.c,punctuation.section.parameters.end.bracket.round.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"punctuation.separator.key-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"keyword.operator.expression.import\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"support.constant.math\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"support.constant.property.math\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"variable.other.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"storage.type.annotation.java\\\",\\\"storage.type.object.array.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"source.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"punctuation.section.block.begin.java,punctuation.section.block.end.java,punctuation.definition.method-parameters.begin.java,punctuation.definition.method-parameters.end.java,meta.method.identifier.java,punctuation.section.method.begin.java,punctuation.section.method.end.java,punctuation.terminator.java,punctuation.section.class.begin.java,punctuation.section.class.end.java,punctuation.section.inner-class.begin.java,punctuation.section.inner-class.end.java,meta.method-call.java,punctuation.section.class.begin.bracket.curly.java,punctuation.section.class.end.bracket.curly.java,punctuation.section.method.begin.bracket.curly.java,punctuation.section.method.end.bracket.curly.java,punctuation.separator.period.java,punctuation.bracket.angle.java,punctuation.definition.annotation.java,meta.method.body.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"meta.method.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"storage.modifier.import.java,storage.type.java,storage.type.generic.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"keyword.operator.instanceof.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"meta.definition.variable.name.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"keyword.operator.logical\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"keyword.operator.bitwise\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"keyword.operator.channel\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"support.constant.property-value.scss,support.constant.property-value.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"keyword.operator.css,keyword.operator.scss,keyword.operator.less\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"support.constant.color.w3c-standard-color-name.css,support.constant.color.w3c-standard-color-name.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"punctuation.separator.list.comma.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"support.constant.color.w3c-standard-color-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"support.type.vendored.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"support.module.node,support.type.object.module,support.module.node\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"entity.name.type.module\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"variable.other.readwrite,meta.object-literal.key,support.variable.property,support.variable.object.process,support.variable.object.node\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"support.constant.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":[\\\"keyword.operator.expression.instanceof\\\",\\\"keyword.operator.new\\\",\\\"keyword.operator.ternary\\\",\\\"keyword.operator.optional\\\",\\\"keyword.operator.expression.keyof\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"support.type.object.console\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"support.variable.property.process\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"entity.name.function,support.function.console\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"keyword.operator.misc.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"keyword.operator.sigil.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"keyword.operator.delete\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"support.type.object.dom\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"support.variable.dom,support.variable.property.dom\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"keyword.operator.arithmetic,keyword.operator.comparison,keyword.operator.decrement,keyword.operator.increment,keyword.operator.relational\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"keyword.operator.assignment.c,keyword.operator.comparison.c,keyword.operator.c,keyword.operator.increment.c,keyword.operator.decrement.c,keyword.operator.bitwise.shift.c,keyword.operator.assignment.cpp,keyword.operator.comparison.cpp,keyword.operator.cpp,keyword.operator.increment.cpp,keyword.operator.decrement.cpp,keyword.operator.bitwise.shift.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"punctuation.separator.delimiter\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"punctuation.separator.c,punctuation.separator.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"support.type.posix-reserved.c,support.type.posix-reserved.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"keyword.operator.sizeof.c,keyword.operator.sizeof.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"variable.parameter.function.language.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"support.type.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"keyword.operator.logical.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"variable.parameter.function.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"punctuation.definition.arguments.begin.python,punctuation.definition.arguments.end.python,punctuation.separator.arguments.python,punctuation.definition.list.begin.python,punctuation.definition.list.end.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"meta.function-call.generic.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"constant.character.format.placeholder.other.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"keyword.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"keyword.operator.assignment.compound\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"keyword.operator.assignment.compound.js,keyword.operator.assignment.compound.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"entity.name.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"variable.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"variable.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"token.variable.parameter.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"import.storage.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"token.package.keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"token.package\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.require\\\",\\\"support.function.any-method\\\",\\\"variable.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"entity.name.type.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"support.class, entity.name.type.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"entity.name.class.identifier.namespace.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"entity.name.class\\\",\\\"variable.other.class.js\\\",\\\"variable.other.class.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"variable.other.class.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"entity.name.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"keyword.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"control.elements, keyword.operator.less\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"keyword.other.special-method\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"storage\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"token.storage\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"keyword.operator.expression.delete,keyword.operator.expression.in,keyword.operator.expression.of,keyword.operator.expression.instanceof,keyword.operator.new,keyword.operator.expression.typeof,keyword.operator.expression.void\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"token.storage.type.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"support.type.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"support.constant.property-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"support.constant.font-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"meta.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"entity.other.inherited-class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"constant.other.symbol\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"punctuation.definition.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"source.astro.meta.attribute.client:idle.html\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"string.quoted.double.html,string.quoted.single.html,string.template.html,punctuation.definition.string.begin.html,punctuation.definition.string.end.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.id\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\",\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.class.css\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\",\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"meta.selector\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"markup.heading punctuation.definition.heading, entity.name.section\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"keyword.other.unit\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"markup.bold,todo.bold\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"punctuation.definition.bold\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"markup.italic, punctuation.definition.italic,todo.emphasis\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"emphasis md\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"entity.name.section.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"punctuation.definition.heading.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"markup.heading.setext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"punctuation.definition.bold.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.string.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string.begin.markdown\\\",\\\"punctuation.definition.string.end.markdown\\\",\\\"punctuation.definition.metadata.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.list.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"punctuation.definition.metadata.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"markup.underline.link.markdown,markup.underline.link.image.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"string.other.link.title.markdown,string.other.link.description.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"string.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"punctuation.section.embedded, variable.interpolation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"punctuation.section.embedded.begin,punctuation.section.embedded.end\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"invalid.illegal.bad-ampersand.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"source.json meta.structure.dictionary.json > string.quoted.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cc75f4\\\"}},{\\\"scope\\\":\\\"source.json meta.structure.dictionary.json > string.quoted.json > punctuation.string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"source.json meta.structure.dictionary.json > value.json > string.quoted.json,source.json meta.structure.array.json > value.json > string.quoted.json,source.json meta.structure.dictionary.json > value.json > string.quoted.json > punctuation,source.json meta.structure.array.json > value.json > string.quoted.json > punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"source.json meta.structure.dictionary.json > constant.language.json,source.json meta.structure.array.json > constant.language.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"text.html.laravel-blade source.php.embedded.line.html entity.name.tag.laravel-blade\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"text.html.laravel-blade source.php.embedded.line.html support.constant.laravel-blade\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"support.other.namespace.use.php,support.other.namespace.use-as.php,support.other.namespace.php,entity.other.alias.php,meta.interface.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"keyword.operator.error-control.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"keyword.operator.type.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"punctuation.section.array.begin.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"punctuation.section.array.end.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"invalid.illegal.non-null-typehinted.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f44747\\\"}},{\\\"scope\\\":\\\"storage.type.php,meta.other.type.phpdoc.php,keyword.other.type.php,keyword.other.array.phpdoc.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"meta.function-call.php,meta.function-call.object.php,meta.function-call.static.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php,punctuation.definition.parameters.end.bracket.round.php,punctuation.separator.delimiter.php,punctuation.section.scope.begin.php,punctuation.section.scope.end.php,punctuation.terminator.expression.php,punctuation.definition.arguments.begin.bracket.round.php,punctuation.definition.arguments.end.bracket.round.php,punctuation.definition.storage-type.begin.bracket.round.php,punctuation.definition.storage-type.end.bracket.round.php,punctuation.definition.array.begin.bracket.round.php,punctuation.definition.array.end.bracket.round.php,punctuation.definition.begin.bracket.round.php,punctuation.definition.end.bracket.round.php,punctuation.definition.begin.bracket.curly.php,punctuation.definition.end.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php,punctuation.definition.section.switch-block.start.bracket.curly.php,punctuation.definition.section.switch-block.begin.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"support.constant.core.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"support.constant.ext.php,support.constant.std.php,support.constant.core.php,support.constant.parser-token.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"entity.name.goto-label.php,support.other.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"keyword.operator.logical.php,keyword.operator.bitwise.php,keyword.operator.arithmetic.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"keyword.operator.regexp.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"keyword.operator.comparison.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"keyword.operator.heredoc.php,keyword.operator.nowdoc.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":\\\"meta.function.decorator.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"support.token.decorator.python,meta.function.decorator.identifier.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"function.parameter\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"function.brace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"function.parameter.ruby, function.parameter.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"constant.language.symbol.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"rgb-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"inline-color-decoration rgb-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"less rgb-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"selector.sass\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"support.type.primitive.ts,support.type.builtin.ts,support.type.primitive.tsx,support.type.builtin.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"block.scope.end,block.scope.begin\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"storage.type.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":\\\"entity.name.variable.local.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":\\\"token.info-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":\\\"token.warn-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":\\\"token.error-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f44747\\\"}},{\\\"scope\\\":\\\"token.debug-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.template-expression.begin\\\",\\\"punctuation.definition.template-expression.end\\\",\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":[\\\"meta.template.expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":[\\\"keyword.operator.module\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":[\\\"support.type.type.flowtype\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":[\\\"support.type.primitive\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"meta.property.object\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\"keyword.other.template.begin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":[\\\"keyword.other.template.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":[\\\"keyword.other.substitution.begin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":[\\\"keyword.other.substitution.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":[\\\"keyword.operator.assignment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":[\\\"keyword.operator.assignment.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"keyword.operator.arithmetic.go\\\",\\\"keyword.operator.address.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":[\\\"entity.name.package.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"support.type.prelude.elm\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":[\\\"support.constant.elm\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":[\\\"punctuation.quasi.element\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":[\\\"constant.character.entity\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.pseudo-element\\\",\\\"entity.other.attribute-name.pseudo-class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":[\\\"entity.global.clojure\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"meta.symbol.clojure\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\"constant.keyword.clojure\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":[\\\"meta.arguments.coffee\\\",\\\"variable.parameter.function.coffee\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\"source.ini\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":[\\\"meta.scope.prerequisites.makefile\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\"source.makefile\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"storage.modifier.import.groovy\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"meta.method.groovy\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":[\\\"meta.definition.variable.name.groovy\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\"meta.definition.class.inherited.classes.groovy\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":[\\\"support.variable.semantic.hlsl\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"support.type.texture.hlsl\\\",\\\"support.type.sampler.hlsl\\\",\\\"support.type.object.hlsl\\\",\\\"support.type.object.rw.hlsl\\\",\\\"support.type.fx.hlsl\\\",\\\"support.type.object.hlsl\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":[\\\"text.variable\\\",\\\"text.bracketed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\"support.type.swift\\\",\\\"support.type.vb.asp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"entity.name.function.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"entity.name.class.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":[\\\"constant.character.character-class.regexp.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\"constant.regexp.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#54b9ff\\\"}},{\\\"scope\\\":[\\\"keyword.control.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":[\\\"invalid.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.quote.markdown.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.list.markdown.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f98f\\\"}},{\\\"scope\\\":[\\\"constant.character.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":[\\\"accent.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00daef\\\"}},{\\\"scope\\\":[\\\"wikiword.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffd493\\\"}},{\\\"scope\\\":[\\\"constant.other.color.rgb-value.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.tag.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#545864\\\"}},{\\\"scope\\\":[\\\"entity.name.label.cs\\\",\\\"entity.name.scope-resolution.function.call\\\",\\\"entity.name.scope-resolution.function.definition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#acafff\\\"}},{\\\"scope\\\":[\\\"entity.name.label.cs\\\",\\\"markup.heading.setext.1.markdown\\\",\\\"markup.heading.setext.2.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4bf3c8\\\"}},{\\\"scope\\\":[\\\" meta.brace.square\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"comment, punctuation.definition.comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#eef0f98f\\\"}},{\\\"scope\\\":\\\"markup.quote.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f98f\\\"}},{\\\"scope\\\":\\\"punctuation.definition.block.sequence.item.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":[\\\"constant.language.symbol.elixir\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eef0f9\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.js,entity.other.attribute-name.ts,entity.other.attribute-name.jsx,entity.other.attribute-name.tsx,variable.parameter,variable.language.super\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"comment.line.double-slash,comment.block.documentation\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"keyword.control.import.python,keyword.control.flow.python\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.italic.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: kanagawa-dragon */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#282727\\\",\\\"activityBar.foreground\\\":\\\"#C5C9C5\\\",\\\"activityBarBadge.background\\\":\\\"#658594\\\",\\\"activityBarBadge.foreground\\\":\\\"#C5C9C5\\\",\\\"badge.background\\\":\\\"#282727\\\",\\\"button.background\\\":\\\"#282727\\\",\\\"button.foreground\\\":\\\"#C8C093\\\",\\\"button.secondaryBackground\\\":\\\"#223249\\\",\\\"button.secondaryForeground\\\":\\\"#C5C9C5\\\",\\\"checkbox.border\\\":\\\"#223249\\\",\\\"debugToolBar.background\\\":\\\"#0D0C0C\\\",\\\"descriptionForeground\\\":\\\"#C5C9C5\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#2B332880\\\",\\\"dropdown.background\\\":\\\"#0D0C0C\\\",\\\"dropdown.border\\\":\\\"#0D0C0C\\\",\\\"editor.background\\\":\\\"#181616\\\",\\\"editor.findMatchBackground\\\":\\\"#2D4F67\\\",\\\"editor.findMatchBorder\\\":\\\"#FF9E3B\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#2D4F6780\\\",\\\"editor.foreground\\\":\\\"#C5C9C5\\\",\\\"editor.lineHighlightBackground\\\":\\\"#393836\\\",\\\"editor.selectionBackground\\\":\\\"#223249\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#39383680\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#625E5A\\\",\\\"editor.wordHighlightBackground\\\":\\\"#3938364D\\\",\\\"editor.wordHighlightBorder\\\":\\\"#625E5A\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#3938364D\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#625E5A\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#8992A7\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#B6927B\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#8BA4B0\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#A292A3\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#C4B28A\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#8EA4A2\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#C4746E\\\",\\\"editorBracketMatch.background\\\":\\\"#0D0C0C\\\",\\\"editorBracketMatch.border\\\":\\\"#625E5A\\\",\\\"editorBracketPairGuide.activeBackground1\\\":\\\"#8992A7\\\",\\\"editorBracketPairGuide.activeBackground2\\\":\\\"#B6927B\\\",\\\"editorBracketPairGuide.activeBackground3\\\":\\\"#8BA4B0\\\",\\\"editorBracketPairGuide.activeBackground4\\\":\\\"#A292A3\\\",\\\"editorBracketPairGuide.activeBackground5\\\":\\\"#C4B28A\\\",\\\"editorBracketPairGuide.activeBackground6\\\":\\\"#8EA4A2\\\",\\\"editorCursor.background\\\":\\\"#181616\\\",\\\"editorCursor.foreground\\\":\\\"#C5C9C5\\\",\\\"editorError.foreground\\\":\\\"#E82424\\\",\\\"editorGroup.border\\\":\\\"#0D0C0C\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#0D0C0C\\\",\\\"editorGutter.addedBackground\\\":\\\"#76946A\\\",\\\"editorGutter.deletedBackground\\\":\\\"#C34043\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#DCA561\\\",\\\"editorHoverWidget.background\\\":\\\"#181616\\\",\\\"editorHoverWidget.border\\\":\\\"#282727\\\",\\\"editorHoverWidget.highlightForeground\\\":\\\"#658594\\\",\\\"editorIndentGuide.activeBackground1\\\":\\\"#393836\\\",\\\"editorIndentGuide.background1\\\":\\\"#282727\\\",\\\"editorInlayHint.background\\\":\\\"#181616\\\",\\\"editorInlayHint.foreground\\\":\\\"#737C73\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#FFA066\\\",\\\"editorLineNumber.foreground\\\":\\\"#625E5A\\\",\\\"editorMarkerNavigation.background\\\":\\\"#393836\\\",\\\"editorRuler.foreground\\\":\\\"#393836\\\",\\\"editorSuggestWidget.background\\\":\\\"#223249\\\",\\\"editorSuggestWidget.border\\\":\\\"#223249\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#2D4F67\\\",\\\"editorWarning.foreground\\\":\\\"#FF9E3B\\\",\\\"editorWhitespace.foreground\\\":\\\"#181616\\\",\\\"editorWidget.background\\\":\\\"#181616\\\",\\\"focusBorder\\\":\\\"#223249\\\",\\\"foreground\\\":\\\"#C5C9C5\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#737C73\\\",\\\"input.background\\\":\\\"#0D0C0C\\\",\\\"list.activeSelectionBackground\\\":\\\"#393836\\\",\\\"list.activeSelectionForeground\\\":\\\"#C5C9C5\\\",\\\"list.focusBackground\\\":\\\"#282727\\\",\\\"list.focusForeground\\\":\\\"#C5C9C5\\\",\\\"list.highlightForeground\\\":\\\"#8BA4B0\\\",\\\"list.hoverBackground\\\":\\\"#393836\\\",\\\"list.hoverForeground\\\":\\\"#C5C9C5\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#282727\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#C5C9C5\\\",\\\"list.warningForeground\\\":\\\"#FF9E3B\\\",\\\"menu.background\\\":\\\"#393836\\\",\\\"menu.border\\\":\\\"#0D0C0C\\\",\\\"menu.foreground\\\":\\\"#C5C9C5\\\",\\\"menu.selectionBackground\\\":\\\"#0D0C0C\\\",\\\"menu.selectionForeground\\\":\\\"#C5C9C5\\\",\\\"menu.separatorBackground\\\":\\\"#625E5A\\\",\\\"menubar.selectionBackground\\\":\\\"#0D0C0C\\\",\\\"menubar.selectionForeground\\\":\\\"#C5C9C5\\\",\\\"minimapGutter.addedBackground\\\":\\\"#76946A\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#C34043\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#DCA561\\\",\\\"panel.border\\\":\\\"#0D0C0C\\\",\\\"panelSectionHeader.background\\\":\\\"#181616\\\",\\\"peekView.border\\\":\\\"#625E5A\\\",\\\"peekViewEditor.background\\\":\\\"#282727\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#2D4F67\\\",\\\"peekViewResult.background\\\":\\\"#393836\\\",\\\"scrollbar.shadow\\\":\\\"#393836\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#28272780\\\",\\\"scrollbarSlider.background\\\":\\\"#625E5A66\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#625E5A80\\\",\\\"settings.focusedRowBackground\\\":\\\"#393836\\\",\\\"settings.headerForeground\\\":\\\"#C5C9C5\\\",\\\"sideBar.background\\\":\\\"#181616\\\",\\\"sideBar.border\\\":\\\"#0D0C0C\\\",\\\"sideBar.foreground\\\":\\\"#C5C9C5\\\",\\\"sideBarSectionHeader.background\\\":\\\"#393836\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#C5C9C5\\\",\\\"statusBar.background\\\":\\\"#0D0C0C\\\",\\\"statusBar.debuggingBackground\\\":\\\"#E82424\\\",\\\"statusBar.debuggingBorder\\\":\\\"#8992A7\\\",\\\"statusBar.debuggingForeground\\\":\\\"#C5C9C5\\\",\\\"statusBar.foreground\\\":\\\"#C8C093\\\",\\\"statusBar.noFolderBackground\\\":\\\"#181616\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#393836\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#2D4F67\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#C5C9C5\\\",\\\"tab.activeBackground\\\":\\\"#282727\\\",\\\"tab.activeForeground\\\":\\\"#8BA4B0\\\",\\\"tab.border\\\":\\\"#282727\\\",\\\"tab.hoverBackground\\\":\\\"#393836\\\",\\\"tab.inactiveBackground\\\":\\\"#1D1C19\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#181616\\\",\\\"terminal.ansiBlack\\\":\\\"#0D0C0C\\\",\\\"terminal.ansiBlue\\\":\\\"#8BA4B0\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#A6A69C\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#7FB4CA\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#7AA89F\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#87A987\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#938AA9\\\",\\\"terminal.ansiBrightRed\\\":\\\"#E46876\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#C5C9C5\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#E6C384\\\",\\\"terminal.ansiCyan\\\":\\\"#8EA4A2\\\",\\\"terminal.ansiGreen\\\":\\\"#8A9A7B\\\",\\\"terminal.ansiMagenta\\\":\\\"#A292A3\\\",\\\"terminal.ansiRed\\\":\\\"#C4746E\\\",\\\"terminal.ansiWhite\\\":\\\"#C8C093\\\",\\\"terminal.ansiYellow\\\":\\\"#C4B28A\\\",\\\"terminal.background\\\":\\\"#181616\\\",\\\"terminal.border\\\":\\\"#0D0C0C\\\",\\\"terminal.foreground\\\":\\\"#C5C9C5\\\",\\\"terminal.selectionBackground\\\":\\\"#223249\\\",\\\"textBlockQuote.background\\\":\\\"#181616\\\",\\\"textBlockQuote.border\\\":\\\"#0D0C0C\\\",\\\"textLink.foreground\\\":\\\"#6A9589\\\",\\\"textPreformat.foreground\\\":\\\"#FF9E3B\\\",\\\"titleBar.activeBackground\\\":\\\"#393836\\\",\\\"titleBar.activeForeground\\\":\\\"#C5C9C5\\\",\\\"titleBar.inactiveBackground\\\":\\\"#181616\\\",\\\"titleBar.inactiveForeground\\\":\\\"#C5C9C5\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#181616\\\"},\\\"displayName\\\":\\\"Kanagawa Dragon\\\",\\\"name\\\":\\\"kanagawa-dragon\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"arithmetic\\\":\\\"#B98D7B\\\",\\\"function\\\":\\\"#8BA4B0\\\",\\\"keyword.controlFlow\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#8992A7\\\"},\\\"macro\\\":\\\"#C4746E\\\",\\\"method\\\":\\\"#949FB5\\\",\\\"operator\\\":\\\"#B98D7B\\\",\\\"parameter\\\":\\\"#A6A69C\\\",\\\"parameter.declaration\\\":\\\"#A6A69C\\\",\\\"parameter.definition\\\":\\\"#A6A69C\\\",\\\"variable\\\":\\\"#C5C9C5\\\",\\\"variable.readonly\\\":\\\"#C5C9C5\\\",\\\"variable.readonly.defaultLibrary\\\":\\\"#C5C9C5\\\",\\\"variable.readonly.local\\\":\\\"#C5C9C5\\\"},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#737C73\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"string constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C5C9C5\\\"}},{\\\"scope\\\":[\\\"constant.other.color\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B6927B\\\"}},{\\\"scope\\\":[\\\"invalid\\\",\\\"invalid.illegal\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E82424\\\"}},{\\\"scope\\\":[\\\"storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"keyword.control.flow\\\",\\\"keyword.control.conditional\\\",\\\"keyword.control.loop\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\",\\\"constant.other.color\\\",\\\"meta.tag\\\",\\\"keyword.other.template\\\",\\\"keyword.other.substitution\\\",\\\"keyword.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"keyword.other.definition.ini\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B6927B\\\"}},{\\\"scope\\\":[\\\"keyword.control.trycatch\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#C4746E\\\"}},{\\\"scope\\\":[\\\"keyword.other.unit\\\",\\\"keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4B28A\\\"}},{\\\"scope\\\":[\\\"punctuation\\\",\\\"punctuation.definition.tag\\\",\\\"punctuation.separator.inheritance.php\\\",\\\"punctuation.definition.tag.html\\\",\\\"punctuation.definition.tag.begin.html\\\",\\\"punctuation.definition.tag.end.html\\\",\\\"punctuation.section.embedded\\\",\\\"meta.brace\\\",\\\"keyword.operator.type.annotation\\\",\\\"keyword.operator.namespace\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9E9B93\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"meta.tag.sgml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4B28A\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.function-call\\\",\\\"variable.function\\\",\\\"support.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8BA4B0\\\"}},{\\\"scope\\\":[\\\"keyword.other.special-method\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#949FB5\\\"}},{\\\"scope\\\":[\\\"entity.name.function.macro\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4746E\\\"}},{\\\"scope\\\":[\\\"meta.block variable.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C5C9C5\\\"}},{\\\"scope\\\":[\\\"variable.other.enummember\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B6927B\\\"}},{\\\"scope\\\":[\\\"support.other.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C5C9C5\\\"}},{\\\"scope\\\":[\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#949FB5\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"constant.language\\\",\\\"support.constant\\\",\\\"constant.character\\\",\\\"constant.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B6927B\\\"}},{\\\"scope\\\":[\\\"constant.language.boolean\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B6927B\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A292A3\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"punctuation.definition.string\\\",\\\"constant.other.symbol\\\",\\\"constant.other.key\\\",\\\"entity.other.inherited-class\\\",\\\"markup.heading\\\",\\\"markup.inserted.git_gutter\\\",\\\"meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js\\\",\\\"markup.inline.raw.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8A9A7B\\\"}},{\\\"scope\\\":[\\\"entity.name\\\",\\\"support.type\\\",\\\"support.class\\\",\\\"support.other.namespace.use.php\\\",\\\"meta.use.php\\\",\\\"support.other.namespace.php\\\",\\\"support.type.sys-types\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8EA4A2\\\"}},{\\\"scope\\\":[\\\"entity.name.type.module\\\",\\\"entity.name.namespace\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4B28A\\\"}},{\\\"scope\\\":[\\\"entity.name.import.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8A9A7B\\\"}},{\\\"scope\\\":[\\\"keyword.blade\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"variable.other.property\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4B28A\\\"}},{\\\"scope\\\":[\\\"keyword.control.import\\\",\\\"keyword.import\\\",\\\"meta.import\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B6927B\\\"}},{\\\"scope\\\":[\\\"source.css support.type.property-name\\\",\\\"source.sass support.type.property-name\\\",\\\"source.scss support.type.property-name\\\",\\\"source.less support.type.property-name\\\",\\\"source.stylus support.type.property-name\\\",\\\"source.postcss support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8EA4A2\\\"}},{\\\"scope\\\":[\\\"entity.name.module.js\\\",\\\"variable.import.parameter.js\\\",\\\"variable.other.class.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4746E\\\"}},{\\\"scope\\\":[\\\"variable.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4746E\\\"}},{\\\"scope\\\":[\\\"entity.name.method.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#949FB5\\\"}},{\\\"scope\\\":[\\\"meta.class-method.js entity.name.function.js\\\",\\\"variable.function.constructor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#949FB5\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4B28A\\\"}},{\\\"scope\\\":[\\\"source.sass keyword.control\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#949FB5\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#76946A\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C34043\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCA561\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B98D7B\\\"}},{\\\"scope\\\":[\\\"constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#949FB5\\\"}},{\\\"scope\\\":[\\\"*url*\\\",\\\"*link*\\\",\\\"*uri*\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"tag.decorator.js entity.name.tag.js\\\",\\\"tag.decorator.js punctuation.definition.tag.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"source.js constant.other.object.key.js string.unquoted.label.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4746E\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A292A3\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4B28A\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B6927B\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4746E\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B6927B\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8BA4B0\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A292A3\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8A9A7B\\\"}},{\\\"scope\\\":[\\\"meta.tag JSXNested\\\",\\\"meta.jsx.children\\\",\\\"text.html\\\",\\\"text.log\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C5C9C5\\\"}},{\\\"scope\\\":[\\\"text.html.markdown\\\",\\\"punctuation.definition.list_item.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C5C9C5\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"markdown.heading\\\",\\\"entity.name.section.markdown\\\",\\\"markup.heading.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8BA4B0\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#C4746E\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"markup.bold markup.italic\\\",\\\"markup.italic markup.bold\\\",\\\"markup.quote markup.bold\\\",\\\"markup.bold markup.italic string\\\",\\\"markup.italic markup.bold string\\\",\\\"markup.quote markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#C4746E\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#949FB5\\\"}},{\\\"scope\\\":[\\\"markup.quote punctuation.definition.blockquote.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#737C73\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"string.other.link.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B6927B\\\"}},{\\\"scope\\\":[\\\"string.other.link.description.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C4B28A\\\"}},{\\\"scope\\\":[\\\"markup.raw.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8992A7\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#737C73\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#737C73\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\",\\\"variable.language.fenced.markdown\\\",\\\"punctuation.section.class.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C5C9C5\\\"}},{\\\"scope\\\":[\\\"variable.language.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#737C73\\\"}},{\\\"scope\\\":[\\\"meta.separator\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#9E9B93\\\"}},{\\\"scope\\\":[\\\"markup.table\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C5C9C5\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: kanagawa-lotus */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#E7DBA0\\\",\\\"activityBar.foreground\\\":\\\"#545464\\\",\\\"activityBarBadge.background\\\":\\\"#5A7785\\\",\\\"activityBarBadge.foreground\\\":\\\"#545464\\\",\\\"badge.background\\\":\\\"#E7DBA0\\\",\\\"button.background\\\":\\\"#E7DBA0\\\",\\\"button.foreground\\\":\\\"#43436C\\\",\\\"button.secondaryBackground\\\":\\\"#C7D7E0\\\",\\\"button.secondaryForeground\\\":\\\"#545464\\\",\\\"checkbox.border\\\":\\\"#C7D7E0\\\",\\\"debugToolBar.background\\\":\\\"#D5CEA3\\\",\\\"descriptionForeground\\\":\\\"#545464\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#B7D0AE80\\\",\\\"dropdown.background\\\":\\\"#D5CEA3\\\",\\\"dropdown.border\\\":\\\"#D5CEA3\\\",\\\"editor.background\\\":\\\"#F2ECBC\\\",\\\"editor.findMatchBackground\\\":\\\"#B5CBD2\\\",\\\"editor.findMatchBorder\\\":\\\"#E98A00\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#B5CBD280\\\",\\\"editor.foreground\\\":\\\"#545464\\\",\\\"editor.lineHighlightBackground\\\":\\\"#E4D794\\\",\\\"editor.selectionBackground\\\":\\\"#C7D7E0\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#E4D79480\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#766B90\\\",\\\"editor.wordHighlightBackground\\\":\\\"#E4D7944D\\\",\\\"editor.wordHighlightBorder\\\":\\\"#766B90\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#E4D7944D\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#766B90\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#624C83\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#CC6D00\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#4D699B\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#B35B79\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#77713F\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#597B75\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#D9A594\\\",\\\"editorBracketMatch.background\\\":\\\"#D5CEA3\\\",\\\"editorBracketMatch.border\\\":\\\"#766B90\\\",\\\"editorBracketPairGuide.activeBackground1\\\":\\\"#624C83\\\",\\\"editorBracketPairGuide.activeBackground2\\\":\\\"#CC6D00\\\",\\\"editorBracketPairGuide.activeBackground3\\\":\\\"#4D699B\\\",\\\"editorBracketPairGuide.activeBackground4\\\":\\\"#B35B79\\\",\\\"editorBracketPairGuide.activeBackground5\\\":\\\"#77713F\\\",\\\"editorBracketPairGuide.activeBackground6\\\":\\\"#597B75\\\",\\\"editorCursor.background\\\":\\\"#F2ECBC\\\",\\\"editorCursor.foreground\\\":\\\"#545464\\\",\\\"editorError.foreground\\\":\\\"#E82424\\\",\\\"editorGroup.border\\\":\\\"#D5CEA3\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#D5CEA3\\\",\\\"editorGutter.addedBackground\\\":\\\"#6E915F\\\",\\\"editorGutter.deletedBackground\\\":\\\"#D7474B\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#DE9800\\\",\\\"editorHoverWidget.background\\\":\\\"#F2ECBC\\\",\\\"editorHoverWidget.border\\\":\\\"#E7DBA0\\\",\\\"editorHoverWidget.highlightForeground\\\":\\\"#5A7785\\\",\\\"editorIndentGuide.activeBackground1\\\":\\\"#E4D794\\\",\\\"editorIndentGuide.background1\\\":\\\"#E7DBA0\\\",\\\"editorInlayHint.background\\\":\\\"#F2ECBC\\\",\\\"editorInlayHint.foreground\\\":\\\"#716E61\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#CC6D00\\\",\\\"editorLineNumber.foreground\\\":\\\"#766B90\\\",\\\"editorMarkerNavigation.background\\\":\\\"#E4D794\\\",\\\"editorRuler.foreground\\\":\\\"#ff0000\\\",\\\"editorSuggestWidget.background\\\":\\\"#C7D7E0\\\",\\\"editorSuggestWidget.border\\\":\\\"#C7D7E0\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#B5CBD2\\\",\\\"editorWarning.foreground\\\":\\\"#E98A00\\\",\\\"editorWhitespace.foreground\\\":\\\"#F2ECBC\\\",\\\"editorWidget.background\\\":\\\"#F2ECBC\\\",\\\"focusBorder\\\":\\\"#C7D7E0\\\",\\\"foreground\\\":\\\"#545464\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#716E61\\\",\\\"input.background\\\":\\\"#D5CEA3\\\",\\\"list.activeSelectionBackground\\\":\\\"#E4D794\\\",\\\"list.activeSelectionForeground\\\":\\\"#545464\\\",\\\"list.focusBackground\\\":\\\"#E7DBA0\\\",\\\"list.focusForeground\\\":\\\"#545464\\\",\\\"list.highlightForeground\\\":\\\"#4D699B\\\",\\\"list.hoverBackground\\\":\\\"#E4D794\\\",\\\"list.hoverForeground\\\":\\\"#545464\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#E7DBA0\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#545464\\\",\\\"list.warningForeground\\\":\\\"#E98A00\\\",\\\"menu.background\\\":\\\"#E4D794\\\",\\\"menu.border\\\":\\\"#D5CEA3\\\",\\\"menu.foreground\\\":\\\"#545464\\\",\\\"menu.selectionBackground\\\":\\\"#D5CEA3\\\",\\\"menu.selectionForeground\\\":\\\"#545464\\\",\\\"menu.separatorBackground\\\":\\\"#766B90\\\",\\\"menubar.selectionBackground\\\":\\\"#D5CEA3\\\",\\\"menubar.selectionForeground\\\":\\\"#545464\\\",\\\"minimapGutter.addedBackground\\\":\\\"#6E915F\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#D7474B\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#DE9800\\\",\\\"panel.border\\\":\\\"#D5CEA3\\\",\\\"panelSectionHeader.background\\\":\\\"#F2ECBC\\\",\\\"peekView.border\\\":\\\"#766B90\\\",\\\"peekViewEditor.background\\\":\\\"#E7DBA0\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#B5CBD2\\\",\\\"peekViewResult.background\\\":\\\"#E4D794\\\",\\\"scrollbar.shadow\\\":\\\"#E4D794\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#E7DBA080\\\",\\\"scrollbarSlider.background\\\":\\\"#766B9066\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#766B9080\\\",\\\"settings.focusedRowBackground\\\":\\\"#E4D794\\\",\\\"settings.headerForeground\\\":\\\"#545464\\\",\\\"sideBar.background\\\":\\\"#F2ECBC\\\",\\\"sideBar.border\\\":\\\"#D5CEA3\\\",\\\"sideBar.foreground\\\":\\\"#545464\\\",\\\"sideBarSectionHeader.background\\\":\\\"#E4D794\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#545464\\\",\\\"statusBar.background\\\":\\\"#D5CEA3\\\",\\\"statusBar.debuggingBackground\\\":\\\"#E82424\\\",\\\"statusBar.debuggingBorder\\\":\\\"#624C83\\\",\\\"statusBar.debuggingForeground\\\":\\\"#545464\\\",\\\"statusBar.foreground\\\":\\\"#43436C\\\",\\\"statusBar.noFolderBackground\\\":\\\"#F2ECBC\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#E4D794\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#B5CBD2\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#545464\\\",\\\"tab.activeBackground\\\":\\\"#E7DBA0\\\",\\\"tab.activeForeground\\\":\\\"#4D699B\\\",\\\"tab.border\\\":\\\"#E7DBA0\\\",\\\"tab.hoverBackground\\\":\\\"#E4D794\\\",\\\"tab.inactiveBackground\\\":\\\"#E5DDB0\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#F2ECBC\\\",\\\"terminal.ansiBlack\\\":\\\"#1F1F28\\\",\\\"terminal.ansiBlue\\\":\\\"#4D699B\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#8A8980\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#6693BF\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#5E857A\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#6E915F\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#624C83\\\",\\\"terminal.ansiBrightRed\\\":\\\"#D7474B\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#43436C\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#836F4A\\\",\\\"terminal.ansiCyan\\\":\\\"#597B75\\\",\\\"terminal.ansiGreen\\\":\\\"#6F894E\\\",\\\"terminal.ansiMagenta\\\":\\\"#B35B79\\\",\\\"terminal.ansiRed\\\":\\\"#C84053\\\",\\\"terminal.ansiWhite\\\":\\\"#545464\\\",\\\"terminal.ansiYellow\\\":\\\"#77713F\\\",\\\"terminal.background\\\":\\\"#F2ECBC\\\",\\\"terminal.border\\\":\\\"#D5CEA3\\\",\\\"terminal.foreground\\\":\\\"#545464\\\",\\\"terminal.selectionBackground\\\":\\\"#C7D7E0\\\",\\\"textBlockQuote.background\\\":\\\"#F2ECBC\\\",\\\"textBlockQuote.border\\\":\\\"#D5CEA3\\\",\\\"textLink.foreground\\\":\\\"#5E857A\\\",\\\"textPreformat.foreground\\\":\\\"#E98A00\\\",\\\"titleBar.activeBackground\\\":\\\"#E4D794\\\",\\\"titleBar.activeForeground\\\":\\\"#545464\\\",\\\"titleBar.inactiveBackground\\\":\\\"#F2ECBC\\\",\\\"titleBar.inactiveForeground\\\":\\\"#545464\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#F2ECBC\\\"},\\\"displayName\\\":\\\"Kanagawa Lotus\\\",\\\"name\\\":\\\"kanagawa-lotus\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"arithmetic\\\":\\\"#836F4A\\\",\\\"function\\\":\\\"#4D699B\\\",\\\"keyword.controlFlow\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#624C83\\\"},\\\"macro\\\":\\\"#C84053\\\",\\\"method\\\":\\\"#6693BF\\\",\\\"operator\\\":\\\"#836F4A\\\",\\\"parameter\\\":\\\"#5D57A3\\\",\\\"parameter.declaration\\\":\\\"#5D57A3\\\",\\\"parameter.definition\\\":\\\"#5D57A3\\\",\\\"variable\\\":\\\"#545464\\\",\\\"variable.readonly\\\":\\\"#545464\\\",\\\"variable.readonly.defaultLibrary\\\":\\\"#545464\\\",\\\"variable.readonly.local\\\":\\\"#545464\\\"},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#716E61\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"string constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#545464\\\"}},{\\\"scope\\\":[\\\"constant.other.color\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CC6D00\\\"}},{\\\"scope\\\":[\\\"invalid\\\",\\\"invalid.illegal\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E82424\\\"}},{\\\"scope\\\":[\\\"storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"keyword.control.flow\\\",\\\"keyword.control.conditional\\\",\\\"keyword.control.loop\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\",\\\"constant.other.color\\\",\\\"meta.tag\\\",\\\"keyword.other.template\\\",\\\"keyword.other.substitution\\\",\\\"keyword.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"keyword.other.definition.ini\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CC6D00\\\"}},{\\\"scope\\\":[\\\"keyword.control.trycatch\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#D9A594\\\"}},{\\\"scope\\\":[\\\"keyword.other.unit\\\",\\\"keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#77713F\\\"}},{\\\"scope\\\":[\\\"punctuation\\\",\\\"punctuation.definition.tag\\\",\\\"punctuation.separator.inheritance.php\\\",\\\"punctuation.definition.tag.html\\\",\\\"punctuation.definition.tag.begin.html\\\",\\\"punctuation.definition.tag.end.html\\\",\\\"punctuation.section.embedded\\\",\\\"meta.brace\\\",\\\"keyword.operator.type.annotation\\\",\\\"keyword.operator.namespace\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4E8CA2\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"meta.tag.sgml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#77713F\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.function-call\\\",\\\"variable.function\\\",\\\"support.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4D699B\\\"}},{\\\"scope\\\":[\\\"keyword.other.special-method\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6693BF\\\"}},{\\\"scope\\\":[\\\"entity.name.function.macro\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C84053\\\"}},{\\\"scope\\\":[\\\"meta.block variable.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#545464\\\"}},{\\\"scope\\\":[\\\"variable.other.enummember\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CC6D00\\\"}},{\\\"scope\\\":[\\\"support.other.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#545464\\\"}},{\\\"scope\\\":[\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6693BF\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"constant.language\\\",\\\"support.constant\\\",\\\"constant.character\\\",\\\"constant.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CC6D00\\\"}},{\\\"scope\\\":[\\\"constant.language.boolean\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CC6D00\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B35B79\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"punctuation.definition.string\\\",\\\"constant.other.symbol\\\",\\\"constant.other.key\\\",\\\"entity.other.inherited-class\\\",\\\"markup.heading\\\",\\\"markup.inserted.git_gutter\\\",\\\"meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js\\\",\\\"markup.inline.raw.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6F894E\\\"}},{\\\"scope\\\":[\\\"entity.name\\\",\\\"support.type\\\",\\\"support.class\\\",\\\"support.other.namespace.use.php\\\",\\\"meta.use.php\\\",\\\"support.other.namespace.php\\\",\\\"support.type.sys-types\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#597B75\\\"}},{\\\"scope\\\":[\\\"entity.name.type.module\\\",\\\"entity.name.namespace\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#77713F\\\"}},{\\\"scope\\\":[\\\"entity.name.import.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6F894E\\\"}},{\\\"scope\\\":[\\\"keyword.blade\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"variable.other.property\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#77713F\\\"}},{\\\"scope\\\":[\\\"keyword.control.import\\\",\\\"keyword.import\\\",\\\"meta.import\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CC6D00\\\"}},{\\\"scope\\\":[\\\"source.css support.type.property-name\\\",\\\"source.sass support.type.property-name\\\",\\\"source.scss support.type.property-name\\\",\\\"source.less support.type.property-name\\\",\\\"source.stylus support.type.property-name\\\",\\\"source.postcss support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#597B75\\\"}},{\\\"scope\\\":[\\\"entity.name.module.js\\\",\\\"variable.import.parameter.js\\\",\\\"variable.other.class.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D9A594\\\"}},{\\\"scope\\\":[\\\"variable.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D9A594\\\"}},{\\\"scope\\\":[\\\"entity.name.method.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6693BF\\\"}},{\\\"scope\\\":[\\\"meta.class-method.js entity.name.function.js\\\",\\\"variable.function.constructor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6693BF\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#77713F\\\"}},{\\\"scope\\\":[\\\"source.sass keyword.control\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6693BF\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6E915F\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D7474B\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DE9800\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#836F4A\\\"}},{\\\"scope\\\":[\\\"constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6693BF\\\"}},{\\\"scope\\\":[\\\"*url*\\\",\\\"*link*\\\",\\\"*uri*\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"tag.decorator.js entity.name.tag.js\\\",\\\"tag.decorator.js punctuation.definition.tag.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"source.js constant.other.object.key.js string.unquoted.label.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D9A594\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B35B79\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#77713F\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CC6D00\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D9A594\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CC6D00\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4D699B\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B35B79\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6F894E\\\"}},{\\\"scope\\\":[\\\"meta.tag JSXNested\\\",\\\"meta.jsx.children\\\",\\\"text.html\\\",\\\"text.log\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#545464\\\"}},{\\\"scope\\\":[\\\"text.html.markdown\\\",\\\"punctuation.definition.list_item.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#545464\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"markdown.heading\\\",\\\"entity.name.section.markdown\\\",\\\"markup.heading.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4D699B\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#C84053\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"markup.bold markup.italic\\\",\\\"markup.italic markup.bold\\\",\\\"markup.quote markup.bold\\\",\\\"markup.bold markup.italic string\\\",\\\"markup.italic markup.bold string\\\",\\\"markup.quote markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#C84053\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#6693BF\\\"}},{\\\"scope\\\":[\\\"markup.quote punctuation.definition.blockquote.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#716E61\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"string.other.link.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CC6D00\\\"}},{\\\"scope\\\":[\\\"string.other.link.description.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#77713F\\\"}},{\\\"scope\\\":[\\\"markup.raw.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#624C83\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#716E61\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#716E61\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\",\\\"variable.language.fenced.markdown\\\",\\\"punctuation.section.class.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#545464\\\"}},{\\\"scope\\\":[\\\"variable.language.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#716E61\\\"}},{\\\"scope\\\":[\\\"meta.separator\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#4E8CA2\\\"}},{\\\"scope\\\":[\\\"markup.table\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#545464\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: kanagawa-wave */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#2A2A37\\\",\\\"activityBar.foreground\\\":\\\"#DCD7BA\\\",\\\"activityBarBadge.background\\\":\\\"#658594\\\",\\\"activityBarBadge.foreground\\\":\\\"#DCD7BA\\\",\\\"badge.background\\\":\\\"#2A2A37\\\",\\\"button.background\\\":\\\"#2A2A37\\\",\\\"button.foreground\\\":\\\"#C8C093\\\",\\\"button.secondaryBackground\\\":\\\"#223249\\\",\\\"button.secondaryForeground\\\":\\\"#DCD7BA\\\",\\\"checkbox.border\\\":\\\"#223249\\\",\\\"debugToolBar.background\\\":\\\"#16161D\\\",\\\"descriptionForeground\\\":\\\"#DCD7BA\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#2B332880\\\",\\\"dropdown.background\\\":\\\"#16161D\\\",\\\"dropdown.border\\\":\\\"#16161D\\\",\\\"editor.background\\\":\\\"#1F1F28\\\",\\\"editor.findMatchBackground\\\":\\\"#2D4F67\\\",\\\"editor.findMatchBorder\\\":\\\"#FF9E3B\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#2D4F6780\\\",\\\"editor.foreground\\\":\\\"#DCD7BA\\\",\\\"editor.lineHighlightBackground\\\":\\\"#363646\\\",\\\"editor.selectionBackground\\\":\\\"#223249\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#36364680\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#54546D\\\",\\\"editor.wordHighlightBackground\\\":\\\"#3636464D\\\",\\\"editor.wordHighlightBorder\\\":\\\"#54546D\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#3636464D\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#54546D\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#957FB8\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#FFA066\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#7E9CD8\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#D27E99\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#E6C384\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#7AA89F\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#FF5D62\\\",\\\"editorBracketMatch.background\\\":\\\"#16161D\\\",\\\"editorBracketMatch.border\\\":\\\"#54546D\\\",\\\"editorBracketPairGuide.activeBackground1\\\":\\\"#957FB8\\\",\\\"editorBracketPairGuide.activeBackground2\\\":\\\"#FFA066\\\",\\\"editorBracketPairGuide.activeBackground3\\\":\\\"#7E9CD8\\\",\\\"editorBracketPairGuide.activeBackground4\\\":\\\"#D27E99\\\",\\\"editorBracketPairGuide.activeBackground5\\\":\\\"#E6C384\\\",\\\"editorBracketPairGuide.activeBackground6\\\":\\\"#7AA89F\\\",\\\"editorCursor.background\\\":\\\"#1F1F28\\\",\\\"editorCursor.foreground\\\":\\\"#DCD7BA\\\",\\\"editorError.foreground\\\":\\\"#E82424\\\",\\\"editorGroup.border\\\":\\\"#16161D\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#16161D\\\",\\\"editorGutter.addedBackground\\\":\\\"#76946A\\\",\\\"editorGutter.deletedBackground\\\":\\\"#C34043\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#DCA561\\\",\\\"editorHoverWidget.background\\\":\\\"#1F1F28\\\",\\\"editorHoverWidget.border\\\":\\\"#2A2A37\\\",\\\"editorHoverWidget.highlightForeground\\\":\\\"#658594\\\",\\\"editorIndentGuide.activeBackground1\\\":\\\"#363646\\\",\\\"editorIndentGuide.background1\\\":\\\"#2A2A37\\\",\\\"editorInlayHint.background\\\":\\\"#1F1F28\\\",\\\"editorInlayHint.foreground\\\":\\\"#727169\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#FFA066\\\",\\\"editorLineNumber.foreground\\\":\\\"#54546D\\\",\\\"editorMarkerNavigation.background\\\":\\\"#363646\\\",\\\"editorRuler.foreground\\\":\\\"#363646\\\",\\\"editorSuggestWidget.background\\\":\\\"#223249\\\",\\\"editorSuggestWidget.border\\\":\\\"#223249\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#2D4F67\\\",\\\"editorWarning.foreground\\\":\\\"#FF9E3B\\\",\\\"editorWhitespace.foreground\\\":\\\"#1F1F28\\\",\\\"editorWidget.background\\\":\\\"#1F1F28\\\",\\\"focusBorder\\\":\\\"#223249\\\",\\\"foreground\\\":\\\"#DCD7BA\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#727169\\\",\\\"input.background\\\":\\\"#16161D\\\",\\\"list.activeSelectionBackground\\\":\\\"#363646\\\",\\\"list.activeSelectionForeground\\\":\\\"#DCD7BA\\\",\\\"list.focusBackground\\\":\\\"#2A2A37\\\",\\\"list.focusForeground\\\":\\\"#DCD7BA\\\",\\\"list.highlightForeground\\\":\\\"#7E9CD8\\\",\\\"list.hoverBackground\\\":\\\"#363646\\\",\\\"list.hoverForeground\\\":\\\"#DCD7BA\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#2A2A37\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#DCD7BA\\\",\\\"list.warningForeground\\\":\\\"#FF9E3B\\\",\\\"menu.background\\\":\\\"#363646\\\",\\\"menu.border\\\":\\\"#16161D\\\",\\\"menu.foreground\\\":\\\"#DCD7BA\\\",\\\"menu.selectionBackground\\\":\\\"#16161D\\\",\\\"menu.selectionForeground\\\":\\\"#DCD7BA\\\",\\\"menu.separatorBackground\\\":\\\"#54546D\\\",\\\"menubar.selectionBackground\\\":\\\"#16161D\\\",\\\"menubar.selectionForeground\\\":\\\"#DCD7BA\\\",\\\"minimapGutter.addedBackground\\\":\\\"#76946A\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#C34043\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#DCA561\\\",\\\"panel.border\\\":\\\"#16161D\\\",\\\"panelSectionHeader.background\\\":\\\"#1F1F28\\\",\\\"peekView.border\\\":\\\"#54546D\\\",\\\"peekViewEditor.background\\\":\\\"#2A2A37\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#2D4F67\\\",\\\"peekViewResult.background\\\":\\\"#363646\\\",\\\"scrollbar.shadow\\\":\\\"#363646\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#2A2A3780\\\",\\\"scrollbarSlider.background\\\":\\\"#54546D66\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#54546D80\\\",\\\"settings.focusedRowBackground\\\":\\\"#363646\\\",\\\"settings.headerForeground\\\":\\\"#DCD7BA\\\",\\\"sideBar.background\\\":\\\"#1F1F28\\\",\\\"sideBar.border\\\":\\\"#16161D\\\",\\\"sideBar.foreground\\\":\\\"#DCD7BA\\\",\\\"sideBarSectionHeader.background\\\":\\\"#363646\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#DCD7BA\\\",\\\"statusBar.background\\\":\\\"#16161D\\\",\\\"statusBar.debuggingBackground\\\":\\\"#E82424\\\",\\\"statusBar.debuggingBorder\\\":\\\"#957FB8\\\",\\\"statusBar.debuggingForeground\\\":\\\"#DCD7BA\\\",\\\"statusBar.foreground\\\":\\\"#C8C093\\\",\\\"statusBar.noFolderBackground\\\":\\\"#1F1F28\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#363646\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#2D4F67\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#DCD7BA\\\",\\\"tab.activeBackground\\\":\\\"#2A2A37\\\",\\\"tab.activeForeground\\\":\\\"#7E9CD8\\\",\\\"tab.border\\\":\\\"#2A2A37\\\",\\\"tab.hoverBackground\\\":\\\"#363646\\\",\\\"tab.inactiveBackground\\\":\\\"#1A1A22\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#1F1F28\\\",\\\"terminal.ansiBlack\\\":\\\"#16161D\\\",\\\"terminal.ansiBlue\\\":\\\"#7E9CD8\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#727169\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#7FB4CA\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#7AA89F\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#98BB6C\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#938AA9\\\",\\\"terminal.ansiBrightRed\\\":\\\"#E82424\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#DCD7BA\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#E6C384\\\",\\\"terminal.ansiCyan\\\":\\\"#6A9589\\\",\\\"terminal.ansiGreen\\\":\\\"#76946A\\\",\\\"terminal.ansiMagenta\\\":\\\"#957FB8\\\",\\\"terminal.ansiRed\\\":\\\"#C34043\\\",\\\"terminal.ansiWhite\\\":\\\"#C8C093\\\",\\\"terminal.ansiYellow\\\":\\\"#C0A36E\\\",\\\"terminal.background\\\":\\\"#1F1F28\\\",\\\"terminal.border\\\":\\\"#16161D\\\",\\\"terminal.foreground\\\":\\\"#DCD7BA\\\",\\\"terminal.selectionBackground\\\":\\\"#223249\\\",\\\"textBlockQuote.background\\\":\\\"#1F1F28\\\",\\\"textBlockQuote.border\\\":\\\"#16161D\\\",\\\"textLink.foreground\\\":\\\"#6A9589\\\",\\\"textPreformat.foreground\\\":\\\"#FF9E3B\\\",\\\"titleBar.activeBackground\\\":\\\"#363646\\\",\\\"titleBar.activeForeground\\\":\\\"#DCD7BA\\\",\\\"titleBar.inactiveBackground\\\":\\\"#1F1F28\\\",\\\"titleBar.inactiveForeground\\\":\\\"#DCD7BA\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#1F1F28\\\"},\\\"displayName\\\":\\\"Kanagawa Wave\\\",\\\"name\\\":\\\"kanagawa-wave\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"arithmetic\\\":\\\"#C0A36E\\\",\\\"function\\\":\\\"#7E9CD8\\\",\\\"keyword.controlFlow\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#957FB8\\\"},\\\"macro\\\":\\\"#E46876\\\",\\\"method\\\":\\\"#7FB4CA\\\",\\\"operator\\\":\\\"#C0A36E\\\",\\\"parameter\\\":\\\"#B8B4D0\\\",\\\"parameter.declaration\\\":\\\"#B8B4D0\\\",\\\"parameter.definition\\\":\\\"#B8B4D0\\\",\\\"variable\\\":\\\"#DCD7BA\\\",\\\"variable.readonly\\\":\\\"#DCD7BA\\\",\\\"variable.readonly.defaultLibrary\\\":\\\"#DCD7BA\\\",\\\"variable.readonly.local\\\":\\\"#DCD7BA\\\"},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#727169\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"string constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCD7BA\\\"}},{\\\"scope\\\":[\\\"constant.other.color\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFA066\\\"}},{\\\"scope\\\":[\\\"invalid\\\",\\\"invalid.illegal\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E82424\\\"}},{\\\"scope\\\":[\\\"storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"keyword.control.flow\\\",\\\"keyword.control.conditional\\\",\\\"keyword.control.loop\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\",\\\"constant.other.color\\\",\\\"meta.tag\\\",\\\"keyword.other.template\\\",\\\"keyword.other.substitution\\\",\\\"keyword.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"keyword.other.definition.ini\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFA066\\\"}},{\\\"scope\\\":[\\\"keyword.control.trycatch\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#FF5D62\\\"}},{\\\"scope\\\":[\\\"keyword.other.unit\\\",\\\"keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E6C384\\\"}},{\\\"scope\\\":[\\\"punctuation\\\",\\\"punctuation.definition.tag\\\",\\\"punctuation.separator.inheritance.php\\\",\\\"punctuation.definition.tag.html\\\",\\\"punctuation.definition.tag.begin.html\\\",\\\"punctuation.definition.tag.end.html\\\",\\\"punctuation.section.embedded\\\",\\\"meta.brace\\\",\\\"keyword.operator.type.annotation\\\",\\\"keyword.operator.namespace\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9CABCA\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"meta.tag.sgml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E6C384\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.function-call\\\",\\\"variable.function\\\",\\\"support.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7E9CD8\\\"}},{\\\"scope\\\":[\\\"keyword.other.special-method\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7FB4CA\\\"}},{\\\"scope\\\":[\\\"entity.name.function.macro\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E46876\\\"}},{\\\"scope\\\":[\\\"meta.block variable.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCD7BA\\\"}},{\\\"scope\\\":[\\\"variable.other.enummember\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFA066\\\"}},{\\\"scope\\\":[\\\"support.other.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCD7BA\\\"}},{\\\"scope\\\":[\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7FB4CA\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"constant.language\\\",\\\"support.constant\\\",\\\"constant.character\\\",\\\"constant.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFA066\\\"}},{\\\"scope\\\":[\\\"constant.language.boolean\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFA066\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D27E99\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"punctuation.definition.string\\\",\\\"constant.other.symbol\\\",\\\"constant.other.key\\\",\\\"entity.other.inherited-class\\\",\\\"markup.heading\\\",\\\"markup.inserted.git_gutter\\\",\\\"meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js\\\",\\\"markup.inline.raw.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98BB6C\\\"}},{\\\"scope\\\":[\\\"entity.name\\\",\\\"support.type\\\",\\\"support.class\\\",\\\"support.other.namespace.use.php\\\",\\\"meta.use.php\\\",\\\"support.other.namespace.php\\\",\\\"support.type.sys-types\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7AA89F\\\"}},{\\\"scope\\\":[\\\"entity.name.type.module\\\",\\\"entity.name.namespace\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E6C384\\\"}},{\\\"scope\\\":[\\\"entity.name.import.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98BB6C\\\"}},{\\\"scope\\\":[\\\"keyword.blade\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"variable.other.property\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E6C384\\\"}},{\\\"scope\\\":[\\\"keyword.control.import\\\",\\\"keyword.import\\\",\\\"meta.import\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFA066\\\"}},{\\\"scope\\\":[\\\"source.css support.type.property-name\\\",\\\"source.sass support.type.property-name\\\",\\\"source.scss support.type.property-name\\\",\\\"source.less support.type.property-name\\\",\\\"source.stylus support.type.property-name\\\",\\\"source.postcss support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7AA89F\\\"}},{\\\"scope\\\":[\\\"entity.name.module.js\\\",\\\"variable.import.parameter.js\\\",\\\"variable.other.class.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5D62\\\"}},{\\\"scope\\\":[\\\"variable.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5D62\\\"}},{\\\"scope\\\":[\\\"entity.name.method.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7FB4CA\\\"}},{\\\"scope\\\":[\\\"meta.class-method.js entity.name.function.js\\\",\\\"variable.function.constructor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7FB4CA\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E6C384\\\"}},{\\\"scope\\\":[\\\"source.sass keyword.control\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7FB4CA\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#76946A\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C34043\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCA561\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C0A36E\\\"}},{\\\"scope\\\":[\\\"constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7FB4CA\\\"}},{\\\"scope\\\":[\\\"*url*\\\",\\\"*link*\\\",\\\"*uri*\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"tag.decorator.js entity.name.tag.js\\\",\\\"tag.decorator.js punctuation.definition.tag.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"source.js constant.other.object.key.js string.unquoted.label.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5D62\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D27E99\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E6C384\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFA066\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5D62\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFA066\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7E9CD8\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D27E99\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98BB6C\\\"}},{\\\"scope\\\":[\\\"meta.tag JSXNested\\\",\\\"meta.jsx.children\\\",\\\"text.html\\\",\\\"text.log\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCD7BA\\\"}},{\\\"scope\\\":[\\\"text.html.markdown\\\",\\\"punctuation.definition.list_item.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCD7BA\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"markdown.heading\\\",\\\"entity.name.section.markdown\\\",\\\"markup.heading.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7E9CD8\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#E46876\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"markup.bold markup.italic\\\",\\\"markup.italic markup.bold\\\",\\\"markup.quote markup.bold\\\",\\\"markup.bold markup.italic string\\\",\\\"markup.italic markup.bold string\\\",\\\"markup.quote markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#E46876\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#7FB4CA\\\"}},{\\\"scope\\\":[\\\"markup.quote punctuation.definition.blockquote.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#727169\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"string.other.link.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFA066\\\"}},{\\\"scope\\\":[\\\"string.other.link.description.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E6C384\\\"}},{\\\"scope\\\":[\\\"markup.raw.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#957FB8\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#727169\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#727169\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\",\\\"variable.language.fenced.markdown\\\",\\\"punctuation.section.class.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCD7BA\\\"}},{\\\"scope\\\":[\\\"variable.language.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#727169\\\"}},{\\\"scope\\\":[\\\"meta.separator\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#9CABCA\\\"}},{\\\"scope\\\":[\\\"markup.table\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCD7BA\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: laserwave */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#EB64B9\\\",\\\"activityBar.background\\\":\\\"#27212e\\\",\\\"activityBar.foreground\\\":\\\"#ddd\\\",\\\"activityBarBadge.background\\\":\\\"#EB64B9\\\",\\\"button.background\\\":\\\"#EB64B9\\\",\\\"diffEditor.border\\\":\\\"#b4dce7\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#74dfc423\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#eb64b940\\\",\\\"editor.background\\\":\\\"#27212e\\\",\\\"editor.findMatchBackground\\\":\\\"#40b4c48c\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#40b4c460\\\",\\\"editor.foreground\\\":\\\"#ffffff\\\",\\\"editor.selectionBackground\\\":\\\"#eb64b927\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#eb64b927\\\",\\\"editor.wordHighlightBackground\\\":\\\"#eb64b927\\\",\\\"editorError.foreground\\\":\\\"#ff3e7b\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#242029\\\",\\\"editorGutter.addedBackground\\\":\\\"#74dfc4\\\",\\\"editorGutter.deletedBackground\\\":\\\"#eb64B9\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#40b4c4\\\",\\\"editorSuggestWidget.border\\\":\\\"#b4dce7\\\",\\\"focusBorder\\\":\\\"#EB64B9\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#EB64B9\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#b381c5\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#92889d\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#74dfc4\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#40b4c4\\\",\\\"input.background\\\":\\\"#3a3242\\\",\\\"input.border\\\":\\\"#964c7b\\\",\\\"inputOption.activeBorder\\\":\\\"#EB64B9\\\",\\\"list.activeSelectionBackground\\\":\\\"#eb64b98f\\\",\\\"list.activeSelectionForeground\\\":\\\"#eee\\\",\\\"list.dropBackground\\\":\\\"#74dfc466\\\",\\\"list.errorForeground\\\":\\\"#ff3e7b\\\",\\\"list.focusBackground\\\":\\\"#eb64ba60\\\",\\\"list.highlightForeground\\\":\\\"#eb64b9\\\",\\\"list.hoverBackground\\\":\\\"#91889b80\\\",\\\"list.hoverForeground\\\":\\\"#eee\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#eb64b98f\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#ddd\\\",\\\"list.invalidItemForeground\\\":\\\"#fff\\\",\\\"menu.background\\\":\\\"#27212e\\\",\\\"merge.currentContentBackground\\\":\\\"#74dfc433\\\",\\\"merge.currentHeaderBackground\\\":\\\"#74dfc4cc\\\",\\\"merge.incomingContentBackground\\\":\\\"#40b4c433\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#40b4c4cc\\\",\\\"notifications.background\\\":\\\"#3e3549\\\",\\\"peekView.border\\\":\\\"#40b4c4\\\",\\\"peekViewEditor.background\\\":\\\"#40b5c449\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#40b5c460\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#27212e\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#40b4c43f\\\",\\\"progressBar.background\\\":\\\"#40b4c4\\\",\\\"sideBar.background\\\":\\\"#27212e\\\",\\\"sideBar.foreground\\\":\\\"#ddd\\\",\\\"sideBarSectionHeader.background\\\":\\\"#27212e\\\",\\\"sideBarTitle.foreground\\\":\\\"#EB64B9\\\",\\\"statusBar.background\\\":\\\"#EB64B9\\\",\\\"statusBar.debuggingBackground\\\":\\\"#74dfc4\\\",\\\"statusBar.foreground\\\":\\\"#27212e\\\",\\\"statusBar.noFolderBackground\\\":\\\"#EB64B9\\\",\\\"tab.activeBorder\\\":\\\"#EB64B9\\\",\\\"tab.inactiveBackground\\\":\\\"#242029\\\",\\\"terminal.ansiBlue\\\":\\\"#40b4c4\\\",\\\"terminal.ansiCyan\\\":\\\"#b4dce7\\\",\\\"terminal.ansiGreen\\\":\\\"#74dfc4\\\",\\\"terminal.ansiMagenta\\\":\\\"#b381c5\\\",\\\"terminal.ansiRed\\\":\\\"#EB64B9\\\",\\\"terminal.ansiYellow\\\":\\\"#ffe261\\\",\\\"titleBar.activeBackground\\\":\\\"#27212e\\\",\\\"titleBar.inactiveBackground\\\":\\\"#27212e\\\",\\\"tree.indentGuidesStroke\\\":\\\"#ffffff33\\\"},\\\"displayName\\\":\\\"LaserWave\\\",\\\"name\\\":\\\"laserwave\\\",\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"keyword.other\\\",\\\"keyword.control\\\",\\\"storage.type.class.js\\\",\\\"keyword.control.module.js\\\",\\\"storage.type.extends.js\\\",\\\"variable.language.this.js\\\",\\\"keyword.control.switch.js\\\",\\\"keyword.control.loop.js\\\",\\\"keyword.control.conditional.js\\\",\\\"keyword.control.flow.js\\\",\\\"keyword.operator.accessor.js\\\",\\\"keyword.other.important.css\\\",\\\"keyword.control.at-rule.media.scss\\\",\\\"entity.name.tag.reference.scss\\\",\\\"meta.class.python\\\",\\\"storage.type.function.python\\\",\\\"keyword.control.flow.python\\\",\\\"storage.type.function.js\\\",\\\"keyword.control.export.ts\\\",\\\"keyword.control.flow.ts\\\",\\\"keyword.control.from.ts\\\",\\\"keyword.control.import.ts\\\",\\\"storage.type.class.ts\\\",\\\"keyword.control.loop.ts\\\",\\\"keyword.control.ruby\\\",\\\"keyword.control.module.ruby\\\",\\\"keyword.control.class.ruby\\\",\\\"keyword.other.special-method.ruby\\\",\\\"keyword.control.def.ruby\\\",\\\"markup.heading\\\",\\\"keyword.other.import.java\\\",\\\"keyword.other.package.java\\\",\\\"storage.modifier.java\\\",\\\"storage.modifier.extends.java\\\",\\\"storage.modifier.implements.java\\\",\\\"storage.modifier.cs\\\",\\\"storage.modifier.js\\\",\\\"storage.modifier.dart\\\",\\\"keyword.declaration.dart\\\",\\\"keyword.package.go\\\",\\\"keyword.import.go\\\",\\\"keyword.fsharp\\\",\\\"variable.parameter.function-call.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#40b4c4\\\"}},{\\\"scope\\\":[\\\"binding.fsharp\\\",\\\"support.function\\\",\\\"meta.function-call\\\",\\\"entity.name.function\\\",\\\"support.function.misc.scss\\\",\\\"meta.method.declaration.ts\\\",\\\"entity.name.function.method.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#EB64B9\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"string.quoted\\\",\\\"string.unquoted\\\",\\\"string.other.link.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b4dce7\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b381c5\\\"}},{\\\"scope\\\":[\\\"meta.brace\\\",\\\"punctuation\\\",\\\"punctuation.bracket\\\",\\\"punctuation.section\\\",\\\"punctuation.separator\\\",\\\"punctuation.comma.dart\\\",\\\"punctuation.terminator\\\",\\\"punctuation.definition\\\",\\\"punctuation.parenthesis\\\",\\\"meta.delimiter.comma.js\\\",\\\"meta.brace.curly.litobj.js\\\",\\\"punctuation.definition.tag\\\",\\\"puncatuation.other.comma.go\\\",\\\"punctuation.section.embedded\\\",\\\"punctuation.definition.string\\\",\\\"punctuation.definition.tag.jsx\\\",\\\"punctuation.definition.tag.end\\\",\\\"punctuation.definition.markdown\\\",\\\"punctuation.terminator.rule.css\\\",\\\"punctuation.definition.block.ts\\\",\\\"punctuation.definition.tag.html\\\",\\\"punctuation.section.class.end.js\\\",\\\"punctuation.definition.tag.begin\\\",\\\"punctuation.squarebracket.open.cs\\\",\\\"punctuation.separator.dict.python\\\",\\\"punctuation.section.function.scss\\\",\\\"punctuation.section.class.begin.js\\\",\\\"punctuation.section.array.end.ruby\\\",\\\"punctuation.separator.key-value.js\\\",\\\"meta.method-call.with-arguments.js\\\",\\\"punctuation.section.scope.end.ruby\\\",\\\"punctuation.squarebracket.close.cs\\\",\\\"punctuation.separator.key-value.css\\\",\\\"punctuation.definition.constant.css\\\",\\\"punctuation.section.array.begin.ruby\\\",\\\"punctuation.section.scope.begin.ruby\\\",\\\"punctuation.definition.string.end.js\\\",\\\"punctuation.definition.parameters.ruby\\\",\\\"punctuation.definition.string.begin.js\\\",\\\"punctuation.section.class.begin.python\\\",\\\"storage.modifier.array.bracket.square.c\\\",\\\"punctuation.separator.parameters.python\\\",\\\"punctuation.section.group.end.powershell\\\",\\\"punctuation.definition.parameters.end.ts\\\",\\\"punctuation.section.braces.end.powershell\\\",\\\"punctuation.section.function.begin.python\\\",\\\"punctuation.definition.parameters.begin.ts\\\",\\\"punctuation.section.bracket.end.powershell\\\",\\\"punctuation.section.group.begin.powershell\\\",\\\"punctuation.section.braces.begin.powershell\\\",\\\"punctuation.definition.parameters.end.python\\\",\\\"punctuation.definition.typeparameters.end.cs\\\",\\\"punctuation.section.bracket.begin.powershell\\\",\\\"punctuation.definition.arguments.begin.python\\\",\\\"punctuation.definition.parameters.begin.python\\\",\\\"punctuation.definition.typeparameters.begin.cs\\\",\\\"punctuation.section.block.begin.bracket.curly.c\\\",\\\"punctuation.definition.map.begin.bracket.round.scss\\\",\\\"punctuation.section.property-list.end.bracket.curly.css\\\",\\\"punctuation.definition.parameters.end.bracket.round.java\\\",\\\"punctuation.section.property-list.begin.bracket.curly.css\\\",\\\"punctuation.definition.parameters.begin.bracket.round.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7b6995\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\",\\\"meta.decorator.ts\\\",\\\"entity.name.type.ts\\\",\\\"punctuation.dot.dart\\\",\\\"keyword.symbol.fsharp\\\",\\\"punctuation.accessor.ts\\\",\\\"punctuation.accessor.cs\\\",\\\"keyword.operator.logical\\\",\\\"meta.tag.inline.any.html\\\",\\\"punctuation.separator.java\\\",\\\"keyword.operator.comparison\\\",\\\"keyword.operator.arithmetic\\\",\\\"keyword.operator.assignment\\\",\\\"keyword.operator.ternary.js\\\",\\\"keyword.operator.other.ruby\\\",\\\"keyword.operator.logical.js\\\",\\\"punctuation.other.period.go\\\",\\\"keyword.operator.increment.ts\\\",\\\"keyword.operator.increment.js\\\",\\\"storage.type.function.arrow.js\\\",\\\"storage.type.function.arrow.ts\\\",\\\"keyword.operator.relational.js\\\",\\\"keyword.operator.relational.ts\\\",\\\"keyword.operator.arithmetic.js\\\",\\\"keyword.operator.assignment.js\\\",\\\"storage.type.function.arrow.tsx\\\",\\\"keyword.operator.logical.python\\\",\\\"punctuation.separator.period.java\\\",\\\"punctuation.separator.method.ruby\\\",\\\"keyword.operator.assignment.python\\\",\\\"keyword.operator.arithmetic.python\\\",\\\"keyword.operator.increment-decrement.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#74dfc4\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91889b\\\"}},{\\\"scope\\\":[\\\"meta.tag.sgml\\\",\\\"entity.name.tag\\\",\\\"entity.name.tag.open.jsx\\\",\\\"entity.name.tag.close.jsx\\\",\\\"entity.name.tag.inline.any.html\\\",\\\"entity.name.tag.structure.any.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#74dfc4\\\"}},{\\\"scope\\\":[\\\"variable.other.enummember\\\",\\\"entity.other.attribute-name\\\",\\\"entity.other.attribute-name.jsx\\\",\\\"entity.other.attribute-name.html\\\",\\\"entity.other.attribute-name.id.css\\\",\\\"entity.other.attribute-name.id.html\\\",\\\"entity.other.attribute-name.class.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#EB64B9\\\"}},{\\\"scope\\\":[\\\"variable.other.property\\\",\\\"variable.parameter.fsharp\\\",\\\"support.variable.property.js\\\",\\\"support.type.property-name.css\\\",\\\"support.type.property-name.json\\\",\\\"support.variable.property.dom.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#40b4c4\\\"}},{\\\"scope\\\":[\\\"constant.language\\\",\\\"constant.other.elm\\\",\\\"constant.language.c\\\",\\\"variable.language.dart\\\",\\\"variable.language.this\\\",\\\"support.class.builtin.js\\\",\\\"support.constant.json.ts\\\",\\\"support.class.console.ts\\\",\\\"support.class.console.js\\\",\\\"variable.language.this.js\\\",\\\"variable.language.this.ts\\\",\\\"entity.name.section.fsharp\\\",\\\"support.type.object.dom.js\\\",\\\"variable.other.constant.js\\\",\\\"variable.language.self.ruby\\\",\\\"variable.other.constant.ruby\\\",\\\"support.type.object.console.js\\\",\\\"constant.language.undefined.js\\\",\\\"support.function.builtin.python\\\",\\\"constant.language.boolean.true.js\\\",\\\"constant.language.boolean.false.js\\\",\\\"variable.language.special.self.python\\\",\\\"support.constant.automatic.powershell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffe261\\\"}},{\\\"scope\\\":[\\\"variable.other\\\",\\\"variable.scss\\\",\\\"meta.function-call.c\\\",\\\"variable.parameter.ts\\\",\\\"variable.parameter.dart\\\",\\\"variable.other.class.js\\\",\\\"variable.other.object.js\\\",\\\"variable.other.object.ts\\\",\\\"support.function.json.ts\\\",\\\"variable.name.source.dart\\\",\\\"variable.other.source.dart\\\",\\\"variable.other.readwrite.js\\\",\\\"variable.other.readwrite.ts\\\",\\\"support.function.console.ts\\\",\\\"entity.name.type.instance.js\\\",\\\"meta.function-call.arguments\\\",\\\"variable.other.property.dom.ts\\\",\\\"support.variable.property.dom.ts\\\",\\\"variable.other.readwrite.powershell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fff\\\"}},{\\\"scope\\\":[\\\"storage.type.annotation\\\",\\\"punctuation.definition.annotation\\\",\\\"support.function.attribute.fsharp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#74dfc4\\\"}},{\\\"scope\\\":[\\\"entity.name.type\\\",\\\"storage.type\\\",\\\"keyword.var.go\\\",\\\"keyword.type.go\\\",\\\"keyword.type.js\\\",\\\"storage.type.js\\\",\\\"storage.type.ts\\\",\\\"keyword.type.cs\\\",\\\"keyword.const.go\\\",\\\"keyword.struct.go\\\",\\\"support.class.dart\\\",\\\"storage.modifier.c\\\",\\\"storage.modifier.ts\\\",\\\"keyword.function.go\\\",\\\"keyword.operator.new.ts\\\",\\\"meta.type.annotation.ts\\\",\\\"entity.name.type.fsharp\\\",\\\"meta.type.annotation.tsx\\\",\\\"storage.modifier.async.js\\\",\\\"punctuation.definition.variable.ruby\\\",\\\"punctuation.definition.constant.ruby\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a96bc0\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.italic\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#EB64B9\\\"}},{\\\"scope\\\":[\\\"meta.object-literal.key.js\\\",\\\"constant.other.object.key.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#40b4c4\\\"}},{\\\"scope\\\":[],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb85b\\\"}},{\\\"scope\\\":[\\\"meta.diff\\\",\\\"meta.diff.header\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#40b4c4\\\"}},{\\\"scope\\\":[\\\"meta.diff.range.unified\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b381c5\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\",\\\"punctuation.definition.deleted.diff\\\",\\\"punctuation.definition.from-file.diff\\\",\\\"meta.diff.header.from-file\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eb64b9\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\",\\\"punctuation.definition.inserted.diff\\\",\\\"punctuation.definition.to-file.diff\\\",\\\"meta.diff.header.to-file\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#74dfc4\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: light-plus */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"actionBar.toggledBackground\\\":\\\"#dddddd\\\",\\\"activityBarBadge.background\\\":\\\"#007ACC\\\",\\\"checkbox.border\\\":\\\"#919191\\\",\\\"diffEditor.unchangedRegionBackground\\\":\\\"#f8f8f8\\\",\\\"editor.background\\\":\\\"#FFFFFF\\\",\\\"editor.foreground\\\":\\\"#000000\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#E5EBF1\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#ADD6FF80\\\",\\\"editorIndentGuide.activeBackground1\\\":\\\"#939393\\\",\\\"editorIndentGuide.background1\\\":\\\"#D3D3D3\\\",\\\"editorSuggestWidget.background\\\":\\\"#F3F3F3\\\",\\\"input.placeholderForeground\\\":\\\"#767676\\\",\\\"list.activeSelectionIconForeground\\\":\\\"#FFF\\\",\\\"list.focusAndSelectionOutline\\\":\\\"#90C2F9\\\",\\\"list.hoverBackground\\\":\\\"#E8E8E8\\\",\\\"menu.border\\\":\\\"#D4D4D4\\\",\\\"notebook.cellBorderColor\\\":\\\"#E8E8E8\\\",\\\"notebook.selectedCellBackground\\\":\\\"#c8ddf150\\\",\\\"ports.iconRunningProcessForeground\\\":\\\"#369432\\\",\\\"searchEditor.textInputBorder\\\":\\\"#CECECE\\\",\\\"settings.numberInputBorder\\\":\\\"#CECECE\\\",\\\"settings.textInputBorder\\\":\\\"#CECECE\\\",\\\"sideBarSectionHeader.background\\\":\\\"#0000\\\",\\\"sideBarSectionHeader.border\\\":\\\"#61616130\\\",\\\"sideBarTitle.foreground\\\":\\\"#6F6F6F\\\",\\\"statusBarItem.errorBackground\\\":\\\"#c72e0f\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#16825D\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#FFF\\\",\\\"tab.lastPinnedBorder\\\":\\\"#61616130\\\",\\\"tab.selectedBackground\\\":\\\"#ffffffa5\\\",\\\"tab.selectedForeground\\\":\\\"#333333b3\\\",\\\"terminal.inactiveSelectionBackground\\\":\\\"#E5EBF1\\\",\\\"widget.border\\\":\\\"#d4d4d4\\\"},\\\"displayName\\\":\\\"Light Plus\\\",\\\"name\\\":\\\"light-plus\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"customLiteral\\\":\\\"#795E26\\\",\\\"newOperator\\\":\\\"#AF00DB\\\",\\\"numberLiteral\\\":\\\"#098658\\\",\\\"stringLiteral\\\":\\\"#a31515\\\"},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"meta.embedded\\\",\\\"source.groovy.embedded\\\",\\\"string meta.image.inline.markdown\\\",\\\"variable.legacy.builtin.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#000000ff\\\"}},{\\\"scope\\\":\\\"emphasis\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"strong\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#000080\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#008000\\\"}},{\\\"scope\\\":\\\"constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"variable.other.enummember\\\",\\\"keyword.operator.plus.exponent\\\",\\\"keyword.operator.minus.exponent\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#098658\\\"}},{\\\"scope\\\":\\\"constant.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#811f3f\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#800000\\\"}},{\\\"scope\\\":\\\"entity.name.selector\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#800000\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e50000\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.class.css\\\",\\\"source.css entity.other.attribute-name.class\\\",\\\"entity.other.attribute-name.id.css\\\",\\\"entity.other.attribute-name.parent-selector.css\\\",\\\"entity.other.attribute-name.parent.less\\\",\\\"source.css entity.other.attribute-name.pseudo-class\\\",\\\"entity.other.attribute-name.pseudo-element.css\\\",\\\"source.css.less entity.other.attribute-name.id\\\",\\\"entity.other.attribute-name.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#800000\\\"}},{\\\"scope\\\":\\\"invalid\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cd3131\\\"}},{\\\"scope\\\":\\\"markup.underline\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#000080\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#800000\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.strikethrough\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#098658\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a31515\\\"}},{\\\"scope\\\":\\\"markup.changed\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0451a5\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.quote.begin.markdown\\\",\\\"punctuation.definition.list.begin.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0451a5\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#800000\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#800000\\\"}},{\\\"scope\\\":[\\\"meta.preprocessor\\\",\\\"entity.name.function.preprocessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":\\\"meta.preprocessor.string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a31515\\\"}},{\\\"scope\\\":\\\"meta.preprocessor.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#098658\\\"}},{\\\"scope\\\":\\\"meta.structure.dictionary.key.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0451a5\\\"}},{\\\"scope\\\":\\\"storage\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":\\\"storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":[\\\"storage.modifier\\\",\\\"keyword.operator.noexcept\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"meta.embedded.assembly\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a31515\\\"}},{\\\"scope\\\":[\\\"string.comment.buffered.block.pug\\\",\\\"string.quoted.pug\\\",\\\"string.interpolated.pug\\\",\\\"string.unquoted.plain.in.yaml\\\",\\\"string.unquoted.plain.out.yaml\\\",\\\"string.unquoted.block.yaml\\\",\\\"string.quoted.single.yaml\\\",\\\"string.quoted.double.xml\\\",\\\"string.quoted.single.xml\\\",\\\"string.unquoted.cdata.xml\\\",\\\"string.quoted.double.html\\\",\\\"string.quoted.single.html\\\",\\\"string.unquoted.html\\\",\\\"string.quoted.single.handlebars\\\",\\\"string.quoted.double.handlebars\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":\\\"string.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#811f3f\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.template-expression.begin\\\",\\\"punctuation.definition.template-expression.end\\\",\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":[\\\"meta.template.expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#000000\\\"}},{\\\"scope\\\":[\\\"support.constant.property-value\\\",\\\"support.constant.font-name\\\",\\\"support.constant.media-type\\\",\\\"support.constant.media\\\",\\\"constant.other.color.rgb-value\\\",\\\"constant.other.rgb-value\\\",\\\"support.constant.color\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0451a5\\\"}},{\\\"scope\\\":[\\\"support.type.vendored.property-name\\\",\\\"support.type.property-name\\\",\\\"source.css variable\\\",\\\"source.coffee.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e50000\\\"}},{\\\"scope\\\":[\\\"support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0451a5\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":\\\"keyword.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":\\\"keyword.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#000000\\\"}},{\\\"scope\\\":[\\\"keyword.operator.new\\\",\\\"keyword.operator.expression\\\",\\\"keyword.operator.cast\\\",\\\"keyword.operator.sizeof\\\",\\\"keyword.operator.alignof\\\",\\\"keyword.operator.typeid\\\",\\\"keyword.operator.alignas\\\",\\\"keyword.operator.instanceof\\\",\\\"keyword.operator.logical.python\\\",\\\"keyword.operator.wordlike\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":\\\"keyword.other.unit\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#098658\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded.begin.php\\\",\\\"punctuation.section.embedded.end.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#800000\\\"}},{\\\"scope\\\":\\\"support.function.git-rebase\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0451a5\\\"}},{\\\"scope\\\":\\\"constant.sha.git-rebase\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#098658\\\"}},{\\\"scope\\\":[\\\"storage.modifier.import.java\\\",\\\"variable.language.wildcard.java\\\",\\\"storage.modifier.package.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#000000\\\"}},{\\\"scope\\\":\\\"variable.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"support.function\\\",\\\"support.constant.handlebars\\\",\\\"source.powershell variable.other.member\\\",\\\"entity.name.operator.custom-literal\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#795E26\\\"}},{\\\"scope\\\":[\\\"support.class\\\",\\\"support.type\\\",\\\"entity.name.type\\\",\\\"entity.name.namespace\\\",\\\"entity.other.attribute\\\",\\\"entity.name.scope-resolution\\\",\\\"entity.name.class\\\",\\\"storage.type.numeric.go\\\",\\\"storage.type.byte.go\\\",\\\"storage.type.boolean.go\\\",\\\"storage.type.string.go\\\",\\\"storage.type.uintptr.go\\\",\\\"storage.type.error.go\\\",\\\"storage.type.rune.go\\\",\\\"storage.type.cs\\\",\\\"storage.type.generic.cs\\\",\\\"storage.type.modifier.cs\\\",\\\"storage.type.variable.cs\\\",\\\"storage.type.annotation.java\\\",\\\"storage.type.generic.java\\\",\\\"storage.type.java\\\",\\\"storage.type.object.array.java\\\",\\\"storage.type.primitive.array.java\\\",\\\"storage.type.primitive.java\\\",\\\"storage.type.token.java\\\",\\\"storage.type.groovy\\\",\\\"storage.type.annotation.groovy\\\",\\\"storage.type.parameters.groovy\\\",\\\"storage.type.generic.groovy\\\",\\\"storage.type.object.array.groovy\\\",\\\"storage.type.primitive.array.groovy\\\",\\\"storage.type.primitive.groovy\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#267f99\\\"}},{\\\"scope\\\":[\\\"meta.type.cast.expr\\\",\\\"meta.type.new.expr\\\",\\\"support.constant.math\\\",\\\"support.constant.dom\\\",\\\"support.constant.json\\\",\\\"entity.other.inherited-class\\\",\\\"punctuation.separator.namespace.ruby\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#267f99\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\",\\\"source.cpp keyword.operator.new\\\",\\\"source.cpp keyword.operator.delete\\\",\\\"keyword.other.using\\\",\\\"keyword.other.directive.using\\\",\\\"keyword.other.operator\\\",\\\"entity.name.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#AF00DB\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"meta.definition.variable.name\\\",\\\"support.variable\\\",\\\"entity.name.variable\\\",\\\"constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#001080\\\"}},{\\\"scope\\\":[\\\"variable.other.constant\\\",\\\"variable.other.enummember\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0070C1\\\"}},{\\\"scope\\\":[\\\"meta.object-literal.key\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#001080\\\"}},{\\\"scope\\\":[\\\"support.constant.property-value\\\",\\\"support.constant.font-name\\\",\\\"support.constant.media-type\\\",\\\"support.constant.media\\\",\\\"constant.other.color.rgb-value\\\",\\\"constant.other.rgb-value\\\",\\\"support.constant.color\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0451a5\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.regexp\\\",\\\"punctuation.definition.group.assertion.regexp\\\",\\\"punctuation.definition.character-class.regexp\\\",\\\"punctuation.character.set.begin.regexp\\\",\\\"punctuation.character.set.end.regexp\\\",\\\"keyword.operator.negation.regexp\\\",\\\"support.other.parenthesis.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d16969\\\"}},{\\\"scope\\\":[\\\"constant.character.character-class.regexp\\\",\\\"constant.other.character-class.set.regexp\\\",\\\"constant.other.character-class.regexp\\\",\\\"constant.character.set.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#811f3f\\\"}},{\\\"scope\\\":\\\"keyword.operator.quantifier.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#000000\\\"}},{\\\"scope\\\":[\\\"keyword.operator.or.regexp\\\",\\\"keyword.control.anchor.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#EE0000\\\"}},{\\\"scope\\\":[\\\"constant.character\\\",\\\"constant.other.option\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0000ff\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EE0000\\\"}},{\\\"scope\\\":\\\"entity.name.label\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#000000\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: material-theme */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#80CBC4\\\",\\\"activityBar.background\\\":\\\"#263238\\\",\\\"activityBar.border\\\":\\\"#26323860\\\",\\\"activityBar.dropBackground\\\":\\\"#f0717880\\\",\\\"activityBar.foreground\\\":\\\"#EEFFFF\\\",\\\"activityBarBadge.background\\\":\\\"#80CBC4\\\",\\\"activityBarBadge.foreground\\\":\\\"#000000\\\",\\\"badge.background\\\":\\\"#00000030\\\",\\\"badge.foreground\\\":\\\"#546E7A\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#80CBC4\\\",\\\"breadcrumb.background\\\":\\\"#263238\\\",\\\"breadcrumb.focusForeground\\\":\\\"#EEFFFF\\\",\\\"breadcrumb.foreground\\\":\\\"#6c8692\\\",\\\"breadcrumbPicker.background\\\":\\\"#263238\\\",\\\"button.background\\\":\\\"#80CBC420\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"debugConsole.errorForeground\\\":\\\"#f07178\\\",\\\"debugConsole.infoForeground\\\":\\\"#89DDFF\\\",\\\"debugConsole.warningForeground\\\":\\\"#FFCB6B\\\",\\\"debugToolBar.background\\\":\\\"#263238\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#89DDFF20\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ff9cac20\\\",\\\"dropdown.background\\\":\\\"#263238\\\",\\\"dropdown.border\\\":\\\"#FFFFFF10\\\",\\\"editor.background\\\":\\\"#263238\\\",\\\"editor.findMatchBackground\\\":\\\"#000000\\\",\\\"editor.findMatchBorder\\\":\\\"#80CBC4\\\",\\\"editor.findMatchHighlight\\\":\\\"#EEFFFF\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#00000050\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#ffffff30\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#FFCB6B30\\\",\\\"editor.foreground\\\":\\\"#EEFFFF\\\",\\\"editor.lineHighlightBackground\\\":\\\"#00000050\\\",\\\"editor.lineHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#FFFFFF0d\\\",\\\"editor.selectionBackground\\\":\\\"#80CBC420\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#FFCC0020\\\",\\\"editor.wordHighlightBackground\\\":\\\"#ff9cac30\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#C3E88D30\\\",\\\"editorBracketMatch.background\\\":\\\"#263238\\\",\\\"editorBracketMatch.border\\\":\\\"#FFCC0050\\\",\\\"editorCursor.foreground\\\":\\\"#FFCC00\\\",\\\"editorError.foreground\\\":\\\"#f0717870\\\",\\\"editorGroup.border\\\":\\\"#00000030\\\",\\\"editorGroup.dropBackground\\\":\\\"#f0717880\\\",\\\"editorGroup.focusedEmptyBorder\\\":\\\"#f07178\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#263238\\\",\\\"editorGutter.addedBackground\\\":\\\"#C3E88D60\\\",\\\"editorGutter.deletedBackground\\\":\\\"#f0717860\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#82AAFF60\\\",\\\"editorHoverWidget.background\\\":\\\"#263238\\\",\\\"editorHoverWidget.border\\\":\\\"#FFFFFF10\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#37474F\\\",\\\"editorIndentGuide.background\\\":\\\"#37474F70\\\",\\\"editorInfo.foreground\\\":\\\"#82AAFF70\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#6c8692\\\",\\\"editorLineNumber.foreground\\\":\\\"#465A64\\\",\\\"editorLink.activeForeground\\\":\\\"#EEFFFF\\\",\\\"editorMarkerNavigation.background\\\":\\\"#EEFFFF05\\\",\\\"editorOverviewRuler.border\\\":\\\"#263238\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#f0717840\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#80CBC4\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#82AAFF40\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#FFCB6B40\\\",\\\"editorRuler.foreground\\\":\\\"#37474F\\\",\\\"editorSuggestWidget.background\\\":\\\"#263238\\\",\\\"editorSuggestWidget.border\\\":\\\"#FFFFFF10\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#EEFFFF\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#80CBC4\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#00000050\\\",\\\"editorWarning.foreground\\\":\\\"#FFCB6B70\\\",\\\"editorWhitespace.foreground\\\":\\\"#EEFFFF40\\\",\\\"editorWidget.background\\\":\\\"#263238\\\",\\\"editorWidget.border\\\":\\\"#80CBC4\\\",\\\"editorWidget.resizeBorder\\\":\\\"#80CBC4\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#EEFFFF\\\",\\\"extensionButton.prominentBackground\\\":\\\"#C3E88D90\\\",\\\"extensionButton.prominentForeground\\\":\\\"#EEFFFF\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#C3E88D\\\",\\\"focusBorder\\\":\\\"#FFFFFF00\\\",\\\"foreground\\\":\\\"#EEFFFF\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#FFCB6B90\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#f0717890\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#6c869290\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#82AAFF90\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#C3E88D90\\\",\\\"input.background\\\":\\\"#303C41\\\",\\\"input.border\\\":\\\"#FFFFFF10\\\",\\\"input.foreground\\\":\\\"#EEFFFF\\\",\\\"input.placeholderForeground\\\":\\\"#EEFFFF60\\\",\\\"inputOption.activeBackground\\\":\\\"#EEFFFF30\\\",\\\"inputOption.activeBorder\\\":\\\"#EEFFFF30\\\",\\\"inputValidation.errorBorder\\\":\\\"#f07178\\\",\\\"inputValidation.infoBorder\\\":\\\"#82AAFF\\\",\\\"inputValidation.warningBorder\\\":\\\"#FFCB6B\\\",\\\"list.activeSelectionBackground\\\":\\\"#263238\\\",\\\"list.activeSelectionForeground\\\":\\\"#80CBC4\\\",\\\"list.dropBackground\\\":\\\"#f0717880\\\",\\\"list.focusBackground\\\":\\\"#EEFFFF20\\\",\\\"list.focusForeground\\\":\\\"#EEFFFF\\\",\\\"list.highlightForeground\\\":\\\"#80CBC4\\\",\\\"list.hoverBackground\\\":\\\"#263238\\\",\\\"list.hoverForeground\\\":\\\"#FFFFFF\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#00000030\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#80CBC4\\\",\\\"listFilterWidget.background\\\":\\\"#00000030\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#00000030\\\",\\\"listFilterWidget.outline\\\":\\\"#00000030\\\",\\\"menu.background\\\":\\\"#263238\\\",\\\"menu.foreground\\\":\\\"#EEFFFF\\\",\\\"menu.selectionBackground\\\":\\\"#00000050\\\",\\\"menu.selectionBorder\\\":\\\"#00000030\\\",\\\"menu.selectionForeground\\\":\\\"#80CBC4\\\",\\\"menu.separatorBackground\\\":\\\"#EEFFFF\\\",\\\"menubar.selectionBackground\\\":\\\"#00000030\\\",\\\"menubar.selectionBorder\\\":\\\"#00000030\\\",\\\"menubar.selectionForeground\\\":\\\"#80CBC4\\\",\\\"notebook.focusedCellBorder\\\":\\\"#80CBC4\\\",\\\"notebook.inactiveFocusedCellBorder\\\":\\\"#80CBC450\\\",\\\"notificationLink.foreground\\\":\\\"#80CBC4\\\",\\\"notifications.background\\\":\\\"#263238\\\",\\\"notifications.foreground\\\":\\\"#EEFFFF\\\",\\\"panel.background\\\":\\\"#263238\\\",\\\"panel.border\\\":\\\"#26323860\\\",\\\"panel.dropBackground\\\":\\\"#EEFFFF\\\",\\\"panelTitle.activeBorder\\\":\\\"#80CBC4\\\",\\\"panelTitle.activeForeground\\\":\\\"#FFFFFF\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#EEFFFF\\\",\\\"peekView.border\\\":\\\"#00000030\\\",\\\"peekViewEditor.background\\\":\\\"#303C41\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#80CBC420\\\",\\\"peekViewEditorGutter.background\\\":\\\"#303C41\\\",\\\"peekViewResult.background\\\":\\\"#303C41\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#80CBC420\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#6c869270\\\",\\\"peekViewTitle.background\\\":\\\"#303C41\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#EEFFFF60\\\",\\\"pickerGroup.border\\\":\\\"#FFFFFF1a\\\",\\\"pickerGroup.foreground\\\":\\\"#80CBC4\\\",\\\"progressBar.background\\\":\\\"#80CBC4\\\",\\\"quickInput.background\\\":\\\"#263238\\\",\\\"quickInput.foreground\\\":\\\"#6c8692\\\",\\\"quickInput.list.focusBackground\\\":\\\"#EEFFFF20\\\",\\\"sash.hoverBorder\\\":\\\"#80CBC450\\\",\\\"scrollbar.shadow\\\":\\\"#00000030\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#80CBC4\\\",\\\"scrollbarSlider.background\\\":\\\"#EEFFFF20\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#EEFFFF10\\\",\\\"selection.background\\\":\\\"#00000080\\\",\\\"settings.checkboxBackground\\\":\\\"#263238\\\",\\\"settings.checkboxForeground\\\":\\\"#EEFFFF\\\",\\\"settings.dropdownBackground\\\":\\\"#263238\\\",\\\"settings.dropdownForeground\\\":\\\"#EEFFFF\\\",\\\"settings.headerForeground\\\":\\\"#80CBC4\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#80CBC4\\\",\\\"settings.numberInputBackground\\\":\\\"#263238\\\",\\\"settings.numberInputForeground\\\":\\\"#EEFFFF\\\",\\\"settings.textInputBackground\\\":\\\"#263238\\\",\\\"settings.textInputForeground\\\":\\\"#EEFFFF\\\",\\\"sideBar.background\\\":\\\"#263238\\\",\\\"sideBar.border\\\":\\\"#26323860\\\",\\\"sideBar.foreground\\\":\\\"#6c8692\\\",\\\"sideBarSectionHeader.background\\\":\\\"#263238\\\",\\\"sideBarSectionHeader.border\\\":\\\"#26323860\\\",\\\"sideBarTitle.foreground\\\":\\\"#EEFFFF\\\",\\\"statusBar.background\\\":\\\"#263238\\\",\\\"statusBar.border\\\":\\\"#26323860\\\",\\\"statusBar.debuggingBackground\\\":\\\"#C792EA\\\",\\\"statusBar.debuggingForeground\\\":\\\"#ffffff\\\",\\\"statusBar.foreground\\\":\\\"#546E7A\\\",\\\"statusBar.noFolderBackground\\\":\\\"#263238\\\",\\\"statusBarItem.activeBackground\\\":\\\"#f0717880\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#546E7A20\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#80CBC4\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#000000\\\",\\\"tab.activeBackground\\\":\\\"#263238\\\",\\\"tab.activeBorder\\\":\\\"#80CBC4\\\",\\\"tab.activeForeground\\\":\\\"#FFFFFF\\\",\\\"tab.activeModifiedBorder\\\":\\\"#6c8692\\\",\\\"tab.border\\\":\\\"#263238\\\",\\\"tab.inactiveBackground\\\":\\\"#263238\\\",\\\"tab.inactiveForeground\\\":\\\"#6c8692\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#904348\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#546E7A\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#EEFFFF\\\",\\\"tab.unfocusedActiveModifiedBorder\\\":\\\"#c05a60\\\",\\\"tab.unfocusedInactiveModifiedBorder\\\":\\\"#904348\\\",\\\"terminal.ansiBlack\\\":\\\"#000000\\\",\\\"terminal.ansiBlue\\\":\\\"#82AAFF\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#546E7A\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#82AAFF\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#89DDFF\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#C3E88D\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#C792EA\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f07178\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#FFCB6B\\\",\\\"terminal.ansiCyan\\\":\\\"#89DDFF\\\",\\\"terminal.ansiGreen\\\":\\\"#C3E88D\\\",\\\"terminal.ansiMagenta\\\":\\\"#C792EA\\\",\\\"terminal.ansiRed\\\":\\\"#f07178\\\",\\\"terminal.ansiWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiYellow\\\":\\\"#FFCB6B\\\",\\\"terminalCursor.background\\\":\\\"#000000\\\",\\\"terminalCursor.foreground\\\":\\\"#FFCB6B\\\",\\\"textLink.activeForeground\\\":\\\"#EEFFFF\\\",\\\"textLink.foreground\\\":\\\"#80CBC4\\\",\\\"titleBar.activeBackground\\\":\\\"#263238\\\",\\\"titleBar.activeForeground\\\":\\\"#EEFFFF\\\",\\\"titleBar.border\\\":\\\"#26323860\\\",\\\"titleBar.inactiveBackground\\\":\\\"#263238\\\",\\\"titleBar.inactiveForeground\\\":\\\"#6c8692\\\",\\\"tree.indentGuidesStroke\\\":\\\"#37474F\\\",\\\"widget.shadow\\\":\\\"#00000030\\\"},\\\"displayName\\\":\\\"Material Theme\\\",\\\"name\\\":\\\"material-theme\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"background\\\":\\\"#263238\\\",\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"punctuation, constant.other.symbol\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"constant.character.escape, text.html constant.character.entity.named\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"constant.language.boolean\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"keyword.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"keyword, modifier, variable.language.this, support.type.object, constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.function, support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"storage.type, storage.modifier, storage.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":\\\"support.module, support.node\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"support.type, constant.other.key\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"entity.name.type, entity.other.inherited-class, entity.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#546E7A\\\"}},{\\\"scope\\\":\\\"comment punctuation.definition.comment, string.quoted.docstring\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#546E7A\\\"}},{\\\"scope\\\":\\\"punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name, entity.name.type.class, support.type, support.class, meta.use\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"variable.object.property, meta.field.declaration entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.definition.method entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.function entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"meta.embedded, source.groovy.embedded, meta.template.expression\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"entity.name.tag.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"constant.language.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.id\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"source.css entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#B2CCD6\\\"}},{\\\"scope\\\":\\\"meta.tag, punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":\\\"punctuation.definition.entity.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"text.html.markdown meta.link.inline, meta.link.reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"text.html.markdown beginning.punctuation.definition.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.bold markup.italic, markup.italic markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic bold\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.fenced_code.block.markdown punctuation.definition.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.string.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"keyword.other.definition.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.name.section.group-title.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"source.cs meta.class.identifier storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.method.identifier entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"source.cs meta.method-call meta.method, source.cs entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"source.cs storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.method.return-type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.preprocessor\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#546E7A\\\"}},{\\\"scope\\\":\\\"source.cs entity.name.type.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"meta.jsx.children, SXNested\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"support.class.component\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cpp meta.block variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"source.python meta.member.access.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"source.python meta.function-call.python, meta.function-call.arguments\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"meta.block\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.name.function.call\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"source.php support.other.namespace, source.php meta.use support.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"constant.keyword\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"settings\\\":{\\\"background\\\":\\\"#263238\\\",\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":[\\\"constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.language.special.self.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"constant.character.format.placeholder.other.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":[\\\"markup.fenced_code.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF90\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#916b53\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: material-theme-darker */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#80CBC4\\\",\\\"activityBar.background\\\":\\\"#212121\\\",\\\"activityBar.border\\\":\\\"#21212160\\\",\\\"activityBar.dropBackground\\\":\\\"#f0717880\\\",\\\"activityBar.foreground\\\":\\\"#EEFFFF\\\",\\\"activityBarBadge.background\\\":\\\"#80CBC4\\\",\\\"activityBarBadge.foreground\\\":\\\"#000000\\\",\\\"badge.background\\\":\\\"#00000030\\\",\\\"badge.foreground\\\":\\\"#545454\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#80CBC4\\\",\\\"breadcrumb.background\\\":\\\"#212121\\\",\\\"breadcrumb.focusForeground\\\":\\\"#EEFFFF\\\",\\\"breadcrumb.foreground\\\":\\\"#676767\\\",\\\"breadcrumbPicker.background\\\":\\\"#212121\\\",\\\"button.background\\\":\\\"#61616150\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"debugConsole.errorForeground\\\":\\\"#f07178\\\",\\\"debugConsole.infoForeground\\\":\\\"#89DDFF\\\",\\\"debugConsole.warningForeground\\\":\\\"#FFCB6B\\\",\\\"debugToolBar.background\\\":\\\"#212121\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#89DDFF20\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ff9cac20\\\",\\\"dropdown.background\\\":\\\"#212121\\\",\\\"dropdown.border\\\":\\\"#FFFFFF10\\\",\\\"editor.background\\\":\\\"#212121\\\",\\\"editor.findMatchBackground\\\":\\\"#000000\\\",\\\"editor.findMatchBorder\\\":\\\"#80CBC4\\\",\\\"editor.findMatchHighlight\\\":\\\"#EEFFFF\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#00000050\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#ffffff30\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#FFCB6B30\\\",\\\"editor.foreground\\\":\\\"#EEFFFF\\\",\\\"editor.lineHighlightBackground\\\":\\\"#00000050\\\",\\\"editor.lineHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#FFFFFF0d\\\",\\\"editor.selectionBackground\\\":\\\"#61616150\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#FFCC0020\\\",\\\"editor.wordHighlightBackground\\\":\\\"#ff9cac30\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#C3E88D30\\\",\\\"editorBracketMatch.background\\\":\\\"#212121\\\",\\\"editorBracketMatch.border\\\":\\\"#FFCC0050\\\",\\\"editorCursor.foreground\\\":\\\"#FFCC00\\\",\\\"editorError.foreground\\\":\\\"#f0717870\\\",\\\"editorGroup.border\\\":\\\"#00000030\\\",\\\"editorGroup.dropBackground\\\":\\\"#f0717880\\\",\\\"editorGroup.focusedEmptyBorder\\\":\\\"#f07178\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#212121\\\",\\\"editorGutter.addedBackground\\\":\\\"#C3E88D60\\\",\\\"editorGutter.deletedBackground\\\":\\\"#f0717860\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#82AAFF60\\\",\\\"editorHoverWidget.background\\\":\\\"#212121\\\",\\\"editorHoverWidget.border\\\":\\\"#FFFFFF10\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#424242\\\",\\\"editorIndentGuide.background\\\":\\\"#42424270\\\",\\\"editorInfo.foreground\\\":\\\"#82AAFF70\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#676767\\\",\\\"editorLineNumber.foreground\\\":\\\"#424242\\\",\\\"editorLink.activeForeground\\\":\\\"#EEFFFF\\\",\\\"editorMarkerNavigation.background\\\":\\\"#EEFFFF05\\\",\\\"editorOverviewRuler.border\\\":\\\"#212121\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#f0717840\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#80CBC4\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#82AAFF40\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#FFCB6B40\\\",\\\"editorRuler.foreground\\\":\\\"#424242\\\",\\\"editorSuggestWidget.background\\\":\\\"#212121\\\",\\\"editorSuggestWidget.border\\\":\\\"#FFFFFF10\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#EEFFFF\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#80CBC4\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#00000050\\\",\\\"editorWarning.foreground\\\":\\\"#FFCB6B70\\\",\\\"editorWhitespace.foreground\\\":\\\"#EEFFFF40\\\",\\\"editorWidget.background\\\":\\\"#212121\\\",\\\"editorWidget.border\\\":\\\"#80CBC4\\\",\\\"editorWidget.resizeBorder\\\":\\\"#80CBC4\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#EEFFFF\\\",\\\"extensionButton.prominentBackground\\\":\\\"#C3E88D90\\\",\\\"extensionButton.prominentForeground\\\":\\\"#EEFFFF\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#C3E88D\\\",\\\"focusBorder\\\":\\\"#FFFFFF00\\\",\\\"foreground\\\":\\\"#EEFFFF\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#FFCB6B90\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#f0717890\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#67676790\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#82AAFF90\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#C3E88D90\\\",\\\"input.background\\\":\\\"#2B2B2B\\\",\\\"input.border\\\":\\\"#FFFFFF10\\\",\\\"input.foreground\\\":\\\"#EEFFFF\\\",\\\"input.placeholderForeground\\\":\\\"#EEFFFF60\\\",\\\"inputOption.activeBackground\\\":\\\"#EEFFFF30\\\",\\\"inputOption.activeBorder\\\":\\\"#EEFFFF30\\\",\\\"inputValidation.errorBorder\\\":\\\"#f07178\\\",\\\"inputValidation.infoBorder\\\":\\\"#82AAFF\\\",\\\"inputValidation.warningBorder\\\":\\\"#FFCB6B\\\",\\\"list.activeSelectionBackground\\\":\\\"#212121\\\",\\\"list.activeSelectionForeground\\\":\\\"#80CBC4\\\",\\\"list.dropBackground\\\":\\\"#f0717880\\\",\\\"list.focusBackground\\\":\\\"#EEFFFF20\\\",\\\"list.focusForeground\\\":\\\"#EEFFFF\\\",\\\"list.highlightForeground\\\":\\\"#80CBC4\\\",\\\"list.hoverBackground\\\":\\\"#212121\\\",\\\"list.hoverForeground\\\":\\\"#FFFFFF\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#00000030\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#80CBC4\\\",\\\"listFilterWidget.background\\\":\\\"#00000030\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#00000030\\\",\\\"listFilterWidget.outline\\\":\\\"#00000030\\\",\\\"menu.background\\\":\\\"#212121\\\",\\\"menu.foreground\\\":\\\"#EEFFFF\\\",\\\"menu.selectionBackground\\\":\\\"#00000050\\\",\\\"menu.selectionBorder\\\":\\\"#00000030\\\",\\\"menu.selectionForeground\\\":\\\"#80CBC4\\\",\\\"menu.separatorBackground\\\":\\\"#EEFFFF\\\",\\\"menubar.selectionBackground\\\":\\\"#00000030\\\",\\\"menubar.selectionBorder\\\":\\\"#00000030\\\",\\\"menubar.selectionForeground\\\":\\\"#80CBC4\\\",\\\"notebook.focusedCellBorder\\\":\\\"#80CBC4\\\",\\\"notebook.inactiveFocusedCellBorder\\\":\\\"#80CBC450\\\",\\\"notificationLink.foreground\\\":\\\"#80CBC4\\\",\\\"notifications.background\\\":\\\"#212121\\\",\\\"notifications.foreground\\\":\\\"#EEFFFF\\\",\\\"panel.background\\\":\\\"#212121\\\",\\\"panel.border\\\":\\\"#21212160\\\",\\\"panel.dropBackground\\\":\\\"#EEFFFF\\\",\\\"panelTitle.activeBorder\\\":\\\"#80CBC4\\\",\\\"panelTitle.activeForeground\\\":\\\"#FFFFFF\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#EEFFFF\\\",\\\"peekView.border\\\":\\\"#00000030\\\",\\\"peekViewEditor.background\\\":\\\"#2B2B2B\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#61616150\\\",\\\"peekViewEditorGutter.background\\\":\\\"#2B2B2B\\\",\\\"peekViewResult.background\\\":\\\"#2B2B2B\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#61616150\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#67676770\\\",\\\"peekViewTitle.background\\\":\\\"#2B2B2B\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#EEFFFF60\\\",\\\"pickerGroup.border\\\":\\\"#FFFFFF1a\\\",\\\"pickerGroup.foreground\\\":\\\"#80CBC4\\\",\\\"progressBar.background\\\":\\\"#80CBC4\\\",\\\"quickInput.background\\\":\\\"#212121\\\",\\\"quickInput.foreground\\\":\\\"#676767\\\",\\\"quickInput.list.focusBackground\\\":\\\"#EEFFFF20\\\",\\\"sash.hoverBorder\\\":\\\"#80CBC450\\\",\\\"scrollbar.shadow\\\":\\\"#00000030\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#80CBC4\\\",\\\"scrollbarSlider.background\\\":\\\"#EEFFFF20\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#EEFFFF10\\\",\\\"selection.background\\\":\\\"#00000080\\\",\\\"settings.checkboxBackground\\\":\\\"#212121\\\",\\\"settings.checkboxForeground\\\":\\\"#EEFFFF\\\",\\\"settings.dropdownBackground\\\":\\\"#212121\\\",\\\"settings.dropdownForeground\\\":\\\"#EEFFFF\\\",\\\"settings.headerForeground\\\":\\\"#80CBC4\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#80CBC4\\\",\\\"settings.numberInputBackground\\\":\\\"#212121\\\",\\\"settings.numberInputForeground\\\":\\\"#EEFFFF\\\",\\\"settings.textInputBackground\\\":\\\"#212121\\\",\\\"settings.textInputForeground\\\":\\\"#EEFFFF\\\",\\\"sideBar.background\\\":\\\"#212121\\\",\\\"sideBar.border\\\":\\\"#21212160\\\",\\\"sideBar.foreground\\\":\\\"#676767\\\",\\\"sideBarSectionHeader.background\\\":\\\"#212121\\\",\\\"sideBarSectionHeader.border\\\":\\\"#21212160\\\",\\\"sideBarTitle.foreground\\\":\\\"#EEFFFF\\\",\\\"statusBar.background\\\":\\\"#212121\\\",\\\"statusBar.border\\\":\\\"#21212160\\\",\\\"statusBar.debuggingBackground\\\":\\\"#C792EA\\\",\\\"statusBar.debuggingForeground\\\":\\\"#ffffff\\\",\\\"statusBar.foreground\\\":\\\"#616161\\\",\\\"statusBar.noFolderBackground\\\":\\\"#212121\\\",\\\"statusBarItem.activeBackground\\\":\\\"#f0717880\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#54545420\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#80CBC4\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#000000\\\",\\\"tab.activeBackground\\\":\\\"#212121\\\",\\\"tab.activeBorder\\\":\\\"#80CBC4\\\",\\\"tab.activeForeground\\\":\\\"#FFFFFF\\\",\\\"tab.activeModifiedBorder\\\":\\\"#676767\\\",\\\"tab.border\\\":\\\"#212121\\\",\\\"tab.inactiveBackground\\\":\\\"#212121\\\",\\\"tab.inactiveForeground\\\":\\\"#676767\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#904348\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#545454\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#EEFFFF\\\",\\\"tab.unfocusedActiveModifiedBorder\\\":\\\"#c05a60\\\",\\\"tab.unfocusedInactiveModifiedBorder\\\":\\\"#904348\\\",\\\"terminal.ansiBlack\\\":\\\"#000000\\\",\\\"terminal.ansiBlue\\\":\\\"#82AAFF\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#545454\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#82AAFF\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#89DDFF\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#C3E88D\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#C792EA\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f07178\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#FFCB6B\\\",\\\"terminal.ansiCyan\\\":\\\"#89DDFF\\\",\\\"terminal.ansiGreen\\\":\\\"#C3E88D\\\",\\\"terminal.ansiMagenta\\\":\\\"#C792EA\\\",\\\"terminal.ansiRed\\\":\\\"#f07178\\\",\\\"terminal.ansiWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiYellow\\\":\\\"#FFCB6B\\\",\\\"terminalCursor.background\\\":\\\"#000000\\\",\\\"terminalCursor.foreground\\\":\\\"#FFCB6B\\\",\\\"textLink.activeForeground\\\":\\\"#EEFFFF\\\",\\\"textLink.foreground\\\":\\\"#80CBC4\\\",\\\"titleBar.activeBackground\\\":\\\"#212121\\\",\\\"titleBar.activeForeground\\\":\\\"#EEFFFF\\\",\\\"titleBar.border\\\":\\\"#21212160\\\",\\\"titleBar.inactiveBackground\\\":\\\"#212121\\\",\\\"titleBar.inactiveForeground\\\":\\\"#676767\\\",\\\"tree.indentGuidesStroke\\\":\\\"#424242\\\",\\\"widget.shadow\\\":\\\"#00000030\\\"},\\\"displayName\\\":\\\"Material Theme Darker\\\",\\\"name\\\":\\\"material-theme-darker\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"background\\\":\\\"#212121\\\",\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"punctuation, constant.other.symbol\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"constant.character.escape, text.html constant.character.entity.named\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"constant.language.boolean\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"keyword.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"keyword, modifier, variable.language.this, support.type.object, constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.function, support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"storage.type, storage.modifier, storage.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":\\\"support.module, support.node\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"support.type, constant.other.key\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"entity.name.type, entity.other.inherited-class, entity.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#545454\\\"}},{\\\"scope\\\":\\\"comment punctuation.definition.comment, string.quoted.docstring\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#545454\\\"}},{\\\"scope\\\":\\\"punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name, entity.name.type.class, support.type, support.class, meta.use\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"variable.object.property, meta.field.declaration entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.definition.method entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.function entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"meta.embedded, source.groovy.embedded, meta.template.expression\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"entity.name.tag.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"constant.language.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.id\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"source.css entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#B2CCD6\\\"}},{\\\"scope\\\":\\\"meta.tag, punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":\\\"punctuation.definition.entity.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"text.html.markdown meta.link.inline, meta.link.reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"text.html.markdown beginning.punctuation.definition.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.bold markup.italic, markup.italic markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic bold\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.fenced_code.block.markdown punctuation.definition.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.string.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"keyword.other.definition.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.name.section.group-title.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"source.cs meta.class.identifier storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.method.identifier entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"source.cs meta.method-call meta.method, source.cs entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"source.cs storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.method.return-type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.preprocessor\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#545454\\\"}},{\\\"scope\\\":\\\"source.cs entity.name.type.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"meta.jsx.children, SXNested\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"support.class.component\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cpp meta.block variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"source.python meta.member.access.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"source.python meta.function-call.python, meta.function-call.arguments\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"meta.block\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.name.function.call\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"source.php support.other.namespace, source.php meta.use support.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":\\\"constant.keyword\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"settings\\\":{\\\"background\\\":\\\"#212121\\\",\\\"foreground\\\":\\\"#EEFFFF\\\"}},{\\\"scope\\\":[\\\"constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.language.special.self.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"constant.character.format.placeholder.other.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":[\\\"markup.fenced_code.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#EEFFFF90\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#916b53\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: material-theme-lighter */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#80CBC4\\\",\\\"activityBar.background\\\":\\\"#FAFAFA\\\",\\\"activityBar.border\\\":\\\"#FAFAFA60\\\",\\\"activityBar.dropBackground\\\":\\\"#E5393580\\\",\\\"activityBar.foreground\\\":\\\"#90A4AE\\\",\\\"activityBarBadge.background\\\":\\\"#80CBC4\\\",\\\"activityBarBadge.foreground\\\":\\\"#000000\\\",\\\"badge.background\\\":\\\"#CCD7DA30\\\",\\\"badge.foreground\\\":\\\"#90A4AE\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#80CBC4\\\",\\\"breadcrumb.background\\\":\\\"#FAFAFA\\\",\\\"breadcrumb.focusForeground\\\":\\\"#90A4AE\\\",\\\"breadcrumb.foreground\\\":\\\"#758a95\\\",\\\"breadcrumbPicker.background\\\":\\\"#FAFAFA\\\",\\\"button.background\\\":\\\"#80CBC440\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"debugConsole.errorForeground\\\":\\\"#E53935\\\",\\\"debugConsole.infoForeground\\\":\\\"#39ADB5\\\",\\\"debugConsole.warningForeground\\\":\\\"#E2931D\\\",\\\"debugToolBar.background\\\":\\\"#FAFAFA\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#39ADB520\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#FF537020\\\",\\\"dropdown.background\\\":\\\"#FAFAFA\\\",\\\"dropdown.border\\\":\\\"#00000010\\\",\\\"editor.background\\\":\\\"#FAFAFA\\\",\\\"editor.findMatchBackground\\\":\\\"#00000020\\\",\\\"editor.findMatchBorder\\\":\\\"#80CBC4\\\",\\\"editor.findMatchHighlight\\\":\\\"#90A4AE\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#00000010\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#00000030\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#E2931D30\\\",\\\"editor.foreground\\\":\\\"#90A4AE\\\",\\\"editor.lineHighlightBackground\\\":\\\"#CCD7DA50\\\",\\\"editor.lineHighlightBorder\\\":\\\"#CCD7DA00\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#FFFFFF0d\\\",\\\"editor.selectionBackground\\\":\\\"#80CBC440\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#27272720\\\",\\\"editor.wordHighlightBackground\\\":\\\"#FF537030\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#91B85930\\\",\\\"editorBracketMatch.background\\\":\\\"#FAFAFA\\\",\\\"editorBracketMatch.border\\\":\\\"#27272750\\\",\\\"editorCursor.foreground\\\":\\\"#272727\\\",\\\"editorError.foreground\\\":\\\"#E5393570\\\",\\\"editorGroup.border\\\":\\\"#00000020\\\",\\\"editorGroup.dropBackground\\\":\\\"#E5393580\\\",\\\"editorGroup.focusedEmptyBorder\\\":\\\"#E53935\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#FAFAFA\\\",\\\"editorGutter.addedBackground\\\":\\\"#91B85960\\\",\\\"editorGutter.deletedBackground\\\":\\\"#E5393560\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#6182B860\\\",\\\"editorHoverWidget.background\\\":\\\"#FAFAFA\\\",\\\"editorHoverWidget.border\\\":\\\"#00000010\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#B0BEC5\\\",\\\"editorIndentGuide.background\\\":\\\"#B0BEC570\\\",\\\"editorInfo.foreground\\\":\\\"#6182B870\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#758a95\\\",\\\"editorLineNumber.foreground\\\":\\\"#CFD8DC\\\",\\\"editorLink.activeForeground\\\":\\\"#90A4AE\\\",\\\"editorMarkerNavigation.background\\\":\\\"#90A4AE05\\\",\\\"editorOverviewRuler.border\\\":\\\"#FAFAFA\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#E5393540\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#80CBC4\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#6182B840\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#E2931D40\\\",\\\"editorRuler.foreground\\\":\\\"#B0BEC5\\\",\\\"editorSuggestWidget.background\\\":\\\"#FAFAFA\\\",\\\"editorSuggestWidget.border\\\":\\\"#00000010\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#90A4AE\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#80CBC4\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#CCD7DA50\\\",\\\"editorWarning.foreground\\\":\\\"#E2931D70\\\",\\\"editorWhitespace.foreground\\\":\\\"#90A4AE40\\\",\\\"editorWidget.background\\\":\\\"#FAFAFA\\\",\\\"editorWidget.border\\\":\\\"#80CBC4\\\",\\\"editorWidget.resizeBorder\\\":\\\"#80CBC4\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#90A4AE\\\",\\\"extensionButton.prominentBackground\\\":\\\"#91B85990\\\",\\\"extensionButton.prominentForeground\\\":\\\"#90A4AE\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#91B859\\\",\\\"focusBorder\\\":\\\"#FFFFFF00\\\",\\\"foreground\\\":\\\"#90A4AE\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#E2931D90\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#E5393590\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#758a9590\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#6182B890\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#91B85990\\\",\\\"input.background\\\":\\\"#EEEEEE\\\",\\\"input.border\\\":\\\"#00000010\\\",\\\"input.foreground\\\":\\\"#90A4AE\\\",\\\"input.placeholderForeground\\\":\\\"#90A4AE60\\\",\\\"inputOption.activeBackground\\\":\\\"#90A4AE30\\\",\\\"inputOption.activeBorder\\\":\\\"#90A4AE30\\\",\\\"inputValidation.errorBorder\\\":\\\"#E53935\\\",\\\"inputValidation.infoBorder\\\":\\\"#6182B8\\\",\\\"inputValidation.warningBorder\\\":\\\"#E2931D\\\",\\\"list.activeSelectionBackground\\\":\\\"#FAFAFA\\\",\\\"list.activeSelectionForeground\\\":\\\"#80CBC4\\\",\\\"list.dropBackground\\\":\\\"#E5393580\\\",\\\"list.focusBackground\\\":\\\"#90A4AE20\\\",\\\"list.focusForeground\\\":\\\"#90A4AE\\\",\\\"list.highlightForeground\\\":\\\"#80CBC4\\\",\\\"list.hoverBackground\\\":\\\"#FAFAFA\\\",\\\"list.hoverForeground\\\":\\\"#B1C7D3\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#CCD7DA50\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#80CBC4\\\",\\\"listFilterWidget.background\\\":\\\"#CCD7DA50\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#CCD7DA50\\\",\\\"listFilterWidget.outline\\\":\\\"#CCD7DA50\\\",\\\"menu.background\\\":\\\"#FAFAFA\\\",\\\"menu.foreground\\\":\\\"#90A4AE\\\",\\\"menu.selectionBackground\\\":\\\"#CCD7DA50\\\",\\\"menu.selectionBorder\\\":\\\"#CCD7DA50\\\",\\\"menu.selectionForeground\\\":\\\"#80CBC4\\\",\\\"menu.separatorBackground\\\":\\\"#90A4AE\\\",\\\"menubar.selectionBackground\\\":\\\"#CCD7DA50\\\",\\\"menubar.selectionBorder\\\":\\\"#CCD7DA50\\\",\\\"menubar.selectionForeground\\\":\\\"#80CBC4\\\",\\\"notebook.focusedCellBorder\\\":\\\"#80CBC4\\\",\\\"notebook.inactiveFocusedCellBorder\\\":\\\"#80CBC450\\\",\\\"notificationLink.foreground\\\":\\\"#80CBC4\\\",\\\"notifications.background\\\":\\\"#FAFAFA\\\",\\\"notifications.foreground\\\":\\\"#90A4AE\\\",\\\"panel.background\\\":\\\"#FAFAFA\\\",\\\"panel.border\\\":\\\"#FAFAFA60\\\",\\\"panel.dropBackground\\\":\\\"#90A4AE\\\",\\\"panelTitle.activeBorder\\\":\\\"#80CBC4\\\",\\\"panelTitle.activeForeground\\\":\\\"#000000\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#90A4AE\\\",\\\"peekView.border\\\":\\\"#00000020\\\",\\\"peekViewEditor.background\\\":\\\"#EEEEEE\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#80CBC440\\\",\\\"peekViewEditorGutter.background\\\":\\\"#EEEEEE\\\",\\\"peekViewResult.background\\\":\\\"#EEEEEE\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#80CBC440\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#758a9570\\\",\\\"peekViewTitle.background\\\":\\\"#EEEEEE\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#90A4AE60\\\",\\\"pickerGroup.border\\\":\\\"#FFFFFF1a\\\",\\\"pickerGroup.foreground\\\":\\\"#80CBC4\\\",\\\"progressBar.background\\\":\\\"#80CBC4\\\",\\\"quickInput.background\\\":\\\"#FAFAFA\\\",\\\"quickInput.foreground\\\":\\\"#758a95\\\",\\\"quickInput.list.focusBackground\\\":\\\"#90A4AE20\\\",\\\"sash.hoverBorder\\\":\\\"#80CBC450\\\",\\\"scrollbar.shadow\\\":\\\"#00000020\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#80CBC4\\\",\\\"scrollbarSlider.background\\\":\\\"#90A4AE20\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#90A4AE10\\\",\\\"selection.background\\\":\\\"#CCD7DA80\\\",\\\"settings.checkboxBackground\\\":\\\"#FAFAFA\\\",\\\"settings.checkboxForeground\\\":\\\"#90A4AE\\\",\\\"settings.dropdownBackground\\\":\\\"#FAFAFA\\\",\\\"settings.dropdownForeground\\\":\\\"#90A4AE\\\",\\\"settings.headerForeground\\\":\\\"#80CBC4\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#80CBC4\\\",\\\"settings.numberInputBackground\\\":\\\"#FAFAFA\\\",\\\"settings.numberInputForeground\\\":\\\"#90A4AE\\\",\\\"settings.textInputBackground\\\":\\\"#FAFAFA\\\",\\\"settings.textInputForeground\\\":\\\"#90A4AE\\\",\\\"sideBar.background\\\":\\\"#FAFAFA\\\",\\\"sideBar.border\\\":\\\"#FAFAFA60\\\",\\\"sideBar.foreground\\\":\\\"#758a95\\\",\\\"sideBarSectionHeader.background\\\":\\\"#FAFAFA\\\",\\\"sideBarSectionHeader.border\\\":\\\"#FAFAFA60\\\",\\\"sideBarTitle.foreground\\\":\\\"#90A4AE\\\",\\\"statusBar.background\\\":\\\"#FAFAFA\\\",\\\"statusBar.border\\\":\\\"#FAFAFA60\\\",\\\"statusBar.debuggingBackground\\\":\\\"#9C3EDA\\\",\\\"statusBar.debuggingForeground\\\":\\\"#FFFFFF\\\",\\\"statusBar.foreground\\\":\\\"#7E939E\\\",\\\"statusBar.noFolderBackground\\\":\\\"#FAFAFA\\\",\\\"statusBarItem.activeBackground\\\":\\\"#E5393580\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#90A4AE20\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#80CBC4\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#000000\\\",\\\"tab.activeBackground\\\":\\\"#FAFAFA\\\",\\\"tab.activeBorder\\\":\\\"#80CBC4\\\",\\\"tab.activeForeground\\\":\\\"#000000\\\",\\\"tab.activeModifiedBorder\\\":\\\"#758a95\\\",\\\"tab.border\\\":\\\"#FAFAFA\\\",\\\"tab.inactiveBackground\\\":\\\"#FAFAFA\\\",\\\"tab.inactiveForeground\\\":\\\"#758a95\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#89221f\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#90A4AE\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#90A4AE\\\",\\\"tab.unfocusedActiveModifiedBorder\\\":\\\"#b72d2a\\\",\\\"tab.unfocusedInactiveModifiedBorder\\\":\\\"#89221f\\\",\\\"terminal.ansiBlack\\\":\\\"#000000\\\",\\\"terminal.ansiBlue\\\":\\\"#6182B8\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#90A4AE\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#6182B8\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#39ADB5\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#91B859\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#9C3EDA\\\",\\\"terminal.ansiBrightRed\\\":\\\"#E53935\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#FFFFFF\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#E2931D\\\",\\\"terminal.ansiCyan\\\":\\\"#39ADB5\\\",\\\"terminal.ansiGreen\\\":\\\"#91B859\\\",\\\"terminal.ansiMagenta\\\":\\\"#9C3EDA\\\",\\\"terminal.ansiRed\\\":\\\"#E53935\\\",\\\"terminal.ansiWhite\\\":\\\"#FFFFFF\\\",\\\"terminal.ansiYellow\\\":\\\"#E2931D\\\",\\\"terminalCursor.background\\\":\\\"#000000\\\",\\\"terminalCursor.foreground\\\":\\\"#E2931D\\\",\\\"textLink.activeForeground\\\":\\\"#90A4AE\\\",\\\"textLink.foreground\\\":\\\"#80CBC4\\\",\\\"titleBar.activeBackground\\\":\\\"#FAFAFA\\\",\\\"titleBar.activeForeground\\\":\\\"#90A4AE\\\",\\\"titleBar.border\\\":\\\"#FAFAFA60\\\",\\\"titleBar.inactiveBackground\\\":\\\"#FAFAFA\\\",\\\"titleBar.inactiveForeground\\\":\\\"#758a95\\\",\\\"tree.indentGuidesStroke\\\":\\\"#B0BEC5\\\",\\\"widget.shadow\\\":\\\"#00000020\\\"},\\\"displayName\\\":\\\"Material Theme Lighter\\\",\\\"name\\\":\\\"material-theme-lighter\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"background\\\":\\\"#FAFAFA\\\",\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91B859\\\"}},{\\\"scope\\\":\\\"punctuation, constant.other.symbol\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":\\\"constant.character.escape, text.html constant.character.entity.named\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"constant.language.boolean\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5370\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F76D47\\\"}},{\\\"scope\\\":\\\"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"keyword.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F76D47\\\"}},{\\\"scope\\\":\\\"keyword, modifier, variable.language.this, support.type.object, constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":\\\"entity.name.function, support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6182B8\\\"}},{\\\"scope\\\":\\\"storage.type, storage.modifier, storage.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9C3EDA\\\"}},{\\\"scope\\\":\\\"support.module, support.node\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"support.type, constant.other.key\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E2931D\\\"}},{\\\"scope\\\":\\\"entity.name.type, entity.other.inherited-class, entity.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E2931D\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"comment punctuation.definition.comment, string.quoted.docstring\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":\\\"entity.name, entity.name.type.class, support.type, support.class, meta.use\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E2931D\\\"}},{\\\"scope\\\":\\\"variable.object.property, meta.field.declaration entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"meta.definition.method entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"meta.function entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6182B8\\\"}},{\\\"scope\\\":\\\"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":\\\"meta.embedded, source.groovy.embedded, meta.template.expression\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"entity.name.tag.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"constant.language.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E2931D\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.id\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F76D47\\\"}},{\\\"scope\\\":\\\"source.css entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E2931D\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8796B0\\\"}},{\\\"scope\\\":\\\"meta.tag, punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9C3EDA\\\"}},{\\\"scope\\\":\\\"punctuation.definition.entity.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":\\\"text.html.markdown meta.link.inline, meta.link.reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"text.html.markdown beginning.punctuation.definition.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"markup.bold markup.italic, markup.italic markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic bold\\\",\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"markup.fenced_code.block.markdown punctuation.definition.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91B859\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.string.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#91B859\\\"}},{\\\"scope\\\":\\\"keyword.other.definition.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"entity.name.section.group-title.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":\\\"source.cs meta.class.identifier storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E2931D\\\"}},{\\\"scope\\\":\\\"source.cs meta.method.identifier entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"source.cs meta.method-call meta.method, source.cs entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6182B8\\\"}},{\\\"scope\\\":\\\"source.cs storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E2931D\\\"}},{\\\"scope\\\":\\\"source.cs meta.method.return-type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E2931D\\\"}},{\\\"scope\\\":\\\"source.cs meta.preprocessor\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"source.cs entity.name.type.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"meta.jsx.children, SXNested\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"support.class.component\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E2931D\\\"}},{\\\"scope\\\":\\\"source.cpp meta.block variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"source.python meta.member.access.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"source.python meta.function-call.python, meta.function-call.arguments\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6182B8\\\"}},{\\\"scope\\\":\\\"meta.block\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":\\\"entity.name.function.call\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6182B8\\\"}},{\\\"scope\\\":\\\"source.php support.other.namespace, source.php meta.use support.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":\\\"constant.keyword\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6182B8\\\"}},{\\\"settings\\\":{\\\"background\\\":\\\"#FAFAFA\\\",\\\"foreground\\\":\\\"#90A4AE\\\"}},{\\\"scope\\\":[\\\"constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91B859\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.language.special.self.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":[\\\"constant.character.format.placeholder.other.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F76D47\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#39ADB5\\\"}},{\\\"scope\\\":[\\\"markup.fenced_code.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#90A4AE90\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5370\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9C3EDA\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E2931D\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F76D47\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E53935\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#916b53\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6182B8\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5370\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9C3EDA\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91B859\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: material-theme-ocean */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#80CBC4\\\",\\\"activityBar.background\\\":\\\"#0F111A\\\",\\\"activityBar.border\\\":\\\"#0F111A60\\\",\\\"activityBar.dropBackground\\\":\\\"#f0717880\\\",\\\"activityBar.foreground\\\":\\\"#babed8\\\",\\\"activityBarBadge.background\\\":\\\"#80CBC4\\\",\\\"activityBarBadge.foreground\\\":\\\"#000000\\\",\\\"badge.background\\\":\\\"#00000030\\\",\\\"badge.foreground\\\":\\\"#464B5D\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#80CBC4\\\",\\\"breadcrumb.background\\\":\\\"#0F111A\\\",\\\"breadcrumb.focusForeground\\\":\\\"#babed8\\\",\\\"breadcrumb.foreground\\\":\\\"#525975\\\",\\\"breadcrumbPicker.background\\\":\\\"#0F111A\\\",\\\"button.background\\\":\\\"#717CB450\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"debugConsole.errorForeground\\\":\\\"#f07178\\\",\\\"debugConsole.infoForeground\\\":\\\"#89DDFF\\\",\\\"debugConsole.warningForeground\\\":\\\"#FFCB6B\\\",\\\"debugToolBar.background\\\":\\\"#0F111A\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#89DDFF20\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ff9cac20\\\",\\\"dropdown.background\\\":\\\"#0F111A\\\",\\\"dropdown.border\\\":\\\"#FFFFFF10\\\",\\\"editor.background\\\":\\\"#0F111A\\\",\\\"editor.findMatchBackground\\\":\\\"#000000\\\",\\\"editor.findMatchBorder\\\":\\\"#80CBC4\\\",\\\"editor.findMatchHighlight\\\":\\\"#babed8\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#00000050\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#ffffff30\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#FFCB6B30\\\",\\\"editor.foreground\\\":\\\"#babed8\\\",\\\"editor.lineHighlightBackground\\\":\\\"#00000050\\\",\\\"editor.lineHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#FFFFFF0d\\\",\\\"editor.selectionBackground\\\":\\\"#717CB450\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#FFCC0020\\\",\\\"editor.wordHighlightBackground\\\":\\\"#ff9cac30\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#C3E88D30\\\",\\\"editorBracketMatch.background\\\":\\\"#0F111A\\\",\\\"editorBracketMatch.border\\\":\\\"#FFCC0050\\\",\\\"editorCursor.foreground\\\":\\\"#FFCC00\\\",\\\"editorError.foreground\\\":\\\"#f0717870\\\",\\\"editorGroup.border\\\":\\\"#00000030\\\",\\\"editorGroup.dropBackground\\\":\\\"#f0717880\\\",\\\"editorGroup.focusedEmptyBorder\\\":\\\"#f07178\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#0F111A\\\",\\\"editorGutter.addedBackground\\\":\\\"#C3E88D60\\\",\\\"editorGutter.deletedBackground\\\":\\\"#f0717860\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#82AAFF60\\\",\\\"editorHoverWidget.background\\\":\\\"#0F111A\\\",\\\"editorHoverWidget.border\\\":\\\"#FFFFFF10\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#3B3F51\\\",\\\"editorIndentGuide.background\\\":\\\"#3B3F5170\\\",\\\"editorInfo.foreground\\\":\\\"#82AAFF70\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#525975\\\",\\\"editorLineNumber.foreground\\\":\\\"#3B3F5180\\\",\\\"editorLink.activeForeground\\\":\\\"#babed8\\\",\\\"editorMarkerNavigation.background\\\":\\\"#babed805\\\",\\\"editorOverviewRuler.border\\\":\\\"#0F111A\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#f0717840\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#80CBC4\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#82AAFF40\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#FFCB6B40\\\",\\\"editorRuler.foreground\\\":\\\"#3B3F51\\\",\\\"editorSuggestWidget.background\\\":\\\"#0F111A\\\",\\\"editorSuggestWidget.border\\\":\\\"#FFFFFF10\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#babed8\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#80CBC4\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#00000050\\\",\\\"editorWarning.foreground\\\":\\\"#FFCB6B70\\\",\\\"editorWhitespace.foreground\\\":\\\"#babed840\\\",\\\"editorWidget.background\\\":\\\"#0F111A\\\",\\\"editorWidget.border\\\":\\\"#80CBC4\\\",\\\"editorWidget.resizeBorder\\\":\\\"#80CBC4\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#babed8\\\",\\\"extensionButton.prominentBackground\\\":\\\"#C3E88D90\\\",\\\"extensionButton.prominentForeground\\\":\\\"#babed8\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#C3E88D\\\",\\\"focusBorder\\\":\\\"#FFFFFF00\\\",\\\"foreground\\\":\\\"#babed8\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#FFCB6B90\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#f0717890\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#52597590\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#82AAFF90\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#C3E88D90\\\",\\\"input.background\\\":\\\"#1A1C25\\\",\\\"input.border\\\":\\\"#FFFFFF10\\\",\\\"input.foreground\\\":\\\"#babed8\\\",\\\"input.placeholderForeground\\\":\\\"#babed860\\\",\\\"inputOption.activeBackground\\\":\\\"#babed830\\\",\\\"inputOption.activeBorder\\\":\\\"#babed830\\\",\\\"inputValidation.errorBorder\\\":\\\"#f07178\\\",\\\"inputValidation.infoBorder\\\":\\\"#82AAFF\\\",\\\"inputValidation.warningBorder\\\":\\\"#FFCB6B\\\",\\\"list.activeSelectionBackground\\\":\\\"#0F111A\\\",\\\"list.activeSelectionForeground\\\":\\\"#80CBC4\\\",\\\"list.dropBackground\\\":\\\"#f0717880\\\",\\\"list.focusBackground\\\":\\\"#babed820\\\",\\\"list.focusForeground\\\":\\\"#babed8\\\",\\\"list.highlightForeground\\\":\\\"#80CBC4\\\",\\\"list.hoverBackground\\\":\\\"#0F111A\\\",\\\"list.hoverForeground\\\":\\\"#FFFFFF\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#00000030\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#80CBC4\\\",\\\"listFilterWidget.background\\\":\\\"#00000030\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#00000030\\\",\\\"listFilterWidget.outline\\\":\\\"#00000030\\\",\\\"menu.background\\\":\\\"#0F111A\\\",\\\"menu.foreground\\\":\\\"#babed8\\\",\\\"menu.selectionBackground\\\":\\\"#00000050\\\",\\\"menu.selectionBorder\\\":\\\"#00000030\\\",\\\"menu.selectionForeground\\\":\\\"#80CBC4\\\",\\\"menu.separatorBackground\\\":\\\"#babed8\\\",\\\"menubar.selectionBackground\\\":\\\"#00000030\\\",\\\"menubar.selectionBorder\\\":\\\"#00000030\\\",\\\"menubar.selectionForeground\\\":\\\"#80CBC4\\\",\\\"notebook.focusedCellBorder\\\":\\\"#80CBC4\\\",\\\"notebook.inactiveFocusedCellBorder\\\":\\\"#80CBC450\\\",\\\"notificationLink.foreground\\\":\\\"#80CBC4\\\",\\\"notifications.background\\\":\\\"#0F111A\\\",\\\"notifications.foreground\\\":\\\"#babed8\\\",\\\"panel.background\\\":\\\"#0F111A\\\",\\\"panel.border\\\":\\\"#0F111A60\\\",\\\"panel.dropBackground\\\":\\\"#babed8\\\",\\\"panelTitle.activeBorder\\\":\\\"#80CBC4\\\",\\\"panelTitle.activeForeground\\\":\\\"#FFFFFF\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#babed8\\\",\\\"peekView.border\\\":\\\"#00000030\\\",\\\"peekViewEditor.background\\\":\\\"#1A1C25\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#717CB450\\\",\\\"peekViewEditorGutter.background\\\":\\\"#1A1C25\\\",\\\"peekViewResult.background\\\":\\\"#1A1C25\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#717CB450\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#52597570\\\",\\\"peekViewTitle.background\\\":\\\"#1A1C25\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#babed860\\\",\\\"pickerGroup.border\\\":\\\"#FFFFFF1a\\\",\\\"pickerGroup.foreground\\\":\\\"#80CBC4\\\",\\\"progressBar.background\\\":\\\"#80CBC4\\\",\\\"quickInput.background\\\":\\\"#0F111A\\\",\\\"quickInput.foreground\\\":\\\"#525975\\\",\\\"quickInput.list.focusBackground\\\":\\\"#babed820\\\",\\\"sash.hoverBorder\\\":\\\"#80CBC450\\\",\\\"scrollbar.shadow\\\":\\\"#00000030\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#80CBC4\\\",\\\"scrollbarSlider.background\\\":\\\"#8F93A220\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#8F93A210\\\",\\\"selection.background\\\":\\\"#00000080\\\",\\\"settings.checkboxBackground\\\":\\\"#0F111A\\\",\\\"settings.checkboxForeground\\\":\\\"#babed8\\\",\\\"settings.dropdownBackground\\\":\\\"#0F111A\\\",\\\"settings.dropdownForeground\\\":\\\"#babed8\\\",\\\"settings.headerForeground\\\":\\\"#80CBC4\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#80CBC4\\\",\\\"settings.numberInputBackground\\\":\\\"#0F111A\\\",\\\"settings.numberInputForeground\\\":\\\"#babed8\\\",\\\"settings.textInputBackground\\\":\\\"#0F111A\\\",\\\"settings.textInputForeground\\\":\\\"#babed8\\\",\\\"sideBar.background\\\":\\\"#0F111A\\\",\\\"sideBar.border\\\":\\\"#0F111A60\\\",\\\"sideBar.foreground\\\":\\\"#525975\\\",\\\"sideBarSectionHeader.background\\\":\\\"#0F111A\\\",\\\"sideBarSectionHeader.border\\\":\\\"#0F111A60\\\",\\\"sideBarTitle.foreground\\\":\\\"#babed8\\\",\\\"statusBar.background\\\":\\\"#0F111A\\\",\\\"statusBar.border\\\":\\\"#0F111A60\\\",\\\"statusBar.debuggingBackground\\\":\\\"#C792EA\\\",\\\"statusBar.debuggingForeground\\\":\\\"#ffffff\\\",\\\"statusBar.foreground\\\":\\\"#4B526D\\\",\\\"statusBar.noFolderBackground\\\":\\\"#0F111A\\\",\\\"statusBarItem.activeBackground\\\":\\\"#f0717880\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#464B5D20\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#80CBC4\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#000000\\\",\\\"tab.activeBackground\\\":\\\"#0F111A\\\",\\\"tab.activeBorder\\\":\\\"#80CBC4\\\",\\\"tab.activeForeground\\\":\\\"#FFFFFF\\\",\\\"tab.activeModifiedBorder\\\":\\\"#525975\\\",\\\"tab.border\\\":\\\"#0F111A\\\",\\\"tab.inactiveBackground\\\":\\\"#0F111A\\\",\\\"tab.inactiveForeground\\\":\\\"#525975\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#904348\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#464B5D\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#babed8\\\",\\\"tab.unfocusedActiveModifiedBorder\\\":\\\"#c05a60\\\",\\\"tab.unfocusedInactiveModifiedBorder\\\":\\\"#904348\\\",\\\"terminal.ansiBlack\\\":\\\"#000000\\\",\\\"terminal.ansiBlue\\\":\\\"#82AAFF\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#464B5D\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#82AAFF\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#89DDFF\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#C3E88D\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#C792EA\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f07178\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#FFCB6B\\\",\\\"terminal.ansiCyan\\\":\\\"#89DDFF\\\",\\\"terminal.ansiGreen\\\":\\\"#C3E88D\\\",\\\"terminal.ansiMagenta\\\":\\\"#C792EA\\\",\\\"terminal.ansiRed\\\":\\\"#f07178\\\",\\\"terminal.ansiWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiYellow\\\":\\\"#FFCB6B\\\",\\\"terminalCursor.background\\\":\\\"#000000\\\",\\\"terminalCursor.foreground\\\":\\\"#FFCB6B\\\",\\\"textLink.activeForeground\\\":\\\"#babed8\\\",\\\"textLink.foreground\\\":\\\"#80CBC4\\\",\\\"titleBar.activeBackground\\\":\\\"#0F111A\\\",\\\"titleBar.activeForeground\\\":\\\"#babed8\\\",\\\"titleBar.border\\\":\\\"#0F111A60\\\",\\\"titleBar.inactiveBackground\\\":\\\"#0F111A\\\",\\\"titleBar.inactiveForeground\\\":\\\"#525975\\\",\\\"tree.indentGuidesStroke\\\":\\\"#3B3F51\\\",\\\"widget.shadow\\\":\\\"#00000030\\\"},\\\"displayName\\\":\\\"Material Theme Ocean\\\",\\\"name\\\":\\\"material-theme-ocean\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"background\\\":\\\"#0F111A\\\",\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"punctuation, constant.other.symbol\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"constant.character.escape, text.html constant.character.entity.named\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"constant.language.boolean\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"keyword.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"keyword, modifier, variable.language.this, support.type.object, constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.function, support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"storage.type, storage.modifier, storage.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":\\\"support.module, support.node\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"support.type, constant.other.key\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"entity.name.type, entity.other.inherited-class, entity.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#464B5D\\\"}},{\\\"scope\\\":\\\"comment punctuation.definition.comment, string.quoted.docstring\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#464B5D\\\"}},{\\\"scope\\\":\\\"punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name, entity.name.type.class, support.type, support.class, meta.use\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"variable.object.property, meta.field.declaration entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.definition.method entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.function entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"meta.embedded, source.groovy.embedded, meta.template.expression\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"entity.name.tag.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"constant.language.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.id\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"source.css entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#B2CCD6\\\"}},{\\\"scope\\\":\\\"meta.tag, punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":\\\"punctuation.definition.entity.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"text.html.markdown meta.link.inline, meta.link.reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"text.html.markdown beginning.punctuation.definition.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.bold markup.italic, markup.italic markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic bold\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.fenced_code.block.markdown punctuation.definition.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.string.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"keyword.other.definition.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.name.section.group-title.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"source.cs meta.class.identifier storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.method.identifier entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"source.cs meta.method-call meta.method, source.cs entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"source.cs storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.method.return-type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.preprocessor\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#464B5D\\\"}},{\\\"scope\\\":\\\"source.cs entity.name.type.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"meta.jsx.children, SXNested\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"support.class.component\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cpp meta.block variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"source.python meta.member.access.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"source.python meta.function-call.python, meta.function-call.arguments\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"meta.block\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.name.function.call\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"source.php support.other.namespace, source.php meta.use support.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"constant.keyword\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"settings\\\":{\\\"background\\\":\\\"#0F111A\\\",\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":[\\\"constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.language.special.self.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"constant.character.format.placeholder.other.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":[\\\"markup.fenced_code.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#babed890\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#916b53\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: material-theme-palenight */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#80CBC4\\\",\\\"activityBar.background\\\":\\\"#292D3E\\\",\\\"activityBar.border\\\":\\\"#292D3E60\\\",\\\"activityBar.dropBackground\\\":\\\"#f0717880\\\",\\\"activityBar.foreground\\\":\\\"#babed8\\\",\\\"activityBarBadge.background\\\":\\\"#80CBC4\\\",\\\"activityBarBadge.foreground\\\":\\\"#000000\\\",\\\"badge.background\\\":\\\"#00000030\\\",\\\"badge.foreground\\\":\\\"#676E95\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#80CBC4\\\",\\\"breadcrumb.background\\\":\\\"#292D3E\\\",\\\"breadcrumb.focusForeground\\\":\\\"#babed8\\\",\\\"breadcrumb.foreground\\\":\\\"#676E95\\\",\\\"breadcrumbPicker.background\\\":\\\"#292D3E\\\",\\\"button.background\\\":\\\"#717CB450\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"debugConsole.errorForeground\\\":\\\"#f07178\\\",\\\"debugConsole.infoForeground\\\":\\\"#89DDFF\\\",\\\"debugConsole.warningForeground\\\":\\\"#FFCB6B\\\",\\\"debugToolBar.background\\\":\\\"#292D3E\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#89DDFF20\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ff9cac20\\\",\\\"dropdown.background\\\":\\\"#292D3E\\\",\\\"dropdown.border\\\":\\\"#FFFFFF10\\\",\\\"editor.background\\\":\\\"#292D3E\\\",\\\"editor.findMatchBackground\\\":\\\"#000000\\\",\\\"editor.findMatchBorder\\\":\\\"#80CBC4\\\",\\\"editor.findMatchHighlight\\\":\\\"#babed8\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#00000050\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#ffffff30\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#FFCB6B30\\\",\\\"editor.foreground\\\":\\\"#babed8\\\",\\\"editor.lineHighlightBackground\\\":\\\"#00000050\\\",\\\"editor.lineHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#FFFFFF0d\\\",\\\"editor.selectionBackground\\\":\\\"#717CB450\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#FFCC0020\\\",\\\"editor.wordHighlightBackground\\\":\\\"#ff9cac30\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#C3E88D30\\\",\\\"editorBracketMatch.background\\\":\\\"#292D3E\\\",\\\"editorBracketMatch.border\\\":\\\"#FFCC0050\\\",\\\"editorCursor.foreground\\\":\\\"#FFCC00\\\",\\\"editorError.foreground\\\":\\\"#f0717870\\\",\\\"editorGroup.border\\\":\\\"#00000030\\\",\\\"editorGroup.dropBackground\\\":\\\"#f0717880\\\",\\\"editorGroup.focusedEmptyBorder\\\":\\\"#f07178\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#292D3E\\\",\\\"editorGutter.addedBackground\\\":\\\"#C3E88D60\\\",\\\"editorGutter.deletedBackground\\\":\\\"#f0717860\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#82AAFF60\\\",\\\"editorHoverWidget.background\\\":\\\"#292D3E\\\",\\\"editorHoverWidget.border\\\":\\\"#FFFFFF10\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#4E5579\\\",\\\"editorIndentGuide.background\\\":\\\"#4E557970\\\",\\\"editorInfo.foreground\\\":\\\"#82AAFF70\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#676E95\\\",\\\"editorLineNumber.foreground\\\":\\\"#3A3F58\\\",\\\"editorLink.activeForeground\\\":\\\"#babed8\\\",\\\"editorMarkerNavigation.background\\\":\\\"#babed805\\\",\\\"editorOverviewRuler.border\\\":\\\"#292D3E\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#f0717840\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#80CBC4\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#82AAFF40\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#FFCB6B40\\\",\\\"editorRuler.foreground\\\":\\\"#4E5579\\\",\\\"editorSuggestWidget.background\\\":\\\"#292D3E\\\",\\\"editorSuggestWidget.border\\\":\\\"#FFFFFF10\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#babed8\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#80CBC4\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#00000050\\\",\\\"editorWarning.foreground\\\":\\\"#FFCB6B70\\\",\\\"editorWhitespace.foreground\\\":\\\"#babed840\\\",\\\"editorWidget.background\\\":\\\"#292D3E\\\",\\\"editorWidget.border\\\":\\\"#80CBC4\\\",\\\"editorWidget.resizeBorder\\\":\\\"#80CBC4\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#babed8\\\",\\\"extensionButton.prominentBackground\\\":\\\"#C3E88D90\\\",\\\"extensionButton.prominentForeground\\\":\\\"#babed8\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#C3E88D\\\",\\\"focusBorder\\\":\\\"#FFFFFF00\\\",\\\"foreground\\\":\\\"#babed8\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#FFCB6B90\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#f0717890\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#676E9590\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#82AAFF90\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#C3E88D90\\\",\\\"input.background\\\":\\\"#333747\\\",\\\"input.border\\\":\\\"#FFFFFF10\\\",\\\"input.foreground\\\":\\\"#babed8\\\",\\\"input.placeholderForeground\\\":\\\"#babed860\\\",\\\"inputOption.activeBackground\\\":\\\"#babed830\\\",\\\"inputOption.activeBorder\\\":\\\"#babed830\\\",\\\"inputValidation.errorBorder\\\":\\\"#f07178\\\",\\\"inputValidation.infoBorder\\\":\\\"#82AAFF\\\",\\\"inputValidation.warningBorder\\\":\\\"#FFCB6B\\\",\\\"list.activeSelectionBackground\\\":\\\"#292D3E\\\",\\\"list.activeSelectionForeground\\\":\\\"#80CBC4\\\",\\\"list.dropBackground\\\":\\\"#f0717880\\\",\\\"list.focusBackground\\\":\\\"#babed820\\\",\\\"list.focusForeground\\\":\\\"#babed8\\\",\\\"list.highlightForeground\\\":\\\"#80CBC4\\\",\\\"list.hoverBackground\\\":\\\"#292D3E\\\",\\\"list.hoverForeground\\\":\\\"#FFFFFF\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#00000030\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#80CBC4\\\",\\\"listFilterWidget.background\\\":\\\"#00000030\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#00000030\\\",\\\"listFilterWidget.outline\\\":\\\"#00000030\\\",\\\"menu.background\\\":\\\"#292D3E\\\",\\\"menu.foreground\\\":\\\"#babed8\\\",\\\"menu.selectionBackground\\\":\\\"#00000050\\\",\\\"menu.selectionBorder\\\":\\\"#00000030\\\",\\\"menu.selectionForeground\\\":\\\"#80CBC4\\\",\\\"menu.separatorBackground\\\":\\\"#babed8\\\",\\\"menubar.selectionBackground\\\":\\\"#00000030\\\",\\\"menubar.selectionBorder\\\":\\\"#00000030\\\",\\\"menubar.selectionForeground\\\":\\\"#80CBC4\\\",\\\"notebook.focusedCellBorder\\\":\\\"#80CBC4\\\",\\\"notebook.inactiveFocusedCellBorder\\\":\\\"#80CBC450\\\",\\\"notificationLink.foreground\\\":\\\"#80CBC4\\\",\\\"notifications.background\\\":\\\"#292D3E\\\",\\\"notifications.foreground\\\":\\\"#babed8\\\",\\\"panel.background\\\":\\\"#292D3E\\\",\\\"panel.border\\\":\\\"#292D3E60\\\",\\\"panel.dropBackground\\\":\\\"#babed8\\\",\\\"panelTitle.activeBorder\\\":\\\"#80CBC4\\\",\\\"panelTitle.activeForeground\\\":\\\"#FFFFFF\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#babed8\\\",\\\"peekView.border\\\":\\\"#00000030\\\",\\\"peekViewEditor.background\\\":\\\"#333747\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#717CB450\\\",\\\"peekViewEditorGutter.background\\\":\\\"#333747\\\",\\\"peekViewResult.background\\\":\\\"#333747\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#717CB450\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#676E9570\\\",\\\"peekViewTitle.background\\\":\\\"#333747\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#babed860\\\",\\\"pickerGroup.border\\\":\\\"#FFFFFF1a\\\",\\\"pickerGroup.foreground\\\":\\\"#80CBC4\\\",\\\"progressBar.background\\\":\\\"#80CBC4\\\",\\\"quickInput.background\\\":\\\"#292D3E\\\",\\\"quickInput.foreground\\\":\\\"#676E95\\\",\\\"quickInput.list.focusBackground\\\":\\\"#babed820\\\",\\\"sash.hoverBorder\\\":\\\"#80CBC450\\\",\\\"scrollbar.shadow\\\":\\\"#00000030\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#80CBC4\\\",\\\"scrollbarSlider.background\\\":\\\"#A6ACCD20\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#A6ACCD10\\\",\\\"selection.background\\\":\\\"#00000080\\\",\\\"settings.checkboxBackground\\\":\\\"#292D3E\\\",\\\"settings.checkboxForeground\\\":\\\"#babed8\\\",\\\"settings.dropdownBackground\\\":\\\"#292D3E\\\",\\\"settings.dropdownForeground\\\":\\\"#babed8\\\",\\\"settings.headerForeground\\\":\\\"#80CBC4\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#80CBC4\\\",\\\"settings.numberInputBackground\\\":\\\"#292D3E\\\",\\\"settings.numberInputForeground\\\":\\\"#babed8\\\",\\\"settings.textInputBackground\\\":\\\"#292D3E\\\",\\\"settings.textInputForeground\\\":\\\"#babed8\\\",\\\"sideBar.background\\\":\\\"#292D3E\\\",\\\"sideBar.border\\\":\\\"#292D3E60\\\",\\\"sideBar.foreground\\\":\\\"#676E95\\\",\\\"sideBarSectionHeader.background\\\":\\\"#292D3E\\\",\\\"sideBarSectionHeader.border\\\":\\\"#292D3E60\\\",\\\"sideBarTitle.foreground\\\":\\\"#babed8\\\",\\\"statusBar.background\\\":\\\"#292D3E\\\",\\\"statusBar.border\\\":\\\"#292D3E60\\\",\\\"statusBar.debuggingBackground\\\":\\\"#C792EA\\\",\\\"statusBar.debuggingForeground\\\":\\\"#ffffff\\\",\\\"statusBar.foreground\\\":\\\"#676E95\\\",\\\"statusBar.noFolderBackground\\\":\\\"#292D3E\\\",\\\"statusBarItem.activeBackground\\\":\\\"#f0717880\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#676E9520\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#80CBC4\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#000000\\\",\\\"tab.activeBackground\\\":\\\"#292D3E\\\",\\\"tab.activeBorder\\\":\\\"#80CBC4\\\",\\\"tab.activeForeground\\\":\\\"#FFFFFF\\\",\\\"tab.activeModifiedBorder\\\":\\\"#676E95\\\",\\\"tab.border\\\":\\\"#292D3E\\\",\\\"tab.inactiveBackground\\\":\\\"#292D3E\\\",\\\"tab.inactiveForeground\\\":\\\"#676E95\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#904348\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#676E95\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#babed8\\\",\\\"tab.unfocusedActiveModifiedBorder\\\":\\\"#c05a60\\\",\\\"tab.unfocusedInactiveModifiedBorder\\\":\\\"#904348\\\",\\\"terminal.ansiBlack\\\":\\\"#000000\\\",\\\"terminal.ansiBlue\\\":\\\"#82AAFF\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#676E95\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#82AAFF\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#89DDFF\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#C3E88D\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#C792EA\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f07178\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#FFCB6B\\\",\\\"terminal.ansiCyan\\\":\\\"#89DDFF\\\",\\\"terminal.ansiGreen\\\":\\\"#C3E88D\\\",\\\"terminal.ansiMagenta\\\":\\\"#C792EA\\\",\\\"terminal.ansiRed\\\":\\\"#f07178\\\",\\\"terminal.ansiWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiYellow\\\":\\\"#FFCB6B\\\",\\\"terminalCursor.background\\\":\\\"#000000\\\",\\\"terminalCursor.foreground\\\":\\\"#FFCB6B\\\",\\\"textLink.activeForeground\\\":\\\"#babed8\\\",\\\"textLink.foreground\\\":\\\"#80CBC4\\\",\\\"titleBar.activeBackground\\\":\\\"#292D3E\\\",\\\"titleBar.activeForeground\\\":\\\"#babed8\\\",\\\"titleBar.border\\\":\\\"#292D3E60\\\",\\\"titleBar.inactiveBackground\\\":\\\"#292D3E\\\",\\\"titleBar.inactiveForeground\\\":\\\"#676E95\\\",\\\"tree.indentGuidesStroke\\\":\\\"#4E5579\\\",\\\"widget.shadow\\\":\\\"#00000030\\\"},\\\"displayName\\\":\\\"Material Theme Palenight\\\",\\\"name\\\":\\\"material-theme-palenight\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"background\\\":\\\"#292D3E\\\",\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"punctuation, constant.other.symbol\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"constant.character.escape, text.html constant.character.entity.named\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"constant.language.boolean\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"keyword.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"keyword, modifier, variable.language.this, support.type.object, constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.function, support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"storage.type, storage.modifier, storage.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":\\\"support.module, support.node\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"support.type, constant.other.key\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"entity.name.type, entity.other.inherited-class, entity.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#676E95\\\"}},{\\\"scope\\\":\\\"comment punctuation.definition.comment, string.quoted.docstring\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#676E95\\\"}},{\\\"scope\\\":\\\"punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name, entity.name.type.class, support.type, support.class, meta.use\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"variable.object.property, meta.field.declaration entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.definition.method entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.function entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"meta.embedded, source.groovy.embedded, meta.template.expression\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"entity.name.tag.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"constant.language.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.id\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"source.css entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#B2CCD6\\\"}},{\\\"scope\\\":\\\"meta.tag, punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":\\\"punctuation.definition.entity.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"text.html.markdown meta.link.inline, meta.link.reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"text.html.markdown beginning.punctuation.definition.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.bold markup.italic, markup.italic markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic bold\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"markup.fenced_code.block.markdown punctuation.definition.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.string.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":\\\"keyword.other.definition.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.name.section.group-title.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"source.cs meta.class.identifier storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.method.identifier entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"source.cs meta.method-call meta.method, source.cs entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"source.cs storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.method.return-type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cs meta.preprocessor\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#676E95\\\"}},{\\\"scope\\\":\\\"source.cs entity.name.type.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"meta.jsx.children, SXNested\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"support.class.component\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":\\\"source.cpp meta.block variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"source.python meta.member.access.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"source.python meta.function-call.python, meta.function-call.arguments\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"meta.block\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":\\\"entity.name.function.call\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"source.php support.other.namespace, source.php meta.use support.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":\\\"constant.keyword\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"settings\\\":{\\\"background\\\":\\\"#292D3E\\\",\\\"foreground\\\":\\\"#babed8\\\"}},{\\\"scope\\\":[\\\"constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.language.special.self.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"constant.character.format.placeholder.other.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#89DDFF\\\"}},{\\\"scope\\\":[\\\"markup.fenced_code.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#babed890\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB6B\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f07178\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#916b53\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9cac\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C3E88D\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: min-dark */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#1A1A1A\\\",\\\"activityBar.foreground\\\":\\\"#7D7D7D\\\",\\\"activityBarBadge.background\\\":\\\"#383838\\\",\\\"badge.background\\\":\\\"#383838\\\",\\\"badge.foreground\\\":\\\"#C1C1C1\\\",\\\"button.background\\\":\\\"#333\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#79b8ff\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#848484\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#FF7A84\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#79b8ff\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#848484\\\",\\\"debugIcon.continueForeground\\\":\\\"#FF7A84\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#FF7A84\\\",\\\"debugIcon.pauseForeground\\\":\\\"#FF7A84\\\",\\\"debugIcon.restartForeground\\\":\\\"#79b8ff\\\",\\\"debugIcon.startForeground\\\":\\\"#79b8ff\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#FF7A84\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#FF7A84\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#FF7A84\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#FF7A84\\\",\\\"debugIcon.stopForeground\\\":\\\"#79b8ff\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#3a632a4b\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#88063852\\\",\\\"editor.background\\\":\\\"#1f1f1f\\\",\\\"editor.lineHighlightBorder\\\":\\\"#303030\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#1A1A1A\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#1A1A1A\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#383838\\\",\\\"editorIndentGuide.background\\\":\\\"#2A2A2A\\\",\\\"editorLineNumber.foreground\\\":\\\"#727272\\\",\\\"editorRuler.foreground\\\":\\\"#2A2A2A\\\",\\\"editorSuggestWidget.background\\\":\\\"#1A1A1A\\\",\\\"focusBorder\\\":\\\"#444\\\",\\\"foreground\\\":\\\"#888888\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#444444\\\",\\\"input.background\\\":\\\"#2A2A2A\\\",\\\"input.foreground\\\":\\\"#E0E0E0\\\",\\\"inputOption.activeBackground\\\":\\\"#3a3a3a\\\",\\\"list.activeSelectionBackground\\\":\\\"#212121\\\",\\\"list.activeSelectionForeground\\\":\\\"#F5F5F5\\\",\\\"list.focusBackground\\\":\\\"#292929\\\",\\\"list.highlightForeground\\\":\\\"#EAEAEA\\\",\\\"list.hoverBackground\\\":\\\"#262626\\\",\\\"list.hoverForeground\\\":\\\"#9E9E9E\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#212121\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#F5F5F5\\\",\\\"panelTitle.activeBorder\\\":\\\"#1f1f1f\\\",\\\"panelTitle.activeForeground\\\":\\\"#FAFAFA\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#484848\\\",\\\"peekView.border\\\":\\\"#444\\\",\\\"peekViewEditor.background\\\":\\\"#242424\\\",\\\"pickerGroup.border\\\":\\\"#363636\\\",\\\"pickerGroup.foreground\\\":\\\"#EAEAEA\\\",\\\"progressBar.background\\\":\\\"#FAFAFA\\\",\\\"scrollbar.shadow\\\":\\\"#1f1f1f\\\",\\\"sideBar.background\\\":\\\"#1A1A1A\\\",\\\"sideBarSectionHeader.background\\\":\\\"#202020\\\",\\\"statusBar.background\\\":\\\"#1A1A1A\\\",\\\"statusBar.debuggingBackground\\\":\\\"#1A1A1A\\\",\\\"statusBar.foreground\\\":\\\"#7E7E7E\\\",\\\"statusBar.noFolderBackground\\\":\\\"#1A1A1A\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#fafafa1a\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#1a1a1a00\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#7E7E7E\\\",\\\"symbolIcon.classForeground\\\":\\\"#FF9800\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#b392f0\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#FF9800\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#79b8ff\\\",\\\"symbolIcon.eventForeground\\\":\\\"#FF9800\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#79b8ff\\\",\\\"symbolIcon.functionForeground\\\":\\\"#b392f0\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#79b8ff\\\",\\\"symbolIcon.methodForeground\\\":\\\"#b392f0\\\",\\\"symbolIcon.variableForeground\\\":\\\"#79b8ff\\\",\\\"tab.activeBorder\\\":\\\"#1e1e1e\\\",\\\"tab.activeForeground\\\":\\\"#FAFAFA\\\",\\\"tab.border\\\":\\\"#1A1A1A\\\",\\\"tab.inactiveBackground\\\":\\\"#1A1A1A\\\",\\\"tab.inactiveForeground\\\":\\\"#727272\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#5c5c5c\\\",\\\"textLink.activeForeground\\\":\\\"#fafafa\\\",\\\"textLink.foreground\\\":\\\"#CCC\\\",\\\"titleBar.activeBackground\\\":\\\"#1A1A1A\\\",\\\"titleBar.border\\\":\\\"#00000000\\\"},\\\"displayName\\\":\\\"Min Dark\\\",\\\"name\\\":\\\"min-dark\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"foreground\\\":\\\"#b392f0\\\"}},{\\\"scope\\\":[\\\"support.function\\\",\\\"keyword.operator.accessor\\\",\\\"meta.group.braces.round.function.arguments\\\",\\\"meta.template.expression\\\",\\\"markup.fenced_code meta.embedded.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b392f0\\\"}},{\\\"scope\\\":\\\"emphasis\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"strong\\\",\\\"markup.heading.markdown\\\",\\\"markup.bold.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#FF7A84\\\"}},{\\\"scope\\\":[\\\"markup.italic.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"meta.link.inline.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#1976D2\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"markup.fenced_code\\\",\\\"markup.inline\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9db1c5\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"string.quoted.docstring.multi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6b737c\\\"}},{\\\"scope\\\":[\\\"constant.language\\\",\\\"variable.language.this\\\",\\\"variable.other.object\\\",\\\"variable.other.class\\\",\\\"variable.other.constant\\\",\\\"meta.property-name\\\",\\\"support\\\",\\\"string.other.link.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"constant.other.placeholder\\\",\\\"constant.character.format.placeholder\\\",\\\"meta.property-value\\\",\\\"keyword.other.unit\\\",\\\"keyword.other.template\\\",\\\"entity.name.tag.yaml\\\",\\\"entity.other.attribute-name\\\",\\\"support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f8f8f8\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"storage.modifier\\\",\\\"storage.type\\\",\\\"storage.control.clojure\\\",\\\"entity.name.function.clojure\\\",\\\"support.function.node\\\",\\\"punctuation.separator.key-value\\\",\\\"punctuation.definition.template-expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f97583\\\"}},{\\\"scope\\\":\\\"variable.parameter.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FF9800\\\"}},{\\\"scope\\\":[\\\"entity.name.type\\\",\\\"entity.other.inherited-class\\\",\\\"meta.function-call\\\",\\\"meta.instance.constructor\\\",\\\"entity.other.attribute-name\\\",\\\"entity.name.function\\\",\\\"constant.keyword.clojure\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b392f0\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"string.quoted\\\",\\\"string.regexp\\\",\\\"string.interpolated\\\",\\\"string.template\\\",\\\"string.unquoted.plain.out.yaml\\\",\\\"keyword.other.template\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffab70\\\"}},{\\\"scope\\\":\\\"token.info-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#316bcd\\\"}},{\\\"scope\\\":\\\"token.warn-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cd9731\\\"}},{\\\"scope\\\":\\\"token.error-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cd3131\\\"}},{\\\"scope\\\":\\\"token.debug-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#800080\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.arguments\\\",\\\"punctuation.definition.dict\\\",\\\"punctuation.separator\\\",\\\"meta.function-call.arguments\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bbbbbb\\\"}},{\\\"scope\\\":\\\"markup.underline.link\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffab70\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.list.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF7A84\\\"}},{\\\"scope\\\":\\\"punctuation.definition.metadata.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffab70\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string.begin.markdown\\\",\\\"punctuation.definition.string.end.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: min-light */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#f6f6f6\\\",\\\"activityBar.foreground\\\":\\\"#9E9E9E\\\",\\\"activityBarBadge.background\\\":\\\"#616161\\\",\\\"badge.background\\\":\\\"#E0E0E0\\\",\\\"badge.foreground\\\":\\\"#616161\\\",\\\"button.background\\\":\\\"#757575\\\",\\\"button.hoverBackground\\\":\\\"#616161\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#1976D2\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#848484\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#D32F2F\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#1976D2\\\",\\\"debugIcon.continueForeground\\\":\\\"#6f42c1\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#6f42c1\\\",\\\"debugIcon.pauseForeground\\\":\\\"#6f42c1\\\",\\\"debugIcon.restartForeground\\\":\\\"#1976D2\\\",\\\"debugIcon.startForeground\\\":\\\"#1976D2\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#6f42c1\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#6f42c1\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#6f42c1\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#6f42c1\\\",\\\"debugIcon.stopForeground\\\":\\\"#1976D2\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#b7e7a44b\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#e597af52\\\",\\\"editor.background\\\":\\\"#ffffff\\\",\\\"editor.foreground\\\":\\\"#212121\\\",\\\"editor.lineHighlightBorder\\\":\\\"#f2f2f2\\\",\\\"editorBracketMatch.background\\\":\\\"#E7F3FF\\\",\\\"editorBracketMatch.border\\\":\\\"#c8e1ff\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#f6f6f6\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#fff\\\",\\\"editorIndentGuide.background\\\":\\\"#EEE\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#757575\\\",\\\"editorLineNumber.foreground\\\":\\\"#CCC\\\",\\\"editorSuggestWidget.background\\\":\\\"#F3F3F3\\\",\\\"extensionButton.prominentBackground\\\":\\\"#000000AA\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#000000BB\\\",\\\"focusBorder\\\":\\\"#D0D0D0\\\",\\\"foreground\\\":\\\"#757575\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#AAAAAA\\\",\\\"input.border\\\":\\\"#E9E9E9\\\",\\\"inputOption.activeBackground\\\":\\\"#EDEDED\\\",\\\"list.activeSelectionBackground\\\":\\\"#EEE\\\",\\\"list.activeSelectionForeground\\\":\\\"#212121\\\",\\\"list.focusBackground\\\":\\\"#ddd\\\",\\\"list.focusForeground\\\":\\\"#212121\\\",\\\"list.highlightForeground\\\":\\\"#212121\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#E0E0E0\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#212121\\\",\\\"panel.background\\\":\\\"#fff\\\",\\\"panel.border\\\":\\\"#f4f4f4\\\",\\\"panelTitle.activeBorder\\\":\\\"#fff\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#BDBDBD\\\",\\\"peekView.border\\\":\\\"#E0E0E0\\\",\\\"peekViewEditor.background\\\":\\\"#f8f8f8\\\",\\\"pickerGroup.foreground\\\":\\\"#000\\\",\\\"progressBar.background\\\":\\\"#000\\\",\\\"scrollbar.shadow\\\":\\\"#FFF\\\",\\\"sideBar.background\\\":\\\"#f6f6f6\\\",\\\"sideBar.border\\\":\\\"#f6f6f6\\\",\\\"sideBarSectionHeader.background\\\":\\\"#EEE\\\",\\\"sideBarTitle.foreground\\\":\\\"#999\\\",\\\"statusBar.background\\\":\\\"#f6f6f6\\\",\\\"statusBar.border\\\":\\\"#f6f6f6\\\",\\\"statusBar.debuggingBackground\\\":\\\"#f6f6f6\\\",\\\"statusBar.foreground\\\":\\\"#7E7E7E\\\",\\\"statusBar.noFolderBackground\\\":\\\"#f6f6f6\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#0000001a\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#f6f6f600\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#7E7E7E\\\",\\\"symbolIcon.classForeground\\\":\\\"#dd8500\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#6f42c1\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#dd8500\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#1976D2\\\",\\\"symbolIcon.eventForeground\\\":\\\"#dd8500\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#1976D2\\\",\\\"symbolIcon.functionForeground\\\":\\\"#6f42c1\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#1976D2\\\",\\\"symbolIcon.methodForeground\\\":\\\"#6f42c1\\\",\\\"symbolIcon.variableForeground\\\":\\\"#1976D2\\\",\\\"tab.activeBorder\\\":\\\"#FFF\\\",\\\"tab.activeForeground\\\":\\\"#424242\\\",\\\"tab.border\\\":\\\"#f6f6f6\\\",\\\"tab.inactiveBackground\\\":\\\"#f6f6f6\\\",\\\"tab.inactiveForeground\\\":\\\"#BDBDBD\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#fff\\\",\\\"terminal.ansiBlack\\\":\\\"#333\\\",\\\"terminal.ansiBlue\\\":\\\"#e0e0e0\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#a1a1a1\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#6871ff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#57d9ad\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#a3d900\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#a37acc\\\",\\\"terminal.ansiBrightRed\\\":\\\"#d6656a\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#7E7E7E\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#e7c547\\\",\\\"terminal.ansiCyan\\\":\\\"#4dbf99\\\",\\\"terminal.ansiGreen\\\":\\\"#77cc00\\\",\\\"terminal.ansiMagenta\\\":\\\"#9966cc\\\",\\\"terminal.ansiRed\\\":\\\"#D32F2F\\\",\\\"terminal.ansiWhite\\\":\\\"#c7c7c7\\\",\\\"terminal.ansiYellow\\\":\\\"#f29718\\\",\\\"terminal.background\\\":\\\"#fff\\\",\\\"textLink.activeForeground\\\":\\\"#000\\\",\\\"textLink.foreground\\\":\\\"#000\\\",\\\"titleBar.activeBackground\\\":\\\"#f6f6f6\\\",\\\"titleBar.border\\\":\\\"#FFFFFF00\\\",\\\"titleBar.inactiveBackground\\\":\\\"#f6f6f6\\\"},\\\"displayName\\\":\\\"Min Light\\\",\\\"name\\\":\\\"min-light\\\",\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"foreground\\\":\\\"#24292eff\\\"}},{\\\"scope\\\":[\\\"keyword.operator.accessor\\\",\\\"meta.group.braces.round.function.arguments\\\",\\\"meta.template.expression\\\",\\\"markup.fenced_code meta.embedded.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#24292eff\\\"}},{\\\"scope\\\":\\\"emphasis\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"strong\\\",\\\"markup.heading.markdown\\\",\\\"markup.bold.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"markup.italic.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"meta.link.inline.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#1976D2\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"markup.fenced_code\\\",\\\"markup.inline\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2b5581\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"string.quoted.docstring.multi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c2c3c5\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"constant.language\\\",\\\"constant.other.placeholder\\\",\\\"constant.character.format.placeholder\\\",\\\"variable.language.this\\\",\\\"variable.other.object\\\",\\\"variable.other.class\\\",\\\"variable.other.constant\\\",\\\"meta.property-name\\\",\\\"meta.property-value\\\",\\\"support\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1976D2\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"storage.modifier\\\",\\\"storage.type\\\",\\\"storage.control.clojure\\\",\\\"entity.name.function.clojure\\\",\\\"entity.name.tag.yaml\\\",\\\"support.function.node\\\",\\\"support.type.property-name.json\\\",\\\"punctuation.separator.key-value\\\",\\\"punctuation.definition.template-expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D32F2F\\\"}},{\\\"scope\\\":\\\"variable.parameter.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FF9800\\\"}},{\\\"scope\\\":[\\\"support.function\\\",\\\"entity.name.type\\\",\\\"entity.other.inherited-class\\\",\\\"meta.function-call\\\",\\\"meta.instance.constructor\\\",\\\"entity.other.attribute-name\\\",\\\"entity.name.function\\\",\\\"constant.keyword.clojure\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6f42c1\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"string.quoted\\\",\\\"string.regexp\\\",\\\"string.interpolated\\\",\\\"string.template\\\",\\\"string.unquoted.plain.out.yaml\\\",\\\"keyword.other.template\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#22863a\\\"}},{\\\"scope\\\":\\\"token.info-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#316bcd\\\"}},{\\\"scope\\\":\\\"token.warn-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cd9731\\\"}},{\\\"scope\\\":\\\"token.error-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cd3131\\\"}},{\\\"scope\\\":\\\"token.debug-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#800080\\\"}},{\\\"scope\\\":[\\\"strong\\\",\\\"markup.heading.markdown\\\",\\\"markup.bold.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6f42c1\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.arguments\\\",\\\"punctuation.definition.dict\\\",\\\"punctuation.separator\\\",\\\"meta.function-call.arguments\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#212121\\\"}},{\\\"scope\\\":[\\\"markup.underline.link\\\",\\\"punctuation.definition.metadata.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#22863a\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.list.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6f42c1\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string.begin.markdown\\\",\\\"punctuation.definition.string.end.markdown\\\",\\\"string.other.link.title.markdown\\\",\\\"string.other.link.description.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d32f2f\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: monokai */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#272822\\\",\\\"activityBar.foreground\\\":\\\"#f8f8f2\\\",\\\"badge.background\\\":\\\"#75715E\\\",\\\"badge.foreground\\\":\\\"#f8f8f2\\\",\\\"button.background\\\":\\\"#75715E\\\",\\\"debugToolBar.background\\\":\\\"#1e1f1c\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#4b661680\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#90274A70\\\",\\\"dropdown.background\\\":\\\"#414339\\\",\\\"dropdown.listBackground\\\":\\\"#1e1f1c\\\",\\\"editor.background\\\":\\\"#272822\\\",\\\"editor.foreground\\\":\\\"#f8f8f2\\\",\\\"editor.lineHighlightBackground\\\":\\\"#3e3d32\\\",\\\"editor.selectionBackground\\\":\\\"#878b9180\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#575b6180\\\",\\\"editor.wordHighlightBackground\\\":\\\"#4a4a7680\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#6a6a9680\\\",\\\"editorCursor.foreground\\\":\\\"#f8f8f0\\\",\\\"editorGroup.border\\\":\\\"#34352f\\\",\\\"editorGroup.dropBackground\\\":\\\"#41433980\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#1e1f1c\\\",\\\"editorHoverWidget.background\\\":\\\"#414339\\\",\\\"editorHoverWidget.border\\\":\\\"#75715E\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#767771\\\",\\\"editorIndentGuide.background\\\":\\\"#464741\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#c2c2bf\\\",\\\"editorLineNumber.foreground\\\":\\\"#90908a\\\",\\\"editorSuggestWidget.background\\\":\\\"#272822\\\",\\\"editorSuggestWidget.border\\\":\\\"#75715E\\\",\\\"editorWhitespace.foreground\\\":\\\"#464741\\\",\\\"editorWidget.background\\\":\\\"#1e1f1c\\\",\\\"focusBorder\\\":\\\"#99947c\\\",\\\"input.background\\\":\\\"#414339\\\",\\\"inputOption.activeBorder\\\":\\\"#75715E\\\",\\\"inputValidation.errorBackground\\\":\\\"#90274A\\\",\\\"inputValidation.errorBorder\\\":\\\"#f92672\\\",\\\"inputValidation.infoBackground\\\":\\\"#546190\\\",\\\"inputValidation.infoBorder\\\":\\\"#819aff\\\",\\\"inputValidation.warningBackground\\\":\\\"#848528\\\",\\\"inputValidation.warningBorder\\\":\\\"#e2e22e\\\",\\\"list.activeSelectionBackground\\\":\\\"#75715E\\\",\\\"list.dropBackground\\\":\\\"#414339\\\",\\\"list.highlightForeground\\\":\\\"#f8f8f2\\\",\\\"list.hoverBackground\\\":\\\"#3e3d32\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#414339\\\",\\\"menu.background\\\":\\\"#1e1f1c\\\",\\\"menu.foreground\\\":\\\"#cccccc\\\",\\\"minimap.selectionHighlight\\\":\\\"#878b9180\\\",\\\"panel.border\\\":\\\"#414339\\\",\\\"panelTitle.activeBorder\\\":\\\"#75715E\\\",\\\"panelTitle.activeForeground\\\":\\\"#f8f8f2\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#75715E\\\",\\\"peekView.border\\\":\\\"#75715E\\\",\\\"peekViewEditor.background\\\":\\\"#272822\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#75715E\\\",\\\"peekViewResult.background\\\":\\\"#1e1f1c\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#75715E\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#414339\\\",\\\"peekViewTitle.background\\\":\\\"#1e1f1c\\\",\\\"pickerGroup.foreground\\\":\\\"#75715E\\\",\\\"ports.iconRunningProcessForeground\\\":\\\"#ccccc7\\\",\\\"progressBar.background\\\":\\\"#75715E\\\",\\\"quickInputList.focusBackground\\\":\\\"#414339\\\",\\\"selection.background\\\":\\\"#878b9180\\\",\\\"settings.focusedRowBackground\\\":\\\"#4143395A\\\",\\\"sideBar.background\\\":\\\"#1e1f1c\\\",\\\"sideBarSectionHeader.background\\\":\\\"#272822\\\",\\\"statusBar.background\\\":\\\"#414339\\\",\\\"statusBar.debuggingBackground\\\":\\\"#75715E\\\",\\\"statusBar.noFolderBackground\\\":\\\"#414339\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#AC6218\\\",\\\"tab.border\\\":\\\"#1e1f1c\\\",\\\"tab.inactiveBackground\\\":\\\"#34352f\\\",\\\"tab.inactiveForeground\\\":\\\"#ccccc7\\\",\\\"tab.lastPinnedBorder\\\":\\\"#414339\\\",\\\"terminal.ansiBlack\\\":\\\"#333333\\\",\\\"terminal.ansiBlue\\\":\\\"#6A7EC8\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#666666\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#819aff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#66D9EF\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#A6E22E\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#AE81FF\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f92672\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#f8f8f2\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#e2e22e\\\",\\\"terminal.ansiCyan\\\":\\\"#56ADBC\\\",\\\"terminal.ansiGreen\\\":\\\"#86B42B\\\",\\\"terminal.ansiMagenta\\\":\\\"#8C6BC8\\\",\\\"terminal.ansiRed\\\":\\\"#C4265E\\\",\\\"terminal.ansiWhite\\\":\\\"#e3e3dd\\\",\\\"terminal.ansiYellow\\\":\\\"#B3B42B\\\",\\\"titleBar.activeBackground\\\":\\\"#1e1f1c\\\",\\\"widget.shadow\\\":\\\"#00000098\\\"},\\\"displayName\\\":\\\"Monokai\\\",\\\"name\\\":\\\"monokai\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":[\\\"meta.embedded\\\",\\\"source.groovy.embedded\\\",\\\"string meta.image.inline.markdown\\\",\\\"variable.legacy.builtin.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88846f\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E6DB74\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.template-expression\\\",\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F92672\\\"}},{\\\"scope\\\":[\\\"meta.template.expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#AE81FF\\\"}},{\\\"scope\\\":\\\"constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#AE81FF\\\"}},{\\\"scope\\\":\\\"constant.character, constant.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#AE81FF\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#F8F8F2\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F92672\\\"}},{\\\"scope\\\":\\\"storage\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#F92672\\\"}},{\\\"scope\\\":\\\"storage.type\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#66D9EF\\\"}},{\\\"scope\\\":\\\"entity.name.type, entity.name.class, entity.name.namespace, entity.name.scope-resolution\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#A6E22E\\\"}},{\\\"scope\\\":[\\\"entity.other.inherited-class\\\",\\\"punctuation.separator.namespace.ruby\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#A6E22E\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#A6E22E\\\"}},{\\\"scope\\\":\\\"variable.parameter\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FD971F\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#F92672\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#A6E22E\\\"}},{\\\"scope\\\":\\\"support.function\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#66D9EF\\\"}},{\\\"scope\\\":\\\"support.constant\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#66D9EF\\\"}},{\\\"scope\\\":\\\"support.type, support.class\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#66D9EF\\\"}},{\\\"scope\\\":\\\"support.other.variable\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":\\\"invalid\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#F44747\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F44747\\\"}},{\\\"scope\\\":\\\"meta.structure.dictionary.json string.quoted.double.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#CFCFC2\\\"}},{\\\"scope\\\":\\\"meta.diff, meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#75715E\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F92672\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#A6E22E\\\"}},{\\\"scope\\\":\\\"markup.changed\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E6DB74\\\"}},{\\\"scope\\\":\\\"constant.numeric.line-number.find-in-files - match\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#AE81FFA0\\\"}},{\\\"scope\\\":\\\"entity.name.filename.find-in-files\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E6DB74\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F92672\\\"}},{\\\"scope\\\":\\\"markup.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E6DB74\\\"}},{\\\"scope\\\":\\\"markup.bold, markup.italic\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#66D9EF\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#FD971F\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#A6E22E\\\"}},{\\\"scope\\\":\\\"markup.heading.setext\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#A6E22E\\\"}},{\\\"scope\\\":\\\"markup.heading.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.quote.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#75715E\\\"}},{\\\"scope\\\":\\\"markup.bold.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"string.other.link.title.markdown,string.other.link.description.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#AE81FF\\\"}},{\\\"scope\\\":\\\"markup.underline.link.markdown,markup.underline.link.image.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E6DB74\\\"}},{\\\"scope\\\":\\\"markup.italic.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.strikethrough\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.list.unnumbered.markdown, markup.list.numbered.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f8f8f2\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.list.begin.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A6E22E\\\"}},{\\\"scope\\\":\\\"token.info-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6796e6\\\"}},{\\\"scope\\\":\\\"token.warn-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cd9731\\\"}},{\\\"scope\\\":\\\"token.error-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f44747\\\"}},{\\\"scope\\\":\\\"token.debug-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b267e6\\\"}},{\\\"scope\\\":\\\"variable.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FD971F\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: night-owl */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#011627\\\",\\\"activityBar.border\\\":\\\"#011627\\\",\\\"activityBar.dropBackground\\\":\\\"#5f7e97\\\",\\\"activityBar.foreground\\\":\\\"#5f7e97\\\",\\\"activityBarBadge.background\\\":\\\"#44596b\\\",\\\"activityBarBadge.foreground\\\":\\\"#ffffff\\\",\\\"badge.background\\\":\\\"#5f7e97\\\",\\\"badge.foreground\\\":\\\"#ffffff\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#FFFFFF\\\",\\\"breadcrumb.focusForeground\\\":\\\"#ffffff\\\",\\\"breadcrumb.foreground\\\":\\\"#A599E9\\\",\\\"breadcrumbPicker.background\\\":\\\"#001122\\\",\\\"button.background\\\":\\\"#7e57c2cc\\\",\\\"button.foreground\\\":\\\"#ffffffcc\\\",\\\"button.hoverBackground\\\":\\\"#7e57c2\\\",\\\"contrastBorder\\\":\\\"#122d42\\\",\\\"debugExceptionWidget.background\\\":\\\"#011627\\\",\\\"debugExceptionWidget.border\\\":\\\"#5f7e97\\\",\\\"debugToolBar.background\\\":\\\"#011627\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#99b76d23\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ef535033\\\",\\\"dropdown.background\\\":\\\"#011627\\\",\\\"dropdown.border\\\":\\\"#5f7e97\\\",\\\"dropdown.foreground\\\":\\\"#ffffffcc\\\",\\\"editor.background\\\":\\\"#011627\\\",\\\"editor.findMatchBackground\\\":\\\"#5f7e9779\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#1085bb5d\\\",\\\"editor.findRangeHighlightBackground\\\":null,\\\"editor.foreground\\\":\\\"#d6deeb\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#7e57c25a\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#7e57c25a\\\",\\\"editor.lineHighlightBackground\\\":\\\"#28707d29\\\",\\\"editor.lineHighlightBorder\\\":null,\\\"editor.rangeHighlightBackground\\\":\\\"#7e57c25a\\\",\\\"editor.selectionBackground\\\":\\\"#1d3b53\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#5f7e9779\\\",\\\"editor.wordHighlightBackground\\\":\\\"#f6bbe533\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#e2a2f433\\\",\\\"editorCodeLens.foreground\\\":\\\"#5e82ceb4\\\",\\\"editorCursor.foreground\\\":\\\"#80a4c2\\\",\\\"editorError.border\\\":null,\\\"editorError.foreground\\\":\\\"#EF5350\\\",\\\"editorGroup.border\\\":\\\"#011627\\\",\\\"editorGroup.dropBackground\\\":\\\"#7e57c273\\\",\\\"editorGroup.emptyBackground\\\":\\\"#011627\\\",\\\"editorGroupHeader.noTabsBackground\\\":\\\"#011627\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#011627\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#262A39\\\",\\\"editorGutter.addedBackground\\\":\\\"#9CCC65\\\",\\\"editorGutter.background\\\":\\\"#011627\\\",\\\"editorGutter.deletedBackground\\\":\\\"#EF5350\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#e2b93d\\\",\\\"editorHoverWidget.background\\\":\\\"#011627\\\",\\\"editorHoverWidget.border\\\":\\\"#5f7e97\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#7E97AC\\\",\\\"editorIndentGuide.background\\\":\\\"#5e81ce52\\\",\\\"editorInlayHint.background\\\":\\\"#0000\\\",\\\"editorInlayHint.foreground\\\":\\\"#829D9D\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#C5E4FD\\\",\\\"editorLineNumber.foreground\\\":\\\"#4b6479\\\",\\\"editorLink.activeForeground\\\":null,\\\"editorMarkerNavigation.background\\\":\\\"#0b2942\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#EF5350\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#FFCA28\\\",\\\"editorOverviewRuler.commonContentForeground\\\":\\\"#7e57c2\\\",\\\"editorOverviewRuler.currentContentForeground\\\":\\\"#7e57c2\\\",\\\"editorOverviewRuler.incomingContentForeground\\\":\\\"#7e57c2\\\",\\\"editorRuler.foreground\\\":\\\"#5e81ce52\\\",\\\"editorSuggestWidget.background\\\":\\\"#2C3043\\\",\\\"editorSuggestWidget.border\\\":\\\"#2B2F40\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#d6deeb\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#ffffff\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#5f7e97\\\",\\\"editorWarning.border\\\":null,\\\"editorWarning.foreground\\\":\\\"#b39554\\\",\\\"editorWhitespace.foreground\\\":null,\\\"editorWidget.background\\\":\\\"#021320\\\",\\\"editorWidget.border\\\":\\\"#5f7e97\\\",\\\"errorForeground\\\":\\\"#EF5350\\\",\\\"extensionButton.prominentBackground\\\":\\\"#7e57c2cc\\\",\\\"extensionButton.prominentForeground\\\":\\\"#ffffffcc\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#7e57c2\\\",\\\"focusBorder\\\":\\\"#122d42\\\",\\\"foreground\\\":\\\"#d6deeb\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#ffeb95cc\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#EF535090\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#395a75\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#a2bffc\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#c5e478ff\\\",\\\"input.background\\\":\\\"#0b253a\\\",\\\"input.border\\\":\\\"#5f7e97\\\",\\\"input.foreground\\\":\\\"#ffffffcc\\\",\\\"input.placeholderForeground\\\":\\\"#5f7e97\\\",\\\"inputOption.activeBorder\\\":\\\"#ffffffcc\\\",\\\"inputValidation.errorBackground\\\":\\\"#AB0300F2\\\",\\\"inputValidation.errorBorder\\\":\\\"#EF5350\\\",\\\"inputValidation.infoBackground\\\":\\\"#00589EF2\\\",\\\"inputValidation.infoBorder\\\":\\\"#64B5F6\\\",\\\"inputValidation.warningBackground\\\":\\\"#675700F2\\\",\\\"inputValidation.warningBorder\\\":\\\"#FFCA28\\\",\\\"list.activeSelectionBackground\\\":\\\"#234d708c\\\",\\\"list.activeSelectionForeground\\\":\\\"#ffffff\\\",\\\"list.dropBackground\\\":\\\"#011627\\\",\\\"list.focusBackground\\\":\\\"#010d18\\\",\\\"list.focusForeground\\\":\\\"#ffffff\\\",\\\"list.highlightForeground\\\":\\\"#ffffff\\\",\\\"list.hoverBackground\\\":\\\"#011627\\\",\\\"list.hoverForeground\\\":\\\"#ffffff\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#0e293f\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#5f7e97\\\",\\\"list.invalidItemForeground\\\":\\\"#975f94\\\",\\\"merge.border\\\":null,\\\"merge.currentContentBackground\\\":null,\\\"merge.currentHeaderBackground\\\":\\\"#5f7e97\\\",\\\"merge.incomingContentBackground\\\":null,\\\"merge.incomingHeaderBackground\\\":\\\"#7e57c25a\\\",\\\"meta.objectliteral.js\\\":\\\"#82AAFF\\\",\\\"notificationCenter.border\\\":\\\"#262a39\\\",\\\"notificationLink.foreground\\\":\\\"#80CBC4\\\",\\\"notificationToast.border\\\":\\\"#262a39\\\",\\\"notifications.background\\\":\\\"#01111d\\\",\\\"notifications.border\\\":\\\"#262a39\\\",\\\"notifications.foreground\\\":\\\"#ffffffcc\\\",\\\"panel.background\\\":\\\"#011627\\\",\\\"panel.border\\\":\\\"#5f7e97\\\",\\\"panelTitle.activeBorder\\\":\\\"#5f7e97\\\",\\\"panelTitle.activeForeground\\\":\\\"#ffffffcc\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#d6deeb80\\\",\\\"peekView.border\\\":\\\"#5f7e97\\\",\\\"peekViewEditor.background\\\":\\\"#011627\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#7e57c25a\\\",\\\"peekViewResult.background\\\":\\\"#011627\\\",\\\"peekViewResult.fileForeground\\\":\\\"#5f7e97\\\",\\\"peekViewResult.lineForeground\\\":\\\"#5f7e97\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#ffffffcc\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#2E3250\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#5f7e97\\\",\\\"peekViewTitle.background\\\":\\\"#011627\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#697098\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#5f7e97\\\",\\\"pickerGroup.border\\\":\\\"#011627\\\",\\\"pickerGroup.foreground\\\":\\\"#d1aaff\\\",\\\"progress.background\\\":\\\"#7e57c2\\\",\\\"punctuation.definition.generic.begin.html\\\":\\\"#ef5350f2\\\",\\\"scrollbar.shadow\\\":\\\"#010b14\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#084d8180\\\",\\\"scrollbarSlider.background\\\":\\\"#084d8180\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#084d8180\\\",\\\"selection.background\\\":\\\"#4373c2\\\",\\\"sideBar.background\\\":\\\"#011627\\\",\\\"sideBar.border\\\":\\\"#011627\\\",\\\"sideBar.foreground\\\":\\\"#89a4bb\\\",\\\"sideBarSectionHeader.background\\\":\\\"#011627\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#5f7e97\\\",\\\"sideBarTitle.foreground\\\":\\\"#5f7e97\\\",\\\"source.elm\\\":\\\"#5f7e97\\\",\\\"statusBar.background\\\":\\\"#011627\\\",\\\"statusBar.border\\\":\\\"#262A39\\\",\\\"statusBar.debuggingBackground\\\":\\\"#202431\\\",\\\"statusBar.debuggingBorder\\\":\\\"#1F2330\\\",\\\"statusBar.debuggingForeground\\\":null,\\\"statusBar.foreground\\\":\\\"#5f7e97\\\",\\\"statusBar.noFolderBackground\\\":\\\"#011627\\\",\\\"statusBar.noFolderBorder\\\":\\\"#25293A\\\",\\\"statusBar.noFolderForeground\\\":null,\\\"statusBarItem.activeBackground\\\":\\\"#202431\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#202431\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#202431\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#202431\\\",\\\"string.quoted.single.js\\\":\\\"#ffffff\\\",\\\"tab.activeBackground\\\":\\\"#0b2942\\\",\\\"tab.activeBorder\\\":\\\"#262A39\\\",\\\"tab.activeForeground\\\":\\\"#d2dee7\\\",\\\"tab.border\\\":\\\"#272B3B\\\",\\\"tab.inactiveBackground\\\":\\\"#01111d\\\",\\\"tab.inactiveForeground\\\":\\\"#5f7e97\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#262A39\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#5f7e97\\\",\\\"tab.unfocusedInactiveForeground\\\":\\\"#5f7e97\\\",\\\"terminal.ansiBlack\\\":\\\"#011627\\\",\\\"terminal.ansiBlue\\\":\\\"#82AAFF\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#575656\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#82AAFF\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#7fdbca\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#22da6e\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#C792EA\\\",\\\"terminal.ansiBrightRed\\\":\\\"#EF5350\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#ffeb95\\\",\\\"terminal.ansiCyan\\\":\\\"#21c7a8\\\",\\\"terminal.ansiGreen\\\":\\\"#22da6e\\\",\\\"terminal.ansiMagenta\\\":\\\"#C792EA\\\",\\\"terminal.ansiRed\\\":\\\"#EF5350\\\",\\\"terminal.ansiWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiYellow\\\":\\\"#c5e478\\\",\\\"terminal.selectionBackground\\\":\\\"#1b90dd4d\\\",\\\"terminalCursor.background\\\":\\\"#234d70\\\",\\\"textCodeBlock.background\\\":\\\"#4f4f4f\\\",\\\"titleBar.activeBackground\\\":\\\"#011627\\\",\\\"titleBar.activeForeground\\\":\\\"#eeefff\\\",\\\"titleBar.inactiveBackground\\\":\\\"#010e1a\\\",\\\"titleBar.inactiveForeground\\\":null,\\\"walkThrough.embeddedEditorBackground\\\":\\\"#011627\\\",\\\"welcomePage.buttonBackground\\\":\\\"#011627\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#011627\\\",\\\"widget.shadow\\\":\\\"#011627\\\"},\\\"displayName\\\":\\\"Night Owl\\\",\\\"name\\\":\\\"night-owl\\\",\\\"semanticHighlighting\\\":false,\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"markup.changed\\\",\\\"meta.diff.header.git\\\",\\\"meta.diff.header.from-file\\\",\\\"meta.diff.header.to-file\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#a2bffc\\\"}},{\\\"scope\\\":\\\"markup.deleted.diff\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#EF535090\\\"}},{\\\"scope\\\":\\\"markup.inserted.diff\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c5e478ff\\\"}},{\\\"settings\\\":{\\\"background\\\":\\\"#011627\\\",\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#637777\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ecc48d\\\"}},{\\\"scope\\\":[\\\"string.quoted\\\",\\\"variable.other.readwrite.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ecc48d\\\"}},{\\\"scope\\\":\\\"support.constant.math\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"constant.character.numeric\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"constant.language\\\",\\\"punctuation.definition.constant\\\",\\\"variable.other.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"constant.character\\\",\\\"constant.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\",\\\"string.regexp keyword.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5ca7e4\\\"}},{\\\"scope\\\":\\\"meta.function punctuation.separator.comma\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5f7e97\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":[\\\"punctuation.accessor\\\",\\\"keyword\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"meta.var.expr\\\",\\\"meta.class meta.method.declaration meta.var.expr storage.type.js\\\",\\\"storage.type.property.js\\\",\\\"storage.type.property.ts\\\",\\\"storage.type.property.tsx\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"storage.type.function.arrow.js\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"entity.name.class\\\",\\\"meta.class entity.name.type.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffcb8b\\\"}},{\\\"scope\\\":\\\"entity.other.inherited-class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.tag\\\",\\\"meta.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"meta.tag.other.html\\\",\\\"meta.tag.other.js\\\",\\\"meta.tag.other.tsx\\\",\\\"entity.name.tag.tsx\\\",\\\"entity.name.tag.js\\\",\\\"entity.name.tag\\\",\\\"meta.tag.js\\\",\\\"meta.tag.tsx\\\",\\\"meta.tag.html\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#caece6\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"entity.name.tag.custom\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f78c6c\\\"}},{\\\"scope\\\":[\\\"support.function\\\",\\\"support.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"support.constant.meta.property-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":[\\\"support.type\\\",\\\"support.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"support.variable.dom\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"invalid\\\",\\\"settings\\\":{\\\"background\\\":\\\"#ff2c83\\\",\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"background\\\":\\\"#d3423e\\\",\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"keyword.operator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"keyword.operator.relational\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"keyword.operator.assignment\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"keyword.operator.arithmetic\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"keyword.operator.bitwise\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"keyword.operator.increment\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"keyword.operator.ternary\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"comment.line.double-slash\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#637777\\\"}},{\\\"scope\\\":\\\"object\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cdebf7\\\"}},{\\\"scope\\\":\\\"constant.language.null\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff5874\\\"}},{\\\"scope\\\":\\\"meta.brace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":\\\"meta.delimiter.period\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"punctuation.definition.string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d9f5dd\\\"}},{\\\"scope\\\":\\\"punctuation.definition.string.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff5874\\\"}},{\\\"scope\\\":\\\"constant.language.boolean\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff5874\\\"}},{\\\"scope\\\":\\\"object.comma\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"variable.parameter.function\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":[\\\"support.type.vendor.property-name\\\",\\\"support.constant.vendor.property-value\\\",\\\"support.type.property-name\\\",\\\"meta.property-list entity.name.tag\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#80CBC4\\\"}},{\\\"scope\\\":\\\"meta.property-list entity.name.tag.reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#57eaf1\\\"}},{\\\"scope\\\":\\\"constant.other.color.rgb-value punctuation.definition.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":\\\"constant.other.color\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFEB95\\\"}},{\\\"scope\\\":\\\"keyword.other.unit\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFEB95\\\"}},{\\\"scope\\\":\\\"meta.selector\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.id\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FAD430\\\"}},{\\\"scope\\\":\\\"meta.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#80CBC4\\\"}},{\\\"scope\\\":[\\\"entity.name.tag.doctype\\\",\\\"meta.tag.sgml.doctype\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"punctuation.definition.parameters\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d9f5dd\\\"}},{\\\"scope\\\":\\\"keyword.control.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"keyword.operator.logical\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":[\\\"variable.instance\\\",\\\"variable.other.instance\\\",\\\"variable.readwrite.instance\\\",\\\"variable.other.readwrite.instance\\\",\\\"variable.other.property\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#baebe2\\\"}},{\\\"scope\\\":[\\\"variable.other.object.property\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#faf39f\\\"}},{\\\"scope\\\":[\\\"variable.other.object.js\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"variable.language.this.js\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#41eec6\\\"}},{\\\"scope\\\":[\\\"keyword.operator.comparison\\\",\\\"keyword.control.flow.js\\\",\\\"keyword.control.flow.ts\\\",\\\"keyword.control.flow.tsx\\\",\\\"keyword.control.ruby\\\",\\\"keyword.control.module.ruby\\\",\\\"keyword.control.class.ruby\\\",\\\"keyword.control.def.ruby\\\",\\\"keyword.control.loop.js\\\",\\\"keyword.control.loop.ts\\\",\\\"keyword.control.import.js\\\",\\\"keyword.control.import.ts\\\",\\\"keyword.control.import.tsx\\\",\\\"keyword.control.from.js\\\",\\\"keyword.control.from.ts\\\",\\\"keyword.control.from.tsx\\\",\\\"keyword.operator.instanceof.js\\\",\\\"keyword.operator.expression.instanceof.ts\\\",\\\"keyword.operator.expression.instanceof.tsx\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":[\\\"keyword.control.conditional.js\\\",\\\"keyword.control.conditional.ts\\\",\\\"keyword.control.switch.js\\\",\\\"keyword.control.switch.ts\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":[\\\"support.constant\\\",\\\"keyword.other.special-method\\\",\\\"keyword.other.new\\\",\\\"keyword.other.debugger\\\",\\\"keyword.control\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"background\\\":\\\"#F78C6C\\\",\\\"foreground\\\":\\\"#020e14\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"background\\\":\\\"#8BD649\\\",\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"background\\\":\\\"#ec5f67\\\",\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"variable.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"support.variable.property\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"variable.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"variable.interpolation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ec5f67\\\"}},{\\\"scope\\\":\\\"meta.function-call\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"punctuation.section.embedded\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3423e\\\"}},{\\\"scope\\\":[\\\"punctuation.terminator.expression\\\",\\\"punctuation.definition.arguments\\\",\\\"punctuation.definition.array\\\",\\\"punctuation.section.array\\\",\\\"meta.array\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.list.begin\\\",\\\"punctuation.definition.list.end\\\",\\\"punctuation.separator.arguments\\\",\\\"punctuation.definition.list\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d9f5dd\\\"}},{\\\"scope\\\":\\\"string.template meta.template.expression\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d3423e\\\"}},{\\\"scope\\\":\\\"string.template punctuation.definition.string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":\\\"italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"quote\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#697098\\\"}},{\\\"scope\\\":\\\"raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#80CBC4\\\"}},{\\\"scope\\\":\\\"variable.assignment.coffee\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#31e1eb\\\"}},{\\\"scope\\\":\\\"variable.parameter.function.coffee\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":\\\"variable.assignment.coffee\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"variable.other.readwrite.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"entity.name.type.class.cs\\\",\\\"storage.type.cs\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffcb8b\\\"}},{\\\"scope\\\":\\\"entity.name.type.namespace.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#B2CCD6\\\"}},{\\\"scope\\\":\\\"string.unquoted.preprocessor.message.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"punctuation.separator.hash.cs\\\",\\\"keyword.preprocessor.region.cs\\\",\\\"keyword.preprocessor.endregion.cs\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#ffcb8b\\\"}},{\\\"scope\\\":\\\"variable.other.object.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#B2CCD6\\\"}},{\\\"scope\\\":\\\"entity.name.type.enum.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":[\\\"string.interpolated.single.dart\\\",\\\"string.interpolated.double.dart\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB8B\\\"}},{\\\"scope\\\":\\\"support.class.dart\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFCB8B\\\"}},{\\\"scope\\\":[\\\"entity.name.tag.css\\\",\\\"entity.name.tag.less\\\",\\\"entity.name.tag.custom.css\\\",\\\"support.constant.property-value.css\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ff6363\\\"}},{\\\"scope\\\":[\\\"entity.name.tag.wildcard.css\\\",\\\"entity.name.tag.wildcard.less\\\",\\\"entity.name.tag.wildcard.scss\\\",\\\"entity.name.tag.wildcard.sass\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"keyword.other.unit.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFEB95\\\"}},{\\\"scope\\\":[\\\"meta.attribute-selector.css entity.other.attribute-name.attribute\\\",\\\"variable.other.readwrite.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"source.elixir support.type.elixir\\\",\\\"source.elixir meta.module.elixir entity.name.class.elixir\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"source.elixir entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":[\\\"source.elixir constant.other.symbol.elixir\\\",\\\"source.elixir constant.other.keywords.elixir\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"source.elixir punctuation.definition.string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":[\\\"source.elixir variable.other.readwrite.module.elixir\\\",\\\"source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"source.elixir .punctuation.binary.elixir\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"constant.keyword.clojure\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"source.go meta.function-call.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#DDDDDD\\\"}},{\\\"scope\\\":[\\\"source.go keyword.package.go\\\",\\\"source.go keyword.import.go\\\",\\\"source.go keyword.function.go\\\",\\\"source.go keyword.type.go\\\",\\\"source.go keyword.struct.go\\\",\\\"source.go keyword.interface.go\\\",\\\"source.go keyword.const.go\\\",\\\"source.go keyword.var.go\\\",\\\"source.go keyword.map.go\\\",\\\"source.go keyword.channel.go\\\",\\\"source.go keyword.control.go\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":[\\\"source.go constant.language.go\\\",\\\"source.go constant.other.placeholder.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff5874\\\"}},{\\\"scope\\\":[\\\"entity.name.function.preprocessor.cpp\\\",\\\"entity.scope.name.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbcaff\\\"}},{\\\"scope\\\":[\\\"meta.namespace-block.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e0dec6\\\"}},{\\\"scope\\\":[\\\"storage.type.language.primitive.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff5874\\\"}},{\\\"scope\\\":[\\\"meta.preprocessor.macro.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffcb8b\\\"}},{\\\"scope\\\":[\\\"variable.other.readwrite.powershell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"support.function.powershell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbcaff\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.id.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6ae9f0\\\"}},{\\\"scope\\\":\\\"meta.tag.sgml.doctype.html\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"meta.class entity.name.type.class.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffcb8b\\\"}},{\\\"scope\\\":\\\"meta.method.declaration storage.type.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"terminator.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":\\\"meta.js punctuation.definition.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"entity.name.type.instance.jsdoc\\\",\\\"entity.name.type.instance.phpdoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5f7e97\\\"}},{\\\"scope\\\":[\\\"variable.other.jsdoc\\\",\\\"variable.other.phpdoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#78ccf0\\\"}},{\\\"scope\\\":[\\\"variable.other.meta.import.js\\\",\\\"meta.import.js variable.other\\\",\\\"variable.other.meta.export.js\\\",\\\"meta.export.js variable.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":\\\"variable.parameter.function.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7986E7\\\"}},{\\\"scope\\\":[\\\"variable.other.object.js\\\",\\\"variable.other.object.jsx\\\",\\\"variable.object.property.js\\\",\\\"variable.object.property.jsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"variable.js\\\",\\\"variable.other.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"entity.name.type.js\\\",\\\"entity.name.type.module.js\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ffcb8b\\\"}},{\\\"scope\\\":\\\"support.class.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"support.constant.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"meta.structure.dictionary.value.json string.quoted.double\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c789d6\\\"}},{\\\"scope\\\":\\\"string.quoted.double.json punctuation.definition.string.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#80CBC4\\\"}},{\\\"scope\\\":\\\"meta.structure.dictionary.json meta.structure.dictionary.value constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff5874\\\"}},{\\\"scope\\\":\\\"variable.other.object.js\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":[\\\"variable.other.ruby\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"entity.name.type.class.ruby\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ecc48d\\\"}},{\\\"scope\\\":\\\"constant.language.symbol.hashkey.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"constant.language.symbol.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"entity.name.tag.less\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":\\\"keyword.other.unit.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FFEB95\\\"}},{\\\"scope\\\":\\\"meta.attribute-selector.less entity.other.attribute-name.attribute\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading.setext.1\\\",\\\"markup.heading.setext.2\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82b1ff\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#697098\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#80CBC4\\\"}},{\\\"scope\\\":[\\\"markup.underline.link\\\",\\\"markup.underline.link.image\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff869a\\\"}},{\\\"scope\\\":[\\\"string.other.link.title.markdown\\\",\\\"string.other.link.description.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string.markdown\\\",\\\"punctuation.definition.string.begin.markdown\\\",\\\"punctuation.definition.string.end.markdown\\\",\\\"meta.link.inline.markdown punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82b1ff\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.metadata.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.list.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82b1ff\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.string.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":[\\\"variable.other.php\\\",\\\"variable.other.property.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bec5d4\\\"}},{\\\"scope\\\":\\\"support.class.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffcb8b\\\"}},{\\\"scope\\\":\\\"meta.function-call.php punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":\\\"variable.other.global.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"variable.other.global.php punctuation.definition.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"constant.language.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff5874\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.python\\\",\\\"meta.function-call.arguments.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"meta.function-call.python\\\",\\\"meta.function-call.generic.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B2CCD6\\\"}},{\\\"scope\\\":\\\"punctuation.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":\\\"entity.name.function.decorator.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":\\\"source.python variable.language.special\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8EACE3\\\"}},{\\\"scope\\\":\\\"keyword.control\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c792ea\\\"}},{\\\"scope\\\":[\\\"variable.scss\\\",\\\"variable.sass\\\",\\\"variable.parameter.url.scss\\\",\\\"variable.parameter.url.sass\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c5e478\\\"}},{\\\"scope\\\":[\\\"source.css.scss meta.at-rule variable\\\",\\\"source.css.sass meta.at-rule variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"source.css.scss meta.at-rule variable\\\",\\\"source.css.sass meta.at-rule variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bec5d4\\\"}},{\\\"scope\\\":[\\\"meta.attribute-selector.scss entity.other.attribute-name.attribute\\\",\\\"meta.attribute-selector.sass entity.other.attribute-name.attribute\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F78C6C\\\"}},{\\\"scope\\\":[\\\"entity.name.tag.scss\\\",\\\"entity.name.tag.sass\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":[\\\"keyword.other.unit.scss\\\",\\\"keyword.other.unit.sass\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFEB95\\\"}},{\\\"scope\\\":[\\\"variable.other.readwrite.alias.ts\\\",\\\"variable.other.readwrite.alias.tsx\\\",\\\"variable.other.readwrite.ts\\\",\\\"variable.other.readwrite.tsx\\\",\\\"variable.other.object.ts\\\",\\\"variable.other.object.tsx\\\",\\\"variable.object.property.ts\\\",\\\"variable.object.property.tsx\\\",\\\"variable.other.ts\\\",\\\"variable.other.tsx\\\",\\\"variable.tsx\\\",\\\"variable.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"entity.name.type.ts\\\",\\\"entity.name.type.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffcb8b\\\"}},{\\\"scope\\\":[\\\"support.class.node.ts\\\",\\\"support.class.node.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":[\\\"meta.type.parameters.ts entity.name.type\\\",\\\"meta.type.parameters.tsx entity.name.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5f7e97\\\"}},{\\\"scope\\\":[\\\"meta.import.ts punctuation.definition.block\\\",\\\"meta.import.tsx punctuation.definition.block\\\",\\\"meta.export.ts punctuation.definition.block\\\",\\\"meta.export.tsx punctuation.definition.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":[\\\"meta.decorator punctuation.decorator.ts\\\",\\\"meta.decorator punctuation.decorator.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"meta.tag.js meta.jsx.children.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"entity.name.tag.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7fdbca\\\"}},{\\\"scope\\\":[\\\"variable.other.readwrite.js\\\",\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d7dbe0\\\"}},{\\\"scope\\\":[\\\"support.class.component.js\\\",\\\"support.class.component.tsx\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#f78c6c\\\"}},{\\\"scope\\\":[\\\"meta.jsx.children\\\",\\\"meta.jsx.children.js\\\",\\\"meta.jsx.children.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d6deeb\\\"}},{\\\"scope\\\":\\\"meta.class entity.name.type.class.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffcb8b\\\"}},{\\\"scope\\\":[\\\"entity.name.type.tsx\\\",\\\"entity.name.type.module.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffcb8b\\\"}},{\\\"scope\\\":[\\\"meta.class.ts meta.var.expr.ts storage.type.ts\\\",\\\"meta.class.tsx meta.var.expr.tsx storage.type.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"meta.method.declaration storage.type.ts\\\",\\\"meta.method.declaration storage.type.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#82AAFF\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff0000\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#036A07\\\"}},{\\\"scope\\\":\\\"markup.underline\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"meta.property-list.css meta.property-value.css variable.other.less\\\",\\\"meta.property-list.scss variable.scss\\\",\\\"meta.property-list.sass variable.sass\\\",\\\"meta.brace\\\",\\\"keyword.operator.operator\\\",\\\"keyword.operator.or.regexp\\\",\\\"keyword.operator.expression.in\\\",\\\"keyword.operator.relational\\\",\\\"keyword.operator.assignment\\\",\\\"keyword.operator.comparison\\\",\\\"keyword.operator.type\\\",\\\"keyword.operator\\\",\\\"keyword\\\",\\\"punctuation.definintion.string\\\",\\\"punctuation\\\",\\\"variable.other.readwrite.js\\\",\\\"storage.type\\\",\\\"source.css\\\",\\\"string.quoted\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: nord */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBackground\\\":\\\"#3b4252\\\",\\\"activityBar.activeBorder\\\":\\\"#88c0d0\\\",\\\"activityBar.background\\\":\\\"#2e3440\\\",\\\"activityBar.dropBackground\\\":\\\"#3b4252\\\",\\\"activityBar.foreground\\\":\\\"#d8dee9\\\",\\\"activityBarBadge.background\\\":\\\"#88c0d0\\\",\\\"activityBarBadge.foreground\\\":\\\"#2e3440\\\",\\\"badge.background\\\":\\\"#88c0d0\\\",\\\"badge.foreground\\\":\\\"#2e3440\\\",\\\"button.background\\\":\\\"#88c0d0ee\\\",\\\"button.foreground\\\":\\\"#2e3440\\\",\\\"button.hoverBackground\\\":\\\"#88c0d0\\\",\\\"button.secondaryBackground\\\":\\\"#434c5e\\\",\\\"button.secondaryForeground\\\":\\\"#d8dee9\\\",\\\"button.secondaryHoverBackground\\\":\\\"#4c566a\\\",\\\"charts.blue\\\":\\\"#81a1c1\\\",\\\"charts.foreground\\\":\\\"#d8dee9\\\",\\\"charts.green\\\":\\\"#a3be8c\\\",\\\"charts.lines\\\":\\\"#88c0d0\\\",\\\"charts.orange\\\":\\\"#d08770\\\",\\\"charts.purple\\\":\\\"#b48ead\\\",\\\"charts.red\\\":\\\"#bf616a\\\",\\\"charts.yellow\\\":\\\"#ebcb8b\\\",\\\"debugConsole.errorForeground\\\":\\\"#bf616a\\\",\\\"debugConsole.infoForeground\\\":\\\"#88c0d0\\\",\\\"debugConsole.sourceForeground\\\":\\\"#616e88\\\",\\\"debugConsole.warningForeground\\\":\\\"#ebcb8b\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#81a1c1\\\",\\\"debugExceptionWidget.background\\\":\\\"#4c566a\\\",\\\"debugExceptionWidget.border\\\":\\\"#2e3440\\\",\\\"debugToolBar.background\\\":\\\"#3b4252\\\",\\\"descriptionForeground\\\":\\\"#d8dee9e6\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#81a1c133\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#bf616a4d\\\",\\\"dropdown.background\\\":\\\"#3b4252\\\",\\\"dropdown.border\\\":\\\"#3b4252\\\",\\\"dropdown.foreground\\\":\\\"#d8dee9\\\",\\\"editor.background\\\":\\\"#2e3440\\\",\\\"editor.findMatchBackground\\\":\\\"#88c0d066\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#88c0d033\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#88c0d033\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#5e81ac\\\",\\\"editor.foreground\\\":\\\"#d8dee9\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#3b4252\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#434c5ecc\\\",\\\"editor.inlineValuesBackground\\\":\\\"#4c566a\\\",\\\"editor.inlineValuesForeground\\\":\\\"#eceff4\\\",\\\"editor.lineHighlightBackground\\\":\\\"#3b4252\\\",\\\"editor.lineHighlightBorder\\\":\\\"#3b4252\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#434c5e52\\\",\\\"editor.selectionBackground\\\":\\\"#434c5ecc\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#434c5ecc\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#5e81ac\\\",\\\"editor.wordHighlightBackground\\\":\\\"#81a1c166\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#81a1c199\\\",\\\"editorActiveLineNumber.foreground\\\":\\\"#d8dee9cc\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#8fbcbb\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#88c0d0\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#81a1c1\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#5e81ac\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#8fbcbb\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#88c0d0\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#bf616a\\\",\\\"editorBracketMatch.background\\\":\\\"#2e344000\\\",\\\"editorBracketMatch.border\\\":\\\"#88c0d0\\\",\\\"editorCodeLens.foreground\\\":\\\"#4c566a\\\",\\\"editorCursor.foreground\\\":\\\"#d8dee9\\\",\\\"editorError.border\\\":\\\"#bf616a00\\\",\\\"editorError.foreground\\\":\\\"#bf616a\\\",\\\"editorGroup.background\\\":\\\"#2e3440\\\",\\\"editorGroup.border\\\":\\\"#3b425201\\\",\\\"editorGroup.dropBackground\\\":\\\"#3b425299\\\",\\\"editorGroupHeader.border\\\":\\\"#3b425200\\\",\\\"editorGroupHeader.noTabsBackground\\\":\\\"#2e3440\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#2e3440\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#3b425200\\\",\\\"editorGutter.addedBackground\\\":\\\"#a3be8c\\\",\\\"editorGutter.background\\\":\\\"#2e3440\\\",\\\"editorGutter.deletedBackground\\\":\\\"#bf616a\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#ebcb8b\\\",\\\"editorHint.border\\\":\\\"#ebcb8b00\\\",\\\"editorHint.foreground\\\":\\\"#ebcb8b\\\",\\\"editorHoverWidget.background\\\":\\\"#3b4252\\\",\\\"editorHoverWidget.border\\\":\\\"#3b4252\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#4c566a\\\",\\\"editorIndentGuide.background\\\":\\\"#434c5eb3\\\",\\\"editorInlayHint.background\\\":\\\"#434c5e\\\",\\\"editorInlayHint.foreground\\\":\\\"#d8dee9\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#d8dee9\\\",\\\"editorLineNumber.foreground\\\":\\\"#4c566a\\\",\\\"editorLink.activeForeground\\\":\\\"#88c0d0\\\",\\\"editorMarkerNavigation.background\\\":\\\"#5e81acc0\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#bf616ac0\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#ebcb8bc0\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#a3be8c\\\",\\\"editorOverviewRuler.border\\\":\\\"#3b4252\\\",\\\"editorOverviewRuler.currentContentForeground\\\":\\\"#3b4252\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#bf616a\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#bf616a\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#88c0d066\\\",\\\"editorOverviewRuler.incomingContentForeground\\\":\\\"#3b4252\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#81a1c1\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#ebcb8b\\\",\\\"editorOverviewRuler.rangeHighlightForeground\\\":\\\"#88c0d066\\\",\\\"editorOverviewRuler.selectionHighlightForeground\\\":\\\"#88c0d066\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#ebcb8b\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#88c0d066\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#88c0d066\\\",\\\"editorRuler.foreground\\\":\\\"#434c5e\\\",\\\"editorSuggestWidget.background\\\":\\\"#2e3440\\\",\\\"editorSuggestWidget.border\\\":\\\"#3b4252\\\",\\\"editorSuggestWidget.focusHighlightForeground\\\":\\\"#88c0d0\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#d8dee9\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#88c0d0\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#434c5e\\\",\\\"editorSuggestWidget.selectedForeground\\\":\\\"#d8dee9\\\",\\\"editorWarning.border\\\":\\\"#ebcb8b00\\\",\\\"editorWarning.foreground\\\":\\\"#ebcb8b\\\",\\\"editorWhitespace.foreground\\\":\\\"#4c566ab3\\\",\\\"editorWidget.background\\\":\\\"#2e3440\\\",\\\"editorWidget.border\\\":\\\"#3b4252\\\",\\\"errorForeground\\\":\\\"#bf616a\\\",\\\"extensionButton.prominentBackground\\\":\\\"#434c5e\\\",\\\"extensionButton.prominentForeground\\\":\\\"#d8dee9\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#4c566a\\\",\\\"focusBorder\\\":\\\"#3b4252\\\",\\\"foreground\\\":\\\"#d8dee9\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#5e81ac\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#bf616a\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#d8dee966\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#ebcb8b\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#bf616a\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#ebcb8b\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#8fbcbb\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#a3be8c\\\",\\\"input.background\\\":\\\"#3b4252\\\",\\\"input.border\\\":\\\"#3b4252\\\",\\\"input.foreground\\\":\\\"#d8dee9\\\",\\\"input.placeholderForeground\\\":\\\"#d8dee999\\\",\\\"inputOption.activeBackground\\\":\\\"#5e81ac\\\",\\\"inputOption.activeBorder\\\":\\\"#5e81ac\\\",\\\"inputOption.activeForeground\\\":\\\"#eceff4\\\",\\\"inputValidation.errorBackground\\\":\\\"#bf616a\\\",\\\"inputValidation.errorBorder\\\":\\\"#bf616a\\\",\\\"inputValidation.infoBackground\\\":\\\"#81a1c1\\\",\\\"inputValidation.infoBorder\\\":\\\"#81a1c1\\\",\\\"inputValidation.warningBackground\\\":\\\"#d08770\\\",\\\"inputValidation.warningBorder\\\":\\\"#d08770\\\",\\\"keybindingLabel.background\\\":\\\"#4c566a\\\",\\\"keybindingLabel.border\\\":\\\"#4c566a\\\",\\\"keybindingLabel.bottomBorder\\\":\\\"#4c566a\\\",\\\"keybindingLabel.foreground\\\":\\\"#d8dee9\\\",\\\"list.activeSelectionBackground\\\":\\\"#88c0d0\\\",\\\"list.activeSelectionForeground\\\":\\\"#2e3440\\\",\\\"list.dropBackground\\\":\\\"#88c0d099\\\",\\\"list.errorForeground\\\":\\\"#bf616a\\\",\\\"list.focusBackground\\\":\\\"#88c0d099\\\",\\\"list.focusForeground\\\":\\\"#d8dee9\\\",\\\"list.focusHighlightForeground\\\":\\\"#eceff4\\\",\\\"list.highlightForeground\\\":\\\"#88c0d0\\\",\\\"list.hoverBackground\\\":\\\"#3b4252\\\",\\\"list.hoverForeground\\\":\\\"#eceff4\\\",\\\"list.inactiveFocusBackground\\\":\\\"#434c5ecc\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#434c5e\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#d8dee9\\\",\\\"list.warningForeground\\\":\\\"#ebcb8b\\\",\\\"merge.border\\\":\\\"#3b425200\\\",\\\"merge.currentContentBackground\\\":\\\"#81a1c14d\\\",\\\"merge.currentHeaderBackground\\\":\\\"#81a1c166\\\",\\\"merge.incomingContentBackground\\\":\\\"#8fbcbb4d\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#8fbcbb66\\\",\\\"minimap.background\\\":\\\"#2e3440\\\",\\\"minimap.errorHighlight\\\":\\\"#bf616acc\\\",\\\"minimap.findMatchHighlight\\\":\\\"#88c0d0\\\",\\\"minimap.selectionHighlight\\\":\\\"#88c0d0cc\\\",\\\"minimap.warningHighlight\\\":\\\"#ebcb8bcc\\\",\\\"minimapGutter.addedBackground\\\":\\\"#a3be8c\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#bf616a\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#ebcb8b\\\",\\\"minimapSlider.activeBackground\\\":\\\"#434c5eaa\\\",\\\"minimapSlider.background\\\":\\\"#434c5e99\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#434c5eaa\\\",\\\"notification.background\\\":\\\"#3b4252\\\",\\\"notification.buttonBackground\\\":\\\"#434c5e\\\",\\\"notification.buttonForeground\\\":\\\"#d8dee9\\\",\\\"notification.buttonHoverBackground\\\":\\\"#4c566a\\\",\\\"notification.errorBackground\\\":\\\"#bf616a\\\",\\\"notification.errorForeground\\\":\\\"#2e3440\\\",\\\"notification.foreground\\\":\\\"#d8dee9\\\",\\\"notification.infoBackground\\\":\\\"#88c0d0\\\",\\\"notification.infoForeground\\\":\\\"#2e3440\\\",\\\"notification.warningBackground\\\":\\\"#ebcb8b\\\",\\\"notification.warningForeground\\\":\\\"#2e3440\\\",\\\"notificationCenter.border\\\":\\\"#3b425200\\\",\\\"notificationCenterHeader.background\\\":\\\"#2e3440\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#88c0d0\\\",\\\"notificationLink.foreground\\\":\\\"#88c0d0\\\",\\\"notificationToast.border\\\":\\\"#3b425200\\\",\\\"notifications.background\\\":\\\"#3b4252\\\",\\\"notifications.border\\\":\\\"#2e3440\\\",\\\"notifications.foreground\\\":\\\"#d8dee9\\\",\\\"panel.background\\\":\\\"#2e3440\\\",\\\"panel.border\\\":\\\"#3b4252\\\",\\\"panelTitle.activeBorder\\\":\\\"#88c0d000\\\",\\\"panelTitle.activeForeground\\\":\\\"#88c0d0\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#d8dee9\\\",\\\"peekView.border\\\":\\\"#4c566a\\\",\\\"peekViewEditor.background\\\":\\\"#2e3440\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#88c0d04d\\\",\\\"peekViewEditorGutter.background\\\":\\\"#2e3440\\\",\\\"peekViewResult.background\\\":\\\"#2e3440\\\",\\\"peekViewResult.fileForeground\\\":\\\"#88c0d0\\\",\\\"peekViewResult.lineForeground\\\":\\\"#d8dee966\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#88c0d0cc\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#434c5e\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#d8dee9\\\",\\\"peekViewTitle.background\\\":\\\"#3b4252\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#d8dee9\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#88c0d0\\\",\\\"pickerGroup.border\\\":\\\"#3b4252\\\",\\\"pickerGroup.foreground\\\":\\\"#88c0d0\\\",\\\"progressBar.background\\\":\\\"#88c0d0\\\",\\\"quickInputList.focusBackground\\\":\\\"#88c0d0\\\",\\\"quickInputList.focusForeground\\\":\\\"#2e3440\\\",\\\"sash.hoverBorder\\\":\\\"#88c0d0\\\",\\\"scrollbar.shadow\\\":\\\"#00000066\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#434c5eaa\\\",\\\"scrollbarSlider.background\\\":\\\"#434c5e99\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#434c5eaa\\\",\\\"selection.background\\\":\\\"#88c0d099\\\",\\\"sideBar.background\\\":\\\"#2e3440\\\",\\\"sideBar.border\\\":\\\"#3b4252\\\",\\\"sideBar.foreground\\\":\\\"#d8dee9\\\",\\\"sideBarSectionHeader.background\\\":\\\"#3b4252\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#d8dee9\\\",\\\"sideBarTitle.foreground\\\":\\\"#d8dee9\\\",\\\"statusBar.background\\\":\\\"#3b4252\\\",\\\"statusBar.border\\\":\\\"#3b425200\\\",\\\"statusBar.debuggingBackground\\\":\\\"#5e81ac\\\",\\\"statusBar.debuggingForeground\\\":\\\"#d8dee9\\\",\\\"statusBar.foreground\\\":\\\"#d8dee9\\\",\\\"statusBar.noFolderBackground\\\":\\\"#3b4252\\\",\\\"statusBar.noFolderForeground\\\":\\\"#d8dee9\\\",\\\"statusBarItem.activeBackground\\\":\\\"#4c566a\\\",\\\"statusBarItem.errorBackground\\\":\\\"#3b4252\\\",\\\"statusBarItem.errorForeground\\\":\\\"#bf616a\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#434c5e\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#3b4252\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#434c5e\\\",\\\"statusBarItem.warningBackground\\\":\\\"#ebcb8b\\\",\\\"statusBarItem.warningForeground\\\":\\\"#2e3440\\\",\\\"tab.activeBackground\\\":\\\"#3b4252\\\",\\\"tab.activeBorder\\\":\\\"#88c0d000\\\",\\\"tab.activeBorderTop\\\":\\\"#88c0d000\\\",\\\"tab.activeForeground\\\":\\\"#d8dee9\\\",\\\"tab.border\\\":\\\"#3b425200\\\",\\\"tab.hoverBackground\\\":\\\"#3b4252cc\\\",\\\"tab.hoverBorder\\\":\\\"#88c0d000\\\",\\\"tab.inactiveBackground\\\":\\\"#2e3440\\\",\\\"tab.inactiveForeground\\\":\\\"#d8dee966\\\",\\\"tab.lastPinnedBorder\\\":\\\"#4c566a\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#88c0d000\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#88c0d000\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#d8dee999\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#3b4252b3\\\",\\\"tab.unfocusedHoverBorder\\\":\\\"#88c0d000\\\",\\\"tab.unfocusedInactiveForeground\\\":\\\"#d8dee966\\\",\\\"terminal.ansiBlack\\\":\\\"#3b4252\\\",\\\"terminal.ansiBlue\\\":\\\"#81a1c1\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#4c566a\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#81a1c1\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#8fbcbb\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#a3be8c\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#b48ead\\\",\\\"terminal.ansiBrightRed\\\":\\\"#bf616a\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#eceff4\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#ebcb8b\\\",\\\"terminal.ansiCyan\\\":\\\"#88c0d0\\\",\\\"terminal.ansiGreen\\\":\\\"#a3be8c\\\",\\\"terminal.ansiMagenta\\\":\\\"#b48ead\\\",\\\"terminal.ansiRed\\\":\\\"#bf616a\\\",\\\"terminal.ansiWhite\\\":\\\"#e5e9f0\\\",\\\"terminal.ansiYellow\\\":\\\"#ebcb8b\\\",\\\"terminal.background\\\":\\\"#2e3440\\\",\\\"terminal.foreground\\\":\\\"#d8dee9\\\",\\\"terminal.tab.activeBorder\\\":\\\"#88c0d0\\\",\\\"textBlockQuote.background\\\":\\\"#3b4252\\\",\\\"textBlockQuote.border\\\":\\\"#81a1c1\\\",\\\"textCodeBlock.background\\\":\\\"#4c566a\\\",\\\"textLink.activeForeground\\\":\\\"#88c0d0\\\",\\\"textLink.foreground\\\":\\\"#88c0d0\\\",\\\"textPreformat.foreground\\\":\\\"#8fbcbb\\\",\\\"textSeparator.foreground\\\":\\\"#eceff4\\\",\\\"titleBar.activeBackground\\\":\\\"#2e3440\\\",\\\"titleBar.activeForeground\\\":\\\"#d8dee9\\\",\\\"titleBar.border\\\":\\\"#2e344000\\\",\\\"titleBar.inactiveBackground\\\":\\\"#2e3440\\\",\\\"titleBar.inactiveForeground\\\":\\\"#d8dee966\\\",\\\"tree.indentGuidesStroke\\\":\\\"#616e88\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#2e3440\\\",\\\"welcomePage.buttonBackground\\\":\\\"#434c5e\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#4c566a\\\",\\\"widget.shadow\\\":\\\"#00000066\\\"},\\\"displayName\\\":\\\"Nord\\\",\\\"name\\\":\\\"nord\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"background\\\":\\\"#2e3440ff\\\",\\\"foreground\\\":\\\"#d8dee9ff\\\"}},{\\\"scope\\\":\\\"emphasis\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"strong\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#616E88\\\"}},{\\\"scope\\\":\\\"constant.character\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EBCB8B\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EBCB8B\\\"}},{\\\"scope\\\":\\\"constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#B48EAD\\\"}},{\\\"scope\\\":\\\"constant.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EBCB8B\\\"}},{\\\"scope\\\":[\\\"entity.name.class\\\",\\\"entity.name.type.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"entity.other.inherited-class\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"background\\\":\\\"#EBCB8B\\\",\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"background\\\":\\\"#BF616A\\\",\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"keyword.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"keyword.other.new\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.changed\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EBCB8B\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#BF616A\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#A3BE8C\\\"}},{\\\"scope\\\":\\\"meta.preprocessor\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5E81AC\\\"}},{\\\"scope\\\":\\\"punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ECEFF4\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.method-parameters\\\",\\\"punctuation.definition.function-parameters\\\",\\\"punctuation.definition.parameters\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ECEFF4\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.comment\\\",\\\"punctuation.end.definition.comment\\\",\\\"punctuation.start.definition.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#616E88\\\"}},{\\\"scope\\\":\\\"punctuation.section\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ECEFF4\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded.begin\\\",\\\"punctuation.section.embedded.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"punctuation.terminator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"punctuation.definition.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"storage\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#A3BE8C\\\"}},{\\\"scope\\\":\\\"string.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EBCB8B\\\"}},{\\\"scope\\\":\\\"support.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"support.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":\\\"support.function.construct\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"support.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"support.type.exception\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"token.debug-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b48ead\\\"}},{\\\"scope\\\":\\\"token.error-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#bf616a\\\"}},{\\\"scope\\\":\\\"token.info-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88c0d0\\\"}},{\\\"scope\\\":\\\"token.warn-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ebcb8b\\\"}},{\\\"scope\\\":\\\"variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":\\\"variable.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"variable.parameter\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":\\\"punctuation.separator.pointer-access.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":[\\\"source.c meta.preprocessor.include\\\",\\\"source.c string.quoted.other.lt-gt.include\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":[\\\"source.cpp keyword.control.directive.conditional\\\",\\\"source.cpp punctuation.definition.directive\\\",\\\"source.c keyword.control.directive.conditional\\\",\\\"source.c punctuation.definition.directive\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#5E81AC\\\"}},{\\\"scope\\\":\\\"source.css constant.other.color.rgb-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#B48EAD\\\"}},{\\\"scope\\\":\\\"source.css meta.property-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":[\\\"source.css keyword.control.at-rule.media\\\",\\\"source.css keyword.control.at-rule.media punctuation.definition.keyword\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D08770\\\"}},{\\\"scope\\\":\\\"source.css punctuation.definition.keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"source.css support.type.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":\\\"source.diff meta.diff.range.context\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.diff meta.diff.header.from-file\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.diff punctuation.definition.from-file\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.diff punctuation.definition.range\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.diff punctuation.definition.separator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"entity.name.type.module.elixir\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"variable.other.readwrite.module.elixir\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":\\\"constant.other.symbol.elixir\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":\\\"variable.other.constant.elixir\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.go constant.other.placeholder.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EBCB8B\\\"}},{\\\"scope\\\":\\\"source.java comment.block.documentation.javadoc punctuation.definition.entity.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"source.java constant.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":\\\"source.java keyword.other.documentation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.java keyword.other.documentation.author.javadoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":[\\\"source.java keyword.other.documentation.directive\\\",\\\"source.java keyword.other.documentation.custom\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.java keyword.other.documentation.see.javadoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.java meta.method-call meta.method\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":[\\\"source.java meta.tag.template.link.javadoc\\\",\\\"source.java string.other.link.title.javadoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.java meta.tag.template.value.javadoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":\\\"source.java punctuation.definition.keyword.javadoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":[\\\"source.java punctuation.definition.tag.begin.javadoc\\\",\\\"source.java punctuation.definition.tag.end.javadoc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#616E88\\\"}},{\\\"scope\\\":\\\"source.java storage.modifier.import\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.java storage.modifier.package\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.java storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.java storage.type.annotation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#D08770\\\"}},{\\\"scope\\\":\\\"source.java storage.type.generic\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.java storage.type.primitive\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":[\\\"source.js punctuation.decorator\\\",\\\"source.js meta.decorator variable.other.readwrite\\\",\\\"source.js meta.decorator entity.name.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D08770\\\"}},{\\\"scope\\\":\\\"source.js meta.object-literal.key\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":\\\"source.js storage.type.class.jsdoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":[\\\"source.js string.quoted.template punctuation.quasi.element.begin\\\",\\\"source.js string.quoted.template punctuation.quasi.element.end\\\",\\\"source.js string.template punctuation.definition.template-expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"source.js string.quoted.template meta.method-call.with-arguments\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ECEFF4\\\"}},{\\\"scope\\\":[\\\"source.js string.template meta.template.expression support.variable.property\\\",\\\"source.js string.template meta.template.expression variable.other.object\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":\\\"source.js support.type.primitive\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"source.js variable.other.object\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":\\\"source.js variable.other.readwrite.alias\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":[\\\"source.js meta.embedded.line meta.brace.square\\\",\\\"source.js meta.embedded.line meta.brace.round\\\",\\\"source.js string.quoted.template meta.brace.square\\\",\\\"source.js string.quoted.template meta.brace.round\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ECEFF4\\\"}},{\\\"scope\\\":\\\"text.html.basic constant.character.entity.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EBCB8B\\\"}},{\\\"scope\\\":\\\"text.html.basic constant.other.inline-data\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#D08770\\\"}},{\\\"scope\\\":\\\"text.html.basic meta.tag.sgml.doctype\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5E81AC\\\"}},{\\\"scope\\\":\\\"text.html.basic punctuation.definition.entity\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"source.properties entity.name.section.group-title.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":\\\"source.properties punctuation.separator.key-value.ini\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.fenced_code.block\\\",\\\"text.html.markdown markup.fenced_code.block punctuation.definition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw\\\",\\\"text.html.markdown markup.inline.raw punctuation.definition.raw\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"text.html.markdown markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"text.html.markdown markup.underline.link\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":\\\"text.html.markdown beginning.punctuation.definition.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"text.html.markdown beginning.punctuation.definition.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"text.html.markdown markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#616E88\\\"}},{\\\"scope\\\":\\\"text.html.markdown constant.character.math.tex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":[\\\"text.html.markdown punctuation.definition.math.begin\\\",\\\"text.html.markdown punctuation.definition.math.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5E81AC\\\"}},{\\\"scope\\\":\\\"text.html.markdown punctuation.definition.function.math.tex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":\\\"text.html.markdown punctuation.math.operator.latex\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"text.html.markdown punctuation.definition.heading\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":[\\\"text.html.markdown punctuation.definition.constant\\\",\\\"text.html.markdown punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":[\\\"text.html.markdown constant.other.reference.link\\\",\\\"text.html.markdown string.other.link.description\\\",\\\"text.html.markdown string.other.link.title\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":\\\"source.perl punctuation.definition.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":[\\\"source.php meta.function-call\\\",\\\"source.php meta.function-call.object\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":[\\\"source.python entity.name.function.decorator\\\",\\\"source.python meta.function.decorator support.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D08770\\\"}},{\\\"scope\\\":\\\"source.python meta.function-call.generic\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":\\\"source.python support.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":[\\\"source.python variable.parameter.function.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":[\\\"source.python meta.function.parameters variable.parameter.function.language.special.self\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"source.rust entity.name.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"source.rust meta.macro entity.name.function\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":[\\\"source.rust meta.attribute\\\",\\\"source.rust meta.attribute punctuation\\\",\\\"source.rust meta.attribute keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5E81AC\\\"}},{\\\"scope\\\":\\\"source.rust entity.name.type.trait\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"source.rust punctuation.definition.interpolation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#EBCB8B\\\"}},{\\\"scope\\\":[\\\"source.css.scss punctuation.definition.interpolation.begin.bracket.curly\\\",\\\"source.css.scss punctuation.definition.interpolation.end.bracket.curly\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#81A1C1\\\"}},{\\\"scope\\\":\\\"source.css.scss variable.interpolation\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":[\\\"source.ts punctuation.decorator\\\",\\\"source.ts meta.decorator variable.other.readwrite\\\",\\\"source.ts meta.decorator entity.name.function\\\",\\\"source.tsx punctuation.decorator\\\",\\\"source.tsx meta.decorator variable.other.readwrite\\\",\\\"source.tsx meta.decorator entity.name.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D08770\\\"}},{\\\"scope\\\":[\\\"source.ts meta.object-literal.key\\\",\\\"source.tsx meta.object-literal.key\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":[\\\"source.ts meta.object-literal.key entity.name.function\\\",\\\"source.tsx meta.object-literal.key entity.name.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#88C0D0\\\"}},{\\\"scope\\\":[\\\"source.ts support.class\\\",\\\"source.ts support.type\\\",\\\"source.ts entity.name.type\\\",\\\"source.ts entity.name.class\\\",\\\"source.tsx support.class\\\",\\\"source.tsx support.type\\\",\\\"source.tsx entity.name.type\\\",\\\"source.tsx entity.name.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":[\\\"source.ts support.constant.math\\\",\\\"source.ts support.constant.dom\\\",\\\"source.ts support.constant.json\\\",\\\"source.tsx support.constant.math\\\",\\\"source.tsx support.constant.dom\\\",\\\"source.tsx support.constant.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":[\\\"source.ts support.variable\\\",\\\"source.tsx support.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D8DEE9\\\"}},{\\\"scope\\\":[\\\"source.ts meta.embedded.line meta.brace.square\\\",\\\"source.ts meta.embedded.line meta.brace.round\\\",\\\"source.tsx meta.embedded.line meta.brace.square\\\",\\\"source.tsx meta.embedded.line meta.brace.round\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ECEFF4\\\"}},{\\\"scope\\\":\\\"text.xml entity.name.tag.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}},{\\\"scope\\\":\\\"text.xml keyword.other.doctype\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5E81AC\\\"}},{\\\"scope\\\":\\\"text.xml meta.tag.preprocessor entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5E81AC\\\"}},{\\\"scope\\\":[\\\"text.xml string.unquoted.cdata\\\",\\\"text.xml string.unquoted.cdata punctuation.definition.string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#D08770\\\"}},{\\\"scope\\\":\\\"source.yaml entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#8FBCBB\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: one-dark-pro */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"actionBar.toggledBackground\\\":\\\"#525761\\\",\\\"activityBar.background\\\":\\\"#282c34\\\",\\\"activityBar.foreground\\\":\\\"#d7dae0\\\",\\\"activityBarBadge.background\\\":\\\"#4d78cc\\\",\\\"activityBarBadge.foreground\\\":\\\"#f8fafd\\\",\\\"badge.background\\\":\\\"#282c34\\\",\\\"button.background\\\":\\\"#404754\\\",\\\"button.secondaryBackground\\\":\\\"#30333d\\\",\\\"button.secondaryForeground\\\":\\\"#c0bdbd\\\",\\\"checkbox.border\\\":\\\"#404754\\\",\\\"debugToolBar.background\\\":\\\"#21252b\\\",\\\"descriptionForeground\\\":\\\"#abb2bf\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#00809b33\\\",\\\"dropdown.background\\\":\\\"#21252b\\\",\\\"dropdown.border\\\":\\\"#21252b\\\",\\\"editor.background\\\":\\\"#282c34\\\",\\\"editor.findMatchBackground\\\":\\\"#d19a6644\\\",\\\"editor.findMatchBorder\\\":\\\"#ffffff5a\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#ffffff22\\\",\\\"editor.foreground\\\":\\\"#abb2bf\\\",\\\"editor.lineHighlightBackground\\\":\\\"#2c313c\\\",\\\"editor.selectionBackground\\\":\\\"#67769660\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#ffd33d44\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#dddddd\\\",\\\"editor.wordHighlightBackground\\\":\\\"#d2e0ff2f\\\",\\\"editor.wordHighlightBorder\\\":\\\"#7f848e\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#abb2bf26\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#7f848e\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#d19a66\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#c678dd\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#56b6c2\\\",\\\"editorBracketMatch.background\\\":\\\"#515a6b\\\",\\\"editorBracketMatch.border\\\":\\\"#515a6b\\\",\\\"editorCursor.background\\\":\\\"#ffffffc9\\\",\\\"editorCursor.foreground\\\":\\\"#528bff\\\",\\\"editorError.foreground\\\":\\\"#c24038\\\",\\\"editorGroup.background\\\":\\\"#181a1f\\\",\\\"editorGroup.border\\\":\\\"#181a1f\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#21252b\\\",\\\"editorGutter.addedBackground\\\":\\\"#109868\\\",\\\"editorGutter.deletedBackground\\\":\\\"#9A353D\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#948B60\\\",\\\"editorHoverWidget.background\\\":\\\"#21252b\\\",\\\"editorHoverWidget.border\\\":\\\"#181a1f\\\",\\\"editorHoverWidget.highlightForeground\\\":\\\"#61afef\\\",\\\"editorIndentGuide.activeBackground1\\\":\\\"#c8c8c859\\\",\\\"editorIndentGuide.background1\\\":\\\"#3b4048\\\",\\\"editorInlayHint.background\\\":\\\"#2c313c\\\",\\\"editorInlayHint.foreground\\\":\\\"#abb2bf\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#abb2bf\\\",\\\"editorLineNumber.foreground\\\":\\\"#495162\\\",\\\"editorMarkerNavigation.background\\\":\\\"#21252b\\\",\\\"editorOverviewRuler.addedBackground\\\":\\\"#109868\\\",\\\"editorOverviewRuler.deletedBackground\\\":\\\"#9A353D\\\",\\\"editorOverviewRuler.modifiedBackground\\\":\\\"#948B60\\\",\\\"editorRuler.foreground\\\":\\\"#abb2bf26\\\",\\\"editorSuggestWidget.background\\\":\\\"#21252b\\\",\\\"editorSuggestWidget.border\\\":\\\"#181a1f\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#2c313a\\\",\\\"editorWarning.foreground\\\":\\\"#d19a66\\\",\\\"editorWhitespace.foreground\\\":\\\"#ffffff1d\\\",\\\"editorWidget.background\\\":\\\"#21252b\\\",\\\"focusBorder\\\":\\\"#3e4452\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#636b78\\\",\\\"input.background\\\":\\\"#1d1f23\\\",\\\"input.foreground\\\":\\\"#abb2bf\\\",\\\"list.activeSelectionBackground\\\":\\\"#2c313a\\\",\\\"list.activeSelectionForeground\\\":\\\"#d7dae0\\\",\\\"list.focusBackground\\\":\\\"#323842\\\",\\\"list.focusForeground\\\":\\\"#f0f0f0\\\",\\\"list.highlightForeground\\\":\\\"#ecebeb\\\",\\\"list.hoverBackground\\\":\\\"#2c313a\\\",\\\"list.hoverForeground\\\":\\\"#abb2bf\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#323842\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#d7dae0\\\",\\\"list.warningForeground\\\":\\\"#d19a66\\\",\\\"menu.foreground\\\":\\\"#abb2bf\\\",\\\"menu.separatorBackground\\\":\\\"#343a45\\\",\\\"minimapGutter.addedBackground\\\":\\\"#109868\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#9A353D\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#948B60\\\",\\\"panel.border\\\":\\\"#3e4452\\\",\\\"panelSectionHeader.background\\\":\\\"#21252b\\\",\\\"peekViewEditor.background\\\":\\\"#1b1d23\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#29244b\\\",\\\"peekViewResult.background\\\":\\\"#22262b\\\",\\\"scrollbar.shadow\\\":\\\"#23252c\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#747d9180\\\",\\\"scrollbarSlider.background\\\":\\\"#4e566660\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#5a637580\\\",\\\"settings.focusedRowBackground\\\":\\\"#282c34\\\",\\\"settings.headerForeground\\\":\\\"#fff\\\",\\\"sideBar.background\\\":\\\"#21252b\\\",\\\"sideBar.foreground\\\":\\\"#abb2bf\\\",\\\"sideBarSectionHeader.background\\\":\\\"#282c34\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#abb2bf\\\",\\\"statusBar.background\\\":\\\"#21252b\\\",\\\"statusBar.debuggingBackground\\\":\\\"#cc6633\\\",\\\"statusBar.debuggingBorder\\\":\\\"#ff000000\\\",\\\"statusBar.debuggingForeground\\\":\\\"#ffffff\\\",\\\"statusBar.foreground\\\":\\\"#9da5b4\\\",\\\"statusBar.noFolderBackground\\\":\\\"#21252b\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#4d78cc\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#f8fafd\\\",\\\"tab.activeBackground\\\":\\\"#282c34\\\",\\\"tab.activeBorder\\\":\\\"#b4b4b4\\\",\\\"tab.activeForeground\\\":\\\"#dcdcdc\\\",\\\"tab.border\\\":\\\"#181a1f\\\",\\\"tab.hoverBackground\\\":\\\"#323842\\\",\\\"tab.inactiveBackground\\\":\\\"#21252b\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#323842\\\",\\\"terminal.ansiBlack\\\":\\\"#3f4451\\\",\\\"terminal.ansiBlue\\\":\\\"#4aa5f0\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#4f5666\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#4dc4ff\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#4cd1e0\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#a5e075\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#de73ff\\\",\\\"terminal.ansiBrightRed\\\":\\\"#ff616e\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#e6e6e6\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#f0a45d\\\",\\\"terminal.ansiCyan\\\":\\\"#42b3c2\\\",\\\"terminal.ansiGreen\\\":\\\"#8cc265\\\",\\\"terminal.ansiMagenta\\\":\\\"#c162de\\\",\\\"terminal.ansiRed\\\":\\\"#e05561\\\",\\\"terminal.ansiWhite\\\":\\\"#d7dae0\\\",\\\"terminal.ansiYellow\\\":\\\"#d18f52\\\",\\\"terminal.background\\\":\\\"#282c34\\\",\\\"terminal.border\\\":\\\"#3e4452\\\",\\\"terminal.foreground\\\":\\\"#abb2bf\\\",\\\"terminal.selectionBackground\\\":\\\"#abb2bf30\\\",\\\"textBlockQuote.background\\\":\\\"#2e3440\\\",\\\"textBlockQuote.border\\\":\\\"#4b5362\\\",\\\"textLink.foreground\\\":\\\"#61afef\\\",\\\"textPreformat.foreground\\\":\\\"#d19a66\\\",\\\"titleBar.activeBackground\\\":\\\"#282c34\\\",\\\"titleBar.activeForeground\\\":\\\"#9da5b4\\\",\\\"titleBar.inactiveBackground\\\":\\\"#282c34\\\",\\\"titleBar.inactiveForeground\\\":\\\"#6b717d\\\",\\\"tree.indentGuidesStroke\\\":\\\"#ffffff1d\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#2e3440\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#404754\\\"},\\\"displayName\\\":\\\"One Dark Pro\\\",\\\"name\\\":\\\"one-dark-pro\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"annotation:dart\\\":{\\\"foreground\\\":\\\"#d19a66\\\"},\\\"enumMember\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"},\\\"macro\\\":{\\\"foreground\\\":\\\"#d19a66\\\"},\\\"memberOperatorOverload\\\":{\\\"foreground\\\":\\\"#c678dd\\\"},\\\"parameter.label:dart\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"},\\\"property:dart\\\":{\\\"foreground\\\":\\\"#d19a66\\\"},\\\"tomlArrayKey\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"},\\\"variable.constant\\\":{\\\"foreground\\\":\\\"#d19a66\\\"},\\\"variable.defaultLibrary\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"},\\\"variable:dart\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},\\\"tokenColors\\\":[{\\\"scope\\\":\\\"meta.embedded\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"punctuation.definition.delayed.unison,punctuation.definition.list.begin.unison,punctuation.definition.list.end.unison,punctuation.definition.ability.begin.unison,punctuation.definition.ability.end.unison,punctuation.operator.assignment.as.unison,punctuation.separator.pipe.unison,punctuation.separator.delimiter.unison,punctuation.definition.hash.unison\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"variable.other.generic-type.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"storage.type.haskell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"support.variable.magic.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"punctuation.separator.period.python,punctuation.separator.element.python,punctuation.parenthesis.begin.python,punctuation.parenthesis.end.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"variable.parameter.function.language.special.self.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"variable.parameter.function.language.special.cls.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"storage.modifier.lifetime.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"support.function.std.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"entity.name.lifetime.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"variable.language.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"support.constant.edge\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"constant.other.character-class.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"keyword.operator.word\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"keyword.operator.quantifier.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"variable.parameter.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"comment markup.link\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6370\\\"}},{\\\"scope\\\":\\\"markup.changed.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"meta.diff.header.from-file,meta.diff.header.to-file,punctuation.definition.from-file.diff,punctuation.definition.to-file.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"markup.inserted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":\\\"markup.deleted.diff\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"meta.function.c,meta.function.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"punctuation.section.block.begin.bracket.curly.cpp,punctuation.section.block.end.bracket.curly.cpp,punctuation.terminator.statement.c,punctuation.section.block.begin.bracket.curly.c,punctuation.section.block.end.bracket.curly.c,punctuation.section.parens.begin.bracket.round.c,punctuation.section.parens.end.bracket.round.c,punctuation.section.parameters.begin.bracket.round.c,punctuation.section.parameters.end.bracket.round.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"punctuation.separator.key-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"keyword.operator.expression.import\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"support.constant.math\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"support.constant.property.math\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"variable.other.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"storage.type.annotation.java\\\",\\\"storage.type.object.array.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"source.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"punctuation.section.block.begin.java,punctuation.section.block.end.java,punctuation.definition.method-parameters.begin.java,punctuation.definition.method-parameters.end.java,meta.method.identifier.java,punctuation.section.method.begin.java,punctuation.section.method.end.java,punctuation.terminator.java,punctuation.section.class.begin.java,punctuation.section.class.end.java,punctuation.section.inner-class.begin.java,punctuation.section.inner-class.end.java,meta.method-call.java,punctuation.section.class.begin.bracket.curly.java,punctuation.section.class.end.bracket.curly.java,punctuation.section.method.begin.bracket.curly.java,punctuation.section.method.end.bracket.curly.java,punctuation.separator.period.java,punctuation.bracket.angle.java,punctuation.definition.annotation.java,meta.method.body.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"meta.method.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"storage.modifier.import.java,storage.type.java,storage.type.generic.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"keyword.operator.instanceof.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"meta.definition.variable.name.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"keyword.operator.logical\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"keyword.operator.bitwise\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"keyword.operator.channel\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"support.constant.property-value.scss,support.constant.property-value.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"keyword.operator.css,keyword.operator.scss,keyword.operator.less\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"support.constant.color.w3c-standard-color-name.css,support.constant.color.w3c-standard-color-name.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"punctuation.separator.list.comma.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"support.constant.color.w3c-standard-color-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"support.type.vendored.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"support.module.node,support.type.object.module,support.module.node\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"entity.name.type.module\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"variable.other.readwrite,meta.object-literal.key,support.variable.property,support.variable.object.process,support.variable.object.node\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"support.constant.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":[\\\"keyword.operator.expression.instanceof\\\",\\\"keyword.operator.new\\\",\\\"keyword.operator.ternary\\\",\\\"keyword.operator.optional\\\",\\\"keyword.operator.expression.keyof\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"support.type.object.console\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"support.variable.property.process\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"entity.name.function,support.function.console\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"keyword.operator.misc.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"keyword.operator.sigil.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"keyword.operator.delete\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"support.type.object.dom\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"support.variable.dom,support.variable.property.dom\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"keyword.operator.arithmetic,keyword.operator.comparison,keyword.operator.decrement,keyword.operator.increment,keyword.operator.relational\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"keyword.operator.assignment.c,keyword.operator.comparison.c,keyword.operator.c,keyword.operator.increment.c,keyword.operator.decrement.c,keyword.operator.bitwise.shift.c,keyword.operator.assignment.cpp,keyword.operator.comparison.cpp,keyword.operator.cpp,keyword.operator.increment.cpp,keyword.operator.decrement.cpp,keyword.operator.bitwise.shift.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"punctuation.separator.delimiter\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"punctuation.separator.c,punctuation.separator.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"support.type.posix-reserved.c,support.type.posix-reserved.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"keyword.operator.sizeof.c,keyword.operator.sizeof.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"variable.parameter.function.language.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"support.type.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"keyword.operator.logical.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"variable.parameter.function.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"punctuation.definition.arguments.begin.python,punctuation.definition.arguments.end.python,punctuation.separator.arguments.python,punctuation.definition.list.begin.python,punctuation.definition.list.end.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"meta.function-call.generic.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"constant.character.format.placeholder.other.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"keyword.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"keyword.operator.assignment.compound\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"keyword.operator.assignment.compound.js,keyword.operator.assignment.compound.ts\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"entity.name.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"variable.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"variable.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"token.variable.parameter.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"import.storage.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"token.package.keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"token.package\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"meta.require\\\",\\\"support.function.any-method\\\",\\\"variable.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"entity.name.type.namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"support.class, entity.name.type.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"entity.name.class.identifier.namespace.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"entity.name.class\\\",\\\"variable.other.class.js\\\",\\\"variable.other.class.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"variable.other.class.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"entity.name.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"keyword.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"control.elements, keyword.operator.less\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"keyword.other.special-method\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"storage\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"token.storage\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"keyword.operator.expression.delete,keyword.operator.expression.in,keyword.operator.expression.of,keyword.operator.expression.instanceof,keyword.operator.new,keyword.operator.expression.typeof,keyword.operator.expression.void\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"token.storage.type.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"support.type.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"support.type.property-name.toml, support.type.property-name.table.toml, support.type.property-name.array.toml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"support.constant.property-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"support.constant.font-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"meta.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":\\\"constant.other.symbol\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"punctuation.definition.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.id\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.class.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"meta.selector\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"markup.heading punctuation.definition.heading, entity.name.section\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"keyword.other.unit\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"markup.bold,todo.bold\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"punctuation.definition.bold\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"markup.italic, punctuation.definition.italic,todo.emphasis\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"emphasis md\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"entity.name.section.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"punctuation.definition.heading.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"markup.heading.setext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"punctuation.definition.bold.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.string.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":\\\"punctuation.definition.raw.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string.begin.markdown\\\",\\\"punctuation.definition.string.end.markdown\\\",\\\"punctuation.definition.metadata.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.list.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"punctuation.definition.metadata.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"markup.underline.link.markdown,markup.underline.link.image.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"string.other.link.title.markdown,string.other.link.description.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"markup.raw.monospace.asciidoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":\\\"punctuation.definition.asciidoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"markup.list.asciidoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"markup.link.asciidoc,markup.other.url.asciidoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"string.unquoted.asciidoc,markup.other.url.asciidoc\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"string.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"punctuation.section.embedded, variable.interpolation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"punctuation.section.embedded.begin,punctuation.section.embedded.end\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"invalid.illegal.bad-ampersand.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"invalid.illegal.unrecognized-tag.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"invalid.deprecated.entity.other.attribute-name.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":\\\"source.json meta.structure.dictionary.json > string.quoted.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"source.json meta.structure.dictionary.json > string.quoted.json > punctuation.string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"source.json meta.structure.dictionary.json > value.json > string.quoted.json,source.json meta.structure.array.json > value.json > string.quoted.json,source.json meta.structure.dictionary.json > value.json > string.quoted.json > punctuation,source.json meta.structure.array.json > value.json > string.quoted.json > punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":\\\"source.json meta.structure.dictionary.json > constant.language.json,source.json meta.structure.array.json > constant.language.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"text.html.laravel-blade source.php.embedded.line.html entity.name.tag.laravel-blade\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"text.html.laravel-blade source.php.embedded.line.html support.constant.laravel-blade\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"support.other.namespace.use.php,support.other.namespace.use-as.php,entity.other.alias.php,meta.interface.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"keyword.operator.error-control.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"keyword.operator.type.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"punctuation.section.array.begin.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"punctuation.section.array.end.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"invalid.illegal.non-null-typehinted.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f44747\\\"}},{\\\"scope\\\":\\\"storage.type.php,meta.other.type.phpdoc.php,keyword.other.type.php,keyword.other.array.phpdoc.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"meta.function-call.php,meta.function-call.object.php,meta.function-call.static.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"punctuation.definition.parameters.begin.bracket.round.php,punctuation.definition.parameters.end.bracket.round.php,punctuation.separator.delimiter.php,punctuation.section.scope.begin.php,punctuation.section.scope.end.php,punctuation.terminator.expression.php,punctuation.definition.arguments.begin.bracket.round.php,punctuation.definition.arguments.end.bracket.round.php,punctuation.definition.storage-type.begin.bracket.round.php,punctuation.definition.storage-type.end.bracket.round.php,punctuation.definition.array.begin.bracket.round.php,punctuation.definition.array.end.bracket.round.php,punctuation.definition.begin.bracket.round.php,punctuation.definition.end.bracket.round.php,punctuation.definition.begin.bracket.curly.php,punctuation.definition.end.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php,punctuation.definition.section.switch-block.start.bracket.curly.php,punctuation.definition.section.switch-block.begin.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"support.constant.core.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"support.constant.ext.php,support.constant.std.php,support.constant.core.php,support.constant.parser-token.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"entity.name.goto-label.php,support.other.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"keyword.operator.logical.php,keyword.operator.bitwise.php,keyword.operator.arithmetic.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"keyword.operator.regexp.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"keyword.operator.comparison.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"keyword.operator.heredoc.php,keyword.operator.nowdoc.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"meta.function.decorator.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"support.token.decorator.python,meta.function.decorator.identifier.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"function.parameter\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"function.brace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"function.parameter.ruby, function.parameter.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"constant.language.symbol.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"constant.language.symbol.hashkey.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"rgb-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":\\\"inline-color-decoration rgb-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"less rgb-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"selector.sass\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"support.type.primitive.ts,support.type.builtin.ts,support.type.primitive.tsx,support.type.builtin.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"block.scope.end,block.scope.begin\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"storage.type.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"entity.name.variable.local.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"token.info-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":\\\"token.warn-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":\\\"token.error-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f44747\\\"}},{\\\"scope\\\":\\\"token.debug-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.template-expression.begin\\\",\\\"punctuation.definition.template-expression.end\\\",\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":[\\\"meta.template.expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":[\\\"keyword.operator.module\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":[\\\"support.type.type.flowtype\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":[\\\"support.type.primitive\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"meta.property.object\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"keyword.other.template.begin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":[\\\"keyword.other.template.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":[\\\"keyword.other.substitution.begin\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":[\\\"keyword.other.substitution.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":[\\\"keyword.operator.assignment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":[\\\"keyword.operator.assignment.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"keyword.operator.arithmetic.go\\\",\\\"keyword.operator.address.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":[\\\"keyword.operator.arithmetic.c\\\",\\\"keyword.operator.arithmetic.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":[\\\"entity.name.package.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"support.type.prelude.elm\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":[\\\"support.constant.elm\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":[\\\"punctuation.quasi.element\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":[\\\"constant.character.entity\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.pseudo-element\\\",\\\"entity.other.attribute-name.pseudo-class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":[\\\"entity.global.clojure\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"meta.symbol.clojure\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"constant.keyword.clojure\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":[\\\"meta.arguments.coffee\\\",\\\"variable.parameter.function.coffee\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"source.ini\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":[\\\"meta.scope.prerequisites.makefile\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"source.makefile\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"storage.modifier.import.groovy\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"meta.method.groovy\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":[\\\"meta.definition.variable.name.groovy\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"meta.definition.class.inherited.classes.groovy\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":[\\\"support.variable.semantic.hlsl\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"support.type.texture.hlsl\\\",\\\"support.type.sampler.hlsl\\\",\\\"support.type.object.hlsl\\\",\\\"support.type.object.rw.hlsl\\\",\\\"support.type.fx.hlsl\\\",\\\"support.type.object.hlsl\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":[\\\"text.variable\\\",\\\"text.bracketed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"support.type.swift\\\",\\\"support.type.vb.asp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"entity.name.function.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"entity.name.class.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":[\\\"constant.character.character-class.regexp.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"constant.regexp.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":[\\\"keyword.control.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":[\\\"invalid.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.quote.markdown.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.list.markdown.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7f848e\\\"}},{\\\"scope\\\":[\\\"constant.character.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":[\\\"accent.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":[\\\"wikiword.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":[\\\"constant.other.color.rgb-value.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.tag.xi\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6370\\\"}},{\\\"scope\\\":[\\\"entity.name.label.cs\\\",\\\"entity.name.scope-resolution.function.call\\\",\\\"entity.name.scope-resolution.function.definition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"entity.name.label.cs\\\",\\\"markup.heading.setext.1.markdown\\\",\\\"markup.heading.setext.2.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\" meta.brace.square\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":\\\"comment, punctuation.definition.comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#7f848e\\\"}},{\\\"scope\\\":\\\"markup.quote.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5c6370\\\"}},{\\\"scope\\\":\\\"punctuation.definition.block.sequence.item.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":[\\\"constant.language.symbol.elixir\\\",\\\"constant.language.symbol.double-quoted.elixir\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":[\\\"entity.name.variable.parameter.cs\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"entity.name.variable.field.cs\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":\\\"markup.underline\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded.begin.php\\\",\\\"punctuation.section.embedded.end.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#BE5046\\\"}},{\\\"scope\\\":[\\\"support.other.namespace.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.latex\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"variable.other.object\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"variable.other.constant.property\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"entity.other.inherited-class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":\\\"variable.other.readwrite.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"entity.name.variable.parameter.php,punctuation.separator.colon.php,constant.other.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#abb2bf\\\"}},{\\\"scope\\\":[\\\"constant.numeric.decimal.asm.x86_64\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":[\\\"support.other.parenthesis.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d19a66\\\"}},{\\\"scope\\\":[\\\"constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56b6c2\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"log.info\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":[\\\"log.warning\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e5c07b\\\"}},{\\\"scope\\\":[\\\"log.error\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":\\\"keyword.operator.expression.is\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c678dd\\\"}},{\\\"scope\\\":\\\"entity.name.label\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e06c75\\\"}},{\\\"scope\\\":[\\\"support.class.math.block.environment.latex\\\",\\\"constant.other.general.math.tex\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#61afef\\\"}},{\\\"scope\\\":[\\\"constant.character.math.tex\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98c379\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.js,entity.other.attribute-name.ts,entity.other.attribute-name.jsx,entity.other.attribute-name.tsx,variable.parameter,variable.language.super\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"comment.line.double-slash,comment.block.documentation\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.italic.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: one-light */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#FAFAFA\\\",\\\"activityBar.foreground\\\":\\\"#121417\\\",\\\"activityBarBadge.background\\\":\\\"#526FFF\\\",\\\"activityBarBadge.foreground\\\":\\\"#FFFFFF\\\",\\\"badge.background\\\":\\\"#526FFF\\\",\\\"badge.foreground\\\":\\\"#FFFFFF\\\",\\\"button.background\\\":\\\"#5871EF\\\",\\\"button.foreground\\\":\\\"#FFFFFF\\\",\\\"button.hoverBackground\\\":\\\"#6B83ED\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#00809B33\\\",\\\"dropdown.background\\\":\\\"#FFFFFF\\\",\\\"dropdown.border\\\":\\\"#DBDBDC\\\",\\\"editor.background\\\":\\\"#FAFAFA\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#526FFF33\\\",\\\"editor.foreground\\\":\\\"#383A42\\\",\\\"editor.lineHighlightBackground\\\":\\\"#383A420C\\\",\\\"editor.selectionBackground\\\":\\\"#E5E5E6\\\",\\\"editorCursor.foreground\\\":\\\"#526FFF\\\",\\\"editorGroup.background\\\":\\\"#EAEAEB\\\",\\\"editorGroup.border\\\":\\\"#DBDBDC\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#EAEAEB\\\",\\\"editorHoverWidget.background\\\":\\\"#EAEAEB\\\",\\\"editorHoverWidget.border\\\":\\\"#DBDBDC\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#626772\\\",\\\"editorIndentGuide.background\\\":\\\"#383A4233\\\",\\\"editorInlayHint.background\\\":\\\"#F5F5F5\\\",\\\"editorInlayHint.foreground\\\":\\\"#AFB2BB\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#383A42\\\",\\\"editorLineNumber.foreground\\\":\\\"#9D9D9F\\\",\\\"editorRuler.foreground\\\":\\\"#383A4233\\\",\\\"editorSuggestWidget.background\\\":\\\"#EAEAEB\\\",\\\"editorSuggestWidget.border\\\":\\\"#DBDBDC\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#FFFFFF\\\",\\\"editorWhitespace.foreground\\\":\\\"#383A4233\\\",\\\"editorWidget.background\\\":\\\"#EAEAEB\\\",\\\"editorWidget.border\\\":\\\"#E5E5E6\\\",\\\"extensionButton.prominentBackground\\\":\\\"#3BBA54\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#4CC263\\\",\\\"focusBorder\\\":\\\"#526FFF\\\",\\\"input.background\\\":\\\"#FFFFFF\\\",\\\"input.border\\\":\\\"#DBDBDC\\\",\\\"list.activeSelectionBackground\\\":\\\"#DBDBDC\\\",\\\"list.activeSelectionForeground\\\":\\\"#232324\\\",\\\"list.focusBackground\\\":\\\"#DBDBDC\\\",\\\"list.highlightForeground\\\":\\\"#121417\\\",\\\"list.hoverBackground\\\":\\\"#DBDBDC66\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#DBDBDC\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#232324\\\",\\\"notebook.cellEditorBackground\\\":\\\"#F5F5F5\\\",\\\"notification.background\\\":\\\"#333333\\\",\\\"peekView.border\\\":\\\"#526FFF\\\",\\\"peekViewEditor.background\\\":\\\"#FFFFFF\\\",\\\"peekViewResult.background\\\":\\\"#EAEAEB\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#DBDBDC\\\",\\\"peekViewTitle.background\\\":\\\"#FFFFFF\\\",\\\"pickerGroup.border\\\":\\\"#526FFF\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#747D9180\\\",\\\"scrollbarSlider.background\\\":\\\"#4E566680\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#5A637580\\\",\\\"sideBar.background\\\":\\\"#EAEAEB\\\",\\\"sideBarSectionHeader.background\\\":\\\"#FAFAFA\\\",\\\"statusBar.background\\\":\\\"#EAEAEB\\\",\\\"statusBar.debuggingForeground\\\":\\\"#FFFFFF\\\",\\\"statusBar.foreground\\\":\\\"#424243\\\",\\\"statusBar.noFolderBackground\\\":\\\"#EAEAEB\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#DBDBDC\\\",\\\"tab.activeBackground\\\":\\\"#FAFAFA\\\",\\\"tab.activeForeground\\\":\\\"#121417\\\",\\\"tab.border\\\":\\\"#DBDBDC\\\",\\\"tab.inactiveBackground\\\":\\\"#EAEAEB\\\",\\\"titleBar.activeBackground\\\":\\\"#EAEAEB\\\",\\\"titleBar.activeForeground\\\":\\\"#424243\\\",\\\"titleBar.inactiveBackground\\\":\\\"#EAEAEB\\\",\\\"titleBar.inactiveForeground\\\":\\\"#424243\\\"},\\\"displayName\\\":\\\"One Light\\\",\\\"name\\\":\\\"one-light\\\",\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#A0A1A7\\\"}},{\\\"scope\\\":[\\\"comment markup.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A1A7\\\"}},{\\\"scope\\\":[\\\"entity.name.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"entity.other.inherited-class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"keyword\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"keyword.other.special-method\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"keyword.other.unit\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"storage\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"storage.type.annotation\\\",\\\"storage.type.primitive\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"storage.modifier.package\\\",\\\"storage.modifier.import\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"constant.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"constant.other.color\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"constant.other.symbol\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"variable.interpolation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CA1243\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":[\\\"string > source\\\",\\\"string embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"string.regexp source.ruby.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A1A7\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.method-parameters\\\",\\\"punctuation.definition.function-parameters\\\",\\\"punctuation.definition.parameters\\\",\\\"punctuation.definition.separator\\\",\\\"punctuation.definition.seperator\\\",\\\"punctuation.definition.array\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.heading\\\",\\\"punctuation.definition.identity\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.bold\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CA1243\\\"}},{\\\"scope\\\":[\\\"punctuation.section.method\\\",\\\"punctuation.section.class\\\",\\\"punctuation.section.inner-class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"support.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"support.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"support.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"support.function.any-method\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"entity.name.class\\\",\\\"entity.name.type.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"entity.name.section\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.id\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"meta.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"meta.class.body\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"meta.method-call\\\",\\\"meta.method\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"meta.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"meta.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"meta.require\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"meta.selector\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"meta.separator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"meta.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"underline\\\"],\\\"settings\\\":{\\\"text-decoration\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"none\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"invalid.deprecated\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#F2A60D\\\",\\\"foreground\\\":\\\"#000000\\\"}},{\\\"scope\\\":[\\\"invalid.illegal\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#FF1414\\\",\\\"foreground\\\":\\\"white\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"markup.heading punctuation.definition.heading\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"markup.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"markup.raw\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":[\\\"source.c keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"source.cpp keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"source.cs keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"source.css property-name\\\",\\\"source.css property-value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#696C77\\\"}},{\\\"scope\\\":[\\\"source.css property-name.support\\\",\\\"source.css property-value.support\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"source.elixir source.embedded.source\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"source.elixir constant.language\\\",\\\"source.elixir constant.numeric\\\",\\\"source.elixir constant.definition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"source.elixir variable.definition\\\",\\\"source.elixir variable.anonymous\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"source.elixir parameter.variable.function\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"source.elixir quoted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":[\\\"source.elixir keyword.special-method\\\",\\\"source.elixir embedded.section\\\",\\\"source.elixir embedded.source.empty\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"source.elixir readwrite.module punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"source.elixir regexp.section\\\",\\\"source.elixir regexp.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CA1243\\\"}},{\\\"scope\\\":[\\\"source.elixir separator\\\",\\\"source.elixir keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"source.elixir variable.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"source.elixir array\\\",\\\"source.elixir scope\\\",\\\"source.elixir section\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#696C77\\\"}},{\\\"scope\\\":[\\\"source.gfm markup\\\"],\\\"settings\\\":{\\\"-webkit-font-smoothing\\\":\\\"auto\\\"}},{\\\"scope\\\":[\\\"source.gfm link entity\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"source.go storage.type.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"source.ini keyword.other.definition.ini\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"source.java storage.modifier.import\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"source.java storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"source.java keyword.operator.instanceof\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"source.java-properties meta.key-pair\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"source.java-properties meta.key-pair > punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"source.js keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"source.js keyword.operator.delete\\\",\\\"source.js keyword.operator.in\\\",\\\"source.js keyword.operator.of\\\",\\\"source.js keyword.operator.instanceof\\\",\\\"source.js keyword.operator.new\\\",\\\"source.js keyword.operator.typeof\\\",\\\"source.js keyword.operator.void\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"source.ts keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"source.flow keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json > string.quoted.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json > string.quoted.json > punctuation.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json > value.json > string.quoted.json\\\",\\\"source.json meta.structure.array.json > value.json > string.quoted.json\\\",\\\"source.json meta.structure.dictionary.json > value.json > string.quoted.json > punctuation\\\",\\\"source.json meta.structure.array.json > value.json > string.quoted.json > punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json > constant.language.json\\\",\\\"source.json meta.structure.array.json > constant.language.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"ng.interpolation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"ng.interpolation.begin\\\",\\\"ng.interpolation.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"ng.interpolation function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"ng.interpolation function.begin\\\",\\\"ng.interpolation function.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":[\\\"ng.interpolation bool\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"ng.interpolation bracket\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"ng.pipe\\\",\\\"ng.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"ng.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"ng.attribute-with-value attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"ng.attribute-with-value string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"ng.attribute-with-value string.begin\\\",\\\"ng.attribute-with-value string.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"source.ruby constant.other.symbol > punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"inherit\\\"}},{\\\"scope\\\":[\\\"source.php class.bracket\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"source.python keyword.operator.logical.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"source.python variable.parameter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":\\\"customrule\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"support.type.property-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"string.quoted.double punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":\\\"support.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":\\\"support.type.property-name.json punctuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"punctuation.separator.key-value.ts\\\",\\\"punctuation.separator.key-value.js\\\",\\\"punctuation.separator.key-value.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"source.js.embedded.html keyword.operator\\\",\\\"source.ts.embedded.html keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"variable.other.readwrite.js\\\",\\\"variable.other.readwrite.ts\\\",\\\"variable.other.readwrite.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"support.variable.dom.js\\\",\\\"support.variable.dom.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"support.variable.property.dom.js\\\",\\\"support.variable.property.dom.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"meta.template.expression.js punctuation.definition\\\",\\\"meta.template.expression.ts punctuation.definition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CA1243\\\"}},{\\\"scope\\\":[\\\"source.ts punctuation.definition.typeparameters\\\",\\\"source.js punctuation.definition.typeparameters\\\",\\\"source.tsx punctuation.definition.typeparameters\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"source.ts punctuation.definition.block\\\",\\\"source.js punctuation.definition.block\\\",\\\"source.tsx punctuation.definition.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"source.ts punctuation.separator.comma\\\",\\\"source.js punctuation.separator.comma\\\",\\\"source.tsx punctuation.separator.comma\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"support.variable.property.js\\\",\\\"support.variable.property.ts\\\",\\\"support.variable.property.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"keyword.control.default.js\\\",\\\"keyword.control.default.ts\\\",\\\"keyword.control.default.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"keyword.operator.expression.instanceof.js\\\",\\\"keyword.operator.expression.instanceof.ts\\\",\\\"keyword.operator.expression.instanceof.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"keyword.operator.expression.of.js\\\",\\\"keyword.operator.expression.of.ts\\\",\\\"keyword.operator.expression.of.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"meta.brace.round.js\\\",\\\"meta.array-binding-pattern-variable.js\\\",\\\"meta.brace.square.js\\\",\\\"meta.brace.round.ts\\\",\\\"meta.array-binding-pattern-variable.ts\\\",\\\"meta.brace.square.ts\\\",\\\"meta.brace.round.tsx\\\",\\\"meta.array-binding-pattern-variable.tsx\\\",\\\"meta.brace.square.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"source.js punctuation.accessor\\\",\\\"source.ts punctuation.accessor\\\",\\\"source.tsx punctuation.accessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"punctuation.terminator.statement.js\\\",\\\"punctuation.terminator.statement.ts\\\",\\\"punctuation.terminator.statement.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"meta.array-binding-pattern-variable.js variable.other.readwrite.js\\\",\\\"meta.array-binding-pattern-variable.ts variable.other.readwrite.ts\\\",\\\"meta.array-binding-pattern-variable.tsx variable.other.readwrite.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"source.js support.variable\\\",\\\"source.ts support.variable\\\",\\\"source.tsx support.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"variable.other.constant.property.js\\\",\\\"variable.other.constant.property.ts\\\",\\\"variable.other.constant.property.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"keyword.operator.new.ts\\\",\\\"keyword.operator.new.j\\\",\\\"keyword.operator.new.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"source.ts keyword.operator\\\",\\\"source.tsx keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"punctuation.separator.parameter.js\\\",\\\"punctuation.separator.parameter.ts\\\",\\\"punctuation.separator.parameter.tsx \\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"constant.language.import-export-all.js\\\",\\\"constant.language.import-export-all.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"constant.language.import-export-all.jsx\\\",\\\"constant.language.import-export-all.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"keyword.control.as.js\\\",\\\"keyword.control.as.ts\\\",\\\"keyword.control.as.jsx\\\",\\\"keyword.control.as.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"variable.other.readwrite.alias.js\\\",\\\"variable.other.readwrite.alias.ts\\\",\\\"variable.other.readwrite.alias.jsx\\\",\\\"variable.other.readwrite.alias.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"variable.other.constant.js\\\",\\\"variable.other.constant.ts\\\",\\\"variable.other.constant.jsx\\\",\\\"variable.other.constant.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"meta.export.default.js variable.other.readwrite.js\\\",\\\"meta.export.default.ts variable.other.readwrite.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"source.js meta.template.expression.js punctuation.accessor\\\",\\\"source.ts meta.template.expression.ts punctuation.accessor\\\",\\\"source.tsx meta.template.expression.tsx punctuation.accessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":[\\\"source.js meta.import-equals.external.js keyword.operator\\\",\\\"source.jsx meta.import-equals.external.jsx keyword.operator\\\",\\\"source.ts meta.import-equals.external.ts keyword.operator\\\",\\\"source.tsx meta.import-equals.external.tsx keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"entity.name.type.module.js,entity.name.type.module.ts,entity.name.type.module.jsx,entity.name.type.module.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":\\\"meta.class.js,meta.class.ts,meta.class.jsx,meta.class.tsx\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"meta.definition.property.js variable\\\",\\\"meta.definition.property.ts variable\\\",\\\"meta.definition.property.jsx variable\\\",\\\"meta.definition.property.tsx variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"meta.type.parameters.js support.type\\\",\\\"meta.type.parameters.jsx support.type\\\",\\\"meta.type.parameters.ts support.type\\\",\\\"meta.type.parameters.tsx support.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"source.js meta.tag.js keyword.operator\\\",\\\"source.jsx meta.tag.jsx keyword.operator\\\",\\\"source.ts meta.tag.ts keyword.operator\\\",\\\"source.tsx meta.tag.tsx keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"meta.tag.js punctuation.section.embedded\\\",\\\"meta.tag.jsx punctuation.section.embedded\\\",\\\"meta.tag.ts punctuation.section.embedded\\\",\\\"meta.tag.tsx punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"meta.array.literal.js variable\\\",\\\"meta.array.literal.jsx variable\\\",\\\"meta.array.literal.ts variable\\\",\\\"meta.array.literal.tsx variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":[\\\"support.type.object.module.js\\\",\\\"support.type.object.module.jsx\\\",\\\"support.type.object.module.ts\\\",\\\"support.type.object.module.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":[\\\"constant.language.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"variable.other.constant.object.js\\\",\\\"variable.other.constant.object.jsx\\\",\\\"variable.other.constant.object.ts\\\",\\\"variable.other.constant.object.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":[\\\"storage.type.property.js\\\",\\\"storage.type.property.jsx\\\",\\\"storage.type.property.ts\\\",\\\"storage.type.property.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":[\\\"meta.template.expression.js string.quoted punctuation.definition\\\",\\\"meta.template.expression.jsx string.quoted punctuation.definition\\\",\\\"meta.template.expression.ts string.quoted punctuation.definition\\\",\\\"meta.template.expression.tsx string.quoted punctuation.definition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":[\\\"meta.template.expression.js string.template punctuation.definition.string.template\\\",\\\"meta.template.expression.jsx string.template punctuation.definition.string.template\\\",\\\"meta.template.expression.ts string.template punctuation.definition.string.template\\\",\\\"meta.template.expression.tsx string.template punctuation.definition.string.template\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":[\\\"keyword.operator.expression.in.js\\\",\\\"keyword.operator.expression.in.jsx\\\",\\\"keyword.operator.expression.in.ts\\\",\\\"keyword.operator.expression.in.tsx\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"variable.other.object.js\\\",\\\"variable.other.object.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":[\\\"meta.object-literal.key.js\\\",\\\"meta.object-literal.key.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":\\\"source.python constant.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"source.python constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":\\\"constant.character.format.placeholder.other.python storage\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":\\\"support.variable.magic.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":\\\"meta.function.parameters.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":\\\"punctuation.separator.annotation.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"punctuation.separator.parameters.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"entity.name.variable.field.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":\\\"source.cs keyword.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"variable.other.readwrite.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"variable.other.object.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"variable.other.object.property.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"entity.name.variable.property.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":\\\"storage.type.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":\\\"keyword.other.unsafe.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":\\\"entity.name.type.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":\\\"storage.modifier.lifetime.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"entity.name.lifetime.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":\\\"storage.type.core.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":\\\"meta.attribute.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":\\\"storage.class.std.rust\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0184BC\\\"}},{\\\"scope\\\":\\\"markup.raw.block.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"punctuation.definition.variable.shell\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":\\\"support.constant.property-value.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"punctuation.definition.constant.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":\\\"punctuation.separator.key-value.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":\\\"punctuation.definition.constant.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":\\\"meta.property-list.scss punctuation.separator.key-value.scss\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"storage.type.primitive.array.java\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C18401\\\"}},{\\\"scope\\\":\\\"entity.name.section.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":\\\"punctuation.definition.heading.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":\\\"markup.heading.setext\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"punctuation.definition.bold.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":\\\"beginning.punctuation.definition.list.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":\\\"markup.quote.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#A0A1A7\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string.begin.markdown\\\",\\\"punctuation.definition.string.end.markdown\\\",\\\"punctuation.definition.metadata.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}},{\\\"scope\\\":\\\"punctuation.definition.metadata.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"markup.underline.link.markdown\\\",\\\"markup.underline.link.image.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A626A4\\\"}},{\\\"scope\\\":[\\\"string.other.link.title.markdown\\\",\\\"string.other.link.description.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4078F2\\\"}},{\\\"scope\\\":\\\"punctuation.separator.variable.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":\\\"variable.other.constant.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#986801\\\"}},{\\\"scope\\\":\\\"keyword.operator.other.ruby\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#50A14F\\\"}},{\\\"scope\\\":\\\"punctuation.definition.variable.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#E45649\\\"}},{\\\"scope\\\":\\\"meta.class.php\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#383A42\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: plastic */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#1085FF\\\",\\\"activityBar.background\\\":\\\"#21252B\\\",\\\"activityBar.border\\\":\\\"#0D1117\\\",\\\"activityBar.foreground\\\":\\\"#C6CCD7\\\",\\\"activityBar.inactiveForeground\\\":\\\"#5F6672\\\",\\\"activityBarBadge.background\\\":\\\"#E06C75\\\",\\\"activityBarBadge.foreground\\\":\\\"#ffffff\\\",\\\"breadcrumb.focusForeground\\\":\\\"#C6CCD7\\\",\\\"breadcrumb.foreground\\\":\\\"#5F6672\\\",\\\"button.background\\\":\\\"#E06C75\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"button.hoverBackground\\\":\\\"#E48189\\\",\\\"button.secondaryBackground\\\":\\\"#0D1117\\\",\\\"button.secondaryForeground\\\":\\\"#ffffff\\\",\\\"checkbox.background\\\":\\\"#61AFEF\\\",\\\"checkbox.foreground\\\":\\\"#ffffff\\\",\\\"contrastBorder\\\":\\\"#0D1117\\\",\\\"debugToolBar.background\\\":\\\"#181A1F\\\",\\\"diffEditor.border\\\":\\\"#0D1117\\\",\\\"diffEditor.diagonalFill\\\":\\\"#0D1117\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#CBF6AC0D\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#CBF6AC1A\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#FF9FA80D\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#FF9FA81A\\\",\\\"dropdown.background\\\":\\\"#181A1F\\\",\\\"dropdown.border\\\":\\\"#0D1117\\\",\\\"editor.background\\\":\\\"#21252B\\\",\\\"editor.findMatchBackground\\\":\\\"#00000000\\\",\\\"editor.findMatchBorder\\\":\\\"#1085FF\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#00000000\\\",\\\"editor.findMatchHighlightBorder\\\":\\\"#C6CCD7\\\",\\\"editor.foreground\\\":\\\"#A9B2C3\\\",\\\"editor.lineHighlightBackground\\\":\\\"#A9B2C31A\\\",\\\"editor.lineHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.linkedEditingBackground\\\":\\\"#0D1117\\\",\\\"editor.rangeHighlightBorder\\\":\\\"#C6CCD7\\\",\\\"editor.selectionBackground\\\":\\\"#A9B2C333\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#A9B2C31A\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#C6CCD7\\\",\\\"editor.wordHighlightBackground\\\":\\\"#00000000\\\",\\\"editor.wordHighlightBorder\\\":\\\"#1085FF\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#00000000\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#1085FF\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#A9B2C3\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#61AFEF\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#E5C07B\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#E06C75\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#98C379\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#B57EDC\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#D74E42\\\",\\\"editorBracketMatch.background\\\":\\\"#00000000\\\",\\\"editorBracketMatch.border\\\":\\\"#1085FF\\\",\\\"editorCursor.foreground\\\":\\\"#A9B2C3\\\",\\\"editorError.foreground\\\":\\\"#D74E42\\\",\\\"editorGroup.border\\\":\\\"#0D1117\\\",\\\"editorGroup.emptyBackground\\\":\\\"#181A1F\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#181A1F\\\",\\\"editorGutter.addedBackground\\\":\\\"#98C379\\\",\\\"editorGutter.deletedBackground\\\":\\\"#E06C75\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#D19A66\\\",\\\"editorHoverWidget.background\\\":\\\"#181A1F\\\",\\\"editorHoverWidget.border\\\":\\\"#1085FF\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#A9B2C333\\\",\\\"editorIndentGuide.background\\\":\\\"#0D1117\\\",\\\"editorInfo.foreground\\\":\\\"#1085FF\\\",\\\"editorInlayHint.background\\\":\\\"#00000000\\\",\\\"editorInlayHint.foreground\\\":\\\"#5F6672\\\",\\\"editorLightBulb.foreground\\\":\\\"#E9D16C\\\",\\\"editorLightBulbAutoFix.foreground\\\":\\\"#1085FF\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#C6CCD7\\\",\\\"editorLineNumber.foreground\\\":\\\"#5F6672\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#98C379\\\",\\\"editorOverviewRuler.border\\\":\\\"#0D1117\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#E06C75\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#D74E42\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#1085FF\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#1085FF\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#D19A66\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#E9D16C\\\",\\\"editorRuler.foreground\\\":\\\"#0D1117\\\",\\\"editorStickyScroll.background\\\":\\\"#181A1F\\\",\\\"editorStickyScrollHover.background\\\":\\\"#21252B\\\",\\\"editorSuggestWidget.background\\\":\\\"#181A1F\\\",\\\"editorSuggestWidget.border\\\":\\\"#1085FF\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#A9B2C31A\\\",\\\"editorWarning.foreground\\\":\\\"#E9D16C\\\",\\\"editorWhitespace.foreground\\\":\\\"#A9B2C31A\\\",\\\"editorWidget.background\\\":\\\"#181A1F\\\",\\\"errorForeground\\\":\\\"#D74E42\\\",\\\"focusBorder\\\":\\\"#1085FF\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#E06C75\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#5F6672\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#D19A66\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#98C379\\\",\\\"input.background\\\":\\\"#0D1117\\\",\\\"inputOption.activeBorder\\\":\\\"#1085FF\\\",\\\"inputValidation.errorBackground\\\":\\\"#D74E42\\\",\\\"inputValidation.errorBorder\\\":\\\"#D74E42\\\",\\\"inputValidation.infoBackground\\\":\\\"#1085FF\\\",\\\"inputValidation.infoBorder\\\":\\\"#1085FF\\\",\\\"inputValidation.infoForeground\\\":\\\"#0D1117\\\",\\\"inputValidation.warningBackground\\\":\\\"#E9D16C\\\",\\\"inputValidation.warningBorder\\\":\\\"#E9D16C\\\",\\\"inputValidation.warningForeground\\\":\\\"#0D1117\\\",\\\"list.activeSelectionBackground\\\":\\\"#A9B2C333\\\",\\\"list.activeSelectionForeground\\\":\\\"#ffffff\\\",\\\"list.errorForeground\\\":\\\"#D74E42\\\",\\\"list.focusBackground\\\":\\\"#A9B2C333\\\",\\\"list.hoverBackground\\\":\\\"#A9B2C31A\\\",\\\"list.inactiveFocusOutline\\\":\\\"#5F6672\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#A9B2C333\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#C6CCD7\\\",\\\"list.warningForeground\\\":\\\"#E9D16C\\\",\\\"minimap.findMatchHighlight\\\":\\\"#1085FF\\\",\\\"minimap.selectionHighlight\\\":\\\"#C6CCD7\\\",\\\"minimapGutter.addedBackground\\\":\\\"#98C379\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#E06C75\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#D19A66\\\",\\\"notificationCenter.border\\\":\\\"#0D1117\\\",\\\"notificationCenterHeader.background\\\":\\\"#181A1F\\\",\\\"notificationToast.border\\\":\\\"#0D1117\\\",\\\"notifications.background\\\":\\\"#181A1F\\\",\\\"notifications.border\\\":\\\"#0D1117\\\",\\\"panel.background\\\":\\\"#181A1F\\\",\\\"panel.border\\\":\\\"#0D1117\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#5F6672\\\",\\\"peekView.border\\\":\\\"#1085FF\\\",\\\"peekViewEditor.background\\\":\\\"#181A1F\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#A9B2C333\\\",\\\"peekViewResult.background\\\":\\\"#181A1F\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#A9B2C333\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#A9B2C31A\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#C6CCD7\\\",\\\"peekViewTitle.background\\\":\\\"#181A1F\\\",\\\"sash.hoverBorder\\\":\\\"#A9B2C333\\\",\\\"scrollbar.shadow\\\":\\\"#00000000\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#A9B2C333\\\",\\\"scrollbarSlider.background\\\":\\\"#A9B2C31A\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#A9B2C333\\\",\\\"sideBar.background\\\":\\\"#181A1F\\\",\\\"sideBar.border\\\":\\\"#0D1117\\\",\\\"sideBar.foreground\\\":\\\"#C6CCD7\\\",\\\"sideBarSectionHeader.background\\\":\\\"#21252B\\\",\\\"statusBar.background\\\":\\\"#21252B\\\",\\\"statusBar.border\\\":\\\"#0D1117\\\",\\\"statusBar.debuggingBackground\\\":\\\"#21252B\\\",\\\"statusBar.debuggingBorder\\\":\\\"#56B6C2\\\",\\\"statusBar.debuggingForeground\\\":\\\"#A9B2C3\\\",\\\"statusBar.focusBorder\\\":\\\"#A9B2C3\\\",\\\"statusBar.foreground\\\":\\\"#A9B2C3\\\",\\\"statusBar.noFolderBackground\\\":\\\"#181A1F\\\",\\\"statusBarItem.activeBackground\\\":\\\"#0D1117\\\",\\\"statusBarItem.errorBackground\\\":\\\"#21252B\\\",\\\"statusBarItem.errorForeground\\\":\\\"#D74E42\\\",\\\"statusBarItem.focusBorder\\\":\\\"#A9B2C3\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#181A1F\\\",\\\"statusBarItem.hoverForeground\\\":\\\"#A9B2C3\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#21252B\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#B57EDC\\\",\\\"statusBarItem.warningBackground\\\":\\\"#21252B\\\",\\\"statusBarItem.warningForeground\\\":\\\"#E9D16C\\\",\\\"tab.activeBackground\\\":\\\"#21252B\\\",\\\"tab.activeBorderTop\\\":\\\"#1085FF\\\",\\\"tab.activeForeground\\\":\\\"#C6CCD7\\\",\\\"tab.border\\\":\\\"#0D1117\\\",\\\"tab.inactiveBackground\\\":\\\"#181A1F\\\",\\\"tab.inactiveForeground\\\":\\\"#5F6672\\\",\\\"tab.lastPinnedBorder\\\":\\\"#A9B2C333\\\",\\\"terminal.ansiBlack\\\":\\\"#5F6672\\\",\\\"terminal.ansiBlue\\\":\\\"#61AFEF\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#5F6672\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#61AFEF\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#56B6C2\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#98C379\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#B57EDC\\\",\\\"terminal.ansiBrightRed\\\":\\\"#E06C75\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#A9B2C3\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#E5C07B\\\",\\\"terminal.ansiCyan\\\":\\\"#56B6C2\\\",\\\"terminal.ansiGreen\\\":\\\"#98C379\\\",\\\"terminal.ansiMagenta\\\":\\\"#B57EDC\\\",\\\"terminal.ansiRed\\\":\\\"#E06C75\\\",\\\"terminal.ansiWhite\\\":\\\"#A9B2C3\\\",\\\"terminal.ansiYellow\\\":\\\"#E5C07B\\\",\\\"terminal.foreground\\\":\\\"#A9B2C3\\\",\\\"titleBar.activeBackground\\\":\\\"#21252B\\\",\\\"titleBar.activeForeground\\\":\\\"#C6CCD7\\\",\\\"titleBar.border\\\":\\\"#0D1117\\\",\\\"titleBar.inactiveBackground\\\":\\\"#21252B\\\",\\\"titleBar.inactiveForeground\\\":\\\"#5F6672\\\",\\\"toolbar.hoverBackground\\\":\\\"#A9B2C333\\\",\\\"widget.shadow\\\":\\\"#00000000\\\"},\\\"displayName\\\":\\\"Plastic\\\",\\\"name\\\":\\\"plastic\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"source.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5F6672\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"support.function\\\",\\\"meta.diff.range\\\",\\\"punctuation.definition.range.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B57EDC\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"punctuation.definition.keyword\\\",\\\"variable.language\\\",\\\"markup.deleted\\\",\\\"meta.diff.header.from-file\\\",\\\"punctuation.definition.deleted\\\",\\\"punctuation.definition.from-file.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E06C75\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"support.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56B6C2\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"support.class\\\",\\\"entity.name.namespace\\\",\\\"meta.diff.header\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#61AFEF\\\"}},{\\\"scope\\\":[\\\"markup.inline.raw.string\\\",\\\"string\\\",\\\"markup.inserted\\\",\\\"punctuation.definition.inserted\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.to-file.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#98C379\\\"}},{\\\"scope\\\":[\\\"entity.name.section\\\",\\\"entity.name.tag\\\",\\\"entity.name.type\\\",\\\"support.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#E5C07B\\\"}},{\\\"scope\\\":[\\\"support.type.property-name\\\",\\\"support.variable\\\",\\\"variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C6CCD7\\\"}},{\\\"scope\\\":[\\\"entity.other\\\",\\\"punctuation.definition.entity\\\",\\\"support.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D19A66\\\"}},{\\\"scope\\\":[\\\"meta.brace\\\",\\\"punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A9B2C3\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"punctuation.definition.bold\\\",\\\"entity.other.attribute-name.id\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"markup.italic\\\",\\\"punctuation.definition.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: poimandres */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#a6accd\\\",\\\"activityBar.background\\\":\\\"#1b1e28\\\",\\\"activityBar.dropBorder\\\":\\\"#a6accd\\\",\\\"activityBar.foreground\\\":\\\"#a6accd\\\",\\\"activityBar.inactiveForeground\\\":\\\"#a6accd66\\\",\\\"activityBarBadge.background\\\":\\\"#303340\\\",\\\"activityBarBadge.foreground\\\":\\\"#e4f0fb\\\",\\\"badge.background\\\":\\\"#303340\\\",\\\"badge.foreground\\\":\\\"#e4f0fb\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#e4f0fb\\\",\\\"breadcrumb.background\\\":\\\"#00000000\\\",\\\"breadcrumb.focusForeground\\\":\\\"#e4f0fb\\\",\\\"breadcrumb.foreground\\\":\\\"#767c9dcc\\\",\\\"breadcrumbPicker.background\\\":\\\"#1b1e28\\\",\\\"button.background\\\":\\\"#303340\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"button.hoverBackground\\\":\\\"#50647750\\\",\\\"button.secondaryBackground\\\":\\\"#a6accd\\\",\\\"button.secondaryForeground\\\":\\\"#ffffff\\\",\\\"button.secondaryHoverBackground\\\":\\\"#a6accd\\\",\\\"charts.blue\\\":\\\"#ADD7FF\\\",\\\"charts.foreground\\\":\\\"#a6accd\\\",\\\"charts.green\\\":\\\"#5DE4c7\\\",\\\"charts.lines\\\":\\\"#a6accd80\\\",\\\"charts.orange\\\":\\\"#89ddff\\\",\\\"charts.purple\\\":\\\"#f087bd\\\",\\\"charts.red\\\":\\\"#d0679d\\\",\\\"charts.yellow\\\":\\\"#fffac2\\\",\\\"checkbox.background\\\":\\\"#1b1e28\\\",\\\"checkbox.border\\\":\\\"#ffffff10\\\",\\\"checkbox.foreground\\\":\\\"#e4f0fb\\\",\\\"debugConsole.errorForeground\\\":\\\"#d0679d\\\",\\\"debugConsole.infoForeground\\\":\\\"#ADD7FF\\\",\\\"debugConsole.sourceForeground\\\":\\\"#a6accd\\\",\\\"debugConsole.warningForeground\\\":\\\"#fffac2\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#a6accd\\\",\\\"debugExceptionWidget.background\\\":\\\"#d0679d\\\",\\\"debugExceptionWidget.border\\\":\\\"#d0679d\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#fffac2\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#7390AA\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#d0679d\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#5fb3a1\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#7390AA\\\",\\\"debugIcon.continueForeground\\\":\\\"#ADD7FF\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#d0679d\\\",\\\"debugIcon.pauseForeground\\\":\\\"#ADD7FF\\\",\\\"debugIcon.restartForeground\\\":\\\"#5fb3a1\\\",\\\"debugIcon.startForeground\\\":\\\"#5fb3a1\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#ADD7FF\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#ADD7FF\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#ADD7FF\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#ADD7FF\\\",\\\"debugIcon.stopForeground\\\":\\\"#d0679d\\\",\\\"debugTokenExpression.boolean\\\":\\\"#89ddff\\\",\\\"debugTokenExpression.error\\\":\\\"#d0679d\\\",\\\"debugTokenExpression.name\\\":\\\"#e4f0fb\\\",\\\"debugTokenExpression.number\\\":\\\"#5fb3a1\\\",\\\"debugTokenExpression.string\\\":\\\"#89ddff\\\",\\\"debugTokenExpression.value\\\":\\\"#a6accd99\\\",\\\"debugToolBar.background\\\":\\\"#303340\\\",\\\"debugView.exceptionLabelBackground\\\":\\\"#d0679d\\\",\\\"debugView.exceptionLabelForeground\\\":\\\"#e4f0fb\\\",\\\"debugView.stateLabelBackground\\\":\\\"#303340\\\",\\\"debugView.stateLabelForeground\\\":\\\"#a6accd\\\",\\\"debugView.valueChangedHighlight\\\":\\\"#89ddff\\\",\\\"descriptionForeground\\\":\\\"#a6accdb3\\\",\\\"diffEditor.diagonalFill\\\":\\\"#a6accd33\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#50647715\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#d0679d20\\\",\\\"dropdown.background\\\":\\\"#1b1e28\\\",\\\"dropdown.border\\\":\\\"#ffffff10\\\",\\\"dropdown.foreground\\\":\\\"#e4f0fb\\\",\\\"editor.background\\\":\\\"#1b1e28\\\",\\\"editor.findMatchBackground\\\":\\\"#ADD7FF40\\\",\\\"editor.findMatchBorder\\\":\\\"#ADD7FF\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#ADD7FF40\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#ADD7FF40\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#7abd7a4d\\\",\\\"editor.foldBackground\\\":\\\"#717cb40b\\\",\\\"editor.foreground\\\":\\\"#a6accd\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#264f7840\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#717cb425\\\",\\\"editor.lineHighlightBackground\\\":\\\"#717cb425\\\",\\\"editor.lineHighlightBorder\\\":\\\"#00000000\\\",\\\"editor.linkedEditingBackground\\\":\\\"#d0679d4d\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#ffffff0b\\\",\\\"editor.selectionBackground\\\":\\\"#717cb425\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#00000000\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#ADD7FF80\\\",\\\"editor.snippetFinalTabstopHighlightBorder\\\":\\\"#525252\\\",\\\"editor.snippetTabstopHighlightBackground\\\":\\\"#7c7c7c4d\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#ffff0033\\\",\\\"editor.symbolHighlightBackground\\\":\\\"#89ddff60\\\",\\\"editor.wordHighlightBackground\\\":\\\"#ADD7FF20\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#ADD7FF40\\\",\\\"editorBracketMatch.background\\\":\\\"#00000000\\\",\\\"editorBracketMatch.border\\\":\\\"#e4f0fb40\\\",\\\"editorCodeLens.foreground\\\":\\\"#a6accd\\\",\\\"editorCursor.foreground\\\":\\\"#a6accd\\\",\\\"editorError.foreground\\\":\\\"#d0679d\\\",\\\"editorGroup.border\\\":\\\"#00000030\\\",\\\"editorGroup.dropBackground\\\":\\\"#7390AA80\\\",\\\"editorGroupHeader.noTabsBackground\\\":\\\"#1b1e28\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#1b1e28\\\",\\\"editorGutter.addedBackground\\\":\\\"#5fb3a140\\\",\\\"editorGutter.background\\\":\\\"#1b1e28\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#a6accd\\\",\\\"editorGutter.deletedBackground\\\":\\\"#d0679d40\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#a6accd\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#ADD7FF20\\\",\\\"editorHint.foreground\\\":\\\"#7390AAb3\\\",\\\"editorHoverWidget.background\\\":\\\"#1b1e28\\\",\\\"editorHoverWidget.border\\\":\\\"#ffffff10\\\",\\\"editorHoverWidget.foreground\\\":\\\"#a6accd\\\",\\\"editorHoverWidget.statusBarBackground\\\":\\\"#202430\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#e3e4e229\\\",\\\"editorIndentGuide.background\\\":\\\"#303340\\\",\\\"editorInfo.foreground\\\":\\\"#ADD7FF\\\",\\\"editorInlineHint.background\\\":\\\"#a6accd\\\",\\\"editorInlineHint.foreground\\\":\\\"#1b1e28\\\",\\\"editorLightBulb.foreground\\\":\\\"#fffac2\\\",\\\"editorLightBulbAutoFix.foreground\\\":\\\"#ADD7FF\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#a6accd\\\",\\\"editorLineNumber.foreground\\\":\\\"#767c9d50\\\",\\\"editorLink.activeForeground\\\":\\\"#ADD7FF\\\",\\\"editorMarkerNavigation.background\\\":\\\"#2d2d30\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#d0679d\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#ADD7FF\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#fffac2\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#5fb3a199\\\",\\\"editorOverviewRuler.border\\\":\\\"#00000000\\\",\\\"editorOverviewRuler.bracketMatchForeground\\\":\\\"#a0a0a0\\\",\\\"editorOverviewRuler.commonContentForeground\\\":\\\"#a6accd66\\\",\\\"editorOverviewRuler.currentContentForeground\\\":\\\"#5fb3a180\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#d0679d99\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#d0679db3\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#e4f0fb20\\\",\\\"editorOverviewRuler.incomingContentForeground\\\":\\\"#89ddff80\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#ADD7FF\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#89ddff99\\\",\\\"editorOverviewRuler.rangeHighlightForeground\\\":\\\"#89ddff99\\\",\\\"editorOverviewRuler.selectionHighlightForeground\\\":\\\"#a0a0a0cc\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#fffac2\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#a0a0a0cc\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#89ddffcc\\\",\\\"editorPane.background\\\":\\\"#1b1e28\\\",\\\"editorRuler.foreground\\\":\\\"#e4f0fb10\\\",\\\"editorSuggestWidget.background\\\":\\\"#1b1e28\\\",\\\"editorSuggestWidget.border\\\":\\\"#ffffff10\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#a6accd\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#5DE4c7\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#00000050\\\",\\\"editorUnnecessaryCode.opacity\\\":\\\"#000000aa\\\",\\\"editorWarning.foreground\\\":\\\"#fffac2\\\",\\\"editorWhitespace.foreground\\\":\\\"#303340\\\",\\\"editorWidget.background\\\":\\\"#1b1e28\\\",\\\"editorWidget.border\\\":\\\"#a6accd\\\",\\\"editorWidget.foreground\\\":\\\"#a6accd\\\",\\\"errorForeground\\\":\\\"#d0679d\\\",\\\"extensionBadge.remoteBackground\\\":\\\"#303340\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#e4f0fb\\\",\\\"extensionButton.prominentBackground\\\":\\\"#30334090\\\",\\\"extensionButton.prominentForeground\\\":\\\"#ffffff\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#303340\\\",\\\"extensionIcon.starForeground\\\":\\\"#fffac2\\\",\\\"focusBorder\\\":\\\"#00000000\\\",\\\"foreground\\\":\\\"#a6accd\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#5fb3a1\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#d0679d\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#d0679d\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#767c9d70\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#ADD7FF\\\",\\\"gitDecoration.renamedResourceForeground\\\":\\\"#5DE4c7\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#d0679d\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#ADD7FF\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#89ddff\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#5DE4c7\\\",\\\"icon.foreground\\\":\\\"#a6accd\\\",\\\"imagePreview.border\\\":\\\"#303340\\\",\\\"input.background\\\":\\\"#ffffff05\\\",\\\"input.border\\\":\\\"#ffffff10\\\",\\\"input.foreground\\\":\\\"#e4f0fb\\\",\\\"input.placeholderForeground\\\":\\\"#a6accd60\\\",\\\"inputOption.activeBackground\\\":\\\"#00000000\\\",\\\"inputOption.activeBorder\\\":\\\"#00000000\\\",\\\"inputOption.activeForeground\\\":\\\"#ffffff\\\",\\\"inputValidation.errorBackground\\\":\\\"#1b1e28\\\",\\\"inputValidation.errorBorder\\\":\\\"#d0679d\\\",\\\"inputValidation.errorForeground\\\":\\\"#d0679d\\\",\\\"inputValidation.infoBackground\\\":\\\"#506477\\\",\\\"inputValidation.infoBorder\\\":\\\"#89ddff\\\",\\\"inputValidation.warningBackground\\\":\\\"#506477\\\",\\\"inputValidation.warningBorder\\\":\\\"#fffac2\\\",\\\"list.activeSelectionBackground\\\":\\\"#30334080\\\",\\\"list.activeSelectionForeground\\\":\\\"#e4f0fb\\\",\\\"list.deemphasizedForeground\\\":\\\"#767c9d\\\",\\\"list.dropBackground\\\":\\\"#506477\\\",\\\"list.errorForeground\\\":\\\"#d0679d\\\",\\\"list.filterMatchBackground\\\":\\\"#89ddff60\\\",\\\"list.focusBackground\\\":\\\"#30334080\\\",\\\"list.focusForeground\\\":\\\"#a6accd\\\",\\\"list.focusOutline\\\":\\\"#00000000\\\",\\\"list.highlightForeground\\\":\\\"#5fb3a1\\\",\\\"list.hoverBackground\\\":\\\"#30334080\\\",\\\"list.hoverForeground\\\":\\\"#e4f0fb\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#30334080\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#e4f0fb\\\",\\\"list.invalidItemForeground\\\":\\\"#fffac2\\\",\\\"list.warningForeground\\\":\\\"#fffac2\\\",\\\"listFilterWidget.background\\\":\\\"#303340\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#d0679d\\\",\\\"listFilterWidget.outline\\\":\\\"#00000000\\\",\\\"menu.background\\\":\\\"#1b1e28\\\",\\\"menu.foreground\\\":\\\"#e4f0fb\\\",\\\"menu.selectionBackground\\\":\\\"#303340\\\",\\\"menu.selectionForeground\\\":\\\"#7390AA\\\",\\\"menu.separatorBackground\\\":\\\"#767c9d\\\",\\\"menubar.selectionBackground\\\":\\\"#717cb425\\\",\\\"menubar.selectionForeground\\\":\\\"#a6accd\\\",\\\"merge.commonContentBackground\\\":\\\"#a6accd29\\\",\\\"merge.commonHeaderBackground\\\":\\\"#a6accd66\\\",\\\"merge.currentContentBackground\\\":\\\"#5fb3a133\\\",\\\"merge.currentHeaderBackground\\\":\\\"#5fb3a180\\\",\\\"merge.incomingContentBackground\\\":\\\"#89ddff33\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#89ddff80\\\",\\\"minimap.errorHighlight\\\":\\\"#d0679d\\\",\\\"minimap.findMatchHighlight\\\":\\\"#ADD7FF\\\",\\\"minimap.selectionHighlight\\\":\\\"#e4f0fb40\\\",\\\"minimap.warningHighlight\\\":\\\"#fffac2\\\",\\\"minimapGutter.addedBackground\\\":\\\"#5fb3a180\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#d0679d80\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#ADD7FF80\\\",\\\"minimapSlider.activeBackground\\\":\\\"#a6accd30\\\",\\\"minimapSlider.background\\\":\\\"#a6accd20\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#a6accd30\\\",\\\"notebook.cellBorderColor\\\":\\\"#1b1e28\\\",\\\"notebook.cellInsertionIndicator\\\":\\\"#00000000\\\",\\\"notebook.cellStatusBarItemHoverBackground\\\":\\\"#ffffff26\\\",\\\"notebook.cellToolbarSeparator\\\":\\\"#303340\\\",\\\"notebook.focusedCellBorder\\\":\\\"#00000000\\\",\\\"notebook.focusedEditorBorder\\\":\\\"#00000000\\\",\\\"notebook.focusedRowBorder\\\":\\\"#00000000\\\",\\\"notebook.inactiveFocusedCellBorder\\\":\\\"#00000000\\\",\\\"notebook.outputContainerBackgroundColor\\\":\\\"#1b1e28\\\",\\\"notebook.rowHoverBackground\\\":\\\"#30334000\\\",\\\"notebook.selectedCellBackground\\\":\\\"#303340\\\",\\\"notebook.selectedCellBorder\\\":\\\"#1b1e28\\\",\\\"notebook.symbolHighlightBackground\\\":\\\"#ffffff0b\\\",\\\"notebookScrollbarSlider.activeBackground\\\":\\\"#a6accd25\\\",\\\"notebookScrollbarSlider.background\\\":\\\"#00000050\\\",\\\"notebookScrollbarSlider.hoverBackground\\\":\\\"#a6accd25\\\",\\\"notebookStatusErrorIcon.foreground\\\":\\\"#d0679d\\\",\\\"notebookStatusRunningIcon.foreground\\\":\\\"#a6accd\\\",\\\"notebookStatusSuccessIcon.foreground\\\":\\\"#5fb3a1\\\",\\\"notificationCenterHeader.background\\\":\\\"#303340\\\",\\\"notificationLink.foreground\\\":\\\"#ADD7FF\\\",\\\"notifications.background\\\":\\\"#1b1e28\\\",\\\"notifications.border\\\":\\\"#303340\\\",\\\"notifications.foreground\\\":\\\"#e4f0fb\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#d0679d\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#ADD7FF\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#fffac2\\\",\\\"panel.background\\\":\\\"#1b1e28\\\",\\\"panel.border\\\":\\\"#00000030\\\",\\\"panel.dropBorder\\\":\\\"#a6accd\\\",\\\"panelSection.border\\\":\\\"#1b1e28\\\",\\\"panelSection.dropBackground\\\":\\\"#7390AA80\\\",\\\"panelSectionHeader.background\\\":\\\"#303340\\\",\\\"panelTitle.activeBorder\\\":\\\"#a6accd\\\",\\\"panelTitle.activeForeground\\\":\\\"#a6accd\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#a6accd99\\\",\\\"peekView.border\\\":\\\"#00000030\\\",\\\"peekViewEditor.background\\\":\\\"#a6accd05\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#303340\\\",\\\"peekViewEditorGutter.background\\\":\\\"#a6accd05\\\",\\\"peekViewResult.background\\\":\\\"#a6accd05\\\",\\\"peekViewResult.fileForeground\\\":\\\"#ffffff\\\",\\\"peekViewResult.lineForeground\\\":\\\"#a6accd\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#303340\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#717cb425\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#ffffff\\\",\\\"peekViewTitle.background\\\":\\\"#a6accd05\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#a6accd60\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#ffffff\\\",\\\"pickerGroup.border\\\":\\\"#a6accd\\\",\\\"pickerGroup.foreground\\\":\\\"#89ddff\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#d0679d\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#ADD7FF\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#fffac2\\\",\\\"progressBar.background\\\":\\\"#89ddff\\\",\\\"quickInput.background\\\":\\\"#1b1e28\\\",\\\"quickInput.foreground\\\":\\\"#a6accd\\\",\\\"quickInputList.focusBackground\\\":\\\"#a6accd10\\\",\\\"quickInputTitle.background\\\":\\\"#ffffff1b\\\",\\\"sash.hoverBorder\\\":\\\"#00000000\\\",\\\"scm.providerBorder\\\":\\\"#e4f0fb10\\\",\\\"scrollbar.shadow\\\":\\\"#00000000\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#a6accd25\\\",\\\"scrollbarSlider.background\\\":\\\"#00000080\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#a6accd25\\\",\\\"searchEditor.findMatchBackground\\\":\\\"#ADD7FF50\\\",\\\"searchEditor.textInputBorder\\\":\\\"#ffffff10\\\",\\\"selection.background\\\":\\\"#a6accd\\\",\\\"settings.checkboxBackground\\\":\\\"#1b1e28\\\",\\\"settings.checkboxBorder\\\":\\\"#ffffff10\\\",\\\"settings.checkboxForeground\\\":\\\"#e4f0fb\\\",\\\"settings.dropdownBackground\\\":\\\"#1b1e28\\\",\\\"settings.dropdownBorder\\\":\\\"#ffffff10\\\",\\\"settings.dropdownForeground\\\":\\\"#e4f0fb\\\",\\\"settings.dropdownListBorder\\\":\\\"#e4f0fb10\\\",\\\"settings.focusedRowBackground\\\":\\\"#00000000\\\",\\\"settings.headerForeground\\\":\\\"#e4f0fb\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#ADD7FF\\\",\\\"settings.numberInputBackground\\\":\\\"#ffffff05\\\",\\\"settings.numberInputBorder\\\":\\\"#ffffff10\\\",\\\"settings.numberInputForeground\\\":\\\"#e4f0fb\\\",\\\"settings.textInputBackground\\\":\\\"#ffffff05\\\",\\\"settings.textInputBorder\\\":\\\"#ffffff10\\\",\\\"settings.textInputForeground\\\":\\\"#e4f0fb\\\",\\\"sideBar.background\\\":\\\"#1b1e28\\\",\\\"sideBar.dropBackground\\\":\\\"#7390AA80\\\",\\\"sideBar.foreground\\\":\\\"#767c9d\\\",\\\"sideBarSectionHeader.background\\\":\\\"#1b1e28\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#a6accd\\\",\\\"sideBarTitle.foreground\\\":\\\"#a6accd\\\",\\\"statusBar.background\\\":\\\"#1b1e28\\\",\\\"statusBar.debuggingBackground\\\":\\\"#303340\\\",\\\"statusBar.debuggingForeground\\\":\\\"#ffffff\\\",\\\"statusBar.foreground\\\":\\\"#a6accd\\\",\\\"statusBar.noFolderBackground\\\":\\\"#1b1e28\\\",\\\"statusBar.noFolderForeground\\\":\\\"#a6accd\\\",\\\"statusBarItem.activeBackground\\\":\\\"#ffffff2e\\\",\\\"statusBarItem.errorBackground\\\":\\\"#d0679d\\\",\\\"statusBarItem.errorForeground\\\":\\\"#ffffff\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#ffffff1f\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#00000080\\\",\\\"statusBarItem.prominentForeground\\\":\\\"#a6accd\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#0000004d\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#303340\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#e4f0fb\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.booleanForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.classForeground\\\":\\\"#fffac2\\\",\\\"symbolIcon.colorForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.constantForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#f087bd\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#fffac2\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#ADD7FF\\\",\\\"symbolIcon.eventForeground\\\":\\\"#fffac2\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#ADD7FF\\\",\\\"symbolIcon.fileForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.folderForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.functionForeground\\\":\\\"#f087bd\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#ADD7FF\\\",\\\"symbolIcon.keyForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.methodForeground\\\":\\\"#f087bd\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.nullForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.numberForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.objectForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.packageForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.stringForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.structForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.textForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.unitForeground\\\":\\\"#a6accd\\\",\\\"symbolIcon.variableForeground\\\":\\\"#ADD7FF\\\",\\\"tab.activeBackground\\\":\\\"#30334080\\\",\\\"tab.activeForeground\\\":\\\"#e4f0fb\\\",\\\"tab.activeModifiedBorder\\\":\\\"#ADD7FF\\\",\\\"tab.border\\\":\\\"#00000000\\\",\\\"tab.inactiveBackground\\\":\\\"#1b1e28\\\",\\\"tab.inactiveForeground\\\":\\\"#767c9d\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#ADD7FF80\\\",\\\"tab.lastPinnedBorder\\\":\\\"#00000000\\\",\\\"tab.unfocusedActiveBackground\\\":\\\"#1b1e28\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#a6accd\\\",\\\"tab.unfocusedActiveModifiedBorder\\\":\\\"#ADD7FF40\\\",\\\"tab.unfocusedInactiveBackground\\\":\\\"#1b1e28\\\",\\\"tab.unfocusedInactiveForeground\\\":\\\"#a6accd80\\\",\\\"tab.unfocusedInactiveModifiedBorder\\\":\\\"#ADD7FF40\\\",\\\"terminal.ansiBlack\\\":\\\"#1b1e28\\\",\\\"terminal.ansiBlue\\\":\\\"#89ddff\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#a6accd\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#ADD7FF\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#ADD7FF\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#5DE4c7\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#f087bd\\\",\\\"terminal.ansiBrightRed\\\":\\\"#d0679d\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#fffac2\\\",\\\"terminal.ansiCyan\\\":\\\"#89ddff\\\",\\\"terminal.ansiGreen\\\":\\\"#5DE4c7\\\",\\\"terminal.ansiMagenta\\\":\\\"#f087bd\\\",\\\"terminal.ansiRed\\\":\\\"#d0679d\\\",\\\"terminal.ansiWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiYellow\\\":\\\"#fffac2\\\",\\\"terminal.border\\\":\\\"#00000000\\\",\\\"terminal.foreground\\\":\\\"#a6accd\\\",\\\"terminal.selectionBackground\\\":\\\"#717cb425\\\",\\\"terminalCommandDecoration.defaultBackground\\\":\\\"#767c9d\\\",\\\"terminalCommandDecoration.errorBackground\\\":\\\"#d0679d\\\",\\\"terminalCommandDecoration.successBackground\\\":\\\"#5DE4c7\\\",\\\"testing.iconErrored\\\":\\\"#d0679d\\\",\\\"testing.iconFailed\\\":\\\"#d0679d\\\",\\\"testing.iconPassed\\\":\\\"#5DE4c7\\\",\\\"testing.iconQueued\\\":\\\"#fffac2\\\",\\\"testing.iconSkipped\\\":\\\"#7390AA\\\",\\\"testing.iconUnset\\\":\\\"#7390AA\\\",\\\"testing.message.error.decorationForeground\\\":\\\"#d0679d\\\",\\\"testing.message.error.lineBackground\\\":\\\"#d0679d33\\\",\\\"testing.message.hint.decorationForeground\\\":\\\"#7390AAb3\\\",\\\"testing.message.info.decorationForeground\\\":\\\"#ADD7FF\\\",\\\"testing.message.info.lineBackground\\\":\\\"#89ddff33\\\",\\\"testing.message.warning.decorationForeground\\\":\\\"#fffac2\\\",\\\"testing.message.warning.lineBackground\\\":\\\"#fffac233\\\",\\\"testing.peekBorder\\\":\\\"#d0679d\\\",\\\"testing.runAction\\\":\\\"#5DE4c7\\\",\\\"textBlockQuote.background\\\":\\\"#7390AA1a\\\",\\\"textBlockQuote.border\\\":\\\"#89ddff80\\\",\\\"textCodeBlock.background\\\":\\\"#00000050\\\",\\\"textLink.activeForeground\\\":\\\"#ADD7FF\\\",\\\"textLink.foreground\\\":\\\"#ADD7FF\\\",\\\"textPreformat.foreground\\\":\\\"#e4f0fb\\\",\\\"textSeparator.foreground\\\":\\\"#ffffff2e\\\",\\\"titleBar.activeBackground\\\":\\\"#1b1e28\\\",\\\"titleBar.activeForeground\\\":\\\"#a6accd\\\",\\\"titleBar.inactiveBackground\\\":\\\"#1b1e28\\\",\\\"titleBar.inactiveForeground\\\":\\\"#767c9d\\\",\\\"tree.indentGuidesStroke\\\":\\\"#303340\\\",\\\"tree.tableColumnsBorder\\\":\\\"#a6accd20\\\",\\\"welcomePage.progress.background\\\":\\\"#ffffff05\\\",\\\"welcomePage.progress.foreground\\\":\\\"#5fb3a1\\\",\\\"welcomePage.tileBackground\\\":\\\"#1b1e28\\\",\\\"welcomePage.tileHoverBackground\\\":\\\"#303340\\\",\\\"widget.shadow\\\":\\\"#00000030\\\"},\\\"displayName\\\":\\\"Poimandres\\\",\\\"name\\\":\\\"poimandres\\\",\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#767c9dB0\\\"}},{\\\"scope\\\":\\\"meta.parameters comment.block\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#a6accd\\\"}},{\\\"scope\\\":[\\\"variable.other.constant.object\\\",\\\"variable.other.readwrite.alias\\\",\\\"meta.import variable.other.readwrite\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"variable.other\\\",\\\"support.type.object\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"variable.other.object.property\\\",\\\"variable.other.property\\\",\\\"support.variable.property\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"entity.name.function.method\\\",\\\"string.unquoted\\\",\\\"meta.object.member\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"variable - meta.import\\\",\\\"constant.other.placeholder\\\",\\\"meta.object-literal.key-meta.object.member\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"keyword.control.flow\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DE4c7c0\\\"}},{\\\"scope\\\":[\\\"keyword.operator.new\\\",\\\"keyword.control.new\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DE4c7\\\"}},{\\\"scope\\\":[\\\"variable.language.this\\\",\\\"storage.modifier.async\\\",\\\"storage.modifier\\\",\\\"variable.language.super\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DE4c7\\\"}},{\\\"scope\\\":[\\\"support.class.error\\\",\\\"keyword.control.trycatch\\\",\\\"keyword.operator.expression.delete\\\",\\\"keyword.operator.expression.void\\\",\\\"keyword.operator.void\\\",\\\"keyword.operator.delete\\\",\\\"constant.language.null\\\",\\\"constant.language.boolean.false\\\",\\\"constant.language.undefined\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d0679d\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\",\\\"variable.other.readwrite.js\\\",\\\"meta.definition.variable variable.other.constant\\\",\\\"meta.definition.variable variable.other.readwrite\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"constant.other.color\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffff\\\"}},{\\\"scope\\\":[\\\"invalid\\\",\\\"invalid.illegal\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d0679d\\\"}},{\\\"scope\\\":[\\\"invalid.deprecated\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d0679d\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\",\\\"keyword\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6accd\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\",\\\"storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91B4D5\\\"}},{\\\"scope\\\":[\\\"keyword.control.module\\\",\\\"keyword.control.import\\\",\\\"keyword.control.export\\\",\\\"keyword.control.default\\\",\\\"meta.import\\\",\\\"meta.export\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DE4c7\\\"}},{\\\"scope\\\":[\\\"Keyword\\\",\\\"Storage\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"keyword-meta.export\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"meta.brace\\\",\\\"punctuation\\\",\\\"keyword.operator.existential\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6accd\\\"}},{\\\"scope\\\":[\\\"constant.other.color\\\",\\\"meta.tag\\\",\\\"punctuation.definition.tag\\\",\\\"punctuation.separator.inheritance.php\\\",\\\"punctuation.definition.tag.html\\\",\\\"punctuation.definition.tag.begin.html\\\",\\\"punctuation.definition.tag.end.html\\\",\\\"punctuation.section.embedded\\\",\\\"keyword.other.template\\\",\\\"keyword.other.substitution\\\",\\\"meta.objectliteral\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"support.class.component\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DE4c7\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"entity.name.tag\\\",\\\"meta.tag.sgml\\\",\\\"markup.deleted.git_gutter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DE4c7\\\"}},{\\\"scope\\\":\\\"variable.function, source meta.function-call entity.name.function, source meta.function-call entity.name.function, source meta.method-call entity.name.function, meta.class meta.group.braces.curly meta.function-call variable.function, meta.class meta.field.declaration meta.function-call entity.name.function, variable.function.constructor, meta.block meta.var.expr meta.function-call entity.name.function, support.function.console, meta.function-call support.function, meta.property.class variable.other.class, punctuation.definition.entity.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fbd0\\\"}},{\\\"scope\\\":\\\"entity.name.function, meta.class entity.name.class, meta.class entity.name.type.class, meta.class meta.function-call variable.function, keyword.other.important\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"source.cpp meta.block variable.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"support.other.variable\\\",\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DE4c7\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"support.constant\\\",\\\"constant.character\\\",\\\"constant.escape\\\",\\\"keyword.other.unit\\\",\\\"keyword.other\\\",\\\"string\\\",\\\"constant.language\\\",\\\"constant.other.symbol\\\",\\\"constant.other.key\\\",\\\"markup.heading\\\",\\\"markup.inserted.git_gutter\\\",\\\"meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js\\\",\\\"text.html.derivative\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DE4c7\\\"}},{\\\"scope\\\":[\\\"entity.other.inherited-class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"meta.type.declaration\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"entity.name.type.alias\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6accd\\\"}},{\\\"scope\\\":[\\\"keyword.control.as\\\",\\\"entity.name.type\\\",\\\"support.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6accdC0\\\"}},{\\\"scope\\\":[\\\"entity.name\\\",\\\"support.orther.namespace.use.php\\\",\\\"meta.use.php\\\",\\\"support.other.namespace.php\\\",\\\"markup.changed.git_gutter\\\",\\\"support.type.sys-types\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91B4D5\\\"}},{\\\"scope\\\":[\\\"support.class\\\",\\\"support.constant\\\",\\\"variable.other.constant.object\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"source.css support.type.property-name\\\",\\\"source.sass support.type.property-name\\\",\\\"source.scss support.type.property-name\\\",\\\"source.less support.type.property-name\\\",\\\"source.stylus support.type.property-name\\\",\\\"source.postcss support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"entity.name.module.js\\\",\\\"variable.import.parameter.js\\\",\\\"variable.other.class.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"variable.language\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"entity.name.method.js\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#91B4D5\\\"}},{\\\"scope\\\":[\\\"meta.class-method.js entity.name.function.js\\\",\\\"variable.function.constructor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91B4D5\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#91B4D5\\\"}},{\\\"scope\\\":[\\\"text.html.basic entity.other.attribute-name.html\\\",\\\"text.html.basic entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#5fb3a1\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5fb3a1\\\"}},{\\\"scope\\\":[\\\"source.sass keyword.control\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#42675A\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#506477\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91B4D5\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5fb3a1\\\"}},{\\\"scope\\\":[\\\"constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5fb3a1\\\"}},{\\\"scope\\\":[\\\"*url*\\\",\\\"*link*\\\",\\\"*uri*\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"tag.decorator.js entity.name.tag.js\\\",\\\"tag.decorator.js punctuation.definition.tag.js\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#42675A\\\"}},{\\\"scope\\\":[\\\"source.js constant.other.object.key.js string.unquoted.label.js\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#5fb3a1\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91B4D5\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7390AA\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91B4D5\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7390AA\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"text.html.markdown\\\",\\\"punctuation.definition.list_item.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91B4D5\\\"}},{\\\"scope\\\":[\\\"markdown.heading\\\",\\\"markup.heading | markup.heading entity.name\\\",\\\"markup.heading.markdown punctuation.definition.heading.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#7390AA\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#7390AA\\\"}},{\\\"scope\\\":[\\\"markup.bold markup.italic\\\",\\\"markup.italic markup.bold\\\",\\\"markup.quote markup.bold\\\",\\\"markup.bold markup.italic string\\\",\\\"markup.italic markup.bold string\\\",\\\"markup.quote markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#7390AA\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#7390AA\\\"}},{\\\"scope\\\":[\\\"markup.strike\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"markup.quote punctuation.definition.blockquote.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DE4c7\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"string.other.link.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"string.other.link.description.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"markup.raw.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50647750\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#50647750\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\",\\\"variable.language.fenced.markdown\\\",\\\"punctuation.section.class.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91B4D5\\\"}},{\\\"scope\\\":[\\\"variable.language.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#91B4D5\\\"}},{\\\"scope\\\":[\\\"meta.separator\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#7390AA\\\"}},{\\\"scope\\\":[\\\"markup.table\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":\\\"token.info-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89ddff\\\"}},{\\\"scope\\\":\\\"token.warn-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fffac2\\\"}},{\\\"scope\\\":\\\"token.error-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d0679d\\\"}},{\\\"scope\\\":\\\"token.debug-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":[\\\"entity.name.section.markdown\\\",\\\"markup.heading.setext.1.markdown\\\",\\\"markup.heading.setext.2.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#e4f0fb\\\"}},{\\\"scope\\\":\\\"meta.paragraph.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e4f0fbd0\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.from-file.diff\\\",\\\"meta.diff.header.from-file\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#506477\\\"}},{\\\"scope\\\":\\\"markup.inline.raw.string.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7390AA\\\"}},{\\\"scope\\\":\\\"meta.separator.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#767c9d\\\"}},{\\\"scope\\\":\\\"markup.bold.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.italic.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"beginning.punctuation.definition.list.markdown\\\",\\\"punctuation.definition.list.begin.markdown\\\",\\\"markup.list.unnumbered.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"string.other.link.description.title.markdown punctuation.definition.string.markdown\\\",\\\"meta.link.inline.markdown string.other.link.description.title.markdown\\\",\\\"string.other.link.description.title.markdown punctuation.definition.string.begin.markdown\\\",\\\"string.other.link.description.title.markdown punctuation.definition.string.end.markdown\\\",\\\"meta.image.inline.markdown string.other.link.description.title.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"meta.link.inline.markdown string.other.link.title.markdown\\\",\\\"meta.link.reference.markdown string.other.link.title.markdown\\\",\\\"meta.link.reference.def.markdown markup.underline.link.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"markup.underline.link.markdown\\\",\\\"string.other.link.description.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DE4c7\\\"}},{\\\"scope\\\":[\\\"fenced_code.block.language\\\",\\\"markup.inline.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.markdown\\\",\\\"punctuation.definition.raw.markdown\\\",\\\"punctuation.definition.heading.markdown\\\",\\\"punctuation.definition.bold.markdown\\\",\\\"punctuation.definition.italic.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADD7FF\\\"}},{\\\"scope\\\":[\\\"source.ignore\\\",\\\"log.error\\\",\\\"log.exception\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d0679d\\\"}},{\\\"scope\\\":[\\\"log.verbose\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a6accd\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: red */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#580000\\\",\\\"badge.background\\\":\\\"#cc3333\\\",\\\"button.background\\\":\\\"#833\\\",\\\"debugToolBar.background\\\":\\\"#660000\\\",\\\"dropdown.background\\\":\\\"#580000\\\",\\\"editor.background\\\":\\\"#390000\\\",\\\"editor.foreground\\\":\\\"#F8F8F8\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#ff000044\\\",\\\"editor.lineHighlightBackground\\\":\\\"#ff000033\\\",\\\"editor.selectionBackground\\\":\\\"#750000\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#f5500039\\\",\\\"editorCursor.foreground\\\":\\\"#970000\\\",\\\"editorGroup.border\\\":\\\"#ff666633\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#330000\\\",\\\"editorHoverWidget.background\\\":\\\"#300000\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#ffbbbb88\\\",\\\"editorLineNumber.foreground\\\":\\\"#ff777788\\\",\\\"editorLink.activeForeground\\\":\\\"#FFD0AA\\\",\\\"editorSuggestWidget.background\\\":\\\"#300000\\\",\\\"editorSuggestWidget.border\\\":\\\"#220000\\\",\\\"editorWhitespace.foreground\\\":\\\"#c10000\\\",\\\"editorWidget.background\\\":\\\"#300000\\\",\\\"errorForeground\\\":\\\"#ffeaea\\\",\\\"extensionButton.prominentBackground\\\":\\\"#cc3333\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#cc333388\\\",\\\"focusBorder\\\":\\\"#ff6666aa\\\",\\\"input.background\\\":\\\"#580000\\\",\\\"inputOption.activeBorder\\\":\\\"#cc0000\\\",\\\"inputValidation.infoBackground\\\":\\\"#550000\\\",\\\"inputValidation.infoBorder\\\":\\\"#DB7E58\\\",\\\"list.activeSelectionBackground\\\":\\\"#880000\\\",\\\"list.dropBackground\\\":\\\"#662222\\\",\\\"list.highlightForeground\\\":\\\"#ff4444\\\",\\\"list.hoverBackground\\\":\\\"#800000\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#770000\\\",\\\"minimap.selectionHighlight\\\":\\\"#750000\\\",\\\"peekView.border\\\":\\\"#ff000044\\\",\\\"peekViewEditor.background\\\":\\\"#300000\\\",\\\"peekViewResult.background\\\":\\\"#400000\\\",\\\"peekViewTitle.background\\\":\\\"#550000\\\",\\\"pickerGroup.border\\\":\\\"#ff000033\\\",\\\"pickerGroup.foreground\\\":\\\"#cc9999\\\",\\\"ports.iconRunningProcessForeground\\\":\\\"#DB7E58\\\",\\\"progressBar.background\\\":\\\"#cc3333\\\",\\\"quickInputList.focusBackground\\\":\\\"#660000\\\",\\\"selection.background\\\":\\\"#ff777788\\\",\\\"sideBar.background\\\":\\\"#330000\\\",\\\"statusBar.background\\\":\\\"#700000\\\",\\\"statusBar.noFolderBackground\\\":\\\"#700000\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#c33\\\",\\\"tab.activeBackground\\\":\\\"#490000\\\",\\\"tab.inactiveBackground\\\":\\\"#300a0a\\\",\\\"tab.lastPinnedBorder\\\":\\\"#ff000044\\\",\\\"titleBar.activeBackground\\\":\\\"#770000\\\",\\\"titleBar.inactiveBackground\\\":\\\"#772222\\\"},\\\"displayName\\\":\\\"Red\\\",\\\"name\\\":\\\"red\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"foreground\\\":\\\"#F8F8F8\\\"}},{\\\"scope\\\":[\\\"meta.embedded\\\",\\\"source.groovy.embedded\\\",\\\"string meta.image.inline.markdown\\\",\\\"variable.legacy.builtin.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F8F8F8\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#e7c0c0ff\\\"}},{\\\"scope\\\":\\\"constant\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#994646ff\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#f12727ff\\\"}},{\\\"scope\\\":\\\"entity\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#fec758ff\\\"}},{\\\"scope\\\":\\\"storage\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#ff6262ff\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#cd8d8dff\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#9df39fff\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fb9a4bff\\\"}},{\\\"scope\\\":\\\"invalid\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffffff\\\"}},{\\\"scope\\\":[\\\"entity.other.inherited-class\\\",\\\"punctuation.separator.namespace.ruby\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#aa5507ff\\\"}},{\\\"scope\\\":\\\"constant.character\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ec0d1e\\\"}},{\\\"scope\\\":[\\\"string constant\\\",\\\"constant.character.escape\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ffe862ff\\\"}},{\\\"scope\\\":\\\"string.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffb454ff\\\"}},{\\\"scope\\\":\\\"string variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#edef7dff\\\"}},{\\\"scope\\\":\\\"support.function\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ffb454ff\\\"}},{\\\"scope\\\":[\\\"support.constant\\\",\\\"support.variable\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#eb939aff\\\"}},{\\\"scope\\\":[\\\"declaration.sgml.html declaration.doctype\\\",\\\"declaration.sgml.html declaration.doctype entity\\\",\\\"declaration.sgml.html declaration.doctype string\\\",\\\"declaration.xml-processing\\\",\\\"declaration.xml-processing entity\\\",\\\"declaration.xml-processing string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#73817dff\\\"}},{\\\"scope\\\":[\\\"declaration.tag\\\",\\\"declaration.tag entity\\\",\\\"meta.tag\\\",\\\"meta.tag entity\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ec0d1eff\\\"}},{\\\"scope\\\":\\\"meta.selector.css entity.name.tag\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#aa5507ff\\\"}},{\\\"scope\\\":\\\"meta.selector.css entity.other.attribute-name.id\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fec758ff\\\"}},{\\\"scope\\\":\\\"meta.selector.css entity.other.attribute-name.class\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#41a83eff\\\"}},{\\\"scope\\\":\\\"support.type.property-name.css\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#96dd3bff\\\"}},{\\\"scope\\\":[\\\"meta.property-group support.constant.property-value.css\\\",\\\"meta.property-value support.constant.property-value.css\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ffe862ff\\\"}},{\\\"scope\\\":[\\\"meta.property-value support.constant.named-color.css\\\",\\\"meta.property-value constant\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ffe862ff\\\"}},{\\\"scope\\\":\\\"meta.preprocessor.at-rule keyword.control.at-rule\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fd6209ff\\\"}},{\\\"scope\\\":\\\"meta.constructor.argument.css\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#ec9799ff\\\"}},{\\\"scope\\\":[\\\"meta.diff\\\",\\\"meta.diff.header\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#f8f8f8ff\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ec9799ff\\\"}},{\\\"scope\\\":\\\"markup.changed\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f8f8f8ff\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#41a83eff\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f12727ff\\\"}},{\\\"scope\\\":\\\"markup.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff6262ff\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.italic\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fb9a4bff\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.strikethrough\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#cd8d8dff\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading.setext\\\",\\\"punctuation.definition.heading\\\",\\\"entity.name.section\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#fec758ff\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.template-expression.begin\\\",\\\"punctuation.definition.template-expression.end\\\",\\\"punctuation.section.embedded\\\",\\\".format.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ec0d1e\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: rose-pine */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#e0def4\\\",\\\"activityBar.background\\\":\\\"#191724\\\",\\\"activityBar.dropBorder\\\":\\\"#26233a\\\",\\\"activityBar.foreground\\\":\\\"#e0def4\\\",\\\"activityBar.inactiveForeground\\\":\\\"#908caa\\\",\\\"activityBarBadge.background\\\":\\\"#ebbcba\\\",\\\"activityBarBadge.foreground\\\":\\\"#191724\\\",\\\"badge.background\\\":\\\"#ebbcba\\\",\\\"badge.foreground\\\":\\\"#191724\\\",\\\"banner.background\\\":\\\"#1f1d2e\\\",\\\"banner.foreground\\\":\\\"#e0def4\\\",\\\"banner.iconForeground\\\":\\\"#908caa\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#ebbcba\\\",\\\"breadcrumb.background\\\":\\\"#191724\\\",\\\"breadcrumb.focusForeground\\\":\\\"#908caa\\\",\\\"breadcrumb.foreground\\\":\\\"#6e6a86\\\",\\\"breadcrumbPicker.background\\\":\\\"#1f1d2e\\\",\\\"button.background\\\":\\\"#ebbcba\\\",\\\"button.foreground\\\":\\\"#191724\\\",\\\"button.hoverBackground\\\":\\\"#ebbcbae6\\\",\\\"button.secondaryBackground\\\":\\\"#1f1d2e\\\",\\\"button.secondaryForeground\\\":\\\"#e0def4\\\",\\\"button.secondaryHoverBackground\\\":\\\"#26233a\\\",\\\"charts.blue\\\":\\\"#9ccfd8\\\",\\\"charts.foreground\\\":\\\"#e0def4\\\",\\\"charts.green\\\":\\\"#31748f\\\",\\\"charts.lines\\\":\\\"#908caa\\\",\\\"charts.orange\\\":\\\"#ebbcba\\\",\\\"charts.purple\\\":\\\"#c4a7e7\\\",\\\"charts.red\\\":\\\"#eb6f92\\\",\\\"charts.yellow\\\":\\\"#f6c177\\\",\\\"checkbox.background\\\":\\\"#1f1d2e\\\",\\\"checkbox.border\\\":\\\"#6e6a8633\\\",\\\"checkbox.foreground\\\":\\\"#e0def4\\\",\\\"debugExceptionWidget.background\\\":\\\"#1f1d2e\\\",\\\"debugExceptionWidget.border\\\":\\\"#6e6a8633\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#908caa\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#908caa\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#908caa\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#908caa\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#908caa\\\",\\\"debugIcon.continueForeground\\\":\\\"#908caa\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#908caa\\\",\\\"debugIcon.pauseForeground\\\":\\\"#908caa\\\",\\\"debugIcon.restartForeground\\\":\\\"#908caa\\\",\\\"debugIcon.startForeground\\\":\\\"#908caa\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#908caa\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#908caa\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#908caa\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#908caa\\\",\\\"debugIcon.stopForeground\\\":\\\"#eb6f92\\\",\\\"debugToolBar.background\\\":\\\"#1f1d2e\\\",\\\"debugToolBar.border\\\":\\\"#26233a\\\",\\\"descriptionForeground\\\":\\\"#908caa\\\",\\\"diffEditor.border\\\":\\\"#26233a\\\",\\\"diffEditor.diagonalFill\\\":\\\"#6e6a8666\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#9ccfd826\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#9ccfd826\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#eb6f9226\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#eb6f9226\\\",\\\"diffEditorOverview.insertedForeground\\\":\\\"#9ccfd880\\\",\\\"diffEditorOverview.removedForeground\\\":\\\"#eb6f9280\\\",\\\"dropdown.background\\\":\\\"#1f1d2e\\\",\\\"dropdown.border\\\":\\\"#6e6a8633\\\",\\\"dropdown.foreground\\\":\\\"#e0def4\\\",\\\"dropdown.listBackground\\\":\\\"#1f1d2e\\\",\\\"editor.background\\\":\\\"#191724\\\",\\\"editor.findMatchBackground\\\":\\\"#f6c17733\\\",\\\"editor.findMatchBorder\\\":\\\"#f6c17780\\\",\\\"editor.findMatchForeground\\\":\\\"#e0def4\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#6e6a8666\\\",\\\"editor.findMatchHighlightForeground\\\":\\\"#e0def4\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#6e6a8666\\\",\\\"editor.findRangeHighlightBorder\\\":\\\"#0000\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#6e6a8633\\\",\\\"editor.foldBackground\\\":\\\"#1f1d2e\\\",\\\"editor.foreground\\\":\\\"#e0def4\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#0000\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#6e6a861a\\\",\\\"editor.inlineValuesBackground\\\":\\\"#0000\\\",\\\"editor.inlineValuesForeground\\\":\\\"#908caa\\\",\\\"editor.lineHighlightBackground\\\":\\\"#6e6a861a\\\",\\\"editor.lineHighlightBorder\\\":\\\"#0000\\\",\\\"editor.linkedEditingBackground\\\":\\\"#1f1d2e\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#6e6a861a\\\",\\\"editor.selectionBackground\\\":\\\"#6e6a8633\\\",\\\"editor.selectionForeground\\\":\\\"#e0def4\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#6e6a8633\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#191724\\\",\\\"editor.snippetFinalTabstopHighlightBackground\\\":\\\"#6e6a8633\\\",\\\"editor.snippetFinalTabstopHighlightBorder\\\":\\\"#1f1d2e\\\",\\\"editor.snippetTabstopHighlightBackground\\\":\\\"#6e6a8633\\\",\\\"editor.snippetTabstopHighlightBorder\\\":\\\"#1f1d2e\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#6e6a8633\\\",\\\"editor.symbolHighlightBackground\\\":\\\"#6e6a8633\\\",\\\"editor.symbolHighlightBorder\\\":\\\"#0000\\\",\\\"editor.wordHighlightBackground\\\":\\\"#6e6a8633\\\",\\\"editor.wordHighlightBorder\\\":\\\"#0000\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#6e6a8633\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#6e6a8633\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#eb6f9280\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#31748f80\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#f6c17780\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#9ccfd880\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#ebbcba80\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#c4a7e780\\\",\\\"editorBracketMatch.background\\\":\\\"#0000\\\",\\\"editorBracketMatch.border\\\":\\\"#908caa\\\",\\\"editorBracketPairGuide.activeBackground1\\\":\\\"#31748f\\\",\\\"editorBracketPairGuide.activeBackground2\\\":\\\"#ebbcba\\\",\\\"editorBracketPairGuide.activeBackground3\\\":\\\"#c4a7e7\\\",\\\"editorBracketPairGuide.activeBackground4\\\":\\\"#9ccfd8\\\",\\\"editorBracketPairGuide.activeBackground5\\\":\\\"#f6c177\\\",\\\"editorBracketPairGuide.activeBackground6\\\":\\\"#eb6f92\\\",\\\"editorBracketPairGuide.background1\\\":\\\"#31748f80\\\",\\\"editorBracketPairGuide.background2\\\":\\\"#ebbcba80\\\",\\\"editorBracketPairGuide.background3\\\":\\\"#c4a7e780\\\",\\\"editorBracketPairGuide.background4\\\":\\\"#9ccfd880\\\",\\\"editorBracketPairGuide.background5\\\":\\\"#f6c17780\\\",\\\"editorBracketPairGuide.background6\\\":\\\"#eb6f9280\\\",\\\"editorCodeLens.foreground\\\":\\\"#ebbcba\\\",\\\"editorCursor.background\\\":\\\"#e0def4\\\",\\\"editorCursor.foreground\\\":\\\"#6e6a86\\\",\\\"editorError.border\\\":\\\"#0000\\\",\\\"editorError.foreground\\\":\\\"#eb6f92\\\",\\\"editorGhostText.foreground\\\":\\\"#908caa\\\",\\\"editorGroup.border\\\":\\\"#0000\\\",\\\"editorGroup.dropBackground\\\":\\\"#1f1d2e\\\",\\\"editorGroup.emptyBackground\\\":\\\"#0000\\\",\\\"editorGroup.focusedEmptyBorder\\\":\\\"#0000\\\",\\\"editorGroupHeader.noTabsBackground\\\":\\\"#0000\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#0000\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#0000\\\",\\\"editorGutter.addedBackground\\\":\\\"#9ccfd8\\\",\\\"editorGutter.background\\\":\\\"#191724\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#26233a\\\",\\\"editorGutter.deletedBackground\\\":\\\"#eb6f92\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#c4a7e7\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#ebbcba\\\",\\\"editorHint.border\\\":\\\"#0000\\\",\\\"editorHint.foreground\\\":\\\"#908caa\\\",\\\"editorHoverWidget.background\\\":\\\"#1f1d2e\\\",\\\"editorHoverWidget.border\\\":\\\"#6e6a8680\\\",\\\"editorHoverWidget.foreground\\\":\\\"#908caa\\\",\\\"editorHoverWidget.highlightForeground\\\":\\\"#e0def4\\\",\\\"editorHoverWidget.statusBarBackground\\\":\\\"#0000\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#6e6a86\\\",\\\"editorIndentGuide.background\\\":\\\"#6e6a8666\\\",\\\"editorInfo.border\\\":\\\"#26233a\\\",\\\"editorInfo.foreground\\\":\\\"#9ccfd8\\\",\\\"editorInlayHint.background\\\":\\\"#26233a\\\",\\\"editorInlayHint.foreground\\\":\\\"#908caa\\\",\\\"editorInlayHint.parameterBackground\\\":\\\"#26233a\\\",\\\"editorInlayHint.parameterForeground\\\":\\\"#c4a7e7\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#26233a\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#9ccfd8\\\",\\\"editorLightBulb.foreground\\\":\\\"#31748f\\\",\\\"editorLightBulbAutoFix.foreground\\\":\\\"#ebbcba\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#e0def4\\\",\\\"editorLineNumber.foreground\\\":\\\"#908caa\\\",\\\"editorLink.activeForeground\\\":\\\"#ebbcba\\\",\\\"editorMarkerNavigation.background\\\":\\\"#1f1d2e\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#1f1d2e\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#1f1d2e\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#1f1d2e\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#9ccfd880\\\",\\\"editorOverviewRuler.background\\\":\\\"#191724\\\",\\\"editorOverviewRuler.border\\\":\\\"#6e6a8666\\\",\\\"editorOverviewRuler.bracketMatchForeground\\\":\\\"#908caa\\\",\\\"editorOverviewRuler.commentForeground\\\":\\\"#908caa80\\\",\\\"editorOverviewRuler.commentUnresolvedForeground\\\":\\\"#f6c17780\\\",\\\"editorOverviewRuler.commonContentForeground\\\":\\\"#6e6a861a\\\",\\\"editorOverviewRuler.currentContentForeground\\\":\\\"#6e6a8633\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#eb6f9280\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#eb6f9280\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#6e6a8666\\\",\\\"editorOverviewRuler.incomingContentForeground\\\":\\\"#c4a7e780\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#9ccfd880\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#ebbcba80\\\",\\\"editorOverviewRuler.rangeHighlightForeground\\\":\\\"#6e6a8666\\\",\\\"editorOverviewRuler.selectionHighlightForeground\\\":\\\"#6e6a8666\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#f6c17780\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#6e6a8633\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#6e6a8666\\\",\\\"editorPane.background\\\":\\\"#0000\\\",\\\"editorRuler.foreground\\\":\\\"#6e6a8666\\\",\\\"editorSuggestWidget.background\\\":\\\"#1f1d2e\\\",\\\"editorSuggestWidget.border\\\":\\\"#0000\\\",\\\"editorSuggestWidget.focusHighlightForeground\\\":\\\"#ebbcba\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#908caa\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#ebbcba\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#6e6a8633\\\",\\\"editorSuggestWidget.selectedForeground\\\":\\\"#e0def4\\\",\\\"editorSuggestWidget.selectedIconForeground\\\":\\\"#e0def4\\\",\\\"editorUnnecessaryCode.border\\\":\\\"#0000\\\",\\\"editorUnnecessaryCode.opacity\\\":\\\"#e0def480\\\",\\\"editorWarning.border\\\":\\\"#0000\\\",\\\"editorWarning.foreground\\\":\\\"#f6c177\\\",\\\"editorWhitespace.foreground\\\":\\\"#6e6a86\\\",\\\"editorWidget.background\\\":\\\"#1f1d2e\\\",\\\"editorWidget.border\\\":\\\"#26233a\\\",\\\"editorWidget.foreground\\\":\\\"#908caa\\\",\\\"editorWidget.resizeBorder\\\":\\\"#6e6a86\\\",\\\"errorForeground\\\":\\\"#eb6f92\\\",\\\"extensionBadge.remoteBackground\\\":\\\"#c4a7e7\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#191724\\\",\\\"extensionButton.prominentBackground\\\":\\\"#ebbcba\\\",\\\"extensionButton.prominentForeground\\\":\\\"#191724\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#ebbcbae6\\\",\\\"extensionIcon.preReleaseForeground\\\":\\\"#31748f\\\",\\\"extensionIcon.starForeground\\\":\\\"#ebbcba\\\",\\\"extensionIcon.verifiedForeground\\\":\\\"#c4a7e7\\\",\\\"focusBorder\\\":\\\"#6e6a8633\\\",\\\"foreground\\\":\\\"#e0def4\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#9ccfd8\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#eb6f92\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#908caa\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#6e6a86\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#ebbcba\\\",\\\"gitDecoration.renamedResourceForeground\\\":\\\"#31748f\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#eb6f92\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#c4a7e7\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#f6c177\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#f6c177\\\",\\\"icon.foreground\\\":\\\"#908caa\\\",\\\"input.background\\\":\\\"#26233a80\\\",\\\"input.border\\\":\\\"#6e6a8633\\\",\\\"input.foreground\\\":\\\"#e0def4\\\",\\\"input.placeholderForeground\\\":\\\"#908caa\\\",\\\"inputOption.activeBackground\\\":\\\"#ebbcba26\\\",\\\"inputOption.activeBorder\\\":\\\"#0000\\\",\\\"inputOption.activeForeground\\\":\\\"#ebbcba\\\",\\\"inputValidation.errorBackground\\\":\\\"#1f1d2e\\\",\\\"inputValidation.errorBorder\\\":\\\"#6e6a8666\\\",\\\"inputValidation.errorForeground\\\":\\\"#eb6f92\\\",\\\"inputValidation.infoBackground\\\":\\\"#1f1d2e\\\",\\\"inputValidation.infoBorder\\\":\\\"#6e6a8666\\\",\\\"inputValidation.infoForeground\\\":\\\"#9ccfd8\\\",\\\"inputValidation.warningBackground\\\":\\\"#1f1d2e\\\",\\\"inputValidation.warningBorder\\\":\\\"#6e6a8666\\\",\\\"inputValidation.warningForeground\\\":\\\"#9ccfd880\\\",\\\"keybindingLabel.background\\\":\\\"#26233a\\\",\\\"keybindingLabel.border\\\":\\\"#6e6a8666\\\",\\\"keybindingLabel.bottomBorder\\\":\\\"#6e6a8666\\\",\\\"keybindingLabel.foreground\\\":\\\"#c4a7e7\\\",\\\"keybindingTable.headerBackground\\\":\\\"#26233a\\\",\\\"keybindingTable.rowsBackground\\\":\\\"#1f1d2e\\\",\\\"list.activeSelectionBackground\\\":\\\"#6e6a8633\\\",\\\"list.activeSelectionForeground\\\":\\\"#e0def4\\\",\\\"list.deemphasizedForeground\\\":\\\"#908caa\\\",\\\"list.dropBackground\\\":\\\"#1f1d2e\\\",\\\"list.errorForeground\\\":\\\"#eb6f92\\\",\\\"list.filterMatchBackground\\\":\\\"#1f1d2e\\\",\\\"list.filterMatchBorder\\\":\\\"#ebbcba\\\",\\\"list.focusBackground\\\":\\\"#6e6a8666\\\",\\\"list.focusForeground\\\":\\\"#e0def4\\\",\\\"list.focusOutline\\\":\\\"#6e6a8633\\\",\\\"list.highlightForeground\\\":\\\"#ebbcba\\\",\\\"list.hoverBackground\\\":\\\"#6e6a861a\\\",\\\"list.hoverForeground\\\":\\\"#e0def4\\\",\\\"list.inactiveFocusBackground\\\":\\\"#6e6a861a\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#1f1d2e\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#e0def4\\\",\\\"list.invalidItemForeground\\\":\\\"#eb6f92\\\",\\\"list.warningForeground\\\":\\\"#f6c177\\\",\\\"listFilterWidget.background\\\":\\\"#1f1d2e\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#eb6f92\\\",\\\"listFilterWidget.outline\\\":\\\"#26233a\\\",\\\"menu.background\\\":\\\"#1f1d2e\\\",\\\"menu.border\\\":\\\"#6e6a861a\\\",\\\"menu.foreground\\\":\\\"#e0def4\\\",\\\"menu.selectionBackground\\\":\\\"#6e6a8633\\\",\\\"menu.selectionBorder\\\":\\\"#26233a\\\",\\\"menu.selectionForeground\\\":\\\"#e0def4\\\",\\\"menu.separatorBackground\\\":\\\"#6e6a8666\\\",\\\"menubar.selectionBackground\\\":\\\"#6e6a8633\\\",\\\"menubar.selectionBorder\\\":\\\"#6e6a861a\\\",\\\"menubar.selectionForeground\\\":\\\"#e0def4\\\",\\\"merge.border\\\":\\\"#26233a\\\",\\\"merge.commonContentBackground\\\":\\\"#6e6a8633\\\",\\\"merge.commonHeaderBackground\\\":\\\"#6e6a8633\\\",\\\"merge.currentContentBackground\\\":\\\"#f6c17780\\\",\\\"merge.currentHeaderBackground\\\":\\\"#f6c17780\\\",\\\"merge.incomingContentBackground\\\":\\\"#9ccfd880\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#9ccfd880\\\",\\\"minimap.background\\\":\\\"#1f1d2e\\\",\\\"minimap.errorHighlight\\\":\\\"#eb6f9280\\\",\\\"minimap.findMatchHighlight\\\":\\\"#6e6a8633\\\",\\\"minimap.selectionHighlight\\\":\\\"#6e6a8633\\\",\\\"minimap.warningHighlight\\\":\\\"#f6c17780\\\",\\\"minimapGutter.addedBackground\\\":\\\"#9ccfd8\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#eb6f92\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#ebbcba\\\",\\\"minimapSlider.activeBackground\\\":\\\"#6e6a8666\\\",\\\"minimapSlider.background\\\":\\\"#6e6a8633\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#6e6a8633\\\",\\\"notebook.cellBorderColor\\\":\\\"#9ccfd880\\\",\\\"notebook.cellEditorBackground\\\":\\\"#1f1d2e\\\",\\\"notebook.cellHoverBackground\\\":\\\"#26233a80\\\",\\\"notebook.focusedCellBackground\\\":\\\"#6e6a861a\\\",\\\"notebook.focusedCellBorder\\\":\\\"#9ccfd8\\\",\\\"notebook.outputContainerBackgroundColor\\\":\\\"#6e6a861a\\\",\\\"notificationCenter.border\\\":\\\"#6e6a8633\\\",\\\"notificationCenterHeader.background\\\":\\\"#1f1d2e\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#908caa\\\",\\\"notificationLink.foreground\\\":\\\"#c4a7e7\\\",\\\"notificationToast.border\\\":\\\"#6e6a8633\\\",\\\"notifications.background\\\":\\\"#1f1d2e\\\",\\\"notifications.border\\\":\\\"#6e6a8633\\\",\\\"notifications.foreground\\\":\\\"#e0def4\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#eb6f92\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#9ccfd8\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#f6c177\\\",\\\"panel.background\\\":\\\"#1f1d2e\\\",\\\"panel.border\\\":\\\"#0000\\\",\\\"panel.dropBorder\\\":\\\"#26233a\\\",\\\"panelInput.border\\\":\\\"#1f1d2e\\\",\\\"panelSection.dropBackground\\\":\\\"#6e6a8633\\\",\\\"panelSectionHeader.background\\\":\\\"#1f1d2e\\\",\\\"panelSectionHeader.foreground\\\":\\\"#e0def4\\\",\\\"panelTitle.activeBorder\\\":\\\"#6e6a8666\\\",\\\"panelTitle.activeForeground\\\":\\\"#e0def4\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#908caa\\\",\\\"peekView.border\\\":\\\"#26233a\\\",\\\"peekViewEditor.background\\\":\\\"#1f1d2e\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#6e6a8666\\\",\\\"peekViewResult.background\\\":\\\"#1f1d2e\\\",\\\"peekViewResult.fileForeground\\\":\\\"#908caa\\\",\\\"peekViewResult.lineForeground\\\":\\\"#908caa\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#6e6a8666\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#6e6a8633\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#e0def4\\\",\\\"peekViewTitle.background\\\":\\\"#26233a\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#908caa\\\",\\\"pickerGroup.border\\\":\\\"#6e6a8666\\\",\\\"pickerGroup.foreground\\\":\\\"#c4a7e7\\\",\\\"ports.iconRunningProcessForeground\\\":\\\"#ebbcba\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#eb6f92\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#9ccfd8\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#f6c177\\\",\\\"progressBar.background\\\":\\\"#ebbcba\\\",\\\"quickInput.background\\\":\\\"#1f1d2e\\\",\\\"quickInput.foreground\\\":\\\"#908caa\\\",\\\"quickInputList.focusBackground\\\":\\\"#6e6a8633\\\",\\\"quickInputList.focusForeground\\\":\\\"#e0def4\\\",\\\"quickInputList.focusIconForeground\\\":\\\"#e0def4\\\",\\\"scrollbar.shadow\\\":\\\"#1f1d2e4d\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#31748f80\\\",\\\"scrollbarSlider.background\\\":\\\"#6e6a8633\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#6e6a8666\\\",\\\"searchEditor.findMatchBackground\\\":\\\"#6e6a8633\\\",\\\"selection.background\\\":\\\"#6e6a8666\\\",\\\"settings.focusedRowBackground\\\":\\\"#1f1d2e\\\",\\\"settings.focusedRowBorder\\\":\\\"#6e6a8633\\\",\\\"settings.headerForeground\\\":\\\"#e0def4\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#ebbcba\\\",\\\"settings.rowHoverBackground\\\":\\\"#1f1d2e\\\",\\\"sideBar.background\\\":\\\"#191724\\\",\\\"sideBar.dropBackground\\\":\\\"#1f1d2e\\\",\\\"sideBar.foreground\\\":\\\"#908caa\\\",\\\"sideBarSectionHeader.background\\\":\\\"#0000\\\",\\\"sideBarSectionHeader.border\\\":\\\"#6e6a8633\\\",\\\"statusBar.background\\\":\\\"#191724\\\",\\\"statusBar.debuggingBackground\\\":\\\"#c4a7e7\\\",\\\"statusBar.debuggingForeground\\\":\\\"#191724\\\",\\\"statusBar.foreground\\\":\\\"#908caa\\\",\\\"statusBar.noFolderBackground\\\":\\\"#191724\\\",\\\"statusBar.noFolderForeground\\\":\\\"#908caa\\\",\\\"statusBarItem.activeBackground\\\":\\\"#6e6a8666\\\",\\\"statusBarItem.errorBackground\\\":\\\"#191724\\\",\\\"statusBarItem.errorForeground\\\":\\\"#eb6f92\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#6e6a8633\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#26233a\\\",\\\"statusBarItem.prominentForeground\\\":\\\"#e0def4\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#6e6a8633\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#191724\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#f6c177\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.classForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.colorForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.constantForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.eventForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.fileForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.folderForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.functionForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.keyForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.methodForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.nullForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.numberForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.objectForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.packageForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.stringForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.structForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.textForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.unitForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.variableForeground\\\":\\\"#908caa\\\",\\\"tab.activeBackground\\\":\\\"#6e6a861a\\\",\\\"tab.activeForeground\\\":\\\"#e0def4\\\",\\\"tab.activeModifiedBorder\\\":\\\"#9ccfd8\\\",\\\"tab.border\\\":\\\"#0000\\\",\\\"tab.hoverBackground\\\":\\\"#6e6a8633\\\",\\\"tab.inactiveBackground\\\":\\\"#0000\\\",\\\"tab.inactiveForeground\\\":\\\"#908caa\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#9ccfd880\\\",\\\"tab.lastPinnedBorder\\\":\\\"#6e6a86\\\",\\\"tab.unfocusedActiveBackground\\\":\\\"#0000\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#0000\\\",\\\"tab.unfocusedInactiveBackground\\\":\\\"#0000\\\",\\\"tab.unfocusedInactiveModifiedBorder\\\":\\\"#9ccfd880\\\",\\\"terminal.ansiBlack\\\":\\\"#26233a\\\",\\\"terminal.ansiBlue\\\":\\\"#9ccfd8\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#908caa\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#9ccfd8\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#ebbcba\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#31748f\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#c4a7e7\\\",\\\"terminal.ansiBrightRed\\\":\\\"#eb6f92\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#e0def4\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#f6c177\\\",\\\"terminal.ansiCyan\\\":\\\"#ebbcba\\\",\\\"terminal.ansiGreen\\\":\\\"#31748f\\\",\\\"terminal.ansiMagenta\\\":\\\"#c4a7e7\\\",\\\"terminal.ansiRed\\\":\\\"#eb6f92\\\",\\\"terminal.ansiWhite\\\":\\\"#e0def4\\\",\\\"terminal.ansiYellow\\\":\\\"#f6c177\\\",\\\"terminal.dropBackground\\\":\\\"#6e6a8633\\\",\\\"terminal.foreground\\\":\\\"#e0def4\\\",\\\"terminal.selectionBackground\\\":\\\"#6e6a8633\\\",\\\"terminal.tab.activeBorder\\\":\\\"#e0def4\\\",\\\"terminalCursor.background\\\":\\\"#e0def4\\\",\\\"terminalCursor.foreground\\\":\\\"#6e6a86\\\",\\\"textBlockQuote.background\\\":\\\"#1f1d2e\\\",\\\"textBlockQuote.border\\\":\\\"#6e6a8633\\\",\\\"textCodeBlock.background\\\":\\\"#1f1d2e\\\",\\\"textLink.activeForeground\\\":\\\"#c4a7e7e6\\\",\\\"textLink.foreground\\\":\\\"#c4a7e7\\\",\\\"textPreformat.foreground\\\":\\\"#f6c177\\\",\\\"textSeparator.foreground\\\":\\\"#908caa\\\",\\\"titleBar.activeBackground\\\":\\\"#191724\\\",\\\"titleBar.activeForeground\\\":\\\"#908caa\\\",\\\"titleBar.inactiveBackground\\\":\\\"#1f1d2e\\\",\\\"titleBar.inactiveForeground\\\":\\\"#908caa\\\",\\\"toolbar.activeBackground\\\":\\\"#6e6a8666\\\",\\\"toolbar.hoverBackground\\\":\\\"#6e6a8633\\\",\\\"tree.indentGuidesStroke\\\":\\\"#908caa\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#191724\\\",\\\"welcomePage.background\\\":\\\"#191724\\\",\\\"welcomePage.buttonBackground\\\":\\\"#1f1d2e\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#26233a\\\",\\\"widget.shadow\\\":\\\"#1f1d2e4d\\\",\\\"window.activeBorder\\\":\\\"#1f1d2e\\\",\\\"window.inactiveBorder\\\":\\\"#1f1d2e\\\"},\\\"displayName\\\":\\\"Ros\u00E9 Pine\\\",\\\"name\\\":\\\"rose-pine\\\",\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#6e6a86\\\"}},{\\\"scope\\\":[\\\"constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#31748f\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"constant.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ebbcba\\\"}},{\\\"scope\\\":[\\\"entity.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ebbcba\\\"}},{\\\"scope\\\":[\\\"entity.name.section\\\",\\\"entity.name.tag\\\",\\\"entity.name.namespace\\\",\\\"entity.name.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9ccfd8\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\",\\\"entity.other.inherited-class\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c4a7e7\\\"}},{\\\"scope\\\":[\\\"invalid\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eb6f92\\\"}},{\\\"scope\\\":[\\\"invalid.deprecated\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#908caa\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"variable.language.this\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#31748f\\\"}},{\\\"scope\\\":[\\\"markup.inserted.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9ccfd8\\\"}},{\\\"scope\\\":[\\\"markup.deleted.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eb6f92\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.bold.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.italic.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"meta.diff.range\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c4a7e7\\\"}},{\\\"scope\\\":[\\\"meta.tag\\\",\\\"meta.brace\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e0def4\\\"}},{\\\"scope\\\":[\\\"meta.import\\\",\\\"meta.export\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#31748f\\\"}},{\\\"scope\\\":\\\"meta.directive.vue\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c4a7e7\\\"}},{\\\"scope\\\":\\\"meta.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9ccfd8\\\"}},{\\\"scope\\\":\\\"meta.property-value.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f6c177\\\"}},{\\\"scope\\\":\\\"meta.tag.other.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#908caa\\\"}},{\\\"scope\\\":[\\\"punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#908caa\\\"}},{\\\"scope\\\":[\\\"punctuation.accessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#31748f\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6c177\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6e6a86\\\"}},{\\\"scope\\\":[\\\"storage.type\\\",\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#31748f\\\"}},{\\\"scope\\\":[\\\"string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6c177\\\"}},{\\\"scope\\\":[\\\"support\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9ccfd8\\\"}},{\\\"scope\\\":[\\\"support.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6c177\\\"}},{\\\"scope\\\":[\\\"support.function\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#eb6f92\\\"}},{\\\"scope\\\":[\\\"variable\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ebbcba\\\"}},{\\\"scope\\\":[\\\"variable.other\\\",\\\"variable.language\\\",\\\"variable.function\\\",\\\"variable.argument\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e0def4\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c4a7e7\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: rose-pine-dawn */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#575279\\\",\\\"activityBar.background\\\":\\\"#faf4ed\\\",\\\"activityBar.dropBorder\\\":\\\"#f2e9e1\\\",\\\"activityBar.foreground\\\":\\\"#575279\\\",\\\"activityBar.inactiveForeground\\\":\\\"#797593\\\",\\\"activityBarBadge.background\\\":\\\"#d7827e\\\",\\\"activityBarBadge.foreground\\\":\\\"#faf4ed\\\",\\\"badge.background\\\":\\\"#d7827e\\\",\\\"badge.foreground\\\":\\\"#faf4ed\\\",\\\"banner.background\\\":\\\"#fffaf3\\\",\\\"banner.foreground\\\":\\\"#575279\\\",\\\"banner.iconForeground\\\":\\\"#797593\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#d7827e\\\",\\\"breadcrumb.background\\\":\\\"#faf4ed\\\",\\\"breadcrumb.focusForeground\\\":\\\"#797593\\\",\\\"breadcrumb.foreground\\\":\\\"#9893a5\\\",\\\"breadcrumbPicker.background\\\":\\\"#fffaf3\\\",\\\"button.background\\\":\\\"#d7827e\\\",\\\"button.foreground\\\":\\\"#faf4ed\\\",\\\"button.hoverBackground\\\":\\\"#d7827ee6\\\",\\\"button.secondaryBackground\\\":\\\"#fffaf3\\\",\\\"button.secondaryForeground\\\":\\\"#575279\\\",\\\"button.secondaryHoverBackground\\\":\\\"#f2e9e1\\\",\\\"charts.blue\\\":\\\"#56949f\\\",\\\"charts.foreground\\\":\\\"#575279\\\",\\\"charts.green\\\":\\\"#286983\\\",\\\"charts.lines\\\":\\\"#797593\\\",\\\"charts.orange\\\":\\\"#d7827e\\\",\\\"charts.purple\\\":\\\"#907aa9\\\",\\\"charts.red\\\":\\\"#b4637a\\\",\\\"charts.yellow\\\":\\\"#ea9d34\\\",\\\"checkbox.background\\\":\\\"#fffaf3\\\",\\\"checkbox.border\\\":\\\"#6e6a8614\\\",\\\"checkbox.foreground\\\":\\\"#575279\\\",\\\"debugExceptionWidget.background\\\":\\\"#fffaf3\\\",\\\"debugExceptionWidget.border\\\":\\\"#6e6a8614\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#797593\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#797593\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#797593\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#797593\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#797593\\\",\\\"debugIcon.continueForeground\\\":\\\"#797593\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#797593\\\",\\\"debugIcon.pauseForeground\\\":\\\"#797593\\\",\\\"debugIcon.restartForeground\\\":\\\"#797593\\\",\\\"debugIcon.startForeground\\\":\\\"#797593\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#797593\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#797593\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#797593\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#797593\\\",\\\"debugIcon.stopForeground\\\":\\\"#b4637a\\\",\\\"debugToolBar.background\\\":\\\"#fffaf3\\\",\\\"debugToolBar.border\\\":\\\"#f2e9e1\\\",\\\"descriptionForeground\\\":\\\"#797593\\\",\\\"diffEditor.border\\\":\\\"#f2e9e1\\\",\\\"diffEditor.diagonalFill\\\":\\\"#6e6a8626\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#56949f26\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#56949f26\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#b4637a26\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#b4637a26\\\",\\\"diffEditorOverview.insertedForeground\\\":\\\"#56949f80\\\",\\\"diffEditorOverview.removedForeground\\\":\\\"#b4637a80\\\",\\\"dropdown.background\\\":\\\"#fffaf3\\\",\\\"dropdown.border\\\":\\\"#6e6a8614\\\",\\\"dropdown.foreground\\\":\\\"#575279\\\",\\\"dropdown.listBackground\\\":\\\"#fffaf3\\\",\\\"editor.background\\\":\\\"#faf4ed\\\",\\\"editor.findMatchBackground\\\":\\\"#ea9d3433\\\",\\\"editor.findMatchBorder\\\":\\\"#ea9d3480\\\",\\\"editor.findMatchForeground\\\":\\\"#575279\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#6e6a8626\\\",\\\"editor.findMatchHighlightForeground\\\":\\\"#575279\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#6e6a8626\\\",\\\"editor.findRangeHighlightBorder\\\":\\\"#0000\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#6e6a8614\\\",\\\"editor.foldBackground\\\":\\\"#fffaf3\\\",\\\"editor.foreground\\\":\\\"#575279\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#0000\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#6e6a860d\\\",\\\"editor.inlineValuesBackground\\\":\\\"#0000\\\",\\\"editor.inlineValuesForeground\\\":\\\"#797593\\\",\\\"editor.lineHighlightBackground\\\":\\\"#6e6a860d\\\",\\\"editor.lineHighlightBorder\\\":\\\"#0000\\\",\\\"editor.linkedEditingBackground\\\":\\\"#fffaf3\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#6e6a860d\\\",\\\"editor.selectionBackground\\\":\\\"#6e6a8614\\\",\\\"editor.selectionForeground\\\":\\\"#575279\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#6e6a8614\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#faf4ed\\\",\\\"editor.snippetFinalTabstopHighlightBackground\\\":\\\"#6e6a8614\\\",\\\"editor.snippetFinalTabstopHighlightBorder\\\":\\\"#fffaf3\\\",\\\"editor.snippetTabstopHighlightBackground\\\":\\\"#6e6a8614\\\",\\\"editor.snippetTabstopHighlightBorder\\\":\\\"#fffaf3\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#6e6a8614\\\",\\\"editor.symbolHighlightBackground\\\":\\\"#6e6a8614\\\",\\\"editor.symbolHighlightBorder\\\":\\\"#0000\\\",\\\"editor.wordHighlightBackground\\\":\\\"#6e6a8614\\\",\\\"editor.wordHighlightBorder\\\":\\\"#0000\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#6e6a8614\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#6e6a8614\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#b4637a80\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#28698380\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#ea9d3480\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#56949f80\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#d7827e80\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#907aa980\\\",\\\"editorBracketMatch.background\\\":\\\"#0000\\\",\\\"editorBracketMatch.border\\\":\\\"#797593\\\",\\\"editorBracketPairGuide.activeBackground1\\\":\\\"#286983\\\",\\\"editorBracketPairGuide.activeBackground2\\\":\\\"#d7827e\\\",\\\"editorBracketPairGuide.activeBackground3\\\":\\\"#907aa9\\\",\\\"editorBracketPairGuide.activeBackground4\\\":\\\"#56949f\\\",\\\"editorBracketPairGuide.activeBackground5\\\":\\\"#ea9d34\\\",\\\"editorBracketPairGuide.activeBackground6\\\":\\\"#b4637a\\\",\\\"editorBracketPairGuide.background1\\\":\\\"#28698380\\\",\\\"editorBracketPairGuide.background2\\\":\\\"#d7827e80\\\",\\\"editorBracketPairGuide.background3\\\":\\\"#907aa980\\\",\\\"editorBracketPairGuide.background4\\\":\\\"#56949f80\\\",\\\"editorBracketPairGuide.background5\\\":\\\"#ea9d3480\\\",\\\"editorBracketPairGuide.background6\\\":\\\"#b4637a80\\\",\\\"editorCodeLens.foreground\\\":\\\"#d7827e\\\",\\\"editorCursor.background\\\":\\\"#575279\\\",\\\"editorCursor.foreground\\\":\\\"#9893a5\\\",\\\"editorError.border\\\":\\\"#0000\\\",\\\"editorError.foreground\\\":\\\"#b4637a\\\",\\\"editorGhostText.foreground\\\":\\\"#797593\\\",\\\"editorGroup.border\\\":\\\"#0000\\\",\\\"editorGroup.dropBackground\\\":\\\"#fffaf3\\\",\\\"editorGroup.emptyBackground\\\":\\\"#0000\\\",\\\"editorGroup.focusedEmptyBorder\\\":\\\"#0000\\\",\\\"editorGroupHeader.noTabsBackground\\\":\\\"#0000\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#0000\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#0000\\\",\\\"editorGutter.addedBackground\\\":\\\"#56949f\\\",\\\"editorGutter.background\\\":\\\"#faf4ed\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#f2e9e1\\\",\\\"editorGutter.deletedBackground\\\":\\\"#b4637a\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#907aa9\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#d7827e\\\",\\\"editorHint.border\\\":\\\"#0000\\\",\\\"editorHint.foreground\\\":\\\"#797593\\\",\\\"editorHoverWidget.background\\\":\\\"#fffaf3\\\",\\\"editorHoverWidget.border\\\":\\\"#9893a580\\\",\\\"editorHoverWidget.foreground\\\":\\\"#797593\\\",\\\"editorHoverWidget.highlightForeground\\\":\\\"#575279\\\",\\\"editorHoverWidget.statusBarBackground\\\":\\\"#0000\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#9893a5\\\",\\\"editorIndentGuide.background\\\":\\\"#6e6a8626\\\",\\\"editorInfo.border\\\":\\\"#f2e9e1\\\",\\\"editorInfo.foreground\\\":\\\"#56949f\\\",\\\"editorInlayHint.background\\\":\\\"#f2e9e1\\\",\\\"editorInlayHint.foreground\\\":\\\"#797593\\\",\\\"editorInlayHint.parameterBackground\\\":\\\"#f2e9e1\\\",\\\"editorInlayHint.parameterForeground\\\":\\\"#907aa9\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#f2e9e1\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#56949f\\\",\\\"editorLightBulb.foreground\\\":\\\"#286983\\\",\\\"editorLightBulbAutoFix.foreground\\\":\\\"#d7827e\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#575279\\\",\\\"editorLineNumber.foreground\\\":\\\"#797593\\\",\\\"editorLink.activeForeground\\\":\\\"#d7827e\\\",\\\"editorMarkerNavigation.background\\\":\\\"#fffaf3\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#fffaf3\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#fffaf3\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#fffaf3\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#56949f80\\\",\\\"editorOverviewRuler.background\\\":\\\"#faf4ed\\\",\\\"editorOverviewRuler.border\\\":\\\"#6e6a8626\\\",\\\"editorOverviewRuler.bracketMatchForeground\\\":\\\"#797593\\\",\\\"editorOverviewRuler.commentForeground\\\":\\\"#79759380\\\",\\\"editorOverviewRuler.commentUnresolvedForeground\\\":\\\"#ea9d3480\\\",\\\"editorOverviewRuler.commonContentForeground\\\":\\\"#6e6a860d\\\",\\\"editorOverviewRuler.currentContentForeground\\\":\\\"#6e6a8614\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#b4637a80\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#b4637a80\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#6e6a8626\\\",\\\"editorOverviewRuler.incomingContentForeground\\\":\\\"#907aa980\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#56949f80\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#d7827e80\\\",\\\"editorOverviewRuler.rangeHighlightForeground\\\":\\\"#6e6a8626\\\",\\\"editorOverviewRuler.selectionHighlightForeground\\\":\\\"#6e6a8626\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#ea9d3480\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#6e6a8614\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#6e6a8626\\\",\\\"editorPane.background\\\":\\\"#0000\\\",\\\"editorRuler.foreground\\\":\\\"#6e6a8626\\\",\\\"editorSuggestWidget.background\\\":\\\"#fffaf3\\\",\\\"editorSuggestWidget.border\\\":\\\"#0000\\\",\\\"editorSuggestWidget.focusHighlightForeground\\\":\\\"#d7827e\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#797593\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#d7827e\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#6e6a8614\\\",\\\"editorSuggestWidget.selectedForeground\\\":\\\"#575279\\\",\\\"editorSuggestWidget.selectedIconForeground\\\":\\\"#575279\\\",\\\"editorUnnecessaryCode.border\\\":\\\"#0000\\\",\\\"editorUnnecessaryCode.opacity\\\":\\\"#57527980\\\",\\\"editorWarning.border\\\":\\\"#0000\\\",\\\"editorWarning.foreground\\\":\\\"#ea9d34\\\",\\\"editorWhitespace.foreground\\\":\\\"#9893a5\\\",\\\"editorWidget.background\\\":\\\"#fffaf3\\\",\\\"editorWidget.border\\\":\\\"#f2e9e1\\\",\\\"editorWidget.foreground\\\":\\\"#797593\\\",\\\"editorWidget.resizeBorder\\\":\\\"#9893a5\\\",\\\"errorForeground\\\":\\\"#b4637a\\\",\\\"extensionBadge.remoteBackground\\\":\\\"#907aa9\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#faf4ed\\\",\\\"extensionButton.prominentBackground\\\":\\\"#d7827e\\\",\\\"extensionButton.prominentForeground\\\":\\\"#faf4ed\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#d7827ee6\\\",\\\"extensionIcon.preReleaseForeground\\\":\\\"#286983\\\",\\\"extensionIcon.starForeground\\\":\\\"#d7827e\\\",\\\"extensionIcon.verifiedForeground\\\":\\\"#907aa9\\\",\\\"focusBorder\\\":\\\"#6e6a8614\\\",\\\"foreground\\\":\\\"#575279\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#56949f\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#b4637a\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#797593\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#9893a5\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#d7827e\\\",\\\"gitDecoration.renamedResourceForeground\\\":\\\"#286983\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#b4637a\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#907aa9\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#ea9d34\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#ea9d34\\\",\\\"icon.foreground\\\":\\\"#797593\\\",\\\"input.background\\\":\\\"#f2e9e180\\\",\\\"input.border\\\":\\\"#6e6a8614\\\",\\\"input.foreground\\\":\\\"#575279\\\",\\\"input.placeholderForeground\\\":\\\"#797593\\\",\\\"inputOption.activeBackground\\\":\\\"#d7827e26\\\",\\\"inputOption.activeBorder\\\":\\\"#0000\\\",\\\"inputOption.activeForeground\\\":\\\"#d7827e\\\",\\\"inputValidation.errorBackground\\\":\\\"#fffaf3\\\",\\\"inputValidation.errorBorder\\\":\\\"#6e6a8626\\\",\\\"inputValidation.errorForeground\\\":\\\"#b4637a\\\",\\\"inputValidation.infoBackground\\\":\\\"#fffaf3\\\",\\\"inputValidation.infoBorder\\\":\\\"#6e6a8626\\\",\\\"inputValidation.infoForeground\\\":\\\"#56949f\\\",\\\"inputValidation.warningBackground\\\":\\\"#fffaf3\\\",\\\"inputValidation.warningBorder\\\":\\\"#6e6a8626\\\",\\\"inputValidation.warningForeground\\\":\\\"#56949f80\\\",\\\"keybindingLabel.background\\\":\\\"#f2e9e1\\\",\\\"keybindingLabel.border\\\":\\\"#6e6a8626\\\",\\\"keybindingLabel.bottomBorder\\\":\\\"#6e6a8626\\\",\\\"keybindingLabel.foreground\\\":\\\"#907aa9\\\",\\\"keybindingTable.headerBackground\\\":\\\"#f2e9e1\\\",\\\"keybindingTable.rowsBackground\\\":\\\"#fffaf3\\\",\\\"list.activeSelectionBackground\\\":\\\"#6e6a8614\\\",\\\"list.activeSelectionForeground\\\":\\\"#575279\\\",\\\"list.deemphasizedForeground\\\":\\\"#797593\\\",\\\"list.dropBackground\\\":\\\"#fffaf3\\\",\\\"list.errorForeground\\\":\\\"#b4637a\\\",\\\"list.filterMatchBackground\\\":\\\"#fffaf3\\\",\\\"list.filterMatchBorder\\\":\\\"#d7827e\\\",\\\"list.focusBackground\\\":\\\"#6e6a8626\\\",\\\"list.focusForeground\\\":\\\"#575279\\\",\\\"list.focusOutline\\\":\\\"#6e6a8614\\\",\\\"list.highlightForeground\\\":\\\"#d7827e\\\",\\\"list.hoverBackground\\\":\\\"#6e6a860d\\\",\\\"list.hoverForeground\\\":\\\"#575279\\\",\\\"list.inactiveFocusBackground\\\":\\\"#6e6a860d\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#fffaf3\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#575279\\\",\\\"list.invalidItemForeground\\\":\\\"#b4637a\\\",\\\"list.warningForeground\\\":\\\"#ea9d34\\\",\\\"listFilterWidget.background\\\":\\\"#fffaf3\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#b4637a\\\",\\\"listFilterWidget.outline\\\":\\\"#f2e9e1\\\",\\\"menu.background\\\":\\\"#fffaf3\\\",\\\"menu.border\\\":\\\"#6e6a860d\\\",\\\"menu.foreground\\\":\\\"#575279\\\",\\\"menu.selectionBackground\\\":\\\"#6e6a8614\\\",\\\"menu.selectionBorder\\\":\\\"#f2e9e1\\\",\\\"menu.selectionForeground\\\":\\\"#575279\\\",\\\"menu.separatorBackground\\\":\\\"#6e6a8626\\\",\\\"menubar.selectionBackground\\\":\\\"#6e6a8614\\\",\\\"menubar.selectionBorder\\\":\\\"#6e6a860d\\\",\\\"menubar.selectionForeground\\\":\\\"#575279\\\",\\\"merge.border\\\":\\\"#f2e9e1\\\",\\\"merge.commonContentBackground\\\":\\\"#6e6a8614\\\",\\\"merge.commonHeaderBackground\\\":\\\"#6e6a8614\\\",\\\"merge.currentContentBackground\\\":\\\"#ea9d3480\\\",\\\"merge.currentHeaderBackground\\\":\\\"#ea9d3480\\\",\\\"merge.incomingContentBackground\\\":\\\"#56949f80\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#56949f80\\\",\\\"minimap.background\\\":\\\"#fffaf3\\\",\\\"minimap.errorHighlight\\\":\\\"#b4637a80\\\",\\\"minimap.findMatchHighlight\\\":\\\"#6e6a8614\\\",\\\"minimap.selectionHighlight\\\":\\\"#6e6a8614\\\",\\\"minimap.warningHighlight\\\":\\\"#ea9d3480\\\",\\\"minimapGutter.addedBackground\\\":\\\"#56949f\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#b4637a\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#d7827e\\\",\\\"minimapSlider.activeBackground\\\":\\\"#6e6a8626\\\",\\\"minimapSlider.background\\\":\\\"#6e6a8614\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#6e6a8614\\\",\\\"notebook.cellBorderColor\\\":\\\"#56949f80\\\",\\\"notebook.cellEditorBackground\\\":\\\"#fffaf3\\\",\\\"notebook.cellHoverBackground\\\":\\\"#f2e9e180\\\",\\\"notebook.focusedCellBackground\\\":\\\"#6e6a860d\\\",\\\"notebook.focusedCellBorder\\\":\\\"#56949f\\\",\\\"notebook.outputContainerBackgroundColor\\\":\\\"#6e6a860d\\\",\\\"notificationCenter.border\\\":\\\"#6e6a8614\\\",\\\"notificationCenterHeader.background\\\":\\\"#fffaf3\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#797593\\\",\\\"notificationLink.foreground\\\":\\\"#907aa9\\\",\\\"notificationToast.border\\\":\\\"#6e6a8614\\\",\\\"notifications.background\\\":\\\"#fffaf3\\\",\\\"notifications.border\\\":\\\"#6e6a8614\\\",\\\"notifications.foreground\\\":\\\"#575279\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#b4637a\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#56949f\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#ea9d34\\\",\\\"panel.background\\\":\\\"#fffaf3\\\",\\\"panel.border\\\":\\\"#0000\\\",\\\"panel.dropBorder\\\":\\\"#f2e9e1\\\",\\\"panelInput.border\\\":\\\"#fffaf3\\\",\\\"panelSection.dropBackground\\\":\\\"#6e6a8614\\\",\\\"panelSectionHeader.background\\\":\\\"#fffaf3\\\",\\\"panelSectionHeader.foreground\\\":\\\"#575279\\\",\\\"panelTitle.activeBorder\\\":\\\"#6e6a8626\\\",\\\"panelTitle.activeForeground\\\":\\\"#575279\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#797593\\\",\\\"peekView.border\\\":\\\"#f2e9e1\\\",\\\"peekViewEditor.background\\\":\\\"#fffaf3\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#6e6a8626\\\",\\\"peekViewResult.background\\\":\\\"#fffaf3\\\",\\\"peekViewResult.fileForeground\\\":\\\"#797593\\\",\\\"peekViewResult.lineForeground\\\":\\\"#797593\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#6e6a8626\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#6e6a8614\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#575279\\\",\\\"peekViewTitle.background\\\":\\\"#f2e9e1\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#797593\\\",\\\"pickerGroup.border\\\":\\\"#6e6a8626\\\",\\\"pickerGroup.foreground\\\":\\\"#907aa9\\\",\\\"ports.iconRunningProcessForeground\\\":\\\"#d7827e\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#b4637a\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#56949f\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#ea9d34\\\",\\\"progressBar.background\\\":\\\"#d7827e\\\",\\\"quickInput.background\\\":\\\"#fffaf3\\\",\\\"quickInput.foreground\\\":\\\"#797593\\\",\\\"quickInputList.focusBackground\\\":\\\"#6e6a8614\\\",\\\"quickInputList.focusForeground\\\":\\\"#575279\\\",\\\"quickInputList.focusIconForeground\\\":\\\"#575279\\\",\\\"scrollbar.shadow\\\":\\\"#fffaf34d\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#28698380\\\",\\\"scrollbarSlider.background\\\":\\\"#6e6a8614\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#6e6a8626\\\",\\\"searchEditor.findMatchBackground\\\":\\\"#6e6a8614\\\",\\\"selection.background\\\":\\\"#6e6a8626\\\",\\\"settings.focusedRowBackground\\\":\\\"#fffaf3\\\",\\\"settings.focusedRowBorder\\\":\\\"#6e6a8614\\\",\\\"settings.headerForeground\\\":\\\"#575279\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#d7827e\\\",\\\"settings.rowHoverBackground\\\":\\\"#fffaf3\\\",\\\"sideBar.background\\\":\\\"#faf4ed\\\",\\\"sideBar.dropBackground\\\":\\\"#fffaf3\\\",\\\"sideBar.foreground\\\":\\\"#797593\\\",\\\"sideBarSectionHeader.background\\\":\\\"#0000\\\",\\\"sideBarSectionHeader.border\\\":\\\"#6e6a8614\\\",\\\"statusBar.background\\\":\\\"#faf4ed\\\",\\\"statusBar.debuggingBackground\\\":\\\"#907aa9\\\",\\\"statusBar.debuggingForeground\\\":\\\"#faf4ed\\\",\\\"statusBar.foreground\\\":\\\"#797593\\\",\\\"statusBar.noFolderBackground\\\":\\\"#faf4ed\\\",\\\"statusBar.noFolderForeground\\\":\\\"#797593\\\",\\\"statusBarItem.activeBackground\\\":\\\"#6e6a8626\\\",\\\"statusBarItem.errorBackground\\\":\\\"#faf4ed\\\",\\\"statusBarItem.errorForeground\\\":\\\"#b4637a\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#6e6a8614\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#f2e9e1\\\",\\\"statusBarItem.prominentForeground\\\":\\\"#575279\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#6e6a8614\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#faf4ed\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#ea9d34\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#797593\\\",\\\"symbolIcon.classForeground\\\":\\\"#797593\\\",\\\"symbolIcon.colorForeground\\\":\\\"#797593\\\",\\\"symbolIcon.constantForeground\\\":\\\"#797593\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#797593\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#797593\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#797593\\\",\\\"symbolIcon.eventForeground\\\":\\\"#797593\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#797593\\\",\\\"symbolIcon.fileForeground\\\":\\\"#797593\\\",\\\"symbolIcon.folderForeground\\\":\\\"#797593\\\",\\\"symbolIcon.functionForeground\\\":\\\"#797593\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#797593\\\",\\\"symbolIcon.keyForeground\\\":\\\"#797593\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#797593\\\",\\\"symbolIcon.methodForeground\\\":\\\"#797593\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#797593\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#797593\\\",\\\"symbolIcon.nullForeground\\\":\\\"#797593\\\",\\\"symbolIcon.numberForeground\\\":\\\"#797593\\\",\\\"symbolIcon.objectForeground\\\":\\\"#797593\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#797593\\\",\\\"symbolIcon.packageForeground\\\":\\\"#797593\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#797593\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#797593\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#797593\\\",\\\"symbolIcon.stringForeground\\\":\\\"#797593\\\",\\\"symbolIcon.structForeground\\\":\\\"#797593\\\",\\\"symbolIcon.textForeground\\\":\\\"#797593\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#797593\\\",\\\"symbolIcon.unitForeground\\\":\\\"#797593\\\",\\\"symbolIcon.variableForeground\\\":\\\"#797593\\\",\\\"tab.activeBackground\\\":\\\"#6e6a860d\\\",\\\"tab.activeForeground\\\":\\\"#575279\\\",\\\"tab.activeModifiedBorder\\\":\\\"#56949f\\\",\\\"tab.border\\\":\\\"#0000\\\",\\\"tab.hoverBackground\\\":\\\"#6e6a8614\\\",\\\"tab.inactiveBackground\\\":\\\"#0000\\\",\\\"tab.inactiveForeground\\\":\\\"#797593\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#56949f80\\\",\\\"tab.lastPinnedBorder\\\":\\\"#9893a5\\\",\\\"tab.unfocusedActiveBackground\\\":\\\"#0000\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#0000\\\",\\\"tab.unfocusedInactiveBackground\\\":\\\"#0000\\\",\\\"tab.unfocusedInactiveModifiedBorder\\\":\\\"#56949f80\\\",\\\"terminal.ansiBlack\\\":\\\"#f2e9e1\\\",\\\"terminal.ansiBlue\\\":\\\"#56949f\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#797593\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#56949f\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#d7827e\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#286983\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#907aa9\\\",\\\"terminal.ansiBrightRed\\\":\\\"#b4637a\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#575279\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#ea9d34\\\",\\\"terminal.ansiCyan\\\":\\\"#d7827e\\\",\\\"terminal.ansiGreen\\\":\\\"#286983\\\",\\\"terminal.ansiMagenta\\\":\\\"#907aa9\\\",\\\"terminal.ansiRed\\\":\\\"#b4637a\\\",\\\"terminal.ansiWhite\\\":\\\"#575279\\\",\\\"terminal.ansiYellow\\\":\\\"#ea9d34\\\",\\\"terminal.dropBackground\\\":\\\"#6e6a8614\\\",\\\"terminal.foreground\\\":\\\"#575279\\\",\\\"terminal.selectionBackground\\\":\\\"#6e6a8614\\\",\\\"terminal.tab.activeBorder\\\":\\\"#575279\\\",\\\"terminalCursor.background\\\":\\\"#575279\\\",\\\"terminalCursor.foreground\\\":\\\"#9893a5\\\",\\\"textBlockQuote.background\\\":\\\"#fffaf3\\\",\\\"textBlockQuote.border\\\":\\\"#6e6a8614\\\",\\\"textCodeBlock.background\\\":\\\"#fffaf3\\\",\\\"textLink.activeForeground\\\":\\\"#907aa9e6\\\",\\\"textLink.foreground\\\":\\\"#907aa9\\\",\\\"textPreformat.foreground\\\":\\\"#ea9d34\\\",\\\"textSeparator.foreground\\\":\\\"#797593\\\",\\\"titleBar.activeBackground\\\":\\\"#faf4ed\\\",\\\"titleBar.activeForeground\\\":\\\"#797593\\\",\\\"titleBar.inactiveBackground\\\":\\\"#fffaf3\\\",\\\"titleBar.inactiveForeground\\\":\\\"#797593\\\",\\\"toolbar.activeBackground\\\":\\\"#6e6a8626\\\",\\\"toolbar.hoverBackground\\\":\\\"#6e6a8614\\\",\\\"tree.indentGuidesStroke\\\":\\\"#797593\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#faf4ed\\\",\\\"welcomePage.background\\\":\\\"#faf4ed\\\",\\\"welcomePage.buttonBackground\\\":\\\"#fffaf3\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#f2e9e1\\\",\\\"widget.shadow\\\":\\\"#fffaf34d\\\",\\\"window.activeBorder\\\":\\\"#fffaf3\\\",\\\"window.inactiveBorder\\\":\\\"#fffaf3\\\"},\\\"displayName\\\":\\\"Ros\u00E9 Pine Dawn\\\",\\\"name\\\":\\\"rose-pine-dawn\\\",\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#9893a5\\\"}},{\\\"scope\\\":[\\\"constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#286983\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"constant.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d7827e\\\"}},{\\\"scope\\\":[\\\"entity.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d7827e\\\"}},{\\\"scope\\\":[\\\"entity.name.section\\\",\\\"entity.name.tag\\\",\\\"entity.name.namespace\\\",\\\"entity.name.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56949f\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\",\\\"entity.other.inherited-class\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#907aa9\\\"}},{\\\"scope\\\":[\\\"invalid\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b4637a\\\"}},{\\\"scope\\\":[\\\"invalid.deprecated\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#797593\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"variable.language.this\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#286983\\\"}},{\\\"scope\\\":[\\\"markup.inserted.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56949f\\\"}},{\\\"scope\\\":[\\\"markup.deleted.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b4637a\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.bold.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.italic.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"meta.diff.range\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#907aa9\\\"}},{\\\"scope\\\":[\\\"meta.tag\\\",\\\"meta.brace\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#575279\\\"}},{\\\"scope\\\":[\\\"meta.import\\\",\\\"meta.export\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#286983\\\"}},{\\\"scope\\\":\\\"meta.directive.vue\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#907aa9\\\"}},{\\\"scope\\\":\\\"meta.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#56949f\\\"}},{\\\"scope\\\":\\\"meta.property-value.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ea9d34\\\"}},{\\\"scope\\\":\\\"meta.tag.other.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#797593\\\"}},{\\\"scope\\\":[\\\"punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#797593\\\"}},{\\\"scope\\\":[\\\"punctuation.accessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#286983\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ea9d34\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9893a5\\\"}},{\\\"scope\\\":[\\\"storage.type\\\",\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#286983\\\"}},{\\\"scope\\\":[\\\"string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ea9d34\\\"}},{\\\"scope\\\":[\\\"support\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#56949f\\\"}},{\\\"scope\\\":[\\\"support.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ea9d34\\\"}},{\\\"scope\\\":[\\\"support.function\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#b4637a\\\"}},{\\\"scope\\\":[\\\"variable\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#d7827e\\\"}},{\\\"scope\\\":[\\\"variable.other\\\",\\\"variable.language\\\",\\\"variable.function\\\",\\\"variable.argument\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#575279\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#907aa9\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: rose-pine-moon */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#e0def4\\\",\\\"activityBar.background\\\":\\\"#232136\\\",\\\"activityBar.dropBorder\\\":\\\"#393552\\\",\\\"activityBar.foreground\\\":\\\"#e0def4\\\",\\\"activityBar.inactiveForeground\\\":\\\"#908caa\\\",\\\"activityBarBadge.background\\\":\\\"#ea9a97\\\",\\\"activityBarBadge.foreground\\\":\\\"#232136\\\",\\\"badge.background\\\":\\\"#ea9a97\\\",\\\"badge.foreground\\\":\\\"#232136\\\",\\\"banner.background\\\":\\\"#2a273f\\\",\\\"banner.foreground\\\":\\\"#e0def4\\\",\\\"banner.iconForeground\\\":\\\"#908caa\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#ea9a97\\\",\\\"breadcrumb.background\\\":\\\"#232136\\\",\\\"breadcrumb.focusForeground\\\":\\\"#908caa\\\",\\\"breadcrumb.foreground\\\":\\\"#6e6a86\\\",\\\"breadcrumbPicker.background\\\":\\\"#2a273f\\\",\\\"button.background\\\":\\\"#ea9a97\\\",\\\"button.foreground\\\":\\\"#232136\\\",\\\"button.hoverBackground\\\":\\\"#ea9a97e6\\\",\\\"button.secondaryBackground\\\":\\\"#2a273f\\\",\\\"button.secondaryForeground\\\":\\\"#e0def4\\\",\\\"button.secondaryHoverBackground\\\":\\\"#393552\\\",\\\"charts.blue\\\":\\\"#9ccfd8\\\",\\\"charts.foreground\\\":\\\"#e0def4\\\",\\\"charts.green\\\":\\\"#3e8fb0\\\",\\\"charts.lines\\\":\\\"#908caa\\\",\\\"charts.orange\\\":\\\"#ea9a97\\\",\\\"charts.purple\\\":\\\"#c4a7e7\\\",\\\"charts.red\\\":\\\"#eb6f92\\\",\\\"charts.yellow\\\":\\\"#f6c177\\\",\\\"checkbox.background\\\":\\\"#2a273f\\\",\\\"checkbox.border\\\":\\\"#817c9c26\\\",\\\"checkbox.foreground\\\":\\\"#e0def4\\\",\\\"debugExceptionWidget.background\\\":\\\"#2a273f\\\",\\\"debugExceptionWidget.border\\\":\\\"#817c9c26\\\",\\\"debugIcon.breakpointCurrentStackframeForeground\\\":\\\"#908caa\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#908caa\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#908caa\\\",\\\"debugIcon.breakpointStackframeForeground\\\":\\\"#908caa\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#908caa\\\",\\\"debugIcon.continueForeground\\\":\\\"#908caa\\\",\\\"debugIcon.disconnectForeground\\\":\\\"#908caa\\\",\\\"debugIcon.pauseForeground\\\":\\\"#908caa\\\",\\\"debugIcon.restartForeground\\\":\\\"#908caa\\\",\\\"debugIcon.startForeground\\\":\\\"#908caa\\\",\\\"debugIcon.stepBackForeground\\\":\\\"#908caa\\\",\\\"debugIcon.stepIntoForeground\\\":\\\"#908caa\\\",\\\"debugIcon.stepOutForeground\\\":\\\"#908caa\\\",\\\"debugIcon.stepOverForeground\\\":\\\"#908caa\\\",\\\"debugIcon.stopForeground\\\":\\\"#eb6f92\\\",\\\"debugToolBar.background\\\":\\\"#2a273f\\\",\\\"debugToolBar.border\\\":\\\"#393552\\\",\\\"descriptionForeground\\\":\\\"#908caa\\\",\\\"diffEditor.border\\\":\\\"#393552\\\",\\\"diffEditor.diagonalFill\\\":\\\"#817c9c4d\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#9ccfd826\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#9ccfd826\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#eb6f9226\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#eb6f9226\\\",\\\"diffEditorOverview.insertedForeground\\\":\\\"#9ccfd880\\\",\\\"diffEditorOverview.removedForeground\\\":\\\"#eb6f9280\\\",\\\"dropdown.background\\\":\\\"#2a273f\\\",\\\"dropdown.border\\\":\\\"#817c9c26\\\",\\\"dropdown.foreground\\\":\\\"#e0def4\\\",\\\"dropdown.listBackground\\\":\\\"#2a273f\\\",\\\"editor.background\\\":\\\"#232136\\\",\\\"editor.findMatchBackground\\\":\\\"#f6c17733\\\",\\\"editor.findMatchBorder\\\":\\\"#f6c17780\\\",\\\"editor.findMatchForeground\\\":\\\"#e0def4\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#817c9c4d\\\",\\\"editor.findMatchHighlightForeground\\\":\\\"#e0def4\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#817c9c4d\\\",\\\"editor.findRangeHighlightBorder\\\":\\\"#0000\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#817c9c26\\\",\\\"editor.foldBackground\\\":\\\"#2a273f\\\",\\\"editor.foreground\\\":\\\"#e0def4\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#0000\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#817c9c14\\\",\\\"editor.inlineValuesBackground\\\":\\\"#0000\\\",\\\"editor.inlineValuesForeground\\\":\\\"#908caa\\\",\\\"editor.lineHighlightBackground\\\":\\\"#817c9c14\\\",\\\"editor.lineHighlightBorder\\\":\\\"#0000\\\",\\\"editor.linkedEditingBackground\\\":\\\"#2a273f\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#817c9c14\\\",\\\"editor.selectionBackground\\\":\\\"#817c9c26\\\",\\\"editor.selectionForeground\\\":\\\"#e0def4\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#817c9c26\\\",\\\"editor.selectionHighlightBorder\\\":\\\"#232136\\\",\\\"editor.snippetFinalTabstopHighlightBackground\\\":\\\"#817c9c26\\\",\\\"editor.snippetFinalTabstopHighlightBorder\\\":\\\"#2a273f\\\",\\\"editor.snippetTabstopHighlightBackground\\\":\\\"#817c9c26\\\",\\\"editor.snippetTabstopHighlightBorder\\\":\\\"#2a273f\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#817c9c26\\\",\\\"editor.symbolHighlightBackground\\\":\\\"#817c9c26\\\",\\\"editor.symbolHighlightBorder\\\":\\\"#0000\\\",\\\"editor.wordHighlightBackground\\\":\\\"#817c9c26\\\",\\\"editor.wordHighlightBorder\\\":\\\"#0000\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#817c9c26\\\",\\\"editor.wordHighlightStrongBorder\\\":\\\"#817c9c26\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#eb6f9280\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#3e8fb080\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#f6c17780\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#9ccfd880\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#ea9a9780\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#c4a7e780\\\",\\\"editorBracketMatch.background\\\":\\\"#0000\\\",\\\"editorBracketMatch.border\\\":\\\"#908caa\\\",\\\"editorBracketPairGuide.activeBackground1\\\":\\\"#3e8fb0\\\",\\\"editorBracketPairGuide.activeBackground2\\\":\\\"#ea9a97\\\",\\\"editorBracketPairGuide.activeBackground3\\\":\\\"#c4a7e7\\\",\\\"editorBracketPairGuide.activeBackground4\\\":\\\"#9ccfd8\\\",\\\"editorBracketPairGuide.activeBackground5\\\":\\\"#f6c177\\\",\\\"editorBracketPairGuide.activeBackground6\\\":\\\"#eb6f92\\\",\\\"editorBracketPairGuide.background1\\\":\\\"#3e8fb080\\\",\\\"editorBracketPairGuide.background2\\\":\\\"#ea9a9780\\\",\\\"editorBracketPairGuide.background3\\\":\\\"#c4a7e780\\\",\\\"editorBracketPairGuide.background4\\\":\\\"#9ccfd880\\\",\\\"editorBracketPairGuide.background5\\\":\\\"#f6c17780\\\",\\\"editorBracketPairGuide.background6\\\":\\\"#eb6f9280\\\",\\\"editorCodeLens.foreground\\\":\\\"#ea9a97\\\",\\\"editorCursor.background\\\":\\\"#e0def4\\\",\\\"editorCursor.foreground\\\":\\\"#6e6a86\\\",\\\"editorError.border\\\":\\\"#0000\\\",\\\"editorError.foreground\\\":\\\"#eb6f92\\\",\\\"editorGhostText.foreground\\\":\\\"#908caa\\\",\\\"editorGroup.border\\\":\\\"#0000\\\",\\\"editorGroup.dropBackground\\\":\\\"#2a273f\\\",\\\"editorGroup.emptyBackground\\\":\\\"#0000\\\",\\\"editorGroup.focusedEmptyBorder\\\":\\\"#0000\\\",\\\"editorGroupHeader.noTabsBackground\\\":\\\"#0000\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#0000\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#0000\\\",\\\"editorGutter.addedBackground\\\":\\\"#9ccfd8\\\",\\\"editorGutter.background\\\":\\\"#232136\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#393552\\\",\\\"editorGutter.deletedBackground\\\":\\\"#eb6f92\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#c4a7e7\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#ea9a97\\\",\\\"editorHint.border\\\":\\\"#0000\\\",\\\"editorHint.foreground\\\":\\\"#908caa\\\",\\\"editorHoverWidget.background\\\":\\\"#2a273f\\\",\\\"editorHoverWidget.border\\\":\\\"#6e6a8680\\\",\\\"editorHoverWidget.foreground\\\":\\\"#908caa\\\",\\\"editorHoverWidget.highlightForeground\\\":\\\"#e0def4\\\",\\\"editorHoverWidget.statusBarBackground\\\":\\\"#0000\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#6e6a86\\\",\\\"editorIndentGuide.background\\\":\\\"#817c9c4d\\\",\\\"editorInfo.border\\\":\\\"#393552\\\",\\\"editorInfo.foreground\\\":\\\"#9ccfd8\\\",\\\"editorInlayHint.background\\\":\\\"#393552\\\",\\\"editorInlayHint.foreground\\\":\\\"#908caa\\\",\\\"editorInlayHint.parameterBackground\\\":\\\"#393552\\\",\\\"editorInlayHint.parameterForeground\\\":\\\"#c4a7e7\\\",\\\"editorInlayHint.typeBackground\\\":\\\"#393552\\\",\\\"editorInlayHint.typeForeground\\\":\\\"#9ccfd8\\\",\\\"editorLightBulb.foreground\\\":\\\"#3e8fb0\\\",\\\"editorLightBulbAutoFix.foreground\\\":\\\"#ea9a97\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#e0def4\\\",\\\"editorLineNumber.foreground\\\":\\\"#908caa\\\",\\\"editorLink.activeForeground\\\":\\\"#ea9a97\\\",\\\"editorMarkerNavigation.background\\\":\\\"#2a273f\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#2a273f\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#2a273f\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#2a273f\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#9ccfd880\\\",\\\"editorOverviewRuler.background\\\":\\\"#232136\\\",\\\"editorOverviewRuler.border\\\":\\\"#817c9c4d\\\",\\\"editorOverviewRuler.bracketMatchForeground\\\":\\\"#908caa\\\",\\\"editorOverviewRuler.commentForeground\\\":\\\"#908caa80\\\",\\\"editorOverviewRuler.commentUnresolvedForeground\\\":\\\"#f6c17780\\\",\\\"editorOverviewRuler.commonContentForeground\\\":\\\"#817c9c14\\\",\\\"editorOverviewRuler.currentContentForeground\\\":\\\"#817c9c26\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#eb6f9280\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#eb6f9280\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#817c9c4d\\\",\\\"editorOverviewRuler.incomingContentForeground\\\":\\\"#c4a7e780\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#9ccfd880\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#ea9a9780\\\",\\\"editorOverviewRuler.rangeHighlightForeground\\\":\\\"#817c9c4d\\\",\\\"editorOverviewRuler.selectionHighlightForeground\\\":\\\"#817c9c4d\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#f6c17780\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#817c9c26\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#817c9c4d\\\",\\\"editorPane.background\\\":\\\"#0000\\\",\\\"editorRuler.foreground\\\":\\\"#817c9c4d\\\",\\\"editorSuggestWidget.background\\\":\\\"#2a273f\\\",\\\"editorSuggestWidget.border\\\":\\\"#0000\\\",\\\"editorSuggestWidget.focusHighlightForeground\\\":\\\"#ea9a97\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#908caa\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#ea9a97\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#817c9c26\\\",\\\"editorSuggestWidget.selectedForeground\\\":\\\"#e0def4\\\",\\\"editorSuggestWidget.selectedIconForeground\\\":\\\"#e0def4\\\",\\\"editorUnnecessaryCode.border\\\":\\\"#0000\\\",\\\"editorUnnecessaryCode.opacity\\\":\\\"#e0def480\\\",\\\"editorWarning.border\\\":\\\"#0000\\\",\\\"editorWarning.foreground\\\":\\\"#f6c177\\\",\\\"editorWhitespace.foreground\\\":\\\"#6e6a86\\\",\\\"editorWidget.background\\\":\\\"#2a273f\\\",\\\"editorWidget.border\\\":\\\"#393552\\\",\\\"editorWidget.foreground\\\":\\\"#908caa\\\",\\\"editorWidget.resizeBorder\\\":\\\"#6e6a86\\\",\\\"errorForeground\\\":\\\"#eb6f92\\\",\\\"extensionBadge.remoteBackground\\\":\\\"#c4a7e7\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#232136\\\",\\\"extensionButton.prominentBackground\\\":\\\"#ea9a97\\\",\\\"extensionButton.prominentForeground\\\":\\\"#232136\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#ea9a97e6\\\",\\\"extensionIcon.preReleaseForeground\\\":\\\"#3e8fb0\\\",\\\"extensionIcon.starForeground\\\":\\\"#ea9a97\\\",\\\"extensionIcon.verifiedForeground\\\":\\\"#c4a7e7\\\",\\\"focusBorder\\\":\\\"#817c9c26\\\",\\\"foreground\\\":\\\"#e0def4\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#9ccfd8\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#eb6f92\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#908caa\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#6e6a86\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#ea9a97\\\",\\\"gitDecoration.renamedResourceForeground\\\":\\\"#3e8fb0\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#eb6f92\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#c4a7e7\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#f6c177\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#f6c177\\\",\\\"icon.foreground\\\":\\\"#908caa\\\",\\\"input.background\\\":\\\"#39355280\\\",\\\"input.border\\\":\\\"#817c9c26\\\",\\\"input.foreground\\\":\\\"#e0def4\\\",\\\"input.placeholderForeground\\\":\\\"#908caa\\\",\\\"inputOption.activeBackground\\\":\\\"#ea9a9726\\\",\\\"inputOption.activeBorder\\\":\\\"#0000\\\",\\\"inputOption.activeForeground\\\":\\\"#ea9a97\\\",\\\"inputValidation.errorBackground\\\":\\\"#2a273f\\\",\\\"inputValidation.errorBorder\\\":\\\"#817c9c4d\\\",\\\"inputValidation.errorForeground\\\":\\\"#eb6f92\\\",\\\"inputValidation.infoBackground\\\":\\\"#2a273f\\\",\\\"inputValidation.infoBorder\\\":\\\"#817c9c4d\\\",\\\"inputValidation.infoForeground\\\":\\\"#9ccfd8\\\",\\\"inputValidation.warningBackground\\\":\\\"#2a273f\\\",\\\"inputValidation.warningBorder\\\":\\\"#817c9c4d\\\",\\\"inputValidation.warningForeground\\\":\\\"#9ccfd880\\\",\\\"keybindingLabel.background\\\":\\\"#393552\\\",\\\"keybindingLabel.border\\\":\\\"#817c9c4d\\\",\\\"keybindingLabel.bottomBorder\\\":\\\"#817c9c4d\\\",\\\"keybindingLabel.foreground\\\":\\\"#c4a7e7\\\",\\\"keybindingTable.headerBackground\\\":\\\"#393552\\\",\\\"keybindingTable.rowsBackground\\\":\\\"#2a273f\\\",\\\"list.activeSelectionBackground\\\":\\\"#817c9c26\\\",\\\"list.activeSelectionForeground\\\":\\\"#e0def4\\\",\\\"list.deemphasizedForeground\\\":\\\"#908caa\\\",\\\"list.dropBackground\\\":\\\"#2a273f\\\",\\\"list.errorForeground\\\":\\\"#eb6f92\\\",\\\"list.filterMatchBackground\\\":\\\"#2a273f\\\",\\\"list.filterMatchBorder\\\":\\\"#ea9a97\\\",\\\"list.focusBackground\\\":\\\"#817c9c4d\\\",\\\"list.focusForeground\\\":\\\"#e0def4\\\",\\\"list.focusOutline\\\":\\\"#817c9c26\\\",\\\"list.highlightForeground\\\":\\\"#ea9a97\\\",\\\"list.hoverBackground\\\":\\\"#817c9c14\\\",\\\"list.hoverForeground\\\":\\\"#e0def4\\\",\\\"list.inactiveFocusBackground\\\":\\\"#817c9c14\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#2a273f\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#e0def4\\\",\\\"list.invalidItemForeground\\\":\\\"#eb6f92\\\",\\\"list.warningForeground\\\":\\\"#f6c177\\\",\\\"listFilterWidget.background\\\":\\\"#2a273f\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#eb6f92\\\",\\\"listFilterWidget.outline\\\":\\\"#393552\\\",\\\"menu.background\\\":\\\"#2a273f\\\",\\\"menu.border\\\":\\\"#817c9c14\\\",\\\"menu.foreground\\\":\\\"#e0def4\\\",\\\"menu.selectionBackground\\\":\\\"#817c9c26\\\",\\\"menu.selectionBorder\\\":\\\"#393552\\\",\\\"menu.selectionForeground\\\":\\\"#e0def4\\\",\\\"menu.separatorBackground\\\":\\\"#817c9c4d\\\",\\\"menubar.selectionBackground\\\":\\\"#817c9c26\\\",\\\"menubar.selectionBorder\\\":\\\"#817c9c14\\\",\\\"menubar.selectionForeground\\\":\\\"#e0def4\\\",\\\"merge.border\\\":\\\"#393552\\\",\\\"merge.commonContentBackground\\\":\\\"#817c9c26\\\",\\\"merge.commonHeaderBackground\\\":\\\"#817c9c26\\\",\\\"merge.currentContentBackground\\\":\\\"#f6c17780\\\",\\\"merge.currentHeaderBackground\\\":\\\"#f6c17780\\\",\\\"merge.incomingContentBackground\\\":\\\"#9ccfd880\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#9ccfd880\\\",\\\"minimap.background\\\":\\\"#2a273f\\\",\\\"minimap.errorHighlight\\\":\\\"#eb6f9280\\\",\\\"minimap.findMatchHighlight\\\":\\\"#817c9c26\\\",\\\"minimap.selectionHighlight\\\":\\\"#817c9c26\\\",\\\"minimap.warningHighlight\\\":\\\"#f6c17780\\\",\\\"minimapGutter.addedBackground\\\":\\\"#9ccfd8\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#eb6f92\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#ea9a97\\\",\\\"minimapSlider.activeBackground\\\":\\\"#817c9c4d\\\",\\\"minimapSlider.background\\\":\\\"#817c9c26\\\",\\\"minimapSlider.hoverBackground\\\":\\\"#817c9c26\\\",\\\"notebook.cellBorderColor\\\":\\\"#9ccfd880\\\",\\\"notebook.cellEditorBackground\\\":\\\"#2a273f\\\",\\\"notebook.cellHoverBackground\\\":\\\"#39355280\\\",\\\"notebook.focusedCellBackground\\\":\\\"#817c9c14\\\",\\\"notebook.focusedCellBorder\\\":\\\"#9ccfd8\\\",\\\"notebook.outputContainerBackgroundColor\\\":\\\"#817c9c14\\\",\\\"notificationCenter.border\\\":\\\"#817c9c26\\\",\\\"notificationCenterHeader.background\\\":\\\"#2a273f\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#908caa\\\",\\\"notificationLink.foreground\\\":\\\"#c4a7e7\\\",\\\"notificationToast.border\\\":\\\"#817c9c26\\\",\\\"notifications.background\\\":\\\"#2a273f\\\",\\\"notifications.border\\\":\\\"#817c9c26\\\",\\\"notifications.foreground\\\":\\\"#e0def4\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#eb6f92\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#9ccfd8\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#f6c177\\\",\\\"panel.background\\\":\\\"#2a273f\\\",\\\"panel.border\\\":\\\"#0000\\\",\\\"panel.dropBorder\\\":\\\"#393552\\\",\\\"panelInput.border\\\":\\\"#2a273f\\\",\\\"panelSection.dropBackground\\\":\\\"#817c9c26\\\",\\\"panelSectionHeader.background\\\":\\\"#2a273f\\\",\\\"panelSectionHeader.foreground\\\":\\\"#e0def4\\\",\\\"panelTitle.activeBorder\\\":\\\"#817c9c4d\\\",\\\"panelTitle.activeForeground\\\":\\\"#e0def4\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#908caa\\\",\\\"peekView.border\\\":\\\"#393552\\\",\\\"peekViewEditor.background\\\":\\\"#2a273f\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#817c9c4d\\\",\\\"peekViewResult.background\\\":\\\"#2a273f\\\",\\\"peekViewResult.fileForeground\\\":\\\"#908caa\\\",\\\"peekViewResult.lineForeground\\\":\\\"#908caa\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#817c9c4d\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#817c9c26\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#e0def4\\\",\\\"peekViewTitle.background\\\":\\\"#393552\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#908caa\\\",\\\"pickerGroup.border\\\":\\\"#817c9c4d\\\",\\\"pickerGroup.foreground\\\":\\\"#c4a7e7\\\",\\\"ports.iconRunningProcessForeground\\\":\\\"#ea9a97\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#eb6f92\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#9ccfd8\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#f6c177\\\",\\\"progressBar.background\\\":\\\"#ea9a97\\\",\\\"quickInput.background\\\":\\\"#2a273f\\\",\\\"quickInput.foreground\\\":\\\"#908caa\\\",\\\"quickInputList.focusBackground\\\":\\\"#817c9c26\\\",\\\"quickInputList.focusForeground\\\":\\\"#e0def4\\\",\\\"quickInputList.focusIconForeground\\\":\\\"#e0def4\\\",\\\"scrollbar.shadow\\\":\\\"#2a273f4d\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#3e8fb080\\\",\\\"scrollbarSlider.background\\\":\\\"#817c9c26\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#817c9c4d\\\",\\\"searchEditor.findMatchBackground\\\":\\\"#817c9c26\\\",\\\"selection.background\\\":\\\"#817c9c4d\\\",\\\"settings.focusedRowBackground\\\":\\\"#2a273f\\\",\\\"settings.focusedRowBorder\\\":\\\"#817c9c26\\\",\\\"settings.headerForeground\\\":\\\"#e0def4\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#ea9a97\\\",\\\"settings.rowHoverBackground\\\":\\\"#2a273f\\\",\\\"sideBar.background\\\":\\\"#232136\\\",\\\"sideBar.dropBackground\\\":\\\"#2a273f\\\",\\\"sideBar.foreground\\\":\\\"#908caa\\\",\\\"sideBarSectionHeader.background\\\":\\\"#0000\\\",\\\"sideBarSectionHeader.border\\\":\\\"#817c9c26\\\",\\\"statusBar.background\\\":\\\"#232136\\\",\\\"statusBar.debuggingBackground\\\":\\\"#c4a7e7\\\",\\\"statusBar.debuggingForeground\\\":\\\"#232136\\\",\\\"statusBar.foreground\\\":\\\"#908caa\\\",\\\"statusBar.noFolderBackground\\\":\\\"#232136\\\",\\\"statusBar.noFolderForeground\\\":\\\"#908caa\\\",\\\"statusBarItem.activeBackground\\\":\\\"#817c9c4d\\\",\\\"statusBarItem.errorBackground\\\":\\\"#232136\\\",\\\"statusBarItem.errorForeground\\\":\\\"#eb6f92\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#817c9c26\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#393552\\\",\\\"statusBarItem.prominentForeground\\\":\\\"#e0def4\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#817c9c26\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#232136\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#f6c177\\\",\\\"symbolIcon.arrayForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.classForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.colorForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.constantForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.constructorForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.enumeratorForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.enumeratorMemberForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.eventForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.fieldForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.fileForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.folderForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.functionForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.interfaceForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.keyForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.keywordForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.methodForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.moduleForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.namespaceForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.nullForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.numberForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.objectForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.operatorForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.packageForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.propertyForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.referenceForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.snippetForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.stringForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.structForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.textForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.typeParameterForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.unitForeground\\\":\\\"#908caa\\\",\\\"symbolIcon.variableForeground\\\":\\\"#908caa\\\",\\\"tab.activeBackground\\\":\\\"#817c9c14\\\",\\\"tab.activeForeground\\\":\\\"#e0def4\\\",\\\"tab.activeModifiedBorder\\\":\\\"#9ccfd8\\\",\\\"tab.border\\\":\\\"#0000\\\",\\\"tab.hoverBackground\\\":\\\"#817c9c26\\\",\\\"tab.inactiveBackground\\\":\\\"#0000\\\",\\\"tab.inactiveForeground\\\":\\\"#908caa\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#9ccfd880\\\",\\\"tab.lastPinnedBorder\\\":\\\"#6e6a86\\\",\\\"tab.unfocusedActiveBackground\\\":\\\"#0000\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#0000\\\",\\\"tab.unfocusedInactiveBackground\\\":\\\"#0000\\\",\\\"tab.unfocusedInactiveModifiedBorder\\\":\\\"#9ccfd880\\\",\\\"terminal.ansiBlack\\\":\\\"#393552\\\",\\\"terminal.ansiBlue\\\":\\\"#9ccfd8\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#908caa\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#9ccfd8\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#ea9a97\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#3e8fb0\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#c4a7e7\\\",\\\"terminal.ansiBrightRed\\\":\\\"#eb6f92\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#e0def4\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#f6c177\\\",\\\"terminal.ansiCyan\\\":\\\"#ea9a97\\\",\\\"terminal.ansiGreen\\\":\\\"#3e8fb0\\\",\\\"terminal.ansiMagenta\\\":\\\"#c4a7e7\\\",\\\"terminal.ansiRed\\\":\\\"#eb6f92\\\",\\\"terminal.ansiWhite\\\":\\\"#e0def4\\\",\\\"terminal.ansiYellow\\\":\\\"#f6c177\\\",\\\"terminal.dropBackground\\\":\\\"#817c9c26\\\",\\\"terminal.foreground\\\":\\\"#e0def4\\\",\\\"terminal.selectionBackground\\\":\\\"#817c9c26\\\",\\\"terminal.tab.activeBorder\\\":\\\"#e0def4\\\",\\\"terminalCursor.background\\\":\\\"#e0def4\\\",\\\"terminalCursor.foreground\\\":\\\"#6e6a86\\\",\\\"textBlockQuote.background\\\":\\\"#2a273f\\\",\\\"textBlockQuote.border\\\":\\\"#817c9c26\\\",\\\"textCodeBlock.background\\\":\\\"#2a273f\\\",\\\"textLink.activeForeground\\\":\\\"#c4a7e7e6\\\",\\\"textLink.foreground\\\":\\\"#c4a7e7\\\",\\\"textPreformat.foreground\\\":\\\"#f6c177\\\",\\\"textSeparator.foreground\\\":\\\"#908caa\\\",\\\"titleBar.activeBackground\\\":\\\"#232136\\\",\\\"titleBar.activeForeground\\\":\\\"#908caa\\\",\\\"titleBar.inactiveBackground\\\":\\\"#2a273f\\\",\\\"titleBar.inactiveForeground\\\":\\\"#908caa\\\",\\\"toolbar.activeBackground\\\":\\\"#817c9c4d\\\",\\\"toolbar.hoverBackground\\\":\\\"#817c9c26\\\",\\\"tree.indentGuidesStroke\\\":\\\"#908caa\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#232136\\\",\\\"welcomePage.background\\\":\\\"#232136\\\",\\\"welcomePage.buttonBackground\\\":\\\"#2a273f\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#393552\\\",\\\"widget.shadow\\\":\\\"#2a273f4d\\\",\\\"window.activeBorder\\\":\\\"#2a273f\\\",\\\"window.inactiveBorder\\\":\\\"#2a273f\\\"},\\\"displayName\\\":\\\"Ros\u00E9 Pine Moon\\\",\\\"name\\\":\\\"rose-pine-moon\\\",\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#6e6a86\\\"}},{\\\"scope\\\":[\\\"constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#3e8fb0\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"constant.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ea9a97\\\"}},{\\\"scope\\\":[\\\"entity.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ea9a97\\\"}},{\\\"scope\\\":[\\\"entity.name.section\\\",\\\"entity.name.tag\\\",\\\"entity.name.namespace\\\",\\\"entity.name.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9ccfd8\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\",\\\"entity.other.inherited-class\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c4a7e7\\\"}},{\\\"scope\\\":[\\\"invalid\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eb6f92\\\"}},{\\\"scope\\\":[\\\"invalid.deprecated\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#908caa\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"variable.language.this\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#3e8fb0\\\"}},{\\\"scope\\\":[\\\"markup.inserted.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9ccfd8\\\"}},{\\\"scope\\\":[\\\"markup.deleted.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#eb6f92\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.bold.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.italic.markdown\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"meta.diff.range\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c4a7e7\\\"}},{\\\"scope\\\":[\\\"meta.tag\\\",\\\"meta.brace\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e0def4\\\"}},{\\\"scope\\\":[\\\"meta.import\\\",\\\"meta.export\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#3e8fb0\\\"}},{\\\"scope\\\":\\\"meta.directive.vue\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c4a7e7\\\"}},{\\\"scope\\\":\\\"meta.property-name.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9ccfd8\\\"}},{\\\"scope\\\":\\\"meta.property-value.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f6c177\\\"}},{\\\"scope\\\":\\\"meta.tag.other.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#908caa\\\"}},{\\\"scope\\\":[\\\"punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#908caa\\\"}},{\\\"scope\\\":[\\\"punctuation.accessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#3e8fb0\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6c177\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6e6a86\\\"}},{\\\"scope\\\":[\\\"storage.type\\\",\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#3e8fb0\\\"}},{\\\"scope\\\":[\\\"string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6c177\\\"}},{\\\"scope\\\":[\\\"support\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9ccfd8\\\"}},{\\\"scope\\\":[\\\"support.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f6c177\\\"}},{\\\"scope\\\":[\\\"support.function\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#eb6f92\\\"}},{\\\"scope\\\":[\\\"variable\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ea9a97\\\"}},{\\\"scope\\\":[\\\"variable.other\\\",\\\"variable.language\\\",\\\"variable.function\\\",\\\"variable.argument\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e0def4\\\"}},{\\\"scope\\\":[\\\"variable.parameter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c4a7e7\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: slack-dark */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#222222\\\",\\\"activityBarBadge.background\\\":\\\"#1D978D\\\",\\\"button.background\\\":\\\"#0077B5\\\",\\\"button.foreground\\\":\\\"#FFF\\\",\\\"button.hoverBackground\\\":\\\"#005076\\\",\\\"debugExceptionWidget.background\\\":\\\"#141414\\\",\\\"debugExceptionWidget.border\\\":\\\"#FFF\\\",\\\"debugToolBar.background\\\":\\\"#141414\\\",\\\"editor.background\\\":\\\"#222222\\\",\\\"editor.foreground\\\":\\\"#E6E6E6\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#3a3d41\\\",\\\"editor.lineHighlightBackground\\\":\\\"#141414\\\",\\\"editor.lineHighlightBorder\\\":\\\"#141414\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#add6ff26\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#707070\\\",\\\"editorIndentGuide.background\\\":\\\"#404040\\\",\\\"editorLink.activeForeground\\\":\\\"#0077B5\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#0077B5\\\",\\\"extensionButton.prominentBackground\\\":\\\"#0077B5\\\",\\\"extensionButton.prominentForeground\\\":\\\"#FFF\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#005076\\\",\\\"focusBorder\\\":\\\"#0077B5\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#ECB22E\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#FFF\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#FFF\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#877583\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#ECB22E\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#ECB22E\\\",\\\"input.placeholderForeground\\\":\\\"#7A7A7A\\\",\\\"list.activeSelectionBackground\\\":\\\"#222222\\\",\\\"list.dropBackground\\\":\\\"#383b3d\\\",\\\"list.focusBackground\\\":\\\"#0077B5\\\",\\\"list.hoverBackground\\\":\\\"#222222\\\",\\\"menu.background\\\":\\\"#252526\\\",\\\"menu.foreground\\\":\\\"#E6E6E6\\\",\\\"notificationLink.foreground\\\":\\\"#0077B5\\\",\\\"settings.numberInputBackground\\\":\\\"#292929\\\",\\\"settings.textInputBackground\\\":\\\"#292929\\\",\\\"sideBarSectionHeader.background\\\":\\\"#222222\\\",\\\"sideBarTitle.foreground\\\":\\\"#E6E6E6\\\",\\\"statusBar.background\\\":\\\"#222222\\\",\\\"statusBar.debuggingBackground\\\":\\\"#1D978D\\\",\\\"statusBar.noFolderBackground\\\":\\\"#141414\\\",\\\"textLink.activeForeground\\\":\\\"#0077B5\\\",\\\"textLink.foreground\\\":\\\"#0077B5\\\",\\\"titleBar.activeBackground\\\":\\\"#222222\\\",\\\"titleBar.activeForeground\\\":\\\"#E6E6E6\\\",\\\"titleBar.inactiveBackground\\\":\\\"#222222\\\",\\\"titleBar.inactiveForeground\\\":\\\"#7A7A7A\\\"},\\\"displayName\\\":\\\"Slack Dark\\\",\\\"name\\\":\\\"slack-dark\\\",\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"meta.embedded\\\",\\\"source.groovy.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D4D4D4\\\"}},{\\\"scope\\\":\\\"emphasis\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"strong\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#000080\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6A9955\\\"}},{\\\"scope\\\":\\\"constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b5cea8\\\"}},{\\\"scope\\\":\\\"constant.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#646695\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"entity.name.tag.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d7ba7d\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9cdcfe\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.class.css\\\",\\\"entity.other.attribute-name.class.mixin.css\\\",\\\"entity.other.attribute-name.id.css\\\",\\\"entity.other.attribute-name.parent-selector.css\\\",\\\"entity.other.attribute-name.pseudo-class.css\\\",\\\"entity.other.attribute-name.pseudo-element.css\\\",\\\"source.css.less entity.other.attribute-name.id\\\",\\\"entity.other.attribute-name.attribute.scss\\\",\\\"entity.other.attribute-name.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d7ba7d\\\"}},{\\\"scope\\\":\\\"invalid\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f44747\\\"}},{\\\"scope\\\":\\\"markup.underline\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b5cea8\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"markup.changed\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"punctuation.definition.quote.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6A9955\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6796e6\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#808080\\\"}},{\\\"scope\\\":\\\"meta.preprocessor\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"meta.preprocessor.string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"meta.preprocessor.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b5cea8\\\"}},{\\\"scope\\\":\\\"meta.structure.dictionary.key.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9cdcfe\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"storage\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"storage.modifier\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"string.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"string.value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ce9178\\\"}},{\\\"scope\\\":\\\"string.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d16969\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.template-expression.begin\\\",\\\"punctuation.definition.template-expression.end\\\",\\\"punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":[\\\"meta.template.expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d4d4d4\\\"}},{\\\"scope\\\":[\\\"support.type.vendored.property-name\\\",\\\"support.type.property-name\\\",\\\"variable.css\\\",\\\"variable.scss\\\",\\\"variable.other.less\\\",\\\"source.coffee.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9cdcfe\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"keyword.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"keyword.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d4d4d4\\\"}},{\\\"scope\\\":[\\\"keyword.operator.new\\\",\\\"keyword.operator.expression\\\",\\\"keyword.operator.cast\\\",\\\"keyword.operator.sizeof\\\",\\\"keyword.operator.instanceof\\\",\\\"keyword.operator.logical.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"keyword.other.unit\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b5cea8\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded.begin.php\\\",\\\"punctuation.section.embedded.end.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"support.function.git-rebase\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9cdcfe\\\"}},{\\\"scope\\\":\\\"constant.sha.git-rebase\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b5cea8\\\"}},{\\\"scope\\\":[\\\"storage.modifier.import.java\\\",\\\"variable.language.wildcard.java\\\",\\\"storage.modifier.package.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d4d4d4\\\"}},{\\\"scope\\\":\\\"variable.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"support.function\\\",\\\"support.constant.handlebars\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCDCAA\\\"}},{\\\"scope\\\":[\\\"meta.return-type\\\",\\\"support.class\\\",\\\"support.type\\\",\\\"entity.name.type\\\",\\\"entity.name.class\\\",\\\"storage.type.numeric.go\\\",\\\"storage.type.byte.go\\\",\\\"storage.type.boolean.go\\\",\\\"storage.type.string.go\\\",\\\"storage.type.uintptr.go\\\",\\\"storage.type.error.go\\\",\\\"storage.type.rune.go\\\",\\\"storage.type.cs\\\",\\\"storage.type.generic.cs\\\",\\\"storage.type.modifier.cs\\\",\\\"storage.type.variable.cs\\\",\\\"storage.type.annotation.java\\\",\\\"storage.type.generic.java\\\",\\\"storage.type.java\\\",\\\"storage.type.object.array.java\\\",\\\"storage.type.primitive.array.java\\\",\\\"storage.type.primitive.java\\\",\\\"storage.type.token.java\\\",\\\"storage.type.groovy\\\",\\\"storage.type.annotation.groovy\\\",\\\"storage.type.parameters.groovy\\\",\\\"storage.type.generic.groovy\\\",\\\"storage.type.object.array.groovy\\\",\\\"storage.type.primitive.array.groovy\\\",\\\"storage.type.primitive.groovy\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4EC9B0\\\"}},{\\\"scope\\\":[\\\"meta.type.cast.expr\\\",\\\"meta.type.new.expr\\\",\\\"support.constant.math\\\",\\\"support.constant.dom\\\",\\\"support.constant.json\\\",\\\"entity.other.inherited-class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4EC9B0\\\"}},{\\\"scope\\\":\\\"keyword.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C586C0\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"meta.definition.variable.name\\\",\\\"support.variable\\\",\\\"entity.name.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9CDCFE\\\"}},{\\\"scope\\\":[\\\"meta.object-literal.key\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9CDCFE\\\"}},{\\\"scope\\\":[\\\"support.constant.property-value\\\",\\\"support.constant.font-name\\\",\\\"support.constant.media-type\\\",\\\"support.constant.media\\\",\\\"constant.other.color.rgb-value\\\",\\\"constant.other.rgb-value\\\",\\\"support.constant.color\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CE9178\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.group.regexp\\\",\\\"punctuation.definition.group.assertion.regexp\\\",\\\"punctuation.definition.character-class.regexp\\\",\\\"punctuation.character.set.begin.regexp\\\",\\\"punctuation.character.set.end.regexp\\\",\\\"keyword.operator.negation.regexp\\\",\\\"support.other.parenthesis.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CE9178\\\"}},{\\\"scope\\\":[\\\"constant.character.character-class.regexp\\\",\\\"constant.other.character-class.set.regexp\\\",\\\"constant.other.character-class.regexp\\\",\\\"constant.character.set.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d16969\\\"}},{\\\"scope\\\":[\\\"keyword.operator.or.regexp\\\",\\\"keyword.control.anchor.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DCDCAA\\\"}},{\\\"scope\\\":\\\"keyword.operator.quantifier.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d7ba7d\\\"}},{\\\"scope\\\":\\\"constant.character\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#569cd6\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d7ba7d\\\"}},{\\\"scope\\\":\\\"token.info-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6796e6\\\"}},{\\\"scope\\\":\\\"token.warn-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#cd9731\\\"}},{\\\"scope\\\":\\\"token.error-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f44747\\\"}},{\\\"scope\\\":\\\"token.debug-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b267e6\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: slack-ochin */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#161F26\\\",\\\"activityBar.dropBackground\\\":\\\"#FFF\\\",\\\"activityBar.foreground\\\":\\\"#FFF\\\",\\\"activityBarBadge.background\\\":\\\"#8AE773\\\",\\\"activityBarBadge.foreground\\\":\\\"#FFF\\\",\\\"badge.background\\\":\\\"#8AE773\\\",\\\"breadcrumb.focusForeground\\\":\\\"#475663\\\",\\\"breadcrumb.foreground\\\":\\\"#161F26\\\",\\\"button.background\\\":\\\"#475663\\\",\\\"button.foreground\\\":\\\"#FFF\\\",\\\"button.hoverBackground\\\":\\\"#161F26\\\",\\\"debugExceptionWidget.background\\\":\\\"#AED4FB\\\",\\\"debugExceptionWidget.border\\\":\\\"#161F26\\\",\\\"debugToolBar.background\\\":\\\"#161F26\\\",\\\"dropdown.background\\\":\\\"#FFF\\\",\\\"dropdown.border\\\":\\\"#DCDEDF\\\",\\\"dropdown.foreground\\\":\\\"#DCDEDF\\\",\\\"dropdown.listBackground\\\":\\\"#FFF\\\",\\\"editor.background\\\":\\\"#FFF\\\",\\\"editor.findMatchBackground\\\":\\\"#AED4FB\\\",\\\"editor.foreground\\\":\\\"#000\\\",\\\"editor.lineHighlightBackground\\\":\\\"#EEEEEE\\\",\\\"editor.selectionBackground\\\":\\\"#AED4FB\\\",\\\"editor.wordHighlightBackground\\\":\\\"#AED4FB\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#EEEEEE\\\",\\\"editorActiveLineNumber.foreground\\\":\\\"#475663\\\",\\\"editorGroup.emptyBackground\\\":\\\"#2D3E4C\\\",\\\"editorGroup.focusedEmptyBorder\\\":\\\"#2D3E4C\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#2D3E4C\\\",\\\"editorHint.border\\\":\\\"#F9F9F9\\\",\\\"editorHint.foreground\\\":\\\"#F9F9F9\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#dbdbdb\\\",\\\"editorIndentGuide.background\\\":\\\"#F3F3F3\\\",\\\"editorLineNumber.foreground\\\":\\\"#b9b9b9\\\",\\\"editorMarkerNavigation.background\\\":\\\"#F9F9F9\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#F44C5E\\\",\\\"editorMarkerNavigationInfo.background\\\":\\\"#6182b8\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#F6B555\\\",\\\"editorPane.background\\\":\\\"#2D3E4C\\\",\\\"editorSuggestWidget.foreground\\\":\\\"#2D3E4C\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#2D3E4C\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#b9b9b9\\\",\\\"editorWidget.background\\\":\\\"#F9F9F9\\\",\\\"editorWidget.border\\\":\\\"#dbdbdb\\\",\\\"extensionButton.prominentBackground\\\":\\\"#475663\\\",\\\"extensionButton.prominentForeground\\\":\\\"#F6F6F6\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#161F26\\\",\\\"focusBorder\\\":\\\"#161F26\\\",\\\"foreground\\\":\\\"#616161\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#ECB22E\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#FFF\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#FFF\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#877583\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#ECB22E\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#ECB22E\\\",\\\"input.background\\\":\\\"#FFF\\\",\\\"input.border\\\":\\\"#161F26\\\",\\\"input.foreground\\\":\\\"#000\\\",\\\"input.placeholderForeground\\\":\\\"#a0a0a0\\\",\\\"inputOption.activeBorder\\\":\\\"#3E313C\\\",\\\"inputValidation.errorBackground\\\":\\\"#F44C5E\\\",\\\"inputValidation.errorForeground\\\":\\\"#FFF\\\",\\\"inputValidation.infoBackground\\\":\\\"#6182b8\\\",\\\"inputValidation.infoForeground\\\":\\\"#FFF\\\",\\\"inputValidation.warningBackground\\\":\\\"#F6B555\\\",\\\"inputValidation.warningForeground\\\":\\\"#000\\\",\\\"list.activeSelectionBackground\\\":\\\"#5899C5\\\",\\\"list.activeSelectionForeground\\\":\\\"#fff\\\",\\\"list.focusBackground\\\":\\\"#d5e1ea\\\",\\\"list.focusForeground\\\":\\\"#fff\\\",\\\"list.highlightForeground\\\":\\\"#2D3E4C\\\",\\\"list.hoverBackground\\\":\\\"#d5e1ea\\\",\\\"list.hoverForeground\\\":\\\"#fff\\\",\\\"list.inactiveFocusBackground\\\":\\\"#161F26\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#5899C5\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#fff\\\",\\\"list.invalidItemForeground\\\":\\\"#fff\\\",\\\"menu.background\\\":\\\"#161F26\\\",\\\"menu.foreground\\\":\\\"#F9FAFA\\\",\\\"menu.separatorBackground\\\":\\\"#F9FAFA\\\",\\\"notificationCenter.border\\\":\\\"#161F26\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#FFF\\\",\\\"notificationLink.foreground\\\":\\\"#FFF\\\",\\\"notificationToast.border\\\":\\\"#161F26\\\",\\\"notifications.background\\\":\\\"#161F26\\\",\\\"notifications.border\\\":\\\"#161F26\\\",\\\"notifications.foreground\\\":\\\"#FFF\\\",\\\"panel.border\\\":\\\"#2D3E4C\\\",\\\"panelTitle.activeForeground\\\":\\\"#161F26\\\",\\\"progressBar.background\\\":\\\"#8AE773\\\",\\\"scrollbar.shadow\\\":\\\"#ffffff00\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#161F267e\\\",\\\"scrollbarSlider.background\\\":\\\"#161F267e\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#161F267e\\\",\\\"settings.dropdownBorder\\\":\\\"#161F26\\\",\\\"settings.dropdownForeground\\\":\\\"#161F26\\\",\\\"settings.headerForeground\\\":\\\"#161F26\\\",\\\"sideBar.background\\\":\\\"#2D3E4C\\\",\\\"sideBar.foreground\\\":\\\"#DCDEDF\\\",\\\"sideBarSectionHeader.background\\\":\\\"#161F26\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#FFF\\\",\\\"sideBarTitle.foreground\\\":\\\"#FFF\\\",\\\"statusBar.background\\\":\\\"#5899C5\\\",\\\"statusBar.debuggingBackground\\\":\\\"#8AE773\\\",\\\"statusBar.foreground\\\":\\\"#FFF\\\",\\\"statusBar.noFolderBackground\\\":\\\"#161F26\\\",\\\"tab.activeBackground\\\":\\\"#FFF\\\",\\\"tab.activeForeground\\\":\\\"#000\\\",\\\"tab.border\\\":\\\"#F3F3F3\\\",\\\"tab.inactiveBackground\\\":\\\"#F3F3F3\\\",\\\"tab.inactiveForeground\\\":\\\"#686868\\\",\\\"terminal.ansiBlack\\\":\\\"#000000\\\",\\\"terminal.ansiBlue\\\":\\\"#6182b8\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#90a4ae\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#6182b8\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#39adb5\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#91b859\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#7c4dff\\\",\\\"terminal.ansiBrightRed\\\":\\\"#e53935\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#ffb62c\\\",\\\"terminal.ansiCyan\\\":\\\"#39adb5\\\",\\\"terminal.ansiGreen\\\":\\\"#91b859\\\",\\\"terminal.ansiMagenta\\\":\\\"#7c4dff\\\",\\\"terminal.ansiRed\\\":\\\"#e53935\\\",\\\"terminal.ansiWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiYellow\\\":\\\"#ffb62c\\\",\\\"terminal.border\\\":\\\"#2D3E4C\\\",\\\"terminal.foreground\\\":\\\"#161F26\\\",\\\"terminal.selectionBackground\\\":\\\"#0006\\\",\\\"textPreformat.foreground\\\":\\\"#161F26\\\",\\\"titleBar.activeBackground\\\":\\\"#2D3E4C\\\",\\\"titleBar.activeForeground\\\":\\\"#FFF\\\",\\\"titleBar.border\\\":\\\"#2D3E4C\\\",\\\"titleBar.inactiveBackground\\\":\\\"#161F26\\\",\\\"titleBar.inactiveForeground\\\":\\\"#685C66\\\",\\\"welcomePage.buttonBackground\\\":\\\"#F3F3F3\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#ECECEC\\\",\\\"widget.shadow\\\":\\\"#161F2694\\\"},\\\"displayName\\\":\\\"Slack Ochin\\\",\\\"name\\\":\\\"slack-ochin\\\",\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"foreground\\\":\\\"#002339\\\"}},{\\\"scope\\\":[\\\"meta.paragraph.markdown\\\",\\\"string.other.link.description.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#110000\\\"}},{\\\"scope\\\":[\\\"entity.name.section.markdown\\\",\\\"punctuation.definition.heading.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#034c7c\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string.begin.markdown\\\",\\\"punctuation.definition.string.end.markdown\\\",\\\"markup.quote.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00AC8F\\\"}},{\\\"scope\\\":[\\\"markup.quote.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#003494\\\"}},{\\\"scope\\\":[\\\"markup.bold.markdown\\\",\\\"punctuation.definition.bold.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#4e76b5\\\"}},{\\\"scope\\\":[\\\"markup.italic.markdown\\\",\\\"punctuation.definition.italic.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#C792EA\\\"}},{\\\"scope\\\":[\\\"markup.inline.raw.string.markdown\\\",\\\"markup.fenced_code.block.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#0460b1\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.metadata.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00AC8F\\\"}},{\\\"scope\\\":[\\\"markup.underline.link.image.markdown\\\",\\\"markup.underline.link.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#924205\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#357b42\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a44185\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#174781\\\"}},{\\\"scope\\\":\\\"constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#174781\\\"}},{\\\"scope\\\":\\\"language.method\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#174781\\\"}},{\\\"scope\\\":[\\\"constant.character\\\",\\\"constant.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#174781\\\"}},{\\\"scope\\\":\\\"variable\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#2f86d2\\\"}},{\\\"scope\\\":\\\"variable.language.this\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#000000\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#7b30d0\\\"}},{\\\"scope\\\":\\\"storage\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#da5221\\\"}},{\\\"scope\\\":\\\"storage.type\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#0991b6\\\"}},{\\\"scope\\\":\\\"entity.name.class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#1172c7\\\"}},{\\\"scope\\\":\\\"entity.other.inherited-class\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#b02767\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#7eb233\\\"}},{\\\"scope\\\":\\\"variable.parameter\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#b1108e\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#0444ac\\\"}},{\\\"scope\\\":\\\"text.html.basic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#0071ce\\\"}},{\\\"scope\\\":\\\"entity.name.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0444ac\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#df8618\\\"}},{\\\"scope\\\":\\\"support.function\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#1ab394\\\"}},{\\\"scope\\\":\\\"support.constant\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#174781\\\"}},{\\\"scope\\\":[\\\"support.type\\\",\\\"support.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#dc3eb7\\\"}},{\\\"scope\\\":\\\"support.other.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#224555\\\"}},{\\\"scope\\\":\\\"invalid\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\" italic bold underline\\\",\\\"foreground\\\":\\\"#207bb8\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\" bold italic underline\\\",\\\"foreground\\\":\\\"#207bb8\\\"}},{\\\"scope\\\":\\\"source.json support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6dbdfa\\\"}},{\\\"scope\\\":[\\\"source.json string\\\",\\\"source.json punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00820f\\\"}},{\\\"scope\\\":\\\"markup.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#207bb8\\\"}},{\\\"scope\\\":[\\\"markup.heading punctuation.definition.heading\\\",\\\"entity.name.section\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#4FB4D8\\\"}},{\\\"scope\\\":[\\\"text.html.markdown meta.paragraph meta.link.inline\\\",\\\"text.html.markdown meta.paragraph meta.link.inline punctuation.definition.string.begin.markdown\\\",\\\"text.html.markdown meta.paragraph meta.link.inline punctuation.definition.string.end.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#87429A\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#87429A\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#08134A\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\",\\\"punctuation.definition.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#174781\\\"}},{\\\"scope\\\":\\\"meta.link\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#87429A\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: snazzy-light */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#E7E8E6\\\",\\\"activityBar.foreground\\\":\\\"#2DAE58\\\",\\\"activityBar.inactiveForeground\\\":\\\"#68696888\\\",\\\"activityBarBadge.background\\\":\\\"#09A1ED\\\",\\\"badge.background\\\":\\\"#09A1ED\\\",\\\"badge.foreground\\\":\\\"#ffffff\\\",\\\"button.background\\\":\\\"#2DAE58\\\",\\\"debugExceptionWidget.background\\\":\\\"#FFAEAC33\\\",\\\"debugExceptionWidget.border\\\":\\\"#FF5C57\\\",\\\"debugToolBar.border\\\":\\\"#E9EAEB\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#2DAE5824\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#FFAEAC44\\\",\\\"dropdown.border\\\":\\\"#E9EAEB\\\",\\\"editor.background\\\":\\\"#FAFBFC\\\",\\\"editor.findMatchBackground\\\":\\\"#00E6E06A\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#00E6E02A\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#F5B90011\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#2DAE5822\\\",\\\"editor.foreground\\\":\\\"#565869\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#00E6E018\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#F5B90033\\\",\\\"editor.selectionBackground\\\":\\\"#2DAE5822\\\",\\\"editor.snippetTabstopHighlightBackground\\\":\\\"#ADB1C23A\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#F5B90033\\\",\\\"editor.wordHighlightBackground\\\":\\\"#ADB1C23A\\\",\\\"editorError.foreground\\\":\\\"#FF5C56\\\",\\\"editorGroup.emptyBackground\\\":\\\"#F3F4F5\\\",\\\"editorGutter.addedBackground\\\":\\\"#2DAE58\\\",\\\"editorGutter.deletedBackground\\\":\\\"#FF5C57\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#00A39FAA\\\",\\\"editorInlayHint.background\\\":\\\"#E9EAEB\\\",\\\"editorInlayHint.foreground\\\":\\\"#565869\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#35CF68\\\",\\\"editorLineNumber.foreground\\\":\\\"#9194A2aa\\\",\\\"editorLink.activeForeground\\\":\\\"#35CF68\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#2DAE58\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#FF5C57\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#FF5C56\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#13BBB7AA\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#00A39FAA\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#CF9C00\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#ADB1C288\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#35CF68\\\",\\\"editorWarning.foreground\\\":\\\"#CF9C00\\\",\\\"editorWhitespace.foreground\\\":\\\"#ADB1C255\\\",\\\"extensionButton.prominentBackground\\\":\\\"#2DAE58\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#238744\\\",\\\"focusBorder\\\":\\\"#09A1ED\\\",\\\"foreground\\\":\\\"#686968\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#00A39F\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#2DAE58\\\",\\\"input.border\\\":\\\"#E9EAEB\\\",\\\"list.activeSelectionBackground\\\":\\\"#09A1ED\\\",\\\"list.activeSelectionForeground\\\":\\\"#ffffff\\\",\\\"list.errorForeground\\\":\\\"#FF5C56\\\",\\\"list.focusBackground\\\":\\\"#BCE7FC99\\\",\\\"list.focusForeground\\\":\\\"#11658F\\\",\\\"list.hoverBackground\\\":\\\"#E9EAEB\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#89B5CB33\\\",\\\"list.warningForeground\\\":\\\"#B38700\\\",\\\"menu.background\\\":\\\"#FAFBFC\\\",\\\"menu.selectionBackground\\\":\\\"#E9EAEB\\\",\\\"menu.selectionForeground\\\":\\\"#686968\\\",\\\"menubar.selectionBackground\\\":\\\"#E9EAEB\\\",\\\"menubar.selectionForeground\\\":\\\"#686968\\\",\\\"merge.currentContentBackground\\\":\\\"#35CF6833\\\",\\\"merge.currentHeaderBackground\\\":\\\"#35CF6866\\\",\\\"merge.incomingContentBackground\\\":\\\"#14B1FF33\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#14B1FF77\\\",\\\"peekView.border\\\":\\\"#09A1ED\\\",\\\"peekViewEditor.background\\\":\\\"#14B1FF08\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#F5B90088\\\",\\\"peekViewEditor.matchHighlightBorder\\\":\\\"#F5B900\\\",\\\"peekViewEditorStickyScroll.background\\\":\\\"#EDF4FB\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#F5B90088\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#09A1ED\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#FFFFFF\\\",\\\"peekViewTitle.background\\\":\\\"#09A1ED11\\\",\\\"selection.background\\\":\\\"#2DAE5844\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#13BBB7\\\",\\\"sideBar.background\\\":\\\"#F3F4F5\\\",\\\"sideBar.border\\\":\\\"#DEDFE0\\\",\\\"sideBarSectionHeader.background\\\":\\\"#E9EAEB\\\",\\\"sideBarSectionHeader.border\\\":\\\"#DEDFE0\\\",\\\"statusBar.background\\\":\\\"#2DAE58\\\",\\\"statusBar.debuggingBackground\\\":\\\"#13BBB7\\\",\\\"statusBar.debuggingBorder\\\":\\\"#00A39F\\\",\\\"statusBar.noFolderBackground\\\":\\\"#565869\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#238744\\\",\\\"tab.activeBorderTop\\\":\\\"#2DAE58\\\",\\\"terminal.ansiBlack\\\":\\\"#565869\\\",\\\"terminal.ansiBlue\\\":\\\"#09A1ED\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#75798F\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#14B1FF\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#13BBB7\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#35CF68\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#FF94D2\\\",\\\"terminal.ansiBrightRed\\\":\\\"#FFAEAC\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#FFFFFF\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#F5B900\\\",\\\"terminal.ansiCyan\\\":\\\"#13BBB7\\\",\\\"terminal.ansiGreen\\\":\\\"#2DAE58\\\",\\\"terminal.ansiMagenta\\\":\\\"#F767BB\\\",\\\"terminal.ansiRed\\\":\\\"#FF5C57\\\",\\\"terminal.ansiWhite\\\":\\\"#FAFBF9\\\",\\\"terminal.ansiYellow\\\":\\\"#CF9C00\\\",\\\"titleBar.activeBackground\\\":\\\"#F3F4F5\\\"},\\\"displayName\\\":\\\"Snazzy Light\\\",\\\"name\\\":\\\"snazzy-light\\\",\\\"tokenColors\\\":[{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5C56\\\"}},{\\\"scope\\\":[\\\"meta.object-literal.key\\\",\\\"meta.object-literal.key constant.character.escape\\\",\\\"meta.object-literal string\\\",\\\"meta.object-literal string constant.character.escape\\\",\\\"support.type.property-name\\\",\\\"support.type.property-name constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"storage\\\",\\\"meta.class storage.type\\\",\\\"keyword.operator.expression.import\\\",\\\"keyword.operator.new\\\",\\\"keyword.operator.expression.delete\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"support.type\\\",\\\"meta.type.annotation entity.name.type\\\",\\\"new.expr meta.type.parameters entity.name.type\\\",\\\"storage.type.primitive\\\",\\\"storage.type.built-in.primitive\\\",\\\"meta.function.parameter storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"storage.type.annotation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C25193\\\"}},{\\\"scope\\\":\\\"keyword.other.unit\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5C57CC\\\"}},{\\\"scope\\\":[\\\"constant.language\\\",\\\"support.constant\\\",\\\"variable.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"support.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#565869\\\"}},{\\\"scope\\\":\\\"variable.language.this\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"support.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#09A1ED\\\"}},{\\\"scope\\\":[\\\"entity.name.function.decorator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"meta.class entity.name.type\\\",\\\"new.expr entity.name.type\\\",\\\"entity.other.inherited-class\\\",\\\"support.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"keyword.preprocessor.pragma\\\",\\\"keyword.control.directive.include\\\",\\\"keyword.other.preprocessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":\\\"entity.name.exception\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5C56\\\"}},{\\\"scope\\\":\\\"entity.name.section\\\",\\\"settings\\\":{}},{\\\"scope\\\":[\\\"constant.numeric\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5C57\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"constant.character\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#CF9C00\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#CF9C00\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#F5B900\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\",\\\"string.regexp constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"keyword.operator.quantifier.regexp\\\",\\\"keyword.operator.negation.regexp\\\",\\\"keyword.operator.or.regexp\\\",\\\"string.regexp punctuation\\\",\\\"string.regexp keyword\\\",\\\"string.regexp keyword.control\\\",\\\"string.regexp constant\\\",\\\"variable.other.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00A39F\\\"}},{\\\"scope\\\":[\\\"string.regexp keyword.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00A39F88\\\"}},{\\\"scope\\\":\\\"constant.other.symbol\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#CF9C00\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":\\\"comment.block.preprocessor\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#9194A2\\\"}},{\\\"scope\\\":\\\"comment.block.documentation entity.name.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"comment.block.documentation storage\\\",\\\"comment.block.documentation keyword.other\\\",\\\"meta.class comment.block.documentation storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9194A2\\\"}},{\\\"scope\\\":[\\\"comment.block.documentation variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C25193\\\"}},{\\\"scope\\\":[\\\"punctuation\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\",\\\"keyword.other.arrow\\\",\\\"keyword.control.@\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"meta.tag.metadata.doctype.html entity.name.tag\\\",\\\"meta.tag.metadata.doctype.html entity.other.attribute-name.html\\\",\\\"meta.tag.sgml.doctype\\\",\\\"meta.tag.sgml.doctype string\\\",\\\"meta.tag.sgml.doctype entity.name.tag\\\",\\\"meta.tag.sgml punctuation.definition.tag.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9194A2\\\"}},{\\\"scope\\\":[\\\"meta.tag\\\",\\\"punctuation.definition.tag.html\\\",\\\"punctuation.definition.tag.begin.html\\\",\\\"punctuation.definition.tag.end.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"meta.tag entity.other.attribute-name\\\",\\\"entity.other.attribute-name.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF8380\\\"}},{\\\"scope\\\":[\\\"constant.character.entity\\\",\\\"punctuation.definition.entity\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CF9C00\\\"}},{\\\"scope\\\":[\\\"source.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"meta.selector\\\",\\\"meta.selector entity\\\",\\\"meta.selector entity punctuation\\\",\\\"source.css entity.name.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"keyword.control.at-rule\\\",\\\"keyword.control.at-rule punctuation.definition.keyword\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C25193\\\"}},{\\\"scope\\\":\\\"source.css variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"source.css meta.property-name\\\",\\\"source.css support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#565869\\\"}},{\\\"scope\\\":[\\\"source.css support.type.vendored.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#565869AA\\\"}},{\\\"scope\\\":[\\\"meta.property-value\\\",\\\"support.constant.property-value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"source.css support.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.entity.css\\\",\\\"keyword.operator.combinator.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF82CBBB\\\"}},{\\\"scope\\\":[\\\"source.css support.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#09A1ED\\\"}},{\\\"scope\\\":\\\"keyword.other.important\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#238744\\\"}},{\\\"scope\\\":[\\\"source.css.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"source.css.scss entity.other.attribute-name.class.css\\\",\\\"source.css.scss entity.other.attribute-name.id.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"entity.name.tag.reference.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C25193\\\"}},{\\\"scope\\\":[\\\"source.css.scss meta.at-rule keyword\\\",\\\"source.css.scss meta.at-rule keyword punctuation\\\",\\\"source.css.scss meta.at-rule operator.logical\\\",\\\"keyword.control.content.scss\\\",\\\"keyword.control.return.scss\\\",\\\"keyword.control.return.scss punctuation.definition.keyword\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C25193\\\"}},{\\\"scope\\\":[\\\"meta.at-rule.mixin.scss\\\",\\\"meta.at-rule.include.scss\\\",\\\"source.css.scss meta.at-rule.if\\\",\\\"source.css.scss meta.at-rule.else\\\",\\\"source.css.scss meta.at-rule.each\\\",\\\"source.css.scss meta.at-rule variable.parameter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"source.css.less entity.other.attribute-name.class.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":\\\"source.stylus meta.brace.curly.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"source.stylus entity.other.attribute-name.class\\\",\\\"source.stylus entity.other.attribute-name.id\\\",\\\"source.stylus entity.name.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"source.stylus support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#565869\\\"}},{\\\"scope\\\":[\\\"source.stylus variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":\\\"markup.changed\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#888888\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#888888\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.error\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5C56\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#888888\\\"}},{\\\"scope\\\":\\\"meta.link\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#CF9C00\\\"}},{\\\"scope\\\":\\\"string.other.link.title.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#09A1ED\\\"}},{\\\"scope\\\":[\\\"markup.output\\\",\\\"markup.raw\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#999999\\\"}},{\\\"scope\\\":\\\"markup.prompt\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#999999\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.traceback\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5C56\\\"}},{\\\"scope\\\":\\\"markup.underline\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#777985\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.italic\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"meta.brace.round\\\",\\\"meta.brace.square\\\",\\\"storage.type.function.arrow\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"constant.language.import-export-all\\\",\\\"meta.import keyword.control.default\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#C25193\\\"}},{\\\"scope\\\":[\\\"support.function.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":\\\"string.regexp.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"variable.language.super\\\",\\\"support.type.object.module.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":\\\"meta.jsx.children\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#686968\\\"}},{\\\"scope\\\":\\\"entity.name.tag.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":\\\"variable.other.alias.yaml\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded.begin.php\\\",\\\"punctuation.section.embedded.end.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#75798F\\\"}},{\\\"scope\\\":[\\\"meta.use.php entity.other.alias.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"source.php support.function.construct\\\",\\\"source.php support.function.var\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"storage.modifier.extends.php\\\",\\\"source.php keyword.other\\\",\\\"storage.modifier.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"meta.class.body.php storage.type.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"storage.type.php\\\",\\\"meta.class.body.php meta.function-call.php storage.type.php\\\",\\\"meta.class.body.php meta.function.php storage.type.php\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"source.php keyword.other.DML\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D94E4A\\\"}},{\\\"scope\\\":[\\\"source.sql.embedded.php keyword.operator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"source.ini keyword\\\",\\\"source.toml keyword\\\",\\\"source.env variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"source.ini entity.name.section\\\",\\\"source.toml entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"source.go storage.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"keyword.import.go\\\",\\\"keyword.package.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5C56\\\"}},{\\\"scope\\\":[\\\"source.reason variable.language string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#565869\\\"}},{\\\"scope\\\":[\\\"source.reason support.type\\\",\\\"source.reason constant.language\\\",\\\"source.reason constant.language constant.numeric\\\",\\\"source.reason support.type string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"source.reason keyword.operator keyword.control\\\",\\\"source.reason keyword.control.less\\\",\\\"source.reason keyword.control.flow\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"source.reason string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CF9C00\\\"}},{\\\"scope\\\":[\\\"source.reason support.property-value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"source.rust support.function.core.rust\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"source.rust storage.type.core.rust\\\",\\\"source.rust storage.class.std\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"source.rust entity.name.type.rust\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"storage.type.function.coffee\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"keyword.type.cs\\\",\\\"storage.type.cs\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"entity.name.type.namespace.cs\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"markup.inserted.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"markup.deleted.diff\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF5C56\\\"}},{\\\"scope\\\":[\\\"meta.diff.range\\\",\\\"meta.diff.index\\\",\\\"meta.separator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#09A1ED\\\"}},{\\\"scope\\\":\\\"source.makefile variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"keyword.control.protocol-specification.objc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"meta.parens storage.type.objc\\\",\\\"meta.return-type.objc support.class\\\",\\\"meta.return-type.objc storage.type.objc\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"source.sql keyword\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"keyword.other.special-method.dockerfile\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#09A1ED\\\"}},{\\\"scope\\\":\\\"constant.other.symbol.elixir\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"storage.type.elm\\\",\\\"support.module.elm\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"source.elm keyword.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"source.erlang entity.name.type.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"variable.other.field.erlang\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"source.erlang constant.other.symbol\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"storage.type.haskell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"meta.declaration.class.haskell storage.type.haskell\\\",\\\"meta.declaration.instance.haskell storage.type.haskell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"meta.preprocessor.haskell\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#75798F\\\"}},{\\\"scope\\\":[\\\"source.haskell keyword.control\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"tag.end.latte\\\",\\\"tag.begin.latte\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":\\\"source.po keyword.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":\\\"source.po storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9194A2\\\"}},{\\\"scope\\\":\\\"constant.language.po\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":\\\"meta.header.po string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#FF8380\\\"}},{\\\"scope\\\":\\\"source.po meta.header.po\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"source.ocaml markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"source.ocaml punctuation.definition.tag emphasis\\\",\\\"source.ocaml entity.name.class constant.numeric\\\",\\\"source.ocaml support.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"source.ocaml constant.numeric entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"source.ocaml comment meta.separator\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"source.ocaml support.type strong\\\",\\\"source.ocaml keyword.control strong\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"source.ocaml support.constant.property-value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"source.scala entity.name.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"storage.type.scala\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":[\\\"variable.parameter.scala\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"meta.bracket.scala\\\",\\\"meta.colon.scala\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"meta.metadata.simple.clojure\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"meta.metadata.simple.clojure meta.symbol\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"source.r keyword.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"source.svelte meta.block.ts entity.name.label\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":[\\\"keyword.operator.word.applescript\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#F767BB\\\"}},{\\\"scope\\\":[\\\"meta.function-call.livescript\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#09A1ED\\\"}},{\\\"scope\\\":[\\\"variable.language.self.lua\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"entity.name.type.class.swift\\\",\\\"meta.inheritance-clause.swift\\\",\\\"meta.import.swift entity.name.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"source.swift punctuation.section.embedded\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B38700\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.swift entity.name.function.swift\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#565869\\\"}},{\\\"scope\\\":\\\"meta.function-call.twig\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#565869\\\"}},{\\\"scope\\\":\\\"string.unquoted.tag-string.django\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#565869\\\"}},{\\\"scope\\\":[\\\"entity.tag.tagbraces.django\\\",\\\"entity.tag.filter-pipe.django\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":[\\\"meta.section.attributes.haml constant.language\\\",\\\"meta.section.attributes.plain.haml constant.other.symbol\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF8380\\\"}},{\\\"scope\\\":[\\\"meta.prolog.haml\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9194A2\\\"}},{\\\"scope\\\":[\\\"support.constant.handlebars\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":\\\"text.log log.constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#C25193\\\"}},{\\\"scope\\\":[\\\"source.c string constant.other.placeholder\\\",\\\"source.cpp string constant.other.placeholder\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B38700\\\"}},{\\\"scope\\\":\\\"constant.other.key.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#11658F\\\"}},{\\\"scope\\\":\\\"storage.type.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":\\\"meta.definition.variable.groovy storage.type.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}},{\\\"scope\\\":\\\"storage.modifier.import.groovy\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#CF9C00\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.class.pug\\\",\\\"entity.other.attribute-name.id.pug\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":[\\\"constant.name.attribute.tag.pug\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ADB1C2\\\"}},{\\\"scope\\\":\\\"entity.name.tag.style.html\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#13BBB7\\\"}},{\\\"scope\\\":\\\"entity.name.type.wasm\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#2DAE58\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: solarized-dark */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#003847\\\",\\\"badge.background\\\":\\\"#047aa6\\\",\\\"button.background\\\":\\\"#2AA19899\\\",\\\"debugExceptionWidget.background\\\":\\\"#00212B\\\",\\\"debugExceptionWidget.border\\\":\\\"#AB395B\\\",\\\"debugToolBar.background\\\":\\\"#00212B\\\",\\\"dropdown.background\\\":\\\"#00212B\\\",\\\"dropdown.border\\\":\\\"#2AA19899\\\",\\\"editor.background\\\":\\\"#002B36\\\",\\\"editor.foreground\\\":\\\"#839496\\\",\\\"editor.lineHighlightBackground\\\":\\\"#073642\\\",\\\"editor.selectionBackground\\\":\\\"#274642\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#005A6FAA\\\",\\\"editor.wordHighlightBackground\\\":\\\"#004454AA\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#005A6FAA\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#cdcdcdff\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#b58900ff\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#d33682ff\\\",\\\"editorCursor.foreground\\\":\\\"#D30102\\\",\\\"editorGroup.border\\\":\\\"#00212B\\\",\\\"editorGroup.dropBackground\\\":\\\"#2AA19844\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#004052\\\",\\\"editorHoverWidget.background\\\":\\\"#004052\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#C3E1E180\\\",\\\"editorIndentGuide.background\\\":\\\"#93A1A180\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#949494\\\",\\\"editorMarkerNavigationError.background\\\":\\\"#AB395B\\\",\\\"editorMarkerNavigationWarning.background\\\":\\\"#5B7E7A\\\",\\\"editorWhitespace.foreground\\\":\\\"#93A1A180\\\",\\\"editorWidget.background\\\":\\\"#00212B\\\",\\\"errorForeground\\\":\\\"#ffeaea\\\",\\\"focusBorder\\\":\\\"#2AA19899\\\",\\\"input.background\\\":\\\"#003847\\\",\\\"input.foreground\\\":\\\"#93A1A1\\\",\\\"input.placeholderForeground\\\":\\\"#93A1A1AA\\\",\\\"inputOption.activeBorder\\\":\\\"#2AA19899\\\",\\\"inputValidation.errorBackground\\\":\\\"#571b26\\\",\\\"inputValidation.errorBorder\\\":\\\"#a92049\\\",\\\"inputValidation.infoBackground\\\":\\\"#052730\\\",\\\"inputValidation.infoBorder\\\":\\\"#363b5f\\\",\\\"inputValidation.warningBackground\\\":\\\"#5d5938\\\",\\\"inputValidation.warningBorder\\\":\\\"#9d8a5e\\\",\\\"list.activeSelectionBackground\\\":\\\"#005A6F\\\",\\\"list.dropBackground\\\":\\\"#00445488\\\",\\\"list.highlightForeground\\\":\\\"#1ebcc5\\\",\\\"list.hoverBackground\\\":\\\"#004454AA\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#00445488\\\",\\\"minimap.selectionHighlight\\\":\\\"#274642\\\",\\\"panel.border\\\":\\\"#2b2b4a\\\",\\\"peekView.border\\\":\\\"#2b2b4a\\\",\\\"peekViewEditor.background\\\":\\\"#10192c\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#7744AA40\\\",\\\"peekViewResult.background\\\":\\\"#00212B\\\",\\\"peekViewTitle.background\\\":\\\"#00212B\\\",\\\"pickerGroup.border\\\":\\\"#2AA19899\\\",\\\"pickerGroup.foreground\\\":\\\"#2AA19899\\\",\\\"ports.iconRunningProcessForeground\\\":\\\"#369432\\\",\\\"progressBar.background\\\":\\\"#047aa6\\\",\\\"quickInputList.focusBackground\\\":\\\"#005A6F\\\",\\\"selection.background\\\":\\\"#2AA19899\\\",\\\"sideBar.background\\\":\\\"#00212B\\\",\\\"sideBarTitle.foreground\\\":\\\"#93A1A1\\\",\\\"statusBar.background\\\":\\\"#00212B\\\",\\\"statusBar.debuggingBackground\\\":\\\"#00212B\\\",\\\"statusBar.foreground\\\":\\\"#93A1A1\\\",\\\"statusBar.noFolderBackground\\\":\\\"#00212B\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#003847\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#003847\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#2AA19899\\\",\\\"tab.activeBackground\\\":\\\"#002B37\\\",\\\"tab.activeForeground\\\":\\\"#d6dbdb\\\",\\\"tab.border\\\":\\\"#003847\\\",\\\"tab.inactiveBackground\\\":\\\"#004052\\\",\\\"tab.inactiveForeground\\\":\\\"#93A1A1\\\",\\\"tab.lastPinnedBorder\\\":\\\"#2AA19844\\\",\\\"terminal.ansiBlack\\\":\\\"#073642\\\",\\\"terminal.ansiBlue\\\":\\\"#268bd2\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#002b36\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#839496\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#93a1a1\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#586e75\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#6c71c4\\\",\\\"terminal.ansiBrightRed\\\":\\\"#cb4b16\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#fdf6e3\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#657b83\\\",\\\"terminal.ansiCyan\\\":\\\"#2aa198\\\",\\\"terminal.ansiGreen\\\":\\\"#859900\\\",\\\"terminal.ansiMagenta\\\":\\\"#d33682\\\",\\\"terminal.ansiRed\\\":\\\"#dc322f\\\",\\\"terminal.ansiWhite\\\":\\\"#eee8d5\\\",\\\"terminal.ansiYellow\\\":\\\"#b58900\\\",\\\"titleBar.activeBackground\\\":\\\"#002C39\\\"},\\\"displayName\\\":\\\"Solarized Dark\\\",\\\"name\\\":\\\"solarized-dark\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"foreground\\\":\\\"#839496\\\"}},{\\\"scope\\\":[\\\"meta.embedded\\\",\\\"source.groovy.embedded\\\",\\\"string meta.image.inline.markdown\\\",\\\"variable.legacy.builtin.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#839496\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#586E75\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#2AA198\\\"}},{\\\"scope\\\":\\\"string.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#DC322F\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#D33682\\\"}},{\\\"scope\\\":[\\\"variable.language\\\",\\\"variable.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859900\\\"}},{\\\"scope\\\":\\\"storage\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#93A1A1\\\"}},{\\\"scope\\\":[\\\"entity.name.class\\\",\\\"entity.name.type\\\",\\\"entity.name.namespace\\\",\\\"entity.name.scope-resolution\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#CB4B16\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"punctuation.definition.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859900\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded.begin\\\",\\\"punctuation.section.embedded.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DC322F\\\"}},{\\\"scope\\\":[\\\"constant.language\\\",\\\"meta.preprocessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B58900\\\"}},{\\\"scope\\\":[\\\"support.function.construct\\\",\\\"keyword.other.new\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CB4B16\\\"}},{\\\"scope\\\":[\\\"constant.character\\\",\\\"constant.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CB4B16\\\"}},{\\\"scope\\\":[\\\"entity.other.inherited-class\\\",\\\"punctuation.separator.namespace.ruby\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6C71C4\\\"}},{\\\"scope\\\":\\\"variable.parameter\\\",\\\"settings\\\":{}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#586E75\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#93A1A1\\\"}},{\\\"scope\\\":\\\"support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"punctuation.separator.continuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#DC322F\\\"}},{\\\"scope\\\":[\\\"support.constant\\\",\\\"support.variable\\\"],\\\"settings\\\":{}},{\\\"scope\\\":[\\\"support.type\\\",\\\"support.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#859900\\\"}},{\\\"scope\\\":\\\"support.type.exception\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#CB4B16\\\"}},{\\\"scope\\\":\\\"support.other.variable\\\",\\\"settings\\\":{}},{\\\"scope\\\":\\\"invalid\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#DC322F\\\"}},{\\\"scope\\\":[\\\"meta.diff\\\",\\\"meta.diff.header\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#DC322F\\\"}},{\\\"scope\\\":\\\"markup.changed\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#CB4B16\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859900\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859900\\\"}},{\\\"scope\\\":\\\"markup.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#B58900\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.italic\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D33682\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.strikethrough\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#2AA198\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"markup.heading.setext\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#268BD2\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: solarized-light */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#DDD6C1\\\",\\\"activityBar.foreground\\\":\\\"#584c27\\\",\\\"activityBarBadge.background\\\":\\\"#B58900\\\",\\\"badge.background\\\":\\\"#B58900AA\\\",\\\"button.background\\\":\\\"#AC9D57\\\",\\\"debugExceptionWidget.background\\\":\\\"#DDD6C1\\\",\\\"debugExceptionWidget.border\\\":\\\"#AB395B\\\",\\\"debugToolBar.background\\\":\\\"#DDD6C1\\\",\\\"dropdown.background\\\":\\\"#EEE8D5\\\",\\\"dropdown.border\\\":\\\"#D3AF86\\\",\\\"editor.background\\\":\\\"#FDF6E3\\\",\\\"editor.foreground\\\":\\\"#657B83\\\",\\\"editor.lineHighlightBackground\\\":\\\"#EEE8D5\\\",\\\"editor.selectionBackground\\\":\\\"#EEE8D5\\\",\\\"editorCursor.foreground\\\":\\\"#657B83\\\",\\\"editorGroup.border\\\":\\\"#DDD6C1\\\",\\\"editorGroup.dropBackground\\\":\\\"#DDD6C1AA\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#D9D2C2\\\",\\\"editorHoverWidget.background\\\":\\\"#CCC4B0\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#081E2580\\\",\\\"editorIndentGuide.background\\\":\\\"#586E7580\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#567983\\\",\\\"editorWhitespace.foreground\\\":\\\"#586E7580\\\",\\\"editorWidget.background\\\":\\\"#EEE8D5\\\",\\\"extensionButton.prominentBackground\\\":\\\"#b58900\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#584c27aa\\\",\\\"focusBorder\\\":\\\"#b49471\\\",\\\"input.background\\\":\\\"#DDD6C1\\\",\\\"input.foreground\\\":\\\"#586E75\\\",\\\"input.placeholderForeground\\\":\\\"#586E75AA\\\",\\\"inputOption.activeBorder\\\":\\\"#D3AF86\\\",\\\"list.activeSelectionBackground\\\":\\\"#DFCA88\\\",\\\"list.activeSelectionForeground\\\":\\\"#6C6C6C\\\",\\\"list.highlightForeground\\\":\\\"#B58900\\\",\\\"list.hoverBackground\\\":\\\"#DFCA8844\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#D1CBB8\\\",\\\"minimap.selectionHighlight\\\":\\\"#EEE8D5\\\",\\\"notebook.cellEditorBackground\\\":\\\"#F7F0E0\\\",\\\"panel.border\\\":\\\"#DDD6C1\\\",\\\"peekView.border\\\":\\\"#B58900\\\",\\\"peekViewEditor.background\\\":\\\"#FFFBF2\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#7744AA40\\\",\\\"peekViewResult.background\\\":\\\"#EEE8D5\\\",\\\"peekViewTitle.background\\\":\\\"#EEE8D5\\\",\\\"pickerGroup.border\\\":\\\"#2AA19899\\\",\\\"pickerGroup.foreground\\\":\\\"#2AA19899\\\",\\\"ports.iconRunningProcessForeground\\\":\\\"#2AA19899\\\",\\\"progressBar.background\\\":\\\"#B58900\\\",\\\"quickInputList.focusBackground\\\":\\\"#DFCA8866\\\",\\\"selection.background\\\":\\\"#878b9180\\\",\\\"sideBar.background\\\":\\\"#EEE8D5\\\",\\\"sideBarTitle.foreground\\\":\\\"#586E75\\\",\\\"statusBar.background\\\":\\\"#EEE8D5\\\",\\\"statusBar.debuggingBackground\\\":\\\"#EEE8D5\\\",\\\"statusBar.foreground\\\":\\\"#586E75\\\",\\\"statusBar.noFolderBackground\\\":\\\"#EEE8D5\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#DDD6C1\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#DDD6C199\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#AC9D57\\\",\\\"tab.activeBackground\\\":\\\"#FDF6E3\\\",\\\"tab.activeModifiedBorder\\\":\\\"#cb4b16\\\",\\\"tab.border\\\":\\\"#DDD6C1\\\",\\\"tab.inactiveBackground\\\":\\\"#D3CBB7\\\",\\\"tab.inactiveForeground\\\":\\\"#586E75\\\",\\\"tab.lastPinnedBorder\\\":\\\"#FDF6E3\\\",\\\"terminal.ansiBlack\\\":\\\"#073642\\\",\\\"terminal.ansiBlue\\\":\\\"#268bd2\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#002b36\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#839496\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#93a1a1\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#586e75\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#6c71c4\\\",\\\"terminal.ansiBrightRed\\\":\\\"#cb4b16\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#fdf6e3\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#657b83\\\",\\\"terminal.ansiCyan\\\":\\\"#2aa198\\\",\\\"terminal.ansiGreen\\\":\\\"#859900\\\",\\\"terminal.ansiMagenta\\\":\\\"#d33682\\\",\\\"terminal.ansiRed\\\":\\\"#dc322f\\\",\\\"terminal.ansiWhite\\\":\\\"#eee8d5\\\",\\\"terminal.ansiYellow\\\":\\\"#b58900\\\",\\\"terminal.background\\\":\\\"#FDF6E3\\\",\\\"titleBar.activeBackground\\\":\\\"#EEE8D5\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#00000014\\\"},\\\"displayName\\\":\\\"Solarized Light\\\",\\\"name\\\":\\\"solarized-light\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"settings\\\":{\\\"foreground\\\":\\\"#657B83\\\"}},{\\\"scope\\\":[\\\"meta.embedded\\\",\\\"source.groovy.embedded\\\",\\\"string meta.image.inline.markdown\\\",\\\"variable.legacy.builtin.python\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#657B83\\\"}},{\\\"scope\\\":\\\"comment\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#93A1A1\\\"}},{\\\"scope\\\":\\\"string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#2AA198\\\"}},{\\\"scope\\\":\\\"string.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#DC322F\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#D33682\\\"}},{\\\"scope\\\":[\\\"variable.language\\\",\\\"variable.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859900\\\"}},{\\\"scope\\\":\\\"storage\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#586E75\\\"}},{\\\"scope\\\":[\\\"entity.name.class\\\",\\\"entity.name.type\\\",\\\"entity.name.namespace\\\",\\\"entity.name.scope-resolution\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#CB4B16\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"punctuation.definition.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859900\\\"}},{\\\"scope\\\":[\\\"punctuation.section.embedded.begin\\\",\\\"punctuation.section.embedded.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#DC322F\\\"}},{\\\"scope\\\":[\\\"constant.language\\\",\\\"meta.preprocessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#B58900\\\"}},{\\\"scope\\\":[\\\"support.function.construct\\\",\\\"keyword.other.new\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CB4B16\\\"}},{\\\"scope\\\":[\\\"constant.character\\\",\\\"constant.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#CB4B16\\\"}},{\\\"scope\\\":[\\\"entity.other.inherited-class\\\",\\\"punctuation.separator.namespace.ruby\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6C71C4\\\"}},{\\\"scope\\\":\\\"variable.parameter\\\",\\\"settings\\\":{}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#93A1A1\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#93A1A1\\\"}},{\\\"scope\\\":\\\"support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"punctuation.separator.continuation\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#DC322F\\\"}},{\\\"scope\\\":[\\\"support.constant\\\",\\\"support.variable\\\"],\\\"settings\\\":{}},{\\\"scope\\\":[\\\"support.type\\\",\\\"support.class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#859900\\\"}},{\\\"scope\\\":\\\"support.type.exception\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#CB4B16\\\"}},{\\\"scope\\\":\\\"support.other.variable\\\",\\\"settings\\\":{}},{\\\"scope\\\":\\\"invalid\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#DC322F\\\"}},{\\\"scope\\\":[\\\"meta.diff\\\",\\\"meta.diff.header\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#DC322F\\\"}},{\\\"scope\\\":\\\"markup.changed\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#CB4B16\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859900\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#859900\\\"}},{\\\"scope\\\":\\\"markup.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#B58900\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.italic\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D33682\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":\\\"markup.strikethrough\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"strikethrough\\\"}},{\\\"scope\\\":\\\"markup.inline.raw\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#2AA198\\\"}},{\\\"scope\\\":\\\"markup.heading\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#268BD2\\\"}},{\\\"scope\\\":\\\"markup.heading.setext\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#268BD2\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "/* Theme: synthwave-84 */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#171520\\\",\\\"activityBar.dropBackground\\\":\\\"#34294f66\\\",\\\"activityBar.foreground\\\":\\\"#ffffffCC\\\",\\\"activityBarBadge.background\\\":\\\"#f97e72\\\",\\\"activityBarBadge.foreground\\\":\\\"#2a2139\\\",\\\"badge.background\\\":\\\"#2a2139\\\",\\\"badge.foreground\\\":\\\"#ffffff\\\",\\\"breadcrumbPicker.background\\\":\\\"#232530\\\",\\\"button.background\\\":\\\"#614D85\\\",\\\"debugToolBar.background\\\":\\\"#463465\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#0beb9935\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#fe445035\\\",\\\"dropdown.background\\\":\\\"#232530\\\",\\\"dropdown.listBackground\\\":\\\"#2a2139\\\",\\\"editor.background\\\":\\\"#262335\\\",\\\"editor.findMatchBackground\\\":\\\"#D18616bb\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#D1861655\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#34294f1a\\\",\\\"editor.hoverHighlightBackground\\\":\\\"#463564\\\",\\\"editor.lineHighlightBorder\\\":\\\"#7059AB66\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#49549539\\\",\\\"editor.selectionBackground\\\":\\\"#ffffff20\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#ffffff20\\\",\\\"editor.wordHighlightBackground\\\":\\\"#34294f88\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#34294f88\\\",\\\"editorBracketMatch.background\\\":\\\"#34294f66\\\",\\\"editorBracketMatch.border\\\":\\\"#495495\\\",\\\"editorCodeLens.foreground\\\":\\\"#ffffff7c\\\",\\\"editorCursor.background\\\":\\\"#241b2f\\\",\\\"editorCursor.foreground\\\":\\\"#f97e72\\\",\\\"editorError.foreground\\\":\\\"#fe4450\\\",\\\"editorGroup.border\\\":\\\"#495495\\\",\\\"editorGroup.dropBackground\\\":\\\"#4954954a\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#241b2f\\\",\\\"editorGutter.addedBackground\\\":\\\"#206d4bd6\\\",\\\"editorGutter.deletedBackground\\\":\\\"#fa2e46a4\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#b893ce8f\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#A148AB80\\\",\\\"editorIndentGuide.background\\\":\\\"#444251\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#ffffffcc\\\",\\\"editorLineNumber.foreground\\\":\\\"#ffffff73\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#09f7a099\\\",\\\"editorOverviewRuler.border\\\":\\\"#34294fb3\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#fe445099\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#fe4450dd\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#D1861699\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#b893ce99\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#72f1b8cc\\\",\\\"editorRuler.foreground\\\":\\\"#A148AB80\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#f97e72\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#ffffff36\\\",\\\"editorWarning.foreground\\\":\\\"#72f1b8cc\\\",\\\"editorWidget.background\\\":\\\"#171520DC\\\",\\\"editorWidget.border\\\":\\\"#ffffff22\\\",\\\"editorWidget.resizeBorder\\\":\\\"#ffffff44\\\",\\\"errorForeground\\\":\\\"#fe4450\\\",\\\"extensionButton.prominentBackground\\\":\\\"#f97e72\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#ff7edb\\\",\\\"focusBorder\\\":\\\"#1f212b\\\",\\\"foreground\\\":\\\"#ffffff\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#72f1b8cc\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#fe4450\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#ffffff59\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#b893ceee\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#72f1b8\\\",\\\"input.background\\\":\\\"#2a2139\\\",\\\"inputOption.activeBorder\\\":\\\"#ff7edb99\\\",\\\"inputValidation.errorBackground\\\":\\\"#fe445080\\\",\\\"inputValidation.errorBorder\\\":\\\"#fe445000\\\",\\\"list.activeSelectionBackground\\\":\\\"#ffffff20\\\",\\\"list.activeSelectionForeground\\\":\\\"#ffffff\\\",\\\"list.dropBackground\\\":\\\"#34294f66\\\",\\\"list.errorForeground\\\":\\\"#fe4450E6\\\",\\\"list.focusBackground\\\":\\\"#ffffff20\\\",\\\"list.focusForeground\\\":\\\"#ffffff\\\",\\\"list.highlightForeground\\\":\\\"#f97e72\\\",\\\"list.hoverBackground\\\":\\\"#37294d99\\\",\\\"list.hoverForeground\\\":\\\"#ffffff\\\",\\\"list.inactiveFocusBackground\\\":\\\"#2a213999\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#ffffff20\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#ffffff\\\",\\\"list.warningForeground\\\":\\\"#72f1b8bb\\\",\\\"menu.background\\\":\\\"#463465\\\",\\\"minimapGutter.addedBackground\\\":\\\"#09f7a099\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#fe4450\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#b893ce\\\",\\\"panelTitle.activeBorder\\\":\\\"#f97e72\\\",\\\"peekView.border\\\":\\\"#495495\\\",\\\"peekViewEditor.background\\\":\\\"#232530\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#D18616bb\\\",\\\"peekViewResult.background\\\":\\\"#232530\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#D1861655\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#2a213980\\\",\\\"peekViewTitle.background\\\":\\\"#232530\\\",\\\"pickerGroup.foreground\\\":\\\"#f97e72ea\\\",\\\"progressBar.background\\\":\\\"#f97e72\\\",\\\"scrollbar.shadow\\\":\\\"#2a2139\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#9d8bca20\\\",\\\"scrollbarSlider.background\\\":\\\"#9d8bca30\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#9d8bca50\\\",\\\"selection.background\\\":\\\"#ffffff20\\\",\\\"sideBar.background\\\":\\\"#241b2f\\\",\\\"sideBar.dropBackground\\\":\\\"#34294f4c\\\",\\\"sideBar.foreground\\\":\\\"#ffffff99\\\",\\\"sideBarSectionHeader.background\\\":\\\"#241b2f\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#ffffffca\\\",\\\"statusBar.background\\\":\\\"#241b2f\\\",\\\"statusBar.debuggingBackground\\\":\\\"#f97e72\\\",\\\"statusBar.debuggingForeground\\\":\\\"#08080f\\\",\\\"statusBar.foreground\\\":\\\"#ffffff80\\\",\\\"statusBar.noFolderBackground\\\":\\\"#241b2f\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#2a2139\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#34294f\\\",\\\"tab.activeBorder\\\":\\\"#880088\\\",\\\"tab.border\\\":\\\"#241b2f00\\\",\\\"tab.inactiveBackground\\\":\\\"#262335\\\",\\\"terminal.ansiBlue\\\":\\\"#03edf9\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#03edf9\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#03edf9\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#72f1b8\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#ff7edb\\\",\\\"terminal.ansiBrightRed\\\":\\\"#fe4450\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#fede5d\\\",\\\"terminal.ansiCyan\\\":\\\"#03edf9\\\",\\\"terminal.ansiGreen\\\":\\\"#72f1b8\\\",\\\"terminal.ansiMagenta\\\":\\\"#ff7edb\\\",\\\"terminal.ansiRed\\\":\\\"#fe4450\\\",\\\"terminal.ansiYellow\\\":\\\"#f3e70f\\\",\\\"terminal.foreground\\\":\\\"#ffffff\\\",\\\"terminal.selectionBackground\\\":\\\"#ffffff20\\\",\\\"terminalCursor.background\\\":\\\"#ffffff\\\",\\\"terminalCursor.foreground\\\":\\\"#03edf9\\\",\\\"textLink.activeForeground\\\":\\\"#ff7edb\\\",\\\"textLink.foreground\\\":\\\"#f97e72\\\",\\\"titleBar.activeBackground\\\":\\\"#241b2f\\\",\\\"titleBar.inactiveBackground\\\":\\\"#241b2f\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#232530\\\",\\\"widget.shadow\\\":\\\"#2a2139\\\"},\\\"displayName\\\":\\\"Synthwave '84\\\",\\\"name\\\":\\\"synthwave-84\\\",\\\"semanticHighlighting\\\":true,\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"string.quoted.docstring.multi.python\\\",\\\"string.quoted.docstring.multi.python punctuation.definition.string.begin.python\\\",\\\"string.quoted.docstring.multi.python punctuation.definition.string.end.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#848bbd\\\"}},{\\\"scope\\\":[\\\"string.quoted\\\",\\\"string.template\\\",\\\"punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff8b39\\\"}},{\\\"scope\\\":\\\"string.template meta.embedded.line\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b6b1b1\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"entity.name.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7edb\\\"}},{\\\"scope\\\":\\\"variable.language\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#fe4450\\\"}},{\\\"scope\\\":\\\"variable.parameter\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"storage.type\\\",\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fede5d\\\"}},{\\\"scope\\\":\\\"constant\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f97e72\\\"}},{\\\"scope\\\":\\\"string.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f97e72\\\"}},{\\\"scope\\\":\\\"constant.numeric\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f97e72\\\"}},{\\\"scope\\\":\\\"constant.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f97e72\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#36f9f6\\\"}},{\\\"scope\\\":\\\"entity.name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe4450\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#36f9f6\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fede5d\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.html\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fede5d\\\"}},{\\\"scope\\\":[\\\"entity.name.type\\\",\\\"meta.attribute.class.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fe4450\\\"}},{\\\"scope\\\":\\\"entity.other.inherited-class\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#D50\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"variable.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#36f9f6\\\"}},{\\\"scope\\\":[\\\"keyword.control.export.js\\\",\\\"keyword.control.import.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":[\\\"constant.numeric.decimal.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2EE2FA\\\"}},{\\\"scope\\\":\\\"keyword\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fede5d\\\"}},{\\\"scope\\\":\\\"keyword.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fede5d\\\"}},{\\\"scope\\\":\\\"keyword.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fede5d\\\"}},{\\\"scope\\\":[\\\"keyword.operator.new\\\",\\\"keyword.operator.expression\\\",\\\"keyword.operator.logical\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fede5d\\\"}},{\\\"scope\\\":\\\"keyword.other.unit\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f97e72\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe4450\\\"}},{\\\"scope\\\":\\\"support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#36f9f6\\\"}},{\\\"scope\\\":\\\"support.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7edb\\\"}},{\\\"scope\\\":[\\\"meta.object-literal.key\\\",\\\"support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7edb\\\"}},{\\\"scope\\\":\\\"punctuation.separator.key-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b6b1b1\\\"}},{\\\"scope\\\":\\\"punctuation.section.embedded\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fede5d\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.template-expression.begin\\\",\\\"punctuation.definition.template-expression.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":[\\\"support.type.property-name.css\\\",\\\"support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":\\\"switch-block.expr.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":\\\"variable.other.constant.property.js, variable.other.property.js\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#2ee2fa\\\"}},{\\\"scope\\\":\\\"constant.other.color\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f97e72\\\"}},{\\\"scope\\\":\\\"support.constant.font-name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f97e72\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.id\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#36f9f6\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.pseudo-element\\\",\\\"entity.other.attribute-name.pseudo-class\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#D50\\\"}},{\\\"scope\\\":\\\"support.function.misc.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe4450\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"entity.name.section\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7edb\\\"}},{\\\"scope\\\":[\\\"text.html\\\",\\\"keyword.operator.assignment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ffffffee\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#b6b1b1cc\\\"}},{\\\"scope\\\":\\\"beginning.punctuation.definition.list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7edb\\\"}},{\\\"scope\\\":\\\"markup.underline.link\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#D50\\\"}},{\\\"scope\\\":\\\"string.other.link.description\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f97e72\\\"}},{\\\"scope\\\":\\\"meta.function-call.generic.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#36f9f6\\\"}},{\\\"scope\\\":\\\"variable.parameter.function-call.python\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":\\\"storage.type.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe4450\\\"}},{\\\"scope\\\":\\\"entity.name.variable.local.cs\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7edb\\\"}},{\\\"scope\\\":[\\\"entity.name.variable.field.cs\\\",\\\"entity.name.variable.property.cs\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7edb\\\"}},{\\\"scope\\\":\\\"constant.other.placeholder.c\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":[\\\"keyword.control.directive.include.c\\\",\\\"keyword.control.directive.define.c\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":\\\"storage.modifier.c\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe4450\\\"}},{\\\"scope\\\":\\\"source.cpp keyword.operator\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fede5d\\\"}},{\\\"scope\\\":\\\"constant.other.placeholder.cpp\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":[\\\"keyword.control.directive.include.cpp\\\",\\\"keyword.control.directive.define.cpp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":\\\"storage.modifier.specifier.const.cpp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fe4450\\\"}},{\\\"scope\\\":[\\\"source.elixir support.type.elixir\\\",\\\"source.elixir meta.module.elixir entity.name.class.elixir\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#36f9f6\\\"}},{\\\"scope\\\":\\\"source.elixir entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":[\\\"source.elixir constant.other.symbol.elixir\\\",\\\"source.elixir constant.other.keywords.elixir\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#36f9f6\\\"}},{\\\"scope\\\":\\\"source.elixir punctuation.definition.string\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":[\\\"source.elixir variable.other.readwrite.module.elixir\\\",\\\"source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":\\\"source.elixir .punctuation.binary.elixir\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#ff7edb\\\"}},{\\\"scope\\\":[\\\"entity.global.clojure\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#36f9f6\\\"}},{\\\"scope\\\":[\\\"storage.control.clojure\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#36f9f6\\\"}},{\\\"scope\\\":[\\\"meta.metadata.simple.clojure\\\",\\\"meta.metadata.map.clojure\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fe4450\\\"}},{\\\"scope\\\":[\\\"meta.quoted-expression.clojure\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"meta.symbol.clojure\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7edbff\\\"}},{\\\"scope\\\":\\\"source.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7edbff\\\"}},{\\\"scope\\\":\\\"source.go meta.function-call.go\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#36f9f6\\\"}},{\\\"scope\\\":[\\\"source.go keyword.package.go\\\",\\\"source.go keyword.import.go\\\",\\\"source.go keyword.function.go\\\",\\\"source.go keyword.type.go\\\",\\\"source.go keyword.const.go\\\",\\\"source.go keyword.var.go\\\",\\\"source.go keyword.map.go\\\",\\\"source.go keyword.channel.go\\\",\\\"source.go keyword.control.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fede5d\\\"}},{\\\"scope\\\":[\\\"source.go storage.type\\\",\\\"source.go keyword.struct.go\\\",\\\"source.go keyword.interface.go\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":[\\\"source.go constant.language.go\\\",\\\"source.go constant.other.placeholder.go\\\",\\\"source.go variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2EE2FA\\\"}},{\\\"scope\\\":[\\\"markup.underline.link.markdown\\\",\\\"markup.inline.raw.string.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":[\\\"string.other.link.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#fede5d\\\"}},{\\\"scope\\\":[\\\"markup.heading.markdown\\\",\\\"entity.name.section.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#ff7edb\\\"}},{\\\"scope\\\":[\\\"markup.italic.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#2EE2FA\\\"}},{\\\"scope\\\":[\\\"markup.bold.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#2EE2FA\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.quote.begin.markdown\\\",\\\"markup.quote.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":[\\\"source.dart\\\",\\\"source.python\\\",\\\"source.scala\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff7edbff\\\"}},{\\\"scope\\\":[\\\"string.interpolated.single.dart\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f97e72\\\"}},{\\\"scope\\\":[\\\"variable.parameter.dart\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}},{\\\"scope\\\":[\\\"constant.numeric.dart\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2EE2FA\\\"}},{\\\"scope\\\":[\\\"variable.parameter.scala\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2EE2FA\\\"}},{\\\"scope\\\":[\\\"meta.template.expression.scala\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#72f1b8\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: tokyo-night */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#16161e\\\",\\\"activityBar.border\\\":\\\"#16161e\\\",\\\"activityBar.foreground\\\":\\\"#787c99\\\",\\\"activityBar.inactiveForeground\\\":\\\"#3b3e52\\\",\\\"activityBarBadge.background\\\":\\\"#3d59a1\\\",\\\"activityBarBadge.foreground\\\":\\\"#fff\\\",\\\"activityBarTop.foreground\\\":\\\"#787c99\\\",\\\"activityBarTop.inactiveForeground\\\":\\\"#3b3e52\\\",\\\"badge.background\\\":\\\"#7e83b230\\\",\\\"badge.foreground\\\":\\\"#acb0d0\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#a9b1d6\\\",\\\"breadcrumb.background\\\":\\\"#16161e\\\",\\\"breadcrumb.focusForeground\\\":\\\"#a9b1d6\\\",\\\"breadcrumb.foreground\\\":\\\"#515670\\\",\\\"breadcrumbPicker.background\\\":\\\"#16161e\\\",\\\"button.background\\\":\\\"#3d59a1dd\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"button.hoverBackground\\\":\\\"#3d59a1AA\\\",\\\"button.secondaryBackground\\\":\\\"#3b3e52\\\",\\\"charts.blue\\\":\\\"#7aa2f7\\\",\\\"charts.foreground\\\":\\\"#9AA5CE\\\",\\\"charts.green\\\":\\\"#41a6b5\\\",\\\"charts.lines\\\":\\\"#16161e\\\",\\\"charts.orange\\\":\\\"#ff9e64\\\",\\\"charts.purple\\\":\\\"#9d7cd8\\\",\\\"charts.red\\\":\\\"#f7768e\\\",\\\"charts.yellow\\\":\\\"#e0af68\\\",\\\"debugConsole.errorForeground\\\":\\\"#bb616b\\\",\\\"debugConsole.infoForeground\\\":\\\"#787c99\\\",\\\"debugConsole.sourceForeground\\\":\\\"#787c99\\\",\\\"debugConsole.warningForeground\\\":\\\"#c49a5a\\\",\\\"debugConsoleInputIcon.foreground\\\":\\\"#73daca\\\",\\\"debugExceptionWidget.background\\\":\\\"#101014\\\",\\\"debugExceptionWidget.border\\\":\\\"#963c47\\\",\\\"debugIcon.breakpointDisabledForeground\\\":\\\"#414761\\\",\\\"debugIcon.breakpointForeground\\\":\\\"#db4b4b\\\",\\\"debugIcon.breakpointUnverifiedForeground\\\":\\\"#c24242\\\",\\\"debugTokenExpression.boolean\\\":\\\"#ff9e64\\\",\\\"debugTokenExpression.error\\\":\\\"#bb616b\\\",\\\"debugTokenExpression.name\\\":\\\"#7dcfff\\\",\\\"debugTokenExpression.number\\\":\\\"#ff9e64\\\",\\\"debugTokenExpression.string\\\":\\\"#9ece6a\\\",\\\"debugTokenExpression.value\\\":\\\"#9aa5ce\\\",\\\"debugToolBar.background\\\":\\\"#101014\\\",\\\"debugView.stateLabelBackground\\\":\\\"#14141b\\\",\\\"debugView.stateLabelForeground\\\":\\\"#787c99\\\",\\\"debugView.valueChangedHighlight\\\":\\\"#3d59a1aa\\\",\\\"descriptionForeground\\\":\\\"#515670\\\",\\\"diffEditor.diagonalFill\\\":\\\"#292e42\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#41a6b520\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#41a6b520\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#db4b4b22\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#db4b4b22\\\",\\\"diffEditor.unchangedCodeBackground\\\":\\\"#282a3b66\\\",\\\"diffEditorGutter.insertedLineBackground\\\":\\\"#41a6b525\\\",\\\"diffEditorGutter.removedLineBackground\\\":\\\"#db4b4b22\\\",\\\"diffEditorOverview.insertedForeground\\\":\\\"#41a6b525\\\",\\\"diffEditorOverview.removedForeground\\\":\\\"#db4b4b22\\\",\\\"dropdown.background\\\":\\\"#14141b\\\",\\\"dropdown.foreground\\\":\\\"#787c99\\\",\\\"dropdown.listBackground\\\":\\\"#14141b\\\",\\\"editor.background\\\":\\\"#1a1b26\\\",\\\"editor.findMatchBackground\\\":\\\"#3d59a166\\\",\\\"editor.findMatchBorder\\\":\\\"#e0af68\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#3d59a166\\\",\\\"editor.findRangeHighlightBackground\\\":\\\"#515c7e33\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#73daca20\\\",\\\"editor.foldBackground\\\":\\\"#1111174a\\\",\\\"editor.foreground\\\":\\\"#a9b1d6\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#515c7e25\\\",\\\"editor.lineHighlightBackground\\\":\\\"#1e202e\\\",\\\"editor.rangeHighlightBackground\\\":\\\"#515c7e20\\\",\\\"editor.selectionBackground\\\":\\\"#515c7e4d\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#515c7e44\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#E2BD3A20\\\",\\\"editor.wordHighlightBackground\\\":\\\"#515c7e44\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#515c7e55\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#698cd6\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#68b3de\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#9a7ecc\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#25aac2\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#80a856\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#c49a5a\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#db4b4b\\\",\\\"editorBracketMatch.background\\\":\\\"#16161e\\\",\\\"editorBracketMatch.border\\\":\\\"#42465d\\\",\\\"editorBracketPairGuide.activeBackground1\\\":\\\"#698cd6\\\",\\\"editorBracketPairGuide.activeBackground2\\\":\\\"#68b3de\\\",\\\"editorBracketPairGuide.activeBackground3\\\":\\\"#9a7ecc\\\",\\\"editorBracketPairGuide.activeBackground4\\\":\\\"#25aac2\\\",\\\"editorBracketPairGuide.activeBackground5\\\":\\\"#80a856\\\",\\\"editorBracketPairGuide.activeBackground6\\\":\\\"#c49a5a\\\",\\\"editorCodeLens.foreground\\\":\\\"#51597d\\\",\\\"editorCursor.foreground\\\":\\\"#c0caf5\\\",\\\"editorError.foreground\\\":\\\"#db4b4b\\\",\\\"editorGhostText.foreground\\\":\\\"#646e9c\\\",\\\"editorGroup.border\\\":\\\"#101014\\\",\\\"editorGroup.dropBackground\\\":\\\"#1e202e\\\",\\\"editorGroupHeader.border\\\":\\\"#101014\\\",\\\"editorGroupHeader.noTabsBackground\\\":\\\"#16161e\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#16161e\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#101014\\\",\\\"editorGutter.addedBackground\\\":\\\"#164846\\\",\\\"editorGutter.deletedBackground\\\":\\\"#823c41\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#394b70\\\",\\\"editorHint.foreground\\\":\\\"#0da0ba\\\",\\\"editorHoverWidget.background\\\":\\\"#16161e\\\",\\\"editorHoverWidget.border\\\":\\\"#101014\\\",\\\"editorIndentGuide.activeBackground1\\\":\\\"#363b54\\\",\\\"editorIndentGuide.background1\\\":\\\"#232433\\\",\\\"editorInfo.foreground\\\":\\\"#0da0ba\\\",\\\"editorLightBulb.foreground\\\":\\\"#e0af68\\\",\\\"editorLightBulbAutoFix.foreground\\\":\\\"#e0af68\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#737aa2\\\",\\\"editorLineNumber.foreground\\\":\\\"#363b54\\\",\\\"editorLink.activeForeground\\\":\\\"#acb0d0\\\",\\\"editorMarkerNavigation.background\\\":\\\"#16161e\\\",\\\"editorOverviewRuler.addedForeground\\\":\\\"#164846\\\",\\\"editorOverviewRuler.border\\\":\\\"#101014\\\",\\\"editorOverviewRuler.bracketMatchForeground\\\":\\\"#101014\\\",\\\"editorOverviewRuler.deletedForeground\\\":\\\"#703438\\\",\\\"editorOverviewRuler.errorForeground\\\":\\\"#db4b4b\\\",\\\"editorOverviewRuler.findMatchForeground\\\":\\\"#a9b1d644\\\",\\\"editorOverviewRuler.infoForeground\\\":\\\"#1abc9c\\\",\\\"editorOverviewRuler.modifiedForeground\\\":\\\"#394b70\\\",\\\"editorOverviewRuler.rangeHighlightForeground\\\":\\\"#a9b1d644\\\",\\\"editorOverviewRuler.selectionHighlightForeground\\\":\\\"#a9b1d622\\\",\\\"editorOverviewRuler.warningForeground\\\":\\\"#e0af68\\\",\\\"editorOverviewRuler.wordHighlightForeground\\\":\\\"#bb9af755\\\",\\\"editorOverviewRuler.wordHighlightStrongForeground\\\":\\\"#bb9af766\\\",\\\"editorPane.background\\\":\\\"#16161e\\\",\\\"editorRuler.foreground\\\":\\\"#101014\\\",\\\"editorSuggestWidget.background\\\":\\\"#16161e\\\",\\\"editorSuggestWidget.border\\\":\\\"#101014\\\",\\\"editorSuggestWidget.highlightForeground\\\":\\\"#6183bb\\\",\\\"editorSuggestWidget.selectedBackground\\\":\\\"#20222c\\\",\\\"editorWarning.foreground\\\":\\\"#e0af68\\\",\\\"editorWhitespace.foreground\\\":\\\"#363b54\\\",\\\"editorWidget.background\\\":\\\"#16161e\\\",\\\"editorWidget.foreground\\\":\\\"#787c99\\\",\\\"editorWidget.resizeBorder\\\":\\\"#545c7e33\\\",\\\"errorForeground\\\":\\\"#515670\\\",\\\"extensionBadge.remoteBackground\\\":\\\"#3d59a1\\\",\\\"extensionBadge.remoteForeground\\\":\\\"#ffffff\\\",\\\"extensionButton.prominentBackground\\\":\\\"#3d59a1DD\\\",\\\"extensionButton.prominentForeground\\\":\\\"#ffffff\\\",\\\"extensionButton.prominentHoverBackground\\\":\\\"#3d59a1AA\\\",\\\"focusBorder\\\":\\\"#545c7e33\\\",\\\"foreground\\\":\\\"#787c99\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#449dab\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#e0af68cc\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#914c54\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#515670\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#6183bb\\\",\\\"gitDecoration.renamedResourceForeground\\\":\\\"#449dab\\\",\\\"gitDecoration.stageDeletedResourceForeground\\\":\\\"#914c54\\\",\\\"gitDecoration.stageModifiedResourceForeground\\\":\\\"#6183bb\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#449dab\\\",\\\"gitlens.gutterBackgroundColor\\\":\\\"#16161e\\\",\\\"gitlens.gutterForegroundColor\\\":\\\"#787c99\\\",\\\"gitlens.gutterUncommittedForegroundColor\\\":\\\"#7aa2f7\\\",\\\"gitlens.trailingLineForegroundColor\\\":\\\"#646e9c\\\",\\\"icon.foreground\\\":\\\"#787c99\\\",\\\"input.background\\\":\\\"#14141b\\\",\\\"input.border\\\":\\\"#0f0f14\\\",\\\"input.foreground\\\":\\\"#a9b1d6\\\",\\\"input.placeholderForeground\\\":\\\"#787c998A\\\",\\\"inputOption.activeBackground\\\":\\\"#3d59a144\\\",\\\"inputOption.activeForeground\\\":\\\"#c0caf5\\\",\\\"inputValidation.errorBackground\\\":\\\"#85353e\\\",\\\"inputValidation.errorBorder\\\":\\\"#963c47\\\",\\\"inputValidation.errorForeground\\\":\\\"#bbc2e0\\\",\\\"inputValidation.infoBackground\\\":\\\"#3d59a15c\\\",\\\"inputValidation.infoBorder\\\":\\\"#3d59a1\\\",\\\"inputValidation.infoForeground\\\":\\\"#bbc2e0\\\",\\\"inputValidation.warningBackground\\\":\\\"#c2985b\\\",\\\"inputValidation.warningBorder\\\":\\\"#e0af68\\\",\\\"inputValidation.warningForeground\\\":\\\"#000000\\\",\\\"list.activeSelectionBackground\\\":\\\"#202330\\\",\\\"list.activeSelectionForeground\\\":\\\"#a9b1d6\\\",\\\"list.deemphasizedForeground\\\":\\\"#787c99\\\",\\\"list.dropBackground\\\":\\\"#1e202e\\\",\\\"list.errorForeground\\\":\\\"#bb616b\\\",\\\"list.focusBackground\\\":\\\"#1c1d29\\\",\\\"list.focusForeground\\\":\\\"#a9b1d6\\\",\\\"list.highlightForeground\\\":\\\"#668ac4\\\",\\\"list.hoverBackground\\\":\\\"#13131a\\\",\\\"list.hoverForeground\\\":\\\"#a9b1d6\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#1c1d29\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#a9b1d6\\\",\\\"list.invalidItemForeground\\\":\\\"#c97018\\\",\\\"list.warningForeground\\\":\\\"#c49a5a\\\",\\\"listFilterWidget.background\\\":\\\"#101014\\\",\\\"listFilterWidget.noMatchesOutline\\\":\\\"#a6333f\\\",\\\"listFilterWidget.outline\\\":\\\"#3d59a1\\\",\\\"menu.background\\\":\\\"#16161e\\\",\\\"menu.border\\\":\\\"#101014\\\",\\\"menu.foreground\\\":\\\"#787c99\\\",\\\"menu.selectionBackground\\\":\\\"#1e202e\\\",\\\"menu.selectionForeground\\\":\\\"#a9b1d6\\\",\\\"menu.separatorBackground\\\":\\\"#101014\\\",\\\"menubar.selectionBackground\\\":\\\"#1e202e\\\",\\\"menubar.selectionBorder\\\":\\\"#1b1e2e\\\",\\\"menubar.selectionForeground\\\":\\\"#a9b1d6\\\",\\\"merge.currentContentBackground\\\":\\\"#007a7544\\\",\\\"merge.currentHeaderBackground\\\":\\\"#41a6b525\\\",\\\"merge.incomingContentBackground\\\":\\\"#3d59a144\\\",\\\"merge.incomingHeaderBackground\\\":\\\"#3d59a1aa\\\",\\\"mergeEditor.change.background\\\":\\\"#41a6b525\\\",\\\"mergeEditor.change.word.background\\\":\\\"#41a6b540\\\",\\\"mergeEditor.conflict.handled.minimapOverViewRuler\\\":\\\"#449dab\\\",\\\"mergeEditor.conflict.handledFocused.border\\\":\\\"#41a6b565\\\",\\\"mergeEditor.conflict.handledUnfocused.border\\\":\\\"#41a6b525\\\",\\\"mergeEditor.conflict.unhandled.minimapOverViewRuler\\\":\\\"#e0af68\\\",\\\"mergeEditor.conflict.unhandledFocused.border\\\":\\\"#e0af68b0\\\",\\\"mergeEditor.conflict.unhandledUnfocused.border\\\":\\\"#e0af6888\\\",\\\"minimapGutter.addedBackground\\\":\\\"#1C5957\\\",\\\"minimapGutter.deletedBackground\\\":\\\"#944449\\\",\\\"minimapGutter.modifiedBackground\\\":\\\"#425882\\\",\\\"multiDiffEditor.border\\\":\\\"#1a1b26\\\",\\\"multiDiffEditor.headerBackground\\\":\\\"#1a1b26\\\",\\\"notebook.cellBorderColor\\\":\\\"#101014\\\",\\\"notebook.cellEditorBackground\\\":\\\"#16161e\\\",\\\"notebook.cellStatusBarItemHoverBackground\\\":\\\"#1c1d29\\\",\\\"notebook.editorBackground\\\":\\\"#1a1b26\\\",\\\"notebook.focusedCellBorder\\\":\\\"#29355a\\\",\\\"notificationCenterHeader.background\\\":\\\"#101014\\\",\\\"notificationLink.foreground\\\":\\\"#6183bb\\\",\\\"notifications.background\\\":\\\"#101014\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#bb616b\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#0da0ba\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#bba461\\\",\\\"panel.background\\\":\\\"#16161e\\\",\\\"panel.border\\\":\\\"#101014\\\",\\\"panelInput.border\\\":\\\"#16161e\\\",\\\"panelTitle.activeBorder\\\":\\\"#16161e\\\",\\\"panelTitle.activeForeground\\\":\\\"#787c99\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#42465d\\\",\\\"peekView.border\\\":\\\"#101014\\\",\\\"peekViewEditor.background\\\":\\\"#16161e\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#3d59a166\\\",\\\"peekViewResult.background\\\":\\\"#101014\\\",\\\"peekViewResult.fileForeground\\\":\\\"#787c99\\\",\\\"peekViewResult.lineForeground\\\":\\\"#a9b1d6\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#3d59a166\\\",\\\"peekViewResult.selectionBackground\\\":\\\"#3d59a133\\\",\\\"peekViewResult.selectionForeground\\\":\\\"#a9b1d6\\\",\\\"peekViewTitle.background\\\":\\\"#101014\\\",\\\"peekViewTitleDescription.foreground\\\":\\\"#787c99\\\",\\\"peekViewTitleLabel.foreground\\\":\\\"#a9b1d6\\\",\\\"pickerGroup.border\\\":\\\"#101014\\\",\\\"pickerGroup.foreground\\\":\\\"#a9b1d6\\\",\\\"progressBar.background\\\":\\\"#3d59a1\\\",\\\"sash.hoverBorder\\\":\\\"#29355a\\\",\\\"scrollbar.shadow\\\":\\\"#00000033\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#868bc422\\\",\\\"scrollbarSlider.background\\\":\\\"#868bc415\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#868bc410\\\",\\\"selection.background\\\":\\\"#515c7e40\\\",\\\"settings.headerForeground\\\":\\\"#6183bb\\\",\\\"sideBar.background\\\":\\\"#16161e\\\",\\\"sideBar.border\\\":\\\"#101014\\\",\\\"sideBar.dropBackground\\\":\\\"#1e202e\\\",\\\"sideBar.foreground\\\":\\\"#787c99\\\",\\\"sideBarSectionHeader.background\\\":\\\"#16161e\\\",\\\"sideBarSectionHeader.border\\\":\\\"#101014\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#a9b1d6\\\",\\\"sideBarTitle.foreground\\\":\\\"#787c99\\\",\\\"statusBar.background\\\":\\\"#16161e\\\",\\\"statusBar.border\\\":\\\"#101014\\\",\\\"statusBar.debuggingBackground\\\":\\\"#16161e\\\",\\\"statusBar.debuggingForeground\\\":\\\"#787c99\\\",\\\"statusBar.foreground\\\":\\\"#787c99\\\",\\\"statusBar.noFolderBackground\\\":\\\"#16161e\\\",\\\"statusBarItem.activeBackground\\\":\\\"#101014\\\",\\\"statusBarItem.hoverBackground\\\":\\\"#20222c\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#101014\\\",\\\"statusBarItem.prominentHoverBackground\\\":\\\"#20222c\\\",\\\"tab.activeBackground\\\":\\\"#16161e\\\",\\\"tab.activeBorder\\\":\\\"#3d59a1\\\",\\\"tab.activeForeground\\\":\\\"#a9b1d6\\\",\\\"tab.activeModifiedBorder\\\":\\\"#1a1b26\\\",\\\"tab.border\\\":\\\"#101014\\\",\\\"tab.hoverForeground\\\":\\\"#a9b1d6\\\",\\\"tab.inactiveBackground\\\":\\\"#16161e\\\",\\\"tab.inactiveForeground\\\":\\\"#787c99\\\",\\\"tab.inactiveModifiedBorder\\\":\\\"#1f202e\\\",\\\"tab.lastPinnedBorder\\\":\\\"#222333\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#1f202e\\\",\\\"tab.unfocusedActiveForeground\\\":\\\"#a9b1d6\\\",\\\"tab.unfocusedHoverForeground\\\":\\\"#a9b1d6\\\",\\\"tab.unfocusedInactiveForeground\\\":\\\"#787c99\\\",\\\"terminal.ansiBlack\\\":\\\"#363b54\\\",\\\"terminal.ansiBlue\\\":\\\"#7aa2f7\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#363b54\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#7aa2f7\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#7dcfff\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#41a6b5\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#bb9af7\\\",\\\"terminal.ansiBrightRed\\\":\\\"#f7768e\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#acb0d0\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#e0af68\\\",\\\"terminal.ansiCyan\\\":\\\"#7dcfff\\\",\\\"terminal.ansiGreen\\\":\\\"#73daca\\\",\\\"terminal.ansiMagenta\\\":\\\"#bb9af7\\\",\\\"terminal.ansiRed\\\":\\\"#f7768e\\\",\\\"terminal.ansiWhite\\\":\\\"#787c99\\\",\\\"terminal.ansiYellow\\\":\\\"#e0af68\\\",\\\"terminal.background\\\":\\\"#16161e\\\",\\\"terminal.foreground\\\":\\\"#787c99\\\",\\\"terminal.selectionBackground\\\":\\\"#515c7e4d\\\",\\\"textBlockQuote.background\\\":\\\"#16161e\\\",\\\"textCodeBlock.background\\\":\\\"#16161e\\\",\\\"textLink.activeForeground\\\":\\\"#7dcfff\\\",\\\"textLink.foreground\\\":\\\"#6183bb\\\",\\\"textPreformat.foreground\\\":\\\"#9699a8\\\",\\\"textSeparator.foreground\\\":\\\"#363b54\\\",\\\"titleBar.activeBackground\\\":\\\"#16161e\\\",\\\"titleBar.activeForeground\\\":\\\"#787c99\\\",\\\"titleBar.border\\\":\\\"#101014\\\",\\\"titleBar.inactiveBackground\\\":\\\"#16161e\\\",\\\"titleBar.inactiveForeground\\\":\\\"#787c99\\\",\\\"toolbar.activeBackground\\\":\\\"#202330\\\",\\\"toolbar.hoverBackground\\\":\\\"#202330\\\",\\\"tree.indentGuidesStroke\\\":\\\"#2b2b3b\\\",\\\"walkThrough.embeddedEditorBackground\\\":\\\"#16161e\\\",\\\"widget.shadow\\\":\\\"#ffffff00\\\",\\\"window.activeBorder\\\":\\\"#0d0f17\\\",\\\"window.inactiveBorder\\\":\\\"#0d0f17\\\"},\\\"displayName\\\":\\\"Tokyo Night\\\",\\\"name\\\":\\\"tokyo-night\\\",\\\"semanticTokenColors\\\":{\\\"*.defaultLibrary\\\":{\\\"foreground\\\":\\\"#2ac3de\\\"},\\\"parameter\\\":{\\\"foreground\\\":\\\"#d9d4cd\\\"},\\\"parameter.declaration\\\":{\\\"foreground\\\":\\\"#e0af68\\\"},\\\"property.declaration\\\":{\\\"foreground\\\":\\\"#73daca\\\"},\\\"property.defaultLibrary\\\":{\\\"foreground\\\":\\\"#2ac3de\\\"},\\\"variable\\\":{\\\"foreground\\\":\\\"#c0caf5\\\"},\\\"variable.declaration\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"},\\\"variable.defaultLibrary\\\":{\\\"foreground\\\":\\\"#2ac3de\\\"}},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"meta.var.expr storage.type\\\",\\\"keyword.control.flow\\\",\\\"keyword.control.return\\\",\\\"meta.directive.vue punctuation.separator.key-value.html\\\",\\\"meta.directive.vue entity.other.attribute-name.html\\\",\\\"tag.decorator.js entity.name.tag.js\\\",\\\"tag.decorator.js punctuation.definition.tag.js\\\",\\\"storage.modifier\\\",\\\"string.quoted.docstring.multi\\\",\\\"string.quoted.docstring.multi.python punctuation.definition.string.begin\\\",\\\"string.quoted.docstring.multi.python punctuation.definition.string.end\\\",\\\"string.quoted.docstring.multi.python constant.character.escape\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"keyword.control.flow.block-scalar.literal\\\",\\\"keyword.control.flow.python\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\"}},{\\\"scope\\\":[\\\"comment\\\",\\\"comment.block.documentation\\\",\\\"punctuation.definition.comment\\\",\\\"comment.block.documentation punctuation\\\",\\\"string.quoted.docstring.multi\\\",\\\"string.quoted.docstring.multi.python punctuation.definition.string.begin\\\",\\\"string.quoted.docstring.multi.python punctuation.definition.string.end\\\",\\\"string.quoted.docstring.multi.python constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#51597d\\\"}},{\\\"scope\\\":[\\\"keyword.operator.assignment.jsdoc\\\",\\\"comment.block.documentation variable\\\",\\\"comment.block.documentation storage\\\",\\\"comment.block.documentation keyword\\\",\\\"comment.block.documentation support\\\",\\\"comment.block.documentation markup\\\",\\\"comment.block.documentation markup.inline.raw.string.markdown\\\",\\\"meta.other.type.phpdoc.php keyword.other.type.php\\\",\\\"meta.other.type.phpdoc.php support.other.namespace.php\\\",\\\"meta.other.type.phpdoc.php punctuation.separator.inheritance.php\\\",\\\"meta.other.type.phpdoc.php support.class\\\",\\\"keyword.other.phpdoc.php\\\",\\\"log.date\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5a638c\\\"}},{\\\"scope\\\":[\\\"meta.other.type.phpdoc.php support.class\\\",\\\"comment.block.documentation storage.type\\\",\\\"comment.block.documentation punctuation.definition.block.tag\\\",\\\"comment.block.documentation entity.name.type.instance\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#646e9c\\\"}},{\\\"scope\\\":[\\\"variable.other.constant\\\",\\\"punctuation.definition.constant\\\",\\\"constant.language\\\",\\\"constant.numeric\\\",\\\"support.constant\\\",\\\"constant.other.caps\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9e64\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"constant.other.symbol\\\",\\\"constant.other.key\\\",\\\"meta.attribute-selector\\\",\\\"string constant.character\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#9ece6a\\\"}},{\\\"scope\\\":[\\\"constant.other.color\\\",\\\"constant.other.color.rgb-value.hex punctuation.definition.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9aa5ce\\\"}},{\\\"scope\\\":[\\\"invalid\\\",\\\"invalid.illegal\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff5370\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":\\\"storage.type\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":[\\\"meta.var.expr storage.type\\\",\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9d7cd8\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.template-expression\\\",\\\"punctuation.section.embedded\\\",\\\"meta.embedded.line.tag.smarty\\\",\\\"support.constant.handlebars\\\",\\\"punctuation.section.tag.twig\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7dcfff\\\"}},{\\\"scope\\\":[\\\"keyword.control.smarty\\\",\\\"keyword.control.twig\\\",\\\"support.constant.handlebars keyword.control\\\",\\\"keyword.operator.comparison.twig\\\",\\\"keyword.blade\\\",\\\"entity.name.function.blade\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0db9d7\\\"}},{\\\"scope\\\":[\\\"keyword.operator.spread\\\",\\\"keyword.operator.rest\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#f7768e\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\",\\\"keyword.control.as\\\",\\\"keyword.other\\\",\\\"keyword.operator.bitwise.shift\\\",\\\"punctuation\\\",\\\"expression.embbeded.vue punctuation.definition.tag\\\",\\\"text.html.twig meta.tag.inline.any.html\\\",\\\"meta.tag.template.value.twig meta.function.arguments.twig\\\",\\\"meta.directive.vue punctuation.separator.key-value.html\\\",\\\"punctuation.definition.constant.markdown\\\",\\\"punctuation.definition.string\\\",\\\"punctuation.support.type.property-name\\\",\\\"text.html.vue-html meta.tag\\\",\\\"meta.attribute.directive\\\",\\\"punctuation.definition.keyword\\\",\\\"punctuation.terminator.rule\\\",\\\"punctuation.definition.entity\\\",\\\"punctuation.separator.inheritance.php\\\",\\\"keyword.other.template\\\",\\\"keyword.other.substitution\\\",\\\"entity.name.operator\\\",\\\"meta.property-list punctuation.separator.key-value\\\",\\\"meta.at-rule.mixin punctuation.separator.key-value\\\",\\\"meta.at-rule.function variable.parameter.url\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89ddff\\\"}},{\\\"scope\\\":[\\\"keyword.control.module.js\\\",\\\"keyword.control.import\\\",\\\"keyword.control.export\\\",\\\"keyword.control.from\\\",\\\"keyword.control.default\\\",\\\"meta.import keyword.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7dcfff\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"keyword.control\\\",\\\"keyword.other.important\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":\\\"keyword.other.DML\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7dcfff\\\"}},{\\\"scope\\\":[\\\"keyword.operator.logical\\\",\\\"storage.type.function\\\",\\\"keyword.operator.bitwise\\\",\\\"keyword.operator.ternary\\\",\\\"keyword.operator.comparison\\\",\\\"keyword.operator.relational\\\",\\\"keyword.operator.or.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":\\\"entity.name.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f7768e\\\"}},{\\\"scope\\\":[\\\"entity.name.tag support.class.component\\\",\\\"meta.tag.custom entity.name.tag\\\",\\\"meta.tag.other.unrecognized.html.derivative entity.name.tag\\\",\\\"meta.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#de5971\\\"}},{\\\"scope\\\":\\\"punctuation.definition.tag\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ba3c97\\\"}},{\\\"scope\\\":[\\\"constant.other.php\\\",\\\"variable.other.global.safer\\\",\\\"variable.other.global.safer punctuation.definition.variable\\\",\\\"variable.other.global\\\",\\\"variable.other.global punctuation.definition.variable\\\",\\\"constant.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e0af68\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"support.variable\\\",\\\"string constant.other.placeholder\\\",\\\"variable.parameter.handlebars\\\",\\\"variable.other.object\\\",\\\"meta.fstring\\\",\\\"meta.function-call meta.function-call.arguments\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c0caf5\\\"}},{\\\"scope\\\":\\\"meta.array.literal variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7dcfff\\\"}},{\\\"scope\\\":[\\\"meta.object-literal.key\\\",\\\"entity.name.type.hcl\\\",\\\"string.alias.graphql\\\",\\\"string.unquoted.graphql\\\",\\\"string.unquoted.alias.graphql\\\",\\\"meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js\\\",\\\"meta.field.declaration.ts variable.object.property\\\",\\\"meta.block entity.name.label\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#73daca\\\"}},{\\\"scope\\\":[\\\"variable.other.property\\\",\\\"support.variable.property\\\",\\\"support.variable.property.dom\\\",\\\"meta.function-call variable.other.object.property\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7dcfff\\\"}},{\\\"scope\\\":\\\"variable.other.object.property\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c0caf5\\\"}},{\\\"scope\\\":\\\"meta.objectliteral meta.object.member meta.objectliteral meta.object.member meta.objectliteral meta.object.member meta.object-literal.key\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#41a6b5\\\"}},{\\\"scope\\\":\\\"source.cpp meta.block variable.other\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f7768e\\\"}},{\\\"scope\\\":\\\"support.other.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f7768e\\\"}},{\\\"scope\\\":[\\\"meta.class-method.js entity.name.function.js\\\",\\\"entity.name.method.js\\\",\\\"variable.function.constructor\\\",\\\"keyword.other.special-method\\\",\\\"storage.type.cs\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7aa2f7\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"variable.other.enummember\\\",\\\"meta.function-call\\\",\\\"meta.function-call entity.name.function\\\",\\\"variable.function\\\",\\\"meta.definition.method entity.name.function\\\",\\\"meta.object-literal entity.name.function\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7aa2f7\\\"}},{\\\"scope\\\":[\\\"variable.parameter.function.language.special\\\",\\\"variable.parameter\\\",\\\"meta.function.parameters punctuation.definition.variable\\\",\\\"meta.function.parameter variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e0af68\\\"}},{\\\"scope\\\":[\\\"keyword.other.type.php\\\",\\\"storage.type.php\\\",\\\"constant.character\\\",\\\"constant.escape\\\",\\\"keyword.other.unit\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":[\\\"meta.definition.variable variable.other.constant\\\",\\\"meta.definition.variable variable.other.readwrite\\\",\\\"variable.declaration.hcl variable.other.readwrite.hcl\\\",\\\"meta.mapping.key.hcl variable.other.readwrite.hcl\\\",\\\"variable.other.declaration\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":\\\"entity.other.inherited-class\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"\\\",\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":[\\\"support.class\\\",\\\"support.type\\\",\\\"variable.other.readwrite.alias\\\",\\\"support.orther.namespace.use.php\\\",\\\"meta.use.php\\\",\\\"support.other.namespace.php\\\",\\\"support.type.sys-types\\\",\\\"support.variable.dom\\\",\\\"support.constant.math\\\",\\\"support.type.object.module\\\",\\\"support.constant.json\\\",\\\"entity.name.namespace\\\",\\\"meta.import.qualifier\\\",\\\"variable.other.constant.object\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0db9d7\\\"}},{\\\"scope\\\":\\\"entity.name\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c0caf5\\\"}},{\\\"scope\\\":\\\"support.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0db9d7\\\"}},{\\\"scope\\\":[\\\"source.css support.type.property-name\\\",\\\"source.sass support.type.property-name\\\",\\\"source.scss support.type.property-name\\\",\\\"source.less support.type.property-name\\\",\\\"source.stylus support.type.property-name\\\",\\\"source.postcss support.type.property-name\\\",\\\"support.type.property-name.css\\\",\\\"support.type.vendored.property-name\\\",\\\"support.type.map.key\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7aa2f7\\\"}},{\\\"scope\\\":[\\\"support.constant.font-name\\\",\\\"meta.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9ece6a\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.class\\\",\\\"meta.at-rule.mixin.scss entity.name.function.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9ece6a\\\"}},{\\\"scope\\\":\\\"entity.other.attribute-name.id\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fc7b7b\\\"}},{\\\"scope\\\":\\\"entity.name.tag.css\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0db9d7\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.pseudo-class punctuation.definition.entity\\\",\\\"entity.other.attribute-name.pseudo-element punctuation.definition.entity\\\",\\\"entity.other.attribute-name.class punctuation.definition.entity\\\",\\\"entity.name.tag.reference\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e0af68\\\"}},{\\\"scope\\\":\\\"meta.property-list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9abdf5\\\"}},{\\\"scope\\\":[\\\"meta.property-list meta.at-rule.if\\\",\\\"meta.at-rule.return variable.parameter.url\\\",\\\"meta.property-list meta.at-rule.else\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9e64\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.parent-selector-suffix punctuation.definition.entity.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#73daca\\\"}},{\\\"scope\\\":\\\"meta.property-list meta.property-list\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9abdf5\\\"}},{\\\"scope\\\":[\\\"meta.at-rule.mixin keyword.control.at-rule.mixin\\\",\\\"meta.at-rule.include entity.name.function.scss\\\",\\\"meta.at-rule.include keyword.control.at-rule.include\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":[\\\"keyword.control.at-rule.include punctuation.definition.keyword\\\",\\\"keyword.control.at-rule.mixin punctuation.definition.keyword\\\",\\\"meta.at-rule.include keyword.control.at-rule.include\\\",\\\"keyword.control.at-rule.extend punctuation.definition.keyword\\\",\\\"meta.at-rule.extend keyword.control.at-rule.extend\\\",\\\"entity.other.attribute-name.placeholder.css punctuation.definition.entity.css\\\",\\\"meta.at-rule.media keyword.control.at-rule.media\\\",\\\"meta.at-rule.mixin keyword.control.at-rule.mixin\\\",\\\"meta.at-rule.function keyword.control.at-rule.function\\\",\\\"keyword.control punctuation.definition.keyword\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9d7cd8\\\"}},{\\\"scope\\\":\\\"meta.property-list meta.at-rule.include\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c0caf5\\\"}},{\\\"scope\\\":\\\"support.constant.property-value\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ff9e64\\\"}},{\\\"scope\\\":[\\\"entity.name.module.js\\\",\\\"variable.import.parameter.js\\\",\\\"variable.other.class.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c0caf5\\\"}},{\\\"scope\\\":\\\"variable.language\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f7768e\\\"}},{\\\"scope\\\":\\\"variable.other punctuation.definition.variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c0caf5\\\"}},{\\\"scope\\\":[\\\"source.js constant.other.object.key.js string.unquoted.label.js\\\",\\\"variable.language.this punctuation.definition.variable\\\",\\\"keyword.other.this\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f7768e\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\",\\\"text.html.basic entity.other.attribute-name.html\\\",\\\"text.html.basic entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":\\\"text.html constant.character.entity\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0DB9D7\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.id.html\\\",\\\"meta.directive.vue entity.other.attribute-name.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":\\\"source.sass keyword.control\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7aa2f7\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.pseudo-class\\\",\\\"entity.other.attribute-name.pseudo-element\\\",\\\"entity.other.attribute-name.placeholder\\\",\\\"meta.property-list meta.property-value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":\\\"markup.inserted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#449dab\\\"}},{\\\"scope\\\":\\\"markup.deleted\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#914c54\\\"}},{\\\"scope\\\":\\\"markup.changed\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#6183bb\\\"}},{\\\"scope\\\":\\\"string.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b4f9f8\\\"}},{\\\"scope\\\":\\\"punctuation.definition.group\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f7768e\\\"}},{\\\"scope\\\":[\\\"constant.other.character-class.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":[\\\"constant.other.character-class.set.regexp\\\",\\\"punctuation.definition.character-class.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e0af68\\\"}},{\\\"scope\\\":\\\"keyword.operator.quantifier.regexp\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89ddff\\\"}},{\\\"scope\\\":\\\"constant.character.escape.backslash\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c0caf5\\\"}},{\\\"scope\\\":\\\"constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#89ddff\\\"}},{\\\"scope\\\":[\\\"tag.decorator.js entity.name.tag.js\\\",\\\"tag.decorator.js punctuation.definition.tag.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7aa2f7\\\"}},{\\\"scope\\\":\\\"keyword.other.unit\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f7768e\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7aa2f7\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0db9d7\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#7dcfff\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#e0af68\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#0db9d7\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#73daca\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#f7768e\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9ece6a\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list_item.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#9abdf5\\\"}},{\\\"scope\\\":[\\\"meta.block\\\",\\\"meta.brace\\\",\\\"punctuation.definition.block\\\",\\\"punctuation.definition.use\\\",\\\"punctuation.definition.class\\\",\\\"punctuation.definition.begin.bracket\\\",\\\"punctuation.definition.end.bracket\\\",\\\"punctuation.definition.switch-expression.begin.bracket\\\",\\\"punctuation.definition.switch-expression.end.bracket\\\",\\\"punctuation.definition.section.switch-block.begin.bracket\\\",\\\"punctuation.definition.section.switch-block.end.bracket\\\",\\\"punctuation.definition.group.shell\\\",\\\"punctuation.definition.parameters\\\",\\\"punctuation.definition.arguments\\\",\\\"punctuation.definition.dictionary\\\",\\\"punctuation.definition.array\\\",\\\"punctuation.section\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9abdf5\\\"}},{\\\"scope\\\":[\\\"meta.embedded.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c0caf5\\\"}},{\\\"scope\\\":[\\\"meta.tag JSXNested\\\",\\\"meta.jsx.children\\\",\\\"text.html\\\",\\\"text.log\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#9aa5ce\\\"}},{\\\"scope\\\":\\\"text.html.markdown markup.inline.raw.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#bb9af7\\\"}},{\\\"scope\\\":\\\"text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4E5579\\\"}},{\\\"scope\\\":[\\\"heading.1.markdown entity.name\\\",\\\"heading.1.markdown punctuation.definition.heading.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#89ddff\\\"}},{\\\"scope\\\":[\\\"heading.2.markdown entity.name\\\",\\\"heading.2.markdown punctuation.definition.heading.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#61bdf2\\\"}},{\\\"scope\\\":[\\\"heading.3.markdown entity.name\\\",\\\"heading.3.markdown punctuation.definition.heading.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#7aa2f7\\\"}},{\\\"scope\\\":[\\\"heading.4.markdown entity.name\\\",\\\"heading.4.markdown punctuation.definition.heading.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#6d91de\\\"}},{\\\"scope\\\":[\\\"heading.5.markdown entity.name\\\",\\\"heading.5.markdown punctuation.definition.heading.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#9aa5ce\\\"}},{\\\"scope\\\":[\\\"heading.6.markdown entity.name\\\",\\\"heading.6.markdown punctuation.definition.heading.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#747ca1\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\",\\\"markup.italic punctuation\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#c0caf5\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.bold punctuation\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#c0caf5\\\"}},{\\\"scope\\\":[\\\"markup.bold markup.italic\\\",\\\"markup.bold markup.italic punctuation\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold italic\\\",\\\"foreground\\\":\\\"#c0caf5\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\",\\\"markup.underline punctuation\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":\\\"markup.quote punctuation.definition.blockquote.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4e5579\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\"}},{\\\"scope\\\":[\\\"string.other.link\\\",\\\"markup.underline.link\\\",\\\"constant.other.reference.link.markdown\\\",\\\"string.other.link.description.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#73daca\\\"}},{\\\"scope\\\":[\\\"markup.fenced_code.block.markdown\\\",\\\"markup.inline.raw.string.markdown\\\",\\\"variable.language.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#89ddff\\\"}},{\\\"scope\\\":\\\"meta.separator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#51597d\\\"}},{\\\"scope\\\":\\\"markup.table\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c0cefc\\\"}},{\\\"scope\\\":\\\"token.info-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#0db9d7\\\"}},{\\\"scope\\\":\\\"token.warn-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#ffdb69\\\"}},{\\\"scope\\\":\\\"token.error-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#db4b4b\\\"}},{\\\"scope\\\":\\\"token.debug-token\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b267e6\\\"}},{\\\"scope\\\":\\\"entity.tag.apacheconf\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#f7768e\\\"}},{\\\"scope\\\":[\\\"meta.preprocessor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#73daca\\\"}},{\\\"scope\\\":\\\"source.env\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#7aa2f7\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: vesper */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.background\\\":\\\"#101010\\\",\\\"activityBar.foreground\\\":\\\"#A0A0A0\\\",\\\"activityBarBadge.background\\\":\\\"#FFC799\\\",\\\"activityBarBadge.foreground\\\":\\\"#000\\\",\\\"badge.background\\\":\\\"#FFC799\\\",\\\"badge.foreground\\\":\\\"#000\\\",\\\"button.background\\\":\\\"#FFC799\\\",\\\"button.foreground\\\":\\\"#000\\\",\\\"button.hoverBackground\\\":\\\"#FFCFA8\\\",\\\"diffEditor.insertedLineBackground\\\":\\\"#99FFE415\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#99FFE415\\\",\\\"diffEditor.removedLineBackground\\\":\\\"#FF808015\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#FF808015\\\",\\\"editor.background\\\":\\\"#101010\\\",\\\"editor.foreground\\\":\\\"#FFF\\\",\\\"editor.selectionBackground\\\":\\\"#FFFFFF25\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#FFFFFF25\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#A0A0A0\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#A0A0A0\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#A0A0A0\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#A0A0A0\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#A0A0A0\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#A0A0A0\\\",\\\"editorBracketHighlight.unexpectedBracket.foreground\\\":\\\"#FF8080\\\",\\\"editorError.foreground\\\":\\\"#FF8080\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#101010\\\",\\\"editorGutter.addedBackground\\\":\\\"#99FFE4\\\",\\\"editorGutter.deletedBackground\\\":\\\"#FF8080\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#FFC799\\\",\\\"editorHoverWidget.background\\\":\\\"#161616\\\",\\\"editorHoverWidget.border\\\":\\\"#282828\\\",\\\"editorInlayHint.background\\\":\\\"#1C1C1C\\\",\\\"editorInlayHint.foreground\\\":\\\"#A0A0A0\\\",\\\"editorLineNumber.foreground\\\":\\\"#505050\\\",\\\"editorOverviewRuler.border\\\":\\\"#101010\\\",\\\"editorWarning.foreground\\\":\\\"#FFC799\\\",\\\"editorWidget.background\\\":\\\"#101010\\\",\\\"focusBorder\\\":\\\"#FFC799\\\",\\\"icon.foreground\\\":\\\"#A0A0A0\\\",\\\"input.background\\\":\\\"#1C1C1C\\\",\\\"list.activeSelectionBackground\\\":\\\"#232323\\\",\\\"list.activeSelectionForeground\\\":\\\"#FFC799\\\",\\\"list.errorForeground\\\":\\\"#FF8080\\\",\\\"list.highlightForeground\\\":\\\"#FFC799\\\",\\\"list.hoverBackground\\\":\\\"#282828\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#232323\\\",\\\"scrollbarSlider.background\\\":\\\"#34343480\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#343434\\\",\\\"selection.background\\\":\\\"#666\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#FFC799\\\",\\\"sideBar.background\\\":\\\"#101010\\\",\\\"sideBarSectionHeader.background\\\":\\\"#101010\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#A0A0A0\\\",\\\"sideBarTitle.foreground\\\":\\\"#A0A0A0\\\",\\\"statusBar.background\\\":\\\"#101010\\\",\\\"statusBar.debuggingBackground\\\":\\\"#FF7300\\\",\\\"statusBar.debuggingForeground\\\":\\\"#FFF\\\",\\\"statusBar.foreground\\\":\\\"#A0A0A0\\\",\\\"statusBarItem.remoteBackground\\\":\\\"#FFC799\\\",\\\"statusBarItem.remoteForeground\\\":\\\"#000\\\",\\\"tab.activeBackground\\\":\\\"#161616\\\",\\\"tab.border\\\":\\\"#101010\\\",\\\"tab.inactiveBackground\\\":\\\"#101010\\\",\\\"textLink.activeForeground\\\":\\\"#FFCFA8\\\",\\\"textLink.foreground\\\":\\\"#FFC799\\\",\\\"titleBar.activeBackground\\\":\\\"#101010\\\",\\\"titleBar.activeForeground\\\":\\\"#7E7E7E\\\",\\\"titleBar.inactiveBackground\\\":\\\"#101010\\\",\\\"titleBar.inactiveForeground\\\":\\\"#707070\\\"},\\\"displayName\\\":\\\"Vesper\\\",\\\"name\\\":\\\"vesper\\\",\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#8b8b8b94\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"string constant.other.placeholder\\\",\\\"entity.name.tag\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"constant.other.color\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"invalid\\\",\\\"invalid.illegal\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF8080\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"storage.type\\\",\\\"storage.modifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A0A0\\\"}},{\\\"scope\\\":[\\\"keyword.control\\\",\\\"constant.other.color\\\",\\\"punctuation.definition.tag\\\",\\\"punctuation.separator.inheritance.php\\\",\\\"punctuation.definition.tag.html\\\",\\\"punctuation.definition.tag.begin.html\\\",\\\"punctuation.definition.tag.end.html\\\",\\\"punctuation.section.embedded\\\",\\\"keyword.other.template\\\",\\\"keyword.other.substitution\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A0A0\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"meta.tag.sgml\\\",\\\"markup.deleted.git_gutter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"entity.name.function\\\",\\\"variable.function\\\",\\\"support.function\\\",\\\"keyword.other.special-method\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"meta.block variable.other\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"support.other.variable\\\",\\\"string.other.link\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"constant.numeric\\\",\\\"support.constant\\\",\\\"constant.character\\\",\\\"constant.escape\\\",\\\"keyword.other.unit\\\",\\\"keyword.other\\\",\\\"constant.language.boolean\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"constant.other.symbol\\\",\\\"constant.other.key\\\",\\\"meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#99FFE4\\\"}},{\\\"scope\\\":[\\\"entity.name\\\",\\\"support.type\\\",\\\"support.class\\\",\\\"support.other.namespace.use.php\\\",\\\"meta.use.php\\\",\\\"support.other.namespace.php\\\",\\\"markup.changed.git_gutter\\\",\\\"support.type.sys-types\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"source.css support.type.property-name\\\",\\\"source.sass support.type.property-name\\\",\\\"source.scss support.type.property-name\\\",\\\"source.less support.type.property-name\\\",\\\"source.stylus support.type.property-name\\\",\\\"source.postcss support.type.property-name\\\",\\\"source.postcss support.type.property-name\\\",\\\"support.type.vendored.property-name.css\\\",\\\"source.css.scss entity.name.tag\\\",\\\"variable.parameter.keyframe-list.css\\\",\\\"meta.property-name.css\\\",\\\"variable.parameter.url.scss\\\",\\\"meta.property-value.scss\\\",\\\"meta.property-value.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"entity.name.module.js\\\",\\\"variable.import.parameter.js\\\",\\\"variable.other.class.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF8080\\\"}},{\\\"scope\\\":[\\\"variable.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A0A0\\\"}},{\\\"scope\\\":[\\\"entity.name.method.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFFF\\\"}},{\\\"scope\\\":[\\\"meta.class-method.js entity.name.function.js\\\",\\\"variable.function.constructor\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFFF\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\",\\\"meta.property-list.scss\\\",\\\"meta.attribute-selector.scss\\\",\\\"meta.property-value.css\\\",\\\"entity.other.keyframe-offset.css\\\",\\\"meta.selector.css\\\",\\\"entity.name.tag.reference.scss\\\",\\\"entity.name.tag.nesting.css\\\",\\\"punctuation.separator.key-value.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A0A0\\\"}},{\\\"scope\\\":[\\\"text.html.basic entity.other.attribute-name.html\\\",\\\"text.html.basic entity.other.attribute-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.class\\\",\\\"entity.other.attribute-name.id\\\",\\\"meta.attribute-selector.scss\\\",\\\"variable.parameter.misc.css\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"source.sass keyword.control\\\",\\\"meta.attribute-selector.scss\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#99FFE4\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#99FFE4\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FF8080\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A0A0\\\"}},{\\\"scope\\\":[\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A0A0\\\"}},{\\\"scope\\\":[\\\"constant.character.escape\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A0A0\\\"}},{\\\"scope\\\":[\\\"*url*\\\",\\\"*link*\\\",\\\"*uri*\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\"}},{\\\"scope\\\":[\\\"tag.decorator.js entity.name.tag.js\\\",\\\"tag.decorator.js punctuation.definition.tag.js\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFFF\\\"}},{\\\"scope\\\":[\\\"source.js constant.other.object.key.js string.unquoted.label.js\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FF8080\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"text.html.markdown\\\",\\\"punctuation.definition.list_item.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A0A0\\\"}},{\\\"scope\\\":[\\\"text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"markdown.heading\\\",\\\"markup.heading | markup.heading entity.name\\\",\\\"markup.heading.markdown punctuation.definition.heading.markdown\\\",\\\"markup.heading\\\",\\\"markup.inserted.git_gutter\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"markup.italic\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"markup.bold\\\",\\\"markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"markup.bold markup.italic\\\",\\\"markup.italic markup.bold\\\",\\\"markup.quote markup.bold\\\",\\\"markup.bold markup.italic string\\\",\\\"markup.italic markup.bold string\\\",\\\"markup.quote markup.bold string\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"markup.underline\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"markup.quote punctuation.definition.blockquote.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"markup.quote\\\"]},{\\\"scope\\\":[\\\"string.other.link.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFFF\\\"}},{\\\"scope\\\":[\\\"string.other.link.description.title.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A0A0\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFC799\\\"}},{\\\"scope\\\":[\\\"markup.raw.block\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#A0A0A0\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00000050\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#00000050\\\"}},{\\\"scope\\\":[\\\"markup.raw.block.fenced.markdown\\\",\\\"variable.language.fenced.markdown\\\",\\\"punctuation.section.class.end\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"variable.language.fenced.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFF\\\"}},{\\\"scope\\\":[\\\"meta.separator\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#65737E\\\"}},{\\\"scope\\\":[\\\"markup.table\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#FFF\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: vitesse-black */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#4d9375\\\",\\\"activityBar.background\\\":\\\"#000\\\",\\\"activityBar.border\\\":\\\"#191919\\\",\\\"activityBar.foreground\\\":\\\"#dbd7cacc\\\",\\\"activityBar.inactiveForeground\\\":\\\"#dedcd550\\\",\\\"activityBarBadge.background\\\":\\\"#bfbaaa\\\",\\\"activityBarBadge.foreground\\\":\\\"#000\\\",\\\"badge.background\\\":\\\"#dedcd590\\\",\\\"badge.foreground\\\":\\\"#000\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#eeeeee18\\\",\\\"breadcrumb.background\\\":\\\"#121212\\\",\\\"breadcrumb.focusForeground\\\":\\\"#dbd7cacc\\\",\\\"breadcrumb.foreground\\\":\\\"#959da5\\\",\\\"breadcrumbPicker.background\\\":\\\"#000\\\",\\\"button.background\\\":\\\"#4d9375\\\",\\\"button.foreground\\\":\\\"#000\\\",\\\"button.hoverBackground\\\":\\\"#4d9375\\\",\\\"checkbox.background\\\":\\\"#121212\\\",\\\"checkbox.border\\\":\\\"#2f363d\\\",\\\"debugToolBar.background\\\":\\\"#000\\\",\\\"descriptionForeground\\\":\\\"#dedcd590\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#4d937550\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ab595950\\\",\\\"dropdown.background\\\":\\\"#000\\\",\\\"dropdown.border\\\":\\\"#191919\\\",\\\"dropdown.foreground\\\":\\\"#dbd7cacc\\\",\\\"dropdown.listBackground\\\":\\\"#121212\\\",\\\"editor.background\\\":\\\"#000\\\",\\\"editor.findMatchBackground\\\":\\\"#e6cc7722\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#e6cc7744\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#b808\\\",\\\"editor.foldBackground\\\":\\\"#eeeeee10\\\",\\\"editor.foreground\\\":\\\"#dbd7cacc\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#eeeeee10\\\",\\\"editor.lineHighlightBackground\\\":\\\"#121212\\\",\\\"editor.selectionBackground\\\":\\\"#eeeeee18\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#eeeeee10\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#a707\\\",\\\"editor.wordHighlightBackground\\\":\\\"#1c6b4805\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#1c6b4810\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#5eaab5\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#4d9375\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#d4976c\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#d9739f\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#e6cc77\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#6394bf\\\",\\\"editorBracketMatch.background\\\":\\\"#4d937520\\\",\\\"editorError.foreground\\\":\\\"#cb7676\\\",\\\"editorGroup.border\\\":\\\"#191919\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#000\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#191919\\\",\\\"editorGutter.addedBackground\\\":\\\"#4d9375\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#dedcd550\\\",\\\"editorGutter.deletedBackground\\\":\\\"#cb7676\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#dedcd590\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#6394bf\\\",\\\"editorHint.foreground\\\":\\\"#4d9375\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#ffffff30\\\",\\\"editorIndentGuide.background\\\":\\\"#ffffff15\\\",\\\"editorInfo.foreground\\\":\\\"#6394bf\\\",\\\"editorInlayHint.background\\\":\\\"#121212\\\",\\\"editorInlayHint.foreground\\\":\\\"#444444\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#bfbaaa\\\",\\\"editorLineNumber.foreground\\\":\\\"#dedcd550\\\",\\\"editorOverviewRuler.border\\\":\\\"#111\\\",\\\"editorStickyScroll.background\\\":\\\"#121212\\\",\\\"editorStickyScrollHover.background\\\":\\\"#121212\\\",\\\"editorWarning.foreground\\\":\\\"#d4976c\\\",\\\"editorWhitespace.foreground\\\":\\\"#ffffff15\\\",\\\"editorWidget.background\\\":\\\"#000\\\",\\\"errorForeground\\\":\\\"#cb7676\\\",\\\"focusBorder\\\":\\\"#00000000\\\",\\\"foreground\\\":\\\"#dbd7cacc\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#4d9375\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#d4976c\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#cb7676\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#dedcd550\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#6394bf\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#dedcd590\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#5eaab5\\\",\\\"input.background\\\":\\\"#121212\\\",\\\"input.border\\\":\\\"#191919\\\",\\\"input.foreground\\\":\\\"#dbd7cacc\\\",\\\"input.placeholderForeground\\\":\\\"#dedcd590\\\",\\\"inputOption.activeBackground\\\":\\\"#dedcd550\\\",\\\"list.activeSelectionBackground\\\":\\\"#121212\\\",\\\"list.activeSelectionForeground\\\":\\\"#dbd7cacc\\\",\\\"list.focusBackground\\\":\\\"#121212\\\",\\\"list.highlightForeground\\\":\\\"#4d9375\\\",\\\"list.hoverBackground\\\":\\\"#121212\\\",\\\"list.hoverForeground\\\":\\\"#dbd7cacc\\\",\\\"list.inactiveFocusBackground\\\":\\\"#000\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#121212\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#dbd7cacc\\\",\\\"menu.separatorBackground\\\":\\\"#191919\\\",\\\"notificationCenterHeader.background\\\":\\\"#000\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#959da5\\\",\\\"notifications.background\\\":\\\"#000\\\",\\\"notifications.border\\\":\\\"#191919\\\",\\\"notifications.foreground\\\":\\\"#dbd7cacc\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#cb7676\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#6394bf\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#d4976c\\\",\\\"panel.background\\\":\\\"#000\\\",\\\"panel.border\\\":\\\"#191919\\\",\\\"panelInput.border\\\":\\\"#2f363d\\\",\\\"panelTitle.activeBorder\\\":\\\"#4d9375\\\",\\\"panelTitle.activeForeground\\\":\\\"#dbd7cacc\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#959da5\\\",\\\"peekViewEditor.background\\\":\\\"#000\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#ffd33d33\\\",\\\"peekViewResult.background\\\":\\\"#000\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#ffd33d33\\\",\\\"pickerGroup.border\\\":\\\"#191919\\\",\\\"pickerGroup.foreground\\\":\\\"#dbd7cacc\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#cb7676\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#6394bf\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#d4976c\\\",\\\"progressBar.background\\\":\\\"#4d9375\\\",\\\"quickInput.background\\\":\\\"#000\\\",\\\"quickInput.foreground\\\":\\\"#dbd7cacc\\\",\\\"quickInputList.focusBackground\\\":\\\"#121212\\\",\\\"scrollbar.shadow\\\":\\\"#0000\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#dedcd550\\\",\\\"scrollbarSlider.background\\\":\\\"#dedcd510\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#dedcd550\\\",\\\"settings.headerForeground\\\":\\\"#dbd7cacc\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#4d9375\\\",\\\"sideBar.background\\\":\\\"#000\\\",\\\"sideBar.border\\\":\\\"#191919\\\",\\\"sideBar.foreground\\\":\\\"#bfbaaa\\\",\\\"sideBarSectionHeader.background\\\":\\\"#000\\\",\\\"sideBarSectionHeader.border\\\":\\\"#191919\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#dbd7cacc\\\",\\\"sideBarTitle.foreground\\\":\\\"#dbd7cacc\\\",\\\"statusBar.background\\\":\\\"#000\\\",\\\"statusBar.border\\\":\\\"#191919\\\",\\\"statusBar.debuggingBackground\\\":\\\"#121212\\\",\\\"statusBar.debuggingForeground\\\":\\\"#bfbaaa\\\",\\\"statusBar.foreground\\\":\\\"#bfbaaa\\\",\\\"statusBar.noFolderBackground\\\":\\\"#000\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#121212\\\",\\\"tab.activeBackground\\\":\\\"#000\\\",\\\"tab.activeBorder\\\":\\\"#191919\\\",\\\"tab.activeBorderTop\\\":\\\"#dedcd590\\\",\\\"tab.activeForeground\\\":\\\"#dbd7cacc\\\",\\\"tab.border\\\":\\\"#191919\\\",\\\"tab.hoverBackground\\\":\\\"#121212\\\",\\\"tab.inactiveBackground\\\":\\\"#000\\\",\\\"tab.inactiveForeground\\\":\\\"#959da5\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#191919\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#191919\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#000\\\",\\\"terminal.ansiBlack\\\":\\\"#393a34\\\",\\\"terminal.ansiBlue\\\":\\\"#6394bf\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#777777\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#6394bf\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#5eaab5\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#4d9375\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#d9739f\\\",\\\"terminal.ansiBrightRed\\\":\\\"#cb7676\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#e6cc77\\\",\\\"terminal.ansiCyan\\\":\\\"#5eaab5\\\",\\\"terminal.ansiGreen\\\":\\\"#4d9375\\\",\\\"terminal.ansiMagenta\\\":\\\"#d9739f\\\",\\\"terminal.ansiRed\\\":\\\"#cb7676\\\",\\\"terminal.ansiWhite\\\":\\\"#dbd7ca\\\",\\\"terminal.ansiYellow\\\":\\\"#e6cc77\\\",\\\"terminal.foreground\\\":\\\"#dbd7cacc\\\",\\\"terminal.selectionBackground\\\":\\\"#eeeeee18\\\",\\\"textBlockQuote.background\\\":\\\"#000\\\",\\\"textBlockQuote.border\\\":\\\"#191919\\\",\\\"textCodeBlock.background\\\":\\\"#000\\\",\\\"textLink.activeForeground\\\":\\\"#4d9375\\\",\\\"textLink.foreground\\\":\\\"#4d9375\\\",\\\"textPreformat.foreground\\\":\\\"#d1d5da\\\",\\\"textSeparator.foreground\\\":\\\"#586069\\\",\\\"titleBar.activeBackground\\\":\\\"#000\\\",\\\"titleBar.activeForeground\\\":\\\"#bfbaaa\\\",\\\"titleBar.border\\\":\\\"#121212\\\",\\\"titleBar.inactiveBackground\\\":\\\"#000\\\",\\\"titleBar.inactiveForeground\\\":\\\"#959da5\\\",\\\"tree.indentGuidesStroke\\\":\\\"#2f363d\\\",\\\"welcomePage.buttonBackground\\\":\\\"#2f363d\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#444d56\\\"},\\\"displayName\\\":\\\"Vitesse Black\\\",\\\"name\\\":\\\"vitesse-black\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"class\\\":\\\"#6872ab\\\",\\\"interface\\\":\\\"#5d99a9\\\",\\\"namespace\\\":\\\"#db889a\\\",\\\"property\\\":\\\"#b8a965\\\",\\\"type\\\":\\\"#5d99a9\\\"},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"string.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#758575dd\\\"}},{\\\"scope\\\":[\\\"delimiter.bracket\\\",\\\"delimiter\\\",\\\"invalid.illegal.character-not-allowed-here.html\\\",\\\"keyword.operator.rest\\\",\\\"keyword.operator.spread\\\",\\\"keyword.operator.type.annotation\\\",\\\"keyword.operator.relational\\\",\\\"keyword.operator.assignment\\\",\\\"keyword.operator.type\\\",\\\"meta.brace\\\",\\\"meta.tag.block.any.html\\\",\\\"meta.tag.inline.any.html\\\",\\\"meta.tag.structure.input.void.html\\\",\\\"meta.type.annotation\\\",\\\"meta.embedded.block.github-actions-expression\\\",\\\"storage.type.function.arrow\\\",\\\"meta.objectliteral.ts\\\",\\\"punctuation\\\",\\\"punctuation.definition.string.begin.html.vue\\\",\\\"punctuation.definition.string.end.html.vue\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#444444\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"entity.name.constant\\\",\\\"variable.language\\\",\\\"meta.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c99076\\\"}},{\\\"scope\\\":[\\\"entity\\\",\\\"entity.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#80a665\\\"}},{\\\"scope\\\":\\\"variable.parameter.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbd7cacc\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"tag.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#80a665\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"storage.type.class.jsdoc\\\",\\\"punctuation.definition.template-expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"storage.type\\\",\\\"support.type.builtin\\\",\\\"constant.language.undefined\\\",\\\"constant.language.null\\\",\\\"constant.language.import-export-all.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cb7676\\\"}},{\\\"scope\\\":[\\\"text.html.derivative\\\",\\\"storage.modifier.package\\\",\\\"storage.modifier.import\\\",\\\"storage.type.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#dbd7cacc\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"string punctuation.section.embedded source\\\",\\\"attribute.value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c98a7d\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c98a7d77\\\"}},{\\\"scope\\\":[\\\"punctuation.support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b8a96577\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b8a965\\\"}},{\\\"scope\\\":[\\\"property\\\",\\\"meta.property-name\\\",\\\"meta.object-literal.key\\\",\\\"entity.name.tag.yaml\\\",\\\"attribute.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b8a965\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\",\\\"invalid.deprecated.entity.other.attribute-name.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bd976a\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"identifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bd976a\\\"}},{\\\"scope\\\":[\\\"support.type.primitive\\\",\\\"entity.name.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DA994\\\"}},{\\\"scope\\\":\\\"namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#db889a\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\",\\\"keyword.operator.assignment.compound\\\",\\\"meta.var.expr.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cb7676\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"carriage-return\\\",\\\"settings\\\":{\\\"background\\\":\\\"#f97583\\\",\\\"content\\\":\\\"^M\\\",\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#24292e\\\"}},{\\\"scope\\\":\\\"message.error\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"string variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c98a7d\\\"}},{\\\"scope\\\":[\\\"source.regexp\\\",\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c4704f\\\"}},{\\\"scope\\\":[\\\"string.regexp.character-class\\\",\\\"string.regexp constant.character.escape\\\",\\\"string.regexp source.ruby.embedded\\\",\\\"string.regexp string.regexp.arbitrary-repitition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c98a7d\\\"}},{\\\"scope\\\":\\\"string.regexp constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e6cc77\\\"}},{\\\"scope\\\":[\\\"support.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c99076\\\"}},{\\\"scope\\\":[\\\"keyword.operator.quantifier.regexp\\\",\\\"constant.numeric\\\",\\\"number\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4C9A91\\\"}},{\\\"scope\\\":[\\\"keyword.other.unit\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cb7676\\\"}},{\\\"scope\\\":[\\\"constant.language.boolean\\\",\\\"constant.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":\\\"meta.module-reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d4976c\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading entity.name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5d99a9\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#dbd7cacc\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#dbd7cacc\\\"}},{\\\"scope\\\":\\\"markup.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\",\\\"meta.diff.header.from-file\\\",\\\"punctuation.definition.deleted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#86181d\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.inserted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#144620\\\",\\\"foreground\\\":\\\"#85e89d\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\",\\\"punctuation.definition.changed\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#c24e00\\\",\\\"foreground\\\":\\\"#ffab70\\\"}},{\\\"scope\\\":[\\\"markup.ignored\\\",\\\"markup.untracked\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#79b8ff\\\",\\\"foreground\\\":\\\"#2f363d\\\"}},{\\\"scope\\\":\\\"meta.diff.range\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#b392f0\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"meta.separator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"meta.output\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":[\\\"brackethighlighter.tag\\\",\\\"brackethighlighter.curly\\\",\\\"brackethighlighter.round\\\",\\\"brackethighlighter.square\\\",\\\"brackethighlighter.angle\\\",\\\"brackethighlighter.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d1d5da\\\"}},{\\\"scope\\\":\\\"brackethighlighter.unmatched\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link\\\",\\\"string.other.link\\\",\\\"punctuation.definition.string.begin.markdown\\\",\\\"punctuation.definition.string.end.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c98a7d\\\"}},{\\\"scope\\\":[\\\"markup.underline.link.markdown\\\",\\\"markup.underline.link.image.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#dedcd590\\\"}},{\\\"scope\\\":[\\\"type.identifier\\\",\\\"constant.other.character-class.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6872ab\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.html.vue\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#80a665\\\"}},{\\\"scope\\\":[\\\"invalid.illegal.unrecognized-tag.html\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: vitesse-dark */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#4d9375\\\",\\\"activityBar.background\\\":\\\"#121212\\\",\\\"activityBar.border\\\":\\\"#191919\\\",\\\"activityBar.foreground\\\":\\\"#dbd7caee\\\",\\\"activityBar.inactiveForeground\\\":\\\"#dedcd550\\\",\\\"activityBarBadge.background\\\":\\\"#bfbaaa\\\",\\\"activityBarBadge.foreground\\\":\\\"#121212\\\",\\\"badge.background\\\":\\\"#dedcd590\\\",\\\"badge.foreground\\\":\\\"#121212\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#eeeeee18\\\",\\\"breadcrumb.background\\\":\\\"#181818\\\",\\\"breadcrumb.focusForeground\\\":\\\"#dbd7caee\\\",\\\"breadcrumb.foreground\\\":\\\"#959da5\\\",\\\"breadcrumbPicker.background\\\":\\\"#121212\\\",\\\"button.background\\\":\\\"#4d9375\\\",\\\"button.foreground\\\":\\\"#121212\\\",\\\"button.hoverBackground\\\":\\\"#4d9375\\\",\\\"checkbox.background\\\":\\\"#181818\\\",\\\"checkbox.border\\\":\\\"#2f363d\\\",\\\"debugToolBar.background\\\":\\\"#121212\\\",\\\"descriptionForeground\\\":\\\"#dedcd590\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#4d937550\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ab595950\\\",\\\"dropdown.background\\\":\\\"#121212\\\",\\\"dropdown.border\\\":\\\"#191919\\\",\\\"dropdown.foreground\\\":\\\"#dbd7caee\\\",\\\"dropdown.listBackground\\\":\\\"#181818\\\",\\\"editor.background\\\":\\\"#121212\\\",\\\"editor.findMatchBackground\\\":\\\"#e6cc7722\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#e6cc7744\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#b808\\\",\\\"editor.foldBackground\\\":\\\"#eeeeee10\\\",\\\"editor.foreground\\\":\\\"#dbd7caee\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#eeeeee10\\\",\\\"editor.lineHighlightBackground\\\":\\\"#181818\\\",\\\"editor.selectionBackground\\\":\\\"#eeeeee18\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#eeeeee10\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#a707\\\",\\\"editor.wordHighlightBackground\\\":\\\"#1c6b4805\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#1c6b4810\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#5eaab5\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#4d9375\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#d4976c\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#d9739f\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#e6cc77\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#6394bf\\\",\\\"editorBracketMatch.background\\\":\\\"#4d937520\\\",\\\"editorError.foreground\\\":\\\"#cb7676\\\",\\\"editorGroup.border\\\":\\\"#191919\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#121212\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#191919\\\",\\\"editorGutter.addedBackground\\\":\\\"#4d9375\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#dedcd550\\\",\\\"editorGutter.deletedBackground\\\":\\\"#cb7676\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#dedcd590\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#6394bf\\\",\\\"editorHint.foreground\\\":\\\"#4d9375\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#ffffff30\\\",\\\"editorIndentGuide.background\\\":\\\"#ffffff15\\\",\\\"editorInfo.foreground\\\":\\\"#6394bf\\\",\\\"editorInlayHint.background\\\":\\\"#181818\\\",\\\"editorInlayHint.foreground\\\":\\\"#666666\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#bfbaaa\\\",\\\"editorLineNumber.foreground\\\":\\\"#dedcd550\\\",\\\"editorOverviewRuler.border\\\":\\\"#111\\\",\\\"editorStickyScroll.background\\\":\\\"#181818\\\",\\\"editorStickyScrollHover.background\\\":\\\"#181818\\\",\\\"editorWarning.foreground\\\":\\\"#d4976c\\\",\\\"editorWhitespace.foreground\\\":\\\"#ffffff15\\\",\\\"editorWidget.background\\\":\\\"#121212\\\",\\\"errorForeground\\\":\\\"#cb7676\\\",\\\"focusBorder\\\":\\\"#00000000\\\",\\\"foreground\\\":\\\"#dbd7caee\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#4d9375\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#d4976c\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#cb7676\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#dedcd550\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#6394bf\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#dedcd590\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#5eaab5\\\",\\\"input.background\\\":\\\"#181818\\\",\\\"input.border\\\":\\\"#191919\\\",\\\"input.foreground\\\":\\\"#dbd7caee\\\",\\\"input.placeholderForeground\\\":\\\"#dedcd590\\\",\\\"inputOption.activeBackground\\\":\\\"#dedcd550\\\",\\\"list.activeSelectionBackground\\\":\\\"#181818\\\",\\\"list.activeSelectionForeground\\\":\\\"#dbd7caee\\\",\\\"list.focusBackground\\\":\\\"#181818\\\",\\\"list.highlightForeground\\\":\\\"#4d9375\\\",\\\"list.hoverBackground\\\":\\\"#181818\\\",\\\"list.hoverForeground\\\":\\\"#dbd7caee\\\",\\\"list.inactiveFocusBackground\\\":\\\"#121212\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#181818\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#dbd7caee\\\",\\\"menu.separatorBackground\\\":\\\"#191919\\\",\\\"notificationCenterHeader.background\\\":\\\"#121212\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#959da5\\\",\\\"notifications.background\\\":\\\"#121212\\\",\\\"notifications.border\\\":\\\"#191919\\\",\\\"notifications.foreground\\\":\\\"#dbd7caee\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#cb7676\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#6394bf\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#d4976c\\\",\\\"panel.background\\\":\\\"#121212\\\",\\\"panel.border\\\":\\\"#191919\\\",\\\"panelInput.border\\\":\\\"#2f363d\\\",\\\"panelTitle.activeBorder\\\":\\\"#4d9375\\\",\\\"panelTitle.activeForeground\\\":\\\"#dbd7caee\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#959da5\\\",\\\"peekViewEditor.background\\\":\\\"#121212\\\",\\\"peekViewEditor.matchHighlightBackground\\\":\\\"#ffd33d33\\\",\\\"peekViewResult.background\\\":\\\"#121212\\\",\\\"peekViewResult.matchHighlightBackground\\\":\\\"#ffd33d33\\\",\\\"pickerGroup.border\\\":\\\"#191919\\\",\\\"pickerGroup.foreground\\\":\\\"#dbd7caee\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#cb7676\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#6394bf\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#d4976c\\\",\\\"progressBar.background\\\":\\\"#4d9375\\\",\\\"quickInput.background\\\":\\\"#121212\\\",\\\"quickInput.foreground\\\":\\\"#dbd7caee\\\",\\\"quickInputList.focusBackground\\\":\\\"#181818\\\",\\\"scrollbar.shadow\\\":\\\"#0000\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#dedcd550\\\",\\\"scrollbarSlider.background\\\":\\\"#dedcd510\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#dedcd550\\\",\\\"settings.headerForeground\\\":\\\"#dbd7caee\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#4d9375\\\",\\\"sideBar.background\\\":\\\"#121212\\\",\\\"sideBar.border\\\":\\\"#191919\\\",\\\"sideBar.foreground\\\":\\\"#bfbaaa\\\",\\\"sideBarSectionHeader.background\\\":\\\"#121212\\\",\\\"sideBarSectionHeader.border\\\":\\\"#191919\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#dbd7caee\\\",\\\"sideBarTitle.foreground\\\":\\\"#dbd7caee\\\",\\\"statusBar.background\\\":\\\"#121212\\\",\\\"statusBar.border\\\":\\\"#191919\\\",\\\"statusBar.debuggingBackground\\\":\\\"#181818\\\",\\\"statusBar.debuggingForeground\\\":\\\"#bfbaaa\\\",\\\"statusBar.foreground\\\":\\\"#bfbaaa\\\",\\\"statusBar.noFolderBackground\\\":\\\"#121212\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#181818\\\",\\\"tab.activeBackground\\\":\\\"#121212\\\",\\\"tab.activeBorder\\\":\\\"#191919\\\",\\\"tab.activeBorderTop\\\":\\\"#dedcd590\\\",\\\"tab.activeForeground\\\":\\\"#dbd7caee\\\",\\\"tab.border\\\":\\\"#191919\\\",\\\"tab.hoverBackground\\\":\\\"#181818\\\",\\\"tab.inactiveBackground\\\":\\\"#121212\\\",\\\"tab.inactiveForeground\\\":\\\"#959da5\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#191919\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#191919\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#121212\\\",\\\"terminal.ansiBlack\\\":\\\"#393a34\\\",\\\"terminal.ansiBlue\\\":\\\"#6394bf\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#777777\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#6394bf\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#5eaab5\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#4d9375\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#d9739f\\\",\\\"terminal.ansiBrightRed\\\":\\\"#cb7676\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#ffffff\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#e6cc77\\\",\\\"terminal.ansiCyan\\\":\\\"#5eaab5\\\",\\\"terminal.ansiGreen\\\":\\\"#4d9375\\\",\\\"terminal.ansiMagenta\\\":\\\"#d9739f\\\",\\\"terminal.ansiRed\\\":\\\"#cb7676\\\",\\\"terminal.ansiWhite\\\":\\\"#dbd7ca\\\",\\\"terminal.ansiYellow\\\":\\\"#e6cc77\\\",\\\"terminal.foreground\\\":\\\"#dbd7caee\\\",\\\"terminal.selectionBackground\\\":\\\"#eeeeee18\\\",\\\"textBlockQuote.background\\\":\\\"#121212\\\",\\\"textBlockQuote.border\\\":\\\"#191919\\\",\\\"textCodeBlock.background\\\":\\\"#121212\\\",\\\"textLink.activeForeground\\\":\\\"#4d9375\\\",\\\"textLink.foreground\\\":\\\"#4d9375\\\",\\\"textPreformat.foreground\\\":\\\"#d1d5da\\\",\\\"textSeparator.foreground\\\":\\\"#586069\\\",\\\"titleBar.activeBackground\\\":\\\"#121212\\\",\\\"titleBar.activeForeground\\\":\\\"#bfbaaa\\\",\\\"titleBar.border\\\":\\\"#181818\\\",\\\"titleBar.inactiveBackground\\\":\\\"#121212\\\",\\\"titleBar.inactiveForeground\\\":\\\"#959da5\\\",\\\"tree.indentGuidesStroke\\\":\\\"#2f363d\\\",\\\"welcomePage.buttonBackground\\\":\\\"#2f363d\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#444d56\\\"},\\\"displayName\\\":\\\"Vitesse Dark\\\",\\\"name\\\":\\\"vitesse-dark\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"class\\\":\\\"#6872ab\\\",\\\"interface\\\":\\\"#5d99a9\\\",\\\"namespace\\\":\\\"#db889a\\\",\\\"property\\\":\\\"#b8a965\\\",\\\"type\\\":\\\"#5d99a9\\\"},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"string.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#758575dd\\\"}},{\\\"scope\\\":[\\\"delimiter.bracket\\\",\\\"delimiter\\\",\\\"invalid.illegal.character-not-allowed-here.html\\\",\\\"keyword.operator.rest\\\",\\\"keyword.operator.spread\\\",\\\"keyword.operator.type.annotation\\\",\\\"keyword.operator.relational\\\",\\\"keyword.operator.assignment\\\",\\\"keyword.operator.type\\\",\\\"meta.brace\\\",\\\"meta.tag.block.any.html\\\",\\\"meta.tag.inline.any.html\\\",\\\"meta.tag.structure.input.void.html\\\",\\\"meta.type.annotation\\\",\\\"meta.embedded.block.github-actions-expression\\\",\\\"storage.type.function.arrow\\\",\\\"meta.objectliteral.ts\\\",\\\"punctuation\\\",\\\"punctuation.definition.string.begin.html.vue\\\",\\\"punctuation.definition.string.end.html.vue\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#666666\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"entity.name.constant\\\",\\\"variable.language\\\",\\\"meta.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c99076\\\"}},{\\\"scope\\\":[\\\"entity\\\",\\\"entity.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#80a665\\\"}},{\\\"scope\\\":\\\"variable.parameter.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#dbd7caee\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"tag.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#80a665\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"storage.type.class.jsdoc\\\",\\\"punctuation.definition.template-expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"storage.type\\\",\\\"support.type.builtin\\\",\\\"constant.language.undefined\\\",\\\"constant.language.null\\\",\\\"constant.language.import-export-all.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cb7676\\\"}},{\\\"scope\\\":[\\\"text.html.derivative\\\",\\\"storage.modifier.package\\\",\\\"storage.modifier.import\\\",\\\"storage.type.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#dbd7caee\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"string punctuation.section.embedded source\\\",\\\"attribute.value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c98a7d\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c98a7d77\\\"}},{\\\"scope\\\":[\\\"punctuation.support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b8a96577\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b8a965\\\"}},{\\\"scope\\\":[\\\"property\\\",\\\"meta.property-name\\\",\\\"meta.object-literal.key\\\",\\\"entity.name.tag.yaml\\\",\\\"attribute.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b8a965\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\",\\\"invalid.deprecated.entity.other.attribute-name.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bd976a\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"identifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#bd976a\\\"}},{\\\"scope\\\":[\\\"support.type.primitive\\\",\\\"entity.name.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5DA994\\\"}},{\\\"scope\\\":\\\"namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#db889a\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\",\\\"keyword.operator.assignment.compound\\\",\\\"meta.var.expr.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cb7676\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"carriage-return\\\",\\\"settings\\\":{\\\"background\\\":\\\"#f97583\\\",\\\"content\\\":\\\"^M\\\",\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#24292e\\\"}},{\\\"scope\\\":\\\"message.error\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":\\\"string variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#c98a7d\\\"}},{\\\"scope\\\":[\\\"source.regexp\\\",\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c4704f\\\"}},{\\\"scope\\\":[\\\"string.regexp.character-class\\\",\\\"string.regexp constant.character.escape\\\",\\\"string.regexp source.ruby.embedded\\\",\\\"string.regexp string.regexp.arbitrary-repitition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c98a7d\\\"}},{\\\"scope\\\":\\\"string.regexp constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#e6cc77\\\"}},{\\\"scope\\\":[\\\"support.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c99076\\\"}},{\\\"scope\\\":[\\\"keyword.operator.quantifier.regexp\\\",\\\"constant.numeric\\\",\\\"number\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4C9A91\\\"}},{\\\"scope\\\":[\\\"keyword.other.unit\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#cb7676\\\"}},{\\\"scope\\\":[\\\"constant.language.boolean\\\",\\\"constant.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":\\\"meta.module-reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#d4976c\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading entity.name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#5d99a9\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#dbd7caee\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#dbd7caee\\\"}},{\\\"scope\\\":\\\"markup.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#4d9375\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\",\\\"meta.diff.header.from-file\\\",\\\"punctuation.definition.deleted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#86181d\\\",\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.inserted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#144620\\\",\\\"foreground\\\":\\\"#85e89d\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\",\\\"punctuation.definition.changed\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#c24e00\\\",\\\"foreground\\\":\\\"#ffab70\\\"}},{\\\"scope\\\":[\\\"markup.ignored\\\",\\\"markup.untracked\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#79b8ff\\\",\\\"foreground\\\":\\\"#2f363d\\\"}},{\\\"scope\\\":\\\"meta.diff.range\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#b392f0\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"meta.separator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":\\\"meta.output\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#79b8ff\\\"}},{\\\"scope\\\":[\\\"brackethighlighter.tag\\\",\\\"brackethighlighter.curly\\\",\\\"brackethighlighter.round\\\",\\\"brackethighlighter.square\\\",\\\"brackethighlighter.angle\\\",\\\"brackethighlighter.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#d1d5da\\\"}},{\\\"scope\\\":\\\"brackethighlighter.unmatched\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#fdaeb7\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link\\\",\\\"string.other.link\\\",\\\"punctuation.definition.string.begin.markdown\\\",\\\"punctuation.definition.string.end.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#c98a7d\\\"}},{\\\"scope\\\":[\\\"markup.underline.link.markdown\\\",\\\"markup.underline.link.image.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#dedcd590\\\"}},{\\\"scope\\\":[\\\"type.identifier\\\",\\\"constant.other.character-class.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#6872ab\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.html.vue\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#80a665\\\"}},{\\\"scope\\\":[\\\"invalid.illegal.unrecognized-tag.html\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\"}}],\\\"type\\\":\\\"dark\\\"}\"))\n", "/* Theme: vitesse-light */\nexport default Object.freeze(JSON.parse(\"{\\\"colors\\\":{\\\"activityBar.activeBorder\\\":\\\"#1c6b48\\\",\\\"activityBar.background\\\":\\\"#ffffff\\\",\\\"activityBar.border\\\":\\\"#f0f0f0\\\",\\\"activityBar.foreground\\\":\\\"#393a34\\\",\\\"activityBar.inactiveForeground\\\":\\\"#393a3450\\\",\\\"activityBarBadge.background\\\":\\\"#4e4f47\\\",\\\"activityBarBadge.foreground\\\":\\\"#ffffff\\\",\\\"badge.background\\\":\\\"#393a3490\\\",\\\"badge.foreground\\\":\\\"#ffffff\\\",\\\"breadcrumb.activeSelectionForeground\\\":\\\"#22222218\\\",\\\"breadcrumb.background\\\":\\\"#f7f7f7\\\",\\\"breadcrumb.focusForeground\\\":\\\"#393a34\\\",\\\"breadcrumb.foreground\\\":\\\"#6a737d\\\",\\\"breadcrumbPicker.background\\\":\\\"#ffffff\\\",\\\"button.background\\\":\\\"#1c6b48\\\",\\\"button.foreground\\\":\\\"#ffffff\\\",\\\"button.hoverBackground\\\":\\\"#1c6b48\\\",\\\"checkbox.background\\\":\\\"#f7f7f7\\\",\\\"checkbox.border\\\":\\\"#d1d5da\\\",\\\"debugToolBar.background\\\":\\\"#ffffff\\\",\\\"descriptionForeground\\\":\\\"#393a3490\\\",\\\"diffEditor.insertedTextBackground\\\":\\\"#1c6b4830\\\",\\\"diffEditor.removedTextBackground\\\":\\\"#ab595940\\\",\\\"dropdown.background\\\":\\\"#ffffff\\\",\\\"dropdown.border\\\":\\\"#f0f0f0\\\",\\\"dropdown.foreground\\\":\\\"#393a34\\\",\\\"dropdown.listBackground\\\":\\\"#f7f7f7\\\",\\\"editor.background\\\":\\\"#ffffff\\\",\\\"editor.findMatchBackground\\\":\\\"#e6cc7744\\\",\\\"editor.findMatchHighlightBackground\\\":\\\"#e6cc7766\\\",\\\"editor.focusedStackFrameHighlightBackground\\\":\\\"#fff5b1\\\",\\\"editor.foldBackground\\\":\\\"#22222210\\\",\\\"editor.foreground\\\":\\\"#393a34\\\",\\\"editor.inactiveSelectionBackground\\\":\\\"#22222210\\\",\\\"editor.lineHighlightBackground\\\":\\\"#f7f7f7\\\",\\\"editor.selectionBackground\\\":\\\"#22222218\\\",\\\"editor.selectionHighlightBackground\\\":\\\"#22222210\\\",\\\"editor.stackFrameHighlightBackground\\\":\\\"#fffbdd\\\",\\\"editor.wordHighlightBackground\\\":\\\"#1c6b4805\\\",\\\"editor.wordHighlightStrongBackground\\\":\\\"#1c6b4810\\\",\\\"editorBracketHighlight.foreground1\\\":\\\"#2993a3\\\",\\\"editorBracketHighlight.foreground2\\\":\\\"#1e754f\\\",\\\"editorBracketHighlight.foreground3\\\":\\\"#a65e2b\\\",\\\"editorBracketHighlight.foreground4\\\":\\\"#a13865\\\",\\\"editorBracketHighlight.foreground5\\\":\\\"#bda437\\\",\\\"editorBracketHighlight.foreground6\\\":\\\"#296aa3\\\",\\\"editorBracketMatch.background\\\":\\\"#1c6b4820\\\",\\\"editorError.foreground\\\":\\\"#ab5959\\\",\\\"editorGroup.border\\\":\\\"#f0f0f0\\\",\\\"editorGroupHeader.tabsBackground\\\":\\\"#ffffff\\\",\\\"editorGroupHeader.tabsBorder\\\":\\\"#f0f0f0\\\",\\\"editorGutter.addedBackground\\\":\\\"#1e754f\\\",\\\"editorGutter.commentRangeForeground\\\":\\\"#393a3450\\\",\\\"editorGutter.deletedBackground\\\":\\\"#ab5959\\\",\\\"editorGutter.foldingControlForeground\\\":\\\"#393a3490\\\",\\\"editorGutter.modifiedBackground\\\":\\\"#296aa3\\\",\\\"editorHint.foreground\\\":\\\"#1e754f\\\",\\\"editorIndentGuide.activeBackground\\\":\\\"#00000030\\\",\\\"editorIndentGuide.background\\\":\\\"#00000015\\\",\\\"editorInfo.foreground\\\":\\\"#296aa3\\\",\\\"editorInlayHint.background\\\":\\\"#f7f7f7\\\",\\\"editorInlayHint.foreground\\\":\\\"#999999\\\",\\\"editorLineNumber.activeForeground\\\":\\\"#4e4f47\\\",\\\"editorLineNumber.foreground\\\":\\\"#393a3450\\\",\\\"editorOverviewRuler.border\\\":\\\"#fff\\\",\\\"editorStickyScroll.background\\\":\\\"#f7f7f7\\\",\\\"editorStickyScrollHover.background\\\":\\\"#f7f7f7\\\",\\\"editorWarning.foreground\\\":\\\"#a65e2b\\\",\\\"editorWhitespace.foreground\\\":\\\"#00000015\\\",\\\"editorWidget.background\\\":\\\"#ffffff\\\",\\\"errorForeground\\\":\\\"#ab5959\\\",\\\"focusBorder\\\":\\\"#00000000\\\",\\\"foreground\\\":\\\"#393a34\\\",\\\"gitDecoration.addedResourceForeground\\\":\\\"#1e754f\\\",\\\"gitDecoration.conflictingResourceForeground\\\":\\\"#a65e2b\\\",\\\"gitDecoration.deletedResourceForeground\\\":\\\"#ab5959\\\",\\\"gitDecoration.ignoredResourceForeground\\\":\\\"#393a3450\\\",\\\"gitDecoration.modifiedResourceForeground\\\":\\\"#296aa3\\\",\\\"gitDecoration.submoduleResourceForeground\\\":\\\"#393a3490\\\",\\\"gitDecoration.untrackedResourceForeground\\\":\\\"#2993a3\\\",\\\"input.background\\\":\\\"#f7f7f7\\\",\\\"input.border\\\":\\\"#f0f0f0\\\",\\\"input.foreground\\\":\\\"#393a34\\\",\\\"input.placeholderForeground\\\":\\\"#393a3490\\\",\\\"inputOption.activeBackground\\\":\\\"#393a3450\\\",\\\"list.activeSelectionBackground\\\":\\\"#f7f7f7\\\",\\\"list.activeSelectionForeground\\\":\\\"#393a34\\\",\\\"list.focusBackground\\\":\\\"#f7f7f7\\\",\\\"list.highlightForeground\\\":\\\"#1c6b48\\\",\\\"list.hoverBackground\\\":\\\"#f7f7f7\\\",\\\"list.hoverForeground\\\":\\\"#393a34\\\",\\\"list.inactiveFocusBackground\\\":\\\"#ffffff\\\",\\\"list.inactiveSelectionBackground\\\":\\\"#f7f7f7\\\",\\\"list.inactiveSelectionForeground\\\":\\\"#393a34\\\",\\\"menu.separatorBackground\\\":\\\"#f0f0f0\\\",\\\"notificationCenterHeader.background\\\":\\\"#ffffff\\\",\\\"notificationCenterHeader.foreground\\\":\\\"#6a737d\\\",\\\"notifications.background\\\":\\\"#ffffff\\\",\\\"notifications.border\\\":\\\"#f0f0f0\\\",\\\"notifications.foreground\\\":\\\"#393a34\\\",\\\"notificationsErrorIcon.foreground\\\":\\\"#ab5959\\\",\\\"notificationsInfoIcon.foreground\\\":\\\"#296aa3\\\",\\\"notificationsWarningIcon.foreground\\\":\\\"#a65e2b\\\",\\\"panel.background\\\":\\\"#ffffff\\\",\\\"panel.border\\\":\\\"#f0f0f0\\\",\\\"panelInput.border\\\":\\\"#e1e4e8\\\",\\\"panelTitle.activeBorder\\\":\\\"#1c6b48\\\",\\\"panelTitle.activeForeground\\\":\\\"#393a34\\\",\\\"panelTitle.inactiveForeground\\\":\\\"#6a737d\\\",\\\"peekViewEditor.background\\\":\\\"#ffffff\\\",\\\"peekViewResult.background\\\":\\\"#ffffff\\\",\\\"pickerGroup.border\\\":\\\"#f0f0f0\\\",\\\"pickerGroup.foreground\\\":\\\"#393a34\\\",\\\"problemsErrorIcon.foreground\\\":\\\"#ab5959\\\",\\\"problemsInfoIcon.foreground\\\":\\\"#296aa3\\\",\\\"problemsWarningIcon.foreground\\\":\\\"#a65e2b\\\",\\\"progressBar.background\\\":\\\"#1c6b48\\\",\\\"quickInput.background\\\":\\\"#ffffff\\\",\\\"quickInput.foreground\\\":\\\"#393a34\\\",\\\"quickInputList.focusBackground\\\":\\\"#f7f7f7\\\",\\\"scrollbar.shadow\\\":\\\"#6a737d33\\\",\\\"scrollbarSlider.activeBackground\\\":\\\"#393a3450\\\",\\\"scrollbarSlider.background\\\":\\\"#393a3410\\\",\\\"scrollbarSlider.hoverBackground\\\":\\\"#393a3450\\\",\\\"settings.headerForeground\\\":\\\"#393a34\\\",\\\"settings.modifiedItemIndicator\\\":\\\"#1c6b48\\\",\\\"sideBar.background\\\":\\\"#ffffff\\\",\\\"sideBar.border\\\":\\\"#f0f0f0\\\",\\\"sideBar.foreground\\\":\\\"#4e4f47\\\",\\\"sideBarSectionHeader.background\\\":\\\"#ffffff\\\",\\\"sideBarSectionHeader.border\\\":\\\"#f0f0f0\\\",\\\"sideBarSectionHeader.foreground\\\":\\\"#393a34\\\",\\\"sideBarTitle.foreground\\\":\\\"#393a34\\\",\\\"statusBar.background\\\":\\\"#ffffff\\\",\\\"statusBar.border\\\":\\\"#f0f0f0\\\",\\\"statusBar.debuggingBackground\\\":\\\"#f7f7f7\\\",\\\"statusBar.debuggingForeground\\\":\\\"#4e4f47\\\",\\\"statusBar.foreground\\\":\\\"#4e4f47\\\",\\\"statusBar.noFolderBackground\\\":\\\"#ffffff\\\",\\\"statusBarItem.prominentBackground\\\":\\\"#f7f7f7\\\",\\\"tab.activeBackground\\\":\\\"#ffffff\\\",\\\"tab.activeBorder\\\":\\\"#f0f0f0\\\",\\\"tab.activeBorderTop\\\":\\\"#393a3490\\\",\\\"tab.activeForeground\\\":\\\"#393a34\\\",\\\"tab.border\\\":\\\"#f0f0f0\\\",\\\"tab.hoverBackground\\\":\\\"#f7f7f7\\\",\\\"tab.inactiveBackground\\\":\\\"#ffffff\\\",\\\"tab.inactiveForeground\\\":\\\"#6a737d\\\",\\\"tab.unfocusedActiveBorder\\\":\\\"#f0f0f0\\\",\\\"tab.unfocusedActiveBorderTop\\\":\\\"#f0f0f0\\\",\\\"tab.unfocusedHoverBackground\\\":\\\"#ffffff\\\",\\\"terminal.ansiBlack\\\":\\\"#121212\\\",\\\"terminal.ansiBlue\\\":\\\"#296aa3\\\",\\\"terminal.ansiBrightBlack\\\":\\\"#aaaaaa\\\",\\\"terminal.ansiBrightBlue\\\":\\\"#296aa3\\\",\\\"terminal.ansiBrightCyan\\\":\\\"#2993a3\\\",\\\"terminal.ansiBrightGreen\\\":\\\"#1e754f\\\",\\\"terminal.ansiBrightMagenta\\\":\\\"#a13865\\\",\\\"terminal.ansiBrightRed\\\":\\\"#ab5959\\\",\\\"terminal.ansiBrightWhite\\\":\\\"#dddddd\\\",\\\"terminal.ansiBrightYellow\\\":\\\"#bda437\\\",\\\"terminal.ansiCyan\\\":\\\"#2993a3\\\",\\\"terminal.ansiGreen\\\":\\\"#1e754f\\\",\\\"terminal.ansiMagenta\\\":\\\"#a13865\\\",\\\"terminal.ansiRed\\\":\\\"#ab5959\\\",\\\"terminal.ansiWhite\\\":\\\"#dbd7ca\\\",\\\"terminal.ansiYellow\\\":\\\"#bda437\\\",\\\"terminal.foreground\\\":\\\"#393a34\\\",\\\"terminal.selectionBackground\\\":\\\"#22222218\\\",\\\"textBlockQuote.background\\\":\\\"#ffffff\\\",\\\"textBlockQuote.border\\\":\\\"#f0f0f0\\\",\\\"textCodeBlock.background\\\":\\\"#ffffff\\\",\\\"textLink.activeForeground\\\":\\\"#1c6b48\\\",\\\"textLink.foreground\\\":\\\"#1c6b48\\\",\\\"textPreformat.foreground\\\":\\\"#586069\\\",\\\"textSeparator.foreground\\\":\\\"#d1d5da\\\",\\\"titleBar.activeBackground\\\":\\\"#ffffff\\\",\\\"titleBar.activeForeground\\\":\\\"#4e4f47\\\",\\\"titleBar.border\\\":\\\"#f7f7f7\\\",\\\"titleBar.inactiveBackground\\\":\\\"#ffffff\\\",\\\"titleBar.inactiveForeground\\\":\\\"#6a737d\\\",\\\"tree.indentGuidesStroke\\\":\\\"#e1e4e8\\\",\\\"welcomePage.buttonBackground\\\":\\\"#f6f8fa\\\",\\\"welcomePage.buttonHoverBackground\\\":\\\"#e1e4e8\\\"},\\\"displayName\\\":\\\"Vitesse Light\\\",\\\"name\\\":\\\"vitesse-light\\\",\\\"semanticHighlighting\\\":true,\\\"semanticTokenColors\\\":{\\\"class\\\":\\\"#5a6aa6\\\",\\\"interface\\\":\\\"#2e808f\\\",\\\"namespace\\\":\\\"#b05a78\\\",\\\"property\\\":\\\"#998418\\\",\\\"type\\\":\\\"#2e808f\\\"},\\\"tokenColors\\\":[{\\\"scope\\\":[\\\"comment\\\",\\\"punctuation.definition.comment\\\",\\\"string.comment\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a0ada0\\\"}},{\\\"scope\\\":[\\\"delimiter.bracket\\\",\\\"delimiter\\\",\\\"invalid.illegal.character-not-allowed-here.html\\\",\\\"keyword.operator.rest\\\",\\\"keyword.operator.spread\\\",\\\"keyword.operator.type.annotation\\\",\\\"keyword.operator.relational\\\",\\\"keyword.operator.assignment\\\",\\\"keyword.operator.type\\\",\\\"meta.brace\\\",\\\"meta.tag.block.any.html\\\",\\\"meta.tag.inline.any.html\\\",\\\"meta.tag.structure.input.void.html\\\",\\\"meta.type.annotation\\\",\\\"meta.embedded.block.github-actions-expression\\\",\\\"storage.type.function.arrow\\\",\\\"meta.objectliteral.ts\\\",\\\"punctuation\\\",\\\"punctuation.definition.string.begin.html.vue\\\",\\\"punctuation.definition.string.end.html.vue\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#999999\\\"}},{\\\"scope\\\":[\\\"constant\\\",\\\"entity.name.constant\\\",\\\"variable.language\\\",\\\"meta.definition.variable\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a65e2b\\\"}},{\\\"scope\\\":[\\\"entity\\\",\\\"entity.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#59873a\\\"}},{\\\"scope\\\":\\\"variable.parameter.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#393a34\\\"}},{\\\"scope\\\":[\\\"entity.name.tag\\\",\\\"tag.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1e754f\\\"}},{\\\"scope\\\":\\\"entity.name.function\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#59873a\\\"}},{\\\"scope\\\":[\\\"keyword\\\",\\\"storage.type.class.jsdoc\\\",\\\"punctuation.definition.template-expression\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1e754f\\\"}},{\\\"scope\\\":[\\\"storage\\\",\\\"storage.type\\\",\\\"support.type.builtin\\\",\\\"constant.language.undefined\\\",\\\"constant.language.null\\\",\\\"constant.language.import-export-all.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ab5959\\\"}},{\\\"scope\\\":[\\\"text.html.derivative\\\",\\\"storage.modifier.package\\\",\\\"storage.modifier.import\\\",\\\"storage.type.java\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#393a34\\\"}},{\\\"scope\\\":[\\\"string\\\",\\\"string punctuation.section.embedded source\\\",\\\"attribute.value\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b56959\\\"}},{\\\"scope\\\":[\\\"punctuation.definition.string\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b5695977\\\"}},{\\\"scope\\\":[\\\"punctuation.support.type.property-name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#99841877\\\"}},{\\\"scope\\\":\\\"support\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#998418\\\"}},{\\\"scope\\\":[\\\"property\\\",\\\"meta.property-name\\\",\\\"meta.object-literal.key\\\",\\\"entity.name.tag.yaml\\\",\\\"attribute.name\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#998418\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name\\\",\\\"invalid.deprecated.entity.other.attribute-name.html\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b07d48\\\"}},{\\\"scope\\\":[\\\"variable\\\",\\\"identifier\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b07d48\\\"}},{\\\"scope\\\":[\\\"support.type.primitive\\\",\\\"entity.name.type\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2e8f82\\\"}},{\\\"scope\\\":\\\"namespace\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b05a78\\\"}},{\\\"scope\\\":[\\\"keyword.operator\\\",\\\"keyword.operator.assignment.compound\\\",\\\"meta.var.expr.ts\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ab5959\\\"}},{\\\"scope\\\":\\\"invalid.broken\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":\\\"invalid.deprecated\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":\\\"invalid.illegal\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":\\\"invalid.unimplemented\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":\\\"carriage-return\\\",\\\"settings\\\":{\\\"background\\\":\\\"#d73a49\\\",\\\"content\\\":\\\"^M\\\",\\\"fontStyle\\\":\\\"italic underline\\\",\\\"foreground\\\":\\\"#fafbfc\\\"}},{\\\"scope\\\":\\\"message.error\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":\\\"string variable\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b56959\\\"}},{\\\"scope\\\":[\\\"source.regexp\\\",\\\"string.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ab5e3f\\\"}},{\\\"scope\\\":[\\\"string.regexp.character-class\\\",\\\"string.regexp constant.character.escape\\\",\\\"string.regexp source.ruby.embedded\\\",\\\"string.regexp string.regexp.arbitrary-repitition\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b56959\\\"}},{\\\"scope\\\":\\\"string.regexp constant.character.escape\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#bda437\\\"}},{\\\"scope\\\":[\\\"support.constant\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#a65e2b\\\"}},{\\\"scope\\\":[\\\"keyword.operator.quantifier.regexp\\\",\\\"constant.numeric\\\",\\\"number\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#2f798a\\\"}},{\\\"scope\\\":[\\\"keyword.other.unit\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#ab5959\\\"}},{\\\"scope\\\":[\\\"constant.language.boolean\\\",\\\"constant.language\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#1e754f\\\"}},{\\\"scope\\\":\\\"meta.module-reference\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#1c6b48\\\"}},{\\\"scope\\\":\\\"punctuation.definition.list.begin.markdown\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#a65e2b\\\"}},{\\\"scope\\\":[\\\"markup.heading\\\",\\\"markup.heading entity.name\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#1c6b48\\\"}},{\\\"scope\\\":\\\"markup.quote\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#2e808f\\\"}},{\\\"scope\\\":\\\"markup.italic\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"italic\\\",\\\"foreground\\\":\\\"#393a34\\\"}},{\\\"scope\\\":\\\"markup.bold\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#393a34\\\"}},{\\\"scope\\\":\\\"markup.raw\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#1c6b48\\\"}},{\\\"scope\\\":[\\\"markup.deleted\\\",\\\"meta.diff.header.from-file\\\",\\\"punctuation.definition.deleted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#ffeef0\\\",\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":[\\\"markup.inserted\\\",\\\"meta.diff.header.to-file\\\",\\\"punctuation.definition.inserted\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#f0fff4\\\",\\\"foreground\\\":\\\"#22863a\\\"}},{\\\"scope\\\":[\\\"markup.changed\\\",\\\"punctuation.definition.changed\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#ffebda\\\",\\\"foreground\\\":\\\"#e36209\\\"}},{\\\"scope\\\":[\\\"markup.ignored\\\",\\\"markup.untracked\\\"],\\\"settings\\\":{\\\"background\\\":\\\"#005cc5\\\",\\\"foreground\\\":\\\"#f6f8fa\\\"}},{\\\"scope\\\":\\\"meta.diff.range\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#6f42c1\\\"}},{\\\"scope\\\":\\\"meta.diff.header\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":\\\"meta.separator\\\",\\\"settings\\\":{\\\"fontStyle\\\":\\\"bold\\\",\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":\\\"meta.output\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#005cc5\\\"}},{\\\"scope\\\":[\\\"brackethighlighter.tag\\\",\\\"brackethighlighter.curly\\\",\\\"brackethighlighter.round\\\",\\\"brackethighlighter.square\\\",\\\"brackethighlighter.angle\\\",\\\"brackethighlighter.quote\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#586069\\\"}},{\\\"scope\\\":\\\"brackethighlighter.unmatched\\\",\\\"settings\\\":{\\\"foreground\\\":\\\"#b31d28\\\"}},{\\\"scope\\\":[\\\"constant.other.reference.link\\\",\\\"string.other.link\\\",\\\"punctuation.definition.string.begin.markdown\\\",\\\"punctuation.definition.string.end.markdown\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#b56959\\\"}},{\\\"scope\\\":[\\\"markup.underline.link.markdown\\\",\\\"markup.underline.link.image.markdown\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"underline\\\",\\\"foreground\\\":\\\"#393a3490\\\"}},{\\\"scope\\\":[\\\"type.identifier\\\",\\\"constant.other.character-class.regexp\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#5a6aa6\\\"}},{\\\"scope\\\":[\\\"entity.other.attribute-name.html.vue\\\"],\\\"settings\\\":{\\\"foreground\\\":\\\"#59873a\\\"}},{\\\"scope\\\":[\\\"invalid.illegal.unrecognized-tag.html\\\"],\\\"settings\\\":{\\\"fontStyle\\\":\\\"normal\\\"}}],\\\"type\\\":\\\"light\\\"}\"))\n", "var binary = Uint8Array.from(atob(\"AGFzbQEAAAABoQEWYAJ/fwF/YAF/AX9gA39/fwF/YAR/f39/AX9gAX8AYAV/f39/fwF/YAN/f38AYAJ/fwBgBn9/f39/fwF/YAd/f39/f39/AX9gAAF/YAl/f39/f39/f38Bf2AIf39/f39/f38Bf2AAAGAEf39/fwBgA39+fwF+YAZ/fH9/f38Bf2AAAXxgBn9/f39/fwBgAnx/AXxgAn5/AX9gBX9/f39/AAJ1BANlbnYVZW1zY3JpcHRlbl9tZW1jcHlfYmlnAAYDZW52EmVtc2NyaXB0ZW5fZ2V0X25vdwARFndhc2lfc25hcHNob3RfcHJldmlldzEIZmRfd3JpdGUAAwNlbnYWZW1zY3JpcHRlbl9yZXNpemVfaGVhcAABA9MB0QENBAABAAECAgsCAAIEBAACAQEAAQMCAwkCBgUDBQgCAwwMAwkJAwgDAQIFAwMEAQUHCwgCAgsABQUBAgQCBgIAAQACBAIABwMHBgcAAwACAAICAAQBAgcAAgUCAAEBBgYABgQACAUICQsJDAAAAAAAAAACAgIDAAIDAgADAQABAAACBQICAAESAQEEAgIGAgUDAQUAAgEBAAoBAAEAAwMCAAACBgIOAgEPAQEBChMCBQkGAQ4UFRAHAwIBAAEECggCAQgIBwcNAQQABwABCgQBBQQFAXABMzMFBwEBgAKAgAIGDgJ/AUHQj9MCC38BQQALB5QCDwZtZW1vcnkCABFfX3dhc21fY2FsbF9jdG9ycwAEGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBABBfX2Vycm5vX2xvY2F0aW9uALABB29tYWxsb2MAwAEFb2ZyZWUAwQEQZ2V0TGFzdE9uaWdFcnJvcgDCARFjcmVhdGVPbmlnU2Nhbm5lcgDEAQ9mcmVlT25pZ1NjYW5uZXIAxQEYZmluZE5leHRPbmlnU2Nhbm5lck1hdGNoAMYBG2ZpbmROZXh0T25pZ1NjYW5uZXJNYXRjaERiZwDHAQlzdGFja1NhdmUA0QEMc3RhY2tSZXN0b3JlANIBCnN0YWNrQWxsb2MA0wEMZHluQ2FsbF9qaWppANQBCVIBAEEBCzIFCgsPHC9vcHRxcnN1ugG7Ab0BBgcICYABfoEBggGDAX97fIUBmwF9hAFvnAFvnQGeAZ8BoAGhAZIBogGYAZcBowGkAaUBqwGqAawB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ACADNgIEIA0oAgBBATYCCEEADwsgACgCDCABEE8iA0EASARAIAMPCyACIAIoAowBIgVBAWo2AowBIAFBOxBRIgQNCyABKAIIIANBBWo2AgQgAUHNABBRIgQNCyABKAIIIAU2AgQgASgCCEEANgIIIAAoAgwgASACEEIiBA0LIAFBPhBRIgAhBCAADQsgASgCCCAFNgIEIAFBPRBRIgAhBCAADQsgAUE5EFEPCyMAQRBrIgkkAAJAIAAoAhQgACgCGEYEQCACIAIoAowBIgdBAWo2AowBAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBkEATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIgVFDQIgASAFNgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBjYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHNADYCACABKAIIIAc2AgQgASgCCEEANgIIAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBkEATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIgVFDQIgASAFNgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBjYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHKADYCACABKAIIIAAoAhQ2AgQgASgCCEEANgIIIAEoAghBATYCDCAAKAIMIAEgAhBCIgMNAQJAIAEoAgwiACABKAIQIgJJDQAgAkUNACACQQF0IgBBAEwEQEF1IQMMAwtBeyEDIAEoAgAgAkEobBDNASIERQ0CIAEgBDYCACABKAIEIAJBA3QQzQEiAkUNAiABIAA2AhAgASACNgIEIAEoAgwhAAsgASAAQQFqNgIMIAEgASgCACAAQRRsaiIANgIIQQAhAyAAQQA2AhAgAEIANwIIIABCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQcwANgIAIAEoAgggBzYCBCABKAIIQQA2AggMAQsgACgCICIDBEAgAyABIAkgAkEAEF0iA0EASA0BAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiB0EATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIgZFDQIgASAGNgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBzYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHJADYCACABKAIIQQAgCSgCAGs2AgQgACgCICABIAIQQiIDDQELIAIgAigCjAEiB0EBajYCjAECQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIGQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiBUUNASABIAU2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAGNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc4ANgIAIAEoAghBAjYCBCABKAIIIAc2AggCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIGQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiBUUNASABIAU2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAGNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc8ANgIAIAEoAghBBDYCBCACIAIoAowBIgZBAWo2AowBAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHNADYCACABKAIIIAY2AgQgASgCCEEANgIIAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akE7NgIAIAEoAghBAjYCBAJAIAEoAgwiAyABKAIQIgRJDQAgBEUNACAEQQF0IgVBAEwEQEF1IQMMAgtBeyEDIAEoAgAgBEEobBDNASIIRQ0BIAEgCDYCACABKAIEIARBA3QQzQEiBEUNASABIAU2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBOjYCACABKAIIQQM2AgQCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIFQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiCEUNASABIAg2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAFNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc8ANgIAIAEoAghBAjYCBCABKAIIIAc2AgggASgCCEEANgIMAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akE5NgIAIAFBygAQUSIDDQAgACgCGCEDIAEoAgggACgCFCIENgIEIAEoAghBfyADIARrIANBf0YbNgIIIAEoAghBAjYCDCABQcsAEFEiAw0AIAAoAgwgASACEEIiAw0AIAFBKBBRIgMNACABKAIIQQE2AgQgAUHMABBRIgMNACABKAIIIAY2AgQgASgCCEEANgIIIAFBzwAQUSIDDQAgASgCCEECNgIEIAEoAgggBzYCCCABKAIIQQE2AgxBACEDCyAJQRBqJAAgAw8LIwBBEGsiCiQAIAAoAgwgARBPIQggACgCGCEGIAAoAhQhBSACIAIoAowBIgdBAWo2AowBIAEoAhAhBCABKAIMIQMCQCAFIAZGBEACQCADIARJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAwtBeyEDIAEoAgAgBEEobBDNASIFRQ0CIAEgBTYCACABKAIEIARBA3QQzQEiBEUNAiABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBzQA2AgAgASgCCCAHNgIEIAEoAghBADYCCAJAIAEoAgwiAyABKAIQIgRJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAwtBeyEDIAEoAgAgBEEobBDNASIFRQ0CIAEgBTYCACABKAIEIARBA3QQzQEiBEUNAiABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBOzYCACABKAIIIAhBBGo2AgQCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIGQQBMBEBBdSEDDAMLQXshAyABKAIAIARBKGwQzQEiBUUNAiABIAU2AgAgASgCBCAEQQN0EM0BIgRFDQIgASAGNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQcoANgIAIAEoAgggACgCFDYCBCABKAIIQQA2AgggASgCCEEBNgIMIAAoAgwgASACEEIiAw0BAkAgASgCDCIAIAEoAhAiAkkNACACRQ0AIAJBAXQiAEEATARAQXUhAwwDC0F7IQMgASgCACACQShsEM0BIgRFDQIgASAENgIAIAEoAgQgAkEDdBDNASICRQ0CIAEgADYCECABIAI2AgQgASgCDCEACyABIABBAWo2AgwgASABKAIAIABBFGxqIgA2AgggAEEANgIQIABCADcCCCAAQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akE+NgIAIAEoAgggBzYCBAJAIAEoAgwiACABKAIQIgJJDQAgAkUNACACQQF0IgBBAEwEQEF1IQMMAwtBeyEDIAEoAgAgAkEobBDNASIERQ0CIAEgBDYCACABKAIEIAJBA3QQzQEiAkUNAiABIAA2AhAgASACNgIEIAEoAgwhAAsgASAAQQFqNgIMIAEgASgCACAAQRRsaiIANgIIIABBADYCECAAQgA3AgggAEIANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBOTYCAAJAIAEoAgwiACABKAIQIgJJDQAgAkUNACACQQF0IgBBAEwEQEF1IQMMAwtBeyEDIAEoAgAgAkEobBDNASIERQ0CIAEgBDYCACABKAIEIAJBA3QQzQEiAkUNAiABIAA2AhAgASACNgIEIAEoAgwhAAsgASAAQQFqNgIMIAEgASgCACAAQRRsaiIANgIIQQAhAyAAQQA2AhAgAEIANwIIIABCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQT02AgAMAQsCQCADIARJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAgtBeyEDIAEoAgAgBEEobBDNASIFRQ0BIAEgBTYCACABKAIEIARBA3QQzQEiBEUNASABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBzgA2AgAgASgCCEECNgIEIAEoAgggBzYCCAJAIAEoAgwiAyABKAIQIgRJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAgtBeyEDIAEoAgAgBEEobBDNASIFRQ0BIAEgBTYCACABKAIEIARBA3QQzQEiBEUNASABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBzwA2AgAgASgCCEEENgIEIAIgAigCjAEiBkEBajYCjAECQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIFQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiCUUNASABIAk2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAFNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc0ANgIAIAEoAgggBjYCBCABKAIIQQA2AggCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIFQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiCUUNASABIAk2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAFNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQTs2AgAgASgCCCAIQQhqNgIEIAAoAiAiAwRAIAMgARBPIQMgASgCCCIEIAMgBCgCBGpBAWo2AgQgACgCICABIAogAkEAEF0iA0EASA0BAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIghFDQIgASAINgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHJADYCACABKAIIQQAgCigCAGs2AgQgACgCICABIAIQQiIDDQELAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHKADYCACAAKAIYIQMgASgCCCAA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AgANACAAKAIwDQAgACgCDCECIAAgAEEYaiIENgIMIAAgBCAAKAIQIAJrajYCEAsgBSgCAA0BIAUoAjANASAFKAIMIQAgBSAFQRhqIgI2AgwgBSACIAUoAhAgAGtqNgIQIAMQEAwGCyAGQcACaiIFIABBMGoiAikCADcDACAGQbgCaiIEIABBKGoiASkCADcDACAGQbACaiIJIABBIGoiCykCADcDACAGQagCaiIHIABBGGoiCikCADcDACAGQaACaiIOIABBEGoiDSkCADcDACAGQZgCaiIQIABBCGoiDCkCADcDACAGIAApAgA3A5ACIAIgA0EwaiIVKQIANwIAIAEgA0EoaiICKQIANwIAIAsgA0EgaiIBKQIANwIAIAogA0EYaiILKQIANwIAIA0gA0EQaiIKKQIANwIAIAwgA0EIaiINKQIANwIAIAAgAykCADcCACAVIAUpAwA3AgAgAiAEKQMANwIAIAEgCSkDADcCACALIAcpAwA3AgAgCiAOKQMANwIAIA0gECkDADcCACADIAYpA5ACNwIAAkAgACgCAA0AIAAoAjANACAAKAIMIQUgACAAQRhqIgI2AgwgACACIAAoAhAgBWtqNgIQCyADKAIADQAgAygCMA0AIAMoAgwhBSADIANBGGoiADYCDCADIAAgAygCECAFa2o2AhALIAMQEAwECyAGQcACaiIFIABBMGoiAikCADcDACAGQbgCaiIEIABBKGoiAykCADcDACAGQbACaiIBIABBIGoiCSkCADcDACAGQagCaiILIABBGGoiBykCADcDACAGQaACaiIKIABBEGoiDikCADcDACAGQZgCaiINIABBCGoiECkCADcDACAGIAApAgA3A5ACIAIgCEEwaiIMKQIANwIAIAMgCEEoaiICKQIANwIAIAkgCEEgaiIDKQIANwIAIAcgCEEYaiIJKQIANwIAIA4gCEEQaiIHKQIANwIAIBAgCEEIaiIOKQIANwIAIAAgCCkCADcCACAMIAUpAwA3AgAgAiAEKQMANwIAIAMgASkDADcCACAJIAspAwA3AgAgByAKKQMANwIAIA4gDSkDADcCACAIIAYpA5ACNwIAAkAgACgCAA0AIAAoAjANACAAKAIMIQUgACAAQRhqIgI2AgwgACACIAAoAhAgBWtqNgIQCwJAIAgoAgANACAIKAIwDQAgCCgC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QQFrQQZ0aiIBKAIAIAUoAhhHBEAgAUIANwIAIAFCADcCOCABQgA3AjAgAUIANwIoIAFCADcCICABQgA3AhggAUIANwIQIAFCADcCCCABIAUoAhg2AgALIAEoAghBACABKAIEGyECCyAAKAIIIgFBAEwNACAAKAIoKAIoIgUoAhwiBiABQQFrIghBBnRqIgEoAgAgBSgCGEcEQCABQgA3AgAgAUIANwI4IAFCADcCMCABQgA3AiggAUIANwIgIAFCADcCGCABQgA3AhAgAUIANwIIIAEgBSgCGDYCAAsCQCABKAIERQRAIAAoAgwgACgCCBAOIgFFDQIgASgCBEEBRw0CIAEoAkQiAyABKAJIIgUgBygCRCgCFBEAACEIQQAhBiAFIAMgBygCRCgCABEBACADaiIBSwRAIAEgBSAHKAJEKAIUEQAAIQZBmH4hAyABIAcoAkQoAgARAQAgAWogBUcNAwtBmH4hAwJ/AkACQAJAAkAgCEEhaw4eAQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHAgADBwtBACAGQT1GDQMaDAYLQQEgBkE9Rg0CGgwFC0EEIAZBPUYNARogBg0EQQIMAQtBBSAGQT1GDQAaIAYNA0EDCyEBQWIhAyAAKAIIIgdBAEwNAiAAKAIoKAIoIgMoAhwgB0EGdGpBQGoiAEEBNgIEIAAgBTYCDCAAIAE2AgggACADKAIYNgIADAELIAYgCEEGdGooAgghAQtBACEAAkACQAJAAkACQAJAAkAgAQ4GAAECAwQFBgsgAiAERiEADAULIAIgBEchAAwECyACIARKIQAMAwsgAiAESCEADAILIAIgBE4hAAwBCyACIARMIQALIABBAXMhAwsgAws/AQF/AkAgACgCDCIAIAIgAWsiA2oQywEiAkUNACACIAEgAxCmASEBIABBAEwNACABIANqQQAgABCoARoLIAILJgAgAiABIAIgACgCOBEAACIBSwR/IAEgACgCABEBACABagUgAQsLHgEBfyABIAJJBH8gASACQQFrIAAoAjgRAAAFIAMLCzsAAkAgAkUNAANAIANBAEwEQCACDwsgASACTw0BIANBAWshAyABIAJBAWsgACgCOBEAACICDQALC0EAC2gBBH8gASECA0ACQCACLQAADQAgACgCDCIDQQFHBEAgAiEEIANBAkgNAQNAIAQtAAENAiAEQQFqIQQgA0ECSiEFIANBAWshAyAFDQALCyACIAFrDwsgAiAAKAIAEQEAIAJqIQIMAAsAC3UBBH8jAEEQayIAJAACQANAIAAgBEEDdEHQJWoiAygCBCIFNgIMIAMoAgAiBiAAQQxqQQEgAiABEQMAIgMNASAAIAY2AgwgBSAAQQxqQQEgAiABEQMAIgMNASAEQQFqIgRBGkcNAAtBACEDCyAAQRBqJAAgAwtOAEEgIQACfyABLQAAIgJBwQBrQf8BcUEaTwRAQWAhAEEAIAJB4QBrQf8BcUEZSw0BGgsgA0KBgICAEDcCACADIAAgAS0AAGo2AghBAQsLBABBfgscAAJ/IAAgAUkEQEEBIAAtAABBCkYNARoLQQALCyUAIAMgASgCAC0AAEHQH2otAAA6AAAgASABKAIAQQFqNgIAQQELBABBAQsHACAALQAACw4AQQFB8HwgAEGAAkkbCwsAIAEgADoAAEEBCwQAIAELzgEBBn8gASACSQRAIAEhAwNAIAVBAWohBSADIAAoAgARAQAgA2oiAyACSQ0ACwtBAEHAmhFqIQMgBEHHCWohBANAAkAgBSADIgYuAQgiB0cNACAFIQggASEDAkAgB0EATA0AA0AgAiADSwRAIAMgAiAAKAIUEQAAIAQtAABHDQMgBEEBaiEEIAMgACgCABEBACADaiEDIAhBAUshByAIQQFrIQggBw0BDAILCyAELQAADQELIAYoAgQPCyAGQQxqIQMgBigCDCIEDQALQaF+C2gBAX8CQCAEQQBKBEADQCABIAJPBEAgAy0AAA8LIAEgAiAAKAIUEQAAIQUgAy0AACAFayIFDQIgA0EBaiEDIAEgACgCABEBACABaiEBIARBAUshBSAEQQFrIQQgBQ0ACwtBACEFCyAFCy4BAX8gASACIAAoAhQRAAAiAEH/AE0EfyAAQQF0QdAhai8BAEEMdkEBcQUgAwsLPgEDfwJAIAJBAEwNAANAIAAgA0ECdCIFaigCACABIAVqKAIARgRAIAIgA0EBaiIDRw0BDAILC0F/IQQLIAQLJwEBfyAAIAFBA20iAkECdGooAgBBECABIAJBA2xrQQN0a3ZB/wFxC7YIAQF/Qc0JIQECQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB9ANqDvQDTU5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTkxOTktKMzZOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTklIR0ZFRENCQUA/Pj08Ozo5ODc1NE4yMTAvLi0sKyopKE5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk4nJiUkIyIhIB8eHRwbGhkYThcWFRQTEhFOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk4QTk5OTk5ODw4NTgcGBQQDDAsKCU5OTk4IAk4BAE9OC0GzDA8LQbMNDwtBjQ4PC0GEDw8LQfAPDwtByRAPC0G+EQ8LQf8RDwtBwBIPC0HnEg8LQZYTDwtBuhMPC0HkEw8LQf4TDwtBvBQPC0GEFQ8LQZcVDwtBrhUPC0HNFQ8LQewVDwtBnhYPC0HyFg8LQYoXDwtBoBcPC0G5Fw8LQdUXDwtB9BcPC0GYGA8LQbsYDwtB7BgPC0GgJw8LQcUnDwtB3CcPC0H4Jw8LQZ8oDwtBtCgPC0HLKA8LQeAoDwtB+ygPC0GaKQ8LQb0pDwtBzCkPC0HsKQ8LQZgqDwtBsioPC0HlKg8LQZIrDwtBsisPC0HJKw8LQeUrDwtBliwPC0GoLA8LQcAsDwtB2SwPC0HsLA8LQYUtDwtBmS0P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AUYNAQsLIAILoQEBBH9BASEEAkAgACABTw0AA0BBACEEIAAtAAAiAkHAAXFBgAFGDQEgAEEBaiEDAkAgAkHAAWtBNEsEQCADIQAMAQsgAEECIAJBAnRBkIoRaigCACICIAJBAkwbIgVqIQBBASECA0AgASADRg0DIAMtAABBwAFxQYABRw0DIANBAWohAyACQQFqIgIgBUcNAAsLIAAgAUkNAAtBASEECyAEC4AEAQN/IAJBgARPBEAgACABIAIQACAADwsgACACaiEDAkAgACABc0EDcUUEQAJAIABBA3FFBEAgACECDAELIAJFBEAgACECDAELIAAhAgNAIAIgAS0AADoAACABQQFqIQEgAkEBaiICQQNxRQ0BIAIgA0kNAAsLAkAgA0F8cSIEQcAASQ0AIAIgBEFAaiIFSw0AA0AgAiABKAIANgIAIAIgASgCBDYCBCACIAEoAgg2AgggAiABKAIMNgIMIAIgASgCEDYCECACIAEoAhQ2AhQgAiABKAIYNgIYIAIgASgCHDYCHCACIAEoAiA2AiAgAiABKAIkNgIkIAIgASgCKDYCKCACIAEoAiw2AiwgAiABKAIwNgIwIAIgASgCNDYCNCACIAEoAjg2AjggAiABKAI8NgI8IAFBQGshASACQUBrIgIgBU0NAAsLIAIgBE8NAQNAIAIgASgCADYCACABQQRqIQEgAkEEaiICIARJDQALDAELIANBBEkEQCAAIQIMAQsgACADQQRrIgRLBEAgACECDAELIAAhAgNAIAIgAS0AADoAACACIAEtAAE6AAEgAiABLQACOgACIAIgAS0AAzoAAyABQQRqIQEgAkEEaiICIARNDQALCyACIANJBEADQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADRw0ACwsgAAvoAgECfwJAIAAgAUYNACABIAAgAmoiA2tBACACQQF0a00EQCAAIAEgAhCmARoPCyAAIAFzQQNxIQQCQAJAIAAgAUkEQCAEBEAgACEDDAMLIABBA3FFBEAgACEDDAILIAAhAwNAIAJFDQQgAyABLQAAOgAAIAFBAWohASACQQFrIQIgA0EBaiIDQQNxDQALDAELAkAgBA0AIANBA3EEQANAIAJFDQUgACACQQFrIgJqIgMgASACai0AADoAACADQQNxDQALCyACQQNNDQADQCAAIAJBBGsi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AmogASACQf////8Hc0obIQELIAAgA0EBajYCACABIQIgAywAARCvAQ0ACyABC7YEAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAFBCWsOEgABAgUDBAYHCAkKCwwNDg8QERILIAIgAigCACIBQQRqNgIAIAAgASgCADYCAA8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASsDADkDAA8LIAAgAiADEQcACwuDAQIDfwF+AkAgAEKAgICAEFQEQCAAIQUMAQsDQCABQQFrIgEgACAAQgqAIgVCCn59p0EwcjoAACAAQv////+fAVYhAiAFIQAgAg0ACwsgBaciAgRAA0AgAUEBayIBIAIgAkEKbiIDQQpsa0EwcjoAACACQQlLIQQgAyECIAQNAAsLIAELcgEBfyMAQYACayIFJAACQCACIANMDQAgBEGAwARxDQAgBSABQf8BcSACIANrIgNBgAIgA0GAAkkiAhsQqAEaIAJFBEADQCAAIAVBgAIQtQEgA0GAAmsiA0H/AUsNAAsLIAAgBSADELUBCyAFQYACaiQAC8kYAxJ/AXwCfiMAQbAEayIKJAAgCkEANgIsAkAgAb0iGUIAUwRA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IQsgBUEgcSEIIAooAiwhByAGQQJrIg0gBUEPajoAACAGQQFrQS1BKyAHQQBIGzoAACAEQQhxIQkgCkEQaiEHA0AgByIGAn8gAZlEAAAAAAAA4EFjBEAgAaoMAQtBgICAgHgLIgdB4JURai0AACAIcjoAACABIAe3oUQAAAAAAAAwQKIhAQJAIAZBAWoiByAKQRBqa0EBRw0AAkAgCQ0AIANBAEoNACABRAAAAAAAAAAAYQ0BCyAGQS46AAEgBkECaiEHCyABRAAAAAAAAAAAYg0AC0F/IQlB/f///wcgCyASIA1rIhBqIgZrIANIDQAgAEEgIAICfwJAIANFDQAgByAKQRBqayIIQQJrIANODQAgA0ECagwBCyAHIApBEGprIggLIgcgBmoiBiAEELkBIAAgDiALELUBIABBMCACIAYgBEGAgARzELkBIAAgCkEQaiAIELUBIABBMCAHIAhrQQBBABC5ASAAIA0gEBC1ASAAQSAgAiAGIARBgMAAcxC5ASAGIAIgAiAGSBshCQsgCkGwBGokACAJC40FAgZ+An8gASABKAIAQQdqQXhxIgFBEGo2AgAgACABKQMAIQQgASkDCCEFIwBBIGsiACQAAkAgBUL///////////8AgyIDQoCAgICAgMCAPH0gA0KAgICAgIDA/8MAfVQEQCAFQgSGIARCPIiEIQMgBEL//////////w+DIgRCgYCAgICAgIAIWgRAIANCgYCAgICAgIDAAHwhAgwCCyADQoCAgICAgICAQH0hAiAEQoCAgICAgICACFINASACIANCAYN8IQIMAQsgBFAgA0KAgICAgIDA//8AVCADQoCAgICAgMD//wBRG0UEQCAFQgSGIARCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiADQv///////7//wwBWDQBCACECIANCMIinIgFBkfcASQ0AIABBEGohCSAEIQIgBUL///////8/g0KAgICAgIDAAIQiAyEGAkAgAUGB9wBrIghBwABxBEAgAiAIQUBqrYYhBkIAIQIMAQsgCEUNACAGIAitIgeGIAJBwAAgCGutiIQhBiACIAeGIQILIAkgAjcDACAJIAY3AwgCQEGB+AAgAWsiAUHAAHEEQCADIAFBQGqtiCEEQgAhAwwBCyABRQ0AIANBwAAgAWuthiAEIAGtIgKIhCEEIAMgAoghAwsgACAENwMAIAAgAzcDCCAAKQMIQgSGIAApAwAiA0I8iIQhAiAAKQMQIAApAxiEQgBSrSADQv//////////D4OEIgNCgYCAgICAgIAIWgRAIAJCAXwhAgwBCyADQoCAgICAgICACFINACACQgGDIAJ8IQILIABBIGokACACIAVCgICAgICAgICAf4OEvzkDAAugAQECfyMAQaABayIEJABBfyEFIAQgAUEBa0EAIAEbNgKUASAEIAAgBEGeAWogARsiADYCkAEgBEEAQZABEKgBIgRBfzYCTCAEQRA2AiQgBEF/NgJQIAQgBEGfAWo2AiwgBCAEQZABajYCVAJAIAFBAEgEQEHoyhJBPTYCAAwBCyAAQQA6AAAgBCACIANBDkEPELMBIQULIARBoAFqJAAgBQurAQEEfyAAKAJUIgMoAgQiBSAAKAIUIAAoAhwiBmsiBCAEIAVLGyIEBEAgAygCACAGIAQQpgEaIAMgAygCACAEajYCACADIAMoAgQgBGsiBTYCBAsgAygCACEEIAUgAiACIAVLGyIFBEAgBCABIAUQpgEaIAMgAygCACAFaiIENgIAIAMgAygCBCAFazYCBAsgBEEAOgAAIAAgACgCLCIDNgIcIAAgAzYCFCACCxYAIABFBEBBAA8LQejKEiAANgIAQX8LogIAIABFBEBBAA8LAn8CQCAABH8gAUH/AE0NAQJAQfzLEigCACgCAEUEQCABQYB/cUGAvwNGDQNB6MoSQRk2AgAMAQsgAUH/D00EQCAAIAFBP3FBgAFyOgABIAAgAUEGdkHAAXI6AABBAgwECyABQYBAcUGAwANHIAFBgLADT3FFBEAgACABQT9xQYABcjoAAiAAIAFBDHZB4AFyOgAAIAAgAUEGdkE/cUGAAXI6AAFBAwwECyABQYCABGtB//8/TQRAIAAgAUE/cUGAAXI6AAMgACABQRJ2QfABcjoAACAAIAFBBnZBP3FBgAFyOgACIAAgAUEMdkE/cUGAAXI6AAFBBAwEC0HoyhJBGTYCAAtBfwVBAQsMAQsgACABOgAAQQELCwcAIAAQywELBwAgABDMAQu9BQEJfyMAQRBrIggkACAIQZjMEjYCAEGUzBIoAgAhByMAQYABayIBJAAgASAINgJcAkAgB0GhfkcgB0HcAWpBBk9xRQRAIAEgASgCXCICQQRqNgJcAn9BACACKAIAIgAoAgQiAkUNABogACgCCCEEIAAoAgAiBigCDEECTgRAA0ACQCACIARPDQACfyACIAQgBigCFBEAACIAQYABTwRAAkAgAEGAgARJDQAgA0ERSg0AIAEgAEEYdjYCMCABQeAAaiADaiIFQQVBqzIgAUEwahCpASABIABBEHZB/wFxNgIgIAVBBGpBA0GmMiABQSBqEKkBIAEgAEEIdkH/AXE2AhAgBUEGakEDQaYyIAFBEGoQqQEgASAAQf8BcTYCACAFQQhqQQNBpjIgARCpASADQQpqDAILIANBFUoNAiABIABBCHZB/wFxNgJQIAFB4ABqIANqIgVBBUGrMiABQdAAahCpASABIABB/wFxNgJAIAVBBGpBA0GmMiABQUBrEKkBIANBBmoMAQsgAUHgAGogA2ogADoAACADQQFqCyEDIAIgBigCABEBACACaiECIANBG0gNAQsLIAIgBEkMAQsgAUHgAGogAkEbIAQgAmsiACAAQRtOGyIDEKYBGiAAQRtKCyEFIAcQigEhAkGwzBIhAANAAkACQCACLQAAIgRBJUcEQCAERQ0BDAILIAJBAWohBiACLQABIgRB7gBHBEAgBiECDAILIAAgAUHgAGogAxCmASADaiEAIAUEQCAAQaIyLwAAOwAAIABBpDItAAA6AAIgAEEDaiEACyAGQQFqIQIMAgsgAEEAOgAADAMLIAAgBDoAACAAQQFqIQAgAkEBaiECDAALAAtBlL0SIAcQigEiABB6IQJBsMwSIAAgAhCmASACakEAOgAACyABQYABaiQAIAhBEGokAEGwzBIL4wEBAX8CQAJAAkACfyAALQAQBEBBACEBIABBDGogACgCCCACIAIgA2oiBiACIARqIAYgACgCDCAFEG1BAE4NARpBACEGDAMLAkAgACgCFCABRw0AIAAoAhwgBUcNACAAKAIYIARKDQAgAC0AIEUEQEEADwsgACgCDCIGKAIIKAIAIARODQQLIAAgBTYCHCAAIAQ2AhggACABNgIUQQAhASAAKAIIIAIgAiADaiIGIAIgBGogBiAAKAIMIAUQbUEASA0BIABBDGoLKAIAIQZBASEBDAELQQAhBgsgACABOgAgCyAGC7gzARp/IwBBEGsiGCQAIAJBAnQiChDLASEbIAoQywEhGSACQQBK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JyB3aXRob3V0IGVzY2FwZQBXb3JkAEFscGhhAEVVQy1DTgBGQUlMAChudWxsKQAARgBBAEkATAAAAEYAQQBJAEwAAAAAYWJvcnQAQmxhbmsAIyVkAEFscGhhAFsATUlTTUFUQ0gAAE0ASQBTAE0AQQBUAEMASAAAAE0ASQBTAE0AQQBUAEMASAAAAAAtMFgrMFggMFgtMHgrMHggMHgAZmFpbCB0byBtZW1vcnkgYWxsb2NhdGlvbgBDbnRybABIaXJhZ2FuYQBNQVgALQBPTklHLU1PTklUT1I6ICUtNHMgJXMgYXQ6ICVkIFslZCAtICVkXSBsZW46ICVkCgAATQBBAFgAAABNAEEAWAAAAABEaWdpdABtYXRjaC1zdGFjayBsaW1pdCBvdmVyAEFsbnVtAGluZgBjaGFyYWN0ZXIgY2xhc3MgaGFzICclcycgd2l0aG91dCBlc2NhcGUARVJST1IAPT4AAEUAUgBSAE8AUgAAAEUAUgBSAE8AUgAAAABwYXJzZSBkZXB0aCBsaW1pdCBvdmVyAGFsbnVtAEdyYXBoAEthdGFrYW5hAENPVU5UAElORgA8PQAAQwBPAFUATgBUAAAAQwBPAFUATgBUAAAAAExvd2VyAHJldHJ5LWxpbWl0LWluLW1hdGNoIG92ZXIAbmFuAGFscGhhAFRPVEFMX0NPVU5UAEFTQ0lJAABUAE8AVABBAEwAXwBDAE8AVQBOAFQAAABUAE8AVABBAEwAXwBDAE8AVQBOAFQAAAAAUHJpbnQAWERpZ2l0AHJldHJ5LWxpbWl0LWluLXNlYXJjaCBvdmVyAGJsYW5rAENNUABOQU4AAEMATQBQAAAAQwBNAFAAAAAAUHVuY3QAc3ViZXhwLWNhbGwtbGltaXQtaW4tc2VhcmNoIG92ZXIAY250cmwAQ250cmwALgBkaWdpdABCbGFuawBTcGFjZQB1bmRlZmluZWQgdHlwZSAoYnVnKQBQdW5jdABVcHBlcgBncmFwaABpbnRlcm5hbCBwYXJzZXIgZXJyb3IgKGJ1ZykAUHJpbnQAWERpZ2l0AGxvd2VyAHN0YWNrIGVycm9yIChidWcpAHByaW50AFVwcGVyAEFTQ0lJAHVuZGVmaW5lZCBieXRlY29kZSAoYnVnKQBwdW5jdABTcGFjZQBXb3JkAHVuZXhwZWN0ZWQgYnl0ZWNvZGUgKGJ1ZykAZGVmYXVsdCBtdWx0aWJ5dGUtZW5jb2RpbmcgaXMgbm90IHNldABMb3dlcgBzcGFjZQB1cHBlcgBHcmFwaABjYW4ndCBjb252ZXJ0IHRvIHdpZGUtY2hhciBvbiBzcGVjaWZpZWQgbXVsdGlieXRlLWVuY29kaW5nAHhkaWdpdABEaWdpdABmYWlsIHRvIGluaXRpYWxpemUAaW52YWxpZCBhcmd1bWVudABhc2NpaQBlbmQgcGF0dGVybiBhdCBsZWZ0IGJyYWNlAHdvcmQAZW5kIHBhdHRlcm4gYXQgbGVmdCBicmFja2V0ADpdAGVtcHR5IGNoYXItY2xhc3MAcmVkdW5kYW50IG5lc3RlZCByZXBlYXQgb3BlcmF0b3IAcHJlbWF0dXJlIGVuZCBvZiBjaGFyLWNsYXNzAG5lc3RlZCByZXBlYXQgb3BlcmF0b3IgJXMgYW5kICVzIHdhcyByZXBsYWNlZCB3aXRoICclcycAZW5kIHBhdHRlcm4gYXQgZXNjYXBlAD8AZW5kIHBhdHRlcm4gYXQgbWV0YQAqAGVuZCBwYXR0ZXJuIGF0IGNvbnRyb2wAKwBpbnZhbGlkIG1ldGEtY29kZSBzeW50YXgAPz8AaW52YWxpZCBjb250cm9sLWNvZGUgc3ludGF4ACo/AGNoYXItY2xhc3MgdmFsdWUgYXQgZW5kIG9mIHJhbmdlACs/AGNoYXItY2xhc3MgdmFsdWUgYXQgc3RhcnQgb2YgcmFuZ2UAdW5tYXRjaGVkIHJhbmdlIHNwZWNpZmllciBpbiBjaGFyLWNsYXNzACsgYW5kID8/AHRhcmdldCBvZiByZXBlYXQgb3BlcmF0b3IgaXMgbm90IHNwZWNpZmllZAArPyBhbmQgPwAPAAAADgAAAHQ+AwB8PgMA6AP0AU0B+gDIAKcAjwB9AG8AZABbAFMATQBHAEMAPwA7ADgANQAyADAALQArACoAKAAmACUAJAAiACEAIAAfAB4AHQAdABwAGwAaABoAGQAYABgAFwAXABYAFgAVABUAFAAUABQAEwATABMAEgASABIAEQARABEAEAAQABAAEAAPAA8ADwAPAA4ADgAOAA4ADgAOAA0ADQANAA0ADQANAAwADAAMAAwADAAMAAsACwALAAsACwALAAsACwALAAoACgAKAAoACgBBgBsL0AgFAAEAAQABAAEAAQABAAEAAQAKAAoAAQABAAoAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEADAAEAAcABAAEAAQABAAEAAQABQAFAAUABQAFAAUABQAGAAYABgAGAAYABgAGAAYABgAGAAUABQAFAAUABQAFAAUABgAGAAYABgAHAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAUABgAFAAUABQAFAAYABgAGAAYABwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAFAAUABQAFAAEAVAAAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAJAAAACUAAAAmAAAAJwAAACgAAAAxAAAALwAAADAAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAKgAAACkAAAArAAAALQAAACwAAAAuAAAAUwAAAD0AAAA+AAAAPwAAAEAAAABBAAAAQgAAAEMAAABEAAAARQAAAEYAAABHAAAAOQAAADoAAAA7AAAAPAAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABIAAAASQAAAFIAAABRAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eltcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9fn+AgYKDhIWGh4iJiouMjY6PkJGSk5SVlpeYmZqbnJ2en6ChoqOkpaanqKmqq6ytrq+wsbKztLW2t7i5uru8vb6/wMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbX2Nna29zd3t/g4eLj5OXm5+jp6uvs7e7v8PHy8/T19vf4+fr7/P3+/whACEAIQAhACEAIQAhACEAIQAxCCUIIQghCCEIIQAhACEAIQAhACEAIQAhACEAIQAhACEAIQAhACEAIQAhACECEQqBBoEGgQaBBoEGgQaBBoEGgQaBBoEGgQaBBoEGgQbB4sHiweLB4sHiweLB4sHiweLB4oEGgQaBBoEGgQaBBoEGifKJ8onyifKJ8onyidKJ0onSidKJ0onSidKJ0onSidKJ0onSidKJ0onSidKJ0onSidKJ0oEGgQaBBoEGgUaBB4njieOJ44njieOJ44nDicOJw4nDicOJw4nDicOJw4nDicOJw4nDicOJw4nDicOJw4nDicKBBoEGgQaBBCEAAQdAlC+UMQQAAAGEAAABCAAAAYgAAAEMAAABjAAAARAAAAGQAAABFAAAAZQAAAEYAAABmAAAARwAAAGcAAABIAAAAaAAAAEkAAABpAAAASgAAAGoAAABLAAAAawAAAEwAAABsAAAATQAAAG0AAABOAAAAbgAAAE8AAABvAAAAUAAAAHAAAABRAAAAcQAAAFIAAAByAAAAUwAAAHMAAABUAAAAdAAAAFUAAAB1AAAAVgAAAHYAAABXAAAAdwAAAFgAAAB4AAAAWQAAAHkAAABaAAAAegAAAHRhcmdldCBvZiByZXBlYXQgb3BlcmF0b3IgaXMgaW52YWxpZABuZXN0ZWQgcmVwZWF0IG9wZXJhdG9yAHVubWF0Y2hlZCBjbG9zZSBwYXJlbnRoZXNpcwBlbmQgcGF0dGVybiB3aXRoIHVubWF0Y2hlZCBwYXJlbnRoZXNpcwBlbmQgcGF0dGVybiBpbiBncm91cAB1bmRlZmluZWQgZ3JvdXAgb3B0aW9uAGludmFsaWQgZ3JvdXAgb3B0aW9uAGludmFsaWQgUE9TSVggYnJhY2tldCB0eXBlAGludmFsaWQgcGF0dGVybiBpbiBsb29rLWJlaGluZABpbnZhbGlkIHJlcGVhdCByYW5nZSB7bG93ZXIsdXBwZXJ9AHRvbyBiaWcgbnVtYmVyAHRvbyBiaWcgbnVtYmVyIGZvciByZXBlYXQgcmFuZ2UAdXBwZXIgaXMgc21hbGxlciB0aGFuIGxvd2VyIGluIHJlcGVhdCByYW5nZQBlbXB0eSByYW5nZSBpbiBjaGFyIGNsYXNzAG1pc21hdGNoIG11bHRpYnl0ZSBjb2RlIGxlbmd0aCBpbiBjaGFyLWNsYXNzIHJhbmdlAHRvbyBtYW55IG11bHRpYnl0ZSBjb2RlIHJhbmdlcyBhcmUgc3BlY2lmaWVkAHRvbyBzaG9ydCBtdWx0aWJ5dGUgY29kZSBzdHJpbmcAdG9vIGJpZyBiYWNrcmVmIG51bWJlcgBpbnZhbGlkIGJhY2tyZWYgbnVtYmVyL25hbWUAbnVtYmVyZWQgYmFja3JlZi9jYWxsIGlzIG5vdCBhbGxvd2VkLiAodXNlIG5hbWUpAHRvbyBtYW55IGNhcHR1cmVzAHRvbyBiaWcgd2lkZS1jaGFyIHZhbHVlAHRvbyBsb25nIHdpZGUtY2hhciB2YWx1ZQB1bmRlZmluZWQgb3BlcmF0b3IAaW52YWxpZCBjb2RlIHBvaW50IHZhbHVlAGdyb3VwIG5hbWUgaXMgZW1wdHkAaW52YWxpZCBncm91cCBuYW1lIDwlbj4AaW52YWxpZCBjaGFyIGluIGdyb3VwIG5hbWUgPCVuPgB1bmRlZmluZWQgbmFtZSA8JW4+IHJlZmVyZW5jZQB1bmRlZmluZWQgZ3JvdXAgPCVuPiByZWZlcmVuY2UAbXVsdGlwbGV4IGRlZmluZWQgbmFtZSA8JW4+AG11bHRpcGxleCBkZWZpbml0aW9uIG5hbWUgPCVuPiBjYWxsAG5ldmVyIGVuZGluZyByZWN1cnNpb24AZ3JvdXAgbnVtYmVyIGlzIHRvbyBiaWcgZm9yIGNhcHR1cmUgaGlzdG9yeQBpbnZhbGlkIGNoYXJhY3RlciBwcm9wZXJ0eSBuYW1lIHslbn0AaW52YWxpZCBpZi1lbHNlIHN5bnRheABpbnZhbGlkIGFic2VudCBncm91cCBwYXR0ZXJuAGludmFsaWQgYWJzZW50IGdyb3VwIGdlbmVyYXRvciBwYXR0ZXJuAGludmFsaWQgY2FsbG91dCBwYXR0ZXJuAGludmFsaWQgY2FsbG91dCBuYW1lAHVuZGVmaW5lZCBjYWxsb3V0IG5hbWUAaW52YWxpZCBjYWxsb3V0IGJvZHkAaW52YWxpZCBjYWxsb3V0IHRhZyBuYW1lAGludmFsaWQgY2FsbG91dCBhcmcAbm90IHN1cHBvcnRlZCBlbmNvZGluZyBjb21iaW5hdGlvbgBpbnZhbGlkIGNvbWJpbmF0aW9uIG9mIG9wdGlvbnMAdmVyeSBpbmVmZmljaWVudCBwYXR0ZXJuAGxpYnJhcnkgaXMg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ALYJAAC5CQAAvAkAAMQJAADHCQAAyAkAAMsJAADOCQAA1wkAANcJAADcCQAA3QkAAN8JAADjCQAA5gkAAP4JAAABCgAAAwoAAAUKAAAKCgAADwoAABAKAAATCgAAKAoAACoKAAAwCgAAMgoAADMKAAA1CgAANgoAADgKAAA5CgAAPAoAADwKAAA+CgAAQgoAAEcKAABICgAASwoAAE0KAABRCgAAUQoAAFkKAABcCgAAXgoAAF4KAABmCgAAdgoAAIEKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvAoAAMUKAADHCgAAyQoAAMsKAADNCgAA0AoAANAKAADgCgAA4woAAOYKAADxCgAA+QoAAP8KAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAAB3CwAAggsAAIMLAACFCwAAigsAAI4LAACQCwAAkgsAAJULAACZCwAAmgsAAJwLAACcCwAAngsAAJ8LAACjCwAApAsAAKgLAACqCwAArgsAALkLAAC+CwAAwgsAAMYLAADICwAAygsAAM0LAADQCwAA0AsAANcLAADXCwAA5gsAAPoLAAAADAAADAwAAA4MAAAQDAAAEgwAACgMAAAqDAAAOQwAADwMAABEDAAARgwAAEgMAABKDAAATQwAAFUMAABWDAAAWAwAAFoMAABdDAAAXQwAAGAMAABjDAAAZgwAAG8MAAB3DAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvAwAAMQMAADGDAAAyAwAAMoMAADNDAAA1QwAANYMAADdDAAA3gwAAOAMAADjDAAA5gwAAO8MAADxDAAA8gwAAAANAAAMDQAADg0AABANAAASDQAARA0AAEYNAABIDQAASg0AAE8NAABUDQAAYw0AAGYNAAB/DQAAgQ0AAIMNAACFDQAAlg0AAJoNAACxDQAAsw0AALsNAAC9DQAAvQ0AAMANAADGDQAAyg0AAMoNAADPDQAA1A0AANYNAADWDQAA2A0AAN8NAADmDQAA7w0AAPINAAD0DQAAAQ4A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AKoAAACqAAAAtQAAALUAAAC6AAAAugAAAN8AAAD2AAAA+AAAAP8AAAABAQAAAQEAAAMBAAADAQAABQEAAAUBAAAHAQAABwEAAAkBAAAJAQAACwEAAAsBAAANAQAADQEAAA8BAAAPAQAAEQEAABEBAAATAQAAEwEAABUBAAAVAQAAFwEAABcBAAAZAQAAGQEAABsBAAAbAQAAHQEAAB0BAAAfAQAAHwEAACEBAAAhAQAAIwEAACMBAAAlAQAAJQEAACcBAAAnAQAAKQEAACkBAAArAQAAKwEAAC0BAAAtAQAALwEAAC8BAAAxAQAAMQEAADMBAAAzAQAANQEAADUBAAA3AQAAOAEAADoBAAA6AQAAPAEAADwBAAA+AQAAPgEAAEABAABAAQAAQgEAAEIBAABEAQAARAEAAEYBAABGAQAASAEAAEkBAABLAQAASwEAAE0BAABNAQAATwEAAE8BAABRAQAAUQEAAFMBAABTAQAAVQEAAFUBAABXAQAAVwEAAFkBAABZAQAAWwEAAFsBAABdAQAAXQEAAF8BAABfAQAAYQEAAGEBAABjAQAAYwEAAGUBAABlAQAAZwEAAGcBAABpAQAAaQEAAGsBAABrAQAAbQEAAG0BAABvAQAAbwEAAHEBAABxAQAAcwEAAHMBAAB1AQAAdQEAAHcBAAB3AQAAegEAAHoBAAB8AQAAfAEAAH4BAACAAQAAgwEAAIMBAACFAQAAhQEAAIgBAACIAQAAjAEAAI0BAACSAQAAkgEAAJUBAACVAQAAmQEAAJsBAACeAQAAngEAAKEBAAChAQAAowEAAKMBAAClAQAApQEAAKgBAACoAQAAqgEAAKsBAACtAQAArQEAALABAACwAQAAtAEAALQBAAC2AQAAtgEAALkBAAC6AQAAvQEAAL8BAADGAQAAxgEAAMkBAADJAQAAzAEAAMwBAADOAQAAzgEAANABAADQAQAA0gEAANIBAADUAQAA1AEAANYBAADWAQAA2AEAANgBAADaAQAA2gEAANwBAADdAQAA3wEAAN8BAADhAQAA4QEAAOMBAADjAQAA5QEAAOUBAADnAQAA5wEAAOkBAADpAQAA6wEAAOsBAADtAQAA7QEAAO8BAADwAQAA8wEAAPMBAAD1AQAA9QEAAPkBAAD5AQAA+wEAAPsBAAD9AQAA/QEAAP8BAAD/AQAAAQIAAAECAAADAgAAAwIAAAUCAAAFAgAABwIAAAcCAAAJAgAACQIAAAsCAAALAgAADQIAAA0CAAAPAgAADwIAABECAAARAgAAEwIAABMCAAAVAgAAFQIAABcCAAAXAgAAGQIAABkCAAAbAgAAGwIAAB0CAAAdAgAAHwIAAB8CAAAhAgAAIQIAACMCAAAjAgAAJQIAACUCAAAnAgAAJwIAACkCAAApAgAAKwIAACsCAAAtAgAALQIAAC8CAAAvAgAAMQIAADECAAAzAgAAOQIAADwCAAA8AgAAPwIAAEACAABCAgAAQgIAAEcCAABHAgAASQIAAEkCAABLAgAASwIAAE0CAABNAgAATwIAAJMCAACVAgAAuAIAAMACAADBAgAA4AIAAOQCAABFAwAARQMAAHEDAABxAwAAcwMAAHMDAAB3AwAAdwMAAHoDAAB9AwAAkAMAAJADAACsAwAAzgMAANADAADRAwAA1QMAANcDAADZAwAA2QMAANsDAADbAwAA3QMAAN0DAADfAwAA3wMAAOEDAADhAwAA4wMAAOMDAADlAwAA5QMAAOcDAADnAwAA6QMAAOkDAADrAwAA6wMAAO0DAADtAwAA7wMAAPMDAAD1AwAA9QMAAPgDAAD4AwAA+wMAAPwDAAAwBAAAXwQAAGEEAABhBAAAYwQAAGMEAABlBAAAZQQAAGcEAABnBAAAaQQAAGkEAABrBAAAawQAAG0EAABtBAAAbwQAAG8EAABxBAAAcQQAAHMEAABzBAAAdQQAAHUEAAB3BAAAdwQAAHkEAAB5BAAAewQAAHsEAAB9BAAAfQQAAH8EAAB/BAAAgQQAAIEEAACLBAAAiwQAAI0EAACNBAAAjwQAAI8EAACRBAAAkQQAAJMEAACTBAAAlQQAAJUEAACXBAAAlwQAAJkEAACZBAAAmwQAAJsEAACdBAAAnQQAAJ8EAACfBAAAoQQAAKEEAACjBAAAowQAAKUEAAClBAAApwQAAKcEAACpBAAAqQQAAKsEAACrBAAArQQAAK0EAACvBAAArwQAALEEAACxBAAAswQAALMEAAC1BAAAtQQAALcEAAC3BAAAuQQAALkEAAC7BAAAuwQAAL0EAAC9BAAAvwQAAL8EAADCBAAAwgQAAMQEAADEBAAAxgQAAMYEAADIBAAAyAQAAMoEAADKBAAAzAQAAMwEAADOBAAAzwQAANEEAADRBAAA0wQAANMEAADVBAAA1QQAANcEAADXBAAA2QQAANkEAADbBAAA2wQAAN0EAADdBAAA3wQAAN8EAADhBAAA4QQAAOMEAADjBAAA5QQAAOUEAADnBAAA5wQAAOkEAADpBAAA6wQAAOsEAADtBAAA7QQAAO8EAADvBAAA8QQAAPEEAADzBAAA8wQAAPUEAAD1BAAA9wQAAPcEAAD5BAAA+QQAAPsEAAD7BAAA/QQAAP0EAAD/BAAA/wQAAAEFAAABBQAAAwUAAAMFAAAFBQAABQUAAAcFAAAHBQAACQUAAAkFAAALBQAACwUAAA0FAAANBQAADwUAAA8FAAARBQAAEQUAABMFAAATBQAAFQUAABUFAAAXBQAAFwUAABkFAAAZBQAAGwUAABsFAAAdBQAAHQUAAB8FAAAfBQAAIQUAACEFAAAjBQAAIwUAACUFAAAlBQAAJwUAACcFAAApBQAAKQUAACsFAAArBQAALQUAAC0FAAAvBQAALwUAAGAFAACIBQAA0BAAAPoQAAD9EAAA/xAAAPgTAAD9EwAAgBwAAIgcAAAAHQAAvx0AAAEeAAABHgAAAx4AAAMeAAAFHgAABR4AAAceAAAHHgAACR4AAAkeAAALHgAACx4AAA0eAAANHgAADx4AAA8eAAARHgAAER4AABMeAAATHgAAFR4AABUeAAAXHgAAFx4AABkeAAAZHgAAGx4AABseAAAdHgAAHR4AAB8eAAAfHgAAIR4AACEeAAAjHgAAIx4AACUeAAAlHgAAJx4AACceAAApHgAAKR4AACseAAArHgAALR4AAC0eAAAvHgAALx4AADEeAAAxHgAAMx4AADMeAAA1HgAANR4AADceAAA3HgAAOR4AADkeAAA7HgAAOx4AAD0eAAA9HgAAPx4AAD8eAABBHgAAQR4AAEMeAABDHgAARR4AAEUeAABHHgAARx4AAEkeAABJHgAASx4AAEseAABNHgAATR4AAE8eAABPHgAAUR4AAFEeAABTHgAAUx4AAFUeAABVHgAAVx4AAFceAABZHgAAWR4AAFseAABbHgAAXR4AAF0eAABfHgAAXx4AAGEeAABhHgAAYx4AAGMeAABlHgAAZR4AAGceAABnHgAAaR4AAGkeAABrHgAAax4AAG0eAABtHgAAbx4AAG8eAABxHgAAcR4AAHMeAABzHgAAdR4AAHUeAAB3HgAAdx4AAHkeAAB5HgAAex4AAHseAAB9HgAAfR4AAH8eAAB/HgAAgR4AAIEeAACDHgAAgx4AAIUeAACFHgAAhx4AAIceAACJHgAAiR4AAIseAACLHgAAjR4AAI0eAACPHgAAjx4AAJEeAACRHgAAkx4AAJMeAACVHgAAnR4AAJ8eAACfHgAAoR4AAKEeAACjHgAAox4AAKUeAAClHgAApx4AAKceAACpHgAAqR4AAKseAACrHgAArR4AAK0eAACvHgAArx4AALEeAACxHgAAsx4AALMeAAC1HgAAtR4AALceAAC3HgAAuR4AALkeAAC7HgAAux4AAL0eAAC9HgAAvx4AAL8eAADBHgAAwR4AAMMeAADDHgAAxR4AAMUeAADHHgAAxx4AAMkeAADJHgAAyx4AAMseAADNHgAAzR4AAM8eAADPHgAA0R4AANEeAADTHgAA0x4AANUeAADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAhx8AAJAfAACXHwAAoB8AAKcfAACwHwAAtB8AALYfAAC3HwAAvh8AAL4fAADCHwAAxB8AAMYfAADHHwAA0B8AANMfAADWHwAA1x8AAOAfAADnHwAA8h8AAPQfAAD2HwAA9x8AAHEgAABxIAAAfyAAAH8gAACQIAAAnCAAAAohAAAKIQAADiEAAA8hAAATIQAAEyEAAC8hAAAvIQAANCEAADQhAAA5IQAAOSEAADwhAAA9IQAARiEAAEkhAABOIQAATiEAAHAhAAB/IQAAhCEAAIQhAADQJAAA6SQAADAsAABfLAAAYSwAAGEsAABlLAAAZiwAAGgsAABoLAAAaiwAAGosAABsLAAAbCwAAHEsAABxLAAAcywAAHQsAAB2LAAAfSwAAIEsAACBLAAAgywAAIMsAACFLAAAhSwAAIcsAACHLAAAiSwAAIksAACLLAAAiywAAI0sAACNLAAAjywAAI8sAACRLAAAkSwAAJMsAACTLAAAlSwAAJUsAACXLAAAlywAAJksAACZLAAAmywAAJssAACdLAAAnSwAAJ8sAACfLAAAoSwAAKEsAACjLAAAoywAAKUsAAClLAAApywAAKcsAACpLAAAqSwAAKssAACrLAAArSwAAK0sAACvLAAArywAALEsAACxLAAAsywAALMsAAC1LAAAtSwAALcsAAC3LAAAuSwAALksAAC7LAAAuywAAL0sAAC9LAAAvywAAL8sAADBLAAAwSwAAMMsAADDLAAAxSwAAMUsAADHLAAAxywAAMksAADJLAAAyywAAMssAADNLAAAzSwAAM8sAADPLAAA0SwAANEsAADTLAAA0ywAANUsAADVLAAA1ywAANcsAADZLAAA2SwAANssAADbLAAA3SwAAN0sAADfLAAA3ywAAOEsAADhLAAA4ywAAOQsAADsLAAA7CwAAO4sAADuLAAA8ywAAPMsAAAALQAAJS0AACctAAAnLQAALS0AAC0tAABBpgAAQaYAAEOmAABDpgAARaYAAEWmAABHpgAAR6YAAEmmAABJpgAAS6YAAEumAABNpgAATaYAAE+mAABPpgAAUaYAAFGmAABTpgAAU6YAAFWmAABVpgAAV6YAAFemAABZpgAAWaYAAFumAABbpgAAXaYAAF2mAABfpgAAX6YAAGGmAABhpgAAY6YAAGOmAABlpgAAZaYAAGemAABnpgAAaaYAAGmmAABrpgAAa6YAAG2mAABtpgAAgaYAAIGmAACDpgAAg6YAAIWmAACFpgAAh6YAAIemAACJpgAAiaYAAIumAACLpgAAjaYAAI2mAACPpgAAj6YAAJGmAACRpgAAk6YAAJOmAACVpgAAlaYAAJemAACXpgAAmaYAAJmmAACbpgAAnaYAACOnAAAjpwAAJacAACWnAAAnpwAAJ6cAACmnAAAppwAAK6cAACunAAAtpwAALacAAC+nAAAxpwAAM6cAADOnAAA1pwAANacAADenAAA3pwAAOacAADmnAAA7pwAAO6cAAD2nAAA9pwAAP6cAAD+nAABBpwAAQacAAEOnAABDpwAARacAAEWnAABHpwAAR6cAAEmnAABJpwAAS6cAAEunAABNpwAATacAAE+nAABPpwAAUacA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XR8AAF8fAAB9HwAAgB8AALQfAAC2HwAAxB8AAMYfAADTHwAA1h8AANsfAADdHwAA7x8AAPIfAAD0HwAA9h8AAP4fAAAAIAAAJyAAACogAABkIAAAZiAAAHEgAAB0IAAAjiAAAJAgAACcIAAAoCAAAMAgAADQIAAA8CAAAAAhAACLIQAAkCEAACYkAABAJAAASiQAAGAkAABzKwAAdisAAJUrAACXKwAA8ywAAPksAAAlLQAAJy0AACctAAAtLQAALS0AADAtAABnLQAAby0AAHAtAAB/LQAAli0AAKAtAACmLQAAqC0AAK4tAACwLQAAti0AALgtAAC+LQAAwC0AAMYtAADILQAAzi0AANAtAADWLQAA2C0AAN4tAADgLQAAXS4AAIAuAACZLgAAmy4AAPMuAAAALwAA1S8AAPAvAAD7LwAAADAAAD8wAABBMAAAljAAAJkwAAD/MAAABTEAAC8xAAAxMQAAjjEAAJAxAADjMQAA8DEAAB4yAAAgMgAAjKQAAJCkAADGpAAA0KQAACumAABApgAA96YAAACnAADKpwAA0KcAANGnAADTpwAA06cAANWnAADZpwAA8qcAACyoAAAwqAAAOagAAECoAAB3qAAAgKgAAMWoAADOqAAA2agAAOCoAABTqQAAX6kAAHypAACAqQAAzakAAM+pAADZqQAA3qkAAP6pAAAAqgAANqoAAECqAABNqgAAUKoAAFmqAABcqgAAwqoAANuqAAD2qgAAAasAAAarAAAJqwAADqsAABGrAAAWqwAAIKsAACarAAAoqwAALqsAADCrAABrqwAAcKsAAO2rAADwqwAA+asAAACsAACj1wAAsNcAAMbXAADL1wAA+9cAAADgAABt+gAAcPoAANn6AAAA+wAABvsAABP7AAAX+wAAHfsAADb7AAA4+wAAPPsAAD77AAA++wAAQPsAAEH7AABD+wAARPsAAEb7AADC+wAA0/sAAI/9AACS/QAAx/0AAM/9AADP/QAA8P0AABn+AAAg/gAAUv4AAFT+AABm/gAAaP4AAGv+AABw/gAAdP4AAHb+AAD8/gAA//4AAP/+AAAB/wAAvv8AAML/AADH/wAAyv8AAM//AADS/wAA1/8AANr/AADc/wAA4P8AAOb/AADo/wAA7v8AAPn/AAD9/wAAAAABAAsAAQANAAEAJgABACgAAQA6AAEA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AAIBAAACAQAABAEAAAQBAAAGAQAABgEAAAgBAAAIAQAACgEAAAoBAAAMAQAADAEAAA4BAAAOAQAAEAEAABABAAASAQAAEgEAABQBAAAUAQAAFgEAABYBAAAYAQAAGAEAABoBAAAaAQAAHAEAABwBAAAeAQAAHgEAACABAAAgAQAAIgEAACIBAAAkAQAAJAEAACYBAAAmAQAAKAEAACgBAAAqAQAAKgEAACwBAAAsAQAALgEAAC4BAAAwAQAAMAEAADIBAAAyAQAANAEAADQBAAA2AQAANgEAADkBAAA5AQAAOwEAADsBAAA9AQAAPQEAAD8BAAA/AQAAQQEAAEEBAABDAQAAQwEAAEUBAABFAQAARwEAAEcBAABKAQAASgEAAEwBAABMAQAATgEAAE4BAABQAQAAUAEAAFIBAABSAQAAVAEAAFQBAABWAQAAVgEAAFgBAABYAQAAWgEAAFoBAABcAQAAXAEAAF4BAABeAQAAYAEAAGABAABiAQAAYgEAAGQBAABkAQAAZgEAAGYBAABoAQAAaAEAAGoBAABqAQAAbAEAAGwBAABuAQAAbgEAAHABAABwAQAAcgEAAHIBAAB0AQAAdAEAAHYBAAB2AQAAeAEAAHkBAAB7AQAAewEAAH0BAAB9AQAAgQEAAIIBAACEAQAAhAEAAIYBAACHAQAAiQEAAIsBAACOAQAAkQEAAJMBAACUAQAAlgEAAJgBAACcAQAAnQEAAJ8BAACgAQAAogEAAKIBAACkAQAApAEAAKYBAACnAQAAqQEAAKkBAACsAQAArAEAAK4BAACvAQAAsQEAALMBAAC1AQAAtQEAALcBAAC4AQAAvAEAALwBAADEAQAAxAEAAMcBAADHAQAAygEAAMoBAADNAQAAzQEAAM8BAADPAQAA0QEAANEBAADTAQAA0wEAANUBAADVAQAA1wEAANcBAADZAQAA2QEAANsBAADbAQAA3gEAAN4BAADgAQAA4AEAAOIBAADiAQAA5AEAAOQBAADmAQAA5gEAAOgBAADoAQAA6gEAAOoBAADsAQAA7AEAAO4BAADuAQAA8QEAAPEBAAD0AQAA9AEAAPYBAAD4AQAA+gEAAPoBAAD8AQAA/AEAAP4BAAD+AQAAAAIAAAACAAACAgAAAgIAAAQCAAAEAgAABgIAAAYCAAAIAgAACAIAAAoCAAAKAgAADAIAAAwCAAAOAgAADgIAABACAAAQAgAAEgIAABICAAAUAgAAFAIAABYCAAAWAgAAGAIAABgCAAAaAgAAGgIAABwCAAAcAgAAHgIAAB4CAAAgAgAAIAIAACICAAAiAgAAJAIAACQCAAAmAgAAJgIAACgCAAAoAgAAKgIAACoCAAAsAgAALAIAAC4CAAAuAgAAMAIAADACAAAyAgAAMgIAADoCAAA7AgAAPQIAAD4CAABBAgAAQQIAAEMCAABGAgAASAIAAEgCAABKAgAASgIAAEwCAABMAgAATgIAAE4CAABwAwAAcAMAAHIDAAByAwAAdgMAAHYDAAB/AwAAfwMAAIYDAACGAwAAiAMAAIoDAACMAwAAjAMAAI4DAACPAwAAkQMAAKEDAACjAwAAqwMAAM8DAADPAwAA0gMAANQDAADYAwAA2AMAANoDAADaAwAA3AMAANwDAADeAwAA3gMAAOADAADgAwAA4gMAAOIDAADkAwAA5AMAAOYDAADmAwAA6AMAAOgDAADqAwAA6gMAAOwDAADsAwAA7gMAAO4DAAD0AwAA9AMAAPcDAAD3AwAA+QMAAPoDAAD9AwAALwQAAGAEAABgBAAAYgQAAGIEAABkBAAAZAQAAGYEAABmBAAAaAQAAGgEAABqBAAAagQAAGwEAABsBAAAbgQAAG4EAABwBAAAcAQAAHIEAAByBAAAdAQAAHQEAAB2BAAAdgQAAHgEAAB4BAAAegQAAHoEAAB8BAAAfAQAAH4EAAB+BAAAgAQAAIAEAACKBAAAigQAAIwEAACMBAAAjgQAAI4EAACQBAAAkAQAAJIEAACSBAAAlAQAAJQEAACWBAAAlgQAAJgEAACYBAAAmgQAAJoEAACcBAAAnAQAAJ4EAACeBAAAoAQAAKAEAACiBAAAogQAAKQEAACkBAAApgQAAKYEAACoBAAAqAQAAKoEAACqBAAArAQAAKwEAACuBAAArgQAALAEAACwBAAAsgQAALIEAAC0BAAAtAQAALYEAAC2BAAAuAQAALgEAAC6BAAAugQAALwEAAC8BAAAvgQAAL4EAADABAAAwQQAAMMEAADDBAAAxQQAAMUEAADHBAAAxwQAAMkEAADJBAAAywQAAMsEAADNBAAAzQQAANAEAADQBAAA0gQAANIEAADUBAAA1AQAANYEAADWBAAA2AQAANgEAADaBAAA2gQAANwEAADcBAAA3gQAAN4EAADgBAAA4AQAAOIEAADiBAAA5AQAAOQEAADmBAAA5gQAAOgEAADoBAAA6gQAAOoEAADsBAAA7AQAAO4EAADuBAAA8AQAAPAEAADyBAAA8gQAAPQEAAD0BAAA9gQAAPYEAAD4BAAA+AQAAPoEAAD6BAAA/AQAAPwEAAD+BAAA/gQAAAAFAAAABQAAAgUAAAIFAAAEBQAABAUAAAYFAAAGBQAACAUAAAgFAAAKBQAACgUAAAwFAAAMBQAADgUAAA4FAAAQBQAAEAUAABIFAAASBQAAFAUAABQFAAAWBQAAFgUAABgFAAAYBQAAGgUAABoFAAAcBQAAHAUAAB4FAAAeBQAAIAUAACAFAAAiBQAAIgUAACQFAAAkBQAAJgUAACYFAAAoBQAAKAUAACoFAAAqBQAALAUAACwFAAAuBQAALgUAADEFAABWBQAAoBAAAMUQAADHEAAAxxAAAM0QAADNEAAAoBMAAPUTAACQHAAAuhwAAL0cAAC/HAAAAB4AAAAeAAACHgAAAh4AAAQeAAAEHgAABh4AAAYeAAAIHgAACB4AAAoeAAAKHgAADB4AAAweAAAOHgAADh4AABAeAAAQHgAAEh4AABIeAAAUHgAAFB4AABYeAAAWHgAAGB4AABgeAAAaHgAAGh4AABweAAAcHgAAHh4AAB4eAAAgHgAAIB4AACIeAAAiHgAAJB4AACQeAAAmHgAAJh4AACgeAAAoHgAAKh4AACoeAAAsHgAALB4AAC4eAAAuHgAAMB4AADAeAAAyHgAAMh4AADQeAAA0HgAANh4AADYeAAA4HgAAOB4AADoeAAA6HgAAPB4AADweAAA+HgAAPh4AAEAeAABAHgAAQh4AAEIeAABEHgAARB4AAEYeAABGHgAASB4AAEgeAABKHgAASh4AAEweAABMHgAATh4AAE4eAABQHgAAUB4AAFIeAABSHgAAVB4AAFQeAABWHgAAVh4AAFgeAABYHgAAWh4AAFoeAABcHgAAXB4AAF4eAABeHgAAYB4AAGAeAABiHgAAYh4AAGQeAABkHgAAZh4AAGYeAABoHgAAaB4AAGoeAABqHgAAbB4AAGweAABuHgAAbh4AAHAeAABwHgAAch4AAHIeAAB0HgAAdB4AAHYeAAB2HgAAeB4AAHgeAAB6HgAAeh4AAHweAAB8HgAAfh4AAH4eAACAHgAAgB4AAIIeAACCHgAAhB4AAIQeAACGHgAAhh4AAIgeAACIHgAAih4AAIoeAACMHgAAjB4AAI4eAACOHgAAkB4AAJAeAACSHgAAkh4AAJQeAACUHgAAnh4AAJ4eAACgHgAAoB4AAKIeAACiHgAApB4AAKQeAACmHgAAph4AAKgeAACoHgAAqh4AAKoeAACsHgAArB4AAK4eAACuHgAAsB4AALAeAACyHgAAsh4AALQeAAC0HgAAth4AALYeAAC4HgAAuB4AALoeAAC6HgAAvB4AALweAAC+HgAAvh4AAMAeAADAHgAAwh4AAMIeAADEHgAAxB4AAMYeAADGHgAAyB4AAMgeAADKHgAAyh4AAMweAADMHgAAzh4AAM4eAADQHgAA0B4AANIeAADSHgAA1B4AANQeAADWHgAA1h4AANgeAADYHgAA2h4AANoeAADcHgAA3B4AAN4eAADeHgAA4B4AAOAeAADiHgAA4h4AAOQeAADkHgAA5h4AAOYeAADoHgAA6B4AAOoeAADqHgAA7B4AAOweAADuHgAA7h4AAPAeAADwHgAA8h4AAPIeAAD0HgAA9B4AAPYeAAD2HgAA+B4AAPgeAAD6HgAA+h4AAPweAAD8HgAA/h4AAP4eAAAIHwAADx8AABgfAAAdHwAAKB8AAC8fAAA4HwAAPx8AAEgfAABNHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAF8fAABoHwAAbx8AALgfAAC7HwAAyB8AAMsfAADYHwAA2x8AAOgfAADsHwAA+B8AAPsfAAACIQAAAiEAAAchAAAHIQAACyEAAA0hAAAQIQAAEiEAABUhAAAVIQAAGSEAAB0hAAAkIQAAJCEAACYhAAAmIQAAKCEAACghAAAqIQAALSEAADAhAAAzIQAAPiEAAD8hAABFIQAARSEAAGAhAABvIQAAgyEAAIMhAAC2JAAAzyQAAAAsAAAvLAAAYCwAAGAsAABiLAAAZCwAAGcsAABnLAAAaSwAAGksAABrLAAAaywAAG0sAABwLAAAciwAAHIsAAB1LAAAdSwAAH4sAACALAAAgiwAAIIsAACELAAAhCwAAIYsAACGLAAAiCwAAIgsAACKLAAAiiwAAIwsAACMLAAAjiwAAI4sAACQLAAAkCwAAJIsAACSLAAAlCwAAJQsAACWLAAAliwAAJgsAACYLAAAmiwAAJosAACcLAAAnCwAAJ4sAACeLAAAoCwAAKAsAACiLAAAoiwAAKQsAACkLAAApiwAAKYsAACoLAAAqCwAAKosAACqLAAArCwAAKwsAACuLAAAriwAALAsAACwLAAAsiwAALIsAAC0LAAAtCwAALYsAAC2LAAAuCwAALgsAAC6LAAAuiwAALwsAAC8LAAAviwAAL4sAADALAAAwCwAAMIsAADCLAAAxCwAAMQsAADGLAAAxiwAAMgsAADILAAAyiwAAMosAADMLAAAzCwAAM4sAADOLAAA0CwAANAsAADSLAAA0iwAANQsAADULAAA1iwAANYsAADYLAAA2CwAANosAADaLAAA3CwAANwsAADeLAAA3iwAAOAsAADgLAAA4iwAAOIsAADrLAAA6ywAAO0sAADtLAAA8iwAAPIsAABApgAAQKYAAEKmAABCpgAARKYAAESmAABGpgAARqYAAEimAABIpgAASqYAAEqmAABMpgAATKYAAE6mAABOpgAAUKYAAFCmAABSpgAAUqYAAFSmAABUpgAAVqYAAFamAABYpgAAWKYAAFqmAABapgAAXKYAAFymAABepgAAXqYAAGCmAABgpgAAYqYAAGKmAABkpgAAZKYAAGamAABmpgAAaKYAAGimAABqpgAAaqYAAGymAABspgAAgKYAAICmAACCpgAAgqYAAISmAACEpgAAhqYAAIamAACIpgAAiKYAAIqmAACKpgAAjKYAAIymAACOpgAAjqYAAJCmAACQpgAAkqYAAJKmAACUpgAAlKYAAJamAACWpgAAmKYAAJimAACapgAAmqYAACKnAAAipwAAJKcAACSnAAAmpwAAJqcAACinAAAopwAAKqcAACqnAAAspwAALKcAAC6nAAAupwAAMqcAADKnAAA0pwAANKcAADanAAA2pwAAOKcAADinAAA6pwAAOqcAADynAAA8pwAAPqcAAD6nAABApwAAQKcAAEKnAABCpwAARKcAAESnAABGpwAARqcAAEinAABIpwAASqcAAEqnAABMpwAATKcAAE6nAABOpwAAUKcAAFCnAABSpwAAUqcAAFSnAABUpwAAVqcAAFanAABYpwAAWKcAAFqnAABapwAAXKcAAFynAABepwAAXqcAAGCnAABgpwAAYqcAAGKnAABkpwAAZKcAAGanAABmpwAAaKcAAGinAABqpwAAaqcAAGynAABspwAAbqcAAG6nAAB5pwAAeacAAHunAAB7pwAAfacAAH6nAACApwAAgKcAAIKnAACCpwAAhKcAAISnAACGpwAAhqcAAIunAACLpwAAjacAAI2nAACQpwAAkKcAAJKnAACSpwAAlqcAAJanAACYpwAAmKcAAJqnAACapwAAnKcAAJynAACepwAAnqcAAKCnAACgpwAAoqcAAKKnAACkpwAApKcAAKanAACmpwAAqKcAAKinAACqpwAArqcAALCnAAC0pwAAtqcAALanAAC4pwAAuKcAALqnAAC6pwAAvKcAALynAAC+pwAAvqcAAMCnAADApwAAwqcAAMKnAADEpwAAx6cAAMmnAADJpwAA0KcAANCnAADWpwAA1qcAANinAADYpwAA9acAAPWnAAAh/wAAOv8AAAAEAQAnBAEAsAQBANMEAQBwBQEAegUBAHwFAQCKBQEAjAUBAJIFAQCUBQEAlQUBAIAMAQCyDAEAoBgBAL8YAQBAbgEAX24BAADUAQAZ1AEANNQBAE3UAQBo1AEAgdQBAJzUAQCc1AEAntQBAJ/UAQCi1AEAotQBAKXUAQCm1AEAqdQBAKzUAQCu1AEAtdQBANDUAQDp1AEABNUBAAXVAQAH1QEACtUBAA3VAQAU1QEAFtUBABzVAQA41QEAOdUBADvVAQA+1QEAQNUBAETVAQBG1QEARtUBAErVAQBQ1QEAbNUBAIXVAQCg1QEAudUBANTVAQDt1QEACNYBACHWAQA81gEAVdYBAHDWAQCJ1gEAqNYBAMDWAQDi1gEA+tYBABzXAQA01wEAVtcBAG7XAQCQ1wEAqNcBAMrXAQDK1wEAAOkBACHpAQAw8QEASfEBAFDxAQBp8QEAcPEBAInxAQAAAAAAAwAAADAAAAA5AAAAQQAAAEYAAABhAAAAZgAAAAAAAAD2AgAAMAAAADkAAABBAAAAWgAAAF8AAABfAAAAYQAAAHoAAACqAAAAqgAAALUAAAC1AAAAugAAALoAAADAAAAA1gAAANgAAAD2AAAA+AAAAMECAADGAgAA0QIAAOACAADkAgAA7AIAAOwCAADuAgAA7gIAAAADAAB0AwAAdgMAAHcDAAB6AwAAfQMAAH8DAAB/AwAAhgMAAIYDAACIAwAAigMAAIwDAACMAwAAjgMAAKEDAACjAwAA9QMAAPcDAACBBAAAgwQAAC8FAAAxBQAAVgUAAFkFAABZBQAAYAUAAIgFAACRBQAAvQUAAL8FAAC/BQAAwQUAAMIFAADEBQAAxQUAAMcFAADHBQAA0AUAAOoFAADvBQAA8gUAABAGAAAaBgAAIAYAAGkGAABuBgAA0wYAANUGAADcBgAA3wYAAOgGAADqBgAA/AYAAP8GAAD/BgAAEAcAAEoHAABNBwAAsQcAAMAHAAD1BwAA+gcAAPoHAAD9BwAA/QcAAAAIAAAtCAAAQAgAAFsIAABgCAAAaggAAHAIAACHCAAAiQgAAI4IAACYCAAA4QgAAOMIAABjCQAAZgkAAG8JAABxCQAAgwkAAIUJAACMCQAAjwkAAJAJAACTCQAAqAkAAKoJAACwCQAAsgkAALIJAAC2CQAAuQkAALwJAADECQAAxwkAAMgJAADLCQAAzgkAANcJAADXCQAA3AkAAN0JAADfCQAA4wkAAOYJAADxCQAA/AkAAPwJAAD+CQAA/gkAAAEKAAADCgAABQoAAAoKAAAPCgAAEAoAABMKAAAoCgAAKgoAADAKAAAyCgAAMwoAADUKAAA2CgAAOAoAADkKAAA8CgAAPAoAAD4KAABCCgAARwoAAEgKAABLCgAATQoAAFEKAABRCgAAWQoAAFwKAABeCgAAXgoAAGYKAAB1CgAAgQoAAIMKAACFCgAAjQoAAI8KAACRCgAAkwoAAKgKAACqCgAAsAoAALIKAACzCgAAtQoAALkKAAC8CgAAxQoAAMcKAADJCgAAywoAAM0KAADQCgAA0AoAAOAKAADjCgAA5goAAO8KAAD5CgAA/woAAAELAAADCwAABQsAAAwLAAAPCwAAEAsAABMLAAAoCwAAKgsAADALAAAyCwAAMwsAADULAAA5CwAAPAsAAEQLAABHCwAASAsAAEsLAABNCwAAVQsAAFcLAABcCwAAXQsAAF8LAABjCwAAZgsAAG8LAABxCwAAcQsAAIILAACDCwAAhQsAAIoLAACOCwAAkAsAAJILAACVCwAAmQsAAJoLAACcCwAAnAsAAJ4LAACfCwAAowsAAKQLAACoCwAAqgsAAK4LAAC5CwAAvgsAAMILAADGCwAAyAsAAMoLAADNCwAA0AsAANALAADXCwAA1wsAAOYLAADvCwAAAAwAAAwMAAAODAAAEAwAABIMAAAoDAAAKgwAADkMAAA8DAAARAwAAEYMAABIDAAASgwAAE0MAABVDAAAVgwAAFgMAABaDAAAXQwAAF0MAABgDAAAYwwAAGYMAABvDAAAgAwAAIMMAACFDAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvAwAAMQMAADGDAAAyAwAAMoMAADNDAAA1QwAANYMAADdDAAA3gwAAOAMAADjDAAA5gwAAO8MAADxDAAA8gwAAAANAAAMDQAADg0AABANAAASDQAARA0AAEYNAABIDQAASg0AAE4NAABUDQAAVw0AAF8NAABjDQAAZg0AAG8NAAB6DQAAfw0AAIENAACDDQAAhQ0AAJYNAACaDQAAsQ0AALMNAAC7DQAAvQ0AAL0NAADADQAAxg0AAMoNAADKDQAAzw0AANQNAADWDQAA1g0AANgNAADfDQAA5g0AAO8NAADyDQAA8w0AAAEOAAA6DgAAQA4AAE4OAABQDgAAWQ4AAIEOAACCDgAAhA4AAIQOAACGDgAAig4AAIwOAACjDgAApQ4AAKUOAACnDgAAvQ4AAMAOAADEDgAAxg4AAMYOAADIDgAAzQ4AANAOAADZDgAA3A4AAN8OAAAADwAAAA8AABgPAAAZDwAAIA8AACkPAAA1DwAANQ8AADcPAAA3DwAAOQ8AADkPAAA+DwAARw8AAEkPAABsDwAAcQ8AAIQPAACGDwAAlw8AAJkPAAC8DwAAxg8AAMYPAAAAEAAASRAAAFAQAACdEAAAoBAAAMUQAADHEAAAxxAAAM0QAADNEAAA0BAAAPoQAAD8EAAASBIAAEoSAABNEgAAUBIAAFYSAABYEgAAWBIAAFoSAABdEgAAYBIAAIgSAACKEgAAjRIAAJASAACwEgAAshIAALUSAAC4EgAAvhIAAMASAADAEgAAwhIAAMUSAADIEgAA1hIAANgSAAAQEwAAEhMAABUTAAAYEwAAWhMAAF0TAABfEwAAgBMAAI8TAACgEwAA9RMAAPgTAAD9EwAAARQAAGwWAABvFgAAfxYAAIEWAACaFgAAoBYAAOoWAADuFgAA+BYAAAAXAAAVFwAAHxcAADQXAABAFwAAUxcAAGAXAABsFwAAbhcAAHAXAAByFwAAcxcAAIAXAADTFwAA1xcAANcXAADcFwAA3RcAAOAXAADpFwAACxgAAA0YAAAPGAAAGRgAACAYAAB4GAAAgBgAAKoYAACwGAAA9RgAAAAZAAAeGQAAIBkAACsZAAAwGQAAOxkAAEYZAABtGQAAcBkAAHQZAACAGQAAqxkAALAZAADJGQAA0BkAANkZAAAAGgAAGxoAACAaAABeGgAAYBoAAHwaAAB/GgAAiRoAAJAaAACZGgAApxoAAKcaAACwGgAAzhoAAAAbAABMGwAAUBsAAFkbAABrGwAAcxsAAIAbAADzGwAAABwAADccAABAHAAASRwAAE0cAAB9HAAAgBwAAIgcAACQHAAAuhwAAL0cAAC/HAAA0BwAANIcAADUHAAA+hwAAAAdAAAVHwAAGB8AAB0fAAAgHwAARR8AAEgfAABNHwAAUB8AAFcfAABZHwAAWR8AAFsfAABbHwAAXR8AAF0fAABfHwAAfR8AAIAfAAC0HwAAth8AALwfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMwfAADQHwAA0x8AANYfAADbHwAA4B8AAOwfAADyHwAA9B8AAPYfAAD8HwAAPyAAAEAgAABUIAAAVCAAAHEgAABxIAAAfyAAAH8gAACQIAAAnCAAANAgAADwIAAAAiEAAAIhAAAHIQAAByEAAAohAAATIQAAFSEAABUhAAAZIQAAHSEAACQhAAAkIQAAJiEAACYhAAAoIQAAKCEAACohAAAtIQAALyEAADkhAAA8IQAAPyEAAEUhAABJIQAATiEAAE4hAABgIQAAiCEAALYkAADpJAAAACwAAOQsAADrLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AADAtAABnLQAAby0AAG8tAAB/LQAAli0AAKAtAACmLQAAqC0AAK4tAACwLQAAti0AALgtAAC+LQAAwC0AAMYtAADILQAAzi0AANAtAADWLQAA2C0AAN4tAADgLQAA/y0AAC8uAAAvLgAABTAAAAcwAAAhMAAALzAAADEwAAA1MAAAODAAADwwAABBMAAAljAAAJkwAACaMAAAnTAAAJ8wAAChMAAA+jAAAPwwAAD/MAAABTEAAC8xAAAxMQAAjjEAAKAxAAC/MQAA8DEAAP8xAAAANAAAv00AAABOAACMpAAA0KQAAP2kAAAApQAADKYAABCmAAArpgAAQKYAAHKmAAB0pgAAfaYAAH+mAADxpgAAF6cAAB+nAAAipwAAiKcAAIunAADKpwAA0KcA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AIQDAACKAwAAjAMAAIwDAACOAwAAoQMAAKMDAAAvBQAAMQUAAFYFAABZBQAAigUAAI0FAACPBQAAkQUAAMcFAADQBQAA6gUAAO8FAAD0BQAAAAYAAA0HAAAPBwAASgcAAE0HAACxBwAAwAcAAPoHAAD9BwAALQgAADAIAAA+CAAAQAgAAFsIAABeCAAAXggAAGAIAABqCAAAcAgAAI4IAACQCAAAkQgAAJgIAACDCQAAhQkAAIwJAACPCQAAkAkAAJMJAACoCQAAqgkAALAJAACyCQAAsgkAALYJAAC5CQAAvAkAAMQJAADHCQAAyAkAAMsJAADOCQAA1wkAANcJAADcCQAA3QkAAN8JAADjCQAA5gkAAP4JAAABCgAAAwoAAAUKAAAKCgAADwoAABAKAAATCgAAKAoAACoKAAAwCgAAMgoAADMKAAA1CgAANgoAADgKAAA5CgAAPAoAADwKAAA+CgAAQgoAAEcKAABICgAASwoAAE0KAABRCgAAUQoAAFkKAABcCgAAXgoAAF4KAABmCgAAdgoAAIEKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvAoAAMUKAADHCgAAyQoAAMsKAADNCgAA0AoAANAKAADgCgAA4woAAOYKAADxCgAA+QoAAP8KAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAAB3CwAAggsAAIMLAACFCwAAigsAAI4LAACQCwAAkgsAAJULAACZCwAAmgsAAJwLAACcCwAAngsAAJ8LAACjCwAApAsAAKgLAACqCwAArgsAALkLAAC+CwAAwgsAAMYLAADICwAAygsAAM0LAADQCwAA0AsAANcLAADXCwAA5gsAAPoLAAAADAAADAwAAA4MAAAQDAAAEgwAACgMAAAqDAAAOQwAADwMAABEDAAARgwAAEgMAABKDAAATQwAAFUMAABWDAAAWAwAAFoMAABdDAAAXQwAAGAMAABjDAAAZgwAAG8MAAB3DAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvAwA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AMUJAADGCQAAyQkAAMoJAADPCQAA1gkAANgJAADbCQAA3gkAAN4JAADkCQAA5QkAAP8JAAAACgAABAoAAAQKAAALCgAADgoAABEKAAASCgAAKQoAACkKAAAxCgAAMQoAADQKAAA0CgAANwoAADcKAAA6CgAAOwoAAD0KAAA9CgAAQwoAAEYKAABJCgAASgoAAE4KAABQCgAAUgoAAFgKAABdCgAAXQoAAF8KAABlCgAAdwoAAIAKAACECgAAhAoAAI4KAACOCgAAkgoAAJIKAACpCgAAqQoAALEKAACxCgAAtAoAALQKAAC6CgAAuwoAAMYKAADGCgAAygoAAMoKAADOCgAAzwoAANEKAADfCgAA5AoAAOUKAADyCgAA+AoAAAALAAAACwAABAsAAAQLAAANCwAADgsAABELAAASCwAAKQsAACkLAAAxCwAAMQsAADQLAAA0CwAAOgsAADsLAABFCwAARgsAAEkLAABKCwAATgsAAFQLAABYCwAAWwsAAF4LAABeCwAAZAsAAGULAAB4CwAAgQsAAIQLAACECwAAiwsAAI0LAACRCwAAkQsAAJYLAACYCwAAmwsAAJsLAACdCwAAnQsAAKALAACiCwAApQsAAKcLAACrCwAArQsAALoLAAC9CwAAwwsAAMULAADJCwAAyQsAAM4LAADPCwAA0QsAANYLAADYCwAA5QsAAPsLAAD/CwAADQwAAA0MAAARDAAAEQwAACkMAAApDAAAOgwAADsMAABFDAAARQwAAEkMAABJDAAATgwAAFQMAABXDAAAVwwAAFsMAABcDAAAXgwAAF8MAABkDAAAZQwAAHAMAAB2DAAAjQwAAI0MAACRDAAAkQwAAKkMAACpDAAAtAwAALQMAAC6DAAAuwwAAMUMAADFDAAAyQwAAMkMAADODAAA1AwAANcMAADcDAAA3wwAAN8MAADkDAAA5QwAAPAMAADwDAAA8wwAAP8MAAANDQAADQ0AABENAAARDQAARQ0AAEUNAABJDQAASQ0AAFANAABTDQAAZA0AAGUNAACADQAAgA0AAIQNAACEDQAAlw0AAJkNAACyDQAAsg0AALwNAAC8DQAAvg0AAL8NAADHDQAAyQ0AAMsNAADODQAA1Q0AANUNAADXDQAA1w0AAOANAADlDQAA8A0AAPENAAD1DQAAAA4AADsOAAA+DgAAXA4A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AQAAcAEAAHIBAAByAQAAdAEAAHQBAAB2AQAAdgEAAHgBAAB5AQAAewEAAHsBAAB9AQAAfQEAAH8BAAB/AQAAgQEAAIIBAACEAQAAhAEAAIYBAACHAQAAiQEAAIsBAACOAQAAkQEAAJMBAACUAQAAlgEAAJgBAACcAQAAnQEAAJ8BAACgAQAAogEAAKIBAACkAQAApAEAAKYBAACnAQAAqQEAAKkBAACsAQAArAEAAK4BAACvAQAAsQEAALMBAAC1AQAAtQEAALcBAAC4AQAAvAEAALwBAADEAQAAxQEAAMcBAADIAQAAygEAAMsBAADNAQAAzQEAAM8BAADPAQAA0QEAANEBAADTAQAA0wEAANUBAADVAQAA1wEAANcBAADZAQAA2QEAANsBAADbAQAA3gEAAN4BAADgAQAA4AEAAOIBAADiAQAA5AEAAOQBAADmAQAA5gEAAOgBAADoAQAA6gEAAOoBAADsAQAA7AEAAO4BAADuAQAA8QEAAPIBAAD0AQAA9AEAAPYBAAD4AQAA+gEAAPoBAAD8AQAA/AEAAP4BAAD+AQAAAAIAAAACAAACAgAAAgIAAAQCAAAEAgAABgIAAAYCAAAIAgAACAIAAAoCAAAKAgAADAIAAAwCAAAOAgAADgIAABACAAAQAgAAEgIAABICAAAUAgAAFAIAABYCAAAWAgAAGAIAABgCAAAaAgAAGgIAABwCAAAcAgAAHgIAAB4CAAAgAgAAIAIAACICAAAiAgAAJAIAACQCAAAmAgAAJgIAACgCAAAoAgAAKgIAACoCAAAsAgAALAIAAC4CAAAuAgAAMAIAADACAAAyAgAAMgIAADoCAAA7AgAAPQIAAD4CAABBAgAAQQIAAEMCAABGAgAASAIAAEgCAABKAgAASgIAAEwCAABMAgAATgIAAE4CAABFAwAARQMAAHADAABwAwAAcgMAAHIDAAB2AwAAdgMAAH8DAAB/AwAAhgMAAIYDAACIAwAAigMAAIwDAACMAwAAjgMAAI8DAACRAwAAoQMAAKMDAACrAwAAwgMAAMIDAADPAwAA0QMAANUDAADWAwAA2AMAANgDAADaAwAA2gMAANwDAADcAwAA3gMAAN4DAADgAwAA4AMAAOIDAADiAwAA5AMAAOQDAADmAwAA5gMAAOgDAADoAwAA6gMAAOoDAADsAwAA7AMAAO4DAADuAwAA8AMAAPEDAAD0AwAA9QMAAPcDAAD3AwAA+QMAAPoDAAD9AwAALwQAAGAEAABgBAAAYgQAAGIEAABkBAAAZAQAAGYEAABmBAAAaAQAAGgEAABqBAAAagQAAGwEAABsBAAAbgQAAG4EAABwBAAAcAQAAHIEAAByBAAAdAQAAHQEAAB2BAAAdgQAAHgEAAB4BAAAegQAAHoEAAB8BAAAfAQAAH4EAAB+BAAAgAQAAIAEAACKBAAAigQAAIwEAACMBAAAjgQAAI4EAACQBAAAkAQAAJIEAACSBAAAlAQAAJQEAACWBAAAlgQAAJgEAACYBAAAmgQAAJoEAACcBAAAnAQAAJ4EAACeBAAAoAQAAKAEAACiBAAAogQAAKQEAACkBAAApgQAAKYEAACoBAAAqAQAAKoEAACqBAAArAQAAKwEAACuBAAArgQAALAEAACwBAAAsgQAALIEAAC0BAAAtAQAALYEAAC2BAAAuAQAALgEAAC6BAAAugQAALwEAAC8BAAAvgQAAL4EAADABAAAwQQAAMMEAADDBAAAxQQAAMUEAADHBAAAxwQAAMkEAADJBAAAywQAAMsEAADNBAAAzQQAANAEAADQBAAA0gQAANIEAADUBAAA1AQAANYEAADWBAAA2AQAANgEAADaBAAA2gQAANwEAADcBAAA3gQAAN4EAADgBAAA4AQAAOIEAADiBAAA5AQAAOQEAADmBAAA5gQAAOgEAADoBAAA6gQAAOoEAADsBAAA7AQAAO4EAADuBAAA8AQAAPAEAADyBAAA8gQAAPQEAAD0BAAA9gQAAPYEAAD4BAAA+AQAAPoEAAD6BAAA/AQAAPwEAAD+BAAA/gQAAAAFAAAABQAAAgUAAAIFAAAEBQAABAUAAAYFAAAGBQAACAUAAAgFAAAKBQAACgUAAAwFAAAMBQAADgUAAA4FAAAQBQAAEAUAABIFAAASBQAAFAUAABQFAAAWBQAAFgUAABgFAAAYBQAAGgUAABoFAAAcBQAAHAUAAB4FAAAeBQAAIAUAACAFAAAiBQAAIgUAACQFAAAkBQAAJgUAACYFAAAoBQAAKAUAACoFAAAqBQAALAUAACwFAAAuBQAALgUAADEFAABWBQAAhwUAAIcFAACgEAAAxRAAAMcQAADHEAAAzRAAAM0QAAD4EwAA/RMAAIAcAACIHAAAkBwAALocAAC9HAAAvxwAAAAeAAAAHgAAAh4AAAIeAAAEHgAABB4AAAYeAAAGHgAACB4AAAgeAAAKHgAACh4AAAweAAAMHgAADh4AAA4eAAAQHgAAEB4AABIeAAASHgAAFB4AABQeAAAWHgAAFh4AABgeAAAYHgAAGh4AABoeAAAcHgAAHB4AAB4eAAAeHgAAIB4AACAeAAAiHgAAIh4AACQeAAAkHgAAJh4AACYeAAAoHgAAKB4AACoeAAAqHgAALB4AACweAAAuHgAALh4AADAeAAAwHgAAMh4AADIeAAA0HgAANB4AADYeAAA2HgAAOB4AADgeAAA6HgAAOh4AADweAAA8HgAAPh4AAD4eAABAHgAAQB4AAEIeAABCHgAARB4AAEQeAABGHgAARh4AAEgeAABIHgAASh4AAEoeAABMHgAATB4AAE4eAABOHgAAUB4AAFAeAABSHgAAUh4AAFQeAABUHgAAVh4AAFYeAABYHgAAWB4AAFoeAABaHgAAXB4AAFweAABeHgAAXh4AAGAeAABgHgAAYh4AAGIeAABkHgAAZB4AAGYeAABmHgAAaB4AAGgeAABqHgAAah4AAGweAABsHgAAbh4AAG4eAABwHgAAcB4AAHIeAAByHgAAdB4AAHQeAAB2HgAAdh4AAHgeAAB4HgAAeh4AAHoeAAB8HgAAfB4AAH4eAAB+HgAAgB4AAIAeAACCHgAAgh4AAIQeAACEHgAAhh4AAIYeAACIHgAAiB4AAIoeAACKHgAAjB4AAIweAACOHgAAjh4AAJAeAACQHgAAkh4AAJIeAACUHgAAlB4AAJoeAACbHgAAnh4AAJ4eAACgHgAAoB4AAKIeAACiHgAApB4AAKQeAACmHgAAph4AAKgeAACoHgAAqh4AAKoeAACsHgAArB4AAK4eAACuHgAAsB4AALAeAACyHgAAsh4AALQeAAC0HgAAth4AALYeAAC4HgAAuB4AALoeAAC6HgAAvB4AALweAAC+HgAAvh4AAMAeAADAHgAAwh4AAMIeAADEHgAAxB4AAMYeAADGHgAAyB4AAMgeAADKHgAAyh4AAMweAADMHgAAzh4AAM4eAADQHgAA0B4AANIeAADSHgAA1B4AANQeAADWHgAA1h4AANgeAADYHgAA2h4AANoeAADcHgAA3B4AAN4eAADeHgAA4B4AAOAeAADiHgAA4h4AAOQeAADkHgAA5h4AAOYeAADoHgAA6B4AAOoeAADqHgAA7B4AAOweAADuHgAA7h4AAPAeAADwHgAA8h4AAPIeAAD0HgAA9B4AAPYeAAD2HgAA+B4AAPgeAAD6HgAA+h4AAPweAAD8HgAA/h4AAP4eAAAIHwAADx8AABgfAAAdHwAAKB8AAC8fAAA4HwAAPx8AAEgfAABNHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAF8fAABoHwAAbx8AAIAfAACvHwAAsh8AALQfAAC3HwAAvB8AAMIfAADEHwAAxx8AAMwfAADYHwAA2x8AAOgfAADsHwAA8h8AAPQfAAD3HwAA/B8AACYhAAAmIQAAKiEAACshAAAyIQAAMiEAAGAhAABvIQAAgyEAAIMhAAC2JAAAzyQAAAAsAAAvLAAAYCwAAGAsAABiLAAAZCwAAGcsAABnLAAAaSwAAGksAABrLAAAaywAAG0sAABwLAAAciwAAHIsAAB1LAAAdSwAAH4sAACALAAAgiwAAIIsAACELAAAhCwAAIYsAACGLAAAiCwAAIgsAACKLAAAiiwAAIwsAACMLAAAjiwAAI4sAACQLAAAkCwAAJIsAACSLAAAlCwAAJQsAACWLAAAliwAAJgsAACYLAAAmiwAAJosAACcLAAAnCwAAJ4sAACeLAAAoCwAAKAsAACiLAAAoiwAAKQsAACkLAAApiwAAKYsAACoLAAAqCwAAKosAACqLAAArCwAAKwsAACuLAAAriwAALAsAACwLAAAsiwAALIsAAC0LAAAtCwAALYsAAC2LAAAuCwAALgsAAC6LAAAuiwAALwsAAC8LAAAviwAAL4sAADALAAAwCwAAMIsAADCLAAAxCwAAMQsAADGLAAAxiwAAMgsAADILAAAyiwAAMosAADMLAAAzCwAAM4sAADOLAAA0CwAANAsAADSLAAA0iwAANQsAADULAAA1iwAANYsAADYLAAA2CwAANosAADaLAAA3CwAANwsAADeLAAA3iwAAOAsAADgLAAA4iwAAOIsAADrLAAA6ywAAO0sAADtLAAA8iwAAPIsAABApgAAQKYAAEKmAABCpgAARKYAAESmAABGpgAARqYAAEimAABIpgAASqYAAEqmAABMpgAATKYAAE6mAABOpgAAUKYAAFCmAABSpgAAUqYAAFSmAABUpgAAVqYAAFamAABYpgAAWKYAAFqmAABapgAAXKYAAFymAABepgAAXqYAAGCmAABgpgAAYqYAAGKmAABkpgAAZKYAAGamAABmpgAAaKYAAGimAABqpgAAaqYAAGymAABspgAAgKYAAICmAACCpgAAgqYAAISmAACEpgAAhqYAAIamAACIpgAAiKYAAIqmAACKpgAAjKYAAIymAACOpgAAjqYAAJCmAACQpgAAkqYAAJKmAACUpgAAlKYAAJamAACWpgAAmKYAAJimAACapgAAmqYAACKnAAAipwAAJKcAACSnAAAmpwAAJqcAACinAAAopwAAKqcAACqnAAAspwAALKcAAC6nAAAupwAAMqcAADKnAAA0pwAANKcAADanAAA2pwAAOKcAADinAAA6pwAAOqcAADynAAA8pwAAPqcAAD6nAABApwAAQKcAAEKnAABCpwAARKcAAESnAABGpwAARqcAAEinAABIpwAASqcAAEqnAABMpwAATKcAAE6nAABOpwAAUKcAAFCnAABSpwAAUqcAAFSnAABUpwAAVqcAAFanAABYpwAAWKcAAFqnAABapwAAXKcAAFynAABepwAAXqcAAGCnAABgpwAAYqcAAGKnAABkpwAAZKcAAGanAABmpwAAaKcAAGinAABqpwAAaqcAAGynAABspwAAbqcAAG6nAAB5pwAAeacAAHunAAB7pwAAfacAAH6nAACApwAAgKcAAIKnAACCpwAAhKcAAISnAACGpwAAhqcAAIunAACLpwAAjacAAI2nAACQpwAAkKcAAJKnAACSpwAAlqcAAJanAACYpwAAmKcAAJqnAACapwAAnKcAAJynAACepwAAnqcAAKCnAACgpwAAoqcAAKKnAACkpwAApKcAAKanAACmpwAAqKcAAKinAACqpwAArqcAALCnAAC0pwAAtqcAALanAAC4pwAAuKcAALqnAAC6pwAAvKcAALynAAC+pwAAvqcAAMCnAADApwAAwqcAAMKnAADEpwAAx6cAAMmnAADJpwAA0KcAANCnAADWpwAA1qcAANinAADYpwAA9acAAPWnAABwqwAAv6sAAAD7AAAG+wAAE/sAABf7AAAh/wAAOv8AAAAEAQAnBAEAsAQBANMEAQBwBQEAegUBAHwFAQCKBQEAjAUBAJIFAQCUBQEAlQUBAIAMAQCyDAEAoBgBAL8YAQBAbgEAX24BAADpAQAh6QEAQdCOBgvDVYMAAABBAAAAWgAAAGEAAAB6AAAAtQAAALUAAADAAAAA1gAAANgAAAD2AAAA+AAAADcBAAA5AQAAjAEAAI4BAACaAQAAnAEAAKkBAACsAQAAuQEAALwBAAC9AQAAvwEAAL8BAADEAQAAIAIAACICAAAzAgAAOgIAAFQCAABWAgAAVwIAAFkCAABZAgAAWwIAAFwCAABgAgAAYQIAAGMCAABjAgAAZQIAAGYCAABoAgAAbAIAAG8CAABvAgAAcQIAAHICAAB1AgAAdQIAAH0CAAB9AgAAgAIAAIACAACCAgAAgwIAAIcCAACMAgAAkgIAAJICAACdAgAAngIAAEUDAABFAwAAcAMAAHMDAAB2AwAAdwMAAHsDAAB9AwAAfwMAAH8DAACGAwAAhgMAAIgDAACKAwAAjAMAAIwDAACOAwAAoQMAAKMDAADRAwAA1QMAAPUDAAD3AwAA+wMAAP0DAACBBAAAigQAAC8FAAAxBQAAVgUAAGEFAACHBQAAoBAAAMUQAADHEAAAxxAAAM0QAADNEAAA0BAAAPoQAAD9EAAA/xAAAKATAAD1EwAA+BMAAP0TAACAHAAAiBwAAJAcAAC6HAAAvRwAAL8cAAB5HQAAeR0AAH0dAAB9HQAAjh0AAI4dAAAAHgAAmx4AAJ4eAACeHgAAoB4AABUfAAAYHwAAHR8AACAfAABFHwAASB8AAE0fAABQHwAAVx8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAAB9HwAAgB8AALQfAAC2HwAAvB8AAL4fAAC+HwAAwh8AAMQfAADGHwAAzB8AANAfAADTHwAA1h8AANsfAADgHwAA7B8AAPIfAAD0HwAA9h8AAPwfAAAmIQAAJiEAACohAAArIQAAMiEAADIhAABOIQAATiEAAGAhAAB/IQAAgyEAAIQhAAC2JAAA6SQAAAAsAABwLAAAciwAAHMsAAB1LAAAdiwAAH4sAADjLAAA6ywAAO4sAADyLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AAECmAABtpgAAgKYAAJumAAAipwAAL6cAADKnAABvpwAAeacAAIenAACLpwAAjacAAJCnAACUpwAAlqcAAK6nAACwpwAAyqcAANCnAADRpwAA1qcAANmnAAD1pwAA9qcAAFOrAABTqwAAcKsAAL+rAAAA+wAABvsAABP7AAAX+wAAIf8AADr/AABB/wAAWv8AAAAEAQBPBAEAsAQBANMEAQDYBAEA+wQBAHAFAQB6BQEAfAUBAIoFAQCMBQEAkgUBAJQFAQCVBQEAlwUBAKEFAQCjBQEAsQUBALMFAQC5BQEAuwUBALwFAQCADAEAsgwBAMAMAQDyDAEAoBgBAN8YAQBAbgEAf24BAADpAQBD6QEAAAAAAGECAABBAAAAWgAAAMAAAADWAAAA2AAAAN4AAAAAAQAAAAEAAAIBAAACAQAABAEAAAQBAAAGAQAABgEAAAgBAAAIAQAACgEAAAoBAAAMAQAADAEAAA4BAAAOAQAAEAEAABABAAASAQAAEgEAABQBAAAUAQAAFgEAABYBAAAYAQAAGAEAABoBAAAaAQAAHAEAABwBAAAeAQAAHgEAACABAAAgAQAAIgEAACIBAAAkAQAAJAEAACYBAAAmAQAAKAEAACgBAAAqAQAAKgEAACwBAAAsAQAALgEAAC4BAAAwAQAAMAEAADIBAAAyAQAANAEAADQBAAA2AQAANgEAADkBAAA5AQAAOwEAADsBAAA9AQAAPQEAAD8BAAA/AQAAQQEAAEEBAABDAQAAQwEAAEUBAABFAQAARwEAAEcBAABKAQAASgEAAEwBAABMAQAATgEAAE4BAABQAQAAUAEAAFIBAABSAQAAVAEAAFQBAABWAQAAVgEAAFgBAABYAQAAWgEAAFoBAABcAQAAXAEAAF4BAABeAQAAYAEAAGABAABiAQAAYgEAAGQBAABkAQAAZgEAAGYBAABoAQAAaAEAAGoBAABqAQAAbAEAAGwBAABuAQAAbgEAAHABAABwAQAAcgEAAHIBAAB0AQAAdAEAAHYBAAB2AQAAeAEAAHkBAAB7AQAAewEAAH0BAAB9AQAAgQEAAIIBAACEAQAAhAEAAIYBAACHAQAAiQEAAIsBAACOAQAAkQEAAJMBAACUAQAAlgEAAJgBAACcAQAAnQEAAJ8BAACgAQAAogEAAKIBAACkAQAApAEAAKYBAACnAQAAqQEAAKkBAACsAQAArAEAAK4BAACvAQAAsQEAALMBAAC1AQAAtQEAALcBAAC4AQAAvAEAALwBAADEAQAAxQEAAMcBAADIAQAAygEAAMsBAADNAQAAzQEAAM8BAADPAQAA0QEAANEBAADTAQAA0wEAANUBAADVAQAA1wEAANcBAADZAQAA2QEAANsBAADbAQAA3gEAAN4BAADgAQAA4AEAAOIBAADiAQAA5AEAAOQBAADmAQAA5gEAAOgBAADoAQAA6gEAAOoBAADsAQAA7AEAAO4BAADuAQAA8QEAAPIBAAD0AQAA9AEAAPYBAAD4AQAA+gEAAPoBAAD8AQAA/AEAAP4BAAD+AQAAAAIAAAACAAACAgAAAgIAAAQCAAAEAgAABgIAAAYCAAAIAgAACAIAAAoCAAAKAgAADAIAAAwCAAAOAgAADgIAABACAAAQAgAAEgIAABICAAAUAgAAFAIAABYCAAAWAgAAGAIAABgCAAAaAgAAGgIAABwCAAAcAgAAHgIAAB4CAAAgAgAAIAIAACICAAAiAgAAJAIAACQCAAAmAgAAJgIAACgCAAAoAgAAKgIAACoCAAAsAgAALAIAAC4CAAAuAgAAMAIAADACAAAyAgAAMgIAADoCAAA7AgAAPQIAAD4CAABBAgAAQQIAAEMCAABGAgAASAIAAEgCAABKAgAASgIAAEwCAABMAgAATgIAAE4CAABwAwAAcAMAAHIDAAByAwAAdgMAAHYDAAB/AwAAfwMAAIYDAACGAwAAiAMAAIoDAACMAwAAjAMAAI4DAACPAwAAkQMAAKEDAACjAwAAqwMAAM8DAADPAwAA2AMAANgDAADaAwAA2gMAANwDAADcAwAA3gMAAN4DAADgAwAA4AMAAOIDAADiAwAA5AMAAOQDAADmAwAA5gMAAOgDAADoAwAA6gMAAOoDAADsAwAA7AMAAO4DAADuAwAA9AMAAPQDAAD3AwAA9wMAAPkDAAD6AwAA/QMAAC8EAABgBAAAYAQAAGIEAABiBAAAZAQAAGQEAABmBAAAZgQAAGgEAABoBAAAagQAAGoEAABsBAAAbAQAAG4EAABuBAAAcAQAAHAEAAByBAAAcgQAAHQEAAB0BAAAdgQAAHYEAAB4BAAAeAQAAHoEAAB6BAAAfAQAAHwEAAB+BAAAfgQAAIAEAACABAAAigQAAIoEAACMBAAAjAQAAI4EAACOBAAAkAQAAJAEAACSBAAAkgQAAJQEAACUBAAAlgQAAJYEAACYBAAAmAQAAJoEAACaBAAAnAQAAJwEAACeBAAAngQAAKAEAACgBAAAogQAAKIEAACkBAAApAQAAKYEAACmBAAAqAQAAKgEAACqBAAAqgQAAKwEAACsBAAArgQAAK4EAACwBAAAsAQAALIEAACyBAAAtAQAALQEAAC2BAAAtgQAALgEAAC4BAAAugQAALoEAAC8BAAAvAQAAL4EAAC+BAAAwAQAAMEEAADDBAAAwwQAAMUEAADFBAAAxwQAAMcEAADJBAAAyQQAAMsEAADLBAAAzQQAAM0EAADQBAAA0AQAANIEAADSBAAA1AQAANQEAADWBAAA1gQAANgEAADYBAAA2gQAANoEAADcBAAA3AQAAN4EAADeBAAA4AQAAOAEAADiBAAA4gQAAOQEAADkBAAA5gQAAOYEAADoBAAA6AQAAOoEAADqBAAA7AQAAOwEAADuBAAA7gQAAPAEAADwBAAA8gQAAPIEAAD0BAAA9AQAAPYEAAD2BAAA+AQAAPgEAAD6BAAA+gQAAPwEAAD8BAAA/gQAAP4EAAAABQAAAAUAAAIFAAACBQAABAUAAAQFAAAGBQAABgUAAAgFAAAIBQAACgUAAAoFAAAMBQAADAUAAA4FAAAOBQAAEAUAABAFAAASBQAAEgUAABQFAAAUBQAAFgUAABYFAAAYBQAAGAUAABoFAAAaBQAAHAUAABwFAAAeBQAAHgUAACAFAAAgBQAAIgUAACIFAAAkBQAAJAUAACYFAAAmBQAAKAUAACgFAAAqBQAAKgUAACwFAAAsBQAALgUAAC4FAAAxBQAAVgUAAKAQAADFEAAAxxAAAMcQAADNEAAAzRAAAKATAAD1EwAAkBwAALocAAC9HAAAvxwAAAAeAAAAHgAAAh4AAAIeAAAEHgAABB4AAAYeAAAGHgAACB4AAAgeAAAKHgAACh4AAAweAAAMHgAADh4AAA4eAAAQHgAAEB4AABIeAAASHgAAFB4AABQeAAAWHgAAFh4AABgeAAAYHgAAGh4AABoeAAAcHgAAHB4AAB4eAAAeHgAAIB4AACAeAAAiHgAAIh4AACQeAAAkHgAAJh4AACYeAAAoHgAAKB4AACoeAAAqHgAALB4AACweAAAuHgAALh4AADAeAAAwHgAAMh4AADIeAAA0HgAANB4AADYeAAA2HgAAOB4AADgeAAA6HgAAOh4AADweAAA8HgAAPh4AAD4eAABAHgAAQB4AAEIeAABCHgAARB4AAEQeAABGHgAARh4AAEgeAABIHgAASh4AAEoeAABMHgAATB4AAE4eAABOHgAAUB4AAFAeAABSHgAAUh4AAFQeAABUHgAAVh4AAFYeAABYHgAAWB4AAFoeAABaHgAAXB4AAFweAABeHgAAXh4AAGAeAABgHgAAYh4AAGIeAABkHgAAZB4AAGYeAABmHgAAaB4AAGgeAABqHgAAah4AAGweAABsHgAAbh4AAG4eAABwHgAAcB4AAHIeAAByHgAAdB4AAHQeAAB2HgAAdh4AAHgeAAB4HgAAeh4AAHoeAAB8HgAAfB4AAH4eAAB+HgAAgB4AAIAeAACCHgAAgh4AAIQeAACEHgAAhh4AAIYeAACIHgAAiB4AAIoeAACKHgAAjB4AAIweAACOHgAAjh4AAJAeAACQHgAAkh4AAJIeAACUHgAAlB4AAJ4eAACeHgAAoB4AAKAeAACiHgAAoh4AAKQeAACkHgAAph4AAKYeAACoHgAAqB4AAKoeAACqHgAArB4AAKweAACuHgAArh4AALAeAACwHgAAsh4AALIeAAC0HgAAtB4AALYeAAC2HgAAuB4AALgeAAC6HgAAuh4AALweAAC8HgAAvh4AAL4eAADAHgAAwB4AAMIeAADCHgAAxB4AAMQeAADGHgAAxh4AAMgeAADIHgAAyh4AAMoeAADMHgAAzB4AAM4eAADOHgAA0B4AANAeAADSHgAA0h4AANQeAADUHgAA1h4AANYeAADYHgAA2B4AANoeAADaHgAA3B4AANweAADeHgAA3h4AAOAeAADgHgAA4h4AAOIeAADkHgAA5B4AAOYeAADmHgAA6B4AAOgeAADqHgAA6h4AAOweAADsHgAA7h4AAO4eAADwHgAA8B4AAPIeAADyHgAA9B4AAPQeAAD2HgAA9h4AAPgeAAD4HgAA+h4AAPoeAAD8HgAA/B4AAP4eAAD+HgAACB8AAA8fAAAYHwAAHR8AACgfAAAvHwAAOB8AAD8fAABIHwAATR8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAABfHwAAaB8AAG8fAACIHwAAjx8AAJgfAACfHwAAqB8AAK8fAAC4HwAAvB8AAMgfAADMHwAA2B8AANsfAADoHwAA7B8AAPgfAAD8HwAAJiEAACYhAAAqIQAAKyEAADIhAAAyIQAAYCEAAG8hAACDIQAAgyEAALYkAADPJAAAACwAAC8sAABgLAAAYCwAAGIsAABkLAAAZywAAGcsAABpLAAAaSwAAGssAABrLAAAbSwAAHAsAAByLAAAciwAAHUsAAB1LAAAfiwAAIAsAACCLAAAgiwAAIQsAACELAAAhiwAAIYsAACILAAAiCwAAIosAACKLAAAjCwAAIwsAACOLAAAjiwAAJAsAACQLAAAkiwAAJIsAACULAAAlCwAAJYsAACWLAAAmCwAAJgsAACaLAAAmiwAAJwsAACcLAAAniwAAJ4sAACgLAAAoCwAAKIsAACiLAAApCwAAKQsAACmLAAApiwAAKgsAACoLAAAqiwAAKosAACsLAAArCwAAK4sAACuLAAAsCwAALAsAACyLAAAsiwAALQsAAC0LAAAtiwAALYsAAC4LAAAuCwAALosAAC6LAAAvCwAALwsAAC+LAAAviwAAMAsAADALAAAwiwAAMIsAADELAAAxCwAAMYsAADGLAAAyCwAAMgsAADKLAAAyiwAAMwsAADMLAAAziwAAM4sAADQLAAA0CwAANIsAADSLAAA1CwAANQsAADWLAAA1iwAANgsAADYLAAA2iwAANosAADcLAAA3CwAAN4sAADeLAAA4CwAAOAsAADiLAAA4iwAAOssAADrLAAA7SwAAO0sAADyLAAA8iwAAECmAABApgAAQqYAAEKmAABEpgAARKYAAEamAABGpgAASKYAAEimAABKpgAASqYAAEymAABMpgAATqYAAE6mAABQpgAAUKYAAFKmAABSpgAAVKYAAFSmAABWpgAAVqYAAFimAABYpgAAWqYAAFqmAABcpgAAXKYAAF6mAABepgAAYKYAAGCmAABipgAAYqYAAGSmAABkpgAAZqYAAGamAABopgAAaKYAAGqmAABqpgAAbKYAAGymAACApgAAgKYAAIKmAACCpgAAhKYAAISmAACGpgAAhqYAAIimAACIpgAAiqYAAIqmAACMpgAAjKYAAI6mAACOpgAAkKYAAJCmAACSpgAAkqYAAJSmAACUpgAAlqYAAJamAACYpgAAmKYAAJqmAACapgAAIqcAACKnAAAkpwAAJKcAACanAAAmpwAAKKcAACinAAAqpwAAKqcAACynAAAspwAALqcAAC6nAAAypwAAMqcAADSnAAA0pwAANqcAADanAAA4pwAAOKcAADqnAAA6pwAAPKcAADynAAA+pwAAPqcAAECnAABApwAAQqcAAEKnAABEpwAARKcAAEanAABGpwAASKcAAEinAABKpwAASqcAAEynAABMpwAATqcAAE6nAABQpwAAUKcAAFKnAABSpwAAVKcAAFSnAABWpwAAVqcAAFinAABYpwAAWqcAAFqnAABcpwAAXKcAAF6nAABepwAAYKcAAGCnAABipwAAYqcAAGSnAABkpwAAZqcAAGanAABopwAAaKcAAGqnAABqpwAAbKcAAGynAABupwAAbqcAAHmnAAB5pwAAe6cAAHunAAB9pwAAfqcAAICnAACApwAAgqcAAIKnAACEpwAAhKcAAIanAACGpwAAi6cAAIunAACNpwAAjacAAJCnAACQpwAAkqcAAJKnAACWpwAAlqcAAJinAACYpwAAmqcAAJqnAACcpwAAnKcAAJ6nAACepwAAoKcAAKCnAACipwAAoqcAAKSnAACkpwAApqcAAKanAACopwAAqKcAAKqnAACupwAAsKcAALSnAAC2pwAAtqcAALinAAC4pwAAuqcAALqnAAC8pwAAvKcAAL6nAAC+pwAAwKcAAMCnAADCpwAAwqcAAMSnAADHpwAAyacAAMmnAADQpwAA0KcAANanAADWpwAA2KcAANinAAD1pwAA9acAACH/AAA6/wAAAAQBACcEAQCwBAEA0wQBAHAFAQB6BQEAfAUBAIoFAQCMBQEAkgUBAJQFAQCVBQEAgAwBALIMAQCgGAEAvxgBAEBuAQBfbgEAAOkBACHpAQAAAAAAcgIAAGEAAAB6AAAAtQAAALUAAADfAAAA9gAAAPgAAAD/AAAAAQEAAAEBAAADAQAAAwEAAAUBAAAFAQAABwEAAAcBAAAJAQAACQEAAAsBAAALAQAADQEAAA0BAAAPAQAADwEAABEBAAARAQAAEwEAABMBAAAVAQAAFQEAABcBAAAXAQAAGQEAABkBAAAbAQAAGwEAAB0BAAAdAQAAHwEAAB8BAAAhAQAAIQEAACMBAAAjAQAAJQEAACUBAAAnAQAAJwEAACkBAAApAQAAKwEAACsBAAAtAQAALQEAAC8BAAAvAQAAMQEAADEBAAAzAQAAMwEAADUBAAA1AQAANwEAADcBAAA6AQAAOgEAADwBAAA8AQAAPgEAAD4BAABAAQAAQAEAAEIBAABCAQAARAEAAEQBAABGAQAARgEAAEgBAABJAQAASwEAAEsBAABNAQAATQEAAE8BAABPAQAAUQEAAFEBAABTAQAAUwEAAFUBAABVAQAAVwEAAFcBAABZAQAAWQEAAFsBAABbAQAAXQEAAF0BAABfAQAAXwEAAGEBAABhAQAAYwEAAGMBAABlAQAAZQEAAGcBAABnAQAAaQEAAGkBAABrAQAAawEAAG0BAABtAQAAbwEAAG8BAABxAQAAcQEAAHMBAABzAQAAdQEAAHUBAAB3AQAAdwEAAHoBAAB6AQAAfAEAAHwBAAB+AQAAgAEAAIMBAACDAQAAhQEAAIUBAACIAQAAiAEAAIwBAACMAQAAkgEAAJIBAACVAQAAlQEAAJkBAACaAQAAngEAAJ4BAAChAQAAoQEAAKMBAACjAQAApQEAAKUBAACoAQAAqAEAAK0BAACtAQAAsAEAALABAAC0AQAAtAEAALYBAAC2AQAAuQEAALkBAAC9AQAAvQEAAL8BAAC/AQAAxAEAAMQBAADGAQAAxwEAAMkBAADKAQAAzAEAAMwBAADOAQAAzgEAANABAADQAQAA0gEAANIBAADUAQAA1AEAANYBAADWAQAA2AEAANgBAADaAQAA2gEAANwBAADdAQAA3wEAAN8BAADhAQAA4QEAAOMBAADjAQAA5QEAAOUBAADnAQAA5wEAAOkBAADpAQAA6wEAAOsBAADtAQAA7QEAAO8BAADxAQAA8wEAAPMBAAD1AQAA9QEAAPkBAAD5AQAA+wEAAPsBAAD9AQAA/QEAAP8BAAD/AQAAAQIAAAECAAADAgAAAwIAAAUCAAAFAgAABwIAAAcCAAAJAgAACQIAAAsCAAALAgAADQIAAA0CAAAPAgAADwIAABECAAARAgAAEwIAABMCAAAVAgAAFQIAABcCAAAXAgAAGQIAABkCAAAbAgAAGwIAAB0CAAAdAgAAHwIAAB8CAAAjAgAAIwIAACUCAAAlAgAAJwIAACcCAAApAgAAKQIAACsCAAArAgAALQIAAC0CAAAvAgAALwIAADECAAAxAgAAMwIAADMCAAA8AgAAPAIAAD8CAABAAgAAQgIAAEICAABHAgAARwIAAEkCAABJAgAASwIAAEsCAABNAgAATQIAAE8CAABUAgAAVgIAAFcCAABZAgAAWQIAAFsCAABcAgAAYAIAAGECAABjAgAAYwIAAGUCAABmAgAAaAIAAGwCAABvAgAAbwIAAHECAAByAgAAdQIAAHUCAAB9AgAAfQIAAIACAACAAgAAggIAAIMCAACHAgAAjAIAAJICAACSAgAAnQIAAJ4CAABFAwAARQMAAHEDAABxAwAAcwMAAHMDAAB3AwAAdwMAAHsDAAB9AwAAkAMAAJADAACsAwAAzgMAANADAADRAwAA1QMAANcDAADZAwAA2QMAANsDAADbAwAA3QMAAN0DAADfAwAA3wMAAOEDAADhAwAA4wMAAOMDAADlAwAA5QMAAOcDAADnAwAA6QMAAOkDAADrAwAA6wMAAO0DAADtAwAA7wMAAPMDAAD1AwAA9QMAAPgDAAD4AwAA+wMAAPsDAAAwBAAAXwQAAGEEAABhBAAAYwQAAGMEAABlBAAAZQQAAGcEAABnBAAAaQQAAGkEAABrBAAAawQAAG0EAABtBAAAbwQAAG8EAABxBAAAcQQAAHMEAABzBAAAdQQAAHUEAAB3BAAAdwQAAHkEAAB5BAAAewQAAHsEAAB9BAAAfQQAAH8EAAB/BAAAgQQAAIEEAACLBAAAiwQAAI0EAACNBAAAjwQAAI8EAACRBAAAkQQAAJMEAACTBAAAlQQAAJUEAACXBAAAlwQAAJkEAACZBAAAmwQAAJsEAACdBAAAnQQAAJ8EAACfBAAAoQQAAKEEAACjBAAAowQAAKUEAAClBAAApwQAAKcEAACpBAAAqQQAAKsEAACrBAAArQQAAK0EAACvBAAArwQAALEEAACxBAAAswQAALMEAAC1BAAAtQQAALcEAAC3BAAAuQQAALkEAAC7BAAAuwQAAL0EAAC9BAAAvwQAAL8EAADCBAAAwgQAAMQEAADEBAAAxgQAAMYEAADIBAAAyAQAAMoEAADKBAAAzAQAAMwEAADOBAAAzwQAANEEAADRBAAA0wQAANMEAADVBAAA1QQAANcEAADXBAAA2QQAANkEAADbBAAA2wQAAN0EAADdBAAA3wQAAN8EAADhBAAA4QQAAOMEAADjBAAA5QQAAOUEAADnBAAA5wQAAOkEAADpBAAA6wQAAOsEAADtBAAA7QQAAO8EAADvBAAA8QQAAPEEAADzBAAA8wQAAPUEAAD1BAAA9wQAAPcEAAD5BAAA+QQAAPsEAAD7BAAA/QQAAP0EAAD/BAAA/wQAAAEFAAABBQAAAwUAAAMFAAAFBQAABQUAAAcFAAAHBQAACQUAAAkFAAALBQAACwUAAA0FAAANBQAADwUAAA8FAAARBQAAEQUAABMFAAATBQAAFQUAABUFAAAXBQAAFwUAABkFAAAZBQAAGwUAABsFAAAdBQAAHQUAAB8FAAAfBQAAIQUAACEFAAAjBQAAIwUAACUFAAAlBQAAJwUAACcFAAApBQAAKQUAACsFAAArBQAALQUAAC0FAAAvBQAALwUAAGEFAACHBQAA+BMAAP0TAACAHAAAiBwAAHkdAAB5HQAAfR0AAH0dAACOHQAAjh0AAAEeAAABHgAAAx4AAAMeAAAFHgAABR4AAAceAAAHHgAACR4AAAkeAAALHgAACx4AAA0eAAANHgAADx4AAA8eAAARHgAAER4AABMeAAATHgAAFR4AABUeAAAXHgAAFx4AABkeAAAZHgAAGx4AABseAAAdHgAAHR4AAB8eAAAfHgAAIR4AACEeAAAjHgAAIx4AACUeAAAlHgAAJx4AACceAAApHgAAKR4AACseAAArHgAALR4AAC0eAAAvHgAALx4AADEeAAAxHgAAMx4AADMeAAA1HgAANR4AADceAAA3HgAAOR4AADkeAAA7HgAAOx4AAD0eAAA9HgAAPx4AAD8eAABBHgAAQR4AAEMeAABDHgAARR4AAEUeAABHHgAARx4AAEkeAABJHgAASx4AAEseAABNHgAATR4AAE8eAABPHgAAUR4AAFEeAABTHgAAUx4AAFUeAABVHgAAVx4AAFceAABZHgAAWR4AAFseAABbHgAAXR4AAF0eAABfHgAAXx4AAGEeAABhHgAAYx4AAGMeAABlHgAAZR4AAGceAABnHgAAaR4AAGkeAABrHgAAax4AAG0eAABtHgAAbx4AAG8eAABxHgAAcR4AAHMeAABzHgAAdR4AAHUeAAB3HgAAdx4AAHkeAAB5HgAAex4AAHseAAB9HgAAfR4AAH8eAAB/HgAAgR4AAIEeAACDHgAAgx4AAIUeAACFHgAAhx4AAIceAACJHgAAiR4AAIseAACLHgAAjR4AAI0eAACPHgAAjx4AAJEeAACRHgAAkx4AAJMeAACVHgAAmx4AAKEeAAChHgAAox4AAKMeAAClHgAApR4AAKceAACnHgAAqR4AAKkeAACrHgAAqx4AAK0eAACtHgAArx4AAK8eAACxHgAAsR4AALMeAACzHgAAtR4AALUeAAC3HgAAtx4AALkeAAC5HgAAux4AALseAAC9HgAAvR4AAL8eAAC/HgAAwR4AAMEeAADDHgAAwx4AAMUeAADFHgAAxx4AAMceAADJHgAAyR4AAMseAADLHgAAzR4AAM0eAADPHgAAzx4AANEeAADRHgAA0x4AANMeAADVHgAA1R4AANceAADXHgAA2R4AANkeAADbHgAA2x4AAN0eAADdHgAA3x4AAN8eAADhHgAA4R4AAOMeAADjHgAA5R4AAOUeAADnHgAA5x4AAOkeAADpHgAA6x4AAOseAADtHgAA7R4AAO8eAADvHgAA8R4AAPEeAADzHgAA8x4AAPUeAAD1HgAA9x4AAPceAAD5HgAA+R4AAPseAAD7HgAA/R4AAP0eAAD/HgAABx8AABAfAAAVHwAAIB8AACcfAAAwHwAANx8AAEAfAABFHwAAUB8AAFcfAABgHwAAZx8AAHAfAAB9HwAAgB8AAIcfAACQHwAAlx8AAKAfAACnHwAAsB8AALQfAAC2HwAAtx8AAL4fAAC+HwAAwh8AAMQfAADGHwAAxx8AANAfAADTHwAA1h8AANcfAADgHwAA5x8AAPIfAAD0HwAA9h8AAPcfAABOIQAATiEAAHAhAAB/IQAAhCEAAIQhAADQJAAA6SQAADAsAABfLAAAYSwAAGEsAABlLAAAZiwAAGgsAABoLAAAaiwAAGosAABsLAAAbCwAAHMsAABzLAAAdiwAAHYsAACBLAAAgSwAAIMsAACDLAAAhSwAAIUsAACHLAAAhywAAIksAACJLAAAiywAAIssAACNLAAAjSwAAI8sAACPLAAAkSwAAJEsAACTLAAAkywAAJUsAACVLAAAlywAAJcsAACZLAAAmSwAAJssAACbLAAAnSwAAJ0sAACfLAAAnywAAKEsAAChLAAAoywAAKMsAAClLAAApSwAAKcsAACnLAAAqSwAAKksAACrLAAAqywAAK0sAACtLAAArywAAK8sAACxLAAAsSwAALMsAACzLAAAtSwAALUsAAC3LAAAtywAALksAAC5LAAAuywAALssAAC9LAAAvSwAAL8sAAC/LAAAwSwAAMEsAADDLAAAwywAAMUsAADFLAAAxywAAMcsAADJLAAAySwAAMssAADLLAAAzSwAAM0sAADPLAAAzywAANEsAADRLAAA0ywAANMsAADVLAAA1SwAANcsAADXLAAA2SwAANksAADbLAAA2ywAAN0sAADdLAAA3ywAAN8sAADhLAAA4SwAAOMsAADjLAAA7CwAAOwsAADuLAAA7iwAAPMsAADzLAAAAC0AACUtAAAnLQAAJy0AAC0tAAAtLQAAQaYAAEGmAABDpgAAQ6YAAEWmAABFpgAAR6YAAEemAABJpgAASaYAAEumAABLpgAATaYAAE2mAABPpgAAT6YAAFGmAABRpgAAU6YAAFOmAABVpgAAVaYAAFemAABXpgAAWaYAAFmmAABbpgAAW6YAAF2mAABdpgAAX6YAAF+mAABhpgAAYaYAAGOmAABjpgAAZaYAAGWmAABnpgAAZ6YAAGmmAABppgAAa6YAAGumAABtpgAAbaYAAIGmAACBpgAAg6YAAIOmAACFpgAAhaYAAIemAACHpgAAiaYAAImmAACLpgAAi6YAAI2mAACNpgAAj6YAAI+mAACRpgAAkaYAAJOmAACTpgAAlaYAAJWmAACXpgAAl6YAAJmmAACZpgAAm6YAAJumAAAjpwAAI6cAACWnAAAlpwAAJ6cAACenAAAppwAAKacAACunAAArpwAALacAAC2nAAAvpwAAL6cAADOnAAAzpwAANacAADWnAAA3pwAAN6cAADmnAAA5pwAAO6cAADunAAA9pwAAPacAAD+nAAA/pwAAQacAAEGnAABDpwAAQ6cAAEWnAABFpwAAR6cAAEenAABJpwAASacAAEunAABLpwAATacAAE2nAABPpwAAT6cAAFGnAABRpwAAU6cAAFOnAABVpwAAVacAAFenAABXpwAAWacAAFmnAABbpwAAW6cAAF2nAABdpwAAX6cAAF+nAABhpwAAYacAAGOnAABjpwAAZacAAGWnAABnpwAAZ6cAAGmnAABppwAAa6cAAGunAABtpwAAbacAAG+nAABvpwAAeqcAAHqnAAB8pwAAfKcAAH+nAAB/pwAAgacAAIGnAACDpwAAg6cAAIWnAACFpwAAh6cAAIenAACMpwAAjKcAAJGnAACRpwAAk6cAAJSnAACXpwAAl6cAAJmnAACZpwAAm6cAAJunAACdpwAAnacAAJ+nAACfpwAAoacAAKGnAACjpwAAo6cAAKWnAAClpwAAp6cAAKenAACppwAAqacAALWnAAC1pwAAt6cAALenAAC5pwAAuacAALunAAC7pwAAvacAAL2nAAC/pwAAv6cAAMGnAADBpwAAw6cAAMOnAADIpwAAyKcAAMqnAADKpwAA0acAANGnAADXpwAA16cAANmnAADZpwAA9qcAAPanAABTqwAAU6sAAHCrAAC/qwAAAPsAAAb7AAAT+wAAF/sAAEH/AABa/wAAKAQBAE8EAQDYBAEA+wQBAJcFAQChBQEAowUBALEFAQCzBQEAuQUBALsFAQC8BQEAwAwBAPIMAQDAGAEA3xgBAGBuAQB/bgEAIukBAEPpAQBBoOQGC8cncwIAAGEAAAB6AAAAtQAAALUAAADfAAAA9gAAAPgAAAD/AAAAAQEAAAEBAAADAQAAAwEAAAUBAAAFAQAABwEAAAcBAAAJAQAACQEAAAsBAAALAQAADQEAAA0BAAAPAQAADwEAABEBAAARAQAAEwEAABMBAAAVAQAAFQEAABcBAAAXAQAAGQEAABkBAAAbAQAAGwEAAB0BAAAdAQAAHwEAAB8BAAAhAQAAIQEAACMBAAAjAQAAJQEAACUBAAAnAQAAJwEAACkBAAApAQAAKwEAACsBAAAtAQAALQEAAC8BAAAvAQAAMQEAADEBAAAzAQAAMwEAADUBAAA1AQAANwEAADcBAAA6AQAAOgEAADwBAAA8AQAAPgEAAD4BAABAAQAAQAEAAEIBAABCAQAARAEAAEQBAABGAQAARgEAAEgBAABJAQAASwEAAEsBAABNAQAATQEAAE8BAABPAQAAUQEAAFEBAABTAQAAUwEAAFUBAABVAQAAVwEAAFcBAABZAQAAWQEAAFsBAABbAQAAXQEAAF0BAABfAQAAXwEAAGEBAABhAQAAYwEAAGMBAABlAQAAZQEAAGcBAABnAQAAaQEAAGkBAABrAQAAawEAAG0BAABtAQAAbwEAAG8BAABxAQAAcQEAAHMBAABzAQAAdQEAAHUBAAB3AQAAdwEAAHoBAAB6AQAAfAEAAHwBAAB+AQAAgAEAAIMBAACDAQAAhQEAAIUBAACIAQAAiAEAAIwBAACMAQAAkgEAAJIBAACVAQAAlQEAAJkBAACaAQAAngEAAJ4BAAChAQAAoQEAAKMBAACjAQAApQEAAKUBAACoAQAAqAEAAK0BAACtAQAAsAEAALABAAC0AQAAtAEAALYBAAC2AQAAuQEAALkBAAC9AQAAvQEAAL8BAAC/AQAAxQEAAMYBAADIAQAAyQEAAMsBAADMAQAAzgEAAM4BAADQAQAA0AEAANIBAADSAQAA1AEAANQBAADWAQAA1gEAANgBAADYAQAA2gEAANoBAADcAQAA3QEAAN8BAADfAQAA4QEAAOEBAADjAQAA4wEAAOUBAADlAQAA5wEAAOcBAADpAQAA6QEAAOsBAADrAQAA7QEAAO0BAADvAQAA8AEAAPIBAADzAQAA9QEAAPUBAAD5AQAA+QEAAPsBAAD7AQAA/QEAAP0BAAD/AQAA/wEAAAECAAABAgAAAwIAAAMCAAAFAgAABQIAAAcCAAAHAgAACQIAAAkCAAALAgAACwIAAA0CAAANAgAADwIAAA8CAAARAgAAEQIAABMCAAATAgAAFQIAABUCAAAXAgAAFwIAABkCAAAZAgAAGwIAABsCAAAdAgAAHQIAAB8CAAAfAgAAIwIAACMCAAAlAgAAJQIAACcCAAAnAgAAKQIAACkCAAArAgAAKwIAAC0CAAAtAgAALwIAAC8CAAAxAgAAMQIAADMCAAAzAgAAPAIAADwCAAA/AgAAQAIAAEICAABCAgAARwIAAEcCAABJAgAASQIAAEsCAABLAgAATQIAAE0CAABPAgAAVAIAAFYCAABXAgAAWQIAAFkCAABbAgAAXAIAAGACAABhAgAAYwIAAGMCAABlAgAAZgIAAGgCAABsAgAAbwIAAG8CAABxAgAAcgIAAHUCAAB1AgAAfQIAAH0CAACAAgAAgAIAAIICAACDAgAAhwIAAIwCAACSAgAAkgIAAJ0CAACeAgAARQMAAEUDAABxAwAAcQMAAHMDAABzAwAAdwMAAHcDAAB7AwAAfQMAAJADAACQAwAArAMAAM4DAADQAwAA0QMAANUDAADXAwAA2QMAANkDAADbAwAA2wMAAN0DAADdAwAA3wMAAN8DAADhAwAA4QMAAOMDAADjAwAA5QMAAOUDAADnAwAA5wMAAOkDAADpAwAA6wMAAOsDAADtAwAA7QMAAO8DAADzAwAA9QMAAPUDAAD4AwAA+AMAAPsDAAD7AwAAMAQAAF8EAABhBAAAYQQAAGMEAABjBAAAZQQAAGUEAABnBAAAZwQAAGkEAABpBAAAawQAAGsEAABtBAAAbQQAAG8EAABvBAAAcQQAAHEEAABzBAAAcwQAAHUEAAB1BAAAdwQAAHcEAAB5BAAAeQQAAHsEAAB7BAAAfQQAAH0EAAB/BAAAfwQAAIEEAACBBAAAiwQAAIsEAACNBAAAjQQAAI8EAACPBAAAkQQAAJEEAACTBAAAkwQAAJUEAACVBAAAlwQAAJcEAACZBAAAmQQAAJsEAACbBAAAnQQAAJ0EAACfBAAAnwQAAKEEAAChBAAAowQAAKMEAAClBAAApQQAAKcEAACnBAAAqQQAAKkEAACrBAAAqwQAAK0EAACtBAAArwQAAK8EAACxBAAAsQQAALMEAACzBAAAtQQAALUEAAC3BAAAtwQAALkEAAC5BAAAuwQAALsEAAC9BAAAvQQAAL8EAAC/BAAAwgQAAMIEAADEBAAAxAQAAMYEAADGBAAAyAQAAMgEAADKBAAAygQAAMwEAADMBAAAzgQAAM8EAADRBAAA0QQAANMEAADTBAAA1QQAANUEAADXBAAA1wQAANkEAADZBAAA2wQAANsEAADdBAAA3QQAAN8EAADfBAAA4QQAAOEEAADjBAAA4wQAAOUEAADlBAAA5wQAAOcEAADpBAAA6QQAAOsEAADrBAAA7QQAAO0EAADvBAAA7wQAAPEEAADxBAAA8wQAAPMEAAD1BAAA9QQAAPcEAAD3BAAA+QQAAPkEAAD7BAAA+wQAAP0EAAD9BAAA/wQAAP8EAAABBQAAAQUAAAMFAAADBQAABQUAAAUFAAAHBQAABwUAAAkFAAAJBQAACwUAAAsFAAANBQAADQUAAA8FAAAPBQAAEQUAABEFAAATBQAAEwUAABUFAAAVBQAAFwUAABcFAAAZBQAAGQUAABsFAAAbBQAAHQUAAB0FAAAfBQAAHwUAACEFAAAhBQAAIwUAACMFAAAlBQAAJQUAACcFAAAnBQAAKQUAACkFAAArBQAAKwUAAC0FAAAtBQAALwUAAC8FAABhBQAAhwUAANAQAAD6EAAA/RAAAP8QAAD4EwAA/RMAAIAcAACIHAAAeR0AAHkdAAB9HQAAfR0AAI4dAACOHQAAAR4AAAEeAAADHgAAAx4AAAUeAAAFHgAABx4AAAceAAAJHgAACR4AAAseAAALHgAADR4AAA0eAAAPHgAADx4AABEeAAARHgAAEx4AABMeAAAVHgAAFR4AABceAAAXHgAAGR4AABkeAAAbHgAAGx4AAB0eAAAdHgAAHx4AAB8eAAAhHgAAIR4AACMeAAAjHgAAJR4AACUeAAAnHgAAJx4AACkeAAApHgAAKx4AACseAAAtHgAALR4AAC8eAAAvHgAAMR4AADEeAAAzHgAAMx4AADUeAAA1HgAANx4AADceAAA5HgAAOR4AADseAAA7HgAAPR4AAD0eAAA/HgAAPx4AAEEeAABBHgAAQx4AAEMeAABFHgAARR4AAEceAABHHgAASR4AAEkeAABLHgAASx4AAE0eAABNHgAATx4AAE8eAABRHgAAUR4AAFMeAABTHgAAVR4AAFUeAABXHgAAVx4AAFkeAABZHgAAWx4AAFseAABdHgAAXR4AAF8eAABfHgAAYR4AAGEeAABjHgAAYx4AAGUeAABlHgAAZx4AAGceAABpHgAAaR4AAGseAABrHgAAbR4AAG0eAABvHgAAbx4AAHEeAABxHgAAcx4AAHMeAAB1HgAAdR4AAHceAAB3HgAAeR4AAHkeAAB7HgAAex4AAH0eAAB9HgAAfx4AAH8eAACBHgAAgR4AAIMeAACDHgAAhR4AAIUeAACHHgAAhx4AAIkeAACJHgAAix4AAIseAACNHgAAjR4AAI8eAACPHgAAkR4AAJEeAACTHgAAkx4AAJUeAACbHgAAoR4AAKEeAACjHgAAox4AAKUeAAClHgAApx4AAKceAACpHgAAqR4AAKseAACrHgAArR4AAK0eAACvHgAArx4AALEeAACxHgAAsx4AALMeAAC1HgAAtR4AALceAAC3HgAAuR4AALkeAAC7HgAAux4AAL0eAAC9HgAAvx4AAL8eAADBHgAAwR4AAMMeAADDHgAAxR4AAMUeAADHHgAAxx4AAMkeAADJHgAAyx4AAMseAADNHgAAzR4AAM8eAADPHgAA0R4AANEeAADTHgAA0x4AANUeAADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAtB8AALYfAAC3HwAAvB8AALwfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADMHwAAzB8AANAfAADTHwAA1h8AANcfAADgHwAA5x8AAPIfAAD0HwAA9h8AAPcfAAD8HwAA/B8AAE4hAABOIQAAcCEAAH8hAACEIQAAhCEAANAkAADpJAAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcywAAHMsAAB2LAAAdiwAAIEsAACBLAAAgywAAIMsAACFLAAAhSwAAIcsAACHLAAAiSwAAIksAACLLAAAiywAAI0sAACNLAAAjywAAI8sAACRLAAAkSwAAJMsAACTLAAAlSwAAJUsAACXLAAAlywAAJksAACZLAAAmywAAJssAACdLAAAnSwAAJ8sAACfLAAAoSwAAKEsAACjLAAAoywAAKUsAAClLAAApywAAKcsAACpLAAAqSwAAKssAACrLAAArSwAAK0sAACvLAAArywAALEsAACxLAAAsywAALMsAAC1LAAAtSwAALcsAAC3LAAAuSwAALksAAC7LAAAuywAAL0sAAC9LAAAvywAAL8sAADBLAAAwSwAAMMsAADDLAAAxSwAAMUsAADHLAAAxywAAMksAADJLAAAyywAAMssAADNLAAAzSwAAM8sAADPLAAA0SwAANEsAADTLAAA0ywAANUsAADVLAAA1ywAANcsAADZLAAA2SwAANssAADbLAAA3SwAAN0sAADfLAAA3ywAAOEsAADhLAAA4ywAAOMsAADsLAAA7CwAAO4sAADuLAAA8ywAAPMsAAAALQAAJS0AACctAAAnLQAALS0AAC0tAABBpgAAQaYAAEOmAABDpgAARaYAAEWmAABHpgAAR6YAAEmmAABJpgAAS6YAAEumAABNpgAATaYAAE+mAABPpgAAUaYAAFGmAABTpgAAU6YAAFWmAABVpgAAV6YAAFemAABZpgAAWaYAAFumAABbpgAAXaYAAF2mAABfpgAAX6YAAGGmAABhpgAAY6YAAGOmAABlpgAAZaYAAGemAABnpgAAaaYAAGmmAABrpgAAa6YAAG2mAABtpgAAgaYAAIGmAACDpgAAg6YAAIWmAACFpgAAh6YAAIemAACJpgAAiaYAAIumAACLpgAAjaYAAI2mAACPpgAAj6YAAJGmAACRpgAAk6YAAJOmAACVpgAAlaYAAJemAACXpgAAmaYAAJmmAACbpgAAm6YAACOnAAAjpwAAJacAACWnAAAnpwAAJ6cAACmnAAAppwAAK6cAACunAAAtpwAALacAAC+nAAAvpwAAM6cAADOnAAA1pwAANacAADenAAA3pwAAOacAADmnAAA7pwAAO6cAAD2nAAA9pwAAP6cAAD+nAABBpwAAQacAAEOnAABDpwAARacAAEWnAABHpwAAR6cAAEmnAABJpwAAS6cAAEunAABNpwAATacAAE+nAABPpwAAUacAAFGnAABTpwAAU6cAAFWnAABVpwAAV6cAAFenAABZpwAAWacAAFunAABbpwAAXacAAF2nAABfpwAAX6cAAGGnAABhpwAAY6cAAGOnAABlpwAAZacAAGenAABnpwAAaacAAGmnAABrpwAAa6cAAG2nAABtpwAAb6cAAG+nAAB6pwAAeqcAAHynAAB8pwAAf6cAAH+nAACBpwAAgacAAIOnAACDpwAAhacAAIWnAACHpwAAh6cAAIynAACMpwAAkacAAJGnAACTpwAAlKcAAJenAACXpwAAmacAAJmnAACbpwAAm6cAAJ2nAACdpwAAn6cAAJ+nAAChpwAAoacAAKOnAACjpwAApacAAKWnAACnpwAAp6cAAKmnAACppwAAtacAALWnAAC3pwAAt6cAALmnAAC5pwAAu6cAALunAAC9pwAAvacAAL+nAAC/pwAAwacAAMGnAADDpwAAw6cAAMinAADIpwAAyqcAAMqnAADRpwAA0acAANenAADXpwAA2acAANmnAAD2pwAA9qcAAFOrAABTqwAAcKsAAL+rAAAA+wAABvsAABP7AAAX+wAAQf8AAFr/AAAoBAEATwQBANgEAQD7BAEAlwUBAKEFAQCjBQEAsQUBALMFAQC5BQEAuwUBALwFAQDADAEA8gwBAMAYAQDfGAEAYG4BAH9uAQAi6QEAQ+kBAAAAAAADAAAAoBMAAPUTAAD4EwAA/RMAAHCrAAC/qwAAAQAAALAPAQDLDwEAQfCLBwvTK7oCAAB4AwAAeQMAAIADAACDAwAAiwMAAIsDAACNAwAAjQMAAKIDAACiAwAAMAUAADAFAABXBQAAWAUAAIsFAACMBQAAkAUAAJAFAADIBQAAzwUAAOsFAADuBQAA9QUAAP8FAAAOBwAADgcAAEsHAABMBwAAsgcAAL8HAAD7BwAA/AcAAC4IAAAvCAAAPwgAAD8IAABcCAAAXQgAAF8IAABfCAAA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CQAAggkAAIMJAACFCQAAjAkAAI8JAACQCQAAkwkAAKgJAACqCQAAsAkAALIJAACyCQAAtgkAALkJAAC9CQAAvQkAAL8JAADACQAAxwkAAMgJAADLCQAAzAkAAM4JAADOCQAA3AkAAN0JAADfCQAA4QkAAOYJAAD9CQAAAwoAAAMKAAAFCgAACgoAAA8KAAAQCgAAEwoAACgKAAAqCgAAMAoAADIKAAAzCgAANQoAADYKAAA4CgAAOQoAAD4KAABACgAAWQoAAFwKAABeCgAAXgoAAGYKAABvCgAAcgoAAHQKAAB2CgAAdgoAAIMKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvQoAAMAKAADJCgAAyQoAAMsKAADMCgAA0AoAANAKAADgCgAA4QoAAOYKAADxCgAA+QoAAPkKAAACCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAAD0LAAA9CwAAQAsAAEALAABHCwAASAsAAEsLAABMCwAAXAsAAF0LAABfCwAAYQsAAGYLAAB3CwAAgwsAAIMLAACFCwAAigsAAI4LAACQCwAAkgsAAJULAACZCwAAmgsAAJwLAACcCwAAngsAAJ8LAACjCwAApAsAAKgLAACqCwAArgsAALkLAAC/CwAAvwsAAMELAADCCwAAxgsAAMgLAADKCwAAzAsAANALAADQCwAA5gsAAPoLAAABDAAAAwwAAAUMAAAMDAAADgwAABAMAAASDAAAKAwAACoMAAA5DAAAPQwAAD0MAABBDAAARAwAAFgMAABaDAAAXQwAAF0MAABgDAAAYQwAAGYMAABvDAAAdwwAAIAMAACCDAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvQwAAL4MAADADAAAwQwAAMMMAADEDAAAxwwAAMgMAADKDAAAywwAAN0MAADeDAAA4AwAAOEMAADmDAAA7wwAAPEMAADyDAAAAg0AAAwNAAAODQAAEA0AABINAAA6DQAAPQ0AAD0NAAA/DQAAQA0AAEYNAABIDQAASg0AAEwNAABODQAATw0AAFQNAABWDQAAWA0AAGENAABmDQAAfw0AAIINAACDDQAAhQ0AAJYNAACaDQAAsQ0AALMNAAC7DQAAvQ0AAL0NAADADQAAxg0AANANAADRDQAA2A0AAN4NAADmDQAA7w0AAPINAAD0DQAAAQ4AADAOAAAyDgAAMw4AAD8OAABGDgAATw4AAFsOAACBDgAAgg4AAIQOAACEDgAAhg4AAIoOAACMDgAAow4AAKUOAAClDgAApw4AALAOAACyDgAAsw4AAL0OAAC9DgAAwA4AAMQOAADGDgAAxg4AANAOAADZDgAA3A4AAN8OAAAADwAAFw8AABoPAAA0DwAANg8AADYPAAA4DwAAOA8AADoPAABHDwAASQ8AAGwPAAB/DwAAfw8AAIUPAACFDwAAiA8AAIwPAAC+DwAAxQ8AAMcPAADMDwAAzg8AANoPAAAAEAAALBAAADEQAAAxEAAAOBAAADgQAAA7EAAAPBAAAD8QAABXEAAAWhAAAF0QAABhEAAAcBAAAHUQAACBEAAAgxAAAIQQAACHEAAAjBAAAI4QAACcEAAAnhAAAMUQAADHEAAAxxAAAM0QAADNEAAA0BAAAEgSAABKEgAATRIAAFASAABWEgAAWBIAAFgSAABaEgAAXRIAAGASAACIEgAAihIAAI0SAACQEgAAsBIAALISAAC1EgAAuBIAAL4SAADAEgAAwBIAAMISAADFEgAAyBIAANYSAADYEgAAEBMAABITAAAVEwAAGBMAAFoTAABgEwAAfBMAAIATAACZEwAAoBMAAPUTAAD4EwAA/RMAAAAUAACcFgAAoBYAAPgWAAAAFwAAERcAABUXAAAVFwAAHxcAADEXAAA0FwAANhcAAEAXAABRFwAAYBcAAGwXAABuFwAAcBcAAIAXAACzFwAAthcAALYXAAC+FwAAxRcAAMcXAADIFwAA1BcAANwXAADgFwAA6RcAAPAXAAD5FwAAABgAAAoYAAAQGAAAGRgAACAYAAB4GAAAgBgAAIQYAACHGAAAqBgAAKoYAACqGAAAsBgAAPUYAAAAGQAAHhkAACMZAAAmGQAAKRkAACsZAAAwGQAAMRkAADMZAAA4GQAAQBkAAEAZAABEGQAAbRkAAHAZAAB0GQAAgBkAAKsZAACwGQAAyRkAANAZAADaGQAA3hkAABYaAAAZGgAAGhoAAB4aAABVGgAAVxoAAFcaAABhGgAAYRoAAGMaAABkGgAAbRoAAHIaAACAGgAAiRoAAJAaAACZGgAAoBoAAK0aAAAEGwAAMxsAADsbAAA7GwAAPRsAAEEbAABDGwAATBsAAFAbAABqGwAAdBsAAH4bAACCGwAAoRsAAKYbAACnGwAAqhsAAKobAACuGwAA5RsAAOcbAADnGwAA6hsAAOwbAADuGwAA7hsAAPIbAADzGwAA/BsAACscAAA0HAAANRwAADscAABJHAAATRwAAIgcAACQHAAAuhwAAL0cAADHHAAA0xwAANMcAADhHAAA4RwAAOkcAADsHAAA7hwAAPMcAAD1HAAA9xwAAPocAAD6HAAAAB0AAL8dAAAAHgAAFR8AABgfAAAdHwAAIB8AAEUfAABIHwAATR8AAFAfAABXHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAH0fAACAHwAAtB8AALYfAADEHwAAxh8AANMfAADWHwAA2x8AAN0fAADvHwAA8h8AAPQfAAD2HwAA/h8AAAAgAAAKIAAAECAAACcgAAAvIAAAXyAAAHAgAABxIAAAdCAAAI4gAACQIAAAnCAAAKAgAADAIAAAACEAAIshAACQIQAAJiQAAEAkAABKJAAAYCQAAHMrAAB2KwAAlSsAAJcrAADuLAAA8iwAAPMsAAD5LAAAJS0AACctAAAnLQAALS0AAC0tAAAwLQAAZy0AAG8tAABwLQAAgC0AAJYtAACgLQAApi0AAKgtAACuLQAAsC0AALYtAAC4LQAAvi0AAMAtAADGLQAAyC0AAM4tAADQLQAA1i0AANgtAADeLQAAAC4AAF0uAACALgAAmS4AAJsuAADzLgAAAC8AANUvAADwLwAA+y8AAAAwAAApMAAAMDAAAD8wAABBMAAAljAAAJswAAD/MAAABTEAAC8xAAAxMQAAjjEAAJAxAADjMQAA8DEAAB4yAAAgMgAAjKQAAJCkAADGpAAA0KQAACumAABApgAAbqYAAHOmAABzpgAAfqYAAJ2mAACgpgAA76YAAPKmAAD3pgAAAKcAAMqnAADQpwAA0acAANOnAADTpwAA1acAANmnAADypwAAAagAAAOoAAAFqAAAB6gAAAqoAAAMqAAAJKgAACeoAAArqAAAMKgAADmoAABAqAAAd6gAAICoAADDqAAAzqgAANmoAADyqAAA/qgAAACpAAAlqQAALqkAAEapAABSqQAAU6kAAF+pAAB8qQAAg6kAALKpAAC0qQAAtakAALqpAAC7qQAAvqkAAM2pAADPqQAA2akAAN6pAADkqQAA5qkAAP6pAAAAqgAAKKoAAC+qAAAwqgAAM6oAADSqAABAqgAAQqoAAESqAABLqgAATaoAAE2qAABQqgAAWaoAAFyqAAB7qgAAfaoAAK+qAACxqgAAsaoAALWqAAC2qgAAuaoAAL2qAADAqgAAwKoAAMKqAADCqgAA26oAAOuqAADuqgAA9aoAAAGrAAAGqwAACasAAA6rAAARqwAAFqsAACCrAAAmqwAAKKsAAC6rAAAwqwAAa6sAAHCrAADkqwAA5qsAAOerAADpqwAA7KsAAPCrAAD5qwAAAKwAAKPXAACw1wAAxtcAAMvXAAD71wAAAPkAAG36AABw+gAA2foAAAD7AAAG+wAAE/sAABf7AAAd+wAAHfsAAB/7AAA2+wAAOPsAADz7AAA++wAAPvsAAED7AABB+wAAQ/sAAET7AABG+wAAwvsAANP7AACP/QAAkv0AAMf9AADP/QAAz/0AAPD9AAD//QAAEP4AABn+AAAw/gAAUv4AAFT+AABm/gAAaP4AAGv+AABw/gAAdP4AAHb+AAD8/gAAAf8AAJ3/AACg/wAAvv8AAML/AADH/wAAyv8AAM//AADS/wAA1/8AANr/AADc/wAA4P8AAOb/AADo/wAA7v8AAPz/AAD9/wAAAAABAAsAAQANAAEAJgABACgAAQA6AAEAPAABAD0AAQA/AAEATQABAFAAAQBdAAEAgAABAPoAAQAAAQEAAgEBAAcBAQAzAQEANwEBAI4BAQCQAQEAnAEBAKABAQCgAQEA0AEBAPwBAQCAAgEAnAIBAKACAQDQAgEA4QIBAPsCAQAAAwEAIwMBAC0DAQBKAwEAUAMBAHUDAQCAAwEAnQMBAJ8DAQDDAwEAyAMBANUDAQAABAEAnQQBAKAEAQCpBAEAsAQBANMEAQDYBAEA+wQBAAAFAQAnBQEAMAUBAGMFAQBvBQEAegUBAHwFAQCKBQEAjAUBAJIFAQCUBQEAlQUBAJcFAQChBQEAowUBALEFAQCzBQEAuQUBALsFAQC8BQEAAAYBADYHAQBABwEAVQcBAGAHAQBnBwEAgAcBAIUHAQCHBwEAsAcBALIHAQC6BwEAAAgBAAUIAQAICAEACAgBAAoIAQA1CAEANwgBADgIAQA8CAEAPAgBAD8IAQBVCAEAVwgBAJ4IAQCnCAEArwgBAOAIAQDyCAEA9AgBAPUIAQD7CAEAGwkBAB8JAQA5CQEAPwkBAD8JAQCACQEAtwkBALwJAQDPCQEA0gkBAAAKAQAQCgEAEwoBABUKAQAXCgEAGQoBADUKAQBACgEASAoBAFAKAQBYCgEAYAoBAJ8KAQDACgEA5AoBAOsKAQD2CgEAAAsBADULAQA5CwEAVQsBAFgLAQByCwEAeAsBAJELAQCZCwEAnAsBAKkLAQCvCwEAAAwBAEgMAQCADAEAsgwBAMAMAQDyDAEA+gwBACMNAQAwDQEAOQ0BAGAOAQB+DgEAgA4BAKkOAQCtDgEArQ4BALAOAQCxDgEAAA8BACcPAQAwDwEARQ8BAFEPAQBZDwEAcA8BAIEPAQCGDwEAiQ8BALAPAQDLDwEA4A8BAPYPAQAAEAEAABABAAIQAQA3EAEARxABAE0QAQBSEAEAbxABAHEQAQByEAEAdRABAHUQAQCCEAEAshABALcQAQC4EAEAuxABALwQAQC+EAEAwRABANAQAQDoEAEA8BABAPkQAQADEQEAJhEBACwRAQAsEQEANhEBAEcRAQBQEQEAchEBAHQRAQB2EQEAghEBALURAQC/EQEAyBEBAM0RAQDOEQEA0BEBAN8RAQDhEQEA9BEBAAASAQAREgEAExIBAC4SAQAyEgEAMxIBADUSAQA1EgEAOBIBAD0SAQCAEgEAhhIBAIgSAQCIEgEAihIBAI0SAQCPEgEAnRIBAJ8SAQCpEgEAsBIBAN4SAQDgEgEA4hIBAPASAQD5EgEAAhMBAAMTAQAFEwEADBMBAA8TAQAQEwEAExMBACgTAQAqEwEAMBMBADITAQAzEwEANRMBADkTAQA9EwEAPRMBAD8TAQA/EwEAQRMBAEQTAQBHEwEASBMBAEsTAQBNEwEAUBMBAFATAQBdEwEAYxMBAAAUAQA3FAEAQBQBAEEUAQBFFAEARRQBAEcUAQBbFAEAXRQBAF0UAQBfFAEAYRQBAIAUAQCvFAEAsRQBALIUAQC5FAEAuRQBALsUAQC8FAEAvhQBAL4UAQDBFAEAwRQBAMQUAQDHFAEA0BQBANkUAQCAFQEArhUBALAVAQCxFQEAuBUBALsVAQC+FQEAvhUBAMEVAQDbFQEAABYBADIWAQA7FgEAPBYBAD4WAQA+FgEAQRYBAEQWAQBQFgEAWRYBAGAWAQBsFgEAgBYBAKoWAQCsFgEArBYBAK4WAQCvFgEAthYBALYWAQC4FgEAuRYBAMAWAQDJFgEAABcBABoXAQAgFwEAIRcBACYXAQAmFwEAMBcBAEYXAQAAGAEALhgBADgYAQA4GAEAOxgBADsYAQCgGAEA8hgBAP8YAQAGGQEACRkBAAkZAQAMGQEAExkBABUZAQAWGQEAGBkBAC8ZAQAxGQEANRkBADcZAQA4GQEAPRkBAD0ZAQA/GQEAQhkBAEQZAQBGGQEAUBkBAFkZAQCgGQEApxkBAKoZAQDTGQEA3BkBAN8ZAQDhGQEA5BkBAAAaAQAAGgEACxoBADIaAQA5GgEAOhoBAD8aAQBGGgEAUBoBAFAaAQBXGgEAWBoBAFwaAQCJGgEAlxoBAJcaAQCaGgEAohoBALAaAQD4GgEAABwBAAgcAQAKHAEALxwBAD4cAQA+HAEAQBwBAEUcAQBQHAEAbBwBAHAcAQCPHAEAqRwBAKkcAQCxHAEAsRwBALQcAQC0HAEAAB0BAAYdAQAIHQEACR0BAAsdAQAwHQEARh0BAEYdAQBQHQEAWR0BAGAdAQBlHQEAZx0BAGgdAQBqHQEAjh0BAJMdAQCUHQEAlh0BAJYdAQCYHQEAmB0BAKAdAQCpHQEA4B4BAPIeAQD1HgEA+B4BALAfAQCwHwEAwB8BAPEfAQD/HwEAmSMBAAAkAQBuJAEAcCQBAHQkAQCAJAEAQyUBAJAvAQDyLwEAADABAC40AQAARAEARkYBAABoAQA4agEAQGoBAF5qAQBgagEAaWoBAG5qAQC+agEAwGoBAMlqAQDQagEA7WoBAPVqAQD1agEAAGsBAC9rAQA3awEARWsBAFBrAQBZawEAW2sBAGFrAQBjawEAd2sBAH1rAQCPawEAQG4BAJpuAQAAbwEASm8BAFBvAQCHbwEAk28BAJ9vAQDgbwEA428BAPBvAQDxbwEAAHABAPeHAQAAiAEA1YwBAACNAQAIjQEA8K8BAPOvAQD1rwEA+68BAP2vAQD+rwEAALABACKxAQBQsQEAUrEBAGSxAQBnsQEAcLEBAPuyAQAAvAEAarwBAHC8AQB8vAEAgLwBAIi8AQCQvAEAmbwBAJy8AQCcvAEAn7wBAJ+8AQBQzwEAw88BAADQAQD10AEAANEBACbRAQAp0QEAZNEBAGbRAQBm0QEAatEBAG3RAQCD0QEAhNEBAIzRAQCp0QEArtEBAOrRAQAA0gEAQdIBAEXSAQBF0gEA4NIBAPPSAQAA0wEAVtMBAGDTAQB40wEAANQBAFTUAQBW1AEAnNQBAJ7UAQCf1AEAotQBAKLUAQCl1AEAptQBAKnUAQCs1AEArtQBALnUAQC71AEAu9QBAL3UAQDD1AEAxdQBAAXVAQAH1QEACtUBAA3VAQAU1QEAFtUBABzVAQAe1QEAOdUBADvVAQA+1QEAQNUBAETVAQBG1QEARtUBAErVAQBQ1QEAUtUBAKXWAQCo1gEAy9cBAM7XAQD/2QEAN9oBADraAQBt2gEAdNoBAHbaAQCD2gEAhdoBAIvaAQAA3wEAHt8BAADhAQAs4QEAN+EBAD3hAQBA4QEASeEBAE7hAQBP4QEAkOIBAK3iAQDA4gEA6+IBAPDiAQD54gEA/+IBAP/iAQDg5wEA5ucBAOjnAQDr5wEA7ecBAO7nAQDw5wEA/ucBAADoAQDE6AEAx+gBAM/oAQAA6QEAQ+kBAEvpAQBL6QEAUOkBAFnpAQBe6QEAX+kBAHHsAQC07AEAAe0BAD3tAQAA7gEAA+4BAAXuAQAf7gEAIe4BACLuAQAk7gEAJO4BACfuAQAn7gEAKe4BADLuAQA07gEAN+4BADnuAQA57gEAO+4BADvuAQBC7gEAQu4BAEfuAQBH7gEASe4BAEnuAQBL7gEAS+4BAE3uAQBP7gEAUe4BAFLuAQBU7gEAVO4BAFfuAQBX7gEAWe4BAFnuAQBb7gEAW+4BAF3uAQBd7gEAX+4BAF/uAQBh7gEAYu4BAGTuAQBk7gEAZ+4BAGruAQBs7gEAcu4BAHTuAQB37gEAee4BAHzuAQB+7gEAfu4BAIDuAQCJ7gEAi+4BAJvuAQCh7gEAo+4BAKXuAQCp7gEAq+4BALvuAQDw7gEA8e4BAADwAQAr8AEAMPABAJPwAQCg8AEArvABALHwAQC/8AEAwfABAM/wAQDR8AEA9fABAADxAQCt8QEA5vEBAALyAQAQ8gEAO/IBAEDyAQBI8gEAUPIBAFHyAQBg8gEAZfIBAADzAQDX9gEA3fYBAOz2AQDw9gEA/PYBAAD3AQBz9wEAgPcBANj3AQDg9wEA6/cBAPD3AQDw9wEAAPgBAAv4AQAQ+AEAR/gBAFD4AQBZ+AEAYPgBAIf4AQCQ+AEArfgBALD4AQCx+AEAAPkBAFP6AQBg+gEAbfoBAHD6AQB0+gEAePoBAHz6AQCA+gEAhvoBAJD6AQCs+gEAsPoBALr6AQDA+gEAxfoBAND6AQDZ+gEA4PoBAOf6AQDw+gEA9voBAAD7AQCS+wEAlPsBAMr7AQDw+wEA+fsBAAAAAgDfpgIAAKcCADi3AgBAtwIAHbgCACC4AgChzgIAsM4CAODrAgAA+AIAHfoCAAAAAwBKEwMAAAAAAGEBAAAAAwAAbwMAAIMEAACJBAAAkQUAAL0FAAC/BQAAvwUAAMEFAADCBQAAxAUAAMUFAADHBQAAxwUAABAGAAAaBgAASwYAAF8GAABwBgAAcAYAANYGAADcBgAA3wYAAOQGAADnBgAA6AYAAOoGAADtBgAAEQcAABEHAAAwBwAASgcAAKYHAACwBwAA6wcAAPMHAAD9BwAA/QcAABYIAAAZCAAAGwgAACMIAAAlCAAAJwgAACkIAAAtCAAAWQgAAFsIAACYCAAAnwgAAMoIAADhCAAA4wgAAAIJAAA6CQAAOgkAADwJAAA8CQAAQQkAAEgJAABNCQAATQkAAFEJAABXCQAAYgkAAGMJAACBCQAAgQkAALwJAAC8CQAAvgkAAL4JAADBCQAAxAkAAM0JAADNCQAA1wkAANcJAADiCQAA4wkAAP4JAAD+CQAAAQoAAAIKAAA8CgAAPAoAAEEKAABCCgAARwoAAEgKAABLCgAATQoAAFEKAABRCgAAcAoAAHEKAAB1CgAAdQoAAIEKAACCCgAAvAoAALwKAADBCgAAxQoAAMcKAADICgAAzQoAAM0KAADiCgAA4woAAPoKAAD/CgAAAQsAAAELAAA8CwAAPAsAAD4LAAA/CwAAQQsAAEQLAABNCwAATQsAAFULAABXCwAAYgsAAGMLAACCCwAAggsAAL4LAAC+CwAAwAsAAMALAADNCwAAzQsAANcLAADXCwAAAAwAAAAMAAAEDAAABAwAADwMAAA8DAAAPgwAAEAMAABGDAAASAwAAEoMAABNDAAAVQwAAFYMAABiDAAAYwwAAIEMAACBDAAAvAwAALwMAAC/DAAAvwwAAMIMAADCDAAAxgwAAMYMAADMDAAAzQwAANUMAADWDAAA4gwAAOMMAAAADQAAAQ0AADsNAAA8DQAAPg0AAD4NAABBDQAARA0AAE0NAABNDQAAVw0AAFcNAABiDQAAYw0AAIENAACBDQAAyg0AAMoNAADPDQAAzw0AANINAADUDQAA1g0AANYNAADfDQAA3w0AADEOAAAxDgAANA4AADoOAABHDgAATg4AALEOAACxDgAAtA4AALwOAADIDgAAzQ4AABgPAAAZDwAANQ8AADUPAAA3DwAANw8AADkPAAA5DwAAcQ8AAH4PAACADwAAhA8AAIYPAACHDwAAjQ8AAJcPAACZDwAAvA8AAMYPAADGDwAALRAAADAQAAAyEAAANxAAADkQAAA6EAAAPRAAAD4QAABYEAAAWRAAAF4QAABgEAAAcRAAAHQQAACCEAAAghAAAIUQAACGEAAAjRAAAI0QAACdEAAAnRAAAF0TAABfEwAAEhcAABQXAAAyFwAAMxcAAFIXAABTFwAAchcAAHMXAAC0FwAAtRcAALcXAAC9FwAAxhcAAMYXAADJFwAA0xcAAN0XAADdFwAACxgAAA0YAAAPGAAADxgAAIUYAACGGAAAqRgAAKkYAAAgGQAAIhkAACcZAAAoGQAAMhkAADIZAAA5GQAAOxkAABcaAAAYGgAAGxoAABsaAABWGgAAVhoAAFgaAABeGgAAYBoAAGAaAABiGgAAYhoAAGUaAABsGgAAcxoAAHwaAAB/GgAAfxoAALAaAADOGgAAABsAAAMbAAA0GwAAOhsAADwbAAA8GwAAQhsAAEIbAABrGwAAcxsAAIAbAACBGwAAohsAAKUbAACoGwAAqRsAAKsbAACtGwAA5hsAAOYbAADoGwAA6RsAAO0bAADtGwAA7xsAAPEbAAAsHAAAMxwAADYcAAA3HAAA0BwAANIcAADUHAAA4BwAAOIcAADoHAAA7RwAAO0cAAD0HAAA9BwAAPgcAAD5HAAAwB0AAP8dAAAMIAAADCAAANAgAADwIAAA7ywAAPEsAAB/LQAAfy0AAOAtAAD/LQAAKjAAAC8wAACZMAAAmjAAAG+mAABypgAAdKYAAH2mAACepgAAn6YAAPCmAADxpgAAAqgAAAKoAAAGqAAABqgAAAuoAAALqAAAJagAACaoAAAsqAAALKgAAMSoAADFqAAA4KgAAPGoAAD/qAAA/6gAACapAAAtqQAAR6kAAFGpAACAqQAAgqkAALOpAACzqQAAtqkAALmpAAC8qQAAvakAAOWpAADlqQAAKaoAAC6qAAAxqgAAMqoAADWqAAA2qgAAQ6oAAEOqAABMqgAATKoAAHyqAAB8qgAAsKoAALCqAACyqgAAtKoAALeqAAC4qgAAvqoAAL+qAADBqgAAwaoAAOyqAADtqgAA9qoAAPaqAADlqwAA5asAAOirAADoqwAA7asAAO2rAAAe+wAAHvsAAAD+AAAP/gAAIP4AAC/+AACe/wAAn/8AAP0BAQD9AQEA4AIBAOACAQB2AwEAegMBAAEKAQADCgEABQoBAAYKAQAMCgEADwoBADgKAQA6CgEAPwoBAD8KAQDlCgEA5goBACQNAQAnDQEAqw4BAKwOAQBGDwEAUA8BAIIPAQCFDwEAARABAAEQAQA4EAEARhABAHAQAQBwEAEAcxABAHQQAQB/EAEAgRABALMQAQC2EAEAuRABALoQAQDCEAEAwhABAAARAQACEQEAJxEBACsRAQAtEQEANBEBAHMRAQBzEQEAgBEBAIERAQC2EQEAvhEBAMkRAQDMEQEAzxEBAM8RAQAvEgEAMRIBADQSAQA0EgEANhIBADcSAQA+EgEAPhIBAN8SAQDfEgEA4xIBAOoSAQAAEwEAARMBADsTAQA8EwEAPhMBAD4TAQBAEwEAQBMBAFcTAQBXEwEAZhMBAGwTAQBwEwEAdBMBADgUAQA/FAEAQhQBAEQUAQBGFAEARhQBAF4UAQBeFAEAsBQBALAUAQCzFAEAuBQBALoUAQC6FAEAvRQBAL0UAQC/FAEAwBQBAMIUAQDDFAEArxUBAK8VAQCyFQEAtRUBALwVAQC9FQEAvxUBAMAVAQDcFQEA3RUBADMWAQA6FgEAPRYBAD0WAQA/FgEAQBYBAKsWAQCrFgEArRYBAK0WAQCwFgEAtRYBALcWAQC3FgEAHRcBAB8XAQAiFwEAJRcBACcXAQArFwEALxgBADcYAQA5GAEAOhgBADAZAQAwGQEAOxkBADwZAQA+GQEAPhkBAEMZAQBDGQEA1BkBANcZAQDaGQEA2xkBAOAZAQDgGQEAARoBAAoaAQAzGgEAOBoBADsaAQA+GgEARxoBAEcaAQBRGgEAVhoBAFkaAQBbGgEAihoBAJYaAQCYGgEAmRoBADAcAQA2HAEAOBwBAD0cAQA/HAEAPxwBAJIcAQCnHAEAqhwBALAcAQCyHAEAsxwBALUcAQC2HAEAMR0BADYdAQA6HQEAOh0BADwdAQA9HQEAPx0BAEUdAQBHHQEARx0BAJAdAQCRHQEAlR0BAJUdAQCXHQEAlx0BAPMeAQD0HgEA8GoBAPRqAQAwawEANmsBAE9vAQBPbwEAj28BAJJvAQDkbwEA5G8BAJ28AQCevAEAAM8BAC3PAQAwzwEARs8BAGXRAQBl0QEAZ9EBAGnRAQBu0QEActEBAHvRAQCC0QEAhdEBAIvRAQCq0QEArdEBAELSAQBE0gEAANoBADbaAQA72gEAbNoBAHXaAQB12gEAhNoBAITaAQCb2gEAn9oBAKHaAQCv2gEAAOABAAbgAQAI4AEAGOABABvgAQAh4AEAI+ABACTgAQAm4AEAKuABADDhAQA24QEAruIBAK7iAQDs4gEA7+IBANDoAQDW6AEAROkBAErpAQAgAA4AfwAOAAABDgDvAQ4AAAAAADcAAABNCQAATQkAAM0JAADNCQAATQoAAE0KAADNCgAAzQoAAE0LAABNCwAAzQsAAM0LAABNDAAATQwAAM0MAADNDAAAOw0AADwNAABNDQAATQ0AAMoNAADKDQAAOg4AADoOAAC6DgAAug4AAIQPAACEDwAAORAAADoQAAAUFwAAFRcAADQXAAA0FwAA0hcAANIXAABgGgAAYBoAAEQbAABEGwAAqhsAAKsbAADyGwAA8xsAAH8tAAB/LQAABqgAAAaoAAAsqAAALKgAAMSoAADEqAAAU6kAAFOpAADAqQAAwKkAAPaqAAD2qgAA7asAAO2rAAA/CgEAPwoBAEYQAQBGEAEAcBABAHAQAQB/EAEAfxABALkQAQC5EAEAMxEBADQRAQDAEQEAwBEBADUSAQA1EgEA6hIBAOoSAQBNEwEATRMBAEIUAQBCFAEAwhQBAMIUAQC/FQEAvxUBAD8WAQA/FgEAthYBALYWAQArFwEAKxcBADkYAQA5GAEAPRkBAD4ZAQDgGQEA4BkBADQaAQA0GgEARxoBAEcaAQCZGgEAmRoBAD8cAQA/HAEARB0BAEUdAQCXHQEAlx0BAAAAAAAkAAAAcAMAAHMDAAB1AwAAdwMAAHoDAAB9AwAAfwMAAH8DAACEAwAAhAMAAIYDAACGAwAAiAMAAIoDAACMAwAAjAMAAI4DAAChAwAAowMAAOEDAADwAwAA/wMAACYdAAAqHQAAXR0AAGEdAABmHQAAah0AAL8dAAC/HQAAAB8AABUfAAAYHwAAHR8AACAfAABFHwAASB8AAE0fAABQHwAAVx8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAAB9HwAAgB8AALQfAAC2HwAAxB8AAMYfAADTHwAA1h8AANsfAADdHwAA7x8AAPIfAAD0HwAA9h8AAP4fAAAmIQAAJiEAAGWrAABlqwAAQAEBAI4BAQCgAQEAoAEBAADSAQBF0gEAQeDFCAtyDgAAAIEKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvAoAAMUKAADHCgAAyQoAAMsKAADNCgAA0AoAANAKAADgCgAA4woAAOYKAADxCgAA+QoAAP8KAEHgxggLMwYAAABgHQEAZR0BAGcdAQBoHQEAah0BAI4dAQCQHQEAkR0BAJMdAQCYHQEAoB0BAKkdAQBBoMcIC4IBEAAAAAEKAAADCgAABQoAAAoKAAAPCgAAEAoAABMKAAAoCgAAKgoAADAKAAAyCgAAMwoAADUKAAA2CgAAOAoAADkKAAA8CgAAPAoAAD4KAABCCgAARwoAAEgKAABLCgAATQoAAFEKAABRCgAAWQoAAFwKAABeCgAAXgoAAGYKAAB2CgBBsMgIC6MBFAAAAIAuAACZLgAAmy4AAPMuAAAALwAA1S8AAAUwAAAFMAAABzAAAAcwAAAhMAAAKTAAADgwAAA7MAAAADQAAL9NAAAATgAA/58AAAD5AABt+gAAcPoAANn6AADibwEA428BAPBvAQDxbwEAAAACAN+mAgAApwIAOLcCAEC3AgAduAIAILgCAKHOAgCwzgIA4OsCAAD4AgAd+gIAAAADAEoTAwBB4MkIC3IOAAAAABEAAP8RAAAuMAAALzAAADExAACOMQAAADIAAB4yAABgMgAAfjIAAGCpAAB8qQAAAKwAAKPXAACw1wAAxtcAAMvXAAD71wAAoP8AAL7/AADC/wAAx/8AAMr/AADP/wAA0v8AANf/AADa/wAA3P8AQeDKCAvCAQIAAAAADQEAJw0BADANAQA5DQEAAQAAACAXAAA0FwAAAwAAAOAIAQDyCAEA9AgBAPUIAQD7CAEA/wgBAAAAAAAJAAAAkQUAAMcFAADQBQAA6gUAAO8FAAD0BQAAHfsAADb7AAA4+wAAPPsAAD77AAA++wAAQPsAAEH7AABD+wAARPsAAEb7AABP+wAAAAAAAAYAAAAwAAAAOQAAAEEAAABGAAAAYQAAAGYAAAAQ/wAAGf8AACH/AAAm/wAAQf8AAEb/AEGwzAgLQgUAAABBMAAAljAAAJ0wAACfMAAAAbABAB+xAQBQsQEAUrEBAADyAQAA8gEAAQAAAKGkAADzpAAAAQAAAJ+CAADxggBBgM0IC1IKAAAALQAAAC0AAACtAAAArQAAAIoFAACKBQAABhgAAAYYAAAQIAAAESAAABcuAAAXLgAA+zAAAPswAABj/gAAY/4AAA3/AAAN/wAAZf8AAGX/AEHgzQgLwy8CAAAA8C8AAPEvAAD0LwAA+y8AAAEAAADyLwAA8y8AAPQCAAAwAAAAOQAAAEEAAABaAAAAXwAAAF8AAABhAAAAegAAAKoAAACqAAAAtQAAALUAAAC3AAAAtwAAALoAAAC6AAAAwAAAANYAAADYAAAA9gAAAPgAAADBAgAAxgIAANECAADgAgAA5AIAAOwCAADsAgAA7gIAAO4CAAAAAwAAdAMAAHYDAAB3AwAAegMAAH0DAAB/AwAAfwMAAIYDAACKAwAAjAMAAIwDAACOAwAAoQMAAKMDAAD1AwAA9wMAAIEEAACDBAAAhwQAAIoEAAAvBQAAMQUAAFYFAABZBQAAWQUAAGAFAACIBQAAkQUAAL0FAAC/BQAAvwUAAMEFAADCBQAAxAUAAMUFAADHBQAAxwUAANAFAADqBQAA7wUAAPIFAAAQBgAAGgYAACAGAABpBgAAbgYAANMGAADVBgAA3AYAAN8GAADoBgAA6gYAAPwGAAD/BgAA/wYAABAHAABKBwAATQcAALEHAADABwAA9QcAAPoHAAD6BwAA/QcAAP0HAAAACAAALQgAAEAIAABbCAAAYAgAAGoIAABwCAAAhwgAAIkIAACOCAAAmAgAAOEIAADjCAAAYwkAAGYJAABvCQAAcQkAAIMJAACFCQAAjAkAAI8JAACQCQAAkwkAAKgJAACqCQAAsAkAALIJAACyCQAAtgkAALkJAAC8CQAAxAkAAMcJAADICQAAywkAAM4JAADXCQAA1wkAANwJAADdCQAA3wkAAOMJAADmCQAA8QkAAPwJAAD8CQAA/gkAAP4JAAABCgAAAwoAAAUKAAAKCgAADwoAABAKAAATCgAAKAoAACoKAAAwCgAAMgoAADMKAAA1CgAANgoAADgKAAA5CgAAPAoAADwKAAA+CgAAQgoAAEcKAABICgAASwoAAE0KAABRCgAAUQoAAFkKAABcCgAAXgoAAF4KAABmCgAAdQoAAIEKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvAoAAMUKAADHCgAAyQoAAMsKAADNCgAA0AoAANAKAADgCgAA4woAAOYKAADvCgAA+QoAAP8KAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAABvCwAAcQsAAHELAACCCwAAgwsAAIULAACKCwAAjgsAAJALAACSCwAAlQsAAJkLAACaCwAAnAsAAJwLAACeCwAAnwsAAKMLAACkCwAAqAsAAKoLAACuCwAAuQsAAL4LAADCCwAAxgsAAMgLAADKCwAAzQsAANALAADQCwAA1wsAANcLAADmCwAA7wsAAAAMAAAMDAAADgwAABAMAAASDAAAKAwAACoMAAA5DAAAPAwAAEQMAABGDAAASAwAAEoMAABNDAAAVQwAAFYMAABYDAAAWgwAAF0MAABdDAAAYAwAAGMMAABmDAAAbwwAAIAMAACDDAAAhQwAAIwMAACODAAAkAwAAJIMAACoDAAAqgwAALMMAAC1DAAAuQwAALwMAADEDAAAxgwAAMgMAADKDAAAzQwAANUMAADWDAAA3QwAAN4MAADgDAAA4wwAAOYMAADvDAAA8QwAAPIMAAAADQAADA0AAA4NAAAQDQAAEg0AAEQNAABGDQAASA0AAEoNAABODQAAVA0AAFcNAABfDQAAYw0AAGYNAABvDQAAeg0AAH8NAACBDQAAgw0AAIUNAACWDQAAmg0AALENAACzDQAAuw0AAL0NAAC9DQAAwA0AAMYNAADKDQAAyg0AAM8NAADUDQAA1g0AANYNAADYDQAA3w0AAOYNAADvDQAA8g0AAPMNAAABDgAAOg4AAEAOAABODgAAUA4AAFkOAACBDgAAgg4AAIQOAACEDgAAhg4AAIoOAACMDgAAow4AAKUOAAClDgAApw4AAL0OAADADgAAxA4AAMYOAADG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vx4AAMEeAADBHgAAwx4AAMMeAADFHgAAxR4AAMceAADHHgAAyR4AAMkeAADLHgAAyx4AAM0eAADNHgAAzx4AAM8eAADRHgAA0R4AANMeAADTHgAA1R4AANUeAADXHgAA1x4AANkeAADZHgAA2x4AANseAADdHgAA3R4AAN8eAADfHgAA4R4AAOEeAADjHgAA4x4AAOUeAADlHgAA5x4AAOceAADpHgAA6R4AAOseAADrHgAA7R4AAO0eAADvHgAA7x4AAPEeAADxHgAA8x4AAPMeAAD1HgAA9R4AAPceAAD3HgAA+R4AAPkeAAD7HgAA+x4AAP0eAAD9HgAA/x4AAAcfAAAQHwAAFR8AACAfAAAnHwAAMB8AADcfAABAHwAARR8AAFAfAABXHwAAYB8AAGcfAABwHwAAfR8AAIAfAACHHwAAkB8AAJcfAACgHwAApx8AALAfAAC0HwAAth8AALcfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADQHwAA0x8AANYfAADXHwAA4B8AAOcfAADyHwAA9B8AAPYfAAD3HwAACiEAAAohAAAOIQAADyEAABMhAAATIQAALyEAAC8hAAA0IQAANCEAADkhAAA5IQAAPCEAAD0hAABGIQAASSEAAE4hAABOIQAAhCEAAIQhAAAwLAAAXywAAGEsAABhLAAAZSwAAGYsAABoLAAAaCwAAGosAABqLAAAbCwAAGwsAABxLAAAcSwAAHMsAAB0LAAAdiwAAHssAACBLAAAgSwAAIMsAACDLAAAhSwAAIUsAACHLAAAhywAAIksAACJLAAAiywAAIssAACNLAAAjSwAAI8sAACPLAAAkSwAAJEsAACTLAAAkywAAJUsAACVLAAAlywAAJcsAACZLAAAmSwAAJssAACbLAAAnSwAAJ0sAACfLAAAnywAAKEsAAChLAAAoywAAKMsAAClLAAApSwAAKcsAACnLAAAqSwAAKksAACrLAAAqywAAK0sAACtLAAArywAAK8sAACxLAAAsSwAALMsAACzLAAAtSwAALUsAAC3LAAAtywAALksAAC5LAAAuywAALssAAC9LAAAvSwAAL8sAAC/LAAAwSwAAMEsAADDLAAAwywAAMUsAADFLAAAxywAAMcsAADJLAAAySwAAMssAADLLAAAzSwAAM0sAADPLAAAzywAANEsAADRLAAA0ywAANMsAADVLAAA1SwAANcsAADXLAAA2SwAANksAADbLAAA2ywAAN0sAADdLAAA3ywAAN8sAADhLAAA4SwAAOMsAADkLAAA7CwAAOwsAADuLAAA7iwAAPMsAADzLAAAAC0AACUtAAAnLQAAJy0AAC0tAAAtLQAAQaYAAEGmAABDpgAAQ6YAAEWmAABFpgAAR6YAAEemAABJpgAASaYAAEumAABLpgAATaYAAE2mAABPpgAAT6YAAFGmAABRpgAAU6YAAFOmAABVpgAAVaYAAFemAABXpgAAWaYAAFmmAABbpgAAW6YAAF2mAABdpgAAX6YAAF+mAABhpgAAYaYAAGOmAABjpgAAZaYAAGWmAABnpgAAZ6YAAGmmAABppgAAa6YAAGumAABtpgAAbaYAAIGmAACBpgAAg6YAAIOmAACFpgAAhaYAAIemAACHpgAAiaYAAImmAACLpgAAi6YAAI2mAACNpgAAj6YAAI+mAACRpgAAkaYAAJOmAACTpgAAlaYAAJWmAACXpgAAl6YAAJmmAACZpgAAm6YAAJumAAAjpwAAI6cAACWnAAAlpwAAJ6cAACenAAAppwAAKacAACunAAArpwAALacAAC2nAAAvpwAAMacAADOnAAAzpwAANacAADWnAAA3pwAAN6cAADmnAAA5pwAAO6cAADunAAA9pwAAPacAAD+nAAA/pwAAQacAAEGnAABDpwAAQ6cAAEWnAABFpwAAR6cAAEenAABJpwAASacAAEunAABLpwAATacAAE2nAABPpwAAT6cAAFGnAABRpwAAU6cAAFOnAABVpwAAVacAAFenAABXpwAAWacAAFmnAABbpwAAW6cAAF2nAABdpwAAX6cAAF+nAABhpwAAYacAAGOnAABjpwAAZacAAGWnAABnpwAAZ6cAAGmnAABppwAAa6cAAGunAABtpwAAbacAAG+nAABvpwAAcacAAHinAAB6pwAAeqcAAHynAAB8pwAAf6cAAH+nAACBpwAAgacAAIOnAACDpwAAhacAAIWnAACHpwAAh6cAAIynAACMpwAAjqcAAI6nAACRpwAAkacAAJOnAACVpwAAl6cAAJenAACZpwAAmacAAJunAACbpwAAnacAAJ2nAACfpwAAn6cAAKGnAAChpwAAo6cAAKOnAAClpwAApacAAKenAACnpwAAqacAAKmnAACvpwAAr6cAALWnAAC1pwAAt6cAALenAAC5pwAAuacAALunAAC7pwAAvacAAL2nAAC/pwAAv6cAAMGnAADBpwAAw6cAAMOnAADIpwAAyKcAAMqnAADKpwAA0acAANGnAADTpwAA06cAANWnAADVpwAA16cAANenAADZpwAA2acAAPanAAD2pwAA+qcAAPqnAAAwqwAAWqsAAGCrAABoqwAAcKsAAL+rAAAA+wAABvsAABP7AAAX+wAAQf8AAFr/AAAoBAEATwQBANgEAQD7BAEAlwUBAKEFAQCjBQEAsQUBALMFAQC5BQEAuwUBALwFAQDADAEA8gwBAMAYAQDfGAEAYG4BAH9uAQAa1AEAM9QBAE7UAQBU1AEAVtQBAGfUAQCC1AEAm9QBALbUAQC51AEAu9QBALvUAQC91AEAw9QBAMXUAQDP1AEA6tQBAAPVAQAe1QEAN9UBAFLVAQBr1QEAhtUBAJ/VAQC61QEA09UBAO7VAQAH1gEAItYBADvWAQBW1gEAb9YBAIrWAQCl1gEAwtYBANrWAQDc1gEA4dYBAPzWAQAU1wEAFtcBABvXAQA21wEATtcBAFDXAQBV1wEAcNcBAIjXAQCK1wEAj9cBAKrXAQDC1wEAxNcBAMnXAQDL1wEAy9cBAADfAQAJ3wEAC98BAB7fAQAi6QEAQ+kBAAAAAABFAAAAsAIAAMECAADGAgAA0QIAAOACAADkAgAA7AIAAOwCAADuAgAA7gIAAHQDAAB0AwAAegMAAHoDAABZBQAAWQUAAEAGAABABgAA5QYAAOYGAAD0BwAA9QcAAPoHAAD6BwAAGggAABoIAAAkCAAAJAgAACgIAAAoCAAAyQgAAMkIAABxCQAAcQkAAEYOAABGDgAAxg4AAMYOAAD8EAAA/BAAANcXAADXFwAAQxgAAEMYAACnGgAApxoAAHgcAAB9HAAALB0AAGodAAB4HQAAeB0AAJsdAAC/HQAAcSAAAHEgAAB/IAAAfyAAAJAgAACcIAAAfCwAAH0sAABvLQAAby0AAC8uAAAvLgAABTAAAAUwAAAxMAAANTAAADswAAA7MAAAnTAAAJ4wAAD8MAAA/jAAABWgAAAVoAAA+KQAAP2kAAAMpgAADKYAAH+mAAB/pgAAnKYAAJ2mAAAXpwAAH6cAAHCnAABwpwAAiKcAAIinAADypwAA9KcAAPinAAD5pwAAz6kAAM+pAADmqQAA5qkAAHCqAABwqgAA3aoAAN2qAADzqgAA9KoAAFyrAABfqwAAaasAAGmrAABw/wAAcP8AAJ7/AACf/wAAgAcBAIUHAQCHBwEAsAcBALIHAQC6BwEAQGsBAENrAQCTbwEAn28BAOBvAQDhbwEA428BAONvAQDwrwEA868BAPWvAQD7rwEA/a8BAP6vAQA34QEAPeEBAEvpAQBL6QEAAAAAAPUBAACqAAAAqgAAALoAAAC6AAAAuwEAALsBAADAAQAAwwEAAJQCAACUAgAA0AUAAOoFAADvBQAA8gUAACAGAAA/BgAAQQYAAEoGAABuBgAAbwYAAHEGAADTBgAA1QYAANUGAADuBgAA7wYAAPoGAAD8BgAA/wYAAP8GAAAQBwAAEAcAABIHAAAvBwAATQcAAKUHAACxBwAAsQcAAMoHAADqBwAAAAgAABUIAABACAAAWAgAAGAIAABqCAAAcAgAAIcIAACJCAAAjggAAKAIAADICAAABAkAADkJAAA9CQAAPQkAAFAJAABQCQAAWAkAAGEJAAByCQAAgAkAAIUJAACMCQAAjwkAAJAJAACTCQAAqAkAAKoJAACwCQAAsgkAALIJAAC2CQAAuQkAAL0JAAC9CQAAzgkAAM4JAADcCQAA3QkAAN8JAADhCQAA8AkAAPEJAAD8CQAA/AkAAAUKAAAKCgAADwoAABAKAAATCgAAKAoAACoKAAAwCgAAMgoAADMKAAA1CgAANgoAADgKAAA5CgAAWQoAAFwKAABeCgAAXgoAAHIKAAB0CgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvQoAAL0KAADQCgAA0AoAAOAKAADhCgAA+QoAAPkKAAAFCwAADAsAAA8LAAAQCwAAEwsAACgLAAAqCwAAMAsAADILAAAzCwAANQsAADkLAAA9CwAAPQsAAFwLAABdCwAAXwsAAGELAABxCwAAcQsAAIMLAACDCwAAhQsAAIoLAACOCwAAkAsAAJILAACVCwAAmQsAAJoLAACcCwAAnAsAAJ4LAACfCwAAowsAAKQLAACoCwAAqgsAAK4LAAC5CwAA0AsAANALAAAFDAAADAwAAA4MAAAQDAAAEgwAACgMAAAqDAAAOQwAAD0MAAA9DAAAWAwAAFoMAABdDAAAXQwAAGAMAABhDAAAgAwAAIAMAACFDAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvQwAAL0MAADdDAAA3gwAAOAMAADhDAAA8QwAAPIMAAAEDQAADA0AAA4NAAAQDQAAEg0AADoNAAA9DQAAPQ0AAE4NAABODQAAVA0AAFYNAABfDQAAYQ0AAHoNAAB/DQAAhQ0AAJYNAACaDQAAsQ0AALMNAAC7DQAAvQ0AAL0NAADADQAAxg0AAAEOAAAwDgAAMg4AADMOAABADgAARQ4AAIEOAACCDgAAhA4AAIQOAACGDgAAig4AAIwOAACjDgAApQ4AAKUOAACnDgAAsA4AALIOAACzDgAAvQ4AAL0OAADADgAAxA4AANwOAADfDgAAAA8AAAAPAABADwAARw8AAEkPAABsDwAAiA8AAIwPAAAAEAAAKhAAAD8QAAA/EAAAUBAAAFUQAABaEAAAXRAAAGEQAABhEAAAZRAAAGYQAABuEAAAcBAAAHUQAACBEAAAjhAAAI4QAAAAEQAASBIAAEoSAABNEgAAUBIAAFYSAABYEgAAWBIAAFoSAABdEgAAYBIAAIgSAACKEgAAjRIAAJASAACwEgAAshIAALUSAAC4EgAAvhIAAMASAADAEgAAwhIAAMUSAADIEgAA1hIAANgSAAAQEwAAEhMAABUTAAAYEwAAWhMAAIATAACPEwAAARQAAGwWAABvFgAAfxYAAIEWAACaFgAAoBYAAOoWAADxFgAA+BYAAAAXAAARFwAAHxcAADEXAABAFwAAURcAAGAXAABsFwAAbhcAAHAXAACAFwAAsxcAANwXAADcFwAAIBgAAEIYAABEGAAAeBgAAIAYAACEGAAAhxgAAKgYAACqGAAAqhgAALAYAAD1GAAAABkAAB4ZAABQGQAAbRkAAHAZAAB0GQAAgBkAAKsZAACwGQAAyRkAAAAaAAAWGgAAIBoAAFQaAAAFGwAAMxsAAEUbAABMGwAAgxsAAKAbAACuGwAArxsAALobAADlGwAAABwAACMcAABNHAAATxwAAFocAAB3HAAA6RwAAOwcAADuHAAA8xwAAPUcAAD2HAAA+hwAAPocAAA1IQAAOCEAADAtAABnLQAAgC0AAJYtAACgLQAApi0AAKgtAACuLQAAsC0AALYtAAC4LQAAvi0AAMAtAADGLQAAyC0AAM4tAADQLQAA1i0AANgtAADeLQAABjAAAAYwAAA8MAAAPDAAAEEwAACWMAAAnzAAAJ8wAAChMAAA+jAAAP8wAAD/MAAABTEAAC8xAAAxMQAAjjEAAKAxAAC/MQAA8DEAAP8xAAAANAAAv00AAABOAAAUoAAAFqAAAIykAADQpAAA96QAAAClAAALpgAAEKYAAB+mAAAqpgAAK6YAAG6mAABupgAAoKYAAOWmAACPpwAAj6cAAPenAAD3pwAA+6cAAAGoAAADqAAABagAAAeoAAAKqAAADKgAACKoAABAqAAAc6gAAIKoAACzqAAA8qgAAPeoAAD7qAAA+6gAAP2oAAD+qAAACqkAACWpAAAwqQAARqkAAGCpAAB8qQAAhKkAALKpAADgqQAA5KkAAOepAADvqQAA+qkAAP6pAAAAqgAAKKoAAECqAABCqgAARKoAAEuqAABgqgAAb6oAAHGqAAB2qgAAeqoAAHqqAAB+qgAAr6oAALGqAACxqgAAtaoAALaqAAC5qgAAvaoAAMCqAADAqgAAwqoAAMKqAADbqgAA3KoAAOCqAADqqgAA8qoAAPKqAAABqwAABqsAAAmrAAAOqwAAEasAABarAAAgqwAAJqsAACirAAAuqwAAwKsAAOKrAAAArAAAo9cAALDXAADG1wAAy9cAAPvXAAAA+QAAbfoAAHD6AADZ+gAAHfsAAB37AAAf+wAAKPsAACr7AAA2+wAAOPsAADz7AAA++wAAPvsAAED7AABB+wAAQ/sAAET7AABG+wAAsfsAANP7AAA9/QAAUP0AAI/9AACS/QAAx/0AAPD9AAD7/QAAcP4AAHT+AAB2/gAA/P4AAGb/AABv/wAAcf8AAJ3/AACg/wAAvv8AAML/AADH/wAAyv8AAM//AADS/wAA1/8AANr/AADc/wAAAAABAAsAAQANAAEAJgABACgAAQA6AAEAPAABAD0AAQA/AAEATQABAFAAAQBdAAEAgAABAPoAAQCAAgEAnAIBAKACAQDQAgEAAAMBAB8DAQAtAwEAQAMBAEIDAQBJAwEAUAMBAHUDAQCAAwEAnQMBAKADAQDDAwEAyAMBAM8DAQBQBAEAnQQBAAAFAQAnBQEAMAUBAGMFAQAABgEANgcBAEAHAQBVBwEAYAcBAGcHAQAACAEABQgBAAgIAQAICAEACggBADUIAQA3CAEAOAgBADwIAQA8CAEAPwgBAFUIAQBgCAEAdggBAIAIAQCeCAEA4AgBAPIIAQD0CAEA9QgBAAAJAQAVCQEAIAkBADkJAQCACQEAtwkBAL4JAQC/CQEAAAoBAAAKAQAQCgEAEwoBABUKAQAXCgEAGQoBADUKAQBgCgEAfAoBAIAKAQCcCgEAwAoBAMcKAQDJCgEA5AoBAAALAQA1CwEAQAsBAFULAQBgCwEAcgsBAIALAQCRCwEAAAwBAEgMAQAADQEAIw0BAIAOAQCpDgEAsA4BALEOAQAADwEAHA8BACcPAQAnDwEAMA8BAEUPAQBwDwEAgQ8BALAPAQDEDwEA4A8BAPYPAQADEAEANxABAHEQAQByEAEAdRABAHUQAQCDEAEArxABANAQAQDoEAEAAxEBACYRAQBEEQEARBEBAEcRAQBHEQEAUBEBAHIRAQB2EQEAdhEBAIMRAQCyEQEAwREBAMQRAQDaEQEA2hEBANwRAQDcEQEAABIBABESAQATEgEAKxIBAIASAQCGEgEAiBIBAIgSAQCKEgEAjRIBAI8SAQCdEgEAnxIBAKgSAQCwEgEA3hIBAAUTAQAMEwEADxMBABATAQATEwEAKBMBACoTAQAwEwEAMhMBADMTAQA1EwEAORMBAD0TAQA9EwEAUBMBAFATAQBdEwEAYRMBAAAUAQA0FAEARxQBAEoUAQBfFAEAYRQBAIAUAQCvFAEAxBQBAMUUAQDHFAEAxxQBAIAVAQCuFQEA2BUBANsVAQAAFgEALxYBAEQWAQBEFgEAgBYBAKoWAQC4FgEAuBYBAAAXAQAaFwEAQBcBAEYXAQAAGAEAKxgBAP8YAQAGGQEACRkBAAkZAQAMGQEAExkBABUZAQAWGQEAGBkBAC8ZAQA/GQEAPxkBAEEZAQBBGQEAoBkBAKcZAQCqGQEA0BkBAOEZAQDhGQEA4xkBAOMZAQAAGgEAABoBAAsaAQAyGgEAOhoBADoaAQBQGgEAUBoBAFwaAQCJGgEAnRoBAJ0aAQCwGgEA+BoBAAAcAQAIHAEAChwBAC4cAQBAHAEAQBwBAHIcAQCPHAEAAB0BAAYdAQAIHQEACR0BAAsdAQAwHQEARh0BAEYdAQBgHQEAZR0BAGcdAQBoHQEAah0BAIkdAQCYHQEAmB0BAOAeAQDyHgEAsB8BALAfAQAAIAEAmSMBAIAkAQBDJQEAkC8BAPAvAQAAMAEALjQBAABEAQBGRgEAAGgBADhqAQBAagEAXmoBAHBqAQC+agEA0GoBAO1qAQAAawEAL2sBAGNrAQB3awEAfWsBAI9rAQAAbwEASm8BAFBvAQBQbwEAAHABAPeHAQAAiAEA1YwBAACNAQAIjQEAALABACKxAQBQsQEAUrEBAGSxAQBnsQEAcLEBAPuyAQAAvAEAarwBAHC8AQB8vAEAgLwBAIi8AQCQvAEAmbwBAArfAQAK3wEAAOEBACzhAQBO4QEATuEBAJDiAQCt4gEAwOIBAOviAQDg5wEA5ucBAOjnAQDr5wEA7ecBAO7nAQDw5wEA/ucBAADoAQDE6AEAAO4BAAPuAQAF7gEAH+4BACHuAQAi7gEAJO4BACTuAQAn7gEAJ+4BACnuAQAy7gEANO4BADfuAQA57gEAOe4BADvuAQA77gEAQu4BAELuAQBH7gEAR+4BAEnuAQBJ7gEAS+4BAEvuAQBN7gEAT+4BAFHuAQBS7gEAVO4BAFTuAQBX7gEAV+4BAFnuAQBZ7gEAW+4BAFvuAQBd7gEAXe4BAF/uAQBf7gEAYe4BAGLuAQBk7gEAZO4BAGfuAQBq7gEAbO4BAHLuAQB07gEAd+4BAHnuAQB87gEAfu4BAH7uAQCA7gEAie4BAIvuAQCb7gEAoe4BAKPuAQCl7gEAqe4BAKvuAQC77gEAAAACAN+mAgAApwIAOLcCAEC3AgAduAIAILgCAKHOAgCwzgIA4OsCAAD4AgAd+gIAAAADAEoTAwAAAAAABwAAAEAOAABEDgAAwA4AAMQOAAC1GQAAtxkAALoZAAC6GQAAtaoAALaqAAC5qgAAuaoAALuqAAC8qgAAAAAAAAoAAADFAQAAxQEAAMgBAADIAQAAywEAAMsBAADyAQAA8gEAAIgfAACPHwAAmB8AAJ8fAACoHwAArx8AALwfAAC8HwAAzB8AAMwfAAD8HwAA/B8AQcCzCgvTKIYCAABBAAAAWgAAAMAAAADWAAAA2AAAAN4AAAAAAQAAAAEAAAIBAAACAQAABAEAAAQBAAAGAQAABgEAAAgBAAAIAQAACgEAAAoBAAAMAQAADAEAAA4BAAAOAQAAEAEAABABAAASAQAAEgEAABQBAAAUAQAAFgEAABYBAAAYAQAAGAEAABoBAAAaAQAAHAEAABwBAAAeAQAAHgEAACABAAAgAQAAIgEAACIBAAAkAQAAJAEAACYBAAAmAQAAKAEAACgBAAAqAQAAKgEAACwBAAAsAQAALgEAAC4BAAAwAQAAMAEAADIBAAAyAQAANAEAADQBAAA2AQAANgEAADkBAAA5AQAAOwEAADsBAAA9AQAAPQEAAD8BAAA/AQAAQQEAAEEBAABDAQAAQwEAAEUBAABFAQAARwEAAEcBAABKAQAASgEAAEwBAABMAQAATgEAAE4BAABQAQAAUAEAAFIBAABSAQAAVAEAAFQBAABWAQAAVgEAAFgBAABYAQAAWgEAAFoBAABcAQAAXAEAAF4BAABeAQAAYAEAAGABAABiAQAAYgEAAGQBAABkAQAAZgEAAGYBAABoAQAAaAEAAGoBAABqAQAAbAEAAGwBAABuAQAAbgEAAHABAABwAQAAcgEAAHIBAAB0AQAAdAEAAHYBAAB2AQAAeAEAAHkBAAB7AQAAewEAAH0BAAB9AQAAgQEAAIIBAACEAQAAhAEAAIYBAACHAQAAiQEAAIsBAACOAQAAkQEAAJMBAACUAQAAlgEAAJgBAACcAQAAnQEAAJ8BAACgAQAAogEAAKIBAACkAQAApAEAAKYBAACnAQAAqQEAAKkBAACsAQAArAEAAK4BAACvAQAAsQEAALMBAAC1AQAAtQEAALcBAAC4AQAAvAEAALwBAADEAQAAxAEAAMcBAADHAQAAygEAAMoBAADNAQAAzQEAAM8BAADPAQAA0QEAANEBAADTAQAA0wEAANUBAADVAQAA1wEAANcBAADZAQAA2QEAANsBAADbAQAA3gEAAN4BAADgAQAA4AEAAOIBAADiAQAA5AEAAOQBAADmAQAA5gEAAOgBAADoAQAA6gEAAOoBAADsAQAA7AEAAO4BAADuAQAA8QEAAPEBAAD0AQAA9AEAAPYBAAD4AQAA+gEAAPoBAAD8AQAA/AEAAP4BAAD+AQAAAAIAAAACAAACAgAAAgIAAAQCAAAEAgAABgIAAAYCAAAIAgAACAIAAAoCAAAKAgAADAIAAAwCAAAOAgAADgIAABACAAAQAgAAEgIAABICAAAUAgAAFAIAABYCAAAWAgAAGAIAABgCAAAaAgAAGgIAABwCAAAcAgAAHgIAAB4CAAAgAgAAIAIAACICAAAiAgAAJAIAACQCAAAmAgAAJgIAACgCAAAoAgAAKgIAACoCAAAsAgAALAIAAC4CAAAuAgAAMAIAADACAAAyAgAAMgIAADoCAAA7AgAAPQIAAD4CAABBAgAAQQIAAEMCAABGAgAASAIAAEgCAABKAgAASgIAAEwCAABMAgAATgIAAE4CAABwAwAAcAMAAHIDAAByAwAAdgMAAHYDAAB/AwAAfwMAAIYDAACGAwAAiAMAAIoDAACMAwAAjAMAAI4DAACPAwAAkQMAAKEDAACjAwAAqwMAAM8DAADPAwAA0gMAANQDAADYAwAA2AMAANoDAADaAwAA3AMAANwDAADeAwAA3gMAAOADAADgAwAA4gMAAOIDAADkAwAA5AMAAOYDAADmAwAA6AMAAOgDAADqAwAA6gMAAOwDAADsAwAA7gMAAO4DAAD0AwAA9AMAAPcDAAD3AwAA+QMAAPoDAAD9AwAALwQAAGAEAABgBAAAYgQAAGIEAABkBAAAZAQAAGYEAABmBAAAaAQAAGgEAABqBAAAagQAAGwEAABsBAAAbgQAAG4EAABwBAAAcAQAAHIEAAByBAAAdAQAAHQEAAB2BAAAdgQAAHgEAAB4BAAAegQAAHoEAAB8BAAAfAQAAH4EAAB+BAAAgAQAAIAEAACKBAAAigQAAIwEAACMBAAAjgQAAI4EAACQBAAAkAQAAJIEAACSBAAAlAQAAJQEAACWBAAAlgQAAJgEAACYBAAAmgQAAJoEAACcBAAAnAQAAJ4EAACeBAAAoAQAAKAEAACiBAAAogQAAKQEAACkBAAApgQAAKYEAACoBAAAqAQAAKoEAACqBAAArAQAAKwEAACuBAAArgQAALAEAACwBAAAsgQAALIEAAC0BAAAtAQAALYEAAC2BAAAuAQAALgEAAC6BAAAugQAALwEAAC8BAAAvgQAAL4EAADABAAAwQQAAMMEAADDBAAAxQQAAMUEAADHBAAAxwQAAMkEAADJBAAAywQAAMsEAADNBAAAzQQAANAEAADQBAAA0gQAANIEAADUBAAA1AQAANYEAADWBAAA2AQAANgEAADaBAAA2gQAANwEAADcBAAA3gQAAN4EAADgBAAA4AQAAOIEAADiBAAA5AQAAOQEAADmBAAA5gQAAOgEAADoBAAA6gQAAOoEAADsBAAA7AQAAO4EAADuBAAA8AQAAPAEAADyBAAA8gQAAPQEAAD0BAAA9gQAAPYEAAD4BAAA+AQAAPoEAAD6BAAA/AQAAPwEAAD+BAAA/gQAAAAFAAAABQAAAgUAAAIFAAAEBQAABAUAAAYFAAAGBQAACAUAAAgFAAAKBQAACgUAAAwFAAAMBQAADgUAAA4FAAAQBQAAEAUAABIFAAASBQAAFAUAABQFAAAWBQAAFgUAABgFAAAYBQAAGgUAABoFAAAcBQAAHAUAAB4FAAAeBQAAIAUAACAFAAAiBQAAIgUAACQFAAAkBQAAJgUAACYFAAAoBQAAKAUAACoFAAAqBQAALAUAACwFAAAuBQAALgUAADEFAABWBQAAoBAAAMUQAADHEAAAxxAAAM0QAADNEAAAoBMAAPUTAACQHAAAuhwAAL0cAAC/HAAAAB4AAAAeAAACHgAAAh4AAAQeAAAEHgAABh4AAAYeAAAIHgAACB4AAAoeAAAKHgAADB4AAAweAAAOHgAADh4AABAeAAAQHgAAEh4AABIeAAAUHgAAFB4AABYeAAAWHgAAGB4AABgeAAAaHgAAGh4AABweAAAcHgAAHh4AAB4eAAAgHgAAIB4AACIeAAAiHgAAJB4AACQeAAAmHgAAJh4AACgeAAAoHgAAKh4AACoeAAAsHgAALB4AAC4eAAAuHgAAMB4AADAeAAAyHgAAMh4AADQeAAA0HgAANh4AADYeAAA4HgAAOB4AADoeAAA6HgAAPB4AADweAAA+HgAAPh4AAEAeAABAHgAAQh4AAEIeAABEHgAARB4AAEYeAABGHgAASB4AAEgeAABKHgAASh4AAEweAABMHgAATh4AAE4eAABQHgAAUB4AAFIeAABSHgAAVB4AAFQeAABWHgAAVh4AAFgeAABYHgAAWh4AAFoeAABcHgAAXB4AAF4eAABeHgAAYB4AAGAeAABiHgAAYh4AAGQeAABkHgAAZh4AAGYeAABoHgAAaB4AAGoeAABqHgAAbB4AAGweAABuHgAAbh4AAHAeAABwHgAAch4AAHIeAAB0HgAAdB4AAHYeAAB2HgAAeB4AAHgeAAB6HgAAeh4AAHweAAB8HgAAfh4AAH4eAACAHgAAgB4AAIIeAACCHgAAhB4AAIQeAACGHgAAhh4AAIgeAACIHgAAih4AAIoeAACMHgAAjB4AAI4eAACOHgAAkB4AAJAeAACSHgAAkh4AAJQeAACUHgAAnh4AAJ4eAACgHgAAoB4AAKIeAACiHgAApB4AAKQeAACmHgAAph4AAKgeAACoHgAAqh4AAKoeAACsHgAArB4AAK4eAACuHgAAsB4AALAeAACyHgAAsh4AALQeAAC0HgAAth4AALYeAAC4HgAAuB4AALoeAAC6HgAAvB4AALweAAC+HgAAvh4AAMAeAADAHgAAwh4AAMIeAADEHgAAxB4AAMYeAADGHgAAyB4AAMgeAADKHgAAyh4AAMweAADMHgAAzh4AAM4eAADQHgAA0B4AANIeAADSHgAA1B4AANQeAADWHgAA1h4AANgeAADYHgAA2h4AANoeAADcHgAA3B4AAN4eAADeHgAA4B4AAOAeAADiHgAA4h4AAOQeAADkHgAA5h4AAOYeAADoHgAA6B4AAOoeAADqHgAA7B4AAOweAADuHgAA7h4AAPAeAADwHgAA8h4AAPIeAAD0HgAA9B4AAPYeAAD2HgAA+B4AAPgeAAD6HgAA+h4AAPweAAD8HgAA/h4AAP4eAAAIHwAADx8AABgfAAAdHwAAKB8AAC8fAAA4HwAAPx8AAEgfAABNHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAF8fAABoHwAAbx8AALgfAAC7HwAAyB8AAMsfAADYHwAA2x8AAOgfAADsHwAA+B8AAPsfAAACIQAAAiEAAAchAAAHIQAACyEAAA0hAAAQIQAAEiEAABUhAAAVIQAAGSEAAB0hAAAkIQAAJCEAACYhAAAmIQAAKCEAACghAAAqIQAALSEAADAhAAAzIQAAPiEAAD8hAABFIQAARSEAAIMhAACDIQAAACwAAC8sAABgLAAAYCwAAGIsAABkLAAAZywAAGcsAABpLAAAaSwAAGssAABrLAAAbSwAAHAsAAByLAAAciwAAHUsAAB1LAAAfiwAAIAsAACCLAAAgiwAAIQsAACELAAAhiwAAIYsAACILAAAiCwAAIosAACKLAAAjCwAAIwsAACOLAAAjiwAAJAsAACQLAAAkiwAAJIsAACULAAAlCwAAJYsAACWLAAAmCwAAJgsAACaLAAAmiwAAJwsAACcLAAAniwAAJ4sAACgLAAAoCwAAKIsAACiLAAApCwAAKQsAACmLAAApiwAAKgsAACoLAAAqiwAAKosAACsLAAArCwAAK4sAACuLAAAsCwAALAsAACyLAAAsiwAALQsAAC0LAAAtiwAALYsAAC4LAAAuCwAALosAAC6LAAAvCwAALwsAAC+LAAAviwAAMAsAADALAAAwiwAAMIsAADELAAAxCwAAMYsAADGLAAAyCwAAMgsAADKLAAAyiwAAMwsAADMLAAAziwAAM4sAADQLAAA0CwAANIsAADSLAAA1CwAANQsAADWLAAA1iwAANgsAADYLAAA2iwAANosAADcLAAA3CwAAN4sAADeLAAA4CwAAOAsAADiLAAA4iwAAOssAADrLAAA7SwAAO0sAADyLAAA8iwAAECmAABApgAAQqYAAEKmAABEpgAARKYAAEamAABGpgAASKYAAEimAABKpgAASqYAAEymAABMpgAATqYAAE6mAABQpgAAUKYAAFKmAABSpgAAVKYAAFSmAABWpgAAVqYAAFimAABYpgAAWqYAAFqmAABcpgAAXKYAAF6mAABepgAAYKYAAGCmAABipgAAYqYAAGSmAABkpgAAZqYAAGamAABopgAAaKYAAGqmAABqpgAAbKYAAGymAACApgAAgKYAAIKmAACCpgAAhKYAAISmAACGpgAAhqYAAIimAACIpgAAiqYAAIqmAACMpgAAjKYAAI6mAACOpgAAkKYAAJCmAACSpgAAkqYAAJSmAACUpgAAlqYAAJamAACYpgAAmKYAAJqmAACapgAAIqcAACKnAAAkpwAAJKcAACanAAAmpwAAKKcAACinAAAqpwAAKqcAACynAAAspwAALqcAAC6nAAAypwAAMqcAADSnAAA0pwAANqcAADanAAA4pwAAOKcAADqnAAA6pwAAPKcAADynAAA+pwAAPqcAAECnAABApwAAQqcAAEKnAABEpwAARKcAAEanAABGpwAASKcAAEinAABKpwAASqcAAEynAABMpwAATqcAAE6nAABQpwAAUKcAAFKnAABSpwAAVKcAAFSnAABWpwAAVqcAAFinAABYpwAAWqcAAFqnAABcpwAAXKcAAF6nAABepwAAYKcAAGCnAABipwAAYqcAAGSnAABkpwAAZqcAAGanAABopwAAaKcAAGqnAABqpwAAbKcAAGynAABupwAAbqcAAHmnAAB5pwAAe6cAAHunAAB9pwAAfqcAAICnAACApwAAgqcAAIKnAACEpwAAhKcAAIanAACGpwAAi6cAAIunAACNpwAAjacAAJCnAACQpwAAkqcAAJKnAACWpwAAlqcAAJinAACYpwAAmqcAAJqn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ADAFAABXBQAAWAUAAIsFAACMBQAAkAUAAJAFAADIBQAAzwUAAOsFAADuBQAA9QUAAP8FAAAOBwAADgcAAEsHAABMBwAAsgcAAL8HAAD7BwAA/AcAAC4IAAAvCAAAPwgAAD8IAABcCAAAXQgAAF8IAABfCAAAawgAAG8IAACPCAAAjwgAAJIIAACXCAAAhAkAAIQJAACNCQAAjgkAAJEJAACSCQAAqQkAAKkJAACxCQAAsQkAALMJAAC1CQAAugkAALsJAADFCQAAxgkAAMkJAADKCQAAzwkAANYJAADYCQAA2wkAAN4JAADeCQAA5AkAAOUJAAD/CQAAAAoAAAQKAAAECgAACwoAAA4KAAARCgAAEgoAACkKAAApCgAAMQoAADEKAAA0CgAANAoAADcKAAA3CgAAOgoAADsKAAA9CgAAPQoAAEMKAABGCgAASQoAAEoKAABOCgAAUAoAAFIKAABYCgAAXQoAAF0KAABfCgAAZQoAAHcKAACACgAAhAoAAIQKAACOCgAAjgoAAJIKAACSCgAAqQoAAKkKAACxCgAAsQoAALQKAAC0CgAAugoAALsKAADGCgAAxgoAAMoKAADKCgAAzgoAAM8KAADRCgAA3woAAOQKAADlCgAA8goAAPgKAAAACwAAAAsAAAQLAAAECwAADQsAAA4LAAARCwAAEgsAACkLAAApCwAAMQsAADELAAA0CwAANAsAADoLAAA7CwAARQsAAEYLAABJCwAASgsAAE4LAABUCwAAWAsAAFsLAABeCwAAXgsAAGQLAABlCwAAeAsAAIELAACECwAAhAsAAIsLAACNCwAAkQsAAJELAACWCwAAmAsAAJsLAACbCwAAnQsAAJ0LAACgCwAAogsAAKULAACnCwAAqwsAAK0LAAC6CwAAvQsAAMMLAADFCwAAyQsAAMkLAADOCwAAzwsAANELAADWCwAA2AsAAOULAAD7CwAA/wsAAA0MAAANDAAAEQwAABEMAAApDAAAKQwAADoMAAA7DAAARQwAAEUMAABJDAAASQwAAE4MAABUDAAAVwwAAFcMAABbDAAAXAwAAF4MAABfDAAAZAwAAGUMAABwDAAAdgwAAI0MAACNDAAAkQwAAJEMAACpDAAAqQwAALQMAAC0DAAAugwAALsMAADFDAAAxQwAAMkMAADJDAAAzgwAANQMAADXDAAA3AwA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AD0AAwH//wAAQgCdAEcADQH//wAA//8AAP//AAD//wAA//8AAP//AABMACQB//8AAFIANwD//wAA//8AAFUAlwD//wAA//8AAP//AABYAIcA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAXABWAP//AABhANIA//8AAP//AAD//wAAZACBAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABsAI0A//8AAHEAJwB2ACcA//8AAP//AAB9ANMAgACaAP//AAD//wAAjQBaAP//AACSAM4A//8AAP//AACVAJkA//8AAKEA2AGuAFMAswBaAP//AAD//wAA//8AALkAoQC9AKEA//8AAMIAdADHAJwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADMAI0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAzgCUANMALQD//wAA//8AAP//AAD//wAA2ADIAf//AAD//wAA4gDbAf//AAD//wAA//8AAO8AHgH//wAA//8AAP//AAD//wAA+gATAgABGAL//wAA//8AAP//AAAHASUA//8AAP//AAD//wAA//8AAP//AAD//wAACQHtAf//AAD//wAAEgE4AP//AAD//wAAGQGRAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AACEBNwH//wAA//8AAP//AAD//wAAKwEIAv//AAD//wAA//8AAP//AAA1AW0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADoBGQL//wAA//8AAP//AABdAUQB//8AAP//AABlASYA//8AAGoB1AD//wAAhQGFAIgBkwD//wAA//8AAP//AAD//wAA//8AAP//AACNAcwAogE/AaoBvwH//wAAswHcAf//AAC9AY0AywEMAv//AAD//wAA//8AAP//AADsAZsA//8AAP//AAD//wAA//8AAP//AADxAegB/gG1AAMC+wEKAhgB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AABoCPAH//wAA//8AAP//AAD//wAA//8AACUC7wH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALwKPAP//AAD//wAA//8AADcCYgH//wAA//8AAP//AAD//wAAQAJ8AP//AABDApQA//8AAP//AAD//wAAUAILAv//AAD//wAA//8AAP//AAD//wAA//8AAFwClgD//wAA//8AAF8CKwD//wAA//8AAP//AABiAgACdAIRAf//AAD//wAA//8AAIICFgD//wAA//8AAIcC1wCNAmwA//8AAP//AACSAiUB//8AAP//AAD//wAA//8AAP//AAD//wAAngIWAP//AACnAgUCsQIGAv//AADAAjkA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADFAswA//8AAP//AAD//wAA//8AAMgCbwDeAn4A//8AAP//AAD//wAA4wJ+AP//AADpAtkA//8AAP//AADsAiMB//8AAP//AAD//wAA//8AAP//AAD//wAA9QJKAf//AAD//wAABAOBAQ8DHAEaAzQB//8AACEDnwH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAKAPrAf//AAD//wAA//8AADEDEwE0A5kA//8AAP//AAD//wAA//8AAP//AAD//wAAOQPSAP//AAD//wAA//8AAEwDOgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABPAyEB//8AAFgD1AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAXAP6Af//AAD//wAA//8AAP//AABkA9UA//8AAP//AABnA5EA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGwDIAL//wAA//8AAP//AAD//wAAfAOaAIEDnwD//wAAhgN0AP//AACPA2sA//8AAJQDbwD//wAA//8AAP//AACZAw0B//8AAP//AACgA34B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAwwMLAc8DIgD//wAA//8AAP//AAD//wAA1AMOAP//AADaAzcA//8AAP//AADlAxUA//8AAP//AADsA6AB/wPjAf//AAD//wAA//8AABQEewD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAGwT/Af//AAD//wAA//8AAP//AAD//wAAKQSmAf//AAD//wAA//8AAP//AAD//wAA//8AADcE2gH//wAA//8AAEkEswFhBHMA//8AAP//AABmBHMAbgStAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAiwR7AP//AACNBPgB//8AAP//AAD//wAAlAS3Af//AAD//wAA//8AAP//AAD//wAA//8AAJ8EQQK4BDQCxwSrAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA1AQXAuIECwHnBEYC//8AAP//AAD//wAA//8AAP//AAD2BD8C//8AAP//AAD//wAA//8AAP//AAACBc0B//8AAP//AAD//wAA//8AAP//AAAMBTUB//8AAP//AAASBSEA//8AABkFwQH//wAA//8AAP//AAD//wAA//8AAP//AAAlBW0B//8AAP//AABJBaAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFMFDAFYBdYA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAZwVZAP//AAD//wAA//8AAP//AABuBXcA//8AAP//AAD//wAAcwVPAX8F5QH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAjAVVAJMFvAH//wAA//8AAP//AACkBZsA//8AAP//AAC0BXUA//8AAP//AAC5BSsA//8AAP//AADBBcoA0wU1Av//AAD//wAA//8AAP//AAD//wAA2wXmAP//AADeBYkA//8AAP//AAD//wAA//8AAOEFJgH//wAA//8AAP//AAD//wAA//8AAOsFlgEEBk4C//8AACsG6AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAC4GaQAyBtkB//8AAP//AAD//wAA//8AAP//AAD//wAARAbIAP//AABJBr4B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFIGMQL//wAA//8AAP//AAD//wAA//8AAFkGZwD//wAAawYfAnwGhgH//wAA//8AAIkG6wCOBhoA//8AAP//AAD//wAAlAZmAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AALIGOgL//wAA//8AAP//AADABhwAxQZYAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADLBhwA//8AANEGygD//wAA//8AAP//AAD//wAA//8AAP//AADXBjIB//8AAOMGkwH//wAA//8AAP//AAD//wAA//8AAP//AAD5BiECDgcbAP//AAD//wAA//8AAP//AAD//wAA//8AABMHagD//wAA//8AABcHBwD//wAA//8AAB0HuQH//wAA//8AADAHTAE6BycC//8AAP//AAD//wAA//8AAP//AABLByUC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGUH3QD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGoHlQH//wAAeAf1AX8H3QD//wAA//8AAP//AACJB9wA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACLB3EAkQdlAf//AAD//wAAoweDAKgHywCtB2sB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMQHKALiB3MB//8AAAII5wD//wAA//8AAAUIPgL//wAAKgjEAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA1CM0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADgIswD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAD0IDQD//wAA//8AAP//AAD//wAA//8AAP//AABDCG0A//8AAEgI/QH//wAA//8AAP//AABVCBYB//8AAP//AAD//wAA//8AAP//AABmCJgBcwhIAf//AAB7COAB//8AAIcIaQD//wAA//8AAP//AAD//wAA//8AAJII4gH//wAA//8AAKMI3wD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAApghoAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKsIpAG8CAYA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADCCBkA//8AAMcIgAH//wAA//8AAP//AADSCMsB5gjGAf//AAD//wAA8AgCAP//AAD//wAA9ggZAQ8JNAD//wAA//8AAP//AAAYCdUB//8AACEJ0QD//wAA//8AACwJNAD//wAAMQkdADkJkwD//wAA//8AAEEJMgL//wAA//8AAP//AAD//wAA//8AAEoJWQD//wAA//8AAFcJGQBgCWoA//8AAP//AAD//wAAaAkvAf//AABwCfIB//8AAP//AAD//wAA//8AAP//AAB6CS4A//8AAH8JLQD//wAAhglyAI0J7gGYCVcA//8AAP//AAD//wAA//8AAKUJPgH//wAA//8AAP//AACtCSkA//8AAP//AACzCaIB//8AAP//AADLCXkA0gm7Af//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADoCdsA7Ql2AP//AAD//wAA//8AAP//AADyCZIA/QmIAAcKJgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AABoKUgEkCp0A//8AAP//AAApCjoB//8AAP//AAD//wAANAp6AP//AAD//wAA//8AAP//AAA5CjAA//8AAD4KDQL//wAA//8AAFcKhAD//wAA//8AAP//AABaChEB//8AAP//AABdCjMB//8AAP//AAD//wAA//8AAP//AABnCvMB//8AAP//AABzCgwB//8AAP//AAD//wAA//8AAHwKCwD//wAAgwofAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAiQo1AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACUCvcB//8AAP//AAD//wAAngorAv//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAtAoRALkKNQD//wAA//8AAP//AAD//wAA//8AAL4KeADDCucB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAM8K9AH//wAA2QoaAP//AADeCm4A//8AAP//AADzClwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD4CqAA//8AAP//AAD//wAA//8AAP0KdQEOC0kB//8AAP//AAD//wAA//8AAP//AAD//wAAGgsQAB8LyQH//wAA//8AAP//AAD//wAA//8AACcLXAE8C1MA//8AAEULdgBQC+UA//8AAP//AAD//wAA//8AAFgLeAD//wAA//8AAP//AAD//wAA//8AAF4L4AD//wAAZAt8AP//AAD//wAAcAuiAP//AAD//wAAeAtcAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAhQuVAP//AACKCx0B//8AAP//AACfCzgB//8AAKoLVQD//wAA//8AAP//AAD//wAA//8AAP//AACvC6UBxAtUAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAzwvXAN0LAgH//wAA4wuKAf//AAAEDHEAEAzbAP//AAD//wAA//8AAP//AAD//wAA//8AABYMRQH//wAA//8AAP//AAD//wAA//8AAP//AAAiDEsA//8AACgMTAJJDFYA//8AAP//AAD//wAA//8AAP//AABRDPYB//8AAFsM0wH//wAA//8AAP//AAD//wAA//8AAP//AABkDBAA//8AAP//AAD//wAAagyKAP//AABtDBwC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAIEMcgD//wAAhgwsAf//AACRDO0A//8AAP//AAD//wAA//8AAP//AAD//wAAmwzhAf//AAD//wAA//8AAP//AACqDPUAsAwKAsIMuwDIDJABzgwhAP//AAD//wAA//8AANMMZAH//wAA7AwFAfAMBQH//wAA//8AAPUM3gD//wAA//8AAP//AAD//wAA//8AAP//AAD6DF0A//8AAP8M8gD//wAA//8AAP//AAAFDW0A//8AAA8NywD//wAA//8AABkNEAEeDQgA//8AACQNggD//wAA//8AAP//AAD//wAAKQ1dADIN9QD//wAA//8AAP//AAD//wAANw3SAf//AAD//wAA//8AAP//AABDDYQB//8AAEwNhwBiDQQC//8AAG4NSgL//wAA//8AAI8NWACeDcoB//8AAP//AACoDewB//8AAP//AAC2DV4A//8AAP//AAD//wAA//8AALoNXgC/DYAA//8AAP//AADFDTYA//8AANAN2AD//wAA//8AANgNYQD//wAA3Q2EAP//AAD//wAA//8AAP//AAD//wAA//8AAO0NAwD//wAA8w2MAf//AAD//wAACg6CAP//AAD//wAA//8AAP//AAD//wAAEg4RAv//AAApDmEA//8AAP//AAD//wAA//8AADEO8QE6DloBVA5nAf//AABsDhMA//8AAP//AACBDqQA//8AAIMOTQD//wAA//8AAJEO6QD//wAA//8AAP//AAD//wAAlA5lAP//AAD//wAA//8AAJkO4wD//wAA//8AAP//AAD//wAA//8AAP//AACeDoAA//8AAKMOHgD//wAAqA5uAP//AACtDqYA//8AAP//AAC5DqwAvA7eAP//AADHDhQC0A4yANQOHgD//wAA//8AAN4OGwHvDqoA8w6qAPgO+gD//wAA//8AAP0OvAADD7YA//8AAAgP9wD//wAADQ/3ABQPmgH//wAA//8AAB4PxgD//wAA//8AACAPLgH//wAAKA/kATEPIAE6D9QB//8AAP//AABHD8cBUQ8fAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAXQ89Av//AAB9DwkB//8AAIIPogD//wAA//8AAIcP1gGdD+UA//8AAP//AACiD+IA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKoPfQH//wAA//8AAP//AAD//wAA//8AALsPlwD//wAAyQ8VAM4P8AH//wAA//8AAOYPIgD//wAA7g9BAf//AAD4D70A//8AAP//AAD9Dx0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAAhAUAQ8QrwH//wAA//8AACoQPQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALxDZAP//AAD//wAA//8AAEEQPAJiEE4A//8AAHQQWwH//wAA//8AAP//AAD//wAA//8AAIQQfwCJEPwBkRAsAP//AAD//wAA//8AAP//AACYEIsAnRCLAP//AAD//wAApBBEAP//AACoEL0B//8AAP//AAD//wAAtxBAAP//AAD//wAAuhBFAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAL8QAwHHEFcA//8AAM4QowD//wAA//8AANMQowD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AANsQSwL//wAA/BBNAP//AAD//wAA//8AAP//AAABEWoB//8AABMRDgL//wAAIRFVAf//AAD//wAA//8AADcRAAH//wAA//8AADwRVABBEfQA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEkRDwBXEb8A//8AAFsRxgD//wAA//8AAP//AABnEQYB//8AAP//AAD//wAAahHtAG8RAQJ5EdAB//8AAP//AAD//wAA//8AAP//AAD//wAAixFQAZMRlAH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKQRIgL//wAA//8AAKwRNgH//wAA//8AAP//AAC2EasB//8AAP//AAD//wAA//8AAMYRYgDNEWkB//8AAP//AAD//wAA//8AAP//AAD//wAA3RHmAecRbAH//wAA//8AAPIR6QH//wAA//8AAPwRKgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAJEkwA//8AAP//AAD//wAAGBKHAf//AAD//wAA//8AAP//AAA1EmsAQRI5AP//AABIEmEB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFYSYgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFsSiQH//wAA//8AAG4SHgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAfhLJAIwSGACUEikB//8AAP//AAD//wAAphLqAP//AAD//wAArhK3ALMSGgL//wAAvBI5AMESBQD//wAA//8AAP//AAD//wAAxxLBAP//AAD//wAAzBImAv//AAD//wAA5hLdAf4SRAD//wAACBPeAf//AAD//wAA//8AAP//AAAfEykC//8AAP//AAAvE54B//8AAP//AAD//wAA//8AAP//AABCE1ACSRNwAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAE4TPAD//wAAUxOmAP//AAD//wAA//8AAP//AAD//wAAWBPJAF8T8gD//wAAZBPCAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGkT4AD//wAAehNsAP//AAD//wAA//8AAIoT+gCeE4wAoxOMAP//AACqEyAA//8AAP//AAD//wAArxNwAP//AAC4EzEA//8AALwTQwLWE8UB//8AAP//AADjE0AC//8AAP//AAD//wAA//8AAPgTbwH//wAAChSwAR8UKAD//wAA//8AAP//AAAtFI4B//8AAP//AAD//wAA//8AAP//AAD//wAAOhRUAkQUsQH//wAA//8AAP//AAD//wAAVBQ7Af//AAD//wAA//8AAP//AABpFOEA//8AAP//AAD//wAA//8AAHEUTgH//wAAfBRWAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAI4UDACTFHEB//8AALcU9gD//wAAvBSxAMEUZwD//wAA//8AAP//AADGFMMA//8AAP//AAD//wAAzRSnANsUGAD//wAA4BR6Af//AAD//wAA//8AAP//AAD0FLEA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAPwU4QD//wAA//8AAAEVKgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAFhWhASAVAQH//wAA//8AACUVfwH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABAFSAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEkVjwH//wAA//8AAP//AABQFcMB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFwV4wBkFRAB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAB0FRcA//8AAP//AAD//wAAfRWYAP//AACCFc4AkxW4AJgV6wD//wAA//8AAP//AACkFVECwxU5AdAVmADcFdAA4RUJAv//AAD//wAA8hV2AfsVJwH//wAA//8AAP//AAD//wAADhacAf//AAD//wAAJBY+AP//AAD//wAA//8AAP//AAD//wAA//8AACkWJAL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEMWUwH//wAA//8AAFcWWwD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFwWMwD//wAAYBZbAP//AAD//wAA//8AAGkWlgD//wAA//8AAHUWAQB7FpAA//8AAIAW0QH//wAA//8AAIwWkAD//wAA//8AAP//AAD//wAAlhYJAP//AAD//wAAnBZRAf//AAD//wAA//8AAKUWyAD//wAA//8AAP//AAD//wAArxbsAP//AAD//wAA//8AAP//AAD//wAA//8AALQWnAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADIFjsA//8AAM0WMAH//wAA//8AANYWmQH//wAA6xbXAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD9FkIAAhf7AP//AAD//wAA//8AAP//AAAHF/sADhcjABMX/AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAGBfqAP//AAAdF4kA//8AAP//AAD//wAALRcsAv//AAD//wAA//8AAE8XuQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFQXKgD//wAA//8AAP//AABmF5IB//8AAG4XQgD//wAA//8AAHYXdwGLFyMA//8AAJQXDwH//wAA//8AAP//AAD//wAA//8AAJ4XtAH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAshf/AP//AAD//wAA//8AALcX6gH//wAA//8AAP//AADAF6cA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMMX0QD//wAA//8AAP//AAD//wAA//8AAP//AADIF6kA//8AAP//AAD//wAA//8AAM0XGgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAOkXjgDuF18B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AABQYtgD//wAAHxiOAP//AAAoGPMA//8AAP//AAD//wAAMBioADoYAAD//wAA//8AAEIY7wD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABHGPkB//8AAP//AAD//wAAXRgCAv//AAD//wAAixjiAP//AAD//wAA//8AAP//AAD//wAAkBgkAJUYBwGeGKQA//8AAP//AAD//wAApRgtArkYBgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAyxhQAP//AADQGH8A//8AAP//AAD//wAA1xj/AP//AAD//wAA3xhgAP//AAD//wAA//8AAP//AAD//wAA//8AAOQYDwD//wAA//8AAP//AAD//wAA//8AAP//AADpGMAB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP4YCAH//wAA//8AAP//AAD//wAABRlPAv//AAD//wAA//8AAP//AAAmGXkA//8AAP//AAD//wAA//8AAP//AAD//wAAKxk7AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA1GSMC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEAZAQFJGUcC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGoZtQD//wAA//8AAP//AAD//wAAdBlZAf//AAD//wAA//8AAP//AAD//wAA//8AAJoZegD//wAA//8AAP//AAD//wAApBn4AKkZ7wD//wAA//8AALAZ8QD//wAA//8AAP//AAD//wAAuRmFAP//AAD//wAA//8AAP//AAD//wAAyBleAf//AADaGTAC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADxGfYA//8AAP//AAD//wAA//8AAPcZqAD//wAA/BnCAf//AAD//wAA//8AAAUaPQEqGggB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALxpNAVMasABYGvkAXRpoAP//AAD//wAA//8AAP//AABwGisBehqrAP//AAD//wAA//8AAP//AAB9GjoA//8AAP//AAD//wAA//8AAP//AAD//wAAhxpOAP//AAD//wAAjRpfAJIaSwH//wAA//8AAP//AAD//wAA//8AAJ0a5wCoGswB//8AAP//AACzGgcB//8AAP//AAD//wAAuBp8Af//AAD//wAA//8AAP//AAD//wAA0BotAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA2xp0AegaBwL//wAA//8AAP//AAD3GtAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP8aLwAEG60AChvBABobCgH//wAA//8AAP//AAD//wAA//8AAP//AAAlG7gBOBvkAP//AAD//wAA//8AAD0bJQD//wAA//8AAP//AAD//wAA//8AAEMbZQD//wAATBuXAVYbrABiG5sB//8AAP//AAD//wAA//8AAP//AABrG7wAcBtJAv//AAD//wAA//8AAP//AAD//wAAkRtAAZsbFQL//wAA//8AAP//AAD//wAA//8AAKYb+AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAK0bxwCyG4gB//8AAP//AAD//wAA//8AAP//AAD//wAA0BvfAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAN8bRwH//wAA//8AAOcbQgH//wAA//8AAP//AAD//wAA//8AAO8bowEDHO4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAAgcPwD//wAADRwJAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAYHL4AHxyzAP//AAD//wAA//8AACkcNwL//wAA//8AAP//AAD//wAA//8AAD8cEwH//wAAThwVAf//AAD//wAA//8AAP//AABhHL4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAHEcMAD//wAAhxy6Af//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAlxxGAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADEHCQA//8AAP//AAD//wAAyhydAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADVHD4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADeHEYA//8AAOQcrQD//wAA//8AAP//AAD//wAA//8AAP//AAD6HKcB//8AAP//AAD//wAADB0bAP//AAAVHWAB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AACkdsgE+HTgC//8AAP//AAD//wAA//8AAP//AABkHbsA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAaR2sAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAB6HTIAkB1GAP//AAD//wAA//8AAP//AAD//wAAlR1jAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAJodQwH//wAA//8AAP//AAD//wAA//8AAP//AAClHXgB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAsB2CAf//AAD//wAA//8AAP//AAD//wAA//8AALsdtADAHdoA//8AAP//AADFHa4B4x1NAv//AAAEHkgC//8AAP//AAD//wAA//8AACAesgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALR7PAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA+HgMCSh7fAf//AAD//wAA//8AAP//AAD//wAAWx4SAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAF4e1gD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGMetQH//wAA//8AAP//AAD//wAA//8AAP//AAB+Hp4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAI0eQwD//wAA//8AAP//AAD//wAA//8AAP//AACSHvQAlx6vAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACcHkMA//8AAP//AAD//wAA//8AAP//AACnHncA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAC5HnUA//8AAP//AAD//wAA//8AAMEeEgL//wAA0x7uAP//AAD//wAA3x79AP//AAD//wAA//8AAOQeTwD//wAA6h79AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA8h5JAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD3Hr0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD/Hv4B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAAwfuQD//wAA//8AAP//AAD//wAA//8AABYfMQD//wAA//8AAP//AAD//wAALB89ADgfeQH//wAA//8AAP//AAD//wAASx9PAP//AAD//wAAXR8UAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAYR/DAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAcB+6AHUfHwF+H+kA//8AAIkfYwH//wAA//8AAKEfQgK1HzkCxB9fAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADLH1IA//8AAP//AADPH8QA1R8bAv//AAD//wAA//8AAOgfhgD//wAA//8AAPQfpQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA+R+lAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAAMgrgAIIBIB//8AAP//AAD//wAA//8AAP//AAAbICgB//8AAP//AAD//wAA//8AAP//AAAtIC4C//8AAP//AAD//wAA//8AAP//AAA+IDMA//8AAP//AAD//wAA//8AAFQgsgBZIDsCaCAiAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAeyCLAf//AAD//wAA//8AAJMgVwH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKggxQC3IMIA//8AAP//AAD//wAA//8AAMQgSQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMwgSgD//wAA//8AAP//AADRICwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA1CA2Av//AAD//wAA6CDoAP//AAD//wAA//8AAP//AAD0IFIA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD9IFEA//8AAP//AAD//wAA//8AAP//AAAFIQoB//8AAP//AAD//wAADCHPAP//AAAPIUoA//8AAP//AAD//wAA//8AAP//AAAXIR0C//8AACohPAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAyIdwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAOSGRAf//AABNIV0B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABpIY0B//8AAP//AAD//wAA//8AAP//AAD//wAAdyFYAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACWIbcA//8AAP//AAChIVQB//8AAP//AAD//wAA//8AAP//AAD//wAAtCETAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAuSEEAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAvyGoAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AANUhqgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAPAhFgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA/iGwAP//AAD//wAA//8AAP//AAD//wAA//8AAAQibgH//wAA//8AABoixQD//wAA//8AACEiKgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AACYixAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADAirgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADYi7AA+IhcB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAE8iEgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABaIkQC//8AAP//AABwInIB//8AAP//AAD//wAAlCK/AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAsyJBAP//AAD//wAAviK0AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAziLPAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA4SJRAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD2IgIB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAHI8cA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAEyNFAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAB4j5AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAKiPxAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAvI/4A//8AAP//AAA4IwoA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAD4jtgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAWyMEAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGUjUAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABuI+YA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAfSPTAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACOI9oA//8AAJUjMwL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAqSP+AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAK4jZAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AALIjewH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAzCPwAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADRI84B//8AAP//AAD//wAA//8AAOIj8AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADqI2AA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAPkjTAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP8jLwL//wAA//8AAP//AAD//wAA//8AABYkZAD//wAAHyQvAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA1JM0A//8AAP//AAD//wAA//8AAP//AABFJLgAVSRHAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAWiQPAv//AABwJPkA//8AAP//AAD//wAAdySKAP//AAD//wAA//8AAP//AAD//wAA//8AAIckEAL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACqJGYA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACxJGMA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AALgkqQH//wAA//8AAMkkOAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAM4kwAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADVJMAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAOkkQQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAO0kcAH//wAA//8AAAMlQAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAdJYMB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA3JboA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEElUgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABgJYUB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABzJUUC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACXJa8A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKwl1QD//wAA//8AAP//AAD//wAA//8AAP//AAC8JUgA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADBJUcA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMolaAH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA1yVIAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAOslUwJsYW5hAGxpbmEAegB5aQBtbgBjbgBtYWthAHlpaWkAbWFuaQBpbmthbm5hZGEAY2kAbG8AbGFvAGxhb28Aenp6egBtaWFvAHllemkAaW5ua28AY28AbWUAbG9lAGdyYW4AcGkAbGluZWFyYQBtYXJrAGNhcmkAY2FyaWFuAHBvAG1lbmRla2lrYWt1aQBncmVrAHBlAG1lZXRlaW1heWVrAGlua2hhcm9zaHRoaQBnZW9yAGdyZWVrAG1ybwBtcm9vAGthbmEAbWVybwBtAGdvbm0AY2FrbQBpbm9zbWFueWEAaW5tYW5pY2hhZWFuAGluYXJtZW5pYW4AaW5tcm8AaW5taWFvAGMAaW5jaGFrbWEAY29tbW9uAG1hbmRhaWMAaW5teWFubWFyAGlubWFrYXNhcgBxYWFpAGluaWRlb2dyYXBoaWNzeW1ib2xzYW5kcHVuY3R1YXRpb24AaW5raG1lcgBjYW5zAHByZXBlbmRlZGNvbmNhdGVuYXRpb25tYXJrAGxtAG1hcmMAY29ubmVjdG9ycHVuY3R1YXRpb24AaW5ydW5pYwBpbmNhcmlhbgBpbmF2ZXN0YW4AY29tYmluaW5nbWFyawBpbmN1bmVpZm9ybW51bWJlcnNhbmRwdW5jdHVhdGlvbgBtZXJjAGluY2hvcmFzbWlhbgBwZXJtAGluYWhvbQBpbmlwYWV4dGVuc2lvbnMAaW5jaGVyb2tlZQBpbnNoYXJhZGEAbWFrYXNhcgBpbmFycm93cwBsYwBtYXNhcmFtZ29uZGkAaW5jdW5laWZvcm0AbWMAY2MAaW56YW5hYmF6YXJzcXVhcmUAbGluZXNlcGFyYXRvcgBhcm1uAHFtYXJrAGFybWkAaW5zYW1hcml0YW4AYXJtZW5pYW4AaW5tYXJjaGVuAGlubWFzYXJhbWdvbmRpAHFhYWMAcGMAaW5zY3JpcHRpb25hbHBhcnRoaWFuAGxhdG4AbGF0aW4AcmkAaW50aGFhbmEAaW5raG1lcnN5bWJvbHMAaW5rYXRha2FuYQBpbmN5cmlsbGljAGludGhhaQBpbmNoYW0AaW5rYWl0aGkAenMAbXRlaQBpbml0aWFscHVuY3R1YXRpb24AY3MAaW5zeXJpYWMAcGNtAGludGFrcmkAcHMAbWFuZABpbmthbmFleHRlbmRlZGEAbWVuZABtb2RpAGthdGFrYW5hAGlkZW8AcHJ0aQB5ZXppZGkAaW5pZGVvZ3JhcGhpY2Rlc2NyaXB0aW9uY2hhcmFjdGVycwB4aWRjb250aW51ZQBicmFpAGFzY2lpAHByaXZhdGV1c2UAYXJhYmljAGlubXlhbm1hcmV4dGVuZGVkYQBpbnJ1bWludW1lcmFsc3ltYm9scwBsZXR0ZXIAaW5uYW5kaW5hZ2FyaQBpbm1lZXRlaW1heWVrAGlub2xkbm9ydGhhcmFiaWFuAGluY2prY29tcGF0aWJpbGl0eWZvcm1zAGtuZGEAa2FubmFkYQBpbmNqa2NvbXBhdGliaWxpdHlpZGVvZ3JhcGhzAGwAaW5tb2RpAGluc3BlY2lhbHMAaW50cmFuc3BvcnRhbmRtYXBzeW1ib2xzAGlubWVuZGVraWtha3VpAGxldHRlcm51bWJlcgBpbm1lZGVmYWlkcmluAHhpZGMAaW5jaGVzc3N5bWJvbHMAaW5lbW90aWNvbnMAaW5saW5lYXJhAGlubGFvAGJyYWhtaQBpbm9sZGl0YWxpYwBpbm1pc2NlbGxhbmVvdXNtYXRoZW1hdGljYWxzeW1ib2xzYQBtb25nb2xpYW4AeGlkcwBwc2FsdGVycGFobGF2aQBncmxpbmsAa2l0cwBpbnN1bmRhbmVzZQBpbm9sZHNvZ2RpYW4AZ290aGljAGluYW5jaWVudHN5bWJvbHMAbWVyb2l0aWNjdXJzaXZlAGthbGkAY29udHJvbABwYXR0ZXJud2hpdGVzcGFjZQBpbmFkbGFtAHNrAGx0AGlubWFuZGFpYwBpbmNvbW1vbmluZGljbnVtYmVyZm9ybXMAaW5jamtjb21wYXRpYmlsaXR5aWRlb2dyYXBoc3N1cHBsZW1lbnQAc28AaWRjAGlub2xkc291dGhhcmFiaWFuAHBhbG0AaW5seWNpYW4AaW50b3RvAGlkc2JpbmFyeW9wZXJhdG9yAGlua2FuYXN1cHBsZW1lbnQAaW5jamtzdHJva2VzAHNvcmEAYmFtdW0AaW5vcHRpY2FsY2hhcmFjdGVycmVjb2duaXRpb24AaW5kb21pbm90aWxlcwBiYXRrAGdyZXh0AGJhdGFrAHBhdHdzAGlubWFsYXlhbGFtAGlubW9kaWZpZXJ0b25lbGV0dGVycwBpbnNtYWxsa2FuYWV4dGVuc2lvbgBiYXNzAGlkcwBwcmludABpbmxpbmVhcmJpZGVvZ3JhbXMAaW50YWl0aGFtAGlubXVzaWNhbHN5bWJvbHMAaW56bmFtZW5ueW11c2ljYWxub3RhdGlvbgBzYW1yAGluc3lsb3RpbmFncmkAaW5uZXdhAHNhbWFyaXRhbgBzAGpvaW5jAGluY29udHJvbHBpY3R1cmVzAGxpc3UAcGF1YwBpbm1pc2NlbGxhbmVvdXNzeW1ib2xzAGluYW5jaWVudGdyZWVrbXVzaWNhbG5vdGF0aW9uAGlubWlzY2VsbGFuZW91c3N5bWJvbHNhbmRhcnJvd3MAc20AaW5taXNjZWxsYW5lb3Vzc3ltYm9sc2FuZHBpY3RvZ3JhcGhzAGludWdhcml0aWMAcGQAaXRhbABhbG51bQB6aW5oAGlud2FyYW5nY2l0aQBpbmxhdGluZXh0ZW5kZWRhAGluc2F1cmFzaHRyYQBpbnRhaWxlAGlub2xkdHVya2ljAGlkY29udGludWUAaW5oYW5pZmlyb2hpbmd5YQBzYwBpZHN0AGlubGF0aW5leHRlbmRlZGUAbG93ZXIAYmFsaQBpbmhpcmFnYW5hAGluY2F1Y2FzaWFuYWxiYW5pYW4AaW5kZXNlcmV0AGJsYW5rAGluc3BhY2luZ21vZGlmaWVybGV0dGVycwBjaGVyb2tlZQBpbmx5ZGlhbgBwaG9lbmljaWFuAGNoZXIAYmVuZ2FsaQBtYXJjaGVuAGlud2FuY2hvAGdyYXBoZW1lbGluawBiYWxpbmVzZQBpZHN0YXJ0AGludGFtaWwAaW5tdWx0YW5pAGNoYW0AY2hha21hAGthaXRoaQBpbm1haGFqYW5pAGdyYXBoZW1lYmFzZQBpbm9naGFtAGNhc2VkAGlubWVldGVpbWF5ZWtleHRlbnNpb25zAGtob2praQBpbmFuY2llbnRncmVla251bWJlcnMAcnVucgBraGFyAG1hbmljaGFlYW4AbG93ZXJjYXNlAGNhbmFkaWFuYWJvcmlnaW5hbABpbm9sY2hpa2kAcGxyZABpbmV0aGlvcGljAHNpbmQAY3djbQBpbmVhcmx5ZHluYXN0aWNjdW5laWZvcm0AbGwAemwAaW5zaW5oYWxhAGlua2h1ZGF3YWRpAHhpZHN0YXJ0AHhkaWdpdABiaWRpYwBjaG9yYXNtaWFuAGluc2lkZGhhbQBpbmNvdW50aW5ncm9kbnVtZXJhbHMAYWhvbQBjaHJzAGtobXIAaW5vbGR1eWdodXIAaW5ncmFudGhhAGJhbXUAaW5zY3JpcHRpb25hbHBhaGxhdmkAZ29uZwBtb25nAGlubGF0aW5leHRlbmRlZGMAaW5uZXd0YWlsdWUAYWRsbQBpbm9zYWdlAGluZ2VuZXJhbHB1bmN0dWF0aW9uAGdlb3JnaWFuAGtoYXJvc2h0aGkAc2luaGFsYQBraG1lcgBzdGVybQBjYXNlZGxldHRlcgBtdWx0YW5pAGd1bmphbGFnb25kaQBtYXRoAGluY3lyaWxsaWNzdXBwbGVtZW50AGluZ2VvcmdpYW4AZ290aABpbmNoZXJva2Vlc3VwcGxlbWVudABnbGFnb2xpdGljAHF1b3RhdGlvbm1hcmsAdWlkZW8AaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmEAam9pbmNvbnRyb2wAcnVuaWMAaW5tb25nb2xpYW4AZW1vamkAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmUAZ3JhbnRoYQBpbnRpcmh1dGEAaW5oYXRyYW4AYWRsYW0AbHUAaW5raGl0YW5zbWFsbHNjcmlwdABrdGhpAGluZ3VybXVraGkAc3VuZGFuZXNlAGlub2xkaHVuZ2FyaWFuAHRha3JpAGludGFtaWxzdXBwbGVtZW50AG9yaXlhAGludmFpAGJyYWgAaW5taXNjZWxsYW5lb3VzdGVjaG5pY2FsAHZhaQB2YWlpAHNhdXIAZ3VydQB0YWlsZQBpbmhlcml0ZWQAcGF1Y2luaGF1AHphbmIAcHVuY3QAbGluYgBndXJtdWtoaQB0YWtyAGlubmFiYXRhZWFuAGlua2FuYnVuAGxvZ2ljYWxvcmRlcmV4Y2VwdGlvbgBpbmJoYWlrc3VraQBpbmNqa3VuaWZpZWRpZGVvZ3JhcGhzZXh0ZW5zaW9uYwBncmFwaGVtZWV4dGVuZABpbmVsYmFzYW4AaW5zb3Jhc29tcGVuZwBoYW4AaGFuaQBsaW1idQB1bmFzc2lnbmVkAHJhZGljYWwAaGFubwBsb3dlcmNhc2VsZXR0ZXIAY250cmwAaW5jamt1bmlmaWVkaWRlb2dyYXBocwBsaW5lYXJiAGluYW5hdG9saWFuaGllcm9nbHlwaHMAaGFudW5vbwBpbmtob2praQBpbmxhdGluZXh0ZW5kZWRhZGRpdGlvbmFsAGluZW5jbG9zZWRhbHBoYW51bWVyaWNzAGFuYXRvbGlhbmhpZXJvZ2x5cGhzAG4AZW1vamltb2RpZmllcgBzZABoaXJhAHNpZGQAbGltYgBiaGtzAHBobGkAbmFuZGluYWdhcmkAbm8Ac2F1cmFzaHRyYQBpbnRhbmdzYQBjd3QAYmhhaWtzdWtpAGluZ3JlZWthbmRjb3B0aWMAbmtvAG5rb28AdGVybQBvc2FnZQB4cGVvAHRuc2EAdGFuZ3NhAGlua2F5YWhsaQBwAGlub3JpeWEAaW55ZXppZGkAaW5hcmFiaWMAaW5waG9lbmljaWFuAGluc2hhdmlhbgBiaWRpY29udHJvbABpbmVuY2xvc2VkaWRlb2dyYXBoaWNzdXBwbGVtZW50AHdhcmEAbXVsdABpbm1lcm9pdGljaGllcm9nbHlwaHMAc2luaABzaGF2aWFuAGlua2FuZ3hpcmFkaWNhbHMAZW5jbG9zaW5nbWFyawBhcmFiAGluc2luaGFsYWFyY2hhaWNudW1iZXJzAGJyYWlsbGUAaW5oYW51bm9vAG9zbWEAYmVuZwBpbmJhc2ljbGF0aW4AaW5hcmFiaWNwcmVzZW50YXRpb25mb3Jtc2EAY3BtbgByZWdpb25hbGluZGljYXRvcgBpbmVuY2xvc2VkYWxwaGFudW1lcmljc3VwcGxlbWVudABlbW9qaW1vZGlmaWVyYmFzZQBpbmdyZWVrZXh0ZW5kZWQAbGVwYwBpbmRvZ3JhAGZvcm1hdABseWNpAGx5Y2lhbgBkaWEAaW5waGFpc3Rvc2Rpc2MAZGkAZGlhawB1bmtub3duAGdyYmFzZQBteW1yAG15YW5tYXIAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmQAZW1vZABpbmdlb21ldHJpY3NoYXBlcwBpbmN5cHJvbWlub2FuAGluc3VuZGFuZXNlc3VwcGxlbWVudAB0b3RvAGdsYWcAdGFpdmlldABhc2NpaWhleGRpZ2l0AG9kaQBwdW5jdHVhdGlvbgB2cwBzdW5kAGluc295b21ibwBpbmltcGVyaWFsYXJhbWFpYwBpbmJhdGFrAGlubGF0aW5leHRlbmRlZGQAaW5udXNodQBpbnRpYmV0YW4AaW5sb3dzdXJyb2dhdGVzAGhhdHJhbgBpbmJsb2NrZWxlbWVudHMAaW5zb2dkaWFuAGluZGluZ2JhdHMAaW5lbHltYWljAGluZGV2YW5hZ2FyaQBlbW9qaWNvbXBvbmVudABpbmthdGFrYW5hcGhvbmV0aWNleHRlbnNpb25zAGlkZW9ncmFwaGljAGNvcHRpYwBpbm51bWJlcmZvcm1zAGhhdHIAaW5jamtjb21wYXRpYmlsaXR5AGlua2FuYWV4dGVuZGVkYgBwYXR0ZXJuc3ludGF4AGF2ZXN0YW4AaW5hcmFiaWNleHRlbmRlZGEAc29nZGlhbgBzb2dvAGludGFuZ3V0AGNvcHQAZ3JhcGgAb2lkYwBpbmJ5emFudGluZW11c2ljYWxzeW1ib2xzAGluaW5zY3JpcHRpb25hbHBhcnRoaWFuAGRpYWNyaXRpYwBpbmluc2NyaXB0aW9uYWxwYWhsYXZpAGlubWF5YW5udW1lcmFscwBpbm15YW5tYXJleHRlbmRlZGIAaW50YWdzAGphdmEAY3BydABuYW5kAHBhdHN5bgB0YWxlAG9pZHMAc2VudGVuY2V0ZXJtaW5hbABpbXBlcmlhbGFyYW1haWMAdGVybWluYWxwdW5jdHVhdGlvbgBseWRpAGx5ZGlhbgBib3BvAGphdmFuZXNlAGN3bABpbmdlb21ldHJpY3NoYXBlc2V4dGVuZGVkAGlub2xkcGVyc2lhbgBpbm9ybmFtZW50YWxkaW5nYmF0cwBpbmJyYWlsbGVwYXR0ZXJucwBpbnZhcmlhdGlvbnNlbGVjdG9ycwBjYXNlaWdub3JhYmxlAGlueWlyYWRpY2FscwBpbm5vYmxvY2sAaW52ZXJ0aWNhbGZvcm1zAGluZXRoaW9waWNzdXBwbGVtZW50AHNoYXJhZGEAaW5iYWxpbmVzZQBpbnZlZGljZXh0ZW5zaW9ucwB3b3JkAGlubWlzY2VsbGFuZW91c21hdGhlbWF0aWNhbHN5bWJvbHNiAHRhbWwAb2xjawBpZHNiAG9sb3dlcgBkZWNpbWFsbnVtYmVyAGF2c3QAaW5jeXJpbGxpY2V4dGVuZGVkYQBvbGNoaWtpAHNocmQAaW50YWl4dWFuamluZ3N5bWJvbHMAaW50YWl2aWV0AHVnYXIAaW5jamtzeW1ib2xzYW5kcHVuY3R1YXRpb24AYm9wb21vZm8AaW5saXN1AGlub2xkcGVybWljAHNpZGRoYW0AemFuYWJhemFyc3F1YXJlAGFzc2lnbmVkAG1lZGYAY2xvc2VwdW5jdHVhdGlvbgBzYXJiAHNvcmFzb21wZW5nAGludmFyaWF0aW9uc2VsZWN0b3Jzc3VwcGxlbWVudABpbmhhbmd1bGphbW8AbWVkZWZhaWRyaW4AcGhhZwBpbmxpc3VzdXBwbGVtZW50AGluY29wdGljAGluc3lyaWFjc3VwcGxlbWVudABpbmhhbmd1bGphbW9leHRlbmRlZGEAY3lybABpbnNob3J0aGFuZGZvcm1hdGNvbnRyb2xzAGluY3lyaWxsaWNleHRlbmRlZGMAZ3VqcgBjd3UAZ3VqYXJhdGkAc3BhY2luZ21hcmsAYWxwaGEAbWx5bQBpbnBhbG15cmVuZQBtYWxheWFsYW0Ac3BhY2UAaW5sZXBjaGEAcGFsbXlyZW5lAHNveW8AbWVyb2l0aWNoaWVyb2dseXBocwB4c3V4AGludGVsdWd1AGluZGV2YW5hZ2FyaWV4dGVuZGVkAGlubWVyb2l0aWNjdXJzaXZlAGRzcnQAdGhhYQB0aGFhbmEAYnVnaQB0aGFpAHNvZ2QAdGl0bGVjYXNlbGV0dGVyAGlubWF0aGVtYXRpY2FsYWxwaGFudW1lcmljc3ltYm9scwBvcmtoAGNhdWNhc2lhbmFsYmFuaWFuAGluYmFtdW0AZGVzZXJldABpbmdlb3JnaWFuc3VwcGxlbWVudABidWdpbmVzZQBzZXBhcmF0b3IAaW5zbWFsbGZvcm12YXJpYW50cwB0aXJoAGluYnJhaG1pAG5kAHBobngAbmV3YQBpbmNvbWJpbmluZ2RpYWNyaXRpY2FsbWFya3MAbWFoagBpbmNvbWJpbmluZ2RpYWNyaXRpY2FsbWFya3Nmb3JzeW1ib2xzAG9sZHBlcnNpYW4AbWFoYWphbmkAdGFpdGhhbQBuZXd0YWlsdWUAbmV3bGluZQBzeXJjAGlubW9uZ29saWFuc3VwcGxlbWVudABpbnVuaWZpZWRjYW5hZGlhbmFib3JpZ2luYWxzeWxsYWJpY3NleHRlbmRlZGEAc2hhdwBidWhkAHZpdGhrdXFpAG51bWJlcgBpbnN1dHRvbnNpZ253cml0aW5nAHZhcmlhdGlvbnNlbGVjdG9yAGV0aGkAbGVwY2hhAHRpcmh1dGEAcm9oZwBhaGV4AGluY29wdGljZXBhY3RudW1iZXJzAHdhbmNobwBpbmNqa3VuaWZpZWRpZGVvZ3JhcGhzZXh0ZW5zaW9uZwBraG9qAGN1bmVpZm9ybQBpbmR1cGxveWFuAHVnYXJpdGljAGluc3ltYm9sc2FuZHBpY3RvZ3JhcGhzZXh0ZW5kZWRhAG9sZHBlcm1pYwBpbmNvbWJpbmluZ2RpYWNyaXRpY2FsbWFya3NzdXBwbGVtZW50AGtodWRhd2FkaQB0YW5nAHN5cmlhYwB0YWdiYW53YQBtb2RpZmllcmxldHRlcgBpbmN1cnJlbmN5c3ltYm9scwBpbm55aWFrZW5ncHVhY2h1ZWhtb25nAHRhbWlsAHRhbHUAaW5nb3RoaWMAaW51bmlmaWVkY2FuYWRpYW5hYm9yaWdpbmFsc3lsbGFiaWNzAHdjaG8AaW5jb21iaW5pbmdkaWFjcml0aWNhbG1hcmtzZXh0ZW5kZWQAb2dhbQB0ZWx1AGlkc3RyaW5hcnlvcGVyYXRvcgBpbmJlbmdhbGkAbmwAc3Vycm9nYXRlAGViYXNlAGhhbmcAaW5idWdpbmVzZQBtYXRoc3ltYm9sAGludml0aGt1cWkAdml0aABpbmNqa3JhZGljYWxzc3VwcGxlbWVudABpbmd1amFyYXRpAGluZ2xhZ29saXRpYwBpbmd1bmphbGFnb25kaQBwaGFnc3BhAGN3Y2YAbmNoYXIAb3RoZXJpZGNvbnRpbnVlAHdoaXRlc3BhY2UAaW5saW5lYXJic3lsbGFiYXJ5AHNnbncAb3RoZXIAaGlyYWdhbmEAaW5waGFnc3BhAG90aGVybnVtYmVyAGlucmVqYW5nAG9zZ2UAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmIAaW50YWdhbG9nAGluYmFzc2F2YWgAdGFuZ3V0AGhtbmcAaW5lbmNsb3NlZGNqa2xldHRlcnNhbmRtb250aHMAY3VycmVuY3lzeW1ib2wAaW5saW1idQBpbmJ1aGlkAGluZXRoaW9waWNleHRlbmRlZGEAc3lsbwBkYXNoAHdhcmFuZ2NpdGkAb2FscGhhAG9sZGl0YWxpYwBpbm90dG9tYW5zaXlhcW51bWJlcnMAc3BhY2VzZXBhcmF0b3IAaW5sYXRpbjFzdXBwbGVtZW50AG90aGVyYWxwaGFiZXRpYwBjaGFuZ2Vzd2hlbmNhc2VtYXBwZWQAaW5hZWdlYW5udW1iZXJzAGludW5pZmllZGNhbmFkaWFuYWJvcmlnaW5hbHN5bGxhYmljc2V4dGVuZGVkAGJ1aGlkAGluamF2YW5lc2UAY3lyaWxsaWMAZG9ncmEAbm9uY2hhcmFjdGVyY29kZXBvaW50AGluaGFuZ3Vsc3lsbGFibGVzAGJhc3NhdmFoAGlubGV0dGVybGlrZXN5bWJvbHMAaW5jb21iaW5pbmdoYWxmbWFya3MAaW5hcmFiaWNtYXRoZW1hdGljYWxhbHBoYWJldGljc3ltYm9scwBvcnlhAGlucHJpdmF0ZXVzZWFyZWEAY2hhbmdlc3doZW50aXRsZWNhc2VkAGRvZ3IAaGVicgBpbnRhZ2JhbndhAGludGlmaW5hZ2gAaW5ib3BvbW9mbwBuYXJiAHJqbmcAaW5hbHBoYWJldGljcHJlc2VudGF0aW9uZm9ybXMAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmYAaW5zeW1ib2xzZm9ybGVnYWN5Y29tcHV0aW5nAG9sZGh1bmdhcmlhbgBmaW5hbHB1bmN0dWF0aW9uAGlucGF1Y2luaGF1AGlucHNhbHRlcnBhaGxhdmkAenAAcGhscABpbmFyYWJpY3ByZXNlbnRhdGlvbmZvcm1zYgBub25zcGFjaW5nbWFyawBkZXZhAHRhdnQAaG1ucABkZXZhbmFnYXJpAGtoaXRhbnNtYWxsc2NyaXB0AGtheWFobGkAaW5iYW11bXN1cHBsZW1lbnQAc3lsb3RpbmFncmkAdGlidABlcHJlcwB0aWJldGFuAGVsYmEAb3NtYW55YQBpbmRpdmVzYWt1cnUAb2xkdHVya2ljAGNoYW5nZXN3aGVubG93ZXJjYXNlZABjeXByb21pbm9hbgBpbmV0aGlvcGljZXh0ZW5kZWQAZW1vamlwcmVzZW50YXRpb24AYW55AG90aGVybG93ZXJjYXNlAG91Z3IAaW5oZWJyZXcAc29mdGRvdHRlZABpbm1hdGhlbWF0aWNhbG9wZXJhdG9ycwBpbmFsY2hlbWljYWxzeW1ib2xzAGlubWFoam9uZ3RpbGVzAGhhbmd1bABleHQAb21hdGgAaW50YW5ndXRjb21wb25lbnRzAG90aGVybGV0dGVyAG5iYXQAbmFiYXRhZWFuAG5zaHUAcGFyYWdyYXBoc2VwYXJhdG9yAGluYXJhYmljZXh0ZW5kZWRiAGlubGF0aW5leHRlbmRlZGcAY2hhbmdlc3doZW51cHBlcmNhc2VkAGh1bmcAaW5wbGF5aW5nY2FyZHMAaW5hcmFiaWNzdXBwbGVtZW50AGlueWlqaW5naGV4YWdyYW1zeW1ib2xzAGlucGhvbmV0aWNleHRlbnNpb25zAG90aGVydXBwZXJjYXNlAG90aGVyaWRzdGFydABlbGJhc2FuAGVseW0AY2YAaW5pbmRpY3NpeWFxbnVtYmVycwBvdGhlcnN5bWJvbABleHRlbmRlcgBleHRwaWN0AHdzcGFjZQBwZgBlbHltYWljAGludGFuZ3V0c3VwcGxlbWVudABjeXByaW90AHN5bWJvbABpbmN5cmlsbGljZXh0ZW5kZWRiAGluc3VwZXJzY3JpcHRzYW5kc3Vic2NyaXB0cwBpbnlpc3lsbGFibGVzAGlucGhvbmV0aWNleHRlbnNpb25zc3VwcGxlbWVudABvbGRzb2dkaWFuAGluZ2VvcmdpYW5leHRlbmRlZABobHV3AGRpZ2l0AGluaGFuZ3VsamFtb2V4dGVuZGVkYgBpbmhpZ2hwcml2YXRldXNlc3Vycm9nYXRlcwBpbnBhaGF3aGhtb25nAG9naGFtAGluc3VwcGxlbWVudGFsYXJyb3dzYQBvdXBwZXIAYWdoYgBvdGhlcm1hdGgAbnVzaHUAc295b21ibwBpbmxhdGluZXh0ZW5kZWRiAGFscGhhYmV0aWMAaW5zdXBwbGVtZW50YWxhcnJvd3NjAGluc3VwcGxlbWVudGFsbWF0aGVtYXRpY2Fsb3BlcmF0b3JzAG90aGVyZGVmYXVsdGlnbm9yYWJsZWNvZGVwb2ludABkZXByZWNhdGVkAG9sZG5vcnRoYXJhYmlhbgBpbmN5cHJpb3RzeWxsYWJhcnkAZXh0ZW5kZWRwaWN0b2dyYXBoaWMAdW5pZmllZGlkZW9ncmFwaABwYWhhd2hobW9uZwBkaXZlc2FrdXJ1AHNpZ253cml0aW5nAHRhZ2IAdGlmaW5hZ2gAdXBwZXIAaW5oYWxmd2lkdGhhbmRmdWxsd2lkdGhmb3JtcwB1cHBlcmNhc2UAZXRoaW9waWMAbW9kaWZpZXJzeW1ib2wAb3RoZXJwdW5jdHVhdGlvbgByZWphbmcAaW5ldGhpb3BpY2V4dGVuZGVkYgB0Zm5nAGhleABpbnN1cHBsZW1lbnRhbHB1bmN0dWF0aW9uAHRnbGcAaW5sYXRpbmV4dGVuZGVkZgB0YWdhbG9nAGhhbmlmaXJvaGluZ3lhAGVjb21wAGluZ2xhZ29saXRpY3N1cHBsZW1lbnQAaGV4ZGlnaXQAY2hhbmdlc3doZW5jYXNlZm9sZGVkAGRhc2hwdW5jdHVhdGlvbgBvbGRzb3V0aGFyYWJpYW4AZHVwbABpbmVneXB0aWFuaGllcm9nbHlwaHMAdGVsdWd1AHVwcGVyY2FzZWxldHRlcgBpbmVneXB0aWFuaGllcm9nbHlwaGZvcm1hdGNvbnRyb2xzAGh5cGhlbgBoZWJyZXcAaW5oaWdoc3Vycm9nYXRlcwB6eXl5AG9ncmV4dABvdGhlcmdyYXBoZW1lZXh0ZW5kAGRlcABpbnN1cHBsZW1lbnRhbGFycm93c2IAZGVmYXVsdGlnbm9yYWJsZWNvZGVwb2ludABpbmhhbmd1bGNvbXBhdGliaWxpdHlqYW1vAG9sZHV5Z2h1cgBpbnN1cHBsZW1lbnRhcnlwcml2YXRldXNlYXJlYWEAaW5ib3BvbW9mb2V4dGVuZGVkAGluc3VwcGxlbWVudGFsc3ltYm9sc2FuZHBpY3RvZ3JhcGhzAG55aWFrZW5ncHVhY2h1ZWhtb25nAG9wZW5wdW5jdHVh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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7KBQnJiUOBSQUBxkiHSAQOx87OwIBOxkPOw47Oxw7Ajs7Ows7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Oxg7Fjs7Czs7Ozs7BzsAOzsQOwE7OxA7OzsPOzs7Bjs7OzsAOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OwYDDg4ODg4OAQ4ODg4ODg4ODg4ADg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgAODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgQODgUODgQODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgoODg4ODgkOAQ4ODg4ODg4ODg4OAA4ODggODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg44ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4OAADChk4OB4AODgAFDg4OA84OBQ4HjgAADg4ODg4ODg4Dzg4ODg4GTgKODg4OAU4ADgAOAU4OBQ4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgAAwoZODgeADg4ABQ4ODgPODgUOB44AAA4ODg4ODg4OA84ODg4OBk4Cjg4ODgFOAA4ADgFODgUODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4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AGwHAQBKbgEAzw8BABYBAADMAAEA2iwAAD8LAQDaBAAAwwQBANoeAACECAEA2h8AAF8JAQC8JAAA1AkBAJoDAAAKAwEAxBAAAMMLAQDaAAAAmQABABQEAQCnDQEAFCwAAEwKAQAUBAAAjQMBABQeAABpBwEAuiQAAM4JAQAUAQAAyQABAP///////wAAwhAAAL0LAQCOAwAARwMBABoEAQC5DQEAGiwAAF4KAQAaBAAAoAMBABoeAAByBwEAGh8AANsIAQAaAQAA0gABAP///////wAAtiQAAMIJAQD///////8AAP///////wAAigMAAOYCAQAYBAEAsw0BABgsAABYCgEAGAQAAJoDAQAYHgAAbwcBABgfAADVCAEAGAEAAM8AAQAOBAEAlQ0BAA4sAAA6CgEADgQAABEEAQAOHgAAYAcBAA4fAADPCAEADgEAAMAAAQAC6QEAFxABAP///////wAAxyQAAPUJAQAMBAEAjw0BAAwsAAA0CgEADAQAAAsEAQAMHgAAXQcBAAwfAADJCAEADAEAAL0AAQAIBAEAgw0BAAgsAAAoCgEACAQAAP8DAQAIHgAAVwcBAAgfAAC9CAEACAEAALcAAQAGBAEAfQ0BAAYsAAAiCgEABgQAAPkDAQAGHgAAVAcBAP///////wAABgEAALQAAQD///////8AAAIFAAD/BAEABAQBAHcNAQAELAAAHAoBAAQEAADzAwEABB4AAFEHAQD///////8AAAQBAACxAAEAAAQBAGsNAQAALAAAEAoBAAAEAADnAwEAAB4AAEsHAQD///////8AAAABAACrAAEA////////AAB1BQEAXg4BAJQFAQCyDgEAKiwAAI4KAQAqBAAA1AMBACoeAACKBwEAKh8AAO0IAQAqAQAA6gABACqnAABLDAEAwgMAACYDAQAmBAEA3Q0BACYsAACCCgEAJgQAAMgDAQAmHgAAhAcBALcEAQD4DQEAJgEAAOQAAQAmpwAARQwBAJ4DAAAYAwEAtx8AAAoAAwC3AQAAwgIBAJIFAQCvDgEAt6sAABUHAQD///////8AALccAAArBgEAewEAAFwBAQB7pwAAtAwBAHurAABhBgEAjAMAAEQDAQAuLAAAmgoBAC4EAADhAwEALh4AAJAHAQAuHwAA+QgBAC4BAADwAAEALqcAAFEMAQCPHwAApAACAI8BAABxAgEA////////AACPqwAAnQYBAAL7AAAMAAIAiAMAAOACAQCPDAEA5Q4BAP///////wAALCwAAJQKAQAsBAAA2wMBACweAACNBwEALB8AAPMIAQAsAQAA7QABACynAABODAEAKCwAAIgKAQAoBAAAzgMBACgeAACHBwEAKB8AAOcIAQAoAQAA5wABACinAABIDAEA////////AAD///////8AAIYFAQCODgEAJAQBANcNAQAkLAAAfAoBACQEAADCAwEAJB4AAIEHAQBHBQAAhgUBACQBAADhAAEAJKcAAEIMAQAiBAEA0Q0BACIsAAB2CgEAIgQAALoDAQAiHgAAfgcBADP/AABTDQEAIgEAAN4AAQAipwAAPwwBANoDAABTAwEAwAQBABMOAQDALAAAGAsBAMAEAACxBAEAwB4AAF0IAQAx/wAATQ0BADsCAABBAgEAwKcAAAINAQCzBAEA7A0BAMAAAABNAAEA////////AAAqIQAAGwABALMfAAA+AAIAswEAAJIBAQCzpwAAGg0BALOrAAAJBwEA////////AACzHAAAHwYBAP///////wAAJiEAADoDAQA1BQAAUAUBALcQAACcCwEAsQQBAOYNAQD///////8AALcYAQCWDwEASgIAAFMCAQCOBQEAow4BALEBAAC5AgEAsacAALACAQCxqwAAAwcBAP///////wAAsRwAABkGAQCxDAEASw8BADwFAABlBQEA////////AAAcAgAAIAIBAE4eAADABwEAigUBAJoOAQBOAQAAGgEBAE6nAAB+DAEAqx8AAOAAAgBOAAAAJQABAKunAAB3AgEAq6sAAPEGAQAWAgAAFwIBAKscAAAHBgEAqwwBADkPAQCXHgAAIgACAJcfAADMAAIAlwEAAIkCAQBOpgAA5QsBAJerAAC1BgEAggUBAIIOAQCXHAAAywUBAJcMAQD9DgEA////////AABObgEA2w8BAHEFAQBSDgEAFAIAABQCAQDEJAAA7AkBAH4sAABEAgEAfgQAAEUEAQB+HgAACQgBACr/AAA4DQEAgAUBAHwOAQB+pwAAtwwBAH6rAABqBgEAGgIAAB0CAQDCJAAA5gkBAKkfAADWAAIAqQEAAK0CAQAm/wAALA0BAKmrAADrBgEAjQUBAKAOAQCpHAAAAQYBAKkMAQAzDwEA////////AAD///////8AABgCAAAaAgEAwBAAALcLAQAgBAEAyw0BACAsAABwCgEAIAQAALMDAQAgHgAAewcBAA4CAAALAgEAIAEAANsAAQCzEAAAkAsBAP///////wAALv8AAEQNAQCzGAEAig8BAP///////wAAkR8AAK4AAgCRAQAAcQEBAAwCAAAIAgEAkasAAKMGAQD///////8AAJEcAAC5BQEAkQwBAOsOAQD///////8AAAgCAAACAgEAsRAAAIoLAQDVAQAAuQEBACz/AAA+DQEAsRgBAIQPAQDVAAAAjQABAAYCAAD/AQEAjwMAAEoDAQD///////8AACj/AAAyDQEA1CwAADYLAQDUBAAAugQBANQeAAB7CAEAjAUBAJ0OAQAEAgAA/AEBAKsQAAB4CwEAOwUAAGIFAQDUAAAAigABAKsYAQByDwEAJP8AACYNAQAAAgAA9gEBAP///////wAA////////AAAc6QEAZRABAP///////wAAiAUBAJQOAQAi/wAAIA0BAP///////wAAKgIAADICAQD///////8AAP4EAAD5BAEA/h4AALoIAQAW6QEAUxABAP4BAADzAQEA////////AABKBQAAjwUBACYCAAAsAgEAHgQBAMUNAQAeLAAAagoBAB4EAACsAwEAHh4AAHgHAQD///////8AAB4BAADYAAEA////////AACpEAAAcgsBABwFAAAmBQEAFOkBAE0QAQCpGAEAbA8BANIEAQBJDgEA0iwAADMLAQDSBAAAtwQBANIeAAB4CAEA0h8AABQAAwAuAgAAOAIBABYFAAAdBQEAGukBAF8QAQDSAAAAhAABAKcfAAD0AAIApwEAAIkBAQD///////8AAKerAADlBgEA////////AACnHAAA+wUBAKcMAQAtDwEA////////AAD///////8AABjpAQBZEAEALAIAADUCAQAUBQAAGgUBAHwEAABCBAEAfB4AAAYIAQAzBQAASgUBAA7pAQA7EAEAKAIAAC8CAQB8qwAAZAYBAEgeAAC3BwEASB8AABcJAQAaBQAAIwUBAEinAAB1DAEAMQUAAEQFAQBIAAAAFQABAAzpAQA1EAEAaywAAK8KAQAkAgAAKQIBAKsDAABBAwEAax8AAD4JAQD///////8AAAjpAQApEAEAGAUAACAFAQBIpgAA2wsBACICAAAmAgEA////////AACXAwAA/QIBAAbpAQAjEAEADgUAABEFAQBIbgEAyQ8BAP///////wAAVh4AAMwHAQBWHwAAPgADAFYBAAAmAQEAVqcAAIoMAQAE6QEAHRABAFYAAAA+AAEADAUAAA4FAQD///////8AABb7AAB9AAIA////////AAAA6QEAERABAP///////wAACAUAAAgFAQD///////8AAFamAADxCwEA////////AACpAwAAOgMBAP///////wAABgUAAAUFAQD///////8AAFZuAQDzDwEA////////AAAU+wAAbQACAP///////wAAtyQAAMUJAQD///////8AAAQFAAACBQEA4iwAAEsLAQDiBAAAzwQBAOIeAACQCAEA4h8AACQAAwDiAQAAzgEBAAAFAAD8BAEATgIAAFkCAQCnEAAAbAsBAP///////wAA////////AACnGAEAZg8BAJEDAADpAgEA////////AAAqBQAAOwUBAFQeAADJBwEAVB8AADkAAwBUAQAAIwEBAFSnAACHDAEA////////AABUAAAAOAABANUDAAAwAwEAJgUAADUFAQA5HwAAAgkBADkBAAD8AAEAEgQBAKENAQASLAAARgoBABIEAACGAwEAEh4AAGYHAQBUpgAA7gsBABIBAADGAAEAEAQBAJsNAQAQLAAAQAoBABAEAACAAwEAEB4AAGMHAQBUbgEA7Q8BABABAADDAAEA////////AABrIQAAsAkBAC4FAABBBQEAjwUBAKYOAQA/HwAAFAkBAD8BAAAFAQEABvsAAB0AAgBSHgAAxgcBAFIfAAA0AAMAUgEAACABAQBSpwAAhAwBAP///////wAAUgAAADEAAQD///////8AAAT7AAAFAAMA/gMAANcCAQAsBQAAPgUBACACAAB9AQEA////////AADAJAAA4AkBAAD7AAAEAAIAUqYAAOsLAQAoBQAAOAUBAFAeAADDBwEAUB8AAFQAAgBQAQAAHQEBAFCnAACBDAEAUm4BAOcPAQBQAAAAKwABAP///////wAAygQBADEOAQDKLAAAJwsBACQFAAAyBQEAyh4AAGwIAQDKHwAAWQkBAMoBAACpAQEA////////AABQpgAA6AsBAMoAAABsAAEAIgUAAC8FAQCnAwAANAMBAPAEAADkBAEA8B4AAKUIAQBQbgEA4Q8BAPABAAAUAAIA2CwAADwLAQDYBAAAwAQBANgeAACBCAEA2B8AAH0JAQD///////8AANinAAAUDQEA////////AADYAAAAkwABANYsAAA5CwEA1gQAAL0EAQDWHgAAfggBANYfAABMAAIA////////AADWpwAAEQ0BAP///////wAA1gAAAJAAAQDIBAEAKw4BAMgsAAAkCwEAuQQBAP4NAQDIHgAAaQgBAMgfAABTCQEAyAEAAKUBAQC5HwAAegkBAP///////wAAyAAAAGYAAQC5qwAAGwcBAP///////wAAuRwAADEGAQAeAgAAIwIBAMYEAQAlDgEAxiwAACELAQD///////8AAMYeAABmCAEAxh8AAEMAAgBOBQAAmwUBAManAABIBwEAxQQBACIOAQDGAAAAYAABAMUEAACiBAEAuwQBAAQOAQC1BAEA8g0BAMUBAAChAQEAxacAAKoCAQC7HwAAUAkBAMUAAABcAAEAtQEAAJUBAQC7qwAAIQcBALWrAAAPBwEAtQAAABEDAQC1HAAAJQYBAK8fAAD0AAIArwEAAI8BAQD///////8AAK+rAAD9BgEAaSwAAKwKAQCvHAAAEwYBAK8MAQBFDwEAaR8AADgJAQB+BQEAdg4BACDpAQBxEAEA////////AAClHwAA6gACAP///////wAASAIAAFACAQClqwAA3wYBAOIDAABfAwEApRwAAPUFAQClDAEAJw8BAP///////wAAOf8AAGUNAQCjHwAA4AACAP///////wAA////////AACjqwAA2QYBAKEfAADWAAIAoxwAAO8FAQCjDAEAIQ8BAKGrAADTBgEA////////AAChHAAA6QUBAKEMAQAbDwEAIAUAACwFAQCHHwAApAACAIcBAABrAQEA////////AACHqwAAhQYBAJEFAQCsDgEAhxwAABoEAQCHDAEAzQ4BAP///////wAA////////AAByLAAAsgoBAHIEAAAzBAEAch4AAPcHAQBNHwAAJgkBAHIBAABQAQEAuRAAAKILAQByqwAARgYBAE0AAAAiAAEAuRgBAJwPAQBwLAAAYgIBAHAEAAAwBAEAcB4AAPQHAQD///////8AAHABAABNAQEA////////AABwqwAAQAYBAG4sAACbAgEAbgQAAC0EAQBuHgAA8QcBAG4fAABHCQEAbgEAAEoBAQBupwAArgwBAE1uAQDYDwEAxRAAAMYLAQAe6QEAaxABAEUBAAAOAQEAuxAAAKgLAQC1EAAAlgsBAEUAAAAMAAEAuxgBAKIPAQC1GAEAkA8BAO4EAADhBAEA7h4AAKIIAQCvEAAAhAsBAO4BAADgAQEA////////AACvGAEAfg8BAGwEAAAqBAEAbB4AAO4HAQBsHwAAQQkBAGwBAABHAQEAbKcAAKsMAQBpIQAAqgkBAEVuAQDADwEApRAAAGYLAQD///////8AAB4FAAApBQEApRgBAGAPAQASAgAAEQIBAP///////wAA8AMAAAoDAQD///////8AAGymAAASDAEAoxAAAGALAQAQAgAADgIBANgDAABQAwEAoxgBAFoPAQChEAAAWgsBAP///////wAA////////AAChGAEAVA8BAP///////wAA////////AADWAwAAHgMBAGoEAAAnBAEAah4AAOsHAQBqHwAAOwkBAGoBAABEAQEAaqcAAKgMAQBoBAAAJAQBAGgeAADoBwEAaB8AADUJAQBoAQAAQQEBAGinAAClDAEAfAUBAHAOAQD///////8AAP///////wAARh4AALQHAQD///////8AAGqmAAAPDAEARqcAAHIMAQBIBQAAiQUBAEYAAAAPAAEA////////AABopgAADAwBAGQsAACkAgEAZAQAAB4EAQBkHgAA4gcBAP///////wAAZAEAADsBAQBkpwAAnwwBAEamAADYCwEA3iwAAEULAQDeBAAAyQQBAN4eAACKCAEAbiEAALkJAQDeAQAAyAEBAEZuAQDDDwEA////////AADeAAAApQABADAeAACTBwEAZKYAAAYMAQAwAQAABQECAFYFAACzBQEAYiwAAJICAQBiBAAAGgQBAGIeAADfBwEA////////AABiAQAAOAEBAGKnAACcDAEA////////AAD///////8AAP///////wAApQMAAC0DAQD///////8AAGwhAACzCQEARB4AALEHAQD///////8AAP///////wAARKcAAG8MAQBipgAAAwwBAEQAAAAJAAEAowMAACYDAQB5AQAAWQEBAHmnAACxDAEAeasAAFsGAQChAwAAIgMBAGAsAACgCgEAYAQAABcEAQBgHgAA2wcBAESmAADVCwEAYAEAADUBAQBgpwAAmQwBAP///////wAA////////AAAS6QEARxABAERuAQC9DwEAMh4AAJYHAQD///////8AADIBAADzAAEAMqcAAFQMAQAQ6QEAQRABAGohAACtCQEAYKYAAAAMAQBUBQAArQUBAP///////wAAcgMAAM4CAQBoIQAApwkBAM0EAQA6DgEA////////AADNBAAArgQBADkFAABcBQEA////////AADNAQAArQEBAP///////wAAcAMAAMsCAQDNAAAAdQABABIFAAAXBQEAzAQBADcOAQDMLAAAKgsBAM8EAQBADgEAzB4AAG8IAQDMHwAARwACABAFAAAUBQEAZCEAAJsJAQDPAQAAsAEBAMwAAAByAAEARQMAAAUDAQDPAAAAewABAD8FAABuBQEAywQBADQOAQDKJAAA/gkBAMsEAACrBAEAUgUAAKcFAQDLHwAAXAkBAMsBAACpAQEA7gMAAHEDAQDDBAEAHA4BAMsAAABvAAEAwwQAAJ8EAQDJBAEALg4BAMMfAABHAAIAyQQAAKgEAQBiIQAAlQkBAMkfAABWCQEAwwAAAFYAAQDJpwAACw0BAL8EAQAQDgEAyQAAAGkAAQBQBQAAoQUBAFUAAAA7AAEAvQQBAAoOAQB2BAAAOQQBAHYeAAD9BwEAv6sAAC0HAQB2AQAAVgEBAL8cAAA9BgEAdqsAAFIGAQC9qwAAJwcBAP///////wAAvRwAADcGAQD///////8AAMgkAAD4CQEA////////AAC5JAAAywkBAFVuAQDwDwEAYCEAAI8JAQCfHwAAzAACAJ8BAAChAgEAwQQBABYOAQCfqwAAzQYBAMEEAACcBAEAnxwAAOMFAQCfDAEAFQ8BADIhAACMCQEAxiQAAPIJAQBFAgAAvwIBAMEAAABQAAEAnR8AAMIAAgCdAQAAngIBAP///////wAAnasAAMcGAQDFJAAA7wkBAJ0cAADdBQEAnQwBAA8PAQC7JAAA0QkBAM0QAADMCwEAmx4AANsHAQCbHwAAuAACADD/AABKDQEA////////AACbqwAAwQYBAEMBAAALAQEAmxwAANcFAQCbDAEACQ8BAEMAAAAGAAEAmR4AACoAAgCZHwAArgACAN4DAABZAwEA////////AACZqwAAuwYBAJUfAADCAAIAmRwAANEFAQCZDAEAAw8B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ANEAAACBAAEA////////AAD0AwAAAAMBABUEAQCqDQEAFSwAAE8KAQAVBAAAkQMBABMEAQCkDQEAEywAAEkKAQATBAAAigMBAOwDAABuAwEAIf8AAB0NAQAPBAEAmA0BAA8sAAA9CgEADwQAABQEAQD///////8AAA8fAADSCAEA////////AADBJAAA4wkBAFUFAACwBQEA6gMAAGsDAQD///////8AAA0EAQCSDQEADSwAADcKAQANBAAADgQBAHYFAQBhDgEADR8AAMwIAQD///////8AAOgDAABoAwEA////////AAD///////8AADb/AABcDQEACwQBAIwNAQALLAAAMQoBAAsEAAAIBAEA////////AAALHwAAxggBAP///////wAA////////AADmAwAAZQMBAAkEAQCGDQEACSwAACsKAQAJBAAAAgQBAOQDAABiAwEACR8AAMAIAQAFBAEAeg0BAAUsAAAfCgEABQQAAPYDAQADBAEAdA0BAAMsAAAZCgEAAwQAAPADAQD///////8AANwDAABWAwEA////////AAArIQAAXAABAAEEAQBuDQEAASwAABMKAQABBAAA6gMBAPwEAAD2BAEA/B4AALcIAQD8HwAAYAACAPwBAADwAQEA////////AAD///////8AAEMFAAB6BQEA+AQAAPAEAQD4HgAAsQgBAPgfAABlCQEA+AEAAOoBAQAnBAEA4A0BACcsAACFCgEAJwQAAMsDAQCVBQEAtQ4BAPYEAADtBAEA9h4AAK4IAQD2HwAAXAACAPYBAAB0AQEAegQAAD8EAQB6HgAAAwgBAEsfAAAgCQEA////////AAA+AgAApgoBAHqrAABeBgEASwAAABsAAQAfBAEAyA0BAB8sAABtCgEAHwQAALADAQCDBQEAhQ4BAP///////wAAOP8AAGINAQD///////8AADoFAABfBQEALywAAJ0KAQAvBAAA5AMBAP///////wAALx8AAPwIAQBJBQAAjAUBAP///////wAAS24BANIPAQA0/wAAVg0BAC0sAACXCgEALQQAAN4DAQD///////8AAC0fAAD2CAEAgQUBAH8OAQB/BQEAeQ4BACv/AAA7DQEAKSwAAIsKAQApBAAA0QMBAP///////wAAKR8AAOoIAQAlBAEA2g0BACUsAAB/CgEAJQQAAMUDAQAjBAEA1A0BACMsAAB5CgEAIwQAAL8DAQARBAEAng0BABEsAABDCgEAEQQAAIMDAQAHBAEAgA0BAAcsAAAlCgEABwQAAPwDAQD///////8AAP///////wAAziQAAAoKAQD///////8AAEECAABKAgEA////////AAD///////8AAPwTAAA8BwEA////////AABCBQAAdwUBAP///////wAA////////AAD///////8AAP///////wAA+BMAADAHAQD///////8AAP///////wAA0QMAAAADAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAh6QEAdBABAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAD4FAABrBQEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAn/wAALw0BAP///////wAA////////AAA2BQAAUwUBAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAUwUAAKoFAQD///////8AAP///////wAA////////AABABQAAcQUBAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAC//AABHDQEA////////AAD///////8AAP///////wAAeAUBAGcOAQD///////8AABfpAQBWEAEA////////AAAt/wAAQQ0BAP///////wAAdAUBAFsOAQD///////8AAP///////wAAQQUAAHQFAQD///////8AACn/AAA1DQEA////////AAD///////8AAP///////wAA////////AAAl/wAAKQ0BAP///////wAA////////AAAj/wAAIw0BAB3pAQBoEAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAFEFAACkBQEA////////AAD///////8AAP///////wAA////////AAD///////8AADgFAABZBQEA////////AAD///////8AAP///////wAAG+kBAGIQAQD///////8AAP///////wAA////////AAD///////8AAP///////wAANAUAAE0FAQAZ6QEAXBABAP///////wAA////////AAD///////8AAE8FAACeBQEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAFekBAFAQAQD///////8AAP///////wAAE+kBAEoQAQD///////8AAP///////wAA////////AAD///////8AAA/pAQA+EAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAF/sAAHUAAgD///////8AAP///////wAADekBADgQAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAL6QEAMhABAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAACekBACwQAQD///////8AAP///////wAA////////AAD///////8AAAXpAQAgEAEA////////AAD///////8AAAPpAQAaEAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAAekBABQQAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAV+wAAcQACAP///////wAA////////AAAT+wAAeQACAP///////wAA////////AAD///////8AAB/pAQBuEAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAB6BQEAbQ4BAP///////wAASwUAAJIFAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AABHpAQBEEAEABfsAAB0AAgD///////8AAAfpAQAmEAEAA/sAAAAAAwD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAB+wAACAACAP//////////cgdLB9IAqwBuDYcHzwznAG4BIwX8BEgMxgxzDjgFHQL2ATAIbwSDAS8CvwLrCuQMcA7rBycERAHACBsA8wioDEwGMQBiBZUNwwiUA3cFnwCSAiIKDwxJBp4C4gceBDsB0g8MAKMKnwznD9UIUAVGBlMJQA6uCO0EgwKVCQYMEQleDtsHFwQ1AcAPAACgCpkMRAlSDkQF+A2KCMkEyAEFBH0CRQsADI4K/g2NCMwEywG0D1AASAtXBzgJtwBxDagLWgtxAcMLXQcIBb0A/QYRBF0L+QMCApoKDgWCCsICAweGCWgNCAIKDpMI0gTRAWsCXACHC6sLBA6QCM8EzgGxC1YASwuFDnsHawHbALkC8g2HCMYExQFcDSwFQgsPB4kJaQezAskACQB9DV4GCQe9CE0FGgXmDYEIwAQrBuoIFAI8CxQN9wZgBHcBFQ+9D9wK1QxVDkEJ5Ah+CL0EGw/jBacFOQsRDTkMegHrBqoCswXpBVgOcgsWDpkI2ATXAbUOaQC/DX4LwgMLAXcN5QZMClkDEA6WCNUE1AEnD2MA7wkLBFwDlAaaBpQKIQ8bB/UF9QmfC64PVwtcASMJdwLvBbQMDw+6C5UFFQcmDewNhAjDBAMA+QjdBT8LjgZHBZYLYgMFEAAIPAQDD3EJRwABCl8DrQWzCYwFtw+lANEF+wk7CfEGdQi0BFYD/Q6ZCzALDg38D4EL6QmoBGgJfQHLBb8JCw2qCWQOYwQzD6gPUAPfCtgMWw7IAtMGgAndCQEGvA2uB78DLQ88DL4GSQpsDE0DnA/fBxoEOAH7BQYA1wmcDEMO0gtKBREDGAOTAHsLaAOAApYPAwwgCScIVwQNCgkPug/TCswMIw0+CWUD9wczBFAB1wU0ALIKBwowDAoDegX0BzAETQF1Cy4A1wJvCz0O//90BesOOgaQAOoPFw2bAnkOVglTA9YOuQVvCJgJ5A///+MJKgtQCTQOqAjnBOMBkgmHAFQLUgaiDygOogjhBOABag57ACIOnwjeBN0BxwZ1ALoI+QTzAcUJqAA+AzkHHA6cCNsE2gFABm8A//+EDy0H6AckBEEBLgZ3ECcHpQxvD5UBXAXlByEEPgGmDhIAjAKiDAwMIQdWBQ0ONw4XEMwPJhBgAIoACQx6A8YH8AMgAYIGxg95CoQM7QhKCToOqwjqBOcBKAaNAGUC3w7rCxIHPAfOAv/////MB/wDJgFNECwJhQqKDMsCaw3//0UPHwZTDT8HoAZuAj8P8QuuBK0BEwb9BzkEVgHnCEEADQYyCUcDOQ+GBT0GwwfqAx0BXw13A3MKgQwHBv//sAH//8oG9g9xA3gPXwJiCegL//9uA70LpAngDcAH5AMaASoPKQltCn4MKRD//2sD0AZ9CU0N+AUiBlkC///lC9oNvQfeAxcBuA76AmcKewzUDboH2AMUAf//JQZhCngMVgJHDeILtwtMDrQI8wTtAVMCnADeCwQKtg2rB7YDXwElAOIOQwppDEENawWbBR4Dewi6BP//NRA7DTYLzwuMDZYHigPzANsPCxAZClQM6A4aCVEP+gc2BFMBuQk7AD4CHQ22Bd8GgAVKA3gItwT//9ECoQIzCwgJ//9RCJAEmAGsDvAPDAv2DK8OXAl7D/EHLQRKAZ4JKAAvEK4M///ZBm4FwgndDYgG4QMdEJgCiwZqCu4HKgRHAYEPIgDeD6sMdgb//2gFzwcCBCkB//9mBIsKjQwSDOIK2wxhDv/////YD/cOcQKMCfQLxQJEDckH9gMjAf//xQV/CocMhAf//+QAfQP/////RQxpBGUNNQXuC+UK3gxnDv//LALxDs4NtwfRAy8J/////1sKdQz//78F/AhZDdEJyA20B8sDUAL//9sLVQpyDPMDegKQD3QQfArCDbEHxQNNArEP2AtPCm8MNQloAjUNuQ0AA7oDCAHLCQUDRgrVCy4OpQjkBP//Lw2BAOwCig9KAiYJVg2PAZgNnAeXA/kAlw4pDSUKWgwdCUgH//+SDZkHkQP2ADMHIA0fClcMeg2NB8kL7QBwBncJgQdODOEAFAk+Bf//QgwGCEIEMgU1An4H///eAA4JKQKYBT8M+w3//y8F7w2kAk0AwgHpDSYC9gi/AeMNCBBpCLwBpQF0CWAIJAtiAfAItgkbCwUNRQiEBKEFAAeDCQAL9AaaDqcC/wPuBksPXQiICugGuwb//xgLAg2pBv//GQYREFoImQSeAXMGegkVC/8MpQtXCJYEmwFUCJMEEgv8DKMGDwv5DLIO//9iDeEITgiNBP//zAudBgkL8wypDsYLPwh+BIwBlwbtA/oKkQaODnYKWQHAC0oAGA+xDP//DA+PBYUGYgIGDyMQ///mBQAP0w7aBWcGSQ7BDtQF/w///5kAzgVrCdoCSwiKBFANrQn//wYL8AyjDrANqAewA7sO2wj//z0KZgznA///8gn//3AK5gmTCzoDRALgCX8GJgP//9oJXAL//6UP///pAs8Inw8zCHIEhgGZD2wP7grnDHYOWg8iAy0IbASAAUoN///oCuEMbQ7JCF0EGwMDCD8E2QrSDE8OTwZUDxUD//+SBQ4DDwiRDmUBNgxDBrsKvQz//24QqgX9Ao0LAhC5Af//rQJuCRgMQgfgAmoGsAk0BtIHCAQsATEORBCRCpAMsw2EALMDBQFpC///QAriBnQCJQ73C4YNkweDA3gAUQtHAhMK//+ADZAH///wADYHYwv2AlEMOwIXCUEFdA2KB/UN6gD//zgCKgdLDP//Agk7Bf//Rg6xCPAE6gEyApYAHw7//xMOBw62AXIATgtmAFkAAQ6zAfoG/////1MAcgixBKsEqQFsCC0LZgj6Dv//Jwv//yELJAfcBhgHDAebDcgFmgPWBtQCBgcoCk4P///jAs0GxAYgEKUEwQb//7UGHAYIDacNQg+mA/8A/////zQK//+iBKEBYwgQBgwISATUCR4LQQK4CroMuAaLDqQF//90AxIPkw///x8ArwoVDEgIhwRlBbIG4AUDC68GnQ6VAmQGPA/0DjAPJA8xBv//1Q/uDnEQHg8KBsIF/gXyBeUO3A55BrwF2Q7sBc0O//9CCIEE/////+wJ/QpQEJQO////////iQGqDaUHqQOrD38OShA3CmMM0A7OCQoK/gn//zIQbQbICUQD+AkaEEEDjQ80A8oOWAb//8cOhw8bCEsEFBD//ysOxwp+D3UP//9+AHIP//9mDzkIeAS8AjcDJAz0Cu0Mgg42CHUECQhFBP//8QrqDHwOtwwwAzAHngUtA2kPEgjdAmgB//9bBr4KwAz/////sAX//w4QVQZjDz4AtQpgDxsM8AKDBbwJDwCmCrcI9gTwAVMFogD//9gHFAQyAYYC8w+dCpYMZgdfCcYA///DD///oQn//0cJFwX9C9UHDgQvAeYCEQKXCpMMpA2iB6MD/////0gPMQpgDJ8E3gj6C54NnwedA2MHFgbDACsKXQxUBxkOtABRBxQFsQBsAP////8FBQ4CTgcCBa4ArAb/ATwIewT8Af///wT3CtgIiA5oEP//+QHSCB4H///MCCoIWgR0ASQIVATWCv//xgjQCskM//9hBv//////////FQgzDDcGRAAtDMEKwwz//4kFOADLDZALzgMRAX0FsAJYCh4M//8rAP//jw35D40DcQX//2UJHArtD///xA6nCVkJ//8YAKwK//+bCeEPXwX/////TQmKCzYPjwIyDY8JbAsLCf//ZgucBM8PBAYVAKkK/////2ALWQXFDf//yAMOASoDiQJSCmsQrQ3//6wDAgH//8kPOgr//6YGoQ0+EKAD/AD//10PLgoYCIkNOBCGA4MNxAqAAxYK//94BxAK2AAsDSwQ//+2Av//IQwpBXUH1w3VANsD//8jApIBZAr//yYFBQmgDm8H/wjPACACbAdgB8wAwABaByAFugAhCFEEHQURBRoCzQoLBXwGFwILAh4ITgQFAr4OPg3KCtENKgzUA///UxD//14K//////////8nDP////////////////////////////9fEEUH/////////////////////////////zgN////////////////////////tAv///////9XD/////////////+uC/////////////////////////////+iC////////5wLhAv/////eAv////////////////////////////////zAv//////////////////YhD/////////////Gg3//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1wQ//////////////////////////9WEP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////0cQ/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////2UQ/////////////////////1kQ//////////////////9BEP////87EAAAAAAAAGUA/QBMAB0AGADvAGAARwBcAEMABAA+AAgAOgDqAG0ApABYAFQAUADWAAAANgAFATIAaQB5AH0AAQEqACYA+QAuAHUADABxAPQA5QDgANsA0QAQAMwAxwDCAL0AuACzAK4AqQAUACIAnwCaAJUAkACLAIYAgQBB8IkRC+EIPgAvAB8AOQApABkANAAkABQAQwAPAAoABQAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAMAAAADAAAAAwAAAAMA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AAAABAUAAAcFAAABAAAABgUAAAkFAAABAAAACAUAAAsFAAABAAAACgUAAA0FAAABAAAADAUAAA8FAAABAAAADgUAABEFAAABAAAAEAUAABMFAAABAAAAEgUAABUFAAABAAAAFAUAABcFAAABAAAAFgUAABkFAAABAAAAGAUAABsFAAABAAAAGgUAAB0FAAABAAAAHAUAAB8FAAABAAAAHgUAACEFAAABAAAAIAUAACMFAAABAAAAIgUAACUFAAABAAAAJAUAACcFAAABAAAAJgUAACkFAAABAAAAKAUAACsFAAABAAAAKgUAAC0FAAABAAAALAUAAC8FAAABAAAALgUAAGEFAAABAAAAMQUAAGIFAAABAAAAMgUAAGMFAAABAAAAMwUAAGQFAAABAAAANAUAAGUFAAABAAAANQUAAGYFAAABAAAANgUAAGcFAAABAAAANwUAAGgFAAABAAAAOAUAAGkFAAABAAAAOQUAAGoFAAABAAAAOgUAAGsFAAABAAAAOwUAAGwFAAABAAAAPAUAAG0FAAABAAAAPQUAAG4FAAABAAAAPgUAAG8FAAABAAAAPwUAAHAFAAABAAAAQAUAAHEFAAABAAAAQQUAAHIFAAABAAAAQgUAAHMFAAABAAAAQwUAAHQFAAABAAAARAUAAHUFAAABAAAARQUAAHYFAAABAAAARgUAAHcFAAABAAAARwUAAHgFAAABAAAASAUAAHkFAAABAAAASQUAAHoFAAABAAAASgUAAHsFAAABAAAASwUAAHwFAAABAAAATAUAAH0FAAABAAAATQUAAH4FAAABAAAATgUAAH8FAAABAAAATwUAAIAFAAABAAAAUAUAAIEFAAABAAAAUQUAAIIFAAABAAAAUgUAAIMFAAABAAAAUwUAAIQFAAABAAAAVAUAAIUFAAABAAAAVQUAAIYFAAABAAAAVgUAANAQAAABAAAAkBwAANEQAAABAAAAkRwAANIQAAABAAAAkhwAANMQAAABAAAAkxwAANQQAAABAAAAlBwAANUQAAABAAAAlRwAANYQAAABAAAAlhwAANcQAAABAAAAlxwAANgQAAABAAAAmBwAANkQAAABAAAAmRwAANoQAAABAAAAmhwAANsQAAABAAAAmxwAANwQAAABAAAAnBwAAN0QAAABAAAAnRwAAN4QAAABAAAAnhwAAN8QAAABAAAAnxwAAOAQAAABAAAAoBwAAOEQAAABAAAAoRwAAOIQAAABAAAAohwAAOMQAAABAAAAoxwAAOQQAAABAAAApBwAAOUQAAABAAAApRwAAOYQAAABAAAAphwAAOcQAAABAAAApxwAAOgQAAABAAAAqBwAAOkQAAABAAAAqRwAAOoQAAABAAAAqhwAAOsQAAABAAAAqxwAAOwQAAABAAAArBwAAO0QAAABAAAArRwAAO4QAAABAAAArhwAAO8QAAABAAAArxwAAPAQAAABAAAAsBwAAPEQAAABAAAAsRwAAPIQAAABAAAAshwAAPMQAAABAAAAsxwAAPQQAAABAAAAtBwAAPUQAAABAAAAtRwAAPYQAAABAAAAthwAAPcQAAABAAAAtxwAAPgQAAABAAAAuBwAAPkQAAABAAAAuRwAAPoQAAABAAAAuhwAAP0QAAABAAAAvRwAAP4QAAABAAAAvhwAAP8QAAABAAAAvxwAAKATAAABAAAAcKsAAKETAAABAAAAcasAAKITAAABAAAAcqsAAKMTAAABAAAAc6sAAKQTAAABAAAAdKsAAKUTAAABAAAAdasAAKYTAAABAAAAdqsAAKcTAAABAAAAd6sAAKgTAAABAAAAeKsAAKkTAAABAAAAeasAAKoTAAABAAAAeqsAAKsTAAABAAAAe6sAAKwTAAABAAAAfKsAAK0TAAABAAAAfasAAK4TAAABAAAAfqsAAK8TAAABAAAAf6sAALATAAABAAAAgKsAALETAAABAAAAgasAALITAAABAAAAgqsAALMTAAABAAAAg6sAALQTAAABAAAAhKsAALUTAAABAAAAhasAALYTAAABAAAAhqsAALcTAAABAAAAh6sAALgTAAABAAAAiKsAALkTAAABAAAAiasAALoTAAABAAAAiqsAALsTAAABAAAAi6sAALwTAAABAAAAjKsAAL0TAAABAAAAjasAAL4TAAABAAAAjqsAAL8TAAABAAAAj6sAAMATAAABAAAAkKsAAMETAAABAAAAkasAAMITAAABAAAAkqsAAMMTAAABAAAAk6sAAMQTAAABAAAAlKsAAMUTAAABAAAAlasAAMYTAAABAAAAlqsAAMcTAAABAAAAl6sAAMgTAAABAAAAmKsAAMkTAAABAAAAmasAAMoTAAABAAAAmqsAAMsTAAABAAAAm6sAAMwTAAABAAAAnKsAAM0TAAABAAAAnasAAM4TAAABAAAAnqsAAM8TAAABAAAAn6sAANATAAABAAAAoKsAANETAAABAAAAoasAANITAAABAAAAoqsAANMTAAABAAAAo6sAANQTAAABAAAApKsAANUTAAABAAAApasAANYTAAABAAAApqsAANcTAAABAAAAp6sAANgTAAABAAAAqKsAANkTAAABAAAAqasAANoTAAABAAAAqqsAANsTAAABAAAAq6sAANwTAAABAAAArKsAAN0TAAABAAAArasAAN4TAAABAAAArqsAAN8TAAABAAAAr6sAAOATAAABAAAAsKsAAOETAAABAAAAsasAAOITAAABAAAAsqsAAOMTAAABAAAAs6sAAOQTAAABAAAAtKsAAOUTAAABAAAAtasAAOYTAAABAAAAtqsAAOcTAAABAAAAt6sAAOgTAAABAAAAuKsAAOkTAAABAAAAuasAAOoTAAABAAAAuqsAAOsTAAABAAAAu6sAAOwTAAABAAAAvKsAAO0TAAABAAAAvasAAO4TAAABAAAAvqsAAO8TAAABAAAAv6sAAPATAAABAAAA+BMAAPETAAABAAAA+RMAAPITAAABAAAA+hMAAPMTAAABAAAA+xMAAPQTAAABAAAA/BMAAPUTAAABAAAA/RMAAHkdAAABAAAAfacAAH0dAAABAAAAYywAAI4dAAABAAAAxqcAAAEeAAABAAAAAB4AAAMeAAABAAAAAh4AAAUeAAABAAAABB4AAAceAAABAAAABh4AAAkeAAABAAAACB4AAAseAAABAAAACh4AAA0eAAABAAAADB4AAA8eAAABAAAADh4AABEeAAABAAAAEB4AABMeAAABAAAAEh4AABUeAAABAAAAFB4AABceAAABAAAAFh4AABkeAAABAAAAGB4AABseAAABAAAAGh4AAB0eAAABAAAAHB4AAB8eAAABAAAAHh4AACEeAAABAAAAIB4AACMeAAABAAAAIh4AACUeAAABAAAAJB4AACceAAABAAAAJh4AACkeAAABAAAAKB4AACseAAABAAAAKh4AAC0eAAABAAAALB4AAC8eAAABAAAALh4AADEeAAABAAAAMB4AADMeAAABAAAAMh4AADUeAAABAAAANB4AADceAAABAAAANh4AADkeAAABAAAAOB4AADseAAABAAAAOh4AAD0eAAAB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LAAAAQAAABMsAABELAAAAQAAABQsAABFLAAAAQAAABUsAABGLAAAAQAAABYsAABHLAAAAQAAABcsAABILAAAAQAAABgsAABJLAAAAQAAABksAABKLAAAAQAAABosAABLLAAAAQAAABssAABMLAAAAQAAABwsAABNLAAAAQAAAB0sAABOLAAAAQAAAB4sAABPLAAAAQAAAB8sAABQLAAAAQAAACAsAABRLAAAAQAAACEsAABSLAAAAQAAACIsAABTLAAAAQAAACMsAABULAAAAQAAACQsAABVLAAAAQAAACUsAABWLAAAAQAAACYsAABXLAAAAQAAACcsAABYLAAAAQAAACgsAABZLAAAAQAAACksAABaLAAAAQAAACosAABbLAAAAQAAACssAABcLAAAAQAAACwsAABdLAAAAQAAAC0sAABeLAAAAQAAAC4sAABfLAAAAQAAAC8sAABhLAAAAQAAAGAsAABlLAAAAQAAADoCAABmLAAAAQAAAD4CAABoLAAAAQAAAGcsAABqLAAAAQAAAGksAABsLAAAAQAAAGssAABzLAAAAQAAAHIsAAB2LAAAAQAAAHUsAACBLAAAAQAAAIAsAACDLAAAAQAAAIIsAACFLAAAAQAAAIQsAACHLAAAAQAAAIYsAACJLAAAAQAAAIgsAACLLAAAAQAAAIosAACNLAAAAQAAAIwsAACPLAAAAQAAAI4sAACRLAAAAQAAAJAsAACTLAAAAQAAAJIsAACVLAAAAQAAAJQsAACXLAAAAQAAAJYsAACZLAAAAQAAAJgsAACbLAAAAQAAAJosAACdLAAAAQAAAJwsAACfLAAAAQAAAJ4sAAChLAAAAQAAAKAsAACjLAAAAQAAAKIsAAClLAAAAQAAAKQsAACnLAAAAQAAAKYsAACpLAAAAQAAAKgsAACrLAAAAQAAAKosAACtLAAAAQAAAKwsAACvLAAAAQAAAK4sAACxLAAAAQAAALAsAACzLAAAAQAAALIsAAC1LAAAAQAAALQsAAC3LAAAAQAAALYsAAC5LAAAAQAAALgsAAC7LAAAAQAAALosAAC9LAAAAQAAALwsAAC/LAAAAQAAAL4sAADBLAAAAQAAAMAsAADDLAAAAQAAAMIsAADFLAAAAQAAAMQsAADHLAAAAQAAAMYsAADJLAAAAQAAAMgsAADLLAAAAQAAAMosAADN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AgAwJgIAgCYCAOAmAgD0JgIAACcCALA+AgAAUwIAoFMCAMBTAgCwVAIA0FQCAPBUAgAMVQIAIFUCAEBVAgCwVQIAcFYCAJBWAgDgVgIAAFcCADBXAgBQVwIAcFcCAMBrAgBAcAIAoHACAOBxAgAAcgIAMHICAFByAgCQcgIAsHICAECHAgBwiQIAIJkCAOC6AABgmQIAwJkCAPStAgAArgIAIK4CAHy3AgCItwIAoLcCAOC3AgAAuAIAILgCAEC4AgCAuAIA4LwCAHDCAgCcwgIAsMICANDCAgDwwgIADMMCACDDAgBAwwIA0M0CAPDNAgAwzgIAUM4CAIDOAgCgzgIA4NICAADTAgDgogAAINMCAFDTAgBw0wIAkNMCAADUAgBA1gIA4NYCAADXAgAk1wIAMNcCAEDXAgBg1wIAdNcCAIDXAgCQ1wIApNcCALDXAgC81wIAyNcCAODXAgBg2AIAgNgCAKDYAgDw3wIAUOACACDhAgBQ4QIAgOECAFDiAgCQ5gIAwOUAAMDmAgDs5gIAAOcCAPDnAgAc6AIAMOgCAHDoAgAQ6QIAgOsCANTrAgDg6wIAAOwCAGDsAgAw8gIAcPICAPD0AgAQ9QIAgPUCAJz1AgCw9QIA0PUCAPD1AgBQ/QIAcP0CAJD9AgBA/gIAvAADAMgAAwDgAAMAAAEDACABAwCQAQMAkAIDAKAEAwCACgMAhAsDAJALAwCkCwMAsAsDAMQLAwDQCwMAAAwDACAMAwBADAMAYAwDAJAMAwCwDAMA0AwDAHANAwCQDQMAwA0DADAOAwCMEQMAoBEDAMARAwAAEgMAIBIDADQSAwBAEgMAYBIDAOASAwAQ7AAApCgDALAoAwDgKAMAMCkDAFApAwCw6wAAcCkDAFBBAwDQVQMA8FUDABBWAwBUVgMAYFYDAGxWAwCAVgMAFDABALxWAwDIVgMA1FYDAOBWAwDsVgMA+FYDAARXAwAQVwMAHFcDAChXAwA0VwMAQFcDAExXAwBYVwMAZFcDAHBXAwB8VwMAiFcDAJRXAwCgVwMArFcDALhXAwDEVwMA0FcDANxXAwDoVwMA9FcDAABYAwAMWAMAGFgDACRYAwAwWAMAPFgDAEhYAwBUWAMAYFgDAGxYAwB4WAMAhFgDAJBYAwCcWAMAqFgDALRYAwDAWAMAzFgDANhYAwDkWAMA8FgDAPxYAwAIWQMAFFkDACBZAwAsWQMAOFkDAERZAwBQWQMAXFkDAGhZAwB0WQMAgFkDAIxZAwAw1wIAmFkDAKRZAwCwWQMAvFkDAMhZAwDUWQMA4FkDAOxZAwD4WQMABFoDABBaAwAcWgMAKFoDADRaAwBAWgMATFoDAFhaAwBkWgMAcFoDAHxaAwCIWgMAlFoDAKBaAwCsWgMAuFoDAMRaAwDQWgMA3FoDABxKAQDoWgMA9FoDAABbAwAMWwMAGFsDACRbAwAwWwMAPFsDAEhbAwBUWwMAYFsDAGxbAwB4WwMAhFsDAJBbAwCcWwMAqFsDALRbAwDAWwMAzFsDANhbAwDkWwMA8FsDAPxbAwAIXAMAFFwDACBcAwAsXAMAOFwDAERcAwBQXAMAXFwDAGhcAwB0XAMAgFwDAIxcAwCYXAMApFwDALBcAwC8XAMAyFwDANRcAwDgXAMA7FwDAPhcAwAEXQMAEF0DABxdAwAoXQMANF0DAEBdAwBMXQMAWF0DAGRdAwBwXQMAfF0DAIhdAwCUXQMAoF0DAKxdAwC4XQMAxF0DANBdAwDcXQMA6F0DAPRdAwAAXgMADF4DABheAwAkXgMAMF4DADxeAwBIXgMAVF4DAGBeAwBsXgMAeF4DAIReAwCQXgMAnF4DAKheAwC0XgMAwF4DAMxeAwDYXgMA5F4DAPTjAQDIAAMA8F4DAPxeAwAIXwMAFF8DACBfAwAsXwMAOF8DAERfAwBQXwMA7OYCAFxfAwBoXwMAdF8DAIBfAwAMwwIAjF8DAJhfAwCw1wIAdNcCAKRfAwCwXwMAvF8DAMhfAwDUXwMA4F8DAOxfAwD4XwMABGADABBgAwAcYAMAKGADADRgAwBAYAMATGADAFhgAwBkYAMAcGADAHxgAwCIYAMAvAADAJRgAwCgYAMArGADALhgAwDEYAMA0GADANxgAwDoYAMA9GADAABhAwAMYQMAGGEDACRhAwAwYQMAPGEDAEhhAwBUYQMAYGEDAGxhAwB4YQMAhGEDAJBhAwCcYQMAqGEDALRhAwDAYQMAzGEDANhhAwDkYQMA8GEDAPxhAwAIYgMAFGIDACBiAwAsYgMAOGIDAERiAwBQYgMAXGIDAGhiAwB0YgMAgGIDAIxiAwCYYgMApGIDALBiAwC8YgMAyGIDANRiAwDgYgMA7GIDAPhiAwAEYwMAEGMDABxjAwAoYwMANGMDAEBjAwBMYwMAWGMDAGRjAwBwYwMAfGMDAIhjAwCUYwMAoGMDAKxjAwC4YwMAxGMDANBjAwDcYwMA6GMDAPRjAwAAZAMADGQDABhkAwAkZAMAMGQDADxkAwBIZAMAVGQDAGBkAwBsZAMAeGQDAIRkAwCQZAMAnGQDAKhkAwC0ZAMAwGQDAMxkAwDYZAMA5GQDAPBkAwD8ZAMACGUDABRlAwAgZQMALGUDADhlAwBQZQMAFQAAAAsFAAABAAAAAQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAAAAAAIwAAAAUAQey9Egs9JAAAAEMFAAAEAAAAAQAAABYAAAAlAAAAJgAAACcAAAAoAAAAKQAAACoAAAArAAAALAAAAC0AAAAuAAAAIQBBtL4SCwUvAAAAHwBByL4SCwEFAEHUvhILATAAQey+EgsOMQAAADIAAABooQQAAAQAQYS/EgsBAQBBlL8SCwX/////CgBB2L8SCwPQx1Q=\"), c => c.charCodeAt(0));\n\nconst wasmBinary = binary;\nconst getWasmInstance = async (info) => {\n return WebAssembly.instantiate(wasmBinary, info).then((wasm) => wasm.instance.exports);\n};\n\nexport { getWasmInstance as default, getWasmInstance, wasmBinary };\n", "export * from '@shikijs/engine-oniguruma/wasm-inlined';\nexport { default } from '@shikijs/engine-oniguruma/wasm-inlined';\n", "// Matches the scheme of a URL, eg \"http://\"\nconst schemeRegex = /^[\\w+.-]+:\\/\\//;\n\n/**\n * Matches the parts of a URL:\n * 1. Scheme, including \":\", guaranteed.\n * 2. User/password, including \"@\", optional.\n * 3. Host, guaranteed.\n * 4. Port, including \":\", optional.\n * 5. Path, including \"/\", optional.\n * 6. Query, including \"?\", optional.\n * 7. Hash, including \"#\", optional.\n */\nconst urlRegex = /^([\\w+.-]+:)\\/\\/([^@/#?]*@)?([^:/#?]*)(:\\d+)?(\\/[^#?]*)?(\\?[^#]*)?(#.*)?/;\n\n/**\n * File URLs are weird. They dont' need the regular `//` in the scheme, they may or may not start\n * with a leading `/`, they can have a domain (but only if they don't start with a Windows drive).\n *\n * 1. Host, optional.\n * 2. Path, which may include \"/\", guaranteed.\n * 3. Query, including \"?\", optional.\n * 4. Hash, including \"#\", optional.\n */\nconst fileRegex = /^file:(?:\\/\\/((?![a-z]:)[^/#?]*)?)?(\\/?[^#?]*)(\\?[^#]*)?(#.*)?/i;\n\ntype Url = {\n scheme: string;\n user: string;\n host: string;\n port: string;\n path: string;\n query: string;\n hash: string;\n type: UrlType;\n};\n\nconst enum UrlType {\n Empty = 1,\n Hash = 2,\n Query = 3,\n RelativePath = 4,\n AbsolutePath = 5,\n SchemeRelative = 6,\n Absolute = 7,\n}\n\nfunction isAbsoluteUrl(input: string): boolean {\n return schemeRegex.test(input);\n}\n\nfunction isSchemeRelativeUrl(input: string): boolean {\n return input.startsWith('//');\n}\n\nfunction isAbsolutePath(input: string): boolean {\n return input.startsWith('/');\n}\n\nfunction isFileUrl(input: string): boolean {\n return input.startsWith('file:');\n}\n\nfunction isRelative(input: string): boolean {\n return /^[.?#]/.test(input);\n}\n\nfunction parseAbsoluteUrl(input: string): Url {\n const match = urlRegex.exec(input)!;\n return makeUrl(\n match[1],\n match[2] || '',\n match[3],\n match[4] || '',\n match[5] || '/',\n match[6] || '',\n match[7] || '',\n );\n}\n\nfunction parseFileUrl(input: string): Url {\n const match = fileRegex.exec(input)!;\n const path = match[2];\n return makeUrl(\n 'file:',\n '',\n match[1] || '',\n '',\n isAbsolutePath(path) ? path : '/' + path,\n match[3] || '',\n match[4] || '',\n );\n}\n\nfunction makeUrl(\n scheme: string,\n user: string,\n host: string,\n port: string,\n path: string,\n query: string,\n hash: string,\n): Url {\n return {\n scheme,\n user,\n host,\n port,\n path,\n query,\n hash,\n type: UrlType.Absolute,\n };\n}\n\nfunction parseUrl(input: string): Url {\n if (isSchemeRelativeUrl(input)) {\n const url = parseAbsoluteUrl('http:' + input);\n url.scheme = '';\n url.type = UrlType.SchemeRelative;\n return url;\n }\n\n if (isAbsolutePath(input)) {\n const url = parseAbsoluteUrl('http://foo.com' + input);\n url.scheme = '';\n url.host = '';\n url.type = UrlType.AbsolutePath;\n return url;\n }\n\n if (isFileUrl(input)) return parseFileUrl(input);\n\n if (isAbsoluteUrl(input)) return parseAbsoluteUrl(input);\n\n const url = parseAbsoluteUrl('http://foo.com/' + input);\n url.scheme = '';\n url.host = '';\n url.type = input\n ? input.startsWith('?')\n ? UrlType.Query\n : input.startsWith('#')\n ? UrlType.Hash\n : UrlType.RelativePath\n : UrlType.Empty;\n return url;\n}\n\nfunction stripPathFilename(path: string): string {\n // If a path ends with a parent directory \"..\", then it's a relative path with excess parent\n // paths. It's not a file, so we can't strip it.\n if (path.endsWith('/..')) return path;\n const index = path.lastIndexOf('/');\n return path.slice(0, index + 1);\n}\n\nfunction mergePaths(url: Url, base: Url) {\n normalizePath(base, base.type);\n\n // If the path is just a \"/\", then it was an empty path to begin with (remember, we're a relative\n // path).\n if (url.path === '/') {\n url.path = base.path;\n } else {\n // Resolution happens relative to the base path's directory, not the file.\n url.path = stripPathFilename(base.path) + url.path;\n }\n}\n\n/**\n * The path can have empty directories \"//\", unneeded parents \"foo/..\", or current directory\n * \"foo/.\". We need to normalize to a standard representation.\n */\nfunction normalizePath(url: Url, type: UrlType) {\n const rel = type <= UrlType.RelativePath;\n const pieces = url.path.split('/');\n\n // We need to preserve the first piece always, so that we output a leading slash. The item at\n // pieces[0] is an empty string.\n let pointer = 1;\n\n // Positive is the number of real directories we've output, used for popping a parent directory.\n // Eg, \"foo/bar/..\" will have a positive 2, and we can decrement to be left with just \"foo\".\n let positive = 0;\n\n // We need to keep a trailing slash if we encounter an empty directory (eg, splitting \"foo/\" will\n // generate `[\"foo\", \"\"]` pieces). And, if we pop a parent directory. But once we encounter a\n // real directory, we won't need to append, unless the other conditions happen again.\n let addTrailingSlash = false;\n\n for (let i = 1; i < pieces.length; i++) {\n const piece = pieces[i];\n\n // An empty directory, could be a trailing slash, or just a double \"//\" in the path.\n if (!piece) {\n addTrailingSlash = true;\n continue;\n }\n\n // If we encounter a real directory, then we don't need to append anymore.\n addTrailingSlash = false;\n\n // A current directory, which we can always drop.\n if (piece === '.') continue;\n\n // A parent directory, we need to see if there are any real directories we can pop. Else, we\n // have an excess of parents, and we'll need to keep the \"..\".\n if (piece === '..') {\n if (positive) {\n addTrailingSlash = true;\n positive--;\n pointer--;\n } else if (rel) {\n // If we're in a relativePath, then we need to keep the excess parents. Else, in an absolute\n // URL, protocol relative URL, or an absolute path, we don't need to keep excess.\n pieces[pointer++] = piece;\n }\n continue;\n }\n\n // We've encountered a real directory. Move it to the next insertion pointer, which accounts for\n // any popped or dropped directories.\n pieces[pointer++] = piece;\n positive++;\n }\n\n let path = '';\n for (let i = 1; i < pointer; i++) {\n path += '/' + pieces[i];\n }\n if (!path || (addTrailingSlash && !path.endsWith('/..'))) {\n path += '/';\n }\n url.path = path;\n}\n\n/**\n * Attempts to resolve `input` URL/path relative to `base`.\n */\nexport default function resolve(input: string, base: string | undefined): string {\n if (!input && !base) return '';\n\n const url = parseUrl(input);\n let inputType = url.type;\n\n if (base && inputType !== UrlType.Absolute) {\n const baseUrl = parseUrl(base);\n const baseType = baseUrl.type;\n\n switch (inputType) {\n case UrlType.Empty:\n url.hash = baseUrl.hash;\n // fall through\n\n case UrlType.Hash:\n url.query = baseUrl.query;\n // fall through\n\n case UrlType.Query:\n case UrlType.RelativePath:\n mergePaths(url, baseUrl);\n // fall through\n\n case UrlType.AbsolutePath:\n // The host, user, and port are joined, you can't copy one without the others.\n url.user = baseUrl.user;\n url.host = baseUrl.host;\n url.port = baseUrl.port;\n // fall through\n\n case UrlType.SchemeRelative:\n // The input doesn't have a schema at least, so we need to copy at least that over.\n url.scheme = baseUrl.scheme;\n }\n if (baseType > inputType) inputType = baseType;\n }\n\n normalizePath(url, inputType);\n\n const queryHash = url.query + url.hash;\n switch (inputType) {\n // This is impossible, because of the empty checks at the start of the function.\n // case UrlType.Empty:\n\n case UrlType.Hash:\n case UrlType.Query:\n return queryHash;\n\n case UrlType.RelativePath: {\n // The first char is always a \"/\", and we need it to be relative.\n const path = url.path.slice(1);\n\n if (!path) return queryHash || '.';\n\n if (isRelative(base || input) && !isRelative(path)) {\n // If base started with a leading \".\", or there is no base and input started with a \".\",\n // then we need to ensure that the relative path starts with a \".\". We don't know if\n // relative starts with a \"..\", though, so check before prepending.\n return './' + path + queryHash;\n }\n\n return path + queryHash;\n }\n\n case UrlType.AbsolutePath:\n return url.path + queryHash;\n\n default:\n return url.scheme + '//' + url.user + url.host + url.port + url.path + queryHash;\n }\n}\n", "\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DetailContext = exports.NoopContext = exports.VError = void 0;\n/**\n * Error thrown by validation. Besides an informative message, it includes the path to the\n * property which triggered the failure.\n */\nvar VError = /** @class */ (function (_super) {\n __extends(VError, _super);\n function VError(path, message) {\n var _this = _super.call(this, message) || this;\n _this.path = path;\n // See https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work for info about this workaround.\n Object.setPrototypeOf(_this, VError.prototype);\n return _this;\n }\n return VError;\n}(Error));\nexports.VError = VError;\n/**\n * Fast implementation of IContext used for first-pass validation. If that fails, we can validate\n * using DetailContext to collect error messages. That's faster for the common case when messages\n * normally pass validation.\n */\nvar NoopContext = /** @class */ (function () {\n function NoopContext() {\n }\n NoopContext.prototype.fail = function (relPath, message, score) {\n return false;\n };\n NoopContext.prototype.unionResolver = function () { return this; };\n NoopContext.prototype.createContext = function () { return this; };\n NoopContext.prototype.resolveUnion = function (ur) { };\n return NoopContext;\n}());\nexports.NoopContext = NoopContext;\n/**\n * Complete implementation of IContext that collects meaningfull errors.\n */\nvar DetailContext = /** @class */ (function () {\n function DetailContext() {\n // Stack of property names and associated messages for reporting helpful error messages.\n this._propNames = [\"\"];\n this._messages = [null];\n // Score is used to choose the best union member whose DetailContext to use for reporting.\n // Higher score means better match (or rather less severe mismatch).\n this._score = 0;\n }\n DetailContext.prototype.fail = function (relPath, message, score) {\n this._propNames.push(relPath);\n this._messages.push(message);\n this._score += score;\n return false;\n };\n DetailContext.prototype.unionResolver = function () {\n return new DetailUnionResolver();\n };\n DetailContext.prototype.resolveUnion = function (unionResolver) {\n var _a, _b;\n var u = unionResolver;\n var best = null;\n for (var _i = 0, _c = u.contexts; _i < _c.length; _i++) {\n var ctx = _c[_i];\n if (!best || ctx._score >= best._score) {\n best = ctx;\n }\n }\n if (best && best._score > 0) {\n (_a = this._propNames).push.apply(_a, best._propNames);\n (_b = this._messages).push.apply(_b, best._messages);\n }\n };\n DetailContext.prototype.getError = function (path) {\n var msgParts = [];\n for (var i = this._propNames.length - 1; i >= 0; i--) {\n var p = this._propNames[i];\n path += (typeof p === \"number\") ? \"[\" + p + \"]\" : (p ? \".\" + p : \"\");\n var m = this._messages[i];\n if (m) {\n msgParts.push(path + \" \" + m);\n }\n }\n return new VError(path, msgParts.join(\"; \"));\n };\n DetailContext.prototype.getErrorDetail = function (path) {\n var details = [];\n for (var i = this._propNames.length - 1; i >= 0; i--) {\n var p = this._propNames[i];\n path += (typeof p === \"number\") ? \"[\" + p + \"]\" : (p ? \".\" + p : \"\");\n var message = this._messages[i];\n if (message) {\n details.push({ path: path, message: message });\n }\n }\n var detail = null;\n for (var i = details.length - 1; i >= 0; i--) {\n if (detail) {\n details[i].nested = [detail];\n }\n detail = details[i];\n }\n return detail;\n };\n return DetailContext;\n}());\nexports.DetailContext = DetailContext;\nvar DetailUnionResolver = /** @class */ (function () {\n function DetailUnionResolver() {\n this.contexts = [];\n }\n DetailUnionResolver.prototype.createContext = function () {\n var ctx = new DetailContext();\n this.contexts.push(ctx);\n return ctx;\n };\n return DetailUnionResolver;\n}());\n", "\"use strict\";\n/**\n * This module defines nodes used to define types and validations for objects and interfaces.\n */\n// tslint:disable:no-shadowed-variable prefer-for-of\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.basicTypes = exports.BasicType = exports.TParamList = exports.TParam = exports.param = exports.TFunc = exports.func = exports.TProp = exports.TOptional = exports.opt = exports.TIface = exports.iface = exports.TEnumLiteral = exports.enumlit = exports.TEnumType = exports.enumtype = exports.TIntersection = exports.intersection = exports.TUnion = exports.union = exports.TTuple = exports.tuple = exports.TArray = exports.array = exports.TLiteral = exports.lit = exports.TName = exports.name = exports.TType = void 0;\nvar util_1 = require(\"./util\");\n/** Node that represents a type. */\nvar TType = /** @class */ (function () {\n function TType() {\n }\n return TType;\n}());\nexports.TType = TType;\n/** Parses a type spec into a TType node. */\nfunction parseSpec(typeSpec) {\n return typeof typeSpec === \"string\" ? name(typeSpec) : typeSpec;\n}\nfunction getNamedType(suite, name) {\n var ttype = suite[name];\n if (!ttype) {\n throw new Error(\"Unknown type \" + name);\n }\n return ttype;\n}\n/**\n * Defines a type name, either built-in, or defined in this suite. It can typically be included in\n * the specs as just a plain string.\n */\nfunction name(value) { return new TName(value); }\nexports.name = name;\nvar TName = /** @class */ (function (_super) {\n __extends(TName, _super);\n function TName(name) {\n var _this = _super.call(this) || this;\n _this.name = name;\n _this._failMsg = \"is not a \" + name;\n return _this;\n }\n TName.prototype.getChecker = function (suite, strict, allowedProps) {\n var _this = this;\n var ttype = getNamedType(suite, this.name);\n var checker = ttype.getChecker(suite, strict, allowedProps);\n if (ttype instanceof BasicType || ttype instanceof TName) {\n return checker;\n }\n // For complex types, add an additional \"is not a <Type>\" message on failure.\n return function (value, ctx) { return checker(value, ctx) ? true : ctx.fail(null, _this._failMsg, 0); };\n };\n return TName;\n}(TType));\nexports.TName = TName;\n/**\n * Defines a literal value, e.g. lit('hello') or lit(123).\n */\nfunction lit(value) { return new TLiteral(value); }\nexports.lit = lit;\nvar TLiteral = /** @class */ (function (_super) {\n __extends(TLiteral, _super);\n function TLiteral(value) {\n var _this = _super.call(this) || this;\n _this.value = value;\n _this.name = JSON.stringify(value);\n _this._failMsg = \"is not \" + _this.name;\n return _this;\n }\n TLiteral.prototype.getChecker = function (suite, strict) {\n var _this = this;\n return function (value, ctx) { return (value === _this.value) ? true : ctx.fail(null, _this._failMsg, -1); };\n };\n return TLiteral;\n}(TType));\nexports.TLiteral = TLiteral;\n/**\n * Defines an array type, e.g. array('number').\n */\nfunction array(typeSpec) { return new TArray(parseSpec(typeSpec)); }\nexports.array = array;\nvar TArray = /** @class */ (function (_super) {\n __extends(TArray, _super);\n function TArray(ttype) {\n var _this = _super.call(this) || this;\n _this.ttype = ttype;\n return _this;\n }\n TArray.prototype.getChecker = function (suite, strict) {\n var itemChecker = this.ttype.getChecker(suite, strict);\n return function (value, ctx) {\n if (!Array.isArray(value)) {\n return ctx.fail(null, \"is not an array\", 0);\n }\n for (var i = 0; i < value.length; i++) {\n var ok = itemChecker(value[i], ctx);\n if (!ok) {\n return ctx.fail(i, null, 1);\n }\n }\n return true;\n };\n };\n return TArray;\n}(TType));\nexports.TArray = TArray;\n/**\n * Defines a tuple type, e.g. tuple('string', 'number').\n */\nfunction tuple() {\n var typeSpec = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n typeSpec[_i] = arguments[_i];\n }\n return new TTuple(typeSpec.map(function (t) { return parseSpec(t); }));\n}\nexports.tuple = tuple;\nvar TTuple = /** @class */ (function (_super) {\n __extends(TTuple, _super);\n function TTuple(ttypes) {\n var _this = _super.call(this) || this;\n _this.ttypes = ttypes;\n return _this;\n }\n TTuple.prototype.getChecker = function (suite, strict) {\n var itemCheckers = this.ttypes.map(function (t) { return t.getChecker(suite, strict); });\n var checker = function (value, ctx) {\n if (!Array.isArray(value)) {\n return ctx.fail(null, \"is not an array\", 0);\n }\n for (var i = 0; i < itemCheckers.length; i++) {\n var ok = itemCheckers[i](value[i], ctx);\n if (!ok) {\n return ctx.fail(i, null, 1);\n }\n }\n return true;\n };\n if (!strict) {\n return checker;\n }\n return function (value, ctx) {\n if (!checker(value, ctx)) {\n return false;\n }\n return value.length <= itemCheckers.length ? true :\n ctx.fail(itemCheckers.length, \"is extraneous\", 2);\n };\n };\n return TTuple;\n}(TType));\nexports.TTuple = TTuple;\n/**\n * Defines a union type, e.g. union('number', 'null').\n */\nfunction union() {\n var typeSpec = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n typeSpec[_i] = arguments[_i];\n }\n return new TUnion(typeSpec.map(function (t) { return parseSpec(t); }));\n}\nexports.union = union;\nvar TUnion = /** @class */ (function (_super) {\n __extends(TUnion, _super);\n function TUnion(ttypes) {\n var _this = _super.call(this) || this;\n _this.ttypes = ttypes;\n var names = ttypes.map(function (t) { return t instanceof TName || t instanceof TLiteral ? t.name : null; })\n .filter(function (n) { return n; });\n var otherTypes = ttypes.length - names.length;\n if (names.length) {\n if (otherTypes > 0) {\n names.push(otherTypes + \" more\");\n }\n _this._failMsg = \"is none of \" + names.join(\", \");\n }\n else {\n _this._failMsg = \"is none of \" + otherTypes + \" types\";\n }\n return _this;\n }\n TUnion.prototype.getChecker = function (suite, strict) {\n var _this = this;\n var itemCheckers = this.ttypes.map(function (t) { return t.getChecker(suite, strict); });\n return function (value, ctx) {\n var ur = ctx.unionResolver();\n for (var i = 0; i < itemCheckers.length; i++) {\n var ok = itemCheckers[i](value, ur.createContext());\n if (ok) {\n return true;\n }\n }\n ctx.resolveUnion(ur);\n return ctx.fail(null, _this._failMsg, 0);\n };\n };\n return TUnion;\n}(TType));\nexports.TUnion = TUnion;\n/**\n * Defines an intersection type, e.g. intersection('number', 'null').\n */\nfunction intersection() {\n var typeSpec = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n typeSpec[_i] = arguments[_i];\n }\n return new TIntersection(typeSpec.map(function (t) { return parseSpec(t); }));\n}\nexports.intersection = intersection;\nvar TIntersection = /** @class */ (function (_super) {\n __extends(TIntersection, _super);\n function TIntersection(ttypes) {\n var _this = _super.call(this) || this;\n _this.ttypes = ttypes;\n return _this;\n }\n TIntersection.prototype.getChecker = function (suite, strict) {\n var allowedProps = new Set();\n var itemCheckers = this.ttypes.map(function (t) { return t.getChecker(suite, strict, allowedProps); });\n return function (value, ctx) {\n var ok = itemCheckers.every(function (checker) { return checker(value, ctx); });\n if (ok) {\n return true;\n }\n return ctx.fail(null, null, 0);\n };\n };\n return TIntersection;\n}(TType));\nexports.TIntersection = TIntersection;\n/**\n * Defines an enum type, e.g. enum({'A': 1, 'B': 2}).\n */\nfunction enumtype(values) {\n return new TEnumType(values);\n}\nexports.enumtype = enumtype;\nvar TEnumType = /** @class */ (function (_super) {\n __extends(TEnumType, _super);\n function TEnumType(members) {\n var _this = _super.call(this) || this;\n _this.members = members;\n _this.validValues = new Set();\n _this._failMsg = \"is not a valid enum value\";\n _this.validValues = new Set(Object.keys(members).map(function (name) { return members[name]; }));\n return _this;\n }\n TEnumType.prototype.getChecker = function (suite, strict) {\n var _this = this;\n return function (value, ctx) {\n return (_this.validValues.has(value) ? true : ctx.fail(null, _this._failMsg, 0));\n };\n };\n return TEnumType;\n}(TType));\nexports.TEnumType = TEnumType;\n/**\n * Defines a literal enum value, such as Direction.Up, specified as enumlit(\"Direction\", \"Up\").\n */\nfunction enumlit(name, prop) {\n return new TEnumLiteral(name, prop);\n}\nexports.enumlit = enumlit;\nvar TEnumLiteral = /** @class */ (function (_super) {\n __extends(TEnumLiteral, _super);\n function TEnumLiteral(enumName, prop) {\n var _this = _super.call(this) || this;\n _this.enumName = enumName;\n _this.prop = prop;\n _this._failMsg = \"is not \" + enumName + \".\" + prop;\n return _this;\n }\n TEnumLiteral.prototype.getChecker = function (suite, strict) {\n var _this = this;\n var ttype = getNamedType(suite, this.enumName);\n if (!(ttype instanceof TEnumType)) {\n throw new Error(\"Type \" + this.enumName + \" used in enumlit is not an enum type\");\n }\n var val = ttype.members[this.prop];\n if (!ttype.members.hasOwnProperty(this.prop)) {\n throw new Error(\"Unknown value \" + this.enumName + \".\" + this.prop + \" used in enumlit\");\n }\n return function (value, ctx) { return (value === val) ? true : ctx.fail(null, _this._failMsg, -1); };\n };\n return TEnumLiteral;\n}(TType));\nexports.TEnumLiteral = TEnumLiteral;\nfunction makeIfaceProps(props) {\n return Object.keys(props).map(function (name) { return makeIfaceProp(name, props[name]); });\n}\nfunction makeIfaceProp(name, prop) {\n return prop instanceof TOptional ?\n new TProp(name, prop.ttype, true) :\n new TProp(name, parseSpec(prop), false);\n}\n/**\n * Defines an interface. The first argument is an array of interfaces that it extends, and the\n * second is an array of properties.\n */\nfunction iface(bases, props) {\n return new TIface(bases, makeIfaceProps(props));\n}\nexports.iface = iface;\nvar TIface = /** @class */ (function (_super) {\n __extends(TIface, _super);\n function TIface(bases, props) {\n var _this = _super.call(this) || this;\n _this.bases = bases;\n _this.props = props;\n _this.propSet = new Set(props.map(function (p) { return p.name; }));\n return _this;\n }\n TIface.prototype.getChecker = function (suite, strict, allowedProps) {\n var _this = this;\n var baseCheckers = this.bases.map(function (b) { return getNamedType(suite, b).getChecker(suite, strict); });\n var propCheckers = this.props.map(function (prop) { return prop.ttype.getChecker(suite, strict); });\n var testCtx = new util_1.NoopContext();\n // Consider a prop required if it's not optional AND does not allow for undefined as a value.\n var isPropRequired = this.props.map(function (prop, i) {\n return !prop.isOpt && !propCheckers[i](undefined, testCtx);\n });\n var checker = function (value, ctx) {\n if (typeof value !== \"object\" || value === null) {\n return ctx.fail(null, \"is not an object\", 0);\n }\n for (var i = 0; i < baseCheckers.length; i++) {\n if (!baseCheckers[i](value, ctx)) {\n return false;\n }\n }\n for (var i = 0; i < propCheckers.length; i++) {\n var name_1 = _this.props[i].name;\n var v = value[name_1];\n if (v === undefined) {\n if (isPropRequired[i]) {\n return ctx.fail(name_1, \"is missing\", 1);\n }\n }\n else {\n var ok = propCheckers[i](v, ctx);\n if (!ok) {\n return ctx.fail(name_1, null, 1);\n }\n }\n }\n return true;\n };\n if (!strict) {\n return checker;\n }\n var propSet = this.propSet;\n if (allowedProps) {\n this.propSet.forEach(function (prop) { return allowedProps.add(prop); });\n propSet = allowedProps;\n }\n // In strict mode, check also for unknown enumerable properties.\n return function (value, ctx) {\n if (!checker(value, ctx)) {\n return false;\n }\n for (var prop in value) {\n if (!propSet.has(prop)) {\n return ctx.fail(prop, \"is extraneous\", 2);\n }\n }\n return true;\n };\n };\n return TIface;\n}(TType));\nexports.TIface = TIface;\n/**\n * Defines an optional property on an interface.\n */\nfunction opt(typeSpec) { return new TOptional(parseSpec(typeSpec)); }\nexports.opt = opt;\nvar TOptional = /** @class */ (function (_super) {\n __extends(TOptional, _super);\n function TOptional(ttype) {\n var _this = _super.call(this) || this;\n _this.ttype = ttype;\n return _this;\n }\n TOptional.prototype.getChecker = function (suite, strict) {\n var itemChecker = this.ttype.getChecker(suite, strict);\n return function (value, ctx) {\n return value === undefined || itemChecker(value, ctx);\n };\n };\n return TOptional;\n}(TType));\nexports.TOptional = TOptional;\n/**\n * Defines a property in an interface.\n */\nvar TProp = /** @class */ (function () {\n function TProp(name, ttype, isOpt) {\n this.name = name;\n this.ttype = ttype;\n this.isOpt = isOpt;\n }\n return TProp;\n}());\nexports.TProp = TProp;\n/**\n * Defines a function. The first argument declares the function's return type, the rest declare\n * its parameters.\n */\nfunction func(resultSpec) {\n var params = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n params[_i - 1] = arguments[_i];\n }\n return new TFunc(new TParamList(params), parseSpec(resultSpec));\n}\nexports.func = func;\nvar TFunc = /** @class */ (function (_super) {\n __extends(TFunc, _super);\n function TFunc(paramList, result) {\n var _this = _super.call(this) || this;\n _this.paramList = paramList;\n _this.result = result;\n return _this;\n }\n TFunc.prototype.getChecker = function (suite, strict) {\n return function (value, ctx) {\n return typeof value === \"function\" ? true : ctx.fail(null, \"is not a function\", 0);\n };\n };\n return TFunc;\n}(TType));\nexports.TFunc = TFunc;\n/**\n * Defines a function parameter.\n */\nfunction param(name, typeSpec, isOpt) {\n return new TParam(name, parseSpec(typeSpec), Boolean(isOpt));\n}\nexports.param = param;\nvar TParam = /** @class */ (function () {\n function TParam(name, ttype, isOpt) {\n this.name = name;\n this.ttype = ttype;\n this.isOpt = isOpt;\n }\n return TParam;\n}());\nexports.TParam = TParam;\n/**\n * Defines a function parameter list.\n */\nvar TParamList = /** @class */ (function (_super) {\n __extends(TParamList, _super);\n function TParamList(params) {\n var _this = _super.call(this) || this;\n _this.params = params;\n return _this;\n }\n TParamList.prototype.getChecker = function (suite, strict) {\n var _this = this;\n var itemCheckers = this.params.map(function (t) { return t.ttype.getChecker(suite, strict); });\n var testCtx = new util_1.NoopContext();\n var isParamRequired = this.params.map(function (param, i) {\n return !param.isOpt && !itemCheckers[i](undefined, testCtx);\n });\n var checker = function (value, ctx) {\n if (!Array.isArray(value)) {\n return ctx.fail(null, \"is not an array\", 0);\n }\n for (var i = 0; i < itemCheckers.length; i++) {\n var p = _this.params[i];\n if (value[i] === undefined) {\n if (isParamRequired[i]) {\n return ctx.fail(p.name, \"is missing\", 1);\n }\n }\n else {\n var ok = itemCheckers[i](value[i], ctx);\n if (!ok) {\n return ctx.fail(p.name, null, 1);\n }\n }\n }\n return true;\n };\n if (!strict) {\n return checker;\n }\n return function (value, ctx) {\n if (!checker(value, ctx)) {\n return false;\n }\n return value.length <= itemCheckers.length ? true :\n ctx.fail(itemCheckers.length, \"is extraneous\", 2);\n };\n };\n return TParamList;\n}(TType));\nexports.TParamList = TParamList;\n/**\n * Single TType implementation for all basic built-in types.\n */\nvar BasicType = /** @class */ (function (_super) {\n __extends(BasicType, _super);\n function BasicType(validator, message) {\n var _this = _super.call(this) || this;\n _this.validator = validator;\n _this.message = message;\n return _this;\n }\n BasicType.prototype.getChecker = function (suite, strict) {\n var _this = this;\n return function (value, ctx) { return _this.validator(value) ? true : ctx.fail(null, _this.message, 0); };\n };\n return BasicType;\n}(TType));\nexports.BasicType = BasicType;\n/**\n * Defines the suite of basic types.\n */\nexports.basicTypes = {\n any: new BasicType(function (v) { return true; }, \"is invalid\"),\n number: new BasicType(function (v) { return (typeof v === \"number\"); }, \"is not a number\"),\n object: new BasicType(function (v) { return (typeof v === \"object\" && v); }, \"is not an object\"),\n boolean: new BasicType(function (v) { return (typeof v === \"boolean\"); }, \"is not a boolean\"),\n string: new BasicType(function (v) { return (typeof v === \"string\"); }, \"is not a string\"),\n symbol: new BasicType(function (v) { return (typeof v === \"symbol\"); }, \"is not a symbol\"),\n void: new BasicType(function (v) { return (v == null); }, \"is not void\"),\n undefined: new BasicType(function (v) { return (v === undefined); }, \"is not undefined\"),\n null: new BasicType(function (v) { return (v === null); }, \"is not null\"),\n never: new BasicType(function (v) { return false; }, \"is unexpected\"),\n Date: new BasicType(getIsNativeChecker(\"[object Date]\"), \"is not a Date\"),\n RegExp: new BasicType(getIsNativeChecker(\"[object RegExp]\"), \"is not a RegExp\"),\n};\n// This approach for checking native object types mirrors that of lodash. Its advantage over\n// `isinstance` is that it can still return true for native objects created in different JS\n// execution environments.\nvar nativeToString = Object.prototype.toString;\nfunction getIsNativeChecker(tag) {\n return function (v) { return typeof v === \"object\" && v && nativeToString.call(v) === tag; };\n}\nif (typeof Buffer !== \"undefined\") {\n exports.basicTypes.Buffer = new BasicType(function (v) { return Buffer.isBuffer(v); }, \"is not a Buffer\");\n}\nvar _loop_1 = function (array_1) {\n exports.basicTypes[array_1.name] = new BasicType(function (v) { return (v instanceof array_1); }, \"is not a \" + array_1.name);\n};\n// Support typed arrays of various flavors\nfor (var _i = 0, _a = [Int8Array, Uint8Array, Uint8ClampedArray, Int16Array, Uint16Array,\n Int32Array, Uint32Array, Float32Array, Float64Array, ArrayBuffer]; _i < _a.length; _i++) {\n var array_1 = _a[_i];\n _loop_1(array_1);\n}\n", "\"use strict\";\nvar __spreadArrays = (this && this.__spreadArrays) || function () {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Checker = exports.createCheckers = void 0;\nvar types_1 = require(\"./types\");\nvar util_1 = require(\"./util\");\n/**\n * Export functions used to define interfaces.\n */\nvar types_2 = require(\"./types\");\nObject.defineProperty(exports, \"TArray\", { enumerable: true, get: function () { return types_2.TArray; } });\nObject.defineProperty(exports, \"TEnumType\", { enumerable: true, get: function () { return types_2.TEnumType; } });\nObject.defineProperty(exports, \"TEnumLiteral\", { enumerable: true, get: function () { return types_2.TEnumLiteral; } });\nObject.defineProperty(exports, \"TFunc\", { enumerable: true, get: function () { return types_2.TFunc; } });\nObject.defineProperty(exports, \"TIface\", { enumerable: true, get: function () { return types_2.TIface; } });\nObject.defineProperty(exports, \"TLiteral\", { enumerable: true, get: function () { return types_2.TLiteral; } });\nObject.defineProperty(exports, \"TName\", { enumerable: true, get: function () { return types_2.TName; } });\nObject.defineProperty(exports, \"TOptional\", { enumerable: true, get: function () { return types_2.TOptional; } });\nObject.defineProperty(exports, \"TParam\", { enumerable: true, get: function () { return types_2.TParam; } });\nObject.defineProperty(exports, \"TParamList\", { enumerable: true, get: function () { return types_2.TParamList; } });\nObject.defineProperty(exports, \"TProp\", { enumerable: true, get: function () { return types_2.TProp; } });\nObject.defineProperty(exports, \"TTuple\", { enumerable: true, get: function () { return types_2.TTuple; } });\nObject.defineProperty(exports, \"TType\", { enumerable: true, get: function () { return types_2.TType; } });\nObject.defineProperty(exports, \"TUnion\", { enumerable: true, get: function () { return types_2.TUnion; } });\nObject.defineProperty(exports, \"TIntersection\", { enumerable: true, get: function () { return types_2.TIntersection; } });\nObject.defineProperty(exports, \"array\", { enumerable: true, get: function () { return types_2.array; } });\nObject.defineProperty(exports, \"enumlit\", { enumerable: true, get: function () { return types_2.enumlit; } });\nObject.defineProperty(exports, \"enumtype\", { enumerable: true, get: function () { return types_2.enumtype; } });\nObject.defineProperty(exports, \"func\", { enumerable: true, get: function () { return types_2.func; } });\nObject.defineProperty(exports, \"iface\", { enumerable: true, get: function () { return types_2.iface; } });\nObject.defineProperty(exports, \"lit\", { enumerable: true, get: function () { return types_2.lit; } });\nObject.defineProperty(exports, \"name\", { enumerable: true, get: function () { return types_2.name; } });\nObject.defineProperty(exports, \"opt\", { enumerable: true, get: function () { return types_2.opt; } });\nObject.defineProperty(exports, \"param\", { enumerable: true, get: function () { return types_2.param; } });\nObject.defineProperty(exports, \"tuple\", { enumerable: true, get: function () { return types_2.tuple; } });\nObject.defineProperty(exports, \"union\", { enumerable: true, get: function () { return types_2.union; } });\nObject.defineProperty(exports, \"intersection\", { enumerable: true, get: function () { return types_2.intersection; } });\nObject.defineProperty(exports, \"BasicType\", { enumerable: true, get: function () { return types_2.BasicType; } });\nvar util_2 = require(\"./util\");\nObject.defineProperty(exports, \"VError\", { enumerable: true, get: function () { return util_2.VError; } });\n/**\n * Takes one of more type suites (e.g. a module generated by `ts-interface-builder`), and combines\n * them into a suite of interface checkers. If a type is used by name, that name should be present\n * among the passed-in type suites.\n *\n * The returned object maps type names to Checker objects.\n */\nfunction createCheckers() {\n var typeSuite = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n typeSuite[_i] = arguments[_i];\n }\n var fullSuite = Object.assign.apply(Object, __spreadArrays([{}, types_1.basicTypes], typeSuite));\n var checkers = {};\n for (var _a = 0, typeSuite_1 = typeSuite; _a < typeSuite_1.length; _a++) {\n var suite_1 = typeSuite_1[_a];\n for (var _b = 0, _c = Object.keys(suite_1); _b < _c.length; _b++) {\n var name = _c[_b];\n checkers[name] = new Checker(fullSuite, suite_1[name]);\n }\n }\n return checkers;\n}\nexports.createCheckers = createCheckers;\n/**\n * Checker implements validation of objects, and also includes accessors to validate method calls.\n * Checkers should be created using `createCheckers()`.\n */\nvar Checker = /** @class */ (function () {\n // Create checkers by using `createCheckers()` function.\n function Checker(suite, ttype, _path) {\n if (_path === void 0) { _path = 'value'; }\n this.suite = suite;\n this.ttype = ttype;\n this._path = _path;\n this.props = new Map();\n if (ttype instanceof types_1.TIface) {\n for (var _i = 0, _a = ttype.props; _i < _a.length; _i++) {\n var p = _a[_i];\n this.props.set(p.name, p.ttype);\n }\n }\n this.checkerPlain = this.ttype.getChecker(suite, false);\n this.checkerStrict = this.ttype.getChecker(suite, true);\n }\n /**\n * Set the path to report in errors, instead of the default \"value\". (E.g. if the Checker is for\n * a \"person\" interface, set path to \"person\" to report e.g. \"person.name is not a string\".)\n */\n Checker.prototype.setReportedPath = function (path) {\n this._path = path;\n };\n /**\n * Check that the given value satisfies this checker's type, or throw Error.\n */\n Checker.prototype.check = function (value) { return this._doCheck(this.checkerPlain, value); };\n /**\n * A fast check for whether or not the given value satisfies this Checker's type. This returns\n * true or false, does not produce an error message, and is fast both on success and on failure.\n */\n Checker.prototype.test = function (value) {\n return this.checkerPlain(value, new util_1.NoopContext());\n };\n /**\n * Returns an error object describing the errors if the given value does not satisfy this\n * Checker's type, or null if it does.\n */\n Checker.prototype.validate = function (value) {\n return this._doValidate(this.checkerPlain, value);\n };\n /**\n * Check that the given value satisfies this checker's type strictly. This checks that objects\n * and tuples have no extra members. Note that this prevents backward compatibility, so usually\n * a plain check() is more appropriate.\n */\n Checker.prototype.strictCheck = function (value) { return this._doCheck(this.checkerStrict, value); };\n /**\n * A fast strict check for whether or not the given value satisfies this Checker's type. Returns\n * true or false, does not produce an error message, and is fast both on success and on failure.\n */\n Checker.prototype.strictTest = function (value) {\n return this.checkerStrict(value, new util_1.NoopContext());\n };\n /**\n * Returns an error object describing the errors if the given value does not satisfy this\n * Checker's type strictly, or null if it does.\n */\n Checker.prototype.strictValidate = function (value) {\n return this._doValidate(this.checkerStrict, value);\n };\n /**\n * If this checker is for an interface, returns a Checker for the type required for the given\n * property of this interface.\n */\n Checker.prototype.getProp = function (prop) {\n var ttype = this.props.get(prop);\n if (!ttype) {\n throw new Error(\"Type has no property \" + prop);\n }\n return new Checker(this.suite, ttype, this._path + \".\" + prop);\n };\n /**\n * If this checker is for an interface, returns a Checker for the argument-list required to call\n * the given method of this interface. E.g. if this Checker is for the interface:\n * interface Foo {\n * find(s: string, pos?: number): number;\n * }\n * Then methodArgs(\"find\").check(...) will succeed for [\"foo\"] and [\"foo\", 3], but not for [17].\n */\n Checker.prototype.methodArgs = function (methodName) {\n var tfunc = this._getMethod(methodName);\n return new Checker(this.suite, tfunc.paramList);\n };\n /**\n * If this checker is for an interface, returns a Checker for the return value of the given\n * method of this interface.\n */\n Checker.prototype.methodResult = function (methodName) {\n var tfunc = this._getMethod(methodName);\n return new Checker(this.suite, tfunc.result);\n };\n /**\n * If this checker is for a function, returns a Checker for its argument-list.\n */\n Checker.prototype.getArgs = function () {\n if (!(this.ttype instanceof types_1.TFunc)) {\n throw new Error(\"getArgs() applied to non-function\");\n }\n return new Checker(this.suite, this.ttype.paramList);\n };\n /**\n * If this checker is for a function, returns a Checker for its result.\n */\n Checker.prototype.getResult = function () {\n if (!(this.ttype instanceof types_1.TFunc)) {\n throw new Error(\"getResult() applied to non-function\");\n }\n return new Checker(this.suite, this.ttype.result);\n };\n /**\n * Return the type for which this is a checker.\n */\n Checker.prototype.getType = function () {\n return this.ttype;\n };\n /**\n * Actual implementation of check() and strictCheck().\n */\n Checker.prototype._doCheck = function (checkerFunc, value) {\n var noopCtx = new util_1.NoopContext();\n if (!checkerFunc(value, noopCtx)) {\n var detailCtx = new util_1.DetailContext();\n checkerFunc(value, detailCtx);\n throw detailCtx.getError(this._path);\n }\n };\n Checker.prototype._doValidate = function (checkerFunc, value) {\n var noopCtx = new util_1.NoopContext();\n if (checkerFunc(value, noopCtx)) {\n return null;\n }\n var detailCtx = new util_1.DetailContext();\n checkerFunc(value, detailCtx);\n return detailCtx.getErrorDetail(this._path);\n };\n Checker.prototype._getMethod = function (methodName) {\n var ttype = this.props.get(methodName);\n if (!ttype) {\n throw new Error(\"Type has no property \" + methodName);\n }\n if (!(ttype instanceof types_1.TFunc)) {\n throw new Error(\"Property \" + methodName + \" is not a method\");\n }\n return ttype;\n };\n return Checker;\n}());\nexports.Checker = Checker;\n", "\"use strict\";\nexports.__esModule = true;\nexports.LinesAndColumns = void 0;\nvar LF = '\\n';\nvar CR = '\\r';\nvar LinesAndColumns = /** @class */ (function () {\n function LinesAndColumns(string) {\n this.string = string;\n var offsets = [0];\n for (var offset = 0; offset < string.length;) {\n switch (string[offset]) {\n case LF:\n offset += LF.length;\n offsets.push(offset);\n break;\n case CR:\n offset += CR.length;\n if (string[offset] === LF) {\n offset += LF.length;\n }\n offsets.push(offset);\n break;\n default:\n offset++;\n break;\n }\n }\n this.offsets = offsets;\n }\n LinesAndColumns.prototype.locationForIndex = function (index) {\n if (index < 0 || index > this.string.length) {\n return null;\n }\n var line = 0;\n var offsets = this.offsets;\n while (offsets[line + 1] <= index) {\n line++;\n }\n var column = index - offsets[line];\n return { line: line, column: column };\n };\n LinesAndColumns.prototype.indexForLocation = function (location) {\n var line = location.line, column = location.column;\n if (line < 0 || line >= this.offsets.length) {\n return null;\n }\n if (column < 0 || column > this.lengthOfLine(line)) {\n return null;\n }\n return this.offsets[line] + column;\n };\n LinesAndColumns.prototype.lengthOfLine = function (line) {\n var offset = this.offsets[line];\n var nextOffset = line === this.offsets.length - 1\n ? this.string.length\n : this.offsets[line + 1];\n return nextOffset - offset;\n };\n return LinesAndColumns;\n}());\nexports.LinesAndColumns = LinesAndColumns;\nexports[\"default\"] = LinesAndColumns;\n", "import React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport App from './App';\n\nconst container = document.getElementById('root');\nif (container) {\n const root = createRoot(container);\n root.render(\n <React.StrictMode>\n <App />\n </React.StrictMode>\n );\n}\n", "import React, { useState } from 'react';\nimport { CodeView } from '@react-code-view/react';\nimport '@react-code-view/react/styles/index.css';\n\nconst examples = {\n toast: `const App = () => {\n const [toasts, setToasts] = React.useState([]);\n\n const showToast = (message, type = 'info') => {\n const id = Date.now();\n setToasts(prev => [...prev, { id, message, type }]);\n setTimeout(() => {\n setToasts(prev => prev.filter(t => t.id !== id));\n }, 3000);\n };\n\n const colors = {\n info: { bg: '#007bff', text: 'white' },\n success: { bg: '#28a745', text: 'white' },\n warning: { bg: '#ffc107', text: '#333' },\n error: { bg: '#dc3545', text: 'white' },\n };\n\n return (\n <div style={{ padding: '20px', fontFamily: 'sans-serif' }}>\n <div style={{ marginBottom: '20px' }}>\n <button onClick={() => showToast('Info message', 'info')} style={{ margin: '5px', padding: '8px 16px', cursor: 'pointer' }}>\n Show Info\n </button>\n <button onClick={() => showToast('Success!', 'success')} style={{ margin: '5px', padding: '8px 16px', cursor: 'pointer' }}>\n Show Success\n </button>\n <button onClick={() => showToast('Warning!', 'warning')} style={{ margin: '5px', padding: '8px 16px', cursor: 'pointer' }}>\n Show Warning\n </button>\n <button onClick={() => showToast('Error!', 'error')} style={{ margin: '5px', padding: '8px 16px', cursor: 'pointer' }}>\n Show Error\n </button>\n </div>\n\n <div style={{ position: 'fixed', top: '20px', right: '20px', zIndex: 9999 }}>\n {toasts.map(toast => (\n <div\n key={toast.id}\n style={{\n marginBottom: '10px',\n padding: '12px 20px',\n backgroundColor: colors[toast.type].bg,\n color: colors[toast.type].text,\n borderRadius: '4px',\n boxShadow: '0 2px 8px rgba(0,0,0,0.2)',\n minWidth: '250px',\n animation: 'slideIn 0.3s ease-out'\n }}\n >\n {toast.message}\n </div>\n ))}\n </div>\n </div>\n );\n};\n\nrender(<App />);`,\n\n progress: `const App = () => {\n const [progress, setProgress] = React.useState(0);\n const [isRunning, setIsRunning] = React.useState(false);\n\n React.useEffect(() => {\n let interval;\n if (isRunning && progress < 100) {\n interval = setInterval(() => {\n setProgress(prev => {\n const next = prev + 1;\n if (next >= 100) {\n setIsRunning(false);\n return 100;\n }\n return next;\n });\n }, 50);\n }\n return () => clearInterval(interval);\n }, [isRunning, progress]);\n\n const start = () => {\n setProgress(0);\n setIsRunning(true);\n };\n\n return (\n <div style={{ padding: '40px', fontFamily: 'sans-serif' }}>\n <h3>Progress Bar Demo</h3>\n \n <div style={{ marginTop: '20px', marginBottom: '10px' }}>\n <div style={{\n width: '100%',\n height: '30px',\n backgroundColor: '#e0e0e0',\n borderRadius: '15px',\n overflow: 'hidden',\n position: 'relative'\n }}>\n <div style={{\n width: progress + '%',\n height: '100%',\n backgroundColor: progress === 100 ? '#28a745' : '#007bff',\n transition: 'width 0.1s ease, background-color 0.3s ease',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: 'white',\n fontWeight: 'bold',\n fontSize: '14px'\n }}>\n {progress > 10 && progress + '%'}\n </div>\n </div>\n </div>\n\n <button\n onClick={start}\n disabled={isRunning}\n style={{\n marginTop: '20px',\n padding: '10px 20px',\n cursor: isRunning ? 'not-allowed' : 'pointer',\n backgroundColor: isRunning ? '#ccc' : '#007bff',\n color: 'white',\n border: 'none',\n borderRadius: '4px'\n }}\n >\n {isRunning ? 'Running...' : progress === 100 ? 'Restart' : 'Start'}\n </button>\n </div>\n );\n};\n\nrender(<App />);`,\n\n slider: `const App = () => {\n const [value, setValue] = React.useState(50);\n const [color, setColor] = React.useState({ r: 128, g: 128, b: 128 });\n\n const handleSliderChange = (e) => {\n setValue(Number(e.target.value));\n };\n\n const handleColorChange = (channel, val) => {\n setColor(prev => ({ ...prev, [channel]: Number(val) }));\n };\n\n const rgbString = \\`rgb(\\${color.r}, \\${color.g}, \\${color.b})\\`;\n\n return (\n <div style={{ padding: '40px', fontFamily: 'sans-serif', maxWidth: '600px' }}>\n <h3>Interactive Sliders</h3>\n \n <div style={{ marginTop: '30px' }}>\n <label style={{ display: 'block', marginBottom: '10px', fontWeight: 'bold' }}>\n Value: {value}\n </label>\n <input\n type=\"range\"\n min=\"0\"\n max=\"100\"\n value={value}\n onChange={handleSliderChange}\n style={{ width: '100%', height: '8px', cursor: 'pointer' }}\n />\n <div style={{\n marginTop: '15px',\n padding: '20px',\n backgroundColor: '#f0f0f0',\n borderRadius: '8px',\n textAlign: 'center',\n fontSize: '24px',\n fontWeight: 'bold'\n }}>\n {value}\n </div>\n </div>\n\n <div style={{ marginTop: '40px' }}>\n <h4>RGB Color Mixer</h4>\n {['r', 'g', 'b'].map(channel => (\n <div key={channel} style={{ marginTop: '15px' }}>\n <label style={{ display: 'block', marginBottom: '5px', textTransform: 'uppercase' }}>\n {channel}: {color[channel]}\n </label>\n <input\n type=\"range\"\n min=\"0\"\n max=\"255\"\n value={color[channel]}\n onChange={(e) => handleColorChange(channel, e.target.value)}\n style={{ width: '100%', height: '6px', cursor: 'pointer' }}\n />\n </div>\n ))}\n <div style={{\n marginTop: '20px',\n height: '100px',\n backgroundColor: rgbString,\n borderRadius: '8px',\n border: '2px solid #ddd'\n }} />\n <p style={{ marginTop: '10px', textAlign: 'center', color: '#666' }}>\n {rgbString}\n </p>\n </div>\n </div>\n );\n};\n\nrender(<App />);`\n};\n\nfunction App() {\n const [theme, setTheme] = useState<'rcv-theme-default' | 'rcv-theme-dark'>('rcv-theme-default');\n const [selectedExample, setSelectedExample] = useState<keyof typeof examples>('toast');\n\n return (\n <div style={{ \n minHeight: '100vh', \n backgroundColor: theme === 'rcv-theme-dark' ? '#0d1117' : '#ffffff',\n color: theme === 'rcv-theme-dark' ? '#e6edf3' : '#1f2937',\n padding: '20px'\n }}>\n <header style={{ \n maxWidth: '1200px', \n margin: '0 auto 40px',\n borderBottom: theme === 'rcv-theme-dark' ? '1px solid #30363d' : '1px solid #e5e7eb',\n paddingBottom: '20px'\n }}>\n <h1>React Code View - esbuild Example</h1>\n <p style={{ color: theme === 'rcv-theme-dark' ? '#8b949e' : '#6b7280' }}>\n \u26A1 Lightning fast builds with esbuild\n </p>\n \n <div style={{ marginTop: '20px', display: 'flex', gap: '10px', alignItems: 'center' }}>\n <button\n onClick={() => setTheme(theme === 'rcv-theme-dark' ? 'rcv-theme-default' : 'rcv-theme-dark')}\n style={{\n padding: '8px 16px',\n cursor: 'pointer',\n backgroundColor: theme === 'rcv-theme-dark' ? '#21262d' : '#f6f8fa',\n color: theme === 'rcv-theme-dark' ? '#e6edf3' : '#1f2937',\n border: theme === 'rcv-theme-dark' ? '1px solid #30363d' : '1px solid #d0d7de',\n borderRadius: '6px'\n }}\n >\n {theme === 'rcv-theme-dark' ? '\u2600\uFE0F Light' : '\uD83C\uDF19 Dark'}\n </button>\n\n <select\n value={selectedExample}\n onChange={(e) => setSelectedExample(e.target.value as keyof typeof examples)}\n style={{\n padding: '8px 12px',\n cursor: 'pointer',\n backgroundColor: theme === 'rcv-theme-dark' ? '#21262d' : '#f6f8fa',\n color: theme === 'rcv-theme-dark' ? '#e6edf3' : '#1f2937',\n border: theme === 'rcv-theme-dark' ? '1px solid #30363d' : '1px solid #d0d7de',\n borderRadius: '6px'\n }}\n >\n <option value=\"toast\">Toast Notifications</option>\n <option value=\"progress\">Progress Bar</option>\n <option value=\"slider\">Interactive Sliders</option>\n </select>\n </div>\n </header>\n\n <main style={{ maxWidth: '1200px', margin: '0 auto' }}>\n <CodeView\n key={selectedExample}\n language=\"jsx\"\n theme={theme}\n dependencies={{ React }}\n editable\n showCopyButton\n defaultShowCode\n >\n {examples[selectedExample]}\n </CodeView>\n </main>\n\n <footer style={{ \n maxWidth: '1200px', \n margin: '40px auto 0',\n paddingTop: '20px',\n borderTop: theme === 'rcv-theme-dark' ? '1px solid #30363d' : '1px solid #e5e7eb',\n textAlign: 'center',\n color: theme === 'rcv-theme-dark' ? '#8b949e' : '#6b7280'\n }}>\n <p>\n Built with{' '}\n <a \n href=\"https://esbuild.github.io\" \n target=\"_blank\" \n rel=\"noopener noreferrer\"\n style={{ color: theme === 'rcv-theme-dark' ? '#58a6ff' : '#0969da' }}\n >\n esbuild\n </a>\n {' '}and{' '}\n <a \n href=\"https://github.com/simonguo/react-code-view\" \n target=\"_blank\" \n rel=\"noopener noreferrer\"\n style={{ color: theme === 'rcv-theme-dark' ? '#58a6ff' : '#0969da' }}\n >\n React Code View\n </a>\n </p>\n </footer>\n </div>\n );\n}\n\nexport default App;\n", "// These are filled with ranges (rangeFrom[i] up to but not including\n// rangeTo[i]) of code points that count as extending characters.\nlet rangeFrom = [], rangeTo = []\n\n;(() => {\n // Compressed representation of the Grapheme_Cluster_Break=Extend\n // information from\n // http://www.unicode.org/Public/16.0.0/ucd/auxiliary/GraphemeBreakProperty.txt.\n // Each pair of elements represents a range, as an offet from the\n // previous range and a length. Numbers are in base-36, with the empty\n // string being a shorthand for 1.\n let numbers = \"lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o\".split(\",\").map(s => s ? parseInt(s, 36) : 1)\n for (let i = 0, n = 0; i < numbers.length; i++)\n (i % 2 ? rangeTo : rangeFrom).push(n = n + numbers[i])\n})()\n\nexport function isExtendingChar(code) {\n if (code < 768) return false\n for (let from = 0, to = rangeFrom.length;;) {\n let mid = (from + to) >> 1\n if (code < rangeFrom[mid]) to = mid\n else if (code >= rangeTo[mid]) from = mid + 1\n else return true\n if (from == to) return false\n }\n}\n\nfunction isRegionalIndicator(code) {\n return code >= 0x1F1E6 && code <= 0x1F1FF\n}\n\nfunction check(code) {\n for (let i = 0; i < rangeFrom.length; i++) {\n if (rangeTo[i] > code) return rangeFrom[i] <= code\n }\n return false\n}\n\nconst ZWJ = 0x200d\n\nexport function findClusterBreak(str, pos, forward = true, includeExtending = true) {\n return (forward ? nextClusterBreak : prevClusterBreak)(str, pos, includeExtending)\n}\n\nfunction nextClusterBreak(str, pos, includeExtending) {\n if (pos == str.length) return pos\n // If pos is in the middle of a surrogate pair, move to its start\n if (pos && surrogateLow(str.charCodeAt(pos)) && surrogateHigh(str.charCodeAt(pos - 1))) pos--\n let prev = codePointAt(str, pos)\n pos += codePointSize(prev)\n while (pos < str.length) {\n let next = codePointAt(str, pos)\n if (prev == ZWJ || next == ZWJ || includeExtending && isExtendingChar(next)) {\n pos += codePointSize(next)\n prev = next\n } else if (isRegionalIndicator(next)) {\n let countBefore = 0, i = pos - 2\n while (i >= 0 && isRegionalIndicator(codePointAt(str, i))) { countBefore++; i -= 2 }\n if (countBefore % 2 == 0) break\n else pos += 2\n } else {\n break\n }\n }\n return pos\n}\n\nfunction prevClusterBreak(str, pos, includeExtending) {\n while (pos > 0) {\n let found = nextClusterBreak(str, pos - 2, includeExtending)\n if (found < pos) return found\n pos--\n }\n return 0\n}\n\nfunction codePointAt(str, pos) {\n let code0 = str.charCodeAt(pos)\n if (!surrogateHigh(code0) || pos + 1 == str.length) return code0\n let code1 = str.charCodeAt(pos + 1)\n if (!surrogateLow(code1)) return code0\n return ((code0 - 0xd800) << 10) + (code1 - 0xdc00) + 0x10000\n}\n\nfunction surrogateLow(ch) { return ch >= 0xDC00 && ch < 0xE000 }\nfunction surrogateHigh(ch) { return ch >= 0xD800 && ch < 0xDC00 }\nfunction codePointSize(code) { return code < 0x10000 ? 1 : 2 }\n", "import { findClusterBreak as findClusterBreak$1 } from '@marijn/find-cluster-break';\n\n/**\nThe data structure for documents. @nonabstract\n*/\nclass Text {\n /**\n Get the line description around the given position.\n */\n lineAt(pos) {\n if (pos < 0 || pos > this.length)\n throw new RangeError(`Invalid position ${pos} in document of length ${this.length}`);\n return this.lineInner(pos, false, 1, 0);\n }\n /**\n Get the description for the given (1-based) line number.\n */\n line(n) {\n if (n < 1 || n > this.lines)\n throw new RangeError(`Invalid line number ${n} in ${this.lines}-line document`);\n return this.lineInner(n, true, 1, 0);\n }\n /**\n Replace a range of the text with the given content.\n */\n replace(from, to, text) {\n [from, to] = clip(this, from, to);\n let parts = [];\n this.decompose(0, from, parts, 2 /* Open.To */);\n if (text.length)\n text.decompose(0, text.length, parts, 1 /* Open.From */ | 2 /* Open.To */);\n this.decompose(to, this.length, parts, 1 /* Open.From */);\n return TextNode.from(parts, this.length - (to - from) + text.length);\n }\n /**\n Append another document to this one.\n */\n append(other) {\n return this.replace(this.length, this.length, other);\n }\n /**\n Retrieve the text between the given points.\n */\n slice(from, to = this.length) {\n [from, to] = clip(this, from, to);\n let parts = [];\n this.decompose(from, to, parts, 0);\n return TextNode.from(parts, to - from);\n }\n /**\n Test whether this text is equal to another instance.\n */\n eq(other) {\n if (other == this)\n return true;\n if (other.length != this.length || other.lines != this.lines)\n return false;\n let start = this.scanIdentical(other, 1), end = this.length - this.scanIdentical(other, -1);\n let a = new RawTextCursor(this), b = new RawTextCursor(other);\n for (let skip = start, pos = start;;) {\n a.next(skip);\n b.next(skip);\n skip = 0;\n if (a.lineBreak != b.lineBreak || a.done != b.done || a.value != b.value)\n return false;\n pos += a.value.length;\n if (a.done || pos >= end)\n return true;\n }\n }\n /**\n Iterate over the text. When `dir` is `-1`, iteration happens\n from end to start. This will return lines and the breaks between\n them as separate strings.\n */\n iter(dir = 1) { return new RawTextCursor(this, dir); }\n /**\n Iterate over a range of the text. When `from` > `to`, the\n iterator will run in reverse.\n */\n iterRange(from, to = this.length) { return new PartialTextCursor(this, from, to); }\n /**\n Return a cursor that iterates over the given range of lines,\n _without_ returning the line breaks between, and yielding empty\n strings for empty lines.\n \n When `from` and `to` are given, they should be 1-based line numbers.\n */\n iterLines(from, to) {\n let inner;\n if (from == null) {\n inner = this.iter();\n }\n else {\n if (to == null)\n to = this.lines + 1;\n let start = this.line(from).from;\n inner = this.iterRange(start, Math.max(start, to == this.lines + 1 ? this.length : to <= 1 ? 0 : this.line(to - 1).to));\n }\n return new LineCursor(inner);\n }\n /**\n Return the document as a string, using newline characters to\n separate lines.\n */\n toString() { return this.sliceString(0); }\n /**\n Convert the document to an array of lines (which can be\n deserialized again via [`Text.of`](https://codemirror.net/6/docs/ref/#state.Text^of)).\n */\n toJSON() {\n let lines = [];\n this.flatten(lines);\n return lines;\n }\n /**\n @internal\n */\n constructor() { }\n /**\n Create a `Text` instance for the given array of lines.\n */\n static of(text) {\n if (text.length == 0)\n throw new RangeError(\"A document must have at least one line\");\n if (text.length == 1 && !text[0])\n return Text.empty;\n return text.length <= 32 /* Tree.Branch */ ? new TextLeaf(text) : TextNode.from(TextLeaf.split(text, []));\n }\n}\n// Leaves store an array of line strings. There are always line breaks\n// between these strings. Leaves are limited in size and have to be\n// contained in TextNode instances for bigger documents.\nclass TextLeaf extends Text {\n constructor(text, length = textLength(text)) {\n super();\n this.text = text;\n this.length = length;\n }\n get lines() { return this.text.length; }\n get children() { return null; }\n lineInner(target, isLine, line, offset) {\n for (let i = 0;; i++) {\n let string = this.text[i], end = offset + string.length;\n if ((isLine ? line : end) >= target)\n return new Line(offset, end, line, string);\n offset = end + 1;\n line++;\n }\n }\n decompose(from, to, target, open) {\n let text = from <= 0 && to >= this.length ? this\n : new TextLeaf(sliceText(this.text, from, to), Math.min(to, this.length) - Math.max(0, from));\n if (open & 1 /* Open.From */) {\n let prev = target.pop();\n let joined = appendText(text.text, prev.text.slice(), 0, text.length);\n if (joined.length <= 32 /* Tree.Branch */) {\n target.push(new TextLeaf(joined, prev.length + text.length));\n }\n else {\n let mid = joined.length >> 1;\n target.push(new TextLeaf(joined.slice(0, mid)), new TextLeaf(joined.slice(mid)));\n }\n }\n else {\n target.push(text);\n }\n }\n replace(from, to, text) {\n if (!(text instanceof TextLeaf))\n return super.replace(from, to, text);\n [from, to] = clip(this, from, to);\n let lines = appendText(this.text, appendText(text.text, sliceText(this.text, 0, from)), to);\n let newLen = this.length + text.length - (to - from);\n if (lines.length <= 32 /* Tree.Branch */)\n return new TextLeaf(lines, newLen);\n return TextNode.from(TextLeaf.split(lines, []), newLen);\n }\n sliceString(from, to = this.length, lineSep = \"\\n\") {\n [from, to] = clip(this, from, to);\n let result = \"\";\n for (let pos = 0, i = 0; pos <= to && i < this.text.length; i++) {\n let line = this.text[i], end = pos + line.length;\n if (pos > from && i)\n result += lineSep;\n if (from < end && to > pos)\n result += line.slice(Math.max(0, from - pos), to - pos);\n pos = end + 1;\n }\n return result;\n }\n flatten(target) {\n for (let line of this.text)\n target.push(line);\n }\n scanIdentical() { return 0; }\n static split(text, target) {\n let part = [], len = -1;\n for (let line of text) {\n part.push(line);\n len += line.length + 1;\n if (part.length == 32 /* Tree.Branch */) {\n target.push(new TextLeaf(part, len));\n part = [];\n len = -1;\n }\n }\n if (len > -1)\n target.push(new TextLeaf(part, len));\n return target;\n }\n}\n// Nodes provide the tree structure of the `Text` type. They store a\n// number of other nodes or leaves, taking care to balance themselves\n// on changes. There are implied line breaks _between_ the children of\n// a node (but not before the first or after the last child).\nclass TextNode extends Text {\n constructor(children, length) {\n super();\n this.children = children;\n this.length = length;\n this.lines = 0;\n for (let child of children)\n this.lines += child.lines;\n }\n lineInner(target, isLine, line, offset) {\n for (let i = 0;; i++) {\n let child = this.children[i], end = offset + child.length, endLine = line + child.lines - 1;\n if ((isLine ? endLine : end) >= target)\n return child.lineInner(target, isLine, line, offset);\n offset = end + 1;\n line = endLine + 1;\n }\n }\n decompose(from, to, target, open) {\n for (let i = 0, pos = 0; pos <= to && i < this.children.length; i++) {\n let child = this.children[i], end = pos + child.length;\n if (from <= end && to >= pos) {\n let childOpen = open & ((pos <= from ? 1 /* Open.From */ : 0) | (end >= to ? 2 /* Open.To */ : 0));\n if (pos >= from && end <= to && !childOpen)\n target.push(child);\n else\n child.decompose(from - pos, to - pos, target, childOpen);\n }\n pos = end + 1;\n }\n }\n replace(from, to, text) {\n [from, to] = clip(this, from, to);\n if (text.lines < this.lines)\n for (let i = 0, pos = 0; i < this.children.length; i++) {\n let child = this.children[i], end = pos + child.length;\n // Fast path: if the change only affects one child and the\n // child's size remains in the acceptable range, only update\n // that child\n if (from >= pos && to <= end) {\n let updated = child.replace(from - pos, to - pos, text);\n let totalLines = this.lines - child.lines + updated.lines;\n if (updated.lines < (totalLines >> (5 /* Tree.BranchShift */ - 1)) &&\n updated.lines > (totalLines >> (5 /* Tree.BranchShift */ + 1))) {\n let copy = this.children.slice();\n copy[i] = updated;\n return new TextNode(copy, this.length - (to - from) + text.length);\n }\n return super.replace(pos, end, updated);\n }\n pos = end + 1;\n }\n return super.replace(from, to, text);\n }\n sliceString(from, to = this.length, lineSep = \"\\n\") {\n [from, to] = clip(this, from, to);\n let result = \"\";\n for (let i = 0, pos = 0; i < this.children.length && pos <= to; i++) {\n let child = this.children[i], end = pos + child.length;\n if (pos > from && i)\n result += lineSep;\n if (from < end && to > pos)\n result += child.sliceString(from - pos, to - pos, lineSep);\n pos = end + 1;\n }\n return result;\n }\n flatten(target) {\n for (let child of this.children)\n child.flatten(target);\n }\n scanIdentical(other, dir) {\n if (!(other instanceof TextNode))\n return 0;\n let length = 0;\n let [iA, iB, eA, eB] = dir > 0 ? [0, 0, this.children.length, other.children.length]\n : [this.children.length - 1, other.children.length - 1, -1, -1];\n for (;; iA += dir, iB += dir) {\n if (iA == eA || iB == eB)\n return length;\n let chA = this.children[iA], chB = other.children[iB];\n if (chA != chB)\n return length + chA.scanIdentical(chB, dir);\n length += chA.length + 1;\n }\n }\n static from(children, length = children.reduce((l, ch) => l + ch.length + 1, -1)) {\n let lines = 0;\n for (let ch of children)\n lines += ch.lines;\n if (lines < 32 /* Tree.Branch */) {\n let flat = [];\n for (let ch of children)\n ch.flatten(flat);\n return new TextLeaf(flat, length);\n }\n let chunk = Math.max(32 /* Tree.Branch */, lines >> 5 /* Tree.BranchShift */), maxChunk = chunk << 1, minChunk = chunk >> 1;\n let chunked = [], currentLines = 0, currentLen = -1, currentChunk = [];\n function add(child) {\n let last;\n if (child.lines > maxChunk && child instanceof TextNode) {\n for (let node of child.children)\n add(node);\n }\n else if (child.lines > minChunk && (currentLines > minChunk || !currentLines)) {\n flush();\n chunked.push(child);\n }\n else if (child instanceof TextLeaf && currentLines &&\n (last = currentChunk[currentChunk.length - 1]) instanceof TextLeaf &&\n child.lines + last.lines <= 32 /* Tree.Branch */) {\n currentLines += child.lines;\n currentLen += child.length + 1;\n currentChunk[currentChunk.length - 1] = new TextLeaf(last.text.concat(child.text), last.length + 1 + child.length);\n }\n else {\n if (currentLines + child.lines > chunk)\n flush();\n currentLines += child.lines;\n currentLen += child.length + 1;\n currentChunk.push(child);\n }\n }\n function flush() {\n if (currentLines == 0)\n return;\n chunked.push(currentChunk.length == 1 ? currentChunk[0] : TextNode.from(currentChunk, currentLen));\n currentLen = -1;\n currentLines = currentChunk.length = 0;\n }\n for (let child of children)\n add(child);\n flush();\n return chunked.length == 1 ? chunked[0] : new TextNode(chunked, length);\n }\n}\nText.empty = /*@__PURE__*/new TextLeaf([\"\"], 0);\nfunction textLength(text) {\n let length = -1;\n for (let line of text)\n length += line.length + 1;\n return length;\n}\nfunction appendText(text, target, from = 0, to = 1e9) {\n for (let pos = 0, i = 0, first = true; i < text.length && pos <= to; i++) {\n let line = text[i], end = pos + line.length;\n if (end >= from) {\n if (end > to)\n line = line.slice(0, to - pos);\n if (pos < from)\n line = line.slice(from - pos);\n if (first) {\n target[target.length - 1] += line;\n first = false;\n }\n else\n target.push(line);\n }\n pos = end + 1;\n }\n return target;\n}\nfunction sliceText(text, from, to) {\n return appendText(text, [\"\"], from, to);\n}\nclass RawTextCursor {\n constructor(text, dir = 1) {\n this.dir = dir;\n this.done = false;\n this.lineBreak = false;\n this.value = \"\";\n this.nodes = [text];\n this.offsets = [dir > 0 ? 1 : (text instanceof TextLeaf ? text.text.length : text.children.length) << 1];\n }\n nextInner(skip, dir) {\n this.done = this.lineBreak = false;\n for (;;) {\n let last = this.nodes.length - 1;\n let top = this.nodes[last], offsetValue = this.offsets[last], offset = offsetValue >> 1;\n let size = top instanceof TextLeaf ? top.text.length : top.children.length;\n if (offset == (dir > 0 ? size : 0)) {\n if (last == 0) {\n this.done = true;\n this.value = \"\";\n return this;\n }\n if (dir > 0)\n this.offsets[last - 1]++;\n this.nodes.pop();\n this.offsets.pop();\n }\n else if ((offsetValue & 1) == (dir > 0 ? 0 : 1)) {\n this.offsets[last] += dir;\n if (skip == 0) {\n this.lineBreak = true;\n this.value = \"\\n\";\n return this;\n }\n skip--;\n }\n else if (top instanceof TextLeaf) {\n // Move to the next string\n let next = top.text[offset + (dir < 0 ? -1 : 0)];\n this.offsets[last] += dir;\n if (next.length > Math.max(0, skip)) {\n this.value = skip == 0 ? next : dir > 0 ? next.slice(skip) : next.slice(0, next.length - skip);\n return this;\n }\n skip -= next.length;\n }\n else {\n let next = top.children[offset + (dir < 0 ? -1 : 0)];\n if (skip > next.length) {\n skip -= next.length;\n this.offsets[last] += dir;\n }\n else {\n if (dir < 0)\n this.offsets[last]--;\n this.nodes.push(next);\n this.offsets.push(dir > 0 ? 1 : (next instanceof TextLeaf ? next.text.length : next.children.length) << 1);\n }\n }\n }\n }\n next(skip = 0) {\n if (skip < 0) {\n this.nextInner(-skip, (-this.dir));\n skip = this.value.length;\n }\n return this.nextInner(skip, this.dir);\n }\n}\nclass PartialTextCursor {\n constructor(text, start, end) {\n this.value = \"\";\n this.done = false;\n this.cursor = new RawTextCursor(text, start > end ? -1 : 1);\n this.pos = start > end ? text.length : 0;\n this.from = Math.min(start, end);\n this.to = Math.max(start, end);\n }\n nextInner(skip, dir) {\n if (dir < 0 ? this.pos <= this.from : this.pos >= this.to) {\n this.value = \"\";\n this.done = true;\n return this;\n }\n skip += Math.max(0, dir < 0 ? this.pos - this.to : this.from - this.pos);\n let limit = dir < 0 ? this.pos - this.from : this.to - this.pos;\n if (skip > limit)\n skip = limit;\n limit -= skip;\n let { value } = this.cursor.next(skip);\n this.pos += (value.length + skip) * dir;\n this.value = value.length <= limit ? value : dir < 0 ? value.slice(value.length - limit) : value.slice(0, limit);\n this.done = !this.value;\n return this;\n }\n next(skip = 0) {\n if (skip < 0)\n skip = Math.max(skip, this.from - this.pos);\n else if (skip > 0)\n skip = Math.min(skip, this.to - this.pos);\n return this.nextInner(skip, this.cursor.dir);\n }\n get lineBreak() { return this.cursor.lineBreak && this.value != \"\"; }\n}\nclass LineCursor {\n constructor(inner) {\n this.inner = inner;\n this.afterBreak = true;\n this.value = \"\";\n this.done = false;\n }\n next(skip = 0) {\n let { done, lineBreak, value } = this.inner.next(skip);\n if (done && this.afterBreak) {\n this.value = \"\";\n this.afterBreak = false;\n }\n else if (done) {\n this.done = true;\n this.value = \"\";\n }\n else if (lineBreak) {\n if (this.afterBreak) {\n this.value = \"\";\n }\n else {\n this.afterBreak = true;\n this.next();\n }\n }\n else {\n this.value = value;\n this.afterBreak = false;\n }\n return this;\n }\n get lineBreak() { return false; }\n}\nif (typeof Symbol != \"undefined\") {\n Text.prototype[Symbol.iterator] = function () { return this.iter(); };\n RawTextCursor.prototype[Symbol.iterator] = PartialTextCursor.prototype[Symbol.iterator] =\n LineCursor.prototype[Symbol.iterator] = function () { return this; };\n}\n/**\nThis type describes a line in the document. It is created\non-demand when lines are [queried](https://codemirror.net/6/docs/ref/#state.Text.lineAt).\n*/\nclass Line {\n /**\n @internal\n */\n constructor(\n /**\n The position of the start of the line.\n */\n from, \n /**\n The position at the end of the line (_before_ the line break,\n or at the end of document for the last line).\n */\n to, \n /**\n This line's line number (1-based).\n */\n number, \n /**\n The line's content.\n */\n text) {\n this.from = from;\n this.to = to;\n this.number = number;\n this.text = text;\n }\n /**\n The length of the line (not including any line break after it).\n */\n get length() { return this.to - this.from; }\n}\nfunction clip(text, from, to) {\n from = Math.max(0, Math.min(text.length, from));\n return [from, Math.max(from, Math.min(text.length, to))];\n}\n\n/**\nReturns a next grapheme cluster break _after_ (not equal to)\n`pos`, if `forward` is true, or before otherwise. Returns `pos`\nitself if no further cluster break is available in the string.\nMoves across surrogate pairs, extending characters (when\n`includeExtending` is true), characters joined with zero-width\njoiners, and flag emoji.\n*/\nfunction findClusterBreak(str, pos, forward = true, includeExtending = true) {\n return findClusterBreak$1(str, pos, forward, includeExtending);\n}\nfunction surrogateLow(ch) { return ch >= 0xDC00 && ch < 0xE000; }\nfunction surrogateHigh(ch) { return ch >= 0xD800 && ch < 0xDC00; }\n/**\nFind the code point at the given position in a string (like the\n[`codePointAt`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/codePointAt)\nstring method).\n*/\nfunction codePointAt(str, pos) {\n let code0 = str.charCodeAt(pos);\n if (!surrogateHigh(code0) || pos + 1 == str.length)\n return code0;\n let code1 = str.charCodeAt(pos + 1);\n if (!surrogateLow(code1))\n return code0;\n return ((code0 - 0xd800) << 10) + (code1 - 0xdc00) + 0x10000;\n}\n/**\nGiven a Unicode codepoint, return the JavaScript string that\nrespresents it (like\n[`String.fromCodePoint`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/fromCodePoint)).\n*/\nfunction fromCodePoint(code) {\n if (code <= 0xffff)\n return String.fromCharCode(code);\n code -= 0x10000;\n return String.fromCharCode((code >> 10) + 0xd800, (code & 1023) + 0xdc00);\n}\n/**\nThe amount of positions a character takes up in a JavaScript string.\n*/\nfunction codePointSize(code) { return code < 0x10000 ? 1 : 2; }\n\nconst DefaultSplit = /\\r\\n?|\\n/;\n/**\nDistinguishes different ways in which positions can be mapped.\n*/\nvar MapMode = /*@__PURE__*/(function (MapMode) {\n /**\n Map a position to a valid new position, even when its context\n was deleted.\n */\n MapMode[MapMode[\"Simple\"] = 0] = \"Simple\";\n /**\n Return null if deletion happens across the position.\n */\n MapMode[MapMode[\"TrackDel\"] = 1] = \"TrackDel\";\n /**\n Return null if the character _before_ the position is deleted.\n */\n MapMode[MapMode[\"TrackBefore\"] = 2] = \"TrackBefore\";\n /**\n Return null if the character _after_ the position is deleted.\n */\n MapMode[MapMode[\"TrackAfter\"] = 3] = \"TrackAfter\";\nreturn MapMode})(MapMode || (MapMode = {}));\n/**\nA change description is a variant of [change set](https://codemirror.net/6/docs/ref/#state.ChangeSet)\nthat doesn't store the inserted text. As such, it can't be\napplied, but is cheaper to store and manipulate.\n*/\nclass ChangeDesc {\n // Sections are encoded as pairs of integers. The first is the\n // length in the current document, and the second is -1 for\n // unaffected sections, and the length of the replacement content\n // otherwise. So an insertion would be (0, n>0), a deletion (n>0,\n // 0), and a replacement two positive numbers.\n /**\n @internal\n */\n constructor(\n /**\n @internal\n */\n sections) {\n this.sections = sections;\n }\n /**\n The length of the document before the change.\n */\n get length() {\n let result = 0;\n for (let i = 0; i < this.sections.length; i += 2)\n result += this.sections[i];\n return result;\n }\n /**\n The length of the document after the change.\n */\n get newLength() {\n let result = 0;\n for (let i = 0; i < this.sections.length; i += 2) {\n let ins = this.sections[i + 1];\n result += ins < 0 ? this.sections[i] : ins;\n }\n return result;\n }\n /**\n False when there are actual changes in this set.\n */\n get empty() { return this.sections.length == 0 || this.sections.length == 2 && this.sections[1] < 0; }\n /**\n Iterate over the unchanged parts left by these changes. `posA`\n provides the position of the range in the old document, `posB`\n the new position in the changed document.\n */\n iterGaps(f) {\n for (let i = 0, posA = 0, posB = 0; i < this.sections.length;) {\n let len = this.sections[i++], ins = this.sections[i++];\n if (ins < 0) {\n f(posA, posB, len);\n posB += len;\n }\n else {\n posB += ins;\n }\n posA += len;\n }\n }\n /**\n Iterate over the ranges changed by these changes. (See\n [`ChangeSet.iterChanges`](https://codemirror.net/6/docs/ref/#state.ChangeSet.iterChanges) for a\n variant that also provides you with the inserted text.)\n `fromA`/`toA` provides the extent of the change in the starting\n document, `fromB`/`toB` the extent of the replacement in the\n changed document.\n \n When `individual` is true, adjacent changes (which are kept\n separate for [position mapping](https://codemirror.net/6/docs/ref/#state.ChangeDesc.mapPos)) are\n reported separately.\n */\n iterChangedRanges(f, individual = false) {\n iterChanges(this, f, individual);\n }\n /**\n Get a description of the inverted form of these changes.\n */\n get invertedDesc() {\n let sections = [];\n for (let i = 0; i < this.sections.length;) {\n let len = this.sections[i++], ins = this.sections[i++];\n if (ins < 0)\n sections.push(len, ins);\n else\n sections.push(ins, len);\n }\n return new ChangeDesc(sections);\n }\n /**\n Compute the combined effect of applying another set of changes\n after this one. The length of the document after this set should\n match the length before `other`.\n */\n composeDesc(other) { return this.empty ? other : other.empty ? this : composeSets(this, other); }\n /**\n Map this description, which should start with the same document\n as `other`, over another set of changes, so that it can be\n applied after it. When `before` is true, map as if the changes\n in `this` happened before the ones in `other`.\n */\n mapDesc(other, before = false) { return other.empty ? this : mapSet(this, other, before); }\n mapPos(pos, assoc = -1, mode = MapMode.Simple) {\n let posA = 0, posB = 0;\n for (let i = 0; i < this.sections.length;) {\n let len = this.sections[i++], ins = this.sections[i++], endA = posA + len;\n if (ins < 0) {\n if (endA > pos)\n return posB + (pos - posA);\n posB += len;\n }\n else {\n if (mode != MapMode.Simple && endA >= pos &&\n (mode == MapMode.TrackDel && posA < pos && endA > pos ||\n mode == MapMode.TrackBefore && posA < pos ||\n mode == MapMode.TrackAfter && endA > pos))\n return null;\n if (endA > pos || endA == pos && assoc < 0 && !len)\n return pos == posA || assoc < 0 ? posB : posB + ins;\n posB += ins;\n }\n posA = endA;\n }\n if (pos > posA)\n throw new RangeError(`Position ${pos} is out of range for changeset of length ${posA}`);\n return posB;\n }\n /**\n Check whether these changes touch a given range. When one of the\n changes entirely covers the range, the string `\"cover\"` is\n returned.\n */\n touchesRange(from, to = from) {\n for (let i = 0, pos = 0; i < this.sections.length && pos <= to;) {\n let len = this.sections[i++], ins = this.sections[i++], end = pos + len;\n if (ins >= 0 && pos <= to && end >= from)\n return pos < from && end > to ? \"cover\" : true;\n pos = end;\n }\n return false;\n }\n /**\n @internal\n */\n toString() {\n let result = \"\";\n for (let i = 0; i < this.sections.length;) {\n let len = this.sections[i++], ins = this.sections[i++];\n result += (result ? \" \" : \"\") + len + (ins >= 0 ? \":\" + ins : \"\");\n }\n return result;\n }\n /**\n Serialize this change desc to a JSON-representable value.\n */\n toJSON() { return this.sections; }\n /**\n Create a change desc from its JSON representation (as produced\n by [`toJSON`](https://codemirror.net/6/docs/ref/#state.ChangeDesc.toJSON).\n */\n static fromJSON(json) {\n if (!Array.isArray(json) || json.length % 2 || json.some(a => typeof a != \"number\"))\n throw new RangeError(\"Invalid JSON representation of ChangeDesc\");\n return new ChangeDesc(json);\n }\n /**\n @internal\n */\n static create(sections) { return new ChangeDesc(sections); }\n}\n/**\nA change set represents a group of modifications to a document. It\nstores the document length, and can only be applied to documents\nwith exactly that length.\n*/\nclass ChangeSet extends ChangeDesc {\n constructor(sections, \n /**\n @internal\n */\n inserted) {\n super(sections);\n this.inserted = inserted;\n }\n /**\n Apply the changes to a document, returning the modified\n document.\n */\n apply(doc) {\n if (this.length != doc.length)\n throw new RangeError(\"Applying change set to a document with the wrong length\");\n iterChanges(this, (fromA, toA, fromB, _toB, text) => doc = doc.replace(fromB, fromB + (toA - fromA), text), false);\n return doc;\n }\n mapDesc(other, before = false) { return mapSet(this, other, before, true); }\n /**\n Given the document as it existed _before_ the changes, return a\n change set that represents the inverse of this set, which could\n be used to go from the document created by the changes back to\n the document as it existed before the changes.\n */\n invert(doc) {\n let sections = this.sections.slice(), inserted = [];\n for (let i = 0, pos = 0; i < sections.length; i += 2) {\n let len = sections[i], ins = sections[i + 1];\n if (ins >= 0) {\n sections[i] = ins;\n sections[i + 1] = len;\n let index = i >> 1;\n while (inserted.length < index)\n inserted.push(Text.empty);\n inserted.push(len ? doc.slice(pos, pos + len) : Text.empty);\n }\n pos += len;\n }\n return new ChangeSet(sections, inserted);\n }\n /**\n Combine two subsequent change sets into a single set. `other`\n must start in the document produced by `this`. If `this` goes\n `docA` \u2192 `docB` and `other` represents `docB` \u2192 `docC`, the\n returned value will represent the change `docA` \u2192 `docC`.\n */\n compose(other) { return this.empty ? other : other.empty ? this : composeSets(this, other, true); }\n /**\n Given another change set starting in the same document, maps this\n change set over the other, producing a new change set that can be\n applied to the document produced by applying `other`. When\n `before` is `true`, order changes as if `this` comes before\n `other`, otherwise (the default) treat `other` as coming first.\n \n Given two changes `A` and `B`, `A.compose(B.map(A))` and\n `B.compose(A.map(B, true))` will produce the same document. This\n provides a basic form of [operational\n transformation](https://en.wikipedia.org/wiki/Operational_transformation),\n and can be used for collaborative editing.\n */\n map(other, before = false) { return other.empty ? this : mapSet(this, other, before, true); }\n /**\n Iterate over the changed ranges in the document, calling `f` for\n each, with the range in the original document (`fromA`-`toA`)\n and the range that replaces it in the new document\n (`fromB`-`toB`).\n \n When `individual` is true, adjacent changes are reported\n separately.\n */\n iterChanges(f, individual = false) {\n iterChanges(this, f, individual);\n }\n /**\n Get a [change description](https://codemirror.net/6/docs/ref/#state.ChangeDesc) for this change\n set.\n */\n get desc() { return ChangeDesc.create(this.sections); }\n /**\n @internal\n */\n filter(ranges) {\n let resultSections = [], resultInserted = [], filteredSections = [];\n let iter = new SectionIter(this);\n done: for (let i = 0, pos = 0;;) {\n let next = i == ranges.length ? 1e9 : ranges[i++];\n while (pos < next || pos == next && iter.len == 0) {\n if (iter.done)\n break done;\n let len = Math.min(iter.len, next - pos);\n addSection(filteredSections, len, -1);\n let ins = iter.ins == -1 ? -1 : iter.off == 0 ? iter.ins : 0;\n addSection(resultSections, len, ins);\n if (ins > 0)\n addInsert(resultInserted, resultSections, iter.text);\n iter.forward(len);\n pos += len;\n }\n let end = ranges[i++];\n while (pos < end) {\n if (iter.done)\n break done;\n let len = Math.min(iter.len, end - pos);\n addSection(resultSections, len, -1);\n addSection(filteredSections, len, iter.ins == -1 ? -1 : iter.off == 0 ? iter.ins : 0);\n iter.forward(len);\n pos += len;\n }\n }\n return { changes: new ChangeSet(resultSections, resultInserted),\n filtered: ChangeDesc.create(filteredSections) };\n }\n /**\n Serialize this change set to a JSON-representable value.\n */\n toJSON() {\n let parts = [];\n for (let i = 0; i < this.sections.length; i += 2) {\n let len = this.sections[i], ins = this.sections[i + 1];\n if (ins < 0)\n parts.push(len);\n else if (ins == 0)\n parts.push([len]);\n else\n parts.push([len].concat(this.inserted[i >> 1].toJSON()));\n }\n return parts;\n }\n /**\n Create a change set for the given changes, for a document of the\n given length, using `lineSep` as line separator.\n */\n static of(changes, length, lineSep) {\n let sections = [], inserted = [], pos = 0;\n let total = null;\n function flush(force = false) {\n if (!force && !sections.length)\n return;\n if (pos < length)\n addSection(sections, length - pos, -1);\n let set = new ChangeSet(sections, inserted);\n total = total ? total.compose(set.map(total)) : set;\n sections = [];\n inserted = [];\n pos = 0;\n }\n function process(spec) {\n if (Array.isArray(spec)) {\n for (let sub of spec)\n process(sub);\n }\n else if (spec instanceof ChangeSet) {\n if (spec.length != length)\n throw new RangeError(`Mismatched change set length (got ${spec.length}, expected ${length})`);\n flush();\n total = total ? total.compose(spec.map(total)) : spec;\n }\n else {\n let { from, to = from, insert } = spec;\n if (from > to || from < 0 || to > length)\n throw new RangeError(`Invalid change range ${from} to ${to} (in doc of length ${length})`);\n let insText = !insert ? Text.empty : typeof insert == \"string\" ? Text.of(insert.split(lineSep || DefaultSplit)) : insert;\n let insLen = insText.length;\n if (from == to && insLen == 0)\n return;\n if (from < pos)\n flush();\n if (from > pos)\n addSection(sections, from - pos, -1);\n addSection(sections, to - from, insLen);\n addInsert(inserted, sections, insText);\n pos = to;\n }\n }\n process(changes);\n flush(!total);\n return total;\n }\n /**\n Create an empty changeset of the given length.\n */\n static empty(length) {\n return new ChangeSet(length ? [length, -1] : [], []);\n }\n /**\n Create a changeset from its JSON representation (as produced by\n [`toJSON`](https://codemirror.net/6/docs/ref/#state.ChangeSet.toJSON).\n */\n static fromJSON(json) {\n if (!Array.isArray(json))\n throw new RangeError(\"Invalid JSON representation of ChangeSet\");\n let sections = [], inserted = [];\n for (let i = 0; i < json.length; i++) {\n let part = json[i];\n if (typeof part == \"number\") {\n sections.push(part, -1);\n }\n else if (!Array.isArray(part) || typeof part[0] != \"number\" || part.some((e, i) => i && typeof e != \"string\")) {\n throw new RangeError(\"Invalid JSON representation of ChangeSet\");\n }\n else if (part.length == 1) {\n sections.push(part[0], 0);\n }\n else {\n while (inserted.length < i)\n inserted.push(Text.empty);\n inserted[i] = Text.of(part.slice(1));\n sections.push(part[0], inserted[i].length);\n }\n }\n return new ChangeSet(sections, inserted);\n }\n /**\n @internal\n */\n static createSet(sections, inserted) {\n return new ChangeSet(sections, inserted);\n }\n}\nfunction addSection(sections, len, ins, forceJoin = false) {\n if (len == 0 && ins <= 0)\n return;\n let last = sections.length - 2;\n if (last >= 0 && ins <= 0 && ins == sections[last + 1])\n sections[last] += len;\n else if (last >= 0 && len == 0 && sections[last] == 0)\n sections[last + 1] += ins;\n else if (forceJoin) {\n sections[last] += len;\n sections[last + 1] += ins;\n }\n else\n sections.push(len, ins);\n}\nfunction addInsert(values, sections, value) {\n if (value.length == 0)\n return;\n let index = (sections.length - 2) >> 1;\n if (index < values.length) {\n values[values.length - 1] = values[values.length - 1].append(value);\n }\n else {\n while (values.length < index)\n values.push(Text.empty);\n values.push(value);\n }\n}\nfunction iterChanges(desc, f, individual) {\n let inserted = desc.inserted;\n for (let posA = 0, posB = 0, i = 0; i < desc.sections.length;) {\n let len = desc.sections[i++], ins = desc.sections[i++];\n if (ins < 0) {\n posA += len;\n posB += len;\n }\n else {\n let endA = posA, endB = posB, text = Text.empty;\n for (;;) {\n endA += len;\n endB += ins;\n if (ins && inserted)\n text = text.append(inserted[(i - 2) >> 1]);\n if (individual || i == desc.sections.length || desc.sections[i + 1] < 0)\n break;\n len = desc.sections[i++];\n ins = desc.sections[i++];\n }\n f(posA, endA, posB, endB, text);\n posA = endA;\n posB = endB;\n }\n }\n}\nfunction mapSet(setA, setB, before, mkSet = false) {\n // Produce a copy of setA that applies to the document after setB\n // has been applied (assuming both start at the same document).\n let sections = [], insert = mkSet ? [] : null;\n let a = new SectionIter(setA), b = new SectionIter(setB);\n // Iterate over both sets in parallel. inserted tracks, for changes\n // in A that have to be processed piece-by-piece, whether their\n // content has been inserted already, and refers to the section\n // index.\n for (let inserted = -1;;) {\n if (a.done && b.len || b.done && a.len) {\n throw new Error(\"Mismatched change set lengths\");\n }\n else if (a.ins == -1 && b.ins == -1) {\n // Move across ranges skipped by both sets.\n let len = Math.min(a.len, b.len);\n addSection(sections, len, -1);\n a.forward(len);\n b.forward(len);\n }\n else if (b.ins >= 0 && (a.ins < 0 || inserted == a.i || a.off == 0 && (b.len < a.len || b.len == a.len && !before))) {\n // If there's a change in B that comes before the next change in\n // A (ordered by start pos, then len, then before flag), skip\n // that (and process any changes in A it covers).\n let len = b.len;\n addSection(sections, b.ins, -1);\n while (len) {\n let piece = Math.min(a.len, len);\n if (a.ins >= 0 && inserted < a.i && a.len <= piece) {\n addSection(sections, 0, a.ins);\n if (insert)\n addInsert(insert, sections, a.text);\n inserted = a.i;\n }\n a.forward(piece);\n len -= piece;\n }\n b.next();\n }\n else if (a.ins >= 0) {\n // Process the part of a change in A up to the start of the next\n // non-deletion change in B (if overlapping).\n let len = 0, left = a.len;\n while (left) {\n if (b.ins == -1) {\n let piece = Math.min(left, b.len);\n len += piece;\n left -= piece;\n b.forward(piece);\n }\n else if (b.ins == 0 && b.len < left) {\n left -= b.len;\n b.next();\n }\n else {\n break;\n }\n }\n addSection(sections, len, inserted < a.i ? a.ins : 0);\n if (insert && inserted < a.i)\n addInsert(insert, sections, a.text);\n inserted = a.i;\n a.forward(a.len - left);\n }\n else if (a.done && b.done) {\n return insert ? ChangeSet.createSet(sections, insert) : ChangeDesc.create(sections);\n }\n else {\n throw new Error(\"Mismatched change set lengths\");\n }\n }\n}\nfunction composeSets(setA, setB, mkSet = false) {\n let sections = [];\n let insert = mkSet ? [] : null;\n let a = new SectionIter(setA), b = new SectionIter(setB);\n for (let open = false;;) {\n if (a.done && b.done) {\n return insert ? ChangeSet.createSet(sections, insert) : ChangeDesc.create(sections);\n }\n else if (a.ins == 0) { // Deletion in A\n addSection(sections, a.len, 0, open);\n a.next();\n }\n else if (b.len == 0 && !b.done) { // Insertion in B\n addSection(sections, 0, b.ins, open);\n if (insert)\n addInsert(insert, sections, b.text);\n b.next();\n }\n else if (a.done || b.done) {\n throw new Error(\"Mismatched change set lengths\");\n }\n else {\n let len = Math.min(a.len2, b.len), sectionLen = sections.length;\n if (a.ins == -1) {\n let insB = b.ins == -1 ? -1 : b.off ? 0 : b.ins;\n addSection(sections, len, insB, open);\n if (insert && insB)\n addInsert(insert, sections, b.text);\n }\n else if (b.ins == -1) {\n addSection(sections, a.off ? 0 : a.len, len, open);\n if (insert)\n addInsert(insert, sections, a.textBit(len));\n }\n else {\n addSection(sections, a.off ? 0 : a.len, b.off ? 0 : b.ins, open);\n if (insert && !b.off)\n addInsert(insert, sections, b.text);\n }\n open = (a.ins > len || b.ins >= 0 && b.len > len) && (open || sections.length > sectionLen);\n a.forward2(len);\n b.forward(len);\n }\n }\n}\nclass SectionIter {\n constructor(set) {\n this.set = set;\n this.i = 0;\n this.next();\n }\n next() {\n let { sections } = this.set;\n if (this.i < sections.length) {\n this.len = sections[this.i++];\n this.ins = sections[this.i++];\n }\n else {\n this.len = 0;\n this.ins = -2;\n }\n this.off = 0;\n }\n get done() { return this.ins == -2; }\n get len2() { return this.ins < 0 ? this.len : this.ins; }\n get text() {\n let { inserted } = this.set, index = (this.i - 2) >> 1;\n return index >= inserted.length ? Text.empty : inserted[index];\n }\n textBit(len) {\n let { inserted } = this.set, index = (this.i - 2) >> 1;\n return index >= inserted.length && !len ? Text.empty\n : inserted[index].slice(this.off, len == null ? undefined : this.off + len);\n }\n forward(len) {\n if (len == this.len)\n this.next();\n else {\n this.len -= len;\n this.off += len;\n }\n }\n forward2(len) {\n if (this.ins == -1)\n this.forward(len);\n else if (len == this.ins)\n this.next();\n else {\n this.ins -= len;\n this.off += len;\n }\n }\n}\n\n/**\nA single selection range. When\n[`allowMultipleSelections`](https://codemirror.net/6/docs/ref/#state.EditorState^allowMultipleSelections)\nis enabled, a [selection](https://codemirror.net/6/docs/ref/#state.EditorSelection) may hold\nmultiple ranges. By default, selections hold exactly one range.\n*/\nclass SelectionRange {\n constructor(\n /**\n The lower boundary of the range.\n */\n from, \n /**\n The upper boundary of the range.\n */\n to, flags) {\n this.from = from;\n this.to = to;\n this.flags = flags;\n }\n /**\n The anchor of the range\u2014the side that doesn't move when you\n extend it.\n */\n get anchor() { return this.flags & 32 /* RangeFlag.Inverted */ ? this.to : this.from; }\n /**\n The head of the range, which is moved when the range is\n [extended](https://codemirror.net/6/docs/ref/#state.SelectionRange.extend).\n */\n get head() { return this.flags & 32 /* RangeFlag.Inverted */ ? this.from : this.to; }\n /**\n True when `anchor` and `head` are at the same position.\n */\n get empty() { return this.from == this.to; }\n /**\n If this is a cursor that is explicitly associated with the\n character on one of its sides, this returns the side. -1 means\n the character before its position, 1 the character after, and 0\n means no association.\n */\n get assoc() { return this.flags & 8 /* RangeFlag.AssocBefore */ ? -1 : this.flags & 16 /* RangeFlag.AssocAfter */ ? 1 : 0; }\n /**\n The bidirectional text level associated with this cursor, if\n any.\n */\n get bidiLevel() {\n let level = this.flags & 7 /* RangeFlag.BidiLevelMask */;\n return level == 7 ? null : level;\n }\n /**\n The goal column (stored vertical offset) associated with a\n cursor. This is used to preserve the vertical position when\n [moving](https://codemirror.net/6/docs/ref/#view.EditorView.moveVertically) across\n lines of different length.\n */\n get goalColumn() {\n let value = this.flags >> 6 /* RangeFlag.GoalColumnOffset */;\n return value == 16777215 /* RangeFlag.NoGoalColumn */ ? undefined : value;\n }\n /**\n Map this range through a change, producing a valid range in the\n updated document.\n */\n map(change, assoc = -1) {\n let from, to;\n if (this.empty) {\n from = to = change.mapPos(this.from, assoc);\n }\n else {\n from = change.mapPos(this.from, 1);\n to = change.mapPos(this.to, -1);\n }\n return from == this.from && to == this.to ? this : new SelectionRange(from, to, this.flags);\n }\n /**\n Extend this range to cover at least `from` to `to`.\n */\n extend(from, to = from) {\n if (from <= this.anchor && to >= this.anchor)\n return EditorSelection.range(from, to);\n let head = Math.abs(from - this.anchor) > Math.abs(to - this.anchor) ? from : to;\n return EditorSelection.range(this.anchor, head);\n }\n /**\n Compare this range to another range.\n */\n eq(other, includeAssoc = false) {\n return this.anchor == other.anchor && this.head == other.head &&\n (!includeAssoc || !this.empty || this.assoc == other.assoc);\n }\n /**\n Return a JSON-serializable object representing the range.\n */\n toJSON() { return { anchor: this.anchor, head: this.head }; }\n /**\n Convert a JSON representation of a range to a `SelectionRange`\n instance.\n */\n static fromJSON(json) {\n if (!json || typeof json.anchor != \"number\" || typeof json.head != \"number\")\n throw new RangeError(\"Invalid JSON representation for SelectionRange\");\n return EditorSelection.range(json.anchor, json.head);\n }\n /**\n @internal\n */\n static create(from, to, flags) {\n return new SelectionRange(from, to, flags);\n }\n}\n/**\nAn editor selection holds one or more selection ranges.\n*/\nclass EditorSelection {\n constructor(\n /**\n The ranges in the selection, sorted by position. Ranges cannot\n overlap (but they may touch, if they aren't empty).\n */\n ranges, \n /**\n The index of the _main_ range in the selection (which is\n usually the range that was added last).\n */\n mainIndex) {\n this.ranges = ranges;\n this.mainIndex = mainIndex;\n }\n /**\n Map a selection through a change. Used to adjust the selection\n position for changes.\n */\n map(change, assoc = -1) {\n if (change.empty)\n return this;\n return EditorSelection.create(this.ranges.map(r => r.map(change, assoc)), this.mainIndex);\n }\n /**\n Compare this selection to another selection. By default, ranges\n are compared only by position. When `includeAssoc` is true,\n cursor ranges must also have the same\n [`assoc`](https://codemirror.net/6/docs/ref/#state.SelectionRange.assoc) value.\n */\n eq(other, includeAssoc = false) {\n if (this.ranges.length != other.ranges.length ||\n this.mainIndex != other.mainIndex)\n return false;\n for (let i = 0; i < this.ranges.length; i++)\n if (!this.ranges[i].eq(other.ranges[i], includeAssoc))\n return false;\n return true;\n }\n /**\n Get the primary selection range. Usually, you should make sure\n your code applies to _all_ ranges, by using methods like\n [`changeByRange`](https://codemirror.net/6/docs/ref/#state.EditorState.changeByRange).\n */\n get main() { return this.ranges[this.mainIndex]; }\n /**\n Make sure the selection only has one range. Returns a selection\n holding only the main range from this selection.\n */\n asSingle() {\n return this.ranges.length == 1 ? this : new EditorSelection([this.main], 0);\n }\n /**\n Extend this selection with an extra range.\n */\n addRange(range, main = true) {\n return EditorSelection.create([range].concat(this.ranges), main ? 0 : this.mainIndex + 1);\n }\n /**\n Replace a given range with another range, and then normalize the\n selection to merge and sort ranges if necessary.\n */\n replaceRange(range, which = this.mainIndex) {\n let ranges = this.ranges.slice();\n ranges[which] = range;\n return EditorSelection.create(ranges, this.mainIndex);\n }\n /**\n Convert this selection to an object that can be serialized to\n JSON.\n */\n toJSON() {\n return { ranges: this.ranges.map(r => r.toJSON()), main: this.mainIndex };\n }\n /**\n Create a selection from a JSON representation.\n */\n static fromJSON(json) {\n if (!json || !Array.isArray(json.ranges) || typeof json.main != \"number\" || json.main >= json.ranges.length)\n throw new RangeError(\"Invalid JSON representation for EditorSelection\");\n return new EditorSelection(json.ranges.map((r) => SelectionRange.fromJSON(r)), json.main);\n }\n /**\n Create a selection holding a single range.\n */\n static single(anchor, head = anchor) {\n return new EditorSelection([EditorSelection.range(anchor, head)], 0);\n }\n /**\n Sort and merge the given set of ranges, creating a valid\n selection.\n */\n static create(ranges, mainIndex = 0) {\n if (ranges.length == 0)\n throw new RangeError(\"A selection needs at least one range\");\n for (let pos = 0, i = 0; i < ranges.length; i++) {\n let range = ranges[i];\n if (range.empty ? range.from <= pos : range.from < pos)\n return EditorSelection.normalized(ranges.slice(), mainIndex);\n pos = range.to;\n }\n return new EditorSelection(ranges, mainIndex);\n }\n /**\n Create a cursor selection range at the given position. You can\n safely ignore the optional arguments in most situations.\n */\n static cursor(pos, assoc = 0, bidiLevel, goalColumn) {\n return SelectionRange.create(pos, pos, (assoc == 0 ? 0 : assoc < 0 ? 8 /* RangeFlag.AssocBefore */ : 16 /* RangeFlag.AssocAfter */) |\n (bidiLevel == null ? 7 : Math.min(6, bidiLevel)) |\n ((goalColumn !== null && goalColumn !== void 0 ? goalColumn : 16777215 /* RangeFlag.NoGoalColumn */) << 6 /* RangeFlag.GoalColumnOffset */));\n }\n /**\n Create a selection range.\n */\n static range(anchor, head, goalColumn, bidiLevel) {\n let flags = ((goalColumn !== null && goalColumn !== void 0 ? goalColumn : 16777215 /* RangeFlag.NoGoalColumn */) << 6 /* RangeFlag.GoalColumnOffset */) |\n (bidiLevel == null ? 7 : Math.min(6, bidiLevel));\n return head < anchor ? SelectionRange.create(head, anchor, 32 /* RangeFlag.Inverted */ | 16 /* RangeFlag.AssocAfter */ | flags)\n : SelectionRange.create(anchor, head, (head > anchor ? 8 /* RangeFlag.AssocBefore */ : 0) | flags);\n }\n /**\n @internal\n */\n static normalized(ranges, mainIndex = 0) {\n let main = ranges[mainIndex];\n ranges.sort((a, b) => a.from - b.from);\n mainIndex = ranges.indexOf(main);\n for (let i = 1; i < ranges.length; i++) {\n let range = ranges[i], prev = ranges[i - 1];\n if (range.empty ? range.from <= prev.to : range.from < prev.to) {\n let from = prev.from, to = Math.max(range.to, prev.to);\n if (i <= mainIndex)\n mainIndex--;\n ranges.splice(--i, 2, range.anchor > range.head ? EditorSelection.range(to, from) : EditorSelection.range(from, to));\n }\n }\n return new EditorSelection(ranges, mainIndex);\n }\n}\nfunction checkSelection(selection, docLength) {\n for (let range of selection.ranges)\n if (range.to > docLength)\n throw new RangeError(\"Selection points outside of document\");\n}\n\nlet nextID = 0;\n/**\nA facet is a labeled value that is associated with an editor\nstate. It takes inputs from any number of extensions, and combines\nthose into a single output value.\n\nExamples of uses of facets are the [tab\nsize](https://codemirror.net/6/docs/ref/#state.EditorState^tabSize), [editor\nattributes](https://codemirror.net/6/docs/ref/#view.EditorView^editorAttributes), and [update\nlisteners](https://codemirror.net/6/docs/ref/#view.EditorView^updateListener).\n\nNote that `Facet` instances can be used anywhere where\n[`FacetReader`](https://codemirror.net/6/docs/ref/#state.FacetReader) is expected.\n*/\nclass Facet {\n constructor(\n /**\n @internal\n */\n combine, \n /**\n @internal\n */\n compareInput, \n /**\n @internal\n */\n compare, isStatic, enables) {\n this.combine = combine;\n this.compareInput = compareInput;\n this.compare = compare;\n this.isStatic = isStatic;\n /**\n @internal\n */\n this.id = nextID++;\n this.default = combine([]);\n this.extensions = typeof enables == \"function\" ? enables(this) : enables;\n }\n /**\n Returns a facet reader for this facet, which can be used to\n [read](https://codemirror.net/6/docs/ref/#state.EditorState.facet) it but not to define values for it.\n */\n get reader() { return this; }\n /**\n Define a new facet.\n */\n static define(config = {}) {\n return new Facet(config.combine || ((a) => a), config.compareInput || ((a, b) => a === b), config.compare || (!config.combine ? sameArray : (a, b) => a === b), !!config.static, config.enables);\n }\n /**\n Returns an extension that adds the given value to this facet.\n */\n of(value) {\n return new FacetProvider([], this, 0 /* Provider.Static */, value);\n }\n /**\n Create an extension that computes a value for the facet from a\n state. You must take care to declare the parts of the state that\n this value depends on, since your function is only called again\n for a new state when one of those parts changed.\n \n In cases where your value depends only on a single field, you'll\n want to use the [`from`](https://codemirror.net/6/docs/ref/#state.Facet.from) method instead.\n */\n compute(deps, get) {\n if (this.isStatic)\n throw new Error(\"Can't compute a static facet\");\n return new FacetProvider(deps, this, 1 /* Provider.Single */, get);\n }\n /**\n Create an extension that computes zero or more values for this\n facet from a state.\n */\n computeN(deps, get) {\n if (this.isStatic)\n throw new Error(\"Can't compute a static facet\");\n return new FacetProvider(deps, this, 2 /* Provider.Multi */, get);\n }\n from(field, get) {\n if (!get)\n get = x => x;\n return this.compute([field], state => get(state.field(field)));\n }\n}\nfunction sameArray(a, b) {\n return a == b || a.length == b.length && a.every((e, i) => e === b[i]);\n}\nclass FacetProvider {\n constructor(dependencies, facet, type, value) {\n this.dependencies = dependencies;\n this.facet = facet;\n this.type = type;\n this.value = value;\n this.id = nextID++;\n }\n dynamicSlot(addresses) {\n var _a;\n let getter = this.value;\n let compare = this.facet.compareInput;\n let id = this.id, idx = addresses[id] >> 1, multi = this.type == 2 /* Provider.Multi */;\n let depDoc = false, depSel = false, depAddrs = [];\n for (let dep of this.dependencies) {\n if (dep == \"doc\")\n depDoc = true;\n else if (dep == \"selection\")\n depSel = true;\n else if ((((_a = addresses[dep.id]) !== null && _a !== void 0 ? _a : 1) & 1) == 0)\n depAddrs.push(addresses[dep.id]);\n }\n return {\n create(state) {\n state.values[idx] = getter(state);\n return 1 /* SlotStatus.Changed */;\n },\n update(state, tr) {\n if ((depDoc && tr.docChanged) || (depSel && (tr.docChanged || tr.selection)) || ensureAll(state, depAddrs)) {\n let newVal = getter(state);\n if (multi ? !compareArray(newVal, state.values[idx], compare) : !compare(newVal, state.values[idx])) {\n state.values[idx] = newVal;\n return 1 /* SlotStatus.Changed */;\n }\n }\n return 0;\n },\n reconfigure: (state, oldState) => {\n let newVal, oldAddr = oldState.config.address[id];\n if (oldAddr != null) {\n let oldVal = getAddr(oldState, oldAddr);\n if (this.dependencies.every(dep => {\n return dep instanceof Facet ? oldState.facet(dep) === state.facet(dep) :\n dep instanceof StateField ? oldState.field(dep, false) == state.field(dep, false) : true;\n }) || (multi ? compareArray(newVal = getter(state), oldVal, compare) : compare(newVal = getter(state), oldVal))) {\n state.values[idx] = oldVal;\n return 0;\n }\n }\n else {\n newVal = getter(state);\n }\n state.values[idx] = newVal;\n return 1 /* SlotStatus.Changed */;\n }\n };\n }\n}\nfunction compareArray(a, b, compare) {\n if (a.length != b.length)\n return false;\n for (let i = 0; i < a.length; i++)\n if (!compare(a[i], b[i]))\n return false;\n return true;\n}\nfunction ensureAll(state, addrs) {\n let changed = false;\n for (let addr of addrs)\n if (ensureAddr(state, addr) & 1 /* SlotStatus.Changed */)\n changed = true;\n return changed;\n}\nfunction dynamicFacetSlot(addresses, facet, providers) {\n let providerAddrs = providers.map(p => addresses[p.id]);\n let providerTypes = providers.map(p => p.type);\n let dynamic = providerAddrs.filter(p => !(p & 1));\n let idx = addresses[facet.id] >> 1;\n function get(state) {\n let values = [];\n for (let i = 0; i < providerAddrs.length; i++) {\n let value = getAddr(state, providerAddrs[i]);\n if (providerTypes[i] == 2 /* Provider.Multi */)\n for (let val of value)\n values.push(val);\n else\n values.push(value);\n }\n return facet.combine(values);\n }\n return {\n create(state) {\n for (let addr of providerAddrs)\n ensureAddr(state, addr);\n state.values[idx] = get(state);\n return 1 /* SlotStatus.Changed */;\n },\n update(state, tr) {\n if (!ensureAll(state, dynamic))\n return 0;\n let value = get(state);\n if (facet.compare(value, state.values[idx]))\n return 0;\n state.values[idx] = value;\n return 1 /* SlotStatus.Changed */;\n },\n reconfigure(state, oldState) {\n let depChanged = ensureAll(state, providerAddrs);\n let oldProviders = oldState.config.facets[facet.id], oldValue = oldState.facet(facet);\n if (oldProviders && !depChanged && sameArray(providers, oldProviders)) {\n state.values[idx] = oldValue;\n return 0;\n }\n let value = get(state);\n if (facet.compare(value, oldValue)) {\n state.values[idx] = oldValue;\n return 0;\n }\n state.values[idx] = value;\n return 1 /* SlotStatus.Changed */;\n }\n };\n}\nconst initField = /*@__PURE__*/Facet.define({ static: true });\n/**\nFields can store additional information in an editor state, and\nkeep it in sync with the rest of the state.\n*/\nclass StateField {\n constructor(\n /**\n @internal\n */\n id, createF, updateF, compareF, \n /**\n @internal\n */\n spec) {\n this.id = id;\n this.createF = createF;\n this.updateF = updateF;\n this.compareF = compareF;\n this.spec = spec;\n /**\n @internal\n */\n this.provides = undefined;\n }\n /**\n Define a state field.\n */\n static define(config) {\n let field = new StateField(nextID++, config.create, config.update, config.compare || ((a, b) => a === b), config);\n if (config.provide)\n field.provides = config.provide(field);\n return field;\n }\n create(state) {\n let init = state.facet(initField).find(i => i.field == this);\n return ((init === null || init === void 0 ? void 0 : init.create) || this.createF)(state);\n }\n /**\n @internal\n */\n slot(addresses) {\n let idx = addresses[this.id] >> 1;\n return {\n create: (state) => {\n state.values[idx] = this.create(state);\n return 1 /* SlotStatus.Changed */;\n },\n update: (state, tr) => {\n let oldVal = state.values[idx];\n let value = this.updateF(oldVal, tr);\n if (this.compareF(oldVal, value))\n return 0;\n state.values[idx] = value;\n return 1 /* SlotStatus.Changed */;\n },\n reconfigure: (state, oldState) => {\n let init = state.facet(initField), oldInit = oldState.facet(initField), reInit;\n if ((reInit = init.find(i => i.field == this)) && reInit != oldInit.find(i => i.field == this)) {\n state.values[idx] = reInit.create(state);\n return 1 /* SlotStatus.Changed */;\n }\n if (oldState.config.address[this.id] != null) {\n state.values[idx] = oldState.field(this);\n return 0;\n }\n state.values[idx] = this.create(state);\n return 1 /* SlotStatus.Changed */;\n }\n };\n }\n /**\n Returns an extension that enables this field and overrides the\n way it is initialized. Can be useful when you need to provide a\n non-default starting value for the field.\n */\n init(create) {\n return [this, initField.of({ field: this, create })];\n }\n /**\n State field instances can be used as\n [`Extension`](https://codemirror.net/6/docs/ref/#state.Extension) values to enable the field in a\n given state.\n */\n get extension() { return this; }\n}\nconst Prec_ = { lowest: 4, low: 3, default: 2, high: 1, highest: 0 };\nfunction prec(value) {\n return (ext) => new PrecExtension(ext, value);\n}\n/**\nBy default extensions are registered in the order they are found\nin the flattened form of nested array that was provided.\nIndividual extension values can be assigned a precedence to\noverride this. Extensions that do not have a precedence set get\nthe precedence of the nearest parent with a precedence, or\n[`default`](https://codemirror.net/6/docs/ref/#state.Prec.default) if there is no such parent. The\nfinal ordering of extensions is determined by first sorting by\nprecedence and then by order within each precedence.\n*/\nconst Prec = {\n /**\n The highest precedence level, for extensions that should end up\n near the start of the precedence ordering.\n */\n highest: /*@__PURE__*/prec(Prec_.highest),\n /**\n A higher-than-default precedence, for extensions that should\n come before those with default precedence.\n */\n high: /*@__PURE__*/prec(Prec_.high),\n /**\n The default precedence, which is also used for extensions\n without an explicit precedence.\n */\n default: /*@__PURE__*/prec(Prec_.default),\n /**\n A lower-than-default precedence.\n */\n low: /*@__PURE__*/prec(Prec_.low),\n /**\n The lowest precedence level. Meant for things that should end up\n near the end of the extension order.\n */\n lowest: /*@__PURE__*/prec(Prec_.lowest)\n};\nclass PrecExtension {\n constructor(inner, prec) {\n this.inner = inner;\n this.prec = prec;\n }\n}\n/**\nExtension compartments can be used to make a configuration\ndynamic. By [wrapping](https://codemirror.net/6/docs/ref/#state.Compartment.of) part of your\nconfiguration in a compartment, you can later\n[replace](https://codemirror.net/6/docs/ref/#state.Compartment.reconfigure) that part through a\ntransaction.\n*/\nclass Compartment {\n /**\n Create an instance of this compartment to add to your [state\n configuration](https://codemirror.net/6/docs/ref/#state.EditorStateConfig.extensions).\n */\n of(ext) { return new CompartmentInstance(this, ext); }\n /**\n Create an [effect](https://codemirror.net/6/docs/ref/#state.TransactionSpec.effects) that\n reconfigures this compartment.\n */\n reconfigure(content) {\n return Compartment.reconfigure.of({ compartment: this, extension: content });\n }\n /**\n Get the current content of the compartment in the state, or\n `undefined` if it isn't present.\n */\n get(state) {\n return state.config.compartments.get(this);\n }\n}\nclass CompartmentInstance {\n constructor(compartment, inner) {\n this.compartment = compartment;\n this.inner = inner;\n }\n}\nclass Configuration {\n constructor(base, compartments, dynamicSlots, address, staticValues, facets) {\n this.base = base;\n this.compartments = compartments;\n this.dynamicSlots = dynamicSlots;\n this.address = address;\n this.staticValues = staticValues;\n this.facets = facets;\n this.statusTemplate = [];\n while (this.statusTemplate.length < dynamicSlots.length)\n this.statusTemplate.push(0 /* SlotStatus.Unresolved */);\n }\n staticFacet(facet) {\n let addr = this.address[facet.id];\n return addr == null ? facet.default : this.staticValues[addr >> 1];\n }\n static resolve(base, compartments, oldState) {\n let fields = [];\n let facets = Object.create(null);\n let newCompartments = new Map();\n for (let ext of flatten(base, compartments, newCompartments)) {\n if (ext instanceof StateField)\n fields.push(ext);\n else\n (facets[ext.facet.id] || (facets[ext.facet.id] = [])).push(ext);\n }\n let address = Object.create(null);\n let staticValues = [];\n let dynamicSlots = [];\n for (let field of fields) {\n address[field.id] = dynamicSlots.length << 1;\n dynamicSlots.push(a => field.slot(a));\n }\n let oldFacets = oldState === null || oldState === void 0 ? void 0 : oldState.config.facets;\n for (let id in facets) {\n let providers = facets[id], facet = providers[0].facet;\n let oldProviders = oldFacets && oldFacets[id] || [];\n if (providers.every(p => p.type == 0 /* Provider.Static */)) {\n address[facet.id] = (staticValues.length << 1) | 1;\n if (sameArray(oldProviders, providers)) {\n staticValues.push(oldState.facet(facet));\n }\n else {\n let value = facet.combine(providers.map(p => p.value));\n staticValues.push(oldState && facet.compare(value, oldState.facet(facet)) ? oldState.facet(facet) : value);\n }\n }\n else {\n for (let p of providers) {\n if (p.type == 0 /* Provider.Static */) {\n address[p.id] = (staticValues.length << 1) | 1;\n staticValues.push(p.value);\n }\n else {\n address[p.id] = dynamicSlots.length << 1;\n dynamicSlots.push(a => p.dynamicSlot(a));\n }\n }\n address[facet.id] = dynamicSlots.length << 1;\n dynamicSlots.push(a => dynamicFacetSlot(a, facet, providers));\n }\n }\n let dynamic = dynamicSlots.map(f => f(address));\n return new Configuration(base, newCompartments, dynamic, address, staticValues, facets);\n }\n}\nfunction flatten(extension, compartments, newCompartments) {\n let result = [[], [], [], [], []];\n let seen = new Map();\n function inner(ext, prec) {\n let known = seen.get(ext);\n if (known != null) {\n if (known <= prec)\n return;\n let found = result[known].indexOf(ext);\n if (found > -1)\n result[known].splice(found, 1);\n if (ext instanceof CompartmentInstance)\n newCompartments.delete(ext.compartment);\n }\n seen.set(ext, prec);\n if (Array.isArray(ext)) {\n for (let e of ext)\n inner(e, prec);\n }\n else if (ext instanceof CompartmentInstance) {\n if (newCompartments.has(ext.compartment))\n throw new RangeError(`Duplicate use of compartment in extensions`);\n let content = compartments.get(ext.compartment) || ext.inner;\n newCompartments.set(ext.compartment, content);\n inner(content, prec);\n }\n else if (ext instanceof PrecExtension) {\n inner(ext.inner, ext.prec);\n }\n else if (ext instanceof StateField) {\n result[prec].push(ext);\n if (ext.provides)\n inner(ext.provides, prec);\n }\n else if (ext instanceof FacetProvider) {\n result[prec].push(ext);\n if (ext.facet.extensions)\n inner(ext.facet.extensions, Prec_.default);\n }\n else {\n let content = ext.extension;\n if (!content)\n throw new Error(`Unrecognized extension value in extension set (${ext}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);\n inner(content, prec);\n }\n }\n inner(extension, Prec_.default);\n return result.reduce((a, b) => a.concat(b));\n}\nfunction ensureAddr(state, addr) {\n if (addr & 1)\n return 2 /* SlotStatus.Computed */;\n let idx = addr >> 1;\n let status = state.status[idx];\n if (status == 4 /* SlotStatus.Computing */)\n throw new Error(\"Cyclic dependency between fields and/or facets\");\n if (status & 2 /* SlotStatus.Computed */)\n return status;\n state.status[idx] = 4 /* SlotStatus.Computing */;\n let changed = state.computeSlot(state, state.config.dynamicSlots[idx]);\n return state.status[idx] = 2 /* SlotStatus.Computed */ | changed;\n}\nfunction getAddr(state, addr) {\n return addr & 1 ? state.config.staticValues[addr >> 1] : state.values[addr >> 1];\n}\n\nconst languageData = /*@__PURE__*/Facet.define();\nconst allowMultipleSelections = /*@__PURE__*/Facet.define({\n combine: values => values.some(v => v),\n static: true\n});\nconst lineSeparator = /*@__PURE__*/Facet.define({\n combine: values => values.length ? values[0] : undefined,\n static: true\n});\nconst changeFilter = /*@__PURE__*/Facet.define();\nconst transactionFilter = /*@__PURE__*/Facet.define();\nconst transactionExtender = /*@__PURE__*/Facet.define();\nconst readOnly = /*@__PURE__*/Facet.define({\n combine: values => values.length ? values[0] : false\n});\n\n/**\nAnnotations are tagged values that are used to add metadata to\ntransactions in an extensible way. They should be used to model\nthings that effect the entire transaction (such as its [time\nstamp](https://codemirror.net/6/docs/ref/#state.Transaction^time) or information about its\n[origin](https://codemirror.net/6/docs/ref/#state.Transaction^userEvent)). For effects that happen\n_alongside_ the other changes made by the transaction, [state\neffects](https://codemirror.net/6/docs/ref/#state.StateEffect) are more appropriate.\n*/\nclass Annotation {\n /**\n @internal\n */\n constructor(\n /**\n The annotation type.\n */\n type, \n /**\n The value of this annotation.\n */\n value) {\n this.type = type;\n this.value = value;\n }\n /**\n Define a new type of annotation.\n */\n static define() { return new AnnotationType(); }\n}\n/**\nMarker that identifies a type of [annotation](https://codemirror.net/6/docs/ref/#state.Annotation).\n*/\nclass AnnotationType {\n /**\n Create an instance of this annotation.\n */\n of(value) { return new Annotation(this, value); }\n}\n/**\nRepresentation of a type of state effect. Defined with\n[`StateEffect.define`](https://codemirror.net/6/docs/ref/#state.StateEffect^define).\n*/\nclass StateEffectType {\n /**\n @internal\n */\n constructor(\n // The `any` types in these function types are there to work\n // around TypeScript issue #37631, where the type guard on\n // `StateEffect.is` mysteriously stops working when these properly\n // have type `Value`.\n /**\n @internal\n */\n map) {\n this.map = map;\n }\n /**\n Create a [state effect](https://codemirror.net/6/docs/ref/#state.StateEffect) instance of this\n type.\n */\n of(value) { return new StateEffect(this, value); }\n}\n/**\nState effects can be used to represent additional effects\nassociated with a [transaction](https://codemirror.net/6/docs/ref/#state.Transaction.effects). They\nare often useful to model changes to custom [state\nfields](https://codemirror.net/6/docs/ref/#state.StateField), when those changes aren't implicit in\ndocument or selection changes.\n*/\nclass StateEffect {\n /**\n @internal\n */\n constructor(\n /**\n @internal\n */\n type, \n /**\n The value of this effect.\n */\n value) {\n this.type = type;\n this.value = value;\n }\n /**\n Map this effect through a position mapping. Will return\n `undefined` when that ends up deleting the effect.\n */\n map(mapping) {\n let mapped = this.type.map(this.value, mapping);\n return mapped === undefined ? undefined : mapped == this.value ? this : new StateEffect(this.type, mapped);\n }\n /**\n Tells you whether this effect object is of a given\n [type](https://codemirror.net/6/docs/ref/#state.StateEffectType).\n */\n is(type) { return this.type == type; }\n /**\n Define a new effect type. The type parameter indicates the type\n of values that his effect holds. It should be a type that\n doesn't include `undefined`, since that is used in\n [mapping](https://codemirror.net/6/docs/ref/#state.StateEffect.map) to indicate that an effect is\n removed.\n */\n static define(spec = {}) {\n return new StateEffectType(spec.map || (v => v));\n }\n /**\n Map an array of effects through a change set.\n */\n static mapEffects(effects, mapping) {\n if (!effects.length)\n return effects;\n let result = [];\n for (let effect of effects) {\n let mapped = effect.map(mapping);\n if (mapped)\n result.push(mapped);\n }\n return result;\n }\n}\n/**\nThis effect can be used to reconfigure the root extensions of\nthe editor. Doing this will discard any extensions\n[appended](https://codemirror.net/6/docs/ref/#state.StateEffect^appendConfig), but does not reset\nthe content of [reconfigured](https://codemirror.net/6/docs/ref/#state.Compartment.reconfigure)\ncompartments.\n*/\nStateEffect.reconfigure = /*@__PURE__*/StateEffect.define();\n/**\nAppend extensions to the top-level configuration of the editor.\n*/\nStateEffect.appendConfig = /*@__PURE__*/StateEffect.define();\n/**\nChanges to the editor state are grouped into transactions.\nTypically, a user action creates a single transaction, which may\ncontain any number of document changes, may change the selection,\nor have other effects. Create a transaction by calling\n[`EditorState.update`](https://codemirror.net/6/docs/ref/#state.EditorState.update), or immediately\ndispatch one by calling\n[`EditorView.dispatch`](https://codemirror.net/6/docs/ref/#view.EditorView.dispatch).\n*/\nclass Transaction {\n constructor(\n /**\n The state from which the transaction starts.\n */\n startState, \n /**\n The document changes made by this transaction.\n */\n changes, \n /**\n The selection set by this transaction, or undefined if it\n doesn't explicitly set a selection.\n */\n selection, \n /**\n The effects added to the transaction.\n */\n effects, \n /**\n @internal\n */\n annotations, \n /**\n Whether the selection should be scrolled into view after this\n transaction is dispatched.\n */\n scrollIntoView) {\n this.startState = startState;\n this.changes = changes;\n this.selection = selection;\n this.effects = effects;\n this.annotations = annotations;\n this.scrollIntoView = scrollIntoView;\n /**\n @internal\n */\n this._doc = null;\n /**\n @internal\n */\n this._state = null;\n if (selection)\n checkSelection(selection, changes.newLength);\n if (!annotations.some((a) => a.type == Transaction.time))\n this.annotations = annotations.concat(Transaction.time.of(Date.now()));\n }\n /**\n @internal\n */\n static create(startState, changes, selection, effects, annotations, scrollIntoView) {\n return new Transaction(startState, changes, selection, effects, annotations, scrollIntoView);\n }\n /**\n The new document produced by the transaction. Contrary to\n [`.state`](https://codemirror.net/6/docs/ref/#state.Transaction.state)`.doc`, accessing this won't\n force the entire new state to be computed right away, so it is\n recommended that [transaction\n filters](https://codemirror.net/6/docs/ref/#state.EditorState^transactionFilter) use this getter\n when they need to look at the new document.\n */\n get newDoc() {\n return this._doc || (this._doc = this.changes.apply(this.startState.doc));\n }\n /**\n The new selection produced by the transaction. If\n [`this.selection`](https://codemirror.net/6/docs/ref/#state.Transaction.selection) is undefined,\n this will [map](https://codemirror.net/6/docs/ref/#state.EditorSelection.map) the start state's\n current selection through the changes made by the transaction.\n */\n get newSelection() {\n return this.selection || this.startState.selection.map(this.changes);\n }\n /**\n The new state created by the transaction. Computed on demand\n (but retained for subsequent access), so it is recommended not to\n access it in [transaction\n filters](https://codemirror.net/6/docs/ref/#state.EditorState^transactionFilter) when possible.\n */\n get state() {\n if (!this._state)\n this.startState.applyTransaction(this);\n return this._state;\n }\n /**\n Get the value of the given annotation type, if any.\n */\n annotation(type) {\n for (let ann of this.annotations)\n if (ann.type == type)\n return ann.value;\n return undefined;\n }\n /**\n Indicates whether the transaction changed the document.\n */\n get docChanged() { return !this.changes.empty; }\n /**\n Indicates whether this transaction reconfigures the state\n (through a [configuration compartment](https://codemirror.net/6/docs/ref/#state.Compartment) or\n with a top-level configuration\n [effect](https://codemirror.net/6/docs/ref/#state.StateEffect^reconfigure).\n */\n get reconfigured() { return this.startState.config != this.state.config; }\n /**\n Returns true if the transaction has a [user\n event](https://codemirror.net/6/docs/ref/#state.Transaction^userEvent) annotation that is equal to\n or more specific than `event`. For example, if the transaction\n has `\"select.pointer\"` as user event, `\"select\"` and\n `\"select.pointer\"` will match it.\n */\n isUserEvent(event) {\n let e = this.annotation(Transaction.userEvent);\n return !!(e && (e == event || e.length > event.length && e.slice(0, event.length) == event && e[event.length] == \".\"));\n }\n}\n/**\nAnnotation used to store transaction timestamps. Automatically\nadded to every transaction, holding `Date.now()`.\n*/\nTransaction.time = /*@__PURE__*/Annotation.define();\n/**\nAnnotation used to associate a transaction with a user interface\nevent. Holds a string identifying the event, using a\ndot-separated format to support attaching more specific\ninformation. The events used by the core libraries are:\n\n - `\"input\"` when content is entered\n - `\"input.type\"` for typed input\n - `\"input.type.compose\"` for composition\n - `\"input.paste\"` for pasted input\n - `\"input.drop\"` when adding content with drag-and-drop\n - `\"input.complete\"` when autocompleting\n - `\"delete\"` when the user deletes content\n - `\"delete.selection\"` when deleting the selection\n - `\"delete.forward\"` when deleting forward from the selection\n - `\"delete.backward\"` when deleting backward from the selection\n - `\"delete.cut\"` when cutting to the clipboard\n - `\"move\"` when content is moved\n - `\"move.drop\"` when content is moved within the editor through drag-and-drop\n - `\"select\"` when explicitly changing the selection\n - `\"select.pointer\"` when selecting with a mouse or other pointing device\n - `\"undo\"` and `\"redo\"` for history actions\n\nUse [`isUserEvent`](https://codemirror.net/6/docs/ref/#state.Transaction.isUserEvent) to check\nwhether the annotation matches a given event.\n*/\nTransaction.userEvent = /*@__PURE__*/Annotation.define();\n/**\nAnnotation indicating whether a transaction should be added to\nthe undo history or not.\n*/\nTransaction.addToHistory = /*@__PURE__*/Annotation.define();\n/**\nAnnotation indicating (when present and true) that a transaction\nrepresents a change made by some other actor, not the user. This\nis used, for example, to tag other people's changes in\ncollaborative editing.\n*/\nTransaction.remote = /*@__PURE__*/Annotation.define();\nfunction joinRanges(a, b) {\n let result = [];\n for (let iA = 0, iB = 0;;) {\n let from, to;\n if (iA < a.length && (iB == b.length || b[iB] >= a[iA])) {\n from = a[iA++];\n to = a[iA++];\n }\n else if (iB < b.length) {\n from = b[iB++];\n to = b[iB++];\n }\n else\n return result;\n if (!result.length || result[result.length - 1] < from)\n result.push(from, to);\n else if (result[result.length - 1] < to)\n result[result.length - 1] = to;\n }\n}\nfunction mergeTransaction(a, b, sequential) {\n var _a;\n let mapForA, mapForB, changes;\n if (sequential) {\n mapForA = b.changes;\n mapForB = ChangeSet.empty(b.changes.length);\n changes = a.changes.compose(b.changes);\n }\n else {\n mapForA = b.changes.map(a.changes);\n mapForB = a.changes.mapDesc(b.changes, true);\n changes = a.changes.compose(mapForA);\n }\n return {\n changes,\n selection: b.selection ? b.selection.map(mapForB) : (_a = a.selection) === null || _a === void 0 ? void 0 : _a.map(mapForA),\n effects: StateEffect.mapEffects(a.effects, mapForA).concat(StateEffect.mapEffects(b.effects, mapForB)),\n annotations: a.annotations.length ? a.annotations.concat(b.annotations) : b.annotations,\n scrollIntoView: a.scrollIntoView || b.scrollIntoView\n };\n}\nfunction resolveTransactionInner(state, spec, docSize) {\n let sel = spec.selection, annotations = asArray(spec.annotations);\n if (spec.userEvent)\n annotations = annotations.concat(Transaction.userEvent.of(spec.userEvent));\n return {\n changes: spec.changes instanceof ChangeSet ? spec.changes\n : ChangeSet.of(spec.changes || [], docSize, state.facet(lineSeparator)),\n selection: sel && (sel instanceof EditorSelection ? sel : EditorSelection.single(sel.anchor, sel.head)),\n effects: asArray(spec.effects),\n annotations,\n scrollIntoView: !!spec.scrollIntoView\n };\n}\nfunction resolveTransaction(state, specs, filter) {\n let s = resolveTransactionInner(state, specs.length ? specs[0] : {}, state.doc.length);\n if (specs.length && specs[0].filter === false)\n filter = false;\n for (let i = 1; i < specs.length; i++) {\n if (specs[i].filter === false)\n filter = false;\n let seq = !!specs[i].sequential;\n s = mergeTransaction(s, resolveTransactionInner(state, specs[i], seq ? s.changes.newLength : state.doc.length), seq);\n }\n let tr = Transaction.create(state, s.changes, s.selection, s.effects, s.annotations, s.scrollIntoView);\n return extendTransaction(filter ? filterTransaction(tr) : tr);\n}\n// Finish a transaction by applying filters if necessary.\nfunction filterTransaction(tr) {\n let state = tr.startState;\n // Change filters\n let result = true;\n for (let filter of state.facet(changeFilter)) {\n let value = filter(tr);\n if (value === false) {\n result = false;\n break;\n }\n if (Array.isArray(value))\n result = result === true ? value : joinRanges(result, value);\n }\n if (result !== true) {\n let changes, back;\n if (result === false) {\n back = tr.changes.invertedDesc;\n changes = ChangeSet.empty(state.doc.length);\n }\n else {\n let filtered = tr.changes.filter(result);\n changes = filtered.changes;\n back = filtered.filtered.mapDesc(filtered.changes).invertedDesc;\n }\n tr = Transaction.create(state, changes, tr.selection && tr.selection.map(back), StateEffect.mapEffects(tr.effects, back), tr.annotations, tr.scrollIntoView);\n }\n // Transaction filters\n let filters = state.facet(transactionFilter);\n for (let i = filters.length - 1; i >= 0; i--) {\n let filtered = filters[i](tr);\n if (filtered instanceof Transaction)\n tr = filtered;\n else if (Array.isArray(filtered) && filtered.length == 1 && filtered[0] instanceof Transaction)\n tr = filtered[0];\n else\n tr = resolveTransaction(state, asArray(filtered), false);\n }\n return tr;\n}\nfunction extendTransaction(tr) {\n let state = tr.startState, extenders = state.facet(transactionExtender), spec = tr;\n for (let i = extenders.length - 1; i >= 0; i--) {\n let extension = extenders[i](tr);\n if (extension && Object.keys(extension).length)\n spec = mergeTransaction(spec, resolveTransactionInner(state, extension, tr.changes.newLength), true);\n }\n return spec == tr ? tr : Transaction.create(state, tr.changes, tr.selection, spec.effects, spec.annotations, spec.scrollIntoView);\n}\nconst none = [];\nfunction asArray(value) {\n return value == null ? none : Array.isArray(value) ? value : [value];\n}\n\n/**\nThe categories produced by a [character\ncategorizer](https://codemirror.net/6/docs/ref/#state.EditorState.charCategorizer). These are used\ndo things like selecting by word.\n*/\nvar CharCategory = /*@__PURE__*/(function (CharCategory) {\n /**\n Word characters.\n */\n CharCategory[CharCategory[\"Word\"] = 0] = \"Word\";\n /**\n Whitespace.\n */\n CharCategory[CharCategory[\"Space\"] = 1] = \"Space\";\n /**\n Anything else.\n */\n CharCategory[CharCategory[\"Other\"] = 2] = \"Other\";\nreturn CharCategory})(CharCategory || (CharCategory = {}));\nconst nonASCIISingleCaseWordChar = /[\\u00df\\u0587\\u0590-\\u05f4\\u0600-\\u06ff\\u3040-\\u309f\\u30a0-\\u30ff\\u3400-\\u4db5\\u4e00-\\u9fcc\\uac00-\\ud7af]/;\nlet wordChar;\ntry {\n wordChar = /*@__PURE__*/new RegExp(\"[\\\\p{Alphabetic}\\\\p{Number}_]\", \"u\");\n}\ncatch (_) { }\nfunction hasWordChar(str) {\n if (wordChar)\n return wordChar.test(str);\n for (let i = 0; i < str.length; i++) {\n let ch = str[i];\n if (/\\w/.test(ch) || ch > \"\\x80\" && (ch.toUpperCase() != ch.toLowerCase() || nonASCIISingleCaseWordChar.test(ch)))\n return true;\n }\n return false;\n}\nfunction makeCategorizer(wordChars) {\n return (char) => {\n if (!/\\S/.test(char))\n return CharCategory.Space;\n if (hasWordChar(char))\n return CharCategory.Word;\n for (let i = 0; i < wordChars.length; i++)\n if (char.indexOf(wordChars[i]) > -1)\n return CharCategory.Word;\n return CharCategory.Other;\n };\n}\n\n/**\nThe editor state class is a persistent (immutable) data structure.\nTo update a state, you [create](https://codemirror.net/6/docs/ref/#state.EditorState.update) a\n[transaction](https://codemirror.net/6/docs/ref/#state.Transaction), which produces a _new_ state\ninstance, without modifying the original object.\n\nAs such, _never_ mutate properties of a state directly. That'll\njust break things.\n*/\nclass EditorState {\n constructor(\n /**\n @internal\n */\n config, \n /**\n The current document.\n */\n doc, \n /**\n The current selection.\n */\n selection, \n /**\n @internal\n */\n values, computeSlot, tr) {\n this.config = config;\n this.doc = doc;\n this.selection = selection;\n this.values = values;\n this.status = config.statusTemplate.slice();\n this.computeSlot = computeSlot;\n // Fill in the computed state immediately, so that further queries\n // for it made during the update return this state\n if (tr)\n tr._state = this;\n for (let i = 0; i < this.config.dynamicSlots.length; i++)\n ensureAddr(this, i << 1);\n this.computeSlot = null;\n }\n field(field, require = true) {\n let addr = this.config.address[field.id];\n if (addr == null) {\n if (require)\n throw new RangeError(\"Field is not present in this state\");\n return undefined;\n }\n ensureAddr(this, addr);\n return getAddr(this, addr);\n }\n /**\n Create a [transaction](https://codemirror.net/6/docs/ref/#state.Transaction) that updates this\n state. Any number of [transaction specs](https://codemirror.net/6/docs/ref/#state.TransactionSpec)\n can be passed. Unless\n [`sequential`](https://codemirror.net/6/docs/ref/#state.TransactionSpec.sequential) is set, the\n [changes](https://codemirror.net/6/docs/ref/#state.TransactionSpec.changes) (if any) of each spec\n are assumed to start in the _current_ document (not the document\n produced by previous specs), and its\n [selection](https://codemirror.net/6/docs/ref/#state.TransactionSpec.selection) and\n [effects](https://codemirror.net/6/docs/ref/#state.TransactionSpec.effects) are assumed to refer\n to the document created by its _own_ changes. The resulting\n transaction contains the combined effect of all the different\n specs. For [selection](https://codemirror.net/6/docs/ref/#state.TransactionSpec.selection), later\n specs take precedence over earlier ones.\n */\n update(...specs) {\n return resolveTransaction(this, specs, true);\n }\n /**\n @internal\n */\n applyTransaction(tr) {\n let conf = this.config, { base, compartments } = conf;\n for (let effect of tr.effects) {\n if (effect.is(Compartment.reconfigure)) {\n if (conf) {\n compartments = new Map;\n conf.compartments.forEach((val, key) => compartments.set(key, val));\n conf = null;\n }\n compartments.set(effect.value.compartment, effect.value.extension);\n }\n else if (effect.is(StateEffect.reconfigure)) {\n conf = null;\n base = effect.value;\n }\n else if (effect.is(StateEffect.appendConfig)) {\n conf = null;\n base = asArray(base).concat(effect.value);\n }\n }\n let startValues;\n if (!conf) {\n conf = Configuration.resolve(base, compartments, this);\n let intermediateState = new EditorState(conf, this.doc, this.selection, conf.dynamicSlots.map(() => null), (state, slot) => slot.reconfigure(state, this), null);\n startValues = intermediateState.values;\n }\n else {\n startValues = tr.startState.values.slice();\n }\n let selection = tr.startState.facet(allowMultipleSelections) ? tr.newSelection : tr.newSelection.asSingle();\n new EditorState(conf, tr.newDoc, selection, startValues, (state, slot) => slot.update(state, tr), tr);\n }\n /**\n Create a [transaction spec](https://codemirror.net/6/docs/ref/#state.TransactionSpec) that\n replaces every selection range with the given content.\n */\n replaceSelection(text) {\n if (typeof text == \"string\")\n text = this.toText(text);\n return this.changeByRange(range => ({ changes: { from: range.from, to: range.to, insert: text },\n range: EditorSelection.cursor(range.from + text.length) }));\n }\n /**\n Create a set of changes and a new selection by running the given\n function for each range in the active selection. The function\n can return an optional set of changes (in the coordinate space\n of the start document), plus an updated range (in the coordinate\n space of the document produced by the call's own changes). This\n method will merge all the changes and ranges into a single\n changeset and selection, and return it as a [transaction\n spec](https://codemirror.net/6/docs/ref/#state.TransactionSpec), which can be passed to\n [`update`](https://codemirror.net/6/docs/ref/#state.EditorState.update).\n */\n changeByRange(f) {\n let sel = this.selection;\n let result1 = f(sel.ranges[0]);\n let changes = this.changes(result1.changes), ranges = [result1.range];\n let effects = asArray(result1.effects);\n for (let i = 1; i < sel.ranges.length; i++) {\n let result = f(sel.ranges[i]);\n let newChanges = this.changes(result.changes), newMapped = newChanges.map(changes);\n for (let j = 0; j < i; j++)\n ranges[j] = ranges[j].map(newMapped);\n let mapBy = changes.mapDesc(newChanges, true);\n ranges.push(result.range.map(mapBy));\n changes = changes.compose(newMapped);\n effects = StateEffect.mapEffects(effects, newMapped).concat(StateEffect.mapEffects(asArray(result.effects), mapBy));\n }\n return {\n changes,\n selection: EditorSelection.create(ranges, sel.mainIndex),\n effects\n };\n }\n /**\n Create a [change set](https://codemirror.net/6/docs/ref/#state.ChangeSet) from the given change\n description, taking the state's document length and line\n separator into account.\n */\n changes(spec = []) {\n if (spec instanceof ChangeSet)\n return spec;\n return ChangeSet.of(spec, this.doc.length, this.facet(EditorState.lineSeparator));\n }\n /**\n Using the state's [line\n separator](https://codemirror.net/6/docs/ref/#state.EditorState^lineSeparator), create a\n [`Text`](https://codemirror.net/6/docs/ref/#state.Text) instance from the given string.\n */\n toText(string) {\n return Text.of(string.split(this.facet(EditorState.lineSeparator) || DefaultSplit));\n }\n /**\n Return the given range of the document as a string.\n */\n sliceDoc(from = 0, to = this.doc.length) {\n return this.doc.sliceString(from, to, this.lineBreak);\n }\n /**\n Get the value of a state [facet](https://codemirror.net/6/docs/ref/#state.Facet).\n */\n facet(facet) {\n let addr = this.config.address[facet.id];\n if (addr == null)\n return facet.default;\n ensureAddr(this, addr);\n return getAddr(this, addr);\n }\n /**\n Convert this state to a JSON-serializable object. When custom\n fields should be serialized, you can pass them in as an object\n mapping property names (in the resulting object, which should\n not use `doc` or `selection`) to fields.\n */\n toJSON(fields) {\n let result = {\n doc: this.sliceDoc(),\n selection: this.selection.toJSON()\n };\n if (fields)\n for (let prop in fields) {\n let value = fields[prop];\n if (value instanceof StateField && this.config.address[value.id] != null)\n result[prop] = value.spec.toJSON(this.field(fields[prop]), this);\n }\n return result;\n }\n /**\n Deserialize a state from its JSON representation. When custom\n fields should be deserialized, pass the same object you passed\n to [`toJSON`](https://codemirror.net/6/docs/ref/#state.EditorState.toJSON) when serializing as\n third argument.\n */\n static fromJSON(json, config = {}, fields) {\n if (!json || typeof json.doc != \"string\")\n throw new RangeError(\"Invalid JSON representation for EditorState\");\n let fieldInit = [];\n if (fields)\n for (let prop in fields) {\n if (Object.prototype.hasOwnProperty.call(json, prop)) {\n let field = fields[prop], value = json[prop];\n fieldInit.push(field.init(state => field.spec.fromJSON(value, state)));\n }\n }\n return EditorState.create({\n doc: json.doc,\n selection: EditorSelection.fromJSON(json.selection),\n extensions: config.extensions ? fieldInit.concat([config.extensions]) : fieldInit\n });\n }\n /**\n Create a new state. You'll usually only need this when\n initializing an editor\u2014updated states are created by applying\n transactions.\n */\n static create(config = {}) {\n let configuration = Configuration.resolve(config.extensions || [], new Map);\n let doc = config.doc instanceof Text ? config.doc\n : Text.of((config.doc || \"\").split(configuration.staticFacet(EditorState.lineSeparator) || DefaultSplit));\n let selection = !config.selection ? EditorSelection.single(0)\n : config.selection instanceof EditorSelection ? config.selection\n : EditorSelection.single(config.selection.anchor, config.selection.head);\n checkSelection(selection, doc.length);\n if (!configuration.staticFacet(allowMultipleSelections))\n selection = selection.asSingle();\n return new EditorState(configuration, doc, selection, configuration.dynamicSlots.map(() => null), (state, slot) => slot.create(state), null);\n }\n /**\n The size (in columns) of a tab in the document, determined by\n the [`tabSize`](https://codemirror.net/6/docs/ref/#state.EditorState^tabSize) facet.\n */\n get tabSize() { return this.facet(EditorState.tabSize); }\n /**\n Get the proper [line-break](https://codemirror.net/6/docs/ref/#state.EditorState^lineSeparator)\n string for this state.\n */\n get lineBreak() { return this.facet(EditorState.lineSeparator) || \"\\n\"; }\n /**\n Returns true when the editor is\n [configured](https://codemirror.net/6/docs/ref/#state.EditorState^readOnly) to be read-only.\n */\n get readOnly() { return this.facet(readOnly); }\n /**\n Look up a translation for the given phrase (via the\n [`phrases`](https://codemirror.net/6/docs/ref/#state.EditorState^phrases) facet), or return the\n original string if no translation is found.\n \n If additional arguments are passed, they will be inserted in\n place of markers like `$1` (for the first value) and `$2`, etc.\n A single `$` is equivalent to `$1`, and `$$` will produce a\n literal dollar sign.\n */\n phrase(phrase, ...insert) {\n for (let map of this.facet(EditorState.phrases))\n if (Object.prototype.hasOwnProperty.call(map, phrase)) {\n phrase = map[phrase];\n break;\n }\n if (insert.length)\n phrase = phrase.replace(/\\$(\\$|\\d*)/g, (m, i) => {\n if (i == \"$\")\n return \"$\";\n let n = +(i || 1);\n return !n || n > insert.length ? m : insert[n - 1];\n });\n return phrase;\n }\n /**\n Find the values for a given language data field, provided by the\n the [`languageData`](https://codemirror.net/6/docs/ref/#state.EditorState^languageData) facet.\n \n Examples of language data fields are...\n \n - [`\"commentTokens\"`](https://codemirror.net/6/docs/ref/#commands.CommentTokens) for specifying\n comment syntax.\n - [`\"autocomplete\"`](https://codemirror.net/6/docs/ref/#autocomplete.autocompletion^config.override)\n for providing language-specific completion sources.\n - [`\"wordChars\"`](https://codemirror.net/6/docs/ref/#state.EditorState.charCategorizer) for adding\n characters that should be considered part of words in this\n language.\n - [`\"closeBrackets\"`](https://codemirror.net/6/docs/ref/#autocomplete.CloseBracketConfig) controls\n bracket closing behavior.\n */\n languageDataAt(name, pos, side = -1) {\n let values = [];\n for (let provider of this.facet(languageData)) {\n for (let result of provider(this, pos, side)) {\n if (Object.prototype.hasOwnProperty.call(result, name))\n values.push(result[name]);\n }\n }\n return values;\n }\n /**\n Return a function that can categorize strings (expected to\n represent a single [grapheme cluster](https://codemirror.net/6/docs/ref/#state.findClusterBreak))\n into one of:\n \n - Word (contains an alphanumeric character or a character\n explicitly listed in the local language's `\"wordChars\"`\n language data, which should be a string)\n - Space (contains only whitespace)\n - Other (anything else)\n */\n charCategorizer(at) {\n let chars = this.languageDataAt(\"wordChars\", at);\n return makeCategorizer(chars.length ? chars[0] : \"\");\n }\n /**\n Find the word at the given position, meaning the range\n containing all [word](https://codemirror.net/6/docs/ref/#state.CharCategory.Word) characters\n around it. If no word characters are adjacent to the position,\n this returns null.\n */\n wordAt(pos) {\n let { text, from, length } = this.doc.lineAt(pos);\n let cat = this.charCategorizer(pos);\n let start = pos - from, end = pos - from;\n while (start > 0) {\n let prev = findClusterBreak(text, start, false);\n if (cat(text.slice(prev, start)) != CharCategory.Word)\n break;\n start = prev;\n }\n while (end < length) {\n let next = findClusterBreak(text, end);\n if (cat(text.slice(end, next)) != CharCategory.Word)\n break;\n end = next;\n }\n return start == end ? null : EditorSelection.range(start + from, end + from);\n }\n}\n/**\nA facet that, when enabled, causes the editor to allow multiple\nranges to be selected. Be careful though, because by default the\neditor relies on the native DOM selection, which cannot handle\nmultiple selections. An extension like\n[`drawSelection`](https://codemirror.net/6/docs/ref/#view.drawSelection) can be used to make\nsecondary selections visible to the user.\n*/\nEditorState.allowMultipleSelections = allowMultipleSelections;\n/**\nConfigures the tab size to use in this state. The first\n(highest-precedence) value of the facet is used. If no value is\ngiven, this defaults to 4.\n*/\nEditorState.tabSize = /*@__PURE__*/Facet.define({\n combine: values => values.length ? values[0] : 4\n});\n/**\nThe line separator to use. By default, any of `\"\\n\"`, `\"\\r\\n\"`\nand `\"\\r\"` is treated as a separator when splitting lines, and\nlines are joined with `\"\\n\"`.\n\nWhen you configure a value here, only that precise separator\nwill be used, allowing you to round-trip documents through the\neditor without normalizing line separators.\n*/\nEditorState.lineSeparator = lineSeparator;\n/**\nThis facet controls the value of the\n[`readOnly`](https://codemirror.net/6/docs/ref/#state.EditorState.readOnly) getter, which is\nconsulted by commands and extensions that implement editing\nfunctionality to determine whether they should apply. It\ndefaults to false, but when its highest-precedence value is\n`true`, such functionality disables itself.\n\nNot to be confused with\n[`EditorView.editable`](https://codemirror.net/6/docs/ref/#view.EditorView^editable), which\ncontrols whether the editor's DOM is set to be editable (and\nthus focusable).\n*/\nEditorState.readOnly = readOnly;\n/**\nRegisters translation phrases. The\n[`phrase`](https://codemirror.net/6/docs/ref/#state.EditorState.phrase) method will look through\nall objects registered with this facet to find translations for\nits argument.\n*/\nEditorState.phrases = /*@__PURE__*/Facet.define({\n compare(a, b) {\n let kA = Object.keys(a), kB = Object.keys(b);\n return kA.length == kB.length && kA.every(k => a[k] == b[k]);\n }\n});\n/**\nA facet used to register [language\ndata](https://codemirror.net/6/docs/ref/#state.EditorState.languageDataAt) providers.\n*/\nEditorState.languageData = languageData;\n/**\nFacet used to register change filters, which are called for each\ntransaction (unless explicitly\n[disabled](https://codemirror.net/6/docs/ref/#state.TransactionSpec.filter)), and can suppress\npart of the transaction's changes.\n\nSuch a function can return `true` to indicate that it doesn't\nwant to do anything, `false` to completely stop the changes in\nthe transaction, or a set of ranges in which changes should be\nsuppressed. Such ranges are represented as an array of numbers,\nwith each pair of two numbers indicating the start and end of a\nrange. So for example `[10, 20, 100, 110]` suppresses changes\nbetween 10 and 20, and between 100 and 110.\n*/\nEditorState.changeFilter = changeFilter;\n/**\nFacet used to register a hook that gets a chance to update or\nreplace transaction specs before they are applied. This will\nonly be applied for transactions that don't have\n[`filter`](https://codemirror.net/6/docs/ref/#state.TransactionSpec.filter) set to `false`. You\ncan either return a single transaction spec (possibly the input\ntransaction), or an array of specs (which will be combined in\nthe same way as the arguments to\n[`EditorState.update`](https://codemirror.net/6/docs/ref/#state.EditorState.update)).\n\nWhen possible, it is recommended to avoid accessing\n[`Transaction.state`](https://codemirror.net/6/docs/ref/#state.Transaction.state) in a filter,\nsince it will force creation of a state that will then be\ndiscarded again, if the transaction is actually filtered.\n\n(This functionality should be used with care. Indiscriminately\nmodifying transaction is likely to break something or degrade\nthe user experience.)\n*/\nEditorState.transactionFilter = transactionFilter;\n/**\nThis is a more limited form of\n[`transactionFilter`](https://codemirror.net/6/docs/ref/#state.EditorState^transactionFilter),\nwhich can only add\n[annotations](https://codemirror.net/6/docs/ref/#state.TransactionSpec.annotations) and\n[effects](https://codemirror.net/6/docs/ref/#state.TransactionSpec.effects). _But_, this type\nof filter runs even if the transaction has disabled regular\n[filtering](https://codemirror.net/6/docs/ref/#state.TransactionSpec.filter), making it suitable\nfor effects that don't need to touch the changes or selection,\nbut do want to process every transaction.\n\nExtenders run _after_ filters, when both are present.\n*/\nEditorState.transactionExtender = transactionExtender;\nCompartment.reconfigure = /*@__PURE__*/StateEffect.define();\n\n/**\nUtility function for combining behaviors to fill in a config\nobject from an array of provided configs. `defaults` should hold\ndefault values for all optional fields in `Config`.\n\nThe function will, by default, error\nwhen a field gets two values that aren't `===`-equal, but you can\nprovide combine functions per field to do something else.\n*/\nfunction combineConfig(configs, defaults, // Should hold only the optional properties of Config, but I haven't managed to express that\ncombine = {}) {\n let result = {};\n for (let config of configs)\n for (let key of Object.keys(config)) {\n let value = config[key], current = result[key];\n if (current === undefined)\n result[key] = value;\n else if (current === value || value === undefined) ; // No conflict\n else if (Object.hasOwnProperty.call(combine, key))\n result[key] = combine[key](current, value);\n else\n throw new Error(\"Config merge conflict for field \" + key);\n }\n for (let key in defaults)\n if (result[key] === undefined)\n result[key] = defaults[key];\n return result;\n}\n\n/**\nEach range is associated with a value, which must inherit from\nthis class.\n*/\nclass RangeValue {\n /**\n Compare this value with another value. Used when comparing\n rangesets. The default implementation compares by identity.\n Unless you are only creating a fixed number of unique instances\n of your value type, it is a good idea to implement this\n properly.\n */\n eq(other) { return this == other; }\n /**\n Create a [range](https://codemirror.net/6/docs/ref/#state.Range) with this value.\n */\n range(from, to = from) { return Range.create(from, to, this); }\n}\nRangeValue.prototype.startSide = RangeValue.prototype.endSide = 0;\nRangeValue.prototype.point = false;\nRangeValue.prototype.mapMode = MapMode.TrackDel;\nfunction cmpVal(a, b) {\n return a == b || a.constructor == b.constructor && a.eq(b);\n}\n/**\nA range associates a value with a range of positions.\n*/\nclass Range {\n constructor(\n /**\n The range's start position.\n */\n from, \n /**\n Its end position.\n */\n to, \n /**\n The value associated with this range.\n */\n value) {\n this.from = from;\n this.to = to;\n this.value = value;\n }\n /**\n @internal\n */\n static create(from, to, value) {\n return new Range(from, to, value);\n }\n}\nfunction cmpRange(a, b) {\n return a.from - b.from || a.value.startSide - b.value.startSide;\n}\nclass Chunk {\n constructor(from, to, value, \n // Chunks are marked with the largest point that occurs\n // in them (or -1 for no points), so that scans that are\n // only interested in points (such as the\n // heightmap-related logic) can skip range-only chunks.\n maxPoint) {\n this.from = from;\n this.to = to;\n this.value = value;\n this.maxPoint = maxPoint;\n }\n get length() { return this.to[this.to.length - 1]; }\n // Find the index of the given position and side. Use the ranges'\n // `from` pos when `end == false`, `to` when `end == true`.\n findIndex(pos, side, end, startAt = 0) {\n let arr = end ? this.to : this.from;\n for (let lo = startAt, hi = arr.length;;) {\n if (lo == hi)\n return lo;\n let mid = (lo + hi) >> 1;\n let diff = arr[mid] - pos || (end ? this.value[mid].endSide : this.value[mid].startSide) - side;\n if (mid == lo)\n return diff >= 0 ? lo : hi;\n if (diff >= 0)\n hi = mid;\n else\n lo = mid + 1;\n }\n }\n between(offset, from, to, f) {\n for (let i = this.findIndex(from, -1000000000 /* C.Far */, true), e = this.findIndex(to, 1000000000 /* C.Far */, false, i); i < e; i++)\n if (f(this.from[i] + offset, this.to[i] + offset, this.value[i]) === false)\n return false;\n }\n map(offset, changes) {\n let value = [], from = [], to = [], newPos = -1, maxPoint = -1;\n for (let i = 0; i < this.value.length; i++) {\n let val = this.value[i], curFrom = this.from[i] + offset, curTo = this.to[i] + offset, newFrom, newTo;\n if (curFrom == curTo) {\n let mapped = changes.mapPos(curFrom, val.startSide, val.mapMode);\n if (mapped == null)\n continue;\n newFrom = newTo = mapped;\n if (val.startSide != val.endSide) {\n newTo = changes.mapPos(curFrom, val.endSide);\n if (newTo < newFrom)\n continue;\n }\n }\n else {\n newFrom = changes.mapPos(curFrom, val.startSide);\n newTo = changes.mapPos(curTo, val.endSide);\n if (newFrom > newTo || newFrom == newTo && val.startSide > 0 && val.endSide <= 0)\n continue;\n }\n if ((newTo - newFrom || val.endSide - val.startSide) < 0)\n continue;\n if (newPos < 0)\n newPos = newFrom;\n if (val.point)\n maxPoint = Math.max(maxPoint, newTo - newFrom);\n value.push(val);\n from.push(newFrom - newPos);\n to.push(newTo - newPos);\n }\n return { mapped: value.length ? new Chunk(from, to, value, maxPoint) : null, pos: newPos };\n }\n}\n/**\nA range set stores a collection of [ranges](https://codemirror.net/6/docs/ref/#state.Range) in a\nway that makes them efficient to [map](https://codemirror.net/6/docs/ref/#state.RangeSet.map) and\n[update](https://codemirror.net/6/docs/ref/#state.RangeSet.update). This is an immutable data\nstructure.\n*/\nclass RangeSet {\n constructor(\n /**\n @internal\n */\n chunkPos, \n /**\n @internal\n */\n chunk, \n /**\n @internal\n */\n nextLayer, \n /**\n @internal\n */\n maxPoint) {\n this.chunkPos = chunkPos;\n this.chunk = chunk;\n this.nextLayer = nextLayer;\n this.maxPoint = maxPoint;\n }\n /**\n @internal\n */\n static create(chunkPos, chunk, nextLayer, maxPoint) {\n return new RangeSet(chunkPos, chunk, nextLayer, maxPoint);\n }\n /**\n @internal\n */\n get length() {\n let last = this.chunk.length - 1;\n return last < 0 ? 0 : Math.max(this.chunkEnd(last), this.nextLayer.length);\n }\n /**\n The number of ranges in the set.\n */\n get size() {\n if (this.isEmpty)\n return 0;\n let size = this.nextLayer.size;\n for (let chunk of this.chunk)\n size += chunk.value.length;\n return size;\n }\n /**\n @internal\n */\n chunkEnd(index) {\n return this.chunkPos[index] + this.chunk[index].length;\n }\n /**\n Update the range set, optionally adding new ranges or filtering\n out existing ones.\n \n (Note: The type parameter is just there as a kludge to work\n around TypeScript variance issues that prevented `RangeSet<X>`\n from being a subtype of `RangeSet<Y>` when `X` is a subtype of\n `Y`.)\n */\n update(updateSpec) {\n let { add = [], sort = false, filterFrom = 0, filterTo = this.length } = updateSpec;\n let filter = updateSpec.filter;\n if (add.length == 0 && !filter)\n return this;\n if (sort)\n add = add.slice().sort(cmpRange);\n if (this.isEmpty)\n return add.length ? RangeSet.of(add) : this;\n let cur = new LayerCursor(this, null, -1).goto(0), i = 0, spill = [];\n let builder = new RangeSetBuilder();\n while (cur.value || i < add.length) {\n if (i < add.length && (cur.from - add[i].from || cur.startSide - add[i].value.startSide) >= 0) {\n let range = add[i++];\n if (!builder.addInner(range.from, range.to, range.value))\n spill.push(range);\n }\n else if (cur.rangeIndex == 1 && cur.chunkIndex < this.chunk.length &&\n (i == add.length || this.chunkEnd(cur.chunkIndex) < add[i].from) &&\n (!filter || filterFrom > this.chunkEnd(cur.chunkIndex) || filterTo < this.chunkPos[cur.chunkIndex]) &&\n builder.addChunk(this.chunkPos[cur.chunkIndex], this.chunk[cur.chunkIndex])) {\n cur.nextChunk();\n }\n else {\n if (!filter || filterFrom > cur.to || filterTo < cur.from || filter(cur.from, cur.to, cur.value)) {\n if (!builder.addInner(cur.from, cur.to, cur.value))\n spill.push(Range.create(cur.from, cur.to, cur.value));\n }\n cur.next();\n }\n }\n return builder.finishInner(this.nextLayer.isEmpty && !spill.length ? RangeSet.empty\n : this.nextLayer.update({ add: spill, filter, filterFrom, filterTo }));\n }\n /**\n Map this range set through a set of changes, return the new set.\n */\n map(changes) {\n if (changes.empty || this.isEmpty)\n return this;\n let chunks = [], chunkPos = [], maxPoint = -1;\n for (let i = 0; i < this.chunk.length; i++) {\n let start = this.chunkPos[i], chunk = this.chunk[i];\n let touch = changes.touchesRange(start, start + chunk.length);\n if (touch === false) {\n maxPoint = Math.max(maxPoint, chunk.maxPoint);\n chunks.push(chunk);\n chunkPos.push(changes.mapPos(start));\n }\n else if (touch === true) {\n let { mapped, pos } = chunk.map(start, changes);\n if (mapped) {\n maxPoint = Math.max(maxPoint, mapped.maxPoint);\n chunks.push(mapped);\n chunkPos.push(pos);\n }\n }\n }\n let next = this.nextLayer.map(changes);\n return chunks.length == 0 ? next : new RangeSet(chunkPos, chunks, next || RangeSet.empty, maxPoint);\n }\n /**\n Iterate over the ranges that touch the region `from` to `to`,\n calling `f` for each. There is no guarantee that the ranges will\n be reported in any specific order. When the callback returns\n `false`, iteration stops.\n */\n between(from, to, f) {\n if (this.isEmpty)\n return;\n for (let i = 0; i < this.chunk.length; i++) {\n let start = this.chunkPos[i], chunk = this.chunk[i];\n if (to >= start && from <= start + chunk.length &&\n chunk.between(start, from - start, to - start, f) === false)\n return;\n }\n this.nextLayer.between(from, to, f);\n }\n /**\n Iterate over the ranges in this set, in order, including all\n ranges that end at or after `from`.\n */\n iter(from = 0) {\n return HeapCursor.from([this]).goto(from);\n }\n /**\n @internal\n */\n get isEmpty() { return this.nextLayer == this; }\n /**\n Iterate over the ranges in a collection of sets, in order,\n starting from `from`.\n */\n static iter(sets, from = 0) {\n return HeapCursor.from(sets).goto(from);\n }\n /**\n Iterate over two groups of sets, calling methods on `comparator`\n to notify it of possible differences.\n */\n static compare(oldSets, newSets, \n /**\n This indicates how the underlying data changed between these\n ranges, and is needed to synchronize the iteration.\n */\n textDiff, comparator, \n /**\n Can be used to ignore all non-point ranges, and points below\n the given size. When -1, all ranges are compared.\n */\n minPointSize = -1) {\n let a = oldSets.filter(set => set.maxPoint > 0 || !set.isEmpty && set.maxPoint >= minPointSize);\n let b = newSets.filter(set => set.maxPoint > 0 || !set.isEmpty && set.maxPoint >= minPointSize);\n let sharedChunks = findSharedChunks(a, b, textDiff);\n let sideA = new SpanCursor(a, sharedChunks, minPointSize);\n let sideB = new SpanCursor(b, sharedChunks, minPointSize);\n textDiff.iterGaps((fromA, fromB, length) => compare(sideA, fromA, sideB, fromB, length, comparator));\n if (textDiff.empty && textDiff.length == 0)\n compare(sideA, 0, sideB, 0, 0, comparator);\n }\n /**\n Compare the contents of two groups of range sets, returning true\n if they are equivalent in the given range.\n */\n static eq(oldSets, newSets, from = 0, to) {\n if (to == null)\n to = 1000000000 /* C.Far */ - 1;\n let a = oldSets.filter(set => !set.isEmpty && newSets.indexOf(set) < 0);\n let b = newSets.filter(set => !set.isEmpty && oldSets.indexOf(set) < 0);\n if (a.length != b.length)\n return false;\n if (!a.length)\n return true;\n let sharedChunks = findSharedChunks(a, b);\n let sideA = new SpanCursor(a, sharedChunks, 0).goto(from), sideB = new SpanCursor(b, sharedChunks, 0).goto(from);\n for (;;) {\n if (sideA.to != sideB.to ||\n !sameValues(sideA.active, sideB.active) ||\n sideA.point && (!sideB.point || !cmpVal(sideA.point, sideB.point)))\n return false;\n if (sideA.to > to)\n return true;\n sideA.next();\n sideB.next();\n }\n }\n /**\n Iterate over a group of range sets at the same time, notifying\n the iterator about the ranges covering every given piece of\n content. Returns the open count (see\n [`SpanIterator.span`](https://codemirror.net/6/docs/ref/#state.SpanIterator.span)) at the end\n of the iteration.\n */\n static spans(sets, from, to, iterator, \n /**\n When given and greater than -1, only points of at least this\n size are taken into account.\n */\n minPointSize = -1) {\n let cursor = new SpanCursor(sets, null, minPointSize).goto(from), pos = from;\n let openRanges = cursor.openStart;\n for (;;) {\n let curTo = Math.min(cursor.to, to);\n if (cursor.point) {\n let active = cursor.activeForPoint(cursor.to);\n let openCount = cursor.pointFrom < from ? active.length + 1\n : cursor.point.startSide < 0 ? active.length\n : Math.min(active.length, openRanges);\n iterator.point(pos, curTo, cursor.point, active, openCount, cursor.pointRank);\n openRanges = Math.min(cursor.openEnd(curTo), active.length);\n }\n else if (curTo > pos) {\n iterator.span(pos, curTo, cursor.active, openRanges);\n openRanges = cursor.openEnd(curTo);\n }\n if (cursor.to > to)\n return openRanges + (cursor.point && cursor.to > to ? 1 : 0);\n pos = cursor.to;\n cursor.next();\n }\n }\n /**\n Create a range set for the given range or array of ranges. By\n default, this expects the ranges to be _sorted_ (by start\n position and, if two start at the same position,\n `value.startSide`). You can pass `true` as second argument to\n cause the method to sort them.\n */\n static of(ranges, sort = false) {\n let build = new RangeSetBuilder();\n for (let range of ranges instanceof Range ? [ranges] : sort ? lazySort(ranges) : ranges)\n build.add(range.from, range.to, range.value);\n return build.finish();\n }\n /**\n Join an array of range sets into a single set.\n */\n static join(sets) {\n if (!sets.length)\n return RangeSet.empty;\n let result = sets[sets.length - 1];\n for (let i = sets.length - 2; i >= 0; i--) {\n for (let layer = sets[i]; layer != RangeSet.empty; layer = layer.nextLayer)\n result = new RangeSet(layer.chunkPos, layer.chunk, result, Math.max(layer.maxPoint, result.maxPoint));\n }\n return result;\n }\n}\n/**\nThe empty set of ranges.\n*/\nRangeSet.empty = /*@__PURE__*/new RangeSet([], [], null, -1);\nfunction lazySort(ranges) {\n if (ranges.length > 1)\n for (let prev = ranges[0], i = 1; i < ranges.length; i++) {\n let cur = ranges[i];\n if (cmpRange(prev, cur) > 0)\n return ranges.slice().sort(cmpRange);\n prev = cur;\n }\n return ranges;\n}\nRangeSet.empty.nextLayer = RangeSet.empty;\n/**\nA range set builder is a data structure that helps build up a\n[range set](https://codemirror.net/6/docs/ref/#state.RangeSet) directly, without first allocating\nan array of [`Range`](https://codemirror.net/6/docs/ref/#state.Range) objects.\n*/\nclass RangeSetBuilder {\n finishChunk(newArrays) {\n this.chunks.push(new Chunk(this.from, this.to, this.value, this.maxPoint));\n this.chunkPos.push(this.chunkStart);\n this.chunkStart = -1;\n this.setMaxPoint = Math.max(this.setMaxPoint, this.maxPoint);\n this.maxPoint = -1;\n if (newArrays) {\n this.from = [];\n this.to = [];\n this.value = [];\n }\n }\n /**\n Create an empty builder.\n */\n constructor() {\n this.chunks = [];\n this.chunkPos = [];\n this.chunkStart = -1;\n this.last = null;\n this.lastFrom = -1000000000 /* C.Far */;\n this.lastTo = -1000000000 /* C.Far */;\n this.from = [];\n this.to = [];\n this.value = [];\n this.maxPoint = -1;\n this.setMaxPoint = -1;\n this.nextLayer = null;\n }\n /**\n Add a range. Ranges should be added in sorted (by `from` and\n `value.startSide`) order.\n */\n add(from, to, value) {\n if (!this.addInner(from, to, value))\n (this.nextLayer || (this.nextLayer = new RangeSetBuilder)).add(from, to, value);\n }\n /**\n @internal\n */\n addInner(from, to, value) {\n let diff = from - this.lastTo || value.startSide - this.last.endSide;\n if (diff <= 0 && (from - this.lastFrom || value.startSide - this.last.startSide) < 0)\n throw new Error(\"Ranges must be added sorted by `from` position and `startSide`\");\n if (diff < 0)\n return false;\n if (this.from.length == 250 /* C.ChunkSize */)\n this.finishChunk(true);\n if (this.chunkStart < 0)\n this.chunkStart = from;\n this.from.push(from - this.chunkStart);\n this.to.push(to - this.chunkStart);\n this.last = value;\n this.lastFrom = from;\n this.lastTo = to;\n this.value.push(value);\n if (value.point)\n this.maxPoint = Math.max(this.maxPoint, to - from);\n return true;\n }\n /**\n @internal\n */\n addChunk(from, chunk) {\n if ((from - this.lastTo || chunk.value[0].startSide - this.last.endSide) < 0)\n return false;\n if (this.from.length)\n this.finishChunk(true);\n this.setMaxPoint = Math.max(this.setMaxPoint, chunk.maxPoint);\n this.chunks.push(chunk);\n this.chunkPos.push(from);\n let last = chunk.value.length - 1;\n this.last = chunk.value[last];\n this.lastFrom = chunk.from[last] + from;\n this.lastTo = chunk.to[last] + from;\n return true;\n }\n /**\n Finish the range set. Returns the new set. The builder can't be\n used anymore after this has been called.\n */\n finish() { return this.finishInner(RangeSet.empty); }\n /**\n @internal\n */\n finishInner(next) {\n if (this.from.length)\n this.finishChunk(false);\n if (this.chunks.length == 0)\n return next;\n let result = RangeSet.create(this.chunkPos, this.chunks, this.nextLayer ? this.nextLayer.finishInner(next) : next, this.setMaxPoint);\n this.from = null; // Make sure further `add` calls produce errors\n return result;\n }\n}\nfunction findSharedChunks(a, b, textDiff) {\n let inA = new Map();\n for (let set of a)\n for (let i = 0; i < set.chunk.length; i++)\n if (set.chunk[i].maxPoint <= 0)\n inA.set(set.chunk[i], set.chunkPos[i]);\n let shared = new Set();\n for (let set of b)\n for (let i = 0; i < set.chunk.length; i++) {\n let known = inA.get(set.chunk[i]);\n if (known != null && (textDiff ? textDiff.mapPos(known) : known) == set.chunkPos[i] &&\n !(textDiff === null || textDiff === void 0 ? void 0 : textDiff.touchesRange(known, known + set.chunk[i].length)))\n shared.add(set.chunk[i]);\n }\n return shared;\n}\nclass LayerCursor {\n constructor(layer, skip, minPoint, rank = 0) {\n this.layer = layer;\n this.skip = skip;\n this.minPoint = minPoint;\n this.rank = rank;\n }\n get startSide() { return this.value ? this.value.startSide : 0; }\n get endSide() { return this.value ? this.value.endSide : 0; }\n goto(pos, side = -1000000000 /* C.Far */) {\n this.chunkIndex = this.rangeIndex = 0;\n this.gotoInner(pos, side, false);\n return this;\n }\n gotoInner(pos, side, forward) {\n while (this.chunkIndex < this.layer.chunk.length) {\n let next = this.layer.chunk[this.chunkIndex];\n if (!(this.skip && this.skip.has(next) ||\n this.layer.chunkEnd(this.chunkIndex) < pos ||\n next.maxPoint < this.minPoint))\n break;\n this.chunkIndex++;\n forward = false;\n }\n if (this.chunkIndex < this.layer.chunk.length) {\n let rangeIndex = this.layer.chunk[this.chunkIndex].findIndex(pos - this.layer.chunkPos[this.chunkIndex], side, true);\n if (!forward || this.rangeIndex < rangeIndex)\n this.setRangeIndex(rangeIndex);\n }\n this.next();\n }\n forward(pos, side) {\n if ((this.to - pos || this.endSide - side) < 0)\n this.gotoInner(pos, side, true);\n }\n next() {\n for (;;) {\n if (this.chunkIndex == this.layer.chunk.length) {\n this.from = this.to = 1000000000 /* C.Far */;\n this.value = null;\n break;\n }\n else {\n let chunkPos = this.layer.chunkPos[this.chunkIndex], chunk = this.layer.chunk[this.chunkIndex];\n let from = chunkPos + chunk.from[this.rangeIndex];\n this.from = from;\n this.to = chunkPos + chunk.to[this.rangeIndex];\n this.value = chunk.value[this.rangeIndex];\n this.setRangeIndex(this.rangeIndex + 1);\n if (this.minPoint < 0 || this.value.point && this.to - this.from >= this.minPoint)\n break;\n }\n }\n }\n setRangeIndex(index) {\n if (index == this.layer.chunk[this.chunkIndex].value.length) {\n this.chunkIndex++;\n if (this.skip) {\n while (this.chunkIndex < this.layer.chunk.length && this.skip.has(this.layer.chunk[this.chunkIndex]))\n this.chunkIndex++;\n }\n this.rangeIndex = 0;\n }\n else {\n this.rangeIndex = index;\n }\n }\n nextChunk() {\n this.chunkIndex++;\n this.rangeIndex = 0;\n this.next();\n }\n compare(other) {\n return this.from - other.from || this.startSide - other.startSide || this.rank - other.rank ||\n this.to - other.to || this.endSide - other.endSide;\n }\n}\nclass HeapCursor {\n constructor(heap) {\n this.heap = heap;\n }\n static from(sets, skip = null, minPoint = -1) {\n let heap = [];\n for (let i = 0; i < sets.length; i++) {\n for (let cur = sets[i]; !cur.isEmpty; cur = cur.nextLayer) {\n if (cur.maxPoint >= minPoint)\n heap.push(new LayerCursor(cur, skip, minPoint, i));\n }\n }\n return heap.length == 1 ? heap[0] : new HeapCursor(heap);\n }\n get startSide() { return this.value ? this.value.startSide : 0; }\n goto(pos, side = -1000000000 /* C.Far */) {\n for (let cur of this.heap)\n cur.goto(pos, side);\n for (let i = this.heap.length >> 1; i >= 0; i--)\n heapBubble(this.heap, i);\n this.next();\n return this;\n }\n forward(pos, side) {\n for (let cur of this.heap)\n cur.forward(pos, side);\n for (let i = this.heap.length >> 1; i >= 0; i--)\n heapBubble(this.heap, i);\n if ((this.to - pos || this.value.endSide - side) < 0)\n this.next();\n }\n next() {\n if (this.heap.length == 0) {\n this.from = this.to = 1000000000 /* C.Far */;\n this.value = null;\n this.rank = -1;\n }\n else {\n let top = this.heap[0];\n this.from = top.from;\n this.to = top.to;\n this.value = top.value;\n this.rank = top.rank;\n if (top.value)\n top.next();\n heapBubble(this.heap, 0);\n }\n }\n}\nfunction heapBubble(heap, index) {\n for (let cur = heap[index];;) {\n let childIndex = (index << 1) + 1;\n if (childIndex >= heap.length)\n break;\n let child = heap[childIndex];\n if (childIndex + 1 < heap.length && child.compare(heap[childIndex + 1]) >= 0) {\n child = heap[childIndex + 1];\n childIndex++;\n }\n if (cur.compare(child) < 0)\n break;\n heap[childIndex] = cur;\n heap[index] = child;\n index = childIndex;\n }\n}\nclass SpanCursor {\n constructor(sets, skip, minPoint) {\n this.minPoint = minPoint;\n this.active = [];\n this.activeTo = [];\n this.activeRank = [];\n this.minActive = -1;\n // A currently active point range, if any\n this.point = null;\n this.pointFrom = 0;\n this.pointRank = 0;\n this.to = -1000000000 /* C.Far */;\n this.endSide = 0;\n // The amount of open active ranges at the start of the iterator.\n // Not including points.\n this.openStart = -1;\n this.cursor = HeapCursor.from(sets, skip, minPoint);\n }\n goto(pos, side = -1000000000 /* C.Far */) {\n this.cursor.goto(pos, side);\n this.active.length = this.activeTo.length = this.activeRank.length = 0;\n this.minActive = -1;\n this.to = pos;\n this.endSide = side;\n this.openStart = -1;\n this.next();\n return this;\n }\n forward(pos, side) {\n while (this.minActive > -1 && (this.activeTo[this.minActive] - pos || this.active[this.minActive].endSide - side) < 0)\n this.removeActive(this.minActive);\n this.cursor.forward(pos, side);\n }\n removeActive(index) {\n remove(this.active, index);\n remove(this.activeTo, index);\n remove(this.activeRank, index);\n this.minActive = findMinIndex(this.active, this.activeTo);\n }\n addActive(trackOpen) {\n let i = 0, { value, to, rank } = this.cursor;\n // Organize active marks by rank first, then by size\n while (i < this.activeRank.length && (rank - this.activeRank[i] || to - this.activeTo[i]) > 0)\n i++;\n insert(this.active, i, value);\n insert(this.activeTo, i, to);\n insert(this.activeRank, i, rank);\n if (trackOpen)\n insert(trackOpen, i, this.cursor.from);\n this.minActive = findMinIndex(this.active, this.activeTo);\n }\n // After calling this, if `this.point` != null, the next range is a\n // point. Otherwise, it's a regular range, covered by `this.active`.\n next() {\n let from = this.to, wasPoint = this.point;\n this.point = null;\n let trackOpen = this.openStart < 0 ? [] : null;\n for (;;) {\n let a = this.minActive;\n if (a > -1 && (this.activeTo[a] - this.cursor.from || this.active[a].endSide - this.cursor.startSide) < 0) {\n if (this.activeTo[a] > from) {\n this.to = this.activeTo[a];\n this.endSide = this.active[a].endSide;\n break;\n }\n this.removeActive(a);\n if (trackOpen)\n remove(trackOpen, a);\n }\n else if (!this.cursor.value) {\n this.to = this.endSide = 1000000000 /* C.Far */;\n break;\n }\n else if (this.cursor.from > from) {\n this.to = this.cursor.from;\n this.endSide = this.cursor.startSide;\n break;\n }\n else {\n let nextVal = this.cursor.value;\n if (!nextVal.point) { // Opening a range\n this.addActive(trackOpen);\n this.cursor.next();\n }\n else if (wasPoint && this.cursor.to == this.to && this.cursor.from < this.cursor.to) {\n // Ignore any non-empty points that end precisely at the end of the prev point\n this.cursor.next();\n }\n else { // New point\n this.point = nextVal;\n this.pointFrom = this.cursor.from;\n this.pointRank = this.cursor.rank;\n this.to = this.cursor.to;\n this.endSide = nextVal.endSide;\n this.cursor.next();\n this.forward(this.to, this.endSide);\n break;\n }\n }\n }\n if (trackOpen) {\n this.openStart = 0;\n for (let i = trackOpen.length - 1; i >= 0 && trackOpen[i] < from; i--)\n this.openStart++;\n }\n }\n activeForPoint(to) {\n if (!this.active.length)\n return this.active;\n let active = [];\n for (let i = this.active.length - 1; i >= 0; i--) {\n if (this.activeRank[i] < this.pointRank)\n break;\n if (this.activeTo[i] > to || this.activeTo[i] == to && this.active[i].endSide >= this.point.endSide)\n active.push(this.active[i]);\n }\n return active.reverse();\n }\n openEnd(to) {\n let open = 0;\n for (let i = this.activeTo.length - 1; i >= 0 && this.activeTo[i] > to; i--)\n open++;\n return open;\n }\n}\nfunction compare(a, startA, b, startB, length, comparator) {\n a.goto(startA);\n b.goto(startB);\n let endB = startB + length;\n let pos = startB, dPos = startB - startA;\n let bounds = !!comparator.boundChange;\n for (let boundChange = false;;) {\n let dEnd = (a.to + dPos) - b.to, diff = dEnd || a.endSide - b.endSide;\n let end = diff < 0 ? a.to + dPos : b.to, clipEnd = Math.min(end, endB);\n let point = a.point || b.point;\n if (point) {\n if (!(a.point && b.point && cmpVal(a.point, b.point) &&\n sameValues(a.activeForPoint(a.to), b.activeForPoint(b.to))))\n comparator.comparePoint(pos, clipEnd, a.point, b.point);\n boundChange = false;\n }\n else {\n if (boundChange)\n comparator.boundChange(pos);\n if (clipEnd > pos && !sameValues(a.active, b.active))\n comparator.compareRange(pos, clipEnd, a.active, b.active);\n if (bounds && clipEnd < endB && (dEnd || a.openEnd(end) != b.openEnd(end)))\n boundChange = true;\n }\n if (end > endB)\n break;\n pos = end;\n if (diff <= 0)\n a.next();\n if (diff >= 0)\n b.next();\n }\n}\nfunction sameValues(a, b) {\n if (a.length != b.length)\n return false;\n for (let i = 0; i < a.length; i++)\n if (a[i] != b[i] && !cmpVal(a[i], b[i]))\n return false;\n return true;\n}\nfunction remove(array, index) {\n for (let i = index, e = array.length - 1; i < e; i++)\n array[i] = array[i + 1];\n array.pop();\n}\nfunction insert(array, index, value) {\n for (let i = array.length - 1; i >= index; i--)\n array[i + 1] = array[i];\n array[index] = value;\n}\nfunction findMinIndex(value, array) {\n let found = -1, foundPos = 1000000000 /* C.Far */;\n for (let i = 0; i < array.length; i++)\n if ((array[i] - foundPos || value[i].endSide - value[found].endSide) < 0) {\n found = i;\n foundPos = array[i];\n }\n return found;\n}\n\n/**\nCount the column position at the given offset into the string,\ntaking extending characters and tab size into account.\n*/\nfunction countColumn(string, tabSize, to = string.length) {\n let n = 0;\n for (let i = 0; i < to && i < string.length;) {\n if (string.charCodeAt(i) == 9) {\n n += tabSize - (n % tabSize);\n i++;\n }\n else {\n n++;\n i = findClusterBreak(string, i);\n }\n }\n return n;\n}\n/**\nFind the offset that corresponds to the given column position in a\nstring, taking extending characters and tab size into account. By\ndefault, the string length is returned when it is too short to\nreach the column. Pass `strict` true to make it return -1 in that\nsituation.\n*/\nfunction findColumn(string, col, tabSize, strict) {\n for (let i = 0, n = 0;;) {\n if (n >= col)\n return i;\n if (i == string.length)\n break;\n n += string.charCodeAt(i) == 9 ? tabSize - (n % tabSize) : 1;\n i = findClusterBreak(string, i);\n }\n return strict === true ? -1 : string.length;\n}\n\nexport { Annotation, AnnotationType, ChangeDesc, ChangeSet, CharCategory, Compartment, EditorSelection, EditorState, Facet, Line, MapMode, Prec, Range, RangeSet, RangeSetBuilder, RangeValue, SelectionRange, StateEffect, StateEffectType, StateField, Text, Transaction, codePointAt, codePointSize, combineConfig, countColumn, findClusterBreak, findColumn, fromCodePoint };\n", "const C = \"\\u037c\"\nconst COUNT = typeof Symbol == \"undefined\" ? \"__\" + C : Symbol.for(C)\nconst SET = typeof Symbol == \"undefined\" ? \"__styleSet\" + Math.floor(Math.random() * 1e8) : Symbol(\"styleSet\")\nconst top = typeof globalThis != \"undefined\" ? globalThis : typeof window != \"undefined\" ? window : {}\n\n// :: - Style modules encapsulate a set of CSS rules defined from\n// JavaScript. Their definitions are only available in a given DOM\n// root after it has been _mounted_ there with `StyleModule.mount`.\n//\n// Style modules should be created once and stored somewhere, as\n// opposed to re-creating them every time you need them. The amount of\n// CSS rules generated for a given DOM root is bounded by the amount\n// of style modules that were used. So to avoid leaking rules, don't\n// create these dynamically, but treat them as one-time allocations.\nexport class StyleModule {\n // :: (Object<Style>, ?{finish: ?(string) \u2192 string})\n // Create a style module from the given spec.\n //\n // When `finish` is given, it is called on regular (non-`@`)\n // selectors (after `&` expansion) to compute the final selector.\n constructor(spec, options) {\n this.rules = []\n let {finish} = options || {}\n\n function splitSelector(selector) {\n return /^@/.test(selector) ? [selector] : selector.split(/,\\s*/)\n }\n\n function render(selectors, spec, target, isKeyframes) {\n let local = [], isAt = /^@(\\w+)\\b/.exec(selectors[0]), keyframes = isAt && isAt[1] == \"keyframes\"\n if (isAt && spec == null) return target.push(selectors[0] + \";\")\n for (let prop in spec) {\n let value = spec[prop]\n if (/&/.test(prop)) {\n render(prop.split(/,\\s*/).map(part => selectors.map(sel => part.replace(/&/, sel))).reduce((a, b) => a.concat(b)),\n value, target)\n } else if (value && typeof value == \"object\") {\n if (!isAt) throw new RangeError(\"The value of a property (\" + prop + \") should be a primitive value.\")\n render(splitSelector(prop), value, local, keyframes)\n } else if (value != null) {\n local.push(prop.replace(/_.*/, \"\").replace(/[A-Z]/g, l => \"-\" + l.toLowerCase()) + \": \" + value + \";\")\n }\n }\n if (local.length || keyframes) {\n target.push((finish && !isAt && !isKeyframes ? selectors.map(finish) : selectors).join(\", \") +\n \" {\" + local.join(\" \") + \"}\")\n }\n }\n\n for (let prop in spec) render(splitSelector(prop), spec[prop], this.rules)\n }\n\n // :: () \u2192 string\n // Returns a string containing the module's CSS rules.\n getRules() { return this.rules.join(\"\\n\") }\n\n // :: () \u2192 string\n // Generate a new unique CSS class name.\n static newName() {\n let id = top[COUNT] || 1\n top[COUNT] = id + 1\n return C + id.toString(36)\n }\n\n // :: (union<Document, ShadowRoot>, union<[StyleModule], StyleModule>, ?{nonce: ?string})\n //\n // Mount the given set of modules in the given DOM root, which ensures\n // that the CSS rules defined by the module are available in that\n // context.\n //\n // Rules are only added to the document once per root.\n //\n // Rule order will follow the order of the modules, so that rules from\n // modules later in the array take precedence of those from earlier\n // modules. If you call this function multiple times for the same root\n // in a way that changes the order of already mounted modules, the old\n // order will be changed.\n //\n // If a Content Security Policy nonce is provided, it is added to\n // the `<style>` tag generated by the library.\n static mount(root, modules, options) {\n let set = root[SET], nonce = options && options.nonce\n if (!set) set = new StyleSet(root, nonce)\n else if (nonce) set.setNonce(nonce)\n set.mount(Array.isArray(modules) ? modules : [modules], root)\n }\n}\n\nlet adoptedSet = new Map //<Document, StyleSet>\n\nclass StyleSet {\n constructor(root, nonce) {\n let doc = root.ownerDocument || root, win = doc.defaultView\n if (!root.head && root.adoptedStyleSheets && win.CSSStyleSheet) {\n let adopted = adoptedSet.get(doc)\n if (adopted) return root[SET] = adopted\n this.sheet = new win.CSSStyleSheet\n adoptedSet.set(doc, this)\n } else {\n this.styleTag = doc.createElement(\"style\")\n if (nonce) this.styleTag.setAttribute(\"nonce\", nonce)\n }\n this.modules = []\n root[SET] = this\n }\n\n mount(modules, root) {\n let sheet = this.sheet\n let pos = 0 /* Current rule offset */, j = 0 /* Index into this.modules */\n for (let i = 0; i < modules.length; i++) {\n let mod = modules[i], index = this.modules.indexOf(mod)\n if (index < j && index > -1) { // Ordering conflict\n this.modules.splice(index, 1)\n j--\n index = -1\n }\n if (index == -1) {\n this.modules.splice(j++, 0, mod)\n if (sheet) for (let k = 0; k < mod.rules.length; k++)\n sheet.insertRule(mod.rules[k], pos++)\n } else {\n while (j < index) pos += this.modules[j++].rules.length\n pos += mod.rules.length\n j++\n }\n }\n\n if (sheet) {\n if (root.adoptedStyleSheets.indexOf(this.sheet) < 0)\n root.adoptedStyleSheets = [this.sheet, ...root.adoptedStyleSheets]\n } else {\n let text = \"\"\n for (let i = 0; i < this.modules.length; i++)\n text += this.modules[i].getRules() + \"\\n\"\n this.styleTag.textContent = text\n let target = root.head || root\n if (this.styleTag.parentNode != target)\n target.insertBefore(this.styleTag, target.firstChild)\n }\n }\n\n setNonce(nonce) {\n if (this.styleTag && this.styleTag.getAttribute(\"nonce\") != nonce)\n this.styleTag.setAttribute(\"nonce\", nonce)\n }\n}\n\n// Style::Object<union<Style,string>>\n//\n// A style is an object that, in the simple case, maps CSS property\n// names to strings holding their values, as in `{color: \"red\",\n// fontWeight: \"bold\"}`. The property names can be given in\n// camel-case\u2014the library will insert a dash before capital letters\n// when converting them to CSS.\n//\n// If you include an underscore in a property name, it and everything\n// after it will be removed from the output, which can be useful when\n// providing a property multiple times, for browser compatibility\n// reasons.\n//\n// A property in a style object can also be a sub-selector, which\n// extends the current context to add a pseudo-selector or a child\n// selector. Such a property should contain a `&` character, which\n// will be replaced by the current selector. For example `{\"&:before\":\n// {content: '\"hi\"'}}`. Sub-selectors and regular properties can\n// freely be mixed in a given object. Any property containing a `&` is\n// assumed to be a sub-selector.\n//\n// Finally, a property can specify an @-block to be wrapped around the\n// styles defined inside the object that's the property's value. For\n// example to create a media query you can do `{\"@media screen and\n// (min-width: 400px)\": {...}}`.\n", "export var base = {\n 8: \"Backspace\",\n 9: \"Tab\",\n 10: \"Enter\",\n 12: \"NumLock\",\n 13: \"Enter\",\n 16: \"Shift\",\n 17: \"Control\",\n 18: \"Alt\",\n 20: \"CapsLock\",\n 27: \"Escape\",\n 32: \" \",\n 33: \"PageUp\",\n 34: \"PageDown\",\n 35: \"End\",\n 36: \"Home\",\n 37: \"ArrowLeft\",\n 38: \"ArrowUp\",\n 39: \"ArrowRight\",\n 40: \"ArrowDown\",\n 44: \"PrintScreen\",\n 45: \"Insert\",\n 46: \"Delete\",\n 59: \";\",\n 61: \"=\",\n 91: \"Meta\",\n 92: \"Meta\",\n 106: \"*\",\n 107: \"+\",\n 108: \",\",\n 109: \"-\",\n 110: \".\",\n 111: \"/\",\n 144: \"NumLock\",\n 145: \"ScrollLock\",\n 160: \"Shift\",\n 161: \"Shift\",\n 162: \"Control\",\n 163: \"Control\",\n 164: \"Alt\",\n 165: \"Alt\",\n 173: \"-\",\n 186: \";\",\n 187: \"=\",\n 188: \",\",\n 189: \"-\",\n 190: \".\",\n 191: \"/\",\n 192: \"`\",\n 219: \"[\",\n 220: \"\\\\\",\n 221: \"]\",\n 222: \"'\"\n}\n\nexport var shift = {\n 48: \")\",\n 49: \"!\",\n 50: \"@\",\n 51: \"#\",\n 52: \"$\",\n 53: \"%\",\n 54: \"^\",\n 55: \"&\",\n 56: \"*\",\n 57: \"(\",\n 59: \":\",\n 61: \"+\",\n 173: \"_\",\n 186: \":\",\n 187: \"+\",\n 188: \"<\",\n 189: \"_\",\n 190: \">\",\n 191: \"?\",\n 192: \"~\",\n 219: \"{\",\n 220: \"|\",\n 221: \"}\",\n 222: \"\\\"\"\n}\n\nvar mac = typeof navigator != \"undefined\" && /Mac/.test(navigator.platform)\nvar ie = typeof navigator != \"undefined\" && /MSIE \\d|Trident\\/(?:[7-9]|\\d{2,})\\..*rv:(\\d+)/.exec(navigator.userAgent)\n\n// Fill in the digit keys\nfor (var i = 0; i < 10; i++) base[48 + i] = base[96 + i] = String(i)\n\n// The function keys\nfor (var i = 1; i <= 24; i++) base[i + 111] = \"F\" + i\n\n// And the alphabetic keys\nfor (var i = 65; i <= 90; i++) {\n base[i] = String.fromCharCode(i + 32)\n shift[i] = String.fromCharCode(i)\n}\n\n// For each code that doesn't have a shift-equivalent, copy the base name\nfor (var code in base) if (!shift.hasOwnProperty(code)) shift[code] = base[code]\n\nexport function keyName(event) {\n // On macOS, keys held with Shift and Cmd don't reflect the effect of Shift in `.key`.\n // On IE, shift effect is never included in `.key`.\n var ignoreKey = mac && event.metaKey && event.shiftKey && !event.ctrlKey && !event.altKey ||\n ie && event.shiftKey && event.key && event.key.length == 1 ||\n event.key == \"Unidentified\"\n var name = (!ignoreKey && event.key) ||\n (event.shiftKey ? shift : base)[event.keyCode] ||\n event.key || \"Unidentified\"\n // Edge sometimes produces wrong names (Issue #3)\n if (name == \"Esc\") name = \"Escape\"\n if (name == \"Del\") name = \"Delete\"\n // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/8860571/\n if (name == \"Left\") name = \"ArrowLeft\"\n if (name == \"Up\") name = \"ArrowUp\"\n if (name == \"Right\") name = \"ArrowRight\"\n if (name == \"Down\") name = \"ArrowDown\"\n return name\n}\n", "export default function crelt() {\n var elt = arguments[0]\n if (typeof elt == \"string\") elt = document.createElement(elt)\n var i = 1, next = arguments[1]\n if (next && typeof next == \"object\" && next.nodeType == null && !Array.isArray(next)) {\n for (var name in next) if (Object.prototype.hasOwnProperty.call(next, name)) {\n var value = next[name]\n if (typeof value == \"string\") elt.setAttribute(name, value)\n else if (value != null) elt[name] = value\n }\n i++\n }\n for (; i < arguments.length; i++) add(elt, arguments[i])\n return elt\n}\n\nfunction add(elt, child) {\n if (typeof child == \"string\") {\n elt.appendChild(document.createTextNode(child))\n } else if (child == null) {\n } else if (child.nodeType != null) {\n elt.appendChild(child)\n } else if (Array.isArray(child)) {\n for (var i = 0; i < child.length; i++) add(elt, child[i])\n } else {\n throw new RangeError(\"Unsupported child node: \" + child)\n }\n}\n", "import { RangeSet, MapMode, RangeValue, findClusterBreak, EditorSelection, Facet, StateEffect, ChangeSet, Text, findColumn, CharCategory, EditorState, Annotation, Transaction, Prec, codePointAt, codePointSize, combineConfig, StateField, RangeSetBuilder, countColumn } from '@codemirror/state';\nimport { StyleModule } from 'style-mod';\nimport { keyName, base, shift } from 'w3c-keyname';\nimport elt from 'crelt';\n\nlet nav = typeof navigator != \"undefined\" ? navigator : { userAgent: \"\", vendor: \"\", platform: \"\" };\nlet doc = typeof document != \"undefined\" ? document : { documentElement: { style: {} } };\nconst ie_edge = /*@__PURE__*//Edge\\/(\\d+)/.exec(nav.userAgent);\nconst ie_upto10 = /*@__PURE__*//MSIE \\d/.test(nav.userAgent);\nconst ie_11up = /*@__PURE__*//Trident\\/(?:[7-9]|\\d{2,})\\..*rv:(\\d+)/.exec(nav.userAgent);\nconst ie = !!(ie_upto10 || ie_11up || ie_edge);\nconst gecko = !ie && /*@__PURE__*//gecko\\/(\\d+)/i.test(nav.userAgent);\nconst chrome = !ie && /*@__PURE__*//Chrome\\/(\\d+)/.exec(nav.userAgent);\nconst webkit = \"webkitFontSmoothing\" in doc.documentElement.style;\nconst safari = !ie && /*@__PURE__*//Apple Computer/.test(nav.vendor);\nconst ios = safari && (/*@__PURE__*//Mobile\\/\\w+/.test(nav.userAgent) || nav.maxTouchPoints > 2);\nvar browser = {\n mac: ios || /*@__PURE__*//Mac/.test(nav.platform),\n windows: /*@__PURE__*//Win/.test(nav.platform),\n linux: /*@__PURE__*//Linux|X11/.test(nav.platform),\n ie,\n ie_version: ie_upto10 ? doc.documentMode || 6 : ie_11up ? +ie_11up[1] : ie_edge ? +ie_edge[1] : 0,\n gecko,\n gecko_version: gecko ? +(/*@__PURE__*//Firefox\\/(\\d+)/.exec(nav.userAgent) || [0, 0])[1] : 0,\n chrome: !!chrome,\n chrome_version: chrome ? +chrome[1] : 0,\n ios,\n android: /*@__PURE__*//Android\\b/.test(nav.userAgent),\n webkit,\n webkit_version: webkit ? +(/*@__PURE__*//\\bAppleWebKit\\/(\\d+)/.exec(nav.userAgent) || [0, 0])[1] : 0,\n safari,\n safari_version: safari ? +(/*@__PURE__*//\\bVersion\\/(\\d+(\\.\\d+)?)/.exec(nav.userAgent) || [0, 0])[1] : 0,\n tabSize: doc.documentElement.style.tabSize != null ? \"tab-size\" : \"-moz-tab-size\"\n};\n\nfunction combineAttrs(source, target) {\n for (let name in source) {\n if (name == \"class\" && target.class)\n target.class += \" \" + source.class;\n else if (name == \"style\" && target.style)\n target.style += \";\" + source.style;\n else\n target[name] = source[name];\n }\n return target;\n}\nconst noAttrs = /*@__PURE__*/Object.create(null);\nfunction attrsEq(a, b, ignore) {\n if (a == b)\n return true;\n if (!a)\n a = noAttrs;\n if (!b)\n b = noAttrs;\n let keysA = Object.keys(a), keysB = Object.keys(b);\n if (keysA.length - (ignore && keysA.indexOf(ignore) > -1 ? 1 : 0) !=\n keysB.length - (ignore && keysB.indexOf(ignore) > -1 ? 1 : 0))\n return false;\n for (let key of keysA) {\n if (key != ignore && (keysB.indexOf(key) == -1 || a[key] !== b[key]))\n return false;\n }\n return true;\n}\nfunction setAttrs(dom, attrs) {\n for (let i = dom.attributes.length - 1; i >= 0; i--) {\n let name = dom.attributes[i].name;\n if (attrs[name] == null)\n dom.removeAttribute(name);\n }\n for (let name in attrs) {\n let value = attrs[name];\n if (name == \"style\")\n dom.style.cssText = value;\n else if (dom.getAttribute(name) != value)\n dom.setAttribute(name, value);\n }\n}\nfunction updateAttrs(dom, prev, attrs) {\n let changed = false;\n if (prev)\n for (let name in prev)\n if (!(attrs && name in attrs)) {\n changed = true;\n if (name == \"style\")\n dom.style.cssText = \"\";\n else\n dom.removeAttribute(name);\n }\n if (attrs)\n for (let name in attrs)\n if (!(prev && prev[name] == attrs[name])) {\n changed = true;\n if (name == \"style\")\n dom.style.cssText = attrs[name];\n else\n dom.setAttribute(name, attrs[name]);\n }\n return changed;\n}\nfunction getAttrs(dom) {\n let attrs = Object.create(null);\n for (let i = 0; i < dom.attributes.length; i++) {\n let attr = dom.attributes[i];\n attrs[attr.name] = attr.value;\n }\n return attrs;\n}\n\n/**\nWidgets added to the content are described by subclasses of this\nclass. Using a description object like that makes it possible to\ndelay creating of the DOM structure for a widget until it is\nneeded, and to avoid redrawing widgets even if the decorations\nthat define them are recreated.\n*/\nclass WidgetType {\n /**\n Compare this instance to another instance of the same type.\n (TypeScript can't express this, but only instances of the same\n specific class will be passed to this method.) This is used to\n avoid redrawing widgets when they are replaced by a new\n decoration of the same type. The default implementation just\n returns `false`, which will cause new instances of the widget to\n always be redrawn.\n */\n eq(widget) { return false; }\n /**\n Update a DOM element created by a widget of the same type (but\n different, non-`eq` content) to reflect this widget. May return\n true to indicate that it could update, false to indicate it\n couldn't (in which case the widget will be redrawn). The default\n implementation just returns false.\n */\n updateDOM(dom, view) { return false; }\n /**\n @internal\n */\n compare(other) {\n return this == other || this.constructor == other.constructor && this.eq(other);\n }\n /**\n The estimated height this widget will have, to be used when\n estimating the height of content that hasn't been drawn. May\n return -1 to indicate you don't know. The default implementation\n returns -1.\n */\n get estimatedHeight() { return -1; }\n /**\n For inline widgets that are displayed inline (as opposed to\n `inline-block`) and introduce line breaks (through `<br>` tags\n or textual newlines), this must indicate the amount of line\n breaks they introduce. Defaults to 0.\n */\n get lineBreaks() { return 0; }\n /**\n Can be used to configure which kinds of events inside the widget\n should be ignored by the editor. The default is to ignore all\n events.\n */\n ignoreEvent(event) { return true; }\n /**\n Override the way screen coordinates for positions at/in the\n widget are found. `pos` will be the offset into the widget, and\n `side` the side of the position that is being queried\u2014less than\n zero for before, greater than zero for after, and zero for\n directly at that position.\n */\n coordsAt(dom, pos, side) { return null; }\n /**\n @internal\n */\n get isHidden() { return false; }\n /**\n @internal\n */\n get editable() { return false; }\n /**\n This is called when the an instance of the widget is removed\n from the editor view.\n */\n destroy(dom) { }\n}\n/**\nThe different types of blocks that can occur in an editor view.\n*/\nvar BlockType = /*@__PURE__*/(function (BlockType) {\n /**\n A line of text.\n */\n BlockType[BlockType[\"Text\"] = 0] = \"Text\";\n /**\n A block widget associated with the position after it.\n */\n BlockType[BlockType[\"WidgetBefore\"] = 1] = \"WidgetBefore\";\n /**\n A block widget associated with the position before it.\n */\n BlockType[BlockType[\"WidgetAfter\"] = 2] = \"WidgetAfter\";\n /**\n A block widget [replacing](https://codemirror.net/6/docs/ref/#view.Decoration^replace) a range of content.\n */\n BlockType[BlockType[\"WidgetRange\"] = 3] = \"WidgetRange\";\nreturn BlockType})(BlockType || (BlockType = {}));\n/**\nA decoration provides information on how to draw or style a piece\nof content. You'll usually use it wrapped in a\n[`Range`](https://codemirror.net/6/docs/ref/#state.Range), which adds a start and end position.\n@nonabstract\n*/\nclass Decoration extends RangeValue {\n constructor(\n /**\n @internal\n */\n startSide, \n /**\n @internal\n */\n endSide, \n /**\n @internal\n */\n widget, \n /**\n The config object used to create this decoration. You can\n include additional properties in there to store metadata about\n your decoration.\n */\n spec) {\n super();\n this.startSide = startSide;\n this.endSide = endSide;\n this.widget = widget;\n this.spec = spec;\n }\n /**\n @internal\n */\n get heightRelevant() { return false; }\n /**\n Create a mark decoration, which influences the styling of the\n content in its range. Nested mark decorations will cause nested\n DOM elements to be created. Nesting order is determined by\n precedence of the [facet](https://codemirror.net/6/docs/ref/#view.EditorView^decorations), with\n the higher-precedence decorations creating the inner DOM nodes.\n Such elements are split on line boundaries and on the boundaries\n of lower-precedence decorations.\n */\n static mark(spec) {\n return new MarkDecoration(spec);\n }\n /**\n Create a widget decoration, which displays a DOM element at the\n given position.\n */\n static widget(spec) {\n let side = Math.max(-10000, Math.min(10000, spec.side || 0)), block = !!spec.block;\n side += (block && !spec.inlineOrder)\n ? (side > 0 ? 300000000 /* Side.BlockAfter */ : -400000000 /* Side.BlockBefore */)\n : (side > 0 ? 100000000 /* Side.InlineAfter */ : -100000000 /* Side.InlineBefore */);\n return new PointDecoration(spec, side, side, block, spec.widget || null, false);\n }\n /**\n Create a replace decoration which replaces the given range with\n a widget, or simply hides it.\n */\n static replace(spec) {\n let block = !!spec.block, startSide, endSide;\n if (spec.isBlockGap) {\n startSide = -500000000 /* Side.GapStart */;\n endSide = 400000000 /* Side.GapEnd */;\n }\n else {\n let { start, end } = getInclusive(spec, block);\n startSide = (start ? (block ? -300000000 /* Side.BlockIncStart */ : -1 /* Side.InlineIncStart */) : 500000000 /* Side.NonIncStart */) - 1;\n endSide = (end ? (block ? 200000000 /* Side.BlockIncEnd */ : 1 /* Side.InlineIncEnd */) : -600000000 /* Side.NonIncEnd */) + 1;\n }\n return new PointDecoration(spec, startSide, endSide, block, spec.widget || null, true);\n }\n /**\n Create a line decoration, which can add DOM attributes to the\n line starting at the given position.\n */\n static line(spec) {\n return new LineDecoration(spec);\n }\n /**\n Build a [`DecorationSet`](https://codemirror.net/6/docs/ref/#view.DecorationSet) from the given\n decorated range or ranges. If the ranges aren't already sorted,\n pass `true` for `sort` to make the library sort them for you.\n */\n static set(of, sort = false) {\n return RangeSet.of(of, sort);\n }\n /**\n @internal\n */\n hasHeight() { return this.widget ? this.widget.estimatedHeight > -1 : false; }\n}\n/**\nThe empty set of decorations.\n*/\nDecoration.none = RangeSet.empty;\nclass MarkDecoration extends Decoration {\n constructor(spec) {\n let { start, end } = getInclusive(spec);\n super(start ? -1 /* Side.InlineIncStart */ : 500000000 /* Side.NonIncStart */, end ? 1 /* Side.InlineIncEnd */ : -600000000 /* Side.NonIncEnd */, null, spec);\n this.tagName = spec.tagName || \"span\";\n this.attrs = spec.class && spec.attributes ? combineAttrs(spec.attributes, { class: spec.class })\n : spec.class ? { class: spec.class } : spec.attributes || noAttrs;\n }\n eq(other) {\n return this == other || other instanceof MarkDecoration && this.tagName == other.tagName && attrsEq(this.attrs, other.attrs);\n }\n range(from, to = from) {\n if (from >= to)\n throw new RangeError(\"Mark decorations may not be empty\");\n return super.range(from, to);\n }\n}\nMarkDecoration.prototype.point = false;\nclass LineDecoration extends Decoration {\n constructor(spec) {\n super(-200000000 /* Side.Line */, -200000000 /* Side.Line */, null, spec);\n }\n eq(other) {\n return other instanceof LineDecoration &&\n this.spec.class == other.spec.class &&\n attrsEq(this.spec.attributes, other.spec.attributes);\n }\n range(from, to = from) {\n if (to != from)\n throw new RangeError(\"Line decoration ranges must be zero-length\");\n return super.range(from, to);\n }\n}\nLineDecoration.prototype.mapMode = MapMode.TrackBefore;\nLineDecoration.prototype.point = true;\nclass PointDecoration extends Decoration {\n constructor(spec, startSide, endSide, block, widget, isReplace) {\n super(startSide, endSide, widget, spec);\n this.block = block;\n this.isReplace = isReplace;\n this.mapMode = !block ? MapMode.TrackDel : startSide <= 0 ? MapMode.TrackBefore : MapMode.TrackAfter;\n }\n // Only relevant when this.block == true\n get type() {\n return this.startSide != this.endSide ? BlockType.WidgetRange\n : this.startSide <= 0 ? BlockType.WidgetBefore : BlockType.WidgetAfter;\n }\n get heightRelevant() {\n return this.block || !!this.widget && (this.widget.estimatedHeight >= 5 || this.widget.lineBreaks > 0);\n }\n eq(other) {\n return other instanceof PointDecoration &&\n widgetsEq(this.widget, other.widget) &&\n this.block == other.block &&\n this.startSide == other.startSide && this.endSide == other.endSide;\n }\n range(from, to = from) {\n if (this.isReplace && (from > to || (from == to && this.startSide > 0 && this.endSide <= 0)))\n throw new RangeError(\"Invalid range for replacement decoration\");\n if (!this.isReplace && to != from)\n throw new RangeError(\"Widget decorations can only have zero-length ranges\");\n return super.range(from, to);\n }\n}\nPointDecoration.prototype.point = true;\nfunction getInclusive(spec, block = false) {\n let { inclusiveStart: start, inclusiveEnd: end } = spec;\n if (start == null)\n start = spec.inclusive;\n if (end == null)\n end = spec.inclusive;\n return { start: start !== null && start !== void 0 ? start : block, end: end !== null && end !== void 0 ? end : block };\n}\nfunction widgetsEq(a, b) {\n return a == b || !!(a && b && a.compare(b));\n}\nfunction addRange(from, to, ranges, margin = 0) {\n let last = ranges.length - 1;\n if (last >= 0 && ranges[last] + margin >= from)\n ranges[last] = Math.max(ranges[last], to);\n else\n ranges.push(from, to);\n}\n/**\nA block wrapper defines a DOM node that wraps lines or other block\nwrappers at the top of the document. It affects any line or block\nwidget that starts inside its range, including blocks starting\ndirectly at `from` but not including `to`.\n*/\nclass BlockWrapper extends RangeValue {\n constructor(tagName, attributes) {\n super();\n this.tagName = tagName;\n this.attributes = attributes;\n }\n eq(other) {\n return other == this ||\n other instanceof BlockWrapper && this.tagName == other.tagName && attrsEq(this.attributes, other.attributes);\n }\n /**\n Create a block wrapper object with the given tag name and\n attributes.\n */\n static create(spec) {\n return new BlockWrapper(spec.tagName, spec.attributes || noAttrs);\n }\n /**\n Create a range set from the given block wrapper ranges.\n */\n static set(of, sort = false) {\n return RangeSet.of(of, sort);\n }\n}\nBlockWrapper.prototype.startSide = BlockWrapper.prototype.endSide = -1;\n\nfunction getSelection(root) {\n let target;\n // Browsers differ on whether shadow roots have a getSelection\n // method. If it exists, use that, otherwise, call it on the\n // document.\n if (root.nodeType == 11) { // Shadow root\n target = root.getSelection ? root : root.ownerDocument;\n }\n else {\n target = root;\n }\n return target.getSelection();\n}\nfunction contains(dom, node) {\n return node ? dom == node || dom.contains(node.nodeType != 1 ? node.parentNode : node) : false;\n}\nfunction hasSelection(dom, selection) {\n if (!selection.anchorNode)\n return false;\n try {\n // Firefox will raise 'permission denied' errors when accessing\n // properties of `sel.anchorNode` when it's in a generated CSS\n // element.\n return contains(dom, selection.anchorNode);\n }\n catch (_) {\n return false;\n }\n}\nfunction clientRectsFor(dom) {\n if (dom.nodeType == 3)\n return textRange(dom, 0, dom.nodeValue.length).getClientRects();\n else if (dom.nodeType == 1)\n return dom.getClientRects();\n else\n return [];\n}\n// Scans forward and backward through DOM positions equivalent to the\n// given one to see if the two are in the same place (i.e. after a\n// text node vs at the end of that text node)\nfunction isEquivalentPosition(node, off, targetNode, targetOff) {\n return targetNode ? (scanFor(node, off, targetNode, targetOff, -1) ||\n scanFor(node, off, targetNode, targetOff, 1)) : false;\n}\nfunction domIndex(node) {\n for (var index = 0;; index++) {\n node = node.previousSibling;\n if (!node)\n return index;\n }\n}\nfunction isBlockElement(node) {\n return node.nodeType == 1 && /^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\\d|SECTION|PRE)$/.test(node.nodeName);\n}\nfunction scanFor(node, off, targetNode, targetOff, dir) {\n for (;;) {\n if (node == targetNode && off == targetOff)\n return true;\n if (off == (dir < 0 ? 0 : maxOffset(node))) {\n if (node.nodeName == \"DIV\")\n return false;\n let parent = node.parentNode;\n if (!parent || parent.nodeType != 1)\n return false;\n off = domIndex(node) + (dir < 0 ? 0 : 1);\n node = parent;\n }\n else if (node.nodeType == 1) {\n node = node.childNodes[off + (dir < 0 ? -1 : 0)];\n if (node.nodeType == 1 && node.contentEditable == \"false\")\n return false;\n off = dir < 0 ? maxOffset(node) : 0;\n }\n else {\n return false;\n }\n }\n}\nfunction maxOffset(node) {\n return node.nodeType == 3 ? node.nodeValue.length : node.childNodes.length;\n}\nfunction flattenRect(rect, left) {\n let x = left ? rect.left : rect.right;\n return { left: x, right: x, top: rect.top, bottom: rect.bottom };\n}\nfunction windowRect(win) {\n let vp = win.visualViewport;\n if (vp)\n return {\n left: 0, right: vp.width,\n top: 0, bottom: vp.height\n };\n return { left: 0, right: win.innerWidth,\n top: 0, bottom: win.innerHeight };\n}\nfunction getScale(elt, rect) {\n let scaleX = rect.width / elt.offsetWidth;\n let scaleY = rect.height / elt.offsetHeight;\n if (scaleX > 0.995 && scaleX < 1.005 || !isFinite(scaleX) || Math.abs(rect.width - elt.offsetWidth) < 1)\n scaleX = 1;\n if (scaleY > 0.995 && scaleY < 1.005 || !isFinite(scaleY) || Math.abs(rect.height - elt.offsetHeight) < 1)\n scaleY = 1;\n return { scaleX, scaleY };\n}\nfunction scrollRectIntoView(dom, rect, side, x, y, xMargin, yMargin, ltr) {\n let doc = dom.ownerDocument, win = doc.defaultView || window;\n for (let cur = dom, stop = false; cur && !stop;) {\n if (cur.nodeType == 1) { // Element\n let bounding, top = cur == doc.body;\n let scaleX = 1, scaleY = 1;\n if (top) {\n bounding = windowRect(win);\n }\n else {\n if (/^(fixed|sticky)$/.test(getComputedStyle(cur).position))\n stop = true;\n if (cur.scrollHeight <= cur.clientHeight && cur.scrollWidth <= cur.clientWidth) {\n cur = cur.assignedSlot || cur.parentNode;\n continue;\n }\n let rect = cur.getBoundingClientRect();\n ({ scaleX, scaleY } = getScale(cur, rect));\n // Make sure scrollbar width isn't included in the rectangle\n bounding = { left: rect.left, right: rect.left + cur.clientWidth * scaleX,\n top: rect.top, bottom: rect.top + cur.clientHeight * scaleY };\n }\n let moveX = 0, moveY = 0;\n if (y == \"nearest\") {\n if (rect.top < bounding.top) {\n moveY = rect.top - (bounding.top + yMargin);\n if (side > 0 && rect.bottom > bounding.bottom + moveY)\n moveY = rect.bottom - bounding.bottom + yMargin;\n }\n else if (rect.bottom > bounding.bottom) {\n moveY = rect.bottom - bounding.bottom + yMargin;\n if (side < 0 && (rect.top - moveY) < bounding.top)\n moveY = rect.top - (bounding.top + yMargin);\n }\n }\n else {\n let rectHeight = rect.bottom - rect.top, boundingHeight = bounding.bottom - bounding.top;\n let targetTop = y == \"center\" && rectHeight <= boundingHeight ? rect.top + rectHeight / 2 - boundingHeight / 2 :\n y == \"start\" || y == \"center\" && side < 0 ? rect.top - yMargin :\n rect.bottom - boundingHeight + yMargin;\n moveY = targetTop - bounding.top;\n }\n if (x == \"nearest\") {\n if (rect.left < bounding.left) {\n moveX = rect.left - (bounding.left + xMargin);\n if (side > 0 && rect.right > bounding.right + moveX)\n moveX = rect.right - bounding.right + xMargin;\n }\n else if (rect.right > bounding.right) {\n moveX = rect.right - bounding.right + xMargin;\n if (side < 0 && rect.left < bounding.left + moveX)\n moveX = rect.left - (bounding.left + xMargin);\n }\n }\n else {\n let targetLeft = x == \"center\" ? rect.left + (rect.right - rect.left) / 2 - (bounding.right - bounding.left) / 2 :\n (x == \"start\") == ltr ? rect.left - xMargin :\n rect.right - (bounding.right - bounding.left) + xMargin;\n moveX = targetLeft - bounding.left;\n }\n if (moveX || moveY) {\n if (top) {\n win.scrollBy(moveX, moveY);\n }\n else {\n let movedX = 0, movedY = 0;\n if (moveY) {\n let start = cur.scrollTop;\n cur.scrollTop += moveY / scaleY;\n movedY = (cur.scrollTop - start) * scaleY;\n }\n if (moveX) {\n let start = cur.scrollLeft;\n cur.scrollLeft += moveX / scaleX;\n movedX = (cur.scrollLeft - start) * scaleX;\n }\n rect = { left: rect.left - movedX, top: rect.top - movedY,\n right: rect.right - movedX, bottom: rect.bottom - movedY };\n if (movedX && Math.abs(movedX - moveX) < 1)\n x = \"nearest\";\n if (movedY && Math.abs(movedY - moveY) < 1)\n y = \"nearest\";\n }\n }\n if (top)\n break;\n if (rect.top < bounding.top || rect.bottom > bounding.bottom ||\n rect.left < bounding.left || rect.right > bounding.right)\n rect = { left: Math.max(rect.left, bounding.left), right: Math.min(rect.right, bounding.right),\n top: Math.max(rect.top, bounding.top), bottom: Math.min(rect.bottom, bounding.bottom) };\n cur = cur.assignedSlot || cur.parentNode;\n }\n else if (cur.nodeType == 11) { // A shadow root\n cur = cur.host;\n }\n else {\n break;\n }\n }\n}\nfunction scrollableParents(dom) {\n let doc = dom.ownerDocument, x, y;\n for (let cur = dom.parentNode; cur;) {\n if (cur == doc.body || (x && y)) {\n break;\n }\n else if (cur.nodeType == 1) {\n if (!y && cur.scrollHeight > cur.clientHeight)\n y = cur;\n if (!x && cur.scrollWidth > cur.clientWidth)\n x = cur;\n cur = cur.assignedSlot || cur.parentNode;\n }\n else if (cur.nodeType == 11) {\n cur = cur.host;\n }\n else {\n break;\n }\n }\n return { x, y };\n}\nclass DOMSelectionState {\n constructor() {\n this.anchorNode = null;\n this.anchorOffset = 0;\n this.focusNode = null;\n this.focusOffset = 0;\n }\n eq(domSel) {\n return this.anchorNode == domSel.anchorNode && this.anchorOffset == domSel.anchorOffset &&\n this.focusNode == domSel.focusNode && this.focusOffset == domSel.focusOffset;\n }\n setRange(range) {\n let { anchorNode, focusNode } = range;\n // Clip offsets to node size to avoid crashes when Safari reports bogus offsets (#1152)\n this.set(anchorNode, Math.min(range.anchorOffset, anchorNode ? maxOffset(anchorNode) : 0), focusNode, Math.min(range.focusOffset, focusNode ? maxOffset(focusNode) : 0));\n }\n set(anchorNode, anchorOffset, focusNode, focusOffset) {\n this.anchorNode = anchorNode;\n this.anchorOffset = anchorOffset;\n this.focusNode = focusNode;\n this.focusOffset = focusOffset;\n }\n}\nlet preventScrollSupported = null;\n// Safari 26 breaks preventScroll support\nif (browser.safari && browser.safari_version >= 26)\n preventScrollSupported = false;\n// Feature-detects support for .focus({preventScroll: true}), and uses\n// a fallback kludge when not supported.\nfunction focusPreventScroll(dom) {\n if (dom.setActive)\n return dom.setActive(); // in IE\n if (preventScrollSupported)\n return dom.focus(preventScrollSupported);\n let stack = [];\n for (let cur = dom; cur; cur = cur.parentNode) {\n stack.push(cur, cur.scrollTop, cur.scrollLeft);\n if (cur == cur.ownerDocument)\n break;\n }\n dom.focus(preventScrollSupported == null ? {\n get preventScroll() {\n preventScrollSupported = { preventScroll: true };\n return true;\n }\n } : undefined);\n if (!preventScrollSupported) {\n preventScrollSupported = false;\n for (let i = 0; i < stack.length;) {\n let elt = stack[i++], top = stack[i++], left = stack[i++];\n if (elt.scrollTop != top)\n elt.scrollTop = top;\n if (elt.scrollLeft != left)\n elt.scrollLeft = left;\n }\n }\n}\nlet scratchRange;\nfunction textRange(node, from, to = from) {\n let range = scratchRange || (scratchRange = document.createRange());\n range.setEnd(node, to);\n range.setStart(node, from);\n return range;\n}\nfunction dispatchKey(elt, name, code, mods) {\n let options = { key: name, code: name, keyCode: code, which: code, cancelable: true };\n if (mods)\n ({ altKey: options.altKey, ctrlKey: options.ctrlKey, shiftKey: options.shiftKey, metaKey: options.metaKey } = mods);\n let down = new KeyboardEvent(\"keydown\", options);\n down.synthetic = true;\n elt.dispatchEvent(down);\n let up = new KeyboardEvent(\"keyup\", options);\n up.synthetic = true;\n elt.dispatchEvent(up);\n return down.defaultPrevented || up.defaultPrevented;\n}\nfunction getRoot(node) {\n while (node) {\n if (node && (node.nodeType == 9 || node.nodeType == 11 && node.host))\n return node;\n node = node.assignedSlot || node.parentNode;\n }\n return null;\n}\nfunction atElementStart(doc, selection) {\n let node = selection.focusNode, offset = selection.focusOffset;\n if (!node || selection.anchorNode != node || selection.anchorOffset != offset)\n return false;\n // Safari can report bogus offsets (#1152)\n offset = Math.min(offset, maxOffset(node));\n for (;;) {\n if (offset) {\n if (node.nodeType != 1)\n return false;\n let prev = node.childNodes[offset - 1];\n if (prev.contentEditable == \"false\")\n offset--;\n else {\n node = prev;\n offset = maxOffset(node);\n }\n }\n else if (node == doc) {\n return true;\n }\n else {\n offset = domIndex(node);\n node = node.parentNode;\n }\n }\n}\nfunction isScrolledToBottom(elt) {\n return elt.scrollTop > Math.max(1, elt.scrollHeight - elt.clientHeight - 4);\n}\nfunction textNodeBefore(startNode, startOffset) {\n for (let node = startNode, offset = startOffset;;) {\n if (node.nodeType == 3 && offset > 0) {\n return { node: node, offset: offset };\n }\n else if (node.nodeType == 1 && offset > 0) {\n if (node.contentEditable == \"false\")\n return null;\n node = node.childNodes[offset - 1];\n offset = maxOffset(node);\n }\n else if (node.parentNode && !isBlockElement(node)) {\n offset = domIndex(node);\n node = node.parentNode;\n }\n else {\n return null;\n }\n }\n}\nfunction textNodeAfter(startNode, startOffset) {\n for (let node = startNode, offset = startOffset;;) {\n if (node.nodeType == 3 && offset < node.nodeValue.length) {\n return { node: node, offset: offset };\n }\n else if (node.nodeType == 1 && offset < node.childNodes.length) {\n if (node.contentEditable == \"false\")\n return null;\n node = node.childNodes[offset];\n offset = 0;\n }\n else if (node.parentNode && !isBlockElement(node)) {\n offset = domIndex(node) + 1;\n node = node.parentNode;\n }\n else {\n return null;\n }\n }\n}\nclass DOMPos {\n constructor(node, offset, precise = true) {\n this.node = node;\n this.offset = offset;\n this.precise = precise;\n }\n static before(dom, precise) { return new DOMPos(dom.parentNode, domIndex(dom), precise); }\n static after(dom, precise) { return new DOMPos(dom.parentNode, domIndex(dom) + 1, precise); }\n}\n\n/**\nUsed to indicate [text direction](https://codemirror.net/6/docs/ref/#view.EditorView.textDirection).\n*/\nvar Direction = /*@__PURE__*/(function (Direction) {\n // (These are chosen to match the base levels, in bidi algorithm\n // terms, of spans in that direction.)\n /**\n Left-to-right.\n */\n Direction[Direction[\"LTR\"] = 0] = \"LTR\";\n /**\n Right-to-left.\n */\n Direction[Direction[\"RTL\"] = 1] = \"RTL\";\nreturn Direction})(Direction || (Direction = {}));\nconst LTR = Direction.LTR, RTL = Direction.RTL;\n// Decode a string with each type encoded as log2(type)\nfunction dec(str) {\n let result = [];\n for (let i = 0; i < str.length; i++)\n result.push(1 << +str[i]);\n return result;\n}\n// Character types for codepoints 0 to 0xf8\nconst LowTypes = /*@__PURE__*/dec(\"88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008\");\n// Character types for codepoints 0x600 to 0x6f9\nconst ArabicTypes = /*@__PURE__*/dec(\"4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333\");\nconst Brackets = /*@__PURE__*/Object.create(null), BracketStack = [];\n// There's a lot more in\n// https://www.unicode.org/Public/UCD/latest/ucd/BidiBrackets.txt,\n// which are left out to keep code size down.\nfor (let p of [\"()\", \"[]\", \"{}\"]) {\n let l = /*@__PURE__*/p.charCodeAt(0), r = /*@__PURE__*/p.charCodeAt(1);\n Brackets[l] = r;\n Brackets[r] = -l;\n}\nfunction charType(ch) {\n return ch <= 0xf7 ? LowTypes[ch] :\n 0x590 <= ch && ch <= 0x5f4 ? 2 /* T.R */ :\n 0x600 <= ch && ch <= 0x6f9 ? ArabicTypes[ch - 0x600] :\n 0x6ee <= ch && ch <= 0x8ac ? 4 /* T.AL */ :\n 0x2000 <= ch && ch <= 0x200c ? 256 /* T.NI */ :\n 0xfb50 <= ch && ch <= 0xfdff ? 4 /* T.AL */ : 1 /* T.L */;\n}\nconst BidiRE = /[\\u0590-\\u05f4\\u0600-\\u06ff\\u0700-\\u08ac\\ufb50-\\ufdff]/;\n/**\nRepresents a contiguous range of text that has a single direction\n(as in left-to-right or right-to-left).\n*/\nclass BidiSpan {\n /**\n The direction of this span.\n */\n get dir() { return this.level % 2 ? RTL : LTR; }\n /**\n @internal\n */\n constructor(\n /**\n The start of the span (relative to the start of the line).\n */\n from, \n /**\n The end of the span.\n */\n to, \n /**\n The [\"bidi\n level\"](https://unicode.org/reports/tr9/#Basic_Display_Algorithm)\n of the span (in this context, 0 means\n left-to-right, 1 means right-to-left, 2 means left-to-right\n number inside right-to-left text).\n */\n level) {\n this.from = from;\n this.to = to;\n this.level = level;\n }\n /**\n @internal\n */\n side(end, dir) { return (this.dir == dir) == end ? this.to : this.from; }\n /**\n @internal\n */\n forward(forward, dir) { return forward == (this.dir == dir); }\n /**\n @internal\n */\n static find(order, index, level, assoc) {\n let maybe = -1;\n for (let i = 0; i < order.length; i++) {\n let span = order[i];\n if (span.from <= index && span.to >= index) {\n if (span.level == level)\n return i;\n // When multiple spans match, if assoc != 0, take the one that\n // covers that side, otherwise take the one with the minimum\n // level.\n if (maybe < 0 || (assoc != 0 ? (assoc < 0 ? span.from < index : span.to > index) : order[maybe].level > span.level))\n maybe = i;\n }\n }\n if (maybe < 0)\n throw new RangeError(\"Index out of range\");\n return maybe;\n }\n}\nfunction isolatesEq(a, b) {\n if (a.length != b.length)\n return false;\n for (let i = 0; i < a.length; i++) {\n let iA = a[i], iB = b[i];\n if (iA.from != iB.from || iA.to != iB.to || iA.direction != iB.direction || !isolatesEq(iA.inner, iB.inner))\n return false;\n }\n return true;\n}\n// Reused array of character types\nconst types = [];\n// Fill in the character types (in `types`) from `from` to `to` and\n// apply W normalization rules.\nfunction computeCharTypes(line, rFrom, rTo, isolates, outerType) {\n for (let iI = 0; iI <= isolates.length; iI++) {\n let from = iI ? isolates[iI - 1].to : rFrom, to = iI < isolates.length ? isolates[iI].from : rTo;\n let prevType = iI ? 256 /* T.NI */ : outerType;\n // W1. Examine each non-spacing mark (NSM) in the level run, and\n // change the type of the NSM to the type of the previous\n // character. If the NSM is at the start of the level run, it will\n // get the type of sor.\n // W2. Search backwards from each instance of a European number\n // until the first strong type (R, L, AL, or sor) is found. If an\n // AL is found, change the type of the European number to Arabic\n // number.\n // W3. Change all ALs to R.\n // (Left after this: L, R, EN, AN, ET, CS, NI)\n for (let i = from, prev = prevType, prevStrong = prevType; i < to; i++) {\n let type = charType(line.charCodeAt(i));\n if (type == 512 /* T.NSM */)\n type = prev;\n else if (type == 8 /* T.EN */ && prevStrong == 4 /* T.AL */)\n type = 16 /* T.AN */;\n types[i] = type == 4 /* T.AL */ ? 2 /* T.R */ : type;\n if (type & 7 /* T.Strong */)\n prevStrong = type;\n prev = type;\n }\n // W5. A sequence of European terminators adjacent to European\n // numbers changes to all European numbers.\n // W6. Otherwise, separators and terminators change to Other\n // Neutral.\n // W7. Search backwards from each instance of a European number\n // until the first strong type (R, L, or sor) is found. If an L is\n // found, then change the type of the European number to L.\n // (Left after this: L, R, EN+AN, NI)\n for (let i = from, prev = prevType, prevStrong = prevType; i < to; i++) {\n let type = types[i];\n if (type == 128 /* T.CS */) {\n if (i < to - 1 && prev == types[i + 1] && (prev & 24 /* T.Num */))\n type = types[i] = prev;\n else\n types[i] = 256 /* T.NI */;\n }\n else if (type == 64 /* T.ET */) {\n let end = i + 1;\n while (end < to && types[end] == 64 /* T.ET */)\n end++;\n let replace = (i && prev == 8 /* T.EN */) || (end < rTo && types[end] == 8 /* T.EN */) ? (prevStrong == 1 /* T.L */ ? 1 /* T.L */ : 8 /* T.EN */) : 256 /* T.NI */;\n for (let j = i; j < end; j++)\n types[j] = replace;\n i = end - 1;\n }\n else if (type == 8 /* T.EN */ && prevStrong == 1 /* T.L */) {\n types[i] = 1 /* T.L */;\n }\n prev = type;\n if (type & 7 /* T.Strong */)\n prevStrong = type;\n }\n }\n}\n// Process brackets throughout a run sequence.\nfunction processBracketPairs(line, rFrom, rTo, isolates, outerType) {\n let oppositeType = outerType == 1 /* T.L */ ? 2 /* T.R */ : 1 /* T.L */;\n for (let iI = 0, sI = 0, context = 0; iI <= isolates.length; iI++) {\n let from = iI ? isolates[iI - 1].to : rFrom, to = iI < isolates.length ? isolates[iI].from : rTo;\n // N0. Process bracket pairs in an isolating run sequence\n // sequentially in the logical order of the text positions of the\n // opening paired brackets using the logic given below. Within this\n // scope, bidirectional types EN and AN are treated as R.\n for (let i = from, ch, br, type; i < to; i++) {\n // Keeps [startIndex, type, strongSeen] triples for each open\n // bracket on BracketStack.\n if (br = Brackets[ch = line.charCodeAt(i)]) {\n if (br < 0) { // Closing bracket\n for (let sJ = sI - 3; sJ >= 0; sJ -= 3) {\n if (BracketStack[sJ + 1] == -br) {\n let flags = BracketStack[sJ + 2];\n let type = (flags & 2 /* Bracketed.EmbedInside */) ? outerType :\n !(flags & 4 /* Bracketed.OppositeInside */) ? 0 :\n (flags & 1 /* Bracketed.OppositeBefore */) ? oppositeType : outerType;\n if (type)\n types[i] = types[BracketStack[sJ]] = type;\n sI = sJ;\n break;\n }\n }\n }\n else if (BracketStack.length == 189 /* Bracketed.MaxDepth */) {\n break;\n }\n else {\n BracketStack[sI++] = i;\n BracketStack[sI++] = ch;\n BracketStack[sI++] = context;\n }\n }\n else if ((type = types[i]) == 2 /* T.R */ || type == 1 /* T.L */) {\n let embed = type == outerType;\n context = embed ? 0 : 1 /* Bracketed.OppositeBefore */;\n for (let sJ = sI - 3; sJ >= 0; sJ -= 3) {\n let cur = BracketStack[sJ + 2];\n if (cur & 2 /* Bracketed.EmbedInside */)\n break;\n if (embed) {\n BracketStack[sJ + 2] |= 2 /* Bracketed.EmbedInside */;\n }\n else {\n if (cur & 4 /* Bracketed.OppositeInside */)\n break;\n BracketStack[sJ + 2] |= 4 /* Bracketed.OppositeInside */;\n }\n }\n }\n }\n }\n}\nfunction processNeutrals(rFrom, rTo, isolates, outerType) {\n for (let iI = 0, prev = outerType; iI <= isolates.length; iI++) {\n let from = iI ? isolates[iI - 1].to : rFrom, to = iI < isolates.length ? isolates[iI].from : rTo;\n // N1. A sequence of neutrals takes the direction of the\n // surrounding strong text if the text on both sides has the same\n // direction. European and Arabic numbers act as if they were R in\n // terms of their influence on neutrals. Start-of-level-run (sor)\n // and end-of-level-run (eor) are used at level run boundaries.\n // N2. Any remaining neutrals take the embedding direction.\n // (Left after this: L, R, EN+AN)\n for (let i = from; i < to;) {\n let type = types[i];\n if (type == 256 /* T.NI */) {\n let end = i + 1;\n for (;;) {\n if (end == to) {\n if (iI == isolates.length)\n break;\n end = isolates[iI++].to;\n to = iI < isolates.length ? isolates[iI].from : rTo;\n }\n else if (types[end] == 256 /* T.NI */) {\n end++;\n }\n else {\n break;\n }\n }\n let beforeL = prev == 1 /* T.L */;\n let afterL = (end < rTo ? types[end] : outerType) == 1 /* T.L */;\n let replace = beforeL == afterL ? (beforeL ? 1 /* T.L */ : 2 /* T.R */) : outerType;\n for (let j = end, jI = iI, fromJ = jI ? isolates[jI - 1].to : rFrom; j > i;) {\n if (j == fromJ) {\n j = isolates[--jI].from;\n fromJ = jI ? isolates[jI - 1].to : rFrom;\n }\n types[--j] = replace;\n }\n i = end;\n }\n else {\n prev = type;\n i++;\n }\n }\n }\n}\n// Find the contiguous ranges of character types in a given range, and\n// emit spans for them. Flip the order of the spans as appropriate\n// based on the level, and call through to compute the spans for\n// isolates at the proper point.\nfunction emitSpans(line, from, to, level, baseLevel, isolates, order) {\n let ourType = level % 2 ? 2 /* T.R */ : 1 /* T.L */;\n if ((level % 2) == (baseLevel % 2)) { // Same dir as base direction, don't flip\n for (let iCh = from, iI = 0; iCh < to;) {\n // Scan a section of characters in direction ourType, unless\n // there's another type of char right after iCh, in which case\n // we scan a section of other characters (which, if ourType ==\n // T.L, may contain both T.R and T.AN chars).\n let sameDir = true, isNum = false;\n if (iI == isolates.length || iCh < isolates[iI].from) {\n let next = types[iCh];\n if (next != ourType) {\n sameDir = false;\n isNum = next == 16 /* T.AN */;\n }\n }\n // Holds an array of isolates to pass to a recursive call if we\n // must recurse (to distinguish T.AN inside an RTL section in\n // LTR text), null if we can emit directly\n let recurse = !sameDir && ourType == 1 /* T.L */ ? [] : null;\n let localLevel = sameDir ? level : level + 1;\n let iScan = iCh;\n run: for (;;) {\n if (iI < isolates.length && iScan == isolates[iI].from) {\n if (isNum)\n break run;\n let iso = isolates[iI];\n // Scan ahead to verify that there is another char in this dir after the isolate(s)\n if (!sameDir)\n for (let upto = iso.to, jI = iI + 1;;) {\n if (upto == to)\n break run;\n if (jI < isolates.length && isolates[jI].from == upto)\n upto = isolates[jI++].to;\n else if (types[upto] == ourType)\n break run;\n else\n break;\n }\n iI++;\n if (recurse) {\n recurse.push(iso);\n }\n else {\n if (iso.from > iCh)\n order.push(new BidiSpan(iCh, iso.from, localLevel));\n let dirSwap = (iso.direction == LTR) != !(localLevel % 2);\n computeSectionOrder(line, dirSwap ? level + 1 : level, baseLevel, iso.inner, iso.from, iso.to, order);\n iCh = iso.to;\n }\n iScan = iso.to;\n }\n else if (iScan == to || (sameDir ? types[iScan] != ourType : types[iScan] == ourType)) {\n break;\n }\n else {\n iScan++;\n }\n }\n if (recurse)\n emitSpans(line, iCh, iScan, level + 1, baseLevel, recurse, order);\n else if (iCh < iScan)\n order.push(new BidiSpan(iCh, iScan, localLevel));\n iCh = iScan;\n }\n }\n else {\n // Iterate in reverse to flip the span order. Same code again, but\n // going from the back of the section to the front\n for (let iCh = to, iI = isolates.length; iCh > from;) {\n let sameDir = true, isNum = false;\n if (!iI || iCh > isolates[iI - 1].to) {\n let next = types[iCh - 1];\n if (next != ourType) {\n sameDir = false;\n isNum = next == 16 /* T.AN */;\n }\n }\n let recurse = !sameDir && ourType == 1 /* T.L */ ? [] : null;\n let localLevel = sameDir ? level : level + 1;\n let iScan = iCh;\n run: for (;;) {\n if (iI && iScan == isolates[iI - 1].to) {\n if (isNum)\n break run;\n let iso = isolates[--iI];\n // Scan ahead to verify that there is another char in this dir after the isolate(s)\n if (!sameDir)\n for (let upto = iso.from, jI = iI;;) {\n if (upto == from)\n break run;\n if (jI && isolates[jI - 1].to == upto)\n upto = isolates[--jI].from;\n else if (types[upto - 1] == ourType)\n break run;\n else\n break;\n }\n if (recurse) {\n recurse.push(iso);\n }\n else {\n if (iso.to < iCh)\n order.push(new BidiSpan(iso.to, iCh, localLevel));\n let dirSwap = (iso.direction == LTR) != !(localLevel % 2);\n computeSectionOrder(line, dirSwap ? level + 1 : level, baseLevel, iso.inner, iso.from, iso.to, order);\n iCh = iso.from;\n }\n iScan = iso.from;\n }\n else if (iScan == from || (sameDir ? types[iScan - 1] != ourType : types[iScan - 1] == ourType)) {\n break;\n }\n else {\n iScan--;\n }\n }\n if (recurse)\n emitSpans(line, iScan, iCh, level + 1, baseLevel, recurse, order);\n else if (iScan < iCh)\n order.push(new BidiSpan(iScan, iCh, localLevel));\n iCh = iScan;\n }\n }\n}\nfunction computeSectionOrder(line, level, baseLevel, isolates, from, to, order) {\n let outerType = (level % 2 ? 2 /* T.R */ : 1 /* T.L */);\n computeCharTypes(line, from, to, isolates, outerType);\n processBracketPairs(line, from, to, isolates, outerType);\n processNeutrals(from, to, isolates, outerType);\n emitSpans(line, from, to, level, baseLevel, isolates, order);\n}\nfunction computeOrder(line, direction, isolates) {\n if (!line)\n return [new BidiSpan(0, 0, direction == RTL ? 1 : 0)];\n if (direction == LTR && !isolates.length && !BidiRE.test(line))\n return trivialOrder(line.length);\n if (isolates.length)\n while (line.length > types.length)\n types[types.length] = 256 /* T.NI */; // Make sure types array has no gaps\n let order = [], level = direction == LTR ? 0 : 1;\n computeSectionOrder(line, level, level, isolates, 0, line.length, order);\n return order;\n}\nfunction trivialOrder(length) {\n return [new BidiSpan(0, length, 0)];\n}\nlet movedOver = \"\";\n// This implementation moves strictly visually, without concern for a\n// traversal visiting every logical position in the string. It will\n// still do so for simple input, but situations like multiple isolates\n// with the same level next to each other, or text going against the\n// main dir at the end of the line, will make some positions\n// unreachable with this motion. Each visible cursor position will\n// correspond to the lower-level bidi span that touches it.\n//\n// The alternative would be to solve an order globally for a given\n// line, making sure that it includes every position, but that would\n// require associating non-canonical (higher bidi span level)\n// positions with a given visual position, which is likely to confuse\n// people. (And would generally be a lot more complicated.)\nfunction moveVisually(line, order, dir, start, forward) {\n var _a;\n let startIndex = start.head - line.from;\n let spanI = BidiSpan.find(order, startIndex, (_a = start.bidiLevel) !== null && _a !== void 0 ? _a : -1, start.assoc);\n let span = order[spanI], spanEnd = span.side(forward, dir);\n // End of span\n if (startIndex == spanEnd) {\n let nextI = spanI += forward ? 1 : -1;\n if (nextI < 0 || nextI >= order.length)\n return null;\n span = order[spanI = nextI];\n startIndex = span.side(!forward, dir);\n spanEnd = span.side(forward, dir);\n }\n let nextIndex = findClusterBreak(line.text, startIndex, span.forward(forward, dir));\n if (nextIndex < span.from || nextIndex > span.to)\n nextIndex = spanEnd;\n movedOver = line.text.slice(Math.min(startIndex, nextIndex), Math.max(startIndex, nextIndex));\n let nextSpan = spanI == (forward ? order.length - 1 : 0) ? null : order[spanI + (forward ? 1 : -1)];\n if (nextSpan && nextIndex == spanEnd && nextSpan.level + (forward ? 0 : 1) < span.level)\n return EditorSelection.cursor(nextSpan.side(!forward, dir) + line.from, nextSpan.forward(forward, dir) ? 1 : -1, nextSpan.level);\n return EditorSelection.cursor(nextIndex + line.from, span.forward(forward, dir) ? -1 : 1, span.level);\n}\nfunction autoDirection(text, from, to) {\n for (let i = from; i < to; i++) {\n let type = charType(text.charCodeAt(i));\n if (type == 1 /* T.L */)\n return LTR;\n if (type == 2 /* T.R */ || type == 4 /* T.AL */)\n return RTL;\n }\n return LTR;\n}\n\nconst clickAddsSelectionRange = /*@__PURE__*/Facet.define();\nconst dragMovesSelection$1 = /*@__PURE__*/Facet.define();\nconst mouseSelectionStyle = /*@__PURE__*/Facet.define();\nconst exceptionSink = /*@__PURE__*/Facet.define();\nconst updateListener = /*@__PURE__*/Facet.define();\nconst inputHandler = /*@__PURE__*/Facet.define();\nconst focusChangeEffect = /*@__PURE__*/Facet.define();\nconst clipboardInputFilter = /*@__PURE__*/Facet.define();\nconst clipboardOutputFilter = /*@__PURE__*/Facet.define();\nconst perLineTextDirection = /*@__PURE__*/Facet.define({\n combine: values => values.some(x => x)\n});\nconst nativeSelectionHidden = /*@__PURE__*/Facet.define({\n combine: values => values.some(x => x)\n});\nconst scrollHandler = /*@__PURE__*/Facet.define();\nclass ScrollTarget {\n constructor(range, y = \"nearest\", x = \"nearest\", yMargin = 5, xMargin = 5, \n // This data structure is abused to also store precise scroll\n // snapshots, instead of a `scrollIntoView` request. When this\n // flag is `true`, `range` points at a position in the reference\n // line, `yMargin` holds the difference between the top of that\n // line and the top of the editor, and `xMargin` holds the\n // editor's `scrollLeft`.\n isSnapshot = false) {\n this.range = range;\n this.y = y;\n this.x = x;\n this.yMargin = yMargin;\n this.xMargin = xMargin;\n this.isSnapshot = isSnapshot;\n }\n map(changes) {\n return changes.empty ? this :\n new ScrollTarget(this.range.map(changes), this.y, this.x, this.yMargin, this.xMargin, this.isSnapshot);\n }\n clip(state) {\n return this.range.to <= state.doc.length ? this :\n new ScrollTarget(EditorSelection.cursor(state.doc.length), this.y, this.x, this.yMargin, this.xMargin, this.isSnapshot);\n }\n}\nconst scrollIntoView = /*@__PURE__*/StateEffect.define({ map: (t, ch) => t.map(ch) });\nconst setEditContextFormatting = /*@__PURE__*/StateEffect.define();\n/**\nLog or report an unhandled exception in client code. Should\nprobably only be used by extension code that allows client code to\nprovide functions, and calls those functions in a context where an\nexception can't be propagated to calling code in a reasonable way\n(for example when in an event handler).\n\nEither calls a handler registered with\n[`EditorView.exceptionSink`](https://codemirror.net/6/docs/ref/#view.EditorView^exceptionSink),\n`window.onerror`, if defined, or `console.error` (in which case\nit'll pass `context`, when given, as first argument).\n*/\nfunction logException(state, exception, context) {\n let handler = state.facet(exceptionSink);\n if (handler.length)\n handler[0](exception);\n else if (window.onerror && window.onerror(String(exception), context, undefined, undefined, exception)) ;\n else if (context)\n console.error(context + \":\", exception);\n else\n console.error(exception);\n}\nconst editable = /*@__PURE__*/Facet.define({ combine: values => values.length ? values[0] : true });\nlet nextPluginID = 0;\nconst viewPlugin = /*@__PURE__*/Facet.define({\n combine(plugins) {\n return plugins.filter((p, i) => {\n for (let j = 0; j < i; j++)\n if (plugins[j].plugin == p.plugin)\n return false;\n return true;\n });\n }\n});\n/**\nView plugins associate stateful values with a view. They can\ninfluence the way the content is drawn, and are notified of things\nthat happen in the view. They optionally take an argument, in\nwhich case you need to call [`of`](https://codemirror.net/6/docs/ref/#view.ViewPlugin.of) to create\nan extension for the plugin. When the argument type is undefined,\nyou can use the plugin instance as an extension directly.\n*/\nclass ViewPlugin {\n constructor(\n /**\n @internal\n */\n id, \n /**\n @internal\n */\n create, \n /**\n @internal\n */\n domEventHandlers, \n /**\n @internal\n */\n domEventObservers, buildExtensions) {\n this.id = id;\n this.create = create;\n this.domEventHandlers = domEventHandlers;\n this.domEventObservers = domEventObservers;\n this.baseExtensions = buildExtensions(this);\n this.extension = this.baseExtensions.concat(viewPlugin.of({ plugin: this, arg: undefined }));\n }\n /**\n Create an extension for this plugin with the given argument.\n */\n of(arg) {\n return this.baseExtensions.concat(viewPlugin.of({ plugin: this, arg }));\n }\n /**\n Define a plugin from a constructor function that creates the\n plugin's value, given an editor view.\n */\n static define(create, spec) {\n const { eventHandlers, eventObservers, provide, decorations: deco } = spec || {};\n return new ViewPlugin(nextPluginID++, create, eventHandlers, eventObservers, plugin => {\n let ext = [];\n if (deco)\n ext.push(decorations.of(view => {\n let pluginInst = view.plugin(plugin);\n return pluginInst ? deco(pluginInst) : Decoration.none;\n }));\n if (provide)\n ext.push(provide(plugin));\n return ext;\n });\n }\n /**\n Create a plugin for a class whose constructor takes a single\n editor view as argument.\n */\n static fromClass(cls, spec) {\n return ViewPlugin.define((view, arg) => new cls(view, arg), spec);\n }\n}\nclass PluginInstance {\n constructor(spec) {\n this.spec = spec;\n // When starting an update, all plugins have this field set to the\n // update object, indicating they need to be updated. When finished\n // updating, it is set to `null`. Retrieving a plugin that needs to\n // be updated with `view.plugin` forces an eager update.\n this.mustUpdate = null;\n // This is null when the plugin is initially created, but\n // initialized on the first update.\n this.value = null;\n }\n get plugin() { return this.spec && this.spec.plugin; }\n update(view) {\n if (!this.value) {\n if (this.spec) {\n try {\n this.value = this.spec.plugin.create(view, this.spec.arg);\n }\n catch (e) {\n logException(view.state, e, \"CodeMirror plugin crashed\");\n this.deactivate();\n }\n }\n }\n else if (this.mustUpdate) {\n let update = this.mustUpdate;\n this.mustUpdate = null;\n if (this.value.update) {\n try {\n this.value.update(update);\n }\n catch (e) {\n logException(update.state, e, \"CodeMirror plugin crashed\");\n if (this.value.destroy)\n try {\n this.value.destroy();\n }\n catch (_) { }\n this.deactivate();\n }\n }\n }\n return this;\n }\n destroy(view) {\n var _a;\n if ((_a = this.value) === null || _a === void 0 ? void 0 : _a.destroy) {\n try {\n this.value.destroy();\n }\n catch (e) {\n logException(view.state, e, \"CodeMirror plugin crashed\");\n }\n }\n }\n deactivate() {\n this.spec = this.value = null;\n }\n}\nconst editorAttributes = /*@__PURE__*/Facet.define();\nconst contentAttributes = /*@__PURE__*/Facet.define();\n// Provide decorations\nconst decorations = /*@__PURE__*/Facet.define();\nconst blockWrappers = /*@__PURE__*/Facet.define();\nconst outerDecorations = /*@__PURE__*/Facet.define();\nconst atomicRanges = /*@__PURE__*/Facet.define();\nconst bidiIsolatedRanges = /*@__PURE__*/Facet.define();\nfunction getIsolatedRanges(view, line) {\n let isolates = view.state.facet(bidiIsolatedRanges);\n if (!isolates.length)\n return isolates;\n let sets = isolates.map(i => i instanceof Function ? i(view) : i);\n let result = [];\n RangeSet.spans(sets, line.from, line.to, {\n point() { },\n span(fromDoc, toDoc, active, open) {\n let from = fromDoc - line.from, to = toDoc - line.from;\n let level = result;\n for (let i = active.length - 1; i >= 0; i--, open--) {\n let direction = active[i].spec.bidiIsolate, update;\n if (direction == null)\n direction = autoDirection(line.text, from, to);\n if (open > 0 && level.length &&\n (update = level[level.length - 1]).to == from && update.direction == direction) {\n update.to = to;\n level = update.inner;\n }\n else {\n let add = { from, to, direction, inner: [] };\n level.push(add);\n level = add.inner;\n }\n }\n }\n });\n return result;\n}\nconst scrollMargins = /*@__PURE__*/Facet.define();\nfunction getScrollMargins(view) {\n let left = 0, right = 0, top = 0, bottom = 0;\n for (let source of view.state.facet(scrollMargins)) {\n let m = source(view);\n if (m) {\n if (m.left != null)\n left = Math.max(left, m.left);\n if (m.right != null)\n right = Math.max(right, m.right);\n if (m.top != null)\n top = Math.max(top, m.top);\n if (m.bottom != null)\n bottom = Math.max(bottom, m.bottom);\n }\n }\n return { left, right, top, bottom };\n}\nconst styleModule = /*@__PURE__*/Facet.define();\nclass ChangedRange {\n constructor(fromA, toA, fromB, toB) {\n this.fromA = fromA;\n this.toA = toA;\n this.fromB = fromB;\n this.toB = toB;\n }\n join(other) {\n return new ChangedRange(Math.min(this.fromA, other.fromA), Math.max(this.toA, other.toA), Math.min(this.fromB, other.fromB), Math.max(this.toB, other.toB));\n }\n addToSet(set) {\n let i = set.length, me = this;\n for (; i > 0; i--) {\n let range = set[i - 1];\n if (range.fromA > me.toA)\n continue;\n if (range.toA < me.fromA)\n break;\n me = me.join(range);\n set.splice(i - 1, 1);\n }\n set.splice(i, 0, me);\n return set;\n }\n // Extend a set to cover all the content in `ranges`, which is a\n // flat array with each pair of numbers representing fromB/toB\n // positions. These pairs are generated in unchanged ranges, so the\n // offset between doc A and doc B is the same for their start and\n // end points.\n static extendWithRanges(diff, ranges) {\n if (ranges.length == 0)\n return diff;\n let result = [];\n for (let dI = 0, rI = 0, off = 0;;) {\n let nextD = dI < diff.length ? diff[dI].fromB : 1e9;\n let nextR = rI < ranges.length ? ranges[rI] : 1e9;\n let fromB = Math.min(nextD, nextR);\n if (fromB == 1e9)\n break;\n let fromA = fromB + off, toB = fromB, toA = fromA;\n for (;;) {\n if (rI < ranges.length && ranges[rI] <= toB) {\n let end = ranges[rI + 1];\n rI += 2;\n toB = Math.max(toB, end);\n for (let i = dI; i < diff.length && diff[i].fromB <= toB; i++)\n off = diff[i].toA - diff[i].toB;\n toA = Math.max(toA, end + off);\n }\n else if (dI < diff.length && diff[dI].fromB <= toB) {\n let next = diff[dI++];\n toB = Math.max(toB, next.toB);\n toA = Math.max(toA, next.toA);\n off = next.toA - next.toB;\n }\n else {\n break;\n }\n }\n result.push(new ChangedRange(fromA, toA, fromB, toB));\n }\n return result;\n }\n}\n/**\nView [plugins](https://codemirror.net/6/docs/ref/#view.ViewPlugin) are given instances of this\nclass, which describe what happened, whenever the view is updated.\n*/\nclass ViewUpdate {\n constructor(\n /**\n The editor view that the update is associated with.\n */\n view, \n /**\n The new editor state.\n */\n state, \n /**\n The transactions involved in the update. May be empty.\n */\n transactions) {\n this.view = view;\n this.state = state;\n this.transactions = transactions;\n /**\n @internal\n */\n this.flags = 0;\n this.startState = view.state;\n this.changes = ChangeSet.empty(this.startState.doc.length);\n for (let tr of transactions)\n this.changes = this.changes.compose(tr.changes);\n let changedRanges = [];\n this.changes.iterChangedRanges((fromA, toA, fromB, toB) => changedRanges.push(new ChangedRange(fromA, toA, fromB, toB)));\n this.changedRanges = changedRanges;\n }\n /**\n @internal\n */\n static create(view, state, transactions) {\n return new ViewUpdate(view, state, transactions);\n }\n /**\n Tells you whether the [viewport](https://codemirror.net/6/docs/ref/#view.EditorView.viewport) or\n [visible ranges](https://codemirror.net/6/docs/ref/#view.EditorView.visibleRanges) changed in this\n update.\n */\n get viewportChanged() {\n return (this.flags & 4 /* UpdateFlag.Viewport */) > 0;\n }\n /**\n Returns true when\n [`viewportChanged`](https://codemirror.net/6/docs/ref/#view.ViewUpdate.viewportChanged) is true\n and the viewport change is not just the result of mapping it in\n response to document changes.\n */\n get viewportMoved() {\n return (this.flags & 8 /* UpdateFlag.ViewportMoved */) > 0;\n }\n /**\n Indicates whether the height of a block element in the editor\n changed in this update.\n */\n get heightChanged() {\n return (this.flags & 2 /* UpdateFlag.Height */) > 0;\n }\n /**\n Returns true when the document was modified or the size of the\n editor, or elements within the editor, changed.\n */\n get geometryChanged() {\n return this.docChanged || (this.flags & (16 /* UpdateFlag.Geometry */ | 2 /* UpdateFlag.Height */)) > 0;\n }\n /**\n True when this update indicates a focus change.\n */\n get focusChanged() {\n return (this.flags & 1 /* UpdateFlag.Focus */) > 0;\n }\n /**\n Whether the document changed in this update.\n */\n get docChanged() {\n return !this.changes.empty;\n }\n /**\n Whether the selection was explicitly set in this update.\n */\n get selectionSet() {\n return this.transactions.some(tr => tr.selection);\n }\n /**\n @internal\n */\n get empty() { return this.flags == 0 && this.transactions.length == 0; }\n}\n\nconst noChildren = [];\nclass Tile {\n constructor(dom, length, flags = 0) {\n this.dom = dom;\n this.length = length;\n this.flags = flags;\n this.parent = null;\n dom.cmTile = this;\n }\n get breakAfter() { return (this.flags & 1 /* TileFlag.BreakAfter */); }\n get children() { return noChildren; }\n isWidget() { return false; }\n get isHidden() { return false; }\n isComposite() { return false; }\n isLine() { return false; }\n isText() { return false; }\n isBlock() { return false; }\n get domAttrs() { return null; }\n sync(track) {\n this.flags |= 2 /* TileFlag.Synced */;\n if (this.flags & 4 /* TileFlag.AttrsDirty */) {\n this.flags &= ~4 /* TileFlag.AttrsDirty */;\n let attrs = this.domAttrs;\n if (attrs)\n setAttrs(this.dom, attrs);\n }\n }\n toString() {\n return this.constructor.name + (this.children.length ? `(${this.children})` : \"\") + (this.breakAfter ? \"#\" : \"\");\n }\n destroy() { this.parent = null; }\n setDOM(dom) {\n this.dom = dom;\n dom.cmTile = this;\n }\n get posAtStart() {\n return this.parent ? this.parent.posBefore(this) : 0;\n }\n get posAtEnd() {\n return this.posAtStart + this.length;\n }\n posBefore(tile, start = this.posAtStart) {\n let pos = start;\n for (let child of this.children) {\n if (child == tile)\n return pos;\n pos += child.length + child.breakAfter;\n }\n throw new RangeError(\"Invalid child in posBefore\");\n }\n posAfter(tile) {\n return this.posBefore(tile) + tile.length;\n }\n covers(side) { return true; }\n coordsIn(pos, side) { return null; }\n domPosFor(off, side) {\n let index = domIndex(this.dom);\n let after = this.length ? off > 0 : side > 0;\n return new DOMPos(this.parent.dom, index + (after ? 1 : 0), off == 0 || off == this.length);\n }\n markDirty(attrs) {\n this.flags &= ~2 /* TileFlag.Synced */;\n if (attrs)\n this.flags |= 4 /* TileFlag.AttrsDirty */;\n if (this.parent && (this.parent.flags & 2 /* TileFlag.Synced */))\n this.parent.markDirty(false);\n }\n get overrideDOMText() { return null; }\n get root() {\n for (let t = this; t; t = t.parent)\n if (t instanceof DocTile)\n return t;\n return null;\n }\n static get(dom) {\n return dom.cmTile;\n }\n}\nclass CompositeTile extends Tile {\n constructor(dom) {\n super(dom, 0);\n this._children = [];\n }\n isComposite() { return true; }\n get children() { return this._children; }\n get lastChild() { return this.children.length ? this.children[this.children.length - 1] : null; }\n append(child) {\n this.children.push(child);\n child.parent = this;\n }\n sync(track) {\n if (this.flags & 2 /* TileFlag.Synced */)\n return;\n super.sync(track);\n let parent = this.dom, prev = null, next;\n let tracking = (track === null || track === void 0 ? void 0 : track.node) == parent ? track : null;\n let length = 0;\n for (let child of this.children) {\n child.sync(track);\n length += child.length + child.breakAfter;\n next = prev ? prev.nextSibling : parent.firstChild;\n if (tracking && next != child.dom)\n tracking.written = true;\n if (child.dom.parentNode == parent) {\n while (next && next != child.dom)\n next = rm$1(next);\n }\n else {\n parent.insertBefore(child.dom, next);\n }\n prev = child.dom;\n }\n next = prev ? prev.nextSibling : parent.firstChild;\n if (tracking && next)\n tracking.written = true;\n while (next)\n next = rm$1(next);\n this.length = length;\n }\n}\n// Remove a DOM node and return its next sibling.\nfunction rm$1(dom) {\n let next = dom.nextSibling;\n dom.parentNode.removeChild(dom);\n return next;\n}\n// The top-level tile. Its dom property equals view.contentDOM.\nclass DocTile extends CompositeTile {\n constructor(view, dom) {\n super(dom);\n this.view = view;\n }\n owns(tile) {\n for (; tile; tile = tile.parent)\n if (tile == this)\n return true;\n return false;\n }\n isBlock() { return true; }\n nearest(dom) {\n for (;;) {\n if (!dom)\n return null;\n let tile = Tile.get(dom);\n if (tile && this.owns(tile))\n return tile;\n dom = dom.parentNode;\n }\n }\n blockTiles(f) {\n for (let stack = [], cur = this, i = 0, pos = 0;;) {\n if (i == cur.children.length) {\n if (!stack.length)\n return;\n cur = cur.parent;\n if (cur.breakAfter)\n pos++;\n i = stack.pop();\n }\n else {\n let next = cur.children[i++];\n if (next instanceof BlockWrapperTile) {\n stack.push(i);\n cur = next;\n i = 0;\n }\n else {\n let end = pos + next.length;\n let result = f(next, pos);\n if (result !== undefined)\n return result;\n pos = end + next.breakAfter;\n }\n }\n }\n }\n // Find the block at the given position. If side < -1, make sure to\n // stay before block widgets at that position, if side > 1, after\n // such widgets (used for selection drawing, which needs to be able\n // to get coordinates for positions that aren't valid cursor positions).\n resolveBlock(pos, side) {\n let before, beforeOff = -1, after, afterOff = -1;\n this.blockTiles((tile, off) => {\n let end = off + tile.length;\n if (pos >= off && pos <= end) {\n if (tile.isWidget() && side >= -1 && side <= 1) {\n if (tile.flags & 32 /* TileFlag.After */)\n return true;\n if (tile.flags & 16 /* TileFlag.Before */)\n before = undefined;\n }\n if ((off < pos || pos == end && (side < -1 ? tile.length : tile.covers(1))) &&\n (!before || !tile.isWidget() && before.isWidget())) {\n before = tile;\n beforeOff = pos - off;\n }\n if ((end > pos || pos == off && (side > 1 ? tile.length : tile.covers(-1))) &&\n (!after || !tile.isWidget() && after.isWidget())) {\n after = tile;\n afterOff = pos - off;\n }\n }\n });\n if (!before && !after)\n throw new Error(\"No tile at position \" + pos);\n return before && side < 0 || !after ? { tile: before, offset: beforeOff } : { tile: after, offset: afterOff };\n }\n}\nclass BlockWrapperTile extends CompositeTile {\n constructor(dom, wrapper) {\n super(dom);\n this.wrapper = wrapper;\n }\n isBlock() { return true; }\n covers(side) {\n if (!this.children.length)\n return false;\n return side < 0 ? this.children[0].covers(-1) : this.lastChild.covers(1);\n }\n get domAttrs() { return this.wrapper.attributes; }\n static of(wrapper, dom) {\n let tile = new BlockWrapperTile(dom || document.createElement(wrapper.tagName), wrapper);\n if (!dom)\n tile.flags |= 4 /* TileFlag.AttrsDirty */;\n return tile;\n }\n}\nclass LineTile extends CompositeTile {\n constructor(dom, attrs) {\n super(dom);\n this.attrs = attrs;\n }\n isLine() { return true; }\n static start(attrs, dom, keepAttrs) {\n let line = new LineTile(dom || document.createElement(\"div\"), attrs);\n if (!dom || !keepAttrs)\n line.flags |= 4 /* TileFlag.AttrsDirty */;\n return line;\n }\n get domAttrs() { return this.attrs; }\n // Find the tile associated with a given position in this line.\n resolveInline(pos, side, forCoords) {\n let before = null, beforeOff = -1, after = null, afterOff = -1;\n function scan(tile, pos) {\n for (let i = 0, off = 0; i < tile.children.length && off <= pos; i++) {\n let child = tile.children[i], end = off + child.length;\n if (end >= pos) {\n if (child.isComposite()) {\n scan(child, pos - off);\n }\n else if ((!after || after.isHidden && (side > 0 || forCoords && onSameLine(after, child))) &&\n (end > pos || (child.flags & 32 /* TileFlag.After */))) {\n after = child;\n afterOff = pos - off;\n }\n else if (off < pos || (child.flags & 16 /* TileFlag.Before */) && !child.isHidden) {\n before = child;\n beforeOff = pos - off;\n }\n }\n off = end;\n }\n }\n scan(this, pos);\n let target = ((side < 0 ? before : after) || before || after);\n return target ? { tile: target, offset: target == before ? beforeOff : afterOff } : null;\n }\n coordsIn(pos, side) {\n let found = this.resolveInline(pos, side, true);\n if (!found)\n return fallbackRect(this);\n return found.tile.coordsIn(Math.max(0, found.offset), side);\n }\n domIn(pos, side) {\n let found = this.resolveInline(pos, side);\n if (found) {\n let { tile, offset } = found;\n if (this.dom.contains(tile.dom)) {\n if (tile.isText())\n return new DOMPos(tile.dom, Math.min(tile.dom.nodeValue.length, offset));\n return tile.domPosFor(offset, tile.flags & 16 /* TileFlag.Before */ ? 1 : tile.flags & 32 /* TileFlag.After */ ? -1 : side);\n }\n let parent = found.tile.parent, saw = false;\n for (let ch of parent.children) {\n if (saw)\n return new DOMPos(ch.dom, 0);\n if (ch == found.tile) {\n saw = true;\n }\n }\n }\n return new DOMPos(this.dom, 0);\n }\n}\nfunction fallbackRect(tile) {\n let last = tile.dom.lastChild;\n if (!last)\n return tile.dom.getBoundingClientRect();\n let rects = clientRectsFor(last);\n return rects[rects.length - 1] || null;\n}\nfunction onSameLine(a, b) {\n let posA = a.coordsIn(0, 1), posB = b.coordsIn(0, 1);\n return posA && posB && posB.top < posA.bottom;\n}\nclass MarkTile extends CompositeTile {\n constructor(dom, mark) {\n super(dom);\n this.mark = mark;\n }\n get domAttrs() { return this.mark.attrs; }\n static of(mark, dom) {\n let tile = new MarkTile(dom || document.createElement(mark.tagName), mark);\n if (!dom)\n tile.flags |= 4 /* TileFlag.AttrsDirty */;\n return tile;\n }\n}\nclass TextTile extends Tile {\n constructor(dom, text) {\n super(dom, text.length);\n this.text = text;\n }\n sync(track) {\n if (this.flags & 2 /* TileFlag.Synced */)\n return;\n super.sync(track);\n if (this.dom.nodeValue != this.text) {\n if (track && track.node == this.dom)\n track.written = true;\n this.dom.nodeValue = this.text;\n }\n }\n isText() { return true; }\n toString() { return JSON.stringify(this.text); }\n coordsIn(pos, side) {\n let length = this.dom.nodeValue.length;\n if (pos > length)\n pos = length;\n let from = pos, to = pos, flatten = 0;\n if (pos == 0 && side < 0 || pos == length && side >= 0) {\n if (!(browser.chrome || browser.gecko)) { // These browsers reliably return valid rectangles for empty ranges\n if (pos) {\n from--;\n flatten = 1;\n } // FIXME this is wrong in RTL text\n else if (to < length) {\n to++;\n flatten = -1;\n }\n }\n }\n else {\n if (side < 0)\n from--;\n else if (to < length)\n to++;\n }\n let rects = textRange(this.dom, from, to).getClientRects();\n if (!rects.length)\n return null;\n let rect = rects[(flatten ? flatten < 0 : side >= 0) ? 0 : rects.length - 1];\n if (browser.safari && !flatten && rect.width == 0)\n rect = Array.prototype.find.call(rects, r => r.width) || rect;\n return flatten ? flattenRect(rect, flatten < 0) : rect || null;\n }\n static of(text, dom) {\n let tile = new TextTile(dom || document.createTextNode(text), text);\n if (!dom)\n tile.flags |= 2 /* TileFlag.Synced */;\n return tile;\n }\n}\nclass WidgetTile extends Tile {\n constructor(dom, length, widget, flags) {\n super(dom, length, flags);\n this.widget = widget;\n }\n isWidget() { return true; }\n get isHidden() { return this.widget.isHidden; }\n covers(side) {\n if (this.flags & 48 /* TileFlag.PointWidget */)\n return false;\n return (this.flags & (side < 0 ? 64 /* TileFlag.IncStart */ : 128 /* TileFlag.IncEnd */)) > 0;\n }\n coordsIn(pos, side) { return this.coordsInWidget(pos, side, false); }\n coordsInWidget(pos, side, block) {\n let custom = this.widget.coordsAt(this.dom, pos, side);\n if (custom)\n return custom;\n if (block) {\n return flattenRect(this.dom.getBoundingClientRect(), this.length ? pos == 0 : side <= 0);\n }\n else {\n let rects = this.dom.getClientRects(), rect = null;\n if (!rects.length)\n return null;\n let fromBack = (this.flags & 16 /* TileFlag.Before */) ? true : (this.flags & 32 /* TileFlag.After */) ? false : pos > 0;\n for (let i = fromBack ? rects.length - 1 : 0;; i += (fromBack ? -1 : 1)) {\n rect = rects[i];\n if (pos > 0 ? i == 0 : i == rects.length - 1 || rect.top < rect.bottom)\n break;\n }\n return flattenRect(rect, !fromBack);\n }\n }\n get overrideDOMText() {\n if (!this.length)\n return Text.empty;\n let { root } = this;\n if (!root)\n return Text.empty;\n let start = this.posAtStart;\n return root.view.state.doc.slice(start, start + this.length);\n }\n destroy() {\n super.destroy();\n this.widget.destroy(this.dom);\n }\n static of(widget, view, length, flags, dom) {\n if (!dom) {\n dom = widget.toDOM(view);\n if (!widget.editable)\n dom.contentEditable = \"false\";\n }\n return new WidgetTile(dom, length, widget, flags);\n }\n}\n// These are drawn around uneditable widgets to avoid a number of\n// browser bugs that show up when the cursor is directly next to\n// uneditable inline content.\nclass WidgetBufferTile extends Tile {\n constructor(flags) {\n let img = document.createElement(\"img\");\n img.className = \"cm-widgetBuffer\";\n img.setAttribute(\"aria-hidden\", \"true\");\n super(img, 0, flags);\n }\n get isHidden() { return false; }\n get overrideDOMText() { return Text.empty; }\n coordsIn(pos) { return this.dom.getBoundingClientRect(); }\n}\n// Represents a position in the tile tree.\nclass TilePointer {\n constructor(top) {\n this.index = 0;\n this.beforeBreak = false;\n this.parents = [];\n this.tile = top;\n }\n // Advance by the given distance. If side is -1, stop leaving or\n // entering tiles, or skipping zero-length tiles, once the distance\n // has been traversed. When side is 1, leave, enter, or skip\n // everything at the end position.\n advance(dist, side, walker) {\n let { tile, index, beforeBreak, parents } = this;\n while (dist || side > 0) {\n if (!tile.isComposite()) {\n if (index == tile.length) {\n beforeBreak = !!tile.breakAfter;\n ({ tile, index } = parents.pop());\n index++;\n }\n else if (!dist) {\n break;\n }\n else {\n let take = Math.min(dist, tile.length - index);\n if (walker)\n walker.skip(tile, index, index + take);\n dist -= take;\n index += take;\n }\n }\n else if (beforeBreak) {\n if (!dist)\n break;\n if (walker)\n walker.break();\n dist--;\n beforeBreak = false;\n }\n else if (index == tile.children.length) {\n if (!dist && !parents.length)\n break;\n if (walker)\n walker.leave(tile);\n beforeBreak = !!tile.breakAfter;\n ({ tile, index } = parents.pop());\n index++;\n }\n else {\n let next = tile.children[index], brk = next.breakAfter;\n if ((side > 0 ? next.length <= dist : next.length < dist) &&\n (!walker || walker.skip(next, 0, next.length) !== false || !next.isComposite)) {\n beforeBreak = !!brk;\n index++;\n dist -= next.length;\n }\n else {\n parents.push({ tile, index });\n tile = next;\n index = 0;\n if (walker && next.isComposite())\n walker.enter(next);\n }\n }\n }\n this.tile = tile;\n this.index = index;\n this.beforeBreak = beforeBreak;\n return this;\n }\n get root() { return (this.parents.length ? this.parents[0].tile : this.tile); }\n}\n\n// Used to track open block wrappers\nclass OpenWrapper {\n constructor(from, to, wrapper, rank) {\n this.from = from;\n this.to = to;\n this.wrapper = wrapper;\n this.rank = rank;\n }\n}\n// This class builds up a new document tile using input from either\n// iteration over the old tree or iteration over the document +\n// decorations. The add* methods emit elements into the tile\n// structure. To avoid awkward synchronization issues, marks and block\n// wrappers are treated as belonging to to their content, rather than\n// opened/closed independently.\n//\n// All composite tiles that are touched by changes are rebuilt,\n// reusing as much of the old tree (either whole nodes or just DOM\n// elements) as possible. The new tree is built without the Synced\n// flag, and then synced (during which DOM parent/child relations are\n// fixed up, text nodes filled in, and attributes added) in a second\n// phase.\nclass TileBuilder {\n constructor(cache, root, blockWrappers) {\n this.cache = cache;\n this.root = root;\n this.blockWrappers = blockWrappers;\n this.curLine = null;\n this.lastBlock = null;\n this.afterWidget = null;\n this.pos = 0;\n this.wrappers = [];\n this.wrapperPos = 0;\n }\n addText(text, marks, openStart, tile) {\n var _a;\n this.flushBuffer();\n let parent = this.ensureMarks(marks, openStart);\n let prev = parent.lastChild;\n if (prev && prev.isText() && !(prev.flags & 8 /* TileFlag.Composition */)) {\n this.cache.reused.set(prev, 2 /* Reused.DOM */);\n let tile = parent.children[parent.children.length - 1] = new TextTile(prev.dom, prev.text + text);\n tile.parent = parent;\n }\n else {\n parent.append(tile || TextTile.of(text, (_a = this.cache.find(TextTile)) === null || _a === void 0 ? void 0 : _a.dom));\n }\n this.pos += text.length;\n this.afterWidget = null;\n }\n addComposition(composition, context) {\n let line = this.curLine;\n if (line.dom != context.line.dom) {\n line.setDOM(this.cache.reused.has(context.line) ? freeNode(context.line.dom) : context.line.dom);\n this.cache.reused.set(context.line, 2 /* Reused.DOM */);\n }\n let head = line;\n for (let i = context.marks.length - 1; i >= 0; i--) {\n let mark = context.marks[i];\n let last = head.lastChild;\n if (last instanceof MarkTile && last.mark.eq(mark.mark)) {\n if (last.dom != mark.dom)\n last.setDOM(freeNode(mark.dom));\n head = last;\n }\n else {\n if (this.cache.reused.get(mark)) {\n let tile = Tile.get(mark.dom);\n if (tile)\n tile.setDOM(freeNode(mark.dom));\n }\n let nw = MarkTile.of(mark.mark, mark.dom);\n head.append(nw);\n head = nw;\n }\n this.cache.reused.set(mark, 2 /* Reused.DOM */);\n }\n let oldTile = Tile.get(composition.text);\n if (oldTile)\n this.cache.reused.set(oldTile, 2 /* Reused.DOM */);\n let text = new TextTile(composition.text, composition.text.nodeValue);\n text.flags |= 8 /* TileFlag.Composition */;\n head.append(text);\n }\n addInlineWidget(widget, marks, openStart) {\n // Adjacent same-side-facing non-replacing widgets don't need buffers between them\n let noSpace = this.afterWidget && (widget.flags & 48 /* TileFlag.PointWidget */) &&\n (this.afterWidget.flags & 48 /* TileFlag.PointWidget */) == (widget.flags & 48 /* TileFlag.PointWidget */);\n if (!noSpace)\n this.flushBuffer();\n let parent = this.ensureMarks(marks, openStart);\n if (!noSpace && !(widget.flags & 16 /* TileFlag.Before */))\n parent.append(this.getBuffer(1));\n parent.append(widget);\n this.pos += widget.length;\n this.afterWidget = widget;\n }\n addMark(tile, marks, openStart) {\n this.flushBuffer();\n let parent = this.ensureMarks(marks, openStart);\n parent.append(tile);\n this.pos += tile.length;\n this.afterWidget = null;\n }\n addBlockWidget(widget) {\n this.getBlockPos().append(widget);\n this.pos += widget.length;\n this.lastBlock = widget;\n this.endLine();\n }\n continueWidget(length) {\n let widget = this.afterWidget || this.lastBlock;\n widget.length += length;\n this.pos += length;\n }\n addLineStart(attrs, dom) {\n var _a;\n if (!attrs)\n attrs = lineBaseAttrs;\n let tile = LineTile.start(attrs, dom || ((_a = this.cache.find(LineTile)) === null || _a === void 0 ? void 0 : _a.dom), !!dom);\n this.getBlockPos().append(this.lastBlock = this.curLine = tile);\n }\n addLine(tile) {\n this.getBlockPos().append(tile);\n this.pos += tile.length;\n this.lastBlock = tile;\n this.endLine();\n }\n addBreak() {\n this.lastBlock.flags |= 1 /* TileFlag.BreakAfter */;\n this.endLine();\n this.pos++;\n }\n addLineStartIfNotCovered(attrs) {\n if (!this.blockPosCovered())\n this.addLineStart(attrs);\n }\n ensureLine(attrs) {\n if (!this.curLine)\n this.addLineStart(attrs);\n }\n ensureMarks(marks, openStart) {\n var _a;\n let parent = this.curLine;\n for (let i = marks.length - 1; i >= 0; i--) {\n let mark = marks[i], last;\n if (openStart > 0 && (last = parent.lastChild) && last instanceof MarkTile && last.mark.eq(mark)) {\n parent = last;\n openStart--;\n }\n else {\n let tile = MarkTile.of(mark, (_a = this.cache.find(MarkTile, m => m.mark.eq(mark))) === null || _a === void 0 ? void 0 : _a.dom);\n parent.append(tile);\n parent = tile;\n openStart = 0;\n }\n }\n return parent;\n }\n endLine() {\n if (this.curLine) {\n this.flushBuffer();\n let last = this.curLine.lastChild;\n if (!last || !hasContent(this.curLine, false) ||\n last.dom.nodeName != \"BR\" && last.isWidget() && !(browser.ios && hasContent(this.curLine, true)))\n this.curLine.append(this.cache.findWidget(BreakWidget, 0, 32 /* TileFlag.After */) ||\n new WidgetTile(BreakWidget.toDOM(), 0, BreakWidget, 32 /* TileFlag.After */));\n this.curLine = this.afterWidget = null;\n }\n }\n updateBlockWrappers() {\n if (this.wrapperPos > this.pos + 10000 /* C.WrapperReset */) {\n this.blockWrappers.goto(this.pos);\n this.wrappers.length = 0;\n }\n for (let i = this.wrappers.length - 1; i >= 0; i--)\n if (this.wrappers[i].to < this.pos)\n this.wrappers.splice(i, 1);\n for (let cur = this.blockWrappers; cur.value && cur.from <= this.pos; cur.next())\n if (cur.to >= this.pos) {\n let wrap = new OpenWrapper(cur.from, cur.to, cur.value, cur.rank), i = this.wrappers.length;\n while (i > 0 && (this.wrappers[i - 1].rank - wrap.rank || this.wrappers[i - 1].to - wrap.to) < 0)\n i--;\n this.wrappers.splice(i, 0, wrap);\n }\n this.wrapperPos = this.pos;\n }\n getBlockPos() {\n var _a;\n this.updateBlockWrappers();\n let parent = this.root;\n for (let wrap of this.wrappers) {\n let last = parent.lastChild;\n if (wrap.from < this.pos && last instanceof BlockWrapperTile && last.wrapper.eq(wrap.wrapper)) {\n parent = last;\n }\n else {\n let tile = BlockWrapperTile.of(wrap.wrapper, (_a = this.cache.find(BlockWrapperTile, t => t.wrapper.eq(wrap.wrapper))) === null || _a === void 0 ? void 0 : _a.dom);\n parent.append(tile);\n parent = tile;\n }\n }\n return parent;\n }\n blockPosCovered() {\n let last = this.lastBlock;\n return last != null && !last.breakAfter && (!last.isWidget() || (last.flags & (32 /* TileFlag.After */ | 128 /* TileFlag.IncEnd */)) > 0);\n }\n getBuffer(side) {\n let flags = 2 /* TileFlag.Synced */ | (side < 0 ? 16 /* TileFlag.Before */ : 32 /* TileFlag.After */);\n let found = this.cache.find(WidgetBufferTile, undefined, 1 /* Reused.Full */);\n if (found)\n found.flags = flags;\n return found || new WidgetBufferTile(flags);\n }\n flushBuffer() {\n if (this.afterWidget && !(this.afterWidget.flags & 32 /* TileFlag.After */)) {\n this.afterWidget.parent.append(this.getBuffer(-1));\n this.afterWidget = null;\n }\n }\n}\n// Helps getting efficient access to the document text.\nclass TextStream {\n constructor(doc) {\n this.skipCount = 0;\n this.text = \"\";\n this.textOff = 0;\n this.cursor = doc.iter();\n }\n skip(len) {\n // Advance the iterator past the replaced content\n if (this.textOff + len <= this.text.length) {\n this.textOff += len;\n }\n else {\n this.skipCount += len - (this.text.length - this.textOff);\n this.text = \"\";\n this.textOff = 0;\n }\n }\n next(maxLen) {\n if (this.textOff == this.text.length) {\n let { value, lineBreak, done } = this.cursor.next(this.skipCount);\n this.skipCount = 0;\n if (done)\n throw new Error(\"Ran out of text content when drawing inline views\");\n this.text = value;\n let len = this.textOff = Math.min(maxLen, value.length);\n return lineBreak ? null : value.slice(0, len);\n }\n let end = Math.min(this.text.length, this.textOff + maxLen);\n let chars = this.text.slice(this.textOff, end);\n this.textOff = end;\n return chars;\n }\n}\n// Assign the tile classes bucket numbers for caching.\nconst buckets = [WidgetTile, LineTile, TextTile, MarkTile, WidgetBufferTile, BlockWrapperTile, DocTile];\nfor (let i = 0; i < buckets.length; i++)\n buckets[i].bucket = i;\n// Leaf tiles and line tiles may be reused in their entirety. All\n// others will get new tiles allocated, using the old DOM when\n// possible.\nclass TileCache {\n constructor(view) {\n this.view = view;\n // Buckets are circular buffers, using `index` as the current\n // position.\n this.buckets = buckets.map(() => []);\n this.index = buckets.map(() => 0);\n this.reused = new Map;\n }\n // Put a tile in the cache.\n add(tile) {\n let i = tile.constructor.bucket, bucket = this.buckets[i];\n if (bucket.length < 6 /* C.Bucket */)\n bucket.push(tile);\n else\n bucket[this.index[i] = (this.index[i] + 1) % 6 /* C.Bucket */] = tile;\n }\n find(cls, test, type = 2 /* Reused.DOM */) {\n let i = cls.bucket;\n let bucket = this.buckets[i], off = this.index[i];\n for (let j = bucket.length - 1; j >= 0; j--) {\n // Look at the most recently added items first (last-in, first-out)\n let index = (j + off) % bucket.length, tile = bucket[index];\n if ((!test || test(tile)) && !this.reused.has(tile)) {\n bucket.splice(index, 1);\n if (index < off)\n this.index[i]--;\n this.reused.set(tile, type);\n return tile;\n }\n }\n return null;\n }\n findWidget(widget, length, flags) {\n let widgets = this.buckets[0];\n if (widgets.length)\n for (let i = 0, pass = 0;; i++) {\n if (i == widgets.length) {\n if (pass)\n return null;\n pass = 1;\n i = 0;\n }\n let tile = widgets[i];\n if (!this.reused.has(tile) &&\n (pass == 0 ? tile.widget.compare(widget)\n : tile.widget.constructor == widget.constructor && widget.updateDOM(tile.dom, this.view))) {\n widgets.splice(i, 1);\n if (i < this.index[0])\n this.index[0]--;\n this.reused.set(tile, 1 /* Reused.Full */);\n tile.length = length;\n tile.flags = (tile.flags & ~(496 /* TileFlag.Widget */ | 1 /* TileFlag.BreakAfter */)) | flags;\n return tile;\n }\n }\n }\n reuse(tile) {\n this.reused.set(tile, 1 /* Reused.Full */);\n return tile;\n }\n maybeReuse(tile, type = 2 /* Reused.DOM */) {\n if (this.reused.has(tile))\n return undefined;\n this.reused.set(tile, type);\n return tile.dom;\n }\n}\n// This class organizes a pass over the document, guided by the array\n// of replaced ranges. For ranges that haven't changed, it iterates\n// the old tree and copies its content into the new document. For\n// changed ranges, it runs a decoration iterator to guide generation\n// of content.\nclass TileUpdate {\n constructor(view, old, blockWrappers, decorations, disallowBlockEffectsFor) {\n this.view = view;\n this.decorations = decorations;\n this.disallowBlockEffectsFor = disallowBlockEffectsFor;\n this.openWidget = false;\n this.openMarks = 0;\n this.cache = new TileCache(view);\n this.text = new TextStream(view.state.doc);\n this.builder = new TileBuilder(this.cache, new DocTile(view, view.contentDOM), RangeSet.iter(blockWrappers));\n this.cache.reused.set(old, 2 /* Reused.DOM */);\n this.old = new TilePointer(old);\n this.reuseWalker = {\n skip: (tile, from, to) => {\n this.cache.add(tile);\n if (tile.isComposite())\n return false;\n },\n enter: tile => this.cache.add(tile),\n leave: () => { },\n break: () => { }\n };\n }\n run(changes, composition) {\n let compositionContext = composition && this.getCompositionContext(composition.text);\n for (let posA = 0, posB = 0, i = 0;;) {\n let next = i < changes.length ? changes[i++] : null;\n let skipA = next ? next.fromA : this.old.root.length;\n if (skipA > posA) {\n let len = skipA - posA;\n this.preserve(len, !i, !next);\n posA = skipA;\n posB += len;\n }\n if (!next)\n break;\n this.forward(next.fromA, next.toA);\n // Compositions need to be handled specially, forcing the\n // focused text node and its parent nodes to remain stable at\n // that point in the document.\n if (composition && next.fromA <= composition.range.fromA && next.toA >= composition.range.toA) {\n this.emit(posB, composition.range.fromB);\n this.builder.addComposition(composition, compositionContext);\n this.text.skip(composition.range.toB - composition.range.fromB);\n this.emit(composition.range.toB, next.toB);\n }\n else {\n this.emit(posB, next.toB);\n }\n posB = next.toB;\n posA = next.toA;\n }\n if (this.builder.curLine)\n this.builder.endLine();\n return this.builder.root;\n }\n preserve(length, incStart, incEnd) {\n let activeMarks = getMarks(this.old), openMarks = this.openMarks;\n this.old.advance(length, incEnd ? 1 : -1, {\n skip: (tile, from, to) => {\n if (tile.isWidget()) {\n if (this.openWidget) {\n this.builder.continueWidget(to - from);\n }\n else {\n let widget = to > 0 || from < tile.length\n ? WidgetTile.of(tile.widget, this.view, to - from, tile.flags & 496 /* TileFlag.Widget */, this.cache.maybeReuse(tile))\n : this.cache.reuse(tile);\n if (widget.flags & 256 /* TileFlag.Block */) {\n widget.flags &= ~1 /* TileFlag.BreakAfter */;\n this.builder.addBlockWidget(widget);\n }\n else {\n this.builder.ensureLine(null);\n this.builder.addInlineWidget(widget, activeMarks, openMarks);\n openMarks = activeMarks.length;\n }\n }\n }\n else if (tile.isText()) {\n this.builder.ensureLine(null);\n if (!from && to == tile.length) {\n this.builder.addText(tile.text, activeMarks, openMarks, this.cache.reuse(tile));\n }\n else {\n this.cache.add(tile);\n this.builder.addText(tile.text.slice(from, to), activeMarks, openMarks);\n }\n openMarks = activeMarks.length;\n }\n else if (tile.isLine()) {\n tile.flags &= ~1 /* TileFlag.BreakAfter */;\n this.cache.reused.set(tile, 1 /* Reused.Full */);\n this.builder.addLine(tile);\n }\n else if (tile instanceof WidgetBufferTile) {\n this.cache.add(tile);\n }\n else if (tile instanceof MarkTile) {\n this.builder.ensureLine(null);\n this.builder.addMark(tile, activeMarks, openMarks);\n this.cache.reused.set(tile, 1 /* Reused.Full */);\n openMarks = activeMarks.length;\n }\n else {\n return false;\n }\n this.openWidget = false;\n },\n enter: (tile) => {\n if (tile.isLine()) {\n this.builder.addLineStart(tile.attrs, this.cache.maybeReuse(tile));\n }\n else {\n this.cache.add(tile);\n if (tile instanceof MarkTile)\n activeMarks.unshift(tile.mark);\n }\n this.openWidget = false;\n },\n leave: (tile) => {\n if (tile.isLine()) {\n if (activeMarks.length)\n activeMarks.length = openMarks = 0;\n }\n else if (tile instanceof MarkTile) {\n activeMarks.shift();\n openMarks = Math.min(openMarks, activeMarks.length);\n }\n },\n break: () => {\n this.builder.addBreak();\n this.openWidget = false;\n },\n });\n this.text.skip(length);\n }\n emit(from, to) {\n let pendingLineAttrs = null;\n let b = this.builder, markCount = 0;\n let openEnd = RangeSet.spans(this.decorations, from, to, {\n point: (from, to, deco, active, openStart, index) => {\n if (deco instanceof PointDecoration) {\n if (this.disallowBlockEffectsFor[index]) {\n if (deco.block)\n throw new RangeError(\"Block decorations may not be specified via plugins\");\n if (to > this.view.state.doc.lineAt(from).to)\n throw new RangeError(\"Decorations that replace line breaks may not be specified via plugins\");\n }\n markCount = active.length;\n if (openStart > active.length) {\n b.continueWidget(to - from);\n }\n else {\n let widget = deco.widget || (deco.block ? NullWidget.block : NullWidget.inline);\n let flags = widgetFlags(deco);\n let tile = this.cache.findWidget(widget, to - from, flags) || WidgetTile.of(widget, this.view, to - from, flags);\n if (deco.block) {\n if (deco.startSide > 0)\n b.addLineStartIfNotCovered(pendingLineAttrs);\n b.addBlockWidget(tile);\n }\n else {\n b.ensureLine(pendingLineAttrs);\n b.addInlineWidget(tile, active, openStart);\n }\n }\n pendingLineAttrs = null;\n }\n else {\n pendingLineAttrs = addLineDeco(pendingLineAttrs, deco);\n }\n if (to > from)\n this.text.skip(to - from);\n },\n span: (from, to, active, openStart) => {\n for (let pos = from; pos < to;) {\n let chars = this.text.next(Math.min(512 /* C.Chunk */, to - pos));\n if (chars == null) { // Line break\n b.addLineStartIfNotCovered(pendingLineAttrs);\n b.addBreak();\n pos++;\n }\n else {\n b.ensureLine(pendingLineAttrs);\n b.addText(chars, active, openStart);\n pos += chars.length;\n }\n pendingLineAttrs = null;\n }\n }\n });\n b.addLineStartIfNotCovered(pendingLineAttrs);\n this.openWidget = openEnd > markCount;\n this.openMarks = openEnd;\n }\n forward(from, to) {\n if (to - from <= 10) {\n this.old.advance(to - from, 1, this.reuseWalker);\n }\n else {\n this.old.advance(5, -1, this.reuseWalker);\n this.old.advance(to - from - 10, -1);\n this.old.advance(5, 1, this.reuseWalker);\n }\n }\n getCompositionContext(text) {\n let marks = [], line = null;\n for (let parent = text.parentNode;; parent = parent.parentNode) {\n let tile = Tile.get(parent);\n if (parent == this.view.contentDOM)\n break;\n if (tile instanceof MarkTile)\n marks.push(tile);\n else if (tile === null || tile === void 0 ? void 0 : tile.isLine())\n line = tile;\n else if (parent.nodeName == \"DIV\" && !line && parent != this.view.contentDOM)\n line = new LineTile(parent, lineBaseAttrs);\n else\n marks.push(MarkTile.of(new MarkDecoration({ tagName: parent.nodeName.toLowerCase(), attributes: getAttrs(parent) }), parent));\n }\n return { line: line, marks };\n }\n}\nfunction hasContent(tile, requireText) {\n let scan = (tile) => {\n for (let ch of tile.children)\n if ((requireText ? ch.isText() : ch.length) || scan(ch))\n return true;\n return false;\n };\n return scan(tile);\n}\nfunction widgetFlags(deco) {\n let flags = deco.isReplace ? (deco.startSide < 0 ? 64 /* TileFlag.IncStart */ : 0) | (deco.endSide > 0 ? 128 /* TileFlag.IncEnd */ : 0)\n : (deco.startSide > 0 ? 32 /* TileFlag.After */ : 16 /* TileFlag.Before */);\n if (deco.block)\n flags |= 256 /* TileFlag.Block */;\n return flags;\n}\nconst lineBaseAttrs = { class: \"cm-line\" };\nfunction addLineDeco(value, deco) {\n let attrs = deco.spec.attributes, cls = deco.spec.class;\n if (!attrs && !cls)\n return value;\n if (!value)\n value = { class: \"cm-line\" };\n if (attrs)\n combineAttrs(attrs, value);\n if (cls)\n value.class += \" \" + cls;\n return value;\n}\nfunction getMarks(ptr) {\n let found = [];\n for (let i = ptr.parents.length; i > 1; i--) {\n let tile = i == ptr.parents.length ? ptr.tile : ptr.parents[i].tile;\n if (tile instanceof MarkTile)\n found.push(tile.mark);\n }\n return found;\n}\nfunction freeNode(node) {\n let tile = Tile.get(node);\n if (tile)\n tile.setDOM(node.cloneNode());\n return node;\n}\nclass NullWidget extends WidgetType {\n constructor(tag) {\n super();\n this.tag = tag;\n }\n eq(other) { return other.tag == this.tag; }\n toDOM() { return document.createElement(this.tag); }\n updateDOM(elt) { return elt.nodeName.toLowerCase() == this.tag; }\n get isHidden() { return true; }\n}\nNullWidget.inline = /*@__PURE__*/new NullWidget(\"span\");\nNullWidget.block = /*@__PURE__*/new NullWidget(\"div\");\nconst BreakWidget = /*@__PURE__*/new class extends WidgetType {\n toDOM() { return document.createElement(\"br\"); }\n get isHidden() { return true; }\n get editable() { return true; }\n};\n\nclass DocView {\n constructor(view) {\n this.view = view;\n this.decorations = [];\n this.blockWrappers = [];\n this.dynamicDecorationMap = [false];\n this.domChanged = null;\n this.hasComposition = null;\n this.editContextFormatting = Decoration.none;\n this.lastCompositionAfterCursor = false;\n // Track a minimum width for the editor. When measuring sizes in\n // measureVisibleLineHeights, this is updated to point at the width\n // of a given element and its extent in the document. When a change\n // happens in that range, these are reset. That way, once we've seen\n // a line/element of a given length, we keep the editor wide enough\n // to fit at least that element, until it is changed, at which point\n // we forget it again.\n this.minWidth = 0;\n this.minWidthFrom = 0;\n this.minWidthTo = 0;\n // Track whether the DOM selection was set in a lossy way, so that\n // we don't mess it up when reading it back it\n this.impreciseAnchor = null;\n this.impreciseHead = null;\n this.forceSelection = false;\n // Used by the resize observer to ignore resizes that we caused\n // ourselves\n this.lastUpdate = Date.now();\n this.updateDeco();\n this.tile = new DocTile(view, view.contentDOM);\n this.updateInner([new ChangedRange(0, 0, 0, view.state.doc.length)], null);\n }\n // Update the document view to a given state.\n update(update) {\n var _a;\n let changedRanges = update.changedRanges;\n if (this.minWidth > 0 && changedRanges.length) {\n if (!changedRanges.every(({ fromA, toA }) => toA < this.minWidthFrom || fromA > this.minWidthTo)) {\n this.minWidth = this.minWidthFrom = this.minWidthTo = 0;\n }\n else {\n this.minWidthFrom = update.changes.mapPos(this.minWidthFrom, 1);\n this.minWidthTo = update.changes.mapPos(this.minWidthTo, 1);\n }\n }\n this.updateEditContextFormatting(update);\n let readCompositionAt = -1;\n if (this.view.inputState.composing >= 0 && !this.view.observer.editContext) {\n if ((_a = this.domChanged) === null || _a === void 0 ? void 0 : _a.newSel)\n readCompositionAt = this.domChanged.newSel.head;\n else if (!touchesComposition(update.changes, this.hasComposition) && !update.selectionSet)\n readCompositionAt = update.state.selection.main.head;\n }\n let composition = readCompositionAt > -1 ? findCompositionRange(this.view, update.changes, readCompositionAt) : null;\n this.domChanged = null;\n if (this.hasComposition) {\n let { from, to } = this.hasComposition;\n changedRanges = new ChangedRange(from, to, update.changes.mapPos(from, -1), update.changes.mapPos(to, 1))\n .addToSet(changedRanges.slice());\n }\n this.hasComposition = composition ? { from: composition.range.fromB, to: composition.range.toB } : null;\n // When the DOM nodes around the selection are moved to another\n // parent, Chrome sometimes reports a different selection through\n // getSelection than the one that it actually shows to the user.\n // This forces a selection update when lines are joined to work\n // around that. Issue #54\n if ((browser.ie || browser.chrome) && !composition && update &&\n update.state.doc.lines != update.startState.doc.lines)\n this.forceSelection = true;\n let prevDeco = this.decorations, prevWrappers = this.blockWrappers;\n this.updateDeco();\n let decoDiff = findChangedDeco(prevDeco, this.decorations, update.changes);\n if (decoDiff.length)\n changedRanges = ChangedRange.extendWithRanges(changedRanges, decoDiff);\n let blockDiff = findChangedWrappers(prevWrappers, this.blockWrappers, update.changes);\n if (blockDiff.length)\n changedRanges = ChangedRange.extendWithRanges(changedRanges, blockDiff);\n if (composition && !changedRanges.some(r => r.fromA <= composition.range.fromA && r.toA >= composition.range.toA))\n changedRanges = composition.range.addToSet(changedRanges.slice());\n if ((this.tile.flags & 2 /* TileFlag.Synced */) && changedRanges.length == 0) {\n return false;\n }\n else {\n this.updateInner(changedRanges, composition);\n if (update.transactions.length)\n this.lastUpdate = Date.now();\n return true;\n }\n }\n // Used by update and the constructor do perform the actual DOM\n // update\n updateInner(changes, composition) {\n this.view.viewState.mustMeasureContent = true;\n let { observer } = this.view;\n observer.ignore(() => {\n if (composition || changes.length) {\n let oldTile = this.tile;\n let builder = new TileUpdate(this.view, oldTile, this.blockWrappers, this.decorations, this.dynamicDecorationMap);\n this.tile = builder.run(changes, composition);\n destroyDropped(oldTile, builder.cache.reused);\n }\n // Lock the height during redrawing, since Chrome sometimes\n // messes with the scroll position during DOM mutation (though\n // no relayout is triggered and I cannot imagine how it can\n // recompute the scroll position without a layout)\n this.tile.dom.style.height = this.view.viewState.contentHeight / this.view.scaleY + \"px\";\n this.tile.dom.style.flexBasis = this.minWidth ? this.minWidth + \"px\" : \"\";\n // Chrome will sometimes, when DOM mutations occur directly\n // around the selection, get confused and report a different\n // selection from the one it displays (issue #218). This tries\n // to detect that situation.\n let track = browser.chrome || browser.ios ? { node: observer.selectionRange.focusNode, written: false } : undefined;\n this.tile.sync(track);\n if (track && (track.written || observer.selectionRange.focusNode != track.node || !this.tile.dom.contains(track.node)))\n this.forceSelection = true;\n this.tile.dom.style.height = \"\";\n });\n let gaps = [];\n if (this.view.viewport.from || this.view.viewport.to < this.view.state.doc.length)\n for (let child of this.tile.children)\n if (child.isWidget() && child.widget instanceof BlockGapWidget)\n gaps.push(child.dom);\n observer.updateGaps(gaps);\n }\n updateEditContextFormatting(update) {\n this.editContextFormatting = this.editContextFormatting.map(update.changes);\n for (let tr of update.transactions)\n for (let effect of tr.effects)\n if (effect.is(setEditContextFormatting)) {\n this.editContextFormatting = effect.value;\n }\n }\n // Sync the DOM selection to this.state.selection\n updateSelection(mustRead = false, fromPointer = false) {\n if (mustRead || !this.view.observer.selectionRange.focusNode)\n this.view.observer.readSelectionRange();\n let { dom } = this.tile;\n let activeElt = this.view.root.activeElement, focused = activeElt == dom;\n let selectionNotFocus = !focused && !(this.view.state.facet(editable) || dom.tabIndex > -1) &&\n hasSelection(dom, this.view.observer.selectionRange) && !(activeElt && dom.contains(activeElt));\n if (!(focused || fromPointer || selectionNotFocus))\n return;\n let force = this.forceSelection;\n this.forceSelection = false;\n let main = this.view.state.selection.main, anchor, head;\n if (main.empty) {\n head = anchor = this.inlineDOMNearPos(main.anchor, main.assoc || 1);\n }\n else {\n head = this.inlineDOMNearPos(main.head, main.head == main.from ? 1 : -1);\n anchor = this.inlineDOMNearPos(main.anchor, main.anchor == main.from ? 1 : -1);\n }\n // Always reset on Firefox when next to an uneditable node to\n // avoid invisible cursor bugs (#111)\n if (browser.gecko && main.empty && !this.hasComposition && betweenUneditable(anchor)) {\n let dummy = document.createTextNode(\"\");\n this.view.observer.ignore(() => anchor.node.insertBefore(dummy, anchor.node.childNodes[anchor.offset] || null));\n anchor = head = new DOMPos(dummy, 0);\n force = true;\n }\n let domSel = this.view.observer.selectionRange;\n // If the selection is already here, or in an equivalent position, don't touch it\n if (force || !domSel.focusNode || (!isEquivalentPosition(anchor.node, anchor.offset, domSel.anchorNode, domSel.anchorOffset) ||\n !isEquivalentPosition(head.node, head.offset, domSel.focusNode, domSel.focusOffset)) && !this.suppressWidgetCursorChange(domSel, main)) {\n this.view.observer.ignore(() => {\n // Chrome Android will hide the virtual keyboard when tapping\n // inside an uneditable node, and not bring it back when we\n // move the cursor to its proper position. This tries to\n // restore the keyboard by cycling focus.\n if (browser.android && browser.chrome && dom.contains(domSel.focusNode) &&\n inUneditable(domSel.focusNode, dom)) {\n dom.blur();\n dom.focus({ preventScroll: true });\n }\n let rawSel = getSelection(this.view.root);\n if (!rawSel) ;\n else if (main.empty) {\n // Work around https://bugzilla.mozilla.org/show_bug.cgi?id=1612076\n if (browser.gecko) {\n let nextTo = nextToUneditable(anchor.node, anchor.offset);\n if (nextTo && nextTo != (1 /* NextTo.Before */ | 2 /* NextTo.After */)) {\n let text = (nextTo == 1 /* NextTo.Before */ ? textNodeBefore : textNodeAfter)(anchor.node, anchor.offset);\n if (text)\n anchor = new DOMPos(text.node, text.offset);\n }\n }\n rawSel.collapse(anchor.node, anchor.offset);\n if (main.bidiLevel != null && rawSel.caretBidiLevel !== undefined)\n rawSel.caretBidiLevel = main.bidiLevel;\n }\n else if (rawSel.extend) {\n // Selection.extend can be used to create an 'inverted' selection\n // (one where the focus is before the anchor), but not all\n // browsers support it yet.\n rawSel.collapse(anchor.node, anchor.offset);\n // Safari will ignore the call above when the editor is\n // hidden, and then raise an error on the call to extend\n // (#940).\n try {\n rawSel.extend(head.node, head.offset);\n }\n catch (_) { }\n }\n else {\n // Primitive (IE) way\n let range = document.createRange();\n if (main.anchor > main.head)\n [anchor, head] = [head, anchor];\n range.setEnd(head.node, head.offset);\n range.setStart(anchor.node, anchor.offset);\n rawSel.removeAllRanges();\n rawSel.addRange(range);\n }\n if (selectionNotFocus && this.view.root.activeElement == dom) {\n dom.blur();\n if (activeElt)\n activeElt.focus();\n }\n });\n this.view.observer.setSelectionRange(anchor, head);\n }\n this.impreciseAnchor = anchor.precise ? null : new DOMPos(domSel.anchorNode, domSel.anchorOffset);\n this.impreciseHead = head.precise ? null : new DOMPos(domSel.focusNode, domSel.focusOffset);\n }\n // If a zero-length widget is inserted next to the cursor during\n // composition, avoid moving it across it and disrupting the\n // composition.\n suppressWidgetCursorChange(sel, cursor) {\n return this.hasComposition && cursor.empty &&\n isEquivalentPosition(sel.focusNode, sel.focusOffset, sel.anchorNode, sel.anchorOffset) &&\n this.posFromDOM(sel.focusNode, sel.focusOffset) == cursor.head;\n }\n enforceCursorAssoc() {\n if (this.hasComposition)\n return;\n let { view } = this, cursor = view.state.selection.main;\n let sel = getSelection(view.root);\n let { anchorNode, anchorOffset } = view.observer.selectionRange;\n if (!sel || !cursor.empty || !cursor.assoc || !sel.modify)\n return;\n let line = this.lineAt(cursor.head, cursor.assoc);\n if (!line)\n return;\n let lineStart = line.posAtStart;\n if (cursor.head == lineStart || cursor.head == lineStart + line.length)\n return;\n let before = this.coordsAt(cursor.head, -1), after = this.coordsAt(cursor.head, 1);\n if (!before || !after || before.bottom > after.top)\n return;\n let dom = this.domAtPos(cursor.head + cursor.assoc, cursor.assoc);\n sel.collapse(dom.node, dom.offset);\n sel.modify(\"move\", cursor.assoc < 0 ? \"forward\" : \"backward\", \"lineboundary\");\n // This can go wrong in corner cases like single-character lines,\n // so check and reset if necessary.\n view.observer.readSelectionRange();\n let newRange = view.observer.selectionRange;\n if (view.docView.posFromDOM(newRange.anchorNode, newRange.anchorOffset) != cursor.from)\n sel.collapse(anchorNode, anchorOffset);\n }\n posFromDOM(node, offset) {\n let tile = this.tile.nearest(node);\n if (!tile)\n return this.tile.dom.compareDocumentPosition(node) & 2 /* PRECEDING */ ? 0 : this.view.state.doc.length;\n let start = tile.posAtStart;\n if (tile.isComposite()) {\n let after;\n if (node == tile.dom) {\n after = tile.dom.childNodes[offset];\n }\n else {\n let bias = maxOffset(node) == 0 ? 0 : offset == 0 ? -1 : 1;\n for (;;) {\n let parent = node.parentNode;\n if (parent == tile.dom)\n break;\n if (bias == 0 && parent.firstChild != parent.lastChild) {\n if (node == parent.firstChild)\n bias = -1;\n else\n bias = 1;\n }\n node = parent;\n }\n if (bias < 0)\n after = node;\n else\n after = node.nextSibling;\n }\n if (after == tile.dom.firstChild)\n return start;\n while (after && !Tile.get(after))\n after = after.nextSibling;\n if (!after)\n return start + tile.length;\n for (let i = 0, pos = start;; i++) {\n let child = tile.children[i];\n if (child.dom == after)\n return pos;\n pos += child.length + child.breakAfter;\n }\n }\n else if (tile.isText()) {\n return node == tile.dom ? start + offset : start + (offset ? tile.length : 0);\n }\n else {\n return start;\n }\n }\n domAtPos(pos, side) {\n let { tile, offset } = this.tile.resolveBlock(pos, side);\n if (tile.isWidget())\n return tile.domPosFor(pos, side);\n return tile.domIn(offset, side);\n }\n inlineDOMNearPos(pos, side) {\n let before, beforeOff = -1, beforeBad = false;\n let after, afterOff = -1, afterBad = false;\n this.tile.blockTiles((tile, off) => {\n if (tile.isWidget()) {\n if ((tile.flags & 32 /* TileFlag.After */) && off >= pos)\n return true;\n if (tile.flags & 16 /* TileFlag.Before */)\n beforeBad = true;\n }\n else {\n let end = off + tile.length;\n if (off <= pos) {\n before = tile;\n beforeOff = pos - off;\n beforeBad = end < pos;\n }\n if (end >= pos && !after) {\n after = tile;\n afterOff = pos - off;\n afterBad = off > pos;\n }\n if (off > pos && after)\n return true;\n }\n });\n if (!before && !after)\n return this.domAtPos(pos, side);\n if (beforeBad && after)\n before = null;\n else if (afterBad && before)\n after = null;\n return before && side < 0 || !after ? before.domIn(beforeOff, side) : after.domIn(afterOff, side);\n }\n coordsAt(pos, side) {\n let { tile, offset } = this.tile.resolveBlock(pos, side);\n if (tile.isWidget()) {\n if (tile.widget instanceof BlockGapWidget)\n return null;\n return tile.coordsInWidget(offset, side, true);\n }\n return tile.coordsIn(offset, side);\n }\n lineAt(pos, side) {\n let { tile } = this.tile.resolveBlock(pos, side);\n return tile.isLine() ? tile : null;\n }\n coordsForChar(pos) {\n let { tile, offset } = this.tile.resolveBlock(pos, 1);\n if (!tile.isLine())\n return null;\n function scan(tile, offset) {\n if (tile.isComposite()) {\n for (let ch of tile.children) {\n if (ch.length >= offset) {\n let found = scan(ch, offset);\n if (found)\n return found;\n }\n offset -= ch.length;\n if (offset < 0)\n break;\n }\n }\n else if (tile.isText() && offset < tile.length) {\n let end = findClusterBreak(tile.text, offset);\n if (end == offset)\n return null;\n let rects = textRange(tile.dom, offset, end).getClientRects();\n for (let i = 0; i < rects.length; i++) {\n let rect = rects[i];\n if (i == rects.length - 1 || rect.top < rect.bottom && rect.left < rect.right)\n return rect;\n }\n }\n return null;\n }\n return scan(tile, offset);\n }\n measureVisibleLineHeights(viewport) {\n let result = [], { from, to } = viewport;\n let contentWidth = this.view.contentDOM.clientWidth;\n let isWider = contentWidth > Math.max(this.view.scrollDOM.clientWidth, this.minWidth) + 1;\n let widest = -1, ltr = this.view.textDirection == Direction.LTR;\n let spaceAbove = 0;\n let scan = (tile, pos, measureBounds) => {\n for (let i = 0; i < tile.children.length; i++) {\n if (pos > to)\n break;\n let child = tile.children[i], end = pos + child.length;\n let childRect = child.dom.getBoundingClientRect(), { height } = childRect;\n if (measureBounds && !i)\n spaceAbove += childRect.top - measureBounds.top;\n if (child instanceof BlockWrapperTile) {\n if (end > from)\n scan(child, pos, childRect);\n }\n else if (pos >= from) {\n if (spaceAbove > 0)\n result.push(-spaceAbove);\n result.push(height + spaceAbove);\n spaceAbove = 0;\n if (isWider) {\n let last = child.dom.lastChild;\n let rects = last ? clientRectsFor(last) : [];\n if (rects.length) {\n let rect = rects[rects.length - 1];\n let width = ltr ? rect.right - childRect.left : childRect.right - rect.left;\n if (width > widest) {\n widest = width;\n this.minWidth = contentWidth;\n this.minWidthFrom = pos;\n this.minWidthTo = end;\n }\n }\n }\n }\n if (measureBounds && i == tile.children.length - 1)\n spaceAbove += measureBounds.bottom - childRect.bottom;\n pos = end + child.breakAfter;\n }\n };\n scan(this.tile, 0, null);\n return result;\n }\n textDirectionAt(pos) {\n let { tile } = this.tile.resolveBlock(pos, 1);\n return getComputedStyle(tile.dom).direction == \"rtl\" ? Direction.RTL : Direction.LTR;\n }\n measureTextSize() {\n let lineMeasure = this.tile.blockTiles(tile => {\n if (tile.isLine() && tile.children.length && tile.length <= 20) {\n let totalWidth = 0, textHeight;\n for (let child of tile.children) {\n if (!child.isText() || /[^ -~]/.test(child.text))\n return undefined;\n let rects = clientRectsFor(child.dom);\n if (rects.length != 1)\n return undefined;\n totalWidth += rects[0].width;\n textHeight = rects[0].height;\n }\n if (totalWidth)\n return {\n lineHeight: tile.dom.getBoundingClientRect().height,\n charWidth: totalWidth / tile.length,\n textHeight\n };\n }\n });\n if (lineMeasure)\n return lineMeasure;\n // If no workable line exists, force a layout of a measurable element\n let dummy = document.createElement(\"div\"), lineHeight, charWidth, textHeight;\n dummy.className = \"cm-line\";\n dummy.style.width = \"99999px\";\n dummy.style.position = \"absolute\";\n dummy.textContent = \"abc def ghi jkl mno pqr stu\";\n this.view.observer.ignore(() => {\n this.tile.dom.appendChild(dummy);\n let rect = clientRectsFor(dummy.firstChild)[0];\n lineHeight = dummy.getBoundingClientRect().height;\n charWidth = rect && rect.width ? rect.width / 27 : 7;\n textHeight = rect && rect.height ? rect.height : lineHeight;\n dummy.remove();\n });\n return { lineHeight, charWidth, textHeight };\n }\n computeBlockGapDeco() {\n let deco = [], vs = this.view.viewState;\n for (let pos = 0, i = 0;; i++) {\n let next = i == vs.viewports.length ? null : vs.viewports[i];\n let end = next ? next.from - 1 : this.view.state.doc.length;\n if (end > pos) {\n let height = (vs.lineBlockAt(end).bottom - vs.lineBlockAt(pos).top) / this.view.scaleY;\n deco.push(Decoration.replace({\n widget: new BlockGapWidget(height),\n block: true,\n inclusive: true,\n isBlockGap: true,\n }).range(pos, end));\n }\n if (!next)\n break;\n pos = next.to + 1;\n }\n return Decoration.set(deco);\n }\n updateDeco() {\n let i = 1;\n let allDeco = this.view.state.facet(decorations).map(d => {\n let dynamic = this.dynamicDecorationMap[i++] = typeof d == \"function\";\n return dynamic ? d(this.view) : d;\n });\n let dynamicOuter = false, outerDeco = this.view.state.facet(outerDecorations).map((d, i) => {\n let dynamic = typeof d == \"function\";\n if (dynamic)\n dynamicOuter = true;\n return dynamic ? d(this.view) : d;\n });\n if (outerDeco.length) {\n this.dynamicDecorationMap[i++] = dynamicOuter;\n allDeco.push(RangeSet.join(outerDeco));\n }\n this.decorations = [\n this.editContextFormatting,\n ...allDeco,\n this.computeBlockGapDeco(),\n this.view.viewState.lineGapDeco\n ];\n while (i < this.decorations.length)\n this.dynamicDecorationMap[i++] = false;\n this.blockWrappers = this.view.state.facet(blockWrappers).map(v => typeof v == \"function\" ? v(this.view) : v);\n }\n scrollIntoView(target) {\n if (target.isSnapshot) {\n let ref = this.view.viewState.lineBlockAt(target.range.head);\n this.view.scrollDOM.scrollTop = ref.top - target.yMargin;\n this.view.scrollDOM.scrollLeft = target.xMargin;\n return;\n }\n for (let handler of this.view.state.facet(scrollHandler)) {\n try {\n if (handler(this.view, target.range, target))\n return true;\n }\n catch (e) {\n logException(this.view.state, e, \"scroll handler\");\n }\n }\n let { range } = target;\n let rect = this.coordsAt(range.head, range.empty ? range.assoc : range.head > range.anchor ? -1 : 1), other;\n if (!rect)\n return;\n if (!range.empty && (other = this.coordsAt(range.anchor, range.anchor > range.head ? -1 : 1)))\n rect = { left: Math.min(rect.left, other.left), top: Math.min(rect.top, other.top),\n right: Math.max(rect.right, other.right), bottom: Math.max(rect.bottom, other.bottom) };\n let margins = getScrollMargins(this.view);\n let targetRect = {\n left: rect.left - margins.left, top: rect.top - margins.top,\n right: rect.right + margins.right, bottom: rect.bottom + margins.bottom\n };\n let { offsetWidth, offsetHeight } = this.view.scrollDOM;\n scrollRectIntoView(this.view.scrollDOM, targetRect, range.head < range.anchor ? -1 : 1, target.x, target.y, Math.max(Math.min(target.xMargin, offsetWidth), -offsetWidth), Math.max(Math.min(target.yMargin, offsetHeight), -offsetHeight), this.view.textDirection == Direction.LTR);\n }\n lineHasWidget(pos) {\n let scan = (child) => child.isWidget() || child.children.some(scan);\n return scan(this.tile.resolveBlock(pos, 1).tile);\n }\n destroy() {\n destroyDropped(this.tile);\n }\n}\nfunction destroyDropped(tile, reused) {\n let r = reused === null || reused === void 0 ? void 0 : reused.get(tile);\n if (r != 1 /* Reused.Full */) {\n if (r == null)\n tile.destroy();\n for (let ch of tile.children)\n destroyDropped(ch, reused);\n }\n}\nfunction betweenUneditable(pos) {\n return pos.node.nodeType == 1 && pos.node.firstChild &&\n (pos.offset == 0 || pos.node.childNodes[pos.offset - 1].contentEditable == \"false\") &&\n (pos.offset == pos.node.childNodes.length || pos.node.childNodes[pos.offset].contentEditable == \"false\");\n}\nfunction findCompositionNode(view, headPos) {\n let sel = view.observer.selectionRange;\n if (!sel.focusNode)\n return null;\n let textBefore = textNodeBefore(sel.focusNode, sel.focusOffset);\n let textAfter = textNodeAfter(sel.focusNode, sel.focusOffset);\n let textNode = textBefore || textAfter;\n if (textAfter && textBefore && textAfter.node != textBefore.node) {\n let tileAfter = Tile.get(textAfter.node);\n if (!tileAfter || tileAfter.isText() && tileAfter.text != textAfter.node.nodeValue) {\n textNode = textAfter;\n }\n else if (view.docView.lastCompositionAfterCursor) {\n let tileBefore = Tile.get(textBefore.node);\n if (!(!tileBefore || tileBefore.isText() && tileBefore.text != textBefore.node.nodeValue))\n textNode = textAfter;\n }\n }\n view.docView.lastCompositionAfterCursor = textNode != textBefore;\n if (!textNode)\n return null;\n let from = headPos - textNode.offset;\n return { from, to: from + textNode.node.nodeValue.length, node: textNode.node };\n}\nfunction findCompositionRange(view, changes, headPos) {\n let found = findCompositionNode(view, headPos);\n if (!found)\n return null;\n let { node: textNode, from, to } = found, text = textNode.nodeValue;\n // Don't try to preserve multi-line compositions\n if (/[\\n\\r]/.test(text))\n return null;\n if (view.state.doc.sliceString(found.from, found.to) != text)\n return null;\n let inv = changes.invertedDesc;\n return { range: new ChangedRange(inv.mapPos(from), inv.mapPos(to), from, to), text: textNode };\n}\nfunction nextToUneditable(node, offset) {\n if (node.nodeType != 1)\n return 0;\n return (offset && node.childNodes[offset - 1].contentEditable == \"false\" ? 1 /* NextTo.Before */ : 0) |\n (offset < node.childNodes.length && node.childNodes[offset].contentEditable == \"false\" ? 2 /* NextTo.After */ : 0);\n}\nlet DecorationComparator$1 = class DecorationComparator {\n constructor() {\n this.changes = [];\n }\n compareRange(from, to) { addRange(from, to, this.changes); }\n comparePoint(from, to) { addRange(from, to, this.changes); }\n boundChange(pos) { addRange(pos, pos, this.changes); }\n};\nfunction findChangedDeco(a, b, diff) {\n let comp = new DecorationComparator$1;\n RangeSet.compare(a, b, diff, comp);\n return comp.changes;\n}\nclass WrapperComparator {\n constructor() {\n this.changes = [];\n }\n compareRange(from, to) { addRange(from, to, this.changes); }\n comparePoint() { }\n boundChange(pos) { addRange(pos, pos, this.changes); }\n}\nfunction findChangedWrappers(a, b, diff) {\n let comp = new WrapperComparator;\n RangeSet.compare(a, b, diff, comp);\n return comp.changes;\n}\nfunction inUneditable(node, inside) {\n for (let cur = node; cur && cur != inside; cur = cur.assignedSlot || cur.parentNode) {\n if (cur.nodeType == 1 && cur.contentEditable == 'false') {\n return true;\n }\n }\n return false;\n}\nfunction touchesComposition(changes, composition) {\n let touched = false;\n if (composition)\n changes.iterChangedRanges((from, to) => {\n if (from < composition.to && to > composition.from)\n touched = true;\n });\n return touched;\n}\nclass BlockGapWidget extends WidgetType {\n constructor(height) {\n super();\n this.height = height;\n }\n toDOM() {\n let elt = document.createElement(\"div\");\n elt.className = \"cm-gap\";\n this.updateDOM(elt);\n return elt;\n }\n eq(other) { return other.height == this.height; }\n updateDOM(elt) {\n elt.style.height = this.height + \"px\";\n return true;\n }\n get editable() { return true; }\n get estimatedHeight() { return this.height; }\n ignoreEvent() { return false; }\n}\n\nfunction groupAt(state, pos, bias = 1) {\n let categorize = state.charCategorizer(pos);\n let line = state.doc.lineAt(pos), linePos = pos - line.from;\n if (line.length == 0)\n return EditorSelection.cursor(pos);\n if (linePos == 0)\n bias = 1;\n else if (linePos == line.length)\n bias = -1;\n let from = linePos, to = linePos;\n if (bias < 0)\n from = findClusterBreak(line.text, linePos, false);\n else\n to = findClusterBreak(line.text, linePos);\n let cat = categorize(line.text.slice(from, to));\n while (from > 0) {\n let prev = findClusterBreak(line.text, from, false);\n if (categorize(line.text.slice(prev, from)) != cat)\n break;\n from = prev;\n }\n while (to < line.length) {\n let next = findClusterBreak(line.text, to);\n if (categorize(line.text.slice(to, next)) != cat)\n break;\n to = next;\n }\n return EditorSelection.range(from + line.from, to + line.from);\n}\nfunction posAtCoordsImprecise(view, contentRect, block, x, y) {\n let into = Math.round((x - contentRect.left) * view.defaultCharacterWidth);\n if (view.lineWrapping && block.height > view.defaultLineHeight * 1.5) {\n let textHeight = view.viewState.heightOracle.textHeight;\n let line = Math.floor((y - block.top - (view.defaultLineHeight - textHeight) * 0.5) / textHeight);\n into += line * view.viewState.heightOracle.lineLength;\n }\n let content = view.state.sliceDoc(block.from, block.to);\n return block.from + findColumn(content, into, view.state.tabSize);\n}\nfunction blockAt(view, pos, side) {\n let line = view.lineBlockAt(pos);\n if (Array.isArray(line.type)) {\n let best;\n for (let l of line.type) {\n if (l.from > pos)\n break;\n if (l.to < pos)\n continue;\n if (l.from < pos && l.to > pos)\n return l;\n if (!best || (l.type == BlockType.Text && (best.type != l.type || (side < 0 ? l.from < pos : l.to > pos))))\n best = l;\n }\n return best || line;\n }\n return line;\n}\nfunction moveToLineBoundary(view, start, forward, includeWrap) {\n let line = blockAt(view, start.head, start.assoc || -1);\n let coords = !includeWrap || line.type != BlockType.Text || !(view.lineWrapping || line.widgetLineBreaks) ? null\n : view.coordsAtPos(start.assoc < 0 && start.head > line.from ? start.head - 1 : start.head);\n if (coords) {\n let editorRect = view.dom.getBoundingClientRect();\n let direction = view.textDirectionAt(line.from);\n let pos = view.posAtCoords({ x: forward == (direction == Direction.LTR) ? editorRect.right - 1 : editorRect.left + 1,\n y: (coords.top + coords.bottom) / 2 });\n if (pos != null)\n return EditorSelection.cursor(pos, forward ? -1 : 1);\n }\n return EditorSelection.cursor(forward ? line.to : line.from, forward ? -1 : 1);\n}\nfunction moveByChar(view, start, forward, by) {\n let line = view.state.doc.lineAt(start.head), spans = view.bidiSpans(line);\n let direction = view.textDirectionAt(line.from);\n for (let cur = start, check = null;;) {\n let next = moveVisually(line, spans, direction, cur, forward), char = movedOver;\n if (!next) {\n if (line.number == (forward ? view.state.doc.lines : 1))\n return cur;\n char = \"\\n\";\n line = view.state.doc.line(line.number + (forward ? 1 : -1));\n spans = view.bidiSpans(line);\n next = view.visualLineSide(line, !forward);\n }\n if (!check) {\n if (!by)\n return next;\n check = by(char);\n }\n else if (!check(char)) {\n return cur;\n }\n cur = next;\n }\n}\nfunction byGroup(view, pos, start) {\n let categorize = view.state.charCategorizer(pos);\n let cat = categorize(start);\n return (next) => {\n let nextCat = categorize(next);\n if (cat == CharCategory.Space)\n cat = nextCat;\n return cat == nextCat;\n };\n}\nfunction moveVertically(view, start, forward, distance) {\n let startPos = start.head, dir = forward ? 1 : -1;\n if (startPos == (forward ? view.state.doc.length : 0))\n return EditorSelection.cursor(startPos, start.assoc);\n let goal = start.goalColumn, startY;\n let rect = view.contentDOM.getBoundingClientRect();\n let startCoords = view.coordsAtPos(startPos, start.assoc || -1), docTop = view.documentTop;\n if (startCoords) {\n if (goal == null)\n goal = startCoords.left - rect.left;\n startY = dir < 0 ? startCoords.top : startCoords.bottom;\n }\n else {\n let line = view.viewState.lineBlockAt(startPos);\n if (goal == null)\n goal = Math.min(rect.right - rect.left, view.defaultCharacterWidth * (startPos - line.from));\n startY = (dir < 0 ? line.top : line.bottom) + docTop;\n }\n let resolvedGoal = rect.left + goal;\n let dist = distance !== null && distance !== void 0 ? distance : (view.viewState.heightOracle.textHeight >> 1);\n for (let extra = 0;; extra += 10) {\n let curY = startY + (dist + extra) * dir;\n let pos = posAtCoords(view, { x: resolvedGoal, y: curY }, false, dir);\n return EditorSelection.cursor(pos.pos, pos.assoc, undefined, goal);\n }\n}\nfunction skipAtomicRanges(atoms, pos, bias) {\n for (;;) {\n let moved = 0;\n for (let set of atoms) {\n set.between(pos - 1, pos + 1, (from, to, value) => {\n if (pos > from && pos < to) {\n let side = moved || bias || (pos - from < to - pos ? -1 : 1);\n pos = side < 0 ? from : to;\n moved = side;\n }\n });\n }\n if (!moved)\n return pos;\n }\n}\nfunction skipAtomsForSelection(atoms, sel) {\n let ranges = null;\n for (let i = 0; i < sel.ranges.length; i++) {\n let range = sel.ranges[i], updated = null;\n if (range.empty) {\n let pos = skipAtomicRanges(atoms, range.from, 0);\n if (pos != range.from)\n updated = EditorSelection.cursor(pos, -1);\n }\n else {\n let from = skipAtomicRanges(atoms, range.from, -1);\n let to = skipAtomicRanges(atoms, range.to, 1);\n if (from != range.from || to != range.to)\n updated = EditorSelection.range(range.from == range.anchor ? from : to, range.from == range.head ? from : to);\n }\n if (updated) {\n if (!ranges)\n ranges = sel.ranges.slice();\n ranges[i] = updated;\n }\n }\n return ranges ? EditorSelection.create(ranges, sel.mainIndex) : sel;\n}\nfunction skipAtoms(view, oldPos, pos) {\n let newPos = skipAtomicRanges(view.state.facet(atomicRanges).map(f => f(view)), pos.from, oldPos.head > pos.from ? -1 : 1);\n return newPos == pos.from ? pos : EditorSelection.cursor(newPos, newPos < pos.from ? 1 : -1);\n}\nclass PosAssoc {\n constructor(pos, assoc) {\n this.pos = pos;\n this.assoc = assoc;\n }\n}\nfunction posAtCoords(view, coords, precise, scanY) {\n let content = view.contentDOM.getBoundingClientRect(), docTop = content.top + view.viewState.paddingTop;\n let { x, y } = coords, yOffset = y - docTop, block;\n // First find the block at the given Y position, if any. If scanY is\n // given (used for vertical cursor motion), try to skip widgets and\n // line padding.\n for (;;) {\n if (yOffset < 0)\n return new PosAssoc(0, 1);\n if (yOffset > view.viewState.docHeight)\n return new PosAssoc(view.state.doc.length, -1);\n block = view.elementAtHeight(yOffset);\n if (scanY == null)\n break;\n if (block.type == BlockType.Text) {\n // Check whether we aren't landing the top/bottom padding of the line\n let rect = view.docView.coordsAt(scanY < 0 ? block.from : block.to, scanY);\n if (rect && (scanY < 0 ? rect.top <= yOffset + docTop : rect.bottom >= yOffset + docTop))\n break;\n }\n let halfLine = view.viewState.heightOracle.textHeight / 2;\n yOffset = scanY > 0 ? block.bottom + halfLine : block.top - halfLine;\n }\n // If outside the viewport, return null if precise==true, an\n // estimate otherwise.\n if (view.viewport.from >= block.to || view.viewport.to <= block.from) {\n if (precise)\n return null;\n if (block.type == BlockType.Text) {\n let pos = posAtCoordsImprecise(view, content, block, x, y);\n return new PosAssoc(pos, pos == block.from ? 1 : -1);\n }\n }\n if (block.type != BlockType.Text)\n return yOffset < (block.top + block.bottom) / 2 ? new PosAssoc(block.from, 1) : new PosAssoc(block.to, -1);\n // Here we know we're in a line, so run the logic for inline layout\n let line = view.docView.lineAt(block.from, 2);\n if (!line || line.length != block.length)\n line = view.docView.lineAt(block.from, -2);\n return posAtCoordsInline(view, line, block.from, x, y);\n}\n// Scan through the rectangles for the content of a tile, finding the\n// one closest to the given coordinates, prefering closeness in Y over\n// closeness in X.\n//\n// If this is a text tile, go character-by-character. For line or mark\n// tiles, check each non-point-widget child, and descend text or mark\n// tiles with a recursive call.\n//\n// For non-wrapped, purely left-to-right text, this could use a binary\n// search. But because this seems to be fast enough, for how often it\n// is called, there's not currently a specialized implementation for\n// that.\nfunction posAtCoordsInline(view, tile, offset, x, y) {\n let closest = -1, closestRect = null;\n let dxClosest = 1e9, dyClosest = 1e9;\n let rowTop = y, rowBot = y;\n let checkRects = (rects, index) => {\n for (let i = 0; i < rects.length; i++) {\n let rect = rects[i];\n if (rect.top == rect.bottom)\n continue;\n let dx = rect.left > x ? rect.left - x : rect.right < x ? x - rect.right : 0;\n let dy = rect.top > y ? rect.top - y : rect.bottom < y ? y - rect.bottom : 0;\n if (rect.top <= rowBot && rect.bottom >= rowTop) {\n // Rectangle is in the current row\n rowTop = Math.min(rect.top, rowTop);\n rowBot = Math.max(rect.bottom, rowBot);\n dy = 0;\n }\n if (closest < 0 || (dy - dyClosest || dx - dxClosest) < 0) {\n if (closest >= 0 && dyClosest && dxClosest < dx &&\n closestRect.top <= rowBot - 2 && closestRect.bottom >= rowTop + 2) {\n // Retroactively set dy to 0 if the current match is in this row.\n dyClosest = 0;\n }\n else {\n closest = index;\n dxClosest = dx;\n dyClosest = dy;\n closestRect = rect;\n }\n }\n }\n };\n if (tile.isText()) {\n for (let i = 0; i < tile.length;) {\n let next = findClusterBreak(tile.text, i);\n checkRects(textRange(tile.dom, i, next).getClientRects(), i);\n if (!dxClosest && !dyClosest)\n break;\n i = next;\n }\n let after = (x > (closestRect.left + closestRect.right) / 2) == (dirAt(view, closest + offset) == Direction.LTR);\n return after ? new PosAssoc(offset + findClusterBreak(tile.text, closest), -1) : new PosAssoc(offset + closest, 1);\n }\n else {\n if (!tile.length)\n return new PosAssoc(offset, 1);\n for (let i = 0; i < tile.children.length; i++) {\n let child = tile.children[i];\n if (child.flags & 48 /* TileFlag.PointWidget */)\n continue;\n let rects = (child.dom.nodeType == 1 ? child.dom : textRange(child.dom, 0, child.length)).getClientRects();\n checkRects(rects, i);\n if (!dxClosest && !dyClosest)\n break;\n }\n let inner = tile.children[closest], innerOff = tile.posBefore(inner, offset);\n if (inner.isComposite() || inner.isText())\n return posAtCoordsInline(view, inner, innerOff, Math.max(closestRect.left, Math.min(closestRect.right, x)), y);\n let after = (x > (closestRect.left + closestRect.right) / 2) == (dirAt(view, closest + offset) == Direction.LTR);\n return after ? new PosAssoc(innerOff + inner.length, -1) : new PosAssoc(innerOff, 1);\n }\n}\nfunction dirAt(view, pos) {\n let line = view.state.doc.lineAt(pos), spans = view.bidiSpans(line);\n return spans[BidiSpan.find(view.bidiSpans(line), pos - line.from, -1, 1)].dir;\n}\n\nconst LineBreakPlaceholder = \"\\uffff\";\nclass DOMReader {\n constructor(points, view) {\n this.points = points;\n this.view = view;\n this.text = \"\";\n this.lineSeparator = view.state.facet(EditorState.lineSeparator);\n }\n append(text) {\n this.text += text;\n }\n lineBreak() {\n this.text += LineBreakPlaceholder;\n }\n readRange(start, end) {\n if (!start)\n return this;\n let parent = start.parentNode;\n for (let cur = start;;) {\n this.findPointBefore(parent, cur);\n let oldLen = this.text.length;\n this.readNode(cur);\n let tile = Tile.get(cur), next = cur.nextSibling;\n if (next == end) {\n if ((tile === null || tile === void 0 ? void 0 : tile.breakAfter) && !next && parent != this.view.contentDOM)\n this.lineBreak();\n break;\n }\n let nextTile = Tile.get(next);\n if ((tile && nextTile ? tile.breakAfter :\n (tile ? tile.breakAfter : isBlockElement(cur)) ||\n (isBlockElement(next) && (cur.nodeName != \"BR\" || (tile === null || tile === void 0 ? void 0 : tile.isWidget())) && this.text.length > oldLen)) &&\n !isEmptyToEnd(next, end))\n this.lineBreak();\n cur = next;\n }\n this.findPointBefore(parent, end);\n return this;\n }\n readTextNode(node) {\n let text = node.nodeValue;\n for (let point of this.points)\n if (point.node == node)\n point.pos = this.text.length + Math.min(point.offset, text.length);\n for (let off = 0, re = this.lineSeparator ? null : /\\r\\n?|\\n/g;;) {\n let nextBreak = -1, breakSize = 1, m;\n if (this.lineSeparator) {\n nextBreak = text.indexOf(this.lineSeparator, off);\n breakSize = this.lineSeparator.length;\n }\n else if (m = re.exec(text)) {\n nextBreak = m.index;\n breakSize = m[0].length;\n }\n this.append(text.slice(off, nextBreak < 0 ? text.length : nextBreak));\n if (nextBreak < 0)\n break;\n this.lineBreak();\n if (breakSize > 1)\n for (let point of this.points)\n if (point.node == node && point.pos > this.text.length)\n point.pos -= breakSize - 1;\n off = nextBreak + breakSize;\n }\n }\n readNode(node) {\n let tile = Tile.get(node);\n let fromView = tile && tile.overrideDOMText;\n if (fromView != null) {\n this.findPointInside(node, fromView.length);\n for (let i = fromView.iter(); !i.next().done;) {\n if (i.lineBreak)\n this.lineBreak();\n else\n this.append(i.value);\n }\n }\n else if (node.nodeType == 3) {\n this.readTextNode(node);\n }\n else if (node.nodeName == \"BR\") {\n if (node.nextSibling)\n this.lineBreak();\n }\n else if (node.nodeType == 1) {\n this.readRange(node.firstChild, null);\n }\n }\n findPointBefore(node, next) {\n for (let point of this.points)\n if (point.node == node && node.childNodes[point.offset] == next)\n point.pos = this.text.length;\n }\n findPointInside(node, length) {\n for (let point of this.points)\n if (node.nodeType == 3 ? point.node == node : node.contains(point.node))\n point.pos = this.text.length + (isAtEnd(node, point.node, point.offset) ? length : 0);\n }\n}\nfunction isAtEnd(parent, node, offset) {\n for (;;) {\n if (!node || offset < maxOffset(node))\n return false;\n if (node == parent)\n return true;\n offset = domIndex(node) + 1;\n node = node.parentNode;\n }\n}\nfunction isEmptyToEnd(node, end) {\n let widgets;\n for (;; node = node.nextSibling) {\n if (node == end || !node)\n break;\n let view = Tile.get(node);\n if (!(view === null || view === void 0 ? void 0 : view.isWidget()))\n return false;\n if (view)\n (widgets || (widgets = [])).push(view);\n }\n if (widgets)\n for (let w of widgets) {\n let override = w.overrideDOMText;\n if (override === null || override === void 0 ? void 0 : override.length)\n return false;\n }\n return true;\n}\nclass DOMPoint {\n constructor(node, offset) {\n this.node = node;\n this.offset = offset;\n this.pos = -1;\n }\n}\n\nclass DOMChange {\n constructor(view, start, end, typeOver) {\n this.typeOver = typeOver;\n this.bounds = null;\n this.text = \"\";\n this.domChanged = start > -1;\n let { impreciseHead: iHead, impreciseAnchor: iAnchor } = view.docView;\n if (view.state.readOnly && start > -1) {\n // Ignore changes when the editor is read-only\n this.newSel = null;\n }\n else if (start > -1 && (this.bounds = domBoundsAround(view.docView.tile, start, end, 0))) {\n let selPoints = iHead || iAnchor ? [] : selectionPoints(view);\n let reader = new DOMReader(selPoints, view);\n reader.readRange(this.bounds.startDOM, this.bounds.endDOM);\n this.text = reader.text;\n this.newSel = selectionFromPoints(selPoints, this.bounds.from);\n }\n else {\n let domSel = view.observer.selectionRange;\n let head = iHead && iHead.node == domSel.focusNode && iHead.offset == domSel.focusOffset ||\n !contains(view.contentDOM, domSel.focusNode)\n ? view.state.selection.main.head\n : view.docView.posFromDOM(domSel.focusNode, domSel.focusOffset);\n let anchor = iAnchor && iAnchor.node == domSel.anchorNode && iAnchor.offset == domSel.anchorOffset ||\n !contains(view.contentDOM, domSel.anchorNode)\n ? view.state.selection.main.anchor\n : view.docView.posFromDOM(domSel.anchorNode, domSel.anchorOffset);\n // iOS will refuse to select the block gaps when doing\n // select-all.\n // Chrome will put the selection *inside* them, confusing\n // posFromDOM\n let vp = view.viewport;\n if ((browser.ios || browser.chrome) && view.state.selection.main.empty && head != anchor &&\n (vp.from > 0 || vp.to < view.state.doc.length)) {\n let from = Math.min(head, anchor), to = Math.max(head, anchor);\n let offFrom = vp.from - from, offTo = vp.to - to;\n if ((offFrom == 0 || offFrom == 1 || from == 0) && (offTo == 0 || offTo == -1 || to == view.state.doc.length)) {\n head = 0;\n anchor = view.state.doc.length;\n }\n }\n if (view.inputState.composing > -1 && view.state.selection.ranges.length > 1)\n this.newSel = view.state.selection.replaceRange(EditorSelection.range(anchor, head));\n else\n this.newSel = EditorSelection.single(anchor, head);\n }\n }\n}\nfunction domBoundsAround(tile, from, to, offset) {\n if (tile.isComposite()) {\n let fromI = -1, fromStart = -1, toI = -1, toEnd = -1;\n for (let i = 0, pos = offset, prevEnd = offset; i < tile.children.length; i++) {\n let child = tile.children[i], end = pos + child.length;\n if (pos < from && end > to)\n return domBoundsAround(child, from, to, pos);\n if (end >= from && fromI == -1) {\n fromI = i;\n fromStart = pos;\n }\n if (pos > to && child.dom.parentNode == tile.dom) {\n toI = i;\n toEnd = prevEnd;\n break;\n }\n prevEnd = end;\n pos = end + child.breakAfter;\n }\n return { from: fromStart, to: toEnd < 0 ? offset + tile.length : toEnd,\n startDOM: (fromI ? tile.children[fromI - 1].dom.nextSibling : null) || tile.dom.firstChild,\n endDOM: toI < tile.children.length && toI >= 0 ? tile.children[toI].dom : null };\n }\n else if (tile.isText()) {\n return { from: offset, to: offset + tile.length, startDOM: tile.dom, endDOM: tile.dom.nextSibling };\n }\n else {\n return null;\n }\n}\nfunction applyDOMChange(view, domChange) {\n let change;\n let { newSel } = domChange, sel = view.state.selection.main;\n let lastKey = view.inputState.lastKeyTime > Date.now() - 100 ? view.inputState.lastKeyCode : -1;\n if (domChange.bounds) {\n let { from, to } = domChange.bounds;\n let preferredPos = sel.from, preferredSide = null;\n // Prefer anchoring to end when Backspace is pressed (or, on\n // Android, when something was deleted)\n if (lastKey === 8 || browser.android && domChange.text.length < to - from) {\n preferredPos = sel.to;\n preferredSide = \"end\";\n }\n let diff = findDiff(view.state.doc.sliceString(from, to, LineBreakPlaceholder), domChange.text, preferredPos - from, preferredSide);\n if (diff) {\n // Chrome inserts two newlines when pressing shift-enter at the\n // end of a line. DomChange drops one of those.\n if (browser.chrome && lastKey == 13 &&\n diff.toB == diff.from + 2 && domChange.text.slice(diff.from, diff.toB) == LineBreakPlaceholder + LineBreakPlaceholder)\n diff.toB--;\n change = { from: from + diff.from, to: from + diff.toA,\n insert: Text.of(domChange.text.slice(diff.from, diff.toB).split(LineBreakPlaceholder)) };\n }\n }\n else if (newSel && (!view.hasFocus && view.state.facet(editable) || newSel.main.eq(sel))) {\n newSel = null;\n }\n if (!change && !newSel)\n return false;\n if (!change && domChange.typeOver && !sel.empty && newSel && newSel.main.empty) {\n // Heuristic to notice typing over a selected character\n change = { from: sel.from, to: sel.to, insert: view.state.doc.slice(sel.from, sel.to) };\n }\n else if ((browser.mac || browser.android) && change && change.from == change.to && change.from == sel.head - 1 &&\n /^\\. ?$/.test(change.insert.toString()) && view.contentDOM.getAttribute(\"autocorrect\") == \"off\") {\n // Detect insert-period-on-double-space Mac and Android behavior,\n // and transform it into a regular space insert.\n if (newSel && change.insert.length == 2)\n newSel = EditorSelection.single(newSel.main.anchor - 1, newSel.main.head - 1);\n change = { from: change.from, to: change.to, insert: Text.of([change.insert.toString().replace(\".\", \" \")]) };\n }\n else if (change && change.from >= sel.from && change.to <= sel.to &&\n (change.from != sel.from || change.to != sel.to) &&\n (sel.to - sel.from) - (change.to - change.from) <= 4) {\n // If the change is inside the selection and covers most of it,\n // assume it is a selection replace (with identical characters at\n // the start/end not included in the diff)\n change = {\n from: sel.from, to: sel.to,\n insert: view.state.doc.slice(sel.from, change.from).append(change.insert).append(view.state.doc.slice(change.to, sel.to))\n };\n }\n else if (view.state.doc.lineAt(sel.from).to < sel.to && view.docView.lineHasWidget(sel.to) &&\n view.inputState.insertingTextAt > Date.now() - 50) {\n // For a cross-line insertion, Chrome and Safari will crudely take\n // the text of the line after the selection, flattening any\n // widgets, and move it into the joined line. This tries to detect\n // such a situation, and replaces the change with a selection\n // replace of the text provided by the beforeinput event.\n change = {\n from: sel.from, to: sel.to,\n insert: view.state.toText(view.inputState.insertingText)\n };\n }\n else if (browser.chrome && change && change.from == change.to && change.from == sel.head &&\n change.insert.toString() == \"\\n \" && view.lineWrapping) {\n // In Chrome, if you insert a space at the start of a wrapped\n // line, it will actually insert a newline and a space, causing a\n // bogus new line to be created in CodeMirror (#968)\n if (newSel)\n newSel = EditorSelection.single(newSel.main.anchor - 1, newSel.main.head - 1);\n change = { from: sel.from, to: sel.to, insert: Text.of([\" \"]) };\n }\n if (change) {\n return applyDOMChangeInner(view, change, newSel, lastKey);\n }\n else if (newSel && !newSel.main.eq(sel)) {\n let scrollIntoView = false, userEvent = \"select\";\n if (view.inputState.lastSelectionTime > Date.now() - 50) {\n if (view.inputState.lastSelectionOrigin == \"select\")\n scrollIntoView = true;\n userEvent = view.inputState.lastSelectionOrigin;\n if (userEvent == \"select.pointer\")\n newSel = skipAtomsForSelection(view.state.facet(atomicRanges).map(f => f(view)), newSel);\n }\n view.dispatch({ selection: newSel, scrollIntoView, userEvent });\n return true;\n }\n else {\n return false;\n }\n}\nfunction applyDOMChangeInner(view, change, newSel, lastKey = -1) {\n if (browser.ios && view.inputState.flushIOSKey(change))\n return true;\n let sel = view.state.selection.main;\n // Android browsers don't fire reasonable key events for enter,\n // backspace, or delete. So this detects changes that look like\n // they're caused by those keys, and reinterprets them as key\n // events. (Some of these keys are also handled by beforeinput\n // events and the pendingAndroidKey mechanism, but that's not\n // reliable in all situations.)\n if (browser.android &&\n ((change.to == sel.to &&\n // GBoard will sometimes remove a space it just inserted\n // after a completion when you press enter\n (change.from == sel.from || change.from == sel.from - 1 && view.state.sliceDoc(change.from, sel.from) == \" \") &&\n change.insert.length == 1 && change.insert.lines == 2 &&\n dispatchKey(view.contentDOM, \"Enter\", 13)) ||\n ((change.from == sel.from - 1 && change.to == sel.to && change.insert.length == 0 ||\n lastKey == 8 && change.insert.length < change.to - change.from && change.to > sel.head) &&\n dispatchKey(view.contentDOM, \"Backspace\", 8)) ||\n (change.from == sel.from && change.to == sel.to + 1 && change.insert.length == 0 &&\n dispatchKey(view.contentDOM, \"Delete\", 46))))\n return true;\n let text = change.insert.toString();\n if (view.inputState.composing >= 0)\n view.inputState.composing++;\n let defaultTr;\n let defaultInsert = () => defaultTr || (defaultTr = applyDefaultInsert(view, change, newSel));\n if (!view.state.facet(inputHandler).some(h => h(view, change.from, change.to, text, defaultInsert)))\n view.dispatch(defaultInsert());\n return true;\n}\nfunction applyDefaultInsert(view, change, newSel) {\n let tr, startState = view.state, sel = startState.selection.main, inAtomic = -1;\n if (change.from == change.to && change.from < sel.from || change.from > sel.to) {\n let side = change.from < sel.from ? -1 : 1, pos = side < 0 ? sel.from : sel.to;\n let moved = skipAtomicRanges(startState.facet(atomicRanges).map(f => f(view)), pos, side);\n if (change.from == moved)\n inAtomic = moved;\n }\n if (inAtomic > -1) {\n tr = {\n changes: change,\n selection: EditorSelection.cursor(change.from + change.insert.length, -1)\n };\n }\n else if (change.from >= sel.from && change.to <= sel.to && change.to - change.from >= (sel.to - sel.from) / 3 &&\n (!newSel || newSel.main.empty && newSel.main.from == change.from + change.insert.length) &&\n view.inputState.composing < 0) {\n let before = sel.from < change.from ? startState.sliceDoc(sel.from, change.from) : \"\";\n let after = sel.to > change.to ? startState.sliceDoc(change.to, sel.to) : \"\";\n tr = startState.replaceSelection(view.state.toText(before + change.insert.sliceString(0, undefined, view.state.lineBreak) + after));\n }\n else {\n let changes = startState.changes(change);\n let mainSel = newSel && newSel.main.to <= changes.newLength ? newSel.main : undefined;\n // Try to apply a composition change to all cursors\n if (startState.selection.ranges.length > 1 && (view.inputState.composing >= 0 || view.inputState.compositionPendingChange) &&\n change.to <= sel.to + 10 && change.to >= sel.to - 10) {\n let replaced = view.state.sliceDoc(change.from, change.to);\n let compositionRange, composition = newSel && findCompositionNode(view, newSel.main.head);\n if (composition) {\n let dLen = change.insert.length - (change.to - change.from);\n compositionRange = { from: composition.from, to: composition.to - dLen };\n }\n else {\n compositionRange = view.state.doc.lineAt(sel.head);\n }\n let offset = sel.to - change.to;\n tr = startState.changeByRange(range => {\n if (range.from == sel.from && range.to == sel.to)\n return { changes, range: mainSel || range.map(changes) };\n let to = range.to - offset, from = to - replaced.length;\n if (view.state.sliceDoc(from, to) != replaced ||\n // Unfortunately, there's no way to make multiple\n // changes in the same node work without aborting\n // composition, so cursors in the composition range are\n // ignored.\n to >= compositionRange.from && from <= compositionRange.to)\n return { range };\n let rangeChanges = startState.changes({ from, to, insert: change.insert }), selOff = range.to - sel.to;\n return {\n changes: rangeChanges,\n range: !mainSel ? range.map(rangeChanges) :\n EditorSelection.range(Math.max(0, mainSel.anchor + selOff), Math.max(0, mainSel.head + selOff))\n };\n });\n }\n else {\n tr = {\n changes,\n selection: mainSel && startState.selection.replaceRange(mainSel)\n };\n }\n }\n let userEvent = \"input.type\";\n if (view.composing ||\n view.inputState.compositionPendingChange && view.inputState.compositionEndedAt > Date.now() - 50) {\n view.inputState.compositionPendingChange = false;\n userEvent += \".compose\";\n if (view.inputState.compositionFirstChange) {\n userEvent += \".start\";\n view.inputState.compositionFirstChange = false;\n }\n }\n return startState.update(tr, { userEvent, scrollIntoView: true });\n}\nfunction findDiff(a, b, preferredPos, preferredSide) {\n let minLen = Math.min(a.length, b.length);\n let from = 0;\n while (from < minLen && a.charCodeAt(from) == b.charCodeAt(from))\n from++;\n if (from == minLen && a.length == b.length)\n return null;\n let toA = a.length, toB = b.length;\n while (toA > 0 && toB > 0 && a.charCodeAt(toA - 1) == b.charCodeAt(toB - 1)) {\n toA--;\n toB--;\n }\n if (preferredSide == \"end\") {\n let adjust = Math.max(0, from - Math.min(toA, toB));\n preferredPos -= toA + adjust - from;\n }\n if (toA < from && a.length < b.length) {\n let move = preferredPos <= from && preferredPos >= toA ? from - preferredPos : 0;\n from -= move;\n toB = from + (toB - toA);\n toA = from;\n }\n else if (toB < from) {\n let move = preferredPos <= from && preferredPos >= toB ? from - preferredPos : 0;\n from -= move;\n toA = from + (toA - toB);\n toB = from;\n }\n return { from, toA, toB };\n}\nfunction selectionPoints(view) {\n let result = [];\n if (view.root.activeElement != view.contentDOM)\n return result;\n let { anchorNode, anchorOffset, focusNode, focusOffset } = view.observer.selectionRange;\n if (anchorNode) {\n result.push(new DOMPoint(anchorNode, anchorOffset));\n if (focusNode != anchorNode || focusOffset != anchorOffset)\n result.push(new DOMPoint(focusNode, focusOffset));\n }\n return result;\n}\nfunction selectionFromPoints(points, base) {\n if (points.length == 0)\n return null;\n let anchor = points[0].pos, head = points.length == 2 ? points[1].pos : anchor;\n return anchor > -1 && head > -1 ? EditorSelection.single(anchor + base, head + base) : null;\n}\n\nclass InputState {\n setSelectionOrigin(origin) {\n this.lastSelectionOrigin = origin;\n this.lastSelectionTime = Date.now();\n }\n constructor(view) {\n this.view = view;\n this.lastKeyCode = 0;\n this.lastKeyTime = 0;\n this.lastTouchTime = 0;\n this.lastFocusTime = 0;\n this.lastScrollTop = 0;\n this.lastScrollLeft = 0;\n // On iOS, some keys need to have their default behavior happen\n // (after which we retroactively handle them and reset the DOM) to\n // avoid messing up the virtual keyboard state.\n this.pendingIOSKey = undefined;\n /**\n When enabled (>-1), tab presses are not given to key handlers,\n leaving the browser's default behavior. If >0, the mode expires\n at that timestamp, and any other keypress clears it.\n Esc enables temporary tab focus mode for two seconds when not\n otherwise handled.\n */\n this.tabFocusMode = -1;\n this.lastSelectionOrigin = null;\n this.lastSelectionTime = 0;\n this.lastContextMenu = 0;\n this.scrollHandlers = [];\n this.handlers = Object.create(null);\n // -1 means not in a composition. Otherwise, this counts the number\n // of changes made during the composition. The count is used to\n // avoid treating the start state of the composition, before any\n // changes have been made, as part of the composition.\n this.composing = -1;\n // Tracks whether the next change should be marked as starting the\n // composition (null means no composition, true means next is the\n // first, false means first has already been marked for this\n // composition)\n this.compositionFirstChange = null;\n // End time of the previous composition\n this.compositionEndedAt = 0;\n // Used in a kludge to detect when an Enter keypress should be\n // considered part of the composition on Safari, which fires events\n // in the wrong order\n this.compositionPendingKey = false;\n // Used to categorize changes as part of a composition, even when\n // the mutation events fire shortly after the compositionend event\n this.compositionPendingChange = false;\n // Set by beforeinput, used in DOM change reader\n this.insertingText = \"\";\n this.insertingTextAt = 0;\n this.mouseSelection = null;\n // When a drag from the editor is active, this points at the range\n // being dragged.\n this.draggedContent = null;\n this.handleEvent = this.handleEvent.bind(this);\n this.notifiedFocused = view.hasFocus;\n // On Safari adding an input event handler somehow prevents an\n // issue where the composition vanishes when you press enter.\n if (browser.safari)\n view.contentDOM.addEventListener(\"input\", () => null);\n if (browser.gecko)\n firefoxCopyCutHack(view.contentDOM.ownerDocument);\n }\n handleEvent(event) {\n if (!eventBelongsToEditor(this.view, event) || this.ignoreDuringComposition(event))\n return;\n if (event.type == \"keydown\" && this.keydown(event))\n return;\n if (this.view.updateState != 0 /* UpdateState.Idle */)\n Promise.resolve().then(() => this.runHandlers(event.type, event));\n else\n this.runHandlers(event.type, event);\n }\n runHandlers(type, event) {\n let handlers = this.handlers[type];\n if (handlers) {\n for (let observer of handlers.observers)\n observer(this.view, event);\n for (let handler of handlers.handlers) {\n if (event.defaultPrevented)\n break;\n if (handler(this.view, event)) {\n event.preventDefault();\n break;\n }\n }\n }\n }\n ensureHandlers(plugins) {\n let handlers = computeHandlers(plugins), prev = this.handlers, dom = this.view.contentDOM;\n for (let type in handlers)\n if (type != \"scroll\") {\n let passive = !handlers[type].handlers.length;\n let exists = prev[type];\n if (exists && passive != !exists.handlers.length) {\n dom.removeEventListener(type, this.handleEvent);\n exists = null;\n }\n if (!exists)\n dom.addEventListener(type, this.handleEvent, { passive });\n }\n for (let type in prev)\n if (type != \"scroll\" && !handlers[type])\n dom.removeEventListener(type, this.handleEvent);\n this.handlers = handlers;\n }\n keydown(event) {\n // Must always run, even if a custom handler handled the event\n this.lastKeyCode = event.keyCode;\n this.lastKeyTime = Date.now();\n if (event.keyCode == 9 && this.tabFocusMode > -1 && (!this.tabFocusMode || Date.now() <= this.tabFocusMode))\n return true;\n if (this.tabFocusMode > 0 && event.keyCode != 27 && modifierCodes.indexOf(event.keyCode) < 0)\n this.tabFocusMode = -1;\n // Chrome for Android usually doesn't fire proper key events, but\n // occasionally does, usually surrounded by a bunch of complicated\n // composition changes. When an enter or backspace key event is\n // seen, hold off on handling DOM events for a bit, and then\n // dispatch it.\n if (browser.android && browser.chrome && !event.synthetic &&\n (event.keyCode == 13 || event.keyCode == 8)) {\n this.view.observer.delayAndroidKey(event.key, event.keyCode);\n return true;\n }\n // Preventing the default behavior of Enter on iOS makes the\n // virtual keyboard get stuck in the wrong (lowercase)\n // state. So we let it go through, and then, in\n // applyDOMChange, notify key handlers of it and reset to\n // the state they produce.\n let pending;\n if (browser.ios && !event.synthetic && !event.altKey && !event.metaKey &&\n ((pending = PendingKeys.find(key => key.keyCode == event.keyCode)) && !event.ctrlKey ||\n EmacsyPendingKeys.indexOf(event.key) > -1 && event.ctrlKey && !event.shiftKey)) {\n this.pendingIOSKey = pending || event;\n setTimeout(() => this.flushIOSKey(), 250);\n return true;\n }\n if (event.keyCode != 229)\n this.view.observer.forceFlush();\n return false;\n }\n flushIOSKey(change) {\n let key = this.pendingIOSKey;\n if (!key)\n return false;\n // This looks like an autocorrection before Enter\n if (key.key == \"Enter\" && change && change.from < change.to && /^\\S+$/.test(change.insert.toString()))\n return false;\n this.pendingIOSKey = undefined;\n return dispatchKey(this.view.contentDOM, key.key, key.keyCode, key instanceof KeyboardEvent ? key : undefined);\n }\n ignoreDuringComposition(event) {\n if (!/^key/.test(event.type) || event.synthetic)\n return false;\n if (this.composing > 0)\n return true;\n // See https://www.stum.de/2016/06/24/handling-ime-events-in-javascript/.\n // On some input method editors (IMEs), the Enter key is used to\n // confirm character selection. On Safari, when Enter is pressed,\n // compositionend and keydown events are sometimes emitted in the\n // wrong order. The key event should still be ignored, even when\n // it happens after the compositionend event.\n if (browser.safari && !browser.ios && this.compositionPendingKey && Date.now() - this.compositionEndedAt < 100) {\n this.compositionPendingKey = false;\n return true;\n }\n return false;\n }\n startMouseSelection(mouseSelection) {\n if (this.mouseSelection)\n this.mouseSelection.destroy();\n this.mouseSelection = mouseSelection;\n }\n update(update) {\n this.view.observer.update(update);\n if (this.mouseSelection)\n this.mouseSelection.update(update);\n if (this.draggedContent && update.docChanged)\n this.draggedContent = this.draggedContent.map(update.changes);\n if (update.transactions.length)\n this.lastKeyCode = this.lastSelectionTime = 0;\n }\n destroy() {\n if (this.mouseSelection)\n this.mouseSelection.destroy();\n }\n}\nfunction bindHandler(plugin, handler) {\n return (view, event) => {\n try {\n return handler.call(plugin, event, view);\n }\n catch (e) {\n logException(view.state, e);\n }\n };\n}\nfunction computeHandlers(plugins) {\n let result = Object.create(null);\n function record(type) {\n return result[type] || (result[type] = { observers: [], handlers: [] });\n }\n for (let plugin of plugins) {\n let spec = plugin.spec, handlers = spec && spec.plugin.domEventHandlers, observers = spec && spec.plugin.domEventObservers;\n if (handlers)\n for (let type in handlers) {\n let f = handlers[type];\n if (f)\n record(type).handlers.push(bindHandler(plugin.value, f));\n }\n if (observers)\n for (let type in observers) {\n let f = observers[type];\n if (f)\n record(type).observers.push(bindHandler(plugin.value, f));\n }\n }\n for (let type in handlers)\n record(type).handlers.push(handlers[type]);\n for (let type in observers)\n record(type).observers.push(observers[type]);\n return result;\n}\nconst PendingKeys = [\n { key: \"Backspace\", keyCode: 8, inputType: \"deleteContentBackward\" },\n { key: \"Enter\", keyCode: 13, inputType: \"insertParagraph\" },\n { key: \"Enter\", keyCode: 13, inputType: \"insertLineBreak\" },\n { key: \"Delete\", keyCode: 46, inputType: \"deleteContentForward\" }\n];\nconst EmacsyPendingKeys = \"dthko\";\n// Key codes for modifier keys\nconst modifierCodes = [16, 17, 18, 20, 91, 92, 224, 225];\nconst dragScrollMargin = 6;\nfunction dragScrollSpeed(dist) {\n return Math.max(0, dist) * 0.7 + 8;\n}\nfunction dist(a, b) {\n return Math.max(Math.abs(a.clientX - b.clientX), Math.abs(a.clientY - b.clientY));\n}\nclass MouseSelection {\n constructor(view, startEvent, style, mustSelect) {\n this.view = view;\n this.startEvent = startEvent;\n this.style = style;\n this.mustSelect = mustSelect;\n this.scrollSpeed = { x: 0, y: 0 };\n this.scrolling = -1;\n this.lastEvent = startEvent;\n this.scrollParents = scrollableParents(view.contentDOM);\n this.atoms = view.state.facet(atomicRanges).map(f => f(view));\n let doc = view.contentDOM.ownerDocument;\n doc.addEventListener(\"mousemove\", this.move = this.move.bind(this));\n doc.addEventListener(\"mouseup\", this.up = this.up.bind(this));\n this.extend = startEvent.shiftKey;\n this.multiple = view.state.facet(EditorState.allowMultipleSelections) && addsSelectionRange(view, startEvent);\n this.dragging = isInPrimarySelection(view, startEvent) && getClickType(startEvent) == 1 ? null : false;\n }\n start(event) {\n // When clicking outside of the selection, immediately apply the\n // effect of starting the selection\n if (this.dragging === false)\n this.select(event);\n }\n move(event) {\n if (event.buttons == 0)\n return this.destroy();\n if (this.dragging || this.dragging == null && dist(this.startEvent, event) < 10)\n return;\n this.select(this.lastEvent = event);\n let sx = 0, sy = 0;\n let left = 0, top = 0, right = this.view.win.innerWidth, bottom = this.view.win.innerHeight;\n if (this.scrollParents.x)\n ({ left, right } = this.scrollParents.x.getBoundingClientRect());\n if (this.scrollParents.y)\n ({ top, bottom } = this.scrollParents.y.getBoundingClientRect());\n let margins = getScrollMargins(this.view);\n if (event.clientX - margins.left <= left + dragScrollMargin)\n sx = -dragScrollSpeed(left - event.clientX);\n else if (event.clientX + margins.right >= right - dragScrollMargin)\n sx = dragScrollSpeed(event.clientX - right);\n if (event.clientY - margins.top <= top + dragScrollMargin)\n sy = -dragScrollSpeed(top - event.clientY);\n else if (event.clientY + margins.bottom >= bottom - dragScrollMargin)\n sy = dragScrollSpeed(event.clientY - bottom);\n this.setScrollSpeed(sx, sy);\n }\n up(event) {\n if (this.dragging == null)\n this.select(this.lastEvent);\n if (!this.dragging)\n event.preventDefault();\n this.destroy();\n }\n destroy() {\n this.setScrollSpeed(0, 0);\n let doc = this.view.contentDOM.ownerDocument;\n doc.removeEventListener(\"mousemove\", this.move);\n doc.removeEventListener(\"mouseup\", this.up);\n this.view.inputState.mouseSelection = this.view.inputState.draggedContent = null;\n }\n setScrollSpeed(sx, sy) {\n this.scrollSpeed = { x: sx, y: sy };\n if (sx || sy) {\n if (this.scrolling < 0)\n this.scrolling = setInterval(() => this.scroll(), 50);\n }\n else if (this.scrolling > -1) {\n clearInterval(this.scrolling);\n this.scrolling = -1;\n }\n }\n scroll() {\n let { x, y } = this.scrollSpeed;\n if (x && this.scrollParents.x) {\n this.scrollParents.x.scrollLeft += x;\n x = 0;\n }\n if (y && this.scrollParents.y) {\n this.scrollParents.y.scrollTop += y;\n y = 0;\n }\n if (x || y)\n this.view.win.scrollBy(x, y);\n if (this.dragging === false)\n this.select(this.lastEvent);\n }\n select(event) {\n let { view } = this, selection = skipAtomsForSelection(this.atoms, this.style.get(event, this.extend, this.multiple));\n if (this.mustSelect || !selection.eq(view.state.selection, this.dragging === false))\n this.view.dispatch({\n selection,\n userEvent: \"select.pointer\"\n });\n this.mustSelect = false;\n }\n update(update) {\n if (update.transactions.some(tr => tr.isUserEvent(\"input.type\")))\n this.destroy();\n else if (this.style.update(update))\n setTimeout(() => this.select(this.lastEvent), 20);\n }\n}\nfunction addsSelectionRange(view, event) {\n let facet = view.state.facet(clickAddsSelectionRange);\n return facet.length ? facet[0](event) : browser.mac ? event.metaKey : event.ctrlKey;\n}\nfunction dragMovesSelection(view, event) {\n let facet = view.state.facet(dragMovesSelection$1);\n return facet.length ? facet[0](event) : browser.mac ? !event.altKey : !event.ctrlKey;\n}\nfunction isInPrimarySelection(view, event) {\n let { main } = view.state.selection;\n if (main.empty)\n return false;\n // On boundary clicks, check whether the coordinates are inside the\n // selection's client rectangles\n let sel = getSelection(view.root);\n if (!sel || sel.rangeCount == 0)\n return true;\n let rects = sel.getRangeAt(0).getClientRects();\n for (let i = 0; i < rects.length; i++) {\n let rect = rects[i];\n if (rect.left <= event.clientX && rect.right >= event.clientX &&\n rect.top <= event.clientY && rect.bottom >= event.clientY)\n return true;\n }\n return false;\n}\nfunction eventBelongsToEditor(view, event) {\n if (!event.bubbles)\n return true;\n if (event.defaultPrevented)\n return false;\n for (let node = event.target, tile; node != view.contentDOM; node = node.parentNode)\n if (!node || node.nodeType == 11 ||\n ((tile = Tile.get(node)) && tile.isWidget() && !tile.isHidden && tile.widget.ignoreEvent(event)))\n return false;\n return true;\n}\nconst handlers = /*@__PURE__*/Object.create(null);\nconst observers = /*@__PURE__*/Object.create(null);\n// This is very crude, but unfortunately both these browsers _pretend_\n// that they have a clipboard API\u2014all the objects and methods are\n// there, they just don't work, and they are hard to test.\nconst brokenClipboardAPI = (browser.ie && browser.ie_version < 15) ||\n (browser.ios && browser.webkit_version < 604);\nfunction capturePaste(view) {\n let parent = view.dom.parentNode;\n if (!parent)\n return;\n let target = parent.appendChild(document.createElement(\"textarea\"));\n target.style.cssText = \"position: fixed; left: -10000px; top: 10px\";\n target.focus();\n setTimeout(() => {\n view.focus();\n target.remove();\n doPaste(view, target.value);\n }, 50);\n}\nfunction textFilter(state, facet, text) {\n for (let filter of state.facet(facet))\n text = filter(text, state);\n return text;\n}\nfunction doPaste(view, input) {\n input = textFilter(view.state, clipboardInputFilter, input);\n let { state } = view, changes, i = 1, text = state.toText(input);\n let byLine = text.lines == state.selection.ranges.length;\n let linewise = lastLinewiseCopy != null && state.selection.ranges.every(r => r.empty) && lastLinewiseCopy == text.toString();\n if (linewise) {\n let lastLine = -1;\n changes = state.changeByRange(range => {\n let line = state.doc.lineAt(range.from);\n if (line.from == lastLine)\n return { range };\n lastLine = line.from;\n let insert = state.toText((byLine ? text.line(i++).text : input) + state.lineBreak);\n return { changes: { from: line.from, insert },\n range: EditorSelection.cursor(range.from + insert.length) };\n });\n }\n else if (byLine) {\n changes = state.changeByRange(range => {\n let line = text.line(i++);\n return { changes: { from: range.from, to: range.to, insert: line.text },\n range: EditorSelection.cursor(range.from + line.length) };\n });\n }\n else {\n changes = state.replaceSelection(text);\n }\n view.dispatch(changes, {\n userEvent: \"input.paste\",\n scrollIntoView: true\n });\n}\nobservers.scroll = view => {\n view.inputState.lastScrollTop = view.scrollDOM.scrollTop;\n view.inputState.lastScrollLeft = view.scrollDOM.scrollLeft;\n};\nhandlers.keydown = (view, event) => {\n view.inputState.setSelectionOrigin(\"select\");\n if (event.keyCode == 27 && view.inputState.tabFocusMode != 0)\n view.inputState.tabFocusMode = Date.now() + 2000;\n return false;\n};\nobservers.touchstart = (view, e) => {\n view.inputState.lastTouchTime = Date.now();\n view.inputState.setSelectionOrigin(\"select.pointer\");\n};\nobservers.touchmove = view => {\n view.inputState.setSelectionOrigin(\"select.pointer\");\n};\nhandlers.mousedown = (view, event) => {\n view.observer.flush();\n if (view.inputState.lastTouchTime > Date.now() - 2000)\n return false; // Ignore touch interaction\n let style = null;\n for (let makeStyle of view.state.facet(mouseSelectionStyle)) {\n style = makeStyle(view, event);\n if (style)\n break;\n }\n if (!style && event.button == 0)\n style = basicMouseSelection(view, event);\n if (style) {\n let mustFocus = !view.hasFocus;\n view.inputState.startMouseSelection(new MouseSelection(view, event, style, mustFocus));\n if (mustFocus)\n view.observer.ignore(() => {\n focusPreventScroll(view.contentDOM);\n let active = view.root.activeElement;\n if (active && !active.contains(view.contentDOM))\n active.blur();\n });\n let mouseSel = view.inputState.mouseSelection;\n if (mouseSel) {\n mouseSel.start(event);\n return mouseSel.dragging === false;\n }\n }\n else {\n view.inputState.setSelectionOrigin(\"select.pointer\");\n }\n return false;\n};\nfunction rangeForClick(view, pos, bias, type) {\n if (type == 1) { // Single click\n return EditorSelection.cursor(pos, bias);\n }\n else if (type == 2) { // Double click\n return groupAt(view.state, pos, bias);\n }\n else { // Triple click\n let visual = view.docView.lineAt(pos, bias), line = view.state.doc.lineAt(visual ? visual.posAtEnd : pos);\n let from = visual ? visual.posAtStart : line.from, to = visual ? visual.posAtEnd : line.to;\n if (to < view.state.doc.length && to == line.to)\n to++;\n return EditorSelection.range(from, to);\n }\n}\nconst BadMouseDetail = browser.ie && browser.ie_version <= 11;\nlet lastMouseDown = null, lastMouseDownCount = 0, lastMouseDownTime = 0;\nfunction getClickType(event) {\n if (!BadMouseDetail)\n return event.detail;\n let last = lastMouseDown, lastTime = lastMouseDownTime;\n lastMouseDown = event;\n lastMouseDownTime = Date.now();\n return lastMouseDownCount = !last || (lastTime > Date.now() - 400 && Math.abs(last.clientX - event.clientX) < 2 &&\n Math.abs(last.clientY - event.clientY) < 2) ? (lastMouseDownCount + 1) % 3 : 1;\n}\nfunction basicMouseSelection(view, event) {\n let start = view.posAndSideAtCoords({ x: event.clientX, y: event.clientY }, false), type = getClickType(event);\n let startSel = view.state.selection;\n return {\n update(update) {\n if (update.docChanged) {\n start.pos = update.changes.mapPos(start.pos);\n startSel = startSel.map(update.changes);\n }\n },\n get(event, extend, multiple) {\n let cur = view.posAndSideAtCoords({ x: event.clientX, y: event.clientY }, false), removed;\n let range = rangeForClick(view, cur.pos, cur.assoc, type);\n if (start.pos != cur.pos && !extend) {\n let startRange = rangeForClick(view, start.pos, start.assoc, type);\n let from = Math.min(startRange.from, range.from), to = Math.max(startRange.to, range.to);\n range = from < range.from ? EditorSelection.range(from, to) : EditorSelection.range(to, from);\n }\n if (extend)\n return startSel.replaceRange(startSel.main.extend(range.from, range.to));\n else if (multiple && type == 1 && startSel.ranges.length > 1 && (removed = removeRangeAround(startSel, cur.pos)))\n return removed;\n else if (multiple)\n return startSel.addRange(range);\n else\n return EditorSelection.create([range]);\n }\n };\n}\nfunction removeRangeAround(sel, pos) {\n for (let i = 0; i < sel.ranges.length; i++) {\n let { from, to } = sel.ranges[i];\n if (from <= pos && to >= pos)\n return EditorSelection.create(sel.ranges.slice(0, i).concat(sel.ranges.slice(i + 1)), sel.mainIndex == i ? 0 : sel.mainIndex - (sel.mainIndex > i ? 1 : 0));\n }\n return null;\n}\nhandlers.dragstart = (view, event) => {\n let { selection: { main: range } } = view.state;\n if (event.target.draggable) {\n let tile = view.docView.tile.nearest(event.target);\n if (tile && tile.isWidget()) {\n let from = tile.posAtStart, to = from + tile.length;\n if (from >= range.to || to <= range.from)\n range = EditorSelection.range(from, to);\n }\n }\n let { inputState } = view;\n if (inputState.mouseSelection)\n inputState.mouseSelection.dragging = true;\n inputState.draggedContent = range;\n if (event.dataTransfer) {\n event.dataTransfer.setData(\"Text\", textFilter(view.state, clipboardOutputFilter, view.state.sliceDoc(range.from, range.to)));\n event.dataTransfer.effectAllowed = \"copyMove\";\n }\n return false;\n};\nhandlers.dragend = view => {\n view.inputState.draggedContent = null;\n return false;\n};\nfunction dropText(view, event, text, direct) {\n text = textFilter(view.state, clipboardInputFilter, text);\n if (!text)\n return;\n let dropPos = view.posAtCoords({ x: event.clientX, y: event.clientY }, false);\n let { draggedContent } = view.inputState;\n let del = direct && draggedContent && dragMovesSelection(view, event)\n ? { from: draggedContent.from, to: draggedContent.to } : null;\n let ins = { from: dropPos, insert: text };\n let changes = view.state.changes(del ? [del, ins] : ins);\n view.focus();\n view.dispatch({\n changes,\n selection: { anchor: changes.mapPos(dropPos, -1), head: changes.mapPos(dropPos, 1) },\n userEvent: del ? \"move.drop\" : \"input.drop\"\n });\n view.inputState.draggedContent = null;\n}\nhandlers.drop = (view, event) => {\n if (!event.dataTransfer)\n return false;\n if (view.state.readOnly)\n return true;\n let files = event.dataTransfer.files;\n if (files && files.length) { // For a file drop, read the file's text.\n let text = Array(files.length), read = 0;\n let finishFile = () => {\n if (++read == files.length)\n dropText(view, event, text.filter(s => s != null).join(view.state.lineBreak), false);\n };\n for (let i = 0; i < files.length; i++) {\n let reader = new FileReader;\n reader.onerror = finishFile;\n reader.onload = () => {\n if (!/[\\x00-\\x08\\x0e-\\x1f]{2}/.test(reader.result))\n text[i] = reader.result;\n finishFile();\n };\n reader.readAsText(files[i]);\n }\n return true;\n }\n else {\n let text = event.dataTransfer.getData(\"Text\");\n if (text) {\n dropText(view, event, text, true);\n return true;\n }\n }\n return false;\n};\nhandlers.paste = (view, event) => {\n if (view.state.readOnly)\n return true;\n view.observer.flush();\n let data = brokenClipboardAPI ? null : event.clipboardData;\n if (data) {\n doPaste(view, data.getData(\"text/plain\") || data.getData(\"text/uri-list\"));\n return true;\n }\n else {\n capturePaste(view);\n return false;\n }\n};\nfunction captureCopy(view, text) {\n // The extra wrapper is somehow necessary on IE/Edge to prevent the\n // content from being mangled when it is put onto the clipboard\n let parent = view.dom.parentNode;\n if (!parent)\n return;\n let target = parent.appendChild(document.createElement(\"textarea\"));\n target.style.cssText = \"position: fixed; left: -10000px; top: 10px\";\n target.value = text;\n target.focus();\n target.selectionEnd = text.length;\n target.selectionStart = 0;\n setTimeout(() => {\n target.remove();\n view.focus();\n }, 50);\n}\nfunction copiedRange(state) {\n let content = [], ranges = [], linewise = false;\n for (let range of state.selection.ranges)\n if (!range.empty) {\n content.push(state.sliceDoc(range.from, range.to));\n ranges.push(range);\n }\n if (!content.length) {\n // Nothing selected, do a line-wise copy\n let upto = -1;\n for (let { from } of state.selection.ranges) {\n let line = state.doc.lineAt(from);\n if (line.number > upto) {\n content.push(line.text);\n ranges.push({ from: line.from, to: Math.min(state.doc.length, line.to + 1) });\n }\n upto = line.number;\n }\n linewise = true;\n }\n return { text: textFilter(state, clipboardOutputFilter, content.join(state.lineBreak)), ranges, linewise };\n}\nlet lastLinewiseCopy = null;\nhandlers.copy = handlers.cut = (view, event) => {\n let { text, ranges, linewise } = copiedRange(view.state);\n if (!text && !linewise)\n return false;\n lastLinewiseCopy = linewise ? text : null;\n if (event.type == \"cut\" && !view.state.readOnly)\n view.dispatch({\n changes: ranges,\n scrollIntoView: true,\n userEvent: \"delete.cut\"\n });\n let data = brokenClipboardAPI ? null : event.clipboardData;\n if (data) {\n data.clearData();\n data.setData(\"text/plain\", text);\n return true;\n }\n else {\n captureCopy(view, text);\n return false;\n }\n};\nconst isFocusChange = /*@__PURE__*/Annotation.define();\nfunction focusChangeTransaction(state, focus) {\n let effects = [];\n for (let getEffect of state.facet(focusChangeEffect)) {\n let effect = getEffect(state, focus);\n if (effect)\n effects.push(effect);\n }\n return effects.length ? state.update({ effects, annotations: isFocusChange.of(true) }) : null;\n}\nfunction updateForFocusChange(view) {\n setTimeout(() => {\n let focus = view.hasFocus;\n if (focus != view.inputState.notifiedFocused) {\n let tr = focusChangeTransaction(view.state, focus);\n if (tr)\n view.dispatch(tr);\n else\n view.update([]);\n }\n }, 10);\n}\nobservers.focus = view => {\n view.inputState.lastFocusTime = Date.now();\n // When focusing reset the scroll position, move it back to where it was\n if (!view.scrollDOM.scrollTop && (view.inputState.lastScrollTop || view.inputState.lastScrollLeft)) {\n view.scrollDOM.scrollTop = view.inputState.lastScrollTop;\n view.scrollDOM.scrollLeft = view.inputState.lastScrollLeft;\n }\n updateForFocusChange(view);\n};\nobservers.blur = view => {\n view.observer.clearSelectionRange();\n updateForFocusChange(view);\n};\nobservers.compositionstart = observers.compositionupdate = view => {\n if (view.observer.editContext)\n return; // Composition handled by edit context\n if (view.inputState.compositionFirstChange == null)\n view.inputState.compositionFirstChange = true;\n if (view.inputState.composing < 0) {\n // FIXME possibly set a timeout to clear it again on Android\n view.inputState.composing = 0;\n }\n};\nobservers.compositionend = view => {\n if (view.observer.editContext)\n return; // Composition handled by edit context\n view.inputState.composing = -1;\n view.inputState.compositionEndedAt = Date.now();\n view.inputState.compositionPendingKey = true;\n view.inputState.compositionPendingChange = view.observer.pendingRecords().length > 0;\n view.inputState.compositionFirstChange = null;\n if (browser.chrome && browser.android) {\n // Delay flushing for a bit on Android because it'll often fire a\n // bunch of contradictory changes in a row at end of compositon\n view.observer.flushSoon();\n }\n else if (view.inputState.compositionPendingChange) {\n // If we found pending records, schedule a flush.\n Promise.resolve().then(() => view.observer.flush());\n }\n else {\n // Otherwise, make sure that, if no changes come in soon, the\n // composition view is cleared.\n setTimeout(() => {\n if (view.inputState.composing < 0 && view.docView.hasComposition)\n view.update([]);\n }, 50);\n }\n};\nobservers.contextmenu = view => {\n view.inputState.lastContextMenu = Date.now();\n};\nhandlers.beforeinput = (view, event) => {\n var _a, _b;\n if (event.inputType == \"insertText\" || event.inputType == \"insertCompositionText\") {\n view.inputState.insertingText = event.data;\n view.inputState.insertingTextAt = Date.now();\n }\n // In EditContext mode, we must handle insertReplacementText events\n // directly, to make spell checking corrections work\n if (event.inputType == \"insertReplacementText\" && view.observer.editContext) {\n let text = (_a = event.dataTransfer) === null || _a === void 0 ? void 0 : _a.getData(\"text/plain\"), ranges = event.getTargetRanges();\n if (text && ranges.length) {\n let r = ranges[0];\n let from = view.posAtDOM(r.startContainer, r.startOffset), to = view.posAtDOM(r.endContainer, r.endOffset);\n applyDOMChangeInner(view, { from, to, insert: view.state.toText(text) }, null);\n return true;\n }\n }\n // Because Chrome Android doesn't fire useful key events, use\n // beforeinput to detect backspace (and possibly enter and delete,\n // but those usually don't even seem to fire beforeinput events at\n // the moment) and fake a key event for it.\n //\n // (preventDefault on beforeinput, though supported in the spec,\n // seems to do nothing at all on Chrome).\n let pending;\n if (browser.chrome && browser.android && (pending = PendingKeys.find(key => key.inputType == event.inputType))) {\n view.observer.delayAndroidKey(pending.key, pending.keyCode);\n if (pending.key == \"Backspace\" || pending.key == \"Delete\") {\n let startViewHeight = ((_b = window.visualViewport) === null || _b === void 0 ? void 0 : _b.height) || 0;\n setTimeout(() => {\n var _a;\n // Backspacing near uneditable nodes on Chrome Android sometimes\n // closes the virtual keyboard. This tries to crudely detect\n // that and refocus to get it back.\n if ((((_a = window.visualViewport) === null || _a === void 0 ? void 0 : _a.height) || 0) > startViewHeight + 10 && view.hasFocus) {\n view.contentDOM.blur();\n view.focus();\n }\n }, 100);\n }\n }\n if (browser.ios && event.inputType == \"deleteContentForward\") {\n // For some reason, DOM changes (and beforeinput) happen _before_\n // the key event for ctrl-d on iOS when using an external\n // keyboard.\n view.observer.flushSoon();\n }\n // Safari will occasionally forget to fire compositionend at the end of a dead-key composition\n if (browser.safari && event.inputType == \"insertText\" && view.inputState.composing >= 0) {\n setTimeout(() => observers.compositionend(view, event), 20);\n }\n return false;\n};\nconst appliedFirefoxHack = /*@__PURE__*/new Set;\n// In Firefox, when cut/copy handlers are added to the document, that\n// somehow avoids a bug where those events aren't fired when the\n// selection is empty. See https://github.com/codemirror/dev/issues/1082\n// and https://bugzilla.mozilla.org/show_bug.cgi?id=995961\nfunction firefoxCopyCutHack(doc) {\n if (!appliedFirefoxHack.has(doc)) {\n appliedFirefoxHack.add(doc);\n doc.addEventListener(\"copy\", () => { });\n doc.addEventListener(\"cut\", () => { });\n }\n}\n\nconst wrappingWhiteSpace = [\"pre-wrap\", \"normal\", \"pre-line\", \"break-spaces\"];\n// Used to track, during updateHeight, if any actual heights changed\nlet heightChangeFlag = false;\nfunction clearHeightChangeFlag() { heightChangeFlag = false; }\nclass HeightOracle {\n constructor(lineWrapping) {\n this.lineWrapping = lineWrapping;\n this.doc = Text.empty;\n this.heightSamples = {};\n this.lineHeight = 14; // The height of an entire line (line-height)\n this.charWidth = 7;\n this.textHeight = 14; // The height of the actual font (font-size)\n this.lineLength = 30;\n }\n heightForGap(from, to) {\n let lines = this.doc.lineAt(to).number - this.doc.lineAt(from).number + 1;\n if (this.lineWrapping)\n lines += Math.max(0, Math.ceil(((to - from) - (lines * this.lineLength * 0.5)) / this.lineLength));\n return this.lineHeight * lines;\n }\n heightForLine(length) {\n if (!this.lineWrapping)\n return this.lineHeight;\n let lines = 1 + Math.max(0, Math.ceil((length - this.lineLength) / Math.max(1, this.lineLength - 5)));\n return lines * this.lineHeight;\n }\n setDoc(doc) { this.doc = doc; return this; }\n mustRefreshForWrapping(whiteSpace) {\n return (wrappingWhiteSpace.indexOf(whiteSpace) > -1) != this.lineWrapping;\n }\n mustRefreshForHeights(lineHeights) {\n let newHeight = false;\n for (let i = 0; i < lineHeights.length; i++) {\n let h = lineHeights[i];\n if (h < 0) {\n i++;\n }\n else if (!this.heightSamples[Math.floor(h * 10)]) { // Round to .1 pixels\n newHeight = true;\n this.heightSamples[Math.floor(h * 10)] = true;\n }\n }\n return newHeight;\n }\n refresh(whiteSpace, lineHeight, charWidth, textHeight, lineLength, knownHeights) {\n let lineWrapping = wrappingWhiteSpace.indexOf(whiteSpace) > -1;\n let changed = Math.round(lineHeight) != Math.round(this.lineHeight) || this.lineWrapping != lineWrapping;\n this.lineWrapping = lineWrapping;\n this.lineHeight = lineHeight;\n this.charWidth = charWidth;\n this.textHeight = textHeight;\n this.lineLength = lineLength;\n if (changed) {\n this.heightSamples = {};\n for (let i = 0; i < knownHeights.length; i++) {\n let h = knownHeights[i];\n if (h < 0)\n i++;\n else\n this.heightSamples[Math.floor(h * 10)] = true;\n }\n }\n return changed;\n }\n}\n// This object is used by `updateHeight` to make DOM measurements\n// arrive at the right nodes. The `heights` array is a sequence of\n// block heights, starting from position `from`.\nclass MeasuredHeights {\n constructor(from, heights) {\n this.from = from;\n this.heights = heights;\n this.index = 0;\n }\n get more() { return this.index < this.heights.length; }\n}\n/**\nRecord used to represent information about a block-level element\nin the editor view.\n*/\nclass BlockInfo {\n /**\n @internal\n */\n constructor(\n /**\n The start of the element in the document.\n */\n from, \n /**\n The length of the element.\n */\n length, \n /**\n The top position of the element (relative to the top of the\n document).\n */\n top, \n /**\n Its height.\n */\n height, \n /**\n @internal Weird packed field that holds an array of children\n for composite blocks, a decoration for block widgets, and a\n number indicating the amount of widget-created line breaks for\n text blocks.\n */\n _content) {\n this.from = from;\n this.length = length;\n this.top = top;\n this.height = height;\n this._content = _content;\n }\n /**\n The type of element this is. When querying lines, this may be\n an array of all the blocks that make up the line.\n */\n get type() {\n return typeof this._content == \"number\" ? BlockType.Text :\n Array.isArray(this._content) ? this._content : this._content.type;\n }\n /**\n The end of the element as a document position.\n */\n get to() { return this.from + this.length; }\n /**\n The bottom position of the element.\n */\n get bottom() { return this.top + this.height; }\n /**\n If this is a widget block, this will return the widget\n associated with it.\n */\n get widget() {\n return this._content instanceof PointDecoration ? this._content.widget : null;\n }\n /**\n If this is a textblock, this holds the number of line breaks\n that appear in widgets inside the block.\n */\n get widgetLineBreaks() {\n return typeof this._content == \"number\" ? this._content : 0;\n }\n /**\n @internal\n */\n join(other) {\n let content = (Array.isArray(this._content) ? this._content : [this])\n .concat(Array.isArray(other._content) ? other._content : [other]);\n return new BlockInfo(this.from, this.length + other.length, this.top, this.height + other.height, content);\n }\n}\nvar QueryType = /*@__PURE__*/(function (QueryType) {\n QueryType[QueryType[\"ByPos\"] = 0] = \"ByPos\";\n QueryType[QueryType[\"ByHeight\"] = 1] = \"ByHeight\";\n QueryType[QueryType[\"ByPosNoHeight\"] = 2] = \"ByPosNoHeight\";\nreturn QueryType})(QueryType || (QueryType = {}));\nconst Epsilon = 1e-3;\nclass HeightMap {\n constructor(length, // The number of characters covered\n height, // Height of this part of the document\n flags = 2 /* Flag.Outdated */) {\n this.length = length;\n this.height = height;\n this.flags = flags;\n }\n get outdated() { return (this.flags & 2 /* Flag.Outdated */) > 0; }\n set outdated(value) { this.flags = (value ? 2 /* Flag.Outdated */ : 0) | (this.flags & ~2 /* Flag.Outdated */); }\n setHeight(height) {\n if (this.height != height) {\n if (Math.abs(this.height - height) > Epsilon)\n heightChangeFlag = true;\n this.height = height;\n }\n }\n // Base case is to replace a leaf node, which simply builds a tree\n // from the new nodes and returns that (HeightMapBranch and\n // HeightMapGap override this to actually use from/to)\n replace(_from, _to, nodes) {\n return HeightMap.of(nodes);\n }\n // Again, these are base cases, and are overridden for branch and gap nodes.\n decomposeLeft(_to, result) { result.push(this); }\n decomposeRight(_from, result) { result.push(this); }\n applyChanges(decorations, oldDoc, oracle, changes) {\n let me = this, doc = oracle.doc;\n for (let i = changes.length - 1; i >= 0; i--) {\n let { fromA, toA, fromB, toB } = changes[i];\n let start = me.lineAt(fromA, QueryType.ByPosNoHeight, oracle.setDoc(oldDoc), 0, 0);\n let end = start.to >= toA ? start : me.lineAt(toA, QueryType.ByPosNoHeight, oracle, 0, 0);\n toB += end.to - toA;\n toA = end.to;\n while (i > 0 && start.from <= changes[i - 1].toA) {\n fromA = changes[i - 1].fromA;\n fromB = changes[i - 1].fromB;\n i--;\n if (fromA < start.from)\n start = me.lineAt(fromA, QueryType.ByPosNoHeight, oracle, 0, 0);\n }\n fromB += start.from - fromA;\n fromA = start.from;\n let nodes = NodeBuilder.build(oracle.setDoc(doc), decorations, fromB, toB);\n me = replace(me, me.replace(fromA, toA, nodes));\n }\n return me.updateHeight(oracle, 0);\n }\n static empty() { return new HeightMapText(0, 0, 0); }\n // nodes uses null values to indicate the position of line breaks.\n // There are never line breaks at the start or end of the array, or\n // two line breaks next to each other, and the array isn't allowed\n // to be empty (same restrictions as return value from the builder).\n static of(nodes) {\n if (nodes.length == 1)\n return nodes[0];\n let i = 0, j = nodes.length, before = 0, after = 0;\n for (;;) {\n if (i == j) {\n if (before > after * 2) {\n let split = nodes[i - 1];\n if (split.break)\n nodes.splice(--i, 1, split.left, null, split.right);\n else\n nodes.splice(--i, 1, split.left, split.right);\n j += 1 + split.break;\n before -= split.size;\n }\n else if (after > before * 2) {\n let split = nodes[j];\n if (split.break)\n nodes.splice(j, 1, split.left, null, split.right);\n else\n nodes.splice(j, 1, split.left, split.right);\n j += 2 + split.break;\n after -= split.size;\n }\n else {\n break;\n }\n }\n else if (before < after) {\n let next = nodes[i++];\n if (next)\n before += next.size;\n }\n else {\n let next = nodes[--j];\n if (next)\n after += next.size;\n }\n }\n let brk = 0;\n if (nodes[i - 1] == null) {\n brk = 1;\n i--;\n }\n else if (nodes[i] == null) {\n brk = 1;\n j++;\n }\n return new HeightMapBranch(HeightMap.of(nodes.slice(0, i)), brk, HeightMap.of(nodes.slice(j)));\n }\n}\nfunction replace(old, val) {\n if (old == val)\n return old;\n if (old.constructor != val.constructor)\n heightChangeFlag = true;\n return val;\n}\nHeightMap.prototype.size = 1;\nconst SpaceDeco = /*@__PURE__*/Decoration.replace({});\nclass HeightMapBlock extends HeightMap {\n constructor(length, height, deco) {\n super(length, height);\n this.deco = deco;\n this.spaceAbove = 0;\n }\n mainBlock(top, offset) {\n return new BlockInfo(offset, this.length, top + this.spaceAbove, this.height - this.spaceAbove, this.deco || 0);\n }\n blockAt(height, _oracle, top, offset) {\n return this.spaceAbove && height < top + this.spaceAbove ? new BlockInfo(offset, 0, top, this.spaceAbove, SpaceDeco)\n : this.mainBlock(top, offset);\n }\n lineAt(_value, _type, oracle, top, offset) {\n let main = this.mainBlock(top, offset);\n return this.spaceAbove ? this.blockAt(0, oracle, top, offset).join(main) : main;\n }\n forEachLine(from, to, oracle, top, offset, f) {\n if (from <= offset + this.length && to >= offset)\n f(this.lineAt(0, QueryType.ByPos, oracle, top, offset));\n }\n setMeasuredHeight(measured) {\n let next = measured.heights[measured.index++];\n if (next < 0) {\n this.spaceAbove = -next;\n next = measured.heights[measured.index++];\n }\n else {\n this.spaceAbove = 0;\n }\n this.setHeight(next);\n }\n updateHeight(oracle, offset = 0, _force = false, measured) {\n if (measured && measured.from <= offset && measured.more)\n this.setMeasuredHeight(measured);\n this.outdated = false;\n return this;\n }\n toString() { return `block(${this.length})`; }\n}\nclass HeightMapText extends HeightMapBlock {\n constructor(length, height, above) {\n super(length, height, null);\n this.collapsed = 0; // Amount of collapsed content in the line\n this.widgetHeight = 0; // Maximum inline widget height\n this.breaks = 0; // Number of widget-introduced line breaks on the line\n this.spaceAbove = above;\n }\n mainBlock(top, offset) {\n return new BlockInfo(offset, this.length, top + this.spaceAbove, this.height - this.spaceAbove, this.breaks);\n }\n replace(_from, _to, nodes) {\n let node = nodes[0];\n if (nodes.length == 1 && (node instanceof HeightMapText || node instanceof HeightMapGap && (node.flags & 4 /* Flag.SingleLine */)) &&\n Math.abs(this.length - node.length) < 10) {\n if (node instanceof HeightMapGap)\n node = new HeightMapText(node.length, this.height, this.spaceAbove);\n else\n node.height = this.height;\n if (!this.outdated)\n node.outdated = false;\n return node;\n }\n else {\n return HeightMap.of(nodes);\n }\n }\n updateHeight(oracle, offset = 0, force = false, measured) {\n if (measured && measured.from <= offset && measured.more) {\n this.setMeasuredHeight(measured);\n }\n else if (force || this.outdated) {\n this.spaceAbove = 0;\n this.setHeight(Math.max(this.widgetHeight, oracle.heightForLine(this.length - this.collapsed)) +\n this.breaks * oracle.lineHeight);\n }\n this.outdated = false;\n return this;\n }\n toString() {\n return `line(${this.length}${this.collapsed ? -this.collapsed : \"\"}${this.widgetHeight ? \":\" + this.widgetHeight : \"\"})`;\n }\n}\nclass HeightMapGap extends HeightMap {\n constructor(length) { super(length, 0); }\n heightMetrics(oracle, offset) {\n let firstLine = oracle.doc.lineAt(offset).number, lastLine = oracle.doc.lineAt(offset + this.length).number;\n let lines = lastLine - firstLine + 1;\n let perLine, perChar = 0;\n if (oracle.lineWrapping) {\n let totalPerLine = Math.min(this.height, oracle.lineHeight * lines);\n perLine = totalPerLine / lines;\n if (this.length > lines + 1)\n perChar = (this.height - totalPerLine) / (this.length - lines - 1);\n }\n else {\n perLine = this.height / lines;\n }\n return { firstLine, lastLine, perLine, perChar };\n }\n blockAt(height, oracle, top, offset) {\n let { firstLine, lastLine, perLine, perChar } = this.heightMetrics(oracle, offset);\n if (oracle.lineWrapping) {\n let guess = offset + (height < oracle.lineHeight ? 0\n : Math.round(Math.max(0, Math.min(1, (height - top) / this.height)) * this.length));\n let line = oracle.doc.lineAt(guess), lineHeight = perLine + line.length * perChar;\n let lineTop = Math.max(top, height - lineHeight / 2);\n return new BlockInfo(line.from, line.length, lineTop, lineHeight, 0);\n }\n else {\n let line = Math.max(0, Math.min(lastLine - firstLine, Math.floor((height - top) / perLine)));\n let { from, length } = oracle.doc.line(firstLine + line);\n return new BlockInfo(from, length, top + perLine * line, perLine, 0);\n }\n }\n lineAt(value, type, oracle, top, offset) {\n if (type == QueryType.ByHeight)\n return this.blockAt(value, oracle, top, offset);\n if (type == QueryType.ByPosNoHeight) {\n let { from, to } = oracle.doc.lineAt(value);\n return new BlockInfo(from, to - from, 0, 0, 0);\n }\n let { firstLine, perLine, perChar } = this.heightMetrics(oracle, offset);\n let line = oracle.doc.lineAt(value), lineHeight = perLine + line.length * perChar;\n let linesAbove = line.number - firstLine;\n let lineTop = top + perLine * linesAbove + perChar * (line.from - offset - linesAbove);\n return new BlockInfo(line.from, line.length, Math.max(top, Math.min(lineTop, top + this.height - lineHeight)), lineHeight, 0);\n }\n forEachLine(from, to, oracle, top, offset, f) {\n from = Math.max(from, offset);\n to = Math.min(to, offset + this.length);\n let { firstLine, perLine, perChar } = this.heightMetrics(oracle, offset);\n for (let pos = from, lineTop = top; pos <= to;) {\n let line = oracle.doc.lineAt(pos);\n if (pos == from) {\n let linesAbove = line.number - firstLine;\n lineTop += perLine * linesAbove + perChar * (from - offset - linesAbove);\n }\n let lineHeight = perLine + perChar * line.length;\n f(new BlockInfo(line.from, line.length, lineTop, lineHeight, 0));\n lineTop += lineHeight;\n pos = line.to + 1;\n }\n }\n replace(from, to, nodes) {\n let after = this.length - to;\n if (after > 0) {\n let last = nodes[nodes.length - 1];\n if (last instanceof HeightMapGap)\n nodes[nodes.length - 1] = new HeightMapGap(last.length + after);\n else\n nodes.push(null, new HeightMapGap(after - 1));\n }\n if (from > 0) {\n let first = nodes[0];\n if (first instanceof HeightMapGap)\n nodes[0] = new HeightMapGap(from + first.length);\n else\n nodes.unshift(new HeightMapGap(from - 1), null);\n }\n return HeightMap.of(nodes);\n }\n decomposeLeft(to, result) {\n result.push(new HeightMapGap(to - 1), null);\n }\n decomposeRight(from, result) {\n result.push(null, new HeightMapGap(this.length - from - 1));\n }\n updateHeight(oracle, offset = 0, force = false, measured) {\n let end = offset + this.length;\n if (measured && measured.from <= offset + this.length && measured.more) {\n // Fill in part of this gap with measured lines. We know there\n // can't be widgets or collapsed ranges in those lines, because\n // they would already have been added to the heightmap (gaps\n // only contain plain text).\n let nodes = [], pos = Math.max(offset, measured.from), singleHeight = -1;\n if (measured.from > offset)\n nodes.push(new HeightMapGap(measured.from - offset - 1).updateHeight(oracle, offset));\n while (pos <= end && measured.more) {\n let len = oracle.doc.lineAt(pos).length;\n if (nodes.length)\n nodes.push(null);\n let height = measured.heights[measured.index++], above = 0;\n if (height < 0) {\n above = -height;\n height = measured.heights[measured.index++];\n }\n if (singleHeight == -1)\n singleHeight = height;\n else if (Math.abs(height - singleHeight) >= Epsilon)\n singleHeight = -2;\n let line = new HeightMapText(len, height, above);\n line.outdated = false;\n nodes.push(line);\n pos += len + 1;\n }\n if (pos <= end)\n nodes.push(null, new HeightMapGap(end - pos).updateHeight(oracle, pos));\n let result = HeightMap.of(nodes);\n if (singleHeight < 0 || Math.abs(result.height - this.height) >= Epsilon ||\n Math.abs(singleHeight - this.heightMetrics(oracle, offset).perLine) >= Epsilon)\n heightChangeFlag = true;\n return replace(this, result);\n }\n else if (force || this.outdated) {\n this.setHeight(oracle.heightForGap(offset, offset + this.length));\n this.outdated = false;\n }\n return this;\n }\n toString() { return `gap(${this.length})`; }\n}\nclass HeightMapBranch extends HeightMap {\n constructor(left, brk, right) {\n super(left.length + brk + right.length, left.height + right.height, brk | (left.outdated || right.outdated ? 2 /* Flag.Outdated */ : 0));\n this.left = left;\n this.right = right;\n this.size = left.size + right.size;\n }\n get break() { return this.flags & 1 /* Flag.Break */; }\n blockAt(height, oracle, top, offset) {\n let mid = top + this.left.height;\n return height < mid ? this.left.blockAt(height, oracle, top, offset)\n : this.right.blockAt(height, oracle, mid, offset + this.left.length + this.break);\n }\n lineAt(value, type, oracle, top, offset) {\n let rightTop = top + this.left.height, rightOffset = offset + this.left.length + this.break;\n let left = type == QueryType.ByHeight ? value < rightTop : value < rightOffset;\n let base = left ? this.left.lineAt(value, type, oracle, top, offset)\n : this.right.lineAt(value, type, oracle, rightTop, rightOffset);\n if (this.break || (left ? base.to < rightOffset : base.from > rightOffset))\n return base;\n let subQuery = type == QueryType.ByPosNoHeight ? QueryType.ByPosNoHeight : QueryType.ByPos;\n if (left)\n return base.join(this.right.lineAt(rightOffset, subQuery, oracle, rightTop, rightOffset));\n else\n return this.left.lineAt(rightOffset, subQuery, oracle, top, offset).join(base);\n }\n forEachLine(from, to, oracle, top, offset, f) {\n let rightTop = top + this.left.height, rightOffset = offset + this.left.length + this.break;\n if (this.break) {\n if (from < rightOffset)\n this.left.forEachLine(from, to, oracle, top, offset, f);\n if (to >= rightOffset)\n this.right.forEachLine(from, to, oracle, rightTop, rightOffset, f);\n }\n else {\n let mid = this.lineAt(rightOffset, QueryType.ByPos, oracle, top, offset);\n if (from < mid.from)\n this.left.forEachLine(from, mid.from - 1, oracle, top, offset, f);\n if (mid.to >= from && mid.from <= to)\n f(mid);\n if (to > mid.to)\n this.right.forEachLine(mid.to + 1, to, oracle, rightTop, rightOffset, f);\n }\n }\n replace(from, to, nodes) {\n let rightStart = this.left.length + this.break;\n if (to < rightStart)\n return this.balanced(this.left.replace(from, to, nodes), this.right);\n if (from > this.left.length)\n return this.balanced(this.left, this.right.replace(from - rightStart, to - rightStart, nodes));\n let result = [];\n if (from > 0)\n this.decomposeLeft(from, result);\n let left = result.length;\n for (let node of nodes)\n result.push(node);\n if (from > 0)\n mergeGaps(result, left - 1);\n if (to < this.length) {\n let right = result.length;\n this.decomposeRight(to, result);\n mergeGaps(result, right);\n }\n return HeightMap.of(result);\n }\n decomposeLeft(to, result) {\n let left = this.left.length;\n if (to <= left)\n return this.left.decomposeLeft(to, result);\n result.push(this.left);\n if (this.break) {\n left++;\n if (to >= left)\n result.push(null);\n }\n if (to > left)\n this.right.decomposeLeft(to - left, result);\n }\n decomposeRight(from, result) {\n let left = this.left.length, right = left + this.break;\n if (from >= right)\n return this.right.decomposeRight(from - right, result);\n if (from < left)\n this.left.decomposeRight(from, result);\n if (this.break && from < right)\n result.push(null);\n result.push(this.right);\n }\n balanced(left, right) {\n if (left.size > 2 * right.size || right.size > 2 * left.size)\n return HeightMap.of(this.break ? [left, null, right] : [left, right]);\n this.left = replace(this.left, left);\n this.right = replace(this.right, right);\n this.setHeight(left.height + right.height);\n this.outdated = left.outdated || right.outdated;\n this.size = left.size + right.size;\n this.length = left.length + this.break + right.length;\n return this;\n }\n updateHeight(oracle, offset = 0, force = false, measured) {\n let { left, right } = this, rightStart = offset + left.length + this.break, rebalance = null;\n if (measured && measured.from <= offset + left.length && measured.more)\n rebalance = left = left.updateHeight(oracle, offset, force, measured);\n else\n left.updateHeight(oracle, offset, force);\n if (measured && measured.from <= rightStart + right.length && measured.more)\n rebalance = right = right.updateHeight(oracle, rightStart, force, measured);\n else\n right.updateHeight(oracle, rightStart, force);\n if (rebalance)\n return this.balanced(left, right);\n this.height = this.left.height + this.right.height;\n this.outdated = false;\n return this;\n }\n toString() { return this.left + (this.break ? \" \" : \"-\") + this.right; }\n}\nfunction mergeGaps(nodes, around) {\n let before, after;\n if (nodes[around] == null &&\n (before = nodes[around - 1]) instanceof HeightMapGap &&\n (after = nodes[around + 1]) instanceof HeightMapGap)\n nodes.splice(around - 1, 3, new HeightMapGap(before.length + 1 + after.length));\n}\nconst relevantWidgetHeight = 5;\nclass NodeBuilder {\n constructor(pos, oracle) {\n this.pos = pos;\n this.oracle = oracle;\n this.nodes = [];\n this.lineStart = -1;\n this.lineEnd = -1;\n this.covering = null;\n this.writtenTo = pos;\n }\n get isCovered() {\n return this.covering && this.nodes[this.nodes.length - 1] == this.covering;\n }\n span(_from, to) {\n if (this.lineStart > -1) {\n let end = Math.min(to, this.lineEnd), last = this.nodes[this.nodes.length - 1];\n if (last instanceof HeightMapText)\n last.length += end - this.pos;\n else if (end > this.pos || !this.isCovered)\n this.nodes.push(new HeightMapText(end - this.pos, -1, 0));\n this.writtenTo = end;\n if (to > end) {\n this.nodes.push(null);\n this.writtenTo++;\n this.lineStart = -1;\n }\n }\n this.pos = to;\n }\n point(from, to, deco) {\n if (from < to || deco.heightRelevant) {\n let height = deco.widget ? deco.widget.estimatedHeight : 0;\n let breaks = deco.widget ? deco.widget.lineBreaks : 0;\n if (height < 0)\n height = this.oracle.lineHeight;\n let len = to - from;\n if (deco.block) {\n this.addBlock(new HeightMapBlock(len, height, deco));\n }\n else if (len || breaks || height >= relevantWidgetHeight) {\n this.addLineDeco(height, breaks, len);\n }\n }\n else if (to > from) {\n this.span(from, to);\n }\n if (this.lineEnd > -1 && this.lineEnd < this.pos)\n this.lineEnd = this.oracle.doc.lineAt(this.pos).to;\n }\n enterLine() {\n if (this.lineStart > -1)\n return;\n let { from, to } = this.oracle.doc.lineAt(this.pos);\n this.lineStart = from;\n this.lineEnd = to;\n if (this.writtenTo < from) {\n if (this.writtenTo < from - 1 || this.nodes[this.nodes.length - 1] == null)\n this.nodes.push(this.blankContent(this.writtenTo, from - 1));\n this.nodes.push(null);\n }\n if (this.pos > from)\n this.nodes.push(new HeightMapText(this.pos - from, -1, 0));\n this.writtenTo = this.pos;\n }\n blankContent(from, to) {\n let gap = new HeightMapGap(to - from);\n if (this.oracle.doc.lineAt(from).to == to)\n gap.flags |= 4 /* Flag.SingleLine */;\n return gap;\n }\n ensureLine() {\n this.enterLine();\n let last = this.nodes.length ? this.nodes[this.nodes.length - 1] : null;\n if (last instanceof HeightMapText)\n return last;\n let line = new HeightMapText(0, -1, 0);\n this.nodes.push(line);\n return line;\n }\n addBlock(block) {\n this.enterLine();\n let deco = block.deco;\n if (deco && deco.startSide > 0 && !this.isCovered)\n this.ensureLine();\n this.nodes.push(block);\n this.writtenTo = this.pos = this.pos + block.length;\n if (deco && deco.endSide > 0)\n this.covering = block;\n }\n addLineDeco(height, breaks, length) {\n let line = this.ensureLine();\n line.length += length;\n line.collapsed += length;\n line.widgetHeight = Math.max(line.widgetHeight, height);\n line.breaks += breaks;\n this.writtenTo = this.pos = this.pos + length;\n }\n finish(from) {\n let last = this.nodes.length == 0 ? null : this.nodes[this.nodes.length - 1];\n if (this.lineStart > -1 && !(last instanceof HeightMapText) && !this.isCovered)\n this.nodes.push(new HeightMapText(0, -1, 0));\n else if (this.writtenTo < this.pos || last == null)\n this.nodes.push(this.blankContent(this.writtenTo, this.pos));\n let pos = from;\n for (let node of this.nodes) {\n if (node instanceof HeightMapText)\n node.updateHeight(this.oracle, pos);\n pos += node ? node.length : 1;\n }\n return this.nodes;\n }\n // Always called with a region that on both sides either stretches\n // to a line break or the end of the document.\n // The returned array uses null to indicate line breaks, but never\n // starts or ends in a line break, or has multiple line breaks next\n // to each other.\n static build(oracle, decorations, from, to) {\n let builder = new NodeBuilder(from, oracle);\n RangeSet.spans(decorations, from, to, builder, 0);\n return builder.finish(from);\n }\n}\nfunction heightRelevantDecoChanges(a, b, diff) {\n let comp = new DecorationComparator;\n RangeSet.compare(a, b, diff, comp, 0);\n return comp.changes;\n}\nclass DecorationComparator {\n constructor() {\n this.changes = [];\n }\n compareRange() { }\n comparePoint(from, to, a, b) {\n if (from < to || a && a.heightRelevant || b && b.heightRelevant)\n addRange(from, to, this.changes, 5);\n }\n}\n\nfunction visiblePixelRange(dom, paddingTop) {\n let rect = dom.getBoundingClientRect();\n let doc = dom.ownerDocument, win = doc.defaultView || window;\n let left = Math.max(0, rect.left), right = Math.min(win.innerWidth, rect.right);\n let top = Math.max(0, rect.top), bottom = Math.min(win.innerHeight, rect.bottom);\n for (let parent = dom.parentNode; parent && parent != doc.body;) {\n if (parent.nodeType == 1) {\n let elt = parent;\n let style = window.getComputedStyle(elt);\n if ((elt.scrollHeight > elt.clientHeight || elt.scrollWidth > elt.clientWidth) &&\n style.overflow != \"visible\") {\n let parentRect = elt.getBoundingClientRect();\n left = Math.max(left, parentRect.left);\n right = Math.min(right, parentRect.right);\n top = Math.max(top, parentRect.top);\n bottom = Math.min(parent == dom.parentNode ? win.innerHeight : bottom, parentRect.bottom);\n }\n parent = style.position == \"absolute\" || style.position == \"fixed\" ? elt.offsetParent : elt.parentNode;\n }\n else if (parent.nodeType == 11) { // Shadow root\n parent = parent.host;\n }\n else {\n break;\n }\n }\n return { left: left - rect.left, right: Math.max(left, right) - rect.left,\n top: top - (rect.top + paddingTop), bottom: Math.max(top, bottom) - (rect.top + paddingTop) };\n}\nfunction inWindow(elt) {\n let rect = elt.getBoundingClientRect(), win = elt.ownerDocument.defaultView || window;\n return rect.left < win.innerWidth && rect.right > 0 &&\n rect.top < win.innerHeight && rect.bottom > 0;\n}\nfunction fullPixelRange(dom, paddingTop) {\n let rect = dom.getBoundingClientRect();\n return { left: 0, right: rect.right - rect.left,\n top: paddingTop, bottom: rect.bottom - (rect.top + paddingTop) };\n}\n// Line gaps are placeholder widgets used to hide pieces of overlong\n// lines within the viewport, as a kludge to keep the editor\n// responsive when a ridiculously long line is loaded into it.\nclass LineGap {\n constructor(from, to, size, displaySize) {\n this.from = from;\n this.to = to;\n this.size = size;\n this.displaySize = displaySize;\n }\n static same(a, b) {\n if (a.length != b.length)\n return false;\n for (let i = 0; i < a.length; i++) {\n let gA = a[i], gB = b[i];\n if (gA.from != gB.from || gA.to != gB.to || gA.size != gB.size)\n return false;\n }\n return true;\n }\n draw(viewState, wrapping) {\n return Decoration.replace({\n widget: new LineGapWidget(this.displaySize * (wrapping ? viewState.scaleY : viewState.scaleX), wrapping)\n }).range(this.from, this.to);\n }\n}\nclass LineGapWidget extends WidgetType {\n constructor(size, vertical) {\n super();\n this.size = size;\n this.vertical = vertical;\n }\n eq(other) { return other.size == this.size && other.vertical == this.vertical; }\n toDOM() {\n let elt = document.createElement(\"div\");\n if (this.vertical) {\n elt.style.height = this.size + \"px\";\n }\n else {\n elt.style.width = this.size + \"px\";\n elt.style.height = \"2px\";\n elt.style.display = \"inline-block\";\n }\n return elt;\n }\n get estimatedHeight() { return this.vertical ? this.size : -1; }\n}\nclass ViewState {\n constructor(state) {\n this.state = state;\n // These are contentDOM-local coordinates\n this.pixelViewport = { left: 0, right: window.innerWidth, top: 0, bottom: 0 };\n this.inView = true;\n this.paddingTop = 0; // Padding above the document, scaled\n this.paddingBottom = 0; // Padding below the document, scaled\n this.contentDOMWidth = 0; // contentDOM.getBoundingClientRect().width\n this.contentDOMHeight = 0; // contentDOM.getBoundingClientRect().height\n this.editorHeight = 0; // scrollDOM.clientHeight, unscaled\n this.editorWidth = 0; // scrollDOM.clientWidth, unscaled\n this.scrollTop = 0; // Last seen scrollDOM.scrollTop, scaled\n this.scrolledToBottom = false;\n // The CSS-transformation scale of the editor (transformed size /\n // concrete size)\n this.scaleX = 1;\n this.scaleY = 1;\n // The vertical position (document-relative) to which to anchor the\n // scroll position. -1 means anchor to the end of the document.\n this.scrollAnchorPos = 0;\n // The height at the anchor position. Set by the DOM update phase.\n // -1 means no height available.\n this.scrollAnchorHeight = -1;\n // See VP.MaxDOMHeight\n this.scaler = IdScaler;\n this.scrollTarget = null;\n // Briefly set to true when printing, to disable viewport limiting\n this.printing = false;\n // Flag set when editor content was redrawn, so that the next\n // measure stage knows it must read DOM layout\n this.mustMeasureContent = true;\n this.defaultTextDirection = Direction.LTR;\n this.visibleRanges = [];\n // Cursor 'assoc' is only significant when the cursor is on a line\n // wrap point, where it must stick to the character that it is\n // associated with. Since browsers don't provide a reasonable\n // interface to set or query this, when a selection is set that\n // might cause this to be significant, this flag is set. The next\n // measure phase will check whether the cursor is on a line-wrapping\n // boundary and, if so, reset it to make sure it is positioned in\n // the right place.\n this.mustEnforceCursorAssoc = false;\n let guessWrapping = state.facet(contentAttributes).some(v => typeof v != \"function\" && v.class == \"cm-lineWrapping\");\n this.heightOracle = new HeightOracle(guessWrapping);\n this.stateDeco = state.facet(decorations).filter(d => typeof d != \"function\");\n this.heightMap = HeightMap.empty().applyChanges(this.stateDeco, Text.empty, this.heightOracle.setDoc(state.doc), [new ChangedRange(0, 0, 0, state.doc.length)]);\n for (let i = 0; i < 2; i++) {\n this.viewport = this.getViewport(0, null);\n if (!this.updateForViewport())\n break;\n }\n this.updateViewportLines();\n this.lineGaps = this.ensureLineGaps([]);\n this.lineGapDeco = Decoration.set(this.lineGaps.map(gap => gap.draw(this, false)));\n this.computeVisibleRanges();\n }\n updateForViewport() {\n let viewports = [this.viewport], { main } = this.state.selection;\n for (let i = 0; i <= 1; i++) {\n let pos = i ? main.head : main.anchor;\n if (!viewports.some(({ from, to }) => pos >= from && pos <= to)) {\n let { from, to } = this.lineBlockAt(pos);\n viewports.push(new Viewport(from, to));\n }\n }\n this.viewports = viewports.sort((a, b) => a.from - b.from);\n return this.updateScaler();\n }\n updateScaler() {\n let scaler = this.scaler;\n this.scaler = this.heightMap.height <= 7000000 /* VP.MaxDOMHeight */ ? IdScaler :\n new BigScaler(this.heightOracle, this.heightMap, this.viewports);\n return scaler.eq(this.scaler) ? 0 : 2 /* UpdateFlag.Height */;\n }\n updateViewportLines() {\n this.viewportLines = [];\n this.heightMap.forEachLine(this.viewport.from, this.viewport.to, this.heightOracle.setDoc(this.state.doc), 0, 0, block => {\n this.viewportLines.push(scaleBlock(block, this.scaler));\n });\n }\n update(update, scrollTarget = null) {\n this.state = update.state;\n let prevDeco = this.stateDeco;\n this.stateDeco = this.state.facet(decorations).filter(d => typeof d != \"function\");\n let contentChanges = update.changedRanges;\n let heightChanges = ChangedRange.extendWithRanges(contentChanges, heightRelevantDecoChanges(prevDeco, this.stateDeco, update ? update.changes : ChangeSet.empty(this.state.doc.length)));\n let prevHeight = this.heightMap.height;\n let scrollAnchor = this.scrolledToBottom ? null : this.scrollAnchorAt(this.scrollTop);\n clearHeightChangeFlag();\n this.heightMap = this.heightMap.applyChanges(this.stateDeco, update.startState.doc, this.heightOracle.setDoc(this.state.doc), heightChanges);\n if (this.heightMap.height != prevHeight || heightChangeFlag)\n update.flags |= 2 /* UpdateFlag.Height */;\n if (scrollAnchor) {\n this.scrollAnchorPos = update.changes.mapPos(scrollAnchor.from, -1);\n this.scrollAnchorHeight = scrollAnchor.top;\n }\n else {\n this.scrollAnchorPos = -1;\n this.scrollAnchorHeight = prevHeight;\n }\n let viewport = heightChanges.length ? this.mapViewport(this.viewport, update.changes) : this.viewport;\n if (scrollTarget && (scrollTarget.range.head < viewport.from || scrollTarget.range.head > viewport.to) ||\n !this.viewportIsAppropriate(viewport))\n viewport = this.getViewport(0, scrollTarget);\n let viewportChange = viewport.from != this.viewport.from || viewport.to != this.viewport.to;\n this.viewport = viewport;\n update.flags |= this.updateForViewport();\n if (viewportChange || !update.changes.empty || (update.flags & 2 /* UpdateFlag.Height */))\n this.updateViewportLines();\n if (this.lineGaps.length || this.viewport.to - this.viewport.from > (2000 /* LG.Margin */ << 1))\n this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps, update.changes)));\n update.flags |= this.computeVisibleRanges(update.changes);\n if (scrollTarget)\n this.scrollTarget = scrollTarget;\n if (!this.mustEnforceCursorAssoc && update.selectionSet && update.view.lineWrapping &&\n update.state.selection.main.empty && update.state.selection.main.assoc &&\n !update.state.facet(nativeSelectionHidden))\n this.mustEnforceCursorAssoc = true;\n }\n measure(view) {\n let dom = view.contentDOM, style = window.getComputedStyle(dom);\n let oracle = this.heightOracle;\n let whiteSpace = style.whiteSpace;\n this.defaultTextDirection = style.direction == \"rtl\" ? Direction.RTL : Direction.LTR;\n let refresh = this.heightOracle.mustRefreshForWrapping(whiteSpace);\n let domRect = dom.getBoundingClientRect();\n let measureContent = refresh || this.mustMeasureContent || this.contentDOMHeight != domRect.height;\n this.contentDOMHeight = domRect.height;\n this.mustMeasureContent = false;\n let result = 0, bias = 0;\n if (domRect.width && domRect.height) {\n let { scaleX, scaleY } = getScale(dom, domRect);\n if (scaleX > .005 && Math.abs(this.scaleX - scaleX) > .005 ||\n scaleY > .005 && Math.abs(this.scaleY - scaleY) > .005) {\n this.scaleX = scaleX;\n this.scaleY = scaleY;\n result |= 16 /* UpdateFlag.Geometry */;\n refresh = measureContent = true;\n }\n }\n // Vertical padding\n let paddingTop = (parseInt(style.paddingTop) || 0) * this.scaleY;\n let paddingBottom = (parseInt(style.paddingBottom) || 0) * this.scaleY;\n if (this.paddingTop != paddingTop || this.paddingBottom != paddingBottom) {\n this.paddingTop = paddingTop;\n this.paddingBottom = paddingBottom;\n result |= 16 /* UpdateFlag.Geometry */ | 2 /* UpdateFlag.Height */;\n }\n if (this.editorWidth != view.scrollDOM.clientWidth) {\n if (oracle.lineWrapping)\n measureContent = true;\n this.editorWidth = view.scrollDOM.clientWidth;\n result |= 16 /* UpdateFlag.Geometry */;\n }\n let scrollTop = view.scrollDOM.scrollTop * this.scaleY;\n if (this.scrollTop != scrollTop) {\n this.scrollAnchorHeight = -1;\n this.scrollTop = scrollTop;\n }\n this.scrolledToBottom = isScrolledToBottom(view.scrollDOM);\n // Pixel viewport\n let pixelViewport = (this.printing ? fullPixelRange : visiblePixelRange)(dom, this.paddingTop);\n let dTop = pixelViewport.top - this.pixelViewport.top, dBottom = pixelViewport.bottom - this.pixelViewport.bottom;\n this.pixelViewport = pixelViewport;\n let inView = this.pixelViewport.bottom > this.pixelViewport.top && this.pixelViewport.right > this.pixelViewport.left;\n if (inView != this.inView) {\n this.inView = inView;\n if (inView)\n measureContent = true;\n }\n if (!this.inView && !this.scrollTarget && !inWindow(view.dom))\n return 0;\n let contentWidth = domRect.width;\n if (this.contentDOMWidth != contentWidth || this.editorHeight != view.scrollDOM.clientHeight) {\n this.contentDOMWidth = domRect.width;\n this.editorHeight = view.scrollDOM.clientHeight;\n result |= 16 /* UpdateFlag.Geometry */;\n }\n if (measureContent) {\n let lineHeights = view.docView.measureVisibleLineHeights(this.viewport);\n if (oracle.mustRefreshForHeights(lineHeights))\n refresh = true;\n if (refresh || oracle.lineWrapping && Math.abs(contentWidth - this.contentDOMWidth) > oracle.charWidth) {\n let { lineHeight, charWidth, textHeight } = view.docView.measureTextSize();\n refresh = lineHeight > 0 && oracle.refresh(whiteSpace, lineHeight, charWidth, textHeight, Math.max(5, contentWidth / charWidth), lineHeights);\n if (refresh) {\n view.docView.minWidth = 0;\n result |= 16 /* UpdateFlag.Geometry */;\n }\n }\n if (dTop > 0 && dBottom > 0)\n bias = Math.max(dTop, dBottom);\n else if (dTop < 0 && dBottom < 0)\n bias = Math.min(dTop, dBottom);\n clearHeightChangeFlag();\n for (let vp of this.viewports) {\n let heights = vp.from == this.viewport.from ? lineHeights : view.docView.measureVisibleLineHeights(vp);\n this.heightMap = (refresh ? HeightMap.empty().applyChanges(this.stateDeco, Text.empty, this.heightOracle, [new ChangedRange(0, 0, 0, view.state.doc.length)]) : this.heightMap).updateHeight(oracle, 0, refresh, new MeasuredHeights(vp.from, heights));\n }\n if (heightChangeFlag)\n result |= 2 /* UpdateFlag.Height */;\n }\n let viewportChange = !this.viewportIsAppropriate(this.viewport, bias) ||\n this.scrollTarget && (this.scrollTarget.range.head < this.viewport.from ||\n this.scrollTarget.range.head > this.viewport.to);\n if (viewportChange) {\n if (result & 2 /* UpdateFlag.Height */)\n result |= this.updateScaler();\n this.viewport = this.getViewport(bias, this.scrollTarget);\n result |= this.updateForViewport();\n }\n if ((result & 2 /* UpdateFlag.Height */) || viewportChange)\n this.updateViewportLines();\n if (this.lineGaps.length || this.viewport.to - this.viewport.from > (2000 /* LG.Margin */ << 1))\n this.updateLineGaps(this.ensureLineGaps(refresh ? [] : this.lineGaps, view));\n result |= this.computeVisibleRanges();\n if (this.mustEnforceCursorAssoc) {\n this.mustEnforceCursorAssoc = false;\n // This is done in the read stage, because moving the selection\n // to a line end is going to trigger a layout anyway, so it\n // can't be a pure write. It should be rare that it does any\n // writing.\n view.docView.enforceCursorAssoc();\n }\n return result;\n }\n get visibleTop() { return this.scaler.fromDOM(this.pixelViewport.top); }\n get visibleBottom() { return this.scaler.fromDOM(this.pixelViewport.bottom); }\n getViewport(bias, scrollTarget) {\n // This will divide VP.Margin between the top and the\n // bottom, depending on the bias (the change in viewport position\n // since the last update). It'll hold a number between 0 and 1\n let marginTop = 0.5 - Math.max(-0.5, Math.min(0.5, bias / 1000 /* VP.Margin */ / 2));\n let map = this.heightMap, oracle = this.heightOracle;\n let { visibleTop, visibleBottom } = this;\n let viewport = new Viewport(map.lineAt(visibleTop - marginTop * 1000 /* VP.Margin */, QueryType.ByHeight, oracle, 0, 0).from, map.lineAt(visibleBottom + (1 - marginTop) * 1000 /* VP.Margin */, QueryType.ByHeight, oracle, 0, 0).to);\n // If scrollTarget is given, make sure the viewport includes that position\n if (scrollTarget) {\n let { head } = scrollTarget.range;\n if (head < viewport.from || head > viewport.to) {\n let viewHeight = Math.min(this.editorHeight, this.pixelViewport.bottom - this.pixelViewport.top);\n let block = map.lineAt(head, QueryType.ByPos, oracle, 0, 0), topPos;\n if (scrollTarget.y == \"center\")\n topPos = (block.top + block.bottom) / 2 - viewHeight / 2;\n else if (scrollTarget.y == \"start\" || scrollTarget.y == \"nearest\" && head < viewport.from)\n topPos = block.top;\n else\n topPos = block.bottom - viewHeight;\n viewport = new Viewport(map.lineAt(topPos - 1000 /* VP.Margin */ / 2, QueryType.ByHeight, oracle, 0, 0).from, map.lineAt(topPos + viewHeight + 1000 /* VP.Margin */ / 2, QueryType.ByHeight, oracle, 0, 0).to);\n }\n }\n return viewport;\n }\n mapViewport(viewport, changes) {\n let from = changes.mapPos(viewport.from, -1), to = changes.mapPos(viewport.to, 1);\n return new Viewport(this.heightMap.lineAt(from, QueryType.ByPos, this.heightOracle, 0, 0).from, this.heightMap.lineAt(to, QueryType.ByPos, this.heightOracle, 0, 0).to);\n }\n // Checks if a given viewport covers the visible part of the\n // document and not too much beyond that.\n viewportIsAppropriate({ from, to }, bias = 0) {\n if (!this.inView)\n return true;\n let { top } = this.heightMap.lineAt(from, QueryType.ByPos, this.heightOracle, 0, 0);\n let { bottom } = this.heightMap.lineAt(to, QueryType.ByPos, this.heightOracle, 0, 0);\n let { visibleTop, visibleBottom } = this;\n return (from == 0 || top <= visibleTop - Math.max(10 /* VP.MinCoverMargin */, Math.min(-bias, 250 /* VP.MaxCoverMargin */))) &&\n (to == this.state.doc.length ||\n bottom >= visibleBottom + Math.max(10 /* VP.MinCoverMargin */, Math.min(bias, 250 /* VP.MaxCoverMargin */))) &&\n (top > visibleTop - 2 * 1000 /* VP.Margin */ && bottom < visibleBottom + 2 * 1000 /* VP.Margin */);\n }\n mapLineGaps(gaps, changes) {\n if (!gaps.length || changes.empty)\n return gaps;\n let mapped = [];\n for (let gap of gaps)\n if (!changes.touchesRange(gap.from, gap.to))\n mapped.push(new LineGap(changes.mapPos(gap.from), changes.mapPos(gap.to), gap.size, gap.displaySize));\n return mapped;\n }\n // Computes positions in the viewport where the start or end of a\n // line should be hidden, trying to reuse existing line gaps when\n // appropriate to avoid unneccesary redraws.\n // Uses crude character-counting for the positioning and sizing,\n // since actual DOM coordinates aren't always available and\n // predictable. Relies on generous margins (see LG.Margin) to hide\n // the artifacts this might produce from the user.\n ensureLineGaps(current, mayMeasure) {\n let wrapping = this.heightOracle.lineWrapping;\n let margin = wrapping ? 10000 /* LG.MarginWrap */ : 2000 /* LG.Margin */, halfMargin = margin >> 1, doubleMargin = margin << 1;\n // The non-wrapping logic won't work at all in predominantly right-to-left text.\n if (this.defaultTextDirection != Direction.LTR && !wrapping)\n return [];\n let gaps = [];\n let addGap = (from, to, line, structure) => {\n if (to - from < halfMargin)\n return;\n let sel = this.state.selection.main, avoid = [sel.from];\n if (!sel.empty)\n avoid.push(sel.to);\n for (let pos of avoid) {\n if (pos > from && pos < to) {\n addGap(from, pos - 10 /* LG.SelectionMargin */, line, structure);\n addGap(pos + 10 /* LG.SelectionMargin */, to, line, structure);\n return;\n }\n }\n let gap = find(current, gap => gap.from >= line.from && gap.to <= line.to &&\n Math.abs(gap.from - from) < halfMargin && Math.abs(gap.to - to) < halfMargin &&\n !avoid.some(pos => gap.from < pos && gap.to > pos));\n if (!gap) {\n // When scrolling down, snap gap ends to line starts to avoid shifts in wrapping\n if (to < line.to && mayMeasure && wrapping &&\n mayMeasure.visibleRanges.some(r => r.from <= to && r.to >= to)) {\n let lineStart = mayMeasure.moveToLineBoundary(EditorSelection.cursor(to), false, true).head;\n if (lineStart > from)\n to = lineStart;\n }\n let size = this.gapSize(line, from, to, structure);\n let displaySize = wrapping || size < 2000000 /* VP.MaxHorizGap */ ? size : 2000000 /* VP.MaxHorizGap */;\n gap = new LineGap(from, to, size, displaySize);\n }\n gaps.push(gap);\n };\n let checkLine = (line) => {\n if (line.length < doubleMargin || line.type != BlockType.Text)\n return;\n let structure = lineStructure(line.from, line.to, this.stateDeco);\n if (structure.total < doubleMargin)\n return;\n let target = this.scrollTarget ? this.scrollTarget.range.head : null;\n let viewFrom, viewTo;\n if (wrapping) {\n let marginHeight = (margin / this.heightOracle.lineLength) * this.heightOracle.lineHeight;\n let top, bot;\n if (target != null) {\n let targetFrac = findFraction(structure, target);\n let spaceFrac = ((this.visibleBottom - this.visibleTop) / 2 + marginHeight) / line.height;\n top = targetFrac - spaceFrac;\n bot = targetFrac + spaceFrac;\n }\n else {\n top = (this.visibleTop - line.top - marginHeight) / line.height;\n bot = (this.visibleBottom - line.top + marginHeight) / line.height;\n }\n viewFrom = findPosition(structure, top);\n viewTo = findPosition(structure, bot);\n }\n else {\n let totalWidth = structure.total * this.heightOracle.charWidth;\n let marginWidth = margin * this.heightOracle.charWidth;\n let horizOffset = 0;\n if (totalWidth > 2000000 /* VP.MaxHorizGap */)\n for (let old of current) {\n if (old.from >= line.from && old.from < line.to && old.size != old.displaySize &&\n old.from * this.heightOracle.charWidth + horizOffset < this.pixelViewport.left)\n horizOffset = old.size - old.displaySize;\n }\n let pxLeft = this.pixelViewport.left + horizOffset, pxRight = this.pixelViewport.right + horizOffset;\n let left, right;\n if (target != null) {\n let targetFrac = findFraction(structure, target);\n let spaceFrac = ((pxRight - pxLeft) / 2 + marginWidth) / totalWidth;\n left = targetFrac - spaceFrac;\n right = targetFrac + spaceFrac;\n }\n else {\n left = (pxLeft - marginWidth) / totalWidth;\n right = (pxRight + marginWidth) / totalWidth;\n }\n viewFrom = findPosition(structure, left);\n viewTo = findPosition(structure, right);\n }\n if (viewFrom > line.from)\n addGap(line.from, viewFrom, line, structure);\n if (viewTo < line.to)\n addGap(viewTo, line.to, line, structure);\n };\n for (let line of this.viewportLines) {\n if (Array.isArray(line.type))\n line.type.forEach(checkLine);\n else\n checkLine(line);\n }\n return gaps;\n }\n gapSize(line, from, to, structure) {\n let fraction = findFraction(structure, to) - findFraction(structure, from);\n if (this.heightOracle.lineWrapping) {\n return line.height * fraction;\n }\n else {\n return structure.total * this.heightOracle.charWidth * fraction;\n }\n }\n updateLineGaps(gaps) {\n if (!LineGap.same(gaps, this.lineGaps)) {\n this.lineGaps = gaps;\n this.lineGapDeco = Decoration.set(gaps.map(gap => gap.draw(this, this.heightOracle.lineWrapping)));\n }\n }\n computeVisibleRanges(changes) {\n let deco = this.stateDeco;\n if (this.lineGaps.length)\n deco = deco.concat(this.lineGapDeco);\n let ranges = [];\n RangeSet.spans(deco, this.viewport.from, this.viewport.to, {\n span(from, to) { ranges.push({ from, to }); },\n point() { }\n }, 20);\n let changed = 0;\n if (ranges.length != this.visibleRanges.length) {\n changed = 8 /* UpdateFlag.ViewportMoved */ | 4 /* UpdateFlag.Viewport */;\n }\n else {\n for (let i = 0; i < ranges.length && !(changed & 8 /* UpdateFlag.ViewportMoved */); i++) {\n let old = this.visibleRanges[i], nw = ranges[i];\n if (old.from != nw.from || old.to != nw.to) {\n changed |= 4 /* UpdateFlag.Viewport */;\n if (!(changes && changes.mapPos(old.from, -1) == nw.from && changes.mapPos(old.to, 1) == nw.to))\n changed |= 8 /* UpdateFlag.ViewportMoved */;\n }\n }\n }\n this.visibleRanges = ranges;\n return changed;\n }\n lineBlockAt(pos) {\n return (pos >= this.viewport.from && pos <= this.viewport.to &&\n this.viewportLines.find(b => b.from <= pos && b.to >= pos)) ||\n scaleBlock(this.heightMap.lineAt(pos, QueryType.ByPos, this.heightOracle, 0, 0), this.scaler);\n }\n lineBlockAtHeight(height) {\n return (height >= this.viewportLines[0].top && height <= this.viewportLines[this.viewportLines.length - 1].bottom &&\n this.viewportLines.find(l => l.top <= height && l.bottom >= height)) ||\n scaleBlock(this.heightMap.lineAt(this.scaler.fromDOM(height), QueryType.ByHeight, this.heightOracle, 0, 0), this.scaler);\n }\n scrollAnchorAt(scrollTop) {\n let block = this.lineBlockAtHeight(scrollTop + 8);\n return block.from >= this.viewport.from || this.viewportLines[0].top - scrollTop > 200 ? block : this.viewportLines[0];\n }\n elementAtHeight(height) {\n return scaleBlock(this.heightMap.blockAt(this.scaler.fromDOM(height), this.heightOracle, 0, 0), this.scaler);\n }\n get docHeight() {\n return this.scaler.toDOM(this.heightMap.height);\n }\n get contentHeight() {\n return this.docHeight + this.paddingTop + this.paddingBottom;\n }\n}\nclass Viewport {\n constructor(from, to) {\n this.from = from;\n this.to = to;\n }\n}\nfunction lineStructure(from, to, stateDeco) {\n let ranges = [], pos = from, total = 0;\n RangeSet.spans(stateDeco, from, to, {\n span() { },\n point(from, to) {\n if (from > pos) {\n ranges.push({ from: pos, to: from });\n total += from - pos;\n }\n pos = to;\n }\n }, 20); // We're only interested in collapsed ranges of a significant size\n if (pos < to) {\n ranges.push({ from: pos, to });\n total += to - pos;\n }\n return { total, ranges };\n}\nfunction findPosition({ total, ranges }, ratio) {\n if (ratio <= 0)\n return ranges[0].from;\n if (ratio >= 1)\n return ranges[ranges.length - 1].to;\n let dist = Math.floor(total * ratio);\n for (let i = 0;; i++) {\n let { from, to } = ranges[i], size = to - from;\n if (dist <= size)\n return from + dist;\n dist -= size;\n }\n}\nfunction findFraction(structure, pos) {\n let counted = 0;\n for (let { from, to } of structure.ranges) {\n if (pos <= to) {\n counted += pos - from;\n break;\n }\n counted += to - from;\n }\n return counted / structure.total;\n}\nfunction find(array, f) {\n for (let val of array)\n if (f(val))\n return val;\n return undefined;\n}\n// Don't scale when the document height is within the range of what\n// the DOM can handle.\nconst IdScaler = {\n toDOM(n) { return n; },\n fromDOM(n) { return n; },\n scale: 1,\n eq(other) { return other == this; }\n};\n// When the height is too big (> VP.MaxDOMHeight), scale down the\n// regions outside the viewports so that the total height is\n// VP.MaxDOMHeight.\nclass BigScaler {\n constructor(oracle, heightMap, viewports) {\n let vpHeight = 0, base = 0, domBase = 0;\n this.viewports = viewports.map(({ from, to }) => {\n let top = heightMap.lineAt(from, QueryType.ByPos, oracle, 0, 0).top;\n let bottom = heightMap.lineAt(to, QueryType.ByPos, oracle, 0, 0).bottom;\n vpHeight += bottom - top;\n return { from, to, top, bottom, domTop: 0, domBottom: 0 };\n });\n this.scale = (7000000 /* VP.MaxDOMHeight */ - vpHeight) / (heightMap.height - vpHeight);\n for (let obj of this.viewports) {\n obj.domTop = domBase + (obj.top - base) * this.scale;\n domBase = obj.domBottom = obj.domTop + (obj.bottom - obj.top);\n base = obj.bottom;\n }\n }\n toDOM(n) {\n for (let i = 0, base = 0, domBase = 0;; i++) {\n let vp = i < this.viewports.length ? this.viewports[i] : null;\n if (!vp || n < vp.top)\n return domBase + (n - base) * this.scale;\n if (n <= vp.bottom)\n return vp.domTop + (n - vp.top);\n base = vp.bottom;\n domBase = vp.domBottom;\n }\n }\n fromDOM(n) {\n for (let i = 0, base = 0, domBase = 0;; i++) {\n let vp = i < this.viewports.length ? this.viewports[i] : null;\n if (!vp || n < vp.domTop)\n return base + (n - domBase) / this.scale;\n if (n <= vp.domBottom)\n return vp.top + (n - vp.domTop);\n base = vp.bottom;\n domBase = vp.domBottom;\n }\n }\n eq(other) {\n if (!(other instanceof BigScaler))\n return false;\n return this.scale == other.scale && this.viewports.length == other.viewports.length &&\n this.viewports.every((vp, i) => vp.from == other.viewports[i].from && vp.to == other.viewports[i].to);\n }\n}\nfunction scaleBlock(block, scaler) {\n if (scaler.scale == 1)\n return block;\n let bTop = scaler.toDOM(block.top), bBottom = scaler.toDOM(block.bottom);\n return new BlockInfo(block.from, block.length, bTop, bBottom - bTop, Array.isArray(block._content) ? block._content.map(b => scaleBlock(b, scaler)) : block._content);\n}\n\nconst theme = /*@__PURE__*/Facet.define({ combine: strs => strs.join(\" \") });\nconst darkTheme = /*@__PURE__*/Facet.define({ combine: values => values.indexOf(true) > -1 });\nconst baseThemeID = /*@__PURE__*/StyleModule.newName(), baseLightID = /*@__PURE__*/StyleModule.newName(), baseDarkID = /*@__PURE__*/StyleModule.newName();\nconst lightDarkIDs = { \"&light\": \".\" + baseLightID, \"&dark\": \".\" + baseDarkID };\nfunction buildTheme(main, spec, scopes) {\n return new StyleModule(spec, {\n finish(sel) {\n return /&/.test(sel) ? sel.replace(/&\\w*/, m => {\n if (m == \"&\")\n return main;\n if (!scopes || !scopes[m])\n throw new RangeError(`Unsupported selector: ${m}`);\n return scopes[m];\n }) : main + \" \" + sel;\n }\n });\n}\nconst baseTheme$1 = /*@__PURE__*/buildTheme(\".\" + baseThemeID, {\n \"&\": {\n position: \"relative !important\",\n boxSizing: \"border-box\",\n \"&.cm-focused\": {\n // Provide a simple default outline to make sure a focused\n // editor is visually distinct. Can't leave the default behavior\n // because that will apply to the content element, which is\n // inside the scrollable container and doesn't include the\n // gutters. We also can't use an 'auto' outline, since those\n // are, for some reason, drawn behind the element content, which\n // will cause things like the active line background to cover\n // the outline (#297).\n outline: \"1px dotted #212121\"\n },\n display: \"flex !important\",\n flexDirection: \"column\"\n },\n \".cm-scroller\": {\n display: \"flex !important\",\n alignItems: \"flex-start !important\",\n fontFamily: \"monospace\",\n lineHeight: 1.4,\n height: \"100%\",\n overflowX: \"auto\",\n position: \"relative\",\n zIndex: 0,\n overflowAnchor: \"none\",\n },\n \".cm-content\": {\n margin: 0,\n flexGrow: 2,\n flexShrink: 0,\n display: \"block\",\n whiteSpace: \"pre\",\n wordWrap: \"normal\", // https://github.com/codemirror/dev/issues/456\n boxSizing: \"border-box\",\n minHeight: \"100%\",\n padding: \"4px 0\",\n outline: \"none\",\n \"&[contenteditable=true]\": {\n WebkitUserModify: \"read-write-plaintext-only\",\n }\n },\n \".cm-lineWrapping\": {\n whiteSpace_fallback: \"pre-wrap\", // For IE\n whiteSpace: \"break-spaces\",\n wordBreak: \"break-word\", // For Safari, which doesn't support overflow-wrap: anywhere\n overflowWrap: \"anywhere\",\n flexShrink: 1\n },\n \"&light .cm-content\": { caretColor: \"black\" },\n \"&dark .cm-content\": { caretColor: \"white\" },\n \".cm-line\": {\n display: \"block\",\n padding: \"0 2px 0 6px\"\n },\n \".cm-layer\": {\n position: \"absolute\",\n left: 0,\n top: 0,\n contain: \"size style\",\n \"& > *\": {\n position: \"absolute\"\n }\n },\n \"&light .cm-selectionBackground\": {\n background: \"#d9d9d9\"\n },\n \"&dark .cm-selectionBackground\": {\n background: \"#222\"\n },\n \"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground\": {\n background: \"#d7d4f0\"\n },\n \"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground\": {\n background: \"#233\"\n },\n \".cm-cursorLayer\": {\n pointerEvents: \"none\"\n },\n \"&.cm-focused > .cm-scroller > .cm-cursorLayer\": {\n animation: \"steps(1) cm-blink 1.2s infinite\"\n },\n // Two animations defined so that we can switch between them to\n // restart the animation without forcing another style\n // recomputation.\n \"@keyframes cm-blink\": { \"0%\": {}, \"50%\": { opacity: 0 }, \"100%\": {} },\n \"@keyframes cm-blink2\": { \"0%\": {}, \"50%\": { opacity: 0 }, \"100%\": {} },\n \".cm-cursor, .cm-dropCursor\": {\n borderLeft: \"1.2px solid black\",\n marginLeft: \"-0.6px\",\n pointerEvents: \"none\",\n },\n \".cm-cursor\": {\n display: \"none\"\n },\n \"&dark .cm-cursor\": {\n borderLeftColor: \"#ddd\"\n },\n \".cm-dropCursor\": {\n position: \"absolute\"\n },\n \"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor\": {\n display: \"block\"\n },\n \".cm-iso\": {\n unicodeBidi: \"isolate\"\n },\n \".cm-announced\": {\n position: \"fixed\",\n top: \"-10000px\"\n },\n \"@media print\": {\n \".cm-announced\": { display: \"none\" }\n },\n \"&light .cm-activeLine\": { backgroundColor: \"#cceeff44\" },\n \"&dark .cm-activeLine\": { backgroundColor: \"#99eeff33\" },\n \"&light .cm-specialChar\": { color: \"red\" },\n \"&dark .cm-specialChar\": { color: \"#f78\" },\n \".cm-gutters\": {\n flexShrink: 0,\n display: \"flex\",\n height: \"100%\",\n boxSizing: \"border-box\",\n zIndex: 200,\n },\n \".cm-gutters-before\": { insetInlineStart: 0 },\n \".cm-gutters-after\": { insetInlineEnd: 0 },\n \"&light .cm-gutters\": {\n backgroundColor: \"#f5f5f5\",\n color: \"#6c6c6c\",\n border: \"0px solid #ddd\",\n \"&.cm-gutters-before\": { borderRightWidth: \"1px\" },\n \"&.cm-gutters-after\": { borderLeftWidth: \"1px\" },\n },\n \"&dark .cm-gutters\": {\n backgroundColor: \"#333338\",\n color: \"#ccc\"\n },\n \".cm-gutter\": {\n display: \"flex !important\", // Necessary -- prevents margin collapsing\n flexDirection: \"column\",\n flexShrink: 0,\n boxSizing: \"border-box\",\n minHeight: \"100%\",\n overflow: \"hidden\"\n },\n \".cm-gutterElement\": {\n boxSizing: \"border-box\"\n },\n \".cm-lineNumbers .cm-gutterElement\": {\n padding: \"0 3px 0 5px\",\n minWidth: \"20px\",\n textAlign: \"right\",\n whiteSpace: \"nowrap\"\n },\n \"&light .cm-activeLineGutter\": {\n backgroundColor: \"#e2f2ff\"\n },\n \"&dark .cm-activeLineGutter\": {\n backgroundColor: \"#222227\"\n },\n \".cm-panels\": {\n boxSizing: \"border-box\",\n position: \"sticky\",\n left: 0,\n right: 0,\n zIndex: 300\n },\n \"&light .cm-panels\": {\n backgroundColor: \"#f5f5f5\",\n color: \"black\"\n },\n \"&light .cm-panels-top\": {\n borderBottom: \"1px solid #ddd\"\n },\n \"&light .cm-panels-bottom\": {\n borderTop: \"1px solid #ddd\"\n },\n \"&dark .cm-panels\": {\n backgroundColor: \"#333338\",\n color: \"white\"\n },\n \".cm-dialog\": {\n padding: \"2px 19px 4px 6px\",\n position: \"relative\",\n \"& label\": { fontSize: \"80%\" },\n },\n \".cm-dialog-close\": {\n position: \"absolute\",\n top: \"3px\",\n right: \"4px\",\n backgroundColor: \"inherit\",\n border: \"none\",\n font: \"inherit\",\n fontSize: \"14px\",\n padding: \"0\"\n },\n \".cm-tab\": {\n display: \"inline-block\",\n overflow: \"hidden\",\n verticalAlign: \"bottom\"\n },\n \".cm-widgetBuffer\": {\n verticalAlign: \"text-top\",\n height: \"1em\",\n width: 0,\n display: \"inline\"\n },\n \".cm-placeholder\": {\n color: \"#888\",\n display: \"inline-block\",\n verticalAlign: \"top\",\n userSelect: \"none\"\n },\n \".cm-highlightSpace\": {\n backgroundImage: \"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)\",\n backgroundPosition: \"center\",\n },\n \".cm-highlightTab\": {\n backgroundImage: `url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"200\" height=\"20\"><path stroke=\"%23888\" stroke-width=\"1\" fill=\"none\" d=\"M1 10H196L190 5M190 15L196 10M197 4L197 16\"/></svg>')`,\n backgroundSize: \"auto 100%\",\n backgroundPosition: \"right 90%\",\n backgroundRepeat: \"no-repeat\"\n },\n \".cm-trailingSpace\": {\n backgroundColor: \"#ff332255\"\n },\n \".cm-button\": {\n verticalAlign: \"middle\",\n color: \"inherit\",\n fontSize: \"70%\",\n padding: \".2em 1em\",\n borderRadius: \"1px\"\n },\n \"&light .cm-button\": {\n backgroundImage: \"linear-gradient(#eff1f5, #d9d9df)\",\n border: \"1px solid #888\",\n \"&:active\": {\n backgroundImage: \"linear-gradient(#b4b4b4, #d0d3d6)\"\n }\n },\n \"&dark .cm-button\": {\n backgroundImage: \"linear-gradient(#393939, #111)\",\n border: \"1px solid #888\",\n \"&:active\": {\n backgroundImage: \"linear-gradient(#111, #333)\"\n }\n },\n \".cm-textfield\": {\n verticalAlign: \"middle\",\n color: \"inherit\",\n fontSize: \"70%\",\n border: \"1px solid silver\",\n padding: \".2em .5em\"\n },\n \"&light .cm-textfield\": {\n backgroundColor: \"white\"\n },\n \"&dark .cm-textfield\": {\n border: \"1px solid #555\",\n backgroundColor: \"inherit\"\n }\n}, lightDarkIDs);\n\nconst observeOptions = {\n childList: true,\n characterData: true,\n subtree: true,\n attributes: true,\n characterDataOldValue: true\n};\n// IE11 has very broken mutation observers, so we also listen to\n// DOMCharacterDataModified there\nconst useCharData = browser.ie && browser.ie_version <= 11;\nclass DOMObserver {\n constructor(view) {\n this.view = view;\n this.active = false;\n this.editContext = null;\n // The known selection. Kept in our own object, as opposed to just\n // directly accessing the selection because:\n // - Safari doesn't report the right selection in shadow DOM\n // - Reading from the selection forces a DOM layout\n // - This way, we can ignore selectionchange events if we have\n // already seen the 'new' selection\n this.selectionRange = new DOMSelectionState;\n // Set when a selection change is detected, cleared on flush\n this.selectionChanged = false;\n this.delayedFlush = -1;\n this.resizeTimeout = -1;\n this.queue = [];\n this.delayedAndroidKey = null;\n this.flushingAndroidKey = -1;\n this.lastChange = 0;\n this.scrollTargets = [];\n this.intersection = null;\n this.resizeScroll = null;\n this.intersecting = false;\n this.gapIntersection = null;\n this.gaps = [];\n this.printQuery = null;\n // Timeout for scheduling check of the parents that need scroll handlers\n this.parentCheck = -1;\n this.dom = view.contentDOM;\n this.observer = new MutationObserver(mutations => {\n for (let mut of mutations)\n this.queue.push(mut);\n // IE11 will sometimes (on typing over a selection or\n // backspacing out a single character text node) call the\n // observer callback before actually updating the DOM.\n //\n // Unrelatedly, iOS Safari will, when ending a composition,\n // sometimes first clear it, deliver the mutations, and then\n // reinsert the finished text. CodeMirror's handling of the\n // deletion will prevent the reinsertion from happening,\n // breaking composition.\n if ((browser.ie && browser.ie_version <= 11 || browser.ios && view.composing) &&\n mutations.some(m => m.type == \"childList\" && m.removedNodes.length ||\n m.type == \"characterData\" && m.oldValue.length > m.target.nodeValue.length))\n this.flushSoon();\n else\n this.flush();\n });\n if (window.EditContext && browser.android && view.constructor.EDIT_CONTEXT !== false &&\n // Chrome <126 doesn't support inverted selections in edit context (#1392)\n !(browser.chrome && browser.chrome_version < 126)) {\n this.editContext = new EditContextManager(view);\n if (view.state.facet(editable))\n view.contentDOM.editContext = this.editContext.editContext;\n }\n if (useCharData)\n this.onCharData = (event) => {\n this.queue.push({ target: event.target,\n type: \"characterData\",\n oldValue: event.prevValue });\n this.flushSoon();\n };\n this.onSelectionChange = this.onSelectionChange.bind(this);\n this.onResize = this.onResize.bind(this);\n this.onPrint = this.onPrint.bind(this);\n this.onScroll = this.onScroll.bind(this);\n if (window.matchMedia)\n this.printQuery = window.matchMedia(\"print\");\n if (typeof ResizeObserver == \"function\") {\n this.resizeScroll = new ResizeObserver(() => {\n var _a;\n if (((_a = this.view.docView) === null || _a === void 0 ? void 0 : _a.lastUpdate) < Date.now() - 75)\n this.onResize();\n });\n this.resizeScroll.observe(view.scrollDOM);\n }\n this.addWindowListeners(this.win = view.win);\n this.start();\n if (typeof IntersectionObserver == \"function\") {\n this.intersection = new IntersectionObserver(entries => {\n if (this.parentCheck < 0)\n this.parentCheck = setTimeout(this.listenForScroll.bind(this), 1000);\n if (entries.length > 0 && (entries[entries.length - 1].intersectionRatio > 0) != this.intersecting) {\n this.intersecting = !this.intersecting;\n if (this.intersecting != this.view.inView)\n this.onScrollChanged(document.createEvent(\"Event\"));\n }\n }, { threshold: [0, .001] });\n this.intersection.observe(this.dom);\n this.gapIntersection = new IntersectionObserver(entries => {\n if (entries.length > 0 && entries[entries.length - 1].intersectionRatio > 0)\n this.onScrollChanged(document.createEvent(\"Event\"));\n }, {});\n }\n this.listenForScroll();\n this.readSelectionRange();\n }\n onScrollChanged(e) {\n this.view.inputState.runHandlers(\"scroll\", e);\n if (this.intersecting)\n this.view.measure();\n }\n onScroll(e) {\n if (this.intersecting)\n this.flush(false);\n if (this.editContext)\n this.view.requestMeasure(this.editContext.measureReq);\n this.onScrollChanged(e);\n }\n onResize() {\n if (this.resizeTimeout < 0)\n this.resizeTimeout = setTimeout(() => {\n this.resizeTimeout = -1;\n this.view.requestMeasure();\n }, 50);\n }\n onPrint(event) {\n if ((event.type == \"change\" || !event.type) && !event.matches)\n return;\n this.view.viewState.printing = true;\n this.view.measure();\n setTimeout(() => {\n this.view.viewState.printing = false;\n this.view.requestMeasure();\n }, 500);\n }\n updateGaps(gaps) {\n if (this.gapIntersection && (gaps.length != this.gaps.length || this.gaps.some((g, i) => g != gaps[i]))) {\n this.gapIntersection.disconnect();\n for (let gap of gaps)\n this.gapIntersection.observe(gap);\n this.gaps = gaps;\n }\n }\n onSelectionChange(event) {\n let wasChanged = this.selectionChanged;\n if (!this.readSelectionRange() || this.delayedAndroidKey)\n return;\n let { view } = this, sel = this.selectionRange;\n if (view.state.facet(editable) ? view.root.activeElement != this.dom : !hasSelection(this.dom, sel))\n return;\n let context = sel.anchorNode && view.docView.tile.nearest(sel.anchorNode);\n if (context && context.isWidget() && context.widget.ignoreEvent(event)) {\n if (!wasChanged)\n this.selectionChanged = false;\n return;\n }\n // Deletions on IE11 fire their events in the wrong order, giving\n // us a selection change event before the DOM changes are\n // reported.\n // Chrome Android has a similar issue when backspacing out a\n // selection (#645).\n if ((browser.ie && browser.ie_version <= 11 || browser.android && browser.chrome) && !view.state.selection.main.empty &&\n // (Selection.isCollapsed isn't reliable on IE)\n sel.focusNode && isEquivalentPosition(sel.focusNode, sel.focusOffset, sel.anchorNode, sel.anchorOffset))\n this.flushSoon();\n else\n this.flush(false);\n }\n readSelectionRange() {\n let { view } = this;\n // The Selection object is broken in shadow roots in Safari. See\n // https://github.com/codemirror/dev/issues/414\n let selection = getSelection(view.root);\n if (!selection)\n return false;\n let range = browser.safari && view.root.nodeType == 11 &&\n view.root.activeElement == this.dom &&\n safariSelectionRangeHack(this.view, selection) || selection;\n if (!range || this.selectionRange.eq(range))\n return false;\n let local = hasSelection(this.dom, range);\n // Detect the situation where the browser has, on focus, moved the\n // selection to the start of the content element. Reset it to the\n // position from the editor state.\n if (local && !this.selectionChanged &&\n view.inputState.lastFocusTime > Date.now() - 200 &&\n view.inputState.lastTouchTime < Date.now() - 300 &&\n atElementStart(this.dom, range)) {\n this.view.inputState.lastFocusTime = 0;\n view.docView.updateSelection();\n return false;\n }\n this.selectionRange.setRange(range);\n if (local)\n this.selectionChanged = true;\n return true;\n }\n setSelectionRange(anchor, head) {\n this.selectionRange.set(anchor.node, anchor.offset, head.node, head.offset);\n this.selectionChanged = false;\n }\n clearSelectionRange() {\n this.selectionRange.set(null, 0, null, 0);\n }\n listenForScroll() {\n this.parentCheck = -1;\n let i = 0, changed = null;\n for (let dom = this.dom; dom;) {\n if (dom.nodeType == 1) {\n if (!changed && i < this.scrollTargets.length && this.scrollTargets[i] == dom)\n i++;\n else if (!changed)\n changed = this.scrollTargets.slice(0, i);\n if (changed)\n changed.push(dom);\n dom = dom.assignedSlot || dom.parentNode;\n }\n else if (dom.nodeType == 11) { // Shadow root\n dom = dom.host;\n }\n else {\n break;\n }\n }\n if (i < this.scrollTargets.length && !changed)\n changed = this.scrollTargets.slice(0, i);\n if (changed) {\n for (let dom of this.scrollTargets)\n dom.removeEventListener(\"scroll\", this.onScroll);\n for (let dom of this.scrollTargets = changed)\n dom.addEventListener(\"scroll\", this.onScroll);\n }\n }\n ignore(f) {\n if (!this.active)\n return f();\n try {\n this.stop();\n return f();\n }\n finally {\n this.start();\n this.clear();\n }\n }\n start() {\n if (this.active)\n return;\n this.observer.observe(this.dom, observeOptions);\n if (useCharData)\n this.dom.addEventListener(\"DOMCharacterDataModified\", this.onCharData);\n this.active = true;\n }\n stop() {\n if (!this.active)\n return;\n this.active = false;\n this.observer.disconnect();\n if (useCharData)\n this.dom.removeEventListener(\"DOMCharacterDataModified\", this.onCharData);\n }\n // Throw away any pending changes\n clear() {\n this.processRecords();\n this.queue.length = 0;\n this.selectionChanged = false;\n }\n // Chrome Android, especially in combination with GBoard, not only\n // doesn't reliably fire regular key events, but also often\n // surrounds the effect of enter or backspace with a bunch of\n // composition events that, when interrupted, cause text duplication\n // or other kinds of corruption. This hack makes the editor back off\n // from handling DOM changes for a moment when such a key is\n // detected (via beforeinput or keydown), and then tries to flush\n // them or, if that has no effect, dispatches the given key.\n delayAndroidKey(key, keyCode) {\n var _a;\n if (!this.delayedAndroidKey) {\n let flush = () => {\n let key = this.delayedAndroidKey;\n if (key) {\n this.clearDelayedAndroidKey();\n this.view.inputState.lastKeyCode = key.keyCode;\n this.view.inputState.lastKeyTime = Date.now();\n let flushed = this.flush();\n if (!flushed && key.force)\n dispatchKey(this.dom, key.key, key.keyCode);\n }\n };\n this.flushingAndroidKey = this.view.win.requestAnimationFrame(flush);\n }\n // Since backspace beforeinput is sometimes signalled spuriously,\n // Enter always takes precedence.\n if (!this.delayedAndroidKey || key == \"Enter\")\n this.delayedAndroidKey = {\n key, keyCode,\n // Only run the key handler when no changes are detected if\n // this isn't coming right after another change, in which case\n // it is probably part of a weird chain of updates, and should\n // be ignored if it returns the DOM to its previous state.\n force: this.lastChange < Date.now() - 50 || !!((_a = this.delayedAndroidKey) === null || _a === void 0 ? void 0 : _a.force)\n };\n }\n clearDelayedAndroidKey() {\n this.win.cancelAnimationFrame(this.flushingAndroidKey);\n this.delayedAndroidKey = null;\n this.flushingAndroidKey = -1;\n }\n flushSoon() {\n if (this.delayedFlush < 0)\n this.delayedFlush = this.view.win.requestAnimationFrame(() => { this.delayedFlush = -1; this.flush(); });\n }\n forceFlush() {\n if (this.delayedFlush >= 0) {\n this.view.win.cancelAnimationFrame(this.delayedFlush);\n this.delayedFlush = -1;\n }\n this.flush();\n }\n pendingRecords() {\n for (let mut of this.observer.takeRecords())\n this.queue.push(mut);\n return this.queue;\n }\n processRecords() {\n let records = this.pendingRecords();\n if (records.length)\n this.queue = [];\n let from = -1, to = -1, typeOver = false;\n for (let record of records) {\n let range = this.readMutation(record);\n if (!range)\n continue;\n if (range.typeOver)\n typeOver = true;\n if (from == -1) {\n ({ from, to } = range);\n }\n else {\n from = Math.min(range.from, from);\n to = Math.max(range.to, to);\n }\n }\n return { from, to, typeOver };\n }\n readChange() {\n let { from, to, typeOver } = this.processRecords();\n let newSel = this.selectionChanged && hasSelection(this.dom, this.selectionRange);\n if (from < 0 && !newSel)\n return null;\n if (from > -1)\n this.lastChange = Date.now();\n this.view.inputState.lastFocusTime = 0;\n this.selectionChanged = false;\n let change = new DOMChange(this.view, from, to, typeOver);\n this.view.docView.domChanged = { newSel: change.newSel ? change.newSel.main : null };\n return change;\n }\n // Apply pending changes, if any\n flush(readSelection = true) {\n // Completely hold off flushing when pending keys are set\u2014the code\n // managing those will make sure processRecords is called and the\n // view is resynchronized after\n if (this.delayedFlush >= 0 || this.delayedAndroidKey)\n return false;\n if (readSelection)\n this.readSelectionRange();\n let domChange = this.readChange();\n if (!domChange) {\n this.view.requestMeasure();\n return false;\n }\n let startState = this.view.state;\n let handled = applyDOMChange(this.view, domChange);\n // The view wasn't updated but DOM/selection changes were seen. Reset the view.\n if (this.view.state == startState &&\n (domChange.domChanged || domChange.newSel && !domChange.newSel.main.eq(this.view.state.selection.main)))\n this.view.update([]);\n return handled;\n }\n readMutation(rec) {\n let tile = this.view.docView.tile.nearest(rec.target);\n if (!tile || tile.isWidget())\n return null;\n tile.markDirty(rec.type == \"attributes\");\n if (rec.type == \"childList\") {\n let childBefore = findChild(tile, rec.previousSibling || rec.target.previousSibling, -1);\n let childAfter = findChild(tile, rec.nextSibling || rec.target.nextSibling, 1);\n return { from: childBefore ? tile.posAfter(childBefore) : tile.posAtStart,\n to: childAfter ? tile.posBefore(childAfter) : tile.posAtEnd, typeOver: false };\n }\n else if (rec.type == \"characterData\") {\n return { from: tile.posAtStart, to: tile.posAtEnd, typeOver: rec.target.nodeValue == rec.oldValue };\n }\n else {\n return null;\n }\n }\n setWindow(win) {\n if (win != this.win) {\n this.removeWindowListeners(this.win);\n this.win = win;\n this.addWindowListeners(this.win);\n }\n }\n addWindowListeners(win) {\n win.addEventListener(\"resize\", this.onResize);\n if (this.printQuery) {\n if (this.printQuery.addEventListener)\n this.printQuery.addEventListener(\"change\", this.onPrint);\n else\n this.printQuery.addListener(this.onPrint);\n }\n else\n win.addEventListener(\"beforeprint\", this.onPrint);\n win.addEventListener(\"scroll\", this.onScroll);\n win.document.addEventListener(\"selectionchange\", this.onSelectionChange);\n }\n removeWindowListeners(win) {\n win.removeEventListener(\"scroll\", this.onScroll);\n win.removeEventListener(\"resize\", this.onResize);\n if (this.printQuery) {\n if (this.printQuery.removeEventListener)\n this.printQuery.removeEventListener(\"change\", this.onPrint);\n else\n this.printQuery.removeListener(this.onPrint);\n }\n else\n win.removeEventListener(\"beforeprint\", this.onPrint);\n win.document.removeEventListener(\"selectionchange\", this.onSelectionChange);\n }\n update(update) {\n if (this.editContext) {\n this.editContext.update(update);\n if (update.startState.facet(editable) != update.state.facet(editable))\n update.view.contentDOM.editContext = update.state.facet(editable) ? this.editContext.editContext : null;\n }\n }\n destroy() {\n var _a, _b, _c;\n this.stop();\n (_a = this.intersection) === null || _a === void 0 ? void 0 : _a.disconnect();\n (_b = this.gapIntersection) === null || _b === void 0 ? void 0 : _b.disconnect();\n (_c = this.resizeScroll) === null || _c === void 0 ? void 0 : _c.disconnect();\n for (let dom of this.scrollTargets)\n dom.removeEventListener(\"scroll\", this.onScroll);\n this.removeWindowListeners(this.win);\n clearTimeout(this.parentCheck);\n clearTimeout(this.resizeTimeout);\n this.win.cancelAnimationFrame(this.delayedFlush);\n this.win.cancelAnimationFrame(this.flushingAndroidKey);\n if (this.editContext) {\n this.view.contentDOM.editContext = null;\n this.editContext.destroy();\n }\n }\n}\nfunction findChild(tile, dom, dir) {\n while (dom) {\n let curTile = Tile.get(dom);\n if (curTile && curTile.parent == tile)\n return curTile;\n let parent = dom.parentNode;\n dom = parent != tile.dom ? parent : dir > 0 ? dom.nextSibling : dom.previousSibling;\n }\n return null;\n}\nfunction buildSelectionRangeFromRange(view, range) {\n let anchorNode = range.startContainer, anchorOffset = range.startOffset;\n let focusNode = range.endContainer, focusOffset = range.endOffset;\n let curAnchor = view.docView.domAtPos(view.state.selection.main.anchor, 1);\n // Since such a range doesn't distinguish between anchor and head,\n // use a heuristic that flips it around if its end matches the\n // current anchor.\n if (isEquivalentPosition(curAnchor.node, curAnchor.offset, focusNode, focusOffset))\n [anchorNode, anchorOffset, focusNode, focusOffset] = [focusNode, focusOffset, anchorNode, anchorOffset];\n return { anchorNode, anchorOffset, focusNode, focusOffset };\n}\n// Used to work around a Safari Selection/shadow DOM bug (#414)\nfunction safariSelectionRangeHack(view, selection) {\n if (selection.getComposedRanges) {\n let range = selection.getComposedRanges(view.root)[0];\n if (range)\n return buildSelectionRangeFromRange(view, range);\n }\n let found = null;\n // Because Safari (at least in 2018-2021) doesn't provide regular\n // access to the selection inside a shadowroot, we have to perform a\n // ridiculous hack to get at it\u2014using `execCommand` to trigger a\n // `beforeInput` event so that we can read the target range from the\n // event.\n function read(event) {\n event.preventDefault();\n event.stopImmediatePropagation();\n found = event.getTargetRanges()[0];\n }\n view.contentDOM.addEventListener(\"beforeinput\", read, true);\n view.dom.ownerDocument.execCommand(\"indent\");\n view.contentDOM.removeEventListener(\"beforeinput\", read, true);\n return found ? buildSelectionRangeFromRange(view, found) : null;\n}\nclass EditContextManager {\n constructor(view) {\n // The document window for which the text in the context is\n // maintained. For large documents, this may be smaller than the\n // editor document. This window always includes the selection head.\n this.from = 0;\n this.to = 0;\n // When applying a transaction, this is used to compare the change\n // made to the context content to the change in the transaction in\n // order to make the minimal changes to the context (since touching\n // that sometimes breaks series of multiple edits made for a single\n // user action on some Android keyboards)\n this.pendingContextChange = null;\n this.handlers = Object.create(null);\n // Kludge to work around the fact that EditContext does not respond\n // well to having its content updated during a composition (see #1472)\n this.composing = null;\n this.resetRange(view.state);\n let context = this.editContext = new window.EditContext({\n text: view.state.doc.sliceString(this.from, this.to),\n selectionStart: this.toContextPos(Math.max(this.from, Math.min(this.to, view.state.selection.main.anchor))),\n selectionEnd: this.toContextPos(view.state.selection.main.head)\n });\n this.handlers.textupdate = e => {\n let main = view.state.selection.main, { anchor, head } = main;\n let from = this.toEditorPos(e.updateRangeStart), to = this.toEditorPos(e.updateRangeEnd);\n if (view.inputState.composing >= 0 && !this.composing)\n this.composing = { contextBase: e.updateRangeStart, editorBase: from, drifted: false };\n let deletes = to - from > e.text.length;\n // If the window doesn't include the anchor, assume changes\n // adjacent to a side go up to the anchor.\n if (from == this.from && anchor < this.from)\n from = anchor;\n else if (to == this.to && anchor > this.to)\n to = anchor;\n let diff = findDiff(view.state.sliceDoc(from, to), e.text, (deletes ? main.from : main.to) - from, deletes ? \"end\" : null);\n // Edit contexts sometimes fire empty changes\n if (!diff) {\n let newSel = EditorSelection.single(this.toEditorPos(e.selectionStart), this.toEditorPos(e.selectionEnd));\n if (!newSel.main.eq(main))\n view.dispatch({ selection: newSel, userEvent: \"select\" });\n return;\n }\n let change = { from: diff.from + from, to: diff.toA + from,\n insert: Text.of(e.text.slice(diff.from, diff.toB).split(\"\\n\")) };\n if ((browser.mac || browser.android) && change.from == head - 1 &&\n /^\\. ?$/.test(e.text) && view.contentDOM.getAttribute(\"autocorrect\") == \"off\")\n change = { from, to, insert: Text.of([e.text.replace(\".\", \" \")]) };\n this.pendingContextChange = change;\n if (!view.state.readOnly) {\n let newLen = this.to - this.from + (change.to - change.from + change.insert.length);\n applyDOMChangeInner(view, change, EditorSelection.single(this.toEditorPos(e.selectionStart, newLen), this.toEditorPos(e.selectionEnd, newLen)));\n }\n // If the transaction didn't flush our change, revert it so\n // that the context is in sync with the editor state again.\n if (this.pendingContextChange) {\n this.revertPending(view.state);\n this.setSelection(view.state);\n }\n // Work around missed compositionend events. See https://discuss.codemirror.net/t/a/9514\n if (change.from < change.to && !change.insert.length && view.inputState.composing >= 0 &&\n !/[\\\\p{Alphabetic}\\\\p{Number}_]/.test(context.text.slice(Math.max(0, e.updateRangeStart - 1), Math.min(context.text.length, e.updateRangeStart + 1))))\n this.handlers.compositionend(e);\n };\n this.handlers.characterboundsupdate = e => {\n let rects = [], prev = null;\n for (let i = this.toEditorPos(e.rangeStart), end = this.toEditorPos(e.rangeEnd); i < end; i++) {\n let rect = view.coordsForChar(i);\n prev = (rect && new DOMRect(rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top))\n || prev || new DOMRect;\n rects.push(prev);\n }\n context.updateCharacterBounds(e.rangeStart, rects);\n };\n this.handlers.textformatupdate = e => {\n let deco = [];\n for (let format of e.getTextFormats()) {\n let lineStyle = format.underlineStyle, thickness = format.underlineThickness;\n if (!/none/i.test(lineStyle) && !/none/i.test(thickness)) {\n let from = this.toEditorPos(format.rangeStart), to = this.toEditorPos(format.rangeEnd);\n if (from < to) {\n // These values changed from capitalized custom strings to lower-case CSS keywords in 2025\n let style = `text-decoration: underline ${/^[a-z]/.test(lineStyle) ? lineStyle + \" \" : lineStyle == \"Dashed\" ? \"dashed \" : lineStyle == \"Squiggle\" ? \"wavy \" : \"\"}${/thin/i.test(thickness) ? 1 : 2}px`;\n deco.push(Decoration.mark({ attributes: { style } }).range(from, to));\n }\n }\n }\n view.dispatch({ effects: setEditContextFormatting.of(Decoration.set(deco)) });\n };\n this.handlers.compositionstart = () => {\n if (view.inputState.composing < 0) {\n view.inputState.composing = 0;\n view.inputState.compositionFirstChange = true;\n }\n };\n this.handlers.compositionend = () => {\n view.inputState.composing = -1;\n view.inputState.compositionFirstChange = null;\n if (this.composing) {\n let { drifted } = this.composing;\n this.composing = null;\n if (drifted)\n this.reset(view.state);\n }\n };\n for (let event in this.handlers)\n context.addEventListener(event, this.handlers[event]);\n this.measureReq = { read: view => {\n this.editContext.updateControlBounds(view.contentDOM.getBoundingClientRect());\n let sel = getSelection(view.root);\n if (sel && sel.rangeCount)\n this.editContext.updateSelectionBounds(sel.getRangeAt(0).getBoundingClientRect());\n } };\n }\n applyEdits(update) {\n let off = 0, abort = false, pending = this.pendingContextChange;\n update.changes.iterChanges((fromA, toA, _fromB, _toB, insert) => {\n if (abort)\n return;\n let dLen = insert.length - (toA - fromA);\n if (pending && toA >= pending.to) {\n if (pending.from == fromA && pending.to == toA && pending.insert.eq(insert)) {\n pending = this.pendingContextChange = null; // Match\n off += dLen;\n this.to += dLen;\n return;\n }\n else { // Mismatch, revert\n pending = null;\n this.revertPending(update.state);\n }\n }\n fromA += off;\n toA += off;\n if (toA <= this.from) { // Before the window\n this.from += dLen;\n this.to += dLen;\n }\n else if (fromA < this.to) { // Overlaps with window\n if (fromA < this.from || toA > this.to || (this.to - this.from) + insert.length > 30000 /* CxVp.MaxSize */) {\n abort = true;\n return;\n }\n this.editContext.updateText(this.toContextPos(fromA), this.toContextPos(toA), insert.toString());\n this.to += dLen;\n }\n off += dLen;\n });\n if (pending && !abort)\n this.revertPending(update.state);\n return !abort;\n }\n update(update) {\n let reverted = this.pendingContextChange, startSel = update.startState.selection.main;\n if (this.composing &&\n (this.composing.drifted ||\n (!update.changes.touchesRange(startSel.from, startSel.to) &&\n update.transactions.some(tr => !tr.isUserEvent(\"input.type\") && tr.changes.touchesRange(this.from, this.to))))) {\n this.composing.drifted = true;\n this.composing.editorBase = update.changes.mapPos(this.composing.editorBase);\n }\n else if (!this.applyEdits(update) || !this.rangeIsValid(update.state)) {\n this.pendingContextChange = null;\n this.reset(update.state);\n }\n else if (update.docChanged || update.selectionSet || reverted) {\n this.setSelection(update.state);\n }\n if (update.geometryChanged || update.docChanged || update.selectionSet)\n update.view.requestMeasure(this.measureReq);\n }\n resetRange(state) {\n let { head } = state.selection.main;\n this.from = Math.max(0, head - 10000 /* CxVp.Margin */);\n this.to = Math.min(state.doc.length, head + 10000 /* CxVp.Margin */);\n }\n reset(state) {\n this.resetRange(state);\n this.editContext.updateText(0, this.editContext.text.length, state.doc.sliceString(this.from, this.to));\n this.setSelection(state);\n }\n revertPending(state) {\n let pending = this.pendingContextChange;\n this.pendingContextChange = null;\n this.editContext.updateText(this.toContextPos(pending.from), this.toContextPos(pending.from + pending.insert.length), state.doc.sliceString(pending.from, pending.to));\n }\n setSelection(state) {\n let { main } = state.selection;\n let start = this.toContextPos(Math.max(this.from, Math.min(this.to, main.anchor)));\n let end = this.toContextPos(main.head);\n if (this.editContext.selectionStart != start || this.editContext.selectionEnd != end)\n this.editContext.updateSelection(start, end);\n }\n rangeIsValid(state) {\n let { head } = state.selection.main;\n return !(this.from > 0 && head - this.from < 500 /* CxVp.MinMargin */ ||\n this.to < state.doc.length && this.to - head < 500 /* CxVp.MinMargin */ ||\n this.to - this.from > 10000 /* CxVp.Margin */ * 3);\n }\n toEditorPos(contextPos, clipLen = this.to - this.from) {\n contextPos = Math.min(contextPos, clipLen);\n let c = this.composing;\n return c && c.drifted ? c.editorBase + (contextPos - c.contextBase) : contextPos + this.from;\n }\n toContextPos(editorPos) {\n let c = this.composing;\n return c && c.drifted ? c.contextBase + (editorPos - c.editorBase) : editorPos - this.from;\n }\n destroy() {\n for (let event in this.handlers)\n this.editContext.removeEventListener(event, this.handlers[event]);\n }\n}\n\n// The editor's update state machine looks something like this:\n//\n// Idle \u2192 Updating \u21C6 Idle (unchecked) \u2192 Measuring \u2192 Idle\n// \u2191 \u2193\n// Updating (measure)\n//\n// The difference between 'Idle' and 'Idle (unchecked)' lies in\n// whether a layout check has been scheduled. A regular update through\n// the `update` method updates the DOM in a write-only fashion, and\n// relies on a check (scheduled with `requestAnimationFrame`) to make\n// sure everything is where it should be and the viewport covers the\n// visible code. That check continues to measure and then optionally\n// update until it reaches a coherent state.\n/**\nAn editor view represents the editor's user interface. It holds\nthe editable DOM surface, and possibly other elements such as the\nline number gutter. It handles events and dispatches state\ntransactions for editing actions.\n*/\nclass EditorView {\n /**\n The current editor state.\n */\n get state() { return this.viewState.state; }\n /**\n To be able to display large documents without consuming too much\n memory or overloading the browser, CodeMirror only draws the\n code that is visible (plus a margin around it) to the DOM. This\n property tells you the extent of the current drawn viewport, in\n document positions.\n */\n get viewport() { return this.viewState.viewport; }\n /**\n When there are, for example, large collapsed ranges in the\n viewport, its size can be a lot bigger than the actual visible\n content. Thus, if you are doing something like styling the\n content in the viewport, it is preferable to only do so for\n these ranges, which are the subset of the viewport that is\n actually drawn.\n */\n get visibleRanges() { return this.viewState.visibleRanges; }\n /**\n Returns false when the editor is entirely scrolled out of view\n or otherwise hidden.\n */\n get inView() { return this.viewState.inView; }\n /**\n Indicates whether the user is currently composing text via\n [IME](https://en.wikipedia.org/wiki/Input_method), and at least\n one change has been made in the current composition.\n */\n get composing() { return !!this.inputState && this.inputState.composing > 0; }\n /**\n Indicates whether the user is currently in composing state. Note\n that on some platforms, like Android, this will be the case a\n lot, since just putting the cursor on a word starts a\n composition there.\n */\n get compositionStarted() { return !!this.inputState && this.inputState.composing >= 0; }\n /**\n The document or shadow root that the view lives in.\n */\n get root() { return this._root; }\n /**\n @internal\n */\n get win() { return this.dom.ownerDocument.defaultView || window; }\n /**\n Construct a new view. You'll want to either provide a `parent`\n option, or put `view.dom` into your document after creating a\n view, so that the user can see the editor.\n */\n constructor(config = {}) {\n var _a;\n this.plugins = [];\n this.pluginMap = new Map;\n this.editorAttrs = {};\n this.contentAttrs = {};\n this.bidiCache = [];\n this.destroyed = false;\n /**\n @internal\n */\n this.updateState = 2 /* UpdateState.Updating */;\n /**\n @internal\n */\n this.measureScheduled = -1;\n /**\n @internal\n */\n this.measureRequests = [];\n this.contentDOM = document.createElement(\"div\");\n this.scrollDOM = document.createElement(\"div\");\n this.scrollDOM.tabIndex = -1;\n this.scrollDOM.className = \"cm-scroller\";\n this.scrollDOM.appendChild(this.contentDOM);\n this.announceDOM = document.createElement(\"div\");\n this.announceDOM.className = \"cm-announced\";\n this.announceDOM.setAttribute(\"aria-live\", \"polite\");\n this.dom = document.createElement(\"div\");\n this.dom.appendChild(this.announceDOM);\n this.dom.appendChild(this.scrollDOM);\n if (config.parent)\n config.parent.appendChild(this.dom);\n let { dispatch } = config;\n this.dispatchTransactions = config.dispatchTransactions ||\n (dispatch && ((trs) => trs.forEach(tr => dispatch(tr, this)))) ||\n ((trs) => this.update(trs));\n this.dispatch = this.dispatch.bind(this);\n this._root = (config.root || getRoot(config.parent) || document);\n this.viewState = new ViewState(config.state || EditorState.create(config));\n if (config.scrollTo && config.scrollTo.is(scrollIntoView))\n this.viewState.scrollTarget = config.scrollTo.value.clip(this.viewState.state);\n this.plugins = this.state.facet(viewPlugin).map(spec => new PluginInstance(spec));\n for (let plugin of this.plugins)\n plugin.update(this);\n this.observer = new DOMObserver(this);\n this.inputState = new InputState(this);\n this.inputState.ensureHandlers(this.plugins);\n this.docView = new DocView(this);\n this.mountStyles();\n this.updateAttrs();\n this.updateState = 0 /* UpdateState.Idle */;\n this.requestMeasure();\n if ((_a = document.fonts) === null || _a === void 0 ? void 0 : _a.ready)\n document.fonts.ready.then(() => this.requestMeasure());\n }\n dispatch(...input) {\n let trs = input.length == 1 && input[0] instanceof Transaction ? input\n : input.length == 1 && Array.isArray(input[0]) ? input[0]\n : [this.state.update(...input)];\n this.dispatchTransactions(trs, this);\n }\n /**\n Update the view for the given array of transactions. This will\n update the visible document and selection to match the state\n produced by the transactions, and notify view plugins of the\n change. You should usually call\n [`dispatch`](https://codemirror.net/6/docs/ref/#view.EditorView.dispatch) instead, which uses this\n as a primitive.\n */\n update(transactions) {\n if (this.updateState != 0 /* UpdateState.Idle */)\n throw new Error(\"Calls to EditorView.update are not allowed while an update is in progress\");\n let redrawn = false, attrsChanged = false, update;\n let state = this.state;\n for (let tr of transactions) {\n if (tr.startState != state)\n throw new RangeError(\"Trying to update state with a transaction that doesn't start from the previous state.\");\n state = tr.state;\n }\n if (this.destroyed) {\n this.viewState.state = state;\n return;\n }\n let focus = this.hasFocus, focusFlag = 0, dispatchFocus = null;\n if (transactions.some(tr => tr.annotation(isFocusChange))) {\n this.inputState.notifiedFocused = focus;\n // If a focus-change transaction is being dispatched, set this update flag.\n focusFlag = 1 /* UpdateFlag.Focus */;\n }\n else if (focus != this.inputState.notifiedFocused) {\n this.inputState.notifiedFocused = focus;\n // Schedule a separate focus transaction if necessary, otherwise\n // add a flag to this update\n dispatchFocus = focusChangeTransaction(state, focus);\n if (!dispatchFocus)\n focusFlag = 1 /* UpdateFlag.Focus */;\n }\n // If there was a pending DOM change, eagerly read it and try to\n // apply it after the given transactions.\n let pendingKey = this.observer.delayedAndroidKey, domChange = null;\n if (pendingKey) {\n this.observer.clearDelayedAndroidKey();\n domChange = this.observer.readChange();\n // Only try to apply DOM changes if the transactions didn't\n // change the doc or selection.\n if (domChange && !this.state.doc.eq(state.doc) || !this.state.selection.eq(state.selection))\n domChange = null;\n }\n else {\n this.observer.clear();\n }\n // When the phrases change, redraw the editor\n if (state.facet(EditorState.phrases) != this.state.facet(EditorState.phrases))\n return this.setState(state);\n update = ViewUpdate.create(this, state, transactions);\n update.flags |= focusFlag;\n let scrollTarget = this.viewState.scrollTarget;\n try {\n this.updateState = 2 /* UpdateState.Updating */;\n for (let tr of transactions) {\n if (scrollTarget)\n scrollTarget = scrollTarget.map(tr.changes);\n if (tr.scrollIntoView) {\n let { main } = tr.state.selection;\n scrollTarget = new ScrollTarget(main.empty ? main : EditorSelection.cursor(main.head, main.head > main.anchor ? -1 : 1));\n }\n for (let e of tr.effects)\n if (e.is(scrollIntoView))\n scrollTarget = e.value.clip(this.state);\n }\n this.viewState.update(update, scrollTarget);\n this.bidiCache = CachedOrder.update(this.bidiCache, update.changes);\n if (!update.empty) {\n this.updatePlugins(update);\n this.inputState.update(update);\n }\n redrawn = this.docView.update(update);\n if (this.state.facet(styleModule) != this.styleModules)\n this.mountStyles();\n attrsChanged = this.updateAttrs();\n this.showAnnouncements(transactions);\n this.docView.updateSelection(redrawn, transactions.some(tr => tr.isUserEvent(\"select.pointer\")));\n }\n finally {\n this.updateState = 0 /* UpdateState.Idle */;\n }\n if (update.startState.facet(theme) != update.state.facet(theme))\n this.viewState.mustMeasureContent = true;\n if (redrawn || attrsChanged || scrollTarget || this.viewState.mustEnforceCursorAssoc || this.viewState.mustMeasureContent)\n this.requestMeasure();\n if (redrawn)\n this.docViewUpdate();\n if (!update.empty)\n for (let listener of this.state.facet(updateListener)) {\n try {\n listener(update);\n }\n catch (e) {\n logException(this.state, e, \"update listener\");\n }\n }\n if (dispatchFocus || domChange)\n Promise.resolve().then(() => {\n if (dispatchFocus && this.state == dispatchFocus.startState)\n this.dispatch(dispatchFocus);\n if (domChange) {\n if (!applyDOMChange(this, domChange) && pendingKey.force)\n dispatchKey(this.contentDOM, pendingKey.key, pendingKey.keyCode);\n }\n });\n }\n /**\n Reset the view to the given state. (This will cause the entire\n document to be redrawn and all view plugins to be reinitialized,\n so you should probably only use it when the new state isn't\n derived from the old state. Otherwise, use\n [`dispatch`](https://codemirror.net/6/docs/ref/#view.EditorView.dispatch) instead.)\n */\n setState(newState) {\n if (this.updateState != 0 /* UpdateState.Idle */)\n throw new Error(\"Calls to EditorView.setState are not allowed while an update is in progress\");\n if (this.destroyed) {\n this.viewState.state = newState;\n return;\n }\n this.updateState = 2 /* UpdateState.Updating */;\n let hadFocus = this.hasFocus;\n try {\n for (let plugin of this.plugins)\n plugin.destroy(this);\n this.viewState = new ViewState(newState);\n this.plugins = newState.facet(viewPlugin).map(spec => new PluginInstance(spec));\n this.pluginMap.clear();\n for (let plugin of this.plugins)\n plugin.update(this);\n this.docView.destroy();\n this.docView = new DocView(this);\n this.inputState.ensureHandlers(this.plugins);\n this.mountStyles();\n this.updateAttrs();\n this.bidiCache = [];\n }\n finally {\n this.updateState = 0 /* UpdateState.Idle */;\n }\n if (hadFocus)\n this.focus();\n this.requestMeasure();\n }\n updatePlugins(update) {\n let prevSpecs = update.startState.facet(viewPlugin), specs = update.state.facet(viewPlugin);\n if (prevSpecs != specs) {\n let newPlugins = [];\n for (let spec of specs) {\n let found = prevSpecs.indexOf(spec);\n if (found < 0) {\n newPlugins.push(new PluginInstance(spec));\n }\n else {\n let plugin = this.plugins[found];\n plugin.mustUpdate = update;\n newPlugins.push(plugin);\n }\n }\n for (let plugin of this.plugins)\n if (plugin.mustUpdate != update)\n plugin.destroy(this);\n this.plugins = newPlugins;\n this.pluginMap.clear();\n }\n else {\n for (let p of this.plugins)\n p.mustUpdate = update;\n }\n for (let i = 0; i < this.plugins.length; i++)\n this.plugins[i].update(this);\n if (prevSpecs != specs)\n this.inputState.ensureHandlers(this.plugins);\n }\n docViewUpdate() {\n for (let plugin of this.plugins) {\n let val = plugin.value;\n if (val && val.docViewUpdate) {\n try {\n val.docViewUpdate(this);\n }\n catch (e) {\n logException(this.state, e, \"doc view update listener\");\n }\n }\n }\n }\n /**\n @internal\n */\n measure(flush = true) {\n if (this.destroyed)\n return;\n if (this.measureScheduled > -1)\n this.win.cancelAnimationFrame(this.measureScheduled);\n if (this.observer.delayedAndroidKey) {\n this.measureScheduled = -1;\n this.requestMeasure();\n return;\n }\n this.measureScheduled = 0; // Prevent requestMeasure calls from scheduling another animation frame\n if (flush)\n this.observer.forceFlush();\n let updated = null;\n let sDOM = this.scrollDOM, scrollTop = sDOM.scrollTop * this.scaleY;\n let { scrollAnchorPos, scrollAnchorHeight } = this.viewState;\n if (Math.abs(scrollTop - this.viewState.scrollTop) > 1)\n scrollAnchorHeight = -1;\n this.viewState.scrollAnchorHeight = -1;\n try {\n for (let i = 0;; i++) {\n if (scrollAnchorHeight < 0) {\n if (isScrolledToBottom(sDOM)) {\n scrollAnchorPos = -1;\n scrollAnchorHeight = this.viewState.heightMap.height;\n }\n else {\n let block = this.viewState.scrollAnchorAt(scrollTop);\n scrollAnchorPos = block.from;\n scrollAnchorHeight = block.top;\n }\n }\n this.updateState = 1 /* UpdateState.Measuring */;\n let changed = this.viewState.measure(this);\n if (!changed && !this.measureRequests.length && this.viewState.scrollTarget == null)\n break;\n if (i > 5) {\n console.warn(this.measureRequests.length\n ? \"Measure loop restarted more than 5 times\"\n : \"Viewport failed to stabilize\");\n break;\n }\n let measuring = [];\n // Only run measure requests in this cycle when the viewport didn't change\n if (!(changed & 4 /* UpdateFlag.Viewport */))\n [this.measureRequests, measuring] = [measuring, this.measureRequests];\n let measured = measuring.map(m => {\n try {\n return m.read(this);\n }\n catch (e) {\n logException(this.state, e);\n return BadMeasure;\n }\n });\n let update = ViewUpdate.create(this, this.state, []), redrawn = false;\n update.flags |= changed;\n if (!updated)\n updated = update;\n else\n updated.flags |= changed;\n this.updateState = 2 /* UpdateState.Updating */;\n if (!update.empty) {\n this.updatePlugins(update);\n this.inputState.update(update);\n this.updateAttrs();\n redrawn = this.docView.update(update);\n if (redrawn)\n this.docViewUpdate();\n }\n for (let i = 0; i < measuring.length; i++)\n if (measured[i] != BadMeasure) {\n try {\n let m = measuring[i];\n if (m.write)\n m.write(measured[i], this);\n }\n catch (e) {\n logException(this.state, e);\n }\n }\n if (redrawn)\n this.docView.updateSelection(true);\n if (!update.viewportChanged && this.measureRequests.length == 0) {\n if (this.viewState.editorHeight) {\n if (this.viewState.scrollTarget) {\n this.docView.scrollIntoView(this.viewState.scrollTarget);\n this.viewState.scrollTarget = null;\n scrollAnchorHeight = -1;\n continue;\n }\n else {\n let newAnchorHeight = scrollAnchorPos < 0 ? this.viewState.heightMap.height :\n this.viewState.lineBlockAt(scrollAnchorPos).top;\n let diff = newAnchorHeight - scrollAnchorHeight;\n if (diff > 1 || diff < -1) {\n scrollTop = scrollTop + diff;\n sDOM.scrollTop = scrollTop / this.scaleY;\n scrollAnchorHeight = -1;\n continue;\n }\n }\n }\n break;\n }\n }\n }\n finally {\n this.updateState = 0 /* UpdateState.Idle */;\n this.measureScheduled = -1;\n }\n if (updated && !updated.empty)\n for (let listener of this.state.facet(updateListener))\n listener(updated);\n }\n /**\n Get the CSS classes for the currently active editor themes.\n */\n get themeClasses() {\n return baseThemeID + \" \" +\n (this.state.facet(darkTheme) ? baseDarkID : baseLightID) + \" \" +\n this.state.facet(theme);\n }\n updateAttrs() {\n let editorAttrs = attrsFromFacet(this, editorAttributes, {\n class: \"cm-editor\" + (this.hasFocus ? \" cm-focused \" : \" \") + this.themeClasses\n });\n let contentAttrs = {\n spellcheck: \"false\",\n autocorrect: \"off\",\n autocapitalize: \"off\",\n writingsuggestions: \"false\",\n translate: \"no\",\n contenteditable: !this.state.facet(editable) ? \"false\" : \"true\",\n class: \"cm-content\",\n style: `${browser.tabSize}: ${this.state.tabSize}`,\n role: \"textbox\",\n \"aria-multiline\": \"true\"\n };\n if (this.state.readOnly)\n contentAttrs[\"aria-readonly\"] = \"true\";\n attrsFromFacet(this, contentAttributes, contentAttrs);\n let changed = this.observer.ignore(() => {\n let changedContent = updateAttrs(this.contentDOM, this.contentAttrs, contentAttrs);\n let changedEditor = updateAttrs(this.dom, this.editorAttrs, editorAttrs);\n return changedContent || changedEditor;\n });\n this.editorAttrs = editorAttrs;\n this.contentAttrs = contentAttrs;\n return changed;\n }\n showAnnouncements(trs) {\n let first = true;\n for (let tr of trs)\n for (let effect of tr.effects)\n if (effect.is(EditorView.announce)) {\n if (first)\n this.announceDOM.textContent = \"\";\n first = false;\n let div = this.announceDOM.appendChild(document.createElement(\"div\"));\n div.textContent = effect.value;\n }\n }\n mountStyles() {\n this.styleModules = this.state.facet(styleModule);\n let nonce = this.state.facet(EditorView.cspNonce);\n StyleModule.mount(this.root, this.styleModules.concat(baseTheme$1).reverse(), nonce ? { nonce } : undefined);\n }\n readMeasured() {\n if (this.updateState == 2 /* UpdateState.Updating */)\n throw new Error(\"Reading the editor layout isn't allowed during an update\");\n if (this.updateState == 0 /* UpdateState.Idle */ && this.measureScheduled > -1)\n this.measure(false);\n }\n /**\n Schedule a layout measurement, optionally providing callbacks to\n do custom DOM measuring followed by a DOM write phase. Using\n this is preferable reading DOM layout directly from, for\n example, an event handler, because it'll make sure measuring and\n drawing done by other components is synchronized, avoiding\n unnecessary DOM layout computations.\n */\n requestMeasure(request) {\n if (this.measureScheduled < 0)\n this.measureScheduled = this.win.requestAnimationFrame(() => this.measure());\n if (request) {\n if (this.measureRequests.indexOf(request) > -1)\n return;\n if (request.key != null)\n for (let i = 0; i < this.measureRequests.length; i++) {\n if (this.measureRequests[i].key === request.key) {\n this.measureRequests[i] = request;\n return;\n }\n }\n this.measureRequests.push(request);\n }\n }\n /**\n Get the value of a specific plugin, if present. Note that\n plugins that crash can be dropped from a view, so even when you\n know you registered a given plugin, it is recommended to check\n the return value of this method.\n */\n plugin(plugin) {\n let known = this.pluginMap.get(plugin);\n if (known === undefined || known && known.plugin != plugin)\n this.pluginMap.set(plugin, known = this.plugins.find(p => p.plugin == plugin) || null);\n return known && known.update(this).value;\n }\n /**\n The top position of the document, in screen coordinates. This\n may be negative when the editor is scrolled down. Points\n directly to the top of the first line, not above the padding.\n */\n get documentTop() {\n return this.contentDOM.getBoundingClientRect().top + this.viewState.paddingTop;\n }\n /**\n Reports the padding above and below the document.\n */\n get documentPadding() {\n return { top: this.viewState.paddingTop, bottom: this.viewState.paddingBottom };\n }\n /**\n If the editor is transformed with CSS, this provides the scale\n along the X axis. Otherwise, it will just be 1. Note that\n transforms other than translation and scaling are not supported.\n */\n get scaleX() { return this.viewState.scaleX; }\n /**\n Provide the CSS transformed scale along the Y axis.\n */\n get scaleY() { return this.viewState.scaleY; }\n /**\n Find the text line or block widget at the given vertical\n position (which is interpreted as relative to the [top of the\n document](https://codemirror.net/6/docs/ref/#view.EditorView.documentTop)).\n */\n elementAtHeight(height) {\n this.readMeasured();\n return this.viewState.elementAtHeight(height);\n }\n /**\n Find the line block (see\n [`lineBlockAt`](https://codemirror.net/6/docs/ref/#view.EditorView.lineBlockAt)) at the given\n height, again interpreted relative to the [top of the\n document](https://codemirror.net/6/docs/ref/#view.EditorView.documentTop).\n */\n lineBlockAtHeight(height) {\n this.readMeasured();\n return this.viewState.lineBlockAtHeight(height);\n }\n /**\n Get the extent and vertical position of all [line\n blocks](https://codemirror.net/6/docs/ref/#view.EditorView.lineBlockAt) in the viewport. Positions\n are relative to the [top of the\n document](https://codemirror.net/6/docs/ref/#view.EditorView.documentTop);\n */\n get viewportLineBlocks() {\n return this.viewState.viewportLines;\n }\n /**\n Find the line block around the given document position. A line\n block is a range delimited on both sides by either a\n non-[hidden](https://codemirror.net/6/docs/ref/#view.Decoration^replace) line break, or the\n start/end of the document. It will usually just hold a line of\n text, but may be broken into multiple textblocks by block\n widgets.\n */\n lineBlockAt(pos) {\n return this.viewState.lineBlockAt(pos);\n }\n /**\n The editor's total content height.\n */\n get contentHeight() {\n return this.viewState.contentHeight;\n }\n /**\n Move a cursor position by [grapheme\n cluster](https://codemirror.net/6/docs/ref/#state.findClusterBreak). `forward` determines whether\n the motion is away from the line start, or towards it. In\n bidirectional text, the line is traversed in visual order, using\n the editor's [text direction](https://codemirror.net/6/docs/ref/#view.EditorView.textDirection).\n When the start position was the last one on the line, the\n returned position will be across the line break. If there is no\n further line, the original position is returned.\n \n By default, this method moves over a single cluster. The\n optional `by` argument can be used to move across more. It will\n be called with the first cluster as argument, and should return\n a predicate that determines, for each subsequent cluster,\n whether it should also be moved over.\n */\n moveByChar(start, forward, by) {\n return skipAtoms(this, start, moveByChar(this, start, forward, by));\n }\n /**\n Move a cursor position across the next group of either\n [letters](https://codemirror.net/6/docs/ref/#state.EditorState.charCategorizer) or non-letter\n non-whitespace characters.\n */\n moveByGroup(start, forward) {\n return skipAtoms(this, start, moveByChar(this, start, forward, initial => byGroup(this, start.head, initial)));\n }\n /**\n Get the cursor position visually at the start or end of a line.\n Note that this may differ from the _logical_ position at its\n start or end (which is simply at `line.from`/`line.to`) if text\n at the start or end goes against the line's base text direction.\n */\n visualLineSide(line, end) {\n let order = this.bidiSpans(line), dir = this.textDirectionAt(line.from);\n let span = order[end ? order.length - 1 : 0];\n return EditorSelection.cursor(span.side(end, dir) + line.from, span.forward(!end, dir) ? 1 : -1);\n }\n /**\n Move to the next line boundary in the given direction. If\n `includeWrap` is true, line wrapping is on, and there is a\n further wrap point on the current line, the wrap point will be\n returned. Otherwise this function will return the start or end\n of the line.\n */\n moveToLineBoundary(start, forward, includeWrap = true) {\n return moveToLineBoundary(this, start, forward, includeWrap);\n }\n /**\n Move a cursor position vertically. When `distance` isn't given,\n it defaults to moving to the next line (including wrapped\n lines). Otherwise, `distance` should provide a positive distance\n in pixels.\n \n When `start` has a\n [`goalColumn`](https://codemirror.net/6/docs/ref/#state.SelectionRange.goalColumn), the vertical\n motion will use that as a target horizontal position. Otherwise,\n the cursor's own horizontal position is used. The returned\n cursor will have its goal column set to whichever column was\n used.\n */\n moveVertically(start, forward, distance) {\n return skipAtoms(this, start, moveVertically(this, start, forward, distance));\n }\n /**\n Find the DOM parent node and offset (child offset if `node` is\n an element, character offset when it is a text node) at the\n given document position.\n \n Note that for positions that aren't currently in\n `visibleRanges`, the resulting DOM position isn't necessarily\n meaningful (it may just point before or after a placeholder\n element).\n */\n domAtPos(pos, side = 1) {\n return this.docView.domAtPos(pos, side);\n }\n /**\n Find the document position at the given DOM node. Can be useful\n for associating positions with DOM events. Will raise an error\n when `node` isn't part of the editor content.\n */\n posAtDOM(node, offset = 0) {\n return this.docView.posFromDOM(node, offset);\n }\n posAtCoords(coords, precise = true) {\n this.readMeasured();\n let found = posAtCoords(this, coords, precise);\n return found && found.pos;\n }\n posAndSideAtCoords(coords, precise = true) {\n this.readMeasured();\n return posAtCoords(this, coords, precise);\n }\n /**\n Get the screen coordinates at the given document position.\n `side` determines whether the coordinates are based on the\n element before (-1) or after (1) the position (if no element is\n available on the given side, the method will transparently use\n another strategy to get reasonable coordinates).\n */\n coordsAtPos(pos, side = 1) {\n this.readMeasured();\n let rect = this.docView.coordsAt(pos, side);\n if (!rect || rect.left == rect.right)\n return rect;\n let line = this.state.doc.lineAt(pos), order = this.bidiSpans(line);\n let span = order[BidiSpan.find(order, pos - line.from, -1, side)];\n return flattenRect(rect, (span.dir == Direction.LTR) == (side > 0));\n }\n /**\n Return the rectangle around a given character. If `pos` does not\n point in front of a character that is in the viewport and\n rendered (i.e. not replaced, not a line break), this will return\n null. For space characters that are a line wrap point, this will\n return the position before the line break.\n */\n coordsForChar(pos) {\n this.readMeasured();\n return this.docView.coordsForChar(pos);\n }\n /**\n The default width of a character in the editor. May not\n accurately reflect the width of all characters (given variable\n width fonts or styling of invididual ranges).\n */\n get defaultCharacterWidth() { return this.viewState.heightOracle.charWidth; }\n /**\n The default height of a line in the editor. May not be accurate\n for all lines.\n */\n get defaultLineHeight() { return this.viewState.heightOracle.lineHeight; }\n /**\n The text direction\n ([`direction`](https://developer.mozilla.org/en-US/docs/Web/CSS/direction)\n CSS property) of the editor's content element.\n */\n get textDirection() { return this.viewState.defaultTextDirection; }\n /**\n Find the text direction of the block at the given position, as\n assigned by CSS. If\n [`perLineTextDirection`](https://codemirror.net/6/docs/ref/#view.EditorView^perLineTextDirection)\n isn't enabled, or the given position is outside of the viewport,\n this will always return the same as\n [`textDirection`](https://codemirror.net/6/docs/ref/#view.EditorView.textDirection). Note that\n this may trigger a DOM layout.\n */\n textDirectionAt(pos) {\n let perLine = this.state.facet(perLineTextDirection);\n if (!perLine || pos < this.viewport.from || pos > this.viewport.to)\n return this.textDirection;\n this.readMeasured();\n return this.docView.textDirectionAt(pos);\n }\n /**\n Whether this editor [wraps lines](https://codemirror.net/6/docs/ref/#view.EditorView.lineWrapping)\n (as determined by the\n [`white-space`](https://developer.mozilla.org/en-US/docs/Web/CSS/white-space)\n CSS property of its content element).\n */\n get lineWrapping() { return this.viewState.heightOracle.lineWrapping; }\n /**\n Returns the bidirectional text structure of the given line\n (which should be in the current document) as an array of span\n objects. The order of these spans matches the [text\n direction](https://codemirror.net/6/docs/ref/#view.EditorView.textDirection)\u2014if that is\n left-to-right, the leftmost spans come first, otherwise the\n rightmost spans come first.\n */\n bidiSpans(line) {\n if (line.length > MaxBidiLine)\n return trivialOrder(line.length);\n let dir = this.textDirectionAt(line.from), isolates;\n for (let entry of this.bidiCache) {\n if (entry.from == line.from && entry.dir == dir &&\n (entry.fresh || isolatesEq(entry.isolates, isolates = getIsolatedRanges(this, line))))\n return entry.order;\n }\n if (!isolates)\n isolates = getIsolatedRanges(this, line);\n let order = computeOrder(line.text, dir, isolates);\n this.bidiCache.push(new CachedOrder(line.from, line.to, dir, isolates, true, order));\n return order;\n }\n /**\n Check whether the editor has focus.\n */\n get hasFocus() {\n var _a;\n // Safari return false for hasFocus when the context menu is open\n // or closing, which leads us to ignore selection changes from the\n // context menu because it looks like the editor isn't focused.\n // This kludges around that.\n return (this.dom.ownerDocument.hasFocus() || browser.safari && ((_a = this.inputState) === null || _a === void 0 ? void 0 : _a.lastContextMenu) > Date.now() - 3e4) &&\n this.root.activeElement == this.contentDOM;\n }\n /**\n Put focus on the editor.\n */\n focus() {\n this.observer.ignore(() => {\n focusPreventScroll(this.contentDOM);\n this.docView.updateSelection();\n });\n }\n /**\n Update the [root](https://codemirror.net/6/docs/ref/##view.EditorViewConfig.root) in which the editor lives. This is only\n necessary when moving the editor's existing DOM to a new window or shadow root.\n */\n setRoot(root) {\n if (this._root != root) {\n this._root = root;\n this.observer.setWindow((root.nodeType == 9 ? root : root.ownerDocument).defaultView || window);\n this.mountStyles();\n }\n }\n /**\n Clean up this editor view, removing its element from the\n document, unregistering event handlers, and notifying\n plugins. The view instance can no longer be used after\n calling this.\n */\n destroy() {\n if (this.root.activeElement == this.contentDOM)\n this.contentDOM.blur();\n for (let plugin of this.plugins)\n plugin.destroy(this);\n this.plugins = [];\n this.inputState.destroy();\n this.docView.destroy();\n this.dom.remove();\n this.observer.destroy();\n if (this.measureScheduled > -1)\n this.win.cancelAnimationFrame(this.measureScheduled);\n this.destroyed = true;\n }\n /**\n Returns an effect that can be\n [added](https://codemirror.net/6/docs/ref/#state.TransactionSpec.effects) to a transaction to\n cause it to scroll the given position or range into view.\n */\n static scrollIntoView(pos, options = {}) {\n return scrollIntoView.of(new ScrollTarget(typeof pos == \"number\" ? EditorSelection.cursor(pos) : pos, options.y, options.x, options.yMargin, options.xMargin));\n }\n /**\n Return an effect that resets the editor to its current (at the\n time this method was called) scroll position. Note that this\n only affects the editor's own scrollable element, not parents.\n See also\n [`EditorViewConfig.scrollTo`](https://codemirror.net/6/docs/ref/#view.EditorViewConfig.scrollTo).\n \n The effect should be used with a document identical to the one\n it was created for. Failing to do so is not an error, but may\n not scroll to the expected position. You can\n [map](https://codemirror.net/6/docs/ref/#state.StateEffect.map) the effect to account for changes.\n */\n scrollSnapshot() {\n let { scrollTop, scrollLeft } = this.scrollDOM;\n let ref = this.viewState.scrollAnchorAt(scrollTop);\n return scrollIntoView.of(new ScrollTarget(EditorSelection.cursor(ref.from), \"start\", \"start\", ref.top - scrollTop, scrollLeft, true));\n }\n /**\n Enable or disable tab-focus mode, which disables key bindings\n for Tab and Shift-Tab, letting the browser's default\n focus-changing behavior go through instead. This is useful to\n prevent trapping keyboard users in your editor.\n \n Without argument, this toggles the mode. With a boolean, it\n enables (true) or disables it (false). Given a number, it\n temporarily enables the mode until that number of milliseconds\n have passed or another non-Tab key is pressed.\n */\n setTabFocusMode(to) {\n if (to == null)\n this.inputState.tabFocusMode = this.inputState.tabFocusMode < 0 ? 0 : -1;\n else if (typeof to == \"boolean\")\n this.inputState.tabFocusMode = to ? 0 : -1;\n else if (this.inputState.tabFocusMode != 0)\n this.inputState.tabFocusMode = Date.now() + to;\n }\n /**\n Returns an extension that can be used to add DOM event handlers.\n The value should be an object mapping event names to handler\n functions. For any given event, such functions are ordered by\n extension precedence, and the first handler to return true will\n be assumed to have handled that event, and no other handlers or\n built-in behavior will be activated for it. These are registered\n on the [content element](https://codemirror.net/6/docs/ref/#view.EditorView.contentDOM), except\n for `scroll` handlers, which will be called any time the\n editor's [scroll element](https://codemirror.net/6/docs/ref/#view.EditorView.scrollDOM) or one of\n its parent nodes is scrolled.\n */\n static domEventHandlers(handlers) {\n return ViewPlugin.define(() => ({}), { eventHandlers: handlers });\n }\n /**\n Create an extension that registers DOM event observers. Contrary\n to event [handlers](https://codemirror.net/6/docs/ref/#view.EditorView^domEventHandlers),\n observers can't be prevented from running by a higher-precedence\n handler returning true. They also don't prevent other handlers\n and observers from running when they return true, and should not\n call `preventDefault`.\n */\n static domEventObservers(observers) {\n return ViewPlugin.define(() => ({}), { eventObservers: observers });\n }\n /**\n Create a theme extension. The first argument can be a\n [`style-mod`](https://github.com/marijnh/style-mod#documentation)\n style spec providing the styles for the theme. These will be\n prefixed with a generated class for the style.\n \n Because the selectors will be prefixed with a scope class, rule\n that directly match the editor's [wrapper\n element](https://codemirror.net/6/docs/ref/#view.EditorView.dom)\u2014to which the scope class will be\n added\u2014need to be explicitly differentiated by adding an `&` to\n the selector for that element\u2014for example\n `&.cm-focused`.\n \n When `dark` is set to true, the theme will be marked as dark,\n which will cause the `&dark` rules from [base\n themes](https://codemirror.net/6/docs/ref/#view.EditorView^baseTheme) to be used (as opposed to\n `&light` when a light theme is active).\n */\n static theme(spec, options) {\n let prefix = StyleModule.newName();\n let result = [theme.of(prefix), styleModule.of(buildTheme(`.${prefix}`, spec))];\n if (options && options.dark)\n result.push(darkTheme.of(true));\n return result;\n }\n /**\n Create an extension that adds styles to the base theme. Like\n with [`theme`](https://codemirror.net/6/docs/ref/#view.EditorView^theme), use `&` to indicate the\n place of the editor wrapper element when directly targeting\n that. You can also use `&dark` or `&light` instead to only\n target editors with a dark or light theme.\n */\n static baseTheme(spec) {\n return Prec.lowest(styleModule.of(buildTheme(\".\" + baseThemeID, spec, lightDarkIDs)));\n }\n /**\n Retrieve an editor view instance from the view's DOM\n representation.\n */\n static findFromDOM(dom) {\n var _a;\n let content = dom.querySelector(\".cm-content\");\n let tile = content && Tile.get(content) || Tile.get(dom);\n return ((_a = tile === null || tile === void 0 ? void 0 : tile.root) === null || _a === void 0 ? void 0 : _a.view) || null;\n }\n}\n/**\nFacet to add a [style\nmodule](https://github.com/marijnh/style-mod#documentation) to\nan editor view. The view will ensure that the module is\nmounted in its [document\nroot](https://codemirror.net/6/docs/ref/#view.EditorView.constructor^config.root).\n*/\nEditorView.styleModule = styleModule;\n/**\nAn input handler can override the way changes to the editable\nDOM content are handled. Handlers are passed the document\npositions between which the change was found, and the new\ncontent. When one returns true, no further input handlers are\ncalled and the default behavior is prevented.\n\nThe `insert` argument can be used to get the default transaction\nthat would be applied for this input. This can be useful when\ndispatching the custom behavior as a separate transaction.\n*/\nEditorView.inputHandler = inputHandler;\n/**\nFunctions provided in this facet will be used to transform text\npasted or dropped into the editor.\n*/\nEditorView.clipboardInputFilter = clipboardInputFilter;\n/**\nTransform text copied or dragged from the editor.\n*/\nEditorView.clipboardOutputFilter = clipboardOutputFilter;\n/**\nScroll handlers can override how things are scrolled into view.\nIf they return `true`, no further handling happens for the\nscrolling. If they return false, the default scroll behavior is\napplied. Scroll handlers should never initiate editor updates.\n*/\nEditorView.scrollHandler = scrollHandler;\n/**\nThis facet can be used to provide functions that create effects\nto be dispatched when the editor's focus state changes.\n*/\nEditorView.focusChangeEffect = focusChangeEffect;\n/**\nBy default, the editor assumes all its content has the same\n[text direction](https://codemirror.net/6/docs/ref/#view.Direction). Configure this with a `true`\nvalue to make it read the text direction of every (rendered)\nline separately.\n*/\nEditorView.perLineTextDirection = perLineTextDirection;\n/**\nAllows you to provide a function that should be called when the\nlibrary catches an exception from an extension (mostly from view\nplugins, but may be used by other extensions to route exceptions\nfrom user-code-provided callbacks). This is mostly useful for\ndebugging and logging. See [`logException`](https://codemirror.net/6/docs/ref/#view.logException).\n*/\nEditorView.exceptionSink = exceptionSink;\n/**\nA facet that can be used to register a function to be called\nevery time the view updates.\n*/\nEditorView.updateListener = updateListener;\n/**\nFacet that controls whether the editor content DOM is editable.\nWhen its highest-precedence value is `false`, the element will\nnot have its `contenteditable` attribute set. (Note that this\ndoesn't affect API calls that change the editor content, even\nwhen those are bound to keys or buttons. See the\n[`readOnly`](https://codemirror.net/6/docs/ref/#state.EditorState.readOnly) facet for that.)\n*/\nEditorView.editable = editable;\n/**\nAllows you to influence the way mouse selection happens. The\nfunctions in this facet will be called for a `mousedown` event\non the editor, and can return an object that overrides the way a\nselection is computed from that mouse click or drag.\n*/\nEditorView.mouseSelectionStyle = mouseSelectionStyle;\n/**\nFacet used to configure whether a given selection drag event\nshould move or copy the selection. The given predicate will be\ncalled with the `mousedown` event, and can return `true` when\nthe drag should move the content.\n*/\nEditorView.dragMovesSelection = dragMovesSelection$1;\n/**\nFacet used to configure whether a given selecting click adds a\nnew range to the existing selection or replaces it entirely. The\ndefault behavior is to check `event.metaKey` on macOS, and\n`event.ctrlKey` elsewhere.\n*/\nEditorView.clickAddsSelectionRange = clickAddsSelectionRange;\n/**\nA facet that determines which [decorations](https://codemirror.net/6/docs/ref/#view.Decoration)\nare shown in the view. Decorations can be provided in two\nways\u2014directly, or via a function that takes an editor view.\n\nOnly decoration sets provided directly are allowed to influence\nthe editor's vertical layout structure. The ones provided as\nfunctions are called _after_ the new viewport has been computed,\nand thus **must not** introduce block widgets or replacing\ndecorations that cover line breaks.\n\nIf you want decorated ranges to behave like atomic units for\ncursor motion and deletion purposes, also provide the range set\ncontaining the decorations to\n[`EditorView.atomicRanges`](https://codemirror.net/6/docs/ref/#view.EditorView^atomicRanges).\n*/\nEditorView.decorations = decorations;\n/**\n[Block wrappers](https://codemirror.net/6/docs/ref/#view.BlockWrapper) provide a way to add DOM\nstructure around editor lines and block widgets. Sets of\nwrappers are provided in a similar way to decorations, and are\nnested in a similar way when they overlap. A wrapper affects all\nlines and block widgets that start inside its range.\n*/\nEditorView.blockWrappers = blockWrappers;\n/**\nFacet that works much like\n[`decorations`](https://codemirror.net/6/docs/ref/#view.EditorView^decorations), but puts its\ninputs at the very bottom of the precedence stack, meaning mark\ndecorations provided here will only be split by other, partially\noverlapping `outerDecorations` ranges, and wrap around all\nregular decorations. Use this for mark elements that should, as\nmuch as possible, remain in one piece.\n*/\nEditorView.outerDecorations = outerDecorations;\n/**\nUsed to provide ranges that should be treated as atoms as far as\ncursor motion is concerned. This causes methods like\n[`moveByChar`](https://codemirror.net/6/docs/ref/#view.EditorView.moveByChar) and\n[`moveVertically`](https://codemirror.net/6/docs/ref/#view.EditorView.moveVertically) (and the\ncommands built on top of them) to skip across such regions when\na selection endpoint would enter them. This does _not_ prevent\ndirect programmatic [selection\nupdates](https://codemirror.net/6/docs/ref/#state.TransactionSpec.selection) from moving into such\nregions.\n*/\nEditorView.atomicRanges = atomicRanges;\n/**\nWhen range decorations add a `unicode-bidi: isolate` style, they\nshould also include a\n[`bidiIsolate`](https://codemirror.net/6/docs/ref/#view.MarkDecorationSpec.bidiIsolate) property\nin their decoration spec, and be exposed through this facet, so\nthat the editor can compute the proper text order. (Other values\nfor `unicode-bidi`, except of course `normal`, are not\nsupported.)\n*/\nEditorView.bidiIsolatedRanges = bidiIsolatedRanges;\n/**\nFacet that allows extensions to provide additional scroll\nmargins (space around the sides of the scrolling element that\nshould be considered invisible). This can be useful when the\nplugin introduces elements that cover part of that element (for\nexample a horizontally fixed gutter).\n*/\nEditorView.scrollMargins = scrollMargins;\n/**\nThis facet records whether a dark theme is active. The extension\nreturned by [`theme`](https://codemirror.net/6/docs/ref/#view.EditorView^theme) automatically\nincludes an instance of this when the `dark` option is set to\ntrue.\n*/\nEditorView.darkTheme = darkTheme;\n/**\nProvides a Content Security Policy nonce to use when creating\nthe style sheets for the editor. Holds the empty string when no\nnonce has been provided.\n*/\nEditorView.cspNonce = /*@__PURE__*/Facet.define({ combine: values => values.length ? values[0] : \"\" });\n/**\nFacet that provides additional DOM attributes for the editor's\neditable DOM element.\n*/\nEditorView.contentAttributes = contentAttributes;\n/**\nFacet that provides DOM attributes for the editor's outer\nelement.\n*/\nEditorView.editorAttributes = editorAttributes;\n/**\nAn extension that enables line wrapping in the editor (by\nsetting CSS `white-space` to `pre-wrap` in the content).\n*/\nEditorView.lineWrapping = /*@__PURE__*/EditorView.contentAttributes.of({ \"class\": \"cm-lineWrapping\" });\n/**\nState effect used to include screen reader announcements in a\ntransaction. These will be added to the DOM in a visually hidden\nelement with `aria-live=\"polite\"` set, and should be used to\ndescribe effects that are visually obvious but may not be\nnoticed by screen reader users (such as moving to the next\nsearch match).\n*/\nEditorView.announce = /*@__PURE__*/StateEffect.define();\n// Maximum line length for which we compute accurate bidi info\nconst MaxBidiLine = 4096;\nconst BadMeasure = {};\nclass CachedOrder {\n constructor(from, to, dir, isolates, fresh, order) {\n this.from = from;\n this.to = to;\n this.dir = dir;\n this.isolates = isolates;\n this.fresh = fresh;\n this.order = order;\n }\n static update(cache, changes) {\n if (changes.empty && !cache.some(c => c.fresh))\n return cache;\n let result = [], lastDir = cache.length ? cache[cache.length - 1].dir : Direction.LTR;\n for (let i = Math.max(0, cache.length - 10); i < cache.length; i++) {\n let entry = cache[i];\n if (entry.dir == lastDir && !changes.touchesRange(entry.from, entry.to))\n result.push(new CachedOrder(changes.mapPos(entry.from, 1), changes.mapPos(entry.to, -1), entry.dir, entry.isolates, false, entry.order));\n }\n return result;\n }\n}\nfunction attrsFromFacet(view, facet, base) {\n for (let sources = view.state.facet(facet), i = sources.length - 1; i >= 0; i--) {\n let source = sources[i], value = typeof source == \"function\" ? source(view) : source;\n if (value)\n combineAttrs(value, base);\n }\n return base;\n}\n\nconst currentPlatform = browser.mac ? \"mac\" : browser.windows ? \"win\" : browser.linux ? \"linux\" : \"key\";\nfunction normalizeKeyName(name, platform) {\n const parts = name.split(/-(?!$)/);\n let result = parts[parts.length - 1];\n if (result == \"Space\")\n result = \" \";\n let alt, ctrl, shift, meta;\n for (let i = 0; i < parts.length - 1; ++i) {\n const mod = parts[i];\n if (/^(cmd|meta|m)$/i.test(mod))\n meta = true;\n else if (/^a(lt)?$/i.test(mod))\n alt = true;\n else if (/^(c|ctrl|control)$/i.test(mod))\n ctrl = true;\n else if (/^s(hift)?$/i.test(mod))\n shift = true;\n else if (/^mod$/i.test(mod)) {\n if (platform == \"mac\")\n meta = true;\n else\n ctrl = true;\n }\n else\n throw new Error(\"Unrecognized modifier name: \" + mod);\n }\n if (alt)\n result = \"Alt-\" + result;\n if (ctrl)\n result = \"Ctrl-\" + result;\n if (meta)\n result = \"Meta-\" + result;\n if (shift)\n result = \"Shift-\" + result;\n return result;\n}\nfunction modifiers(name, event, shift) {\n if (event.altKey)\n name = \"Alt-\" + name;\n if (event.ctrlKey)\n name = \"Ctrl-\" + name;\n if (event.metaKey)\n name = \"Meta-\" + name;\n if (shift !== false && event.shiftKey)\n name = \"Shift-\" + name;\n return name;\n}\nconst handleKeyEvents = /*@__PURE__*/Prec.default(/*@__PURE__*/EditorView.domEventHandlers({\n keydown(event, view) {\n return runHandlers(getKeymap(view.state), event, view, \"editor\");\n }\n}));\n/**\nFacet used for registering keymaps.\n\nYou can add multiple keymaps to an editor. Their priorities\ndetermine their precedence (the ones specified early or with high\npriority get checked first). When a handler has returned `true`\nfor a given key, no further handlers are called.\n*/\nconst keymap = /*@__PURE__*/Facet.define({ enables: handleKeyEvents });\nconst Keymaps = /*@__PURE__*/new WeakMap();\n// This is hidden behind an indirection, rather than directly computed\n// by the facet, to keep internal types out of the facet's type.\nfunction getKeymap(state) {\n let bindings = state.facet(keymap);\n let map = Keymaps.get(bindings);\n if (!map)\n Keymaps.set(bindings, map = buildKeymap(bindings.reduce((a, b) => a.concat(b), [])));\n return map;\n}\n/**\nRun the key handlers registered for a given scope. The event\nobject should be a `\"keydown\"` event. Returns true if any of the\nhandlers handled it.\n*/\nfunction runScopeHandlers(view, event, scope) {\n return runHandlers(getKeymap(view.state), event, view, scope);\n}\nlet storedPrefix = null;\nconst PrefixTimeout = 4000;\nfunction buildKeymap(bindings, platform = currentPlatform) {\n let bound = Object.create(null);\n let isPrefix = Object.create(null);\n let checkPrefix = (name, is) => {\n let current = isPrefix[name];\n if (current == null)\n isPrefix[name] = is;\n else if (current != is)\n throw new Error(\"Key binding \" + name + \" is used both as a regular binding and as a multi-stroke prefix\");\n };\n let add = (scope, key, command, preventDefault, stopPropagation) => {\n var _a, _b;\n let scopeObj = bound[scope] || (bound[scope] = Object.create(null));\n let parts = key.split(/ (?!$)/).map(k => normalizeKeyName(k, platform));\n for (let i = 1; i < parts.length; i++) {\n let prefix = parts.slice(0, i).join(\" \");\n checkPrefix(prefix, true);\n if (!scopeObj[prefix])\n scopeObj[prefix] = {\n preventDefault: true,\n stopPropagation: false,\n run: [(view) => {\n let ourObj = storedPrefix = { view, prefix, scope };\n setTimeout(() => { if (storedPrefix == ourObj)\n storedPrefix = null; }, PrefixTimeout);\n return true;\n }]\n };\n }\n let full = parts.join(\" \");\n checkPrefix(full, false);\n let binding = scopeObj[full] || (scopeObj[full] = {\n preventDefault: false,\n stopPropagation: false,\n run: ((_b = (_a = scopeObj._any) === null || _a === void 0 ? void 0 : _a.run) === null || _b === void 0 ? void 0 : _b.slice()) || []\n });\n if (command)\n binding.run.push(command);\n if (preventDefault)\n binding.preventDefault = true;\n if (stopPropagation)\n binding.stopPropagation = true;\n };\n for (let b of bindings) {\n let scopes = b.scope ? b.scope.split(\" \") : [\"editor\"];\n if (b.any)\n for (let scope of scopes) {\n let scopeObj = bound[scope] || (bound[scope] = Object.create(null));\n if (!scopeObj._any)\n scopeObj._any = { preventDefault: false, stopPropagation: false, run: [] };\n let { any } = b;\n for (let key in scopeObj)\n scopeObj[key].run.push(view => any(view, currentKeyEvent));\n }\n let name = b[platform] || b.key;\n if (!name)\n continue;\n for (let scope of scopes) {\n add(scope, name, b.run, b.preventDefault, b.stopPropagation);\n if (b.shift)\n add(scope, \"Shift-\" + name, b.shift, b.preventDefault, b.stopPropagation);\n }\n }\n return bound;\n}\nlet currentKeyEvent = null;\nfunction runHandlers(map, event, view, scope) {\n currentKeyEvent = event;\n let name = keyName(event);\n let charCode = codePointAt(name, 0), isChar = codePointSize(charCode) == name.length && name != \" \";\n let prefix = \"\", handled = false, prevented = false, stopPropagation = false;\n if (storedPrefix && storedPrefix.view == view && storedPrefix.scope == scope) {\n prefix = storedPrefix.prefix + \" \";\n if (modifierCodes.indexOf(event.keyCode) < 0) {\n prevented = true;\n storedPrefix = null;\n }\n }\n let ran = new Set;\n let runFor = (binding) => {\n if (binding) {\n for (let cmd of binding.run)\n if (!ran.has(cmd)) {\n ran.add(cmd);\n if (cmd(view)) {\n if (binding.stopPropagation)\n stopPropagation = true;\n return true;\n }\n }\n if (binding.preventDefault) {\n if (binding.stopPropagation)\n stopPropagation = true;\n prevented = true;\n }\n }\n return false;\n };\n let scopeObj = map[scope], baseName, shiftName;\n if (scopeObj) {\n if (runFor(scopeObj[prefix + modifiers(name, event, !isChar)])) {\n handled = true;\n }\n else if (isChar && (event.altKey || event.metaKey || event.ctrlKey) &&\n // Ctrl-Alt may be used for AltGr on Windows\n !(browser.windows && event.ctrlKey && event.altKey) &&\n // Alt-combinations on macOS tend to be typed characters\n !(browser.mac && event.altKey && !(event.ctrlKey || event.metaKey)) &&\n (baseName = base[event.keyCode]) && baseName != name) {\n if (runFor(scopeObj[prefix + modifiers(baseName, event, true)])) {\n handled = true;\n }\n else if (event.shiftKey && (shiftName = shift[event.keyCode]) != name && shiftName != baseName &&\n runFor(scopeObj[prefix + modifiers(shiftName, event, false)])) {\n handled = true;\n }\n }\n else if (isChar && event.shiftKey &&\n runFor(scopeObj[prefix + modifiers(name, event, true)])) {\n handled = true;\n }\n if (!handled && runFor(scopeObj._any))\n handled = true;\n }\n if (prevented)\n handled = true;\n if (handled && stopPropagation)\n event.stopPropagation();\n currentKeyEvent = null;\n return handled;\n}\n\n/**\nImplementation of [`LayerMarker`](https://codemirror.net/6/docs/ref/#view.LayerMarker) that creates\na rectangle at a given set of coordinates.\n*/\nclass RectangleMarker {\n /**\n Create a marker with the given class and dimensions. If `width`\n is null, the DOM element will get no width style.\n */\n constructor(className, \n /**\n The left position of the marker (in pixels, document-relative).\n */\n left, \n /**\n The top position of the marker.\n */\n top, \n /**\n The width of the marker, or null if it shouldn't get a width assigned.\n */\n width, \n /**\n The height of the marker.\n */\n height) {\n this.className = className;\n this.left = left;\n this.top = top;\n this.width = width;\n this.height = height;\n }\n draw() {\n let elt = document.createElement(\"div\");\n elt.className = this.className;\n this.adjust(elt);\n return elt;\n }\n update(elt, prev) {\n if (prev.className != this.className)\n return false;\n this.adjust(elt);\n return true;\n }\n adjust(elt) {\n elt.style.left = this.left + \"px\";\n elt.style.top = this.top + \"px\";\n if (this.width != null)\n elt.style.width = this.width + \"px\";\n elt.style.height = this.height + \"px\";\n }\n eq(p) {\n return this.left == p.left && this.top == p.top && this.width == p.width && this.height == p.height &&\n this.className == p.className;\n }\n /**\n Create a set of rectangles for the given selection range,\n assigning them theclass`className`. Will create a single\n rectangle for empty ranges, and a set of selection-style\n rectangles covering the range's content (in a bidi-aware\n way) for non-empty ones.\n */\n static forRange(view, className, range) {\n if (range.empty) {\n let pos = view.coordsAtPos(range.head, range.assoc || 1);\n if (!pos)\n return [];\n let base = getBase(view);\n return [new RectangleMarker(className, pos.left - base.left, pos.top - base.top, null, pos.bottom - pos.top)];\n }\n else {\n return rectanglesForRange(view, className, range);\n }\n }\n}\nfunction getBase(view) {\n let rect = view.scrollDOM.getBoundingClientRect();\n let left = view.textDirection == Direction.LTR ? rect.left : rect.right - view.scrollDOM.clientWidth * view.scaleX;\n return { left: left - view.scrollDOM.scrollLeft * view.scaleX, top: rect.top - view.scrollDOM.scrollTop * view.scaleY };\n}\nfunction wrappedLine(view, pos, side, inside) {\n let coords = view.coordsAtPos(pos, side * 2);\n if (!coords)\n return inside;\n let editorRect = view.dom.getBoundingClientRect();\n let y = (coords.top + coords.bottom) / 2;\n let left = view.posAtCoords({ x: editorRect.left + 1, y });\n let right = view.posAtCoords({ x: editorRect.right - 1, y });\n if (left == null || right == null)\n return inside;\n return { from: Math.max(inside.from, Math.min(left, right)), to: Math.min(inside.to, Math.max(left, right)) };\n}\nfunction rectanglesForRange(view, className, range) {\n if (range.to <= view.viewport.from || range.from >= view.viewport.to)\n return [];\n let from = Math.max(range.from, view.viewport.from), to = Math.min(range.to, view.viewport.to);\n let ltr = view.textDirection == Direction.LTR;\n let content = view.contentDOM, contentRect = content.getBoundingClientRect(), base = getBase(view);\n let lineElt = content.querySelector(\".cm-line\"), lineStyle = lineElt && window.getComputedStyle(lineElt);\n let leftSide = contentRect.left +\n (lineStyle ? parseInt(lineStyle.paddingLeft) + Math.min(0, parseInt(lineStyle.textIndent)) : 0);\n let rightSide = contentRect.right - (lineStyle ? parseInt(lineStyle.paddingRight) : 0);\n let startBlock = blockAt(view, from, 1), endBlock = blockAt(view, to, -1);\n let visualStart = startBlock.type == BlockType.Text ? startBlock : null;\n let visualEnd = endBlock.type == BlockType.Text ? endBlock : null;\n if (visualStart && (view.lineWrapping || startBlock.widgetLineBreaks))\n visualStart = wrappedLine(view, from, 1, visualStart);\n if (visualEnd && (view.lineWrapping || endBlock.widgetLineBreaks))\n visualEnd = wrappedLine(view, to, -1, visualEnd);\n if (visualStart && visualEnd && visualStart.from == visualEnd.from && visualStart.to == visualEnd.to) {\n return pieces(drawForLine(range.from, range.to, visualStart));\n }\n else {\n let top = visualStart ? drawForLine(range.from, null, visualStart) : drawForWidget(startBlock, false);\n let bottom = visualEnd ? drawForLine(null, range.to, visualEnd) : drawForWidget(endBlock, true);\n let between = [];\n if ((visualStart || startBlock).to < (visualEnd || endBlock).from - (visualStart && visualEnd ? 1 : 0) ||\n startBlock.widgetLineBreaks > 1 && top.bottom + view.defaultLineHeight / 2 < bottom.top)\n between.push(piece(leftSide, top.bottom, rightSide, bottom.top));\n else if (top.bottom < bottom.top && view.elementAtHeight((top.bottom + bottom.top) / 2).type == BlockType.Text)\n top.bottom = bottom.top = (top.bottom + bottom.top) / 2;\n return pieces(top).concat(between).concat(pieces(bottom));\n }\n function piece(left, top, right, bottom) {\n return new RectangleMarker(className, left - base.left, top - base.top, right - left, bottom - top);\n }\n function pieces({ top, bottom, horizontal }) {\n let pieces = [];\n for (let i = 0; i < horizontal.length; i += 2)\n pieces.push(piece(horizontal[i], top, horizontal[i + 1], bottom));\n return pieces;\n }\n // Gets passed from/to in line-local positions\n function drawForLine(from, to, line) {\n let top = 1e9, bottom = -1e9, horizontal = [];\n function addSpan(from, fromOpen, to, toOpen, dir) {\n // Passing 2/-2 is a kludge to force the view to return\n // coordinates on the proper side of block widgets, since\n // normalizing the side there, though appropriate for most\n // coordsAtPos queries, would break selection drawing.\n let fromCoords = view.coordsAtPos(from, (from == line.to ? -2 : 2));\n let toCoords = view.coordsAtPos(to, (to == line.from ? 2 : -2));\n if (!fromCoords || !toCoords)\n return;\n top = Math.min(fromCoords.top, toCoords.top, top);\n bottom = Math.max(fromCoords.bottom, toCoords.bottom, bottom);\n if (dir == Direction.LTR)\n horizontal.push(ltr && fromOpen ? leftSide : fromCoords.left, ltr && toOpen ? rightSide : toCoords.right);\n else\n horizontal.push(!ltr && toOpen ? leftSide : toCoords.left, !ltr && fromOpen ? rightSide : fromCoords.right);\n }\n let start = from !== null && from !== void 0 ? from : line.from, end = to !== null && to !== void 0 ? to : line.to;\n // Split the range by visible range and document line\n for (let r of view.visibleRanges)\n if (r.to > start && r.from < end) {\n for (let pos = Math.max(r.from, start), endPos = Math.min(r.to, end);;) {\n let docLine = view.state.doc.lineAt(pos);\n for (let span of view.bidiSpans(docLine)) {\n let spanFrom = span.from + docLine.from, spanTo = span.to + docLine.from;\n if (spanFrom >= endPos)\n break;\n if (spanTo > pos)\n addSpan(Math.max(spanFrom, pos), from == null && spanFrom <= start, Math.min(spanTo, endPos), to == null && spanTo >= end, span.dir);\n }\n pos = docLine.to + 1;\n if (pos >= endPos)\n break;\n }\n }\n if (horizontal.length == 0)\n addSpan(start, from == null, end, to == null, view.textDirection);\n return { top, bottom, horizontal };\n }\n function drawForWidget(block, top) {\n let y = contentRect.top + (top ? block.top : block.bottom);\n return { top: y, bottom: y, horizontal: [] };\n }\n}\nfunction sameMarker(a, b) {\n return a.constructor == b.constructor && a.eq(b);\n}\nclass LayerView {\n constructor(view, layer) {\n this.view = view;\n this.layer = layer;\n this.drawn = [];\n this.scaleX = 1;\n this.scaleY = 1;\n this.measureReq = { read: this.measure.bind(this), write: this.draw.bind(this) };\n this.dom = view.scrollDOM.appendChild(document.createElement(\"div\"));\n this.dom.classList.add(\"cm-layer\");\n if (layer.above)\n this.dom.classList.add(\"cm-layer-above\");\n if (layer.class)\n this.dom.classList.add(layer.class);\n this.scale();\n this.dom.setAttribute(\"aria-hidden\", \"true\");\n this.setOrder(view.state);\n view.requestMeasure(this.measureReq);\n if (layer.mount)\n layer.mount(this.dom, view);\n }\n update(update) {\n if (update.startState.facet(layerOrder) != update.state.facet(layerOrder))\n this.setOrder(update.state);\n if (this.layer.update(update, this.dom) || update.geometryChanged) {\n this.scale();\n update.view.requestMeasure(this.measureReq);\n }\n }\n docViewUpdate(view) {\n if (this.layer.updateOnDocViewUpdate !== false)\n view.requestMeasure(this.measureReq);\n }\n setOrder(state) {\n let pos = 0, order = state.facet(layerOrder);\n while (pos < order.length && order[pos] != this.layer)\n pos++;\n this.dom.style.zIndex = String((this.layer.above ? 150 : -1) - pos);\n }\n measure() {\n return this.layer.markers(this.view);\n }\n scale() {\n let { scaleX, scaleY } = this.view;\n if (scaleX != this.scaleX || scaleY != this.scaleY) {\n this.scaleX = scaleX;\n this.scaleY = scaleY;\n this.dom.style.transform = `scale(${1 / scaleX}, ${1 / scaleY})`;\n }\n }\n draw(markers) {\n if (markers.length != this.drawn.length || markers.some((p, i) => !sameMarker(p, this.drawn[i]))) {\n let old = this.dom.firstChild, oldI = 0;\n for (let marker of markers) {\n if (marker.update && old && marker.constructor && this.drawn[oldI].constructor &&\n marker.update(old, this.drawn[oldI])) {\n old = old.nextSibling;\n oldI++;\n }\n else {\n this.dom.insertBefore(marker.draw(), old);\n }\n }\n while (old) {\n let next = old.nextSibling;\n old.remove();\n old = next;\n }\n this.drawn = markers;\n if (browser.safari && browser.safari_version >= 26) // Issue #1600, 1627\n this.dom.style.display = this.dom.firstChild ? \"\" : \"none\";\n }\n }\n destroy() {\n if (this.layer.destroy)\n this.layer.destroy(this.dom, this.view);\n this.dom.remove();\n }\n}\nconst layerOrder = /*@__PURE__*/Facet.define();\n/**\nDefine a layer.\n*/\nfunction layer(config) {\n return [\n ViewPlugin.define(v => new LayerView(v, config)),\n layerOrder.of(config)\n ];\n}\n\nconst selectionConfig = /*@__PURE__*/Facet.define({\n combine(configs) {\n return combineConfig(configs, {\n cursorBlinkRate: 1200,\n drawRangeCursor: true\n }, {\n cursorBlinkRate: (a, b) => Math.min(a, b),\n drawRangeCursor: (a, b) => a || b\n });\n }\n});\n/**\nReturns an extension that hides the browser's native selection and\ncursor, replacing the selection with a background behind the text\n(with the `cm-selectionBackground` class), and the\ncursors with elements overlaid over the code (using\n`cm-cursor-primary` and `cm-cursor-secondary`).\n\nThis allows the editor to display secondary selection ranges, and\ntends to produce a type of selection more in line with that users\nexpect in a text editor (the native selection styling will often\nleave gaps between lines and won't fill the horizontal space after\na line when the selection continues past it).\n\nIt does have a performance cost, in that it requires an extra DOM\nlayout cycle for many updates (the selection is drawn based on DOM\nlayout information that's only available after laying out the\ncontent).\n*/\nfunction drawSelection(config = {}) {\n return [\n selectionConfig.of(config),\n cursorLayer,\n selectionLayer,\n hideNativeSelection,\n nativeSelectionHidden.of(true)\n ];\n}\n/**\nRetrieve the [`drawSelection`](https://codemirror.net/6/docs/ref/#view.drawSelection) configuration\nfor this state. (Note that this will return a set of defaults even\nif `drawSelection` isn't enabled.)\n*/\nfunction getDrawSelectionConfig(state) {\n return state.facet(selectionConfig);\n}\nfunction configChanged(update) {\n return update.startState.facet(selectionConfig) != update.state.facet(selectionConfig);\n}\nconst cursorLayer = /*@__PURE__*/layer({\n above: true,\n markers(view) {\n let { state } = view, conf = state.facet(selectionConfig);\n let cursors = [];\n for (let r of state.selection.ranges) {\n let prim = r == state.selection.main;\n if (r.empty || conf.drawRangeCursor) {\n let className = prim ? \"cm-cursor cm-cursor-primary\" : \"cm-cursor cm-cursor-secondary\";\n let cursor = r.empty ? r : EditorSelection.cursor(r.head, r.head > r.anchor ? -1 : 1);\n for (let piece of RectangleMarker.forRange(view, className, cursor))\n cursors.push(piece);\n }\n }\n return cursors;\n },\n update(update, dom) {\n if (update.transactions.some(tr => tr.selection))\n dom.style.animationName = dom.style.animationName == \"cm-blink\" ? \"cm-blink2\" : \"cm-blink\";\n let confChange = configChanged(update);\n if (confChange)\n setBlinkRate(update.state, dom);\n return update.docChanged || update.selectionSet || confChange;\n },\n mount(dom, view) {\n setBlinkRate(view.state, dom);\n },\n class: \"cm-cursorLayer\"\n});\nfunction setBlinkRate(state, dom) {\n dom.style.animationDuration = state.facet(selectionConfig).cursorBlinkRate + \"ms\";\n}\nconst selectionLayer = /*@__PURE__*/layer({\n above: false,\n markers(view) {\n return view.state.selection.ranges.map(r => r.empty ? [] : RectangleMarker.forRange(view, \"cm-selectionBackground\", r))\n .reduce((a, b) => a.concat(b));\n },\n update(update, dom) {\n return update.docChanged || update.selectionSet || update.viewportChanged || configChanged(update);\n },\n class: \"cm-selectionLayer\"\n});\nconst hideNativeSelection = /*@__PURE__*/Prec.highest(/*@__PURE__*/EditorView.theme({\n \".cm-line\": {\n \"& ::selection, &::selection\": { backgroundColor: \"transparent !important\" },\n caretColor: \"transparent !important\"\n },\n \".cm-content\": {\n caretColor: \"transparent !important\",\n \"& :focus\": {\n caretColor: \"initial !important\",\n \"&::selection, & ::selection\": {\n backgroundColor: \"Highlight !important\"\n }\n }\n }\n}));\n\nconst setDropCursorPos = /*@__PURE__*/StateEffect.define({\n map(pos, mapping) { return pos == null ? null : mapping.mapPos(pos); }\n});\nconst dropCursorPos = /*@__PURE__*/StateField.define({\n create() { return null; },\n update(pos, tr) {\n if (pos != null)\n pos = tr.changes.mapPos(pos);\n return tr.effects.reduce((pos, e) => e.is(setDropCursorPos) ? e.value : pos, pos);\n }\n});\nconst drawDropCursor = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.view = view;\n this.cursor = null;\n this.measureReq = { read: this.readPos.bind(this), write: this.drawCursor.bind(this) };\n }\n update(update) {\n var _a;\n let cursorPos = update.state.field(dropCursorPos);\n if (cursorPos == null) {\n if (this.cursor != null) {\n (_a = this.cursor) === null || _a === void 0 ? void 0 : _a.remove();\n this.cursor = null;\n }\n }\n else {\n if (!this.cursor) {\n this.cursor = this.view.scrollDOM.appendChild(document.createElement(\"div\"));\n this.cursor.className = \"cm-dropCursor\";\n }\n if (update.startState.field(dropCursorPos) != cursorPos || update.docChanged || update.geometryChanged)\n this.view.requestMeasure(this.measureReq);\n }\n }\n readPos() {\n let { view } = this;\n let pos = view.state.field(dropCursorPos);\n let rect = pos != null && view.coordsAtPos(pos);\n if (!rect)\n return null;\n let outer = view.scrollDOM.getBoundingClientRect();\n return {\n left: rect.left - outer.left + view.scrollDOM.scrollLeft * view.scaleX,\n top: rect.top - outer.top + view.scrollDOM.scrollTop * view.scaleY,\n height: rect.bottom - rect.top\n };\n }\n drawCursor(pos) {\n if (this.cursor) {\n let { scaleX, scaleY } = this.view;\n if (pos) {\n this.cursor.style.left = pos.left / scaleX + \"px\";\n this.cursor.style.top = pos.top / scaleY + \"px\";\n this.cursor.style.height = pos.height / scaleY + \"px\";\n }\n else {\n this.cursor.style.left = \"-100000px\";\n }\n }\n }\n destroy() {\n if (this.cursor)\n this.cursor.remove();\n }\n setDropPos(pos) {\n if (this.view.state.field(dropCursorPos) != pos)\n this.view.dispatch({ effects: setDropCursorPos.of(pos) });\n }\n}, {\n eventObservers: {\n dragover(event) {\n this.setDropPos(this.view.posAtCoords({ x: event.clientX, y: event.clientY }));\n },\n dragleave(event) {\n if (event.target == this.view.contentDOM || !this.view.contentDOM.contains(event.relatedTarget))\n this.setDropPos(null);\n },\n dragend() {\n this.setDropPos(null);\n },\n drop() {\n this.setDropPos(null);\n }\n }\n});\n/**\nDraws a cursor at the current drop position when something is\ndragged over the editor.\n*/\nfunction dropCursor() {\n return [dropCursorPos, drawDropCursor];\n}\n\nfunction iterMatches(doc, re, from, to, f) {\n re.lastIndex = 0;\n for (let cursor = doc.iterRange(from, to), pos = from, m; !cursor.next().done; pos += cursor.value.length) {\n if (!cursor.lineBreak)\n while (m = re.exec(cursor.value))\n f(pos + m.index, m);\n }\n}\nfunction matchRanges(view, maxLength) {\n let visible = view.visibleRanges;\n if (visible.length == 1 && visible[0].from == view.viewport.from &&\n visible[0].to == view.viewport.to)\n return visible;\n let result = [];\n for (let { from, to } of visible) {\n from = Math.max(view.state.doc.lineAt(from).from, from - maxLength);\n to = Math.min(view.state.doc.lineAt(to).to, to + maxLength);\n if (result.length && result[result.length - 1].to >= from)\n result[result.length - 1].to = to;\n else\n result.push({ from, to });\n }\n return result;\n}\n/**\nHelper class used to make it easier to maintain decorations on\nvisible code that matches a given regular expression. To be used\nin a [view plugin](https://codemirror.net/6/docs/ref/#view.ViewPlugin). Instances of this object\nrepresent a matching configuration.\n*/\nclass MatchDecorator {\n /**\n Create a decorator.\n */\n constructor(config) {\n const { regexp, decoration, decorate, boundary, maxLength = 1000 } = config;\n if (!regexp.global)\n throw new RangeError(\"The regular expression given to MatchDecorator should have its 'g' flag set\");\n this.regexp = regexp;\n if (decorate) {\n this.addMatch = (match, view, from, add) => decorate(add, from, from + match[0].length, match, view);\n }\n else if (typeof decoration == \"function\") {\n this.addMatch = (match, view, from, add) => {\n let deco = decoration(match, view, from);\n if (deco)\n add(from, from + match[0].length, deco);\n };\n }\n else if (decoration) {\n this.addMatch = (match, _view, from, add) => add(from, from + match[0].length, decoration);\n }\n else {\n throw new RangeError(\"Either 'decorate' or 'decoration' should be provided to MatchDecorator\");\n }\n this.boundary = boundary;\n this.maxLength = maxLength;\n }\n /**\n Compute the full set of decorations for matches in the given\n view's viewport. You'll want to call this when initializing your\n plugin.\n */\n createDeco(view) {\n let build = new RangeSetBuilder(), add = build.add.bind(build);\n for (let { from, to } of matchRanges(view, this.maxLength))\n iterMatches(view.state.doc, this.regexp, from, to, (from, m) => this.addMatch(m, view, from, add));\n return build.finish();\n }\n /**\n Update a set of decorations for a view update. `deco` _must_ be\n the set of decorations produced by _this_ `MatchDecorator` for\n the view state before the update.\n */\n updateDeco(update, deco) {\n let changeFrom = 1e9, changeTo = -1;\n if (update.docChanged)\n update.changes.iterChanges((_f, _t, from, to) => {\n if (to >= update.view.viewport.from && from <= update.view.viewport.to) {\n changeFrom = Math.min(from, changeFrom);\n changeTo = Math.max(to, changeTo);\n }\n });\n if (update.viewportMoved || changeTo - changeFrom > 1000)\n return this.createDeco(update.view);\n if (changeTo > -1)\n return this.updateRange(update.view, deco.map(update.changes), changeFrom, changeTo);\n return deco;\n }\n updateRange(view, deco, updateFrom, updateTo) {\n for (let r of view.visibleRanges) {\n let from = Math.max(r.from, updateFrom), to = Math.min(r.to, updateTo);\n if (to >= from) {\n let fromLine = view.state.doc.lineAt(from), toLine = fromLine.to < to ? view.state.doc.lineAt(to) : fromLine;\n let start = Math.max(r.from, fromLine.from), end = Math.min(r.to, toLine.to);\n if (this.boundary) {\n for (; from > fromLine.from; from--)\n if (this.boundary.test(fromLine.text[from - 1 - fromLine.from])) {\n start = from;\n break;\n }\n for (; to < toLine.to; to++)\n if (this.boundary.test(toLine.text[to - toLine.from])) {\n end = to;\n break;\n }\n }\n let ranges = [], m;\n let add = (from, to, deco) => ranges.push(deco.range(from, to));\n if (fromLine == toLine) {\n this.regexp.lastIndex = start - fromLine.from;\n while ((m = this.regexp.exec(fromLine.text)) && m.index < end - fromLine.from)\n this.addMatch(m, view, m.index + fromLine.from, add);\n }\n else {\n iterMatches(view.state.doc, this.regexp, start, end, (from, m) => this.addMatch(m, view, from, add));\n }\n deco = deco.update({ filterFrom: start, filterTo: end, filter: (from, to) => from < start || to > end, add: ranges });\n }\n }\n return deco;\n }\n}\n\nconst UnicodeRegexpSupport = /x/.unicode != null ? \"gu\" : \"g\";\nconst Specials = /*@__PURE__*/new RegExp(\"[\\u0000-\\u0008\\u000a-\\u001f\\u007f-\\u009f\\u00ad\\u061c\\u200b\\u200e\\u200f\\u2028\\u2029\\u202d\\u202e\\u2066\\u2067\\u2069\\ufeff\\ufff9-\\ufffc]\", UnicodeRegexpSupport);\nconst Names = {\n 0: \"null\",\n 7: \"bell\",\n 8: \"backspace\",\n 10: \"newline\",\n 11: \"vertical tab\",\n 13: \"carriage return\",\n 27: \"escape\",\n 8203: \"zero width space\",\n 8204: \"zero width non-joiner\",\n 8205: \"zero width joiner\",\n 8206: \"left-to-right mark\",\n 8207: \"right-to-left mark\",\n 8232: \"line separator\",\n 8237: \"left-to-right override\",\n 8238: \"right-to-left override\",\n 8294: \"left-to-right isolate\",\n 8295: \"right-to-left isolate\",\n 8297: \"pop directional isolate\",\n 8233: \"paragraph separator\",\n 65279: \"zero width no-break space\",\n 65532: \"object replacement\"\n};\nlet _supportsTabSize = null;\nfunction supportsTabSize() {\n var _a;\n if (_supportsTabSize == null && typeof document != \"undefined\" && document.body) {\n let styles = document.body.style;\n _supportsTabSize = ((_a = styles.tabSize) !== null && _a !== void 0 ? _a : styles.MozTabSize) != null;\n }\n return _supportsTabSize || false;\n}\nconst specialCharConfig = /*@__PURE__*/Facet.define({\n combine(configs) {\n let config = combineConfig(configs, {\n render: null,\n specialChars: Specials,\n addSpecialChars: null\n });\n if (config.replaceTabs = !supportsTabSize())\n config.specialChars = new RegExp(\"\\t|\" + config.specialChars.source, UnicodeRegexpSupport);\n if (config.addSpecialChars)\n config.specialChars = new RegExp(config.specialChars.source + \"|\" + config.addSpecialChars.source, UnicodeRegexpSupport);\n return config;\n }\n});\n/**\nReturns an extension that installs highlighting of special\ncharacters.\n*/\nfunction highlightSpecialChars(\n/**\nConfiguration options.\n*/\nconfig = {}) {\n return [specialCharConfig.of(config), specialCharPlugin()];\n}\nlet _plugin = null;\nfunction specialCharPlugin() {\n return _plugin || (_plugin = ViewPlugin.fromClass(class {\n constructor(view) {\n this.view = view;\n this.decorations = Decoration.none;\n this.decorationCache = Object.create(null);\n this.decorator = this.makeDecorator(view.state.facet(specialCharConfig));\n this.decorations = this.decorator.createDeco(view);\n }\n makeDecorator(conf) {\n return new MatchDecorator({\n regexp: conf.specialChars,\n decoration: (m, view, pos) => {\n let { doc } = view.state;\n let code = codePointAt(m[0], 0);\n if (code == 9) {\n let line = doc.lineAt(pos);\n let size = view.state.tabSize, col = countColumn(line.text, size, pos - line.from);\n return Decoration.replace({\n widget: new TabWidget((size - (col % size)) * this.view.defaultCharacterWidth / this.view.scaleX)\n });\n }\n return this.decorationCache[code] ||\n (this.decorationCache[code] = Decoration.replace({ widget: new SpecialCharWidget(conf, code) }));\n },\n boundary: conf.replaceTabs ? undefined : /[^]/\n });\n }\n update(update) {\n let conf = update.state.facet(specialCharConfig);\n if (update.startState.facet(specialCharConfig) != conf) {\n this.decorator = this.makeDecorator(conf);\n this.decorations = this.decorator.createDeco(update.view);\n }\n else {\n this.decorations = this.decorator.updateDeco(update, this.decorations);\n }\n }\n }, {\n decorations: v => v.decorations\n }));\n}\nconst DefaultPlaceholder = \"\\u2022\";\n// Assigns placeholder characters from the Control Pictures block to\n// ASCII control characters\nfunction placeholder$1(code) {\n if (code >= 32)\n return DefaultPlaceholder;\n if (code == 10)\n return \"\\u2424\";\n return String.fromCharCode(9216 + code);\n}\nclass SpecialCharWidget extends WidgetType {\n constructor(options, code) {\n super();\n this.options = options;\n this.code = code;\n }\n eq(other) { return other.code == this.code; }\n toDOM(view) {\n let ph = placeholder$1(this.code);\n let desc = view.state.phrase(\"Control character\") + \" \" + (Names[this.code] || \"0x\" + this.code.toString(16));\n let custom = this.options.render && this.options.render(this.code, desc, ph);\n if (custom)\n return custom;\n let span = document.createElement(\"span\");\n span.textContent = ph;\n span.title = desc;\n span.setAttribute(\"aria-label\", desc);\n span.className = \"cm-specialChar\";\n return span;\n }\n ignoreEvent() { return false; }\n}\nclass TabWidget extends WidgetType {\n constructor(width) {\n super();\n this.width = width;\n }\n eq(other) { return other.width == this.width; }\n toDOM() {\n let span = document.createElement(\"span\");\n span.textContent = \"\\t\";\n span.className = \"cm-tab\";\n span.style.width = this.width + \"px\";\n return span;\n }\n ignoreEvent() { return false; }\n}\n\nconst plugin = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor() {\n this.height = 1000;\n this.attrs = { style: \"padding-bottom: 1000px\" };\n }\n update(update) {\n let { view } = update;\n let height = view.viewState.editorHeight -\n view.defaultLineHeight - view.documentPadding.top - 0.5;\n if (height >= 0 && height != this.height) {\n this.height = height;\n this.attrs = { style: `padding-bottom: ${height}px` };\n }\n }\n});\n/**\nReturns an extension that makes sure the content has a bottom\nmargin equivalent to the height of the editor, minus one line\nheight, so that every line in the document can be scrolled to the\ntop of the editor.\n\nThis is only meaningful when the editor is scrollable, and should\nnot be enabled in editors that take the size of their content.\n*/\nfunction scrollPastEnd() {\n return [plugin, contentAttributes.of(view => { var _a; return ((_a = view.plugin(plugin)) === null || _a === void 0 ? void 0 : _a.attrs) || null; })];\n}\n\n/**\nMark lines that have a cursor on them with the `\"cm-activeLine\"`\nDOM class.\n*/\nfunction highlightActiveLine() {\n return activeLineHighlighter;\n}\nconst lineDeco = /*@__PURE__*/Decoration.line({ class: \"cm-activeLine\" });\nconst activeLineHighlighter = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.decorations = this.getDeco(view);\n }\n update(update) {\n if (update.docChanged || update.selectionSet)\n this.decorations = this.getDeco(update.view);\n }\n getDeco(view) {\n let lastLineStart = -1, deco = [];\n for (let r of view.state.selection.ranges) {\n let line = view.lineBlockAt(r.head);\n if (line.from > lastLineStart) {\n deco.push(lineDeco.range(line.from));\n lastLineStart = line.from;\n }\n }\n return Decoration.set(deco);\n }\n}, {\n decorations: v => v.decorations\n});\n\nclass Placeholder extends WidgetType {\n constructor(content) {\n super();\n this.content = content;\n }\n toDOM(view) {\n let wrap = document.createElement(\"span\");\n wrap.className = \"cm-placeholder\";\n wrap.style.pointerEvents = \"none\";\n wrap.appendChild(typeof this.content == \"string\" ? document.createTextNode(this.content) :\n typeof this.content == \"function\" ? this.content(view) :\n this.content.cloneNode(true));\n wrap.setAttribute(\"aria-hidden\", \"true\");\n return wrap;\n }\n coordsAt(dom) {\n let rects = dom.firstChild ? clientRectsFor(dom.firstChild) : [];\n if (!rects.length)\n return null;\n let style = window.getComputedStyle(dom.parentNode);\n let rect = flattenRect(rects[0], style.direction != \"rtl\");\n let lineHeight = parseInt(style.lineHeight);\n if (rect.bottom - rect.top > lineHeight * 1.5)\n return { left: rect.left, right: rect.right, top: rect.top, bottom: rect.top + lineHeight };\n return rect;\n }\n ignoreEvent() { return false; }\n}\n/**\nExtension that enables a placeholder\u2014a piece of example content\nto show when the editor is empty.\n*/\nfunction placeholder(content) {\n let plugin = ViewPlugin.fromClass(class {\n constructor(view) {\n this.view = view;\n this.placeholder = content\n ? Decoration.set([Decoration.widget({ widget: new Placeholder(content), side: 1 }).range(0)])\n : Decoration.none;\n }\n get decorations() { return this.view.state.doc.length ? Decoration.none : this.placeholder; }\n }, { decorations: v => v.decorations });\n return typeof content == \"string\" ? [\n plugin, EditorView.contentAttributes.of({ \"aria-placeholder\": content })\n ] : plugin;\n}\n\n// Don't compute precise column positions for line offsets above this\n// (since it could get expensive). Assume offset==column for them.\nconst MaxOff = 2000;\nfunction rectangleFor(state, a, b) {\n let startLine = Math.min(a.line, b.line), endLine = Math.max(a.line, b.line);\n let ranges = [];\n if (a.off > MaxOff || b.off > MaxOff || a.col < 0 || b.col < 0) {\n let startOff = Math.min(a.off, b.off), endOff = Math.max(a.off, b.off);\n for (let i = startLine; i <= endLine; i++) {\n let line = state.doc.line(i);\n if (line.length <= endOff)\n ranges.push(EditorSelection.range(line.from + startOff, line.to + endOff));\n }\n }\n else {\n let startCol = Math.min(a.col, b.col), endCol = Math.max(a.col, b.col);\n for (let i = startLine; i <= endLine; i++) {\n let line = state.doc.line(i);\n let start = findColumn(line.text, startCol, state.tabSize, true);\n if (start < 0) {\n ranges.push(EditorSelection.cursor(line.to));\n }\n else {\n let end = findColumn(line.text, endCol, state.tabSize);\n ranges.push(EditorSelection.range(line.from + start, line.from + end));\n }\n }\n }\n return ranges;\n}\nfunction absoluteColumn(view, x) {\n let ref = view.coordsAtPos(view.viewport.from);\n return ref ? Math.round(Math.abs((ref.left - x) / view.defaultCharacterWidth)) : -1;\n}\nfunction getPos(view, event) {\n let offset = view.posAtCoords({ x: event.clientX, y: event.clientY }, false);\n let line = view.state.doc.lineAt(offset), off = offset - line.from;\n let col = off > MaxOff ? -1\n : off == line.length ? absoluteColumn(view, event.clientX)\n : countColumn(line.text, view.state.tabSize, offset - line.from);\n return { line: line.number, col, off };\n}\nfunction rectangleSelectionStyle(view, event) {\n let start = getPos(view, event), startSel = view.state.selection;\n if (!start)\n return null;\n return {\n update(update) {\n if (update.docChanged) {\n let newStart = update.changes.mapPos(update.startState.doc.line(start.line).from);\n let newLine = update.state.doc.lineAt(newStart);\n start = { line: newLine.number, col: start.col, off: Math.min(start.off, newLine.length) };\n startSel = startSel.map(update.changes);\n }\n },\n get(event, _extend, multiple) {\n let cur = getPos(view, event);\n if (!cur)\n return startSel;\n let ranges = rectangleFor(view.state, start, cur);\n if (!ranges.length)\n return startSel;\n if (multiple)\n return EditorSelection.create(ranges.concat(startSel.ranges));\n else\n return EditorSelection.create(ranges);\n }\n };\n}\n/**\nCreate an extension that enables rectangular selections. By\ndefault, it will react to left mouse drag with the Alt key held\ndown. When such a selection occurs, the text within the rectangle\nthat was dragged over will be selected, as one selection\n[range](https://codemirror.net/6/docs/ref/#state.SelectionRange) per line.\n*/\nfunction rectangularSelection(options) {\n let filter = (options === null || options === void 0 ? void 0 : options.eventFilter) || (e => e.altKey && e.button == 0);\n return EditorView.mouseSelectionStyle.of((view, event) => filter(event) ? rectangleSelectionStyle(view, event) : null);\n}\nconst keys = {\n Alt: [18, e => !!e.altKey],\n Control: [17, e => !!e.ctrlKey],\n Shift: [16, e => !!e.shiftKey],\n Meta: [91, e => !!e.metaKey]\n};\nconst showCrosshair = { style: \"cursor: crosshair\" };\n/**\nReturns an extension that turns the pointer cursor into a\ncrosshair when a given modifier key, defaulting to Alt, is held\ndown. Can serve as a visual hint that rectangular selection is\ngoing to happen when paired with\n[`rectangularSelection`](https://codemirror.net/6/docs/ref/#view.rectangularSelection).\n*/\nfunction crosshairCursor(options = {}) {\n let [code, getter] = keys[options.key || \"Alt\"];\n let plugin = ViewPlugin.fromClass(class {\n constructor(view) {\n this.view = view;\n this.isDown = false;\n }\n set(isDown) {\n if (this.isDown != isDown) {\n this.isDown = isDown;\n this.view.update([]);\n }\n }\n }, {\n eventObservers: {\n keydown(e) {\n this.set(e.keyCode == code || getter(e));\n },\n keyup(e) {\n if (e.keyCode == code || !getter(e))\n this.set(false);\n },\n mousemove(e) {\n this.set(getter(e));\n }\n }\n });\n return [\n plugin,\n EditorView.contentAttributes.of(view => { var _a; return ((_a = view.plugin(plugin)) === null || _a === void 0 ? void 0 : _a.isDown) ? showCrosshair : null; })\n ];\n}\n\nconst Outside = \"-10000px\";\nclass TooltipViewManager {\n constructor(view, facet, createTooltipView, removeTooltipView) {\n this.facet = facet;\n this.createTooltipView = createTooltipView;\n this.removeTooltipView = removeTooltipView;\n this.input = view.state.facet(facet);\n this.tooltips = this.input.filter(t => t);\n let prev = null;\n this.tooltipViews = this.tooltips.map(t => prev = createTooltipView(t, prev));\n }\n update(update, above) {\n var _a;\n let input = update.state.facet(this.facet);\n let tooltips = input.filter(x => x);\n if (input === this.input) {\n for (let t of this.tooltipViews)\n if (t.update)\n t.update(update);\n return false;\n }\n let tooltipViews = [], newAbove = above ? [] : null;\n for (let i = 0; i < tooltips.length; i++) {\n let tip = tooltips[i], known = -1;\n if (!tip)\n continue;\n for (let i = 0; i < this.tooltips.length; i++) {\n let other = this.tooltips[i];\n if (other && other.create == tip.create)\n known = i;\n }\n if (known < 0) {\n tooltipViews[i] = this.createTooltipView(tip, i ? tooltipViews[i - 1] : null);\n if (newAbove)\n newAbove[i] = !!tip.above;\n }\n else {\n let tooltipView = tooltipViews[i] = this.tooltipViews[known];\n if (newAbove)\n newAbove[i] = above[known];\n if (tooltipView.update)\n tooltipView.update(update);\n }\n }\n for (let t of this.tooltipViews)\n if (tooltipViews.indexOf(t) < 0) {\n this.removeTooltipView(t);\n (_a = t.destroy) === null || _a === void 0 ? void 0 : _a.call(t);\n }\n if (above) {\n newAbove.forEach((val, i) => above[i] = val);\n above.length = newAbove.length;\n }\n this.input = input;\n this.tooltips = tooltips;\n this.tooltipViews = tooltipViews;\n return true;\n }\n}\n/**\nCreates an extension that configures tooltip behavior.\n*/\nfunction tooltips(config = {}) {\n return tooltipConfig.of(config);\n}\nfunction windowSpace(view) {\n let docElt = view.dom.ownerDocument.documentElement;\n return { top: 0, left: 0, bottom: docElt.clientHeight, right: docElt.clientWidth };\n}\nconst tooltipConfig = /*@__PURE__*/Facet.define({\n combine: values => {\n var _a, _b, _c;\n return ({\n position: browser.ios ? \"absolute\" : ((_a = values.find(conf => conf.position)) === null || _a === void 0 ? void 0 : _a.position) || \"fixed\",\n parent: ((_b = values.find(conf => conf.parent)) === null || _b === void 0 ? void 0 : _b.parent) || null,\n tooltipSpace: ((_c = values.find(conf => conf.tooltipSpace)) === null || _c === void 0 ? void 0 : _c.tooltipSpace) || windowSpace,\n });\n }\n});\nconst knownHeight = /*@__PURE__*/new WeakMap();\nconst tooltipPlugin = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.view = view;\n this.above = [];\n this.inView = true;\n this.madeAbsolute = false;\n this.lastTransaction = 0;\n this.measureTimeout = -1;\n let config = view.state.facet(tooltipConfig);\n this.position = config.position;\n this.parent = config.parent;\n this.classes = view.themeClasses;\n this.createContainer();\n this.measureReq = { read: this.readMeasure.bind(this), write: this.writeMeasure.bind(this), key: this };\n this.resizeObserver = typeof ResizeObserver == \"function\" ? new ResizeObserver(() => this.measureSoon()) : null;\n this.manager = new TooltipViewManager(view, showTooltip, (t, p) => this.createTooltip(t, p), t => {\n if (this.resizeObserver)\n this.resizeObserver.unobserve(t.dom);\n t.dom.remove();\n });\n this.above = this.manager.tooltips.map(t => !!t.above);\n this.intersectionObserver = typeof IntersectionObserver == \"function\" ? new IntersectionObserver(entries => {\n if (Date.now() > this.lastTransaction - 50 &&\n entries.length > 0 && entries[entries.length - 1].intersectionRatio < 1)\n this.measureSoon();\n }, { threshold: [1] }) : null;\n this.observeIntersection();\n view.win.addEventListener(\"resize\", this.measureSoon = this.measureSoon.bind(this));\n this.maybeMeasure();\n }\n createContainer() {\n if (this.parent) {\n this.container = document.createElement(\"div\");\n this.container.style.position = \"relative\";\n this.container.className = this.view.themeClasses;\n this.parent.appendChild(this.container);\n }\n else {\n this.container = this.view.dom;\n }\n }\n observeIntersection() {\n if (this.intersectionObserver) {\n this.intersectionObserver.disconnect();\n for (let tooltip of this.manager.tooltipViews)\n this.intersectionObserver.observe(tooltip.dom);\n }\n }\n measureSoon() {\n if (this.measureTimeout < 0)\n this.measureTimeout = setTimeout(() => {\n this.measureTimeout = -1;\n this.maybeMeasure();\n }, 50);\n }\n update(update) {\n if (update.transactions.length)\n this.lastTransaction = Date.now();\n let updated = this.manager.update(update, this.above);\n if (updated)\n this.observeIntersection();\n let shouldMeasure = updated || update.geometryChanged;\n let newConfig = update.state.facet(tooltipConfig);\n if (newConfig.position != this.position && !this.madeAbsolute) {\n this.position = newConfig.position;\n for (let t of this.manager.tooltipViews)\n t.dom.style.position = this.position;\n shouldMeasure = true;\n }\n if (newConfig.parent != this.parent) {\n if (this.parent)\n this.container.remove();\n this.parent = newConfig.parent;\n this.createContainer();\n for (let t of this.manager.tooltipViews)\n this.container.appendChild(t.dom);\n shouldMeasure = true;\n }\n else if (this.parent && this.view.themeClasses != this.classes) {\n this.classes = this.container.className = this.view.themeClasses;\n }\n if (shouldMeasure)\n this.maybeMeasure();\n }\n createTooltip(tooltip, prev) {\n let tooltipView = tooltip.create(this.view);\n let before = prev ? prev.dom : null;\n tooltipView.dom.classList.add(\"cm-tooltip\");\n if (tooltip.arrow && !tooltipView.dom.querySelector(\".cm-tooltip > .cm-tooltip-arrow\")) {\n let arrow = document.createElement(\"div\");\n arrow.className = \"cm-tooltip-arrow\";\n tooltipView.dom.appendChild(arrow);\n }\n tooltipView.dom.style.position = this.position;\n tooltipView.dom.style.top = Outside;\n tooltipView.dom.style.left = \"0px\";\n this.container.insertBefore(tooltipView.dom, before);\n if (tooltipView.mount)\n tooltipView.mount(this.view);\n if (this.resizeObserver)\n this.resizeObserver.observe(tooltipView.dom);\n return tooltipView;\n }\n destroy() {\n var _a, _b, _c;\n this.view.win.removeEventListener(\"resize\", this.measureSoon);\n for (let tooltipView of this.manager.tooltipViews) {\n tooltipView.dom.remove();\n (_a = tooltipView.destroy) === null || _a === void 0 ? void 0 : _a.call(tooltipView);\n }\n if (this.parent)\n this.container.remove();\n (_b = this.resizeObserver) === null || _b === void 0 ? void 0 : _b.disconnect();\n (_c = this.intersectionObserver) === null || _c === void 0 ? void 0 : _c.disconnect();\n clearTimeout(this.measureTimeout);\n }\n readMeasure() {\n let scaleX = 1, scaleY = 1, makeAbsolute = false;\n if (this.position == \"fixed\" && this.manager.tooltipViews.length) {\n let { dom } = this.manager.tooltipViews[0];\n if (browser.safari) {\n // Safari always sets offsetParent to null, even if a fixed\n // element is positioned relative to a transformed parent. So\n // we use this kludge to try and detect this.\n let rect = dom.getBoundingClientRect();\n makeAbsolute = Math.abs(rect.top + 10000) > 1 || Math.abs(rect.left) > 1;\n }\n else {\n // More conforming browsers will set offsetParent to the\n // transformed element.\n makeAbsolute = !!dom.offsetParent && dom.offsetParent != this.container.ownerDocument.body;\n }\n }\n if (makeAbsolute || this.position == \"absolute\") {\n if (this.parent) {\n let rect = this.parent.getBoundingClientRect();\n if (rect.width && rect.height) {\n scaleX = rect.width / this.parent.offsetWidth;\n scaleY = rect.height / this.parent.offsetHeight;\n }\n }\n else {\n ({ scaleX, scaleY } = this.view.viewState);\n }\n }\n let visible = this.view.scrollDOM.getBoundingClientRect(), margins = getScrollMargins(this.view);\n return {\n visible: {\n left: visible.left + margins.left, top: visible.top + margins.top,\n right: visible.right - margins.right, bottom: visible.bottom - margins.bottom\n },\n parent: this.parent ? this.container.getBoundingClientRect() : this.view.dom.getBoundingClientRect(),\n pos: this.manager.tooltips.map((t, i) => {\n let tv = this.manager.tooltipViews[i];\n return tv.getCoords ? tv.getCoords(t.pos) : this.view.coordsAtPos(t.pos);\n }),\n size: this.manager.tooltipViews.map(({ dom }) => dom.getBoundingClientRect()),\n space: this.view.state.facet(tooltipConfig).tooltipSpace(this.view),\n scaleX, scaleY, makeAbsolute\n };\n }\n writeMeasure(measured) {\n var _a;\n if (measured.makeAbsolute) {\n this.madeAbsolute = true;\n this.position = \"absolute\";\n for (let t of this.manager.tooltipViews)\n t.dom.style.position = \"absolute\";\n }\n let { visible, space, scaleX, scaleY } = measured;\n let others = [];\n for (let i = 0; i < this.manager.tooltips.length; i++) {\n let tooltip = this.manager.tooltips[i], tView = this.manager.tooltipViews[i], { dom } = tView;\n let pos = measured.pos[i], size = measured.size[i];\n // Hide tooltips that are outside of the editor.\n if (!pos || tooltip.clip !== false && (pos.bottom <= Math.max(visible.top, space.top) ||\n pos.top >= Math.min(visible.bottom, space.bottom) ||\n pos.right < Math.max(visible.left, space.left) - .1 ||\n pos.left > Math.min(visible.right, space.right) + .1)) {\n dom.style.top = Outside;\n continue;\n }\n let arrow = tooltip.arrow ? tView.dom.querySelector(\".cm-tooltip-arrow\") : null;\n let arrowHeight = arrow ? 7 /* Arrow.Size */ : 0;\n let width = size.right - size.left, height = (_a = knownHeight.get(tView)) !== null && _a !== void 0 ? _a : size.bottom - size.top;\n let offset = tView.offset || noOffset, ltr = this.view.textDirection == Direction.LTR;\n let left = size.width > space.right - space.left\n ? (ltr ? space.left : space.right - size.width)\n : ltr ? Math.max(space.left, Math.min(pos.left - (arrow ? 14 /* Arrow.Offset */ : 0) + offset.x, space.right - width))\n : Math.min(Math.max(space.left, pos.left - width + (arrow ? 14 /* Arrow.Offset */ : 0) - offset.x), space.right - width);\n let above = this.above[i];\n if (!tooltip.strictSide && (above\n ? pos.top - height - arrowHeight - offset.y < space.top\n : pos.bottom + height + arrowHeight + offset.y > space.bottom) &&\n above == (space.bottom - pos.bottom > pos.top - space.top))\n above = this.above[i] = !above;\n let spaceVert = (above ? pos.top - space.top : space.bottom - pos.bottom) - arrowHeight;\n if (spaceVert < height && tView.resize !== false) {\n if (spaceVert < this.view.defaultLineHeight) {\n dom.style.top = Outside;\n continue;\n }\n knownHeight.set(tView, height);\n dom.style.height = (height = spaceVert) / scaleY + \"px\";\n }\n else if (dom.style.height) {\n dom.style.height = \"\";\n }\n let top = above ? pos.top - height - arrowHeight - offset.y : pos.bottom + arrowHeight + offset.y;\n let right = left + width;\n if (tView.overlap !== true)\n for (let r of others)\n if (r.left < right && r.right > left && r.top < top + height && r.bottom > top)\n top = above ? r.top - height - 2 - arrowHeight : r.bottom + arrowHeight + 2;\n if (this.position == \"absolute\") {\n dom.style.top = (top - measured.parent.top) / scaleY + \"px\";\n setLeftStyle(dom, (left - measured.parent.left) / scaleX);\n }\n else {\n dom.style.top = top / scaleY + \"px\";\n setLeftStyle(dom, left / scaleX);\n }\n if (arrow) {\n let arrowLeft = pos.left + (ltr ? offset.x : -offset.x) - (left + 14 /* Arrow.Offset */ - 7 /* Arrow.Size */);\n arrow.style.left = arrowLeft / scaleX + \"px\";\n }\n if (tView.overlap !== true)\n others.push({ left, top, right, bottom: top + height });\n dom.classList.toggle(\"cm-tooltip-above\", above);\n dom.classList.toggle(\"cm-tooltip-below\", !above);\n if (tView.positioned)\n tView.positioned(measured.space);\n }\n }\n maybeMeasure() {\n if (this.manager.tooltips.length) {\n if (this.view.inView)\n this.view.requestMeasure(this.measureReq);\n if (this.inView != this.view.inView) {\n this.inView = this.view.inView;\n if (!this.inView)\n for (let tv of this.manager.tooltipViews)\n tv.dom.style.top = Outside;\n }\n }\n }\n}, {\n eventObservers: {\n scroll() { this.maybeMeasure(); }\n }\n});\nfunction setLeftStyle(elt, value) {\n let current = parseInt(elt.style.left, 10);\n if (isNaN(current) || Math.abs(value - current) > 1)\n elt.style.left = value + \"px\";\n}\nconst baseTheme = /*@__PURE__*/EditorView.baseTheme({\n \".cm-tooltip\": {\n zIndex: 500,\n boxSizing: \"border-box\"\n },\n \"&light .cm-tooltip\": {\n border: \"1px solid #bbb\",\n backgroundColor: \"#f5f5f5\"\n },\n \"&light .cm-tooltip-section:not(:first-child)\": {\n borderTop: \"1px solid #bbb\",\n },\n \"&dark .cm-tooltip\": {\n backgroundColor: \"#333338\",\n color: \"white\"\n },\n \".cm-tooltip-arrow\": {\n height: `${7 /* Arrow.Size */}px`,\n width: `${7 /* Arrow.Size */ * 2}px`,\n position: \"absolute\",\n zIndex: -1,\n overflow: \"hidden\",\n \"&:before, &:after\": {\n content: \"''\",\n position: \"absolute\",\n width: 0,\n height: 0,\n borderLeft: `${7 /* Arrow.Size */}px solid transparent`,\n borderRight: `${7 /* Arrow.Size */}px solid transparent`,\n },\n \".cm-tooltip-above &\": {\n bottom: `-${7 /* Arrow.Size */}px`,\n \"&:before\": {\n borderTop: `${7 /* Arrow.Size */}px solid #bbb`,\n },\n \"&:after\": {\n borderTop: `${7 /* Arrow.Size */}px solid #f5f5f5`,\n bottom: \"1px\"\n }\n },\n \".cm-tooltip-below &\": {\n top: `-${7 /* Arrow.Size */}px`,\n \"&:before\": {\n borderBottom: `${7 /* Arrow.Size */}px solid #bbb`,\n },\n \"&:after\": {\n borderBottom: `${7 /* Arrow.Size */}px solid #f5f5f5`,\n top: \"1px\"\n }\n },\n },\n \"&dark .cm-tooltip .cm-tooltip-arrow\": {\n \"&:before\": {\n borderTopColor: \"#333338\",\n borderBottomColor: \"#333338\"\n },\n \"&:after\": {\n borderTopColor: \"transparent\",\n borderBottomColor: \"transparent\"\n }\n }\n});\nconst noOffset = { x: 0, y: 0 };\n/**\nFacet to which an extension can add a value to show a tooltip.\n*/\nconst showTooltip = /*@__PURE__*/Facet.define({\n enables: [tooltipPlugin, baseTheme]\n});\nconst showHoverTooltip = /*@__PURE__*/Facet.define({\n combine: inputs => inputs.reduce((a, i) => a.concat(i), [])\n});\nclass HoverTooltipHost {\n // Needs to be static so that host tooltip instances always match\n static create(view) {\n return new HoverTooltipHost(view);\n }\n constructor(view) {\n this.view = view;\n this.mounted = false;\n this.dom = document.createElement(\"div\");\n this.dom.classList.add(\"cm-tooltip-hover\");\n this.manager = new TooltipViewManager(view, showHoverTooltip, (t, p) => this.createHostedView(t, p), t => t.dom.remove());\n }\n createHostedView(tooltip, prev) {\n let hostedView = tooltip.create(this.view);\n hostedView.dom.classList.add(\"cm-tooltip-section\");\n this.dom.insertBefore(hostedView.dom, prev ? prev.dom.nextSibling : this.dom.firstChild);\n if (this.mounted && hostedView.mount)\n hostedView.mount(this.view);\n return hostedView;\n }\n mount(view) {\n for (let hostedView of this.manager.tooltipViews) {\n if (hostedView.mount)\n hostedView.mount(view);\n }\n this.mounted = true;\n }\n positioned(space) {\n for (let hostedView of this.manager.tooltipViews) {\n if (hostedView.positioned)\n hostedView.positioned(space);\n }\n }\n update(update) {\n this.manager.update(update);\n }\n destroy() {\n var _a;\n for (let t of this.manager.tooltipViews)\n (_a = t.destroy) === null || _a === void 0 ? void 0 : _a.call(t);\n }\n passProp(name) {\n let value = undefined;\n for (let view of this.manager.tooltipViews) {\n let given = view[name];\n if (given !== undefined) {\n if (value === undefined)\n value = given;\n else if (value !== given)\n return undefined;\n }\n }\n return value;\n }\n get offset() { return this.passProp(\"offset\"); }\n get getCoords() { return this.passProp(\"getCoords\"); }\n get overlap() { return this.passProp(\"overlap\"); }\n get resize() { return this.passProp(\"resize\"); }\n}\nconst showHoverTooltipHost = /*@__PURE__*/showTooltip.compute([showHoverTooltip], state => {\n let tooltips = state.facet(showHoverTooltip);\n if (tooltips.length === 0)\n return null;\n return {\n pos: Math.min(...tooltips.map(t => t.pos)),\n end: Math.max(...tooltips.map(t => { var _a; return (_a = t.end) !== null && _a !== void 0 ? _a : t.pos; })),\n create: HoverTooltipHost.create,\n above: tooltips[0].above,\n arrow: tooltips.some(t => t.arrow),\n };\n});\nclass HoverPlugin {\n constructor(view, source, field, setHover, hoverTime) {\n this.view = view;\n this.source = source;\n this.field = field;\n this.setHover = setHover;\n this.hoverTime = hoverTime;\n this.hoverTimeout = -1;\n this.restartTimeout = -1;\n this.pending = null;\n this.lastMove = { x: 0, y: 0, target: view.dom, time: 0 };\n this.checkHover = this.checkHover.bind(this);\n view.dom.addEventListener(\"mouseleave\", this.mouseleave = this.mouseleave.bind(this));\n view.dom.addEventListener(\"mousemove\", this.mousemove = this.mousemove.bind(this));\n }\n update() {\n if (this.pending) {\n this.pending = null;\n clearTimeout(this.restartTimeout);\n this.restartTimeout = setTimeout(() => this.startHover(), 20);\n }\n }\n get active() {\n return this.view.state.field(this.field);\n }\n checkHover() {\n this.hoverTimeout = -1;\n if (this.active.length)\n return;\n let hovered = Date.now() - this.lastMove.time;\n if (hovered < this.hoverTime)\n this.hoverTimeout = setTimeout(this.checkHover, this.hoverTime - hovered);\n else\n this.startHover();\n }\n startHover() {\n clearTimeout(this.restartTimeout);\n let { view, lastMove } = this;\n let tile = view.docView.tile.nearest(lastMove.target);\n if (!tile)\n return;\n let pos, side = 1;\n if (tile.isWidget()) {\n pos = tile.posAtStart;\n }\n else {\n pos = view.posAtCoords(lastMove);\n if (pos == null)\n return;\n let posCoords = view.coordsAtPos(pos);\n if (!posCoords ||\n lastMove.y < posCoords.top || lastMove.y > posCoords.bottom ||\n lastMove.x < posCoords.left - view.defaultCharacterWidth ||\n lastMove.x > posCoords.right + view.defaultCharacterWidth)\n return;\n let bidi = view.bidiSpans(view.state.doc.lineAt(pos)).find(s => s.from <= pos && s.to >= pos);\n let rtl = bidi && bidi.dir == Direction.RTL ? -1 : 1;\n side = (lastMove.x < posCoords.left ? -rtl : rtl);\n }\n let open = this.source(view, pos, side);\n if (open === null || open === void 0 ? void 0 : open.then) {\n let pending = this.pending = { pos };\n open.then(result => {\n if (this.pending == pending) {\n this.pending = null;\n if (result && !(Array.isArray(result) && !result.length))\n view.dispatch({ effects: this.setHover.of(Array.isArray(result) ? result : [result]) });\n }\n }, e => logException(view.state, e, \"hover tooltip\"));\n }\n else if (open && !(Array.isArray(open) && !open.length)) {\n view.dispatch({ effects: this.setHover.of(Array.isArray(open) ? open : [open]) });\n }\n }\n get tooltip() {\n let plugin = this.view.plugin(tooltipPlugin);\n let index = plugin ? plugin.manager.tooltips.findIndex(t => t.create == HoverTooltipHost.create) : -1;\n return index > -1 ? plugin.manager.tooltipViews[index] : null;\n }\n mousemove(event) {\n var _a, _b;\n this.lastMove = { x: event.clientX, y: event.clientY, target: event.target, time: Date.now() };\n if (this.hoverTimeout < 0)\n this.hoverTimeout = setTimeout(this.checkHover, this.hoverTime);\n let { active, tooltip } = this;\n if (active.length && tooltip && !isInTooltip(tooltip.dom, event) || this.pending) {\n let { pos } = active[0] || this.pending, end = (_b = (_a = active[0]) === null || _a === void 0 ? void 0 : _a.end) !== null && _b !== void 0 ? _b : pos;\n if ((pos == end ? this.view.posAtCoords(this.lastMove) != pos\n : !isOverRange(this.view, pos, end, event.clientX, event.clientY))) {\n this.view.dispatch({ effects: this.setHover.of([]) });\n this.pending = null;\n }\n }\n }\n mouseleave(event) {\n clearTimeout(this.hoverTimeout);\n this.hoverTimeout = -1;\n let { active } = this;\n if (active.length) {\n let { tooltip } = this;\n let inTooltip = tooltip && tooltip.dom.contains(event.relatedTarget);\n if (!inTooltip)\n this.view.dispatch({ effects: this.setHover.of([]) });\n else\n this.watchTooltipLeave(tooltip.dom);\n }\n }\n watchTooltipLeave(tooltip) {\n let watch = (event) => {\n tooltip.removeEventListener(\"mouseleave\", watch);\n if (this.active.length && !this.view.dom.contains(event.relatedTarget))\n this.view.dispatch({ effects: this.setHover.of([]) });\n };\n tooltip.addEventListener(\"mouseleave\", watch);\n }\n destroy() {\n clearTimeout(this.hoverTimeout);\n this.view.dom.removeEventListener(\"mouseleave\", this.mouseleave);\n this.view.dom.removeEventListener(\"mousemove\", this.mousemove);\n }\n}\nconst tooltipMargin = 4;\nfunction isInTooltip(tooltip, event) {\n let { left, right, top, bottom } = tooltip.getBoundingClientRect(), arrow;\n if (arrow = tooltip.querySelector(\".cm-tooltip-arrow\")) {\n let arrowRect = arrow.getBoundingClientRect();\n top = Math.min(arrowRect.top, top);\n bottom = Math.max(arrowRect.bottom, bottom);\n }\n return event.clientX >= left - tooltipMargin && event.clientX <= right + tooltipMargin &&\n event.clientY >= top - tooltipMargin && event.clientY <= bottom + tooltipMargin;\n}\nfunction isOverRange(view, from, to, x, y, margin) {\n let rect = view.scrollDOM.getBoundingClientRect();\n let docBottom = view.documentTop + view.documentPadding.top + view.contentHeight;\n if (rect.left > x || rect.right < x || rect.top > y || Math.min(rect.bottom, docBottom) < y)\n return false;\n let pos = view.posAtCoords({ x, y }, false);\n return pos >= from && pos <= to;\n}\n/**\nSet up a hover tooltip, which shows up when the pointer hovers\nover ranges of text. The callback is called when the mouse hovers\nover the document text. It should, if there is a tooltip\nassociated with position `pos`, return the tooltip description\n(either directly or in a promise). The `side` argument indicates\non which side of the position the pointer is\u2014it will be -1 if the\npointer is before the position, 1 if after the position.\n\nNote that all hover tooltips are hosted within a single tooltip\ncontainer element. This allows multiple tooltips over the same\nrange to be \"merged\" together without overlapping.\n\nThe return value is a valid [editor extension](https://codemirror.net/6/docs/ref/#state.Extension)\nbut also provides an `active` property holding a state field that\ncan be used to read the currently active tooltips produced by this\nextension.\n*/\nfunction hoverTooltip(source, options = {}) {\n let setHover = StateEffect.define();\n let hoverState = StateField.define({\n create() { return []; },\n update(value, tr) {\n if (value.length) {\n if (options.hideOnChange && (tr.docChanged || tr.selection))\n value = [];\n else if (options.hideOn)\n value = value.filter(v => !options.hideOn(tr, v));\n if (tr.docChanged) {\n let mapped = [];\n for (let tooltip of value) {\n let newPos = tr.changes.mapPos(tooltip.pos, -1, MapMode.TrackDel);\n if (newPos != null) {\n let copy = Object.assign(Object.create(null), tooltip);\n copy.pos = newPos;\n if (copy.end != null)\n copy.end = tr.changes.mapPos(copy.end);\n mapped.push(copy);\n }\n }\n value = mapped;\n }\n }\n for (let effect of tr.effects) {\n if (effect.is(setHover))\n value = effect.value;\n if (effect.is(closeHoverTooltipEffect))\n value = [];\n }\n return value;\n },\n provide: f => showHoverTooltip.from(f)\n });\n return {\n active: hoverState,\n extension: [\n hoverState,\n ViewPlugin.define(view => new HoverPlugin(view, source, hoverState, setHover, options.hoverTime || 300 /* Hover.Time */)),\n showHoverTooltipHost\n ]\n };\n}\n/**\nGet the active tooltip view for a given tooltip, if available.\n*/\nfunction getTooltip(view, tooltip) {\n let plugin = view.plugin(tooltipPlugin);\n if (!plugin)\n return null;\n let found = plugin.manager.tooltips.indexOf(tooltip);\n return found < 0 ? null : plugin.manager.tooltipViews[found];\n}\n/**\nReturns true if any hover tooltips are currently active.\n*/\nfunction hasHoverTooltips(state) {\n return state.facet(showHoverTooltip).some(x => x);\n}\nconst closeHoverTooltipEffect = /*@__PURE__*/StateEffect.define();\n/**\nTransaction effect that closes all hover tooltips.\n*/\nconst closeHoverTooltips = /*@__PURE__*/closeHoverTooltipEffect.of(null);\n/**\nTell the tooltip extension to recompute the position of the active\ntooltips. This can be useful when something happens (such as a\nre-positioning or CSS change affecting the editor) that could\ninvalidate the existing tooltip positions.\n*/\nfunction repositionTooltips(view) {\n let plugin = view.plugin(tooltipPlugin);\n if (plugin)\n plugin.maybeMeasure();\n}\n\nconst panelConfig = /*@__PURE__*/Facet.define({\n combine(configs) {\n let topContainer, bottomContainer;\n for (let c of configs) {\n topContainer = topContainer || c.topContainer;\n bottomContainer = bottomContainer || c.bottomContainer;\n }\n return { topContainer, bottomContainer };\n }\n});\n/**\nConfigures the panel-managing extension.\n*/\nfunction panels(config) {\n return config ? [panelConfig.of(config)] : [];\n}\n/**\nGet the active panel created by the given constructor, if any.\nThis can be useful when you need access to your panels' DOM\nstructure.\n*/\nfunction getPanel(view, panel) {\n let plugin = view.plugin(panelPlugin);\n let index = plugin ? plugin.specs.indexOf(panel) : -1;\n return index > -1 ? plugin.panels[index] : null;\n}\nconst panelPlugin = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.input = view.state.facet(showPanel);\n this.specs = this.input.filter(s => s);\n this.panels = this.specs.map(spec => spec(view));\n let conf = view.state.facet(panelConfig);\n this.top = new PanelGroup(view, true, conf.topContainer);\n this.bottom = new PanelGroup(view, false, conf.bottomContainer);\n this.top.sync(this.panels.filter(p => p.top));\n this.bottom.sync(this.panels.filter(p => !p.top));\n for (let p of this.panels) {\n p.dom.classList.add(\"cm-panel\");\n if (p.mount)\n p.mount();\n }\n }\n update(update) {\n let conf = update.state.facet(panelConfig);\n if (this.top.container != conf.topContainer) {\n this.top.sync([]);\n this.top = new PanelGroup(update.view, true, conf.topContainer);\n }\n if (this.bottom.container != conf.bottomContainer) {\n this.bottom.sync([]);\n this.bottom = new PanelGroup(update.view, false, conf.bottomContainer);\n }\n this.top.syncClasses();\n this.bottom.syncClasses();\n let input = update.state.facet(showPanel);\n if (input != this.input) {\n let specs = input.filter(x => x);\n let panels = [], top = [], bottom = [], mount = [];\n for (let spec of specs) {\n let known = this.specs.indexOf(spec), panel;\n if (known < 0) {\n panel = spec(update.view);\n mount.push(panel);\n }\n else {\n panel = this.panels[known];\n if (panel.update)\n panel.update(update);\n }\n panels.push(panel);\n (panel.top ? top : bottom).push(panel);\n }\n this.specs = specs;\n this.panels = panels;\n this.top.sync(top);\n this.bottom.sync(bottom);\n for (let p of mount) {\n p.dom.classList.add(\"cm-panel\");\n if (p.mount)\n p.mount();\n }\n }\n else {\n for (let p of this.panels)\n if (p.update)\n p.update(update);\n }\n }\n destroy() {\n this.top.sync([]);\n this.bottom.sync([]);\n }\n}, {\n provide: plugin => EditorView.scrollMargins.of(view => {\n let value = view.plugin(plugin);\n return value && { top: value.top.scrollMargin(), bottom: value.bottom.scrollMargin() };\n })\n});\nclass PanelGroup {\n constructor(view, top, container) {\n this.view = view;\n this.top = top;\n this.container = container;\n this.dom = undefined;\n this.classes = \"\";\n this.panels = [];\n this.syncClasses();\n }\n sync(panels) {\n for (let p of this.panels)\n if (p.destroy && panels.indexOf(p) < 0)\n p.destroy();\n this.panels = panels;\n this.syncDOM();\n }\n syncDOM() {\n if (this.panels.length == 0) {\n if (this.dom) {\n this.dom.remove();\n this.dom = undefined;\n }\n return;\n }\n if (!this.dom) {\n this.dom = document.createElement(\"div\");\n this.dom.className = this.top ? \"cm-panels cm-panels-top\" : \"cm-panels cm-panels-bottom\";\n this.dom.style[this.top ? \"top\" : \"bottom\"] = \"0\";\n let parent = this.container || this.view.dom;\n parent.insertBefore(this.dom, this.top ? parent.firstChild : null);\n }\n let curDOM = this.dom.firstChild;\n for (let panel of this.panels) {\n if (panel.dom.parentNode == this.dom) {\n while (curDOM != panel.dom)\n curDOM = rm(curDOM);\n curDOM = curDOM.nextSibling;\n }\n else {\n this.dom.insertBefore(panel.dom, curDOM);\n }\n }\n while (curDOM)\n curDOM = rm(curDOM);\n }\n scrollMargin() {\n return !this.dom || this.container ? 0\n : Math.max(0, this.top ?\n this.dom.getBoundingClientRect().bottom - Math.max(0, this.view.scrollDOM.getBoundingClientRect().top) :\n Math.min(innerHeight, this.view.scrollDOM.getBoundingClientRect().bottom) - this.dom.getBoundingClientRect().top);\n }\n syncClasses() {\n if (!this.container || this.classes == this.view.themeClasses)\n return;\n for (let cls of this.classes.split(\" \"))\n if (cls)\n this.container.classList.remove(cls);\n for (let cls of (this.classes = this.view.themeClasses).split(\" \"))\n if (cls)\n this.container.classList.add(cls);\n }\n}\nfunction rm(node) {\n let next = node.nextSibling;\n node.remove();\n return next;\n}\n/**\nOpening a panel is done by providing a constructor function for\nthe panel through this facet. (The panel is closed again when its\nconstructor is no longer provided.) Values of `null` are ignored.\n*/\nconst showPanel = /*@__PURE__*/Facet.define({\n enables: panelPlugin\n});\n\n/**\nShow a panel above or below the editor to show the user a message\nor prompt them for input. Returns an effect that can be dispatched\nto close the dialog, and a promise that resolves when the dialog\nis closed or a form inside of it is submitted.\n\nYou are encouraged, if your handling of the result of the promise\ndispatches a transaction, to include the `close` effect in it. If\nyou don't, this function will automatically dispatch a separate\ntransaction right after.\n*/\nfunction showDialog(view, config) {\n let resolve;\n let promise = new Promise(r => resolve = r);\n let panelCtor = (view) => createDialog(view, config, resolve);\n if (view.state.field(dialogField, false)) {\n view.dispatch({ effects: openDialogEffect.of(panelCtor) });\n }\n else {\n view.dispatch({ effects: StateEffect.appendConfig.of(dialogField.init(() => [panelCtor])) });\n }\n let close = closeDialogEffect.of(panelCtor);\n return { close, result: promise.then(form => {\n let queue = view.win.queueMicrotask || ((f) => view.win.setTimeout(f, 10));\n queue(() => {\n if (view.state.field(dialogField).indexOf(panelCtor) > -1)\n view.dispatch({ effects: close });\n });\n return form;\n }) };\n}\n/**\nFind the [`Panel`](https://codemirror.net/6/docs/ref/#view.Panel) for an open dialog, using a class\nname as identifier.\n*/\nfunction getDialog(view, className) {\n let dialogs = view.state.field(dialogField, false) || [];\n for (let open of dialogs) {\n let panel = getPanel(view, open);\n if (panel && panel.dom.classList.contains(className))\n return panel;\n }\n return null;\n}\nconst dialogField = /*@__PURE__*/StateField.define({\n create() { return []; },\n update(dialogs, tr) {\n for (let e of tr.effects) {\n if (e.is(openDialogEffect))\n dialogs = [e.value].concat(dialogs);\n else if (e.is(closeDialogEffect))\n dialogs = dialogs.filter(d => d != e.value);\n }\n return dialogs;\n },\n provide: f => showPanel.computeN([f], state => state.field(f))\n});\nconst openDialogEffect = /*@__PURE__*/StateEffect.define();\nconst closeDialogEffect = /*@__PURE__*/StateEffect.define();\nfunction createDialog(view, config, result) {\n let content = config.content ? config.content(view, () => done(null)) : null;\n if (!content) {\n content = elt(\"form\");\n if (config.input) {\n let input = elt(\"input\", config.input);\n if (/^(text|password|number|email|tel|url)$/.test(input.type))\n input.classList.add(\"cm-textfield\");\n if (!input.name)\n input.name = \"input\";\n content.appendChild(elt(\"label\", (config.label || \"\") + \": \", input));\n }\n else {\n content.appendChild(document.createTextNode(config.label || \"\"));\n }\n content.appendChild(document.createTextNode(\" \"));\n content.appendChild(elt(\"button\", { class: \"cm-button\", type: \"submit\" }, config.submitLabel || \"OK\"));\n }\n let forms = content.nodeName == \"FORM\" ? [content] : content.querySelectorAll(\"form\");\n for (let i = 0; i < forms.length; i++) {\n let form = forms[i];\n form.addEventListener(\"keydown\", (event) => {\n if (event.keyCode == 27) { // Escape\n event.preventDefault();\n done(null);\n }\n else if (event.keyCode == 13) { // Enter\n event.preventDefault();\n done(form);\n }\n });\n form.addEventListener(\"submit\", (event) => {\n event.preventDefault();\n done(form);\n });\n }\n let panel = elt(\"div\", content, elt(\"button\", {\n onclick: () => done(null),\n \"aria-label\": view.state.phrase(\"close\"),\n class: \"cm-dialog-close\",\n type: \"button\"\n }, [\"\u00D7\"]));\n if (config.class)\n panel.className = config.class;\n panel.classList.add(\"cm-dialog\");\n function done(form) {\n if (panel.contains(panel.ownerDocument.activeElement))\n view.focus();\n result(form);\n }\n return {\n dom: panel,\n top: config.top,\n mount: () => {\n if (config.focus) {\n let focus;\n if (typeof config.focus == \"string\")\n focus = content.querySelector(config.focus);\n else\n focus = content.querySelector(\"input\") || content.querySelector(\"button\");\n if (focus && \"select\" in focus)\n focus.select();\n else if (focus && \"focus\" in focus)\n focus.focus();\n }\n }\n };\n}\n\n/**\nA gutter marker represents a bit of information attached to a line\nin a specific gutter. Your own custom markers have to extend this\nclass.\n*/\nclass GutterMarker extends RangeValue {\n /**\n @internal\n */\n compare(other) {\n return this == other || this.constructor == other.constructor && this.eq(other);\n }\n /**\n Compare this marker to another marker of the same type.\n */\n eq(other) { return false; }\n /**\n Called if the marker has a `toDOM` method and its representation\n was removed from a gutter.\n */\n destroy(dom) { }\n}\nGutterMarker.prototype.elementClass = \"\";\nGutterMarker.prototype.toDOM = undefined;\nGutterMarker.prototype.mapMode = MapMode.TrackBefore;\nGutterMarker.prototype.startSide = GutterMarker.prototype.endSide = -1;\nGutterMarker.prototype.point = true;\n/**\nFacet used to add a class to all gutter elements for a given line.\nMarkers given to this facet should _only_ define an\n[`elementclass`](https://codemirror.net/6/docs/ref/#view.GutterMarker.elementClass), not a\n[`toDOM`](https://codemirror.net/6/docs/ref/#view.GutterMarker.toDOM) (or the marker will appear\nin all gutters for the line).\n*/\nconst gutterLineClass = /*@__PURE__*/Facet.define();\n/**\nFacet used to add a class to all gutter elements next to a widget.\nShould not provide widgets with a `toDOM` method.\n*/\nconst gutterWidgetClass = /*@__PURE__*/Facet.define();\nconst defaults = {\n class: \"\",\n renderEmptyElements: false,\n elementStyle: \"\",\n markers: () => RangeSet.empty,\n lineMarker: () => null,\n widgetMarker: () => null,\n lineMarkerChange: null,\n initialSpacer: null,\n updateSpacer: null,\n domEventHandlers: {},\n side: \"before\"\n};\nconst activeGutters = /*@__PURE__*/Facet.define();\n/**\nDefine an editor gutter. The order in which the gutters appear is\ndetermined by their extension priority.\n*/\nfunction gutter(config) {\n return [gutters(), activeGutters.of({ ...defaults, ...config })];\n}\nconst unfixGutters = /*@__PURE__*/Facet.define({\n combine: values => values.some(x => x)\n});\n/**\nThe gutter-drawing plugin is automatically enabled when you add a\ngutter, but you can use this function to explicitly configure it.\n\nUnless `fixed` is explicitly set to `false`, the gutters are\nfixed, meaning they don't scroll along with the content\nhorizontally (except on Internet Explorer, which doesn't support\nCSS [`position:\nsticky`](https://developer.mozilla.org/en-US/docs/Web/CSS/position#sticky)).\n*/\nfunction gutters(config) {\n let result = [\n gutterView,\n ];\n if (config && config.fixed === false)\n result.push(unfixGutters.of(true));\n return result;\n}\nconst gutterView = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.view = view;\n this.domAfter = null;\n this.prevViewport = view.viewport;\n this.dom = document.createElement(\"div\");\n this.dom.className = \"cm-gutters cm-gutters-before\";\n this.dom.setAttribute(\"aria-hidden\", \"true\");\n this.dom.style.minHeight = (this.view.contentHeight / this.view.scaleY) + \"px\";\n this.gutters = view.state.facet(activeGutters).map(conf => new SingleGutterView(view, conf));\n this.fixed = !view.state.facet(unfixGutters);\n for (let gutter of this.gutters) {\n if (gutter.config.side == \"after\")\n this.getDOMAfter().appendChild(gutter.dom);\n else\n this.dom.appendChild(gutter.dom);\n }\n if (this.fixed) {\n // FIXME IE11 fallback, which doesn't support position: sticky,\n // by using position: relative + event handlers that realign the\n // gutter (or just force fixed=false on IE11?)\n this.dom.style.position = \"sticky\";\n }\n this.syncGutters(false);\n view.scrollDOM.insertBefore(this.dom, view.contentDOM);\n }\n getDOMAfter() {\n if (!this.domAfter) {\n this.domAfter = document.createElement(\"div\");\n this.domAfter.className = \"cm-gutters cm-gutters-after\";\n this.domAfter.setAttribute(\"aria-hidden\", \"true\");\n this.domAfter.style.minHeight = (this.view.contentHeight / this.view.scaleY) + \"px\";\n this.domAfter.style.position = this.fixed ? \"sticky\" : \"\";\n this.view.scrollDOM.appendChild(this.domAfter);\n }\n return this.domAfter;\n }\n update(update) {\n if (this.updateGutters(update)) {\n // Detach during sync when the viewport changed significantly\n // (such as during scrolling), since for large updates that is\n // faster.\n let vpA = this.prevViewport, vpB = update.view.viewport;\n let vpOverlap = Math.min(vpA.to, vpB.to) - Math.max(vpA.from, vpB.from);\n this.syncGutters(vpOverlap < (vpB.to - vpB.from) * 0.8);\n }\n if (update.geometryChanged) {\n let min = (this.view.contentHeight / this.view.scaleY) + \"px\";\n this.dom.style.minHeight = min;\n if (this.domAfter)\n this.domAfter.style.minHeight = min;\n }\n if (this.view.state.facet(unfixGutters) != !this.fixed) {\n this.fixed = !this.fixed;\n this.dom.style.position = this.fixed ? \"sticky\" : \"\";\n if (this.domAfter)\n this.domAfter.style.position = this.fixed ? \"sticky\" : \"\";\n }\n this.prevViewport = update.view.viewport;\n }\n syncGutters(detach) {\n let after = this.dom.nextSibling;\n if (detach) {\n this.dom.remove();\n if (this.domAfter)\n this.domAfter.remove();\n }\n let lineClasses = RangeSet.iter(this.view.state.facet(gutterLineClass), this.view.viewport.from);\n let classSet = [];\n let contexts = this.gutters.map(gutter => new UpdateContext(gutter, this.view.viewport, -this.view.documentPadding.top));\n for (let line of this.view.viewportLineBlocks) {\n if (classSet.length)\n classSet = [];\n if (Array.isArray(line.type)) {\n let first = true;\n for (let b of line.type) {\n if (b.type == BlockType.Text && first) {\n advanceCursor(lineClasses, classSet, b.from);\n for (let cx of contexts)\n cx.line(this.view, b, classSet);\n first = false;\n }\n else if (b.widget) {\n for (let cx of contexts)\n cx.widget(this.view, b);\n }\n }\n }\n else if (line.type == BlockType.Text) {\n advanceCursor(lineClasses, classSet, line.from);\n for (let cx of contexts)\n cx.line(this.view, line, classSet);\n }\n else if (line.widget) {\n for (let cx of contexts)\n cx.widget(this.view, line);\n }\n }\n for (let cx of contexts)\n cx.finish();\n if (detach) {\n this.view.scrollDOM.insertBefore(this.dom, after);\n if (this.domAfter)\n this.view.scrollDOM.appendChild(this.domAfter);\n }\n }\n updateGutters(update) {\n let prev = update.startState.facet(activeGutters), cur = update.state.facet(activeGutters);\n let change = update.docChanged || update.heightChanged || update.viewportChanged ||\n !RangeSet.eq(update.startState.facet(gutterLineClass), update.state.facet(gutterLineClass), update.view.viewport.from, update.view.viewport.to);\n if (prev == cur) {\n for (let gutter of this.gutters)\n if (gutter.update(update))\n change = true;\n }\n else {\n change = true;\n let gutters = [];\n for (let conf of cur) {\n let known = prev.indexOf(conf);\n if (known < 0) {\n gutters.push(new SingleGutterView(this.view, conf));\n }\n else {\n this.gutters[known].update(update);\n gutters.push(this.gutters[known]);\n }\n }\n for (let g of this.gutters) {\n g.dom.remove();\n if (gutters.indexOf(g) < 0)\n g.destroy();\n }\n for (let g of gutters) {\n if (g.config.side == \"after\")\n this.getDOMAfter().appendChild(g.dom);\n else\n this.dom.appendChild(g.dom);\n }\n this.gutters = gutters;\n }\n return change;\n }\n destroy() {\n for (let view of this.gutters)\n view.destroy();\n this.dom.remove();\n if (this.domAfter)\n this.domAfter.remove();\n }\n}, {\n provide: plugin => EditorView.scrollMargins.of(view => {\n let value = view.plugin(plugin);\n if (!value || value.gutters.length == 0 || !value.fixed)\n return null;\n let before = value.dom.offsetWidth * view.scaleX, after = value.domAfter ? value.domAfter.offsetWidth * view.scaleX : 0;\n return view.textDirection == Direction.LTR\n ? { left: before, right: after }\n : { right: before, left: after };\n })\n});\nfunction asArray(val) { return (Array.isArray(val) ? val : [val]); }\nfunction advanceCursor(cursor, collect, pos) {\n while (cursor.value && cursor.from <= pos) {\n if (cursor.from == pos)\n collect.push(cursor.value);\n cursor.next();\n }\n}\nclass UpdateContext {\n constructor(gutter, viewport, height) {\n this.gutter = gutter;\n this.height = height;\n this.i = 0;\n this.cursor = RangeSet.iter(gutter.markers, viewport.from);\n }\n addElement(view, block, markers) {\n let { gutter } = this, above = (block.top - this.height) / view.scaleY, height = block.height / view.scaleY;\n if (this.i == gutter.elements.length) {\n let newElt = new GutterElement(view, height, above, markers);\n gutter.elements.push(newElt);\n gutter.dom.appendChild(newElt.dom);\n }\n else {\n gutter.elements[this.i].update(view, height, above, markers);\n }\n this.height = block.bottom;\n this.i++;\n }\n line(view, line, extraMarkers) {\n let localMarkers = [];\n advanceCursor(this.cursor, localMarkers, line.from);\n if (extraMarkers.length)\n localMarkers = localMarkers.concat(extraMarkers);\n let forLine = this.gutter.config.lineMarker(view, line, localMarkers);\n if (forLine)\n localMarkers.unshift(forLine);\n let gutter = this.gutter;\n if (localMarkers.length == 0 && !gutter.config.renderEmptyElements)\n return;\n this.addElement(view, line, localMarkers);\n }\n widget(view, block) {\n let marker = this.gutter.config.widgetMarker(view, block.widget, block), markers = marker ? [marker] : null;\n for (let cls of view.state.facet(gutterWidgetClass)) {\n let marker = cls(view, block.widget, block);\n if (marker)\n (markers || (markers = [])).push(marker);\n }\n if (markers)\n this.addElement(view, block, markers);\n }\n finish() {\n let gutter = this.gutter;\n while (gutter.elements.length > this.i) {\n let last = gutter.elements.pop();\n gutter.dom.removeChild(last.dom);\n last.destroy();\n }\n }\n}\nclass SingleGutterView {\n constructor(view, config) {\n this.view = view;\n this.config = config;\n this.elements = [];\n this.spacer = null;\n this.dom = document.createElement(\"div\");\n this.dom.className = \"cm-gutter\" + (this.config.class ? \" \" + this.config.class : \"\");\n for (let prop in config.domEventHandlers) {\n this.dom.addEventListener(prop, (event) => {\n let target = event.target, y;\n if (target != this.dom && this.dom.contains(target)) {\n while (target.parentNode != this.dom)\n target = target.parentNode;\n let rect = target.getBoundingClientRect();\n y = (rect.top + rect.bottom) / 2;\n }\n else {\n y = event.clientY;\n }\n let line = view.lineBlockAtHeight(y - view.documentTop);\n if (config.domEventHandlers[prop](view, line, event))\n event.preventDefault();\n });\n }\n this.markers = asArray(config.markers(view));\n if (config.initialSpacer) {\n this.spacer = new GutterElement(view, 0, 0, [config.initialSpacer(view)]);\n this.dom.appendChild(this.spacer.dom);\n this.spacer.dom.style.cssText += \"visibility: hidden; pointer-events: none\";\n }\n }\n update(update) {\n let prevMarkers = this.markers;\n this.markers = asArray(this.config.markers(update.view));\n if (this.spacer && this.config.updateSpacer) {\n let updated = this.config.updateSpacer(this.spacer.markers[0], update);\n if (updated != this.spacer.markers[0])\n this.spacer.update(update.view, 0, 0, [updated]);\n }\n let vp = update.view.viewport;\n return !RangeSet.eq(this.markers, prevMarkers, vp.from, vp.to) ||\n (this.config.lineMarkerChange ? this.config.lineMarkerChange(update) : false);\n }\n destroy() {\n for (let elt of this.elements)\n elt.destroy();\n }\n}\nclass GutterElement {\n constructor(view, height, above, markers) {\n this.height = -1;\n this.above = 0;\n this.markers = [];\n this.dom = document.createElement(\"div\");\n this.dom.className = \"cm-gutterElement\";\n this.update(view, height, above, markers);\n }\n update(view, height, above, markers) {\n if (this.height != height) {\n this.height = height;\n this.dom.style.height = height + \"px\";\n }\n if (this.above != above)\n this.dom.style.marginTop = (this.above = above) ? above + \"px\" : \"\";\n if (!sameMarkers(this.markers, markers))\n this.setMarkers(view, markers);\n }\n setMarkers(view, markers) {\n let cls = \"cm-gutterElement\", domPos = this.dom.firstChild;\n for (let iNew = 0, iOld = 0;;) {\n let skipTo = iOld, marker = iNew < markers.length ? markers[iNew++] : null, matched = false;\n if (marker) {\n let c = marker.elementClass;\n if (c)\n cls += \" \" + c;\n for (let i = iOld; i < this.markers.length; i++)\n if (this.markers[i].compare(marker)) {\n skipTo = i;\n matched = true;\n break;\n }\n }\n else {\n skipTo = this.markers.length;\n }\n while (iOld < skipTo) {\n let next = this.markers[iOld++];\n if (next.toDOM) {\n next.destroy(domPos);\n let after = domPos.nextSibling;\n domPos.remove();\n domPos = after;\n }\n }\n if (!marker)\n break;\n if (marker.toDOM) {\n if (matched)\n domPos = domPos.nextSibling;\n else\n this.dom.insertBefore(marker.toDOM(view), domPos);\n }\n if (matched)\n iOld++;\n }\n this.dom.className = cls;\n this.markers = markers;\n }\n destroy() {\n this.setMarkers(null, []); // First argument not used unless creating markers\n }\n}\nfunction sameMarkers(a, b) {\n if (a.length != b.length)\n return false;\n for (let i = 0; i < a.length; i++)\n if (!a[i].compare(b[i]))\n return false;\n return true;\n}\n/**\nFacet used to provide markers to the line number gutter.\n*/\nconst lineNumberMarkers = /*@__PURE__*/Facet.define();\n/**\nFacet used to create markers in the line number gutter next to widgets.\n*/\nconst lineNumberWidgetMarker = /*@__PURE__*/Facet.define();\nconst lineNumberConfig = /*@__PURE__*/Facet.define({\n combine(values) {\n return combineConfig(values, { formatNumber: String, domEventHandlers: {} }, {\n domEventHandlers(a, b) {\n let result = Object.assign({}, a);\n for (let event in b) {\n let exists = result[event], add = b[event];\n result[event] = exists ? (view, line, event) => exists(view, line, event) || add(view, line, event) : add;\n }\n return result;\n }\n });\n }\n});\nclass NumberMarker extends GutterMarker {\n constructor(number) {\n super();\n this.number = number;\n }\n eq(other) { return this.number == other.number; }\n toDOM() { return document.createTextNode(this.number); }\n}\nfunction formatNumber(view, number) {\n return view.state.facet(lineNumberConfig).formatNumber(number, view.state);\n}\nconst lineNumberGutter = /*@__PURE__*/activeGutters.compute([lineNumberConfig], state => ({\n class: \"cm-lineNumbers\",\n renderEmptyElements: false,\n markers(view) { return view.state.facet(lineNumberMarkers); },\n lineMarker(view, line, others) {\n if (others.some(m => m.toDOM))\n return null;\n return new NumberMarker(formatNumber(view, view.state.doc.lineAt(line.from).number));\n },\n widgetMarker: (view, widget, block) => {\n for (let m of view.state.facet(lineNumberWidgetMarker)) {\n let result = m(view, widget, block);\n if (result)\n return result;\n }\n return null;\n },\n lineMarkerChange: update => update.startState.facet(lineNumberConfig) != update.state.facet(lineNumberConfig),\n initialSpacer(view) {\n return new NumberMarker(formatNumber(view, maxLineNumber(view.state.doc.lines)));\n },\n updateSpacer(spacer, update) {\n let max = formatNumber(update.view, maxLineNumber(update.view.state.doc.lines));\n return max == spacer.number ? spacer : new NumberMarker(max);\n },\n domEventHandlers: state.facet(lineNumberConfig).domEventHandlers,\n side: \"before\"\n}));\n/**\nCreate a line number gutter extension.\n*/\nfunction lineNumbers(config = {}) {\n return [\n lineNumberConfig.of(config),\n gutters(),\n lineNumberGutter\n ];\n}\nfunction maxLineNumber(lines) {\n let last = 9;\n while (last < lines)\n last = last * 10 + 9;\n return last;\n}\nconst activeLineGutterMarker = /*@__PURE__*/new class extends GutterMarker {\n constructor() {\n super(...arguments);\n this.elementClass = \"cm-activeLineGutter\";\n }\n};\nconst activeLineGutterHighlighter = /*@__PURE__*/gutterLineClass.compute([\"selection\"], state => {\n let marks = [], last = -1;\n for (let range of state.selection.ranges) {\n let linePos = state.doc.lineAt(range.head).from;\n if (linePos > last) {\n last = linePos;\n marks.push(activeLineGutterMarker.range(linePos));\n }\n }\n return RangeSet.of(marks);\n});\n/**\nReturns an extension that adds a `cm-activeLineGutter` class to\nall gutter elements on the [active\nline](https://codemirror.net/6/docs/ref/#view.highlightActiveLine).\n*/\nfunction highlightActiveLineGutter() {\n return activeLineGutterHighlighter;\n}\n\nfunction matcher(decorator) {\n return ViewPlugin.define(view => ({\n decorations: decorator.createDeco(view),\n update(u) {\n this.decorations = decorator.updateDeco(u, this.decorations);\n },\n }), {\n decorations: v => v.decorations\n });\n}\nconst tabDeco = /*@__PURE__*/Decoration.mark({ class: \"cm-highlightTab\" });\nconst spaceDeco = /*@__PURE__*/Decoration.mark({ class: \"cm-highlightSpace\" });\nconst whitespaceHighlighter = /*@__PURE__*/matcher(/*@__PURE__*/new MatchDecorator({\n regexp: /\\t| /g,\n decoration: match => match[0] == \"\\t\" ? tabDeco : spaceDeco,\n boundary: /\\S/,\n}));\n/**\nReturns an extension that highlights whitespace, adding a\n`cm-highlightSpace` class to stretches of spaces, and a\n`cm-highlightTab` class to individual tab characters. By default,\nthe former are shown as faint dots, and the latter as arrows.\n*/\nfunction highlightWhitespace() {\n return whitespaceHighlighter;\n}\nconst trailingHighlighter = /*@__PURE__*/matcher(/*@__PURE__*/new MatchDecorator({\n regexp: /\\s+$/g,\n decoration: /*@__PURE__*/Decoration.mark({ class: \"cm-trailingSpace\" })\n}));\n/**\nReturns an extension that adds a `cm-trailingSpace` class to all\ntrailing whitespace.\n*/\nfunction highlightTrailingWhitespace() {\n return trailingHighlighter;\n}\n\n/**\n@internal\n*/\nconst __test = { HeightMap, HeightOracle, MeasuredHeights, QueryType, ChangedRange, computeOrder,\n moveVisually, clearHeightChangeFlag, getHeightChangeFlag: () => heightChangeFlag };\n\nexport { BidiSpan, BlockInfo, BlockType, BlockWrapper, Decoration, Direction, EditorView, GutterMarker, MatchDecorator, RectangleMarker, ViewPlugin, ViewUpdate, WidgetType, __test, closeHoverTooltips, crosshairCursor, drawSelection, dropCursor, getDialog, getDrawSelectionConfig, getPanel, getTooltip, gutter, gutterLineClass, gutterWidgetClass, gutters, hasHoverTooltips, highlightActiveLine, highlightActiveLineGutter, highlightSpecialChars, highlightTrailingWhitespace, highlightWhitespace, hoverTooltip, keymap, layer, lineNumberMarkers, lineNumberWidgetMarker, lineNumbers, logException, panels, placeholder, rectangularSelection, repositionTooltips, runScopeHandlers, scrollPastEnd, showDialog, showPanel, showTooltip, tooltips };\n", "/**\nThe default maximum length of a `TreeBuffer` node.\n*/\nconst DefaultBufferLength = 1024;\nlet nextPropID = 0;\nclass Range {\n constructor(from, to) {\n this.from = from;\n this.to = to;\n }\n}\n/**\nEach [node type](#common.NodeType) or [individual tree](#common.Tree)\ncan have metadata associated with it in props. Instances of this\nclass represent prop names.\n*/\nclass NodeProp {\n /**\n Create a new node prop type.\n */\n constructor(config = {}) {\n this.id = nextPropID++;\n this.perNode = !!config.perNode;\n this.deserialize = config.deserialize || (() => {\n throw new Error(\"This node type doesn't define a deserialize function\");\n });\n this.combine = config.combine || null;\n }\n /**\n This is meant to be used with\n [`NodeSet.extend`](#common.NodeSet.extend) or\n [`LRParser.configure`](#lr.ParserConfig.props) to compute\n prop values for each node type in the set. Takes a [match\n object](#common.NodeType^match) or function that returns undefined\n if the node type doesn't get this prop, and the prop's value if\n it does.\n */\n add(match) {\n if (this.perNode)\n throw new RangeError(\"Can't add per-node props to node types\");\n if (typeof match != \"function\")\n match = NodeType.match(match);\n return (type) => {\n let result = match(type);\n return result === undefined ? null : [this, result];\n };\n }\n}\n/**\nProp that is used to describe matching delimiters. For opening\ndelimiters, this holds an array of node names (written as a\nspace-separated string when declaring this prop in a grammar)\nfor the node types of closing delimiters that match it.\n*/\nNodeProp.closedBy = new NodeProp({ deserialize: str => str.split(\" \") });\n/**\nThe inverse of [`closedBy`](#common.NodeProp^closedBy). This is\nattached to closing delimiters, holding an array of node names\nof types of matching opening delimiters.\n*/\nNodeProp.openedBy = new NodeProp({ deserialize: str => str.split(\" \") });\n/**\nUsed to assign node types to groups (for example, all node\ntypes that represent an expression could be tagged with an\n`\"Expression\"` group).\n*/\nNodeProp.group = new NodeProp({ deserialize: str => str.split(\" \") });\n/**\nAttached to nodes to indicate these should be\n[displayed](https://codemirror.net/docs/ref/#language.syntaxTree)\nin a bidirectional text isolate, so that direction-neutral\ncharacters on their sides don't incorrectly get associated with\nsurrounding text. You'll generally want to set this for nodes\nthat contain arbitrary text, like strings and comments, and for\nnodes that appear _inside_ arbitrary text, like HTML tags. When\nnot given a value, in a grammar declaration, defaults to\n`\"auto\"`.\n*/\nNodeProp.isolate = new NodeProp({ deserialize: value => {\n if (value && value != \"rtl\" && value != \"ltr\" && value != \"auto\")\n throw new RangeError(\"Invalid value for isolate: \" + value);\n return value || \"auto\";\n } });\n/**\nThe hash of the [context](#lr.ContextTracker.constructor)\nthat the node was parsed in, if any. Used to limit reuse of\ncontextual nodes.\n*/\nNodeProp.contextHash = new NodeProp({ perNode: true });\n/**\nThe distance beyond the end of the node that the tokenizer\nlooked ahead for any of the tokens inside the node. (The LR\nparser only stores this when it is larger than 25, for\nefficiency reasons.)\n*/\nNodeProp.lookAhead = new NodeProp({ perNode: true });\n/**\nThis per-node prop is used to replace a given node, or part of a\nnode, with another tree. This is useful to include trees from\ndifferent languages in mixed-language parsers.\n*/\nNodeProp.mounted = new NodeProp({ perNode: true });\n/**\nA mounted tree, which can be [stored](#common.NodeProp^mounted) on\na tree node to indicate that parts of its content are\nrepresented by another tree.\n*/\nclass MountedTree {\n constructor(\n /**\n The inner tree.\n */\n tree, \n /**\n If this is null, this tree replaces the entire node (it will\n be included in the regular iteration instead of its host\n node). If not, only the given ranges are considered to be\n covered by this tree. This is used for trees that are mixed in\n a way that isn't strictly hierarchical. Such mounted trees are\n only entered by [`resolveInner`](#common.Tree.resolveInner)\n and [`enter`](#common.SyntaxNode.enter).\n */\n overlay, \n /**\n The parser used to create this subtree.\n */\n parser, \n /**\n [Indicates](#common.IterMode.EnterBracketed) that the nested\n content is delineated with some kind\n of bracket token.\n */\n bracketed = false) {\n this.tree = tree;\n this.overlay = overlay;\n this.parser = parser;\n this.bracketed = bracketed;\n }\n /**\n @internal\n */\n static get(tree) {\n return tree && tree.props && tree.props[NodeProp.mounted.id];\n }\n}\nconst noProps = Object.create(null);\n/**\nEach node in a syntax tree has a node type associated with it.\n*/\nclass NodeType {\n /**\n @internal\n */\n constructor(\n /**\n The name of the node type. Not necessarily unique, but if the\n grammar was written properly, different node types with the\n same name within a node set should play the same semantic\n role.\n */\n name, \n /**\n @internal\n */\n props, \n /**\n The id of this node in its set. Corresponds to the term ids\n used in the parser.\n */\n id, \n /**\n @internal\n */\n flags = 0) {\n this.name = name;\n this.props = props;\n this.id = id;\n this.flags = flags;\n }\n /**\n Define a node type.\n */\n static define(spec) {\n let props = spec.props && spec.props.length ? Object.create(null) : noProps;\n let flags = (spec.top ? 1 /* NodeFlag.Top */ : 0) | (spec.skipped ? 2 /* NodeFlag.Skipped */ : 0) |\n (spec.error ? 4 /* NodeFlag.Error */ : 0) | (spec.name == null ? 8 /* NodeFlag.Anonymous */ : 0);\n let type = new NodeType(spec.name || \"\", props, spec.id, flags);\n if (spec.props)\n for (let src of spec.props) {\n if (!Array.isArray(src))\n src = src(type);\n if (src) {\n if (src[0].perNode)\n throw new RangeError(\"Can't store a per-node prop on a node type\");\n props[src[0].id] = src[1];\n }\n }\n return type;\n }\n /**\n Retrieves a node prop for this type. Will return `undefined` if\n the prop isn't present on this node.\n */\n prop(prop) { return this.props[prop.id]; }\n /**\n True when this is the top node of a grammar.\n */\n get isTop() { return (this.flags & 1 /* NodeFlag.Top */) > 0; }\n /**\n True when this node is produced by a skip rule.\n */\n get isSkipped() { return (this.flags & 2 /* NodeFlag.Skipped */) > 0; }\n /**\n Indicates whether this is an error node.\n */\n get isError() { return (this.flags & 4 /* NodeFlag.Error */) > 0; }\n /**\n When true, this node type doesn't correspond to a user-declared\n named node, for example because it is used to cache repetition.\n */\n get isAnonymous() { return (this.flags & 8 /* NodeFlag.Anonymous */) > 0; }\n /**\n Returns true when this node's name or one of its\n [groups](#common.NodeProp^group) matches the given string.\n */\n is(name) {\n if (typeof name == 'string') {\n if (this.name == name)\n return true;\n let group = this.prop(NodeProp.group);\n return group ? group.indexOf(name) > -1 : false;\n }\n return this.id == name;\n }\n /**\n Create a function from node types to arbitrary values by\n specifying an object whose property names are node or\n [group](#common.NodeProp^group) names. Often useful with\n [`NodeProp.add`](#common.NodeProp.add). You can put multiple\n names, separated by spaces, in a single property name to map\n multiple node names to a single value.\n */\n static match(map) {\n let direct = Object.create(null);\n for (let prop in map)\n for (let name of prop.split(\" \"))\n direct[name] = map[prop];\n return (node) => {\n for (let groups = node.prop(NodeProp.group), i = -1; i < (groups ? groups.length : 0); i++) {\n let found = direct[i < 0 ? node.name : groups[i]];\n if (found)\n return found;\n }\n };\n }\n}\n/**\nAn empty dummy node type to use when no actual type is available.\n*/\nNodeType.none = new NodeType(\"\", Object.create(null), 0, 8 /* NodeFlag.Anonymous */);\n/**\nA node set holds a collection of node types. It is used to\ncompactly represent trees by storing their type ids, rather than a\nfull pointer to the type object, in a numeric array. Each parser\n[has](#lr.LRParser.nodeSet) a node set, and [tree\nbuffers](#common.TreeBuffer) can only store collections of nodes\nfrom the same set. A set can have a maximum of 2**16 (65536) node\ntypes in it, so that the ids fit into 16-bit typed array slots.\n*/\nclass NodeSet {\n /**\n Create a set with the given types. The `id` property of each\n type should correspond to its position within the array.\n */\n constructor(\n /**\n The node types in this set, by id.\n */\n types) {\n this.types = types;\n for (let i = 0; i < types.length; i++)\n if (types[i].id != i)\n throw new RangeError(\"Node type ids should correspond to array positions when creating a node set\");\n }\n /**\n Create a copy of this set with some node properties added. The\n arguments to this method can be created with\n [`NodeProp.add`](#common.NodeProp.add).\n */\n extend(...props) {\n let newTypes = [];\n for (let type of this.types) {\n let newProps = null;\n for (let source of props) {\n let add = source(type);\n if (add) {\n if (!newProps)\n newProps = Object.assign({}, type.props);\n let value = add[1], prop = add[0];\n if (prop.combine && prop.id in newProps)\n value = prop.combine(newProps[prop.id], value);\n newProps[prop.id] = value;\n }\n }\n newTypes.push(newProps ? new NodeType(type.name, newProps, type.id, type.flags) : type);\n }\n return new NodeSet(newTypes);\n }\n}\nconst CachedNode = new WeakMap(), CachedInnerNode = new WeakMap();\n/**\nOptions that control iteration. Can be combined with the `|`\noperator to enable multiple ones.\n*/\nvar IterMode;\n(function (IterMode) {\n /**\n When enabled, iteration will only visit [`Tree`](#common.Tree)\n objects, not nodes packed into\n [`TreeBuffer`](#common.TreeBuffer)s.\n */\n IterMode[IterMode[\"ExcludeBuffers\"] = 1] = \"ExcludeBuffers\";\n /**\n Enable this to make iteration include anonymous nodes (such as\n the nodes that wrap repeated grammar constructs into a balanced\n tree).\n */\n IterMode[IterMode[\"IncludeAnonymous\"] = 2] = \"IncludeAnonymous\";\n /**\n By default, regular [mounted](#common.NodeProp^mounted) nodes\n replace their base node in iteration. Enable this to ignore them\n instead.\n */\n IterMode[IterMode[\"IgnoreMounts\"] = 4] = \"IgnoreMounts\";\n /**\n This option only applies in\n [`enter`](#common.SyntaxNode.enter)-style methods. It tells the\n library to not enter mounted overlays if one covers the given\n position.\n */\n IterMode[IterMode[\"IgnoreOverlays\"] = 8] = \"IgnoreOverlays\";\n /**\n When set, positions on the boundary of a mounted overlay tree\n that has its [`bracketed`](#common.NestedParse.bracketed) flag\n set will enter that tree regardless of side. Only supported in\n [`enter`](#common.SyntaxNode.enter), not in cursors.\n */\n IterMode[IterMode[\"EnterBracketed\"] = 16] = \"EnterBracketed\";\n})(IterMode || (IterMode = {}));\n/**\nA piece of syntax tree. There are two ways to approach these\ntrees: the way they are actually stored in memory, and the\nconvenient way.\n\nSyntax trees are stored as a tree of `Tree` and `TreeBuffer`\nobjects. By packing detail information into `TreeBuffer` leaf\nnodes, the representation is made a lot more memory-efficient.\n\nHowever, when you want to actually work with tree nodes, this\nrepresentation is very awkward, so most client code will want to\nuse the [`TreeCursor`](#common.TreeCursor) or\n[`SyntaxNode`](#common.SyntaxNode) interface instead, which provides\na view on some part of this data structure, and can be used to\nmove around to adjacent nodes.\n*/\nclass Tree {\n /**\n Construct a new tree. See also [`Tree.build`](#common.Tree^build).\n */\n constructor(\n /**\n The type of the top node.\n */\n type, \n /**\n This node's child nodes.\n */\n children, \n /**\n The positions (offsets relative to the start of this tree) of\n the children.\n */\n positions, \n /**\n The total length of this tree\n */\n length, \n /**\n Per-node [node props](#common.NodeProp) to associate with this node.\n */\n props) {\n this.type = type;\n this.children = children;\n this.positions = positions;\n this.length = length;\n /**\n @internal\n */\n this.props = null;\n if (props && props.length) {\n this.props = Object.create(null);\n for (let [prop, value] of props)\n this.props[typeof prop == \"number\" ? prop : prop.id] = value;\n }\n }\n /**\n @internal\n */\n toString() {\n let mounted = MountedTree.get(this);\n if (mounted && !mounted.overlay)\n return mounted.tree.toString();\n let children = \"\";\n for (let ch of this.children) {\n let str = ch.toString();\n if (str) {\n if (children)\n children += \",\";\n children += str;\n }\n }\n return !this.type.name ? children :\n (/\\W/.test(this.type.name) && !this.type.isError ? JSON.stringify(this.type.name) : this.type.name) +\n (children.length ? \"(\" + children + \")\" : \"\");\n }\n /**\n Get a [tree cursor](#common.TreeCursor) positioned at the top of\n the tree. Mode can be used to [control](#common.IterMode) which\n nodes the cursor visits.\n */\n cursor(mode = 0) {\n return new TreeCursor(this.topNode, mode);\n }\n /**\n Get a [tree cursor](#common.TreeCursor) pointing into this tree\n at the given position and side (see\n [`moveTo`](#common.TreeCursor.moveTo).\n */\n cursorAt(pos, side = 0, mode = 0) {\n let scope = CachedNode.get(this) || this.topNode;\n let cursor = new TreeCursor(scope);\n cursor.moveTo(pos, side);\n CachedNode.set(this, cursor._tree);\n return cursor;\n }\n /**\n Get a [syntax node](#common.SyntaxNode) object for the top of the\n tree.\n */\n get topNode() {\n return new TreeNode(this, 0, 0, null);\n }\n /**\n Get the [syntax node](#common.SyntaxNode) at the given position.\n If `side` is -1, this will move into nodes that end at the\n position. If 1, it'll move into nodes that start at the\n position. With 0, it'll only enter nodes that cover the position\n from both sides.\n \n Note that this will not enter\n [overlays](#common.MountedTree.overlay), and you often want\n [`resolveInner`](#common.Tree.resolveInner) instead.\n */\n resolve(pos, side = 0) {\n let node = resolveNode(CachedNode.get(this) || this.topNode, pos, side, false);\n CachedNode.set(this, node);\n return node;\n }\n /**\n Like [`resolve`](#common.Tree.resolve), but will enter\n [overlaid](#common.MountedTree.overlay) nodes, producing a syntax node\n pointing into the innermost overlaid tree at the given position\n (with parent links going through all parent structure, including\n the host trees).\n */\n resolveInner(pos, side = 0) {\n let node = resolveNode(CachedInnerNode.get(this) || this.topNode, pos, side, true);\n CachedInnerNode.set(this, node);\n return node;\n }\n /**\n In some situations, it can be useful to iterate through all\n nodes around a position, including those in overlays that don't\n directly cover the position. This method gives you an iterator\n that will produce all nodes, from small to big, around the given\n position.\n */\n resolveStack(pos, side = 0) {\n return stackIterator(this, pos, side);\n }\n /**\n Iterate over the tree and its children, calling `enter` for any\n node that touches the `from`/`to` region (if given) before\n running over such a node's children, and `leave` (if given) when\n leaving the node. When `enter` returns `false`, that node will\n not have its children iterated over (or `leave` called).\n */\n iterate(spec) {\n let { enter, leave, from = 0, to = this.length } = spec;\n let mode = spec.mode || 0, anon = (mode & IterMode.IncludeAnonymous) > 0;\n for (let c = this.cursor(mode | IterMode.IncludeAnonymous);;) {\n let entered = false;\n if (c.from <= to && c.to >= from && (!anon && c.type.isAnonymous || enter(c) !== false)) {\n if (c.firstChild())\n continue;\n entered = true;\n }\n for (;;) {\n if (entered && leave && (anon || !c.type.isAnonymous))\n leave(c);\n if (c.nextSibling())\n break;\n if (!c.parent())\n return;\n entered = true;\n }\n }\n }\n /**\n Get the value of the given [node prop](#common.NodeProp) for this\n node. Works with both per-node and per-type props.\n */\n prop(prop) {\n return !prop.perNode ? this.type.prop(prop) : this.props ? this.props[prop.id] : undefined;\n }\n /**\n Returns the node's [per-node props](#common.NodeProp.perNode) in a\n format that can be passed to the [`Tree`](#common.Tree)\n constructor.\n */\n get propValues() {\n let result = [];\n if (this.props)\n for (let id in this.props)\n result.push([+id, this.props[id]]);\n return result;\n }\n /**\n Balance the direct children of this tree, producing a copy of\n which may have children grouped into subtrees with type\n [`NodeType.none`](#common.NodeType^none).\n */\n balance(config = {}) {\n return this.children.length <= 8 /* Balance.BranchFactor */ ? this :\n balanceRange(NodeType.none, this.children, this.positions, 0, this.children.length, 0, this.length, (children, positions, length) => new Tree(this.type, children, positions, length, this.propValues), config.makeTree || ((children, positions, length) => new Tree(NodeType.none, children, positions, length)));\n }\n /**\n Build a tree from a postfix-ordered buffer of node information,\n or a cursor over such a buffer.\n */\n static build(data) { return buildTree(data); }\n}\n/**\nThe empty tree\n*/\nTree.empty = new Tree(NodeType.none, [], [], 0);\nclass FlatBufferCursor {\n constructor(buffer, index) {\n this.buffer = buffer;\n this.index = index;\n }\n get id() { return this.buffer[this.index - 4]; }\n get start() { return this.buffer[this.index - 3]; }\n get end() { return this.buffer[this.index - 2]; }\n get size() { return this.buffer[this.index - 1]; }\n get pos() { return this.index; }\n next() { this.index -= 4; }\n fork() { return new FlatBufferCursor(this.buffer, this.index); }\n}\n/**\nTree buffers contain (type, start, end, endIndex) quads for each\nnode. In such a buffer, nodes are stored in prefix order (parents\nbefore children, with the endIndex of the parent indicating which\nchildren belong to it).\n*/\nclass TreeBuffer {\n /**\n Create a tree buffer.\n */\n constructor(\n /**\n The buffer's content.\n */\n buffer, \n /**\n The total length of the group of nodes in the buffer.\n */\n length, \n /**\n The node set used in this buffer.\n */\n set) {\n this.buffer = buffer;\n this.length = length;\n this.set = set;\n }\n /**\n @internal\n */\n get type() { return NodeType.none; }\n /**\n @internal\n */\n toString() {\n let result = [];\n for (let index = 0; index < this.buffer.length;) {\n result.push(this.childString(index));\n index = this.buffer[index + 3];\n }\n return result.join(\",\");\n }\n /**\n @internal\n */\n childString(index) {\n let id = this.buffer[index], endIndex = this.buffer[index + 3];\n let type = this.set.types[id], result = type.name;\n if (/\\W/.test(result) && !type.isError)\n result = JSON.stringify(result);\n index += 4;\n if (endIndex == index)\n return result;\n let children = [];\n while (index < endIndex) {\n children.push(this.childString(index));\n index = this.buffer[index + 3];\n }\n return result + \"(\" + children.join(\",\") + \")\";\n }\n /**\n @internal\n */\n findChild(startIndex, endIndex, dir, pos, side) {\n let { buffer } = this, pick = -1;\n for (let i = startIndex; i != endIndex; i = buffer[i + 3]) {\n if (checkSide(side, pos, buffer[i + 1], buffer[i + 2])) {\n pick = i;\n if (dir > 0)\n break;\n }\n }\n return pick;\n }\n /**\n @internal\n */\n slice(startI, endI, from) {\n let b = this.buffer;\n let copy = new Uint16Array(endI - startI), len = 0;\n for (let i = startI, j = 0; i < endI;) {\n copy[j++] = b[i++];\n copy[j++] = b[i++] - from;\n let to = copy[j++] = b[i++] - from;\n copy[j++] = b[i++] - startI;\n len = Math.max(len, to);\n }\n return new TreeBuffer(copy, len, this.set);\n }\n}\nfunction checkSide(side, pos, from, to) {\n switch (side) {\n case -2 /* Side.Before */: return from < pos;\n case -1 /* Side.AtOrBefore */: return to >= pos && from < pos;\n case 0 /* Side.Around */: return from < pos && to > pos;\n case 1 /* Side.AtOrAfter */: return from <= pos && to > pos;\n case 2 /* Side.After */: return to > pos;\n case 4 /* Side.DontCare */: return true;\n }\n}\nfunction resolveNode(node, pos, side, overlays) {\n var _a;\n // Move up to a node that actually holds the position, if possible\n while (node.from == node.to ||\n (side < 1 ? node.from >= pos : node.from > pos) ||\n (side > -1 ? node.to <= pos : node.to < pos)) {\n let parent = !overlays && node instanceof TreeNode && node.index < 0 ? null : node.parent;\n if (!parent)\n return node;\n node = parent;\n }\n let mode = overlays ? 0 : IterMode.IgnoreOverlays;\n // Must go up out of overlays when those do not overlap with pos\n if (overlays)\n for (let scan = node, parent = scan.parent; parent; scan = parent, parent = scan.parent) {\n if (scan instanceof TreeNode && scan.index < 0 && ((_a = parent.enter(pos, side, mode)) === null || _a === void 0 ? void 0 : _a.from) != scan.from)\n node = parent;\n }\n for (;;) {\n let inner = node.enter(pos, side, mode);\n if (!inner)\n return node;\n node = inner;\n }\n}\nclass BaseNode {\n cursor(mode = 0) { return new TreeCursor(this, mode); }\n getChild(type, before = null, after = null) {\n let r = getChildren(this, type, before, after);\n return r.length ? r[0] : null;\n }\n getChildren(type, before = null, after = null) {\n return getChildren(this, type, before, after);\n }\n resolve(pos, side = 0) {\n return resolveNode(this, pos, side, false);\n }\n resolveInner(pos, side = 0) {\n return resolveNode(this, pos, side, true);\n }\n matchContext(context) {\n return matchNodeContext(this.parent, context);\n }\n enterUnfinishedNodesBefore(pos) {\n let scan = this.childBefore(pos), node = this;\n while (scan) {\n let last = scan.lastChild;\n if (!last || last.to != scan.to)\n break;\n if (last.type.isError && last.from == last.to) {\n node = scan;\n scan = last.prevSibling;\n }\n else {\n scan = last;\n }\n }\n return node;\n }\n get node() { return this; }\n get next() { return this.parent; }\n}\nclass TreeNode extends BaseNode {\n constructor(_tree, from, \n // Index in parent node, set to -1 if the node is not a direct child of _parent.node (overlay)\n index, _parent) {\n super();\n this._tree = _tree;\n this.from = from;\n this.index = index;\n this._parent = _parent;\n }\n get type() { return this._tree.type; }\n get name() { return this._tree.type.name; }\n get to() { return this.from + this._tree.length; }\n nextChild(i, dir, pos, side, mode = 0) {\n var _a;\n for (let parent = this;;) {\n for (let { children, positions } = parent._tree, e = dir > 0 ? children.length : -1; i != e; i += dir) {\n let next = children[i], start = positions[i] + parent.from;\n if (!((mode & IterMode.EnterBracketed) && next instanceof Tree &&\n ((_a = MountedTree.get(next)) === null || _a === void 0 ? void 0 : _a.overlay) === null && (start >= pos || start + next.length <= pos)) &&\n !checkSide(side, pos, start, start + next.length))\n continue;\n if (next instanceof TreeBuffer) {\n if (mode & IterMode.ExcludeBuffers)\n continue;\n let index = next.findChild(0, next.buffer.length, dir, pos - start, side);\n if (index > -1)\n return new BufferNode(new BufferContext(parent, next, i, start), null, index);\n }\n else if ((mode & IterMode.IncludeAnonymous) || (!next.type.isAnonymous || hasChild(next))) {\n let mounted;\n if (!(mode & IterMode.IgnoreMounts) && (mounted = MountedTree.get(next)) && !mounted.overlay)\n return new TreeNode(mounted.tree, start, i, parent);\n let inner = new TreeNode(next, start, i, parent);\n return (mode & IterMode.IncludeAnonymous) || !inner.type.isAnonymous ? inner\n : inner.nextChild(dir < 0 ? next.children.length - 1 : 0, dir, pos, side, mode);\n }\n }\n if ((mode & IterMode.IncludeAnonymous) || !parent.type.isAnonymous)\n return null;\n if (parent.index >= 0)\n i = parent.index + dir;\n else\n i = dir < 0 ? -1 : parent._parent._tree.children.length;\n parent = parent._parent;\n if (!parent)\n return null;\n }\n }\n get firstChild() { return this.nextChild(0, 1, 0, 4 /* Side.DontCare */); }\n get lastChild() { return this.nextChild(this._tree.children.length - 1, -1, 0, 4 /* Side.DontCare */); }\n childAfter(pos) { return this.nextChild(0, 1, pos, 2 /* Side.After */); }\n childBefore(pos) { return this.nextChild(this._tree.children.length - 1, -1, pos, -2 /* Side.Before */); }\n prop(prop) { return this._tree.prop(prop); }\n enter(pos, side, mode = 0) {\n let mounted;\n if (!(mode & IterMode.IgnoreOverlays) && (mounted = MountedTree.get(this._tree)) && mounted.overlay) {\n let rPos = pos - this.from, enterBracketed = (mode & IterMode.EnterBracketed) && mounted.bracketed;\n for (let { from, to } of mounted.overlay) {\n if ((side > 0 || enterBracketed ? from <= rPos : from < rPos) &&\n (side < 0 || enterBracketed ? to >= rPos : to > rPos))\n return new TreeNode(mounted.tree, mounted.overlay[0].from + this.from, -1, this);\n }\n }\n return this.nextChild(0, 1, pos, side, mode);\n }\n nextSignificantParent() {\n let val = this;\n while (val.type.isAnonymous && val._parent)\n val = val._parent;\n return val;\n }\n get parent() {\n return this._parent ? this._parent.nextSignificantParent() : null;\n }\n get nextSibling() {\n return this._parent && this.index >= 0 ? this._parent.nextChild(this.index + 1, 1, 0, 4 /* Side.DontCare */) : null;\n }\n get prevSibling() {\n return this._parent && this.index >= 0 ? this._parent.nextChild(this.index - 1, -1, 0, 4 /* Side.DontCare */) : null;\n }\n get tree() { return this._tree; }\n toTree() { return this._tree; }\n /**\n @internal\n */\n toString() { return this._tree.toString(); }\n}\nfunction getChildren(node, type, before, after) {\n let cur = node.cursor(), result = [];\n if (!cur.firstChild())\n return result;\n if (before != null)\n for (let found = false; !found;) {\n found = cur.type.is(before);\n if (!cur.nextSibling())\n return result;\n }\n for (;;) {\n if (after != null && cur.type.is(after))\n return result;\n if (cur.type.is(type))\n result.push(cur.node);\n if (!cur.nextSibling())\n return after == null ? result : [];\n }\n}\nfunction matchNodeContext(node, context, i = context.length - 1) {\n for (let p = node; i >= 0; p = p.parent) {\n if (!p)\n return false;\n if (!p.type.isAnonymous) {\n if (context[i] && context[i] != p.name)\n return false;\n i--;\n }\n }\n return true;\n}\nclass BufferContext {\n constructor(parent, buffer, index, start) {\n this.parent = parent;\n this.buffer = buffer;\n this.index = index;\n this.start = start;\n }\n}\nclass BufferNode extends BaseNode {\n get name() { return this.type.name; }\n get from() { return this.context.start + this.context.buffer.buffer[this.index + 1]; }\n get to() { return this.context.start + this.context.buffer.buffer[this.index + 2]; }\n constructor(context, _parent, index) {\n super();\n this.context = context;\n this._parent = _parent;\n this.index = index;\n this.type = context.buffer.set.types[context.buffer.buffer[index]];\n }\n child(dir, pos, side) {\n let { buffer } = this.context;\n let index = buffer.findChild(this.index + 4, buffer.buffer[this.index + 3], dir, pos - this.context.start, side);\n return index < 0 ? null : new BufferNode(this.context, this, index);\n }\n get firstChild() { return this.child(1, 0, 4 /* Side.DontCare */); }\n get lastChild() { return this.child(-1, 0, 4 /* Side.DontCare */); }\n childAfter(pos) { return this.child(1, pos, 2 /* Side.After */); }\n childBefore(pos) { return this.child(-1, pos, -2 /* Side.Before */); }\n prop(prop) { return this.type.prop(prop); }\n enter(pos, side, mode = 0) {\n if (mode & IterMode.ExcludeBuffers)\n return null;\n let { buffer } = this.context;\n let index = buffer.findChild(this.index + 4, buffer.buffer[this.index + 3], side > 0 ? 1 : -1, pos - this.context.start, side);\n return index < 0 ? null : new BufferNode(this.context, this, index);\n }\n get parent() {\n return this._parent || this.context.parent.nextSignificantParent();\n }\n externalSibling(dir) {\n return this._parent ? null : this.context.parent.nextChild(this.context.index + dir, dir, 0, 4 /* Side.DontCare */);\n }\n get nextSibling() {\n let { buffer } = this.context;\n let after = buffer.buffer[this.index + 3];\n if (after < (this._parent ? buffer.buffer[this._parent.index + 3] : buffer.buffer.length))\n return new BufferNode(this.context, this._parent, after);\n return this.externalSibling(1);\n }\n get prevSibling() {\n let { buffer } = this.context;\n let parentStart = this._parent ? this._parent.index + 4 : 0;\n if (this.index == parentStart)\n return this.externalSibling(-1);\n return new BufferNode(this.context, this._parent, buffer.findChild(parentStart, this.index, -1, 0, 4 /* Side.DontCare */));\n }\n get tree() { return null; }\n toTree() {\n let children = [], positions = [];\n let { buffer } = this.context;\n let startI = this.index + 4, endI = buffer.buffer[this.index + 3];\n if (endI > startI) {\n let from = buffer.buffer[this.index + 1];\n children.push(buffer.slice(startI, endI, from));\n positions.push(0);\n }\n return new Tree(this.type, children, positions, this.to - this.from);\n }\n /**\n @internal\n */\n toString() { return this.context.buffer.childString(this.index); }\n}\nfunction iterStack(heads) {\n if (!heads.length)\n return null;\n let pick = 0, picked = heads[0];\n for (let i = 1; i < heads.length; i++) {\n let node = heads[i];\n if (node.from > picked.from || node.to < picked.to) {\n picked = node;\n pick = i;\n }\n }\n let next = picked instanceof TreeNode && picked.index < 0 ? null : picked.parent;\n let newHeads = heads.slice();\n if (next)\n newHeads[pick] = next;\n else\n newHeads.splice(pick, 1);\n return new StackIterator(newHeads, picked);\n}\nclass StackIterator {\n constructor(heads, node) {\n this.heads = heads;\n this.node = node;\n }\n get next() { return iterStack(this.heads); }\n}\nfunction stackIterator(tree, pos, side) {\n let inner = tree.resolveInner(pos, side), layers = null;\n for (let scan = inner instanceof TreeNode ? inner : inner.context.parent; scan; scan = scan.parent) {\n if (scan.index < 0) { // This is an overlay root\n let parent = scan.parent;\n (layers || (layers = [inner])).push(parent.resolve(pos, side));\n scan = parent;\n }\n else {\n let mount = MountedTree.get(scan.tree);\n // Relevant overlay branching off\n if (mount && mount.overlay && mount.overlay[0].from <= pos && mount.overlay[mount.overlay.length - 1].to >= pos) {\n let root = new TreeNode(mount.tree, mount.overlay[0].from + scan.from, -1, scan);\n (layers || (layers = [inner])).push(resolveNode(root, pos, side, false));\n }\n }\n }\n return layers ? iterStack(layers) : inner;\n}\n/**\nA tree cursor object focuses on a given node in a syntax tree, and\nallows you to move to adjacent nodes.\n*/\nclass TreeCursor {\n /**\n Shorthand for `.type.name`.\n */\n get name() { return this.type.name; }\n /**\n @internal\n */\n constructor(node, mode = 0) {\n /**\n @internal\n */\n this.buffer = null;\n this.stack = [];\n /**\n @internal\n */\n this.index = 0;\n this.bufferNode = null;\n this.mode = mode & ~IterMode.EnterBracketed;\n if (node instanceof TreeNode) {\n this.yieldNode(node);\n }\n else {\n this._tree = node.context.parent;\n this.buffer = node.context;\n for (let n = node._parent; n; n = n._parent)\n this.stack.unshift(n.index);\n this.bufferNode = node;\n this.yieldBuf(node.index);\n }\n }\n yieldNode(node) {\n if (!node)\n return false;\n this._tree = node;\n this.type = node.type;\n this.from = node.from;\n this.to = node.to;\n return true;\n }\n yieldBuf(index, type) {\n this.index = index;\n let { start, buffer } = this.buffer;\n this.type = type || buffer.set.types[buffer.buffer[index]];\n this.from = start + buffer.buffer[index + 1];\n this.to = start + buffer.buffer[index + 2];\n return true;\n }\n /**\n @internal\n */\n yield(node) {\n if (!node)\n return false;\n if (node instanceof TreeNode) {\n this.buffer = null;\n return this.yieldNode(node);\n }\n this.buffer = node.context;\n return this.yieldBuf(node.index, node.type);\n }\n /**\n @internal\n */\n toString() {\n return this.buffer ? this.buffer.buffer.childString(this.index) : this._tree.toString();\n }\n /**\n @internal\n */\n enterChild(dir, pos, side) {\n if (!this.buffer)\n return this.yield(this._tree.nextChild(dir < 0 ? this._tree._tree.children.length - 1 : 0, dir, pos, side, this.mode));\n let { buffer } = this.buffer;\n let index = buffer.findChild(this.index + 4, buffer.buffer[this.index + 3], dir, pos - this.buffer.start, side);\n if (index < 0)\n return false;\n this.stack.push(this.index);\n return this.yieldBuf(index);\n }\n /**\n Move the cursor to this node's first child. When this returns\n false, the node has no child, and the cursor has not been moved.\n */\n firstChild() { return this.enterChild(1, 0, 4 /* Side.DontCare */); }\n /**\n Move the cursor to this node's last child.\n */\n lastChild() { return this.enterChild(-1, 0, 4 /* Side.DontCare */); }\n /**\n Move the cursor to the first child that ends after `pos`.\n */\n childAfter(pos) { return this.enterChild(1, pos, 2 /* Side.After */); }\n /**\n Move to the last child that starts before `pos`.\n */\n childBefore(pos) { return this.enterChild(-1, pos, -2 /* Side.Before */); }\n /**\n Move the cursor to the child around `pos`. If side is -1 the\n child may end at that position, when 1 it may start there. This\n will also enter [overlaid](#common.MountedTree.overlay)\n [mounted](#common.NodeProp^mounted) trees unless `overlays` is\n set to false.\n */\n enter(pos, side, mode = this.mode) {\n if (!this.buffer)\n return this.yield(this._tree.enter(pos, side, mode));\n return mode & IterMode.ExcludeBuffers ? false : this.enterChild(1, pos, side);\n }\n /**\n Move to the node's parent node, if this isn't the top node.\n */\n parent() {\n if (!this.buffer)\n return this.yieldNode((this.mode & IterMode.IncludeAnonymous) ? this._tree._parent : this._tree.parent);\n if (this.stack.length)\n return this.yieldBuf(this.stack.pop());\n let parent = (this.mode & IterMode.IncludeAnonymous) ? this.buffer.parent : this.buffer.parent.nextSignificantParent();\n this.buffer = null;\n return this.yieldNode(parent);\n }\n /**\n @internal\n */\n sibling(dir) {\n if (!this.buffer)\n return !this._tree._parent ? false\n : this.yield(this._tree.index < 0 ? null\n : this._tree._parent.nextChild(this._tree.index + dir, dir, 0, 4 /* Side.DontCare */, this.mode));\n let { buffer } = this.buffer, d = this.stack.length - 1;\n if (dir < 0) {\n let parentStart = d < 0 ? 0 : this.stack[d] + 4;\n if (this.index != parentStart)\n return this.yieldBuf(buffer.findChild(parentStart, this.index, -1, 0, 4 /* Side.DontCare */));\n }\n else {\n let after = buffer.buffer[this.index + 3];\n if (after < (d < 0 ? buffer.buffer.length : buffer.buffer[this.stack[d] + 3]))\n return this.yieldBuf(after);\n }\n return d < 0 ? this.yield(this.buffer.parent.nextChild(this.buffer.index + dir, dir, 0, 4 /* Side.DontCare */, this.mode)) : false;\n }\n /**\n Move to this node's next sibling, if any.\n */\n nextSibling() { return this.sibling(1); }\n /**\n Move to this node's previous sibling, if any.\n */\n prevSibling() { return this.sibling(-1); }\n atLastNode(dir) {\n let index, parent, { buffer } = this;\n if (buffer) {\n if (dir > 0) {\n if (this.index < buffer.buffer.buffer.length)\n return false;\n }\n else {\n for (let i = 0; i < this.index; i++)\n if (buffer.buffer.buffer[i + 3] < this.index)\n return false;\n }\n ({ index, parent } = buffer);\n }\n else {\n ({ index, _parent: parent } = this._tree);\n }\n for (; parent; { index, _parent: parent } = parent) {\n if (index > -1)\n for (let i = index + dir, e = dir < 0 ? -1 : parent._tree.children.length; i != e; i += dir) {\n let child = parent._tree.children[i];\n if ((this.mode & IterMode.IncludeAnonymous) ||\n child instanceof TreeBuffer ||\n !child.type.isAnonymous ||\n hasChild(child))\n return false;\n }\n }\n return true;\n }\n move(dir, enter) {\n if (enter && this.enterChild(dir, 0, 4 /* Side.DontCare */))\n return true;\n for (;;) {\n if (this.sibling(dir))\n return true;\n if (this.atLastNode(dir) || !this.parent())\n return false;\n }\n }\n /**\n Move to the next node in a\n [pre-order](https://en.wikipedia.org/wiki/Tree_traversal#Pre-order,_NLR)\n traversal, going from a node to its first child or, if the\n current node is empty or `enter` is false, its next sibling or\n the next sibling of the first parent node that has one.\n */\n next(enter = true) { return this.move(1, enter); }\n /**\n Move to the next node in a last-to-first pre-order traversal. A\n node is followed by its last child or, if it has none, its\n previous sibling or the previous sibling of the first parent\n node that has one.\n */\n prev(enter = true) { return this.move(-1, enter); }\n /**\n Move the cursor to the innermost node that covers `pos`. If\n `side` is -1, it will enter nodes that end at `pos`. If it is 1,\n it will enter nodes that start at `pos`.\n */\n moveTo(pos, side = 0) {\n // Move up to a node that actually holds the position, if possible\n while (this.from == this.to ||\n (side < 1 ? this.from >= pos : this.from > pos) ||\n (side > -1 ? this.to <= pos : this.to < pos))\n if (!this.parent())\n break;\n // Then scan down into child nodes as far as possible\n while (this.enterChild(1, pos, side)) { }\n return this;\n }\n /**\n Get a [syntax node](#common.SyntaxNode) at the cursor's current\n position.\n */\n get node() {\n if (!this.buffer)\n return this._tree;\n let cache = this.bufferNode, result = null, depth = 0;\n if (cache && cache.context == this.buffer) {\n scan: for (let index = this.index, d = this.stack.length; d >= 0;) {\n for (let c = cache; c; c = c._parent)\n if (c.index == index) {\n if (index == this.index)\n return c;\n result = c;\n depth = d + 1;\n break scan;\n }\n index = this.stack[--d];\n }\n }\n for (let i = depth; i < this.stack.length; i++)\n result = new BufferNode(this.buffer, result, this.stack[i]);\n return this.bufferNode = new BufferNode(this.buffer, result, this.index);\n }\n /**\n Get the [tree](#common.Tree) that represents the current node, if\n any. Will return null when the node is in a [tree\n buffer](#common.TreeBuffer).\n */\n get tree() {\n return this.buffer ? null : this._tree._tree;\n }\n /**\n Iterate over the current node and all its descendants, calling\n `enter` when entering a node and `leave`, if given, when leaving\n one. When `enter` returns `false`, any children of that node are\n skipped, and `leave` isn't called for it.\n */\n iterate(enter, leave) {\n for (let depth = 0;;) {\n let mustLeave = false;\n if (this.type.isAnonymous || enter(this) !== false) {\n if (this.firstChild()) {\n depth++;\n continue;\n }\n if (!this.type.isAnonymous)\n mustLeave = true;\n }\n for (;;) {\n if (mustLeave && leave)\n leave(this);\n mustLeave = this.type.isAnonymous;\n if (!depth)\n return;\n if (this.nextSibling())\n break;\n this.parent();\n depth--;\n mustLeave = true;\n }\n }\n }\n /**\n Test whether the current node matches a given context\u2014a sequence\n of direct parent node names. Empty strings in the context array\n are treated as wildcards.\n */\n matchContext(context) {\n if (!this.buffer)\n return matchNodeContext(this.node.parent, context);\n let { buffer } = this.buffer, { types } = buffer.set;\n for (let i = context.length - 1, d = this.stack.length - 1; i >= 0; d--) {\n if (d < 0)\n return matchNodeContext(this._tree, context, i);\n let type = types[buffer.buffer[this.stack[d]]];\n if (!type.isAnonymous) {\n if (context[i] && context[i] != type.name)\n return false;\n i--;\n }\n }\n return true;\n }\n}\nfunction hasChild(tree) {\n return tree.children.some(ch => ch instanceof TreeBuffer || !ch.type.isAnonymous || hasChild(ch));\n}\nfunction buildTree(data) {\n var _a;\n let { buffer, nodeSet, maxBufferLength = DefaultBufferLength, reused = [], minRepeatType = nodeSet.types.length } = data;\n let cursor = Array.isArray(buffer) ? new FlatBufferCursor(buffer, buffer.length) : buffer;\n let types = nodeSet.types;\n let contextHash = 0, lookAhead = 0;\n function takeNode(parentStart, minPos, children, positions, inRepeat, depth) {\n let { id, start, end, size } = cursor;\n let lookAheadAtStart = lookAhead, contextAtStart = contextHash;\n if (size < 0) {\n cursor.next();\n if (size == -1 /* SpecialRecord.Reuse */) {\n let node = reused[id];\n children.push(node);\n positions.push(start - parentStart);\n return;\n }\n else if (size == -3 /* SpecialRecord.ContextChange */) { // Context change\n contextHash = id;\n return;\n }\n else if (size == -4 /* SpecialRecord.LookAhead */) {\n lookAhead = id;\n return;\n }\n else {\n throw new RangeError(`Unrecognized record size: ${size}`);\n }\n }\n let type = types[id], node, buffer;\n let startPos = start - parentStart;\n if (end - start <= maxBufferLength && (buffer = findBufferSize(cursor.pos - minPos, inRepeat))) {\n // Small enough for a buffer, and no reused nodes inside\n let data = new Uint16Array(buffer.size - buffer.skip);\n let endPos = cursor.pos - buffer.size, index = data.length;\n while (cursor.pos > endPos)\n index = copyToBuffer(buffer.start, data, index);\n node = new TreeBuffer(data, end - buffer.start, nodeSet);\n startPos = buffer.start - parentStart;\n }\n else { // Make it a node\n let endPos = cursor.pos - size;\n cursor.next();\n let localChildren = [], localPositions = [];\n let localInRepeat = id >= minRepeatType ? id : -1;\n let lastGroup = 0, lastEnd = end;\n while (cursor.pos > endPos) {\n if (localInRepeat >= 0 && cursor.id == localInRepeat && cursor.size >= 0) {\n if (cursor.end <= lastEnd - maxBufferLength) {\n makeRepeatLeaf(localChildren, localPositions, start, lastGroup, cursor.end, lastEnd, localInRepeat, lookAheadAtStart, contextAtStart);\n lastGroup = localChildren.length;\n lastEnd = cursor.end;\n }\n cursor.next();\n }\n else if (depth > 2500 /* CutOff.Depth */) {\n takeFlatNode(start, endPos, localChildren, localPositions);\n }\n else {\n takeNode(start, endPos, localChildren, localPositions, localInRepeat, depth + 1);\n }\n }\n if (localInRepeat >= 0 && lastGroup > 0 && lastGroup < localChildren.length)\n makeRepeatLeaf(localChildren, localPositions, start, lastGroup, start, lastEnd, localInRepeat, lookAheadAtStart, contextAtStart);\n localChildren.reverse();\n localPositions.reverse();\n if (localInRepeat > -1 && lastGroup > 0) {\n let make = makeBalanced(type, contextAtStart);\n node = balanceRange(type, localChildren, localPositions, 0, localChildren.length, 0, end - start, make, make);\n }\n else {\n node = makeTree(type, localChildren, localPositions, end - start, lookAheadAtStart - end, contextAtStart);\n }\n }\n children.push(node);\n positions.push(startPos);\n }\n function takeFlatNode(parentStart, minPos, children, positions) {\n let nodes = []; // Temporary, inverted array of leaf nodes found, with absolute positions\n let nodeCount = 0, stopAt = -1;\n while (cursor.pos > minPos) {\n let { id, start, end, size } = cursor;\n if (size > 4) { // Not a leaf\n cursor.next();\n }\n else if (stopAt > -1 && start < stopAt) {\n break;\n }\n else {\n if (stopAt < 0)\n stopAt = end - maxBufferLength;\n nodes.push(id, start, end);\n nodeCount++;\n cursor.next();\n }\n }\n if (nodeCount) {\n let buffer = new Uint16Array(nodeCount * 4);\n let start = nodes[nodes.length - 2];\n for (let i = nodes.length - 3, j = 0; i >= 0; i -= 3) {\n buffer[j++] = nodes[i];\n buffer[j++] = nodes[i + 1] - start;\n buffer[j++] = nodes[i + 2] - start;\n buffer[j++] = j;\n }\n children.push(new TreeBuffer(buffer, nodes[2] - start, nodeSet));\n positions.push(start - parentStart);\n }\n }\n function makeBalanced(type, contextHash) {\n return (children, positions, length) => {\n let lookAhead = 0, lastI = children.length - 1, last, lookAheadProp;\n if (lastI >= 0 && (last = children[lastI]) instanceof Tree) {\n if (!lastI && last.type == type && last.length == length)\n return last;\n if (lookAheadProp = last.prop(NodeProp.lookAhead))\n lookAhead = positions[lastI] + last.length + lookAheadProp;\n }\n return makeTree(type, children, positions, length, lookAhead, contextHash);\n };\n }\n function makeRepeatLeaf(children, positions, base, i, from, to, type, lookAhead, contextHash) {\n let localChildren = [], localPositions = [];\n while (children.length > i) {\n localChildren.push(children.pop());\n localPositions.push(positions.pop() + base - from);\n }\n children.push(makeTree(nodeSet.types[type], localChildren, localPositions, to - from, lookAhead - to, contextHash));\n positions.push(from - base);\n }\n function makeTree(type, children, positions, length, lookAhead, contextHash, props) {\n if (contextHash) {\n let pair = [NodeProp.contextHash, contextHash];\n props = props ? [pair].concat(props) : [pair];\n }\n if (lookAhead > 25) {\n let pair = [NodeProp.lookAhead, lookAhead];\n props = props ? [pair].concat(props) : [pair];\n }\n return new Tree(type, children, positions, length, props);\n }\n function findBufferSize(maxSize, inRepeat) {\n // Scan through the buffer to find previous siblings that fit\n // together in a TreeBuffer, and don't contain any reused nodes\n // (which can't be stored in a buffer).\n // If `inRepeat` is > -1, ignore node boundaries of that type for\n // nesting, but make sure the end falls either at the start\n // (`maxSize`) or before such a node.\n let fork = cursor.fork();\n let size = 0, start = 0, skip = 0, minStart = fork.end - maxBufferLength;\n let result = { size: 0, start: 0, skip: 0 };\n scan: for (let minPos = fork.pos - maxSize; fork.pos > minPos;) {\n let nodeSize = fork.size;\n // Pretend nested repeat nodes of the same type don't exist\n if (fork.id == inRepeat && nodeSize >= 0) {\n // Except that we store the current state as a valid return\n // value.\n result.size = size;\n result.start = start;\n result.skip = skip;\n skip += 4;\n size += 4;\n fork.next();\n continue;\n }\n let startPos = fork.pos - nodeSize;\n if (nodeSize < 0 || startPos < minPos || fork.start < minStart)\n break;\n let localSkipped = fork.id >= minRepeatType ? 4 : 0;\n let nodeStart = fork.start;\n fork.next();\n while (fork.pos > startPos) {\n if (fork.size < 0) {\n if (fork.size == -3 /* SpecialRecord.ContextChange */ || fork.size == -4 /* SpecialRecord.LookAhead */)\n localSkipped += 4;\n else\n break scan;\n }\n else if (fork.id >= minRepeatType) {\n localSkipped += 4;\n }\n fork.next();\n }\n start = nodeStart;\n size += nodeSize;\n skip += localSkipped;\n }\n if (inRepeat < 0 || size == maxSize) {\n result.size = size;\n result.start = start;\n result.skip = skip;\n }\n return result.size > 4 ? result : undefined;\n }\n function copyToBuffer(bufferStart, buffer, index) {\n let { id, start, end, size } = cursor;\n cursor.next();\n if (size >= 0 && id < minRepeatType) {\n let startIndex = index;\n if (size > 4) {\n let endPos = cursor.pos - (size - 4);\n while (cursor.pos > endPos)\n index = copyToBuffer(bufferStart, buffer, index);\n }\n buffer[--index] = startIndex;\n buffer[--index] = end - bufferStart;\n buffer[--index] = start - bufferStart;\n buffer[--index] = id;\n }\n else if (size == -3 /* SpecialRecord.ContextChange */) {\n contextHash = id;\n }\n else if (size == -4 /* SpecialRecord.LookAhead */) {\n lookAhead = id;\n }\n return index;\n }\n let children = [], positions = [];\n while (cursor.pos > 0)\n takeNode(data.start || 0, data.bufferStart || 0, children, positions, -1, 0);\n let length = (_a = data.length) !== null && _a !== void 0 ? _a : (children.length ? positions[0] + children[0].length : 0);\n return new Tree(types[data.topID], children.reverse(), positions.reverse(), length);\n}\nconst nodeSizeCache = new WeakMap;\nfunction nodeSize(balanceType, node) {\n if (!balanceType.isAnonymous || node instanceof TreeBuffer || node.type != balanceType)\n return 1;\n let size = nodeSizeCache.get(node);\n if (size == null) {\n size = 1;\n for (let child of node.children) {\n if (child.type != balanceType || !(child instanceof Tree)) {\n size = 1;\n break;\n }\n size += nodeSize(balanceType, child);\n }\n nodeSizeCache.set(node, size);\n }\n return size;\n}\nfunction balanceRange(\n// The type the balanced tree's inner nodes.\nbalanceType, \n// The direct children and their positions\nchildren, positions, \n// The index range in children/positions to use\nfrom, to, \n// The start position of the nodes, relative to their parent.\nstart, \n// Length of the outer node\nlength, \n// Function to build the top node of the balanced tree\nmkTop, \n// Function to build internal nodes for the balanced tree\nmkTree) {\n let total = 0;\n for (let i = from; i < to; i++)\n total += nodeSize(balanceType, children[i]);\n let maxChild = Math.ceil((total * 1.5) / 8 /* Balance.BranchFactor */);\n let localChildren = [], localPositions = [];\n function divide(children, positions, from, to, offset) {\n for (let i = from; i < to;) {\n let groupFrom = i, groupStart = positions[i], groupSize = nodeSize(balanceType, children[i]);\n i++;\n for (; i < to; i++) {\n let nextSize = nodeSize(balanceType, children[i]);\n if (groupSize + nextSize >= maxChild)\n break;\n groupSize += nextSize;\n }\n if (i == groupFrom + 1) {\n if (groupSize > maxChild) {\n let only = children[groupFrom]; // Only trees can have a size > 1\n divide(only.children, only.positions, 0, only.children.length, positions[groupFrom] + offset);\n continue;\n }\n localChildren.push(children[groupFrom]);\n }\n else {\n let length = positions[i - 1] + children[i - 1].length - groupStart;\n localChildren.push(balanceRange(balanceType, children, positions, groupFrom, i, groupStart, length, null, mkTree));\n }\n localPositions.push(groupStart + offset - start);\n }\n }\n divide(children, positions, from, to, 0);\n return (mkTop || mkTree)(localChildren, localPositions, length);\n}\n/**\nProvides a way to associate values with pieces of trees. As long\nas that part of the tree is reused, the associated values can be\nretrieved from an updated tree.\n*/\nclass NodeWeakMap {\n constructor() {\n this.map = new WeakMap();\n }\n setBuffer(buffer, index, value) {\n let inner = this.map.get(buffer);\n if (!inner)\n this.map.set(buffer, inner = new Map);\n inner.set(index, value);\n }\n getBuffer(buffer, index) {\n let inner = this.map.get(buffer);\n return inner && inner.get(index);\n }\n /**\n Set the value for this syntax node.\n */\n set(node, value) {\n if (node instanceof BufferNode)\n this.setBuffer(node.context.buffer, node.index, value);\n else if (node instanceof TreeNode)\n this.map.set(node.tree, value);\n }\n /**\n Retrieve value for this syntax node, if it exists in the map.\n */\n get(node) {\n return node instanceof BufferNode ? this.getBuffer(node.context.buffer, node.index)\n : node instanceof TreeNode ? this.map.get(node.tree) : undefined;\n }\n /**\n Set the value for the node that a cursor currently points to.\n */\n cursorSet(cursor, value) {\n if (cursor.buffer)\n this.setBuffer(cursor.buffer.buffer, cursor.index, value);\n else\n this.map.set(cursor.tree, value);\n }\n /**\n Retrieve the value for the node that a cursor currently points\n to.\n */\n cursorGet(cursor) {\n return cursor.buffer ? this.getBuffer(cursor.buffer.buffer, cursor.index) : this.map.get(cursor.tree);\n }\n}\n\n/**\nTree fragments are used during [incremental\nparsing](#common.Parser.startParse) to track parts of old trees\nthat can be reused in a new parse. An array of fragments is used\nto track regions of an old tree whose nodes might be reused in new\nparses. Use the static\n[`applyChanges`](#common.TreeFragment^applyChanges) method to\nupdate fragments for document changes.\n*/\nclass TreeFragment {\n /**\n Construct a tree fragment. You'll usually want to use\n [`addTree`](#common.TreeFragment^addTree) and\n [`applyChanges`](#common.TreeFragment^applyChanges) instead of\n calling this directly.\n */\n constructor(\n /**\n The start of the unchanged range pointed to by this fragment.\n This refers to an offset in the _updated_ document (as opposed\n to the original tree).\n */\n from, \n /**\n The end of the unchanged range.\n */\n to, \n /**\n The tree that this fragment is based on.\n */\n tree, \n /**\n The offset between the fragment's tree and the document that\n this fragment can be used against. Add this when going from\n document to tree positions, subtract it to go from tree to\n document positions.\n */\n offset, openStart = false, openEnd = false) {\n this.from = from;\n this.to = to;\n this.tree = tree;\n this.offset = offset;\n this.open = (openStart ? 1 /* Open.Start */ : 0) | (openEnd ? 2 /* Open.End */ : 0);\n }\n /**\n Whether the start of the fragment represents the start of a\n parse, or the end of a change. (In the second case, it may not\n be safe to reuse some nodes at the start, depending on the\n parsing algorithm.)\n */\n get openStart() { return (this.open & 1 /* Open.Start */) > 0; }\n /**\n Whether the end of the fragment represents the end of a\n full-document parse, or the start of a change.\n */\n get openEnd() { return (this.open & 2 /* Open.End */) > 0; }\n /**\n Create a set of fragments from a freshly parsed tree, or update\n an existing set of fragments by replacing the ones that overlap\n with a tree with content from the new tree. When `partial` is\n true, the parse is treated as incomplete, and the resulting\n fragment has [`openEnd`](#common.TreeFragment.openEnd) set to\n true.\n */\n static addTree(tree, fragments = [], partial = false) {\n let result = [new TreeFragment(0, tree.length, tree, 0, false, partial)];\n for (let f of fragments)\n if (f.to > tree.length)\n result.push(f);\n return result;\n }\n /**\n Apply a set of edits to an array of fragments, removing or\n splitting fragments as necessary to remove edited ranges, and\n adjusting offsets for fragments that moved.\n */\n static applyChanges(fragments, changes, minGap = 128) {\n if (!changes.length)\n return fragments;\n let result = [];\n let fI = 1, nextF = fragments.length ? fragments[0] : null;\n for (let cI = 0, pos = 0, off = 0;; cI++) {\n let nextC = cI < changes.length ? changes[cI] : null;\n let nextPos = nextC ? nextC.fromA : 1e9;\n if (nextPos - pos >= minGap)\n while (nextF && nextF.from < nextPos) {\n let cut = nextF;\n if (pos >= cut.from || nextPos <= cut.to || off) {\n let fFrom = Math.max(cut.from, pos) - off, fTo = Math.min(cut.to, nextPos) - off;\n cut = fFrom >= fTo ? null : new TreeFragment(fFrom, fTo, cut.tree, cut.offset + off, cI > 0, !!nextC);\n }\n if (cut)\n result.push(cut);\n if (nextF.to > nextPos)\n break;\n nextF = fI < fragments.length ? fragments[fI++] : null;\n }\n if (!nextC)\n break;\n pos = nextC.toA;\n off = nextC.toA - nextC.toB;\n }\n return result;\n }\n}\n/**\nA superclass that parsers should extend.\n*/\nclass Parser {\n /**\n Start a parse, returning a [partial parse](#common.PartialParse)\n object. [`fragments`](#common.TreeFragment) can be passed in to\n make the parse incremental.\n \n By default, the entire input is parsed. You can pass `ranges`,\n which should be a sorted array of non-empty, non-overlapping\n ranges, to parse only those ranges. The tree returned in that\n case will start at `ranges[0].from`.\n */\n startParse(input, fragments, ranges) {\n if (typeof input == \"string\")\n input = new StringInput(input);\n ranges = !ranges ? [new Range(0, input.length)] : ranges.length ? ranges.map(r => new Range(r.from, r.to)) : [new Range(0, 0)];\n return this.createParse(input, fragments || [], ranges);\n }\n /**\n Run a full parse, returning the resulting tree.\n */\n parse(input, fragments, ranges) {\n let parse = this.startParse(input, fragments, ranges);\n for (;;) {\n let done = parse.advance();\n if (done)\n return done;\n }\n }\n}\nclass StringInput {\n constructor(string) {\n this.string = string;\n }\n get length() { return this.string.length; }\n chunk(from) { return this.string.slice(from); }\n get lineChunks() { return false; }\n read(from, to) { return this.string.slice(from, to); }\n}\n\n/**\nCreate a parse wrapper that, after the inner parse completes,\nscans its tree for mixed language regions with the `nest`\nfunction, runs the resulting [inner parses](#common.NestedParse),\nand then [mounts](#common.NodeProp^mounted) their results onto the\ntree.\n*/\nfunction parseMixed(nest) {\n return (parse, input, fragments, ranges) => new MixedParse(parse, nest, input, fragments, ranges);\n}\nclass InnerParse {\n constructor(parser, parse, overlay, bracketed, target, from) {\n this.parser = parser;\n this.parse = parse;\n this.overlay = overlay;\n this.bracketed = bracketed;\n this.target = target;\n this.from = from;\n }\n}\nfunction checkRanges(ranges) {\n if (!ranges.length || ranges.some(r => r.from >= r.to))\n throw new RangeError(\"Invalid inner parse ranges given: \" + JSON.stringify(ranges));\n}\nclass ActiveOverlay {\n constructor(parser, predicate, mounts, index, start, bracketed, target, prev) {\n this.parser = parser;\n this.predicate = predicate;\n this.mounts = mounts;\n this.index = index;\n this.start = start;\n this.bracketed = bracketed;\n this.target = target;\n this.prev = prev;\n this.depth = 0;\n this.ranges = [];\n }\n}\nconst stoppedInner = new NodeProp({ perNode: true });\nclass MixedParse {\n constructor(base, nest, input, fragments, ranges) {\n this.nest = nest;\n this.input = input;\n this.fragments = fragments;\n this.ranges = ranges;\n this.inner = [];\n this.innerDone = 0;\n this.baseTree = null;\n this.stoppedAt = null;\n this.baseParse = base;\n }\n advance() {\n if (this.baseParse) {\n let done = this.baseParse.advance();\n if (!done)\n return null;\n this.baseParse = null;\n this.baseTree = done;\n this.startInner();\n if (this.stoppedAt != null)\n for (let inner of this.inner)\n inner.parse.stopAt(this.stoppedAt);\n }\n if (this.innerDone == this.inner.length) {\n let result = this.baseTree;\n if (this.stoppedAt != null)\n result = new Tree(result.type, result.children, result.positions, result.length, result.propValues.concat([[stoppedInner, this.stoppedAt]]));\n return result;\n }\n let inner = this.inner[this.innerDone], done = inner.parse.advance();\n if (done) {\n this.innerDone++;\n // This is a somewhat dodgy but super helpful hack where we\n // patch up nodes created by the inner parse (and thus\n // presumably not aliased anywhere else) to hold the information\n // about the inner parse.\n let props = Object.assign(Object.create(null), inner.target.props);\n props[NodeProp.mounted.id] = new MountedTree(done, inner.overlay, inner.parser, inner.bracketed);\n inner.target.props = props;\n }\n return null;\n }\n get parsedPos() {\n if (this.baseParse)\n return 0;\n let pos = this.input.length;\n for (let i = this.innerDone; i < this.inner.length; i++) {\n if (this.inner[i].from < pos)\n pos = Math.min(pos, this.inner[i].parse.parsedPos);\n }\n return pos;\n }\n stopAt(pos) {\n this.stoppedAt = pos;\n if (this.baseParse)\n this.baseParse.stopAt(pos);\n else\n for (let i = this.innerDone; i < this.inner.length; i++)\n this.inner[i].parse.stopAt(pos);\n }\n startInner() {\n let fragmentCursor = new FragmentCursor(this.fragments);\n let overlay = null;\n let covered = null;\n let cursor = new TreeCursor(new TreeNode(this.baseTree, this.ranges[0].from, 0, null), IterMode.IncludeAnonymous | IterMode.IgnoreMounts);\n scan: for (let nest, isCovered;;) {\n let enter = true, range;\n if (this.stoppedAt != null && cursor.from >= this.stoppedAt) {\n enter = false;\n }\n else if (fragmentCursor.hasNode(cursor)) {\n if (overlay) {\n let match = overlay.mounts.find(m => m.frag.from <= cursor.from && m.frag.to >= cursor.to && m.mount.overlay);\n if (match)\n for (let r of match.mount.overlay) {\n let from = r.from + match.pos, to = r.to + match.pos;\n if (from >= cursor.from && to <= cursor.to && !overlay.ranges.some(r => r.from < to && r.to > from))\n overlay.ranges.push({ from, to });\n }\n }\n enter = false;\n }\n else if (covered && (isCovered = checkCover(covered.ranges, cursor.from, cursor.to))) {\n enter = isCovered != 2 /* Cover.Full */;\n }\n else if (!cursor.type.isAnonymous && (nest = this.nest(cursor, this.input)) &&\n (cursor.from < cursor.to || !nest.overlay)) {\n if (!cursor.tree) {\n materialize(cursor);\n // materialize create one more level of nesting\n // we need to add depth to active overlay for going backwards\n if (overlay)\n overlay.depth++;\n if (covered)\n covered.depth++;\n }\n let oldMounts = fragmentCursor.findMounts(cursor.from, nest.parser);\n if (typeof nest.overlay == \"function\") {\n overlay = new ActiveOverlay(nest.parser, nest.overlay, oldMounts, this.inner.length, cursor.from, !!nest.bracketed, cursor.tree, overlay);\n }\n else {\n let ranges = punchRanges(this.ranges, nest.overlay ||\n (cursor.from < cursor.to ? [new Range(cursor.from, cursor.to)] : []));\n if (ranges.length)\n checkRanges(ranges);\n if (ranges.length || !nest.overlay)\n this.inner.push(new InnerParse(nest.parser, ranges.length ? nest.parser.startParse(this.input, enterFragments(oldMounts, ranges), ranges)\n : nest.parser.startParse(\"\"), nest.overlay ? nest.overlay.map(r => new Range(r.from - cursor.from, r.to - cursor.from)) : null, !!nest.bracketed, cursor.tree, ranges.length ? ranges[0].from : cursor.from));\n if (!nest.overlay)\n enter = false;\n else if (ranges.length)\n covered = { ranges, depth: 0, prev: covered };\n }\n }\n else if (overlay && (range = overlay.predicate(cursor))) {\n if (range === true)\n range = new Range(cursor.from, cursor.to);\n if (range.from < range.to) {\n let last = overlay.ranges.length - 1;\n if (last >= 0 && overlay.ranges[last].to == range.from)\n overlay.ranges[last] = { from: overlay.ranges[last].from, to: range.to };\n else\n overlay.ranges.push(range);\n }\n }\n if (enter && cursor.firstChild()) {\n if (overlay)\n overlay.depth++;\n if (covered)\n covered.depth++;\n }\n else {\n for (;;) {\n if (cursor.nextSibling())\n break;\n if (!cursor.parent())\n break scan;\n if (overlay && !--overlay.depth) {\n let ranges = punchRanges(this.ranges, overlay.ranges);\n if (ranges.length) {\n checkRanges(ranges);\n this.inner.splice(overlay.index, 0, new InnerParse(overlay.parser, overlay.parser.startParse(this.input, enterFragments(overlay.mounts, ranges), ranges), overlay.ranges.map(r => new Range(r.from - overlay.start, r.to - overlay.start)), overlay.bracketed, overlay.target, ranges[0].from));\n }\n overlay = overlay.prev;\n }\n if (covered && !--covered.depth)\n covered = covered.prev;\n }\n }\n }\n }\n}\nfunction checkCover(covered, from, to) {\n for (let range of covered) {\n if (range.from >= to)\n break;\n if (range.to > from)\n return range.from <= from && range.to >= to ? 2 /* Cover.Full */ : 1 /* Cover.Partial */;\n }\n return 0 /* Cover.None */;\n}\n// Take a piece of buffer and convert it into a stand-alone\n// TreeBuffer.\nfunction sliceBuf(buf, startI, endI, nodes, positions, off) {\n if (startI < endI) {\n let from = buf.buffer[startI + 1];\n nodes.push(buf.slice(startI, endI, from));\n positions.push(from - off);\n }\n}\n// This function takes a node that's in a buffer, and converts it, and\n// its parent buffer nodes, into a Tree. This is again acting on the\n// assumption that the trees and buffers have been constructed by the\n// parse that was ran via the mix parser, and thus aren't shared with\n// any other code, making violations of the immutability safe.\nfunction materialize(cursor) {\n let { node } = cursor, stack = [];\n let buffer = node.context.buffer;\n // Scan up to the nearest tree\n do {\n stack.push(cursor.index);\n cursor.parent();\n } while (!cursor.tree);\n // Find the index of the buffer in that tree\n let base = cursor.tree, i = base.children.indexOf(buffer);\n let buf = base.children[i], b = buf.buffer, newStack = [i];\n // Split a level in the buffer, putting the nodes before and after\n // the child that contains `node` into new buffers.\n function split(startI, endI, type, innerOffset, length, stackPos) {\n let targetI = stack[stackPos];\n let children = [], positions = [];\n sliceBuf(buf, startI, targetI, children, positions, innerOffset);\n let from = b[targetI + 1], to = b[targetI + 2];\n newStack.push(children.length);\n let child = stackPos\n ? split(targetI + 4, b[targetI + 3], buf.set.types[b[targetI]], from, to - from, stackPos - 1)\n : node.toTree();\n children.push(child);\n positions.push(from - innerOffset);\n sliceBuf(buf, b[targetI + 3], endI, children, positions, innerOffset);\n return new Tree(type, children, positions, length);\n }\n base.children[i] = split(0, b.length, NodeType.none, 0, buf.length, stack.length - 1);\n // Move the cursor back to the target node\n for (let index of newStack) {\n let tree = cursor.tree.children[index], pos = cursor.tree.positions[index];\n cursor.yield(new TreeNode(tree, pos + cursor.from, index, cursor._tree));\n }\n}\nclass StructureCursor {\n constructor(root, offset) {\n this.offset = offset;\n this.done = false;\n this.cursor = root.cursor(IterMode.IncludeAnonymous | IterMode.IgnoreMounts);\n }\n // Move to the first node (in pre-order) that starts at or after `pos`.\n moveTo(pos) {\n let { cursor } = this, p = pos - this.offset;\n while (!this.done && cursor.from < p) {\n if (cursor.to >= pos && cursor.enter(p, 1, IterMode.IgnoreOverlays | IterMode.ExcludeBuffers)) ;\n else if (!cursor.next(false))\n this.done = true;\n }\n }\n hasNode(cursor) {\n this.moveTo(cursor.from);\n if (!this.done && this.cursor.from + this.offset == cursor.from && this.cursor.tree) {\n for (let tree = this.cursor.tree;;) {\n if (tree == cursor.tree)\n return true;\n if (tree.children.length && tree.positions[0] == 0 && tree.children[0] instanceof Tree)\n tree = tree.children[0];\n else\n break;\n }\n }\n return false;\n }\n}\nclass FragmentCursor {\n constructor(fragments) {\n var _a;\n this.fragments = fragments;\n this.curTo = 0;\n this.fragI = 0;\n if (fragments.length) {\n let first = this.curFrag = fragments[0];\n this.curTo = (_a = first.tree.prop(stoppedInner)) !== null && _a !== void 0 ? _a : first.to;\n this.inner = new StructureCursor(first.tree, -first.offset);\n }\n else {\n this.curFrag = this.inner = null;\n }\n }\n hasNode(node) {\n while (this.curFrag && node.from >= this.curTo)\n this.nextFrag();\n return this.curFrag && this.curFrag.from <= node.from && this.curTo >= node.to && this.inner.hasNode(node);\n }\n nextFrag() {\n var _a;\n this.fragI++;\n if (this.fragI == this.fragments.length) {\n this.curFrag = this.inner = null;\n }\n else {\n let frag = this.curFrag = this.fragments[this.fragI];\n this.curTo = (_a = frag.tree.prop(stoppedInner)) !== null && _a !== void 0 ? _a : frag.to;\n this.inner = new StructureCursor(frag.tree, -frag.offset);\n }\n }\n findMounts(pos, parser) {\n var _a;\n let result = [];\n if (this.inner) {\n this.inner.cursor.moveTo(pos, 1);\n for (let pos = this.inner.cursor.node; pos; pos = pos.parent) {\n let mount = (_a = pos.tree) === null || _a === void 0 ? void 0 : _a.prop(NodeProp.mounted);\n if (mount && mount.parser == parser) {\n for (let i = this.fragI; i < this.fragments.length; i++) {\n let frag = this.fragments[i];\n if (frag.from >= pos.to)\n break;\n if (frag.tree == this.curFrag.tree)\n result.push({\n frag,\n pos: pos.from - frag.offset,\n mount\n });\n }\n }\n }\n }\n return result;\n }\n}\nfunction punchRanges(outer, ranges) {\n let copy = null, current = ranges;\n for (let i = 1, j = 0; i < outer.length; i++) {\n let gapFrom = outer[i - 1].to, gapTo = outer[i].from;\n for (; j < current.length; j++) {\n let r = current[j];\n if (r.from >= gapTo)\n break;\n if (r.to <= gapFrom)\n continue;\n if (!copy)\n current = copy = ranges.slice();\n if (r.from < gapFrom) {\n copy[j] = new Range(r.from, gapFrom);\n if (r.to > gapTo)\n copy.splice(j + 1, 0, new Range(gapTo, r.to));\n }\n else if (r.to > gapTo) {\n copy[j--] = new Range(gapTo, r.to);\n }\n else {\n copy.splice(j--, 1);\n }\n }\n }\n return current;\n}\nfunction findCoverChanges(a, b, from, to) {\n let iA = 0, iB = 0, inA = false, inB = false, pos = -1e9;\n let result = [];\n for (;;) {\n let nextA = iA == a.length ? 1e9 : inA ? a[iA].to : a[iA].from;\n let nextB = iB == b.length ? 1e9 : inB ? b[iB].to : b[iB].from;\n if (inA != inB) {\n let start = Math.max(pos, from), end = Math.min(nextA, nextB, to);\n if (start < end)\n result.push(new Range(start, end));\n }\n pos = Math.min(nextA, nextB);\n if (pos == 1e9)\n break;\n if (nextA == pos) {\n if (!inA)\n inA = true;\n else {\n inA = false;\n iA++;\n }\n }\n if (nextB == pos) {\n if (!inB)\n inB = true;\n else {\n inB = false;\n iB++;\n }\n }\n }\n return result;\n}\n// Given a number of fragments for the outer tree, and a set of ranges\n// to parse, find fragments for inner trees mounted around those\n// ranges, if any.\nfunction enterFragments(mounts, ranges) {\n let result = [];\n for (let { pos, mount, frag } of mounts) {\n let startPos = pos + (mount.overlay ? mount.overlay[0].from : 0), endPos = startPos + mount.tree.length;\n let from = Math.max(frag.from, startPos), to = Math.min(frag.to, endPos);\n if (mount.overlay) {\n let overlay = mount.overlay.map(r => new Range(r.from + pos, r.to + pos));\n let changes = findCoverChanges(ranges, overlay, from, to);\n for (let i = 0, pos = from;; i++) {\n let last = i == changes.length, end = last ? to : changes[i].from;\n if (end > pos)\n result.push(new TreeFragment(pos, end, mount.tree, -startPos, frag.from >= pos || frag.openStart, frag.to <= end || frag.openEnd));\n if (last)\n break;\n pos = changes[i].to;\n }\n }\n else {\n result.push(new TreeFragment(from, to, mount.tree, -startPos, frag.from >= startPos || frag.openStart, frag.to <= endPos || frag.openEnd));\n }\n }\n return result;\n}\n\nexport { DefaultBufferLength, IterMode, MountedTree, NodeProp, NodeSet, NodeType, NodeWeakMap, Parser, Tree, TreeBuffer, TreeCursor, TreeFragment, parseMixed };\n", "import { NodeProp } from '@lezer/common';\n\nlet nextTagID = 0;\n/**\nHighlighting tags are markers that denote a highlighting category.\nThey are [associated](#highlight.styleTags) with parts of a syntax\ntree by a language mode, and then mapped to an actual CSS style by\na [highlighter](#highlight.Highlighter).\n\nBecause syntax tree node types and highlight styles have to be\nable to talk the same language, CodeMirror uses a mostly _closed_\n[vocabulary](#highlight.tags) of syntax tags (as opposed to\ntraditional open string-based systems, which make it hard for\nhighlighting themes to cover all the tokens produced by the\nvarious languages).\n\nIt _is_ possible to [define](#highlight.Tag^define) your own\nhighlighting tags for system-internal use (where you control both\nthe language package and the highlighter), but such tags will not\nbe picked up by regular highlighters (though you can derive them\nfrom standard tags to allow highlighters to fall back to those).\n*/\nclass Tag {\n /**\n @internal\n */\n constructor(\n /**\n The optional name of the base tag @internal\n */\n name, \n /**\n The set of this tag and all its parent tags, starting with\n this one itself and sorted in order of decreasing specificity.\n */\n set, \n /**\n The base unmodified tag that this one is based on, if it's\n modified @internal\n */\n base, \n /**\n The modifiers applied to this.base @internal\n */\n modified) {\n this.name = name;\n this.set = set;\n this.base = base;\n this.modified = modified;\n /**\n @internal\n */\n this.id = nextTagID++;\n }\n toString() {\n let { name } = this;\n for (let mod of this.modified)\n if (mod.name)\n name = `${mod.name}(${name})`;\n return name;\n }\n static define(nameOrParent, parent) {\n let name = typeof nameOrParent == \"string\" ? nameOrParent : \"?\";\n if (nameOrParent instanceof Tag)\n parent = nameOrParent;\n if (parent === null || parent === void 0 ? void 0 : parent.base)\n throw new Error(\"Can not derive from a modified tag\");\n let tag = new Tag(name, [], null, []);\n tag.set.push(tag);\n if (parent)\n for (let t of parent.set)\n tag.set.push(t);\n return tag;\n }\n /**\n Define a tag _modifier_, which is a function that, given a tag,\n will return a tag that is a subtag of the original. Applying the\n same modifier to a twice tag will return the same value (`m1(t1)\n == m1(t1)`) and applying multiple modifiers will, regardless or\n order, produce the same tag (`m1(m2(t1)) == m2(m1(t1))`).\n \n When multiple modifiers are applied to a given base tag, each\n smaller set of modifiers is registered as a parent, so that for\n example `m1(m2(m3(t1)))` is a subtype of `m1(m2(t1))`,\n `m1(m3(t1)`, and so on.\n */\n static defineModifier(name) {\n let mod = new Modifier(name);\n return (tag) => {\n if (tag.modified.indexOf(mod) > -1)\n return tag;\n return Modifier.get(tag.base || tag, tag.modified.concat(mod).sort((a, b) => a.id - b.id));\n };\n }\n}\nlet nextModifierID = 0;\nclass Modifier {\n constructor(name) {\n this.name = name;\n this.instances = [];\n this.id = nextModifierID++;\n }\n static get(base, mods) {\n if (!mods.length)\n return base;\n let exists = mods[0].instances.find(t => t.base == base && sameArray(mods, t.modified));\n if (exists)\n return exists;\n let set = [], tag = new Tag(base.name, set, base, mods);\n for (let m of mods)\n m.instances.push(tag);\n let configs = powerSet(mods);\n for (let parent of base.set)\n if (!parent.modified.length)\n for (let config of configs)\n set.push(Modifier.get(parent, config));\n return tag;\n }\n}\nfunction sameArray(a, b) {\n return a.length == b.length && a.every((x, i) => x == b[i]);\n}\nfunction powerSet(array) {\n let sets = [[]];\n for (let i = 0; i < array.length; i++) {\n for (let j = 0, e = sets.length; j < e; j++) {\n sets.push(sets[j].concat(array[i]));\n }\n }\n return sets.sort((a, b) => b.length - a.length);\n}\n/**\nThis function is used to add a set of tags to a language syntax\nvia [`NodeSet.extend`](#common.NodeSet.extend) or\n[`LRParser.configure`](#lr.LRParser.configure).\n\nThe argument object maps node selectors to [highlighting\ntags](#highlight.Tag) or arrays of tags.\n\nNode selectors may hold one or more (space-separated) node paths.\nSuch a path can be a [node name](#common.NodeType.name), or\nmultiple node names (or `*` wildcards) separated by slash\ncharacters, as in `\"Block/Declaration/VariableName\"`. Such a path\nmatches the final node but only if its direct parent nodes are the\nother nodes mentioned. A `*` in such a path matches any parent,\nbut only a single level\u2014wildcards that match multiple parents\naren't supported, both for efficiency reasons and because Lezer\ntrees make it rather hard to reason about what they would match.)\n\nA path can be ended with `/...` to indicate that the tag assigned\nto the node should also apply to all child nodes, even if they\nmatch their own style (by default, only the innermost style is\nused).\n\nWhen a path ends in `!`, as in `Attribute!`, no further matching\nhappens for the node's child nodes, and the entire node gets the\ngiven style.\n\nIn this notation, node names that contain `/`, `!`, `*`, or `...`\nmust be quoted as JSON strings.\n\nFor example:\n\n```javascript\nparser.configure({props: [\n styleTags({\n // Style Number and BigNumber nodes\n \"Number BigNumber\": tags.number,\n // Style Escape nodes whose parent is String\n \"String/Escape\": tags.escape,\n // Style anything inside Attributes nodes\n \"Attributes!\": tags.meta,\n // Add a style to all content inside Italic nodes\n \"Italic/...\": tags.emphasis,\n // Style InvalidString nodes as both `string` and `invalid`\n \"InvalidString\": [tags.string, tags.invalid],\n // Style the node named \"/\" as punctuation\n '\"/\"': tags.punctuation\n })\n]})\n```\n*/\nfunction styleTags(spec) {\n let byName = Object.create(null);\n for (let prop in spec) {\n let tags = spec[prop];\n if (!Array.isArray(tags))\n tags = [tags];\n for (let part of prop.split(\" \"))\n if (part) {\n let pieces = [], mode = 2 /* Mode.Normal */, rest = part;\n for (let pos = 0;;) {\n if (rest == \"...\" && pos > 0 && pos + 3 == part.length) {\n mode = 1 /* Mode.Inherit */;\n break;\n }\n let m = /^\"(?:[^\"\\\\]|\\\\.)*?\"|[^\\/!]+/.exec(rest);\n if (!m)\n throw new RangeError(\"Invalid path: \" + part);\n pieces.push(m[0] == \"*\" ? \"\" : m[0][0] == '\"' ? JSON.parse(m[0]) : m[0]);\n pos += m[0].length;\n if (pos == part.length)\n break;\n let next = part[pos++];\n if (pos == part.length && next == \"!\") {\n mode = 0 /* Mode.Opaque */;\n break;\n }\n if (next != \"/\")\n throw new RangeError(\"Invalid path: \" + part);\n rest = part.slice(pos);\n }\n let last = pieces.length - 1, inner = pieces[last];\n if (!inner)\n throw new RangeError(\"Invalid path: \" + part);\n let rule = new Rule(tags, mode, last > 0 ? pieces.slice(0, last) : null);\n byName[inner] = rule.sort(byName[inner]);\n }\n }\n return ruleNodeProp.add(byName);\n}\nconst ruleNodeProp = new NodeProp({\n combine(a, b) {\n let cur, root, take;\n while (a || b) {\n if (!a || b && a.depth >= b.depth) {\n take = b;\n b = b.next;\n }\n else {\n take = a;\n a = a.next;\n }\n if (cur && cur.mode == take.mode && !take.context && !cur.context)\n continue;\n let copy = new Rule(take.tags, take.mode, take.context);\n if (cur)\n cur.next = copy;\n else\n root = copy;\n cur = copy;\n }\n return root;\n }\n});\nclass Rule {\n constructor(tags, mode, context, next) {\n this.tags = tags;\n this.mode = mode;\n this.context = context;\n this.next = next;\n }\n get opaque() { return this.mode == 0 /* Mode.Opaque */; }\n get inherit() { return this.mode == 1 /* Mode.Inherit */; }\n sort(other) {\n if (!other || other.depth < this.depth) {\n this.next = other;\n return this;\n }\n other.next = this.sort(other.next);\n return other;\n }\n get depth() { return this.context ? this.context.length : 0; }\n}\nRule.empty = new Rule([], 2 /* Mode.Normal */, null);\n/**\nDefine a [highlighter](#highlight.Highlighter) from an array of\ntag/class pairs. Classes associated with more specific tags will\ntake precedence.\n*/\nfunction tagHighlighter(tags, options) {\n let map = Object.create(null);\n for (let style of tags) {\n if (!Array.isArray(style.tag))\n map[style.tag.id] = style.class;\n else\n for (let tag of style.tag)\n map[tag.id] = style.class;\n }\n let { scope, all = null } = options || {};\n return {\n style: (tags) => {\n let cls = all;\n for (let tag of tags) {\n for (let sub of tag.set) {\n let tagClass = map[sub.id];\n if (tagClass) {\n cls = cls ? cls + \" \" + tagClass : tagClass;\n break;\n }\n }\n }\n return cls;\n },\n scope\n };\n}\nfunction highlightTags(highlighters, tags) {\n let result = null;\n for (let highlighter of highlighters) {\n let value = highlighter.style(tags);\n if (value)\n result = result ? result + \" \" + value : value;\n }\n return result;\n}\n/**\nHighlight the given [tree](#common.Tree) with the given\n[highlighter](#highlight.Highlighter). Often, the higher-level\n[`highlightCode`](#highlight.highlightCode) function is easier to\nuse.\n*/\nfunction highlightTree(tree, highlighter, \n/**\nAssign styling to a region of the text. Will be called, in order\nof position, for any ranges where more than zero classes apply.\n`classes` is a space separated string of CSS classes.\n*/\nputStyle, \n/**\nThe start of the range to highlight.\n*/\nfrom = 0, \n/**\nThe end of the range.\n*/\nto = tree.length) {\n let builder = new HighlightBuilder(from, Array.isArray(highlighter) ? highlighter : [highlighter], putStyle);\n builder.highlightRange(tree.cursor(), from, to, \"\", builder.highlighters);\n builder.flush(to);\n}\n/**\nHighlight the given tree with the given highlighter, calling\n`putText` for every piece of text, either with a set of classes or\nwith the empty string when unstyled, and `putBreak` for every line\nbreak.\n*/\nfunction highlightCode(code, tree, highlighter, putText, putBreak, from = 0, to = code.length) {\n let pos = from;\n function writeTo(p, classes) {\n if (p <= pos)\n return;\n for (let text = code.slice(pos, p), i = 0;;) {\n let nextBreak = text.indexOf(\"\\n\", i);\n let upto = nextBreak < 0 ? text.length : nextBreak;\n if (upto > i)\n putText(text.slice(i, upto), classes);\n if (nextBreak < 0)\n break;\n putBreak();\n i = nextBreak + 1;\n }\n pos = p;\n }\n highlightTree(tree, highlighter, (from, to, classes) => {\n writeTo(from, \"\");\n writeTo(to, classes);\n }, from, to);\n writeTo(to, \"\");\n}\nclass HighlightBuilder {\n constructor(at, highlighters, span) {\n this.at = at;\n this.highlighters = highlighters;\n this.span = span;\n this.class = \"\";\n }\n startSpan(at, cls) {\n if (cls != this.class) {\n this.flush(at);\n if (at > this.at)\n this.at = at;\n this.class = cls;\n }\n }\n flush(to) {\n if (to > this.at && this.class)\n this.span(this.at, to, this.class);\n }\n highlightRange(cursor, from, to, inheritedClass, highlighters) {\n let { type, from: start, to: end } = cursor;\n if (start >= to || end <= from)\n return;\n if (type.isTop)\n highlighters = this.highlighters.filter(h => !h.scope || h.scope(type));\n let cls = inheritedClass;\n let rule = getStyleTags(cursor) || Rule.empty;\n let tagCls = highlightTags(highlighters, rule.tags);\n if (tagCls) {\n if (cls)\n cls += \" \";\n cls += tagCls;\n if (rule.mode == 1 /* Mode.Inherit */)\n inheritedClass += (inheritedClass ? \" \" : \"\") + tagCls;\n }\n this.startSpan(Math.max(from, start), cls);\n if (rule.opaque)\n return;\n let mounted = cursor.tree && cursor.tree.prop(NodeProp.mounted);\n if (mounted && mounted.overlay) {\n let inner = cursor.node.enter(mounted.overlay[0].from + start, 1);\n let innerHighlighters = this.highlighters.filter(h => !h.scope || h.scope(mounted.tree.type));\n let hasChild = cursor.firstChild();\n for (let i = 0, pos = start;; i++) {\n let next = i < mounted.overlay.length ? mounted.overlay[i] : null;\n let nextPos = next ? next.from + start : end;\n let rangeFrom = Math.max(from, pos), rangeTo = Math.min(to, nextPos);\n if (rangeFrom < rangeTo && hasChild) {\n while (cursor.from < rangeTo) {\n this.highlightRange(cursor, rangeFrom, rangeTo, inheritedClass, highlighters);\n this.startSpan(Math.min(rangeTo, cursor.to), cls);\n if (cursor.to >= nextPos || !cursor.nextSibling())\n break;\n }\n }\n if (!next || nextPos > to)\n break;\n pos = next.to + start;\n if (pos > from) {\n this.highlightRange(inner.cursor(), Math.max(from, next.from + start), Math.min(to, pos), \"\", innerHighlighters);\n this.startSpan(Math.min(to, pos), cls);\n }\n }\n if (hasChild)\n cursor.parent();\n }\n else if (cursor.firstChild()) {\n if (mounted)\n inheritedClass = \"\";\n do {\n if (cursor.to <= from)\n continue;\n if (cursor.from >= to)\n break;\n this.highlightRange(cursor, from, to, inheritedClass, highlighters);\n this.startSpan(Math.min(to, cursor.to), cls);\n } while (cursor.nextSibling());\n cursor.parent();\n }\n }\n}\n/**\nMatch a syntax node's [highlight rules](#highlight.styleTags). If\nthere's a match, return its set of tags, and whether it is\nopaque (uses a `!`) or applies to all child nodes (`/...`).\n*/\nfunction getStyleTags(node) {\n let rule = node.type.prop(ruleNodeProp);\n while (rule && rule.context && !node.matchContext(rule.context))\n rule = rule.next;\n return rule || null;\n}\nconst t = Tag.define;\nconst comment = t(), name = t(), typeName = t(name), propertyName = t(name), literal = t(), string = t(literal), number = t(literal), content = t(), heading = t(content), keyword = t(), operator = t(), punctuation = t(), bracket = t(punctuation), meta = t();\n/**\nThe default set of highlighting [tags](#highlight.Tag).\n\nThis collection is heavily biased towards programming languages,\nand necessarily incomplete. A full ontology of syntactic\nconstructs would fill a stack of books, and be impractical to\nwrite themes for. So try to make do with this set. If all else\nfails, [open an\nissue](https://github.com/codemirror/codemirror.next) to propose a\nnew tag, or [define](#highlight.Tag^define) a local custom tag for\nyour use case.\n\nNote that it is not obligatory to always attach the most specific\ntag possible to an element\u2014if your grammar can't easily\ndistinguish a certain type of element (such as a local variable),\nit is okay to style it as its more general variant (a variable).\n\nFor tags that extend some parent tag, the documentation links to\nthe parent.\n*/\nconst tags = {\n /**\n A comment.\n */\n comment,\n /**\n A line [comment](#highlight.tags.comment).\n */\n lineComment: t(comment),\n /**\n A block [comment](#highlight.tags.comment).\n */\n blockComment: t(comment),\n /**\n A documentation [comment](#highlight.tags.comment).\n */\n docComment: t(comment),\n /**\n Any kind of identifier.\n */\n name,\n /**\n The [name](#highlight.tags.name) of a variable.\n */\n variableName: t(name),\n /**\n A type [name](#highlight.tags.name).\n */\n typeName: typeName,\n /**\n A tag name (subtag of [`typeName`](#highlight.tags.typeName)).\n */\n tagName: t(typeName),\n /**\n A property or field [name](#highlight.tags.name).\n */\n propertyName: propertyName,\n /**\n An attribute name (subtag of [`propertyName`](#highlight.tags.propertyName)).\n */\n attributeName: t(propertyName),\n /**\n The [name](#highlight.tags.name) of a class.\n */\n className: t(name),\n /**\n A label [name](#highlight.tags.name).\n */\n labelName: t(name),\n /**\n A namespace [name](#highlight.tags.name).\n */\n namespace: t(name),\n /**\n The [name](#highlight.tags.name) of a macro.\n */\n macroName: t(name),\n /**\n A literal value.\n */\n literal,\n /**\n A string [literal](#highlight.tags.literal).\n */\n string,\n /**\n A documentation [string](#highlight.tags.string).\n */\n docString: t(string),\n /**\n A character literal (subtag of [string](#highlight.tags.string)).\n */\n character: t(string),\n /**\n An attribute value (subtag of [string](#highlight.tags.string)).\n */\n attributeValue: t(string),\n /**\n A number [literal](#highlight.tags.literal).\n */\n number,\n /**\n An integer [number](#highlight.tags.number) literal.\n */\n integer: t(number),\n /**\n A floating-point [number](#highlight.tags.number) literal.\n */\n float: t(number),\n /**\n A boolean [literal](#highlight.tags.literal).\n */\n bool: t(literal),\n /**\n Regular expression [literal](#highlight.tags.literal).\n */\n regexp: t(literal),\n /**\n An escape [literal](#highlight.tags.literal), for example a\n backslash escape in a string.\n */\n escape: t(literal),\n /**\n A color [literal](#highlight.tags.literal).\n */\n color: t(literal),\n /**\n A URL [literal](#highlight.tags.literal).\n */\n url: t(literal),\n /**\n A language keyword.\n */\n keyword,\n /**\n The [keyword](#highlight.tags.keyword) for the self or this\n object.\n */\n self: t(keyword),\n /**\n The [keyword](#highlight.tags.keyword) for null.\n */\n null: t(keyword),\n /**\n A [keyword](#highlight.tags.keyword) denoting some atomic value.\n */\n atom: t(keyword),\n /**\n A [keyword](#highlight.tags.keyword) that represents a unit.\n */\n unit: t(keyword),\n /**\n A modifier [keyword](#highlight.tags.keyword).\n */\n modifier: t(keyword),\n /**\n A [keyword](#highlight.tags.keyword) that acts as an operator.\n */\n operatorKeyword: t(keyword),\n /**\n A control-flow related [keyword](#highlight.tags.keyword).\n */\n controlKeyword: t(keyword),\n /**\n A [keyword](#highlight.tags.keyword) that defines something.\n */\n definitionKeyword: t(keyword),\n /**\n A [keyword](#highlight.tags.keyword) related to defining or\n interfacing with modules.\n */\n moduleKeyword: t(keyword),\n /**\n An operator.\n */\n operator,\n /**\n An [operator](#highlight.tags.operator) that dereferences something.\n */\n derefOperator: t(operator),\n /**\n Arithmetic-related [operator](#highlight.tags.operator).\n */\n arithmeticOperator: t(operator),\n /**\n Logical [operator](#highlight.tags.operator).\n */\n logicOperator: t(operator),\n /**\n Bit [operator](#highlight.tags.operator).\n */\n bitwiseOperator: t(operator),\n /**\n Comparison [operator](#highlight.tags.operator).\n */\n compareOperator: t(operator),\n /**\n [Operator](#highlight.tags.operator) that updates its operand.\n */\n updateOperator: t(operator),\n /**\n [Operator](#highlight.tags.operator) that defines something.\n */\n definitionOperator: t(operator),\n /**\n Type-related [operator](#highlight.tags.operator).\n */\n typeOperator: t(operator),\n /**\n Control-flow [operator](#highlight.tags.operator).\n */\n controlOperator: t(operator),\n /**\n Program or markup punctuation.\n */\n punctuation,\n /**\n [Punctuation](#highlight.tags.punctuation) that separates\n things.\n */\n separator: t(punctuation),\n /**\n Bracket-style [punctuation](#highlight.tags.punctuation).\n */\n bracket,\n /**\n Angle [brackets](#highlight.tags.bracket) (usually `<` and `>`\n tokens).\n */\n angleBracket: t(bracket),\n /**\n Square [brackets](#highlight.tags.bracket) (usually `[` and `]`\n tokens).\n */\n squareBracket: t(bracket),\n /**\n Parentheses (usually `(` and `)` tokens). Subtag of\n [bracket](#highlight.tags.bracket).\n */\n paren: t(bracket),\n /**\n Braces (usually `{` and `}` tokens). Subtag of\n [bracket](#highlight.tags.bracket).\n */\n brace: t(bracket),\n /**\n Content, for example plain text in XML or markup documents.\n */\n content,\n /**\n [Content](#highlight.tags.content) that represents a heading.\n */\n heading,\n /**\n A level 1 [heading](#highlight.tags.heading).\n */\n heading1: t(heading),\n /**\n A level 2 [heading](#highlight.tags.heading).\n */\n heading2: t(heading),\n /**\n A level 3 [heading](#highlight.tags.heading).\n */\n heading3: t(heading),\n /**\n A level 4 [heading](#highlight.tags.heading).\n */\n heading4: t(heading),\n /**\n A level 5 [heading](#highlight.tags.heading).\n */\n heading5: t(heading),\n /**\n A level 6 [heading](#highlight.tags.heading).\n */\n heading6: t(heading),\n /**\n A prose [content](#highlight.tags.content) separator (such as a horizontal rule).\n */\n contentSeparator: t(content),\n /**\n [Content](#highlight.tags.content) that represents a list.\n */\n list: t(content),\n /**\n [Content](#highlight.tags.content) that represents a quote.\n */\n quote: t(content),\n /**\n [Content](#highlight.tags.content) that is emphasized.\n */\n emphasis: t(content),\n /**\n [Content](#highlight.tags.content) that is styled strong.\n */\n strong: t(content),\n /**\n [Content](#highlight.tags.content) that is part of a link.\n */\n link: t(content),\n /**\n [Content](#highlight.tags.content) that is styled as code or\n monospace.\n */\n monospace: t(content),\n /**\n [Content](#highlight.tags.content) that has a strike-through\n style.\n */\n strikethrough: t(content),\n /**\n Inserted text in a change-tracking format.\n */\n inserted: t(),\n /**\n Deleted text.\n */\n deleted: t(),\n /**\n Changed text.\n */\n changed: t(),\n /**\n An invalid or unsyntactic element.\n */\n invalid: t(),\n /**\n Metadata or meta-instruction.\n */\n meta,\n /**\n [Metadata](#highlight.tags.meta) that applies to the entire\n document.\n */\n documentMeta: t(meta),\n /**\n [Metadata](#highlight.tags.meta) that annotates or adds\n attributes to a given syntactic element.\n */\n annotation: t(meta),\n /**\n Processing instruction or preprocessor directive. Subtag of\n [meta](#highlight.tags.meta).\n */\n processingInstruction: t(meta),\n /**\n [Modifier](#highlight.Tag^defineModifier) that indicates that a\n given element is being defined. Expected to be used with the\n various [name](#highlight.tags.name) tags.\n */\n definition: Tag.defineModifier(\"definition\"),\n /**\n [Modifier](#highlight.Tag^defineModifier) that indicates that\n something is constant. Mostly expected to be used with\n [variable names](#highlight.tags.variableName).\n */\n constant: Tag.defineModifier(\"constant\"),\n /**\n [Modifier](#highlight.Tag^defineModifier) used to indicate that\n a [variable](#highlight.tags.variableName) or [property\n name](#highlight.tags.propertyName) is being called or defined\n as a function.\n */\n function: Tag.defineModifier(\"function\"),\n /**\n [Modifier](#highlight.Tag^defineModifier) that can be applied to\n [names](#highlight.tags.name) to indicate that they belong to\n the language's standard environment.\n */\n standard: Tag.defineModifier(\"standard\"),\n /**\n [Modifier](#highlight.Tag^defineModifier) that indicates a given\n [names](#highlight.tags.name) is local to some scope.\n */\n local: Tag.defineModifier(\"local\"),\n /**\n A generic variant [modifier](#highlight.Tag^defineModifier) that\n can be used to tag language-specific alternative variants of\n some common tag. It is recommended for themes to define special\n forms of at least the [string](#highlight.tags.string) and\n [variable name](#highlight.tags.variableName) tags, since those\n come up a lot.\n */\n special: Tag.defineModifier(\"special\")\n};\nfor (let name in tags) {\n let val = tags[name];\n if (val instanceof Tag)\n val.name = name;\n}\n/**\nThis is a highlighter that adds stable, predictable classes to\ntokens, for styling with external CSS.\n\nThe following tags are mapped to their name prefixed with `\"tok-\"`\n(for example `\"tok-comment\"`):\n\n* [`link`](#highlight.tags.link)\n* [`heading`](#highlight.tags.heading)\n* [`emphasis`](#highlight.tags.emphasis)\n* [`strong`](#highlight.tags.strong)\n* [`keyword`](#highlight.tags.keyword)\n* [`atom`](#highlight.tags.atom)\n* [`bool`](#highlight.tags.bool)\n* [`url`](#highlight.tags.url)\n* [`labelName`](#highlight.tags.labelName)\n* [`inserted`](#highlight.tags.inserted)\n* [`deleted`](#highlight.tags.deleted)\n* [`literal`](#highlight.tags.literal)\n* [`string`](#highlight.tags.string)\n* [`number`](#highlight.tags.number)\n* [`variableName`](#highlight.tags.variableName)\n* [`typeName`](#highlight.tags.typeName)\n* [`namespace`](#highlight.tags.namespace)\n* [`className`](#highlight.tags.className)\n* [`macroName`](#highlight.tags.macroName)\n* [`propertyName`](#highlight.tags.propertyName)\n* [`operator`](#highlight.tags.operator)\n* [`comment`](#highlight.tags.comment)\n* [`meta`](#highlight.tags.meta)\n* [`punctuation`](#highlight.tags.punctuation)\n* [`invalid`](#highlight.tags.invalid)\n\nIn addition, these mappings are provided:\n\n* [`regexp`](#highlight.tags.regexp),\n [`escape`](#highlight.tags.escape), and\n [`special`](#highlight.tags.special)[`(string)`](#highlight.tags.string)\n are mapped to `\"tok-string2\"`\n* [`special`](#highlight.tags.special)[`(variableName)`](#highlight.tags.variableName)\n to `\"tok-variableName2\"`\n* [`local`](#highlight.tags.local)[`(variableName)`](#highlight.tags.variableName)\n to `\"tok-variableName tok-local\"`\n* [`definition`](#highlight.tags.definition)[`(variableName)`](#highlight.tags.variableName)\n to `\"tok-variableName tok-definition\"`\n* [`definition`](#highlight.tags.definition)[`(propertyName)`](#highlight.tags.propertyName)\n to `\"tok-propertyName tok-definition\"`\n*/\nconst classHighlighter = tagHighlighter([\n { tag: tags.link, class: \"tok-link\" },\n { tag: tags.heading, class: \"tok-heading\" },\n { tag: tags.emphasis, class: \"tok-emphasis\" },\n { tag: tags.strong, class: \"tok-strong\" },\n { tag: tags.keyword, class: \"tok-keyword\" },\n { tag: tags.atom, class: \"tok-atom\" },\n { tag: tags.bool, class: \"tok-bool\" },\n { tag: tags.url, class: \"tok-url\" },\n { tag: tags.labelName, class: \"tok-labelName\" },\n { tag: tags.inserted, class: \"tok-inserted\" },\n { tag: tags.deleted, class: \"tok-deleted\" },\n { tag: tags.literal, class: \"tok-literal\" },\n { tag: tags.string, class: \"tok-string\" },\n { tag: tags.number, class: \"tok-number\" },\n { tag: [tags.regexp, tags.escape, tags.special(tags.string)], class: \"tok-string2\" },\n { tag: tags.variableName, class: \"tok-variableName\" },\n { tag: tags.local(tags.variableName), class: \"tok-variableName tok-local\" },\n { tag: tags.definition(tags.variableName), class: \"tok-variableName tok-definition\" },\n { tag: tags.special(tags.variableName), class: \"tok-variableName2\" },\n { tag: tags.definition(tags.propertyName), class: \"tok-propertyName tok-definition\" },\n { tag: tags.typeName, class: \"tok-typeName\" },\n { tag: tags.namespace, class: \"tok-namespace\" },\n { tag: tags.className, class: \"tok-className\" },\n { tag: tags.macroName, class: \"tok-macroName\" },\n { tag: tags.propertyName, class: \"tok-propertyName\" },\n { tag: tags.operator, class: \"tok-operator\" },\n { tag: tags.comment, class: \"tok-comment\" },\n { tag: tags.meta, class: \"tok-meta\" },\n { tag: tags.invalid, class: \"tok-invalid\" },\n { tag: tags.punctuation, class: \"tok-punctuation\" }\n]);\n\nexport { Tag, classHighlighter, getStyleTags, highlightCode, highlightTree, styleTags, tagHighlighter, tags };\n", "import { NodeProp, IterMode, Tree, TreeFragment, Parser, NodeType, NodeSet } from '@lezer/common';\nimport { StateEffect, StateField, Facet, EditorState, countColumn, combineConfig, RangeSet, RangeSetBuilder, Prec } from '@codemirror/state';\nimport { ViewPlugin, logException, EditorView, Decoration, WidgetType, gutter, GutterMarker, Direction } from '@codemirror/view';\nimport { tags, tagHighlighter, highlightTree, styleTags } from '@lezer/highlight';\nimport { StyleModule } from 'style-mod';\n\nvar _a;\n/**\nNode prop stored in a parser's top syntax node to provide the\nfacet that stores language-specific data for that language.\n*/\nconst languageDataProp = /*@__PURE__*/new NodeProp();\n/**\nHelper function to define a facet (to be added to the top syntax\nnode(s) for a language via\n[`languageDataProp`](https://codemirror.net/6/docs/ref/#language.languageDataProp)), that will be\nused to associate language data with the language. You\nprobably only need this when subclassing\n[`Language`](https://codemirror.net/6/docs/ref/#language.Language).\n*/\nfunction defineLanguageFacet(baseData) {\n return Facet.define({\n combine: baseData ? values => values.concat(baseData) : undefined\n });\n}\n/**\nSyntax node prop used to register sublanguages. Should be added to\nthe top level node type for the language.\n*/\nconst sublanguageProp = /*@__PURE__*/new NodeProp();\n/**\nA language object manages parsing and per-language\n[metadata](https://codemirror.net/6/docs/ref/#state.EditorState.languageDataAt). Parse data is\nmanaged as a [Lezer](https://lezer.codemirror.net) tree. The class\ncan be used directly, via the [`LRLanguage`](https://codemirror.net/6/docs/ref/#language.LRLanguage)\nsubclass for [Lezer](https://lezer.codemirror.net/) LR parsers, or\nvia the [`StreamLanguage`](https://codemirror.net/6/docs/ref/#language.StreamLanguage) subclass\nfor stream parsers.\n*/\nclass Language {\n /**\n Construct a language object. If you need to invoke this\n directly, first define a data facet with\n [`defineLanguageFacet`](https://codemirror.net/6/docs/ref/#language.defineLanguageFacet), and then\n configure your parser to [attach](https://codemirror.net/6/docs/ref/#language.languageDataProp) it\n to the language's outer syntax node.\n */\n constructor(\n /**\n The [language data](https://codemirror.net/6/docs/ref/#state.EditorState.languageDataAt) facet\n used for this language.\n */\n data, parser, extraExtensions = [], \n /**\n A language name.\n */\n name = \"\") {\n this.data = data;\n this.name = name;\n // Kludge to define EditorState.tree as a debugging helper,\n // without the EditorState package actually knowing about\n // languages and lezer trees.\n if (!EditorState.prototype.hasOwnProperty(\"tree\"))\n Object.defineProperty(EditorState.prototype, \"tree\", { get() { return syntaxTree(this); } });\n this.parser = parser;\n this.extension = [\n language.of(this),\n EditorState.languageData.of((state, pos, side) => {\n let top = topNodeAt(state, pos, side), data = top.type.prop(languageDataProp);\n if (!data)\n return [];\n let base = state.facet(data), sub = top.type.prop(sublanguageProp);\n if (sub) {\n let innerNode = top.resolve(pos - top.from, side);\n for (let sublang of sub)\n if (sublang.test(innerNode, state)) {\n let data = state.facet(sublang.facet);\n return sublang.type == \"replace\" ? data : data.concat(base);\n }\n }\n return base;\n })\n ].concat(extraExtensions);\n }\n /**\n Query whether this language is active at the given position.\n */\n isActiveAt(state, pos, side = -1) {\n return topNodeAt(state, pos, side).type.prop(languageDataProp) == this.data;\n }\n /**\n Find the document regions that were parsed using this language.\n The returned regions will _include_ any nested languages rooted\n in this language, when those exist.\n */\n findRegions(state) {\n let lang = state.facet(language);\n if ((lang === null || lang === void 0 ? void 0 : lang.data) == this.data)\n return [{ from: 0, to: state.doc.length }];\n if (!lang || !lang.allowsNesting)\n return [];\n let result = [];\n let explore = (tree, from) => {\n if (tree.prop(languageDataProp) == this.data) {\n result.push({ from, to: from + tree.length });\n return;\n }\n let mount = tree.prop(NodeProp.mounted);\n if (mount) {\n if (mount.tree.prop(languageDataProp) == this.data) {\n if (mount.overlay)\n for (let r of mount.overlay)\n result.push({ from: r.from + from, to: r.to + from });\n else\n result.push({ from: from, to: from + tree.length });\n return;\n }\n else if (mount.overlay) {\n let size = result.length;\n explore(mount.tree, mount.overlay[0].from + from);\n if (result.length > size)\n return;\n }\n }\n for (let i = 0; i < tree.children.length; i++) {\n let ch = tree.children[i];\n if (ch instanceof Tree)\n explore(ch, tree.positions[i] + from);\n }\n };\n explore(syntaxTree(state), 0);\n return result;\n }\n /**\n Indicates whether this language allows nested languages. The\n default implementation returns true.\n */\n get allowsNesting() { return true; }\n}\n/**\n@internal\n*/\nLanguage.setState = /*@__PURE__*/StateEffect.define();\nfunction topNodeAt(state, pos, side) {\n let topLang = state.facet(language), tree = syntaxTree(state).topNode;\n if (!topLang || topLang.allowsNesting) {\n for (let node = tree; node; node = node.enter(pos, side, IterMode.ExcludeBuffers | IterMode.EnterBracketed))\n if (node.type.isTop)\n tree = node;\n }\n return tree;\n}\n/**\nA subclass of [`Language`](https://codemirror.net/6/docs/ref/#language.Language) for use with Lezer\n[LR parsers](https://lezer.codemirror.net/docs/ref#lr.LRParser)\nparsers.\n*/\nclass LRLanguage extends Language {\n constructor(data, parser, name) {\n super(data, parser, [], name);\n this.parser = parser;\n }\n /**\n Define a language from a parser.\n */\n static define(spec) {\n let data = defineLanguageFacet(spec.languageData);\n return new LRLanguage(data, spec.parser.configure({\n props: [languageDataProp.add(type => type.isTop ? data : undefined)]\n }), spec.name);\n }\n /**\n Create a new instance of this language with a reconfigured\n version of its parser and optionally a new name.\n */\n configure(options, name) {\n return new LRLanguage(this.data, this.parser.configure(options), name || this.name);\n }\n get allowsNesting() { return this.parser.hasWrappers(); }\n}\n/**\nGet the syntax tree for a state, which is the current (possibly\nincomplete) parse tree of the active\n[language](https://codemirror.net/6/docs/ref/#language.Language), or the empty tree if there is no\nlanguage available.\n*/\nfunction syntaxTree(state) {\n let field = state.field(Language.state, false);\n return field ? field.tree : Tree.empty;\n}\n/**\nTry to get a parse tree that spans at least up to `upto`. The\nmethod will do at most `timeout` milliseconds of work to parse\nup to that point if the tree isn't already available.\n*/\nfunction ensureSyntaxTree(state, upto, timeout = 50) {\n var _a;\n let parse = (_a = state.field(Language.state, false)) === null || _a === void 0 ? void 0 : _a.context;\n if (!parse)\n return null;\n let oldVieport = parse.viewport;\n parse.updateViewport({ from: 0, to: upto });\n let result = parse.isDone(upto) || parse.work(timeout, upto) ? parse.tree : null;\n parse.updateViewport(oldVieport);\n return result;\n}\n/**\nQueries whether there is a full syntax tree available up to the\ngiven document position. If there isn't, the background parse\nprocess _might_ still be working and update the tree further, but\nthere is no guarantee of that\u2014the parser will [stop\nworking](https://codemirror.net/6/docs/ref/#language.syntaxParserRunning) when it has spent a\ncertain amount of time or has moved beyond the visible viewport.\nAlways returns false if no language has been enabled.\n*/\nfunction syntaxTreeAvailable(state, upto = state.doc.length) {\n var _a;\n return ((_a = state.field(Language.state, false)) === null || _a === void 0 ? void 0 : _a.context.isDone(upto)) || false;\n}\n/**\nMove parsing forward, and update the editor state afterwards to\nreflect the new tree. Will work for at most `timeout`\nmilliseconds. Returns true if the parser managed get to the given\nposition in that time.\n*/\nfunction forceParsing(view, upto = view.viewport.to, timeout = 100) {\n let success = ensureSyntaxTree(view.state, upto, timeout);\n if (success != syntaxTree(view.state))\n view.dispatch({});\n return !!success;\n}\n/**\nTells you whether the language parser is planning to do more\nparsing work (in a `requestIdleCallback` pseudo-thread) or has\nstopped running, either because it parsed the entire document,\nbecause it spent too much time and was cut off, or because there\nis no language parser enabled.\n*/\nfunction syntaxParserRunning(view) {\n var _a;\n return ((_a = view.plugin(parseWorker)) === null || _a === void 0 ? void 0 : _a.isWorking()) || false;\n}\n/**\nLezer-style\n[`Input`](https://lezer.codemirror.net/docs/ref#common.Input)\nobject for a [`Text`](https://codemirror.net/6/docs/ref/#state.Text) object.\n*/\nclass DocInput {\n /**\n Create an input object for the given document.\n */\n constructor(doc) {\n this.doc = doc;\n this.cursorPos = 0;\n this.string = \"\";\n this.cursor = doc.iter();\n }\n get length() { return this.doc.length; }\n syncTo(pos) {\n this.string = this.cursor.next(pos - this.cursorPos).value;\n this.cursorPos = pos + this.string.length;\n return this.cursorPos - this.string.length;\n }\n chunk(pos) {\n this.syncTo(pos);\n return this.string;\n }\n get lineChunks() { return true; }\n read(from, to) {\n let stringStart = this.cursorPos - this.string.length;\n if (from < stringStart || to >= this.cursorPos)\n return this.doc.sliceString(from, to);\n else\n return this.string.slice(from - stringStart, to - stringStart);\n }\n}\nlet currentContext = null;\n/**\nA parse context provided to parsers working on the editor content.\n*/\nclass ParseContext {\n constructor(parser, \n /**\n The current editor state.\n */\n state, \n /**\n Tree fragments that can be reused by incremental re-parses.\n */\n fragments = [], \n /**\n @internal\n */\n tree, \n /**\n @internal\n */\n treeLen, \n /**\n The current editor viewport (or some overapproximation\n thereof). Intended to be used for opportunistically avoiding\n work (in which case\n [`skipUntilInView`](https://codemirror.net/6/docs/ref/#language.ParseContext.skipUntilInView)\n should be called to make sure the parser is restarted when the\n skipped region becomes visible).\n */\n viewport, \n /**\n @internal\n */\n skipped, \n /**\n This is where skipping parsers can register a promise that,\n when resolved, will schedule a new parse. It is cleared when\n the parse worker picks up the promise. @internal\n */\n scheduleOn) {\n this.parser = parser;\n this.state = state;\n this.fragments = fragments;\n this.tree = tree;\n this.treeLen = treeLen;\n this.viewport = viewport;\n this.skipped = skipped;\n this.scheduleOn = scheduleOn;\n this.parse = null;\n /**\n @internal\n */\n this.tempSkipped = [];\n }\n /**\n @internal\n */\n static create(parser, state, viewport) {\n return new ParseContext(parser, state, [], Tree.empty, 0, viewport, [], null);\n }\n startParse() {\n return this.parser.startParse(new DocInput(this.state.doc), this.fragments);\n }\n /**\n @internal\n */\n work(until, upto) {\n if (upto != null && upto >= this.state.doc.length)\n upto = undefined;\n if (this.tree != Tree.empty && this.isDone(upto !== null && upto !== void 0 ? upto : this.state.doc.length)) {\n this.takeTree();\n return true;\n }\n return this.withContext(() => {\n var _a;\n if (typeof until == \"number\") {\n let endTime = Date.now() + until;\n until = () => Date.now() > endTime;\n }\n if (!this.parse)\n this.parse = this.startParse();\n if (upto != null && (this.parse.stoppedAt == null || this.parse.stoppedAt > upto) &&\n upto < this.state.doc.length)\n this.parse.stopAt(upto);\n for (;;) {\n let done = this.parse.advance();\n if (done) {\n this.fragments = this.withoutTempSkipped(TreeFragment.addTree(done, this.fragments, this.parse.stoppedAt != null));\n this.treeLen = (_a = this.parse.stoppedAt) !== null && _a !== void 0 ? _a : this.state.doc.length;\n this.tree = done;\n this.parse = null;\n if (this.treeLen < (upto !== null && upto !== void 0 ? upto : this.state.doc.length))\n this.parse = this.startParse();\n else\n return true;\n }\n if (until())\n return false;\n }\n });\n }\n /**\n @internal\n */\n takeTree() {\n let pos, tree;\n if (this.parse && (pos = this.parse.parsedPos) >= this.treeLen) {\n if (this.parse.stoppedAt == null || this.parse.stoppedAt > pos)\n this.parse.stopAt(pos);\n this.withContext(() => { while (!(tree = this.parse.advance())) { } });\n this.treeLen = pos;\n this.tree = tree;\n this.fragments = this.withoutTempSkipped(TreeFragment.addTree(this.tree, this.fragments, true));\n this.parse = null;\n }\n }\n withContext(f) {\n let prev = currentContext;\n currentContext = this;\n try {\n return f();\n }\n finally {\n currentContext = prev;\n }\n }\n withoutTempSkipped(fragments) {\n for (let r; r = this.tempSkipped.pop();)\n fragments = cutFragments(fragments, r.from, r.to);\n return fragments;\n }\n /**\n @internal\n */\n changes(changes, newState) {\n let { fragments, tree, treeLen, viewport, skipped } = this;\n this.takeTree();\n if (!changes.empty) {\n let ranges = [];\n changes.iterChangedRanges((fromA, toA, fromB, toB) => ranges.push({ fromA, toA, fromB, toB }));\n fragments = TreeFragment.applyChanges(fragments, ranges);\n tree = Tree.empty;\n treeLen = 0;\n viewport = { from: changes.mapPos(viewport.from, -1), to: changes.mapPos(viewport.to, 1) };\n if (this.skipped.length) {\n skipped = [];\n for (let r of this.skipped) {\n let from = changes.mapPos(r.from, 1), to = changes.mapPos(r.to, -1);\n if (from < to)\n skipped.push({ from, to });\n }\n }\n }\n return new ParseContext(this.parser, newState, fragments, tree, treeLen, viewport, skipped, this.scheduleOn);\n }\n /**\n @internal\n */\n updateViewport(viewport) {\n if (this.viewport.from == viewport.from && this.viewport.to == viewport.to)\n return false;\n this.viewport = viewport;\n let startLen = this.skipped.length;\n for (let i = 0; i < this.skipped.length; i++) {\n let { from, to } = this.skipped[i];\n if (from < viewport.to && to > viewport.from) {\n this.fragments = cutFragments(this.fragments, from, to);\n this.skipped.splice(i--, 1);\n }\n }\n if (this.skipped.length >= startLen)\n return false;\n this.reset();\n return true;\n }\n /**\n @internal\n */\n reset() {\n if (this.parse) {\n this.takeTree();\n this.parse = null;\n }\n }\n /**\n Notify the parse scheduler that the given region was skipped\n because it wasn't in view, and the parse should be restarted\n when it comes into view.\n */\n skipUntilInView(from, to) {\n this.skipped.push({ from, to });\n }\n /**\n Returns a parser intended to be used as placeholder when\n asynchronously loading a nested parser. It'll skip its input and\n mark it as not-really-parsed, so that the next update will parse\n it again.\n \n When `until` is given, a reparse will be scheduled when that\n promise resolves.\n */\n static getSkippingParser(until) {\n return new class extends Parser {\n createParse(input, fragments, ranges) {\n let from = ranges[0].from, to = ranges[ranges.length - 1].to;\n let parser = {\n parsedPos: from,\n advance() {\n let cx = currentContext;\n if (cx) {\n for (let r of ranges)\n cx.tempSkipped.push(r);\n if (until)\n cx.scheduleOn = cx.scheduleOn ? Promise.all([cx.scheduleOn, until]) : until;\n }\n this.parsedPos = to;\n return new Tree(NodeType.none, [], [], to - from);\n },\n stoppedAt: null,\n stopAt() { }\n };\n return parser;\n }\n };\n }\n /**\n @internal\n */\n isDone(upto) {\n upto = Math.min(upto, this.state.doc.length);\n let frags = this.fragments;\n return this.treeLen >= upto && frags.length && frags[0].from == 0 && frags[0].to >= upto;\n }\n /**\n Get the context for the current parse, or `null` if no editor\n parse is in progress.\n */\n static get() { return currentContext; }\n}\nfunction cutFragments(fragments, from, to) {\n return TreeFragment.applyChanges(fragments, [{ fromA: from, toA: to, fromB: from, toB: to }]);\n}\nclass LanguageState {\n constructor(\n // A mutable parse state that is used to preserve work done during\n // the lifetime of a state when moving to the next state.\n context) {\n this.context = context;\n this.tree = context.tree;\n }\n apply(tr) {\n if (!tr.docChanged && this.tree == this.context.tree)\n return this;\n let newCx = this.context.changes(tr.changes, tr.state);\n // If the previous parse wasn't done, go forward only up to its\n // end position or the end of the viewport, to avoid slowing down\n // state updates with parse work beyond the viewport.\n let upto = this.context.treeLen == tr.startState.doc.length ? undefined\n : Math.max(tr.changes.mapPos(this.context.treeLen), newCx.viewport.to);\n if (!newCx.work(20 /* Work.Apply */, upto))\n newCx.takeTree();\n return new LanguageState(newCx);\n }\n static init(state) {\n let vpTo = Math.min(3000 /* Work.InitViewport */, state.doc.length);\n let parseState = ParseContext.create(state.facet(language).parser, state, { from: 0, to: vpTo });\n if (!parseState.work(20 /* Work.Apply */, vpTo))\n parseState.takeTree();\n return new LanguageState(parseState);\n }\n}\nLanguage.state = /*@__PURE__*/StateField.define({\n create: LanguageState.init,\n update(value, tr) {\n for (let e of tr.effects)\n if (e.is(Language.setState))\n return e.value;\n if (tr.startState.facet(language) != tr.state.facet(language))\n return LanguageState.init(tr.state);\n return value.apply(tr);\n }\n});\nlet requestIdle = (callback) => {\n let timeout = setTimeout(() => callback(), 500 /* Work.MaxPause */);\n return () => clearTimeout(timeout);\n};\nif (typeof requestIdleCallback != \"undefined\")\n requestIdle = (callback) => {\n let idle = -1, timeout = setTimeout(() => {\n idle = requestIdleCallback(callback, { timeout: 500 /* Work.MaxPause */ - 100 /* Work.MinPause */ });\n }, 100 /* Work.MinPause */);\n return () => idle < 0 ? clearTimeout(timeout) : cancelIdleCallback(idle);\n };\nconst isInputPending = typeof navigator != \"undefined\" && ((_a = navigator.scheduling) === null || _a === void 0 ? void 0 : _a.isInputPending)\n ? () => navigator.scheduling.isInputPending() : null;\nconst parseWorker = /*@__PURE__*/ViewPlugin.fromClass(class ParseWorker {\n constructor(view) {\n this.view = view;\n this.working = null;\n this.workScheduled = 0;\n // End of the current time chunk\n this.chunkEnd = -1;\n // Milliseconds of budget left for this chunk\n this.chunkBudget = -1;\n this.work = this.work.bind(this);\n this.scheduleWork();\n }\n update(update) {\n let cx = this.view.state.field(Language.state).context;\n if (cx.updateViewport(update.view.viewport) || this.view.viewport.to > cx.treeLen)\n this.scheduleWork();\n if (update.docChanged || update.selectionSet) {\n if (this.view.hasFocus)\n this.chunkBudget += 50 /* Work.ChangeBonus */;\n this.scheduleWork();\n }\n this.checkAsyncSchedule(cx);\n }\n scheduleWork() {\n if (this.working)\n return;\n let { state } = this.view, field = state.field(Language.state);\n if (field.tree != field.context.tree || !field.context.isDone(state.doc.length))\n this.working = requestIdle(this.work);\n }\n work(deadline) {\n this.working = null;\n let now = Date.now();\n if (this.chunkEnd < now && (this.chunkEnd < 0 || this.view.hasFocus)) { // Start a new chunk\n this.chunkEnd = now + 30000 /* Work.ChunkTime */;\n this.chunkBudget = 3000 /* Work.ChunkBudget */;\n }\n if (this.chunkBudget <= 0)\n return; // No more budget\n let { state, viewport: { to: vpTo } } = this.view, field = state.field(Language.state);\n if (field.tree == field.context.tree && field.context.isDone(vpTo + 100000 /* Work.MaxParseAhead */))\n return;\n let endTime = Date.now() + Math.min(this.chunkBudget, 100 /* Work.Slice */, deadline && !isInputPending ? Math.max(25 /* Work.MinSlice */, deadline.timeRemaining() - 5) : 1e9);\n let viewportFirst = field.context.treeLen < vpTo && state.doc.length > vpTo + 1000;\n let done = field.context.work(() => {\n return isInputPending && isInputPending() || Date.now() > endTime;\n }, vpTo + (viewportFirst ? 0 : 100000 /* Work.MaxParseAhead */));\n this.chunkBudget -= Date.now() - now;\n if (done || this.chunkBudget <= 0) {\n field.context.takeTree();\n this.view.dispatch({ effects: Language.setState.of(new LanguageState(field.context)) });\n }\n if (this.chunkBudget > 0 && !(done && !viewportFirst))\n this.scheduleWork();\n this.checkAsyncSchedule(field.context);\n }\n checkAsyncSchedule(cx) {\n if (cx.scheduleOn) {\n this.workScheduled++;\n cx.scheduleOn\n .then(() => this.scheduleWork())\n .catch(err => logException(this.view.state, err))\n .then(() => this.workScheduled--);\n cx.scheduleOn = null;\n }\n }\n destroy() {\n if (this.working)\n this.working();\n }\n isWorking() {\n return !!(this.working || this.workScheduled > 0);\n }\n}, {\n eventHandlers: { focus() { this.scheduleWork(); } }\n});\n/**\nThe facet used to associate a language with an editor state. Used\nby `Language` object's `extension` property (so you don't need to\nmanually wrap your languages in this). Can be used to access the\ncurrent language on a state.\n*/\nconst language = /*@__PURE__*/Facet.define({\n combine(languages) { return languages.length ? languages[0] : null; },\n enables: language => [\n Language.state,\n parseWorker,\n EditorView.contentAttributes.compute([language], state => {\n let lang = state.facet(language);\n return lang && lang.name ? { \"data-language\": lang.name } : {};\n })\n ]\n});\n/**\nThis class bundles a [language](https://codemirror.net/6/docs/ref/#language.Language) with an\noptional set of supporting extensions. Language packages are\nencouraged to export a function that optionally takes a\nconfiguration object and returns a `LanguageSupport` instance, as\nthe main way for client code to use the package.\n*/\nclass LanguageSupport {\n /**\n Create a language support object.\n */\n constructor(\n /**\n The language object.\n */\n language, \n /**\n An optional set of supporting extensions. When nesting a\n language in another language, the outer language is encouraged\n to include the supporting extensions for its inner languages\n in its own set of support extensions.\n */\n support = []) {\n this.language = language;\n this.support = support;\n this.extension = [language, support];\n }\n}\n/**\nLanguage descriptions are used to store metadata about languages\nand to dynamically load them. Their main role is finding the\nappropriate language for a filename or dynamically loading nested\nparsers.\n*/\nclass LanguageDescription {\n constructor(\n /**\n The name of this language.\n */\n name, \n /**\n Alternative names for the mode (lowercased, includes `this.name`).\n */\n alias, \n /**\n File extensions associated with this language.\n */\n extensions, \n /**\n Optional filename pattern that should be associated with this\n language.\n */\n filename, loadFunc, \n /**\n If the language has been loaded, this will hold its value.\n */\n support = undefined) {\n this.name = name;\n this.alias = alias;\n this.extensions = extensions;\n this.filename = filename;\n this.loadFunc = loadFunc;\n this.support = support;\n this.loading = null;\n }\n /**\n Start loading the the language. Will return a promise that\n resolves to a [`LanguageSupport`](https://codemirror.net/6/docs/ref/#language.LanguageSupport)\n object when the language successfully loads.\n */\n load() {\n return this.loading || (this.loading = this.loadFunc().then(support => this.support = support, err => { this.loading = null; throw err; }));\n }\n /**\n Create a language description.\n */\n static of(spec) {\n let { load, support } = spec;\n if (!load) {\n if (!support)\n throw new RangeError(\"Must pass either 'load' or 'support' to LanguageDescription.of\");\n load = () => Promise.resolve(support);\n }\n return new LanguageDescription(spec.name, (spec.alias || []).concat(spec.name).map(s => s.toLowerCase()), spec.extensions || [], spec.filename, load, support);\n }\n /**\n Look for a language in the given array of descriptions that\n matches the filename. Will first match\n [`filename`](https://codemirror.net/6/docs/ref/#language.LanguageDescription.filename) patterns,\n and then [extensions](https://codemirror.net/6/docs/ref/#language.LanguageDescription.extensions),\n and return the first language that matches.\n */\n static matchFilename(descs, filename) {\n for (let d of descs)\n if (d.filename && d.filename.test(filename))\n return d;\n let ext = /\\.([^.]+)$/.exec(filename);\n if (ext)\n for (let d of descs)\n if (d.extensions.indexOf(ext[1]) > -1)\n return d;\n return null;\n }\n /**\n Look for a language whose name or alias matches the the given\n name (case-insensitively). If `fuzzy` is true, and no direct\n matchs is found, this'll also search for a language whose name\n or alias occurs in the string (for names shorter than three\n characters, only when surrounded by non-word characters).\n */\n static matchLanguageName(descs, name, fuzzy = true) {\n name = name.toLowerCase();\n for (let d of descs)\n if (d.alias.some(a => a == name))\n return d;\n if (fuzzy)\n for (let d of descs)\n for (let a of d.alias) {\n let found = name.indexOf(a);\n if (found > -1 && (a.length > 2 || !/\\w/.test(name[found - 1]) && !/\\w/.test(name[found + a.length])))\n return d;\n }\n return null;\n }\n}\n\n/**\nFacet that defines a way to provide a function that computes the\nappropriate indentation depth, as a column number (see\n[`indentString`](https://codemirror.net/6/docs/ref/#language.indentString)), at the start of a given\nline. A return value of `null` indicates no indentation can be\ndetermined, and the line should inherit the indentation of the one\nabove it. A return value of `undefined` defers to the next indent\nservice.\n*/\nconst indentService = /*@__PURE__*/Facet.define();\n/**\nFacet for overriding the unit by which indentation happens. Should\nbe a string consisting entirely of the same whitespace character.\nWhen not set, this defaults to 2 spaces.\n*/\nconst indentUnit = /*@__PURE__*/Facet.define({\n combine: values => {\n if (!values.length)\n return \" \";\n let unit = values[0];\n if (!unit || /\\S/.test(unit) || Array.from(unit).some(e => e != unit[0]))\n throw new Error(\"Invalid indent unit: \" + JSON.stringify(values[0]));\n return unit;\n }\n});\n/**\nReturn the _column width_ of an indent unit in the state.\nDetermined by the [`indentUnit`](https://codemirror.net/6/docs/ref/#language.indentUnit)\nfacet, and [`tabSize`](https://codemirror.net/6/docs/ref/#state.EditorState^tabSize) when that\ncontains tabs.\n*/\nfunction getIndentUnit(state) {\n let unit = state.facet(indentUnit);\n return unit.charCodeAt(0) == 9 ? state.tabSize * unit.length : unit.length;\n}\n/**\nCreate an indentation string that covers columns 0 to `cols`.\nWill use tabs for as much of the columns as possible when the\n[`indentUnit`](https://codemirror.net/6/docs/ref/#language.indentUnit) facet contains\ntabs.\n*/\nfunction indentString(state, cols) {\n let result = \"\", ts = state.tabSize, ch = state.facet(indentUnit)[0];\n if (ch == \"\\t\") {\n while (cols >= ts) {\n result += \"\\t\";\n cols -= ts;\n }\n ch = \" \";\n }\n for (let i = 0; i < cols; i++)\n result += ch;\n return result;\n}\n/**\nGet the indentation, as a column number, at the given position.\nWill first consult any [indent services](https://codemirror.net/6/docs/ref/#language.indentService)\nthat are registered, and if none of those return an indentation,\nthis will check the syntax tree for the [indent node\nprop](https://codemirror.net/6/docs/ref/#language.indentNodeProp) and use that if found. Returns a\nnumber when an indentation could be determined, and null\notherwise.\n*/\nfunction getIndentation(context, pos) {\n if (context instanceof EditorState)\n context = new IndentContext(context);\n for (let service of context.state.facet(indentService)) {\n let result = service(context, pos);\n if (result !== undefined)\n return result;\n }\n let tree = syntaxTree(context.state);\n return tree.length >= pos ? syntaxIndentation(context, tree, pos) : null;\n}\n/**\nCreate a change set that auto-indents all lines touched by the\ngiven document range.\n*/\nfunction indentRange(state, from, to) {\n let updated = Object.create(null);\n let context = new IndentContext(state, { overrideIndentation: start => { var _a; return (_a = updated[start]) !== null && _a !== void 0 ? _a : -1; } });\n let changes = [];\n for (let pos = from; pos <= to;) {\n let line = state.doc.lineAt(pos);\n pos = line.to + 1;\n let indent = getIndentation(context, line.from);\n if (indent == null)\n continue;\n if (!/\\S/.test(line.text))\n indent = 0;\n let cur = /^\\s*/.exec(line.text)[0];\n let norm = indentString(state, indent);\n if (cur != norm) {\n updated[line.from] = indent;\n changes.push({ from: line.from, to: line.from + cur.length, insert: norm });\n }\n }\n return state.changes(changes);\n}\n/**\nIndentation contexts are used when calling [indentation\nservices](https://codemirror.net/6/docs/ref/#language.indentService). They provide helper utilities\nuseful in indentation logic, and can selectively override the\nindentation reported for some lines.\n*/\nclass IndentContext {\n /**\n Create an indent context.\n */\n constructor(\n /**\n The editor state.\n */\n state, \n /**\n @internal\n */\n options = {}) {\n this.state = state;\n this.options = options;\n this.unit = getIndentUnit(state);\n }\n /**\n Get a description of the line at the given position, taking\n [simulated line\n breaks](https://codemirror.net/6/docs/ref/#language.IndentContext.constructor^options.simulateBreak)\n into account. If there is such a break at `pos`, the `bias`\n argument determines whether the part of the line line before or\n after the break is used.\n */\n lineAt(pos, bias = 1) {\n let line = this.state.doc.lineAt(pos);\n let { simulateBreak, simulateDoubleBreak } = this.options;\n if (simulateBreak != null && simulateBreak >= line.from && simulateBreak <= line.to) {\n if (simulateDoubleBreak && simulateBreak == pos)\n return { text: \"\", from: pos };\n else if (bias < 0 ? simulateBreak < pos : simulateBreak <= pos)\n return { text: line.text.slice(simulateBreak - line.from), from: simulateBreak };\n else\n return { text: line.text.slice(0, simulateBreak - line.from), from: line.from };\n }\n return line;\n }\n /**\n Get the text directly after `pos`, either the entire line\n or the next 100 characters, whichever is shorter.\n */\n textAfterPos(pos, bias = 1) {\n if (this.options.simulateDoubleBreak && pos == this.options.simulateBreak)\n return \"\";\n let { text, from } = this.lineAt(pos, bias);\n return text.slice(pos - from, Math.min(text.length, pos + 100 - from));\n }\n /**\n Find the column for the given position.\n */\n column(pos, bias = 1) {\n let { text, from } = this.lineAt(pos, bias);\n let result = this.countColumn(text, pos - from);\n let override = this.options.overrideIndentation ? this.options.overrideIndentation(from) : -1;\n if (override > -1)\n result += override - this.countColumn(text, text.search(/\\S|$/));\n return result;\n }\n /**\n Find the column position (taking tabs into account) of the given\n position in the given string.\n */\n countColumn(line, pos = line.length) {\n return countColumn(line, this.state.tabSize, pos);\n }\n /**\n Find the indentation column of the line at the given point.\n */\n lineIndent(pos, bias = 1) {\n let { text, from } = this.lineAt(pos, bias);\n let override = this.options.overrideIndentation;\n if (override) {\n let overriden = override(from);\n if (overriden > -1)\n return overriden;\n }\n return this.countColumn(text, text.search(/\\S|$/));\n }\n /**\n Returns the [simulated line\n break](https://codemirror.net/6/docs/ref/#language.IndentContext.constructor^options.simulateBreak)\n for this context, if any.\n */\n get simulatedBreak() {\n return this.options.simulateBreak || null;\n }\n}\n/**\nA syntax tree node prop used to associate indentation strategies\nwith node types. Such a strategy is a function from an indentation\ncontext to a column number (see also\n[`indentString`](https://codemirror.net/6/docs/ref/#language.indentString)) or null, where null\nindicates that no definitive indentation can be determined.\n*/\nconst indentNodeProp = /*@__PURE__*/new NodeProp();\n// Compute the indentation for a given position from the syntax tree.\nfunction syntaxIndentation(cx, ast, pos) {\n let stack = ast.resolveStack(pos);\n let inner = ast.resolveInner(pos, -1).resolve(pos, 0).enterUnfinishedNodesBefore(pos);\n if (inner != stack.node) {\n let add = [];\n for (let cur = inner; cur && !(cur.from < stack.node.from || cur.to > stack.node.to ||\n cur.from == stack.node.from && cur.type == stack.node.type); cur = cur.parent)\n add.push(cur);\n for (let i = add.length - 1; i >= 0; i--)\n stack = { node: add[i], next: stack };\n }\n return indentFor(stack, cx, pos);\n}\nfunction indentFor(stack, cx, pos) {\n for (let cur = stack; cur; cur = cur.next) {\n let strategy = indentStrategy(cur.node);\n if (strategy)\n return strategy(TreeIndentContext.create(cx, pos, cur));\n }\n return 0;\n}\nfunction ignoreClosed(cx) {\n return cx.pos == cx.options.simulateBreak && cx.options.simulateDoubleBreak;\n}\nfunction indentStrategy(tree) {\n let strategy = tree.type.prop(indentNodeProp);\n if (strategy)\n return strategy;\n let first = tree.firstChild, close;\n if (first && (close = first.type.prop(NodeProp.closedBy))) {\n let last = tree.lastChild, closed = last && close.indexOf(last.name) > -1;\n return cx => delimitedStrategy(cx, true, 1, undefined, closed && !ignoreClosed(cx) ? last.from : undefined);\n }\n return tree.parent == null ? topIndent : null;\n}\nfunction topIndent() { return 0; }\n/**\nObjects of this type provide context information and helper\nmethods to indentation functions registered on syntax nodes.\n*/\nclass TreeIndentContext extends IndentContext {\n constructor(base, \n /**\n The position at which indentation is being computed.\n */\n pos, \n /**\n @internal\n */\n context) {\n super(base.state, base.options);\n this.base = base;\n this.pos = pos;\n this.context = context;\n }\n /**\n The syntax tree node to which the indentation strategy\n applies.\n */\n get node() { return this.context.node; }\n /**\n @internal\n */\n static create(base, pos, context) {\n return new TreeIndentContext(base, pos, context);\n }\n /**\n Get the text directly after `this.pos`, either the entire line\n or the next 100 characters, whichever is shorter.\n */\n get textAfter() {\n return this.textAfterPos(this.pos);\n }\n /**\n Get the indentation at the reference line for `this.node`, which\n is the line on which it starts, unless there is a node that is\n _not_ a parent of this node covering the start of that line. If\n so, the line at the start of that node is tried, again skipping\n on if it is covered by another such node.\n */\n get baseIndent() {\n return this.baseIndentFor(this.node);\n }\n /**\n Get the indentation for the reference line of the given node\n (see [`baseIndent`](https://codemirror.net/6/docs/ref/#language.TreeIndentContext.baseIndent)).\n */\n baseIndentFor(node) {\n let line = this.state.doc.lineAt(node.from);\n // Skip line starts that are covered by a sibling (or cousin, etc)\n for (;;) {\n let atBreak = node.resolve(line.from);\n while (atBreak.parent && atBreak.parent.from == atBreak.from)\n atBreak = atBreak.parent;\n if (isParent(atBreak, node))\n break;\n line = this.state.doc.lineAt(atBreak.from);\n }\n return this.lineIndent(line.from);\n }\n /**\n Continue looking for indentations in the node's parent nodes,\n and return the result of that.\n */\n continue() {\n return indentFor(this.context.next, this.base, this.pos);\n }\n}\nfunction isParent(parent, of) {\n for (let cur = of; cur; cur = cur.parent)\n if (parent == cur)\n return true;\n return false;\n}\n// Check whether a delimited node is aligned (meaning there are\n// non-skipped nodes on the same line as the opening delimiter). And\n// if so, return the opening token.\nfunction bracketedAligned(context) {\n let tree = context.node;\n let openToken = tree.childAfter(tree.from), last = tree.lastChild;\n if (!openToken)\n return null;\n let sim = context.options.simulateBreak;\n let openLine = context.state.doc.lineAt(openToken.from);\n let lineEnd = sim == null || sim <= openLine.from ? openLine.to : Math.min(openLine.to, sim);\n for (let pos = openToken.to;;) {\n let next = tree.childAfter(pos);\n if (!next || next == last)\n return null;\n if (!next.type.isSkipped) {\n if (next.from >= lineEnd)\n return null;\n let space = /^ */.exec(openLine.text.slice(openToken.to - openLine.from))[0].length;\n return { from: openToken.from, to: openToken.to + space };\n }\n pos = next.to;\n }\n}\n/**\nAn indentation strategy for delimited (usually bracketed) nodes.\nWill, by default, indent one unit more than the parent's base\nindent unless the line starts with a closing token. When `align`\nis true and there are non-skipped nodes on the node's opening\nline, the content of the node will be aligned with the end of the\nopening node, like this:\n\n foo(bar,\n baz)\n*/\nfunction delimitedIndent({ closing, align = true, units = 1 }) {\n return (context) => delimitedStrategy(context, align, units, closing);\n}\nfunction delimitedStrategy(context, align, units, closing, closedAt) {\n let after = context.textAfter, space = after.match(/^\\s*/)[0].length;\n let closed = closing && after.slice(space, space + closing.length) == closing || closedAt == context.pos + space;\n let aligned = align ? bracketedAligned(context) : null;\n if (aligned)\n return closed ? context.column(aligned.from) : context.column(aligned.to);\n return context.baseIndent + (closed ? 0 : context.unit * units);\n}\n/**\nAn indentation strategy that aligns a node's content to its base\nindentation.\n*/\nconst flatIndent = (context) => context.baseIndent;\n/**\nCreates an indentation strategy that, by default, indents\ncontinued lines one unit more than the node's base indentation.\nYou can provide `except` to prevent indentation of lines that\nmatch a pattern (for example `/^else\\b/` in `if`/`else`\nconstructs), and you can change the amount of units used with the\n`units` option.\n*/\nfunction continuedIndent({ except, units = 1 } = {}) {\n return (context) => {\n let matchExcept = except && except.test(context.textAfter);\n return context.baseIndent + (matchExcept ? 0 : units * context.unit);\n };\n}\nconst DontIndentBeyond = 200;\n/**\nEnables reindentation on input. When a language defines an\n`indentOnInput` field in its [language\ndata](https://codemirror.net/6/docs/ref/#state.EditorState.languageDataAt), which must hold a regular\nexpression, the line at the cursor will be reindented whenever new\ntext is typed and the input from the start of the line up to the\ncursor matches that regexp.\n\nTo avoid unneccesary reindents, it is recommended to start the\nregexp with `^` (usually followed by `\\s*`), and end it with `$`.\nFor example, `/^\\s*\\}$/` will reindent when a closing brace is\nadded at the start of a line.\n*/\nfunction indentOnInput() {\n return EditorState.transactionFilter.of(tr => {\n if (!tr.docChanged || !tr.isUserEvent(\"input.type\") && !tr.isUserEvent(\"input.complete\"))\n return tr;\n let rules = tr.startState.languageDataAt(\"indentOnInput\", tr.startState.selection.main.head);\n if (!rules.length)\n return tr;\n let doc = tr.newDoc, { head } = tr.newSelection.main, line = doc.lineAt(head);\n if (head > line.from + DontIndentBeyond)\n return tr;\n let lineStart = doc.sliceString(line.from, head);\n if (!rules.some(r => r.test(lineStart)))\n return tr;\n let { state } = tr, last = -1, changes = [];\n for (let { head } of state.selection.ranges) {\n let line = state.doc.lineAt(head);\n if (line.from == last)\n continue;\n last = line.from;\n let indent = getIndentation(state, line.from);\n if (indent == null)\n continue;\n let cur = /^\\s*/.exec(line.text)[0];\n let norm = indentString(state, indent);\n if (cur != norm)\n changes.push({ from: line.from, to: line.from + cur.length, insert: norm });\n }\n return changes.length ? [tr, { changes, sequential: true }] : tr;\n });\n}\n\n/**\nA facet that registers a code folding service. When called with\nthe extent of a line, such a function should return a foldable\nrange that starts on that line (but continues beyond it), if one\ncan be found.\n*/\nconst foldService = /*@__PURE__*/Facet.define();\n/**\nThis node prop is used to associate folding information with\nsyntax node types. Given a syntax node, it should check whether\nthat tree is foldable and return the range that can be collapsed\nwhen it is.\n*/\nconst foldNodeProp = /*@__PURE__*/new NodeProp();\n/**\n[Fold](https://codemirror.net/6/docs/ref/#language.foldNodeProp) function that folds everything but\nthe first and the last child of a syntax node. Useful for nodes\nthat start and end with delimiters.\n*/\nfunction foldInside(node) {\n let first = node.firstChild, last = node.lastChild;\n return first && first.to < last.from ? { from: first.to, to: last.type.isError ? node.to : last.from } : null;\n}\nfunction syntaxFolding(state, start, end) {\n let tree = syntaxTree(state);\n if (tree.length < end)\n return null;\n let stack = tree.resolveStack(end, 1);\n let found = null;\n for (let iter = stack; iter; iter = iter.next) {\n let cur = iter.node;\n if (cur.to <= end || cur.from > end)\n continue;\n if (found && cur.from < start)\n break;\n let prop = cur.type.prop(foldNodeProp);\n if (prop && (cur.to < tree.length - 50 || tree.length == state.doc.length || !isUnfinished(cur))) {\n let value = prop(cur, state);\n if (value && value.from <= end && value.from >= start && value.to > end)\n found = value;\n }\n }\n return found;\n}\nfunction isUnfinished(node) {\n let ch = node.lastChild;\n return ch && ch.to == node.to && ch.type.isError;\n}\n/**\nCheck whether the given line is foldable. First asks any fold\nservices registered through\n[`foldService`](https://codemirror.net/6/docs/ref/#language.foldService), and if none of them return\na result, tries to query the [fold node\nprop](https://codemirror.net/6/docs/ref/#language.foldNodeProp) of syntax nodes that cover the end\nof the line.\n*/\nfunction foldable(state, lineStart, lineEnd) {\n for (let service of state.facet(foldService)) {\n let result = service(state, lineStart, lineEnd);\n if (result)\n return result;\n }\n return syntaxFolding(state, lineStart, lineEnd);\n}\nfunction mapRange(range, mapping) {\n let from = mapping.mapPos(range.from, 1), to = mapping.mapPos(range.to, -1);\n return from >= to ? undefined : { from, to };\n}\n/**\nState effect that can be attached to a transaction to fold the\ngiven range. (You probably only need this in exceptional\ncircumstances\u2014usually you'll just want to let\n[`foldCode`](https://codemirror.net/6/docs/ref/#language.foldCode) and the [fold\ngutter](https://codemirror.net/6/docs/ref/#language.foldGutter) create the transactions.)\n*/\nconst foldEffect = /*@__PURE__*/StateEffect.define({ map: mapRange });\n/**\nState effect that unfolds the given range (if it was folded).\n*/\nconst unfoldEffect = /*@__PURE__*/StateEffect.define({ map: mapRange });\nfunction selectedLines(view) {\n let lines = [];\n for (let { head } of view.state.selection.ranges) {\n if (lines.some(l => l.from <= head && l.to >= head))\n continue;\n lines.push(view.lineBlockAt(head));\n }\n return lines;\n}\n/**\nThe state field that stores the folded ranges (as a [decoration\nset](https://codemirror.net/6/docs/ref/#view.DecorationSet)). Can be passed to\n[`EditorState.toJSON`](https://codemirror.net/6/docs/ref/#state.EditorState.toJSON) and\n[`fromJSON`](https://codemirror.net/6/docs/ref/#state.EditorState^fromJSON) to serialize the fold\nstate.\n*/\nconst foldState = /*@__PURE__*/StateField.define({\n create() {\n return Decoration.none;\n },\n update(folded, tr) {\n if (tr.isUserEvent(\"delete\"))\n tr.changes.iterChangedRanges((fromA, toA) => folded = clearTouchedFolds(folded, fromA, toA));\n folded = folded.map(tr.changes);\n for (let e of tr.effects) {\n if (e.is(foldEffect) && !foldExists(folded, e.value.from, e.value.to)) {\n let { preparePlaceholder } = tr.state.facet(foldConfig);\n let widget = !preparePlaceholder ? foldWidget :\n Decoration.replace({ widget: new PreparedFoldWidget(preparePlaceholder(tr.state, e.value)) });\n folded = folded.update({ add: [widget.range(e.value.from, e.value.to)] });\n }\n else if (e.is(unfoldEffect)) {\n folded = folded.update({ filter: (from, to) => e.value.from != from || e.value.to != to,\n filterFrom: e.value.from, filterTo: e.value.to });\n }\n }\n // Clear folded ranges that cover the selection head\n if (tr.selection)\n folded = clearTouchedFolds(folded, tr.selection.main.head);\n return folded;\n },\n provide: f => EditorView.decorations.from(f),\n toJSON(folded, state) {\n let ranges = [];\n folded.between(0, state.doc.length, (from, to) => { ranges.push(from, to); });\n return ranges;\n },\n fromJSON(value) {\n if (!Array.isArray(value) || value.length % 2)\n throw new RangeError(\"Invalid JSON for fold state\");\n let ranges = [];\n for (let i = 0; i < value.length;) {\n let from = value[i++], to = value[i++];\n if (typeof from != \"number\" || typeof to != \"number\")\n throw new RangeError(\"Invalid JSON for fold state\");\n ranges.push(foldWidget.range(from, to));\n }\n return Decoration.set(ranges, true);\n }\n});\nfunction clearTouchedFolds(folded, from, to = from) {\n let touched = false;\n folded.between(from, to, (a, b) => { if (a < to && b > from)\n touched = true; });\n return !touched ? folded : folded.update({\n filterFrom: from,\n filterTo: to,\n filter: (a, b) => a >= to || b <= from\n });\n}\n/**\nGet a [range set](https://codemirror.net/6/docs/ref/#state.RangeSet) containing the folded ranges\nin the given state.\n*/\nfunction foldedRanges(state) {\n return state.field(foldState, false) || RangeSet.empty;\n}\nfunction findFold(state, from, to) {\n var _a;\n let found = null;\n (_a = state.field(foldState, false)) === null || _a === void 0 ? void 0 : _a.between(from, to, (from, to) => {\n if (!found || found.from > from)\n found = { from, to };\n });\n return found;\n}\nfunction foldExists(folded, from, to) {\n let found = false;\n folded.between(from, from, (a, b) => { if (a == from && b == to)\n found = true; });\n return found;\n}\nfunction maybeEnable(state, other) {\n return state.field(foldState, false) ? other : other.concat(StateEffect.appendConfig.of(codeFolding()));\n}\n/**\nFold the lines that are selected, if possible.\n*/\nconst foldCode = view => {\n for (let line of selectedLines(view)) {\n let range = foldable(view.state, line.from, line.to);\n if (range) {\n view.dispatch({ effects: maybeEnable(view.state, [foldEffect.of(range), announceFold(view, range)]) });\n return true;\n }\n }\n return false;\n};\n/**\nUnfold folded ranges on selected lines.\n*/\nconst unfoldCode = view => {\n if (!view.state.field(foldState, false))\n return false;\n let effects = [];\n for (let line of selectedLines(view)) {\n let folded = findFold(view.state, line.from, line.to);\n if (folded)\n effects.push(unfoldEffect.of(folded), announceFold(view, folded, false));\n }\n if (effects.length)\n view.dispatch({ effects });\n return effects.length > 0;\n};\nfunction announceFold(view, range, fold = true) {\n let lineFrom = view.state.doc.lineAt(range.from).number, lineTo = view.state.doc.lineAt(range.to).number;\n return EditorView.announce.of(`${view.state.phrase(fold ? \"Folded lines\" : \"Unfolded lines\")} ${lineFrom} ${view.state.phrase(\"to\")} ${lineTo}.`);\n}\n/**\nFold all top-level foldable ranges. Note that, in most cases,\nfolding information will depend on the [syntax\ntree](https://codemirror.net/6/docs/ref/#language.syntaxTree), and folding everything may not work\nreliably when the document hasn't been fully parsed (either\nbecause the editor state was only just initialized, or because the\ndocument is so big that the parser decided not to parse it\nentirely).\n*/\nconst foldAll = view => {\n let { state } = view, effects = [];\n for (let pos = 0; pos < state.doc.length;) {\n let line = view.lineBlockAt(pos), range = foldable(state, line.from, line.to);\n if (range)\n effects.push(foldEffect.of(range));\n pos = (range ? view.lineBlockAt(range.to) : line).to + 1;\n }\n if (effects.length)\n view.dispatch({ effects: maybeEnable(view.state, effects) });\n return !!effects.length;\n};\n/**\nUnfold all folded code.\n*/\nconst unfoldAll = view => {\n let field = view.state.field(foldState, false);\n if (!field || !field.size)\n return false;\n let effects = [];\n field.between(0, view.state.doc.length, (from, to) => { effects.push(unfoldEffect.of({ from, to })); });\n view.dispatch({ effects });\n return true;\n};\n// Find the foldable region containing the given line, if one exists\nfunction foldableContainer(view, lineBlock) {\n // Look backwards through line blocks until we find a foldable region that\n // intersects with the line\n for (let line = lineBlock;;) {\n let foldableRegion = foldable(view.state, line.from, line.to);\n if (foldableRegion && foldableRegion.to > lineBlock.from)\n return foldableRegion;\n if (!line.from)\n return null;\n line = view.lineBlockAt(line.from - 1);\n }\n}\n/**\nToggle folding at cursors. Unfolds if there is an existing fold\nstarting in that line, tries to find a foldable range around it\notherwise.\n*/\nconst toggleFold = (view) => {\n let effects = [];\n for (let line of selectedLines(view)) {\n let folded = findFold(view.state, line.from, line.to);\n if (folded) {\n effects.push(unfoldEffect.of(folded), announceFold(view, folded, false));\n }\n else {\n let foldRange = foldableContainer(view, line);\n if (foldRange)\n effects.push(foldEffect.of(foldRange), announceFold(view, foldRange));\n }\n }\n if (effects.length > 0)\n view.dispatch({ effects: maybeEnable(view.state, effects) });\n return !!effects.length;\n};\n/**\nDefault fold-related key bindings.\n\n - Ctrl-Shift-[ (Cmd-Alt-[ on macOS): [`foldCode`](https://codemirror.net/6/docs/ref/#language.foldCode).\n - Ctrl-Shift-] (Cmd-Alt-] on macOS): [`unfoldCode`](https://codemirror.net/6/docs/ref/#language.unfoldCode).\n - Ctrl-Alt-[: [`foldAll`](https://codemirror.net/6/docs/ref/#language.foldAll).\n - Ctrl-Alt-]: [`unfoldAll`](https://codemirror.net/6/docs/ref/#language.unfoldAll).\n*/\nconst foldKeymap = [\n { key: \"Ctrl-Shift-[\", mac: \"Cmd-Alt-[\", run: foldCode },\n { key: \"Ctrl-Shift-]\", mac: \"Cmd-Alt-]\", run: unfoldCode },\n { key: \"Ctrl-Alt-[\", run: foldAll },\n { key: \"Ctrl-Alt-]\", run: unfoldAll }\n];\nconst defaultConfig = {\n placeholderDOM: null,\n preparePlaceholder: null,\n placeholderText: \"\u2026\"\n};\nconst foldConfig = /*@__PURE__*/Facet.define({\n combine(values) { return combineConfig(values, defaultConfig); }\n});\n/**\nCreate an extension that configures code folding.\n*/\nfunction codeFolding(config) {\n let result = [foldState, baseTheme$1];\n if (config)\n result.push(foldConfig.of(config));\n return result;\n}\nfunction widgetToDOM(view, prepared) {\n let { state } = view, conf = state.facet(foldConfig);\n let onclick = (event) => {\n let line = view.lineBlockAt(view.posAtDOM(event.target));\n let folded = findFold(view.state, line.from, line.to);\n if (folded)\n view.dispatch({ effects: unfoldEffect.of(folded) });\n event.preventDefault();\n };\n if (conf.placeholderDOM)\n return conf.placeholderDOM(view, onclick, prepared);\n let element = document.createElement(\"span\");\n element.textContent = conf.placeholderText;\n element.setAttribute(\"aria-label\", state.phrase(\"folded code\"));\n element.title = state.phrase(\"unfold\");\n element.className = \"cm-foldPlaceholder\";\n element.onclick = onclick;\n return element;\n}\nconst foldWidget = /*@__PURE__*/Decoration.replace({ widget: /*@__PURE__*/new class extends WidgetType {\n toDOM(view) { return widgetToDOM(view, null); }\n } });\nclass PreparedFoldWidget extends WidgetType {\n constructor(value) {\n super();\n this.value = value;\n }\n eq(other) { return this.value == other.value; }\n toDOM(view) { return widgetToDOM(view, this.value); }\n}\nconst foldGutterDefaults = {\n openText: \"\u2304\",\n closedText: \"\u203A\",\n markerDOM: null,\n domEventHandlers: {},\n foldingChanged: () => false\n};\nclass FoldMarker extends GutterMarker {\n constructor(config, open) {\n super();\n this.config = config;\n this.open = open;\n }\n eq(other) { return this.config == other.config && this.open == other.open; }\n toDOM(view) {\n if (this.config.markerDOM)\n return this.config.markerDOM(this.open);\n let span = document.createElement(\"span\");\n span.textContent = this.open ? this.config.openText : this.config.closedText;\n span.title = view.state.phrase(this.open ? \"Fold line\" : \"Unfold line\");\n return span;\n }\n}\n/**\nCreate an extension that registers a fold gutter, which shows a\nfold status indicator before foldable lines (which can be clicked\nto fold or unfold the line).\n*/\nfunction foldGutter(config = {}) {\n let fullConfig = { ...foldGutterDefaults, ...config };\n let canFold = new FoldMarker(fullConfig, true), canUnfold = new FoldMarker(fullConfig, false);\n let markers = ViewPlugin.fromClass(class {\n constructor(view) {\n this.from = view.viewport.from;\n this.markers = this.buildMarkers(view);\n }\n update(update) {\n if (update.docChanged || update.viewportChanged ||\n update.startState.facet(language) != update.state.facet(language) ||\n update.startState.field(foldState, false) != update.state.field(foldState, false) ||\n syntaxTree(update.startState) != syntaxTree(update.state) ||\n fullConfig.foldingChanged(update))\n this.markers = this.buildMarkers(update.view);\n }\n buildMarkers(view) {\n let builder = new RangeSetBuilder();\n for (let line of view.viewportLineBlocks) {\n let mark = findFold(view.state, line.from, line.to) ? canUnfold\n : foldable(view.state, line.from, line.to) ? canFold : null;\n if (mark)\n builder.add(line.from, line.from, mark);\n }\n return builder.finish();\n }\n });\n let { domEventHandlers } = fullConfig;\n return [\n markers,\n gutter({\n class: \"cm-foldGutter\",\n markers(view) { var _a; return ((_a = view.plugin(markers)) === null || _a === void 0 ? void 0 : _a.markers) || RangeSet.empty; },\n initialSpacer() {\n return new FoldMarker(fullConfig, false);\n },\n domEventHandlers: {\n ...domEventHandlers,\n click: (view, line, event) => {\n if (domEventHandlers.click && domEventHandlers.click(view, line, event))\n return true;\n let folded = findFold(view.state, line.from, line.to);\n if (folded) {\n view.dispatch({ effects: unfoldEffect.of(folded) });\n return true;\n }\n let range = foldable(view.state, line.from, line.to);\n if (range) {\n view.dispatch({ effects: foldEffect.of(range) });\n return true;\n }\n return false;\n }\n }\n }),\n codeFolding()\n ];\n}\nconst baseTheme$1 = /*@__PURE__*/EditorView.baseTheme({\n \".cm-foldPlaceholder\": {\n backgroundColor: \"#eee\",\n border: \"1px solid #ddd\",\n color: \"#888\",\n borderRadius: \".2em\",\n margin: \"0 1px\",\n padding: \"0 1px\",\n cursor: \"pointer\"\n },\n \".cm-foldGutter span\": {\n padding: \"0 1px\",\n cursor: \"pointer\"\n }\n});\n\n/**\nA highlight style associates CSS styles with highlighting\n[tags](https://lezer.codemirror.net/docs/ref#highlight.Tag).\n*/\nclass HighlightStyle {\n constructor(\n /**\n The tag styles used to create this highlight style.\n */\n specs, options) {\n this.specs = specs;\n let modSpec;\n function def(spec) {\n let cls = StyleModule.newName();\n (modSpec || (modSpec = Object.create(null)))[\".\" + cls] = spec;\n return cls;\n }\n const all = typeof options.all == \"string\" ? options.all : options.all ? def(options.all) : undefined;\n const scopeOpt = options.scope;\n this.scope = scopeOpt instanceof Language ? (type) => type.prop(languageDataProp) == scopeOpt.data\n : scopeOpt ? (type) => type == scopeOpt : undefined;\n this.style = tagHighlighter(specs.map(style => ({\n tag: style.tag,\n class: style.class || def(Object.assign({}, style, { tag: null }))\n })), {\n all,\n }).style;\n this.module = modSpec ? new StyleModule(modSpec) : null;\n this.themeType = options.themeType;\n }\n /**\n Create a highlighter style that associates the given styles to\n the given tags. The specs must be objects that hold a style tag\n or array of tags in their `tag` property, and either a single\n `class` property providing a static CSS class (for highlighter\n that rely on external styling), or a\n [`style-mod`](https://github.com/marijnh/style-mod#documentation)-style\n set of CSS properties (which define the styling for those tags).\n \n The CSS rules created for a highlighter will be emitted in the\n order of the spec's properties. That means that for elements that\n have multiple tags associated with them, styles defined further\n down in the list will have a higher CSS precedence than styles\n defined earlier.\n */\n static define(specs, options) {\n return new HighlightStyle(specs, options || {});\n }\n}\nconst highlighterFacet = /*@__PURE__*/Facet.define();\nconst fallbackHighlighter = /*@__PURE__*/Facet.define({\n combine(values) { return values.length ? [values[0]] : null; }\n});\nfunction getHighlighters(state) {\n let main = state.facet(highlighterFacet);\n return main.length ? main : state.facet(fallbackHighlighter);\n}\n/**\nWrap a highlighter in an editor extension that uses it to apply\nsyntax highlighting to the editor content.\n\nWhen multiple (non-fallback) styles are provided, the styling\napplied is the union of the classes they emit.\n*/\nfunction syntaxHighlighting(highlighter, options) {\n let ext = [treeHighlighter], themeType;\n if (highlighter instanceof HighlightStyle) {\n if (highlighter.module)\n ext.push(EditorView.styleModule.of(highlighter.module));\n themeType = highlighter.themeType;\n }\n if (options === null || options === void 0 ? void 0 : options.fallback)\n ext.push(fallbackHighlighter.of(highlighter));\n else if (themeType)\n ext.push(highlighterFacet.computeN([EditorView.darkTheme], state => {\n return state.facet(EditorView.darkTheme) == (themeType == \"dark\") ? [highlighter] : [];\n }));\n else\n ext.push(highlighterFacet.of(highlighter));\n return ext;\n}\n/**\nReturns the CSS classes (if any) that the highlighters active in\nthe state would assign to the given style\n[tags](https://lezer.codemirror.net/docs/ref#highlight.Tag) and\n(optional) language\n[scope](https://codemirror.net/6/docs/ref/#language.HighlightStyle^define^options.scope).\n*/\nfunction highlightingFor(state, tags, scope) {\n let highlighters = getHighlighters(state);\n let result = null;\n if (highlighters)\n for (let highlighter of highlighters) {\n if (!highlighter.scope || scope && highlighter.scope(scope)) {\n let cls = highlighter.style(tags);\n if (cls)\n result = result ? result + \" \" + cls : cls;\n }\n }\n return result;\n}\nclass TreeHighlighter {\n constructor(view) {\n this.markCache = Object.create(null);\n this.tree = syntaxTree(view.state);\n this.decorations = this.buildDeco(view, getHighlighters(view.state));\n this.decoratedTo = view.viewport.to;\n }\n update(update) {\n let tree = syntaxTree(update.state), highlighters = getHighlighters(update.state);\n let styleChange = highlighters != getHighlighters(update.startState);\n let { viewport } = update.view, decoratedToMapped = update.changes.mapPos(this.decoratedTo, 1);\n if (tree.length < viewport.to && !styleChange && tree.type == this.tree.type && decoratedToMapped >= viewport.to) {\n this.decorations = this.decorations.map(update.changes);\n this.decoratedTo = decoratedToMapped;\n }\n else if (tree != this.tree || update.viewportChanged || styleChange) {\n this.tree = tree;\n this.decorations = this.buildDeco(update.view, highlighters);\n this.decoratedTo = viewport.to;\n }\n }\n buildDeco(view, highlighters) {\n if (!highlighters || !this.tree.length)\n return Decoration.none;\n let builder = new RangeSetBuilder();\n for (let { from, to } of view.visibleRanges) {\n highlightTree(this.tree, highlighters, (from, to, style) => {\n builder.add(from, to, this.markCache[style] || (this.markCache[style] = Decoration.mark({ class: style })));\n }, from, to);\n }\n return builder.finish();\n }\n}\nconst treeHighlighter = /*@__PURE__*/Prec.high(/*@__PURE__*/ViewPlugin.fromClass(TreeHighlighter, {\n decorations: v => v.decorations\n}));\n/**\nA default highlight style (works well with light themes).\n*/\nconst defaultHighlightStyle = /*@__PURE__*/HighlightStyle.define([\n { tag: tags.meta,\n color: \"#404740\" },\n { tag: tags.link,\n textDecoration: \"underline\" },\n { tag: tags.heading,\n textDecoration: \"underline\",\n fontWeight: \"bold\" },\n { tag: tags.emphasis,\n fontStyle: \"italic\" },\n { tag: tags.strong,\n fontWeight: \"bold\" },\n { tag: tags.strikethrough,\n textDecoration: \"line-through\" },\n { tag: tags.keyword,\n color: \"#708\" },\n { tag: [tags.atom, tags.bool, tags.url, tags.contentSeparator, tags.labelName],\n color: \"#219\" },\n { tag: [tags.literal, tags.inserted],\n color: \"#164\" },\n { tag: [tags.string, tags.deleted],\n color: \"#a11\" },\n { tag: [tags.regexp, tags.escape, /*@__PURE__*/tags.special(tags.string)],\n color: \"#e40\" },\n { tag: /*@__PURE__*/tags.definition(tags.variableName),\n color: \"#00f\" },\n { tag: /*@__PURE__*/tags.local(tags.variableName),\n color: \"#30a\" },\n { tag: [tags.typeName, tags.namespace],\n color: \"#085\" },\n { tag: tags.className,\n color: \"#167\" },\n { tag: [/*@__PURE__*/tags.special(tags.variableName), tags.macroName],\n color: \"#256\" },\n { tag: /*@__PURE__*/tags.definition(tags.propertyName),\n color: \"#00c\" },\n { tag: tags.comment,\n color: \"#940\" },\n { tag: tags.invalid,\n color: \"#f00\" }\n]);\n\nconst baseTheme = /*@__PURE__*/EditorView.baseTheme({\n \"&.cm-focused .cm-matchingBracket\": { backgroundColor: \"#328c8252\" },\n \"&.cm-focused .cm-nonmatchingBracket\": { backgroundColor: \"#bb555544\" }\n});\nconst DefaultScanDist = 10000, DefaultBrackets = \"()[]{}\";\nconst bracketMatchingConfig = /*@__PURE__*/Facet.define({\n combine(configs) {\n return combineConfig(configs, {\n afterCursor: true,\n brackets: DefaultBrackets,\n maxScanDistance: DefaultScanDist,\n renderMatch: defaultRenderMatch\n });\n }\n});\nconst matchingMark = /*@__PURE__*/Decoration.mark({ class: \"cm-matchingBracket\" }), nonmatchingMark = /*@__PURE__*/Decoration.mark({ class: \"cm-nonmatchingBracket\" });\nfunction defaultRenderMatch(match) {\n let decorations = [];\n let mark = match.matched ? matchingMark : nonmatchingMark;\n decorations.push(mark.range(match.start.from, match.start.to));\n if (match.end)\n decorations.push(mark.range(match.end.from, match.end.to));\n return decorations;\n}\nconst bracketMatchingState = /*@__PURE__*/StateField.define({\n create() { return Decoration.none; },\n update(deco, tr) {\n if (!tr.docChanged && !tr.selection)\n return deco;\n let decorations = [];\n let config = tr.state.facet(bracketMatchingConfig);\n for (let range of tr.state.selection.ranges) {\n if (!range.empty)\n continue;\n let match = matchBrackets(tr.state, range.head, -1, config)\n || (range.head > 0 && matchBrackets(tr.state, range.head - 1, 1, config))\n || (config.afterCursor &&\n (matchBrackets(tr.state, range.head, 1, config) ||\n (range.head < tr.state.doc.length && matchBrackets(tr.state, range.head + 1, -1, config))));\n if (match)\n decorations = decorations.concat(config.renderMatch(match, tr.state));\n }\n return Decoration.set(decorations, true);\n },\n provide: f => EditorView.decorations.from(f)\n});\nconst bracketMatchingUnique = [\n bracketMatchingState,\n baseTheme\n];\n/**\nCreate an extension that enables bracket matching. Whenever the\ncursor is next to a bracket, that bracket and the one it matches\nare highlighted. Or, when no matching bracket is found, another\nhighlighting style is used to indicate this.\n*/\nfunction bracketMatching(config = {}) {\n return [bracketMatchingConfig.of(config), bracketMatchingUnique];\n}\n/**\nWhen larger syntax nodes, such as HTML tags, are marked as\nopening/closing, it can be a bit messy to treat the whole node as\na matchable bracket. This node prop allows you to define, for such\na node, a \u2018handle\u2019\u2014the part of the node that is highlighted, and\nthat the cursor must be on to activate highlighting in the first\nplace.\n*/\nconst bracketMatchingHandle = /*@__PURE__*/new NodeProp();\nfunction matchingNodes(node, dir, brackets) {\n let byProp = node.prop(dir < 0 ? NodeProp.openedBy : NodeProp.closedBy);\n if (byProp)\n return byProp;\n if (node.name.length == 1) {\n let index = brackets.indexOf(node.name);\n if (index > -1 && index % 2 == (dir < 0 ? 1 : 0))\n return [brackets[index + dir]];\n }\n return null;\n}\nfunction findHandle(node) {\n let hasHandle = node.type.prop(bracketMatchingHandle);\n return hasHandle ? hasHandle(node.node) : node;\n}\n/**\nFind the matching bracket for the token at `pos`, scanning\ndirection `dir`. Only the `brackets` and `maxScanDistance`\nproperties are used from `config`, if given. Returns null if no\nbracket was found at `pos`, or a match result otherwise.\n*/\nfunction matchBrackets(state, pos, dir, config = {}) {\n let maxScanDistance = config.maxScanDistance || DefaultScanDist, brackets = config.brackets || DefaultBrackets;\n let tree = syntaxTree(state), node = tree.resolveInner(pos, dir);\n for (let cur = node; cur; cur = cur.parent) {\n let matches = matchingNodes(cur.type, dir, brackets);\n if (matches && cur.from < cur.to) {\n let handle = findHandle(cur);\n if (handle && (dir > 0 ? pos >= handle.from && pos < handle.to : pos > handle.from && pos <= handle.to))\n return matchMarkedBrackets(state, pos, dir, cur, handle, matches, brackets);\n }\n }\n return matchPlainBrackets(state, pos, dir, tree, node.type, maxScanDistance, brackets);\n}\nfunction matchMarkedBrackets(_state, _pos, dir, token, handle, matching, brackets) {\n let parent = token.parent, firstToken = { from: handle.from, to: handle.to };\n let depth = 0, cursor = parent === null || parent === void 0 ? void 0 : parent.cursor();\n if (cursor && (dir < 0 ? cursor.childBefore(token.from) : cursor.childAfter(token.to)))\n do {\n if (dir < 0 ? cursor.to <= token.from : cursor.from >= token.to) {\n if (depth == 0 && matching.indexOf(cursor.type.name) > -1 && cursor.from < cursor.to) {\n let endHandle = findHandle(cursor);\n return { start: firstToken, end: endHandle ? { from: endHandle.from, to: endHandle.to } : undefined, matched: true };\n }\n else if (matchingNodes(cursor.type, dir, brackets)) {\n depth++;\n }\n else if (matchingNodes(cursor.type, -dir, brackets)) {\n if (depth == 0) {\n let endHandle = findHandle(cursor);\n return {\n start: firstToken,\n end: endHandle && endHandle.from < endHandle.to ? { from: endHandle.from, to: endHandle.to } : undefined,\n matched: false\n };\n }\n depth--;\n }\n }\n } while (dir < 0 ? cursor.prevSibling() : cursor.nextSibling());\n return { start: firstToken, matched: false };\n}\nfunction matchPlainBrackets(state, pos, dir, tree, tokenType, maxScanDistance, brackets) {\n let startCh = dir < 0 ? state.sliceDoc(pos - 1, pos) : state.sliceDoc(pos, pos + 1);\n let bracket = brackets.indexOf(startCh);\n if (bracket < 0 || (bracket % 2 == 0) != (dir > 0))\n return null;\n let startToken = { from: dir < 0 ? pos - 1 : pos, to: dir > 0 ? pos + 1 : pos };\n let iter = state.doc.iterRange(pos, dir > 0 ? state.doc.length : 0), depth = 0;\n for (let distance = 0; !(iter.next()).done && distance <= maxScanDistance;) {\n let text = iter.value;\n if (dir < 0)\n distance += text.length;\n let basePos = pos + distance * dir;\n for (let pos = dir > 0 ? 0 : text.length - 1, end = dir > 0 ? text.length : -1; pos != end; pos += dir) {\n let found = brackets.indexOf(text[pos]);\n if (found < 0 || tree.resolveInner(basePos + pos, 1).type != tokenType)\n continue;\n if ((found % 2 == 0) == (dir > 0)) {\n depth++;\n }\n else if (depth == 1) { // Closing\n return { start: startToken, end: { from: basePos + pos, to: basePos + pos + 1 }, matched: (found >> 1) == (bracket >> 1) };\n }\n else {\n depth--;\n }\n }\n if (dir > 0)\n distance += text.length;\n }\n return iter.done ? { start: startToken, matched: false } : null;\n}\n\n// Counts the column offset in a string, taking tabs into account.\n// Used mostly to find indentation.\nfunction countCol(string, end, tabSize, startIndex = 0, startValue = 0) {\n if (end == null) {\n end = string.search(/[^\\s\\u00a0]/);\n if (end == -1)\n end = string.length;\n }\n let n = startValue;\n for (let i = startIndex; i < end; i++) {\n if (string.charCodeAt(i) == 9)\n n += tabSize - (n % tabSize);\n else\n n++;\n }\n return n;\n}\n/**\nEncapsulates a single line of input. Given to stream syntax code,\nwhich uses it to tokenize the content.\n*/\nclass StringStream {\n /**\n Create a stream.\n */\n constructor(\n /**\n The line.\n */\n string, tabSize, \n /**\n The current indent unit size.\n */\n indentUnit, overrideIndent) {\n this.string = string;\n this.tabSize = tabSize;\n this.indentUnit = indentUnit;\n this.overrideIndent = overrideIndent;\n /**\n The current position on the line.\n */\n this.pos = 0;\n /**\n The start position of the current token.\n */\n this.start = 0;\n this.lastColumnPos = 0;\n this.lastColumnValue = 0;\n }\n /**\n True if we are at the end of the line.\n */\n eol() { return this.pos >= this.string.length; }\n /**\n True if we are at the start of the line.\n */\n sol() { return this.pos == 0; }\n /**\n Get the next code unit after the current position, or undefined\n if we're at the end of the line.\n */\n peek() { return this.string.charAt(this.pos) || undefined; }\n /**\n Read the next code unit and advance `this.pos`.\n */\n next() {\n if (this.pos < this.string.length)\n return this.string.charAt(this.pos++);\n }\n /**\n Match the next character against the given string, regular\n expression, or predicate. Consume and return it if it matches.\n */\n eat(match) {\n let ch = this.string.charAt(this.pos);\n let ok;\n if (typeof match == \"string\")\n ok = ch == match;\n else\n ok = ch && (match instanceof RegExp ? match.test(ch) : match(ch));\n if (ok) {\n ++this.pos;\n return ch;\n }\n }\n /**\n Continue matching characters that match the given string,\n regular expression, or predicate function. Return true if any\n characters were consumed.\n */\n eatWhile(match) {\n let start = this.pos;\n while (this.eat(match)) { }\n return this.pos > start;\n }\n /**\n Consume whitespace ahead of `this.pos`. Return true if any was\n found.\n */\n eatSpace() {\n let start = this.pos;\n while (/[\\s\\u00a0]/.test(this.string.charAt(this.pos)))\n ++this.pos;\n return this.pos > start;\n }\n /**\n Move to the end of the line.\n */\n skipToEnd() { this.pos = this.string.length; }\n /**\n Move to directly before the given character, if found on the\n current line.\n */\n skipTo(ch) {\n let found = this.string.indexOf(ch, this.pos);\n if (found > -1) {\n this.pos = found;\n return true;\n }\n }\n /**\n Move back `n` characters.\n */\n backUp(n) { this.pos -= n; }\n /**\n Get the column position at `this.pos`.\n */\n column() {\n if (this.lastColumnPos < this.start) {\n this.lastColumnValue = countCol(this.string, this.start, this.tabSize, this.lastColumnPos, this.lastColumnValue);\n this.lastColumnPos = this.start;\n }\n return this.lastColumnValue;\n }\n /**\n Get the indentation column of the current line.\n */\n indentation() {\n var _a;\n return (_a = this.overrideIndent) !== null && _a !== void 0 ? _a : countCol(this.string, null, this.tabSize);\n }\n /**\n Match the input against the given string or regular expression\n (which should start with a `^`). Return true or the regexp match\n if it matches.\n \n Unless `consume` is set to `false`, this will move `this.pos`\n past the matched text.\n \n When matching a string `caseInsensitive` can be set to true to\n make the match case-insensitive.\n */\n match(pattern, consume, caseInsensitive) {\n if (typeof pattern == \"string\") {\n let cased = (str) => caseInsensitive ? str.toLowerCase() : str;\n let substr = this.string.substr(this.pos, pattern.length);\n if (cased(substr) == cased(pattern)) {\n if (consume !== false)\n this.pos += pattern.length;\n return true;\n }\n else\n return null;\n }\n else {\n let match = this.string.slice(this.pos).match(pattern);\n if (match && match.index > 0)\n return null;\n if (match && consume !== false)\n this.pos += match[0].length;\n return match;\n }\n }\n /**\n Get the current token.\n */\n current() { return this.string.slice(this.start, this.pos); }\n}\n\nfunction fullParser(spec) {\n return {\n name: spec.name || \"\",\n token: spec.token,\n blankLine: spec.blankLine || (() => { }),\n startState: spec.startState || (() => true),\n copyState: spec.copyState || defaultCopyState,\n indent: spec.indent || (() => null),\n languageData: spec.languageData || {},\n tokenTable: spec.tokenTable || noTokens,\n mergeTokens: spec.mergeTokens !== false\n };\n}\nfunction defaultCopyState(state) {\n if (typeof state != \"object\")\n return state;\n let newState = {};\n for (let prop in state) {\n let val = state[prop];\n newState[prop] = (val instanceof Array ? val.slice() : val);\n }\n return newState;\n}\nconst IndentedFrom = /*@__PURE__*/new WeakMap();\n/**\nA [language](https://codemirror.net/6/docs/ref/#language.Language) class based on a CodeMirror\n5-style [streaming parser](https://codemirror.net/6/docs/ref/#language.StreamParser).\n*/\nclass StreamLanguage extends Language {\n constructor(parser) {\n let data = defineLanguageFacet(parser.languageData);\n let p = fullParser(parser), self;\n let impl = new class extends Parser {\n createParse(input, fragments, ranges) {\n return new Parse(self, input, fragments, ranges);\n }\n };\n super(data, impl, [], parser.name);\n this.topNode = docID(data, this);\n self = this;\n this.streamParser = p;\n this.stateAfter = new NodeProp({ perNode: true });\n this.tokenTable = parser.tokenTable ? new TokenTable(p.tokenTable) : defaultTokenTable;\n }\n /**\n Define a stream language.\n */\n static define(spec) { return new StreamLanguage(spec); }\n /**\n @internal\n */\n getIndent(cx) {\n let from = undefined;\n let { overrideIndentation } = cx.options;\n if (overrideIndentation) {\n from = IndentedFrom.get(cx.state);\n if (from != null && from < cx.pos - 1e4)\n from = undefined;\n }\n let start = findState(this, cx.node.tree, cx.node.from, cx.node.from, from !== null && from !== void 0 ? from : cx.pos), statePos, state;\n if (start) {\n state = start.state;\n statePos = start.pos + 1;\n }\n else {\n state = this.streamParser.startState(cx.unit);\n statePos = cx.node.from;\n }\n if (cx.pos - statePos > 10000 /* C.MaxIndentScanDist */)\n return null;\n while (statePos < cx.pos) {\n let line = cx.state.doc.lineAt(statePos), end = Math.min(cx.pos, line.to);\n if (line.length) {\n let indentation = overrideIndentation ? overrideIndentation(line.from) : -1;\n let stream = new StringStream(line.text, cx.state.tabSize, cx.unit, indentation < 0 ? undefined : indentation);\n while (stream.pos < end - line.from)\n readToken(this.streamParser.token, stream, state);\n }\n else {\n this.streamParser.blankLine(state, cx.unit);\n }\n if (end == cx.pos)\n break;\n statePos = line.to + 1;\n }\n let line = cx.lineAt(cx.pos);\n if (overrideIndentation && from == null)\n IndentedFrom.set(cx.state, line.from);\n return this.streamParser.indent(state, /^\\s*(.*)/.exec(line.text)[1], cx);\n }\n get allowsNesting() { return false; }\n}\nfunction findState(lang, tree, off, startPos, before) {\n let state = off >= startPos && off + tree.length <= before && tree.prop(lang.stateAfter);\n if (state)\n return { state: lang.streamParser.copyState(state), pos: off + tree.length };\n for (let i = tree.children.length - 1; i >= 0; i--) {\n let child = tree.children[i], pos = off + tree.positions[i];\n let found = child instanceof Tree && pos < before && findState(lang, child, pos, startPos, before);\n if (found)\n return found;\n }\n return null;\n}\nfunction cutTree(lang, tree, from, to, inside) {\n if (inside && from <= 0 && to >= tree.length)\n return tree;\n if (!inside && from == 0 && tree.type == lang.topNode)\n inside = true;\n for (let i = tree.children.length - 1; i >= 0; i--) {\n let pos = tree.positions[i], child = tree.children[i], inner;\n if (pos < to && child instanceof Tree) {\n if (!(inner = cutTree(lang, child, from - pos, to - pos, inside)))\n break;\n return !inside ? inner\n : new Tree(tree.type, tree.children.slice(0, i).concat(inner), tree.positions.slice(0, i + 1), pos + inner.length);\n }\n }\n return null;\n}\nfunction findStartInFragments(lang, fragments, startPos, endPos, editorState) {\n for (let f of fragments) {\n let from = f.from + (f.openStart ? 25 : 0), to = f.to - (f.openEnd ? 25 : 0);\n let found = from <= startPos && to > startPos && findState(lang, f.tree, 0 - f.offset, startPos, to), tree;\n if (found && found.pos <= endPos && (tree = cutTree(lang, f.tree, startPos + f.offset, found.pos + f.offset, false)))\n return { state: found.state, tree };\n }\n return { state: lang.streamParser.startState(editorState ? getIndentUnit(editorState) : 4), tree: Tree.empty };\n}\nclass Parse {\n constructor(lang, input, fragments, ranges) {\n this.lang = lang;\n this.input = input;\n this.fragments = fragments;\n this.ranges = ranges;\n this.stoppedAt = null;\n this.chunks = [];\n this.chunkPos = [];\n this.chunk = [];\n this.chunkReused = undefined;\n this.rangeIndex = 0;\n this.to = ranges[ranges.length - 1].to;\n let context = ParseContext.get(), from = ranges[0].from;\n let { state, tree } = findStartInFragments(lang, fragments, from, this.to, context === null || context === void 0 ? void 0 : context.state);\n this.state = state;\n this.parsedPos = this.chunkStart = from + tree.length;\n for (let i = 0; i < tree.children.length; i++) {\n this.chunks.push(tree.children[i]);\n this.chunkPos.push(tree.positions[i]);\n }\n if (context && this.parsedPos < context.viewport.from - 100000 /* C.MaxDistanceBeforeViewport */ &&\n ranges.some(r => r.from <= context.viewport.from && r.to >= context.viewport.from)) {\n this.state = this.lang.streamParser.startState(getIndentUnit(context.state));\n context.skipUntilInView(this.parsedPos, context.viewport.from);\n this.parsedPos = context.viewport.from;\n }\n this.moveRangeIndex();\n }\n advance() {\n let context = ParseContext.get();\n let parseEnd = this.stoppedAt == null ? this.to : Math.min(this.to, this.stoppedAt);\n let end = Math.min(parseEnd, this.chunkStart + 512 /* C.ChunkSize */);\n if (context)\n end = Math.min(end, context.viewport.to);\n while (this.parsedPos < end)\n this.parseLine(context);\n if (this.chunkStart < this.parsedPos)\n this.finishChunk();\n if (this.parsedPos >= parseEnd)\n return this.finish();\n if (context && this.parsedPos >= context.viewport.to) {\n context.skipUntilInView(this.parsedPos, parseEnd);\n return this.finish();\n }\n return null;\n }\n stopAt(pos) {\n this.stoppedAt = pos;\n }\n lineAfter(pos) {\n let chunk = this.input.chunk(pos);\n if (!this.input.lineChunks) {\n let eol = chunk.indexOf(\"\\n\");\n if (eol > -1)\n chunk = chunk.slice(0, eol);\n }\n else if (chunk == \"\\n\") {\n chunk = \"\";\n }\n return pos + chunk.length <= this.to ? chunk : chunk.slice(0, this.to - pos);\n }\n nextLine() {\n let from = this.parsedPos, line = this.lineAfter(from), end = from + line.length;\n for (let index = this.rangeIndex;;) {\n let rangeEnd = this.ranges[index].to;\n if (rangeEnd >= end)\n break;\n line = line.slice(0, rangeEnd - (end - line.length));\n index++;\n if (index == this.ranges.length)\n break;\n let rangeStart = this.ranges[index].from;\n let after = this.lineAfter(rangeStart);\n line += after;\n end = rangeStart + after.length;\n }\n return { line, end };\n }\n skipGapsTo(pos, offset, side) {\n for (;;) {\n let end = this.ranges[this.rangeIndex].to, offPos = pos + offset;\n if (side > 0 ? end > offPos : end >= offPos)\n break;\n let start = this.ranges[++this.rangeIndex].from;\n offset += start - end;\n }\n return offset;\n }\n moveRangeIndex() {\n while (this.ranges[this.rangeIndex].to < this.parsedPos)\n this.rangeIndex++;\n }\n emitToken(id, from, to, offset) {\n let size = 4;\n if (this.ranges.length > 1) {\n offset = this.skipGapsTo(from, offset, 1);\n from += offset;\n let len0 = this.chunk.length;\n offset = this.skipGapsTo(to, offset, -1);\n to += offset;\n size += this.chunk.length - len0;\n }\n let last = this.chunk.length - 4;\n if (this.lang.streamParser.mergeTokens && size == 4 && last >= 0 &&\n this.chunk[last] == id && this.chunk[last + 2] == from)\n this.chunk[last + 2] = to;\n else\n this.chunk.push(id, from, to, size);\n return offset;\n }\n parseLine(context) {\n let { line, end } = this.nextLine(), offset = 0, { streamParser } = this.lang;\n let stream = new StringStream(line, context ? context.state.tabSize : 4, context ? getIndentUnit(context.state) : 2);\n if (stream.eol()) {\n streamParser.blankLine(this.state, stream.indentUnit);\n }\n else {\n while (!stream.eol()) {\n let token = readToken(streamParser.token, stream, this.state);\n if (token)\n offset = this.emitToken(this.lang.tokenTable.resolve(token), this.parsedPos + stream.start, this.parsedPos + stream.pos, offset);\n if (stream.start > 10000 /* C.MaxLineLength */)\n break;\n }\n }\n this.parsedPos = end;\n this.moveRangeIndex();\n if (this.parsedPos < this.to)\n this.parsedPos++;\n }\n finishChunk() {\n let tree = Tree.build({\n buffer: this.chunk,\n start: this.chunkStart,\n length: this.parsedPos - this.chunkStart,\n nodeSet,\n topID: 0,\n maxBufferLength: 512 /* C.ChunkSize */,\n reused: this.chunkReused\n });\n tree = new Tree(tree.type, tree.children, tree.positions, tree.length, [[this.lang.stateAfter, this.lang.streamParser.copyState(this.state)]]);\n this.chunks.push(tree);\n this.chunkPos.push(this.chunkStart - this.ranges[0].from);\n this.chunk = [];\n this.chunkReused = undefined;\n this.chunkStart = this.parsedPos;\n }\n finish() {\n return new Tree(this.lang.topNode, this.chunks, this.chunkPos, this.parsedPos - this.ranges[0].from).balance();\n }\n}\nfunction readToken(token, stream, state) {\n stream.start = stream.pos;\n for (let i = 0; i < 10; i++) {\n let result = token(stream, state);\n if (stream.pos > stream.start)\n return result;\n }\n throw new Error(\"Stream parser failed to advance stream.\");\n}\nconst noTokens = /*@__PURE__*/Object.create(null);\nconst typeArray = [NodeType.none];\nconst nodeSet = /*@__PURE__*/new NodeSet(typeArray);\nconst warned = [];\n// Cache of node types by name and tags\nconst byTag = /*@__PURE__*/Object.create(null);\nconst defaultTable = /*@__PURE__*/Object.create(null);\nfor (let [legacyName, name] of [\n [\"variable\", \"variableName\"],\n [\"variable-2\", \"variableName.special\"],\n [\"string-2\", \"string.special\"],\n [\"def\", \"variableName.definition\"],\n [\"tag\", \"tagName\"],\n [\"attribute\", \"attributeName\"],\n [\"type\", \"typeName\"],\n [\"builtin\", \"variableName.standard\"],\n [\"qualifier\", \"modifier\"],\n [\"error\", \"invalid\"],\n [\"header\", \"heading\"],\n [\"property\", \"propertyName\"]\n])\n defaultTable[legacyName] = /*@__PURE__*/createTokenType(noTokens, name);\nclass TokenTable {\n constructor(extra) {\n this.extra = extra;\n this.table = Object.assign(Object.create(null), defaultTable);\n }\n resolve(tag) {\n return !tag ? 0 : this.table[tag] || (this.table[tag] = createTokenType(this.extra, tag));\n }\n}\nconst defaultTokenTable = /*@__PURE__*/new TokenTable(noTokens);\nfunction warnForPart(part, msg) {\n if (warned.indexOf(part) > -1)\n return;\n warned.push(part);\n console.warn(msg);\n}\nfunction createTokenType(extra, tagStr) {\n let tags$1 = [];\n for (let name of tagStr.split(\" \")) {\n let found = [];\n for (let part of name.split(\".\")) {\n let value = (extra[part] || tags[part]);\n if (!value) {\n warnForPart(part, `Unknown highlighting tag ${part}`);\n }\n else if (typeof value == \"function\") {\n if (!found.length)\n warnForPart(part, `Modifier ${part} used at start of tag`);\n else\n found = found.map(value);\n }\n else {\n if (found.length)\n warnForPart(part, `Tag ${part} used as modifier`);\n else\n found = Array.isArray(value) ? value : [value];\n }\n }\n for (let tag of found)\n tags$1.push(tag);\n }\n if (!tags$1.length)\n return 0;\n let name = tagStr.replace(/ /g, \"_\"), key = name + \" \" + tags$1.map(t => t.id);\n let known = byTag[key];\n if (known)\n return known.id;\n let type = byTag[key] = NodeType.define({\n id: typeArray.length,\n name,\n props: [styleTags({ [name]: tags$1 })]\n });\n typeArray.push(type);\n return type.id;\n}\nfunction docID(data, lang) {\n let type = NodeType.define({ id: typeArray.length, name: \"Document\", props: [\n languageDataProp.add(() => data),\n indentNodeProp.add(() => cx => lang.getIndent(cx))\n ], top: true });\n typeArray.push(type);\n return type;\n}\n\nfunction buildForLine(line) {\n return line.length <= 4096 && /[\\u0590-\\u05f4\\u0600-\\u06ff\\u0700-\\u08ac\\ufb50-\\ufdff]/.test(line);\n}\nfunction textHasRTL(text) {\n for (let i = text.iter(); !i.next().done;)\n if (buildForLine(i.value))\n return true;\n return false;\n}\nfunction changeAddsRTL(change) {\n let added = false;\n change.iterChanges((fA, tA, fB, tB, ins) => {\n if (!added && textHasRTL(ins))\n added = true;\n });\n return added;\n}\nconst alwaysIsolate = /*@__PURE__*/Facet.define({ combine: values => values.some(x => x) });\n/**\nMake sure nodes\n[marked](https://lezer.codemirror.net/docs/ref/#common.NodeProp^isolate)\nas isolating for bidirectional text are rendered in a way that\nisolates them from the surrounding text.\n*/\nfunction bidiIsolates(options = {}) {\n let extensions = [isolateMarks];\n if (options.alwaysIsolate)\n extensions.push(alwaysIsolate.of(true));\n return extensions;\n}\nconst isolateMarks = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.always = view.state.facet(alwaysIsolate) ||\n view.textDirection != Direction.LTR ||\n view.state.facet(EditorView.perLineTextDirection);\n this.hasRTL = !this.always && textHasRTL(view.state.doc);\n this.tree = syntaxTree(view.state);\n this.decorations = this.always || this.hasRTL ? buildDeco(view, this.tree, this.always) : Decoration.none;\n }\n update(update) {\n let always = update.state.facet(alwaysIsolate) ||\n update.view.textDirection != Direction.LTR ||\n update.state.facet(EditorView.perLineTextDirection);\n if (!always && !this.hasRTL && changeAddsRTL(update.changes))\n this.hasRTL = true;\n if (!always && !this.hasRTL)\n return;\n let tree = syntaxTree(update.state);\n if (always != this.always || tree != this.tree || update.docChanged || update.viewportChanged) {\n this.tree = tree;\n this.always = always;\n this.decorations = buildDeco(update.view, tree, always);\n }\n }\n}, {\n provide: plugin => {\n function access(view) {\n var _a, _b;\n return (_b = (_a = view.plugin(plugin)) === null || _a === void 0 ? void 0 : _a.decorations) !== null && _b !== void 0 ? _b : Decoration.none;\n }\n return [EditorView.outerDecorations.of(access),\n Prec.lowest(EditorView.bidiIsolatedRanges.of(access))];\n }\n});\nfunction buildDeco(view, tree, always) {\n let deco = new RangeSetBuilder();\n let ranges = view.visibleRanges;\n if (!always)\n ranges = clipRTLLines(ranges, view.state.doc);\n for (let { from, to } of ranges) {\n tree.iterate({\n enter: node => {\n let iso = node.type.prop(NodeProp.isolate);\n if (iso)\n deco.add(node.from, node.to, marks[iso]);\n },\n from, to\n });\n }\n return deco.finish();\n}\nfunction clipRTLLines(ranges, doc) {\n let cur = doc.iter(), pos = 0, result = [], last = null;\n for (let { from, to } of ranges) {\n if (last && last.to > from) {\n from = last.to;\n if (from >= to)\n continue;\n }\n if (pos + cur.value.length < from) {\n cur.next(from - (pos + cur.value.length));\n pos = from;\n }\n for (;;) {\n let start = pos, end = pos + cur.value.length;\n if (!cur.lineBreak && buildForLine(cur.value)) {\n if (last && last.to > start - 10)\n last.to = Math.min(to, end);\n else\n result.push(last = { from: start, to: Math.min(to, end) });\n }\n if (end >= to)\n break;\n pos = end;\n cur.next();\n }\n }\n return result;\n}\nconst marks = {\n rtl: /*@__PURE__*/Decoration.mark({ class: \"cm-iso\", inclusive: true, attributes: { dir: \"rtl\" }, bidiIsolate: Direction.RTL }),\n ltr: /*@__PURE__*/Decoration.mark({ class: \"cm-iso\", inclusive: true, attributes: { dir: \"ltr\" }, bidiIsolate: Direction.LTR }),\n auto: /*@__PURE__*/Decoration.mark({ class: \"cm-iso\", inclusive: true, attributes: { dir: \"auto\" }, bidiIsolate: null })\n};\n\nexport { DocInput, HighlightStyle, IndentContext, LRLanguage, Language, LanguageDescription, LanguageSupport, ParseContext, StreamLanguage, StringStream, TreeIndentContext, bidiIsolates, bracketMatching, bracketMatchingHandle, codeFolding, continuedIndent, defaultHighlightStyle, defineLanguageFacet, delimitedIndent, ensureSyntaxTree, flatIndent, foldAll, foldCode, foldEffect, foldGutter, foldInside, foldKeymap, foldNodeProp, foldService, foldState, foldable, foldedRanges, forceParsing, getIndentUnit, getIndentation, highlightingFor, indentNodeProp, indentOnInput, indentRange, indentService, indentString, indentUnit, language, languageDataProp, matchBrackets, sublanguageProp, syntaxHighlighting, syntaxParserRunning, syntaxTree, syntaxTreeAvailable, toggleFold, unfoldAll, unfoldCode, unfoldEffect };\n", "import { Annotation, Facet, combineConfig, StateField, Transaction, ChangeSet, ChangeDesc, EditorSelection, StateEffect, Text, findClusterBreak, countColumn, CharCategory } from '@codemirror/state';\nimport { EditorView, Direction } from '@codemirror/view';\nimport { IndentContext, getIndentation, indentString, matchBrackets, syntaxTree, getIndentUnit, indentUnit } from '@codemirror/language';\nimport { NodeProp } from '@lezer/common';\n\n/**\nComment or uncomment the current selection. Will use line comments\nif available, otherwise falling back to block comments.\n*/\nconst toggleComment = target => {\n let { state } = target, line = state.doc.lineAt(state.selection.main.from), config = getConfig(target.state, line.from);\n return config.line ? toggleLineComment(target) : config.block ? toggleBlockCommentByLine(target) : false;\n};\nfunction command(f, option) {\n return ({ state, dispatch }) => {\n if (state.readOnly)\n return false;\n let tr = f(option, state);\n if (!tr)\n return false;\n dispatch(state.update(tr));\n return true;\n };\n}\n/**\nComment or uncomment the current selection using line comments.\nThe line comment syntax is taken from the\n[`commentTokens`](https://codemirror.net/6/docs/ref/#commands.CommentTokens) [language\ndata](https://codemirror.net/6/docs/ref/#state.EditorState.languageDataAt).\n*/\nconst toggleLineComment = /*@__PURE__*/command(changeLineComment, 0 /* CommentOption.Toggle */);\n/**\nComment the current selection using line comments.\n*/\nconst lineComment = /*@__PURE__*/command(changeLineComment, 1 /* CommentOption.Comment */);\n/**\nUncomment the current selection using line comments.\n*/\nconst lineUncomment = /*@__PURE__*/command(changeLineComment, 2 /* CommentOption.Uncomment */);\n/**\nComment or uncomment the current selection using block comments.\nThe block comment syntax is taken from the\n[`commentTokens`](https://codemirror.net/6/docs/ref/#commands.CommentTokens) [language\ndata](https://codemirror.net/6/docs/ref/#state.EditorState.languageDataAt).\n*/\nconst toggleBlockComment = /*@__PURE__*/command(changeBlockComment, 0 /* CommentOption.Toggle */);\n/**\nComment the current selection using block comments.\n*/\nconst blockComment = /*@__PURE__*/command(changeBlockComment, 1 /* CommentOption.Comment */);\n/**\nUncomment the current selection using block comments.\n*/\nconst blockUncomment = /*@__PURE__*/command(changeBlockComment, 2 /* CommentOption.Uncomment */);\n/**\nComment or uncomment the lines around the current selection using\nblock comments.\n*/\nconst toggleBlockCommentByLine = /*@__PURE__*/command((o, s) => changeBlockComment(o, s, selectedLineRanges(s)), 0 /* CommentOption.Toggle */);\nfunction getConfig(state, pos) {\n let data = state.languageDataAt(\"commentTokens\", pos, 1);\n return data.length ? data[0] : {};\n}\nconst SearchMargin = 50;\n/**\nDetermines if the given range is block-commented in the given\nstate.\n*/\nfunction findBlockComment(state, { open, close }, from, to) {\n let textBefore = state.sliceDoc(from - SearchMargin, from);\n let textAfter = state.sliceDoc(to, to + SearchMargin);\n let spaceBefore = /\\s*$/.exec(textBefore)[0].length, spaceAfter = /^\\s*/.exec(textAfter)[0].length;\n let beforeOff = textBefore.length - spaceBefore;\n if (textBefore.slice(beforeOff - open.length, beforeOff) == open &&\n textAfter.slice(spaceAfter, spaceAfter + close.length) == close) {\n return { open: { pos: from - spaceBefore, margin: spaceBefore && 1 },\n close: { pos: to + spaceAfter, margin: spaceAfter && 1 } };\n }\n let startText, endText;\n if (to - from <= 2 * SearchMargin) {\n startText = endText = state.sliceDoc(from, to);\n }\n else {\n startText = state.sliceDoc(from, from + SearchMargin);\n endText = state.sliceDoc(to - SearchMargin, to);\n }\n let startSpace = /^\\s*/.exec(startText)[0].length, endSpace = /\\s*$/.exec(endText)[0].length;\n let endOff = endText.length - endSpace - close.length;\n if (startText.slice(startSpace, startSpace + open.length) == open &&\n endText.slice(endOff, endOff + close.length) == close) {\n return { open: { pos: from + startSpace + open.length,\n margin: /\\s/.test(startText.charAt(startSpace + open.length)) ? 1 : 0 },\n close: { pos: to - endSpace - close.length,\n margin: /\\s/.test(endText.charAt(endOff - 1)) ? 1 : 0 } };\n }\n return null;\n}\nfunction selectedLineRanges(state) {\n let ranges = [];\n for (let r of state.selection.ranges) {\n let fromLine = state.doc.lineAt(r.from);\n let toLine = r.to <= fromLine.to ? fromLine : state.doc.lineAt(r.to);\n if (toLine.from > fromLine.from && toLine.from == r.to)\n toLine = r.to == fromLine.to + 1 ? fromLine : state.doc.lineAt(r.to - 1);\n let last = ranges.length - 1;\n if (last >= 0 && ranges[last].to > fromLine.from)\n ranges[last].to = toLine.to;\n else\n ranges.push({ from: fromLine.from + /^\\s*/.exec(fromLine.text)[0].length, to: toLine.to });\n }\n return ranges;\n}\n// Performs toggle, comment and uncomment of block comments in\n// languages that support them.\nfunction changeBlockComment(option, state, ranges = state.selection.ranges) {\n let tokens = ranges.map(r => getConfig(state, r.from).block);\n if (!tokens.every(c => c))\n return null;\n let comments = ranges.map((r, i) => findBlockComment(state, tokens[i], r.from, r.to));\n if (option != 2 /* CommentOption.Uncomment */ && !comments.every(c => c)) {\n return { changes: state.changes(ranges.map((range, i) => {\n if (comments[i])\n return [];\n return [{ from: range.from, insert: tokens[i].open + \" \" }, { from: range.to, insert: \" \" + tokens[i].close }];\n })) };\n }\n else if (option != 1 /* CommentOption.Comment */ && comments.some(c => c)) {\n let changes = [];\n for (let i = 0, comment; i < comments.length; i++)\n if (comment = comments[i]) {\n let token = tokens[i], { open, close } = comment;\n changes.push({ from: open.pos - token.open.length, to: open.pos + open.margin }, { from: close.pos - close.margin, to: close.pos + token.close.length });\n }\n return { changes };\n }\n return null;\n}\n// Performs toggle, comment and uncomment of line comments.\nfunction changeLineComment(option, state, ranges = state.selection.ranges) {\n let lines = [];\n let prevLine = -1;\n for (let { from, to } of ranges) {\n let startI = lines.length, minIndent = 1e9;\n let token = getConfig(state, from).line;\n if (!token)\n continue;\n for (let pos = from; pos <= to;) {\n let line = state.doc.lineAt(pos);\n if (line.from > prevLine && (from == to || to > line.from)) {\n prevLine = line.from;\n let indent = /^\\s*/.exec(line.text)[0].length;\n let empty = indent == line.length;\n let comment = line.text.slice(indent, indent + token.length) == token ? indent : -1;\n if (indent < line.text.length && indent < minIndent)\n minIndent = indent;\n lines.push({ line, comment, token, indent, empty, single: false });\n }\n pos = line.to + 1;\n }\n if (minIndent < 1e9)\n for (let i = startI; i < lines.length; i++)\n if (lines[i].indent < lines[i].line.text.length)\n lines[i].indent = minIndent;\n if (lines.length == startI + 1)\n lines[startI].single = true;\n }\n if (option != 2 /* CommentOption.Uncomment */ && lines.some(l => l.comment < 0 && (!l.empty || l.single))) {\n let changes = [];\n for (let { line, token, indent, empty, single } of lines)\n if (single || !empty)\n changes.push({ from: line.from + indent, insert: token + \" \" });\n let changeSet = state.changes(changes);\n return { changes: changeSet, selection: state.selection.map(changeSet, 1) };\n }\n else if (option != 1 /* CommentOption.Comment */ && lines.some(l => l.comment >= 0)) {\n let changes = [];\n for (let { line, comment, token } of lines)\n if (comment >= 0) {\n let from = line.from + comment, to = from + token.length;\n if (line.text[to - line.from] == \" \")\n to++;\n changes.push({ from, to });\n }\n return { changes };\n }\n return null;\n}\n\nconst fromHistory = /*@__PURE__*/Annotation.define();\n/**\nTransaction annotation that will prevent that transaction from\nbeing combined with other transactions in the undo history. Given\n`\"before\"`, it'll prevent merging with previous transactions. With\n`\"after\"`, subsequent transactions won't be combined with this\none. With `\"full\"`, the transaction is isolated on both sides.\n*/\nconst isolateHistory = /*@__PURE__*/Annotation.define();\n/**\nThis facet provides a way to register functions that, given a\ntransaction, provide a set of effects that the history should\nstore when inverting the transaction. This can be used to\nintegrate some kinds of effects in the history, so that they can\nbe undone (and redone again).\n*/\nconst invertedEffects = /*@__PURE__*/Facet.define();\nconst historyConfig = /*@__PURE__*/Facet.define({\n combine(configs) {\n return combineConfig(configs, {\n minDepth: 100,\n newGroupDelay: 500,\n joinToEvent: (_t, isAdjacent) => isAdjacent,\n }, {\n minDepth: Math.max,\n newGroupDelay: Math.min,\n joinToEvent: (a, b) => (tr, adj) => a(tr, adj) || b(tr, adj)\n });\n }\n});\nconst historyField_ = /*@__PURE__*/StateField.define({\n create() {\n return HistoryState.empty;\n },\n update(state, tr) {\n let config = tr.state.facet(historyConfig);\n let fromHist = tr.annotation(fromHistory);\n if (fromHist) {\n let item = HistEvent.fromTransaction(tr, fromHist.selection), from = fromHist.side;\n let other = from == 0 /* BranchName.Done */ ? state.undone : state.done;\n if (item)\n other = updateBranch(other, other.length, config.minDepth, item);\n else\n other = addSelection(other, tr.startState.selection);\n return new HistoryState(from == 0 /* BranchName.Done */ ? fromHist.rest : other, from == 0 /* BranchName.Done */ ? other : fromHist.rest);\n }\n let isolate = tr.annotation(isolateHistory);\n if (isolate == \"full\" || isolate == \"before\")\n state = state.isolate();\n if (tr.annotation(Transaction.addToHistory) === false)\n return !tr.changes.empty ? state.addMapping(tr.changes.desc) : state;\n let event = HistEvent.fromTransaction(tr);\n let time = tr.annotation(Transaction.time), userEvent = tr.annotation(Transaction.userEvent);\n if (event)\n state = state.addChanges(event, time, userEvent, config, tr);\n else if (tr.selection)\n state = state.addSelection(tr.startState.selection, time, userEvent, config.newGroupDelay);\n if (isolate == \"full\" || isolate == \"after\")\n state = state.isolate();\n return state;\n },\n toJSON(value) {\n return { done: value.done.map(e => e.toJSON()), undone: value.undone.map(e => e.toJSON()) };\n },\n fromJSON(json) {\n return new HistoryState(json.done.map(HistEvent.fromJSON), json.undone.map(HistEvent.fromJSON));\n }\n});\n/**\nCreate a history extension with the given configuration.\n*/\nfunction history(config = {}) {\n return [\n historyField_,\n historyConfig.of(config),\n EditorView.domEventHandlers({\n beforeinput(e, view) {\n let command = e.inputType == \"historyUndo\" ? undo : e.inputType == \"historyRedo\" ? redo : null;\n if (!command)\n return false;\n e.preventDefault();\n return command(view);\n }\n })\n ];\n}\n/**\nThe state field used to store the history data. Should probably\nonly be used when you want to\n[serialize](https://codemirror.net/6/docs/ref/#state.EditorState.toJSON) or\n[deserialize](https://codemirror.net/6/docs/ref/#state.EditorState^fromJSON) state objects in a way\nthat preserves history.\n*/\nconst historyField = historyField_;\nfunction cmd(side, selection) {\n return function ({ state, dispatch }) {\n if (!selection && state.readOnly)\n return false;\n let historyState = state.field(historyField_, false);\n if (!historyState)\n return false;\n let tr = historyState.pop(side, state, selection);\n if (!tr)\n return false;\n dispatch(tr);\n return true;\n };\n}\n/**\nUndo a single group of history events. Returns false if no group\nwas available.\n*/\nconst undo = /*@__PURE__*/cmd(0 /* BranchName.Done */, false);\n/**\nRedo a group of history events. Returns false if no group was\navailable.\n*/\nconst redo = /*@__PURE__*/cmd(1 /* BranchName.Undone */, false);\n/**\nUndo a change or selection change.\n*/\nconst undoSelection = /*@__PURE__*/cmd(0 /* BranchName.Done */, true);\n/**\nRedo a change or selection change.\n*/\nconst redoSelection = /*@__PURE__*/cmd(1 /* BranchName.Undone */, true);\nfunction depth(side) {\n return function (state) {\n let histState = state.field(historyField_, false);\n if (!histState)\n return 0;\n let branch = side == 0 /* BranchName.Done */ ? histState.done : histState.undone;\n return branch.length - (branch.length && !branch[0].changes ? 1 : 0);\n };\n}\n/**\nThe amount of undoable change events available in a given state.\n*/\nconst undoDepth = /*@__PURE__*/depth(0 /* BranchName.Done */);\n/**\nThe amount of redoable change events available in a given state.\n*/\nconst redoDepth = /*@__PURE__*/depth(1 /* BranchName.Undone */);\n// History events store groups of changes or effects that need to be\n// undone/redone together.\nclass HistEvent {\n constructor(\n // The changes in this event. Normal events hold at least one\n // change or effect. But it may be necessary to store selection\n // events before the first change, in which case a special type of\n // instance is created which doesn't hold any changes, with\n // changes == startSelection == undefined\n changes, \n // The effects associated with this event\n effects, \n // Accumulated mapping (from addToHistory==false) that should be\n // applied to events below this one.\n mapped, \n // The selection before this event\n startSelection, \n // Stores selection changes after this event, to be used for\n // selection undo/redo.\n selectionsAfter) {\n this.changes = changes;\n this.effects = effects;\n this.mapped = mapped;\n this.startSelection = startSelection;\n this.selectionsAfter = selectionsAfter;\n }\n setSelAfter(after) {\n return new HistEvent(this.changes, this.effects, this.mapped, this.startSelection, after);\n }\n toJSON() {\n var _a, _b, _c;\n return {\n changes: (_a = this.changes) === null || _a === void 0 ? void 0 : _a.toJSON(),\n mapped: (_b = this.mapped) === null || _b === void 0 ? void 0 : _b.toJSON(),\n startSelection: (_c = this.startSelection) === null || _c === void 0 ? void 0 : _c.toJSON(),\n selectionsAfter: this.selectionsAfter.map(s => s.toJSON())\n };\n }\n static fromJSON(json) {\n return new HistEvent(json.changes && ChangeSet.fromJSON(json.changes), [], json.mapped && ChangeDesc.fromJSON(json.mapped), json.startSelection && EditorSelection.fromJSON(json.startSelection), json.selectionsAfter.map(EditorSelection.fromJSON));\n }\n // This does not check `addToHistory` and such, it assumes the\n // transaction needs to be converted to an item. Returns null when\n // there are no changes or effects in the transaction.\n static fromTransaction(tr, selection) {\n let effects = none;\n for (let invert of tr.startState.facet(invertedEffects)) {\n let result = invert(tr);\n if (result.length)\n effects = effects.concat(result);\n }\n if (!effects.length && tr.changes.empty)\n return null;\n return new HistEvent(tr.changes.invert(tr.startState.doc), effects, undefined, selection || tr.startState.selection, none);\n }\n static selection(selections) {\n return new HistEvent(undefined, none, undefined, undefined, selections);\n }\n}\nfunction updateBranch(branch, to, maxLen, newEvent) {\n let start = to + 1 > maxLen + 20 ? to - maxLen - 1 : 0;\n let newBranch = branch.slice(start, to);\n newBranch.push(newEvent);\n return newBranch;\n}\nfunction isAdjacent(a, b) {\n let ranges = [], isAdjacent = false;\n a.iterChangedRanges((f, t) => ranges.push(f, t));\n b.iterChangedRanges((_f, _t, f, t) => {\n for (let i = 0; i < ranges.length;) {\n let from = ranges[i++], to = ranges[i++];\n if (t >= from && f <= to)\n isAdjacent = true;\n }\n });\n return isAdjacent;\n}\nfunction eqSelectionShape(a, b) {\n return a.ranges.length == b.ranges.length &&\n a.ranges.filter((r, i) => r.empty != b.ranges[i].empty).length === 0;\n}\nfunction conc(a, b) {\n return !a.length ? b : !b.length ? a : a.concat(b);\n}\nconst none = [];\nconst MaxSelectionsPerEvent = 200;\nfunction addSelection(branch, selection) {\n if (!branch.length) {\n return [HistEvent.selection([selection])];\n }\n else {\n let lastEvent = branch[branch.length - 1];\n let sels = lastEvent.selectionsAfter.slice(Math.max(0, lastEvent.selectionsAfter.length - MaxSelectionsPerEvent));\n if (sels.length && sels[sels.length - 1].eq(selection))\n return branch;\n sels.push(selection);\n return updateBranch(branch, branch.length - 1, 1e9, lastEvent.setSelAfter(sels));\n }\n}\n// Assumes the top item has one or more selectionAfter values\nfunction popSelection(branch) {\n let last = branch[branch.length - 1];\n let newBranch = branch.slice();\n newBranch[branch.length - 1] = last.setSelAfter(last.selectionsAfter.slice(0, last.selectionsAfter.length - 1));\n return newBranch;\n}\n// Add a mapping to the top event in the given branch. If this maps\n// away all the changes and effects in that item, drop it and\n// propagate the mapping to the next item.\nfunction addMappingToBranch(branch, mapping) {\n if (!branch.length)\n return branch;\n let length = branch.length, selections = none;\n while (length) {\n let event = mapEvent(branch[length - 1], mapping, selections);\n if (event.changes && !event.changes.empty || event.effects.length) { // Event survived mapping\n let result = branch.slice(0, length);\n result[length - 1] = event;\n return result;\n }\n else { // Drop this event, since there's no changes or effects left\n mapping = event.mapped;\n length--;\n selections = event.selectionsAfter;\n }\n }\n return selections.length ? [HistEvent.selection(selections)] : none;\n}\nfunction mapEvent(event, mapping, extraSelections) {\n let selections = conc(event.selectionsAfter.length ? event.selectionsAfter.map(s => s.map(mapping)) : none, extraSelections);\n // Change-less events don't store mappings (they are always the last event in a branch)\n if (!event.changes)\n return HistEvent.selection(selections);\n let mappedChanges = event.changes.map(mapping), before = mapping.mapDesc(event.changes, true);\n let fullMapping = event.mapped ? event.mapped.composeDesc(before) : before;\n return new HistEvent(mappedChanges, StateEffect.mapEffects(event.effects, mapping), fullMapping, event.startSelection.map(before), selections);\n}\nconst joinableUserEvent = /^(input\\.type|delete)($|\\.)/;\nclass HistoryState {\n constructor(done, undone, prevTime = 0, prevUserEvent = undefined) {\n this.done = done;\n this.undone = undone;\n this.prevTime = prevTime;\n this.prevUserEvent = prevUserEvent;\n }\n isolate() {\n return this.prevTime ? new HistoryState(this.done, this.undone) : this;\n }\n addChanges(event, time, userEvent, config, tr) {\n let done = this.done, lastEvent = done[done.length - 1];\n if (lastEvent && lastEvent.changes && !lastEvent.changes.empty && event.changes &&\n (!userEvent || joinableUserEvent.test(userEvent)) &&\n ((!lastEvent.selectionsAfter.length &&\n time - this.prevTime < config.newGroupDelay &&\n config.joinToEvent(tr, isAdjacent(lastEvent.changes, event.changes))) ||\n // For compose (but not compose.start) events, always join with previous event\n userEvent == \"input.type.compose\")) {\n done = updateBranch(done, done.length - 1, config.minDepth, new HistEvent(event.changes.compose(lastEvent.changes), conc(StateEffect.mapEffects(event.effects, lastEvent.changes), lastEvent.effects), lastEvent.mapped, lastEvent.startSelection, none));\n }\n else {\n done = updateBranch(done, done.length, config.minDepth, event);\n }\n return new HistoryState(done, none, time, userEvent);\n }\n addSelection(selection, time, userEvent, newGroupDelay) {\n let last = this.done.length ? this.done[this.done.length - 1].selectionsAfter : none;\n if (last.length > 0 &&\n time - this.prevTime < newGroupDelay &&\n userEvent == this.prevUserEvent && userEvent && /^select($|\\.)/.test(userEvent) &&\n eqSelectionShape(last[last.length - 1], selection))\n return this;\n return new HistoryState(addSelection(this.done, selection), this.undone, time, userEvent);\n }\n addMapping(mapping) {\n return new HistoryState(addMappingToBranch(this.done, mapping), addMappingToBranch(this.undone, mapping), this.prevTime, this.prevUserEvent);\n }\n pop(side, state, onlySelection) {\n let branch = side == 0 /* BranchName.Done */ ? this.done : this.undone;\n if (branch.length == 0)\n return null;\n let event = branch[branch.length - 1], selection = event.selectionsAfter[0] || state.selection;\n if (onlySelection && event.selectionsAfter.length) {\n return state.update({\n selection: event.selectionsAfter[event.selectionsAfter.length - 1],\n annotations: fromHistory.of({ side, rest: popSelection(branch), selection }),\n userEvent: side == 0 /* BranchName.Done */ ? \"select.undo\" : \"select.redo\",\n scrollIntoView: true\n });\n }\n else if (!event.changes) {\n return null;\n }\n else {\n let rest = branch.length == 1 ? none : branch.slice(0, branch.length - 1);\n if (event.mapped)\n rest = addMappingToBranch(rest, event.mapped);\n return state.update({\n changes: event.changes,\n selection: event.startSelection,\n effects: event.effects,\n annotations: fromHistory.of({ side, rest, selection }),\n filter: false,\n userEvent: side == 0 /* BranchName.Done */ ? \"undo\" : \"redo\",\n scrollIntoView: true\n });\n }\n }\n}\nHistoryState.empty = /*@__PURE__*/new HistoryState(none, none);\n/**\nDefault key bindings for the undo history.\n\n- Mod-z: [`undo`](https://codemirror.net/6/docs/ref/#commands.undo).\n- Mod-y (Mod-Shift-z on macOS) + Ctrl-Shift-z on Linux: [`redo`](https://codemirror.net/6/docs/ref/#commands.redo).\n- Mod-u: [`undoSelection`](https://codemirror.net/6/docs/ref/#commands.undoSelection).\n- Alt-u (Mod-Shift-u on macOS): [`redoSelection`](https://codemirror.net/6/docs/ref/#commands.redoSelection).\n*/\nconst historyKeymap = [\n { key: \"Mod-z\", run: undo, preventDefault: true },\n { key: \"Mod-y\", mac: \"Mod-Shift-z\", run: redo, preventDefault: true },\n { linux: \"Ctrl-Shift-z\", run: redo, preventDefault: true },\n { key: \"Mod-u\", run: undoSelection, preventDefault: true },\n { key: \"Alt-u\", mac: \"Mod-Shift-u\", run: redoSelection, preventDefault: true }\n];\n\nfunction updateSel(sel, by) {\n return EditorSelection.create(sel.ranges.map(by), sel.mainIndex);\n}\nfunction setSel(state, selection) {\n return state.update({ selection, scrollIntoView: true, userEvent: \"select\" });\n}\nfunction moveSel({ state, dispatch }, how) {\n let selection = updateSel(state.selection, how);\n if (selection.eq(state.selection, true))\n return false;\n dispatch(setSel(state, selection));\n return true;\n}\nfunction rangeEnd(range, forward) {\n return EditorSelection.cursor(forward ? range.to : range.from);\n}\nfunction cursorByChar(view, forward) {\n return moveSel(view, range => range.empty ? view.moveByChar(range, forward) : rangeEnd(range, forward));\n}\nfunction ltrAtCursor(view) {\n return view.textDirectionAt(view.state.selection.main.head) == Direction.LTR;\n}\n/**\nMove the selection one character to the left (which is backward in\nleft-to-right text, forward in right-to-left text).\n*/\nconst cursorCharLeft = view => cursorByChar(view, !ltrAtCursor(view));\n/**\nMove the selection one character to the right.\n*/\nconst cursorCharRight = view => cursorByChar(view, ltrAtCursor(view));\n/**\nMove the selection one character forward.\n*/\nconst cursorCharForward = view => cursorByChar(view, true);\n/**\nMove the selection one character backward.\n*/\nconst cursorCharBackward = view => cursorByChar(view, false);\nfunction byCharLogical(state, range, forward) {\n let pos = range.head, line = state.doc.lineAt(pos);\n if (pos == (forward ? line.to : line.from))\n pos = forward ? Math.min(state.doc.length, line.to + 1) : Math.max(0, line.from - 1);\n else\n pos = line.from + findClusterBreak(line.text, pos - line.from, forward);\n return EditorSelection.cursor(pos, forward ? -1 : 1);\n}\nfunction moveByCharLogical(target, forward) {\n return moveSel(target, range => range.empty ? byCharLogical(target.state, range, forward) : rangeEnd(range, forward));\n}\n/**\nMove the selection one character forward, in logical\n(non-text-direction-aware) string index order.\n*/\nconst cursorCharForwardLogical = target => moveByCharLogical(target, true);\n/**\nMove the selection one character backward, in logical string index\norder.\n*/\nconst cursorCharBackwardLogical = target => moveByCharLogical(target, false);\nfunction cursorByGroup(view, forward) {\n return moveSel(view, range => range.empty ? view.moveByGroup(range, forward) : rangeEnd(range, forward));\n}\n/**\nMove the selection to the left across one group of word or\nnon-word (but also non-space) characters.\n*/\nconst cursorGroupLeft = view => cursorByGroup(view, !ltrAtCursor(view));\n/**\nMove the selection one group to the right.\n*/\nconst cursorGroupRight = view => cursorByGroup(view, ltrAtCursor(view));\n/**\nMove the selection one group forward.\n*/\nconst cursorGroupForward = view => cursorByGroup(view, true);\n/**\nMove the selection one group backward.\n*/\nconst cursorGroupBackward = view => cursorByGroup(view, false);\nfunction toGroupStart(view, pos, start) {\n let categorize = view.state.charCategorizer(pos);\n let cat = categorize(start), initial = cat != CharCategory.Space;\n return (next) => {\n let nextCat = categorize(next);\n if (nextCat != CharCategory.Space)\n return initial && nextCat == cat;\n initial = false;\n return true;\n };\n}\n/**\nMove the cursor one group forward in the default Windows style,\nwhere it moves to the start of the next group.\n*/\nconst cursorGroupForwardWin = view => {\n return moveSel(view, range => range.empty\n ? view.moveByChar(range, true, start => toGroupStart(view, range.head, start))\n : rangeEnd(range, true));\n};\nconst segmenter = typeof Intl != \"undefined\" && Intl.Segmenter ?\n /*@__PURE__*/new (Intl.Segmenter)(undefined, { granularity: \"word\" }) : null;\nfunction moveBySubword(view, range, forward) {\n let categorize = view.state.charCategorizer(range.from);\n let cat = CharCategory.Space, pos = range.from, steps = 0;\n let done = false, sawUpper = false, sawLower = false;\n let step = (next) => {\n if (done)\n return false;\n pos += forward ? next.length : -next.length;\n let nextCat = categorize(next), ahead;\n if (nextCat == CharCategory.Word && next.charCodeAt(0) < 128 && /[\\W_]/.test(next))\n nextCat = -1; // Treat word punctuation specially\n if (cat == CharCategory.Space)\n cat = nextCat;\n if (cat != nextCat)\n return false;\n if (cat == CharCategory.Word) {\n if (next.toLowerCase() == next) {\n if (!forward && sawUpper)\n return false;\n sawLower = true;\n }\n else if (sawLower) {\n if (forward)\n return false;\n done = true;\n }\n else {\n if (sawUpper && forward && categorize(ahead = view.state.sliceDoc(pos, pos + 1)) == CharCategory.Word &&\n ahead.toLowerCase() == ahead)\n return false;\n sawUpper = true;\n }\n }\n steps++;\n return true;\n };\n let end = view.moveByChar(range, forward, start => {\n step(start);\n return step;\n });\n if (segmenter && cat == CharCategory.Word && end.from == range.from + steps * (forward ? 1 : -1)) {\n let from = Math.min(range.head, end.head), to = Math.max(range.head, end.head);\n let skipped = view.state.sliceDoc(from, to);\n if (skipped.length > 1 && /[\\u4E00-\\uffff]/.test(skipped)) {\n let segments = Array.from(segmenter.segment(skipped));\n if (segments.length > 1) {\n if (forward)\n return EditorSelection.cursor(range.head + segments[1].index, -1);\n return EditorSelection.cursor(end.head + segments[segments.length - 1].index, 1);\n }\n }\n }\n return end;\n}\nfunction cursorBySubword(view, forward) {\n return moveSel(view, range => range.empty ? moveBySubword(view, range, forward) : rangeEnd(range, forward));\n}\n/**\nMove the selection one group or camel-case subword forward.\n*/\nconst cursorSubwordForward = view => cursorBySubword(view, true);\n/**\nMove the selection one group or camel-case subword backward.\n*/\nconst cursorSubwordBackward = view => cursorBySubword(view, false);\nfunction interestingNode(state, node, bracketProp) {\n if (node.type.prop(bracketProp))\n return true;\n let len = node.to - node.from;\n return len && (len > 2 || /[^\\s,.;:]/.test(state.sliceDoc(node.from, node.to))) || node.firstChild;\n}\nfunction moveBySyntax(state, start, forward) {\n let pos = syntaxTree(state).resolveInner(start.head);\n let bracketProp = forward ? NodeProp.closedBy : NodeProp.openedBy;\n // Scan forward through child nodes to see if there's an interesting\n // node ahead.\n for (let at = start.head;;) {\n let next = forward ? pos.childAfter(at) : pos.childBefore(at);\n if (!next)\n break;\n if (interestingNode(state, next, bracketProp))\n pos = next;\n else\n at = forward ? next.to : next.from;\n }\n let bracket = pos.type.prop(bracketProp), match, newPos;\n if (bracket && (match = forward ? matchBrackets(state, pos.from, 1) : matchBrackets(state, pos.to, -1)) && match.matched)\n newPos = forward ? match.end.to : match.end.from;\n else\n newPos = forward ? pos.to : pos.from;\n return EditorSelection.cursor(newPos, forward ? -1 : 1);\n}\n/**\nMove the cursor over the next syntactic element to the left.\n*/\nconst cursorSyntaxLeft = view => moveSel(view, range => moveBySyntax(view.state, range, !ltrAtCursor(view)));\n/**\nMove the cursor over the next syntactic element to the right.\n*/\nconst cursorSyntaxRight = view => moveSel(view, range => moveBySyntax(view.state, range, ltrAtCursor(view)));\nfunction cursorByLine(view, forward) {\n return moveSel(view, range => {\n if (!range.empty)\n return rangeEnd(range, forward);\n let moved = view.moveVertically(range, forward);\n return moved.head != range.head ? moved : view.moveToLineBoundary(range, forward);\n });\n}\n/**\nMove the selection one line up.\n*/\nconst cursorLineUp = view => cursorByLine(view, false);\n/**\nMove the selection one line down.\n*/\nconst cursorLineDown = view => cursorByLine(view, true);\nfunction pageInfo(view) {\n let selfScroll = view.scrollDOM.clientHeight < view.scrollDOM.scrollHeight - 2;\n let marginTop = 0, marginBottom = 0, height;\n if (selfScroll) {\n for (let source of view.state.facet(EditorView.scrollMargins)) {\n let margins = source(view);\n if (margins === null || margins === void 0 ? void 0 : margins.top)\n marginTop = Math.max(margins === null || margins === void 0 ? void 0 : margins.top, marginTop);\n if (margins === null || margins === void 0 ? void 0 : margins.bottom)\n marginBottom = Math.max(margins === null || margins === void 0 ? void 0 : margins.bottom, marginBottom);\n }\n height = view.scrollDOM.clientHeight - marginTop - marginBottom;\n }\n else {\n height = (view.dom.ownerDocument.defaultView || window).innerHeight;\n }\n return { marginTop, marginBottom, selfScroll,\n height: Math.max(view.defaultLineHeight, height - 5) };\n}\nfunction cursorByPage(view, forward) {\n let page = pageInfo(view);\n let { state } = view, selection = updateSel(state.selection, range => {\n return range.empty ? view.moveVertically(range, forward, page.height)\n : rangeEnd(range, forward);\n });\n if (selection.eq(state.selection))\n return false;\n let effect;\n if (page.selfScroll) {\n let startPos = view.coordsAtPos(state.selection.main.head);\n let scrollRect = view.scrollDOM.getBoundingClientRect();\n let scrollTop = scrollRect.top + page.marginTop, scrollBottom = scrollRect.bottom - page.marginBottom;\n if (startPos && startPos.top > scrollTop && startPos.bottom < scrollBottom)\n effect = EditorView.scrollIntoView(selection.main.head, { y: \"start\", yMargin: startPos.top - scrollTop });\n }\n view.dispatch(setSel(state, selection), { effects: effect });\n return true;\n}\n/**\nMove the selection one page up.\n*/\nconst cursorPageUp = view => cursorByPage(view, false);\n/**\nMove the selection one page down.\n*/\nconst cursorPageDown = view => cursorByPage(view, true);\nfunction moveByLineBoundary(view, start, forward) {\n let line = view.lineBlockAt(start.head), moved = view.moveToLineBoundary(start, forward);\n if (moved.head == start.head && moved.head != (forward ? line.to : line.from))\n moved = view.moveToLineBoundary(start, forward, false);\n if (!forward && moved.head == line.from && line.length) {\n let space = /^\\s*/.exec(view.state.sliceDoc(line.from, Math.min(line.from + 100, line.to)))[0].length;\n if (space && start.head != line.from + space)\n moved = EditorSelection.cursor(line.from + space);\n }\n return moved;\n}\n/**\nMove the selection to the next line wrap point, or to the end of\nthe line if there isn't one left on this line.\n*/\nconst cursorLineBoundaryForward = view => moveSel(view, range => moveByLineBoundary(view, range, true));\n/**\nMove the selection to previous line wrap point, or failing that to\nthe start of the line. If the line is indented, and the cursor\nisn't already at the end of the indentation, this will move to the\nend of the indentation instead of the start of the line.\n*/\nconst cursorLineBoundaryBackward = view => moveSel(view, range => moveByLineBoundary(view, range, false));\n/**\nMove the selection one line wrap point to the left.\n*/\nconst cursorLineBoundaryLeft = view => moveSel(view, range => moveByLineBoundary(view, range, !ltrAtCursor(view)));\n/**\nMove the selection one line wrap point to the right.\n*/\nconst cursorLineBoundaryRight = view => moveSel(view, range => moveByLineBoundary(view, range, ltrAtCursor(view)));\n/**\nMove the selection to the start of the line.\n*/\nconst cursorLineStart = view => moveSel(view, range => EditorSelection.cursor(view.lineBlockAt(range.head).from, 1));\n/**\nMove the selection to the end of the line.\n*/\nconst cursorLineEnd = view => moveSel(view, range => EditorSelection.cursor(view.lineBlockAt(range.head).to, -1));\nfunction toMatchingBracket(state, dispatch, extend) {\n let found = false, selection = updateSel(state.selection, range => {\n let matching = matchBrackets(state, range.head, -1)\n || matchBrackets(state, range.head, 1)\n || (range.head > 0 && matchBrackets(state, range.head - 1, 1))\n || (range.head < state.doc.length && matchBrackets(state, range.head + 1, -1));\n if (!matching || !matching.end)\n return range;\n found = true;\n let head = matching.start.from == range.head ? matching.end.to : matching.end.from;\n return extend ? EditorSelection.range(range.anchor, head) : EditorSelection.cursor(head);\n });\n if (!found)\n return false;\n dispatch(setSel(state, selection));\n return true;\n}\n/**\nMove the selection to the bracket matching the one it is currently\non, if any.\n*/\nconst cursorMatchingBracket = ({ state, dispatch }) => toMatchingBracket(state, dispatch, false);\n/**\nExtend the selection to the bracket matching the one the selection\nhead is currently on, if any.\n*/\nconst selectMatchingBracket = ({ state, dispatch }) => toMatchingBracket(state, dispatch, true);\nfunction extendSel(target, how) {\n let selection = updateSel(target.state.selection, range => {\n let head = how(range);\n return EditorSelection.range(range.anchor, head.head, head.goalColumn, head.bidiLevel || undefined);\n });\n if (selection.eq(target.state.selection))\n return false;\n target.dispatch(setSel(target.state, selection));\n return true;\n}\nfunction selectByChar(view, forward) {\n return extendSel(view, range => view.moveByChar(range, forward));\n}\n/**\nMove the selection head one character to the left, while leaving\nthe anchor in place.\n*/\nconst selectCharLeft = view => selectByChar(view, !ltrAtCursor(view));\n/**\nMove the selection head one character to the right.\n*/\nconst selectCharRight = view => selectByChar(view, ltrAtCursor(view));\n/**\nMove the selection head one character forward.\n*/\nconst selectCharForward = view => selectByChar(view, true);\n/**\nMove the selection head one character backward.\n*/\nconst selectCharBackward = view => selectByChar(view, false);\n/**\nMove the selection head one character forward by logical\n(non-direction aware) string index order.\n*/\nconst selectCharForwardLogical = target => extendSel(target, range => byCharLogical(target.state, range, true));\n/**\nMove the selection head one character backward by logical string\nindex order.\n*/\nconst selectCharBackwardLogical = target => extendSel(target, range => byCharLogical(target.state, range, false));\nfunction selectByGroup(view, forward) {\n return extendSel(view, range => view.moveByGroup(range, forward));\n}\n/**\nMove the selection head one [group](https://codemirror.net/6/docs/ref/#commands.cursorGroupLeft) to\nthe left.\n*/\nconst selectGroupLeft = view => selectByGroup(view, !ltrAtCursor(view));\n/**\nMove the selection head one group to the right.\n*/\nconst selectGroupRight = view => selectByGroup(view, ltrAtCursor(view));\n/**\nMove the selection head one group forward.\n*/\nconst selectGroupForward = view => selectByGroup(view, true);\n/**\nMove the selection head one group backward.\n*/\nconst selectGroupBackward = view => selectByGroup(view, false);\n/**\nMove the selection head one group forward in the default Windows\nstyle, skipping to the start of the next group.\n*/\nconst selectGroupForwardWin = view => {\n return extendSel(view, range => view.moveByChar(range, true, start => toGroupStart(view, range.head, start)));\n};\nfunction selectBySubword(view, forward) {\n return extendSel(view, range => moveBySubword(view, range, forward));\n}\n/**\nMove the selection head one group or camel-case subword forward.\n*/\nconst selectSubwordForward = view => selectBySubword(view, true);\n/**\nMove the selection head one group or subword backward.\n*/\nconst selectSubwordBackward = view => selectBySubword(view, false);\n/**\nMove the selection head over the next syntactic element to the left.\n*/\nconst selectSyntaxLeft = view => extendSel(view, range => moveBySyntax(view.state, range, !ltrAtCursor(view)));\n/**\nMove the selection head over the next syntactic element to the right.\n*/\nconst selectSyntaxRight = view => extendSel(view, range => moveBySyntax(view.state, range, ltrAtCursor(view)));\nfunction selectByLine(view, forward) {\n return extendSel(view, range => view.moveVertically(range, forward));\n}\n/**\nMove the selection head one line up.\n*/\nconst selectLineUp = view => selectByLine(view, false);\n/**\nMove the selection head one line down.\n*/\nconst selectLineDown = view => selectByLine(view, true);\nfunction selectByPage(view, forward) {\n return extendSel(view, range => view.moveVertically(range, forward, pageInfo(view).height));\n}\n/**\nMove the selection head one page up.\n*/\nconst selectPageUp = view => selectByPage(view, false);\n/**\nMove the selection head one page down.\n*/\nconst selectPageDown = view => selectByPage(view, true);\n/**\nMove the selection head to the next line boundary.\n*/\nconst selectLineBoundaryForward = view => extendSel(view, range => moveByLineBoundary(view, range, true));\n/**\nMove the selection head to the previous line boundary.\n*/\nconst selectLineBoundaryBackward = view => extendSel(view, range => moveByLineBoundary(view, range, false));\n/**\nMove the selection head one line boundary to the left.\n*/\nconst selectLineBoundaryLeft = view => extendSel(view, range => moveByLineBoundary(view, range, !ltrAtCursor(view)));\n/**\nMove the selection head one line boundary to the right.\n*/\nconst selectLineBoundaryRight = view => extendSel(view, range => moveByLineBoundary(view, range, ltrAtCursor(view)));\n/**\nMove the selection head to the start of the line.\n*/\nconst selectLineStart = view => extendSel(view, range => EditorSelection.cursor(view.lineBlockAt(range.head).from));\n/**\nMove the selection head to the end of the line.\n*/\nconst selectLineEnd = view => extendSel(view, range => EditorSelection.cursor(view.lineBlockAt(range.head).to));\n/**\nMove the selection to the start of the document.\n*/\nconst cursorDocStart = ({ state, dispatch }) => {\n dispatch(setSel(state, { anchor: 0 }));\n return true;\n};\n/**\nMove the selection to the end of the document.\n*/\nconst cursorDocEnd = ({ state, dispatch }) => {\n dispatch(setSel(state, { anchor: state.doc.length }));\n return true;\n};\n/**\nMove the selection head to the start of the document.\n*/\nconst selectDocStart = ({ state, dispatch }) => {\n dispatch(setSel(state, { anchor: state.selection.main.anchor, head: 0 }));\n return true;\n};\n/**\nMove the selection head to the end of the document.\n*/\nconst selectDocEnd = ({ state, dispatch }) => {\n dispatch(setSel(state, { anchor: state.selection.main.anchor, head: state.doc.length }));\n return true;\n};\n/**\nSelect the entire document.\n*/\nconst selectAll = ({ state, dispatch }) => {\n dispatch(state.update({ selection: { anchor: 0, head: state.doc.length }, userEvent: \"select\" }));\n return true;\n};\n/**\nExpand the selection to cover entire lines.\n*/\nconst selectLine = ({ state, dispatch }) => {\n let ranges = selectedLineBlocks(state).map(({ from, to }) => EditorSelection.range(from, Math.min(to + 1, state.doc.length)));\n dispatch(state.update({ selection: EditorSelection.create(ranges), userEvent: \"select\" }));\n return true;\n};\n/**\nSelect the next syntactic construct that is larger than the\nselection. Note that this will only work insofar as the language\n[provider](https://codemirror.net/6/docs/ref/#language.language) you use builds up a full\nsyntax tree.\n*/\nconst selectParentSyntax = ({ state, dispatch }) => {\n let selection = updateSel(state.selection, range => {\n let tree = syntaxTree(state), stack = tree.resolveStack(range.from, 1);\n if (range.empty) {\n let stackBefore = tree.resolveStack(range.from, -1);\n if (stackBefore.node.from >= stack.node.from && stackBefore.node.to <= stack.node.to)\n stack = stackBefore;\n }\n for (let cur = stack; cur; cur = cur.next) {\n let { node } = cur;\n if (((node.from < range.from && node.to >= range.to) ||\n (node.to > range.to && node.from <= range.from)) &&\n cur.next)\n return EditorSelection.range(node.to, node.from);\n }\n return range;\n });\n if (selection.eq(state.selection))\n return false;\n dispatch(setSel(state, selection));\n return true;\n};\nfunction addCursorVertically(view, forward) {\n let { state } = view, sel = state.selection, ranges = state.selection.ranges.slice();\n for (let range of state.selection.ranges) {\n let line = state.doc.lineAt(range.head);\n if (forward ? line.to < view.state.doc.length : line.from > 0)\n for (let cur = range;;) {\n let next = view.moveVertically(cur, forward);\n if (next.head < line.from || next.head > line.to) {\n if (!ranges.some(r => r.head == next.head))\n ranges.push(next);\n break;\n }\n else if (next.head == cur.head) {\n break;\n }\n else {\n cur = next;\n }\n }\n }\n if (ranges.length == sel.ranges.length)\n return false;\n view.dispatch(setSel(state, EditorSelection.create(ranges, ranges.length - 1)));\n return true;\n}\n/**\nExpand the selection by adding a cursor above the heads of\ncurrently selected ranges.\n*/\nconst addCursorAbove = view => addCursorVertically(view, false);\n/**\nExpand the selection by adding a cursor below the heads of\ncurrently selected ranges.\n*/\nconst addCursorBelow = view => addCursorVertically(view, true);\n/**\nSimplify the current selection. When multiple ranges are selected,\nreduce it to its main range. Otherwise, if the selection is\nnon-empty, convert it to a cursor selection.\n*/\nconst simplifySelection = ({ state, dispatch }) => {\n let cur = state.selection, selection = null;\n if (cur.ranges.length > 1)\n selection = EditorSelection.create([cur.main]);\n else if (!cur.main.empty)\n selection = EditorSelection.create([EditorSelection.cursor(cur.main.head)]);\n if (!selection)\n return false;\n dispatch(setSel(state, selection));\n return true;\n};\nfunction deleteBy(target, by) {\n if (target.state.readOnly)\n return false;\n let event = \"delete.selection\", { state } = target;\n let changes = state.changeByRange(range => {\n let { from, to } = range;\n if (from == to) {\n let towards = by(range);\n if (towards < from) {\n event = \"delete.backward\";\n towards = skipAtomic(target, towards, false);\n }\n else if (towards > from) {\n event = \"delete.forward\";\n towards = skipAtomic(target, towards, true);\n }\n from = Math.min(from, towards);\n to = Math.max(to, towards);\n }\n else {\n from = skipAtomic(target, from, false);\n to = skipAtomic(target, to, true);\n }\n return from == to ? { range } : { changes: { from, to }, range: EditorSelection.cursor(from, from < range.head ? -1 : 1) };\n });\n if (changes.changes.empty)\n return false;\n target.dispatch(state.update(changes, {\n scrollIntoView: true,\n userEvent: event,\n effects: event == \"delete.selection\" ? EditorView.announce.of(state.phrase(\"Selection deleted\")) : undefined\n }));\n return true;\n}\nfunction skipAtomic(target, pos, forward) {\n if (target instanceof EditorView)\n for (let ranges of target.state.facet(EditorView.atomicRanges).map(f => f(target)))\n ranges.between(pos, pos, (from, to) => {\n if (from < pos && to > pos)\n pos = forward ? to : from;\n });\n return pos;\n}\nconst deleteByChar = (target, forward, byIndentUnit) => deleteBy(target, range => {\n let pos = range.from, { state } = target, line = state.doc.lineAt(pos), before, targetPos;\n if (byIndentUnit && !forward && pos > line.from && pos < line.from + 200 &&\n !/[^ \\t]/.test(before = line.text.slice(0, pos - line.from))) {\n if (before[before.length - 1] == \"\\t\")\n return pos - 1;\n let col = countColumn(before, state.tabSize), drop = col % getIndentUnit(state) || getIndentUnit(state);\n for (let i = 0; i < drop && before[before.length - 1 - i] == \" \"; i++)\n pos--;\n targetPos = pos;\n }\n else {\n targetPos = findClusterBreak(line.text, pos - line.from, forward, forward) + line.from;\n if (targetPos == pos && line.number != (forward ? state.doc.lines : 1))\n targetPos += forward ? 1 : -1;\n else if (!forward && /[\\ufe00-\\ufe0f]/.test(line.text.slice(targetPos - line.from, pos - line.from)))\n targetPos = findClusterBreak(line.text, targetPos - line.from, false, false) + line.from;\n }\n return targetPos;\n});\n/**\nDelete the selection, or, for cursor selections, the character or\nindentation unit before the cursor.\n*/\nconst deleteCharBackward = view => deleteByChar(view, false, true);\n/**\nDelete the selection or the character before the cursor. Does not\nimplement any extended behavior like deleting whole indentation\nunits in one go.\n*/\nconst deleteCharBackwardStrict = view => deleteByChar(view, false, false);\n/**\nDelete the selection or the character after the cursor.\n*/\nconst deleteCharForward = view => deleteByChar(view, true, false);\nconst deleteByGroup = (target, forward) => deleteBy(target, range => {\n let pos = range.head, { state } = target, line = state.doc.lineAt(pos);\n let categorize = state.charCategorizer(pos);\n for (let cat = null;;) {\n if (pos == (forward ? line.to : line.from)) {\n if (pos == range.head && line.number != (forward ? state.doc.lines : 1))\n pos += forward ? 1 : -1;\n break;\n }\n let next = findClusterBreak(line.text, pos - line.from, forward) + line.from;\n let nextChar = line.text.slice(Math.min(pos, next) - line.from, Math.max(pos, next) - line.from);\n let nextCat = categorize(nextChar);\n if (cat != null && nextCat != cat)\n break;\n if (nextChar != \" \" || pos != range.head)\n cat = nextCat;\n pos = next;\n }\n return pos;\n});\n/**\nDelete the selection or backward until the end of the next\n[group](https://codemirror.net/6/docs/ref/#view.EditorView.moveByGroup), only skipping groups of\nwhitespace when they consist of a single space.\n*/\nconst deleteGroupBackward = target => deleteByGroup(target, false);\n/**\nDelete the selection or forward until the end of the next group.\n*/\nconst deleteGroupForward = target => deleteByGroup(target, true);\n/**\nVariant of [`deleteGroupForward`](https://codemirror.net/6/docs/ref/#commands.deleteGroupForward)\nthat uses the Windows convention of also deleting the whitespace\nafter a word.\n*/\nconst deleteGroupForwardWin = view => deleteBy(view, range => view.moveByChar(range, true, start => toGroupStart(view, range.head, start)).head);\n/**\nDelete the selection, or, if it is a cursor selection, delete to\nthe end of the line. If the cursor is directly at the end of the\nline, delete the line break after it.\n*/\nconst deleteToLineEnd = view => deleteBy(view, range => {\n let lineEnd = view.lineBlockAt(range.head).to;\n return range.head < lineEnd ? lineEnd : Math.min(view.state.doc.length, range.head + 1);\n});\n/**\nDelete the selection, or, if it is a cursor selection, delete to\nthe start of the line. If the cursor is directly at the start of the\nline, delete the line break before it.\n*/\nconst deleteToLineStart = view => deleteBy(view, range => {\n let lineStart = view.lineBlockAt(range.head).from;\n return range.head > lineStart ? lineStart : Math.max(0, range.head - 1);\n});\n/**\nDelete the selection, or, if it is a cursor selection, delete to\nthe start of the line or the next line wrap before the cursor.\n*/\nconst deleteLineBoundaryBackward = view => deleteBy(view, range => {\n let lineStart = view.moveToLineBoundary(range, false).head;\n return range.head > lineStart ? lineStart : Math.max(0, range.head - 1);\n});\n/**\nDelete the selection, or, if it is a cursor selection, delete to\nthe end of the line or the next line wrap after the cursor.\n*/\nconst deleteLineBoundaryForward = view => deleteBy(view, range => {\n let lineStart = view.moveToLineBoundary(range, true).head;\n return range.head < lineStart ? lineStart : Math.min(view.state.doc.length, range.head + 1);\n});\n/**\nDelete all whitespace directly before a line end from the\ndocument.\n*/\nconst deleteTrailingWhitespace = ({ state, dispatch }) => {\n if (state.readOnly)\n return false;\n let changes = [];\n for (let pos = 0, prev = \"\", iter = state.doc.iter();;) {\n iter.next();\n if (iter.lineBreak || iter.done) {\n let trailing = prev.search(/\\s+$/);\n if (trailing > -1)\n changes.push({ from: pos - (prev.length - trailing), to: pos });\n if (iter.done)\n break;\n prev = \"\";\n }\n else {\n prev = iter.value;\n }\n pos += iter.value.length;\n }\n if (!changes.length)\n return false;\n dispatch(state.update({ changes, userEvent: \"delete\" }));\n return true;\n};\n/**\nReplace each selection range with a line break, leaving the cursor\non the line before the break.\n*/\nconst splitLine = ({ state, dispatch }) => {\n if (state.readOnly)\n return false;\n let changes = state.changeByRange(range => {\n return { changes: { from: range.from, to: range.to, insert: Text.of([\"\", \"\"]) },\n range: EditorSelection.cursor(range.from) };\n });\n dispatch(state.update(changes, { scrollIntoView: true, userEvent: \"input\" }));\n return true;\n};\n/**\nFlip the characters before and after the cursor(s).\n*/\nconst transposeChars = ({ state, dispatch }) => {\n if (state.readOnly)\n return false;\n let changes = state.changeByRange(range => {\n if (!range.empty || range.from == 0 || range.from == state.doc.length)\n return { range };\n let pos = range.from, line = state.doc.lineAt(pos);\n let from = pos == line.from ? pos - 1 : findClusterBreak(line.text, pos - line.from, false) + line.from;\n let to = pos == line.to ? pos + 1 : findClusterBreak(line.text, pos - line.from, true) + line.from;\n return { changes: { from, to, insert: state.doc.slice(pos, to).append(state.doc.slice(from, pos)) },\n range: EditorSelection.cursor(to) };\n });\n if (changes.changes.empty)\n return false;\n dispatch(state.update(changes, { scrollIntoView: true, userEvent: \"move.character\" }));\n return true;\n};\nfunction selectedLineBlocks(state) {\n let blocks = [], upto = -1;\n for (let range of state.selection.ranges) {\n let startLine = state.doc.lineAt(range.from), endLine = state.doc.lineAt(range.to);\n if (!range.empty && range.to == endLine.from)\n endLine = state.doc.lineAt(range.to - 1);\n if (upto >= startLine.number) {\n let prev = blocks[blocks.length - 1];\n prev.to = endLine.to;\n prev.ranges.push(range);\n }\n else {\n blocks.push({ from: startLine.from, to: endLine.to, ranges: [range] });\n }\n upto = endLine.number + 1;\n }\n return blocks;\n}\nfunction moveLine(state, dispatch, forward) {\n if (state.readOnly)\n return false;\n let changes = [], ranges = [];\n for (let block of selectedLineBlocks(state)) {\n if (forward ? block.to == state.doc.length : block.from == 0)\n continue;\n let nextLine = state.doc.lineAt(forward ? block.to + 1 : block.from - 1);\n let size = nextLine.length + 1;\n if (forward) {\n changes.push({ from: block.to, to: nextLine.to }, { from: block.from, insert: nextLine.text + state.lineBreak });\n for (let r of block.ranges)\n ranges.push(EditorSelection.range(Math.min(state.doc.length, r.anchor + size), Math.min(state.doc.length, r.head + size)));\n }\n else {\n changes.push({ from: nextLine.from, to: block.from }, { from: block.to, insert: state.lineBreak + nextLine.text });\n for (let r of block.ranges)\n ranges.push(EditorSelection.range(r.anchor - size, r.head - size));\n }\n }\n if (!changes.length)\n return false;\n dispatch(state.update({\n changes,\n scrollIntoView: true,\n selection: EditorSelection.create(ranges, state.selection.mainIndex),\n userEvent: \"move.line\"\n }));\n return true;\n}\n/**\nMove the selected lines up one line.\n*/\nconst moveLineUp = ({ state, dispatch }) => moveLine(state, dispatch, false);\n/**\nMove the selected lines down one line.\n*/\nconst moveLineDown = ({ state, dispatch }) => moveLine(state, dispatch, true);\nfunction copyLine(state, dispatch, forward) {\n if (state.readOnly)\n return false;\n let changes = [];\n for (let block of selectedLineBlocks(state)) {\n if (forward)\n changes.push({ from: block.from, insert: state.doc.slice(block.from, block.to) + state.lineBreak });\n else\n changes.push({ from: block.to, insert: state.lineBreak + state.doc.slice(block.from, block.to) });\n }\n let changeSet = state.changes(changes);\n dispatch(state.update({\n changes: changeSet,\n selection: state.selection.map(changeSet, forward ? 1 : -1),\n scrollIntoView: true,\n userEvent: \"input.copyline\"\n }));\n return true;\n}\n/**\nCreate a copy of the selected lines. Keep the selection in the top copy.\n*/\nconst copyLineUp = ({ state, dispatch }) => copyLine(state, dispatch, false);\n/**\nCreate a copy of the selected lines. Keep the selection in the bottom copy.\n*/\nconst copyLineDown = ({ state, dispatch }) => copyLine(state, dispatch, true);\n/**\nDelete selected lines.\n*/\nconst deleteLine = view => {\n if (view.state.readOnly)\n return false;\n let { state } = view, changes = state.changes(selectedLineBlocks(state).map(({ from, to }) => {\n if (from > 0)\n from--;\n else if (to < state.doc.length)\n to++;\n return { from, to };\n }));\n let selection = updateSel(state.selection, range => {\n let dist = undefined;\n if (view.lineWrapping) {\n let block = view.lineBlockAt(range.head), pos = view.coordsAtPos(range.head, range.assoc || 1);\n if (pos)\n dist = (block.bottom + view.documentTop) - pos.bottom + view.defaultLineHeight / 2;\n }\n return view.moveVertically(range, true, dist);\n }).map(changes);\n view.dispatch({ changes, selection, scrollIntoView: true, userEvent: \"delete.line\" });\n return true;\n};\n/**\nReplace the selection with a newline.\n*/\nconst insertNewline = ({ state, dispatch }) => {\n dispatch(state.update(state.replaceSelection(state.lineBreak), { scrollIntoView: true, userEvent: \"input\" }));\n return true;\n};\n/**\nReplace the selection with a newline and the same amount of\nindentation as the line above.\n*/\nconst insertNewlineKeepIndent = ({ state, dispatch }) => {\n dispatch(state.update(state.changeByRange(range => {\n let indent = /^\\s*/.exec(state.doc.lineAt(range.from).text)[0];\n return {\n changes: { from: range.from, to: range.to, insert: state.lineBreak + indent },\n range: EditorSelection.cursor(range.from + indent.length + 1)\n };\n }), { scrollIntoView: true, userEvent: \"input\" }));\n return true;\n};\nfunction isBetweenBrackets(state, pos) {\n if (/\\(\\)|\\[\\]|\\{\\}/.test(state.sliceDoc(pos - 1, pos + 1)))\n return { from: pos, to: pos };\n let context = syntaxTree(state).resolveInner(pos);\n let before = context.childBefore(pos), after = context.childAfter(pos), closedBy;\n if (before && after && before.to <= pos && after.from >= pos &&\n (closedBy = before.type.prop(NodeProp.closedBy)) && closedBy.indexOf(after.name) > -1 &&\n state.doc.lineAt(before.to).from == state.doc.lineAt(after.from).from &&\n !/\\S/.test(state.sliceDoc(before.to, after.from)))\n return { from: before.to, to: after.from };\n return null;\n}\n/**\nReplace the selection with a newline and indent the newly created\nline(s). If the current line consists only of whitespace, this\nwill also delete that whitespace. When the cursor is between\nmatching brackets, an additional newline will be inserted after\nthe cursor.\n*/\nconst insertNewlineAndIndent = /*@__PURE__*/newlineAndIndent(false);\n/**\nCreate a blank, indented line below the current line.\n*/\nconst insertBlankLine = /*@__PURE__*/newlineAndIndent(true);\nfunction newlineAndIndent(atEof) {\n return ({ state, dispatch }) => {\n if (state.readOnly)\n return false;\n let changes = state.changeByRange(range => {\n let { from, to } = range, line = state.doc.lineAt(from);\n let explode = !atEof && from == to && isBetweenBrackets(state, from);\n if (atEof)\n from = to = (to <= line.to ? line : state.doc.lineAt(to)).to;\n let cx = new IndentContext(state, { simulateBreak: from, simulateDoubleBreak: !!explode });\n let indent = getIndentation(cx, from);\n if (indent == null)\n indent = countColumn(/^\\s*/.exec(state.doc.lineAt(from).text)[0], state.tabSize);\n while (to < line.to && /\\s/.test(line.text[to - line.from]))\n to++;\n if (explode)\n ({ from, to } = explode);\n else if (from > line.from && from < line.from + 100 && !/\\S/.test(line.text.slice(0, from)))\n from = line.from;\n let insert = [\"\", indentString(state, indent)];\n if (explode)\n insert.push(indentString(state, cx.lineIndent(line.from, -1)));\n return { changes: { from, to, insert: Text.of(insert) },\n range: EditorSelection.cursor(from + 1 + insert[1].length) };\n });\n dispatch(state.update(changes, { scrollIntoView: true, userEvent: \"input\" }));\n return true;\n };\n}\nfunction changeBySelectedLine(state, f) {\n let atLine = -1;\n return state.changeByRange(range => {\n let changes = [];\n for (let pos = range.from; pos <= range.to;) {\n let line = state.doc.lineAt(pos);\n if (line.number > atLine && (range.empty || range.to > line.from)) {\n f(line, changes, range);\n atLine = line.number;\n }\n pos = line.to + 1;\n }\n let changeSet = state.changes(changes);\n return { changes,\n range: EditorSelection.range(changeSet.mapPos(range.anchor, 1), changeSet.mapPos(range.head, 1)) };\n });\n}\n/**\nAuto-indent the selected lines. This uses the [indentation service\nfacet](https://codemirror.net/6/docs/ref/#language.indentService) as source for auto-indent\ninformation.\n*/\nconst indentSelection = ({ state, dispatch }) => {\n if (state.readOnly)\n return false;\n let updated = Object.create(null);\n let context = new IndentContext(state, { overrideIndentation: start => {\n let found = updated[start];\n return found == null ? -1 : found;\n } });\n let changes = changeBySelectedLine(state, (line, changes, range) => {\n let indent = getIndentation(context, line.from);\n if (indent == null)\n return;\n if (!/\\S/.test(line.text))\n indent = 0;\n let cur = /^\\s*/.exec(line.text)[0];\n let norm = indentString(state, indent);\n if (cur != norm || range.from < line.from + cur.length) {\n updated[line.from] = indent;\n changes.push({ from: line.from, to: line.from + cur.length, insert: norm });\n }\n });\n if (!changes.changes.empty)\n dispatch(state.update(changes, { userEvent: \"indent\" }));\n return true;\n};\n/**\nAdd a [unit](https://codemirror.net/6/docs/ref/#language.indentUnit) of indentation to all selected\nlines.\n*/\nconst indentMore = ({ state, dispatch }) => {\n if (state.readOnly)\n return false;\n dispatch(state.update(changeBySelectedLine(state, (line, changes) => {\n changes.push({ from: line.from, insert: state.facet(indentUnit) });\n }), { userEvent: \"input.indent\" }));\n return true;\n};\n/**\nRemove a [unit](https://codemirror.net/6/docs/ref/#language.indentUnit) of indentation from all\nselected lines.\n*/\nconst indentLess = ({ state, dispatch }) => {\n if (state.readOnly)\n return false;\n dispatch(state.update(changeBySelectedLine(state, (line, changes) => {\n let space = /^\\s*/.exec(line.text)[0];\n if (!space)\n return;\n let col = countColumn(space, state.tabSize), keep = 0;\n let insert = indentString(state, Math.max(0, col - getIndentUnit(state)));\n while (keep < space.length && keep < insert.length && space.charCodeAt(keep) == insert.charCodeAt(keep))\n keep++;\n changes.push({ from: line.from + keep, to: line.from + space.length, insert: insert.slice(keep) });\n }), { userEvent: \"delete.dedent\" }));\n return true;\n};\n/**\nEnables or disables\n[tab-focus mode](https://codemirror.net/6/docs/ref/#view.EditorView.setTabFocusMode). While on, this\nprevents the editor's key bindings from capturing Tab or\nShift-Tab, making it possible for the user to move focus out of\nthe editor with the keyboard.\n*/\nconst toggleTabFocusMode = view => {\n view.setTabFocusMode();\n return true;\n};\n/**\nTemporarily enables [tab-focus\nmode](https://codemirror.net/6/docs/ref/#view.EditorView.setTabFocusMode) for two seconds or until\nanother key is pressed.\n*/\nconst temporarilySetTabFocusMode = view => {\n view.setTabFocusMode(2000);\n return true;\n};\n/**\nInsert a tab character at the cursor or, if something is selected,\nuse [`indentMore`](https://codemirror.net/6/docs/ref/#commands.indentMore) to indent the entire\nselection.\n*/\nconst insertTab = ({ state, dispatch }) => {\n if (state.selection.ranges.some(r => !r.empty))\n return indentMore({ state, dispatch });\n dispatch(state.update(state.replaceSelection(\"\\t\"), { scrollIntoView: true, userEvent: \"input\" }));\n return true;\n};\n/**\nArray of key bindings containing the Emacs-style bindings that are\navailable on macOS by default.\n\n - Ctrl-b: [`cursorCharLeft`](https://codemirror.net/6/docs/ref/#commands.cursorCharLeft) ([`selectCharLeft`](https://codemirror.net/6/docs/ref/#commands.selectCharLeft) with Shift)\n - Ctrl-f: [`cursorCharRight`](https://codemirror.net/6/docs/ref/#commands.cursorCharRight) ([`selectCharRight`](https://codemirror.net/6/docs/ref/#commands.selectCharRight) with Shift)\n - Ctrl-p: [`cursorLineUp`](https://codemirror.net/6/docs/ref/#commands.cursorLineUp) ([`selectLineUp`](https://codemirror.net/6/docs/ref/#commands.selectLineUp) with Shift)\n - Ctrl-n: [`cursorLineDown`](https://codemirror.net/6/docs/ref/#commands.cursorLineDown) ([`selectLineDown`](https://codemirror.net/6/docs/ref/#commands.selectLineDown) with Shift)\n - Ctrl-a: [`cursorLineStart`](https://codemirror.net/6/docs/ref/#commands.cursorLineStart) ([`selectLineStart`](https://codemirror.net/6/docs/ref/#commands.selectLineStart) with Shift)\n - Ctrl-e: [`cursorLineEnd`](https://codemirror.net/6/docs/ref/#commands.cursorLineEnd) ([`selectLineEnd`](https://codemirror.net/6/docs/ref/#commands.selectLineEnd) with Shift)\n - Ctrl-d: [`deleteCharForward`](https://codemirror.net/6/docs/ref/#commands.deleteCharForward)\n - Ctrl-h: [`deleteCharBackward`](https://codemirror.net/6/docs/ref/#commands.deleteCharBackward)\n - Ctrl-k: [`deleteToLineEnd`](https://codemirror.net/6/docs/ref/#commands.deleteToLineEnd)\n - Ctrl-Alt-h: [`deleteGroupBackward`](https://codemirror.net/6/docs/ref/#commands.deleteGroupBackward)\n - Ctrl-o: [`splitLine`](https://codemirror.net/6/docs/ref/#commands.splitLine)\n - Ctrl-t: [`transposeChars`](https://codemirror.net/6/docs/ref/#commands.transposeChars)\n - Ctrl-v: [`cursorPageDown`](https://codemirror.net/6/docs/ref/#commands.cursorPageDown)\n - Alt-v: [`cursorPageUp`](https://codemirror.net/6/docs/ref/#commands.cursorPageUp)\n*/\nconst emacsStyleKeymap = [\n { key: \"Ctrl-b\", run: cursorCharLeft, shift: selectCharLeft, preventDefault: true },\n { key: \"Ctrl-f\", run: cursorCharRight, shift: selectCharRight },\n { key: \"Ctrl-p\", run: cursorLineUp, shift: selectLineUp },\n { key: \"Ctrl-n\", run: cursorLineDown, shift: selectLineDown },\n { key: \"Ctrl-a\", run: cursorLineStart, shift: selectLineStart },\n { key: \"Ctrl-e\", run: cursorLineEnd, shift: selectLineEnd },\n { key: \"Ctrl-d\", run: deleteCharForward },\n { key: \"Ctrl-h\", run: deleteCharBackward },\n { key: \"Ctrl-k\", run: deleteToLineEnd },\n { key: \"Ctrl-Alt-h\", run: deleteGroupBackward },\n { key: \"Ctrl-o\", run: splitLine },\n { key: \"Ctrl-t\", run: transposeChars },\n { key: \"Ctrl-v\", run: cursorPageDown },\n];\n/**\nAn array of key bindings closely sticking to platform-standard or\nwidely used bindings. (This includes the bindings from\n[`emacsStyleKeymap`](https://codemirror.net/6/docs/ref/#commands.emacsStyleKeymap), with their `key`\nproperty changed to `mac`.)\n\n - ArrowLeft: [`cursorCharLeft`](https://codemirror.net/6/docs/ref/#commands.cursorCharLeft) ([`selectCharLeft`](https://codemirror.net/6/docs/ref/#commands.selectCharLeft) with Shift)\n - ArrowRight: [`cursorCharRight`](https://codemirror.net/6/docs/ref/#commands.cursorCharRight) ([`selectCharRight`](https://codemirror.net/6/docs/ref/#commands.selectCharRight) with Shift)\n - Ctrl-ArrowLeft (Alt-ArrowLeft on macOS): [`cursorGroupLeft`](https://codemirror.net/6/docs/ref/#commands.cursorGroupLeft) ([`selectGroupLeft`](https://codemirror.net/6/docs/ref/#commands.selectGroupLeft) with Shift)\n - Ctrl-ArrowRight (Alt-ArrowRight on macOS): [`cursorGroupRight`](https://codemirror.net/6/docs/ref/#commands.cursorGroupRight) ([`selectGroupRight`](https://codemirror.net/6/docs/ref/#commands.selectGroupRight) with Shift)\n - Cmd-ArrowLeft (on macOS): [`cursorLineStart`](https://codemirror.net/6/docs/ref/#commands.cursorLineStart) ([`selectLineStart`](https://codemirror.net/6/docs/ref/#commands.selectLineStart) with Shift)\n - Cmd-ArrowRight (on macOS): [`cursorLineEnd`](https://codemirror.net/6/docs/ref/#commands.cursorLineEnd) ([`selectLineEnd`](https://codemirror.net/6/docs/ref/#commands.selectLineEnd) with Shift)\n - ArrowUp: [`cursorLineUp`](https://codemirror.net/6/docs/ref/#commands.cursorLineUp) ([`selectLineUp`](https://codemirror.net/6/docs/ref/#commands.selectLineUp) with Shift)\n - ArrowDown: [`cursorLineDown`](https://codemirror.net/6/docs/ref/#commands.cursorLineDown) ([`selectLineDown`](https://codemirror.net/6/docs/ref/#commands.selectLineDown) with Shift)\n - Cmd-ArrowUp (on macOS): [`cursorDocStart`](https://codemirror.net/6/docs/ref/#commands.cursorDocStart) ([`selectDocStart`](https://codemirror.net/6/docs/ref/#commands.selectDocStart) with Shift)\n - Cmd-ArrowDown (on macOS): [`cursorDocEnd`](https://codemirror.net/6/docs/ref/#commands.cursorDocEnd) ([`selectDocEnd`](https://codemirror.net/6/docs/ref/#commands.selectDocEnd) with Shift)\n - Ctrl-ArrowUp (on macOS): [`cursorPageUp`](https://codemirror.net/6/docs/ref/#commands.cursorPageUp) ([`selectPageUp`](https://codemirror.net/6/docs/ref/#commands.selectPageUp) with Shift)\n - Ctrl-ArrowDown (on macOS): [`cursorPageDown`](https://codemirror.net/6/docs/ref/#commands.cursorPageDown) ([`selectPageDown`](https://codemirror.net/6/docs/ref/#commands.selectPageDown) with Shift)\n - PageUp: [`cursorPageUp`](https://codemirror.net/6/docs/ref/#commands.cursorPageUp) ([`selectPageUp`](https://codemirror.net/6/docs/ref/#commands.selectPageUp) with Shift)\n - PageDown: [`cursorPageDown`](https://codemirror.net/6/docs/ref/#commands.cursorPageDown) ([`selectPageDown`](https://codemirror.net/6/docs/ref/#commands.selectPageDown) with Shift)\n - Home: [`cursorLineBoundaryBackward`](https://codemirror.net/6/docs/ref/#commands.cursorLineBoundaryBackward) ([`selectLineBoundaryBackward`](https://codemirror.net/6/docs/ref/#commands.selectLineBoundaryBackward) with Shift)\n - End: [`cursorLineBoundaryForward`](https://codemirror.net/6/docs/ref/#commands.cursorLineBoundaryForward) ([`selectLineBoundaryForward`](https://codemirror.net/6/docs/ref/#commands.selectLineBoundaryForward) with Shift)\n - Ctrl-Home (Cmd-Home on macOS): [`cursorDocStart`](https://codemirror.net/6/docs/ref/#commands.cursorDocStart) ([`selectDocStart`](https://codemirror.net/6/docs/ref/#commands.selectDocStart) with Shift)\n - Ctrl-End (Cmd-Home on macOS): [`cursorDocEnd`](https://codemirror.net/6/docs/ref/#commands.cursorDocEnd) ([`selectDocEnd`](https://codemirror.net/6/docs/ref/#commands.selectDocEnd) with Shift)\n - Enter and Shift-Enter: [`insertNewlineAndIndent`](https://codemirror.net/6/docs/ref/#commands.insertNewlineAndIndent)\n - Ctrl-a (Cmd-a on macOS): [`selectAll`](https://codemirror.net/6/docs/ref/#commands.selectAll)\n - Backspace: [`deleteCharBackward`](https://codemirror.net/6/docs/ref/#commands.deleteCharBackward)\n - Delete: [`deleteCharForward`](https://codemirror.net/6/docs/ref/#commands.deleteCharForward)\n - Ctrl-Backspace (Alt-Backspace on macOS): [`deleteGroupBackward`](https://codemirror.net/6/docs/ref/#commands.deleteGroupBackward)\n - Ctrl-Delete (Alt-Delete on macOS): [`deleteGroupForward`](https://codemirror.net/6/docs/ref/#commands.deleteGroupForward)\n - Cmd-Backspace (macOS): [`deleteLineBoundaryBackward`](https://codemirror.net/6/docs/ref/#commands.deleteLineBoundaryBackward).\n - Cmd-Delete (macOS): [`deleteLineBoundaryForward`](https://codemirror.net/6/docs/ref/#commands.deleteLineBoundaryForward).\n*/\nconst standardKeymap = /*@__PURE__*/[\n { key: \"ArrowLeft\", run: cursorCharLeft, shift: selectCharLeft, preventDefault: true },\n { key: \"Mod-ArrowLeft\", mac: \"Alt-ArrowLeft\", run: cursorGroupLeft, shift: selectGroupLeft, preventDefault: true },\n { mac: \"Cmd-ArrowLeft\", run: cursorLineBoundaryLeft, shift: selectLineBoundaryLeft, preventDefault: true },\n { key: \"ArrowRight\", run: cursorCharRight, shift: selectCharRight, preventDefault: true },\n { key: \"Mod-ArrowRight\", mac: \"Alt-ArrowRight\", run: cursorGroupRight, shift: selectGroupRight, preventDefault: true },\n { mac: \"Cmd-ArrowRight\", run: cursorLineBoundaryRight, shift: selectLineBoundaryRight, preventDefault: true },\n { key: \"ArrowUp\", run: cursorLineUp, shift: selectLineUp, preventDefault: true },\n { mac: \"Cmd-ArrowUp\", run: cursorDocStart, shift: selectDocStart },\n { mac: \"Ctrl-ArrowUp\", run: cursorPageUp, shift: selectPageUp },\n { key: \"ArrowDown\", run: cursorLineDown, shift: selectLineDown, preventDefault: true },\n { mac: \"Cmd-ArrowDown\", run: cursorDocEnd, shift: selectDocEnd },\n { mac: \"Ctrl-ArrowDown\", run: cursorPageDown, shift: selectPageDown },\n { key: \"PageUp\", run: cursorPageUp, shift: selectPageUp },\n { key: \"PageDown\", run: cursorPageDown, shift: selectPageDown },\n { key: \"Home\", run: cursorLineBoundaryBackward, shift: selectLineBoundaryBackward, preventDefault: true },\n { key: \"Mod-Home\", run: cursorDocStart, shift: selectDocStart },\n { key: \"End\", run: cursorLineBoundaryForward, shift: selectLineBoundaryForward, preventDefault: true },\n { key: \"Mod-End\", run: cursorDocEnd, shift: selectDocEnd },\n { key: \"Enter\", run: insertNewlineAndIndent, shift: insertNewlineAndIndent },\n { key: \"Mod-a\", run: selectAll },\n { key: \"Backspace\", run: deleteCharBackward, shift: deleteCharBackward, preventDefault: true },\n { key: \"Delete\", run: deleteCharForward, preventDefault: true },\n { key: \"Mod-Backspace\", mac: \"Alt-Backspace\", run: deleteGroupBackward, preventDefault: true },\n { key: \"Mod-Delete\", mac: \"Alt-Delete\", run: deleteGroupForward, preventDefault: true },\n { mac: \"Mod-Backspace\", run: deleteLineBoundaryBackward, preventDefault: true },\n { mac: \"Mod-Delete\", run: deleteLineBoundaryForward, preventDefault: true }\n].concat(/*@__PURE__*/emacsStyleKeymap.map(b => ({ mac: b.key, run: b.run, shift: b.shift })));\n/**\nThe default keymap. Includes all bindings from\n[`standardKeymap`](https://codemirror.net/6/docs/ref/#commands.standardKeymap) plus the following:\n\n- Alt-ArrowLeft (Ctrl-ArrowLeft on macOS): [`cursorSyntaxLeft`](https://codemirror.net/6/docs/ref/#commands.cursorSyntaxLeft) ([`selectSyntaxLeft`](https://codemirror.net/6/docs/ref/#commands.selectSyntaxLeft) with Shift)\n- Alt-ArrowRight (Ctrl-ArrowRight on macOS): [`cursorSyntaxRight`](https://codemirror.net/6/docs/ref/#commands.cursorSyntaxRight) ([`selectSyntaxRight`](https://codemirror.net/6/docs/ref/#commands.selectSyntaxRight) with Shift)\n- Alt-ArrowUp: [`moveLineUp`](https://codemirror.net/6/docs/ref/#commands.moveLineUp)\n- Alt-ArrowDown: [`moveLineDown`](https://codemirror.net/6/docs/ref/#commands.moveLineDown)\n- Shift-Alt-ArrowUp: [`copyLineUp`](https://codemirror.net/6/docs/ref/#commands.copyLineUp)\n- Shift-Alt-ArrowDown: [`copyLineDown`](https://codemirror.net/6/docs/ref/#commands.copyLineDown)\n- Ctrl-Alt-ArrowUp (Cmd-Alt-ArrowUp on macOS): [`addCursorAbove`](https://codemirror.net/6/docs/ref/#commands.addCursorAbove).\n- Ctrl-Alt-ArrowDown (Cmd-Alt-ArrowDown on macOS): [`addCursorBelow`](https://codemirror.net/6/docs/ref/#commands.addCursorBelow).\n- Escape: [`simplifySelection`](https://codemirror.net/6/docs/ref/#commands.simplifySelection)\n- Ctrl-Enter (Cmd-Enter on macOS): [`insertBlankLine`](https://codemirror.net/6/docs/ref/#commands.insertBlankLine)\n- Alt-l (Ctrl-l on macOS): [`selectLine`](https://codemirror.net/6/docs/ref/#commands.selectLine)\n- Ctrl-i (Cmd-i on macOS): [`selectParentSyntax`](https://codemirror.net/6/docs/ref/#commands.selectParentSyntax)\n- Ctrl-[ (Cmd-[ on macOS): [`indentLess`](https://codemirror.net/6/docs/ref/#commands.indentLess)\n- Ctrl-] (Cmd-] on macOS): [`indentMore`](https://codemirror.net/6/docs/ref/#commands.indentMore)\n- Ctrl-Alt-\\\\ (Cmd-Alt-\\\\ on macOS): [`indentSelection`](https://codemirror.net/6/docs/ref/#commands.indentSelection)\n- Shift-Ctrl-k (Shift-Cmd-k on macOS): [`deleteLine`](https://codemirror.net/6/docs/ref/#commands.deleteLine)\n- Shift-Ctrl-\\\\ (Shift-Cmd-\\\\ on macOS): [`cursorMatchingBracket`](https://codemirror.net/6/docs/ref/#commands.cursorMatchingBracket)\n- Ctrl-/ (Cmd-/ on macOS): [`toggleComment`](https://codemirror.net/6/docs/ref/#commands.toggleComment).\n- Shift-Alt-a: [`toggleBlockComment`](https://codemirror.net/6/docs/ref/#commands.toggleBlockComment).\n- Ctrl-m (Alt-Shift-m on macOS): [`toggleTabFocusMode`](https://codemirror.net/6/docs/ref/#commands.toggleTabFocusMode).\n*/\nconst defaultKeymap = /*@__PURE__*/[\n { key: \"Alt-ArrowLeft\", mac: \"Ctrl-ArrowLeft\", run: cursorSyntaxLeft, shift: selectSyntaxLeft },\n { key: \"Alt-ArrowRight\", mac: \"Ctrl-ArrowRight\", run: cursorSyntaxRight, shift: selectSyntaxRight },\n { key: \"Alt-ArrowUp\", run: moveLineUp },\n { key: \"Shift-Alt-ArrowUp\", run: copyLineUp },\n { key: \"Alt-ArrowDown\", run: moveLineDown },\n { key: \"Shift-Alt-ArrowDown\", run: copyLineDown },\n { key: \"Mod-Alt-ArrowUp\", run: addCursorAbove },\n { key: \"Mod-Alt-ArrowDown\", run: addCursorBelow },\n { key: \"Escape\", run: simplifySelection },\n { key: \"Mod-Enter\", run: insertBlankLine },\n { key: \"Alt-l\", mac: \"Ctrl-l\", run: selectLine },\n { key: \"Mod-i\", run: selectParentSyntax, preventDefault: true },\n { key: \"Mod-[\", run: indentLess },\n { key: \"Mod-]\", run: indentMore },\n { key: \"Mod-Alt-\\\\\", run: indentSelection },\n { key: \"Shift-Mod-k\", run: deleteLine },\n { key: \"Shift-Mod-\\\\\", run: cursorMatchingBracket },\n { key: \"Mod-/\", run: toggleComment },\n { key: \"Alt-A\", run: toggleBlockComment },\n { key: \"Ctrl-m\", mac: \"Shift-Alt-m\", run: toggleTabFocusMode },\n].concat(standardKeymap);\n/**\nA binding that binds Tab to [`indentMore`](https://codemirror.net/6/docs/ref/#commands.indentMore) and\nShift-Tab to [`indentLess`](https://codemirror.net/6/docs/ref/#commands.indentLess).\nPlease see the [Tab example](../../examples/tab/) before using\nthis.\n*/\nconst indentWithTab = { key: \"Tab\", run: indentMore, shift: indentLess };\n\nexport { addCursorAbove, addCursorBelow, blockComment, blockUncomment, copyLineDown, copyLineUp, cursorCharBackward, cursorCharBackwardLogical, cursorCharForward, cursorCharForwardLogical, cursorCharLeft, cursorCharRight, cursorDocEnd, cursorDocStart, cursorGroupBackward, cursorGroupForward, cursorGroupForwardWin, cursorGroupLeft, cursorGroupRight, cursorLineBoundaryBackward, cursorLineBoundaryForward, cursorLineBoundaryLeft, cursorLineBoundaryRight, cursorLineDown, cursorLineEnd, cursorLineStart, cursorLineUp, cursorMatchingBracket, cursorPageDown, cursorPageUp, cursorSubwordBackward, cursorSubwordForward, cursorSyntaxLeft, cursorSyntaxRight, defaultKeymap, deleteCharBackward, deleteCharBackwardStrict, deleteCharForward, deleteGroupBackward, deleteGroupForward, deleteGroupForwardWin, deleteLine, deleteLineBoundaryBackward, deleteLineBoundaryForward, deleteToLineEnd, deleteToLineStart, deleteTrailingWhitespace, emacsStyleKeymap, history, historyField, historyKeymap, indentLess, indentMore, indentSelection, indentWithTab, insertBlankLine, insertNewline, insertNewlineAndIndent, insertNewlineKeepIndent, insertTab, invertedEffects, isolateHistory, lineComment, lineUncomment, moveLineDown, moveLineUp, redo, redoDepth, redoSelection, selectAll, selectCharBackward, selectCharBackwardLogical, selectCharForward, selectCharForwardLogical, selectCharLeft, selectCharRight, selectDocEnd, selectDocStart, selectGroupBackward, selectGroupForward, selectGroupForwardWin, selectGroupLeft, selectGroupRight, selectLine, selectLineBoundaryBackward, selectLineBoundaryForward, selectLineBoundaryLeft, selectLineBoundaryRight, selectLineDown, selectLineEnd, selectLineStart, selectLineUp, selectMatchingBracket, selectPageDown, selectPageUp, selectParentSyntax, selectSubwordBackward, selectSubwordForward, selectSyntaxLeft, selectSyntaxRight, simplifySelection, splitLine, standardKeymap, temporarilySetTabFocusMode, toggleBlockComment, toggleBlockCommentByLine, toggleComment, toggleLineComment, toggleTabFocusMode, transposeChars, undo, undoDepth, undoSelection };\n", "import { showPanel, EditorView, getPanel, Decoration, ViewPlugin, runScopeHandlers } from '@codemirror/view';\nimport { codePointAt, fromCodePoint, codePointSize, StateEffect, StateField, EditorSelection, Facet, combineConfig, CharCategory, RangeSetBuilder, Prec, EditorState, findClusterBreak } from '@codemirror/state';\nimport elt from 'crelt';\n\nconst basicNormalize = typeof String.prototype.normalize == \"function\"\n ? x => x.normalize(\"NFKD\") : x => x;\n/**\nA search cursor provides an iterator over text matches in a\ndocument.\n*/\nclass SearchCursor {\n /**\n Create a text cursor. The query is the search string, `from` to\n `to` provides the region to search.\n \n When `normalize` is given, it will be called, on both the query\n string and the content it is matched against, before comparing.\n You can, for example, create a case-insensitive search by\n passing `s => s.toLowerCase()`.\n \n Text is always normalized with\n [`.normalize(\"NFKD\")`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/normalize)\n (when supported).\n */\n constructor(text, query, from = 0, to = text.length, normalize, test) {\n this.test = test;\n /**\n The current match (only holds a meaningful value after\n [`next`](https://codemirror.net/6/docs/ref/#search.SearchCursor.next) has been called and when\n `done` is false).\n */\n this.value = { from: 0, to: 0 };\n /**\n Whether the end of the iterated region has been reached.\n */\n this.done = false;\n this.matches = [];\n this.buffer = \"\";\n this.bufferPos = 0;\n this.iter = text.iterRange(from, to);\n this.bufferStart = from;\n this.normalize = normalize ? x => normalize(basicNormalize(x)) : basicNormalize;\n this.query = this.normalize(query);\n }\n peek() {\n if (this.bufferPos == this.buffer.length) {\n this.bufferStart += this.buffer.length;\n this.iter.next();\n if (this.iter.done)\n return -1;\n this.bufferPos = 0;\n this.buffer = this.iter.value;\n }\n return codePointAt(this.buffer, this.bufferPos);\n }\n /**\n Look for the next match. Updates the iterator's\n [`value`](https://codemirror.net/6/docs/ref/#search.SearchCursor.value) and\n [`done`](https://codemirror.net/6/docs/ref/#search.SearchCursor.done) properties. Should be called\n at least once before using the cursor.\n */\n next() {\n while (this.matches.length)\n this.matches.pop();\n return this.nextOverlapping();\n }\n /**\n The `next` method will ignore matches that partially overlap a\n previous match. This method behaves like `next`, but includes\n such matches.\n */\n nextOverlapping() {\n for (;;) {\n let next = this.peek();\n if (next < 0) {\n this.done = true;\n return this;\n }\n let str = fromCodePoint(next), start = this.bufferStart + this.bufferPos;\n this.bufferPos += codePointSize(next);\n let norm = this.normalize(str);\n if (norm.length)\n for (let i = 0, pos = start;; i++) {\n let code = norm.charCodeAt(i);\n let match = this.match(code, pos, this.bufferPos + this.bufferStart);\n if (i == norm.length - 1) {\n if (match) {\n this.value = match;\n return this;\n }\n break;\n }\n if (pos == start && i < str.length && str.charCodeAt(i) == code)\n pos++;\n }\n }\n }\n match(code, pos, end) {\n let match = null;\n for (let i = 0; i < this.matches.length; i += 2) {\n let index = this.matches[i], keep = false;\n if (this.query.charCodeAt(index) == code) {\n if (index == this.query.length - 1) {\n match = { from: this.matches[i + 1], to: end };\n }\n else {\n this.matches[i]++;\n keep = true;\n }\n }\n if (!keep) {\n this.matches.splice(i, 2);\n i -= 2;\n }\n }\n if (this.query.charCodeAt(0) == code) {\n if (this.query.length == 1)\n match = { from: pos, to: end };\n else\n this.matches.push(1, pos);\n }\n if (match && this.test && !this.test(match.from, match.to, this.buffer, this.bufferStart))\n match = null;\n return match;\n }\n}\nif (typeof Symbol != \"undefined\")\n SearchCursor.prototype[Symbol.iterator] = function () { return this; };\n\nconst empty = { from: -1, to: -1, match: /*@__PURE__*//.*/.exec(\"\") };\nconst baseFlags = \"gm\" + (/x/.unicode == null ? \"\" : \"u\");\n/**\nThis class is similar to [`SearchCursor`](https://codemirror.net/6/docs/ref/#search.SearchCursor)\nbut searches for a regular expression pattern instead of a plain\nstring.\n*/\nclass RegExpCursor {\n /**\n Create a cursor that will search the given range in the given\n document. `query` should be the raw pattern (as you'd pass it to\n `new RegExp`).\n */\n constructor(text, query, options, from = 0, to = text.length) {\n this.text = text;\n this.to = to;\n this.curLine = \"\";\n /**\n Set to `true` when the cursor has reached the end of the search\n range.\n */\n this.done = false;\n /**\n Will contain an object with the extent of the match and the\n match object when [`next`](https://codemirror.net/6/docs/ref/#search.RegExpCursor.next)\n sucessfully finds a match.\n */\n this.value = empty;\n if (/\\\\[sWDnr]|\\n|\\r|\\[\\^/.test(query))\n return new MultilineRegExpCursor(text, query, options, from, to);\n this.re = new RegExp(query, baseFlags + ((options === null || options === void 0 ? void 0 : options.ignoreCase) ? \"i\" : \"\"));\n this.test = options === null || options === void 0 ? void 0 : options.test;\n this.iter = text.iter();\n let startLine = text.lineAt(from);\n this.curLineStart = startLine.from;\n this.matchPos = toCharEnd(text, from);\n this.getLine(this.curLineStart);\n }\n getLine(skip) {\n this.iter.next(skip);\n if (this.iter.lineBreak) {\n this.curLine = \"\";\n }\n else {\n this.curLine = this.iter.value;\n if (this.curLineStart + this.curLine.length > this.to)\n this.curLine = this.curLine.slice(0, this.to - this.curLineStart);\n this.iter.next();\n }\n }\n nextLine() {\n this.curLineStart = this.curLineStart + this.curLine.length + 1;\n if (this.curLineStart > this.to)\n this.curLine = \"\";\n else\n this.getLine(0);\n }\n /**\n Move to the next match, if there is one.\n */\n next() {\n for (let off = this.matchPos - this.curLineStart;;) {\n this.re.lastIndex = off;\n let match = this.matchPos <= this.to && this.re.exec(this.curLine);\n if (match) {\n let from = this.curLineStart + match.index, to = from + match[0].length;\n this.matchPos = toCharEnd(this.text, to + (from == to ? 1 : 0));\n if (from == this.curLineStart + this.curLine.length)\n this.nextLine();\n if ((from < to || from > this.value.to) && (!this.test || this.test(from, to, match))) {\n this.value = { from, to, match };\n return this;\n }\n off = this.matchPos - this.curLineStart;\n }\n else if (this.curLineStart + this.curLine.length < this.to) {\n this.nextLine();\n off = 0;\n }\n else {\n this.done = true;\n return this;\n }\n }\n }\n}\nconst flattened = /*@__PURE__*/new WeakMap();\n// Reusable (partially) flattened document strings\nclass FlattenedDoc {\n constructor(from, text) {\n this.from = from;\n this.text = text;\n }\n get to() { return this.from + this.text.length; }\n static get(doc, from, to) {\n let cached = flattened.get(doc);\n if (!cached || cached.from >= to || cached.to <= from) {\n let flat = new FlattenedDoc(from, doc.sliceString(from, to));\n flattened.set(doc, flat);\n return flat;\n }\n if (cached.from == from && cached.to == to)\n return cached;\n let { text, from: cachedFrom } = cached;\n if (cachedFrom > from) {\n text = doc.sliceString(from, cachedFrom) + text;\n cachedFrom = from;\n }\n if (cached.to < to)\n text += doc.sliceString(cached.to, to);\n flattened.set(doc, new FlattenedDoc(cachedFrom, text));\n return new FlattenedDoc(from, text.slice(from - cachedFrom, to - cachedFrom));\n }\n}\nclass MultilineRegExpCursor {\n constructor(text, query, options, from, to) {\n this.text = text;\n this.to = to;\n this.done = false;\n this.value = empty;\n this.matchPos = toCharEnd(text, from);\n this.re = new RegExp(query, baseFlags + ((options === null || options === void 0 ? void 0 : options.ignoreCase) ? \"i\" : \"\"));\n this.test = options === null || options === void 0 ? void 0 : options.test;\n this.flat = FlattenedDoc.get(text, from, this.chunkEnd(from + 5000 /* Chunk.Base */));\n }\n chunkEnd(pos) {\n return pos >= this.to ? this.to : this.text.lineAt(pos).to;\n }\n next() {\n for (;;) {\n let off = this.re.lastIndex = this.matchPos - this.flat.from;\n let match = this.re.exec(this.flat.text);\n // Skip empty matches directly after the last match\n if (match && !match[0] && match.index == off) {\n this.re.lastIndex = off + 1;\n match = this.re.exec(this.flat.text);\n }\n if (match) {\n let from = this.flat.from + match.index, to = from + match[0].length;\n // If a match goes almost to the end of a noncomplete chunk, try\n // again, since it'll likely be able to match more\n if ((this.flat.to >= this.to || match.index + match[0].length <= this.flat.text.length - 10) &&\n (!this.test || this.test(from, to, match))) {\n this.value = { from, to, match };\n this.matchPos = toCharEnd(this.text, to + (from == to ? 1 : 0));\n return this;\n }\n }\n if (this.flat.to == this.to) {\n this.done = true;\n return this;\n }\n // Grow the flattened doc\n this.flat = FlattenedDoc.get(this.text, this.flat.from, this.chunkEnd(this.flat.from + this.flat.text.length * 2));\n }\n }\n}\nif (typeof Symbol != \"undefined\") {\n RegExpCursor.prototype[Symbol.iterator] = MultilineRegExpCursor.prototype[Symbol.iterator] =\n function () { return this; };\n}\nfunction validRegExp(source) {\n try {\n new RegExp(source, baseFlags);\n return true;\n }\n catch (_a) {\n return false;\n }\n}\nfunction toCharEnd(text, pos) {\n if (pos >= text.length)\n return pos;\n let line = text.lineAt(pos), next;\n while (pos < line.to && (next = line.text.charCodeAt(pos - line.from)) >= 0xDC00 && next < 0xE000)\n pos++;\n return pos;\n}\n\nfunction createLineDialog(view) {\n let line = String(view.state.doc.lineAt(view.state.selection.main.head).number);\n let input = elt(\"input\", { class: \"cm-textfield\", name: \"line\", value: line });\n let dom = elt(\"form\", {\n class: \"cm-gotoLine\",\n onkeydown: (event) => {\n if (event.keyCode == 27) { // Escape\n event.preventDefault();\n view.dispatch({ effects: dialogEffect.of(false) });\n view.focus();\n }\n else if (event.keyCode == 13) { // Enter\n event.preventDefault();\n go();\n }\n },\n onsubmit: (event) => {\n event.preventDefault();\n go();\n }\n }, elt(\"label\", view.state.phrase(\"Go to line\"), \": \", input), \" \", elt(\"button\", { class: \"cm-button\", type: \"submit\" }, view.state.phrase(\"go\")), elt(\"button\", {\n name: \"close\",\n onclick: () => {\n view.dispatch({ effects: dialogEffect.of(false) });\n view.focus();\n },\n \"aria-label\": view.state.phrase(\"close\"),\n type: \"button\"\n }, [\"\u00D7\"]));\n function go() {\n let match = /^([+-])?(\\d+)?(:\\d+)?(%)?$/.exec(input.value);\n if (!match)\n return;\n let { state } = view, startLine = state.doc.lineAt(state.selection.main.head);\n let [, sign, ln, cl, percent] = match;\n let col = cl ? +cl.slice(1) : 0;\n let line = ln ? +ln : startLine.number;\n if (ln && percent) {\n let pc = line / 100;\n if (sign)\n pc = pc * (sign == \"-\" ? -1 : 1) + (startLine.number / state.doc.lines);\n line = Math.round(state.doc.lines * pc);\n }\n else if (ln && sign) {\n line = line * (sign == \"-\" ? -1 : 1) + startLine.number;\n }\n let docLine = state.doc.line(Math.max(1, Math.min(state.doc.lines, line)));\n let selection = EditorSelection.cursor(docLine.from + Math.max(0, Math.min(col, docLine.length)));\n view.dispatch({\n effects: [dialogEffect.of(false), EditorView.scrollIntoView(selection.from, { y: 'center' })],\n selection,\n });\n view.focus();\n }\n return { dom };\n}\nconst dialogEffect = /*@__PURE__*/StateEffect.define();\nconst dialogField = /*@__PURE__*/StateField.define({\n create() { return true; },\n update(value, tr) {\n for (let e of tr.effects)\n if (e.is(dialogEffect))\n value = e.value;\n return value;\n },\n provide: f => showPanel.from(f, val => val ? createLineDialog : null)\n});\n/**\nCommand that shows a dialog asking the user for a line number, and\nwhen a valid position is provided, moves the cursor to that line.\n\nSupports line numbers, relative line offsets prefixed with `+` or\n`-`, document percentages suffixed with `%`, and an optional\ncolumn position by adding `:` and a second number after the line\nnumber.\n*/\nconst gotoLine = view => {\n let panel = getPanel(view, createLineDialog);\n if (!panel) {\n let effects = [dialogEffect.of(true)];\n if (view.state.field(dialogField, false) == null)\n effects.push(StateEffect.appendConfig.of([dialogField, baseTheme$1]));\n view.dispatch({ effects });\n panel = getPanel(view, createLineDialog);\n }\n if (panel)\n panel.dom.querySelector(\"input\").select();\n return true;\n};\nconst baseTheme$1 = /*@__PURE__*/EditorView.baseTheme({\n \".cm-panel.cm-gotoLine\": {\n padding: \"2px 6px 4px\",\n position: \"relative\",\n \"& label\": { fontSize: \"80%\" },\n \"& [name=close]\": {\n position: \"absolute\",\n top: \"0\", bottom: \"0\",\n right: \"4px\",\n backgroundColor: \"inherit\",\n border: \"none\",\n font: \"inherit\",\n padding: \"0\"\n }\n }\n});\n\nconst defaultHighlightOptions = {\n highlightWordAroundCursor: false,\n minSelectionLength: 1,\n maxMatches: 100,\n wholeWords: false\n};\nconst highlightConfig = /*@__PURE__*/Facet.define({\n combine(options) {\n return combineConfig(options, defaultHighlightOptions, {\n highlightWordAroundCursor: (a, b) => a || b,\n minSelectionLength: Math.min,\n maxMatches: Math.min\n });\n }\n});\n/**\nThis extension highlights text that matches the selection. It uses\nthe `\"cm-selectionMatch\"` class for the highlighting. When\n`highlightWordAroundCursor` is enabled, the word at the cursor\nitself will be highlighted with `\"cm-selectionMatch-main\"`.\n*/\nfunction highlightSelectionMatches(options) {\n let ext = [defaultTheme, matchHighlighter];\n if (options)\n ext.push(highlightConfig.of(options));\n return ext;\n}\nconst matchDeco = /*@__PURE__*/Decoration.mark({ class: \"cm-selectionMatch\" });\nconst mainMatchDeco = /*@__PURE__*/Decoration.mark({ class: \"cm-selectionMatch cm-selectionMatch-main\" });\n// Whether the characters directly outside the given positions are non-word characters\nfunction insideWordBoundaries(check, state, from, to) {\n return (from == 0 || check(state.sliceDoc(from - 1, from)) != CharCategory.Word) &&\n (to == state.doc.length || check(state.sliceDoc(to, to + 1)) != CharCategory.Word);\n}\n// Whether the characters directly at the given positions are word characters\nfunction insideWord(check, state, from, to) {\n return check(state.sliceDoc(from, from + 1)) == CharCategory.Word\n && check(state.sliceDoc(to - 1, to)) == CharCategory.Word;\n}\nconst matchHighlighter = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.decorations = this.getDeco(view);\n }\n update(update) {\n if (update.selectionSet || update.docChanged || update.viewportChanged)\n this.decorations = this.getDeco(update.view);\n }\n getDeco(view) {\n let conf = view.state.facet(highlightConfig);\n let { state } = view, sel = state.selection;\n if (sel.ranges.length > 1)\n return Decoration.none;\n let range = sel.main, query, check = null;\n if (range.empty) {\n if (!conf.highlightWordAroundCursor)\n return Decoration.none;\n let word = state.wordAt(range.head);\n if (!word)\n return Decoration.none;\n check = state.charCategorizer(range.head);\n query = state.sliceDoc(word.from, word.to);\n }\n else {\n let len = range.to - range.from;\n if (len < conf.minSelectionLength || len > 200)\n return Decoration.none;\n if (conf.wholeWords) {\n query = state.sliceDoc(range.from, range.to); // TODO: allow and include leading/trailing space?\n check = state.charCategorizer(range.head);\n if (!(insideWordBoundaries(check, state, range.from, range.to) &&\n insideWord(check, state, range.from, range.to)))\n return Decoration.none;\n }\n else {\n query = state.sliceDoc(range.from, range.to);\n if (!query)\n return Decoration.none;\n }\n }\n let deco = [];\n for (let part of view.visibleRanges) {\n let cursor = new SearchCursor(state.doc, query, part.from, part.to);\n while (!cursor.next().done) {\n let { from, to } = cursor.value;\n if (!check || insideWordBoundaries(check, state, from, to)) {\n if (range.empty && from <= range.from && to >= range.to)\n deco.push(mainMatchDeco.range(from, to));\n else if (from >= range.to || to <= range.from)\n deco.push(matchDeco.range(from, to));\n if (deco.length > conf.maxMatches)\n return Decoration.none;\n }\n }\n }\n return Decoration.set(deco);\n }\n}, {\n decorations: v => v.decorations\n});\nconst defaultTheme = /*@__PURE__*/EditorView.baseTheme({\n \".cm-selectionMatch\": { backgroundColor: \"#99ff7780\" },\n \".cm-searchMatch .cm-selectionMatch\": { backgroundColor: \"transparent\" }\n});\n// Select the words around the cursors.\nconst selectWord = ({ state, dispatch }) => {\n let { selection } = state;\n let newSel = EditorSelection.create(selection.ranges.map(range => state.wordAt(range.head) || EditorSelection.cursor(range.head)), selection.mainIndex);\n if (newSel.eq(selection))\n return false;\n dispatch(state.update({ selection: newSel }));\n return true;\n};\n// Find next occurrence of query relative to last cursor. Wrap around\n// the document if there are no more matches.\nfunction findNextOccurrence(state, query) {\n let { main, ranges } = state.selection;\n let word = state.wordAt(main.head), fullWord = word && word.from == main.from && word.to == main.to;\n for (let cycled = false, cursor = new SearchCursor(state.doc, query, ranges[ranges.length - 1].to);;) {\n cursor.next();\n if (cursor.done) {\n if (cycled)\n return null;\n cursor = new SearchCursor(state.doc, query, 0, Math.max(0, ranges[ranges.length - 1].from - 1));\n cycled = true;\n }\n else {\n if (cycled && ranges.some(r => r.from == cursor.value.from))\n continue;\n if (fullWord) {\n let word = state.wordAt(cursor.value.from);\n if (!word || word.from != cursor.value.from || word.to != cursor.value.to)\n continue;\n }\n return cursor.value;\n }\n }\n}\n/**\nSelect next occurrence of the current selection. Expand selection\nto the surrounding word when the selection is empty.\n*/\nconst selectNextOccurrence = ({ state, dispatch }) => {\n let { ranges } = state.selection;\n if (ranges.some(sel => sel.from === sel.to))\n return selectWord({ state, dispatch });\n let searchedText = state.sliceDoc(ranges[0].from, ranges[0].to);\n if (state.selection.ranges.some(r => state.sliceDoc(r.from, r.to) != searchedText))\n return false;\n let range = findNextOccurrence(state, searchedText);\n if (!range)\n return false;\n dispatch(state.update({\n selection: state.selection.addRange(EditorSelection.range(range.from, range.to), false),\n effects: EditorView.scrollIntoView(range.to)\n }));\n return true;\n};\n\nconst searchConfigFacet = /*@__PURE__*/Facet.define({\n combine(configs) {\n return combineConfig(configs, {\n top: false,\n caseSensitive: false,\n literal: false,\n regexp: false,\n wholeWord: false,\n createPanel: view => new SearchPanel(view),\n scrollToMatch: range => EditorView.scrollIntoView(range)\n });\n }\n});\n/**\nAdd search state to the editor configuration, and optionally\nconfigure the search extension.\n([`openSearchPanel`](https://codemirror.net/6/docs/ref/#search.openSearchPanel) will automatically\nenable this if it isn't already on).\n*/\nfunction search(config) {\n return config ? [searchConfigFacet.of(config), searchExtensions] : searchExtensions;\n}\n/**\nA search query. Part of the editor's search state.\n*/\nclass SearchQuery {\n /**\n Create a query object.\n */\n constructor(config) {\n this.search = config.search;\n this.caseSensitive = !!config.caseSensitive;\n this.literal = !!config.literal;\n this.regexp = !!config.regexp;\n this.replace = config.replace || \"\";\n this.valid = !!this.search && (!this.regexp || validRegExp(this.search));\n this.unquoted = this.unquote(this.search);\n this.wholeWord = !!config.wholeWord;\n }\n /**\n @internal\n */\n unquote(text) {\n return this.literal ? text :\n text.replace(/\\\\([nrt\\\\])/g, (_, ch) => ch == \"n\" ? \"\\n\" : ch == \"r\" ? \"\\r\" : ch == \"t\" ? \"\\t\" : \"\\\\\");\n }\n /**\n Compare this query to another query.\n */\n eq(other) {\n return this.search == other.search && this.replace == other.replace &&\n this.caseSensitive == other.caseSensitive && this.regexp == other.regexp &&\n this.wholeWord == other.wholeWord;\n }\n /**\n @internal\n */\n create() {\n return this.regexp ? new RegExpQuery(this) : new StringQuery(this);\n }\n /**\n Get a search cursor for this query, searching through the given\n range in the given state.\n */\n getCursor(state, from = 0, to) {\n let st = state.doc ? state : EditorState.create({ doc: state });\n if (to == null)\n to = st.doc.length;\n return this.regexp ? regexpCursor(this, st, from, to) : stringCursor(this, st, from, to);\n }\n}\nclass QueryType {\n constructor(spec) {\n this.spec = spec;\n }\n}\nfunction stringCursor(spec, state, from, to) {\n return new SearchCursor(state.doc, spec.unquoted, from, to, spec.caseSensitive ? undefined : x => x.toLowerCase(), spec.wholeWord ? stringWordTest(state.doc, state.charCategorizer(state.selection.main.head)) : undefined);\n}\nfunction stringWordTest(doc, categorizer) {\n return (from, to, buf, bufPos) => {\n if (bufPos > from || bufPos + buf.length < to) {\n bufPos = Math.max(0, from - 2);\n buf = doc.sliceString(bufPos, Math.min(doc.length, to + 2));\n }\n return (categorizer(charBefore(buf, from - bufPos)) != CharCategory.Word ||\n categorizer(charAfter(buf, from - bufPos)) != CharCategory.Word) &&\n (categorizer(charAfter(buf, to - bufPos)) != CharCategory.Word ||\n categorizer(charBefore(buf, to - bufPos)) != CharCategory.Word);\n };\n}\nclass StringQuery extends QueryType {\n constructor(spec) {\n super(spec);\n }\n nextMatch(state, curFrom, curTo) {\n let cursor = stringCursor(this.spec, state, curTo, state.doc.length).nextOverlapping();\n if (cursor.done) {\n let end = Math.min(state.doc.length, curFrom + this.spec.unquoted.length);\n cursor = stringCursor(this.spec, state, 0, end).nextOverlapping();\n }\n return cursor.done || cursor.value.from == curFrom && cursor.value.to == curTo ? null : cursor.value;\n }\n // Searching in reverse is, rather than implementing an inverted search\n // cursor, done by scanning chunk after chunk forward.\n prevMatchInRange(state, from, to) {\n for (let pos = to;;) {\n let start = Math.max(from, pos - 10000 /* FindPrev.ChunkSize */ - this.spec.unquoted.length);\n let cursor = stringCursor(this.spec, state, start, pos), range = null;\n while (!cursor.nextOverlapping().done)\n range = cursor.value;\n if (range)\n return range;\n if (start == from)\n return null;\n pos -= 10000 /* FindPrev.ChunkSize */;\n }\n }\n prevMatch(state, curFrom, curTo) {\n let found = this.prevMatchInRange(state, 0, curFrom);\n if (!found)\n found = this.prevMatchInRange(state, Math.max(0, curTo - this.spec.unquoted.length), state.doc.length);\n return found && (found.from != curFrom || found.to != curTo) ? found : null;\n }\n getReplacement(_result) { return this.spec.unquote(this.spec.replace); }\n matchAll(state, limit) {\n let cursor = stringCursor(this.spec, state, 0, state.doc.length), ranges = [];\n while (!cursor.next().done) {\n if (ranges.length >= limit)\n return null;\n ranges.push(cursor.value);\n }\n return ranges;\n }\n highlight(state, from, to, add) {\n let cursor = stringCursor(this.spec, state, Math.max(0, from - this.spec.unquoted.length), Math.min(to + this.spec.unquoted.length, state.doc.length));\n while (!cursor.next().done)\n add(cursor.value.from, cursor.value.to);\n }\n}\nfunction regexpCursor(spec, state, from, to) {\n return new RegExpCursor(state.doc, spec.search, {\n ignoreCase: !spec.caseSensitive,\n test: spec.wholeWord ? regexpWordTest(state.charCategorizer(state.selection.main.head)) : undefined\n }, from, to);\n}\nfunction charBefore(str, index) {\n return str.slice(findClusterBreak(str, index, false), index);\n}\nfunction charAfter(str, index) {\n return str.slice(index, findClusterBreak(str, index));\n}\nfunction regexpWordTest(categorizer) {\n return (_from, _to, match) => !match[0].length ||\n (categorizer(charBefore(match.input, match.index)) != CharCategory.Word ||\n categorizer(charAfter(match.input, match.index)) != CharCategory.Word) &&\n (categorizer(charAfter(match.input, match.index + match[0].length)) != CharCategory.Word ||\n categorizer(charBefore(match.input, match.index + match[0].length)) != CharCategory.Word);\n}\nclass RegExpQuery extends QueryType {\n nextMatch(state, curFrom, curTo) {\n let cursor = regexpCursor(this.spec, state, curTo, state.doc.length).next();\n if (cursor.done)\n cursor = regexpCursor(this.spec, state, 0, curFrom).next();\n return cursor.done ? null : cursor.value;\n }\n prevMatchInRange(state, from, to) {\n for (let size = 1;; size++) {\n let start = Math.max(from, to - size * 10000 /* FindPrev.ChunkSize */);\n let cursor = regexpCursor(this.spec, state, start, to), range = null;\n while (!cursor.next().done)\n range = cursor.value;\n if (range && (start == from || range.from > start + 10))\n return range;\n if (start == from)\n return null;\n }\n }\n prevMatch(state, curFrom, curTo) {\n return this.prevMatchInRange(state, 0, curFrom) ||\n this.prevMatchInRange(state, curTo, state.doc.length);\n }\n getReplacement(result) {\n return this.spec.unquote(this.spec.replace).replace(/\\$([$&]|\\d+)/g, (m, i) => {\n if (i == \"&\")\n return result.match[0];\n if (i == \"$\")\n return \"$\";\n for (let l = i.length; l > 0; l--) {\n let n = +i.slice(0, l);\n if (n > 0 && n < result.match.length)\n return result.match[n] + i.slice(l);\n }\n return m;\n });\n }\n matchAll(state, limit) {\n let cursor = regexpCursor(this.spec, state, 0, state.doc.length), ranges = [];\n while (!cursor.next().done) {\n if (ranges.length >= limit)\n return null;\n ranges.push(cursor.value);\n }\n return ranges;\n }\n highlight(state, from, to, add) {\n let cursor = regexpCursor(this.spec, state, Math.max(0, from - 250 /* RegExp.HighlightMargin */), Math.min(to + 250 /* RegExp.HighlightMargin */, state.doc.length));\n while (!cursor.next().done)\n add(cursor.value.from, cursor.value.to);\n }\n}\n/**\nA state effect that updates the current search query. Note that\nthis only has an effect if the search state has been initialized\n(by including [`search`](https://codemirror.net/6/docs/ref/#search.search) in your configuration or\nby running [`openSearchPanel`](https://codemirror.net/6/docs/ref/#search.openSearchPanel) at least\nonce).\n*/\nconst setSearchQuery = /*@__PURE__*/StateEffect.define();\nconst togglePanel = /*@__PURE__*/StateEffect.define();\nconst searchState = /*@__PURE__*/StateField.define({\n create(state) {\n return new SearchState(defaultQuery(state).create(), null);\n },\n update(value, tr) {\n for (let effect of tr.effects) {\n if (effect.is(setSearchQuery))\n value = new SearchState(effect.value.create(), value.panel);\n else if (effect.is(togglePanel))\n value = new SearchState(value.query, effect.value ? createSearchPanel : null);\n }\n return value;\n },\n provide: f => showPanel.from(f, val => val.panel)\n});\n/**\nGet the current search query from an editor state.\n*/\nfunction getSearchQuery(state) {\n let curState = state.field(searchState, false);\n return curState ? curState.query.spec : defaultQuery(state);\n}\n/**\nQuery whether the search panel is open in the given editor state.\n*/\nfunction searchPanelOpen(state) {\n var _a;\n return ((_a = state.field(searchState, false)) === null || _a === void 0 ? void 0 : _a.panel) != null;\n}\nclass SearchState {\n constructor(query, panel) {\n this.query = query;\n this.panel = panel;\n }\n}\nconst matchMark = /*@__PURE__*/Decoration.mark({ class: \"cm-searchMatch\" }), selectedMatchMark = /*@__PURE__*/Decoration.mark({ class: \"cm-searchMatch cm-searchMatch-selected\" });\nconst searchHighlighter = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.view = view;\n this.decorations = this.highlight(view.state.field(searchState));\n }\n update(update) {\n let state = update.state.field(searchState);\n if (state != update.startState.field(searchState) || update.docChanged || update.selectionSet || update.viewportChanged)\n this.decorations = this.highlight(state);\n }\n highlight({ query, panel }) {\n if (!panel || !query.spec.valid)\n return Decoration.none;\n let { view } = this;\n let builder = new RangeSetBuilder();\n for (let i = 0, ranges = view.visibleRanges, l = ranges.length; i < l; i++) {\n let { from, to } = ranges[i];\n while (i < l - 1 && to > ranges[i + 1].from - 2 * 250 /* RegExp.HighlightMargin */)\n to = ranges[++i].to;\n query.highlight(view.state, from, to, (from, to) => {\n let selected = view.state.selection.ranges.some(r => r.from == from && r.to == to);\n builder.add(from, to, selected ? selectedMatchMark : matchMark);\n });\n }\n return builder.finish();\n }\n}, {\n decorations: v => v.decorations\n});\nfunction searchCommand(f) {\n return view => {\n let state = view.state.field(searchState, false);\n return state && state.query.spec.valid ? f(view, state) : openSearchPanel(view);\n };\n}\n/**\nOpen the search panel if it isn't already open, and move the\nselection to the first match after the current main selection.\nWill wrap around to the start of the document when it reaches the\nend.\n*/\nconst findNext = /*@__PURE__*/searchCommand((view, { query }) => {\n let { to } = view.state.selection.main;\n let next = query.nextMatch(view.state, to, to);\n if (!next)\n return false;\n let selection = EditorSelection.single(next.from, next.to);\n let config = view.state.facet(searchConfigFacet);\n view.dispatch({\n selection,\n effects: [announceMatch(view, next), config.scrollToMatch(selection.main, view)],\n userEvent: \"select.search\"\n });\n selectSearchInput(view);\n return true;\n});\n/**\nMove the selection to the previous instance of the search query,\nbefore the current main selection. Will wrap past the start\nof the document to start searching at the end again.\n*/\nconst findPrevious = /*@__PURE__*/searchCommand((view, { query }) => {\n let { state } = view, { from } = state.selection.main;\n let prev = query.prevMatch(state, from, from);\n if (!prev)\n return false;\n let selection = EditorSelection.single(prev.from, prev.to);\n let config = view.state.facet(searchConfigFacet);\n view.dispatch({\n selection,\n effects: [announceMatch(view, prev), config.scrollToMatch(selection.main, view)],\n userEvent: \"select.search\"\n });\n selectSearchInput(view);\n return true;\n});\n/**\nSelect all instances of the search query.\n*/\nconst selectMatches = /*@__PURE__*/searchCommand((view, { query }) => {\n let ranges = query.matchAll(view.state, 1000);\n if (!ranges || !ranges.length)\n return false;\n view.dispatch({\n selection: EditorSelection.create(ranges.map(r => EditorSelection.range(r.from, r.to))),\n userEvent: \"select.search.matches\"\n });\n return true;\n});\n/**\nSelect all instances of the currently selected text.\n*/\nconst selectSelectionMatches = ({ state, dispatch }) => {\n let sel = state.selection;\n if (sel.ranges.length > 1 || sel.main.empty)\n return false;\n let { from, to } = sel.main;\n let ranges = [], main = 0;\n for (let cur = new SearchCursor(state.doc, state.sliceDoc(from, to)); !cur.next().done;) {\n if (ranges.length > 1000)\n return false;\n if (cur.value.from == from)\n main = ranges.length;\n ranges.push(EditorSelection.range(cur.value.from, cur.value.to));\n }\n dispatch(state.update({\n selection: EditorSelection.create(ranges, main),\n userEvent: \"select.search.matches\"\n }));\n return true;\n};\n/**\nReplace the current match of the search query.\n*/\nconst replaceNext = /*@__PURE__*/searchCommand((view, { query }) => {\n let { state } = view, { from, to } = state.selection.main;\n if (state.readOnly)\n return false;\n let match = query.nextMatch(state, from, from);\n if (!match)\n return false;\n let next = match;\n let changes = [], selection, replacement;\n let effects = [];\n if (next.from == from && next.to == to) {\n replacement = state.toText(query.getReplacement(next));\n changes.push({ from: next.from, to: next.to, insert: replacement });\n next = query.nextMatch(state, next.from, next.to);\n effects.push(EditorView.announce.of(state.phrase(\"replaced match on line $\", state.doc.lineAt(from).number) + \".\"));\n }\n let changeSet = view.state.changes(changes);\n if (next) {\n selection = EditorSelection.single(next.from, next.to).map(changeSet);\n effects.push(announceMatch(view, next));\n effects.push(state.facet(searchConfigFacet).scrollToMatch(selection.main, view));\n }\n view.dispatch({\n changes: changeSet,\n selection,\n effects,\n userEvent: \"input.replace\"\n });\n return true;\n});\n/**\nReplace all instances of the search query with the given\nreplacement.\n*/\nconst replaceAll = /*@__PURE__*/searchCommand((view, { query }) => {\n if (view.state.readOnly)\n return false;\n let changes = query.matchAll(view.state, 1e9).map(match => {\n let { from, to } = match;\n return { from, to, insert: query.getReplacement(match) };\n });\n if (!changes.length)\n return false;\n let announceText = view.state.phrase(\"replaced $ matches\", changes.length) + \".\";\n view.dispatch({\n changes,\n effects: EditorView.announce.of(announceText),\n userEvent: \"input.replace.all\"\n });\n return true;\n});\nfunction createSearchPanel(view) {\n return view.state.facet(searchConfigFacet).createPanel(view);\n}\nfunction defaultQuery(state, fallback) {\n var _a, _b, _c, _d, _e;\n let sel = state.selection.main;\n let selText = sel.empty || sel.to > sel.from + 100 ? \"\" : state.sliceDoc(sel.from, sel.to);\n if (fallback && !selText)\n return fallback;\n let config = state.facet(searchConfigFacet);\n return new SearchQuery({\n search: ((_a = fallback === null || fallback === void 0 ? void 0 : fallback.literal) !== null && _a !== void 0 ? _a : config.literal) ? selText : selText.replace(/\\n/g, \"\\\\n\"),\n caseSensitive: (_b = fallback === null || fallback === void 0 ? void 0 : fallback.caseSensitive) !== null && _b !== void 0 ? _b : config.caseSensitive,\n literal: (_c = fallback === null || fallback === void 0 ? void 0 : fallback.literal) !== null && _c !== void 0 ? _c : config.literal,\n regexp: (_d = fallback === null || fallback === void 0 ? void 0 : fallback.regexp) !== null && _d !== void 0 ? _d : config.regexp,\n wholeWord: (_e = fallback === null || fallback === void 0 ? void 0 : fallback.wholeWord) !== null && _e !== void 0 ? _e : config.wholeWord\n });\n}\nfunction getSearchInput(view) {\n let panel = getPanel(view, createSearchPanel);\n return panel && panel.dom.querySelector(\"[main-field]\");\n}\nfunction selectSearchInput(view) {\n let input = getSearchInput(view);\n if (input && input == view.root.activeElement)\n input.select();\n}\n/**\nMake sure the search panel is open and focused.\n*/\nconst openSearchPanel = view => {\n let state = view.state.field(searchState, false);\n if (state && state.panel) {\n let searchInput = getSearchInput(view);\n if (searchInput && searchInput != view.root.activeElement) {\n let query = defaultQuery(view.state, state.query.spec);\n if (query.valid)\n view.dispatch({ effects: setSearchQuery.of(query) });\n searchInput.focus();\n searchInput.select();\n }\n }\n else {\n view.dispatch({ effects: [\n togglePanel.of(true),\n state ? setSearchQuery.of(defaultQuery(view.state, state.query.spec)) : StateEffect.appendConfig.of(searchExtensions)\n ] });\n }\n return true;\n};\n/**\nClose the search panel.\n*/\nconst closeSearchPanel = view => {\n let state = view.state.field(searchState, false);\n if (!state || !state.panel)\n return false;\n let panel = getPanel(view, createSearchPanel);\n if (panel && panel.dom.contains(view.root.activeElement))\n view.focus();\n view.dispatch({ effects: togglePanel.of(false) });\n return true;\n};\n/**\nDefault search-related key bindings.\n\n - Mod-f: [`openSearchPanel`](https://codemirror.net/6/docs/ref/#search.openSearchPanel)\n - F3, Mod-g: [`findNext`](https://codemirror.net/6/docs/ref/#search.findNext)\n - Shift-F3, Shift-Mod-g: [`findPrevious`](https://codemirror.net/6/docs/ref/#search.findPrevious)\n - Mod-Alt-g: [`gotoLine`](https://codemirror.net/6/docs/ref/#search.gotoLine)\n - Mod-d: [`selectNextOccurrence`](https://codemirror.net/6/docs/ref/#search.selectNextOccurrence)\n*/\nconst searchKeymap = [\n { key: \"Mod-f\", run: openSearchPanel, scope: \"editor search-panel\" },\n { key: \"F3\", run: findNext, shift: findPrevious, scope: \"editor search-panel\", preventDefault: true },\n { key: \"Mod-g\", run: findNext, shift: findPrevious, scope: \"editor search-panel\", preventDefault: true },\n { key: \"Escape\", run: closeSearchPanel, scope: \"editor search-panel\" },\n { key: \"Mod-Shift-l\", run: selectSelectionMatches },\n { key: \"Mod-Alt-g\", run: gotoLine },\n { key: \"Mod-d\", run: selectNextOccurrence, preventDefault: true },\n];\nclass SearchPanel {\n constructor(view) {\n this.view = view;\n let query = this.query = view.state.field(searchState).query.spec;\n this.commit = this.commit.bind(this);\n this.searchField = elt(\"input\", {\n value: query.search,\n placeholder: phrase(view, \"Find\"),\n \"aria-label\": phrase(view, \"Find\"),\n class: \"cm-textfield\",\n name: \"search\",\n form: \"\",\n \"main-field\": \"true\",\n onchange: this.commit,\n onkeyup: this.commit\n });\n this.replaceField = elt(\"input\", {\n value: query.replace,\n placeholder: phrase(view, \"Replace\"),\n \"aria-label\": phrase(view, \"Replace\"),\n class: \"cm-textfield\",\n name: \"replace\",\n form: \"\",\n onchange: this.commit,\n onkeyup: this.commit\n });\n this.caseField = elt(\"input\", {\n type: \"checkbox\",\n name: \"case\",\n form: \"\",\n checked: query.caseSensitive,\n onchange: this.commit\n });\n this.reField = elt(\"input\", {\n type: \"checkbox\",\n name: \"re\",\n form: \"\",\n checked: query.regexp,\n onchange: this.commit\n });\n this.wordField = elt(\"input\", {\n type: \"checkbox\",\n name: \"word\",\n form: \"\",\n checked: query.wholeWord,\n onchange: this.commit\n });\n function button(name, onclick, content) {\n return elt(\"button\", { class: \"cm-button\", name, onclick, type: \"button\" }, content);\n }\n this.dom = elt(\"div\", { onkeydown: (e) => this.keydown(e), class: \"cm-search\" }, [\n this.searchField,\n button(\"next\", () => findNext(view), [phrase(view, \"next\")]),\n button(\"prev\", () => findPrevious(view), [phrase(view, \"previous\")]),\n button(\"select\", () => selectMatches(view), [phrase(view, \"all\")]),\n elt(\"label\", null, [this.caseField, phrase(view, \"match case\")]),\n elt(\"label\", null, [this.reField, phrase(view, \"regexp\")]),\n elt(\"label\", null, [this.wordField, phrase(view, \"by word\")]),\n ...view.state.readOnly ? [] : [\n elt(\"br\"),\n this.replaceField,\n button(\"replace\", () => replaceNext(view), [phrase(view, \"replace\")]),\n button(\"replaceAll\", () => replaceAll(view), [phrase(view, \"replace all\")])\n ],\n elt(\"button\", {\n name: \"close\",\n onclick: () => closeSearchPanel(view),\n \"aria-label\": phrase(view, \"close\"),\n type: \"button\"\n }, [\"\u00D7\"])\n ]);\n }\n commit() {\n let query = new SearchQuery({\n search: this.searchField.value,\n caseSensitive: this.caseField.checked,\n regexp: this.reField.checked,\n wholeWord: this.wordField.checked,\n replace: this.replaceField.value,\n });\n if (!query.eq(this.query)) {\n this.query = query;\n this.view.dispatch({ effects: setSearchQuery.of(query) });\n }\n }\n keydown(e) {\n if (runScopeHandlers(this.view, e, \"search-panel\")) {\n e.preventDefault();\n }\n else if (e.keyCode == 13 && e.target == this.searchField) {\n e.preventDefault();\n (e.shiftKey ? findPrevious : findNext)(this.view);\n }\n else if (e.keyCode == 13 && e.target == this.replaceField) {\n e.preventDefault();\n replaceNext(this.view);\n }\n }\n update(update) {\n for (let tr of update.transactions)\n for (let effect of tr.effects) {\n if (effect.is(setSearchQuery) && !effect.value.eq(this.query))\n this.setQuery(effect.value);\n }\n }\n setQuery(query) {\n this.query = query;\n this.searchField.value = query.search;\n this.replaceField.value = query.replace;\n this.caseField.checked = query.caseSensitive;\n this.reField.checked = query.regexp;\n this.wordField.checked = query.wholeWord;\n }\n mount() {\n this.searchField.select();\n }\n get pos() { return 80; }\n get top() { return this.view.state.facet(searchConfigFacet).top; }\n}\nfunction phrase(view, phrase) { return view.state.phrase(phrase); }\nconst AnnounceMargin = 30;\nconst Break = /[\\s\\.,:;?!]/;\nfunction announceMatch(view, { from, to }) {\n let line = view.state.doc.lineAt(from), lineEnd = view.state.doc.lineAt(to).to;\n let start = Math.max(line.from, from - AnnounceMargin), end = Math.min(lineEnd, to + AnnounceMargin);\n let text = view.state.sliceDoc(start, end);\n if (start != line.from) {\n for (let i = 0; i < AnnounceMargin; i++)\n if (!Break.test(text[i + 1]) && Break.test(text[i])) {\n text = text.slice(i);\n break;\n }\n }\n if (end != lineEnd) {\n for (let i = text.length - 1; i > text.length - AnnounceMargin; i--)\n if (!Break.test(text[i - 1]) && Break.test(text[i])) {\n text = text.slice(0, i);\n break;\n }\n }\n return EditorView.announce.of(`${view.state.phrase(\"current match\")}. ${text} ${view.state.phrase(\"on line\")} ${line.number}.`);\n}\nconst baseTheme = /*@__PURE__*/EditorView.baseTheme({\n \".cm-panel.cm-search\": {\n padding: \"2px 6px 4px\",\n position: \"relative\",\n \"& [name=close]\": {\n position: \"absolute\",\n top: \"0\",\n right: \"4px\",\n backgroundColor: \"inherit\",\n border: \"none\",\n font: \"inherit\",\n padding: 0,\n margin: 0\n },\n \"& input, & button, & label\": {\n margin: \".2em .6em .2em 0\"\n },\n \"& input[type=checkbox]\": {\n marginRight: \".2em\"\n },\n \"& label\": {\n fontSize: \"80%\",\n whiteSpace: \"pre\"\n }\n },\n \"&light .cm-searchMatch\": { backgroundColor: \"#ffff0054\" },\n \"&dark .cm-searchMatch\": { backgroundColor: \"#00ffff8a\" },\n \"&light .cm-searchMatch-selected\": { backgroundColor: \"#ff6a0054\" },\n \"&dark .cm-searchMatch-selected\": { backgroundColor: \"#ff00ff8a\" }\n});\nconst searchExtensions = [\n searchState,\n /*@__PURE__*/Prec.low(searchHighlighter),\n baseTheme\n];\n\nexport { RegExpCursor, SearchCursor, SearchQuery, closeSearchPanel, findNext, findPrevious, getSearchQuery, gotoLine, highlightSelectionMatches, openSearchPanel, replaceAll, replaceNext, search, searchKeymap, searchPanelOpen, selectMatches, selectNextOccurrence, selectSelectionMatches, setSearchQuery };\n", "import { Annotation, StateEffect, EditorSelection, codePointAt, codePointSize, fromCodePoint, Facet, combineConfig, StateField, Prec, Text, Transaction, MapMode, RangeValue, RangeSet, CharCategory } from '@codemirror/state';\nimport { Direction, logException, showTooltip, EditorView, ViewPlugin, getTooltip, Decoration, WidgetType, keymap } from '@codemirror/view';\nimport { syntaxTree, indentUnit } from '@codemirror/language';\n\n/**\nAn instance of this is passed to completion source functions.\n*/\nclass CompletionContext {\n /**\n Create a new completion context. (Mostly useful for testing\n completion sources\u2014in the editor, the extension will create\n these for you.)\n */\n constructor(\n /**\n The editor state that the completion happens in.\n */\n state, \n /**\n The position at which the completion is happening.\n */\n pos, \n /**\n Indicates whether completion was activated explicitly, or\n implicitly by typing. The usual way to respond to this is to\n only return completions when either there is part of a\n completable entity before the cursor, or `explicit` is true.\n */\n explicit, \n /**\n The editor view. May be undefined if the context was created\n in a situation where there is no such view available, such as\n in synchronous updates via\n [`CompletionResult.update`](https://codemirror.net/6/docs/ref/#autocomplete.CompletionResult.update)\n or when called by test code.\n */\n view) {\n this.state = state;\n this.pos = pos;\n this.explicit = explicit;\n this.view = view;\n /**\n @internal\n */\n this.abortListeners = [];\n /**\n @internal\n */\n this.abortOnDocChange = false;\n }\n /**\n Get the extent, content, and (if there is a token) type of the\n token before `this.pos`.\n */\n tokenBefore(types) {\n let token = syntaxTree(this.state).resolveInner(this.pos, -1);\n while (token && types.indexOf(token.name) < 0)\n token = token.parent;\n return token ? { from: token.from, to: this.pos,\n text: this.state.sliceDoc(token.from, this.pos),\n type: token.type } : null;\n }\n /**\n Get the match of the given expression directly before the\n cursor.\n */\n matchBefore(expr) {\n let line = this.state.doc.lineAt(this.pos);\n let start = Math.max(line.from, this.pos - 250);\n let str = line.text.slice(start - line.from, this.pos - line.from);\n let found = str.search(ensureAnchor(expr, false));\n return found < 0 ? null : { from: start + found, to: this.pos, text: str.slice(found) };\n }\n /**\n Yields true when the query has been aborted. Can be useful in\n asynchronous queries to avoid doing work that will be ignored.\n */\n get aborted() { return this.abortListeners == null; }\n /**\n Allows you to register abort handlers, which will be called when\n the query is\n [aborted](https://codemirror.net/6/docs/ref/#autocomplete.CompletionContext.aborted).\n \n By default, running queries will not be aborted for regular\n typing or backspacing, on the assumption that they are likely to\n return a result with a\n [`validFor`](https://codemirror.net/6/docs/ref/#autocomplete.CompletionResult.validFor) field that\n allows the result to be used after all. Passing `onDocChange:\n true` will cause this query to be aborted for any document\n change.\n */\n addEventListener(type, listener, options) {\n if (type == \"abort\" && this.abortListeners) {\n this.abortListeners.push(listener);\n if (options && options.onDocChange)\n this.abortOnDocChange = true;\n }\n }\n}\nfunction toSet(chars) {\n let flat = Object.keys(chars).join(\"\");\n let words = /\\w/.test(flat);\n if (words)\n flat = flat.replace(/\\w/g, \"\");\n return `[${words ? \"\\\\w\" : \"\"}${flat.replace(/[^\\w\\s]/g, \"\\\\$&\")}]`;\n}\nfunction prefixMatch(options) {\n let first = Object.create(null), rest = Object.create(null);\n for (let { label } of options) {\n first[label[0]] = true;\n for (let i = 1; i < label.length; i++)\n rest[label[i]] = true;\n }\n let source = toSet(first) + toSet(rest) + \"*$\";\n return [new RegExp(\"^\" + source), new RegExp(source)];\n}\n/**\nGiven a a fixed array of options, return an autocompleter that\ncompletes them.\n*/\nfunction completeFromList(list) {\n let options = list.map(o => typeof o == \"string\" ? { label: o } : o);\n let [validFor, match] = options.every(o => /^\\w+$/.test(o.label)) ? [/\\w*$/, /\\w+$/] : prefixMatch(options);\n return (context) => {\n let token = context.matchBefore(match);\n return token || context.explicit ? { from: token ? token.from : context.pos, options, validFor } : null;\n };\n}\n/**\nWrap the given completion source so that it will only fire when the\ncursor is in a syntax node with one of the given names.\n*/\nfunction ifIn(nodes, source) {\n return (context) => {\n for (let pos = syntaxTree(context.state).resolveInner(context.pos, -1); pos; pos = pos.parent) {\n if (nodes.indexOf(pos.name) > -1)\n return source(context);\n if (pos.type.isTop)\n break;\n }\n return null;\n };\n}\n/**\nWrap the given completion source so that it will not fire when the\ncursor is in a syntax node with one of the given names.\n*/\nfunction ifNotIn(nodes, source) {\n return (context) => {\n for (let pos = syntaxTree(context.state).resolveInner(context.pos, -1); pos; pos = pos.parent) {\n if (nodes.indexOf(pos.name) > -1)\n return null;\n if (pos.type.isTop)\n break;\n }\n return source(context);\n };\n}\nclass Option {\n constructor(completion, source, match, score) {\n this.completion = completion;\n this.source = source;\n this.match = match;\n this.score = score;\n }\n}\nfunction cur(state) { return state.selection.main.from; }\n// Make sure the given regexp has a $ at its end and, if `start` is\n// true, a ^ at its start.\nfunction ensureAnchor(expr, start) {\n var _a;\n let { source } = expr;\n let addStart = start && source[0] != \"^\", addEnd = source[source.length - 1] != \"$\";\n if (!addStart && !addEnd)\n return expr;\n return new RegExp(`${addStart ? \"^\" : \"\"}(?:${source})${addEnd ? \"$\" : \"\"}`, (_a = expr.flags) !== null && _a !== void 0 ? _a : (expr.ignoreCase ? \"i\" : \"\"));\n}\n/**\nThis annotation is added to transactions that are produced by\npicking a completion.\n*/\nconst pickedCompletion = /*@__PURE__*/Annotation.define();\n/**\nHelper function that returns a transaction spec which inserts a\ncompletion's text in the main selection range, and any other\nselection range that has the same text in front of it.\n*/\nfunction insertCompletionText(state, text, from, to) {\n let { main } = state.selection, fromOff = from - main.from, toOff = to - main.from;\n return {\n ...state.changeByRange(range => {\n if (range != main && from != to &&\n state.sliceDoc(range.from + fromOff, range.from + toOff) != state.sliceDoc(from, to))\n return { range };\n let lines = state.toText(text);\n return {\n changes: { from: range.from + fromOff, to: to == main.from ? range.to : range.from + toOff, insert: lines },\n range: EditorSelection.cursor(range.from + fromOff + lines.length)\n };\n }),\n scrollIntoView: true,\n userEvent: \"input.complete\"\n };\n}\nconst SourceCache = /*@__PURE__*/new WeakMap();\nfunction asSource(source) {\n if (!Array.isArray(source))\n return source;\n let known = SourceCache.get(source);\n if (!known)\n SourceCache.set(source, known = completeFromList(source));\n return known;\n}\nconst startCompletionEffect = /*@__PURE__*/StateEffect.define();\nconst closeCompletionEffect = /*@__PURE__*/StateEffect.define();\n\n// A pattern matcher for fuzzy completion matching. Create an instance\n// once for a pattern, and then use that to match any number of\n// completions.\nclass FuzzyMatcher {\n constructor(pattern) {\n this.pattern = pattern;\n this.chars = [];\n this.folded = [];\n // Buffers reused by calls to `match` to track matched character\n // positions.\n this.any = [];\n this.precise = [];\n this.byWord = [];\n this.score = 0;\n this.matched = [];\n for (let p = 0; p < pattern.length;) {\n let char = codePointAt(pattern, p), size = codePointSize(char);\n this.chars.push(char);\n let part = pattern.slice(p, p + size), upper = part.toUpperCase();\n this.folded.push(codePointAt(upper == part ? part.toLowerCase() : upper, 0));\n p += size;\n }\n this.astral = pattern.length != this.chars.length;\n }\n ret(score, matched) {\n this.score = score;\n this.matched = matched;\n return this;\n }\n // Matches a given word (completion) against the pattern (input).\n // Will return a boolean indicating whether there was a match and,\n // on success, set `this.score` to the score, `this.matched` to an\n // array of `from, to` pairs indicating the matched parts of `word`.\n //\n // The score is a number that is more negative the worse the match\n // is. See `Penalty` above.\n match(word) {\n if (this.pattern.length == 0)\n return this.ret(-100 /* Penalty.NotFull */, []);\n if (word.length < this.pattern.length)\n return null;\n let { chars, folded, any, precise, byWord } = this;\n // For single-character queries, only match when they occur right\n // at the start\n if (chars.length == 1) {\n let first = codePointAt(word, 0), firstSize = codePointSize(first);\n let score = firstSize == word.length ? 0 : -100 /* Penalty.NotFull */;\n if (first == chars[0]) ;\n else if (first == folded[0])\n score += -200 /* Penalty.CaseFold */;\n else\n return null;\n return this.ret(score, [0, firstSize]);\n }\n let direct = word.indexOf(this.pattern);\n if (direct == 0)\n return this.ret(word.length == this.pattern.length ? 0 : -100 /* Penalty.NotFull */, [0, this.pattern.length]);\n let len = chars.length, anyTo = 0;\n if (direct < 0) {\n for (let i = 0, e = Math.min(word.length, 200); i < e && anyTo < len;) {\n let next = codePointAt(word, i);\n if (next == chars[anyTo] || next == folded[anyTo])\n any[anyTo++] = i;\n i += codePointSize(next);\n }\n // No match, exit immediately\n if (anyTo < len)\n return null;\n }\n // This tracks the extent of the precise (non-folded, not\n // necessarily adjacent) match\n let preciseTo = 0;\n // Tracks whether there is a match that hits only characters that\n // appear to be starting words. `byWordFolded` is set to true when\n // a case folded character is encountered in such a match\n let byWordTo = 0, byWordFolded = false;\n // If we've found a partial adjacent match, these track its state\n let adjacentTo = 0, adjacentStart = -1, adjacentEnd = -1;\n let hasLower = /[a-z]/.test(word), wordAdjacent = true;\n // Go over the option's text, scanning for the various kinds of matches\n for (let i = 0, e = Math.min(word.length, 200), prevType = 0 /* Tp.NonWord */; i < e && byWordTo < len;) {\n let next = codePointAt(word, i);\n if (direct < 0) {\n if (preciseTo < len && next == chars[preciseTo])\n precise[preciseTo++] = i;\n if (adjacentTo < len) {\n if (next == chars[adjacentTo] || next == folded[adjacentTo]) {\n if (adjacentTo == 0)\n adjacentStart = i;\n adjacentEnd = i + 1;\n adjacentTo++;\n }\n else {\n adjacentTo = 0;\n }\n }\n }\n let ch, type = next < 0xff\n ? (next >= 48 && next <= 57 || next >= 97 && next <= 122 ? 2 /* Tp.Lower */ : next >= 65 && next <= 90 ? 1 /* Tp.Upper */ : 0 /* Tp.NonWord */)\n : ((ch = fromCodePoint(next)) != ch.toLowerCase() ? 1 /* Tp.Upper */ : ch != ch.toUpperCase() ? 2 /* Tp.Lower */ : 0 /* Tp.NonWord */);\n if (!i || type == 1 /* Tp.Upper */ && hasLower || prevType == 0 /* Tp.NonWord */ && type != 0 /* Tp.NonWord */) {\n if (chars[byWordTo] == next || (folded[byWordTo] == next && (byWordFolded = true)))\n byWord[byWordTo++] = i;\n else if (byWord.length)\n wordAdjacent = false;\n }\n prevType = type;\n i += codePointSize(next);\n }\n if (byWordTo == len && byWord[0] == 0 && wordAdjacent)\n return this.result(-100 /* Penalty.ByWord */ + (byWordFolded ? -200 /* Penalty.CaseFold */ : 0), byWord, word);\n if (adjacentTo == len && adjacentStart == 0)\n return this.ret(-200 /* Penalty.CaseFold */ - word.length + (adjacentEnd == word.length ? 0 : -100 /* Penalty.NotFull */), [0, adjacentEnd]);\n if (direct > -1)\n return this.ret(-700 /* Penalty.NotStart */ - word.length, [direct, direct + this.pattern.length]);\n if (adjacentTo == len)\n return this.ret(-200 /* Penalty.CaseFold */ + -700 /* Penalty.NotStart */ - word.length, [adjacentStart, adjacentEnd]);\n if (byWordTo == len)\n return this.result(-100 /* Penalty.ByWord */ + (byWordFolded ? -200 /* Penalty.CaseFold */ : 0) + -700 /* Penalty.NotStart */ +\n (wordAdjacent ? 0 : -1100 /* Penalty.Gap */), byWord, word);\n return chars.length == 2 ? null\n : this.result((any[0] ? -700 /* Penalty.NotStart */ : 0) + -200 /* Penalty.CaseFold */ + -1100 /* Penalty.Gap */, any, word);\n }\n result(score, positions, word) {\n let result = [], i = 0;\n for (let pos of positions) {\n let to = pos + (this.astral ? codePointSize(codePointAt(word, pos)) : 1);\n if (i && result[i - 1] == pos)\n result[i - 1] = to;\n else {\n result[i++] = pos;\n result[i++] = to;\n }\n }\n return this.ret(score - word.length, result);\n }\n}\nclass StrictMatcher {\n constructor(pattern) {\n this.pattern = pattern;\n this.matched = [];\n this.score = 0;\n this.folded = pattern.toLowerCase();\n }\n match(word) {\n if (word.length < this.pattern.length)\n return null;\n let start = word.slice(0, this.pattern.length);\n let match = start == this.pattern ? 0 : start.toLowerCase() == this.folded ? -200 /* Penalty.CaseFold */ : null;\n if (match == null)\n return null;\n this.matched = [0, start.length];\n this.score = match + (word.length == this.pattern.length ? 0 : -100 /* Penalty.NotFull */);\n return this;\n }\n}\n\nconst completionConfig = /*@__PURE__*/Facet.define({\n combine(configs) {\n return combineConfig(configs, {\n activateOnTyping: true,\n activateOnCompletion: () => false,\n activateOnTypingDelay: 100,\n selectOnOpen: true,\n override: null,\n closeOnBlur: true,\n maxRenderedOptions: 100,\n defaultKeymap: true,\n tooltipClass: () => \"\",\n optionClass: () => \"\",\n aboveCursor: false,\n icons: true,\n addToOptions: [],\n positionInfo: defaultPositionInfo,\n filterStrict: false,\n compareCompletions: (a, b) => (a.sortText || a.label).localeCompare(b.sortText || b.label),\n interactionDelay: 75,\n updateSyncTime: 100\n }, {\n defaultKeymap: (a, b) => a && b,\n closeOnBlur: (a, b) => a && b,\n icons: (a, b) => a && b,\n tooltipClass: (a, b) => c => joinClass(a(c), b(c)),\n optionClass: (a, b) => c => joinClass(a(c), b(c)),\n addToOptions: (a, b) => a.concat(b),\n filterStrict: (a, b) => a || b,\n });\n }\n});\nfunction joinClass(a, b) {\n return a ? b ? a + \" \" + b : a : b;\n}\nfunction defaultPositionInfo(view, list, option, info, space, tooltip) {\n let rtl = view.textDirection == Direction.RTL, left = rtl, narrow = false;\n let side = \"top\", offset, maxWidth;\n let spaceLeft = list.left - space.left, spaceRight = space.right - list.right;\n let infoWidth = info.right - info.left, infoHeight = info.bottom - info.top;\n if (left && spaceLeft < Math.min(infoWidth, spaceRight))\n left = false;\n else if (!left && spaceRight < Math.min(infoWidth, spaceLeft))\n left = true;\n if (infoWidth <= (left ? spaceLeft : spaceRight)) {\n offset = Math.max(space.top, Math.min(option.top, space.bottom - infoHeight)) - list.top;\n maxWidth = Math.min(400 /* Info.Width */, left ? spaceLeft : spaceRight);\n }\n else {\n narrow = true;\n maxWidth = Math.min(400 /* Info.Width */, (rtl ? list.right : space.right - list.left) - 30 /* Info.Margin */);\n let spaceBelow = space.bottom - list.bottom;\n if (spaceBelow >= infoHeight || spaceBelow > list.top) { // Below the completion\n offset = option.bottom - list.top;\n }\n else { // Above it\n side = \"bottom\";\n offset = list.bottom - option.top;\n }\n }\n let scaleY = (list.bottom - list.top) / tooltip.offsetHeight;\n let scaleX = (list.right - list.left) / tooltip.offsetWidth;\n return {\n style: `${side}: ${offset / scaleY}px; max-width: ${maxWidth / scaleX}px`,\n class: \"cm-completionInfo-\" + (narrow ? (rtl ? \"left-narrow\" : \"right-narrow\") : left ? \"left\" : \"right\")\n };\n}\n\nfunction optionContent(config) {\n let content = config.addToOptions.slice();\n if (config.icons)\n content.push({\n render(completion) {\n let icon = document.createElement(\"div\");\n icon.classList.add(\"cm-completionIcon\");\n if (completion.type)\n icon.classList.add(...completion.type.split(/\\s+/g).map(cls => \"cm-completionIcon-\" + cls));\n icon.setAttribute(\"aria-hidden\", \"true\");\n return icon;\n },\n position: 20\n });\n content.push({\n render(completion, _s, _v, match) {\n let labelElt = document.createElement(\"span\");\n labelElt.className = \"cm-completionLabel\";\n let label = completion.displayLabel || completion.label, off = 0;\n for (let j = 0; j < match.length;) {\n let from = match[j++], to = match[j++];\n if (from > off)\n labelElt.appendChild(document.createTextNode(label.slice(off, from)));\n let span = labelElt.appendChild(document.createElement(\"span\"));\n span.appendChild(document.createTextNode(label.slice(from, to)));\n span.className = \"cm-completionMatchedText\";\n off = to;\n }\n if (off < label.length)\n labelElt.appendChild(document.createTextNode(label.slice(off)));\n return labelElt;\n },\n position: 50\n }, {\n render(completion) {\n if (!completion.detail)\n return null;\n let detailElt = document.createElement(\"span\");\n detailElt.className = \"cm-completionDetail\";\n detailElt.textContent = completion.detail;\n return detailElt;\n },\n position: 80\n });\n return content.sort((a, b) => a.position - b.position).map(a => a.render);\n}\nfunction rangeAroundSelected(total, selected, max) {\n if (total <= max)\n return { from: 0, to: total };\n if (selected < 0)\n selected = 0;\n if (selected <= (total >> 1)) {\n let off = Math.floor(selected / max);\n return { from: off * max, to: (off + 1) * max };\n }\n let off = Math.floor((total - selected) / max);\n return { from: total - (off + 1) * max, to: total - off * max };\n}\nclass CompletionTooltip {\n constructor(view, stateField, applyCompletion) {\n this.view = view;\n this.stateField = stateField;\n this.applyCompletion = applyCompletion;\n this.info = null;\n this.infoDestroy = null;\n this.placeInfoReq = {\n read: () => this.measureInfo(),\n write: (pos) => this.placeInfo(pos),\n key: this\n };\n this.space = null;\n this.currentClass = \"\";\n let cState = view.state.field(stateField);\n let { options, selected } = cState.open;\n let config = view.state.facet(completionConfig);\n this.optionContent = optionContent(config);\n this.optionClass = config.optionClass;\n this.tooltipClass = config.tooltipClass;\n this.range = rangeAroundSelected(options.length, selected, config.maxRenderedOptions);\n this.dom = document.createElement(\"div\");\n this.dom.className = \"cm-tooltip-autocomplete\";\n this.updateTooltipClass(view.state);\n this.dom.addEventListener(\"mousedown\", (e) => {\n let { options } = view.state.field(stateField).open;\n for (let dom = e.target, match; dom && dom != this.dom; dom = dom.parentNode) {\n if (dom.nodeName == \"LI\" && (match = /-(\\d+)$/.exec(dom.id)) && +match[1] < options.length) {\n this.applyCompletion(view, options[+match[1]]);\n e.preventDefault();\n return;\n }\n }\n });\n this.dom.addEventListener(\"focusout\", (e) => {\n let state = view.state.field(this.stateField, false);\n if (state && state.tooltip && view.state.facet(completionConfig).closeOnBlur &&\n e.relatedTarget != view.contentDOM)\n view.dispatch({ effects: closeCompletionEffect.of(null) });\n });\n this.showOptions(options, cState.id);\n }\n mount() { this.updateSel(); }\n showOptions(options, id) {\n if (this.list)\n this.list.remove();\n this.list = this.dom.appendChild(this.createListBox(options, id, this.range));\n this.list.addEventListener(\"scroll\", () => {\n if (this.info)\n this.view.requestMeasure(this.placeInfoReq);\n });\n }\n update(update) {\n var _a;\n let cState = update.state.field(this.stateField);\n let prevState = update.startState.field(this.stateField);\n this.updateTooltipClass(update.state);\n if (cState != prevState) {\n let { options, selected, disabled } = cState.open;\n if (!prevState.open || prevState.open.options != options) {\n this.range = rangeAroundSelected(options.length, selected, update.state.facet(completionConfig).maxRenderedOptions);\n this.showOptions(options, cState.id);\n }\n this.updateSel();\n if (disabled != ((_a = prevState.open) === null || _a === void 0 ? void 0 : _a.disabled))\n this.dom.classList.toggle(\"cm-tooltip-autocomplete-disabled\", !!disabled);\n }\n }\n updateTooltipClass(state) {\n let cls = this.tooltipClass(state);\n if (cls != this.currentClass) {\n for (let c of this.currentClass.split(\" \"))\n if (c)\n this.dom.classList.remove(c);\n for (let c of cls.split(\" \"))\n if (c)\n this.dom.classList.add(c);\n this.currentClass = cls;\n }\n }\n positioned(space) {\n this.space = space;\n if (this.info)\n this.view.requestMeasure(this.placeInfoReq);\n }\n updateSel() {\n let cState = this.view.state.field(this.stateField), open = cState.open;\n if (open.selected > -1 && open.selected < this.range.from || open.selected >= this.range.to) {\n this.range = rangeAroundSelected(open.options.length, open.selected, this.view.state.facet(completionConfig).maxRenderedOptions);\n this.showOptions(open.options, cState.id);\n }\n let newSel = this.updateSelectedOption(open.selected);\n if (newSel) {\n this.destroyInfo();\n let { completion } = open.options[open.selected];\n let { info } = completion;\n if (!info)\n return;\n let infoResult = typeof info === \"string\" ? document.createTextNode(info) : info(completion);\n if (!infoResult)\n return;\n if (\"then\" in infoResult) {\n infoResult.then(obj => {\n if (obj && this.view.state.field(this.stateField, false) == cState)\n this.addInfoPane(obj, completion);\n }).catch(e => logException(this.view.state, e, \"completion info\"));\n }\n else {\n this.addInfoPane(infoResult, completion);\n newSel.setAttribute(\"aria-describedby\", this.info.id);\n }\n }\n }\n addInfoPane(content, completion) {\n this.destroyInfo();\n let wrap = this.info = document.createElement(\"div\");\n wrap.className = \"cm-tooltip cm-completionInfo\";\n wrap.id = \"cm-completionInfo-\" + Math.floor(Math.random() * 0xffff).toString(16);\n if (content.nodeType != null) {\n wrap.appendChild(content);\n this.infoDestroy = null;\n }\n else {\n let { dom, destroy } = content;\n wrap.appendChild(dom);\n this.infoDestroy = destroy || null;\n }\n this.dom.appendChild(wrap);\n this.view.requestMeasure(this.placeInfoReq);\n }\n updateSelectedOption(selected) {\n let set = null;\n for (let opt = this.list.firstChild, i = this.range.from; opt; opt = opt.nextSibling, i++) {\n if (opt.nodeName != \"LI\" || !opt.id) {\n i--; // A section header\n }\n else if (i == selected) {\n if (!opt.hasAttribute(\"aria-selected\")) {\n opt.setAttribute(\"aria-selected\", \"true\");\n set = opt;\n }\n }\n else {\n if (opt.hasAttribute(\"aria-selected\")) {\n opt.removeAttribute(\"aria-selected\");\n opt.removeAttribute(\"aria-describedby\");\n }\n }\n }\n if (set)\n scrollIntoView(this.list, set);\n return set;\n }\n measureInfo() {\n let sel = this.dom.querySelector(\"[aria-selected]\");\n if (!sel || !this.info)\n return null;\n let listRect = this.dom.getBoundingClientRect();\n let infoRect = this.info.getBoundingClientRect();\n let selRect = sel.getBoundingClientRect();\n let space = this.space;\n if (!space) {\n let docElt = this.dom.ownerDocument.documentElement;\n space = { left: 0, top: 0, right: docElt.clientWidth, bottom: docElt.clientHeight };\n }\n if (selRect.top > Math.min(space.bottom, listRect.bottom) - 10 ||\n selRect.bottom < Math.max(space.top, listRect.top) + 10)\n return null;\n return this.view.state.facet(completionConfig).positionInfo(this.view, listRect, selRect, infoRect, space, this.dom);\n }\n placeInfo(pos) {\n if (this.info) {\n if (pos) {\n if (pos.style)\n this.info.style.cssText = pos.style;\n this.info.className = \"cm-tooltip cm-completionInfo \" + (pos.class || \"\");\n }\n else {\n this.info.style.cssText = \"top: -1e6px\";\n }\n }\n }\n createListBox(options, id, range) {\n const ul = document.createElement(\"ul\");\n ul.id = id;\n ul.setAttribute(\"role\", \"listbox\");\n ul.setAttribute(\"aria-expanded\", \"true\");\n ul.setAttribute(\"aria-label\", this.view.state.phrase(\"Completions\"));\n ul.addEventListener(\"mousedown\", e => {\n // Prevent focus change when clicking the scrollbar\n if (e.target == ul)\n e.preventDefault();\n });\n let curSection = null;\n for (let i = range.from; i < range.to; i++) {\n let { completion, match } = options[i], { section } = completion;\n if (section) {\n let name = typeof section == \"string\" ? section : section.name;\n if (name != curSection && (i > range.from || range.from == 0)) {\n curSection = name;\n if (typeof section != \"string\" && section.header) {\n ul.appendChild(section.header(section));\n }\n else {\n let header = ul.appendChild(document.createElement(\"completion-section\"));\n header.textContent = name;\n }\n }\n }\n const li = ul.appendChild(document.createElement(\"li\"));\n li.id = id + \"-\" + i;\n li.setAttribute(\"role\", \"option\");\n let cls = this.optionClass(completion);\n if (cls)\n li.className = cls;\n for (let source of this.optionContent) {\n let node = source(completion, this.view.state, this.view, match);\n if (node)\n li.appendChild(node);\n }\n }\n if (range.from)\n ul.classList.add(\"cm-completionListIncompleteTop\");\n if (range.to < options.length)\n ul.classList.add(\"cm-completionListIncompleteBottom\");\n return ul;\n }\n destroyInfo() {\n if (this.info) {\n if (this.infoDestroy)\n this.infoDestroy();\n this.info.remove();\n this.info = null;\n }\n }\n destroy() {\n this.destroyInfo();\n }\n}\nfunction completionTooltip(stateField, applyCompletion) {\n return (view) => new CompletionTooltip(view, stateField, applyCompletion);\n}\nfunction scrollIntoView(container, element) {\n let parent = container.getBoundingClientRect();\n let self = element.getBoundingClientRect();\n let scaleY = parent.height / container.offsetHeight;\n if (self.top < parent.top)\n container.scrollTop -= (parent.top - self.top) / scaleY;\n else if (self.bottom > parent.bottom)\n container.scrollTop += (self.bottom - parent.bottom) / scaleY;\n}\n\n// Used to pick a preferred option when two options with the same\n// label occur in the result.\nfunction score(option) {\n return (option.boost || 0) * 100 + (option.apply ? 10 : 0) + (option.info ? 5 : 0) +\n (option.type ? 1 : 0);\n}\nfunction sortOptions(active, state) {\n let options = [];\n let sections = null, dynamicSectionScore = null;\n let addOption = (option) => {\n options.push(option);\n let { section } = option.completion;\n if (section) {\n if (!sections)\n sections = [];\n let name = typeof section == \"string\" ? section : section.name;\n if (!sections.some(s => s.name == name))\n sections.push(typeof section == \"string\" ? { name } : section);\n }\n };\n let conf = state.facet(completionConfig);\n for (let a of active)\n if (a.hasResult()) {\n let getMatch = a.result.getMatch;\n if (a.result.filter === false) {\n for (let option of a.result.options) {\n addOption(new Option(option, a.source, getMatch ? getMatch(option) : [], 1e9 - options.length));\n }\n }\n else {\n let pattern = state.sliceDoc(a.from, a.to), match;\n let matcher = conf.filterStrict ? new StrictMatcher(pattern) : new FuzzyMatcher(pattern);\n for (let option of a.result.options)\n if (match = matcher.match(option.label)) {\n let matched = !option.displayLabel ? match.matched : getMatch ? getMatch(option, match.matched) : [];\n let score = match.score + (option.boost || 0);\n addOption(new Option(option, a.source, matched, score));\n if (typeof option.section == \"object\" && option.section.rank === \"dynamic\") {\n let { name } = option.section;\n if (!dynamicSectionScore)\n dynamicSectionScore = Object.create(null);\n dynamicSectionScore[name] = Math.max(score, dynamicSectionScore[name] || -1e9);\n }\n }\n }\n }\n if (sections) {\n let sectionOrder = Object.create(null), pos = 0;\n let cmp = (a, b) => {\n return (a.rank === \"dynamic\" && b.rank === \"dynamic\" ? dynamicSectionScore[b.name] - dynamicSectionScore[a.name] : 0) ||\n (typeof a.rank == \"number\" ? a.rank : 1e9) - (typeof b.rank == \"number\" ? b.rank : 1e9) ||\n (a.name < b.name ? -1 : 1);\n };\n for (let s of sections.sort(cmp)) {\n pos -= 1e5;\n sectionOrder[s.name] = pos;\n }\n for (let option of options) {\n let { section } = option.completion;\n if (section)\n option.score += sectionOrder[typeof section == \"string\" ? section : section.name];\n }\n }\n let result = [], prev = null;\n let compare = conf.compareCompletions;\n for (let opt of options.sort((a, b) => (b.score - a.score) || compare(a.completion, b.completion))) {\n let cur = opt.completion;\n if (!prev || prev.label != cur.label || prev.detail != cur.detail ||\n (prev.type != null && cur.type != null && prev.type != cur.type) ||\n prev.apply != cur.apply || prev.boost != cur.boost)\n result.push(opt);\n else if (score(opt.completion) > score(prev))\n result[result.length - 1] = opt;\n prev = opt.completion;\n }\n return result;\n}\nclass CompletionDialog {\n constructor(options, attrs, tooltip, timestamp, selected, disabled) {\n this.options = options;\n this.attrs = attrs;\n this.tooltip = tooltip;\n this.timestamp = timestamp;\n this.selected = selected;\n this.disabled = disabled;\n }\n setSelected(selected, id) {\n return selected == this.selected || selected >= this.options.length ? this\n : new CompletionDialog(this.options, makeAttrs(id, selected), this.tooltip, this.timestamp, selected, this.disabled);\n }\n static build(active, state, id, prev, conf, didSetActive) {\n if (prev && !didSetActive && active.some(s => s.isPending))\n return prev.setDisabled();\n let options = sortOptions(active, state);\n if (!options.length)\n return prev && active.some(a => a.isPending) ? prev.setDisabled() : null;\n let selected = state.facet(completionConfig).selectOnOpen ? 0 : -1;\n if (prev && prev.selected != selected && prev.selected != -1) {\n let selectedValue = prev.options[prev.selected].completion;\n for (let i = 0; i < options.length; i++)\n if (options[i].completion == selectedValue) {\n selected = i;\n break;\n }\n }\n return new CompletionDialog(options, makeAttrs(id, selected), {\n pos: active.reduce((a, b) => b.hasResult() ? Math.min(a, b.from) : a, 1e8),\n create: createTooltip,\n above: conf.aboveCursor,\n }, prev ? prev.timestamp : Date.now(), selected, false);\n }\n map(changes) {\n return new CompletionDialog(this.options, this.attrs, { ...this.tooltip, pos: changes.mapPos(this.tooltip.pos) }, this.timestamp, this.selected, this.disabled);\n }\n setDisabled() {\n return new CompletionDialog(this.options, this.attrs, this.tooltip, this.timestamp, this.selected, true);\n }\n}\nclass CompletionState {\n constructor(active, id, open) {\n this.active = active;\n this.id = id;\n this.open = open;\n }\n static start() {\n return new CompletionState(none, \"cm-ac-\" + Math.floor(Math.random() * 2e6).toString(36), null);\n }\n update(tr) {\n let { state } = tr, conf = state.facet(completionConfig);\n let sources = conf.override ||\n state.languageDataAt(\"autocomplete\", cur(state)).map(asSource);\n let active = sources.map(source => {\n let value = this.active.find(s => s.source == source) ||\n new ActiveSource(source, this.active.some(a => a.state != 0 /* State.Inactive */) ? 1 /* State.Pending */ : 0 /* State.Inactive */);\n return value.update(tr, conf);\n });\n if (active.length == this.active.length && active.every((a, i) => a == this.active[i]))\n active = this.active;\n let open = this.open, didSet = tr.effects.some(e => e.is(setActiveEffect));\n if (open && tr.docChanged)\n open = open.map(tr.changes);\n if (tr.selection || active.some(a => a.hasResult() && tr.changes.touchesRange(a.from, a.to)) ||\n !sameResults(active, this.active) || didSet)\n open = CompletionDialog.build(active, state, this.id, open, conf, didSet);\n else if (open && open.disabled && !active.some(a => a.isPending))\n open = null;\n if (!open && active.every(a => !a.isPending) && active.some(a => a.hasResult()))\n active = active.map(a => a.hasResult() ? new ActiveSource(a.source, 0 /* State.Inactive */) : a);\n for (let effect of tr.effects)\n if (effect.is(setSelectedEffect))\n open = open && open.setSelected(effect.value, this.id);\n return active == this.active && open == this.open ? this : new CompletionState(active, this.id, open);\n }\n get tooltip() { return this.open ? this.open.tooltip : null; }\n get attrs() { return this.open ? this.open.attrs : this.active.length ? baseAttrs : noAttrs; }\n}\nfunction sameResults(a, b) {\n if (a == b)\n return true;\n for (let iA = 0, iB = 0;;) {\n while (iA < a.length && !a[iA].hasResult())\n iA++;\n while (iB < b.length && !b[iB].hasResult())\n iB++;\n let endA = iA == a.length, endB = iB == b.length;\n if (endA || endB)\n return endA == endB;\n if (a[iA++].result != b[iB++].result)\n return false;\n }\n}\nconst baseAttrs = {\n \"aria-autocomplete\": \"list\"\n};\nconst noAttrs = {};\nfunction makeAttrs(id, selected) {\n let result = {\n \"aria-autocomplete\": \"list\",\n \"aria-haspopup\": \"listbox\",\n \"aria-controls\": id\n };\n if (selected > -1)\n result[\"aria-activedescendant\"] = id + \"-\" + selected;\n return result;\n}\nconst none = [];\nfunction getUpdateType(tr, conf) {\n if (tr.isUserEvent(\"input.complete\")) {\n let completion = tr.annotation(pickedCompletion);\n if (completion && conf.activateOnCompletion(completion))\n return 4 /* UpdateType.Activate */ | 8 /* UpdateType.Reset */;\n }\n let typing = tr.isUserEvent(\"input.type\");\n return typing && conf.activateOnTyping ? 4 /* UpdateType.Activate */ | 1 /* UpdateType.Typing */\n : typing ? 1 /* UpdateType.Typing */\n : tr.isUserEvent(\"delete.backward\") ? 2 /* UpdateType.Backspacing */\n : tr.selection ? 8 /* UpdateType.Reset */\n : tr.docChanged ? 16 /* UpdateType.ResetIfTouching */ : 0 /* UpdateType.None */;\n}\nclass ActiveSource {\n constructor(source, state, explicit = false) {\n this.source = source;\n this.state = state;\n this.explicit = explicit;\n }\n hasResult() { return false; }\n get isPending() { return this.state == 1 /* State.Pending */; }\n update(tr, conf) {\n let type = getUpdateType(tr, conf), value = this;\n if ((type & 8 /* UpdateType.Reset */) || (type & 16 /* UpdateType.ResetIfTouching */) && this.touches(tr))\n value = new ActiveSource(value.source, 0 /* State.Inactive */);\n if ((type & 4 /* UpdateType.Activate */) && value.state == 0 /* State.Inactive */)\n value = new ActiveSource(this.source, 1 /* State.Pending */);\n value = value.updateFor(tr, type);\n for (let effect of tr.effects) {\n if (effect.is(startCompletionEffect))\n value = new ActiveSource(value.source, 1 /* State.Pending */, effect.value);\n else if (effect.is(closeCompletionEffect))\n value = new ActiveSource(value.source, 0 /* State.Inactive */);\n else if (effect.is(setActiveEffect))\n for (let active of effect.value)\n if (active.source == value.source)\n value = active;\n }\n return value;\n }\n updateFor(tr, type) { return this.map(tr.changes); }\n map(changes) { return this; }\n touches(tr) {\n return tr.changes.touchesRange(cur(tr.state));\n }\n}\nclass ActiveResult extends ActiveSource {\n constructor(source, explicit, limit, result, from, to) {\n super(source, 3 /* State.Result */, explicit);\n this.limit = limit;\n this.result = result;\n this.from = from;\n this.to = to;\n }\n hasResult() { return true; }\n updateFor(tr, type) {\n var _a;\n if (!(type & 3 /* UpdateType.SimpleInteraction */))\n return this.map(tr.changes);\n let result = this.result;\n if (result.map && !tr.changes.empty)\n result = result.map(result, tr.changes);\n let from = tr.changes.mapPos(this.from), to = tr.changes.mapPos(this.to, 1);\n let pos = cur(tr.state);\n if (pos > to || !result ||\n (type & 2 /* UpdateType.Backspacing */) && (cur(tr.startState) == this.from || pos < this.limit))\n return new ActiveSource(this.source, type & 4 /* UpdateType.Activate */ ? 1 /* State.Pending */ : 0 /* State.Inactive */);\n let limit = tr.changes.mapPos(this.limit);\n if (checkValid(result.validFor, tr.state, from, to))\n return new ActiveResult(this.source, this.explicit, limit, result, from, to);\n if (result.update &&\n (result = result.update(result, from, to, new CompletionContext(tr.state, pos, false))))\n return new ActiveResult(this.source, this.explicit, limit, result, result.from, (_a = result.to) !== null && _a !== void 0 ? _a : cur(tr.state));\n return new ActiveSource(this.source, 1 /* State.Pending */, this.explicit);\n }\n map(mapping) {\n if (mapping.empty)\n return this;\n let result = this.result.map ? this.result.map(this.result, mapping) : this.result;\n if (!result)\n return new ActiveSource(this.source, 0 /* State.Inactive */);\n return new ActiveResult(this.source, this.explicit, mapping.mapPos(this.limit), this.result, mapping.mapPos(this.from), mapping.mapPos(this.to, 1));\n }\n touches(tr) {\n return tr.changes.touchesRange(this.from, this.to);\n }\n}\nfunction checkValid(validFor, state, from, to) {\n if (!validFor)\n return false;\n let text = state.sliceDoc(from, to);\n return typeof validFor == \"function\" ? validFor(text, from, to, state) : ensureAnchor(validFor, true).test(text);\n}\nconst setActiveEffect = /*@__PURE__*/StateEffect.define({\n map(sources, mapping) { return sources.map(s => s.map(mapping)); }\n});\nconst setSelectedEffect = /*@__PURE__*/StateEffect.define();\nconst completionState = /*@__PURE__*/StateField.define({\n create() { return CompletionState.start(); },\n update(value, tr) { return value.update(tr); },\n provide: f => [\n showTooltip.from(f, val => val.tooltip),\n EditorView.contentAttributes.from(f, state => state.attrs)\n ]\n});\nfunction applyCompletion(view, option) {\n const apply = option.completion.apply || option.completion.label;\n let result = view.state.field(completionState).active.find(a => a.source == option.source);\n if (!(result instanceof ActiveResult))\n return false;\n if (typeof apply == \"string\")\n view.dispatch({\n ...insertCompletionText(view.state, apply, result.from, result.to),\n annotations: pickedCompletion.of(option.completion)\n });\n else\n apply(view, option.completion, result.from, result.to);\n return true;\n}\nconst createTooltip = /*@__PURE__*/completionTooltip(completionState, applyCompletion);\n\n/**\nReturns a command that moves the completion selection forward or\nbackward by the given amount.\n*/\nfunction moveCompletionSelection(forward, by = \"option\") {\n return (view) => {\n let cState = view.state.field(completionState, false);\n if (!cState || !cState.open || cState.open.disabled ||\n Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay)\n return false;\n let step = 1, tooltip;\n if (by == \"page\" && (tooltip = getTooltip(view, cState.open.tooltip)))\n step = Math.max(2, Math.floor(tooltip.dom.offsetHeight /\n tooltip.dom.querySelector(\"li\").offsetHeight) - 1);\n let { length } = cState.open.options;\n let selected = cState.open.selected > -1 ? cState.open.selected + step * (forward ? 1 : -1) : forward ? 0 : length - 1;\n if (selected < 0)\n selected = by == \"page\" ? 0 : length - 1;\n else if (selected >= length)\n selected = by == \"page\" ? length - 1 : 0;\n view.dispatch({ effects: setSelectedEffect.of(selected) });\n return true;\n };\n}\n/**\nAccept the current completion.\n*/\nconst acceptCompletion = (view) => {\n let cState = view.state.field(completionState, false);\n if (view.state.readOnly || !cState || !cState.open || cState.open.selected < 0 || cState.open.disabled ||\n Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay)\n return false;\n return applyCompletion(view, cState.open.options[cState.open.selected]);\n};\n/**\nExplicitly start autocompletion.\n*/\nconst startCompletion = (view) => {\n let cState = view.state.field(completionState, false);\n if (!cState)\n return false;\n view.dispatch({ effects: startCompletionEffect.of(true) });\n return true;\n};\n/**\nClose the currently active completion.\n*/\nconst closeCompletion = (view) => {\n let cState = view.state.field(completionState, false);\n if (!cState || !cState.active.some(a => a.state != 0 /* State.Inactive */))\n return false;\n view.dispatch({ effects: closeCompletionEffect.of(null) });\n return true;\n};\nclass RunningQuery {\n constructor(active, context) {\n this.active = active;\n this.context = context;\n this.time = Date.now();\n this.updates = [];\n // Note that 'undefined' means 'not done yet', whereas 'null' means\n // 'query returned null'.\n this.done = undefined;\n }\n}\nconst MaxUpdateCount = 50, MinAbortTime = 1000;\nconst completionPlugin = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.view = view;\n this.debounceUpdate = -1;\n this.running = [];\n this.debounceAccept = -1;\n this.pendingStart = false;\n this.composing = 0 /* CompositionState.None */;\n for (let active of view.state.field(completionState).active)\n if (active.isPending)\n this.startQuery(active);\n }\n update(update) {\n let cState = update.state.field(completionState);\n let conf = update.state.facet(completionConfig);\n if (!update.selectionSet && !update.docChanged && update.startState.field(completionState) == cState)\n return;\n let doesReset = update.transactions.some(tr => {\n let type = getUpdateType(tr, conf);\n return (type & 8 /* UpdateType.Reset */) || (tr.selection || tr.docChanged) && !(type & 3 /* UpdateType.SimpleInteraction */);\n });\n for (let i = 0; i < this.running.length; i++) {\n let query = this.running[i];\n if (doesReset ||\n query.context.abortOnDocChange && update.docChanged ||\n query.updates.length + update.transactions.length > MaxUpdateCount && Date.now() - query.time > MinAbortTime) {\n for (let handler of query.context.abortListeners) {\n try {\n handler();\n }\n catch (e) {\n logException(this.view.state, e);\n }\n }\n query.context.abortListeners = null;\n this.running.splice(i--, 1);\n }\n else {\n query.updates.push(...update.transactions);\n }\n }\n if (this.debounceUpdate > -1)\n clearTimeout(this.debounceUpdate);\n if (update.transactions.some(tr => tr.effects.some(e => e.is(startCompletionEffect))))\n this.pendingStart = true;\n let delay = this.pendingStart ? 50 : conf.activateOnTypingDelay;\n this.debounceUpdate = cState.active.some(a => a.isPending && !this.running.some(q => q.active.source == a.source))\n ? setTimeout(() => this.startUpdate(), delay) : -1;\n if (this.composing != 0 /* CompositionState.None */)\n for (let tr of update.transactions) {\n if (tr.isUserEvent(\"input.type\"))\n this.composing = 2 /* CompositionState.Changed */;\n else if (this.composing == 2 /* CompositionState.Changed */ && tr.selection)\n this.composing = 3 /* CompositionState.ChangedAndMoved */;\n }\n }\n startUpdate() {\n this.debounceUpdate = -1;\n this.pendingStart = false;\n let { state } = this.view, cState = state.field(completionState);\n for (let active of cState.active) {\n if (active.isPending && !this.running.some(r => r.active.source == active.source))\n this.startQuery(active);\n }\n if (this.running.length && cState.open && cState.open.disabled)\n this.debounceAccept = setTimeout(() => this.accept(), this.view.state.facet(completionConfig).updateSyncTime);\n }\n startQuery(active) {\n let { state } = this.view, pos = cur(state);\n let context = new CompletionContext(state, pos, active.explicit, this.view);\n let pending = new RunningQuery(active, context);\n this.running.push(pending);\n Promise.resolve(active.source(context)).then(result => {\n if (!pending.context.aborted) {\n pending.done = result || null;\n this.scheduleAccept();\n }\n }, err => {\n this.view.dispatch({ effects: closeCompletionEffect.of(null) });\n logException(this.view.state, err);\n });\n }\n scheduleAccept() {\n if (this.running.every(q => q.done !== undefined))\n this.accept();\n else if (this.debounceAccept < 0)\n this.debounceAccept = setTimeout(() => this.accept(), this.view.state.facet(completionConfig).updateSyncTime);\n }\n // For each finished query in this.running, try to create a result\n // or, if appropriate, restart the query.\n accept() {\n var _a;\n if (this.debounceAccept > -1)\n clearTimeout(this.debounceAccept);\n this.debounceAccept = -1;\n let updated = [];\n let conf = this.view.state.facet(completionConfig), cState = this.view.state.field(completionState);\n for (let i = 0; i < this.running.length; i++) {\n let query = this.running[i];\n if (query.done === undefined)\n continue;\n this.running.splice(i--, 1);\n if (query.done) {\n let pos = cur(query.updates.length ? query.updates[0].startState : this.view.state);\n let limit = Math.min(pos, query.done.from + (query.active.explicit ? 0 : 1));\n let active = new ActiveResult(query.active.source, query.active.explicit, limit, query.done, query.done.from, (_a = query.done.to) !== null && _a !== void 0 ? _a : pos);\n // Replay the transactions that happened since the start of\n // the request and see if that preserves the result\n for (let tr of query.updates)\n active = active.update(tr, conf);\n if (active.hasResult()) {\n updated.push(active);\n continue;\n }\n }\n let current = cState.active.find(a => a.source == query.active.source);\n if (current && current.isPending) {\n if (query.done == null) {\n // Explicitly failed. Should clear the pending status if it\n // hasn't been re-set in the meantime.\n let active = new ActiveSource(query.active.source, 0 /* State.Inactive */);\n for (let tr of query.updates)\n active = active.update(tr, conf);\n if (!active.isPending)\n updated.push(active);\n }\n else {\n // Cleared by subsequent transactions. Restart.\n this.startQuery(current);\n }\n }\n }\n if (updated.length || cState.open && cState.open.disabled)\n this.view.dispatch({ effects: setActiveEffect.of(updated) });\n }\n}, {\n eventHandlers: {\n blur(event) {\n let state = this.view.state.field(completionState, false);\n if (state && state.tooltip && this.view.state.facet(completionConfig).closeOnBlur) {\n let dialog = state.open && getTooltip(this.view, state.open.tooltip);\n if (!dialog || !dialog.dom.contains(event.relatedTarget))\n setTimeout(() => this.view.dispatch({ effects: closeCompletionEffect.of(null) }), 10);\n }\n },\n compositionstart() {\n this.composing = 1 /* CompositionState.Started */;\n },\n compositionend() {\n if (this.composing == 3 /* CompositionState.ChangedAndMoved */) {\n // Safari fires compositionend events synchronously, possibly\n // from inside an update, so dispatch asynchronously to avoid reentrancy\n setTimeout(() => this.view.dispatch({ effects: startCompletionEffect.of(false) }), 20);\n }\n this.composing = 0 /* CompositionState.None */;\n }\n }\n});\nconst windows = typeof navigator == \"object\" && /*@__PURE__*//Win/.test(navigator.platform);\nconst commitCharacters = /*@__PURE__*/Prec.highest(/*@__PURE__*/EditorView.domEventHandlers({\n keydown(event, view) {\n let field = view.state.field(completionState, false);\n if (!field || !field.open || field.open.disabled || field.open.selected < 0 ||\n event.key.length > 1 || event.ctrlKey && !(windows && event.altKey) || event.metaKey)\n return false;\n let option = field.open.options[field.open.selected];\n let result = field.active.find(a => a.source == option.source);\n let commitChars = option.completion.commitCharacters || result.result.commitCharacters;\n if (commitChars && commitChars.indexOf(event.key) > -1)\n applyCompletion(view, option);\n return false;\n }\n}));\n\nconst baseTheme = /*@__PURE__*/EditorView.baseTheme({\n \".cm-tooltip.cm-tooltip-autocomplete\": {\n \"& > ul\": {\n fontFamily: \"monospace\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden auto\",\n maxWidth_fallback: \"700px\",\n maxWidth: \"min(700px, 95vw)\",\n minWidth: \"250px\",\n maxHeight: \"10em\",\n height: \"100%\",\n listStyle: \"none\",\n margin: 0,\n padding: 0,\n \"& > li, & > completion-section\": {\n padding: \"1px 3px\",\n lineHeight: 1.2\n },\n \"& > li\": {\n overflowX: \"hidden\",\n textOverflow: \"ellipsis\",\n cursor: \"pointer\"\n },\n \"& > completion-section\": {\n display: \"list-item\",\n borderBottom: \"1px solid silver\",\n paddingLeft: \"0.5em\",\n opacity: 0.7\n }\n }\n },\n \"&light .cm-tooltip-autocomplete ul li[aria-selected]\": {\n background: \"#17c\",\n color: \"white\",\n },\n \"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]\": {\n background: \"#777\",\n },\n \"&dark .cm-tooltip-autocomplete ul li[aria-selected]\": {\n background: \"#347\",\n color: \"white\",\n },\n \"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]\": {\n background: \"#444\",\n },\n \".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after\": {\n content: '\"\u00B7\u00B7\u00B7\"',\n opacity: 0.5,\n display: \"block\",\n textAlign: \"center\"\n },\n \".cm-tooltip.cm-completionInfo\": {\n position: \"absolute\",\n padding: \"3px 9px\",\n width: \"max-content\",\n maxWidth: `${400 /* Info.Width */}px`,\n boxSizing: \"border-box\",\n whiteSpace: \"pre-line\"\n },\n \".cm-completionInfo.cm-completionInfo-left\": { right: \"100%\" },\n \".cm-completionInfo.cm-completionInfo-right\": { left: \"100%\" },\n \".cm-completionInfo.cm-completionInfo-left-narrow\": { right: `${30 /* Info.Margin */}px` },\n \".cm-completionInfo.cm-completionInfo-right-narrow\": { left: `${30 /* Info.Margin */}px` },\n \"&light .cm-snippetField\": { backgroundColor: \"#00000022\" },\n \"&dark .cm-snippetField\": { backgroundColor: \"#ffffff22\" },\n \".cm-snippetFieldPosition\": {\n verticalAlign: \"text-top\",\n width: 0,\n height: \"1.15em\",\n display: \"inline-block\",\n margin: \"0 -0.7px -.7em\",\n borderLeft: \"1.4px dotted #888\"\n },\n \".cm-completionMatchedText\": {\n textDecoration: \"underline\"\n },\n \".cm-completionDetail\": {\n marginLeft: \"0.5em\",\n fontStyle: \"italic\"\n },\n \".cm-completionIcon\": {\n fontSize: \"90%\",\n width: \".8em\",\n display: \"inline-block\",\n textAlign: \"center\",\n paddingRight: \".6em\",\n opacity: \"0.6\",\n boxSizing: \"content-box\"\n },\n \".cm-completionIcon-function, .cm-completionIcon-method\": {\n \"&:after\": { content: \"'\u0192'\" }\n },\n \".cm-completionIcon-class\": {\n \"&:after\": { content: \"'\u25CB'\" }\n },\n \".cm-completionIcon-interface\": {\n \"&:after\": { content: \"'\u25CC'\" }\n },\n \".cm-completionIcon-variable\": {\n \"&:after\": { content: \"'\uD835\uDC65'\" }\n },\n \".cm-completionIcon-constant\": {\n \"&:after\": { content: \"'\uD835\uDC36'\" }\n },\n \".cm-completionIcon-type\": {\n \"&:after\": { content: \"'\uD835\uDC61'\" }\n },\n \".cm-completionIcon-enum\": {\n \"&:after\": { content: \"'\u222A'\" }\n },\n \".cm-completionIcon-property\": {\n \"&:after\": { content: \"'\u25A1'\" }\n },\n \".cm-completionIcon-keyword\": {\n \"&:after\": { content: \"'\uD83D\uDD11\\uFE0E'\" } // Disable emoji rendering\n },\n \".cm-completionIcon-namespace\": {\n \"&:after\": { content: \"'\u25A2'\" }\n },\n \".cm-completionIcon-text\": {\n \"&:after\": { content: \"'abc'\", fontSize: \"50%\", verticalAlign: \"middle\" }\n }\n});\n\nclass FieldPos {\n constructor(field, line, from, to) {\n this.field = field;\n this.line = line;\n this.from = from;\n this.to = to;\n }\n}\nclass FieldRange {\n constructor(field, from, to) {\n this.field = field;\n this.from = from;\n this.to = to;\n }\n map(changes) {\n let from = changes.mapPos(this.from, -1, MapMode.TrackDel);\n let to = changes.mapPos(this.to, 1, MapMode.TrackDel);\n return from == null || to == null ? null : new FieldRange(this.field, from, to);\n }\n}\nclass Snippet {\n constructor(lines, fieldPositions) {\n this.lines = lines;\n this.fieldPositions = fieldPositions;\n }\n instantiate(state, pos) {\n let text = [], lineStart = [pos];\n let lineObj = state.doc.lineAt(pos), baseIndent = /^\\s*/.exec(lineObj.text)[0];\n for (let line of this.lines) {\n if (text.length) {\n let indent = baseIndent, tabs = /^\\t*/.exec(line)[0].length;\n for (let i = 0; i < tabs; i++)\n indent += state.facet(indentUnit);\n lineStart.push(pos + indent.length - tabs);\n line = indent + line.slice(tabs);\n }\n text.push(line);\n pos += line.length + 1;\n }\n let ranges = this.fieldPositions.map(pos => new FieldRange(pos.field, lineStart[pos.line] + pos.from, lineStart[pos.line] + pos.to));\n return { text, ranges };\n }\n static parse(template) {\n let fields = [];\n let lines = [], positions = [], m;\n for (let line of template.split(/\\r\\n?|\\n/)) {\n while (m = /[#$]\\{(?:(\\d+)(?::([^{}]*))?|((?:\\\\[{}]|[^{}])*))\\}/.exec(line)) {\n let seq = m[1] ? +m[1] : null, rawName = m[2] || m[3] || \"\", found = -1;\n let name = rawName.replace(/\\\\[{}]/g, m => m[1]);\n for (let i = 0; i < fields.length; i++) {\n if (seq != null ? fields[i].seq == seq : name ? fields[i].name == name : false)\n found = i;\n }\n if (found < 0) {\n let i = 0;\n while (i < fields.length && (seq == null || (fields[i].seq != null && fields[i].seq < seq)))\n i++;\n fields.splice(i, 0, { seq, name });\n found = i;\n for (let pos of positions)\n if (pos.field >= found)\n pos.field++;\n }\n for (let pos of positions)\n if (pos.line == lines.length && pos.from > m.index) {\n let snip = m[2] ? 3 + (m[1] || \"\").length : 2;\n pos.from -= snip;\n pos.to -= snip;\n }\n positions.push(new FieldPos(found, lines.length, m.index, m.index + name.length));\n line = line.slice(0, m.index) + rawName + line.slice(m.index + m[0].length);\n }\n line = line.replace(/\\\\([{}])/g, (_, brace, index) => {\n for (let pos of positions)\n if (pos.line == lines.length && pos.from > index) {\n pos.from--;\n pos.to--;\n }\n return brace;\n });\n lines.push(line);\n }\n return new Snippet(lines, positions);\n }\n}\nlet fieldMarker = /*@__PURE__*/Decoration.widget({ widget: /*@__PURE__*/new class extends WidgetType {\n toDOM() {\n let span = document.createElement(\"span\");\n span.className = \"cm-snippetFieldPosition\";\n return span;\n }\n ignoreEvent() { return false; }\n } });\nlet fieldRange = /*@__PURE__*/Decoration.mark({ class: \"cm-snippetField\" });\nclass ActiveSnippet {\n constructor(ranges, active) {\n this.ranges = ranges;\n this.active = active;\n this.deco = Decoration.set(ranges.map(r => (r.from == r.to ? fieldMarker : fieldRange).range(r.from, r.to)), true);\n }\n map(changes) {\n let ranges = [];\n for (let r of this.ranges) {\n let mapped = r.map(changes);\n if (!mapped)\n return null;\n ranges.push(mapped);\n }\n return new ActiveSnippet(ranges, this.active);\n }\n selectionInsideField(sel) {\n return sel.ranges.every(range => this.ranges.some(r => r.field == this.active && r.from <= range.from && r.to >= range.to));\n }\n}\nconst setActive = /*@__PURE__*/StateEffect.define({\n map(value, changes) { return value && value.map(changes); }\n});\nconst moveToField = /*@__PURE__*/StateEffect.define();\nconst snippetState = /*@__PURE__*/StateField.define({\n create() { return null; },\n update(value, tr) {\n for (let effect of tr.effects) {\n if (effect.is(setActive))\n return effect.value;\n if (effect.is(moveToField) && value)\n return new ActiveSnippet(value.ranges, effect.value);\n }\n if (value && tr.docChanged)\n value = value.map(tr.changes);\n if (value && tr.selection && !value.selectionInsideField(tr.selection))\n value = null;\n return value;\n },\n provide: f => EditorView.decorations.from(f, val => val ? val.deco : Decoration.none)\n});\nfunction fieldSelection(ranges, field) {\n return EditorSelection.create(ranges.filter(r => r.field == field).map(r => EditorSelection.range(r.from, r.to)));\n}\n/**\nConvert a snippet template to a function that can\n[apply](https://codemirror.net/6/docs/ref/#autocomplete.Completion.apply) it. Snippets are written\nusing syntax like this:\n\n \"for (let ${index} = 0; ${index} < ${end}; ${index}++) {\\n\\t${}\\n}\"\n\nEach `${}` placeholder (you may also use `#{}`) indicates a field\nthat the user can fill in. Its name, if any, will be the default\ncontent for the field.\n\nWhen the snippet is activated by calling the returned function,\nthe code is inserted at the given position. Newlines in the\ntemplate are indented by the indentation of the start line, plus\none [indent unit](https://codemirror.net/6/docs/ref/#language.indentUnit) per tab character after\nthe newline.\n\nOn activation, (all instances of) the first field are selected.\nThe user can move between fields with Tab and Shift-Tab as long as\nthe fields are active. Moving to the last field or moving the\ncursor out of the current field deactivates the fields.\n\nThe order of fields defaults to textual order, but you can add\nnumbers to placeholders (`${1}` or `${1:defaultText}`) to provide\na custom order.\n\nTo include a literal `{` or `}` in your template, put a backslash\nin front of it. This will be removed and the brace will not be\ninterpreted as indicating a placeholder.\n*/\nfunction snippet(template) {\n let snippet = Snippet.parse(template);\n return (editor, completion, from, to) => {\n let { text, ranges } = snippet.instantiate(editor.state, from);\n let { main } = editor.state.selection;\n let spec = {\n changes: { from, to: to == main.from ? main.to : to, insert: Text.of(text) },\n scrollIntoView: true,\n annotations: completion ? [pickedCompletion.of(completion), Transaction.userEvent.of(\"input.complete\")] : undefined\n };\n if (ranges.length)\n spec.selection = fieldSelection(ranges, 0);\n if (ranges.some(r => r.field > 0)) {\n let active = new ActiveSnippet(ranges, 0);\n let effects = spec.effects = [setActive.of(active)];\n if (editor.state.field(snippetState, false) === undefined)\n effects.push(StateEffect.appendConfig.of([snippetState, addSnippetKeymap, snippetPointerHandler, baseTheme]));\n }\n editor.dispatch(editor.state.update(spec));\n };\n}\nfunction moveField(dir) {\n return ({ state, dispatch }) => {\n let active = state.field(snippetState, false);\n if (!active || dir < 0 && active.active == 0)\n return false;\n let next = active.active + dir, last = dir > 0 && !active.ranges.some(r => r.field == next + dir);\n dispatch(state.update({\n selection: fieldSelection(active.ranges, next),\n effects: setActive.of(last ? null : new ActiveSnippet(active.ranges, next)),\n scrollIntoView: true\n }));\n return true;\n };\n}\n/**\nA command that clears the active snippet, if any.\n*/\nconst clearSnippet = ({ state, dispatch }) => {\n let active = state.field(snippetState, false);\n if (!active)\n return false;\n dispatch(state.update({ effects: setActive.of(null) }));\n return true;\n};\n/**\nMove to the next snippet field, if available.\n*/\nconst nextSnippetField = /*@__PURE__*/moveField(1);\n/**\nMove to the previous snippet field, if available.\n*/\nconst prevSnippetField = /*@__PURE__*/moveField(-1);\n/**\nCheck if there is an active snippet with a next field for\n`nextSnippetField` to move to.\n*/\nfunction hasNextSnippetField(state) {\n let active = state.field(snippetState, false);\n return !!(active && active.ranges.some(r => r.field == active.active + 1));\n}\n/**\nReturns true if there is an active snippet and a previous field\nfor `prevSnippetField` to move to.\n*/\nfunction hasPrevSnippetField(state) {\n let active = state.field(snippetState, false);\n return !!(active && active.active > 0);\n}\nconst defaultSnippetKeymap = [\n { key: \"Tab\", run: nextSnippetField, shift: prevSnippetField },\n { key: \"Escape\", run: clearSnippet }\n];\n/**\nA facet that can be used to configure the key bindings used by\nsnippets. The default binds Tab to\n[`nextSnippetField`](https://codemirror.net/6/docs/ref/#autocomplete.nextSnippetField), Shift-Tab to\n[`prevSnippetField`](https://codemirror.net/6/docs/ref/#autocomplete.prevSnippetField), and Escape\nto [`clearSnippet`](https://codemirror.net/6/docs/ref/#autocomplete.clearSnippet).\n*/\nconst snippetKeymap = /*@__PURE__*/Facet.define({\n combine(maps) { return maps.length ? maps[0] : defaultSnippetKeymap; }\n});\nconst addSnippetKeymap = /*@__PURE__*/Prec.highest(/*@__PURE__*/keymap.compute([snippetKeymap], state => state.facet(snippetKeymap)));\n/**\nCreate a completion from a snippet. Returns an object with the\nproperties from `completion`, plus an `apply` function that\napplies the snippet.\n*/\nfunction snippetCompletion(template, completion) {\n return { ...completion, apply: snippet(template) };\n}\nconst snippetPointerHandler = /*@__PURE__*/EditorView.domEventHandlers({\n mousedown(event, view) {\n let active = view.state.field(snippetState, false), pos;\n if (!active || (pos = view.posAtCoords({ x: event.clientX, y: event.clientY })) == null)\n return false;\n let match = active.ranges.find(r => r.from <= pos && r.to >= pos);\n if (!match || match.field == active.active)\n return false;\n view.dispatch({\n selection: fieldSelection(active.ranges, match.field),\n effects: setActive.of(active.ranges.some(r => r.field > match.field)\n ? new ActiveSnippet(active.ranges, match.field) : null),\n scrollIntoView: true\n });\n return true;\n }\n});\n\nfunction wordRE(wordChars) {\n let escaped = wordChars.replace(/[\\]\\-\\\\]/g, \"\\\\$&\");\n try {\n return new RegExp(`[\\\\p{Alphabetic}\\\\p{Number}_${escaped}]+`, \"ug\");\n }\n catch (_a) {\n return new RegExp(`[\\w${escaped}]`, \"g\");\n }\n}\nfunction mapRE(re, f) {\n return new RegExp(f(re.source), re.unicode ? \"u\" : \"\");\n}\nconst wordCaches = /*@__PURE__*/Object.create(null);\nfunction wordCache(wordChars) {\n return wordCaches[wordChars] || (wordCaches[wordChars] = new WeakMap);\n}\nfunction storeWords(doc, wordRE, result, seen, ignoreAt) {\n for (let lines = doc.iterLines(), pos = 0; !lines.next().done;) {\n let { value } = lines, m;\n wordRE.lastIndex = 0;\n while (m = wordRE.exec(value)) {\n if (!seen[m[0]] && pos + m.index != ignoreAt) {\n result.push({ type: \"text\", label: m[0] });\n seen[m[0]] = true;\n if (result.length >= 2000 /* C.MaxList */)\n return;\n }\n }\n pos += value.length + 1;\n }\n}\nfunction collectWords(doc, cache, wordRE, to, ignoreAt) {\n let big = doc.length >= 1000 /* C.MinCacheLen */;\n let cached = big && cache.get(doc);\n if (cached)\n return cached;\n let result = [], seen = Object.create(null);\n if (doc.children) {\n let pos = 0;\n for (let ch of doc.children) {\n if (ch.length >= 1000 /* C.MinCacheLen */) {\n for (let c of collectWords(ch, cache, wordRE, to - pos, ignoreAt - pos)) {\n if (!seen[c.label]) {\n seen[c.label] = true;\n result.push(c);\n }\n }\n }\n else {\n storeWords(ch, wordRE, result, seen, ignoreAt - pos);\n }\n pos += ch.length + 1;\n }\n }\n else {\n storeWords(doc, wordRE, result, seen, ignoreAt);\n }\n if (big && result.length < 2000 /* C.MaxList */)\n cache.set(doc, result);\n return result;\n}\n/**\nA completion source that will scan the document for words (using a\n[character categorizer](https://codemirror.net/6/docs/ref/#state.EditorState.charCategorizer)), and\nreturn those as completions.\n*/\nconst completeAnyWord = context => {\n let wordChars = context.state.languageDataAt(\"wordChars\", context.pos).join(\"\");\n let re = wordRE(wordChars);\n let token = context.matchBefore(mapRE(re, s => s + \"$\"));\n if (!token && !context.explicit)\n return null;\n let from = token ? token.from : context.pos;\n let options = collectWords(context.state.doc, wordCache(wordChars), re, 50000 /* C.Range */, from);\n return { from, options, validFor: mapRE(re, s => \"^\" + s) };\n};\n\nconst defaults = {\n brackets: [\"(\", \"[\", \"{\", \"'\", '\"'],\n before: \")]}:;>\",\n stringPrefixes: []\n};\nconst closeBracketEffect = /*@__PURE__*/StateEffect.define({\n map(value, mapping) {\n let mapped = mapping.mapPos(value, -1, MapMode.TrackAfter);\n return mapped == null ? undefined : mapped;\n }\n});\nconst closedBracket = /*@__PURE__*/new class extends RangeValue {\n};\nclosedBracket.startSide = 1;\nclosedBracket.endSide = -1;\nconst bracketState = /*@__PURE__*/StateField.define({\n create() { return RangeSet.empty; },\n update(value, tr) {\n value = value.map(tr.changes);\n if (tr.selection) {\n let line = tr.state.doc.lineAt(tr.selection.main.head);\n value = value.update({ filter: from => from >= line.from && from <= line.to });\n }\n for (let effect of tr.effects)\n if (effect.is(closeBracketEffect))\n value = value.update({ add: [closedBracket.range(effect.value, effect.value + 1)] });\n return value;\n }\n});\n/**\nExtension to enable bracket-closing behavior. When a closeable\nbracket is typed, its closing bracket is immediately inserted\nafter the cursor. When closing a bracket directly in front of a\nclosing bracket inserted by the extension, the cursor moves over\nthat bracket.\n*/\nfunction closeBrackets() {\n return [inputHandler, bracketState];\n}\nconst definedClosing = \"()[]{}<>\u00AB\u00BB\u00BB\u00AB\uFF3B\uFF3D\uFF5B\uFF5D\";\nfunction closing(ch) {\n for (let i = 0; i < definedClosing.length; i += 2)\n if (definedClosing.charCodeAt(i) == ch)\n return definedClosing.charAt(i + 1);\n return fromCodePoint(ch < 128 ? ch : ch + 1);\n}\nfunction config(state, pos) {\n return state.languageDataAt(\"closeBrackets\", pos)[0] || defaults;\n}\nconst android = typeof navigator == \"object\" && /*@__PURE__*//Android\\b/.test(navigator.userAgent);\nconst inputHandler = /*@__PURE__*/EditorView.inputHandler.of((view, from, to, insert) => {\n if ((android ? view.composing : view.compositionStarted) || view.state.readOnly)\n return false;\n let sel = view.state.selection.main;\n if (insert.length > 2 || insert.length == 2 && codePointSize(codePointAt(insert, 0)) == 1 ||\n from != sel.from || to != sel.to)\n return false;\n let tr = insertBracket(view.state, insert);\n if (!tr)\n return false;\n view.dispatch(tr);\n return true;\n});\n/**\nCommand that implements deleting a pair of matching brackets when\nthe cursor is between them.\n*/\nconst deleteBracketPair = ({ state, dispatch }) => {\n if (state.readOnly)\n return false;\n let conf = config(state, state.selection.main.head);\n let tokens = conf.brackets || defaults.brackets;\n let dont = null, changes = state.changeByRange(range => {\n if (range.empty) {\n let before = prevChar(state.doc, range.head);\n for (let token of tokens) {\n if (token == before && nextChar(state.doc, range.head) == closing(codePointAt(token, 0)))\n return { changes: { from: range.head - token.length, to: range.head + token.length },\n range: EditorSelection.cursor(range.head - token.length) };\n }\n }\n return { range: dont = range };\n });\n if (!dont)\n dispatch(state.update(changes, { scrollIntoView: true, userEvent: \"delete.backward\" }));\n return !dont;\n};\n/**\nClose-brackets related key bindings. Binds Backspace to\n[`deleteBracketPair`](https://codemirror.net/6/docs/ref/#autocomplete.deleteBracketPair).\n*/\nconst closeBracketsKeymap = [\n { key: \"Backspace\", run: deleteBracketPair }\n];\n/**\nImplements the extension's behavior on text insertion. If the\ngiven string counts as a bracket in the language around the\nselection, and replacing the selection with it requires custom\nbehavior (inserting a closing version or skipping past a\npreviously-closed bracket), this function returns a transaction\nrepresenting that custom behavior. (You only need this if you want\nto programmatically insert brackets\u2014the\n[`closeBrackets`](https://codemirror.net/6/docs/ref/#autocomplete.closeBrackets) extension will\ntake care of running this for user input.)\n*/\nfunction insertBracket(state, bracket) {\n let conf = config(state, state.selection.main.head);\n let tokens = conf.brackets || defaults.brackets;\n for (let tok of tokens) {\n let closed = closing(codePointAt(tok, 0));\n if (bracket == tok)\n return closed == tok ? handleSame(state, tok, tokens.indexOf(tok + tok + tok) > -1, conf)\n : handleOpen(state, tok, closed, conf.before || defaults.before);\n if (bracket == closed && closedBracketAt(state, state.selection.main.from))\n return handleClose(state, tok, closed);\n }\n return null;\n}\nfunction closedBracketAt(state, pos) {\n let found = false;\n state.field(bracketState).between(0, state.doc.length, from => {\n if (from == pos)\n found = true;\n });\n return found;\n}\nfunction nextChar(doc, pos) {\n let next = doc.sliceString(pos, pos + 2);\n return next.slice(0, codePointSize(codePointAt(next, 0)));\n}\nfunction prevChar(doc, pos) {\n let prev = doc.sliceString(pos - 2, pos);\n return codePointSize(codePointAt(prev, 0)) == prev.length ? prev : prev.slice(1);\n}\nfunction handleOpen(state, open, close, closeBefore) {\n let dont = null, changes = state.changeByRange(range => {\n if (!range.empty)\n return { changes: [{ insert: open, from: range.from }, { insert: close, from: range.to }],\n effects: closeBracketEffect.of(range.to + open.length),\n range: EditorSelection.range(range.anchor + open.length, range.head + open.length) };\n let next = nextChar(state.doc, range.head);\n if (!next || /\\s/.test(next) || closeBefore.indexOf(next) > -1)\n return { changes: { insert: open + close, from: range.head },\n effects: closeBracketEffect.of(range.head + open.length),\n range: EditorSelection.cursor(range.head + open.length) };\n return { range: dont = range };\n });\n return dont ? null : state.update(changes, {\n scrollIntoView: true,\n userEvent: \"input.type\"\n });\n}\nfunction handleClose(state, _open, close) {\n let dont = null, changes = state.changeByRange(range => {\n if (range.empty && nextChar(state.doc, range.head) == close)\n return { changes: { from: range.head, to: range.head + close.length, insert: close },\n range: EditorSelection.cursor(range.head + close.length) };\n return dont = { range };\n });\n return dont ? null : state.update(changes, {\n scrollIntoView: true,\n userEvent: \"input.type\"\n });\n}\n// Handles cases where the open and close token are the same, and\n// possibly triple quotes (as in `\"\"\"abc\"\"\"`-style quoting).\nfunction handleSame(state, token, allowTriple, config) {\n let stringPrefixes = config.stringPrefixes || defaults.stringPrefixes;\n let dont = null, changes = state.changeByRange(range => {\n if (!range.empty)\n return { changes: [{ insert: token, from: range.from }, { insert: token, from: range.to }],\n effects: closeBracketEffect.of(range.to + token.length),\n range: EditorSelection.range(range.anchor + token.length, range.head + token.length) };\n let pos = range.head, next = nextChar(state.doc, pos), start;\n if (next == token) {\n if (nodeStart(state, pos)) {\n return { changes: { insert: token + token, from: pos },\n effects: closeBracketEffect.of(pos + token.length),\n range: EditorSelection.cursor(pos + token.length) };\n }\n else if (closedBracketAt(state, pos)) {\n let isTriple = allowTriple && state.sliceDoc(pos, pos + token.length * 3) == token + token + token;\n let content = isTriple ? token + token + token : token;\n return { changes: { from: pos, to: pos + content.length, insert: content },\n range: EditorSelection.cursor(pos + content.length) };\n }\n }\n else if (allowTriple && state.sliceDoc(pos - 2 * token.length, pos) == token + token &&\n (start = canStartStringAt(state, pos - 2 * token.length, stringPrefixes)) > -1 &&\n nodeStart(state, start)) {\n return { changes: { insert: token + token + token + token, from: pos },\n effects: closeBracketEffect.of(pos + token.length),\n range: EditorSelection.cursor(pos + token.length) };\n }\n else if (state.charCategorizer(pos)(next) != CharCategory.Word) {\n if (canStartStringAt(state, pos, stringPrefixes) > -1 && !probablyInString(state, pos, token, stringPrefixes))\n return { changes: { insert: token + token, from: pos },\n effects: closeBracketEffect.of(pos + token.length),\n range: EditorSelection.cursor(pos + token.length) };\n }\n return { range: dont = range };\n });\n return dont ? null : state.update(changes, {\n scrollIntoView: true,\n userEvent: \"input.type\"\n });\n}\nfunction nodeStart(state, pos) {\n let tree = syntaxTree(state).resolveInner(pos + 1);\n return tree.parent && tree.from == pos;\n}\nfunction probablyInString(state, pos, quoteToken, prefixes) {\n let node = syntaxTree(state).resolveInner(pos, -1);\n let maxPrefix = prefixes.reduce((m, p) => Math.max(m, p.length), 0);\n for (let i = 0; i < 5; i++) {\n let start = state.sliceDoc(node.from, Math.min(node.to, node.from + quoteToken.length + maxPrefix));\n let quotePos = start.indexOf(quoteToken);\n if (!quotePos || quotePos > -1 && prefixes.indexOf(start.slice(0, quotePos)) > -1) {\n let first = node.firstChild;\n while (first && first.from == node.from && first.to - first.from > quoteToken.length + quotePos) {\n if (state.sliceDoc(first.to - quoteToken.length, first.to) == quoteToken)\n return false;\n first = first.firstChild;\n }\n return true;\n }\n let parent = node.to == pos && node.parent;\n if (!parent)\n break;\n node = parent;\n }\n return false;\n}\nfunction canStartStringAt(state, pos, prefixes) {\n let charCat = state.charCategorizer(pos);\n if (charCat(state.sliceDoc(pos - 1, pos)) != CharCategory.Word)\n return pos;\n for (let prefix of prefixes) {\n let start = pos - prefix.length;\n if (state.sliceDoc(start, pos) == prefix && charCat(state.sliceDoc(start - 1, start)) != CharCategory.Word)\n return start;\n }\n return -1;\n}\n\n/**\nReturns an extension that enables autocompletion.\n*/\nfunction autocompletion(config = {}) {\n return [\n commitCharacters,\n completionState,\n completionConfig.of(config),\n completionPlugin,\n completionKeymapExt,\n baseTheme\n ];\n}\n/**\nBasic keybindings for autocompletion.\n\n - Ctrl-Space (and Alt-\\` or Alt-i on macOS): [`startCompletion`](https://codemirror.net/6/docs/ref/#autocomplete.startCompletion)\n - Escape: [`closeCompletion`](https://codemirror.net/6/docs/ref/#autocomplete.closeCompletion)\n - ArrowDown: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(true)`\n - ArrowUp: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(false)`\n - PageDown: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(true, \"page\")`\n - PageUp: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(false, \"page\")`\n - Enter: [`acceptCompletion`](https://codemirror.net/6/docs/ref/#autocomplete.acceptCompletion)\n*/\nconst completionKeymap = [\n { key: \"Ctrl-Space\", run: startCompletion },\n { mac: \"Alt-`\", run: startCompletion },\n { mac: \"Alt-i\", run: startCompletion },\n { key: \"Escape\", run: closeCompletion },\n { key: \"ArrowDown\", run: /*@__PURE__*/moveCompletionSelection(true) },\n { key: \"ArrowUp\", run: /*@__PURE__*/moveCompletionSelection(false) },\n { key: \"PageDown\", run: /*@__PURE__*/moveCompletionSelection(true, \"page\") },\n { key: \"PageUp\", run: /*@__PURE__*/moveCompletionSelection(false, \"page\") },\n { key: \"Enter\", run: acceptCompletion }\n];\nconst completionKeymapExt = /*@__PURE__*/Prec.highest(/*@__PURE__*/keymap.computeN([completionConfig], state => state.facet(completionConfig).defaultKeymap ? [completionKeymap] : []));\n/**\nGet the current completion status. When completions are available,\nthis will return `\"active\"`. When completions are pending (in the\nprocess of being queried), this returns `\"pending\"`. Otherwise, it\nreturns `null`.\n*/\nfunction completionStatus(state) {\n let cState = state.field(completionState, false);\n return cState && cState.active.some(a => a.isPending) ? \"pending\"\n : cState && cState.active.some(a => a.state != 0 /* State.Inactive */) ? \"active\" : null;\n}\nconst completionArrayCache = /*@__PURE__*/new WeakMap;\n/**\nReturns the available completions as an array.\n*/\nfunction currentCompletions(state) {\n var _a;\n let open = (_a = state.field(completionState, false)) === null || _a === void 0 ? void 0 : _a.open;\n if (!open || open.disabled)\n return [];\n let completions = completionArrayCache.get(open.options);\n if (!completions)\n completionArrayCache.set(open.options, completions = open.options.map(o => o.completion));\n return completions;\n}\n/**\nReturn the currently selected completion, if any.\n*/\nfunction selectedCompletion(state) {\n var _a;\n let open = (_a = state.field(completionState, false)) === null || _a === void 0 ? void 0 : _a.open;\n return open && !open.disabled && open.selected >= 0 ? open.options[open.selected].completion : null;\n}\n/**\nReturns the currently selected position in the active completion\nlist, or null if no completions are active.\n*/\nfunction selectedCompletionIndex(state) {\n var _a;\n let open = (_a = state.field(completionState, false)) === null || _a === void 0 ? void 0 : _a.open;\n return open && !open.disabled && open.selected >= 0 ? open.selected : null;\n}\n/**\nCreate an effect that can be attached to a transaction to change\nthe currently selected completion.\n*/\nfunction setSelectedCompletion(index) {\n return setSelectedEffect.of(index);\n}\n\nexport { CompletionContext, acceptCompletion, autocompletion, clearSnippet, closeBrackets, closeBracketsKeymap, closeCompletion, completeAnyWord, completeFromList, completionKeymap, completionStatus, currentCompletions, deleteBracketPair, hasNextSnippetField, hasPrevSnippetField, ifIn, ifNotIn, insertBracket, insertCompletionText, moveCompletionSelection, nextSnippetField, pickedCompletion, prevSnippetField, selectedCompletion, selectedCompletionIndex, setSelectedCompletion, snippet, snippetCompletion, snippetKeymap, startCompletion };\n", "import { Decoration, showPanel, EditorView, ViewPlugin, gutter, showTooltip, hoverTooltip, getPanel, logException, WidgetType, GutterMarker } from '@codemirror/view';\nimport { StateEffect, StateField, Facet, combineConfig, RangeSet, RangeSetBuilder } from '@codemirror/state';\nimport elt from 'crelt';\n\nclass SelectedDiagnostic {\n constructor(from, to, diagnostic) {\n this.from = from;\n this.to = to;\n this.diagnostic = diagnostic;\n }\n}\nclass LintState {\n constructor(diagnostics, panel, selected) {\n this.diagnostics = diagnostics;\n this.panel = panel;\n this.selected = selected;\n }\n static init(diagnostics, panel, state) {\n // Filter the list of diagnostics for which to create markers\n let diagnosticFilter = state.facet(lintConfig).markerFilter;\n if (diagnosticFilter)\n diagnostics = diagnosticFilter(diagnostics, state);\n let sorted = diagnostics.slice().sort((a, b) => a.from - b.from || a.to - b.to);\n let deco = new RangeSetBuilder(), active = [], pos = 0;\n let scan = state.doc.iter(), scanPos = 0, docLen = state.doc.length;\n for (let i = 0;;) {\n let next = i == sorted.length ? null : sorted[i];\n if (!next && !active.length)\n break;\n let from, to;\n if (active.length) {\n from = pos;\n to = active.reduce((p, d) => Math.min(p, d.to), next && next.from > from ? next.from : 1e8);\n }\n else {\n from = next.from;\n if (from > docLen)\n break;\n to = next.to;\n active.push(next);\n i++;\n }\n while (i < sorted.length) {\n let next = sorted[i];\n if (next.from == from && (next.to > next.from || next.to == from)) {\n active.push(next);\n i++;\n to = Math.min(next.to, to);\n }\n else {\n to = Math.min(next.from, to);\n break;\n }\n }\n to = Math.min(to, docLen);\n let widget = false;\n if (active.some(d => d.from == from && (d.to == to || to == docLen))) {\n widget = from == to;\n if (!widget && to - from < 10) {\n let behind = from - (scanPos + scan.value.length);\n if (behind > 0) {\n scan.next(behind);\n scanPos = from;\n }\n for (let check = from;;) {\n if (check >= to) {\n widget = true;\n break;\n }\n if (!scan.lineBreak && scanPos + scan.value.length > check)\n break;\n check = scanPos + scan.value.length;\n scanPos += scan.value.length;\n scan.next();\n }\n }\n }\n let sev = maxSeverity(active);\n if (widget) {\n deco.add(from, from, Decoration.widget({\n widget: new DiagnosticWidget(sev),\n diagnostics: active.slice()\n }));\n }\n else {\n let markClass = active.reduce((c, d) => d.markClass ? c + \" \" + d.markClass : c, \"\");\n deco.add(from, to, Decoration.mark({\n class: \"cm-lintRange cm-lintRange-\" + sev + markClass,\n diagnostics: active.slice(),\n inclusiveEnd: active.some(a => a.to > to)\n }));\n }\n pos = to;\n if (pos == docLen)\n break;\n for (let i = 0; i < active.length; i++)\n if (active[i].to <= pos)\n active.splice(i--, 1);\n }\n let set = deco.finish();\n return new LintState(set, panel, findDiagnostic(set));\n }\n}\nfunction findDiagnostic(diagnostics, diagnostic = null, after = 0) {\n let found = null;\n diagnostics.between(after, 1e9, (from, to, { spec }) => {\n if (diagnostic && spec.diagnostics.indexOf(diagnostic) < 0)\n return;\n if (!found)\n found = new SelectedDiagnostic(from, to, diagnostic || spec.diagnostics[0]);\n else if (spec.diagnostics.indexOf(found.diagnostic) < 0)\n return false;\n else\n found = new SelectedDiagnostic(found.from, to, found.diagnostic);\n });\n return found;\n}\nfunction hideTooltip(tr, tooltip) {\n let from = tooltip.pos, to = tooltip.end || from;\n let result = tr.state.facet(lintConfig).hideOn(tr, from, to);\n if (result != null)\n return result;\n let line = tr.startState.doc.lineAt(tooltip.pos);\n return !!(tr.effects.some(e => e.is(setDiagnosticsEffect)) || tr.changes.touchesRange(line.from, Math.max(line.to, to)));\n}\nfunction maybeEnableLint(state, effects) {\n return state.field(lintState, false) ? effects : effects.concat(StateEffect.appendConfig.of(lintExtensions));\n}\n/**\nReturns a transaction spec which updates the current set of\ndiagnostics, and enables the lint extension if if wasn't already\nactive.\n*/\nfunction setDiagnostics(state, diagnostics) {\n return {\n effects: maybeEnableLint(state, [setDiagnosticsEffect.of(diagnostics)])\n };\n}\n/**\nThe state effect that updates the set of active diagnostics. Can\nbe useful when writing an extension that needs to track these.\n*/\nconst setDiagnosticsEffect = /*@__PURE__*/StateEffect.define();\nconst togglePanel = /*@__PURE__*/StateEffect.define();\nconst movePanelSelection = /*@__PURE__*/StateEffect.define();\nconst lintState = /*@__PURE__*/StateField.define({\n create() {\n return new LintState(Decoration.none, null, null);\n },\n update(value, tr) {\n if (tr.docChanged && value.diagnostics.size) {\n let mapped = value.diagnostics.map(tr.changes), selected = null, panel = value.panel;\n if (value.selected) {\n let selPos = tr.changes.mapPos(value.selected.from, 1);\n selected = findDiagnostic(mapped, value.selected.diagnostic, selPos) || findDiagnostic(mapped, null, selPos);\n }\n if (!mapped.size && panel && tr.state.facet(lintConfig).autoPanel)\n panel = null;\n value = new LintState(mapped, panel, selected);\n }\n for (let effect of tr.effects) {\n if (effect.is(setDiagnosticsEffect)) {\n let panel = !tr.state.facet(lintConfig).autoPanel ? value.panel : effect.value.length ? LintPanel.open : null;\n value = LintState.init(effect.value, panel, tr.state);\n }\n else if (effect.is(togglePanel)) {\n value = new LintState(value.diagnostics, effect.value ? LintPanel.open : null, value.selected);\n }\n else if (effect.is(movePanelSelection)) {\n value = new LintState(value.diagnostics, value.panel, effect.value);\n }\n }\n return value;\n },\n provide: f => [showPanel.from(f, val => val.panel),\n EditorView.decorations.from(f, s => s.diagnostics)]\n});\n/**\nReturns the number of active lint diagnostics in the given state.\n*/\nfunction diagnosticCount(state) {\n let lint = state.field(lintState, false);\n return lint ? lint.diagnostics.size : 0;\n}\nconst activeMark = /*@__PURE__*/Decoration.mark({ class: \"cm-lintRange cm-lintRange-active\" });\nfunction lintTooltip(view, pos, side) {\n let { diagnostics } = view.state.field(lintState);\n let found, start = -1, end = -1;\n diagnostics.between(pos - (side < 0 ? 1 : 0), pos + (side > 0 ? 1 : 0), (from, to, { spec }) => {\n if (pos >= from && pos <= to &&\n (from == to || ((pos > from || side > 0) && (pos < to || side < 0)))) {\n found = spec.diagnostics;\n start = from;\n end = to;\n return false;\n }\n });\n let diagnosticFilter = view.state.facet(lintConfig).tooltipFilter;\n if (found && diagnosticFilter)\n found = diagnosticFilter(found, view.state);\n if (!found)\n return null;\n return {\n pos: start,\n end: end,\n above: view.state.doc.lineAt(start).to < end,\n create() {\n return { dom: diagnosticsTooltip(view, found) };\n }\n };\n}\nfunction diagnosticsTooltip(view, diagnostics) {\n return elt(\"ul\", { class: \"cm-tooltip-lint\" }, diagnostics.map(d => renderDiagnostic(view, d, false)));\n}\n/**\nCommand to open and focus the lint panel.\n*/\nconst openLintPanel = (view) => {\n let field = view.state.field(lintState, false);\n if (!field || !field.panel)\n view.dispatch({ effects: maybeEnableLint(view.state, [togglePanel.of(true)]) });\n let panel = getPanel(view, LintPanel.open);\n if (panel)\n panel.dom.querySelector(\".cm-panel-lint ul\").focus();\n return true;\n};\n/**\nCommand to close the lint panel, when open.\n*/\nconst closeLintPanel = (view) => {\n let field = view.state.field(lintState, false);\n if (!field || !field.panel)\n return false;\n view.dispatch({ effects: togglePanel.of(false) });\n return true;\n};\n/**\nMove the selection to the next diagnostic.\n*/\nconst nextDiagnostic = (view) => {\n let field = view.state.field(lintState, false);\n if (!field)\n return false;\n let sel = view.state.selection.main, next = field.diagnostics.iter(sel.to + 1);\n if (!next.value) {\n next = field.diagnostics.iter(0);\n if (!next.value || next.from == sel.from && next.to == sel.to)\n return false;\n }\n view.dispatch({ selection: { anchor: next.from, head: next.to }, scrollIntoView: true });\n return true;\n};\n/**\nMove the selection to the previous diagnostic.\n*/\nconst previousDiagnostic = (view) => {\n let { state } = view, field = state.field(lintState, false);\n if (!field)\n return false;\n let sel = state.selection.main;\n let prevFrom, prevTo, lastFrom, lastTo;\n field.diagnostics.between(0, state.doc.length, (from, to) => {\n if (to < sel.to && (prevFrom == null || prevFrom < from)) {\n prevFrom = from;\n prevTo = to;\n }\n if (lastFrom == null || from > lastFrom) {\n lastFrom = from;\n lastTo = to;\n }\n });\n if (lastFrom == null || prevFrom == null && lastFrom == sel.from)\n return false;\n view.dispatch({ selection: { anchor: prevFrom !== null && prevFrom !== void 0 ? prevFrom : lastFrom, head: prevTo !== null && prevTo !== void 0 ? prevTo : lastTo }, scrollIntoView: true });\n return true;\n};\n/**\nA set of default key bindings for the lint functionality.\n\n- Ctrl-Shift-m (Cmd-Shift-m on macOS): [`openLintPanel`](https://codemirror.net/6/docs/ref/#lint.openLintPanel)\n- F8: [`nextDiagnostic`](https://codemirror.net/6/docs/ref/#lint.nextDiagnostic)\n*/\nconst lintKeymap = [\n { key: \"Mod-Shift-m\", run: openLintPanel, preventDefault: true },\n { key: \"F8\", run: nextDiagnostic }\n];\nconst lintPlugin = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.view = view;\n this.timeout = -1;\n this.set = true;\n let { delay } = view.state.facet(lintConfig);\n this.lintTime = Date.now() + delay;\n this.run = this.run.bind(this);\n this.timeout = setTimeout(this.run, delay);\n }\n run() {\n clearTimeout(this.timeout);\n let now = Date.now();\n if (now < this.lintTime - 10) {\n this.timeout = setTimeout(this.run, this.lintTime - now);\n }\n else {\n this.set = false;\n let { state } = this.view, { sources } = state.facet(lintConfig);\n if (sources.length)\n batchResults(sources.map(s => Promise.resolve(s(this.view))), annotations => {\n if (this.view.state.doc == state.doc)\n this.view.dispatch(setDiagnostics(this.view.state, annotations.reduce((a, b) => a.concat(b))));\n }, error => { logException(this.view.state, error); });\n }\n }\n update(update) {\n let config = update.state.facet(lintConfig);\n if (update.docChanged || config != update.startState.facet(lintConfig) ||\n config.needsRefresh && config.needsRefresh(update)) {\n this.lintTime = Date.now() + config.delay;\n if (!this.set) {\n this.set = true;\n this.timeout = setTimeout(this.run, config.delay);\n }\n }\n }\n force() {\n if (this.set) {\n this.lintTime = Date.now();\n this.run();\n }\n }\n destroy() {\n clearTimeout(this.timeout);\n }\n});\nfunction batchResults(promises, sink, error) {\n let collected = [], timeout = -1;\n for (let p of promises)\n p.then(value => {\n collected.push(value);\n clearTimeout(timeout);\n if (collected.length == promises.length)\n sink(collected);\n else\n timeout = setTimeout(() => sink(collected), 200);\n }, error);\n}\nconst lintConfig = /*@__PURE__*/Facet.define({\n combine(input) {\n return {\n sources: input.map(i => i.source).filter(x => x != null),\n ...combineConfig(input.map(i => i.config), {\n delay: 750,\n markerFilter: null,\n tooltipFilter: null,\n needsRefresh: null,\n hideOn: () => null,\n }, {\n delay: Math.max,\n markerFilter: combineFilter,\n tooltipFilter: combineFilter,\n needsRefresh: (a, b) => !a ? b : !b ? a : u => a(u) || b(u),\n hideOn: (a, b) => !a ? b : !b ? a : (t, x, y) => a(t, x, y) || b(t, x, y),\n autoPanel: (a, b) => a || b\n })\n };\n }\n});\nfunction combineFilter(a, b) {\n return !a ? b : !b ? a : (d, s) => b(a(d, s), s);\n}\n/**\nGiven a diagnostic source, this function returns an extension that\nenables linting with that source. It will be called whenever the\neditor is idle (after its content changed).\n\nNote that settings given here will apply to all linters active in\nthe editor. If `null` is given as source, this only configures the\nlint extension.\n*/\nfunction linter(source, config = {}) {\n return [\n lintConfig.of({ source, config }),\n lintPlugin,\n lintExtensions\n ];\n}\n/**\nForces any linters [configured](https://codemirror.net/6/docs/ref/#lint.linter) to run when the\neditor is idle to run right away.\n*/\nfunction forceLinting(view) {\n let plugin = view.plugin(lintPlugin);\n if (plugin)\n plugin.force();\n}\nfunction assignKeys(actions) {\n let assigned = [];\n if (actions)\n actions: for (let { name } of actions) {\n for (let i = 0; i < name.length; i++) {\n let ch = name[i];\n if (/[a-zA-Z]/.test(ch) && !assigned.some(c => c.toLowerCase() == ch.toLowerCase())) {\n assigned.push(ch);\n continue actions;\n }\n }\n assigned.push(\"\");\n }\n return assigned;\n}\nfunction renderDiagnostic(view, diagnostic, inPanel) {\n var _a;\n let keys = inPanel ? assignKeys(diagnostic.actions) : [];\n return elt(\"li\", { class: \"cm-diagnostic cm-diagnostic-\" + diagnostic.severity }, elt(\"span\", { class: \"cm-diagnosticText\" }, diagnostic.renderMessage ? diagnostic.renderMessage(view) : diagnostic.message), (_a = diagnostic.actions) === null || _a === void 0 ? void 0 : _a.map((action, i) => {\n let fired = false, click = (e) => {\n e.preventDefault();\n if (fired)\n return;\n fired = true;\n let found = findDiagnostic(view.state.field(lintState).diagnostics, diagnostic);\n if (found)\n action.apply(view, found.from, found.to);\n };\n let { name } = action, keyIndex = keys[i] ? name.indexOf(keys[i]) : -1;\n let nameElt = keyIndex < 0 ? name : [name.slice(0, keyIndex),\n elt(\"u\", name.slice(keyIndex, keyIndex + 1)),\n name.slice(keyIndex + 1)];\n let markClass = action.markClass ? \" \" + action.markClass : \"\";\n return elt(\"button\", {\n type: \"button\",\n class: \"cm-diagnosticAction\" + markClass,\n onclick: click,\n onmousedown: click,\n \"aria-label\": ` Action: ${name}${keyIndex < 0 ? \"\" : ` (access key \"${keys[i]})\"`}.`\n }, nameElt);\n }), diagnostic.source && elt(\"div\", { class: \"cm-diagnosticSource\" }, diagnostic.source));\n}\nclass DiagnosticWidget extends WidgetType {\n constructor(sev) {\n super();\n this.sev = sev;\n }\n eq(other) { return other.sev == this.sev; }\n toDOM() {\n return elt(\"span\", { class: \"cm-lintPoint cm-lintPoint-\" + this.sev });\n }\n}\nclass PanelItem {\n constructor(view, diagnostic) {\n this.diagnostic = diagnostic;\n this.id = \"item_\" + Math.floor(Math.random() * 0xffffffff).toString(16);\n this.dom = renderDiagnostic(view, diagnostic, true);\n this.dom.id = this.id;\n this.dom.setAttribute(\"role\", \"option\");\n }\n}\nclass LintPanel {\n constructor(view) {\n this.view = view;\n this.items = [];\n let onkeydown = (event) => {\n if (event.keyCode == 27) { // Escape\n closeLintPanel(this.view);\n this.view.focus();\n }\n else if (event.keyCode == 38 || event.keyCode == 33) { // ArrowUp, PageUp\n this.moveSelection((this.selectedIndex - 1 + this.items.length) % this.items.length);\n }\n else if (event.keyCode == 40 || event.keyCode == 34) { // ArrowDown, PageDown\n this.moveSelection((this.selectedIndex + 1) % this.items.length);\n }\n else if (event.keyCode == 36) { // Home\n this.moveSelection(0);\n }\n else if (event.keyCode == 35) { // End\n this.moveSelection(this.items.length - 1);\n }\n else if (event.keyCode == 13) { // Enter\n this.view.focus();\n }\n else if (event.keyCode >= 65 && event.keyCode <= 90 && this.selectedIndex >= 0) { // A-Z\n let { diagnostic } = this.items[this.selectedIndex], keys = assignKeys(diagnostic.actions);\n for (let i = 0; i < keys.length; i++)\n if (keys[i].toUpperCase().charCodeAt(0) == event.keyCode) {\n let found = findDiagnostic(this.view.state.field(lintState).diagnostics, diagnostic);\n if (found)\n diagnostic.actions[i].apply(view, found.from, found.to);\n }\n }\n else {\n return;\n }\n event.preventDefault();\n };\n let onclick = (event) => {\n for (let i = 0; i < this.items.length; i++) {\n if (this.items[i].dom.contains(event.target))\n this.moveSelection(i);\n }\n };\n this.list = elt(\"ul\", {\n tabIndex: 0,\n role: \"listbox\",\n \"aria-label\": this.view.state.phrase(\"Diagnostics\"),\n onkeydown,\n onclick\n });\n this.dom = elt(\"div\", { class: \"cm-panel-lint\" }, this.list, elt(\"button\", {\n type: \"button\",\n name: \"close\",\n \"aria-label\": this.view.state.phrase(\"close\"),\n onclick: () => closeLintPanel(this.view)\n }, \"\u00D7\"));\n this.update();\n }\n get selectedIndex() {\n let selected = this.view.state.field(lintState).selected;\n if (!selected)\n return -1;\n for (let i = 0; i < this.items.length; i++)\n if (this.items[i].diagnostic == selected.diagnostic)\n return i;\n return -1;\n }\n update() {\n let { diagnostics, selected } = this.view.state.field(lintState);\n let i = 0, needsSync = false, newSelectedItem = null;\n let seen = new Set();\n diagnostics.between(0, this.view.state.doc.length, (_start, _end, { spec }) => {\n for (let diagnostic of spec.diagnostics) {\n if (seen.has(diagnostic))\n continue;\n seen.add(diagnostic);\n let found = -1, item;\n for (let j = i; j < this.items.length; j++)\n if (this.items[j].diagnostic == diagnostic) {\n found = j;\n break;\n }\n if (found < 0) {\n item = new PanelItem(this.view, diagnostic);\n this.items.splice(i, 0, item);\n needsSync = true;\n }\n else {\n item = this.items[found];\n if (found > i) {\n this.items.splice(i, found - i);\n needsSync = true;\n }\n }\n if (selected && item.diagnostic == selected.diagnostic) {\n if (!item.dom.hasAttribute(\"aria-selected\")) {\n item.dom.setAttribute(\"aria-selected\", \"true\");\n newSelectedItem = item;\n }\n }\n else if (item.dom.hasAttribute(\"aria-selected\")) {\n item.dom.removeAttribute(\"aria-selected\");\n }\n i++;\n }\n });\n while (i < this.items.length && !(this.items.length == 1 && this.items[0].diagnostic.from < 0)) {\n needsSync = true;\n this.items.pop();\n }\n if (this.items.length == 0) {\n this.items.push(new PanelItem(this.view, {\n from: -1, to: -1,\n severity: \"info\",\n message: this.view.state.phrase(\"No diagnostics\")\n }));\n needsSync = true;\n }\n if (newSelectedItem) {\n this.list.setAttribute(\"aria-activedescendant\", newSelectedItem.id);\n this.view.requestMeasure({\n key: this,\n read: () => ({ sel: newSelectedItem.dom.getBoundingClientRect(), panel: this.list.getBoundingClientRect() }),\n write: ({ sel, panel }) => {\n let scaleY = panel.height / this.list.offsetHeight;\n if (sel.top < panel.top)\n this.list.scrollTop -= (panel.top - sel.top) / scaleY;\n else if (sel.bottom > panel.bottom)\n this.list.scrollTop += (sel.bottom - panel.bottom) / scaleY;\n }\n });\n }\n else if (this.selectedIndex < 0) {\n this.list.removeAttribute(\"aria-activedescendant\");\n }\n if (needsSync)\n this.sync();\n }\n sync() {\n let domPos = this.list.firstChild;\n function rm() {\n let prev = domPos;\n domPos = prev.nextSibling;\n prev.remove();\n }\n for (let item of this.items) {\n if (item.dom.parentNode == this.list) {\n while (domPos != item.dom)\n rm();\n domPos = item.dom.nextSibling;\n }\n else {\n this.list.insertBefore(item.dom, domPos);\n }\n }\n while (domPos)\n rm();\n }\n moveSelection(selectedIndex) {\n if (this.selectedIndex < 0)\n return;\n let field = this.view.state.field(lintState);\n let selection = findDiagnostic(field.diagnostics, this.items[selectedIndex].diagnostic);\n if (!selection)\n return;\n this.view.dispatch({\n selection: { anchor: selection.from, head: selection.to },\n scrollIntoView: true,\n effects: movePanelSelection.of(selection)\n });\n }\n static open(view) { return new LintPanel(view); }\n}\nfunction svg(content, attrs = `viewBox=\"0 0 40 40\"`) {\n return `url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" ${attrs}>${encodeURIComponent(content)}</svg>')`;\n}\nfunction underline(color) {\n return svg(`<path d=\"m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0\" stroke=\"${color}\" fill=\"none\" stroke-width=\".7\"/>`, `width=\"6\" height=\"3\"`);\n}\nconst baseTheme = /*@__PURE__*/EditorView.baseTheme({\n \".cm-diagnostic\": {\n padding: \"3px 6px 3px 8px\",\n marginLeft: \"-1px\",\n display: \"block\",\n whiteSpace: \"pre-wrap\"\n },\n \".cm-diagnostic-error\": { borderLeft: \"5px solid #d11\" },\n \".cm-diagnostic-warning\": { borderLeft: \"5px solid orange\" },\n \".cm-diagnostic-info\": { borderLeft: \"5px solid #999\" },\n \".cm-diagnostic-hint\": { borderLeft: \"5px solid #66d\" },\n \".cm-diagnosticAction\": {\n font: \"inherit\",\n border: \"none\",\n padding: \"2px 4px\",\n backgroundColor: \"#444\",\n color: \"white\",\n borderRadius: \"3px\",\n marginLeft: \"8px\",\n cursor: \"pointer\"\n },\n \".cm-diagnosticSource\": {\n fontSize: \"70%\",\n opacity: .7\n },\n \".cm-lintRange\": {\n backgroundPosition: \"left bottom\",\n backgroundRepeat: \"repeat-x\",\n paddingBottom: \"0.7px\",\n },\n \".cm-lintRange-error\": { backgroundImage: /*@__PURE__*/underline(\"#d11\") },\n \".cm-lintRange-warning\": { backgroundImage: /*@__PURE__*/underline(\"orange\") },\n \".cm-lintRange-info\": { backgroundImage: /*@__PURE__*/underline(\"#999\") },\n \".cm-lintRange-hint\": { backgroundImage: /*@__PURE__*/underline(\"#66d\") },\n \".cm-lintRange-active\": { backgroundColor: \"#ffdd9980\" },\n \".cm-tooltip-lint\": {\n padding: 0,\n margin: 0\n },\n \".cm-lintPoint\": {\n position: \"relative\",\n \"&:after\": {\n content: '\"\"',\n position: \"absolute\",\n bottom: 0,\n left: \"-2px\",\n borderLeft: \"3px solid transparent\",\n borderRight: \"3px solid transparent\",\n borderBottom: \"4px solid #d11\"\n }\n },\n \".cm-lintPoint-warning\": {\n \"&:after\": { borderBottomColor: \"orange\" }\n },\n \".cm-lintPoint-info\": {\n \"&:after\": { borderBottomColor: \"#999\" }\n },\n \".cm-lintPoint-hint\": {\n \"&:after\": { borderBottomColor: \"#66d\" }\n },\n \".cm-panel.cm-panel-lint\": {\n position: \"relative\",\n \"& ul\": {\n maxHeight: \"100px\",\n overflowY: \"auto\",\n \"& [aria-selected]\": {\n backgroundColor: \"#ddd\",\n \"& u\": { textDecoration: \"underline\" }\n },\n \"&:focus [aria-selected]\": {\n background_fallback: \"#bdf\",\n backgroundColor: \"Highlight\",\n color_fallback: \"white\",\n color: \"HighlightText\"\n },\n \"& u\": { textDecoration: \"none\" },\n padding: 0,\n margin: 0\n },\n \"& [name=close]\": {\n position: \"absolute\",\n top: \"0\",\n right: \"2px\",\n background: \"inherit\",\n border: \"none\",\n font: \"inherit\",\n padding: 0,\n margin: 0\n }\n }\n});\nfunction severityWeight(sev) {\n return sev == \"error\" ? 4 : sev == \"warning\" ? 3 : sev == \"info\" ? 2 : 1;\n}\nfunction maxSeverity(diagnostics) {\n let sev = \"hint\", weight = 1;\n for (let d of diagnostics) {\n let w = severityWeight(d.severity);\n if (w > weight) {\n weight = w;\n sev = d.severity;\n }\n }\n return sev;\n}\nclass LintGutterMarker extends GutterMarker {\n constructor(diagnostics) {\n super();\n this.diagnostics = diagnostics;\n this.severity = maxSeverity(diagnostics);\n }\n toDOM(view) {\n let elt = document.createElement(\"div\");\n elt.className = \"cm-lint-marker cm-lint-marker-\" + this.severity;\n let diagnostics = this.diagnostics;\n let diagnosticsFilter = view.state.facet(lintGutterConfig).tooltipFilter;\n if (diagnosticsFilter)\n diagnostics = diagnosticsFilter(diagnostics, view.state);\n if (diagnostics.length)\n elt.onmouseover = () => gutterMarkerMouseOver(view, elt, diagnostics);\n return elt;\n }\n}\nfunction trackHoverOn(view, marker) {\n let mousemove = (event) => {\n let rect = marker.getBoundingClientRect();\n if (event.clientX > rect.left - 10 /* Hover.Margin */ && event.clientX < rect.right + 10 /* Hover.Margin */ &&\n event.clientY > rect.top - 10 /* Hover.Margin */ && event.clientY < rect.bottom + 10 /* Hover.Margin */)\n return;\n for (let target = event.target; target; target = target.parentNode) {\n if (target.nodeType == 1 && target.classList.contains(\"cm-tooltip-lint\"))\n return;\n }\n window.removeEventListener(\"mousemove\", mousemove);\n if (view.state.field(lintGutterTooltip))\n view.dispatch({ effects: setLintGutterTooltip.of(null) });\n };\n window.addEventListener(\"mousemove\", mousemove);\n}\nfunction gutterMarkerMouseOver(view, marker, diagnostics) {\n function hovered() {\n let line = view.elementAtHeight(marker.getBoundingClientRect().top + 5 - view.documentTop);\n const linePos = view.coordsAtPos(line.from);\n if (linePos) {\n view.dispatch({ effects: setLintGutterTooltip.of({\n pos: line.from,\n above: false,\n clip: false,\n create() {\n return {\n dom: diagnosticsTooltip(view, diagnostics),\n getCoords: () => marker.getBoundingClientRect()\n };\n }\n }) });\n }\n marker.onmouseout = marker.onmousemove = null;\n trackHoverOn(view, marker);\n }\n let { hoverTime } = view.state.facet(lintGutterConfig);\n let hoverTimeout = setTimeout(hovered, hoverTime);\n marker.onmouseout = () => {\n clearTimeout(hoverTimeout);\n marker.onmouseout = marker.onmousemove = null;\n };\n marker.onmousemove = () => {\n clearTimeout(hoverTimeout);\n hoverTimeout = setTimeout(hovered, hoverTime);\n };\n}\nfunction markersForDiagnostics(doc, diagnostics) {\n let byLine = Object.create(null);\n for (let diagnostic of diagnostics) {\n let line = doc.lineAt(diagnostic.from);\n (byLine[line.from] || (byLine[line.from] = [])).push(diagnostic);\n }\n let markers = [];\n for (let line in byLine) {\n markers.push(new LintGutterMarker(byLine[line]).range(+line));\n }\n return RangeSet.of(markers, true);\n}\nconst lintGutterExtension = /*@__PURE__*/gutter({\n class: \"cm-gutter-lint\",\n markers: view => view.state.field(lintGutterMarkers),\n widgetMarker: (view, widget, block) => {\n let diagnostics = [];\n view.state.field(lintGutterMarkers).between(block.from, block.to, (from, to, value) => {\n if (from > block.from && from < block.to)\n diagnostics.push(...value.diagnostics);\n });\n return diagnostics.length ? new LintGutterMarker(diagnostics) : null;\n }\n});\nconst lintGutterMarkers = /*@__PURE__*/StateField.define({\n create() {\n return RangeSet.empty;\n },\n update(markers, tr) {\n markers = markers.map(tr.changes);\n let diagnosticFilter = tr.state.facet(lintGutterConfig).markerFilter;\n for (let effect of tr.effects) {\n if (effect.is(setDiagnosticsEffect)) {\n let diagnostics = effect.value;\n if (diagnosticFilter)\n diagnostics = diagnosticFilter(diagnostics || [], tr.state);\n markers = markersForDiagnostics(tr.state.doc, diagnostics.slice(0));\n }\n }\n return markers;\n }\n});\nconst setLintGutterTooltip = /*@__PURE__*/StateEffect.define();\nconst lintGutterTooltip = /*@__PURE__*/StateField.define({\n create() { return null; },\n update(tooltip, tr) {\n if (tooltip && tr.docChanged)\n tooltip = hideTooltip(tr, tooltip) ? null : { ...tooltip, pos: tr.changes.mapPos(tooltip.pos) };\n return tr.effects.reduce((t, e) => e.is(setLintGutterTooltip) ? e.value : t, tooltip);\n },\n provide: field => showTooltip.from(field)\n});\nconst lintGutterTheme = /*@__PURE__*/EditorView.baseTheme({\n \".cm-gutter-lint\": {\n width: \"1.4em\",\n \"& .cm-gutterElement\": {\n padding: \".2em\"\n }\n },\n \".cm-lint-marker\": {\n width: \"1em\",\n height: \"1em\"\n },\n \".cm-lint-marker-info\": {\n content: /*@__PURE__*/svg(`<path fill=\"#aaf\" stroke=\"#77e\" stroke-width=\"6\" stroke-linejoin=\"round\" d=\"M5 5L35 5L35 35L5 35Z\"/>`)\n },\n \".cm-lint-marker-warning\": {\n content: /*@__PURE__*/svg(`<path fill=\"#fe8\" stroke=\"#fd7\" stroke-width=\"6\" stroke-linejoin=\"round\" d=\"M20 6L37 35L3 35Z\"/>`),\n },\n \".cm-lint-marker-error\": {\n content: /*@__PURE__*/svg(`<circle cx=\"20\" cy=\"20\" r=\"15\" fill=\"#f87\" stroke=\"#f43\" stroke-width=\"6\"/>`)\n },\n});\nconst lintExtensions = [\n lintState,\n /*@__PURE__*/EditorView.decorations.compute([lintState], state => {\n let { selected, panel } = state.field(lintState);\n return !selected || !panel || selected.from == selected.to ? Decoration.none : Decoration.set([\n activeMark.range(selected.from, selected.to)\n ]);\n }),\n /*@__PURE__*/hoverTooltip(lintTooltip, { hideOn: hideTooltip }),\n baseTheme\n];\nconst lintGutterConfig = /*@__PURE__*/Facet.define({\n combine(configs) {\n return combineConfig(configs, {\n hoverTime: 300 /* Hover.Time */,\n markerFilter: null,\n tooltipFilter: null\n });\n }\n});\n/**\nReturns an extension that installs a gutter showing markers for\neach line that has diagnostics, which can be hovered over to see\nthe diagnostics.\n*/\nfunction lintGutter(config = {}) {\n return [lintGutterConfig.of(config), lintGutterMarkers, lintGutterExtension, lintGutterTheme, lintGutterTooltip];\n}\n/**\nIterate over the marked diagnostics for the given editor state,\ncalling `f` for each of them. Note that, if the document changed\nsince the diagnostics were created, the `Diagnostic` object will\nhold the original outdated position, whereas the `to` and `from`\narguments hold the diagnostic's current position.\n*/\nfunction forEachDiagnostic(state, f) {\n let lState = state.field(lintState, false);\n if (lState && lState.diagnostics.size) {\n let pending = [], pendingStart = [], lastEnd = -1;\n for (let iter = RangeSet.iter([lState.diagnostics]);; iter.next()) {\n for (let i = 0; i < pending.length; i++)\n if (!iter.value || iter.value.spec.diagnostics.indexOf(pending[i]) < 0) {\n f(pending[i], pendingStart[i], lastEnd);\n pending.splice(i, 1);\n pendingStart.splice(i--, 1);\n }\n if (!iter.value)\n break;\n for (let d of iter.value.spec.diagnostics)\n if (pending.indexOf(d) < 0) {\n pending.push(d);\n pendingStart.push(iter.from);\n }\n lastEnd = iter.to;\n }\n }\n}\n\nexport { closeLintPanel, diagnosticCount, forEachDiagnostic, forceLinting, lintGutter, lintKeymap, linter, nextDiagnostic, openLintPanel, previousDiagnostic, setDiagnostics, setDiagnosticsEffect };\n", "import { Parser, NodeProp, NodeSet, NodeType, DefaultBufferLength, Tree, IterMode } from '@lezer/common';\n\n/**\nA parse stack. These are used internally by the parser to track\nparsing progress. They also provide some properties and methods\nthat external code such as a tokenizer can use to get information\nabout the parse state.\n*/\nclass Stack {\n /**\n @internal\n */\n constructor(\n /**\n The parse that this stack is part of @internal\n */\n p, \n /**\n Holds state, input pos, buffer index triplets for all but the\n top state @internal\n */\n stack, \n /**\n The current parse state @internal\n */\n state, \n // The position at which the next reduce should take place. This\n // can be less than `this.pos` when skipped expressions have been\n // added to the stack (which should be moved outside of the next\n // reduction)\n /**\n @internal\n */\n reducePos, \n /**\n The input position up to which this stack has parsed.\n */\n pos, \n /**\n The dynamic score of the stack, including dynamic precedence\n and error-recovery penalties\n @internal\n */\n score, \n // The output buffer. Holds (type, start, end, size) quads\n // representing nodes created by the parser, where `size` is\n // amount of buffer array entries covered by this node.\n /**\n @internal\n */\n buffer, \n // The base offset of the buffer. When stacks are split, the split\n // instance shared the buffer history with its parent up to\n // `bufferBase`, which is the absolute offset (including the\n // offset of previous splits) into the buffer at which this stack\n // starts writing.\n /**\n @internal\n */\n bufferBase, \n /**\n @internal\n */\n curContext, \n /**\n @internal\n */\n lookAhead = 0, \n // A parent stack from which this was split off, if any. This is\n // set up so that it always points to a stack that has some\n // additional buffer content, never to a stack with an equal\n // `bufferBase`.\n /**\n @internal\n */\n parent) {\n this.p = p;\n this.stack = stack;\n this.state = state;\n this.reducePos = reducePos;\n this.pos = pos;\n this.score = score;\n this.buffer = buffer;\n this.bufferBase = bufferBase;\n this.curContext = curContext;\n this.lookAhead = lookAhead;\n this.parent = parent;\n }\n /**\n @internal\n */\n toString() {\n return `[${this.stack.filter((_, i) => i % 3 == 0).concat(this.state)}]@${this.pos}${this.score ? \"!\" + this.score : \"\"}`;\n }\n // Start an empty stack\n /**\n @internal\n */\n static start(p, state, pos = 0) {\n let cx = p.parser.context;\n return new Stack(p, [], state, pos, pos, 0, [], 0, cx ? new StackContext(cx, cx.start) : null, 0, null);\n }\n /**\n The stack's current [context](#lr.ContextTracker) value, if\n any. Its type will depend on the context tracker's type\n parameter, or it will be `null` if there is no context\n tracker.\n */\n get context() { return this.curContext ? this.curContext.context : null; }\n // Push a state onto the stack, tracking its start position as well\n // as the buffer base at that point.\n /**\n @internal\n */\n pushState(state, start) {\n this.stack.push(this.state, start, this.bufferBase + this.buffer.length);\n this.state = state;\n }\n // Apply a reduce action\n /**\n @internal\n */\n reduce(action) {\n var _a;\n let depth = action >> 19 /* Action.ReduceDepthShift */, type = action & 65535 /* Action.ValueMask */;\n let { parser } = this.p;\n let lookaheadRecord = this.reducePos < this.pos - 25 /* Lookahead.Margin */ && this.setLookAhead(this.pos);\n let dPrec = parser.dynamicPrecedence(type);\n if (dPrec)\n this.score += dPrec;\n if (depth == 0) {\n this.pushState(parser.getGoto(this.state, type, true), this.reducePos);\n // Zero-depth reductions are a special case\u2014they add stuff to\n // the stack without popping anything off.\n if (type < parser.minRepeatTerm)\n this.storeNode(type, this.reducePos, this.reducePos, lookaheadRecord ? 8 : 4, true);\n this.reduceContext(type, this.reducePos);\n return;\n }\n // Find the base index into `this.stack`, content after which will\n // be dropped. Note that with `StayFlag` reductions we need to\n // consume two extra frames (the dummy parent node for the skipped\n // expression and the state that we'll be staying in, which should\n // be moved to `this.state`).\n let base = this.stack.length - ((depth - 1) * 3) - (action & 262144 /* Action.StayFlag */ ? 6 : 0);\n let start = base ? this.stack[base - 2] : this.p.ranges[0].from, size = this.reducePos - start;\n // This is a kludge to try and detect overly deep left-associative\n // trees, which will not increase the parse stack depth and thus\n // won't be caught by the regular stack-depth limit check.\n if (size >= 2000 /* Recover.MinBigReduction */ && !((_a = this.p.parser.nodeSet.types[type]) === null || _a === void 0 ? void 0 : _a.isAnonymous)) {\n if (start == this.p.lastBigReductionStart) {\n this.p.bigReductionCount++;\n this.p.lastBigReductionSize = size;\n }\n else if (this.p.lastBigReductionSize < size) {\n this.p.bigReductionCount = 1;\n this.p.lastBigReductionStart = start;\n this.p.lastBigReductionSize = size;\n }\n }\n let bufferBase = base ? this.stack[base - 1] : 0, count = this.bufferBase + this.buffer.length - bufferBase;\n // Store normal terms or `R -> R R` repeat reductions\n if (type < parser.minRepeatTerm || (action & 131072 /* Action.RepeatFlag */)) {\n let pos = parser.stateFlag(this.state, 1 /* StateFlag.Skipped */) ? this.pos : this.reducePos;\n this.storeNode(type, start, pos, count + 4, true);\n }\n if (action & 262144 /* Action.StayFlag */) {\n this.state = this.stack[base];\n }\n else {\n let baseStateID = this.stack[base - 3];\n this.state = parser.getGoto(baseStateID, type, true);\n }\n while (this.stack.length > base)\n this.stack.pop();\n this.reduceContext(type, start);\n }\n // Shift a value into the buffer\n /**\n @internal\n */\n storeNode(term, start, end, size = 4, mustSink = false) {\n if (term == 0 /* Term.Err */ &&\n (!this.stack.length || this.stack[this.stack.length - 1] < this.buffer.length + this.bufferBase)) {\n // Try to omit/merge adjacent error nodes\n let cur = this, top = this.buffer.length;\n if (top == 0 && cur.parent) {\n top = cur.bufferBase - cur.parent.bufferBase;\n cur = cur.parent;\n }\n if (top > 0 && cur.buffer[top - 4] == 0 /* Term.Err */ && cur.buffer[top - 1] > -1) {\n if (start == end)\n return;\n if (cur.buffer[top - 2] >= start) {\n cur.buffer[top - 2] = end;\n return;\n }\n }\n }\n if (!mustSink || this.pos == end) { // Simple case, just append\n this.buffer.push(term, start, end, size);\n }\n else { // There may be skipped nodes that have to be moved forward\n let index = this.buffer.length;\n if (index > 0 && (this.buffer[index - 4] != 0 /* Term.Err */ || this.buffer[index - 1] < 0)) {\n let mustMove = false;\n for (let scan = index; scan > 0 && this.buffer[scan - 2] > end; scan -= 4) {\n if (this.buffer[scan - 1] >= 0) {\n mustMove = true;\n break;\n }\n }\n if (mustMove)\n while (index > 0 && this.buffer[index - 2] > end) {\n // Move this record forward\n this.buffer[index] = this.buffer[index - 4];\n this.buffer[index + 1] = this.buffer[index - 3];\n this.buffer[index + 2] = this.buffer[index - 2];\n this.buffer[index + 3] = this.buffer[index - 1];\n index -= 4;\n if (size > 4)\n size -= 4;\n }\n }\n this.buffer[index] = term;\n this.buffer[index + 1] = start;\n this.buffer[index + 2] = end;\n this.buffer[index + 3] = size;\n }\n }\n // Apply a shift action\n /**\n @internal\n */\n shift(action, type, start, end) {\n if (action & 131072 /* Action.GotoFlag */) {\n this.pushState(action & 65535 /* Action.ValueMask */, this.pos);\n }\n else if ((action & 262144 /* Action.StayFlag */) == 0) { // Regular shift\n let nextState = action, { parser } = this.p;\n if (end > this.pos || type <= parser.maxNode) {\n this.pos = end;\n if (!parser.stateFlag(nextState, 1 /* StateFlag.Skipped */))\n this.reducePos = end;\n }\n this.pushState(nextState, start);\n this.shiftContext(type, start);\n if (type <= parser.maxNode)\n this.buffer.push(type, start, end, 4);\n }\n else { // Shift-and-stay, which means this is a skipped token\n this.pos = end;\n this.shiftContext(type, start);\n if (type <= this.p.parser.maxNode)\n this.buffer.push(type, start, end, 4);\n }\n }\n // Apply an action\n /**\n @internal\n */\n apply(action, next, nextStart, nextEnd) {\n if (action & 65536 /* Action.ReduceFlag */)\n this.reduce(action);\n else\n this.shift(action, next, nextStart, nextEnd);\n }\n // Add a prebuilt (reused) node into the buffer.\n /**\n @internal\n */\n useNode(value, next) {\n let index = this.p.reused.length - 1;\n if (index < 0 || this.p.reused[index] != value) {\n this.p.reused.push(value);\n index++;\n }\n let start = this.pos;\n this.reducePos = this.pos = start + value.length;\n this.pushState(next, start);\n this.buffer.push(index, start, this.reducePos, -1 /* size == -1 means this is a reused value */);\n if (this.curContext)\n this.updateContext(this.curContext.tracker.reuse(this.curContext.context, value, this, this.p.stream.reset(this.pos - value.length)));\n }\n // Split the stack. Due to the buffer sharing and the fact\n // that `this.stack` tends to stay quite shallow, this isn't very\n // expensive.\n /**\n @internal\n */\n split() {\n let parent = this;\n let off = parent.buffer.length;\n // Because the top of the buffer (after this.pos) may be mutated\n // to reorder reductions and skipped tokens, and shared buffers\n // should be immutable, this copies any outstanding skipped tokens\n // to the new buffer, and puts the base pointer before them.\n while (off > 0 && parent.buffer[off - 2] > parent.reducePos)\n off -= 4;\n let buffer = parent.buffer.slice(off), base = parent.bufferBase + off;\n // Make sure parent points to an actual parent with content, if there is such a parent.\n while (parent && base == parent.bufferBase)\n parent = parent.parent;\n return new Stack(this.p, this.stack.slice(), this.state, this.reducePos, this.pos, this.score, buffer, base, this.curContext, this.lookAhead, parent);\n }\n // Try to recover from an error by 'deleting' (ignoring) one token.\n /**\n @internal\n */\n recoverByDelete(next, nextEnd) {\n let isNode = next <= this.p.parser.maxNode;\n if (isNode)\n this.storeNode(next, this.pos, nextEnd, 4);\n this.storeNode(0 /* Term.Err */, this.pos, nextEnd, isNode ? 8 : 4);\n this.pos = this.reducePos = nextEnd;\n this.score -= 190 /* Recover.Delete */;\n }\n /**\n Check if the given term would be able to be shifted (optionally\n after some reductions) on this stack. This can be useful for\n external tokenizers that want to make sure they only provide a\n given token when it applies.\n */\n canShift(term) {\n for (let sim = new SimulatedStack(this);;) {\n let action = this.p.parser.stateSlot(sim.state, 4 /* ParseState.DefaultReduce */) || this.p.parser.hasAction(sim.state, term);\n if (action == 0)\n return false;\n if ((action & 65536 /* Action.ReduceFlag */) == 0)\n return true;\n sim.reduce(action);\n }\n }\n // Apply up to Recover.MaxNext recovery actions that conceptually\n // inserts some missing token or rule.\n /**\n @internal\n */\n recoverByInsert(next) {\n if (this.stack.length >= 300 /* Recover.MaxInsertStackDepth */)\n return [];\n let nextStates = this.p.parser.nextStates(this.state);\n if (nextStates.length > 4 /* Recover.MaxNext */ << 1 || this.stack.length >= 120 /* Recover.DampenInsertStackDepth */) {\n let best = [];\n for (let i = 0, s; i < nextStates.length; i += 2) {\n if ((s = nextStates[i + 1]) != this.state && this.p.parser.hasAction(s, next))\n best.push(nextStates[i], s);\n }\n if (this.stack.length < 120 /* Recover.DampenInsertStackDepth */)\n for (let i = 0; best.length < 4 /* Recover.MaxNext */ << 1 && i < nextStates.length; i += 2) {\n let s = nextStates[i + 1];\n if (!best.some((v, i) => (i & 1) && v == s))\n best.push(nextStates[i], s);\n }\n nextStates = best;\n }\n let result = [];\n for (let i = 0; i < nextStates.length && result.length < 4 /* Recover.MaxNext */; i += 2) {\n let s = nextStates[i + 1];\n if (s == this.state)\n continue;\n let stack = this.split();\n stack.pushState(s, this.pos);\n stack.storeNode(0 /* Term.Err */, stack.pos, stack.pos, 4, true);\n stack.shiftContext(nextStates[i], this.pos);\n stack.reducePos = this.pos;\n stack.score -= 200 /* Recover.Insert */;\n result.push(stack);\n }\n return result;\n }\n // Force a reduce, if possible. Return false if that can't\n // be done.\n /**\n @internal\n */\n forceReduce() {\n let { parser } = this.p;\n let reduce = parser.stateSlot(this.state, 5 /* ParseState.ForcedReduce */);\n if ((reduce & 65536 /* Action.ReduceFlag */) == 0)\n return false;\n if (!parser.validAction(this.state, reduce)) {\n let depth = reduce >> 19 /* Action.ReduceDepthShift */, term = reduce & 65535 /* Action.ValueMask */;\n let target = this.stack.length - depth * 3;\n if (target < 0 || parser.getGoto(this.stack[target], term, false) < 0) {\n let backup = this.findForcedReduction();\n if (backup == null)\n return false;\n reduce = backup;\n }\n this.storeNode(0 /* Term.Err */, this.pos, this.pos, 4, true);\n this.score -= 100 /* Recover.Reduce */;\n }\n this.reducePos = this.pos;\n this.reduce(reduce);\n return true;\n }\n /**\n Try to scan through the automaton to find some kind of reduction\n that can be applied. Used when the regular ForcedReduce field\n isn't a valid action. @internal\n */\n findForcedReduction() {\n let { parser } = this.p, seen = [];\n let explore = (state, depth) => {\n if (seen.includes(state))\n return;\n seen.push(state);\n return parser.allActions(state, (action) => {\n if (action & (262144 /* Action.StayFlag */ | 131072 /* Action.GotoFlag */)) ;\n else if (action & 65536 /* Action.ReduceFlag */) {\n let rDepth = (action >> 19 /* Action.ReduceDepthShift */) - depth;\n if (rDepth > 1) {\n let term = action & 65535 /* Action.ValueMask */, target = this.stack.length - rDepth * 3;\n if (target >= 0 && parser.getGoto(this.stack[target], term, false) >= 0)\n return (rDepth << 19 /* Action.ReduceDepthShift */) | 65536 /* Action.ReduceFlag */ | term;\n }\n }\n else {\n let found = explore(action, depth + 1);\n if (found != null)\n return found;\n }\n });\n };\n return explore(this.state, 0);\n }\n /**\n @internal\n */\n forceAll() {\n while (!this.p.parser.stateFlag(this.state, 2 /* StateFlag.Accepting */)) {\n if (!this.forceReduce()) {\n this.storeNode(0 /* Term.Err */, this.pos, this.pos, 4, true);\n break;\n }\n }\n return this;\n }\n /**\n Check whether this state has no further actions (assumed to be a direct descendant of the\n top state, since any other states must be able to continue\n somehow). @internal\n */\n get deadEnd() {\n if (this.stack.length != 3)\n return false;\n let { parser } = this.p;\n return parser.data[parser.stateSlot(this.state, 1 /* ParseState.Actions */)] == 65535 /* Seq.End */ &&\n !parser.stateSlot(this.state, 4 /* ParseState.DefaultReduce */);\n }\n /**\n Restart the stack (put it back in its start state). Only safe\n when this.stack.length == 3 (state is directly below the top\n state). @internal\n */\n restart() {\n this.storeNode(0 /* Term.Err */, this.pos, this.pos, 4, true);\n this.state = this.stack[0];\n this.stack.length = 0;\n }\n /**\n @internal\n */\n sameState(other) {\n if (this.state != other.state || this.stack.length != other.stack.length)\n return false;\n for (let i = 0; i < this.stack.length; i += 3)\n if (this.stack[i] != other.stack[i])\n return false;\n return true;\n }\n /**\n Get the parser used by this stack.\n */\n get parser() { return this.p.parser; }\n /**\n Test whether a given dialect (by numeric ID, as exported from\n the terms file) is enabled.\n */\n dialectEnabled(dialectID) { return this.p.parser.dialect.flags[dialectID]; }\n shiftContext(term, start) {\n if (this.curContext)\n this.updateContext(this.curContext.tracker.shift(this.curContext.context, term, this, this.p.stream.reset(start)));\n }\n reduceContext(term, start) {\n if (this.curContext)\n this.updateContext(this.curContext.tracker.reduce(this.curContext.context, term, this, this.p.stream.reset(start)));\n }\n /**\n @internal\n */\n emitContext() {\n let last = this.buffer.length - 1;\n if (last < 0 || this.buffer[last] != -3)\n this.buffer.push(this.curContext.hash, this.pos, this.pos, -3);\n }\n /**\n @internal\n */\n emitLookAhead() {\n let last = this.buffer.length - 1;\n if (last < 0 || this.buffer[last] != -4)\n this.buffer.push(this.lookAhead, this.pos, this.pos, -4);\n }\n updateContext(context) {\n if (context != this.curContext.context) {\n let newCx = new StackContext(this.curContext.tracker, context);\n if (newCx.hash != this.curContext.hash)\n this.emitContext();\n this.curContext = newCx;\n }\n }\n /**\n @internal\n */\n setLookAhead(lookAhead) {\n if (lookAhead <= this.lookAhead)\n return false;\n this.emitLookAhead();\n this.lookAhead = lookAhead;\n return true;\n }\n /**\n @internal\n */\n close() {\n if (this.curContext && this.curContext.tracker.strict)\n this.emitContext();\n if (this.lookAhead > 0)\n this.emitLookAhead();\n }\n}\nclass StackContext {\n constructor(tracker, context) {\n this.tracker = tracker;\n this.context = context;\n this.hash = tracker.strict ? tracker.hash(context) : 0;\n }\n}\n// Used to cheaply run some reductions to scan ahead without mutating\n// an entire stack\nclass SimulatedStack {\n constructor(start) {\n this.start = start;\n this.state = start.state;\n this.stack = start.stack;\n this.base = this.stack.length;\n }\n reduce(action) {\n let term = action & 65535 /* Action.ValueMask */, depth = action >> 19 /* Action.ReduceDepthShift */;\n if (depth == 0) {\n if (this.stack == this.start.stack)\n this.stack = this.stack.slice();\n this.stack.push(this.state, 0, 0);\n this.base += 3;\n }\n else {\n this.base -= (depth - 1) * 3;\n }\n let goto = this.start.p.parser.getGoto(this.stack[this.base - 3], term, true);\n this.state = goto;\n }\n}\n// This is given to `Tree.build` to build a buffer, and encapsulates\n// the parent-stack-walking necessary to read the nodes.\nclass StackBufferCursor {\n constructor(stack, pos, index) {\n this.stack = stack;\n this.pos = pos;\n this.index = index;\n this.buffer = stack.buffer;\n if (this.index == 0)\n this.maybeNext();\n }\n static create(stack, pos = stack.bufferBase + stack.buffer.length) {\n return new StackBufferCursor(stack, pos, pos - stack.bufferBase);\n }\n maybeNext() {\n let next = this.stack.parent;\n if (next != null) {\n this.index = this.stack.bufferBase - next.bufferBase;\n this.stack = next;\n this.buffer = next.buffer;\n }\n }\n get id() { return this.buffer[this.index - 4]; }\n get start() { return this.buffer[this.index - 3]; }\n get end() { return this.buffer[this.index - 2]; }\n get size() { return this.buffer[this.index - 1]; }\n next() {\n this.index -= 4;\n this.pos -= 4;\n if (this.index == 0)\n this.maybeNext();\n }\n fork() {\n return new StackBufferCursor(this.stack, this.pos, this.index);\n }\n}\n\n// See lezer-generator/src/encode.ts for comments about the encoding\n// used here\nfunction decodeArray(input, Type = Uint16Array) {\n if (typeof input != \"string\")\n return input;\n let array = null;\n for (let pos = 0, out = 0; pos < input.length;) {\n let value = 0;\n for (;;) {\n let next = input.charCodeAt(pos++), stop = false;\n if (next == 126 /* Encode.BigValCode */) {\n value = 65535 /* Encode.BigVal */;\n break;\n }\n if (next >= 92 /* Encode.Gap2 */)\n next--;\n if (next >= 34 /* Encode.Gap1 */)\n next--;\n let digit = next - 32 /* Encode.Start */;\n if (digit >= 46 /* Encode.Base */) {\n digit -= 46 /* Encode.Base */;\n stop = true;\n }\n value += digit;\n if (stop)\n break;\n value *= 46 /* Encode.Base */;\n }\n if (array)\n array[out++] = value;\n else\n array = new Type(value);\n }\n return array;\n}\n\nclass CachedToken {\n constructor() {\n this.start = -1;\n this.value = -1;\n this.end = -1;\n this.extended = -1;\n this.lookAhead = 0;\n this.mask = 0;\n this.context = 0;\n }\n}\nconst nullToken = new CachedToken;\n/**\n[Tokenizers](#lr.ExternalTokenizer) interact with the input\nthrough this interface. It presents the input as a stream of\ncharacters, tracking lookahead and hiding the complexity of\n[ranges](#common.Parser.parse^ranges) from tokenizer code.\n*/\nclass InputStream {\n /**\n @internal\n */\n constructor(\n /**\n @internal\n */\n input, \n /**\n @internal\n */\n ranges) {\n this.input = input;\n this.ranges = ranges;\n /**\n @internal\n */\n this.chunk = \"\";\n /**\n @internal\n */\n this.chunkOff = 0;\n /**\n Backup chunk\n */\n this.chunk2 = \"\";\n this.chunk2Pos = 0;\n /**\n The character code of the next code unit in the input, or -1\n when the stream is at the end of the input.\n */\n this.next = -1;\n /**\n @internal\n */\n this.token = nullToken;\n this.rangeIndex = 0;\n this.pos = this.chunkPos = ranges[0].from;\n this.range = ranges[0];\n this.end = ranges[ranges.length - 1].to;\n this.readNext();\n }\n /**\n @internal\n */\n resolveOffset(offset, assoc) {\n let range = this.range, index = this.rangeIndex;\n let pos = this.pos + offset;\n while (pos < range.from) {\n if (!index)\n return null;\n let next = this.ranges[--index];\n pos -= range.from - next.to;\n range = next;\n }\n while (assoc < 0 ? pos > range.to : pos >= range.to) {\n if (index == this.ranges.length - 1)\n return null;\n let next = this.ranges[++index];\n pos += next.from - range.to;\n range = next;\n }\n return pos;\n }\n /**\n @internal\n */\n clipPos(pos) {\n if (pos >= this.range.from && pos < this.range.to)\n return pos;\n for (let range of this.ranges)\n if (range.to > pos)\n return Math.max(pos, range.from);\n return this.end;\n }\n /**\n Look at a code unit near the stream position. `.peek(0)` equals\n `.next`, `.peek(-1)` gives you the previous character, and so\n on.\n \n Note that looking around during tokenizing creates dependencies\n on potentially far-away content, which may reduce the\n effectiveness incremental parsing\u2014when looking forward\u2014or even\n cause invalid reparses when looking backward more than 25 code\n units, since the library does not track lookbehind.\n */\n peek(offset) {\n let idx = this.chunkOff + offset, pos, result;\n if (idx >= 0 && idx < this.chunk.length) {\n pos = this.pos + offset;\n result = this.chunk.charCodeAt(idx);\n }\n else {\n let resolved = this.resolveOffset(offset, 1);\n if (resolved == null)\n return -1;\n pos = resolved;\n if (pos >= this.chunk2Pos && pos < this.chunk2Pos + this.chunk2.length) {\n result = this.chunk2.charCodeAt(pos - this.chunk2Pos);\n }\n else {\n let i = this.rangeIndex, range = this.range;\n while (range.to <= pos)\n range = this.ranges[++i];\n this.chunk2 = this.input.chunk(this.chunk2Pos = pos);\n if (pos + this.chunk2.length > range.to)\n this.chunk2 = this.chunk2.slice(0, range.to - pos);\n result = this.chunk2.charCodeAt(0);\n }\n }\n if (pos >= this.token.lookAhead)\n this.token.lookAhead = pos + 1;\n return result;\n }\n /**\n Accept a token. By default, the end of the token is set to the\n current stream position, but you can pass an offset (relative to\n the stream position) to change that.\n */\n acceptToken(token, endOffset = 0) {\n let end = endOffset ? this.resolveOffset(endOffset, -1) : this.pos;\n if (end == null || end < this.token.start)\n throw new RangeError(\"Token end out of bounds\");\n this.token.value = token;\n this.token.end = end;\n }\n /**\n Accept a token ending at a specific given position.\n */\n acceptTokenTo(token, endPos) {\n this.token.value = token;\n this.token.end = endPos;\n }\n getChunk() {\n if (this.pos >= this.chunk2Pos && this.pos < this.chunk2Pos + this.chunk2.length) {\n let { chunk, chunkPos } = this;\n this.chunk = this.chunk2;\n this.chunkPos = this.chunk2Pos;\n this.chunk2 = chunk;\n this.chunk2Pos = chunkPos;\n this.chunkOff = this.pos - this.chunkPos;\n }\n else {\n this.chunk2 = this.chunk;\n this.chunk2Pos = this.chunkPos;\n let nextChunk = this.input.chunk(this.pos);\n let end = this.pos + nextChunk.length;\n this.chunk = end > this.range.to ? nextChunk.slice(0, this.range.to - this.pos) : nextChunk;\n this.chunkPos = this.pos;\n this.chunkOff = 0;\n }\n }\n readNext() {\n if (this.chunkOff >= this.chunk.length) {\n this.getChunk();\n if (this.chunkOff == this.chunk.length)\n return this.next = -1;\n }\n return this.next = this.chunk.charCodeAt(this.chunkOff);\n }\n /**\n Move the stream forward N (defaults to 1) code units. Returns\n the new value of [`next`](#lr.InputStream.next).\n */\n advance(n = 1) {\n this.chunkOff += n;\n while (this.pos + n >= this.range.to) {\n if (this.rangeIndex == this.ranges.length - 1)\n return this.setDone();\n n -= this.range.to - this.pos;\n this.range = this.ranges[++this.rangeIndex];\n this.pos = this.range.from;\n }\n this.pos += n;\n if (this.pos >= this.token.lookAhead)\n this.token.lookAhead = this.pos + 1;\n return this.readNext();\n }\n setDone() {\n this.pos = this.chunkPos = this.end;\n this.range = this.ranges[this.rangeIndex = this.ranges.length - 1];\n this.chunk = \"\";\n return this.next = -1;\n }\n /**\n @internal\n */\n reset(pos, token) {\n if (token) {\n this.token = token;\n token.start = pos;\n token.lookAhead = pos + 1;\n token.value = token.extended = -1;\n }\n else {\n this.token = nullToken;\n }\n if (this.pos != pos) {\n this.pos = pos;\n if (pos == this.end) {\n this.setDone();\n return this;\n }\n while (pos < this.range.from)\n this.range = this.ranges[--this.rangeIndex];\n while (pos >= this.range.to)\n this.range = this.ranges[++this.rangeIndex];\n if (pos >= this.chunkPos && pos < this.chunkPos + this.chunk.length) {\n this.chunkOff = pos - this.chunkPos;\n }\n else {\n this.chunk = \"\";\n this.chunkOff = 0;\n }\n this.readNext();\n }\n return this;\n }\n /**\n @internal\n */\n read(from, to) {\n if (from >= this.chunkPos && to <= this.chunkPos + this.chunk.length)\n return this.chunk.slice(from - this.chunkPos, to - this.chunkPos);\n if (from >= this.chunk2Pos && to <= this.chunk2Pos + this.chunk2.length)\n return this.chunk2.slice(from - this.chunk2Pos, to - this.chunk2Pos);\n if (from >= this.range.from && to <= this.range.to)\n return this.input.read(from, to);\n let result = \"\";\n for (let r of this.ranges) {\n if (r.from >= to)\n break;\n if (r.to > from)\n result += this.input.read(Math.max(r.from, from), Math.min(r.to, to));\n }\n return result;\n }\n}\n/**\n@internal\n*/\nclass TokenGroup {\n constructor(data, id) {\n this.data = data;\n this.id = id;\n }\n token(input, stack) {\n let { parser } = stack.p;\n readToken(this.data, input, stack, this.id, parser.data, parser.tokenPrecTable);\n }\n}\nTokenGroup.prototype.contextual = TokenGroup.prototype.fallback = TokenGroup.prototype.extend = false;\n/**\n@hide\n*/\nclass LocalTokenGroup {\n constructor(data, precTable, elseToken) {\n this.precTable = precTable;\n this.elseToken = elseToken;\n this.data = typeof data == \"string\" ? decodeArray(data) : data;\n }\n token(input, stack) {\n let start = input.pos, skipped = 0;\n for (;;) {\n let atEof = input.next < 0, nextPos = input.resolveOffset(1, 1);\n readToken(this.data, input, stack, 0, this.data, this.precTable);\n if (input.token.value > -1)\n break;\n if (this.elseToken == null)\n return;\n if (!atEof)\n skipped++;\n if (nextPos == null)\n break;\n input.reset(nextPos, input.token);\n }\n if (skipped) {\n input.reset(start, input.token);\n input.acceptToken(this.elseToken, skipped);\n }\n }\n}\nLocalTokenGroup.prototype.contextual = TokenGroup.prototype.fallback = TokenGroup.prototype.extend = false;\n/**\n`@external tokens` declarations in the grammar should resolve to\nan instance of this class.\n*/\nclass ExternalTokenizer {\n /**\n Create a tokenizer. The first argument is the function that,\n given an input stream, scans for the types of tokens it\n recognizes at the stream's position, and calls\n [`acceptToken`](#lr.InputStream.acceptToken) when it finds\n one.\n */\n constructor(\n /**\n @internal\n */\n token, options = {}) {\n this.token = token;\n this.contextual = !!options.contextual;\n this.fallback = !!options.fallback;\n this.extend = !!options.extend;\n }\n}\n// Tokenizer data is stored a big uint16 array containing, for each\n// state:\n//\n// - A group bitmask, indicating what token groups are reachable from\n// this state, so that paths that can only lead to tokens not in\n// any of the current groups can be cut off early.\n//\n// - The position of the end of the state's sequence of accepting\n// tokens\n//\n// - The number of outgoing edges for the state\n//\n// - The accepting tokens, as (token id, group mask) pairs\n//\n// - The outgoing edges, as (start character, end character, state\n// index) triples, with end character being exclusive\n//\n// This function interprets that data, running through a stream as\n// long as new states with the a matching group mask can be reached,\n// and updating `input.token` when it matches a token.\nfunction readToken(data, input, stack, group, precTable, precOffset) {\n let state = 0, groupMask = 1 << group, { dialect } = stack.p.parser;\n scan: for (;;) {\n if ((groupMask & data[state]) == 0)\n break;\n let accEnd = data[state + 1];\n // Check whether this state can lead to a token in the current group\n // Accept tokens in this state, possibly overwriting\n // lower-precedence / shorter tokens\n for (let i = state + 3; i < accEnd; i += 2)\n if ((data[i + 1] & groupMask) > 0) {\n let term = data[i];\n if (dialect.allows(term) &&\n (input.token.value == -1 || input.token.value == term ||\n overrides(term, input.token.value, precTable, precOffset))) {\n input.acceptToken(term);\n break;\n }\n }\n let next = input.next, low = 0, high = data[state + 2];\n // Special case for EOF\n if (input.next < 0 && high > low && data[accEnd + high * 3 - 3] == 65535 /* Seq.End */) {\n state = data[accEnd + high * 3 - 1];\n continue scan;\n }\n // Do a binary search on the state's edges\n for (; low < high;) {\n let mid = (low + high) >> 1;\n let index = accEnd + mid + (mid << 1);\n let from = data[index], to = data[index + 1] || 0x10000;\n if (next < from)\n high = mid;\n else if (next >= to)\n low = mid + 1;\n else {\n state = data[index + 2];\n input.advance();\n continue scan;\n }\n }\n break;\n }\n}\nfunction findOffset(data, start, term) {\n for (let i = start, next; (next = data[i]) != 65535 /* Seq.End */; i++)\n if (next == term)\n return i - start;\n return -1;\n}\nfunction overrides(token, prev, tableData, tableOffset) {\n let iPrev = findOffset(tableData, tableOffset, prev);\n return iPrev < 0 || findOffset(tableData, tableOffset, token) < iPrev;\n}\n\n// Environment variable used to control console output\nconst verbose = typeof process != \"undefined\" && process.env && /\\bparse\\b/.test(process.env.LOG);\nlet stackIDs = null;\nfunction cutAt(tree, pos, side) {\n let cursor = tree.cursor(IterMode.IncludeAnonymous);\n cursor.moveTo(pos);\n for (;;) {\n if (!(side < 0 ? cursor.childBefore(pos) : cursor.childAfter(pos)))\n for (;;) {\n if ((side < 0 ? cursor.to < pos : cursor.from > pos) && !cursor.type.isError)\n return side < 0 ? Math.max(0, Math.min(cursor.to - 1, pos - 25 /* Lookahead.Margin */))\n : Math.min(tree.length, Math.max(cursor.from + 1, pos + 25 /* Lookahead.Margin */));\n if (side < 0 ? cursor.prevSibling() : cursor.nextSibling())\n break;\n if (!cursor.parent())\n return side < 0 ? 0 : tree.length;\n }\n }\n}\nclass FragmentCursor {\n constructor(fragments, nodeSet) {\n this.fragments = fragments;\n this.nodeSet = nodeSet;\n this.i = 0;\n this.fragment = null;\n this.safeFrom = -1;\n this.safeTo = -1;\n this.trees = [];\n this.start = [];\n this.index = [];\n this.nextFragment();\n }\n nextFragment() {\n let fr = this.fragment = this.i == this.fragments.length ? null : this.fragments[this.i++];\n if (fr) {\n this.safeFrom = fr.openStart ? cutAt(fr.tree, fr.from + fr.offset, 1) - fr.offset : fr.from;\n this.safeTo = fr.openEnd ? cutAt(fr.tree, fr.to + fr.offset, -1) - fr.offset : fr.to;\n while (this.trees.length) {\n this.trees.pop();\n this.start.pop();\n this.index.pop();\n }\n this.trees.push(fr.tree);\n this.start.push(-fr.offset);\n this.index.push(0);\n this.nextStart = this.safeFrom;\n }\n else {\n this.nextStart = 1e9;\n }\n }\n // `pos` must be >= any previously given `pos` for this cursor\n nodeAt(pos) {\n if (pos < this.nextStart)\n return null;\n while (this.fragment && this.safeTo <= pos)\n this.nextFragment();\n if (!this.fragment)\n return null;\n for (;;) {\n let last = this.trees.length - 1;\n if (last < 0) { // End of tree\n this.nextFragment();\n return null;\n }\n let top = this.trees[last], index = this.index[last];\n if (index == top.children.length) {\n this.trees.pop();\n this.start.pop();\n this.index.pop();\n continue;\n }\n let next = top.children[index];\n let start = this.start[last] + top.positions[index];\n if (start > pos) {\n this.nextStart = start;\n return null;\n }\n if (next instanceof Tree) {\n if (start == pos) {\n if (start < this.safeFrom)\n return null;\n let end = start + next.length;\n if (end <= this.safeTo) {\n let lookAhead = next.prop(NodeProp.lookAhead);\n if (!lookAhead || end + lookAhead < this.fragment.to)\n return next;\n }\n }\n this.index[last]++;\n if (start + next.length >= Math.max(this.safeFrom, pos)) { // Enter this node\n this.trees.push(next);\n this.start.push(start);\n this.index.push(0);\n }\n }\n else {\n this.index[last]++;\n this.nextStart = start + next.length;\n }\n }\n }\n}\nclass TokenCache {\n constructor(parser, stream) {\n this.stream = stream;\n this.tokens = [];\n this.mainToken = null;\n this.actions = [];\n this.tokens = parser.tokenizers.map(_ => new CachedToken);\n }\n getActions(stack) {\n let actionIndex = 0;\n let main = null;\n let { parser } = stack.p, { tokenizers } = parser;\n let mask = parser.stateSlot(stack.state, 3 /* ParseState.TokenizerMask */);\n let context = stack.curContext ? stack.curContext.hash : 0;\n let lookAhead = 0;\n for (let i = 0; i < tokenizers.length; i++) {\n if (((1 << i) & mask) == 0)\n continue;\n let tokenizer = tokenizers[i], token = this.tokens[i];\n if (main && !tokenizer.fallback)\n continue;\n if (tokenizer.contextual || token.start != stack.pos || token.mask != mask || token.context != context) {\n this.updateCachedToken(token, tokenizer, stack);\n token.mask = mask;\n token.context = context;\n }\n if (token.lookAhead > token.end + 25 /* Lookahead.Margin */)\n lookAhead = Math.max(token.lookAhead, lookAhead);\n if (token.value != 0 /* Term.Err */) {\n let startIndex = actionIndex;\n if (token.extended > -1)\n actionIndex = this.addActions(stack, token.extended, token.end, actionIndex);\n actionIndex = this.addActions(stack, token.value, token.end, actionIndex);\n if (!tokenizer.extend) {\n main = token;\n if (actionIndex > startIndex)\n break;\n }\n }\n }\n while (this.actions.length > actionIndex)\n this.actions.pop();\n if (lookAhead)\n stack.setLookAhead(lookAhead);\n if (!main && stack.pos == this.stream.end) {\n main = new CachedToken;\n main.value = stack.p.parser.eofTerm;\n main.start = main.end = stack.pos;\n actionIndex = this.addActions(stack, main.value, main.end, actionIndex);\n }\n this.mainToken = main;\n return this.actions;\n }\n getMainToken(stack) {\n if (this.mainToken)\n return this.mainToken;\n let main = new CachedToken, { pos, p } = stack;\n main.start = pos;\n main.end = Math.min(pos + 1, p.stream.end);\n main.value = pos == p.stream.end ? p.parser.eofTerm : 0 /* Term.Err */;\n return main;\n }\n updateCachedToken(token, tokenizer, stack) {\n let start = this.stream.clipPos(stack.pos);\n tokenizer.token(this.stream.reset(start, token), stack);\n if (token.value > -1) {\n let { parser } = stack.p;\n for (let i = 0; i < parser.specialized.length; i++)\n if (parser.specialized[i] == token.value) {\n let result = parser.specializers[i](this.stream.read(token.start, token.end), stack);\n if (result >= 0 && stack.p.parser.dialect.allows(result >> 1)) {\n if ((result & 1) == 0 /* Specialize.Specialize */)\n token.value = result >> 1;\n else\n token.extended = result >> 1;\n break;\n }\n }\n }\n else {\n token.value = 0 /* Term.Err */;\n token.end = this.stream.clipPos(start + 1);\n }\n }\n putAction(action, token, end, index) {\n // Don't add duplicate actions\n for (let i = 0; i < index; i += 3)\n if (this.actions[i] == action)\n return index;\n this.actions[index++] = action;\n this.actions[index++] = token;\n this.actions[index++] = end;\n return index;\n }\n addActions(stack, token, end, index) {\n let { state } = stack, { parser } = stack.p, { data } = parser;\n for (let set = 0; set < 2; set++) {\n for (let i = parser.stateSlot(state, set ? 2 /* ParseState.Skip */ : 1 /* ParseState.Actions */);; i += 3) {\n if (data[i] == 65535 /* Seq.End */) {\n if (data[i + 1] == 1 /* Seq.Next */) {\n i = pair(data, i + 2);\n }\n else {\n if (index == 0 && data[i + 1] == 2 /* Seq.Other */)\n index = this.putAction(pair(data, i + 2), token, end, index);\n break;\n }\n }\n if (data[i] == token)\n index = this.putAction(pair(data, i + 1), token, end, index);\n }\n }\n return index;\n }\n}\nclass Parse {\n constructor(parser, input, fragments, ranges) {\n this.parser = parser;\n this.input = input;\n this.ranges = ranges;\n this.recovering = 0;\n this.nextStackID = 0x2654; // \u2654, \u2655, \u2656, \u2657, \u2658, \u2659, \u2660, \u2661, \u2662, \u2663, \u2664, \u2665, \u2666, \u2667\n this.minStackPos = 0;\n this.reused = [];\n this.stoppedAt = null;\n this.lastBigReductionStart = -1;\n this.lastBigReductionSize = 0;\n this.bigReductionCount = 0;\n this.stream = new InputStream(input, ranges);\n this.tokens = new TokenCache(parser, this.stream);\n this.topTerm = parser.top[1];\n let { from } = ranges[0];\n this.stacks = [Stack.start(this, parser.top[0], from)];\n this.fragments = fragments.length && this.stream.end - from > parser.bufferLength * 4\n ? new FragmentCursor(fragments, parser.nodeSet) : null;\n }\n get parsedPos() {\n return this.minStackPos;\n }\n // Move the parser forward. This will process all parse stacks at\n // `this.pos` and try to advance them to a further position. If no\n // stack for such a position is found, it'll start error-recovery.\n //\n // When the parse is finished, this will return a syntax tree. When\n // not, it returns `null`.\n advance() {\n let stacks = this.stacks, pos = this.minStackPos;\n // This will hold stacks beyond `pos`.\n let newStacks = this.stacks = [];\n let stopped, stoppedTokens;\n // If a large amount of reductions happened with the same start\n // position, force the stack out of that production in order to\n // avoid creating a tree too deep to recurse through.\n // (This is an ugly kludge, because unfortunately there is no\n // straightforward, cheap way to check for this happening, due to\n // the history of reductions only being available in an\n // expensive-to-access format in the stack buffers.)\n if (this.bigReductionCount > 300 /* Rec.MaxLeftAssociativeReductionCount */ && stacks.length == 1) {\n let [s] = stacks;\n while (s.forceReduce() && s.stack.length && s.stack[s.stack.length - 2] >= this.lastBigReductionStart) { }\n this.bigReductionCount = this.lastBigReductionSize = 0;\n }\n // Keep advancing any stacks at `pos` until they either move\n // forward or can't be advanced. Gather stacks that can't be\n // advanced further in `stopped`.\n for (let i = 0; i < stacks.length; i++) {\n let stack = stacks[i];\n for (;;) {\n this.tokens.mainToken = null;\n if (stack.pos > pos) {\n newStacks.push(stack);\n }\n else if (this.advanceStack(stack, newStacks, stacks)) {\n continue;\n }\n else {\n if (!stopped) {\n stopped = [];\n stoppedTokens = [];\n }\n stopped.push(stack);\n let tok = this.tokens.getMainToken(stack);\n stoppedTokens.push(tok.value, tok.end);\n }\n break;\n }\n }\n if (!newStacks.length) {\n let finished = stopped && findFinished(stopped);\n if (finished) {\n if (verbose)\n console.log(\"Finish with \" + this.stackID(finished));\n return this.stackToTree(finished);\n }\n if (this.parser.strict) {\n if (verbose && stopped)\n console.log(\"Stuck with token \" + (this.tokens.mainToken ? this.parser.getName(this.tokens.mainToken.value) : \"none\"));\n throw new SyntaxError(\"No parse at \" + pos);\n }\n if (!this.recovering)\n this.recovering = 5 /* Rec.Distance */;\n }\n if (this.recovering && stopped) {\n let finished = this.stoppedAt != null && stopped[0].pos > this.stoppedAt ? stopped[0]\n : this.runRecovery(stopped, stoppedTokens, newStacks);\n if (finished) {\n if (verbose)\n console.log(\"Force-finish \" + this.stackID(finished));\n return this.stackToTree(finished.forceAll());\n }\n }\n if (this.recovering) {\n let maxRemaining = this.recovering == 1 ? 1 : this.recovering * 3 /* Rec.MaxRemainingPerStep */;\n if (newStacks.length > maxRemaining) {\n newStacks.sort((a, b) => b.score - a.score);\n while (newStacks.length > maxRemaining)\n newStacks.pop();\n }\n if (newStacks.some(s => s.reducePos > pos))\n this.recovering--;\n }\n else if (newStacks.length > 1) {\n // Prune stacks that are in the same state, or that have been\n // running without splitting for a while, to avoid getting stuck\n // with multiple successful stacks running endlessly on.\n outer: for (let i = 0; i < newStacks.length - 1; i++) {\n let stack = newStacks[i];\n for (let j = i + 1; j < newStacks.length; j++) {\n let other = newStacks[j];\n if (stack.sameState(other) ||\n stack.buffer.length > 500 /* Rec.MinBufferLengthPrune */ && other.buffer.length > 500 /* Rec.MinBufferLengthPrune */) {\n if (((stack.score - other.score) || (stack.buffer.length - other.buffer.length)) > 0) {\n newStacks.splice(j--, 1);\n }\n else {\n newStacks.splice(i--, 1);\n continue outer;\n }\n }\n }\n }\n if (newStacks.length > 12 /* Rec.MaxStackCount */) {\n newStacks.sort((a, b) => b.score - a.score);\n newStacks.splice(12 /* Rec.MaxStackCount */, newStacks.length - 12 /* Rec.MaxStackCount */);\n }\n }\n this.minStackPos = newStacks[0].pos;\n for (let i = 1; i < newStacks.length; i++)\n if (newStacks[i].pos < this.minStackPos)\n this.minStackPos = newStacks[i].pos;\n return null;\n }\n stopAt(pos) {\n if (this.stoppedAt != null && this.stoppedAt < pos)\n throw new RangeError(\"Can't move stoppedAt forward\");\n this.stoppedAt = pos;\n }\n // Returns an updated version of the given stack, or null if the\n // stack can't advance normally. When `split` and `stacks` are\n // given, stacks split off by ambiguous operations will be pushed to\n // `split`, or added to `stacks` if they move `pos` forward.\n advanceStack(stack, stacks, split) {\n let start = stack.pos, { parser } = this;\n let base = verbose ? this.stackID(stack) + \" -> \" : \"\";\n if (this.stoppedAt != null && start > this.stoppedAt)\n return stack.forceReduce() ? stack : null;\n if (this.fragments) {\n let strictCx = stack.curContext && stack.curContext.tracker.strict, cxHash = strictCx ? stack.curContext.hash : 0;\n for (let cached = this.fragments.nodeAt(start); cached;) {\n let match = this.parser.nodeSet.types[cached.type.id] == cached.type ? parser.getGoto(stack.state, cached.type.id) : -1;\n if (match > -1 && cached.length && (!strictCx || (cached.prop(NodeProp.contextHash) || 0) == cxHash)) {\n stack.useNode(cached, match);\n if (verbose)\n console.log(base + this.stackID(stack) + ` (via reuse of ${parser.getName(cached.type.id)})`);\n return true;\n }\n if (!(cached instanceof Tree) || cached.children.length == 0 || cached.positions[0] > 0)\n break;\n let inner = cached.children[0];\n if (inner instanceof Tree && cached.positions[0] == 0)\n cached = inner;\n else\n break;\n }\n }\n let defaultReduce = parser.stateSlot(stack.state, 4 /* ParseState.DefaultReduce */);\n if (defaultReduce > 0) {\n stack.reduce(defaultReduce);\n if (verbose)\n console.log(base + this.stackID(stack) + ` (via always-reduce ${parser.getName(defaultReduce & 65535 /* Action.ValueMask */)})`);\n return true;\n }\n if (stack.stack.length >= 8400 /* Rec.CutDepth */) {\n while (stack.stack.length > 6000 /* Rec.CutTo */ && stack.forceReduce()) { }\n }\n let actions = this.tokens.getActions(stack);\n for (let i = 0; i < actions.length;) {\n let action = actions[i++], term = actions[i++], end = actions[i++];\n let last = i == actions.length || !split;\n let localStack = last ? stack : stack.split();\n let main = this.tokens.mainToken;\n localStack.apply(action, term, main ? main.start : localStack.pos, end);\n if (verbose)\n console.log(base + this.stackID(localStack) + ` (via ${(action & 65536 /* Action.ReduceFlag */) == 0 ? \"shift\"\n : `reduce of ${parser.getName(action & 65535 /* Action.ValueMask */)}`} for ${parser.getName(term)} @ ${start}${localStack == stack ? \"\" : \", split\"})`);\n if (last)\n return true;\n else if (localStack.pos > start)\n stacks.push(localStack);\n else\n split.push(localStack);\n }\n return false;\n }\n // Advance a given stack forward as far as it will go. Returns the\n // (possibly updated) stack if it got stuck, or null if it moved\n // forward and was given to `pushStackDedup`.\n advanceFully(stack, newStacks) {\n let pos = stack.pos;\n for (;;) {\n if (!this.advanceStack(stack, null, null))\n return false;\n if (stack.pos > pos) {\n pushStackDedup(stack, newStacks);\n return true;\n }\n }\n }\n runRecovery(stacks, tokens, newStacks) {\n let finished = null, restarted = false;\n for (let i = 0; i < stacks.length; i++) {\n let stack = stacks[i], token = tokens[i << 1], tokenEnd = tokens[(i << 1) + 1];\n let base = verbose ? this.stackID(stack) + \" -> \" : \"\";\n if (stack.deadEnd) {\n if (restarted)\n continue;\n restarted = true;\n stack.restart();\n if (verbose)\n console.log(base + this.stackID(stack) + \" (restarted)\");\n let done = this.advanceFully(stack, newStacks);\n if (done)\n continue;\n }\n let force = stack.split(), forceBase = base;\n for (let j = 0; j < 10 /* Rec.ForceReduceLimit */ && force.forceReduce(); j++) {\n if (verbose)\n console.log(forceBase + this.stackID(force) + \" (via force-reduce)\");\n let done = this.advanceFully(force, newStacks);\n if (done)\n break;\n if (verbose)\n forceBase = this.stackID(force) + \" -> \";\n }\n for (let insert of stack.recoverByInsert(token)) {\n if (verbose)\n console.log(base + this.stackID(insert) + \" (via recover-insert)\");\n this.advanceFully(insert, newStacks);\n }\n if (this.stream.end > stack.pos) {\n if (tokenEnd == stack.pos) {\n tokenEnd++;\n token = 0 /* Term.Err */;\n }\n stack.recoverByDelete(token, tokenEnd);\n if (verbose)\n console.log(base + this.stackID(stack) + ` (via recover-delete ${this.parser.getName(token)})`);\n pushStackDedup(stack, newStacks);\n }\n else if (!finished || finished.score < stack.score) {\n finished = stack;\n }\n }\n return finished;\n }\n // Convert the stack's buffer to a syntax tree.\n stackToTree(stack) {\n stack.close();\n return Tree.build({ buffer: StackBufferCursor.create(stack),\n nodeSet: this.parser.nodeSet,\n topID: this.topTerm,\n maxBufferLength: this.parser.bufferLength,\n reused: this.reused,\n start: this.ranges[0].from,\n length: stack.pos - this.ranges[0].from,\n minRepeatType: this.parser.minRepeatTerm });\n }\n stackID(stack) {\n let id = (stackIDs || (stackIDs = new WeakMap)).get(stack);\n if (!id)\n stackIDs.set(stack, id = String.fromCodePoint(this.nextStackID++));\n return id + stack;\n }\n}\nfunction pushStackDedup(stack, newStacks) {\n for (let i = 0; i < newStacks.length; i++) {\n let other = newStacks[i];\n if (other.pos == stack.pos && other.sameState(stack)) {\n if (newStacks[i].score < stack.score)\n newStacks[i] = stack;\n return;\n }\n }\n newStacks.push(stack);\n}\nclass Dialect {\n constructor(source, flags, disabled) {\n this.source = source;\n this.flags = flags;\n this.disabled = disabled;\n }\n allows(term) { return !this.disabled || this.disabled[term] == 0; }\n}\nconst id = x => x;\n/**\nContext trackers are used to track stateful context (such as\nindentation in the Python grammar, or parent elements in the XML\ngrammar) needed by external tokenizers. You declare them in a\ngrammar file as `@context exportName from \"module\"`.\n\nContext values should be immutable, and can be updated (replaced)\non shift or reduce actions.\n\nThe export used in a `@context` declaration should be of this\ntype.\n*/\nclass ContextTracker {\n /**\n Define a context tracker.\n */\n constructor(spec) {\n this.start = spec.start;\n this.shift = spec.shift || id;\n this.reduce = spec.reduce || id;\n this.reuse = spec.reuse || id;\n this.hash = spec.hash || (() => 0);\n this.strict = spec.strict !== false;\n }\n}\n/**\nHolds the parse tables for a given grammar, as generated by\n`lezer-generator`, and provides [methods](#common.Parser) to parse\ncontent with.\n*/\nclass LRParser extends Parser {\n /**\n @internal\n */\n constructor(spec) {\n super();\n /**\n @internal\n */\n this.wrappers = [];\n if (spec.version != 14 /* File.Version */)\n throw new RangeError(`Parser version (${spec.version}) doesn't match runtime version (${14 /* File.Version */})`);\n let nodeNames = spec.nodeNames.split(\" \");\n this.minRepeatTerm = nodeNames.length;\n for (let i = 0; i < spec.repeatNodeCount; i++)\n nodeNames.push(\"\");\n let topTerms = Object.keys(spec.topRules).map(r => spec.topRules[r][1]);\n let nodeProps = [];\n for (let i = 0; i < nodeNames.length; i++)\n nodeProps.push([]);\n function setProp(nodeID, prop, value) {\n nodeProps[nodeID].push([prop, prop.deserialize(String(value))]);\n }\n if (spec.nodeProps)\n for (let propSpec of spec.nodeProps) {\n let prop = propSpec[0];\n if (typeof prop == \"string\")\n prop = NodeProp[prop];\n for (let i = 1; i < propSpec.length;) {\n let next = propSpec[i++];\n if (next >= 0) {\n setProp(next, prop, propSpec[i++]);\n }\n else {\n let value = propSpec[i + -next];\n for (let j = -next; j > 0; j--)\n setProp(propSpec[i++], prop, value);\n i++;\n }\n }\n }\n this.nodeSet = new NodeSet(nodeNames.map((name, i) => NodeType.define({\n name: i >= this.minRepeatTerm ? undefined : name,\n id: i,\n props: nodeProps[i],\n top: topTerms.indexOf(i) > -1,\n error: i == 0,\n skipped: spec.skippedNodes && spec.skippedNodes.indexOf(i) > -1\n })));\n if (spec.propSources)\n this.nodeSet = this.nodeSet.extend(...spec.propSources);\n this.strict = false;\n this.bufferLength = DefaultBufferLength;\n let tokenArray = decodeArray(spec.tokenData);\n this.context = spec.context;\n this.specializerSpecs = spec.specialized || [];\n this.specialized = new Uint16Array(this.specializerSpecs.length);\n for (let i = 0; i < this.specializerSpecs.length; i++)\n this.specialized[i] = this.specializerSpecs[i].term;\n this.specializers = this.specializerSpecs.map(getSpecializer);\n this.states = decodeArray(spec.states, Uint32Array);\n this.data = decodeArray(spec.stateData);\n this.goto = decodeArray(spec.goto);\n this.maxTerm = spec.maxTerm;\n this.tokenizers = spec.tokenizers.map(value => typeof value == \"number\" ? new TokenGroup(tokenArray, value) : value);\n this.topRules = spec.topRules;\n this.dialects = spec.dialects || {};\n this.dynamicPrecedences = spec.dynamicPrecedences || null;\n this.tokenPrecTable = spec.tokenPrec;\n this.termNames = spec.termNames || null;\n this.maxNode = this.nodeSet.types.length - 1;\n this.dialect = this.parseDialect();\n this.top = this.topRules[Object.keys(this.topRules)[0]];\n }\n createParse(input, fragments, ranges) {\n let parse = new Parse(this, input, fragments, ranges);\n for (let w of this.wrappers)\n parse = w(parse, input, fragments, ranges);\n return parse;\n }\n /**\n Get a goto table entry @internal\n */\n getGoto(state, term, loose = false) {\n let table = this.goto;\n if (term >= table[0])\n return -1;\n for (let pos = table[term + 1];;) {\n let groupTag = table[pos++], last = groupTag & 1;\n let target = table[pos++];\n if (last && loose)\n return target;\n for (let end = pos + (groupTag >> 1); pos < end; pos++)\n if (table[pos] == state)\n return target;\n if (last)\n return -1;\n }\n }\n /**\n Check if this state has an action for a given terminal @internal\n */\n hasAction(state, terminal) {\n let data = this.data;\n for (let set = 0; set < 2; set++) {\n for (let i = this.stateSlot(state, set ? 2 /* ParseState.Skip */ : 1 /* ParseState.Actions */), next;; i += 3) {\n if ((next = data[i]) == 65535 /* Seq.End */) {\n if (data[i + 1] == 1 /* Seq.Next */)\n next = data[i = pair(data, i + 2)];\n else if (data[i + 1] == 2 /* Seq.Other */)\n return pair(data, i + 2);\n else\n break;\n }\n if (next == terminal || next == 0 /* Term.Err */)\n return pair(data, i + 1);\n }\n }\n return 0;\n }\n /**\n @internal\n */\n stateSlot(state, slot) {\n return this.states[(state * 6 /* ParseState.Size */) + slot];\n }\n /**\n @internal\n */\n stateFlag(state, flag) {\n return (this.stateSlot(state, 0 /* ParseState.Flags */) & flag) > 0;\n }\n /**\n @internal\n */\n validAction(state, action) {\n return !!this.allActions(state, a => a == action ? true : null);\n }\n /**\n @internal\n */\n allActions(state, action) {\n let deflt = this.stateSlot(state, 4 /* ParseState.DefaultReduce */);\n let result = deflt ? action(deflt) : undefined;\n for (let i = this.stateSlot(state, 1 /* ParseState.Actions */); result == null; i += 3) {\n if (this.data[i] == 65535 /* Seq.End */) {\n if (this.data[i + 1] == 1 /* Seq.Next */)\n i = pair(this.data, i + 2);\n else\n break;\n }\n result = action(pair(this.data, i + 1));\n }\n return result;\n }\n /**\n Get the states that can follow this one through shift actions or\n goto jumps. @internal\n */\n nextStates(state) {\n let result = [];\n for (let i = this.stateSlot(state, 1 /* ParseState.Actions */);; i += 3) {\n if (this.data[i] == 65535 /* Seq.End */) {\n if (this.data[i + 1] == 1 /* Seq.Next */)\n i = pair(this.data, i + 2);\n else\n break;\n }\n if ((this.data[i + 2] & (65536 /* Action.ReduceFlag */ >> 16)) == 0) {\n let value = this.data[i + 1];\n if (!result.some((v, i) => (i & 1) && v == value))\n result.push(this.data[i], value);\n }\n }\n return result;\n }\n /**\n Configure the parser. Returns a new parser instance that has the\n given settings modified. Settings not provided in `config` are\n kept from the original parser.\n */\n configure(config) {\n // Hideous reflection-based kludge to make it easy to create a\n // slightly modified copy of a parser.\n let copy = Object.assign(Object.create(LRParser.prototype), this);\n if (config.props)\n copy.nodeSet = this.nodeSet.extend(...config.props);\n if (config.top) {\n let info = this.topRules[config.top];\n if (!info)\n throw new RangeError(`Invalid top rule name ${config.top}`);\n copy.top = info;\n }\n if (config.tokenizers)\n copy.tokenizers = this.tokenizers.map(t => {\n let found = config.tokenizers.find(r => r.from == t);\n return found ? found.to : t;\n });\n if (config.specializers) {\n copy.specializers = this.specializers.slice();\n copy.specializerSpecs = this.specializerSpecs.map((s, i) => {\n let found = config.specializers.find(r => r.from == s.external);\n if (!found)\n return s;\n let spec = Object.assign(Object.assign({}, s), { external: found.to });\n copy.specializers[i] = getSpecializer(spec);\n return spec;\n });\n }\n if (config.contextTracker)\n copy.context = config.contextTracker;\n if (config.dialect)\n copy.dialect = this.parseDialect(config.dialect);\n if (config.strict != null)\n copy.strict = config.strict;\n if (config.wrap)\n copy.wrappers = copy.wrappers.concat(config.wrap);\n if (config.bufferLength != null)\n copy.bufferLength = config.bufferLength;\n return copy;\n }\n /**\n Tells you whether any [parse wrappers](#lr.ParserConfig.wrap)\n are registered for this parser.\n */\n hasWrappers() {\n return this.wrappers.length > 0;\n }\n /**\n Returns the name associated with a given term. This will only\n work for all terms when the parser was generated with the\n `--names` option. By default, only the names of tagged terms are\n stored.\n */\n getName(term) {\n return this.termNames ? this.termNames[term] : String(term <= this.maxNode && this.nodeSet.types[term].name || term);\n }\n /**\n The eof term id is always allocated directly after the node\n types. @internal\n */\n get eofTerm() { return this.maxNode + 1; }\n /**\n The type of top node produced by the parser.\n */\n get topNode() { return this.nodeSet.types[this.top[1]]; }\n /**\n @internal\n */\n dynamicPrecedence(term) {\n let prec = this.dynamicPrecedences;\n return prec == null ? 0 : prec[term] || 0;\n }\n /**\n @internal\n */\n parseDialect(dialect) {\n let values = Object.keys(this.dialects), flags = values.map(() => false);\n if (dialect)\n for (let part of dialect.split(\" \")) {\n let id = values.indexOf(part);\n if (id >= 0)\n flags[id] = true;\n }\n let disabled = null;\n for (let i = 0; i < values.length; i++)\n if (!flags[i]) {\n for (let j = this.dialects[values[i]], id; (id = this.data[j++]) != 65535 /* Seq.End */;)\n (disabled || (disabled = new Uint8Array(this.maxTerm + 1)))[id] = 1;\n }\n return new Dialect(dialect, flags, disabled);\n }\n /**\n Used by the output of the parser generator. Not available to\n user code. @hide\n */\n static deserialize(spec) {\n return new LRParser(spec);\n }\n}\nfunction pair(data, off) { return data[off] | (data[off + 1] << 16); }\nfunction findFinished(stacks) {\n let best = null;\n for (let stack of stacks) {\n let stopped = stack.p.stoppedAt;\n if ((stack.pos == stack.p.stream.end || stopped != null && stack.pos > stopped) &&\n stack.p.parser.stateFlag(stack.state, 2 /* StateFlag.Accepting */) &&\n (!best || best.score < stack.score))\n best = stack;\n }\n return best;\n}\nfunction getSpecializer(spec) {\n if (spec.external) {\n let mask = spec.extend ? 1 /* Specialize.Extend */ : 0 /* Specialize.Specialize */;\n return (value, stack) => (spec.external(value, stack) << 1) | mask;\n }\n return spec.get;\n}\n\nexport { ContextTracker, ExternalTokenizer, InputStream, LRParser, LocalTokenGroup, Stack };\n", "import { ContextTracker, ExternalTokenizer, LRParser, LocalTokenGroup } from '@lezer/lr';\nimport { styleTags, tags } from '@lezer/highlight';\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst noSemi = 316,\n noSemiType = 317,\n incdec = 1,\n incdecPrefix = 2,\n questionDot = 3,\n JSXStartTag = 4,\n insertSemi = 318,\n spaces = 320,\n newline = 321,\n LineComment = 5,\n BlockComment = 6,\n Dialect_jsx = 0;\n\n/* Hand-written tokenizers for JavaScript tokens that can't be\n expressed by lezer's built-in tokenizer. */\n\nconst space = [9, 10, 11, 12, 13, 32, 133, 160, 5760, 8192, 8193, 8194, 8195, 8196, 8197, 8198, 8199, 8200,\n 8201, 8202, 8232, 8233, 8239, 8287, 12288];\n\nconst braceR = 125, semicolon = 59, slash = 47, star = 42, plus = 43, minus = 45, lt = 60, comma = 44,\n question = 63, dot = 46, bracketL = 91;\n\nconst trackNewline = new ContextTracker({\n start: false,\n shift(context, term) {\n return term == LineComment || term == BlockComment || term == spaces ? context : term == newline\n },\n strict: false\n});\n\nconst insertSemicolon = new ExternalTokenizer((input, stack) => {\n let {next} = input;\n if (next == braceR || next == -1 || stack.context)\n input.acceptToken(insertSemi);\n}, {contextual: true, fallback: true});\n\nconst noSemicolon = new ExternalTokenizer((input, stack) => {\n let {next} = input, after;\n if (space.indexOf(next) > -1) return\n if (next == slash && ((after = input.peek(1)) == slash || after == star)) return\n if (next != braceR && next != semicolon && next != -1 && !stack.context)\n input.acceptToken(noSemi);\n}, {contextual: true});\n\nconst noSemicolonType = new ExternalTokenizer((input, stack) => {\n if (input.next == bracketL && !stack.context) input.acceptToken(noSemiType);\n}, {contextual: true});\n\nconst operatorToken = new ExternalTokenizer((input, stack) => {\n let {next} = input;\n if (next == plus || next == minus) {\n input.advance();\n if (next == input.next) {\n input.advance();\n let mayPostfix = !stack.context && stack.canShift(incdec);\n input.acceptToken(mayPostfix ? incdec : incdecPrefix);\n }\n } else if (next == question && input.peek(1) == dot) {\n input.advance(); input.advance();\n if (input.next < 48 || input.next > 57) // No digit after\n input.acceptToken(questionDot);\n }\n}, {contextual: true});\n\nfunction identifierChar(ch, start) {\n return ch >= 65 && ch <= 90 || ch >= 97 && ch <= 122 || ch == 95 || ch >= 192 ||\n !start && ch >= 48 && ch <= 57\n}\n\nconst jsx = new ExternalTokenizer((input, stack) => {\n if (input.next != lt || !stack.dialectEnabled(Dialect_jsx)) return\n input.advance();\n if (input.next == slash) return\n // Scan for an identifier followed by a comma or 'extends', don't\n // treat this as a start tag if present.\n let back = 0;\n while (space.indexOf(input.next) > -1) { input.advance(); back++; }\n if (identifierChar(input.next, true)) {\n input.advance();\n back++;\n while (identifierChar(input.next, false)) { input.advance(); back++; }\n while (space.indexOf(input.next) > -1) { input.advance(); back++; }\n if (input.next == comma) return\n for (let i = 0;; i++) {\n if (i == 7) {\n if (!identifierChar(input.next, true)) return\n break\n }\n if (input.next != \"extends\".charCodeAt(i)) break\n input.advance();\n back++;\n }\n }\n input.acceptToken(JSXStartTag, -back);\n});\n\nconst jsHighlight = styleTags({\n \"get set async static\": tags.modifier,\n \"for while do if else switch try catch finally return throw break continue default case defer\": tags.controlKeyword,\n \"in of await yield void typeof delete instanceof as satisfies\": tags.operatorKeyword,\n \"let var const using function class extends\": tags.definitionKeyword,\n \"import export from\": tags.moduleKeyword,\n \"with debugger new\": tags.keyword,\n TemplateString: tags.special(tags.string),\n super: tags.atom,\n BooleanLiteral: tags.bool,\n this: tags.self,\n null: tags.null,\n Star: tags.modifier,\n VariableName: tags.variableName,\n \"CallExpression/VariableName TaggedTemplateExpression/VariableName\": tags.function(tags.variableName),\n VariableDefinition: tags.definition(tags.variableName),\n Label: tags.labelName,\n PropertyName: tags.propertyName,\n PrivatePropertyName: tags.special(tags.propertyName),\n \"CallExpression/MemberExpression/PropertyName\": tags.function(tags.propertyName),\n \"FunctionDeclaration/VariableDefinition\": tags.function(tags.definition(tags.variableName)),\n \"ClassDeclaration/VariableDefinition\": tags.definition(tags.className),\n \"NewExpression/VariableName\": tags.className,\n PropertyDefinition: tags.definition(tags.propertyName),\n PrivatePropertyDefinition: tags.definition(tags.special(tags.propertyName)),\n UpdateOp: tags.updateOperator,\n \"LineComment Hashbang\": tags.lineComment,\n BlockComment: tags.blockComment,\n Number: tags.number,\n String: tags.string,\n Escape: tags.escape,\n ArithOp: tags.arithmeticOperator,\n LogicOp: tags.logicOperator,\n BitOp: tags.bitwiseOperator,\n CompareOp: tags.compareOperator,\n RegExp: tags.regexp,\n Equals: tags.definitionOperator,\n Arrow: tags.function(tags.punctuation),\n \": Spread\": tags.punctuation,\n \"( )\": tags.paren,\n \"[ ]\": tags.squareBracket,\n \"{ }\": tags.brace,\n \"InterpolationStart InterpolationEnd\": tags.special(tags.brace),\n \".\": tags.derefOperator,\n \", ;\": tags.separator,\n \"@\": tags.meta,\n\n TypeName: tags.typeName,\n TypeDefinition: tags.definition(tags.typeName),\n \"type enum interface implements namespace module declare\": tags.definitionKeyword,\n \"abstract global Privacy readonly override\": tags.modifier,\n \"is keyof unique infer asserts\": tags.operatorKeyword,\n\n JSXAttributeValue: tags.attributeValue,\n JSXText: tags.content,\n \"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag\": tags.angleBracket,\n \"JSXIdentifier JSXNameSpacedName\": tags.tagName,\n \"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName\": tags.attributeName,\n \"JSXBuiltin/JSXIdentifier\": tags.standard(tags.tagName)\n});\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst spec_identifier = {__proto__:null,export:20, as:25, from:33, default:36, async:41, function:42, in:52, out:55, const:56, extends:60, this:64, true:72, false:72, null:84, void:88, typeof:92, super:108, new:142, delete:154, yield:163, await:167, class:172, public:235, private:235, protected:235, readonly:237, instanceof:256, satisfies:259, import:292, keyof:349, unique:353, infer:359, asserts:395, is:397, abstract:417, implements:419, type:421, let:424, var:426, using:429, interface:435, enum:439, namespace:445, module:447, declare:451, global:455, defer:471, for:476, of:485, while:488, with:492, do:496, if:500, else:502, switch:506, case:512, try:518, catch:522, finally:526, return:530, throw:534, break:538, continue:542, debugger:546};\nconst spec_word = {__proto__:null,async:129, get:131, set:133, declare:195, public:197, private:197, protected:197, static:199, abstract:201, override:203, readonly:209, accessor:211, new:401};\nconst spec_LessThan = {__proto__:null,\"<\":193};\nconst parser = LRParser.deserialize({\n version: 14,\n states: \"$F|Q%TQlOOO%[QlOOO'_QpOOP(lO`OOO*zQ!0MxO'#CiO+RO#tO'#CjO+aO&jO'#CjO+oO#@ItO'#DaO.QQlO'#DgO.bQlO'#DrO%[QlO'#DzO0fQlO'#ESOOQ!0Lf'#E['#E[O1PQ`O'#EXOOQO'#Ep'#EpOOQO'#Il'#IlO1XQ`O'#GsO1dQ`O'#EoO1iQ`O'#EoO3hQ!0MxO'#JrO6[Q!0MxO'#JsO6uQ`O'#F]O6zQ,UO'#FtOOQ!0Lf'#Ff'#FfO7VO7dO'#FfO9XQMhO'#F|O9`Q`O'#F{OOQ!0Lf'#Js'#JsOOQ!0Lb'#Jr'#JrO9eQ`O'#GwOOQ['#K_'#K_O9pQ`O'#IYO9uQ!0LrO'#IZOOQ['#J`'#J`OOQ['#I_'#I_Q`QlOOQ`QlOOO9}Q!L^O'#DvO:UQlO'#EOO:]QlO'#EQO9kQ`O'#GsO:dQMhO'#CoO:rQ`O'#EnO:}Q`O'#EyO;hQMhO'#FeO;xQ`O'#GsOOQO'#K`'#K`O;}Q`O'#K`O<]Q`O'#G{O<]Q`O'#G|O<]Q`O'#HOO9kQ`O'#HRO=SQ`O'#HUO>kQ`O'#CeO>{Q`O'#HcO?TQ`O'#HiO?TQ`O'#HkO`QlO'#HmO?TQ`O'#HoO?TQ`O'#HrO?YQ`O'#HxO?_Q!0LsO'#IOO%[QlO'#IQO?jQ!0LsO'#ISO?uQ!0LsO'#IUO9uQ!0LrO'#IWO@QQ!0MxO'#CiOASQpO'#DlQOQ`OOO%[QlO'#EQOAjQ`O'#ETO:dQMhO'#EnOAuQ`O'#EnOBQQ!bO'#FeOOQ['#Cg'#CgOOQ!0Lb'#Dq'#DqOOQ!0Lb'#Jv'#JvO%[QlO'#JvOOQO'#Jy'#JyOOQO'#Ih'#IhOCQQpO'#EgOOQ!0Lb'#Ef'#EfOOQ!0Lb'#J}'#J}OC|Q!0MSO'#EgODWQpO'#EWOOQO'#Jx'#JxODlQpO'#JyOEyQpO'#EWODWQpO'#EgPFWO&2DjO'#CbPOOO)CD})CD}OOOO'#I`'#I`OFcO#tO,59UOOQ!0Lh,59U,59UOOOO'#Ia'#IaOFqO&jO,59UOGPQ!L^O'#DcOOOO'#Ic'#IcOGWO#@ItO,59{OOQ!0Lf,59{,59{OGfQlO'#IdOGyQ`O'#JtOIxQ!fO'#JtO+}QlO'#JtOJPQ`O,5:ROJgQ`O'#EpOJtQ`O'#KTOKPQ`O'#KSOKPQ`O'#KSOKXQ`O,5;^OK^Q`O'#KROOQ!0Ln,5:^,5:^OKeQlO,5:^OMcQ!0MxO,5:fONSQ`O,5:nONmQ!0LrO'#KQONtQ`O'#KPO9eQ`O'#KPO! YQ`O'#KPO! bQ`O,5;]O! gQ`O'#KPO!#lQ!fO'#JsOOQ!0Lh'#Ci'#CiO%[QlO'#ESO!$[Q!fO,5:sOOQS'#Jz'#JzOOQO-E<j-E<jO9kQ`O,5=_O!$rQ`O,5=_O!$wQlO,5;ZO!&zQMhO'#EkO!(eQ`O,5;ZO!(jQlO'#DyO!(tQpO,5;dO!(|QpO,5;dO%[QlO,5;dOOQ['#FT'#FTOOQ['#FV'#FVO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eOOQ['#FZ'#FZO!)[QlO,5;tOOQ!0Lf,5;y,5;yOOQ!0Lf,5;z,5;zOOQ!0Lf,5;|,5;|O%[QlO'#IpO!+_Q!0LrO,5<iO%[QlO,5;eO!&zQMhO,5;eO!+|QMhO,5;eO!-nQMhO'#E^O%[QlO,5;wOOQ!0Lf,5;{,5;{O!-uQ,UO'#FjO!.rQ,UO'#KXO!.^Q,UO'#KXO!.yQ,UO'#KXOOQO'#KX'#KXO!/_Q,UO,5<SOOOW,5<`,5<`O!/pQlO'#FvOOOW'#Io'#IoO7VO7dO,5<QO!/wQ,UO'#FxOOQ!0Lf,5<Q,5<QO!0hQ$IUO'#CyOOQ!0Lh'#C}'#C}O!0{O#@ItO'#DRO!1iQMjO,5<eO!1pQ`O,5<hO!3YQ(CWO'#GXO!3jQ`O'#GYO!3oQ`O'#GYO!5_Q(CWO'#G^O!6dQpO'#GbOOQO'#Gn'#GnO!,TQMhO'#GmOOQO'#Gp'#GpO!,TQMhO'#GoO!7VQ$IUO'#JlOOQ!0Lh'#Jl'#JlO!7aQ`O'#JkO!7oQ`O'#JjO!7wQ`O'#CuOOQ!0Lh'#C{'#C{O!8YQ`O'#C}OOQ!0Lh'#DV'#DVOOQ!0Lh'#DX'#DXO!8_Q`O,5<eO1SQ`O'#DZO!,TQMhO'#GPO!,TQMhO'#GRO!8gQ`O'#GTO!8lQ`O'#GUO!3oQ`O'#G[O!,TQMhO'#GaO<]Q`O'#JkO!8qQ`O'#EqO!9`Q`O,5<gOOQ!0Lb'#Cr'#CrO!9hQ`O'#ErO!:bQpO'#EsOOQ!0Lb'#KR'#KRO!:iQ!0LrO'#KaO9uQ!0LrO,5=cO`QlO,5>tOOQ['#Jh'#JhOOQ[,5>u,5>uOOQ[-E<]-E<]O!<hQ!0MxO,5:bO!:]QpO,5:`O!?RQ!0MxO,5:jO%[QlO,5:jO!AiQ!0MxO,5:lOOQO,5@z,5@zO!BYQMhO,5=_O!BhQ!0LrO'#JiO9`Q`O'#JiO!ByQ!0LrO,59ZO!CUQpO,59ZO!C^QMhO,59ZO:dQMhO,59ZO!CiQ`O,5;ZO!CqQ`O'#HbO!DVQ`O'#KdO%[QlO,5;}O!:]QpO,5<PO!D_Q`O,5=zO!DdQ`O,5=zO!DiQ`O,5=zO!DwQ`O,5=zO9uQ!0LrO,5=zO<]Q`O,5=jOOQO'#Cy'#CyO!EOQpO,5=gO!EWQMhO,5=hO!EcQ`O,5=jO!EhQ!bO,5=mO!EpQ`O'#K`O?YQ`O'#HWO9kQ`O'#HYO!EuQ`O'#HYO:dQMhO'#H[O!EzQ`O'#H[OOQ[,5=p,5=pO!FPQ`O'#H]O!FbQ`O'#CoO!FgQ`O,59PO!FqQ`O,59PO!HvQlO,59POOQ[,59P,59PO!IWQ!0LrO,59PO%[QlO,59PO!KcQlO'#HeOOQ['#Hf'#HfOOQ['#Hg'#HgO`QlO,5=}O!KyQ`O,5=}O`QlO,5>TO`QlO,5>VO!LOQ`O,5>XO`QlO,5>ZO!LTQ`O,5>^O!LYQlO,5>dOOQ[,5>j,5>jO%[QlO,5>jO9uQ!0LrO,5>lOOQ[,5>n,5>nO#!dQ`O,5>nOOQ[,5>p,5>pO#!dQ`O,5>pOOQ[,5>r,5>rO##QQpO'#D_O%[QlO'#JvO##sQpO'#JvO##}QpO'#DmO#$`QpO'#DmO#&qQlO'#DmO#&xQ`O'#JuO#'QQ`O,5:WO#'VQ`O'#EtO#'eQ`O'#KUO#'mQ`O,5;_O#'rQpO'#DmO#(PQpO'#EVOOQ!0Lf,5:o,5:oO%[QlO,5:oO#(WQ`O,5:oO?YQ`O,5;YO!CUQpO,5;YO!C^QMhO,5;YO:dQMhO,5;YO#(`Q`O,5@bO#(eQ07dO,5:sOOQO-E<f-E<fO#)kQ!0MSO,5;RODWQpO,5:rO#)uQpO,5:rODWQpO,5;RO!ByQ!0LrO,5:rOOQ!0Lb'#Ej'#EjOOQO,5;R,5;RO%[QlO,5;RO#*SQ!0LrO,5;RO#*_Q!0LrO,5;RO!CUQpO,5:rOOQO,5;X,5;XO#*mQ!0LrO,5;RPOOO'#I^'#I^P#+RO&2DjO,58|POOO,58|,58|OOOO-E<^-E<^OOQ!0Lh1G.p1G.pOOOO-E<_-E<_OOOO,59},59}O#+^Q!bO,59}OOOO-E<a-E<aOOQ!0Lf1G/g1G/gO#+cQ!fO,5?OO+}QlO,5?OOOQO,5?U,5?UO#+mQlO'#IdOOQO-E<b-E<bO#+zQ`O,5@`O#,SQ!fO,5@`O#,ZQ`O,5@nOOQ!0Lf1G/m1G/mO%[QlO,5@oO#,cQ`O'#IjOOQO-E<h-E<hO#,ZQ`O,5@nOOQ!0Lb1G0x1G0xOOQ!0Ln1G/x1G/xOOQ!0Ln1G0Y1G0YO%[QlO,5@lO#,wQ!0LrO,5@lO#-YQ!0LrO,5@lO#-aQ`O,5@kO9eQ`O,5@kO#-iQ`O,5@kO#-wQ`O'#ImO#-aQ`O,5@kOOQ!0Lb1G0w1G0wO!(tQpO,5:uO!)PQpO,5:uOOQS,5:w,5:wO#.iQdO,5:wO#.qQMhO1G2yO9kQ`O1G2yOOQ!0Lf1G0u1G0uO#/PQ!0MxO1G0uO#0UQ!0MvO,5;VOOQ!0Lh'#GW'#GWO#0rQ!0MzO'#JlO!$wQlO1G0uO#2}Q!fO'#JwO%[QlO'#JwO#3XQ`O,5:eOOQ!0Lh'#D_'#D_OOQ!0Lf1G1O1G1OO%[QlO1G1OOOQ!0Lf1G1f1G1fO#3^Q`O1G1OO#5rQ!0MxO1G1PO#5yQ!0MxO1G1PO#8aQ!0MxO1G1PO#8hQ!0MxO1G1PO#;OQ!0MxO1G1PO#=fQ!0MxO1G1PO#=mQ!0MxO1G1PO#=tQ!0MxO1G1PO#@[Q!0MxO1G1PO#@cQ!0MxO1G1PO#BpQ?MtO'#CiO#DkQ?MtO1G1`O#DrQ?MtO'#JsO#EVQ!0MxO,5?[OOQ!0Lb-E<n-E<nO#GdQ!0MxO1G1PO#HaQ!0MzO1G1POOQ!0Lf1G1P1G1PO#IdQMjO'#J|O#InQ`O,5:xO#IsQ!0MxO1G1cO#JgQ,UO,5<WO#JoQ,UO,5<XO#JwQ,UO'#FoO#K`Q`O'#FnOOQO'#KY'#KYOOQO'#In'#InO#KeQ,UO1G1nOOQ!0Lf1G1n1G1nOOOW1G1y1G1yO#KvQ?MtO'#JrO#LQQ`O,5<bO!)[QlO,5<bOOOW-E<m-E<mOOQ!0Lf1G1l1G1lO#LVQpO'#KXOOQ!0Lf,5<d,5<dO#L_QpO,5<dO#LdQMhO'#DTOOOO'#Ib'#IbO#LkO#@ItO,59mOOQ!0Lh,59m,59mO%[QlO1G2PO!8lQ`O'#IrO#LvQ`O,5<zOOQ!0Lh,5<w,5<wO!,TQMhO'#IuO#MdQMjO,5=XO!,TQMhO'#IwO#NVQMjO,5=ZO!&zQMhO,5=]OOQO1G2S1G2SO#NaQ!dO'#CrO#NtQ(CWO'#ErO$ |QpO'#GbO$!dQ!dO,5<sO$!kQ`O'#K[O9eQ`O'#K[O$!yQ`O,5<uO$#aQ!dO'#C{O!,TQMhO,5<tO$#kQ`O'#GZO$$PQ`O,5<tO$$UQ!dO'#GWO$$cQ!dO'#K]O$$mQ`O'#K]O!&zQMhO'#K]O$$rQ`O,5<xO$$wQlO'#JvO$%RQpO'#GcO#$`QpO'#GcO$%dQ`O'#GgO!3oQ`O'#GkO$%iQ!0LrO'#ItO$%tQpO,5<|OOQ!0Lp,5<|,5<|O$%{QpO'#GcO$&YQpO'#GdO$&kQpO'#GdO$&pQMjO,5=XO$'QQMjO,5=ZOOQ!0Lh,5=^,5=^O!,TQMhO,5@VO!,TQMhO,5@VO$'bQ`O'#IyO$'vQ`O,5@UO$(OQ`O,59aOOQ!0Lh,59i,59iO$(TQ`O,5@VO$)TQ$IYO,59uOOQ!0Lh'#Jp'#JpO$)vQMjO,5<kO$*iQMjO,5<mO@zQ`O,5<oOOQ!0Lh,5<p,5<pO$*sQ`O,5<vO$*xQMjO,5<{O$+YQ`O'#KPO!$wQlO1G2RO$+_Q`O1G2RO9eQ`O'#KSO9eQ`O'#EtO%[QlO'#EtO9eQ`O'#I{O$+dQ!0LrO,5@{OOQ[1G2}1G2}OOQ[1G4`1G4`OOQ!0Lf1G/|1G/|OOQ!0Lf1G/z1G/zO$-fQ!0MxO1G0UOOQ[1G2y1G2yO!&zQMhO1G2yO%[QlO1G2yO#.tQ`O1G2yO$/jQMhO'#EkOOQ!0Lb,5@T,5@TO$/wQ!0LrO,5@TOOQ[1G.u1G.uO!ByQ!0LrO1G.uO!CUQpO1G.uO!C^QMhO1G.uO$0YQ`O1G0uO$0_Q`O'#CiO$0jQ`O'#KeO$0rQ`O,5=|O$0wQ`O'#KeO$0|Q`O'#KeO$1[Q`O'#JRO$1jQ`O,5AOO$1rQ!fO1G1iOOQ!0Lf1G1k1G1kO9kQ`O1G3fO@zQ`O1G3fO$1yQ`O1G3fO$2OQ`O1G3fO!DiQ`O1G3fO9uQ!0LrO1G3fOOQ[1G3f1G3fO!EcQ`O1G3UO!&zQMhO1G3RO$2TQ`O1G3ROOQ[1G3S1G3SO!&zQMhO1G3SO$2YQ`O1G3SO$2bQpO'#HQOOQ[1G3U1G3UO!6_QpO'#I}O!EhQ!bO1G3XOOQ[1G3X1G3XOOQ[,5=r,5=rO$2jQMhO,5=tO9kQ`O,5=tO$%dQ`O,5=vO9`Q`O,5=vO!CUQpO,5=vO!C^QMhO,5=vO:dQMhO,5=vO$2xQ`O'#KcO$3TQ`O,5=wOOQ[1G.k1G.kO$3YQ!0LrO1G.kO@zQ`O1G.kO$3eQ`O1G.kO9uQ!0LrO1G.kO$5mQ!fO,5AQO$5zQ`O,5AQO9eQ`O,5AQO$6VQlO,5>PO$6^Q`O,5>POOQ[1G3i1G3iO`QlO1G3iOOQ[1G3o1G3oOOQ[1G3q1G3qO?TQ`O1G3sO$6cQlO1G3uO$:gQlO'#HtOOQ[1G3x1G3xO$:tQ`O'#HzO?YQ`O'#H|OOQ[1G4O1G4OO$:|QlO1G4OO9uQ!0LrO1G4UOOQ[1G4W1G4WOOQ!0Lb'#G_'#G_O9uQ!0LrO1G4YO9uQ!0LrO1G4[O$?TQ`O,5@bO!)[QlO,5;`O9eQ`O,5;`O?YQ`O,5:XO!)[QlO,5:XO!CUQpO,5:XO$?YQ?MtO,5:XOOQO,5;`,5;`O$?dQpO'#IeO$?zQ`O,5@aOOQ!0Lf1G/r1G/rO$@SQpO'#IkO$@^Q`O,5@pOOQ!0Lb1G0y1G0yO#$`QpO,5:XOOQO'#Ig'#IgO$@fQpO,5:qOOQ!0Ln,5:q,5:qO#(ZQ`O1G0ZOOQ!0Lf1G0Z1G0ZO%[QlO1G0ZOOQ!0Lf1G0t1G0tO?YQ`O1G0tO!CUQpO1G0tO!C^QMhO1G0tOOQ!0Lb1G5|1G5|O!ByQ!0LrO1G0^OOQO1G0m1G0mO%[QlO1G0mO$@mQ!0LrO1G0mO$@xQ!0LrO1G0mO!CUQpO1G0^ODWQpO1G0^O$AWQ!0LrO1G0mOOQO1G0^1G0^O$AlQ!0MxO1G0mPOOO-E<[-E<[POOO1G.h1G.hOOOO1G/i1G/iO$AvQ!bO,5<iO$BOQ!fO1G4jOOQO1G4p1G4pO%[QlO,5?OO$BYQ`O1G5zO$BbQ`O1G6YO$BjQ!fO1G6ZO9eQ`O,5?UO$BtQ!0MxO1G6WO%[QlO1G6WO$CUQ!0LrO1G6WO$CgQ`O1G6VO$CgQ`O1G6VO9eQ`O1G6VO$CoQ`O,5?XO9eQ`O,5?XOOQO,5?X,5?XO$DTQ`O,5?XO$+YQ`O,5?XOOQO-E<k-E<kOOQS1G0a1G0aOOQS1G0c1G0cO#.lQ`O1G0cOOQ[7+(e7+(eO!&zQMhO7+(eO%[QlO7+(eO$DcQ`O7+(eO$DnQMhO7+(eO$D|Q!0MzO,5=XO$GXQ!0MzO,5=ZO$IdQ!0MzO,5=XO$KuQ!0MzO,5=ZO$NWQ!0MzO,59uO%!]Q!0MzO,5<kO%$hQ!0MzO,5<mO%&sQ!0MzO,5<{OOQ!0Lf7+&a7+&aO%)UQ!0MxO7+&aO%)xQlO'#IfO%*VQ`O,5@cO%*_Q!fO,5@cOOQ!0Lf1G0P1G0PO%*iQ`O7+&jOOQ!0Lf7+&j7+&jO%*nQ?MtO,5:fO%[QlO7+&zO%*xQ?MtO,5:bO%+VQ?MtO,5:jO%+aQ?MtO,5:lO%+kQMhO'#IiO%+uQ`O,5@hOOQ!0Lh1G0d1G0dOOQO1G1r1G1rOOQO1G1s1G1sO%+}Q!jO,5<ZO!)[QlO,5<YOOQO-E<l-E<lOOQ!0Lf7+'Y7+'YOOOW7+'e7+'eOOOW1G1|1G1|O%,YQ`O1G1|OOQ!0Lf1G2O1G2OOOOO,59o,59oO%,_Q!dO,59oOOOO-E<`-E<`OOQ!0Lh1G/X1G/XO%,fQ!0MxO7+'kOOQ!0Lh,5?^,5?^O%-YQMhO1G2fP%-aQ`O'#IrPOQ!0Lh-E<p-E<pO%-}QMjO,5?aOOQ!0Lh-E<s-E<sO%.pQMjO,5?cOOQ!0Lh-E<u-E<uO%.zQ!dO1G2wO%/RQ!dO'#CrO%/iQMhO'#KSO$$wQlO'#JvOOQ!0Lh1G2_1G2_O%/sQ`O'#IqO%0[Q`O,5@vO%0[Q`O,5@vO%0dQ`O,5@vO%0oQ`O,5@vOOQO1G2a1G2aO%0}QMjO1G2`O$+YQ`O'#K[O!,TQMhO1G2`O%1_Q(CWO'#IsO%1lQ`O,5@wO!&zQMhO,5@wO%1tQ!dO,5@wOOQ!0Lh1G2d1G2dO%4UQ!fO'#CiO%4`Q`O,5=POOQ!0Lb,5<},5<}O%4hQpO,5<}OOQ!0Lb,5=O,5=OOCwQ`O,5<}O%4sQpO,5<}OOQ!0Lb,5=R,5=RO$+YQ`O,5=VOOQO,5?`,5?`OOQO-E<r-E<rOOQ!0Lp1G2h1G2hO#$`QpO,5<}O$$wQlO,5=PO%5RQ`O,5=OO%5^QpO,5=OO!,TQMhO'#IuO%6WQMjO1G2sO!,TQMhO'#IwO%6yQMjO1G2uO%7TQMjO1G5qO%7_QMjO1G5qOOQO,5?e,5?eOOQO-E<w-E<wOOQO1G.{1G.{O!,TQMhO1G5qO!,TQMhO1G5qO!:]QpO,59wO%[QlO,59wOOQ!0Lh,5<j,5<jO%7lQ`O1G2ZO!,TQMhO1G2bO%7qQ!0MxO7+'mOOQ!0Lf7+'m7+'mO!$wQlO7+'mO%8eQ`O,5;`OOQ!0Lb,5?g,5?gOOQ!0Lb-E<y-E<yO%8jQ!dO'#K^O#(ZQ`O7+(eO4UQ!fO7+(eO$DfQ`O7+(eO%8tQ!0MvO'#CiO%9XQ!0MvO,5=SO%9lQ`O,5=SO%9tQ`O,5=SOOQ!0Lb1G5o1G5oOOQ[7+$a7+$aO!ByQ!0LrO7+$aO!CUQpO7+$aO!$wQlO7+&aO%9yQ`O'#JQO%:bQ`O,5APOOQO1G3h1G3hO9kQ`O,5APO%:bQ`O,5APO%:jQ`O,5APOOQO,5?m,5?mOOQO-E=P-E=POOQ!0Lf7+'T7+'TO%:oQ`O7+)QO9uQ!0LrO7+)QO9kQ`O7+)QO@zQ`O7+)QO%:tQ`O7+)QOOQ[7+)Q7+)QOOQ[7+(p7+(pO%:yQ!0MvO7+(mO!&zQMhO7+(mO!E^Q`O7+(nOOQ[7+(n7+(nO!&zQMhO7+(nO%;TQ`O'#KbO%;`Q`O,5=lOOQO,5?i,5?iOOQO-E<{-E<{OOQ[7+(s7+(sO%<rQpO'#HZOOQ[1G3`1G3`O!&zQMhO1G3`O%[QlO1G3`O%<yQ`O1G3`O%=UQMhO1G3`O9uQ!0LrO1G3bO$%dQ`O1G3bO9`Q`O1G3bO!CUQpO1G3bO!C^QMhO1G3bO%=dQ`O'#JPO%=xQ`O,5@}O%>QQpO,5@}OOQ!0Lb1G3c1G3cOOQ[7+$V7+$VO@zQ`O7+$VO9uQ!0LrO7+$VO%>]Q`O7+$VO%[QlO1G6lO%[QlO1G6mO%>bQ!0LrO1G6lO%>lQlO1G3kO%>sQ`O1G3kO%>xQlO1G3kOOQ[7+)T7+)TO9uQ!0LrO7+)_O`QlO7+)aOOQ['#Kh'#KhOOQ['#JS'#JSO%?PQlO,5>`OOQ[,5>`,5>`O%[QlO'#HuO%?^Q`O'#HwOOQ[,5>f,5>fO9eQ`O,5>fOOQ[,5>h,5>hOOQ[7+)j7+)jOOQ[7+)p7+)pOOQ[7+)t7+)tOOQ[7+)v7+)vO%?cQpO1G5|O%?}Q?MtO1G0zO%@XQ`O1G0zOOQO1G/s1G/sO%@dQ?MtO1G/sO?YQ`O1G/sO!)[QlO'#DmOOQO,5?P,5?POOQO-E<c-E<cOOQO,5?V,5?VOOQO-E<i-E<iO!CUQpO1G/sOOQO-E<e-E<eOOQ!0Ln1G0]1G0]OOQ!0Lf7+%u7+%uO#(ZQ`O7+%uOOQ!0Lf7+&`7+&`O?YQ`O7+&`O!CUQpO7+&`OOQO7+%x7+%xO$AlQ!0MxO7+&XOOQO7+&X7+&XO%[QlO7+&XO%@nQ!0LrO7+&XO!ByQ!0LrO7+%xO!CUQpO7+%xO%@yQ!0LrO7+&XO%AXQ!0MxO7++rO%[QlO7++rO%AiQ`O7++qO%AiQ`O7++qOOQO1G4s1G4sO9eQ`O1G4sO%AqQ`O1G4sOOQS7+%}7+%}O#(ZQ`O<<LPO4UQ!fO<<LPO%BPQ`O<<LPOOQ[<<LP<<LPO!&zQMhO<<LPO%[QlO<<LPO%BXQ`O<<LPO%BdQ!0MzO,5?aO%DoQ!0MzO,5?cO%FzQ!0MzO1G2`O%I]Q!0MzO1G2sO%KhQ!0MzO1G2uO%MsQ!fO,5?QO%[QlO,5?QOOQO-E<d-E<dO%M}Q`O1G5}OOQ!0Lf<<JU<<JUO%NVQ?MtO1G0uO&!^Q?MtO1G1PO&!eQ?MtO1G1PO&$fQ?MtO1G1PO&$mQ?MtO1G1PO&&nQ?MtO1G1PO&(oQ?MtO1G1PO&(vQ?MtO1G1PO&(}Q?MtO1G1PO&+OQ?MtO1G1PO&+VQ?MtO1G1PO&+^Q!0MxO<<JfO&-UQ?MtO1G1PO&.RQ?MvO1G1PO&/UQ?MvO'#JlO&1[Q?MtO1G1cO&1iQ?MtO1G0UO&1sQMjO,5?TOOQO-E<g-E<gO!)[QlO'#FqOOQO'#KZ'#KZOOQO1G1u1G1uO&1}Q`O1G1tO&2SQ?MtO,5?[OOOW7+'h7+'hOOOO1G/Z1G/ZO&2^Q!dO1G4xOOQ!0Lh7+(Q7+(QP!&zQMhO,5?^O!,TQMhO7+(cO&2eQ`O,5?]O9eQ`O,5?]O$+YQ`O,5?]OOQO-E<o-E<oO&2sQ`O1G6bO&2sQ`O1G6bO&2{Q`O1G6bO&3WQMjO7+'zO&3hQ!dO,5?_O&3rQ`O,5?_O!&zQMhO,5?_OOQO-E<q-E<qO&3wQ!dO1G6cO&4RQ`O1G6cO&4ZQ`O1G2kO!&zQMhO1G2kOOQ!0Lb1G2i1G2iOOQ!0Lb1G2j1G2jO%4hQpO1G2iO!CUQpO1G2iOCwQ`O1G2iOOQ!0Lb1G2q1G2qO&4`QpO1G2iO&4nQ`O1G2kO$+YQ`O1G2jOCwQ`O1G2jO$$wQlO1G2kO&4vQ`O1G2jO&5jQMjO,5?aOOQ!0Lh-E<t-E<tO&6]QMjO,5?cOOQ!0Lh-E<v-E<vO!,TQMhO7++]O&6gQMjO7++]O&6qQMjO7++]OOQ!0Lh1G/c1G/cO&7OQ`O1G/cOOQ!0Lh7+'u7+'uO&7TQMjO7+'|O&7eQ!0MxO<<KXOOQ!0Lf<<KX<<KXO&8XQ`O1G0zO!&zQMhO'#IzO&8^Q`O,5@xO&:`Q!fO<<LPO!&zQMhO1G2nO&:gQ!0LrO1G2nOOQ[<<G{<<G{O!ByQ!0LrO<<G{O&:xQ!0MxO<<I{OOQ!0Lf<<I{<<I{OOQO,5?l,5?lO&;lQ`O,5?lO&;qQ`O,5?lOOQO-E=O-E=OO&<PQ`O1G6kO&<PQ`O1G6kO9kQ`O1G6kO@zQ`O<<LlOOQ[<<Ll<<LlO&<XQ`O<<LlO9uQ!0LrO<<LlO9kQ`O<<LlOOQ[<<LX<<LXO%:yQ!0MvO<<LXOOQ[<<LY<<LYO!E^Q`O<<LYO&<^QpO'#I|O&<iQ`O,5@|O!)[QlO,5@|OOQ[1G3W1G3WOOQO'#JO'#JOO9uQ!0LrO'#JOO&<qQpO,5=uOOQ[,5=u,5=uO&<xQpO'#EgO&=PQpO'#GeO&=UQ`O7+(zO&=ZQ`O7+(zOOQ[7+(z7+(zO!&zQMhO7+(zO%[QlO7+(zO&=cQ`O7+(zOOQ[7+(|7+(|O9uQ!0LrO7+(|O$%dQ`O7+(|O9`Q`O7+(|O!CUQpO7+(|O&=nQ`O,5?kOOQO-E<}-E<}OOQO'#H^'#H^O&=yQ`O1G6iO9uQ!0LrO<<GqOOQ[<<Gq<<GqO@zQ`O<<GqO&>RQ`O7+,WO&>WQ`O7+,XO%[QlO7+,WO%[QlO7+,XOOQ[7+)V7+)VO&>]Q`O7+)VO&>bQlO7+)VO&>iQ`O7+)VOOQ[<<Ly<<LyOOQ[<<L{<<L{OOQ[-E=Q-E=QOOQ[1G3z1G3zO&>nQ`O,5>aOOQ[,5>c,5>cO&>sQ`O1G4QO9eQ`O7+&fO!)[QlO7+&fOOQO7+%_7+%_O&>xQ?MtO1G6ZO?YQ`O7+%_OOQ!0Lf<<Ia<<IaOOQ!0Lf<<Iz<<IzO?YQ`O<<IzOOQO<<Is<<IsO$AlQ!0MxO<<IsO%[QlO<<IsOOQO<<Id<<IdO!ByQ!0LrO<<IdO&?SQ!0LrO<<IsO&?_Q!0MxO<= ^O&?oQ`O<= ]OOQO7+*_7+*_O9eQ`O7+*_OOQ[ANAkANAkO&?wQ!fOANAkO!&zQMhOANAkO#(ZQ`OANAkO4UQ!fOANAkO&@OQ`OANAkO%[QlOANAkO&@WQ!0MzO7+'zO&BiQ!0MzO,5?aO&DtQ!0MzO,5?cO&GPQ!0MzO7+'|O&IbQ!fO1G4lO&IlQ?MtO7+&aO&KpQ?MvO,5=XO&MwQ?MvO,5=ZO&NXQ?MvO,5=XO&NiQ?MvO,5=ZO&NyQ?MvO,59uO'#PQ?MvO,5<kO'%SQ?MvO,5<mO''hQ?MvO,5<{O')^Q?MtO7+'kO')kQ?MtO7+'mO')xQ`O,5<]OOQO7+'`7+'`OOQ!0Lh7+*d7+*dO')}QMjO<<K}OOQO1G4w1G4wO'*UQ`O1G4wO'*aQ`O1G4wO'*oQ`O7++|O'*oQ`O7++|O!&zQMhO1G4yO'*wQ!dO1G4yO'+RQ`O7++}O'+ZQ`O7+(VO'+fQ!dO7+(VOOQ!0Lb7+(T7+(TOOQ!0Lb7+(U7+(UO!CUQpO7+(TOCwQ`O7+(TO'+pQ`O7+(VO!&zQMhO7+(VO$+YQ`O7+(UO'+uQ`O7+(VOCwQ`O7+(UO'+}QMjO<<NwO!,TQMhO<<NwOOQ!0Lh7+$}7+$}O',XQ!dO,5?fOOQO-E<x-E<xO',cQ!0MvO7+(YO!&zQMhO7+(YOOQ[AN=gAN=gO9kQ`O1G5WOOQO1G5W1G5WO',sQ`O1G5WO',xQ`O7+,VO',xQ`O7+,VO9uQ!0LrOANBWO@zQ`OANBWOOQ[ANBWANBWO'-QQ`OANBWOOQ[ANAsANAsOOQ[ANAtANAtO'-VQ`O,5?hOOQO-E<z-E<zO'-bQ?MtO1G6hOOQO,5?j,5?jOOQO-E<|-E<|OOQ[1G3a1G3aO'-lQ`O,5=POOQ[<<Lf<<LfO!&zQMhO<<LfO&=UQ`O<<LfO'-qQ`O<<LfO%[QlO<<LfOOQ[<<Lh<<LhO9uQ!0LrO<<LhO$%dQ`O<<LhO9`Q`O<<LhO'-yQpO1G5VO'.UQ`O7+,TOOQ[AN=]AN=]O9uQ!0LrOAN=]OOQ[<= r<= rOOQ[<= s<= sO'.^Q`O<= rO'.cQ`O<= sOOQ[<<Lq<<LqO'.hQ`O<<LqO'.mQlO<<LqOOQ[1G3{1G3{O?YQ`O7+)lO'.tQ`O<<JQO'/PQ?MtO<<JQOOQO<<Hy<<HyOOQ!0LfAN?fAN?fOOQOAN?_AN?_O$AlQ!0MxOAN?_OOQOAN?OAN?OO%[QlOAN?_OOQO<<My<<MyOOQ[G27VG27VO!&zQMhOG27VO#(ZQ`OG27VO'/ZQ!fOG27VO4UQ!fOG27VO'/bQ`OG27VO'/jQ?MtO<<JfO'/wQ?MvO1G2`O'1mQ?MvO,5?aO'3pQ?MvO,5?cO'5sQ?MvO1G2sO'7vQ?MvO1G2uO'9yQ?MtO<<KXO':WQ?MtO<<I{OOQO1G1w1G1wO!,TQMhOANAiOOQO7+*c7+*cO':eQ`O7+*cO':pQ`O<= hO':xQ!dO7+*eOOQ!0Lb<<Kq<<KqO$+YQ`O<<KqOCwQ`O<<KqO';SQ`O<<KqO!&zQMhO<<KqOOQ!0Lb<<Ko<<KoO!CUQpO<<KoO';_Q!dO<<KqOOQ!0Lb<<Kp<<KpO';iQ`O<<KqO!&zQMhO<<KqO$+YQ`O<<KpO';nQMjOANDcO';xQ!0MvO<<KtOOQO7+*r7+*rO9kQ`O7+*rO'<YQ`O<= qOOQ[G27rG27rO9uQ!0LrOG27rO@zQ`OG27rO!)[QlO1G5SO'<bQ`O7+,SO'<jQ`O1G2kO&=UQ`OANBQOOQ[ANBQANBQO!&zQMhOANBQO'<oQ`OANBQOOQ[ANBSANBSO9uQ!0LrOANBSO$%dQ`OANBSOOQO'#H_'#H_OOQO7+*q7+*qOOQ[G22wG22wOOQ[ANE^ANE^OOQ[ANE_ANE_OOQ[ANB]ANB]O'<wQ`OANB]OOQ[<<MW<<MWO!)[QlOAN?lOOQOG24yG24yO$AlQ!0MxOG24yO#(ZQ`OLD,qOOQ[LD,qLD,qO!&zQMhOLD,qO'<|Q!fOLD,qO'=TQ?MvO7+'zO'>yQ?MvO,5?aO'@|Q?MvO,5?cO'CPQ?MvO7+'|O'DuQMjOG27TOOQO<<M}<<M}OOQ!0LbANA]ANA]O$+YQ`OANA]OCwQ`OANA]O'EVQ!dOANA]OOQ!0LbANAZANAZO'E^Q`OANA]O!&zQMhOANA]O'EiQ!dOANA]OOQ!0LbANA[ANA[OOQO<<N^<<N^OOQ[LD-^LD-^O9uQ!0LrOLD-^O'EsQ?MtO7+*nOOQO'#Gf'#GfOOQ[G27lG27lO&=UQ`OG27lO!&zQMhOG27lOOQ[G27nG27nO9uQ!0LrOG27nOOQ[G27wG27wO'E}Q?MtOG25WOOQOLD*eLD*eOOQ[!$(!]!$(!]O#(ZQ`O!$(!]O!&zQMhO!$(!]O'FXQ!0MzOG27TOOQ!0LbG26wG26wO$+YQ`OG26wO'HjQ`OG26wOCwQ`OG26wO'HuQ!dOG26wO!&zQMhOG26wOOQ[!$(!x!$(!xOOQ[LD-WLD-WO&=UQ`OLD-WOOQ[LD-YLD-YOOQ[!)9Ew!)9EwO#(ZQ`O!)9EwOOQ!0LbLD,cLD,cO$+YQ`OLD,cOCwQ`OLD,cO'H|Q`OLD,cO'IXQ!dOLD,cOOQ[!$(!r!$(!rOOQ[!.K;c!.K;cO'I`Q?MvOG27TOOQ!0Lb!$( }!$( }O$+YQ`O!$( }OCwQ`O!$( }O'KUQ`O!$( }OOQ!0Lb!)9Ei!)9EiO$+YQ`O!)9EiOCwQ`O!)9EiOOQ!0Lb!.K;T!.K;TO$+YQ`O!.K;TOOQ!0Lb!4/0o!4/0oO!)[QlO'#DzO1PQ`O'#EXO'KaQ!fO'#JrO'KhQ!L^O'#DvO'KoQlO'#EOO'KvQ!fO'#CiO'N^Q!fO'#CiO!)[QlO'#EQO'NnQlO,5;ZO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO'#IpO(!qQ`O,5<iO!)[QlO,5;eO(!yQMhO,5;eO($dQMhO,5;eO!)[QlO,5;wO!&zQMhO'#GmO(!yQMhO'#GmO!&zQMhO'#GoO(!yQMhO'#GoO1SQ`O'#DZO1SQ`O'#DZO!&zQMhO'#GPO(!yQMhO'#GPO!&zQMhO'#GRO(!yQMhO'#GRO!&zQMhO'#GaO(!yQMhO'#GaO!)[QlO,5:jO($kQpO'#D_O($uQpO'#JvO!)[QlO,5@oO'NnQlO1G0uO(%PQ?MtO'#CiO!)[QlO1G2PO!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO(%ZQ!dO'#CrO!&zQMhO,5<tO(!yQMhO,5<tO'NnQlO1G2RO!)[QlO7+&zO!&zQMhO1G2`O(!yQMhO1G2`O!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO!&zQMhO1G2bO(!yQMhO1G2bO'NnQlO7+'mO'NnQlO7+&aO!&zQMhOANAiO(!yQMhOANAiO(%nQ`O'#EoO(%sQ`O'#EoO(%{Q`O'#F]O(&QQ`O'#EyO(&VQ`O'#KTO(&bQ`O'#KRO(&mQ`O,5;ZO(&rQMjO,5<eO(&yQ`O'#GYO('OQ`O'#GYO('TQ`O,5<eO(']Q`O,5<gO('eQ`O,5;ZO('mQ?MtO1G1`O('tQ`O,5<tO('yQ`O,5<tO((OQ`O,5<vO((TQ`O,5<vO((YQ`O1G2RO((_Q`O1G0uO((dQMjO<<K}O((kQMjO<<K}O((rQMhO'#F|O9`Q`O'#F{OAuQ`O'#EnO!)[QlO,5;tO!3oQ`O'#GYO!3oQ`O'#GYO!3oQ`O'#G[O!3oQ`O'#G[O!,TQMhO7+(cO!,TQMhO7+(cO%.zQ!dO1G2wO%.zQ!dO1G2wO!&zQMhO,5=]O!&zQMhO,5=]\",\n stateData: \"()x~O'|OS'}OSTOS(ORQ~OPYOQYOSfOY!VOaqOdzOeyOl!POpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!uwO!xxO!|]O$W|O$niO%h}O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO&W!WO&^!XO&`!YO&b!ZO&d![O&g!]O&m!^O&s!_O&u!`O&w!aO&y!bO&{!cO(TSO(VTO(YUO(aVO(o[O~OWtO~P`OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa!wOs!nO!S!oO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!xO#W!pO#X!pO#[!zO#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O(O!{O~OP]XR]X[]Xa]Xj]Xr]X!Q]X!S]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X'z]X(a]X(r]X(y]X(z]X~O!g%RX~P(qO_!}O(V#PO(W!}O(X#PO~O_#QO(X#PO(Y#PO(Z#QO~Ox#SO!U#TO(b#TO(c#VO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T<ZO(VTO(YUO(aVO(o[O~O![#ZO!]#WO!Y(hP!Y(vP~P+}O!^#cO~P`OPYOQYOSfOd!jOe!iOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(VTO(YUO(aVO(o[O~Op#mO![#iO!|]O#i#lO#j#iO(T<[O!k(sP~P.iO!l#oO(T#nO~O!x#sO!|]O%h#tO~O#k#uO~O!g#vO#k#uO~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!]$_O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa(fX'z(fX'w(fX!k(fX!Y(fX!_(fX%i(fX!g(fX~P1qO#S$dO#`$eO$Q$eOP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX!_(gX%i(gX~Oa(gX'z(gX'w(gX!Y(gX!k(gXv(gX!g(gX~P4UO#`$eO~O$]$hO$_$gO$f$mO~OSfO!_$nO$i$oO$k$qO~Oh%VOj%dOk%dOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T$sO(VTO(YUO(a$uO(y$}O(z%POg(^P~Ol%[O~P7eO!l%eO~O!S%hO!_%iO(T%gO~O!g%mO~Oa%nO'z%nO~O!Q%rO~P%[O(U!lO~P%[O%n%vO~P%[Oh%VO!l%eO(T%gO(U!lO~Oe%}O!l%eO(T%gO~Oj$RO~O!_&PO(T%gO(U!lO(VTO(YUO`)WP~O!Q&SO!l&RO%j&VO&T&WO~P;SO!x#sO~O%s&YO!S)SX!_)SX(T)SX~O(T&ZO~Ol!PO!u&`O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO~Od&eOe&dO!x&bO%h&cO%{&aO~P<bOd&hOeyOl!PO!_&gO!u&`O!xxO!|]O%h}O%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO~Ob&kO#`&nO%j&iO(U!lO~P=gO!l&oO!u&sO~O!l#oO~O!_XO~Oa%nO'x&{O'z%nO~Oa%nO'x'OO'z%nO~Oa%nO'x'QO'z%nO~O'w]X!Y]Xv]X!k]X&[]X!_]X%i]X!g]X~P(qO!b'_O!c'WO!d'WO(U!lO(VTO(YUO~Os'UO!S'TO!['XO(e'SO!^(iP!^(xP~P@nOn'bO!_'`O(T%gO~Oe'gO!l%eO(T%gO~O!Q&SO!l&RO~Os!nO!S!oO!|<VO#T!pO#U!pO#W!pO#X!pO(U!lO(VTO(YUO(e!mO(o!sO~O!b'mO!c'lO!d'lO#V!pO#['nO#]'nO~PBYOa%nOh%VO!g#vO!l%eO'z%nO(r'pO~O!p'tO#`'rO~PChOs!nO!S!oO(VTO(YUO(e!mO(o!sO~O!_XOs(mX!S(mX!b(mX!c(mX!d(mX!|(mX#T(mX#U(mX#V(mX#W(mX#X(mX#[(mX#](mX(U(mX(V(mX(Y(mX(e(mX(o(mX~O!c'lO!d'lO(U!lO~PDWO(P'xO(Q'xO(R'zO~O_!}O(V'|O(W!}O(X'|O~O_#QO(X'|O(Y'|O(Z#QO~Ov(OO~P%[Ox#SO!U#TO(b#TO(c(RO~O![(TO!Y'WX!Y'^X!]'WX!]'^X~P+}O!](VO!Y(hX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!](VO!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~O!Y(hX~PHRO!Y([O~O!Y(uX!](uX!g(uX!k(uX(r(uX~O#`(uX#k#dX!^(uX~PJUO#`(]O!Y(wX!](wX~O!](^O!Y(vX~O!Y(aO~O#`$eO~PJUO!^(bO~P`OR#zO!Q#yO!S#{O!l#xO(aVOP!na[!naj!nar!na!]!na!p!na#R!na#n!na#o!na#p!na#q!na#r!na#s!na#t!na#u!na#v!na#x!na#z!na#{!na(r!na(y!na(z!na~Oa!na'z!na'w!na!Y!na!k!nav!na!_!na%i!na!g!na~PKlO!k(cO~O!g#vO#`(dO(r'pO!](tXa(tX'z(tX~O!k(tX~PNXO!S%hO!_%iO!|]O#i(iO#j(hO(T%gO~O!](jO!k(sX~O!k(lO~O!S%hO!_%iO#j(hO(T%gO~OP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~O!g#vO!k(gX~P! uOR(nO!Q(mO!l#xO#S$dO!|!{a!S!{a~O!x!{a%h!{a!_!{a#i!{a#j!{a(T!{a~P!#vO!x(rO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~O#k(xO~O![(zO!k(kP~P%[O(e(|O(o[O~O!S)OO!l#xO(e(|O(o[O~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]$_Oa$qa'z$qa'w$qa!k$qa!Y$qa!_$qa%i$qa!g$qa~Ol)dO~P!&zOh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Og(pP~P!,TO!Q)iO!g)hO!_$^X$Z$^X$]$^X$_$^X$f$^X~O!g)hO!_({X$Z({X$]({X$_({X$f({X~O!Q)iO~P!.^O!Q)iO!_({X$Z({X$]({X$_({X$f({X~O!_)kO$Z)oO$])jO$_)jO$f)pO~O![)sO~P!)[O$]$hO$_$gO$f)wO~On$zX!Q$zX#S$zX'y$zX(y$zX(z$zX~OgmXg$zXnmX!]mX#`mX~P!0SOx)yO(b)zO(c)|O~On*VO!Q*OO'y*PO(y$}O(z%PO~Og)}O~P!1WOg*WO~Oh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S*YO!_*ZO!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op*`O![*^O(T*XO!k)OP~P!1uO#k*aO~O!l*bO~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(T*dO(VTO(YUO(a$uO(y$}O(z%PO~O![*gO!Y)PP~P!3tOr*sOs!nO!S*iO!b*qO!c*kO!d*kO!l*bO#[*rO%`*mO(U!lO(VTO(YUO(e!mO~O!^*pO~P!5iO#S$dOn(`X!Q(`X'y(`X(y(`X(z(`X!](`X#`(`X~Og(`X$O(`X~P!6kOn*xO#`*wOg(_X!](_X~O!]*yOg(^X~Oj%dOk%dOl%dO(T&ZOg(^P~Os*|O~Og)}O(T&ZO~O!l+SO~O(T(vO~Op+WO!S%hO![#iO!_%iO!|]O#i#lO#j#iO(T%gO!k(sP~O!g#vO#k+XO~O!S%hO![+ZO!](^O!_%iO(T%gO!Y(vP~Os'[O!S+]O![+[O(VTO(YUO(e(|O~O!^(xP~P!9|O!]+^Oa)TX'z)TX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa!ja!]!ja'z!ja'w!ja!Y!ja!k!jav!ja!_!ja%i!ja!g!ja~P!:tOR#zO!Q#yO!S#{O!l#xO(aVOP!ra[!raj!rar!ra!]!ra!p!ra#R!ra#n!ra#o!ra#p!ra#q!ra#r!ra#s!ra#t!ra#u!ra#v!ra#x!ra#z!ra#{!ra(r!ra(y!ra(z!ra~Oa!ra'z!ra'w!ra!Y!ra!k!rav!ra!_!ra%i!ra!g!ra~P!=[OR#zO!Q#yO!S#{O!l#xO(aVOP!ta[!taj!tar!ta!]!ta!p!ta#R!ta#n!ta#o!ta#p!ta#q!ta#r!ta#s!ta#t!ta#u!ta#v!ta#x!ta#z!ta#{!ta(r!ta(y!ta(z!ta~Oa!ta'z!ta'w!ta!Y!ta!k!tav!ta!_!ta%i!ta!g!ta~P!?rOh%VOn+gO!_'`O%i+fO~O!g+iOa(]X!_(]X'z(]X!](]X~Oa%nO!_XO'z%nO~Oh%VO!l%eO~Oh%VO!l%eO(T%gO~O!g#vO#k(xO~Ob+tO%j+uO(T+qO(VTO(YUO!^)XP~O!]+vO`)WX~O[+zO~O`+{O~O!_&PO(T%gO(U!lO`)WP~O%j,OO~P;SOh%VO#`,SO~Oh%VOn,VO!_$|O~O!_,XO~O!Q,ZO!_XO~O%n%vO~O!x,`O~Oe,eO~Ob,fO(T#nO(VTO(YUO!^)VP~Oe%}O~O%j!QO(T&ZO~P=gO[,kO`,jO~OPYOQYOSfOdzOeyOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!iuO!lZO!oYO!pYO!qYO!svO!xxO!|]O$niO%h}O(VTO(YUO(aVO(o[O~O!_!eO!u!gO$W!kO(T!dO~P!FyO`,jOa%nO'z%nO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa,pOl!OO!uwO%l!OO%m!OO%n!OO~P!IcO!l&oO~O&^,vO~O!_,xO~O&o,zO&q,{OP&laQ&laS&laY&laa&lad&lae&lal&lap&lar&las&lat&laz&la|&la!O&la!S&la!W&la!X&la!_&la!i&la!l&la!o&la!p&la!q&la!s&la!u&la!x&la!|&la$W&la$n&la%h&la%j&la%l&la%m&la%n&la%q&la%s&la%v&la%w&la%y&la&W&la&^&la&`&la&b&la&d&la&g&la&m&la&s&la&u&la&w&la&y&la&{&la'w&la(T&la(V&la(Y&la(a&la(o&la!^&la&e&lab&la&j&la~O(T-QO~Oh!eX!]!RX!^!RX!g!RX!g!eX!l!eX#`!RX~O!]!eX!^!eX~P#!iO!g-VO#`-UOh(jX!]#hX!^#hX!g(jX!l(jX~O!](jX!^(jX~P##[Oh%VO!g-XO!l%eO!]!aX!^!aX~Os!nO!S!oO(VTO(YUO(e!mO~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(VTO(YUO(aVO(o[O~O(T=QO~P#$qO!]-]O!^(iX~O!^-_O~O!g-VO#`-UO!]#hX!^#hX~O!]-`O!^(xX~O!^-bO~O!c-cO!d-cO(U!lO~P#$`O!^-fO~P'_On-iO!_'`O~O!Y-nO~Os!{a!b!{a!c!{a!d!{a#T!{a#U!{a#V!{a#W!{a#X!{a#[!{a#]!{a(U!{a(V!{a(Y!{a(e!{a(o!{a~P!#vO!p-sO#`-qO~PChO!c-uO!d-uO(U!lO~PDWOa%nO#`-qO'z%nO~Oa%nO!g#vO#`-qO'z%nO~Oa%nO!g#vO!p-sO#`-qO'z%nO(r'pO~O(P'xO(Q'xO(R-zO~Ov-{O~O!Y'Wa!]'Wa~P!:tO![.PO!Y'WX!]'WX~P%[O!](VO!Y(ha~O!Y(ha~PHRO!](^O!Y(va~O!S%hO![.TO!_%iO(T%gO!Y'^X!]'^X~O#`.VO!](ta!k(taa(ta'z(ta~O!g#vO~P#,wO!](jO!k(sa~O!S%hO!_%iO#j.ZO(T%gO~Op.`O!S%hO![.]O!_%iO!|]O#i._O#j.]O(T%gO!]'aX!k'aX~OR.dO!l#xO~Oh%VOn.gO!_'`O%i.fO~Oa#ci!]#ci'z#ci'w#ci!Y#ci!k#civ#ci!_#ci%i#ci!g#ci~P!:tOn>]O!Q*OO'y*PO(y$}O(z%PO~O#k#_aa#_a#`#_a'z#_a!]#_a!k#_a!_#_a!Y#_a~P#/sO#k(`XP(`XR(`X[(`Xa(`Xj(`Xr(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X'z(`X(a(`X(r(`X!k(`X!Y(`X'w(`Xv(`X!_(`X%i(`X!g(`X~P!6kO!].tO!k(kX~P!:tO!k.wO~O!Y.yO~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mia#mij#mir#mi!]#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#n#mi~P#3cO#n$OO~P#3cOP$[OR#zOr$aO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO[#mia#mij#mi!]#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#r#mi~P#6QO#r$QO~P#6QOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO(aVOa#mi!]#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#v#mi~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO(aVO(z#}Oa#mi!]#mi#z#mi#{#mi'z#mi(r#mi(y#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#x$UO~P#;VO#x#mi~P#;VO#v$SO~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO(aVO(y#|O(z#}Oa#mi!]#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#z#mi~P#={O#z$WO~P#={OP]XR]X[]Xj]Xr]X!Q]X!S]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X!]]X!^]X~O$O]X~P#@jOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO#z<gO#{<hO(aVO(r$YO(y#|O(z#}O~O$O.{O~P#BwO#S$dO#`<nO$Q<nO$O(gX!^(gX~P! uOa'da!]'da'z'da'w'da!k'da!Y'dav'da!_'da%i'da!g'da~P!:tO[#mia#mij#mir#mi!]#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO(y#mi(z#mi~P#EyOn>]O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P#EyO!]/POg(pX~P!1WOg/RO~Oa$Pi!]$Pi'z$Pi'w$Pi!Y$Pi!k$Piv$Pi!_$Pi%i$Pi!g$Pi~P!:tO$]/SO$_/SO~O$]/TO$_/TO~O!g)hO#`/UO!_$cX$Z$cX$]$cX$_$cX$f$cX~O![/VO~O!_)kO$Z/XO$])jO$_)jO$f/YO~O!]<iO!^(fX~P#BwO!^/ZO~O!g)hO$f({X~O$f/]O~Ov/^O~P!&zOx)yO(b)zO(c/aO~O!S/dO~O(y$}On%aa!Q%aa'y%aa(z%aa!]%aa#`%aa~Og%aa$O%aa~P#L{O(z%POn%ca!Q%ca'y%ca(y%ca!]%ca#`%ca~Og%ca$O%ca~P#MnO!]fX!gfX!kfX!k$zX(rfX~P!0SOp%WO![/mO!](^O(T/lO!Y(vP!Y)PP~P!1uOr*sO!b*qO!c*kO!d*kO!l*bO#[*rO%`*mO(U!lO(VTO(YUO~Os<}O!S/nO![+[O!^*pO(e<|O!^(xP~P$ [O!k/oO~P#/sO!]/pO!g#vO(r'pO!k)OX~O!k/uO~OnoX!QoX'yoX(yoX(zoX~O!g#vO!koX~P$#OOp/wO!S%hO![*^O!_%iO(T%gO!k)OP~O#k/xO~O!Y$zX!]$zX!g%RX~P!0SO!]/yO!Y)PX~P#/sO!g/{O~O!Y/}O~OpkO(T0OO~P.iOh%VOr0TO!g#vO!l%eO(r'pO~O!g+iO~Oa%nO!]0XO'z%nO~O!^0ZO~P!5iO!c0[O!d0[O(U!lO~P#$`Os!nO!S0]O(VTO(YUO(e!mO~O#[0_O~Og%aa!]%aa#`%aa$O%aa~P!1WOg%ca!]%ca#`%ca$O%ca~P!1WOj%dOk%dOl%dO(T&ZOg'mX!]'mX~O!]*yOg(^a~Og0hO~On0jO#`0iOg(_a!](_a~OR0kO!Q0kO!S0lO#S$dOn}a'y}a(y}a(z}a!]}a#`}a~Og}a$O}a~P$(cO!Q*OO'y*POn$sa(y$sa(z$sa!]$sa#`$sa~Og$sa$O$sa~P$)_O!Q*OO'y*POn$ua(y$ua(z$ua!]$ua#`$ua~Og$ua$O$ua~P$*QO#k0oO~Og%Ta!]%Ta#`%Ta$O%Ta~P!1WO!g#vO~O#k0rO~O!]+^Oa)Ta'z)Ta~OR#zO!Q#yO!S#{O!l#xO(aVOP!ri[!rij!rir!ri!]!ri!p!ri#R!ri#n!ri#o!ri#p!ri#q!ri#r!ri#s!ri#t!ri#u!ri#v!ri#x!ri#z!ri#{!ri(r!ri(y!ri(z!ri~Oa!ri'z!ri'w!ri!Y!ri!k!riv!ri!_!ri%i!ri!g!ri~P$+oOh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op0{O%]0|O(T0zO~P$.VO!g+iOa(]a!_(]a'z(]a!](]a~O#k1SO~O[]X!]fX!^fX~O!]1TO!^)XX~O!^1VO~O[1WO~Ob1YO(T+qO(VTO(YUO~O!_&PO(T%gO`'uX!]'uX~O!]+vO`)Wa~O!k1]O~P!:tO[1`O~O`1aO~O#`1fO~On1iO!_$|O~O(e(|O!^)UP~Oh%VOn1rO!_1oO%i1qO~O[1|O!]1zO!^)VX~O!^1}O~O`2POa%nO'z%nO~O(T#nO(VTO(YUO~O#S$dO#`$eO$Q$eOP(gXR(gX[(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~Oj2SO&[2TOa(gX~P$3pOj2SO#`$eO&[2TO~Oa2VO~P%[Oa2XO~O&e2[OP&ciQ&ciS&ciY&cia&cid&cie&cil&cip&cir&cis&cit&ciz&ci|&ci!O&ci!S&ci!W&ci!X&ci!_&ci!i&ci!l&ci!o&ci!p&ci!q&ci!s&ci!u&ci!x&ci!|&ci$W&ci$n&ci%h&ci%j&ci%l&ci%m&ci%n&ci%q&ci%s&ci%v&ci%w&ci%y&ci&W&ci&^&ci&`&ci&b&ci&d&ci&g&ci&m&ci&s&ci&u&ci&w&ci&y&ci&{&ci'w&ci(T&ci(V&ci(Y&ci(a&ci(o&ci!^&cib&ci&j&ci~Ob2bO!^2`O&j2aO~P`O!_XO!l2dO~O&q,{OP&liQ&liS&liY&lia&lid&lie&lil&lip&lir&lis&lit&liz&li|&li!O&li!S&li!W&li!X&li!_&li!i&li!l&li!o&li!p&li!q&li!s&li!u&li!x&li!|&li$W&li$n&li%h&li%j&li%l&li%m&li%n&li%q&li%s&li%v&li%w&li%y&li&W&li&^&li&`&li&b&li&d&li&g&li&m&li&s&li&u&li&w&li&y&li&{&li'w&li(T&li(V&li(Y&li(a&li(o&li!^&li&e&lib&li&j&li~O!Y2jO~O!]!aa!^!aa~P#BwOs!nO!S!oO![2pO(e!mO!]'XX!^'XX~P@nO!]-]O!^(ia~O!]'_X!^'_X~P!9|O!]-`O!^(xa~O!^2wO~P'_Oa%nO#`3QO'z%nO~Oa%nO!g#vO#`3QO'z%nO~Oa%nO!g#vO!p3UO#`3QO'z%nO(r'pO~Oa%nO'z%nO~P!:tO!]$_Ov$qa~O!Y'Wi!]'Wi~P!:tO!](VO!Y(hi~O!](^O!Y(vi~O!Y(wi!](wi~P!:tO!](ti!k(tia(ti'z(ti~P!:tO#`3WO!](ti!k(tia(ti'z(ti~O!](jO!k(si~O!S%hO!_%iO!|]O#i3]O#j3[O(T%gO~O!S%hO!_%iO#j3[O(T%gO~On3dO!_'`O%i3cO~Oh%VOn3dO!_'`O%i3cO~O#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aav%aa!_%aa%i%aa!g%aa~P#L{O#k%caP%caR%ca[%caa%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%cav%ca!_%ca%i%ca!g%ca~P#MnO#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!]%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aa#`%aav%aa!_%aa%i%aa!g%aa~P#/sO#k%caP%caR%ca[%caa%caj%car%ca!S%ca!]%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%ca#`%cav%ca!_%ca%i%ca!g%ca~P#/sO#k}aP}a[}aa}aj}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a'z}a(a}a(r}a!k}a!Y}a'w}av}a!_}a%i}a!g}a~P$(cO#k$saP$saR$sa[$saa$saj$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa'z$sa(a$sa(r$sa!k$sa!Y$sa'w$sav$sa!_$sa%i$sa!g$sa~P$)_O#k$uaP$uaR$ua[$uaa$uaj$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua'z$ua(a$ua(r$ua!k$ua!Y$ua'w$uav$ua!_$ua%i$ua!g$ua~P$*QO#k%TaP%TaR%Ta[%Taa%Taj%Tar%Ta!S%Ta!]%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta'z%Ta(a%Ta(r%Ta!k%Ta!Y%Ta'w%Ta#`%Tav%Ta!_%Ta%i%Ta!g%Ta~P#/sOa#cq!]#cq'z#cq'w#cq!Y#cq!k#cqv#cq!_#cq%i#cq!g#cq~P!:tO![3lO!]'YX!k'YX~P%[O!].tO!k(ka~O!].tO!k(ka~P!:tO!Y3oO~O$O!na!^!na~PKlO$O!ja!]!ja!^!ja~P#BwO$O!ra!^!ra~P!=[O$O!ta!^!ta~P!?rOg']X!]']X~P!,TO!]/POg(pa~OSfO!_4TO$d4UO~O!^4YO~Ov4ZO~P#/sOa$mq!]$mq'z$mq'w$mq!Y$mq!k$mqv$mq!_$mq%i$mq!g$mq~P!:tO!Y4]O~P!&zO!S4^O~O!Q*OO'y*PO(z%POn'ia(y'ia!]'ia#`'ia~Og'ia$O'ia~P%-fO!Q*OO'y*POn'ka(y'ka(z'ka!]'ka#`'ka~Og'ka$O'ka~P%.XO(r$YO~P#/sO!YfX!Y$zX!]fX!]$zX!g%RX#`fX~P!0SOp%WO(T=WO~P!1uOp4bO!S%hO![4aO!_%iO(T%gO!]'eX!k'eX~O!]/pO!k)Oa~O!]/pO!g#vO!k)Oa~O!]/pO!g#vO(r'pO!k)Oa~Og$|i!]$|i#`$|i$O$|i~P!1WO![4jO!Y'gX!]'gX~P!3tO!]/yO!Y)Pa~O!]/yO!Y)Pa~P#/sOP]XR]X[]Xj]Xr]X!Q]X!S]X!Y]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~Oj%YX!g%YX~P%2OOj4oO!g#vO~Oh%VO!g#vO!l%eO~Oh%VOr4tO!l%eO(r'pO~Or4yO!g#vO(r'pO~Os!nO!S4zO(VTO(YUO(e!mO~O(y$}On%ai!Q%ai'y%ai(z%ai!]%ai#`%ai~Og%ai$O%ai~P%5oO(z%POn%ci!Q%ci'y%ci(y%ci!]%ci#`%ci~Og%ci$O%ci~P%6bOg(_i!](_i~P!1WO#`5QOg(_i!](_i~P!1WO!k5VO~Oa$oq!]$oq'z$oq'w$oq!Y$oq!k$oqv$oq!_$oq%i$oq!g$oq~P!:tO!Y5ZO~O!]5[O!_)QX~P#/sOa$zX!_$zX%^]X'z$zX!]$zX~P!0SO%^5_OaoX!_oX'zoX!]oX~P$#OOp5`O(T#nO~O%^5_O~Ob5fO%j5gO(T+qO(VTO(YUO!]'tX!^'tX~O!]1TO!^)Xa~O[5kO~O`5lO~O[5pO~Oa%nO'z%nO~P#/sO!]5uO#`5wO!^)UX~O!^5xO~Or6OOs!nO!S*iO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!pO#W!pO#X!pO#[5}O#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O!^5|O~P%;eOn6TO!_1oO%i6SO~Oh%VOn6TO!_1oO%i6SO~Ob6[O(T#nO(VTO(YUO!]'sX!^'sX~O!]1zO!^)Va~O(VTO(YUO(e6^O~O`6bO~Oj6eO&[6fO~PNXO!k6gO~P%[Oa6iO~Oa6iO~P%[Ob2bO!^6nO&j2aO~P`O!g6pO~O!g6rOh(ji!](ji!^(ji!g(ji!l(jir(ji(r(ji~O!]#hi!^#hi~P#BwO#`6sO!]#hi!^#hi~O!]!ai!^!ai~P#BwOa%nO#`6|O'z%nO~Oa%nO!g#vO#`6|O'z%nO~O!](tq!k(tqa(tq'z(tq~P!:tO!](jO!k(sq~O!S%hO!_%iO#j7TO(T%gO~O!_'`O%i7WO~On7[O!_'`O%i7WO~O#k'iaP'iaR'ia['iaa'iaj'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia'z'ia(a'ia(r'ia!k'ia!Y'ia'w'iav'ia!_'ia%i'ia!g'ia~P%-fO#k'kaP'kaR'ka['kaa'kaj'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka'z'ka(a'ka(r'ka!k'ka!Y'ka'w'kav'ka!_'ka%i'ka!g'ka~P%.XO#k$|iP$|iR$|i[$|ia$|ij$|ir$|i!S$|i!]$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i'z$|i(a$|i(r$|i!k$|i!Y$|i'w$|i#`$|iv$|i!_$|i%i$|i!g$|i~P#/sO#k%aiP%aiR%ai[%aia%aij%air%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai'z%ai(a%ai(r%ai!k%ai!Y%ai'w%aiv%ai!_%ai%i%ai!g%ai~P%5oO#k%ciP%ciR%ci[%cia%cij%cir%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci'z%ci(a%ci(r%ci!k%ci!Y%ci'w%civ%ci!_%ci%i%ci!g%ci~P%6bO!]'Ya!k'Ya~P!:tO!].tO!k(ki~O$O#ci!]#ci!^#ci~P#BwOP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mij#mir#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#n#mi~P%NdO#n<_O~P%NdOP$[OR#zOr<kO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO[#mij#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#r#mi~P&!lO#r<aO~P&!lOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO(aVO#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#v#mi~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO(aVO(z#}O#z#mi#{#mi$O#mi(r#mi(y#mi!]#mi!^#mi~O#x<eO~P&&uO#x#mi~P&&uO#v<cO~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO(aVO(y#|O(z#}O#{#mi$O#mi(r#mi!]#mi!^#mi~O#z#mi~P&)UO#z<gO~P&)UOa#|y!]#|y'z#|y'w#|y!Y#|y!k#|yv#|y!_#|y%i#|y!g#|y~P!:tO[#mij#mir#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi!]#mi!^#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO(y#mi(z#mi~P&,QOn>^O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P&,QO#S$dOP(`XR(`X[(`Xj(`Xn(`Xr(`X!Q(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X$O(`X'y(`X(a(`X(r(`X(y(`X(z(`X!](`X!^(`X~O$O$Pi!]$Pi!^$Pi~P#BwO$O!ri!^!ri~P$+oOg']a!]']a~P!1WO!^7nO~O!]'da!^'da~P#BwO!Y7oO~P#/sO!g#vO(r'pO!]'ea!k'ea~O!]/pO!k)Oi~O!]/pO!g#vO!k)Oi~Og$|q!]$|q#`$|q$O$|q~P!1WO!Y'ga!]'ga~P#/sO!g7vO~O!]/yO!Y)Pi~P#/sO!]/yO!Y)Pi~O!Y7yO~Oh%VOr8OO!l%eO(r'pO~Oj8QO!g#vO~Or8TO!g#vO(r'pO~O!Q*OO'y*PO(z%POn'ja(y'ja!]'ja#`'ja~Og'ja$O'ja~P&5RO!Q*OO'y*POn'la(y'la(z'la!]'la#`'la~Og'la$O'la~P&5tOg(_q!](_q~P!1WO#`8VOg(_q!](_q~P!1WO!Y8WO~Og%Oq!]%Oq#`%Oq$O%Oq~P!1WOa$oy!]$oy'z$oy'w$oy!Y$oy!k$oyv$oy!_$oy%i$oy!g$oy~P!:tO!g6rO~O!]5[O!_)Qa~O!_'`OP$TaR$Ta[$Taj$Tar$Ta!Q$Ta!S$Ta!]$Ta!l$Ta!p$Ta#R$Ta#n$Ta#o$Ta#p$Ta#q$Ta#r$Ta#s$Ta#t$Ta#u$Ta#v$Ta#x$Ta#z$Ta#{$Ta(a$Ta(r$Ta(y$Ta(z$Ta~O%i7WO~P&8fO%^8[Oa%[i!_%[i'z%[i!]%[i~Oa#cy!]#cy'z#cy'w#cy!Y#cy!k#cyv#cy!_#cy%i#cy!g#cy~P!:tO[8^O~Ob8`O(T+qO(VTO(YUO~O!]1TO!^)Xi~O`8dO~O(e(|O!]'pX!^'pX~O!]5uO!^)Ua~O!^8nO~P%;eO(o!sO~P$&YO#[8oO~O!_1oO~O!_1oO%i8qO~On8tO!_1oO%i8qO~O[8yO!]'sa!^'sa~O!]1zO!^)Vi~O!k8}O~O!k9OO~O!k9RO~O!k9RO~P%[Oa9TO~O!g9UO~O!k9VO~O!](wi!^(wi~P#BwOa%nO#`9_O'z%nO~O!](ty!k(tya(ty'z(ty~P!:tO!](jO!k(sy~O%i9bO~P&8fO!_'`O%i9bO~O#k$|qP$|qR$|q[$|qa$|qj$|qr$|q!S$|q!]$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q'z$|q(a$|q(r$|q!k$|q!Y$|q'w$|q#`$|qv$|q!_$|q%i$|q!g$|q~P#/sO#k'jaP'jaR'ja['jaa'jaj'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja'z'ja(a'ja(r'ja!k'ja!Y'ja'w'jav'ja!_'ja%i'ja!g'ja~P&5RO#k'laP'laR'la['laa'laj'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la'z'la(a'la(r'la!k'la!Y'la'w'lav'la!_'la%i'la!g'la~P&5tO#k%OqP%OqR%Oq[%Oqa%Oqj%Oqr%Oq!S%Oq!]%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq'z%Oq(a%Oq(r%Oq!k%Oq!Y%Oq'w%Oq#`%Oqv%Oq!_%Oq%i%Oq!g%Oq~P#/sO!]'Yi!k'Yi~P!:tO$O#cq!]#cq!^#cq~P#BwO(y$}OP%aaR%aa[%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa$O%aa(a%aa(r%aa!]%aa!^%aa~On%aa!Q%aa'y%aa(z%aa~P&IyO(z%POP%caR%ca[%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca$O%ca(a%ca(r%ca!]%ca!^%ca~On%ca!Q%ca'y%ca(y%ca~P&LQOn>^O!Q*OO'y*PO(z%PO~P&IyOn>^O!Q*OO'y*PO(y$}O~P&LQOR0kO!Q0kO!S0lO#S$dOP}a[}aj}an}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a$O}a'y}a(a}a(r}a(y}a(z}a!]}a!^}a~O!Q*OO'y*POP$saR$sa[$saj$san$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa$O$sa(a$sa(r$sa(y$sa(z$sa!]$sa!^$sa~O!Q*OO'y*POP$uaR$ua[$uaj$uan$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua$O$ua(a$ua(r$ua(y$ua(z$ua!]$ua!^$ua~On>^O!Q*OO'y*PO(y$}O(z%PO~OP%TaR%Ta[%Taj%Tar%Ta!S%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta$O%Ta(a%Ta(r%Ta!]%Ta!^%Ta~P''VO$O$mq!]$mq!^$mq~P#BwO$O$oq!]$oq!^$oq~P#BwO!^9oO~O$O9pO~P!1WO!g#vO!]'ei!k'ei~O!g#vO(r'pO!]'ei!k'ei~O!]/pO!k)Oq~O!Y'gi!]'gi~P#/sO!]/yO!Y)Pq~Or9wO!g#vO(r'pO~O[9yO!Y9xO~P#/sO!Y9xO~Oj:PO!g#vO~Og(_y!](_y~P!1WO!]'na!_'na~P#/sOa%[q!_%[q'z%[q!]%[q~P#/sO[:UO~O!]1TO!^)Xq~O`:YO~O#`:ZO!]'pa!^'pa~O!]5uO!^)Ui~P#BwO!S:]O~O!_1oO%i:`O~O(VTO(YUO(e:eO~O!]1zO!^)Vq~O!k:hO~O!k:iO~O!k:jO~O!k:jO~P%[O#`:mO!]#hy!^#hy~O!]#hy!^#hy~P#BwO%i:rO~P&8fO!_'`O%i:rO~O$O#|y!]#|y!^#|y~P#BwOP$|iR$|i[$|ij$|ir$|i!S$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i$O$|i(a$|i(r$|i!]$|i!^$|i~P''VO!Q*OO'y*PO(z%POP'iaR'ia['iaj'ian'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia$O'ia(a'ia(r'ia(y'ia!]'ia!^'ia~O!Q*OO'y*POP'kaR'ka['kaj'kan'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka$O'ka(a'ka(r'ka(y'ka(z'ka!]'ka!^'ka~O(y$}OP%aiR%ai[%aij%ain%air%ai!Q%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai$O%ai'y%ai(a%ai(r%ai(z%ai!]%ai!^%ai~O(z%POP%ciR%ci[%cij%cin%cir%ci!Q%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci$O%ci'y%ci(a%ci(r%ci(y%ci!]%ci!^%ci~O$O$oy!]$oy!^$oy~P#BwO$O#cy!]#cy!^#cy~P#BwO!g#vO!]'eq!k'eq~O!]/pO!k)Oy~O!Y'gq!]'gq~P#/sOr:|O!g#vO(r'pO~O[;QO!Y;PO~P#/sO!Y;PO~Og(_!R!](_!R~P!1WOa%[y!_%[y'z%[y!]%[y~P#/sO!]1TO!^)Xy~O!]5uO!^)Uq~O(T;XO~O!_1oO%i;[O~O!k;_O~O%i;dO~P&8fOP$|qR$|q[$|qj$|qr$|q!S$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q$O$|q(a$|q(r$|q!]$|q!^$|q~P''VO!Q*OO'y*PO(z%POP'jaR'ja['jaj'jan'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja$O'ja(a'ja(r'ja(y'ja!]'ja!^'ja~O!Q*OO'y*POP'laR'la['laj'lan'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la$O'la(a'la(r'la(y'la(z'la!]'la!^'la~OP%OqR%Oq[%Oqj%Oqr%Oq!S%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq$O%Oq(a%Oq(r%Oq!]%Oq!^%Oq~P''VOg%e!Z!]%e!Z#`%e!Z$O%e!Z~P!1WO!Y;hO~P#/sOr;iO!g#vO(r'pO~O[;kO!Y;hO~P#/sO!]'pq!^'pq~P#BwO!]#h!Z!^#h!Z~P#BwO#k%e!ZP%e!ZR%e!Z[%e!Za%e!Zj%e!Zr%e!Z!S%e!Z!]%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z'z%e!Z(a%e!Z(r%e!Z!k%e!Z!Y%e!Z'w%e!Z#`%e!Zv%e!Z!_%e!Z%i%e!Z!g%e!Z~P#/sOr;tO!g#vO(r'pO~O!Y;uO~P#/sOr;|O!g#vO(r'pO~O!Y;}O~P#/sOP%e!ZR%e!Z[%e!Zj%e!Zr%e!Z!S%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z$O%e!Z(a%e!Z(r%e!Z!]%e!Z!^%e!Z~P''VOr<QO!g#vO(r'pO~Ov(fX~P1qO!Q%rO~P!)[O(U!lO~P!)[O!YfX!]fX#`fX~P%2OOP]XR]X[]Xj]Xr]X!Q]X!S]X!]]X!]fX!l]X!p]X#R]X#S]X#`]X#`fX#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~O!gfX!k]X!kfX(rfX~P'LTOP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_XO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]<iO!^$qa~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<tO!S${O!_$|O!i>WO!l$xO#j<zO$W%`O$t<vO$v<xO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Ol)dO~P(!yOr!eX(r!eX~P#!iOr(jX(r(jX~P##[O!^]X!^fX~P'LTO!YfX!Y$zX!]fX!]$zX#`fX~P!0SO#k<^O~O!g#vO#k<^O~O#`<nO~Oj<bO~O#`=OO!](wX!^(wX~O#`<nO!](uX!^(uX~O#k=PO~Og=RO~P!1WO#k=XO~O#k=YO~Og=RO(T&ZO~O!g#vO#k=ZO~O!g#vO#k=PO~O$O=[O~P#BwO#k=]O~O#k=^O~O#k=cO~O#k=dO~O#k=eO~O#k=fO~O$O=gO~P!1WO$O=hO~P!1WOl=sO~P7eOk#S#T#U#W#X#[#i#j#u$n$t$v$y%]%^%h%i%j%q%s%v%w%y%{~(OT#o!X'|(U#ps#n#qr!Q'}$]'}(T$_(e~\",\n goto: \"$9Y)]PPPPPP)^PP)aP)rP+W/]PPPP6mPP7TPP=QPPP@tPA^PA^PPPA^PCfPA^PA^PA^PCjPCoPD^PIWPPPI[PPPPI[L_PPPLeMVPI[PI[PP! eI[PPPI[PI[P!#lI[P!'S!(X!(bP!)U!)Y!)U!,gPPPPPPP!-W!(XPP!-h!/YP!2iI[I[!2n!5z!:h!:h!>gPPP!>oI[PPPPPPPPP!BOP!C]PPI[!DnPI[PI[I[I[I[I[PI[!FQP!I[P!LbP!Lf!Lp!Lt!LtP!IXP!Lx!LxP#!OP#!SI[PI[#!Y#%_CjA^PA^PA^A^P#&lA^A^#)OA^#+vA^#.SA^A^#.r#1W#1W#1]#1f#1W#1qPP#1WPA^#2ZA^#6YA^A^6mPPP#:_PPP#:x#:xP#:xP#;`#:xPP#;fP#;]P#;]#;y#;]#<e#<k#<n)aP#<q)aP#<z#<z#<zP)aP)aP)aP)aPP)aP#=Q#=TP#=T)aP#=XP#=[P)aP)aP)aP)aP)aP)a)aPP#=b#=h#=s#=y#>P#>V#>]#>k#>q#>{#?R#?]#?c#?s#?y#@k#@}#AT#AZ#Ai#BO#Cs#DR#DY#Et#FS#Gt#HS#HY#H`#Hf#Hp#Hv#H|#IW#Ij#IpPPPPPPPPPPP#IvPPPPPPP#Jk#Mx$ b$ i$ qPPP$']P$'f$*_$0x$0{$1O$1}$2Q$2X$2aP$2g$2jP$3W$3[$4S$5b$5g$5}PP$6S$6Y$6^$6a$6e$6i$7e$7|$8e$8i$8l$8o$8y$8|$9Q$9UR!|RoqOXst!Z#d%m&r&t&u&w,s,x2[2_Y!vQ'`-e1o5{Q%tvQ%|yQ&T|Q&j!VS'W!e-]Q'f!iS'l!r!yU*k$|*Z*oQ+o%}S+|&V&WQ,d&dQ-c'_Q-m'gQ-u'mQ0[*qQ1b,OQ1y,eR<{<Y%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_S#q]<V!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU+P%]<s<tQ+t&PQ,f&gQ,m&oQ0x+gQ0}+iQ1Y+uQ2R,kQ3`.gQ5`0|Q5f1TQ6[1zQ7Y3dQ8`5gR9e7['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S!S!nQ!r!v!y!z$|'W'_'`'l'm'n*k*o*q*r-]-c-e-u0[0_1o5{5}%[$ti#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q&X|Q'U!eS'[%i-`Q+t&PQ,P&WQ,f&gQ0n+SQ1Y+uQ1_+{Q2Q,jQ2R,kQ5f1TQ5o1aQ6[1zQ6_1|Q6`2PQ8`5gQ8c5lQ8|6bQ:X8dQ:f8yQ;V:YR<}*ZrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R,h&k&z^OPXYstuvwz!Z!`!g!j!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'b'r(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>R>S[#]WZ#W#Z'X(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ%wxQ%{yW&Q|&V&W,OQ&_!TQ'c!hQ'e!iQ(q#sS+n%|%}Q+r&PQ,_&bQ,c&dS-l'f'gQ.i(rQ1R+oQ1X+uQ1Z+vQ1^+zQ1t,`S1x,d,eQ2|-mQ5e1TQ5i1WQ5n1`Q6Z1yQ8_5gQ8b5kQ8f5pQ:T8^R;T:U!U$zi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y!^%yy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{Q+h%wQ,T&[Q,W&]Q,b&dQ.h(qQ1s,_U1w,c,d,eQ3e.iQ6U1tS6Y1x1yQ8x6Z#f>T#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o>U<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hW%Ti%V*y>PS&[!Q&iQ&]!RQ&^!SU*}%[%d=sR,R&Y%]%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^T)z$u){V+P%]<s<tW'[!e%i*Z-`S(}#y#zQ+c%rQ+y&SS.b(m(nQ1j,XQ5T0kR8i5u'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S$i$^c#Y#e%q%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.|.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vT#TV#U'RkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ'Y!eR2q-]!W!nQ!e!r!v!y!z$|'W'_'`'l'm'n*Z*k*o*q*r-]-c-e-u0[0_1o5{5}R1l,ZnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&y!^Q'v!xS(s#u<^Q+l%zQ,]&_Q,^&aQ-j'dQ-w'oS.r(x=PS0q+X=ZQ1P+mQ1n,[Q2c,zQ2e,{Q2m-WQ2z-kQ2}-oS5Y0r=eQ5a1QS5d1S=fQ6t2oQ6x2{Q6}3SQ8]5bQ9Y6vQ9Z6yQ9^7OR:l9V$d$]c#Y#e%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vS(o#p'iQ)P#zS+b%q.|S.c(n(pR3^.d'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS#q]<VQ&t!XQ&u!YQ&w![Q&x!]R2Z,vQ'a!hQ+e%wQ-h'cS.e(q+hQ2x-gW3b.h.i0w0yQ6w2yW7U3_3a3e5^U9a7V7X7ZU:q9c9d9fS;b:p:sQ;p;cR;x;qU!wQ'`-eT5y1o5{!Q_OXZ`st!V!Z#d#h%e%m&i&k&r&t&u&w(j,s,x.[2[2_]!pQ!r'`-e1o5{T#q]<V%^{OPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S(}#y#zS.b(m(n!s=l$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU$fd)_,mS(p#p'iU*v%R(w4OU0m+O.n7gQ5^0xQ7V3`Q9d7YR:s9em!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}Q't!uS(f#g2US-s'k'wQ/s*]Q0R*jQ3U-vQ4f/tQ4r0TQ4s0UQ4x0^Q7r4`S7}4t4vS8R4y4{Q9r7sQ9v7yQ9{8OQ:Q8TS:{9w9xS;g:|;PS;s;h;iS;{;t;uS<P;|;}R<S<QQ#wbQ's!uS(e#g2US(g#m+WQ+Y%fQ+j%xQ+p&OU-r'k't'wQ.W(fU/r*]*`/wQ0S*jQ0V*lQ1O+kQ1u,aS3R-s-vQ3Z.`S4e/s/tQ4n0PS4q0R0^Q4u0WQ6W1vQ7P3US7q4`4bQ7u4fU7|4r4x4{Q8P4wQ8v6XS9q7r7sQ9u7yQ9}8RQ:O8SQ:c8wQ:y9rS:z9v9xQ;S:QQ;^:dS;f:{;PS;r;g;hS;z;s;uS<O;{;}Q<R<PQ<T<SQ=o=jQ={=tR=|=uV!wQ'`-e%^aOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S#wz!j!r=i$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=o>R%^bOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Q%fj!^%xy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{S&Oz!jQ+k%yQ,a&dW1v,b,c,d,eU6X1w1x1yS8w6Y6ZQ:d8x!r=j$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ=t>QR=u>R%QeOPXYstuvw!Z!`!g!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Y#bWZ#W#Z(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ,n&o!p=k$Z$n)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=n'XU']!e%i*ZR2s-`%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ,m&oQ0x+gQ3`.gQ7Y3dR9e7[!b$Tc#Y%q(S(Y(t(y)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!P<d)^)q-Z.|2k2n3p3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!f$Vc#Y%q(S(Y(t(y)W)X)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!T<f)^)q-Z.|2k2n3p3v3w3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!^$Zc#Y%q(S(Y(t(y)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<WQ4_/kz>S)^)q-Z.|2k2n3p4P4X6u7b7k7l8k9X9g9m9n;W;`=vQ>X>ZR>Y>['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS$oh$pR4U/U'XgOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$kf$qQ$ifS)j$l)nR)v$qT$jf$qT)l$l)n'XhOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$oh$pQ$rhR)u$p%^jOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_!s>Q$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S#glOPXZst!Z!`!o#S#d#o#{$n%m&k&n&o&r&t&u&w&{'T'b)O)s*i+]+g,p,s,x-i.g/V/n0]0l1r2S2T2V2X2[2_2a3d4T4z6T6e6f6i7[8t9T!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^Q+T%aQ/c*Oo4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!U$yi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>YQ*c$zU*l$|*Z*oQ+U%bQ0W*m#f=q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n=r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hQ=w>TQ=x>UQ=y>VR=z>W!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hnoOXst!Z#d%m&r&t&u&w,s,x2[2_S*f${*YQ-R'OQ-S'QR4i/y%[%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q,U&]Q1h,WQ5s1gR8h5tV*n$|*Z*oU*n$|*Z*oT5z1o5{S0P*i/nQ4w0]T8S4z:]Q+j%xQ0V*lQ1O+kQ1u,aQ6W1vQ8v6XQ:c8wR;^:d!U%Oi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Yx*R$v)e*S*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>OS0`*t0a#f<o#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<p<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!d=S(u)c*[*e.j.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[`=T3}7c7f7j9h:t:w;yS=_.l3iT=`7e9k!U%Qi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y|*T$v)e*U*t+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>OS0b*u0c#f<q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!h=U(u)c*[*e.k.l.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[d=V3}7d7e7j9h9i:t:u:w;yS=a.m3jT=b7f9lrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q&f!UR,p&ornOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R&f!UQ,Y&^R1d,RsnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q1p,_S6R1s1tU8p6P6Q6US:_8r8sS;Y:^:aQ;m;ZR;w;nQ&m!VR,i&iR6_1|R:f8yW&Q|&V&W,OR1Z+vQ&r!WR,s&sR,y&xT2],x2_R,}&yQ,|&yR2f,}Q'y!{R-y'ySsOtQ#dXT%ps#dQ#OTR'{#OQ#RUR'}#RQ){$uR/`){Q#UVR(Q#UQ#XWU(W#X(X.QQ(X#YR.Q(YQ-^'YR2r-^Q.u(yS3m.u3nR3n.vQ-e'`R2v-eY!rQ'`-e1o5{R'j!rQ/Q)eR4S/QU#_W%h*YU(_#_(`.RQ(`#`R.R(ZQ-a']R2t-at`OXst!V!Z#d%m&i&k&r&t&u&w,s,x2[2_S#hZ%eU#r`#h.[R.[(jQ(k#jQ.X(gW.a(k.X3X7RQ3X.YR7R3YQ)n$lR/W)nQ$phR)t$pQ$`cU)a$`-|<jQ-|<WR<j)qQ/q*]W4c/q4d7t9sU4d/r/s/tS7t4e4fR9s7u$e*Q$v(u)c)e*[*e*t*u+Q+R+V.l.m.o.p.q/_/g/i/k/v/|0d0e0v1e3f3g3h3}4R4[4g4h4l4|5O5R5S5W5r7]7^7_7`7e7f7h7i7j7p7w7z8U8X8Z9h9i9j9t9|:R:S:t:u:v:w:x:};R;e;j;v;y=p=}>O>Z>[Q/z*eU4k/z4m7xQ4m/|R7x4lS*o$|*ZR0Y*ox*S$v)e*t*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>O!d.j(u)c*[*e.l.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/h*S.j7ca7c3}7e7f7j9h:t:w;yQ0a*tQ3i.lU4}0a3i9kR9k7e|*U$v)e*t*u+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>O!h.k(u)c*[*e.l.m.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/j*U.k7de7d3}7e7f7j9h9i:t:u:w;yQ0c*uQ3j.mU5P0c3j9lR9l7fQ*z%UR0g*zQ5]0vR8Y5]Q+_%kR0u+_Q5v1jS8j5v:[R:[8kQ,[&_R1m,[Q5{1oR8m5{Q1{,fS6]1{8zR8z6_Q1U+rW5h1U5j8a:VQ5j1XQ8a5iR:V8bQ+w&QR1[+wQ2_,xR6m2_YrOXst#dQ&v!ZQ+a%mQ,r&rQ,t&tQ,u&uQ,w&wQ2Y,sS2],x2_R6l2[Q%opQ&z!_Q&}!aQ'P!bQ'R!cQ'q!uQ+`%lQ+l%zQ,Q&XQ,h&mQ-P&|W-p'k's't'wQ-w'oQ0X*nQ1P+mQ1c,PS2O,i,lQ2g-OQ2h-RQ2i-SQ2}-oW3P-r-s-v-xQ5a1QQ5m1_Q5q1eQ6V1uQ6a2QQ6k2ZU6z3O3R3UQ6}3SQ8]5bQ8e5oQ8g5rQ8l5zQ8u6WQ8{6`S9[6{7PQ9^7OQ:W8cQ:b8vQ:g8|Q:n9]Q;U:XQ;]:cQ;a:oQ;l;VR;o;^Q%zyQ'd!iQ'o!uU+m%{%|%}Q-W'VU-k'e'f'gS-o'k'uQ0Q*jS1Q+n+oQ2o-YS2{-l-mQ3S-tS4p0R0UQ5b1RQ6v2uQ6y2|Q7O3TU7{4r4s4vQ9z7}R;O9{S$wi>PR*{%VU%Ui%V>PR0f*yQ$viS(u#v+iS)c$b$cQ)e$dQ*[$xS*e${*YQ*t%OQ*u%QQ+Q%^Q+R%_Q+V%cQ.l<oQ.m<qQ.o<uQ.p<wQ.q<yQ/_)yQ/g*RQ/i*TQ/k*VQ/v*aS/|*g/mQ0d*wQ0e*xl0v+f,V.f1i1q3c6S7W8q9b:`:r;[;dQ1e,SQ3f=SQ3g=UQ3h=XS3}<l<mQ4R/PS4[/d4^Q4g/xQ4h/yQ4l/{Q4|0`Q5O0bQ5R0iQ5S0jQ5W0oQ5r1fQ7]=]Q7^=_Q7_=aQ7`=cQ7e<pQ7f<rQ7h<vQ7i<xQ7j<zQ7p4_Q7w4jQ7z4oQ8U5QQ8X5[Q8Z5_Q9h=YQ9i=TQ9j=VQ9t7vQ9|8QQ:R8VQ:S8[Q:t=^Q:u=`Q:v=bQ:w=dQ:x9pQ:}9yQ;R:PQ;e=gQ;j;QQ;v;kQ;y=hQ=p>PQ=}>XQ>O>YQ>Z>]R>[>^Q+O%]Q.n<sR7g<tnpOXst!Z#d%m&r&t&u&w,s,x2[2_Q!fPS#fZ#oQ&|!`W'h!o*i0]4zQ(P#SQ)Q#{Q)r$nS,l&k&nQ,q&oQ-O&{S-T'T/nQ-g'bQ.x)OQ/[)sQ0s+]Q0y+gQ2W,pQ2y-iQ3a.gQ4W/VQ5U0lQ6Q1rQ6c2SQ6d2TQ6h2VQ6j2XQ6o2aQ7Z3dQ7m4TQ8s6TQ9P6eQ9Q6fQ9S6iQ9f7[Q:a8tR:k9T#[cOPXZst!Z!`!o#d#o#{%m&k&n&o&r&t&u&w&{'T'b)O*i+]+g,p,s,x-i.g/n0]0l1r2S2T2V2X2[2_2a3d4z6T6e6f6i7[8t9TQ#YWQ#eYQ%quQ%svS%uw!gS(S#W(VQ(Y#ZQ(t#uQ(y#xQ)R$OQ)S$PQ)T$QQ)U$RQ)V$SQ)W$TQ)X$UQ)Y$VQ)Z$WQ)[$XQ)^$ZQ)`$_Q)b$aQ)g$eW)q$n)s/V4TQ+d%tQ+x&RS-Z'X2pQ-x'rS-}(T.PQ.S(]Q.U(dQ.s(xQ.v(zQ.z<UQ.|<XQ.}<YQ/O<]Q/b)}Q0p+XQ2k-UQ2n-XQ3O-qQ3V.VQ3k.tQ3p<^Q3q<_Q3r<`Q3s<aQ3t<bQ3u<cQ3v<dQ3w<eQ3x<fQ3y<gQ3z<hQ3{.{Q3|<kQ4P<nQ4Q<{Q4X<iQ5X0rQ5c1SQ6u=OQ6{3QQ7Q3WQ7a3lQ7b=PQ7k=RQ7l=ZQ8k5wQ9X6sQ9]6|Q9g=[Q9m=eQ9n=fQ:o9_Q;W:ZQ;`:mQ<W#SR=v>SR#[WR'Z!el!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}S'V!e-]U*j$|*Z*oS-Y'W'_S0U*k*qQ0^*rQ2u-cQ4v0[R4{0_R({#xQ!fQT-d'`-e]!qQ!r'`-e1o5{Q#p]R'i<VR)f$dY!uQ'`-e1o5{Q'k!rS'u!v!yS'w!z5}S-t'l'mQ-v'nR3T-uT#kZ%eS#jZ%eS%km,oU(g#h#i#lS.Y(h(iQ.^(jQ0t+^Q3Y.ZU3Z.[.]._S7S3[3]R9`7Td#^W#W#Z%h(T(^*Y+Z.T/mr#gZm#h#i#l%e(h(i(j+^.Z.[.]._3[3]7TS*]$x*bQ/t*^Q2U,oQ2l-VQ4`/pQ6q2dQ7s4aQ9W6rT=m'X+[V#aW%h*YU#`W%h*YS(U#W(^U(Z#Z+Z/mS-['X+[T.O(T.TV'^!e%i*ZQ$lfR)x$qT)m$l)nR4V/UT*_$x*bT*h${*YQ0w+fQ1g,VQ3_.fQ5t1iQ6P1qQ7X3cQ8r6SQ9c7WQ:^8qQ:p9bQ;Z:`Q;c:rQ;n;[R;q;dnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&l!VR,h&itmOXst!U!V!Z#d%m&i&r&t&u&w,s,x2[2_R,o&oT%lm,oR1k,XR,g&gQ&U|S+}&V&WR1^,OR+s&PT&p!W&sT&q!W&sT2^,x2_\",\n nodeNames: \"\u26A0 ArithOp ArithOp ?. JSXStartTag LineComment BlockComment Script Hashbang ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > < TypeParamList in out const TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast < ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate asserts is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration defer ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem\",\n maxTerm: 380,\n context: trackNewline,\n nodeProps: [\n [\"isolate\", -8,5,6,14,37,39,51,53,55,\"\"],\n [\"group\", -26,9,17,19,68,207,211,215,216,218,221,224,234,237,243,245,247,249,252,258,264,266,268,270,272,274,275,\"Statement\",-34,13,14,32,35,36,42,51,54,55,57,62,70,72,76,80,82,84,85,110,111,120,121,136,139,141,142,143,144,145,147,148,167,169,171,\"Expression\",-23,31,33,37,41,43,45,173,175,177,178,180,181,182,184,185,186,188,189,190,201,203,205,206,\"Type\",-3,88,103,109,\"ClassItem\"],\n [\"openedBy\", 23,\"<\",38,\"InterpolationStart\",56,\"[\",60,\"{\",73,\"(\",160,\"JSXStartCloseTag\"],\n [\"closedBy\", -2,24,168,\">\",40,\"InterpolationEnd\",50,\"]\",61,\"}\",74,\")\",165,\"JSXEndTag\"]\n ],\n propSources: [jsHighlight],\n skippedNodes: [0,5,6,278],\n repeatNodeCount: 37,\n tokenData: \"$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$<r#p#q$=h#q#r$>x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$i&j(Wp(Z!b'|0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(X#S$i&j'}0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$i&j(Wp(Z!b'}0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$i&j!p),Q(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(V':f$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$i&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$d`$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$d``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$d`$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(Z!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$d`(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$i&j(Wp(Z!bOY%ZYZ&cZq%Zqr<Srs&}st%ZtuCruw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr(r<__WS$i&j(Wp(Z!bOY<SYZ&cZr<Srs=^sw<Swx@nx!^<S!^!_Bm!_#O<S#O#P>`#P#o<S#o#pBm#p;'S<S;'S;=`Cl<%lO<S(Q=g]WS$i&j(Z!bOY=^YZ&cZw=^wx>`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$i&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(Z!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$i&j(WpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(WpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Wp(Z!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l<S%9[C}i$i&j(o%1l(Wp(Z!bOY%ZYZ&cZr%Zrs&}st%ZtuCruw%Zwx(rx!Q%Z!Q![Cr![!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr%9[EoP;=`<%lCr07[FRk$i&j(Wp(Z!b$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr+dHRk$i&j(Wp(Z!b$]#tOY%ZYZ&cZr%Zrs&}st%ZtuGvuw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Gv![!^%Z!^!_*g!_!c%Z!c!}Gv!}#O%Z#O#P&c#P#R%Z#R#SGv#S#T%Z#T#oGv#o#p*g#p$g%Z$g;'SGv;'S;=`Iv<%lOGv+dIyP;=`<%lGv07[JPP;=`<%lEr(KWJ_`$i&j(Wp(Z!b#p(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWKl_$i&j$Q(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,#xLva(z+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sv%ZvwM{wx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWNW`$i&j#z(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At! c_(Y';W$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b'l!!i_$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b&z!#mX$i&jOw!#hwx6cx!^!#h!^!_!$Y!_#o!#h#o#p!$Y#p;'S!#h;'S;=`!$r<%lO!#h`!$]TOw!$Ywx7]x;'S!$Y;'S;=`!$l<%lO!$Y`!$oP;=`<%l!$Y&z!$uP;=`<%l!#h'l!%R]$d`$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r!Q!&PZ(WpOY!%zYZ!$YZr!%zrs!$Ysw!%zwx!&rx#O!%z#O#P!$Y#P;'S!%z;'S;=`!']<%lO!%z!Q!&yU$d`(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r!Q!'`P;=`<%l!%z'l!'fP;=`<%l!!b/5|!'t_!l/.^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&U!)O_!k!Lf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z-!n!*[b$i&j(Wp(Z!b(U%&f#q(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!+d{!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW!+o`$i&j(Wp(Z!b#n(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;x!,|`$i&j(Wp(Z!br+4YOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,$U!.Z_!]+Jf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!/ec$i&j(Wp(Z!b!Q.2^OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!0p!P!Q%Z!Q![!3Y![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!0ya$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!2O!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!2Z_![!L^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!3eg$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!3Y![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S!3Y#S#X%Z#X#Y!4|#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!5Vg$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!6n|}%Z}!O!6n!O!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!6wc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!8_c$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!9uf$i&j(Wp(Z!b#o(ChOY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcxz!;Zz{#-}{!P!;Z!P!Q#/d!Q!^!;Z!^!_#(i!_!`#7S!`!a#8i!a!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z?O!;fb$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z>^!<w`$i&j(Z!b!X7`OY!<nYZ&cZw!<nwx!=yx!P!<n!P!Q!Eq!Q!^!<n!^!_!Gr!_!}!<n!}#O!KS#O#P!Dy#P#o!<n#o#p!Gr#p;'S!<n;'S;=`!L]<%lO!<n<z!>Q^$i&j!X7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!?Td$i&j!X7`O!^&c!_#W&c#W#X!>|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!X7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!X7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c<z!C][$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#O!CW#O#P!DR#P#Q!=y#Q#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DWX$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DvP;=`<%l!CW<z!EOX$i&jOY!=yYZ&cZ!^!=y!^!_!@c!_#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!EnP;=`<%l!=y>^!Ezl$i&j(Z!b!X7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(Z!b!X7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(Z!b!X7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(Z!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$i&j(Z!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!<n#Q#o!KS#o#p!JU#p;'S!KS;'S;=`!LV<%lO!KS>^!LYP;=`<%l!KS>^!L`P;=`<%l!<n=l!Ll`$i&j(Wp!X7`OY!LcYZ&cZr!Lcrs!=ys!P!Lc!P!Q!Mn!Q!^!Lc!^!_# o!_!}!Lc!}#O#%P#O#P!Dy#P#o!Lc#o#p# o#p;'S!Lc;'S;=`#&Y<%lO!Lc=l!Mwl$i&j(Wp!X7`OY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#W(r#W#X!Mn#X#Z(r#Z#[!Mn#[#](r#]#^!Mn#^#a(r#a#b!Mn#b#g(r#g#h!Mn#h#i(r#i#j!Mn#j#k!Mn#k#m(r#m#n!Mn#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r8Q# vZ(Wp!X7`OY# oZr# ors!@cs!P# o!P!Q#!i!Q!}# o!}#O#$R#O#P!Bq#P;'S# o;'S;=`#$y<%lO# o8Q#!pe(Wp!X7`OY)rZr)rs#O)r#P#W)r#W#X#!i#X#Z)r#Z#[#!i#[#])r#]#^#!i#^#a)r#a#b#!i#b#g)r#g#h#!i#h#i)r#i#j#!i#j#k#!i#k#m)r#m#n#!i#n;'S)r;'S;=`*Z<%lO)r8Q#$WX(WpOY#$RZr#$Rrs!Ars#O#$R#O#P!B[#P#Q# o#Q;'S#$R;'S;=`#$s<%lO#$R8Q#$vP;=`<%l#$R8Q#$|P;=`<%l# o=l#%W^$i&j(WpOY#%PYZ&cZr#%Prs!CWs!^#%P!^!_#$R!_#O#%P#O#P!DR#P#Q!Lc#Q#o#%P#o#p#$R#p;'S#%P;'S;=`#&S<%lO#%P=l#&VP;=`<%l#%P=l#&]P;=`<%l!Lc?O#&kn$i&j(Wp(Z!b!X7`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#W%Z#W#X#&`#X#Z%Z#Z#[#&`#[#]%Z#]#^#&`#^#a%Z#a#b#&`#b#g%Z#g#h#&`#h#i%Z#i#j#&`#j#k#&`#k#m%Z#m#n#&`#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z9d#(r](Wp(Z!b!X7`OY#(iZr#(irs!Grsw#(iwx# ox!P#(i!P!Q#)k!Q!}#(i!}#O#+`#O#P!Bq#P;'S#(i;'S;=`#,`<%lO#(i9d#)th(Wp(Z!b!X7`OY*gZr*grs'}sw*gwx)rx#O*g#P#W*g#W#X#)k#X#Z*g#Z#[#)k#[#]*g#]#^#)k#^#a*g#a#b#)k#b#g*g#g#h#)k#h#i*g#i#j#)k#j#k#)k#k#m*g#m#n#)k#n;'S*g;'S;=`+Z<%lO*g9d#+gZ(Wp(Z!bOY#+`Zr#+`rs!JUsw#+`wx#$Rx#O#+`#O#P!B[#P#Q#(i#Q;'S#+`;'S;=`#,Y<%lO#+`9d#,]P;=`<%l#+`9d#,cP;=`<%l#(i?O#,o`$i&j(Wp(Z!bOY#,fYZ&cZr#,frs!KSsw#,fwx#%Px!^#,f!^!_#+`!_#O#,f#O#P!DR#P#Q!;Z#Q#o#,f#o#p#+`#p;'S#,f;'S;=`#-q<%lO#,f?O#-tP;=`<%l#,f?O#-zP;=`<%l!;Z07[#.[b$i&j(Wp(Z!b(O0/l!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z07[#/o_$i&j(Wp(Z!bT0/lOY#/dYZ&cZr#/drs#0nsw#/dwx#4Ox!^#/d!^!_#5}!_#O#/d#O#P#1p#P#o#/d#o#p#5}#p;'S#/d;'S;=`#6|<%lO#/d06j#0w]$i&j(Z!bT0/lOY#0nYZ&cZw#0nwx#1px!^#0n!^!_#3R!_#O#0n#O#P#1p#P#o#0n#o#p#3R#p;'S#0n;'S;=`#3x<%lO#0n05W#1wX$i&jT0/lOY#1pYZ&cZ!^#1p!^!_#2d!_#o#1p#o#p#2d#p;'S#1p;'S;=`#2{<%lO#1p0/l#2iST0/lOY#2dZ;'S#2d;'S;=`#2u<%lO#2d0/l#2xP;=`<%l#2d05W#3OP;=`<%l#1p01O#3YW(Z!bT0/lOY#3RZw#3Rwx#2dx#O#3R#O#P#2d#P;'S#3R;'S;=`#3r<%lO#3R01O#3uP;=`<%l#3R06j#3{P;=`<%l#0n05x#4X]$i&j(WpT0/lOY#4OYZ&cZr#4Ors#1ps!^#4O!^!_#5Q!_#O#4O#O#P#1p#P#o#4O#o#p#5Q#p;'S#4O;'S;=`#5w<%lO#4O00^#5XW(WpT0/lOY#5QZr#5Qrs#2ds#O#5Q#O#P#2d#P;'S#5Q;'S;=`#5q<%lO#5Q00^#5tP;=`<%l#5Q05x#5zP;=`<%l#4O01p#6WY(Wp(Z!bT0/lOY#5}Zr#5}rs#3Rsw#5}wx#5Qx#O#5}#O#P#2d#P;'S#5};'S;=`#6v<%lO#5}01p#6yP;=`<%l#5}07[#7PP;=`<%l#/d)3h#7ab$i&j$Q(Ch(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;ZAt#8vb$Z#t$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z'Ad#:Zp$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#U%Z#U#V#?i#V#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#<jk$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!g$b$i&j$O)Lv(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#R-<U(Wp(Z!b$n7`OY*gZr*grs'}sw*gwx)rx!P*g!P!Q#MO!Q!^*g!^!_#Mt!_!`$ f!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#MXX$k&j(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El#M}Z#r(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Np!`#O*g#P;'S*g;'S;=`+Z<%lO*g(El#NyX$Q(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El$ oX#s(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g*)x$!ga#`*!Y$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a$#l!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(K[$#w_#k(Cl$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x$%Vag!*r#s(Ch$f#|$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`$&[!`!a$'f!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$&g_#s(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$'qa#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`!a$(v!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$)R`#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(Kd$*`a(r(Ct$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!a%Z!a!b$+e!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$+p`$i&j#{(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`$,}_!|$Ip$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f$.X_!S0,v$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(n$/]Z$i&jO!^$0O!^!_$0f!_#i$0O#i#j$0k#j#l$0O#l#m$2^#m#o$0O#o#p$0f#p;'S$0O;'S;=`$4i<%lO$0O(n$0VT_#S$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$0kO_#S(n$0p[$i&jO!Q&c!Q![$1f![!^&c!_!c&c!c!i$1f!i#T&c#T#Z$1f#Z#o&c#o#p$3|#p;'S&c;'S;=`&w<%lO&c(n$1kZ$i&jO!Q&c!Q![$2^![!^&c!_!c&c!c!i$2^!i#T&c#T#Z$2^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$2cZ$i&jO!Q&c!Q![$3U![!^&c!_!c&c!c!i$3U!i#T&c#T#Z$3U#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$3ZZ$i&jO!Q&c!Q![$0O![!^&c!_!c&c!c!i$0O!i#T&c#T#Z$0O#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$4PR!Q![$4Y!c!i$4Y#T#Z$4Y#S$4]S!Q![$4Y!c!i$4Y#T#Z$4Y#q#r$0f(n$4lP;=`<%l$0O#1[$4z_!Y#)l$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$6U`#x(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;p$7c_$i&j(Wp(Z!b(a+4QOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$8qk$i&j(Wp(Z!b(T,2j$_#t(e$I[OY%ZYZ&cZr%Zrs&}st%Ztu$8buw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$8b![!^%Z!^!_*g!_!c%Z!c!}$8b!}#O%Z#O#P&c#P#R%Z#R#S$8b#S#T%Z#T#o$8b#o#p*g#p$g%Z$g;'S$8b;'S;=`$<l<%lO$8b+d$:qk$i&j(Wp(Z!b$_#tOY%ZYZ&cZr%Zrs&}st%Ztu$:fuw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$:f![!^%Z!^!_*g!_!c%Z!c!}$:f!}#O%Z#O#P&c#P#R%Z#R#S$:f#S#T%Z#T#o$:f#o#p*g#p$g%Z$g;'S$:f;'S;=`$<f<%lO$:f+d$<iP;=`<%l$:f07[$<oP;=`<%l$8b#Jf$<{X!_#Hb(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g,#x$=sa(y+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$+e#q;'S%Z;'S;=`+a<%lO%Z)>v$?V_!^(CdvBr$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z?O$@a_!q7`$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$Aq|$i&j(Wp(Z!b'|0/l$]#t(T,2j(e$I[OX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr07[$D|k$i&j(Wp(Z!b'}0/l$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr\",\n tokenizers: [noSemicolon, noSemicolonType, operatorToken, jsx, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, insertSemicolon, new LocalTokenGroup(\"$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOx~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!U~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(c~~\", 141, 340), new LocalTokenGroup(\"j~RQYZXz{^~^O(Q~~aP!P!Qd~iO(R~~\", 25, 323)],\n topRules: {\"Script\":[0,7],\"SingleExpression\":[1,276],\"SingleClassItem\":[2,277]},\n dialects: {jsx: 0, ts: 15175},\n dynamicPrecedences: {\"80\":1,\"82\":1,\"94\":1,\"169\":1,\"199\":1},\n specialized: [{term: 327, get: (value) => spec_identifier[value] || -1},{term: 343, get: (value) => spec_word[value] || -1},{term: 95, get: (value) => spec_LessThan[value] || -1}],\n tokenPrec: 15201\n});\n\nexport { parser };\n", "import { parser } from '@lezer/javascript';\nimport { syntaxTree, LRLanguage, indentNodeProp, continuedIndent, flatIndent, delimitedIndent, foldNodeProp, foldInside, defineLanguageFacet, sublanguageProp, LanguageSupport } from '@codemirror/language';\nimport { EditorSelection } from '@codemirror/state';\nimport { EditorView } from '@codemirror/view';\nimport { snippetCompletion, ifNotIn, completeFromList } from '@codemirror/autocomplete';\nimport { NodeWeakMap, IterMode } from '@lezer/common';\n\n/**\nA collection of JavaScript-related\n[snippets](https://codemirror.net/6/docs/ref/#autocomplete.snippet).\n*/\nconst snippets = [\n /*@__PURE__*/snippetCompletion(\"function ${name}(${params}) {\\n\\t${}\\n}\", {\n label: \"function\",\n detail: \"definition\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\\n\\t${}\\n}\", {\n label: \"for\",\n detail: \"loop\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"for (let ${name} of ${collection}) {\\n\\t${}\\n}\", {\n label: \"for\",\n detail: \"of loop\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"do {\\n\\t${}\\n} while (${})\", {\n label: \"do\",\n detail: \"loop\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"while (${}) {\\n\\t${}\\n}\", {\n label: \"while\",\n detail: \"loop\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"try {\\n\\t${}\\n} catch (${error}) {\\n\\t${}\\n}\", {\n label: \"try\",\n detail: \"/ catch block\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"if (${}) {\\n\\t${}\\n}\", {\n label: \"if\",\n detail: \"block\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"if (${}) {\\n\\t${}\\n} else {\\n\\t${}\\n}\", {\n label: \"if\",\n detail: \"/ else block\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"class ${name} {\\n\\tconstructor(${params}) {\\n\\t\\t${}\\n\\t}\\n}\", {\n label: \"class\",\n detail: \"definition\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"import {${names}} from \\\"${module}\\\"\\n${}\", {\n label: \"import\",\n detail: \"named\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"import ${name} from \\\"${module}\\\"\\n${}\", {\n label: \"import\",\n detail: \"default\",\n type: \"keyword\"\n })\n];\n/**\nA collection of snippet completions for TypeScript. Includes the\nJavaScript [snippets](https://codemirror.net/6/docs/ref/#lang-javascript.snippets).\n*/\nconst typescriptSnippets = /*@__PURE__*/snippets.concat([\n /*@__PURE__*/snippetCompletion(\"interface ${name} {\\n\\t${}\\n}\", {\n label: \"interface\",\n detail: \"definition\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"type ${name} = ${type}\", {\n label: \"type\",\n detail: \"definition\",\n type: \"keyword\"\n }),\n /*@__PURE__*/snippetCompletion(\"enum ${name} {\\n\\t${}\\n}\", {\n label: \"enum\",\n detail: \"definition\",\n type: \"keyword\"\n })\n]);\n\nconst cache = /*@__PURE__*/new NodeWeakMap();\nconst ScopeNodes = /*@__PURE__*/new Set([\n \"Script\", \"Block\",\n \"FunctionExpression\", \"FunctionDeclaration\", \"ArrowFunction\", \"MethodDeclaration\",\n \"ForStatement\"\n]);\nfunction defID(type) {\n return (node, def) => {\n let id = node.node.getChild(\"VariableDefinition\");\n if (id)\n def(id, type);\n return true;\n };\n}\nconst functionContext = [\"FunctionDeclaration\"];\nconst gatherCompletions = {\n FunctionDeclaration: /*@__PURE__*/defID(\"function\"),\n ClassDeclaration: /*@__PURE__*/defID(\"class\"),\n ClassExpression: () => true,\n EnumDeclaration: /*@__PURE__*/defID(\"constant\"),\n TypeAliasDeclaration: /*@__PURE__*/defID(\"type\"),\n NamespaceDeclaration: /*@__PURE__*/defID(\"namespace\"),\n VariableDefinition(node, def) { if (!node.matchContext(functionContext))\n def(node, \"variable\"); },\n TypeDefinition(node, def) { def(node, \"type\"); },\n __proto__: null\n};\nfunction getScope(doc, node) {\n let cached = cache.get(node);\n if (cached)\n return cached;\n let completions = [], top = true;\n function def(node, type) {\n let name = doc.sliceString(node.from, node.to);\n completions.push({ label: name, type });\n }\n node.cursor(IterMode.IncludeAnonymous).iterate(node => {\n if (top) {\n top = false;\n }\n else if (node.name) {\n let gather = gatherCompletions[node.name];\n if (gather && gather(node, def) || ScopeNodes.has(node.name))\n return false;\n }\n else if (node.to - node.from > 8192) {\n // Allow caching for bigger internal nodes\n for (let c of getScope(doc, node.node))\n completions.push(c);\n return false;\n }\n });\n cache.set(node, completions);\n return completions;\n}\nconst Identifier = /^[\\w$\\xa1-\\uffff][\\w$\\d\\xa1-\\uffff]*$/;\nconst dontComplete = [\n \"TemplateString\", \"String\", \"RegExp\",\n \"LineComment\", \"BlockComment\",\n \"VariableDefinition\", \"TypeDefinition\", \"Label\",\n \"PropertyDefinition\", \"PropertyName\",\n \"PrivatePropertyDefinition\", \"PrivatePropertyName\",\n \"JSXText\", \"JSXAttributeValue\", \"JSXOpenTag\", \"JSXCloseTag\", \"JSXSelfClosingTag\",\n \".\", \"?.\"\n];\n/**\nCompletion source that looks up locally defined names in\nJavaScript code.\n*/\nfunction localCompletionSource(context) {\n let inner = syntaxTree(context.state).resolveInner(context.pos, -1);\n if (dontComplete.indexOf(inner.name) > -1)\n return null;\n let isWord = inner.name == \"VariableName\" ||\n inner.to - inner.from < 20 && Identifier.test(context.state.sliceDoc(inner.from, inner.to));\n if (!isWord && !context.explicit)\n return null;\n let options = [];\n for (let pos = inner; pos; pos = pos.parent) {\n if (ScopeNodes.has(pos.name))\n options = options.concat(getScope(context.state.doc, pos));\n }\n return {\n options,\n from: isWord ? inner.from : context.pos,\n validFor: Identifier\n };\n}\nfunction pathFor(read, member, name) {\n var _a;\n let path = [];\n for (;;) {\n let obj = member.firstChild, prop;\n if ((obj === null || obj === void 0 ? void 0 : obj.name) == \"VariableName\") {\n path.push(read(obj));\n return { path: path.reverse(), name };\n }\n else if ((obj === null || obj === void 0 ? void 0 : obj.name) == \"MemberExpression\" && ((_a = (prop = obj.lastChild)) === null || _a === void 0 ? void 0 : _a.name) == \"PropertyName\") {\n path.push(read(prop));\n member = obj;\n }\n else {\n return null;\n }\n }\n}\n/**\nHelper function for defining JavaScript completion sources. It\nreturns the completable name and object path for a completion\ncontext, or null if no name/property completion should happen at\nthat position. For example, when completing after `a.b.c` it will\nreturn `{path: [\"a\", \"b\"], name: \"c\"}`. When completing after `x`\nit will return `{path: [], name: \"x\"}`. When not in a property or\nname, it will return null if `context.explicit` is false, and\n`{path: [], name: \"\"}` otherwise.\n*/\nfunction completionPath(context) {\n let read = (node) => context.state.doc.sliceString(node.from, node.to);\n let inner = syntaxTree(context.state).resolveInner(context.pos, -1);\n if (inner.name == \"PropertyName\") {\n return pathFor(read, inner.parent, read(inner));\n }\n else if ((inner.name == \".\" || inner.name == \"?.\") && inner.parent.name == \"MemberExpression\") {\n return pathFor(read, inner.parent, \"\");\n }\n else if (dontComplete.indexOf(inner.name) > -1) {\n return null;\n }\n else if (inner.name == \"VariableName\" || inner.to - inner.from < 20 && Identifier.test(read(inner))) {\n return { path: [], name: read(inner) };\n }\n else if (inner.name == \"MemberExpression\") {\n return pathFor(read, inner, \"\");\n }\n else {\n return context.explicit ? { path: [], name: \"\" } : null;\n }\n}\nfunction enumeratePropertyCompletions(obj, top) {\n let options = [], seen = new Set;\n for (let depth = 0;; depth++) {\n for (let name of (Object.getOwnPropertyNames || Object.keys)(obj)) {\n if (!/^[a-zA-Z_$\\xaa-\\uffdc][\\w$\\xaa-\\uffdc]*$/.test(name) || seen.has(name))\n continue;\n seen.add(name);\n let value;\n try {\n value = obj[name];\n }\n catch (_) {\n continue;\n }\n options.push({\n label: name,\n type: typeof value == \"function\" ? (/^[A-Z]/.test(name) ? \"class\" : top ? \"function\" : \"method\")\n : top ? \"variable\" : \"property\",\n boost: -depth\n });\n }\n let next = Object.getPrototypeOf(obj);\n if (!next)\n return options;\n obj = next;\n }\n}\n/**\nDefines a [completion source](https://codemirror.net/6/docs/ref/#autocomplete.CompletionSource) that\ncompletes from the given scope object (for example `globalThis`).\nWill enter properties of the object when completing properties on\na directly-named path.\n*/\nfunction scopeCompletionSource(scope) {\n let cache = new Map;\n return (context) => {\n let path = completionPath(context);\n if (!path)\n return null;\n let target = scope;\n for (let step of path.path) {\n target = target[step];\n if (!target)\n return null;\n }\n let options = cache.get(target);\n if (!options)\n cache.set(target, options = enumeratePropertyCompletions(target, !path.path.length));\n return {\n from: context.pos - path.name.length,\n options,\n validFor: Identifier\n };\n };\n}\n\n/**\nA language provider based on the [Lezer JavaScript\nparser](https://github.com/lezer-parser/javascript), extended with\nhighlighting and indentation information.\n*/\nconst javascriptLanguage = /*@__PURE__*/LRLanguage.define({\n name: \"javascript\",\n parser: /*@__PURE__*/parser.configure({\n props: [\n /*@__PURE__*/indentNodeProp.add({\n IfStatement: /*@__PURE__*/continuedIndent({ except: /^\\s*({|else\\b)/ }),\n TryStatement: /*@__PURE__*/continuedIndent({ except: /^\\s*({|catch\\b|finally\\b)/ }),\n LabeledStatement: flatIndent,\n SwitchBody: context => {\n let after = context.textAfter, closed = /^\\s*\\}/.test(after), isCase = /^\\s*(case|default)\\b/.test(after);\n return context.baseIndent + (closed ? 0 : isCase ? 1 : 2) * context.unit;\n },\n Block: /*@__PURE__*/delimitedIndent({ closing: \"}\" }),\n ArrowFunction: cx => cx.baseIndent + cx.unit,\n \"TemplateString BlockComment\": () => null,\n \"Statement Property\": /*@__PURE__*/continuedIndent({ except: /^\\s*{/ }),\n JSXElement(context) {\n let closed = /^\\s*<\\//.test(context.textAfter);\n return context.lineIndent(context.node.from) + (closed ? 0 : context.unit);\n },\n JSXEscape(context) {\n let closed = /\\s*\\}/.test(context.textAfter);\n return context.lineIndent(context.node.from) + (closed ? 0 : context.unit);\n },\n \"JSXOpenTag JSXSelfClosingTag\"(context) {\n return context.column(context.node.from) + context.unit;\n }\n }),\n /*@__PURE__*/foldNodeProp.add({\n \"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType\": foldInside,\n BlockComment(tree) { return { from: tree.from + 2, to: tree.to - 2 }; }\n })\n ]\n }),\n languageData: {\n closeBrackets: { brackets: [\"(\", \"[\", \"{\", \"'\", '\"', \"`\"] },\n commentTokens: { line: \"//\", block: { open: \"/*\", close: \"*/\" } },\n indentOnInput: /^\\s*(?:case |default:|\\{|\\}|<\\/)$/,\n wordChars: \"$\"\n }\n});\nconst jsxSublanguage = {\n test: node => /^JSX/.test(node.name),\n facet: /*@__PURE__*/defineLanguageFacet({ commentTokens: { block: { open: \"{/*\", close: \"*/}\" } } })\n};\n/**\nA language provider for TypeScript.\n*/\nconst typescriptLanguage = /*@__PURE__*/javascriptLanguage.configure({ dialect: \"ts\" }, \"typescript\");\n/**\nLanguage provider for JSX.\n*/\nconst jsxLanguage = /*@__PURE__*/javascriptLanguage.configure({\n dialect: \"jsx\",\n props: [/*@__PURE__*/sublanguageProp.add(n => n.isTop ? [jsxSublanguage] : undefined)]\n});\n/**\nLanguage provider for JSX + TypeScript.\n*/\nconst tsxLanguage = /*@__PURE__*/javascriptLanguage.configure({\n dialect: \"jsx ts\",\n props: [/*@__PURE__*/sublanguageProp.add(n => n.isTop ? [jsxSublanguage] : undefined)]\n}, \"typescript\");\nlet kwCompletion = (name) => ({ label: name, type: \"keyword\" });\nconst keywords = /*@__PURE__*/\"break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield\".split(\" \").map(kwCompletion);\nconst typescriptKeywords = /*@__PURE__*/keywords.concat(/*@__PURE__*/[\"declare\", \"implements\", \"private\", \"protected\", \"public\"].map(kwCompletion));\n/**\nJavaScript support. Includes [snippet](https://codemirror.net/6/docs/ref/#lang-javascript.snippets)\nand local variable completion.\n*/\nfunction javascript(config = {}) {\n let lang = config.jsx ? (config.typescript ? tsxLanguage : jsxLanguage)\n : config.typescript ? typescriptLanguage : javascriptLanguage;\n let completions = config.typescript ? typescriptSnippets.concat(typescriptKeywords) : snippets.concat(keywords);\n return new LanguageSupport(lang, [\n javascriptLanguage.data.of({\n autocomplete: ifNotIn(dontComplete, completeFromList(completions))\n }),\n javascriptLanguage.data.of({\n autocomplete: localCompletionSource\n }),\n config.jsx ? autoCloseTags : [],\n ]);\n}\nfunction findOpenTag(node) {\n for (;;) {\n if (node.name == \"JSXOpenTag\" || node.name == \"JSXSelfClosingTag\" || node.name == \"JSXFragmentTag\")\n return node;\n if (node.name == \"JSXEscape\" || !node.parent)\n return null;\n node = node.parent;\n }\n}\nfunction elementName(doc, tree, max = doc.length) {\n for (let ch = tree === null || tree === void 0 ? void 0 : tree.firstChild; ch; ch = ch.nextSibling) {\n if (ch.name == \"JSXIdentifier\" || ch.name == \"JSXBuiltin\" || ch.name == \"JSXNamespacedName\" ||\n ch.name == \"JSXMemberExpression\")\n return doc.sliceString(ch.from, Math.min(ch.to, max));\n }\n return \"\";\n}\nconst android = typeof navigator == \"object\" && /*@__PURE__*//Android\\b/.test(navigator.userAgent);\n/**\nExtension that will automatically insert JSX close tags when a `>` or\n`/` is typed.\n*/\nconst autoCloseTags = /*@__PURE__*/EditorView.inputHandler.of((view, from, to, text, defaultInsert) => {\n if ((android ? view.composing : view.compositionStarted) || view.state.readOnly ||\n from != to || (text != \">\" && text != \"/\") ||\n !javascriptLanguage.isActiveAt(view.state, from, -1))\n return false;\n let base = defaultInsert(), { state } = base;\n let closeTags = state.changeByRange(range => {\n var _a;\n let { head } = range, around = syntaxTree(state).resolveInner(head - 1, -1), name;\n if (around.name == \"JSXStartTag\")\n around = around.parent;\n if (state.doc.sliceString(head - 1, head) != text || around.name == \"JSXAttributeValue\" && around.to > head) ;\n else if (text == \">\" && around.name == \"JSXFragmentTag\") {\n return { range, changes: { from: head, insert: `</>` } };\n }\n else if (text == \"/\" && around.name == \"JSXStartCloseTag\") {\n let empty = around.parent, base = empty.parent;\n if (base && empty.from == head - 2 &&\n ((name = elementName(state.doc, base.firstChild, head)) || ((_a = base.firstChild) === null || _a === void 0 ? void 0 : _a.name) == \"JSXFragmentTag\")) {\n let insert = `${name}>`;\n return { range: EditorSelection.cursor(head + insert.length, -1), changes: { from: head, insert } };\n }\n }\n else if (text == \">\") {\n let openTag = findOpenTag(around);\n if (openTag && openTag.name == \"JSXOpenTag\" &&\n !/^\\/?>|^<\\//.test(state.doc.sliceString(head, head + 2)) &&\n (name = elementName(state.doc, openTag, head)))\n return { range, changes: { from: head, insert: `</${name}>` } };\n }\n return { range };\n });\n if (closeTags.changes.empty)\n return false;\n view.dispatch([\n base,\n state.update(closeTags, { userEvent: \"input.complete\", scrollIntoView: true })\n ]);\n return true;\n});\n\n/**\nConnects an [ESLint](https://eslint.org/) linter to CodeMirror's\n[lint](https://codemirror.net/6/docs/ref/#lint) integration. `eslint` should be an instance of the\n[`Linter`](https://eslint.org/docs/developer-guide/nodejs-api#linter)\nclass, and `config` an optional ESLint configuration. The return\nvalue of this function can be passed to [`linter`](https://codemirror.net/6/docs/ref/#lint.linter)\nto create a JavaScript linting extension.\n\nNote that ESLint targets node, and is tricky to run in the\nbrowser. The\n[eslint-linter-browserify](https://github.com/UziTech/eslint-linter-browserify)\npackage may help with that (see\n[example](https://github.com/UziTech/eslint-linter-browserify/blob/master/example/script.js)).\n*/\nfunction esLint(eslint, config) {\n if (!config) {\n config = {\n parserOptions: { ecmaVersion: 2019, sourceType: \"module\" },\n env: { browser: true, node: true, es6: true, es2015: true, es2017: true, es2020: true },\n rules: {}\n };\n eslint.getRules().forEach((desc, name) => {\n var _a;\n if ((_a = desc.meta.docs) === null || _a === void 0 ? void 0 : _a.recommended)\n config.rules[name] = 2;\n });\n }\n return (view) => {\n let { state } = view, found = [];\n for (let { from, to } of javascriptLanguage.findRegions(state)) {\n let fromLine = state.doc.lineAt(from), offset = { line: fromLine.number - 1, col: from - fromLine.from, pos: from };\n for (let d of eslint.verify(state.sliceDoc(from, to), config))\n found.push(translateDiagnostic(d, state.doc, offset));\n }\n return found;\n };\n}\nfunction mapPos(line, col, doc, offset) {\n return doc.line(line + offset.line).from + col + (line == 1 ? offset.col - 1 : -1);\n}\nfunction translateDiagnostic(input, doc, offset) {\n let start = mapPos(input.line, input.column, doc, offset);\n let result = {\n from: start,\n to: input.endLine != null && input.endColumn != 1 ? mapPos(input.endLine, input.endColumn, doc, offset) : start,\n message: input.message,\n source: input.ruleId ? \"eslint:\" + input.ruleId : \"eslint\",\n severity: input.severity == 1 ? \"warning\" : \"error\",\n };\n if (input.fix) {\n let { range, text } = input.fix, from = range[0] + offset.pos - start, to = range[1] + offset.pos - start;\n result.actions = [{\n name: \"fix\",\n apply(view, start) {\n view.dispatch({ changes: { from: start + from, to: start + to, insert: text }, scrollIntoView: true });\n }\n }];\n }\n return result;\n}\n\nexport { autoCloseTags, completionPath, esLint, javascript, javascriptLanguage, jsxLanguage, localCompletionSource, scopeCompletionSource, snippets, tsxLanguage, typescriptLanguage, typescriptSnippets };\n", "import { ExternalTokenizer, LRParser, LocalTokenGroup } from '@lezer/lr';\nimport { styleTags, tags } from '@lezer/highlight';\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst descendantOp = 122,\n Unit = 1,\n identifier = 123,\n callee = 124,\n VariableName = 2,\n queryIdentifier = 125,\n queryVariableName = 3,\n QueryCallee = 4;\n\n/* Hand-written tokenizers for CSS tokens that can't be\n expressed by Lezer's built-in tokenizer. */\n\nconst space = [9, 10, 11, 12, 13, 32, 133, 160, 5760, 8192, 8193, 8194, 8195, 8196, 8197,\n 8198, 8199, 8200, 8201, 8202, 8232, 8233, 8239, 8287, 12288];\nconst colon = 58, parenL = 40, underscore = 95, bracketL = 91, dash = 45, period = 46,\n hash = 35, percent = 37, ampersand = 38, backslash = 92, newline = 10, asterisk = 42;\n\nfunction isAlpha(ch) { return ch >= 65 && ch <= 90 || ch >= 97 && ch <= 122 || ch >= 161 }\n\nfunction isDigit(ch) { return ch >= 48 && ch <= 57 }\n\nfunction isHex(ch) { return isDigit(ch) || ch >= 97 && ch <= 102 || ch >= 65 && ch <= 70 }\n\nconst identifierTokens = (id, varName, callee) => (input, stack) => {\n for (let inside = false, dashes = 0, i = 0;; i++) {\n let {next} = input;\n if (isAlpha(next) || next == dash || next == underscore || (inside && isDigit(next))) {\n if (!inside && (next != dash || i > 0)) inside = true;\n if (dashes === i && next == dash) dashes++;\n input.advance();\n } else if (next == backslash && input.peek(1) != newline) {\n input.advance();\n if (isHex(input.next)) {\n do { input.advance(); } while (isHex(input.next))\n if (input.next == 32) input.advance();\n } else if (input.next > -1) {\n input.advance();\n }\n inside = true;\n } else {\n if (inside) input.acceptToken(\n dashes == 2 && stack.canShift(VariableName) ? varName : next == parenL ? callee : id\n );\n break\n }\n }\n};\n\nconst identifiers = new ExternalTokenizer(\n identifierTokens(identifier, VariableName, callee)\n);\nconst queryIdentifiers = new ExternalTokenizer(\n identifierTokens(queryIdentifier, queryVariableName, QueryCallee)\n);\n\nconst descendant = new ExternalTokenizer(input => {\n if (space.includes(input.peek(-1))) {\n let {next} = input;\n if (isAlpha(next) || next == underscore || next == hash || next == period ||\n next == asterisk || next == bracketL || next == colon && isAlpha(input.peek(1)) ||\n next == dash || next == ampersand)\n input.acceptToken(descendantOp);\n }\n});\n\nconst unitToken = new ExternalTokenizer(input => {\n if (!space.includes(input.peek(-1))) {\n let {next} = input;\n if (next == percent) { input.advance(); input.acceptToken(Unit); }\n if (isAlpha(next)) {\n do { input.advance(); } while (isAlpha(input.next) || isDigit(input.next))\n input.acceptToken(Unit);\n }\n }\n});\n\nconst cssHighlighting = styleTags({\n \"AtKeyword import charset namespace keyframes media supports\": tags.definitionKeyword,\n \"from to selector\": tags.keyword,\n NamespaceName: tags.namespace,\n KeyframeName: tags.labelName,\n KeyframeRangeName: tags.operatorKeyword,\n TagName: tags.tagName,\n ClassName: tags.className,\n PseudoClassName: tags.constant(tags.className),\n IdName: tags.labelName,\n \"FeatureName PropertyName\": tags.propertyName,\n AttributeName: tags.attributeName,\n NumberLiteral: tags.number,\n KeywordQuery: tags.keyword,\n UnaryQueryOp: tags.operatorKeyword,\n \"CallTag ValueName\": tags.atom,\n VariableName: tags.variableName,\n Callee: tags.operatorKeyword,\n Unit: tags.unit,\n \"UniversalSelector NestingSelector\": tags.definitionOperator,\n \"MatchOp CompareOp\": tags.compareOperator,\n \"ChildOp SiblingOp, LogicOp\": tags.logicOperator,\n BinOp: tags.arithmeticOperator,\n Important: tags.modifier,\n Comment: tags.blockComment,\n ColorLiteral: tags.color,\n \"ParenthesizedContent StringLiteral\": tags.string,\n \":\": tags.punctuation,\n \"PseudoOp #\": tags.derefOperator,\n \"; ,\": tags.separator,\n \"( )\": tags.paren,\n \"[ ]\": tags.squareBracket,\n \"{ }\": tags.brace\n});\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst spec_callee = {__proto__:null,lang:38, \"nth-child\":38, \"nth-last-child\":38, \"nth-of-type\":38, \"nth-last-of-type\":38, dir:38, \"host-context\":38, if:84, url:124, \"url-prefix\":124, domain:124, regexp:124};\nconst spec_queryIdentifier = {__proto__:null,or:98, and:98, not:106, only:106, layer:170};\nconst spec_QueryCallee = {__proto__:null,selector:112, layer:166};\nconst spec_AtKeyword = {__proto__:null,\"@import\":162, \"@media\":174, \"@charset\":178, \"@namespace\":182, \"@keyframes\":188, \"@supports\":200, \"@scope\":204};\nconst spec_identifier = {__proto__:null,to:207};\nconst parser = LRParser.deserialize({\n version: 14,\n states: \"EbQYQdOOO#qQdOOP#xO`OOOOQP'#Cf'#CfOOQP'#Ce'#CeO#}QdO'#ChO$nQaO'#CcO$xQdO'#CkO%TQdO'#DpO%YQdO'#DrO%_QdO'#DuO%_QdO'#DxOOQP'#FV'#FVO&eQhO'#EhOOQS'#FU'#FUOOQS'#Ek'#EkQYQdOOO&lQdO'#EOO&PQhO'#EUO&lQdO'#EWO'aQdO'#EYO'lQdO'#E]O'tQhO'#EcO(VQdO'#EeO(bQaO'#CfO)VQ`O'#D{O)[Q`O'#F`O)gQdO'#F`QOQ`OOP)qO&jO'#CaPOOO)C@t)C@tOOQP'#Cj'#CjOOQP,59S,59SO#}QdO,59SO)|QdO,59VO%TQdO,5:[O%YQdO,5:^O%_QdO,5:aO%_QdO,5:cO%_QdO,5:dO%_QdO'#ErO*XQ`O,58}O*aQdO'#DzOOQS,58},58}OOQP'#Cn'#CnOOQO'#Dn'#DnOOQP,59V,59VO*hQ`O,59VO*mQ`O,59VOOQP'#Dq'#DqOOQP,5:[,5:[OOQO'#Ds'#DsO*rQpO,5:^O+]QaO,5:aO+sQaO,5:dOOQW'#DZ'#DZO,ZQhO'#DdO,xQhO'#FaO'tQhO'#DbO-WQ`O'#DhOOQW'#F['#F[O-]Q`O,5;SO-eQ`O'#DeOOQS-E8i-E8iOOQ['#Cs'#CsO-jQdO'#CtO.QQdO'#CzO.hQdO'#C}O/OQ!pO'#DPO1RQ!jO,5:jOOQO'#DU'#DUO*mQ`O'#DTO1cQ!nO'#FXO3`Q`O'#DVO3eQ`O'#DkOOQ['#FX'#FXO-`Q`O,5:pO3jQ!bO,5:rOOQS'#E['#E[O3rQ`O,5:tO3wQdO,5:tOOQO'#E_'#E_O4PQ`O,5:wO4UQhO,5:}O%_QdO'#DgOOQS,5;P,5;PO-eQ`O,5;PO4^QdO,5;PO4fQdO,5:gO4vQdO'#EtO5TQ`O,5;zO5TQ`O,5;zPOOO'#Ej'#EjP5`O&jO,58{POOO,58{,58{OOQP1G.n1G.nOOQP1G.q1G.qO*hQ`O1G.qO*mQ`O1G.qOOQP1G/v1G/vO5kQpO1G/xO5sQaO1G/{O6ZQaO1G/}O6qQaO1G0OO7XQaO,5;^OOQO-E8p-E8pOOQS1G.i1G.iO7cQ`O,5:fO7hQdO'#DoO7oQdO'#CrOOQP1G/x1G/xO&lQdO1G/xO7vQ!jO'#DZO8UQ!bO,59vO8^QhO,5:OOOQO'#F]'#F]O8XQ!bO,59zO'tQhO,59xO8fQhO'#EvO8sQ`O,5;{O9OQhO,59|O9uQhO'#DiOOQW,5:S,5:SOOQS1G0n1G0nOOQW,5:P,5:PO9|Q!fO'#FYOOQS'#FY'#FYOOQS'#Em'#EmO;^QdO,59`OOQ[,59`,59`O;tQdO,59fOOQ[,59f,59fO<[QdO,59iOOQ[,59i,59iOOQ[,59k,59kO&lQdO,59mO<rQhO'#EQOOQW'#EQ'#EQO=WQ`O1G0UO1[QhO1G0UOOQ[,59o,59oO'tQhO'#DXOOQ[,59q,59qO=]Q#tO,5:VOOQS1G0[1G0[OOQS1G0^1G0^OOQS1G0`1G0`O=hQ`O1G0`O=mQdO'#E`OOQS1G0c1G0cOOQS1G0i1G0iO=xQaO,5:RO-`Q`O1G0kOOQS1G0k1G0kO-eQ`O1G0kO>PQ!fO1G0ROOQO1G0R1G0ROOQO,5;`,5;`O>gQdO,5;`OOQO-E8r-E8rO>tQ`O1G1fPOOO-E8h-E8hPOOO1G.g1G.gOOQP7+$]7+$]OOQP7+%d7+%dO&lQdO7+%dOOQS1G0Q1G0QO?PQaO'#F_O?ZQ`O,5:ZO?`Q!fO'#ElO@^QdO'#FWO@hQ`O,59^O@mQ!bO7+%dO&lQdO1G/bO@uQhO1G/fOOQW1G/j1G/jOOQW1G/d1G/dOAWQhO,5;bOOQO-E8t-E8tOAfQhO'#DZOAtQhO'#F^OBPQ`O'#F^OBUQ`O,5:TOOQS-E8k-E8kOOQ[1G.z1G.zOOQ[1G/Q1G/QOOQ[1G/T1G/TOOQ[1G/X1G/XOBZQdO,5:lOOQS7+%p7+%pOB`Q`O7+%pOBeQhO'#DYOBmQ`O,59sO'tQhO,59sOOQ[1G/q1G/qOBuQ`O1G/qOOQS7+%z7+%zOBzQbO'#DPOOQO'#Eb'#EbOCYQ`O'#EaOOQO'#Ea'#EaOCeQ`O'#EwOCmQdO,5:zOOQS,5:z,5:zOOQ[1G/m1G/mOOQS7+&V7+&VO-`Q`O7+&VOCxQ!fO'#EsO&lQdO'#EsOEPQdO7+%mOOQO7+%m7+%mOOQO1G0z1G0zOEdQ!bO<<IOOElQdO'#EqOEvQ`O,5;yOOQP1G/u1G/uOOQS-E8j-E8jOFOQdO'#EpOFYQ`O,5;rOOQ]1G.x1G.xOOQP<<IO<<IOOFbQdO7+$|OOQO'#D]'#D]OFiQ!bO7+%QOFqQhO'#EoOF{Q`O,5;xO&lQdO,5;xOOQW1G/o1G/oOOQO'#ES'#ESOGTQ`O1G0WOOQS<<I[<<I[O&lQdO,59tOGnQhO1G/_OOQ[1G/_1G/_OGuQ`O1G/_OOQW-E8l-E8lOOQ[7+%]7+%]OOQO,5:{,5:{O=pQdO'#ExOCeQ`O,5;cOOQS,5;c,5;cOOQS-E8u-E8uOOQS1G0f1G0fOOQS<<Iq<<IqOG}Q!fO,5;_OOQS-E8q-E8qOOQO<<IX<<IXOOQPAN>jAN>jOIUQaO,5;]OOQO-E8o-E8oOI`QdO,5;[OOQO-E8n-E8nOOQW<<Hh<<HhOOQW<<Hl<<HlOIjQhO<<HlOI{QhO,5;ZOJWQ`O,5;ZOOQO-E8m-E8mOJ]QdO1G1dOBZQdO'#EuOJgQ`O7+%rOOQW7+%r7+%rOJoQ!bO1G/`OOQ[7+$y7+$yOJzQhO7+$yPKRQ`O'#EnOOQO,5;d,5;dOOQO-E8v-E8vOOQS1G0}1G0}OKWQ`OAN>WO&lQdO1G0uOK]Q`O7+'OOOQO,5;a,5;aOOQO-E8s-E8sOOQW<<I^<<I^OOQ[<<He<<HePOQW,5;Y,5;YOOQWG23rG23rOKeQdO7+&a\",\n stateData: \"Kx~O#sOS#tQQ~OW[OZ[O]TO`VOaVOi]OjWOmXO!jYO!mZO!saO!ybO!{cO!}dO#QeO#WfO#YgO#oRO~OQiOW[OZ[O]TO`VOaVOi]OjWOmXO!jYO!mZO!saO!ybO!{cO!}dO#QeO#WfO#YgO#ohO~O#m$SP~P!dO#tmO~O#ooO~O]qO`rOarOjsOmtO!juO!mwO#nvO~OpzO!^xO~P$SOc!QO#o|O#p}O~O#o!RO~O#o!TO~OW[OZ[O]TO`VOaVOjWOmXO!jYO!mZO#oRO~OS!]Oe!YO!V![O!Y!`O#q!XOp$TP~Ok$TP~P&POQ!jOe!cOm!dOp!eOr!mOt!mOz!kO!`!lO#o!bO#p!hO#}!fO~Ot!qO!`!lO#o!pO~Ot!sO#o!sO~OS!]Oe!YO!V![O!Y!`O#q!XO~Oe!vOpzO#Z!xO~O]YX`YX`!pXaYXjYXmYXpYX!^YX!jYX!mYX#nYX~O`!zO~Ok!{O#m$SXo$SX~O#m$SXo$SX~P!dO#u#OO#v#OO#w#QO~Oc#UO#o|O#p}O~OpzO!^xO~Oo$SP~P!dOe#`O~Oe#aO~Ol#bO!h#cO~O]qO`rOarOjsOmtO~Op!ia!^!ia!j!ia!m!ia#n!iad!ia~P*zOp!la!^!la!j!la!m!la#n!lad!la~P*zOR#gOS!]Oe!YOr#gOt#gO!V![O!Y!`O#q#dO#}!fO~O!R#iO!^#jOk$TXp$TX~Oe#mO~Ok#oOpzO~Oe!vO~O]#rO`#rOd#uOi#rOj#rOk#rO~P&lO]#rO`#rOi#rOj#rOk#rOl#wO~P&lO]#rO`#rOi#rOj#rOk#rOo#yO~P&lOP#zOSsXesXksXvsX!VsX!YsX!usX!wsX#qsX!TsXQsX]sX`sXdsXisXjsXmsXpsXrsXtsXzsX!`sX#osX#psX#}sXlsXosX!^sX!qsX#msX~Ov#{O!u#|O!w#}Ok$TP~P'tOe#aOS#{Xk#{Xv#{X!V#{X!Y#{X!u#{X!w#{X#q#{XQ#{X]#{X`#{Xd#{Xi#{Xj#{Xm#{Xp#{Xr#{Xt#{Xz#{X!`#{X#o#{X#p#{X#}#{Xl#{Xo#{X!^#{X!q#{X#m#{X~Oe$RO~Oe$TO~Ok$VOv#{O~Ok$WO~Ot$XO!`!lO~Op$YO~OpzO!R#iO~OpzO#Z$`O~O!q$bOk!oa#m!oao!oa~P&lOk#hX#m#hXo#hX~P!dOk!{O#m$Sao$Sa~O#u#OO#v#OO#w$hO~Ol$jO!h$kO~Op!ii!^!ii!j!ii!m!ii#n!iid!ii~P*zOp!ki!^!ki!j!ki!m!ki#n!kid!ki~P*zOp!li!^!li!j!li!m!li#n!lid!li~P*zOp#fa!^#fa~P$SOo$lO~Od$RP~P%_Od#zP~P&lO`!PXd}X!R}X!T!PX~O`$sO!T$tO~Od$uO!R#iO~Ok#jXp#jX!^#jX~P'tO!^#jOk$Tap$Ta~O!R#iOk!Uap!Ua!^!Uad!Ua`!Ua~OS!]Oe!YO!V![O!Y!`O#q$yO~Od$QP~P9dOv#{OQ#|X]#|X`#|Xd#|Xe#|Xi#|Xj#|Xk#|Xm#|Xp#|Xr#|Xt#|Xz#|X!`#|X#o#|X#p#|X#}#|Xl#|Xo#|X~O]#rO`#rOd%OOi#rOj#rOk#rO~P&lO]#rO`#rOi#rOj#rOk#rOl%PO~P&lO]#rO`#rOi#rOj#rOk#rOo%QO~P&lOe%SOS!tXk!tX!V!tX!Y!tX#q!tX~Ok%TO~Od%YOt%ZO!a%ZO~Ok%[O~Oo%cO#o%^O#}%]O~Od%dO~P$SOv#{O!^%hO!q%jOk!oi#m!oio!oi~P&lOk#ha#m#hao#ha~P!dOk!{O#m$Sio$Si~O!^%mOd$RX~P$SOd%oO~Ov#{OQ#`Xd#`Xe#`Xm#`Xp#`Xr#`Xt#`Xz#`X!^#`X!`#`X#o#`X#p#`X#}#`X~O!^%qOd#zX~P&lOd%sO~Ol%tOv#{O~OR#gOr#gOt#gO#q%vO#}!fO~O!R#iOk#jap#ja!^#ja~O`!PXd}X!R}X!^}X~O!R#iO!^%xOd$QX~O`%zO~Od%{O~O#o%|O~Ok&OO~O`&PO!R#iO~Od&ROk&QO~Od&UO~OP#zOpsX!^sXdsX~O#}%]Op#TX!^#TX~OpzO!^&WO~Oo&[O#o%^O#}%]O~Ov#{OQ#gXe#gXk#gXm#gXp#gXr#gXt#gXz#gX!^#gX!`#gX!q#gX#m#gX#o#gX#p#gX#}#gXo#gX~O!^%hO!q&`Ok!oq#m!oqo!oq~P&lOl&aOv#{O~Od#eX!^#eX~P%_O!^%mOd$Ra~Od#dX!^#dX~P&lO!^%qOd#za~Od&fO~P&lOd&gO!T&hO~Od#cX!^#cX~P9dO!^%xOd$Qa~O]&mOd&oO~OS#bae#ba!V#ba!Y#ba#q#ba~Od&qO~PG]Od&qOk&rO~Ov#{OQ#gae#gak#gam#gap#gar#gat#gaz#ga!^#ga!`#ga!q#ga#m#ga#o#ga#p#ga#}#gao#ga~Od#ea!^#ea~P$SOd#da!^#da~P&lOR#gOr#gOt#gO#q%vO#}%]O~O!R#iOd#ca!^#ca~O`&xO~O!^%xOd$Qi~P&lO]&mOd&|O~Ov#{Od|ik|i~Od&}O~PG]Ok'OO~Od'PO~O!^%xOd$Qq~Od#cq!^#cq~P&lO#s!a#t#}]#}v!m~\",\n goto: \"2h$UPPPPP$VP$YP$c$uP$cP%X$cPP%_PPP%e%o%oPPPPP%oPP%oP&]P%oP%o'W%oP't'w'}'}(^'}P'}P'}P'}'}P(m'}(yP(|PP)p)v$c)|$c*SP$cP$c$cP*Y*{+YP$YP+aP+dP$YP$YP$YP+j$YP+m+p+s+z$YP$YPP$YP,P,V,f,|-[-b-l-r-x.O.U.`.f.l.rPPPPPPPPPPP.x/R/w/z0|P1U1u2O2R2U2[RnQ_^OP`kz!{$dq[OPYZ`kuvwxz!v!{#`$d%mqSOPYZ`kuvwxz!v!{#`$d%mQpTR#RqQ!OVR#SrQ#S!QS$Q!i!jR$i#U!V!mac!c!d!e!z#a#c#t#v#x#{$a$k$p$s%h%i%q%u%z&P&d&l&x'Q!U!mac!c!d!e!z#a#c#t#v#x#{$a$k$p$s%h%i%q%u%z&P&d&l&x'QU#g!Y$t&hU%`$Y%b&WR&V%_!V!iac!c!d!e!z#a#c#t#v#x#{$a$k$p$s%h%i%q%u%z&P&d&l&x'QR$S!kQ%W$RR&S%Xk!^]bf!Y![!g#i#j#m$P$R%X%xQ#e!YQ${#mQ%w$tQ&j%xR&w&hQ!ygQ#p!`Q$^!xR%f$`R#n!]!U!mac!c!d!e!z#a#c#t#v#x#{$a$k$p$s%h%i%q%u%z&P&d&l&x'QQ!qdR$X!rQ!PVR#TrQ#S!PR$i#TQ!SWR#VsQ!UXR#WtQ{UQ!wgQ#^yQ#o!_Q$U!nQ$[!uQ$_!yQ%e$^Q&Y%aQ&]%fR&v&XSjPzQ!}kQ$c!{R%k$dZiPkz!{$dR$P!gQ%}%SR&z&mR!rdR!teR$Z!tS%a$Y%bR&t&WV%_$Y%b&WQ#PmR$g#PQ`OSkPzU!a`k$dR$d!{Q$p#aY%p$p%u&d&l'QQ%u$sQ&d%qQ&l%zR'Q&xQ#t!cQ#v!dQ#x!eV$}#t#v#xQ%X$RR&T%XQ%y$zS&k%y&yR&y&lQ%r$pR&e%rQ%n$mR&c%nQyUR#]yQ%i$aR&_%iQ!|jS$e!|$fR$f!}Q&n%}R&{&nQ#k!ZR$x#kQ%b$YR&Z%bQ&X%aR&u&X__OP`kz!{$d^UOP`kz!{$dQ!VYQ!WZQ#XuQ#YvQ#ZwQ#[xQ$]!vQ$m#`R&b%mR$q#aQ!gaQ!oc[#q!c!d!e#t#v#xQ$a!zd$o#a$p$s%q%u%z&d&l&x'QQ$r#cQ%R#{S%g$a%iQ%l$kQ&^%hR&p&P]#s!c!d!e#t#v#xW!Z]b!g$PQ!ufQ#f!YQ#l![Q$v#iQ$w#jQ$z#mS%V$R%XR&i%xQ#h!YQ%w$tR&w&hR$|#mR$n#`QlPR#_zQ!_]Q!nbQ$O!gR%U$P\",\n nodeNames: \"\u26A0 Unit VariableName VariableName QueryCallee Comment StyleSheet RuleSet UniversalSelector TagSelector TagName NestingSelector ClassSelector . ClassName PseudoClassSelector : :: PseudoClassName PseudoClassName ) ( ArgList ValueName ParenthesizedValue AtKeyword # ; ] [ BracketedValue } { BracedValue ColorLiteral NumberLiteral StringLiteral BinaryExpression BinOp CallExpression Callee IfExpression if ArgList IfBranch KeywordQuery FeatureQuery FeatureName BinaryQuery LogicOp ComparisonQuery CompareOp UnaryQuery UnaryQueryOp ParenthesizedQuery SelectorQuery selector ParenthesizedSelector CallQuery ArgList , CallLiteral CallTag ParenthesizedContent PseudoClassName ArgList IdSelector IdName AttributeSelector AttributeName MatchOp ChildSelector ChildOp DescendantSelector SiblingSelector SiblingOp Block Declaration PropertyName Important ImportStatement import Layer layer LayerName layer MediaStatement media CharsetStatement charset NamespaceStatement namespace NamespaceName KeyframesStatement keyframes KeyframeName KeyframeList KeyframeSelector KeyframeRangeName SupportsStatement supports ScopeStatement scope to AtRule Styles\",\n maxTerm: 143,\n nodeProps: [\n [\"isolate\", -2,5,36,\"\"],\n [\"openedBy\", 20,\"(\",28,\"[\",31,\"{\"],\n [\"closedBy\", 21,\")\",29,\"]\",32,\"}\"]\n ],\n propSources: [cssHighlighting],\n skippedNodes: [0,5,106],\n repeatNodeCount: 15,\n tokenData: \"JQ~R!YOX$qX^%i^p$qpq%iqr({rs-ust/itu6Wuv$qvw7Qwx7cxy9Qyz9cz{9h{|:R|}>t}!O?V!O!P?t!P!Q@]!Q![AU![!]BP!]!^B{!^!_C^!_!`DY!`!aDm!a!b$q!b!cEn!c!}$q!}#OG{#O#P$q#P#QH^#Q#R6W#R#o$q#o#pHo#p#q6W#q#rIQ#r#sIc#s#y$q#y#z%i#z$f$q$f$g%i$g#BY$q#BY#BZ%i#BZ$IS$q$IS$I_%i$I_$I|$q$I|$JO%i$JO$JT$q$JT$JU%i$JU$KV$q$KV$KW%i$KW&FU$q&FU&FV%i&FV;'S$q;'S;=`Iz<%lO$q`$tSOy%Qz;'S%Q;'S;=`%c<%lO%Q`%VS!a`Oy%Qz;'S%Q;'S;=`%c<%lO%Q`%fP;=`<%l%Q~%nh#s~OX%QX^'Y^p%Qpq'Yqy%Qz#y%Q#y#z'Y#z$f%Q$f$g'Y$g#BY%Q#BY#BZ'Y#BZ$IS%Q$IS$I_'Y$I_$I|%Q$I|$JO'Y$JO$JT%Q$JT$JU'Y$JU$KV%Q$KV$KW'Y$KW&FU%Q&FU&FV'Y&FV;'S%Q;'S;=`%c<%lO%Q~'ah#s~!a`OX%QX^'Y^p%Qpq'Yqy%Qz#y%Q#y#z'Y#z$f%Q$f$g'Y$g#BY%Q#BY#BZ'Y#BZ$IS%Q$IS$I_'Y$I_$I|%Q$I|$JO'Y$JO$JT%Q$JT$JU'Y$JU$KV%Q$KV$KW'Y$KW&FU%Q&FU&FV'Y&FV;'S%Q;'S;=`%c<%lO%Qj)OUOy%Qz#]%Q#]#^)b#^;'S%Q;'S;=`%c<%lO%Qj)gU!a`Oy%Qz#a%Q#a#b)y#b;'S%Q;'S;=`%c<%lO%Qj*OU!a`Oy%Qz#d%Q#d#e*b#e;'S%Q;'S;=`%c<%lO%Qj*gU!a`Oy%Qz#c%Q#c#d*y#d;'S%Q;'S;=`%c<%lO%Qj+OU!a`Oy%Qz#f%Q#f#g+b#g;'S%Q;'S;=`%c<%lO%Qj+gU!a`Oy%Qz#h%Q#h#i+y#i;'S%Q;'S;=`%c<%lO%Qj,OU!a`Oy%Qz#T%Q#T#U,b#U;'S%Q;'S;=`%c<%lO%Qj,gU!a`Oy%Qz#b%Q#b#c,y#c;'S%Q;'S;=`%c<%lO%Qj-OU!a`Oy%Qz#h%Q#h#i-b#i;'S%Q;'S;=`%c<%lO%Qj-iS!qY!a`Oy%Qz;'S%Q;'S;=`%c<%lO%Q~-xWOY-uZr-urs.bs#O-u#O#P.g#P;'S-u;'S;=`/c<%lO-u~.gOt~~.jRO;'S-u;'S;=`.s;=`O-u~.vXOY-uZr-urs.bs#O-u#O#P.g#P;'S-u;'S;=`/c;=`<%l-u<%lO-u~/fP;=`<%l-uj/nYjYOy%Qz!Q%Q!Q![0^![!c%Q!c!i0^!i#T%Q#T#Z0^#Z;'S%Q;'S;=`%c<%lO%Qj0cY!a`Oy%Qz!Q%Q!Q![1R![!c%Q!c!i1R!i#T%Q#T#Z1R#Z;'S%Q;'S;=`%c<%lO%Qj1WY!a`Oy%Qz!Q%Q!Q![1v![!c%Q!c!i1v!i#T%Q#T#Z1v#Z;'S%Q;'S;=`%c<%lO%Qj1}YrY!a`Oy%Qz!Q%Q!Q![2m![!c%Q!c!i2m!i#T%Q#T#Z2m#Z;'S%Q;'S;=`%c<%lO%Qj2tYrY!a`Oy%Qz!Q%Q!Q![3d![!c%Q!c!i3d!i#T%Q#T#Z3d#Z;'S%Q;'S;=`%c<%lO%Qj3iY!a`Oy%Qz!Q%Q!Q![4X![!c%Q!c!i4X!i#T%Q#T#Z4X#Z;'S%Q;'S;=`%c<%lO%Qj4`YrY!a`Oy%Qz!Q%Q!Q![5O![!c%Q!c!i5O!i#T%Q#T#Z5O#Z;'S%Q;'S;=`%c<%lO%Qj5TY!a`Oy%Qz!Q%Q!Q![5s![!c%Q!c!i5s!i#T%Q#T#Z5s#Z;'S%Q;'S;=`%c<%lO%Qj5zSrY!a`Oy%Qz;'S%Q;'S;=`%c<%lO%Qd6ZUOy%Qz!_%Q!_!`6m!`;'S%Q;'S;=`%c<%lO%Qd6tS!hS!a`Oy%Qz;'S%Q;'S;=`%c<%lO%Qb7VSZQOy%Qz;'S%Q;'S;=`%c<%lO%Q~7fWOY7cZw7cwx.bx#O7c#O#P8O#P;'S7c;'S;=`8z<%lO7c~8RRO;'S7c;'S;=`8[;=`O7c~8_XOY7cZw7cwx.bx#O7c#O#P8O#P;'S7c;'S;=`8z;=`<%l7c<%lO7c~8}P;=`<%l7cj9VSeYOy%Qz;'S%Q;'S;=`%c<%lO%Q~9hOd~n9oUWQvWOy%Qz!_%Q!_!`6m!`;'S%Q;'S;=`%c<%lO%Qj:YWvW!mQOy%Qz!O%Q!O!P:r!P!Q%Q!Q![=w![;'S%Q;'S;=`%c<%lO%Qj:wU!a`Oy%Qz!Q%Q!Q![;Z![;'S%Q;'S;=`%c<%lO%Qj;bY!a`#}YOy%Qz!Q%Q!Q![;Z![!g%Q!g!h<Q!h#X%Q#X#Y<Q#Y;'S%Q;'S;=`%c<%lO%Qj<VY!a`Oy%Qz{%Q{|<u|}%Q}!O<u!O!Q%Q!Q![=^![;'S%Q;'S;=`%c<%lO%Qj<zU!a`Oy%Qz!Q%Q!Q![=^![;'S%Q;'S;=`%c<%lO%Qj=eU!a`#}YOy%Qz!Q%Q!Q![=^![;'S%Q;'S;=`%c<%lO%Qj>O[!a`#}YOy%Qz!O%Q!O!P;Z!P!Q%Q!Q![=w![!g%Q!g!h<Q!h#X%Q#X#Y<Q#Y;'S%Q;'S;=`%c<%lO%Qj>yS!^YOy%Qz;'S%Q;'S;=`%c<%lO%Qj?[WvWOy%Qz!O%Q!O!P:r!P!Q%Q!Q![=w![;'S%Q;'S;=`%c<%lO%Qj?yU]YOy%Qz!Q%Q!Q![;Z![;'S%Q;'S;=`%c<%lO%Q~@bTvWOy%Qz{@q{;'S%Q;'S;=`%c<%lO%Q~@xS!a`#t~Oy%Qz;'S%Q;'S;=`%c<%lO%QjAZ[#}YOy%Qz!O%Q!O!P;Z!P!Q%Q!Q![=w![!g%Q!g!h<Q!h#X%Q#X#Y<Q#Y;'S%Q;'S;=`%c<%lO%QjBUU`YOy%Qz![%Q![!]Bh!];'S%Q;'S;=`%c<%lO%QbBoSaQ!a`Oy%Qz;'S%Q;'S;=`%c<%lO%QjCQSkYOy%Qz;'S%Q;'S;=`%c<%lO%QhCcU!TWOy%Qz!_%Q!_!`Cu!`;'S%Q;'S;=`%c<%lO%QhC|S!TW!a`Oy%Qz;'S%Q;'S;=`%c<%lO%QlDaS!TW!hSOy%Qz;'S%Q;'S;=`%c<%lO%QjDtV!jQ!TWOy%Qz!_%Q!_!`Cu!`!aEZ!a;'S%Q;'S;=`%c<%lO%QbEbS!jQ!a`Oy%Qz;'S%Q;'S;=`%c<%lO%QjEqYOy%Qz}%Q}!OFa!O!c%Q!c!}GO!}#T%Q#T#oGO#o;'S%Q;'S;=`%c<%lO%QjFfW!a`Oy%Qz!c%Q!c!}GO!}#T%Q#T#oGO#o;'S%Q;'S;=`%c<%lO%QjGV[iY!a`Oy%Qz}%Q}!OGO!O!Q%Q!Q![GO![!c%Q!c!}GO!}#T%Q#T#oGO#o;'S%Q;'S;=`%c<%lO%QjHQSmYOy%Qz;'S%Q;'S;=`%c<%lO%QnHcSl^Oy%Qz;'S%Q;'S;=`%c<%lO%QjHtSpYOy%Qz;'S%Q;'S;=`%c<%lO%QjIVSoYOy%Qz;'S%Q;'S;=`%c<%lO%QfIhU!mQOy%Qz!_%Q!_!`6m!`;'S%Q;'S;=`%c<%lO%Q`I}P;=`<%l$q\",\n tokenizers: [descendant, unitToken, identifiers, queryIdentifiers, 1, 2, 3, 4, new LocalTokenGroup(\"m~RRYZ[z{a~~g~aO#v~~dP!P!Qg~lO#w~~\", 28, 129)],\n topRules: {\"StyleSheet\":[0,6],\"Styles\":[1,105]},\n specialized: [{term: 124, get: (value) => spec_callee[value] || -1},{term: 125, get: (value) => spec_queryIdentifier[value] || -1},{term: 4, get: (value) => spec_QueryCallee[value] || -1},{term: 25, get: (value) => spec_AtKeyword[value] || -1},{term: 123, get: (value) => spec_identifier[value] || -1}],\n tokenPrec: 1963\n});\n\nexport { parser };\n", "import { parser } from '@lezer/css';\nimport { syntaxTree, LRLanguage, indentNodeProp, continuedIndent, foldNodeProp, foldInside, LanguageSupport } from '@codemirror/language';\nimport { NodeWeakMap, IterMode } from '@lezer/common';\n\nlet _properties = null;\nfunction properties() {\n if (!_properties && typeof document == \"object\" && document.body) {\n let { style } = document.body, names = [], seen = new Set;\n for (let prop in style)\n if (prop != \"cssText\" && prop != \"cssFloat\") {\n if (typeof style[prop] == \"string\") {\n if (/[A-Z]/.test(prop))\n prop = prop.replace(/[A-Z]/g, ch => \"-\" + ch.toLowerCase());\n if (!seen.has(prop)) {\n names.push(prop);\n seen.add(prop);\n }\n }\n }\n _properties = names.sort().map(name => ({ type: \"property\", label: name, apply: name + \": \" }));\n }\n return _properties || [];\n}\nconst pseudoClasses = /*@__PURE__*/[\n \"active\", \"after\", \"any-link\", \"autofill\", \"backdrop\", \"before\",\n \"checked\", \"cue\", \"default\", \"defined\", \"disabled\", \"empty\",\n \"enabled\", \"file-selector-button\", \"first\", \"first-child\",\n \"first-letter\", \"first-line\", \"first-of-type\", \"focus\",\n \"focus-visible\", \"focus-within\", \"fullscreen\", \"has\", \"host\",\n \"host-context\", \"hover\", \"in-range\", \"indeterminate\", \"invalid\",\n \"is\", \"lang\", \"last-child\", \"last-of-type\", \"left\", \"link\", \"marker\",\n \"modal\", \"not\", \"nth-child\", \"nth-last-child\", \"nth-last-of-type\",\n \"nth-of-type\", \"only-child\", \"only-of-type\", \"optional\", \"out-of-range\",\n \"part\", \"placeholder\", \"placeholder-shown\", \"read-only\", \"read-write\",\n \"required\", \"right\", \"root\", \"scope\", \"selection\", \"slotted\", \"target\",\n \"target-text\", \"valid\", \"visited\", \"where\"\n].map(name => ({ type: \"class\", label: name }));\nconst values = /*@__PURE__*/[\n \"above\", \"absolute\", \"activeborder\", \"additive\", \"activecaption\", \"after-white-space\",\n \"ahead\", \"alias\", \"all\", \"all-scroll\", \"alphabetic\", \"alternate\", \"always\",\n \"antialiased\", \"appworkspace\", \"asterisks\", \"attr\", \"auto\", \"auto-flow\", \"avoid\", \"avoid-column\",\n \"avoid-page\", \"avoid-region\", \"axis-pan\", \"background\", \"backwards\", \"baseline\", \"below\",\n \"bidi-override\", \"blink\", \"block\", \"block-axis\", \"bold\", \"bolder\", \"border\", \"border-box\",\n \"both\", \"bottom\", \"break\", \"break-all\", \"break-word\", \"bullets\", \"button\", \"button-bevel\",\n \"buttonface\", \"buttonhighlight\", \"buttonshadow\", \"buttontext\", \"calc\", \"capitalize\",\n \"caps-lock-indicator\", \"caption\", \"captiontext\", \"caret\", \"cell\", \"center\", \"checkbox\", \"circle\",\n \"cjk-decimal\", \"clear\", \"clip\", \"close-quote\", \"col-resize\", \"collapse\", \"color\", \"color-burn\",\n \"color-dodge\", \"column\", \"column-reverse\", \"compact\", \"condensed\", \"contain\", \"content\",\n \"contents\", \"content-box\", \"context-menu\", \"continuous\", \"copy\", \"counter\", \"counters\", \"cover\",\n \"crop\", \"cross\", \"crosshair\", \"currentcolor\", \"cursive\", \"cyclic\", \"darken\", \"dashed\", \"decimal\",\n \"decimal-leading-zero\", \"default\", \"default-button\", \"dense\", \"destination-atop\", \"destination-in\",\n \"destination-out\", \"destination-over\", \"difference\", \"disc\", \"discard\", \"disclosure-closed\",\n \"disclosure-open\", \"document\", \"dot-dash\", \"dot-dot-dash\", \"dotted\", \"double\", \"down\", \"e-resize\",\n \"ease\", \"ease-in\", \"ease-in-out\", \"ease-out\", \"element\", \"ellipse\", \"ellipsis\", \"embed\", \"end\",\n \"ethiopic-abegede-gez\", \"ethiopic-halehame-aa-er\", \"ethiopic-halehame-gez\", \"ew-resize\", \"exclusion\",\n \"expanded\", \"extends\", \"extra-condensed\", \"extra-expanded\", \"fantasy\", \"fast\", \"fill\", \"fill-box\",\n \"fixed\", \"flat\", \"flex\", \"flex-end\", \"flex-start\", \"footnotes\", \"forwards\", \"from\",\n \"geometricPrecision\", \"graytext\", \"grid\", \"groove\", \"hand\", \"hard-light\", \"help\", \"hidden\", \"hide\",\n \"higher\", \"highlight\", \"highlighttext\", \"horizontal\", \"hsl\", \"hsla\", \"hue\", \"icon\", \"ignore\",\n \"inactiveborder\", \"inactivecaption\", \"inactivecaptiontext\", \"infinite\", \"infobackground\", \"infotext\",\n \"inherit\", \"initial\", \"inline\", \"inline-axis\", \"inline-block\", \"inline-flex\", \"inline-grid\",\n \"inline-table\", \"inset\", \"inside\", \"intrinsic\", \"invert\", \"italic\", \"justify\", \"keep-all\",\n \"landscape\", \"large\", \"larger\", \"left\", \"level\", \"lighter\", \"lighten\", \"line-through\", \"linear\",\n \"linear-gradient\", \"lines\", \"list-item\", \"listbox\", \"listitem\", \"local\", \"logical\", \"loud\", \"lower\",\n \"lower-hexadecimal\", \"lower-latin\", \"lower-norwegian\", \"lowercase\", \"ltr\", \"luminosity\", \"manipulation\",\n \"match\", \"matrix\", \"matrix3d\", \"medium\", \"menu\", \"menutext\", \"message-box\", \"middle\", \"min-intrinsic\",\n \"mix\", \"monospace\", \"move\", \"multiple\", \"multiple_mask_images\", \"multiply\", \"n-resize\", \"narrower\",\n \"ne-resize\", \"nesw-resize\", \"no-close-quote\", \"no-drop\", \"no-open-quote\", \"no-repeat\", \"none\",\n \"normal\", \"not-allowed\", \"nowrap\", \"ns-resize\", \"numbers\", \"numeric\", \"nw-resize\", \"nwse-resize\",\n \"oblique\", \"opacity\", \"open-quote\", \"optimizeLegibility\", \"optimizeSpeed\", \"outset\", \"outside\",\n \"outside-shape\", \"overlay\", \"overline\", \"padding\", \"padding-box\", \"painted\", \"page\", \"paused\",\n \"perspective\", \"pinch-zoom\", \"plus-darker\", \"plus-lighter\", \"pointer\", \"polygon\", \"portrait\",\n \"pre\", \"pre-line\", \"pre-wrap\", \"preserve-3d\", \"progress\", \"push-button\", \"radial-gradient\", \"radio\",\n \"read-only\", \"read-write\", \"read-write-plaintext-only\", \"rectangle\", \"region\", \"relative\", \"repeat\",\n \"repeating-linear-gradient\", \"repeating-radial-gradient\", \"repeat-x\", \"repeat-y\", \"reset\", \"reverse\",\n \"rgb\", \"rgba\", \"ridge\", \"right\", \"rotate\", \"rotate3d\", \"rotateX\", \"rotateY\", \"rotateZ\", \"round\",\n \"row\", \"row-resize\", \"row-reverse\", \"rtl\", \"run-in\", \"running\", \"s-resize\", \"sans-serif\", \"saturation\",\n \"scale\", \"scale3d\", \"scaleX\", \"scaleY\", \"scaleZ\", \"screen\", \"scroll\", \"scrollbar\", \"scroll-position\",\n \"se-resize\", \"self-start\", \"self-end\", \"semi-condensed\", \"semi-expanded\", \"separate\", \"serif\", \"show\",\n \"single\", \"skew\", \"skewX\", \"skewY\", \"skip-white-space\", \"slide\", \"slider-horizontal\",\n \"slider-vertical\", \"sliderthumb-horizontal\", \"sliderthumb-vertical\", \"slow\", \"small\", \"small-caps\",\n \"small-caption\", \"smaller\", \"soft-light\", \"solid\", \"source-atop\", \"source-in\", \"source-out\",\n \"source-over\", \"space\", \"space-around\", \"space-between\", \"space-evenly\", \"spell-out\", \"square\", \"start\",\n \"static\", \"status-bar\", \"stretch\", \"stroke\", \"stroke-box\", \"sub\", \"subpixel-antialiased\", \"svg_masks\",\n \"super\", \"sw-resize\", \"symbolic\", \"symbols\", \"system-ui\", \"table\", \"table-caption\", \"table-cell\",\n \"table-column\", \"table-column-group\", \"table-footer-group\", \"table-header-group\", \"table-row\",\n \"table-row-group\", \"text\", \"text-bottom\", \"text-top\", \"textarea\", \"textfield\", \"thick\", \"thin\",\n \"threeddarkshadow\", \"threedface\", \"threedhighlight\", \"threedlightshadow\", \"threedshadow\", \"to\", \"top\",\n \"transform\", \"translate\", \"translate3d\", \"translateX\", \"translateY\", \"translateZ\", \"transparent\",\n \"ultra-condensed\", \"ultra-expanded\", \"underline\", \"unidirectional-pan\", \"unset\", \"up\", \"upper-latin\",\n \"uppercase\", \"url\", \"var\", \"vertical\", \"vertical-text\", \"view-box\", \"visible\", \"visibleFill\",\n \"visiblePainted\", \"visibleStroke\", \"visual\", \"w-resize\", \"wait\", \"wave\", \"wider\", \"window\", \"windowframe\",\n \"windowtext\", \"words\", \"wrap\", \"wrap-reverse\", \"x-large\", \"x-small\", \"xor\", \"xx-large\", \"xx-small\"\n].map(name => ({ type: \"keyword\", label: name })).concat(/*@__PURE__*/[\n \"aliceblue\", \"antiquewhite\", \"aqua\", \"aquamarine\", \"azure\", \"beige\",\n \"bisque\", \"black\", \"blanchedalmond\", \"blue\", \"blueviolet\", \"brown\",\n \"burlywood\", \"cadetblue\", \"chartreuse\", \"chocolate\", \"coral\", \"cornflowerblue\",\n \"cornsilk\", \"crimson\", \"cyan\", \"darkblue\", \"darkcyan\", \"darkgoldenrod\",\n \"darkgray\", \"darkgreen\", \"darkkhaki\", \"darkmagenta\", \"darkolivegreen\",\n \"darkorange\", \"darkorchid\", \"darkred\", \"darksalmon\", \"darkseagreen\",\n \"darkslateblue\", \"darkslategray\", \"darkturquoise\", \"darkviolet\",\n \"deeppink\", \"deepskyblue\", \"dimgray\", \"dodgerblue\", \"firebrick\",\n \"floralwhite\", \"forestgreen\", \"fuchsia\", \"gainsboro\", \"ghostwhite\",\n \"gold\", \"goldenrod\", \"gray\", \"grey\", \"green\", \"greenyellow\", \"honeydew\",\n \"hotpink\", \"indianred\", \"indigo\", \"ivory\", \"khaki\", \"lavender\",\n \"lavenderblush\", \"lawngreen\", \"lemonchiffon\", \"lightblue\", \"lightcoral\",\n \"lightcyan\", \"lightgoldenrodyellow\", \"lightgray\", \"lightgreen\", \"lightpink\",\n \"lightsalmon\", \"lightseagreen\", \"lightskyblue\", \"lightslategray\",\n \"lightsteelblue\", \"lightyellow\", \"lime\", \"limegreen\", \"linen\", \"magenta\",\n \"maroon\", \"mediumaquamarine\", \"mediumblue\", \"mediumorchid\", \"mediumpurple\",\n \"mediumseagreen\", \"mediumslateblue\", \"mediumspringgreen\", \"mediumturquoise\",\n \"mediumvioletred\", \"midnightblue\", \"mintcream\", \"mistyrose\", \"moccasin\",\n \"navajowhite\", \"navy\", \"oldlace\", \"olive\", \"olivedrab\", \"orange\", \"orangered\",\n \"orchid\", \"palegoldenrod\", \"palegreen\", \"paleturquoise\", \"palevioletred\",\n \"papayawhip\", \"peachpuff\", \"peru\", \"pink\", \"plum\", \"powderblue\",\n \"purple\", \"rebeccapurple\", \"red\", \"rosybrown\", \"royalblue\", \"saddlebrown\",\n \"salmon\", \"sandybrown\", \"seagreen\", \"seashell\", \"sienna\", \"silver\", \"skyblue\",\n \"slateblue\", \"slategray\", \"snow\", \"springgreen\", \"steelblue\", \"tan\",\n \"teal\", \"thistle\", \"tomato\", \"turquoise\", \"violet\", \"wheat\", \"white\",\n \"whitesmoke\", \"yellow\", \"yellowgreen\"\n].map(name => ({ type: \"constant\", label: name })));\nconst tags = /*@__PURE__*/[\n \"a\", \"abbr\", \"address\", \"article\", \"aside\", \"b\", \"bdi\", \"bdo\", \"blockquote\", \"body\",\n \"br\", \"button\", \"canvas\", \"caption\", \"cite\", \"code\", \"col\", \"colgroup\", \"dd\", \"del\",\n \"details\", \"dfn\", \"dialog\", \"div\", \"dl\", \"dt\", \"em\", \"figcaption\", \"figure\", \"footer\",\n \"form\", \"header\", \"hgroup\", \"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\", \"hr\", \"html\", \"i\", \"iframe\",\n \"img\", \"input\", \"ins\", \"kbd\", \"label\", \"legend\", \"li\", \"main\", \"meter\", \"nav\", \"ol\", \"output\",\n \"p\", \"pre\", \"ruby\", \"section\", \"select\", \"small\", \"source\", \"span\", \"strong\", \"sub\", \"summary\",\n \"sup\", \"table\", \"tbody\", \"td\", \"template\", \"textarea\", \"tfoot\", \"th\", \"thead\", \"tr\", \"u\", \"ul\"\n].map(name => ({ type: \"type\", label: name }));\nconst atRules = /*@__PURE__*/[\n \"@charset\", \"@color-profile\", \"@container\", \"@counter-style\", \"@font-face\", \"@font-feature-values\",\n \"@font-palette-values\", \"@import\", \"@keyframes\", \"@layer\", \"@media\", \"@namespace\", \"@page\",\n \"@position-try\", \"@property\", \"@scope\", \"@starting-style\", \"@supports\", \"@view-transition\"\n].map(label => ({ type: \"keyword\", label }));\nconst identifier = /^(\\w[\\w-]*|-\\w[\\w-]*|)$/, variable = /^-(-[\\w-]*)?$/;\nfunction isVarArg(node, doc) {\n var _a;\n if (node.name == \"(\" || node.type.isError)\n node = node.parent || node;\n if (node.name != \"ArgList\")\n return false;\n let callee = (_a = node.parent) === null || _a === void 0 ? void 0 : _a.firstChild;\n if ((callee === null || callee === void 0 ? void 0 : callee.name) != \"Callee\")\n return false;\n return doc.sliceString(callee.from, callee.to) == \"var\";\n}\nconst VariablesByNode = /*@__PURE__*/new NodeWeakMap();\nconst declSelector = [\"Declaration\"];\nfunction astTop(node) {\n for (let cur = node;;) {\n if (cur.type.isTop)\n return cur;\n if (!(cur = cur.parent))\n return node;\n }\n}\nfunction variableNames(doc, node, isVariable) {\n if (node.to - node.from > 4096) {\n let known = VariablesByNode.get(node);\n if (known)\n return known;\n let result = [], seen = new Set, cursor = node.cursor(IterMode.IncludeAnonymous);\n if (cursor.firstChild())\n do {\n for (let option of variableNames(doc, cursor.node, isVariable))\n if (!seen.has(option.label)) {\n seen.add(option.label);\n result.push(option);\n }\n } while (cursor.nextSibling());\n VariablesByNode.set(node, result);\n return result;\n }\n else {\n let result = [], seen = new Set;\n node.cursor().iterate(node => {\n var _a;\n if (isVariable(node) && node.matchContext(declSelector) && ((_a = node.node.nextSibling) === null || _a === void 0 ? void 0 : _a.name) == \":\") {\n let name = doc.sliceString(node.from, node.to);\n if (!seen.has(name)) {\n seen.add(name);\n result.push({ label: name, type: \"variable\" });\n }\n }\n });\n return result;\n }\n}\n/**\nCreate a completion source for a CSS dialect, providing a\npredicate for determining what kind of syntax node can act as a\ncompletable variable. This is used by language modes like Sass and\nLess to reuse this package's completion logic.\n*/\nconst defineCSSCompletionSource = (isVariable) => context => {\n let { state, pos } = context, node = syntaxTree(state).resolveInner(pos, -1);\n let isDash = node.type.isError && node.from == node.to - 1 && state.doc.sliceString(node.from, node.to) == \"-\";\n if (node.name == \"PropertyName\" ||\n (isDash || node.name == \"TagName\") && /^(Block|Styles)$/.test(node.resolve(node.to).name))\n return { from: node.from, options: properties(), validFor: identifier };\n if (node.name == \"ValueName\")\n return { from: node.from, options: values, validFor: identifier };\n if (node.name == \"PseudoClassName\")\n return { from: node.from, options: pseudoClasses, validFor: identifier };\n if (isVariable(node) || (context.explicit || isDash) && isVarArg(node, state.doc))\n return { from: isVariable(node) || isDash ? node.from : pos,\n options: variableNames(state.doc, astTop(node), isVariable),\n validFor: variable };\n if (node.name == \"TagName\") {\n for (let { parent } = node; parent; parent = parent.parent)\n if (parent.name == \"Block\")\n return { from: node.from, options: properties(), validFor: identifier };\n return { from: node.from, options: tags, validFor: identifier };\n }\n if (node.name == \"AtKeyword\")\n return { from: node.from, options: atRules, validFor: identifier };\n if (!context.explicit)\n return null;\n let above = node.resolve(pos), before = above.childBefore(pos);\n if (before && before.name == \":\" && above.name == \"PseudoClassSelector\")\n return { from: pos, options: pseudoClasses, validFor: identifier };\n if (before && before.name == \":\" && above.name == \"Declaration\" || above.name == \"ArgList\")\n return { from: pos, options: values, validFor: identifier };\n if (above.name == \"Block\" || above.name == \"Styles\")\n return { from: pos, options: properties(), validFor: identifier };\n return null;\n};\n/**\nCSS property, variable, and value keyword completion source.\n*/\nconst cssCompletionSource = /*@__PURE__*/defineCSSCompletionSource(n => n.name == \"VariableName\");\n\n/**\nA language provider based on the [Lezer CSS\nparser](https://github.com/lezer-parser/css), extended with\nhighlighting and indentation information.\n*/\nconst cssLanguage = /*@__PURE__*/LRLanguage.define({\n name: \"css\",\n parser: /*@__PURE__*/parser.configure({\n props: [\n /*@__PURE__*/indentNodeProp.add({\n Declaration: /*@__PURE__*/continuedIndent()\n }),\n /*@__PURE__*/foldNodeProp.add({\n \"Block KeyframeList\": foldInside\n })\n ]\n }),\n languageData: {\n commentTokens: { block: { open: \"/*\", close: \"*/\" } },\n indentOnInput: /^\\s*\\}$/,\n wordChars: \"-\"\n }\n});\n/**\nLanguage support for CSS.\n*/\nfunction css() {\n return new LanguageSupport(cssLanguage, cssLanguage.data.of({ autocomplete: cssCompletionSource }));\n}\n\nexport { css, cssCompletionSource, cssLanguage, defineCSSCompletionSource };\n", "import { ContextTracker, ExternalTokenizer, LRParser } from '@lezer/lr';\nimport { styleTags, tags } from '@lezer/highlight';\nimport { parseMixed } from '@lezer/common';\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst scriptText = 55,\n StartCloseScriptTag = 1,\n styleText = 56,\n StartCloseStyleTag = 2,\n textareaText = 57,\n StartCloseTextareaTag = 3,\n EndTag = 4,\n SelfClosingEndTag = 5,\n StartTag = 6,\n StartScriptTag = 7,\n StartStyleTag = 8,\n StartTextareaTag = 9,\n StartSelfClosingTag = 10,\n StartCloseTag = 11,\n NoMatchStartCloseTag = 12,\n MismatchedStartCloseTag = 13,\n missingCloseTag = 58,\n IncompleteTag = 14,\n IncompleteCloseTag = 15,\n commentContent$1 = 59,\n Element = 21,\n TagName = 23,\n Attribute = 24,\n AttributeName = 25,\n AttributeValue = 27,\n UnquotedAttributeValue = 28,\n ScriptText = 29,\n StyleText = 32,\n TextareaText = 35,\n OpenTag = 37,\n CloseTag = 38,\n Dialect_noMatch = 0,\n Dialect_selfClosing = 1;\n\n/* Hand-written tokenizers for HTML. */\n\nconst selfClosers = {\n area: true, base: true, br: true, col: true, command: true,\n embed: true, frame: true, hr: true, img: true, input: true,\n keygen: true, link: true, meta: true, param: true, source: true,\n track: true, wbr: true, menuitem: true\n};\n\nconst implicitlyClosed = {\n dd: true, li: true, optgroup: true, option: true, p: true,\n rp: true, rt: true, tbody: true, td: true, tfoot: true,\n th: true, tr: true\n};\n\nconst closeOnOpen = {\n dd: {dd: true, dt: true},\n dt: {dd: true, dt: true},\n li: {li: true},\n option: {option: true, optgroup: true},\n optgroup: {optgroup: true},\n p: {\n address: true, article: true, aside: true, blockquote: true, dir: true,\n div: true, dl: true, fieldset: true, footer: true, form: true,\n h1: true, h2: true, h3: true, h4: true, h5: true, h6: true,\n header: true, hgroup: true, hr: true, menu: true, nav: true, ol: true,\n p: true, pre: true, section: true, table: true, ul: true\n },\n rp: {rp: true, rt: true},\n rt: {rp: true, rt: true},\n tbody: {tbody: true, tfoot: true},\n td: {td: true, th: true},\n tfoot: {tbody: true},\n th: {td: true, th: true},\n thead: {tbody: true, tfoot: true},\n tr: {tr: true}\n};\n\nfunction nameChar(ch) {\n return ch == 45 || ch == 46 || ch == 58 || ch >= 65 && ch <= 90 || ch == 95 || ch >= 97 && ch <= 122 || ch >= 161\n}\n\nlet cachedName = null, cachedInput = null, cachedPos = 0;\nfunction tagNameAfter(input, offset) {\n let pos = input.pos + offset;\n if (cachedPos == pos && cachedInput == input) return cachedName\n let next = input.peek(offset), name = \"\";\n for (;;) {\n if (!nameChar(next)) break\n name += String.fromCharCode(next);\n next = input.peek(++offset);\n }\n // Undefined to signal there's a <? or <!, null for just missing\n cachedInput = input; cachedPos = pos;\n return cachedName = name ? name.toLowerCase() : next == question || next == bang ? undefined : null\n}\n\nconst lessThan = 60, greaterThan = 62, slash = 47, question = 63, bang = 33, dash = 45;\n\nfunction ElementContext(name, parent) {\n this.name = name;\n this.parent = parent;\n}\n\nconst startTagTerms = [StartTag, StartSelfClosingTag, StartScriptTag, StartStyleTag, StartTextareaTag];\n\nconst elementContext = new ContextTracker({\n start: null,\n shift(context, term, stack, input) {\n return startTagTerms.indexOf(term) > -1 ? new ElementContext(tagNameAfter(input, 1) || \"\", context) : context\n },\n reduce(context, term) {\n return term == Element && context ? context.parent : context\n },\n reuse(context, node, stack, input) {\n let type = node.type.id;\n return type == StartTag || type == OpenTag\n ? new ElementContext(tagNameAfter(input, 1) || \"\", context) : context\n },\n strict: false\n});\n\nconst tagStart = new ExternalTokenizer((input, stack) => {\n if (input.next != lessThan) {\n // End of file, close any open tags\n if (input.next < 0 && stack.context) input.acceptToken(missingCloseTag);\n return\n }\n input.advance();\n let close = input.next == slash;\n if (close) input.advance();\n let name = tagNameAfter(input, 0);\n if (name === undefined) return\n if (!name) return input.acceptToken(close ? IncompleteCloseTag : IncompleteTag)\n\n let parent = stack.context ? stack.context.name : null;\n if (close) {\n if (name == parent) return input.acceptToken(StartCloseTag)\n if (parent && implicitlyClosed[parent]) return input.acceptToken(missingCloseTag, -2)\n if (stack.dialectEnabled(Dialect_noMatch)) return input.acceptToken(NoMatchStartCloseTag)\n for (let cx = stack.context; cx; cx = cx.parent) if (cx.name == name) return\n input.acceptToken(MismatchedStartCloseTag);\n } else {\n if (name == \"script\") return input.acceptToken(StartScriptTag)\n if (name == \"style\") return input.acceptToken(StartStyleTag)\n if (name == \"textarea\") return input.acceptToken(StartTextareaTag)\n if (selfClosers.hasOwnProperty(name)) return input.acceptToken(StartSelfClosingTag)\n if (parent && closeOnOpen[parent] && closeOnOpen[parent][name]) input.acceptToken(missingCloseTag, -1);\n else input.acceptToken(StartTag);\n }\n}, {contextual: true});\n\nconst commentContent = new ExternalTokenizer(input => {\n for (let dashes = 0, i = 0;; i++) {\n if (input.next < 0) {\n if (i) input.acceptToken(commentContent$1);\n break\n }\n if (input.next == dash) {\n dashes++;\n } else if (input.next == greaterThan && dashes >= 2) {\n if (i >= 3) input.acceptToken(commentContent$1, -2);\n break\n } else {\n dashes = 0;\n }\n input.advance();\n }\n});\n\nfunction inForeignElement(context) {\n for (; context; context = context.parent)\n if (context.name == \"svg\" || context.name == \"math\") return true\n return false\n}\n\nconst endTag = new ExternalTokenizer((input, stack) => {\n if (input.next == slash && input.peek(1) == greaterThan) {\n let selfClosing = stack.dialectEnabled(Dialect_selfClosing) || inForeignElement(stack.context);\n input.acceptToken(selfClosing ? SelfClosingEndTag : EndTag, 2);\n } else if (input.next == greaterThan) {\n input.acceptToken(EndTag, 1);\n }\n});\n\nfunction contentTokenizer(tag, textToken, endToken) {\n let lastState = 2 + tag.length;\n return new ExternalTokenizer(input => {\n // state means:\n // - 0 nothing matched\n // - 1 '<' matched\n // - 2 '</'\n // - 3-(1+tag.length) part of the tag matched\n // - lastState whole tag + possibly whitespace matched\n for (let state = 0, matchedLen = 0, i = 0;; i++) {\n if (input.next < 0) {\n if (i) input.acceptToken(textToken);\n break\n }\n if (state == 0 && input.next == lessThan ||\n state == 1 && input.next == slash ||\n state >= 2 && state < lastState && input.next == tag.charCodeAt(state - 2)) {\n state++;\n matchedLen++;\n } else if (state == lastState && input.next == greaterThan) {\n if (i > matchedLen)\n input.acceptToken(textToken, -matchedLen);\n else\n input.acceptToken(endToken, -(matchedLen - 2));\n break\n } else if ((input.next == 10 /* '\\n' */ || input.next == 13 /* '\\r' */) && i) {\n input.acceptToken(textToken, 1);\n break\n } else {\n state = matchedLen = 0;\n }\n input.advance();\n }\n })\n}\n\nconst scriptTokens = contentTokenizer(\"script\", scriptText, StartCloseScriptTag);\n\nconst styleTokens = contentTokenizer(\"style\", styleText, StartCloseStyleTag);\n\nconst textareaTokens = contentTokenizer(\"textarea\", textareaText, StartCloseTextareaTag);\n\nconst htmlHighlighting = styleTags({\n \"Text RawText IncompleteTag IncompleteCloseTag\": tags.content,\n \"StartTag StartCloseTag SelfClosingEndTag EndTag\": tags.angleBracket,\n TagName: tags.tagName,\n \"MismatchedCloseTag/TagName\": [tags.tagName, tags.invalid],\n AttributeName: tags.attributeName,\n \"AttributeValue UnquotedAttributeValue\": tags.attributeValue,\n Is: tags.definitionOperator,\n \"EntityReference CharacterReference\": tags.character,\n Comment: tags.blockComment,\n ProcessingInst: tags.processingInstruction,\n DoctypeDecl: tags.documentMeta\n});\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst parser = LRParser.deserialize({\n version: 14,\n states: \",xOVO!rOOO!ZQ#tO'#CrO!`Q#tO'#C{O!eQ#tO'#DOO!jQ#tO'#DRO!oQ#tO'#DTO!tOaO'#CqO#PObO'#CqO#[OdO'#CqO$kO!rO'#CqOOO`'#Cq'#CqO$rO$fO'#DUO$zQ#tO'#DWO%PQ#tO'#DXOOO`'#Dl'#DlOOO`'#DZ'#DZQVO!rOOO%UQ&rO,59^O%aQ&rO,59gO%lQ&rO,59jO%wQ&rO,59mO&SQ&rO,59oOOOa'#D_'#D_O&_OaO'#CyO&jOaO,59]OOOb'#D`'#D`O&rObO'#C|O&}ObO,59]OOOd'#Da'#DaO'VOdO'#DPO'bOdO,59]OOO`'#Db'#DbO'jO!rO,59]O'qQ#tO'#DSOOO`,59],59]OOOp'#Dc'#DcO'vO$fO,59pOOO`,59p,59pO(OQ#|O,59rO(TQ#|O,59sOOO`-E7X-E7XO(YQ&rO'#CtOOQW'#D['#D[O(hQ&rO1G.xOOOa1G.x1G.xOOO`1G/Z1G/ZO(sQ&rO1G/ROOOb1G/R1G/RO)OQ&rO1G/UOOOd1G/U1G/UO)ZQ&rO1G/XOOO`1G/X1G/XO)fQ&rO1G/ZOOOa-E7]-E7]O)qQ#tO'#CzOOO`1G.w1G.wOOOb-E7^-E7^O)vQ#tO'#C}OOOd-E7_-E7_O){Q#tO'#DQOOO`-E7`-E7`O*QQ#|O,59nOOOp-E7a-E7aOOO`1G/[1G/[OOO`1G/^1G/^OOO`1G/_1G/_O*VQ,UO,59`OOQW-E7Y-E7YOOOa7+$d7+$dOOO`7+$u7+$uOOOb7+$m7+$mOOOd7+$p7+$pOOO`7+$s7+$sO*bQ#|O,59fO*gQ#|O,59iO*lQ#|O,59lOOO`1G/Y1G/YO*qO7[O'#CwO+SOMhO'#CwOOQW1G.z1G.zOOO`1G/Q1G/QOOO`1G/T1G/TOOO`1G/W1G/WOOOO'#D]'#D]O+eO7[O,59cOOQW,59c,59cOOOO'#D^'#D^O+vOMhO,59cOOOO-E7Z-E7ZOOQW1G.}1G.}OOOO-E7[-E7[\",\n stateData: \",c~O!_OS~OUSOVPOWQOXROYTO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O|_O!eZO~OgaO~OgbO~OgcO~OgdO~OgeO~O!XfOPmP![mP~O!YiOQpP![pP~O!ZlORsP![sP~OUSOVPOWQOXROYTOZqO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O!eZO~O![rO~P#gO!]sO!fuO~OgvO~OgwO~OS|OT}OiyO~OS!POT}OiyO~OS!ROT}OiyO~OS!TOT}OiyO~OS}OT}OiyO~O!XfOPmX![mX~OP!WO![!XO~O!YiOQpX![pX~OQ!ZO![!XO~O!ZlORsX![sX~OR!]O![!XO~O![!XO~P#gOg!_O~O!]sO!f!aO~OS!bO~OS!cO~Oj!dOShXThXihX~OS!fOT!gOiyO~OS!hOT!gOiyO~OS!iOT!gOiyO~OS!jOT!gOiyO~OS!gOT!gOiyO~Og!kO~Og!lO~Og!mO~OS!nO~Ol!qO!a!oO!c!pO~OS!rO~OS!sO~OS!tO~Ob!uOc!uOd!uO!a!wO!b!uO~Ob!xOc!xOd!xO!c!wO!d!xO~Ob!uOc!uOd!uO!a!{O!b!uO~Ob!xOc!xOd!xO!c!{O!d!xO~OT~cbd!ey|!e~\",\n goto: \"%q!aPPPPPPPPPPPPPPPPPPPPP!b!hP!nPP!zP!}#Q#T#Z#^#a#g#j#m#s#y!bP!b!bP$P$V$m$s$y%P%V%]%cPPPPPPPP%iX^OX`pXUOX`pezabcde{!O!Q!S!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ!ObQ!QcQ!SdQ!UeZ!e{!O!Q!S!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp\",\n nodeNames: \"\u26A0 StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl\",\n maxTerm: 68,\n context: elementContext,\n nodeProps: [\n [\"closedBy\", -10,1,2,3,7,8,9,10,11,12,13,\"EndTag\",6,\"EndTag SelfClosingEndTag\",-4,22,31,34,37,\"CloseTag\"],\n [\"openedBy\", 4,\"StartTag StartCloseTag\",5,\"StartTag\",-4,30,33,36,38,\"OpenTag\"],\n [\"group\", -10,14,15,18,19,20,21,40,41,42,43,\"Entity\",17,\"Entity TextContent\",-3,29,32,35,\"TextContent Entity\"],\n [\"isolate\", -11,22,30,31,33,34,36,37,38,39,42,43,\"ltr\",-3,27,28,40,\"\"]\n ],\n propSources: [htmlHighlighting],\n skippedNodes: [0],\n repeatNodeCount: 9,\n tokenData: \"!<p!aR!YOX$qXY,QYZ,QZ[$q[]&X]^,Q^p$qpq,Qqr-_rs3_sv-_vw3}wxHYx}-_}!OH{!O!P-_!P!Q$q!Q![-_![!]Mz!]!^-_!^!_!$S!_!`!;x!`!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4U-_4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!Z$|caPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr$qrs&}sv$qvw+Pwx(tx!^$q!^!_*V!_!a&X!a#S$q#S#T&X#T;'S$q;'S;=`+z<%lO$q!R&bXaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&Xq'UVaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}P'pTaPOv'kw!^'k!_;'S'k;'S;=`(P<%lO'kP(SP;=`<%l'kp([S!dpOv(Vx;'S(V;'S;=`(h<%lO(Vp(kP;=`<%l(Vq(qP;=`<%l&}a({WaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t`)jT!b`Or)esv)ew;'S)e;'S;=`)y<%lO)e`)|P;=`<%l)ea*SP;=`<%l(t!Q*^V!b`!dpOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!Q*vP;=`<%l*V!R*|P;=`<%l&XW+UYlWOX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+PW+wP;=`<%l+P!Z+}P;=`<%l$q!a,]`aP!b`!dp!_^OX&XXY,QYZ,QZ]&X]^,Q^p&Xpq,Qqr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!_-ljiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q[/ebiSlWOX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+PS0rXiSqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0mS1bP;=`<%l0m[1hP;=`<%l/^!V1vciSaP!b`!dpOq&Xqr1krs&}sv1kvw0mwx(tx!P1k!P!Q&X!Q!^1k!^!_*V!_!a&X!a#s1k#s$f&X$f;'S1k;'S;=`3R<%l?Ah1k?Ah?BY&X?BY?Mn1k?MnO&X!V3UP;=`<%l1k!_3[P;=`<%l-_!Z3hV!ahaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}!_4WiiSlWd!ROX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst>]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zblWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOb!R!R7tP;=`<%l7S!Z8OYlWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{iiSlWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbiSlWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!V<QciSOp7Sqr;{rs7Sst0mtw;{wx7Sx!P;{!P!Q7S!Q!];{!]!^=]!^!a7S!a#s;{#s$f7S$f;'S;{;'S;=`>P<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXiSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TalWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOc!R!RAwP;=`<%lAY!ZBRYlWc!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbiSlWc!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbiSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXiSc!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!cxaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYliSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_kiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_XaP!b`!dp!fQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZiSgQaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!b`!dpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!b`!dp!ePOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!b`!dpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!b`!dpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!b`!dpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!b`!dpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!b`!dpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!b`!dpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!b`!dpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!dpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO|PP!-nP;=`<%l!-Sq!-xS!dp|POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!b`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!b`|POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!b`!dp|POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!b`!dpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!b`!dpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!b`!dpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!b`!dpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!b`!dpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!b`!dpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!dpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOyPP!7TP;=`<%l!6Vq!7]V!dpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!dpyPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!b`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!b`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!b`yPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!b`!dpyPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!<TXjSaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X\",\n tokenizers: [scriptTokens, styleTokens, textareaTokens, endTag, tagStart, commentContent, 0, 1, 2, 3, 4, 5],\n topRules: {\"Document\":[0,16]},\n dialects: {noMatch: 0, selfClosing: 515},\n tokenPrec: 517\n});\n\nfunction getAttrs(openTag, input) {\n let attrs = Object.create(null);\n for (let att of openTag.getChildren(Attribute)) {\n let name = att.getChild(AttributeName), value = att.getChild(AttributeValue) || att.getChild(UnquotedAttributeValue);\n if (name) attrs[input.read(name.from, name.to)] =\n !value ? \"\" : value.type.id == AttributeValue ? input.read(value.from + 1, value.to - 1) : input.read(value.from, value.to);\n }\n return attrs\n}\n\nfunction findTagName(openTag, input) {\n let tagNameNode = openTag.getChild(TagName);\n return tagNameNode ? input.read(tagNameNode.from, tagNameNode.to) : \" \"\n}\n\nfunction maybeNest(node, input, tags) {\n let attrs;\n for (let tag of tags) {\n if (!tag.attrs || tag.attrs(attrs || (attrs = getAttrs(node.node.parent.firstChild, input))))\n return {parser: tag.parser, bracketed: true}\n }\n return null\n}\n\n// tags?: {\n// tag: string,\n// attrs?: ({[attr: string]: string}) => boolean,\n// parser: Parser\n// }[]\n// attributes?: {\n// name: string,\n// tagName?: string,\n// parser: Parser\n// }[]\n \nfunction configureNesting(tags = [], attributes = []) {\n let script = [], style = [], textarea = [], other = [];\n for (let tag of tags) {\n let array = tag.tag == \"script\" ? script : tag.tag == \"style\" ? style : tag.tag == \"textarea\" ? textarea : other;\n array.push(tag);\n }\n let attrs = attributes.length ? Object.create(null) : null;\n for (let attr of attributes) (attrs[attr.name] || (attrs[attr.name] = [])).push(attr);\n\n return parseMixed((node, input) => {\n let id = node.type.id;\n if (id == ScriptText) return maybeNest(node, input, script)\n if (id == StyleText) return maybeNest(node, input, style)\n if (id == TextareaText) return maybeNest(node, input, textarea)\n\n if (id == Element && other.length) {\n let n = node.node, open = n.firstChild, tagName = open && findTagName(open, input), attrs;\n if (tagName) for (let tag of other) {\n if (tag.tag == tagName && (!tag.attrs || tag.attrs(attrs || (attrs = getAttrs(open, input))))) {\n let close = n.lastChild;\n let to = close.type.id == CloseTag ? close.from : n.to;\n if (to > open.to)\n return {parser: tag.parser, overlay: [{from: open.to, to}]}\n }\n }\n }\n\n if (attrs && id == Attribute) {\n let n = node.node, nameNode;\n if (nameNode = n.firstChild) {\n let matches = attrs[input.read(nameNode.from, nameNode.to)];\n if (matches) for (let attr of matches) {\n if (attr.tagName && attr.tagName != findTagName(n.parent, input)) continue\n let value = n.lastChild;\n if (value.type.id == AttributeValue) {\n let from = value.from + 1;\n let last = value.lastChild, to = value.to - (last && last.isError ? 0 : 1);\n if (to > from) return {parser: attr.parser, overlay: [{from, to}], bracketed: true}\n } else if (value.type.id == UnquotedAttributeValue) {\n return {parser: attr.parser, overlay: [{from: value.from, to: value.to}]}\n }\n }\n }\n }\n return null\n })\n}\n\nexport { configureNesting, parser };\n", "import { parser, configureNesting } from '@lezer/html';\nimport { cssLanguage, css } from '@codemirror/lang-css';\nimport { javascriptLanguage, typescriptLanguage, jsxLanguage, tsxLanguage, javascript } from '@codemirror/lang-javascript';\nimport { EditorView } from '@codemirror/view';\nimport { EditorSelection } from '@codemirror/state';\nimport { syntaxTree, LRLanguage, indentNodeProp, foldNodeProp, bracketMatchingHandle, LanguageSupport } from '@codemirror/language';\n\nconst Targets = [\"_blank\", \"_self\", \"_top\", \"_parent\"];\nconst Charsets = [\"ascii\", \"utf-8\", \"utf-16\", \"latin1\", \"latin1\"];\nconst Methods = [\"get\", \"post\", \"put\", \"delete\"];\nconst Encs = [\"application/x-www-form-urlencoded\", \"multipart/form-data\", \"text/plain\"];\nconst Bool = [\"true\", \"false\"];\nconst S = {}; // Empty tag spec\nconst Tags = {\n a: {\n attrs: {\n href: null, ping: null, type: null,\n media: null,\n target: Targets,\n hreflang: null\n }\n },\n abbr: S,\n address: S,\n area: {\n attrs: {\n alt: null, coords: null, href: null, target: null, ping: null,\n media: null, hreflang: null, type: null,\n shape: [\"default\", \"rect\", \"circle\", \"poly\"]\n }\n },\n article: S,\n aside: S,\n audio: {\n attrs: {\n src: null, mediagroup: null,\n crossorigin: [\"anonymous\", \"use-credentials\"],\n preload: [\"none\", \"metadata\", \"auto\"],\n autoplay: [\"autoplay\"],\n loop: [\"loop\"],\n controls: [\"controls\"]\n }\n },\n b: S,\n base: { attrs: { href: null, target: Targets } },\n bdi: S,\n bdo: S,\n blockquote: { attrs: { cite: null } },\n body: S,\n br: S,\n button: {\n attrs: {\n form: null, formaction: null, name: null, value: null,\n autofocus: [\"autofocus\"],\n disabled: [\"autofocus\"],\n formenctype: Encs,\n formmethod: Methods,\n formnovalidate: [\"novalidate\"],\n formtarget: Targets,\n type: [\"submit\", \"reset\", \"button\"]\n }\n },\n canvas: { attrs: { width: null, height: null } },\n caption: S,\n center: S,\n cite: S,\n code: S,\n col: { attrs: { span: null } },\n colgroup: { attrs: { span: null } },\n command: {\n attrs: {\n type: [\"command\", \"checkbox\", \"radio\"],\n label: null, icon: null, radiogroup: null, command: null, title: null,\n disabled: [\"disabled\"],\n checked: [\"checked\"]\n }\n },\n data: { attrs: { value: null } },\n datagrid: { attrs: { disabled: [\"disabled\"], multiple: [\"multiple\"] } },\n datalist: { attrs: { data: null } },\n dd: S,\n del: { attrs: { cite: null, datetime: null } },\n details: { attrs: { open: [\"open\"] } },\n dfn: S,\n div: S,\n dl: S,\n dt: S,\n em: S,\n embed: { attrs: { src: null, type: null, width: null, height: null } },\n eventsource: { attrs: { src: null } },\n fieldset: { attrs: { disabled: [\"disabled\"], form: null, name: null } },\n figcaption: S,\n figure: S,\n footer: S,\n form: {\n attrs: {\n action: null, name: null,\n \"accept-charset\": Charsets,\n autocomplete: [\"on\", \"off\"],\n enctype: Encs,\n method: Methods,\n novalidate: [\"novalidate\"],\n target: Targets\n }\n },\n h1: S, h2: S, h3: S, h4: S, h5: S, h6: S,\n head: {\n children: [\"title\", \"base\", \"link\", \"style\", \"meta\", \"script\", \"noscript\", \"command\"]\n },\n header: S,\n hgroup: S,\n hr: S,\n html: {\n attrs: { manifest: null }\n },\n i: S,\n iframe: {\n attrs: {\n src: null, srcdoc: null, name: null, width: null, height: null,\n sandbox: [\"allow-top-navigation\", \"allow-same-origin\", \"allow-forms\", \"allow-scripts\"],\n seamless: [\"seamless\"]\n }\n },\n img: {\n attrs: {\n alt: null, src: null, ismap: null, usemap: null, width: null, height: null,\n crossorigin: [\"anonymous\", \"use-credentials\"]\n }\n },\n input: {\n attrs: {\n alt: null, dirname: null, form: null, formaction: null,\n height: null, list: null, max: null, maxlength: null, min: null,\n name: null, pattern: null, placeholder: null, size: null, src: null,\n step: null, value: null, width: null,\n accept: [\"audio/*\", \"video/*\", \"image/*\"],\n autocomplete: [\"on\", \"off\"],\n autofocus: [\"autofocus\"],\n checked: [\"checked\"],\n disabled: [\"disabled\"],\n formenctype: Encs,\n formmethod: Methods,\n formnovalidate: [\"novalidate\"],\n formtarget: Targets,\n multiple: [\"multiple\"],\n readonly: [\"readonly\"],\n required: [\"required\"],\n type: [\"hidden\", \"text\", \"search\", \"tel\", \"url\", \"email\", \"password\", \"datetime\", \"date\", \"month\",\n \"week\", \"time\", \"datetime-local\", \"number\", \"range\", \"color\", \"checkbox\", \"radio\",\n \"file\", \"submit\", \"image\", \"reset\", \"button\"]\n }\n },\n ins: { attrs: { cite: null, datetime: null } },\n kbd: S,\n keygen: {\n attrs: {\n challenge: null, form: null, name: null,\n autofocus: [\"autofocus\"],\n disabled: [\"disabled\"],\n keytype: [\"RSA\"]\n }\n },\n label: { attrs: { for: null, form: null } },\n legend: S,\n li: { attrs: { value: null } },\n link: {\n attrs: {\n href: null, type: null,\n hreflang: null,\n media: null,\n sizes: [\"all\", \"16x16\", \"16x16 32x32\", \"16x16 32x32 64x64\"]\n }\n },\n map: { attrs: { name: null } },\n mark: S,\n menu: { attrs: { label: null, type: [\"list\", \"context\", \"toolbar\"] } },\n meta: {\n attrs: {\n content: null,\n charset: Charsets,\n name: [\"viewport\", \"application-name\", \"author\", \"description\", \"generator\", \"keywords\"],\n \"http-equiv\": [\"content-language\", \"content-type\", \"default-style\", \"refresh\"]\n }\n },\n meter: { attrs: { value: null, min: null, low: null, high: null, max: null, optimum: null } },\n nav: S,\n noscript: S,\n object: {\n attrs: {\n data: null, type: null, name: null, usemap: null, form: null, width: null, height: null,\n typemustmatch: [\"typemustmatch\"]\n }\n },\n ol: { attrs: { reversed: [\"reversed\"], start: null, type: [\"1\", \"a\", \"A\", \"i\", \"I\"] },\n children: [\"li\", \"script\", \"template\", \"ul\", \"ol\"] },\n optgroup: { attrs: { disabled: [\"disabled\"], label: null } },\n option: { attrs: { disabled: [\"disabled\"], label: null, selected: [\"selected\"], value: null } },\n output: { attrs: { for: null, form: null, name: null } },\n p: S,\n param: { attrs: { name: null, value: null } },\n pre: S,\n progress: { attrs: { value: null, max: null } },\n q: { attrs: { cite: null } },\n rp: S,\n rt: S,\n ruby: S,\n samp: S,\n script: {\n attrs: {\n type: [\"text/javascript\"],\n src: null,\n async: [\"async\"],\n defer: [\"defer\"],\n charset: Charsets\n }\n },\n section: S,\n select: {\n attrs: {\n form: null, name: null, size: null,\n autofocus: [\"autofocus\"],\n disabled: [\"disabled\"],\n multiple: [\"multiple\"]\n }\n },\n slot: { attrs: { name: null } },\n small: S,\n source: { attrs: { src: null, type: null, media: null } },\n span: S,\n strong: S,\n style: {\n attrs: {\n type: [\"text/css\"],\n media: null,\n scoped: null\n }\n },\n sub: S,\n summary: S,\n sup: S,\n table: S,\n tbody: S,\n td: { attrs: { colspan: null, rowspan: null, headers: null } },\n template: S,\n textarea: {\n attrs: {\n dirname: null, form: null, maxlength: null, name: null, placeholder: null,\n rows: null, cols: null,\n autofocus: [\"autofocus\"],\n disabled: [\"disabled\"],\n readonly: [\"readonly\"],\n required: [\"required\"],\n wrap: [\"soft\", \"hard\"]\n }\n },\n tfoot: S,\n th: { attrs: { colspan: null, rowspan: null, headers: null, scope: [\"row\", \"col\", \"rowgroup\", \"colgroup\"] } },\n thead: S,\n time: { attrs: { datetime: null } },\n title: S,\n tr: S,\n track: {\n attrs: {\n src: null, label: null, default: null,\n kind: [\"subtitles\", \"captions\", \"descriptions\", \"chapters\", \"metadata\"],\n srclang: null\n }\n },\n ul: { children: [\"li\", \"script\", \"template\", \"ul\", \"ol\"] },\n var: S,\n video: {\n attrs: {\n src: null, poster: null, width: null, height: null,\n crossorigin: [\"anonymous\", \"use-credentials\"],\n preload: [\"auto\", \"metadata\", \"none\"],\n autoplay: [\"autoplay\"],\n mediagroup: [\"movie\"],\n muted: [\"muted\"],\n controls: [\"controls\"]\n }\n },\n wbr: S\n};\nconst GlobalAttrs = {\n accesskey: null,\n class: null,\n contenteditable: Bool,\n contextmenu: null,\n dir: [\"ltr\", \"rtl\", \"auto\"],\n draggable: [\"true\", \"false\", \"auto\"],\n dropzone: [\"copy\", \"move\", \"link\", \"string:\", \"file:\"],\n hidden: [\"hidden\"],\n id: null,\n inert: [\"inert\"],\n itemid: null,\n itemprop: null,\n itemref: null,\n itemscope: [\"itemscope\"],\n itemtype: null,\n lang: [\"ar\", \"bn\", \"de\", \"en-GB\", \"en-US\", \"es\", \"fr\", \"hi\", \"id\", \"ja\", \"pa\", \"pt\", \"ru\", \"tr\", \"zh\"],\n spellcheck: Bool,\n autocorrect: Bool,\n autocapitalize: Bool,\n style: null,\n tabindex: null,\n title: null,\n translate: [\"yes\", \"no\"],\n rel: [\"stylesheet\", \"alternate\", \"author\", \"bookmark\", \"help\", \"license\", \"next\", \"nofollow\", \"noreferrer\", \"prefetch\", \"prev\", \"search\", \"tag\"],\n role: /*@__PURE__*/\"alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer\".split(\" \"),\n \"aria-activedescendant\": null,\n \"aria-atomic\": Bool,\n \"aria-autocomplete\": [\"inline\", \"list\", \"both\", \"none\"],\n \"aria-busy\": Bool,\n \"aria-checked\": [\"true\", \"false\", \"mixed\", \"undefined\"],\n \"aria-controls\": null,\n \"aria-describedby\": null,\n \"aria-disabled\": Bool,\n \"aria-dropeffect\": null,\n \"aria-expanded\": [\"true\", \"false\", \"undefined\"],\n \"aria-flowto\": null,\n \"aria-grabbed\": [\"true\", \"false\", \"undefined\"],\n \"aria-haspopup\": Bool,\n \"aria-hidden\": Bool,\n \"aria-invalid\": [\"true\", \"false\", \"grammar\", \"spelling\"],\n \"aria-label\": null,\n \"aria-labelledby\": null,\n \"aria-level\": null,\n \"aria-live\": [\"off\", \"polite\", \"assertive\"],\n \"aria-multiline\": Bool,\n \"aria-multiselectable\": Bool,\n \"aria-owns\": null,\n \"aria-posinset\": null,\n \"aria-pressed\": [\"true\", \"false\", \"mixed\", \"undefined\"],\n \"aria-readonly\": Bool,\n \"aria-relevant\": null,\n \"aria-required\": Bool,\n \"aria-selected\": [\"true\", \"false\", \"undefined\"],\n \"aria-setsize\": null,\n \"aria-sort\": [\"ascending\", \"descending\", \"none\", \"other\"],\n \"aria-valuemax\": null,\n \"aria-valuemin\": null,\n \"aria-valuenow\": null,\n \"aria-valuetext\": null\n};\nconst eventAttributes = /*@__PURE__*/(\"beforeunload copy cut dragstart dragover dragleave dragenter dragend \" +\n \"drag paste focus blur change click load mousedown mouseenter mouseleave \" +\n \"mouseup keydown keyup resize scroll unload\").split(\" \").map(n => \"on\" + n);\nfor (let a of eventAttributes)\n GlobalAttrs[a] = null;\nclass Schema {\n constructor(extraTags, extraAttrs) {\n this.tags = { ...Tags, ...extraTags };\n this.globalAttrs = { ...GlobalAttrs, ...extraAttrs };\n this.allTags = Object.keys(this.tags);\n this.globalAttrNames = Object.keys(this.globalAttrs);\n }\n}\nSchema.default = /*@__PURE__*/new Schema;\nfunction elementName(doc, tree, max = doc.length) {\n if (!tree)\n return \"\";\n let tag = tree.firstChild;\n let name = tag && tag.getChild(\"TagName\");\n return name ? doc.sliceString(name.from, Math.min(name.to, max)) : \"\";\n}\nfunction findParentElement(tree, skip = false) {\n for (; tree; tree = tree.parent)\n if (tree.name == \"Element\") {\n if (skip)\n skip = false;\n else\n return tree;\n }\n return null;\n}\nfunction allowedChildren(doc, tree, schema) {\n let parentInfo = schema.tags[elementName(doc, findParentElement(tree))];\n return (parentInfo === null || parentInfo === void 0 ? void 0 : parentInfo.children) || schema.allTags;\n}\nfunction openTags(doc, tree) {\n let open = [];\n for (let parent = findParentElement(tree); parent && !parent.type.isTop; parent = findParentElement(parent.parent)) {\n let tagName = elementName(doc, parent);\n if (tagName && parent.lastChild.name == \"CloseTag\")\n break;\n if (tagName && open.indexOf(tagName) < 0 && (tree.name == \"EndTag\" || tree.from >= parent.firstChild.to))\n open.push(tagName);\n }\n return open;\n}\nconst identifier = /^[:\\-\\.\\w\\u00b7-\\uffff]*$/;\nfunction completeTag(state, schema, tree, from, to) {\n let end = /\\s*>/.test(state.sliceDoc(to, to + 5)) ? \"\" : \">\";\n let parent = findParentElement(tree, tree.name == \"StartTag\" || tree.name == \"TagName\");\n return { from, to,\n options: allowedChildren(state.doc, parent, schema).map(tagName => ({ label: tagName, type: \"type\" })).concat(openTags(state.doc, tree).map((tag, i) => ({ label: \"/\" + tag, apply: \"/\" + tag + end,\n type: \"type\", boost: 99 - i }))),\n validFor: /^\\/?[:\\-\\.\\w\\u00b7-\\uffff]*$/ };\n}\nfunction completeCloseTag(state, tree, from, to) {\n let end = /\\s*>/.test(state.sliceDoc(to, to + 5)) ? \"\" : \">\";\n return { from, to,\n options: openTags(state.doc, tree).map((tag, i) => ({ label: tag, apply: tag + end, type: \"type\", boost: 99 - i })),\n validFor: identifier };\n}\nfunction completeStartTag(state, schema, tree, pos) {\n let options = [], level = 0;\n for (let tagName of allowedChildren(state.doc, tree, schema))\n options.push({ label: \"<\" + tagName, type: \"type\" });\n for (let open of openTags(state.doc, tree))\n options.push({ label: \"</\" + open + \">\", type: \"type\", boost: 99 - level++ });\n return { from: pos, to: pos, options, validFor: /^<\\/?[:\\-\\.\\w\\u00b7-\\uffff]*$/ };\n}\nfunction completeAttrName(state, schema, tree, from, to) {\n let elt = findParentElement(tree), info = elt ? schema.tags[elementName(state.doc, elt)] : null;\n let localAttrs = info && info.attrs ? Object.keys(info.attrs) : [];\n let names = info && info.globalAttrs === false ? localAttrs\n : localAttrs.length ? localAttrs.concat(schema.globalAttrNames) : schema.globalAttrNames;\n return { from, to,\n options: names.map(attrName => ({ label: attrName, type: \"property\" })),\n validFor: identifier };\n}\nfunction completeAttrValue(state, schema, tree, from, to) {\n var _a;\n let nameNode = (_a = tree.parent) === null || _a === void 0 ? void 0 : _a.getChild(\"AttributeName\");\n let options = [], token = undefined;\n if (nameNode) {\n let attrName = state.sliceDoc(nameNode.from, nameNode.to);\n let attrs = schema.globalAttrs[attrName];\n if (!attrs) {\n let elt = findParentElement(tree), info = elt ? schema.tags[elementName(state.doc, elt)] : null;\n attrs = (info === null || info === void 0 ? void 0 : info.attrs) && info.attrs[attrName];\n }\n if (attrs) {\n let base = state.sliceDoc(from, to).toLowerCase(), quoteStart = '\"', quoteEnd = '\"';\n if (/^['\"]/.test(base)) {\n token = base[0] == '\"' ? /^[^\"]*$/ : /^[^']*$/;\n quoteStart = \"\";\n quoteEnd = state.sliceDoc(to, to + 1) == base[0] ? \"\" : base[0];\n base = base.slice(1);\n from++;\n }\n else {\n token = /^[^\\s<>='\"]*$/;\n }\n for (let value of attrs)\n options.push({ label: value, apply: quoteStart + value + quoteEnd, type: \"constant\" });\n }\n }\n return { from, to, options, validFor: token };\n}\nfunction htmlCompletionFor(schema, context) {\n let { state, pos } = context, tree = syntaxTree(state).resolveInner(pos, -1), around = tree.resolve(pos);\n for (let scan = pos, before; around == tree && (before = tree.childBefore(scan));) {\n let last = before.lastChild;\n if (!last || !last.type.isError || last.from < last.to)\n break;\n around = tree = before;\n scan = last.from;\n }\n if (tree.name == \"TagName\") {\n return tree.parent && /CloseTag$/.test(tree.parent.name) ? completeCloseTag(state, tree, tree.from, pos)\n : completeTag(state, schema, tree, tree.from, pos);\n }\n else if (tree.name == \"StartTag\" || tree.name == \"IncompleteTag\") {\n return completeTag(state, schema, tree, pos, pos);\n }\n else if (tree.name == \"StartCloseTag\" || tree.name == \"IncompleteCloseTag\") {\n return completeCloseTag(state, tree, pos, pos);\n }\n else if (tree.name == \"OpenTag\" || tree.name == \"SelfClosingTag\" || tree.name == \"AttributeName\") {\n return completeAttrName(state, schema, tree, tree.name == \"AttributeName\" ? tree.from : pos, pos);\n }\n else if (tree.name == \"Is\" || tree.name == \"AttributeValue\" || tree.name == \"UnquotedAttributeValue\") {\n return completeAttrValue(state, schema, tree, tree.name == \"Is\" ? pos : tree.from, pos);\n }\n else if (context.explicit && (around.name == \"Element\" || around.name == \"Text\" || around.name == \"Document\")) {\n return completeStartTag(state, schema, tree, pos);\n }\n else {\n return null;\n }\n}\n/**\nHTML tag completion. Opens and closes tags and attributes in a\ncontext-aware way.\n*/\nfunction htmlCompletionSource(context) {\n return htmlCompletionFor(Schema.default, context);\n}\n/**\nCreate a completion source for HTML extended with additional tags\nor attributes.\n*/\nfunction htmlCompletionSourceWith(config) {\n let { extraTags, extraGlobalAttributes: extraAttrs } = config;\n let schema = extraAttrs || extraTags ? new Schema(extraTags, extraAttrs) : Schema.default;\n return (context) => htmlCompletionFor(schema, context);\n}\n\nconst jsonParser = /*@__PURE__*/javascriptLanguage.parser.configure({ top: \"SingleExpression\" });\nconst defaultNesting = [\n { tag: \"script\",\n attrs: attrs => attrs.type == \"text/typescript\" || attrs.lang == \"ts\",\n parser: typescriptLanguage.parser },\n { tag: \"script\",\n attrs: attrs => attrs.type == \"text/babel\" || attrs.type == \"text/jsx\",\n parser: jsxLanguage.parser },\n { tag: \"script\",\n attrs: attrs => attrs.type == \"text/typescript-jsx\",\n parser: tsxLanguage.parser },\n { tag: \"script\",\n attrs(attrs) {\n return /^(importmap|speculationrules|application\\/(.+\\+)?json)$/i.test(attrs.type);\n },\n parser: jsonParser },\n { tag: \"script\",\n attrs(attrs) {\n return !attrs.type || /^(?:text|application)\\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(attrs.type);\n },\n parser: javascriptLanguage.parser },\n { tag: \"style\",\n attrs(attrs) {\n return (!attrs.lang || attrs.lang == \"css\") && (!attrs.type || /^(text\\/)?(x-)?(stylesheet|css)$/i.test(attrs.type));\n },\n parser: cssLanguage.parser }\n];\nconst defaultAttrs = /*@__PURE__*/[\n { name: \"style\",\n parser: /*@__PURE__*/cssLanguage.parser.configure({ top: \"Styles\" }) }\n].concat(/*@__PURE__*/eventAttributes.map(name => ({ name, parser: javascriptLanguage.parser })));\nconst htmlPlain = /*@__PURE__*/LRLanguage.define({\n name: \"html\",\n parser: /*@__PURE__*/parser.configure({\n props: [\n /*@__PURE__*/indentNodeProp.add({\n Element(context) {\n let after = /^(\\s*)(<\\/)?/.exec(context.textAfter);\n if (context.node.to <= context.pos + after[0].length)\n return context.continue();\n return context.lineIndent(context.node.from) + (after[2] ? 0 : context.unit);\n },\n \"OpenTag CloseTag SelfClosingTag\"(context) {\n return context.column(context.node.from) + context.unit;\n },\n Document(context) {\n if (context.pos + /\\s*/.exec(context.textAfter)[0].length < context.node.to)\n return context.continue();\n let endElt = null, close;\n for (let cur = context.node;;) {\n let last = cur.lastChild;\n if (!last || last.name != \"Element\" || last.to != cur.to)\n break;\n endElt = cur = last;\n }\n if (endElt && !((close = endElt.lastChild) && (close.name == \"CloseTag\" || close.name == \"SelfClosingTag\")))\n return context.lineIndent(endElt.from) + context.unit;\n return null;\n }\n }),\n /*@__PURE__*/foldNodeProp.add({\n Element(node) {\n let first = node.firstChild, last = node.lastChild;\n if (!first || first.name != \"OpenTag\")\n return null;\n return { from: first.to, to: last.name == \"CloseTag\" ? last.from : node.to };\n }\n }),\n /*@__PURE__*/bracketMatchingHandle.add({\n \"OpenTag CloseTag\": node => node.getChild(\"TagName\")\n })\n ]\n }),\n languageData: {\n commentTokens: { block: { open: \"<!--\", close: \"-->\" } },\n indentOnInput: /^\\s*<\\/\\w+\\W$/,\n wordChars: \"-_\"\n }\n});\n/**\nA language provider based on the [Lezer HTML\nparser](https://github.com/lezer-parser/html), extended with the\nJavaScript and CSS parsers to parse the content of `<script>` and\n`<style>` tags.\n*/\nconst htmlLanguage = /*@__PURE__*/htmlPlain.configure({\n wrap: /*@__PURE__*/configureNesting(defaultNesting, defaultAttrs)\n});\n/**\nLanguage support for HTML, including\n[`htmlCompletion`](https://codemirror.net/6/docs/ref/#lang-html.htmlCompletion) and JavaScript and\nCSS support extensions.\n*/\nfunction html(config = {}) {\n let dialect = \"\", wrap;\n if (config.matchClosingTags === false)\n dialect = \"noMatch\";\n if (config.selfClosingTags === true)\n dialect = (dialect ? dialect + \" \" : \"\") + \"selfClosing\";\n if (config.nestedLanguages && config.nestedLanguages.length ||\n config.nestedAttributes && config.nestedAttributes.length)\n wrap = configureNesting((config.nestedLanguages || []).concat(defaultNesting), (config.nestedAttributes || []).concat(defaultAttrs));\n let lang = wrap ? htmlPlain.configure({ wrap, dialect }) : dialect ? htmlLanguage.configure({ dialect }) : htmlLanguage;\n return new LanguageSupport(lang, [\n htmlLanguage.data.of({ autocomplete: htmlCompletionSourceWith(config) }),\n config.autoCloseTags !== false ? autoCloseTags : [],\n javascript().support,\n css().support\n ]);\n}\nconst selfClosers = /*@__PURE__*/new Set(/*@__PURE__*/\"area base br col command embed frame hr img input keygen link meta param source track wbr menuitem\".split(\" \"));\n/**\nExtension that will automatically insert close tags when a `>` or\n`/` is typed.\n*/\nconst autoCloseTags = /*@__PURE__*/EditorView.inputHandler.of((view, from, to, text, insertTransaction) => {\n if (view.composing || view.state.readOnly || from != to || (text != \">\" && text != \"/\") ||\n !htmlLanguage.isActiveAt(view.state, from, -1))\n return false;\n let base = insertTransaction(), { state } = base;\n let closeTags = state.changeByRange(range => {\n var _a, _b, _c;\n let didType = state.doc.sliceString(range.from - 1, range.to) == text;\n let { head } = range, after = syntaxTree(state).resolveInner(head, -1), name;\n if (didType && text == \">\" && after.name == \"EndTag\") {\n let tag = after.parent;\n if (((_b = (_a = tag.parent) === null || _a === void 0 ? void 0 : _a.lastChild) === null || _b === void 0 ? void 0 : _b.name) != \"CloseTag\" &&\n (name = elementName(state.doc, tag.parent, head)) &&\n !selfClosers.has(name)) {\n let to = head + (state.doc.sliceString(head, head + 1) === \">\" ? 1 : 0);\n let insert = `</${name}>`;\n return { range, changes: { from: head, to, insert } };\n }\n }\n else if (didType && text == \"/\" && after.name == \"IncompleteCloseTag\") {\n let tag = after.parent;\n if (after.from == head - 2 && ((_c = tag.lastChild) === null || _c === void 0 ? void 0 : _c.name) != \"CloseTag\" &&\n (name = elementName(state.doc, tag, head)) && !selfClosers.has(name)) {\n let to = head + (state.doc.sliceString(head, head + 1) === \">\" ? 1 : 0);\n let insert = `${name}>`;\n return {\n range: EditorSelection.cursor(head + insert.length, -1),\n changes: { from: head, to, insert }\n };\n }\n }\n return { range };\n });\n if (closeTags.changes.empty)\n return false;\n view.dispatch([\n base,\n state.update(closeTags, {\n userEvent: \"input.complete\",\n scrollIntoView: true\n })\n ]);\n return true;\n});\n\nexport { autoCloseTags, html, htmlCompletionSource, htmlCompletionSourceWith, htmlLanguage };\n", "import { LRParser } from '@lezer/lr';\nimport { styleTags, tags } from '@lezer/highlight';\n\nconst jsonHighlighting = styleTags({\n String: tags.string,\n Number: tags.number,\n \"True False\": tags.bool,\n PropertyName: tags.propertyName,\n Null: tags.null,\n \", :\": tags.separator,\n \"[ ]\": tags.squareBracket,\n \"{ }\": tags.brace\n});\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst parser = LRParser.deserialize({\n version: 14,\n states: \"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l\",\n stateData: \"#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O\",\n goto: \"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R\",\n nodeNames: \"\u26A0 JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array\",\n maxTerm: 25,\n nodeProps: [\n [\"isolate\", -2,6,11,\"\"],\n [\"openedBy\", 7,\"{\",14,\"[\"],\n [\"closedBy\", 8,\"}\",15,\"]\"]\n ],\n propSources: [jsonHighlighting],\n skippedNodes: [0],\n repeatNodeCount: 2,\n tokenData: \"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~\",\n tokenizers: [0],\n topRules: {\"JsonText\":[0,1]},\n tokenPrec: 0\n});\n\nexport { parser };\n", "import { parser } from '@lezer/json';\nimport { LRLanguage, indentNodeProp, continuedIndent, foldNodeProp, foldInside, LanguageSupport } from '@codemirror/language';\n\n/**\nCalls\n[`JSON.parse`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse)\non the document and, if that throws an error, reports it as a\nsingle diagnostic.\n*/\nconst jsonParseLinter = () => (view) => {\n try {\n JSON.parse(view.state.doc.toString());\n }\n catch (e) {\n if (!(e instanceof SyntaxError))\n throw e;\n const pos = getErrorPosition(e, view.state.doc);\n return [{\n from: pos,\n message: e.message,\n severity: 'error',\n to: pos\n }];\n }\n return [];\n};\nfunction getErrorPosition(error, doc) {\n let m;\n if (m = error.message.match(/at position (\\d+)/))\n return Math.min(+m[1], doc.length);\n if (m = error.message.match(/at line (\\d+) column (\\d+)/))\n return Math.min(doc.line(+m[1]).from + (+m[2]) - 1, doc.length);\n return 0;\n}\n\n/**\nA language provider that provides JSON parsing.\n*/\nconst jsonLanguage = /*@__PURE__*/LRLanguage.define({\n name: \"json\",\n parser: /*@__PURE__*/parser.configure({\n props: [\n /*@__PURE__*/indentNodeProp.add({\n Object: /*@__PURE__*/continuedIndent({ except: /^\\s*\\}/ }),\n Array: /*@__PURE__*/continuedIndent({ except: /^\\s*\\]/ })\n }),\n /*@__PURE__*/foldNodeProp.add({\n \"Object Array\": foldInside\n })\n ]\n }),\n languageData: {\n closeBrackets: { brackets: [\"[\", \"{\", '\"'] },\n indentOnInput: /^\\s*[\\}\\]]$/\n }\n});\n/**\nJSON language support.\n*/\nfunction json() {\n return new LanguageSupport(jsonLanguage);\n}\n\nexport { json, jsonLanguage, jsonParseLinter };\n", "import { NodeType, NodeProp, NodeSet, Tree, Parser, parseMixed } from '@lezer/common';\nimport { styleTags, tags, Tag } from '@lezer/highlight';\n\nclass CompositeBlock {\n static create(type, value, from, parentHash, end) {\n let hash = (parentHash + (parentHash << 8) + type + (value << 4)) | 0;\n return new CompositeBlock(type, value, from, hash, end, [], []);\n }\n constructor(type, \n // Used for indentation in list items, markup character in lists\n value, from, hash, end, children, positions) {\n this.type = type;\n this.value = value;\n this.from = from;\n this.hash = hash;\n this.end = end;\n this.children = children;\n this.positions = positions;\n this.hashProp = [[NodeProp.contextHash, hash]];\n }\n addChild(child, pos) {\n if (child.prop(NodeProp.contextHash) != this.hash)\n child = new Tree(child.type, child.children, child.positions, child.length, this.hashProp);\n this.children.push(child);\n this.positions.push(pos);\n }\n toTree(nodeSet, end = this.end) {\n let last = this.children.length - 1;\n if (last >= 0)\n end = Math.max(end, this.positions[last] + this.children[last].length + this.from);\n return new Tree(nodeSet.types[this.type], this.children, this.positions, end - this.from).balance({\n makeTree: (children, positions, length) => new Tree(NodeType.none, children, positions, length, this.hashProp)\n });\n }\n}\nvar Type;\n(function (Type) {\n Type[Type[\"Document\"] = 1] = \"Document\";\n Type[Type[\"CodeBlock\"] = 2] = \"CodeBlock\";\n Type[Type[\"FencedCode\"] = 3] = \"FencedCode\";\n Type[Type[\"Blockquote\"] = 4] = \"Blockquote\";\n Type[Type[\"HorizontalRule\"] = 5] = \"HorizontalRule\";\n Type[Type[\"BulletList\"] = 6] = \"BulletList\";\n Type[Type[\"OrderedList\"] = 7] = \"OrderedList\";\n Type[Type[\"ListItem\"] = 8] = \"ListItem\";\n Type[Type[\"ATXHeading1\"] = 9] = \"ATXHeading1\";\n Type[Type[\"ATXHeading2\"] = 10] = \"ATXHeading2\";\n Type[Type[\"ATXHeading3\"] = 11] = \"ATXHeading3\";\n Type[Type[\"ATXHeading4\"] = 12] = \"ATXHeading4\";\n Type[Type[\"ATXHeading5\"] = 13] = \"ATXHeading5\";\n Type[Type[\"ATXHeading6\"] = 14] = \"ATXHeading6\";\n Type[Type[\"SetextHeading1\"] = 15] = \"SetextHeading1\";\n Type[Type[\"SetextHeading2\"] = 16] = \"SetextHeading2\";\n Type[Type[\"HTMLBlock\"] = 17] = \"HTMLBlock\";\n Type[Type[\"LinkReference\"] = 18] = \"LinkReference\";\n Type[Type[\"Paragraph\"] = 19] = \"Paragraph\";\n Type[Type[\"CommentBlock\"] = 20] = \"CommentBlock\";\n Type[Type[\"ProcessingInstructionBlock\"] = 21] = \"ProcessingInstructionBlock\";\n // Inline\n Type[Type[\"Escape\"] = 22] = \"Escape\";\n Type[Type[\"Entity\"] = 23] = \"Entity\";\n Type[Type[\"HardBreak\"] = 24] = \"HardBreak\";\n Type[Type[\"Emphasis\"] = 25] = \"Emphasis\";\n Type[Type[\"StrongEmphasis\"] = 26] = \"StrongEmphasis\";\n Type[Type[\"Link\"] = 27] = \"Link\";\n Type[Type[\"Image\"] = 28] = \"Image\";\n Type[Type[\"InlineCode\"] = 29] = \"InlineCode\";\n Type[Type[\"HTMLTag\"] = 30] = \"HTMLTag\";\n Type[Type[\"Comment\"] = 31] = \"Comment\";\n Type[Type[\"ProcessingInstruction\"] = 32] = \"ProcessingInstruction\";\n Type[Type[\"Autolink\"] = 33] = \"Autolink\";\n // Smaller tokens\n Type[Type[\"HeaderMark\"] = 34] = \"HeaderMark\";\n Type[Type[\"QuoteMark\"] = 35] = \"QuoteMark\";\n Type[Type[\"ListMark\"] = 36] = \"ListMark\";\n Type[Type[\"LinkMark\"] = 37] = \"LinkMark\";\n Type[Type[\"EmphasisMark\"] = 38] = \"EmphasisMark\";\n Type[Type[\"CodeMark\"] = 39] = \"CodeMark\";\n Type[Type[\"CodeText\"] = 40] = \"CodeText\";\n Type[Type[\"CodeInfo\"] = 41] = \"CodeInfo\";\n Type[Type[\"LinkTitle\"] = 42] = \"LinkTitle\";\n Type[Type[\"LinkLabel\"] = 43] = \"LinkLabel\";\n Type[Type[\"URL\"] = 44] = \"URL\";\n})(Type || (Type = {}));\n/**\nData structure used to accumulate a block's content during [leaf\nblock parsing](#BlockParser.leaf).\n*/\nclass LeafBlock {\n /**\n @internal\n */\n constructor(\n /**\n The start position of the block.\n */\n start, \n /**\n The block's text content.\n */\n content) {\n this.start = start;\n this.content = content;\n /**\n @internal\n */\n this.marks = [];\n /**\n The block parsers active for this block.\n */\n this.parsers = [];\n }\n}\n/**\nData structure used during block-level per-line parsing.\n*/\nclass Line {\n constructor() {\n /**\n The line's full text.\n */\n this.text = \"\";\n /**\n The base indent provided by the composite contexts (that have\n been handled so far).\n */\n this.baseIndent = 0;\n /**\n The string position corresponding to the base indent.\n */\n this.basePos = 0;\n /**\n The number of contexts handled @internal\n */\n this.depth = 0;\n /**\n Any markers (i.e. block quote markers) parsed for the contexts. @internal\n */\n this.markers = [];\n /**\n The position of the next non-whitespace character beyond any\n list, blockquote, or other composite block markers.\n */\n this.pos = 0;\n /**\n The column of the next non-whitespace character.\n */\n this.indent = 0;\n /**\n The character code of the character after `pos`.\n */\n this.next = -1;\n }\n /**\n @internal\n */\n forward() {\n if (this.basePos > this.pos)\n this.forwardInner();\n }\n /**\n @internal\n */\n forwardInner() {\n let newPos = this.skipSpace(this.basePos);\n this.indent = this.countIndent(newPos, this.pos, this.indent);\n this.pos = newPos;\n this.next = newPos == this.text.length ? -1 : this.text.charCodeAt(newPos);\n }\n /**\n Skip whitespace after the given position, return the position of\n the next non-space character or the end of the line if there's\n only space after `from`.\n */\n skipSpace(from) { return skipSpace(this.text, from); }\n /**\n @internal\n */\n reset(text) {\n this.text = text;\n this.baseIndent = this.basePos = this.pos = this.indent = 0;\n this.forwardInner();\n this.depth = 1;\n while (this.markers.length)\n this.markers.pop();\n }\n /**\n Move the line's base position forward to the given position.\n This should only be called by composite [block\n parsers](#BlockParser.parse) or [markup skipping\n functions](#NodeSpec.composite).\n */\n moveBase(to) {\n this.basePos = to;\n this.baseIndent = this.countIndent(to, this.pos, this.indent);\n }\n /**\n Move the line's base position forward to the given _column_.\n */\n moveBaseColumn(indent) {\n this.baseIndent = indent;\n this.basePos = this.findColumn(indent);\n }\n /**\n Store a composite-block-level marker. Should be called from\n [markup skipping functions](#NodeSpec.composite) when they\n consume any non-whitespace characters.\n */\n addMarker(elt) {\n this.markers.push(elt);\n }\n /**\n Find the column position at `to`, optionally starting at a given\n position and column.\n */\n countIndent(to, from = 0, indent = 0) {\n for (let i = from; i < to; i++)\n indent += this.text.charCodeAt(i) == 9 ? 4 - indent % 4 : 1;\n return indent;\n }\n /**\n Find the position corresponding to the given column.\n */\n findColumn(goal) {\n let i = 0;\n for (let indent = 0; i < this.text.length && indent < goal; i++)\n indent += this.text.charCodeAt(i) == 9 ? 4 - indent % 4 : 1;\n return i;\n }\n /**\n @internal\n */\n scrub() {\n if (!this.baseIndent)\n return this.text;\n let result = \"\";\n for (let i = 0; i < this.basePos; i++)\n result += \" \";\n return result + this.text.slice(this.basePos);\n }\n}\nfunction skipForList(bl, cx, line) {\n if (line.pos == line.text.length ||\n (bl != cx.block && line.indent >= cx.stack[line.depth + 1].value + line.baseIndent))\n return true;\n if (line.indent >= line.baseIndent + 4)\n return false;\n let size = (bl.type == Type.OrderedList ? isOrderedList : isBulletList)(line, cx, false);\n return size > 0 &&\n (bl.type != Type.BulletList || isHorizontalRule(line, cx, false) < 0) &&\n line.text.charCodeAt(line.pos + size - 1) == bl.value;\n}\nconst DefaultSkipMarkup = {\n [Type.Blockquote](bl, cx, line) {\n if (line.next != 62 /* '>' */)\n return false;\n line.markers.push(elt(Type.QuoteMark, cx.lineStart + line.pos, cx.lineStart + line.pos + 1));\n line.moveBase(line.pos + (space(line.text.charCodeAt(line.pos + 1)) ? 2 : 1));\n bl.end = cx.lineStart + line.text.length;\n return true;\n },\n [Type.ListItem](bl, _cx, line) {\n if (line.indent < line.baseIndent + bl.value && line.next > -1)\n return false;\n line.moveBaseColumn(line.baseIndent + bl.value);\n return true;\n },\n [Type.OrderedList]: skipForList,\n [Type.BulletList]: skipForList,\n [Type.Document]() { return true; }\n};\nfunction space(ch) { return ch == 32 || ch == 9 || ch == 10 || ch == 13; }\nfunction skipSpace(line, i = 0) {\n while (i < line.length && space(line.charCodeAt(i)))\n i++;\n return i;\n}\nfunction skipSpaceBack(line, i, to) {\n while (i > to && space(line.charCodeAt(i - 1)))\n i--;\n return i;\n}\nfunction isFencedCode(line) {\n if (line.next != 96 && line.next != 126 /* '`~' */)\n return -1;\n let pos = line.pos + 1;\n while (pos < line.text.length && line.text.charCodeAt(pos) == line.next)\n pos++;\n if (pos < line.pos + 3)\n return -1;\n if (line.next == 96)\n for (let i = pos; i < line.text.length; i++)\n if (line.text.charCodeAt(i) == 96)\n return -1;\n return pos;\n}\nfunction isBlockquote(line) {\n return line.next != 62 /* '>' */ ? -1 : line.text.charCodeAt(line.pos + 1) == 32 ? 2 : 1;\n}\nfunction isHorizontalRule(line, cx, breaking) {\n if (line.next != 42 && line.next != 45 && line.next != 95 /* '_-*' */)\n return -1;\n let count = 1;\n for (let pos = line.pos + 1; pos < line.text.length; pos++) {\n let ch = line.text.charCodeAt(pos);\n if (ch == line.next)\n count++;\n else if (!space(ch))\n return -1;\n }\n // Setext headers take precedence\n if (breaking && line.next == 45 && isSetextUnderline(line) > -1 && line.depth == cx.stack.length &&\n cx.parser.leafBlockParsers.indexOf(DefaultLeafBlocks.SetextHeading) > -1)\n return -1;\n return count < 3 ? -1 : 1;\n}\nfunction inList(cx, type) {\n for (let i = cx.stack.length - 1; i >= 0; i--)\n if (cx.stack[i].type == type)\n return true;\n return false;\n}\nfunction isBulletList(line, cx, breaking) {\n return (line.next == 45 || line.next == 43 || line.next == 42 /* '-+*' */) &&\n (line.pos == line.text.length - 1 || space(line.text.charCodeAt(line.pos + 1))) &&\n (!breaking || inList(cx, Type.BulletList) || line.skipSpace(line.pos + 2) < line.text.length) ? 1 : -1;\n}\nfunction isOrderedList(line, cx, breaking) {\n let pos = line.pos, next = line.next;\n for (;;) {\n if (next >= 48 && next <= 57 /* '0-9' */)\n pos++;\n else\n break;\n if (pos == line.text.length)\n return -1;\n next = line.text.charCodeAt(pos);\n }\n if (pos == line.pos || pos > line.pos + 9 ||\n (next != 46 && next != 41 /* '.)' */) ||\n (pos < line.text.length - 1 && !space(line.text.charCodeAt(pos + 1))) ||\n breaking && !inList(cx, Type.OrderedList) &&\n (line.skipSpace(pos + 1) == line.text.length || pos > line.pos + 1 || line.next != 49 /* '1' */))\n return -1;\n return pos + 1 - line.pos;\n}\nfunction isAtxHeading(line) {\n if (line.next != 35 /* '#' */)\n return -1;\n let pos = line.pos + 1;\n while (pos < line.text.length && line.text.charCodeAt(pos) == 35)\n pos++;\n if (pos < line.text.length && line.text.charCodeAt(pos) != 32)\n return -1;\n let size = pos - line.pos;\n return size > 6 ? -1 : size;\n}\nfunction isSetextUnderline(line) {\n if (line.next != 45 && line.next != 61 /* '-=' */ || line.indent >= line.baseIndent + 4)\n return -1;\n let pos = line.pos + 1;\n while (pos < line.text.length && line.text.charCodeAt(pos) == line.next)\n pos++;\n let end = pos;\n while (pos < line.text.length && space(line.text.charCodeAt(pos)))\n pos++;\n return pos == line.text.length ? end : -1;\n}\nconst EmptyLine = /^[ \\t]*$/, CommentEnd = /-->/, ProcessingEnd = /\\?>/;\nconst HTMLBlockStyle = [\n [/^<(?:script|pre|style)(?:\\s|>|$)/i, /<\\/(?:script|pre|style)>/i],\n [/^\\s*<!--/, CommentEnd],\n [/^\\s*<\\?/, ProcessingEnd],\n [/^\\s*<![A-Z]/, />/],\n [/^\\s*<!\\[CDATA\\[/, /\\]\\]>/],\n [/^\\s*<\\/?(?:address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h1|h2|h3|h4|h5|h6|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul)(?:\\s|\\/?>|$)/i, EmptyLine],\n [/^\\s*(?:<\\/[a-z][\\w-]*\\s*>|<[a-z][\\w-]*(\\s+[a-z:_][\\w-.]*(?:\\s*=\\s*(?:[^\\s\"'=<>`]+|'[^']*'|\"[^\"]*\"))?)*\\s*>)\\s*$/i, EmptyLine]\n];\nfunction isHTMLBlock(line, _cx, breaking) {\n if (line.next != 60 /* '<' */)\n return -1;\n let rest = line.text.slice(line.pos);\n for (let i = 0, e = HTMLBlockStyle.length - (breaking ? 1 : 0); i < e; i++)\n if (HTMLBlockStyle[i][0].test(rest))\n return i;\n return -1;\n}\nfunction getListIndent(line, pos) {\n let indentAfter = line.countIndent(pos, line.pos, line.indent);\n let indented = line.countIndent(line.skipSpace(pos), pos, indentAfter);\n return indented >= indentAfter + 5 ? indentAfter + 1 : indented;\n}\nfunction addCodeText(marks, from, to) {\n let last = marks.length - 1;\n if (last >= 0 && marks[last].to == from && marks[last].type == Type.CodeText)\n marks[last].to = to;\n else\n marks.push(elt(Type.CodeText, from, to));\n}\n// Rules for parsing blocks. A return value of false means the rule\n// doesn't apply here, true means it does. When true is returned and\n// `p.line` has been updated, the rule is assumed to have consumed a\n// leaf block. Otherwise, it is assumed to have opened a context.\nconst DefaultBlockParsers = {\n LinkReference: undefined,\n IndentedCode(cx, line) {\n let base = line.baseIndent + 4;\n if (line.indent < base)\n return false;\n let start = line.findColumn(base);\n let from = cx.lineStart + start, to = cx.lineStart + line.text.length;\n let marks = [], pendingMarks = [];\n addCodeText(marks, from, to);\n while (cx.nextLine() && line.depth >= cx.stack.length) {\n if (line.pos == line.text.length) { // Empty\n addCodeText(pendingMarks, cx.lineStart - 1, cx.lineStart);\n for (let m of line.markers)\n pendingMarks.push(m);\n }\n else if (line.indent < base) {\n break;\n }\n else {\n if (pendingMarks.length) {\n for (let m of pendingMarks) {\n if (m.type == Type.CodeText)\n addCodeText(marks, m.from, m.to);\n else\n marks.push(m);\n }\n pendingMarks = [];\n }\n addCodeText(marks, cx.lineStart - 1, cx.lineStart);\n for (let m of line.markers)\n marks.push(m);\n to = cx.lineStart + line.text.length;\n let codeStart = cx.lineStart + line.findColumn(line.baseIndent + 4);\n if (codeStart < to)\n addCodeText(marks, codeStart, to);\n }\n }\n if (pendingMarks.length) {\n pendingMarks = pendingMarks.filter(m => m.type != Type.CodeText);\n if (pendingMarks.length)\n line.markers = pendingMarks.concat(line.markers);\n }\n cx.addNode(cx.buffer.writeElements(marks, -from).finish(Type.CodeBlock, to - from), from);\n return true;\n },\n FencedCode(cx, line) {\n let fenceEnd = isFencedCode(line);\n if (fenceEnd < 0)\n return false;\n let from = cx.lineStart + line.pos, ch = line.next, len = fenceEnd - line.pos;\n let infoFrom = line.skipSpace(fenceEnd), infoTo = skipSpaceBack(line.text, line.text.length, infoFrom);\n let marks = [elt(Type.CodeMark, from, from + len)];\n if (infoFrom < infoTo)\n marks.push(elt(Type.CodeInfo, cx.lineStart + infoFrom, cx.lineStart + infoTo));\n for (let first = true, empty = true, hasLine = false; cx.nextLine() && line.depth >= cx.stack.length; first = false) {\n let i = line.pos;\n if (line.indent - line.baseIndent < 4)\n while (i < line.text.length && line.text.charCodeAt(i) == ch)\n i++;\n if (i - line.pos >= len && line.skipSpace(i) == line.text.length) {\n for (let m of line.markers)\n marks.push(m);\n if (empty && hasLine)\n addCodeText(marks, cx.lineStart - 1, cx.lineStart);\n marks.push(elt(Type.CodeMark, cx.lineStart + line.pos, cx.lineStart + i));\n cx.nextLine();\n break;\n }\n else {\n hasLine = true;\n if (!first) {\n addCodeText(marks, cx.lineStart - 1, cx.lineStart);\n empty = false;\n }\n for (let m of line.markers)\n marks.push(m);\n let textStart = cx.lineStart + line.basePos, textEnd = cx.lineStart + line.text.length;\n if (textStart < textEnd) {\n addCodeText(marks, textStart, textEnd);\n empty = false;\n }\n }\n }\n cx.addNode(cx.buffer.writeElements(marks, -from)\n .finish(Type.FencedCode, cx.prevLineEnd() - from), from);\n return true;\n },\n Blockquote(cx, line) {\n let size = isBlockquote(line);\n if (size < 0)\n return false;\n cx.startContext(Type.Blockquote, line.pos);\n cx.addNode(Type.QuoteMark, cx.lineStart + line.pos, cx.lineStart + line.pos + 1);\n line.moveBase(line.pos + size);\n return null;\n },\n HorizontalRule(cx, line) {\n if (isHorizontalRule(line, cx, false) < 0)\n return false;\n let from = cx.lineStart + line.pos;\n cx.nextLine();\n cx.addNode(Type.HorizontalRule, from);\n return true;\n },\n BulletList(cx, line) {\n let size = isBulletList(line, cx, false);\n if (size < 0)\n return false;\n if (cx.block.type != Type.BulletList)\n cx.startContext(Type.BulletList, line.basePos, line.next);\n let newBase = getListIndent(line, line.pos + 1);\n cx.startContext(Type.ListItem, line.basePos, newBase - line.baseIndent);\n cx.addNode(Type.ListMark, cx.lineStart + line.pos, cx.lineStart + line.pos + size);\n line.moveBaseColumn(newBase);\n return null;\n },\n OrderedList(cx, line) {\n let size = isOrderedList(line, cx, false);\n if (size < 0)\n return false;\n if (cx.block.type != Type.OrderedList)\n cx.startContext(Type.OrderedList, line.basePos, line.text.charCodeAt(line.pos + size - 1));\n let newBase = getListIndent(line, line.pos + size);\n cx.startContext(Type.ListItem, line.basePos, newBase - line.baseIndent);\n cx.addNode(Type.ListMark, cx.lineStart + line.pos, cx.lineStart + line.pos + size);\n line.moveBaseColumn(newBase);\n return null;\n },\n ATXHeading(cx, line) {\n let size = isAtxHeading(line);\n if (size < 0)\n return false;\n let off = line.pos, from = cx.lineStart + off;\n let endOfSpace = skipSpaceBack(line.text, line.text.length, off), after = endOfSpace;\n while (after > off && line.text.charCodeAt(after - 1) == line.next)\n after--;\n if (after == endOfSpace || after == off || !space(line.text.charCodeAt(after - 1)))\n after = line.text.length;\n let buf = cx.buffer\n .write(Type.HeaderMark, 0, size)\n .writeElements(cx.parser.parseInline(line.text.slice(off + size + 1, after), from + size + 1), -from);\n if (after < line.text.length)\n buf.write(Type.HeaderMark, after - off, endOfSpace - off);\n let node = buf.finish(Type.ATXHeading1 - 1 + size, line.text.length - off);\n cx.nextLine();\n cx.addNode(node, from);\n return true;\n },\n HTMLBlock(cx, line) {\n let type = isHTMLBlock(line, cx, false);\n if (type < 0)\n return false;\n let from = cx.lineStart + line.pos, end = HTMLBlockStyle[type][1];\n let marks = [], trailing = end != EmptyLine;\n while (!end.test(line.text) && cx.nextLine()) {\n if (line.depth < cx.stack.length) {\n trailing = false;\n break;\n }\n for (let m of line.markers)\n marks.push(m);\n }\n if (trailing)\n cx.nextLine();\n let nodeType = end == CommentEnd ? Type.CommentBlock : end == ProcessingEnd ? Type.ProcessingInstructionBlock : Type.HTMLBlock;\n let to = cx.prevLineEnd();\n cx.addNode(cx.buffer.writeElements(marks, -from).finish(nodeType, to - from), from);\n return true;\n },\n SetextHeading: undefined // Specifies relative precedence for block-continue function\n};\n// This implements a state machine that incrementally parses link references. At each\n// next line, it looks ahead to see if the line continues the reference or not. If it\n// doesn't and a valid link is available ending before that line, it finishes that.\n// Similarly, on `finish` (when the leaf is terminated by external circumstances), it\n// creates a link reference if there's a valid reference up to the current point.\nclass LinkReferenceParser {\n constructor(leaf) {\n this.stage = 0 /* RefStage.Start */;\n this.elts = [];\n this.pos = 0;\n this.start = leaf.start;\n this.advance(leaf.content);\n }\n nextLine(cx, line, leaf) {\n if (this.stage == -1 /* RefStage.Failed */)\n return false;\n let content = leaf.content + \"\\n\" + line.scrub();\n let finish = this.advance(content);\n if (finish > -1 && finish < content.length)\n return this.complete(cx, leaf, finish);\n return false;\n }\n finish(cx, leaf) {\n if ((this.stage == 2 /* RefStage.Link */ || this.stage == 3 /* RefStage.Title */) && skipSpace(leaf.content, this.pos) == leaf.content.length)\n return this.complete(cx, leaf, leaf.content.length);\n return false;\n }\n complete(cx, leaf, len) {\n cx.addLeafElement(leaf, elt(Type.LinkReference, this.start, this.start + len, this.elts));\n return true;\n }\n nextStage(elt) {\n if (elt) {\n this.pos = elt.to - this.start;\n this.elts.push(elt);\n this.stage++;\n return true;\n }\n if (elt === false)\n this.stage = -1 /* RefStage.Failed */;\n return false;\n }\n advance(content) {\n for (;;) {\n if (this.stage == -1 /* RefStage.Failed */) {\n return -1;\n }\n else if (this.stage == 0 /* RefStage.Start */) {\n if (!this.nextStage(parseLinkLabel(content, this.pos, this.start, true)))\n return -1;\n if (content.charCodeAt(this.pos) != 58 /* ':' */)\n return this.stage = -1 /* RefStage.Failed */;\n this.elts.push(elt(Type.LinkMark, this.pos + this.start, this.pos + this.start + 1));\n this.pos++;\n }\n else if (this.stage == 1 /* RefStage.Label */) {\n if (!this.nextStage(parseURL(content, skipSpace(content, this.pos), this.start)))\n return -1;\n }\n else if (this.stage == 2 /* RefStage.Link */) {\n let skip = skipSpace(content, this.pos), end = 0;\n if (skip > this.pos) {\n let title = parseLinkTitle(content, skip, this.start);\n if (title) {\n let titleEnd = lineEnd(content, title.to - this.start);\n if (titleEnd > 0) {\n this.nextStage(title);\n end = titleEnd;\n }\n }\n }\n if (!end)\n end = lineEnd(content, this.pos);\n return end > 0 && end < content.length ? end : -1;\n }\n else { // RefStage.Title\n return lineEnd(content, this.pos);\n }\n }\n }\n}\nfunction lineEnd(text, pos) {\n for (; pos < text.length; pos++) {\n let next = text.charCodeAt(pos);\n if (next == 10)\n break;\n if (!space(next))\n return -1;\n }\n return pos;\n}\nclass SetextHeadingParser {\n nextLine(cx, line, leaf) {\n let underline = line.depth < cx.stack.length ? -1 : isSetextUnderline(line);\n let next = line.next;\n if (underline < 0)\n return false;\n let underlineMark = elt(Type.HeaderMark, cx.lineStart + line.pos, cx.lineStart + underline);\n cx.nextLine();\n cx.addLeafElement(leaf, elt(next == 61 ? Type.SetextHeading1 : Type.SetextHeading2, leaf.start, cx.prevLineEnd(), [\n ...cx.parser.parseInline(leaf.content, leaf.start),\n underlineMark\n ]));\n return true;\n }\n finish() {\n return false;\n }\n}\nconst DefaultLeafBlocks = {\n LinkReference(_, leaf) { return leaf.content.charCodeAt(0) == 91 /* '[' */ ? new LinkReferenceParser(leaf) : null; },\n SetextHeading() { return new SetextHeadingParser; }\n};\nconst DefaultEndLeaf = [\n (_, line) => isAtxHeading(line) >= 0,\n (_, line) => isFencedCode(line) >= 0,\n (_, line) => isBlockquote(line) >= 0,\n (p, line) => isBulletList(line, p, true) >= 0,\n (p, line) => isOrderedList(line, p, true) >= 0,\n (p, line) => isHorizontalRule(line, p, true) >= 0,\n (p, line) => isHTMLBlock(line, p, true) >= 0\n];\nconst scanLineResult = { text: \"\", end: 0 };\n/**\nBlock-level parsing functions get access to this context object.\n*/\nclass BlockContext {\n /**\n @internal\n */\n constructor(\n /**\n The parser configuration used.\n */\n parser, \n /**\n @internal\n */\n input, fragments, \n /**\n @internal\n */\n ranges) {\n this.parser = parser;\n this.input = input;\n this.ranges = ranges;\n this.line = new Line();\n this.atEnd = false;\n /**\n For reused nodes on gaps, we can't directly put the original\n node into the tree, since that may be bigger than its parent.\n When this happens, we create a dummy tree that is replaced by\n the proper node in `injectGaps` @internal\n */\n this.reusePlaceholders = new Map;\n this.stoppedAt = null;\n /**\n The range index that absoluteLineStart points into @internal\n */\n this.rangeI = 0;\n this.to = ranges[ranges.length - 1].to;\n this.lineStart = this.absoluteLineStart = this.absoluteLineEnd = ranges[0].from;\n this.block = CompositeBlock.create(Type.Document, 0, this.lineStart, 0, 0);\n this.stack = [this.block];\n this.fragments = fragments.length ? new FragmentCursor(fragments, input) : null;\n this.readLine();\n }\n get parsedPos() {\n return this.absoluteLineStart;\n }\n advance() {\n if (this.stoppedAt != null && this.absoluteLineStart > this.stoppedAt)\n return this.finish();\n let { line } = this;\n for (;;) {\n for (let markI = 0;;) {\n let next = line.depth < this.stack.length ? this.stack[this.stack.length - 1] : null;\n while (markI < line.markers.length && (!next || line.markers[markI].from < next.end)) {\n let mark = line.markers[markI++];\n this.addNode(mark.type, mark.from, mark.to);\n }\n if (!next)\n break;\n this.finishContext();\n }\n if (line.pos < line.text.length)\n break;\n // Empty line\n if (!this.nextLine())\n return this.finish();\n }\n if (this.fragments && this.reuseFragment(line.basePos))\n return null;\n start: for (;;) {\n for (let type of this.parser.blockParsers)\n if (type) {\n let result = type(this, line);\n if (result != false) {\n if (result == true)\n return null;\n line.forward();\n continue start;\n }\n }\n break;\n }\n let leaf = new LeafBlock(this.lineStart + line.pos, line.text.slice(line.pos));\n for (let parse of this.parser.leafBlockParsers)\n if (parse) {\n let parser = parse(this, leaf);\n if (parser)\n leaf.parsers.push(parser);\n }\n lines: while (this.nextLine()) {\n if (line.pos == line.text.length)\n break;\n if (line.indent < line.baseIndent + 4) {\n for (let stop of this.parser.endLeafBlock)\n if (stop(this, line, leaf))\n break lines;\n }\n for (let parser of leaf.parsers)\n if (parser.nextLine(this, line, leaf))\n return null;\n leaf.content += \"\\n\" + line.scrub();\n for (let m of line.markers)\n leaf.marks.push(m);\n }\n this.finishLeaf(leaf);\n return null;\n }\n stopAt(pos) {\n if (this.stoppedAt != null && this.stoppedAt < pos)\n throw new RangeError(\"Can't move stoppedAt forward\");\n this.stoppedAt = pos;\n }\n reuseFragment(start) {\n if (!this.fragments.moveTo(this.absoluteLineStart + start, this.absoluteLineStart) ||\n !this.fragments.matches(this.block.hash))\n return false;\n let taken = this.fragments.takeNodes(this);\n if (!taken)\n return false;\n this.absoluteLineStart += taken;\n this.lineStart = toRelative(this.absoluteLineStart, this.ranges);\n this.moveRangeI();\n if (this.absoluteLineStart < this.to) {\n this.lineStart++;\n this.absoluteLineStart++;\n this.readLine();\n }\n else {\n this.atEnd = true;\n this.readLine();\n }\n return true;\n }\n /**\n The number of parent blocks surrounding the current block.\n */\n get depth() {\n return this.stack.length;\n }\n /**\n Get the type of the parent block at the given depth. When no\n depth is passed, return the type of the innermost parent.\n */\n parentType(depth = this.depth - 1) {\n return this.parser.nodeSet.types[this.stack[depth].type];\n }\n /**\n Move to the next input line. This should only be called by\n (non-composite) [block parsers](#BlockParser.parse) that consume\n the line directly, or leaf block parser\n [`nextLine`](#LeafBlockParser.nextLine) methods when they\n consume the current line (and return true).\n */\n nextLine() {\n this.lineStart += this.line.text.length;\n if (this.absoluteLineEnd >= this.to) {\n this.absoluteLineStart = this.absoluteLineEnd;\n this.atEnd = true;\n this.readLine();\n return false;\n }\n else {\n this.lineStart++;\n this.absoluteLineStart = this.absoluteLineEnd + 1;\n this.moveRangeI();\n this.readLine();\n return true;\n }\n }\n /**\n Retrieve the text of the line after the current one, without\n actually moving the context's current line forward.\n */\n peekLine() {\n return this.scanLine(this.absoluteLineEnd + 1).text;\n }\n moveRangeI() {\n while (this.rangeI < this.ranges.length - 1 && this.absoluteLineStart >= this.ranges[this.rangeI].to) {\n this.rangeI++;\n this.absoluteLineStart = Math.max(this.absoluteLineStart, this.ranges[this.rangeI].from);\n }\n }\n /**\n @internal\n Collect the text for the next line.\n */\n scanLine(start) {\n let r = scanLineResult;\n r.end = start;\n if (start >= this.to) {\n r.text = \"\";\n }\n else {\n r.text = this.lineChunkAt(start);\n r.end += r.text.length;\n if (this.ranges.length > 1) {\n let textOffset = this.absoluteLineStart, rangeI = this.rangeI;\n while (this.ranges[rangeI].to < r.end) {\n rangeI++;\n let nextFrom = this.ranges[rangeI].from;\n let after = this.lineChunkAt(nextFrom);\n r.end = nextFrom + after.length;\n r.text = r.text.slice(0, this.ranges[rangeI - 1].to - textOffset) + after;\n textOffset = r.end - r.text.length;\n }\n }\n }\n return r;\n }\n /**\n @internal\n Populate this.line with the content of the next line. Skip\n leading characters covered by composite blocks.\n */\n readLine() {\n let { line } = this, { text, end } = this.scanLine(this.absoluteLineStart);\n this.absoluteLineEnd = end;\n line.reset(text);\n for (; line.depth < this.stack.length; line.depth++) {\n let cx = this.stack[line.depth], handler = this.parser.skipContextMarkup[cx.type];\n if (!handler)\n throw new Error(\"Unhandled block context \" + Type[cx.type]);\n let marks = this.line.markers.length;\n if (!handler(cx, this, line)) {\n if (this.line.markers.length > marks)\n cx.end = this.line.markers[this.line.markers.length - 1].to;\n line.forward();\n break;\n }\n line.forward();\n }\n }\n lineChunkAt(pos) {\n let next = this.input.chunk(pos), text;\n if (!this.input.lineChunks) {\n let eol = next.indexOf(\"\\n\");\n text = eol < 0 ? next : next.slice(0, eol);\n }\n else {\n text = next == \"\\n\" ? \"\" : next;\n }\n return pos + text.length > this.to ? text.slice(0, this.to - pos) : text;\n }\n /**\n The end position of the previous line.\n */\n prevLineEnd() { return this.atEnd ? this.lineStart : this.lineStart - 1; }\n /**\n @internal\n */\n startContext(type, start, value = 0) {\n this.block = CompositeBlock.create(type, value, this.lineStart + start, this.block.hash, this.lineStart + this.line.text.length);\n this.stack.push(this.block);\n }\n /**\n Start a composite block. Should only be called from [block\n parser functions](#BlockParser.parse) that return null.\n */\n startComposite(type, start, value = 0) {\n this.startContext(this.parser.getNodeType(type), start, value);\n }\n /**\n @internal\n */\n addNode(block, from, to) {\n if (typeof block == \"number\")\n block = new Tree(this.parser.nodeSet.types[block], none, none, (to !== null && to !== void 0 ? to : this.prevLineEnd()) - from);\n this.block.addChild(block, from - this.block.from);\n }\n /**\n Add a block element. Can be called by [block\n parsers](#BlockParser.parse).\n */\n addElement(elt) {\n this.block.addChild(elt.toTree(this.parser.nodeSet), elt.from - this.block.from);\n }\n /**\n Add a block element from a [leaf parser](#LeafBlockParser). This\n makes sure any extra composite block markup (such as blockquote\n markers) inside the block are also added to the syntax tree.\n */\n addLeafElement(leaf, elt) {\n this.addNode(this.buffer\n .writeElements(injectMarks(elt.children, leaf.marks), -elt.from)\n .finish(elt.type, elt.to - elt.from), elt.from);\n }\n /**\n @internal\n */\n finishContext() {\n let cx = this.stack.pop();\n let top = this.stack[this.stack.length - 1];\n top.addChild(cx.toTree(this.parser.nodeSet), cx.from - top.from);\n this.block = top;\n }\n finish() {\n while (this.stack.length > 1)\n this.finishContext();\n return this.addGaps(this.block.toTree(this.parser.nodeSet, this.lineStart));\n }\n addGaps(tree) {\n return this.ranges.length > 1 ?\n injectGaps(this.ranges, 0, tree.topNode, this.ranges[0].from, this.reusePlaceholders) : tree;\n }\n /**\n @internal\n */\n finishLeaf(leaf) {\n for (let parser of leaf.parsers)\n if (parser.finish(this, leaf))\n return;\n let inline = injectMarks(this.parser.parseInline(leaf.content, leaf.start), leaf.marks);\n this.addNode(this.buffer\n .writeElements(inline, -leaf.start)\n .finish(Type.Paragraph, leaf.content.length), leaf.start);\n }\n elt(type, from, to, children) {\n if (typeof type == \"string\")\n return elt(this.parser.getNodeType(type), from, to, children);\n return new TreeElement(type, from);\n }\n /**\n @internal\n */\n get buffer() { return new Buffer(this.parser.nodeSet); }\n}\nfunction injectGaps(ranges, rangeI, tree, offset, dummies) {\n let rangeEnd = ranges[rangeI].to;\n let children = [], positions = [], start = tree.from + offset;\n function movePastNext(upto, inclusive) {\n while (inclusive ? upto >= rangeEnd : upto > rangeEnd) {\n let size = ranges[rangeI + 1].from - rangeEnd;\n offset += size;\n upto += size;\n rangeI++;\n rangeEnd = ranges[rangeI].to;\n }\n }\n for (let ch = tree.firstChild; ch; ch = ch.nextSibling) {\n movePastNext(ch.from + offset, true);\n let from = ch.from + offset, node, reuse = dummies.get(ch.tree);\n if (reuse) {\n node = reuse;\n }\n else if (ch.to + offset > rangeEnd) {\n node = injectGaps(ranges, rangeI, ch, offset, dummies);\n movePastNext(ch.to + offset, false);\n }\n else {\n node = ch.toTree();\n }\n children.push(node);\n positions.push(from - start);\n }\n movePastNext(tree.to + offset, false);\n return new Tree(tree.type, children, positions, tree.to + offset - start, tree.tree ? tree.tree.propValues : undefined);\n}\n/**\nA Markdown parser configuration.\n*/\nclass MarkdownParser extends Parser {\n /**\n @internal\n */\n constructor(\n /**\n The parser's syntax [node\n types](https://lezer.codemirror.net/docs/ref/#common.NodeSet).\n */\n nodeSet, \n /**\n @internal\n */\n blockParsers, \n /**\n @internal\n */\n leafBlockParsers, \n /**\n @internal\n */\n blockNames, \n /**\n @internal\n */\n endLeafBlock, \n /**\n @internal\n */\n skipContextMarkup, \n /**\n @internal\n */\n inlineParsers, \n /**\n @internal\n */\n inlineNames, \n /**\n @internal\n */\n wrappers) {\n super();\n this.nodeSet = nodeSet;\n this.blockParsers = blockParsers;\n this.leafBlockParsers = leafBlockParsers;\n this.blockNames = blockNames;\n this.endLeafBlock = endLeafBlock;\n this.skipContextMarkup = skipContextMarkup;\n this.inlineParsers = inlineParsers;\n this.inlineNames = inlineNames;\n this.wrappers = wrappers;\n /**\n @internal\n */\n this.nodeTypes = Object.create(null);\n for (let t of nodeSet.types)\n this.nodeTypes[t.name] = t.id;\n }\n createParse(input, fragments, ranges) {\n let parse = new BlockContext(this, input, fragments, ranges);\n for (let w of this.wrappers)\n parse = w(parse, input, fragments, ranges);\n return parse;\n }\n /**\n Reconfigure the parser.\n */\n configure(spec) {\n let config = resolveConfig(spec);\n if (!config)\n return this;\n let { nodeSet, skipContextMarkup } = this;\n let blockParsers = this.blockParsers.slice(), leafBlockParsers = this.leafBlockParsers.slice(), blockNames = this.blockNames.slice(), inlineParsers = this.inlineParsers.slice(), inlineNames = this.inlineNames.slice(), endLeafBlock = this.endLeafBlock.slice(), wrappers = this.wrappers;\n if (nonEmpty(config.defineNodes)) {\n skipContextMarkup = Object.assign({}, skipContextMarkup);\n let nodeTypes = nodeSet.types.slice(), styles;\n for (let s of config.defineNodes) {\n let { name, block, composite, style } = typeof s == \"string\" ? { name: s } : s;\n if (nodeTypes.some(t => t.name == name))\n continue;\n if (composite)\n skipContextMarkup[nodeTypes.length] =\n (bl, cx, line) => composite(cx, line, bl.value);\n let id = nodeTypes.length;\n let group = composite ? [\"Block\", \"BlockContext\"] : !block ? undefined\n : id >= Type.ATXHeading1 && id <= Type.SetextHeading2 ? [\"Block\", \"LeafBlock\", \"Heading\"] : [\"Block\", \"LeafBlock\"];\n nodeTypes.push(NodeType.define({\n id,\n name,\n props: group && [[NodeProp.group, group]]\n }));\n if (style) {\n if (!styles)\n styles = {};\n if (Array.isArray(style) || style instanceof Tag)\n styles[name] = style;\n else\n Object.assign(styles, style);\n }\n }\n nodeSet = new NodeSet(nodeTypes);\n if (styles)\n nodeSet = nodeSet.extend(styleTags(styles));\n }\n if (nonEmpty(config.props))\n nodeSet = nodeSet.extend(...config.props);\n if (nonEmpty(config.remove)) {\n for (let rm of config.remove) {\n let block = this.blockNames.indexOf(rm), inline = this.inlineNames.indexOf(rm);\n if (block > -1)\n blockParsers[block] = leafBlockParsers[block] = undefined;\n if (inline > -1)\n inlineParsers[inline] = undefined;\n }\n }\n if (nonEmpty(config.parseBlock)) {\n for (let spec of config.parseBlock) {\n let found = blockNames.indexOf(spec.name);\n if (found > -1) {\n blockParsers[found] = spec.parse;\n leafBlockParsers[found] = spec.leaf;\n }\n else {\n let pos = spec.before ? findName(blockNames, spec.before)\n : spec.after ? findName(blockNames, spec.after) + 1 : blockNames.length - 1;\n blockParsers.splice(pos, 0, spec.parse);\n leafBlockParsers.splice(pos, 0, spec.leaf);\n blockNames.splice(pos, 0, spec.name);\n }\n if (spec.endLeaf)\n endLeafBlock.push(spec.endLeaf);\n }\n }\n if (nonEmpty(config.parseInline)) {\n for (let spec of config.parseInline) {\n let found = inlineNames.indexOf(spec.name);\n if (found > -1) {\n inlineParsers[found] = spec.parse;\n }\n else {\n let pos = spec.before ? findName(inlineNames, spec.before)\n : spec.after ? findName(inlineNames, spec.after) + 1 : inlineNames.length - 1;\n inlineParsers.splice(pos, 0, spec.parse);\n inlineNames.splice(pos, 0, spec.name);\n }\n }\n }\n if (config.wrap)\n wrappers = wrappers.concat(config.wrap);\n return new MarkdownParser(nodeSet, blockParsers, leafBlockParsers, blockNames, endLeafBlock, skipContextMarkup, inlineParsers, inlineNames, wrappers);\n }\n /**\n @internal\n */\n getNodeType(name) {\n let found = this.nodeTypes[name];\n if (found == null)\n throw new RangeError(`Unknown node type '${name}'`);\n return found;\n }\n /**\n Parse the given piece of inline text at the given offset,\n returning an array of [`Element`](#Element) objects representing\n the inline content.\n */\n parseInline(text, offset) {\n let cx = new InlineContext(this, text, offset);\n outer: for (let pos = offset; pos < cx.end;) {\n let next = cx.char(pos);\n for (let token of this.inlineParsers)\n if (token) {\n let result = token(cx, next, pos);\n if (result >= 0) {\n pos = result;\n continue outer;\n }\n }\n pos++;\n }\n return cx.resolveMarkers(0);\n }\n}\nfunction nonEmpty(a) {\n return a != null && a.length > 0;\n}\nfunction resolveConfig(spec) {\n if (!Array.isArray(spec))\n return spec;\n if (spec.length == 0)\n return null;\n let conf = resolveConfig(spec[0]);\n if (spec.length == 1)\n return conf;\n let rest = resolveConfig(spec.slice(1));\n if (!rest || !conf)\n return conf || rest;\n let conc = (a, b) => (a || none).concat(b || none);\n let wrapA = conf.wrap, wrapB = rest.wrap;\n return {\n props: conc(conf.props, rest.props),\n defineNodes: conc(conf.defineNodes, rest.defineNodes),\n parseBlock: conc(conf.parseBlock, rest.parseBlock),\n parseInline: conc(conf.parseInline, rest.parseInline),\n remove: conc(conf.remove, rest.remove),\n wrap: !wrapA ? wrapB : !wrapB ? wrapA :\n (inner, input, fragments, ranges) => wrapA(wrapB(inner, input, fragments, ranges), input, fragments, ranges)\n };\n}\nfunction findName(names, name) {\n let found = names.indexOf(name);\n if (found < 0)\n throw new RangeError(`Position specified relative to unknown parser ${name}`);\n return found;\n}\nlet nodeTypes = [NodeType.none];\nfor (let i = 1, name; name = Type[i]; i++) {\n nodeTypes[i] = NodeType.define({\n id: i,\n name,\n props: i >= Type.Escape ? [] : [[NodeProp.group, i in DefaultSkipMarkup ? [\"Block\", \"BlockContext\"] : [\"Block\", \"LeafBlock\"]]],\n top: name == \"Document\"\n });\n}\nconst none = [];\nclass Buffer {\n constructor(nodeSet) {\n this.nodeSet = nodeSet;\n this.content = [];\n this.nodes = [];\n }\n write(type, from, to, children = 0) {\n this.content.push(type, from, to, 4 + children * 4);\n return this;\n }\n writeElements(elts, offset = 0) {\n for (let e of elts)\n e.writeTo(this, offset);\n return this;\n }\n finish(type, length) {\n return Tree.build({\n buffer: this.content,\n nodeSet: this.nodeSet,\n reused: this.nodes,\n topID: type,\n length\n });\n }\n}\n/**\nElements are used to compose syntax nodes during parsing.\n*/\nclass Element {\n /**\n @internal\n */\n constructor(\n /**\n The node's\n [id](https://lezer.codemirror.net/docs/ref/#common.NodeType.id).\n */\n type, \n /**\n The start of the node, as an offset from the start of the document.\n */\n from, \n /**\n The end of the node.\n */\n to, \n /**\n The node's child nodes @internal\n */\n children = none) {\n this.type = type;\n this.from = from;\n this.to = to;\n this.children = children;\n }\n /**\n @internal\n */\n writeTo(buf, offset) {\n let startOff = buf.content.length;\n buf.writeElements(this.children, offset);\n buf.content.push(this.type, this.from + offset, this.to + offset, buf.content.length + 4 - startOff);\n }\n /**\n @internal\n */\n toTree(nodeSet) {\n return new Buffer(nodeSet).writeElements(this.children, -this.from).finish(this.type, this.to - this.from);\n }\n}\nclass TreeElement {\n constructor(tree, from) {\n this.tree = tree;\n this.from = from;\n }\n get to() { return this.from + this.tree.length; }\n get type() { return this.tree.type.id; }\n get children() { return none; }\n writeTo(buf, offset) {\n buf.nodes.push(this.tree);\n buf.content.push(buf.nodes.length - 1, this.from + offset, this.to + offset, -1);\n }\n toTree() { return this.tree; }\n}\nfunction elt(type, from, to, children) {\n return new Element(type, from, to, children);\n}\nconst EmphasisUnderscore = { resolve: \"Emphasis\", mark: \"EmphasisMark\" };\nconst EmphasisAsterisk = { resolve: \"Emphasis\", mark: \"EmphasisMark\" };\nconst LinkStart = {}, ImageStart = {};\nclass InlineDelimiter {\n constructor(type, from, to, side) {\n this.type = type;\n this.from = from;\n this.to = to;\n this.side = side;\n }\n}\nconst Escapable = \"!\\\"#$%&'()*+,-./:;<=>?@[\\\\]^_`{|}~\";\nlet Punctuation = /[!\"#$%&'()*+,\\-.\\/:;<=>?@\\[\\\\\\]^_`{|}~\\xA1\\u2010-\\u2027]/;\ntry {\n Punctuation = new RegExp(\"[\\\\p{S}|\\\\p{P}]\", \"u\");\n}\ncatch (_) { }\nconst DefaultInline = {\n Escape(cx, next, start) {\n if (next != 92 /* '\\\\' */ || start == cx.end - 1)\n return -1;\n let escaped = cx.char(start + 1);\n for (let i = 0; i < Escapable.length; i++)\n if (Escapable.charCodeAt(i) == escaped)\n return cx.append(elt(Type.Escape, start, start + 2));\n return -1;\n },\n Entity(cx, next, start) {\n if (next != 38 /* '&' */)\n return -1;\n let m = /^(?:#\\d+|#x[a-f\\d]+|\\w+);/i.exec(cx.slice(start + 1, start + 31));\n return m ? cx.append(elt(Type.Entity, start, start + 1 + m[0].length)) : -1;\n },\n InlineCode(cx, next, start) {\n if (next != 96 /* '`' */ || start && cx.char(start - 1) == 96)\n return -1;\n let pos = start + 1;\n while (pos < cx.end && cx.char(pos) == 96)\n pos++;\n let size = pos - start, curSize = 0;\n for (; pos < cx.end; pos++) {\n if (cx.char(pos) == 96) {\n curSize++;\n if (curSize == size && cx.char(pos + 1) != 96)\n return cx.append(elt(Type.InlineCode, start, pos + 1, [\n elt(Type.CodeMark, start, start + size),\n elt(Type.CodeMark, pos + 1 - size, pos + 1)\n ]));\n }\n else {\n curSize = 0;\n }\n }\n return -1;\n },\n HTMLTag(cx, next, start) {\n if (next != 60 /* '<' */ || start == cx.end - 1)\n return -1;\n let after = cx.slice(start + 1, cx.end);\n let url = /^(?:[a-z][-\\w+.]+:[^\\s>]+|[a-z\\d.!#$%&'*+/=?^_`{|}~-]+@[a-z\\d](?:[a-z\\d-]{0,61}[a-z\\d])?(?:\\.[a-z\\d](?:[a-z\\d-]{0,61}[a-z\\d])?)*)>/i.exec(after);\n if (url) {\n return cx.append(elt(Type.Autolink, start, start + 1 + url[0].length, [\n elt(Type.LinkMark, start, start + 1),\n // url[0] includes the closing bracket, so exclude it from this slice\n elt(Type.URL, start + 1, start + url[0].length),\n elt(Type.LinkMark, start + url[0].length, start + 1 + url[0].length)\n ]));\n }\n let comment = /^!--[^>](?:-[^-]|[^-])*?-->/i.exec(after);\n if (comment)\n return cx.append(elt(Type.Comment, start, start + 1 + comment[0].length));\n let procInst = /^\\?[^]*?\\?>/.exec(after);\n if (procInst)\n return cx.append(elt(Type.ProcessingInstruction, start, start + 1 + procInst[0].length));\n let m = /^(?:![A-Z][^]*?>|!\\[CDATA\\[[^]*?\\]\\]>|\\/\\s*[a-zA-Z][\\w-]*\\s*>|\\s*[a-zA-Z][\\w-]*(\\s+[a-zA-Z:_][\\w-.:]*(?:\\s*=\\s*(?:[^\\s\"'=<>`]+|'[^']*'|\"[^\"]*\"))?)*\\s*(\\/\\s*)?>)/.exec(after);\n if (!m)\n return -1;\n return cx.append(elt(Type.HTMLTag, start, start + 1 + m[0].length));\n },\n Emphasis(cx, next, start) {\n if (next != 95 && next != 42)\n return -1;\n let pos = start + 1;\n while (cx.char(pos) == next)\n pos++;\n let before = cx.slice(start - 1, start), after = cx.slice(pos, pos + 1);\n let pBefore = Punctuation.test(before), pAfter = Punctuation.test(after);\n let sBefore = /\\s|^$/.test(before), sAfter = /\\s|^$/.test(after);\n let leftFlanking = !sAfter && (!pAfter || sBefore || pBefore);\n let rightFlanking = !sBefore && (!pBefore || sAfter || pAfter);\n let canOpen = leftFlanking && (next == 42 || !rightFlanking || pBefore);\n let canClose = rightFlanking && (next == 42 || !leftFlanking || pAfter);\n return cx.append(new InlineDelimiter(next == 95 ? EmphasisUnderscore : EmphasisAsterisk, start, pos, (canOpen ? 1 /* Mark.Open */ : 0 /* Mark.None */) | (canClose ? 2 /* Mark.Close */ : 0 /* Mark.None */)));\n },\n HardBreak(cx, next, start) {\n if (next == 92 /* '\\\\' */ && cx.char(start + 1) == 10 /* '\\n' */)\n return cx.append(elt(Type.HardBreak, start, start + 2));\n if (next == 32) {\n let pos = start + 1;\n while (cx.char(pos) == 32)\n pos++;\n if (cx.char(pos) == 10 && pos >= start + 2)\n return cx.append(elt(Type.HardBreak, start, pos + 1));\n }\n return -1;\n },\n Link(cx, next, start) {\n return next == 91 /* '[' */ ? cx.append(new InlineDelimiter(LinkStart, start, start + 1, 1 /* Mark.Open */)) : -1;\n },\n Image(cx, next, start) {\n return next == 33 /* '!' */ && cx.char(start + 1) == 91 /* '[' */\n ? cx.append(new InlineDelimiter(ImageStart, start, start + 2, 1 /* Mark.Open */)) : -1;\n },\n LinkEnd(cx, next, start) {\n if (next != 93 /* ']' */)\n return -1;\n // Scanning back to the next link/image start marker\n for (let i = cx.parts.length - 1; i >= 0; i--) {\n let part = cx.parts[i];\n if (part instanceof InlineDelimiter && (part.type == LinkStart || part.type == ImageStart)) {\n // If this one has been set invalid (because it would produce\n // a nested link) or there's no valid link here ignore both.\n if (!part.side || cx.skipSpace(part.to) == start && !/[(\\[]/.test(cx.slice(start + 1, start + 2))) {\n cx.parts[i] = null;\n return -1;\n }\n // Finish the content and replace the entire range in\n // this.parts with the link/image node.\n let content = cx.takeContent(i);\n let link = cx.parts[i] = finishLink(cx, content, part.type == LinkStart ? Type.Link : Type.Image, part.from, start + 1);\n // Set any open-link markers before this link to invalid.\n if (part.type == LinkStart)\n for (let j = 0; j < i; j++) {\n let p = cx.parts[j];\n if (p instanceof InlineDelimiter && p.type == LinkStart)\n p.side = 0 /* Mark.None */;\n }\n return link.to;\n }\n }\n return -1;\n }\n};\nfunction finishLink(cx, content, type, start, startPos) {\n let { text } = cx, next = cx.char(startPos), endPos = startPos;\n content.unshift(elt(Type.LinkMark, start, start + (type == Type.Image ? 2 : 1)));\n content.push(elt(Type.LinkMark, startPos - 1, startPos));\n if (next == 40 /* '(' */) {\n let pos = cx.skipSpace(startPos + 1);\n let dest = parseURL(text, pos - cx.offset, cx.offset), title;\n if (dest) {\n pos = cx.skipSpace(dest.to);\n // The destination and title must be separated by whitespace\n if (pos != dest.to) {\n title = parseLinkTitle(text, pos - cx.offset, cx.offset);\n if (title)\n pos = cx.skipSpace(title.to);\n }\n }\n if (cx.char(pos) == 41 /* ')' */) {\n content.push(elt(Type.LinkMark, startPos, startPos + 1));\n endPos = pos + 1;\n if (dest)\n content.push(dest);\n if (title)\n content.push(title);\n content.push(elt(Type.LinkMark, pos, endPos));\n }\n }\n else if (next == 91 /* '[' */) {\n let label = parseLinkLabel(text, startPos - cx.offset, cx.offset, false);\n if (label) {\n content.push(label);\n endPos = label.to;\n }\n }\n return elt(type, start, endPos, content);\n}\n// These return `null` when falling off the end of the input, `false`\n// when parsing fails otherwise (for use in the incremental link\n// reference parser).\nfunction parseURL(text, start, offset) {\n let next = text.charCodeAt(start);\n if (next == 60 /* '<' */) {\n for (let pos = start + 1; pos < text.length; pos++) {\n let ch = text.charCodeAt(pos);\n if (ch == 62 /* '>' */)\n return elt(Type.URL, start + offset, pos + 1 + offset);\n if (ch == 60 || ch == 10 /* '<\\n' */)\n return false;\n }\n return null;\n }\n else {\n let depth = 0, pos = start;\n for (let escaped = false; pos < text.length; pos++) {\n let ch = text.charCodeAt(pos);\n if (space(ch)) {\n break;\n }\n else if (escaped) {\n escaped = false;\n }\n else if (ch == 40 /* '(' */) {\n depth++;\n }\n else if (ch == 41 /* ')' */) {\n if (!depth)\n break;\n depth--;\n }\n else if (ch == 92 /* '\\\\' */) {\n escaped = true;\n }\n }\n return pos > start ? elt(Type.URL, start + offset, pos + offset) : pos == text.length ? null : false;\n }\n}\nfunction parseLinkTitle(text, start, offset) {\n let next = text.charCodeAt(start);\n if (next != 39 && next != 34 && next != 40 /* '\"\\'(' */)\n return false;\n let end = next == 40 ? 41 : next;\n for (let pos = start + 1, escaped = false; pos < text.length; pos++) {\n let ch = text.charCodeAt(pos);\n if (escaped)\n escaped = false;\n else if (ch == end)\n return elt(Type.LinkTitle, start + offset, pos + 1 + offset);\n else if (ch == 92 /* '\\\\' */)\n escaped = true;\n }\n return null;\n}\nfunction parseLinkLabel(text, start, offset, requireNonWS) {\n for (let escaped = false, pos = start + 1, end = Math.min(text.length, pos + 999); pos < end; pos++) {\n let ch = text.charCodeAt(pos);\n if (escaped)\n escaped = false;\n else if (ch == 93 /* ']' */)\n return requireNonWS ? false : elt(Type.LinkLabel, start + offset, pos + 1 + offset);\n else {\n if (requireNonWS && !space(ch))\n requireNonWS = false;\n if (ch == 91 /* '[' */)\n return false;\n else if (ch == 92 /* '\\\\' */)\n escaped = true;\n }\n }\n return null;\n}\n/**\nInline parsing functions get access to this context, and use it to\nread the content and emit syntax nodes.\n*/\nclass InlineContext {\n /**\n @internal\n */\n constructor(\n /**\n The parser that is being used.\n */\n parser, \n /**\n The text of this inline section.\n */\n text, \n /**\n The starting offset of the section in the document.\n */\n offset) {\n this.parser = parser;\n this.text = text;\n this.offset = offset;\n /**\n @internal\n */\n this.parts = [];\n }\n /**\n Get the character code at the given (document-relative)\n position.\n */\n char(pos) { return pos >= this.end ? -1 : this.text.charCodeAt(pos - this.offset); }\n /**\n The position of the end of this inline section.\n */\n get end() { return this.offset + this.text.length; }\n /**\n Get a substring of this inline section. Again uses\n document-relative positions.\n */\n slice(from, to) { return this.text.slice(from - this.offset, to - this.offset); }\n /**\n @internal\n */\n append(elt) {\n this.parts.push(elt);\n return elt.to;\n }\n /**\n Add a [delimiter](#DelimiterType) at this given position. `open`\n and `close` indicate whether this delimiter is opening, closing,\n or both. Returns the end of the delimiter, for convenient\n returning from [parse functions](#InlineParser.parse).\n */\n addDelimiter(type, from, to, open, close) {\n return this.append(new InlineDelimiter(type, from, to, (open ? 1 /* Mark.Open */ : 0 /* Mark.None */) | (close ? 2 /* Mark.Close */ : 0 /* Mark.None */)));\n }\n /**\n Returns true when there is an unmatched link or image opening\n token before the current position.\n */\n get hasOpenLink() {\n for (let i = this.parts.length - 1; i >= 0; i--) {\n let part = this.parts[i];\n if (part instanceof InlineDelimiter && (part.type == LinkStart || part.type == ImageStart))\n return true;\n }\n return false;\n }\n /**\n Add an inline element. Returns the end of the element.\n */\n addElement(elt) {\n return this.append(elt);\n }\n /**\n Resolve markers between this.parts.length and from, wrapping matched markers in the\n appropriate node and updating the content of this.parts. @internal\n */\n resolveMarkers(from) {\n // Scan forward, looking for closing tokens\n for (let i = from; i < this.parts.length; i++) {\n let close = this.parts[i];\n if (!(close instanceof InlineDelimiter && close.type.resolve && (close.side & 2 /* Mark.Close */)))\n continue;\n let emp = close.type == EmphasisUnderscore || close.type == EmphasisAsterisk;\n let closeSize = close.to - close.from;\n let open, j = i - 1;\n // Continue scanning for a matching opening token\n for (; j >= from; j--) {\n let part = this.parts[j];\n if (part instanceof InlineDelimiter && (part.side & 1 /* Mark.Open */) && part.type == close.type &&\n // Ignore emphasis delimiters where the character count doesn't match\n !(emp && ((close.side & 1 /* Mark.Open */) || (part.side & 2 /* Mark.Close */)) &&\n (part.to - part.from + closeSize) % 3 == 0 && ((part.to - part.from) % 3 || closeSize % 3))) {\n open = part;\n break;\n }\n }\n if (!open)\n continue;\n let type = close.type.resolve, content = [];\n let start = open.from, end = close.to;\n // Emphasis marker effect depends on the character count. Size consumed is minimum of the two\n // markers.\n if (emp) {\n let size = Math.min(2, open.to - open.from, closeSize);\n start = open.to - size;\n end = close.from + size;\n type = size == 1 ? \"Emphasis\" : \"StrongEmphasis\";\n }\n // Move the covered region into content, optionally adding marker nodes\n if (open.type.mark)\n content.push(this.elt(open.type.mark, start, open.to));\n for (let k = j + 1; k < i; k++) {\n if (this.parts[k] instanceof Element)\n content.push(this.parts[k]);\n this.parts[k] = null;\n }\n if (close.type.mark)\n content.push(this.elt(close.type.mark, close.from, end));\n let element = this.elt(type, start, end, content);\n // If there are leftover emphasis marker characters, shrink the close/open markers. Otherwise, clear them.\n this.parts[j] = emp && open.from != start ? new InlineDelimiter(open.type, open.from, start, open.side) : null;\n let keep = this.parts[i] = emp && close.to != end ? new InlineDelimiter(close.type, end, close.to, close.side) : null;\n // Insert the new element in this.parts\n if (keep)\n this.parts.splice(i, 0, element);\n else\n this.parts[i] = element;\n }\n // Collect the elements remaining in this.parts into an array.\n let result = [];\n for (let i = from; i < this.parts.length; i++) {\n let part = this.parts[i];\n if (part instanceof Element)\n result.push(part);\n }\n return result;\n }\n /**\n Find an opening delimiter of the given type. Returns `null` if\n no delimiter is found, or an index that can be passed to\n [`takeContent`](#InlineContext.takeContent) otherwise.\n */\n findOpeningDelimiter(type) {\n for (let i = this.parts.length - 1; i >= 0; i--) {\n let part = this.parts[i];\n if (part instanceof InlineDelimiter && part.type == type && (part.side & 1 /* Mark.Open */))\n return i;\n }\n return null;\n }\n /**\n Remove all inline elements and delimiters starting from the\n given index (which you should get from\n [`findOpeningDelimiter`](#InlineContext.findOpeningDelimiter),\n resolve delimiters inside of them, and return them as an array\n of elements.\n */\n takeContent(startIndex) {\n let content = this.resolveMarkers(startIndex);\n this.parts.length = startIndex;\n return content;\n }\n /**\n Return the delimiter at the given index. Mostly useful to get\n additional info out of a delimiter index returned by\n [`findOpeningDelimiter`](#InlineContext.findOpeningDelimiter).\n Returns null if there is no delimiter at this index.\n */\n getDelimiterAt(index) {\n let part = this.parts[index];\n return part instanceof InlineDelimiter ? part : null;\n }\n /**\n Skip space after the given (document) position, returning either\n the position of the next non-space character or the end of the\n section.\n */\n skipSpace(from) { return skipSpace(this.text, from - this.offset) + this.offset; }\n elt(type, from, to, children) {\n if (typeof type == \"string\")\n return elt(this.parser.getNodeType(type), from, to, children);\n return new TreeElement(type, from);\n }\n}\n/**\nThe opening delimiter type used by the standard link parser.\n*/\nInlineContext.linkStart = LinkStart;\n/**\nOpening delimiter type used for standard images.\n*/\nInlineContext.imageStart = ImageStart;\nfunction injectMarks(elements, marks) {\n if (!marks.length)\n return elements;\n if (!elements.length)\n return marks;\n let elts = elements.slice(), eI = 0;\n for (let mark of marks) {\n while (eI < elts.length && elts[eI].to < mark.to)\n eI++;\n if (eI < elts.length && elts[eI].from < mark.from) {\n let e = elts[eI];\n if (e instanceof Element)\n elts[eI] = new Element(e.type, e.from, e.to, injectMarks(e.children, [mark]));\n }\n else {\n elts.splice(eI++, 0, mark);\n }\n }\n return elts;\n}\n// These are blocks that can span blank lines, and should thus only be\n// reused if their next sibling is also being reused.\nconst NotLast = [Type.CodeBlock, Type.ListItem, Type.OrderedList, Type.BulletList];\nclass FragmentCursor {\n constructor(fragments, input) {\n this.fragments = fragments;\n this.input = input;\n // Index into fragment array\n this.i = 0;\n // Active fragment\n this.fragment = null;\n this.fragmentEnd = -1;\n // Cursor into the current fragment, if any. When `moveTo` returns\n // true, this points at the first block after `pos`.\n this.cursor = null;\n if (fragments.length)\n this.fragment = fragments[this.i++];\n }\n nextFragment() {\n this.fragment = this.i < this.fragments.length ? this.fragments[this.i++] : null;\n this.cursor = null;\n this.fragmentEnd = -1;\n }\n moveTo(pos, lineStart) {\n while (this.fragment && this.fragment.to <= pos)\n this.nextFragment();\n if (!this.fragment || this.fragment.from > (pos ? pos - 1 : 0))\n return false;\n if (this.fragmentEnd < 0) {\n let end = this.fragment.to;\n while (end > 0 && this.input.read(end - 1, end) != \"\\n\")\n end--;\n this.fragmentEnd = end ? end - 1 : 0;\n }\n let c = this.cursor;\n if (!c) {\n c = this.cursor = this.fragment.tree.cursor();\n c.firstChild();\n }\n let rPos = pos + this.fragment.offset;\n while (c.to <= rPos)\n if (!c.parent())\n return false;\n for (;;) {\n if (c.from >= rPos)\n return this.fragment.from <= lineStart;\n if (!c.childAfter(rPos))\n return false;\n }\n }\n matches(hash) {\n let tree = this.cursor.tree;\n return tree && tree.prop(NodeProp.contextHash) == hash;\n }\n takeNodes(cx) {\n let cur = this.cursor, off = this.fragment.offset, fragEnd = this.fragmentEnd - (this.fragment.openEnd ? 1 : 0);\n let start = cx.absoluteLineStart, end = start, blockI = cx.block.children.length;\n let prevEnd = end, prevI = blockI;\n for (;;) {\n if (cur.to - off > fragEnd) {\n if (cur.type.isAnonymous && cur.firstChild())\n continue;\n break;\n }\n let pos = toRelative(cur.from - off, cx.ranges);\n if (cur.to - off <= cx.ranges[cx.rangeI].to) { // Fits in current range\n cx.addNode(cur.tree, pos);\n }\n else {\n let dummy = new Tree(cx.parser.nodeSet.types[Type.Paragraph], [], [], 0, cx.block.hashProp);\n cx.reusePlaceholders.set(dummy, cur.tree);\n cx.addNode(dummy, pos);\n }\n // Taken content must always end in a block, because incremental\n // parsing happens on block boundaries. Never stop directly\n // after an indented code block, since those can continue after\n // any number of blank lines.\n if (cur.type.is(\"Block\")) {\n if (NotLast.indexOf(cur.type.id) < 0) {\n end = cur.to - off;\n blockI = cx.block.children.length;\n }\n else {\n end = prevEnd;\n blockI = prevI;\n prevEnd = cur.to - off;\n prevI = cx.block.children.length;\n }\n }\n if (!cur.nextSibling())\n break;\n }\n while (cx.block.children.length > blockI) {\n cx.block.children.pop();\n cx.block.positions.pop();\n }\n return end - start;\n }\n}\n// Convert an input-stream-relative position to a\n// Markdown-doc-relative position by subtracting the size of all input\n// gaps before `abs`.\nfunction toRelative(abs, ranges) {\n let pos = abs;\n for (let i = 1; i < ranges.length; i++) {\n let gapFrom = ranges[i - 1].to, gapTo = ranges[i].from;\n if (gapFrom < abs)\n pos -= gapTo - gapFrom;\n }\n return pos;\n}\nconst markdownHighlighting = styleTags({\n \"Blockquote/...\": tags.quote,\n HorizontalRule: tags.contentSeparator,\n \"ATXHeading1/... SetextHeading1/...\": tags.heading1,\n \"ATXHeading2/... SetextHeading2/...\": tags.heading2,\n \"ATXHeading3/...\": tags.heading3,\n \"ATXHeading4/...\": tags.heading4,\n \"ATXHeading5/...\": tags.heading5,\n \"ATXHeading6/...\": tags.heading6,\n \"Comment CommentBlock\": tags.comment,\n Escape: tags.escape,\n Entity: tags.character,\n \"Emphasis/...\": tags.emphasis,\n \"StrongEmphasis/...\": tags.strong,\n \"Link/... Image/...\": tags.link,\n \"OrderedList/... BulletList/...\": tags.list,\n \"BlockQuote/...\": tags.quote,\n \"InlineCode CodeText\": tags.monospace,\n \"URL Autolink\": tags.url,\n \"HeaderMark HardBreak QuoteMark ListMark LinkMark EmphasisMark CodeMark\": tags.processingInstruction,\n \"CodeInfo LinkLabel\": tags.labelName,\n LinkTitle: tags.string,\n Paragraph: tags.content\n});\n/**\nThe default CommonMark parser.\n*/\nconst parser = new MarkdownParser(new NodeSet(nodeTypes).extend(markdownHighlighting), Object.keys(DefaultBlockParsers).map(n => DefaultBlockParsers[n]), Object.keys(DefaultBlockParsers).map(n => DefaultLeafBlocks[n]), Object.keys(DefaultBlockParsers), DefaultEndLeaf, DefaultSkipMarkup, Object.keys(DefaultInline).map(n => DefaultInline[n]), Object.keys(DefaultInline), []);\n\nfunction leftOverSpace(node, from, to) {\n let ranges = [];\n for (let n = node.firstChild, pos = from;; n = n.nextSibling) {\n let nextPos = n ? n.from : to;\n if (nextPos > pos)\n ranges.push({ from: pos, to: nextPos });\n if (!n)\n break;\n pos = n.to;\n }\n return ranges;\n}\n/**\nCreate a Markdown extension to enable nested parsing on code\nblocks and/or embedded HTML.\n*/\nfunction parseCode(config) {\n let { codeParser, htmlParser } = config;\n let wrap = parseMixed((node, input) => {\n let id = node.type.id;\n if (codeParser && (id == Type.CodeBlock || id == Type.FencedCode)) {\n let info = \"\";\n if (id == Type.FencedCode) {\n let infoNode = node.node.getChild(Type.CodeInfo);\n if (infoNode)\n info = input.read(infoNode.from, infoNode.to);\n }\n let parser = codeParser(info);\n if (parser)\n return { parser, overlay: node => node.type.id == Type.CodeText, bracketed: id == Type.FencedCode };\n }\n else if (htmlParser && (id == Type.HTMLBlock || id == Type.HTMLTag || id == Type.CommentBlock)) {\n return { parser: htmlParser, overlay: leftOverSpace(node.node, node.from, node.to) };\n }\n return null;\n });\n return { wrap };\n}\n\nconst StrikethroughDelim = { resolve: \"Strikethrough\", mark: \"StrikethroughMark\" };\n/**\nAn extension that implements\n[GFM-style](https://github.github.com/gfm/#strikethrough-extension-)\nStrikethrough syntax using `~~` delimiters.\n*/\nconst Strikethrough = {\n defineNodes: [{\n name: \"Strikethrough\",\n style: { \"Strikethrough/...\": tags.strikethrough }\n }, {\n name: \"StrikethroughMark\",\n style: tags.processingInstruction\n }],\n parseInline: [{\n name: \"Strikethrough\",\n parse(cx, next, pos) {\n if (next != 126 /* '~' */ || cx.char(pos + 1) != 126 || cx.char(pos + 2) == 126)\n return -1;\n let before = cx.slice(pos - 1, pos), after = cx.slice(pos + 2, pos + 3);\n let sBefore = /\\s|^$/.test(before), sAfter = /\\s|^$/.test(after);\n let pBefore = Punctuation.test(before), pAfter = Punctuation.test(after);\n return cx.addDelimiter(StrikethroughDelim, pos, pos + 2, !sAfter && (!pAfter || sBefore || pBefore), !sBefore && (!pBefore || sAfter || pAfter));\n },\n after: \"Emphasis\"\n }]\n};\n// Parse a line as a table row and return the row count. When `elts`\n// is given, push syntax elements for the content onto it.\nfunction parseRow(cx, line, startI = 0, elts, offset = 0) {\n let count = 0, first = true, cellStart = -1, cellEnd = -1, esc = false;\n let parseCell = () => {\n elts.push(cx.elt(\"TableCell\", offset + cellStart, offset + cellEnd, cx.parser.parseInline(line.slice(cellStart, cellEnd), offset + cellStart)));\n };\n for (let i = startI; i < line.length; i++) {\n let next = line.charCodeAt(i);\n if (next == 124 /* '|' */ && !esc) {\n if (!first || cellStart > -1)\n count++;\n first = false;\n if (elts) {\n if (cellStart > -1)\n parseCell();\n elts.push(cx.elt(\"TableDelimiter\", i + offset, i + offset + 1));\n }\n cellStart = cellEnd = -1;\n }\n else if (esc || next != 32 && next != 9) {\n if (cellStart < 0)\n cellStart = i;\n cellEnd = i + 1;\n }\n esc = !esc && next == 92;\n }\n if (cellStart > -1) {\n count++;\n if (elts)\n parseCell();\n }\n return count;\n}\nfunction hasPipe(str, start) {\n for (let i = start; i < str.length; i++) {\n let next = str.charCodeAt(i);\n if (next == 124 /* '|' */)\n return true;\n if (next == 92 /* '\\\\' */)\n i++;\n }\n return false;\n}\nconst delimiterLine = /^\\|?(\\s*:?-+:?\\s*\\|)+(\\s*:?-+:?\\s*)?$/;\nclass TableParser {\n constructor() {\n // Null means we haven't seen the second line yet, false means this\n // isn't a table, and an array means this is a table and we've\n // parsed the given rows so far.\n this.rows = null;\n }\n nextLine(cx, line, leaf) {\n if (this.rows == null) { // Second line\n this.rows = false;\n let lineText;\n if ((line.next == 45 || line.next == 58 || line.next == 124 /* '-:|' */) &&\n delimiterLine.test(lineText = line.text.slice(line.pos))) {\n let firstRow = [], firstCount = parseRow(cx, leaf.content, 0, firstRow, leaf.start);\n if (firstCount == parseRow(cx, lineText, line.pos))\n this.rows = [cx.elt(\"TableHeader\", leaf.start, leaf.start + leaf.content.length, firstRow),\n cx.elt(\"TableDelimiter\", cx.lineStart + line.pos, cx.lineStart + line.text.length)];\n }\n }\n else if (this.rows) { // Line after the second\n let content = [];\n parseRow(cx, line.text, line.pos, content, cx.lineStart);\n this.rows.push(cx.elt(\"TableRow\", cx.lineStart + line.pos, cx.lineStart + line.text.length, content));\n }\n return false;\n }\n finish(cx, leaf) {\n if (!this.rows)\n return false;\n cx.addLeafElement(leaf, cx.elt(\"Table\", leaf.start, leaf.start + leaf.content.length, this.rows));\n return true;\n }\n}\n/**\nThis extension provides\n[GFM-style](https://github.github.com/gfm/#tables-extension-)\ntables, using syntax like this:\n\n```\n| head 1 | head 2 |\n| --- | --- |\n| cell 1 | cell 2 |\n```\n*/\nconst Table = {\n defineNodes: [\n { name: \"Table\", block: true },\n { name: \"TableHeader\", style: { \"TableHeader/...\": tags.heading } },\n \"TableRow\",\n { name: \"TableCell\", style: tags.content },\n { name: \"TableDelimiter\", style: tags.processingInstruction },\n ],\n parseBlock: [{\n name: \"Table\",\n leaf(_, leaf) { return hasPipe(leaf.content, 0) ? new TableParser : null; },\n endLeaf(cx, line, leaf) {\n if (leaf.parsers.some(p => p instanceof TableParser) || !hasPipe(line.text, line.basePos))\n return false;\n let next = cx.peekLine();\n return delimiterLine.test(next) && parseRow(cx, line.text, line.basePos) == parseRow(cx, next, line.basePos);\n },\n before: \"SetextHeading\"\n }]\n};\nclass TaskParser {\n nextLine() { return false; }\n finish(cx, leaf) {\n cx.addLeafElement(leaf, cx.elt(\"Task\", leaf.start, leaf.start + leaf.content.length, [\n cx.elt(\"TaskMarker\", leaf.start, leaf.start + 3),\n ...cx.parser.parseInline(leaf.content.slice(3), leaf.start + 3)\n ]));\n return true;\n }\n}\n/**\nExtension providing\n[GFM-style](https://github.github.com/gfm/#task-list-items-extension-)\ntask list items, where list items can be prefixed with `[ ]` or\n`[x]` to add a checkbox.\n*/\nconst TaskList = {\n defineNodes: [\n { name: \"Task\", block: true, style: tags.list },\n { name: \"TaskMarker\", style: tags.atom }\n ],\n parseBlock: [{\n name: \"TaskList\",\n leaf(cx, leaf) {\n return /^\\[[ xX]\\][ \\t]/.test(leaf.content) && cx.parentType().name == \"ListItem\" ? new TaskParser : null;\n },\n after: \"SetextHeading\"\n }]\n};\nconst autolinkRE = /(www\\.)|(https?:\\/\\/)|([\\w.+-]{1,100}@)|(mailto:|xmpp:)/gy;\nconst urlRE = /[\\w-]+(\\.[\\w-]+)+(\\/[^\\s<]*)?/gy;\nconst lastTwoDomainWords = /[\\w-]+\\.[\\w-]+($|\\/)/;\nconst emailRE = /[\\w.+-]+@[\\w-]+(\\.[\\w.-]+)+/gy;\nconst xmppResourceRE = /\\/[a-zA-Z\\d@.]+/gy;\nfunction count(str, from, to, ch) {\n let result = 0;\n for (let i = from; i < to; i++)\n if (str[i] == ch)\n result++;\n return result;\n}\nfunction autolinkURLEnd(text, from) {\n urlRE.lastIndex = from;\n let m = urlRE.exec(text);\n if (!m || lastTwoDomainWords.exec(m[0])[0].indexOf(\"_\") > -1)\n return -1;\n let end = from + m[0].length;\n for (;;) {\n let last = text[end - 1], m;\n if (/[?!.,:*_~]/.test(last) ||\n last == \")\" && count(text, from, end, \")\") > count(text, from, end, \"(\"))\n end--;\n else if (last == \";\" && (m = /&(?:#\\d+|#x[a-f\\d]+|\\w+);$/.exec(text.slice(from, end))))\n end = from + m.index;\n else\n break;\n }\n return end;\n}\nfunction autolinkEmailEnd(text, from) {\n emailRE.lastIndex = from;\n let m = emailRE.exec(text);\n if (!m)\n return -1;\n let last = m[0][m[0].length - 1];\n return last == \"_\" || last == \"-\" ? -1 : from + m[0].length - (last == \".\" ? 1 : 0);\n}\n/**\nExtension that implements autolinking for\n`www.`/`http://`/`https://`/`mailto:`/`xmpp:` URLs and email\naddresses.\n*/\nconst Autolink = {\n parseInline: [{\n name: \"Autolink\",\n parse(cx, next, absPos) {\n let pos = absPos - cx.offset;\n if (pos && /\\w/.test(cx.text[pos - 1]))\n return -1;\n autolinkRE.lastIndex = pos;\n let m = autolinkRE.exec(cx.text), end = -1;\n if (!m)\n return -1;\n if (m[1] || m[2]) { // www., http://\n end = autolinkURLEnd(cx.text, pos + m[0].length);\n if (end > -1 && cx.hasOpenLink) {\n let noBracket = /([^\\[\\]]|\\[[^\\]]*\\])*/.exec(cx.text.slice(pos, end));\n end = pos + noBracket[0].length;\n }\n }\n else if (m[3]) { // email address\n end = autolinkEmailEnd(cx.text, pos);\n }\n else { // mailto:/xmpp:\n end = autolinkEmailEnd(cx.text, pos + m[0].length);\n if (end > -1 && m[0] == \"xmpp:\") {\n xmppResourceRE.lastIndex = end;\n m = xmppResourceRE.exec(cx.text);\n if (m)\n end = m.index + m[0].length;\n }\n }\n if (end < 0)\n return -1;\n cx.addElement(cx.elt(\"URL\", absPos, end + cx.offset));\n return end + cx.offset;\n }\n }]\n};\n/**\nExtension bundle containing [`Table`](#Table),\n[`TaskList`](#TaskList), [`Strikethrough`](#Strikethrough), and\n[`Autolink`](#Autolink).\n*/\nconst GFM = [Table, TaskList, Strikethrough, Autolink];\nfunction parseSubSuper(ch, node, mark) {\n return (cx, next, pos) => {\n if (next != ch || cx.char(pos + 1) == ch)\n return -1;\n let elts = [cx.elt(mark, pos, pos + 1)];\n for (let i = pos + 1; i < cx.end; i++) {\n let next = cx.char(i);\n if (next == ch)\n return cx.addElement(cx.elt(node, pos, i + 1, elts.concat(cx.elt(mark, i, i + 1))));\n if (next == 92 /* '\\\\' */)\n elts.push(cx.elt(\"Escape\", i, i++ + 2));\n if (space(next))\n break;\n }\n return -1;\n };\n}\n/**\nExtension providing\n[Pandoc-style](https://pandoc.org/MANUAL.html#superscripts-and-subscripts)\nsuperscript using `^` markers.\n*/\nconst Superscript = {\n defineNodes: [\n { name: \"Superscript\", style: tags.special(tags.content) },\n { name: \"SuperscriptMark\", style: tags.processingInstruction }\n ],\n parseInline: [{\n name: \"Superscript\",\n parse: parseSubSuper(94 /* '^' */, \"Superscript\", \"SuperscriptMark\")\n }]\n};\n/**\nExtension providing\n[Pandoc-style](https://pandoc.org/MANUAL.html#superscripts-and-subscripts)\nsubscript using `~` markers.\n*/\nconst Subscript = {\n defineNodes: [\n { name: \"Subscript\", style: tags.special(tags.content) },\n { name: \"SubscriptMark\", style: tags.processingInstruction }\n ],\n parseInline: [{\n name: \"Subscript\",\n parse: parseSubSuper(126 /* '~' */, \"Subscript\", \"SubscriptMark\")\n }]\n};\n/**\nExtension that parses two colons with only letters, underscores,\nand numbers between them as `Emoji` nodes.\n*/\nconst Emoji = {\n defineNodes: [{ name: \"Emoji\", style: tags.character }],\n parseInline: [{\n name: \"Emoji\",\n parse(cx, next, pos) {\n let match;\n if (next != 58 /* ':' */ || !(match = /^[a-zA-Z_0-9]+:/.exec(cx.slice(pos + 1, cx.end))))\n return -1;\n return cx.addElement(cx.elt(\"Emoji\", pos, pos + 1 + match[0].length));\n }\n }]\n};\n\nexport { Autolink, BlockContext, Element, Emoji, GFM, InlineContext, LeafBlock, Line, MarkdownParser, Strikethrough, Subscript, Superscript, Table, TaskList, parseCode, parser };\n", "import { EditorSelection, countColumn, Prec, EditorState } from '@codemirror/state';\nimport { EditorView, keymap } from '@codemirror/view';\nimport { defineLanguageFacet, foldNodeProp, indentNodeProp, languageDataProp, foldService, syntaxTree, Language, LanguageDescription, ParseContext, indentUnit, LanguageSupport } from '@codemirror/language';\nimport { CompletionContext } from '@codemirror/autocomplete';\nimport { parser, GFM, Subscript, Superscript, Emoji, MarkdownParser, parseCode } from '@lezer/markdown';\nimport { html, htmlCompletionSource } from '@codemirror/lang-html';\nimport { NodeProp } from '@lezer/common';\n\nconst data = /*@__PURE__*/defineLanguageFacet({ commentTokens: { block: { open: \"<!--\", close: \"-->\" } } });\nconst headingProp = /*@__PURE__*/new NodeProp();\nconst commonmark = /*@__PURE__*/parser.configure({\n props: [\n /*@__PURE__*/foldNodeProp.add(type => {\n return !type.is(\"Block\") || type.is(\"Document\") || isHeading(type) != null || isList(type) ? undefined\n : (tree, state) => ({ from: state.doc.lineAt(tree.from).to, to: tree.to });\n }),\n /*@__PURE__*/headingProp.add(isHeading),\n /*@__PURE__*/indentNodeProp.add({\n Document: () => null\n }),\n /*@__PURE__*/languageDataProp.add({\n Document: data\n })\n ]\n});\nfunction isHeading(type) {\n let match = /^(?:ATX|Setext)Heading(\\d)$/.exec(type.name);\n return match ? +match[1] : undefined;\n}\nfunction isList(type) {\n return type.name == \"OrderedList\" || type.name == \"BulletList\";\n}\nfunction findSectionEnd(headerNode, level) {\n let last = headerNode;\n for (;;) {\n let next = last.nextSibling, heading;\n if (!next || (heading = isHeading(next.type)) != null && heading <= level)\n break;\n last = next;\n }\n return last.to;\n}\nconst headerIndent = /*@__PURE__*/foldService.of((state, start, end) => {\n for (let node = syntaxTree(state).resolveInner(end, -1); node; node = node.parent) {\n if (node.from < start)\n break;\n let heading = node.type.prop(headingProp);\n if (heading == null)\n continue;\n let upto = findSectionEnd(node, heading);\n if (upto > end)\n return { from: end, to: upto };\n }\n return null;\n});\nfunction mkLang(parser) {\n return new Language(data, parser, [], \"markdown\");\n}\n/**\nLanguage support for strict CommonMark.\n*/\nconst commonmarkLanguage = /*@__PURE__*/mkLang(commonmark);\nconst extended = /*@__PURE__*/commonmark.configure([GFM, Subscript, Superscript, Emoji, {\n props: [\n /*@__PURE__*/foldNodeProp.add({\n Table: (tree, state) => ({ from: state.doc.lineAt(tree.from).to, to: tree.to })\n })\n ]\n }]);\n/**\nLanguage support for [GFM](https://github.github.com/gfm/) plus\nsubscript, superscript, and emoji syntax.\n*/\nconst markdownLanguage = /*@__PURE__*/mkLang(extended);\nfunction getCodeParser(languages, defaultLanguage) {\n return (info) => {\n if (info && languages) {\n let found = null;\n // Strip anything after whitespace\n info = /\\S*/.exec(info)[0];\n if (typeof languages == \"function\")\n found = languages(info);\n else\n found = LanguageDescription.matchLanguageName(languages, info, true);\n if (found instanceof LanguageDescription)\n return found.support ? found.support.language.parser : ParseContext.getSkippingParser(found.load());\n else if (found)\n return found.parser;\n }\n return defaultLanguage ? defaultLanguage.parser : null;\n };\n}\n\nclass Context {\n constructor(node, from, to, spaceBefore, spaceAfter, type, item) {\n this.node = node;\n this.from = from;\n this.to = to;\n this.spaceBefore = spaceBefore;\n this.spaceAfter = spaceAfter;\n this.type = type;\n this.item = item;\n }\n blank(maxWidth, trailing = true) {\n let result = this.spaceBefore + (this.node.name == \"Blockquote\" ? \">\" : \"\");\n if (maxWidth != null) {\n while (result.length < maxWidth)\n result += \" \";\n return result;\n }\n else {\n for (let i = this.to - this.from - result.length - this.spaceAfter.length; i > 0; i--)\n result += \" \";\n return result + (trailing ? this.spaceAfter : \"\");\n }\n }\n marker(doc, add) {\n let number = this.node.name == \"OrderedList\" ? String((+itemNumber(this.item, doc)[2] + add)) : \"\";\n return this.spaceBefore + number + this.type + this.spaceAfter;\n }\n}\nfunction getContext(node, doc) {\n let nodes = [], context = [];\n for (let cur = node; cur; cur = cur.parent) {\n if (cur.name == \"FencedCode\")\n return context;\n if (cur.name == \"ListItem\" || cur.name == \"Blockquote\")\n nodes.push(cur);\n }\n for (let i = nodes.length - 1; i >= 0; i--) {\n let node = nodes[i], match;\n let line = doc.lineAt(node.from), startPos = node.from - line.from;\n if (node.name == \"Blockquote\" && (match = /^ *>( ?)/.exec(line.text.slice(startPos)))) {\n context.push(new Context(node, startPos, startPos + match[0].length, \"\", match[1], \">\", null));\n }\n else if (node.name == \"ListItem\" && node.parent.name == \"OrderedList\" &&\n (match = /^( *)\\d+([.)])( *)/.exec(line.text.slice(startPos)))) {\n let after = match[3], len = match[0].length;\n if (after.length >= 4) {\n after = after.slice(0, after.length - 4);\n len -= 4;\n }\n context.push(new Context(node.parent, startPos, startPos + len, match[1], after, match[2], node));\n }\n else if (node.name == \"ListItem\" && node.parent.name == \"BulletList\" &&\n (match = /^( *)([-+*])( {1,4}\\[[ xX]\\])?( +)/.exec(line.text.slice(startPos)))) {\n let after = match[4], len = match[0].length;\n if (after.length > 4) {\n after = after.slice(0, after.length - 4);\n len -= 4;\n }\n let type = match[2];\n if (match[3])\n type += match[3].replace(/[xX]/, ' ');\n context.push(new Context(node.parent, startPos, startPos + len, match[1], after, type, node));\n }\n }\n return context;\n}\nfunction itemNumber(item, doc) {\n return /^(\\s*)(\\d+)(?=[.)])/.exec(doc.sliceString(item.from, item.from + 10));\n}\nfunction renumberList(after, doc, changes, offset = 0) {\n for (let prev = -1, node = after;;) {\n if (node.name == \"ListItem\") {\n let m = itemNumber(node, doc);\n let number = +m[2];\n if (prev >= 0) {\n if (number != prev + 1)\n return;\n changes.push({ from: node.from + m[1].length, to: node.from + m[0].length, insert: String(prev + 2 + offset) });\n }\n prev = number;\n }\n let next = node.nextSibling;\n if (!next)\n break;\n node = next;\n }\n}\nfunction normalizeIndent(content, state) {\n let blank = /^[ \\t]*/.exec(content)[0].length;\n if (!blank || state.facet(indentUnit) != \"\\t\")\n return content;\n let col = countColumn(content, 4, blank);\n let space = \"\";\n for (let i = col; i > 0;) {\n if (i >= 4) {\n space += \"\\t\";\n i -= 4;\n }\n else {\n space += \" \";\n i--;\n }\n }\n return space + content.slice(blank);\n}\n/**\nReturns a command like\n[`insertNewlineContinueMarkup`](https://codemirror.net/6/docs/ref/#lang-markdown.insertNewlineContinueMarkup),\nallowing further configuration.\n*/\nconst insertNewlineContinueMarkupCommand = (config = {}) => ({ state, dispatch }) => {\n let tree = syntaxTree(state), { doc } = state;\n let dont = null, changes = state.changeByRange(range => {\n if (!range.empty || !markdownLanguage.isActiveAt(state, range.from, -1) && !markdownLanguage.isActiveAt(state, range.from, 1))\n return dont = { range };\n let pos = range.from, line = doc.lineAt(pos);\n let context = getContext(tree.resolveInner(pos, -1), doc);\n while (context.length && context[context.length - 1].from > pos - line.from)\n context.pop();\n if (!context.length)\n return dont = { range };\n let inner = context[context.length - 1];\n if (inner.to - inner.spaceAfter.length > pos - line.from)\n return dont = { range };\n let emptyLine = pos >= (inner.to - inner.spaceAfter.length) && !/\\S/.test(line.text.slice(inner.to));\n // Empty line in list\n if (inner.item && emptyLine) {\n let first = inner.node.firstChild, second = inner.node.getChild(\"ListItem\", \"ListItem\");\n // Not second item or blank line before: delete a level of markup\n if (first.to >= pos || second && second.to < pos ||\n line.from > 0 && !/[^\\s>]/.test(doc.lineAt(line.from - 1).text) ||\n config.nonTightLists === false) {\n let next = context.length > 1 ? context[context.length - 2] : null;\n let delTo, insert = \"\";\n if (next && next.item) { // Re-add marker for the list at the next level\n delTo = line.from + next.from;\n insert = next.marker(doc, 1);\n }\n else {\n delTo = line.from + (next ? next.to : 0);\n }\n let changes = [{ from: delTo, to: pos, insert }];\n if (inner.node.name == \"OrderedList\")\n renumberList(inner.item, doc, changes, -2);\n if (next && next.node.name == \"OrderedList\")\n renumberList(next.item, doc, changes);\n return { range: EditorSelection.cursor(delTo + insert.length), changes };\n }\n else { // Move second item down, making tight two-item list non-tight\n let insert = blankLine(context, state, line);\n return { range: EditorSelection.cursor(pos + insert.length + 1),\n changes: { from: line.from, insert: insert + state.lineBreak } };\n }\n }\n if (inner.node.name == \"Blockquote\" && emptyLine && line.from) {\n let prevLine = doc.lineAt(line.from - 1), quoted = />\\s*$/.exec(prevLine.text);\n // Two aligned empty quoted lines in a row\n if (quoted && quoted.index == inner.from) {\n let changes = state.changes([{ from: prevLine.from + quoted.index, to: prevLine.to },\n { from: line.from + inner.from, to: line.to }]);\n return { range: range.map(changes), changes };\n }\n }\n let changes = [];\n if (inner.node.name == \"OrderedList\")\n renumberList(inner.item, doc, changes);\n let continued = inner.item && inner.item.from < line.from;\n let insert = \"\";\n // If not dedented\n if (!continued || /^[\\s\\d.)\\-+*>]*/.exec(line.text)[0].length >= inner.to) {\n for (let i = 0, e = context.length - 1; i <= e; i++) {\n insert += i == e && !continued ? context[i].marker(doc, 1)\n : context[i].blank(i < e ? countColumn(line.text, 4, context[i + 1].from) - insert.length : null);\n }\n }\n let from = pos;\n while (from > line.from && /\\s/.test(line.text.charAt(from - line.from - 1)))\n from--;\n insert = normalizeIndent(insert, state);\n if (nonTightList(inner.node, state.doc))\n insert = blankLine(context, state, line) + state.lineBreak + insert;\n changes.push({ from, to: pos, insert: state.lineBreak + insert });\n return { range: EditorSelection.cursor(from + insert.length + 1), changes };\n });\n if (dont)\n return false;\n dispatch(state.update(changes, { scrollIntoView: true, userEvent: \"input\" }));\n return true;\n};\n/**\nThis command, when invoked in Markdown context with cursor\nselection(s), will create a new line with the markup for\nblockquotes and lists that were active on the old line. If the\ncursor was directly after the end of the markup for the old line,\ntrailing whitespace and list markers are removed from that line.\n\nThe command does nothing in non-Markdown context, so it should\nnot be used as the only binding for Enter (even in a Markdown\ndocument, HTML and code regions might use a different language).\n*/\nconst insertNewlineContinueMarkup = /*@__PURE__*/insertNewlineContinueMarkupCommand();\nfunction isMark(node) {\n return node.name == \"QuoteMark\" || node.name == \"ListMark\";\n}\nfunction nonTightList(node, doc) {\n if (node.name != \"OrderedList\" && node.name != \"BulletList\")\n return false;\n let first = node.firstChild, second = node.getChild(\"ListItem\", \"ListItem\");\n if (!second)\n return false;\n let line1 = doc.lineAt(first.to), line2 = doc.lineAt(second.from);\n let empty = /^[\\s>]*$/.test(line1.text);\n return line1.number + (empty ? 0 : 1) < line2.number;\n}\nfunction blankLine(context, state, line) {\n let insert = \"\";\n for (let i = 0, e = context.length - 2; i <= e; i++) {\n insert += context[i].blank(i < e\n ? countColumn(line.text, 4, context[i + 1].from) - insert.length\n : null, i < e);\n }\n return normalizeIndent(insert, state);\n}\nfunction contextNodeForDelete(tree, pos) {\n let node = tree.resolveInner(pos, -1), scan = pos;\n if (isMark(node)) {\n scan = node.from;\n node = node.parent;\n }\n for (let prev; prev = node.childBefore(scan);) {\n if (isMark(prev)) {\n scan = prev.from;\n }\n else if (prev.name == \"OrderedList\" || prev.name == \"BulletList\") {\n node = prev.lastChild;\n scan = node.to;\n }\n else {\n break;\n }\n }\n return node;\n}\n/**\nThis command will, when invoked in a Markdown context with the\ncursor directly after list or blockquote markup, delete one level\nof markup. When the markup is for a list, it will be replaced by\nspaces on the first invocation (a further invocation will delete\nthe spaces), to make it easy to continue a list.\n\nWhen not after Markdown block markup, this command will return\nfalse, so it is intended to be bound alongside other deletion\ncommands, with a higher precedence than the more generic commands.\n*/\nconst deleteMarkupBackward = ({ state, dispatch }) => {\n let tree = syntaxTree(state);\n let dont = null, changes = state.changeByRange(range => {\n let pos = range.from, { doc } = state;\n if (range.empty && markdownLanguage.isActiveAt(state, range.from)) {\n let line = doc.lineAt(pos);\n let context = getContext(contextNodeForDelete(tree, pos), doc);\n if (context.length) {\n let inner = context[context.length - 1];\n let spaceEnd = inner.to - inner.spaceAfter.length + (inner.spaceAfter ? 1 : 0);\n // Delete extra trailing space after markup\n if (pos - line.from > spaceEnd && !/\\S/.test(line.text.slice(spaceEnd, pos - line.from)))\n return { range: EditorSelection.cursor(line.from + spaceEnd),\n changes: { from: line.from + spaceEnd, to: pos } };\n if (pos - line.from == spaceEnd &&\n // Only apply this if we're on the line that has the\n // construct's syntax, or there's only indentation in the\n // target range\n (!inner.item || line.from <= inner.item.from || !/\\S/.test(line.text.slice(0, inner.to)))) {\n let start = line.from + inner.from;\n // Replace a list item marker with blank space\n if (inner.item && inner.node.from < inner.item.from && /\\S/.test(line.text.slice(inner.from, inner.to))) {\n let insert = inner.blank(countColumn(line.text, 4, inner.to) - countColumn(line.text, 4, inner.from));\n if (start == line.from)\n insert = normalizeIndent(insert, state);\n return { range: EditorSelection.cursor(start + insert.length),\n changes: { from: start, to: line.from + inner.to, insert } };\n }\n // Delete one level of indentation\n if (start < pos)\n return { range: EditorSelection.cursor(start), changes: { from: start, to: pos } };\n }\n }\n }\n return dont = { range };\n });\n if (dont)\n return false;\n dispatch(state.update(changes, { scrollIntoView: true, userEvent: \"delete\" }));\n return true;\n};\n\n/**\nA small keymap with Markdown-specific bindings. Binds Enter to\n[`insertNewlineContinueMarkup`](https://codemirror.net/6/docs/ref/#lang-markdown.insertNewlineContinueMarkup)\nand Backspace to\n[`deleteMarkupBackward`](https://codemirror.net/6/docs/ref/#lang-markdown.deleteMarkupBackward).\n*/\nconst markdownKeymap = [\n { key: \"Enter\", run: insertNewlineContinueMarkup },\n { key: \"Backspace\", run: deleteMarkupBackward }\n];\nconst htmlNoMatch = /*@__PURE__*/html({ matchClosingTags: false });\n/**\nMarkdown language support.\n*/\nfunction markdown(config = {}) {\n let { codeLanguages, defaultCodeLanguage, addKeymap = true, base: { parser } = commonmarkLanguage, completeHTMLTags = true, pasteURLAsLink: pasteURL = true, htmlTagLanguage = htmlNoMatch } = config;\n if (!(parser instanceof MarkdownParser))\n throw new RangeError(\"Base parser provided to `markdown` should be a Markdown parser\");\n let extensions = config.extensions ? [config.extensions] : [];\n let support = [htmlTagLanguage.support, headerIndent], defaultCode;\n if (pasteURL)\n support.push(pasteURLAsLink);\n if (defaultCodeLanguage instanceof LanguageSupport) {\n support.push(defaultCodeLanguage.support);\n defaultCode = defaultCodeLanguage.language;\n }\n else if (defaultCodeLanguage) {\n defaultCode = defaultCodeLanguage;\n }\n let codeParser = codeLanguages || defaultCode ? getCodeParser(codeLanguages, defaultCode) : undefined;\n extensions.push(parseCode({ codeParser, htmlParser: htmlTagLanguage.language.parser }));\n if (addKeymap)\n support.push(Prec.high(keymap.of(markdownKeymap)));\n let lang = mkLang(parser.configure(extensions));\n if (completeHTMLTags)\n support.push(lang.data.of({ autocomplete: htmlTagCompletion }));\n return new LanguageSupport(lang, support);\n}\nfunction htmlTagCompletion(context) {\n let { state, pos } = context, m = /<[:\\-\\.\\w\\u00b7-\\uffff]*$/.exec(state.sliceDoc(pos - 25, pos));\n if (!m)\n return null;\n let tree = syntaxTree(state).resolveInner(pos, -1);\n while (tree && !tree.type.isTop) {\n if (tree.name == \"CodeBlock\" || tree.name == \"FencedCode\" || tree.name == \"ProcessingInstructionBlock\" ||\n tree.name == \"CommentBlock\" || tree.name == \"Link\" || tree.name == \"Image\")\n return null;\n tree = tree.parent;\n }\n return {\n from: pos - m[0].length, to: pos,\n options: htmlTagCompletions(),\n validFor: /^<[:\\-\\.\\w\\u00b7-\\uffff]*$/\n };\n}\nlet _tagCompletions = null;\nfunction htmlTagCompletions() {\n if (_tagCompletions)\n return _tagCompletions;\n let result = htmlCompletionSource(new CompletionContext(EditorState.create({ extensions: htmlNoMatch }), 0, true));\n return _tagCompletions = result ? result.options : [];\n}\nconst nonPlainText = /code|horizontalrule|html|link|comment|processing|escape|entity|image|mark|url/i;\n/**\nAn extension that intercepts pastes when the pasted content looks\nlike a URL and the selection is non-empty and selects regular\ntext, making the selection a link with the pasted URL as target.\n*/\nconst pasteURLAsLink = /*@__PURE__*/EditorView.domEventHandlers({\n paste: (event, view) => {\n var _a;\n let { main } = view.state.selection;\n if (main.empty)\n return false;\n let link = (_a = event.clipboardData) === null || _a === void 0 ? void 0 : _a.getData(\"text/plain\");\n if (!link || !/^(https?:\\/\\/|mailto:|xmpp:|www\\.)/.test(link))\n return false;\n if (/^www\\./.test(link))\n link = \"https://\" + link;\n if (!markdownLanguage.isActiveAt(view.state, main.from, 1))\n return false;\n let tree = syntaxTree(view.state), crossesNode = false;\n // Verify that no nodes are started/ended between the selection\n // points, and we're not inside any non-plain-text construct.\n tree.iterate({\n from: main.from, to: main.to,\n enter: node => { if (node.from > main.from || nonPlainText.test(node.name))\n crossesNode = true; },\n leave: node => { if (node.to < main.to)\n crossesNode = true; }\n });\n if (crossesNode)\n return false;\n view.dispatch({\n changes: [{ from: main.from, insert: \"[\" }, { from: main.to, insert: `](${link})` }],\n userEvent: \"input.paste\",\n scrollIntoView: true\n });\n return true;\n }\n});\n\nexport { commonmarkLanguage, deleteMarkupBackward, insertNewlineContinueMarkup, insertNewlineContinueMarkupCommand, markdown, markdownKeymap, markdownLanguage, pasteURLAsLink };\n", "import { EditorView } from '@codemirror/view';\nimport { HighlightStyle, syntaxHighlighting } from '@codemirror/language';\nimport { tags } from '@lezer/highlight';\n\n// Using https://github.com/one-dark/vscode-one-dark-theme/ as reference for the colors\nconst chalky = \"#e5c07b\", coral = \"#e06c75\", cyan = \"#56b6c2\", invalid = \"#ffffff\", ivory = \"#abb2bf\", stone = \"#7d8799\", // Brightened compared to original to increase contrast\nmalibu = \"#61afef\", sage = \"#98c379\", whiskey = \"#d19a66\", violet = \"#c678dd\", darkBackground = \"#21252b\", highlightBackground = \"#2c313a\", background = \"#282c34\", tooltipBackground = \"#353a42\", selection = \"#3E4451\", cursor = \"#528bff\";\n/**\nThe colors used in the theme, as CSS color strings.\n*/\nconst color = {\n chalky,\n coral,\n cyan,\n invalid,\n ivory,\n stone,\n malibu,\n sage,\n whiskey,\n violet,\n darkBackground,\n highlightBackground,\n background,\n tooltipBackground,\n selection,\n cursor\n};\n/**\nThe editor theme styles for One Dark.\n*/\nconst oneDarkTheme = /*@__PURE__*/EditorView.theme({\n \"&\": {\n color: ivory,\n backgroundColor: background\n },\n \".cm-content\": {\n caretColor: cursor\n },\n \".cm-cursor, .cm-dropCursor\": { borderLeftColor: cursor },\n \"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection\": { backgroundColor: selection },\n \".cm-panels\": { backgroundColor: darkBackground, color: ivory },\n \".cm-panels.cm-panels-top\": { borderBottom: \"2px solid black\" },\n \".cm-panels.cm-panels-bottom\": { borderTop: \"2px solid black\" },\n \".cm-searchMatch\": {\n backgroundColor: \"#72a1ff59\",\n outline: \"1px solid #457dff\"\n },\n \".cm-searchMatch.cm-searchMatch-selected\": {\n backgroundColor: \"#6199ff2f\"\n },\n \".cm-activeLine\": { backgroundColor: \"#6699ff0b\" },\n \".cm-selectionMatch\": { backgroundColor: \"#aafe661a\" },\n \"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket\": {\n backgroundColor: \"#bad0f847\"\n },\n \".cm-gutters\": {\n backgroundColor: background,\n color: stone,\n border: \"none\"\n },\n \".cm-activeLineGutter\": {\n backgroundColor: highlightBackground\n },\n \".cm-foldPlaceholder\": {\n backgroundColor: \"transparent\",\n border: \"none\",\n color: \"#ddd\"\n },\n \".cm-tooltip\": {\n border: \"none\",\n backgroundColor: tooltipBackground\n },\n \".cm-tooltip .cm-tooltip-arrow:before\": {\n borderTopColor: \"transparent\",\n borderBottomColor: \"transparent\"\n },\n \".cm-tooltip .cm-tooltip-arrow:after\": {\n borderTopColor: tooltipBackground,\n borderBottomColor: tooltipBackground\n },\n \".cm-tooltip-autocomplete\": {\n \"& > ul > li[aria-selected]\": {\n backgroundColor: highlightBackground,\n color: ivory\n }\n }\n}, { dark: true });\n/**\nThe highlighting style for code in the One Dark theme.\n*/\nconst oneDarkHighlightStyle = /*@__PURE__*/HighlightStyle.define([\n { tag: tags.keyword,\n color: violet },\n { tag: [tags.name, tags.deleted, tags.character, tags.propertyName, tags.macroName],\n color: coral },\n { tag: [/*@__PURE__*/tags.function(tags.variableName), tags.labelName],\n color: malibu },\n { tag: [tags.color, /*@__PURE__*/tags.constant(tags.name), /*@__PURE__*/tags.standard(tags.name)],\n color: whiskey },\n { tag: [/*@__PURE__*/tags.definition(tags.name), tags.separator],\n color: ivory },\n { tag: [tags.typeName, tags.className, tags.number, tags.changed, tags.annotation, tags.modifier, tags.self, tags.namespace],\n color: chalky },\n { tag: [tags.operator, tags.operatorKeyword, tags.url, tags.escape, tags.regexp, tags.link, /*@__PURE__*/tags.special(tags.string)],\n color: cyan },\n { tag: [tags.meta, tags.comment],\n color: stone },\n { tag: tags.strong,\n fontWeight: \"bold\" },\n { tag: tags.emphasis,\n fontStyle: \"italic\" },\n { tag: tags.strikethrough,\n textDecoration: \"line-through\" },\n { tag: tags.link,\n color: stone,\n textDecoration: \"underline\" },\n { tag: tags.heading,\n fontWeight: \"bold\",\n color: coral },\n { tag: [tags.atom, tags.bool, /*@__PURE__*/tags.special(tags.variableName)],\n color: whiskey },\n { tag: [tags.processingInstruction, tags.string, tags.inserted],\n color: sage },\n { tag: tags.invalid,\n color: invalid },\n]);\n/**\nExtension to enable the One Dark theme (both the editor theme and\nthe highlight style).\n*/\nconst oneDark = [oneDarkTheme, /*@__PURE__*/syntaxHighlighting(oneDarkHighlightStyle)];\n\nexport { color, oneDark, oneDarkHighlightStyle, oneDarkTheme };\n", "/**\n * Gets the original marked default options.\n */\nexport function _getDefaults() {\n return {\n async: false,\n breaks: false,\n extensions: null,\n gfm: true,\n hooks: null,\n pedantic: false,\n renderer: null,\n silent: false,\n tokenizer: null,\n walkTokens: null\n };\n}\nexport let _defaults = _getDefaults();\nexport function changeDefaults(newDefaults) {\n _defaults = newDefaults;\n}\n", "/**\n * Helpers\n */\nconst escapeTest = /[&<>\"']/;\nconst escapeReplace = new RegExp(escapeTest.source, 'g');\nconst escapeTestNoEncode = /[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/;\nconst escapeReplaceNoEncode = new RegExp(escapeTestNoEncode.source, 'g');\nconst escapeReplacements = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": '''\n};\nconst getEscapeReplacement = (ch) => escapeReplacements[ch];\nexport function escape(html, encode) {\n if (encode) {\n if (escapeTest.test(html)) {\n return html.replace(escapeReplace, getEscapeReplacement);\n }\n }\n else {\n if (escapeTestNoEncode.test(html)) {\n return html.replace(escapeReplaceNoEncode, getEscapeReplacement);\n }\n }\n return html;\n}\nconst unescapeTest = /&(#(?:\\d+)|(?:#x[0-9A-Fa-f]+)|(?:\\w+));?/ig;\nexport function unescape(html) {\n // explicitly match decimal, hex, and named HTML entities\n return html.replace(unescapeTest, (_, n) => {\n n = n.toLowerCase();\n if (n === 'colon')\n return ':';\n if (n.charAt(0) === '#') {\n return n.charAt(1) === 'x'\n ? String.fromCharCode(parseInt(n.substring(2), 16))\n : String.fromCharCode(+n.substring(1));\n }\n return '';\n });\n}\nconst caret = /(^|[^\\[])\\^/g;\nexport function edit(regex, opt) {\n let source = typeof regex === 'string' ? regex : regex.source;\n opt = opt || '';\n const obj = {\n replace: (name, val) => {\n let valSource = typeof val === 'string' ? val : val.source;\n valSource = valSource.replace(caret, '$1');\n source = source.replace(name, valSource);\n return obj;\n },\n getRegex: () => {\n return new RegExp(source, opt);\n }\n };\n return obj;\n}\nexport function cleanUrl(href) {\n try {\n href = encodeURI(href).replace(/%25/g, '%');\n }\n catch (e) {\n return null;\n }\n return href;\n}\nexport const noopTest = { exec: () => null };\nexport function splitCells(tableRow, count) {\n // ensure that every cell-delimiting pipe has a space\n // before it to distinguish it from an escaped pipe\n const row = tableRow.replace(/\\|/g, (match, offset, str) => {\n let escaped = false;\n let curr = offset;\n while (--curr >= 0 && str[curr] === '\\\\')\n escaped = !escaped;\n if (escaped) {\n // odd number of slashes means | is escaped\n // so we leave it alone\n return '|';\n }\n else {\n // add space before unescaped |\n return ' |';\n }\n }), cells = row.split(/ \\|/);\n let i = 0;\n // First/last cell in a row cannot be empty if it has no leading/trailing pipe\n if (!cells[0].trim()) {\n cells.shift();\n }\n if (cells.length > 0 && !cells[cells.length - 1].trim()) {\n cells.pop();\n }\n if (count) {\n if (cells.length > count) {\n cells.splice(count);\n }\n else {\n while (cells.length < count)\n cells.push('');\n }\n }\n for (; i < cells.length; i++) {\n // leading or trailing whitespace is ignored per the gfm spec\n cells[i] = cells[i].trim().replace(/\\\\\\|/g, '|');\n }\n return cells;\n}\n/**\n * Remove trailing 'c's. Equivalent to str.replace(/c*$/, '').\n * /c*$/ is vulnerable to REDOS.\n *\n * @param str\n * @param c\n * @param invert Remove suffix of non-c chars instead. Default falsey.\n */\nexport function rtrim(str, c, invert) {\n const l = str.length;\n if (l === 0) {\n return '';\n }\n // Length of suffix matching the invert condition.\n let suffLen = 0;\n // Step left until we fail to match the invert condition.\n while (suffLen < l) {\n const currChar = str.charAt(l - suffLen - 1);\n if (currChar === c && !invert) {\n suffLen++;\n }\n else if (currChar !== c && invert) {\n suffLen++;\n }\n else {\n break;\n }\n }\n return str.slice(0, l - suffLen);\n}\nexport function findClosingBracket(str, b) {\n if (str.indexOf(b[1]) === -1) {\n return -1;\n }\n let level = 0;\n for (let i = 0; i < str.length; i++) {\n if (str[i] === '\\\\') {\n i++;\n }\n else if (str[i] === b[0]) {\n level++;\n }\n else if (str[i] === b[1]) {\n level--;\n if (level < 0) {\n return i;\n }\n }\n }\n return -1;\n}\n", "import { _defaults } from './defaults.ts';\nimport { rtrim, splitCells, escape, findClosingBracket } from './helpers.ts';\nfunction outputLink(cap, link, raw, lexer) {\n const href = link.href;\n const title = link.title ? escape(link.title) : null;\n const text = cap[1].replace(/\\\\([\\[\\]])/g, '$1');\n if (cap[0].charAt(0) !== '!') {\n lexer.state.inLink = true;\n const token = {\n type: 'link',\n raw,\n href,\n title,\n text,\n tokens: lexer.inlineTokens(text)\n };\n lexer.state.inLink = false;\n return token;\n }\n return {\n type: 'image',\n raw,\n href,\n title,\n text: escape(text)\n };\n}\nfunction indentCodeCompensation(raw, text) {\n const matchIndentToCode = raw.match(/^(\\s+)(?:```)/);\n if (matchIndentToCode === null) {\n return text;\n }\n const indentToCode = matchIndentToCode[1];\n return text\n .split('\\n')\n .map(node => {\n const matchIndentInNode = node.match(/^\\s+/);\n if (matchIndentInNode === null) {\n return node;\n }\n const [indentInNode] = matchIndentInNode;\n if (indentInNode.length >= indentToCode.length) {\n return node.slice(indentToCode.length);\n }\n return node;\n })\n .join('\\n');\n}\n/**\n * Tokenizer\n */\nexport class _Tokenizer {\n options;\n rules; // set by the lexer\n lexer; // set by the lexer\n constructor(options) {\n this.options = options || _defaults;\n }\n space(src) {\n const cap = this.rules.block.newline.exec(src);\n if (cap && cap[0].length > 0) {\n return {\n type: 'space',\n raw: cap[0]\n };\n }\n }\n code(src) {\n const cap = this.rules.block.code.exec(src);\n if (cap) {\n const text = cap[0].replace(/^ {1,4}/gm, '');\n return {\n type: 'code',\n raw: cap[0],\n codeBlockStyle: 'indented',\n text: !this.options.pedantic\n ? rtrim(text, '\\n')\n : text\n };\n }\n }\n fences(src) {\n const cap = this.rules.block.fences.exec(src);\n if (cap) {\n const raw = cap[0];\n const text = indentCodeCompensation(raw, cap[3] || '');\n return {\n type: 'code',\n raw,\n lang: cap[2] ? cap[2].trim().replace(this.rules.inline.anyPunctuation, '$1') : cap[2],\n text\n };\n }\n }\n heading(src) {\n const cap = this.rules.block.heading.exec(src);\n if (cap) {\n let text = cap[2].trim();\n // remove trailing #s\n if (/#$/.test(text)) {\n const trimmed = rtrim(text, '#');\n if (this.options.pedantic) {\n text = trimmed.trim();\n }\n else if (!trimmed || / $/.test(trimmed)) {\n // CommonMark requires space before trailing #s\n text = trimmed.trim();\n }\n }\n return {\n type: 'heading',\n raw: cap[0],\n depth: cap[1].length,\n text,\n tokens: this.lexer.inline(text)\n };\n }\n }\n hr(src) {\n const cap = this.rules.block.hr.exec(src);\n if (cap) {\n return {\n type: 'hr',\n raw: cap[0]\n };\n }\n }\n blockquote(src) {\n const cap = this.rules.block.blockquote.exec(src);\n if (cap) {\n // precede setext continuation with 4 spaces so it isn't a setext\n let text = cap[0].replace(/\\n {0,3}((?:=+|-+) *)(?=\\n|$)/g, '\\n $1');\n text = rtrim(text.replace(/^ *>[ \\t]?/gm, ''), '\\n');\n const top = this.lexer.state.top;\n this.lexer.state.top = true;\n const tokens = this.lexer.blockTokens(text);\n this.lexer.state.top = top;\n return {\n type: 'blockquote',\n raw: cap[0],\n tokens,\n text\n };\n }\n }\n list(src) {\n let cap = this.rules.block.list.exec(src);\n if (cap) {\n let bull = cap[1].trim();\n const isordered = bull.length > 1;\n const list = {\n type: 'list',\n raw: '',\n ordered: isordered,\n start: isordered ? +bull.slice(0, -1) : '',\n loose: false,\n items: []\n };\n bull = isordered ? `\\\\d{1,9}\\\\${bull.slice(-1)}` : `\\\\${bull}`;\n if (this.options.pedantic) {\n bull = isordered ? bull : '[*+-]';\n }\n // Get next list item\n const itemRegex = new RegExp(`^( {0,3}${bull})((?:[\\t ][^\\\\n]*)?(?:\\\\n|$))`);\n let raw = '';\n let itemContents = '';\n let endsWithBlankLine = false;\n // Check if current bullet point can start a new List Item\n while (src) {\n let endEarly = false;\n if (!(cap = itemRegex.exec(src))) {\n break;\n }\n if (this.rules.block.hr.test(src)) { // End list if bullet was actually HR (possibly move into itemRegex?)\n break;\n }\n raw = cap[0];\n src = src.substring(raw.length);\n let line = cap[2].split('\\n', 1)[0].replace(/^\\t+/, (t) => ' '.repeat(3 * t.length));\n let nextLine = src.split('\\n', 1)[0];\n let indent = 0;\n if (this.options.pedantic) {\n indent = 2;\n itemContents = line.trimStart();\n }\n else {\n indent = cap[2].search(/[^ ]/); // Find first non-space char\n indent = indent > 4 ? 1 : indent; // Treat indented code blocks (> 4 spaces) as having only 1 indent\n itemContents = line.slice(indent);\n indent += cap[1].length;\n }\n let blankLine = false;\n if (!line && /^ *$/.test(nextLine)) { // Items begin with at most one blank line\n raw += nextLine + '\\n';\n src = src.substring(nextLine.length + 1);\n endEarly = true;\n }\n if (!endEarly) {\n const nextBulletRegex = new RegExp(`^ {0,${Math.min(3, indent - 1)}}(?:[*+-]|\\\\d{1,9}[.)])((?:[ \\t][^\\\\n]*)?(?:\\\\n|$))`);\n const hrRegex = new RegExp(`^ {0,${Math.min(3, indent - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$)`);\n const fencesBeginRegex = new RegExp(`^ {0,${Math.min(3, indent - 1)}}(?:\\`\\`\\`|~~~)`);\n const headingBeginRegex = new RegExp(`^ {0,${Math.min(3, indent - 1)}}#`);\n // Check if following lines should be included in List Item\n while (src) {\n const rawLine = src.split('\\n', 1)[0];\n nextLine = rawLine;\n // Re-align to follow commonmark nesting rules\n if (this.options.pedantic) {\n nextLine = nextLine.replace(/^ {1,4}(?=( {4})*[^ ])/g, ' ');\n }\n // End list item if found code fences\n if (fencesBeginRegex.test(nextLine)) {\n break;\n }\n // End list item if found start of new heading\n if (headingBeginRegex.test(nextLine)) {\n break;\n }\n // End list item if found start of new bullet\n if (nextBulletRegex.test(nextLine)) {\n break;\n }\n // Horizontal rule found\n if (hrRegex.test(src)) {\n break;\n }\n if (nextLine.search(/[^ ]/) >= indent || !nextLine.trim()) { // Dedent if possible\n itemContents += '\\n' + nextLine.slice(indent);\n }\n else {\n // not enough indentation\n if (blankLine) {\n break;\n }\n // paragraph continuation unless last line was a different block level element\n if (line.search(/[^ ]/) >= 4) { // indented code block\n break;\n }\n if (fencesBeginRegex.test(line)) {\n break;\n }\n if (headingBeginRegex.test(line)) {\n break;\n }\n if (hrRegex.test(line)) {\n break;\n }\n itemContents += '\\n' + nextLine;\n }\n if (!blankLine && !nextLine.trim()) { // Check if current line is blank\n blankLine = true;\n }\n raw += rawLine + '\\n';\n src = src.substring(rawLine.length + 1);\n line = nextLine.slice(indent);\n }\n }\n if (!list.loose) {\n // If the previous item ended with a blank line, the list is loose\n if (endsWithBlankLine) {\n list.loose = true;\n }\n else if (/\\n *\\n *$/.test(raw)) {\n endsWithBlankLine = true;\n }\n }\n let istask = null;\n let ischecked;\n // Check for task list items\n if (this.options.gfm) {\n istask = /^\\[[ xX]\\] /.exec(itemContents);\n if (istask) {\n ischecked = istask[0] !== '[ ] ';\n itemContents = itemContents.replace(/^\\[[ xX]\\] +/, '');\n }\n }\n list.items.push({\n type: 'list_item',\n raw,\n task: !!istask,\n checked: ischecked,\n loose: false,\n text: itemContents,\n tokens: []\n });\n list.raw += raw;\n }\n // Do not consume newlines at end of final item. Alternatively, make itemRegex *start* with any newlines to simplify/speed up endsWithBlankLine logic\n list.items[list.items.length - 1].raw = raw.trimEnd();\n (list.items[list.items.length - 1]).text = itemContents.trimEnd();\n list.raw = list.raw.trimEnd();\n // Item child tokens handled here at end because we needed to have the final item to trim it first\n for (let i = 0; i < list.items.length; i++) {\n this.lexer.state.top = false;\n list.items[i].tokens = this.lexer.blockTokens(list.items[i].text, []);\n if (!list.loose) {\n // Check if list should be loose\n const spacers = list.items[i].tokens.filter(t => t.type === 'space');\n const hasMultipleLineBreaks = spacers.length > 0 && spacers.some(t => /\\n.*\\n/.test(t.raw));\n list.loose = hasMultipleLineBreaks;\n }\n }\n // Set all items to loose if list is loose\n if (list.loose) {\n for (let i = 0; i < list.items.length; i++) {\n list.items[i].loose = true;\n }\n }\n return list;\n }\n }\n html(src) {\n const cap = this.rules.block.html.exec(src);\n if (cap) {\n const token = {\n type: 'html',\n block: true,\n raw: cap[0],\n pre: cap[1] === 'pre' || cap[1] === 'script' || cap[1] === 'style',\n text: cap[0]\n };\n return token;\n }\n }\n def(src) {\n const cap = this.rules.block.def.exec(src);\n if (cap) {\n const tag = cap[1].toLowerCase().replace(/\\s+/g, ' ');\n const href = cap[2] ? cap[2].replace(/^<(.*)>$/, '$1').replace(this.rules.inline.anyPunctuation, '$1') : '';\n const title = cap[3] ? cap[3].substring(1, cap[3].length - 1).replace(this.rules.inline.anyPunctuation, '$1') : cap[3];\n return {\n type: 'def',\n tag,\n raw: cap[0],\n href,\n title\n };\n }\n }\n table(src) {\n const cap = this.rules.block.table.exec(src);\n if (!cap) {\n return;\n }\n if (!/[:|]/.test(cap[2])) {\n // delimiter row must have a pipe (|) or colon (:) otherwise it is a setext heading\n return;\n }\n const headers = splitCells(cap[1]);\n const aligns = cap[2].replace(/^\\||\\| *$/g, '').split('|');\n const rows = cap[3] && cap[3].trim() ? cap[3].replace(/\\n[ \\t]*$/, '').split('\\n') : [];\n const item = {\n type: 'table',\n raw: cap[0],\n header: [],\n align: [],\n rows: []\n };\n if (headers.length !== aligns.length) {\n // header and align columns must be equal, rows can be different.\n return;\n }\n for (const align of aligns) {\n if (/^ *-+: *$/.test(align)) {\n item.align.push('right');\n }\n else if (/^ *:-+: *$/.test(align)) {\n item.align.push('center');\n }\n else if (/^ *:-+ *$/.test(align)) {\n item.align.push('left');\n }\n else {\n item.align.push(null);\n }\n }\n for (const header of headers) {\n item.header.push({\n text: header,\n tokens: this.lexer.inline(header)\n });\n }\n for (const row of rows) {\n item.rows.push(splitCells(row, item.header.length).map(cell => {\n return {\n text: cell,\n tokens: this.lexer.inline(cell)\n };\n }));\n }\n return item;\n }\n lheading(src) {\n const cap = this.rules.block.lheading.exec(src);\n if (cap) {\n return {\n type: 'heading',\n raw: cap[0],\n depth: cap[2].charAt(0) === '=' ? 1 : 2,\n text: cap[1],\n tokens: this.lexer.inline(cap[1])\n };\n }\n }\n paragraph(src) {\n const cap = this.rules.block.paragraph.exec(src);\n if (cap) {\n const text = cap[1].charAt(cap[1].length - 1) === '\\n'\n ? cap[1].slice(0, -1)\n : cap[1];\n return {\n type: 'paragraph',\n raw: cap[0],\n text,\n tokens: this.lexer.inline(text)\n };\n }\n }\n text(src) {\n const cap = this.rules.block.text.exec(src);\n if (cap) {\n return {\n type: 'text',\n raw: cap[0],\n text: cap[0],\n tokens: this.lexer.inline(cap[0])\n };\n }\n }\n escape(src) {\n const cap = this.rules.inline.escape.exec(src);\n if (cap) {\n return {\n type: 'escape',\n raw: cap[0],\n text: escape(cap[1])\n };\n }\n }\n tag(src) {\n const cap = this.rules.inline.tag.exec(src);\n if (cap) {\n if (!this.lexer.state.inLink && /^<a /i.test(cap[0])) {\n this.lexer.state.inLink = true;\n }\n else if (this.lexer.state.inLink && /^<\\/a>/i.test(cap[0])) {\n this.lexer.state.inLink = false;\n }\n if (!this.lexer.state.inRawBlock && /^<(pre|code|kbd|script)(\\s|>)/i.test(cap[0])) {\n this.lexer.state.inRawBlock = true;\n }\n else if (this.lexer.state.inRawBlock && /^<\\/(pre|code|kbd|script)(\\s|>)/i.test(cap[0])) {\n this.lexer.state.inRawBlock = false;\n }\n return {\n type: 'html',\n raw: cap[0],\n inLink: this.lexer.state.inLink,\n inRawBlock: this.lexer.state.inRawBlock,\n block: false,\n text: cap[0]\n };\n }\n }\n link(src) {\n const cap = this.rules.inline.link.exec(src);\n if (cap) {\n const trimmedUrl = cap[2].trim();\n if (!this.options.pedantic && /^</.test(trimmedUrl)) {\n // commonmark requires matching angle brackets\n if (!(/>$/.test(trimmedUrl))) {\n return;\n }\n // ending angle bracket cannot be escaped\n const rtrimSlash = rtrim(trimmedUrl.slice(0, -1), '\\\\');\n if ((trimmedUrl.length - rtrimSlash.length) % 2 === 0) {\n return;\n }\n }\n else {\n // find closing parenthesis\n const lastParenIndex = findClosingBracket(cap[2], '()');\n if (lastParenIndex > -1) {\n const start = cap[0].indexOf('!') === 0 ? 5 : 4;\n const linkLen = start + cap[1].length + lastParenIndex;\n cap[2] = cap[2].substring(0, lastParenIndex);\n cap[0] = cap[0].substring(0, linkLen).trim();\n cap[3] = '';\n }\n }\n let href = cap[2];\n let title = '';\n if (this.options.pedantic) {\n // split pedantic href and title\n const link = /^([^'\"]*[^\\s])\\s+(['\"])(.*)\\2/.exec(href);\n if (link) {\n href = link[1];\n title = link[3];\n }\n }\n else {\n title = cap[3] ? cap[3].slice(1, -1) : '';\n }\n href = href.trim();\n if (/^</.test(href)) {\n if (this.options.pedantic && !(/>$/.test(trimmedUrl))) {\n // pedantic allows starting angle bracket without ending angle bracket\n href = href.slice(1);\n }\n else {\n href = href.slice(1, -1);\n }\n }\n return outputLink(cap, {\n href: href ? href.replace(this.rules.inline.anyPunctuation, '$1') : href,\n title: title ? title.replace(this.rules.inline.anyPunctuation, '$1') : title\n }, cap[0], this.lexer);\n }\n }\n reflink(src, links) {\n let cap;\n if ((cap = this.rules.inline.reflink.exec(src))\n || (cap = this.rules.inline.nolink.exec(src))) {\n const linkString = (cap[2] || cap[1]).replace(/\\s+/g, ' ');\n const link = links[linkString.toLowerCase()];\n if (!link) {\n const text = cap[0].charAt(0);\n return {\n type: 'text',\n raw: text,\n text\n };\n }\n return outputLink(cap, link, cap[0], this.lexer);\n }\n }\n emStrong(src, maskedSrc, prevChar = '') {\n let match = this.rules.inline.emStrongLDelim.exec(src);\n if (!match)\n return;\n // _ can't be between two alphanumerics. \\p{L}\\p{N} includes non-english alphabet/numbers as well\n if (match[3] && prevChar.match(/[\\p{L}\\p{N}]/u))\n return;\n const nextChar = match[1] || match[2] || '';\n if (!nextChar || !prevChar || this.rules.inline.punctuation.exec(prevChar)) {\n // unicode Regex counts emoji as 1 char; spread into array for proper count (used multiple times below)\n const lLength = [...match[0]].length - 1;\n let rDelim, rLength, delimTotal = lLength, midDelimTotal = 0;\n const endReg = match[0][0] === '*' ? this.rules.inline.emStrongRDelimAst : this.rules.inline.emStrongRDelimUnd;\n endReg.lastIndex = 0;\n // Clip maskedSrc to same section of string as src (move to lexer?)\n maskedSrc = maskedSrc.slice(-1 * src.length + lLength);\n while ((match = endReg.exec(maskedSrc)) != null) {\n rDelim = match[1] || match[2] || match[3] || match[4] || match[5] || match[6];\n if (!rDelim)\n continue; // skip single * in __abc*abc__\n rLength = [...rDelim].length;\n if (match[3] || match[4]) { // found another Left Delim\n delimTotal += rLength;\n continue;\n }\n else if (match[5] || match[6]) { // either Left or Right Delim\n if (lLength % 3 && !((lLength + rLength) % 3)) {\n midDelimTotal += rLength;\n continue; // CommonMark Emphasis Rules 9-10\n }\n }\n delimTotal -= rLength;\n if (delimTotal > 0)\n continue; // Haven't found enough closing delimiters\n // Remove extra characters. *a*** -> *a*\n rLength = Math.min(rLength, rLength + delimTotal + midDelimTotal);\n // char length can be >1 for unicode characters;\n const lastCharLength = [...match[0]][0].length;\n const raw = src.slice(0, lLength + match.index + lastCharLength + rLength);\n // Create `em` if smallest delimiter has odd char count. *a***\n if (Math.min(lLength, rLength) % 2) {\n const text = raw.slice(1, -1);\n return {\n type: 'em',\n raw,\n text,\n tokens: this.lexer.inlineTokens(text)\n };\n }\n // Create 'strong' if smallest delimiter has even char count. **a***\n const text = raw.slice(2, -2);\n return {\n type: 'strong',\n raw,\n text,\n tokens: this.lexer.inlineTokens(text)\n };\n }\n }\n }\n codespan(src) {\n const cap = this.rules.inline.code.exec(src);\n if (cap) {\n let text = cap[2].replace(/\\n/g, ' ');\n const hasNonSpaceChars = /[^ ]/.test(text);\n const hasSpaceCharsOnBothEnds = /^ /.test(text) && / $/.test(text);\n if (hasNonSpaceChars && hasSpaceCharsOnBothEnds) {\n text = text.substring(1, text.length - 1);\n }\n text = escape(text, true);\n return {\n type: 'codespan',\n raw: cap[0],\n text\n };\n }\n }\n br(src) {\n const cap = this.rules.inline.br.exec(src);\n if (cap) {\n return {\n type: 'br',\n raw: cap[0]\n };\n }\n }\n del(src) {\n const cap = this.rules.inline.del.exec(src);\n if (cap) {\n return {\n type: 'del',\n raw: cap[0],\n text: cap[2],\n tokens: this.lexer.inlineTokens(cap[2])\n };\n }\n }\n autolink(src) {\n const cap = this.rules.inline.autolink.exec(src);\n if (cap) {\n let text, href;\n if (cap[2] === '@') {\n text = escape(cap[1]);\n href = 'mailto:' + text;\n }\n else {\n text = escape(cap[1]);\n href = text;\n }\n return {\n type: 'link',\n raw: cap[0],\n text,\n href,\n tokens: [\n {\n type: 'text',\n raw: text,\n text\n }\n ]\n };\n }\n }\n url(src) {\n let cap;\n if (cap = this.rules.inline.url.exec(src)) {\n let text, href;\n if (cap[2] === '@') {\n text = escape(cap[0]);\n href = 'mailto:' + text;\n }\n else {\n // do extended autolink path validation\n let prevCapZero;\n do {\n prevCapZero = cap[0];\n cap[0] = this.rules.inline._backpedal.exec(cap[0])?.[0] ?? '';\n } while (prevCapZero !== cap[0]);\n text = escape(cap[0]);\n if (cap[1] === 'www.') {\n href = 'http://' + cap[0];\n }\n else {\n href = cap[0];\n }\n }\n return {\n type: 'link',\n raw: cap[0],\n text,\n href,\n tokens: [\n {\n type: 'text',\n raw: text,\n text\n }\n ]\n };\n }\n }\n inlineText(src) {\n const cap = this.rules.inline.text.exec(src);\n if (cap) {\n let text;\n if (this.lexer.state.inRawBlock) {\n text = cap[0];\n }\n else {\n text = escape(cap[0]);\n }\n return {\n type: 'text',\n raw: cap[0],\n text\n };\n }\n }\n}\n", "import { edit, noopTest } from './helpers.ts';\n/**\n * Block-Level Grammar\n */\nconst newline = /^(?: *(?:\\n|$))+/;\nconst blockCode = /^( {4}[^\\n]+(?:\\n(?: *(?:\\n|$))*)?)+/;\nconst fences = /^ {0,3}(`{3,}(?=[^`\\n]*(?:\\n|$))|~{3,})([^\\n]*)(?:\\n|$)(?:|([\\s\\S]*?)(?:\\n|$))(?: {0,3}\\1[~`]* *(?=\\n|$)|$)/;\nconst hr = /^ {0,3}((?:-[\\t ]*){3,}|(?:_[ \\t]*){3,}|(?:\\*[ \\t]*){3,})(?:\\n+|$)/;\nconst heading = /^ {0,3}(#{1,6})(?=\\s|$)(.*)(?:\\n+|$)/;\nconst bullet = /(?:[*+-]|\\d{1,9}[.)])/;\nconst lheading = edit(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\\n(?!\\s*?\\n|bull |blockCode|fences|blockquote|heading|html))+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/)\n .replace(/bull/g, bullet) // lists can interrupt\n .replace(/blockCode/g, / {4}/) // indented code blocks can interrupt\n .replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/) // fenced code blocks can interrupt\n .replace(/blockquote/g, / {0,3}>/) // blockquote can interrupt\n .replace(/heading/g, / {0,3}#{1,6}/) // ATX heading can interrupt\n .replace(/html/g, / {0,3}<[^\\n>]+>\\n/) // block html can interrupt\n .getRegex();\nconst _paragraph = /^([^\\n]+(?:\\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\\n)[^\\n]+)*)/;\nconst blockText = /^[^\\n]+/;\nconst _blockLabel = /(?!\\s*\\])(?:\\\\.|[^\\[\\]\\\\])+/;\nconst def = edit(/^ {0,3}\\[(label)\\]: *(?:\\n *)?([^<\\s][^\\s]*|<.*?>)(?:(?: +(?:\\n *)?| *\\n *)(title))? *(?:\\n+|$)/)\n .replace('label', _blockLabel)\n .replace('title', /(?:\"(?:\\\\\"?|[^\"\\\\])*\"|'[^'\\n]*(?:\\n[^'\\n]+)*\\n?'|\\([^()]*\\))/)\n .getRegex();\nconst list = edit(/^( {0,3}bull)([ \\t][^\\n]+?)?(?:\\n|$)/)\n .replace(/bull/g, bullet)\n .getRegex();\nconst _tag = 'address|article|aside|base|basefont|blockquote|body|caption'\n + '|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption'\n + '|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe'\n + '|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option'\n + '|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title'\n + '|tr|track|ul';\nconst _comment = /<!--(?:-?>|[\\s\\S]*?(?:-->|$))/;\nconst html = edit('^ {0,3}(?:' // optional indentation\n + '<(script|pre|style|textarea)[\\\\s>][\\\\s\\\\S]*?(?:</\\\\1>[^\\\\n]*\\\\n+|$)' // (1)\n + '|comment[^\\\\n]*(\\\\n+|$)' // (2)\n + '|<\\\\?[\\\\s\\\\S]*?(?:\\\\?>\\\\n*|$)' // (3)\n + '|<![A-Z][\\\\s\\\\S]*?(?:>\\\\n*|$)' // (4)\n + '|<!\\\\[CDATA\\\\[[\\\\s\\\\S]*?(?:\\\\]\\\\]>\\\\n*|$)' // (5)\n + '|</?(tag)(?: +|\\\\n|/?>)[\\\\s\\\\S]*?(?:(?:\\\\n *)+\\\\n|$)' // (6)\n + '|<(?!script|pre|style|textarea)([a-z][\\\\w-]*)(?:attribute)*? */?>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n *)+\\\\n|$)' // (7) open tag\n + '|</(?!script|pre|style|textarea)[a-z][\\\\w-]*\\\\s*>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n *)+\\\\n|$)' // (7) closing tag\n + ')', 'i')\n .replace('comment', _comment)\n .replace('tag', _tag)\n .replace('attribute', / +[a-zA-Z:_][\\w.:-]*(?: *= *\"[^\"\\n]*\"| *= *'[^'\\n]*'| *= *[^\\s\"'=<>`]+)?/)\n .getRegex();\nconst paragraph = edit(_paragraph)\n .replace('hr', hr)\n .replace('heading', ' {0,3}#{1,6}(?:\\\\s|$)')\n .replace('|lheading', '') // setext headings don't interrupt commonmark paragraphs\n .replace('|table', '')\n .replace('blockquote', ' {0,3}>')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', '</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|textarea|!--)')\n .replace('tag', _tag) // pars can be interrupted by type (6) html blocks\n .getRegex();\nconst blockquote = edit(/^( {0,3}> ?(paragraph|[^\\n]*)(?:\\n|$))+/)\n .replace('paragraph', paragraph)\n .getRegex();\n/**\n * Normal Block Grammar\n */\nconst blockNormal = {\n blockquote,\n code: blockCode,\n def,\n fences,\n heading,\n hr,\n html,\n lheading,\n list,\n newline,\n paragraph,\n table: noopTest,\n text: blockText\n};\n/**\n * GFM Block Grammar\n */\nconst gfmTable = edit('^ *([^\\\\n ].*)\\\\n' // Header\n + ' {0,3}((?:\\\\| *)?:?-+:? *(?:\\\\| *:?-+:? *)*(?:\\\\| *)?)' // Align\n + '(?:\\\\n((?:(?! *\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)') // Cells\n .replace('hr', hr)\n .replace('heading', ' {0,3}#{1,6}(?:\\\\s|$)')\n .replace('blockquote', ' {0,3}>')\n .replace('code', ' {4}[^\\\\n]')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', '</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|textarea|!--)')\n .replace('tag', _tag) // tables can be interrupted by type (6) html blocks\n .getRegex();\nconst blockGfm = {\n ...blockNormal,\n table: gfmTable,\n paragraph: edit(_paragraph)\n .replace('hr', hr)\n .replace('heading', ' {0,3}#{1,6}(?:\\\\s|$)')\n .replace('|lheading', '') // setext headings don't interrupt commonmark paragraphs\n .replace('table', gfmTable) // interrupt paragraphs with table\n .replace('blockquote', ' {0,3}>')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', '</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|textarea|!--)')\n .replace('tag', _tag) // pars can be interrupted by type (6) html blocks\n .getRegex()\n};\n/**\n * Pedantic grammar (original John Gruber's loose markdown specification)\n */\nconst blockPedantic = {\n ...blockNormal,\n html: edit('^ *(?:comment *(?:\\\\n|\\\\s*$)'\n + '|<(tag)[\\\\s\\\\S]+?</\\\\1> *(?:\\\\n{2,}|\\\\s*$)' // closed tag\n + '|<tag(?:\"[^\"]*\"|\\'[^\\']*\\'|\\\\s[^\\'\"/>\\\\s]*)*?/?> *(?:\\\\n{2,}|\\\\s*$))')\n .replace('comment', _comment)\n .replace(/tag/g, '(?!(?:'\n + 'a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub'\n + '|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)'\n + '\\\\b)\\\\w+(?!:|[^\\\\w\\\\s@]*@)\\\\b')\n .getRegex(),\n def: /^ *\\[([^\\]]+)\\]: *<?([^\\s>]+)>?(?: +([\"(][^\\n]+[\")]))? *(?:\\n+|$)/,\n heading: /^(#{1,6})(.*)(?:\\n+|$)/,\n fences: noopTest, // fences not supported\n lheading: /^(.+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,\n paragraph: edit(_paragraph)\n .replace('hr', hr)\n .replace('heading', ' *#{1,6} *[^\\n]')\n .replace('lheading', lheading)\n .replace('|table', '')\n .replace('blockquote', ' {0,3}>')\n .replace('|fences', '')\n .replace('|list', '')\n .replace('|html', '')\n .replace('|tag', '')\n .getRegex()\n};\n/**\n * Inline-Level Grammar\n */\nconst escape = /^\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/;\nconst inlineCode = /^(`+)([^`]|[^`][\\s\\S]*?[^`])\\1(?!`)/;\nconst br = /^( {2,}|\\\\)\\n(?!\\s*$)/;\nconst inlineText = /^(`+|[^`])(?:(?= {2,}\\n)|[\\s\\S]*?(?:(?=[\\\\<!\\[`*_]|\\b_|$)|[^ ](?= {2,}\\n)))/;\n// list of unicode punctuation marks, plus any missing characters from CommonMark spec\nconst _punctuation = '\\\\p{P}\\\\p{S}';\nconst punctuation = edit(/^((?![*_])[\\spunctuation])/, 'u')\n .replace(/punctuation/g, _punctuation).getRegex();\n// sequences em should skip over [title](link), `code`, <html>\nconst blockSkip = /\\[[^[\\]]*?\\]\\([^\\(\\)]*?\\)|`[^`]*?`|<[^<>]*?>/g;\nconst emStrongLDelim = edit(/^(?:\\*+(?:((?!\\*)[punct])|[^\\s*]))|^_+(?:((?!_)[punct])|([^\\s_]))/, 'u')\n .replace(/punct/g, _punctuation)\n .getRegex();\nconst emStrongRDelimAst = edit('^[^_*]*?__[^_*]*?\\\\*[^_*]*?(?=__)' // Skip orphan inside strong\n + '|[^*]+(?=[^*])' // Consume to delim\n + '|(?!\\\\*)[punct](\\\\*+)(?=[\\\\s]|$)' // (1) #*** can only be a Right Delimiter\n + '|[^punct\\\\s](\\\\*+)(?!\\\\*)(?=[punct\\\\s]|$)' // (2) a***#, a*** can only be a Right Delimiter\n + '|(?!\\\\*)[punct\\\\s](\\\\*+)(?=[^punct\\\\s])' // (3) #***a, ***a can only be Left Delimiter\n + '|[\\\\s](\\\\*+)(?!\\\\*)(?=[punct])' // (4) ***# can only be Left Delimiter\n + '|(?!\\\\*)[punct](\\\\*+)(?!\\\\*)(?=[punct])' // (5) #***# can be either Left or Right Delimiter\n + '|[^punct\\\\s](\\\\*+)(?=[^punct\\\\s])', 'gu') // (6) a***a can be either Left or Right Delimiter\n .replace(/punct/g, _punctuation)\n .getRegex();\n// (6) Not allowed for _\nconst emStrongRDelimUnd = edit('^[^_*]*?\\\\*\\\\*[^_*]*?_[^_*]*?(?=\\\\*\\\\*)' // Skip orphan inside strong\n + '|[^_]+(?=[^_])' // Consume to delim\n + '|(?!_)[punct](_+)(?=[\\\\s]|$)' // (1) #___ can only be a Right Delimiter\n + '|[^punct\\\\s](_+)(?!_)(?=[punct\\\\s]|$)' // (2) a___#, a___ can only be a Right Delimiter\n + '|(?!_)[punct\\\\s](_+)(?=[^punct\\\\s])' // (3) #___a, ___a can only be Left Delimiter\n + '|[\\\\s](_+)(?!_)(?=[punct])' // (4) ___# can only be Left Delimiter\n + '|(?!_)[punct](_+)(?!_)(?=[punct])', 'gu') // (5) #___# can be either Left or Right Delimiter\n .replace(/punct/g, _punctuation)\n .getRegex();\nconst anyPunctuation = edit(/\\\\([punct])/, 'gu')\n .replace(/punct/g, _punctuation)\n .getRegex();\nconst autolink = edit(/^<(scheme:[^\\s\\x00-\\x1f<>]*|email)>/)\n .replace('scheme', /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/)\n .replace('email', /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/)\n .getRegex();\nconst _inlineComment = edit(_comment).replace('(?:-->|$)', '-->').getRegex();\nconst tag = edit('^comment'\n + '|^</[a-zA-Z][\\\\w:-]*\\\\s*>' // self-closing tag\n + '|^<[a-zA-Z][\\\\w-]*(?:attribute)*?\\\\s*/?>' // open tag\n + '|^<\\\\?[\\\\s\\\\S]*?\\\\?>' // processing instruction, e.g. <?php ?>\n + '|^<![a-zA-Z]+\\\\s[\\\\s\\\\S]*?>' // declaration, e.g. <!DOCTYPE html>\n + '|^<!\\\\[CDATA\\\\[[\\\\s\\\\S]*?\\\\]\\\\]>') // CDATA section\n .replace('comment', _inlineComment)\n .replace('attribute', /\\s+[a-zA-Z:_][\\w.:-]*(?:\\s*=\\s*\"[^\"]*\"|\\s*=\\s*'[^']*'|\\s*=\\s*[^\\s\"'=<>`]+)?/)\n .getRegex();\nconst _inlineLabel = /(?:\\[(?:\\\\.|[^\\[\\]\\\\])*\\]|\\\\.|`[^`]*`|[^\\[\\]\\\\`])*?/;\nconst link = edit(/^!?\\[(label)\\]\\(\\s*(href)(?:\\s+(title))?\\s*\\)/)\n .replace('label', _inlineLabel)\n .replace('href', /<(?:\\\\.|[^\\n<>\\\\])+>|[^\\s\\x00-\\x1f]*/)\n .replace('title', /\"(?:\\\\\"?|[^\"\\\\])*\"|'(?:\\\\'?|[^'\\\\])*'|\\((?:\\\\\\)?|[^)\\\\])*\\)/)\n .getRegex();\nconst reflink = edit(/^!?\\[(label)\\]\\[(ref)\\]/)\n .replace('label', _inlineLabel)\n .replace('ref', _blockLabel)\n .getRegex();\nconst nolink = edit(/^!?\\[(ref)\\](?:\\[\\])?/)\n .replace('ref', _blockLabel)\n .getRegex();\nconst reflinkSearch = edit('reflink|nolink(?!\\\\()', 'g')\n .replace('reflink', reflink)\n .replace('nolink', nolink)\n .getRegex();\n/**\n * Normal Inline Grammar\n */\nconst inlineNormal = {\n _backpedal: noopTest, // only used for GFM url\n anyPunctuation,\n autolink,\n blockSkip,\n br,\n code: inlineCode,\n del: noopTest,\n emStrongLDelim,\n emStrongRDelimAst,\n emStrongRDelimUnd,\n escape,\n link,\n nolink,\n punctuation,\n reflink,\n reflinkSearch,\n tag,\n text: inlineText,\n url: noopTest\n};\n/**\n * Pedantic Inline Grammar\n */\nconst inlinePedantic = {\n ...inlineNormal,\n link: edit(/^!?\\[(label)\\]\\((.*?)\\)/)\n .replace('label', _inlineLabel)\n .getRegex(),\n reflink: edit(/^!?\\[(label)\\]\\s*\\[([^\\]]*)\\]/)\n .replace('label', _inlineLabel)\n .getRegex()\n};\n/**\n * GFM Inline Grammar\n */\nconst inlineGfm = {\n ...inlineNormal,\n escape: edit(escape).replace('])', '~|])').getRegex(),\n url: edit(/^((?:ftp|https?):\\/\\/|www\\.)(?:[a-zA-Z0-9\\-]+\\.?)+[^\\s<]*|^email/, 'i')\n .replace('email', /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/)\n .getRegex(),\n _backpedal: /(?:[^?!.,:;*_'\"~()&]+|\\([^)]*\\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'\"~)]+(?!$))+/,\n del: /^(~~?)(?=[^\\s~])([\\s\\S]*?[^\\s~])\\1(?=[^~]|$)/,\n text: /^([`~]+|[^`~])(?:(?= {2,}\\n)|(?=[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@)|[\\s\\S]*?(?:(?=[\\\\<!\\[`*~_]|\\b_|https?:\\/\\/|ftp:\\/\\/|www\\.|$)|[^ ](?= {2,}\\n)|[^a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-](?=[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@)))/\n};\n/**\n * GFM + Line Breaks Inline Grammar\n */\nconst inlineBreaks = {\n ...inlineGfm,\n br: edit(br).replace('{2,}', '*').getRegex(),\n text: edit(inlineGfm.text)\n .replace('\\\\b_', '\\\\b_| {2,}\\\\n')\n .replace(/\\{2,\\}/g, '*')\n .getRegex()\n};\n/**\n * exports\n */\nexport const block = {\n normal: blockNormal,\n gfm: blockGfm,\n pedantic: blockPedantic\n};\nexport const inline = {\n normal: inlineNormal,\n gfm: inlineGfm,\n breaks: inlineBreaks,\n pedantic: inlinePedantic\n};\n", "import { _Tokenizer } from './Tokenizer.ts';\nimport { _defaults } from './defaults.ts';\nimport { block, inline } from './rules.ts';\n/**\n * Block Lexer\n */\nexport class _Lexer {\n tokens;\n options;\n state;\n tokenizer;\n inlineQueue;\n constructor(options) {\n // TokenList cannot be created in one go\n this.tokens = [];\n this.tokens.links = Object.create(null);\n this.options = options || _defaults;\n this.options.tokenizer = this.options.tokenizer || new _Tokenizer();\n this.tokenizer = this.options.tokenizer;\n this.tokenizer.options = this.options;\n this.tokenizer.lexer = this;\n this.inlineQueue = [];\n this.state = {\n inLink: false,\n inRawBlock: false,\n top: true\n };\n const rules = {\n block: block.normal,\n inline: inline.normal\n };\n if (this.options.pedantic) {\n rules.block = block.pedantic;\n rules.inline = inline.pedantic;\n }\n else if (this.options.gfm) {\n rules.block = block.gfm;\n if (this.options.breaks) {\n rules.inline = inline.breaks;\n }\n else {\n rules.inline = inline.gfm;\n }\n }\n this.tokenizer.rules = rules;\n }\n /**\n * Expose Rules\n */\n static get rules() {\n return {\n block,\n inline\n };\n }\n /**\n * Static Lex Method\n */\n static lex(src, options) {\n const lexer = new _Lexer(options);\n return lexer.lex(src);\n }\n /**\n * Static Lex Inline Method\n */\n static lexInline(src, options) {\n const lexer = new _Lexer(options);\n return lexer.inlineTokens(src);\n }\n /**\n * Preprocessing\n */\n lex(src) {\n src = src\n .replace(/\\r\\n|\\r/g, '\\n');\n this.blockTokens(src, this.tokens);\n for (let i = 0; i < this.inlineQueue.length; i++) {\n const next = this.inlineQueue[i];\n this.inlineTokens(next.src, next.tokens);\n }\n this.inlineQueue = [];\n return this.tokens;\n }\n blockTokens(src, tokens = []) {\n if (this.options.pedantic) {\n src = src.replace(/\\t/g, ' ').replace(/^ +$/gm, '');\n }\n else {\n src = src.replace(/^( *)(\\t+)/gm, (_, leading, tabs) => {\n return leading + ' '.repeat(tabs.length);\n });\n }\n let token;\n let lastToken;\n let cutSrc;\n let lastParagraphClipped;\n while (src) {\n if (this.options.extensions\n && this.options.extensions.block\n && this.options.extensions.block.some((extTokenizer) => {\n if (token = extTokenizer.call({ lexer: this }, src, tokens)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n return true;\n }\n return false;\n })) {\n continue;\n }\n // newline\n if (token = this.tokenizer.space(src)) {\n src = src.substring(token.raw.length);\n if (token.raw.length === 1 && tokens.length > 0) {\n // if there's a single \\n as a spacer, it's terminating the last line,\n // so move it there so that we don't get unnecessary paragraph tags\n tokens[tokens.length - 1].raw += '\\n';\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n // code\n if (token = this.tokenizer.code(src)) {\n src = src.substring(token.raw.length);\n lastToken = tokens[tokens.length - 1];\n // An indented code block cannot interrupt a paragraph.\n if (lastToken && (lastToken.type === 'paragraph' || lastToken.type === 'text')) {\n lastToken.raw += '\\n' + token.raw;\n lastToken.text += '\\n' + token.text;\n this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text;\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n // fences\n if (token = this.tokenizer.fences(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // heading\n if (token = this.tokenizer.heading(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // hr\n if (token = this.tokenizer.hr(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // blockquote\n if (token = this.tokenizer.blockquote(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // list\n if (token = this.tokenizer.list(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // html\n if (token = this.tokenizer.html(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // def\n if (token = this.tokenizer.def(src)) {\n src = src.substring(token.raw.length);\n lastToken = tokens[tokens.length - 1];\n if (lastToken && (lastToken.type === 'paragraph' || lastToken.type === 'text')) {\n lastToken.raw += '\\n' + token.raw;\n lastToken.text += '\\n' + token.raw;\n this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text;\n }\n else if (!this.tokens.links[token.tag]) {\n this.tokens.links[token.tag] = {\n href: token.href,\n title: token.title\n };\n }\n continue;\n }\n // table (gfm)\n if (token = this.tokenizer.table(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // lheading\n if (token = this.tokenizer.lheading(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // top-level paragraph\n // prevent paragraph consuming extensions by clipping 'src' to extension start\n cutSrc = src;\n if (this.options.extensions && this.options.extensions.startBlock) {\n let startIndex = Infinity;\n const tempSrc = src.slice(1);\n let tempStart;\n this.options.extensions.startBlock.forEach((getStartIndex) => {\n tempStart = getStartIndex.call({ lexer: this }, tempSrc);\n if (typeof tempStart === 'number' && tempStart >= 0) {\n startIndex = Math.min(startIndex, tempStart);\n }\n });\n if (startIndex < Infinity && startIndex >= 0) {\n cutSrc = src.substring(0, startIndex + 1);\n }\n }\n if (this.state.top && (token = this.tokenizer.paragraph(cutSrc))) {\n lastToken = tokens[tokens.length - 1];\n if (lastParagraphClipped && lastToken.type === 'paragraph') {\n lastToken.raw += '\\n' + token.raw;\n lastToken.text += '\\n' + token.text;\n this.inlineQueue.pop();\n this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text;\n }\n else {\n tokens.push(token);\n }\n lastParagraphClipped = (cutSrc.length !== src.length);\n src = src.substring(token.raw.length);\n continue;\n }\n // text\n if (token = this.tokenizer.text(src)) {\n src = src.substring(token.raw.length);\n lastToken = tokens[tokens.length - 1];\n if (lastToken && lastToken.type === 'text') {\n lastToken.raw += '\\n' + token.raw;\n lastToken.text += '\\n' + token.text;\n this.inlineQueue.pop();\n this.inlineQueue[this.inlineQueue.length - 1].src = lastToken.text;\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n if (src) {\n const errMsg = 'Infinite loop on byte: ' + src.charCodeAt(0);\n if (this.options.silent) {\n console.error(errMsg);\n break;\n }\n else {\n throw new Error(errMsg);\n }\n }\n }\n this.state.top = true;\n return tokens;\n }\n inline(src, tokens = []) {\n this.inlineQueue.push({ src, tokens });\n return tokens;\n }\n /**\n * Lexing/Compiling\n */\n inlineTokens(src, tokens = []) {\n let token, lastToken, cutSrc;\n // String with links masked to avoid interference with em and strong\n let maskedSrc = src;\n let match;\n let keepPrevChar, prevChar;\n // Mask out reflinks\n if (this.tokens.links) {\n const links = Object.keys(this.tokens.links);\n if (links.length > 0) {\n while ((match = this.tokenizer.rules.inline.reflinkSearch.exec(maskedSrc)) != null) {\n if (links.includes(match[0].slice(match[0].lastIndexOf('[') + 1, -1))) {\n maskedSrc = maskedSrc.slice(0, match.index) + '[' + 'a'.repeat(match[0].length - 2) + ']' + maskedSrc.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex);\n }\n }\n }\n }\n // Mask out other blocks\n while ((match = this.tokenizer.rules.inline.blockSkip.exec(maskedSrc)) != null) {\n maskedSrc = maskedSrc.slice(0, match.index) + '[' + 'a'.repeat(match[0].length - 2) + ']' + maskedSrc.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);\n }\n // Mask out escaped characters\n while ((match = this.tokenizer.rules.inline.anyPunctuation.exec(maskedSrc)) != null) {\n maskedSrc = maskedSrc.slice(0, match.index) + '++' + maskedSrc.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);\n }\n while (src) {\n if (!keepPrevChar) {\n prevChar = '';\n }\n keepPrevChar = false;\n // extensions\n if (this.options.extensions\n && this.options.extensions.inline\n && this.options.extensions.inline.some((extTokenizer) => {\n if (token = extTokenizer.call({ lexer: this }, src, tokens)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n return true;\n }\n return false;\n })) {\n continue;\n }\n // escape\n if (token = this.tokenizer.escape(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // tag\n if (token = this.tokenizer.tag(src)) {\n src = src.substring(token.raw.length);\n lastToken = tokens[tokens.length - 1];\n if (lastToken && token.type === 'text' && lastToken.type === 'text') {\n lastToken.raw += token.raw;\n lastToken.text += token.text;\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n // link\n if (token = this.tokenizer.link(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // reflink, nolink\n if (token = this.tokenizer.reflink(src, this.tokens.links)) {\n src = src.substring(token.raw.length);\n lastToken = tokens[tokens.length - 1];\n if (lastToken && token.type === 'text' && lastToken.type === 'text') {\n lastToken.raw += token.raw;\n lastToken.text += token.text;\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n // em & strong\n if (token = this.tokenizer.emStrong(src, maskedSrc, prevChar)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // code\n if (token = this.tokenizer.codespan(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // br\n if (token = this.tokenizer.br(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // del (gfm)\n if (token = this.tokenizer.del(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // autolink\n if (token = this.tokenizer.autolink(src)) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // url (gfm)\n if (!this.state.inLink && (token = this.tokenizer.url(src))) {\n src = src.substring(token.raw.length);\n tokens.push(token);\n continue;\n }\n // text\n // prevent inlineText consuming extensions by clipping 'src' to extension start\n cutSrc = src;\n if (this.options.extensions && this.options.extensions.startInline) {\n let startIndex = Infinity;\n const tempSrc = src.slice(1);\n let tempStart;\n this.options.extensions.startInline.forEach((getStartIndex) => {\n tempStart = getStartIndex.call({ lexer: this }, tempSrc);\n if (typeof tempStart === 'number' && tempStart >= 0) {\n startIndex = Math.min(startIndex, tempStart);\n }\n });\n if (startIndex < Infinity && startIndex >= 0) {\n cutSrc = src.substring(0, startIndex + 1);\n }\n }\n if (token = this.tokenizer.inlineText(cutSrc)) {\n src = src.substring(token.raw.length);\n if (token.raw.slice(-1) !== '_') { // Track prevChar before string of ____ started\n prevChar = token.raw.slice(-1);\n }\n keepPrevChar = true;\n lastToken = tokens[tokens.length - 1];\n if (lastToken && lastToken.type === 'text') {\n lastToken.raw += token.raw;\n lastToken.text += token.text;\n }\n else {\n tokens.push(token);\n }\n continue;\n }\n if (src) {\n const errMsg = 'Infinite loop on byte: ' + src.charCodeAt(0);\n if (this.options.silent) {\n console.error(errMsg);\n break;\n }\n else {\n throw new Error(errMsg);\n }\n }\n }\n return tokens;\n }\n}\n", "import { _defaults } from './defaults.ts';\nimport { cleanUrl, escape } from './helpers.ts';\n/**\n * Renderer\n */\nexport class _Renderer {\n options;\n constructor(options) {\n this.options = options || _defaults;\n }\n code(code, infostring, escaped) {\n const lang = (infostring || '').match(/^\\S*/)?.[0];\n code = code.replace(/\\n$/, '') + '\\n';\n if (!lang) {\n return '<pre><code>'\n + (escaped ? code : escape(code, true))\n + '</code></pre>\\n';\n }\n return '<pre><code class=\"language-'\n + escape(lang)\n + '\">'\n + (escaped ? code : escape(code, true))\n + '</code></pre>\\n';\n }\n blockquote(quote) {\n return `<blockquote>\\n${quote}</blockquote>\\n`;\n }\n html(html, block) {\n return html;\n }\n heading(text, level, raw) {\n // ignore IDs\n return `<h${level}>${text}</h${level}>\\n`;\n }\n hr() {\n return '<hr>\\n';\n }\n list(body, ordered, start) {\n const type = ordered ? 'ol' : 'ul';\n const startatt = (ordered && start !== 1) ? (' start=\"' + start + '\"') : '';\n return '<' + type + startatt + '>\\n' + body + '</' + type + '>\\n';\n }\n listitem(text, task, checked) {\n return `<li>${text}</li>\\n`;\n }\n checkbox(checked) {\n return '<input '\n + (checked ? 'checked=\"\" ' : '')\n + 'disabled=\"\" type=\"checkbox\">';\n }\n paragraph(text) {\n return `<p>${text}</p>\\n`;\n }\n table(header, body) {\n if (body)\n body = `<tbody>${body}</tbody>`;\n return '<table>\\n'\n + '<thead>\\n'\n + header\n + '</thead>\\n'\n + body\n + '</table>\\n';\n }\n tablerow(content) {\n return `<tr>\\n${content}</tr>\\n`;\n }\n tablecell(content, flags) {\n const type = flags.header ? 'th' : 'td';\n const tag = flags.align\n ? `<${type} align=\"${flags.align}\">`\n : `<${type}>`;\n return tag + content + `</${type}>\\n`;\n }\n /**\n * span level renderer\n */\n strong(text) {\n return `<strong>${text}</strong>`;\n }\n em(text) {\n return `<em>${text}</em>`;\n }\n codespan(text) {\n return `<code>${text}</code>`;\n }\n br() {\n return '<br>';\n }\n del(text) {\n return `<del>${text}</del>`;\n }\n link(href, title, text) {\n const cleanHref = cleanUrl(href);\n if (cleanHref === null) {\n return text;\n }\n href = cleanHref;\n let out = '<a href=\"' + href + '\"';\n if (title) {\n out += ' title=\"' + title + '\"';\n }\n out += '>' + text + '</a>';\n return out;\n }\n image(href, title, text) {\n const cleanHref = cleanUrl(href);\n if (cleanHref === null) {\n return text;\n }\n href = cleanHref;\n let out = `<img src=\"${href}\" alt=\"${text}\"`;\n if (title) {\n out += ` title=\"${title}\"`;\n }\n out += '>';\n return out;\n }\n text(text) {\n return text;\n }\n}\n", "/**\n * TextRenderer\n * returns only the textual part of the token\n */\nexport class _TextRenderer {\n // no need for block level renderers\n strong(text) {\n return text;\n }\n em(text) {\n return text;\n }\n codespan(text) {\n return text;\n }\n del(text) {\n return text;\n }\n html(text) {\n return text;\n }\n text(text) {\n return text;\n }\n link(href, title, text) {\n return '' + text;\n }\n image(href, title, text) {\n return '' + text;\n }\n br() {\n return '';\n }\n}\n", "import { _Renderer } from './Renderer.ts';\nimport { _TextRenderer } from './TextRenderer.ts';\nimport { _defaults } from './defaults.ts';\nimport { unescape } from './helpers.ts';\n/**\n * Parsing & Compiling\n */\nexport class _Parser {\n options;\n renderer;\n textRenderer;\n constructor(options) {\n this.options = options || _defaults;\n this.options.renderer = this.options.renderer || new _Renderer();\n this.renderer = this.options.renderer;\n this.renderer.options = this.options;\n this.textRenderer = new _TextRenderer();\n }\n /**\n * Static Parse Method\n */\n static parse(tokens, options) {\n const parser = new _Parser(options);\n return parser.parse(tokens);\n }\n /**\n * Static Parse Inline Method\n */\n static parseInline(tokens, options) {\n const parser = new _Parser(options);\n return parser.parseInline(tokens);\n }\n /**\n * Parse Loop\n */\n parse(tokens, top = true) {\n let out = '';\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i];\n // Run any renderer extensions\n if (this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[token.type]) {\n const genericToken = token;\n const ret = this.options.extensions.renderers[genericToken.type].call({ parser: this }, genericToken);\n if (ret !== false || !['space', 'hr', 'heading', 'code', 'table', 'blockquote', 'list', 'html', 'paragraph', 'text'].includes(genericToken.type)) {\n out += ret || '';\n continue;\n }\n }\n switch (token.type) {\n case 'space': {\n continue;\n }\n case 'hr': {\n out += this.renderer.hr();\n continue;\n }\n case 'heading': {\n const headingToken = token;\n out += this.renderer.heading(this.parseInline(headingToken.tokens), headingToken.depth, unescape(this.parseInline(headingToken.tokens, this.textRenderer)));\n continue;\n }\n case 'code': {\n const codeToken = token;\n out += this.renderer.code(codeToken.text, codeToken.lang, !!codeToken.escaped);\n continue;\n }\n case 'table': {\n const tableToken = token;\n let header = '';\n // header\n let cell = '';\n for (let j = 0; j < tableToken.header.length; j++) {\n cell += this.renderer.tablecell(this.parseInline(tableToken.header[j].tokens), { header: true, align: tableToken.align[j] });\n }\n header += this.renderer.tablerow(cell);\n let body = '';\n for (let j = 0; j < tableToken.rows.length; j++) {\n const row = tableToken.rows[j];\n cell = '';\n for (let k = 0; k < row.length; k++) {\n cell += this.renderer.tablecell(this.parseInline(row[k].tokens), { header: false, align: tableToken.align[k] });\n }\n body += this.renderer.tablerow(cell);\n }\n out += this.renderer.table(header, body);\n continue;\n }\n case 'blockquote': {\n const blockquoteToken = token;\n const body = this.parse(blockquoteToken.tokens);\n out += this.renderer.blockquote(body);\n continue;\n }\n case 'list': {\n const listToken = token;\n const ordered = listToken.ordered;\n const start = listToken.start;\n const loose = listToken.loose;\n let body = '';\n for (let j = 0; j < listToken.items.length; j++) {\n const item = listToken.items[j];\n const checked = item.checked;\n const task = item.task;\n let itemBody = '';\n if (item.task) {\n const checkbox = this.renderer.checkbox(!!checked);\n if (loose) {\n if (item.tokens.length > 0 && item.tokens[0].type === 'paragraph') {\n item.tokens[0].text = checkbox + ' ' + item.tokens[0].text;\n if (item.tokens[0].tokens && item.tokens[0].tokens.length > 0 && item.tokens[0].tokens[0].type === 'text') {\n item.tokens[0].tokens[0].text = checkbox + ' ' + item.tokens[0].tokens[0].text;\n }\n }\n else {\n item.tokens.unshift({\n type: 'text',\n text: checkbox + ' '\n });\n }\n }\n else {\n itemBody += checkbox + ' ';\n }\n }\n itemBody += this.parse(item.tokens, loose);\n body += this.renderer.listitem(itemBody, task, !!checked);\n }\n out += this.renderer.list(body, ordered, start);\n continue;\n }\n case 'html': {\n const htmlToken = token;\n out += this.renderer.html(htmlToken.text, htmlToken.block);\n continue;\n }\n case 'paragraph': {\n const paragraphToken = token;\n out += this.renderer.paragraph(this.parseInline(paragraphToken.tokens));\n continue;\n }\n case 'text': {\n let textToken = token;\n let body = textToken.tokens ? this.parseInline(textToken.tokens) : textToken.text;\n while (i + 1 < tokens.length && tokens[i + 1].type === 'text') {\n textToken = tokens[++i];\n body += '\\n' + (textToken.tokens ? this.parseInline(textToken.tokens) : textToken.text);\n }\n out += top ? this.renderer.paragraph(body) : body;\n continue;\n }\n default: {\n const errMsg = 'Token with \"' + token.type + '\" type was not found.';\n if (this.options.silent) {\n console.error(errMsg);\n return '';\n }\n else {\n throw new Error(errMsg);\n }\n }\n }\n }\n return out;\n }\n /**\n * Parse Inline Tokens\n */\n parseInline(tokens, renderer) {\n renderer = renderer || this.renderer;\n let out = '';\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i];\n // Run any renderer extensions\n if (this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[token.type]) {\n const ret = this.options.extensions.renderers[token.type].call({ parser: this }, token);\n if (ret !== false || !['escape', 'html', 'link', 'image', 'strong', 'em', 'codespan', 'br', 'del', 'text'].includes(token.type)) {\n out += ret || '';\n continue;\n }\n }\n switch (token.type) {\n case 'escape': {\n const escapeToken = token;\n out += renderer.text(escapeToken.text);\n break;\n }\n case 'html': {\n const tagToken = token;\n out += renderer.html(tagToken.text);\n break;\n }\n case 'link': {\n const linkToken = token;\n out += renderer.link(linkToken.href, linkToken.title, this.parseInline(linkToken.tokens, renderer));\n break;\n }\n case 'image': {\n const imageToken = token;\n out += renderer.image(imageToken.href, imageToken.title, imageToken.text);\n break;\n }\n case 'strong': {\n const strongToken = token;\n out += renderer.strong(this.parseInline(strongToken.tokens, renderer));\n break;\n }\n case 'em': {\n const emToken = token;\n out += renderer.em(this.parseInline(emToken.tokens, renderer));\n break;\n }\n case 'codespan': {\n const codespanToken = token;\n out += renderer.codespan(codespanToken.text);\n break;\n }\n case 'br': {\n out += renderer.br();\n break;\n }\n case 'del': {\n const delToken = token;\n out += renderer.del(this.parseInline(delToken.tokens, renderer));\n break;\n }\n case 'text': {\n const textToken = token;\n out += renderer.text(textToken.text);\n break;\n }\n default: {\n const errMsg = 'Token with \"' + token.type + '\" type was not found.';\n if (this.options.silent) {\n console.error(errMsg);\n return '';\n }\n else {\n throw new Error(errMsg);\n }\n }\n }\n }\n return out;\n }\n}\n", "import { _defaults } from './defaults.ts';\nexport class _Hooks {\n options;\n constructor(options) {\n this.options = options || _defaults;\n }\n static passThroughHooks = new Set([\n 'preprocess',\n 'postprocess',\n 'processAllTokens'\n ]);\n /**\n * Process markdown before marked\n */\n preprocess(markdown) {\n return markdown;\n }\n /**\n * Process HTML after marked is finished\n */\n postprocess(html) {\n return html;\n }\n /**\n * Process all tokens before walk tokens\n */\n processAllTokens(tokens) {\n return tokens;\n }\n}\n", "import { _getDefaults } from './defaults.ts';\nimport { _Lexer } from './Lexer.ts';\nimport { _Parser } from './Parser.ts';\nimport { _Hooks } from './Hooks.ts';\nimport { _Renderer } from './Renderer.ts';\nimport { _Tokenizer } from './Tokenizer.ts';\nimport { _TextRenderer } from './TextRenderer.ts';\nimport { escape } from './helpers.ts';\nexport class Marked {\n defaults = _getDefaults();\n options = this.setOptions;\n parse = this.#parseMarkdown(_Lexer.lex, _Parser.parse);\n parseInline = this.#parseMarkdown(_Lexer.lexInline, _Parser.parseInline);\n Parser = _Parser;\n Renderer = _Renderer;\n TextRenderer = _TextRenderer;\n Lexer = _Lexer;\n Tokenizer = _Tokenizer;\n Hooks = _Hooks;\n constructor(...args) {\n this.use(...args);\n }\n /**\n * Run callback for every token\n */\n walkTokens(tokens, callback) {\n let values = [];\n for (const token of tokens) {\n values = values.concat(callback.call(this, token));\n switch (token.type) {\n case 'table': {\n const tableToken = token;\n for (const cell of tableToken.header) {\n values = values.concat(this.walkTokens(cell.tokens, callback));\n }\n for (const row of tableToken.rows) {\n for (const cell of row) {\n values = values.concat(this.walkTokens(cell.tokens, callback));\n }\n }\n break;\n }\n case 'list': {\n const listToken = token;\n values = values.concat(this.walkTokens(listToken.items, callback));\n break;\n }\n default: {\n const genericToken = token;\n if (this.defaults.extensions?.childTokens?.[genericToken.type]) {\n this.defaults.extensions.childTokens[genericToken.type].forEach((childTokens) => {\n const tokens = genericToken[childTokens].flat(Infinity);\n values = values.concat(this.walkTokens(tokens, callback));\n });\n }\n else if (genericToken.tokens) {\n values = values.concat(this.walkTokens(genericToken.tokens, callback));\n }\n }\n }\n }\n return values;\n }\n use(...args) {\n const extensions = this.defaults.extensions || { renderers: {}, childTokens: {} };\n args.forEach((pack) => {\n // copy options to new object\n const opts = { ...pack };\n // set async to true if it was set to true before\n opts.async = this.defaults.async || opts.async || false;\n // ==-- Parse \"addon\" extensions --== //\n if (pack.extensions) {\n pack.extensions.forEach((ext) => {\n if (!ext.name) {\n throw new Error('extension name required');\n }\n if ('renderer' in ext) { // Renderer extensions\n const prevRenderer = extensions.renderers[ext.name];\n if (prevRenderer) {\n // Replace extension with func to run new extension but fall back if false\n extensions.renderers[ext.name] = function (...args) {\n let ret = ext.renderer.apply(this, args);\n if (ret === false) {\n ret = prevRenderer.apply(this, args);\n }\n return ret;\n };\n }\n else {\n extensions.renderers[ext.name] = ext.renderer;\n }\n }\n if ('tokenizer' in ext) { // Tokenizer Extensions\n if (!ext.level || (ext.level !== 'block' && ext.level !== 'inline')) {\n throw new Error(\"extension level must be 'block' or 'inline'\");\n }\n const extLevel = extensions[ext.level];\n if (extLevel) {\n extLevel.unshift(ext.tokenizer);\n }\n else {\n extensions[ext.level] = [ext.tokenizer];\n }\n if (ext.start) { // Function to check for start of token\n if (ext.level === 'block') {\n if (extensions.startBlock) {\n extensions.startBlock.push(ext.start);\n }\n else {\n extensions.startBlock = [ext.start];\n }\n }\n else if (ext.level === 'inline') {\n if (extensions.startInline) {\n extensions.startInline.push(ext.start);\n }\n else {\n extensions.startInline = [ext.start];\n }\n }\n }\n }\n if ('childTokens' in ext && ext.childTokens) { // Child tokens to be visited by walkTokens\n extensions.childTokens[ext.name] = ext.childTokens;\n }\n });\n opts.extensions = extensions;\n }\n // ==-- Parse \"overwrite\" extensions --== //\n if (pack.renderer) {\n const renderer = this.defaults.renderer || new _Renderer(this.defaults);\n for (const prop in pack.renderer) {\n if (!(prop in renderer)) {\n throw new Error(`renderer '${prop}' does not exist`);\n }\n if (prop === 'options') {\n // ignore options property\n continue;\n }\n const rendererProp = prop;\n const rendererFunc = pack.renderer[rendererProp];\n const prevRenderer = renderer[rendererProp];\n // Replace renderer with func to run extension, but fall back if false\n renderer[rendererProp] = (...args) => {\n let ret = rendererFunc.apply(renderer, args);\n if (ret === false) {\n ret = prevRenderer.apply(renderer, args);\n }\n return ret || '';\n };\n }\n opts.renderer = renderer;\n }\n if (pack.tokenizer) {\n const tokenizer = this.defaults.tokenizer || new _Tokenizer(this.defaults);\n for (const prop in pack.tokenizer) {\n if (!(prop in tokenizer)) {\n throw new Error(`tokenizer '${prop}' does not exist`);\n }\n if (['options', 'rules', 'lexer'].includes(prop)) {\n // ignore options, rules, and lexer properties\n continue;\n }\n const tokenizerProp = prop;\n const tokenizerFunc = pack.tokenizer[tokenizerProp];\n const prevTokenizer = tokenizer[tokenizerProp];\n // Replace tokenizer with func to run extension, but fall back if false\n // @ts-expect-error cannot type tokenizer function dynamically\n tokenizer[tokenizerProp] = (...args) => {\n let ret = tokenizerFunc.apply(tokenizer, args);\n if (ret === false) {\n ret = prevTokenizer.apply(tokenizer, args);\n }\n return ret;\n };\n }\n opts.tokenizer = tokenizer;\n }\n // ==-- Parse Hooks extensions --== //\n if (pack.hooks) {\n const hooks = this.defaults.hooks || new _Hooks();\n for (const prop in pack.hooks) {\n if (!(prop in hooks)) {\n throw new Error(`hook '${prop}' does not exist`);\n }\n if (prop === 'options') {\n // ignore options property\n continue;\n }\n const hooksProp = prop;\n const hooksFunc = pack.hooks[hooksProp];\n const prevHook = hooks[hooksProp];\n if (_Hooks.passThroughHooks.has(prop)) {\n // @ts-expect-error cannot type hook function dynamically\n hooks[hooksProp] = (arg) => {\n if (this.defaults.async) {\n return Promise.resolve(hooksFunc.call(hooks, arg)).then(ret => {\n return prevHook.call(hooks, ret);\n });\n }\n const ret = hooksFunc.call(hooks, arg);\n return prevHook.call(hooks, ret);\n };\n }\n else {\n // @ts-expect-error cannot type hook function dynamically\n hooks[hooksProp] = (...args) => {\n let ret = hooksFunc.apply(hooks, args);\n if (ret === false) {\n ret = prevHook.apply(hooks, args);\n }\n return ret;\n };\n }\n }\n opts.hooks = hooks;\n }\n // ==-- Parse WalkTokens extensions --== //\n if (pack.walkTokens) {\n const walkTokens = this.defaults.walkTokens;\n const packWalktokens = pack.walkTokens;\n opts.walkTokens = function (token) {\n let values = [];\n values.push(packWalktokens.call(this, token));\n if (walkTokens) {\n values = values.concat(walkTokens.call(this, token));\n }\n return values;\n };\n }\n this.defaults = { ...this.defaults, ...opts };\n });\n return this;\n }\n setOptions(opt) {\n this.defaults = { ...this.defaults, ...opt };\n return this;\n }\n lexer(src, options) {\n return _Lexer.lex(src, options ?? this.defaults);\n }\n parser(tokens, options) {\n return _Parser.parse(tokens, options ?? this.defaults);\n }\n #parseMarkdown(lexer, parser) {\n return (src, options) => {\n const origOpt = { ...options };\n const opt = { ...this.defaults, ...origOpt };\n // Show warning if an extension set async to true but the parse was called with async: false\n if (this.defaults.async === true && origOpt.async === false) {\n if (!opt.silent) {\n console.warn('marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored.');\n }\n opt.async = true;\n }\n const throwError = this.#onError(!!opt.silent, !!opt.async);\n // throw error in case of non string input\n if (typeof src === 'undefined' || src === null) {\n return throwError(new Error('marked(): input parameter is undefined or null'));\n }\n if (typeof src !== 'string') {\n return throwError(new Error('marked(): input parameter is of type '\n + Object.prototype.toString.call(src) + ', string expected'));\n }\n if (opt.hooks) {\n opt.hooks.options = opt;\n }\n if (opt.async) {\n return Promise.resolve(opt.hooks ? opt.hooks.preprocess(src) : src)\n .then(src => lexer(src, opt))\n .then(tokens => opt.hooks ? opt.hooks.processAllTokens(tokens) : tokens)\n .then(tokens => opt.walkTokens ? Promise.all(this.walkTokens(tokens, opt.walkTokens)).then(() => tokens) : tokens)\n .then(tokens => parser(tokens, opt))\n .then(html => opt.hooks ? opt.hooks.postprocess(html) : html)\n .catch(throwError);\n }\n try {\n if (opt.hooks) {\n src = opt.hooks.preprocess(src);\n }\n let tokens = lexer(src, opt);\n if (opt.hooks) {\n tokens = opt.hooks.processAllTokens(tokens);\n }\n if (opt.walkTokens) {\n this.walkTokens(tokens, opt.walkTokens);\n }\n let html = parser(tokens, opt);\n if (opt.hooks) {\n html = opt.hooks.postprocess(html);\n }\n return html;\n }\n catch (e) {\n return throwError(e);\n }\n };\n }\n #onError(silent, async) {\n return (e) => {\n e.message += '\\nPlease report this to https://github.com/markedjs/marked.';\n if (silent) {\n const msg = '<p>An error occurred:</p><pre>'\n + escape(e.message + '', true)\n + '</pre>';\n if (async) {\n return Promise.resolve(msg);\n }\n return msg;\n }\n if (async) {\n return Promise.reject(e);\n }\n throw e;\n };\n }\n}\n", "import { _Lexer } from './Lexer.ts';\nimport { _Parser } from './Parser.ts';\nimport { _Tokenizer } from './Tokenizer.ts';\nimport { _Renderer } from './Renderer.ts';\nimport { _TextRenderer } from './TextRenderer.ts';\nimport { _Hooks } from './Hooks.ts';\nimport { Marked } from './Instance.ts';\nimport { _getDefaults, changeDefaults, _defaults } from './defaults.ts';\nconst markedInstance = new Marked();\nexport function marked(src, opt) {\n return markedInstance.parse(src, opt);\n}\n/**\n * Sets the default options.\n *\n * @param options Hash of options\n */\nmarked.options =\n marked.setOptions = function (options) {\n markedInstance.setOptions(options);\n marked.defaults = markedInstance.defaults;\n changeDefaults(marked.defaults);\n return marked;\n };\n/**\n * Gets the original marked default options.\n */\nmarked.getDefaults = _getDefaults;\nmarked.defaults = _defaults;\n/**\n * Use Extension\n */\nmarked.use = function (...args) {\n markedInstance.use(...args);\n marked.defaults = markedInstance.defaults;\n changeDefaults(marked.defaults);\n return marked;\n};\n/**\n * Run callback for every token\n */\nmarked.walkTokens = function (tokens, callback) {\n return markedInstance.walkTokens(tokens, callback);\n};\n/**\n * Compiles markdown to HTML without enclosing `p` tag.\n *\n * @param src String of markdown source to be compiled\n * @param options Hash of options\n * @return String of compiled HTML\n */\nmarked.parseInline = markedInstance.parseInline;\n/**\n * Expose\n */\nmarked.Parser = _Parser;\nmarked.parser = _Parser.parse;\nmarked.Renderer = _Renderer;\nmarked.TextRenderer = _TextRenderer;\nmarked.Lexer = _Lexer;\nmarked.lexer = _Lexer.lex;\nmarked.Tokenizer = _Tokenizer;\nmarked.Hooks = _Hooks;\nmarked.parse = marked;\nexport const options = marked.options;\nexport const setOptions = marked.setOptions;\nexport const use = marked.use;\nexport const walkTokens = marked.walkTokens;\nexport const parseInline = marked.parseInline;\nexport const parse = marked;\nexport const parser = _Parser.parse;\nexport const lexer = _Lexer.lex;\nexport { _defaults as defaults, _getDefaults as getDefaults } from './defaults.ts';\nexport { _Lexer as Lexer } from './Lexer.ts';\nexport { _Parser as Parser } from './Parser.ts';\nexport { _Tokenizer as Tokenizer } from './Tokenizer.ts';\nexport { _Renderer as Renderer } from './Renderer.ts';\nexport { _TextRenderer as TextRenderer } from './TextRenderer.ts';\nexport { _Hooks as Hooks } from './Hooks.ts';\nexport { Marked } from './Instance.ts';\n", "const bundledLanguagesInfo = [\n {\n \"id\": \"abap\",\n \"name\": \"ABAP\",\n \"import\": () => import('@shikijs/langs/abap')\n },\n {\n \"id\": \"actionscript-3\",\n \"name\": \"ActionScript\",\n \"import\": () => import('@shikijs/langs/actionscript-3')\n },\n {\n \"id\": \"ada\",\n \"name\": \"Ada\",\n \"import\": () => import('@shikijs/langs/ada')\n },\n {\n \"id\": \"angular-html\",\n \"name\": \"Angular HTML\",\n \"import\": () => import('@shikijs/langs/angular-html')\n },\n {\n \"id\": \"angular-ts\",\n \"name\": \"Angular TypeScript\",\n \"import\": () => import('@shikijs/langs/angular-ts')\n },\n {\n \"id\": \"apache\",\n \"name\": \"Apache Conf\",\n \"import\": () => import('@shikijs/langs/apache')\n },\n {\n \"id\": \"apex\",\n \"name\": \"Apex\",\n \"import\": () => import('@shikijs/langs/apex')\n },\n {\n \"id\": \"apl\",\n \"name\": \"APL\",\n \"import\": () => import('@shikijs/langs/apl')\n },\n {\n \"id\": \"applescript\",\n \"name\": \"AppleScript\",\n \"import\": () => import('@shikijs/langs/applescript')\n },\n {\n \"id\": \"ara\",\n \"name\": \"Ara\",\n \"import\": () => import('@shikijs/langs/ara')\n },\n {\n \"id\": \"asciidoc\",\n \"name\": \"AsciiDoc\",\n \"aliases\": [\n \"adoc\"\n ],\n \"import\": () => import('@shikijs/langs/asciidoc')\n },\n {\n \"id\": \"asm\",\n \"name\": \"Assembly\",\n \"import\": () => import('@shikijs/langs/asm')\n },\n {\n \"id\": \"astro\",\n \"name\": \"Astro\",\n \"import\": () => import('@shikijs/langs/astro')\n },\n {\n \"id\": \"awk\",\n \"name\": \"AWK\",\n \"import\": () => import('@shikijs/langs/awk')\n },\n {\n \"id\": \"ballerina\",\n \"name\": \"Ballerina\",\n \"import\": () => import('@shikijs/langs/ballerina')\n },\n {\n \"id\": \"bat\",\n \"name\": \"Batch File\",\n \"aliases\": [\n \"batch\"\n ],\n \"import\": () => import('@shikijs/langs/bat')\n },\n {\n \"id\": \"beancount\",\n \"name\": \"Beancount\",\n \"import\": () => import('@shikijs/langs/beancount')\n },\n {\n \"id\": \"berry\",\n \"name\": \"Berry\",\n \"aliases\": [\n \"be\"\n ],\n \"import\": () => import('@shikijs/langs/berry')\n },\n {\n \"id\": \"bibtex\",\n \"name\": \"BibTeX\",\n \"import\": () => import('@shikijs/langs/bibtex')\n },\n {\n \"id\": \"bicep\",\n \"name\": \"Bicep\",\n \"import\": () => import('@shikijs/langs/bicep')\n },\n {\n \"id\": \"blade\",\n \"name\": \"Blade\",\n \"import\": () => import('@shikijs/langs/blade')\n },\n {\n \"id\": \"bsl\",\n \"name\": \"1C (Enterprise)\",\n \"aliases\": [\n \"1c\"\n ],\n \"import\": () => import('@shikijs/langs/bsl')\n },\n {\n \"id\": \"c\",\n \"name\": \"C\",\n \"import\": () => import('@shikijs/langs/c')\n },\n {\n \"id\": \"cadence\",\n \"name\": \"Cadence\",\n \"aliases\": [\n \"cdc\"\n ],\n \"import\": () => import('@shikijs/langs/cadence')\n },\n {\n \"id\": \"cairo\",\n \"name\": \"Cairo\",\n \"import\": () => import('@shikijs/langs/cairo')\n },\n {\n \"id\": \"clarity\",\n \"name\": \"Clarity\",\n \"import\": () => import('@shikijs/langs/clarity')\n },\n {\n \"id\": \"clojure\",\n \"name\": \"Clojure\",\n \"aliases\": [\n \"clj\"\n ],\n \"import\": () => import('@shikijs/langs/clojure')\n },\n {\n \"id\": \"cmake\",\n \"name\": \"CMake\",\n \"import\": () => import('@shikijs/langs/cmake')\n },\n {\n \"id\": \"cobol\",\n \"name\": \"COBOL\",\n \"import\": () => import('@shikijs/langs/cobol')\n },\n {\n \"id\": \"codeowners\",\n \"name\": \"CODEOWNERS\",\n \"import\": () => import('@shikijs/langs/codeowners')\n },\n {\n \"id\": \"codeql\",\n \"name\": \"CodeQL\",\n \"aliases\": [\n \"ql\"\n ],\n \"import\": () => import('@shikijs/langs/codeql')\n },\n {\n \"id\": \"coffee\",\n \"name\": \"CoffeeScript\",\n \"aliases\": [\n \"coffeescript\"\n ],\n \"import\": () => import('@shikijs/langs/coffee')\n },\n {\n \"id\": \"common-lisp\",\n \"name\": \"Common Lisp\",\n \"aliases\": [\n \"lisp\"\n ],\n \"import\": () => import('@shikijs/langs/common-lisp')\n },\n {\n \"id\": \"coq\",\n \"name\": \"Coq\",\n \"import\": () => import('@shikijs/langs/coq')\n },\n {\n \"id\": \"cpp\",\n \"name\": \"C++\",\n \"aliases\": [\n \"c++\"\n ],\n \"import\": () => import('@shikijs/langs/cpp')\n },\n {\n \"id\": \"crystal\",\n \"name\": \"Crystal\",\n \"import\": () => import('@shikijs/langs/crystal')\n },\n {\n \"id\": \"csharp\",\n \"name\": \"C#\",\n \"aliases\": [\n \"c#\",\n \"cs\"\n ],\n \"import\": () => import('@shikijs/langs/csharp')\n },\n {\n \"id\": \"css\",\n \"name\": \"CSS\",\n \"import\": () => import('@shikijs/langs/css')\n },\n {\n \"id\": \"csv\",\n \"name\": \"CSV\",\n \"import\": () => import('@shikijs/langs/csv')\n },\n {\n \"id\": \"cue\",\n \"name\": \"CUE\",\n \"import\": () => import('@shikijs/langs/cue')\n },\n {\n \"id\": \"cypher\",\n \"name\": \"Cypher\",\n \"aliases\": [\n \"cql\"\n ],\n \"import\": () => import('@shikijs/langs/cypher')\n },\n {\n \"id\": \"d\",\n \"name\": \"D\",\n \"import\": () => import('@shikijs/langs/d')\n },\n {\n \"id\": \"dart\",\n \"name\": \"Dart\",\n \"import\": () => import('@shikijs/langs/dart')\n },\n {\n \"id\": \"dax\",\n \"name\": \"DAX\",\n \"import\": () => import('@shikijs/langs/dax')\n },\n {\n \"id\": \"desktop\",\n \"name\": \"Desktop\",\n \"import\": () => import('@shikijs/langs/desktop')\n },\n {\n \"id\": \"diff\",\n \"name\": \"Diff\",\n \"import\": () => import('@shikijs/langs/diff')\n },\n {\n \"id\": \"docker\",\n \"name\": \"Dockerfile\",\n \"aliases\": [\n \"dockerfile\"\n ],\n \"import\": () => import('@shikijs/langs/docker')\n },\n {\n \"id\": \"dotenv\",\n \"name\": \"dotEnv\",\n \"import\": () => import('@shikijs/langs/dotenv')\n },\n {\n \"id\": \"dream-maker\",\n \"name\": \"Dream Maker\",\n \"import\": () => import('@shikijs/langs/dream-maker')\n },\n {\n \"id\": \"edge\",\n \"name\": \"Edge\",\n \"import\": () => import('@shikijs/langs/edge')\n },\n {\n \"id\": \"elixir\",\n \"name\": \"Elixir\",\n \"import\": () => import('@shikijs/langs/elixir')\n },\n {\n \"id\": \"elm\",\n \"name\": \"Elm\",\n \"import\": () => import('@shikijs/langs/elm')\n },\n {\n \"id\": \"emacs-lisp\",\n \"name\": \"Emacs Lisp\",\n \"aliases\": [\n \"elisp\"\n ],\n \"import\": () => import('@shikijs/langs/emacs-lisp')\n },\n {\n \"id\": \"erb\",\n \"name\": \"ERB\",\n \"import\": () => import('@shikijs/langs/erb')\n },\n {\n \"id\": \"erlang\",\n \"name\": \"Erlang\",\n \"aliases\": [\n \"erl\"\n ],\n \"import\": () => import('@shikijs/langs/erlang')\n },\n {\n \"id\": \"fennel\",\n \"name\": \"Fennel\",\n \"import\": () => import('@shikijs/langs/fennel')\n },\n {\n \"id\": \"fish\",\n \"name\": \"Fish\",\n \"import\": () => import('@shikijs/langs/fish')\n },\n {\n \"id\": \"fluent\",\n \"name\": \"Fluent\",\n \"aliases\": [\n \"ftl\"\n ],\n \"import\": () => import('@shikijs/langs/fluent')\n },\n {\n \"id\": \"fortran-fixed-form\",\n \"name\": \"Fortran (Fixed Form)\",\n \"aliases\": [\n \"f\",\n \"for\",\n \"f77\"\n ],\n \"import\": () => import('@shikijs/langs/fortran-fixed-form')\n },\n {\n \"id\": \"fortran-free-form\",\n \"name\": \"Fortran (Free Form)\",\n \"aliases\": [\n \"f90\",\n \"f95\",\n \"f03\",\n \"f08\",\n \"f18\"\n ],\n \"import\": () => import('@shikijs/langs/fortran-free-form')\n },\n {\n \"id\": \"fsharp\",\n \"name\": \"F#\",\n \"aliases\": [\n \"f#\",\n \"fs\"\n ],\n \"import\": () => import('@shikijs/langs/fsharp')\n },\n {\n \"id\": \"gdresource\",\n \"name\": \"GDResource\",\n \"import\": () => import('@shikijs/langs/gdresource')\n },\n {\n \"id\": \"gdscript\",\n \"name\": \"GDScript\",\n \"import\": () => import('@shikijs/langs/gdscript')\n },\n {\n \"id\": \"gdshader\",\n \"name\": \"GDShader\",\n \"import\": () => import('@shikijs/langs/gdshader')\n },\n {\n \"id\": \"genie\",\n \"name\": \"Genie\",\n \"import\": () => import('@shikijs/langs/genie')\n },\n {\n \"id\": \"gherkin\",\n \"name\": \"Gherkin\",\n \"import\": () => import('@shikijs/langs/gherkin')\n },\n {\n \"id\": \"git-commit\",\n \"name\": \"Git Commit Message\",\n \"import\": () => import('@shikijs/langs/git-commit')\n },\n {\n \"id\": \"git-rebase\",\n \"name\": \"Git Rebase Message\",\n \"import\": () => import('@shikijs/langs/git-rebase')\n },\n {\n \"id\": \"gleam\",\n \"name\": \"Gleam\",\n \"import\": () => import('@shikijs/langs/gleam')\n },\n {\n \"id\": \"glimmer-js\",\n \"name\": \"Glimmer JS\",\n \"aliases\": [\n \"gjs\"\n ],\n \"import\": () => import('@shikijs/langs/glimmer-js')\n },\n {\n \"id\": \"glimmer-ts\",\n \"name\": \"Glimmer TS\",\n \"aliases\": [\n \"gts\"\n ],\n \"import\": () => import('@shikijs/langs/glimmer-ts')\n },\n {\n \"id\": \"glsl\",\n \"name\": \"GLSL\",\n \"import\": () => import('@shikijs/langs/glsl')\n },\n {\n \"id\": \"gnuplot\",\n \"name\": \"Gnuplot\",\n \"import\": () => import('@shikijs/langs/gnuplot')\n },\n {\n \"id\": \"go\",\n \"name\": \"Go\",\n \"import\": () => import('@shikijs/langs/go')\n },\n {\n \"id\": \"graphql\",\n \"name\": \"GraphQL\",\n \"aliases\": [\n \"gql\"\n ],\n \"import\": () => import('@shikijs/langs/graphql')\n },\n {\n \"id\": \"groovy\",\n \"name\": \"Groovy\",\n \"import\": () => import('@shikijs/langs/groovy')\n },\n {\n \"id\": \"hack\",\n \"name\": \"Hack\",\n \"import\": () => import('@shikijs/langs/hack')\n },\n {\n \"id\": \"haml\",\n \"name\": \"Ruby Haml\",\n \"import\": () => import('@shikijs/langs/haml')\n },\n {\n \"id\": \"handlebars\",\n \"name\": \"Handlebars\",\n \"aliases\": [\n \"hbs\"\n ],\n \"import\": () => import('@shikijs/langs/handlebars')\n },\n {\n \"id\": \"haskell\",\n \"name\": \"Haskell\",\n \"aliases\": [\n \"hs\"\n ],\n \"import\": () => import('@shikijs/langs/haskell')\n },\n {\n \"id\": \"haxe\",\n \"name\": \"Haxe\",\n \"import\": () => import('@shikijs/langs/haxe')\n },\n {\n \"id\": \"hcl\",\n \"name\": \"HashiCorp HCL\",\n \"import\": () => import('@shikijs/langs/hcl')\n },\n {\n \"id\": \"hjson\",\n \"name\": \"Hjson\",\n \"import\": () => import('@shikijs/langs/hjson')\n },\n {\n \"id\": \"hlsl\",\n \"name\": \"HLSL\",\n \"import\": () => import('@shikijs/langs/hlsl')\n },\n {\n \"id\": \"html\",\n \"name\": \"HTML\",\n \"import\": () => import('@shikijs/langs/html')\n },\n {\n \"id\": \"html-derivative\",\n \"name\": \"HTML (Derivative)\",\n \"import\": () => import('@shikijs/langs/html-derivative')\n },\n {\n \"id\": \"http\",\n \"name\": \"HTTP\",\n \"import\": () => import('@shikijs/langs/http')\n },\n {\n \"id\": \"hxml\",\n \"name\": \"HXML\",\n \"import\": () => import('@shikijs/langs/hxml')\n },\n {\n \"id\": \"hy\",\n \"name\": \"Hy\",\n \"import\": () => import('@shikijs/langs/hy')\n },\n {\n \"id\": \"imba\",\n \"name\": \"Imba\",\n \"import\": () => import('@shikijs/langs/imba')\n },\n {\n \"id\": \"ini\",\n \"name\": \"INI\",\n \"aliases\": [\n \"properties\"\n ],\n \"import\": () => import('@shikijs/langs/ini')\n },\n {\n \"id\": \"java\",\n \"name\": \"Java\",\n \"import\": () => import('@shikijs/langs/java')\n },\n {\n \"id\": \"javascript\",\n \"name\": \"JavaScript\",\n \"aliases\": [\n \"js\"\n ],\n \"import\": () => import('@shikijs/langs/javascript')\n },\n {\n \"id\": \"jinja\",\n \"name\": \"Jinja\",\n \"import\": () => import('@shikijs/langs/jinja')\n },\n {\n \"id\": \"jison\",\n \"name\": \"Jison\",\n \"import\": () => import('@shikijs/langs/jison')\n },\n {\n \"id\": \"json\",\n \"name\": \"JSON\",\n \"import\": () => import('@shikijs/langs/json')\n },\n {\n \"id\": \"json5\",\n \"name\": \"JSON5\",\n \"import\": () => import('@shikijs/langs/json5')\n },\n {\n \"id\": \"jsonc\",\n \"name\": \"JSON with Comments\",\n \"import\": () => import('@shikijs/langs/jsonc')\n },\n {\n \"id\": \"jsonl\",\n \"name\": \"JSON Lines\",\n \"import\": () => import('@shikijs/langs/jsonl')\n },\n {\n \"id\": \"jsonnet\",\n \"name\": \"Jsonnet\",\n \"import\": () => import('@shikijs/langs/jsonnet')\n },\n {\n \"id\": \"jssm\",\n \"name\": \"JSSM\",\n \"aliases\": [\n \"fsl\"\n ],\n \"import\": () => import('@shikijs/langs/jssm')\n },\n {\n \"id\": \"jsx\",\n \"name\": \"JSX\",\n \"import\": () => import('@shikijs/langs/jsx')\n },\n {\n \"id\": \"julia\",\n \"name\": \"Julia\",\n \"aliases\": [\n \"jl\"\n ],\n \"import\": () => import('@shikijs/langs/julia')\n },\n {\n \"id\": \"kotlin\",\n \"name\": \"Kotlin\",\n \"aliases\": [\n \"kt\",\n \"kts\"\n ],\n \"import\": () => import('@shikijs/langs/kotlin')\n },\n {\n \"id\": \"kusto\",\n \"name\": \"Kusto\",\n \"aliases\": [\n \"kql\"\n ],\n \"import\": () => import('@shikijs/langs/kusto')\n },\n {\n \"id\": \"latex\",\n \"name\": \"LaTeX\",\n \"import\": () => import('@shikijs/langs/latex')\n },\n {\n \"id\": \"lean\",\n \"name\": \"Lean 4\",\n \"aliases\": [\n \"lean4\"\n ],\n \"import\": () => import('@shikijs/langs/lean')\n },\n {\n \"id\": \"less\",\n \"name\": \"Less\",\n \"import\": () => import('@shikijs/langs/less')\n },\n {\n \"id\": \"liquid\",\n \"name\": \"Liquid\",\n \"import\": () => import('@shikijs/langs/liquid')\n },\n {\n \"id\": \"log\",\n \"name\": \"Log file\",\n \"import\": () => import('@shikijs/langs/log')\n },\n {\n \"id\": \"logo\",\n \"name\": \"Logo\",\n \"import\": () => import('@shikijs/langs/logo')\n },\n {\n \"id\": \"lua\",\n \"name\": \"Lua\",\n \"import\": () => import('@shikijs/langs/lua')\n },\n {\n \"id\": \"luau\",\n \"name\": \"Luau\",\n \"import\": () => import('@shikijs/langs/luau')\n },\n {\n \"id\": \"make\",\n \"name\": \"Makefile\",\n \"aliases\": [\n \"makefile\"\n ],\n \"import\": () => import('@shikijs/langs/make')\n },\n {\n \"id\": \"markdown\",\n \"name\": \"Markdown\",\n \"aliases\": [\n \"md\"\n ],\n \"import\": () => import('@shikijs/langs/markdown')\n },\n {\n \"id\": \"marko\",\n \"name\": \"Marko\",\n \"import\": () => import('@shikijs/langs/marko')\n },\n {\n \"id\": \"matlab\",\n \"name\": \"MATLAB\",\n \"import\": () => import('@shikijs/langs/matlab')\n },\n {\n \"id\": \"mdc\",\n \"name\": \"MDC\",\n \"import\": () => import('@shikijs/langs/mdc')\n },\n {\n \"id\": \"mdx\",\n \"name\": \"MDX\",\n \"import\": () => import('@shikijs/langs/mdx')\n },\n {\n \"id\": \"mermaid\",\n \"name\": \"Mermaid\",\n \"aliases\": [\n \"mmd\"\n ],\n \"import\": () => import('@shikijs/langs/mermaid')\n },\n {\n \"id\": \"mipsasm\",\n \"name\": \"MIPS Assembly\",\n \"aliases\": [\n \"mips\"\n ],\n \"import\": () => import('@shikijs/langs/mipsasm')\n },\n {\n \"id\": \"mojo\",\n \"name\": \"Mojo\",\n \"import\": () => import('@shikijs/langs/mojo')\n },\n {\n \"id\": \"move\",\n \"name\": \"Move\",\n \"import\": () => import('@shikijs/langs/move')\n },\n {\n \"id\": \"narrat\",\n \"name\": \"Narrat Language\",\n \"aliases\": [\n \"nar\"\n ],\n \"import\": () => import('@shikijs/langs/narrat')\n },\n {\n \"id\": \"nextflow\",\n \"name\": \"Nextflow\",\n \"aliases\": [\n \"nf\"\n ],\n \"import\": () => import('@shikijs/langs/nextflow')\n },\n {\n \"id\": \"nginx\",\n \"name\": \"Nginx\",\n \"import\": () => import('@shikijs/langs/nginx')\n },\n {\n \"id\": \"nim\",\n \"name\": \"Nim\",\n \"import\": () => import('@shikijs/langs/nim')\n },\n {\n \"id\": \"nix\",\n \"name\": \"Nix\",\n \"import\": () => import('@shikijs/langs/nix')\n },\n {\n \"id\": \"nushell\",\n \"name\": \"nushell\",\n \"aliases\": [\n \"nu\"\n ],\n \"import\": () => import('@shikijs/langs/nushell')\n },\n {\n \"id\": \"objective-c\",\n \"name\": \"Objective-C\",\n \"aliases\": [\n \"objc\"\n ],\n \"import\": () => import('@shikijs/langs/objective-c')\n },\n {\n \"id\": \"objective-cpp\",\n \"name\": \"Objective-C++\",\n \"import\": () => import('@shikijs/langs/objective-cpp')\n },\n {\n \"id\": \"ocaml\",\n \"name\": \"OCaml\",\n \"import\": () => import('@shikijs/langs/ocaml')\n },\n {\n \"id\": \"pascal\",\n \"name\": \"Pascal\",\n \"import\": () => import('@shikijs/langs/pascal')\n },\n {\n \"id\": \"perl\",\n \"name\": \"Perl\",\n \"import\": () => import('@shikijs/langs/perl')\n },\n {\n \"id\": \"php\",\n \"name\": \"PHP\",\n \"import\": () => import('@shikijs/langs/php')\n },\n {\n \"id\": \"plsql\",\n \"name\": \"PL/SQL\",\n \"import\": () => import('@shikijs/langs/plsql')\n },\n {\n \"id\": \"po\",\n \"name\": \"Gettext PO\",\n \"aliases\": [\n \"pot\",\n \"potx\"\n ],\n \"import\": () => import('@shikijs/langs/po')\n },\n {\n \"id\": \"polar\",\n \"name\": \"Polar\",\n \"import\": () => import('@shikijs/langs/polar')\n },\n {\n \"id\": \"postcss\",\n \"name\": \"PostCSS\",\n \"import\": () => import('@shikijs/langs/postcss')\n },\n {\n \"id\": \"powerquery\",\n \"name\": \"PowerQuery\",\n \"import\": () => import('@shikijs/langs/powerquery')\n },\n {\n \"id\": \"powershell\",\n \"name\": \"PowerShell\",\n \"aliases\": [\n \"ps\",\n \"ps1\"\n ],\n \"import\": () => import('@shikijs/langs/powershell')\n },\n {\n \"id\": \"prisma\",\n \"name\": \"Prisma\",\n \"import\": () => import('@shikijs/langs/prisma')\n },\n {\n \"id\": \"prolog\",\n \"name\": \"Prolog\",\n \"import\": () => import('@shikijs/langs/prolog')\n },\n {\n \"id\": \"proto\",\n \"name\": \"Protocol Buffer 3\",\n \"aliases\": [\n \"protobuf\"\n ],\n \"import\": () => import('@shikijs/langs/proto')\n },\n {\n \"id\": \"pug\",\n \"name\": \"Pug\",\n \"aliases\": [\n \"jade\"\n ],\n \"import\": () => import('@shikijs/langs/pug')\n },\n {\n \"id\": \"puppet\",\n \"name\": \"Puppet\",\n \"import\": () => import('@shikijs/langs/puppet')\n },\n {\n \"id\": \"purescript\",\n \"name\": \"PureScript\",\n \"import\": () => import('@shikijs/langs/purescript')\n },\n {\n \"id\": \"python\",\n \"name\": \"Python\",\n \"aliases\": [\n \"py\"\n ],\n \"import\": () => import('@shikijs/langs/python')\n },\n {\n \"id\": \"qml\",\n \"name\": \"QML\",\n \"import\": () => import('@shikijs/langs/qml')\n },\n {\n \"id\": \"qmldir\",\n \"name\": \"QML Directory\",\n \"import\": () => import('@shikijs/langs/qmldir')\n },\n {\n \"id\": \"qss\",\n \"name\": \"Qt Style Sheets\",\n \"import\": () => import('@shikijs/langs/qss')\n },\n {\n \"id\": \"r\",\n \"name\": \"R\",\n \"import\": () => import('@shikijs/langs/r')\n },\n {\n \"id\": \"racket\",\n \"name\": \"Racket\",\n \"import\": () => import('@shikijs/langs/racket')\n },\n {\n \"id\": \"raku\",\n \"name\": \"Raku\",\n \"aliases\": [\n \"perl6\"\n ],\n \"import\": () => import('@shikijs/langs/raku')\n },\n {\n \"id\": \"razor\",\n \"name\": \"ASP.NET Razor\",\n \"import\": () => import('@shikijs/langs/razor')\n },\n {\n \"id\": \"reg\",\n \"name\": \"Windows Registry Script\",\n \"import\": () => import('@shikijs/langs/reg')\n },\n {\n \"id\": \"regexp\",\n \"name\": \"RegExp\",\n \"aliases\": [\n \"regex\"\n ],\n \"import\": () => import('@shikijs/langs/regexp')\n },\n {\n \"id\": \"rel\",\n \"name\": \"Rel\",\n \"import\": () => import('@shikijs/langs/rel')\n },\n {\n \"id\": \"riscv\",\n \"name\": \"RISC-V\",\n \"import\": () => import('@shikijs/langs/riscv')\n },\n {\n \"id\": \"rst\",\n \"name\": \"reStructuredText\",\n \"import\": () => import('@shikijs/langs/rst')\n },\n {\n \"id\": \"ruby\",\n \"name\": \"Ruby\",\n \"aliases\": [\n \"rb\"\n ],\n \"import\": () => import('@shikijs/langs/ruby')\n },\n {\n \"id\": \"rust\",\n \"name\": \"Rust\",\n \"aliases\": [\n \"rs\"\n ],\n \"import\": () => import('@shikijs/langs/rust')\n },\n {\n \"id\": \"sas\",\n \"name\": \"SAS\",\n \"import\": () => import('@shikijs/langs/sas')\n },\n {\n \"id\": \"sass\",\n \"name\": \"Sass\",\n \"import\": () => import('@shikijs/langs/sass')\n },\n {\n \"id\": \"scala\",\n \"name\": \"Scala\",\n \"import\": () => import('@shikijs/langs/scala')\n },\n {\n \"id\": \"scheme\",\n \"name\": \"Scheme\",\n \"import\": () => import('@shikijs/langs/scheme')\n },\n {\n \"id\": \"scss\",\n \"name\": \"SCSS\",\n \"import\": () => import('@shikijs/langs/scss')\n },\n {\n \"id\": \"sdbl\",\n \"name\": \"1C (Query)\",\n \"aliases\": [\n \"1c-query\"\n ],\n \"import\": () => import('@shikijs/langs/sdbl')\n },\n {\n \"id\": \"shaderlab\",\n \"name\": \"ShaderLab\",\n \"aliases\": [\n \"shader\"\n ],\n \"import\": () => import('@shikijs/langs/shaderlab')\n },\n {\n \"id\": \"shellscript\",\n \"name\": \"Shell\",\n \"aliases\": [\n \"bash\",\n \"sh\",\n \"shell\",\n \"zsh\"\n ],\n \"import\": () => import('@shikijs/langs/shellscript')\n },\n {\n \"id\": \"shellsession\",\n \"name\": \"Shell Session\",\n \"aliases\": [\n \"console\"\n ],\n \"import\": () => import('@shikijs/langs/shellsession')\n },\n {\n \"id\": \"smalltalk\",\n \"name\": \"Smalltalk\",\n \"import\": () => import('@shikijs/langs/smalltalk')\n },\n {\n \"id\": \"solidity\",\n \"name\": \"Solidity\",\n \"import\": () => import('@shikijs/langs/solidity')\n },\n {\n \"id\": \"soy\",\n \"name\": \"Closure Templates\",\n \"aliases\": [\n \"closure-templates\"\n ],\n \"import\": () => import('@shikijs/langs/soy')\n },\n {\n \"id\": \"sparql\",\n \"name\": \"SPARQL\",\n \"import\": () => import('@shikijs/langs/sparql')\n },\n {\n \"id\": \"splunk\",\n \"name\": \"Splunk Query Language\",\n \"aliases\": [\n \"spl\"\n ],\n \"import\": () => import('@shikijs/langs/splunk')\n },\n {\n \"id\": \"sql\",\n \"name\": \"SQL\",\n \"import\": () => import('@shikijs/langs/sql')\n },\n {\n \"id\": \"ssh-config\",\n \"name\": \"SSH Config\",\n \"import\": () => import('@shikijs/langs/ssh-config')\n },\n {\n \"id\": \"stata\",\n \"name\": \"Stata\",\n \"import\": () => import('@shikijs/langs/stata')\n },\n {\n \"id\": \"stylus\",\n \"name\": \"Stylus\",\n \"aliases\": [\n \"styl\"\n ],\n \"import\": () => import('@shikijs/langs/stylus')\n },\n {\n \"id\": \"svelte\",\n \"name\": \"Svelte\",\n \"import\": () => import('@shikijs/langs/svelte')\n },\n {\n \"id\": \"swift\",\n \"name\": \"Swift\",\n \"import\": () => import('@shikijs/langs/swift')\n },\n {\n \"id\": \"system-verilog\",\n \"name\": \"SystemVerilog\",\n \"import\": () => import('@shikijs/langs/system-verilog')\n },\n {\n \"id\": \"systemd\",\n \"name\": \"Systemd Units\",\n \"import\": () => import('@shikijs/langs/systemd')\n },\n {\n \"id\": \"talonscript\",\n \"name\": \"TalonScript\",\n \"aliases\": [\n \"talon\"\n ],\n \"import\": () => import('@shikijs/langs/talonscript')\n },\n {\n \"id\": \"tasl\",\n \"name\": \"Tasl\",\n \"import\": () => import('@shikijs/langs/tasl')\n },\n {\n \"id\": \"tcl\",\n \"name\": \"Tcl\",\n \"import\": () => import('@shikijs/langs/tcl')\n },\n {\n \"id\": \"templ\",\n \"name\": \"Templ\",\n \"import\": () => import('@shikijs/langs/templ')\n },\n {\n \"id\": \"terraform\",\n \"name\": \"Terraform\",\n \"aliases\": [\n \"tf\",\n \"tfvars\"\n ],\n \"import\": () => import('@shikijs/langs/terraform')\n },\n {\n \"id\": \"tex\",\n \"name\": \"TeX\",\n \"import\": () => import('@shikijs/langs/tex')\n },\n {\n \"id\": \"toml\",\n \"name\": \"TOML\",\n \"import\": () => import('@shikijs/langs/toml')\n },\n {\n \"id\": \"ts-tags\",\n \"name\": \"TypeScript with Tags\",\n \"aliases\": [\n \"lit\"\n ],\n \"import\": () => import('@shikijs/langs/ts-tags')\n },\n {\n \"id\": \"tsv\",\n \"name\": \"TSV\",\n \"import\": () => import('@shikijs/langs/tsv')\n },\n {\n \"id\": \"tsx\",\n \"name\": \"TSX\",\n \"import\": () => import('@shikijs/langs/tsx')\n },\n {\n \"id\": \"turtle\",\n \"name\": \"Turtle\",\n \"import\": () => import('@shikijs/langs/turtle')\n },\n {\n \"id\": \"twig\",\n \"name\": \"Twig\",\n \"import\": () => import('@shikijs/langs/twig')\n },\n {\n \"id\": \"typescript\",\n \"name\": \"TypeScript\",\n \"aliases\": [\n \"ts\"\n ],\n \"import\": () => import('@shikijs/langs/typescript')\n },\n {\n \"id\": \"typespec\",\n \"name\": \"TypeSpec\",\n \"aliases\": [\n \"tsp\"\n ],\n \"import\": () => import('@shikijs/langs/typespec')\n },\n {\n \"id\": \"typst\",\n \"name\": \"Typst\",\n \"aliases\": [\n \"typ\"\n ],\n \"import\": () => import('@shikijs/langs/typst')\n },\n {\n \"id\": \"v\",\n \"name\": \"V\",\n \"import\": () => import('@shikijs/langs/v')\n },\n {\n \"id\": \"vala\",\n \"name\": \"Vala\",\n \"import\": () => import('@shikijs/langs/vala')\n },\n {\n \"id\": \"vb\",\n \"name\": \"Visual Basic\",\n \"aliases\": [\n \"cmd\"\n ],\n \"import\": () => import('@shikijs/langs/vb')\n },\n {\n \"id\": \"verilog\",\n \"name\": \"Verilog\",\n \"import\": () => import('@shikijs/langs/verilog')\n },\n {\n \"id\": \"vhdl\",\n \"name\": \"VHDL\",\n \"import\": () => import('@shikijs/langs/vhdl')\n },\n {\n \"id\": \"viml\",\n \"name\": \"Vim Script\",\n \"aliases\": [\n \"vim\",\n \"vimscript\"\n ],\n \"import\": () => import('@shikijs/langs/viml')\n },\n {\n \"id\": \"vue\",\n \"name\": \"Vue\",\n \"import\": () => import('@shikijs/langs/vue')\n },\n {\n \"id\": \"vue-html\",\n \"name\": \"Vue HTML\",\n \"import\": () => import('@shikijs/langs/vue-html')\n },\n {\n \"id\": \"vyper\",\n \"name\": \"Vyper\",\n \"aliases\": [\n \"vy\"\n ],\n \"import\": () => import('@shikijs/langs/vyper')\n },\n {\n \"id\": \"wasm\",\n \"name\": \"WebAssembly\",\n \"import\": () => import('@shikijs/langs/wasm')\n },\n {\n \"id\": \"wenyan\",\n \"name\": \"Wenyan\",\n \"aliases\": [\n \"\\u6587\\u8A00\"\n ],\n \"import\": () => import('@shikijs/langs/wenyan')\n },\n {\n \"id\": \"wgsl\",\n \"name\": \"WGSL\",\n \"import\": () => import('@shikijs/langs/wgsl')\n },\n {\n \"id\": \"wikitext\",\n \"name\": \"Wikitext\",\n \"aliases\": [\n \"mediawiki\",\n \"wiki\"\n ],\n \"import\": () => import('@shikijs/langs/wikitext')\n },\n {\n \"id\": \"wolfram\",\n \"name\": \"Wolfram\",\n \"aliases\": [\n \"wl\"\n ],\n \"import\": () => import('@shikijs/langs/wolfram')\n },\n {\n \"id\": \"xml\",\n \"name\": \"XML\",\n \"import\": () => import('@shikijs/langs/xml')\n },\n {\n \"id\": \"xsl\",\n \"name\": \"XSL\",\n \"import\": () => import('@shikijs/langs/xsl')\n },\n {\n \"id\": \"yaml\",\n \"name\": \"YAML\",\n \"aliases\": [\n \"yml\"\n ],\n \"import\": () => import('@shikijs/langs/yaml')\n },\n {\n \"id\": \"zenscript\",\n \"name\": \"ZenScript\",\n \"import\": () => import('@shikijs/langs/zenscript')\n },\n {\n \"id\": \"zig\",\n \"name\": \"Zig\",\n \"import\": () => import('@shikijs/langs/zig')\n }\n];\nconst bundledLanguagesBase = Object.fromEntries(bundledLanguagesInfo.map((i) => [i.id, i.import]));\nconst bundledLanguagesAlias = Object.fromEntries(bundledLanguagesInfo.flatMap((i) => i.aliases?.map((a) => [a, i.import]) || []));\nconst bundledLanguages = {\n ...bundledLanguagesBase,\n ...bundledLanguagesAlias\n};\n\nexport { bundledLanguages, bundledLanguagesAlias, bundledLanguagesBase, bundledLanguagesInfo };\n", "const bundledThemesInfo = [\n {\n \"id\": \"andromeeda\",\n \"displayName\": \"Andromeeda\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/andromeeda')\n },\n {\n \"id\": \"aurora-x\",\n \"displayName\": \"Aurora X\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/aurora-x')\n },\n {\n \"id\": \"ayu-dark\",\n \"displayName\": \"Ayu Dark\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/ayu-dark')\n },\n {\n \"id\": \"catppuccin-frappe\",\n \"displayName\": \"Catppuccin Frapp\\xE9\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/catppuccin-frappe')\n },\n {\n \"id\": \"catppuccin-latte\",\n \"displayName\": \"Catppuccin Latte\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/catppuccin-latte')\n },\n {\n \"id\": \"catppuccin-macchiato\",\n \"displayName\": \"Catppuccin Macchiato\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/catppuccin-macchiato')\n },\n {\n \"id\": \"catppuccin-mocha\",\n \"displayName\": \"Catppuccin Mocha\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/catppuccin-mocha')\n },\n {\n \"id\": \"dark-plus\",\n \"displayName\": \"Dark Plus\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/dark-plus')\n },\n {\n \"id\": \"dracula\",\n \"displayName\": \"Dracula Theme\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/dracula')\n },\n {\n \"id\": \"dracula-soft\",\n \"displayName\": \"Dracula Theme Soft\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/dracula-soft')\n },\n {\n \"id\": \"everforest-dark\",\n \"displayName\": \"Everforest Dark\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/everforest-dark')\n },\n {\n \"id\": \"everforest-light\",\n \"displayName\": \"Everforest Light\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/everforest-light')\n },\n {\n \"id\": \"github-dark\",\n \"displayName\": \"GitHub Dark\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/github-dark')\n },\n {\n \"id\": \"github-dark-default\",\n \"displayName\": \"GitHub Dark Default\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/github-dark-default')\n },\n {\n \"id\": \"github-dark-dimmed\",\n \"displayName\": \"GitHub Dark Dimmed\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/github-dark-dimmed')\n },\n {\n \"id\": \"github-dark-high-contrast\",\n \"displayName\": \"GitHub Dark High Contrast\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/github-dark-high-contrast')\n },\n {\n \"id\": \"github-light\",\n \"displayName\": \"GitHub Light\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/github-light')\n },\n {\n \"id\": \"github-light-default\",\n \"displayName\": \"GitHub Light Default\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/github-light-default')\n },\n {\n \"id\": \"github-light-high-contrast\",\n \"displayName\": \"GitHub Light High Contrast\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/github-light-high-contrast')\n },\n {\n \"id\": \"houston\",\n \"displayName\": \"Houston\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/houston')\n },\n {\n \"id\": \"kanagawa-dragon\",\n \"displayName\": \"Kanagawa Dragon\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/kanagawa-dragon')\n },\n {\n \"id\": \"kanagawa-lotus\",\n \"displayName\": \"Kanagawa Lotus\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/kanagawa-lotus')\n },\n {\n \"id\": \"kanagawa-wave\",\n \"displayName\": \"Kanagawa Wave\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/kanagawa-wave')\n },\n {\n \"id\": \"laserwave\",\n \"displayName\": \"LaserWave\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/laserwave')\n },\n {\n \"id\": \"light-plus\",\n \"displayName\": \"Light Plus\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/light-plus')\n },\n {\n \"id\": \"material-theme\",\n \"displayName\": \"Material Theme\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/material-theme')\n },\n {\n \"id\": \"material-theme-darker\",\n \"displayName\": \"Material Theme Darker\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/material-theme-darker')\n },\n {\n \"id\": \"material-theme-lighter\",\n \"displayName\": \"Material Theme Lighter\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/material-theme-lighter')\n },\n {\n \"id\": \"material-theme-ocean\",\n \"displayName\": \"Material Theme Ocean\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/material-theme-ocean')\n },\n {\n \"id\": \"material-theme-palenight\",\n \"displayName\": \"Material Theme Palenight\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/material-theme-palenight')\n },\n {\n \"id\": \"min-dark\",\n \"displayName\": \"Min Dark\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/min-dark')\n },\n {\n \"id\": \"min-light\",\n \"displayName\": \"Min Light\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/min-light')\n },\n {\n \"id\": \"monokai\",\n \"displayName\": \"Monokai\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/monokai')\n },\n {\n \"id\": \"night-owl\",\n \"displayName\": \"Night Owl\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/night-owl')\n },\n {\n \"id\": \"nord\",\n \"displayName\": \"Nord\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/nord')\n },\n {\n \"id\": \"one-dark-pro\",\n \"displayName\": \"One Dark Pro\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/one-dark-pro')\n },\n {\n \"id\": \"one-light\",\n \"displayName\": \"One Light\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/one-light')\n },\n {\n \"id\": \"plastic\",\n \"displayName\": \"Plastic\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/plastic')\n },\n {\n \"id\": \"poimandres\",\n \"displayName\": \"Poimandres\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/poimandres')\n },\n {\n \"id\": \"red\",\n \"displayName\": \"Red\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/red')\n },\n {\n \"id\": \"rose-pine\",\n \"displayName\": \"Ros\\xE9 Pine\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/rose-pine')\n },\n {\n \"id\": \"rose-pine-dawn\",\n \"displayName\": \"Ros\\xE9 Pine Dawn\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/rose-pine-dawn')\n },\n {\n \"id\": \"rose-pine-moon\",\n \"displayName\": \"Ros\\xE9 Pine Moon\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/rose-pine-moon')\n },\n {\n \"id\": \"slack-dark\",\n \"displayName\": \"Slack Dark\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/slack-dark')\n },\n {\n \"id\": \"slack-ochin\",\n \"displayName\": \"Slack Ochin\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/slack-ochin')\n },\n {\n \"id\": \"snazzy-light\",\n \"displayName\": \"Snazzy Light\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/snazzy-light')\n },\n {\n \"id\": \"solarized-dark\",\n \"displayName\": \"Solarized Dark\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/solarized-dark')\n },\n {\n \"id\": \"solarized-light\",\n \"displayName\": \"Solarized Light\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/solarized-light')\n },\n {\n \"id\": \"synthwave-84\",\n \"displayName\": \"Synthwave '84\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/synthwave-84')\n },\n {\n \"id\": \"tokyo-night\",\n \"displayName\": \"Tokyo Night\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/tokyo-night')\n },\n {\n \"id\": \"vesper\",\n \"displayName\": \"Vesper\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/vesper')\n },\n {\n \"id\": \"vitesse-black\",\n \"displayName\": \"Vitesse Black\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/vitesse-black')\n },\n {\n \"id\": \"vitesse-dark\",\n \"displayName\": \"Vitesse Dark\",\n \"type\": \"dark\",\n \"import\": () => import('@shikijs/themes/vitesse-dark')\n },\n {\n \"id\": \"vitesse-light\",\n \"displayName\": \"Vitesse Light\",\n \"type\": \"light\",\n \"import\": () => import('@shikijs/themes/vitesse-light')\n }\n];\nconst bundledThemes = Object.fromEntries(bundledThemesInfo.map((i) => [i.id, i.import]));\n\nexport { bundledThemes, bundledThemesInfo };\n", "class ShikiError extends Error {\n constructor(message) {\n super(message);\n this.name = \"ShikiError\";\n }\n}\n\nexport { ShikiError };\n", "class ShikiError extends Error {\n constructor(message) {\n super(message);\n this.name = \"ShikiError\";\n }\n}\n\nfunction getHeapMax() {\n return 2147483648;\n}\nfunction _emscripten_get_now() {\n return typeof performance !== \"undefined\" ? performance.now() : Date.now();\n}\nconst alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple;\nasync function main(init) {\n let wasmMemory;\n let buffer;\n const binding = {};\n function updateGlobalBufferAndViews(buf) {\n buffer = buf;\n binding.HEAPU8 = new Uint8Array(buf);\n binding.HEAPU32 = new Uint32Array(buf);\n }\n function _emscripten_memcpy_big(dest, src, num) {\n binding.HEAPU8.copyWithin(dest, src, src + num);\n }\n function emscripten_realloc_buffer(size) {\n try {\n wasmMemory.grow(size - buffer.byteLength + 65535 >>> 16);\n updateGlobalBufferAndViews(wasmMemory.buffer);\n return 1;\n } catch {\n }\n }\n function _emscripten_resize_heap(requestedSize) {\n const oldSize = binding.HEAPU8.length;\n requestedSize = requestedSize >>> 0;\n const maxHeapSize = getHeapMax();\n if (requestedSize > maxHeapSize)\n return false;\n for (let cutDown = 1; cutDown <= 4; cutDown *= 2) {\n let overGrownHeapSize = oldSize * (1 + 0.2 / cutDown);\n overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);\n const newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));\n const replacement = emscripten_realloc_buffer(newSize);\n if (replacement)\n return true;\n }\n return false;\n }\n const UTF8Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf8\") : undefined;\n function UTF8ArrayToString(heapOrArray, idx, maxBytesToRead = 1024) {\n const endIdx = idx + maxBytesToRead;\n let endPtr = idx;\n while (heapOrArray[endPtr] && !(endPtr >= endIdx))\n ++endPtr;\n if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {\n return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));\n }\n let str = \"\";\n while (idx < endPtr) {\n let u0 = heapOrArray[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n const u1 = heapOrArray[idx++] & 63;\n if ((u0 & 224) === 192) {\n str += String.fromCharCode((u0 & 31) << 6 | u1);\n continue;\n }\n const u2 = heapOrArray[idx++] & 63;\n if ((u0 & 240) === 224) {\n u0 = (u0 & 15) << 12 | u1 << 6 | u2;\n } else {\n u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n } else {\n const ch = u0 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n }\n }\n return str;\n }\n function UTF8ToString(ptr, maxBytesToRead) {\n return ptr ? UTF8ArrayToString(binding.HEAPU8, ptr, maxBytesToRead) : \"\";\n }\n const asmLibraryArg = {\n emscripten_get_now: _emscripten_get_now,\n emscripten_memcpy_big: _emscripten_memcpy_big,\n emscripten_resize_heap: _emscripten_resize_heap,\n fd_write: () => 0\n };\n async function createWasm() {\n const info = {\n env: asmLibraryArg,\n wasi_snapshot_preview1: asmLibraryArg\n };\n const exports = await init(info);\n wasmMemory = exports.memory;\n updateGlobalBufferAndViews(wasmMemory.buffer);\n Object.assign(binding, exports);\n binding.UTF8ToString = UTF8ToString;\n }\n await createWasm();\n return binding;\n}\n\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => {\n __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nlet onigBinding = null;\nfunction throwLastOnigError(onigBinding2) {\n throw new ShikiError(onigBinding2.UTF8ToString(onigBinding2.getLastOnigError()));\n}\nclass UtfString {\n constructor(str) {\n __publicField(this, \"utf16Length\");\n __publicField(this, \"utf8Length\");\n __publicField(this, \"utf16Value\");\n __publicField(this, \"utf8Value\");\n __publicField(this, \"utf16OffsetToUtf8\");\n __publicField(this, \"utf8OffsetToUtf16\");\n const utf16Length = str.length;\n const utf8Length = UtfString._utf8ByteLength(str);\n const computeIndicesMapping = utf8Length !== utf16Length;\n const utf16OffsetToUtf8 = computeIndicesMapping ? new Uint32Array(utf16Length + 1) : null;\n if (computeIndicesMapping)\n utf16OffsetToUtf8[utf16Length] = utf8Length;\n const utf8OffsetToUtf16 = computeIndicesMapping ? new Uint32Array(utf8Length + 1) : null;\n if (computeIndicesMapping)\n utf8OffsetToUtf16[utf8Length] = utf16Length;\n const utf8Value = new Uint8Array(utf8Length);\n let i8 = 0;\n for (let i16 = 0; i16 < utf16Length; i16++) {\n const charCode = str.charCodeAt(i16);\n let codePoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 55296 && charCode <= 56319) {\n if (i16 + 1 < utf16Length) {\n const nextCharCode = str.charCodeAt(i16 + 1);\n if (nextCharCode >= 56320 && nextCharCode <= 57343) {\n codePoint = (charCode - 55296 << 10) + 65536 | nextCharCode - 56320;\n wasSurrogatePair = true;\n }\n }\n }\n if (computeIndicesMapping) {\n utf16OffsetToUtf8[i16] = i8;\n if (wasSurrogatePair)\n utf16OffsetToUtf8[i16 + 1] = i8;\n if (codePoint <= 127) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n } else if (codePoint <= 2047) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n } else if (codePoint <= 65535) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n } else {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n utf8OffsetToUtf16[i8 + 3] = i16;\n }\n }\n if (codePoint <= 127) {\n utf8Value[i8++] = codePoint;\n } else if (codePoint <= 2047) {\n utf8Value[i8++] = 192 | (codePoint & 1984) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n } else if (codePoint <= 65535) {\n utf8Value[i8++] = 224 | (codePoint & 61440) >>> 12;\n utf8Value[i8++] = 128 | (codePoint & 4032) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n } else {\n utf8Value[i8++] = 240 | (codePoint & 1835008) >>> 18;\n utf8Value[i8++] = 128 | (codePoint & 258048) >>> 12;\n utf8Value[i8++] = 128 | (codePoint & 4032) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n }\n if (wasSurrogatePair)\n i16++;\n }\n this.utf16Length = utf16Length;\n this.utf8Length = utf8Length;\n this.utf16Value = str;\n this.utf8Value = utf8Value;\n this.utf16OffsetToUtf8 = utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utf8OffsetToUtf16;\n }\n static _utf8ByteLength(str) {\n let result = 0;\n for (let i = 0, len = str.length; i < len; i++) {\n const charCode = str.charCodeAt(i);\n let codepoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 55296 && charCode <= 56319) {\n if (i + 1 < len) {\n const nextCharCode = str.charCodeAt(i + 1);\n if (nextCharCode >= 56320 && nextCharCode <= 57343) {\n codepoint = (charCode - 55296 << 10) + 65536 | nextCharCode - 56320;\n wasSurrogatePair = true;\n }\n }\n }\n if (codepoint <= 127)\n result += 1;\n else if (codepoint <= 2047)\n result += 2;\n else if (codepoint <= 65535)\n result += 3;\n else\n result += 4;\n if (wasSurrogatePair)\n i++;\n }\n return result;\n }\n createString(onigBinding2) {\n const result = onigBinding2.omalloc(this.utf8Length);\n onigBinding2.HEAPU8.set(this.utf8Value, result);\n return result;\n }\n}\nconst _OnigString = class {\n constructor(str) {\n __publicField(this, \"id\", ++_OnigString.LAST_ID);\n __publicField(this, \"_onigBinding\");\n __publicField(this, \"content\");\n __publicField(this, \"utf16Length\");\n __publicField(this, \"utf8Length\");\n __publicField(this, \"utf16OffsetToUtf8\");\n __publicField(this, \"utf8OffsetToUtf16\");\n __publicField(this, \"ptr\");\n if (!onigBinding)\n throw new ShikiError(\"Must invoke loadWasm first.\");\n this._onigBinding = onigBinding;\n this.content = str;\n const utfString = new UtfString(str);\n this.utf16Length = utfString.utf16Length;\n this.utf8Length = utfString.utf8Length;\n this.utf16OffsetToUtf8 = utfString.utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utfString.utf8OffsetToUtf16;\n if (this.utf8Length < 1e4 && !_OnigString._sharedPtrInUse) {\n if (!_OnigString._sharedPtr)\n _OnigString._sharedPtr = onigBinding.omalloc(1e4);\n _OnigString._sharedPtrInUse = true;\n onigBinding.HEAPU8.set(utfString.utf8Value, _OnigString._sharedPtr);\n this.ptr = _OnigString._sharedPtr;\n } else {\n this.ptr = utfString.createString(onigBinding);\n }\n }\n convertUtf8OffsetToUtf16(utf8Offset) {\n if (this.utf8OffsetToUtf16) {\n if (utf8Offset < 0)\n return 0;\n if (utf8Offset > this.utf8Length)\n return this.utf16Length;\n return this.utf8OffsetToUtf16[utf8Offset];\n }\n return utf8Offset;\n }\n convertUtf16OffsetToUtf8(utf16Offset) {\n if (this.utf16OffsetToUtf8) {\n if (utf16Offset < 0)\n return 0;\n if (utf16Offset > this.utf16Length)\n return this.utf8Length;\n return this.utf16OffsetToUtf8[utf16Offset];\n }\n return utf16Offset;\n }\n dispose() {\n if (this.ptr === _OnigString._sharedPtr)\n _OnigString._sharedPtrInUse = false;\n else\n this._onigBinding.ofree(this.ptr);\n }\n};\nlet OnigString = _OnigString;\n__publicField(OnigString, \"LAST_ID\", 0);\n__publicField(OnigString, \"_sharedPtr\", 0);\n// a pointer to a string of 10000 bytes\n__publicField(OnigString, \"_sharedPtrInUse\", false);\nclass OnigScanner {\n constructor(patterns) {\n __publicField(this, \"_onigBinding\");\n __publicField(this, \"_ptr\");\n if (!onigBinding)\n throw new ShikiError(\"Must invoke loadWasm first.\");\n const strPtrsArr = [];\n const strLenArr = [];\n for (let i = 0, len = patterns.length; i < len; i++) {\n const utfString = new UtfString(patterns[i]);\n strPtrsArr[i] = utfString.createString(onigBinding);\n strLenArr[i] = utfString.utf8Length;\n }\n const strPtrsPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strPtrsArr, strPtrsPtr / 4);\n const strLenPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strLenArr, strLenPtr / 4);\n const scannerPtr = onigBinding.createOnigScanner(strPtrsPtr, strLenPtr, patterns.length);\n for (let i = 0, len = patterns.length; i < len; i++)\n onigBinding.ofree(strPtrsArr[i]);\n onigBinding.ofree(strLenPtr);\n onigBinding.ofree(strPtrsPtr);\n if (scannerPtr === 0)\n throwLastOnigError(onigBinding);\n this._onigBinding = onigBinding;\n this._ptr = scannerPtr;\n }\n dispose() {\n this._onigBinding.freeOnigScanner(this._ptr);\n }\n findNextMatchSync(string, startPosition, arg) {\n let options = 0 /* None */;\n if (typeof arg === \"number\") {\n options = arg;\n }\n if (typeof string === \"string\") {\n string = new OnigString(string);\n const result = this._findNextMatchSync(string, startPosition, false, options);\n string.dispose();\n return result;\n }\n return this._findNextMatchSync(string, startPosition, false, options);\n }\n _findNextMatchSync(string, startPosition, debugCall, options) {\n const onigBinding2 = this._onigBinding;\n const resultPtr = onigBinding2.findNextOnigScannerMatch(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options);\n if (resultPtr === 0) {\n return null;\n }\n const HEAPU32 = onigBinding2.HEAPU32;\n let offset = resultPtr / 4;\n const index = HEAPU32[offset++];\n const count = HEAPU32[offset++];\n const captureIndices = [];\n for (let i = 0; i < count; i++) {\n const beg = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n const end = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n captureIndices[i] = {\n start: beg,\n end,\n length: end - beg\n };\n }\n return {\n index,\n captureIndices\n };\n }\n}\nfunction isInstantiatorOptionsObject(dataOrOptions) {\n return typeof dataOrOptions.instantiator === \"function\";\n}\nfunction isInstantiatorModule(dataOrOptions) {\n return typeof dataOrOptions.default === \"function\";\n}\nfunction isDataOptionsObject(dataOrOptions) {\n return typeof dataOrOptions.data !== \"undefined\";\n}\nfunction isResponse(dataOrOptions) {\n return typeof Response !== \"undefined\" && dataOrOptions instanceof Response;\n}\nfunction isArrayBuffer(data) {\n return typeof ArrayBuffer !== \"undefined\" && (data instanceof ArrayBuffer || ArrayBuffer.isView(data)) || typeof Buffer !== \"undefined\" && Buffer.isBuffer?.(data) || typeof SharedArrayBuffer !== \"undefined\" && data instanceof SharedArrayBuffer || typeof Uint32Array !== \"undefined\" && data instanceof Uint32Array;\n}\nlet initPromise;\nfunction loadWasm(options) {\n if (initPromise)\n return initPromise;\n async function _load() {\n onigBinding = await main(async (info) => {\n let instance = options;\n instance = await instance;\n if (typeof instance === \"function\")\n instance = await instance(info);\n if (typeof instance === \"function\")\n instance = await instance(info);\n if (isInstantiatorOptionsObject(instance)) {\n instance = await instance.instantiator(info);\n } else if (isInstantiatorModule(instance)) {\n instance = await instance.default(info);\n } else {\n if (isDataOptionsObject(instance))\n instance = instance.data;\n if (isResponse(instance)) {\n if (typeof WebAssembly.instantiateStreaming === \"function\")\n instance = await _makeResponseStreamingLoader(instance)(info);\n else\n instance = await _makeResponseNonStreamingLoader(instance)(info);\n } else if (isArrayBuffer(instance)) {\n instance = await _makeArrayBufferLoader(instance)(info);\n } else if (instance instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance)(info);\n } else if (\"default\" in instance && instance.default instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance.default)(info);\n }\n }\n if (\"instance\" in instance)\n instance = instance.instance;\n if (\"exports\" in instance)\n instance = instance.exports;\n return instance;\n });\n }\n initPromise = _load();\n return initPromise;\n}\nfunction _makeArrayBufferLoader(data) {\n return (importObject) => WebAssembly.instantiate(data, importObject);\n}\nfunction _makeResponseStreamingLoader(data) {\n return (importObject) => WebAssembly.instantiateStreaming(data, importObject);\n}\nfunction _makeResponseNonStreamingLoader(data) {\n return async (importObject) => {\n const arrayBuffer = await data.arrayBuffer();\n return WebAssembly.instantiate(arrayBuffer, importObject);\n };\n}\n\nlet _defaultWasmLoader;\nfunction setDefaultWasmLoader(_loader) {\n _defaultWasmLoader = _loader;\n}\nfunction getDefaultWasmLoader() {\n return _defaultWasmLoader;\n}\nasync function createOnigurumaEngine(options) {\n if (options)\n await loadWasm(options);\n return {\n createScanner(patterns) {\n return new OnigScanner(patterns.map((p) => typeof p === \"string\" ? p : p.source));\n },\n createString(s) {\n return new OnigString(s);\n }\n };\n}\nasync function createWasmOnigEngine(options) {\n return createOnigurumaEngine(options);\n}\n\nexport { createOnigurumaEngine, createWasmOnigEngine, getDefaultWasmLoader, loadWasm, setDefaultWasmLoader };\n", "let _emitDeprecation = false;\nlet _emitError = false;\nfunction enableDeprecationWarnings(emitDeprecation = true, emitError = false) {\n _emitDeprecation = emitDeprecation;\n _emitError = emitError;\n}\nfunction warnDeprecated(message, version = 3) {\n if (!_emitDeprecation)\n return;\n if (typeof _emitDeprecation === \"number\" && version > _emitDeprecation)\n return;\n if (_emitError) {\n throw new Error(`[SHIKI DEPRECATE]: ${message}`);\n } else {\n console.trace(`[SHIKI DEPRECATE]: ${message}`);\n }\n}\n\nexport { enableDeprecationWarnings as e, warnDeprecated as w };\n", "// src/utils.ts\nfunction clone(something) {\n return doClone(something);\n}\nfunction doClone(something) {\n if (Array.isArray(something)) {\n return cloneArray(something);\n }\n if (something instanceof RegExp) {\n return something;\n }\n if (typeof something === \"object\") {\n return cloneObj(something);\n }\n return something;\n}\nfunction cloneArray(arr) {\n let r = [];\n for (let i = 0, len = arr.length; i < len; i++) {\n r[i] = doClone(arr[i]);\n }\n return r;\n}\nfunction cloneObj(obj) {\n let r = {};\n for (let key in obj) {\n r[key] = doClone(obj[key]);\n }\n return r;\n}\nfunction mergeObjects(target, ...sources) {\n sources.forEach((source) => {\n for (let key in source) {\n target[key] = source[key];\n }\n });\n return target;\n}\nfunction basename(path) {\n const idx = ~path.lastIndexOf(\"/\") || ~path.lastIndexOf(\"\\\\\");\n if (idx === 0) {\n return path;\n } else if (~idx === path.length - 1) {\n return basename(path.substring(0, path.length - 1));\n } else {\n return path.substr(~idx + 1);\n }\n}\nvar CAPTURING_REGEX_SOURCE = /\\$(\\d+)|\\${(\\d+):\\/(downcase|upcase)}/g;\nvar RegexSource = class {\n static hasCaptures(regexSource) {\n if (regexSource === null) {\n return false;\n }\n CAPTURING_REGEX_SOURCE.lastIndex = 0;\n return CAPTURING_REGEX_SOURCE.test(regexSource);\n }\n static replaceCaptures(regexSource, captureSource, captureIndices) {\n return regexSource.replace(CAPTURING_REGEX_SOURCE, (match, index, commandIndex, command) => {\n let capture = captureIndices[parseInt(index || commandIndex, 10)];\n if (capture) {\n let result = captureSource.substring(capture.start, capture.end);\n while (result[0] === \".\") {\n result = result.substring(1);\n }\n switch (command) {\n case \"downcase\":\n return result.toLowerCase();\n case \"upcase\":\n return result.toUpperCase();\n default:\n return result;\n }\n } else {\n return match;\n }\n });\n }\n};\nfunction strcmp(a, b) {\n if (a < b) {\n return -1;\n }\n if (a > b) {\n return 1;\n }\n return 0;\n}\nfunction strArrCmp(a, b) {\n if (a === null && b === null) {\n return 0;\n }\n if (!a) {\n return -1;\n }\n if (!b) {\n return 1;\n }\n let len1 = a.length;\n let len2 = b.length;\n if (len1 === len2) {\n for (let i = 0; i < len1; i++) {\n let res = strcmp(a[i], b[i]);\n if (res !== 0) {\n return res;\n }\n }\n return 0;\n }\n return len1 - len2;\n}\nfunction isValidHexColor(hex) {\n if (/^#[0-9a-f]{6}$/i.test(hex)) {\n return true;\n }\n if (/^#[0-9a-f]{8}$/i.test(hex)) {\n return true;\n }\n if (/^#[0-9a-f]{3}$/i.test(hex)) {\n return true;\n }\n if (/^#[0-9a-f]{4}$/i.test(hex)) {\n return true;\n }\n return false;\n}\nfunction escapeRegExpCharacters(value) {\n return value.replace(/[\\-\\\\\\{\\}\\*\\+\\?\\|\\^\\$\\.\\,\\[\\]\\(\\)\\#\\s]/g, \"\\\\$&\");\n}\nvar CachedFn = class {\n constructor(fn) {\n this.fn = fn;\n }\n cache = /* @__PURE__ */ new Map();\n get(key) {\n if (this.cache.has(key)) {\n return this.cache.get(key);\n }\n const value = this.fn(key);\n this.cache.set(key, value);\n return value;\n }\n};\n\n// src/theme.ts\nvar Theme = class {\n constructor(_colorMap, _defaults, _root) {\n this._colorMap = _colorMap;\n this._defaults = _defaults;\n this._root = _root;\n }\n static createFromRawTheme(source, colorMap) {\n return this.createFromParsedTheme(parseTheme(source), colorMap);\n }\n static createFromParsedTheme(source, colorMap) {\n return resolveParsedThemeRules(source, colorMap);\n }\n _cachedMatchRoot = new CachedFn(\n (scopeName) => this._root.match(scopeName)\n );\n getColorMap() {\n return this._colorMap.getColorMap();\n }\n getDefaults() {\n return this._defaults;\n }\n match(scopePath) {\n if (scopePath === null) {\n return this._defaults;\n }\n const scopeName = scopePath.scopeName;\n const matchingTrieElements = this._cachedMatchRoot.get(scopeName);\n const effectiveRule = matchingTrieElements.find(\n (v) => _scopePathMatchesParentScopes(scopePath.parent, v.parentScopes)\n );\n if (!effectiveRule) {\n return null;\n }\n return new StyleAttributes(\n effectiveRule.fontStyle,\n effectiveRule.foreground,\n effectiveRule.background\n );\n }\n};\nvar ScopeStack = class _ScopeStack {\n constructor(parent, scopeName) {\n this.parent = parent;\n this.scopeName = scopeName;\n }\n static push(path, scopeNames) {\n for (const name of scopeNames) {\n path = new _ScopeStack(path, name);\n }\n return path;\n }\n static from(...segments) {\n let result = null;\n for (let i = 0; i < segments.length; i++) {\n result = new _ScopeStack(result, segments[i]);\n }\n return result;\n }\n push(scopeName) {\n return new _ScopeStack(this, scopeName);\n }\n getSegments() {\n let item = this;\n const result = [];\n while (item) {\n result.push(item.scopeName);\n item = item.parent;\n }\n result.reverse();\n return result;\n }\n toString() {\n return this.getSegments().join(\" \");\n }\n extends(other) {\n if (this === other) {\n return true;\n }\n if (this.parent === null) {\n return false;\n }\n return this.parent.extends(other);\n }\n getExtensionIfDefined(base) {\n const result = [];\n let item = this;\n while (item && item !== base) {\n result.push(item.scopeName);\n item = item.parent;\n }\n return item === base ? result.reverse() : void 0;\n }\n};\nfunction _scopePathMatchesParentScopes(scopePath, parentScopes) {\n if (parentScopes.length === 0) {\n return true;\n }\n for (let index = 0; index < parentScopes.length; index++) {\n let scopePattern = parentScopes[index];\n let scopeMustMatch = false;\n if (scopePattern === \">\") {\n if (index === parentScopes.length - 1) {\n return false;\n }\n scopePattern = parentScopes[++index];\n scopeMustMatch = true;\n }\n while (scopePath) {\n if (_matchesScope(scopePath.scopeName, scopePattern)) {\n break;\n }\n if (scopeMustMatch) {\n return false;\n }\n scopePath = scopePath.parent;\n }\n if (!scopePath) {\n return false;\n }\n scopePath = scopePath.parent;\n }\n return true;\n}\nfunction _matchesScope(scopeName, scopePattern) {\n return scopePattern === scopeName || scopeName.startsWith(scopePattern) && scopeName[scopePattern.length] === \".\";\n}\nvar StyleAttributes = class {\n constructor(fontStyle, foregroundId, backgroundId) {\n this.fontStyle = fontStyle;\n this.foregroundId = foregroundId;\n this.backgroundId = backgroundId;\n }\n};\nfunction parseTheme(source) {\n if (!source) {\n return [];\n }\n if (!source.settings || !Array.isArray(source.settings)) {\n return [];\n }\n let settings = source.settings;\n let result = [], resultLen = 0;\n for (let i = 0, len = settings.length; i < len; i++) {\n let entry = settings[i];\n if (!entry.settings) {\n continue;\n }\n let scopes;\n if (typeof entry.scope === \"string\") {\n let _scope = entry.scope;\n _scope = _scope.replace(/^[,]+/, \"\");\n _scope = _scope.replace(/[,]+$/, \"\");\n scopes = _scope.split(\",\");\n } else if (Array.isArray(entry.scope)) {\n scopes = entry.scope;\n } else {\n scopes = [\"\"];\n }\n let fontStyle = -1 /* NotSet */;\n if (typeof entry.settings.fontStyle === \"string\") {\n fontStyle = 0 /* None */;\n let segments = entry.settings.fontStyle.split(\" \");\n for (let j = 0, lenJ = segments.length; j < lenJ; j++) {\n let segment = segments[j];\n switch (segment) {\n case \"italic\":\n fontStyle = fontStyle | 1 /* Italic */;\n break;\n case \"bold\":\n fontStyle = fontStyle | 2 /* Bold */;\n break;\n case \"underline\":\n fontStyle = fontStyle | 4 /* Underline */;\n break;\n case \"strikethrough\":\n fontStyle = fontStyle | 8 /* Strikethrough */;\n break;\n }\n }\n }\n let foreground = null;\n if (typeof entry.settings.foreground === \"string\" && isValidHexColor(entry.settings.foreground)) {\n foreground = entry.settings.foreground;\n }\n let background = null;\n if (typeof entry.settings.background === \"string\" && isValidHexColor(entry.settings.background)) {\n background = entry.settings.background;\n }\n for (let j = 0, lenJ = scopes.length; j < lenJ; j++) {\n let _scope = scopes[j].trim();\n let segments = _scope.split(\" \");\n let scope = segments[segments.length - 1];\n let parentScopes = null;\n if (segments.length > 1) {\n parentScopes = segments.slice(0, segments.length - 1);\n parentScopes.reverse();\n }\n result[resultLen++] = new ParsedThemeRule(\n scope,\n parentScopes,\n i,\n fontStyle,\n foreground,\n background\n );\n }\n }\n return result;\n}\nvar ParsedThemeRule = class {\n constructor(scope, parentScopes, index, fontStyle, foreground, background) {\n this.scope = scope;\n this.parentScopes = parentScopes;\n this.index = index;\n this.fontStyle = fontStyle;\n this.foreground = foreground;\n this.background = background;\n }\n};\nvar FontStyle = /* @__PURE__ */ ((FontStyle2) => {\n FontStyle2[FontStyle2[\"NotSet\"] = -1] = \"NotSet\";\n FontStyle2[FontStyle2[\"None\"] = 0] = \"None\";\n FontStyle2[FontStyle2[\"Italic\"] = 1] = \"Italic\";\n FontStyle2[FontStyle2[\"Bold\"] = 2] = \"Bold\";\n FontStyle2[FontStyle2[\"Underline\"] = 4] = \"Underline\";\n FontStyle2[FontStyle2[\"Strikethrough\"] = 8] = \"Strikethrough\";\n return FontStyle2;\n})(FontStyle || {});\nfunction resolveParsedThemeRules(parsedThemeRules, _colorMap) {\n parsedThemeRules.sort((a, b) => {\n let r = strcmp(a.scope, b.scope);\n if (r !== 0) {\n return r;\n }\n r = strArrCmp(a.parentScopes, b.parentScopes);\n if (r !== 0) {\n return r;\n }\n return a.index - b.index;\n });\n let defaultFontStyle = 0 /* None */;\n let defaultForeground = \"#000000\";\n let defaultBackground = \"#ffffff\";\n while (parsedThemeRules.length >= 1 && parsedThemeRules[0].scope === \"\") {\n let incomingDefaults = parsedThemeRules.shift();\n if (incomingDefaults.fontStyle !== -1 /* NotSet */) {\n defaultFontStyle = incomingDefaults.fontStyle;\n }\n if (incomingDefaults.foreground !== null) {\n defaultForeground = incomingDefaults.foreground;\n }\n if (incomingDefaults.background !== null) {\n defaultBackground = incomingDefaults.background;\n }\n }\n let colorMap = new ColorMap(_colorMap);\n let defaults = new StyleAttributes(defaultFontStyle, colorMap.getId(defaultForeground), colorMap.getId(defaultBackground));\n let root = new ThemeTrieElement(new ThemeTrieElementRule(0, null, -1 /* NotSet */, 0, 0), []);\n for (let i = 0, len = parsedThemeRules.length; i < len; i++) {\n let rule = parsedThemeRules[i];\n root.insert(0, rule.scope, rule.parentScopes, rule.fontStyle, colorMap.getId(rule.foreground), colorMap.getId(rule.background));\n }\n return new Theme(colorMap, defaults, root);\n}\nvar ColorMap = class {\n _isFrozen;\n _lastColorId;\n _id2color;\n _color2id;\n constructor(_colorMap) {\n this._lastColorId = 0;\n this._id2color = [];\n this._color2id = /* @__PURE__ */ Object.create(null);\n if (Array.isArray(_colorMap)) {\n this._isFrozen = true;\n for (let i = 0, len = _colorMap.length; i < len; i++) {\n this._color2id[_colorMap[i]] = i;\n this._id2color[i] = _colorMap[i];\n }\n } else {\n this._isFrozen = false;\n }\n }\n getId(color) {\n if (color === null) {\n return 0;\n }\n color = color.toUpperCase();\n let value = this._color2id[color];\n if (value) {\n return value;\n }\n if (this._isFrozen) {\n throw new Error(`Missing color in color map - ${color}`);\n }\n value = ++this._lastColorId;\n this._color2id[color] = value;\n this._id2color[value] = color;\n return value;\n }\n getColorMap() {\n return this._id2color.slice(0);\n }\n};\nvar emptyParentScopes = Object.freeze([]);\nvar ThemeTrieElementRule = class _ThemeTrieElementRule {\n scopeDepth;\n parentScopes;\n fontStyle;\n foreground;\n background;\n constructor(scopeDepth, parentScopes, fontStyle, foreground, background) {\n this.scopeDepth = scopeDepth;\n this.parentScopes = parentScopes || emptyParentScopes;\n this.fontStyle = fontStyle;\n this.foreground = foreground;\n this.background = background;\n }\n clone() {\n return new _ThemeTrieElementRule(this.scopeDepth, this.parentScopes, this.fontStyle, this.foreground, this.background);\n }\n static cloneArr(arr) {\n let r = [];\n for (let i = 0, len = arr.length; i < len; i++) {\n r[i] = arr[i].clone();\n }\n return r;\n }\n acceptOverwrite(scopeDepth, fontStyle, foreground, background) {\n if (this.scopeDepth > scopeDepth) {\n console.log(\"how did this happen?\");\n } else {\n this.scopeDepth = scopeDepth;\n }\n if (fontStyle !== -1 /* NotSet */) {\n this.fontStyle = fontStyle;\n }\n if (foreground !== 0) {\n this.foreground = foreground;\n }\n if (background !== 0) {\n this.background = background;\n }\n }\n};\nvar ThemeTrieElement = class _ThemeTrieElement {\n constructor(_mainRule, rulesWithParentScopes = [], _children = {}) {\n this._mainRule = _mainRule;\n this._children = _children;\n this._rulesWithParentScopes = rulesWithParentScopes;\n }\n _rulesWithParentScopes;\n static _cmpBySpecificity(a, b) {\n if (a.scopeDepth !== b.scopeDepth) {\n return b.scopeDepth - a.scopeDepth;\n }\n let aParentIndex = 0;\n let bParentIndex = 0;\n while (true) {\n if (a.parentScopes[aParentIndex] === \">\") {\n aParentIndex++;\n }\n if (b.parentScopes[bParentIndex] === \">\") {\n bParentIndex++;\n }\n if (aParentIndex >= a.parentScopes.length || bParentIndex >= b.parentScopes.length) {\n break;\n }\n const parentScopeLengthDiff = b.parentScopes[bParentIndex].length - a.parentScopes[aParentIndex].length;\n if (parentScopeLengthDiff !== 0) {\n return parentScopeLengthDiff;\n }\n aParentIndex++;\n bParentIndex++;\n }\n return b.parentScopes.length - a.parentScopes.length;\n }\n match(scope) {\n if (scope !== \"\") {\n let dotIndex = scope.indexOf(\".\");\n let head;\n let tail;\n if (dotIndex === -1) {\n head = scope;\n tail = \"\";\n } else {\n head = scope.substring(0, dotIndex);\n tail = scope.substring(dotIndex + 1);\n }\n if (this._children.hasOwnProperty(head)) {\n return this._children[head].match(tail);\n }\n }\n const rules = this._rulesWithParentScopes.concat(this._mainRule);\n rules.sort(_ThemeTrieElement._cmpBySpecificity);\n return rules;\n }\n insert(scopeDepth, scope, parentScopes, fontStyle, foreground, background) {\n if (scope === \"\") {\n this._doInsertHere(scopeDepth, parentScopes, fontStyle, foreground, background);\n return;\n }\n let dotIndex = scope.indexOf(\".\");\n let head;\n let tail;\n if (dotIndex === -1) {\n head = scope;\n tail = \"\";\n } else {\n head = scope.substring(0, dotIndex);\n tail = scope.substring(dotIndex + 1);\n }\n let child;\n if (this._children.hasOwnProperty(head)) {\n child = this._children[head];\n } else {\n child = new _ThemeTrieElement(this._mainRule.clone(), ThemeTrieElementRule.cloneArr(this._rulesWithParentScopes));\n this._children[head] = child;\n }\n child.insert(scopeDepth + 1, tail, parentScopes, fontStyle, foreground, background);\n }\n _doInsertHere(scopeDepth, parentScopes, fontStyle, foreground, background) {\n if (parentScopes === null) {\n this._mainRule.acceptOverwrite(scopeDepth, fontStyle, foreground, background);\n return;\n }\n for (let i = 0, len = this._rulesWithParentScopes.length; i < len; i++) {\n let rule = this._rulesWithParentScopes[i];\n if (strArrCmp(rule.parentScopes, parentScopes) === 0) {\n rule.acceptOverwrite(scopeDepth, fontStyle, foreground, background);\n return;\n }\n }\n if (fontStyle === -1 /* NotSet */) {\n fontStyle = this._mainRule.fontStyle;\n }\n if (foreground === 0) {\n foreground = this._mainRule.foreground;\n }\n if (background === 0) {\n background = this._mainRule.background;\n }\n this._rulesWithParentScopes.push(new ThemeTrieElementRule(scopeDepth, parentScopes, fontStyle, foreground, background));\n }\n};\n\n// src/encodedTokenAttributes.ts\nvar EncodedTokenMetadata = class _EncodedTokenMetadata {\n static toBinaryStr(encodedTokenAttributes) {\n return encodedTokenAttributes.toString(2).padStart(32, \"0\");\n }\n static print(encodedTokenAttributes) {\n const languageId = _EncodedTokenMetadata.getLanguageId(encodedTokenAttributes);\n const tokenType = _EncodedTokenMetadata.getTokenType(encodedTokenAttributes);\n const fontStyle = _EncodedTokenMetadata.getFontStyle(encodedTokenAttributes);\n const foreground = _EncodedTokenMetadata.getForeground(encodedTokenAttributes);\n const background = _EncodedTokenMetadata.getBackground(encodedTokenAttributes);\n console.log({\n languageId,\n tokenType,\n fontStyle,\n foreground,\n background\n });\n }\n static getLanguageId(encodedTokenAttributes) {\n return (encodedTokenAttributes & 255 /* LANGUAGEID_MASK */) >>> 0 /* LANGUAGEID_OFFSET */;\n }\n static getTokenType(encodedTokenAttributes) {\n return (encodedTokenAttributes & 768 /* TOKEN_TYPE_MASK */) >>> 8 /* TOKEN_TYPE_OFFSET */;\n }\n static containsBalancedBrackets(encodedTokenAttributes) {\n return (encodedTokenAttributes & 1024 /* BALANCED_BRACKETS_MASK */) !== 0;\n }\n static getFontStyle(encodedTokenAttributes) {\n return (encodedTokenAttributes & 30720 /* FONT_STYLE_MASK */) >>> 11 /* FONT_STYLE_OFFSET */;\n }\n static getForeground(encodedTokenAttributes) {\n return (encodedTokenAttributes & 16744448 /* FOREGROUND_MASK */) >>> 15 /* FOREGROUND_OFFSET */;\n }\n static getBackground(encodedTokenAttributes) {\n return (encodedTokenAttributes & 4278190080 /* BACKGROUND_MASK */) >>> 24 /* BACKGROUND_OFFSET */;\n }\n /**\n * Updates the fields in `metadata`.\n * A value of `0`, `NotSet` or `null` indicates that the corresponding field should be left as is.\n */\n static set(encodedTokenAttributes, languageId, tokenType, containsBalancedBrackets, fontStyle, foreground, background) {\n let _languageId = _EncodedTokenMetadata.getLanguageId(encodedTokenAttributes);\n let _tokenType = _EncodedTokenMetadata.getTokenType(encodedTokenAttributes);\n let _containsBalancedBracketsBit = _EncodedTokenMetadata.containsBalancedBrackets(encodedTokenAttributes) ? 1 : 0;\n let _fontStyle = _EncodedTokenMetadata.getFontStyle(encodedTokenAttributes);\n let _foreground = _EncodedTokenMetadata.getForeground(encodedTokenAttributes);\n let _background = _EncodedTokenMetadata.getBackground(encodedTokenAttributes);\n if (languageId !== 0) {\n _languageId = languageId;\n }\n if (tokenType !== 8 /* NotSet */) {\n _tokenType = fromOptionalTokenType(tokenType);\n }\n if (containsBalancedBrackets !== null) {\n _containsBalancedBracketsBit = containsBalancedBrackets ? 1 : 0;\n }\n if (fontStyle !== -1 /* NotSet */) {\n _fontStyle = fontStyle;\n }\n if (foreground !== 0) {\n _foreground = foreground;\n }\n if (background !== 0) {\n _background = background;\n }\n return (_languageId << 0 /* LANGUAGEID_OFFSET */ | _tokenType << 8 /* TOKEN_TYPE_OFFSET */ | _containsBalancedBracketsBit << 10 /* BALANCED_BRACKETS_OFFSET */ | _fontStyle << 11 /* FONT_STYLE_OFFSET */ | _foreground << 15 /* FOREGROUND_OFFSET */ | _background << 24 /* BACKGROUND_OFFSET */) >>> 0;\n }\n};\nfunction toOptionalTokenType(standardType) {\n return standardType;\n}\nfunction fromOptionalTokenType(standardType) {\n return standardType;\n}\n\n// src/matcher.ts\nfunction createMatchers(selector, matchesName) {\n const results = [];\n const tokenizer = newTokenizer(selector);\n let token = tokenizer.next();\n while (token !== null) {\n let priority = 0;\n if (token.length === 2 && token.charAt(1) === \":\") {\n switch (token.charAt(0)) {\n case \"R\":\n priority = 1;\n break;\n case \"L\":\n priority = -1;\n break;\n default:\n console.log(`Unknown priority ${token} in scope selector`);\n }\n token = tokenizer.next();\n }\n let matcher = parseConjunction();\n results.push({ matcher, priority });\n if (token !== \",\") {\n break;\n }\n token = tokenizer.next();\n }\n return results;\n function parseOperand() {\n if (token === \"-\") {\n token = tokenizer.next();\n const expressionToNegate = parseOperand();\n return (matcherInput) => !!expressionToNegate && !expressionToNegate(matcherInput);\n }\n if (token === \"(\") {\n token = tokenizer.next();\n const expressionInParents = parseInnerExpression();\n if (token === \")\") {\n token = tokenizer.next();\n }\n return expressionInParents;\n }\n if (isIdentifier(token)) {\n const identifiers = [];\n do {\n identifiers.push(token);\n token = tokenizer.next();\n } while (isIdentifier(token));\n return (matcherInput) => matchesName(identifiers, matcherInput);\n }\n return null;\n }\n function parseConjunction() {\n const matchers = [];\n let matcher = parseOperand();\n while (matcher) {\n matchers.push(matcher);\n matcher = parseOperand();\n }\n return (matcherInput) => matchers.every((matcher2) => matcher2(matcherInput));\n }\n function parseInnerExpression() {\n const matchers = [];\n let matcher = parseConjunction();\n while (matcher) {\n matchers.push(matcher);\n if (token === \"|\" || token === \",\") {\n do {\n token = tokenizer.next();\n } while (token === \"|\" || token === \",\");\n } else {\n break;\n }\n matcher = parseConjunction();\n }\n return (matcherInput) => matchers.some((matcher2) => matcher2(matcherInput));\n }\n}\nfunction isIdentifier(token) {\n return !!token && !!token.match(/[\\w\\.:]+/);\n}\nfunction newTokenizer(input) {\n let regex = /([LR]:|[\\w\\.:][\\w\\.:\\-]*|[\\,\\|\\-\\(\\)])/g;\n let match = regex.exec(input);\n return {\n next: () => {\n if (!match) {\n return null;\n }\n const res = match[0];\n match = regex.exec(input);\n return res;\n }\n };\n}\n\n// src/onigLib.ts\nvar FindOption = /* @__PURE__ */ ((FindOption2) => {\n FindOption2[FindOption2[\"None\"] = 0] = \"None\";\n FindOption2[FindOption2[\"NotBeginString\"] = 1] = \"NotBeginString\";\n FindOption2[FindOption2[\"NotEndString\"] = 2] = \"NotEndString\";\n FindOption2[FindOption2[\"NotBeginPosition\"] = 4] = \"NotBeginPosition\";\n FindOption2[FindOption2[\"DebugCall\"] = 8] = \"DebugCall\";\n return FindOption2;\n})(FindOption || {});\nfunction disposeOnigString(str) {\n if (typeof str.dispose === \"function\") {\n str.dispose();\n }\n}\n\n// src/grammar/grammarDependencies.ts\nvar TopLevelRuleReference = class {\n constructor(scopeName) {\n this.scopeName = scopeName;\n }\n toKey() {\n return this.scopeName;\n }\n};\nvar TopLevelRepositoryRuleReference = class {\n constructor(scopeName, ruleName) {\n this.scopeName = scopeName;\n this.ruleName = ruleName;\n }\n toKey() {\n return `${this.scopeName}#${this.ruleName}`;\n }\n};\nvar ExternalReferenceCollector = class {\n _references = [];\n _seenReferenceKeys = /* @__PURE__ */ new Set();\n get references() {\n return this._references;\n }\n visitedRule = /* @__PURE__ */ new Set();\n add(reference) {\n const key = reference.toKey();\n if (this._seenReferenceKeys.has(key)) {\n return;\n }\n this._seenReferenceKeys.add(key);\n this._references.push(reference);\n }\n};\nvar ScopeDependencyProcessor = class {\n constructor(repo, initialScopeName) {\n this.repo = repo;\n this.initialScopeName = initialScopeName;\n this.seenFullScopeRequests.add(this.initialScopeName);\n this.Q = [new TopLevelRuleReference(this.initialScopeName)];\n }\n seenFullScopeRequests = /* @__PURE__ */ new Set();\n seenPartialScopeRequests = /* @__PURE__ */ new Set();\n Q;\n processQueue() {\n const q = this.Q;\n this.Q = [];\n const deps = new ExternalReferenceCollector();\n for (const dep of q) {\n collectReferencesOfReference(dep, this.initialScopeName, this.repo, deps);\n }\n for (const dep of deps.references) {\n if (dep instanceof TopLevelRuleReference) {\n if (this.seenFullScopeRequests.has(dep.scopeName)) {\n continue;\n }\n this.seenFullScopeRequests.add(dep.scopeName);\n this.Q.push(dep);\n } else {\n if (this.seenFullScopeRequests.has(dep.scopeName)) {\n continue;\n }\n if (this.seenPartialScopeRequests.has(dep.toKey())) {\n continue;\n }\n this.seenPartialScopeRequests.add(dep.toKey());\n this.Q.push(dep);\n }\n }\n }\n};\nfunction collectReferencesOfReference(reference, baseGrammarScopeName, repo, result) {\n const selfGrammar = repo.lookup(reference.scopeName);\n if (!selfGrammar) {\n if (reference.scopeName === baseGrammarScopeName) {\n throw new Error(`No grammar provided for <${baseGrammarScopeName}>`);\n }\n return;\n }\n const baseGrammar = repo.lookup(baseGrammarScopeName);\n if (reference instanceof TopLevelRuleReference) {\n collectExternalReferencesInTopLevelRule({ baseGrammar, selfGrammar }, result);\n } else {\n collectExternalReferencesInTopLevelRepositoryRule(\n reference.ruleName,\n { baseGrammar, selfGrammar, repository: selfGrammar.repository },\n result\n );\n }\n const injections = repo.injections(reference.scopeName);\n if (injections) {\n for (const injection of injections) {\n result.add(new TopLevelRuleReference(injection));\n }\n }\n}\nfunction collectExternalReferencesInTopLevelRepositoryRule(ruleName, context, result) {\n if (context.repository && context.repository[ruleName]) {\n const rule = context.repository[ruleName];\n collectExternalReferencesInRules([rule], context, result);\n }\n}\nfunction collectExternalReferencesInTopLevelRule(context, result) {\n if (context.selfGrammar.patterns && Array.isArray(context.selfGrammar.patterns)) {\n collectExternalReferencesInRules(\n context.selfGrammar.patterns,\n { ...context, repository: context.selfGrammar.repository },\n result\n );\n }\n if (context.selfGrammar.injections) {\n collectExternalReferencesInRules(\n Object.values(context.selfGrammar.injections),\n { ...context, repository: context.selfGrammar.repository },\n result\n );\n }\n}\nfunction collectExternalReferencesInRules(rules, context, result) {\n for (const rule of rules) {\n if (result.visitedRule.has(rule)) {\n continue;\n }\n result.visitedRule.add(rule);\n const patternRepository = rule.repository ? mergeObjects({}, context.repository, rule.repository) : context.repository;\n if (Array.isArray(rule.patterns)) {\n collectExternalReferencesInRules(rule.patterns, { ...context, repository: patternRepository }, result);\n }\n const include = rule.include;\n if (!include) {\n continue;\n }\n const reference = parseInclude(include);\n switch (reference.kind) {\n case 0 /* Base */:\n collectExternalReferencesInTopLevelRule({ ...context, selfGrammar: context.baseGrammar }, result);\n break;\n case 1 /* Self */:\n collectExternalReferencesInTopLevelRule(context, result);\n break;\n case 2 /* RelativeReference */:\n collectExternalReferencesInTopLevelRepositoryRule(reference.ruleName, { ...context, repository: patternRepository }, result);\n break;\n case 3 /* TopLevelReference */:\n case 4 /* TopLevelRepositoryReference */:\n const selfGrammar = reference.scopeName === context.selfGrammar.scopeName ? context.selfGrammar : reference.scopeName === context.baseGrammar.scopeName ? context.baseGrammar : void 0;\n if (selfGrammar) {\n const newContext = { baseGrammar: context.baseGrammar, selfGrammar, repository: patternRepository };\n if (reference.kind === 4 /* TopLevelRepositoryReference */) {\n collectExternalReferencesInTopLevelRepositoryRule(reference.ruleName, newContext, result);\n } else {\n collectExternalReferencesInTopLevelRule(newContext, result);\n }\n } else {\n if (reference.kind === 4 /* TopLevelRepositoryReference */) {\n result.add(new TopLevelRepositoryRuleReference(reference.scopeName, reference.ruleName));\n } else {\n result.add(new TopLevelRuleReference(reference.scopeName));\n }\n }\n break;\n }\n }\n}\nvar BaseReference = class {\n kind = 0 /* Base */;\n};\nvar SelfReference = class {\n kind = 1 /* Self */;\n};\nvar RelativeReference = class {\n constructor(ruleName) {\n this.ruleName = ruleName;\n }\n kind = 2 /* RelativeReference */;\n};\nvar TopLevelReference = class {\n constructor(scopeName) {\n this.scopeName = scopeName;\n }\n kind = 3 /* TopLevelReference */;\n};\nvar TopLevelRepositoryReference = class {\n constructor(scopeName, ruleName) {\n this.scopeName = scopeName;\n this.ruleName = ruleName;\n }\n kind = 4 /* TopLevelRepositoryReference */;\n};\nfunction parseInclude(include) {\n if (include === \"$base\") {\n return new BaseReference();\n } else if (include === \"$self\") {\n return new SelfReference();\n }\n const indexOfSharp = include.indexOf(\"#\");\n if (indexOfSharp === -1) {\n return new TopLevelReference(include);\n } else if (indexOfSharp === 0) {\n return new RelativeReference(include.substring(1));\n } else {\n const scopeName = include.substring(0, indexOfSharp);\n const ruleName = include.substring(indexOfSharp + 1);\n return new TopLevelRepositoryReference(scopeName, ruleName);\n }\n}\n\n// src/rule.ts\nvar HAS_BACK_REFERENCES = /\\\\(\\d+)/;\nvar BACK_REFERENCING_END = /\\\\(\\d+)/g;\nvar ruleIdSymbol = Symbol(\"RuleId\");\nvar endRuleId = -1;\nvar whileRuleId = -2;\nfunction ruleIdFromNumber(id) {\n return id;\n}\nfunction ruleIdToNumber(id) {\n return id;\n}\nvar Rule = class {\n $location;\n id;\n _nameIsCapturing;\n _name;\n _contentNameIsCapturing;\n _contentName;\n constructor($location, id, name, contentName) {\n this.$location = $location;\n this.id = id;\n this._name = name || null;\n this._nameIsCapturing = RegexSource.hasCaptures(this._name);\n this._contentName = contentName || null;\n this._contentNameIsCapturing = RegexSource.hasCaptures(this._contentName);\n }\n get debugName() {\n const location = this.$location ? `${basename(this.$location.filename)}:${this.$location.line}` : \"unknown\";\n return `${this.constructor.name}#${this.id} @ ${location}`;\n }\n getName(lineText, captureIndices) {\n if (!this._nameIsCapturing || this._name === null || lineText === null || captureIndices === null) {\n return this._name;\n }\n return RegexSource.replaceCaptures(this._name, lineText, captureIndices);\n }\n getContentName(lineText, captureIndices) {\n if (!this._contentNameIsCapturing || this._contentName === null) {\n return this._contentName;\n }\n return RegexSource.replaceCaptures(this._contentName, lineText, captureIndices);\n }\n};\nvar CaptureRule = class extends Rule {\n retokenizeCapturedWithRuleId;\n constructor($location, id, name, contentName, retokenizeCapturedWithRuleId) {\n super($location, id, name, contentName);\n this.retokenizeCapturedWithRuleId = retokenizeCapturedWithRuleId;\n }\n dispose() {\n }\n collectPatterns(grammar, out) {\n throw new Error(\"Not supported!\");\n }\n compile(grammar, endRegexSource) {\n throw new Error(\"Not supported!\");\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n throw new Error(\"Not supported!\");\n }\n};\nvar MatchRule = class extends Rule {\n _match;\n captures;\n _cachedCompiledPatterns;\n constructor($location, id, name, match, captures) {\n super($location, id, name, null);\n this._match = new RegExpSource(match, this.id);\n this.captures = captures;\n this._cachedCompiledPatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n }\n get debugMatchRegExp() {\n return `${this._match.source}`;\n }\n collectPatterns(grammar, out) {\n out.push(this._match);\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n this.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n return this._cachedCompiledPatterns;\n }\n};\nvar IncludeOnlyRule = class extends Rule {\n hasMissingPatterns;\n patterns;\n _cachedCompiledPatterns;\n constructor($location, id, name, contentName, patterns) {\n super($location, id, name, contentName);\n this.patterns = patterns.patterns;\n this.hasMissingPatterns = patterns.hasMissingPatterns;\n this._cachedCompiledPatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n }\n collectPatterns(grammar, out) {\n for (const pattern of this.patterns) {\n const rule = grammar.getRule(pattern);\n rule.collectPatterns(grammar, out);\n }\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n this.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n return this._cachedCompiledPatterns;\n }\n};\nvar BeginEndRule = class extends Rule {\n _begin;\n beginCaptures;\n _end;\n endHasBackReferences;\n endCaptures;\n applyEndPatternLast;\n hasMissingPatterns;\n patterns;\n _cachedCompiledPatterns;\n constructor($location, id, name, contentName, begin, beginCaptures, end, endCaptures, applyEndPatternLast, patterns) {\n super($location, id, name, contentName);\n this._begin = new RegExpSource(begin, this.id);\n this.beginCaptures = beginCaptures;\n this._end = new RegExpSource(end ? end : \"\\uFFFF\", -1);\n this.endHasBackReferences = this._end.hasBackReferences;\n this.endCaptures = endCaptures;\n this.applyEndPatternLast = applyEndPatternLast || false;\n this.patterns = patterns.patterns;\n this.hasMissingPatterns = patterns.hasMissingPatterns;\n this._cachedCompiledPatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n }\n get debugBeginRegExp() {\n return `${this._begin.source}`;\n }\n get debugEndRegExp() {\n return `${this._end.source}`;\n }\n getEndWithResolvedBackReferences(lineText, captureIndices) {\n return this._end.resolveBackReferences(lineText, captureIndices);\n }\n collectPatterns(grammar, out) {\n out.push(this._begin);\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar, endRegexSource).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar, endRegexSource).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar, endRegexSource) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n for (const pattern of this.patterns) {\n const rule = grammar.getRule(pattern);\n rule.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n if (this.applyEndPatternLast) {\n this._cachedCompiledPatterns.push(this._end.hasBackReferences ? this._end.clone() : this._end);\n } else {\n this._cachedCompiledPatterns.unshift(this._end.hasBackReferences ? this._end.clone() : this._end);\n }\n }\n if (this._end.hasBackReferences) {\n if (this.applyEndPatternLast) {\n this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length() - 1, endRegexSource);\n } else {\n this._cachedCompiledPatterns.setSource(0, endRegexSource);\n }\n }\n return this._cachedCompiledPatterns;\n }\n};\nvar BeginWhileRule = class extends Rule {\n _begin;\n beginCaptures;\n whileCaptures;\n _while;\n whileHasBackReferences;\n hasMissingPatterns;\n patterns;\n _cachedCompiledPatterns;\n _cachedCompiledWhilePatterns;\n constructor($location, id, name, contentName, begin, beginCaptures, _while, whileCaptures, patterns) {\n super($location, id, name, contentName);\n this._begin = new RegExpSource(begin, this.id);\n this.beginCaptures = beginCaptures;\n this.whileCaptures = whileCaptures;\n this._while = new RegExpSource(_while, whileRuleId);\n this.whileHasBackReferences = this._while.hasBackReferences;\n this.patterns = patterns.patterns;\n this.hasMissingPatterns = patterns.hasMissingPatterns;\n this._cachedCompiledPatterns = null;\n this._cachedCompiledWhilePatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n if (this._cachedCompiledWhilePatterns) {\n this._cachedCompiledWhilePatterns.dispose();\n this._cachedCompiledWhilePatterns = null;\n }\n }\n get debugBeginRegExp() {\n return `${this._begin.source}`;\n }\n get debugWhileRegExp() {\n return `${this._while.source}`;\n }\n getWhileWithResolvedBackReferences(lineText, captureIndices) {\n return this._while.resolveBackReferences(lineText, captureIndices);\n }\n collectPatterns(grammar, out) {\n out.push(this._begin);\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n for (const pattern of this.patterns) {\n const rule = grammar.getRule(pattern);\n rule.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n }\n return this._cachedCompiledPatterns;\n }\n compileWhile(grammar, endRegexSource) {\n return this._getCachedCompiledWhilePatterns(grammar, endRegexSource).compile(grammar);\n }\n compileWhileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledWhilePatterns(grammar, endRegexSource).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledWhilePatterns(grammar, endRegexSource) {\n if (!this._cachedCompiledWhilePatterns) {\n this._cachedCompiledWhilePatterns = new RegExpSourceList();\n this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences ? this._while.clone() : this._while);\n }\n if (this._while.hasBackReferences) {\n this._cachedCompiledWhilePatterns.setSource(0, endRegexSource ? endRegexSource : \"\\uFFFF\");\n }\n return this._cachedCompiledWhilePatterns;\n }\n};\nvar RuleFactory = class _RuleFactory {\n static createCaptureRule(helper, $location, name, contentName, retokenizeCapturedWithRuleId) {\n return helper.registerRule((id) => {\n return new CaptureRule($location, id, name, contentName, retokenizeCapturedWithRuleId);\n });\n }\n static getCompiledRuleId(desc, helper, repository) {\n if (!desc.id) {\n helper.registerRule((id) => {\n desc.id = id;\n if (desc.match) {\n return new MatchRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.match,\n _RuleFactory._compileCaptures(desc.captures, helper, repository)\n );\n }\n if (typeof desc.begin === \"undefined\") {\n if (desc.repository) {\n repository = mergeObjects({}, repository, desc.repository);\n }\n let patterns = desc.patterns;\n if (typeof patterns === \"undefined\" && desc.include) {\n patterns = [{ include: desc.include }];\n }\n return new IncludeOnlyRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.contentName,\n _RuleFactory._compilePatterns(patterns, helper, repository)\n );\n }\n if (desc.while) {\n return new BeginWhileRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.contentName,\n desc.begin,\n _RuleFactory._compileCaptures(desc.beginCaptures || desc.captures, helper, repository),\n desc.while,\n _RuleFactory._compileCaptures(desc.whileCaptures || desc.captures, helper, repository),\n _RuleFactory._compilePatterns(desc.patterns, helper, repository)\n );\n }\n return new BeginEndRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.contentName,\n desc.begin,\n _RuleFactory._compileCaptures(desc.beginCaptures || desc.captures, helper, repository),\n desc.end,\n _RuleFactory._compileCaptures(desc.endCaptures || desc.captures, helper, repository),\n desc.applyEndPatternLast,\n _RuleFactory._compilePatterns(desc.patterns, helper, repository)\n );\n });\n }\n return desc.id;\n }\n static _compileCaptures(captures, helper, repository) {\n let r = [];\n if (captures) {\n let maximumCaptureId = 0;\n for (const captureId in captures) {\n if (captureId === \"$vscodeTextmateLocation\") {\n continue;\n }\n const numericCaptureId = parseInt(captureId, 10);\n if (numericCaptureId > maximumCaptureId) {\n maximumCaptureId = numericCaptureId;\n }\n }\n for (let i = 0; i <= maximumCaptureId; i++) {\n r[i] = null;\n }\n for (const captureId in captures) {\n if (captureId === \"$vscodeTextmateLocation\") {\n continue;\n }\n const numericCaptureId = parseInt(captureId, 10);\n let retokenizeCapturedWithRuleId = 0;\n if (captures[captureId].patterns) {\n retokenizeCapturedWithRuleId = _RuleFactory.getCompiledRuleId(captures[captureId], helper, repository);\n }\n r[numericCaptureId] = _RuleFactory.createCaptureRule(helper, captures[captureId].$vscodeTextmateLocation, captures[captureId].name, captures[captureId].contentName, retokenizeCapturedWithRuleId);\n }\n }\n return r;\n }\n static _compilePatterns(patterns, helper, repository) {\n let r = [];\n if (patterns) {\n for (let i = 0, len = patterns.length; i < len; i++) {\n const pattern = patterns[i];\n let ruleId = -1;\n if (pattern.include) {\n const reference = parseInclude(pattern.include);\n switch (reference.kind) {\n case 0 /* Base */:\n case 1 /* Self */:\n ruleId = _RuleFactory.getCompiledRuleId(repository[pattern.include], helper, repository);\n break;\n case 2 /* RelativeReference */:\n let localIncludedRule = repository[reference.ruleName];\n if (localIncludedRule) {\n ruleId = _RuleFactory.getCompiledRuleId(localIncludedRule, helper, repository);\n } else {\n }\n break;\n case 3 /* TopLevelReference */:\n case 4 /* TopLevelRepositoryReference */:\n const externalGrammarName = reference.scopeName;\n const externalGrammarInclude = reference.kind === 4 /* TopLevelRepositoryReference */ ? reference.ruleName : null;\n const externalGrammar = helper.getExternalGrammar(externalGrammarName, repository);\n if (externalGrammar) {\n if (externalGrammarInclude) {\n let externalIncludedRule = externalGrammar.repository[externalGrammarInclude];\n if (externalIncludedRule) {\n ruleId = _RuleFactory.getCompiledRuleId(externalIncludedRule, helper, externalGrammar.repository);\n } else {\n }\n } else {\n ruleId = _RuleFactory.getCompiledRuleId(externalGrammar.repository.$self, helper, externalGrammar.repository);\n }\n } else {\n }\n break;\n }\n } else {\n ruleId = _RuleFactory.getCompiledRuleId(pattern, helper, repository);\n }\n if (ruleId !== -1) {\n const rule = helper.getRule(ruleId);\n let skipRule = false;\n if (rule instanceof IncludeOnlyRule || rule instanceof BeginEndRule || rule instanceof BeginWhileRule) {\n if (rule.hasMissingPatterns && rule.patterns.length === 0) {\n skipRule = true;\n }\n }\n if (skipRule) {\n continue;\n }\n r.push(ruleId);\n }\n }\n }\n return {\n patterns: r,\n hasMissingPatterns: (patterns ? patterns.length : 0) !== r.length\n };\n }\n};\nvar RegExpSource = class _RegExpSource {\n source;\n ruleId;\n hasAnchor;\n hasBackReferences;\n _anchorCache;\n constructor(regExpSource, ruleId) {\n if (regExpSource && typeof regExpSource === \"string\") {\n const len = regExpSource.length;\n let lastPushedPos = 0;\n let output = [];\n let hasAnchor = false;\n for (let pos = 0; pos < len; pos++) {\n const ch = regExpSource.charAt(pos);\n if (ch === \"\\\\\") {\n if (pos + 1 < len) {\n const nextCh = regExpSource.charAt(pos + 1);\n if (nextCh === \"z\") {\n output.push(regExpSource.substring(lastPushedPos, pos));\n output.push(\"$(?!\\\\n)(?<!\\\\n)\");\n lastPushedPos = pos + 2;\n } else if (nextCh === \"A\" || nextCh === \"G\") {\n hasAnchor = true;\n }\n pos++;\n }\n }\n }\n this.hasAnchor = hasAnchor;\n if (lastPushedPos === 0) {\n this.source = regExpSource;\n } else {\n output.push(regExpSource.substring(lastPushedPos, len));\n this.source = output.join(\"\");\n }\n } else {\n this.hasAnchor = false;\n this.source = regExpSource;\n }\n if (this.hasAnchor) {\n this._anchorCache = this._buildAnchorCache();\n } else {\n this._anchorCache = null;\n }\n this.ruleId = ruleId;\n if (typeof this.source === \"string\") {\n this.hasBackReferences = HAS_BACK_REFERENCES.test(this.source);\n } else {\n this.hasBackReferences = false;\n }\n }\n clone() {\n return new _RegExpSource(this.source, this.ruleId);\n }\n setSource(newSource) {\n if (this.source === newSource) {\n return;\n }\n this.source = newSource;\n if (this.hasAnchor) {\n this._anchorCache = this._buildAnchorCache();\n }\n }\n resolveBackReferences(lineText, captureIndices) {\n if (typeof this.source !== \"string\") {\n throw new Error(\"This method should only be called if the source is a string\");\n }\n let capturedValues = captureIndices.map((capture) => {\n return lineText.substring(capture.start, capture.end);\n });\n BACK_REFERENCING_END.lastIndex = 0;\n return this.source.replace(BACK_REFERENCING_END, (match, g1) => {\n return escapeRegExpCharacters(capturedValues[parseInt(g1, 10)] || \"\");\n });\n }\n _buildAnchorCache() {\n if (typeof this.source !== \"string\") {\n throw new Error(\"This method should only be called if the source is a string\");\n }\n let A0_G0_result = [];\n let A0_G1_result = [];\n let A1_G0_result = [];\n let A1_G1_result = [];\n let pos, len, ch, nextCh;\n for (pos = 0, len = this.source.length; pos < len; pos++) {\n ch = this.source.charAt(pos);\n A0_G0_result[pos] = ch;\n A0_G1_result[pos] = ch;\n A1_G0_result[pos] = ch;\n A1_G1_result[pos] = ch;\n if (ch === \"\\\\\") {\n if (pos + 1 < len) {\n nextCh = this.source.charAt(pos + 1);\n if (nextCh === \"A\") {\n A0_G0_result[pos + 1] = \"\\uFFFF\";\n A0_G1_result[pos + 1] = \"\\uFFFF\";\n A1_G0_result[pos + 1] = \"A\";\n A1_G1_result[pos + 1] = \"A\";\n } else if (nextCh === \"G\") {\n A0_G0_result[pos + 1] = \"\\uFFFF\";\n A0_G1_result[pos + 1] = \"G\";\n A1_G0_result[pos + 1] = \"\\uFFFF\";\n A1_G1_result[pos + 1] = \"G\";\n } else {\n A0_G0_result[pos + 1] = nextCh;\n A0_G1_result[pos + 1] = nextCh;\n A1_G0_result[pos + 1] = nextCh;\n A1_G1_result[pos + 1] = nextCh;\n }\n pos++;\n }\n }\n }\n return {\n A0_G0: A0_G0_result.join(\"\"),\n A0_G1: A0_G1_result.join(\"\"),\n A1_G0: A1_G0_result.join(\"\"),\n A1_G1: A1_G1_result.join(\"\")\n };\n }\n resolveAnchors(allowA, allowG) {\n if (!this.hasAnchor || !this._anchorCache || typeof this.source !== \"string\") {\n return this.source;\n }\n if (allowA) {\n if (allowG) {\n return this._anchorCache.A1_G1;\n } else {\n return this._anchorCache.A1_G0;\n }\n } else {\n if (allowG) {\n return this._anchorCache.A0_G1;\n } else {\n return this._anchorCache.A0_G0;\n }\n }\n }\n};\nvar RegExpSourceList = class {\n _items;\n _hasAnchors;\n _cached;\n _anchorCache;\n constructor() {\n this._items = [];\n this._hasAnchors = false;\n this._cached = null;\n this._anchorCache = {\n A0_G0: null,\n A0_G1: null,\n A1_G0: null,\n A1_G1: null\n };\n }\n dispose() {\n this._disposeCaches();\n }\n _disposeCaches() {\n if (this._cached) {\n this._cached.dispose();\n this._cached = null;\n }\n if (this._anchorCache.A0_G0) {\n this._anchorCache.A0_G0.dispose();\n this._anchorCache.A0_G0 = null;\n }\n if (this._anchorCache.A0_G1) {\n this._anchorCache.A0_G1.dispose();\n this._anchorCache.A0_G1 = null;\n }\n if (this._anchorCache.A1_G0) {\n this._anchorCache.A1_G0.dispose();\n this._anchorCache.A1_G0 = null;\n }\n if (this._anchorCache.A1_G1) {\n this._anchorCache.A1_G1.dispose();\n this._anchorCache.A1_G1 = null;\n }\n }\n push(item) {\n this._items.push(item);\n this._hasAnchors = this._hasAnchors || item.hasAnchor;\n }\n unshift(item) {\n this._items.unshift(item);\n this._hasAnchors = this._hasAnchors || item.hasAnchor;\n }\n length() {\n return this._items.length;\n }\n setSource(index, newSource) {\n if (this._items[index].source !== newSource) {\n this._disposeCaches();\n this._items[index].setSource(newSource);\n }\n }\n compile(onigLib) {\n if (!this._cached) {\n let regExps = this._items.map((e) => e.source);\n this._cached = new CompiledRule(onigLib, regExps, this._items.map((e) => e.ruleId));\n }\n return this._cached;\n }\n compileAG(onigLib, allowA, allowG) {\n if (!this._hasAnchors) {\n return this.compile(onigLib);\n } else {\n if (allowA) {\n if (allowG) {\n if (!this._anchorCache.A1_G1) {\n this._anchorCache.A1_G1 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A1_G1;\n } else {\n if (!this._anchorCache.A1_G0) {\n this._anchorCache.A1_G0 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A1_G0;\n }\n } else {\n if (allowG) {\n if (!this._anchorCache.A0_G1) {\n this._anchorCache.A0_G1 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A0_G1;\n } else {\n if (!this._anchorCache.A0_G0) {\n this._anchorCache.A0_G0 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A0_G0;\n }\n }\n }\n }\n _resolveAnchors(onigLib, allowA, allowG) {\n let regExps = this._items.map((e) => e.resolveAnchors(allowA, allowG));\n return new CompiledRule(onigLib, regExps, this._items.map((e) => e.ruleId));\n }\n};\nvar CompiledRule = class {\n constructor(onigLib, regExps, rules) {\n this.regExps = regExps;\n this.rules = rules;\n this.scanner = onigLib.createOnigScanner(regExps);\n }\n scanner;\n dispose() {\n if (typeof this.scanner.dispose === \"function\") {\n this.scanner.dispose();\n }\n }\n toString() {\n const r = [];\n for (let i = 0, len = this.rules.length; i < len; i++) {\n r.push(\" - \" + this.rules[i] + \": \" + this.regExps[i]);\n }\n return r.join(\"\\n\");\n }\n findNextMatchSync(string, startPosition, options) {\n const result = this.scanner.findNextMatchSync(string, startPosition, options);\n if (!result) {\n return null;\n }\n return {\n ruleId: this.rules[result.index],\n captureIndices: result.captureIndices\n };\n }\n};\n\n// src/grammar/basicScopesAttributeProvider.ts\nvar BasicScopeAttributes = class {\n constructor(languageId, tokenType) {\n this.languageId = languageId;\n this.tokenType = tokenType;\n }\n};\nvar BasicScopeAttributesProvider = class _BasicScopeAttributesProvider {\n _defaultAttributes;\n _embeddedLanguagesMatcher;\n constructor(initialLanguageId, embeddedLanguages) {\n this._defaultAttributes = new BasicScopeAttributes(initialLanguageId, 8 /* NotSet */);\n this._embeddedLanguagesMatcher = new ScopeMatcher(Object.entries(embeddedLanguages || {}));\n }\n getDefaultAttributes() {\n return this._defaultAttributes;\n }\n getBasicScopeAttributes(scopeName) {\n if (scopeName === null) {\n return _BasicScopeAttributesProvider._NULL_SCOPE_METADATA;\n }\n return this._getBasicScopeAttributes.get(scopeName);\n }\n static _NULL_SCOPE_METADATA = new BasicScopeAttributes(0, 0);\n _getBasicScopeAttributes = new CachedFn((scopeName) => {\n const languageId = this._scopeToLanguage(scopeName);\n const standardTokenType = this._toStandardTokenType(scopeName);\n return new BasicScopeAttributes(languageId, standardTokenType);\n });\n /**\n * Given a produced TM scope, return the language that token describes or null if unknown.\n * e.g. source.html => html, source.css.embedded.html => css, punctuation.definition.tag.html => null\n */\n _scopeToLanguage(scope) {\n return this._embeddedLanguagesMatcher.match(scope) || 0;\n }\n _toStandardTokenType(scopeName) {\n const m = scopeName.match(_BasicScopeAttributesProvider.STANDARD_TOKEN_TYPE_REGEXP);\n if (!m) {\n return 8 /* NotSet */;\n }\n switch (m[1]) {\n case \"comment\":\n return 1 /* Comment */;\n case \"string\":\n return 2 /* String */;\n case \"regex\":\n return 3 /* RegEx */;\n case \"meta.embedded\":\n return 0 /* Other */;\n }\n throw new Error(\"Unexpected match for standard token type!\");\n }\n static STANDARD_TOKEN_TYPE_REGEXP = /\\b(comment|string|regex|meta\\.embedded)\\b/;\n};\nvar ScopeMatcher = class {\n values;\n scopesRegExp;\n constructor(values) {\n if (values.length === 0) {\n this.values = null;\n this.scopesRegExp = null;\n } else {\n this.values = new Map(values);\n const escapedScopes = values.map(\n ([scopeName, value]) => escapeRegExpCharacters(scopeName)\n );\n escapedScopes.sort();\n escapedScopes.reverse();\n this.scopesRegExp = new RegExp(\n `^((${escapedScopes.join(\")|(\")}))($|\\\\.)`,\n \"\"\n );\n }\n }\n match(scope) {\n if (!this.scopesRegExp) {\n return void 0;\n }\n const m = scope.match(this.scopesRegExp);\n if (!m) {\n return void 0;\n }\n return this.values.get(m[1]);\n }\n};\n\n// src/debug.ts\nvar DebugFlags = {\n InDebugMode: typeof process !== \"undefined\" && !!process.env[\"VSCODE_TEXTMATE_DEBUG\"]\n};\nvar UseOnigurumaFindOptions = false;\n\n// src/grammar/tokenizeString.ts\nvar TokenizeStringResult = class {\n constructor(stack, stoppedEarly) {\n this.stack = stack;\n this.stoppedEarly = stoppedEarly;\n }\n};\nfunction _tokenizeString(grammar, lineText, isFirstLine, linePos, stack, lineTokens, checkWhileConditions, timeLimit) {\n const lineLength = lineText.content.length;\n let STOP = false;\n let anchorPosition = -1;\n if (checkWhileConditions) {\n const whileCheckResult = _checkWhileConditions(\n grammar,\n lineText,\n isFirstLine,\n linePos,\n stack,\n lineTokens\n );\n stack = whileCheckResult.stack;\n linePos = whileCheckResult.linePos;\n isFirstLine = whileCheckResult.isFirstLine;\n anchorPosition = whileCheckResult.anchorPosition;\n }\n const startTime = Date.now();\n while (!STOP) {\n if (timeLimit !== 0) {\n const elapsedTime = Date.now() - startTime;\n if (elapsedTime > timeLimit) {\n return new TokenizeStringResult(stack, true);\n }\n }\n scanNext();\n }\n return new TokenizeStringResult(stack, false);\n function scanNext() {\n if (false) {\n console.log(\"\");\n console.log(\n `@@scanNext ${linePos}: |${lineText.content.substr(linePos).replace(/\\n$/, \"\\\\n\")}|`\n );\n }\n const r = matchRuleOrInjections(\n grammar,\n lineText,\n isFirstLine,\n linePos,\n stack,\n anchorPosition\n );\n if (!r) {\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n const captureIndices = r.captureIndices;\n const matchedRuleId = r.matchedRuleId;\n const hasAdvanced = captureIndices && captureIndices.length > 0 ? captureIndices[0].end > linePos : false;\n if (matchedRuleId === endRuleId) {\n const poppedRule = stack.getRule(grammar);\n if (false) {\n console.log(\n \" popping \" + poppedRule.debugName + \" - \" + poppedRule.debugEndRegExp\n );\n }\n lineTokens.produce(stack, captureIndices[0].start);\n stack = stack.withContentNameScopesList(stack.nameScopesList);\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n poppedRule.endCaptures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n const popped = stack;\n stack = stack.parent;\n anchorPosition = popped.getAnchorPos();\n if (!hasAdvanced && popped.getEnterPos() === linePos) {\n if (false) {\n console.error(\n \"[1] - Grammar is in an endless loop - Grammar pushed & popped a rule without advancing\"\n );\n }\n stack = popped;\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n } else {\n const _rule = grammar.getRule(matchedRuleId);\n lineTokens.produce(stack, captureIndices[0].start);\n const beforePush = stack;\n const scopeName = _rule.getName(lineText.content, captureIndices);\n const nameScopesList = stack.contentNameScopesList.pushAttributed(\n scopeName,\n grammar\n );\n stack = stack.push(\n matchedRuleId,\n linePos,\n anchorPosition,\n captureIndices[0].end === lineLength,\n null,\n nameScopesList,\n nameScopesList\n );\n if (_rule instanceof BeginEndRule) {\n const pushedRule = _rule;\n if (false) {\n console.log(\n \" pushing \" + pushedRule.debugName + \" - \" + pushedRule.debugBeginRegExp\n );\n }\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n pushedRule.beginCaptures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n anchorPosition = captureIndices[0].end;\n const contentName = pushedRule.getContentName(\n lineText.content,\n captureIndices\n );\n const contentNameScopesList = nameScopesList.pushAttributed(\n contentName,\n grammar\n );\n stack = stack.withContentNameScopesList(contentNameScopesList);\n if (pushedRule.endHasBackReferences) {\n stack = stack.withEndRule(\n pushedRule.getEndWithResolvedBackReferences(\n lineText.content,\n captureIndices\n )\n );\n }\n if (!hasAdvanced && beforePush.hasSameRuleAs(stack)) {\n if (false) {\n console.error(\n \"[2] - Grammar is in an endless loop - Grammar pushed the same rule without advancing\"\n );\n }\n stack = stack.pop();\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n } else if (_rule instanceof BeginWhileRule) {\n const pushedRule = _rule;\n if (false) {\n console.log(\" pushing \" + pushedRule.debugName);\n }\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n pushedRule.beginCaptures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n anchorPosition = captureIndices[0].end;\n const contentName = pushedRule.getContentName(\n lineText.content,\n captureIndices\n );\n const contentNameScopesList = nameScopesList.pushAttributed(\n contentName,\n grammar\n );\n stack = stack.withContentNameScopesList(contentNameScopesList);\n if (pushedRule.whileHasBackReferences) {\n stack = stack.withEndRule(\n pushedRule.getWhileWithResolvedBackReferences(\n lineText.content,\n captureIndices\n )\n );\n }\n if (!hasAdvanced && beforePush.hasSameRuleAs(stack)) {\n if (false) {\n console.error(\n \"[3] - Grammar is in an endless loop - Grammar pushed the same rule without advancing\"\n );\n }\n stack = stack.pop();\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n } else {\n const matchingRule = _rule;\n if (false) {\n console.log(\n \" matched \" + matchingRule.debugName + \" - \" + matchingRule.debugMatchRegExp\n );\n }\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n matchingRule.captures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n stack = stack.pop();\n if (!hasAdvanced) {\n if (false) {\n console.error(\n \"[4] - Grammar is in an endless loop - Grammar is not advancing, nor is it pushing/popping\"\n );\n }\n stack = stack.safePop();\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n }\n }\n if (captureIndices[0].end > linePos) {\n linePos = captureIndices[0].end;\n isFirstLine = false;\n }\n }\n}\nfunction _checkWhileConditions(grammar, lineText, isFirstLine, linePos, stack, lineTokens) {\n let anchorPosition = stack.beginRuleCapturedEOL ? 0 : -1;\n const whileRules = [];\n for (let node = stack; node; node = node.pop()) {\n const nodeRule = node.getRule(grammar);\n if (nodeRule instanceof BeginWhileRule) {\n whileRules.push({\n rule: nodeRule,\n stack: node\n });\n }\n }\n for (let whileRule = whileRules.pop(); whileRule; whileRule = whileRules.pop()) {\n const { ruleScanner, findOptions } = prepareRuleWhileSearch(whileRule.rule, grammar, whileRule.stack.endRule, isFirstLine, linePos === anchorPosition);\n const r = ruleScanner.findNextMatchSync(lineText, linePos, findOptions);\n if (false) {\n console.log(\" scanning for while rule\");\n console.log(ruleScanner.toString());\n }\n if (r) {\n const matchedRuleId = r.ruleId;\n if (matchedRuleId !== whileRuleId) {\n stack = whileRule.stack.pop();\n break;\n }\n if (r.captureIndices && r.captureIndices.length) {\n lineTokens.produce(whileRule.stack, r.captureIndices[0].start);\n handleCaptures(grammar, lineText, isFirstLine, whileRule.stack, lineTokens, whileRule.rule.whileCaptures, r.captureIndices);\n lineTokens.produce(whileRule.stack, r.captureIndices[0].end);\n anchorPosition = r.captureIndices[0].end;\n if (r.captureIndices[0].end > linePos) {\n linePos = r.captureIndices[0].end;\n isFirstLine = false;\n }\n }\n } else {\n if (false) {\n console.log(\" popping \" + whileRule.rule.debugName + \" - \" + whileRule.rule.debugWhileRegExp);\n }\n stack = whileRule.stack.pop();\n break;\n }\n }\n return { stack, linePos, anchorPosition, isFirstLine };\n}\nfunction matchRuleOrInjections(grammar, lineText, isFirstLine, linePos, stack, anchorPosition) {\n const matchResult = matchRule(grammar, lineText, isFirstLine, linePos, stack, anchorPosition);\n const injections = grammar.getInjections();\n if (injections.length === 0) {\n return matchResult;\n }\n const injectionResult = matchInjections(injections, grammar, lineText, isFirstLine, linePos, stack, anchorPosition);\n if (!injectionResult) {\n return matchResult;\n }\n if (!matchResult) {\n return injectionResult;\n }\n const matchResultScore = matchResult.captureIndices[0].start;\n const injectionResultScore = injectionResult.captureIndices[0].start;\n if (injectionResultScore < matchResultScore || injectionResult.priorityMatch && injectionResultScore === matchResultScore) {\n return injectionResult;\n }\n return matchResult;\n}\nfunction matchRule(grammar, lineText, isFirstLine, linePos, stack, anchorPosition) {\n const rule = stack.getRule(grammar);\n const { ruleScanner, findOptions } = prepareRuleSearch(rule, grammar, stack.endRule, isFirstLine, linePos === anchorPosition);\n const r = ruleScanner.findNextMatchSync(lineText, linePos, findOptions);\n if (r) {\n return {\n captureIndices: r.captureIndices,\n matchedRuleId: r.ruleId\n };\n }\n return null;\n}\nfunction matchInjections(injections, grammar, lineText, isFirstLine, linePos, stack, anchorPosition) {\n let bestMatchRating = Number.MAX_VALUE;\n let bestMatchCaptureIndices = null;\n let bestMatchRuleId;\n let bestMatchResultPriority = 0;\n const scopes = stack.contentNameScopesList.getScopeNames();\n for (let i = 0, len = injections.length; i < len; i++) {\n const injection = injections[i];\n if (!injection.matcher(scopes)) {\n continue;\n }\n const rule = grammar.getRule(injection.ruleId);\n const { ruleScanner, findOptions } = prepareRuleSearch(rule, grammar, null, isFirstLine, linePos === anchorPosition);\n const matchResult = ruleScanner.findNextMatchSync(lineText, linePos, findOptions);\n if (!matchResult) {\n continue;\n }\n if (false) {\n console.log(` matched injection: ${injection.debugSelector}`);\n console.log(ruleScanner.toString());\n }\n const matchRating = matchResult.captureIndices[0].start;\n if (matchRating >= bestMatchRating) {\n continue;\n }\n bestMatchRating = matchRating;\n bestMatchCaptureIndices = matchResult.captureIndices;\n bestMatchRuleId = matchResult.ruleId;\n bestMatchResultPriority = injection.priority;\n if (bestMatchRating === linePos) {\n break;\n }\n }\n if (bestMatchCaptureIndices) {\n return {\n priorityMatch: bestMatchResultPriority === -1,\n captureIndices: bestMatchCaptureIndices,\n matchedRuleId: bestMatchRuleId\n };\n }\n return null;\n}\nfunction prepareRuleSearch(rule, grammar, endRegexSource, allowA, allowG) {\n if (UseOnigurumaFindOptions) {\n const ruleScanner2 = rule.compile(grammar, endRegexSource);\n const findOptions = getFindOptions(allowA, allowG);\n return { ruleScanner: ruleScanner2, findOptions };\n }\n const ruleScanner = rule.compileAG(grammar, endRegexSource, allowA, allowG);\n return { ruleScanner, findOptions: 0 /* None */ };\n}\nfunction prepareRuleWhileSearch(rule, grammar, endRegexSource, allowA, allowG) {\n if (UseOnigurumaFindOptions) {\n const ruleScanner2 = rule.compileWhile(grammar, endRegexSource);\n const findOptions = getFindOptions(allowA, allowG);\n return { ruleScanner: ruleScanner2, findOptions };\n }\n const ruleScanner = rule.compileWhileAG(grammar, endRegexSource, allowA, allowG);\n return { ruleScanner, findOptions: 0 /* None */ };\n}\nfunction getFindOptions(allowA, allowG) {\n let options = 0 /* None */;\n if (!allowA) {\n options |= 1 /* NotBeginString */;\n }\n if (!allowG) {\n options |= 4 /* NotBeginPosition */;\n }\n return options;\n}\nfunction handleCaptures(grammar, lineText, isFirstLine, stack, lineTokens, captures, captureIndices) {\n if (captures.length === 0) {\n return;\n }\n const lineTextContent = lineText.content;\n const len = Math.min(captures.length, captureIndices.length);\n const localStack = [];\n const maxEnd = captureIndices[0].end;\n for (let i = 0; i < len; i++) {\n const captureRule = captures[i];\n if (captureRule === null) {\n continue;\n }\n const captureIndex = captureIndices[i];\n if (captureIndex.length === 0) {\n continue;\n }\n if (captureIndex.start > maxEnd) {\n break;\n }\n while (localStack.length > 0 && localStack[localStack.length - 1].endPos <= captureIndex.start) {\n lineTokens.produceFromScopes(localStack[localStack.length - 1].scopes, localStack[localStack.length - 1].endPos);\n localStack.pop();\n }\n if (localStack.length > 0) {\n lineTokens.produceFromScopes(localStack[localStack.length - 1].scopes, captureIndex.start);\n } else {\n lineTokens.produce(stack, captureIndex.start);\n }\n if (captureRule.retokenizeCapturedWithRuleId) {\n const scopeName = captureRule.getName(lineTextContent, captureIndices);\n const nameScopesList = stack.contentNameScopesList.pushAttributed(scopeName, grammar);\n const contentName = captureRule.getContentName(lineTextContent, captureIndices);\n const contentNameScopesList = nameScopesList.pushAttributed(contentName, grammar);\n const stackClone = stack.push(captureRule.retokenizeCapturedWithRuleId, captureIndex.start, -1, false, null, nameScopesList, contentNameScopesList);\n const onigSubStr = grammar.createOnigString(lineTextContent.substring(0, captureIndex.end));\n _tokenizeString(\n grammar,\n onigSubStr,\n isFirstLine && captureIndex.start === 0,\n captureIndex.start,\n stackClone,\n lineTokens,\n false,\n /* no time limit */\n 0\n );\n disposeOnigString(onigSubStr);\n continue;\n }\n const captureRuleScopeName = captureRule.getName(lineTextContent, captureIndices);\n if (captureRuleScopeName !== null) {\n const base = localStack.length > 0 ? localStack[localStack.length - 1].scopes : stack.contentNameScopesList;\n const captureRuleScopesList = base.pushAttributed(captureRuleScopeName, grammar);\n localStack.push(new LocalStackElement(captureRuleScopesList, captureIndex.end));\n }\n }\n while (localStack.length > 0) {\n lineTokens.produceFromScopes(localStack[localStack.length - 1].scopes, localStack[localStack.length - 1].endPos);\n localStack.pop();\n }\n}\nvar LocalStackElement = class {\n scopes;\n endPos;\n constructor(scopes, endPos) {\n this.scopes = scopes;\n this.endPos = endPos;\n }\n};\n\n// src/grammar/grammar.ts\nfunction createGrammar(scopeName, grammar, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors, grammarRepository, onigLib) {\n return new Grammar(\n scopeName,\n grammar,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors,\n grammarRepository,\n onigLib\n );\n}\nfunction collectInjections(result, selector, rule, ruleFactoryHelper, grammar) {\n const matchers = createMatchers(selector, nameMatcher);\n const ruleId = RuleFactory.getCompiledRuleId(rule, ruleFactoryHelper, grammar.repository);\n for (const matcher of matchers) {\n result.push({\n debugSelector: selector,\n matcher: matcher.matcher,\n ruleId,\n grammar,\n priority: matcher.priority\n });\n }\n}\nfunction nameMatcher(identifers, scopes) {\n if (scopes.length < identifers.length) {\n return false;\n }\n let lastIndex = 0;\n return identifers.every((identifier) => {\n for (let i = lastIndex; i < scopes.length; i++) {\n if (scopesAreMatching(scopes[i], identifier)) {\n lastIndex = i + 1;\n return true;\n }\n }\n return false;\n });\n}\nfunction scopesAreMatching(thisScopeName, scopeName) {\n if (!thisScopeName) {\n return false;\n }\n if (thisScopeName === scopeName) {\n return true;\n }\n const len = scopeName.length;\n return thisScopeName.length > len && thisScopeName.substr(0, len) === scopeName && thisScopeName[len] === \".\";\n}\nvar Grammar = class {\n constructor(_rootScopeName, grammar, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors, grammarRepository, _onigLib) {\n this._rootScopeName = _rootScopeName;\n this.balancedBracketSelectors = balancedBracketSelectors;\n this._onigLib = _onigLib;\n this._basicScopeAttributesProvider = new BasicScopeAttributesProvider(\n initialLanguage,\n embeddedLanguages\n );\n this._rootId = -1;\n this._lastRuleId = 0;\n this._ruleId2desc = [null];\n this._includedGrammars = {};\n this._grammarRepository = grammarRepository;\n this._grammar = initGrammar(grammar, null);\n this._injections = null;\n this._tokenTypeMatchers = [];\n if (tokenTypes) {\n for (const selector of Object.keys(tokenTypes)) {\n const matchers = createMatchers(selector, nameMatcher);\n for (const matcher of matchers) {\n this._tokenTypeMatchers.push({\n matcher: matcher.matcher,\n type: tokenTypes[selector]\n });\n }\n }\n }\n }\n _rootId;\n _lastRuleId;\n _ruleId2desc;\n _includedGrammars;\n _grammarRepository;\n _grammar;\n _injections;\n _basicScopeAttributesProvider;\n _tokenTypeMatchers;\n get themeProvider() {\n return this._grammarRepository;\n }\n dispose() {\n for (const rule of this._ruleId2desc) {\n if (rule) {\n rule.dispose();\n }\n }\n }\n createOnigScanner(sources) {\n return this._onigLib.createOnigScanner(sources);\n }\n createOnigString(sources) {\n return this._onigLib.createOnigString(sources);\n }\n getMetadataForScope(scope) {\n return this._basicScopeAttributesProvider.getBasicScopeAttributes(scope);\n }\n _collectInjections() {\n const grammarRepository = {\n lookup: (scopeName2) => {\n if (scopeName2 === this._rootScopeName) {\n return this._grammar;\n }\n return this.getExternalGrammar(scopeName2);\n },\n injections: (scopeName2) => {\n return this._grammarRepository.injections(scopeName2);\n }\n };\n const result = [];\n const scopeName = this._rootScopeName;\n const grammar = grammarRepository.lookup(scopeName);\n if (grammar) {\n const rawInjections = grammar.injections;\n if (rawInjections) {\n for (let expression in rawInjections) {\n collectInjections(\n result,\n expression,\n rawInjections[expression],\n this,\n grammar\n );\n }\n }\n const injectionScopeNames = this._grammarRepository.injections(scopeName);\n if (injectionScopeNames) {\n injectionScopeNames.forEach((injectionScopeName) => {\n const injectionGrammar = this.getExternalGrammar(injectionScopeName);\n if (injectionGrammar) {\n const selector = injectionGrammar.injectionSelector;\n if (selector) {\n collectInjections(\n result,\n selector,\n injectionGrammar,\n this,\n injectionGrammar\n );\n }\n }\n });\n }\n }\n result.sort((i1, i2) => i1.priority - i2.priority);\n return result;\n }\n getInjections() {\n if (this._injections === null) {\n this._injections = this._collectInjections();\n }\n return this._injections;\n }\n registerRule(factory) {\n const id = ++this._lastRuleId;\n const result = factory(ruleIdFromNumber(id));\n this._ruleId2desc[id] = result;\n return result;\n }\n getRule(ruleId) {\n return this._ruleId2desc[ruleIdToNumber(ruleId)];\n }\n getExternalGrammar(scopeName, repository) {\n if (this._includedGrammars[scopeName]) {\n return this._includedGrammars[scopeName];\n } else if (this._grammarRepository) {\n const rawIncludedGrammar = this._grammarRepository.lookup(scopeName);\n if (rawIncludedGrammar) {\n this._includedGrammars[scopeName] = initGrammar(\n rawIncludedGrammar,\n repository && repository.$base\n );\n return this._includedGrammars[scopeName];\n }\n }\n return void 0;\n }\n tokenizeLine(lineText, prevState, timeLimit = 0) {\n const r = this._tokenize(lineText, prevState, false, timeLimit);\n return {\n tokens: r.lineTokens.getResult(r.ruleStack, r.lineLength),\n ruleStack: r.ruleStack,\n stoppedEarly: r.stoppedEarly\n };\n }\n tokenizeLine2(lineText, prevState, timeLimit = 0) {\n const r = this._tokenize(lineText, prevState, true, timeLimit);\n return {\n tokens: r.lineTokens.getBinaryResult(r.ruleStack, r.lineLength),\n ruleStack: r.ruleStack,\n stoppedEarly: r.stoppedEarly\n };\n }\n _tokenize(lineText, prevState, emitBinaryTokens, timeLimit) {\n if (this._rootId === -1) {\n this._rootId = RuleFactory.getCompiledRuleId(\n this._grammar.repository.$self,\n this,\n this._grammar.repository\n );\n this.getInjections();\n }\n let isFirstLine;\n if (!prevState || prevState === StateStackImpl.NULL) {\n isFirstLine = true;\n const rawDefaultMetadata = this._basicScopeAttributesProvider.getDefaultAttributes();\n const defaultStyle = this.themeProvider.getDefaults();\n const defaultMetadata = EncodedTokenMetadata.set(\n 0,\n rawDefaultMetadata.languageId,\n rawDefaultMetadata.tokenType,\n null,\n defaultStyle.fontStyle,\n defaultStyle.foregroundId,\n defaultStyle.backgroundId\n );\n const rootScopeName = this.getRule(this._rootId).getName(\n null,\n null\n );\n let scopeList;\n if (rootScopeName) {\n scopeList = AttributedScopeStack.createRootAndLookUpScopeName(\n rootScopeName,\n defaultMetadata,\n this\n );\n } else {\n scopeList = AttributedScopeStack.createRoot(\n \"unknown\",\n defaultMetadata\n );\n }\n prevState = new StateStackImpl(\n null,\n this._rootId,\n -1,\n -1,\n false,\n null,\n scopeList,\n scopeList\n );\n } else {\n isFirstLine = false;\n prevState.reset();\n }\n lineText = lineText + \"\\n\";\n const onigLineText = this.createOnigString(lineText);\n const lineLength = onigLineText.content.length;\n const lineTokens = new LineTokens(\n emitBinaryTokens,\n lineText,\n this._tokenTypeMatchers,\n this.balancedBracketSelectors\n );\n const r = _tokenizeString(\n this,\n onigLineText,\n isFirstLine,\n 0,\n prevState,\n lineTokens,\n true,\n timeLimit\n );\n disposeOnigString(onigLineText);\n return {\n lineLength,\n lineTokens,\n ruleStack: r.stack,\n stoppedEarly: r.stoppedEarly\n };\n }\n};\nfunction initGrammar(grammar, base) {\n grammar = clone(grammar);\n grammar.repository = grammar.repository || {};\n grammar.repository.$self = {\n $vscodeTextmateLocation: grammar.$vscodeTextmateLocation,\n patterns: grammar.patterns,\n name: grammar.scopeName\n };\n grammar.repository.$base = base || grammar.repository.$self;\n return grammar;\n}\nvar AttributedScopeStack = class _AttributedScopeStack {\n /**\n * Invariant:\n * ```\n * if (parent && !scopePath.extends(parent.scopePath)) {\n * \tthrow new Error();\n * }\n * ```\n */\n constructor(parent, scopePath, tokenAttributes) {\n this.parent = parent;\n this.scopePath = scopePath;\n this.tokenAttributes = tokenAttributes;\n }\n static fromExtension(namesScopeList, contentNameScopesList) {\n let current = namesScopeList;\n let scopeNames = namesScopeList?.scopePath ?? null;\n for (const frame of contentNameScopesList) {\n scopeNames = ScopeStack.push(scopeNames, frame.scopeNames);\n current = new _AttributedScopeStack(current, scopeNames, frame.encodedTokenAttributes);\n }\n return current;\n }\n static createRoot(scopeName, tokenAttributes) {\n return new _AttributedScopeStack(null, new ScopeStack(null, scopeName), tokenAttributes);\n }\n static createRootAndLookUpScopeName(scopeName, tokenAttributes, grammar) {\n const rawRootMetadata = grammar.getMetadataForScope(scopeName);\n const scopePath = new ScopeStack(null, scopeName);\n const rootStyle = grammar.themeProvider.themeMatch(scopePath);\n const resolvedTokenAttributes = _AttributedScopeStack.mergeAttributes(\n tokenAttributes,\n rawRootMetadata,\n rootStyle\n );\n return new _AttributedScopeStack(null, scopePath, resolvedTokenAttributes);\n }\n get scopeName() {\n return this.scopePath.scopeName;\n }\n toString() {\n return this.getScopeNames().join(\" \");\n }\n equals(other) {\n return _AttributedScopeStack.equals(this, other);\n }\n static equals(a, b) {\n do {\n if (a === b) {\n return true;\n }\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.scopeName !== b.scopeName || a.tokenAttributes !== b.tokenAttributes) {\n return false;\n }\n a = a.parent;\n b = b.parent;\n } while (true);\n }\n static mergeAttributes(existingTokenAttributes, basicScopeAttributes, styleAttributes) {\n let fontStyle = -1 /* NotSet */;\n let foreground = 0;\n let background = 0;\n if (styleAttributes !== null) {\n fontStyle = styleAttributes.fontStyle;\n foreground = styleAttributes.foregroundId;\n background = styleAttributes.backgroundId;\n }\n return EncodedTokenMetadata.set(\n existingTokenAttributes,\n basicScopeAttributes.languageId,\n basicScopeAttributes.tokenType,\n null,\n fontStyle,\n foreground,\n background\n );\n }\n pushAttributed(scopePath, grammar) {\n if (scopePath === null) {\n return this;\n }\n if (scopePath.indexOf(\" \") === -1) {\n return _AttributedScopeStack._pushAttributed(this, scopePath, grammar);\n }\n const scopes = scopePath.split(/ /g);\n let result = this;\n for (const scope of scopes) {\n result = _AttributedScopeStack._pushAttributed(result, scope, grammar);\n }\n return result;\n }\n static _pushAttributed(target, scopeName, grammar) {\n const rawMetadata = grammar.getMetadataForScope(scopeName);\n const newPath = target.scopePath.push(scopeName);\n const scopeThemeMatchResult = grammar.themeProvider.themeMatch(newPath);\n const metadata = _AttributedScopeStack.mergeAttributes(\n target.tokenAttributes,\n rawMetadata,\n scopeThemeMatchResult\n );\n return new _AttributedScopeStack(target, newPath, metadata);\n }\n getScopeNames() {\n return this.scopePath.getSegments();\n }\n getExtensionIfDefined(base) {\n const result = [];\n let self = this;\n while (self && self !== base) {\n result.push({\n encodedTokenAttributes: self.tokenAttributes,\n scopeNames: self.scopePath.getExtensionIfDefined(self.parent?.scopePath ?? null)\n });\n self = self.parent;\n }\n return self === base ? result.reverse() : void 0;\n }\n};\nvar StateStackImpl = class _StateStackImpl {\n /**\n * Invariant:\n * ```\n * if (contentNameScopesList !== nameScopesList && contentNameScopesList?.parent !== nameScopesList) {\n * \tthrow new Error();\n * }\n * if (this.parent && !nameScopesList.extends(this.parent.contentNameScopesList)) {\n * \tthrow new Error();\n * }\n * ```\n */\n constructor(parent, ruleId, enterPos, anchorPos, beginRuleCapturedEOL, endRule, nameScopesList, contentNameScopesList) {\n this.parent = parent;\n this.ruleId = ruleId;\n this.beginRuleCapturedEOL = beginRuleCapturedEOL;\n this.endRule = endRule;\n this.nameScopesList = nameScopesList;\n this.contentNameScopesList = contentNameScopesList;\n this.depth = this.parent ? this.parent.depth + 1 : 1;\n this._enterPos = enterPos;\n this._anchorPos = anchorPos;\n }\n _stackElementBrand = void 0;\n // TODO remove me\n static NULL = new _StateStackImpl(\n null,\n 0,\n 0,\n 0,\n false,\n null,\n null,\n null\n );\n /**\n * The position on the current line where this state was pushed.\n * This is relevant only while tokenizing a line, to detect endless loops.\n * Its value is meaningless across lines.\n */\n _enterPos;\n /**\n * The captured anchor position when this stack element was pushed.\n * This is relevant only while tokenizing a line, to restore the anchor position when popping.\n * Its value is meaningless across lines.\n */\n _anchorPos;\n /**\n * The depth of the stack.\n */\n depth;\n equals(other) {\n if (other === null) {\n return false;\n }\n return _StateStackImpl._equals(this, other);\n }\n static _equals(a, b) {\n if (a === b) {\n return true;\n }\n if (!this._structuralEquals(a, b)) {\n return false;\n }\n return AttributedScopeStack.equals(a.contentNameScopesList, b.contentNameScopesList);\n }\n /**\n * A structural equals check. Does not take into account `scopes`.\n */\n static _structuralEquals(a, b) {\n do {\n if (a === b) {\n return true;\n }\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.depth !== b.depth || a.ruleId !== b.ruleId || a.endRule !== b.endRule) {\n return false;\n }\n a = a.parent;\n b = b.parent;\n } while (true);\n }\n clone() {\n return this;\n }\n static _reset(el) {\n while (el) {\n el._enterPos = -1;\n el._anchorPos = -1;\n el = el.parent;\n }\n }\n reset() {\n _StateStackImpl._reset(this);\n }\n pop() {\n return this.parent;\n }\n safePop() {\n if (this.parent) {\n return this.parent;\n }\n return this;\n }\n push(ruleId, enterPos, anchorPos, beginRuleCapturedEOL, endRule, nameScopesList, contentNameScopesList) {\n return new _StateStackImpl(\n this,\n ruleId,\n enterPos,\n anchorPos,\n beginRuleCapturedEOL,\n endRule,\n nameScopesList,\n contentNameScopesList\n );\n }\n getEnterPos() {\n return this._enterPos;\n }\n getAnchorPos() {\n return this._anchorPos;\n }\n getRule(grammar) {\n return grammar.getRule(this.ruleId);\n }\n toString() {\n const r = [];\n this._writeString(r, 0);\n return \"[\" + r.join(\",\") + \"]\";\n }\n _writeString(res, outIndex) {\n if (this.parent) {\n outIndex = this.parent._writeString(res, outIndex);\n }\n res[outIndex++] = `(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`;\n return outIndex;\n }\n withContentNameScopesList(contentNameScopeStack) {\n if (this.contentNameScopesList === contentNameScopeStack) {\n return this;\n }\n return this.parent.push(\n this.ruleId,\n this._enterPos,\n this._anchorPos,\n this.beginRuleCapturedEOL,\n this.endRule,\n this.nameScopesList,\n contentNameScopeStack\n );\n }\n withEndRule(endRule) {\n if (this.endRule === endRule) {\n return this;\n }\n return new _StateStackImpl(\n this.parent,\n this.ruleId,\n this._enterPos,\n this._anchorPos,\n this.beginRuleCapturedEOL,\n endRule,\n this.nameScopesList,\n this.contentNameScopesList\n );\n }\n // Used to warn of endless loops\n hasSameRuleAs(other) {\n let el = this;\n while (el && el._enterPos === other._enterPos) {\n if (el.ruleId === other.ruleId) {\n return true;\n }\n el = el.parent;\n }\n return false;\n }\n toStateStackFrame() {\n return {\n ruleId: ruleIdToNumber(this.ruleId),\n beginRuleCapturedEOL: this.beginRuleCapturedEOL,\n endRule: this.endRule,\n nameScopesList: this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList ?? null) ?? [],\n contentNameScopesList: this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList) ?? []\n };\n }\n static pushFrame(self, frame) {\n const namesScopeList = AttributedScopeStack.fromExtension(self?.nameScopesList ?? null, frame.nameScopesList);\n return new _StateStackImpl(\n self,\n ruleIdFromNumber(frame.ruleId),\n frame.enterPos ?? -1,\n frame.anchorPos ?? -1,\n frame.beginRuleCapturedEOL,\n frame.endRule,\n namesScopeList,\n AttributedScopeStack.fromExtension(namesScopeList, frame.contentNameScopesList)\n );\n }\n};\nvar BalancedBracketSelectors = class {\n balancedBracketScopes;\n unbalancedBracketScopes;\n allowAny = false;\n constructor(balancedBracketScopes, unbalancedBracketScopes) {\n this.balancedBracketScopes = balancedBracketScopes.flatMap(\n (selector) => {\n if (selector === \"*\") {\n this.allowAny = true;\n return [];\n }\n return createMatchers(selector, nameMatcher).map((m) => m.matcher);\n }\n );\n this.unbalancedBracketScopes = unbalancedBracketScopes.flatMap(\n (selector) => createMatchers(selector, nameMatcher).map((m) => m.matcher)\n );\n }\n get matchesAlways() {\n return this.allowAny && this.unbalancedBracketScopes.length === 0;\n }\n get matchesNever() {\n return this.balancedBracketScopes.length === 0 && !this.allowAny;\n }\n match(scopes) {\n for (const excluder of this.unbalancedBracketScopes) {\n if (excluder(scopes)) {\n return false;\n }\n }\n for (const includer of this.balancedBracketScopes) {\n if (includer(scopes)) {\n return true;\n }\n }\n return this.allowAny;\n }\n};\nvar LineTokens = class {\n constructor(emitBinaryTokens, lineText, tokenTypeOverrides, balancedBracketSelectors) {\n this.balancedBracketSelectors = balancedBracketSelectors;\n this._emitBinaryTokens = emitBinaryTokens;\n this._tokenTypeOverrides = tokenTypeOverrides;\n if (false) {\n this._lineText = lineText;\n } else {\n this._lineText = null;\n }\n this._tokens = [];\n this._binaryTokens = [];\n this._lastTokenEndIndex = 0;\n }\n _emitBinaryTokens;\n /**\n * defined only if `false`.\n */\n _lineText;\n /**\n * used only if `_emitBinaryTokens` is false.\n */\n _tokens;\n /**\n * used only if `_emitBinaryTokens` is true.\n */\n _binaryTokens;\n _lastTokenEndIndex;\n _tokenTypeOverrides;\n produce(stack, endIndex) {\n this.produceFromScopes(stack.contentNameScopesList, endIndex);\n }\n produceFromScopes(scopesList, endIndex) {\n if (this._lastTokenEndIndex >= endIndex) {\n return;\n }\n if (this._emitBinaryTokens) {\n let metadata = scopesList?.tokenAttributes ?? 0;\n let containsBalancedBrackets = false;\n if (this.balancedBracketSelectors?.matchesAlways) {\n containsBalancedBrackets = true;\n }\n if (this._tokenTypeOverrides.length > 0 || this.balancedBracketSelectors && !this.balancedBracketSelectors.matchesAlways && !this.balancedBracketSelectors.matchesNever) {\n const scopes2 = scopesList?.getScopeNames() ?? [];\n for (const tokenType of this._tokenTypeOverrides) {\n if (tokenType.matcher(scopes2)) {\n metadata = EncodedTokenMetadata.set(\n metadata,\n 0,\n toOptionalTokenType(tokenType.type),\n null,\n -1 /* NotSet */,\n 0,\n 0\n );\n }\n }\n if (this.balancedBracketSelectors) {\n containsBalancedBrackets = this.balancedBracketSelectors.match(scopes2);\n }\n }\n if (containsBalancedBrackets) {\n metadata = EncodedTokenMetadata.set(\n metadata,\n 0,\n 8 /* NotSet */,\n containsBalancedBrackets,\n -1 /* NotSet */,\n 0,\n 0\n );\n }\n if (this._binaryTokens.length > 0 && this._binaryTokens[this._binaryTokens.length - 1] === metadata) {\n this._lastTokenEndIndex = endIndex;\n return;\n }\n this._binaryTokens.push(this._lastTokenEndIndex);\n this._binaryTokens.push(metadata);\n this._lastTokenEndIndex = endIndex;\n return;\n }\n const scopes = scopesList?.getScopeNames() ?? [];\n this._tokens.push({\n startIndex: this._lastTokenEndIndex,\n endIndex,\n // value: lineText.substring(lastTokenEndIndex, endIndex),\n scopes\n });\n this._lastTokenEndIndex = endIndex;\n }\n getResult(stack, lineLength) {\n if (this._tokens.length > 0 && this._tokens[this._tokens.length - 1].startIndex === lineLength - 1) {\n this._tokens.pop();\n }\n if (this._tokens.length === 0) {\n this._lastTokenEndIndex = -1;\n this.produce(stack, lineLength);\n this._tokens[this._tokens.length - 1].startIndex = 0;\n }\n return this._tokens;\n }\n getBinaryResult(stack, lineLength) {\n if (this._binaryTokens.length > 0 && this._binaryTokens[this._binaryTokens.length - 2] === lineLength - 1) {\n this._binaryTokens.pop();\n this._binaryTokens.pop();\n }\n if (this._binaryTokens.length === 0) {\n this._lastTokenEndIndex = -1;\n this.produce(stack, lineLength);\n this._binaryTokens[this._binaryTokens.length - 2] = 0;\n }\n const result = new Uint32Array(this._binaryTokens.length);\n for (let i = 0, len = this._binaryTokens.length; i < len; i++) {\n result[i] = this._binaryTokens[i];\n }\n return result;\n }\n};\n\n// src/registry.ts\nvar SyncRegistry = class {\n constructor(theme, _onigLib) {\n this._onigLib = _onigLib;\n this._theme = theme;\n }\n _grammars = /* @__PURE__ */ new Map();\n _rawGrammars = /* @__PURE__ */ new Map();\n _injectionGrammars = /* @__PURE__ */ new Map();\n _theme;\n dispose() {\n for (const grammar of this._grammars.values()) {\n grammar.dispose();\n }\n }\n setTheme(theme) {\n this._theme = theme;\n }\n getColorMap() {\n return this._theme.getColorMap();\n }\n /**\n * Add `grammar` to registry and return a list of referenced scope names\n */\n addGrammar(grammar, injectionScopeNames) {\n this._rawGrammars.set(grammar.scopeName, grammar);\n if (injectionScopeNames) {\n this._injectionGrammars.set(grammar.scopeName, injectionScopeNames);\n }\n }\n /**\n * Lookup a raw grammar.\n */\n lookup(scopeName) {\n return this._rawGrammars.get(scopeName);\n }\n /**\n * Returns the injections for the given grammar\n */\n injections(targetScope) {\n return this._injectionGrammars.get(targetScope);\n }\n /**\n * Get the default theme settings\n */\n getDefaults() {\n return this._theme.getDefaults();\n }\n /**\n * Match a scope in the theme.\n */\n themeMatch(scopePath) {\n return this._theme.match(scopePath);\n }\n /**\n * Lookup a grammar.\n */\n grammarForScopeName(scopeName, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors) {\n if (!this._grammars.has(scopeName)) {\n let rawGrammar = this._rawGrammars.get(scopeName);\n if (!rawGrammar) {\n return null;\n }\n this._grammars.set(scopeName, createGrammar(\n scopeName,\n rawGrammar,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors,\n this,\n this._onigLib\n ));\n }\n return this._grammars.get(scopeName);\n }\n};\n\n// src/index.ts\nvar Registry = class {\n _options;\n _syncRegistry;\n _ensureGrammarCache;\n constructor(options) {\n this._options = options;\n this._syncRegistry = new SyncRegistry(\n Theme.createFromRawTheme(options.theme, options.colorMap),\n options.onigLib\n );\n this._ensureGrammarCache = /* @__PURE__ */ new Map();\n }\n dispose() {\n this._syncRegistry.dispose();\n }\n /**\n * Change the theme. Once called, no previous `ruleStack` should be used anymore.\n */\n setTheme(theme, colorMap) {\n this._syncRegistry.setTheme(Theme.createFromRawTheme(theme, colorMap));\n }\n /**\n * Returns a lookup array for color ids.\n */\n getColorMap() {\n return this._syncRegistry.getColorMap();\n }\n /**\n * Load the grammar for `scopeName` and all referenced included grammars asynchronously.\n * Please do not use language id 0.\n */\n loadGrammarWithEmbeddedLanguages(initialScopeName, initialLanguage, embeddedLanguages) {\n return this.loadGrammarWithConfiguration(initialScopeName, initialLanguage, { embeddedLanguages });\n }\n /**\n * Load the grammar for `scopeName` and all referenced included grammars asynchronously.\n * Please do not use language id 0.\n */\n loadGrammarWithConfiguration(initialScopeName, initialLanguage, configuration) {\n return this._loadGrammar(\n initialScopeName,\n initialLanguage,\n configuration.embeddedLanguages,\n configuration.tokenTypes,\n new BalancedBracketSelectors(\n configuration.balancedBracketSelectors || [],\n configuration.unbalancedBracketSelectors || []\n )\n );\n }\n /**\n * Load the grammar for `scopeName` and all referenced included grammars asynchronously.\n */\n loadGrammar(initialScopeName) {\n return this._loadGrammar(initialScopeName, 0, null, null, null);\n }\n _loadGrammar(initialScopeName, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors) {\n const dependencyProcessor = new ScopeDependencyProcessor(this._syncRegistry, initialScopeName);\n while (dependencyProcessor.Q.length > 0) {\n dependencyProcessor.Q.map((request) => this._loadSingleGrammar(request.scopeName));\n dependencyProcessor.processQueue();\n }\n return this._grammarForScopeName(\n initialScopeName,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors\n );\n }\n _loadSingleGrammar(scopeName) {\n if (!this._ensureGrammarCache.has(scopeName)) {\n this._doLoadSingleGrammar(scopeName);\n this._ensureGrammarCache.set(scopeName, true);\n }\n }\n _doLoadSingleGrammar(scopeName) {\n const grammar = this._options.loadGrammar(scopeName);\n if (grammar) {\n const injections = typeof this._options.getInjections === \"function\" ? this._options.getInjections(scopeName) : void 0;\n this._syncRegistry.addGrammar(grammar, injections);\n }\n }\n /**\n * Adds a rawGrammar.\n */\n addGrammar(rawGrammar, injections = [], initialLanguage = 0, embeddedLanguages = null) {\n this._syncRegistry.addGrammar(rawGrammar, injections);\n return this._grammarForScopeName(rawGrammar.scopeName, initialLanguage, embeddedLanguages);\n }\n /**\n * Get the grammar for `scopeName`. The grammar must first be created via `loadGrammar` or `addGrammar`.\n */\n _grammarForScopeName(scopeName, initialLanguage = 0, embeddedLanguages = null, tokenTypes = null, balancedBracketSelectors = null) {\n return this._syncRegistry.grammarForScopeName(\n scopeName,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors\n );\n }\n};\nvar INITIAL = StateStackImpl.NULL;\nexport {\n EncodedTokenMetadata,\n FindOption,\n FontStyle,\n INITIAL,\n Registry,\n Theme,\n disposeOnigString\n};\n", "/**\n * List of HTML void tag names.\n *\n * @type {Array<string>}\n */\nexport const htmlVoidElements = [\n 'area',\n 'base',\n 'basefont',\n 'bgsound',\n 'br',\n 'col',\n 'command',\n 'embed',\n 'frame',\n 'hr',\n 'image',\n 'img',\n 'input',\n 'keygen',\n 'link',\n 'meta',\n 'param',\n 'source',\n 'track',\n 'wbr'\n]\n", "/**\n * @import {Schema as SchemaType, Space} from 'property-information'\n */\n\n/** @type {SchemaType} */\nexport class Schema {\n /**\n * @param {SchemaType['property']} property\n * Property.\n * @param {SchemaType['normal']} normal\n * Normal.\n * @param {Space | undefined} [space]\n * Space.\n * @returns\n * Schema.\n */\n constructor(property, normal, space) {\n this.normal = normal\n this.property = property\n\n if (space) {\n this.space = space\n }\n }\n}\n\nSchema.prototype.normal = {}\nSchema.prototype.property = {}\nSchema.prototype.space = undefined\n", "/**\n * @import {Info, Space} from 'property-information'\n */\n\nimport {Schema} from './schema.js'\n\n/**\n * @param {ReadonlyArray<Schema>} definitions\n * Definitions.\n * @param {Space | undefined} [space]\n * Space.\n * @returns {Schema}\n * Schema.\n */\nexport function merge(definitions, space) {\n /** @type {Record<string, Info>} */\n const property = {}\n /** @type {Record<string, string>} */\n const normal = {}\n\n for (const definition of definitions) {\n Object.assign(property, definition.property)\n Object.assign(normal, definition.normal)\n }\n\n return new Schema(property, normal, space)\n}\n", "/**\n * Get the cleaned case insensitive form of an attribute or property.\n *\n * @param {string} value\n * An attribute-like or property-like name.\n * @returns {string}\n * Value that can be used to look up the properly cased property on a\n * `Schema`.\n */\nexport function normalize(value) {\n return value.toLowerCase()\n}\n", "/**\n * @import {Info as InfoType} from 'property-information'\n */\n\n/** @type {InfoType} */\nexport class Info {\n /**\n * @param {string} property\n * Property.\n * @param {string} attribute\n * Attribute.\n * @returns\n * Info.\n */\n constructor(property, attribute) {\n this.attribute = attribute\n this.property = property\n }\n}\n\nInfo.prototype.attribute = ''\nInfo.prototype.booleanish = false\nInfo.prototype.boolean = false\nInfo.prototype.commaOrSpaceSeparated = false\nInfo.prototype.commaSeparated = false\nInfo.prototype.defined = false\nInfo.prototype.mustUseProperty = false\nInfo.prototype.number = false\nInfo.prototype.overloadedBoolean = false\nInfo.prototype.property = ''\nInfo.prototype.spaceSeparated = false\nInfo.prototype.space = undefined\n", "let powers = 0\n\nexport const boolean = increment()\nexport const booleanish = increment()\nexport const overloadedBoolean = increment()\nexport const number = increment()\nexport const spaceSeparated = increment()\nexport const commaSeparated = increment()\nexport const commaOrSpaceSeparated = increment()\n\nfunction increment() {\n return 2 ** ++powers\n}\n", "/**\n * @import {Space} from 'property-information'\n */\n\nimport {Info} from './info.js'\nimport * as types from './types.js'\n\nconst checks = /** @type {ReadonlyArray<keyof typeof types>} */ (\n Object.keys(types)\n)\n\nexport class DefinedInfo extends Info {\n /**\n * @constructor\n * @param {string} property\n * Property.\n * @param {string} attribute\n * Attribute.\n * @param {number | null | undefined} [mask]\n * Mask.\n * @param {Space | undefined} [space]\n * Space.\n * @returns\n * Info.\n */\n constructor(property, attribute, mask, space) {\n let index = -1\n\n super(property, attribute)\n\n mark(this, 'space', space)\n\n if (typeof mask === 'number') {\n while (++index < checks.length) {\n const check = checks[index]\n mark(this, checks[index], (mask & types[check]) === types[check])\n }\n }\n }\n}\n\nDefinedInfo.prototype.defined = true\n\n/**\n * @template {keyof DefinedInfo} Key\n * Key type.\n * @param {DefinedInfo} values\n * Info.\n * @param {Key} key\n * Key.\n * @param {DefinedInfo[Key]} value\n * Value.\n * @returns {undefined}\n * Nothing.\n */\nfunction mark(values, key, value) {\n if (value) {\n values[key] = value\n }\n}\n", "/**\n * @import {Info, Space} from 'property-information'\n */\n\n/**\n * @typedef Definition\n * Definition of a schema.\n * @property {Record<string, string> | undefined} [attributes]\n * Normalzed names to special attribute case.\n * @property {ReadonlyArray<string> | undefined} [mustUseProperty]\n * Normalized names that must be set as properties.\n * @property {Record<string, number | null>} properties\n * Property names to their types.\n * @property {Space | undefined} [space]\n * Space.\n * @property {Transform} transform\n * Transform a property name.\n */\n\n/**\n * @callback Transform\n * Transform.\n * @param {Record<string, string>} attributes\n * Attributes.\n * @param {string} property\n * Property.\n * @returns {string}\n * Attribute.\n */\n\nimport {normalize} from '../normalize.js'\nimport {DefinedInfo} from './defined-info.js'\nimport {Schema} from './schema.js'\n\n/**\n * @param {Definition} definition\n * Definition.\n * @returns {Schema}\n * Schema.\n */\nexport function create(definition) {\n /** @type {Record<string, Info>} */\n const properties = {}\n /** @type {Record<string, string>} */\n const normals = {}\n\n for (const [property, value] of Object.entries(definition.properties)) {\n const info = new DefinedInfo(\n property,\n definition.transform(definition.attributes || {}, property),\n value,\n definition.space\n )\n\n if (\n definition.mustUseProperty &&\n definition.mustUseProperty.includes(property)\n ) {\n info.mustUseProperty = true\n }\n\n properties[property] = info\n\n normals[normalize(property)] = property\n normals[normalize(info.attribute)] = property\n }\n\n return new Schema(properties, normals, definition.space)\n}\n", "import {create} from './util/create.js'\nimport {booleanish, number, spaceSeparated} from './util/types.js'\n\nexport const aria = create({\n properties: {\n ariaActiveDescendant: null,\n ariaAtomic: booleanish,\n ariaAutoComplete: null,\n ariaBusy: booleanish,\n ariaChecked: booleanish,\n ariaColCount: number,\n ariaColIndex: number,\n ariaColSpan: number,\n ariaControls: spaceSeparated,\n ariaCurrent: null,\n ariaDescribedBy: spaceSeparated,\n ariaDetails: null,\n ariaDisabled: booleanish,\n ariaDropEffect: spaceSeparated,\n ariaErrorMessage: null,\n ariaExpanded: booleanish,\n ariaFlowTo: spaceSeparated,\n ariaGrabbed: booleanish,\n ariaHasPopup: null,\n ariaHidden: booleanish,\n ariaInvalid: null,\n ariaKeyShortcuts: null,\n ariaLabel: null,\n ariaLabelledBy: spaceSeparated,\n ariaLevel: number,\n ariaLive: null,\n ariaModal: booleanish,\n ariaMultiLine: booleanish,\n ariaMultiSelectable: booleanish,\n ariaOrientation: null,\n ariaOwns: spaceSeparated,\n ariaPlaceholder: null,\n ariaPosInSet: number,\n ariaPressed: booleanish,\n ariaReadOnly: booleanish,\n ariaRelevant: null,\n ariaRequired: booleanish,\n ariaRoleDescription: spaceSeparated,\n ariaRowCount: number,\n ariaRowIndex: number,\n ariaRowSpan: number,\n ariaSelected: booleanish,\n ariaSetSize: number,\n ariaSort: null,\n ariaValueMax: number,\n ariaValueMin: number,\n ariaValueNow: number,\n ariaValueText: null,\n role: null\n },\n transform(_, property) {\n return property === 'role'\n ? property\n : 'aria-' + property.slice(4).toLowerCase()\n }\n})\n", "/**\n * @param {Record<string, string>} attributes\n * Attributes.\n * @param {string} attribute\n * Attribute.\n * @returns {string}\n * Transformed attribute.\n */\nexport function caseSensitiveTransform(attributes, attribute) {\n return attribute in attributes ? attributes[attribute] : attribute\n}\n", "import {caseSensitiveTransform} from './case-sensitive-transform.js'\n\n/**\n * @param {Record<string, string>} attributes\n * Attributes.\n * @param {string} property\n * Property.\n * @returns {string}\n * Transformed property.\n */\nexport function caseInsensitiveTransform(attributes, property) {\n return caseSensitiveTransform(attributes, property.toLowerCase())\n}\n", "import {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\nimport {create} from './util/create.js'\nimport {\n booleanish,\n boolean,\n commaSeparated,\n number,\n overloadedBoolean,\n spaceSeparated\n} from './util/types.js'\n\nexport const html = create({\n attributes: {\n acceptcharset: 'accept-charset',\n classname: 'class',\n htmlfor: 'for',\n httpequiv: 'http-equiv'\n },\n mustUseProperty: ['checked', 'multiple', 'muted', 'selected'],\n properties: {\n // Standard Properties.\n abbr: null,\n accept: commaSeparated,\n acceptCharset: spaceSeparated,\n accessKey: spaceSeparated,\n action: null,\n allow: null,\n allowFullScreen: boolean,\n allowPaymentRequest: boolean,\n allowUserMedia: boolean,\n alt: null,\n as: null,\n async: boolean,\n autoCapitalize: null,\n autoComplete: spaceSeparated,\n autoFocus: boolean,\n autoPlay: boolean,\n blocking: spaceSeparated,\n capture: null,\n charSet: null,\n checked: boolean,\n cite: null,\n className: spaceSeparated,\n cols: number,\n colSpan: null,\n content: null,\n contentEditable: booleanish,\n controls: boolean,\n controlsList: spaceSeparated,\n coords: number | commaSeparated,\n crossOrigin: null,\n data: null,\n dateTime: null,\n decoding: null,\n default: boolean,\n defer: boolean,\n dir: null,\n dirName: null,\n disabled: boolean,\n download: overloadedBoolean,\n draggable: booleanish,\n encType: null,\n enterKeyHint: null,\n fetchPriority: null,\n form: null,\n formAction: null,\n formEncType: null,\n formMethod: null,\n formNoValidate: boolean,\n formTarget: null,\n headers: spaceSeparated,\n height: number,\n hidden: overloadedBoolean,\n high: number,\n href: null,\n hrefLang: null,\n htmlFor: spaceSeparated,\n httpEquiv: spaceSeparated,\n id: null,\n imageSizes: null,\n imageSrcSet: null,\n inert: boolean,\n inputMode: null,\n integrity: null,\n is: null,\n isMap: boolean,\n itemId: null,\n itemProp: spaceSeparated,\n itemRef: spaceSeparated,\n itemScope: boolean,\n itemType: spaceSeparated,\n kind: null,\n label: null,\n lang: null,\n language: null,\n list: null,\n loading: null,\n loop: boolean,\n low: number,\n manifest: null,\n max: null,\n maxLength: number,\n media: null,\n method: null,\n min: null,\n minLength: number,\n multiple: boolean,\n muted: boolean,\n name: null,\n nonce: null,\n noModule: boolean,\n noValidate: boolean,\n onAbort: null,\n onAfterPrint: null,\n onAuxClick: null,\n onBeforeMatch: null,\n onBeforePrint: null,\n onBeforeToggle: null,\n onBeforeUnload: null,\n onBlur: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onContextLost: null,\n onContextMenu: null,\n onContextRestored: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFormData: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLanguageChange: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadEnd: null,\n onLoadStart: null,\n onMessage: null,\n onMessageError: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRejectionHandled: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onScrollEnd: null,\n onSecurityPolicyViolation: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onSlotChange: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnhandledRejection: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onWheel: null,\n open: boolean,\n optimum: number,\n pattern: null,\n ping: spaceSeparated,\n placeholder: null,\n playsInline: boolean,\n popover: null,\n popoverTarget: null,\n popoverTargetAction: null,\n poster: null,\n preload: null,\n readOnly: boolean,\n referrerPolicy: null,\n rel: spaceSeparated,\n required: boolean,\n reversed: boolean,\n rows: number,\n rowSpan: number,\n sandbox: spaceSeparated,\n scope: null,\n scoped: boolean,\n seamless: boolean,\n selected: boolean,\n shadowRootClonable: boolean,\n shadowRootDelegatesFocus: boolean,\n shadowRootMode: null,\n shape: null,\n size: number,\n sizes: null,\n slot: null,\n span: number,\n spellCheck: booleanish,\n src: null,\n srcDoc: null,\n srcLang: null,\n srcSet: null,\n start: number,\n step: null,\n style: null,\n tabIndex: number,\n target: null,\n title: null,\n translate: null,\n type: null,\n typeMustMatch: boolean,\n useMap: null,\n value: booleanish,\n width: number,\n wrap: null,\n writingSuggestions: null,\n\n // Legacy.\n // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis\n align: null, // Several. Use CSS `text-align` instead,\n aLink: null, // `<body>`. Use CSS `a:active {color}` instead\n archive: spaceSeparated, // `<object>`. List of URIs to archives\n axis: null, // `<td>` and `<th>`. Use `scope` on `<th>`\n background: null, // `<body>`. Use CSS `background-image` instead\n bgColor: null, // `<body>` and table elements. Use CSS `background-color` instead\n border: number, // `<table>`. Use CSS `border-width` instead,\n borderColor: null, // `<table>`. Use CSS `border-color` instead,\n bottomMargin: number, // `<body>`\n cellPadding: null, // `<table>`\n cellSpacing: null, // `<table>`\n char: null, // Several table elements. When `align=char`, sets the character to align on\n charOff: null, // Several table elements. When `char`, offsets the alignment\n classId: null, // `<object>`\n clear: null, // `<br>`. Use CSS `clear` instead\n code: null, // `<object>`\n codeBase: null, // `<object>`\n codeType: null, // `<object>`\n color: null, // `<font>` and `<hr>`. Use CSS instead\n compact: boolean, // Lists. Use CSS to reduce space between items instead\n declare: boolean, // `<object>`\n event: null, // `<script>`\n face: null, // `<font>`. Use CSS instead\n frame: null, // `<table>`\n frameBorder: null, // `<iframe>`. Use CSS `border` instead\n hSpace: number, // `<img>` and `<object>`\n leftMargin: number, // `<body>`\n link: null, // `<body>`. Use CSS `a:link {color: *}` instead\n longDesc: null, // `<frame>`, `<iframe>`, and `<img>`. Use an `<a>`\n lowSrc: null, // `<img>`. Use a `<picture>`\n marginHeight: number, // `<body>`\n marginWidth: number, // `<body>`\n noResize: boolean, // `<frame>`\n noHref: boolean, // `<area>`. Use no href instead of an explicit `nohref`\n noShade: boolean, // `<hr>`. Use background-color and height instead of borders\n noWrap: boolean, // `<td>` and `<th>`\n object: null, // `<applet>`\n profile: null, // `<head>`\n prompt: null, // `<isindex>`\n rev: null, // `<link>`\n rightMargin: number, // `<body>`\n rules: null, // `<table>`\n scheme: null, // `<meta>`\n scrolling: booleanish, // `<frame>`. Use overflow in the child context\n standby: null, // `<object>`\n summary: null, // `<table>`\n text: null, // `<body>`. Use CSS `color` instead\n topMargin: number, // `<body>`\n valueType: null, // `<param>`\n version: null, // `<html>`. Use a doctype.\n vAlign: null, // Several. Use CSS `vertical-align` instead\n vLink: null, // `<body>`. Use CSS `a:visited {color}` instead\n vSpace: number, // `<img>` and `<object>`\n\n // Non-standard Properties.\n allowTransparency: null,\n autoCorrect: null,\n autoSave: null,\n disablePictureInPicture: boolean,\n disableRemotePlayback: boolean,\n prefix: null,\n property: null,\n results: number,\n security: null,\n unselectable: null\n },\n space: 'html',\n transform: caseInsensitiveTransform\n})\n", "import {caseSensitiveTransform} from './util/case-sensitive-transform.js'\nimport {create} from './util/create.js'\nimport {\n boolean,\n commaOrSpaceSeparated,\n commaSeparated,\n number,\n spaceSeparated\n} from './util/types.js'\n\nexport const svg = create({\n attributes: {\n accentHeight: 'accent-height',\n alignmentBaseline: 'alignment-baseline',\n arabicForm: 'arabic-form',\n baselineShift: 'baseline-shift',\n capHeight: 'cap-height',\n className: 'class',\n clipPath: 'clip-path',\n clipRule: 'clip-rule',\n colorInterpolation: 'color-interpolation',\n colorInterpolationFilters: 'color-interpolation-filters',\n colorProfile: 'color-profile',\n colorRendering: 'color-rendering',\n crossOrigin: 'crossorigin',\n dataType: 'datatype',\n dominantBaseline: 'dominant-baseline',\n enableBackground: 'enable-background',\n fillOpacity: 'fill-opacity',\n fillRule: 'fill-rule',\n floodColor: 'flood-color',\n floodOpacity: 'flood-opacity',\n fontFamily: 'font-family',\n fontSize: 'font-size',\n fontSizeAdjust: 'font-size-adjust',\n fontStretch: 'font-stretch',\n fontStyle: 'font-style',\n fontVariant: 'font-variant',\n fontWeight: 'font-weight',\n glyphName: 'glyph-name',\n glyphOrientationHorizontal: 'glyph-orientation-horizontal',\n glyphOrientationVertical: 'glyph-orientation-vertical',\n hrefLang: 'hreflang',\n horizAdvX: 'horiz-adv-x',\n horizOriginX: 'horiz-origin-x',\n horizOriginY: 'horiz-origin-y',\n imageRendering: 'image-rendering',\n letterSpacing: 'letter-spacing',\n lightingColor: 'lighting-color',\n markerEnd: 'marker-end',\n markerMid: 'marker-mid',\n markerStart: 'marker-start',\n navDown: 'nav-down',\n navDownLeft: 'nav-down-left',\n navDownRight: 'nav-down-right',\n navLeft: 'nav-left',\n navNext: 'nav-next',\n navPrev: 'nav-prev',\n navRight: 'nav-right',\n navUp: 'nav-up',\n navUpLeft: 'nav-up-left',\n navUpRight: 'nav-up-right',\n onAbort: 'onabort',\n onActivate: 'onactivate',\n onAfterPrint: 'onafterprint',\n onBeforePrint: 'onbeforeprint',\n onBegin: 'onbegin',\n onCancel: 'oncancel',\n onCanPlay: 'oncanplay',\n onCanPlayThrough: 'oncanplaythrough',\n onChange: 'onchange',\n onClick: 'onclick',\n onClose: 'onclose',\n onCopy: 'oncopy',\n onCueChange: 'oncuechange',\n onCut: 'oncut',\n onDblClick: 'ondblclick',\n onDrag: 'ondrag',\n onDragEnd: 'ondragend',\n onDragEnter: 'ondragenter',\n onDragExit: 'ondragexit',\n onDragLeave: 'ondragleave',\n onDragOver: 'ondragover',\n onDragStart: 'ondragstart',\n onDrop: 'ondrop',\n onDurationChange: 'ondurationchange',\n onEmptied: 'onemptied',\n onEnd: 'onend',\n onEnded: 'onended',\n onError: 'onerror',\n onFocus: 'onfocus',\n onFocusIn: 'onfocusin',\n onFocusOut: 'onfocusout',\n onHashChange: 'onhashchange',\n onInput: 'oninput',\n onInvalid: 'oninvalid',\n onKeyDown: 'onkeydown',\n onKeyPress: 'onkeypress',\n onKeyUp: 'onkeyup',\n onLoad: 'onload',\n onLoadedData: 'onloadeddata',\n onLoadedMetadata: 'onloadedmetadata',\n onLoadStart: 'onloadstart',\n onMessage: 'onmessage',\n onMouseDown: 'onmousedown',\n onMouseEnter: 'onmouseenter',\n onMouseLeave: 'onmouseleave',\n onMouseMove: 'onmousemove',\n onMouseOut: 'onmouseout',\n onMouseOver: 'onmouseover',\n onMouseUp: 'onmouseup',\n onMouseWheel: 'onmousewheel',\n onOffline: 'onoffline',\n onOnline: 'ononline',\n onPageHide: 'onpagehide',\n onPageShow: 'onpageshow',\n onPaste: 'onpaste',\n onPause: 'onpause',\n onPlay: 'onplay',\n onPlaying: 'onplaying',\n onPopState: 'onpopstate',\n onProgress: 'onprogress',\n onRateChange: 'onratechange',\n onRepeat: 'onrepeat',\n onReset: 'onreset',\n onResize: 'onresize',\n onScroll: 'onscroll',\n onSeeked: 'onseeked',\n onSeeking: 'onseeking',\n onSelect: 'onselect',\n onShow: 'onshow',\n onStalled: 'onstalled',\n onStorage: 'onstorage',\n onSubmit: 'onsubmit',\n onSuspend: 'onsuspend',\n onTimeUpdate: 'ontimeupdate',\n onToggle: 'ontoggle',\n onUnload: 'onunload',\n onVolumeChange: 'onvolumechange',\n onWaiting: 'onwaiting',\n onZoom: 'onzoom',\n overlinePosition: 'overline-position',\n overlineThickness: 'overline-thickness',\n paintOrder: 'paint-order',\n panose1: 'panose-1',\n pointerEvents: 'pointer-events',\n referrerPolicy: 'referrerpolicy',\n renderingIntent: 'rendering-intent',\n shapeRendering: 'shape-rendering',\n stopColor: 'stop-color',\n stopOpacity: 'stop-opacity',\n strikethroughPosition: 'strikethrough-position',\n strikethroughThickness: 'strikethrough-thickness',\n strokeDashArray: 'stroke-dasharray',\n strokeDashOffset: 'stroke-dashoffset',\n strokeLineCap: 'stroke-linecap',\n strokeLineJoin: 'stroke-linejoin',\n strokeMiterLimit: 'stroke-miterlimit',\n strokeOpacity: 'stroke-opacity',\n strokeWidth: 'stroke-width',\n tabIndex: 'tabindex',\n textAnchor: 'text-anchor',\n textDecoration: 'text-decoration',\n textRendering: 'text-rendering',\n transformOrigin: 'transform-origin',\n typeOf: 'typeof',\n underlinePosition: 'underline-position',\n underlineThickness: 'underline-thickness',\n unicodeBidi: 'unicode-bidi',\n unicodeRange: 'unicode-range',\n unitsPerEm: 'units-per-em',\n vAlphabetic: 'v-alphabetic',\n vHanging: 'v-hanging',\n vIdeographic: 'v-ideographic',\n vMathematical: 'v-mathematical',\n vectorEffect: 'vector-effect',\n vertAdvY: 'vert-adv-y',\n vertOriginX: 'vert-origin-x',\n vertOriginY: 'vert-origin-y',\n wordSpacing: 'word-spacing',\n writingMode: 'writing-mode',\n xHeight: 'x-height',\n // These were camelcased in Tiny. Now lowercased in SVG 2\n playbackOrder: 'playbackorder',\n timelineBegin: 'timelinebegin'\n },\n properties: {\n about: commaOrSpaceSeparated,\n accentHeight: number,\n accumulate: null,\n additive: null,\n alignmentBaseline: null,\n alphabetic: number,\n amplitude: number,\n arabicForm: null,\n ascent: number,\n attributeName: null,\n attributeType: null,\n azimuth: number,\n bandwidth: null,\n baselineShift: null,\n baseFrequency: null,\n baseProfile: null,\n bbox: null,\n begin: null,\n bias: number,\n by: null,\n calcMode: null,\n capHeight: number,\n className: spaceSeparated,\n clip: null,\n clipPath: null,\n clipPathUnits: null,\n clipRule: null,\n color: null,\n colorInterpolation: null,\n colorInterpolationFilters: null,\n colorProfile: null,\n colorRendering: null,\n content: null,\n contentScriptType: null,\n contentStyleType: null,\n crossOrigin: null,\n cursor: null,\n cx: null,\n cy: null,\n d: null,\n dataType: null,\n defaultAction: null,\n descent: number,\n diffuseConstant: number,\n direction: null,\n display: null,\n dur: null,\n divisor: number,\n dominantBaseline: null,\n download: boolean,\n dx: null,\n dy: null,\n edgeMode: null,\n editable: null,\n elevation: number,\n enableBackground: null,\n end: null,\n event: null,\n exponent: number,\n externalResourcesRequired: null,\n fill: null,\n fillOpacity: number,\n fillRule: null,\n filter: null,\n filterRes: null,\n filterUnits: null,\n floodColor: null,\n floodOpacity: null,\n focusable: null,\n focusHighlight: null,\n fontFamily: null,\n fontSize: null,\n fontSizeAdjust: null,\n fontStretch: null,\n fontStyle: null,\n fontVariant: null,\n fontWeight: null,\n format: null,\n fr: null,\n from: null,\n fx: null,\n fy: null,\n g1: commaSeparated,\n g2: commaSeparated,\n glyphName: commaSeparated,\n glyphOrientationHorizontal: null,\n glyphOrientationVertical: null,\n glyphRef: null,\n gradientTransform: null,\n gradientUnits: null,\n handler: null,\n hanging: number,\n hatchContentUnits: null,\n hatchUnits: null,\n height: null,\n href: null,\n hrefLang: null,\n horizAdvX: number,\n horizOriginX: number,\n horizOriginY: number,\n id: null,\n ideographic: number,\n imageRendering: null,\n initialVisibility: null,\n in: null,\n in2: null,\n intercept: number,\n k: number,\n k1: number,\n k2: number,\n k3: number,\n k4: number,\n kernelMatrix: commaOrSpaceSeparated,\n kernelUnitLength: null,\n keyPoints: null, // SEMI_COLON_SEPARATED\n keySplines: null, // SEMI_COLON_SEPARATED\n keyTimes: null, // SEMI_COLON_SEPARATED\n kerning: null,\n lang: null,\n lengthAdjust: null,\n letterSpacing: null,\n lightingColor: null,\n limitingConeAngle: number,\n local: null,\n markerEnd: null,\n markerMid: null,\n markerStart: null,\n markerHeight: null,\n markerUnits: null,\n markerWidth: null,\n mask: null,\n maskContentUnits: null,\n maskUnits: null,\n mathematical: null,\n max: null,\n media: null,\n mediaCharacterEncoding: null,\n mediaContentEncodings: null,\n mediaSize: number,\n mediaTime: null,\n method: null,\n min: null,\n mode: null,\n name: null,\n navDown: null,\n navDownLeft: null,\n navDownRight: null,\n navLeft: null,\n navNext: null,\n navPrev: null,\n navRight: null,\n navUp: null,\n navUpLeft: null,\n navUpRight: null,\n numOctaves: null,\n observer: null,\n offset: null,\n onAbort: null,\n onActivate: null,\n onAfterPrint: null,\n onBeforePrint: null,\n onBegin: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnd: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFocusIn: null,\n onFocusOut: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadStart: null,\n onMessage: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onMouseWheel: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRepeat: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onShow: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onZoom: null,\n opacity: null,\n operator: null,\n order: null,\n orient: null,\n orientation: null,\n origin: null,\n overflow: null,\n overlay: null,\n overlinePosition: number,\n overlineThickness: number,\n paintOrder: null,\n panose1: null,\n path: null,\n pathLength: number,\n patternContentUnits: null,\n patternTransform: null,\n patternUnits: null,\n phase: null,\n ping: spaceSeparated,\n pitch: null,\n playbackOrder: null,\n pointerEvents: null,\n points: null,\n pointsAtX: number,\n pointsAtY: number,\n pointsAtZ: number,\n preserveAlpha: null,\n preserveAspectRatio: null,\n primitiveUnits: null,\n propagate: null,\n property: commaOrSpaceSeparated,\n r: null,\n radius: null,\n referrerPolicy: null,\n refX: null,\n refY: null,\n rel: commaOrSpaceSeparated,\n rev: commaOrSpaceSeparated,\n renderingIntent: null,\n repeatCount: null,\n repeatDur: null,\n requiredExtensions: commaOrSpaceSeparated,\n requiredFeatures: commaOrSpaceSeparated,\n requiredFonts: commaOrSpaceSeparated,\n requiredFormats: commaOrSpaceSeparated,\n resource: null,\n restart: null,\n result: null,\n rotate: null,\n rx: null,\n ry: null,\n scale: null,\n seed: null,\n shapeRendering: null,\n side: null,\n slope: null,\n snapshotTime: null,\n specularConstant: number,\n specularExponent: number,\n spreadMethod: null,\n spacing: null,\n startOffset: null,\n stdDeviation: null,\n stemh: null,\n stemv: null,\n stitchTiles: null,\n stopColor: null,\n stopOpacity: null,\n strikethroughPosition: number,\n strikethroughThickness: number,\n string: null,\n stroke: null,\n strokeDashArray: commaOrSpaceSeparated,\n strokeDashOffset: null,\n strokeLineCap: null,\n strokeLineJoin: null,\n strokeMiterLimit: number,\n strokeOpacity: number,\n strokeWidth: null,\n style: null,\n surfaceScale: number,\n syncBehavior: null,\n syncBehaviorDefault: null,\n syncMaster: null,\n syncTolerance: null,\n syncToleranceDefault: null,\n systemLanguage: commaOrSpaceSeparated,\n tabIndex: number,\n tableValues: null,\n target: null,\n targetX: number,\n targetY: number,\n textAnchor: null,\n textDecoration: null,\n textRendering: null,\n textLength: null,\n timelineBegin: null,\n title: null,\n transformBehavior: null,\n type: null,\n typeOf: commaOrSpaceSeparated,\n to: null,\n transform: null,\n transformOrigin: null,\n u1: null,\n u2: null,\n underlinePosition: number,\n underlineThickness: number,\n unicode: null,\n unicodeBidi: null,\n unicodeRange: null,\n unitsPerEm: number,\n values: null,\n vAlphabetic: number,\n vMathematical: number,\n vectorEffect: null,\n vHanging: number,\n vIdeographic: number,\n version: null,\n vertAdvY: number,\n vertOriginX: number,\n vertOriginY: number,\n viewBox: null,\n viewTarget: null,\n visibility: null,\n width: null,\n widths: null,\n wordSpacing: null,\n writingMode: null,\n x: null,\n x1: null,\n x2: null,\n xChannelSelector: null,\n xHeight: number,\n y: null,\n y1: null,\n y2: null,\n yChannelSelector: null,\n z: null,\n zoomAndPan: null\n },\n space: 'svg',\n transform: caseSensitiveTransform\n})\n", "import {create} from './util/create.js'\n\nexport const xlink = create({\n properties: {\n xLinkActuate: null,\n xLinkArcRole: null,\n xLinkHref: null,\n xLinkRole: null,\n xLinkShow: null,\n xLinkTitle: null,\n xLinkType: null\n },\n space: 'xlink',\n transform(_, property) {\n return 'xlink:' + property.slice(5).toLowerCase()\n }\n})\n", "import {create} from './util/create.js'\nimport {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\n\nexport const xmlns = create({\n attributes: {xmlnsxlink: 'xmlns:xlink'},\n properties: {xmlnsXLink: null, xmlns: null},\n space: 'xmlns',\n transform: caseInsensitiveTransform\n})\n", "import {create} from './util/create.js'\n\nexport const xml = create({\n properties: {xmlBase: null, xmlLang: null, xmlSpace: null},\n space: 'xml',\n transform(_, property) {\n return 'xml:' + property.slice(3).toLowerCase()\n }\n})\n", "/**\n * @import {Schema} from 'property-information'\n */\n\nimport {DefinedInfo} from './util/defined-info.js'\nimport {Info} from './util/info.js'\nimport {normalize} from './normalize.js'\n\nconst cap = /[A-Z]/g\nconst dash = /-[a-z]/g\nconst valid = /^data[-\\w.:]+$/i\n\n/**\n * Look up info on a property.\n *\n * In most cases the given `schema` contains info on the property.\n * All standard,\n * most legacy,\n * and some non-standard properties are supported.\n * For these cases,\n * the returned `Info` has hints about the value of the property.\n *\n * `name` can also be a valid data attribute or property,\n * in which case an `Info` object with the correctly cased `attribute` and\n * `property` is returned.\n *\n * `name` can be an unknown attribute,\n * in which case an `Info` object with `attribute` and `property` set to the\n * given name is returned.\n * It is not recommended to provide unsupported legacy or recently specced\n * properties.\n *\n *\n * @param {Schema} schema\n * Schema;\n * either the `html` or `svg` export.\n * @param {string} value\n * An attribute-like or property-like name;\n * it will be passed through `normalize` to hopefully find the correct info.\n * @returns {Info}\n * Info.\n */\nexport function find(schema, value) {\n const normal = normalize(value)\n let property = value\n let Type = Info\n\n if (normal in schema.normal) {\n return schema.property[schema.normal[normal]]\n }\n\n if (normal.length > 4 && normal.slice(0, 4) === 'data' && valid.test(value)) {\n // Attribute or property.\n if (value.charAt(4) === '-') {\n // Turn it into a property.\n const rest = value.slice(5).replace(dash, camelcase)\n property = 'data' + rest.charAt(0).toUpperCase() + rest.slice(1)\n } else {\n // Turn it into an attribute.\n const rest = value.slice(4)\n\n if (!dash.test(rest)) {\n let dashes = rest.replace(cap, kebab)\n\n if (dashes.charAt(0) !== '-') {\n dashes = '-' + dashes\n }\n\n value = 'data' + dashes\n }\n }\n\n Type = DefinedInfo\n }\n\n return new Type(property, value)\n}\n\n/**\n * @param {string} $0\n * Value.\n * @returns {string}\n * Kebab.\n */\nfunction kebab($0) {\n return '-' + $0.toLowerCase()\n}\n\n/**\n * @param {string} $0\n * Value.\n * @returns {string}\n * Camel.\n */\nfunction camelcase($0) {\n return $0.charAt(1).toUpperCase()\n}\n", "// Note: types exposed from `index.d.ts`.\nimport {merge} from './lib/util/merge.js'\nimport {aria} from './lib/aria.js'\nimport {html as htmlBase} from './lib/html.js'\nimport {svg as svgBase} from './lib/svg.js'\nimport {xlink} from './lib/xlink.js'\nimport {xmlns} from './lib/xmlns.js'\nimport {xml} from './lib/xml.js'\n\nexport {hastToReact} from './lib/hast-to-react.js'\n\nexport const html = merge([aria, htmlBase, xlink, xmlns, xml], 'html')\n\nexport {find} from './lib/find.js'\nexport {normalize} from './lib/normalize.js'\n\nexport const svg = merge([aria, svgBase, xlink, xmlns, xml], 'svg')\n", "/**\n * @callback Handler\n * Handle a value, with a certain ID field set to a certain value.\n * The ID field is passed to `zwitch`, and it\u2019s value is this function\u2019s\n * place on the `handlers` record.\n * @param {...any} parameters\n * Arbitrary parameters passed to the zwitch.\n * The first will be an object with a certain ID field set to a certain value.\n * @returns {any}\n * Anything!\n */\n\n/**\n * @callback UnknownHandler\n * Handle values that do have a certain ID field, but it\u2019s set to a value\n * that is not listed in the `handlers` record.\n * @param {unknown} value\n * An object with a certain ID field set to an unknown value.\n * @param {...any} rest\n * Arbitrary parameters passed to the zwitch.\n * @returns {any}\n * Anything!\n */\n\n/**\n * @callback InvalidHandler\n * Handle values that do not have a certain ID field.\n * @param {unknown} value\n * Any unknown value.\n * @param {...any} rest\n * Arbitrary parameters passed to the zwitch.\n * @returns {void|null|undefined|never}\n * This should crash or return nothing.\n */\n\n/**\n * @template {InvalidHandler} [Invalid=InvalidHandler]\n * @template {UnknownHandler} [Unknown=UnknownHandler]\n * @template {Record<string, Handler>} [Handlers=Record<string, Handler>]\n * @typedef Options\n * Configuration (required).\n * @property {Invalid} [invalid]\n * Handler to use for invalid values.\n * @property {Unknown} [unknown]\n * Handler to use for unknown values.\n * @property {Handlers} [handlers]\n * Handlers to use.\n */\n\nconst own = {}.hasOwnProperty\n\n/**\n * Handle values based on a field.\n *\n * @template {InvalidHandler} [Invalid=InvalidHandler]\n * @template {UnknownHandler} [Unknown=UnknownHandler]\n * @template {Record<string, Handler>} [Handlers=Record<string, Handler>]\n * @param {string} key\n * Field to switch on.\n * @param {Options<Invalid, Unknown, Handlers>} [options]\n * Configuration (required).\n * @returns {{unknown: Unknown, invalid: Invalid, handlers: Handlers, (...parameters: Parameters<Handlers[keyof Handlers]>): ReturnType<Handlers[keyof Handlers]>, (...parameters: Parameters<Unknown>): ReturnType<Unknown>}}\n */\nexport function zwitch(key, options) {\n const settings = options || {}\n\n /**\n * Handle one value.\n *\n * Based on the bound `key`, a respective handler will be called.\n * If `value` is not an object, or doesn\u2019t have a `key` property, the special\n * \u201Cinvalid\u201D handler will be called.\n * If `value` has an unknown `key`, the special \u201Cunknown\u201D handler will be\n * called.\n *\n * All arguments, and the context object, are passed through to the handler,\n * and it\u2019s result is returned.\n *\n * @this {unknown}\n * Any context object.\n * @param {unknown} [value]\n * Any value.\n * @param {...unknown} parameters\n * Arbitrary parameters passed to the zwitch.\n * @property {Handler} invalid\n * Handle for values that do not have a certain ID field.\n * @property {Handler} unknown\n * Handle values that do have a certain ID field, but it\u2019s set to a value\n * that is not listed in the `handlers` record.\n * @property {Handlers} handlers\n * Record of handlers.\n * @returns {unknown}\n * Anything.\n */\n function one(value, ...parameters) {\n /** @type {Handler|undefined} */\n let fn = one.invalid\n const handlers = one.handlers\n\n if (value && own.call(value, key)) {\n // @ts-expect-error Indexable.\n const id = String(value[key])\n // @ts-expect-error Indexable.\n fn = own.call(handlers, id) ? handlers[id] : one.unknown\n }\n\n if (fn) {\n return fn.call(this, value, ...parameters)\n }\n }\n\n one.handlers = settings.handlers || {}\n one.invalid = settings.invalid\n one.unknown = settings.unknown\n\n // @ts-expect-error: matches!\n return one\n}\n", "/**\n * @typedef CoreOptions\n * @property {ReadonlyArray<string>} [subset=[]]\n * Whether to only escape the given subset of characters.\n * @property {boolean} [escapeOnly=false]\n * Whether to only escape possibly dangerous characters.\n * Those characters are `\"`, `&`, `'`, `<`, `>`, and `` ` ``.\n *\n * @typedef FormatOptions\n * @property {(code: number, next: number, options: CoreWithFormatOptions) => string} format\n * Format strategy.\n *\n * @typedef {CoreOptions & FormatOptions & import('./util/format-smart.js').FormatSmartOptions} CoreWithFormatOptions\n */\n\nconst defaultSubsetRegex = /[\"&'<>`]/g\nconst surrogatePairsRegex = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g\nconst controlCharactersRegex =\n // eslint-disable-next-line no-control-regex, unicorn/no-hex-escape\n /[\\x01-\\t\\v\\f\\x0E-\\x1F\\x7F\\x81\\x8D\\x8F\\x90\\x9D\\xA0-\\uFFFF]/g\nconst regexEscapeRegex = /[|\\\\{}()[\\]^$+*?.]/g\n\n/** @type {WeakMap<ReadonlyArray<string>, RegExp>} */\nconst subsetToRegexCache = new WeakMap()\n\n/**\n * Encode certain characters in `value`.\n *\n * @param {string} value\n * @param {CoreWithFormatOptions} options\n * @returns {string}\n */\nexport function core(value, options) {\n value = value.replace(\n options.subset\n ? charactersToExpressionCached(options.subset)\n : defaultSubsetRegex,\n basic\n )\n\n if (options.subset || options.escapeOnly) {\n return value\n }\n\n return (\n value\n // Surrogate pairs.\n .replace(surrogatePairsRegex, surrogate)\n // BMP control characters (C0 except for LF, CR, SP; DEL; and some more\n // non-ASCII ones).\n .replace(controlCharactersRegex, basic)\n )\n\n /**\n * @param {string} pair\n * @param {number} index\n * @param {string} all\n */\n function surrogate(pair, index, all) {\n return options.format(\n (pair.charCodeAt(0) - 0xd800) * 0x400 +\n pair.charCodeAt(1) -\n 0xdc00 +\n 0x10000,\n all.charCodeAt(index + 2),\n options\n )\n }\n\n /**\n * @param {string} character\n * @param {number} index\n * @param {string} all\n */\n function basic(character, index, all) {\n return options.format(\n character.charCodeAt(0),\n all.charCodeAt(index + 1),\n options\n )\n }\n}\n\n/**\n * A wrapper function that caches the result of `charactersToExpression` with a WeakMap.\n * This can improve performance when tooling calls `charactersToExpression` repeatedly\n * with the same subset.\n *\n * @param {ReadonlyArray<string>} subset\n * @returns {RegExp}\n */\nfunction charactersToExpressionCached(subset) {\n let cached = subsetToRegexCache.get(subset)\n\n if (!cached) {\n cached = charactersToExpression(subset)\n subsetToRegexCache.set(subset, cached)\n }\n\n return cached\n}\n\n/**\n * @param {ReadonlyArray<string>} subset\n * @returns {RegExp}\n */\nfunction charactersToExpression(subset) {\n /** @type {Array<string>} */\n const groups = []\n let index = -1\n\n while (++index < subset.length) {\n groups.push(subset[index].replace(regexEscapeRegex, '\\\\$&'))\n }\n\n return new RegExp('(?:' + groups.join('|') + ')', 'g')\n}\n", "const hexadecimalRegex = /[\\dA-Fa-f]/\n\n/**\n * Configurable ways to encode characters as hexadecimal references.\n *\n * @param {number} code\n * @param {number} next\n * @param {boolean|undefined} omit\n * @returns {string}\n */\nexport function toHexadecimal(code, next, omit) {\n const value = '&#x' + code.toString(16).toUpperCase()\n return omit && next && !hexadecimalRegex.test(String.fromCharCode(next))\n ? value\n : value + ';'\n}\n", "const decimalRegex = /\\d/\n\n/**\n * Configurable ways to encode characters as decimal references.\n *\n * @param {number} code\n * @param {number} next\n * @param {boolean|undefined} omit\n * @returns {string}\n */\nexport function toDecimal(code, next, omit) {\n const value = '&#' + String(code)\n return omit && next && !decimalRegex.test(String.fromCharCode(next))\n ? value\n : value + ';'\n}\n", "/**\n * List of legacy HTML named character references that don\u2019t need a trailing semicolon.\n *\n * @type {Array<string>}\n */\nexport const characterEntitiesLegacy = [\n 'AElig',\n 'AMP',\n 'Aacute',\n 'Acirc',\n 'Agrave',\n 'Aring',\n 'Atilde',\n 'Auml',\n 'COPY',\n 'Ccedil',\n 'ETH',\n 'Eacute',\n 'Ecirc',\n 'Egrave',\n 'Euml',\n 'GT',\n 'Iacute',\n 'Icirc',\n 'Igrave',\n 'Iuml',\n 'LT',\n 'Ntilde',\n 'Oacute',\n 'Ocirc',\n 'Ograve',\n 'Oslash',\n 'Otilde',\n 'Ouml',\n 'QUOT',\n 'REG',\n 'THORN',\n 'Uacute',\n 'Ucirc',\n 'Ugrave',\n 'Uuml',\n 'Yacute',\n 'aacute',\n 'acirc',\n 'acute',\n 'aelig',\n 'agrave',\n 'amp',\n 'aring',\n 'atilde',\n 'auml',\n 'brvbar',\n 'ccedil',\n 'cedil',\n 'cent',\n 'copy',\n 'curren',\n 'deg',\n 'divide',\n 'eacute',\n 'ecirc',\n 'egrave',\n 'eth',\n 'euml',\n 'frac12',\n 'frac14',\n 'frac34',\n 'gt',\n 'iacute',\n 'icirc',\n 'iexcl',\n 'igrave',\n 'iquest',\n 'iuml',\n 'laquo',\n 'lt',\n 'macr',\n 'micro',\n 'middot',\n 'nbsp',\n 'not',\n 'ntilde',\n 'oacute',\n 'ocirc',\n 'ograve',\n 'ordf',\n 'ordm',\n 'oslash',\n 'otilde',\n 'ouml',\n 'para',\n 'plusmn',\n 'pound',\n 'quot',\n 'raquo',\n 'reg',\n 'sect',\n 'shy',\n 'sup1',\n 'sup2',\n 'sup3',\n 'szlig',\n 'thorn',\n 'times',\n 'uacute',\n 'ucirc',\n 'ugrave',\n 'uml',\n 'uuml',\n 'yacute',\n 'yen',\n 'yuml'\n]\n", "/**\n * Map of named character references from HTML 4.\n *\n * @type {Record<string, string>}\n */\nexport const characterEntitiesHtml4 = {\n nbsp: '\u00A0',\n iexcl: '\u00A1',\n cent: '\u00A2',\n pound: '\u00A3',\n curren: '\u00A4',\n yen: '\u00A5',\n brvbar: '\u00A6',\n sect: '\u00A7',\n uml: '\u00A8',\n copy: '\u00A9',\n ordf: '\u00AA',\n laquo: '\u00AB',\n not: '\u00AC',\n shy: '\u00AD',\n reg: '\u00AE',\n macr: '\u00AF',\n deg: '\u00B0',\n plusmn: '\u00B1',\n sup2: '\u00B2',\n sup3: '\u00B3',\n acute: '\u00B4',\n micro: '\u00B5',\n para: '\u00B6',\n middot: '\u00B7',\n cedil: '\u00B8',\n sup1: '\u00B9',\n ordm: '\u00BA',\n raquo: '\u00BB',\n frac14: '\u00BC',\n frac12: '\u00BD',\n frac34: '\u00BE',\n iquest: '\u00BF',\n Agrave: '\u00C0',\n Aacute: '\u00C1',\n Acirc: '\u00C2',\n Atilde: '\u00C3',\n Auml: '\u00C4',\n Aring: '\u00C5',\n AElig: '\u00C6',\n Ccedil: '\u00C7',\n Egrave: '\u00C8',\n Eacute: '\u00C9',\n Ecirc: '\u00CA',\n Euml: '\u00CB',\n Igrave: '\u00CC',\n Iacute: '\u00CD',\n Icirc: '\u00CE',\n Iuml: '\u00CF',\n ETH: '\u00D0',\n Ntilde: '\u00D1',\n Ograve: '\u00D2',\n Oacute: '\u00D3',\n Ocirc: '\u00D4',\n Otilde: '\u00D5',\n Ouml: '\u00D6',\n times: '\u00D7',\n Oslash: '\u00D8',\n Ugrave: '\u00D9',\n Uacute: '\u00DA',\n Ucirc: '\u00DB',\n Uuml: '\u00DC',\n Yacute: '\u00DD',\n THORN: '\u00DE',\n szlig: '\u00DF',\n agrave: '\u00E0',\n aacute: '\u00E1',\n acirc: '\u00E2',\n atilde: '\u00E3',\n auml: '\u00E4',\n aring: '\u00E5',\n aelig: '\u00E6',\n ccedil: '\u00E7',\n egrave: '\u00E8',\n eacute: '\u00E9',\n ecirc: '\u00EA',\n euml: '\u00EB',\n igrave: '\u00EC',\n iacute: '\u00ED',\n icirc: '\u00EE',\n iuml: '\u00EF',\n eth: '\u00F0',\n ntilde: '\u00F1',\n ograve: '\u00F2',\n oacute: '\u00F3',\n ocirc: '\u00F4',\n otilde: '\u00F5',\n ouml: '\u00F6',\n divide: '\u00F7',\n oslash: '\u00F8',\n ugrave: '\u00F9',\n uacute: '\u00FA',\n ucirc: '\u00FB',\n uuml: '\u00FC',\n yacute: '\u00FD',\n thorn: '\u00FE',\n yuml: '\u00FF',\n fnof: '\u0192',\n Alpha: '\u0391',\n Beta: '\u0392',\n Gamma: '\u0393',\n Delta: '\u0394',\n Epsilon: '\u0395',\n Zeta: '\u0396',\n Eta: '\u0397',\n Theta: '\u0398',\n Iota: '\u0399',\n Kappa: '\u039A',\n Lambda: '\u039B',\n Mu: '\u039C',\n Nu: '\u039D',\n Xi: '\u039E',\n Omicron: '\u039F',\n Pi: '\u03A0',\n Rho: '\u03A1',\n Sigma: '\u03A3',\n Tau: '\u03A4',\n Upsilon: '\u03A5',\n Phi: '\u03A6',\n Chi: '\u03A7',\n Psi: '\u03A8',\n Omega: '\u03A9',\n alpha: '\u03B1',\n beta: '\u03B2',\n gamma: '\u03B3',\n delta: '\u03B4',\n epsilon: '\u03B5',\n zeta: '\u03B6',\n eta: '\u03B7',\n theta: '\u03B8',\n iota: '\u03B9',\n kappa: '\u03BA',\n lambda: '\u03BB',\n mu: '\u03BC',\n nu: '\u03BD',\n xi: '\u03BE',\n omicron: '\u03BF',\n pi: '\u03C0',\n rho: '\u03C1',\n sigmaf: '\u03C2',\n sigma: '\u03C3',\n tau: '\u03C4',\n upsilon: '\u03C5',\n phi: '\u03C6',\n chi: '\u03C7',\n psi: '\u03C8',\n omega: '\u03C9',\n thetasym: '\u03D1',\n upsih: '\u03D2',\n piv: '\u03D6',\n bull: '\u2022',\n hellip: '\u2026',\n prime: '\u2032',\n Prime: '\u2033',\n oline: '\u203E',\n frasl: '\u2044',\n weierp: '\u2118',\n image: '\u2111',\n real: '\u211C',\n trade: '\u2122',\n alefsym: '\u2135',\n larr: '\u2190',\n uarr: '\u2191',\n rarr: '\u2192',\n darr: '\u2193',\n harr: '\u2194',\n crarr: '\u21B5',\n lArr: '\u21D0',\n uArr: '\u21D1',\n rArr: '\u21D2',\n dArr: '\u21D3',\n hArr: '\u21D4',\n forall: '\u2200',\n part: '\u2202',\n exist: '\u2203',\n empty: '\u2205',\n nabla: '\u2207',\n isin: '\u2208',\n notin: '\u2209',\n ni: '\u220B',\n prod: '\u220F',\n sum: '\u2211',\n minus: '\u2212',\n lowast: '\u2217',\n radic: '\u221A',\n prop: '\u221D',\n infin: '\u221E',\n ang: '\u2220',\n and: '\u2227',\n or: '\u2228',\n cap: '\u2229',\n cup: '\u222A',\n int: '\u222B',\n there4: '\u2234',\n sim: '\u223C',\n cong: '\u2245',\n asymp: '\u2248',\n ne: '\u2260',\n equiv: '\u2261',\n le: '\u2264',\n ge: '\u2265',\n sub: '\u2282',\n sup: '\u2283',\n nsub: '\u2284',\n sube: '\u2286',\n supe: '\u2287',\n oplus: '\u2295',\n otimes: '\u2297',\n perp: '\u22A5',\n sdot: '\u22C5',\n lceil: '\u2308',\n rceil: '\u2309',\n lfloor: '\u230A',\n rfloor: '\u230B',\n lang: '\u2329',\n rang: '\u232A',\n loz: '\u25CA',\n spades: '\u2660',\n clubs: '\u2663',\n hearts: '\u2665',\n diams: '\u2666',\n quot: '\"',\n amp: '&',\n lt: '<',\n gt: '>',\n OElig: '\u0152',\n oelig: '\u0153',\n Scaron: '\u0160',\n scaron: '\u0161',\n Yuml: '\u0178',\n circ: '\u02C6',\n tilde: '\u02DC',\n ensp: '\u2002',\n emsp: '\u2003',\n thinsp: '\u2009',\n zwnj: '\u200C',\n zwj: '\u200D',\n lrm: '\u200E',\n rlm: '\u200F',\n ndash: '\u2013',\n mdash: '\u2014',\n lsquo: '\u2018',\n rsquo: '\u2019',\n sbquo: '\u201A',\n ldquo: '\u201C',\n rdquo: '\u201D',\n bdquo: '\u201E',\n dagger: '\u2020',\n Dagger: '\u2021',\n permil: '\u2030',\n lsaquo: '\u2039',\n rsaquo: '\u203A',\n euro: '\u20AC'\n}\n", "/**\n * List of legacy (that don\u2019t need a trailing `;`) named references which could,\n * depending on what follows them, turn into a different meaning\n *\n * @type {Array<string>}\n */\nexport const dangerous = [\n 'cent',\n 'copy',\n 'divide',\n 'gt',\n 'lt',\n 'not',\n 'para',\n 'times'\n]\n", "import {characterEntitiesLegacy} from 'character-entities-legacy'\nimport {characterEntitiesHtml4} from 'character-entities-html4'\nimport {dangerous} from '../constant/dangerous.js'\n\nconst own = {}.hasOwnProperty\n\n/**\n * `characterEntitiesHtml4` but inverted.\n *\n * @type {Record<string, string>}\n */\nconst characters = {}\n\n/** @type {string} */\nlet key\n\nfor (key in characterEntitiesHtml4) {\n if (own.call(characterEntitiesHtml4, key)) {\n characters[characterEntitiesHtml4[key]] = key\n }\n}\n\nconst notAlphanumericRegex = /[^\\dA-Za-z]/\n\n/**\n * Configurable ways to encode characters as named references.\n *\n * @param {number} code\n * @param {number} next\n * @param {boolean|undefined} omit\n * @param {boolean|undefined} attribute\n * @returns {string}\n */\nexport function toNamed(code, next, omit, attribute) {\n const character = String.fromCharCode(code)\n\n if (own.call(characters, character)) {\n const name = characters[character]\n const value = '&' + name\n\n if (\n omit &&\n characterEntitiesLegacy.includes(name) &&\n !dangerous.includes(name) &&\n (!attribute ||\n (next &&\n next !== 61 /* `=` */ &&\n notAlphanumericRegex.test(String.fromCharCode(next))))\n ) {\n return value\n }\n\n return value + ';'\n }\n\n return ''\n}\n", "/**\n * @typedef FormatSmartOptions\n * @property {boolean} [useNamedReferences=false]\n * Prefer named character references (`&`) where possible.\n * @property {boolean} [useShortestReferences=false]\n * Prefer the shortest possible reference, if that results in less bytes.\n * **Note**: `useNamedReferences` can be omitted when using `useShortestReferences`.\n * @property {boolean} [omitOptionalSemicolons=false]\n * Whether to omit semicolons when possible.\n * **Note**: This creates what HTML calls \u201Cparse errors\u201D but is otherwise still valid HTML \u2014 don\u2019t use this except when building a minifier.\n * Omitting semicolons is possible for certain named and numeric references in some cases.\n * @property {boolean} [attribute=false]\n * Create character references which don\u2019t fail in attributes.\n * **Note**: `attribute` only applies when operating dangerously with\n * `omitOptionalSemicolons: true`.\n */\n\nimport {toHexadecimal} from './to-hexadecimal.js'\nimport {toDecimal} from './to-decimal.js'\nimport {toNamed} from './to-named.js'\n\n/**\n * Configurable ways to encode a character yielding pretty or small results.\n *\n * @param {number} code\n * @param {number} next\n * @param {FormatSmartOptions} options\n * @returns {string}\n */\nexport function formatSmart(code, next, options) {\n let numeric = toHexadecimal(code, next, options.omitOptionalSemicolons)\n /** @type {string|undefined} */\n let named\n\n if (options.useNamedReferences || options.useShortestReferences) {\n named = toNamed(\n code,\n next,\n options.omitOptionalSemicolons,\n options.attribute\n )\n }\n\n // Use the shortest numeric reference when requested.\n // A simple algorithm would use decimal for all code points under 100, as\n // those are shorter than hexadecimal:\n //\n // * `c` vs `c` (decimal shorter)\n // * `d` vs `d` (equal)\n //\n // However, because we take `next` into consideration when `omit` is used,\n // And it would be possible that decimals are shorter on bigger values as\n // well if `next` is hexadecimal but not decimal, we instead compare both.\n if (\n (options.useShortestReferences || !named) &&\n options.useShortestReferences\n ) {\n const decimal = toDecimal(code, next, options.omitOptionalSemicolons)\n\n if (decimal.length < numeric.length) {\n numeric = decimal\n }\n }\n\n return named &&\n (!options.useShortestReferences || named.length < numeric.length)\n ? named\n : numeric\n}\n", "/**\n * @typedef {import('./core.js').CoreOptions & import('./util/format-smart.js').FormatSmartOptions} Options\n * @typedef {import('./core.js').CoreOptions} LightOptions\n */\n\nimport {core} from './core.js'\nimport {formatSmart} from './util/format-smart.js'\nimport {formatBasic} from './util/format-basic.js'\n\n/**\n * Encode special characters in `value`.\n *\n * @param {string} value\n * Value to encode.\n * @param {Options} [options]\n * Configuration.\n * @returns {string}\n * Encoded value.\n */\nexport function stringifyEntities(value, options) {\n return core(value, Object.assign({format: formatSmart}, options))\n}\n\n/**\n * Encode special characters in `value` as hexadecimals.\n *\n * @param {string} value\n * Value to encode.\n * @param {LightOptions} [options]\n * Configuration.\n * @returns {string}\n * Encoded value.\n */\nexport function stringifyEntitiesLight(value, options) {\n return core(value, Object.assign({format: formatBasic}, options))\n}\n", "/**\n * @import {Comment, Parents} from 'hast'\n * @import {State} from '../index.js'\n */\n\nimport {stringifyEntities} from 'stringify-entities'\n\nconst htmlCommentRegex = /^>|^->|<!--|-->|--!>|<!-$/g\n\n// Declare arrays as variables so it can be cached by `stringifyEntities`\nconst bogusCommentEntitySubset = ['>']\nconst commentEntitySubset = ['<', '>']\n\n/**\n * Serialize a comment.\n *\n * @param {Comment} node\n * Node to handle.\n * @param {number | undefined} _1\n * Index of `node` in `parent.\n * @param {Parents | undefined} _2\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function comment(node, _1, _2, state) {\n // See: <https://html.spec.whatwg.org/multipage/syntax.html#comments>\n return state.settings.bogusComments\n ? '<?' +\n stringifyEntities(\n node.value,\n Object.assign({}, state.settings.characterReferences, {\n subset: bogusCommentEntitySubset\n })\n ) +\n '>'\n : '<!--' + node.value.replace(htmlCommentRegex, encode) + '-->'\n\n /**\n * @param {string} $0\n */\n function encode($0) {\n return stringifyEntities(\n $0,\n Object.assign({}, state.settings.characterReferences, {\n subset: commentEntitySubset\n })\n )\n }\n}\n", "/**\n * @import {Doctype, Parents} from 'hast'\n * @import {State} from '../index.js'\n */\n\n/**\n * Serialize a doctype.\n *\n * @param {Doctype} _1\n * Node to handle.\n * @param {number | undefined} _2\n * Index of `node` in `parent.\n * @param {Parents | undefined} _3\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function doctype(_1, _2, _3, state) {\n return (\n '<!' +\n (state.settings.upperDoctype ? 'DOCTYPE' : 'doctype') +\n (state.settings.tightDoctype ? '' : ' ') +\n 'html>'\n )\n}\n", "/**\n * Count how often a character (or substring) is used in a string.\n *\n * @param {string} value\n * Value to search in.\n * @param {string} character\n * Character (or substring) to look for.\n * @return {number}\n * Number of times `character` occurred in `value`.\n */\nexport function ccount(value, character) {\n const source = String(value)\n\n if (typeof character !== 'string') {\n throw new TypeError('Expected character')\n }\n\n let count = 0\n let index = source.indexOf(character)\n\n while (index !== -1) {\n count++\n index = source.indexOf(character, index + character.length)\n }\n\n return count\n}\n", "/**\n * @typedef Options\n * Configuration for `stringify`.\n * @property {boolean} [padLeft=true]\n * Whether to pad a space before a token.\n * @property {boolean} [padRight=false]\n * Whether to pad a space after a token.\n */\n\n/**\n * @typedef {Options} StringifyOptions\n * Please use `StringifyOptions` instead.\n */\n\n/**\n * Parse comma-separated tokens to an array.\n *\n * @param {string} value\n * Comma-separated tokens.\n * @returns {Array<string>}\n * List of tokens.\n */\nexport function parse(value) {\n /** @type {Array<string>} */\n const tokens = []\n const input = String(value || '')\n let index = input.indexOf(',')\n let start = 0\n /** @type {boolean} */\n let end = false\n\n while (!end) {\n if (index === -1) {\n index = input.length\n end = true\n }\n\n const token = input.slice(start, index).trim()\n\n if (token || !end) {\n tokens.push(token)\n }\n\n start = index + 1\n index = input.indexOf(',', start)\n }\n\n return tokens\n}\n\n/**\n * Serialize an array of strings or numbers to comma-separated tokens.\n *\n * @param {Array<string|number>} values\n * List of tokens.\n * @param {Options} [options]\n * Configuration for `stringify` (optional).\n * @returns {string}\n * Comma-separated tokens.\n */\nexport function stringify(values, options) {\n const settings = options || {}\n\n // Ensure the last empty entry is seen.\n const input = values[values.length - 1] === '' ? [...values, ''] : values\n\n return input\n .join(\n (settings.padRight ? ' ' : '') +\n ',' +\n (settings.padLeft === false ? '' : ' ')\n )\n .trim()\n}\n", "/**\n * Parse space-separated tokens to an array of strings.\n *\n * @param {string} value\n * Space-separated tokens.\n * @returns {Array<string>}\n * List of tokens.\n */\nexport function parse(value) {\n const input = String(value || '').trim()\n return input ? input.split(/[ \\t\\n\\r\\f]+/g) : []\n}\n\n/**\n * Serialize an array of strings as space separated-tokens.\n *\n * @param {Array<string|number>} values\n * List of tokens.\n * @returns {string}\n * Space-separated tokens.\n */\nexport function stringify(values) {\n return values.join(' ').trim()\n}\n", "/**\n * @typedef {import('hast').Nodes} Nodes\n */\n\n// HTML whitespace expression.\n// See <https://infra.spec.whatwg.org/#ascii-whitespace>.\nconst re = /[ \\t\\n\\f\\r]/g\n\n/**\n * Check if the given value is *inter-element whitespace*.\n *\n * @param {Nodes | string} thing\n * Thing to check (`Node` or `string`).\n * @returns {boolean}\n * Whether the `value` is inter-element whitespace (`boolean`): consisting of\n * zero or more of space, tab (`\\t`), line feed (`\\n`), carriage return\n * (`\\r`), or form feed (`\\f`); if a node is passed it must be a `Text` node,\n * whose `value` field is checked.\n */\nexport function whitespace(thing) {\n return typeof thing === 'object'\n ? thing.type === 'text'\n ? empty(thing.value)\n : false\n : empty(thing)\n}\n\n/**\n * @param {string} value\n * @returns {boolean}\n */\nfunction empty(value) {\n return value.replace(re, '') === ''\n}\n", "/**\n * @import {Parents, RootContent} from 'hast'\n */\n\nimport {whitespace} from 'hast-util-whitespace'\n\nexport const siblingAfter = siblings(1)\nexport const siblingBefore = siblings(-1)\n\n/** @type {Array<RootContent>} */\nconst emptyChildren = []\n\n/**\n * Factory to check siblings in a direction.\n *\n * @param {number} increment\n */\nfunction siblings(increment) {\n return sibling\n\n /**\n * Find applicable siblings in a direction.\n *\n * @template {Parents} Parent\n * Parent type.\n * @param {Parent | undefined} parent\n * Parent.\n * @param {number | undefined} index\n * Index of child in `parent`.\n * @param {boolean | undefined} [includeWhitespace=false]\n * Whether to include whitespace (default: `false`).\n * @returns {Parent extends {children: Array<infer Child>} ? Child | undefined : never}\n * Child of parent.\n */\n function sibling(parent, index, includeWhitespace) {\n const siblings = parent ? parent.children : emptyChildren\n let offset = (index || 0) + increment\n let next = siblings[offset]\n\n if (!includeWhitespace) {\n while (next && whitespace(next)) {\n offset += increment\n next = siblings[offset]\n }\n }\n\n // @ts-expect-error: it\u2019s a correct child.\n return next\n }\n}\n", "/**\n * @import {Element, Parents} from 'hast'\n */\n\n/**\n * @callback OmitHandle\n * Check if a tag can be omitted.\n * @param {Element} element\n * Element to check.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether to omit a tag.\n *\n */\n\nconst own = {}.hasOwnProperty\n\n/**\n * Factory to check if a given node can have a tag omitted.\n *\n * @param {Record<string, OmitHandle>} handlers\n * Omission handlers, where each key is a tag name, and each value is the\n * corresponding handler.\n * @returns {OmitHandle}\n * Whether to omit a tag of an element.\n */\nexport function omission(handlers) {\n return omit\n\n /**\n * Check if a given node can have a tag omitted.\n *\n * @type {OmitHandle}\n */\n function omit(node, index, parent) {\n return (\n own.call(handlers, node.tagName) &&\n handlers[node.tagName](node, index, parent)\n )\n }\n}\n", "/**\n * @import {Element, Parents} from 'hast'\n */\n\nimport {whitespace} from 'hast-util-whitespace'\nimport {siblingAfter} from './util/siblings.js'\nimport {omission} from './omission.js'\n\nexport const closing = omission({\n body,\n caption: headOrColgroupOrCaption,\n colgroup: headOrColgroupOrCaption,\n dd,\n dt,\n head: headOrColgroupOrCaption,\n html,\n li,\n optgroup,\n option,\n p,\n rp: rubyElement,\n rt: rubyElement,\n tbody,\n td: cells,\n tfoot,\n th: cells,\n thead,\n tr\n})\n\n/**\n * Macro for `</head>`, `</colgroup>`, and `</caption>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction headOrColgroupOrCaption(_, index, parent) {\n const next = siblingAfter(parent, index, true)\n return (\n !next ||\n (next.type !== 'comment' &&\n !(next.type === 'text' && whitespace(next.value.charAt(0))))\n )\n}\n\n/**\n * Whether to omit `</html>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction html(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || next.type !== 'comment'\n}\n\n/**\n * Whether to omit `</body>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction body(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || next.type !== 'comment'\n}\n\n/**\n * Whether to omit `</p>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction p(_, index, parent) {\n const next = siblingAfter(parent, index)\n return next\n ? next.type === 'element' &&\n (next.tagName === 'address' ||\n next.tagName === 'article' ||\n next.tagName === 'aside' ||\n next.tagName === 'blockquote' ||\n next.tagName === 'details' ||\n next.tagName === 'div' ||\n next.tagName === 'dl' ||\n next.tagName === 'fieldset' ||\n next.tagName === 'figcaption' ||\n next.tagName === 'figure' ||\n next.tagName === 'footer' ||\n next.tagName === 'form' ||\n next.tagName === 'h1' ||\n next.tagName === 'h2' ||\n next.tagName === 'h3' ||\n next.tagName === 'h4' ||\n next.tagName === 'h5' ||\n next.tagName === 'h6' ||\n next.tagName === 'header' ||\n next.tagName === 'hgroup' ||\n next.tagName === 'hr' ||\n next.tagName === 'main' ||\n next.tagName === 'menu' ||\n next.tagName === 'nav' ||\n next.tagName === 'ol' ||\n next.tagName === 'p' ||\n next.tagName === 'pre' ||\n next.tagName === 'section' ||\n next.tagName === 'table' ||\n next.tagName === 'ul')\n : !parent ||\n // Confusing parent.\n !(\n parent.type === 'element' &&\n (parent.tagName === 'a' ||\n parent.tagName === 'audio' ||\n parent.tagName === 'del' ||\n parent.tagName === 'ins' ||\n parent.tagName === 'map' ||\n parent.tagName === 'noscript' ||\n parent.tagName === 'video')\n )\n}\n\n/**\n * Whether to omit `</li>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction li(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || (next.type === 'element' && next.tagName === 'li')\n}\n\n/**\n * Whether to omit `</dt>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction dt(_, index, parent) {\n const next = siblingAfter(parent, index)\n return Boolean(\n next &&\n next.type === 'element' &&\n (next.tagName === 'dt' || next.tagName === 'dd')\n )\n}\n\n/**\n * Whether to omit `</dd>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction dd(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'dt' || next.tagName === 'dd'))\n )\n}\n\n/**\n * Whether to omit `</rt>` or `</rp>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction rubyElement(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'rp' || next.tagName === 'rt'))\n )\n}\n\n/**\n * Whether to omit `</optgroup>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction optgroup(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || (next.type === 'element' && next.tagName === 'optgroup')\n}\n\n/**\n * Whether to omit `</option>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction option(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'option' || next.tagName === 'optgroup'))\n )\n}\n\n/**\n * Whether to omit `</thead>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction thead(_, index, parent) {\n const next = siblingAfter(parent, index)\n return Boolean(\n next &&\n next.type === 'element' &&\n (next.tagName === 'tbody' || next.tagName === 'tfoot')\n )\n}\n\n/**\n * Whether to omit `</tbody>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction tbody(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'tbody' || next.tagName === 'tfoot'))\n )\n}\n\n/**\n * Whether to omit `</tfoot>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction tfoot(_, index, parent) {\n return !siblingAfter(parent, index)\n}\n\n/**\n * Whether to omit `</tr>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction tr(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || (next.type === 'element' && next.tagName === 'tr')\n}\n\n/**\n * Whether to omit `</td>` or `</th>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction cells(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'td' || next.tagName === 'th'))\n )\n}\n", "/**\n * @import {Element, Parents} from 'hast'\n */\n\nimport {whitespace} from 'hast-util-whitespace'\nimport {siblingAfter, siblingBefore} from './util/siblings.js'\nimport {closing} from './closing.js'\nimport {omission} from './omission.js'\n\nexport const opening = omission({\n body,\n colgroup,\n head,\n html,\n tbody\n})\n\n/**\n * Whether to omit `<html>`.\n *\n * @param {Element} node\n * Element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction html(node) {\n const head = siblingAfter(node, -1)\n return !head || head.type !== 'comment'\n}\n\n/**\n * Whether to omit `<head>`.\n *\n * @param {Element} node\n * Element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction head(node) {\n /** @type {Set<string>} */\n const seen = new Set()\n\n // Whether `srcdoc` or not,\n // make sure the content model at least doesn\u2019t have too many `base`s/`title`s.\n for (const child of node.children) {\n if (\n child.type === 'element' &&\n (child.tagName === 'base' || child.tagName === 'title')\n ) {\n if (seen.has(child.tagName)) return false\n seen.add(child.tagName)\n }\n }\n\n // \u201CMay be omitted if the element is empty,\n // or if the first thing inside the head element is an element.\u201D\n const child = node.children[0]\n return !child || child.type === 'element'\n}\n\n/**\n * Whether to omit `<body>`.\n *\n * @param {Element} node\n * Element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction body(node) {\n const head = siblingAfter(node, -1, true)\n\n return (\n !head ||\n (head.type !== 'comment' &&\n !(head.type === 'text' && whitespace(head.value.charAt(0))) &&\n !(\n head.type === 'element' &&\n (head.tagName === 'meta' ||\n head.tagName === 'link' ||\n head.tagName === 'script' ||\n head.tagName === 'style' ||\n head.tagName === 'template')\n ))\n )\n}\n\n/**\n * Whether to omit `<colgroup>`.\n * The spec describes some logic for the opening tag, but it\u2019s easier to\n * implement in the closing tag, to the same effect, so we handle it there\n * instead.\n *\n * @param {Element} node\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction colgroup(node, index, parent) {\n const previous = siblingBefore(parent, index)\n const head = siblingAfter(node, -1, true)\n\n // Previous colgroup was already omitted.\n if (\n parent &&\n previous &&\n previous.type === 'element' &&\n previous.tagName === 'colgroup' &&\n closing(previous, parent.children.indexOf(previous), parent)\n ) {\n return false\n }\n\n return Boolean(head && head.type === 'element' && head.tagName === 'col')\n}\n\n/**\n * Whether to omit `<tbody>`.\n *\n * @param {Element} node\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction tbody(node, index, parent) {\n const previous = siblingBefore(parent, index)\n const head = siblingAfter(node, -1)\n\n // Previous table section was already omitted.\n if (\n parent &&\n previous &&\n previous.type === 'element' &&\n (previous.tagName === 'thead' || previous.tagName === 'tbody') &&\n closing(previous, parent.children.indexOf(previous), parent)\n ) {\n return false\n }\n\n return Boolean(head && head.type === 'element' && head.tagName === 'tr')\n}\n", "/**\n * @import {Element, Parents, Properties} from 'hast'\n * @import {State} from '../index.js'\n */\n\nimport {ccount} from 'ccount'\nimport {stringify as commas} from 'comma-separated-tokens'\nimport {find, svg} from 'property-information'\nimport {stringify as spaces} from 'space-separated-tokens'\nimport {stringifyEntities} from 'stringify-entities'\nimport {closing} from '../omission/closing.js'\nimport {opening} from '../omission/opening.js'\n\n/**\n * Maps of subsets.\n *\n * Each value is a matrix of tuples.\n * The value at `0` causes parse errors, the value at `1` is valid.\n * Of both, the value at `0` is unsafe, and the value at `1` is safe.\n *\n * @type {Record<'double' | 'name' | 'single' | 'unquoted', Array<[Array<string>, Array<string>]>>}\n */\nconst constants = {\n // See: <https://html.spec.whatwg.org/#attribute-name-state>.\n name: [\n ['\\t\\n\\f\\r &/=>'.split(''), '\\t\\n\\f\\r \"&\\'/=>`'.split('')],\n ['\\0\\t\\n\\f\\r \"&\\'/<=>'.split(''), '\\0\\t\\n\\f\\r \"&\\'/<=>`'.split('')]\n ],\n // See: <https://html.spec.whatwg.org/#attribute-value-(unquoted)-state>.\n unquoted: [\n ['\\t\\n\\f\\r &>'.split(''), '\\0\\t\\n\\f\\r \"&\\'<=>`'.split('')],\n ['\\0\\t\\n\\f\\r \"&\\'<=>`'.split(''), '\\0\\t\\n\\f\\r \"&\\'<=>`'.split('')]\n ],\n // See: <https://html.spec.whatwg.org/#attribute-value-(single-quoted)-state>.\n single: [\n [\"&'\".split(''), '\"&\\'`'.split('')],\n [\"\\0&'\".split(''), '\\0\"&\\'`'.split('')]\n ],\n // See: <https://html.spec.whatwg.org/#attribute-value-(double-quoted)-state>.\n double: [\n ['\"&'.split(''), '\"&\\'`'.split('')],\n ['\\0\"&'.split(''), '\\0\"&\\'`'.split('')]\n ]\n}\n\n/**\n * Serialize an element node.\n *\n * @param {Element} node\n * Node to handle.\n * @param {number | undefined} index\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function element(node, index, parent, state) {\n const schema = state.schema\n const omit = schema.space === 'svg' ? false : state.settings.omitOptionalTags\n let selfClosing =\n schema.space === 'svg'\n ? state.settings.closeEmptyElements\n : state.settings.voids.includes(node.tagName.toLowerCase())\n /** @type {Array<string>} */\n const parts = []\n /** @type {string} */\n let last\n\n if (schema.space === 'html' && node.tagName === 'svg') {\n state.schema = svg\n }\n\n const attributes = serializeAttributes(state, node.properties)\n\n const content = state.all(\n schema.space === 'html' && node.tagName === 'template' ? node.content : node\n )\n\n state.schema = schema\n\n // If the node is categorised as void, but it has children, remove the\n // categorisation.\n // This enables for example `menuitem`s, which are void in W3C HTML but not\n // void in WHATWG HTML, to be stringified properly.\n // Note: `menuitem` has since been removed from the HTML spec, and so is no\n // longer void.\n if (content) selfClosing = false\n\n if (attributes || !omit || !opening(node, index, parent)) {\n parts.push('<', node.tagName, attributes ? ' ' + attributes : '')\n\n if (\n selfClosing &&\n (schema.space === 'svg' || state.settings.closeSelfClosing)\n ) {\n last = attributes.charAt(attributes.length - 1)\n if (\n !state.settings.tightSelfClosing ||\n last === '/' ||\n (last && last !== '\"' && last !== \"'\")\n ) {\n parts.push(' ')\n }\n\n parts.push('/')\n }\n\n parts.push('>')\n }\n\n parts.push(content)\n\n if (!selfClosing && (!omit || !closing(node, index, parent))) {\n parts.push('</' + node.tagName + '>')\n }\n\n return parts.join('')\n}\n\n/**\n * @param {State} state\n * @param {Properties | null | undefined} properties\n * @returns {string}\n */\nfunction serializeAttributes(state, properties) {\n /** @type {Array<string>} */\n const values = []\n let index = -1\n /** @type {string} */\n let key\n\n if (properties) {\n for (key in properties) {\n if (properties[key] !== null && properties[key] !== undefined) {\n const value = serializeAttribute(state, key, properties[key])\n if (value) values.push(value)\n }\n }\n }\n\n while (++index < values.length) {\n const last = state.settings.tightAttributes\n ? values[index].charAt(values[index].length - 1)\n : undefined\n\n // In tight mode, don\u2019t add a space after quoted attributes.\n if (index !== values.length - 1 && last !== '\"' && last !== \"'\") {\n values[index] += ' '\n }\n }\n\n return values.join('')\n}\n\n/**\n * @param {State} state\n * @param {string} key\n * @param {Properties[keyof Properties]} value\n * @returns {string}\n */\nfunction serializeAttribute(state, key, value) {\n const info = find(state.schema, key)\n const x =\n state.settings.allowParseErrors && state.schema.space === 'html' ? 0 : 1\n const y = state.settings.allowDangerousCharacters ? 0 : 1\n let quote = state.quote\n /** @type {string | undefined} */\n let result\n\n if (info.overloadedBoolean && (value === info.attribute || value === '')) {\n value = true\n } else if (\n (info.boolean || info.overloadedBoolean) &&\n (typeof value !== 'string' || value === info.attribute || value === '')\n ) {\n value = Boolean(value)\n }\n\n if (\n value === null ||\n value === undefined ||\n value === false ||\n (typeof value === 'number' && Number.isNaN(value))\n ) {\n return ''\n }\n\n const name = stringifyEntities(\n info.attribute,\n Object.assign({}, state.settings.characterReferences, {\n // Always encode without parse errors in non-HTML.\n subset: constants.name[x][y]\n })\n )\n\n // No value.\n // There is currently only one boolean property in SVG: `[download]` on\n // `<a>`.\n // This property does not seem to work in browsers (Firefox, Safari, Chrome),\n // so I can\u2019t test if dropping the value works.\n // But I assume that it should:\n //\n // ```html\n // <!doctype html>\n // <svg viewBox=\"0 0 100 100\">\n // <a href=https://example.com download>\n // <circle cx=50 cy=40 r=35 />\n // </a>\n // </svg>\n // ```\n //\n // See: <https://github.com/wooorm/property-information/blob/main/lib/svg.js>\n if (value === true) return name\n\n // `spaces` doesn\u2019t accept a second argument, but it\u2019s given here just to\n // keep the code cleaner.\n value = Array.isArray(value)\n ? (info.commaSeparated ? commas : spaces)(value, {\n padLeft: !state.settings.tightCommaSeparatedLists\n })\n : String(value)\n\n if (state.settings.collapseEmptyAttributes && !value) return name\n\n // Check unquoted value.\n if (state.settings.preferUnquoted) {\n result = stringifyEntities(\n value,\n Object.assign({}, state.settings.characterReferences, {\n attribute: true,\n subset: constants.unquoted[x][y]\n })\n )\n }\n\n // If we don\u2019t want unquoted, or if `value` contains character references when\n // unquoted\u2026\n if (result !== value) {\n // If the alternative is less common than `quote`, switch.\n if (\n state.settings.quoteSmart &&\n ccount(value, quote) > ccount(value, state.alternative)\n ) {\n quote = state.alternative\n }\n\n result =\n quote +\n stringifyEntities(\n value,\n Object.assign({}, state.settings.characterReferences, {\n // Always encode without parse errors in non-HTML.\n subset: (quote === \"'\" ? constants.single : constants.double)[x][y],\n attribute: true\n })\n ) +\n quote\n }\n\n // Don\u2019t add a `=` for unquoted empties.\n return name + (result ? '=' + result : result)\n}\n", "/**\n * @import {Parents, Text} from 'hast'\n * @import {Raw} from 'mdast-util-to-hast'\n * @import {State} from '../index.js'\n */\n\nimport {stringifyEntities} from 'stringify-entities'\n\n// Declare array as variable so it can be cached by `stringifyEntities`\nconst textEntitySubset = ['<', '&']\n\n/**\n * Serialize a text node.\n *\n * @param {Raw | Text} node\n * Node to handle.\n * @param {number | undefined} _\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function text(node, _, parent, state) {\n // Check if content of `node` should be escaped.\n return parent &&\n parent.type === 'element' &&\n (parent.tagName === 'script' || parent.tagName === 'style')\n ? node.value\n : stringifyEntities(\n node.value,\n Object.assign({}, state.settings.characterReferences, {\n subset: textEntitySubset\n })\n )\n}\n", "/**\n * @import {Parents} from 'hast'\n * @import {Raw} from 'mdast-util-to-hast'\n * @import {State} from '../index.js'\n */\n\nimport {text} from './text.js'\n\n/**\n * Serialize a raw node.\n *\n * @param {Raw} node\n * Node to handle.\n * @param {number | undefined} index\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function raw(node, index, parent, state) {\n return state.settings.allowDangerousHtml\n ? node.value\n : text(node, index, parent, state)\n}\n", "/**\n * @import {Parents, Root} from 'hast'\n * @import {State} from '../index.js'\n */\n\n/**\n * Serialize a root.\n *\n * @param {Root} node\n * Node to handle.\n * @param {number | undefined} _1\n * Index of `node` in `parent.\n * @param {Parents | undefined} _2\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function root(node, _1, _2, state) {\n return state.all(node)\n}\n", "/**\n * @import {Nodes, Parents} from 'hast'\n * @import {State} from '../index.js'\n */\n\nimport {zwitch} from 'zwitch'\nimport {comment} from './comment.js'\nimport {doctype} from './doctype.js'\nimport {element} from './element.js'\nimport {raw} from './raw.js'\nimport {root} from './root.js'\nimport {text} from './text.js'\n\n/**\n * @type {(node: Nodes, index: number | undefined, parent: Parents | undefined, state: State) => string}\n */\nexport const handle = zwitch('type', {\n invalid,\n unknown,\n handlers: {comment, doctype, element, raw, root, text}\n})\n\n/**\n * Fail when a non-node is found in the tree.\n *\n * @param {unknown} node\n * Unknown value.\n * @returns {never}\n * Never.\n */\nfunction invalid(node) {\n throw new Error('Expected node, not `' + node + '`')\n}\n\n/**\n * Fail when a node with an unknown type is found in the tree.\n *\n * @param {unknown} node_\n * Unknown node.\n * @returns {never}\n * Never.\n */\nfunction unknown(node_) {\n // `type` is guaranteed by runtime JS.\n const node = /** @type {Nodes} */ (node_)\n throw new Error('Cannot compile unknown node `' + node.type + '`')\n}\n", "/**\n * @import {Nodes, Parents, RootContent} from 'hast'\n * @import {Schema} from 'property-information'\n * @import {Options as StringifyEntitiesOptions} from 'stringify-entities'\n */\n\n/**\n * @typedef {Omit<StringifyEntitiesOptions, 'attribute' | 'escapeOnly' | 'subset'>} CharacterReferences\n *\n * @typedef Options\n * Configuration.\n * @property {boolean | null | undefined} [allowDangerousCharacters=false]\n * Do not encode some characters which cause XSS vulnerabilities in older\n * browsers (default: `false`).\n *\n * > \u26A0\uFE0F **Danger**: only set this if you completely trust the content.\n * @property {boolean | null | undefined} [allowDangerousHtml=false]\n * Allow `raw` nodes and insert them as raw HTML (default: `false`).\n *\n * When `false`, `Raw` nodes are encoded.\n *\n * > \u26A0\uFE0F **Danger**: only set this if you completely trust the content.\n * @property {boolean | null | undefined} [allowParseErrors=false]\n * Do not encode characters which cause parse errors (even though they work),\n * to save bytes (default: `false`).\n *\n * Not used in the SVG space.\n *\n * > \uD83D\uDC49 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn\u2019t pretty).\n * @property {boolean | null | undefined} [bogusComments=false]\n * Use \u201Cbogus comments\u201D instead of comments to save byes: `<?charlie>`\n * instead of `<!--charlie-->` (default: `false`).\n *\n * > \uD83D\uDC49 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn\u2019t pretty).\n * @property {CharacterReferences | null | undefined} [characterReferences]\n * Configure how to serialize character references (optional).\n * @property {boolean | null | undefined} [closeEmptyElements=false]\n * Close SVG elements without any content with slash (`/`) on the opening tag\n * instead of an end tag: `<circle />` instead of `<circle></circle>`\n * (default: `false`).\n *\n * See `tightSelfClosing` to control whether a space is used before the\n * slash.\n *\n * Not used in the HTML space.\n * @property {boolean | null | undefined} [closeSelfClosing=false]\n * Close self-closing nodes with an extra slash (`/`): `<img />` instead of\n * `<img>` (default: `false`).\n *\n * See `tightSelfClosing` to control whether a space is used before the\n * slash.\n *\n * Not used in the SVG space.\n * @property {boolean | null | undefined} [collapseEmptyAttributes=false]\n * Collapse empty attributes: get `class` instead of `class=\"\"` (default:\n * `false`).\n *\n * Not used in the SVG space.\n *\n * > \uD83D\uDC49 **Note**: boolean attributes (such as `hidden`) are always collapsed.\n * @property {boolean | null | undefined} [omitOptionalTags=false]\n * Omit optional opening and closing tags (default: `false`).\n *\n * For example, in `<ol><li>one</li><li>two</li></ol>`, both `</li>` closing\n * tags can be omitted.\n * The first because it\u2019s followed by another `li`, the last because it\u2019s\n * followed by nothing.\n *\n * Not used in the SVG space.\n * @property {boolean | null | undefined} [preferUnquoted=false]\n * Leave attributes unquoted if that results in less bytes (default: `false`).\n *\n * Not used in the SVG space.\n * @property {boolean | null | undefined} [quoteSmart=false]\n * Use the other quote if that results in less bytes (default: `false`).\n * @property {Quote | null | undefined} [quote='\"']\n * Preferred quote to use (default: `'\"'`).\n * @property {Space | null | undefined} [space='html']\n * When an `<svg>` element is found in the HTML space, this package already\n * automatically switches to and from the SVG space when entering and exiting\n * it (default: `'html'`).\n *\n * > \uD83D\uDC49 **Note**: hast is not XML.\n * > It supports SVG as embedded in HTML.\n * > It does not support the features available in XML.\n * > Passing SVG might break but fragments of modern SVG should be fine.\n * > Use [`xast`][xast] if you need to support SVG as XML.\n * @property {boolean | null | undefined} [tightAttributes=false]\n * Join attributes together, without whitespace, if possible: get\n * `class=\"a b\"title=\"c d\"` instead of `class=\"a b\" title=\"c d\"` to save\n * bytes (default: `false`).\n *\n * Not used in the SVG space.\n *\n * > \uD83D\uDC49 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn\u2019t pretty).\n * @property {boolean | null | undefined} [tightCommaSeparatedLists=false]\n * Join known comma-separated attribute values with just a comma (`,`),\n * instead of padding them on the right as well (`,\u2420`, where `\u2420` represents a\n * space) (default: `false`).\n * @property {boolean | null | undefined} [tightDoctype=false]\n * Drop unneeded spaces in doctypes: `<!doctypehtml>` instead of\n * `<!doctype html>` to save bytes (default: `false`).\n *\n * > \uD83D\uDC49 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn\u2019t pretty).\n * @property {boolean | null | undefined} [tightSelfClosing=false]\n * Do not use an extra space when closing self-closing elements: `<img/>`\n * instead of `<img />` (default: `false`).\n *\n * > \uD83D\uDC49 **Note**: only used if `closeSelfClosing: true` or\n * > `closeEmptyElements: true`.\n * @property {boolean | null | undefined} [upperDoctype=false]\n * Use a `<!DOCTYPE\u2026` instead of `<!doctype\u2026` (default: `false`).\n *\n * Useless except for XHTML.\n * @property {ReadonlyArray<string> | null | undefined} [voids]\n * Tag names of elements to serialize without closing tag (default: `html-void-elements`).\n *\n * Not used in the SVG space.\n *\n * > \uD83D\uDC49 **Note**: It\u2019s highly unlikely that you want to pass this, because\n * > hast is not for XML, and HTML will not add more void elements.\n *\n * @typedef {'\"' | \"'\"} Quote\n * HTML quotes for attribute values.\n *\n * @typedef {Omit<Required<{[key in keyof Options]: Exclude<Options[key], null | undefined>}>, 'space' | 'quote'>} Settings\n *\n * @typedef {'html' | 'svg'} Space\n * Namespace.\n *\n * @typedef State\n * Info passed around about the current state.\n * @property {(node: Parents | undefined) => string} all\n * Serialize the children of a parent node.\n * @property {Quote} alternative\n * Alternative quote.\n * @property {(node: Nodes, index: number | undefined, parent: Parents | undefined) => string} one\n * Serialize one node.\n * @property {Quote} quote\n * Preferred quote.\n * @property {Schema} schema\n * Current schema.\n * @property {Settings} settings\n * User configuration.\n */\n\nimport {htmlVoidElements} from 'html-void-elements'\nimport {html, svg} from 'property-information'\nimport {handle} from './handle/index.js'\n\n/** @type {Options} */\nconst emptyOptions = {}\n\n/** @type {CharacterReferences} */\nconst emptyCharacterReferences = {}\n\n/** @type {Array<never>} */\nconst emptyChildren = []\n\n/**\n * Serialize hast as HTML.\n *\n * @param {Array<RootContent> | Nodes} tree\n * Tree to serialize.\n * @param {Options | null | undefined} [options]\n * Configuration (optional).\n * @returns {string}\n * Serialized HTML.\n */\nexport function toHtml(tree, options) {\n const options_ = options || emptyOptions\n const quote = options_.quote || '\"'\n const alternative = quote === '\"' ? \"'\" : '\"'\n\n if (quote !== '\"' && quote !== \"'\") {\n throw new Error('Invalid quote `' + quote + '`, expected `\\'` or `\"`')\n }\n\n /** @type {State} */\n const state = {\n one,\n all,\n settings: {\n omitOptionalTags: options_.omitOptionalTags || false,\n allowParseErrors: options_.allowParseErrors || false,\n allowDangerousCharacters: options_.allowDangerousCharacters || false,\n quoteSmart: options_.quoteSmart || false,\n preferUnquoted: options_.preferUnquoted || false,\n tightAttributes: options_.tightAttributes || false,\n upperDoctype: options_.upperDoctype || false,\n tightDoctype: options_.tightDoctype || false,\n bogusComments: options_.bogusComments || false,\n tightCommaSeparatedLists: options_.tightCommaSeparatedLists || false,\n tightSelfClosing: options_.tightSelfClosing || false,\n collapseEmptyAttributes: options_.collapseEmptyAttributes || false,\n allowDangerousHtml: options_.allowDangerousHtml || false,\n voids: options_.voids || htmlVoidElements,\n characterReferences:\n options_.characterReferences || emptyCharacterReferences,\n closeSelfClosing: options_.closeSelfClosing || false,\n closeEmptyElements: options_.closeEmptyElements || false\n },\n schema: options_.space === 'svg' ? svg : html,\n quote,\n alternative\n }\n\n return state.one(\n Array.isArray(tree) ? {type: 'root', children: tree} : tree,\n undefined,\n undefined\n )\n}\n\n/**\n * Serialize a node.\n *\n * @this {State}\n * Info passed around about the current state.\n * @param {Nodes} node\n * Node to handle.\n * @param {number | undefined} index\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @returns {string}\n * Serialized node.\n */\nfunction one(node, index, parent) {\n return handle(node, index, parent, this)\n}\n\n/**\n * Serialize all children of `parent`.\n *\n * @this {State}\n * Info passed around about the current state.\n * @param {Parents | undefined} parent\n * Parent whose children to serialize.\n * @returns {string}\n */\nexport function all(parent) {\n /** @type {Array<string>} */\n const results = []\n const children = (parent && parent.children) || emptyChildren\n let index = -1\n\n while (++index < children.length) {\n results[index] = this.one(children[index], index, parent)\n }\n\n return results.join('')\n}\n", "import { ShikiError as ShikiError$1 } from '@shikijs/types';\nexport * from '@shikijs/types';\nimport { createOnigurumaEngine as createOnigurumaEngine$1, loadWasm as loadWasm$1, getDefaultWasmLoader } from '@shikijs/engine-oniguruma';\nimport { w as warnDeprecated } from './shared/core.Bn_XU0Iv.mjs';\nexport { e as enableDeprecationWarnings } from './shared/core.Bn_XU0Iv.mjs';\nimport { FontStyle, INITIAL, EncodedTokenMetadata, Registry as Registry$1, Theme } from '@shikijs/vscode-textmate';\nexport { FontStyle, EncodedTokenMetadata as StackElementMetadata } from '@shikijs/vscode-textmate';\nimport { toHtml } from 'hast-util-to-html';\nexport { toHtml as hastToHtml } from 'hast-util-to-html';\nimport { createJavaScriptRegexEngine as createJavaScriptRegexEngine$1, defaultJavaScriptRegexConstructor as defaultJavaScriptRegexConstructor$1 } from '@shikijs/engine-javascript';\n\nfunction createOnigurumaEngine(options) {\n warnDeprecated(\"import `createOnigurumaEngine` from `@shikijs/engine-oniguruma` or `shiki/engine/oniguruma` instead\");\n return createOnigurumaEngine$1(options);\n}\nfunction createWasmOnigEngine(options) {\n warnDeprecated(\"import `createOnigurumaEngine` from `@shikijs/engine-oniguruma` or `shiki/engine/oniguruma` instead\");\n return createOnigurumaEngine$1(options);\n}\nfunction loadWasm(options) {\n warnDeprecated(\"import `loadWasm` from `@shikijs/engine-oniguruma` or `shiki/engine/oniguruma` instead\");\n return loadWasm$1(options);\n}\n\nfunction toArray(x) {\n return Array.isArray(x) ? x : [x];\n}\nfunction splitLines(code, preserveEnding = false) {\n const parts = code.split(/(\\r?\\n)/g);\n let index = 0;\n const lines = [];\n for (let i = 0; i < parts.length; i += 2) {\n const line = preserveEnding ? parts[i] + (parts[i + 1] || \"\") : parts[i];\n lines.push([line, index]);\n index += parts[i].length;\n index += parts[i + 1]?.length || 0;\n }\n return lines;\n}\nfunction isPlainLang(lang) {\n return !lang || [\"plaintext\", \"txt\", \"text\", \"plain\"].includes(lang);\n}\nfunction isSpecialLang(lang) {\n return lang === \"ansi\" || isPlainLang(lang);\n}\nfunction isNoneTheme(theme) {\n return theme === \"none\";\n}\nfunction isSpecialTheme(theme) {\n return isNoneTheme(theme);\n}\nfunction addClassToHast(node, className) {\n if (!className)\n return node;\n node.properties ||= {};\n node.properties.class ||= [];\n if (typeof node.properties.class === \"string\")\n node.properties.class = node.properties.class.split(/\\s+/g);\n if (!Array.isArray(node.properties.class))\n node.properties.class = [];\n const targets = Array.isArray(className) ? className : className.split(/\\s+/g);\n for (const c of targets) {\n if (c && !node.properties.class.includes(c))\n node.properties.class.push(c);\n }\n return node;\n}\nfunction splitToken(token, offsets) {\n let lastOffset = 0;\n const tokens = [];\n for (const offset of offsets) {\n if (offset > lastOffset) {\n tokens.push({\n ...token,\n content: token.content.slice(lastOffset, offset),\n offset: token.offset + lastOffset\n });\n }\n lastOffset = offset;\n }\n if (lastOffset < token.content.length) {\n tokens.push({\n ...token,\n content: token.content.slice(lastOffset),\n offset: token.offset + lastOffset\n });\n }\n return tokens;\n}\nfunction splitTokens(tokens, breakpoints) {\n const sorted = Array.from(breakpoints instanceof Set ? breakpoints : new Set(breakpoints)).sort((a, b) => a - b);\n if (!sorted.length)\n return tokens;\n return tokens.map((line) => {\n return line.flatMap((token) => {\n const breakpointsInToken = sorted.filter((i) => token.offset < i && i < token.offset + token.content.length).map((i) => i - token.offset).sort((a, b) => a - b);\n if (!breakpointsInToken.length)\n return token;\n return splitToken(token, breakpointsInToken);\n });\n });\n}\nasync function normalizeGetter(p) {\n return Promise.resolve(typeof p === \"function\" ? p() : p).then((r) => r.default || r);\n}\nfunction resolveColorReplacements(theme, options) {\n const replacements = typeof theme === \"string\" ? {} : { ...theme.colorReplacements };\n const themeName = typeof theme === \"string\" ? theme : theme.name;\n for (const [key, value] of Object.entries(options?.colorReplacements || {})) {\n if (typeof value === \"string\")\n replacements[key] = value;\n else if (key === themeName)\n Object.assign(replacements, value);\n }\n return replacements;\n}\nfunction applyColorReplacements(color, replacements) {\n if (!color)\n return color;\n return replacements?.[color?.toLowerCase()] || color;\n}\nfunction getTokenStyleObject(token) {\n const styles = {};\n if (token.color)\n styles.color = token.color;\n if (token.bgColor)\n styles[\"background-color\"] = token.bgColor;\n if (token.fontStyle) {\n if (token.fontStyle & FontStyle.Italic)\n styles[\"font-style\"] = \"italic\";\n if (token.fontStyle & FontStyle.Bold)\n styles[\"font-weight\"] = \"bold\";\n if (token.fontStyle & FontStyle.Underline)\n styles[\"text-decoration\"] = \"underline\";\n }\n return styles;\n}\nfunction stringifyTokenStyle(token) {\n if (typeof token === \"string\")\n return token;\n return Object.entries(token).map(([key, value]) => `${key}:${value}`).join(\";\");\n}\nfunction createPositionConverter(code) {\n const lines = splitLines(code, true).map(([line]) => line);\n function indexToPos(index) {\n if (index === code.length) {\n return {\n line: lines.length - 1,\n character: lines[lines.length - 1].length\n };\n }\n let character = index;\n let line = 0;\n for (const lineText of lines) {\n if (character < lineText.length)\n break;\n character -= lineText.length;\n line++;\n }\n return { line, character };\n }\n function posToIndex(line, character) {\n let index = 0;\n for (let i = 0; i < line; i++)\n index += lines[i].length;\n index += character;\n return index;\n }\n return {\n lines,\n indexToPos,\n posToIndex\n };\n}\n\nclass ShikiError extends Error {\n constructor(message) {\n super(message);\n this.name = \"ShikiError\";\n }\n}\n\nconst _grammarStateMap = /* @__PURE__ */ new WeakMap();\nfunction setLastGrammarStateToMap(keys, state) {\n _grammarStateMap.set(keys, state);\n}\nfunction getLastGrammarStateFromMap(keys) {\n return _grammarStateMap.get(keys);\n}\nclass GrammarState {\n /**\n * Theme to Stack mapping\n */\n _stacks = {};\n lang;\n get themes() {\n return Object.keys(this._stacks);\n }\n get theme() {\n return this.themes[0];\n }\n get _stack() {\n return this._stacks[this.theme];\n }\n /**\n * Static method to create a initial grammar state.\n */\n static initial(lang, themes) {\n return new GrammarState(\n Object.fromEntries(toArray(themes).map((theme) => [theme, INITIAL])),\n lang\n );\n }\n constructor(...args) {\n if (args.length === 2) {\n const [stacksMap, lang] = args;\n this.lang = lang;\n this._stacks = stacksMap;\n } else {\n const [stack, lang, theme] = args;\n this.lang = lang;\n this._stacks = { [theme]: stack };\n }\n }\n /**\n * Get the internal stack object.\n * @internal\n */\n getInternalStack(theme = this.theme) {\n return this._stacks[theme];\n }\n /**\n * @deprecated use `getScopes` instead\n */\n get scopes() {\n warnDeprecated(\"GrammarState.scopes is deprecated, use GrammarState.getScopes() instead\");\n return getScopes(this._stacks[this.theme]);\n }\n getScopes(theme = this.theme) {\n return getScopes(this._stacks[theme]);\n }\n toJSON() {\n return {\n lang: this.lang,\n theme: this.theme,\n themes: this.themes,\n scopes: this.scopes\n };\n }\n}\nfunction getScopes(stack) {\n const scopes = [];\n const visited = /* @__PURE__ */ new Set();\n function pushScope(stack2) {\n if (visited.has(stack2))\n return;\n visited.add(stack2);\n const name = stack2?.nameScopesList?.scopeName;\n if (name)\n scopes.push(name);\n if (stack2.parent)\n pushScope(stack2.parent);\n }\n pushScope(stack);\n return scopes;\n}\nfunction getGrammarStack(state, theme) {\n if (!(state instanceof GrammarState))\n throw new ShikiError(\"Invalid grammar state\");\n return state.getInternalStack(theme);\n}\n\nfunction transformerDecorations() {\n const map = /* @__PURE__ */ new WeakMap();\n function getContext(shiki) {\n if (!map.has(shiki.meta)) {\n let normalizePosition = function(p) {\n if (typeof p === \"number\") {\n if (p < 0 || p > shiki.source.length)\n throw new ShikiError(`Invalid decoration offset: ${p}. Code length: ${shiki.source.length}`);\n return {\n ...converter.indexToPos(p),\n offset: p\n };\n } else {\n const line = converter.lines[p.line];\n if (line === undefined)\n throw new ShikiError(`Invalid decoration position ${JSON.stringify(p)}. Lines length: ${converter.lines.length}`);\n if (p.character < 0 || p.character > line.length)\n throw new ShikiError(`Invalid decoration position ${JSON.stringify(p)}. Line ${p.line} length: ${line.length}`);\n return {\n ...p,\n offset: converter.posToIndex(p.line, p.character)\n };\n }\n };\n const converter = createPositionConverter(shiki.source);\n const decorations = (shiki.options.decorations || []).map((d) => ({\n ...d,\n start: normalizePosition(d.start),\n end: normalizePosition(d.end)\n }));\n verifyIntersections(decorations);\n map.set(shiki.meta, {\n decorations,\n converter,\n source: shiki.source\n });\n }\n return map.get(shiki.meta);\n }\n return {\n name: \"shiki:decorations\",\n tokens(tokens) {\n if (!this.options.decorations?.length)\n return;\n const ctx = getContext(this);\n const breakpoints = ctx.decorations.flatMap((d) => [d.start.offset, d.end.offset]);\n const splitted = splitTokens(tokens, breakpoints);\n return splitted;\n },\n code(codeEl) {\n if (!this.options.decorations?.length)\n return;\n const ctx = getContext(this);\n const lines = Array.from(codeEl.children).filter((i) => i.type === \"element\" && i.tagName === \"span\");\n if (lines.length !== ctx.converter.lines.length)\n throw new ShikiError(`Number of lines in code element (${lines.length}) does not match the number of lines in the source (${ctx.converter.lines.length}). Failed to apply decorations.`);\n function applyLineSection(line, start, end, decoration) {\n const lineEl = lines[line];\n let text = \"\";\n let startIndex = -1;\n let endIndex = -1;\n if (start === 0)\n startIndex = 0;\n if (end === 0)\n endIndex = 0;\n if (end === Number.POSITIVE_INFINITY)\n endIndex = lineEl.children.length;\n if (startIndex === -1 || endIndex === -1) {\n for (let i = 0; i < lineEl.children.length; i++) {\n text += stringify(lineEl.children[i]);\n if (startIndex === -1 && text.length === start)\n startIndex = i + 1;\n if (endIndex === -1 && text.length === end)\n endIndex = i + 1;\n }\n }\n if (startIndex === -1)\n throw new ShikiError(`Failed to find start index for decoration ${JSON.stringify(decoration.start)}`);\n if (endIndex === -1)\n throw new ShikiError(`Failed to find end index for decoration ${JSON.stringify(decoration.end)}`);\n const children = lineEl.children.slice(startIndex, endIndex);\n if (!decoration.alwaysWrap && children.length === lineEl.children.length) {\n applyDecoration(lineEl, decoration, \"line\");\n } else if (!decoration.alwaysWrap && children.length === 1 && children[0].type === \"element\") {\n applyDecoration(children[0], decoration, \"token\");\n } else {\n const wrapper = {\n type: \"element\",\n tagName: \"span\",\n properties: {},\n children\n };\n applyDecoration(wrapper, decoration, \"wrapper\");\n lineEl.children.splice(startIndex, children.length, wrapper);\n }\n }\n function applyLine(line, decoration) {\n lines[line] = applyDecoration(lines[line], decoration, \"line\");\n }\n function applyDecoration(el, decoration, type) {\n const properties = decoration.properties || {};\n const transform = decoration.transform || ((i) => i);\n el.tagName = decoration.tagName || \"span\";\n el.properties = {\n ...el.properties,\n ...properties,\n class: el.properties.class\n };\n if (decoration.properties?.class)\n addClassToHast(el, decoration.properties.class);\n el = transform(el, type) || el;\n return el;\n }\n const lineApplies = [];\n const sorted = ctx.decorations.sort((a, b) => b.start.offset - a.start.offset);\n for (const decoration of sorted) {\n const { start, end } = decoration;\n if (start.line === end.line) {\n applyLineSection(start.line, start.character, end.character, decoration);\n } else if (start.line < end.line) {\n applyLineSection(start.line, start.character, Number.POSITIVE_INFINITY, decoration);\n for (let i = start.line + 1; i < end.line; i++)\n lineApplies.unshift(() => applyLine(i, decoration));\n applyLineSection(end.line, 0, end.character, decoration);\n }\n }\n lineApplies.forEach((i) => i());\n }\n };\n}\nfunction verifyIntersections(items) {\n for (let i = 0; i < items.length; i++) {\n const foo = items[i];\n if (foo.start.offset > foo.end.offset)\n throw new ShikiError(`Invalid decoration range: ${JSON.stringify(foo.start)} - ${JSON.stringify(foo.end)}`);\n for (let j = i + 1; j < items.length; j++) {\n const bar = items[j];\n const isFooHasBarStart = foo.start.offset < bar.start.offset && bar.start.offset < foo.end.offset;\n const isFooHasBarEnd = foo.start.offset < bar.end.offset && bar.end.offset < foo.end.offset;\n const isBarHasFooStart = bar.start.offset < foo.start.offset && foo.start.offset < bar.end.offset;\n const isBarHasFooEnd = bar.start.offset < foo.end.offset && foo.end.offset < bar.end.offset;\n if (isFooHasBarStart || isFooHasBarEnd || isBarHasFooStart || isBarHasFooEnd) {\n if (isFooHasBarEnd && isFooHasBarEnd)\n continue;\n if (isBarHasFooStart && isBarHasFooEnd)\n continue;\n throw new ShikiError(`Decorations ${JSON.stringify(foo.start)} and ${JSON.stringify(bar.start)} intersect.`);\n }\n }\n }\n}\nfunction stringify(el) {\n if (el.type === \"text\")\n return el.value;\n if (el.type === \"element\")\n return el.children.map(stringify).join(\"\");\n return \"\";\n}\n\nconst builtInTransformers = [\n /* @__PURE__ */ transformerDecorations()\n];\nfunction getTransformers(options) {\n return [\n ...options.transformers || [],\n ...builtInTransformers\n ];\n}\n\n// src/colors.ts\nvar namedColors = [\n \"black\",\n \"red\",\n \"green\",\n \"yellow\",\n \"blue\",\n \"magenta\",\n \"cyan\",\n \"white\",\n \"brightBlack\",\n \"brightRed\",\n \"brightGreen\",\n \"brightYellow\",\n \"brightBlue\",\n \"brightMagenta\",\n \"brightCyan\",\n \"brightWhite\"\n];\n\n// src/decorations.ts\nvar decorations = {\n 1: \"bold\",\n 2: \"dim\",\n 3: \"italic\",\n 4: \"underline\",\n 7: \"reverse\",\n 9: \"strikethrough\"\n};\n\n// src/parser.ts\nfunction findSequence(value, position) {\n const nextEscape = value.indexOf(\"\\x1B[\", position);\n if (nextEscape !== -1) {\n const nextClose = value.indexOf(\"m\", nextEscape);\n return {\n sequence: value.substring(nextEscape + 2, nextClose).split(\";\"),\n startPosition: nextEscape,\n position: nextClose + 1\n };\n }\n return {\n position: value.length\n };\n}\nfunction parseColor(sequence, index) {\n let offset = 1;\n const colorMode = sequence[index + offset++];\n let color;\n if (colorMode === \"2\") {\n const rgb = [\n sequence[index + offset++],\n sequence[index + offset++],\n sequence[index + offset]\n ].map((x) => Number.parseInt(x));\n if (rgb.length === 3 && !rgb.some((x) => Number.isNaN(x))) {\n color = {\n type: \"rgb\",\n rgb\n };\n }\n } else if (colorMode === \"5\") {\n const colorIndex = Number.parseInt(sequence[index + offset]);\n if (!Number.isNaN(colorIndex)) {\n color = { type: \"table\", index: Number(colorIndex) };\n }\n }\n return [offset, color];\n}\nfunction parseSequence(sequence) {\n const commands = [];\n for (let i = 0; i < sequence.length; i++) {\n const code = sequence[i];\n const codeInt = Number.parseInt(code);\n if (Number.isNaN(codeInt))\n continue;\n if (codeInt === 0) {\n commands.push({ type: \"resetAll\" });\n } else if (codeInt <= 9) {\n const decoration = decorations[codeInt];\n if (decoration) {\n commands.push({\n type: \"setDecoration\",\n value: decorations[codeInt]\n });\n }\n } else if (codeInt <= 29) {\n const decoration = decorations[codeInt - 20];\n if (decoration) {\n commands.push({\n type: \"resetDecoration\",\n value: decoration\n });\n }\n } else if (codeInt <= 37) {\n commands.push({\n type: \"setForegroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 30] }\n });\n } else if (codeInt === 38) {\n const [offset, color] = parseColor(sequence, i);\n if (color) {\n commands.push({\n type: \"setForegroundColor\",\n value: color\n });\n }\n i += offset;\n } else if (codeInt === 39) {\n commands.push({\n type: \"resetForegroundColor\"\n });\n } else if (codeInt <= 47) {\n commands.push({\n type: \"setBackgroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 40] }\n });\n } else if (codeInt === 48) {\n const [offset, color] = parseColor(sequence, i);\n if (color) {\n commands.push({\n type: \"setBackgroundColor\",\n value: color\n });\n }\n i += offset;\n } else if (codeInt === 49) {\n commands.push({\n type: \"resetBackgroundColor\"\n });\n } else if (codeInt >= 90 && codeInt <= 97) {\n commands.push({\n type: \"setForegroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 90 + 8] }\n });\n } else if (codeInt >= 100 && codeInt <= 107) {\n commands.push({\n type: \"setBackgroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 100 + 8] }\n });\n }\n }\n return commands;\n}\nfunction createAnsiSequenceParser() {\n let foreground = null;\n let background = null;\n let decorations2 = /* @__PURE__ */ new Set();\n return {\n parse(value) {\n const tokens = [];\n let position = 0;\n do {\n const findResult = findSequence(value, position);\n const text = findResult.sequence ? value.substring(position, findResult.startPosition) : value.substring(position);\n if (text.length > 0) {\n tokens.push({\n value: text,\n foreground,\n background,\n decorations: new Set(decorations2)\n });\n }\n if (findResult.sequence) {\n const commands = parseSequence(findResult.sequence);\n for (const styleToken of commands) {\n if (styleToken.type === \"resetAll\") {\n foreground = null;\n background = null;\n decorations2.clear();\n } else if (styleToken.type === \"resetForegroundColor\") {\n foreground = null;\n } else if (styleToken.type === \"resetBackgroundColor\") {\n background = null;\n } else if (styleToken.type === \"resetDecoration\") {\n decorations2.delete(styleToken.value);\n }\n }\n for (const styleToken of commands) {\n if (styleToken.type === \"setForegroundColor\") {\n foreground = styleToken.value;\n } else if (styleToken.type === \"setBackgroundColor\") {\n background = styleToken.value;\n } else if (styleToken.type === \"setDecoration\") {\n decorations2.add(styleToken.value);\n }\n }\n }\n position = findResult.position;\n } while (position < value.length);\n return tokens;\n }\n };\n}\n\n// src/palette.ts\nvar defaultNamedColorsMap = {\n black: \"#000000\",\n red: \"#bb0000\",\n green: \"#00bb00\",\n yellow: \"#bbbb00\",\n blue: \"#0000bb\",\n magenta: \"#ff00ff\",\n cyan: \"#00bbbb\",\n white: \"#eeeeee\",\n brightBlack: \"#555555\",\n brightRed: \"#ff5555\",\n brightGreen: \"#00ff00\",\n brightYellow: \"#ffff55\",\n brightBlue: \"#5555ff\",\n brightMagenta: \"#ff55ff\",\n brightCyan: \"#55ffff\",\n brightWhite: \"#ffffff\"\n};\nfunction createColorPalette(namedColorsMap = defaultNamedColorsMap) {\n function namedColor(name) {\n return namedColorsMap[name];\n }\n function rgbColor(rgb) {\n return `#${rgb.map((x) => Math.max(0, Math.min(x, 255)).toString(16).padStart(2, \"0\")).join(\"\")}`;\n }\n let colorTable;\n function getColorTable() {\n if (colorTable) {\n return colorTable;\n }\n colorTable = [];\n for (let i = 0; i < namedColors.length; i++) {\n colorTable.push(namedColor(namedColors[i]));\n }\n let levels = [0, 95, 135, 175, 215, 255];\n for (let r = 0; r < 6; r++) {\n for (let g = 0; g < 6; g++) {\n for (let b = 0; b < 6; b++) {\n colorTable.push(rgbColor([levels[r], levels[g], levels[b]]));\n }\n }\n }\n let level = 8;\n for (let i = 0; i < 24; i++, level += 10) {\n colorTable.push(rgbColor([level, level, level]));\n }\n return colorTable;\n }\n function tableColor(index) {\n return getColorTable()[index];\n }\n function value(color) {\n switch (color.type) {\n case \"named\":\n return namedColor(color.name);\n case \"rgb\":\n return rgbColor(color.rgb);\n case \"table\":\n return tableColor(color.index);\n }\n }\n return {\n value\n };\n}\n\nfunction tokenizeAnsiWithTheme(theme, fileContents, options) {\n const colorReplacements = resolveColorReplacements(theme, options);\n const lines = splitLines(fileContents);\n const colorPalette = createColorPalette(\n Object.fromEntries(\n namedColors.map((name) => [\n name,\n theme.colors?.[`terminal.ansi${name[0].toUpperCase()}${name.substring(1)}`]\n ])\n )\n );\n const parser = createAnsiSequenceParser();\n return lines.map(\n (line) => parser.parse(line[0]).map((token) => {\n let color;\n let bgColor;\n if (token.decorations.has(\"reverse\")) {\n color = token.background ? colorPalette.value(token.background) : theme.bg;\n bgColor = token.foreground ? colorPalette.value(token.foreground) : theme.fg;\n } else {\n color = token.foreground ? colorPalette.value(token.foreground) : theme.fg;\n bgColor = token.background ? colorPalette.value(token.background) : undefined;\n }\n color = applyColorReplacements(color, colorReplacements);\n bgColor = applyColorReplacements(bgColor, colorReplacements);\n if (token.decorations.has(\"dim\"))\n color = dimColor(color);\n let fontStyle = FontStyle.None;\n if (token.decorations.has(\"bold\"))\n fontStyle |= FontStyle.Bold;\n if (token.decorations.has(\"italic\"))\n fontStyle |= FontStyle.Italic;\n if (token.decorations.has(\"underline\"))\n fontStyle |= FontStyle.Underline;\n return {\n content: token.value,\n offset: line[1],\n // TODO: more accurate offset? might need to fork ansi-sequence-parser\n color,\n bgColor,\n fontStyle\n };\n })\n );\n}\nfunction dimColor(color) {\n const hexMatch = color.match(/#([0-9a-f]{3})([0-9a-f]{3})?([0-9a-f]{2})?/);\n if (hexMatch) {\n if (hexMatch[3]) {\n const alpha = Math.round(Number.parseInt(hexMatch[3], 16) / 2).toString(16).padStart(2, \"0\");\n return `#${hexMatch[1]}${hexMatch[2]}${alpha}`;\n } else if (hexMatch[2]) {\n return `#${hexMatch[1]}${hexMatch[2]}80`;\n } else {\n return `#${Array.from(hexMatch[1]).map((x) => `${x}${x}`).join(\"\")}80`;\n }\n }\n const cssVarMatch = color.match(/var\\((--[\\w-]+-ansi-[\\w-]+)\\)/);\n if (cssVarMatch)\n return `var(${cssVarMatch[1]}-dim)`;\n return color;\n}\n\nfunction codeToTokensBase(internal, code, options = {}) {\n const {\n lang = \"text\",\n theme: themeName = internal.getLoadedThemes()[0]\n } = options;\n if (isPlainLang(lang) || isNoneTheme(themeName))\n return splitLines(code).map((line) => [{ content: line[0], offset: line[1] }]);\n const { theme, colorMap } = internal.setTheme(themeName);\n if (lang === \"ansi\")\n return tokenizeAnsiWithTheme(theme, code, options);\n const _grammar = internal.getLanguage(lang);\n if (options.grammarState) {\n if (options.grammarState.lang !== _grammar.name) {\n throw new ShikiError$1(`Grammar state language \"${options.grammarState.lang}\" does not match highlight language \"${_grammar.name}\"`);\n }\n if (!options.grammarState.themes.includes(theme.name)) {\n throw new ShikiError$1(`Grammar state themes \"${options.grammarState.themes}\" do not contain highlight theme \"${theme.name}\"`);\n }\n }\n return tokenizeWithTheme(code, _grammar, theme, colorMap, options);\n}\nfunction getLastGrammarState(...args) {\n if (args.length === 2) {\n return getLastGrammarStateFromMap(args[1]);\n }\n const [internal, code, options = {}] = args;\n const {\n lang = \"text\",\n theme: themeName = internal.getLoadedThemes()[0]\n } = options;\n if (isPlainLang(lang) || isNoneTheme(themeName))\n throw new ShikiError$1(\"Plain language does not have grammar state\");\n if (lang === \"ansi\")\n throw new ShikiError$1(\"ANSI language does not have grammar state\");\n const { theme, colorMap } = internal.setTheme(themeName);\n const _grammar = internal.getLanguage(lang);\n return new GrammarState(\n _tokenizeWithTheme(code, _grammar, theme, colorMap, options).stateStack,\n _grammar.name,\n theme.name\n );\n}\nfunction tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n const result = _tokenizeWithTheme(code, grammar, theme, colorMap, options);\n const grammarState = new GrammarState(\n _tokenizeWithTheme(code, grammar, theme, colorMap, options).stateStack,\n grammar.name,\n theme.name\n );\n setLastGrammarStateToMap(result.tokens, grammarState);\n return result.tokens;\n}\nfunction _tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n const colorReplacements = resolveColorReplacements(theme, options);\n const {\n tokenizeMaxLineLength = 0,\n tokenizeTimeLimit = 500\n } = options;\n const lines = splitLines(code);\n let stateStack = options.grammarState ? getGrammarStack(options.grammarState, theme.name) ?? INITIAL : options.grammarContextCode != null ? _tokenizeWithTheme(\n options.grammarContextCode,\n grammar,\n theme,\n colorMap,\n {\n ...options,\n grammarState: undefined,\n grammarContextCode: undefined\n }\n ).stateStack : INITIAL;\n let actual = [];\n const final = [];\n for (let i = 0, len = lines.length; i < len; i++) {\n const [line, lineOffset] = lines[i];\n if (line === \"\") {\n actual = [];\n final.push([]);\n continue;\n }\n if (tokenizeMaxLineLength > 0 && line.length >= tokenizeMaxLineLength) {\n actual = [];\n final.push([{\n content: line,\n offset: lineOffset,\n color: \"\",\n fontStyle: 0\n }]);\n continue;\n }\n let resultWithScopes;\n let tokensWithScopes;\n let tokensWithScopesIndex;\n if (options.includeExplanation) {\n resultWithScopes = grammar.tokenizeLine(line, stateStack);\n tokensWithScopes = resultWithScopes.tokens;\n tokensWithScopesIndex = 0;\n }\n const result = grammar.tokenizeLine2(line, stateStack, tokenizeTimeLimit);\n const tokensLength = result.tokens.length / 2;\n for (let j = 0; j < tokensLength; j++) {\n const startIndex = result.tokens[2 * j];\n const nextStartIndex = j + 1 < tokensLength ? result.tokens[2 * j + 2] : line.length;\n if (startIndex === nextStartIndex)\n continue;\n const metadata = result.tokens[2 * j + 1];\n const color = applyColorReplacements(\n colorMap[EncodedTokenMetadata.getForeground(metadata)],\n colorReplacements\n );\n const fontStyle = EncodedTokenMetadata.getFontStyle(metadata);\n const token = {\n content: line.substring(startIndex, nextStartIndex),\n offset: lineOffset + startIndex,\n color,\n fontStyle\n };\n if (options.includeExplanation) {\n const themeSettingsSelectors = [];\n if (options.includeExplanation !== \"scopeName\") {\n for (const setting of theme.settings) {\n let selectors;\n switch (typeof setting.scope) {\n case \"string\":\n selectors = setting.scope.split(/,/).map((scope) => scope.trim());\n break;\n case \"object\":\n selectors = setting.scope;\n break;\n default:\n continue;\n }\n themeSettingsSelectors.push({\n settings: setting,\n selectors: selectors.map((selector) => selector.split(/ /))\n });\n }\n }\n token.explanation = [];\n let offset = 0;\n while (startIndex + offset < nextStartIndex) {\n const tokenWithScopes = tokensWithScopes[tokensWithScopesIndex];\n const tokenWithScopesText = line.substring(\n tokenWithScopes.startIndex,\n tokenWithScopes.endIndex\n );\n offset += tokenWithScopesText.length;\n token.explanation.push({\n content: tokenWithScopesText,\n scopes: options.includeExplanation === \"scopeName\" ? explainThemeScopesNameOnly(\n tokenWithScopes.scopes\n ) : explainThemeScopesFull(\n themeSettingsSelectors,\n tokenWithScopes.scopes\n )\n });\n tokensWithScopesIndex += 1;\n }\n }\n actual.push(token);\n }\n final.push(actual);\n actual = [];\n stateStack = result.ruleStack;\n }\n return {\n tokens: final,\n stateStack\n };\n}\nfunction explainThemeScopesNameOnly(scopes) {\n return scopes.map((scope) => ({ scopeName: scope }));\n}\nfunction explainThemeScopesFull(themeSelectors, scopes) {\n const result = [];\n for (let i = 0, len = scopes.length; i < len; i++) {\n const scope = scopes[i];\n result[i] = {\n scopeName: scope,\n themeMatches: explainThemeScope(themeSelectors, scope, scopes.slice(0, i))\n };\n }\n return result;\n}\nfunction matchesOne(selector, scope) {\n return selector === scope || scope.substring(0, selector.length) === selector && scope[selector.length] === \".\";\n}\nfunction matches(selectors, scope, parentScopes) {\n if (!matchesOne(selectors[selectors.length - 1], scope))\n return false;\n let selectorParentIndex = selectors.length - 2;\n let parentIndex = parentScopes.length - 1;\n while (selectorParentIndex >= 0 && parentIndex >= 0) {\n if (matchesOne(selectors[selectorParentIndex], parentScopes[parentIndex]))\n selectorParentIndex -= 1;\n parentIndex -= 1;\n }\n if (selectorParentIndex === -1)\n return true;\n return false;\n}\nfunction explainThemeScope(themeSettingsSelectors, scope, parentScopes) {\n const result = [];\n for (const { selectors, settings } of themeSettingsSelectors) {\n for (const selectorPieces of selectors) {\n if (matches(selectorPieces, scope, parentScopes)) {\n result.push(settings);\n break;\n }\n }\n }\n return result;\n}\n\nfunction codeToTokensWithThemes(internal, code, options) {\n const themes = Object.entries(options.themes).filter((i) => i[1]).map((i) => ({ color: i[0], theme: i[1] }));\n const themedTokens = themes.map((t) => {\n const tokens2 = codeToTokensBase(internal, code, {\n ...options,\n theme: t.theme\n });\n const state = getLastGrammarStateFromMap(tokens2);\n const theme = typeof t.theme === \"string\" ? t.theme : t.theme.name;\n return {\n tokens: tokens2,\n state,\n theme\n };\n });\n const tokens = syncThemesTokenization(\n ...themedTokens.map((i) => i.tokens)\n );\n const mergedTokens = tokens[0].map(\n (line, lineIdx) => line.map((_token, tokenIdx) => {\n const mergedToken = {\n content: _token.content,\n variants: {},\n offset: _token.offset\n };\n if (\"includeExplanation\" in options && options.includeExplanation) {\n mergedToken.explanation = _token.explanation;\n }\n tokens.forEach((t, themeIdx) => {\n const {\n content: _,\n explanation: __,\n offset: ___,\n ...styles\n } = t[lineIdx][tokenIdx];\n mergedToken.variants[themes[themeIdx].color] = styles;\n });\n return mergedToken;\n })\n );\n const mergedGrammarState = themedTokens[0].state ? new GrammarState(\n Object.fromEntries(themedTokens.map((s) => [s.theme, s.state?.getInternalStack(s.theme)])),\n themedTokens[0].state.lang\n ) : undefined;\n if (mergedGrammarState)\n setLastGrammarStateToMap(mergedTokens, mergedGrammarState);\n return mergedTokens;\n}\nfunction syncThemesTokenization(...themes) {\n const outThemes = themes.map(() => []);\n const count = themes.length;\n for (let i = 0; i < themes[0].length; i++) {\n const lines = themes.map((t) => t[i]);\n const outLines = outThemes.map(() => []);\n outThemes.forEach((t, i2) => t.push(outLines[i2]));\n const indexes = lines.map(() => 0);\n const current = lines.map((l) => l[0]);\n while (current.every((t) => t)) {\n const minLength = Math.min(...current.map((t) => t.content.length));\n for (let n = 0; n < count; n++) {\n const token = current[n];\n if (token.content.length === minLength) {\n outLines[n].push(token);\n indexes[n] += 1;\n current[n] = lines[n][indexes[n]];\n } else {\n outLines[n].push({\n ...token,\n content: token.content.slice(0, minLength)\n });\n current[n] = {\n ...token,\n content: token.content.slice(minLength),\n offset: token.offset + minLength\n };\n }\n }\n }\n }\n return outThemes;\n}\n\nfunction codeToTokens(internal, code, options) {\n let bg;\n let fg;\n let tokens;\n let themeName;\n let rootStyle;\n let grammarState;\n if (\"themes\" in options) {\n const {\n defaultColor = \"light\",\n cssVariablePrefix = \"--shiki-\"\n } = options;\n const themes = Object.entries(options.themes).filter((i) => i[1]).map((i) => ({ color: i[0], theme: i[1] })).sort((a, b) => a.color === defaultColor ? -1 : b.color === defaultColor ? 1 : 0);\n if (themes.length === 0)\n throw new ShikiError$1(\"`themes` option must not be empty\");\n const themeTokens = codeToTokensWithThemes(\n internal,\n code,\n options\n );\n grammarState = getLastGrammarStateFromMap(themeTokens);\n if (defaultColor && !themes.find((t) => t.color === defaultColor))\n throw new ShikiError$1(`\\`themes\\` option must contain the defaultColor key \\`${defaultColor}\\``);\n const themeRegs = themes.map((t) => internal.getTheme(t.theme));\n const themesOrder = themes.map((t) => t.color);\n tokens = themeTokens.map((line) => line.map((token) => mergeToken(token, themesOrder, cssVariablePrefix, defaultColor)));\n if (grammarState)\n setLastGrammarStateToMap(tokens, grammarState);\n const themeColorReplacements = themes.map((t) => resolveColorReplacements(t.theme, options));\n fg = themes.map((t, idx) => (idx === 0 && defaultColor ? \"\" : `${cssVariablePrefix + t.color}:`) + (applyColorReplacements(themeRegs[idx].fg, themeColorReplacements[idx]) || \"inherit\")).join(\";\");\n bg = themes.map((t, idx) => (idx === 0 && defaultColor ? \"\" : `${cssVariablePrefix + t.color}-bg:`) + (applyColorReplacements(themeRegs[idx].bg, themeColorReplacements[idx]) || \"inherit\")).join(\";\");\n themeName = `shiki-themes ${themeRegs.map((t) => t.name).join(\" \")}`;\n rootStyle = defaultColor ? undefined : [fg, bg].join(\";\");\n } else if (\"theme\" in options) {\n const colorReplacements = resolveColorReplacements(options.theme, options);\n tokens = codeToTokensBase(\n internal,\n code,\n options\n );\n const _theme = internal.getTheme(options.theme);\n bg = applyColorReplacements(_theme.bg, colorReplacements);\n fg = applyColorReplacements(_theme.fg, colorReplacements);\n themeName = _theme.name;\n grammarState = getLastGrammarStateFromMap(tokens);\n } else {\n throw new ShikiError$1(\"Invalid options, either `theme` or `themes` must be provided\");\n }\n return {\n tokens,\n fg,\n bg,\n themeName,\n rootStyle,\n grammarState\n };\n}\nfunction mergeToken(merged, variantsOrder, cssVariablePrefix, defaultColor) {\n const token = {\n content: merged.content,\n explanation: merged.explanation,\n offset: merged.offset\n };\n const styles = variantsOrder.map((t) => getTokenStyleObject(merged.variants[t]));\n const styleKeys = new Set(styles.flatMap((t) => Object.keys(t)));\n const mergedStyles = {};\n styles.forEach((cur, idx) => {\n for (const key of styleKeys) {\n const value = cur[key] || \"inherit\";\n if (idx === 0 && defaultColor) {\n mergedStyles[key] = value;\n } else {\n const keyName = key === \"color\" ? \"\" : key === \"background-color\" ? \"-bg\" : `-${key}`;\n const varKey = cssVariablePrefix + variantsOrder[idx] + (key === \"color\" ? \"\" : keyName);\n mergedStyles[varKey] = value;\n }\n }\n });\n token.htmlStyle = mergedStyles;\n return token;\n}\n\nfunction codeToHast(internal, code, options, transformerContext = {\n meta: {},\n options,\n codeToHast: (_code, _options) => codeToHast(internal, _code, _options),\n codeToTokens: (_code, _options) => codeToTokens(internal, _code, _options)\n}) {\n let input = code;\n for (const transformer of getTransformers(options))\n input = transformer.preprocess?.call(transformerContext, input, options) || input;\n let {\n tokens,\n fg,\n bg,\n themeName,\n rootStyle,\n grammarState\n } = codeToTokens(internal, input, options);\n const {\n mergeWhitespaces = true\n } = options;\n if (mergeWhitespaces === true)\n tokens = mergeWhitespaceTokens(tokens);\n else if (mergeWhitespaces === \"never\")\n tokens = splitWhitespaceTokens(tokens);\n const contextSource = {\n ...transformerContext,\n get source() {\n return input;\n }\n };\n for (const transformer of getTransformers(options))\n tokens = transformer.tokens?.call(contextSource, tokens) || tokens;\n return tokensToHast(\n tokens,\n {\n ...options,\n fg,\n bg,\n themeName,\n rootStyle\n },\n contextSource,\n grammarState\n );\n}\nfunction tokensToHast(tokens, options, transformerContext, grammarState = getLastGrammarStateFromMap(tokens)) {\n const transformers = getTransformers(options);\n const lines = [];\n const root = {\n type: \"root\",\n children: []\n };\n const {\n structure = \"classic\",\n tabindex = \"0\"\n } = options;\n let preNode = {\n type: \"element\",\n tagName: \"pre\",\n properties: {\n class: `shiki ${options.themeName || \"\"}`,\n style: options.rootStyle || `background-color:${options.bg};color:${options.fg}`,\n ...tabindex !== false && tabindex != null ? {\n tabindex: tabindex.toString()\n } : {},\n ...Object.fromEntries(\n Array.from(\n Object.entries(options.meta || {})\n ).filter(([key]) => !key.startsWith(\"_\"))\n )\n },\n children: []\n };\n let codeNode = {\n type: \"element\",\n tagName: \"code\",\n properties: {},\n children: lines\n };\n const lineNodes = [];\n const context = {\n ...transformerContext,\n structure,\n addClassToHast,\n get source() {\n return transformerContext.source;\n },\n get tokens() {\n return tokens;\n },\n get options() {\n return options;\n },\n get root() {\n return root;\n },\n get pre() {\n return preNode;\n },\n get code() {\n return codeNode;\n },\n get lines() {\n return lineNodes;\n }\n };\n tokens.forEach((line, idx) => {\n if (idx) {\n if (structure === \"inline\")\n root.children.push({ type: \"element\", tagName: \"br\", properties: {}, children: [] });\n else if (structure === \"classic\")\n lines.push({ type: \"text\", value: \"\\n\" });\n }\n let lineNode = {\n type: \"element\",\n tagName: \"span\",\n properties: { class: \"line\" },\n children: []\n };\n let col = 0;\n for (const token of line) {\n let tokenNode = {\n type: \"element\",\n tagName: \"span\",\n properties: {\n ...token.htmlAttrs\n },\n children: [{ type: \"text\", value: token.content }]\n };\n if (typeof token.htmlStyle === \"string\")\n warnDeprecated(\"`htmlStyle` as a string is deprecated. Use an object instead.\");\n const style = stringifyTokenStyle(token.htmlStyle || getTokenStyleObject(token));\n if (style)\n tokenNode.properties.style = style;\n for (const transformer of transformers)\n tokenNode = transformer?.span?.call(context, tokenNode, idx + 1, col, lineNode, token) || tokenNode;\n if (structure === \"inline\")\n root.children.push(tokenNode);\n else if (structure === \"classic\")\n lineNode.children.push(tokenNode);\n col += token.content.length;\n }\n if (structure === \"classic\") {\n for (const transformer of transformers)\n lineNode = transformer?.line?.call(context, lineNode, idx + 1) || lineNode;\n lineNodes.push(lineNode);\n lines.push(lineNode);\n }\n });\n if (structure === \"classic\") {\n for (const transformer of transformers)\n codeNode = transformer?.code?.call(context, codeNode) || codeNode;\n preNode.children.push(codeNode);\n for (const transformer of transformers)\n preNode = transformer?.pre?.call(context, preNode) || preNode;\n root.children.push(preNode);\n }\n let result = root;\n for (const transformer of transformers)\n result = transformer?.root?.call(context, result) || result;\n if (grammarState)\n setLastGrammarStateToMap(result, grammarState);\n return result;\n}\nfunction mergeWhitespaceTokens(tokens) {\n return tokens.map((line) => {\n const newLine = [];\n let carryOnContent = \"\";\n let firstOffset = 0;\n line.forEach((token, idx) => {\n const isUnderline = token.fontStyle && token.fontStyle & FontStyle.Underline;\n const couldMerge = !isUnderline;\n if (couldMerge && token.content.match(/^\\s+$/) && line[idx + 1]) {\n if (!firstOffset)\n firstOffset = token.offset;\n carryOnContent += token.content;\n } else {\n if (carryOnContent) {\n if (couldMerge) {\n newLine.push({\n ...token,\n offset: firstOffset,\n content: carryOnContent + token.content\n });\n } else {\n newLine.push(\n {\n content: carryOnContent,\n offset: firstOffset\n },\n token\n );\n }\n firstOffset = 0;\n carryOnContent = \"\";\n } else {\n newLine.push(token);\n }\n }\n });\n return newLine;\n });\n}\nfunction splitWhitespaceTokens(tokens) {\n return tokens.map((line) => {\n return line.flatMap((token) => {\n if (token.content.match(/^\\s+$/))\n return token;\n const match = token.content.match(/^(\\s*)(.*?)(\\s*)$/);\n if (!match)\n return token;\n const [, leading, content, trailing] = match;\n if (!leading && !trailing)\n return token;\n const expanded = [{\n ...token,\n offset: token.offset + leading.length,\n content\n }];\n if (leading) {\n expanded.unshift({\n content: leading,\n offset: token.offset\n });\n }\n if (trailing) {\n expanded.push({\n content: trailing,\n offset: token.offset + leading.length + content.length\n });\n }\n return expanded;\n });\n });\n}\n\nfunction codeToHtml(internal, code, options) {\n const context = {\n meta: {},\n options,\n codeToHast: (_code, _options) => codeToHast(internal, _code, _options),\n codeToTokens: (_code, _options) => codeToTokens(internal, _code, _options)\n };\n let result = toHtml(codeToHast(internal, code, options, context));\n for (const transformer of getTransformers(options))\n result = transformer.postprocess?.call(context, result, options) || result;\n return result;\n}\n\nconst VSCODE_FALLBACK_EDITOR_FG = { light: \"#333333\", dark: \"#bbbbbb\" };\nconst VSCODE_FALLBACK_EDITOR_BG = { light: \"#fffffe\", dark: \"#1e1e1e\" };\nconst RESOLVED_KEY = \"__shiki_resolved\";\nfunction normalizeTheme(rawTheme) {\n if (rawTheme?.[RESOLVED_KEY])\n return rawTheme;\n const theme = {\n ...rawTheme\n };\n if (theme.tokenColors && !theme.settings) {\n theme.settings = theme.tokenColors;\n delete theme.tokenColors;\n }\n theme.type ||= \"dark\";\n theme.colorReplacements = { ...theme.colorReplacements };\n theme.settings ||= [];\n let { bg, fg } = theme;\n if (!bg || !fg) {\n const globalSetting = theme.settings ? theme.settings.find((s) => !s.name && !s.scope) : undefined;\n if (globalSetting?.settings?.foreground)\n fg = globalSetting.settings.foreground;\n if (globalSetting?.settings?.background)\n bg = globalSetting.settings.background;\n if (!fg && theme?.colors?.[\"editor.foreground\"])\n fg = theme.colors[\"editor.foreground\"];\n if (!bg && theme?.colors?.[\"editor.background\"])\n bg = theme.colors[\"editor.background\"];\n if (!fg)\n fg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_FG.light : VSCODE_FALLBACK_EDITOR_FG.dark;\n if (!bg)\n bg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_BG.light : VSCODE_FALLBACK_EDITOR_BG.dark;\n theme.fg = fg;\n theme.bg = bg;\n }\n if (!(theme.settings[0] && theme.settings[0].settings && !theme.settings[0].scope)) {\n theme.settings.unshift({\n settings: {\n foreground: theme.fg,\n background: theme.bg\n }\n });\n }\n let replacementCount = 0;\n const replacementMap = /* @__PURE__ */ new Map();\n function getReplacementColor(value) {\n if (replacementMap.has(value))\n return replacementMap.get(value);\n replacementCount += 1;\n const hex = `#${replacementCount.toString(16).padStart(8, \"0\").toLowerCase()}`;\n if (theme.colorReplacements?.[`#${hex}`])\n return getReplacementColor(value);\n replacementMap.set(value, hex);\n return hex;\n }\n theme.settings = theme.settings.map((setting) => {\n const replaceFg = setting.settings?.foreground && !setting.settings.foreground.startsWith(\"#\");\n const replaceBg = setting.settings?.background && !setting.settings.background.startsWith(\"#\");\n if (!replaceFg && !replaceBg)\n return setting;\n const clone = {\n ...setting,\n settings: {\n ...setting.settings\n }\n };\n if (replaceFg) {\n const replacement = getReplacementColor(setting.settings.foreground);\n theme.colorReplacements[replacement] = setting.settings.foreground;\n clone.settings.foreground = replacement;\n }\n if (replaceBg) {\n const replacement = getReplacementColor(setting.settings.background);\n theme.colorReplacements[replacement] = setting.settings.background;\n clone.settings.background = replacement;\n }\n return clone;\n });\n for (const key of Object.keys(theme.colors || {})) {\n if (key === \"editor.foreground\" || key === \"editor.background\" || key.startsWith(\"terminal.ansi\")) {\n if (!theme.colors[key]?.startsWith(\"#\")) {\n const replacement = getReplacementColor(theme.colors[key]);\n theme.colorReplacements[replacement] = theme.colors[key];\n theme.colors[key] = replacement;\n }\n }\n }\n Object.defineProperty(theme, RESOLVED_KEY, {\n enumerable: false,\n writable: false,\n value: true\n });\n return theme;\n}\n\nasync function resolveLangs(langs) {\n return Array.from(new Set((await Promise.all(\n langs.filter((l) => !isSpecialLang(l)).map(async (lang) => await normalizeGetter(lang).then((r) => Array.isArray(r) ? r : [r]))\n )).flat()));\n}\nasync function resolveThemes(themes) {\n const resolved = await Promise.all(\n themes.map(\n async (theme) => isSpecialTheme(theme) ? null : normalizeTheme(await normalizeGetter(theme))\n )\n );\n return resolved.filter((i) => !!i);\n}\n\nclass Registry extends Registry$1 {\n constructor(_resolver, _themes, _langs, _alias = {}) {\n super(_resolver);\n this._resolver = _resolver;\n this._themes = _themes;\n this._langs = _langs;\n this._alias = _alias;\n this._themes.map((t) => this.loadTheme(t));\n this.loadLanguages(this._langs);\n }\n _resolvedThemes = /* @__PURE__ */ new Map();\n _resolvedGrammars = /* @__PURE__ */ new Map();\n _langMap = /* @__PURE__ */ new Map();\n _langGraph = /* @__PURE__ */ new Map();\n _textmateThemeCache = /* @__PURE__ */ new WeakMap();\n _loadedThemesCache = null;\n _loadedLanguagesCache = null;\n getTheme(theme) {\n if (typeof theme === \"string\")\n return this._resolvedThemes.get(theme);\n else\n return this.loadTheme(theme);\n }\n loadTheme(theme) {\n const _theme = normalizeTheme(theme);\n if (_theme.name) {\n this._resolvedThemes.set(_theme.name, _theme);\n this._loadedThemesCache = null;\n }\n return _theme;\n }\n getLoadedThemes() {\n if (!this._loadedThemesCache)\n this._loadedThemesCache = [...this._resolvedThemes.keys()];\n return this._loadedThemesCache;\n }\n // Override and re-implement this method to cache the textmate themes as `TextMateTheme.createFromRawTheme`\n // is expensive. Themes can switch often especially for dual-theme support.\n //\n // The parent class also accepts `colorMap` as the second parameter, but since we don't use that,\n // we omit here so it's easier to cache the themes.\n setTheme(theme) {\n let textmateTheme = this._textmateThemeCache.get(theme);\n if (!textmateTheme) {\n textmateTheme = Theme.createFromRawTheme(theme);\n this._textmateThemeCache.set(theme, textmateTheme);\n }\n this._syncRegistry.setTheme(textmateTheme);\n }\n getGrammar(name) {\n if (this._alias[name]) {\n const resolved = /* @__PURE__ */ new Set([name]);\n while (this._alias[name]) {\n name = this._alias[name];\n if (resolved.has(name))\n throw new ShikiError(`Circular alias \\`${Array.from(resolved).join(\" -> \")} -> ${name}\\``);\n resolved.add(name);\n }\n }\n return this._resolvedGrammars.get(name);\n }\n loadLanguage(lang) {\n if (this.getGrammar(lang.name))\n return;\n const embeddedLazilyBy = new Set(\n [...this._langMap.values()].filter((i) => i.embeddedLangsLazy?.includes(lang.name))\n );\n this._resolver.addLanguage(lang);\n const grammarConfig = {\n balancedBracketSelectors: lang.balancedBracketSelectors || [\"*\"],\n unbalancedBracketSelectors: lang.unbalancedBracketSelectors || []\n };\n this._syncRegistry._rawGrammars.set(lang.scopeName, lang);\n const g = this.loadGrammarWithConfiguration(lang.scopeName, 1, grammarConfig);\n g.name = lang.name;\n this._resolvedGrammars.set(lang.name, g);\n if (lang.aliases) {\n lang.aliases.forEach((alias) => {\n this._alias[alias] = lang.name;\n });\n }\n this._loadedLanguagesCache = null;\n if (embeddedLazilyBy.size) {\n for (const e of embeddedLazilyBy) {\n this._resolvedGrammars.delete(e.name);\n this._loadedLanguagesCache = null;\n this._syncRegistry?._injectionGrammars?.delete(e.scopeName);\n this._syncRegistry?._grammars?.delete(e.scopeName);\n this.loadLanguage(this._langMap.get(e.name));\n }\n }\n }\n dispose() {\n super.dispose();\n this._resolvedThemes.clear();\n this._resolvedGrammars.clear();\n this._langMap.clear();\n this._langGraph.clear();\n this._loadedThemesCache = null;\n }\n loadLanguages(langs) {\n for (const lang of langs)\n this.resolveEmbeddedLanguages(lang);\n const langsGraphArray = Array.from(this._langGraph.entries());\n const missingLangs = langsGraphArray.filter(([_, lang]) => !lang);\n if (missingLangs.length) {\n const dependents = langsGraphArray.filter(([_, lang]) => lang && lang.embeddedLangs?.some((l) => missingLangs.map(([name]) => name).includes(l))).filter((lang) => !missingLangs.includes(lang));\n throw new ShikiError(`Missing languages ${missingLangs.map(([name]) => `\\`${name}\\``).join(\", \")}, required by ${dependents.map(([name]) => `\\`${name}\\``).join(\", \")}`);\n }\n for (const [_, lang] of langsGraphArray)\n this._resolver.addLanguage(lang);\n for (const [_, lang] of langsGraphArray)\n this.loadLanguage(lang);\n }\n getLoadedLanguages() {\n if (!this._loadedLanguagesCache) {\n this._loadedLanguagesCache = [\n .../* @__PURE__ */ new Set([...this._resolvedGrammars.keys(), ...Object.keys(this._alias)])\n ];\n }\n return this._loadedLanguagesCache;\n }\n resolveEmbeddedLanguages(lang) {\n this._langMap.set(lang.name, lang);\n this._langGraph.set(lang.name, lang);\n if (lang.embeddedLangs) {\n for (const embeddedLang of lang.embeddedLangs)\n this._langGraph.set(embeddedLang, this._langMap.get(embeddedLang));\n }\n }\n}\n\nclass Resolver {\n _langs = /* @__PURE__ */ new Map();\n _scopeToLang = /* @__PURE__ */ new Map();\n _injections = /* @__PURE__ */ new Map();\n _onigLib;\n constructor(engine, langs) {\n this._onigLib = {\n createOnigScanner: (patterns) => engine.createScanner(patterns),\n createOnigString: (s) => engine.createString(s)\n };\n langs.forEach((i) => this.addLanguage(i));\n }\n get onigLib() {\n return this._onigLib;\n }\n getLangRegistration(langIdOrAlias) {\n return this._langs.get(langIdOrAlias);\n }\n loadGrammar(scopeName) {\n return this._scopeToLang.get(scopeName);\n }\n addLanguage(l) {\n this._langs.set(l.name, l);\n if (l.aliases) {\n l.aliases.forEach((a) => {\n this._langs.set(a, l);\n });\n }\n this._scopeToLang.set(l.scopeName, l);\n if (l.injectTo) {\n l.injectTo.forEach((i) => {\n if (!this._injections.get(i))\n this._injections.set(i, []);\n this._injections.get(i).push(l.scopeName);\n });\n }\n }\n getInjections(scopeName) {\n const scopeParts = scopeName.split(\".\");\n let injections = [];\n for (let i = 1; i <= scopeParts.length; i++) {\n const subScopeName = scopeParts.slice(0, i).join(\".\");\n injections = [...injections, ...this._injections.get(subScopeName) || []];\n }\n return injections;\n }\n}\n\nlet instancesCount = 0;\nfunction createShikiInternalSync(options) {\n instancesCount += 1;\n if (options.warnings !== false && instancesCount >= 10 && instancesCount % 10 === 0)\n console.warn(`[Shiki] ${instancesCount} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \\`highlighter.dispose()\\` to release unused instances.`);\n let isDisposed = false;\n if (!options.engine)\n throw new ShikiError(\"`engine` option is required for synchronous mode\");\n const langs = (options.langs || []).flat(1);\n const themes = (options.themes || []).flat(1).map(normalizeTheme);\n const resolver = new Resolver(options.engine, langs);\n const _registry = new Registry(resolver, themes, langs, options.langAlias);\n let _lastTheme;\n function getLanguage(name) {\n ensureNotDisposed();\n const _lang = _registry.getGrammar(typeof name === \"string\" ? name : name.name);\n if (!_lang)\n throw new ShikiError(`Language \\`${name}\\` not found, you may need to load it first`);\n return _lang;\n }\n function getTheme(name) {\n if (name === \"none\")\n return { bg: \"\", fg: \"\", name: \"none\", settings: [], type: \"dark\" };\n ensureNotDisposed();\n const _theme = _registry.getTheme(name);\n if (!_theme)\n throw new ShikiError(`Theme \\`${name}\\` not found, you may need to load it first`);\n return _theme;\n }\n function setTheme(name) {\n ensureNotDisposed();\n const theme = getTheme(name);\n if (_lastTheme !== name) {\n _registry.setTheme(theme);\n _lastTheme = name;\n }\n const colorMap = _registry.getColorMap();\n return {\n theme,\n colorMap\n };\n }\n function getLoadedThemes() {\n ensureNotDisposed();\n return _registry.getLoadedThemes();\n }\n function getLoadedLanguages() {\n ensureNotDisposed();\n return _registry.getLoadedLanguages();\n }\n function loadLanguageSync(...langs2) {\n ensureNotDisposed();\n _registry.loadLanguages(langs2.flat(1));\n }\n async function loadLanguage(...langs2) {\n return loadLanguageSync(await resolveLangs(langs2));\n }\n function loadThemeSync(...themes2) {\n ensureNotDisposed();\n for (const theme of themes2.flat(1)) {\n _registry.loadTheme(theme);\n }\n }\n async function loadTheme(...themes2) {\n ensureNotDisposed();\n return loadThemeSync(await resolveThemes(themes2));\n }\n function ensureNotDisposed() {\n if (isDisposed)\n throw new ShikiError(\"Shiki instance has been disposed\");\n }\n function dispose() {\n if (isDisposed)\n return;\n isDisposed = true;\n _registry.dispose();\n instancesCount -= 1;\n }\n return {\n setTheme,\n getTheme,\n getLanguage,\n getLoadedThemes,\n getLoadedLanguages,\n loadLanguage,\n loadLanguageSync,\n loadTheme,\n loadThemeSync,\n dispose,\n [Symbol.dispose]: dispose\n };\n}\n\nasync function createShikiInternal(options = {}) {\n if (options.loadWasm) {\n warnDeprecated(\"`loadWasm` option is deprecated. Use `engine: createOnigurumaEngine(loadWasm)` instead.\");\n }\n const [\n themes,\n langs,\n engine\n ] = await Promise.all([\n resolveThemes(options.themes || []),\n resolveLangs(options.langs || []),\n options.engine || createOnigurumaEngine$1(options.loadWasm || getDefaultWasmLoader())\n ]);\n return createShikiInternalSync({\n ...options,\n loadWasm: undefined,\n themes,\n langs,\n engine\n });\n}\nfunction getShikiInternal(options = {}) {\n warnDeprecated(\"`getShikiInternal` is deprecated. Use `createShikiInternal` instead.\");\n return createShikiInternal(options);\n}\n\nasync function createHighlighterCore(options = {}) {\n const internal = await createShikiInternal(options);\n return {\n getLastGrammarState: (...args) => getLastGrammarState(internal, ...args),\n codeToTokensBase: (code, options2) => codeToTokensBase(internal, code, options2),\n codeToTokensWithThemes: (code, options2) => codeToTokensWithThemes(internal, code, options2),\n codeToTokens: (code, options2) => codeToTokens(internal, code, options2),\n codeToHast: (code, options2) => codeToHast(internal, code, options2),\n codeToHtml: (code, options2) => codeToHtml(internal, code, options2),\n ...internal,\n getInternalContext: () => internal\n };\n}\nfunction createHighlighterCoreSync(options = {}) {\n const internal = createShikiInternalSync(options);\n return {\n getLastGrammarState: (...args) => getLastGrammarState(internal, ...args),\n codeToTokensBase: (code, options2) => codeToTokensBase(internal, code, options2),\n codeToTokensWithThemes: (code, options2) => codeToTokensWithThemes(internal, code, options2),\n codeToTokens: (code, options2) => codeToTokens(internal, code, options2),\n codeToHast: (code, options2) => codeToHast(internal, code, options2),\n codeToHtml: (code, options2) => codeToHtml(internal, code, options2),\n ...internal,\n getInternalContext: () => internal\n };\n}\nfunction makeSingletonHighlighterCore(createHighlighter) {\n let _shiki;\n async function getSingletonHighlighterCore2(options = {}) {\n if (!_shiki) {\n _shiki = createHighlighter({\n ...options,\n themes: options.themes || [],\n langs: options.langs || []\n });\n return _shiki;\n } else {\n const s = await _shiki;\n await Promise.all([\n s.loadTheme(...options.themes || []),\n s.loadLanguage(...options.langs || [])\n ]);\n return s;\n }\n }\n return getSingletonHighlighterCore2;\n}\nconst getSingletonHighlighterCore = /* @__PURE__ */ makeSingletonHighlighterCore(createHighlighterCore);\nfunction getHighlighterCore(options = {}) {\n warnDeprecated(\"`getHighlighterCore` is deprecated. Use `createHighlighterCore` or `getSingletonHighlighterCore` instead.\");\n return createHighlighterCore(options);\n}\n\nfunction createdBundledHighlighter(arg1, arg2, arg3) {\n let bundledLanguages;\n let bundledThemes;\n let engine;\n if (arg2) {\n warnDeprecated(\"`createdBundledHighlighter` signature with `bundledLanguages` and `bundledThemes` is deprecated. Use the options object signature instead.\");\n bundledLanguages = arg1;\n bundledThemes = arg2;\n engine = () => createOnigurumaEngine(arg3);\n } else {\n const options = arg1;\n bundledLanguages = options.langs;\n bundledThemes = options.themes;\n engine = options.engine;\n }\n async function createHighlighter(options) {\n function resolveLang(lang) {\n if (typeof lang === \"string\") {\n if (isSpecialLang(lang))\n return [];\n const bundle = bundledLanguages[lang];\n if (!bundle)\n throw new ShikiError$1(`Language \\`${lang}\\` is not included in this bundle. You may want to load it from external source.`);\n return bundle;\n }\n return lang;\n }\n function resolveTheme(theme) {\n if (isSpecialTheme(theme))\n return \"none\";\n if (typeof theme === \"string\") {\n const bundle = bundledThemes[theme];\n if (!bundle)\n throw new ShikiError$1(`Theme \\`${theme}\\` is not included in this bundle. You may want to load it from external source.`);\n return bundle;\n }\n return theme;\n }\n const _themes = (options.themes ?? []).map((i) => resolveTheme(i));\n const langs = (options.langs ?? []).map((i) => resolveLang(i));\n const core = await createHighlighterCore({\n engine: options.engine ?? engine(),\n ...options,\n themes: _themes,\n langs\n });\n return {\n ...core,\n loadLanguage(...langs2) {\n return core.loadLanguage(...langs2.map(resolveLang));\n },\n loadTheme(...themes) {\n return core.loadTheme(...themes.map(resolveTheme));\n }\n };\n }\n return createHighlighter;\n}\nfunction makeSingletonHighlighter(createHighlighter) {\n let _shiki;\n async function getSingletonHighlighter(options = {}) {\n if (!_shiki) {\n _shiki = createHighlighter({\n ...options,\n themes: options.themes || [],\n langs: options.langs || []\n });\n return _shiki;\n } else {\n const s = await _shiki;\n await Promise.all([\n s.loadTheme(...options.themes || []),\n s.loadLanguage(...options.langs || [])\n ]);\n return s;\n }\n }\n return getSingletonHighlighter;\n}\nfunction createSingletonShorthands(createHighlighter) {\n const getSingletonHighlighter = makeSingletonHighlighter(createHighlighter);\n return {\n getSingletonHighlighter(options) {\n return getSingletonHighlighter(options);\n },\n async codeToHtml(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: \"theme\" in options ? [options.theme] : Object.values(options.themes)\n });\n return shiki.codeToHtml(code, options);\n },\n async codeToHast(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: \"theme\" in options ? [options.theme] : Object.values(options.themes)\n });\n return shiki.codeToHast(code, options);\n },\n async codeToTokens(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: \"theme\" in options ? [options.theme] : Object.values(options.themes)\n });\n return shiki.codeToTokens(code, options);\n },\n async codeToTokensBase(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: [options.theme]\n });\n return shiki.codeToTokensBase(code, options);\n },\n async codeToTokensWithThemes(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: Object.values(options.themes).filter(Boolean)\n });\n return shiki.codeToTokensWithThemes(code, options);\n },\n async getLastGrammarState(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: [options.theme]\n });\n return shiki.getLastGrammarState(code, options);\n }\n };\n}\n\nfunction createJavaScriptRegexEngine(options) {\n warnDeprecated(\"import `createJavaScriptRegexEngine` from `@shikijs/engine-javascript` or `shiki/engine/javascript` instead\");\n return createJavaScriptRegexEngine$1(options);\n}\nfunction defaultJavaScriptRegexConstructor(pattern) {\n warnDeprecated(\"import `defaultJavaScriptRegexConstructor` from `@shikijs/engine-javascript` or `shiki/engine/javascript` instead\");\n return defaultJavaScriptRegexConstructor$1(pattern);\n}\n\nfunction createCssVariablesTheme(options = {}) {\n const {\n name = \"css-variables\",\n variablePrefix = \"--shiki-\",\n fontStyle = true\n } = options;\n const variable = (name2) => {\n if (options.variableDefaults?.[name2])\n return `var(${variablePrefix}${name2}, ${options.variableDefaults[name2]})`;\n return `var(${variablePrefix}${name2})`;\n };\n const theme = {\n name,\n type: \"dark\",\n colors: {\n \"editor.foreground\": variable(\"foreground\"),\n \"editor.background\": variable(\"background\"),\n \"terminal.ansiBlack\": variable(\"ansi-black\"),\n \"terminal.ansiRed\": variable(\"ansi-red\"),\n \"terminal.ansiGreen\": variable(\"ansi-green\"),\n \"terminal.ansiYellow\": variable(\"ansi-yellow\"),\n \"terminal.ansiBlue\": variable(\"ansi-blue\"),\n \"terminal.ansiMagenta\": variable(\"ansi-magenta\"),\n \"terminal.ansiCyan\": variable(\"ansi-cyan\"),\n \"terminal.ansiWhite\": variable(\"ansi-white\"),\n \"terminal.ansiBrightBlack\": variable(\"ansi-bright-black\"),\n \"terminal.ansiBrightRed\": variable(\"ansi-bright-red\"),\n \"terminal.ansiBrightGreen\": variable(\"ansi-bright-green\"),\n \"terminal.ansiBrightYellow\": variable(\"ansi-bright-yellow\"),\n \"terminal.ansiBrightBlue\": variable(\"ansi-bright-blue\"),\n \"terminal.ansiBrightMagenta\": variable(\"ansi-bright-magenta\"),\n \"terminal.ansiBrightCyan\": variable(\"ansi-bright-cyan\"),\n \"terminal.ansiBrightWhite\": variable(\"ansi-bright-white\")\n },\n tokenColors: [\n {\n scope: [\n \"keyword.operator.accessor\",\n \"meta.group.braces.round.function.arguments\",\n \"meta.template.expression\",\n \"markup.fenced_code meta.embedded.block\"\n ],\n settings: {\n foreground: variable(\"foreground\")\n }\n },\n {\n scope: \"emphasis\",\n settings: {\n fontStyle: \"italic\"\n }\n },\n {\n scope: [\"strong\", \"markup.heading.markdown\", \"markup.bold.markdown\"],\n settings: {\n fontStyle: \"bold\"\n }\n },\n {\n scope: [\"markup.italic.markdown\"],\n settings: {\n fontStyle: \"italic\"\n }\n },\n {\n scope: \"meta.link.inline.markdown\",\n settings: {\n fontStyle: \"underline\",\n foreground: variable(\"token-link\")\n }\n },\n {\n scope: [\"string\", \"markup.fenced_code\", \"markup.inline\"],\n settings: {\n foreground: variable(\"token-string\")\n }\n },\n {\n scope: [\"comment\", \"string.quoted.docstring.multi\"],\n settings: {\n foreground: variable(\"token-comment\")\n }\n },\n {\n scope: [\n \"constant.numeric\",\n \"constant.language\",\n \"constant.other.placeholder\",\n \"constant.character.format.placeholder\",\n \"variable.language.this\",\n \"variable.other.object\",\n \"variable.other.class\",\n \"variable.other.constant\",\n \"meta.property-name\",\n \"meta.property-value\",\n \"support\"\n ],\n settings: {\n foreground: variable(\"token-constant\")\n }\n },\n {\n scope: [\n \"keyword\",\n \"storage.modifier\",\n \"storage.type\",\n \"storage.control.clojure\",\n \"entity.name.function.clojure\",\n \"entity.name.tag.yaml\",\n \"support.function.node\",\n \"support.type.property-name.json\",\n \"punctuation.separator.key-value\",\n \"punctuation.definition.template-expression\"\n ],\n settings: {\n foreground: variable(\"token-keyword\")\n }\n },\n {\n scope: \"variable.parameter.function\",\n settings: {\n foreground: variable(\"token-parameter\")\n }\n },\n {\n scope: [\n \"support.function\",\n \"entity.name.type\",\n \"entity.other.inherited-class\",\n \"meta.function-call\",\n \"meta.instance.constructor\",\n \"entity.other.attribute-name\",\n \"entity.name.function\",\n \"constant.keyword.clojure\"\n ],\n settings: {\n foreground: variable(\"token-function\")\n }\n },\n {\n scope: [\n \"entity.name.tag\",\n \"string.quoted\",\n \"string.regexp\",\n \"string.interpolated\",\n \"string.template\",\n \"string.unquoted.plain.out.yaml\",\n \"keyword.other.template\"\n ],\n settings: {\n foreground: variable(\"token-string-expression\")\n }\n },\n {\n scope: [\n \"punctuation.definition.arguments\",\n \"punctuation.definition.dict\",\n \"punctuation.separator\",\n \"meta.function-call.arguments\"\n ],\n settings: {\n foreground: variable(\"token-punctuation\")\n }\n },\n {\n // [Custom] Markdown links\n scope: [\n \"markup.underline.link\",\n \"punctuation.definition.metadata.markdown\"\n ],\n settings: {\n foreground: variable(\"token-link\")\n }\n },\n {\n // [Custom] Markdown list\n scope: [\"beginning.punctuation.definition.list.markdown\"],\n settings: {\n foreground: variable(\"token-string\")\n }\n },\n {\n // [Custom] Markdown punctuation definition brackets\n scope: [\n \"punctuation.definition.string.begin.markdown\",\n \"punctuation.definition.string.end.markdown\",\n \"string.other.link.title.markdown\",\n \"string.other.link.description.markdown\"\n ],\n settings: {\n foreground: variable(\"token-keyword\")\n }\n },\n {\n // [Custom] Diff\n scope: [\n \"markup.inserted\",\n \"meta.diff.header.to-file\",\n \"punctuation.definition.inserted\"\n ],\n settings: {\n foreground: variable(\"token-inserted\")\n }\n },\n {\n scope: [\n \"markup.deleted\",\n \"meta.diff.header.from-file\",\n \"punctuation.definition.deleted\"\n ],\n settings: {\n foreground: variable(\"token-deleted\")\n }\n },\n {\n scope: [\n \"markup.changed\",\n \"punctuation.definition.changed\"\n ],\n settings: {\n foreground: variable(\"token-changed\")\n }\n }\n ]\n };\n if (!fontStyle) {\n theme.tokenColors = theme.tokenColors?.map((tokenColor) => {\n if (tokenColor.settings?.fontStyle)\n delete tokenColor.settings.fontStyle;\n return tokenColor;\n });\n }\n return theme;\n}\n\nexport { addClassToHast, applyColorReplacements, codeToHast, codeToHtml, codeToTokens, codeToTokensBase, codeToTokensWithThemes, createCssVariablesTheme, createHighlighterCore, createHighlighterCoreSync, createJavaScriptRegexEngine, createOnigurumaEngine, createPositionConverter, createShikiInternal, createShikiInternalSync, createSingletonShorthands, createWasmOnigEngine, createdBundledHighlighter, defaultJavaScriptRegexConstructor, getHighlighterCore, getShikiInternal, getSingletonHighlighterCore, getTokenStyleObject, isNoneTheme, isPlainLang, isSpecialLang, isSpecialTheme, loadWasm, makeSingletonHighlighter, makeSingletonHighlighterCore, normalizeGetter, normalizeTheme, resolveColorReplacements, splitLines, splitToken, splitTokens, stringifyTokenStyle, toArray, tokenizeAnsiWithTheme, tokenizeWithTheme, tokensToHast, transformerDecorations, warnDeprecated };\n", "import { bundledLanguages } from './langs.mjs';\nexport { bundledLanguagesAlias, bundledLanguagesBase, bundledLanguagesInfo } from './langs.mjs';\nimport { bundledThemes } from './themes.mjs';\nexport { bundledThemesInfo } from './themes.mjs';\nexport { g as getWasmInlined } from './wasm-dynamic-K7LwWlz7.js';\nimport { createdBundledHighlighter, createSingletonShorthands, warnDeprecated } from '@shikijs/core';\nexport * from '@shikijs/core';\nimport { createOnigurumaEngine } from '@shikijs/engine-oniguruma';\n\nconst createHighlighter = /* @__PURE__ */ createdBundledHighlighter({\n langs: bundledLanguages,\n themes: bundledThemes,\n engine: () => createOnigurumaEngine(import('shiki/wasm'))\n});\nconst {\n codeToHtml,\n codeToHast,\n codeToTokens,\n codeToTokensBase,\n codeToTokensWithThemes,\n getSingletonHighlighter,\n getLastGrammarState\n} = /* @__PURE__ */ createSingletonShorthands(\n createHighlighter\n);\nconst getHighlighter = (options) => {\n warnDeprecated(\"`getHighlighter` is deprecated. Use `createHighlighter` or `getSingletonHighlighter` instead.\");\n return createHighlighter(options);\n};\n\nexport { bundledLanguages, bundledThemes, codeToHast, codeToHtml, codeToTokens, codeToTokensBase, codeToTokensWithThemes, createHighlighter, getHighlighter, getLastGrammarState, getSingletonHighlighter };\n", "/**\n * Shiki-based syntax highlighter\n */\n\nimport { getHighlighter, bundledLanguages, type Highlighter } from 'shiki';\nimport type { HighlightOptions } from './types';\n\nlet highlighterInstance: Highlighter | null = null;\nlet highlighterPromise: Promise<Highlighter> | null = null;\n\n/**\n * Language alias mapping to Shiki language IDs\n */\nconst LANGUAGE_ALIASES: Record<string, string> = {\n js: 'javascript',\n jsx: 'jsx',\n ts: 'typescript',\n tsx: 'tsx',\n html: 'html',\n css: 'css',\n json: 'json',\n md: 'markdown',\n markdown: 'markdown',\n bash: 'bash',\n sh: 'bash',\n shell: 'bash',\n xml: 'xml'\n};\n\n/**\n * Get or create the Shiki highlighter instance\n */\nasync function ensureHighlighter(): Promise<Highlighter> {\n if (highlighterInstance) {\n return highlighterInstance;\n }\n\n if (!highlighterPromise) {\n highlighterPromise = getHighlighter({\n themes: ['github-light', 'github-dark'],\n langs: Object.keys(bundledLanguages)\n });\n }\n\n highlighterInstance = await highlighterPromise;\n return highlighterInstance;\n}\n\n/**\n * Highlight code with Shiki (async)\n */\nexport async function highlight(code: string, options: HighlightOptions = {}): Promise<string> {\n const { language = 'plaintext', theme = 'github-light' } = options;\n\n try {\n const highlighter = await ensureHighlighter();\n const lang = LANGUAGE_ALIASES[language.toLowerCase()] || language;\n\n const html = highlighter.codeToHtml(code, {\n lang: lang as any,\n theme: theme as any\n });\n\n return html;\n } catch (error) {\n console.warn(`[react-code-view/core] Failed to highlight code:`, error);\n return `<pre><code>${escapeHtml(code)}</code></pre>`;\n }\n}\n\n/**\n * Highlight code synchronously (for SSR/build time)\n * WARNING: This requires the highlighter to be pre-initialized with initHighlighter()\n */\nexport function highlightSync(code: string, options: HighlightOptions = {}): string {\n const { language = 'plaintext', theme = 'github-light' } = options;\n\n // If highlighter is not initialized, return plain code\n if (!highlighterInstance) {\n return `<pre class=\"shiki\"><code class=\"language-${language}\">${escapeHtml(code)}</code></pre>`;\n }\n\n try {\n const lang = LANGUAGE_ALIASES[language.toLowerCase()] || language;\n \n const html = highlighterInstance.codeToHtml(code, {\n lang: lang as any,\n theme: theme as any\n });\n \n return html;\n } catch (error) {\n console.warn(`[react-code-view/core] Failed to highlight code synchronously:`, error);\n return `<pre class=\"shiki\"><code class=\"language-${language}\">${escapeHtml(code)}</code></pre>`;\n }\n}\n\n/**\n * Escape HTML special characters\n */\nfunction escapeHtml(text: string): string {\n return text\n .replace(/&/g, '&')\n .replace(/</g, '<')\n .replace(/>/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/**\n * Pre-initialize highlighter for faster subsequent calls\n */\nexport async function initHighlighter(): Promise<void> {\n await ensureHighlighter();\n}\n\n", "/**\n * Markdown renderer with syntax highlighting using Shiki\n */\n\nimport { Renderer } from 'marked';\nimport { highlightSync } from './highlighter';\nimport type { RendererOptions } from './types';\n\n/**\n * Create a marked renderer with Shiki syntax highlighting\n */\nexport function createRenderer(options: RendererOptions = {}): Renderer {\n const { codeBlockClassName = 'rcv-code-block', theme = 'github-light' } = options;\n\n const renderer = new Renderer();\n\n // Override code block rendering with Shiki\n renderer.code = function (code: string, language?: string): string {\n const lang = language || 'plaintext';\n \n // Use Shiki for highlighting\n const highlighted = highlightSync(code, { language: lang, theme });\n\n // Wrap in our custom classes\n return `<div class=\"${codeBlockClassName}\">${highlighted}</div>`;\n };\n\n return renderer;\n}\n", "/**\n * Core markdown transformation utilities\n */\n\nimport { parse } from 'marked';\nimport { createRenderer } from './renderer';\nimport type { TransformOptions, TransformResult } from './types';\n\n/**\n * Escape characters for template literal\n */\nfunction escapeTemplateLiteral(str: string): string {\n return str.replace(/\\\\/g, '\\\\\\\\').replace(/`/g, '\\\\`').replace(/\\$/g, '\\\\$');\n}\n\n/**\n * Transform markdown content to an ES module (sync version)\n *\n * @param source - Markdown source content\n * @param options - Transform options\n * @returns Transformed code as ES module\n */\nexport function transformMarkdownSync(\n source: string,\n options: TransformOptions = {}\n): TransformResult {\n const { markedOptions = {}, codeBlockClassName, theme } = options;\n\n // Create renderer with syntax highlighting\n const renderer = createRenderer({ codeBlockClassName, theme });\n\n // Parse markdown to HTML\n const html = parse(source, {\n renderer,\n ...markedOptions\n });\n\n // Escape for template literal\n const escapedHtml = typeof html === 'string' ? escapeTemplateLiteral(html) : '';\n const rawHtml = typeof html === 'string' ? html : '';\n\n // Generate ES module code\n const code = `export default \\`${escapedHtml}\\`;`;\n\n return { code, html: rawHtml, map: null };\n}\n\n/**\n * Transform markdown content to an ES module (async version)\n *\n * @param source - Markdown source content\n * @param options - Transform options\n * @returns Promise resolving to transformed code\n */\nexport async function transformMarkdown(\n source: string,\n options: TransformOptions = {}\n): Promise<TransformResult> {\n return transformMarkdownSync(source, options);\n}\n", "export var ContextualKeyword; (function (ContextualKeyword) {\n const NONE = 0; ContextualKeyword[ContextualKeyword[\"NONE\"] = NONE] = \"NONE\";\n const _abstract = NONE + 1; ContextualKeyword[ContextualKeyword[\"_abstract\"] = _abstract] = \"_abstract\";\n const _accessor = _abstract + 1; ContextualKeyword[ContextualKeyword[\"_accessor\"] = _accessor] = \"_accessor\";\n const _as = _accessor + 1; ContextualKeyword[ContextualKeyword[\"_as\"] = _as] = \"_as\";\n const _assert = _as + 1; ContextualKeyword[ContextualKeyword[\"_assert\"] = _assert] = \"_assert\";\n const _asserts = _assert + 1; ContextualKeyword[ContextualKeyword[\"_asserts\"] = _asserts] = \"_asserts\";\n const _async = _asserts + 1; ContextualKeyword[ContextualKeyword[\"_async\"] = _async] = \"_async\";\n const _await = _async + 1; ContextualKeyword[ContextualKeyword[\"_await\"] = _await] = \"_await\";\n const _checks = _await + 1; ContextualKeyword[ContextualKeyword[\"_checks\"] = _checks] = \"_checks\";\n const _constructor = _checks + 1; ContextualKeyword[ContextualKeyword[\"_constructor\"] = _constructor] = \"_constructor\";\n const _declare = _constructor + 1; ContextualKeyword[ContextualKeyword[\"_declare\"] = _declare] = \"_declare\";\n const _enum = _declare + 1; ContextualKeyword[ContextualKeyword[\"_enum\"] = _enum] = \"_enum\";\n const _exports = _enum + 1; ContextualKeyword[ContextualKeyword[\"_exports\"] = _exports] = \"_exports\";\n const _from = _exports + 1; ContextualKeyword[ContextualKeyword[\"_from\"] = _from] = \"_from\";\n const _get = _from + 1; ContextualKeyword[ContextualKeyword[\"_get\"] = _get] = \"_get\";\n const _global = _get + 1; ContextualKeyword[ContextualKeyword[\"_global\"] = _global] = \"_global\";\n const _implements = _global + 1; ContextualKeyword[ContextualKeyword[\"_implements\"] = _implements] = \"_implements\";\n const _infer = _implements + 1; ContextualKeyword[ContextualKeyword[\"_infer\"] = _infer] = \"_infer\";\n const _interface = _infer + 1; ContextualKeyword[ContextualKeyword[\"_interface\"] = _interface] = \"_interface\";\n const _is = _interface + 1; ContextualKeyword[ContextualKeyword[\"_is\"] = _is] = \"_is\";\n const _keyof = _is + 1; ContextualKeyword[ContextualKeyword[\"_keyof\"] = _keyof] = \"_keyof\";\n const _mixins = _keyof + 1; ContextualKeyword[ContextualKeyword[\"_mixins\"] = _mixins] = \"_mixins\";\n const _module = _mixins + 1; ContextualKeyword[ContextualKeyword[\"_module\"] = _module] = \"_module\";\n const _namespace = _module + 1; ContextualKeyword[ContextualKeyword[\"_namespace\"] = _namespace] = \"_namespace\";\n const _of = _namespace + 1; ContextualKeyword[ContextualKeyword[\"_of\"] = _of] = \"_of\";\n const _opaque = _of + 1; ContextualKeyword[ContextualKeyword[\"_opaque\"] = _opaque] = \"_opaque\";\n const _out = _opaque + 1; ContextualKeyword[ContextualKeyword[\"_out\"] = _out] = \"_out\";\n const _override = _out + 1; ContextualKeyword[ContextualKeyword[\"_override\"] = _override] = \"_override\";\n const _private = _override + 1; ContextualKeyword[ContextualKeyword[\"_private\"] = _private] = \"_private\";\n const _protected = _private + 1; ContextualKeyword[ContextualKeyword[\"_protected\"] = _protected] = \"_protected\";\n const _proto = _protected + 1; ContextualKeyword[ContextualKeyword[\"_proto\"] = _proto] = \"_proto\";\n const _public = _proto + 1; ContextualKeyword[ContextualKeyword[\"_public\"] = _public] = \"_public\";\n const _readonly = _public + 1; ContextualKeyword[ContextualKeyword[\"_readonly\"] = _readonly] = \"_readonly\";\n const _require = _readonly + 1; ContextualKeyword[ContextualKeyword[\"_require\"] = _require] = \"_require\";\n const _satisfies = _require + 1; ContextualKeyword[ContextualKeyword[\"_satisfies\"] = _satisfies] = \"_satisfies\";\n const _set = _satisfies + 1; ContextualKeyword[ContextualKeyword[\"_set\"] = _set] = \"_set\";\n const _static = _set + 1; ContextualKeyword[ContextualKeyword[\"_static\"] = _static] = \"_static\";\n const _symbol = _static + 1; ContextualKeyword[ContextualKeyword[\"_symbol\"] = _symbol] = \"_symbol\";\n const _type = _symbol + 1; ContextualKeyword[ContextualKeyword[\"_type\"] = _type] = \"_type\";\n const _unique = _type + 1; ContextualKeyword[ContextualKeyword[\"_unique\"] = _unique] = \"_unique\";\n const _using = _unique + 1; ContextualKeyword[ContextualKeyword[\"_using\"] = _using] = \"_using\";\n})(ContextualKeyword || (ContextualKeyword = {}));\n", "// Generated file, do not edit! Run \"yarn generate\" to re-generate this file.\n/* istanbul ignore file */\n/**\n * Enum of all token types, with bit fields to signify meaningful properties.\n */\nexport var TokenType; (function (TokenType) {\n // Precedence 0 means not an operator; otherwise it is a positive number up to 12.\n const PRECEDENCE_MASK = 0xf; TokenType[TokenType[\"PRECEDENCE_MASK\"] = PRECEDENCE_MASK] = \"PRECEDENCE_MASK\";\n const IS_KEYWORD = 1 << 4; TokenType[TokenType[\"IS_KEYWORD\"] = IS_KEYWORD] = \"IS_KEYWORD\";\n const IS_ASSIGN = 1 << 5; TokenType[TokenType[\"IS_ASSIGN\"] = IS_ASSIGN] = \"IS_ASSIGN\";\n const IS_RIGHT_ASSOCIATIVE = 1 << 6; TokenType[TokenType[\"IS_RIGHT_ASSOCIATIVE\"] = IS_RIGHT_ASSOCIATIVE] = \"IS_RIGHT_ASSOCIATIVE\";\n const IS_PREFIX = 1 << 7; TokenType[TokenType[\"IS_PREFIX\"] = IS_PREFIX] = \"IS_PREFIX\";\n const IS_POSTFIX = 1 << 8; TokenType[TokenType[\"IS_POSTFIX\"] = IS_POSTFIX] = \"IS_POSTFIX\";\n const IS_EXPRESSION_START = 1 << 9; TokenType[TokenType[\"IS_EXPRESSION_START\"] = IS_EXPRESSION_START] = \"IS_EXPRESSION_START\";\n\n const num = 512; TokenType[TokenType[\"num\"] = num] = \"num\"; // num startsExpr\n const bigint = 1536; TokenType[TokenType[\"bigint\"] = bigint] = \"bigint\"; // bigint startsExpr\n const decimal = 2560; TokenType[TokenType[\"decimal\"] = decimal] = \"decimal\"; // decimal startsExpr\n const regexp = 3584; TokenType[TokenType[\"regexp\"] = regexp] = \"regexp\"; // regexp startsExpr\n const string = 4608; TokenType[TokenType[\"string\"] = string] = \"string\"; // string startsExpr\n const name = 5632; TokenType[TokenType[\"name\"] = name] = \"name\"; // name startsExpr\n const eof = 6144; TokenType[TokenType[\"eof\"] = eof] = \"eof\"; // eof\n const bracketL = 7680; TokenType[TokenType[\"bracketL\"] = bracketL] = \"bracketL\"; // [ startsExpr\n const bracketR = 8192; TokenType[TokenType[\"bracketR\"] = bracketR] = \"bracketR\"; // ]\n const braceL = 9728; TokenType[TokenType[\"braceL\"] = braceL] = \"braceL\"; // { startsExpr\n const braceBarL = 10752; TokenType[TokenType[\"braceBarL\"] = braceBarL] = \"braceBarL\"; // {| startsExpr\n const braceR = 11264; TokenType[TokenType[\"braceR\"] = braceR] = \"braceR\"; // }\n const braceBarR = 12288; TokenType[TokenType[\"braceBarR\"] = braceBarR] = \"braceBarR\"; // |}\n const parenL = 13824; TokenType[TokenType[\"parenL\"] = parenL] = \"parenL\"; // ( startsExpr\n const parenR = 14336; TokenType[TokenType[\"parenR\"] = parenR] = \"parenR\"; // )\n const comma = 15360; TokenType[TokenType[\"comma\"] = comma] = \"comma\"; // ,\n const semi = 16384; TokenType[TokenType[\"semi\"] = semi] = \"semi\"; // ;\n const colon = 17408; TokenType[TokenType[\"colon\"] = colon] = \"colon\"; // :\n const doubleColon = 18432; TokenType[TokenType[\"doubleColon\"] = doubleColon] = \"doubleColon\"; // ::\n const dot = 19456; TokenType[TokenType[\"dot\"] = dot] = \"dot\"; // .\n const question = 20480; TokenType[TokenType[\"question\"] = question] = \"question\"; // ?\n const questionDot = 21504; TokenType[TokenType[\"questionDot\"] = questionDot] = \"questionDot\"; // ?.\n const arrow = 22528; TokenType[TokenType[\"arrow\"] = arrow] = \"arrow\"; // =>\n const template = 23552; TokenType[TokenType[\"template\"] = template] = \"template\"; // template\n const ellipsis = 24576; TokenType[TokenType[\"ellipsis\"] = ellipsis] = \"ellipsis\"; // ...\n const backQuote = 25600; TokenType[TokenType[\"backQuote\"] = backQuote] = \"backQuote\"; // `\n const dollarBraceL = 27136; TokenType[TokenType[\"dollarBraceL\"] = dollarBraceL] = \"dollarBraceL\"; // ${ startsExpr\n const at = 27648; TokenType[TokenType[\"at\"] = at] = \"at\"; // @\n const hash = 29184; TokenType[TokenType[\"hash\"] = hash] = \"hash\"; // # startsExpr\n const eq = 29728; TokenType[TokenType[\"eq\"] = eq] = \"eq\"; // = isAssign\n const assign = 30752; TokenType[TokenType[\"assign\"] = assign] = \"assign\"; // _= isAssign\n const preIncDec = 32640; TokenType[TokenType[\"preIncDec\"] = preIncDec] = \"preIncDec\"; // ++/-- prefix postfix startsExpr\n const postIncDec = 33664; TokenType[TokenType[\"postIncDec\"] = postIncDec] = \"postIncDec\"; // ++/-- prefix postfix startsExpr\n const bang = 34432; TokenType[TokenType[\"bang\"] = bang] = \"bang\"; // ! prefix startsExpr\n const tilde = 35456; TokenType[TokenType[\"tilde\"] = tilde] = \"tilde\"; // ~ prefix startsExpr\n const pipeline = 35841; TokenType[TokenType[\"pipeline\"] = pipeline] = \"pipeline\"; // |> prec:1\n const nullishCoalescing = 36866; TokenType[TokenType[\"nullishCoalescing\"] = nullishCoalescing] = \"nullishCoalescing\"; // ?? prec:2\n const logicalOR = 37890; TokenType[TokenType[\"logicalOR\"] = logicalOR] = \"logicalOR\"; // || prec:2\n const logicalAND = 38915; TokenType[TokenType[\"logicalAND\"] = logicalAND] = \"logicalAND\"; // && prec:3\n const bitwiseOR = 39940; TokenType[TokenType[\"bitwiseOR\"] = bitwiseOR] = \"bitwiseOR\"; // | prec:4\n const bitwiseXOR = 40965; TokenType[TokenType[\"bitwiseXOR\"] = bitwiseXOR] = \"bitwiseXOR\"; // ^ prec:5\n const bitwiseAND = 41990; TokenType[TokenType[\"bitwiseAND\"] = bitwiseAND] = \"bitwiseAND\"; // & prec:6\n const equality = 43015; TokenType[TokenType[\"equality\"] = equality] = \"equality\"; // ==/!= prec:7\n const lessThan = 44040; TokenType[TokenType[\"lessThan\"] = lessThan] = \"lessThan\"; // < prec:8\n const greaterThan = 45064; TokenType[TokenType[\"greaterThan\"] = greaterThan] = \"greaterThan\"; // > prec:8\n const relationalOrEqual = 46088; TokenType[TokenType[\"relationalOrEqual\"] = relationalOrEqual] = \"relationalOrEqual\"; // <=/>= prec:8\n const bitShiftL = 47113; TokenType[TokenType[\"bitShiftL\"] = bitShiftL] = \"bitShiftL\"; // << prec:9\n const bitShiftR = 48137; TokenType[TokenType[\"bitShiftR\"] = bitShiftR] = \"bitShiftR\"; // >>/>>> prec:9\n const plus = 49802; TokenType[TokenType[\"plus\"] = plus] = \"plus\"; // + prec:10 prefix startsExpr\n const minus = 50826; TokenType[TokenType[\"minus\"] = minus] = \"minus\"; // - prec:10 prefix startsExpr\n const modulo = 51723; TokenType[TokenType[\"modulo\"] = modulo] = \"modulo\"; // % prec:11 startsExpr\n const star = 52235; TokenType[TokenType[\"star\"] = star] = \"star\"; // * prec:11\n const slash = 53259; TokenType[TokenType[\"slash\"] = slash] = \"slash\"; // / prec:11\n const exponent = 54348; TokenType[TokenType[\"exponent\"] = exponent] = \"exponent\"; // ** prec:12 rightAssociative\n const jsxName = 55296; TokenType[TokenType[\"jsxName\"] = jsxName] = \"jsxName\"; // jsxName\n const jsxText = 56320; TokenType[TokenType[\"jsxText\"] = jsxText] = \"jsxText\"; // jsxText\n const jsxEmptyText = 57344; TokenType[TokenType[\"jsxEmptyText\"] = jsxEmptyText] = \"jsxEmptyText\"; // jsxEmptyText\n const jsxTagStart = 58880; TokenType[TokenType[\"jsxTagStart\"] = jsxTagStart] = \"jsxTagStart\"; // jsxTagStart startsExpr\n const jsxTagEnd = 59392; TokenType[TokenType[\"jsxTagEnd\"] = jsxTagEnd] = \"jsxTagEnd\"; // jsxTagEnd\n const typeParameterStart = 60928; TokenType[TokenType[\"typeParameterStart\"] = typeParameterStart] = \"typeParameterStart\"; // typeParameterStart startsExpr\n const nonNullAssertion = 61440; TokenType[TokenType[\"nonNullAssertion\"] = nonNullAssertion] = \"nonNullAssertion\"; // nonNullAssertion\n const _break = 62480; TokenType[TokenType[\"_break\"] = _break] = \"_break\"; // break keyword\n const _case = 63504; TokenType[TokenType[\"_case\"] = _case] = \"_case\"; // case keyword\n const _catch = 64528; TokenType[TokenType[\"_catch\"] = _catch] = \"_catch\"; // catch keyword\n const _continue = 65552; TokenType[TokenType[\"_continue\"] = _continue] = \"_continue\"; // continue keyword\n const _debugger = 66576; TokenType[TokenType[\"_debugger\"] = _debugger] = \"_debugger\"; // debugger keyword\n const _default = 67600; TokenType[TokenType[\"_default\"] = _default] = \"_default\"; // default keyword\n const _do = 68624; TokenType[TokenType[\"_do\"] = _do] = \"_do\"; // do keyword\n const _else = 69648; TokenType[TokenType[\"_else\"] = _else] = \"_else\"; // else keyword\n const _finally = 70672; TokenType[TokenType[\"_finally\"] = _finally] = \"_finally\"; // finally keyword\n const _for = 71696; TokenType[TokenType[\"_for\"] = _for] = \"_for\"; // for keyword\n const _function = 73232; TokenType[TokenType[\"_function\"] = _function] = \"_function\"; // function keyword startsExpr\n const _if = 73744; TokenType[TokenType[\"_if\"] = _if] = \"_if\"; // if keyword\n const _return = 74768; TokenType[TokenType[\"_return\"] = _return] = \"_return\"; // return keyword\n const _switch = 75792; TokenType[TokenType[\"_switch\"] = _switch] = \"_switch\"; // switch keyword\n const _throw = 77456; TokenType[TokenType[\"_throw\"] = _throw] = \"_throw\"; // throw keyword prefix startsExpr\n const _try = 77840; TokenType[TokenType[\"_try\"] = _try] = \"_try\"; // try keyword\n const _var = 78864; TokenType[TokenType[\"_var\"] = _var] = \"_var\"; // var keyword\n const _let = 79888; TokenType[TokenType[\"_let\"] = _let] = \"_let\"; // let keyword\n const _const = 80912; TokenType[TokenType[\"_const\"] = _const] = \"_const\"; // const keyword\n const _while = 81936; TokenType[TokenType[\"_while\"] = _while] = \"_while\"; // while keyword\n const _with = 82960; TokenType[TokenType[\"_with\"] = _with] = \"_with\"; // with keyword\n const _new = 84496; TokenType[TokenType[\"_new\"] = _new] = \"_new\"; // new keyword startsExpr\n const _this = 85520; TokenType[TokenType[\"_this\"] = _this] = \"_this\"; // this keyword startsExpr\n const _super = 86544; TokenType[TokenType[\"_super\"] = _super] = \"_super\"; // super keyword startsExpr\n const _class = 87568; TokenType[TokenType[\"_class\"] = _class] = \"_class\"; // class keyword startsExpr\n const _extends = 88080; TokenType[TokenType[\"_extends\"] = _extends] = \"_extends\"; // extends keyword\n const _export = 89104; TokenType[TokenType[\"_export\"] = _export] = \"_export\"; // export keyword\n const _import = 90640; TokenType[TokenType[\"_import\"] = _import] = \"_import\"; // import keyword startsExpr\n const _yield = 91664; TokenType[TokenType[\"_yield\"] = _yield] = \"_yield\"; // yield keyword startsExpr\n const _null = 92688; TokenType[TokenType[\"_null\"] = _null] = \"_null\"; // null keyword startsExpr\n const _true = 93712; TokenType[TokenType[\"_true\"] = _true] = \"_true\"; // true keyword startsExpr\n const _false = 94736; TokenType[TokenType[\"_false\"] = _false] = \"_false\"; // false keyword startsExpr\n const _in = 95256; TokenType[TokenType[\"_in\"] = _in] = \"_in\"; // in prec:8 keyword\n const _instanceof = 96280; TokenType[TokenType[\"_instanceof\"] = _instanceof] = \"_instanceof\"; // instanceof prec:8 keyword\n const _typeof = 97936; TokenType[TokenType[\"_typeof\"] = _typeof] = \"_typeof\"; // typeof keyword prefix startsExpr\n const _void = 98960; TokenType[TokenType[\"_void\"] = _void] = \"_void\"; // void keyword prefix startsExpr\n const _delete = 99984; TokenType[TokenType[\"_delete\"] = _delete] = \"_delete\"; // delete keyword prefix startsExpr\n const _async = 100880; TokenType[TokenType[\"_async\"] = _async] = \"_async\"; // async keyword startsExpr\n const _get = 101904; TokenType[TokenType[\"_get\"] = _get] = \"_get\"; // get keyword startsExpr\n const _set = 102928; TokenType[TokenType[\"_set\"] = _set] = \"_set\"; // set keyword startsExpr\n const _declare = 103952; TokenType[TokenType[\"_declare\"] = _declare] = \"_declare\"; // declare keyword startsExpr\n const _readonly = 104976; TokenType[TokenType[\"_readonly\"] = _readonly] = \"_readonly\"; // readonly keyword startsExpr\n const _abstract = 106000; TokenType[TokenType[\"_abstract\"] = _abstract] = \"_abstract\"; // abstract keyword startsExpr\n const _static = 107024; TokenType[TokenType[\"_static\"] = _static] = \"_static\"; // static keyword startsExpr\n const _public = 107536; TokenType[TokenType[\"_public\"] = _public] = \"_public\"; // public keyword\n const _private = 108560; TokenType[TokenType[\"_private\"] = _private] = \"_private\"; // private keyword\n const _protected = 109584; TokenType[TokenType[\"_protected\"] = _protected] = \"_protected\"; // protected keyword\n const _override = 110608; TokenType[TokenType[\"_override\"] = _override] = \"_override\"; // override keyword\n const _as = 112144; TokenType[TokenType[\"_as\"] = _as] = \"_as\"; // as keyword startsExpr\n const _enum = 113168; TokenType[TokenType[\"_enum\"] = _enum] = \"_enum\"; // enum keyword startsExpr\n const _type = 114192; TokenType[TokenType[\"_type\"] = _type] = \"_type\"; // type keyword startsExpr\n const _implements = 115216; TokenType[TokenType[\"_implements\"] = _implements] = \"_implements\"; // implements keyword startsExpr\n})(TokenType || (TokenType = {}));\nexport function formatTokenType(tokenType) {\n switch (tokenType) {\n case TokenType.num:\n return \"num\";\n case TokenType.bigint:\n return \"bigint\";\n case TokenType.decimal:\n return \"decimal\";\n case TokenType.regexp:\n return \"regexp\";\n case TokenType.string:\n return \"string\";\n case TokenType.name:\n return \"name\";\n case TokenType.eof:\n return \"eof\";\n case TokenType.bracketL:\n return \"[\";\n case TokenType.bracketR:\n return \"]\";\n case TokenType.braceL:\n return \"{\";\n case TokenType.braceBarL:\n return \"{|\";\n case TokenType.braceR:\n return \"}\";\n case TokenType.braceBarR:\n return \"|}\";\n case TokenType.parenL:\n return \"(\";\n case TokenType.parenR:\n return \")\";\n case TokenType.comma:\n return \",\";\n case TokenType.semi:\n return \";\";\n case TokenType.colon:\n return \":\";\n case TokenType.doubleColon:\n return \"::\";\n case TokenType.dot:\n return \".\";\n case TokenType.question:\n return \"?\";\n case TokenType.questionDot:\n return \"?.\";\n case TokenType.arrow:\n return \"=>\";\n case TokenType.template:\n return \"template\";\n case TokenType.ellipsis:\n return \"...\";\n case TokenType.backQuote:\n return \"`\";\n case TokenType.dollarBraceL:\n return \"${\";\n case TokenType.at:\n return \"@\";\n case TokenType.hash:\n return \"#\";\n case TokenType.eq:\n return \"=\";\n case TokenType.assign:\n return \"_=\";\n case TokenType.preIncDec:\n return \"++/--\";\n case TokenType.postIncDec:\n return \"++/--\";\n case TokenType.bang:\n return \"!\";\n case TokenType.tilde:\n return \"~\";\n case TokenType.pipeline:\n return \"|>\";\n case TokenType.nullishCoalescing:\n return \"??\";\n case TokenType.logicalOR:\n return \"||\";\n case TokenType.logicalAND:\n return \"&&\";\n case TokenType.bitwiseOR:\n return \"|\";\n case TokenType.bitwiseXOR:\n return \"^\";\n case TokenType.bitwiseAND:\n return \"&\";\n case TokenType.equality:\n return \"==/!=\";\n case TokenType.lessThan:\n return \"<\";\n case TokenType.greaterThan:\n return \">\";\n case TokenType.relationalOrEqual:\n return \"<=/>=\";\n case TokenType.bitShiftL:\n return \"<<\";\n case TokenType.bitShiftR:\n return \">>/>>>\";\n case TokenType.plus:\n return \"+\";\n case TokenType.minus:\n return \"-\";\n case TokenType.modulo:\n return \"%\";\n case TokenType.star:\n return \"*\";\n case TokenType.slash:\n return \"/\";\n case TokenType.exponent:\n return \"**\";\n case TokenType.jsxName:\n return \"jsxName\";\n case TokenType.jsxText:\n return \"jsxText\";\n case TokenType.jsxEmptyText:\n return \"jsxEmptyText\";\n case TokenType.jsxTagStart:\n return \"jsxTagStart\";\n case TokenType.jsxTagEnd:\n return \"jsxTagEnd\";\n case TokenType.typeParameterStart:\n return \"typeParameterStart\";\n case TokenType.nonNullAssertion:\n return \"nonNullAssertion\";\n case TokenType._break:\n return \"break\";\n case TokenType._case:\n return \"case\";\n case TokenType._catch:\n return \"catch\";\n case TokenType._continue:\n return \"continue\";\n case TokenType._debugger:\n return \"debugger\";\n case TokenType._default:\n return \"default\";\n case TokenType._do:\n return \"do\";\n case TokenType._else:\n return \"else\";\n case TokenType._finally:\n return \"finally\";\n case TokenType._for:\n return \"for\";\n case TokenType._function:\n return \"function\";\n case TokenType._if:\n return \"if\";\n case TokenType._return:\n return \"return\";\n case TokenType._switch:\n return \"switch\";\n case TokenType._throw:\n return \"throw\";\n case TokenType._try:\n return \"try\";\n case TokenType._var:\n return \"var\";\n case TokenType._let:\n return \"let\";\n case TokenType._const:\n return \"const\";\n case TokenType._while:\n return \"while\";\n case TokenType._with:\n return \"with\";\n case TokenType._new:\n return \"new\";\n case TokenType._this:\n return \"this\";\n case TokenType._super:\n return \"super\";\n case TokenType._class:\n return \"class\";\n case TokenType._extends:\n return \"extends\";\n case TokenType._export:\n return \"export\";\n case TokenType._import:\n return \"import\";\n case TokenType._yield:\n return \"yield\";\n case TokenType._null:\n return \"null\";\n case TokenType._true:\n return \"true\";\n case TokenType._false:\n return \"false\";\n case TokenType._in:\n return \"in\";\n case TokenType._instanceof:\n return \"instanceof\";\n case TokenType._typeof:\n return \"typeof\";\n case TokenType._void:\n return \"void\";\n case TokenType._delete:\n return \"delete\";\n case TokenType._async:\n return \"async\";\n case TokenType._get:\n return \"get\";\n case TokenType._set:\n return \"set\";\n case TokenType._declare:\n return \"declare\";\n case TokenType._readonly:\n return \"readonly\";\n case TokenType._abstract:\n return \"abstract\";\n case TokenType._static:\n return \"static\";\n case TokenType._public:\n return \"public\";\n case TokenType._private:\n return \"private\";\n case TokenType._protected:\n return \"protected\";\n case TokenType._override:\n return \"override\";\n case TokenType._as:\n return \"as\";\n case TokenType._enum:\n return \"enum\";\n case TokenType._type:\n return \"type\";\n case TokenType._implements:\n return \"implements\";\n default:\n return \"\";\n }\n}\n", "\nimport {ContextualKeyword} from \"./keywords\";\nimport { TokenType as tt} from \"./types\";\n\nexport class Scope {\n \n \n \n\n constructor(startTokenIndex, endTokenIndex, isFunctionScope) {\n this.startTokenIndex = startTokenIndex;\n this.endTokenIndex = endTokenIndex;\n this.isFunctionScope = isFunctionScope;\n }\n}\n\nexport class StateSnapshot {\n constructor(\n potentialArrowAt,\n noAnonFunctionType,\n inDisallowConditionalTypesContext,\n tokensLength,\n scopesLength,\n pos,\n type,\n contextualKeyword,\n start,\n end,\n isType,\n scopeDepth,\n error,\n ) {;this.potentialArrowAt = potentialArrowAt;this.noAnonFunctionType = noAnonFunctionType;this.inDisallowConditionalTypesContext = inDisallowConditionalTypesContext;this.tokensLength = tokensLength;this.scopesLength = scopesLength;this.pos = pos;this.type = type;this.contextualKeyword = contextualKeyword;this.start = start;this.end = end;this.isType = isType;this.scopeDepth = scopeDepth;this.error = error;}\n}\n\nexport default class State {constructor() { State.prototype.__init.call(this);State.prototype.__init2.call(this);State.prototype.__init3.call(this);State.prototype.__init4.call(this);State.prototype.__init5.call(this);State.prototype.__init6.call(this);State.prototype.__init7.call(this);State.prototype.__init8.call(this);State.prototype.__init9.call(this);State.prototype.__init10.call(this);State.prototype.__init11.call(this);State.prototype.__init12.call(this);State.prototype.__init13.call(this); }\n // Used to signify the start of a potential arrow function\n __init() {this.potentialArrowAt = -1}\n\n // Used by Flow to handle an edge case involving function type parsing.\n __init2() {this.noAnonFunctionType = false}\n\n // Used by TypeScript to handle ambiguities when parsing conditional types.\n __init3() {this.inDisallowConditionalTypesContext = false}\n\n // Token store.\n __init4() {this.tokens = []}\n\n // Array of all observed scopes, ordered by their ending position.\n __init5() {this.scopes = []}\n\n // The current position of the tokenizer in the input.\n __init6() {this.pos = 0}\n\n // Information about the current token.\n __init7() {this.type = tt.eof}\n __init8() {this.contextualKeyword = ContextualKeyword.NONE}\n __init9() {this.start = 0}\n __init10() {this.end = 0}\n\n __init11() {this.isType = false}\n __init12() {this.scopeDepth = 0}\n\n /**\n * If the parser is in an error state, then the token is always tt.eof and all functions can\n * keep executing but should be written so they don't get into an infinite loop in this situation.\n *\n * This approach, combined with the ability to snapshot and restore state, allows us to implement\n * backtracking without exceptions and without needing to explicitly propagate error states\n * everywhere.\n */\n __init13() {this.error = null}\n\n snapshot() {\n return new StateSnapshot(\n this.potentialArrowAt,\n this.noAnonFunctionType,\n this.inDisallowConditionalTypesContext,\n this.tokens.length,\n this.scopes.length,\n this.pos,\n this.type,\n this.contextualKeyword,\n this.start,\n this.end,\n this.isType,\n this.scopeDepth,\n this.error,\n );\n }\n\n restoreFromSnapshot(snapshot) {\n this.potentialArrowAt = snapshot.potentialArrowAt;\n this.noAnonFunctionType = snapshot.noAnonFunctionType;\n this.inDisallowConditionalTypesContext = snapshot.inDisallowConditionalTypesContext;\n this.tokens.length = snapshot.tokensLength;\n this.scopes.length = snapshot.scopesLength;\n this.pos = snapshot.pos;\n this.type = snapshot.type;\n this.contextualKeyword = snapshot.contextualKeyword;\n this.start = snapshot.start;\n this.end = snapshot.end;\n this.isType = snapshot.isType;\n this.scopeDepth = snapshot.scopeDepth;\n this.error = snapshot.error;\n }\n}\n", "export var charCodes; (function (charCodes) {\n const backSpace = 8; charCodes[charCodes[\"backSpace\"] = backSpace] = \"backSpace\";\n const lineFeed = 10; charCodes[charCodes[\"lineFeed\"] = lineFeed] = \"lineFeed\"; // '\\n'\n const tab = 9; charCodes[charCodes[\"tab\"] = tab] = \"tab\"; // '\\t'\n const carriageReturn = 13; charCodes[charCodes[\"carriageReturn\"] = carriageReturn] = \"carriageReturn\"; // '\\r'\n const shiftOut = 14; charCodes[charCodes[\"shiftOut\"] = shiftOut] = \"shiftOut\";\n const space = 32; charCodes[charCodes[\"space\"] = space] = \"space\";\n const exclamationMark = 33; charCodes[charCodes[\"exclamationMark\"] = exclamationMark] = \"exclamationMark\"; // '!'\n const quotationMark = 34; charCodes[charCodes[\"quotationMark\"] = quotationMark] = \"quotationMark\"; // '\"'\n const numberSign = 35; charCodes[charCodes[\"numberSign\"] = numberSign] = \"numberSign\"; // '#'\n const dollarSign = 36; charCodes[charCodes[\"dollarSign\"] = dollarSign] = \"dollarSign\"; // '$'\n const percentSign = 37; charCodes[charCodes[\"percentSign\"] = percentSign] = \"percentSign\"; // '%'\n const ampersand = 38; charCodes[charCodes[\"ampersand\"] = ampersand] = \"ampersand\"; // '&'\n const apostrophe = 39; charCodes[charCodes[\"apostrophe\"] = apostrophe] = \"apostrophe\"; // '''\n const leftParenthesis = 40; charCodes[charCodes[\"leftParenthesis\"] = leftParenthesis] = \"leftParenthesis\"; // '('\n const rightParenthesis = 41; charCodes[charCodes[\"rightParenthesis\"] = rightParenthesis] = \"rightParenthesis\"; // ')'\n const asterisk = 42; charCodes[charCodes[\"asterisk\"] = asterisk] = \"asterisk\"; // '*'\n const plusSign = 43; charCodes[charCodes[\"plusSign\"] = plusSign] = \"plusSign\"; // '+'\n const comma = 44; charCodes[charCodes[\"comma\"] = comma] = \"comma\"; // ','\n const dash = 45; charCodes[charCodes[\"dash\"] = dash] = \"dash\"; // '-'\n const dot = 46; charCodes[charCodes[\"dot\"] = dot] = \"dot\"; // '.'\n const slash = 47; charCodes[charCodes[\"slash\"] = slash] = \"slash\"; // '/'\n const digit0 = 48; charCodes[charCodes[\"digit0\"] = digit0] = \"digit0\"; // '0'\n const digit1 = 49; charCodes[charCodes[\"digit1\"] = digit1] = \"digit1\"; // '1'\n const digit2 = 50; charCodes[charCodes[\"digit2\"] = digit2] = \"digit2\"; // '2'\n const digit3 = 51; charCodes[charCodes[\"digit3\"] = digit3] = \"digit3\"; // '3'\n const digit4 = 52; charCodes[charCodes[\"digit4\"] = digit4] = \"digit4\"; // '4'\n const digit5 = 53; charCodes[charCodes[\"digit5\"] = digit5] = \"digit5\"; // '5'\n const digit6 = 54; charCodes[charCodes[\"digit6\"] = digit6] = \"digit6\"; // '6'\n const digit7 = 55; charCodes[charCodes[\"digit7\"] = digit7] = \"digit7\"; // '7'\n const digit8 = 56; charCodes[charCodes[\"digit8\"] = digit8] = \"digit8\"; // '8'\n const digit9 = 57; charCodes[charCodes[\"digit9\"] = digit9] = \"digit9\"; // '9'\n const colon = 58; charCodes[charCodes[\"colon\"] = colon] = \"colon\"; // ':'\n const semicolon = 59; charCodes[charCodes[\"semicolon\"] = semicolon] = \"semicolon\"; // ';'\n const lessThan = 60; charCodes[charCodes[\"lessThan\"] = lessThan] = \"lessThan\"; // '<'\n const equalsTo = 61; charCodes[charCodes[\"equalsTo\"] = equalsTo] = \"equalsTo\"; // '='\n const greaterThan = 62; charCodes[charCodes[\"greaterThan\"] = greaterThan] = \"greaterThan\"; // '>'\n const questionMark = 63; charCodes[charCodes[\"questionMark\"] = questionMark] = \"questionMark\"; // '?'\n const atSign = 64; charCodes[charCodes[\"atSign\"] = atSign] = \"atSign\"; // '@'\n const uppercaseA = 65; charCodes[charCodes[\"uppercaseA\"] = uppercaseA] = \"uppercaseA\"; // 'A'\n const uppercaseB = 66; charCodes[charCodes[\"uppercaseB\"] = uppercaseB] = \"uppercaseB\"; // 'B'\n const uppercaseC = 67; charCodes[charCodes[\"uppercaseC\"] = uppercaseC] = \"uppercaseC\"; // 'C'\n const uppercaseD = 68; charCodes[charCodes[\"uppercaseD\"] = uppercaseD] = \"uppercaseD\"; // 'D'\n const uppercaseE = 69; charCodes[charCodes[\"uppercaseE\"] = uppercaseE] = \"uppercaseE\"; // 'E'\n const uppercaseF = 70; charCodes[charCodes[\"uppercaseF\"] = uppercaseF] = \"uppercaseF\"; // 'F'\n const uppercaseG = 71; charCodes[charCodes[\"uppercaseG\"] = uppercaseG] = \"uppercaseG\"; // 'G'\n const uppercaseH = 72; charCodes[charCodes[\"uppercaseH\"] = uppercaseH] = \"uppercaseH\"; // 'H'\n const uppercaseI = 73; charCodes[charCodes[\"uppercaseI\"] = uppercaseI] = \"uppercaseI\"; // 'I'\n const uppercaseJ = 74; charCodes[charCodes[\"uppercaseJ\"] = uppercaseJ] = \"uppercaseJ\"; // 'J'\n const uppercaseK = 75; charCodes[charCodes[\"uppercaseK\"] = uppercaseK] = \"uppercaseK\"; // 'K'\n const uppercaseL = 76; charCodes[charCodes[\"uppercaseL\"] = uppercaseL] = \"uppercaseL\"; // 'L'\n const uppercaseM = 77; charCodes[charCodes[\"uppercaseM\"] = uppercaseM] = \"uppercaseM\"; // 'M'\n const uppercaseN = 78; charCodes[charCodes[\"uppercaseN\"] = uppercaseN] = \"uppercaseN\"; // 'N'\n const uppercaseO = 79; charCodes[charCodes[\"uppercaseO\"] = uppercaseO] = \"uppercaseO\"; // 'O'\n const uppercaseP = 80; charCodes[charCodes[\"uppercaseP\"] = uppercaseP] = \"uppercaseP\"; // 'P'\n const uppercaseQ = 81; charCodes[charCodes[\"uppercaseQ\"] = uppercaseQ] = \"uppercaseQ\"; // 'Q'\n const uppercaseR = 82; charCodes[charCodes[\"uppercaseR\"] = uppercaseR] = \"uppercaseR\"; // 'R'\n const uppercaseS = 83; charCodes[charCodes[\"uppercaseS\"] = uppercaseS] = \"uppercaseS\"; // 'S'\n const uppercaseT = 84; charCodes[charCodes[\"uppercaseT\"] = uppercaseT] = \"uppercaseT\"; // 'T'\n const uppercaseU = 85; charCodes[charCodes[\"uppercaseU\"] = uppercaseU] = \"uppercaseU\"; // 'U'\n const uppercaseV = 86; charCodes[charCodes[\"uppercaseV\"] = uppercaseV] = \"uppercaseV\"; // 'V'\n const uppercaseW = 87; charCodes[charCodes[\"uppercaseW\"] = uppercaseW] = \"uppercaseW\"; // 'W'\n const uppercaseX = 88; charCodes[charCodes[\"uppercaseX\"] = uppercaseX] = \"uppercaseX\"; // 'X'\n const uppercaseY = 89; charCodes[charCodes[\"uppercaseY\"] = uppercaseY] = \"uppercaseY\"; // 'Y'\n const uppercaseZ = 90; charCodes[charCodes[\"uppercaseZ\"] = uppercaseZ] = \"uppercaseZ\"; // 'Z'\n const leftSquareBracket = 91; charCodes[charCodes[\"leftSquareBracket\"] = leftSquareBracket] = \"leftSquareBracket\"; // '['\n const backslash = 92; charCodes[charCodes[\"backslash\"] = backslash] = \"backslash\"; // '\\ '\n const rightSquareBracket = 93; charCodes[charCodes[\"rightSquareBracket\"] = rightSquareBracket] = \"rightSquareBracket\"; // ']'\n const caret = 94; charCodes[charCodes[\"caret\"] = caret] = \"caret\"; // '^'\n const underscore = 95; charCodes[charCodes[\"underscore\"] = underscore] = \"underscore\"; // '_'\n const graveAccent = 96; charCodes[charCodes[\"graveAccent\"] = graveAccent] = \"graveAccent\"; // '`'\n const lowercaseA = 97; charCodes[charCodes[\"lowercaseA\"] = lowercaseA] = \"lowercaseA\"; // 'a'\n const lowercaseB = 98; charCodes[charCodes[\"lowercaseB\"] = lowercaseB] = \"lowercaseB\"; // 'b'\n const lowercaseC = 99; charCodes[charCodes[\"lowercaseC\"] = lowercaseC] = \"lowercaseC\"; // 'c'\n const lowercaseD = 100; charCodes[charCodes[\"lowercaseD\"] = lowercaseD] = \"lowercaseD\"; // 'd'\n const lowercaseE = 101; charCodes[charCodes[\"lowercaseE\"] = lowercaseE] = \"lowercaseE\"; // 'e'\n const lowercaseF = 102; charCodes[charCodes[\"lowercaseF\"] = lowercaseF] = \"lowercaseF\"; // 'f'\n const lowercaseG = 103; charCodes[charCodes[\"lowercaseG\"] = lowercaseG] = \"lowercaseG\"; // 'g'\n const lowercaseH = 104; charCodes[charCodes[\"lowercaseH\"] = lowercaseH] = \"lowercaseH\"; // 'h'\n const lowercaseI = 105; charCodes[charCodes[\"lowercaseI\"] = lowercaseI] = \"lowercaseI\"; // 'i'\n const lowercaseJ = 106; charCodes[charCodes[\"lowercaseJ\"] = lowercaseJ] = \"lowercaseJ\"; // 'j'\n const lowercaseK = 107; charCodes[charCodes[\"lowercaseK\"] = lowercaseK] = \"lowercaseK\"; // 'k'\n const lowercaseL = 108; charCodes[charCodes[\"lowercaseL\"] = lowercaseL] = \"lowercaseL\"; // 'l'\n const lowercaseM = 109; charCodes[charCodes[\"lowercaseM\"] = lowercaseM] = \"lowercaseM\"; // 'm'\n const lowercaseN = 110; charCodes[charCodes[\"lowercaseN\"] = lowercaseN] = \"lowercaseN\"; // 'n'\n const lowercaseO = 111; charCodes[charCodes[\"lowercaseO\"] = lowercaseO] = \"lowercaseO\"; // 'o'\n const lowercaseP = 112; charCodes[charCodes[\"lowercaseP\"] = lowercaseP] = \"lowercaseP\"; // 'p'\n const lowercaseQ = 113; charCodes[charCodes[\"lowercaseQ\"] = lowercaseQ] = \"lowercaseQ\"; // 'q'\n const lowercaseR = 114; charCodes[charCodes[\"lowercaseR\"] = lowercaseR] = \"lowercaseR\"; // 'r'\n const lowercaseS = 115; charCodes[charCodes[\"lowercaseS\"] = lowercaseS] = \"lowercaseS\"; // 's'\n const lowercaseT = 116; charCodes[charCodes[\"lowercaseT\"] = lowercaseT] = \"lowercaseT\"; // 't'\n const lowercaseU = 117; charCodes[charCodes[\"lowercaseU\"] = lowercaseU] = \"lowercaseU\"; // 'u'\n const lowercaseV = 118; charCodes[charCodes[\"lowercaseV\"] = lowercaseV] = \"lowercaseV\"; // 'v'\n const lowercaseW = 119; charCodes[charCodes[\"lowercaseW\"] = lowercaseW] = \"lowercaseW\"; // 'w'\n const lowercaseX = 120; charCodes[charCodes[\"lowercaseX\"] = lowercaseX] = \"lowercaseX\"; // 'x'\n const lowercaseY = 121; charCodes[charCodes[\"lowercaseY\"] = lowercaseY] = \"lowercaseY\"; // 'y'\n const lowercaseZ = 122; charCodes[charCodes[\"lowercaseZ\"] = lowercaseZ] = \"lowercaseZ\"; // 'z'\n const leftCurlyBrace = 123; charCodes[charCodes[\"leftCurlyBrace\"] = leftCurlyBrace] = \"leftCurlyBrace\"; // '{'\n const verticalBar = 124; charCodes[charCodes[\"verticalBar\"] = verticalBar] = \"verticalBar\"; // '|'\n const rightCurlyBrace = 125; charCodes[charCodes[\"rightCurlyBrace\"] = rightCurlyBrace] = \"rightCurlyBrace\"; // '}'\n const tilde = 126; charCodes[charCodes[\"tilde\"] = tilde] = \"tilde\"; // '~'\n const nonBreakingSpace = 160; charCodes[charCodes[\"nonBreakingSpace\"] = nonBreakingSpace] = \"nonBreakingSpace\";\n // eslint-disable-next-line no-irregular-whitespace\n const oghamSpaceMark = 5760; charCodes[charCodes[\"oghamSpaceMark\"] = oghamSpaceMark] = \"oghamSpaceMark\"; // '\u1680'\n const lineSeparator = 8232; charCodes[charCodes[\"lineSeparator\"] = lineSeparator] = \"lineSeparator\";\n const paragraphSeparator = 8233; charCodes[charCodes[\"paragraphSeparator\"] = paragraphSeparator] = \"paragraphSeparator\";\n})(charCodes || (charCodes = {}));\n\nexport function isDigit(code) {\n return (\n (code >= charCodes.digit0 && code <= charCodes.digit9) ||\n (code >= charCodes.lowercaseA && code <= charCodes.lowercaseF) ||\n (code >= charCodes.uppercaseA && code <= charCodes.uppercaseF)\n );\n}\n", "import State from \"../tokenizer/state\";\nimport {charCodes} from \"../util/charcodes\";\n\nexport let isJSXEnabled;\nexport let isTypeScriptEnabled;\nexport let isFlowEnabled;\nexport let state;\nexport let input;\nexport let nextContextId;\n\nexport function getNextContextId() {\n return nextContextId++;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function augmentError(error) {\n if (\"pos\" in error) {\n const loc = locationForIndex(error.pos);\n error.message += ` (${loc.line}:${loc.column})`;\n error.loc = loc;\n }\n return error;\n}\n\nexport class Loc {\n \n \n constructor(line, column) {\n this.line = line;\n this.column = column;\n }\n}\n\nexport function locationForIndex(pos) {\n let line = 1;\n let column = 1;\n for (let i = 0; i < pos; i++) {\n if (input.charCodeAt(i) === charCodes.lineFeed) {\n line++;\n column = 1;\n } else {\n column++;\n }\n }\n return new Loc(line, column);\n}\n\nexport function initParser(\n inputCode,\n isJSXEnabledArg,\n isTypeScriptEnabledArg,\n isFlowEnabledArg,\n) {\n input = inputCode;\n state = new State();\n nextContextId = 1;\n isJSXEnabled = isJSXEnabledArg;\n isTypeScriptEnabled = isTypeScriptEnabledArg;\n isFlowEnabled = isFlowEnabledArg;\n}\n", "import {eat, finishToken, lookaheadTypeAndKeyword, match, nextTokenStart} from \"../tokenizer/index\";\n\nimport {formatTokenType, TokenType as tt} from \"../tokenizer/types\";\nimport {charCodes} from \"../util/charcodes\";\nimport {input, state} from \"./base\";\n\n// ## Parser utilities\n\n// Tests whether parsed token is a contextual keyword.\nexport function isContextual(contextualKeyword) {\n return state.contextualKeyword === contextualKeyword;\n}\n\nexport function isLookaheadContextual(contextualKeyword) {\n const l = lookaheadTypeAndKeyword();\n return l.type === tt.name && l.contextualKeyword === contextualKeyword;\n}\n\n// Consumes contextual keyword if possible.\nexport function eatContextual(contextualKeyword) {\n return state.contextualKeyword === contextualKeyword && eat(tt.name);\n}\n\n// Asserts that following token is given contextual keyword.\nexport function expectContextual(contextualKeyword) {\n if (!eatContextual(contextualKeyword)) {\n unexpected();\n }\n}\n\n// Test whether a semicolon can be inserted at the current position.\nexport function canInsertSemicolon() {\n return match(tt.eof) || match(tt.braceR) || hasPrecedingLineBreak();\n}\n\nexport function hasPrecedingLineBreak() {\n const prevToken = state.tokens[state.tokens.length - 1];\n const lastTokEnd = prevToken ? prevToken.end : 0;\n for (let i = lastTokEnd; i < state.start; i++) {\n const code = input.charCodeAt(i);\n if (\n code === charCodes.lineFeed ||\n code === charCodes.carriageReturn ||\n code === 0x2028 ||\n code === 0x2029\n ) {\n return true;\n }\n }\n return false;\n}\n\nexport function hasFollowingLineBreak() {\n const nextStart = nextTokenStart();\n for (let i = state.end; i < nextStart; i++) {\n const code = input.charCodeAt(i);\n if (\n code === charCodes.lineFeed ||\n code === charCodes.carriageReturn ||\n code === 0x2028 ||\n code === 0x2029\n ) {\n return true;\n }\n }\n return false;\n}\n\nexport function isLineTerminator() {\n return eat(tt.semi) || canInsertSemicolon();\n}\n\n// Consume a semicolon, or, failing that, see if we are allowed to\n// pretend that there is a semicolon at this position.\nexport function semicolon() {\n if (!isLineTerminator()) {\n unexpected('Unexpected token, expected \";\"');\n }\n}\n\n// Expect a token of a given type. If found, consume it, otherwise,\n// raise an unexpected token error at given pos.\nexport function expect(type) {\n const matched = eat(type);\n if (!matched) {\n unexpected(`Unexpected token, expected \"${formatTokenType(type)}\"`);\n }\n}\n\n/**\n * Transition the parser to an error state. All code needs to be written to naturally unwind in this\n * state, which allows us to backtrack without exceptions and without error plumbing everywhere.\n */\nexport function unexpected(message = \"Unexpected token\", pos = state.start) {\n if (state.error) {\n return;\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const err = new SyntaxError(message);\n err.pos = pos;\n state.error = err;\n state.pos = input.length;\n finishToken(tt.eof);\n}\n", "import {charCodes} from \"./charcodes\";\n\n// https://tc39.github.io/ecma262/#sec-white-space\nexport const WHITESPACE_CHARS = [\n 0x0009,\n 0x000b,\n 0x000c,\n charCodes.space,\n charCodes.nonBreakingSpace,\n charCodes.oghamSpaceMark,\n 0x2000, // EN QUAD\n 0x2001, // EM QUAD\n 0x2002, // EN SPACE\n 0x2003, // EM SPACE\n 0x2004, // THREE-PER-EM SPACE\n 0x2005, // FOUR-PER-EM SPACE\n 0x2006, // SIX-PER-EM SPACE\n 0x2007, // FIGURE SPACE\n 0x2008, // PUNCTUATION SPACE\n 0x2009, // THIN SPACE\n 0x200a, // HAIR SPACE\n 0x202f, // NARROW NO-BREAK SPACE\n 0x205f, // MEDIUM MATHEMATICAL SPACE\n 0x3000, // IDEOGRAPHIC SPACE\n 0xfeff, // ZERO WIDTH NO-BREAK SPACE\n];\n\nexport const skipWhiteSpace = /(?:\\s|\\/\\/.*|\\/\\*[^]*?\\*\\/)*/g;\n\nexport const IS_WHITESPACE = new Uint8Array(65536);\nfor (const char of WHITESPACE_CHARS) {\n IS_WHITESPACE[char] = 1;\n}\n", "import {charCodes} from \"./charcodes\";\nimport {WHITESPACE_CHARS} from \"./whitespace\";\n\nfunction computeIsIdentifierChar(code) {\n if (code < 48) return code === 36;\n if (code < 58) return true;\n if (code < 65) return false;\n if (code < 91) return true;\n if (code < 97) return code === 95;\n if (code < 123) return true;\n if (code < 128) return false;\n throw new Error(\"Should not be called with non-ASCII char code.\");\n}\n\nexport const IS_IDENTIFIER_CHAR = new Uint8Array(65536);\nfor (let i = 0; i < 128; i++) {\n IS_IDENTIFIER_CHAR[i] = computeIsIdentifierChar(i) ? 1 : 0;\n}\nfor (let i = 128; i < 65536; i++) {\n IS_IDENTIFIER_CHAR[i] = 1;\n}\n// Aside from whitespace and newlines, all characters outside the ASCII space are either\n// identifier characters or invalid. Since we're not performing code validation, we can just\n// treat all invalid characters as identifier characters.\nfor (const whitespaceChar of WHITESPACE_CHARS) {\n IS_IDENTIFIER_CHAR[whitespaceChar] = 0;\n}\nIS_IDENTIFIER_CHAR[0x2028] = 0;\nIS_IDENTIFIER_CHAR[0x2029] = 0;\n\nexport const IS_IDENTIFIER_START = IS_IDENTIFIER_CHAR.slice();\nfor (let numChar = charCodes.digit0; numChar <= charCodes.digit9; numChar++) {\n IS_IDENTIFIER_START[numChar] = 0;\n}\n", "// Generated file, do not edit! Run \"yarn generate\" to re-generate this file.\nimport {ContextualKeyword} from \"./keywords\";\nimport {TokenType as tt} from \"./types\";\n\n// prettier-ignore\nexport const READ_WORD_TREE = new Int32Array([\n // \"\"\n -1, 27, 783, 918, 1755, 2376, 2862, 3483, -1, 3699, -1, 4617, 4752, 4833, 5130, 5508, 5940, -1, 6480, 6939, 7749, 8181, 8451, 8613, -1, 8829, -1,\n // \"a\"\n -1, -1, 54, 243, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 432, -1, -1, -1, 675, -1, -1, -1,\n // \"ab\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 81, -1, -1, -1, -1, -1, -1, -1,\n // \"abs\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 108, -1, -1, -1, -1, -1, -1,\n // \"abst\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"abstr\"\n -1, 162, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"abstra\"\n -1, -1, -1, 189, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"abstrac\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, -1,\n // \"abstract\"\n ContextualKeyword._abstract << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ac\"\n -1, -1, -1, 270, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"acc\"\n -1, -1, -1, -1, -1, 297, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"acce\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 324, -1, -1, -1, -1, -1, -1, -1,\n // \"acces\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 351, -1, -1, -1, -1, -1, -1, -1,\n // \"access\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 378, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"accesso\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 405, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"accessor\"\n ContextualKeyword._accessor << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"as\"\n ContextualKeyword._as << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 459, -1, -1, -1, -1, -1, 594, -1,\n // \"ass\"\n -1, -1, -1, -1, -1, 486, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"asse\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 513, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"asser\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 540, -1, -1, -1, -1, -1, -1,\n // \"assert\"\n ContextualKeyword._assert << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 567, -1, -1, -1, -1, -1, -1, -1,\n // \"asserts\"\n ContextualKeyword._asserts << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"asy\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 621, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"asyn\"\n -1, -1, -1, 648, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"async\"\n ContextualKeyword._async << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"aw\"\n -1, 702, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"awa\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 729, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"awai\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 756, -1, -1, -1, -1, -1, -1,\n // \"await\"\n ContextualKeyword._await << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"b\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 810, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"br\"\n -1, -1, -1, -1, -1, 837, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"bre\"\n -1, 864, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"brea\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 891, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"break\"\n (tt._break << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"c\"\n -1, 945, -1, -1, -1, -1, -1, -1, 1107, -1, -1, -1, 1242, -1, -1, 1350, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ca\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 972, 1026, -1, -1, -1, -1, -1, -1,\n // \"cas\"\n -1, -1, -1, -1, -1, 999, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"case\"\n (tt._case << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"cat\"\n -1, -1, -1, 1053, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"catc\"\n -1, -1, -1, -1, -1, -1, -1, -1, 1080, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"catch\"\n (tt._catch << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ch\"\n -1, -1, -1, -1, -1, 1134, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"che\"\n -1, -1, -1, 1161, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"chec\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1188, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"check\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1215, -1, -1, -1, -1, -1, -1, -1,\n // \"checks\"\n ContextualKeyword._checks << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"cl\"\n -1, 1269, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"cla\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1296, -1, -1, -1, -1, -1, -1, -1,\n // \"clas\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1323, -1, -1, -1, -1, -1, -1, -1,\n // \"class\"\n (tt._class << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"co\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1377, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"con\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1404, 1620, -1, -1, -1, -1, -1, -1,\n // \"cons\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1431, -1, -1, -1, -1, -1, -1,\n // \"const\"\n (tt._const << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1458, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"constr\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1485, -1, -1, -1, -1, -1,\n // \"constru\"\n -1, -1, -1, 1512, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"construc\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1539, -1, -1, -1, -1, -1, -1,\n // \"construct\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1566, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"constructo\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1593, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"constructor\"\n ContextualKeyword._constructor << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"cont\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 1647, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"conti\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1674, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"contin\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1701, -1, -1, -1, -1, -1,\n // \"continu\"\n -1, -1, -1, -1, -1, 1728, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"continue\"\n (tt._continue << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"d\"\n -1, -1, -1, -1, -1, 1782, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2349, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"de\"\n -1, -1, 1809, 1971, -1, -1, 2106, -1, -1, -1, -1, -1, 2241, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"deb\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1836, -1, -1, -1, -1, -1,\n // \"debu\"\n -1, -1, -1, -1, -1, -1, -1, 1863, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"debug\"\n -1, -1, -1, -1, -1, -1, -1, 1890, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"debugg\"\n -1, -1, -1, -1, -1, 1917, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"debugge\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1944, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"debugger\"\n (tt._debugger << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"dec\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1998, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"decl\"\n -1, 2025, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"decla\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2052, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"declar\"\n -1, -1, -1, -1, -1, 2079, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"declare\"\n ContextualKeyword._declare << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"def\"\n -1, 2133, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"defa\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2160, -1, -1, -1, -1, -1,\n // \"defau\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2187, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"defaul\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2214, -1, -1, -1, -1, -1, -1,\n // \"default\"\n (tt._default << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"del\"\n -1, -1, -1, -1, -1, 2268, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"dele\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2295, -1, -1, -1, -1, -1, -1,\n // \"delet\"\n -1, -1, -1, -1, -1, 2322, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"delete\"\n (tt._delete << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"do\"\n (tt._do << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"e\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2403, -1, 2484, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2565, -1, -1,\n // \"el\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2430, -1, -1, -1, -1, -1, -1, -1,\n // \"els\"\n -1, -1, -1, -1, -1, 2457, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"else\"\n (tt._else << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"en\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2511, -1, -1, -1, -1, -1,\n // \"enu\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2538, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"enum\"\n ContextualKeyword._enum << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ex\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2592, -1, -1, -1, 2727, -1, -1, -1, -1, -1, -1,\n // \"exp\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2619, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"expo\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2646, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"expor\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2673, -1, -1, -1, -1, -1, -1,\n // \"export\"\n (tt._export << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2700, -1, -1, -1, -1, -1, -1, -1,\n // \"exports\"\n ContextualKeyword._exports << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ext\"\n -1, -1, -1, -1, -1, 2754, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"exte\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2781, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"exten\"\n -1, -1, -1, -1, 2808, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"extend\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2835, -1, -1, -1, -1, -1, -1, -1,\n // \"extends\"\n (tt._extends << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"f\"\n -1, 2889, -1, -1, -1, -1, -1, -1, -1, 2997, -1, -1, -1, -1, -1, 3159, -1, -1, 3213, -1, -1, 3294, -1, -1, -1, -1, -1,\n // \"fa\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2916, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"fal\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2943, -1, -1, -1, -1, -1, -1, -1,\n // \"fals\"\n -1, -1, -1, -1, -1, 2970, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"false\"\n (tt._false << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"fi\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3024, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"fin\"\n -1, 3051, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"fina\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3078, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"final\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3105, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"finall\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3132, -1,\n // \"finally\"\n (tt._finally << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"fo\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3186, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"for\"\n (tt._for << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"fr\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3240, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"fro\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3267, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"from\"\n ContextualKeyword._from << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"fu\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3321, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"fun\"\n -1, -1, -1, 3348, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"func\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3375, -1, -1, -1, -1, -1, -1,\n // \"funct\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 3402, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"functi\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3429, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"functio\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3456, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"function\"\n (tt._function << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"g\"\n -1, -1, -1, -1, -1, 3510, -1, -1, -1, -1, -1, -1, 3564, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ge\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3537, -1, -1, -1, -1, -1, -1,\n // \"get\"\n ContextualKeyword._get << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"gl\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3591, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"glo\"\n -1, -1, 3618, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"glob\"\n -1, 3645, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"globa\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3672, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"global\"\n ContextualKeyword._global << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"i\"\n -1, -1, -1, -1, -1, -1, 3726, -1, -1, -1, -1, -1, -1, 3753, 4077, -1, -1, -1, -1, 4590, -1, -1, -1, -1, -1, -1, -1,\n // \"if\"\n (tt._if << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"im\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3780, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"imp\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3807, -1, -1, 3996, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"impl\"\n -1, -1, -1, -1, -1, 3834, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"imple\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3861, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"implem\"\n -1, -1, -1, -1, -1, 3888, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"impleme\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3915, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"implemen\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3942, -1, -1, -1, -1, -1, -1,\n // \"implement\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3969, -1, -1, -1, -1, -1, -1, -1,\n // \"implements\"\n ContextualKeyword._implements << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"impo\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4023, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"impor\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4050, -1, -1, -1, -1, -1, -1,\n // \"import\"\n (tt._import << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"in\"\n (tt._in << 1) + 1, -1, -1, -1, -1, -1, 4104, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4185, 4401, -1, -1, -1, -1, -1, -1,\n // \"inf\"\n -1, -1, -1, -1, -1, 4131, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"infe\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4158, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"infer\"\n ContextualKeyword._infer << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ins\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4212, -1, -1, -1, -1, -1, -1,\n // \"inst\"\n -1, 4239, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"insta\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4266, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"instan\"\n -1, -1, -1, 4293, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"instanc\"\n -1, -1, -1, -1, -1, 4320, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"instance\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4347, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"instanceo\"\n -1, -1, -1, -1, -1, -1, 4374, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"instanceof\"\n (tt._instanceof << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"int\"\n -1, -1, -1, -1, -1, 4428, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"inte\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4455, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"inter\"\n -1, -1, -1, -1, -1, -1, 4482, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"interf\"\n -1, 4509, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"interfa\"\n -1, -1, -1, 4536, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"interfac\"\n -1, -1, -1, -1, -1, 4563, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"interface\"\n ContextualKeyword._interface << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"is\"\n ContextualKeyword._is << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"k\"\n -1, -1, -1, -1, -1, 4644, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ke\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4671, -1,\n // \"key\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4698, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"keyo\"\n -1, -1, -1, -1, -1, -1, 4725, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"keyof\"\n ContextualKeyword._keyof << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"l\"\n -1, -1, -1, -1, -1, 4779, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"le\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4806, -1, -1, -1, -1, -1, -1,\n // \"let\"\n (tt._let << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"m\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 4860, -1, -1, -1, -1, -1, 4995, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"mi\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4887, -1, -1,\n // \"mix\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 4914, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"mixi\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4941, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"mixin\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4968, -1, -1, -1, -1, -1, -1, -1,\n // \"mixins\"\n ContextualKeyword._mixins << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"mo\"\n -1, -1, -1, -1, 5022, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"mod\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5049, -1, -1, -1, -1, -1,\n // \"modu\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5076, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"modul\"\n -1, -1, -1, -1, -1, 5103, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"module\"\n ContextualKeyword._module << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"n\"\n -1, 5157, -1, -1, -1, 5373, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5427, -1, -1, -1, -1, -1,\n // \"na\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5184, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"nam\"\n -1, -1, -1, -1, -1, 5211, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"name\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5238, -1, -1, -1, -1, -1, -1, -1,\n // \"names\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5265, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"namesp\"\n -1, 5292, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"namespa\"\n -1, -1, -1, 5319, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"namespac\"\n -1, -1, -1, -1, -1, 5346, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"namespace\"\n ContextualKeyword._namespace << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ne\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5400, -1, -1, -1,\n // \"new\"\n (tt._new << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"nu\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5454, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"nul\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5481, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"null\"\n (tt._null << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"o\"\n -1, -1, -1, -1, -1, -1, 5535, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5562, -1, -1, -1, -1, 5697, 5751, -1, -1, -1, -1,\n // \"of\"\n ContextualKeyword._of << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"op\"\n -1, 5589, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"opa\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5616, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"opaq\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5643, -1, -1, -1, -1, -1,\n // \"opaqu\"\n -1, -1, -1, -1, -1, 5670, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"opaque\"\n ContextualKeyword._opaque << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ou\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5724, -1, -1, -1, -1, -1, -1,\n // \"out\"\n ContextualKeyword._out << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ov\"\n -1, -1, -1, -1, -1, 5778, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ove\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5805, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"over\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5832, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"overr\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 5859, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"overri\"\n -1, -1, -1, -1, 5886, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"overrid\"\n -1, -1, -1, -1, -1, 5913, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"override\"\n ContextualKeyword._override << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"p\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5967, -1, -1, 6345, -1, -1, -1, -1, -1,\n // \"pr\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 5994, -1, -1, -1, -1, -1, 6129, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"pri\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6021, -1, -1, -1, -1,\n // \"priv\"\n -1, 6048, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"priva\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6075, -1, -1, -1, -1, -1, -1,\n // \"privat\"\n -1, -1, -1, -1, -1, 6102, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"private\"\n ContextualKeyword._private << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"pro\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6156, -1, -1, -1, -1, -1, -1,\n // \"prot\"\n -1, -1, -1, -1, -1, 6183, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6318, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"prote\"\n -1, -1, -1, 6210, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"protec\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6237, -1, -1, -1, -1, -1, -1,\n // \"protect\"\n -1, -1, -1, -1, -1, 6264, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"protecte\"\n -1, -1, -1, -1, 6291, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"protected\"\n ContextualKeyword._protected << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"proto\"\n ContextualKeyword._proto << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"pu\"\n -1, -1, 6372, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"pub\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6399, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"publ\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 6426, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"publi\"\n -1, -1, -1, 6453, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"public\"\n ContextualKeyword._public << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"r\"\n -1, -1, -1, -1, -1, 6507, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"re\"\n -1, 6534, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6696, -1, -1, 6831, -1, -1, -1, -1, -1, -1,\n // \"rea\"\n -1, -1, -1, -1, 6561, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"read\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6588, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"reado\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6615, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"readon\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6642, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"readonl\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6669, -1,\n // \"readonly\"\n ContextualKeyword._readonly << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"req\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6723, -1, -1, -1, -1, -1,\n // \"requ\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 6750, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"requi\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6777, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"requir\"\n -1, -1, -1, -1, -1, 6804, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"require\"\n ContextualKeyword._require << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ret\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6858, -1, -1, -1, -1, -1,\n // \"retu\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6885, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"retur\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6912, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"return\"\n (tt._return << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"s\"\n -1, 6966, -1, -1, -1, 7182, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7236, 7371, -1, 7479, -1, 7614, -1,\n // \"sa\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6993, -1, -1, -1, -1, -1, -1,\n // \"sat\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 7020, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"sati\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7047, -1, -1, -1, -1, -1, -1, -1,\n // \"satis\"\n -1, -1, -1, -1, -1, -1, 7074, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"satisf\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 7101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"satisfi\"\n -1, -1, -1, -1, -1, 7128, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"satisfie\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7155, -1, -1, -1, -1, -1, -1, -1,\n // \"satisfies\"\n ContextualKeyword._satisfies << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"se\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7209, -1, -1, -1, -1, -1, -1,\n // \"set\"\n ContextualKeyword._set << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"st\"\n -1, 7263, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"sta\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7290, -1, -1, -1, -1, -1, -1,\n // \"stat\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 7317, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"stati\"\n -1, -1, -1, 7344, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"static\"\n ContextualKeyword._static << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"su\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7398, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"sup\"\n -1, -1, -1, -1, -1, 7425, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"supe\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7452, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"super\"\n (tt._super << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"sw\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 7506, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"swi\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7533, -1, -1, -1, -1, -1, -1,\n // \"swit\"\n -1, -1, -1, 7560, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"switc\"\n -1, -1, -1, -1, -1, -1, -1, -1, 7587, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"switch\"\n (tt._switch << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"sy\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7641, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"sym\"\n -1, -1, 7668, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"symb\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7695, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"symbo\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7722, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"symbol\"\n ContextualKeyword._symbol << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"t\"\n -1, -1, -1, -1, -1, -1, -1, -1, 7776, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7938, -1, -1, -1, -1, -1, -1, 8046, -1,\n // \"th\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 7803, -1, -1, -1, -1, -1, -1, -1, -1, 7857, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"thi\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7830, -1, -1, -1, -1, -1, -1, -1,\n // \"this\"\n (tt._this << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"thr\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7884, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"thro\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7911, -1, -1, -1,\n // \"throw\"\n (tt._throw << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"tr\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7965, -1, -1, -1, 8019, -1,\n // \"tru\"\n -1, -1, -1, -1, -1, 7992, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"true\"\n (tt._true << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"try\"\n (tt._try << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"ty\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8073, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"typ\"\n -1, -1, -1, -1, -1, 8100, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"type\"\n ContextualKeyword._type << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8127, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"typeo\"\n -1, -1, -1, -1, -1, -1, 8154, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"typeof\"\n (tt._typeof << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"u\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8208, -1, -1, -1, -1, 8343, -1, -1, -1, -1, -1, -1, -1,\n // \"un\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 8235, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"uni\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8262, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"uniq\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8289, -1, -1, -1, -1, -1,\n // \"uniqu\"\n -1, -1, -1, -1, -1, 8316, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"unique\"\n ContextualKeyword._unique << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"us\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 8370, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"usi\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8397, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"usin\"\n -1, -1, -1, -1, -1, -1, -1, 8424, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"using\"\n ContextualKeyword._using << 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"v\"\n -1, 8478, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8532, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"va\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8505, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"var\"\n (tt._var << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"vo\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 8559, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"voi\"\n -1, -1, -1, -1, 8586, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"void\"\n (tt._void << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"w\"\n -1, -1, -1, -1, -1, -1, -1, -1, 8640, 8748, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"wh\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 8667, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"whi\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8694, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"whil\"\n -1, -1, -1, -1, -1, 8721, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"while\"\n (tt._while << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"wi\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8775, -1, -1, -1, -1, -1, -1,\n // \"wit\"\n -1, -1, -1, -1, -1, -1, -1, -1, 8802, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"with\"\n (tt._with << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"y\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, 8856, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"yi\"\n -1, -1, -1, -1, -1, 8883, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"yie\"\n -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8910, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"yiel\"\n -1, -1, -1, -1, 8937, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n // \"yield\"\n (tt._yield << 1) + 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,\n]);\n", "import {input, state} from \"../traverser/base\";\nimport {charCodes} from \"../util/charcodes\";\nimport {IS_IDENTIFIER_CHAR} from \"../util/identifier\";\nimport {finishToken} from \"./index\";\nimport {READ_WORD_TREE} from \"./readWordTree\";\nimport {TokenType as tt} from \"./types\";\n\n/**\n * Read an identifier, producing either a name token or matching on one of the existing keywords.\n * For performance, we pre-generate big decision tree that we traverse. Each node represents a\n * prefix and has 27 values, where the first value is the token or contextual token, if any (-1 if\n * not), and the other 26 values are the transitions to other nodes, or -1 to stop.\n */\nexport default function readWord() {\n let treePos = 0;\n let code = 0;\n let pos = state.pos;\n while (pos < input.length) {\n code = input.charCodeAt(pos);\n if (code < charCodes.lowercaseA || code > charCodes.lowercaseZ) {\n break;\n }\n const next = READ_WORD_TREE[treePos + (code - charCodes.lowercaseA) + 1];\n if (next === -1) {\n break;\n } else {\n treePos = next;\n pos++;\n }\n }\n\n const keywordValue = READ_WORD_TREE[treePos];\n if (keywordValue > -1 && !IS_IDENTIFIER_CHAR[code]) {\n state.pos = pos;\n if (keywordValue & 1) {\n finishToken(keywordValue >>> 1);\n } else {\n finishToken(tt.name, keywordValue >>> 1);\n }\n return;\n }\n\n while (pos < input.length) {\n const ch = input.charCodeAt(pos);\n if (IS_IDENTIFIER_CHAR[ch]) {\n pos++;\n } else if (ch === charCodes.backslash) {\n // \\u\n pos += 2;\n if (input.charCodeAt(pos) === charCodes.leftCurlyBrace) {\n while (pos < input.length && input.charCodeAt(pos) !== charCodes.rightCurlyBrace) {\n pos++;\n }\n pos++;\n }\n } else if (ch === charCodes.atSign && input.charCodeAt(pos + 1) === charCodes.atSign) {\n pos += 2;\n } else {\n break;\n }\n }\n state.pos = pos;\n finishToken(tt.name);\n}\n", "/* eslint max-len: 0 */\n\nimport {input, isFlowEnabled, state} from \"../traverser/base\";\nimport {unexpected} from \"../traverser/util\";\nimport {charCodes} from \"../util/charcodes\";\nimport {IS_IDENTIFIER_CHAR, IS_IDENTIFIER_START} from \"../util/identifier\";\nimport {IS_WHITESPACE, skipWhiteSpace} from \"../util/whitespace\";\nimport {ContextualKeyword} from \"./keywords\";\nimport readWord from \"./readWord\";\nimport { TokenType as tt} from \"./types\";\n\nexport var IdentifierRole; (function (IdentifierRole) {\n const Access = 0; IdentifierRole[IdentifierRole[\"Access\"] = Access] = \"Access\";\n const ExportAccess = Access + 1; IdentifierRole[IdentifierRole[\"ExportAccess\"] = ExportAccess] = \"ExportAccess\";\n const TopLevelDeclaration = ExportAccess + 1; IdentifierRole[IdentifierRole[\"TopLevelDeclaration\"] = TopLevelDeclaration] = \"TopLevelDeclaration\";\n const FunctionScopedDeclaration = TopLevelDeclaration + 1; IdentifierRole[IdentifierRole[\"FunctionScopedDeclaration\"] = FunctionScopedDeclaration] = \"FunctionScopedDeclaration\";\n const BlockScopedDeclaration = FunctionScopedDeclaration + 1; IdentifierRole[IdentifierRole[\"BlockScopedDeclaration\"] = BlockScopedDeclaration] = \"BlockScopedDeclaration\";\n const ObjectShorthandTopLevelDeclaration = BlockScopedDeclaration + 1; IdentifierRole[IdentifierRole[\"ObjectShorthandTopLevelDeclaration\"] = ObjectShorthandTopLevelDeclaration] = \"ObjectShorthandTopLevelDeclaration\";\n const ObjectShorthandFunctionScopedDeclaration = ObjectShorthandTopLevelDeclaration + 1; IdentifierRole[IdentifierRole[\"ObjectShorthandFunctionScopedDeclaration\"] = ObjectShorthandFunctionScopedDeclaration] = \"ObjectShorthandFunctionScopedDeclaration\";\n const ObjectShorthandBlockScopedDeclaration = ObjectShorthandFunctionScopedDeclaration + 1; IdentifierRole[IdentifierRole[\"ObjectShorthandBlockScopedDeclaration\"] = ObjectShorthandBlockScopedDeclaration] = \"ObjectShorthandBlockScopedDeclaration\";\n const ObjectShorthand = ObjectShorthandBlockScopedDeclaration + 1; IdentifierRole[IdentifierRole[\"ObjectShorthand\"] = ObjectShorthand] = \"ObjectShorthand\";\n // Any identifier bound in an import statement, e.g. both A and b from\n // `import A, * as b from 'A';`\n const ImportDeclaration = ObjectShorthand + 1; IdentifierRole[IdentifierRole[\"ImportDeclaration\"] = ImportDeclaration] = \"ImportDeclaration\";\n const ObjectKey = ImportDeclaration + 1; IdentifierRole[IdentifierRole[\"ObjectKey\"] = ObjectKey] = \"ObjectKey\";\n // The `foo` in `import {foo as bar} from \"./abc\";`.\n const ImportAccess = ObjectKey + 1; IdentifierRole[IdentifierRole[\"ImportAccess\"] = ImportAccess] = \"ImportAccess\";\n})(IdentifierRole || (IdentifierRole = {}));\n\n/**\n * Extra information on jsxTagStart tokens, used to determine which of the three\n * jsx functions are called in the automatic transform.\n */\nexport var JSXRole; (function (JSXRole) {\n // The element is self-closing or has a body that resolves to empty. We\n // shouldn't emit children at all in this case.\n const NoChildren = 0; JSXRole[JSXRole[\"NoChildren\"] = NoChildren] = \"NoChildren\";\n // The element has a single explicit child, which might still be an arbitrary\n // expression like an array. We should emit that expression as the children.\n const OneChild = NoChildren + 1; JSXRole[JSXRole[\"OneChild\"] = OneChild] = \"OneChild\";\n // The element has at least two explicitly-specified children or has spread\n // children, so child positions are assumed to be \"static\". We should wrap\n // these children in an array.\n const StaticChildren = OneChild + 1; JSXRole[JSXRole[\"StaticChildren\"] = StaticChildren] = \"StaticChildren\";\n // The element has a prop named \"key\" after a prop spread, so we should fall\n // back to the createElement function.\n const KeyAfterPropSpread = StaticChildren + 1; JSXRole[JSXRole[\"KeyAfterPropSpread\"] = KeyAfterPropSpread] = \"KeyAfterPropSpread\";\n})(JSXRole || (JSXRole = {}));\n\nexport function isDeclaration(token) {\n const role = token.identifierRole;\n return (\n role === IdentifierRole.TopLevelDeclaration ||\n role === IdentifierRole.FunctionScopedDeclaration ||\n role === IdentifierRole.BlockScopedDeclaration ||\n role === IdentifierRole.ObjectShorthandTopLevelDeclaration ||\n role === IdentifierRole.ObjectShorthandFunctionScopedDeclaration ||\n role === IdentifierRole.ObjectShorthandBlockScopedDeclaration\n );\n}\n\nexport function isNonTopLevelDeclaration(token) {\n const role = token.identifierRole;\n return (\n role === IdentifierRole.FunctionScopedDeclaration ||\n role === IdentifierRole.BlockScopedDeclaration ||\n role === IdentifierRole.ObjectShorthandFunctionScopedDeclaration ||\n role === IdentifierRole.ObjectShorthandBlockScopedDeclaration\n );\n}\n\nexport function isTopLevelDeclaration(token) {\n const role = token.identifierRole;\n return (\n role === IdentifierRole.TopLevelDeclaration ||\n role === IdentifierRole.ObjectShorthandTopLevelDeclaration ||\n role === IdentifierRole.ImportDeclaration\n );\n}\n\nexport function isBlockScopedDeclaration(token) {\n const role = token.identifierRole;\n // Treat top-level declarations as block scope since the distinction doesn't matter here.\n return (\n role === IdentifierRole.TopLevelDeclaration ||\n role === IdentifierRole.BlockScopedDeclaration ||\n role === IdentifierRole.ObjectShorthandTopLevelDeclaration ||\n role === IdentifierRole.ObjectShorthandBlockScopedDeclaration\n );\n}\n\nexport function isFunctionScopedDeclaration(token) {\n const role = token.identifierRole;\n return (\n role === IdentifierRole.FunctionScopedDeclaration ||\n role === IdentifierRole.ObjectShorthandFunctionScopedDeclaration\n );\n}\n\nexport function isObjectShorthandDeclaration(token) {\n return (\n token.identifierRole === IdentifierRole.ObjectShorthandTopLevelDeclaration ||\n token.identifierRole === IdentifierRole.ObjectShorthandBlockScopedDeclaration ||\n token.identifierRole === IdentifierRole.ObjectShorthandFunctionScopedDeclaration\n );\n}\n\n// Object type used to represent tokens. Note that normally, tokens\n// simply exist as properties on the parser object. This is only\n// used for the onToken callback and the external tokenizer.\nexport class Token {\n constructor() {\n this.type = state.type;\n this.contextualKeyword = state.contextualKeyword;\n this.start = state.start;\n this.end = state.end;\n this.scopeDepth = state.scopeDepth;\n this.isType = state.isType;\n this.identifierRole = null;\n this.jsxRole = null;\n this.shadowsGlobal = false;\n this.isAsyncOperation = false;\n this.contextId = null;\n this.rhsEndIndex = null;\n this.isExpression = false;\n this.numNullishCoalesceStarts = 0;\n this.numNullishCoalesceEnds = 0;\n this.isOptionalChainStart = false;\n this.isOptionalChainEnd = false;\n this.subscriptStartIndex = null;\n this.nullishStartIndex = null;\n }\n\n \n \n \n \n \n \n \n \n // Initially false for all tokens, then may be computed in a follow-up step that does scope\n // analysis.\n \n // Initially false for all tokens, but may be set during transform to mark it as containing an\n // await operation.\n \n \n // For assignments, the index of the RHS. For export tokens, the end of the export.\n \n // For class tokens, records if the class is a class expression or a class statement.\n \n // Number of times to insert a `nullishCoalesce(` snippet before this token.\n \n // Number of times to insert a `)` snippet after this token.\n \n // If true, insert an `optionalChain([` snippet before this token.\n \n // If true, insert a `])` snippet after this token.\n \n // Tag for `.`, `?.`, `[`, `?.[`, `(`, and `?.(` to denote the \"root\" token for this\n // subscript chain. This can be used to determine if this chain is an optional chain.\n \n // Tag for `??` operators to denote the root token for this nullish coalescing call.\n \n}\n\n// ## Tokenizer\n\n// Move to the next token\nexport function next() {\n state.tokens.push(new Token());\n nextToken();\n}\n\n// Call instead of next when inside a template, since that needs to be handled differently.\nexport function nextTemplateToken() {\n state.tokens.push(new Token());\n state.start = state.pos;\n readTmplToken();\n}\n\n// The tokenizer never parses regexes by default. Instead, the parser is responsible for\n// instructing it to parse a regex when we see a slash at the start of an expression.\nexport function retokenizeSlashAsRegex() {\n if (state.type === tt.assign) {\n --state.pos;\n }\n readRegexp();\n}\n\nexport function pushTypeContext(existingTokensInType) {\n for (let i = state.tokens.length - existingTokensInType; i < state.tokens.length; i++) {\n state.tokens[i].isType = true;\n }\n const oldIsType = state.isType;\n state.isType = true;\n return oldIsType;\n}\n\nexport function popTypeContext(oldIsType) {\n state.isType = oldIsType;\n}\n\nexport function eat(type) {\n if (match(type)) {\n next();\n return true;\n } else {\n return false;\n }\n}\n\nexport function eatTypeToken(tokenType) {\n const oldIsType = state.isType;\n state.isType = true;\n eat(tokenType);\n state.isType = oldIsType;\n}\n\nexport function match(type) {\n return state.type === type;\n}\n\nexport function lookaheadType() {\n const snapshot = state.snapshot();\n next();\n const type = state.type;\n state.restoreFromSnapshot(snapshot);\n return type;\n}\n\nexport class TypeAndKeyword {\n \n \n constructor(type, contextualKeyword) {\n this.type = type;\n this.contextualKeyword = contextualKeyword;\n }\n}\n\nexport function lookaheadTypeAndKeyword() {\n const snapshot = state.snapshot();\n next();\n const type = state.type;\n const contextualKeyword = state.contextualKeyword;\n state.restoreFromSnapshot(snapshot);\n return new TypeAndKeyword(type, contextualKeyword);\n}\n\nexport function nextTokenStart() {\n return nextTokenStartSince(state.pos);\n}\n\nexport function nextTokenStartSince(pos) {\n skipWhiteSpace.lastIndex = pos;\n const skip = skipWhiteSpace.exec(input);\n return pos + skip[0].length;\n}\n\nexport function lookaheadCharCode() {\n return input.charCodeAt(nextTokenStart());\n}\n\n// Read a single token, updating the parser object's token-related\n// properties.\nexport function nextToken() {\n skipSpace();\n state.start = state.pos;\n if (state.pos >= input.length) {\n const tokens = state.tokens;\n // We normally run past the end a bit, but if we're way past the end, avoid an infinite loop.\n // Also check the token positions rather than the types since sometimes we rewrite the token\n // type to something else.\n if (\n tokens.length >= 2 &&\n tokens[tokens.length - 1].start >= input.length &&\n tokens[tokens.length - 2].start >= input.length\n ) {\n unexpected(\"Unexpectedly reached the end of input.\");\n }\n finishToken(tt.eof);\n return;\n }\n readToken(input.charCodeAt(state.pos));\n}\n\nfunction readToken(code) {\n // Identifier or keyword. '\\uXXXX' sequences are allowed in\n // identifiers, so '\\' also dispatches to that.\n if (\n IS_IDENTIFIER_START[code] ||\n code === charCodes.backslash ||\n (code === charCodes.atSign && input.charCodeAt(state.pos + 1) === charCodes.atSign)\n ) {\n readWord();\n } else {\n getTokenFromCode(code);\n }\n}\n\nfunction skipBlockComment() {\n while (\n input.charCodeAt(state.pos) !== charCodes.asterisk ||\n input.charCodeAt(state.pos + 1) !== charCodes.slash\n ) {\n state.pos++;\n if (state.pos > input.length) {\n unexpected(\"Unterminated comment\", state.pos - 2);\n return;\n }\n }\n state.pos += 2;\n}\n\nexport function skipLineComment(startSkip) {\n let ch = input.charCodeAt((state.pos += startSkip));\n if (state.pos < input.length) {\n while (\n ch !== charCodes.lineFeed &&\n ch !== charCodes.carriageReturn &&\n ch !== charCodes.lineSeparator &&\n ch !== charCodes.paragraphSeparator &&\n ++state.pos < input.length\n ) {\n ch = input.charCodeAt(state.pos);\n }\n }\n}\n\n// Called at the start of the parse and after every token. Skips\n// whitespace and comments.\nexport function skipSpace() {\n while (state.pos < input.length) {\n const ch = input.charCodeAt(state.pos);\n switch (ch) {\n case charCodes.carriageReturn:\n if (input.charCodeAt(state.pos + 1) === charCodes.lineFeed) {\n ++state.pos;\n }\n\n case charCodes.lineFeed:\n case charCodes.lineSeparator:\n case charCodes.paragraphSeparator:\n ++state.pos;\n break;\n\n case charCodes.slash:\n switch (input.charCodeAt(state.pos + 1)) {\n case charCodes.asterisk:\n state.pos += 2;\n skipBlockComment();\n break;\n\n case charCodes.slash:\n skipLineComment(2);\n break;\n\n default:\n return;\n }\n break;\n\n default:\n if (IS_WHITESPACE[ch]) {\n ++state.pos;\n } else {\n return;\n }\n }\n }\n}\n\n// Called at the end of every token. Sets various fields, and skips the space after the token, so\n// that the next one's `start` will point at the right position.\nexport function finishToken(\n type,\n contextualKeyword = ContextualKeyword.NONE,\n) {\n state.end = state.pos;\n state.type = type;\n state.contextualKeyword = contextualKeyword;\n}\n\n// ### Token reading\n\n// This is the function that is called to fetch the next token. It\n// is somewhat obscure, because it works in character codes rather\n// than characters, and because operator parsing has been inlined\n// into it.\n//\n// All in the name of speed.\nfunction readToken_dot() {\n const nextChar = input.charCodeAt(state.pos + 1);\n if (nextChar >= charCodes.digit0 && nextChar <= charCodes.digit9) {\n readNumber(true);\n return;\n }\n\n if (nextChar === charCodes.dot && input.charCodeAt(state.pos + 2) === charCodes.dot) {\n state.pos += 3;\n finishToken(tt.ellipsis);\n } else {\n ++state.pos;\n finishToken(tt.dot);\n }\n}\n\nfunction readToken_slash() {\n const nextChar = input.charCodeAt(state.pos + 1);\n if (nextChar === charCodes.equalsTo) {\n finishOp(tt.assign, 2);\n } else {\n finishOp(tt.slash, 1);\n }\n}\n\nfunction readToken_mult_modulo(code) {\n // '%*'\n let tokenType = code === charCodes.asterisk ? tt.star : tt.modulo;\n let width = 1;\n let nextChar = input.charCodeAt(state.pos + 1);\n\n // Exponentiation operator **\n if (code === charCodes.asterisk && nextChar === charCodes.asterisk) {\n width++;\n nextChar = input.charCodeAt(state.pos + 2);\n tokenType = tt.exponent;\n }\n\n // Match *= or %=, disallowing *=> which can be valid in flow.\n if (\n nextChar === charCodes.equalsTo &&\n input.charCodeAt(state.pos + 2) !== charCodes.greaterThan\n ) {\n width++;\n tokenType = tt.assign;\n }\n\n finishOp(tokenType, width);\n}\n\nfunction readToken_pipe_amp(code) {\n // '|&'\n const nextChar = input.charCodeAt(state.pos + 1);\n\n if (nextChar === code) {\n if (input.charCodeAt(state.pos + 2) === charCodes.equalsTo) {\n // ||= or &&=\n finishOp(tt.assign, 3);\n } else {\n // || or &&\n finishOp(code === charCodes.verticalBar ? tt.logicalOR : tt.logicalAND, 2);\n }\n return;\n }\n\n if (code === charCodes.verticalBar) {\n // '|>'\n if (nextChar === charCodes.greaterThan) {\n finishOp(tt.pipeline, 2);\n return;\n } else if (nextChar === charCodes.rightCurlyBrace && isFlowEnabled) {\n // '|}'\n finishOp(tt.braceBarR, 2);\n return;\n }\n }\n\n if (nextChar === charCodes.equalsTo) {\n finishOp(tt.assign, 2);\n return;\n }\n\n finishOp(code === charCodes.verticalBar ? tt.bitwiseOR : tt.bitwiseAND, 1);\n}\n\nfunction readToken_caret() {\n // '^'\n const nextChar = input.charCodeAt(state.pos + 1);\n if (nextChar === charCodes.equalsTo) {\n finishOp(tt.assign, 2);\n } else {\n finishOp(tt.bitwiseXOR, 1);\n }\n}\n\nfunction readToken_plus_min(code) {\n // '+-'\n const nextChar = input.charCodeAt(state.pos + 1);\n\n if (nextChar === code) {\n // Tentatively call this a prefix operator, but it might be changed to postfix later.\n finishOp(tt.preIncDec, 2);\n return;\n }\n\n if (nextChar === charCodes.equalsTo) {\n finishOp(tt.assign, 2);\n } else if (code === charCodes.plusSign) {\n finishOp(tt.plus, 1);\n } else {\n finishOp(tt.minus, 1);\n }\n}\n\nfunction readToken_lt() {\n const nextChar = input.charCodeAt(state.pos + 1);\n\n if (nextChar === charCodes.lessThan) {\n if (input.charCodeAt(state.pos + 2) === charCodes.equalsTo) {\n finishOp(tt.assign, 3);\n return;\n }\n // We see <<, but need to be really careful about whether to treat it as a\n // true left-shift or as two < tokens.\n if (state.isType) {\n // Within a type, << might come up in a snippet like `Array<<T>() => void>`,\n // so treat it as two < tokens. Importantly, this should only override <<\n // rather than other tokens like <= . If we treated <= as < in a type\n // context, then the snippet `a as T <= 1` would incorrectly start parsing\n // a type argument on T. We don't need to worry about `a as T << 1`\n // because TypeScript disallows that syntax.\n finishOp(tt.lessThan, 1);\n } else {\n // Outside a type, this might be a true left-shift operator, or it might\n // still be two open-type-arg tokens, such as in `f<<T>() => void>()`. We\n // look at the token while considering the `f`, so we don't yet know that\n // we're in a type context. In this case, we initially tokenize as a\n // left-shift and correct after-the-fact as necessary in\n // tsParseTypeArgumentsWithPossibleBitshift .\n finishOp(tt.bitShiftL, 2);\n }\n return;\n }\n\n if (nextChar === charCodes.equalsTo) {\n // <=\n finishOp(tt.relationalOrEqual, 2);\n } else {\n finishOp(tt.lessThan, 1);\n }\n}\n\nfunction readToken_gt() {\n if (state.isType) {\n // Avoid right-shift for things like `Array<Array<string>>` and\n // greater-than-or-equal for things like `const a: Array<number>=[];`.\n finishOp(tt.greaterThan, 1);\n return;\n }\n\n const nextChar = input.charCodeAt(state.pos + 1);\n\n if (nextChar === charCodes.greaterThan) {\n const size = input.charCodeAt(state.pos + 2) === charCodes.greaterThan ? 3 : 2;\n if (input.charCodeAt(state.pos + size) === charCodes.equalsTo) {\n finishOp(tt.assign, size + 1);\n return;\n }\n finishOp(tt.bitShiftR, size);\n return;\n }\n\n if (nextChar === charCodes.equalsTo) {\n // >=\n finishOp(tt.relationalOrEqual, 2);\n } else {\n finishOp(tt.greaterThan, 1);\n }\n}\n\n/**\n * Reinterpret a possible > token when transitioning from a type to a non-type\n * context.\n *\n * This comes up in two situations where >= needs to be treated as one token:\n * - After an `as` expression, like in the code `a as T >= 1`.\n * - In a type argument in an expression context, e.g. `f(a < b, c >= d)`, we\n * need to see the token as >= so that we get an error and backtrack to\n * normal expression parsing.\n *\n * Other situations require >= to be seen as two tokens, e.g.\n * `const x: Array<T>=[];`, so it's important to treat > as its own token in\n * typical type parsing situations.\n */\nexport function rescan_gt() {\n if (state.type === tt.greaterThan) {\n state.pos -= 1;\n readToken_gt();\n }\n}\n\nfunction readToken_eq_excl(code) {\n // '=!'\n const nextChar = input.charCodeAt(state.pos + 1);\n if (nextChar === charCodes.equalsTo) {\n finishOp(tt.equality, input.charCodeAt(state.pos + 2) === charCodes.equalsTo ? 3 : 2);\n return;\n }\n if (code === charCodes.equalsTo && nextChar === charCodes.greaterThan) {\n // '=>'\n state.pos += 2;\n finishToken(tt.arrow);\n return;\n }\n finishOp(code === charCodes.equalsTo ? tt.eq : tt.bang, 1);\n}\n\nfunction readToken_question() {\n // '?'\n const nextChar = input.charCodeAt(state.pos + 1);\n const nextChar2 = input.charCodeAt(state.pos + 2);\n if (\n nextChar === charCodes.questionMark &&\n // In Flow (but not TypeScript), ??string is a valid type that should be\n // tokenized as two individual ? tokens.\n !(isFlowEnabled && state.isType)\n ) {\n if (nextChar2 === charCodes.equalsTo) {\n // '??='\n finishOp(tt.assign, 3);\n } else {\n // '??'\n finishOp(tt.nullishCoalescing, 2);\n }\n } else if (\n nextChar === charCodes.dot &&\n !(nextChar2 >= charCodes.digit0 && nextChar2 <= charCodes.digit9)\n ) {\n // '.' not followed by a number\n state.pos += 2;\n finishToken(tt.questionDot);\n } else {\n ++state.pos;\n finishToken(tt.question);\n }\n}\n\nexport function getTokenFromCode(code) {\n switch (code) {\n case charCodes.numberSign:\n ++state.pos;\n finishToken(tt.hash);\n return;\n\n // The interpretation of a dot depends on whether it is followed\n // by a digit or another two dots.\n\n case charCodes.dot:\n readToken_dot();\n return;\n\n // Punctuation tokens.\n case charCodes.leftParenthesis:\n ++state.pos;\n finishToken(tt.parenL);\n return;\n case charCodes.rightParenthesis:\n ++state.pos;\n finishToken(tt.parenR);\n return;\n case charCodes.semicolon:\n ++state.pos;\n finishToken(tt.semi);\n return;\n case charCodes.comma:\n ++state.pos;\n finishToken(tt.comma);\n return;\n case charCodes.leftSquareBracket:\n ++state.pos;\n finishToken(tt.bracketL);\n return;\n case charCodes.rightSquareBracket:\n ++state.pos;\n finishToken(tt.bracketR);\n return;\n\n case charCodes.leftCurlyBrace:\n if (isFlowEnabled && input.charCodeAt(state.pos + 1) === charCodes.verticalBar) {\n finishOp(tt.braceBarL, 2);\n } else {\n ++state.pos;\n finishToken(tt.braceL);\n }\n return;\n\n case charCodes.rightCurlyBrace:\n ++state.pos;\n finishToken(tt.braceR);\n return;\n\n case charCodes.colon:\n if (input.charCodeAt(state.pos + 1) === charCodes.colon) {\n finishOp(tt.doubleColon, 2);\n } else {\n ++state.pos;\n finishToken(tt.colon);\n }\n return;\n\n case charCodes.questionMark:\n readToken_question();\n return;\n case charCodes.atSign:\n ++state.pos;\n finishToken(tt.at);\n return;\n\n case charCodes.graveAccent:\n ++state.pos;\n finishToken(tt.backQuote);\n return;\n\n case charCodes.digit0: {\n const nextChar = input.charCodeAt(state.pos + 1);\n // '0x', '0X', '0o', '0O', '0b', '0B'\n if (\n nextChar === charCodes.lowercaseX ||\n nextChar === charCodes.uppercaseX ||\n nextChar === charCodes.lowercaseO ||\n nextChar === charCodes.uppercaseO ||\n nextChar === charCodes.lowercaseB ||\n nextChar === charCodes.uppercaseB\n ) {\n readRadixNumber();\n return;\n }\n }\n // Anything else beginning with a digit is an integer, octal\n // number, or float.\n case charCodes.digit1:\n case charCodes.digit2:\n case charCodes.digit3:\n case charCodes.digit4:\n case charCodes.digit5:\n case charCodes.digit6:\n case charCodes.digit7:\n case charCodes.digit8:\n case charCodes.digit9:\n readNumber(false);\n return;\n\n // Quotes produce strings.\n case charCodes.quotationMark:\n case charCodes.apostrophe:\n readString(code);\n return;\n\n // Operators are parsed inline in tiny state machines. '=' (charCodes.equalsTo) is\n // often referred to. `finishOp` simply skips the amount of\n // characters it is given as second argument, and returns a token\n // of the type given by its first argument.\n\n case charCodes.slash:\n readToken_slash();\n return;\n\n case charCodes.percentSign:\n case charCodes.asterisk:\n readToken_mult_modulo(code);\n return;\n\n case charCodes.verticalBar:\n case charCodes.ampersand:\n readToken_pipe_amp(code);\n return;\n\n case charCodes.caret:\n readToken_caret();\n return;\n\n case charCodes.plusSign:\n case charCodes.dash:\n readToken_plus_min(code);\n return;\n\n case charCodes.lessThan:\n readToken_lt();\n return;\n\n case charCodes.greaterThan:\n readToken_gt();\n return;\n\n case charCodes.equalsTo:\n case charCodes.exclamationMark:\n readToken_eq_excl(code);\n return;\n\n case charCodes.tilde:\n finishOp(tt.tilde, 1);\n return;\n\n default:\n break;\n }\n\n unexpected(`Unexpected character '${String.fromCharCode(code)}'`, state.pos);\n}\n\nfunction finishOp(type, size) {\n state.pos += size;\n finishToken(type);\n}\n\nfunction readRegexp() {\n const start = state.pos;\n let escaped = false;\n let inClass = false;\n for (;;) {\n if (state.pos >= input.length) {\n unexpected(\"Unterminated regular expression\", start);\n return;\n }\n const code = input.charCodeAt(state.pos);\n if (escaped) {\n escaped = false;\n } else {\n if (code === charCodes.leftSquareBracket) {\n inClass = true;\n } else if (code === charCodes.rightSquareBracket && inClass) {\n inClass = false;\n } else if (code === charCodes.slash && !inClass) {\n break;\n }\n escaped = code === charCodes.backslash;\n }\n ++state.pos;\n }\n ++state.pos;\n // Need to use `skipWord` because '\\uXXXX' sequences are allowed here (don't ask).\n skipWord();\n\n finishToken(tt.regexp);\n}\n\n/**\n * Read a decimal integer. Note that this can't be unified with the similar code\n * in readRadixNumber (which also handles hex digits) because \"e\" needs to be\n * the end of the integer so that we can properly handle scientific notation.\n */\nfunction readInt() {\n while (true) {\n const code = input.charCodeAt(state.pos);\n if ((code >= charCodes.digit0 && code <= charCodes.digit9) || code === charCodes.underscore) {\n state.pos++;\n } else {\n break;\n }\n }\n}\n\nfunction readRadixNumber() {\n state.pos += 2; // 0x\n\n // Walk to the end of the number, allowing hex digits.\n while (true) {\n const code = input.charCodeAt(state.pos);\n if (\n (code >= charCodes.digit0 && code <= charCodes.digit9) ||\n (code >= charCodes.lowercaseA && code <= charCodes.lowercaseF) ||\n (code >= charCodes.uppercaseA && code <= charCodes.uppercaseF) ||\n code === charCodes.underscore\n ) {\n state.pos++;\n } else {\n break;\n }\n }\n\n const nextChar = input.charCodeAt(state.pos);\n if (nextChar === charCodes.lowercaseN) {\n ++state.pos;\n finishToken(tt.bigint);\n } else {\n finishToken(tt.num);\n }\n}\n\n// Read an integer, octal integer, or floating-point number.\nfunction readNumber(startsWithDot) {\n let isBigInt = false;\n let isDecimal = false;\n\n if (!startsWithDot) {\n readInt();\n }\n\n let nextChar = input.charCodeAt(state.pos);\n if (nextChar === charCodes.dot) {\n ++state.pos;\n readInt();\n nextChar = input.charCodeAt(state.pos);\n }\n\n if (nextChar === charCodes.uppercaseE || nextChar === charCodes.lowercaseE) {\n nextChar = input.charCodeAt(++state.pos);\n if (nextChar === charCodes.plusSign || nextChar === charCodes.dash) {\n ++state.pos;\n }\n readInt();\n nextChar = input.charCodeAt(state.pos);\n }\n\n if (nextChar === charCodes.lowercaseN) {\n ++state.pos;\n isBigInt = true;\n } else if (nextChar === charCodes.lowercaseM) {\n ++state.pos;\n isDecimal = true;\n }\n\n if (isBigInt) {\n finishToken(tt.bigint);\n return;\n }\n\n if (isDecimal) {\n finishToken(tt.decimal);\n return;\n }\n\n finishToken(tt.num);\n}\n\nfunction readString(quote) {\n state.pos++;\n for (;;) {\n if (state.pos >= input.length) {\n unexpected(\"Unterminated string constant\");\n return;\n }\n const ch = input.charCodeAt(state.pos);\n if (ch === charCodes.backslash) {\n state.pos++;\n } else if (ch === quote) {\n break;\n }\n state.pos++;\n }\n state.pos++;\n finishToken(tt.string);\n}\n\n// Reads template string tokens.\nfunction readTmplToken() {\n for (;;) {\n if (state.pos >= input.length) {\n unexpected(\"Unterminated template\");\n return;\n }\n const ch = input.charCodeAt(state.pos);\n if (\n ch === charCodes.graveAccent ||\n (ch === charCodes.dollarSign && input.charCodeAt(state.pos + 1) === charCodes.leftCurlyBrace)\n ) {\n if (state.pos === state.start && match(tt.template)) {\n if (ch === charCodes.dollarSign) {\n state.pos += 2;\n finishToken(tt.dollarBraceL);\n return;\n } else {\n ++state.pos;\n finishToken(tt.backQuote);\n return;\n }\n }\n finishToken(tt.template);\n return;\n }\n if (ch === charCodes.backslash) {\n state.pos++;\n }\n state.pos++;\n }\n}\n\n// Skip to the end of the current word. Note that this is the same as the snippet at the end of\n// readWord, but calling skipWord from readWord seems to slightly hurt performance from some rough\n// measurements.\nexport function skipWord() {\n while (state.pos < input.length) {\n const ch = input.charCodeAt(state.pos);\n if (IS_IDENTIFIER_CHAR[ch]) {\n state.pos++;\n } else if (ch === charCodes.backslash) {\n // \\u\n state.pos += 2;\n if (input.charCodeAt(state.pos) === charCodes.leftCurlyBrace) {\n while (\n state.pos < input.length &&\n input.charCodeAt(state.pos) !== charCodes.rightCurlyBrace\n ) {\n state.pos++;\n }\n state.pos++;\n }\n } else {\n break;\n }\n }\n}\n", "import {TokenType as tt} from \"../parser/tokenizer/types\";\n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Determine information about this named import or named export specifier.\n *\n * This syntax is the `a` from statements like these:\n * import {A} from \"./foo\";\n * export {A};\n * export {A} from \"./foo\";\n *\n * As it turns out, we can exactly characterize the syntax meaning by simply\n * counting the number of tokens, which can be from 1 to 4:\n * {A}\n * {type A}\n * {A as B}\n * {type A as B}\n *\n * In the type case, we never actually need the names in practice, so don't get\n * them.\n *\n * TODO: There's some redundancy with the type detection here and the isType\n * flag that's already present on tokens in TS mode. This function could\n * potentially be simplified and/or pushed to the call sites to avoid the object\n * allocation.\n */\nexport default function getImportExportSpecifierInfo(\n tokens,\n index = tokens.currentIndex(),\n) {\n let endIndex = index + 1;\n if (isSpecifierEnd(tokens, endIndex)) {\n // import {A}\n const name = tokens.identifierNameAtIndex(index);\n return {\n isType: false,\n leftName: name,\n rightName: name,\n endIndex,\n };\n }\n endIndex++;\n if (isSpecifierEnd(tokens, endIndex)) {\n // import {type A}\n return {\n isType: true,\n leftName: null,\n rightName: null,\n endIndex,\n };\n }\n endIndex++;\n if (isSpecifierEnd(tokens, endIndex)) {\n // import {A as B}\n return {\n isType: false,\n leftName: tokens.identifierNameAtIndex(index),\n rightName: tokens.identifierNameAtIndex(index + 2),\n endIndex,\n };\n }\n endIndex++;\n if (isSpecifierEnd(tokens, endIndex)) {\n // import {type A as B}\n return {\n isType: true,\n leftName: null,\n rightName: null,\n endIndex,\n };\n }\n throw new Error(`Unexpected import/export specifier at ${index}`);\n}\n\nfunction isSpecifierEnd(tokens, index) {\n const token = tokens.tokens[index];\n return token.type === tt.braceR || token.type === tt.comma;\n}\n", "// Use a Map rather than object to avoid unexpected __proto__ access.\nexport default new Map([\n [\"quot\", \"\\u0022\"],\n [\"amp\", \"&\"],\n [\"apos\", \"\\u0027\"],\n [\"lt\", \"<\"],\n [\"gt\", \">\"],\n [\"nbsp\", \"\\u00A0\"],\n [\"iexcl\", \"\\u00A1\"],\n [\"cent\", \"\\u00A2\"],\n [\"pound\", \"\\u00A3\"],\n [\"curren\", \"\\u00A4\"],\n [\"yen\", \"\\u00A5\"],\n [\"brvbar\", \"\\u00A6\"],\n [\"sect\", \"\\u00A7\"],\n [\"uml\", \"\\u00A8\"],\n [\"copy\", \"\\u00A9\"],\n [\"ordf\", \"\\u00AA\"],\n [\"laquo\", \"\\u00AB\"],\n [\"not\", \"\\u00AC\"],\n [\"shy\", \"\\u00AD\"],\n [\"reg\", \"\\u00AE\"],\n [\"macr\", \"\\u00AF\"],\n [\"deg\", \"\\u00B0\"],\n [\"plusmn\", \"\\u00B1\"],\n [\"sup2\", \"\\u00B2\"],\n [\"sup3\", \"\\u00B3\"],\n [\"acute\", \"\\u00B4\"],\n [\"micro\", \"\\u00B5\"],\n [\"para\", \"\\u00B6\"],\n [\"middot\", \"\\u00B7\"],\n [\"cedil\", \"\\u00B8\"],\n [\"sup1\", \"\\u00B9\"],\n [\"ordm\", \"\\u00BA\"],\n [\"raquo\", \"\\u00BB\"],\n [\"frac14\", \"\\u00BC\"],\n [\"frac12\", \"\\u00BD\"],\n [\"frac34\", \"\\u00BE\"],\n [\"iquest\", \"\\u00BF\"],\n [\"Agrave\", \"\\u00C0\"],\n [\"Aacute\", \"\\u00C1\"],\n [\"Acirc\", \"\\u00C2\"],\n [\"Atilde\", \"\\u00C3\"],\n [\"Auml\", \"\\u00C4\"],\n [\"Aring\", \"\\u00C5\"],\n [\"AElig\", \"\\u00C6\"],\n [\"Ccedil\", \"\\u00C7\"],\n [\"Egrave\", \"\\u00C8\"],\n [\"Eacute\", \"\\u00C9\"],\n [\"Ecirc\", \"\\u00CA\"],\n [\"Euml\", \"\\u00CB\"],\n [\"Igrave\", \"\\u00CC\"],\n [\"Iacute\", \"\\u00CD\"],\n [\"Icirc\", \"\\u00CE\"],\n [\"Iuml\", \"\\u00CF\"],\n [\"ETH\", \"\\u00D0\"],\n [\"Ntilde\", \"\\u00D1\"],\n [\"Ograve\", \"\\u00D2\"],\n [\"Oacute\", \"\\u00D3\"],\n [\"Ocirc\", \"\\u00D4\"],\n [\"Otilde\", \"\\u00D5\"],\n [\"Ouml\", \"\\u00D6\"],\n [\"times\", \"\\u00D7\"],\n [\"Oslash\", \"\\u00D8\"],\n [\"Ugrave\", \"\\u00D9\"],\n [\"Uacute\", \"\\u00DA\"],\n [\"Ucirc\", \"\\u00DB\"],\n [\"Uuml\", \"\\u00DC\"],\n [\"Yacute\", \"\\u00DD\"],\n [\"THORN\", \"\\u00DE\"],\n [\"szlig\", \"\\u00DF\"],\n [\"agrave\", \"\\u00E0\"],\n [\"aacute\", \"\\u00E1\"],\n [\"acirc\", \"\\u00E2\"],\n [\"atilde\", \"\\u00E3\"],\n [\"auml\", \"\\u00E4\"],\n [\"aring\", \"\\u00E5\"],\n [\"aelig\", \"\\u00E6\"],\n [\"ccedil\", \"\\u00E7\"],\n [\"egrave\", \"\\u00E8\"],\n [\"eacute\", \"\\u00E9\"],\n [\"ecirc\", \"\\u00EA\"],\n [\"euml\", \"\\u00EB\"],\n [\"igrave\", \"\\u00EC\"],\n [\"iacute\", \"\\u00ED\"],\n [\"icirc\", \"\\u00EE\"],\n [\"iuml\", \"\\u00EF\"],\n [\"eth\", \"\\u00F0\"],\n [\"ntilde\", \"\\u00F1\"],\n [\"ograve\", \"\\u00F2\"],\n [\"oacute\", \"\\u00F3\"],\n [\"ocirc\", \"\\u00F4\"],\n [\"otilde\", \"\\u00F5\"],\n [\"ouml\", \"\\u00F6\"],\n [\"divide\", \"\\u00F7\"],\n [\"oslash\", \"\\u00F8\"],\n [\"ugrave\", \"\\u00F9\"],\n [\"uacute\", \"\\u00FA\"],\n [\"ucirc\", \"\\u00FB\"],\n [\"uuml\", \"\\u00FC\"],\n [\"yacute\", \"\\u00FD\"],\n [\"thorn\", \"\\u00FE\"],\n [\"yuml\", \"\\u00FF\"],\n [\"OElig\", \"\\u0152\"],\n [\"oelig\", \"\\u0153\"],\n [\"Scaron\", \"\\u0160\"],\n [\"scaron\", \"\\u0161\"],\n [\"Yuml\", \"\\u0178\"],\n [\"fnof\", \"\\u0192\"],\n [\"circ\", \"\\u02C6\"],\n [\"tilde\", \"\\u02DC\"],\n [\"Alpha\", \"\\u0391\"],\n [\"Beta\", \"\\u0392\"],\n [\"Gamma\", \"\\u0393\"],\n [\"Delta\", \"\\u0394\"],\n [\"Epsilon\", \"\\u0395\"],\n [\"Zeta\", \"\\u0396\"],\n [\"Eta\", \"\\u0397\"],\n [\"Theta\", \"\\u0398\"],\n [\"Iota\", \"\\u0399\"],\n [\"Kappa\", \"\\u039A\"],\n [\"Lambda\", \"\\u039B\"],\n [\"Mu\", \"\\u039C\"],\n [\"Nu\", \"\\u039D\"],\n [\"Xi\", \"\\u039E\"],\n [\"Omicron\", \"\\u039F\"],\n [\"Pi\", \"\\u03A0\"],\n [\"Rho\", \"\\u03A1\"],\n [\"Sigma\", \"\\u03A3\"],\n [\"Tau\", \"\\u03A4\"],\n [\"Upsilon\", \"\\u03A5\"],\n [\"Phi\", \"\\u03A6\"],\n [\"Chi\", \"\\u03A7\"],\n [\"Psi\", \"\\u03A8\"],\n [\"Omega\", \"\\u03A9\"],\n [\"alpha\", \"\\u03B1\"],\n [\"beta\", \"\\u03B2\"],\n [\"gamma\", \"\\u03B3\"],\n [\"delta\", \"\\u03B4\"],\n [\"epsilon\", \"\\u03B5\"],\n [\"zeta\", \"\\u03B6\"],\n [\"eta\", \"\\u03B7\"],\n [\"theta\", \"\\u03B8\"],\n [\"iota\", \"\\u03B9\"],\n [\"kappa\", \"\\u03BA\"],\n [\"lambda\", \"\\u03BB\"],\n [\"mu\", \"\\u03BC\"],\n [\"nu\", \"\\u03BD\"],\n [\"xi\", \"\\u03BE\"],\n [\"omicron\", \"\\u03BF\"],\n [\"pi\", \"\\u03C0\"],\n [\"rho\", \"\\u03C1\"],\n [\"sigmaf\", \"\\u03C2\"],\n [\"sigma\", \"\\u03C3\"],\n [\"tau\", \"\\u03C4\"],\n [\"upsilon\", \"\\u03C5\"],\n [\"phi\", \"\\u03C6\"],\n [\"chi\", \"\\u03C7\"],\n [\"psi\", \"\\u03C8\"],\n [\"omega\", \"\\u03C9\"],\n [\"thetasym\", \"\\u03D1\"],\n [\"upsih\", \"\\u03D2\"],\n [\"piv\", \"\\u03D6\"],\n [\"ensp\", \"\\u2002\"],\n [\"emsp\", \"\\u2003\"],\n [\"thinsp\", \"\\u2009\"],\n [\"zwnj\", \"\\u200C\"],\n [\"zwj\", \"\\u200D\"],\n [\"lrm\", \"\\u200E\"],\n [\"rlm\", \"\\u200F\"],\n [\"ndash\", \"\\u2013\"],\n [\"mdash\", \"\\u2014\"],\n [\"lsquo\", \"\\u2018\"],\n [\"rsquo\", \"\\u2019\"],\n [\"sbquo\", \"\\u201A\"],\n [\"ldquo\", \"\\u201C\"],\n [\"rdquo\", \"\\u201D\"],\n [\"bdquo\", \"\\u201E\"],\n [\"dagger\", \"\\u2020\"],\n [\"Dagger\", \"\\u2021\"],\n [\"bull\", \"\\u2022\"],\n [\"hellip\", \"\\u2026\"],\n [\"permil\", \"\\u2030\"],\n [\"prime\", \"\\u2032\"],\n [\"Prime\", \"\\u2033\"],\n [\"lsaquo\", \"\\u2039\"],\n [\"rsaquo\", \"\\u203A\"],\n [\"oline\", \"\\u203E\"],\n [\"frasl\", \"\\u2044\"],\n [\"euro\", \"\\u20AC\"],\n [\"image\", \"\\u2111\"],\n [\"weierp\", \"\\u2118\"],\n [\"real\", \"\\u211C\"],\n [\"trade\", \"\\u2122\"],\n [\"alefsym\", \"\\u2135\"],\n [\"larr\", \"\\u2190\"],\n [\"uarr\", \"\\u2191\"],\n [\"rarr\", \"\\u2192\"],\n [\"darr\", \"\\u2193\"],\n [\"harr\", \"\\u2194\"],\n [\"crarr\", \"\\u21B5\"],\n [\"lArr\", \"\\u21D0\"],\n [\"uArr\", \"\\u21D1\"],\n [\"rArr\", \"\\u21D2\"],\n [\"dArr\", \"\\u21D3\"],\n [\"hArr\", \"\\u21D4\"],\n [\"forall\", \"\\u2200\"],\n [\"part\", \"\\u2202\"],\n [\"exist\", \"\\u2203\"],\n [\"empty\", \"\\u2205\"],\n [\"nabla\", \"\\u2207\"],\n [\"isin\", \"\\u2208\"],\n [\"notin\", \"\\u2209\"],\n [\"ni\", \"\\u220B\"],\n [\"prod\", \"\\u220F\"],\n [\"sum\", \"\\u2211\"],\n [\"minus\", \"\\u2212\"],\n [\"lowast\", \"\\u2217\"],\n [\"radic\", \"\\u221A\"],\n [\"prop\", \"\\u221D\"],\n [\"infin\", \"\\u221E\"],\n [\"ang\", \"\\u2220\"],\n [\"and\", \"\\u2227\"],\n [\"or\", \"\\u2228\"],\n [\"cap\", \"\\u2229\"],\n [\"cup\", \"\\u222A\"],\n [\"int\", \"\\u222B\"],\n [\"there4\", \"\\u2234\"],\n [\"sim\", \"\\u223C\"],\n [\"cong\", \"\\u2245\"],\n [\"asymp\", \"\\u2248\"],\n [\"ne\", \"\\u2260\"],\n [\"equiv\", \"\\u2261\"],\n [\"le\", \"\\u2264\"],\n [\"ge\", \"\\u2265\"],\n [\"sub\", \"\\u2282\"],\n [\"sup\", \"\\u2283\"],\n [\"nsub\", \"\\u2284\"],\n [\"sube\", \"\\u2286\"],\n [\"supe\", \"\\u2287\"],\n [\"oplus\", \"\\u2295\"],\n [\"otimes\", \"\\u2297\"],\n [\"perp\", \"\\u22A5\"],\n [\"sdot\", \"\\u22C5\"],\n [\"lceil\", \"\\u2308\"],\n [\"rceil\", \"\\u2309\"],\n [\"lfloor\", \"\\u230A\"],\n [\"rfloor\", \"\\u230B\"],\n [\"lang\", \"\\u2329\"],\n [\"rang\", \"\\u232A\"],\n [\"loz\", \"\\u25CA\"],\n [\"spades\", \"\\u2660\"],\n [\"clubs\", \"\\u2663\"],\n [\"hearts\", \"\\u2665\"],\n [\"diams\", \"\\u2666\"],\n]);\n", "\n\n\n\n\n\n\n\n\nexport default function getJSXPragmaInfo(options) {\n const [base, suffix] = splitPragma(options.jsxPragma || \"React.createElement\");\n const [fragmentBase, fragmentSuffix] = splitPragma(options.jsxFragmentPragma || \"React.Fragment\");\n return {base, suffix, fragmentBase, fragmentSuffix};\n}\n\nfunction splitPragma(pragma) {\n let dotIndex = pragma.indexOf(\".\");\n if (dotIndex === -1) {\n dotIndex = pragma.length;\n }\n return [pragma.slice(0, dotIndex), pragma.slice(dotIndex)];\n}\n", "export default class Transformer {\n // Return true if anything was processed, false otherwise.\n \n\n getPrefixCode() {\n return \"\";\n }\n\n getHoistedCode() {\n return \"\";\n }\n\n getSuffixCode() {\n return \"\";\n }\n}\n", "\n\n\nimport XHTMLEntities from \"../parser/plugins/jsx/xhtml\";\nimport {JSXRole} from \"../parser/tokenizer\";\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\nimport {charCodes} from \"../parser/util/charcodes\";\n\nimport getJSXPragmaInfo, {} from \"../util/getJSXPragmaInfo\";\n\nimport Transformer from \"./Transformer\";\n\nexport default class JSXTransformer extends Transformer {\n \n \n \n\n // State for calculating the line number of each JSX tag in development.\n __init() {this.lastLineNumber = 1}\n __init2() {this.lastIndex = 0}\n\n // In development, variable name holding the name of the current file.\n __init3() {this.filenameVarName = null}\n // Mapping of claimed names for imports in the automatic transform, e,g.\n // {jsx: \"_jsx\"}. This determines which imports to generate in the prefix.\n __init4() {this.esmAutomaticImportNameResolutions = {}}\n // When automatically adding imports in CJS mode, we store the variable name\n // holding the imported CJS module so we can require it in the prefix.\n __init5() {this.cjsAutomaticModuleNameResolutions = {}}\n\n constructor(\n rootTransformer,\n tokens,\n importProcessor,\n nameManager,\n options,\n ) {\n super();this.rootTransformer = rootTransformer;this.tokens = tokens;this.importProcessor = importProcessor;this.nameManager = nameManager;this.options = options;JSXTransformer.prototype.__init.call(this);JSXTransformer.prototype.__init2.call(this);JSXTransformer.prototype.__init3.call(this);JSXTransformer.prototype.__init4.call(this);JSXTransformer.prototype.__init5.call(this);;\n this.jsxPragmaInfo = getJSXPragmaInfo(options);\n this.isAutomaticRuntime = options.jsxRuntime === \"automatic\";\n this.jsxImportSource = options.jsxImportSource || \"react\";\n }\n\n process() {\n if (this.tokens.matches1(tt.jsxTagStart)) {\n this.processJSXTag();\n return true;\n }\n return false;\n }\n\n getPrefixCode() {\n let prefix = \"\";\n if (this.filenameVarName) {\n prefix += `const ${this.filenameVarName} = ${JSON.stringify(this.options.filePath || \"\")};`;\n }\n if (this.isAutomaticRuntime) {\n if (this.importProcessor) {\n // CJS mode: emit require statements for all modules that were referenced.\n for (const [path, resolvedName] of Object.entries(this.cjsAutomaticModuleNameResolutions)) {\n prefix += `var ${resolvedName} = require(\"${path}\");`;\n }\n } else {\n // ESM mode: consolidate and emit import statements for referenced names.\n const {createElement: createElementResolution, ...otherResolutions} =\n this.esmAutomaticImportNameResolutions;\n if (createElementResolution) {\n prefix += `import {createElement as ${createElementResolution}} from \"${this.jsxImportSource}\";`;\n }\n const importSpecifiers = Object.entries(otherResolutions)\n .map(([name, resolvedName]) => `${name} as ${resolvedName}`)\n .join(\", \");\n if (importSpecifiers) {\n const importPath =\n this.jsxImportSource + (this.options.production ? \"/jsx-runtime\" : \"/jsx-dev-runtime\");\n prefix += `import {${importSpecifiers}} from \"${importPath}\";`;\n }\n }\n }\n return prefix;\n }\n\n processJSXTag() {\n const {jsxRole, start} = this.tokens.currentToken();\n // Calculate line number information at the very start (if in development\n // mode) so that the information is guaranteed to be queried in token order.\n const elementLocationCode = this.options.production ? null : this.getElementLocationCode(start);\n if (this.isAutomaticRuntime && jsxRole !== JSXRole.KeyAfterPropSpread) {\n this.transformTagToJSXFunc(elementLocationCode, jsxRole);\n } else {\n this.transformTagToCreateElement(elementLocationCode);\n }\n }\n\n getElementLocationCode(firstTokenStart) {\n const lineNumber = this.getLineNumberForIndex(firstTokenStart);\n return `lineNumber: ${lineNumber}`;\n }\n\n /**\n * Get the line number for this source position. This is calculated lazily and\n * must be called in increasing order by index.\n */\n getLineNumberForIndex(index) {\n const code = this.tokens.code;\n while (this.lastIndex < index && this.lastIndex < code.length) {\n if (code[this.lastIndex] === \"\\n\") {\n this.lastLineNumber++;\n }\n this.lastIndex++;\n }\n return this.lastLineNumber;\n }\n\n /**\n * Convert the current JSX element to a call to jsx, jsxs, or jsxDEV. This is\n * the primary transformation for the automatic transform.\n *\n * Example:\n * <div a={1} key={2}>Hello{x}</div>\n * becomes\n * jsxs('div', {a: 1, children: [\"Hello\", x]}, 2)\n */\n transformTagToJSXFunc(elementLocationCode, jsxRole) {\n const isStatic = jsxRole === JSXRole.StaticChildren;\n // First tag is always jsxTagStart.\n this.tokens.replaceToken(this.getJSXFuncInvocationCode(isStatic));\n\n let keyCode = null;\n if (this.tokens.matches1(tt.jsxTagEnd)) {\n // Fragment syntax.\n this.tokens.replaceToken(`${this.getFragmentCode()}, {`);\n this.processAutomaticChildrenAndEndProps(jsxRole);\n } else {\n // Normal open tag or self-closing tag.\n this.processTagIntro();\n this.tokens.appendCode(\", {\");\n keyCode = this.processProps(true);\n\n if (this.tokens.matches2(tt.slash, tt.jsxTagEnd)) {\n // Self-closing tag, no children to add, so close the props.\n this.tokens.appendCode(\"}\");\n } else if (this.tokens.matches1(tt.jsxTagEnd)) {\n // Tag with children.\n this.tokens.removeToken();\n this.processAutomaticChildrenAndEndProps(jsxRole);\n } else {\n throw new Error(\"Expected either /> or > at the end of the tag.\");\n }\n // If a key was present, move it to its own arg. Note that moving code\n // like this will cause line numbers to get out of sync within the JSX\n // element if the key expression has a newline in it. This is unfortunate,\n // but hopefully should be rare.\n if (keyCode) {\n this.tokens.appendCode(`, ${keyCode}`);\n }\n }\n if (!this.options.production) {\n // If the key wasn't already added, add it now so we can correctly set\n // positional args for jsxDEV.\n if (keyCode === null) {\n this.tokens.appendCode(\", void 0\");\n }\n this.tokens.appendCode(`, ${isStatic}, ${this.getDevSource(elementLocationCode)}, this`);\n }\n // We're at the close-tag or the end of a self-closing tag, so remove\n // everything else and close the function call.\n this.tokens.removeInitialToken();\n while (!this.tokens.matches1(tt.jsxTagEnd)) {\n this.tokens.removeToken();\n }\n this.tokens.replaceToken(\")\");\n }\n\n /**\n * Convert the current JSX element to a createElement call. In the classic\n * runtime, this is the only case. In the automatic runtime, this is called\n * as a fallback in some situations.\n *\n * Example:\n * <div a={1} key={2}>Hello{x}</div>\n * becomes\n * React.createElement('div', {a: 1, key: 2}, \"Hello\", x)\n */\n transformTagToCreateElement(elementLocationCode) {\n // First tag is always jsxTagStart.\n this.tokens.replaceToken(this.getCreateElementInvocationCode());\n\n if (this.tokens.matches1(tt.jsxTagEnd)) {\n // Fragment syntax.\n this.tokens.replaceToken(`${this.getFragmentCode()}, null`);\n this.processChildren(true);\n } else {\n // Normal open tag or self-closing tag.\n this.processTagIntro();\n this.processPropsObjectWithDevInfo(elementLocationCode);\n\n if (this.tokens.matches2(tt.slash, tt.jsxTagEnd)) {\n // Self-closing tag; no children to process.\n } else if (this.tokens.matches1(tt.jsxTagEnd)) {\n // Tag with children and a close-tag; process the children as args.\n this.tokens.removeToken();\n this.processChildren(true);\n } else {\n throw new Error(\"Expected either /> or > at the end of the tag.\");\n }\n }\n // We're at the close-tag or the end of a self-closing tag, so remove\n // everything else and close the function call.\n this.tokens.removeInitialToken();\n while (!this.tokens.matches1(tt.jsxTagEnd)) {\n this.tokens.removeToken();\n }\n this.tokens.replaceToken(\")\");\n }\n\n /**\n * Get the code for the relevant function for this context: jsx, jsxs,\n * or jsxDEV. The following open-paren is included as well.\n *\n * These functions are only used for the automatic runtime, so they are always\n * auto-imported, but the auto-import will be either CJS or ESM based on the\n * target module format.\n */\n getJSXFuncInvocationCode(isStatic) {\n if (this.options.production) {\n if (isStatic) {\n return this.claimAutoImportedFuncInvocation(\"jsxs\", \"/jsx-runtime\");\n } else {\n return this.claimAutoImportedFuncInvocation(\"jsx\", \"/jsx-runtime\");\n }\n } else {\n return this.claimAutoImportedFuncInvocation(\"jsxDEV\", \"/jsx-dev-runtime\");\n }\n }\n\n /**\n * Return the code to use for the createElement function, e.g.\n * `React.createElement`, including the following open-paren.\n *\n * This is the main function to use for the classic runtime. For the\n * automatic runtime, this function is used as a fallback function to\n * preserve behavior when there is a prop spread followed by an explicit\n * key. In that automatic runtime case, the function should be automatically\n * imported.\n */\n getCreateElementInvocationCode() {\n if (this.isAutomaticRuntime) {\n return this.claimAutoImportedFuncInvocation(\"createElement\", \"\");\n } else {\n const {jsxPragmaInfo} = this;\n const resolvedPragmaBaseName = this.importProcessor\n ? this.importProcessor.getIdentifierReplacement(jsxPragmaInfo.base) || jsxPragmaInfo.base\n : jsxPragmaInfo.base;\n return `${resolvedPragmaBaseName}${jsxPragmaInfo.suffix}(`;\n }\n }\n\n /**\n * Return the code to use as the component when compiling a shorthand\n * fragment, e.g. `React.Fragment`.\n *\n * This may be called from either the classic or automatic runtime, and\n * the value should be auto-imported for the automatic runtime.\n */\n getFragmentCode() {\n if (this.isAutomaticRuntime) {\n return this.claimAutoImportedName(\n \"Fragment\",\n this.options.production ? \"/jsx-runtime\" : \"/jsx-dev-runtime\",\n );\n } else {\n const {jsxPragmaInfo} = this;\n const resolvedFragmentPragmaBaseName = this.importProcessor\n ? this.importProcessor.getIdentifierReplacement(jsxPragmaInfo.fragmentBase) ||\n jsxPragmaInfo.fragmentBase\n : jsxPragmaInfo.fragmentBase;\n return resolvedFragmentPragmaBaseName + jsxPragmaInfo.fragmentSuffix;\n }\n }\n\n /**\n * Return code that invokes the given function.\n *\n * When the imports transform is enabled, use the CJSImportTransformer\n * strategy of using `.call(void 0, ...` to avoid passing a `this` value in a\n * situation that would otherwise look like a method call.\n */\n claimAutoImportedFuncInvocation(funcName, importPathSuffix) {\n const funcCode = this.claimAutoImportedName(funcName, importPathSuffix);\n if (this.importProcessor) {\n return `${funcCode}.call(void 0, `;\n } else {\n return `${funcCode}(`;\n }\n }\n\n claimAutoImportedName(funcName, importPathSuffix) {\n if (this.importProcessor) {\n // CJS mode: claim a name for the module and mark it for import.\n const path = this.jsxImportSource + importPathSuffix;\n if (!this.cjsAutomaticModuleNameResolutions[path]) {\n this.cjsAutomaticModuleNameResolutions[path] =\n this.importProcessor.getFreeIdentifierForPath(path);\n }\n return `${this.cjsAutomaticModuleNameResolutions[path]}.${funcName}`;\n } else {\n // ESM mode: claim a name for this function and add it to the names that\n // should be auto-imported when the prefix is generated.\n if (!this.esmAutomaticImportNameResolutions[funcName]) {\n this.esmAutomaticImportNameResolutions[funcName] = this.nameManager.claimFreeName(\n `_${funcName}`,\n );\n }\n return this.esmAutomaticImportNameResolutions[funcName];\n }\n }\n\n /**\n * Process the first part of a tag, before any props.\n */\n processTagIntro() {\n // Walk forward until we see one of these patterns:\n // jsxName to start the first prop, preceded by another jsxName to end the tag name.\n // jsxName to start the first prop, preceded by greaterThan to end the type argument.\n // [open brace] to start the first prop.\n // [jsxTagEnd] to end the open-tag.\n // [slash, jsxTagEnd] to end the self-closing tag.\n let introEnd = this.tokens.currentIndex() + 1;\n while (\n this.tokens.tokens[introEnd].isType ||\n (!this.tokens.matches2AtIndex(introEnd - 1, tt.jsxName, tt.jsxName) &&\n !this.tokens.matches2AtIndex(introEnd - 1, tt.greaterThan, tt.jsxName) &&\n !this.tokens.matches1AtIndex(introEnd, tt.braceL) &&\n !this.tokens.matches1AtIndex(introEnd, tt.jsxTagEnd) &&\n !this.tokens.matches2AtIndex(introEnd, tt.slash, tt.jsxTagEnd))\n ) {\n introEnd++;\n }\n if (introEnd === this.tokens.currentIndex() + 1) {\n const tagName = this.tokens.identifierName();\n if (startsWithLowerCase(tagName)) {\n this.tokens.replaceToken(`'${tagName}'`);\n }\n }\n while (this.tokens.currentIndex() < introEnd) {\n this.rootTransformer.processToken();\n }\n }\n\n /**\n * Starting at the beginning of the props, add the props argument to\n * React.createElement, including the comma before it.\n */\n processPropsObjectWithDevInfo(elementLocationCode) {\n const devProps = this.options.production\n ? \"\"\n : `__self: this, __source: ${this.getDevSource(elementLocationCode)}`;\n if (!this.tokens.matches1(tt.jsxName) && !this.tokens.matches1(tt.braceL)) {\n if (devProps) {\n this.tokens.appendCode(`, {${devProps}}`);\n } else {\n this.tokens.appendCode(`, null`);\n }\n return;\n }\n this.tokens.appendCode(`, {`);\n this.processProps(false);\n if (devProps) {\n this.tokens.appendCode(` ${devProps}}`);\n } else {\n this.tokens.appendCode(\"}\");\n }\n }\n\n /**\n * Transform the core part of the props, assuming that a { has already been\n * inserted before us and that a } will be inserted after us.\n *\n * If extractKeyCode is true (i.e. when using any jsx... function), any prop\n * named \"key\" has its code captured and returned rather than being emitted to\n * the output code. This shifts line numbers, and emitting the code later will\n * correct line numbers again. If no key is found or if extractKeyCode is\n * false, this function returns null.\n */\n processProps(extractKeyCode) {\n let keyCode = null;\n while (true) {\n if (this.tokens.matches2(tt.jsxName, tt.eq)) {\n // This is a regular key={value} or key=\"value\" prop.\n const propName = this.tokens.identifierName();\n if (extractKeyCode && propName === \"key\") {\n if (keyCode !== null) {\n // The props list has multiple keys. Different implementations are\n // inconsistent about what to do here: as of this writing, Babel and\n // swc keep the *last* key and completely remove the rest, while\n // TypeScript uses the *first* key and leaves the others as regular\n // props. The React team collaborated with Babel on the\n // implementation of this behavior, so presumably the Babel behavior\n // is the one to use.\n // Since we won't ever be emitting the previous key code, we need to\n // at least emit its newlines here so that the line numbers match up\n // in the long run.\n this.tokens.appendCode(keyCode.replace(/[^\\n]/g, \"\"));\n }\n // key\n this.tokens.removeToken();\n // =\n this.tokens.removeToken();\n const snapshot = this.tokens.snapshot();\n this.processPropValue();\n keyCode = this.tokens.dangerouslyGetAndRemoveCodeSinceSnapshot(snapshot);\n // Don't add a comma\n continue;\n } else {\n this.processPropName(propName);\n this.tokens.replaceToken(\": \");\n this.processPropValue();\n }\n } else if (this.tokens.matches1(tt.jsxName)) {\n // This is a shorthand prop like <input disabled />.\n const propName = this.tokens.identifierName();\n this.processPropName(propName);\n this.tokens.appendCode(\": true\");\n } else if (this.tokens.matches1(tt.braceL)) {\n // This is prop spread, like <div {...getProps()}>, which we can pass\n // through fairly directly as an object spread.\n this.tokens.replaceToken(\"\");\n this.rootTransformer.processBalancedCode();\n this.tokens.replaceToken(\"\");\n } else {\n break;\n }\n this.tokens.appendCode(\",\");\n }\n return keyCode;\n }\n\n processPropName(propName) {\n if (propName.includes(\"-\")) {\n this.tokens.replaceToken(`'${propName}'`);\n } else {\n this.tokens.copyToken();\n }\n }\n\n processPropValue() {\n if (this.tokens.matches1(tt.braceL)) {\n this.tokens.replaceToken(\"\");\n this.rootTransformer.processBalancedCode();\n this.tokens.replaceToken(\"\");\n } else if (this.tokens.matches1(tt.jsxTagStart)) {\n this.processJSXTag();\n } else {\n this.processStringPropValue();\n }\n }\n\n processStringPropValue() {\n const token = this.tokens.currentToken();\n const valueCode = this.tokens.code.slice(token.start + 1, token.end - 1);\n const replacementCode = formatJSXTextReplacement(valueCode);\n const literalCode = formatJSXStringValueLiteral(valueCode);\n this.tokens.replaceToken(literalCode + replacementCode);\n }\n\n /**\n * Starting in the middle of the props object literal, produce an additional\n * prop for the children and close the object literal.\n */\n processAutomaticChildrenAndEndProps(jsxRole) {\n if (jsxRole === JSXRole.StaticChildren) {\n this.tokens.appendCode(\" children: [\");\n this.processChildren(false);\n this.tokens.appendCode(\"]}\");\n } else {\n // The parser information tells us whether we will see a real child or if\n // all remaining children (if any) will resolve to empty. If there are no\n // non-empty children, don't emit a children prop at all, but still\n // process children so that we properly transform the code into nothing.\n if (jsxRole === JSXRole.OneChild) {\n this.tokens.appendCode(\" children: \");\n }\n this.processChildren(false);\n this.tokens.appendCode(\"}\");\n }\n }\n\n /**\n * Transform children into a comma-separated list, which will be either\n * arguments to createElement or array elements of a children prop.\n */\n processChildren(needsInitialComma) {\n let needsComma = needsInitialComma;\n while (true) {\n if (this.tokens.matches2(tt.jsxTagStart, tt.slash)) {\n // Closing tag, so no more children.\n return;\n }\n let didEmitElement = false;\n if (this.tokens.matches1(tt.braceL)) {\n if (this.tokens.matches2(tt.braceL, tt.braceR)) {\n // Empty interpolations and comment-only interpolations are allowed\n // and don't create an extra child arg.\n this.tokens.replaceToken(\"\");\n this.tokens.replaceToken(\"\");\n } else {\n // Interpolated expression.\n this.tokens.replaceToken(needsComma ? \", \" : \"\");\n this.rootTransformer.processBalancedCode();\n this.tokens.replaceToken(\"\");\n didEmitElement = true;\n }\n } else if (this.tokens.matches1(tt.jsxTagStart)) {\n // Child JSX element\n this.tokens.appendCode(needsComma ? \", \" : \"\");\n this.processJSXTag();\n didEmitElement = true;\n } else if (this.tokens.matches1(tt.jsxText) || this.tokens.matches1(tt.jsxEmptyText)) {\n didEmitElement = this.processChildTextElement(needsComma);\n } else {\n throw new Error(\"Unexpected token when processing JSX children.\");\n }\n if (didEmitElement) {\n needsComma = true;\n }\n }\n }\n\n /**\n * Turn a JSX text element into a string literal, or nothing at all if the JSX\n * text resolves to the empty string.\n *\n * Returns true if a string literal is emitted, false otherwise.\n */\n processChildTextElement(needsComma) {\n const token = this.tokens.currentToken();\n const valueCode = this.tokens.code.slice(token.start, token.end);\n const replacementCode = formatJSXTextReplacement(valueCode);\n const literalCode = formatJSXTextLiteral(valueCode);\n if (literalCode === '\"\"') {\n this.tokens.replaceToken(replacementCode);\n return false;\n } else {\n this.tokens.replaceToken(`${needsComma ? \", \" : \"\"}${literalCode}${replacementCode}`);\n return true;\n }\n }\n\n getDevSource(elementLocationCode) {\n return `{fileName: ${this.getFilenameVarName()}, ${elementLocationCode}}`;\n }\n\n getFilenameVarName() {\n if (!this.filenameVarName) {\n this.filenameVarName = this.nameManager.claimFreeName(\"_jsxFileName\");\n }\n return this.filenameVarName;\n }\n}\n\n/**\n * Spec for identifiers: https://tc39.github.io/ecma262/#prod-IdentifierStart.\n *\n * Really only treat anything starting with a-z as tag names. `_`, `$`, `\u00E9`\n * should be treated as component names\n */\nexport function startsWithLowerCase(s) {\n const firstChar = s.charCodeAt(0);\n return firstChar >= charCodes.lowercaseA && firstChar <= charCodes.lowercaseZ;\n}\n\n/**\n * Turn the given jsxText string into a JS string literal. Leading and trailing\n * whitespace on lines is removed, except immediately after the open-tag and\n * before the close-tag. Empty lines are completely removed, and spaces are\n * added between lines after that.\n *\n * We use JSON.stringify to introduce escape characters as necessary, and trim\n * the start and end of each line and remove blank lines.\n */\nfunction formatJSXTextLiteral(text) {\n let result = \"\";\n let whitespace = \"\";\n\n let isInInitialLineWhitespace = false;\n let seenNonWhitespace = false;\n for (let i = 0; i < text.length; i++) {\n const c = text[i];\n if (c === \" \" || c === \"\\t\" || c === \"\\r\") {\n if (!isInInitialLineWhitespace) {\n whitespace += c;\n }\n } else if (c === \"\\n\") {\n whitespace = \"\";\n isInInitialLineWhitespace = true;\n } else {\n if (seenNonWhitespace && isInInitialLineWhitespace) {\n result += \" \";\n }\n result += whitespace;\n whitespace = \"\";\n if (c === \"&\") {\n const {entity, newI} = processEntity(text, i + 1);\n i = newI - 1;\n result += entity;\n } else {\n result += c;\n }\n seenNonWhitespace = true;\n isInInitialLineWhitespace = false;\n }\n }\n if (!isInInitialLineWhitespace) {\n result += whitespace;\n }\n return JSON.stringify(result);\n}\n\n/**\n * Produce the code that should be printed after the JSX text string literal,\n * with most content removed, but all newlines preserved and all spacing at the\n * end preserved.\n */\nfunction formatJSXTextReplacement(text) {\n let numNewlines = 0;\n let numSpaces = 0;\n for (const c of text) {\n if (c === \"\\n\") {\n numNewlines++;\n numSpaces = 0;\n } else if (c === \" \") {\n numSpaces++;\n }\n }\n return \"\\n\".repeat(numNewlines) + \" \".repeat(numSpaces);\n}\n\n/**\n * Format a string in the value position of a JSX prop.\n *\n * Use the same implementation as convertAttribute from\n * babel-helper-builder-react-jsx.\n */\nfunction formatJSXStringValueLiteral(text) {\n let result = \"\";\n for (let i = 0; i < text.length; i++) {\n const c = text[i];\n if (c === \"\\n\") {\n if (/\\s/.test(text[i + 1])) {\n result += \" \";\n while (i < text.length && /\\s/.test(text[i + 1])) {\n i++;\n }\n } else {\n result += \"\\n\";\n }\n } else if (c === \"&\") {\n const {entity, newI} = processEntity(text, i + 1);\n result += entity;\n i = newI - 1;\n } else {\n result += c;\n }\n }\n return JSON.stringify(result);\n}\n\n/**\n * Starting at a &, see if there's an HTML entity (specified by name, decimal\n * char code, or hex char code) and return it if so.\n *\n * Modified from jsxReadString in babel-parser.\n */\nfunction processEntity(text, indexAfterAmpersand) {\n let str = \"\";\n let count = 0;\n let entity;\n let i = indexAfterAmpersand;\n\n if (text[i] === \"#\") {\n let radix = 10;\n i++;\n let numStart;\n if (text[i] === \"x\") {\n radix = 16;\n i++;\n numStart = i;\n while (i < text.length && isHexDigit(text.charCodeAt(i))) {\n i++;\n }\n } else {\n numStart = i;\n while (i < text.length && isDecimalDigit(text.charCodeAt(i))) {\n i++;\n }\n }\n if (text[i] === \";\") {\n const numStr = text.slice(numStart, i);\n if (numStr) {\n i++;\n entity = String.fromCodePoint(parseInt(numStr, radix));\n }\n }\n } else {\n while (i < text.length && count++ < 10) {\n const ch = text[i];\n i++;\n if (ch === \";\") {\n entity = XHTMLEntities.get(str);\n break;\n }\n str += ch;\n }\n }\n\n if (!entity) {\n return {entity: \"&\", newI: indexAfterAmpersand};\n }\n return {entity, newI: i};\n}\n\nfunction isDecimalDigit(code) {\n return code >= charCodes.digit0 && code <= charCodes.digit9;\n}\n\nfunction isHexDigit(code) {\n return (\n (code >= charCodes.digit0 && code <= charCodes.digit9) ||\n (code >= charCodes.lowercaseA && code <= charCodes.lowercaseF) ||\n (code >= charCodes.uppercaseA && code <= charCodes.uppercaseF)\n );\n}\n", "\nimport {IdentifierRole} from \"../parser/tokenizer\";\nimport {TokenType, TokenType as tt} from \"../parser/tokenizer/types\";\n\nimport {startsWithLowerCase} from \"../transformers/JSXTransformer\";\nimport getJSXPragmaInfo from \"./getJSXPragmaInfo\";\n\nexport function getNonTypeIdentifiers(tokens, options) {\n const jsxPragmaInfo = getJSXPragmaInfo(options);\n const nonTypeIdentifiers = new Set();\n for (let i = 0; i < tokens.tokens.length; i++) {\n const token = tokens.tokens[i];\n if (\n token.type === tt.name &&\n !token.isType &&\n (token.identifierRole === IdentifierRole.Access ||\n token.identifierRole === IdentifierRole.ObjectShorthand ||\n token.identifierRole === IdentifierRole.ExportAccess) &&\n !token.shadowsGlobal\n ) {\n nonTypeIdentifiers.add(tokens.identifierNameForToken(token));\n }\n if (token.type === tt.jsxTagStart) {\n nonTypeIdentifiers.add(jsxPragmaInfo.base);\n }\n if (\n token.type === tt.jsxTagStart &&\n i + 1 < tokens.tokens.length &&\n tokens.tokens[i + 1].type === tt.jsxTagEnd\n ) {\n nonTypeIdentifiers.add(jsxPragmaInfo.base);\n nonTypeIdentifiers.add(jsxPragmaInfo.fragmentBase);\n }\n if (token.type === tt.jsxName && token.identifierRole === IdentifierRole.Access) {\n const identifierName = tokens.identifierNameForToken(token);\n // Lower-case single-component tag names like \"div\" don't count.\n if (!startsWithLowerCase(identifierName) || tokens.tokens[i + 1].type === TokenType.dot) {\n nonTypeIdentifiers.add(tokens.identifierNameForToken(token));\n }\n }\n }\n return nonTypeIdentifiers;\n}\n", "\n\n\nimport {isDeclaration} from \"./parser/tokenizer\";\nimport {ContextualKeyword} from \"./parser/tokenizer/keywords\";\nimport {TokenType as tt} from \"./parser/tokenizer/types\";\n\nimport getImportExportSpecifierInfo from \"./util/getImportExportSpecifierInfo\";\nimport {getNonTypeIdentifiers} from \"./util/getNonTypeIdentifiers\";\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Class responsible for preprocessing and bookkeeping import and export declarations within the\n * file.\n *\n * TypeScript uses a simpler mechanism that does not use functions like interopRequireDefault and\n * interopRequireWildcard, so we also allow that mode for compatibility.\n */\nexport default class CJSImportProcessor {\n __init() {this.nonTypeIdentifiers = new Set()}\n __init2() {this.importInfoByPath = new Map()}\n __init3() {this.importsToReplace = new Map()}\n __init4() {this.identifierReplacements = new Map()}\n __init5() {this.exportBindingsByLocalName = new Map()}\n\n constructor(\n nameManager,\n tokens,\n enableLegacyTypeScriptModuleInterop,\n options,\n isTypeScriptTransformEnabled,\n keepUnusedImports,\n helperManager,\n ) {;this.nameManager = nameManager;this.tokens = tokens;this.enableLegacyTypeScriptModuleInterop = enableLegacyTypeScriptModuleInterop;this.options = options;this.isTypeScriptTransformEnabled = isTypeScriptTransformEnabled;this.keepUnusedImports = keepUnusedImports;this.helperManager = helperManager;CJSImportProcessor.prototype.__init.call(this);CJSImportProcessor.prototype.__init2.call(this);CJSImportProcessor.prototype.__init3.call(this);CJSImportProcessor.prototype.__init4.call(this);CJSImportProcessor.prototype.__init5.call(this);}\n\n preprocessTokens() {\n for (let i = 0; i < this.tokens.tokens.length; i++) {\n if (\n this.tokens.matches1AtIndex(i, tt._import) &&\n !this.tokens.matches3AtIndex(i, tt._import, tt.name, tt.eq)\n ) {\n this.preprocessImportAtIndex(i);\n }\n if (\n this.tokens.matches1AtIndex(i, tt._export) &&\n !this.tokens.matches2AtIndex(i, tt._export, tt.eq)\n ) {\n this.preprocessExportAtIndex(i);\n }\n }\n this.generateImportReplacements();\n }\n\n /**\n * In TypeScript, import statements that only import types should be removed.\n * This includes `import {} from 'foo';`, but not `import 'foo';`.\n */\n pruneTypeOnlyImports() {\n this.nonTypeIdentifiers = getNonTypeIdentifiers(this.tokens, this.options);\n for (const [path, importInfo] of this.importInfoByPath.entries()) {\n if (\n importInfo.hasBareImport ||\n importInfo.hasStarExport ||\n importInfo.exportStarNames.length > 0 ||\n importInfo.namedExports.length > 0\n ) {\n continue;\n }\n const names = [\n ...importInfo.defaultNames,\n ...importInfo.wildcardNames,\n ...importInfo.namedImports.map(({localName}) => localName),\n ];\n if (names.every((name) => this.shouldAutomaticallyElideImportedName(name))) {\n this.importsToReplace.set(path, \"\");\n }\n }\n }\n\n shouldAutomaticallyElideImportedName(name) {\n return (\n this.isTypeScriptTransformEnabled &&\n !this.keepUnusedImports &&\n !this.nonTypeIdentifiers.has(name)\n );\n }\n\n generateImportReplacements() {\n for (const [path, importInfo] of this.importInfoByPath.entries()) {\n const {\n defaultNames,\n wildcardNames,\n namedImports,\n namedExports,\n exportStarNames,\n hasStarExport,\n } = importInfo;\n\n if (\n defaultNames.length === 0 &&\n wildcardNames.length === 0 &&\n namedImports.length === 0 &&\n namedExports.length === 0 &&\n exportStarNames.length === 0 &&\n !hasStarExport\n ) {\n // Import is never used, so don't even assign a name.\n this.importsToReplace.set(path, `require('${path}');`);\n continue;\n }\n\n const primaryImportName = this.getFreeIdentifierForPath(path);\n let secondaryImportName;\n if (this.enableLegacyTypeScriptModuleInterop) {\n secondaryImportName = primaryImportName;\n } else {\n secondaryImportName =\n wildcardNames.length > 0 ? wildcardNames[0] : this.getFreeIdentifierForPath(path);\n }\n let requireCode = `var ${primaryImportName} = require('${path}');`;\n if (wildcardNames.length > 0) {\n for (const wildcardName of wildcardNames) {\n const moduleExpr = this.enableLegacyTypeScriptModuleInterop\n ? primaryImportName\n : `${this.helperManager.getHelperName(\"interopRequireWildcard\")}(${primaryImportName})`;\n requireCode += ` var ${wildcardName} = ${moduleExpr};`;\n }\n } else if (exportStarNames.length > 0 && secondaryImportName !== primaryImportName) {\n requireCode += ` var ${secondaryImportName} = ${this.helperManager.getHelperName(\n \"interopRequireWildcard\",\n )}(${primaryImportName});`;\n } else if (defaultNames.length > 0 && secondaryImportName !== primaryImportName) {\n requireCode += ` var ${secondaryImportName} = ${this.helperManager.getHelperName(\n \"interopRequireDefault\",\n )}(${primaryImportName});`;\n }\n\n for (const {importedName, localName} of namedExports) {\n requireCode += ` ${this.helperManager.getHelperName(\n \"createNamedExportFrom\",\n )}(${primaryImportName}, '${localName}', '${importedName}');`;\n }\n for (const exportStarName of exportStarNames) {\n requireCode += ` exports.${exportStarName} = ${secondaryImportName};`;\n }\n if (hasStarExport) {\n requireCode += ` ${this.helperManager.getHelperName(\n \"createStarExport\",\n )}(${primaryImportName});`;\n }\n\n this.importsToReplace.set(path, requireCode);\n\n for (const defaultName of defaultNames) {\n this.identifierReplacements.set(defaultName, `${secondaryImportName}.default`);\n }\n for (const {importedName, localName} of namedImports) {\n this.identifierReplacements.set(localName, `${primaryImportName}.${importedName}`);\n }\n }\n }\n\n getFreeIdentifierForPath(path) {\n const components = path.split(\"/\");\n const lastComponent = components[components.length - 1];\n const baseName = lastComponent.replace(/\\W/g, \"\");\n return this.nameManager.claimFreeName(`_${baseName}`);\n }\n\n preprocessImportAtIndex(index) {\n const defaultNames = [];\n const wildcardNames = [];\n const namedImports = [];\n\n index++;\n if (\n (this.tokens.matchesContextualAtIndex(index, ContextualKeyword._type) ||\n this.tokens.matches1AtIndex(index, tt._typeof)) &&\n !this.tokens.matches1AtIndex(index + 1, tt.comma) &&\n !this.tokens.matchesContextualAtIndex(index + 1, ContextualKeyword._from)\n ) {\n // import type declaration, so no need to process anything.\n return;\n }\n\n if (this.tokens.matches1AtIndex(index, tt.parenL)) {\n // Dynamic import, so nothing to do\n return;\n }\n\n if (this.tokens.matches1AtIndex(index, tt.name)) {\n defaultNames.push(this.tokens.identifierNameAtIndex(index));\n index++;\n if (this.tokens.matches1AtIndex(index, tt.comma)) {\n index++;\n }\n }\n\n if (this.tokens.matches1AtIndex(index, tt.star)) {\n // * as\n index += 2;\n wildcardNames.push(this.tokens.identifierNameAtIndex(index));\n index++;\n }\n\n if (this.tokens.matches1AtIndex(index, tt.braceL)) {\n const result = this.getNamedImports(index + 1);\n index = result.newIndex;\n\n for (const namedImport of result.namedImports) {\n // Treat {default as X} as a default import to ensure usage of require interop helper\n if (namedImport.importedName === \"default\") {\n defaultNames.push(namedImport.localName);\n } else {\n namedImports.push(namedImport);\n }\n }\n }\n\n if (this.tokens.matchesContextualAtIndex(index, ContextualKeyword._from)) {\n index++;\n }\n\n if (!this.tokens.matches1AtIndex(index, tt.string)) {\n throw new Error(\"Expected string token at the end of import statement.\");\n }\n const path = this.tokens.stringValueAtIndex(index);\n const importInfo = this.getImportInfo(path);\n importInfo.defaultNames.push(...defaultNames);\n importInfo.wildcardNames.push(...wildcardNames);\n importInfo.namedImports.push(...namedImports);\n if (defaultNames.length === 0 && wildcardNames.length === 0 && namedImports.length === 0) {\n importInfo.hasBareImport = true;\n }\n }\n\n preprocessExportAtIndex(index) {\n if (\n this.tokens.matches2AtIndex(index, tt._export, tt._var) ||\n this.tokens.matches2AtIndex(index, tt._export, tt._let) ||\n this.tokens.matches2AtIndex(index, tt._export, tt._const)\n ) {\n this.preprocessVarExportAtIndex(index);\n } else if (\n this.tokens.matches2AtIndex(index, tt._export, tt._function) ||\n this.tokens.matches2AtIndex(index, tt._export, tt._class)\n ) {\n const exportName = this.tokens.identifierNameAtIndex(index + 2);\n this.addExportBinding(exportName, exportName);\n } else if (this.tokens.matches3AtIndex(index, tt._export, tt.name, tt._function)) {\n const exportName = this.tokens.identifierNameAtIndex(index + 3);\n this.addExportBinding(exportName, exportName);\n } else if (this.tokens.matches2AtIndex(index, tt._export, tt.braceL)) {\n this.preprocessNamedExportAtIndex(index);\n } else if (this.tokens.matches2AtIndex(index, tt._export, tt.star)) {\n this.preprocessExportStarAtIndex(index);\n }\n }\n\n preprocessVarExportAtIndex(index) {\n let depth = 0;\n // Handle cases like `export let {x} = y;`, starting at the open-brace in that case.\n for (let i = index + 2; ; i++) {\n if (\n this.tokens.matches1AtIndex(i, tt.braceL) ||\n this.tokens.matches1AtIndex(i, tt.dollarBraceL) ||\n this.tokens.matches1AtIndex(i, tt.bracketL)\n ) {\n depth++;\n } else if (\n this.tokens.matches1AtIndex(i, tt.braceR) ||\n this.tokens.matches1AtIndex(i, tt.bracketR)\n ) {\n depth--;\n } else if (depth === 0 && !this.tokens.matches1AtIndex(i, tt.name)) {\n break;\n } else if (this.tokens.matches1AtIndex(1, tt.eq)) {\n const endIndex = this.tokens.currentToken().rhsEndIndex;\n if (endIndex == null) {\n throw new Error(\"Expected = token with an end index.\");\n }\n i = endIndex - 1;\n } else {\n const token = this.tokens.tokens[i];\n if (isDeclaration(token)) {\n const exportName = this.tokens.identifierNameAtIndex(i);\n this.identifierReplacements.set(exportName, `exports.${exportName}`);\n }\n }\n }\n }\n\n /**\n * Walk this export statement just in case it's an export...from statement.\n * If it is, combine it into the import info for that path. Otherwise, just\n * bail out; it'll be handled later.\n */\n preprocessNamedExportAtIndex(index) {\n // export {\n index += 2;\n const {newIndex, namedImports} = this.getNamedImports(index);\n index = newIndex;\n\n if (this.tokens.matchesContextualAtIndex(index, ContextualKeyword._from)) {\n index++;\n } else {\n // Reinterpret \"a as b\" to be local/exported rather than imported/local.\n for (const {importedName: localName, localName: exportedName} of namedImports) {\n this.addExportBinding(localName, exportedName);\n }\n return;\n }\n\n if (!this.tokens.matches1AtIndex(index, tt.string)) {\n throw new Error(\"Expected string token at the end of import statement.\");\n }\n const path = this.tokens.stringValueAtIndex(index);\n const importInfo = this.getImportInfo(path);\n importInfo.namedExports.push(...namedImports);\n }\n\n preprocessExportStarAtIndex(index) {\n let exportedName = null;\n if (this.tokens.matches3AtIndex(index, tt._export, tt.star, tt._as)) {\n // export * as\n index += 3;\n exportedName = this.tokens.identifierNameAtIndex(index);\n // foo from\n index += 2;\n } else {\n // export * from\n index += 3;\n }\n if (!this.tokens.matches1AtIndex(index, tt.string)) {\n throw new Error(\"Expected string token at the end of star export statement.\");\n }\n const path = this.tokens.stringValueAtIndex(index);\n const importInfo = this.getImportInfo(path);\n if (exportedName !== null) {\n importInfo.exportStarNames.push(exportedName);\n } else {\n importInfo.hasStarExport = true;\n }\n }\n\n getNamedImports(index) {\n const namedImports = [];\n while (true) {\n if (this.tokens.matches1AtIndex(index, tt.braceR)) {\n index++;\n break;\n }\n\n const specifierInfo = getImportExportSpecifierInfo(this.tokens, index);\n index = specifierInfo.endIndex;\n if (!specifierInfo.isType) {\n namedImports.push({\n importedName: specifierInfo.leftName,\n localName: specifierInfo.rightName,\n });\n }\n\n if (this.tokens.matches2AtIndex(index, tt.comma, tt.braceR)) {\n index += 2;\n break;\n } else if (this.tokens.matches1AtIndex(index, tt.braceR)) {\n index++;\n break;\n } else if (this.tokens.matches1AtIndex(index, tt.comma)) {\n index++;\n } else {\n throw new Error(`Unexpected token: ${JSON.stringify(this.tokens.tokens[index])}`);\n }\n }\n return {newIndex: index, namedImports};\n }\n\n /**\n * Get a mutable import info object for this path, creating one if it doesn't\n * exist yet.\n */\n getImportInfo(path) {\n const existingInfo = this.importInfoByPath.get(path);\n if (existingInfo) {\n return existingInfo;\n }\n const newInfo = {\n defaultNames: [],\n wildcardNames: [],\n namedImports: [],\n namedExports: [],\n hasBareImport: false,\n exportStarNames: [],\n hasStarExport: false,\n };\n this.importInfoByPath.set(path, newInfo);\n return newInfo;\n }\n\n addExportBinding(localName, exportedName) {\n if (!this.exportBindingsByLocalName.has(localName)) {\n this.exportBindingsByLocalName.set(localName, []);\n }\n this.exportBindingsByLocalName.get(localName).push(exportedName);\n }\n\n /**\n * Return the code to use for the import for this path, or the empty string if\n * the code has already been \"claimed\" by a previous import.\n */\n claimImportCode(importPath) {\n const result = this.importsToReplace.get(importPath);\n this.importsToReplace.set(importPath, \"\");\n return result || \"\";\n }\n\n getIdentifierReplacement(identifierName) {\n return this.identifierReplacements.get(identifierName) || null;\n }\n\n /**\n * Return a string like `exports.foo = exports.bar`.\n */\n resolveExportBinding(assignedName) {\n const exportedNames = this.exportBindingsByLocalName.get(assignedName);\n if (!exportedNames || exportedNames.length === 0) {\n return null;\n }\n return exportedNames.map((exportedName) => `exports.${exportedName}`).join(\" = \");\n }\n\n /**\n * Return all imported/exported names where we might be interested in whether usages of those\n * names are shadowed.\n */\n getGlobalNames() {\n return new Set([\n ...this.identifierReplacements.keys(),\n ...this.exportBindingsByLocalName.keys(),\n ]);\n }\n}\n", "import type { StringReader, StringWriter } from './strings';\n\nexport const comma = ','.charCodeAt(0);\nexport const semicolon = ';'.charCodeAt(0);\n\nconst chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\nconst intToChar = new Uint8Array(64); // 64 possible chars.\nconst charToInt = new Uint8Array(128); // z is 122 in ASCII\n\nfor (let i = 0; i < chars.length; i++) {\n const c = chars.charCodeAt(i);\n intToChar[i] = c;\n charToInt[c] = i;\n}\n\nexport function decodeInteger(reader: StringReader, relative: number): number {\n let value = 0;\n let shift = 0;\n let integer = 0;\n\n do {\n const c = reader.next();\n integer = charToInt[c];\n value |= (integer & 31) << shift;\n shift += 5;\n } while (integer & 32);\n\n const shouldNegate = value & 1;\n value >>>= 1;\n\n if (shouldNegate) {\n value = -0x80000000 | -value;\n }\n\n return relative + value;\n}\n\nexport function encodeInteger(builder: StringWriter, num: number, relative: number): number {\n let delta = num - relative;\n\n delta = delta < 0 ? (-delta << 1) | 1 : delta << 1;\n do {\n let clamped = delta & 0b011111;\n delta >>>= 5;\n if (delta > 0) clamped |= 0b100000;\n builder.write(intToChar[clamped]);\n } while (delta > 0);\n\n return num;\n}\n\nexport function hasMoreVlq(reader: StringReader, max: number) {\n if (reader.pos >= max) return false;\n return reader.peek() !== comma;\n}\n", "const bufLength = 1024 * 16;\n\n// Provide a fallback for older environments.\nconst td =\n typeof TextDecoder !== 'undefined'\n ? /* #__PURE__ */ new TextDecoder()\n : typeof Buffer !== 'undefined'\n ? {\n decode(buf: Uint8Array): string {\n const out = Buffer.from(buf.buffer, buf.byteOffset, buf.byteLength);\n return out.toString();\n },\n }\n : {\n decode(buf: Uint8Array): string {\n let out = '';\n for (let i = 0; i < buf.length; i++) {\n out += String.fromCharCode(buf[i]);\n }\n return out;\n },\n };\n\nexport class StringWriter {\n pos = 0;\n private out = '';\n private buffer = new Uint8Array(bufLength);\n\n write(v: number): void {\n const { buffer } = this;\n buffer[this.pos++] = v;\n if (this.pos === bufLength) {\n this.out += td.decode(buffer);\n this.pos = 0;\n }\n }\n\n flush(): string {\n const { buffer, out, pos } = this;\n return pos > 0 ? out + td.decode(buffer.subarray(0, pos)) : out;\n }\n}\n\nexport class StringReader {\n pos = 0;\n declare private buffer: string;\n\n constructor(buffer: string) {\n this.buffer = buffer;\n }\n\n next(): number {\n return this.buffer.charCodeAt(this.pos++);\n }\n\n peek(): number {\n return this.buffer.charCodeAt(this.pos);\n }\n\n indexOf(char: string): number {\n const { buffer, pos } = this;\n const idx = buffer.indexOf(char, pos);\n return idx === -1 ? buffer.length : idx;\n }\n}\n", "import { StringReader, StringWriter } from './strings';\nimport { comma, decodeInteger, encodeInteger, hasMoreVlq, semicolon } from './vlq';\n\nconst EMPTY: any[] = [];\n\ntype Line = number;\ntype Column = number;\ntype Kind = number;\ntype Name = number;\ntype Var = number;\ntype SourcesIndex = number;\ntype ScopesIndex = number;\n\ntype Mix<A, B, O> = (A & O) | (B & O);\n\nexport type OriginalScope = Mix<\n [Line, Column, Line, Column, Kind],\n [Line, Column, Line, Column, Kind, Name],\n { vars: Var[] }\n>;\n\nexport type GeneratedRange = Mix<\n [Line, Column, Line, Column],\n [Line, Column, Line, Column, SourcesIndex, ScopesIndex],\n {\n callsite: CallSite | null;\n bindings: Binding[];\n isScope: boolean;\n }\n>;\nexport type CallSite = [SourcesIndex, Line, Column];\ntype Binding = BindingExpressionRange[];\nexport type BindingExpressionRange = [Name] | [Name, Line, Column];\n\nexport function decodeOriginalScopes(input: string): OriginalScope[] {\n const { length } = input;\n const reader = new StringReader(input);\n const scopes: OriginalScope[] = [];\n const stack: OriginalScope[] = [];\n let line = 0;\n\n for (; reader.pos < length; reader.pos++) {\n line = decodeInteger(reader, line);\n const column = decodeInteger(reader, 0);\n\n if (!hasMoreVlq(reader, length)) {\n const last = stack.pop()!;\n last[2] = line;\n last[3] = column;\n continue;\n }\n\n const kind = decodeInteger(reader, 0);\n const fields = decodeInteger(reader, 0);\n const hasName = fields & 0b0001;\n\n const scope: OriginalScope = (\n hasName ? [line, column, 0, 0, kind, decodeInteger(reader, 0)] : [line, column, 0, 0, kind]\n ) as OriginalScope;\n\n let vars: Var[] = EMPTY;\n if (hasMoreVlq(reader, length)) {\n vars = [];\n do {\n const varsIndex = decodeInteger(reader, 0);\n vars.push(varsIndex);\n } while (hasMoreVlq(reader, length));\n }\n scope.vars = vars;\n\n scopes.push(scope);\n stack.push(scope);\n }\n\n return scopes;\n}\n\nexport function encodeOriginalScopes(scopes: OriginalScope[]): string {\n const writer = new StringWriter();\n\n for (let i = 0; i < scopes.length; ) {\n i = _encodeOriginalScopes(scopes, i, writer, [0]);\n }\n\n return writer.flush();\n}\n\nfunction _encodeOriginalScopes(\n scopes: OriginalScope[],\n index: number,\n writer: StringWriter,\n state: [\n number, // GenColumn\n ],\n): number {\n const scope = scopes[index];\n const { 0: startLine, 1: startColumn, 2: endLine, 3: endColumn, 4: kind, vars } = scope;\n\n if (index > 0) writer.write(comma);\n\n state[0] = encodeInteger(writer, startLine, state[0]);\n encodeInteger(writer, startColumn, 0);\n encodeInteger(writer, kind, 0);\n\n const fields = scope.length === 6 ? 0b0001 : 0;\n encodeInteger(writer, fields, 0);\n if (scope.length === 6) encodeInteger(writer, scope[5], 0);\n\n for (const v of vars) {\n encodeInteger(writer, v, 0);\n }\n\n for (index++; index < scopes.length; ) {\n const next = scopes[index];\n const { 0: l, 1: c } = next;\n if (l > endLine || (l === endLine && c >= endColumn)) {\n break;\n }\n index = _encodeOriginalScopes(scopes, index, writer, state);\n }\n\n writer.write(comma);\n state[0] = encodeInteger(writer, endLine, state[0]);\n encodeInteger(writer, endColumn, 0);\n\n return index;\n}\n\nexport function decodeGeneratedRanges(input: string): GeneratedRange[] {\n const { length } = input;\n const reader = new StringReader(input);\n const ranges: GeneratedRange[] = [];\n const stack: GeneratedRange[] = [];\n\n let genLine = 0;\n let definitionSourcesIndex = 0;\n let definitionScopeIndex = 0;\n let callsiteSourcesIndex = 0;\n let callsiteLine = 0;\n let callsiteColumn = 0;\n let bindingLine = 0;\n let bindingColumn = 0;\n\n do {\n const semi = reader.indexOf(';');\n let genColumn = 0;\n\n for (; reader.pos < semi; reader.pos++) {\n genColumn = decodeInteger(reader, genColumn);\n\n if (!hasMoreVlq(reader, semi)) {\n const last = stack.pop()!;\n last[2] = genLine;\n last[3] = genColumn;\n continue;\n }\n\n const fields = decodeInteger(reader, 0);\n const hasDefinition = fields & 0b0001;\n const hasCallsite = fields & 0b0010;\n const hasScope = fields & 0b0100;\n\n let callsite: CallSite | null = null;\n let bindings: Binding[] = EMPTY;\n let range: GeneratedRange;\n if (hasDefinition) {\n const defSourcesIndex = decodeInteger(reader, definitionSourcesIndex);\n definitionScopeIndex = decodeInteger(\n reader,\n definitionSourcesIndex === defSourcesIndex ? definitionScopeIndex : 0,\n );\n\n definitionSourcesIndex = defSourcesIndex;\n range = [genLine, genColumn, 0, 0, defSourcesIndex, definitionScopeIndex] as GeneratedRange;\n } else {\n range = [genLine, genColumn, 0, 0] as GeneratedRange;\n }\n\n range.isScope = !!hasScope;\n\n if (hasCallsite) {\n const prevCsi = callsiteSourcesIndex;\n const prevLine = callsiteLine;\n callsiteSourcesIndex = decodeInteger(reader, callsiteSourcesIndex);\n const sameSource = prevCsi === callsiteSourcesIndex;\n callsiteLine = decodeInteger(reader, sameSource ? callsiteLine : 0);\n callsiteColumn = decodeInteger(\n reader,\n sameSource && prevLine === callsiteLine ? callsiteColumn : 0,\n );\n\n callsite = [callsiteSourcesIndex, callsiteLine, callsiteColumn];\n }\n range.callsite = callsite;\n\n if (hasMoreVlq(reader, semi)) {\n bindings = [];\n do {\n bindingLine = genLine;\n bindingColumn = genColumn;\n const expressionsCount = decodeInteger(reader, 0);\n let expressionRanges: BindingExpressionRange[];\n if (expressionsCount < -1) {\n expressionRanges = [[decodeInteger(reader, 0)]];\n for (let i = -1; i > expressionsCount; i--) {\n const prevBl = bindingLine;\n bindingLine = decodeInteger(reader, bindingLine);\n bindingColumn = decodeInteger(reader, bindingLine === prevBl ? bindingColumn : 0);\n const expression = decodeInteger(reader, 0);\n expressionRanges.push([expression, bindingLine, bindingColumn]);\n }\n } else {\n expressionRanges = [[expressionsCount]];\n }\n bindings.push(expressionRanges);\n } while (hasMoreVlq(reader, semi));\n }\n range.bindings = bindings;\n\n ranges.push(range);\n stack.push(range);\n }\n\n genLine++;\n reader.pos = semi + 1;\n } while (reader.pos < length);\n\n return ranges;\n}\n\nexport function encodeGeneratedRanges(ranges: GeneratedRange[]): string {\n if (ranges.length === 0) return '';\n\n const writer = new StringWriter();\n\n for (let i = 0; i < ranges.length; ) {\n i = _encodeGeneratedRanges(ranges, i, writer, [0, 0, 0, 0, 0, 0, 0]);\n }\n\n return writer.flush();\n}\n\nfunction _encodeGeneratedRanges(\n ranges: GeneratedRange[],\n index: number,\n writer: StringWriter,\n state: [\n number, // GenLine\n number, // GenColumn\n number, // DefSourcesIndex\n number, // DefScopesIndex\n number, // CallSourcesIndex\n number, // CallLine\n number, // CallColumn\n ],\n): number {\n const range = ranges[index];\n const {\n 0: startLine,\n 1: startColumn,\n 2: endLine,\n 3: endColumn,\n isScope,\n callsite,\n bindings,\n } = range;\n\n if (state[0] < startLine) {\n catchupLine(writer, state[0], startLine);\n state[0] = startLine;\n state[1] = 0;\n } else if (index > 0) {\n writer.write(comma);\n }\n\n state[1] = encodeInteger(writer, range[1], state[1]);\n\n const fields =\n (range.length === 6 ? 0b0001 : 0) | (callsite ? 0b0010 : 0) | (isScope ? 0b0100 : 0);\n encodeInteger(writer, fields, 0);\n\n if (range.length === 6) {\n const { 4: sourcesIndex, 5: scopesIndex } = range;\n if (sourcesIndex !== state[2]) {\n state[3] = 0;\n }\n state[2] = encodeInteger(writer, sourcesIndex, state[2]);\n state[3] = encodeInteger(writer, scopesIndex, state[3]);\n }\n\n if (callsite) {\n const { 0: sourcesIndex, 1: callLine, 2: callColumn } = range.callsite!;\n if (sourcesIndex !== state[4]) {\n state[5] = 0;\n state[6] = 0;\n } else if (callLine !== state[5]) {\n state[6] = 0;\n }\n state[4] = encodeInteger(writer, sourcesIndex, state[4]);\n state[5] = encodeInteger(writer, callLine, state[5]);\n state[6] = encodeInteger(writer, callColumn, state[6]);\n }\n\n if (bindings) {\n for (const binding of bindings) {\n if (binding.length > 1) encodeInteger(writer, -binding.length, 0);\n const expression = binding[0][0];\n encodeInteger(writer, expression, 0);\n let bindingStartLine = startLine;\n let bindingStartColumn = startColumn;\n for (let i = 1; i < binding.length; i++) {\n const expRange = binding[i];\n bindingStartLine = encodeInteger(writer, expRange[1]!, bindingStartLine);\n bindingStartColumn = encodeInteger(writer, expRange[2]!, bindingStartColumn);\n encodeInteger(writer, expRange[0]!, 0);\n }\n }\n }\n\n for (index++; index < ranges.length; ) {\n const next = ranges[index];\n const { 0: l, 1: c } = next;\n if (l > endLine || (l === endLine && c >= endColumn)) {\n break;\n }\n index = _encodeGeneratedRanges(ranges, index, writer, state);\n }\n\n if (state[0] < endLine) {\n catchupLine(writer, state[0], endLine);\n state[0] = endLine;\n state[1] = 0;\n } else {\n writer.write(comma);\n }\n state[1] = encodeInteger(writer, endColumn, state[1]);\n\n return index;\n}\n\nfunction catchupLine(writer: StringWriter, lastLine: number, line: number) {\n do {\n writer.write(semicolon);\n } while (++lastLine < line);\n}\n", "import { comma, decodeInteger, encodeInteger, hasMoreVlq, semicolon } from './vlq';\nimport { StringWriter, StringReader } from './strings';\n\nexport {\n decodeOriginalScopes,\n encodeOriginalScopes,\n decodeGeneratedRanges,\n encodeGeneratedRanges,\n} from './scopes';\nexport type { OriginalScope, GeneratedRange, CallSite, BindingExpressionRange } from './scopes';\n\nexport type SourceMapSegment =\n | [number]\n | [number, number, number, number]\n | [number, number, number, number, number];\nexport type SourceMapLine = SourceMapSegment[];\nexport type SourceMapMappings = SourceMapLine[];\n\nexport function decode(mappings: string): SourceMapMappings {\n const { length } = mappings;\n const reader = new StringReader(mappings);\n const decoded: SourceMapMappings = [];\n let genColumn = 0;\n let sourcesIndex = 0;\n let sourceLine = 0;\n let sourceColumn = 0;\n let namesIndex = 0;\n\n do {\n const semi = reader.indexOf(';');\n const line: SourceMapLine = [];\n let sorted = true;\n let lastCol = 0;\n genColumn = 0;\n\n while (reader.pos < semi) {\n let seg: SourceMapSegment;\n\n genColumn = decodeInteger(reader, genColumn);\n if (genColumn < lastCol) sorted = false;\n lastCol = genColumn;\n\n if (hasMoreVlq(reader, semi)) {\n sourcesIndex = decodeInteger(reader, sourcesIndex);\n sourceLine = decodeInteger(reader, sourceLine);\n sourceColumn = decodeInteger(reader, sourceColumn);\n\n if (hasMoreVlq(reader, semi)) {\n namesIndex = decodeInteger(reader, namesIndex);\n seg = [genColumn, sourcesIndex, sourceLine, sourceColumn, namesIndex];\n } else {\n seg = [genColumn, sourcesIndex, sourceLine, sourceColumn];\n }\n } else {\n seg = [genColumn];\n }\n\n line.push(seg);\n reader.pos++;\n }\n\n if (!sorted) sort(line);\n decoded.push(line);\n reader.pos = semi + 1;\n } while (reader.pos <= length);\n\n return decoded;\n}\n\nfunction sort(line: SourceMapSegment[]) {\n line.sort(sortComparator);\n}\n\nfunction sortComparator(a: SourceMapSegment, b: SourceMapSegment): number {\n return a[0] - b[0];\n}\n\nexport function encode(decoded: SourceMapMappings): string;\nexport function encode(decoded: Readonly<SourceMapMappings>): string;\nexport function encode(decoded: Readonly<SourceMapMappings>): string {\n const writer = new StringWriter();\n let sourcesIndex = 0;\n let sourceLine = 0;\n let sourceColumn = 0;\n let namesIndex = 0;\n\n for (let i = 0; i < decoded.length; i++) {\n const line = decoded[i];\n if (i > 0) writer.write(semicolon);\n if (line.length === 0) continue;\n\n let genColumn = 0;\n\n for (let j = 0; j < line.length; j++) {\n const segment = line[j];\n if (j > 0) writer.write(comma);\n\n genColumn = encodeInteger(writer, segment[0], genColumn);\n\n if (segment.length === 1) continue;\n sourcesIndex = encodeInteger(writer, segment[1], sourcesIndex);\n sourceLine = encodeInteger(writer, segment[2], sourceLine);\n sourceColumn = encodeInteger(writer, segment[3], sourceColumn);\n\n if (segment.length === 4) continue;\n namesIndex = encodeInteger(writer, segment[4], namesIndex);\n }\n }\n\n return writer.flush();\n}\n", "import { encode, decode } from '@jridgewell/sourcemap-codec';\n\nimport resolver from './resolve';\nimport maybeSort from './sort';\nimport buildBySources from './by-source';\nimport {\n memoizedState,\n memoizedBinarySearch,\n upperBound,\n lowerBound,\n found as bsFound,\n} from './binary-search';\nimport {\n COLUMN,\n SOURCES_INDEX,\n SOURCE_LINE,\n SOURCE_COLUMN,\n NAMES_INDEX,\n REV_GENERATED_LINE,\n REV_GENERATED_COLUMN,\n} from './sourcemap-segment';\nimport { parse } from './types';\n\nimport type { SourceMapSegment, ReverseSegment } from './sourcemap-segment';\nimport type {\n SourceMapV3,\n DecodedSourceMap,\n EncodedSourceMap,\n InvalidOriginalMapping,\n OriginalMapping,\n InvalidGeneratedMapping,\n GeneratedMapping,\n SourceMapInput,\n Needle,\n SourceNeedle,\n SourceMap,\n EachMapping,\n Bias,\n XInput,\n SectionedSourceMap,\n Ro,\n} from './types';\nimport type { Source } from './by-source';\nimport type { MemoState } from './binary-search';\n\nexport type { SourceMapSegment } from './sourcemap-segment';\nexport type {\n SourceMap,\n DecodedSourceMap,\n EncodedSourceMap,\n Section,\n SectionedSourceMap,\n SourceMapV3,\n Bias,\n EachMapping,\n GeneratedMapping,\n InvalidGeneratedMapping,\n InvalidOriginalMapping,\n Needle,\n OriginalMapping,\n OriginalMapping as Mapping,\n SectionedSourceMapInput,\n SourceMapInput,\n SourceNeedle,\n XInput,\n EncodedSourceMapXInput,\n DecodedSourceMapXInput,\n SectionedSourceMapXInput,\n SectionXInput,\n} from './types';\n\ninterface PublicMap {\n _encoded: TraceMap['_encoded'];\n _decoded: TraceMap['_decoded'];\n _decodedMemo: TraceMap['_decodedMemo'];\n _bySources: TraceMap['_bySources'];\n _bySourceMemos: TraceMap['_bySourceMemos'];\n}\n\nconst LINE_GTR_ZERO = '`line` must be greater than 0 (lines start at line 1)';\nconst COL_GTR_EQ_ZERO = '`column` must be greater than or equal to 0 (columns start at column 0)';\n\nexport const LEAST_UPPER_BOUND = -1;\nexport const GREATEST_LOWER_BOUND = 1;\n\nexport { FlattenMap, FlattenMap as AnyMap } from './flatten-map';\n\nexport class TraceMap implements SourceMap {\n declare version: SourceMapV3['version'];\n declare file: SourceMapV3['file'];\n declare names: SourceMapV3['names'];\n declare sourceRoot: SourceMapV3['sourceRoot'];\n declare sources: SourceMapV3['sources'];\n declare sourcesContent: SourceMapV3['sourcesContent'];\n declare ignoreList: SourceMapV3['ignoreList'];\n\n declare resolvedSources: string[];\n declare private _encoded: string | undefined;\n\n declare private _decoded: SourceMapSegment[][] | undefined;\n declare private _decodedMemo: MemoState;\n\n declare private _bySources: Source[] | undefined;\n declare private _bySourceMemos: MemoState[] | undefined;\n\n constructor(map: Ro<SourceMapInput>, mapUrl?: string | null) {\n const isString = typeof map === 'string';\n if (!isString && (map as unknown as { _decodedMemo: any })._decodedMemo) return map as TraceMap;\n\n const parsed = parse(map as Exclude<SourceMapInput, TraceMap>);\n\n const { version, file, names, sourceRoot, sources, sourcesContent } = parsed;\n this.version = version;\n this.file = file;\n this.names = names || [];\n this.sourceRoot = sourceRoot;\n this.sources = sources;\n this.sourcesContent = sourcesContent;\n this.ignoreList = parsed.ignoreList || (parsed as XInput).x_google_ignoreList || undefined;\n\n const resolve = resolver(mapUrl, sourceRoot);\n this.resolvedSources = sources.map(resolve);\n\n const { mappings } = parsed;\n if (typeof mappings === 'string') {\n this._encoded = mappings;\n this._decoded = undefined;\n } else if (Array.isArray(mappings)) {\n this._encoded = undefined;\n this._decoded = maybeSort(mappings, isString);\n } else if ((parsed as unknown as SectionedSourceMap).sections) {\n throw new Error(`TraceMap passed sectioned source map, please use FlattenMap export instead`);\n } else {\n throw new Error(`invalid source map: ${JSON.stringify(parsed)}`);\n }\n\n this._decodedMemo = memoizedState();\n this._bySources = undefined;\n this._bySourceMemos = undefined;\n }\n}\n\n/**\n * Typescript doesn't allow friend access to private fields, so this just casts the map into a type\n * with public access modifiers.\n */\nfunction cast(map: unknown): PublicMap {\n return map as any;\n}\n\n/**\n * Returns the encoded (VLQ string) form of the SourceMap's mappings field.\n */\nexport function encodedMappings(map: TraceMap): EncodedSourceMap['mappings'] {\n return (cast(map)._encoded ??= encode(cast(map)._decoded!));\n}\n\n/**\n * Returns the decoded (array of lines of segments) form of the SourceMap's mappings field.\n */\nexport function decodedMappings(map: TraceMap): Readonly<DecodedSourceMap['mappings']> {\n return (cast(map)._decoded ||= decode(cast(map)._encoded!));\n}\n\n/**\n * A low-level API to find the segment associated with a generated line/column (think, from a\n * stack trace). Line and column here are 0-based, unlike `originalPositionFor`.\n */\nexport function traceSegment(\n map: TraceMap,\n line: number,\n column: number,\n): Readonly<SourceMapSegment> | null {\n const decoded = decodedMappings(map);\n\n // It's common for parent source maps to have pointers to lines that have no\n // mapping (like a \"//# sourceMappingURL=\") at the end of the child file.\n if (line >= decoded.length) return null;\n\n const segments = decoded[line];\n const index = traceSegmentInternal(\n segments,\n cast(map)._decodedMemo,\n line,\n column,\n GREATEST_LOWER_BOUND,\n );\n\n return index === -1 ? null : segments[index];\n}\n\n/**\n * A higher-level API to find the source/line/column associated with a generated line/column\n * (think, from a stack trace). Line is 1-based, but column is 0-based, due to legacy behavior in\n * `source-map` library.\n */\nexport function originalPositionFor(\n map: TraceMap,\n needle: Needle,\n): OriginalMapping | InvalidOriginalMapping {\n let { line, column, bias } = needle;\n line--;\n if (line < 0) throw new Error(LINE_GTR_ZERO);\n if (column < 0) throw new Error(COL_GTR_EQ_ZERO);\n\n const decoded = decodedMappings(map);\n\n // It's common for parent source maps to have pointers to lines that have no\n // mapping (like a \"//# sourceMappingURL=\") at the end of the child file.\n if (line >= decoded.length) return OMapping(null, null, null, null);\n\n const segments = decoded[line];\n const index = traceSegmentInternal(\n segments,\n cast(map)._decodedMemo,\n line,\n column,\n bias || GREATEST_LOWER_BOUND,\n );\n\n if (index === -1) return OMapping(null, null, null, null);\n\n const segment = segments[index];\n if (segment.length === 1) return OMapping(null, null, null, null);\n\n const { names, resolvedSources } = map;\n return OMapping(\n resolvedSources[segment[SOURCES_INDEX]],\n segment[SOURCE_LINE] + 1,\n segment[SOURCE_COLUMN],\n segment.length === 5 ? names[segment[NAMES_INDEX]] : null,\n );\n}\n\n/**\n * Finds the generated line/column position of the provided source/line/column source position.\n */\nexport function generatedPositionFor(\n map: TraceMap,\n needle: SourceNeedle,\n): GeneratedMapping | InvalidGeneratedMapping {\n const { source, line, column, bias } = needle;\n return generatedPosition(map, source, line, column, bias || GREATEST_LOWER_BOUND, false);\n}\n\n/**\n * Finds all generated line/column positions of the provided source/line/column source position.\n */\nexport function allGeneratedPositionsFor(map: TraceMap, needle: SourceNeedle): GeneratedMapping[] {\n const { source, line, column, bias } = needle;\n // SourceMapConsumer uses LEAST_UPPER_BOUND for some reason, so we follow suit.\n return generatedPosition(map, source, line, column, bias || LEAST_UPPER_BOUND, true);\n}\n\n/**\n * Iterates each mapping in generated position order.\n */\nexport function eachMapping(map: TraceMap, cb: (mapping: EachMapping) => void): void {\n const decoded = decodedMappings(map);\n const { names, resolvedSources } = map;\n\n for (let i = 0; i < decoded.length; i++) {\n const line = decoded[i];\n for (let j = 0; j < line.length; j++) {\n const seg = line[j];\n\n const generatedLine = i + 1;\n const generatedColumn = seg[0];\n let source = null;\n let originalLine = null;\n let originalColumn = null;\n let name = null;\n if (seg.length !== 1) {\n source = resolvedSources[seg[1]];\n originalLine = seg[2] + 1;\n originalColumn = seg[3];\n }\n if (seg.length === 5) name = names[seg[4]];\n\n cb({\n generatedLine,\n generatedColumn,\n source,\n originalLine,\n originalColumn,\n name,\n } as EachMapping);\n }\n }\n}\n\nfunction sourceIndex(map: TraceMap, source: string): number {\n const { sources, resolvedSources } = map;\n let index = sources.indexOf(source);\n if (index === -1) index = resolvedSources.indexOf(source);\n return index;\n}\n\n/**\n * Retrieves the source content for a particular source, if its found. Returns null if not.\n */\nexport function sourceContentFor(map: TraceMap, source: string): string | null {\n const { sourcesContent } = map;\n if (sourcesContent == null) return null;\n const index = sourceIndex(map, source);\n return index === -1 ? null : sourcesContent[index];\n}\n\n/**\n * Determines if the source is marked to ignore by the source map.\n */\nexport function isIgnored(map: TraceMap, source: string): boolean {\n const { ignoreList } = map;\n if (ignoreList == null) return false;\n const index = sourceIndex(map, source);\n return index === -1 ? false : ignoreList.includes(index);\n}\n\n/**\n * A helper that skips sorting of the input map's mappings array, which can be expensive for larger\n * maps.\n */\nexport function presortedDecodedMap(map: DecodedSourceMap, mapUrl?: string): TraceMap {\n const tracer = new TraceMap(clone(map, []), mapUrl);\n cast(tracer)._decoded = map.mappings;\n return tracer;\n}\n\n/**\n * Returns a sourcemap object (with decoded mappings) suitable for passing to a library that expects\n * a sourcemap, or to JSON.stringify.\n */\nexport function decodedMap(\n map: TraceMap,\n): Omit<DecodedSourceMap, 'mappings'> & { mappings: readonly SourceMapSegment[][] } {\n return clone(map, decodedMappings(map));\n}\n\n/**\n * Returns a sourcemap object (with encoded mappings) suitable for passing to a library that expects\n * a sourcemap, or to JSON.stringify.\n */\nexport function encodedMap(map: TraceMap): EncodedSourceMap {\n return clone(map, encodedMappings(map));\n}\n\nfunction clone<T extends string | readonly SourceMapSegment[][]>(\n map: TraceMap | DecodedSourceMap,\n mappings: T,\n): T extends string ? EncodedSourceMap : DecodedSourceMap {\n return {\n version: map.version,\n file: map.file,\n names: map.names,\n sourceRoot: map.sourceRoot,\n sources: map.sources,\n sourcesContent: map.sourcesContent,\n mappings,\n ignoreList: map.ignoreList || (map as XInput).x_google_ignoreList,\n } as any;\n}\n\nfunction OMapping(source: null, line: null, column: null, name: null): InvalidOriginalMapping;\nfunction OMapping(\n source: string,\n line: number,\n column: number,\n name: string | null,\n): OriginalMapping;\nfunction OMapping(\n source: string | null,\n line: number | null,\n column: number | null,\n name: string | null,\n): OriginalMapping | InvalidOriginalMapping {\n return { source, line, column, name } as any;\n}\n\nfunction GMapping(line: null, column: null): InvalidGeneratedMapping;\nfunction GMapping(line: number, column: number): GeneratedMapping;\nfunction GMapping(\n line: number | null,\n column: number | null,\n): GeneratedMapping | InvalidGeneratedMapping {\n return { line, column } as any;\n}\n\nfunction traceSegmentInternal(\n segments: SourceMapSegment[],\n memo: MemoState,\n line: number,\n column: number,\n bias: Bias,\n): number;\nfunction traceSegmentInternal(\n segments: ReverseSegment[],\n memo: MemoState,\n line: number,\n column: number,\n bias: Bias,\n): number;\nfunction traceSegmentInternal(\n segments: SourceMapSegment[] | ReverseSegment[],\n memo: MemoState,\n line: number,\n column: number,\n bias: Bias,\n): number {\n let index = memoizedBinarySearch(segments, column, memo, line);\n if (bsFound) {\n index = (bias === LEAST_UPPER_BOUND ? upperBound : lowerBound)(segments, column, index);\n } else if (bias === LEAST_UPPER_BOUND) index++;\n\n if (index === -1 || index === segments.length) return -1;\n return index;\n}\n\nfunction sliceGeneratedPositions(\n segments: ReverseSegment[],\n memo: MemoState,\n line: number,\n column: number,\n bias: Bias,\n): GeneratedMapping[] {\n let min = traceSegmentInternal(segments, memo, line, column, GREATEST_LOWER_BOUND);\n\n // We ignored the bias when tracing the segment so that we're guarnateed to find the first (in\n // insertion order) segment that matched. Even if we did respect the bias when tracing, we would\n // still need to call `lowerBound()` to find the first segment, which is slower than just looking\n // for the GREATEST_LOWER_BOUND to begin with. The only difference that matters for us is when the\n // binary search didn't match, in which case GREATEST_LOWER_BOUND just needs to increment to\n // match LEAST_UPPER_BOUND.\n if (!bsFound && bias === LEAST_UPPER_BOUND) min++;\n\n if (min === -1 || min === segments.length) return [];\n\n // We may have found the segment that started at an earlier column. If this is the case, then we\n // need to slice all generated segments that match _that_ column, because all such segments span\n // to our desired column.\n const matchedColumn = bsFound ? column : segments[min][COLUMN];\n\n // The binary search is not guaranteed to find the lower bound when a match wasn't found.\n if (!bsFound) min = lowerBound(segments, matchedColumn, min);\n const max = upperBound(segments, matchedColumn, min);\n\n const result = [];\n for (; min <= max; min++) {\n const segment = segments[min];\n result.push(GMapping(segment[REV_GENERATED_LINE] + 1, segment[REV_GENERATED_COLUMN]));\n }\n return result;\n}\n\nfunction generatedPosition(\n map: TraceMap,\n source: string,\n line: number,\n column: number,\n bias: Bias,\n all: false,\n): GeneratedMapping | InvalidGeneratedMapping;\nfunction generatedPosition(\n map: TraceMap,\n source: string,\n line: number,\n column: number,\n bias: Bias,\n all: true,\n): GeneratedMapping[];\nfunction generatedPosition(\n map: TraceMap,\n source: string,\n line: number,\n column: number,\n bias: Bias,\n all: boolean,\n): GeneratedMapping | InvalidGeneratedMapping | GeneratedMapping[] {\n line--;\n if (line < 0) throw new Error(LINE_GTR_ZERO);\n if (column < 0) throw new Error(COL_GTR_EQ_ZERO);\n\n const { sources, resolvedSources } = map;\n let sourceIndex = sources.indexOf(source);\n if (sourceIndex === -1) sourceIndex = resolvedSources.indexOf(source);\n if (sourceIndex === -1) return all ? [] : GMapping(null, null);\n\n const bySourceMemos = (cast(map)._bySourceMemos ||= sources.map(memoizedState));\n const generated = (cast(map)._bySources ||= buildBySources(decodedMappings(map), bySourceMemos));\n\n const segments = generated[sourceIndex][line];\n if (segments == null) return all ? [] : GMapping(null, null);\n\n const memo = bySourceMemos[sourceIndex];\n\n if (all) return sliceGeneratedPositions(segments, memo, line, column, bias);\n\n const index = traceSegmentInternal(segments, memo, line, column, bias);\n if (index === -1) return GMapping(null, null);\n\n const segment = segments[index];\n return GMapping(segment[REV_GENERATED_LINE] + 1, segment[REV_GENERATED_COLUMN]);\n}\n", "import resolveUri from '@jridgewell/resolve-uri';\nimport stripFilename from './strip-filename';\n\ntype Resolve = (source: string | null) => string;\nexport default function resolver(\n mapUrl: string | null | undefined,\n sourceRoot: string | undefined,\n): Resolve {\n const from = stripFilename(mapUrl);\n // The sourceRoot is always treated as a directory, if it's not empty.\n // https://github.com/mozilla/source-map/blob/8cb3ee57/lib/util.js#L327\n // https://github.com/chromium/chromium/blob/da4adbb3/third_party/blink/renderer/devtools/front_end/sdk/SourceMap.js#L400-L401\n const prefix = sourceRoot ? sourceRoot + '/' : '';\n\n return (source) => resolveUri(prefix + (source || ''), from);\n}\n", "/**\n * Removes everything after the last \"/\", but leaves the slash.\n */\nexport default function stripFilename(path: string | undefined | null): string {\n if (!path) return '';\n const index = path.lastIndexOf('/');\n return path.slice(0, index + 1);\n}\n", "type GeneratedColumn = number;\ntype SourcesIndex = number;\ntype SourceLine = number;\ntype SourceColumn = number;\ntype NamesIndex = number;\n\ntype GeneratedLine = number;\n\nexport type SourceMapSegment =\n | [GeneratedColumn]\n | [GeneratedColumn, SourcesIndex, SourceLine, SourceColumn]\n | [GeneratedColumn, SourcesIndex, SourceLine, SourceColumn, NamesIndex];\n\nexport type ReverseSegment = [SourceColumn, GeneratedLine, GeneratedColumn];\n\nexport const COLUMN = 0;\nexport const SOURCES_INDEX = 1;\nexport const SOURCE_LINE = 2;\nexport const SOURCE_COLUMN = 3;\nexport const NAMES_INDEX = 4;\n\nexport const REV_GENERATED_LINE = 1;\nexport const REV_GENERATED_COLUMN = 2;\n", "import { COLUMN } from './sourcemap-segment';\n\nimport type { ReverseSegment, SourceMapSegment } from './sourcemap-segment';\n\nexport default function maybeSort(\n mappings: SourceMapSegment[][],\n owned: boolean,\n): SourceMapSegment[][] {\n const unsortedIndex = nextUnsortedSegmentLine(mappings, 0);\n if (unsortedIndex === mappings.length) return mappings;\n\n // If we own the array (meaning we parsed it from JSON), then we're free to directly mutate it. If\n // not, we do not want to modify the consumer's input array.\n if (!owned) mappings = mappings.slice();\n\n for (let i = unsortedIndex; i < mappings.length; i = nextUnsortedSegmentLine(mappings, i + 1)) {\n mappings[i] = sortSegments(mappings[i], owned);\n }\n return mappings;\n}\n\nfunction nextUnsortedSegmentLine(mappings: SourceMapSegment[][], start: number): number {\n for (let i = start; i < mappings.length; i++) {\n if (!isSorted(mappings[i])) return i;\n }\n return mappings.length;\n}\n\nfunction isSorted(line: SourceMapSegment[]): boolean {\n for (let j = 1; j < line.length; j++) {\n if (line[j][COLUMN] < line[j - 1][COLUMN]) {\n return false;\n }\n }\n return true;\n}\n\nfunction sortSegments(line: SourceMapSegment[], owned: boolean): SourceMapSegment[] {\n if (!owned) line = line.slice();\n return line.sort(sortComparator);\n}\n\nexport function sortComparator<T extends SourceMapSegment | ReverseSegment>(a: T, b: T): number {\n return a[COLUMN] - b[COLUMN];\n}\n", "import { COLUMN, SOURCES_INDEX, SOURCE_LINE, SOURCE_COLUMN } from './sourcemap-segment';\nimport { sortComparator } from './sort';\n\nimport type { ReverseSegment, SourceMapSegment } from './sourcemap-segment';\n\nexport type Source = ReverseSegment[][];\n\n// Rebuilds the original source files, with mappings that are ordered by source line/column instead\n// of generated line/column.\nexport default function buildBySources(\n decoded: readonly SourceMapSegment[][],\n memos: unknown[],\n): Source[] {\n const sources: Source[] = memos.map(() => []);\n\n for (let i = 0; i < decoded.length; i++) {\n const line = decoded[i];\n for (let j = 0; j < line.length; j++) {\n const seg = line[j];\n if (seg.length === 1) continue;\n\n const sourceIndex = seg[SOURCES_INDEX];\n const sourceLine = seg[SOURCE_LINE];\n const sourceColumn = seg[SOURCE_COLUMN];\n\n const source = sources[sourceIndex];\n const segs = (source[sourceLine] ||= []);\n segs.push([sourceColumn, i, seg[COLUMN]]);\n }\n }\n\n for (let i = 0; i < sources.length; i++) {\n const source = sources[i];\n for (let j = 0; j < source.length; j++) {\n const line = source[j];\n if (line) line.sort(sortComparator);\n }\n }\n\n return sources;\n}\n", "import type { SourceMapSegment, ReverseSegment } from './sourcemap-segment';\nimport { COLUMN } from './sourcemap-segment';\n\nexport type MemoState = {\n lastKey: number;\n lastNeedle: number;\n lastIndex: number;\n};\n\nexport let found = false;\n\n/**\n * A binary search implementation that returns the index if a match is found.\n * If no match is found, then the left-index (the index associated with the item that comes just\n * before the desired index) is returned. To maintain proper sort order, a splice would happen at\n * the next index:\n *\n * ```js\n * const array = [1, 3];\n * const needle = 2;\n * const index = binarySearch(array, needle, (item, needle) => item - needle);\n *\n * assert.equal(index, 0);\n * array.splice(index + 1, 0, needle);\n * assert.deepEqual(array, [1, 2, 3]);\n * ```\n */\nexport function binarySearch(\n haystack: SourceMapSegment[] | ReverseSegment[],\n needle: number,\n low: number,\n high: number,\n): number {\n while (low <= high) {\n const mid = low + ((high - low) >> 1);\n const cmp = haystack[mid][COLUMN] - needle;\n\n if (cmp === 0) {\n found = true;\n return mid;\n }\n\n if (cmp < 0) {\n low = mid + 1;\n } else {\n high = mid - 1;\n }\n }\n\n found = false;\n return low - 1;\n}\n\nexport function upperBound(\n haystack: SourceMapSegment[] | ReverseSegment[],\n needle: number,\n index: number,\n): number {\n for (let i = index + 1; i < haystack.length; index = i++) {\n if (haystack[i][COLUMN] !== needle) break;\n }\n return index;\n}\n\nexport function lowerBound(\n haystack: SourceMapSegment[] | ReverseSegment[],\n needle: number,\n index: number,\n): number {\n for (let i = index - 1; i >= 0; index = i--) {\n if (haystack[i][COLUMN] !== needle) break;\n }\n return index;\n}\n\nexport function memoizedState(): MemoState {\n return {\n lastKey: -1,\n lastNeedle: -1,\n lastIndex: -1,\n };\n}\n\n/**\n * This overly complicated beast is just to record the last tested line/column and the resulting\n * index, allowing us to skip a few tests if mappings are monotonically increasing.\n */\nexport function memoizedBinarySearch(\n haystack: SourceMapSegment[] | ReverseSegment[],\n needle: number,\n state: MemoState,\n key: number,\n): number {\n const { lastKey, lastNeedle, lastIndex } = state;\n\n let low = 0;\n let high = haystack.length - 1;\n if (key === lastKey) {\n if (needle === lastNeedle) {\n found = lastIndex !== -1 && haystack[lastIndex][COLUMN] === needle;\n return lastIndex;\n }\n\n if (needle >= lastNeedle) {\n // lastIndex may be -1 if the previous needle was not found.\n low = lastIndex === -1 ? 0 : lastIndex;\n } else {\n high = lastIndex;\n }\n }\n state.lastKey = key;\n state.lastNeedle = needle;\n\n return (state.lastIndex = binarySearch(haystack, needle, low, high));\n}\n", "import type { SourceMapSegment } from './sourcemap-segment';\nimport type { GREATEST_LOWER_BOUND, LEAST_UPPER_BOUND, TraceMap } from './trace-mapping';\n\nexport interface SourceMapV3 {\n file?: string | null;\n names: string[];\n sourceRoot?: string;\n sources: (string | null)[];\n sourcesContent?: (string | null)[];\n version: 3;\n ignoreList?: number[];\n}\n\nexport interface EncodedSourceMap extends SourceMapV3 {\n mappings: string;\n}\n\nexport interface DecodedSourceMap extends SourceMapV3 {\n mappings: SourceMapSegment[][];\n}\n\nexport interface Section {\n offset: { line: number; column: number };\n map: EncodedSourceMap | DecodedSourceMap | SectionedSourceMap;\n}\n\nexport interface SectionedSourceMap {\n file?: string | null;\n sections: Section[];\n version: 3;\n}\n\nexport type OriginalMapping = {\n source: string | null;\n line: number;\n column: number;\n name: string | null;\n};\n\nexport type InvalidOriginalMapping = {\n source: null;\n line: null;\n column: null;\n name: null;\n};\n\nexport type GeneratedMapping = {\n line: number;\n column: number;\n};\nexport type InvalidGeneratedMapping = {\n line: null;\n column: null;\n};\n\nexport type Bias = typeof GREATEST_LOWER_BOUND | typeof LEAST_UPPER_BOUND;\n\nexport type XInput = { x_google_ignoreList?: SourceMapV3['ignoreList'] };\nexport type EncodedSourceMapXInput = EncodedSourceMap & XInput;\nexport type DecodedSourceMapXInput = DecodedSourceMap & XInput;\nexport type SectionedSourceMapXInput = Omit<SectionedSourceMap, 'sections'> & {\n sections: SectionXInput[];\n};\nexport type SectionXInput = Omit<Section, 'map'> & {\n map: SectionedSourceMapInput;\n};\n\nexport type SourceMapInput = string | EncodedSourceMapXInput | DecodedSourceMapXInput | TraceMap;\nexport type SectionedSourceMapInput = SourceMapInput | SectionedSourceMapXInput;\n\nexport type Needle = { line: number; column: number; bias?: Bias };\nexport type SourceNeedle = { source: string; line: number; column: number; bias?: Bias };\n\nexport type EachMapping =\n | {\n generatedLine: number;\n generatedColumn: number;\n source: null;\n originalLine: null;\n originalColumn: null;\n name: null;\n }\n | {\n generatedLine: number;\n generatedColumn: number;\n source: string | null;\n originalLine: number;\n originalColumn: number;\n name: string | null;\n };\n\nexport abstract class SourceMap {\n declare version: SourceMapV3['version'];\n declare file: SourceMapV3['file'];\n declare names: SourceMapV3['names'];\n declare sourceRoot: SourceMapV3['sourceRoot'];\n declare sources: SourceMapV3['sources'];\n declare sourcesContent: SourceMapV3['sourcesContent'];\n declare resolvedSources: SourceMapV3['sources'];\n declare ignoreList: SourceMapV3['ignoreList'];\n}\n\nexport type Ro<T> =\n T extends Array<infer V>\n ? V[] | Readonly<V[]> | RoArray<V> | Readonly<RoArray<V>>\n : T extends object\n ? T | Readonly<T> | RoObject<T> | Readonly<RoObject<T>>\n : T;\ntype RoArray<T> = Ro<T>[];\ntype RoObject<T> = { [K in keyof T]: T[K] | Ro<T[K]> };\n\nexport function parse<T>(map: T): Exclude<T, string> {\n return typeof map === 'string' ? JSON.parse(map) : (map as Exclude<T, string>);\n}\n", "import { TraceMap, presortedDecodedMap, decodedMappings } from './trace-mapping';\nimport {\n COLUMN,\n SOURCES_INDEX,\n SOURCE_LINE,\n SOURCE_COLUMN,\n NAMES_INDEX,\n} from './sourcemap-segment';\nimport { parse } from './types';\n\nimport type {\n DecodedSourceMap,\n DecodedSourceMapXInput,\n EncodedSourceMapXInput,\n SectionedSourceMapXInput,\n SectionedSourceMapInput,\n SectionXInput,\n Ro,\n} from './types';\nimport type { SourceMapSegment } from './sourcemap-segment';\n\ntype FlattenMap = {\n new (map: Ro<SectionedSourceMapInput>, mapUrl?: string | null): TraceMap;\n (map: Ro<SectionedSourceMapInput>, mapUrl?: string | null): TraceMap;\n};\n\nexport const FlattenMap: FlattenMap = function (map, mapUrl) {\n const parsed = parse(map as SectionedSourceMapInput);\n\n if (!('sections' in parsed)) {\n return new TraceMap(parsed as DecodedSourceMapXInput | EncodedSourceMapXInput, mapUrl);\n }\n\n const mappings: SourceMapSegment[][] = [];\n const sources: string[] = [];\n const sourcesContent: (string | null)[] = [];\n const names: string[] = [];\n const ignoreList: number[] = [];\n\n recurse(\n parsed,\n mapUrl,\n mappings,\n sources,\n sourcesContent,\n names,\n ignoreList,\n 0,\n 0,\n Infinity,\n Infinity,\n );\n\n const joined: DecodedSourceMap = {\n version: 3,\n file: parsed.file,\n names,\n sources,\n sourcesContent,\n mappings,\n ignoreList,\n };\n\n return presortedDecodedMap(joined);\n} as FlattenMap;\n\nfunction recurse(\n input: SectionedSourceMapXInput,\n mapUrl: string | null | undefined,\n mappings: SourceMapSegment[][],\n sources: string[],\n sourcesContent: (string | null)[],\n names: string[],\n ignoreList: number[],\n lineOffset: number,\n columnOffset: number,\n stopLine: number,\n stopColumn: number,\n) {\n const { sections } = input;\n for (let i = 0; i < sections.length; i++) {\n const { map, offset } = sections[i];\n\n let sl = stopLine;\n let sc = stopColumn;\n if (i + 1 < sections.length) {\n const nextOffset = sections[i + 1].offset;\n sl = Math.min(stopLine, lineOffset + nextOffset.line);\n\n if (sl === stopLine) {\n sc = Math.min(stopColumn, columnOffset + nextOffset.column);\n } else if (sl < stopLine) {\n sc = columnOffset + nextOffset.column;\n }\n }\n\n addSection(\n map,\n mapUrl,\n mappings,\n sources,\n sourcesContent,\n names,\n ignoreList,\n lineOffset + offset.line,\n columnOffset + offset.column,\n sl,\n sc,\n );\n }\n}\n\nfunction addSection(\n input: SectionXInput['map'],\n mapUrl: string | null | undefined,\n mappings: SourceMapSegment[][],\n sources: string[],\n sourcesContent: (string | null)[],\n names: string[],\n ignoreList: number[],\n lineOffset: number,\n columnOffset: number,\n stopLine: number,\n stopColumn: number,\n) {\n const parsed = parse(input);\n if ('sections' in parsed) return recurse(...(arguments as unknown as Parameters<typeof recurse>));\n\n const map = new TraceMap(parsed, mapUrl);\n const sourcesOffset = sources.length;\n const namesOffset = names.length;\n const decoded = decodedMappings(map);\n const { resolvedSources, sourcesContent: contents, ignoreList: ignores } = map;\n\n append(sources, resolvedSources);\n append(names, map.names);\n\n if (contents) append(sourcesContent, contents);\n else for (let i = 0; i < resolvedSources.length; i++) sourcesContent.push(null);\n\n if (ignores) for (let i = 0; i < ignores.length; i++) ignoreList.push(ignores[i] + sourcesOffset);\n\n for (let i = 0; i < decoded.length; i++) {\n const lineI = lineOffset + i;\n\n // We can only add so many lines before we step into the range that the next section's map\n // controls. When we get to the last line, then we'll start checking the segments to see if\n // they've crossed into the column range. But it may not have any columns that overstep, so we\n // still need to check that we don't overstep lines, too.\n if (lineI > stopLine) return;\n\n // The out line may already exist in mappings (if we're continuing the line started by a\n // previous section). Or, we may have jumped ahead several lines to start this section.\n const out = getLine(mappings, lineI);\n // On the 0th loop, the section's column offset shifts us forward. On all other lines (since the\n // map can be multiple lines), it doesn't.\n const cOffset = i === 0 ? columnOffset : 0;\n\n const line = decoded[i];\n for (let j = 0; j < line.length; j++) {\n const seg = line[j];\n const column = cOffset + seg[COLUMN];\n\n // If this segment steps into the column range that the next section's map controls, we need\n // to stop early.\n if (lineI === stopLine && column >= stopColumn) return;\n\n if (seg.length === 1) {\n out.push([column]);\n continue;\n }\n\n const sourcesIndex = sourcesOffset + seg[SOURCES_INDEX];\n const sourceLine = seg[SOURCE_LINE];\n const sourceColumn = seg[SOURCE_COLUMN];\n out.push(\n seg.length === 4\n ? [column, sourcesIndex, sourceLine, sourceColumn]\n : [column, sourcesIndex, sourceLine, sourceColumn, namesOffset + seg[NAMES_INDEX]],\n );\n }\n }\n}\n\nfunction append<T>(arr: T[], other: T[]) {\n for (let i = 0; i < other.length; i++) arr.push(other[i]);\n}\n\nfunction getLine<T>(arr: T[][], index: number): T[] {\n for (let i = arr.length; i <= index; i++) arr[i] = [];\n return arr[index];\n}\n", "type Key = string | number | symbol;\n\n/**\n * SetArray acts like a `Set` (allowing only one occurrence of a string `key`), but provides the\n * index of the `key` in the backing array.\n *\n * This is designed to allow synchronizing a second array with the contents of the backing array,\n * like how in a sourcemap `sourcesContent[i]` is the source content associated with `source[i]`,\n * and there are never duplicates.\n */\nexport class SetArray<T extends Key = Key> {\n declare private _indexes: Record<T, number | undefined>;\n declare array: readonly T[];\n\n constructor() {\n this._indexes = { __proto__: null } as any;\n this.array = [];\n }\n}\n\ninterface PublicSet<T extends Key> {\n array: T[];\n _indexes: SetArray<T>['_indexes'];\n}\n\n/**\n * Typescript doesn't allow friend access to private fields, so this just casts the set into a type\n * with public access modifiers.\n */\nfunction cast<T extends Key>(set: SetArray<T>): PublicSet<T> {\n return set as any;\n}\n\n/**\n * Gets the index associated with `key` in the backing array, if it is already present.\n */\nexport function get<T extends Key>(setarr: SetArray<T>, key: T): number | undefined {\n return cast(setarr)._indexes[key];\n}\n\n/**\n * Puts `key` into the backing array, if it is not already present. Returns\n * the index of the `key` in the backing array.\n */\nexport function put<T extends Key>(setarr: SetArray<T>, key: T): number {\n // The key may or may not be present. If it is present, it's a number.\n const index = get(setarr, key);\n if (index !== undefined) return index;\n\n const { array, _indexes: indexes } = cast(setarr);\n\n const length = array.push(key);\n return (indexes[key] = length - 1);\n}\n\n/**\n * Pops the last added item out of the SetArray.\n */\nexport function pop<T extends Key>(setarr: SetArray<T>): void {\n const { array, _indexes: indexes } = cast(setarr);\n if (array.length === 0) return;\n\n const last = array.pop()!;\n indexes[last] = undefined;\n}\n\n/**\n * Removes the key, if it exists in the set.\n */\nexport function remove<T extends Key>(setarr: SetArray<T>, key: T): void {\n const index = get(setarr, key);\n if (index === undefined) return;\n\n const { array, _indexes: indexes } = cast(setarr);\n for (let i = index + 1; i < array.length; i++) {\n const k = array[i];\n array[i - 1] = k;\n indexes[k]!--;\n }\n indexes[key] = undefined;\n array.pop();\n}\n", "import { SetArray, put, remove } from './set-array';\nimport {\n encode,\n // encodeGeneratedRanges,\n // encodeOriginalScopes\n} from '@jridgewell/sourcemap-codec';\nimport { TraceMap, decodedMappings } from '@jridgewell/trace-mapping';\n\nimport {\n COLUMN,\n SOURCES_INDEX,\n SOURCE_LINE,\n SOURCE_COLUMN,\n NAMES_INDEX,\n} from './sourcemap-segment';\n\nimport type { SourceMapInput } from '@jridgewell/trace-mapping';\n// import type { OriginalScope, GeneratedRange } from '@jridgewell/sourcemap-codec';\nimport type { SourceMapSegment } from './sourcemap-segment';\nimport type {\n DecodedSourceMap,\n EncodedSourceMap,\n Pos,\n Mapping,\n // BindingExpressionRange,\n // OriginalPos,\n // OriginalScopeInfo,\n // GeneratedRangeInfo,\n} from './types';\n\nexport type { DecodedSourceMap, EncodedSourceMap, Mapping };\n\nexport type Options = {\n file?: string | null;\n sourceRoot?: string | null;\n};\n\nconst NO_NAME = -1;\n\n/**\n * Provides the state to generate a sourcemap.\n */\nexport class GenMapping {\n declare private _names: SetArray<string>;\n declare private _sources: SetArray<string>;\n declare private _sourcesContent: (string | null)[];\n declare private _mappings: SourceMapSegment[][];\n // private declare _originalScopes: OriginalScope[][];\n // private declare _generatedRanges: GeneratedRange[];\n declare private _ignoreList: SetArray<number>;\n declare file: string | null | undefined;\n declare sourceRoot: string | null | undefined;\n\n constructor({ file, sourceRoot }: Options = {}) {\n this._names = new SetArray();\n this._sources = new SetArray();\n this._sourcesContent = [];\n this._mappings = [];\n // this._originalScopes = [];\n // this._generatedRanges = [];\n this.file = file;\n this.sourceRoot = sourceRoot;\n this._ignoreList = new SetArray();\n }\n}\n\ninterface PublicMap {\n _names: GenMapping['_names'];\n _sources: GenMapping['_sources'];\n _sourcesContent: GenMapping['_sourcesContent'];\n _mappings: GenMapping['_mappings'];\n // _originalScopes: GenMapping['_originalScopes'];\n // _generatedRanges: GenMapping['_generatedRanges'];\n _ignoreList: GenMapping['_ignoreList'];\n}\n\n/**\n * Typescript doesn't allow friend access to private fields, so this just casts the map into a type\n * with public access modifiers.\n */\nfunction cast(map: unknown): PublicMap {\n return map as any;\n}\n\n/**\n * A low-level API to associate a generated position with an original source position. Line and\n * column here are 0-based, unlike `addMapping`.\n */\nexport function addSegment(\n map: GenMapping,\n genLine: number,\n genColumn: number,\n source?: null,\n sourceLine?: null,\n sourceColumn?: null,\n name?: null,\n content?: null,\n): void;\nexport function addSegment(\n map: GenMapping,\n genLine: number,\n genColumn: number,\n source: string,\n sourceLine: number,\n sourceColumn: number,\n name?: null,\n content?: string | null,\n): void;\nexport function addSegment(\n map: GenMapping,\n genLine: number,\n genColumn: number,\n source: string,\n sourceLine: number,\n sourceColumn: number,\n name: string,\n content?: string | null,\n): void;\nexport function addSegment(\n map: GenMapping,\n genLine: number,\n genColumn: number,\n source?: string | null,\n sourceLine?: number | null,\n sourceColumn?: number | null,\n name?: string | null,\n content?: string | null,\n): void {\n return addSegmentInternal(\n false,\n map,\n genLine,\n genColumn,\n source,\n sourceLine,\n sourceColumn,\n name,\n content,\n );\n}\n\n/**\n * A high-level API to associate a generated position with an original source position. Line is\n * 1-based, but column is 0-based, due to legacy behavior in `source-map` library.\n */\nexport function addMapping(\n map: GenMapping,\n mapping: {\n generated: Pos;\n source?: null;\n original?: null;\n name?: null;\n content?: null;\n },\n): void;\nexport function addMapping(\n map: GenMapping,\n mapping: {\n generated: Pos;\n source: string;\n original: Pos;\n name?: null;\n content?: string | null;\n },\n): void;\nexport function addMapping(\n map: GenMapping,\n mapping: {\n generated: Pos;\n source: string;\n original: Pos;\n name: string;\n content?: string | null;\n },\n): void;\nexport function addMapping(\n map: GenMapping,\n mapping: {\n generated: Pos;\n source?: string | null;\n original?: Pos | null;\n name?: string | null;\n content?: string | null;\n },\n): void {\n return addMappingInternal(false, map, mapping as Parameters<typeof addMappingInternal>[2]);\n}\n\n/**\n * Same as `addSegment`, but will only add the segment if it generates useful information in the\n * resulting map. This only works correctly if segments are added **in order**, meaning you should\n * not add a segment with a lower generated line/column than one that came before.\n */\nexport const maybeAddSegment: typeof addSegment = (\n map,\n genLine,\n genColumn,\n source,\n sourceLine,\n sourceColumn,\n name,\n content,\n) => {\n return addSegmentInternal(\n true,\n map,\n genLine,\n genColumn,\n source,\n sourceLine,\n sourceColumn,\n name,\n content,\n );\n};\n\n/**\n * Same as `addMapping`, but will only add the mapping if it generates useful information in the\n * resulting map. This only works correctly if mappings are added **in order**, meaning you should\n * not add a mapping with a lower generated line/column than one that came before.\n */\nexport const maybeAddMapping: typeof addMapping = (map, mapping) => {\n return addMappingInternal(true, map, mapping as Parameters<typeof addMappingInternal>[2]);\n};\n\n/**\n * Adds/removes the content of the source file to the source map.\n */\nexport function setSourceContent(map: GenMapping, source: string, content: string | null): void {\n const {\n _sources: sources,\n _sourcesContent: sourcesContent,\n // _originalScopes: originalScopes,\n } = cast(map);\n const index = put(sources, source);\n sourcesContent[index] = content;\n // if (index === originalScopes.length) originalScopes[index] = [];\n}\n\nexport function setIgnore(map: GenMapping, source: string, ignore = true) {\n const {\n _sources: sources,\n _sourcesContent: sourcesContent,\n _ignoreList: ignoreList,\n // _originalScopes: originalScopes,\n } = cast(map);\n const index = put(sources, source);\n if (index === sourcesContent.length) sourcesContent[index] = null;\n // if (index === originalScopes.length) originalScopes[index] = [];\n if (ignore) put(ignoreList, index);\n else remove(ignoreList, index);\n}\n\n/**\n * Returns a sourcemap object (with decoded mappings) suitable for passing to a library that expects\n * a sourcemap, or to JSON.stringify.\n */\nexport function toDecodedMap(map: GenMapping): DecodedSourceMap {\n const {\n _mappings: mappings,\n _sources: sources,\n _sourcesContent: sourcesContent,\n _names: names,\n _ignoreList: ignoreList,\n // _originalScopes: originalScopes,\n // _generatedRanges: generatedRanges,\n } = cast(map);\n removeEmptyFinalLines(mappings);\n\n return {\n version: 3,\n file: map.file || undefined,\n names: names.array,\n sourceRoot: map.sourceRoot || undefined,\n sources: sources.array,\n sourcesContent,\n mappings,\n // originalScopes,\n // generatedRanges,\n ignoreList: ignoreList.array,\n };\n}\n\n/**\n * Returns a sourcemap object (with encoded mappings) suitable for passing to a library that expects\n * a sourcemap, or to JSON.stringify.\n */\nexport function toEncodedMap(map: GenMapping): EncodedSourceMap {\n const decoded = toDecodedMap(map);\n return Object.assign({}, decoded, {\n // originalScopes: decoded.originalScopes.map((os) => encodeOriginalScopes(os)),\n // generatedRanges: encodeGeneratedRanges(decoded.generatedRanges as GeneratedRange[]),\n mappings: encode(decoded.mappings as SourceMapSegment[][]),\n });\n}\n\n/**\n * Constructs a new GenMapping, using the already present mappings of the input.\n */\nexport function fromMap(input: SourceMapInput): GenMapping {\n const map = new TraceMap(input);\n const gen = new GenMapping({ file: map.file, sourceRoot: map.sourceRoot });\n\n putAll(cast(gen)._names, map.names);\n putAll(cast(gen)._sources, map.sources as string[]);\n cast(gen)._sourcesContent = map.sourcesContent || map.sources.map(() => null);\n cast(gen)._mappings = decodedMappings(map) as GenMapping['_mappings'];\n // TODO: implement originalScopes/generatedRanges\n if (map.ignoreList) putAll(cast(gen)._ignoreList, map.ignoreList);\n\n return gen;\n}\n\n/**\n * Returns an array of high-level mapping objects for every recorded segment, which could then be\n * passed to the `source-map` library.\n */\nexport function allMappings(map: GenMapping): Mapping[] {\n const out: Mapping[] = [];\n const { _mappings: mappings, _sources: sources, _names: names } = cast(map);\n\n for (let i = 0; i < mappings.length; i++) {\n const line = mappings[i];\n for (let j = 0; j < line.length; j++) {\n const seg = line[j];\n\n const generated = { line: i + 1, column: seg[COLUMN] };\n let source: string | undefined = undefined;\n let original: Pos | undefined = undefined;\n let name: string | undefined = undefined;\n\n if (seg.length !== 1) {\n source = sources.array[seg[SOURCES_INDEX]];\n original = { line: seg[SOURCE_LINE] + 1, column: seg[SOURCE_COLUMN] };\n\n if (seg.length === 5) name = names.array[seg[NAMES_INDEX]];\n }\n\n out.push({ generated, source, original, name } as Mapping);\n }\n }\n\n return out;\n}\n\n// This split declaration is only so that terser can elminiate the static initialization block.\nfunction addSegmentInternal<S extends string | null | undefined>(\n skipable: boolean,\n map: GenMapping,\n genLine: number,\n genColumn: number,\n source: S,\n sourceLine: S extends string ? number : null | undefined,\n sourceColumn: S extends string ? number : null | undefined,\n name: S extends string ? string | null | undefined : null | undefined,\n content: S extends string ? string | null | undefined : null | undefined,\n): void {\n const {\n _mappings: mappings,\n _sources: sources,\n _sourcesContent: sourcesContent,\n _names: names,\n // _originalScopes: originalScopes,\n } = cast(map);\n const line = getIndex(mappings, genLine);\n const index = getColumnIndex(line, genColumn);\n\n if (!source) {\n if (skipable && skipSourceless(line, index)) return;\n return insert(line, index, [genColumn]);\n }\n\n // Sigh, TypeScript can't figure out sourceLine and sourceColumn aren't nullish if source\n // isn't nullish.\n assert<number>(sourceLine);\n assert<number>(sourceColumn);\n\n const sourcesIndex = put(sources, source);\n const namesIndex = name ? put(names, name) : NO_NAME;\n if (sourcesIndex === sourcesContent.length) sourcesContent[sourcesIndex] = content ?? null;\n // if (sourcesIndex === originalScopes.length) originalScopes[sourcesIndex] = [];\n\n if (skipable && skipSource(line, index, sourcesIndex, sourceLine, sourceColumn, namesIndex)) {\n return;\n }\n\n return insert(\n line,\n index,\n name\n ? [genColumn, sourcesIndex, sourceLine, sourceColumn, namesIndex]\n : [genColumn, sourcesIndex, sourceLine, sourceColumn],\n );\n}\n\nfunction assert<T>(_val: unknown): asserts _val is T {\n // noop.\n}\n\nfunction getIndex<T>(arr: T[][], index: number): T[] {\n for (let i = arr.length; i <= index; i++) {\n arr[i] = [];\n }\n return arr[index];\n}\n\nfunction getColumnIndex(line: SourceMapSegment[], genColumn: number): number {\n let index = line.length;\n for (let i = index - 1; i >= 0; index = i--) {\n const current = line[i];\n if (genColumn >= current[COLUMN]) break;\n }\n return index;\n}\n\nfunction insert<T>(array: T[], index: number, value: T) {\n for (let i = array.length; i > index; i--) {\n array[i] = array[i - 1];\n }\n array[index] = value;\n}\n\nfunction removeEmptyFinalLines(mappings: SourceMapSegment[][]) {\n const { length } = mappings;\n let len = length;\n for (let i = len - 1; i >= 0; len = i, i--) {\n if (mappings[i].length > 0) break;\n }\n if (len < length) mappings.length = len;\n}\n\nfunction putAll<T extends string | number>(setarr: SetArray<T>, array: T[]) {\n for (let i = 0; i < array.length; i++) put(setarr, array[i]);\n}\n\nfunction skipSourceless(line: SourceMapSegment[], index: number): boolean {\n // The start of a line is already sourceless, so adding a sourceless segment to the beginning\n // doesn't generate any useful information.\n if (index === 0) return true;\n\n const prev = line[index - 1];\n // If the previous segment is also sourceless, then adding another sourceless segment doesn't\n // genrate any new information. Else, this segment will end the source/named segment and point to\n // a sourceless position, which is useful.\n return prev.length === 1;\n}\n\nfunction skipSource(\n line: SourceMapSegment[],\n index: number,\n sourcesIndex: number,\n sourceLine: number,\n sourceColumn: number,\n namesIndex: number,\n): boolean {\n // A source/named segment at the start of a line gives position at that genColumn\n if (index === 0) return false;\n\n const prev = line[index - 1];\n\n // If the previous segment is sourceless, then we're transitioning to a source.\n if (prev.length === 1) return false;\n\n // If the previous segment maps to the exact same source position, then this segment doesn't\n // provide any new position information.\n return (\n sourcesIndex === prev[SOURCES_INDEX] &&\n sourceLine === prev[SOURCE_LINE] &&\n sourceColumn === prev[SOURCE_COLUMN] &&\n namesIndex === (prev.length === 5 ? prev[NAMES_INDEX] : NO_NAME)\n );\n}\n\nfunction addMappingInternal<S extends string | null | undefined>(\n skipable: boolean,\n map: GenMapping,\n mapping: {\n generated: Pos;\n source: S;\n original: S extends string ? Pos : null | undefined;\n name: S extends string ? string | null | undefined : null | undefined;\n content: S extends string ? string | null | undefined : null | undefined;\n },\n) {\n const { generated, source, original, name, content } = mapping;\n if (!source) {\n return addSegmentInternal(\n skipable,\n map,\n generated.line - 1,\n generated.column,\n null,\n null,\n null,\n null,\n null,\n );\n }\n assert<Pos>(original);\n return addSegmentInternal(\n skipable,\n map,\n generated.line - 1,\n generated.column,\n source as string,\n original.line - 1,\n original.column,\n name,\n content,\n );\n}\n\n/*\nexport function addOriginalScope(\n map: GenMapping,\n data: {\n start: Pos;\n end: Pos;\n source: string;\n kind: string;\n name?: string;\n variables?: string[];\n },\n): OriginalScopeInfo {\n const { start, end, source, kind, name, variables } = data;\n const {\n _sources: sources,\n _sourcesContent: sourcesContent,\n _originalScopes: originalScopes,\n _names: names,\n } = cast(map);\n const index = put(sources, source);\n if (index === sourcesContent.length) sourcesContent[index] = null;\n if (index === originalScopes.length) originalScopes[index] = [];\n\n const kindIndex = put(names, kind);\n const scope: OriginalScope = name\n ? [start.line - 1, start.column, end.line - 1, end.column, kindIndex, put(names, name)]\n : [start.line - 1, start.column, end.line - 1, end.column, kindIndex];\n if (variables) {\n scope.vars = variables.map((v) => put(names, v));\n }\n const len = originalScopes[index].push(scope);\n return [index, len - 1, variables];\n}\n*/\n\n// Generated Ranges\n/*\nexport function addGeneratedRange(\n map: GenMapping,\n data: {\n start: Pos;\n isScope: boolean;\n originalScope?: OriginalScopeInfo;\n callsite?: OriginalPos;\n },\n): GeneratedRangeInfo {\n const { start, isScope, originalScope, callsite } = data;\n const {\n _originalScopes: originalScopes,\n _sources: sources,\n _sourcesContent: sourcesContent,\n _generatedRanges: generatedRanges,\n } = cast(map);\n\n const range: GeneratedRange = [\n start.line - 1,\n start.column,\n 0,\n 0,\n originalScope ? originalScope[0] : -1,\n originalScope ? originalScope[1] : -1,\n ];\n if (originalScope?.[2]) {\n range.bindings = originalScope[2].map(() => [[-1]]);\n }\n if (callsite) {\n const index = put(sources, callsite.source);\n if (index === sourcesContent.length) sourcesContent[index] = null;\n if (index === originalScopes.length) originalScopes[index] = [];\n range.callsite = [index, callsite.line - 1, callsite.column];\n }\n if (isScope) range.isScope = true;\n generatedRanges.push(range);\n\n return [range, originalScope?.[2]];\n}\n\nexport function setEndPosition(range: GeneratedRangeInfo, pos: Pos) {\n range[0][2] = pos.line - 1;\n range[0][3] = pos.column;\n}\n\nexport function addBinding(\n map: GenMapping,\n range: GeneratedRangeInfo,\n variable: string,\n expression: string | BindingExpressionRange,\n) {\n const { _names: names } = cast(map);\n const bindings = (range[0].bindings ||= []);\n const vars = range[1];\n\n const index = vars!.indexOf(variable);\n const binding = getIndex(bindings, index);\n\n if (typeof expression === 'string') binding[0] = [put(names, expression)];\n else {\n const { start } = expression;\n binding.push([put(names, expression.expression), start.line - 1, start.column]);\n }\n}\n*/\n", "type GeneratedColumn = number;\ntype SourcesIndex = number;\ntype SourceLine = number;\ntype SourceColumn = number;\ntype NamesIndex = number;\n\nexport type SourceMapSegment =\n | [GeneratedColumn]\n | [GeneratedColumn, SourcesIndex, SourceLine, SourceColumn]\n | [GeneratedColumn, SourcesIndex, SourceLine, SourceColumn, NamesIndex];\n\nexport const COLUMN = 0;\nexport const SOURCES_INDEX = 1;\nexport const SOURCE_LINE = 2;\nexport const SOURCE_COLUMN = 3;\nexport const NAMES_INDEX = 4;\n", "import {GenMapping, maybeAddSegment, toEncodedMap} from \"@jridgewell/gen-mapping\";\n\n\n\nimport {charCodes} from \"./parser/util/charcodes\";\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Generate a source map indicating that each line maps directly to the original line,\n * with the tokens in their new positions.\n */\nexport default function computeSourceMap(\n {code: generatedCode, mappings: rawMappings},\n filePath,\n options,\n source,\n tokens,\n) {\n const sourceColumns = computeSourceColumns(source, tokens);\n const map = new GenMapping({file: options.compiledFilename});\n let tokenIndex = 0;\n // currentMapping is the output source index for the current input token being\n // considered.\n let currentMapping = rawMappings[0];\n while (currentMapping === undefined && tokenIndex < rawMappings.length - 1) {\n tokenIndex++;\n currentMapping = rawMappings[tokenIndex];\n }\n let line = 0;\n let lineStart = 0;\n if (currentMapping !== lineStart) {\n maybeAddSegment(map, line, 0, filePath, line, 0);\n }\n for (let i = 0; i < generatedCode.length; i++) {\n if (i === currentMapping) {\n const genColumn = currentMapping - lineStart;\n const sourceColumn = sourceColumns[tokenIndex];\n maybeAddSegment(map, line, genColumn, filePath, line, sourceColumn);\n while (\n (currentMapping === i || currentMapping === undefined) &&\n tokenIndex < rawMappings.length - 1\n ) {\n tokenIndex++;\n currentMapping = rawMappings[tokenIndex];\n }\n }\n if (generatedCode.charCodeAt(i) === charCodes.lineFeed) {\n line++;\n lineStart = i + 1;\n if (currentMapping !== lineStart) {\n maybeAddSegment(map, line, 0, filePath, line, 0);\n }\n }\n }\n const {sourceRoot, sourcesContent, ...sourceMap} = toEncodedMap(map);\n return sourceMap ;\n}\n\n/**\n * Create an array mapping each token index to the 0-based column of the start\n * position of the token.\n */\nfunction computeSourceColumns(code, tokens) {\n const sourceColumns = new Array(tokens.length);\n let tokenIndex = 0;\n let currentMapping = tokens[tokenIndex].start;\n let lineStart = 0;\n for (let i = 0; i < code.length; i++) {\n if (i === currentMapping) {\n sourceColumns[tokenIndex] = currentMapping - lineStart;\n tokenIndex++;\n currentMapping = tokens[tokenIndex].start;\n }\n if (code.charCodeAt(i) === charCodes.lineFeed) {\n lineStart = i + 1;\n }\n }\n return sourceColumns;\n}\n", "\n\nconst HELPERS = {\n require: `\n import {createRequire as CREATE_REQUIRE_NAME} from \"module\";\n const require = CREATE_REQUIRE_NAME(import.meta.url);\n `,\n interopRequireWildcard: `\n function interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n } else {\n var newObj = {};\n if (obj != null) {\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n newObj[key] = obj[key];\n }\n }\n }\n newObj.default = obj;\n return newObj;\n }\n }\n `,\n interopRequireDefault: `\n function interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n }\n `,\n createNamedExportFrom: `\n function createNamedExportFrom(obj, localName, importedName) {\n Object.defineProperty(exports, localName, {enumerable: true, configurable: true, get: () => obj[importedName]});\n }\n `,\n // Note that TypeScript and Babel do this differently; TypeScript does a simple existence\n // check in the exports object and does a plain assignment, whereas Babel uses\n // defineProperty and builds an object of explicitly-exported names so that star exports can\n // always take lower precedence. For now, we do the easier TypeScript thing.\n createStarExport: `\n function createStarExport(obj) {\n Object.keys(obj)\n .filter((key) => key !== \"default\" && key !== \"__esModule\")\n .forEach((key) => {\n if (exports.hasOwnProperty(key)) {\n return;\n }\n Object.defineProperty(exports, key, {enumerable: true, configurable: true, get: () => obj[key]});\n });\n }\n `,\n nullishCoalesce: `\n function nullishCoalesce(lhs, rhsFn) {\n if (lhs != null) {\n return lhs;\n } else {\n return rhsFn();\n }\n }\n `,\n asyncNullishCoalesce: `\n async function asyncNullishCoalesce(lhs, rhsFn) {\n if (lhs != null) {\n return lhs;\n } else {\n return await rhsFn();\n }\n }\n `,\n optionalChain: `\n function optionalChain(ops) {\n let lastAccessLHS = undefined;\n let value = ops[0];\n let i = 1;\n while (i < ops.length) {\n const op = ops[i];\n const fn = ops[i + 1];\n i += 2;\n if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) {\n return undefined;\n }\n if (op === 'access' || op === 'optionalAccess') {\n lastAccessLHS = value;\n value = fn(value);\n } else if (op === 'call' || op === 'optionalCall') {\n value = fn((...args) => value.call(lastAccessLHS, ...args));\n lastAccessLHS = undefined;\n }\n }\n return value;\n }\n `,\n asyncOptionalChain: `\n async function asyncOptionalChain(ops) {\n let lastAccessLHS = undefined;\n let value = ops[0];\n let i = 1;\n while (i < ops.length) {\n const op = ops[i];\n const fn = ops[i + 1];\n i += 2;\n if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) {\n return undefined;\n }\n if (op === 'access' || op === 'optionalAccess') {\n lastAccessLHS = value;\n value = await fn(value);\n } else if (op === 'call' || op === 'optionalCall') {\n value = await fn((...args) => value.call(lastAccessLHS, ...args));\n lastAccessLHS = undefined;\n }\n }\n return value;\n }\n `,\n optionalChainDelete: `\n function optionalChainDelete(ops) {\n const result = OPTIONAL_CHAIN_NAME(ops);\n return result == null ? true : result;\n }\n `,\n asyncOptionalChainDelete: `\n async function asyncOptionalChainDelete(ops) {\n const result = await ASYNC_OPTIONAL_CHAIN_NAME(ops);\n return result == null ? true : result;\n }\n `,\n};\n\nexport class HelperManager {\n __init() {this.helperNames = {}}\n __init2() {this.createRequireName = null}\n constructor( nameManager) {;this.nameManager = nameManager;HelperManager.prototype.__init.call(this);HelperManager.prototype.__init2.call(this);}\n\n getHelperName(baseName) {\n let helperName = this.helperNames[baseName];\n if (helperName) {\n return helperName;\n }\n helperName = this.nameManager.claimFreeName(`_${baseName}`);\n this.helperNames[baseName] = helperName;\n return helperName;\n }\n\n emitHelpers() {\n let resultCode = \"\";\n if (this.helperNames.optionalChainDelete) {\n this.getHelperName(\"optionalChain\");\n }\n if (this.helperNames.asyncOptionalChainDelete) {\n this.getHelperName(\"asyncOptionalChain\");\n }\n for (const [baseName, helperCodeTemplate] of Object.entries(HELPERS)) {\n const helperName = this.helperNames[baseName];\n let helperCode = helperCodeTemplate;\n if (baseName === \"optionalChainDelete\") {\n helperCode = helperCode.replace(\"OPTIONAL_CHAIN_NAME\", this.helperNames.optionalChain);\n } else if (baseName === \"asyncOptionalChainDelete\") {\n helperCode = helperCode.replace(\n \"ASYNC_OPTIONAL_CHAIN_NAME\",\n this.helperNames.asyncOptionalChain,\n );\n } else if (baseName === \"require\") {\n if (this.createRequireName === null) {\n this.createRequireName = this.nameManager.claimFreeName(\"_createRequire\");\n }\n helperCode = helperCode.replace(/CREATE_REQUIRE_NAME/g, this.createRequireName);\n }\n if (helperName) {\n resultCode += \" \";\n resultCode += helperCode.replace(baseName, helperName).replace(/\\s+/g, \" \").trim();\n }\n }\n return resultCode;\n }\n}\n", "import {\n isBlockScopedDeclaration,\n isFunctionScopedDeclaration,\n isNonTopLevelDeclaration,\n} from \"./parser/tokenizer\";\n\nimport {TokenType as tt} from \"./parser/tokenizer/types\";\n\n\n/**\n * Traverse the given tokens and modify them if necessary to indicate that some names shadow global\n * variables.\n */\nexport default function identifyShadowedGlobals(\n tokens,\n scopes,\n globalNames,\n) {\n if (!hasShadowedGlobals(tokens, globalNames)) {\n return;\n }\n markShadowedGlobals(tokens, scopes, globalNames);\n}\n\n/**\n * We can do a fast up-front check to see if there are any declarations to global names. If not,\n * then there's no point in computing scope assignments.\n */\n// Exported for testing.\nexport function hasShadowedGlobals(tokens, globalNames) {\n for (const token of tokens.tokens) {\n if (\n token.type === tt.name &&\n !token.isType &&\n isNonTopLevelDeclaration(token) &&\n globalNames.has(tokens.identifierNameForToken(token))\n ) {\n return true;\n }\n }\n return false;\n}\n\nfunction markShadowedGlobals(\n tokens,\n scopes,\n globalNames,\n) {\n const scopeStack = [];\n let scopeIndex = scopes.length - 1;\n // Scopes were generated at completion time, so they're sorted by end index, so we can maintain a\n // good stack by going backwards through them.\n for (let i = tokens.tokens.length - 1; ; i--) {\n while (scopeStack.length > 0 && scopeStack[scopeStack.length - 1].startTokenIndex === i + 1) {\n scopeStack.pop();\n }\n while (scopeIndex >= 0 && scopes[scopeIndex].endTokenIndex === i + 1) {\n scopeStack.push(scopes[scopeIndex]);\n scopeIndex--;\n }\n // Process scopes after the last iteration so we can make sure we pop all of them.\n if (i < 0) {\n break;\n }\n\n const token = tokens.tokens[i];\n const name = tokens.identifierNameForToken(token);\n if (scopeStack.length > 1 && !token.isType && token.type === tt.name && globalNames.has(name)) {\n if (isBlockScopedDeclaration(token)) {\n markShadowedForScope(scopeStack[scopeStack.length - 1], tokens, name);\n } else if (isFunctionScopedDeclaration(token)) {\n let stackIndex = scopeStack.length - 1;\n while (stackIndex > 0 && !scopeStack[stackIndex].isFunctionScope) {\n stackIndex--;\n }\n if (stackIndex < 0) {\n throw new Error(\"Did not find parent function scope.\");\n }\n markShadowedForScope(scopeStack[stackIndex], tokens, name);\n }\n }\n }\n if (scopeStack.length > 0) {\n throw new Error(\"Expected empty scope stack after processing file.\");\n }\n}\n\nfunction markShadowedForScope(scope, tokens, name) {\n for (let i = scope.startTokenIndex; i < scope.endTokenIndex; i++) {\n const token = tokens.tokens[i];\n if (\n (token.type === tt.name || token.type === tt.jsxName) &&\n tokens.identifierNameForToken(token) === name\n ) {\n token.shadowsGlobal = true;\n }\n }\n}\n", "\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\n/**\n * Get all identifier names in the code, in order, including duplicates.\n */\nexport default function getIdentifierNames(code, tokens) {\n const names = [];\n for (const token of tokens) {\n if (token.type === tt.name) {\n names.push(code.slice(token.start, token.end));\n }\n }\n return names;\n}\n", "\nimport getIdentifierNames from \"./util/getIdentifierNames\";\n\nexport default class NameManager {\n __init() {this.usedNames = new Set()}\n\n constructor(code, tokens) {;NameManager.prototype.__init.call(this);\n this.usedNames = new Set(getIdentifierNames(code, tokens));\n }\n\n claimFreeName(name) {\n const newName = this.findFreeName(name);\n this.usedNames.add(newName);\n return newName;\n }\n\n findFreeName(name) {\n if (!this.usedNames.has(name)) {\n return name;\n }\n let suffixNum = 2;\n while (this.usedNames.has(name + String(suffixNum))) {\n suffixNum++;\n }\n return name + String(suffixNum);\n }\n}\n", "import {createCheckers} from \"ts-interface-checker\";\n\nimport OptionsGenTypes from \"./Options-gen-types\";\n\nconst {Options: OptionsChecker} = createCheckers(OptionsGenTypes);\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nexport function validateOptions(options) {\n OptionsChecker.strictCheck(options);\n}\n", "/**\n * This module was automatically generated by `ts-interface-builder`\n */\nimport * as t from \"ts-interface-checker\";\n// tslint:disable:object-literal-key-quotes\n\nexport const Transform = t.union(\n t.lit(\"jsx\"),\n t.lit(\"typescript\"),\n t.lit(\"flow\"),\n t.lit(\"imports\"),\n t.lit(\"react-hot-loader\"),\n t.lit(\"jest\"),\n);\n\nexport const SourceMapOptions = t.iface([], {\n compiledFilename: \"string\",\n});\n\nexport const Options = t.iface([], {\n transforms: t.array(\"Transform\"),\n disableESTransforms: t.opt(\"boolean\"),\n jsxRuntime: t.opt(t.union(t.lit(\"classic\"), t.lit(\"automatic\"), t.lit(\"preserve\"))),\n production: t.opt(\"boolean\"),\n jsxImportSource: t.opt(\"string\"),\n jsxPragma: t.opt(\"string\"),\n jsxFragmentPragma: t.opt(\"string\"),\n keepUnusedImports: t.opt(\"boolean\"),\n preserveDynamicImport: t.opt(\"boolean\"),\n injectCreateRequireForImportRequire: t.opt(\"boolean\"),\n enableLegacyTypeScriptModuleInterop: t.opt(\"boolean\"),\n enableLegacyBabel5ModuleInterop: t.opt(\"boolean\"),\n sourceMapOptions: t.opt(\"SourceMapOptions\"),\n filePath: t.opt(\"string\"),\n});\n\nconst exportedTypeSuite = {\n Transform,\n SourceMapOptions,\n Options,\n};\nexport default exportedTypeSuite;\n", "import {flowParseAssignableListItemTypes} from \"../plugins/flow\";\nimport {tsParseAssignableListItemTypes, tsParseModifiers} from \"../plugins/typescript\";\nimport {\n eat,\n IdentifierRole,\n match,\n next,\n popTypeContext,\n pushTypeContext,\n} from \"../tokenizer/index\";\nimport {ContextualKeyword} from \"../tokenizer/keywords\";\nimport {TokenType, TokenType as tt} from \"../tokenizer/types\";\nimport {isFlowEnabled, isTypeScriptEnabled, state} from \"./base\";\nimport {parseIdentifier, parseMaybeAssign, parseObj} from \"./expression\";\nimport {expect, unexpected} from \"./util\";\n\nexport function parseSpread() {\n next();\n parseMaybeAssign(false);\n}\n\nexport function parseRest(isBlockScope) {\n next();\n parseBindingAtom(isBlockScope);\n}\n\nexport function parseBindingIdentifier(isBlockScope) {\n parseIdentifier();\n markPriorBindingIdentifier(isBlockScope);\n}\n\nexport function parseImportedIdentifier() {\n parseIdentifier();\n state.tokens[state.tokens.length - 1].identifierRole = IdentifierRole.ImportDeclaration;\n}\n\nexport function markPriorBindingIdentifier(isBlockScope) {\n let identifierRole;\n if (state.scopeDepth === 0) {\n identifierRole = IdentifierRole.TopLevelDeclaration;\n } else if (isBlockScope) {\n identifierRole = IdentifierRole.BlockScopedDeclaration;\n } else {\n identifierRole = IdentifierRole.FunctionScopedDeclaration;\n }\n state.tokens[state.tokens.length - 1].identifierRole = identifierRole;\n}\n\n// Parses lvalue (assignable) atom.\nexport function parseBindingAtom(isBlockScope) {\n switch (state.type) {\n case tt._this: {\n // In TypeScript, \"this\" may be the name of a parameter, so allow it.\n const oldIsType = pushTypeContext(0);\n next();\n popTypeContext(oldIsType);\n return;\n }\n\n case tt._yield:\n case tt.name: {\n state.type = tt.name;\n parseBindingIdentifier(isBlockScope);\n return;\n }\n\n case tt.bracketL: {\n next();\n parseBindingList(tt.bracketR, isBlockScope, true /* allowEmpty */);\n return;\n }\n\n case tt.braceL:\n parseObj(true, isBlockScope);\n return;\n\n default:\n unexpected();\n }\n}\n\nexport function parseBindingList(\n close,\n isBlockScope,\n allowEmpty = false,\n allowModifiers = false,\n contextId = 0,\n) {\n let first = true;\n\n let hasRemovedComma = false;\n const firstItemTokenIndex = state.tokens.length;\n\n while (!eat(close) && !state.error) {\n if (first) {\n first = false;\n } else {\n expect(tt.comma);\n state.tokens[state.tokens.length - 1].contextId = contextId;\n // After a \"this\" type in TypeScript, we need to set the following comma (if any) to also be\n // a type token so that it will be removed.\n if (!hasRemovedComma && state.tokens[firstItemTokenIndex].isType) {\n state.tokens[state.tokens.length - 1].isType = true;\n hasRemovedComma = true;\n }\n }\n if (allowEmpty && match(tt.comma)) {\n // Empty item; nothing further to parse for this item.\n } else if (eat(close)) {\n break;\n } else if (match(tt.ellipsis)) {\n parseRest(isBlockScope);\n parseAssignableListItemTypes();\n // Support rest element trailing commas allowed by TypeScript <2.9.\n eat(TokenType.comma);\n expect(close);\n break;\n } else {\n parseAssignableListItem(allowModifiers, isBlockScope);\n }\n }\n}\n\nfunction parseAssignableListItem(allowModifiers, isBlockScope) {\n if (allowModifiers) {\n tsParseModifiers([\n ContextualKeyword._public,\n ContextualKeyword._protected,\n ContextualKeyword._private,\n ContextualKeyword._readonly,\n ContextualKeyword._override,\n ]);\n }\n\n parseMaybeDefault(isBlockScope);\n parseAssignableListItemTypes();\n parseMaybeDefault(isBlockScope, true /* leftAlreadyParsed */);\n}\n\nfunction parseAssignableListItemTypes() {\n if (isFlowEnabled) {\n flowParseAssignableListItemTypes();\n } else if (isTypeScriptEnabled) {\n tsParseAssignableListItemTypes();\n }\n}\n\n// Parses assignment pattern around given atom if possible.\nexport function parseMaybeDefault(isBlockScope, leftAlreadyParsed = false) {\n if (!leftAlreadyParsed) {\n parseBindingAtom(isBlockScope);\n }\n if (!eat(tt.eq)) {\n return;\n }\n const eqIndex = state.tokens.length - 1;\n parseMaybeAssign();\n state.tokens[eqIndex].rhsEndIndex = state.tokens.length;\n}\n", "import {\n eat,\n finishToken,\n IdentifierRole,\n lookaheadType,\n lookaheadTypeAndKeyword,\n match,\n next,\n nextTemplateToken,\n popTypeContext,\n pushTypeContext,\n rescan_gt,\n} from \"../tokenizer/index\";\nimport {ContextualKeyword} from \"../tokenizer/keywords\";\nimport {TokenType, TokenType as tt} from \"../tokenizer/types\";\nimport {isJSXEnabled, state} from \"../traverser/base\";\nimport {\n atPossibleAsync,\n baseParseMaybeAssign,\n baseParseSubscript,\n parseCallExpressionArguments,\n parseExprAtom,\n parseExpression,\n parseFunctionBody,\n parseIdentifier,\n parseLiteral,\n parseMaybeAssign,\n parseMaybeUnary,\n parsePropertyName,\n parseTemplate,\n\n} from \"../traverser/expression\";\nimport {parseBindingIdentifier, parseBindingList, parseImportedIdentifier} from \"../traverser/lval\";\nimport {\n baseParseMaybeDecoratorArguments,\n parseBlockBody,\n parseClass,\n parseFunction,\n parseFunctionParams,\n parseStatement,\n parseVarStatement,\n} from \"../traverser/statement\";\nimport {\n canInsertSemicolon,\n eatContextual,\n expect,\n expectContextual,\n hasPrecedingLineBreak,\n isContextual,\n isLineTerminator,\n isLookaheadContextual,\n semicolon,\n unexpected,\n} from \"../traverser/util\";\nimport {nextJSXTagToken} from \"./jsx\";\n\nfunction tsIsIdentifier() {\n // TODO: actually a bit more complex in TypeScript, but shouldn't matter.\n // See https://github.com/Microsoft/TypeScript/issues/15008\n return match(tt.name);\n}\n\nfunction isLiteralPropertyName() {\n return (\n match(tt.name) ||\n Boolean(state.type & TokenType.IS_KEYWORD) ||\n match(tt.string) ||\n match(tt.num) ||\n match(tt.bigint) ||\n match(tt.decimal)\n );\n}\n\nfunction tsNextTokenCanFollowModifier() {\n // Note: TypeScript's implementation is much more complicated because\n // more things are considered modifiers there.\n // This implementation only handles modifiers not handled by babylon itself. And \"static\".\n // TODO: Would be nice to avoid lookahead. Want a hasLineBreakUpNext() method...\n const snapshot = state.snapshot();\n\n next();\n const canFollowModifier =\n (match(tt.bracketL) ||\n match(tt.braceL) ||\n match(tt.star) ||\n match(tt.ellipsis) ||\n match(tt.hash) ||\n isLiteralPropertyName()) &&\n !hasPrecedingLineBreak();\n\n if (canFollowModifier) {\n return true;\n } else {\n state.restoreFromSnapshot(snapshot);\n return false;\n }\n}\n\nexport function tsParseModifiers(allowedModifiers) {\n while (true) {\n const modifier = tsParseModifier(allowedModifiers);\n if (modifier === null) {\n break;\n }\n }\n}\n\n/** Parses a modifier matching one the given modifier names. */\nexport function tsParseModifier(\n allowedModifiers,\n) {\n if (!match(tt.name)) {\n return null;\n }\n\n const modifier = state.contextualKeyword;\n if (allowedModifiers.indexOf(modifier) !== -1 && tsNextTokenCanFollowModifier()) {\n switch (modifier) {\n case ContextualKeyword._readonly:\n state.tokens[state.tokens.length - 1].type = tt._readonly;\n break;\n case ContextualKeyword._abstract:\n state.tokens[state.tokens.length - 1].type = tt._abstract;\n break;\n case ContextualKeyword._static:\n state.tokens[state.tokens.length - 1].type = tt._static;\n break;\n case ContextualKeyword._public:\n state.tokens[state.tokens.length - 1].type = tt._public;\n break;\n case ContextualKeyword._private:\n state.tokens[state.tokens.length - 1].type = tt._private;\n break;\n case ContextualKeyword._protected:\n state.tokens[state.tokens.length - 1].type = tt._protected;\n break;\n case ContextualKeyword._override:\n state.tokens[state.tokens.length - 1].type = tt._override;\n break;\n case ContextualKeyword._declare:\n state.tokens[state.tokens.length - 1].type = tt._declare;\n break;\n default:\n break;\n }\n return modifier;\n }\n return null;\n}\n\nfunction tsParseEntityName() {\n parseIdentifier();\n while (eat(tt.dot)) {\n parseIdentifier();\n }\n}\n\nfunction tsParseTypeReference() {\n tsParseEntityName();\n if (!hasPrecedingLineBreak() && match(tt.lessThan)) {\n tsParseTypeArguments();\n }\n}\n\nfunction tsParseThisTypePredicate() {\n next();\n tsParseTypeAnnotation();\n}\n\nfunction tsParseThisTypeNode() {\n next();\n}\n\nfunction tsParseTypeQuery() {\n expect(tt._typeof);\n if (match(tt._import)) {\n tsParseImportType();\n } else {\n tsParseEntityName();\n }\n if (!hasPrecedingLineBreak() && match(tt.lessThan)) {\n tsParseTypeArguments();\n }\n}\n\nfunction tsParseImportType() {\n expect(tt._import);\n expect(tt.parenL);\n expect(tt.string);\n expect(tt.parenR);\n if (eat(tt.dot)) {\n tsParseEntityName();\n }\n if (match(tt.lessThan)) {\n tsParseTypeArguments();\n }\n}\n\nfunction tsParseTypeParameter() {\n eat(tt._const);\n const hadIn = eat(tt._in);\n const hadOut = eatContextual(ContextualKeyword._out);\n eat(tt._const);\n if ((hadIn || hadOut) && !match(tt.name)) {\n // The \"in\" or \"out\" keyword must have actually been the type parameter\n // name, so set it as the name.\n state.tokens[state.tokens.length - 1].type = tt.name;\n } else {\n parseIdentifier();\n }\n\n if (eat(tt._extends)) {\n tsParseType();\n }\n if (eat(tt.eq)) {\n tsParseType();\n }\n}\n\nexport function tsTryParseTypeParameters() {\n if (match(tt.lessThan)) {\n tsParseTypeParameters();\n }\n}\n\nfunction tsParseTypeParameters() {\n const oldIsType = pushTypeContext(0);\n if (match(tt.lessThan) || match(tt.typeParameterStart)) {\n next();\n } else {\n unexpected();\n }\n\n while (!eat(tt.greaterThan) && !state.error) {\n tsParseTypeParameter();\n eat(tt.comma);\n }\n popTypeContext(oldIsType);\n}\n\n// Note: In TypeScript implementation we must provide `yieldContext` and `awaitContext`,\n// but here it's always false, because this is only used for types.\nfunction tsFillSignature(returnToken) {\n // Arrow fns *must* have return token (`=>`). Normal functions can omit it.\n const returnTokenRequired = returnToken === tt.arrow;\n tsTryParseTypeParameters();\n expect(tt.parenL);\n // Create a scope even though we're doing type parsing so we don't accidentally\n // treat params as top-level bindings.\n state.scopeDepth++;\n tsParseBindingListForSignature(false /* isBlockScope */);\n state.scopeDepth--;\n if (returnTokenRequired) {\n tsParseTypeOrTypePredicateAnnotation(returnToken);\n } else if (match(returnToken)) {\n tsParseTypeOrTypePredicateAnnotation(returnToken);\n }\n}\n\nfunction tsParseBindingListForSignature(isBlockScope) {\n parseBindingList(tt.parenR, isBlockScope);\n}\n\nfunction tsParseTypeMemberSemicolon() {\n if (!eat(tt.comma)) {\n semicolon();\n }\n}\n\nfunction tsParseSignatureMember() {\n tsFillSignature(tt.colon);\n tsParseTypeMemberSemicolon();\n}\n\nfunction tsIsUnambiguouslyIndexSignature() {\n const snapshot = state.snapshot();\n next(); // Skip '{'\n const isIndexSignature = eat(tt.name) && match(tt.colon);\n state.restoreFromSnapshot(snapshot);\n return isIndexSignature;\n}\n\nfunction tsTryParseIndexSignature() {\n if (!(match(tt.bracketL) && tsIsUnambiguouslyIndexSignature())) {\n return false;\n }\n\n const oldIsType = pushTypeContext(0);\n\n expect(tt.bracketL);\n parseIdentifier();\n tsParseTypeAnnotation();\n expect(tt.bracketR);\n\n tsTryParseTypeAnnotation();\n tsParseTypeMemberSemicolon();\n\n popTypeContext(oldIsType);\n return true;\n}\n\nfunction tsParsePropertyOrMethodSignature(isReadonly) {\n eat(tt.question);\n\n if (!isReadonly && (match(tt.parenL) || match(tt.lessThan))) {\n tsFillSignature(tt.colon);\n tsParseTypeMemberSemicolon();\n } else {\n tsTryParseTypeAnnotation();\n tsParseTypeMemberSemicolon();\n }\n}\n\nfunction tsParseTypeMember() {\n if (match(tt.parenL) || match(tt.lessThan)) {\n // call signature\n tsParseSignatureMember();\n return;\n }\n if (match(tt._new)) {\n next();\n if (match(tt.parenL) || match(tt.lessThan)) {\n // constructor signature\n tsParseSignatureMember();\n } else {\n tsParsePropertyOrMethodSignature(false);\n }\n return;\n }\n const readonly = !!tsParseModifier([ContextualKeyword._readonly]);\n\n const found = tsTryParseIndexSignature();\n if (found) {\n return;\n }\n if (\n (isContextual(ContextualKeyword._get) || isContextual(ContextualKeyword._set)) &&\n tsNextTokenCanFollowModifier()\n ) {\n // This is a getter/setter on a type. The tsNextTokenCanFollowModifier\n // function already called next() for us, so continue parsing the name.\n }\n parsePropertyName(-1 /* Types don't need context IDs. */);\n tsParsePropertyOrMethodSignature(readonly);\n}\n\nfunction tsParseTypeLiteral() {\n tsParseObjectTypeMembers();\n}\n\nfunction tsParseObjectTypeMembers() {\n expect(tt.braceL);\n while (!eat(tt.braceR) && !state.error) {\n tsParseTypeMember();\n }\n}\n\nfunction tsLookaheadIsStartOfMappedType() {\n const snapshot = state.snapshot();\n const isStartOfMappedType = tsIsStartOfMappedType();\n state.restoreFromSnapshot(snapshot);\n return isStartOfMappedType;\n}\n\nfunction tsIsStartOfMappedType() {\n next();\n if (eat(tt.plus) || eat(tt.minus)) {\n return isContextual(ContextualKeyword._readonly);\n }\n if (isContextual(ContextualKeyword._readonly)) {\n next();\n }\n if (!match(tt.bracketL)) {\n return false;\n }\n next();\n if (!tsIsIdentifier()) {\n return false;\n }\n next();\n return match(tt._in);\n}\n\nfunction tsParseMappedTypeParameter() {\n parseIdentifier();\n expect(tt._in);\n tsParseType();\n}\n\nfunction tsParseMappedType() {\n expect(tt.braceL);\n if (match(tt.plus) || match(tt.minus)) {\n next();\n expectContextual(ContextualKeyword._readonly);\n } else {\n eatContextual(ContextualKeyword._readonly);\n }\n expect(tt.bracketL);\n tsParseMappedTypeParameter();\n if (eatContextual(ContextualKeyword._as)) {\n tsParseType();\n }\n expect(tt.bracketR);\n if (match(tt.plus) || match(tt.minus)) {\n next();\n expect(tt.question);\n } else {\n eat(tt.question);\n }\n tsTryParseType();\n semicolon();\n expect(tt.braceR);\n}\n\nfunction tsParseTupleType() {\n expect(tt.bracketL);\n while (!eat(tt.bracketR) && !state.error) {\n // Do not validate presence of either none or only labeled elements\n tsParseTupleElementType();\n eat(tt.comma);\n }\n}\n\nfunction tsParseTupleElementType() {\n // parses `...TsType[]`\n if (eat(tt.ellipsis)) {\n tsParseType();\n } else {\n // parses `TsType?`\n tsParseType();\n eat(tt.question);\n }\n\n // The type we parsed above was actually a label\n if (eat(tt.colon)) {\n // Labeled tuple types must affix the label with `...` or `?`, so no need to handle those here\n tsParseType();\n }\n}\n\nfunction tsParseParenthesizedType() {\n expect(tt.parenL);\n tsParseType();\n expect(tt.parenR);\n}\n\nfunction tsParseTemplateLiteralType() {\n // Finish `, read quasi\n nextTemplateToken();\n // Finish quasi, read ${\n nextTemplateToken();\n while (!match(tt.backQuote) && !state.error) {\n expect(tt.dollarBraceL);\n tsParseType();\n // Finish }, read quasi\n nextTemplateToken();\n // Finish quasi, read either ${ or `\n nextTemplateToken();\n }\n next();\n}\n\nvar FunctionType; (function (FunctionType) {\n const TSFunctionType = 0; FunctionType[FunctionType[\"TSFunctionType\"] = TSFunctionType] = \"TSFunctionType\";\n const TSConstructorType = TSFunctionType + 1; FunctionType[FunctionType[\"TSConstructorType\"] = TSConstructorType] = \"TSConstructorType\";\n const TSAbstractConstructorType = TSConstructorType + 1; FunctionType[FunctionType[\"TSAbstractConstructorType\"] = TSAbstractConstructorType] = \"TSAbstractConstructorType\";\n})(FunctionType || (FunctionType = {}));\n\nfunction tsParseFunctionOrConstructorType(type) {\n if (type === FunctionType.TSAbstractConstructorType) {\n expectContextual(ContextualKeyword._abstract);\n }\n if (type === FunctionType.TSConstructorType || type === FunctionType.TSAbstractConstructorType) {\n expect(tt._new);\n }\n const oldInDisallowConditionalTypesContext = state.inDisallowConditionalTypesContext;\n state.inDisallowConditionalTypesContext = false;\n tsFillSignature(tt.arrow);\n state.inDisallowConditionalTypesContext = oldInDisallowConditionalTypesContext;\n}\n\nfunction tsParseNonArrayType() {\n switch (state.type) {\n case tt.name:\n tsParseTypeReference();\n return;\n case tt._void:\n case tt._null:\n next();\n return;\n case tt.string:\n case tt.num:\n case tt.bigint:\n case tt.decimal:\n case tt._true:\n case tt._false:\n parseLiteral();\n return;\n case tt.minus:\n next();\n parseLiteral();\n return;\n case tt._this: {\n tsParseThisTypeNode();\n if (isContextual(ContextualKeyword._is) && !hasPrecedingLineBreak()) {\n tsParseThisTypePredicate();\n }\n return;\n }\n case tt._typeof:\n tsParseTypeQuery();\n return;\n case tt._import:\n tsParseImportType();\n return;\n case tt.braceL:\n if (tsLookaheadIsStartOfMappedType()) {\n tsParseMappedType();\n } else {\n tsParseTypeLiteral();\n }\n return;\n case tt.bracketL:\n tsParseTupleType();\n return;\n case tt.parenL:\n tsParseParenthesizedType();\n return;\n case tt.backQuote:\n tsParseTemplateLiteralType();\n return;\n default:\n if (state.type & TokenType.IS_KEYWORD) {\n next();\n state.tokens[state.tokens.length - 1].type = tt.name;\n return;\n }\n break;\n }\n\n unexpected();\n}\n\nfunction tsParseArrayTypeOrHigher() {\n tsParseNonArrayType();\n while (!hasPrecedingLineBreak() && eat(tt.bracketL)) {\n if (!eat(tt.bracketR)) {\n // If we hit ] immediately, this is an array type, otherwise it's an indexed access type.\n tsParseType();\n expect(tt.bracketR);\n }\n }\n}\n\nfunction tsParseInferType() {\n expectContextual(ContextualKeyword._infer);\n parseIdentifier();\n if (match(tt._extends)) {\n // Infer type constraints introduce an ambiguity about whether the \"extends\"\n // is a constraint for this infer type or is another conditional type.\n const snapshot = state.snapshot();\n expect(tt._extends);\n const oldInDisallowConditionalTypesContext = state.inDisallowConditionalTypesContext;\n state.inDisallowConditionalTypesContext = true;\n tsParseType();\n state.inDisallowConditionalTypesContext = oldInDisallowConditionalTypesContext;\n if (state.error || (!state.inDisallowConditionalTypesContext && match(tt.question))) {\n state.restoreFromSnapshot(snapshot);\n }\n }\n}\n\nfunction tsParseTypeOperatorOrHigher() {\n if (\n isContextual(ContextualKeyword._keyof) ||\n isContextual(ContextualKeyword._unique) ||\n isContextual(ContextualKeyword._readonly)\n ) {\n next();\n tsParseTypeOperatorOrHigher();\n } else if (isContextual(ContextualKeyword._infer)) {\n tsParseInferType();\n } else {\n const oldInDisallowConditionalTypesContext = state.inDisallowConditionalTypesContext;\n state.inDisallowConditionalTypesContext = false;\n tsParseArrayTypeOrHigher();\n state.inDisallowConditionalTypesContext = oldInDisallowConditionalTypesContext;\n }\n}\n\nfunction tsParseIntersectionTypeOrHigher() {\n eat(tt.bitwiseAND);\n tsParseTypeOperatorOrHigher();\n if (match(tt.bitwiseAND)) {\n while (eat(tt.bitwiseAND)) {\n tsParseTypeOperatorOrHigher();\n }\n }\n}\n\nfunction tsParseUnionTypeOrHigher() {\n eat(tt.bitwiseOR);\n tsParseIntersectionTypeOrHigher();\n if (match(tt.bitwiseOR)) {\n while (eat(tt.bitwiseOR)) {\n tsParseIntersectionTypeOrHigher();\n }\n }\n}\n\nfunction tsIsStartOfFunctionType() {\n if (match(tt.lessThan)) {\n return true;\n }\n return match(tt.parenL) && tsLookaheadIsUnambiguouslyStartOfFunctionType();\n}\n\nfunction tsSkipParameterStart() {\n if (match(tt.name) || match(tt._this)) {\n next();\n return true;\n }\n // If this is a possible array/object destructure, walk to the matching bracket/brace.\n // The next token after will tell us definitively whether this is a function param.\n if (match(tt.braceL) || match(tt.bracketL)) {\n let depth = 1;\n next();\n while (depth > 0 && !state.error) {\n if (match(tt.braceL) || match(tt.bracketL)) {\n depth++;\n } else if (match(tt.braceR) || match(tt.bracketR)) {\n depth--;\n }\n next();\n }\n return true;\n }\n return false;\n}\n\nfunction tsLookaheadIsUnambiguouslyStartOfFunctionType() {\n const snapshot = state.snapshot();\n const isUnambiguouslyStartOfFunctionType = tsIsUnambiguouslyStartOfFunctionType();\n state.restoreFromSnapshot(snapshot);\n return isUnambiguouslyStartOfFunctionType;\n}\n\nfunction tsIsUnambiguouslyStartOfFunctionType() {\n next();\n if (match(tt.parenR) || match(tt.ellipsis)) {\n // ( )\n // ( ...\n return true;\n }\n if (tsSkipParameterStart()) {\n if (match(tt.colon) || match(tt.comma) || match(tt.question) || match(tt.eq)) {\n // ( xxx :\n // ( xxx ,\n // ( xxx ?\n // ( xxx =\n return true;\n }\n if (match(tt.parenR)) {\n next();\n if (match(tt.arrow)) {\n // ( xxx ) =>\n return true;\n }\n }\n }\n return false;\n}\n\nfunction tsParseTypeOrTypePredicateAnnotation(returnToken) {\n const oldIsType = pushTypeContext(0);\n expect(returnToken);\n const finishedReturn = tsParseTypePredicateOrAssertsPrefix();\n if (!finishedReturn) {\n tsParseType();\n }\n popTypeContext(oldIsType);\n}\n\nfunction tsTryParseTypeOrTypePredicateAnnotation() {\n if (match(tt.colon)) {\n tsParseTypeOrTypePredicateAnnotation(tt.colon);\n }\n}\n\nexport function tsTryParseTypeAnnotation() {\n if (match(tt.colon)) {\n tsParseTypeAnnotation();\n }\n}\n\nfunction tsTryParseType() {\n if (eat(tt.colon)) {\n tsParseType();\n }\n}\n\n/**\n * Detect a few special return syntax cases: `x is T`, `asserts x`, `asserts x is T`,\n * `asserts this is T`.\n *\n * Returns true if we parsed the return type, false if there's still a type to be parsed.\n */\nfunction tsParseTypePredicateOrAssertsPrefix() {\n const snapshot = state.snapshot();\n if (isContextual(ContextualKeyword._asserts)) {\n // Normally this is `asserts x is T`, but at this point, it might be `asserts is T` (a user-\n // defined type guard on the `asserts` variable) or just a type called `asserts`.\n next();\n if (eatContextual(ContextualKeyword._is)) {\n // If we see `asserts is`, then this must be of the form `asserts is T`, since\n // `asserts is is T` isn't valid.\n tsParseType();\n return true;\n } else if (tsIsIdentifier() || match(tt._this)) {\n next();\n if (eatContextual(ContextualKeyword._is)) {\n // If we see `is`, then this is `asserts x is T`. Otherwise, it's `asserts x`.\n tsParseType();\n }\n return true;\n } else {\n // Regular type, so bail out and start type parsing from scratch.\n state.restoreFromSnapshot(snapshot);\n return false;\n }\n } else if (tsIsIdentifier() || match(tt._this)) {\n // This is a regular identifier, which may or may not have \"is\" after it.\n next();\n if (isContextual(ContextualKeyword._is) && !hasPrecedingLineBreak()) {\n next();\n tsParseType();\n return true;\n } else {\n // Regular type, so bail out and start type parsing from scratch.\n state.restoreFromSnapshot(snapshot);\n return false;\n }\n }\n return false;\n}\n\nexport function tsParseTypeAnnotation() {\n const oldIsType = pushTypeContext(0);\n expect(tt.colon);\n tsParseType();\n popTypeContext(oldIsType);\n}\n\nexport function tsParseType() {\n tsParseNonConditionalType();\n if (state.inDisallowConditionalTypesContext || hasPrecedingLineBreak() || !eat(tt._extends)) {\n return;\n }\n // extends type\n const oldInDisallowConditionalTypesContext = state.inDisallowConditionalTypesContext;\n state.inDisallowConditionalTypesContext = true;\n tsParseNonConditionalType();\n state.inDisallowConditionalTypesContext = oldInDisallowConditionalTypesContext;\n\n expect(tt.question);\n // true type\n tsParseType();\n expect(tt.colon);\n // false type\n tsParseType();\n}\n\nfunction isAbstractConstructorSignature() {\n return isContextual(ContextualKeyword._abstract) && lookaheadType() === tt._new;\n}\n\nexport function tsParseNonConditionalType() {\n if (tsIsStartOfFunctionType()) {\n tsParseFunctionOrConstructorType(FunctionType.TSFunctionType);\n return;\n }\n if (match(tt._new)) {\n // As in `new () => Date`\n tsParseFunctionOrConstructorType(FunctionType.TSConstructorType);\n return;\n } else if (isAbstractConstructorSignature()) {\n // As in `abstract new () => Date`\n tsParseFunctionOrConstructorType(FunctionType.TSAbstractConstructorType);\n return;\n }\n tsParseUnionTypeOrHigher();\n}\n\nexport function tsParseTypeAssertion() {\n const oldIsType = pushTypeContext(1);\n tsParseType();\n expect(tt.greaterThan);\n popTypeContext(oldIsType);\n parseMaybeUnary();\n}\n\nexport function tsTryParseJSXTypeArgument() {\n if (eat(tt.jsxTagStart)) {\n state.tokens[state.tokens.length - 1].type = tt.typeParameterStart;\n const oldIsType = pushTypeContext(1);\n while (!match(tt.greaterThan) && !state.error) {\n tsParseType();\n eat(tt.comma);\n }\n // Process >, but the one after needs to be parsed JSX-style.\n nextJSXTagToken();\n popTypeContext(oldIsType);\n }\n}\n\nfunction tsParseHeritageClause() {\n while (!match(tt.braceL) && !state.error) {\n tsParseExpressionWithTypeArguments();\n eat(tt.comma);\n }\n}\n\nfunction tsParseExpressionWithTypeArguments() {\n // Note: TS uses parseLeftHandSideExpressionOrHigher,\n // then has grammar errors later if it's not an EntityName.\n tsParseEntityName();\n if (match(tt.lessThan)) {\n tsParseTypeArguments();\n }\n}\n\nfunction tsParseInterfaceDeclaration() {\n parseBindingIdentifier(false);\n tsTryParseTypeParameters();\n if (eat(tt._extends)) {\n tsParseHeritageClause();\n }\n tsParseObjectTypeMembers();\n}\n\nfunction tsParseTypeAliasDeclaration() {\n parseBindingIdentifier(false);\n tsTryParseTypeParameters();\n expect(tt.eq);\n tsParseType();\n semicolon();\n}\n\nfunction tsParseEnumMember() {\n // Computed property names are grammar errors in an enum, so accept just string literal or identifier.\n if (match(tt.string)) {\n parseLiteral();\n } else {\n parseIdentifier();\n }\n if (eat(tt.eq)) {\n const eqIndex = state.tokens.length - 1;\n parseMaybeAssign();\n state.tokens[eqIndex].rhsEndIndex = state.tokens.length;\n }\n}\n\nfunction tsParseEnumDeclaration() {\n parseBindingIdentifier(false);\n expect(tt.braceL);\n while (!eat(tt.braceR) && !state.error) {\n tsParseEnumMember();\n eat(tt.comma);\n }\n}\n\nfunction tsParseModuleBlock() {\n expect(tt.braceL);\n parseBlockBody(/* end */ tt.braceR);\n}\n\nfunction tsParseModuleOrNamespaceDeclaration() {\n parseBindingIdentifier(false);\n if (eat(tt.dot)) {\n tsParseModuleOrNamespaceDeclaration();\n } else {\n tsParseModuleBlock();\n }\n}\n\nfunction tsParseAmbientExternalModuleDeclaration() {\n if (isContextual(ContextualKeyword._global)) {\n parseIdentifier();\n } else if (match(tt.string)) {\n parseExprAtom();\n } else {\n unexpected();\n }\n\n if (match(tt.braceL)) {\n tsParseModuleBlock();\n } else {\n semicolon();\n }\n}\n\nexport function tsParseImportEqualsDeclaration() {\n parseImportedIdentifier();\n expect(tt.eq);\n tsParseModuleReference();\n semicolon();\n}\n\nfunction tsIsExternalModuleReference() {\n return isContextual(ContextualKeyword._require) && lookaheadType() === tt.parenL;\n}\n\nfunction tsParseModuleReference() {\n if (tsIsExternalModuleReference()) {\n tsParseExternalModuleReference();\n } else {\n tsParseEntityName();\n }\n}\n\nfunction tsParseExternalModuleReference() {\n expectContextual(ContextualKeyword._require);\n expect(tt.parenL);\n if (!match(tt.string)) {\n unexpected();\n }\n parseLiteral();\n expect(tt.parenR);\n}\n\n// Utilities\n\n// Returns true if a statement matched.\nfunction tsTryParseDeclare() {\n if (isLineTerminator()) {\n return false;\n }\n switch (state.type) {\n case tt._function: {\n const oldIsType = pushTypeContext(1);\n next();\n // We don't need to precisely get the function start here, since it's only used to mark\n // the function as a type if it's bodiless, and it's already a type here.\n const functionStart = state.start;\n parseFunction(functionStart, /* isStatement */ true);\n popTypeContext(oldIsType);\n return true;\n }\n case tt._class: {\n const oldIsType = pushTypeContext(1);\n parseClass(/* isStatement */ true, /* optionalId */ false);\n popTypeContext(oldIsType);\n return true;\n }\n case tt._const: {\n if (match(tt._const) && isLookaheadContextual(ContextualKeyword._enum)) {\n const oldIsType = pushTypeContext(1);\n // `const enum = 0;` not allowed because \"enum\" is a strict mode reserved word.\n expect(tt._const);\n expectContextual(ContextualKeyword._enum);\n state.tokens[state.tokens.length - 1].type = tt._enum;\n tsParseEnumDeclaration();\n popTypeContext(oldIsType);\n return true;\n }\n }\n // falls through\n case tt._var:\n case tt._let: {\n const oldIsType = pushTypeContext(1);\n parseVarStatement(state.type !== tt._var);\n popTypeContext(oldIsType);\n return true;\n }\n case tt.name: {\n const oldIsType = pushTypeContext(1);\n const contextualKeyword = state.contextualKeyword;\n let matched = false;\n if (contextualKeyword === ContextualKeyword._global) {\n tsParseAmbientExternalModuleDeclaration();\n matched = true;\n } else {\n matched = tsParseDeclaration(contextualKeyword, /* isBeforeToken */ true);\n }\n popTypeContext(oldIsType);\n return matched;\n }\n default:\n return false;\n }\n}\n\n// Note: this won't be called unless the keyword is allowed in `shouldParseExportDeclaration`.\n// Returns true if it matched a declaration.\nfunction tsTryParseExportDeclaration() {\n return tsParseDeclaration(state.contextualKeyword, /* isBeforeToken */ true);\n}\n\n// Returns true if it matched a statement.\nfunction tsParseExpressionStatement(contextualKeyword) {\n switch (contextualKeyword) {\n case ContextualKeyword._declare: {\n const declareTokenIndex = state.tokens.length - 1;\n const matched = tsTryParseDeclare();\n if (matched) {\n state.tokens[declareTokenIndex].type = tt._declare;\n return true;\n }\n break;\n }\n case ContextualKeyword._global:\n // `global { }` (with no `declare`) may appear inside an ambient module declaration.\n // Would like to use tsParseAmbientExternalModuleDeclaration here, but already ran past \"global\".\n if (match(tt.braceL)) {\n tsParseModuleBlock();\n return true;\n }\n break;\n\n default:\n return tsParseDeclaration(contextualKeyword, /* isBeforeToken */ false);\n }\n return false;\n}\n\n/**\n * Common code for parsing a declaration.\n *\n * isBeforeToken indicates that the current parser state is at the contextual\n * keyword (and that it is not yet emitted) rather than reading the token after\n * it. When isBeforeToken is true, we may be preceded by an `export` token and\n * should include that token in a type context we create, e.g. to handle\n * `export interface` or `export type`. (This is a bit of a hack and should be\n * cleaned up at some point.)\n *\n * Returns true if it matched a declaration.\n */\nfunction tsParseDeclaration(contextualKeyword, isBeforeToken) {\n switch (contextualKeyword) {\n case ContextualKeyword._abstract:\n if (tsCheckLineTerminator(isBeforeToken) && match(tt._class)) {\n state.tokens[state.tokens.length - 1].type = tt._abstract;\n parseClass(/* isStatement */ true, /* optionalId */ false);\n return true;\n }\n break;\n\n case ContextualKeyword._enum:\n if (tsCheckLineTerminator(isBeforeToken) && match(tt.name)) {\n state.tokens[state.tokens.length - 1].type = tt._enum;\n tsParseEnumDeclaration();\n return true;\n }\n break;\n\n case ContextualKeyword._interface:\n if (tsCheckLineTerminator(isBeforeToken) && match(tt.name)) {\n // `next` is true in \"export\" and \"declare\" contexts, so we want to remove that token\n // as well.\n const oldIsType = pushTypeContext(isBeforeToken ? 2 : 1);\n tsParseInterfaceDeclaration();\n popTypeContext(oldIsType);\n return true;\n }\n break;\n\n case ContextualKeyword._module:\n if (tsCheckLineTerminator(isBeforeToken)) {\n if (match(tt.string)) {\n const oldIsType = pushTypeContext(isBeforeToken ? 2 : 1);\n tsParseAmbientExternalModuleDeclaration();\n popTypeContext(oldIsType);\n return true;\n } else if (match(tt.name)) {\n const oldIsType = pushTypeContext(isBeforeToken ? 2 : 1);\n tsParseModuleOrNamespaceDeclaration();\n popTypeContext(oldIsType);\n return true;\n }\n }\n break;\n\n case ContextualKeyword._namespace:\n if (tsCheckLineTerminator(isBeforeToken) && match(tt.name)) {\n const oldIsType = pushTypeContext(isBeforeToken ? 2 : 1);\n tsParseModuleOrNamespaceDeclaration();\n popTypeContext(oldIsType);\n return true;\n }\n break;\n\n case ContextualKeyword._type:\n if (tsCheckLineTerminator(isBeforeToken) && match(tt.name)) {\n const oldIsType = pushTypeContext(isBeforeToken ? 2 : 1);\n tsParseTypeAliasDeclaration();\n popTypeContext(oldIsType);\n return true;\n }\n break;\n\n default:\n break;\n }\n return false;\n}\n\nfunction tsCheckLineTerminator(isBeforeToken) {\n if (isBeforeToken) {\n // Babel checks hasFollowingLineBreak here and returns false, but this\n // doesn't actually come up, e.g. `export interface` can never be on its own\n // line in valid code.\n next();\n return true;\n } else {\n return !isLineTerminator();\n }\n}\n\n// Returns true if there was a generic async arrow function.\nfunction tsTryParseGenericAsyncArrowFunction() {\n const snapshot = state.snapshot();\n\n tsParseTypeParameters();\n parseFunctionParams();\n tsTryParseTypeOrTypePredicateAnnotation();\n expect(tt.arrow);\n\n if (state.error) {\n state.restoreFromSnapshot(snapshot);\n return false;\n }\n\n parseFunctionBody(true);\n return true;\n}\n\n/**\n * If necessary, hack the tokenizer state so that this bitshift was actually a\n * less-than token, then keep parsing. This should only be used in situations\n * where we restore from snapshot on error (which reverts this change) or\n * where bitshift would be illegal anyway (e.g. in a class \"extends\" clause).\n *\n * This hack is useful to handle situations like foo<<T>() => void>() where\n * there can legitimately be two open-angle-brackets in a row in TS.\n */\nfunction tsParseTypeArgumentsWithPossibleBitshift() {\n if (state.type === tt.bitShiftL) {\n state.pos -= 1;\n finishToken(tt.lessThan);\n }\n tsParseTypeArguments();\n}\n\nfunction tsParseTypeArguments() {\n const oldIsType = pushTypeContext(0);\n expect(tt.lessThan);\n while (!match(tt.greaterThan) && !state.error) {\n tsParseType();\n eat(tt.comma);\n }\n if (!oldIsType) {\n // If the type arguments are present in an expression context, e.g.\n // f<number>(), then the > sign should be tokenized as a non-type token.\n // In particular, f(a < b, c >= d) should parse the >= as a single token,\n // resulting in a syntax error and fallback to the non-type-args\n // interpretation. In the success case, even though the > is tokenized as a\n // non-type token, it still must be marked as a type token so that it is\n // erased.\n popTypeContext(oldIsType);\n rescan_gt();\n expect(tt.greaterThan);\n state.tokens[state.tokens.length - 1].isType = true;\n } else {\n expect(tt.greaterThan);\n popTypeContext(oldIsType);\n }\n}\n\nexport function tsIsDeclarationStart() {\n if (match(tt.name)) {\n switch (state.contextualKeyword) {\n case ContextualKeyword._abstract:\n case ContextualKeyword._declare:\n case ContextualKeyword._enum:\n case ContextualKeyword._interface:\n case ContextualKeyword._module:\n case ContextualKeyword._namespace:\n case ContextualKeyword._type:\n return true;\n default:\n break;\n }\n }\n\n return false;\n}\n\n// ======================================================\n// OVERRIDES\n// ======================================================\n\nexport function tsParseFunctionBodyAndFinish(functionStart, funcContextId) {\n // For arrow functions, `parseArrow` handles the return type itself.\n if (match(tt.colon)) {\n tsParseTypeOrTypePredicateAnnotation(tt.colon);\n }\n\n // The original code checked the node type to make sure this function type allows a missing\n // body, but we skip that to avoid sending around the node type. We instead just use the\n // allowExpressionBody boolean to make sure it's not an arrow function.\n if (!match(tt.braceL) && isLineTerminator()) {\n // Retroactively mark the function declaration as a type.\n let i = state.tokens.length - 1;\n while (\n i >= 0 &&\n (state.tokens[i].start >= functionStart ||\n state.tokens[i].type === tt._default ||\n state.tokens[i].type === tt._export)\n ) {\n state.tokens[i].isType = true;\n i--;\n }\n return;\n }\n\n parseFunctionBody(false, funcContextId);\n}\n\nexport function tsParseSubscript(\n startTokenIndex,\n noCalls,\n stopState,\n) {\n if (!hasPrecedingLineBreak() && eat(tt.bang)) {\n state.tokens[state.tokens.length - 1].type = tt.nonNullAssertion;\n return;\n }\n\n if (match(tt.lessThan) || match(tt.bitShiftL)) {\n // There are number of things we are going to \"maybe\" parse, like type arguments on\n // tagged template expressions. If any of them fail, walk it back and continue.\n const snapshot = state.snapshot();\n\n if (!noCalls && atPossibleAsync()) {\n // Almost certainly this is a generic async function `async <T>() => ...\n // But it might be a call with a type argument `async<T>();`\n const asyncArrowFn = tsTryParseGenericAsyncArrowFunction();\n if (asyncArrowFn) {\n return;\n }\n }\n tsParseTypeArgumentsWithPossibleBitshift();\n if (!noCalls && eat(tt.parenL)) {\n // With f<T>(), the subscriptStartIndex marker is on the ( token.\n state.tokens[state.tokens.length - 1].subscriptStartIndex = startTokenIndex;\n parseCallExpressionArguments();\n } else if (match(tt.backQuote)) {\n // Tagged template with a type argument.\n parseTemplate();\n } else if (\n // The remaining possible case is an instantiation expression, e.g.\n // Array<number> . Check for a few cases that would disqualify it and\n // cause us to bail out.\n // a<b>>c is not (a<b>)>c, but a<(b>>c)\n state.type === tt.greaterThan ||\n // a<b>c is (a<b)>c\n (state.type !== tt.parenL &&\n Boolean(state.type & TokenType.IS_EXPRESSION_START) &&\n !hasPrecedingLineBreak())\n ) {\n // Bail out. We have something like a<b>c, which is not an expression with\n // type arguments but an (a < b) > c comparison.\n unexpected();\n }\n\n if (state.error) {\n state.restoreFromSnapshot(snapshot);\n } else {\n return;\n }\n } else if (!noCalls && match(tt.questionDot) && lookaheadType() === tt.lessThan) {\n // If we see f?.<, then this must be an optional call with a type argument.\n next();\n state.tokens[startTokenIndex].isOptionalChainStart = true;\n // With f?.<T>(), the subscriptStartIndex marker is on the ?. token.\n state.tokens[state.tokens.length - 1].subscriptStartIndex = startTokenIndex;\n\n tsParseTypeArguments();\n expect(tt.parenL);\n parseCallExpressionArguments();\n }\n baseParseSubscript(startTokenIndex, noCalls, stopState);\n}\n\nexport function tsTryParseExport() {\n if (eat(tt._import)) {\n // One of these cases:\n // export import A = B;\n // export import type A = require(\"A\");\n if (isContextual(ContextualKeyword._type) && lookaheadType() !== tt.eq) {\n // Eat a `type` token, unless it's actually an identifier name.\n expectContextual(ContextualKeyword._type);\n }\n tsParseImportEqualsDeclaration();\n return true;\n } else if (eat(tt.eq)) {\n // `export = x;`\n parseExpression();\n semicolon();\n return true;\n } else if (eatContextual(ContextualKeyword._as)) {\n // `export as namespace A;`\n // See `parseNamespaceExportDeclaration` in TypeScript's own parser\n expectContextual(ContextualKeyword._namespace);\n parseIdentifier();\n semicolon();\n return true;\n } else {\n if (isContextual(ContextualKeyword._type)) {\n const nextType = lookaheadType();\n // export type {foo} from 'a';\n // export type * from 'a';'\n // export type * as ns from 'a';'\n if (nextType === tt.braceL || nextType === tt.star) {\n next();\n }\n }\n return false;\n }\n}\n\n/**\n * Parse a TS import specifier, which may be prefixed with \"type\" and may be of\n * the form `foo as bar`.\n *\n * The number of identifier-like tokens we see happens to be enough to uniquely\n * identify the form, so simply count the number of identifiers rather than\n * matching the words `type` or `as`. This is particularly important because\n * `type` and `as` could each actually be plain identifiers rather than\n * keywords.\n */\nexport function tsParseImportSpecifier() {\n parseIdentifier();\n if (match(tt.comma) || match(tt.braceR)) {\n // import {foo}\n state.tokens[state.tokens.length - 1].identifierRole = IdentifierRole.ImportDeclaration;\n return;\n }\n parseIdentifier();\n if (match(tt.comma) || match(tt.braceR)) {\n // import {type foo}\n state.tokens[state.tokens.length - 1].identifierRole = IdentifierRole.ImportDeclaration;\n state.tokens[state.tokens.length - 2].isType = true;\n state.tokens[state.tokens.length - 1].isType = true;\n return;\n }\n parseIdentifier();\n if (match(tt.comma) || match(tt.braceR)) {\n // import {foo as bar}\n state.tokens[state.tokens.length - 3].identifierRole = IdentifierRole.ImportAccess;\n state.tokens[state.tokens.length - 1].identifierRole = IdentifierRole.ImportDeclaration;\n return;\n }\n parseIdentifier();\n // import {type foo as bar}\n state.tokens[state.tokens.length - 3].identifierRole = IdentifierRole.ImportAccess;\n state.tokens[state.tokens.length - 1].identifierRole = IdentifierRole.ImportDeclaration;\n state.tokens[state.tokens.length - 4].isType = true;\n state.tokens[state.tokens.length - 3].isType = true;\n state.tokens[state.tokens.length - 2].isType = true;\n state.tokens[state.tokens.length - 1].isType = true;\n}\n\n/**\n * Just like named import specifiers, export specifiers can have from 1 to 4\n * tokens, inclusive, and the number of tokens determines the role of each token.\n */\nexport function tsParseExportSpecifier() {\n parseIdentifier();\n if (match(tt.comma) || match(tt.braceR)) {\n // export {foo}\n state.tokens[state.tokens.length - 1].identifierRole = IdentifierRole.ExportAccess;\n return;\n }\n parseIdentifier();\n if (match(tt.comma) || match(tt.braceR)) {\n // export {type foo}\n state.tokens[state.tokens.length - 1].identifierRole = IdentifierRole.ExportAccess;\n state.tokens[state.tokens.length - 2].isType = true;\n state.tokens[state.tokens.length - 1].isType = true;\n return;\n }\n parseIdentifier();\n if (match(tt.comma) || match(tt.braceR)) {\n // export {foo as bar}\n state.tokens[state.tokens.length - 3].identifierRole = IdentifierRole.ExportAccess;\n return;\n }\n parseIdentifier();\n // export {type foo as bar}\n state.tokens[state.tokens.length - 3].identifierRole = IdentifierRole.ExportAccess;\n state.tokens[state.tokens.length - 4].isType = true;\n state.tokens[state.tokens.length - 3].isType = true;\n state.tokens[state.tokens.length - 2].isType = true;\n state.tokens[state.tokens.length - 1].isType = true;\n}\n\nexport function tsTryParseExportDefaultExpression() {\n if (isContextual(ContextualKeyword._abstract) && lookaheadType() === tt._class) {\n state.type = tt._abstract;\n next(); // Skip \"abstract\"\n parseClass(true, true);\n return true;\n }\n if (isContextual(ContextualKeyword._interface)) {\n // Make sure \"export default\" are considered type tokens so the whole thing is removed.\n const oldIsType = pushTypeContext(2);\n tsParseDeclaration(ContextualKeyword._interface, true);\n popTypeContext(oldIsType);\n return true;\n }\n return false;\n}\n\nexport function tsTryParseStatementContent() {\n if (state.type === tt._const) {\n const ahead = lookaheadTypeAndKeyword();\n if (ahead.type === tt.name && ahead.contextualKeyword === ContextualKeyword._enum) {\n expect(tt._const);\n expectContextual(ContextualKeyword._enum);\n state.tokens[state.tokens.length - 1].type = tt._enum;\n tsParseEnumDeclaration();\n return true;\n }\n }\n return false;\n}\n\nexport function tsTryParseClassMemberWithIsStatic(isStatic) {\n const memberStartIndexAfterStatic = state.tokens.length;\n tsParseModifiers([\n ContextualKeyword._abstract,\n ContextualKeyword._readonly,\n ContextualKeyword._declare,\n ContextualKeyword._static,\n ContextualKeyword._override,\n ]);\n\n const modifiersEndIndex = state.tokens.length;\n const found = tsTryParseIndexSignature();\n if (found) {\n // Index signatures are type declarations, so set the modifier tokens as\n // type tokens. Most tokens could be assumed to be type tokens, but `static`\n // is ambiguous unless we set it explicitly here.\n const memberStartIndex = isStatic\n ? memberStartIndexAfterStatic - 1\n : memberStartIndexAfterStatic;\n for (let i = memberStartIndex; i < modifiersEndIndex; i++) {\n state.tokens[i].isType = true;\n }\n return true;\n }\n return false;\n}\n\n// Note: The reason we do this in `parseIdentifierStatement` and not `parseStatement`\n// is that e.g. `type()` is valid JS, so we must try parsing that first.\n// If it's really a type, we will parse `type` as the statement, and can correct it here\n// by parsing the rest.\nexport function tsParseIdentifierStatement(contextualKeyword) {\n const matched = tsParseExpressionStatement(contextualKeyword);\n if (!matched) {\n semicolon();\n }\n}\n\nexport function tsParseExportDeclaration() {\n // \"export declare\" is equivalent to just \"export\".\n const isDeclare = eatContextual(ContextualKeyword._declare);\n if (isDeclare) {\n state.tokens[state.tokens.length - 1].type = tt._declare;\n }\n\n let matchedDeclaration = false;\n if (match(tt.name)) {\n if (isDeclare) {\n const oldIsType = pushTypeContext(2);\n matchedDeclaration = tsTryParseExportDeclaration();\n popTypeContext(oldIsType);\n } else {\n matchedDeclaration = tsTryParseExportDeclaration();\n }\n }\n if (!matchedDeclaration) {\n if (isDeclare) {\n const oldIsType = pushTypeContext(2);\n parseStatement(true);\n popTypeContext(oldIsType);\n } else {\n parseStatement(true);\n }\n }\n}\n\nexport function tsAfterParseClassSuper(hasSuper) {\n if (hasSuper && (match(tt.lessThan) || match(tt.bitShiftL))) {\n tsParseTypeArgumentsWithPossibleBitshift();\n }\n if (eatContextual(ContextualKeyword._implements)) {\n state.tokens[state.tokens.length - 1].type = tt._implements;\n const oldIsType = pushTypeContext(1);\n tsParseHeritageClause();\n popTypeContext(oldIsType);\n }\n}\n\nexport function tsStartParseObjPropValue() {\n tsTryParseTypeParameters();\n}\n\nexport function tsStartParseFunctionParams() {\n tsTryParseTypeParameters();\n}\n\n// `let x: number;`\nexport function tsAfterParseVarHead() {\n const oldIsType = pushTypeContext(0);\n if (!hasPrecedingLineBreak()) {\n eat(tt.bang);\n }\n tsTryParseTypeAnnotation();\n popTypeContext(oldIsType);\n}\n\n// parse the return type of an async arrow function - let foo = (async (): number => {});\nexport function tsStartParseAsyncArrowFromCallExpression() {\n if (match(tt.colon)) {\n tsParseTypeAnnotation();\n }\n}\n\n// Returns true if the expression was an arrow function.\nexport function tsParseMaybeAssign(noIn, isWithinParens) {\n // Note: When the JSX plugin is on, type assertions (`<T> x`) aren't valid syntax.\n if (isJSXEnabled) {\n return tsParseMaybeAssignWithJSX(noIn, isWithinParens);\n } else {\n return tsParseMaybeAssignWithoutJSX(noIn, isWithinParens);\n }\n}\n\nexport function tsParseMaybeAssignWithJSX(noIn, isWithinParens) {\n if (!match(tt.lessThan)) {\n return baseParseMaybeAssign(noIn, isWithinParens);\n }\n\n // Prefer to parse JSX if possible. But may be an arrow fn.\n const snapshot = state.snapshot();\n let wasArrow = baseParseMaybeAssign(noIn, isWithinParens);\n if (state.error) {\n state.restoreFromSnapshot(snapshot);\n } else {\n return wasArrow;\n }\n\n // Otherwise, try as type-parameterized arrow function.\n state.type = tt.typeParameterStart;\n // This is similar to TypeScript's `tryParseParenthesizedArrowFunctionExpression`.\n tsParseTypeParameters();\n wasArrow = baseParseMaybeAssign(noIn, isWithinParens);\n if (!wasArrow) {\n unexpected();\n }\n\n return wasArrow;\n}\n\nexport function tsParseMaybeAssignWithoutJSX(noIn, isWithinParens) {\n if (!match(tt.lessThan)) {\n return baseParseMaybeAssign(noIn, isWithinParens);\n }\n\n const snapshot = state.snapshot();\n // This is similar to TypeScript's `tryParseParenthesizedArrowFunctionExpression`.\n tsParseTypeParameters();\n const wasArrow = baseParseMaybeAssign(noIn, isWithinParens);\n if (!wasArrow) {\n unexpected();\n }\n if (state.error) {\n state.restoreFromSnapshot(snapshot);\n } else {\n return wasArrow;\n }\n\n // Try parsing a type cast instead of an arrow function.\n // This will start with a type assertion (via parseMaybeUnary).\n // But don't directly call `tsParseTypeAssertion` because we want to handle any binary after it.\n return baseParseMaybeAssign(noIn, isWithinParens);\n}\n\nexport function tsParseArrow() {\n if (match(tt.colon)) {\n // This is different from how the TS parser does it.\n // TS uses lookahead. Babylon parses it as a parenthesized expression and converts.\n const snapshot = state.snapshot();\n\n tsParseTypeOrTypePredicateAnnotation(tt.colon);\n if (canInsertSemicolon()) unexpected();\n if (!match(tt.arrow)) unexpected();\n\n if (state.error) {\n state.restoreFromSnapshot(snapshot);\n }\n }\n return eat(tt.arrow);\n}\n\n// Allow type annotations inside of a parameter list.\nexport function tsParseAssignableListItemTypes() {\n const oldIsType = pushTypeContext(0);\n eat(tt.question);\n tsTryParseTypeAnnotation();\n popTypeContext(oldIsType);\n}\n\nexport function tsParseMaybeDecoratorArguments() {\n if (match(tt.lessThan) || match(tt.bitShiftL)) {\n tsParseTypeArgumentsWithPossibleBitshift();\n }\n baseParseMaybeDecoratorArguments();\n}\n", "import {\n eat,\n finishToken,\n getTokenFromCode,\n IdentifierRole,\n JSXRole,\n match,\n next,\n skipSpace,\n Token,\n} from \"../../tokenizer/index\";\nimport {TokenType as tt} from \"../../tokenizer/types\";\nimport {input, isTypeScriptEnabled, state} from \"../../traverser/base\";\nimport {parseExpression, parseMaybeAssign} from \"../../traverser/expression\";\nimport {expect, unexpected} from \"../../traverser/util\";\nimport {charCodes} from \"../../util/charcodes\";\nimport {IS_IDENTIFIER_CHAR, IS_IDENTIFIER_START} from \"../../util/identifier\";\nimport {tsTryParseJSXTypeArgument} from \"../typescript\";\n\n/**\n * Read token with JSX contents.\n *\n * In addition to detecting jsxTagStart and also regular tokens that might be\n * part of an expression, this code detects the start and end of text ranges\n * within JSX children. In order to properly count the number of children, we\n * distinguish jsxText from jsxEmptyText, which is a text range that simplifies\n * to the empty string after JSX whitespace trimming.\n *\n * It turns out that a JSX text range will simplify to the empty string if and\n * only if both of these conditions hold:\n * - The range consists entirely of whitespace characters (only counting space,\n * tab, \\r, and \\n).\n * - The range has at least one newline.\n * This can be proven by analyzing any implementation of whitespace trimming,\n * e.g. formatJSXTextLiteral in Sucrase or cleanJSXElementLiteralChild in Babel.\n */\nfunction jsxReadToken() {\n let sawNewline = false;\n let sawNonWhitespace = false;\n while (true) {\n if (state.pos >= input.length) {\n unexpected(\"Unterminated JSX contents\");\n return;\n }\n\n const ch = input.charCodeAt(state.pos);\n if (ch === charCodes.lessThan || ch === charCodes.leftCurlyBrace) {\n if (state.pos === state.start) {\n if (ch === charCodes.lessThan) {\n state.pos++;\n finishToken(tt.jsxTagStart);\n return;\n }\n getTokenFromCode(ch);\n return;\n }\n if (sawNewline && !sawNonWhitespace) {\n finishToken(tt.jsxEmptyText);\n } else {\n finishToken(tt.jsxText);\n }\n return;\n }\n\n // This is part of JSX text.\n if (ch === charCodes.lineFeed) {\n sawNewline = true;\n } else if (ch !== charCodes.space && ch !== charCodes.carriageReturn && ch !== charCodes.tab) {\n sawNonWhitespace = true;\n }\n state.pos++;\n }\n}\n\nfunction jsxReadString(quote) {\n state.pos++;\n for (;;) {\n if (state.pos >= input.length) {\n unexpected(\"Unterminated string constant\");\n return;\n }\n\n const ch = input.charCodeAt(state.pos);\n if (ch === quote) {\n state.pos++;\n break;\n }\n state.pos++;\n }\n finishToken(tt.string);\n}\n\n// Read a JSX identifier (valid tag or attribute name).\n//\n// Optimized version since JSX identifiers can't contain\n// escape characters and so can be read as single slice.\n// Also assumes that first character was already checked\n// by isIdentifierStart in readToken.\n\nfunction jsxReadWord() {\n let ch;\n do {\n if (state.pos > input.length) {\n unexpected(\"Unexpectedly reached the end of input.\");\n return;\n }\n ch = input.charCodeAt(++state.pos);\n } while (IS_IDENTIFIER_CHAR[ch] || ch === charCodes.dash);\n finishToken(tt.jsxName);\n}\n\n// Parse next token as JSX identifier\nfunction jsxParseIdentifier() {\n nextJSXTagToken();\n}\n\n// Parse namespaced identifier.\nfunction jsxParseNamespacedName(identifierRole) {\n jsxParseIdentifier();\n if (!eat(tt.colon)) {\n // Plain identifier, so this is an access.\n state.tokens[state.tokens.length - 1].identifierRole = identifierRole;\n return;\n }\n // Process the second half of the namespaced name.\n jsxParseIdentifier();\n}\n\n// Parses element name in any form - namespaced, member\n// or single identifier.\nfunction jsxParseElementName() {\n const firstTokenIndex = state.tokens.length;\n jsxParseNamespacedName(IdentifierRole.Access);\n let hadDot = false;\n while (match(tt.dot)) {\n hadDot = true;\n nextJSXTagToken();\n jsxParseIdentifier();\n }\n // For tags like <div> with a lowercase letter and no dots, the name is\n // actually *not* an identifier access, since it's referring to a built-in\n // tag name. Remove the identifier role in this case so that it's not\n // accidentally transformed by the imports transform when preserving JSX.\n if (!hadDot) {\n const firstToken = state.tokens[firstTokenIndex];\n const firstChar = input.charCodeAt(firstToken.start);\n if (firstChar >= charCodes.lowercaseA && firstChar <= charCodes.lowercaseZ) {\n firstToken.identifierRole = null;\n }\n }\n}\n\n// Parses any type of JSX attribute value.\nfunction jsxParseAttributeValue() {\n switch (state.type) {\n case tt.braceL:\n next();\n parseExpression();\n nextJSXTagToken();\n return;\n\n case tt.jsxTagStart:\n jsxParseElement();\n nextJSXTagToken();\n return;\n\n case tt.string:\n nextJSXTagToken();\n return;\n\n default:\n unexpected(\"JSX value should be either an expression or a quoted JSX text\");\n }\n}\n\n// Parse JSX spread child, after already processing the {\n// Does not parse the closing }\nfunction jsxParseSpreadChild() {\n expect(tt.ellipsis);\n parseExpression();\n}\n\n// Parses JSX opening tag starting after \"<\".\n// Returns true if the tag was self-closing.\n// Does not parse the last token.\nfunction jsxParseOpeningElement(initialTokenIndex) {\n if (match(tt.jsxTagEnd)) {\n // This is an open-fragment.\n return false;\n }\n jsxParseElementName();\n if (isTypeScriptEnabled) {\n tsTryParseJSXTypeArgument();\n }\n let hasSeenPropSpread = false;\n while (!match(tt.slash) && !match(tt.jsxTagEnd) && !state.error) {\n if (eat(tt.braceL)) {\n hasSeenPropSpread = true;\n expect(tt.ellipsis);\n parseMaybeAssign();\n // }\n nextJSXTagToken();\n continue;\n }\n if (\n hasSeenPropSpread &&\n state.end - state.start === 3 &&\n input.charCodeAt(state.start) === charCodes.lowercaseK &&\n input.charCodeAt(state.start + 1) === charCodes.lowercaseE &&\n input.charCodeAt(state.start + 2) === charCodes.lowercaseY\n ) {\n state.tokens[initialTokenIndex].jsxRole = JSXRole.KeyAfterPropSpread;\n }\n jsxParseNamespacedName(IdentifierRole.ObjectKey);\n if (match(tt.eq)) {\n nextJSXTagToken();\n jsxParseAttributeValue();\n }\n }\n const isSelfClosing = match(tt.slash);\n if (isSelfClosing) {\n // /\n nextJSXTagToken();\n }\n return isSelfClosing;\n}\n\n// Parses JSX closing tag starting after \"</\".\n// Does not parse the last token.\nfunction jsxParseClosingElement() {\n if (match(tt.jsxTagEnd)) {\n // Fragment syntax, so we immediately have a tag end.\n return;\n }\n jsxParseElementName();\n}\n\n// Parses entire JSX element, including its opening tag\n// (starting after \"<\"), attributes, contents and closing tag.\n// Does not parse the last token.\nfunction jsxParseElementAt() {\n const initialTokenIndex = state.tokens.length - 1;\n state.tokens[initialTokenIndex].jsxRole = JSXRole.NoChildren;\n let numExplicitChildren = 0;\n const isSelfClosing = jsxParseOpeningElement(initialTokenIndex);\n if (!isSelfClosing) {\n nextJSXExprToken();\n while (true) {\n switch (state.type) {\n case tt.jsxTagStart:\n nextJSXTagToken();\n if (match(tt.slash)) {\n nextJSXTagToken();\n jsxParseClosingElement();\n // Key after prop spread takes precedence over number of children,\n // since it means we switch to createElement, which doesn't care\n // about number of children.\n if (state.tokens[initialTokenIndex].jsxRole !== JSXRole.KeyAfterPropSpread) {\n if (numExplicitChildren === 1) {\n state.tokens[initialTokenIndex].jsxRole = JSXRole.OneChild;\n } else if (numExplicitChildren > 1) {\n state.tokens[initialTokenIndex].jsxRole = JSXRole.StaticChildren;\n }\n }\n return;\n }\n numExplicitChildren++;\n jsxParseElementAt();\n nextJSXExprToken();\n break;\n\n case tt.jsxText:\n numExplicitChildren++;\n nextJSXExprToken();\n break;\n\n case tt.jsxEmptyText:\n nextJSXExprToken();\n break;\n\n case tt.braceL:\n next();\n if (match(tt.ellipsis)) {\n jsxParseSpreadChild();\n nextJSXExprToken();\n // Spread children are a mechanism to explicitly mark children as\n // static, so count it as 2 children to satisfy the \"more than one\n // child\" condition.\n numExplicitChildren += 2;\n } else {\n // If we see {}, this is an empty pseudo-expression that doesn't\n // count as a child.\n if (!match(tt.braceR)) {\n numExplicitChildren++;\n parseExpression();\n }\n nextJSXExprToken();\n }\n\n break;\n\n // istanbul ignore next - should never happen\n default:\n unexpected();\n return;\n }\n }\n }\n}\n\n// Parses entire JSX element from current position.\n// Does not parse the last token.\nexport function jsxParseElement() {\n nextJSXTagToken();\n jsxParseElementAt();\n}\n\n// ==================================\n// Overrides\n// ==================================\n\nexport function nextJSXTagToken() {\n state.tokens.push(new Token());\n skipSpace();\n state.start = state.pos;\n const code = input.charCodeAt(state.pos);\n\n if (IS_IDENTIFIER_START[code]) {\n jsxReadWord();\n } else if (code === charCodes.quotationMark || code === charCodes.apostrophe) {\n jsxReadString(code);\n } else {\n // The following tokens are just one character each.\n ++state.pos;\n switch (code) {\n case charCodes.greaterThan:\n finishToken(tt.jsxTagEnd);\n break;\n case charCodes.lessThan:\n finishToken(tt.jsxTagStart);\n break;\n case charCodes.slash:\n finishToken(tt.slash);\n break;\n case charCodes.equalsTo:\n finishToken(tt.eq);\n break;\n case charCodes.leftCurlyBrace:\n finishToken(tt.braceL);\n break;\n case charCodes.dot:\n finishToken(tt.dot);\n break;\n case charCodes.colon:\n finishToken(tt.colon);\n break;\n default:\n unexpected();\n }\n }\n}\n\nfunction nextJSXExprToken() {\n state.tokens.push(new Token());\n state.start = state.pos;\n jsxReadToken();\n}\n", "import {eatTypeToken, lookaheadType, match} from \"../tokenizer/index\";\nimport {TokenType as tt} from \"../tokenizer/types\";\nimport {isFlowEnabled, isTypeScriptEnabled} from \"../traverser/base\";\nimport {baseParseConditional} from \"../traverser/expression\";\nimport {flowParseTypeAnnotation} from \"./flow\";\nimport {tsParseTypeAnnotation} from \"./typescript\";\n\n/**\n * Common parser code for TypeScript and Flow.\n */\n\n// An apparent conditional expression could actually be an optional parameter in an arrow function.\nexport function typedParseConditional(noIn) {\n // If we see ?:, this can't possibly be a valid conditional. typedParseParenItem will be called\n // later to finish off the arrow parameter. We also need to handle bare ? tokens for optional\n // parameters without type annotations, i.e. ?, and ?) .\n if (match(tt.question)) {\n const nextType = lookaheadType();\n if (nextType === tt.colon || nextType === tt.comma || nextType === tt.parenR) {\n return;\n }\n }\n baseParseConditional(noIn);\n}\n\n// Note: These \"type casts\" are *not* valid TS expressions.\n// But we parse them here and change them when completing the arrow function.\nexport function typedParseParenItem() {\n eatTypeToken(tt.question);\n if (match(tt.colon)) {\n if (isTypeScriptEnabled) {\n tsParseTypeAnnotation();\n } else if (isFlowEnabled) {\n flowParseTypeAnnotation();\n }\n }\n}\n", "/* eslint max-len: 0 */\n\n// A recursive descent parser operates by defining functions for all\n// syntactic elements, and recursively calling those, each function\n// advancing the input stream and returning an AST node. Precedence\n// of constructs (for example, the fact that `!x[1]` means `!(x[1])`\n// instead of `(!x)[1]` is handled by the fact that the parser\n// function that parses unary prefix operators is called first, and\n// in turn calls the function that parses `[]` subscripts \u2014 that\n// way, it'll receive the node for `x[1]` already parsed, and wraps\n// *that* in the unary operator node.\n//\n// Acorn uses an [operator precedence parser][opp] to handle binary\n// operator precedence, because it is much more compact than using\n// the technique outlined above, which uses different, nesting\n// functions to specify precedence, for all of the ten binary\n// precedence levels that JavaScript defines.\n//\n// [opp]: http://en.wikipedia.org/wiki/Operator-precedence_parser\n\nimport {\n flowParseArrow,\n flowParseFunctionBodyAndFinish,\n flowParseMaybeAssign,\n flowParseSubscript,\n flowParseSubscripts,\n flowParseVariance,\n flowStartParseAsyncArrowFromCallExpression,\n flowStartParseNewArguments,\n flowStartParseObjPropValue,\n} from \"../plugins/flow\";\nimport {jsxParseElement} from \"../plugins/jsx/index\";\nimport {typedParseConditional, typedParseParenItem} from \"../plugins/types\";\nimport {\n tsParseArrow,\n tsParseFunctionBodyAndFinish,\n tsParseMaybeAssign,\n tsParseSubscript,\n tsParseType,\n tsParseTypeAssertion,\n tsStartParseAsyncArrowFromCallExpression,\n tsStartParseObjPropValue,\n} from \"../plugins/typescript\";\nimport {\n eat,\n IdentifierRole,\n lookaheadCharCode,\n lookaheadType,\n match,\n next,\n nextTemplateToken,\n popTypeContext,\n pushTypeContext,\n rescan_gt,\n retokenizeSlashAsRegex,\n} from \"../tokenizer/index\";\nimport {ContextualKeyword} from \"../tokenizer/keywords\";\nimport {Scope} from \"../tokenizer/state\";\nimport {TokenType, TokenType as tt} from \"../tokenizer/types\";\nimport {charCodes} from \"../util/charcodes\";\nimport {IS_IDENTIFIER_START} from \"../util/identifier\";\nimport {getNextContextId, isFlowEnabled, isJSXEnabled, isTypeScriptEnabled, state} from \"./base\";\nimport {\n markPriorBindingIdentifier,\n parseBindingIdentifier,\n parseMaybeDefault,\n parseRest,\n parseSpread,\n} from \"./lval\";\nimport {\n parseBlock,\n parseBlockBody,\n parseClass,\n parseDecorators,\n parseFunction,\n parseFunctionParams,\n} from \"./statement\";\nimport {\n canInsertSemicolon,\n eatContextual,\n expect,\n expectContextual,\n hasFollowingLineBreak,\n hasPrecedingLineBreak,\n isContextual,\n unexpected,\n} from \"./util\";\n\nexport class StopState {\n \n constructor(stop) {\n this.stop = stop;\n }\n}\n\n// ### Expression parsing\n\n// These nest, from the most general expression type at the top to\n// 'atomic', nondivisible expression types at the bottom. Most of\n// the functions will simply let the function (s) below them parse,\n// and, *if* the syntactic construct they handle is present, wrap\n// the AST node that the inner parser gave them in another node.\nexport function parseExpression(noIn = false) {\n parseMaybeAssign(noIn);\n if (match(tt.comma)) {\n while (eat(tt.comma)) {\n parseMaybeAssign(noIn);\n }\n }\n}\n\n/**\n * noIn is used when parsing a for loop so that we don't interpret a following \"in\" as the binary\n * operatior.\n * isWithinParens is used to indicate that we're parsing something that might be a comma expression\n * or might be an arrow function or might be a Flow type assertion (which requires explicit parens).\n * In these cases, we should allow : and ?: after the initial \"left\" part.\n */\nexport function parseMaybeAssign(noIn = false, isWithinParens = false) {\n if (isTypeScriptEnabled) {\n return tsParseMaybeAssign(noIn, isWithinParens);\n } else if (isFlowEnabled) {\n return flowParseMaybeAssign(noIn, isWithinParens);\n } else {\n return baseParseMaybeAssign(noIn, isWithinParens);\n }\n}\n\n// Parse an assignment expression. This includes applications of\n// operators like `+=`.\n// Returns true if the expression was an arrow function.\nexport function baseParseMaybeAssign(noIn, isWithinParens) {\n if (match(tt._yield)) {\n parseYield();\n return false;\n }\n\n if (match(tt.parenL) || match(tt.name) || match(tt._yield)) {\n state.potentialArrowAt = state.start;\n }\n\n const wasArrow = parseMaybeConditional(noIn);\n if (isWithinParens) {\n parseParenItem();\n }\n if (state.type & TokenType.IS_ASSIGN) {\n next();\n parseMaybeAssign(noIn);\n return false;\n }\n return wasArrow;\n}\n\n// Parse a ternary conditional (`?:`) operator.\n// Returns true if the expression was an arrow function.\nfunction parseMaybeConditional(noIn) {\n const wasArrow = parseExprOps(noIn);\n if (wasArrow) {\n return true;\n }\n parseConditional(noIn);\n return false;\n}\n\nfunction parseConditional(noIn) {\n if (isTypeScriptEnabled || isFlowEnabled) {\n typedParseConditional(noIn);\n } else {\n baseParseConditional(noIn);\n }\n}\n\nexport function baseParseConditional(noIn) {\n if (eat(tt.question)) {\n parseMaybeAssign();\n expect(tt.colon);\n parseMaybeAssign(noIn);\n }\n}\n\n// Start the precedence parser.\n// Returns true if this was an arrow function\nfunction parseExprOps(noIn) {\n const startTokenIndex = state.tokens.length;\n const wasArrow = parseMaybeUnary();\n if (wasArrow) {\n return true;\n }\n parseExprOp(startTokenIndex, -1, noIn);\n return false;\n}\n\n// Parse binary operators with the operator precedence parsing\n// algorithm. `left` is the left-hand side of the operator.\n// `minPrec` provides context that allows the function to stop and\n// defer further parser to one of its callers when it encounters an\n// operator that has a lower precedence than the set it is parsing.\nfunction parseExprOp(startTokenIndex, minPrec, noIn) {\n if (\n isTypeScriptEnabled &&\n (tt._in & TokenType.PRECEDENCE_MASK) > minPrec &&\n !hasPrecedingLineBreak() &&\n (eatContextual(ContextualKeyword._as) || eatContextual(ContextualKeyword._satisfies))\n ) {\n const oldIsType = pushTypeContext(1);\n tsParseType();\n popTypeContext(oldIsType);\n rescan_gt();\n parseExprOp(startTokenIndex, minPrec, noIn);\n return;\n }\n\n const prec = state.type & TokenType.PRECEDENCE_MASK;\n if (prec > 0 && (!noIn || !match(tt._in))) {\n if (prec > minPrec) {\n const op = state.type;\n next();\n if (op === tt.nullishCoalescing) {\n state.tokens[state.tokens.length - 1].nullishStartIndex = startTokenIndex;\n }\n\n const rhsStartTokenIndex = state.tokens.length;\n parseMaybeUnary();\n // Extend the right operand of this operator if possible.\n parseExprOp(rhsStartTokenIndex, op & TokenType.IS_RIGHT_ASSOCIATIVE ? prec - 1 : prec, noIn);\n if (op === tt.nullishCoalescing) {\n state.tokens[startTokenIndex].numNullishCoalesceStarts++;\n state.tokens[state.tokens.length - 1].numNullishCoalesceEnds++;\n }\n // Continue with any future operator holding this expression as the left operand.\n parseExprOp(startTokenIndex, minPrec, noIn);\n }\n }\n}\n\n// Parse unary operators, both prefix and postfix.\n// Returns true if this was an arrow function.\nexport function parseMaybeUnary() {\n if (isTypeScriptEnabled && !isJSXEnabled && eat(tt.lessThan)) {\n tsParseTypeAssertion();\n return false;\n }\n if (\n isContextual(ContextualKeyword._module) &&\n lookaheadCharCode() === charCodes.leftCurlyBrace &&\n !hasFollowingLineBreak()\n ) {\n parseModuleExpression();\n return false;\n }\n if (state.type & TokenType.IS_PREFIX) {\n next();\n parseMaybeUnary();\n return false;\n }\n\n const wasArrow = parseExprSubscripts();\n if (wasArrow) {\n return true;\n }\n while (state.type & TokenType.IS_POSTFIX && !canInsertSemicolon()) {\n // The tokenizer calls everything a preincrement, so make it a postincrement when\n // we see it in that context.\n if (state.type === tt.preIncDec) {\n state.type = tt.postIncDec;\n }\n next();\n }\n return false;\n}\n\n// Parse call, dot, and `[]`-subscript expressions.\n// Returns true if this was an arrow function.\nexport function parseExprSubscripts() {\n const startTokenIndex = state.tokens.length;\n const wasArrow = parseExprAtom();\n if (wasArrow) {\n return true;\n }\n parseSubscripts(startTokenIndex);\n // If there was any optional chain operation, the start token would be marked\n // as such, so also mark the end now.\n if (state.tokens.length > startTokenIndex && state.tokens[startTokenIndex].isOptionalChainStart) {\n state.tokens[state.tokens.length - 1].isOptionalChainEnd = true;\n }\n return false;\n}\n\nfunction parseSubscripts(startTokenIndex, noCalls = false) {\n if (isFlowEnabled) {\n flowParseSubscripts(startTokenIndex, noCalls);\n } else {\n baseParseSubscripts(startTokenIndex, noCalls);\n }\n}\n\nexport function baseParseSubscripts(startTokenIndex, noCalls = false) {\n const stopState = new StopState(false);\n do {\n parseSubscript(startTokenIndex, noCalls, stopState);\n } while (!stopState.stop && !state.error);\n}\n\nfunction parseSubscript(startTokenIndex, noCalls, stopState) {\n if (isTypeScriptEnabled) {\n tsParseSubscript(startTokenIndex, noCalls, stopState);\n } else if (isFlowEnabled) {\n flowParseSubscript(startTokenIndex, noCalls, stopState);\n } else {\n baseParseSubscript(startTokenIndex, noCalls, stopState);\n }\n}\n\n/** Set 'state.stop = true' to indicate that we should stop parsing subscripts. */\nexport function baseParseSubscript(\n startTokenIndex,\n noCalls,\n stopState,\n) {\n if (!noCalls && eat(tt.doubleColon)) {\n parseNoCallExpr();\n stopState.stop = true;\n // Propagate startTokenIndex so that `a::b?.()` will keep `a` as the first token. We may want\n // to revisit this in the future when fully supporting bind syntax.\n parseSubscripts(startTokenIndex, noCalls);\n } else if (match(tt.questionDot)) {\n state.tokens[startTokenIndex].isOptionalChainStart = true;\n if (noCalls && lookaheadType() === tt.parenL) {\n stopState.stop = true;\n return;\n }\n next();\n state.tokens[state.tokens.length - 1].subscriptStartIndex = startTokenIndex;\n\n if (eat(tt.bracketL)) {\n parseExpression();\n expect(tt.bracketR);\n } else if (eat(tt.parenL)) {\n parseCallExpressionArguments();\n } else {\n parseMaybePrivateName();\n }\n } else if (eat(tt.dot)) {\n state.tokens[state.tokens.length - 1].subscriptStartIndex = startTokenIndex;\n parseMaybePrivateName();\n } else if (eat(tt.bracketL)) {\n state.tokens[state.tokens.length - 1].subscriptStartIndex = startTokenIndex;\n parseExpression();\n expect(tt.bracketR);\n } else if (!noCalls && match(tt.parenL)) {\n if (atPossibleAsync()) {\n // We see \"async\", but it's possible it's a usage of the name \"async\". Parse as if it's a\n // function call, and if we see an arrow later, backtrack and re-parse as a parameter list.\n const snapshot = state.snapshot();\n const asyncStartTokenIndex = state.tokens.length;\n next();\n state.tokens[state.tokens.length - 1].subscriptStartIndex = startTokenIndex;\n\n const callContextId = getNextContextId();\n\n state.tokens[state.tokens.length - 1].contextId = callContextId;\n parseCallExpressionArguments();\n state.tokens[state.tokens.length - 1].contextId = callContextId;\n\n if (shouldParseAsyncArrow()) {\n // We hit an arrow, so backtrack and start again parsing function parameters.\n state.restoreFromSnapshot(snapshot);\n stopState.stop = true;\n state.scopeDepth++;\n\n parseFunctionParams();\n parseAsyncArrowFromCallExpression(asyncStartTokenIndex);\n }\n } else {\n next();\n state.tokens[state.tokens.length - 1].subscriptStartIndex = startTokenIndex;\n const callContextId = getNextContextId();\n state.tokens[state.tokens.length - 1].contextId = callContextId;\n parseCallExpressionArguments();\n state.tokens[state.tokens.length - 1].contextId = callContextId;\n }\n } else if (match(tt.backQuote)) {\n // Tagged template expression.\n parseTemplate();\n } else {\n stopState.stop = true;\n }\n}\n\nexport function atPossibleAsync() {\n // This was made less strict than the original version to avoid passing around nodes, but it\n // should be safe to have rare false positives here.\n return (\n state.tokens[state.tokens.length - 1].contextualKeyword === ContextualKeyword._async &&\n !canInsertSemicolon()\n );\n}\n\nexport function parseCallExpressionArguments() {\n let first = true;\n while (!eat(tt.parenR) && !state.error) {\n if (first) {\n first = false;\n } else {\n expect(tt.comma);\n if (eat(tt.parenR)) {\n break;\n }\n }\n\n parseExprListItem(false);\n }\n}\n\nfunction shouldParseAsyncArrow() {\n return match(tt.colon) || match(tt.arrow);\n}\n\nfunction parseAsyncArrowFromCallExpression(startTokenIndex) {\n if (isTypeScriptEnabled) {\n tsStartParseAsyncArrowFromCallExpression();\n } else if (isFlowEnabled) {\n flowStartParseAsyncArrowFromCallExpression();\n }\n expect(tt.arrow);\n parseArrowExpression(startTokenIndex);\n}\n\n// Parse a no-call expression (like argument of `new` or `::` operators).\n\nfunction parseNoCallExpr() {\n const startTokenIndex = state.tokens.length;\n parseExprAtom();\n parseSubscripts(startTokenIndex, true);\n}\n\n// Parse an atomic expression \u2014 either a single token that is an\n// expression, an expression started by a keyword like `function` or\n// `new`, or an expression wrapped in punctuation like `()`, `[]`,\n// or `{}`.\n// Returns true if the parsed expression was an arrow function.\nexport function parseExprAtom() {\n if (eat(tt.modulo)) {\n // V8 intrinsic expression. Just parse the identifier, and the function invocation is parsed\n // naturally.\n parseIdentifier();\n return false;\n }\n\n if (match(tt.jsxText) || match(tt.jsxEmptyText)) {\n parseLiteral();\n return false;\n } else if (match(tt.lessThan) && isJSXEnabled) {\n state.type = tt.jsxTagStart;\n jsxParseElement();\n next();\n return false;\n }\n\n const canBeArrow = state.potentialArrowAt === state.start;\n switch (state.type) {\n case tt.slash:\n case tt.assign:\n retokenizeSlashAsRegex();\n // Fall through.\n\n case tt._super:\n case tt._this:\n case tt.regexp:\n case tt.num:\n case tt.bigint:\n case tt.decimal:\n case tt.string:\n case tt._null:\n case tt._true:\n case tt._false:\n next();\n return false;\n\n case tt._import:\n next();\n if (match(tt.dot)) {\n // import.meta\n state.tokens[state.tokens.length - 1].type = tt.name;\n next();\n parseIdentifier();\n }\n return false;\n\n case tt.name: {\n const startTokenIndex = state.tokens.length;\n const functionStart = state.start;\n const contextualKeyword = state.contextualKeyword;\n parseIdentifier();\n if (contextualKeyword === ContextualKeyword._await) {\n parseAwait();\n return false;\n } else if (\n contextualKeyword === ContextualKeyword._async &&\n match(tt._function) &&\n !canInsertSemicolon()\n ) {\n next();\n parseFunction(functionStart, false);\n return false;\n } else if (\n canBeArrow &&\n contextualKeyword === ContextualKeyword._async &&\n !canInsertSemicolon() &&\n match(tt.name)\n ) {\n state.scopeDepth++;\n parseBindingIdentifier(false);\n expect(tt.arrow);\n // let foo = async bar => {};\n parseArrowExpression(startTokenIndex);\n return true;\n } else if (match(tt._do) && !canInsertSemicolon()) {\n next();\n parseBlock();\n return false;\n }\n\n if (canBeArrow && !canInsertSemicolon() && match(tt.arrow)) {\n state.scopeDepth++;\n markPriorBindingIdentifier(false);\n expect(tt.arrow);\n parseArrowExpression(startTokenIndex);\n return true;\n }\n\n state.tokens[state.tokens.length - 1].identifierRole = IdentifierRole.Access;\n return false;\n }\n\n case tt._do: {\n next();\n parseBlock();\n return false;\n }\n\n case tt.parenL: {\n const wasArrow = parseParenAndDistinguishExpression(canBeArrow);\n return wasArrow;\n }\n\n case tt.bracketL:\n next();\n parseExprList(tt.bracketR, true);\n return false;\n\n case tt.braceL:\n parseObj(false, false);\n return false;\n\n case tt._function:\n parseFunctionExpression();\n return false;\n\n case tt.at:\n parseDecorators();\n // Fall through.\n\n case tt._class:\n parseClass(false);\n return false;\n\n case tt._new:\n parseNew();\n return false;\n\n case tt.backQuote:\n parseTemplate();\n return false;\n\n case tt.doubleColon: {\n next();\n parseNoCallExpr();\n return false;\n }\n\n case tt.hash: {\n const code = lookaheadCharCode();\n if (IS_IDENTIFIER_START[code] || code === charCodes.backslash) {\n parseMaybePrivateName();\n } else {\n next();\n }\n // Smart pipeline topic reference.\n return false;\n }\n\n default:\n unexpected();\n return false;\n }\n}\n\nfunction parseMaybePrivateName() {\n eat(tt.hash);\n parseIdentifier();\n}\n\nfunction parseFunctionExpression() {\n const functionStart = state.start;\n parseIdentifier();\n if (eat(tt.dot)) {\n // function.sent\n parseIdentifier();\n }\n parseFunction(functionStart, false);\n}\n\nexport function parseLiteral() {\n next();\n}\n\nexport function parseParenExpression() {\n expect(tt.parenL);\n parseExpression();\n expect(tt.parenR);\n}\n\n// Returns true if this was an arrow expression.\nfunction parseParenAndDistinguishExpression(canBeArrow) {\n // Assume this is a normal parenthesized expression, but if we see an arrow, we'll bail and\n // start over as a parameter list.\n const snapshot = state.snapshot();\n\n const startTokenIndex = state.tokens.length;\n expect(tt.parenL);\n\n let first = true;\n\n while (!match(tt.parenR) && !state.error) {\n if (first) {\n first = false;\n } else {\n expect(tt.comma);\n if (match(tt.parenR)) {\n break;\n }\n }\n\n if (match(tt.ellipsis)) {\n parseRest(false /* isBlockScope */);\n parseParenItem();\n break;\n } else {\n parseMaybeAssign(false, true);\n }\n }\n\n expect(tt.parenR);\n\n if (canBeArrow && shouldParseArrow()) {\n const wasArrow = parseArrow();\n if (wasArrow) {\n // It was an arrow function this whole time, so start over and parse it as params so that we\n // get proper token annotations.\n state.restoreFromSnapshot(snapshot);\n state.scopeDepth++;\n // Don't specify a context ID because arrow functions don't need a context ID.\n parseFunctionParams();\n parseArrow();\n parseArrowExpression(startTokenIndex);\n if (state.error) {\n // Nevermind! This must have been something that looks very much like an\n // arrow function but where its \"parameter list\" isn't actually a valid\n // parameter list. Force non-arrow parsing.\n // See https://github.com/alangpierce/sucrase/issues/666 for an example.\n state.restoreFromSnapshot(snapshot);\n parseParenAndDistinguishExpression(false);\n return false;\n }\n return true;\n }\n }\n\n return false;\n}\n\nfunction shouldParseArrow() {\n return match(tt.colon) || !canInsertSemicolon();\n}\n\n// Returns whether there was an arrow token.\nexport function parseArrow() {\n if (isTypeScriptEnabled) {\n return tsParseArrow();\n } else if (isFlowEnabled) {\n return flowParseArrow();\n } else {\n return eat(tt.arrow);\n }\n}\n\nfunction parseParenItem() {\n if (isTypeScriptEnabled || isFlowEnabled) {\n typedParseParenItem();\n }\n}\n\n// New's precedence is slightly tricky. It must allow its argument to\n// be a `[]` or dot subscript expression, but not a call \u2014 at least,\n// not without wrapping it in parentheses. Thus, it uses the noCalls\n// argument to parseSubscripts to prevent it from consuming the\n// argument list.\nfunction parseNew() {\n expect(tt._new);\n if (eat(tt.dot)) {\n // new.target\n parseIdentifier();\n return;\n }\n parseNewCallee();\n if (isFlowEnabled) {\n flowStartParseNewArguments();\n }\n if (eat(tt.parenL)) {\n parseExprList(tt.parenR);\n }\n}\n\nfunction parseNewCallee() {\n parseNoCallExpr();\n eat(tt.questionDot);\n}\n\nexport function parseTemplate() {\n // Finish `, read quasi\n nextTemplateToken();\n // Finish quasi, read ${\n nextTemplateToken();\n while (!match(tt.backQuote) && !state.error) {\n expect(tt.dollarBraceL);\n parseExpression();\n // Finish }, read quasi\n nextTemplateToken();\n // Finish quasi, read either ${ or `\n nextTemplateToken();\n }\n next();\n}\n\n// Parse an object literal or binding pattern.\nexport function parseObj(isPattern, isBlockScope) {\n // Attach a context ID to the object open and close brace and each object key.\n const contextId = getNextContextId();\n let first = true;\n\n next();\n state.tokens[state.tokens.length - 1].contextId = contextId;\n\n while (!eat(tt.braceR) && !state.error) {\n if (first) {\n first = false;\n } else {\n expect(tt.comma);\n if (eat(tt.braceR)) {\n break;\n }\n }\n\n let isGenerator = false;\n if (match(tt.ellipsis)) {\n const previousIndex = state.tokens.length;\n parseSpread();\n if (isPattern) {\n // Mark role when the only thing being spread over is an identifier.\n if (state.tokens.length === previousIndex + 2) {\n markPriorBindingIdentifier(isBlockScope);\n }\n if (eat(tt.braceR)) {\n break;\n }\n }\n continue;\n }\n\n if (!isPattern) {\n isGenerator = eat(tt.star);\n }\n\n if (!isPattern && isContextual(ContextualKeyword._async)) {\n if (isGenerator) unexpected();\n\n parseIdentifier();\n if (\n match(tt.colon) ||\n match(tt.parenL) ||\n match(tt.braceR) ||\n match(tt.eq) ||\n match(tt.comma)\n ) {\n // This is a key called \"async\" rather than an async function.\n } else {\n if (match(tt.star)) {\n next();\n isGenerator = true;\n }\n parsePropertyName(contextId);\n }\n } else {\n parsePropertyName(contextId);\n }\n\n parseObjPropValue(isPattern, isBlockScope, contextId);\n }\n\n state.tokens[state.tokens.length - 1].contextId = contextId;\n}\n\nfunction isGetterOrSetterMethod(isPattern) {\n // We go off of the next and don't bother checking if the node key is actually \"get\" or \"set\".\n // This lets us avoid generating a node, and should only make the validation worse.\n return (\n !isPattern &&\n (match(tt.string) || // get \"string\"() {}\n match(tt.num) || // get 1() {}\n match(tt.bracketL) || // get [\"string\"]() {}\n match(tt.name) || // get foo() {}\n !!(state.type & TokenType.IS_KEYWORD)) // get debugger() {}\n );\n}\n\n// Returns true if this was a method.\nfunction parseObjectMethod(isPattern, objectContextId) {\n // We don't need to worry about modifiers because object methods can't have optional bodies, so\n // the start will never be used.\n const functionStart = state.start;\n if (match(tt.parenL)) {\n if (isPattern) unexpected();\n parseMethod(functionStart, /* isConstructor */ false);\n return true;\n }\n\n if (isGetterOrSetterMethod(isPattern)) {\n parsePropertyName(objectContextId);\n parseMethod(functionStart, /* isConstructor */ false);\n return true;\n }\n return false;\n}\n\nfunction parseObjectProperty(isPattern, isBlockScope) {\n if (eat(tt.colon)) {\n if (isPattern) {\n parseMaybeDefault(isBlockScope);\n } else {\n parseMaybeAssign(false);\n }\n return;\n }\n\n // Since there's no colon, we assume this is an object shorthand.\n\n // If we're in a destructuring, we've now discovered that the key was actually an assignee, so\n // we need to tag it as a declaration with the appropriate scope. Otherwise, we might need to\n // transform it on access, so mark it as a normal object shorthand.\n let identifierRole;\n if (isPattern) {\n if (state.scopeDepth === 0) {\n identifierRole = IdentifierRole.ObjectShorthandTopLevelDeclaration;\n } else if (isBlockScope) {\n identifierRole = IdentifierRole.ObjectShorthandBlockScopedDeclaration;\n } else {\n identifierRole = IdentifierRole.ObjectShorthandFunctionScopedDeclaration;\n }\n } else {\n identifierRole = IdentifierRole.ObjectShorthand;\n }\n state.tokens[state.tokens.length - 1].identifierRole = identifierRole;\n\n // Regardless of whether we know this to be a pattern or if we're in an ambiguous context, allow\n // parsing as if there's a default value.\n parseMaybeDefault(isBlockScope, true);\n}\n\nfunction parseObjPropValue(\n isPattern,\n isBlockScope,\n objectContextId,\n) {\n if (isTypeScriptEnabled) {\n tsStartParseObjPropValue();\n } else if (isFlowEnabled) {\n flowStartParseObjPropValue();\n }\n const wasMethod = parseObjectMethod(isPattern, objectContextId);\n if (!wasMethod) {\n parseObjectProperty(isPattern, isBlockScope);\n }\n}\n\nexport function parsePropertyName(objectContextId) {\n if (isFlowEnabled) {\n flowParseVariance();\n }\n if (eat(tt.bracketL)) {\n state.tokens[state.tokens.length - 1].contextId = objectContextId;\n parseMaybeAssign();\n expect(tt.bracketR);\n state.tokens[state.tokens.length - 1].contextId = objectContextId;\n } else {\n if (match(tt.num) || match(tt.string) || match(tt.bigint) || match(tt.decimal)) {\n parseExprAtom();\n } else {\n parseMaybePrivateName();\n }\n\n state.tokens[state.tokens.length - 1].identifierRole = IdentifierRole.ObjectKey;\n state.tokens[state.tokens.length - 1].contextId = objectContextId;\n }\n}\n\n// Parse object or class method.\nexport function parseMethod(functionStart, isConstructor) {\n const funcContextId = getNextContextId();\n\n state.scopeDepth++;\n const startTokenIndex = state.tokens.length;\n const allowModifiers = isConstructor; // For TypeScript parameter properties\n parseFunctionParams(allowModifiers, funcContextId);\n parseFunctionBodyAndFinish(functionStart, funcContextId);\n const endTokenIndex = state.tokens.length;\n state.scopes.push(new Scope(startTokenIndex, endTokenIndex, true));\n state.scopeDepth--;\n}\n\n// Parse arrow function expression.\n// If the parameters are provided, they will be converted to an\n// assignable list.\nexport function parseArrowExpression(startTokenIndex) {\n parseFunctionBody(true);\n const endTokenIndex = state.tokens.length;\n state.scopes.push(new Scope(startTokenIndex, endTokenIndex, true));\n state.scopeDepth--;\n}\n\nexport function parseFunctionBodyAndFinish(functionStart, funcContextId = 0) {\n if (isTypeScriptEnabled) {\n tsParseFunctionBodyAndFinish(functionStart, funcContextId);\n } else if (isFlowEnabled) {\n flowParseFunctionBodyAndFinish(funcContextId);\n } else {\n parseFunctionBody(false, funcContextId);\n }\n}\n\nexport function parseFunctionBody(allowExpression, funcContextId = 0) {\n const isExpression = allowExpression && !match(tt.braceL);\n\n if (isExpression) {\n parseMaybeAssign();\n } else {\n parseBlock(true /* isFunctionScope */, funcContextId);\n }\n}\n\n// Parses a comma-separated list of expressions, and returns them as\n// an array. `close` is the token type that ends the list, and\n// `allowEmpty` can be turned on to allow subsequent commas with\n// nothing in between them to be parsed as `null` (which is needed\n// for array literals).\n\nfunction parseExprList(close, allowEmpty = false) {\n let first = true;\n while (!eat(close) && !state.error) {\n if (first) {\n first = false;\n } else {\n expect(tt.comma);\n if (eat(close)) break;\n }\n parseExprListItem(allowEmpty);\n }\n}\n\nfunction parseExprListItem(allowEmpty) {\n if (allowEmpty && match(tt.comma)) {\n // Empty item; nothing more to parse for this item.\n } else if (match(tt.ellipsis)) {\n parseSpread();\n parseParenItem();\n } else if (match(tt.question)) {\n // Partial function application proposal.\n next();\n } else {\n parseMaybeAssign(false, true);\n }\n}\n\n// Parse the next token as an identifier.\nexport function parseIdentifier() {\n next();\n state.tokens[state.tokens.length - 1].type = tt.name;\n}\n\n// Parses await expression inside async function.\nfunction parseAwait() {\n parseMaybeUnary();\n}\n\n// Parses yield expression inside generator.\nfunction parseYield() {\n next();\n if (!match(tt.semi) && !canInsertSemicolon()) {\n eat(tt.star);\n parseMaybeAssign();\n }\n}\n\n// https://github.com/tc39/proposal-js-module-blocks\nfunction parseModuleExpression() {\n expectContextual(ContextualKeyword._module);\n expect(tt.braceL);\n // For now, just call parseBlockBody to parse the block. In the future when we\n // implement full support, we'll want to emit scopes and possibly other\n // information.\n parseBlockBody(tt.braceR);\n}\n", "/* eslint max-len: 0 */\n\nimport {\n eat,\n lookaheadType,\n lookaheadTypeAndKeyword,\n match,\n next,\n popTypeContext,\n pushTypeContext,\n\n} from \"../tokenizer/index\";\nimport {ContextualKeyword} from \"../tokenizer/keywords\";\nimport {TokenType, TokenType as tt} from \"../tokenizer/types\";\nimport {input, state} from \"../traverser/base\";\nimport {\n baseParseMaybeAssign,\n baseParseSubscript,\n baseParseSubscripts,\n parseArrow,\n parseArrowExpression,\n parseCallExpressionArguments,\n parseExprAtom,\n parseExpression,\n parseFunctionBody,\n parseIdentifier,\n parseLiteral,\n\n} from \"../traverser/expression\";\nimport {\n baseParseExportStar,\n parseExport,\n parseExportFrom,\n parseExportSpecifiers,\n parseFunctionParams,\n parseImport,\n parseStatement,\n} from \"../traverser/statement\";\nimport {\n canInsertSemicolon,\n eatContextual,\n expect,\n expectContextual,\n isContextual,\n isLookaheadContextual,\n semicolon,\n unexpected,\n} from \"../traverser/util\";\n\nfunction isMaybeDefaultImport(lookahead) {\n return (\n (lookahead.type === tt.name || !!(lookahead.type & TokenType.IS_KEYWORD)) &&\n lookahead.contextualKeyword !== ContextualKeyword._from\n );\n}\n\nfunction flowParseTypeInitialiser(tok) {\n const oldIsType = pushTypeContext(0);\n expect(tok || tt.colon);\n flowParseType();\n popTypeContext(oldIsType);\n}\n\nfunction flowParsePredicate() {\n expect(tt.modulo);\n expectContextual(ContextualKeyword._checks);\n if (eat(tt.parenL)) {\n parseExpression();\n expect(tt.parenR);\n }\n}\n\nfunction flowParseTypeAndPredicateInitialiser() {\n const oldIsType = pushTypeContext(0);\n expect(tt.colon);\n if (match(tt.modulo)) {\n flowParsePredicate();\n } else {\n flowParseType();\n if (match(tt.modulo)) {\n flowParsePredicate();\n }\n }\n popTypeContext(oldIsType);\n}\n\nfunction flowParseDeclareClass() {\n next();\n flowParseInterfaceish(/* isClass */ true);\n}\n\nfunction flowParseDeclareFunction() {\n next();\n parseIdentifier();\n\n if (match(tt.lessThan)) {\n flowParseTypeParameterDeclaration();\n }\n\n expect(tt.parenL);\n flowParseFunctionTypeParams();\n expect(tt.parenR);\n\n flowParseTypeAndPredicateInitialiser();\n\n semicolon();\n}\n\nfunction flowParseDeclare() {\n if (match(tt._class)) {\n flowParseDeclareClass();\n } else if (match(tt._function)) {\n flowParseDeclareFunction();\n } else if (match(tt._var)) {\n flowParseDeclareVariable();\n } else if (eatContextual(ContextualKeyword._module)) {\n if (eat(tt.dot)) {\n flowParseDeclareModuleExports();\n } else {\n flowParseDeclareModule();\n }\n } else if (isContextual(ContextualKeyword._type)) {\n flowParseDeclareTypeAlias();\n } else if (isContextual(ContextualKeyword._opaque)) {\n flowParseDeclareOpaqueType();\n } else if (isContextual(ContextualKeyword._interface)) {\n flowParseDeclareInterface();\n } else if (match(tt._export)) {\n flowParseDeclareExportDeclaration();\n } else {\n unexpected();\n }\n}\n\nfunction flowParseDeclareVariable() {\n next();\n flowParseTypeAnnotatableIdentifier();\n semicolon();\n}\n\nfunction flowParseDeclareModule() {\n if (match(tt.string)) {\n parseExprAtom();\n } else {\n parseIdentifier();\n }\n\n expect(tt.braceL);\n while (!match(tt.braceR) && !state.error) {\n if (match(tt._import)) {\n next();\n parseImport();\n } else {\n unexpected();\n }\n }\n expect(tt.braceR);\n}\n\nfunction flowParseDeclareExportDeclaration() {\n expect(tt._export);\n\n if (eat(tt._default)) {\n if (match(tt._function) || match(tt._class)) {\n // declare export default class ...\n // declare export default function ...\n flowParseDeclare();\n } else {\n // declare export default [type];\n flowParseType();\n semicolon();\n }\n } else if (\n match(tt._var) || // declare export var ...\n match(tt._function) || // declare export function ...\n match(tt._class) || // declare export class ...\n isContextual(ContextualKeyword._opaque) // declare export opaque ..\n ) {\n flowParseDeclare();\n } else if (\n match(tt.star) || // declare export * from ''\n match(tt.braceL) || // declare export {} ...\n isContextual(ContextualKeyword._interface) || // declare export interface ...\n isContextual(ContextualKeyword._type) || // declare export type ...\n isContextual(ContextualKeyword._opaque) // declare export opaque type ...\n ) {\n parseExport();\n } else {\n unexpected();\n }\n}\n\nfunction flowParseDeclareModuleExports() {\n expectContextual(ContextualKeyword._exports);\n flowParseTypeAnnotation();\n semicolon();\n}\n\nfunction flowParseDeclareTypeAlias() {\n next();\n flowParseTypeAlias();\n}\n\nfunction flowParseDeclareOpaqueType() {\n next();\n flowParseOpaqueType(true);\n}\n\nfunction flowParseDeclareInterface() {\n next();\n flowParseInterfaceish();\n}\n\n// Interfaces\n\nfunction flowParseInterfaceish(isClass = false) {\n flowParseRestrictedIdentifier();\n\n if (match(tt.lessThan)) {\n flowParseTypeParameterDeclaration();\n }\n\n if (eat(tt._extends)) {\n do {\n flowParseInterfaceExtends();\n } while (!isClass && eat(tt.comma));\n }\n\n if (isContextual(ContextualKeyword._mixins)) {\n next();\n do {\n flowParseInterfaceExtends();\n } while (eat(tt.comma));\n }\n\n if (isContextual(ContextualKeyword._implements)) {\n next();\n do {\n flowParseInterfaceExtends();\n } while (eat(tt.comma));\n }\n\n flowParseObjectType(isClass, false, isClass);\n}\n\nfunction flowParseInterfaceExtends() {\n flowParseQualifiedTypeIdentifier(false);\n if (match(tt.lessThan)) {\n flowParseTypeParameterInstantiation();\n }\n}\n\nfunction flowParseInterface() {\n flowParseInterfaceish();\n}\n\nfunction flowParseRestrictedIdentifier() {\n parseIdentifier();\n}\n\nfunction flowParseTypeAlias() {\n flowParseRestrictedIdentifier();\n\n if (match(tt.lessThan)) {\n flowParseTypeParameterDeclaration();\n }\n\n flowParseTypeInitialiser(tt.eq);\n semicolon();\n}\n\nfunction flowParseOpaqueType(declare) {\n expectContextual(ContextualKeyword._type);\n flowParseRestrictedIdentifier();\n\n if (match(tt.lessThan)) {\n flowParseTypeParameterDeclaration();\n }\n\n // Parse the supertype\n if (match(tt.colon)) {\n flowParseTypeInitialiser(tt.colon);\n }\n\n if (!declare) {\n flowParseTypeInitialiser(tt.eq);\n }\n semicolon();\n}\n\nfunction flowParseTypeParameter() {\n flowParseVariance();\n flowParseTypeAnnotatableIdentifier();\n\n if (eat(tt.eq)) {\n flowParseType();\n }\n}\n\nexport function flowParseTypeParameterDeclaration() {\n const oldIsType = pushTypeContext(0);\n // istanbul ignore else: this condition is already checked at all call sites\n if (match(tt.lessThan) || match(tt.typeParameterStart)) {\n next();\n } else {\n unexpected();\n }\n\n do {\n flowParseTypeParameter();\n if (!match(tt.greaterThan)) {\n expect(tt.comma);\n }\n } while (!match(tt.greaterThan) && !state.error);\n expect(tt.greaterThan);\n popTypeContext(oldIsType);\n}\n\nfunction flowParseTypeParameterInstantiation() {\n const oldIsType = pushTypeContext(0);\n expect(tt.lessThan);\n while (!match(tt.greaterThan) && !state.error) {\n flowParseType();\n if (!match(tt.greaterThan)) {\n expect(tt.comma);\n }\n }\n expect(tt.greaterThan);\n popTypeContext(oldIsType);\n}\n\nfunction flowParseInterfaceType() {\n expectContextual(ContextualKeyword._interface);\n if (eat(tt._extends)) {\n do {\n flowParseInterfaceExtends();\n } while (eat(tt.comma));\n }\n flowParseObjectType(false, false, false);\n}\n\nfunction flowParseObjectPropertyKey() {\n if (match(tt.num) || match(tt.string)) {\n parseExprAtom();\n } else {\n parseIdentifier();\n }\n}\n\nfunction flowParseObjectTypeIndexer() {\n // Note: bracketL has already been consumed\n if (lookaheadType() === tt.colon) {\n flowParseObjectPropertyKey();\n flowParseTypeInitialiser();\n } else {\n flowParseType();\n }\n expect(tt.bracketR);\n flowParseTypeInitialiser();\n}\n\nfunction flowParseObjectTypeInternalSlot() {\n // Note: both bracketL have already been consumed\n flowParseObjectPropertyKey();\n expect(tt.bracketR);\n expect(tt.bracketR);\n if (match(tt.lessThan) || match(tt.parenL)) {\n flowParseObjectTypeMethodish();\n } else {\n eat(tt.question);\n flowParseTypeInitialiser();\n }\n}\n\nfunction flowParseObjectTypeMethodish() {\n if (match(tt.lessThan)) {\n flowParseTypeParameterDeclaration();\n }\n\n expect(tt.parenL);\n while (!match(tt.parenR) && !match(tt.ellipsis) && !state.error) {\n flowParseFunctionTypeParam();\n if (!match(tt.parenR)) {\n expect(tt.comma);\n }\n }\n\n if (eat(tt.ellipsis)) {\n flowParseFunctionTypeParam();\n }\n expect(tt.parenR);\n flowParseTypeInitialiser();\n}\n\nfunction flowParseObjectTypeCallProperty() {\n flowParseObjectTypeMethodish();\n}\n\nfunction flowParseObjectType(allowStatic, allowExact, allowProto) {\n let endDelim;\n if (allowExact && match(tt.braceBarL)) {\n expect(tt.braceBarL);\n endDelim = tt.braceBarR;\n } else {\n expect(tt.braceL);\n endDelim = tt.braceR;\n }\n\n while (!match(endDelim) && !state.error) {\n if (allowProto && isContextual(ContextualKeyword._proto)) {\n const lookahead = lookaheadType();\n if (lookahead !== tt.colon && lookahead !== tt.question) {\n next();\n allowStatic = false;\n }\n }\n if (allowStatic && isContextual(ContextualKeyword._static)) {\n const lookahead = lookaheadType();\n if (lookahead !== tt.colon && lookahead !== tt.question) {\n next();\n }\n }\n\n flowParseVariance();\n\n if (eat(tt.bracketL)) {\n if (eat(tt.bracketL)) {\n flowParseObjectTypeInternalSlot();\n } else {\n flowParseObjectTypeIndexer();\n }\n } else if (match(tt.parenL) || match(tt.lessThan)) {\n flowParseObjectTypeCallProperty();\n } else {\n if (isContextual(ContextualKeyword._get) || isContextual(ContextualKeyword._set)) {\n const lookahead = lookaheadType();\n if (lookahead === tt.name || lookahead === tt.string || lookahead === tt.num) {\n next();\n }\n }\n\n flowParseObjectTypeProperty();\n }\n\n flowObjectTypeSemicolon();\n }\n\n expect(endDelim);\n}\n\nfunction flowParseObjectTypeProperty() {\n if (match(tt.ellipsis)) {\n expect(tt.ellipsis);\n if (!eat(tt.comma)) {\n eat(tt.semi);\n }\n // Explicit inexact object syntax.\n if (match(tt.braceR)) {\n return;\n }\n flowParseType();\n } else {\n flowParseObjectPropertyKey();\n if (match(tt.lessThan) || match(tt.parenL)) {\n // This is a method property\n flowParseObjectTypeMethodish();\n } else {\n eat(tt.question);\n flowParseTypeInitialiser();\n }\n }\n}\n\nfunction flowObjectTypeSemicolon() {\n if (!eat(tt.semi) && !eat(tt.comma) && !match(tt.braceR) && !match(tt.braceBarR)) {\n unexpected();\n }\n}\n\nfunction flowParseQualifiedTypeIdentifier(initialIdAlreadyParsed) {\n if (!initialIdAlreadyParsed) {\n parseIdentifier();\n }\n while (eat(tt.dot)) {\n parseIdentifier();\n }\n}\n\nfunction flowParseGenericType() {\n flowParseQualifiedTypeIdentifier(true);\n if (match(tt.lessThan)) {\n flowParseTypeParameterInstantiation();\n }\n}\n\nfunction flowParseTypeofType() {\n expect(tt._typeof);\n flowParsePrimaryType();\n}\n\nfunction flowParseTupleType() {\n expect(tt.bracketL);\n // We allow trailing commas\n while (state.pos < input.length && !match(tt.bracketR)) {\n flowParseType();\n if (match(tt.bracketR)) {\n break;\n }\n expect(tt.comma);\n }\n expect(tt.bracketR);\n}\n\nfunction flowParseFunctionTypeParam() {\n const lookahead = lookaheadType();\n if (lookahead === tt.colon || lookahead === tt.question) {\n parseIdentifier();\n eat(tt.question);\n flowParseTypeInitialiser();\n } else {\n flowParseType();\n }\n}\n\nfunction flowParseFunctionTypeParams() {\n while (!match(tt.parenR) && !match(tt.ellipsis) && !state.error) {\n flowParseFunctionTypeParam();\n if (!match(tt.parenR)) {\n expect(tt.comma);\n }\n }\n if (eat(tt.ellipsis)) {\n flowParseFunctionTypeParam();\n }\n}\n\n// The parsing of types roughly parallels the parsing of expressions, and\n// primary types are kind of like primary expressions...they're the\n// primitives with which other types are constructed.\nfunction flowParsePrimaryType() {\n let isGroupedType = false;\n const oldNoAnonFunctionType = state.noAnonFunctionType;\n\n switch (state.type) {\n case tt.name: {\n if (isContextual(ContextualKeyword._interface)) {\n flowParseInterfaceType();\n return;\n }\n parseIdentifier();\n flowParseGenericType();\n return;\n }\n\n case tt.braceL:\n flowParseObjectType(false, false, false);\n return;\n\n case tt.braceBarL:\n flowParseObjectType(false, true, false);\n return;\n\n case tt.bracketL:\n flowParseTupleType();\n return;\n\n case tt.lessThan:\n flowParseTypeParameterDeclaration();\n expect(tt.parenL);\n flowParseFunctionTypeParams();\n expect(tt.parenR);\n expect(tt.arrow);\n flowParseType();\n return;\n\n case tt.parenL:\n next();\n\n // Check to see if this is actually a grouped type\n if (!match(tt.parenR) && !match(tt.ellipsis)) {\n if (match(tt.name)) {\n const token = lookaheadType();\n isGroupedType = token !== tt.question && token !== tt.colon;\n } else {\n isGroupedType = true;\n }\n }\n\n if (isGroupedType) {\n state.noAnonFunctionType = false;\n flowParseType();\n state.noAnonFunctionType = oldNoAnonFunctionType;\n\n // A `,` or a `) =>` means this is an anonymous function type\n if (\n state.noAnonFunctionType ||\n !(match(tt.comma) || (match(tt.parenR) && lookaheadType() === tt.arrow))\n ) {\n expect(tt.parenR);\n return;\n } else {\n // Eat a comma if there is one\n eat(tt.comma);\n }\n }\n\n flowParseFunctionTypeParams();\n\n expect(tt.parenR);\n expect(tt.arrow);\n flowParseType();\n return;\n\n case tt.minus:\n next();\n parseLiteral();\n return;\n\n case tt.string:\n case tt.num:\n case tt._true:\n case tt._false:\n case tt._null:\n case tt._this:\n case tt._void:\n case tt.star:\n next();\n return;\n\n default:\n if (state.type === tt._typeof) {\n flowParseTypeofType();\n return;\n } else if (state.type & TokenType.IS_KEYWORD) {\n next();\n state.tokens[state.tokens.length - 1].type = tt.name;\n return;\n }\n }\n\n unexpected();\n}\n\nfunction flowParsePostfixType() {\n flowParsePrimaryType();\n while (!canInsertSemicolon() && (match(tt.bracketL) || match(tt.questionDot))) {\n eat(tt.questionDot);\n expect(tt.bracketL);\n if (eat(tt.bracketR)) {\n // Array type\n } else {\n // Indexed access type\n flowParseType();\n expect(tt.bracketR);\n }\n }\n}\n\nfunction flowParsePrefixType() {\n if (eat(tt.question)) {\n flowParsePrefixType();\n } else {\n flowParsePostfixType();\n }\n}\n\nfunction flowParseAnonFunctionWithoutParens() {\n flowParsePrefixType();\n if (!state.noAnonFunctionType && eat(tt.arrow)) {\n flowParseType();\n }\n}\n\nfunction flowParseIntersectionType() {\n eat(tt.bitwiseAND);\n flowParseAnonFunctionWithoutParens();\n while (eat(tt.bitwiseAND)) {\n flowParseAnonFunctionWithoutParens();\n }\n}\n\nfunction flowParseUnionType() {\n eat(tt.bitwiseOR);\n flowParseIntersectionType();\n while (eat(tt.bitwiseOR)) {\n flowParseIntersectionType();\n }\n}\n\nfunction flowParseType() {\n flowParseUnionType();\n}\n\nexport function flowParseTypeAnnotation() {\n flowParseTypeInitialiser();\n}\n\nfunction flowParseTypeAnnotatableIdentifier() {\n parseIdentifier();\n if (match(tt.colon)) {\n flowParseTypeAnnotation();\n }\n}\n\nexport function flowParseVariance() {\n if (match(tt.plus) || match(tt.minus)) {\n next();\n state.tokens[state.tokens.length - 1].isType = true;\n }\n}\n\n// ==================================\n// Overrides\n// ==================================\n\nexport function flowParseFunctionBodyAndFinish(funcContextId) {\n // For arrow functions, `parseArrow` handles the return type itself.\n if (match(tt.colon)) {\n flowParseTypeAndPredicateInitialiser();\n }\n\n parseFunctionBody(false, funcContextId);\n}\n\nexport function flowParseSubscript(\n startTokenIndex,\n noCalls,\n stopState,\n) {\n if (match(tt.questionDot) && lookaheadType() === tt.lessThan) {\n if (noCalls) {\n stopState.stop = true;\n return;\n }\n next();\n flowParseTypeParameterInstantiation();\n expect(tt.parenL);\n parseCallExpressionArguments();\n return;\n } else if (!noCalls && match(tt.lessThan)) {\n const snapshot = state.snapshot();\n flowParseTypeParameterInstantiation();\n expect(tt.parenL);\n parseCallExpressionArguments();\n if (state.error) {\n state.restoreFromSnapshot(snapshot);\n } else {\n return;\n }\n }\n baseParseSubscript(startTokenIndex, noCalls, stopState);\n}\n\nexport function flowStartParseNewArguments() {\n if (match(tt.lessThan)) {\n const snapshot = state.snapshot();\n flowParseTypeParameterInstantiation();\n if (state.error) {\n state.restoreFromSnapshot(snapshot);\n }\n }\n}\n\n// interfaces\nexport function flowTryParseStatement() {\n if (match(tt.name) && state.contextualKeyword === ContextualKeyword._interface) {\n const oldIsType = pushTypeContext(0);\n next();\n flowParseInterface();\n popTypeContext(oldIsType);\n return true;\n } else if (isContextual(ContextualKeyword._enum)) {\n flowParseEnumDeclaration();\n return true;\n }\n return false;\n}\n\nexport function flowTryParseExportDefaultExpression() {\n if (isContextual(ContextualKeyword._enum)) {\n flowParseEnumDeclaration();\n return true;\n }\n return false;\n}\n\n// declares, interfaces and type aliases\nexport function flowParseIdentifierStatement(contextualKeyword) {\n if (contextualKeyword === ContextualKeyword._declare) {\n if (\n match(tt._class) ||\n match(tt.name) ||\n match(tt._function) ||\n match(tt._var) ||\n match(tt._export)\n ) {\n const oldIsType = pushTypeContext(1);\n flowParseDeclare();\n popTypeContext(oldIsType);\n }\n } else if (match(tt.name)) {\n if (contextualKeyword === ContextualKeyword._interface) {\n const oldIsType = pushTypeContext(1);\n flowParseInterface();\n popTypeContext(oldIsType);\n } else if (contextualKeyword === ContextualKeyword._type) {\n const oldIsType = pushTypeContext(1);\n flowParseTypeAlias();\n popTypeContext(oldIsType);\n } else if (contextualKeyword === ContextualKeyword._opaque) {\n const oldIsType = pushTypeContext(1);\n flowParseOpaqueType(false);\n popTypeContext(oldIsType);\n }\n }\n semicolon();\n}\n\n// export type\nexport function flowShouldParseExportDeclaration() {\n return (\n isContextual(ContextualKeyword._type) ||\n isContextual(ContextualKeyword._interface) ||\n isContextual(ContextualKeyword._opaque) ||\n isContextual(ContextualKeyword._enum)\n );\n}\n\nexport function flowShouldDisallowExportDefaultSpecifier() {\n return (\n match(tt.name) &&\n (state.contextualKeyword === ContextualKeyword._type ||\n state.contextualKeyword === ContextualKeyword._interface ||\n state.contextualKeyword === ContextualKeyword._opaque ||\n state.contextualKeyword === ContextualKeyword._enum)\n );\n}\n\nexport function flowParseExportDeclaration() {\n if (isContextual(ContextualKeyword._type)) {\n const oldIsType = pushTypeContext(1);\n next();\n\n if (match(tt.braceL)) {\n // export type { foo, bar };\n parseExportSpecifiers();\n parseExportFrom();\n } else {\n // export type Foo = Bar;\n flowParseTypeAlias();\n }\n popTypeContext(oldIsType);\n } else if (isContextual(ContextualKeyword._opaque)) {\n const oldIsType = pushTypeContext(1);\n next();\n // export opaque type Foo = Bar;\n flowParseOpaqueType(false);\n popTypeContext(oldIsType);\n } else if (isContextual(ContextualKeyword._interface)) {\n const oldIsType = pushTypeContext(1);\n next();\n flowParseInterface();\n popTypeContext(oldIsType);\n } else {\n parseStatement(true);\n }\n}\n\nexport function flowShouldParseExportStar() {\n return match(tt.star) || (isContextual(ContextualKeyword._type) && lookaheadType() === tt.star);\n}\n\nexport function flowParseExportStar() {\n if (eatContextual(ContextualKeyword._type)) {\n const oldIsType = pushTypeContext(2);\n baseParseExportStar();\n popTypeContext(oldIsType);\n } else {\n baseParseExportStar();\n }\n}\n\n// parse a the super class type parameters and implements\nexport function flowAfterParseClassSuper(hasSuper) {\n if (hasSuper && match(tt.lessThan)) {\n flowParseTypeParameterInstantiation();\n }\n if (isContextual(ContextualKeyword._implements)) {\n const oldIsType = pushTypeContext(0);\n next();\n state.tokens[state.tokens.length - 1].type = tt._implements;\n do {\n flowParseRestrictedIdentifier();\n if (match(tt.lessThan)) {\n flowParseTypeParameterInstantiation();\n }\n } while (eat(tt.comma));\n popTypeContext(oldIsType);\n }\n}\n\n// parse type parameters for object method shorthand\nexport function flowStartParseObjPropValue() {\n // method shorthand\n if (match(tt.lessThan)) {\n flowParseTypeParameterDeclaration();\n if (!match(tt.parenL)) unexpected();\n }\n}\n\nexport function flowParseAssignableListItemTypes() {\n const oldIsType = pushTypeContext(0);\n eat(tt.question);\n if (match(tt.colon)) {\n flowParseTypeAnnotation();\n }\n popTypeContext(oldIsType);\n}\n\n// parse typeof and type imports\nexport function flowStartParseImportSpecifiers() {\n if (match(tt._typeof) || isContextual(ContextualKeyword._type)) {\n const lh = lookaheadTypeAndKeyword();\n if (isMaybeDefaultImport(lh) || lh.type === tt.braceL || lh.type === tt.star) {\n next();\n }\n }\n}\n\n// parse import-type/typeof shorthand\nexport function flowParseImportSpecifier() {\n const isTypeKeyword =\n state.contextualKeyword === ContextualKeyword._type || state.type === tt._typeof;\n if (isTypeKeyword) {\n next();\n } else {\n parseIdentifier();\n }\n\n if (isContextual(ContextualKeyword._as) && !isLookaheadContextual(ContextualKeyword._as)) {\n parseIdentifier();\n if (isTypeKeyword && !match(tt.name) && !(state.type & TokenType.IS_KEYWORD)) {\n // `import {type as ,` or `import {type as }`\n } else {\n // `import {type as foo`\n parseIdentifier();\n }\n } else {\n if (isTypeKeyword && (match(tt.name) || !!(state.type & TokenType.IS_KEYWORD))) {\n // `import {type foo`\n parseIdentifier();\n }\n if (eatContextual(ContextualKeyword._as)) {\n parseIdentifier();\n }\n }\n}\n\n// parse function type parameters - function foo<T>() {}\nexport function flowStartParseFunctionParams() {\n // Originally this checked if the method is a getter/setter, but if it was, we'd crash soon\n // anyway, so don't try to propagate that information.\n if (match(tt.lessThan)) {\n const oldIsType = pushTypeContext(0);\n flowParseTypeParameterDeclaration();\n popTypeContext(oldIsType);\n }\n}\n\n// parse flow type annotations on variable declarator heads - let foo: string = bar\nexport function flowAfterParseVarHead() {\n if (match(tt.colon)) {\n flowParseTypeAnnotation();\n }\n}\n\n// parse the return type of an async arrow function - let foo = (async (): number => {});\nexport function flowStartParseAsyncArrowFromCallExpression() {\n if (match(tt.colon)) {\n const oldNoAnonFunctionType = state.noAnonFunctionType;\n state.noAnonFunctionType = true;\n flowParseTypeAnnotation();\n state.noAnonFunctionType = oldNoAnonFunctionType;\n }\n}\n\n// We need to support type parameter declarations for arrow functions. This\n// is tricky. There are three situations we need to handle\n//\n// 1. This is either JSX or an arrow function. We'll try JSX first. If that\n// fails, we'll try an arrow function. If that fails, we'll throw the JSX\n// error.\n// 2. This is an arrow function. We'll parse the type parameter declaration,\n// parse the rest, make sure the rest is an arrow function, and go from\n// there\n// 3. This is neither. Just call the super method\nexport function flowParseMaybeAssign(noIn, isWithinParens) {\n if (match(tt.lessThan)) {\n const snapshot = state.snapshot();\n let wasArrow = baseParseMaybeAssign(noIn, isWithinParens);\n if (state.error) {\n state.restoreFromSnapshot(snapshot);\n state.type = tt.typeParameterStart;\n } else {\n return wasArrow;\n }\n\n const oldIsType = pushTypeContext(0);\n flowParseTypeParameterDeclaration();\n popTypeContext(oldIsType);\n wasArrow = baseParseMaybeAssign(noIn, isWithinParens);\n if (wasArrow) {\n return true;\n }\n unexpected();\n }\n\n return baseParseMaybeAssign(noIn, isWithinParens);\n}\n\n// handle return types for arrow functions\nexport function flowParseArrow() {\n if (match(tt.colon)) {\n const oldIsType = pushTypeContext(0);\n const snapshot = state.snapshot();\n\n const oldNoAnonFunctionType = state.noAnonFunctionType;\n state.noAnonFunctionType = true;\n flowParseTypeAndPredicateInitialiser();\n state.noAnonFunctionType = oldNoAnonFunctionType;\n\n if (canInsertSemicolon()) unexpected();\n if (!match(tt.arrow)) unexpected();\n\n if (state.error) {\n state.restoreFromSnapshot(snapshot);\n }\n popTypeContext(oldIsType);\n }\n return eat(tt.arrow);\n}\n\nexport function flowParseSubscripts(startTokenIndex, noCalls = false) {\n if (\n state.tokens[state.tokens.length - 1].contextualKeyword === ContextualKeyword._async &&\n match(tt.lessThan)\n ) {\n const snapshot = state.snapshot();\n const wasArrow = parseAsyncArrowWithTypeParameters();\n if (wasArrow && !state.error) {\n return;\n }\n state.restoreFromSnapshot(snapshot);\n }\n\n baseParseSubscripts(startTokenIndex, noCalls);\n}\n\n// Returns true if there was an arrow function here.\nfunction parseAsyncArrowWithTypeParameters() {\n state.scopeDepth++;\n const startTokenIndex = state.tokens.length;\n parseFunctionParams();\n if (!parseArrow()) {\n return false;\n }\n parseArrowExpression(startTokenIndex);\n return true;\n}\n\nfunction flowParseEnumDeclaration() {\n expectContextual(ContextualKeyword._enum);\n state.tokens[state.tokens.length - 1].type = tt._enum;\n parseIdentifier();\n flowParseEnumBody();\n}\n\nfunction flowParseEnumBody() {\n if (eatContextual(ContextualKeyword._of)) {\n next();\n }\n expect(tt.braceL);\n flowParseEnumMembers();\n expect(tt.braceR);\n}\n\nfunction flowParseEnumMembers() {\n while (!match(tt.braceR) && !state.error) {\n if (eat(tt.ellipsis)) {\n break;\n }\n flowParseEnumMember();\n if (!match(tt.braceR)) {\n expect(tt.comma);\n }\n }\n}\n\nfunction flowParseEnumMember() {\n parseIdentifier();\n if (eat(tt.eq)) {\n // Flow enum values are always just one token (a string, number, or boolean literal).\n next();\n }\n}\n", "/* eslint max-len: 0 */\n\nimport {File} from \"../index\";\nimport {\n flowAfterParseClassSuper,\n flowAfterParseVarHead,\n flowParseExportDeclaration,\n flowParseExportStar,\n flowParseIdentifierStatement,\n flowParseImportSpecifier,\n flowParseTypeAnnotation,\n flowParseTypeParameterDeclaration,\n flowShouldDisallowExportDefaultSpecifier,\n flowShouldParseExportDeclaration,\n flowShouldParseExportStar,\n flowStartParseFunctionParams,\n flowStartParseImportSpecifiers,\n flowTryParseExportDefaultExpression,\n flowTryParseStatement,\n} from \"../plugins/flow\";\nimport {\n tsAfterParseClassSuper,\n tsAfterParseVarHead,\n tsIsDeclarationStart,\n tsParseExportDeclaration,\n tsParseExportSpecifier,\n tsParseIdentifierStatement,\n tsParseImportEqualsDeclaration,\n tsParseImportSpecifier,\n tsParseMaybeDecoratorArguments,\n tsParseModifiers,\n tsStartParseFunctionParams,\n tsTryParseClassMemberWithIsStatic,\n tsTryParseExport,\n tsTryParseExportDefaultExpression,\n tsTryParseStatementContent,\n tsTryParseTypeAnnotation,\n tsTryParseTypeParameters,\n} from \"../plugins/typescript\";\nimport {\n eat,\n eatTypeToken,\n IdentifierRole,\n lookaheadType,\n lookaheadTypeAndKeyword,\n match,\n next,\n nextTokenStart,\n nextTokenStartSince,\n popTypeContext,\n pushTypeContext,\n} from \"../tokenizer\";\nimport {ContextualKeyword} from \"../tokenizer/keywords\";\nimport {Scope} from \"../tokenizer/state\";\nimport { TokenType as tt} from \"../tokenizer/types\";\nimport {charCodes} from \"../util/charcodes\";\nimport {getNextContextId, input, isFlowEnabled, isTypeScriptEnabled, state} from \"./base\";\nimport {\n parseCallExpressionArguments,\n parseExprAtom,\n parseExpression,\n parseExprSubscripts,\n parseFunctionBodyAndFinish,\n parseIdentifier,\n parseMaybeAssign,\n parseMethod,\n parseObj,\n parseParenExpression,\n parsePropertyName,\n} from \"./expression\";\nimport {\n parseBindingAtom,\n parseBindingIdentifier,\n parseBindingList,\n parseImportedIdentifier,\n} from \"./lval\";\nimport {\n canInsertSemicolon,\n eatContextual,\n expect,\n expectContextual,\n hasFollowingLineBreak,\n hasPrecedingLineBreak,\n isContextual,\n isLineTerminator,\n isLookaheadContextual,\n semicolon,\n unexpected,\n} from \"./util\";\n\nexport function parseTopLevel() {\n parseBlockBody(tt.eof);\n state.scopes.push(new Scope(0, state.tokens.length, true));\n if (state.scopeDepth !== 0) {\n throw new Error(`Invalid scope depth at end of file: ${state.scopeDepth}`);\n }\n return new File(state.tokens, state.scopes);\n}\n\n// Parse a single statement.\n//\n// If expecting a statement and finding a slash operator, parse a\n// regular expression literal. This is to handle cases like\n// `if (foo) /blah/.exec(foo)`, where looking at the previous token\n// does not help.\n\nexport function parseStatement(declaration) {\n if (isFlowEnabled) {\n if (flowTryParseStatement()) {\n return;\n }\n }\n if (match(tt.at)) {\n parseDecorators();\n }\n parseStatementContent(declaration);\n}\n\nfunction parseStatementContent(declaration) {\n if (isTypeScriptEnabled) {\n if (tsTryParseStatementContent()) {\n return;\n }\n }\n\n const starttype = state.type;\n\n // Most types of statements are recognized by the keyword they\n // start with. Many are trivial to parse, some require a bit of\n // complexity.\n\n switch (starttype) {\n case tt._break:\n case tt._continue:\n parseBreakContinueStatement();\n return;\n case tt._debugger:\n parseDebuggerStatement();\n return;\n case tt._do:\n parseDoStatement();\n return;\n case tt._for:\n parseForStatement();\n return;\n case tt._function:\n if (lookaheadType() === tt.dot) break;\n if (!declaration) unexpected();\n parseFunctionStatement();\n return;\n\n case tt._class:\n if (!declaration) unexpected();\n parseClass(true);\n return;\n\n case tt._if:\n parseIfStatement();\n return;\n case tt._return:\n parseReturnStatement();\n return;\n case tt._switch:\n parseSwitchStatement();\n return;\n case tt._throw:\n parseThrowStatement();\n return;\n case tt._try:\n parseTryStatement();\n return;\n\n case tt._let:\n case tt._const:\n if (!declaration) unexpected(); // NOTE: falls through to _var\n\n case tt._var:\n parseVarStatement(starttype !== tt._var);\n return;\n\n case tt._while:\n parseWhileStatement();\n return;\n case tt.braceL:\n parseBlock();\n return;\n case tt.semi:\n parseEmptyStatement();\n return;\n case tt._export:\n case tt._import: {\n const nextType = lookaheadType();\n if (nextType === tt.parenL || nextType === tt.dot) {\n break;\n }\n next();\n if (starttype === tt._import) {\n parseImport();\n } else {\n parseExport();\n }\n return;\n }\n case tt.name:\n if (state.contextualKeyword === ContextualKeyword._async) {\n const functionStart = state.start;\n // peek ahead and see if next token is a function\n const snapshot = state.snapshot();\n next();\n if (match(tt._function) && !canInsertSemicolon()) {\n expect(tt._function);\n parseFunction(functionStart, true);\n return;\n } else {\n state.restoreFromSnapshot(snapshot);\n }\n } else if (\n state.contextualKeyword === ContextualKeyword._using &&\n !hasFollowingLineBreak() &&\n // Statements like `using[0]` and `using in foo` aren't actual using\n // declarations.\n lookaheadType() === tt.name\n ) {\n parseVarStatement(true);\n return;\n } else if (startsAwaitUsing()) {\n expectContextual(ContextualKeyword._await);\n parseVarStatement(true);\n return;\n }\n default:\n // Do nothing.\n break;\n }\n\n // If the statement does not start with a statement keyword or a\n // brace, it's an ExpressionStatement or LabeledStatement. We\n // simply start parsing an expression, and afterwards, if the\n // next token is a colon and the expression was a simple\n // Identifier node, we switch to interpreting it as a label.\n const initialTokensLength = state.tokens.length;\n parseExpression();\n let simpleName = null;\n if (state.tokens.length === initialTokensLength + 1) {\n const token = state.tokens[state.tokens.length - 1];\n if (token.type === tt.name) {\n simpleName = token.contextualKeyword;\n }\n }\n if (simpleName == null) {\n semicolon();\n return;\n }\n if (eat(tt.colon)) {\n parseLabeledStatement();\n } else {\n // This was an identifier, so we might want to handle flow/typescript-specific cases.\n parseIdentifierStatement(simpleName);\n }\n}\n\n/**\n * Determine if we're positioned at an `await using` declaration.\n *\n * Note that this can happen either in place of a regular variable declaration\n * or in a loop body, and in both places, there are similar-looking cases where\n * we need to return false.\n *\n * Examples returning true:\n * await using foo = bar();\n * for (await using a of b) {}\n *\n * Examples returning false:\n * await using\n * await using + 1\n * await using instanceof T\n * for (await using;;) {}\n *\n * For now, we early return if we don't see `await`, then do a simple\n * backtracking-based lookahead for the `using` and identifier tokens. In the\n * future, this could be optimized with a character-based approach.\n */\nfunction startsAwaitUsing() {\n if (!isContextual(ContextualKeyword._await)) {\n return false;\n }\n const snapshot = state.snapshot();\n // await\n next();\n if (!isContextual(ContextualKeyword._using) || hasPrecedingLineBreak()) {\n state.restoreFromSnapshot(snapshot);\n return false;\n }\n // using\n next();\n if (!match(tt.name) || hasPrecedingLineBreak()) {\n state.restoreFromSnapshot(snapshot);\n return false;\n }\n state.restoreFromSnapshot(snapshot);\n return true;\n}\n\nexport function parseDecorators() {\n while (match(tt.at)) {\n parseDecorator();\n }\n}\n\nfunction parseDecorator() {\n next();\n if (eat(tt.parenL)) {\n parseExpression();\n expect(tt.parenR);\n } else {\n parseIdentifier();\n while (eat(tt.dot)) {\n parseIdentifier();\n }\n parseMaybeDecoratorArguments();\n }\n}\n\nfunction parseMaybeDecoratorArguments() {\n if (isTypeScriptEnabled) {\n tsParseMaybeDecoratorArguments();\n } else {\n baseParseMaybeDecoratorArguments();\n }\n}\n\nexport function baseParseMaybeDecoratorArguments() {\n if (eat(tt.parenL)) {\n parseCallExpressionArguments();\n }\n}\n\nfunction parseBreakContinueStatement() {\n next();\n if (!isLineTerminator()) {\n parseIdentifier();\n semicolon();\n }\n}\n\nfunction parseDebuggerStatement() {\n next();\n semicolon();\n}\n\nfunction parseDoStatement() {\n next();\n parseStatement(false);\n expect(tt._while);\n parseParenExpression();\n eat(tt.semi);\n}\n\nfunction parseForStatement() {\n state.scopeDepth++;\n const startTokenIndex = state.tokens.length;\n parseAmbiguousForStatement();\n const endTokenIndex = state.tokens.length;\n state.scopes.push(new Scope(startTokenIndex, endTokenIndex, false));\n state.scopeDepth--;\n}\n\n/**\n * Determine if this token is a `using` declaration (explicit resource\n * management) as part of a loop.\n * https://github.com/tc39/proposal-explicit-resource-management\n */\nfunction isUsingInLoop() {\n if (!isContextual(ContextualKeyword._using)) {\n return false;\n }\n // This must be `for (using of`, where `using` is the name of the loop\n // variable.\n if (isLookaheadContextual(ContextualKeyword._of)) {\n return false;\n }\n return true;\n}\n\n// Disambiguating between a `for` and a `for`/`in` or `for`/`of`\n// loop is non-trivial. Basically, we have to parse the init `var`\n// statement or expression, disallowing the `in` operator (see\n// the second parameter to `parseExpression`), and then check\n// whether the next token is `in` or `of`. When there is no init\n// part (semicolon immediately after the opening parenthesis), it\n// is a regular `for` loop.\nfunction parseAmbiguousForStatement() {\n next();\n\n let forAwait = false;\n if (isContextual(ContextualKeyword._await)) {\n forAwait = true;\n next();\n }\n expect(tt.parenL);\n\n if (match(tt.semi)) {\n if (forAwait) {\n unexpected();\n }\n parseFor();\n return;\n }\n\n const isAwaitUsing = startsAwaitUsing();\n if (isAwaitUsing || match(tt._var) || match(tt._let) || match(tt._const) || isUsingInLoop()) {\n if (isAwaitUsing) {\n expectContextual(ContextualKeyword._await);\n }\n next();\n parseVar(true, state.type !== tt._var);\n if (match(tt._in) || isContextual(ContextualKeyword._of)) {\n parseForIn(forAwait);\n return;\n }\n parseFor();\n return;\n }\n\n parseExpression(true);\n if (match(tt._in) || isContextual(ContextualKeyword._of)) {\n parseForIn(forAwait);\n return;\n }\n if (forAwait) {\n unexpected();\n }\n parseFor();\n}\n\nfunction parseFunctionStatement() {\n const functionStart = state.start;\n next();\n parseFunction(functionStart, true);\n}\n\nfunction parseIfStatement() {\n next();\n parseParenExpression();\n parseStatement(false);\n if (eat(tt._else)) {\n parseStatement(false);\n }\n}\n\nfunction parseReturnStatement() {\n next();\n\n // In `return` (and `break`/`continue`), the keywords with\n // optional arguments, we eagerly look for a semicolon or the\n // possibility to insert one.\n\n if (!isLineTerminator()) {\n parseExpression();\n semicolon();\n }\n}\n\nfunction parseSwitchStatement() {\n next();\n parseParenExpression();\n state.scopeDepth++;\n const startTokenIndex = state.tokens.length;\n expect(tt.braceL);\n\n // Don't bother validation; just go through any sequence of cases, defaults, and statements.\n while (!match(tt.braceR) && !state.error) {\n if (match(tt._case) || match(tt._default)) {\n const isCase = match(tt._case);\n next();\n if (isCase) {\n parseExpression();\n }\n expect(tt.colon);\n } else {\n parseStatement(true);\n }\n }\n next(); // Closing brace\n const endTokenIndex = state.tokens.length;\n state.scopes.push(new Scope(startTokenIndex, endTokenIndex, false));\n state.scopeDepth--;\n}\n\nfunction parseThrowStatement() {\n next();\n parseExpression();\n semicolon();\n}\n\nfunction parseCatchClauseParam() {\n parseBindingAtom(true /* isBlockScope */);\n\n if (isTypeScriptEnabled) {\n tsTryParseTypeAnnotation();\n }\n}\n\nfunction parseTryStatement() {\n next();\n\n parseBlock();\n\n if (match(tt._catch)) {\n next();\n let catchBindingStartTokenIndex = null;\n if (match(tt.parenL)) {\n state.scopeDepth++;\n catchBindingStartTokenIndex = state.tokens.length;\n expect(tt.parenL);\n parseCatchClauseParam();\n expect(tt.parenR);\n }\n parseBlock();\n if (catchBindingStartTokenIndex != null) {\n // We need a special scope for the catch binding which includes the binding itself and the\n // catch block.\n const endTokenIndex = state.tokens.length;\n state.scopes.push(new Scope(catchBindingStartTokenIndex, endTokenIndex, false));\n state.scopeDepth--;\n }\n }\n if (eat(tt._finally)) {\n parseBlock();\n }\n}\n\nexport function parseVarStatement(isBlockScope) {\n next();\n parseVar(false, isBlockScope);\n semicolon();\n}\n\nfunction parseWhileStatement() {\n next();\n parseParenExpression();\n parseStatement(false);\n}\n\nfunction parseEmptyStatement() {\n next();\n}\n\nfunction parseLabeledStatement() {\n parseStatement(true);\n}\n\n/**\n * Parse a statement starting with an identifier of the given name. Subclasses match on the name\n * to handle statements like \"declare\".\n */\nfunction parseIdentifierStatement(contextualKeyword) {\n if (isTypeScriptEnabled) {\n tsParseIdentifierStatement(contextualKeyword);\n } else if (isFlowEnabled) {\n flowParseIdentifierStatement(contextualKeyword);\n } else {\n semicolon();\n }\n}\n\n// Parse a semicolon-enclosed block of statements.\nexport function parseBlock(isFunctionScope = false, contextId = 0) {\n const startTokenIndex = state.tokens.length;\n state.scopeDepth++;\n expect(tt.braceL);\n if (contextId) {\n state.tokens[state.tokens.length - 1].contextId = contextId;\n }\n parseBlockBody(tt.braceR);\n if (contextId) {\n state.tokens[state.tokens.length - 1].contextId = contextId;\n }\n const endTokenIndex = state.tokens.length;\n state.scopes.push(new Scope(startTokenIndex, endTokenIndex, isFunctionScope));\n state.scopeDepth--;\n}\n\nexport function parseBlockBody(end) {\n while (!eat(end) && !state.error) {\n parseStatement(true);\n }\n}\n\n// Parse a regular `for` loop. The disambiguation code in\n// `parseStatement` will already have parsed the init statement or\n// expression.\n\nfunction parseFor() {\n expect(tt.semi);\n if (!match(tt.semi)) {\n parseExpression();\n }\n expect(tt.semi);\n if (!match(tt.parenR)) {\n parseExpression();\n }\n expect(tt.parenR);\n parseStatement(false);\n}\n\n// Parse a `for`/`in` and `for`/`of` loop, which are almost\n// same from parser's perspective.\n\nfunction parseForIn(forAwait) {\n if (forAwait) {\n eatContextual(ContextualKeyword._of);\n } else {\n next();\n }\n parseExpression();\n expect(tt.parenR);\n parseStatement(false);\n}\n\n// Parse a list of variable declarations.\n\nfunction parseVar(isFor, isBlockScope) {\n while (true) {\n parseVarHead(isBlockScope);\n if (eat(tt.eq)) {\n const eqIndex = state.tokens.length - 1;\n parseMaybeAssign(isFor);\n state.tokens[eqIndex].rhsEndIndex = state.tokens.length;\n }\n if (!eat(tt.comma)) {\n break;\n }\n }\n}\n\nfunction parseVarHead(isBlockScope) {\n parseBindingAtom(isBlockScope);\n if (isTypeScriptEnabled) {\n tsAfterParseVarHead();\n } else if (isFlowEnabled) {\n flowAfterParseVarHead();\n }\n}\n\n// Parse a function declaration or literal (depending on the\n// `isStatement` parameter).\n\nexport function parseFunction(\n functionStart,\n isStatement,\n optionalId = false,\n) {\n if (match(tt.star)) {\n next();\n }\n\n if (isStatement && !optionalId && !match(tt.name) && !match(tt._yield)) {\n unexpected();\n }\n\n let nameScopeStartTokenIndex = null;\n\n if (match(tt.name)) {\n // Expression-style functions should limit their name's scope to the function body, so we make\n // a new function scope to enforce that.\n if (!isStatement) {\n nameScopeStartTokenIndex = state.tokens.length;\n state.scopeDepth++;\n }\n parseBindingIdentifier(false);\n }\n\n const startTokenIndex = state.tokens.length;\n state.scopeDepth++;\n parseFunctionParams();\n parseFunctionBodyAndFinish(functionStart);\n const endTokenIndex = state.tokens.length;\n // In addition to the block scope of the function body, we need a separate function-style scope\n // that includes the params.\n state.scopes.push(new Scope(startTokenIndex, endTokenIndex, true));\n state.scopeDepth--;\n if (nameScopeStartTokenIndex !== null) {\n state.scopes.push(new Scope(nameScopeStartTokenIndex, endTokenIndex, true));\n state.scopeDepth--;\n }\n}\n\nexport function parseFunctionParams(\n allowModifiers = false,\n funcContextId = 0,\n) {\n if (isTypeScriptEnabled) {\n tsStartParseFunctionParams();\n } else if (isFlowEnabled) {\n flowStartParseFunctionParams();\n }\n\n expect(tt.parenL);\n if (funcContextId) {\n state.tokens[state.tokens.length - 1].contextId = funcContextId;\n }\n parseBindingList(\n tt.parenR,\n false /* isBlockScope */,\n false /* allowEmpty */,\n allowModifiers,\n funcContextId,\n );\n if (funcContextId) {\n state.tokens[state.tokens.length - 1].contextId = funcContextId;\n }\n}\n\n// Parse a class declaration or literal (depending on the\n// `isStatement` parameter).\n\nexport function parseClass(isStatement, optionalId = false) {\n // Put a context ID on the class keyword, the open-brace, and the close-brace, so that later\n // code can easily navigate to meaningful points on the class.\n const contextId = getNextContextId();\n\n next();\n state.tokens[state.tokens.length - 1].contextId = contextId;\n state.tokens[state.tokens.length - 1].isExpression = !isStatement;\n // Like with functions, we declare a special \"name scope\" from the start of the name to the end\n // of the class, but only with expression-style classes, to represent the fact that the name is\n // available to the body of the class but not an outer declaration.\n let nameScopeStartTokenIndex = null;\n if (!isStatement) {\n nameScopeStartTokenIndex = state.tokens.length;\n state.scopeDepth++;\n }\n parseClassId(isStatement, optionalId);\n parseClassSuper();\n const openBraceIndex = state.tokens.length;\n parseClassBody(contextId);\n if (state.error) {\n return;\n }\n state.tokens[openBraceIndex].contextId = contextId;\n state.tokens[state.tokens.length - 1].contextId = contextId;\n if (nameScopeStartTokenIndex !== null) {\n const endTokenIndex = state.tokens.length;\n state.scopes.push(new Scope(nameScopeStartTokenIndex, endTokenIndex, false));\n state.scopeDepth--;\n }\n}\n\nfunction isClassProperty() {\n return match(tt.eq) || match(tt.semi) || match(tt.braceR) || match(tt.bang) || match(tt.colon);\n}\n\nfunction isClassMethod() {\n return match(tt.parenL) || match(tt.lessThan);\n}\n\nfunction parseClassBody(classContextId) {\n expect(tt.braceL);\n\n while (!eat(tt.braceR) && !state.error) {\n if (eat(tt.semi)) {\n continue;\n }\n\n if (match(tt.at)) {\n parseDecorator();\n continue;\n }\n const memberStart = state.start;\n parseClassMember(memberStart, classContextId);\n }\n}\n\nfunction parseClassMember(memberStart, classContextId) {\n if (isTypeScriptEnabled) {\n tsParseModifiers([\n ContextualKeyword._declare,\n ContextualKeyword._public,\n ContextualKeyword._protected,\n ContextualKeyword._private,\n ContextualKeyword._override,\n ]);\n }\n let isStatic = false;\n if (match(tt.name) && state.contextualKeyword === ContextualKeyword._static) {\n parseIdentifier(); // eats 'static'\n if (isClassMethod()) {\n parseClassMethod(memberStart, /* isConstructor */ false);\n return;\n } else if (isClassProperty()) {\n parseClassProperty();\n return;\n }\n // otherwise something static\n state.tokens[state.tokens.length - 1].type = tt._static;\n isStatic = true;\n\n if (match(tt.braceL)) {\n // This is a static block. Mark the word \"static\" with the class context ID for class element\n // detection and parse as a regular block.\n state.tokens[state.tokens.length - 1].contextId = classContextId;\n parseBlock();\n return;\n }\n }\n\n parseClassMemberWithIsStatic(memberStart, isStatic, classContextId);\n}\n\nfunction parseClassMemberWithIsStatic(\n memberStart,\n isStatic,\n classContextId,\n) {\n if (isTypeScriptEnabled) {\n if (tsTryParseClassMemberWithIsStatic(isStatic)) {\n return;\n }\n }\n if (eat(tt.star)) {\n // a generator\n parseClassPropertyName(classContextId);\n parseClassMethod(memberStart, /* isConstructor */ false);\n return;\n }\n\n // Get the identifier name so we can tell if it's actually a keyword like \"async\", \"get\", or\n // \"set\".\n parseClassPropertyName(classContextId);\n let isConstructor = false;\n const token = state.tokens[state.tokens.length - 1];\n // We allow \"constructor\" as either an identifier or a string.\n if (token.contextualKeyword === ContextualKeyword._constructor) {\n isConstructor = true;\n }\n parsePostMemberNameModifiers();\n\n if (isClassMethod()) {\n parseClassMethod(memberStart, isConstructor);\n } else if (isClassProperty()) {\n parseClassProperty();\n } else if (token.contextualKeyword === ContextualKeyword._async && !isLineTerminator()) {\n state.tokens[state.tokens.length - 1].type = tt._async;\n // an async method\n const isGenerator = match(tt.star);\n if (isGenerator) {\n next();\n }\n\n // The so-called parsed name would have been \"async\": get the real name.\n parseClassPropertyName(classContextId);\n parsePostMemberNameModifiers();\n parseClassMethod(memberStart, false /* isConstructor */);\n } else if (\n (token.contextualKeyword === ContextualKeyword._get ||\n token.contextualKeyword === ContextualKeyword._set) &&\n !(isLineTerminator() && match(tt.star))\n ) {\n if (token.contextualKeyword === ContextualKeyword._get) {\n state.tokens[state.tokens.length - 1].type = tt._get;\n } else {\n state.tokens[state.tokens.length - 1].type = tt._set;\n }\n // `get\\n*` is an uninitialized property named 'get' followed by a generator.\n // a getter or setter\n // The so-called parsed name would have been \"get/set\": get the real name.\n parseClassPropertyName(classContextId);\n parseClassMethod(memberStart, /* isConstructor */ false);\n } else if (token.contextualKeyword === ContextualKeyword._accessor && !isLineTerminator()) {\n parseClassPropertyName(classContextId);\n parseClassProperty();\n } else if (isLineTerminator()) {\n // an uninitialized class property (due to ASI, since we don't otherwise recognize the next token)\n parseClassProperty();\n } else {\n unexpected();\n }\n}\n\nfunction parseClassMethod(functionStart, isConstructor) {\n if (isTypeScriptEnabled) {\n tsTryParseTypeParameters();\n } else if (isFlowEnabled) {\n if (match(tt.lessThan)) {\n flowParseTypeParameterDeclaration();\n }\n }\n parseMethod(functionStart, isConstructor);\n}\n\n// Return the name of the class property, if it is a simple identifier.\nexport function parseClassPropertyName(classContextId) {\n parsePropertyName(classContextId);\n}\n\nexport function parsePostMemberNameModifiers() {\n if (isTypeScriptEnabled) {\n const oldIsType = pushTypeContext(0);\n eat(tt.question);\n popTypeContext(oldIsType);\n }\n}\n\nexport function parseClassProperty() {\n if (isTypeScriptEnabled) {\n eatTypeToken(tt.bang);\n tsTryParseTypeAnnotation();\n } else if (isFlowEnabled) {\n if (match(tt.colon)) {\n flowParseTypeAnnotation();\n }\n }\n\n if (match(tt.eq)) {\n const equalsTokenIndex = state.tokens.length;\n next();\n parseMaybeAssign();\n state.tokens[equalsTokenIndex].rhsEndIndex = state.tokens.length;\n }\n semicolon();\n}\n\nfunction parseClassId(isStatement, optionalId = false) {\n if (\n isTypeScriptEnabled &&\n (!isStatement || optionalId) &&\n isContextual(ContextualKeyword._implements)\n ) {\n return;\n }\n\n if (match(tt.name)) {\n parseBindingIdentifier(true);\n }\n\n if (isTypeScriptEnabled) {\n tsTryParseTypeParameters();\n } else if (isFlowEnabled) {\n if (match(tt.lessThan)) {\n flowParseTypeParameterDeclaration();\n }\n }\n}\n\n// Returns true if there was a superclass.\nfunction parseClassSuper() {\n let hasSuper = false;\n if (eat(tt._extends)) {\n parseExprSubscripts();\n hasSuper = true;\n } else {\n hasSuper = false;\n }\n if (isTypeScriptEnabled) {\n tsAfterParseClassSuper(hasSuper);\n } else if (isFlowEnabled) {\n flowAfterParseClassSuper(hasSuper);\n }\n}\n\n// Parses module export declaration.\n\nexport function parseExport() {\n const exportIndex = state.tokens.length - 1;\n if (isTypeScriptEnabled) {\n if (tsTryParseExport()) {\n return;\n }\n }\n // export * from '...'\n if (shouldParseExportStar()) {\n parseExportStar();\n } else if (isExportDefaultSpecifier()) {\n // export default from\n parseIdentifier();\n if (match(tt.comma) && lookaheadType() === tt.star) {\n expect(tt.comma);\n expect(tt.star);\n expectContextual(ContextualKeyword._as);\n parseIdentifier();\n } else {\n parseExportSpecifiersMaybe();\n }\n parseExportFrom();\n } else if (eat(tt._default)) {\n // export default ...\n parseExportDefaultExpression();\n } else if (shouldParseExportDeclaration()) {\n parseExportDeclaration();\n } else {\n // export { x, y as z } [from '...']\n parseExportSpecifiers();\n parseExportFrom();\n }\n state.tokens[exportIndex].rhsEndIndex = state.tokens.length;\n}\n\nfunction parseExportDefaultExpression() {\n if (isTypeScriptEnabled) {\n if (tsTryParseExportDefaultExpression()) {\n return;\n }\n }\n if (isFlowEnabled) {\n if (flowTryParseExportDefaultExpression()) {\n return;\n }\n }\n const functionStart = state.start;\n if (eat(tt._function)) {\n parseFunction(functionStart, true, true);\n } else if (isContextual(ContextualKeyword._async) && lookaheadType() === tt._function) {\n // async function declaration\n eatContextual(ContextualKeyword._async);\n eat(tt._function);\n parseFunction(functionStart, true, true);\n } else if (match(tt._class)) {\n parseClass(true, true);\n } else if (match(tt.at)) {\n parseDecorators();\n parseClass(true, true);\n } else {\n parseMaybeAssign();\n semicolon();\n }\n}\n\nfunction parseExportDeclaration() {\n if (isTypeScriptEnabled) {\n tsParseExportDeclaration();\n } else if (isFlowEnabled) {\n flowParseExportDeclaration();\n } else {\n parseStatement(true);\n }\n}\n\nfunction isExportDefaultSpecifier() {\n if (isTypeScriptEnabled && tsIsDeclarationStart()) {\n return false;\n } else if (isFlowEnabled && flowShouldDisallowExportDefaultSpecifier()) {\n return false;\n }\n if (match(tt.name)) {\n return state.contextualKeyword !== ContextualKeyword._async;\n }\n\n if (!match(tt._default)) {\n return false;\n }\n\n const _next = nextTokenStart();\n const lookahead = lookaheadTypeAndKeyword();\n const hasFrom =\n lookahead.type === tt.name && lookahead.contextualKeyword === ContextualKeyword._from;\n if (lookahead.type === tt.comma) {\n return true;\n }\n // lookahead again when `export default from` is seen\n if (hasFrom) {\n const nextAfterFrom = input.charCodeAt(nextTokenStartSince(_next + 4));\n return nextAfterFrom === charCodes.quotationMark || nextAfterFrom === charCodes.apostrophe;\n }\n return false;\n}\n\nfunction parseExportSpecifiersMaybe() {\n if (eat(tt.comma)) {\n parseExportSpecifiers();\n }\n}\n\nexport function parseExportFrom() {\n if (eatContextual(ContextualKeyword._from)) {\n parseExprAtom();\n maybeParseImportAttributes();\n }\n semicolon();\n}\n\nfunction shouldParseExportStar() {\n if (isFlowEnabled) {\n return flowShouldParseExportStar();\n } else {\n return match(tt.star);\n }\n}\n\nfunction parseExportStar() {\n if (isFlowEnabled) {\n flowParseExportStar();\n } else {\n baseParseExportStar();\n }\n}\n\nexport function baseParseExportStar() {\n expect(tt.star);\n\n if (isContextual(ContextualKeyword._as)) {\n parseExportNamespace();\n } else {\n parseExportFrom();\n }\n}\n\nfunction parseExportNamespace() {\n next();\n state.tokens[state.tokens.length - 1].type = tt._as;\n parseIdentifier();\n parseExportSpecifiersMaybe();\n parseExportFrom();\n}\n\nfunction shouldParseExportDeclaration() {\n return (\n (isTypeScriptEnabled && tsIsDeclarationStart()) ||\n (isFlowEnabled && flowShouldParseExportDeclaration()) ||\n state.type === tt._var ||\n state.type === tt._const ||\n state.type === tt._let ||\n state.type === tt._function ||\n state.type === tt._class ||\n isContextual(ContextualKeyword._async) ||\n match(tt.at)\n );\n}\n\n// Parses a comma-separated list of module exports.\nexport function parseExportSpecifiers() {\n let first = true;\n\n // export { x, y as z } [from '...']\n expect(tt.braceL);\n\n while (!eat(tt.braceR) && !state.error) {\n if (first) {\n first = false;\n } else {\n expect(tt.comma);\n if (eat(tt.braceR)) {\n break;\n }\n }\n parseExportSpecifier();\n }\n}\n\nfunction parseExportSpecifier() {\n if (isTypeScriptEnabled) {\n tsParseExportSpecifier();\n return;\n }\n parseIdentifier();\n state.tokens[state.tokens.length - 1].identifierRole = IdentifierRole.ExportAccess;\n if (eatContextual(ContextualKeyword._as)) {\n parseIdentifier();\n }\n}\n\n/**\n * Starting at the `module` token in an import, determine if it was truly an\n * import reflection token or just looks like one.\n *\n * Returns true for:\n * import module foo from \"foo\";\n * import module from from \"foo\";\n *\n * Returns false for:\n * import module from \"foo\";\n * import module, {bar} from \"foo\";\n */\nfunction isImportReflection() {\n const snapshot = state.snapshot();\n expectContextual(ContextualKeyword._module);\n if (eatContextual(ContextualKeyword._from)) {\n if (isContextual(ContextualKeyword._from)) {\n state.restoreFromSnapshot(snapshot);\n return true;\n } else {\n state.restoreFromSnapshot(snapshot);\n return false;\n }\n } else if (match(tt.comma)) {\n state.restoreFromSnapshot(snapshot);\n return false;\n } else {\n state.restoreFromSnapshot(snapshot);\n return true;\n }\n}\n\n/**\n * Eat the \"module\" token from the import reflection proposal.\n * https://github.com/tc39/proposal-import-reflection\n */\nfunction parseMaybeImportReflection() {\n // isImportReflection does snapshot/restore, so only run it if we see the word\n // \"module\".\n if (isContextual(ContextualKeyword._module) && isImportReflection()) {\n next();\n }\n}\n\n// Parses import declaration.\n\nexport function parseImport() {\n if (isTypeScriptEnabled && match(tt.name) && lookaheadType() === tt.eq) {\n tsParseImportEqualsDeclaration();\n return;\n }\n if (isTypeScriptEnabled && isContextual(ContextualKeyword._type)) {\n const lookahead = lookaheadTypeAndKeyword();\n if (lookahead.type === tt.name && lookahead.contextualKeyword !== ContextualKeyword._from) {\n // One of these `import type` cases:\n // import type T = require('T');\n // import type A from 'A';\n expectContextual(ContextualKeyword._type);\n if (lookaheadType() === tt.eq) {\n tsParseImportEqualsDeclaration();\n return;\n }\n // If this is an `import type...from` statement, then we already ate the\n // type token, so proceed to the regular import parser.\n } else if (lookahead.type === tt.star || lookahead.type === tt.braceL) {\n // One of these `import type` cases, in which case we can eat the type token\n // and proceed as normal:\n // import type * as A from 'A';\n // import type {a} from 'A';\n expectContextual(ContextualKeyword._type);\n }\n // Otherwise, we are importing the name \"type\".\n }\n\n // import '...'\n if (match(tt.string)) {\n parseExprAtom();\n } else {\n parseMaybeImportReflection();\n parseImportSpecifiers();\n expectContextual(ContextualKeyword._from);\n parseExprAtom();\n }\n maybeParseImportAttributes();\n semicolon();\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction shouldParseDefaultImport() {\n return match(tt.name);\n}\n\nfunction parseImportSpecifierLocal() {\n parseImportedIdentifier();\n}\n\n// Parses a comma-separated list of module imports.\nfunction parseImportSpecifiers() {\n if (isFlowEnabled) {\n flowStartParseImportSpecifiers();\n }\n\n let first = true;\n if (shouldParseDefaultImport()) {\n // import defaultObj, { x, y as z } from '...'\n parseImportSpecifierLocal();\n\n if (!eat(tt.comma)) return;\n }\n\n if (match(tt.star)) {\n next();\n expectContextual(ContextualKeyword._as);\n\n parseImportSpecifierLocal();\n\n return;\n }\n\n expect(tt.braceL);\n while (!eat(tt.braceR) && !state.error) {\n if (first) {\n first = false;\n } else {\n // Detect an attempt to deep destructure\n if (eat(tt.colon)) {\n unexpected(\n \"ES2015 named imports do not destructure. Use another statement for destructuring after the import.\",\n );\n }\n\n expect(tt.comma);\n if (eat(tt.braceR)) {\n break;\n }\n }\n\n parseImportSpecifier();\n }\n}\n\nfunction parseImportSpecifier() {\n if (isTypeScriptEnabled) {\n tsParseImportSpecifier();\n return;\n }\n if (isFlowEnabled) {\n flowParseImportSpecifier();\n return;\n }\n parseImportedIdentifier();\n if (isContextual(ContextualKeyword._as)) {\n state.tokens[state.tokens.length - 1].identifierRole = IdentifierRole.ImportAccess;\n next();\n parseImportedIdentifier();\n }\n}\n\n/**\n * Parse import attributes like `with {type: \"json\"}`, or the legacy form\n * `assert {type: \"json\"}`.\n *\n * Import attributes technically have their own syntax, but are always parseable\n * as a plain JS object, so just do that for simplicity.\n */\nfunction maybeParseImportAttributes() {\n if (match(tt._with) || (isContextual(ContextualKeyword._assert) && !hasPrecedingLineBreak())) {\n next();\n parseObj(false, false);\n }\n}\n", "\nimport {nextToken, skipLineComment} from \"../tokenizer/index\";\nimport {charCodes} from \"../util/charcodes\";\nimport {input, state} from \"./base\";\nimport {parseTopLevel} from \"./statement\";\n\nexport function parseFile() {\n // If enabled, skip leading hashbang line.\n if (\n state.pos === 0 &&\n input.charCodeAt(0) === charCodes.numberSign &&\n input.charCodeAt(1) === charCodes.exclamationMark\n ) {\n skipLineComment(2);\n }\n nextToken();\n return parseTopLevel();\n}\n", "\n\nimport {augmentError, initParser, state} from \"./traverser/base\";\nimport {parseFile} from \"./traverser/index\";\n\nexport class File {\n \n \n\n constructor(tokens, scopes) {\n this.tokens = tokens;\n this.scopes = scopes;\n }\n}\n\nexport function parse(\n input,\n isJSXEnabled,\n isTypeScriptEnabled,\n isFlowEnabled,\n) {\n if (isFlowEnabled && isTypeScriptEnabled) {\n throw new Error(\"Cannot combine flow and typescript plugins.\");\n }\n initParser(input, isJSXEnabled, isTypeScriptEnabled, isFlowEnabled);\n const result = parseFile();\n if (state.error) {\n throw augmentError(state.error);\n }\n return result;\n}\n", "import {ContextualKeyword} from \"../parser/tokenizer/keywords\";\n\n\n/**\n * Determine whether this optional chain or nullish coalescing operation has any await statements in\n * it. If so, we'll need to transpile to an async operation.\n *\n * We compute this by walking the length of the operation and returning true if we see an await\n * keyword used as a real await (rather than an object key or property access). Nested optional\n * chain/nullish operations need to be tracked but don't silence await, but a nested async function\n * (or any other nested scope) will make the await not count.\n */\nexport default function isAsyncOperation(tokens) {\n let index = tokens.currentIndex();\n let depth = 0;\n const startToken = tokens.currentToken();\n do {\n const token = tokens.tokens[index];\n if (token.isOptionalChainStart) {\n depth++;\n }\n if (token.isOptionalChainEnd) {\n depth--;\n }\n depth += token.numNullishCoalesceStarts;\n depth -= token.numNullishCoalesceEnds;\n\n if (\n token.contextualKeyword === ContextualKeyword._await &&\n token.identifierRole == null &&\n token.scopeDepth === startToken.scopeDepth\n ) {\n return true;\n }\n index += 1;\n } while (depth > 0 && index < tokens.tokens.length);\n return false;\n}\n", "\n\n\nimport { TokenType as tt} from \"./parser/tokenizer/types\";\nimport isAsyncOperation from \"./util/isAsyncOperation\";\n\n\n\n\n\n\n\n\n\n\n\nexport default class TokenProcessor {\n __init() {this.resultCode = \"\"}\n // Array mapping input token index to optional string index position in the\n // output code.\n __init2() {this.resultMappings = new Array(this.tokens.length)}\n __init3() {this.tokenIndex = 0}\n\n constructor(\n code,\n tokens,\n isFlowEnabled,\n disableESTransforms,\n helperManager,\n ) {;this.code = code;this.tokens = tokens;this.isFlowEnabled = isFlowEnabled;this.disableESTransforms = disableESTransforms;this.helperManager = helperManager;TokenProcessor.prototype.__init.call(this);TokenProcessor.prototype.__init2.call(this);TokenProcessor.prototype.__init3.call(this);}\n\n /**\n * Snapshot the token state in a way that can be restored later, useful for\n * things like lookahead.\n *\n * resultMappings do not need to be copied since in all use cases, they will\n * be overwritten anyway after restore.\n */\n snapshot() {\n return {\n resultCode: this.resultCode,\n tokenIndex: this.tokenIndex,\n };\n }\n\n restoreToSnapshot(snapshot) {\n this.resultCode = snapshot.resultCode;\n this.tokenIndex = snapshot.tokenIndex;\n }\n\n /**\n * Remove and return the code generated since the snapshot, leaving the\n * current token position in-place. Unlike most TokenProcessor operations,\n * this operation can result in input/output line number mismatches because\n * the removed code may contain newlines, so this operation should be used\n * sparingly.\n */\n dangerouslyGetAndRemoveCodeSinceSnapshot(snapshot) {\n const result = this.resultCode.slice(snapshot.resultCode.length);\n this.resultCode = snapshot.resultCode;\n return result;\n }\n\n reset() {\n this.resultCode = \"\";\n this.resultMappings = new Array(this.tokens.length);\n this.tokenIndex = 0;\n }\n\n matchesContextualAtIndex(index, contextualKeyword) {\n return (\n this.matches1AtIndex(index, tt.name) &&\n this.tokens[index].contextualKeyword === contextualKeyword\n );\n }\n\n identifierNameAtIndex(index) {\n // TODO: We need to process escapes since technically you can have unicode escapes in variable\n // names.\n return this.identifierNameForToken(this.tokens[index]);\n }\n\n identifierNameAtRelativeIndex(relativeIndex) {\n return this.identifierNameForToken(this.tokenAtRelativeIndex(relativeIndex));\n }\n\n identifierName() {\n return this.identifierNameForToken(this.currentToken());\n }\n\n identifierNameForToken(token) {\n return this.code.slice(token.start, token.end);\n }\n\n rawCodeForToken(token) {\n return this.code.slice(token.start, token.end);\n }\n\n stringValueAtIndex(index) {\n return this.stringValueForToken(this.tokens[index]);\n }\n\n stringValue() {\n return this.stringValueForToken(this.currentToken());\n }\n\n stringValueForToken(token) {\n // This is used to identify when two imports are the same and to resolve TypeScript enum keys.\n // Ideally we'd process escapes within the strings, but for now we pretty much take the raw\n // code.\n return this.code.slice(token.start + 1, token.end - 1);\n }\n\n matches1AtIndex(index, t1) {\n return this.tokens[index].type === t1;\n }\n\n matches2AtIndex(index, t1, t2) {\n return this.tokens[index].type === t1 && this.tokens[index + 1].type === t2;\n }\n\n matches3AtIndex(index, t1, t2, t3) {\n return (\n this.tokens[index].type === t1 &&\n this.tokens[index + 1].type === t2 &&\n this.tokens[index + 2].type === t3\n );\n }\n\n matches1(t1) {\n return this.tokens[this.tokenIndex].type === t1;\n }\n\n matches2(t1, t2) {\n return this.tokens[this.tokenIndex].type === t1 && this.tokens[this.tokenIndex + 1].type === t2;\n }\n\n matches3(t1, t2, t3) {\n return (\n this.tokens[this.tokenIndex].type === t1 &&\n this.tokens[this.tokenIndex + 1].type === t2 &&\n this.tokens[this.tokenIndex + 2].type === t3\n );\n }\n\n matches4(t1, t2, t3, t4) {\n return (\n this.tokens[this.tokenIndex].type === t1 &&\n this.tokens[this.tokenIndex + 1].type === t2 &&\n this.tokens[this.tokenIndex + 2].type === t3 &&\n this.tokens[this.tokenIndex + 3].type === t4\n );\n }\n\n matches5(t1, t2, t3, t4, t5) {\n return (\n this.tokens[this.tokenIndex].type === t1 &&\n this.tokens[this.tokenIndex + 1].type === t2 &&\n this.tokens[this.tokenIndex + 2].type === t3 &&\n this.tokens[this.tokenIndex + 3].type === t4 &&\n this.tokens[this.tokenIndex + 4].type === t5\n );\n }\n\n matchesContextual(contextualKeyword) {\n return this.matchesContextualAtIndex(this.tokenIndex, contextualKeyword);\n }\n\n matchesContextIdAndLabel(type, contextId) {\n return this.matches1(type) && this.currentToken().contextId === contextId;\n }\n\n previousWhitespaceAndComments() {\n let whitespaceAndComments = this.code.slice(\n this.tokenIndex > 0 ? this.tokens[this.tokenIndex - 1].end : 0,\n this.tokenIndex < this.tokens.length ? this.tokens[this.tokenIndex].start : this.code.length,\n );\n if (this.isFlowEnabled) {\n whitespaceAndComments = whitespaceAndComments.replace(/@flow/g, \"\");\n }\n return whitespaceAndComments;\n }\n\n replaceToken(newCode) {\n this.resultCode += this.previousWhitespaceAndComments();\n this.appendTokenPrefix();\n this.resultMappings[this.tokenIndex] = this.resultCode.length;\n this.resultCode += newCode;\n this.appendTokenSuffix();\n this.tokenIndex++;\n }\n\n replaceTokenTrimmingLeftWhitespace(newCode) {\n this.resultCode += this.previousWhitespaceAndComments().replace(/[^\\r\\n]/g, \"\");\n this.appendTokenPrefix();\n this.resultMappings[this.tokenIndex] = this.resultCode.length;\n this.resultCode += newCode;\n this.appendTokenSuffix();\n this.tokenIndex++;\n }\n\n removeInitialToken() {\n this.replaceToken(\"\");\n }\n\n removeToken() {\n this.replaceTokenTrimmingLeftWhitespace(\"\");\n }\n\n /**\n * Remove all code until the next }, accounting for balanced braces.\n */\n removeBalancedCode() {\n let braceDepth = 0;\n while (!this.isAtEnd()) {\n if (this.matches1(tt.braceL)) {\n braceDepth++;\n } else if (this.matches1(tt.braceR)) {\n if (braceDepth === 0) {\n return;\n }\n braceDepth--;\n }\n this.removeToken();\n }\n }\n\n copyExpectedToken(tokenType) {\n if (this.tokens[this.tokenIndex].type !== tokenType) {\n throw new Error(`Expected token ${tokenType}`);\n }\n this.copyToken();\n }\n\n copyToken() {\n this.resultCode += this.previousWhitespaceAndComments();\n this.appendTokenPrefix();\n this.resultMappings[this.tokenIndex] = this.resultCode.length;\n this.resultCode += this.code.slice(\n this.tokens[this.tokenIndex].start,\n this.tokens[this.tokenIndex].end,\n );\n this.appendTokenSuffix();\n this.tokenIndex++;\n }\n\n copyTokenWithPrefix(prefix) {\n this.resultCode += this.previousWhitespaceAndComments();\n this.appendTokenPrefix();\n this.resultCode += prefix;\n this.resultMappings[this.tokenIndex] = this.resultCode.length;\n this.resultCode += this.code.slice(\n this.tokens[this.tokenIndex].start,\n this.tokens[this.tokenIndex].end,\n );\n this.appendTokenSuffix();\n this.tokenIndex++;\n }\n\n appendTokenPrefix() {\n const token = this.currentToken();\n if (token.numNullishCoalesceStarts || token.isOptionalChainStart) {\n token.isAsyncOperation = isAsyncOperation(this);\n }\n if (this.disableESTransforms) {\n return;\n }\n if (token.numNullishCoalesceStarts) {\n for (let i = 0; i < token.numNullishCoalesceStarts; i++) {\n if (token.isAsyncOperation) {\n this.resultCode += \"await \";\n this.resultCode += this.helperManager.getHelperName(\"asyncNullishCoalesce\");\n } else {\n this.resultCode += this.helperManager.getHelperName(\"nullishCoalesce\");\n }\n this.resultCode += \"(\";\n }\n }\n if (token.isOptionalChainStart) {\n if (token.isAsyncOperation) {\n this.resultCode += \"await \";\n }\n if (this.tokenIndex > 0 && this.tokenAtRelativeIndex(-1).type === tt._delete) {\n if (token.isAsyncOperation) {\n this.resultCode += this.helperManager.getHelperName(\"asyncOptionalChainDelete\");\n } else {\n this.resultCode += this.helperManager.getHelperName(\"optionalChainDelete\");\n }\n } else if (token.isAsyncOperation) {\n this.resultCode += this.helperManager.getHelperName(\"asyncOptionalChain\");\n } else {\n this.resultCode += this.helperManager.getHelperName(\"optionalChain\");\n }\n this.resultCode += \"([\";\n }\n }\n\n appendTokenSuffix() {\n const token = this.currentToken();\n if (token.isOptionalChainEnd && !this.disableESTransforms) {\n this.resultCode += \"])\";\n }\n if (token.numNullishCoalesceEnds && !this.disableESTransforms) {\n for (let i = 0; i < token.numNullishCoalesceEnds; i++) {\n this.resultCode += \"))\";\n }\n }\n }\n\n appendCode(code) {\n this.resultCode += code;\n }\n\n currentToken() {\n return this.tokens[this.tokenIndex];\n }\n\n currentTokenCode() {\n const token = this.currentToken();\n return this.code.slice(token.start, token.end);\n }\n\n tokenAtRelativeIndex(relativeIndex) {\n return this.tokens[this.tokenIndex + relativeIndex];\n }\n\n currentIndex() {\n return this.tokenIndex;\n }\n\n /**\n * Move to the next token. Only suitable in preprocessing steps. When\n * generating new code, you should use copyToken or removeToken.\n */\n nextToken() {\n if (this.tokenIndex === this.tokens.length) {\n throw new Error(\"Unexpectedly reached end of input.\");\n }\n this.tokenIndex++;\n }\n\n previousToken() {\n this.tokenIndex--;\n }\n\n finish() {\n if (this.tokenIndex !== this.tokens.length) {\n throw new Error(\"Tried to finish processing tokens before reaching the end.\");\n }\n this.resultCode += this.previousWhitespaceAndComments();\n return {code: this.resultCode, mappings: this.resultMappings};\n }\n\n isAtEnd() {\n return this.tokenIndex === this.tokens.length;\n }\n}\n", "\n\nimport {ContextualKeyword} from \"../parser/tokenizer/keywords\";\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Get information about the class fields for this class, given a token processor pointing to the\n * open-brace at the start of the class.\n */\nexport default function getClassInfo(\n rootTransformer,\n tokens,\n nameManager,\n disableESTransforms,\n) {\n const snapshot = tokens.snapshot();\n\n const headerInfo = processClassHeader(tokens);\n\n let constructorInitializerStatements = [];\n const instanceInitializerNames = [];\n const staticInitializerNames = [];\n let constructorInsertPos = null;\n const fields = [];\n const rangesToRemove = [];\n\n const classContextId = tokens.currentToken().contextId;\n if (classContextId == null) {\n throw new Error(\"Expected non-null class context ID on class open-brace.\");\n }\n\n tokens.nextToken();\n while (!tokens.matchesContextIdAndLabel(tt.braceR, classContextId)) {\n if (tokens.matchesContextual(ContextualKeyword._constructor) && !tokens.currentToken().isType) {\n ({constructorInitializerStatements, constructorInsertPos} = processConstructor(tokens));\n } else if (tokens.matches1(tt.semi)) {\n if (!disableESTransforms) {\n rangesToRemove.push({start: tokens.currentIndex(), end: tokens.currentIndex() + 1});\n }\n tokens.nextToken();\n } else if (tokens.currentToken().isType) {\n tokens.nextToken();\n } else {\n // Either a method or a field. Skip to the identifier part.\n const statementStartIndex = tokens.currentIndex();\n let isStatic = false;\n let isESPrivate = false;\n let isDeclareOrAbstract = false;\n while (isAccessModifier(tokens.currentToken())) {\n if (tokens.matches1(tt._static)) {\n isStatic = true;\n }\n if (tokens.matches1(tt.hash)) {\n isESPrivate = true;\n }\n if (tokens.matches1(tt._declare) || tokens.matches1(tt._abstract)) {\n isDeclareOrAbstract = true;\n }\n tokens.nextToken();\n }\n if (isStatic && tokens.matches1(tt.braceL)) {\n // This is a static block, so don't process it in any special way.\n skipToNextClassElement(tokens, classContextId);\n continue;\n }\n if (isESPrivate) {\n // Sucrase doesn't attempt to transpile private fields; just leave them as-is.\n skipToNextClassElement(tokens, classContextId);\n continue;\n }\n if (\n tokens.matchesContextual(ContextualKeyword._constructor) &&\n !tokens.currentToken().isType\n ) {\n ({constructorInitializerStatements, constructorInsertPos} = processConstructor(tokens));\n continue;\n }\n\n const nameStartIndex = tokens.currentIndex();\n skipFieldName(tokens);\n if (tokens.matches1(tt.lessThan) || tokens.matches1(tt.parenL)) {\n // This is a method, so nothing to process.\n skipToNextClassElement(tokens, classContextId);\n continue;\n }\n // There might be a type annotation that we need to skip.\n while (tokens.currentToken().isType) {\n tokens.nextToken();\n }\n if (tokens.matches1(tt.eq)) {\n const equalsIndex = tokens.currentIndex();\n // This is an initializer, so we need to wrap in an initializer method.\n const valueEnd = tokens.currentToken().rhsEndIndex;\n if (valueEnd == null) {\n throw new Error(\"Expected rhsEndIndex on class field assignment.\");\n }\n tokens.nextToken();\n while (tokens.currentIndex() < valueEnd) {\n rootTransformer.processToken();\n }\n let initializerName;\n if (isStatic) {\n initializerName = nameManager.claimFreeName(\"__initStatic\");\n staticInitializerNames.push(initializerName);\n } else {\n initializerName = nameManager.claimFreeName(\"__init\");\n instanceInitializerNames.push(initializerName);\n }\n // Fields start at the name, so `static x = 1;` has a field range of `x = 1;`.\n fields.push({\n initializerName,\n equalsIndex,\n start: nameStartIndex,\n end: tokens.currentIndex(),\n });\n } else if (!disableESTransforms || isDeclareOrAbstract) {\n // This is a regular field declaration, like `x;`. With the class transform enabled, we just\n // remove the line so that no output is produced. With the class transform disabled, we\n // usually want to preserve the declaration (but still strip types), but if the `declare`\n // or `abstract` keyword is specified, we should remove the line to avoid initializing the\n // value to undefined.\n rangesToRemove.push({start: statementStartIndex, end: tokens.currentIndex()});\n }\n }\n }\n\n tokens.restoreToSnapshot(snapshot);\n if (disableESTransforms) {\n // With ES transforms disabled, we don't want to transform regular class\n // field declarations, and we don't need to do any additional tricks to\n // reference the constructor for static init, but we still need to transform\n // TypeScript field initializers defined as constructor parameters and we\n // still need to remove `declare` fields. For now, we run the same code\n // path but omit any field information, as if the class had no field\n // declarations. In the future, when we fully drop the class fields\n // transform, we can simplify this code significantly.\n return {\n headerInfo,\n constructorInitializerStatements,\n instanceInitializerNames: [],\n staticInitializerNames: [],\n constructorInsertPos,\n fields: [],\n rangesToRemove,\n };\n } else {\n return {\n headerInfo,\n constructorInitializerStatements,\n instanceInitializerNames,\n staticInitializerNames,\n constructorInsertPos,\n fields,\n rangesToRemove,\n };\n }\n}\n\n/**\n * Move the token processor to the next method/field in the class.\n *\n * To do that, we seek forward to the next start of a class name (either an open\n * bracket or an identifier, or the closing curly brace), then seek backward to\n * include any access modifiers.\n */\nfunction skipToNextClassElement(tokens, classContextId) {\n tokens.nextToken();\n while (tokens.currentToken().contextId !== classContextId) {\n tokens.nextToken();\n }\n while (isAccessModifier(tokens.tokenAtRelativeIndex(-1))) {\n tokens.previousToken();\n }\n}\n\nfunction processClassHeader(tokens) {\n const classToken = tokens.currentToken();\n const contextId = classToken.contextId;\n if (contextId == null) {\n throw new Error(\"Expected context ID on class token.\");\n }\n const isExpression = classToken.isExpression;\n if (isExpression == null) {\n throw new Error(\"Expected isExpression on class token.\");\n }\n let className = null;\n let hasSuperclass = false;\n tokens.nextToken();\n if (tokens.matches1(tt.name)) {\n className = tokens.identifierName();\n }\n while (!tokens.matchesContextIdAndLabel(tt.braceL, contextId)) {\n // If this has a superclass, there will always be an `extends` token. If it doesn't have a\n // superclass, only type parameters and `implements` clauses can show up here, all of which\n // consist only of type tokens. A declaration like `class A<B extends C> {` should *not* count\n // as having a superclass.\n if (tokens.matches1(tt._extends) && !tokens.currentToken().isType) {\n hasSuperclass = true;\n }\n tokens.nextToken();\n }\n return {isExpression, className, hasSuperclass};\n}\n\n/**\n * Extract useful information out of a constructor, starting at the \"constructor\" name.\n */\nfunction processConstructor(tokens)\n\n\n {\n const constructorInitializerStatements = [];\n\n tokens.nextToken();\n const constructorContextId = tokens.currentToken().contextId;\n if (constructorContextId == null) {\n throw new Error(\"Expected context ID on open-paren starting constructor params.\");\n }\n // Advance through parameters looking for access modifiers.\n while (!tokens.matchesContextIdAndLabel(tt.parenR, constructorContextId)) {\n if (tokens.currentToken().contextId === constructorContextId) {\n // Current token is an open paren or comma just before a param, so check\n // that param for access modifiers.\n tokens.nextToken();\n if (isAccessModifier(tokens.currentToken())) {\n tokens.nextToken();\n while (isAccessModifier(tokens.currentToken())) {\n tokens.nextToken();\n }\n const token = tokens.currentToken();\n if (token.type !== tt.name) {\n throw new Error(\"Expected identifier after access modifiers in constructor arg.\");\n }\n const name = tokens.identifierNameForToken(token);\n constructorInitializerStatements.push(`this.${name} = ${name}`);\n }\n } else {\n tokens.nextToken();\n }\n }\n // )\n tokens.nextToken();\n // Constructor type annotations are invalid, but skip them anyway since\n // they're easy to skip.\n while (tokens.currentToken().isType) {\n tokens.nextToken();\n }\n let constructorInsertPos = tokens.currentIndex();\n\n // Advance through body looking for a super call.\n let foundSuperCall = false;\n while (!tokens.matchesContextIdAndLabel(tt.braceR, constructorContextId)) {\n if (!foundSuperCall && tokens.matches2(tt._super, tt.parenL)) {\n tokens.nextToken();\n const superCallContextId = tokens.currentToken().contextId;\n if (superCallContextId == null) {\n throw new Error(\"Expected a context ID on the super call\");\n }\n while (!tokens.matchesContextIdAndLabel(tt.parenR, superCallContextId)) {\n tokens.nextToken();\n }\n constructorInsertPos = tokens.currentIndex();\n foundSuperCall = true;\n }\n tokens.nextToken();\n }\n // }\n tokens.nextToken();\n\n return {constructorInitializerStatements, constructorInsertPos};\n}\n\n/**\n * Determine if this is any token that can go before the name in a method/field.\n */\nfunction isAccessModifier(token) {\n return [\n tt._async,\n tt._get,\n tt._set,\n tt.plus,\n tt.minus,\n tt._readonly,\n tt._static,\n tt._public,\n tt._private,\n tt._protected,\n tt._override,\n tt._abstract,\n tt.star,\n tt._declare,\n tt.hash,\n ].includes(token.type);\n}\n\n/**\n * The next token or set of tokens is either an identifier or an expression in square brackets, for\n * a method or field name.\n */\nfunction skipFieldName(tokens) {\n if (tokens.matches1(tt.bracketL)) {\n const startToken = tokens.currentToken();\n const classContextId = startToken.contextId;\n if (classContextId == null) {\n throw new Error(\"Expected class context ID on computed name open bracket.\");\n }\n while (!tokens.matchesContextIdAndLabel(tt.bracketR, classContextId)) {\n tokens.nextToken();\n }\n tokens.nextToken();\n } else {\n tokens.nextToken();\n }\n}\n", "import {TokenType as tt} from \"../parser/tokenizer/types\";\n\n\nexport default function elideImportEquals(tokens) {\n // import\n tokens.removeInitialToken();\n // name\n tokens.removeToken();\n // =\n tokens.removeToken();\n // name or require\n tokens.removeToken();\n // Handle either `import A = require('A')` or `import A = B.C.D`.\n if (tokens.matches1(tt.parenL)) {\n // (\n tokens.removeToken();\n // path string\n tokens.removeToken();\n // )\n tokens.removeToken();\n } else {\n while (tokens.matches1(tt.dot)) {\n // .\n tokens.removeToken();\n // name\n tokens.removeToken();\n }\n }\n}\n", "import {isTopLevelDeclaration} from \"../parser/tokenizer\";\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\n\n\n\n\n\n\nexport const EMPTY_DECLARATION_INFO = {\n typeDeclarations: new Set(),\n valueDeclarations: new Set(),\n};\n\n/**\n * Get all top-level identifiers that should be preserved when exported in TypeScript.\n *\n * Examples:\n * - If an identifier is declared as `const x`, then `export {x}` should be preserved.\n * - If it's declared as `type x`, then `export {x}` should be removed.\n * - If it's declared as both `const x` and `type x`, then the export should be preserved.\n * - Classes and enums should be preserved (even though they also introduce types).\n * - Imported identifiers should be preserved since we don't have enough information to\n * rule them out. --isolatedModules disallows re-exports, which catches errors here.\n */\nexport default function getDeclarationInfo(tokens) {\n const typeDeclarations = new Set();\n const valueDeclarations = new Set();\n for (let i = 0; i < tokens.tokens.length; i++) {\n const token = tokens.tokens[i];\n if (token.type === tt.name && isTopLevelDeclaration(token)) {\n if (token.isType) {\n typeDeclarations.add(tokens.identifierNameForToken(token));\n } else {\n valueDeclarations.add(tokens.identifierNameForToken(token));\n }\n }\n }\n return {typeDeclarations, valueDeclarations};\n}\n", "import {ContextualKeyword} from \"../parser/tokenizer/keywords\";\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\n\n/**\n * Starting at `export {`, look ahead and return `true` if this is an\n * `export {...} from` statement and `false` if this is a plain multi-export.\n */\nexport default function isExportFrom(tokens) {\n let closeBraceIndex = tokens.currentIndex();\n while (!tokens.matches1AtIndex(closeBraceIndex, tt.braceR)) {\n closeBraceIndex++;\n }\n return (\n tokens.matchesContextualAtIndex(closeBraceIndex + 1, ContextualKeyword._from) &&\n tokens.matches1AtIndex(closeBraceIndex + 2, tt.string)\n );\n}\n", "import {ContextualKeyword} from \"../parser/tokenizer/keywords\";\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\n\n/**\n * Starting at a potential `with` or (legacy) `assert` token, remove the import\n * attributes if they exist.\n */\nexport function removeMaybeImportAttributes(tokens) {\n if (\n tokens.matches2(tt._with, tt.braceL) ||\n (tokens.matches2(tt.name, tt.braceL) && tokens.matchesContextual(ContextualKeyword._assert))\n ) {\n // assert\n tokens.removeToken();\n // {\n tokens.removeToken();\n tokens.removeBalancedCode();\n // }\n tokens.removeToken();\n }\n}\n", "import {TokenType as tt} from \"../parser/tokenizer/types\";\n\n\n\n/**\n * Common method sharing code between CJS and ESM cases, since they're the same here.\n */\nexport default function shouldElideDefaultExport(\n isTypeScriptTransformEnabled,\n keepUnusedImports,\n tokens,\n declarationInfo,\n) {\n if (!isTypeScriptTransformEnabled || keepUnusedImports) {\n return false;\n }\n const exportToken = tokens.currentToken();\n if (exportToken.rhsEndIndex == null) {\n throw new Error(\"Expected non-null rhsEndIndex on export token.\");\n }\n // The export must be of the form `export default a` or `export default a;`.\n const numTokens = exportToken.rhsEndIndex - tokens.currentIndex();\n if (\n numTokens !== 3 &&\n !(numTokens === 4 && tokens.matches1AtIndex(exportToken.rhsEndIndex - 1, tt.semi))\n ) {\n return false;\n }\n const identifierToken = tokens.tokenAtRelativeIndex(2);\n if (identifierToken.type !== tt.name) {\n return false;\n }\n const exportedName = tokens.identifierNameForToken(identifierToken);\n return (\n declarationInfo.typeDeclarations.has(exportedName) &&\n !declarationInfo.valueDeclarations.has(exportedName)\n );\n}\n", "\n\n\nimport {IdentifierRole, isDeclaration, isObjectShorthandDeclaration} from \"../parser/tokenizer\";\nimport {ContextualKeyword} from \"../parser/tokenizer/keywords\";\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\nimport elideImportEquals from \"../util/elideImportEquals\";\nimport getDeclarationInfo, {\n\n EMPTY_DECLARATION_INFO,\n} from \"../util/getDeclarationInfo\";\nimport getImportExportSpecifierInfo from \"../util/getImportExportSpecifierInfo\";\nimport isExportFrom from \"../util/isExportFrom\";\nimport {removeMaybeImportAttributes} from \"../util/removeMaybeImportAttributes\";\nimport shouldElideDefaultExport from \"../util/shouldElideDefaultExport\";\n\n\nimport Transformer from \"./Transformer\";\n\n/**\n * Class for editing import statements when we are transforming to commonjs.\n */\nexport default class CJSImportTransformer extends Transformer {\n __init() {this.hadExport = false}\n __init2() {this.hadNamedExport = false}\n __init3() {this.hadDefaultExport = false}\n \n\n constructor(\n rootTransformer,\n tokens,\n importProcessor,\n nameManager,\n helperManager,\n reactHotLoaderTransformer,\n enableLegacyBabel5ModuleInterop,\n enableLegacyTypeScriptModuleInterop,\n isTypeScriptTransformEnabled,\n isFlowTransformEnabled,\n preserveDynamicImport,\n keepUnusedImports,\n ) {\n super();this.rootTransformer = rootTransformer;this.tokens = tokens;this.importProcessor = importProcessor;this.nameManager = nameManager;this.helperManager = helperManager;this.reactHotLoaderTransformer = reactHotLoaderTransformer;this.enableLegacyBabel5ModuleInterop = enableLegacyBabel5ModuleInterop;this.enableLegacyTypeScriptModuleInterop = enableLegacyTypeScriptModuleInterop;this.isTypeScriptTransformEnabled = isTypeScriptTransformEnabled;this.isFlowTransformEnabled = isFlowTransformEnabled;this.preserveDynamicImport = preserveDynamicImport;this.keepUnusedImports = keepUnusedImports;CJSImportTransformer.prototype.__init.call(this);CJSImportTransformer.prototype.__init2.call(this);CJSImportTransformer.prototype.__init3.call(this);;\n this.declarationInfo = isTypeScriptTransformEnabled\n ? getDeclarationInfo(tokens)\n : EMPTY_DECLARATION_INFO;\n }\n\n getPrefixCode() {\n let prefix = \"\";\n if (this.hadExport) {\n prefix += 'Object.defineProperty(exports, \"__esModule\", {value: true});';\n }\n return prefix;\n }\n\n getSuffixCode() {\n if (this.enableLegacyBabel5ModuleInterop && this.hadDefaultExport && !this.hadNamedExport) {\n return \"\\nmodule.exports = exports.default;\\n\";\n }\n return \"\";\n }\n\n process() {\n // TypeScript `import foo = require('foo');` should always just be translated to plain require.\n if (this.tokens.matches3(tt._import, tt.name, tt.eq)) {\n return this.processImportEquals();\n }\n if (this.tokens.matches1(tt._import)) {\n this.processImport();\n return true;\n }\n if (this.tokens.matches2(tt._export, tt.eq)) {\n this.tokens.replaceToken(\"module.exports\");\n return true;\n }\n if (this.tokens.matches1(tt._export) && !this.tokens.currentToken().isType) {\n this.hadExport = true;\n return this.processExport();\n }\n if (this.tokens.matches2(tt.name, tt.postIncDec)) {\n // Fall through to normal identifier matching if this doesn't apply.\n if (this.processPostIncDec()) {\n return true;\n }\n }\n if (this.tokens.matches1(tt.name) || this.tokens.matches1(tt.jsxName)) {\n return this.processIdentifier();\n }\n if (this.tokens.matches1(tt.eq)) {\n return this.processAssignment();\n }\n if (this.tokens.matches1(tt.assign)) {\n return this.processComplexAssignment();\n }\n if (this.tokens.matches1(tt.preIncDec)) {\n return this.processPreIncDec();\n }\n return false;\n }\n\n processImportEquals() {\n const importName = this.tokens.identifierNameAtIndex(this.tokens.currentIndex() + 1);\n if (this.importProcessor.shouldAutomaticallyElideImportedName(importName)) {\n // If this name is only used as a type, elide the whole import.\n elideImportEquals(this.tokens);\n } else {\n // Otherwise, switch `import` to `const`.\n this.tokens.replaceToken(\"const\");\n }\n return true;\n }\n\n /**\n * Transform this:\n * import foo, {bar} from 'baz';\n * into\n * var _baz = require('baz'); var _baz2 = _interopRequireDefault(_baz);\n *\n * The import code was already generated in the import preprocessing step, so\n * we just need to look it up.\n */\n processImport() {\n if (this.tokens.matches2(tt._import, tt.parenL)) {\n if (this.preserveDynamicImport) {\n // Bail out, only making progress for this one token.\n this.tokens.copyToken();\n return;\n }\n const requireWrapper = this.enableLegacyTypeScriptModuleInterop\n ? \"\"\n : `${this.helperManager.getHelperName(\"interopRequireWildcard\")}(`;\n this.tokens.replaceToken(`Promise.resolve().then(() => ${requireWrapper}require`);\n const contextId = this.tokens.currentToken().contextId;\n if (contextId == null) {\n throw new Error(\"Expected context ID on dynamic import invocation.\");\n }\n this.tokens.copyToken();\n while (!this.tokens.matchesContextIdAndLabel(tt.parenR, contextId)) {\n this.rootTransformer.processToken();\n }\n this.tokens.replaceToken(requireWrapper ? \")))\" : \"))\");\n return;\n }\n\n const shouldElideImport = this.removeImportAndDetectIfShouldElide();\n if (shouldElideImport) {\n this.tokens.removeToken();\n } else {\n const path = this.tokens.stringValue();\n this.tokens.replaceTokenTrimmingLeftWhitespace(this.importProcessor.claimImportCode(path));\n this.tokens.appendCode(this.importProcessor.claimImportCode(path));\n }\n removeMaybeImportAttributes(this.tokens);\n if (this.tokens.matches1(tt.semi)) {\n this.tokens.removeToken();\n }\n }\n\n /**\n * Erase this import (since any CJS output would be completely different), and\n * return true if this import is should be elided due to being a type-only\n * import. Such imports will not be emitted at all to avoid side effects.\n *\n * Import elision only happens with the TypeScript or Flow transforms enabled.\n *\n * TODO: This function has some awkward overlap with\n * CJSImportProcessor.pruneTypeOnlyImports , and the two should be unified.\n * That function handles TypeScript implicit import name elision, and removes\n * an import if all typical imported names (without `type`) are removed due\n * to being type-only imports. This function handles Flow import removal and\n * properly distinguishes `import 'foo'` from `import {} from 'foo'` for TS\n * purposes.\n *\n * The position should end at the import string.\n */\n removeImportAndDetectIfShouldElide() {\n this.tokens.removeInitialToken();\n if (\n this.tokens.matchesContextual(ContextualKeyword._type) &&\n !this.tokens.matches1AtIndex(this.tokens.currentIndex() + 1, tt.comma) &&\n !this.tokens.matchesContextualAtIndex(this.tokens.currentIndex() + 1, ContextualKeyword._from)\n ) {\n // This is an \"import type\" statement, so exit early.\n this.removeRemainingImport();\n return true;\n }\n\n if (this.tokens.matches1(tt.name) || this.tokens.matches1(tt.star)) {\n // We have a default import or namespace import, so there must be some\n // non-type import.\n this.removeRemainingImport();\n return false;\n }\n\n if (this.tokens.matches1(tt.string)) {\n // This is a bare import, so we should proceed with the import.\n return false;\n }\n\n let foundNonTypeImport = false;\n let foundAnyNamedImport = false;\n while (!this.tokens.matches1(tt.string)) {\n // Check if any named imports are of the form \"foo\" or \"foo as bar\", with\n // no leading \"type\".\n if (\n (!foundNonTypeImport && this.tokens.matches1(tt.braceL)) ||\n this.tokens.matches1(tt.comma)\n ) {\n this.tokens.removeToken();\n if (!this.tokens.matches1(tt.braceR)) {\n foundAnyNamedImport = true;\n }\n if (\n this.tokens.matches2(tt.name, tt.comma) ||\n this.tokens.matches2(tt.name, tt.braceR) ||\n this.tokens.matches4(tt.name, tt.name, tt.name, tt.comma) ||\n this.tokens.matches4(tt.name, tt.name, tt.name, tt.braceR)\n ) {\n foundNonTypeImport = true;\n }\n }\n this.tokens.removeToken();\n }\n if (this.keepUnusedImports) {\n return false;\n }\n if (this.isTypeScriptTransformEnabled) {\n return !foundNonTypeImport;\n } else if (this.isFlowTransformEnabled) {\n // In Flow, unlike TS, `import {} from 'foo';` preserves the import.\n return foundAnyNamedImport && !foundNonTypeImport;\n } else {\n return false;\n }\n }\n\n removeRemainingImport() {\n while (!this.tokens.matches1(tt.string)) {\n this.tokens.removeToken();\n }\n }\n\n processIdentifier() {\n const token = this.tokens.currentToken();\n if (token.shadowsGlobal) {\n return false;\n }\n\n if (token.identifierRole === IdentifierRole.ObjectShorthand) {\n return this.processObjectShorthand();\n }\n\n if (token.identifierRole !== IdentifierRole.Access) {\n return false;\n }\n const replacement = this.importProcessor.getIdentifierReplacement(\n this.tokens.identifierNameForToken(token),\n );\n if (!replacement) {\n return false;\n }\n // Tolerate any number of closing parens while looking for an opening paren\n // that indicates a function call.\n let possibleOpenParenIndex = this.tokens.currentIndex() + 1;\n while (\n possibleOpenParenIndex < this.tokens.tokens.length &&\n this.tokens.tokens[possibleOpenParenIndex].type === tt.parenR\n ) {\n possibleOpenParenIndex++;\n }\n // Avoid treating imported functions as methods of their `exports` object\n // by using `(0, f)` when the identifier is in a paren expression. Else\n // use `Function.prototype.call` when the identifier is a guaranteed\n // function call. When using `call`, pass undefined as the context.\n if (this.tokens.tokens[possibleOpenParenIndex].type === tt.parenL) {\n if (\n this.tokens.tokenAtRelativeIndex(1).type === tt.parenL &&\n this.tokens.tokenAtRelativeIndex(-1).type !== tt._new\n ) {\n this.tokens.replaceToken(`${replacement}.call(void 0, `);\n // Remove the old paren.\n this.tokens.removeToken();\n // Balance out the new paren.\n this.rootTransformer.processBalancedCode();\n this.tokens.copyExpectedToken(tt.parenR);\n } else {\n // See here: http://2ality.com/2015/12/references.html\n this.tokens.replaceToken(`(0, ${replacement})`);\n }\n } else {\n this.tokens.replaceToken(replacement);\n }\n return true;\n }\n\n processObjectShorthand() {\n const identifier = this.tokens.identifierName();\n const replacement = this.importProcessor.getIdentifierReplacement(identifier);\n if (!replacement) {\n return false;\n }\n this.tokens.replaceToken(`${identifier}: ${replacement}`);\n return true;\n }\n\n processExport() {\n if (\n this.tokens.matches2(tt._export, tt._enum) ||\n this.tokens.matches3(tt._export, tt._const, tt._enum)\n ) {\n this.hadNamedExport = true;\n // Let the TypeScript transform handle it.\n return false;\n }\n if (this.tokens.matches2(tt._export, tt._default)) {\n if (this.tokens.matches3(tt._export, tt._default, tt._enum)) {\n this.hadDefaultExport = true;\n // Flow export default enums need some special handling, so handle them\n // in that tranform rather than this one.\n return false;\n }\n this.processExportDefault();\n return true;\n } else if (this.tokens.matches2(tt._export, tt.braceL)) {\n this.processExportBindings();\n return true;\n } else if (\n this.tokens.matches2(tt._export, tt.name) &&\n this.tokens.matchesContextualAtIndex(this.tokens.currentIndex() + 1, ContextualKeyword._type)\n ) {\n // export type {a};\n // export type {a as b};\n // export type {a} from './b';\n // export type * from './b';\n // export type * as ns from './b';\n this.tokens.removeInitialToken();\n this.tokens.removeToken();\n if (this.tokens.matches1(tt.braceL)) {\n while (!this.tokens.matches1(tt.braceR)) {\n this.tokens.removeToken();\n }\n this.tokens.removeToken();\n } else {\n // *\n this.tokens.removeToken();\n if (this.tokens.matches1(tt._as)) {\n // as\n this.tokens.removeToken();\n // ns\n this.tokens.removeToken();\n }\n }\n // Remove type re-export `... } from './T'`\n if (\n this.tokens.matchesContextual(ContextualKeyword._from) &&\n this.tokens.matches1AtIndex(this.tokens.currentIndex() + 1, tt.string)\n ) {\n this.tokens.removeToken();\n this.tokens.removeToken();\n removeMaybeImportAttributes(this.tokens);\n }\n return true;\n }\n this.hadNamedExport = true;\n if (\n this.tokens.matches2(tt._export, tt._var) ||\n this.tokens.matches2(tt._export, tt._let) ||\n this.tokens.matches2(tt._export, tt._const)\n ) {\n this.processExportVar();\n return true;\n } else if (\n this.tokens.matches2(tt._export, tt._function) ||\n // export async function\n this.tokens.matches3(tt._export, tt.name, tt._function)\n ) {\n this.processExportFunction();\n return true;\n } else if (\n this.tokens.matches2(tt._export, tt._class) ||\n this.tokens.matches3(tt._export, tt._abstract, tt._class) ||\n this.tokens.matches2(tt._export, tt.at)\n ) {\n this.processExportClass();\n return true;\n } else if (this.tokens.matches2(tt._export, tt.star)) {\n this.processExportStar();\n return true;\n } else {\n throw new Error(\"Unrecognized export syntax.\");\n }\n }\n\n processAssignment() {\n const index = this.tokens.currentIndex();\n const identifierToken = this.tokens.tokens[index - 1];\n // If the LHS is a type identifier, this must be a declaration like `let a: b = c;`,\n // with `b` as the identifier, so nothing needs to be done in that case.\n if (identifierToken.isType || identifierToken.type !== tt.name) {\n return false;\n }\n if (identifierToken.shadowsGlobal) {\n return false;\n }\n if (index >= 2 && this.tokens.matches1AtIndex(index - 2, tt.dot)) {\n return false;\n }\n if (index >= 2 && [tt._var, tt._let, tt._const].includes(this.tokens.tokens[index - 2].type)) {\n // Declarations don't need an extra assignment. This doesn't avoid the\n // assignment for comma-separated declarations, but it's still correct\n // since the assignment is just redundant.\n return false;\n }\n const assignmentSnippet = this.importProcessor.resolveExportBinding(\n this.tokens.identifierNameForToken(identifierToken),\n );\n if (!assignmentSnippet) {\n return false;\n }\n this.tokens.copyToken();\n this.tokens.appendCode(` ${assignmentSnippet} =`);\n return true;\n }\n\n /**\n * Process something like `a += 3`, where `a` might be an exported value.\n */\n processComplexAssignment() {\n const index = this.tokens.currentIndex();\n const identifierToken = this.tokens.tokens[index - 1];\n if (identifierToken.type !== tt.name) {\n return false;\n }\n if (identifierToken.shadowsGlobal) {\n return false;\n }\n if (index >= 2 && this.tokens.matches1AtIndex(index - 2, tt.dot)) {\n return false;\n }\n const assignmentSnippet = this.importProcessor.resolveExportBinding(\n this.tokens.identifierNameForToken(identifierToken),\n );\n if (!assignmentSnippet) {\n return false;\n }\n this.tokens.appendCode(` = ${assignmentSnippet}`);\n this.tokens.copyToken();\n return true;\n }\n\n /**\n * Process something like `++a`, where `a` might be an exported value.\n */\n processPreIncDec() {\n const index = this.tokens.currentIndex();\n const identifierToken = this.tokens.tokens[index + 1];\n if (identifierToken.type !== tt.name) {\n return false;\n }\n if (identifierToken.shadowsGlobal) {\n return false;\n }\n // Ignore things like ++a.b and ++a[b] and ++a().b.\n if (\n index + 2 < this.tokens.tokens.length &&\n (this.tokens.matches1AtIndex(index + 2, tt.dot) ||\n this.tokens.matches1AtIndex(index + 2, tt.bracketL) ||\n this.tokens.matches1AtIndex(index + 2, tt.parenL))\n ) {\n return false;\n }\n const identifierName = this.tokens.identifierNameForToken(identifierToken);\n const assignmentSnippet = this.importProcessor.resolveExportBinding(identifierName);\n if (!assignmentSnippet) {\n return false;\n }\n this.tokens.appendCode(`${assignmentSnippet} = `);\n this.tokens.copyToken();\n return true;\n }\n\n /**\n * Process something like `a++`, where `a` might be an exported value.\n * This starts at the `a`, not at the `++`.\n */\n processPostIncDec() {\n const index = this.tokens.currentIndex();\n const identifierToken = this.tokens.tokens[index];\n const operatorToken = this.tokens.tokens[index + 1];\n if (identifierToken.type !== tt.name) {\n return false;\n }\n if (identifierToken.shadowsGlobal) {\n return false;\n }\n if (index >= 1 && this.tokens.matches1AtIndex(index - 1, tt.dot)) {\n return false;\n }\n const identifierName = this.tokens.identifierNameForToken(identifierToken);\n const assignmentSnippet = this.importProcessor.resolveExportBinding(identifierName);\n if (!assignmentSnippet) {\n return false;\n }\n const operatorCode = this.tokens.rawCodeForToken(operatorToken);\n // We might also replace the identifier with something like exports.x, so\n // do that replacement here as well.\n const base = this.importProcessor.getIdentifierReplacement(identifierName) || identifierName;\n if (operatorCode === \"++\") {\n this.tokens.replaceToken(`(${base} = ${assignmentSnippet} = ${base} + 1, ${base} - 1)`);\n } else if (operatorCode === \"--\") {\n this.tokens.replaceToken(`(${base} = ${assignmentSnippet} = ${base} - 1, ${base} + 1)`);\n } else {\n throw new Error(`Unexpected operator: ${operatorCode}`);\n }\n this.tokens.removeToken();\n return true;\n }\n\n processExportDefault() {\n let exportedRuntimeValue = true;\n if (\n this.tokens.matches4(tt._export, tt._default, tt._function, tt.name) ||\n // export default async function\n (this.tokens.matches5(tt._export, tt._default, tt.name, tt._function, tt.name) &&\n this.tokens.matchesContextualAtIndex(\n this.tokens.currentIndex() + 2,\n ContextualKeyword._async,\n ))\n ) {\n this.tokens.removeInitialToken();\n this.tokens.removeToken();\n // Named function export case: change it to a top-level function\n // declaration followed by exports statement.\n const name = this.processNamedFunction();\n this.tokens.appendCode(` exports.default = ${name};`);\n } else if (\n this.tokens.matches4(tt._export, tt._default, tt._class, tt.name) ||\n this.tokens.matches5(tt._export, tt._default, tt._abstract, tt._class, tt.name) ||\n this.tokens.matches3(tt._export, tt._default, tt.at)\n ) {\n this.tokens.removeInitialToken();\n this.tokens.removeToken();\n this.copyDecorators();\n if (this.tokens.matches1(tt._abstract)) {\n this.tokens.removeToken();\n }\n const name = this.rootTransformer.processNamedClass();\n this.tokens.appendCode(` exports.default = ${name};`);\n // After this point, this is a plain \"export default E\" statement.\n } else if (\n shouldElideDefaultExport(\n this.isTypeScriptTransformEnabled,\n this.keepUnusedImports,\n this.tokens,\n this.declarationInfo,\n )\n ) {\n // If the exported value is just an identifier and should be elided by TypeScript\n // rules, then remove it entirely. It will always have the form `export default e`,\n // where `e` is an identifier.\n exportedRuntimeValue = false;\n this.tokens.removeInitialToken();\n this.tokens.removeToken();\n this.tokens.removeToken();\n } else if (this.reactHotLoaderTransformer) {\n // We need to assign E to a variable. Change \"export default E\" to\n // \"let _default; exports.default = _default = E\"\n const defaultVarName = this.nameManager.claimFreeName(\"_default\");\n this.tokens.replaceToken(`let ${defaultVarName}; exports.`);\n this.tokens.copyToken();\n this.tokens.appendCode(` = ${defaultVarName} =`);\n this.reactHotLoaderTransformer.setExtractedDefaultExportName(defaultVarName);\n } else {\n // Change \"export default E\" to \"exports.default = E\"\n this.tokens.replaceToken(\"exports.\");\n this.tokens.copyToken();\n this.tokens.appendCode(\" =\");\n }\n if (exportedRuntimeValue) {\n this.hadDefaultExport = true;\n }\n }\n\n copyDecorators() {\n while (this.tokens.matches1(tt.at)) {\n this.tokens.copyToken();\n if (this.tokens.matches1(tt.parenL)) {\n this.tokens.copyExpectedToken(tt.parenL);\n this.rootTransformer.processBalancedCode();\n this.tokens.copyExpectedToken(tt.parenR);\n } else {\n this.tokens.copyExpectedToken(tt.name);\n while (this.tokens.matches1(tt.dot)) {\n this.tokens.copyExpectedToken(tt.dot);\n this.tokens.copyExpectedToken(tt.name);\n }\n if (this.tokens.matches1(tt.parenL)) {\n this.tokens.copyExpectedToken(tt.parenL);\n this.rootTransformer.processBalancedCode();\n this.tokens.copyExpectedToken(tt.parenR);\n }\n }\n }\n }\n\n /**\n * Transform a declaration like `export var`, `export let`, or `export const`.\n */\n processExportVar() {\n if (this.isSimpleExportVar()) {\n this.processSimpleExportVar();\n } else {\n this.processComplexExportVar();\n }\n }\n\n /**\n * Determine if the export is of the form:\n * export var/let/const [varName] = [expr];\n * In other words, determine if function name inference might apply.\n */\n isSimpleExportVar() {\n let tokenIndex = this.tokens.currentIndex();\n // export\n tokenIndex++;\n // var/let/const\n tokenIndex++;\n if (!this.tokens.matches1AtIndex(tokenIndex, tt.name)) {\n return false;\n }\n tokenIndex++;\n while (tokenIndex < this.tokens.tokens.length && this.tokens.tokens[tokenIndex].isType) {\n tokenIndex++;\n }\n if (!this.tokens.matches1AtIndex(tokenIndex, tt.eq)) {\n return false;\n }\n return true;\n }\n\n /**\n * Transform an `export var` declaration initializing a single variable.\n *\n * For example, this:\n * export const f = () => {};\n * becomes this:\n * const f = () => {}; exports.f = f;\n *\n * The variable is unused (e.g. exports.f has the true value of the export).\n * We need to produce an assignment of this form so that the function will\n * have an inferred name of \"f\", which wouldn't happen in the more general\n * case below.\n */\n processSimpleExportVar() {\n // export\n this.tokens.removeInitialToken();\n // var/let/const\n this.tokens.copyToken();\n const varName = this.tokens.identifierName();\n // x: number -> x\n while (!this.tokens.matches1(tt.eq)) {\n this.rootTransformer.processToken();\n }\n const endIndex = this.tokens.currentToken().rhsEndIndex;\n if (endIndex == null) {\n throw new Error(\"Expected = token with an end index.\");\n }\n while (this.tokens.currentIndex() < endIndex) {\n this.rootTransformer.processToken();\n }\n this.tokens.appendCode(`; exports.${varName} = ${varName}`);\n }\n\n /**\n * Transform normal declaration exports, including handling destructuring.\n * For example, this:\n * export const {x: [a = 2, b], c} = d;\n * becomes this:\n * ({x: [exports.a = 2, exports.b], c: exports.c} = d;)\n */\n processComplexExportVar() {\n this.tokens.removeInitialToken();\n this.tokens.removeToken();\n const needsParens = this.tokens.matches1(tt.braceL);\n if (needsParens) {\n this.tokens.appendCode(\"(\");\n }\n\n let depth = 0;\n while (true) {\n if (\n this.tokens.matches1(tt.braceL) ||\n this.tokens.matches1(tt.dollarBraceL) ||\n this.tokens.matches1(tt.bracketL)\n ) {\n depth++;\n this.tokens.copyToken();\n } else if (this.tokens.matches1(tt.braceR) || this.tokens.matches1(tt.bracketR)) {\n depth--;\n this.tokens.copyToken();\n } else if (\n depth === 0 &&\n !this.tokens.matches1(tt.name) &&\n !this.tokens.currentToken().isType\n ) {\n break;\n } else if (this.tokens.matches1(tt.eq)) {\n // Default values might have assignments in the RHS that we want to ignore, so skip past\n // them.\n const endIndex = this.tokens.currentToken().rhsEndIndex;\n if (endIndex == null) {\n throw new Error(\"Expected = token with an end index.\");\n }\n while (this.tokens.currentIndex() < endIndex) {\n this.rootTransformer.processToken();\n }\n } else {\n const token = this.tokens.currentToken();\n if (isDeclaration(token)) {\n const name = this.tokens.identifierName();\n let replacement = this.importProcessor.getIdentifierReplacement(name);\n if (replacement === null) {\n throw new Error(`Expected a replacement for ${name} in \\`export var\\` syntax.`);\n }\n if (isObjectShorthandDeclaration(token)) {\n replacement = `${name}: ${replacement}`;\n }\n this.tokens.replaceToken(replacement);\n } else {\n this.rootTransformer.processToken();\n }\n }\n }\n\n if (needsParens) {\n // Seek to the end of the RHS.\n const endIndex = this.tokens.currentToken().rhsEndIndex;\n if (endIndex == null) {\n throw new Error(\"Expected = token with an end index.\");\n }\n while (this.tokens.currentIndex() < endIndex) {\n this.rootTransformer.processToken();\n }\n this.tokens.appendCode(\")\");\n }\n }\n\n /**\n * Transform this:\n * export function foo() {}\n * into this:\n * function foo() {} exports.foo = foo;\n */\n processExportFunction() {\n this.tokens.replaceToken(\"\");\n const name = this.processNamedFunction();\n this.tokens.appendCode(` exports.${name} = ${name};`);\n }\n\n /**\n * Skip past a function with a name and return that name.\n */\n processNamedFunction() {\n if (this.tokens.matches1(tt._function)) {\n this.tokens.copyToken();\n } else if (this.tokens.matches2(tt.name, tt._function)) {\n if (!this.tokens.matchesContextual(ContextualKeyword._async)) {\n throw new Error(\"Expected async keyword in function export.\");\n }\n this.tokens.copyToken();\n this.tokens.copyToken();\n }\n if (this.tokens.matches1(tt.star)) {\n this.tokens.copyToken();\n }\n if (!this.tokens.matches1(tt.name)) {\n throw new Error(\"Expected identifier for exported function name.\");\n }\n const name = this.tokens.identifierName();\n this.tokens.copyToken();\n if (this.tokens.currentToken().isType) {\n this.tokens.removeInitialToken();\n while (this.tokens.currentToken().isType) {\n this.tokens.removeToken();\n }\n }\n this.tokens.copyExpectedToken(tt.parenL);\n this.rootTransformer.processBalancedCode();\n this.tokens.copyExpectedToken(tt.parenR);\n this.rootTransformer.processPossibleTypeRange();\n this.tokens.copyExpectedToken(tt.braceL);\n this.rootTransformer.processBalancedCode();\n this.tokens.copyExpectedToken(tt.braceR);\n return name;\n }\n\n /**\n * Transform this:\n * export class A {}\n * into this:\n * class A {} exports.A = A;\n */\n processExportClass() {\n this.tokens.removeInitialToken();\n this.copyDecorators();\n if (this.tokens.matches1(tt._abstract)) {\n this.tokens.removeToken();\n }\n const name = this.rootTransformer.processNamedClass();\n this.tokens.appendCode(` exports.${name} = ${name};`);\n }\n\n /**\n * Transform this:\n * export {a, b as c};\n * into this:\n * exports.a = a; exports.c = b;\n *\n * OR\n *\n * Transform this:\n * export {a, b as c} from './foo';\n * into the pre-generated Object.defineProperty code from the ImportProcessor.\n *\n * For the first case, if the TypeScript transform is enabled, we need to skip\n * exports that are only defined as types.\n */\n processExportBindings() {\n this.tokens.removeInitialToken();\n this.tokens.removeToken();\n\n const isReExport = isExportFrom(this.tokens);\n\n const exportStatements = [];\n while (true) {\n if (this.tokens.matches1(tt.braceR)) {\n this.tokens.removeToken();\n break;\n }\n\n const specifierInfo = getImportExportSpecifierInfo(this.tokens);\n\n while (this.tokens.currentIndex() < specifierInfo.endIndex) {\n this.tokens.removeToken();\n }\n\n const shouldRemoveExport =\n specifierInfo.isType ||\n (!isReExport && this.shouldElideExportedIdentifier(specifierInfo.leftName));\n if (!shouldRemoveExport) {\n const exportedName = specifierInfo.rightName;\n if (exportedName === \"default\") {\n this.hadDefaultExport = true;\n } else {\n this.hadNamedExport = true;\n }\n const localName = specifierInfo.leftName;\n const newLocalName = this.importProcessor.getIdentifierReplacement(localName);\n exportStatements.push(`exports.${exportedName} = ${newLocalName || localName};`);\n }\n\n if (this.tokens.matches1(tt.braceR)) {\n this.tokens.removeToken();\n break;\n }\n if (this.tokens.matches2(tt.comma, tt.braceR)) {\n this.tokens.removeToken();\n this.tokens.removeToken();\n break;\n } else if (this.tokens.matches1(tt.comma)) {\n this.tokens.removeToken();\n } else {\n throw new Error(`Unexpected token: ${JSON.stringify(this.tokens.currentToken())}`);\n }\n }\n\n if (this.tokens.matchesContextual(ContextualKeyword._from)) {\n // This is an export...from, so throw away the normal named export code\n // and use the Object.defineProperty code from ImportProcessor.\n this.tokens.removeToken();\n const path = this.tokens.stringValue();\n this.tokens.replaceTokenTrimmingLeftWhitespace(this.importProcessor.claimImportCode(path));\n removeMaybeImportAttributes(this.tokens);\n } else {\n // This is a normal named export, so use that.\n this.tokens.appendCode(exportStatements.join(\" \"));\n }\n\n if (this.tokens.matches1(tt.semi)) {\n this.tokens.removeToken();\n }\n }\n\n processExportStar() {\n this.tokens.removeInitialToken();\n while (!this.tokens.matches1(tt.string)) {\n this.tokens.removeToken();\n }\n const path = this.tokens.stringValue();\n this.tokens.replaceTokenTrimmingLeftWhitespace(this.importProcessor.claimImportCode(path));\n removeMaybeImportAttributes(this.tokens);\n if (this.tokens.matches1(tt.semi)) {\n this.tokens.removeToken();\n }\n }\n\n shouldElideExportedIdentifier(name) {\n return (\n this.isTypeScriptTransformEnabled &&\n !this.keepUnusedImports &&\n !this.declarationInfo.valueDeclarations.has(name)\n );\n }\n}\n", "\n\n\nimport {ContextualKeyword} from \"../parser/tokenizer/keywords\";\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\nimport elideImportEquals from \"../util/elideImportEquals\";\nimport getDeclarationInfo, {\n\n EMPTY_DECLARATION_INFO,\n} from \"../util/getDeclarationInfo\";\nimport getImportExportSpecifierInfo from \"../util/getImportExportSpecifierInfo\";\nimport {getNonTypeIdentifiers} from \"../util/getNonTypeIdentifiers\";\nimport isExportFrom from \"../util/isExportFrom\";\nimport {removeMaybeImportAttributes} from \"../util/removeMaybeImportAttributes\";\nimport shouldElideDefaultExport from \"../util/shouldElideDefaultExport\";\n\nimport Transformer from \"./Transformer\";\n\n/**\n * Class for editing import statements when we are keeping the code as ESM. We still need to remove\n * type-only imports in TypeScript and Flow.\n */\nexport default class ESMImportTransformer extends Transformer {\n \n \n \n\n constructor(\n tokens,\n nameManager,\n helperManager,\n reactHotLoaderTransformer,\n isTypeScriptTransformEnabled,\n isFlowTransformEnabled,\n keepUnusedImports,\n options,\n ) {\n super();this.tokens = tokens;this.nameManager = nameManager;this.helperManager = helperManager;this.reactHotLoaderTransformer = reactHotLoaderTransformer;this.isTypeScriptTransformEnabled = isTypeScriptTransformEnabled;this.isFlowTransformEnabled = isFlowTransformEnabled;this.keepUnusedImports = keepUnusedImports;;\n this.nonTypeIdentifiers =\n isTypeScriptTransformEnabled && !keepUnusedImports\n ? getNonTypeIdentifiers(tokens, options)\n : new Set();\n this.declarationInfo =\n isTypeScriptTransformEnabled && !keepUnusedImports\n ? getDeclarationInfo(tokens)\n : EMPTY_DECLARATION_INFO;\n this.injectCreateRequireForImportRequire = Boolean(options.injectCreateRequireForImportRequire);\n }\n\n process() {\n // TypeScript `import foo = require('foo');` should always just be translated to plain require.\n if (this.tokens.matches3(tt._import, tt.name, tt.eq)) {\n return this.processImportEquals();\n }\n if (\n this.tokens.matches4(tt._import, tt.name, tt.name, tt.eq) &&\n this.tokens.matchesContextualAtIndex(this.tokens.currentIndex() + 1, ContextualKeyword._type)\n ) {\n // import type T = require('T')\n this.tokens.removeInitialToken();\n // This construct is always exactly 8 tokens long, so remove the 7 remaining tokens.\n for (let i = 0; i < 7; i++) {\n this.tokens.removeToken();\n }\n return true;\n }\n if (this.tokens.matches2(tt._export, tt.eq)) {\n this.tokens.replaceToken(\"module.exports\");\n return true;\n }\n if (\n this.tokens.matches5(tt._export, tt._import, tt.name, tt.name, tt.eq) &&\n this.tokens.matchesContextualAtIndex(this.tokens.currentIndex() + 2, ContextualKeyword._type)\n ) {\n // export import type T = require('T')\n this.tokens.removeInitialToken();\n // This construct is always exactly 9 tokens long, so remove the 8 remaining tokens.\n for (let i = 0; i < 8; i++) {\n this.tokens.removeToken();\n }\n return true;\n }\n if (this.tokens.matches1(tt._import)) {\n return this.processImport();\n }\n if (this.tokens.matches2(tt._export, tt._default)) {\n return this.processExportDefault();\n }\n if (this.tokens.matches2(tt._export, tt.braceL)) {\n return this.processNamedExports();\n }\n if (\n this.tokens.matches2(tt._export, tt.name) &&\n this.tokens.matchesContextualAtIndex(this.tokens.currentIndex() + 1, ContextualKeyword._type)\n ) {\n // export type {a};\n // export type {a as b};\n // export type {a} from './b';\n // export type * from './b';\n // export type * as ns from './b';\n this.tokens.removeInitialToken();\n this.tokens.removeToken();\n if (this.tokens.matches1(tt.braceL)) {\n while (!this.tokens.matches1(tt.braceR)) {\n this.tokens.removeToken();\n }\n this.tokens.removeToken();\n } else {\n // *\n this.tokens.removeToken();\n if (this.tokens.matches1(tt._as)) {\n // as\n this.tokens.removeToken();\n // ns\n this.tokens.removeToken();\n }\n }\n // Remove type re-export `... } from './T'`\n if (\n this.tokens.matchesContextual(ContextualKeyword._from) &&\n this.tokens.matches1AtIndex(this.tokens.currentIndex() + 1, tt.string)\n ) {\n this.tokens.removeToken();\n this.tokens.removeToken();\n removeMaybeImportAttributes(this.tokens);\n }\n return true;\n }\n return false;\n }\n\n processImportEquals() {\n const importName = this.tokens.identifierNameAtIndex(this.tokens.currentIndex() + 1);\n if (this.shouldAutomaticallyElideImportedName(importName)) {\n // If this name is only used as a type, elide the whole import.\n elideImportEquals(this.tokens);\n } else if (this.injectCreateRequireForImportRequire) {\n // We're using require in an environment (Node ESM) that doesn't provide\n // it as a global, so generate a helper to import it.\n // import -> const\n this.tokens.replaceToken(\"const\");\n // Foo\n this.tokens.copyToken();\n // =\n this.tokens.copyToken();\n // require\n this.tokens.replaceToken(this.helperManager.getHelperName(\"require\"));\n } else {\n // Otherwise, just switch `import` to `const`.\n this.tokens.replaceToken(\"const\");\n }\n return true;\n }\n\n processImport() {\n if (this.tokens.matches2(tt._import, tt.parenL)) {\n // Dynamic imports don't need to be transformed.\n return false;\n }\n\n const snapshot = this.tokens.snapshot();\n const allImportsRemoved = this.removeImportTypeBindings();\n if (allImportsRemoved) {\n this.tokens.restoreToSnapshot(snapshot);\n while (!this.tokens.matches1(tt.string)) {\n this.tokens.removeToken();\n }\n this.tokens.removeToken();\n removeMaybeImportAttributes(this.tokens);\n if (this.tokens.matches1(tt.semi)) {\n this.tokens.removeToken();\n }\n }\n return true;\n }\n\n /**\n * Remove type bindings from this import, leaving the rest of the import intact.\n *\n * Return true if this import was ONLY types, and thus is eligible for removal. This will bail out\n * of the replacement operation, so we can return early here.\n */\n removeImportTypeBindings() {\n this.tokens.copyExpectedToken(tt._import);\n if (\n this.tokens.matchesContextual(ContextualKeyword._type) &&\n !this.tokens.matches1AtIndex(this.tokens.currentIndex() + 1, tt.comma) &&\n !this.tokens.matchesContextualAtIndex(this.tokens.currentIndex() + 1, ContextualKeyword._from)\n ) {\n // This is an \"import type\" statement, so exit early.\n return true;\n }\n\n if (this.tokens.matches1(tt.string)) {\n // This is a bare import, so we should proceed with the import.\n this.tokens.copyToken();\n return false;\n }\n\n // Skip the \"module\" token in import reflection.\n if (\n this.tokens.matchesContextual(ContextualKeyword._module) &&\n this.tokens.matchesContextualAtIndex(this.tokens.currentIndex() + 2, ContextualKeyword._from)\n ) {\n this.tokens.copyToken();\n }\n\n let foundNonTypeImport = false;\n let foundAnyNamedImport = false;\n let needsComma = false;\n\n // Handle default import.\n if (this.tokens.matches1(tt.name)) {\n if (this.shouldAutomaticallyElideImportedName(this.tokens.identifierName())) {\n this.tokens.removeToken();\n if (this.tokens.matches1(tt.comma)) {\n this.tokens.removeToken();\n }\n } else {\n foundNonTypeImport = true;\n this.tokens.copyToken();\n if (this.tokens.matches1(tt.comma)) {\n // We're in a statement like:\n // import A, * as B from './A';\n // or\n // import A, {foo} from './A';\n // where the `A` is being kept. The comma should be removed if an only\n // if the next part of the import statement is elided, but that's hard\n // to determine at this point in the code. Instead, always remove it\n // and set a flag to add it back if necessary.\n needsComma = true;\n this.tokens.removeToken();\n }\n }\n }\n\n if (this.tokens.matches1(tt.star)) {\n if (this.shouldAutomaticallyElideImportedName(this.tokens.identifierNameAtRelativeIndex(2))) {\n this.tokens.removeToken();\n this.tokens.removeToken();\n this.tokens.removeToken();\n } else {\n if (needsComma) {\n this.tokens.appendCode(\",\");\n }\n foundNonTypeImport = true;\n this.tokens.copyExpectedToken(tt.star);\n this.tokens.copyExpectedToken(tt.name);\n this.tokens.copyExpectedToken(tt.name);\n }\n } else if (this.tokens.matches1(tt.braceL)) {\n if (needsComma) {\n this.tokens.appendCode(\",\");\n }\n this.tokens.copyToken();\n while (!this.tokens.matches1(tt.braceR)) {\n foundAnyNamedImport = true;\n const specifierInfo = getImportExportSpecifierInfo(this.tokens);\n if (\n specifierInfo.isType ||\n this.shouldAutomaticallyElideImportedName(specifierInfo.rightName)\n ) {\n while (this.tokens.currentIndex() < specifierInfo.endIndex) {\n this.tokens.removeToken();\n }\n if (this.tokens.matches1(tt.comma)) {\n this.tokens.removeToken();\n }\n } else {\n foundNonTypeImport = true;\n while (this.tokens.currentIndex() < specifierInfo.endIndex) {\n this.tokens.copyToken();\n }\n if (this.tokens.matches1(tt.comma)) {\n this.tokens.copyToken();\n }\n }\n }\n this.tokens.copyExpectedToken(tt.braceR);\n }\n\n if (this.keepUnusedImports) {\n return false;\n }\n if (this.isTypeScriptTransformEnabled) {\n return !foundNonTypeImport;\n } else if (this.isFlowTransformEnabled) {\n // In Flow, unlike TS, `import {} from 'foo';` preserves the import.\n return foundAnyNamedImport && !foundNonTypeImport;\n } else {\n return false;\n }\n }\n\n shouldAutomaticallyElideImportedName(name) {\n return (\n this.isTypeScriptTransformEnabled &&\n !this.keepUnusedImports &&\n !this.nonTypeIdentifiers.has(name)\n );\n }\n\n processExportDefault() {\n if (\n shouldElideDefaultExport(\n this.isTypeScriptTransformEnabled,\n this.keepUnusedImports,\n this.tokens,\n this.declarationInfo,\n )\n ) {\n // If the exported value is just an identifier and should be elided by TypeScript\n // rules, then remove it entirely. It will always have the form `export default e`,\n // where `e` is an identifier.\n this.tokens.removeInitialToken();\n this.tokens.removeToken();\n this.tokens.removeToken();\n return true;\n }\n\n const alreadyHasName =\n this.tokens.matches4(tt._export, tt._default, tt._function, tt.name) ||\n // export default async function\n (this.tokens.matches5(tt._export, tt._default, tt.name, tt._function, tt.name) &&\n this.tokens.matchesContextualAtIndex(\n this.tokens.currentIndex() + 2,\n ContextualKeyword._async,\n )) ||\n this.tokens.matches4(tt._export, tt._default, tt._class, tt.name) ||\n this.tokens.matches5(tt._export, tt._default, tt._abstract, tt._class, tt.name);\n\n if (!alreadyHasName && this.reactHotLoaderTransformer) {\n // This is a plain \"export default E\" statement and we need to assign E to a variable.\n // Change \"export default E\" to \"let _default; export default _default = E\"\n const defaultVarName = this.nameManager.claimFreeName(\"_default\");\n this.tokens.replaceToken(`let ${defaultVarName}; export`);\n this.tokens.copyToken();\n this.tokens.appendCode(` ${defaultVarName} =`);\n this.reactHotLoaderTransformer.setExtractedDefaultExportName(defaultVarName);\n return true;\n }\n return false;\n }\n\n /**\n * Handle a statement with one of these forms:\n * export {a, type b};\n * export {c, type d} from 'foo';\n *\n * In both cases, any explicit type exports should be removed. In the first\n * case, we also need to handle implicit export elision for names declared as\n * types. In the second case, we must NOT do implicit named export elision,\n * but we must remove the runtime import if all exports are type exports.\n */\n processNamedExports() {\n if (!this.isTypeScriptTransformEnabled) {\n return false;\n }\n this.tokens.copyExpectedToken(tt._export);\n this.tokens.copyExpectedToken(tt.braceL);\n\n const isReExport = isExportFrom(this.tokens);\n let foundNonTypeExport = false;\n while (!this.tokens.matches1(tt.braceR)) {\n const specifierInfo = getImportExportSpecifierInfo(this.tokens);\n if (\n specifierInfo.isType ||\n (!isReExport && this.shouldElideExportedName(specifierInfo.leftName))\n ) {\n // Type export, so remove all tokens, including any comma.\n while (this.tokens.currentIndex() < specifierInfo.endIndex) {\n this.tokens.removeToken();\n }\n if (this.tokens.matches1(tt.comma)) {\n this.tokens.removeToken();\n }\n } else {\n // Non-type export, so copy all tokens, including any comma.\n foundNonTypeExport = true;\n while (this.tokens.currentIndex() < specifierInfo.endIndex) {\n this.tokens.copyToken();\n }\n if (this.tokens.matches1(tt.comma)) {\n this.tokens.copyToken();\n }\n }\n }\n this.tokens.copyExpectedToken(tt.braceR);\n\n if (!this.keepUnusedImports && isReExport && !foundNonTypeExport) {\n // This is a type-only re-export, so skip evaluating the other module. Technically this\n // leaves the statement as `export {}`, but that's ok since that's a no-op.\n this.tokens.removeToken();\n this.tokens.removeToken();\n removeMaybeImportAttributes(this.tokens);\n }\n\n return true;\n }\n\n /**\n * ESM elides all imports with the rule that we only elide if we see that it's\n * a type and never see it as a value. This is in contrast to CJS, which\n * elides imports that are completely unknown.\n */\n shouldElideExportedName(name) {\n return (\n this.isTypeScriptTransformEnabled &&\n !this.keepUnusedImports &&\n this.declarationInfo.typeDeclarations.has(name) &&\n !this.declarationInfo.valueDeclarations.has(name)\n );\n }\n}\n", "import {ContextualKeyword} from \"../parser/tokenizer/keywords\";\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\n\nimport Transformer from \"./Transformer\";\n\nexport default class FlowTransformer extends Transformer {\n constructor(\n rootTransformer,\n tokens,\n isImportsTransformEnabled,\n ) {\n super();this.rootTransformer = rootTransformer;this.tokens = tokens;this.isImportsTransformEnabled = isImportsTransformEnabled;;\n }\n\n process() {\n if (\n this.rootTransformer.processPossibleArrowParamEnd() ||\n this.rootTransformer.processPossibleAsyncArrowWithTypeParams() ||\n this.rootTransformer.processPossibleTypeRange()\n ) {\n return true;\n }\n if (this.tokens.matches1(tt._enum)) {\n this.processEnum();\n return true;\n }\n if (this.tokens.matches2(tt._export, tt._enum)) {\n this.processNamedExportEnum();\n return true;\n }\n if (this.tokens.matches3(tt._export, tt._default, tt._enum)) {\n this.processDefaultExportEnum();\n return true;\n }\n return false;\n }\n\n /**\n * Handle a declaration like:\n * export enum E ...\n *\n * With this imports transform, this becomes:\n * const E = [[enum]]; exports.E = E;\n *\n * otherwise, it becomes:\n * export const E = [[enum]];\n */\n processNamedExportEnum() {\n if (this.isImportsTransformEnabled) {\n // export\n this.tokens.removeInitialToken();\n const enumName = this.tokens.identifierNameAtRelativeIndex(1);\n this.processEnum();\n this.tokens.appendCode(` exports.${enumName} = ${enumName};`);\n } else {\n this.tokens.copyToken();\n this.processEnum();\n }\n }\n\n /**\n * Handle a declaration like:\n * export default enum E\n *\n * With the imports transform, this becomes:\n * const E = [[enum]]; exports.default = E;\n *\n * otherwise, it becomes:\n * const E = [[enum]]; export default E;\n */\n processDefaultExportEnum() {\n // export\n this.tokens.removeInitialToken();\n // default\n this.tokens.removeToken();\n const enumName = this.tokens.identifierNameAtRelativeIndex(1);\n this.processEnum();\n if (this.isImportsTransformEnabled) {\n this.tokens.appendCode(` exports.default = ${enumName};`);\n } else {\n this.tokens.appendCode(` export default ${enumName};`);\n }\n }\n\n /**\n * Transpile flow enums to invoke the \"flow-enums-runtime\" library.\n *\n * Currently, the transpiled code always uses `require(\"flow-enums-runtime\")`,\n * but if future flexibility is needed, we could expose a config option for\n * this string (similar to configurable JSX). Even when targeting ESM, the\n * default behavior of babel-plugin-transform-flow-enums is to use require\n * rather than injecting an import.\n *\n * Flow enums are quite a bit simpler than TS enums and have some convenient\n * constraints:\n * - Element initializers must be either always present or always absent. That\n * means that we can use fixed lookahead on the first element (if any) and\n * assume that all elements are like that.\n * - The right-hand side of an element initializer must be a literal value,\n * not a complex expression and not referencing other elements. That means\n * we can simply copy a single token.\n *\n * Enums can be broken up into three basic cases:\n *\n * Mirrored enums:\n * enum E {A, B}\n * ->\n * const E = require(\"flow-enums-runtime\").Mirrored([\"A\", \"B\"]);\n *\n * Initializer enums:\n * enum E {A = 1, B = 2}\n * ->\n * const E = require(\"flow-enums-runtime\")({A: 1, B: 2});\n *\n * Symbol enums:\n * enum E of symbol {A, B}\n * ->\n * const E = require(\"flow-enums-runtime\")({A: Symbol(\"A\"), B: Symbol(\"B\")});\n *\n * We can statically detect which of the three cases this is by looking at the\n * \"of\" declaration (if any) and seeing if the first element has an initializer.\n * Since the other transform details are so similar between the three cases, we\n * use a single implementation and vary the transform within processEnumElement\n * based on case.\n */\n processEnum() {\n // enum E -> const E\n this.tokens.replaceToken(\"const\");\n this.tokens.copyExpectedToken(tt.name);\n\n let isSymbolEnum = false;\n if (this.tokens.matchesContextual(ContextualKeyword._of)) {\n this.tokens.removeToken();\n isSymbolEnum = this.tokens.matchesContextual(ContextualKeyword._symbol);\n this.tokens.removeToken();\n }\n const hasInitializers = this.tokens.matches3(tt.braceL, tt.name, tt.eq);\n this.tokens.appendCode(' = require(\"flow-enums-runtime\")');\n\n const isMirrored = !isSymbolEnum && !hasInitializers;\n this.tokens.replaceTokenTrimmingLeftWhitespace(isMirrored ? \".Mirrored([\" : \"({\");\n\n while (!this.tokens.matches1(tt.braceR)) {\n // ... is allowed at the end and has no runtime behavior.\n if (this.tokens.matches1(tt.ellipsis)) {\n this.tokens.removeToken();\n break;\n }\n this.processEnumElement(isSymbolEnum, hasInitializers);\n if (this.tokens.matches1(tt.comma)) {\n this.tokens.copyToken();\n }\n }\n\n this.tokens.replaceToken(isMirrored ? \"]);\" : \"});\");\n }\n\n /**\n * Process an individual enum element, producing either an array element or an\n * object element based on what type of enum this is.\n */\n processEnumElement(isSymbolEnum, hasInitializers) {\n if (isSymbolEnum) {\n // Symbol enums never have initializers and are expanded to object elements.\n // A, -> A: Symbol(\"A\"),\n const elementName = this.tokens.identifierName();\n this.tokens.copyToken();\n this.tokens.appendCode(`: Symbol(\"${elementName}\")`);\n } else if (hasInitializers) {\n // Initializers are expanded to object elements.\n // A = 1, -> A: 1,\n this.tokens.copyToken();\n this.tokens.replaceTokenTrimmingLeftWhitespace(\":\");\n this.tokens.copyToken();\n } else {\n // Enum elements without initializers become string literal array elements.\n // A, -> \"A\",\n this.tokens.replaceToken(`\"${this.tokens.identifierName()}\"`);\n }\n }\n}\n", " function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }\n\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\n\nimport Transformer from \"./Transformer\";\n\nconst JEST_GLOBAL_NAME = \"jest\";\nconst HOISTED_METHODS = [\"mock\", \"unmock\", \"enableAutomock\", \"disableAutomock\"];\n\n/**\n * Implementation of babel-plugin-jest-hoist, which hoists up some jest method\n * calls above the imports to allow them to override other imports.\n *\n * To preserve line numbers, rather than directly moving the jest.mock code, we\n * wrap each invocation in a function statement and then call the function from\n * the top of the file.\n */\nexport default class JestHoistTransformer extends Transformer {\n __init() {this.hoistedFunctionNames = []}\n\n constructor(\n rootTransformer,\n tokens,\n nameManager,\n importProcessor,\n ) {\n super();this.rootTransformer = rootTransformer;this.tokens = tokens;this.nameManager = nameManager;this.importProcessor = importProcessor;JestHoistTransformer.prototype.__init.call(this);;\n }\n\n process() {\n if (\n this.tokens.currentToken().scopeDepth === 0 &&\n this.tokens.matches4(tt.name, tt.dot, tt.name, tt.parenL) &&\n this.tokens.identifierName() === JEST_GLOBAL_NAME\n ) {\n // TODO: This only works if imports transform is active, which it will be for jest.\n // But if jest adds module support and we no longer need the import transform, this needs fixing.\n if (_optionalChain([this, 'access', _ => _.importProcessor, 'optionalAccess', _2 => _2.getGlobalNames, 'call', _3 => _3(), 'optionalAccess', _4 => _4.has, 'call', _5 => _5(JEST_GLOBAL_NAME)])) {\n return false;\n }\n return this.extractHoistedCalls();\n }\n\n return false;\n }\n\n getHoistedCode() {\n if (this.hoistedFunctionNames.length > 0) {\n // This will be placed before module interop code, but that's fine since\n // imports aren't allowed in module mock factories.\n return this.hoistedFunctionNames.map((name) => `${name}();`).join(\"\");\n }\n return \"\";\n }\n\n /**\n * Extracts any methods calls on the jest-object that should be hoisted.\n *\n * According to the jest docs, https://jestjs.io/docs/en/jest-object#jestmockmodulename-factory-options,\n * mock, unmock, enableAutomock, disableAutomock, are the methods that should be hoisted.\n *\n * We do not apply the same checks of the arguments as babel-plugin-jest-hoist does.\n */\n extractHoistedCalls() {\n // We're handling a chain of calls where `jest` may or may not need to be inserted for each call\n // in the chain, so remove the initial `jest` to make the loop implementation cleaner.\n this.tokens.removeToken();\n // Track some state so that multiple non-hoisted chained calls in a row keep their chaining\n // syntax.\n let followsNonHoistedJestCall = false;\n\n // Iterate through all chained calls on the jest object.\n while (this.tokens.matches3(tt.dot, tt.name, tt.parenL)) {\n const methodName = this.tokens.identifierNameAtIndex(this.tokens.currentIndex() + 1);\n const shouldHoist = HOISTED_METHODS.includes(methodName);\n if (shouldHoist) {\n // We've matched e.g. `.mock(...)` or similar call.\n // Replace the initial `.` with `function __jestHoist(){jest.`\n const hoistedFunctionName = this.nameManager.claimFreeName(\"__jestHoist\");\n this.hoistedFunctionNames.push(hoistedFunctionName);\n this.tokens.replaceToken(`function ${hoistedFunctionName}(){${JEST_GLOBAL_NAME}.`);\n this.tokens.copyToken();\n this.tokens.copyToken();\n this.rootTransformer.processBalancedCode();\n this.tokens.copyExpectedToken(tt.parenR);\n this.tokens.appendCode(\";}\");\n followsNonHoistedJestCall = false;\n } else {\n // This is a non-hoisted method, so just transform the code as usual.\n if (followsNonHoistedJestCall) {\n // If we didn't hoist the previous call, we can leave the code as-is to chain off of the\n // previous method call. It's important to preserve the code here because we don't know\n // for sure that the method actually returned the jest object for chaining.\n this.tokens.copyToken();\n } else {\n // If we hoisted the previous call, we know it returns the jest object back, so we insert\n // the identifier `jest` to continue the chain.\n this.tokens.replaceToken(`${JEST_GLOBAL_NAME}.`);\n }\n this.tokens.copyToken();\n this.tokens.copyToken();\n this.rootTransformer.processBalancedCode();\n this.tokens.copyExpectedToken(tt.parenR);\n followsNonHoistedJestCall = true;\n }\n }\n\n return true;\n }\n}\n", "import {TokenType as tt} from \"../parser/tokenizer/types\";\n\nimport Transformer from \"./Transformer\";\n\nexport default class NumericSeparatorTransformer extends Transformer {\n constructor( tokens) {\n super();this.tokens = tokens;;\n }\n\n process() {\n if (this.tokens.matches1(tt.num)) {\n const code = this.tokens.currentTokenCode();\n if (code.includes(\"_\")) {\n this.tokens.replaceToken(code.replace(/_/g, \"\"));\n return true;\n }\n }\n return false;\n }\n}\n", "\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\nimport Transformer from \"./Transformer\";\n\nexport default class OptionalCatchBindingTransformer extends Transformer {\n constructor( tokens, nameManager) {\n super();this.tokens = tokens;this.nameManager = nameManager;;\n }\n\n process() {\n if (this.tokens.matches2(tt._catch, tt.braceL)) {\n this.tokens.copyToken();\n this.tokens.appendCode(` (${this.nameManager.claimFreeName(\"e\")})`);\n return true;\n }\n return false;\n }\n}\n", "\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\nimport Transformer from \"./Transformer\";\n\n/**\n * Transformer supporting the optional chaining and nullish coalescing operators.\n *\n * Tech plan here:\n * https://github.com/alangpierce/sucrase/wiki/Sucrase-Optional-Chaining-and-Nullish-Coalescing-Technical-Plan\n *\n * The prefix and suffix code snippets are handled by TokenProcessor, and this transformer handles\n * the operators themselves.\n */\nexport default class OptionalChainingNullishTransformer extends Transformer {\n constructor( tokens, nameManager) {\n super();this.tokens = tokens;this.nameManager = nameManager;;\n }\n\n process() {\n if (this.tokens.matches1(tt.nullishCoalescing)) {\n const token = this.tokens.currentToken();\n if (this.tokens.tokens[token.nullishStartIndex].isAsyncOperation) {\n this.tokens.replaceTokenTrimmingLeftWhitespace(\", async () => (\");\n } else {\n this.tokens.replaceTokenTrimmingLeftWhitespace(\", () => (\");\n }\n return true;\n }\n if (this.tokens.matches1(tt._delete)) {\n const nextToken = this.tokens.tokenAtRelativeIndex(1);\n if (nextToken.isOptionalChainStart) {\n this.tokens.removeInitialToken();\n return true;\n }\n }\n const token = this.tokens.currentToken();\n const chainStart = token.subscriptStartIndex;\n if (\n chainStart != null &&\n this.tokens.tokens[chainStart].isOptionalChainStart &&\n // Super subscripts can't be optional (since super is never null/undefined), and the syntax\n // relies on the subscript being intact, so leave this token alone.\n this.tokens.tokenAtRelativeIndex(-1).type !== tt._super\n ) {\n const param = this.nameManager.claimFreeName(\"_\");\n let arrowStartSnippet;\n if (\n chainStart > 0 &&\n this.tokens.matches1AtIndex(chainStart - 1, tt._delete) &&\n this.isLastSubscriptInChain()\n ) {\n // Delete operations are special: we already removed the delete keyword, and to still\n // perform a delete, we need to insert a delete in the very last part of the chain, which\n // in correct code will always be a property access.\n arrowStartSnippet = `${param} => delete ${param}`;\n } else {\n arrowStartSnippet = `${param} => ${param}`;\n }\n if (this.tokens.tokens[chainStart].isAsyncOperation) {\n arrowStartSnippet = `async ${arrowStartSnippet}`;\n }\n if (\n this.tokens.matches2(tt.questionDot, tt.parenL) ||\n this.tokens.matches2(tt.questionDot, tt.lessThan)\n ) {\n if (this.justSkippedSuper()) {\n this.tokens.appendCode(\".bind(this)\");\n }\n this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'optionalCall', ${arrowStartSnippet}`);\n } else if (this.tokens.matches2(tt.questionDot, tt.bracketL)) {\n this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'optionalAccess', ${arrowStartSnippet}`);\n } else if (this.tokens.matches1(tt.questionDot)) {\n this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'optionalAccess', ${arrowStartSnippet}.`);\n } else if (this.tokens.matches1(tt.dot)) {\n this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'access', ${arrowStartSnippet}.`);\n } else if (this.tokens.matches1(tt.bracketL)) {\n this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'access', ${arrowStartSnippet}[`);\n } else if (this.tokens.matches1(tt.parenL)) {\n if (this.justSkippedSuper()) {\n this.tokens.appendCode(\".bind(this)\");\n }\n this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'call', ${arrowStartSnippet}(`);\n } else {\n throw new Error(\"Unexpected subscript operator in optional chain.\");\n }\n return true;\n }\n return false;\n }\n\n /**\n * Determine if the current token is the last of its chain, so that we know whether it's eligible\n * to have a delete op inserted.\n *\n * We can do this by walking forward until we determine one way or another. Each\n * isOptionalChainStart token must be paired with exactly one isOptionalChainEnd token after it in\n * a nesting way, so we can track depth and walk to the end of the chain (the point where the\n * depth goes negative) and see if any other subscript token is after us in the chain.\n */\n isLastSubscriptInChain() {\n let depth = 0;\n for (let i = this.tokens.currentIndex() + 1; ; i++) {\n if (i >= this.tokens.tokens.length) {\n throw new Error(\"Reached the end of the code while finding the end of the access chain.\");\n }\n if (this.tokens.tokens[i].isOptionalChainStart) {\n depth++;\n } else if (this.tokens.tokens[i].isOptionalChainEnd) {\n depth--;\n }\n if (depth < 0) {\n return true;\n }\n\n // This subscript token is a later one in the same chain.\n if (depth === 0 && this.tokens.tokens[i].subscriptStartIndex != null) {\n return false;\n }\n }\n }\n\n /**\n * Determine if we are the open-paren in an expression like super.a()?.b.\n *\n * We can do this by walking backward to find the previous subscript. If that subscript was\n * preceded by a super, then we must be the subscript after it, so if this is a call expression,\n * we'll need to attach the right context.\n */\n justSkippedSuper() {\n let depth = 0;\n let index = this.tokens.currentIndex() - 1;\n while (true) {\n if (index < 0) {\n throw new Error(\n \"Reached the start of the code while finding the start of the access chain.\",\n );\n }\n if (this.tokens.tokens[index].isOptionalChainStart) {\n depth--;\n } else if (this.tokens.tokens[index].isOptionalChainEnd) {\n depth++;\n }\n if (depth < 0) {\n return false;\n }\n\n // This subscript token is a later one in the same chain.\n if (depth === 0 && this.tokens.tokens[index].subscriptStartIndex != null) {\n return this.tokens.tokens[index - 1].type === tt._super;\n }\n index--;\n }\n }\n}\n", "\n\nimport {IdentifierRole} from \"../parser/tokenizer\";\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\n\nimport Transformer from \"./Transformer\";\n\n/**\n * Implementation of babel-plugin-transform-react-display-name, which adds a\n * display name to usages of React.createClass and createReactClass.\n */\nexport default class ReactDisplayNameTransformer extends Transformer {\n constructor(\n rootTransformer,\n tokens,\n importProcessor,\n options,\n ) {\n super();this.rootTransformer = rootTransformer;this.tokens = tokens;this.importProcessor = importProcessor;this.options = options;;\n }\n\n process() {\n const startIndex = this.tokens.currentIndex();\n if (this.tokens.identifierName() === \"createReactClass\") {\n const newName =\n this.importProcessor && this.importProcessor.getIdentifierReplacement(\"createReactClass\");\n if (newName) {\n this.tokens.replaceToken(`(0, ${newName})`);\n } else {\n this.tokens.copyToken();\n }\n this.tryProcessCreateClassCall(startIndex);\n return true;\n }\n if (\n this.tokens.matches3(tt.name, tt.dot, tt.name) &&\n this.tokens.identifierName() === \"React\" &&\n this.tokens.identifierNameAtIndex(this.tokens.currentIndex() + 2) === \"createClass\"\n ) {\n const newName = this.importProcessor\n ? this.importProcessor.getIdentifierReplacement(\"React\") || \"React\"\n : \"React\";\n if (newName) {\n this.tokens.replaceToken(newName);\n this.tokens.copyToken();\n this.tokens.copyToken();\n } else {\n this.tokens.copyToken();\n this.tokens.copyToken();\n this.tokens.copyToken();\n }\n this.tryProcessCreateClassCall(startIndex);\n return true;\n }\n return false;\n }\n\n /**\n * This is called with the token position at the open-paren.\n */\n tryProcessCreateClassCall(startIndex) {\n const displayName = this.findDisplayName(startIndex);\n if (!displayName) {\n return;\n }\n\n if (this.classNeedsDisplayName()) {\n this.tokens.copyExpectedToken(tt.parenL);\n this.tokens.copyExpectedToken(tt.braceL);\n this.tokens.appendCode(`displayName: '${displayName}',`);\n this.rootTransformer.processBalancedCode();\n this.tokens.copyExpectedToken(tt.braceR);\n this.tokens.copyExpectedToken(tt.parenR);\n }\n }\n\n findDisplayName(startIndex) {\n if (startIndex < 2) {\n return null;\n }\n if (this.tokens.matches2AtIndex(startIndex - 2, tt.name, tt.eq)) {\n // This is an assignment (or declaration) and the LHS is either an identifier or a member\n // expression ending in an identifier, so use that identifier name.\n return this.tokens.identifierNameAtIndex(startIndex - 2);\n }\n if (\n startIndex >= 2 &&\n this.tokens.tokens[startIndex - 2].identifierRole === IdentifierRole.ObjectKey\n ) {\n // This is an object literal value.\n return this.tokens.identifierNameAtIndex(startIndex - 2);\n }\n if (this.tokens.matches2AtIndex(startIndex - 2, tt._export, tt._default)) {\n return this.getDisplayNameFromFilename();\n }\n return null;\n }\n\n getDisplayNameFromFilename() {\n const filePath = this.options.filePath || \"unknown\";\n const pathSegments = filePath.split(\"/\");\n const filename = pathSegments[pathSegments.length - 1];\n const dotIndex = filename.lastIndexOf(\".\");\n const baseFilename = dotIndex === -1 ? filename : filename.slice(0, dotIndex);\n if (baseFilename === \"index\" && pathSegments[pathSegments.length - 2]) {\n return pathSegments[pathSegments.length - 2];\n } else {\n return baseFilename;\n }\n }\n\n /**\n * We only want to add a display name when this is a function call containing\n * one argument, which is an object literal without `displayName` as an\n * existing key.\n */\n classNeedsDisplayName() {\n let index = this.tokens.currentIndex();\n if (!this.tokens.matches2(tt.parenL, tt.braceL)) {\n return false;\n }\n // The block starts on the {, and we expect any displayName key to be in\n // that context. We need to ignore other other contexts to avoid matching\n // nested displayName keys.\n const objectStartIndex = index + 1;\n const objectContextId = this.tokens.tokens[objectStartIndex].contextId;\n if (objectContextId == null) {\n throw new Error(\"Expected non-null context ID on object open-brace.\");\n }\n\n for (; index < this.tokens.tokens.length; index++) {\n const token = this.tokens.tokens[index];\n if (token.type === tt.braceR && token.contextId === objectContextId) {\n index++;\n break;\n }\n\n if (\n this.tokens.identifierNameAtIndex(index) === \"displayName\" &&\n this.tokens.tokens[index].identifierRole === IdentifierRole.ObjectKey &&\n token.contextId === objectContextId\n ) {\n // We found a displayName key, so bail out.\n return false;\n }\n }\n\n if (index === this.tokens.tokens.length) {\n throw new Error(\"Unexpected end of input when processing React class.\");\n }\n\n // If we got this far, we know we have createClass with an object with no\n // display name, so we want to proceed as long as that was the only argument.\n return (\n this.tokens.matches1AtIndex(index, tt.parenR) ||\n this.tokens.matches2AtIndex(index, tt.comma, tt.parenR)\n );\n }\n}\n", "import {IdentifierRole, isTopLevelDeclaration} from \"../parser/tokenizer\";\n\nimport Transformer from \"./Transformer\";\n\nexport default class ReactHotLoaderTransformer extends Transformer {\n __init() {this.extractedDefaultExportName = null}\n\n constructor( tokens, filePath) {\n super();this.tokens = tokens;this.filePath = filePath;ReactHotLoaderTransformer.prototype.__init.call(this);;\n }\n\n setExtractedDefaultExportName(extractedDefaultExportName) {\n this.extractedDefaultExportName = extractedDefaultExportName;\n }\n\n getPrefixCode() {\n return `\n (function () {\n var enterModule = require('react-hot-loader').enterModule;\n enterModule && enterModule(module);\n })();`\n .replace(/\\s+/g, \" \")\n .trim();\n }\n\n getSuffixCode() {\n const topLevelNames = new Set();\n for (const token of this.tokens.tokens) {\n if (\n !token.isType &&\n isTopLevelDeclaration(token) &&\n token.identifierRole !== IdentifierRole.ImportDeclaration\n ) {\n topLevelNames.add(this.tokens.identifierNameForToken(token));\n }\n }\n const namesToRegister = Array.from(topLevelNames).map((name) => ({\n variableName: name,\n uniqueLocalName: name,\n }));\n if (this.extractedDefaultExportName) {\n namesToRegister.push({\n variableName: this.extractedDefaultExportName,\n uniqueLocalName: \"default\",\n });\n }\n return `\n;(function () {\n var reactHotLoader = require('react-hot-loader').default;\n var leaveModule = require('react-hot-loader').leaveModule;\n if (!reactHotLoader) {\n return;\n }\n${namesToRegister\n .map(\n ({variableName, uniqueLocalName}) =>\n ` reactHotLoader.register(${variableName}, \"${uniqueLocalName}\", ${JSON.stringify(\n this.filePath || \"\",\n )});`,\n )\n .join(\"\\n\")}\n leaveModule(module);\n})();`;\n }\n\n process() {\n return false;\n }\n}\n", "import {IS_IDENTIFIER_CHAR, IS_IDENTIFIER_START} from \"../parser/util/identifier\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar\n// Hard-code a list of reserved words rather than trying to use keywords or contextual keywords\n// from the parser, since currently there are various exceptions, like `package` being reserved\n// but unused and various contextual keywords being reserved. Note that we assume that all code\n// compiled by Sucrase is in a module, so strict mode words and await are all considered reserved\n// here.\nconst RESERVED_WORDS = new Set([\n // Reserved keywords as of ECMAScript 2015\n \"break\",\n \"case\",\n \"catch\",\n \"class\",\n \"const\",\n \"continue\",\n \"debugger\",\n \"default\",\n \"delete\",\n \"do\",\n \"else\",\n \"export\",\n \"extends\",\n \"finally\",\n \"for\",\n \"function\",\n \"if\",\n \"import\",\n \"in\",\n \"instanceof\",\n \"new\",\n \"return\",\n \"super\",\n \"switch\",\n \"this\",\n \"throw\",\n \"try\",\n \"typeof\",\n \"var\",\n \"void\",\n \"while\",\n \"with\",\n \"yield\",\n // Future reserved keywords\n \"enum\",\n \"implements\",\n \"interface\",\n \"let\",\n \"package\",\n \"private\",\n \"protected\",\n \"public\",\n \"static\",\n \"await\",\n // Literals that cannot be used as identifiers\n \"false\",\n \"null\",\n \"true\",\n]);\n\n/**\n * Determine if the given name is a legal variable name.\n *\n * This is needed when transforming TypeScript enums; if an enum key is a valid\n * variable name, it might be referenced later in the enum, so we need to\n * declare a variable.\n */\nexport default function isIdentifier(name) {\n if (name.length === 0) {\n return false;\n }\n if (!IS_IDENTIFIER_START[name.charCodeAt(0)]) {\n return false;\n }\n for (let i = 1; i < name.length; i++) {\n if (!IS_IDENTIFIER_CHAR[name.charCodeAt(i)]) {\n return false;\n }\n }\n return !RESERVED_WORDS.has(name);\n}\n", "\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\nimport isIdentifier from \"../util/isIdentifier\";\n\nimport Transformer from \"./Transformer\";\n\nexport default class TypeScriptTransformer extends Transformer {\n constructor(\n rootTransformer,\n tokens,\n isImportsTransformEnabled,\n ) {\n super();this.rootTransformer = rootTransformer;this.tokens = tokens;this.isImportsTransformEnabled = isImportsTransformEnabled;;\n }\n\n process() {\n if (\n this.rootTransformer.processPossibleArrowParamEnd() ||\n this.rootTransformer.processPossibleAsyncArrowWithTypeParams() ||\n this.rootTransformer.processPossibleTypeRange()\n ) {\n return true;\n }\n if (\n this.tokens.matches1(tt._public) ||\n this.tokens.matches1(tt._protected) ||\n this.tokens.matches1(tt._private) ||\n this.tokens.matches1(tt._abstract) ||\n this.tokens.matches1(tt._readonly) ||\n this.tokens.matches1(tt._override) ||\n this.tokens.matches1(tt.nonNullAssertion)\n ) {\n this.tokens.removeInitialToken();\n return true;\n }\n if (this.tokens.matches1(tt._enum) || this.tokens.matches2(tt._const, tt._enum)) {\n this.processEnum();\n return true;\n }\n if (\n this.tokens.matches2(tt._export, tt._enum) ||\n this.tokens.matches3(tt._export, tt._const, tt._enum)\n ) {\n this.processEnum(true);\n return true;\n }\n return false;\n }\n\n processEnum(isExport = false) {\n // We might have \"export const enum\", so just remove all relevant tokens.\n this.tokens.removeInitialToken();\n while (this.tokens.matches1(tt._const) || this.tokens.matches1(tt._enum)) {\n this.tokens.removeToken();\n }\n const enumName = this.tokens.identifierName();\n this.tokens.removeToken();\n if (isExport && !this.isImportsTransformEnabled) {\n this.tokens.appendCode(\"export \");\n }\n this.tokens.appendCode(`var ${enumName}; (function (${enumName})`);\n this.tokens.copyExpectedToken(tt.braceL);\n this.processEnumBody(enumName);\n this.tokens.copyExpectedToken(tt.braceR);\n if (isExport && this.isImportsTransformEnabled) {\n this.tokens.appendCode(`)(${enumName} || (exports.${enumName} = ${enumName} = {}));`);\n } else {\n this.tokens.appendCode(`)(${enumName} || (${enumName} = {}));`);\n }\n }\n\n /**\n * Transform an enum into equivalent JS. This has complexity in a few places:\n * - TS allows string enums, numeric enums, and a mix of the two styles within an enum.\n * - Enum keys are allowed to be referenced in later enum values.\n * - Enum keys are allowed to be strings.\n * - When enum values are omitted, they should follow an auto-increment behavior.\n */\n processEnumBody(enumName) {\n // Code that can be used to reference the previous enum member, or null if this is the first\n // enum member.\n let previousValueCode = null;\n while (true) {\n if (this.tokens.matches1(tt.braceR)) {\n break;\n }\n const {nameStringCode, variableName} = this.extractEnumKeyInfo(this.tokens.currentToken());\n this.tokens.removeInitialToken();\n\n if (\n this.tokens.matches3(tt.eq, tt.string, tt.comma) ||\n this.tokens.matches3(tt.eq, tt.string, tt.braceR)\n ) {\n this.processStringLiteralEnumMember(enumName, nameStringCode, variableName);\n } else if (this.tokens.matches1(tt.eq)) {\n this.processExplicitValueEnumMember(enumName, nameStringCode, variableName);\n } else {\n this.processImplicitValueEnumMember(\n enumName,\n nameStringCode,\n variableName,\n previousValueCode,\n );\n }\n if (this.tokens.matches1(tt.comma)) {\n this.tokens.removeToken();\n }\n\n if (variableName != null) {\n previousValueCode = variableName;\n } else {\n previousValueCode = `${enumName}[${nameStringCode}]`;\n }\n }\n }\n\n /**\n * Detect name information about this enum key, which will be used to determine which code to emit\n * and whether we should declare a variable as part of this declaration.\n *\n * Some cases to keep in mind:\n * - Enum keys can be implicitly referenced later, e.g. `X = 1, Y = X`. In Sucrase, we implement\n * this by declaring a variable `X` so that later expressions can use it.\n * - In addition to the usual identifier key syntax, enum keys are allowed to be string literals,\n * e.g. `\"hello world\" = 3,`. Template literal syntax is NOT allowed.\n * - Even if the enum key is defined as a string literal, it may still be referenced by identifier\n * later, e.g. `\"X\" = 1, Y = X`. That means that we need to detect whether or not a string\n * literal is identifier-like and emit a variable if so, even if the declaration did not use an\n * identifier.\n * - Reserved keywords like `break` are valid enum keys, but are not valid to be referenced later\n * and would be a syntax error if we emitted a variable, so we need to skip the variable\n * declaration in those cases.\n *\n * The variableName return value captures these nuances: if non-null, we can and must emit a\n * variable declaration, and if null, we can't and shouldn't.\n */\n extractEnumKeyInfo(nameToken) {\n if (nameToken.type === tt.name) {\n const name = this.tokens.identifierNameForToken(nameToken);\n return {\n nameStringCode: `\"${name}\"`,\n variableName: isIdentifier(name) ? name : null,\n };\n } else if (nameToken.type === tt.string) {\n const name = this.tokens.stringValueForToken(nameToken);\n return {\n nameStringCode: this.tokens.code.slice(nameToken.start, nameToken.end),\n variableName: isIdentifier(name) ? name : null,\n };\n } else {\n throw new Error(\"Expected name or string at beginning of enum element.\");\n }\n }\n\n /**\n * Handle an enum member where the RHS is just a string literal (not omitted, not a number, and\n * not a complex expression). This is the typical form for TS string enums, and in this case, we\n * do *not* create a reverse mapping.\n *\n * This is called after deleting the key token, when the token processor is at the equals sign.\n *\n * Example 1:\n * someKey = \"some value\"\n * ->\n * const someKey = \"some value\"; MyEnum[\"someKey\"] = someKey;\n *\n * Example 2:\n * \"some key\" = \"some value\"\n * ->\n * MyEnum[\"some key\"] = \"some value\";\n */\n processStringLiteralEnumMember(\n enumName,\n nameStringCode,\n variableName,\n ) {\n if (variableName != null) {\n this.tokens.appendCode(`const ${variableName}`);\n // =\n this.tokens.copyToken();\n // value string\n this.tokens.copyToken();\n this.tokens.appendCode(`; ${enumName}[${nameStringCode}] = ${variableName};`);\n } else {\n this.tokens.appendCode(`${enumName}[${nameStringCode}]`);\n // =\n this.tokens.copyToken();\n // value string\n this.tokens.copyToken();\n this.tokens.appendCode(\";\");\n }\n }\n\n /**\n * Handle an enum member initialized with an expression on the right-hand side (other than a\n * string literal). In these cases, we should transform the expression and emit code that sets up\n * a reverse mapping.\n *\n * The TypeScript implementation of this operation distinguishes between expressions that can be\n * \"constant folded\" at compile time (i.e. consist of number literals and simple math operations\n * on those numbers) and ones that are dynamic. For constant expressions, it emits the resolved\n * numeric value, and auto-incrementing is only allowed in that case. Evaluating expressions at\n * compile time would add significant complexity to Sucrase, so Sucrase instead leaves the\n * expression as-is, and will later emit something like `MyEnum[\"previousKey\"] + 1` to implement\n * auto-incrementing.\n *\n * This is called after deleting the key token, when the token processor is at the equals sign.\n *\n * Example 1:\n * someKey = 1 + 1\n * ->\n * const someKey = 1 + 1; MyEnum[MyEnum[\"someKey\"] = someKey] = \"someKey\";\n *\n * Example 2:\n * \"some key\" = 1 + 1\n * ->\n * MyEnum[MyEnum[\"some key\"] = 1 + 1] = \"some key\";\n */\n processExplicitValueEnumMember(\n enumName,\n nameStringCode,\n variableName,\n ) {\n const rhsEndIndex = this.tokens.currentToken().rhsEndIndex;\n if (rhsEndIndex == null) {\n throw new Error(\"Expected rhsEndIndex on enum assign.\");\n }\n\n if (variableName != null) {\n this.tokens.appendCode(`const ${variableName}`);\n this.tokens.copyToken();\n while (this.tokens.currentIndex() < rhsEndIndex) {\n this.rootTransformer.processToken();\n }\n this.tokens.appendCode(\n `; ${enumName}[${enumName}[${nameStringCode}] = ${variableName}] = ${nameStringCode};`,\n );\n } else {\n this.tokens.appendCode(`${enumName}[${enumName}[${nameStringCode}]`);\n this.tokens.copyToken();\n while (this.tokens.currentIndex() < rhsEndIndex) {\n this.rootTransformer.processToken();\n }\n this.tokens.appendCode(`] = ${nameStringCode};`);\n }\n }\n\n /**\n * Handle an enum member with no right-hand side expression. In this case, the value is the\n * previous value plus 1, or 0 if there was no previous value. We should also always emit a\n * reverse mapping.\n *\n * Example 1:\n * someKey2\n * ->\n * const someKey2 = someKey1 + 1; MyEnum[MyEnum[\"someKey2\"] = someKey2] = \"someKey2\";\n *\n * Example 2:\n * \"some key 2\"\n * ->\n * MyEnum[MyEnum[\"some key 2\"] = someKey1 + 1] = \"some key 2\";\n */\n processImplicitValueEnumMember(\n enumName,\n nameStringCode,\n variableName,\n previousValueCode,\n ) {\n let valueCode = previousValueCode != null ? `${previousValueCode} + 1` : \"0\";\n if (variableName != null) {\n this.tokens.appendCode(`const ${variableName} = ${valueCode}; `);\n valueCode = variableName;\n }\n this.tokens.appendCode(\n `${enumName}[${enumName}[${nameStringCode}] = ${valueCode}] = ${nameStringCode};`,\n );\n }\n}\n", "\n\n\nimport {ContextualKeyword} from \"../parser/tokenizer/keywords\";\nimport {TokenType as tt} from \"../parser/tokenizer/types\";\n\nimport getClassInfo, {} from \"../util/getClassInfo\";\nimport CJSImportTransformer from \"./CJSImportTransformer\";\nimport ESMImportTransformer from \"./ESMImportTransformer\";\nimport FlowTransformer from \"./FlowTransformer\";\nimport JestHoistTransformer from \"./JestHoistTransformer\";\nimport JSXTransformer from \"./JSXTransformer\";\nimport NumericSeparatorTransformer from \"./NumericSeparatorTransformer\";\nimport OptionalCatchBindingTransformer from \"./OptionalCatchBindingTransformer\";\nimport OptionalChainingNullishTransformer from \"./OptionalChainingNullishTransformer\";\nimport ReactDisplayNameTransformer from \"./ReactDisplayNameTransformer\";\nimport ReactHotLoaderTransformer from \"./ReactHotLoaderTransformer\";\n\nimport TypeScriptTransformer from \"./TypeScriptTransformer\";\n\n\n\n\n\n\n\n\nexport default class RootTransformer {\n __init() {this.transformers = []}\n \n \n __init2() {this.generatedVariables = []}\n \n \n \n \n\n constructor(\n sucraseContext,\n transforms,\n enableLegacyBabel5ModuleInterop,\n options,\n ) {;RootTransformer.prototype.__init.call(this);RootTransformer.prototype.__init2.call(this);\n this.nameManager = sucraseContext.nameManager;\n this.helperManager = sucraseContext.helperManager;\n const {tokenProcessor, importProcessor} = sucraseContext;\n this.tokens = tokenProcessor;\n this.isImportsTransformEnabled = transforms.includes(\"imports\");\n this.isReactHotLoaderTransformEnabled = transforms.includes(\"react-hot-loader\");\n this.disableESTransforms = Boolean(options.disableESTransforms);\n\n if (!options.disableESTransforms) {\n this.transformers.push(\n new OptionalChainingNullishTransformer(tokenProcessor, this.nameManager),\n );\n this.transformers.push(new NumericSeparatorTransformer(tokenProcessor));\n this.transformers.push(new OptionalCatchBindingTransformer(tokenProcessor, this.nameManager));\n }\n\n if (transforms.includes(\"jsx\")) {\n if (options.jsxRuntime !== \"preserve\") {\n this.transformers.push(\n new JSXTransformer(this, tokenProcessor, importProcessor, this.nameManager, options),\n );\n }\n this.transformers.push(\n new ReactDisplayNameTransformer(this, tokenProcessor, importProcessor, options),\n );\n }\n\n let reactHotLoaderTransformer = null;\n if (transforms.includes(\"react-hot-loader\")) {\n if (!options.filePath) {\n throw new Error(\"filePath is required when using the react-hot-loader transform.\");\n }\n reactHotLoaderTransformer = new ReactHotLoaderTransformer(tokenProcessor, options.filePath);\n this.transformers.push(reactHotLoaderTransformer);\n }\n\n // Note that we always want to enable the imports transformer, even when the import transform\n // itself isn't enabled, since we need to do type-only import pruning for both Flow and\n // TypeScript.\n if (transforms.includes(\"imports\")) {\n if (importProcessor === null) {\n throw new Error(\"Expected non-null importProcessor with imports transform enabled.\");\n }\n this.transformers.push(\n new CJSImportTransformer(\n this,\n tokenProcessor,\n importProcessor,\n this.nameManager,\n this.helperManager,\n reactHotLoaderTransformer,\n enableLegacyBabel5ModuleInterop,\n Boolean(options.enableLegacyTypeScriptModuleInterop),\n transforms.includes(\"typescript\"),\n transforms.includes(\"flow\"),\n Boolean(options.preserveDynamicImport),\n Boolean(options.keepUnusedImports),\n ),\n );\n } else {\n this.transformers.push(\n new ESMImportTransformer(\n tokenProcessor,\n this.nameManager,\n this.helperManager,\n reactHotLoaderTransformer,\n transforms.includes(\"typescript\"),\n transforms.includes(\"flow\"),\n Boolean(options.keepUnusedImports),\n options,\n ),\n );\n }\n\n if (transforms.includes(\"flow\")) {\n this.transformers.push(\n new FlowTransformer(this, tokenProcessor, transforms.includes(\"imports\")),\n );\n }\n if (transforms.includes(\"typescript\")) {\n this.transformers.push(\n new TypeScriptTransformer(this, tokenProcessor, transforms.includes(\"imports\")),\n );\n }\n if (transforms.includes(\"jest\")) {\n this.transformers.push(\n new JestHoistTransformer(this, tokenProcessor, this.nameManager, importProcessor),\n );\n }\n }\n\n transform() {\n this.tokens.reset();\n this.processBalancedCode();\n const shouldAddUseStrict = this.isImportsTransformEnabled;\n // \"use strict\" always needs to be first, so override the normal transformer order.\n let prefix = shouldAddUseStrict ? '\"use strict\";' : \"\";\n for (const transformer of this.transformers) {\n prefix += transformer.getPrefixCode();\n }\n prefix += this.helperManager.emitHelpers();\n prefix += this.generatedVariables.map((v) => ` var ${v};`).join(\"\");\n for (const transformer of this.transformers) {\n prefix += transformer.getHoistedCode();\n }\n let suffix = \"\";\n for (const transformer of this.transformers) {\n suffix += transformer.getSuffixCode();\n }\n const result = this.tokens.finish();\n let {code} = result;\n if (code.startsWith(\"#!\")) {\n let newlineIndex = code.indexOf(\"\\n\");\n if (newlineIndex === -1) {\n newlineIndex = code.length;\n code += \"\\n\";\n }\n return {\n code: code.slice(0, newlineIndex + 1) + prefix + code.slice(newlineIndex + 1) + suffix,\n // The hashbang line has no tokens, so shifting the tokens to account\n // for prefix can happen normally.\n mappings: this.shiftMappings(result.mappings, prefix.length),\n };\n } else {\n return {\n code: prefix + code + suffix,\n mappings: this.shiftMappings(result.mappings, prefix.length),\n };\n }\n }\n\n processBalancedCode() {\n let braceDepth = 0;\n let parenDepth = 0;\n while (!this.tokens.isAtEnd()) {\n if (this.tokens.matches1(tt.braceL) || this.tokens.matches1(tt.dollarBraceL)) {\n braceDepth++;\n } else if (this.tokens.matches1(tt.braceR)) {\n if (braceDepth === 0) {\n return;\n }\n braceDepth--;\n }\n if (this.tokens.matches1(tt.parenL)) {\n parenDepth++;\n } else if (this.tokens.matches1(tt.parenR)) {\n if (parenDepth === 0) {\n return;\n }\n parenDepth--;\n }\n this.processToken();\n }\n }\n\n processToken() {\n if (this.tokens.matches1(tt._class)) {\n this.processClass();\n return;\n }\n for (const transformer of this.transformers) {\n const wasProcessed = transformer.process();\n if (wasProcessed) {\n return;\n }\n }\n this.tokens.copyToken();\n }\n\n /**\n * Skip past a class with a name and return that name.\n */\n processNamedClass() {\n if (!this.tokens.matches2(tt._class, tt.name)) {\n throw new Error(\"Expected identifier for exported class name.\");\n }\n const name = this.tokens.identifierNameAtIndex(this.tokens.currentIndex() + 1);\n this.processClass();\n return name;\n }\n\n processClass() {\n const classInfo = getClassInfo(this, this.tokens, this.nameManager, this.disableESTransforms);\n\n // Both static and instance initializers need a class name to use to invoke the initializer, so\n // assign to one if necessary.\n const needsCommaExpression =\n (classInfo.headerInfo.isExpression || !classInfo.headerInfo.className) &&\n classInfo.staticInitializerNames.length + classInfo.instanceInitializerNames.length > 0;\n\n let className = classInfo.headerInfo.className;\n if (needsCommaExpression) {\n className = this.nameManager.claimFreeName(\"_class\");\n this.generatedVariables.push(className);\n this.tokens.appendCode(` (${className} =`);\n }\n\n const classToken = this.tokens.currentToken();\n const contextId = classToken.contextId;\n if (contextId == null) {\n throw new Error(\"Expected class to have a context ID.\");\n }\n this.tokens.copyExpectedToken(tt._class);\n while (!this.tokens.matchesContextIdAndLabel(tt.braceL, contextId)) {\n this.processToken();\n }\n\n this.processClassBody(classInfo, className);\n\n const staticInitializerStatements = classInfo.staticInitializerNames.map(\n (name) => `${className}.${name}()`,\n );\n if (needsCommaExpression) {\n this.tokens.appendCode(\n `, ${staticInitializerStatements.map((s) => `${s}, `).join(\"\")}${className})`,\n );\n } else if (classInfo.staticInitializerNames.length > 0) {\n this.tokens.appendCode(` ${staticInitializerStatements.map((s) => `${s};`).join(\" \")}`);\n }\n }\n\n /**\n * We want to just handle class fields in all contexts, since TypeScript supports them. Later,\n * when some JS implementations support class fields, this should be made optional.\n */\n processClassBody(classInfo, className) {\n const {\n headerInfo,\n constructorInsertPos,\n constructorInitializerStatements,\n fields,\n instanceInitializerNames,\n rangesToRemove,\n } = classInfo;\n let fieldIndex = 0;\n let rangeToRemoveIndex = 0;\n const classContextId = this.tokens.currentToken().contextId;\n if (classContextId == null) {\n throw new Error(\"Expected non-null context ID on class.\");\n }\n this.tokens.copyExpectedToken(tt.braceL);\n if (this.isReactHotLoaderTransformEnabled) {\n this.tokens.appendCode(\n \"__reactstandin__regenerateByEval(key, code) {this[key] = eval(code);}\",\n );\n }\n\n const needsConstructorInit =\n constructorInitializerStatements.length + instanceInitializerNames.length > 0;\n\n if (constructorInsertPos === null && needsConstructorInit) {\n const constructorInitializersCode = this.makeConstructorInitCode(\n constructorInitializerStatements,\n instanceInitializerNames,\n className,\n );\n if (headerInfo.hasSuperclass) {\n const argsName = this.nameManager.claimFreeName(\"args\");\n this.tokens.appendCode(\n `constructor(...${argsName}) { super(...${argsName}); ${constructorInitializersCode}; }`,\n );\n } else {\n this.tokens.appendCode(`constructor() { ${constructorInitializersCode}; }`);\n }\n }\n\n while (!this.tokens.matchesContextIdAndLabel(tt.braceR, classContextId)) {\n if (fieldIndex < fields.length && this.tokens.currentIndex() === fields[fieldIndex].start) {\n let needsCloseBrace = false;\n if (this.tokens.matches1(tt.bracketL)) {\n this.tokens.copyTokenWithPrefix(`${fields[fieldIndex].initializerName}() {this`);\n } else if (this.tokens.matches1(tt.string) || this.tokens.matches1(tt.num)) {\n this.tokens.copyTokenWithPrefix(`${fields[fieldIndex].initializerName}() {this[`);\n needsCloseBrace = true;\n } else {\n this.tokens.copyTokenWithPrefix(`${fields[fieldIndex].initializerName}() {this.`);\n }\n while (this.tokens.currentIndex() < fields[fieldIndex].end) {\n if (needsCloseBrace && this.tokens.currentIndex() === fields[fieldIndex].equalsIndex) {\n this.tokens.appendCode(\"]\");\n }\n this.processToken();\n }\n this.tokens.appendCode(\"}\");\n fieldIndex++;\n } else if (\n rangeToRemoveIndex < rangesToRemove.length &&\n this.tokens.currentIndex() >= rangesToRemove[rangeToRemoveIndex].start\n ) {\n if (this.tokens.currentIndex() < rangesToRemove[rangeToRemoveIndex].end) {\n this.tokens.removeInitialToken();\n }\n while (this.tokens.currentIndex() < rangesToRemove[rangeToRemoveIndex].end) {\n this.tokens.removeToken();\n }\n rangeToRemoveIndex++;\n } else if (this.tokens.currentIndex() === constructorInsertPos) {\n this.tokens.copyToken();\n if (needsConstructorInit) {\n this.tokens.appendCode(\n `;${this.makeConstructorInitCode(\n constructorInitializerStatements,\n instanceInitializerNames,\n className,\n )};`,\n );\n }\n this.processToken();\n } else {\n this.processToken();\n }\n }\n this.tokens.copyExpectedToken(tt.braceR);\n }\n\n makeConstructorInitCode(\n constructorInitializerStatements,\n instanceInitializerNames,\n className,\n ) {\n return [\n ...constructorInitializerStatements,\n ...instanceInitializerNames.map((name) => `${className}.prototype.${name}.call(this)`),\n ].join(\";\");\n }\n\n /**\n * Normally it's ok to simply remove type tokens, but we need to be more careful when dealing with\n * arrow function return types since they can confuse the parser. In that case, we want to move\n * the close-paren to the same line as the arrow.\n *\n * See https://github.com/alangpierce/sucrase/issues/391 for more details.\n */\n processPossibleArrowParamEnd() {\n if (this.tokens.matches2(tt.parenR, tt.colon) && this.tokens.tokenAtRelativeIndex(1).isType) {\n let nextNonTypeIndex = this.tokens.currentIndex() + 1;\n // Look ahead to see if this is an arrow function or something else.\n while (this.tokens.tokens[nextNonTypeIndex].isType) {\n nextNonTypeIndex++;\n }\n if (this.tokens.matches1AtIndex(nextNonTypeIndex, tt.arrow)) {\n this.tokens.removeInitialToken();\n while (this.tokens.currentIndex() < nextNonTypeIndex) {\n this.tokens.removeToken();\n }\n this.tokens.replaceTokenTrimmingLeftWhitespace(\") =>\");\n return true;\n }\n }\n return false;\n }\n\n /**\n * An async arrow function might be of the form:\n *\n * async <\n * T\n * >() => {}\n *\n * in which case, removing the type parameters will cause a syntax error. Detect this case and\n * move the open-paren earlier.\n */\n processPossibleAsyncArrowWithTypeParams() {\n if (\n !this.tokens.matchesContextual(ContextualKeyword._async) &&\n !this.tokens.matches1(tt._async)\n ) {\n return false;\n }\n const nextToken = this.tokens.tokenAtRelativeIndex(1);\n if (nextToken.type !== tt.lessThan || !nextToken.isType) {\n return false;\n }\n\n let nextNonTypeIndex = this.tokens.currentIndex() + 1;\n // Look ahead to see if this is an arrow function or something else.\n while (this.tokens.tokens[nextNonTypeIndex].isType) {\n nextNonTypeIndex++;\n }\n if (this.tokens.matches1AtIndex(nextNonTypeIndex, tt.parenL)) {\n this.tokens.replaceToken(\"async (\");\n this.tokens.removeInitialToken();\n while (this.tokens.currentIndex() < nextNonTypeIndex) {\n this.tokens.removeToken();\n }\n this.tokens.removeToken();\n // We ate a ( token, so we need to process the tokens in between and then the ) token so that\n // we remain balanced.\n this.processBalancedCode();\n this.processToken();\n return true;\n }\n return false;\n }\n\n processPossibleTypeRange() {\n if (this.tokens.currentToken().isType) {\n this.tokens.removeInitialToken();\n while (this.tokens.currentToken().isType) {\n this.tokens.removeToken();\n }\n return true;\n }\n return false;\n }\n\n shiftMappings(\n mappings,\n prefixLength,\n ) {\n for (let i = 0; i < mappings.length; i++) {\n const mapping = mappings[i];\n if (mapping !== undefined) {\n mappings[i] = mapping + prefixLength;\n }\n }\n return mappings;\n }\n}\n", "import LinesAndColumns from \"lines-and-columns\";\n\n\nimport {formatTokenType} from \"../parser/tokenizer/types\";\n\nexport default function formatTokens(code, tokens) {\n if (tokens.length === 0) {\n return \"\";\n }\n\n const tokenKeys = Object.keys(tokens[0]).filter(\n (k) => k !== \"type\" && k !== \"value\" && k !== \"start\" && k !== \"end\" && k !== \"loc\",\n );\n const typeKeys = Object.keys(tokens[0].type).filter((k) => k !== \"label\" && k !== \"keyword\");\n\n const headings = [\"Location\", \"Label\", \"Raw\", ...tokenKeys, ...typeKeys];\n\n const lines = new LinesAndColumns(code);\n const rows = [headings, ...tokens.map(getTokenComponents)];\n const padding = headings.map(() => 0);\n for (const components of rows) {\n for (let i = 0; i < components.length; i++) {\n padding[i] = Math.max(padding[i], components[i].length);\n }\n }\n return rows\n .map((components) => components.map((component, i) => component.padEnd(padding[i])).join(\" \"))\n .join(\"\\n\");\n\n function getTokenComponents(token) {\n const raw = code.slice(token.start, token.end);\n return [\n formatRange(token.start, token.end),\n formatTokenType(token.type),\n truncate(String(raw), 14),\n // @ts-ignore: Intentional dynamic access by key.\n ...tokenKeys.map((key) => formatValue(token[key], key)),\n // @ts-ignore: Intentional dynamic access by key.\n ...typeKeys.map((key) => formatValue(token.type[key], key)),\n ];\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n function formatValue(value, key) {\n if (value === true) {\n return key;\n } else if (value === false || value === null) {\n return \"\";\n } else {\n return String(value);\n }\n }\n\n function formatRange(start, end) {\n return `${formatPos(start)}-${formatPos(end)}`;\n }\n\n function formatPos(pos) {\n const location = lines.locationForIndex(pos);\n if (!location) {\n return \"Unknown\";\n } else {\n return `${location.line + 1}:${location.column + 1}`;\n }\n }\n}\n\nfunction truncate(s, length) {\n if (s.length > length) {\n return `${s.slice(0, length - 3)}...`;\n } else {\n return s;\n }\n}\n", "import {TokenType as tt} from \"../parser/tokenizer/types\";\n\nimport getImportExportSpecifierInfo from \"./getImportExportSpecifierInfo\";\n\n/**\n * Special case code to scan for imported names in ESM TypeScript. We need to do this so we can\n * properly get globals so we can compute shadowed globals.\n *\n * This is similar to logic in CJSImportProcessor, but trimmed down to avoid logic with CJS\n * replacement and flow type imports.\n */\nexport default function getTSImportedNames(tokens) {\n const importedNames = new Set();\n for (let i = 0; i < tokens.tokens.length; i++) {\n if (\n tokens.matches1AtIndex(i, tt._import) &&\n !tokens.matches3AtIndex(i, tt._import, tt.name, tt.eq)\n ) {\n collectNamesForImport(tokens, i, importedNames);\n }\n }\n return importedNames;\n}\n\nfunction collectNamesForImport(\n tokens,\n index,\n importedNames,\n) {\n index++;\n\n if (tokens.matches1AtIndex(index, tt.parenL)) {\n // Dynamic import, so nothing to do\n return;\n }\n\n if (tokens.matches1AtIndex(index, tt.name)) {\n importedNames.add(tokens.identifierNameAtIndex(index));\n index++;\n if (tokens.matches1AtIndex(index, tt.comma)) {\n index++;\n }\n }\n\n if (tokens.matches1AtIndex(index, tt.star)) {\n // * as\n index += 2;\n importedNames.add(tokens.identifierNameAtIndex(index));\n index++;\n }\n\n if (tokens.matches1AtIndex(index, tt.braceL)) {\n index++;\n collectNamesForNamedImport(tokens, index, importedNames);\n }\n}\n\nfunction collectNamesForNamedImport(\n tokens,\n index,\n importedNames,\n) {\n while (true) {\n if (tokens.matches1AtIndex(index, tt.braceR)) {\n return;\n }\n\n const specifierInfo = getImportExportSpecifierInfo(tokens, index);\n index = specifierInfo.endIndex;\n if (!specifierInfo.isType) {\n importedNames.add(specifierInfo.rightName);\n }\n\n if (tokens.matches2AtIndex(index, tt.comma, tt.braceR)) {\n return;\n } else if (tokens.matches1AtIndex(index, tt.braceR)) {\n return;\n } else if (tokens.matches1AtIndex(index, tt.comma)) {\n index++;\n } else {\n throw new Error(`Unexpected token: ${JSON.stringify(tokens.tokens[index])}`);\n }\n }\n}\n", "import CJSImportProcessor from \"./CJSImportProcessor\";\nimport computeSourceMap, {} from \"./computeSourceMap\";\nimport {HelperManager} from \"./HelperManager\";\nimport identifyShadowedGlobals from \"./identifyShadowedGlobals\";\nimport NameManager from \"./NameManager\";\nimport {validateOptions} from \"./Options\";\n\nimport {parse} from \"./parser\";\n\nimport TokenProcessor from \"./TokenProcessor\";\nimport RootTransformer from \"./transformers/RootTransformer\";\nimport formatTokens from \"./util/formatTokens\";\nimport getTSImportedNames from \"./util/getTSImportedNames\";\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n;\n\nexport function getVersion() {\n /* istanbul ignore next */\n return \"3.35.1\";\n}\n\nexport function transform(code, options) {\n validateOptions(options);\n try {\n const sucraseContext = getSucraseContext(code, options);\n const transformer = new RootTransformer(\n sucraseContext,\n options.transforms,\n Boolean(options.enableLegacyBabel5ModuleInterop),\n options,\n );\n const transformerResult = transformer.transform();\n let result = {code: transformerResult.code};\n if (options.sourceMapOptions) {\n if (!options.filePath) {\n throw new Error(\"filePath must be specified when generating a source map.\");\n }\n result = {\n ...result,\n sourceMap: computeSourceMap(\n transformerResult,\n options.filePath,\n options.sourceMapOptions,\n code,\n sucraseContext.tokenProcessor.tokens,\n ),\n };\n }\n return result;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e) {\n if (options.filePath) {\n e.message = `Error transforming ${options.filePath}: ${e.message}`;\n }\n throw e;\n }\n}\n\n/**\n * Return a string representation of the sucrase tokens, mostly useful for\n * diagnostic purposes.\n */\nexport function getFormattedTokens(code, options) {\n const tokens = getSucraseContext(code, options).tokenProcessor.tokens;\n return formatTokens(code, tokens);\n}\n\n/**\n * Call into the parser/tokenizer and do some further preprocessing:\n * - Come up with a set of used names so that we can assign new names.\n * - Preprocess all import/export statements so we know which globals we are interested in.\n * - Compute situations where any of those globals are shadowed.\n *\n * In the future, some of these preprocessing steps can be skipped based on what actual work is\n * being done.\n */\nfunction getSucraseContext(code, options) {\n const isJSXEnabled = options.transforms.includes(\"jsx\");\n const isTypeScriptEnabled = options.transforms.includes(\"typescript\");\n const isFlowEnabled = options.transforms.includes(\"flow\");\n const disableESTransforms = options.disableESTransforms === true;\n const file = parse(code, isJSXEnabled, isTypeScriptEnabled, isFlowEnabled);\n const tokens = file.tokens;\n const scopes = file.scopes;\n\n const nameManager = new NameManager(code, tokens);\n const helperManager = new HelperManager(nameManager);\n const tokenProcessor = new TokenProcessor(\n code,\n tokens,\n isFlowEnabled,\n disableESTransforms,\n helperManager,\n );\n const enableLegacyTypeScriptModuleInterop = Boolean(options.enableLegacyTypeScriptModuleInterop);\n\n let importProcessor = null;\n if (options.transforms.includes(\"imports\")) {\n importProcessor = new CJSImportProcessor(\n nameManager,\n tokenProcessor,\n enableLegacyTypeScriptModuleInterop,\n options,\n options.transforms.includes(\"typescript\"),\n Boolean(options.keepUnusedImports),\n helperManager,\n );\n importProcessor.preprocessTokens();\n // We need to mark shadowed globals after processing imports so we know that the globals are,\n // but before type-only import pruning, since that relies on shadowing information.\n identifyShadowedGlobals(tokenProcessor, scopes, importProcessor.getGlobalNames());\n if (options.transforms.includes(\"typescript\") && !options.keepUnusedImports) {\n importProcessor.pruneTypeOnlyImports();\n }\n } else if (options.transforms.includes(\"typescript\") && !options.keepUnusedImports) {\n // Shadowed global detection is needed for TS implicit elision of imported names.\n identifyShadowedGlobals(tokenProcessor, scopes, getTSImportedNames(tokenProcessor));\n }\n return {tokenProcessor, scopes, nameManager, importProcessor, helperManager};\n}\n", "import React, { Component } from 'react';\n\nexport interface ErrorBoundaryProps {\n /** Content to render when an error occurs */\n fallback?: React.ReactNode;\n\n /** Callback when an error is caught */\n onError?: (error: Error, errorInfo: React.ErrorInfo) => void;\n\n /** Children to render */\n children: React.ReactNode;\n}\n\nexport interface ErrorBoundaryState {\n hasError: boolean;\n error: Error | null;\n}\n\n/**\n * Error boundary component to catch and display errors in child components\n */\nexport class ErrorBoundary extends Component<ErrorBoundaryProps, ErrorBoundaryState> {\n static displayName = 'ErrorBoundary';\n\n constructor(props: ErrorBoundaryProps) {\n super(props);\n this.state = { hasError: false, error: null };\n }\n\n static getDerivedStateFromError(error: Error): ErrorBoundaryState {\n return { hasError: true, error };\n }\n\n componentDidCatch(error: Error, errorInfo: React.ErrorInfo) {\n this.props.onError?.(error, errorInfo);\n console.error('[react-code-view] Error caught by ErrorBoundary:', error, errorInfo);\n }\n\n render() {\n const { hasError, error } = this.state;\n const { fallback, children } = this.props;\n\n if (hasError) {\n if (fallback) {\n return fallback;\n }\n\n return (\n <div className=\"rcv-error\" role=\"alert\" aria-live=\"polite\">\n <pre className=\"rcv-error__message\">\n {error?.message || 'An error occurred'}\n </pre>\n </div>\n );\n }\n\n return children;\n }\n}\n", "import React from 'react';\nimport { ErrorBoundary } from './ErrorBoundary';\n\nexport interface PreviewProps {\n /** Element to render in preview */\n children?: React.ReactNode;\n\n /** Error to display */\n error?: Error | null;\n\n /** Custom className */\n className?: string;\n\n /** Content to display when children is empty */\n emptyContent?: React.ReactNode;\n}\n\n/**\n * Preview component to display rendered code output\n */\nexport const Preview = React.memo<PreviewProps>(\n ({ children, error, className = '', emptyContent }) => {\n // Show error state\n if (error) {\n return (\n <div className={`rcv-preview rcv-preview--error ${className}`} role=\"alert\">\n <pre className=\"rcv-preview__error\">{error.message}</pre>\n </div>\n );\n }\n\n // Show empty state if no children\n if (!children && emptyContent) {\n return (\n <div className={`rcv-preview rcv-preview--empty ${className}`}>\n {emptyContent}\n </div>\n );\n }\n\n return (\n <ErrorBoundary>\n <div className={`rcv-preview ${className}`}>{children}</div>\n </ErrorBoundary>\n );\n }\n);\n\nPreview.displayName = 'Preview';\n", "import React, { useEffect, useRef } from 'react';\nimport { EditorView, keymap, highlightSpecialChars, drawSelection, highlightActiveLine, dropCursor, rectangularSelection, crosshairCursor, lineNumbers as showLineNumbers, highlightActiveLineGutter } from '@codemirror/view';\nimport { EditorState } from '@codemirror/state';\nimport { defaultHighlightStyle, syntaxHighlighting, indentOnInput, bracketMatching, foldGutter, foldKeymap } from '@codemirror/language';\nimport { defaultKeymap, history, historyKeymap } from '@codemirror/commands';\nimport { searchKeymap, highlightSelectionMatches } from '@codemirror/search';\nimport { autocompletion, completionKeymap, closeBrackets, closeBracketsKeymap } from '@codemirror/autocomplete';\nimport { lintKeymap } from '@codemirror/lint';\nimport { javascript } from '@codemirror/lang-javascript';\nimport { css } from '@codemirror/lang-css';\nimport { html } from '@codemirror/lang-html';\nimport { json } from '@codemirror/lang-json';\nimport { markdown } from '@codemirror/lang-markdown';\nimport { oneDark } from '@codemirror/theme-one-dark';\n\nexport interface CodeEditorProps {\n /** Code to edit */\n code: string;\n\n /** Callback when code changes */\n onChange?: (code: string) => void;\n\n /** Whether the editor is read-only */\n readOnly?: boolean;\n\n /** Placeholder text */\n placeholder?: string;\n\n /** Custom className */\n className?: string;\n\n /** Code language for syntax highlighting */\n language?: string;\n\n /** Show line numbers */\n lineNumbers?: boolean;\n\n /** Editor theme: 'light' | 'dark' */\n theme?: 'light' | 'dark';\n\n /** CodeMirror instance options (reserved for future use) */\n editorOptions?: Record<string, unknown>;\n}\n\n/**\n * Modern code editor component powered by CodeMirror 6\n */\nexport const CodeEditor = React.memo<CodeEditorProps>(\n ({\n code,\n onChange,\n readOnly = false,\n placeholder,\n className = '',\n language = 'javascript',\n theme = 'light'\n }) => {\n const editorRef = useRef<HTMLDivElement | null>(null);\n const viewRef = useRef<EditorView | null>(null);\n\n useEffect(() => {\n if (!editorRef.current) return;\n\n // Get language extension based on language prop\n const getLanguageExtension = (lang: string) => {\n const normalized = lang.toLowerCase();\n switch (normalized) {\n case 'javascript':\n case 'js':\n case 'jsx':\n return javascript({ jsx: true });\n case 'typescript':\n case 'ts':\n case 'tsx':\n return javascript({ typescript: true, jsx: true });\n case 'css':\n case 'less':\n case 'scss':\n return css();\n case 'html':\n case 'xml':\n return html();\n case 'json':\n return json();\n case 'markdown':\n case 'md':\n return markdown();\n default:\n return javascript();\n }\n };\n\n // Build basic extensions\n const basicExtensions = [\n showLineNumbers(),\n highlightActiveLineGutter(),\n highlightSpecialChars(),\n history(),\n foldGutter(),\n drawSelection(),\n dropCursor(),\n EditorState.allowMultipleSelections.of(true),\n indentOnInput(),\n syntaxHighlighting(defaultHighlightStyle, { fallback: true }),\n bracketMatching(),\n closeBrackets(),\n autocompletion(),\n rectangularSelection(),\n crosshairCursor(),\n highlightActiveLine(),\n highlightSelectionMatches(),\n keymap.of([\n ...closeBracketsKeymap,\n ...defaultKeymap,\n ...searchKeymap,\n ...historyKeymap,\n ...foldKeymap,\n ...completionKeymap,\n ...lintKeymap\n ])\n ];\n\n // Build extensions array\n const extensions = [\n ...basicExtensions,\n getLanguageExtension(language),\n EditorView.lineWrapping,\n EditorState.readOnly.of(readOnly),\n EditorView.updateListener.of((update) => {\n if (update.docChanged && onChange) {\n onChange(update.state.doc.toString());\n }\n })\n ];\n\n // Add theme\n if (theme === 'dark') {\n extensions.push(oneDark);\n }\n\n // Add placeholder if provided\n if (placeholder) {\n extensions.push(\n EditorView.theme({\n '.cm-content': {\n minHeight: '100px'\n }\n })\n );\n }\n\n // Create editor state\n const state = EditorState.create({\n doc: code,\n extensions\n });\n\n // Create editor view\n const view = new EditorView({\n state,\n parent: editorRef.current\n });\n\n viewRef.current = view;\n\n // Cleanup\n return () => {\n view.destroy();\n viewRef.current = null;\n };\n }, [language, readOnly, theme, placeholder]); // Note: onChange is intentionally omitted\n\n // Update document when code prop changes externally\n useEffect(() => {\n const view = viewRef.current;\n if (!view) return;\n\n const currentCode = view.state.doc.toString();\n if (currentCode !== code) {\n view.dispatch({\n changes: {\n from: 0,\n to: currentCode.length,\n insert: code\n }\n });\n }\n }, [code]);\n\n return <div className={`rcv-code-editor ${className}`} ref={editorRef} />;\n }\n);\n\nCodeEditor.displayName = 'CodeEditor';\n", "import React, { useEffect, useState } from 'react';\nimport { highlight } from '@react-code-view/core';\nimport type { HighlightOptions } from '@react-code-view/core';\n\nexport interface RendererProps {\n /** Code to render with syntax highlighting */\n code: string;\n\n /** Programming language */\n language?: string;\n\n /** Shiki theme */\n theme?: string;\n\n /** Highlight.js options (deprecated, use theme instead) */\n highlightOptions?: Partial<HighlightOptions>;\n\n /** Custom className */\n className?: string;\n}\n\n/**\n * Syntax-highlighted code renderer using Shiki\n */\nexport const Renderer = React.memo<RendererProps>(\n ({ code, language = 'plaintext', theme, highlightOptions = {}, className = '' }) => {\n const [highlightedHtml, setHighlightedHtml] = useState<string>('');\n\n useEffect(() => {\n let cancelled = false;\n\n const doHighlight = async () => {\n const html = await highlight(code, {\n language,\n theme: theme || (className.includes('dark') ? 'github-dark' : 'github-light'),\n ...highlightOptions\n });\n\n if (!cancelled) {\n setHighlightedHtml(html);\n }\n };\n\n doHighlight();\n\n return () => {\n cancelled = true;\n };\n }, [code, language, theme, className, highlightOptions]);\n\n if (!highlightedHtml) {\n return (\n <div className={`rcv-renderer ${className}`}>\n <pre className=\"rcv-renderer__pre\">\n <code className={`language-${language}`}>{code}</code>\n </pre>\n </div>\n );\n }\n\n return (\n <div\n className={`rcv-renderer ${className}`}\n dangerouslySetInnerHTML={{ __html: highlightedHtml }}\n />\n );\n }\n);\n\nRenderer.displayName = 'Renderer';\n", "import React from 'react';\n\nexport interface CheckIconProps extends React.SVGProps<SVGSVGElement> {}\n\nexport const CheckIcon: React.FC<CheckIconProps> = props => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n {...props}\n >\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n);\n", "import React from 'react';\n\nexport interface CodeIconProps extends React.SVGProps<SVGSVGElement> {}\n\nexport const CodeIcon: React.FC<CodeIconProps> = props => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n {...props}\n >\n <polyline points=\"16 18 22 12 16 6\" />\n <polyline points=\"8 6 2 12 8 18\" />\n </svg>\n);\n", "import React from 'react';\n\nexport interface CopyIconProps extends React.SVGProps<SVGSVGElement> {}\n\nexport const CopyIcon: React.FC<CopyIconProps> = props => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n {...props}\n >\n <rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\" />\n <path d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\" />\n </svg>\n);\n", "/**\n * Check if DOM APIs are available\n */\nexport const canUseDOM = !!(\n typeof window !== 'undefined' &&\n window.document &&\n window.document.createElement\n);\n", "/**\n * Safely evaluate code in a sandboxed scope\n */\nexport function evalCode(code: string, scope: Record<string, unknown>): unknown {\n const scopeKeys = Object.keys(scope);\n const scopeValues = scopeKeys.map(key => scope[key]);\n return new Function(...scopeKeys, code)(...scopeValues);\n}\n", "import type { MutableRefObject, RefCallback, Ref } from 'react';\n\ntype PossibleRef<T> = Ref<T> | undefined;\n\n/**\n * Merge multiple refs into one\n */\nexport function mergeRefs<T>(...refs: PossibleRef<T>[]): RefCallback<T> {\n return (value: T) => {\n refs.forEach(ref => {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref && typeof ref === 'object') {\n (ref as MutableRefObject<T | null>).current = value;\n }\n });\n };\n}\n", "import { canUseDOM } from './canUseDOM';\n\n/**\n * Parse HTML string to DOM element\n */\nexport function parseDom(html: string): Element | null {\n if (!canUseDOM) {\n return null;\n }\n\n const parser = new DOMParser();\n const doc = parser.parseFromString(html, 'text/html');\n return doc.body.firstElementChild;\n}\n", "import { parseDom } from './parseDom';\n\ninterface ParsedFragment {\n key: number;\n type: 'code' | 'html';\n content: string;\n}\n\nfunction getText(element: Element): string {\n return element.textContent || '';\n}\n\n/**\n * Parse HTML source to extract code and HTML fragments\n */\nexport function parseHTML(source: string): ParsedFragment[] | null {\n if (!source) {\n return null;\n }\n\n const fragments = source.split(/(<!-+\\s?start-code\\s?-+>[\\s\\S]+?<!-+\\s?end-code\\s?-+>)/gi);\n\n return fragments\n .filter(fragment => fragment.trim())\n .map((fragment, key) => {\n if (fragment.match(/<!-+\\s?start-code\\s?-+>[\\s\\S]+?<!-+\\s?end-code\\s?-+>/gi)) {\n const dom = parseDom(fragment);\n return { key, type: 'code' as const, content: dom ? getText(dom) : fragment };\n }\n\n return { key, type: 'html' as const, content: fragment };\n });\n}\n", "import React, { useState, useCallback, useEffect, useRef } from 'react';\nimport { CheckIcon, CopyIcon } from '../icons';\nimport { canUseDOM } from '../utils';\n\nexport interface CopyCodeButtonProps {\n /** Code to copy to clipboard */\n code: string;\n\n /** Duration to show success state (ms) */\n successDuration?: number;\n\n /** Custom className */\n className?: string;\n\n /** Accessible label */\n 'aria-label'?: string;\n}\n\n/**\n * Button to copy code to clipboard\n */\nexport const CopyCodeButton = React.memo<CopyCodeButtonProps>(\n ({ code, successDuration = 2000, className = '', ...props }) => {\n const [copied, setCopied] = useState(false);\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const handleCopy = useCallback(async () => {\n if (!canUseDOM || !navigator.clipboard) {\n return;\n }\n\n try {\n await navigator.clipboard.writeText(code);\n setCopied(true);\n\n // Clear any existing timeout\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n\n timeoutRef.current = setTimeout(() => {\n setCopied(false);\n }, successDuration);\n } catch (error) {\n console.error('[react-code-view] Failed to copy code:', error);\n }\n }, [code, successDuration]);\n\n // Cleanup timeout on unmount\n useEffect(() => {\n return () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n };\n }, []);\n\n return (\n <button\n type=\"button\"\n className={`rcv-copy-button ${copied ? 'rcv-copy-button--copied' : ''} ${className}`}\n onClick={handleCopy}\n aria-label={props['aria-label'] || (copied ? 'Copied!' : 'Copy code')}\n >\n {copied ? <CheckIcon /> : <CopyIcon />}\n </button>\n );\n }\n);\n\nCopyCodeButton.displayName = 'CopyCodeButton';\n", "import React, { useCallback, useState, useEffect } from 'react';\nimport { transform as transformCode, type Options } from 'sucrase';\nimport { canUseDOM, evalCode } from '../utils';\n\nconst ReactModule = React;\n\nexport interface UseCodeExecutionOptions {\n /** Dependencies to inject into the code scope */\n dependencies?: Record<string, unknown>;\n\n /** Sucrase transform options */\n transformOptions?: Options;\n\n /** Transform code before compilation */\n beforeCompile?: (code: string) => string;\n\n /** Transform code after compilation */\n afterCompile?: (code: string) => string;\n\n /** Callback when an error occurs */\n onError?: (error: Error) => void;\n}\n\nconst defaultTransformOptions: Options = { transforms: ['jsx'] };\n\n/**\n * Hook for executing code and capturing the rendered element\n */\nexport function useCodeExecution(initialCode: string, options: UseCodeExecutionOptions = {}) {\n const {\n dependencies = {},\n transformOptions = defaultTransformOptions,\n beforeCompile,\n afterCompile,\n onError\n } = options;\n\n const [element, setElement] = useState<React.ReactNode>(null);\n const [error, setError] = useState<Error | null>(null);\n const [code, setCode] = useState(initialCode);\n\n const execute = useCallback(\n (codeToExecute: string) => {\n if (!canUseDOM) {\n return;\n }\n\n // Clear previous error\n setError(null);\n\n try {\n // Apply beforeCompile transform\n const preProcessedCode = beforeCompile?.(codeToExecute) || codeToExecute;\n\n // Transform JSX to JS\n const { code: compiledCode } = transformCode(preProcessedCode, transformOptions);\n\n // Apply afterCompile transform\n const finalCode = afterCompile?.(compiledCode) || compiledCode;\n\n // Create a custom render function to capture the element\n let capturedElement: React.ReactNode = null;\n const customRender = (el: React.ReactNode) => {\n capturedElement = el;\n return el;\n };\n\n // Execute the code with dependencies\n evalCode(finalCode, {\n React: ReactModule,\n ReactDOM: { render: customRender },\n render: customRender,\n ...dependencies\n });\n\n // Update state with captured element\n if (capturedElement !== null) {\n setElement(capturedElement);\n }\n } catch (err) {\n const error = err instanceof Error ? err : new Error(String(err));\n setError(error);\n onError?.(error);\n console.error('[react-code-view] Code execution error:', error);\n }\n },\n [dependencies, transformOptions, beforeCompile, afterCompile, onError]\n );\n\n // Execute initial code\n useEffect(() => {\n execute(code);\n }, [code, execute]);\n\n return {\n element,\n error,\n code,\n setCode,\n execute\n };\n}\n", "import React, { useState, useCallback, useMemo, useEffect } from 'react';\nimport type { Options as SucraseOptions } from 'sucrase';\nimport { ErrorBoundary } from './ErrorBoundary';\nimport { Preview } from './Preview';\nimport { CodeEditor } from './CodeEditor';\nimport { Renderer } from './Renderer';\nimport { CopyCodeButton } from './CopyCodeButton';\nimport { CodeIcon } from '../icons';\nimport { useCodeExecution } from '../hooks';\nimport { canUseDOM } from '../utils';\n\nexport interface CodeViewProps {\n /** Source code to display and optionally execute */\n children?: string;\n\n /** Dependencies to inject into the code execution scope */\n dependencies?: Record<string, unknown>;\n\n /** Programming language for syntax highlighting */\n language?: string;\n\n /** Whether the code is editable */\n editable?: boolean;\n\n /** Whether to render the code preview */\n renderPreview?: boolean;\n\n /** Show line numbers in code view */\n showLineNumbers?: boolean;\n\n /** Show copy button */\n showCopyButton?: boolean;\n\n /** Initially show code (default: false) */\n defaultShowCode?: boolean;\n\n /** Custom theme className */\n theme?: string;\n\n /** Transform code before compilation */\n beforeCompile?: (code: string) => string;\n\n /** Transform code after compilation */\n afterCompile?: (code: string) => string;\n\n /** Sucrase transform options */\n compilerOptions?: SucraseOptions;\n\n /** Callback when code changes */\n onChange?: (code: string) => void;\n\n /** Callback when an error occurs */\n onError?: (error: Error) => void;\n\n /** Custom className */\n className?: string;\n\n /** Custom style */\n style?: React.CSSProperties;\n\n /** Content to display when preview is empty */\n emptyPreviewContent?: React.ReactNode;\n}\n\n/**\n * CodeView - Main component for displaying and optionally executing React code\n *\n * @example\n * ```jsx\n * import CodeView from '@react-code-view/react';\n *\n * <CodeView dependencies={{ Button }} language=\"jsx\">\n * {`<Button>Click me</Button>`}\n * </CodeView>\n * ```\n */\nexport const CodeView = React.memo<CodeViewProps>(\n ({\n children = '',\n dependencies = {},\n language = 'jsx',\n editable = true,\n renderPreview = true,\n showCopyButton = true,\n defaultShowCode = false,\n theme = 'rcv-theme-default',\n beforeCompile,\n afterCompile,\n compilerOptions,\n onChange,\n onError,\n className = '',\n style,\n emptyPreviewContent\n }) => {\n const [showCode, setShowCode] = useState(defaultShowCode);\n\n // Use the code execution hook\n const { element, error, code, setCode, execute } = useCodeExecution(children, {\n dependencies,\n transformOptions: compilerOptions,\n beforeCompile,\n afterCompile,\n onError\n });\n\n // Handle code changes\n const handleCodeChange = useCallback(\n (newCode: string) => {\n setCode(newCode);\n onChange?.(newCode);\n },\n [setCode, onChange]\n );\n\n // Toggle code visibility\n const toggleCode = useCallback(() => {\n setShowCode(prev => !prev);\n }, []);\n\n // Re-execute when code changes\n useEffect(() => {\n if (canUseDOM && code) {\n execute(code);\n }\n }, [code, execute]);\n\n const containerClassName = useMemo(\n () =>\n [\n 'rcv-code-view',\n theme,\n showCode && 'rcv-code-view--code-visible',\n error && 'rcv-code-view--has-error',\n className\n ]\n .filter(Boolean)\n .join(' '),\n [theme, showCode, error, className]\n );\n\n return (\n <ErrorBoundary onError={onError}>\n <div className={containerClassName} style={style}>\n {/* Preview Section */}\n {renderPreview && (\n <div className=\"rcv-code-view__preview\">\n <Preview error={error} emptyContent={emptyPreviewContent}>\n {element}\n </Preview>\n </div>\n )}\n\n {/* Toolbar */}\n <div className=\"rcv-code-view__toolbar\">\n <button\n type=\"button\"\n className=\"rcv-code-view__toggle-btn\"\n onClick={toggleCode}\n aria-expanded={showCode}\n aria-label={showCode ? 'Hide code' : 'Show code'}\n >\n <CodeIcon />\n <span>{showCode ? 'Hide Code' : 'Show Code'}</span>\n </button>\n\n {showCopyButton && (\n <CopyCodeButton code={code} aria-label=\"Copy code to clipboard\" />\n )}\n </div>\n\n {/* Code Section */}\n {showCode && (\n <div className=\"rcv-code-view__code\">\n {editable ? (\n <CodeEditor\n code={code}\n onChange={handleCodeChange}\n language={language}\n />\n ) : (\n <Renderer\n code={code}\n language={language}\n theme={theme as 'github-light' | 'github-dark'}\n />\n )}\n </div>\n )}\n </div>\n </ErrorBoundary>\n );\n }\n);\n\nCodeView.displayName = 'CodeView';\n\n// Default export\nexport default CodeView;\n", "import React, { useState, useEffect } from 'react';\nimport { transformMarkdownSync, initHighlighter } from '@react-code-view/core';\nimport type { RendererOptions, TransformOptions } from '@react-code-view/core';\n\nexport interface MarkdownRendererProps {\n /** Markdown content to render */\n children: string;\n\n /** Custom renderer options */\n rendererOptions?: Partial<RendererOptions>;\n\n /** Transform options */\n transformOptions?: Partial<TransformOptions>;\n\n /** Custom className */\n className?: string;\n\n /** Syntax highlighting theme */\n theme?: string;\n}\n\n/**\n * Component for rendering Markdown content with syntax highlighting\n */\nexport const MarkdownRenderer = React.memo<MarkdownRendererProps>(\n ({ children, rendererOptions = {}, transformOptions = {}, className = '', theme = 'github-light' }) => {\n const [html, setHtml] = useState<string>('');\n const [isInitialized, setIsInitialized] = useState(false);\n\n // Initialize Shiki highlighter once\n useEffect(() => {\n initHighlighter().then(() => {\n setIsInitialized(true);\n });\n }, []);\n\n // Render markdown when initialized or when content/theme changes\n useEffect(() => {\n if (!isInitialized || !children) {\n setHtml('');\n return;\n }\n\n const result = transformMarkdownSync(children, {\n ...transformOptions,\n ...rendererOptions,\n theme\n });\n\n setHtml(result.html);\n }, [children, rendererOptions, transformOptions, theme, isInitialized]);\n\n return (\n <div\n className={`rcv-markdown ${className}`}\n dangerouslySetInnerHTML={{ __html: html }}\n />\n );\n }\n);\n\nMarkdownRenderer.displayName = 'MarkdownRenderer';\n"], + "mappings": "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AW;AAAA,MACjB,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,eAAO;AAAA,MACT,KAAK,UAAU;AACb,e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IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAExG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG,kBAAkB,aAAa;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEtI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG,kBAAkB,aAAa;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEtI,kBAAkB,OAAO;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA;AAAA,IAElI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG,kBAAkB,WAAW;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAErI,kBAAkB,YAAY;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAErI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG,kBAAkB,UAAU;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEnI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG,kBAAkB,UAAU;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEnI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAK;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;A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I;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1H;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,WAAW;AAAA,IAAG;AAAA,I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I;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE5H;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,gBAAgB;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAEzG,UAAG,aAAa,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE7H;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE5G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEhH;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAEzG,UAAG,aAAa,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE7H;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,YAAY;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAErI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,I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I;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,SAAS;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAElI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE5G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AA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AAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE5H;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAElH;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AA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A,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAExH;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,SAAS;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAElI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAEzG,UAAG,aAAa,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE7H;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE5G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,QAAQ;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEjI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,WAAW;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEpI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAE/G,UAAG,OAAO,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEvH;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE5G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,eAAe;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAExI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAEzG,UAAG,WAAW,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAE1H,UAAG,OAAO,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE7H;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,UAAU;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEnI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAEzG,UAAG,eAAe,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE/H;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,cAAc;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEvI,kBAAkB,OAAO;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEhI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,UAAU;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEnI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAEzG,UAAG,QAAQ,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAExH;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE5G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,WAAW;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEpI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,WAAW;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEpI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE9G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,cAAc;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEvI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAEzG,UAAG,QAAQ,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAExH;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAEzG,UAAG,SAAS,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEzH;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEhH,kBAAkB,OAAO;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEhI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,WAAW;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEpI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,QAAQ;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEjI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,aAAa;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEtI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE5G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE5G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,YAAY;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAErI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE5G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,cAAc;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEvI,kBAAkB,UAAU;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEnI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,WAAW;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEpI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE9G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA;AAAA,IAE1G,kBAAkB,aAAa;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEtI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,YAAY;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAErI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAEzG,UAAG,WAAW,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE3H;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAM;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAM;AAAA;AAAA,IAEpH;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,cAAc;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEvI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,QAAQ;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEjI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,WAAW;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEpI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAEzG,UAAG,UAAU,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1H;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,KAEzG,UAAG,WAAW,KAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE3H;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kB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AAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE5G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G,kBAAkB,WAAW;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAEpI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA;AAAA,IAE1G;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAM;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;A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", + "names": ["ReactDebugCurrentFrame", "Component", "typeName", "config", "key", "self", "element", "escape", "match", "text", "array", "count", "toArray", "moduleObject", "error", "name", "compare", "Context", "useState", "useRef", "useEffect", "create", "useCallback", "useMemo", "values", "keys", "options", "returnValue", "compare", "isInputPending", "initialTime", "options", "startTime", "React", "ReactDebugCurrentFrame", "canUseDOM", "typeName", "name", "prefix", "properties", "sanitizeURL", "propertyName", "match", "Component", "workInProgress", "tag", "get", "set", "doc", "element", "isHydrating", "options", "html", "text", "key", "string", "style", "registrationNameDependencies", "possibleRegistrationNames", "error", "callCallback", "current", "root", "index", "renderLanes", "queuedEvent", "container", "normalize", "chars", "state", "nodeStart", "selection", "next", "getSelection", "input", "prefixes", "data", "values", "has", "cursor", "id", "number", "array", "clone", "updateFragment", "child", "reconcileChildFibers", "list", "create", "error$1", "render", "compare", "subtreeRenderLanes", "hasContextChanged", "commitTime", "checks", "shouldFireAfterActiveInstanceBlur", "types", "content", "hydrate", "keys", "currentHook", "ReactCurrentDispatcher", "createRoot", "React", "ReactDebugCurrentFrame", "name", "match", "Component", "element", "values", "typeName", "config", "self", "key", "keys", "jsx", "jsxs", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "lang", "wasm_exports", "init_wasm", "input", "match", "hash", "url", "base", "d", "b", "p", "VError", "NoopContext", "score", "DetailContext", "_a", "DetailUnionResolver", "d", "b", "p", "TType", "name", "TName", "lit", "TLiteral", "array", "TArray", "_i", "t", "TTuple", "union", "TUnion", "TIntersection", "values", "TEnumType", "TEnumLiteral", "iface", "TIface", "opt", "TOptional", "TProp", "TFunc", "TParam", "TParamList", "param", "BasicType", "tag", "array_1", "_a", "createCheckers", "_a", "name", "Checker", "p", "LinesAndColumns", "string", "import_react", "import_react", "next", "text", "string", "add", "top", "next", "number", "findClusterBreak", "surrogateLow", "surrogateHigh", "codePointAt", "codePointSize", "MapMode", "json", "doc", "process", "insert", "i", "values", "head", "main", "selection", "compare", "config", "get", "state", "_a", "id", "tr", "p", "create", "prec", "content", "base", "scrollIntoView", "CharCategory", "require", "key", "phrase", "name", "chars", "defaults", "cur", "cursor", "layer", "array", "options", "spec", "id", "root", "doc", "text", "name", "elt", "next", "name", "ie", "name", "key", "BlockType", "block", "root", "selection", "elt", "doc", "cur", "top", "rect", "options", "Direction", "p", "replace", "br", "type", "next", "_a", "findClusterBreak", "text", "values", "state", "t", "id", "create", "add", "tr", "pos", "mark", "flatten", "dist", "cache", "blockWrappers", "marks", "tile", "head", "chars", "decorations", "from", "to", "tag", "main", "cursor", "offset", "textHeight", "i", "content", "re", "scrollIntoView", "base", "handlers", "observers", "input", "insert", "event", "data", "QueryType", "DecorationComparator", "gap", "array", "view", "config", "shift", "meta", "command", "codePointAt", "codePointSize", "cmd", "pieces", "layer", "state", "cursor", "tr", "pos", "_a", "doc", "re", "config", "match", "add", "from", "to", "deco", "m", "codePointAt", "options", "state", "event", "cur", "options", "_a", "t", "input", "i", "values", "_a", "config", "t", "p", "space", "top", "elt", "name", "state", "options", "tr", "p", "input", "top", "container", "next", "config", "values", "gutter", "cur", "gutters", "asArray", "cursor", "block", "marker", "elt", "next", "add", "event", "number", "state", "marks", "Range", "config", "match", "parser", "name", "id", "types", "add", "IterMode", "cursor", "data", "_a", "next", "cur", "p", "root", "cache", "children", "positions", "node", "buffer", "contextHash", "length", "lookAhead", "base", "pair", "nodeSize", "nodeStart", "from", "to", "input", "parse", "string", "done", "inner", "r", "pos", "name", "base", "tag", "t", "sameArray", "config", "array", "tags", "next", "cur", "root", "options", "all", "cursor", "hasChild", "next", "rangeFrom", "rangeTo", "name", "values", "data", "parser", "name", "state", "top", "base", "lang", "options", "doc", "parser", "state", "_a", "input", "tr", "language", "lang", "name", "values", "state", "options", "text", "add", "cur", "base", "lineEnd", "next", "space", "closing", "tr", "doc", "head", "line", "state", "_a", "from", "to", "values", "config", "baseTheme$1", "state", "element", "mark", "_a", "options", "def", "all", "main", "from", "to", "baseTheme", "match", "decorations", "mark", "tr", "config", "state", "cur", "matches", "handle", "cursor", "bracket", "text", "pos", "name", "name", "tag", "key", "t", "state", "config", "option", "tr", "state", "data", "option", "comment", "empty", "isAdjacent", "tr", "config", "json", "command", "selection", "state", "tr", "_a", "json", "tr", "selection", "none", "isAdjacent", "t", "config", "state", "state", "next", "bracket", "match", "selection", "space", "head", "selection", "head", "state", "selection", "cur", "next", "findClusterBreak", "state", "next", "findClusterBreak", "nextChar", "lineEnd", "state", "findClusterBreak", "block", "selection", "dist", "state", "insert", "changes", "cur", "space", "text", "normalize", "codePointAt", "next", "codePointSize", "match", "options", "doc", "_a", "input", "state", "percent", "line", "selection", "tr", "baseTheme$1", "cursor", "main", "word", "config", "text", "state", "QueryType", "doc", "cursor", "add", "findClusterBreak", "match", "tr", "state", "from", "to", "next", "selection", "config", "main", "cur", "match", "_a", "input", "name", "content", "tr", "phrase", "lineEnd", "text", "baseTheme", "state", "types", "options", "chars", "list", "match", "match", "score", "state", "_a", "text", "main", "p", "codePointAt", "codePointSize", "chars", "next", "list", "option", "space", "config", "content", "off", "applyCompletion", "options", "id", "opt", "scrollIntoView", "name", "li", "container", "element", "self", "compare", "cur", "none", "tr", "noAttrs", "baseTheme", "pos", "m", "snippet", "state", "match", "defaults", "tr", "inputHandler", "state", "insert", "codePointSize", "codePointAt", "bracket", "doc", "next", "config", "content", "p", "baseTheme", "state", "next", "p", "i", "tr", "togglePanel", "tr", "togglePanel", "next", "input", "t", "name", "_a", "keys", "rm", "selection", "content", "baseTheme", "state", "baseTheme", "p", "state", "score", "_a", "parser", "base", "count", "cur", "top", "next", "i", "input", "Type", "array", "data", "id", "options", "cursor", "FragmentCursor", "main", "match", "insert", "name", "parse", "config", "t", "prec", "values", "input", "next", "def", "id", "doc", "top", "node", "name", "options", "name", "config", "lang", "doc", "android", "text", "base", "state", "_a", "head", "empty", "insert", "space", "bracketL", "newline", "id", "callee", "input", "next", "spec_identifier", "parser", "name", "tags", "identifier", "doc", "_a", "callee", "cur", "cursor", "option", "node", "state", "parser", "input", "next", "name", "question", "slash", "dash", "tag", "state", "parser", "getAttrs", "tags", "array", "id", "attrs", "matches", "elementName", "doc", "tag", "name", "identifier", "state", "options", "elt", "_a", "base", "config", "parser", "cur", "lang", "autoCloseTags", "selfClosers", "text", "head", "to", "insert", "parser", "parser", "hash", "Type", "content", "Line", "text", "elt", "space", "count", "next", "marks", "base", "empty", "underline", "p", "parser", "input", "FragmentCursor", "mark", "parse", "block", "none", "top", "inline", "Buffer", "rangeEnd", "t", "config", "nodeTypes", "name", "id", "rm", "spec", "conc", "Element", "comment", "link", "element", "cur", "node", "m", "match", "parser", "state", "match", "next", "heading", "doc", "add", "number", "cur", "node", "content", "space", "config", "insert", "changes", "empty", "lang", "_a", "main", "link", "escape", "html", "encode", "opt", "name", "count", "match", "cells", "cap", "link", "raw", "lexer", "text", "options", "top", "list", "t", "blankLine", "tag", "prevChar", "nextChar", "newline", "heading", "punctuation", "next", "lang", "block", "body", "content", "parser", "markdown", "values", "tokens", "args", "ret", "walkTokens", "src", "ShikiError", "__defProp", "key", "string", "options", "count", "data", "options", "p", "key", "match", "command", "_defaults", "name", "base", "background", "defaults", "root", "head", "identifiers", "input", "key", "id", "Rule", "name", "match", "string", "options", "values", "base", "identifier", "background", "self", "theme", "Schema", "space", "space", "Schema", "number", "space", "values", "key", "properties", "Schema", "number", "html", "number", "svg", "number", "dash", "find", "Type", "html", "svg", "key", "options", "one", "handlers", "id", "options", "pair", "all", "next", "next", "own", "next", "name", "next", "options", "options", "comment", "state", "encode", "state", "count", "values", "options", "input", "stringify", "values", "empty", "increment", "siblings", "next", "own", "handlers", "closing", "html", "next", "body", "html", "tbody", "head", "child", "closing", "state", "svg", "content", "closing", "properties", "values", "key", "find", "name", "stringify", "state", "state", "state", "invalid", "comment", "emptyChildren", "options", "state", "svg", "html", "createOnigurumaEngine", "options", "lang", "theme", "p", "options", "key", "ShikiError", "keys", "state", "name", "getContext", "decorations", "text", "stringify", "properties", "transform", "background", "decorations2", "parser", "t", "count", "cur", "keyName", "input", "root", "match", "content", "clone", "Registry", "options", "options2", "bundledLanguages", "bundledThemes", "createOnigurumaEngine", "options", "createHighlighter", "lang", "theme", "core", "getSingletonHighlighter", "codeToHtml", "codeToHast", "codeToTokens", "codeToTokensBase", "codeToTokensWithThemes", "getLastGrammarState", "options", "options", "language", "theme", "lang", "html", "text", "ContextualKeyword", "TokenType", "string", "name", "bracketL", "braceR", "parenL", "comma", "colon", "dot", "question", "questionDot", "hash", "bang", "lessThan", "greaterThan", "plus", "minus", "star", "slash", "charCodes", "space", "ampersand", "asterisk", "comma", "dash", "dot", "slash", "colon", "semicolon", "lessThan", "greaterThan", "backslash", "caret", "underscore", "lineSeparator", "semicolon", "next", "IdentifierRole", "JSXRole", "skipSpace", "readToken", "nextChar", "nextChar2", "name", "options", "base", "options", "name", "text", "whitespace", "count", "options", "options", "name", "comma", "semicolon", "semicolon", "comma", "key", "array", "cast", "name", "content", "cast", "name", "content", "cast", "insert", "array", "options", "name", "name", "t", "options", "semicolon", "FunctionType", "skipSpace", "prec", "semicolon", "semicolon", "parse", "input", "isJSXEnabled", "isTypeScriptEnabled", "isFlowEnabled", "isFlowEnabled", "t2", "name", "identifier", "operatorToken", "base", "name", "options", "name", "elementName", "name", "token", "nextToken", "options", "name", "isIdentifier", "name", "name", "isIdentifier", "options", "name", "nextToken", "options", "options", "isJSXEnabled", "isTypeScriptEnabled", "isFlowEnabled", "parse", "React", "jsx", "readOnly", "language", "theme", "lang", "showLineNumbers", "state", "useEffect", "html", "jsxs", "key", "React", "useState", "useRef", "useEffect", "jsx", "options", "element", "useCallback", "transformCode", "error", "language", "editable", "theme", "jsxs", "html", "import_jsx_runtime", "theme", "React", "import_jsx_runtime", "root", "React"] +} diff --git a/examples/esbuild/public/index.html b/examples/esbuild/public/index.html new file mode 100644 index 0000000..ebe739c --- /dev/null +++ b/examples/esbuild/public/index.html @@ -0,0 +1,30 @@ +<!DOCTYPE html> +<html lang="en"> + <head> + <meta charset="UTF-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>React Code View - esbuild Example + + + + +
+ + + diff --git a/examples/esbuild/src/App.tsx b/examples/esbuild/src/App.tsx new file mode 100644 index 0000000..7fbf47e --- /dev/null +++ b/examples/esbuild/src/App.tsx @@ -0,0 +1,324 @@ +import React, { useState } from 'react'; +import { CodeView } from '@react-code-view/react'; +import '@react-code-view/react/styles/index.css'; + +const examples = { + toast: `const App = () => { + const [toasts, setToasts] = React.useState([]); + + const showToast = (message, type = 'info') => { + const id = Date.now(); + setToasts(prev => [...prev, { id, message, type }]); + setTimeout(() => { + setToasts(prev => prev.filter(t => t.id !== id)); + }, 3000); + }; + + const colors = { + info: { bg: '#007bff', text: 'white' }, + success: { bg: '#28a745', text: 'white' }, + warning: { bg: '#ffc107', text: '#333' }, + error: { bg: '#dc3545', text: 'white' }, + }; + + return ( +
+
+ + + + +
+ +
+ {toasts.map(toast => ( +
+ {toast.message} +
+ ))} +
+
+ ); +}; + +render();`, + + progress: `const App = () => { + const [progress, setProgress] = React.useState(0); + const [isRunning, setIsRunning] = React.useState(false); + + React.useEffect(() => { + let interval; + if (isRunning && progress < 100) { + interval = setInterval(() => { + setProgress(prev => { + const next = prev + 1; + if (next >= 100) { + setIsRunning(false); + return 100; + } + return next; + }); + }, 50); + } + return () => clearInterval(interval); + }, [isRunning, progress]); + + const start = () => { + setProgress(0); + setIsRunning(true); + }; + + return ( +
+

Progress Bar Demo

+ +
+
+
+ {progress > 10 && progress + '%'} +
+
+
+ + +
+ ); +}; + +render();`, + + slider: `const App = () => { + const [value, setValue] = React.useState(50); + const [color, setColor] = React.useState({ r: 128, g: 128, b: 128 }); + + const handleSliderChange = (e) => { + setValue(Number(e.target.value)); + }; + + const handleColorChange = (channel, val) => { + setColor(prev => ({ ...prev, [channel]: Number(val) })); + }; + + const rgbString = \`rgb(\${color.r}, \${color.g}, \${color.b})\`; + + return ( +
+

Interactive Sliders

+ +
+ + +
+ {value} +
+
+ +
+

RGB Color Mixer

+ {['r', 'g', 'b'].map(channel => ( +
+ + handleColorChange(channel, e.target.value)} + style={{ width: '100%', height: '6px', cursor: 'pointer' }} + /> +
+ ))} +
+

+ {rgbString} +

+
+
+ ); +}; + +render();` +}; + +function App() { + const [theme, setTheme] = useState<'rcv-theme-default' | 'rcv-theme-dark'>('rcv-theme-default'); + const [selectedExample, setSelectedExample] = useState('toast'); + + return ( +
+
+

React Code View - esbuild Example

+

+ ⚡ Lightning fast builds with esbuild +

+ +
+ + + +
+
+ +
+ + {examples[selectedExample]} + +
+ + +
+ ); +} + +export default App; diff --git a/examples/esbuild/src/index.tsx b/examples/esbuild/src/index.tsx new file mode 100644 index 0000000..be2ab6f --- /dev/null +++ b/examples/esbuild/src/index.tsx @@ -0,0 +1,13 @@ +import React from 'react'; +import { createRoot } from 'react-dom/client'; +import App from './App'; + +const container = document.getElementById('root'); +if (container) { + const root = createRoot(container); + root.render( + + + + ); +} diff --git a/examples/esbuild/tsconfig.json b/examples/esbuild/tsconfig.json new file mode 100644 index 0000000..4ca2e12 --- /dev/null +++ b/examples/esbuild/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "react-jsx", + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true + }, + "include": ["src"] +} diff --git a/examples/rollup/README.md b/examples/rollup/README.md new file mode 100644 index 0000000..d44ec03 --- /dev/null +++ b/examples/rollup/README.md @@ -0,0 +1,66 @@ +# React Code View - Rollup Example + +This example demonstrates how to use React Code View with Rollup. + +## Features + +- 🎯 Rollup bundler with optimized builds +- 🎨 Theme switching (light/dark) +- 📝 Live code editing +- 🔄 Multiple interactive examples +- 💨 TypeScript support +- 🔥 Live reload in development + +## Getting Started + +### Installation + +```bash +npm install +``` + +### Development + +```bash +npm run dev +``` + +Open [http://localhost:3002](http://localhost:3002) in your browser. + +### Build + +```bash +npm run build +``` + +The production build will be in the `dist` folder. + +### Serve Production Build + +```bash +npm run serve +``` + +## Configuration + +The example uses Rollup with: + +- `@rollup/plugin-typescript` - TypeScript compilation +- `rollup-plugin-postcss` - CSS processing +- `@rollup/plugin-node-resolve` - Node module resolution +- `@rollup/plugin-commonjs` - CommonJS to ES6 conversion +- `rollup-plugin-serve` - Development server +- `rollup-plugin-livereload` - Live reload + +See [rollup.config.js](./rollup.config.js) for details. + +## Examples Included + +1. **Modal** - Modal dialog with overlay +2. **Dropdown** - Custom dropdown menu +3. **Tooltip** - Hover tooltip component + +## Learn More + +- [React Code View Documentation](https://github.com/simonguo/react-code-view) +- [Rollup Documentation](https://rollupjs.org) diff --git a/examples/rollup/package.json b/examples/rollup/package.json new file mode 100644 index 0000000..21b6e9a --- /dev/null +++ b/examples/rollup/package.json @@ -0,0 +1,32 @@ +{ + "name": "react-code-view-rollup-example", + "version": "1.0.0", + "private": true, + "type": "module", + "scripts": { + "dev": "rollup -c -w", + "build": "rollup -c", + "serve": "serve dist -l 3002" + }, + "dependencies": { + "react": "^18.2.0", + "react-dom": "^18.2.0", + "@react-code-view/react": "workspace:*" + }, + "devDependencies": { + "@rollup/plugin-commonjs": "^25.0.0", + "@rollup/plugin-node-resolve": "^15.2.0", + "@rollup/plugin-replace": "^5.0.0", + "@rollup/plugin-typescript": "^11.1.0", + "@types/react": "^18.2.0", + "@types/react-dom": "^18.2.0", + "rollup": "^4.9.0", + "rollup-plugin-copy": "^3.5.0", + "rollup-plugin-livereload": "^2.0.5", + "rollup-plugin-postcss": "^4.0.2", + "rollup-plugin-serve": "^2.0.2", + "serve": "^14.2.0", + "tslib": "^2.6.0", + "typescript": "^5.3.0" + } +} diff --git a/examples/rollup/public/index.html b/examples/rollup/public/index.html new file mode 100644 index 0000000..e31bdbb --- /dev/null +++ b/examples/rollup/public/index.html @@ -0,0 +1,12 @@ + + + + + + React Code View - Rollup Example + + +
+ + + diff --git a/examples/rollup/rollup.config.js b/examples/rollup/rollup.config.js new file mode 100644 index 0000000..64647bd --- /dev/null +++ b/examples/rollup/rollup.config.js @@ -0,0 +1,52 @@ +import resolve from '@rollup/plugin-node-resolve'; +import commonjs from '@rollup/plugin-commonjs'; +import typescript from '@rollup/plugin-typescript'; +import replace from '@rollup/plugin-replace'; +import postcss from 'rollup-plugin-postcss'; +import copy from 'rollup-plugin-copy'; +import serve from 'rollup-plugin-serve'; +import livereload from 'rollup-plugin-livereload'; + +const isDevelopment = process.env.ROLLUP_WATCH === 'true'; + +export default { + input: 'src/index.tsx', + output: { + dir: 'dist', + format: 'es', + sourcemap: true, + entryFileNames: '[name].js', + chunkFileNames: '[name]-[hash].js', + }, + plugins: [ + replace({ + 'process.env.NODE_ENV': JSON.stringify(isDevelopment ? 'development' : 'production'), + preventAssignment: true, + }), + resolve({ + browser: true, + extensions: ['.js', '.jsx', '.ts', '.tsx'], + }), + commonjs(), + typescript({ + tsconfig: './tsconfig.json', + sourceMap: true, + }), + postcss({ + extract: false, + minimize: !isDevelopment, + sourceMap: true, + }), + copy({ + targets: [ + { src: 'public/index.html', dest: 'dist' } + ] + }), + isDevelopment && serve({ + open: true, + contentBase: 'dist', + port: 3002, + }), + isDevelopment && livereload('dist'), + ], +}; diff --git a/examples/rollup/src/App.tsx b/examples/rollup/src/App.tsx new file mode 100644 index 0000000..b328a4f --- /dev/null +++ b/examples/rollup/src/App.tsx @@ -0,0 +1,315 @@ +import React, { useState } from 'react'; +import { CodeView } from '@react-code-view/react'; +import '@react-code-view/react/styles/index.css'; + +const examples = { + modal: `const App = () => { + const [isOpen, setIsOpen] = React.useState(false); + + return ( +
+ + + {isOpen && ( + <> +
setIsOpen(false)} + > +
e.stopPropagation()} + > +

Modal Title

+

This is a modal dialog. Click outside or the close button to close it.

+ +
+
+ + )} +
+ ); +}; + +render();`, + + dropdown: `const App = () => { + const [isOpen, setIsOpen] = React.useState(false); + const [selected, setSelected] = React.useState('Select an option'); + + const options = ['Option 1', 'Option 2', 'Option 3', 'Option 4']; + + const handleSelect = (option) => { + setSelected(option); + setIsOpen(false); + }; + + return ( +
+
+ + + {isOpen && ( +
+ {options.map((option, index) => ( +
handleSelect(option)} + style={{ + padding: '10px 20px', + cursor: 'pointer', + backgroundColor: selected === option ? '#e9ecef' : 'white', + borderBottom: index < options.length - 1 ? '1px solid #f0f0f0' : 'none' + }} + onMouseEnter={(e) => e.currentTarget.style.backgroundColor = '#f8f9fa'} + onMouseLeave={(e) => e.currentTarget.style.backgroundColor = selected === option ? '#e9ecef' : 'white'} + > + {option} +
+ ))} +
+ )} +
+
+ ); +}; + +render();`, + + tooltip: `const App = () => { + const [showTooltip, setShowTooltip] = React.useState(false); + + return ( +
+
+ + + {showTooltip && ( +
+ This is a tooltip! +
+
+ )} +
+
+ ); +}; + +render();` +}; + +function App() { + const [theme, setTheme] = useState<'rcv-theme-default' | 'rcv-theme-dark'>('rcv-theme-default'); + const [selectedExample, setSelectedExample] = useState('modal'); + + return ( +
+
+

React Code View - Rollup Example

+

+ Live code editing with preview powered by Rollup +

+ +
+ + + +
+
+ +
+ + {examples[selectedExample]} + +
+ + +
+ ); +} + +export default App; diff --git a/examples/rollup/src/index.css b/examples/rollup/src/index.css new file mode 100644 index 0000000..cd1b509 --- /dev/null +++ b/examples/rollup/src/index.css @@ -0,0 +1,15 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +code { + font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace; +} diff --git a/examples/rollup/src/index.tsx b/examples/rollup/src/index.tsx new file mode 100644 index 0000000..fc5b35d --- /dev/null +++ b/examples/rollup/src/index.tsx @@ -0,0 +1,14 @@ +import React from 'react'; +import { createRoot } from 'react-dom/client'; +import App from './App'; +import './index.css'; + +const container = document.getElementById('root'); +if (container) { + const root = createRoot(container); + root.render( + + + + ); +} diff --git a/examples/rollup/tsconfig.json b/examples/rollup/tsconfig.json new file mode 100644 index 0000000..4ca2e12 --- /dev/null +++ b/examples/rollup/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "react-jsx", + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true + }, + "include": ["src"] +} diff --git a/examples/vite/README.md b/examples/vite/README.md new file mode 100644 index 0000000..96a2f92 --- /dev/null +++ b/examples/vite/README.md @@ -0,0 +1,59 @@ +# React Code View - Vite Example + +This example demonstrates how to use React Code View with Vite. + +## Features + +- ⚡ Lightning fast HMR with Vite +- 🎨 Theme switching (light/dark) +- 📝 Live code editing +- 🔄 Multiple interactive examples +- 🎯 TypeScript support + +## Getting Started + +### Installation + +```bash +npm install +``` + +### Development + +```bash +npm run dev +``` + +Open [http://localhost:3000](http://localhost:3000) in your browser. + +### Build + +```bash +npm run build +``` + +### Preview Production Build + +```bash +npm run preview +``` + +## Configuration + +The example uses a minimal Vite configuration with: + +- `@vitejs/plugin-react` - React plugin for Vite +- CodeView optimization for faster builds + +See [vite.config.ts](./vite.config.ts) for details. + +## Examples Included + +1. **Counter** - Simple state management +2. **Form** - Form handling with validation +3. **List** - Dynamic list with add/remove + +## Learn More + +- [React Code View Documentation](https://github.com/simonguo/react-code-view) +- [Vite Documentation](https://vitejs.dev) diff --git a/examples/vite/index.html b/examples/vite/index.html new file mode 100644 index 0000000..fb681e2 --- /dev/null +++ b/examples/vite/index.html @@ -0,0 +1,12 @@ + + + + + + React Code View - Vite Example + + +
+ + + diff --git a/examples/vite/package.json b/examples/vite/package.json new file mode 100644 index 0000000..7a32130 --- /dev/null +++ b/examples/vite/package.json @@ -0,0 +1,23 @@ +{ + "name": "react-code-view-vite-example", + "version": "1.0.0", + "private": true, + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview" + }, + "dependencies": { + "react": "^18.2.0", + "react-dom": "^18.2.0", + "@react-code-view/react": "workspace:*" + }, + "devDependencies": { + "@vitejs/plugin-react": "^4.2.1", + "@types/react": "^18.2.0", + "@types/react-dom": "^18.2.0", + "typescript": "^5.3.0", + "vite": "^5.0.0" + } +} diff --git a/examples/vite/src/App.tsx b/examples/vite/src/App.tsx new file mode 100644 index 0000000..98b1568 --- /dev/null +++ b/examples/vite/src/App.tsx @@ -0,0 +1,255 @@ +import React, { useState } from 'react'; +import { CodeView } from '@react-code-view/react'; +import '@react-code-view/react/styles/index.css'; + +const examples = { + counter: `const App = () => { + const [count, setCount] = React.useState(0); + + return ( +
+

Counter: {count}

+ +
+ ); +}; + +render();`, + + form: `const App = () => { + const [name, setName] = React.useState(''); + const [email, setEmail] = React.useState(''); + const [submitted, setSubmitted] = React.useState(false); + + const handleSubmit = (e) => { + e.preventDefault(); + setSubmitted(true); + }; + + if (submitted) { + return ( +
+

Form Submitted!

+

Name: {name}

+

Email: {email}

+ +
+ ); + } + + return ( +
+
+ +
+
+ +
+ +
+ ); +}; + +render();`, + + list: `const App = () => { + const [items, setItems] = React.useState(['Apple', 'Banana', 'Orange']); + const [newItem, setNewItem] = React.useState(''); + + const addItem = () => { + if (newItem.trim()) { + setItems([...items, newItem]); + setNewItem(''); + } + }; + + const removeItem = (index) => { + setItems(items.filter((_, i) => i !== index)); + }; + + return ( +
+

Fruit List

+
+ setNewItem(e.target.value)} + placeholder="Add new item..." + style={{ padding: '8px', marginRight: '10px' }} + /> + +
+
    + {items.map((item, index) => ( +
  • + {item} + +
  • + ))} +
+
+ ); +}; + +render();` +}; + +function App() { + const [theme, setTheme] = useState<'rcv-theme-default' | 'rcv-theme-dark'>('rcv-theme-default'); + const [selectedExample, setSelectedExample] = useState('counter'); + + return ( +
+
+

React Code View - Vite Example

+

+ Live code editing with preview powered by Vite +

+ +
+ + + +
+
+ +
+ + {examples[selectedExample]} + +
+ + +
+ ); +} + +export default App; diff --git a/examples/vite/src/index.css b/examples/vite/src/index.css new file mode 100644 index 0000000..cd1b509 --- /dev/null +++ b/examples/vite/src/index.css @@ -0,0 +1,15 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +code { + font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace; +} diff --git a/examples/vite/src/main.tsx b/examples/vite/src/main.tsx new file mode 100644 index 0000000..fc5b35d --- /dev/null +++ b/examples/vite/src/main.tsx @@ -0,0 +1,14 @@ +import React from 'react'; +import { createRoot } from 'react-dom/client'; +import App from './App'; +import './index.css'; + +const container = document.getElementById('root'); +if (container) { + const root = createRoot(container); + root.render( + + + + ); +} diff --git a/examples/vite/tsconfig.json b/examples/vite/tsconfig.json new file mode 100644 index 0000000..6d545f5 --- /dev/null +++ b/examples/vite/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "target": "ES2020", + "useDefineForClassFields": true, + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "resolveJsonModule": true, + "isolatedModules": true, + "noEmit": true, + "jsx": "react-jsx", + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["src"] +} diff --git a/examples/vite/vite.config.ts b/examples/vite/vite.config.ts new file mode 100644 index 0000000..408ccac --- /dev/null +++ b/examples/vite/vite.config.ts @@ -0,0 +1,12 @@ +import { defineConfig } from 'vite'; +import react from '@vitejs/plugin-react'; + +export default defineConfig({ + plugins: [react()], + optimizeDeps: { + include: ['@react-code-view/react'] + }, + server: { + port: 3000 + } +}); diff --git a/examples/webpack/README.md b/examples/webpack/README.md new file mode 100644 index 0000000..c106e7b --- /dev/null +++ b/examples/webpack/README.md @@ -0,0 +1,57 @@ +# React Code View - Webpack Example + +This example demonstrates how to use React Code View with Webpack. + +## Features + +- 📦 Webpack 5 with HMR +- 🎨 Theme switching (light/dark) +- 📝 Live code editing +- 🔄 Multiple interactive examples +- 🎯 TypeScript support + +## Getting Started + +### Installation + +```bash +npm install +``` + +### Development + +```bash +npm run dev +``` + +Open [http://localhost:3001](http://localhost:3001) in your browser. + +### Build + +```bash +npm run build +``` + +The production build will be in the `dist` folder. + +## Configuration + +The example uses Webpack 5 with: + +- `ts-loader` - TypeScript compilation +- `css-loader` & `style-loader` - CSS handling +- `html-webpack-plugin` - HTML generation +- Hot Module Replacement (HMR) + +See [webpack.config.js](./webpack.config.js) for details. + +## Examples Included + +1. **Timer** - useEffect and intervals +2. **Tabs** - Tab navigation component +3. **Accordion** - Expandable sections + +## Learn More + +- [React Code View Documentation](https://github.com/simonguo/react-code-view) +- [Webpack Documentation](https://webpack.js.org) diff --git a/examples/webpack/package.json b/examples/webpack/package.json new file mode 100644 index 0000000..9d478f3 --- /dev/null +++ b/examples/webpack/package.json @@ -0,0 +1,26 @@ +{ + "name": "react-code-view-webpack-example", + "version": "1.0.0", + "private": true, + "scripts": { + "dev": "webpack serve --mode development", + "build": "webpack --mode production" + }, + "dependencies": { + "react": "^18.2.0", + "react-dom": "^18.2.0", + "@react-code-view/react": "workspace:*" + }, + "devDependencies": { + "@types/react": "^18.2.0", + "@types/react-dom": "^18.2.0", + "css-loader": "^6.8.0", + "html-webpack-plugin": "^5.5.0", + "style-loader": "^3.3.0", + "ts-loader": "^9.5.0", + "typescript": "^5.3.0", + "webpack": "^5.89.0", + "webpack-cli": "^5.1.0", + "webpack-dev-server": "^4.15.0" + } +} diff --git a/examples/webpack/public/index.html b/examples/webpack/public/index.html new file mode 100644 index 0000000..acb23cd --- /dev/null +++ b/examples/webpack/public/index.html @@ -0,0 +1,11 @@ + + + + + + React Code View - Webpack Example + + +
+ + diff --git a/examples/webpack/src/App.tsx b/examples/webpack/src/App.tsx new file mode 100644 index 0000000..9541836 --- /dev/null +++ b/examples/webpack/src/App.tsx @@ -0,0 +1,260 @@ +import React, { useState } from 'react'; +import { CodeView } from '@react-code-view/react'; +import '@react-code-view/react/styles/index.css'; + +const examples = { + timer: `const App = () => { + const [seconds, setSeconds] = React.useState(0); + const [isRunning, setIsRunning] = React.useState(false); + + React.useEffect(() => { + let interval = null; + if (isRunning) { + interval = setInterval(() => { + setSeconds(s => s + 1); + }, 1000); + } + return () => { + if (interval) clearInterval(interval); + }; + }, [isRunning]); + + return ( +
+

Timer: {seconds}s

+ + +
+ ); +}; + +render();`, + + tabs: `const App = () => { + const [activeTab, setActiveTab] = React.useState('home'); + + const tabs = [ + { id: 'home', label: 'Home', content: 'Welcome to the home page!' }, + { id: 'profile', label: 'Profile', content: 'This is your profile.' }, + { id: 'settings', label: 'Settings', content: 'Manage your settings here.' }, + ]; + + return ( +
+
+ {tabs.map(tab => ( + + ))} +
+
+ {tabs.find(t => t.id === activeTab)?.content} +
+
+ ); +}; + +render();`, + + accordion: `const App = () => { + const [openItems, setOpenItems] = React.useState([]); + + const items = [ + { id: 1, title: 'What is React?', content: 'React is a JavaScript library for building user interfaces.' }, + { id: 2, title: 'What is CodeView?', content: 'CodeView is a component for live code editing and preview.' }, + { id: 3, title: 'What is Webpack?', content: 'Webpack is a module bundler for JavaScript applications.' } + ]; + + const toggleItem = (id) => { + setOpenItems(prev => + prev.includes(id) ? prev.filter(i => i !== id) : [...prev, id] + ); + }; + + return ( +
+ {items.map(item => ( +
+ + {openItems.includes(item.id) && ( +
+ {item.content} +
+ )} +
+ ))} +
+ ); +}; + +render();` +}; + +function App() { + const [theme, setTheme] = useState<'rcv-theme-default' | 'rcv-theme-dark'>('rcv-theme-default'); + const [selectedExample, setSelectedExample] = useState('timer'); + + return ( +
+
+

React Code View - Webpack Example

+

+ Live code editing with preview powered by Webpack +

+ +
+ + + +
+
+ +
+ + {examples[selectedExample]} + +
+ + +
+ ); +} + +export default App; diff --git a/examples/webpack/src/index.css b/examples/webpack/src/index.css new file mode 100644 index 0000000..cd1b509 --- /dev/null +++ b/examples/webpack/src/index.css @@ -0,0 +1,15 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +code { + font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace; +} diff --git a/examples/webpack/src/index.tsx b/examples/webpack/src/index.tsx new file mode 100644 index 0000000..fc5b35d --- /dev/null +++ b/examples/webpack/src/index.tsx @@ -0,0 +1,14 @@ +import React from 'react'; +import { createRoot } from 'react-dom/client'; +import App from './App'; +import './index.css'; + +const container = document.getElementById('root'); +if (container) { + const root = createRoot(container); + root.render( + + + + ); +} diff --git a/examples/webpack/tsconfig.json b/examples/webpack/tsconfig.json new file mode 100644 index 0000000..4ca2e12 --- /dev/null +++ b/examples/webpack/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "react-jsx", + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true + }, + "include": ["src"] +} diff --git a/examples/webpack/webpack.config.js b/examples/webpack/webpack.config.js new file mode 100644 index 0000000..7a9acb7 --- /dev/null +++ b/examples/webpack/webpack.config.js @@ -0,0 +1,38 @@ +const path = require('path'); +const HtmlWebpackPlugin = require('html-webpack-plugin'); + +module.exports = { + entry: './src/index.tsx', + output: { + path: path.resolve(__dirname, 'dist'), + filename: 'bundle.[contenthash].js', + clean: true + }, + module: { + rules: [ + { + test: /\.tsx?$/, + use: 'ts-loader', + exclude: /node_modules/, + }, + { + test: /\.css$/, + use: ['style-loader', 'css-loader'], + }, + ], + }, + resolve: { + extensions: ['.tsx', '.ts', '.js'], + }, + plugins: [ + new HtmlWebpackPlugin({ + template: './public/index.html', + title: 'React Code View - Webpack Example' + }), + ], + devServer: { + port: 3001, + hot: true, + open: true, + }, +}; diff --git a/gulpfile.js b/gulpfile.js deleted file mode 100755 index fef186b..0000000 --- a/gulpfile.js +++ /dev/null @@ -1,57 +0,0 @@ -const fs = require('fs'); -const util = require('util'); -const less = require('gulp-less'); -const postcss = require('gulp-postcss'); -const sourcemaps = require('gulp-sourcemaps'); -const rename = require('gulp-rename'); -const gulp = require('gulp'); -const STYLE_SOURCE_DIR = './src/less'; -const STYLE_DIST_DIR = './dist/styles'; -const pkg = require('./package.json'); - -const writeFile = util.promisify(fs.writeFile); - -function buildLess() { - return gulp - .src([`${STYLE_SOURCE_DIR}/index.less`]) - .pipe(sourcemaps.init()) - .pipe(less({ javascriptEnabled: true, paths: ['*.css', '*.less'] })) - .pipe(postcss([require('autoprefixer')])) - .pipe(sourcemaps.write('./')) - .pipe(rename('react-code-view.css')) - .pipe(gulp.dest(`${STYLE_DIST_DIR}`)); -} - -function buildCSS() { - return gulp - .src(`${STYLE_DIST_DIR}/react-code-view.css`) - .pipe(sourcemaps.init()) - .pipe(postcss()) - .pipe(rename({ suffix: '.min' })) - .pipe(sourcemaps.write('./')) - .pipe(gulp.dest(`${STYLE_DIST_DIR}`)); -} - -function copyDocs() { - return gulp - .src(['./README.md', './CHANGELOG.md', './LICENSE', 'package.json']) - .pipe(gulp.dest('dist')); -} - -function copyLoader() { - return gulp.src(['./webpack-md-loader/*']).pipe(gulp.dest('dist/webpack-md-loader')); -} - -function createPkgFile(done) { - pkg.scripts = {}; - - writeFile('dist/package.json', JSON.stringify(pkg, null, 2) + '\n') - .then(() => { - done(); - }) - .catch(err => { - if (err) console.error(err.toString()); - }); -} - -exports.build = gulp.series(buildLess, buildCSS, copyDocs, copyLoader, createPkgFile); diff --git a/jest.config.js b/jest.config.js deleted file mode 100644 index a67cef0..0000000 --- a/jest.config.js +++ /dev/null @@ -1,12 +0,0 @@ -/* - * For a detailed explanation regarding each configuration property, visit: - * https://jestjs.io/docs/configuration - */ - -module.exports = { - collectCoverage: true, - coverageDirectory: 'coverage', - coverageProvider: 'v8', - testEnvironment: 'jsdom', - setupFilesAfterEnv: ['/setup-jest.js'] -}; diff --git a/package.json b/package.json index 0572c4c..b223c5d 100644 --- a/package.json +++ b/package.json @@ -1,29 +1,8 @@ { - "name": "react-code-view", - "version": "2.6.1", - "description": "Code view for React", - "main": "cjs/index.js", - "module": "esm/index.js", - "typings": "esm/index.d.ts", - "scripts": { - "build:esm": "NODE_ENV=esm npx babel --extensions .ts,.tsx src --out-dir dist/esm", - "build:cjs": "NODE_ENV=commonjs npx babel --extensions .ts,.tsx src --out-dir dist/cjs", - "build:types": "npx tsc --emitDeclarationOnly --outDir dist/cjs && npx tsc --emitDeclarationOnly --outDir dist/esm", - "build:gulp": "gulp build", - "build:docs": "rm -rf assets && webpack --mode production --config ./docs/webpack.config.js", - "build": "npm run clean && npm run build:esm && npm run build:cjs && npm run build:types && npm run build:gulp", - "clean": "rimraf dist", - "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s", - "dev": "webpack serve --mode development --port 3100 --host 0.0.0.0 --progress --config ./docs/webpack.config.js", - "format": "prettier --write \"{src,test}/**/*.{tsx,ts,js}\"", - "format:check": "prettier --list-different \"{src,test}/**/*.{tsx,ts,js}\"", - "lint": "eslint src/**/*.{ts,tsx}", - "publish:docs": "node docs/gh-pages.js", - "prepublishOnly": "npm run build", - "test:watch": "jest --watch ", - "test": "npm run format:check && npm run lint && jest", - "prepare": "husky install" - }, + "name": "react-code-view-monorepo", + "version": "3.0.0", + "private": true, + "description": "Monorepo for react-code-view - A React component for rendering code with live preview", "repository": { "type": "git", "url": "git+https://github.com/simonguo/react-code-view.git" @@ -32,7 +11,11 @@ "markdown-viewer", "markdown-loader", "code-view", - "editor" + "editor", + "vite-plugin", + "webpack-plugin", + "rollup-plugin", + "unplugin" ], "author": "simonguo.2009@gmail.com", "license": "MIT", @@ -40,74 +23,51 @@ "url": "https://github.com/simonguo/react-code-view/issues" }, "homepage": "https://github.com/simonguo/react-code-view#readme", - "dependencies": { - "@babel/runtime": "^7.18.6", - "@types/codemirror": "5.60.5", - "classnames": "^2.2.5", - "codemirror": "5.65.6", - "copy-to-clipboard": "^3.3.3", - "highlight.js": "^11.5.1", - "html-loader": "^3.1.2", - "marked": "^4.0.17", - "sucrase": "^3.24.0" + "packageManager": "pnpm@9.0.0", + "engines": { + "node": ">=18.0.0", + "pnpm": ">=8.0.0" }, - "peerDependencies": { - "react": ">=16.8.0", - "react-dom": ">=16.8.0" + "scripts": { + "build": "turbo run build", + "dev": "turbo run dev", + "docs": "vite --config vite.config.ts", + "docs:build": "vite build --config vite.config.ts", + "docs:preview": "vite preview --config vite.config.ts", + "lint": "turbo run lint", + "test": "turbo run test", + "typecheck": "turbo run typecheck", + "clean": "turbo run clean && rm -rf node_modules", + "format": "prettier --write \"packages/**/*.{ts,tsx,js,json,md}\"", + "format:check": "prettier --list-different \"packages/**/*.{ts,tsx,js,json,md}\"", + "changeset": "changeset", + "version-packages": "changeset version", + "release": "pnpm build && changeset publish", + "prepare": "husky install" }, "devDependencies": { - "@babel/cli": "^7.7.0", - "@babel/core": "^7.7.2", - "@babel/plugin-proposal-class-properties": "^7.0.0", - "@babel/plugin-proposal-export-default-from": "^7.12.13", - "@babel/plugin-proposal-export-namespace-from": "^7.12.13", - "@babel/plugin-proposal-optional-chaining": "^7.6.0", - "@babel/plugin-transform-runtime": "^7.1.0", - "@babel/preset-env": "^7.7.7", - "@babel/preset-react": "^7.7.4", - "@babel/preset-typescript": "^7.12.7", - "@testing-library/jest-dom": "^5.16.4", - "@testing-library/react": "^12.1.5", - "@types/jest": "^28.1.4", - "@types/node": "^18.0.3", - "@types/react": "^17.0.0", - "@types/react-dom": "^17.0.0", - "@typescript-eslint/eslint-plugin": "^5.30.5", - "@typescript-eslint/parser": "^5.30.5", - "autoprefixer": "^10.4.7", - "babel-loader": "^8.1.0", - "conventional-changelog-cli": "^2.2.2", - "css-loader": "^6.7.1", - "cssnano": "^5.1.12", - "eslint": "^7.25.0", - "eslint-config-prettier": "^8.3.0", - "eslint-plugin-babel": "^5.3.1", - "eslint-plugin-import": "^2.22.1", - "eslint-plugin-react": "^7.23.2", - "eslint-plugin-react-hooks": "^4.2.0", - "gh-pages": "^1.1.0", - "gulp": "^4.0.2", - "gulp-less": "^5.0.0", - "gulp-postcss": "^9.0.1", - "gulp-rename": "^2.0.0", - "gulp-sourcemaps": "^3.0.0", - "html-webpack-plugin": "^5.5.0", - "husky": "^8.0.1", - "jest": "^28.1.2", - "jest-environment-jsdom": "^28.1.2", - "less": "^4.1.3", - "less-loader": "^11.0.0", - "markdown-loader": "^8.0.0", - "mini-css-extract-plugin": "^2.6.1", - "postcss": "^8.4.14", - "prettier": "^2.4.1", - "react": "^17.0.2", - "react-dom": "^17.0.2", - "rimraf": "^5.0.5", - "rsuite": "^5.51.0", - "typescript": "^4.6.4", - "webpack": "^5.73.0", - "webpack-cli": "^4.10.0", - "webpack-dev-server": "^3.11.2" + "@changesets/cli": "^2.27.0", + "@types/node": "^20.0.0", + "@types/react": "^18.2.0", + "@types/react-dom": "^18.2.0", + "@typescript-eslint/eslint-plugin": "^7.0.0", + "@typescript-eslint/parser": "^7.0.0", + "@vitejs/plugin-react": "^4.2.0", + "eslint": "^8.57.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-react": "^7.34.0", + "eslint-plugin-react-hooks": "^4.6.0", + "husky": "^9.0.0", + "prettier": "^3.2.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "tsup": "^8.0.0", + "turbo": "^2.0.0", + "typescript": "^5.4.0", + "vite": "^5.2.0", + "vitest": "^1.4.0" + }, + "dependencies": { + "react-router-dom": "^7.11.0" } } diff --git a/packages/core/README.md b/packages/core/README.md new file mode 100644 index 0000000..cd5d852 --- /dev/null +++ b/packages/core/README.md @@ -0,0 +1,72 @@ +# @react-code-view/core + +Core markdown transformation utilities for react-code-view. This package is framework-agnostic and can be used in any JavaScript environment. + +## Installation + +```bash +npm install @react-code-view/core +``` + +## Usage + +### Basic Transformation + +```js +import { transformMarkdown } from '@react-code-view/core'; + +const markdown = ` +# Hello World + +\`\`\`javascript +const greeting = 'Hello!'; +console.log(greeting); +\`\`\` +`; + +const result = await transformMarkdown(markdown); +console.log(result.code); // ES module string +``` + +### Custom Languages + +```js +import { transformMarkdown } from '@react-code-view/core'; + +const result = await transformMarkdown(markdown, { + languages: ['typescript', 'rust', 'python'] +}); +``` + +### Direct Highlighting + +```js +import { highlight, registerLanguage } from '@react-code-view/core'; + +await registerLanguage('python'); + +const highlighted = highlight('print("Hello")', { language: 'python' }); +``` + +## API + +### `transformMarkdown(source, options?)` + +Transform markdown to an ES module string. + +**Options:** +- `languages` - Languages to register for highlighting +- `markedOptions` - Options passed to marked +- `codeBlockClassName` - Custom class for code blocks + +### `highlight(code, options?)` + +Highlight code with syntax highlighting. + +### `registerLanguage(name)` + +Register a language for highlighting. + +## License + +MIT diff --git a/packages/core/package.json b/packages/core/package.json new file mode 100644 index 0000000..6c81259 --- /dev/null +++ b/packages/core/package.json @@ -0,0 +1,56 @@ +{ + "name": "@react-code-view/core", + "version": "3.0.0", + "description": "Core markdown transformation utilities for react-code-view", + "type": "module", + "main": "./dist/index.cjs", + "module": "./dist/index.js", + "types": "./dist/index.d.ts", + "exports": { + ".": { + "import": { + "types": "./dist/index.d.ts", + "default": "./dist/index.js" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + } + }, + "files": ["dist", "README.md"], + "sideEffects": false, + "scripts": { + "build": "tsup", + "dev": "tsup --watch", + "typecheck": "tsc --noEmit", + "test": "vitest run", + "test:watch": "vitest", + "clean": "rimraf dist" + }, + "dependencies": { + "shiki": "^1.22.2", + "marked": "^12.0.0" + }, + "devDependencies": { + "tsup": "^8.0.0", + "typescript": "^5.3.0", + "vitest": "^1.0.0", + "rimraf": "^5.0.0" + }, + "keywords": [ + "markdown", + "transform", + "highlight", + "code" + ], + "license": "MIT", + "repository": { + "type": "git", + "url": "https://github.com/simonguo/react-code-view.git", + "directory": "packages/core" + }, + "publishConfig": { + "access": "public" + } +} diff --git a/packages/core/src/__tests__/highlighter.test.ts b/packages/core/src/__tests__/highlighter.test.ts new file mode 100644 index 0000000..c58460b --- /dev/null +++ b/packages/core/src/__tests__/highlighter.test.ts @@ -0,0 +1,118 @@ +import { describe, it, expect, beforeAll } from 'vitest'; +import { highlight, highlightSync, initHighlighter } from '../highlighter'; + +describe('highlighter', () => { + describe('highlight (async)', () => { + it('should highlight JavaScript code', async () => { + const code = 'const greeting = "Hello World";'; + const result = await highlight(code, { language: 'javascript' }); + + expect(result).toContain(' { + const code = 'const value: string = "test";'; + const result = await highlight(code, { language: 'typescript' }); + + expect(result).toContain(' { + const code = 'const a = 1;'; + const result = await highlight(code, { language: 'js' }); + + expect(result).toContain(' { + const code = 'some unknown language'; + const result = await highlight(code, { language: 'unknown-lang-xyz' }); + + // Should fallback to plain text + expect(result).toContain('some unknown language'); + }); + + it('should apply theme option', async () => { + const code = 'const a = 1;'; + const result = await highlight(code, { + language: 'javascript', + theme: 'github-dark' + }); + + expect(result).toContain(' { + const code = ''; + const result = await highlight(code, { language: 'javascript' }); + + expect(result).toContain(' { + const code = ''; + const result = await highlight(code, { language: 'html' }); + + // Should be properly escaped + expect(result).not.toContain('